From f1bab336eefb276f51ed436a1986311b4e099c28 Mon Sep 17 00:00:00 2001 From: Kelly Brazil Date: Tue, 14 May 2024 17:38:39 -0700 Subject: [PATCH] fix file_stats in git-log parsers --- CHANGELOG | 3 +- docs/parsers/git_log.md | 8 ++- docs/parsers/git_log_s.md | 8 ++- jc/parsers/git_log.py | 57 +++++++++++++------ jc/parsers/git_log_s.py | 44 ++++++++++++-- man/jc.1 | 2 +- .../generic/git-log-full-stat-streaming.json | 2 +- tests/fixtures/generic/git-log-full-stat.json | 2 +- .../git-log-fuller-stat-streaming.json | 2 +- .../fixtures/generic/git-log-fuller-stat.json | 2 +- ...git-log-hash-in-message-fix-streaming.json | 2 +- .../generic/git-log-hash-in-message-fix.json | 2 +- .../git-log-is-hash-regex-fix-streaming.json | 2 +- .../generic/git-log-is-hash-regex-fix.json | 2 +- .../git-log-medium-stat-streaming.json | 2 +- .../fixtures/generic/git-log-medium-stat.json | 2 +- .../git-log-oneline-stat-streaming.json | 2 +- .../generic/git-log-oneline-stat.json | 2 +- .../generic/git-log-short-stat-streaming.json | 2 +- .../fixtures/generic/git-log-short-stat.json | 2 +- tests/test_git_log_s.py | 2 +- 21 files changed, 112 insertions(+), 40 deletions(-) diff --git a/CHANGELOG b/CHANGELOG index d876c276..207a9e20 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,7 +1,8 @@ jc changelog 20240510 v1.25.3 -- Add `battery_percentage` field to `bluetoothctl` parser output +- Enhance `bluetoothctl` parser with added `battery_percentage` field +- Enhance `git-log` standard and streaming parsers with added `lines_changed` field under `file_stats` - Fix `pci-ids` parser to correctly handle multiple subdevices - Fix `pip-show` parser to handle multi-line fields with a beginning blank line - Fix `top` parsers to quiet uptime info parsing diff --git a/docs/parsers/git_log.md b/docs/parsers/git_log.md index d93a6f11..c8038179 100644 --- a/docs/parsers/git_log.md +++ b/docs/parsers/git_log.md @@ -55,6 +55,12 @@ Schema: "deletions": integer, "files": [ string + ], + "file_stats": [ + { + "name": string, + "lines_changed": integer + } ] } } @@ -174,4 +180,4 @@ Compatibility: linux, darwin, cygwin, win32, aix, freebsd Source: [`jc/parsers/git_log.py`](https://github.com/kellyjonbrazil/jc/blob/master/jc/parsers/git_log.py) -Version 1.4 by Kelly Brazil (kellyjonbrazil@gmail.com) +Version 1.5 by Kelly Brazil (kellyjonbrazil@gmail.com) diff --git a/docs/parsers/git_log_s.md b/docs/parsers/git_log_s.md index 3dfb08e9..e0a94775 100644 --- a/docs/parsers/git_log_s.md +++ b/docs/parsers/git_log_s.md @@ -56,6 +56,12 @@ Schema: "deletions": integer, "files": [ string + ], + "file_stats": [ + { + "name": string, + "lines_changed": integer + } ] } @@ -109,4 +115,4 @@ Compatibility: linux, darwin, cygwin, win32, aix, freebsd Source: [`jc/parsers/git_log_s.py`](https://github.com/kellyjonbrazil/jc/blob/master/jc/parsers/git_log_s.py) -Version 1.4 by Kelly Brazil (kellyjonbrazil@gmail.com) +Version 1.5 by Kelly Brazil (kellyjonbrazil@gmail.com) diff --git a/jc/parsers/git_log.py b/jc/parsers/git_log.py index 69c84655..243ddb59 100644 --- a/jc/parsers/git_log.py +++ b/jc/parsers/git_log.py @@ -50,6 +50,12 @@ Schema: "deletions": integer, "files": [ string + ], + "file_stats": [ + { + "name": string, + "lines_changed": integer + } ] } } @@ -145,7 +151,7 @@ Examples: ] """ import re -from typing import List, Dict +from typing import List, Dict, Any import jc.utils hash_pattern = re.compile(r'(?:[0-9]|[a-f]){40}') @@ -153,7 +159,7 @@ changes_pattern = re.compile(r'\s(?P\d+)\s+(files? changed)(?:,\s+(?P List[Dict]: List of Dictionaries. Structured to conform to the schema. """ - int_list = {'files_changed', 'insertions', 'deletions'} + int_list = {'files_changed', 'insertions', 'deletions', 'lines_changed'} for entry in proc_data: if 'date' in entry: @@ -190,6 +196,13 @@ def _process(proc_data: List[Dict]) -> List[Dict]: if key in int_list: entry['stats'][key] = jc.utils.convert_to_int(entry['stats'][key]) + if 'file_stats' in entry['stats']: + file_stats = entry['stats']['file_stats'] + for file_entry in file_stats: + for key in file_entry: + if key in int_list: + file_entry[key] = jc.utils.convert_to_int(file_entry[key]) + return proc_data @@ -251,6 +264,7 @@ def parse( output_line: Dict = {} message_lines: List[str] = [] file_list: List[str] = [] + file_stats_list: List[Dict[str, Any]] = [] if jc.utils.has_data(data): @@ -263,10 +277,14 @@ def parse( if file_list: output_line['stats']['files'] = file_list + if file_stats_list: + output_line['stats']['file_stats'] = file_stats_list + raw_output.append(output_line) output_line = {} message_lines = [] file_list = [] + file_stats_list = [] output_line = { 'commit': line_list[0], 'message': line_list[1] @@ -282,10 +300,14 @@ def parse( if file_list: output_line['stats']['files'] = file_list + if file_stats_list: + output_line['stats']['file_stats'] = file_stats_list + raw_output.append(output_line) output_line = {} message_lines = [] file_list = [] + file_stats_list = [] output_line['commit'] = line_list[1] continue @@ -319,21 +341,19 @@ def parse( if line.startswith(' ') and 'changed, ' not in line: # this is a file name - file_name = line.split('|')[0].strip() - file_stats = line.split('|')[1].strip() - lines_changed_str = file_stats.split(' ') - lines_changed_count_str = lines_changed_str[0].strip() - lines_changed = 0 - try: - lines_changed = int(lines_changed_count_str) - except: - #nothing to do - pass + file_line_split = line.split('|') + file_name = file_line_split[0].strip() + file_list.append(file_name) - file = {} - file["name"] = file_name - file["lines_changed"] = lines_changed - file_list.append(file) + if len(file_line_split) > 1: + file_stats = file_line_split[1].strip() + lines_changed_str = file_stats.split(' ') + lines_changed_count_str = lines_changed_str[0].strip() + + file_stat = {} + file_stat["name"] = file_name + file_stat["lines_changed"] = lines_changed_count_str + file_stats_list.append(file_stat) continue if line.startswith(' ') and 'changed, ' in line: @@ -357,6 +377,9 @@ def parse( if file_list: output_line['stats']['files'] = file_list + if file_stats_list: + output_line['stats']['file_stats'] = file_stats_list + raw_output.append(output_line) return raw_output if raw else _process(raw_output) diff --git a/jc/parsers/git_log_s.py b/jc/parsers/git_log_s.py index cb39e8b2..f117d5a5 100644 --- a/jc/parsers/git_log_s.py +++ b/jc/parsers/git_log_s.py @@ -51,6 +51,12 @@ Schema: "deletions": integer, "files": [ string + ], + "file_stats": [ + { + "name": string, + "lines_changed": integer + } ] } @@ -73,7 +79,7 @@ Examples: ... """ import re -from typing import List, Dict, Iterable, Union +from typing import List, Dict, Any, Iterable, Union import jc.utils from jc.parsers.git_log import _parse_name_email from jc.streaming import ( @@ -88,7 +94,7 @@ changes_pattern = re.compile(r'\s(?P\d+)\s+(files? changed)(?:,\s+(?P Dict: Dictionary. Structured data to conform to the schema. """ - int_list = {'files_changed', 'insertions', 'deletions'} + int_list = {'files_changed', 'insertions', 'deletions', 'lines_changed'} if 'date' in proc_data: ts = jc.utils.timestamp(proc_data['date'], format_hint=(1100,)) @@ -124,6 +130,13 @@ def _process(proc_data: Dict) -> Dict: if key in int_list: proc_data['stats'][key] = jc.utils.convert_to_int(proc_data['stats'][key]) + if 'file_stats' in proc_data['stats']: + file_stats = proc_data['stats']['file_stats'] + for file_entry in file_stats: + for key in file_entry: + if key in int_list: + file_entry[key] = jc.utils.convert_to_int(file_entry[key]) + return proc_data @@ -168,6 +181,7 @@ def parse( output_line: Dict = {} message_lines: List[str] = [] file_list: List[str] = [] + file_stats_list: List[Dict[str, Any]] = [] for line in data: try: @@ -184,11 +198,15 @@ def parse( if file_list: output_line['stats']['files'] = file_list + if file_stats_list: + output_line['stats']['file_stats'] = file_stats_list + yield output_line if raw else _process(output_line) output_line = {} message_lines = [] file_list = [] + file_stats_list = [] output_line = { 'commit': line_list[0], 'message': line_list[1] @@ -204,11 +222,15 @@ def parse( if file_list: output_line['stats']['files'] = file_list + if file_stats_list: + output_line['stats']['file_stats'] = file_stats_list + yield output_line if raw else _process(output_line) output_line = {} message_lines = [] file_list = [] + file_stats_list = [] output_line['commit'] = line_list[1] continue @@ -242,8 +264,19 @@ def parse( if line.startswith(' ') and 'changed, ' not in line: # this is a file name - file_name = line.split('|')[0].strip() + file_line_split = line.split('|') + file_name = file_line_split[0].strip() file_list.append(file_name) + + if len(file_line_split) > 1: + file_stats = file_line_split[1].strip() + lines_changed_str = file_stats.split(' ') + lines_changed_count_str = lines_changed_str[0].strip() + + file_stat = {} + file_stat["name"] = file_name + file_stat["lines_changed"] = lines_changed_count_str + file_stats_list.append(file_stat) continue if line.startswith(' ') and 'changed, ' in line: @@ -274,6 +307,9 @@ def parse( if file_list: output_line['stats']['files'] = file_list + if file_stats_list: + output_line['stats']['file_stats'] = file_stats_list + yield output_line if raw else _process(output_line) except Exception as e: diff --git a/man/jc.1 b/man/jc.1 index b5b222ad..43fd2efa 100644 --- a/man/jc.1 +++ b/man/jc.1 @@ -1,4 +1,4 @@ -.TH jc 1 2024-05-10 1.25.3 "JSON Convert" +.TH jc 1 2024-05-14 1.25.3 "JSON Convert" .SH NAME \fBjc\fP \- JSON Convert JSONifies the output of many CLI tools, file-types, and strings diff --git a/tests/fixtures/generic/git-log-full-stat-streaming.json b/tests/fixtures/generic/git-log-full-stat-streaming.json index cfee8317..3f02d37f 100644 --- a/tests/fixtures/generic/git-log-full-stat-streaming.json +++ b/tests/fixtures/generic/git-log-full-stat-streaming.json @@ -1 +1 @@ -[{"commit":"096fffdb79807d34b99985b38df0a3df7f6a86c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":120,"deletions":36,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"]},"message":"use stat examples"},{"commit":"728d882ed007b3c8b785018874a0eb06e1143b66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":90,"deletions":12,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"]},"message":"add timestamp docs and examples"},{"commit":"b53e42aca623181aa9bc72194e6eeef1e9a3a237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":29,"deletions":6,"files":["docs/parsers/git_log.md","docs/utils.md","jc/parsers/git_log.py","jc/utils.py","man/jc.1"]},"message":"add calculated timestamp"},{"commit":"477329ce5b8f5c2a8e4384ba3f59289fc18c957d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add linefeed to version text"},{"commit":"283dc4efd55030188f17c7e1dfbc5315103494b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["CHANGELOG","jc/cli.py"]},"message":"add python interpreter version and path to -v and -a output"},{"commit":"d490bbcaa0291a691b95fa5b61807eebb0b088eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":26,"files":["CHANGELOG"]},"message":"normalize add/update"},{"commit":"f49ddf8e5c5009702155fc62d83c63e3c08c594d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"]},"message":"doc update"},{"commit":"e1e341652b51b823844e76ef7e68f9373a323435","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"doc update"},{"commit":"ecda667549137bed5622cca69f2022e7a75ea833","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":8,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"]},"message":"process integers"},{"commit":"a0d96a188a9f875b2d59625aa97d4f80bba290f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":1,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"]},"message":"doc update"},{"commit":"6c0f0cddfe4dd2d5169f7c55416c6725912557f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":1,"files":["jc/parsers/yaml.py","tests/test_yaml.py"]},"message":"fix for datetime objects in yaml files"},{"commit":"c7173ecd89742c8cf8a7bc4a8021baac5c3cd483","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":6,"files":["jc/parsers/git_log.py"]},"message":"fix mypy issues"},{"commit":"e98240c905394e3ebd6a45fa31b6d432c150afc4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/git_log.py"]},"message":"extend instead of append list"},{"commit":"6cb7e25974b11afe57d7d0e8550b3b1a56b14c67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":93,"deletions":1,"files":["README.md","docs/parsers/git_log.md","man/jc.1"]},"message":"add docs"},{"commit":"c37980c05c7fbd4f811ce5fcfcfddaf5f3ab5414","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":41,"deletions":7,"files":["jc/parsers/git_log.py"]},"message":"add stat support"},{"commit":"b5943bd39d776fc4c3b3dea03c0f3d4b6f4bb260","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":10,"files":["jc/parsers/git_log.py"]},"message":"initial docstring"},{"commit":"49a3a7db3b2b0b292489a41691c9dcbce816cfed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":175,"deletions":0,"files":["jc/lib.py","jc/parsers/git_log.py"]},"message":"initial git-log parser"},{"commit":"0c55240e9da30ac4293cc324f1094de2abd3da91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":0,"files":["CHANGELOG","tests/{ => templates}/_test_foo.py","tests/{ => templates}/_test_foo_s.py"]},"message":"move test templates to fix test failures on some systems"},{"commit":"f91988aed5499d25acf7a7e87b2b0d0cd37b62af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/lib.md"]},"message":"iterator -> iterable"},{"commit":"3c3ad9fc6adf865b3814a1f03814d0bc17d1c6bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"iterator -> iterable in doc"},{"commit":"291ab79e22a59cb31814e7a5af9dbc9f2ec863e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":24,"deletions":24,"files":["README.md","man/jc.1","templates/readme_template"]},"message":"fix arch linux command"},{"commit":"e6d5892c146762cd41a966adadb77db333d98ace","merge":"c0414e7 dcca7a5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #226 from kellyjonbrazil/master\n\nsync to dev"},{"commit":"dcca7a57d558721a61fbba44f07b1d53116827e1","merge":"7138eef 4ee8a69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #225 from adrianteri/patch-1\n\nUpdate README"},{"commit":"4ee8a69337b24e199983fe657643abcb0a56a8e6","author":"003","author_email":"adriateri@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"Update README\n\nSpecify the Arch package is in the AUR and NOT in the standard Archlinux repositories."},{"commit":"c0414e7db7f5d785b72ad616517f2ec63af151a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["docgen.sh"]},"message":"clean up background tasks"},{"commit":"a419175fe6dffe9c5fd20cfbd82ee552bc82a993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":34,"deletions":17,"files":["docgen.sh","updatedocs.sh"]},"message":"enhance parallelization"},{"commit":"cd6dead034f3c72aebd22afeb2aea6591ae6d94d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"man page update"},{"commit":"45342ea9fea29947d8d90260c7665ffbca612cce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":16,"deletions":9,"files":["docgen.sh","updatedocs.sh"]},"message":"parallelize doc gneration"},{"commit":"585bf0e159c7839869cf3e458938dcc5fa2ceb81","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"xrandr update"},{"commit":"3a860b9babe93d455f68ef21436edf7470d375af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":5,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"add rotation field"},{"commit":"269180df77f9ff953b07222e8ae790c7e7a8298e","merge":"e85f11c a1afed8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #223 from anekos/fix/support-rotated-devices\n\nFix/support rotated devices"},{"commit":"a1afed8d95e33fbbc618c7b5778a9faeea2f628f","author":"anekos","author_email":"anekos@snca.net","commit_by":"anekos","commit_by_email":"anekos@snca.net","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["docs/parsers/xrandr.md"]},"message":"doc update"},{"commit":"e39f150a216e4e184444dfc88a63e0f303e51631","author":"anekos","author_email":"anekos@snca.net","commit_by":"anekos","commit_by_email":"anekos@snca.net","stats":{"files_changed":3,"insertions":9,"deletions":4,"files":["jc/parsers/xrandr.py","tests/fixtures/generic/xrandr_simple.json","tests/test_xrandr.py"]},"message":"Support rotated devices"},{"commit":"e85f11c6fcad5461bae612dd5a945c20d300e59a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":12,"deletions":12,"files":["docs/parsers/ini.md","docs/parsers/kv.md","jc/parsers/ini.py","jc/parsers/kv.py"]},"message":"doc formatting"},{"commit":"49a9d7b07e89696f2e022655d7256b7d6ad4bf7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":12,"deletions":8,"files":["docs/parsers/ini.md","docs/parsers/kv.md","man/jc.1"]},"message":"doc update"},{"commit":"a2ef9c429e4bb9f70d033511dce77ccdb9013971","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":38,"deletions":8,"files":["jc/parsers/ini.py","jc/parsers/kv.py","tests/test_ini.py","tests/test_kv.py"]},"message":"allow duplicate keys"},{"commit":"d5e9074f1c8facb3f15b8c41a008917178626978","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/lib.py","setup.py"]},"message":"version bump"},{"commit":"774699f085d97f22ae2dab0cf64d72aa1e1709f7","merge":"789f073 7138eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #220 from kellyjonbrazil/master\n\nsync to dev"},{"commit":"7138eef3d137bc64286d4af453d8d4e7b3f4408d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py"]},"message":"fix newline chars in doc"},{"commit":"fad5e544aa9e57d31473190e196f59c616901207","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"]},"message":"formatting"},{"commit":"64757e2cf55448bccfbbd60d31930ab3f59af21b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"]},"message":"doc formatting"},{"commit":"e05be3f08beae1b600fc55a3a7b4e28163e15bc0","merge":"ac61e9a 789f073","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #213 from kellyjonbrazil/dev\n\nDev v1.18.6"},{"commit":"789f0735dfd63e728b8716d97cf0c6045ede5011","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"doc update"},{"commit":"34bc7753174be28d6c1a00dadc662bc374e554c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"doc update"},{"commit":"38de059a1bc285c8681086d9fb43d0d23ac01d49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":3,"files":["docs/parsers/asciitable.md","docs/parsers/universal.md","man/jc.1"]},"message":"doc update"},{"commit":"304ae6268f4dff6e6f901628e7ff89db1d6e0767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/parsers/asciitable_m.py"]},"message":"minor optimization by changing the expression order"},{"commit":"978caf45221188a29c0e67147804f20f317c066d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["jc/parsers/asciitable.py"]},"message":"minor optimization by reordering expressions"},{"commit":"17df5bfcfc25f226a2976aa7ab8a80e4aaa915c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":2,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"cache _is_separator function"},{"commit":"5e6a5068cff71b3b30525d0a12868bdf6551456c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":2,"files":["jc/parsers/universal.py"]},"message":"allow iterables for simple table parser"},{"commit":"619de68a61be0117e635032347dde417d77c748c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":9,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"formatting"},{"commit":"6748c3cc91f90bddea3d07b8b30a049ee55eaf35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":65,"deletions":61,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"remove lines from corner detection and add rounded corners"},{"commit":"0a462978b731770d1290187a502706c2322f5f91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":101,"deletions":3,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py","tests/test_asciitable.py","tests/test_asciitable_m.py"]},"message":"fix for special characters in headers"},{"commit":"e66a82ff49b40a674f9ef373a12d59fc71bfa730","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":5,"files":["CHANGELOG","jc/parsers/asciitable_m.py","man/jc.1"]},"message":"doc update"},{"commit":"f3aa797d96c8e2cef2124dbb2f49d1fadaee3fa2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":69,"deletions":9,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"add more pretty table separators"},{"commit":"e5b478218c4ba3781afd085056dba888c3f6ae02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_xrandr.py"]},"message":"add quiet=True to parse tests"},{"commit":"35e0e9c32afbc5450c661bcb3a23904d135358ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable.py"]},"message":"remove print statement"},{"commit":"17c3c2f029a0a47eb02d681567619d471b99949c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":58,"deletions":2,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py","tests/test_asciitable.py","tests/test_asciitable_m.py"]},"message":"add bold bar seperator and ANSI code tests"},{"commit":"cf83e6398b3314b233581eb313510872177de20a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":0,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"add fancy separators"},{"commit":"94e061b881e2ed28d2b462ad038e5ba77182b6c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":275,"deletions":0,"files":["tests/test_asciitable.py"]},"message":"add asciitable parser tests"},{"commit":"720480e39ce3cc2079d7f4f5bcff2725081fec34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":10,"deletions":2,"files":["docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"doc update"},{"commit":"82a63fe15922456853aa4597aa10a5a02b20bdef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":8,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"]},"message":"doc update"},{"commit":"9c1ec9940e68ce9848da20e81b8c0b7e35a215df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":82,"deletions":14,"files":["docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"doc update"},{"commit":"f23f19da453a0f7bcf70e417a10f87e27571aa43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":122,"deletions":9,"files":["README.md","docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py","man/jc.1"]},"message":"doc update"},{"commit":"aea2e1b0a9c6bb2a02a6e73889bb04e8f4f22588","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["tests/test_asciitable_m.py"]},"message":"fix tests so blank strings are now None"},{"commit":"7d95d679bf4093ea77f30a1be55384b6dbf08341","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":212,"deletions":1,"files":["jc/lib.py","jc/parsers/asciitable.py"]},"message":"add asciitable parser"},{"commit":"b3b140066b74ee31dd1c460502caf2f26df321b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py"]},"message":"doc update"},{"commit":"b204c423c1b947c17cb251a5dd3c444cd71dd2c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":193,"deletions":15,"files":["README.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py","man/jc.1"]},"message":"doc update"},{"commit":"d451c309bb0d8889dc09a698212bf01c2154a582","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":8,"files":["jc/parsers/asciitable_m.py"]},"message":"change multiple or statements to any()"},{"commit":"01d53da68ed04b736934851137c59216ad02d8c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable_m.py"]},"message":"remove debug print"},{"commit":"53dd05e52c329a15c30a756a36a165ac59ef8a14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":29,"deletions":1,"files":["jc/parsers/asciitable_m.py","tests/test_asciitable_m.py"]},"message":"fix rstrip and add tests"},{"commit":"ab564f5be8282f1c7ee2d602bcef398fdfd4570f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":237,"deletions":1,"files":["jc/parsers/asciitable_m.py","tests/test_asciitable_m.py"]},"message":"add tests"},{"commit":"00c39450f9878527b60545ad61c04cfb98f418dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"]},"message":"enhance type annotation"},{"commit":"f611d08b50219f4e573c1d1f0beae27583e76432","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/asciitable_m.py"]},"message":"formatting"},{"commit":"90e79b7df3a4d5b37835fdf1c2debc1bad0a40b9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"]},"message":"formatting"},{"commit":"4eb2d725d5fe6f2cc7935c7dc891912cf7b8e940","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"]},"message":"formatting"},{"commit":"51ae5ebcac7263ef2571c11975b275eff352bbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":148,"deletions":175,"files":["jc/parsers/asciitable_m.py"]},"message":"new streamlined parser"},{"commit":"9ecbdb09162da4d563799aa93d422db85b2c324b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":35,"deletions":30,"files":["docs/parsers/mpstat_s.md","docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","docs/parsers/universal.md","jc/parsers/foo_s.py","jc/parsers/mpstat_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"]},"message":"use generator instead of iterable in function return annotation"},{"commit":"b3a2886fd0af0cd06890f37f1edfc6890bb83e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["docs/lib.md"]},"message":"formatting"},{"commit":"ceacec0f462bd7c2d9e92ddb9029ccd71aef481c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable_m.py"]},"message":"remove errant os sep import"},{"commit":"ff0f794b01395ed9b65fac75a6b07f0772d45a2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":32,"deletions":10,"files":["jc/parsers/asciitable_m.py"]},"message":"working"},{"commit":"70fafbf3f80f35c5db2c306978b2a488adad40bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"remove asciitable so tests pass for now"},{"commit":"5a248a8fc58952a5eab3d4aac025d7422ba82d08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":344,"deletions":0,"files":["jc/parsers/asciitable_m.py"]},"message":"add multiline asciitable parser"},{"commit":"4a3a4e10df8a552a4db3510640695f02b166dc40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":4,"files":["jc/lib.py"]},"message":"add asciitable and asciitable-m parsers"},{"commit":"c27bd5ff39f21c6377e661d4d7de1200d2fdd72f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":16,"files":["jc/parsers/universal.py"]},"message":"pad lines in sparse_table_parse and use str.isspace()"},{"commit":"f804c9627fb71341429ca80aec2887e23e0277db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/universal.py"]},"message":"copy input list so we don't mutate the caller's data"},{"commit":"3ab25d02f9dc248706aa1105e1766b2a84bc55a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"use _parser_is_streaming from lib"},{"commit":"9e80fd2b97b9bfe38fdaa6acdf2e8ed26d34b49d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":11,"files":["jc/cli.py","jc/lib.py"]},"message":"fallback if info and doc items don't exist"},{"commit":"ff9527a098a94c996641fb3fe2f905c8ae5e3063","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":13,"files":["jc/cli.py"]},"message":"import cleanup and use all_parser_info in parsers_text"},{"commit":"7dac2f8dc3baf619105e3c6ca4d3e45300b86287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":23,"deletions":9,"files":["docs/lib.md","docs/readme.md","man/jc.1"]},"message":"doc update"},{"commit":"32e4d55e86c3e7d94488ec69f13a4f6400c4cef3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"]},"message":"use parser_info for help_doc"},{"commit":"f9a9062147256d0949457cc7fde838f87202524d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":27,"deletions":10,"files":["CHANGELOG","jc/__init__.py","jc/lib.py"]},"message":"add documentation argument to parser_info and all_parser_info"},{"commit":"89e5919796f7da585285901dca461aae21336415","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/mpstat_s.md","jc/parsers/mpstat_s.py"]},"message":"add -A to second example"},{"commit":"e5f5b2591d8ac3abeb9571688c7fb8de34d647f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update"},{"commit":"77c667eec045daff5cbd062fe9d6e83f237727e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":67,"deletions":6,"files":["docs/parsers/mpstat.md","docs/parsers/mpstat_s.md","jc/parsers/mpstat.py","jc/parsers/mpstat_s.py","tests/fixtures/ubuntu-18.04/mpstat-A-streaming.json","tests/fixtures/ubuntu-18.04/mpstat-A.json","tests/fixtures/ubuntu-18.04/mpstat-A.out","tests/test_mpstat.py","tests/test_mpstat_s.py"]},"message":"ubuntu fixes"},{"commit":"b257ce8c2fe6825fe435b4d04b4184091030db10","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":65,"deletions":0,"files":[".../centos-7.7/mpstat-A-2-5-streaming.json","tests/fixtures/centos-7.7/mpstat-A-streaming.json","tests/fixtures/centos-7.7/mpstat-streaming.json","tests/test_mpstat_s.py"]},"message":"add mpstat_s tests"},{"commit":"c693c868cacbcd81f44fd383719723dd7a137c87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":352,"deletions":0,"files":["README.md","docs/parsers/mpstat.md","docs/parsers/mpstat_s.md","jc/lib.py","jc/parsers/mpstat.py","jc/parsers/mpstat_s.py","man/jc.1"]},"message":"add mpstat streaming parser"},{"commit":"6f98b27a05d6e1f7571a97316b193f096521b959","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":168,"deletions":0,"files":["tests/fixtures/centos-7.7/mpstat-A-2-5.json","tests/fixtures/centos-7.7/mpstat-A-2-5.out","tests/fixtures/centos-7.7/mpstat-A.json","tests/fixtures/centos-7.7/mpstat-A.out","tests/fixtures/centos-7.7/mpstat.json","tests/fixtures/centos-7.7/mpstat.out","tests/test_mpstat.py"]},"message":"add mpstat tests"},{"commit":"d7efd25d88a8f489564ce48223845a16e4ab1cc7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":207,"deletions":1,"files":["EXAMPLES.md","README.md","docs/parsers/mpstat.md","man/jc.1"]},"message":"add mpstat to docs"},{"commit":"2cddb1f0bb497be0be071cdcb56bf49d2dafc920","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":94,"deletions":15,"files":["jc/parsers/mpstat.py"]},"message":"working mpstat"},{"commit":"ae1c331595dd857d8ae7f8cf93daee1b26be2c3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":30,"deletions":5,"files":["jc/parsers/mpstat.py"]},"message":"initial working version"},{"commit":"bc97052ed4ee3bf3f25127968139f2e89a659fe3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":109,"deletions":0,"files":["CHANGELOG","jc/lib.py","jc/parsers/mpstat.py"]},"message":"initial add mpstat parser"},{"commit":"6c3e0e2aa0e8cc375d9f7473930b18957d33f1aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"formatting"},{"commit":"dd052e01469e9e3328f7326d3591365a8e7322eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":26,"deletions":24,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"add underscores to column examples"},{"commit":"54e8f58145f6c4332fbd375d112259ea7abb2d72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":28,"deletions":2,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"add table result examples"},{"commit":"def7aa5764e69cd0cf2c5b70aa62c62023f76c9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":16,"deletions":16,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"formatting"},{"commit":"6986c74f6dceca907ea2e469a332deeb093a122c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":169,"insertions":34,"deletions":837,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/pidstat.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/nmcli.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/pidstat.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/xrandr.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py"]},"message":"remove direct parser module example from doc"},{"commit":"b784db404d0569a4c630eb124b37b0b1d0846453","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":17,"insertions":87,"deletions":166,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/pidstat_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/pidstat_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"]},"message":"streaming doc formatting update"},{"commit":"8aee4517bb4c2eebdd9873f7eb0827cd33b85519","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":26,"files":["docs/parsers/pidstat_s.md","jc/parsers/pidstat_s.py"]},"message":"doc formatting"},{"commit":"a5fb8fbf94b3b80bef82f078ad6582260b13e374","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":17,"insertions":164,"deletions":148,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/pidstat_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/pidstat_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"]},"message":"streaming doc update"},{"commit":"b9365e2ac28c3eacf53bc101857f7f1d7286ec20","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":74,"deletions":0,"files":[".../centos-7.7/pidstat-hdlrsuw-2-5-streaming.json",".../centos-7.7/pidstat-hdlrsuw-streaming.json",".../fixtures/centos-7.7/pidstat-hl-streaming.json","tests/test_pidstat_s.py"]},"message":"add pidstat-s tests"},{"commit":"696338c1a3d462afbe677a6f2ebe08d06ef4046a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":38,"deletions":0,"files":["tests/_test_foo_s.py"]},"message":"add streaming test template"},{"commit":"4f0616190bb842411353d65650b78a65d8cbdc28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","man/jc.1"]},"message":"doc update"},{"commit":"3278cb0de301ee542b1fe8245a6c359193373b6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":10,"files":["docs/parsers/arp.md","jc/parsers/arp.py"]},"message":"add type hints"},{"commit":"4fc04256a567c502a88ac8a1bd189746387c93f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["jc/parsers/foo_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"]},"message":"rollback noReturn to tuple"},{"commit":"e4ae0fea63c0386c1b3239607fd6a58738d23633","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":8,"deletions":8,"files":["docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","jc/parsers/foo_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"]},"message":"fix type annotation"},{"commit":"d3727ea0906d6167aa48c340519242b010469d98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":99,"deletions":1,"files":["CHANGELOG","README.md","docs/parsers/pidstat_s.md","man/jc.1"]},"message":"doc update"},{"commit":"0d13909cf63d14008607c5640d074ab4073115e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":168,"deletions":0,"files":["jc/lib.py","jc/parsers/pidstat_s.py"]},"message":"add pidstat-s parser"},{"commit":"c52ca20e285895d2afb685a2a5ca275de7901033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/pidstat.py"]},"message":"fix comment"},{"commit":"21f27f26c81c75234221a5193c7d3903323e2032","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":72,"deletions":0,"files":["tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.json","tests/fixtures/centos-7.7/pidstat-hdlrsuw.json","tests/fixtures/centos-7.7/pidstat-hl.json","tests/test_pidstat.py"]},"message":"add pidstat tests"},{"commit":"5e7a87f39782d12070a895440ff541800df91b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":35,"deletions":0,"files":["tests/_test_foo.py"]},"message":"add test template"},{"commit":"845d763829acd03fff1d2fad6e9691f04bd1a2aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/pidstat.md","jc/parsers/pidstat.py"]},"message":"format docs to fit 80 columns"},{"commit":"f5c7d52ec72f5ff4b77d5ac4491f330575b9f10f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":10,"files":["man/jc.1","templates/manpage_template"]},"message":"formatting"},{"commit":"c3198a58744803f52113f80967c7259d781e2328","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":22,"deletions":12,"files":["man/jc.1","templates/manpage_template"]},"message":"formatting"},{"commit":"bbd4afa73542ba6596aed77426bb494fbcf23196","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["README.md","man/jc.1"]},"message":"add pidstat to docs"},{"commit":"ae754a84bf5fc35b248bbc5f7b0fa8e871765819","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":263,"deletions":33,"files":["docs/parsers/arp.md","docs/parsers/pidstat.md","jc/parsers/pidstat.py"]},"message":"doc update"},{"commit":"3389eb5debe0f0ba01ece01e20048608bf357e70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":219,"deletions":9,"files":["jc/parsers/pidstat.py","tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.out","tests/fixtures/centos-7.7/pidstat-hdlrsuw.out","tests/fixtures/centos-7.7/pidstat-hl.out"]},"message":"initial working parser"},{"commit":"01f2c1e71f87ab401d487be4d6d150cb67c91437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":162,"deletions":2,"files":["CHANGELOG","jc/lib.py","jc/parsers/pidstat.py","setup.py","tests/fixtures/centos-7.7/pidstat.out"]},"message":"add pidstat parser"},{"commit":"8bfbf8f1bcd233a8ecd34012e140eb29164ca5fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"simplify error message"},{"commit":"f4242669bac3af5eb196c46d4146823aacec40ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":10,"files":["jc/parsers/arp.py"]},"message":"minor cleanup"},{"commit":"bebd9331f1fb9b80f8cb4a5cfacd68461743004e","merge":"9861983 ac61e9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #211 from kellyjonbrazil/master\n\nsync to dev"},{"commit":"ac61e9ad2c9c4e864db02db04cbf907fb0efd99b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add pypi link"},{"commit":"648ef4d8a9c33a36d4bb2c135fe59b031de8f24c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"update badge links"},{"commit":"727fc9a701e9aae75d3d2b708010da1d0dc8781a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/date.md","man/jc.1"]},"message":"doc update"},{"commit":"306512d6bb53af18516fc10b15c7ec79cb02cc98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":7,"deletions":4,"files":["CHANGELOG","jc/lib.py","jc/parsers/date.py","setup.py"]},"message":"force AM/PM to uppercase in date parser"},{"commit":"6afb1d389ca9dfd7880386d380fee032b7eb92e2","merge":"961968a 9861983","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #209 from kellyjonbrazil/dev\n\nDev v1.18.4"},{"commit":"98619834818c181cb50a9605fe166b6153c46095","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"doc update"},{"commit":"ca79053db08542849136ae13fdb4d1d90b79a7e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docgen.sh"]},"message":"document pydoc version"},{"commit":"29c263f87810f8566ebdad2358e99896391adfd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":93,"insertions":115,"deletions":115,"files":["docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/streaming.md","docs/utils.md"]},"message":"pydoc formatting fixes"},{"commit":"128c3c170abc6a702ae044b073fb9d992d4262b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"doc update"},{"commit":"a531ab8864fca27b55d83b55055eaef1c36128cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting"},{"commit":"0c1be7cc11ec75a5738483d68d053e702eb34fc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":18,"files":["README.md","templates/readme_template"]},"message":"reduce dig example size"},{"commit":"e4222b45f54e6179e22d7924c083e4642b9974ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/lib.py"]},"message":"fix names to mod names"},{"commit":"ac32c69c31e8eff22252d7aded08f6cb14622086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"formatting"},{"commit":"cb2dfeac8d44b733ad9d364e8c6d233a381bfae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":199,"insertions":334,"deletions":326,"files":["README.md","docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/streaming.md","docs/utils.md","jc/__init__.py","jc/cli.py","jc/exceptions.py","jc/lib.py","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat_freebsd_osx.py","jc/parsers/netstat_linux.py","jc/parsers/nmcli.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/xrandr.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py","jc/streaming.py","jc/utils.py","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"change name to JSON Convert"},{"commit":"9a3602e70b865a3015bd700b30d1076e17511a9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/lib.md","jc/lib.py"]},"message":"doc update"},{"commit":"a9f53ee258e18bc90934e263d8dc96feee84e939","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":4,"files":["jc/cli.py","jc/lib.py"]},"message":"optimize streaming parser detection in cli"},{"commit":"6be3d3d98222a262c5138bb09f2951ccfab96110","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":43,"deletions":1,"files":["CHANGELOG","docs/lib.md","docs/readme.md"]},"message":"doc update"},{"commit":"e49df7208377ab34a74240a06f35f17fee4b8203","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"use streaming parser list to find streaming parsers"},{"commit":"7ede7be7bf7b1a7d29d158b3b21c20fff4990e72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":42,"deletions":0,"files":["jc/__init__.py","jc/lib.py"]},"message":"add standard and streaming list functions"},{"commit":"4758e28a36e2a55497e4f722d386a6b5cc30dc4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":16,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting"},{"commit":"4a1ee151b3cb054d84cd964fd62f5855f765751d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":9,"deletions":11,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py"]},"message":"add dhcp6 options to docs"},{"commit":"8c8afc1a922e3c30fcf501d169b33a68b65cd3e0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":60,"deletions":24,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting"},{"commit":"ed205f7720d98c225c917c252ed7a6c9e6e8c2b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":9,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py","man/jc.1"]},"message":"doc update"},{"commit":"d65f7ae992abc33140c00714d442290103661757","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":41,"deletions":0,"files":["EXAMPLES.md"]},"message":"add nmcli"},{"commit":"e2ffef57b9a474048fe72cf42aebfa6bfaf2e42b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_nmcli.py"]},"message":"fix test"},{"commit":"002caa9fb3b65f1ae64df25cc39c3de130403e76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":252,"deletions":0,"files":[".../fedora32/nmcli-connection-show-ens33.json",".../fedora32/nmcli-connection-show-ens33.out",".../fixtures/fedora32/nmcli-device-show-ens33.json",".../fixtures/fedora32/nmcli-device-show-ens33.out","tests/fixtures/fedora32/nmcli-device-show.json","tests/fixtures/fedora32/nmcli-device-show.out","tests/test_nmcli.py"]},"message":"add fedora tests"},{"commit":"b7c6faf3daf8eb0c42a222778baa440c5a018c75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"enhance error message"},{"commit":"554ca61d1764b81dea06b6b013d0444072f0662a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":165,"deletions":0,"files":[".../fixtures/centos-7.7/nmcli-connection-all.json",".../centos-7.7/nmcli-connection-show-ens33.json","tests/fixtures/centos-7.7/nmcli-connection.json","tests/fixtures/centos-7.7/nmcli-device-all.json",".../centos-7.7/nmcli-device-show-ens33.json",".../fixtures/centos-7.7/nmcli-device-show-lo.json","tests/fixtures/centos-7.7/nmcli-device-show.json","tests/fixtures/centos-7.7/nmcli-device.json","tests/fixtures/centos-7.7/nmcli-general-all.json",".../centos-7.7/nmcli-general-permissions.json","tests/test_nmcli.py"]},"message":"add tests"},{"commit":"7b9722d255a16981099dc803beda7abe0d46106a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":26,"deletions":34,"files":["man/jc.1","templates/manpage_template"]},"message":"fix formatting"},{"commit":"5505bde8ef77db0885f08d8d04160cbc4418dd67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/zipinfo.md"]},"message":"doc update"},{"commit":"dbcd9a4060647be24bca2a8d577f11925a9ac210","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/zipinfo.py"]},"message":"bump version to 1.0"},{"commit":"4bdeb2b3aa063c2772f5c44e52acbe16e915cc3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/xrandr.py"]},"message":"simplify warning message"},{"commit":"6ae1d03187c6d4b669f6f74db1be7c9cf07adaed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py"]},"message":"doc fix"},{"commit":"f75b06abe4af152be094f8bc1ba5ce66b25e35e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":180,"deletions":3,"files":["README.md","docs/parsers/nmcli.md","jc/parsers/nmcli.py","man/jc.1"]},"message":"doc update"},{"commit":"1923925710dadc4116202855ae884ef18394d428","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["CHANGELOG"]},"message":"update changelog"},{"commit":"2c5c57ae04df3b7abfb1c3423c3350c7c2ab5dcd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/lib.py","setup.py"]},"message":"version bump"},{"commit":"f4d11d697e000135720a971edf84dcad31a1bec8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":155,"deletions":15,"files":["jc/parsers/nmcli.py"]},"message":"finish use cases and doc"},{"commit":"7f409b7082aa9525cc9280e3c5c92bc82089cf14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"enhance ParseError cli message"},{"commit":"937fa5aad2519f588c6d0feb8f08211f6b99872f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":0,"files":["jc/parsers/nmcli.py"]},"message":"split dhcp options"},{"commit":"19dcef513565c34a31f6d735577da5e25f9bd2cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":69,"deletions":2,"files":["jc/parsers/nmcli.py"]},"message":"firm up flow. add/remove text. parse routes"},{"commit":"3d01356461eb2790f859968da7f5cb4fd2ee9898","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":3,"files":["jc/parsers/nmcli.py"]},"message":"add text_kv function"},{"commit":"2d6f666fa4c791e7995f6b0c1490dac73ce224c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":61,"deletions":16,"files":["jc/parsers/nmcli.py"]},"message":"add dev show and conn show parsers"},{"commit":"4dda895f122ecc19b267ed1485cf656bae76ff07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":404,"deletions":0,"files":["jc/lib.py","jc/parsers/nmcli.py","tests/fixtures/centos-7.7/nmcli-connection-all.out",".../centos-7.7/nmcli-connection-show-ens33.out","tests/fixtures/centos-7.7/nmcli-connection.out","tests/fixtures/centos-7.7/nmcli-device-all.out",".../centos-7.7/nmcli-device-show-ens33.out","tests/fixtures/centos-7.7/nmcli-device-show-lo.out","tests/fixtures/centos-7.7/nmcli-device-show.out","tests/fixtures/centos-7.7/nmcli-device.out","tests/fixtures/centos-7.7/nmcli-general-all.out",".../centos-7.7/nmcli-general-permissions.out","tests/fixtures/centos-7.7/nmcli.out"]},"message":"initial nmcli parser"},{"commit":"52617b1722ba2f089716b069f78f70a865430d61","merge":"3afaa48 961968a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #208 from kellyjonbrazil/master\n\nsync to dev"},{"commit":"961968a0fcaf37b64bc850c4945ba4b805a1fe54","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":26,"deletions":23,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"fix schema"},{"commit":"f026a788e5ca1231927e71fdbb1dadb2365a6518","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":62,"deletions":0,"files":["EXAMPLES.md"]},"message":"add xrandr example"},{"commit":"2f7c03eb35520be916c28a687031f8c6425839ba","merge":"681176e 3afaa48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #207 from kellyjonbrazil/dev\n\nDev v1.18.3"},{"commit":"3afaa48eee081e28262d1762c5ec23d318012822","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":15,"insertions":15,"deletions":15,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"]},"message":"doc update"},{"commit":"3201452564fb0fb44ef9cc32217339370bd2521e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"add -p to example"},{"commit":"7ee1e34fc71c0dbc08ba482b787d560fd5125f64","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":116,"deletions":4,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"doc update"},{"commit":"67dbf050161201f5016899591e81ab6253ac2322","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"add type annotations"},{"commit":"4ac9f2e3dad4e7bd270bf5a8e61b729838b2c89c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":10,"deletions":17,"files":["CHANGELOG","docs/parsers/rsync.md","docs/parsers/rsync_s.md","jc/parsers/rsync.py","jc/parsers/rsync_s.py"]},"message":"doc update"},{"commit":"3f5f6e39a777ef524cb3a06a01321bb8c31d930d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":100,"deletions":98,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"formatting"},{"commit":"4723db8e3cc4946b14c83b25d6e8c6d2309aa72e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":195,"deletions":77,"files":["README.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/xrandr.md","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/xrandr.py","man/jc.1"]},"message":"doc updates"},{"commit":"ca914ec77d1fc77e42860189e62ac2fb203d4931","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":2,"files":["tests/test_xrandr.py"]},"message":"add nodata test"},{"commit":"dcc7f3f357ef016b4583fc1320fd2394788f271f","merge":"184ef3a cbdc666","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #204 from lyterk/xrandr\n\nNew parser: xrandr"},{"commit":"cbdc66623671da335eafe132b7af79f884856f1d","author":"Kevin Lyter","author_email":"lyterk@sent.com","commit_by":"Kevin Lyter","commit_by_email":"lyterk@sent.com","stats":{"files_changed":3,"insertions":2,"deletions":30,"files":["jc/parsers/xrandr.py",".../{simple_xrandr.json => xrandr_simple.json}",".../{simple_xrandr.out => xrandr_simple.out}"]},"message":"Return empty object if no results and filenames\n\n- If no results are returned, return {} instead of {\"screens\": [],\n\"unassociated_devices\": []}\n- simple_xrandr -> xrandr_simple"},{"commit":"184ef3a1faeb406ce62076cff637ee86d61541fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":11,"deletions":3,"files":["docs/parsers/rsync.md","docs/parsers/rsync_s.md","man/jc.1"]},"message":"doc update"},{"commit":"c732f759445e335fe36586859b6fde7e27bb8901","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":10,"deletions":2,"files":["jc/parsers/rsync.py","jc/parsers/rsync_s.py"]},"message":"doc update"},{"commit":"7a1ae4f5fc5328c32bf77235cfbd9f83ec995053","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":105,"deletions":0,"files":["tests/{test_lib.py => test_jc_lib.py}","tests/test_jc_streaming.py","tests/{test_utils.py => test_jc_utils.py}"]},"message":"add library tests"},{"commit":"d04bc3757c482ec9062b2da91ded76c5dd6d106b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add xrandr"},{"commit":"73e8391653145412cd852aca349466018c8b9084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":3,"files":["jc/utils.py"]},"message":"formatting"},{"commit":"f6c1463c1578db264ccb3d4c2677857ed906e965","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":44,"deletions":24,"files":["jc/cli.py"]},"message":"formatting"},{"commit":"d392c7f901a9d7c57617fbd03bd3f88ee0bf4132","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":20,"deletions":13,"files":["docs/parsers/date.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/ls.md","docs/parsers/rpm_qi.md","docs/parsers/stat.md","docs/parsers/systeminfo.md","docs/parsers/timedatectl.md","docs/parsers/upower.md","docs/parsers/vmstat.md","docs/parsers/who.md","docs/utils.md"]},"message":"doc update"},{"commit":"d0387f58205b2fd9b9860ce9656bb29ceec54340","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":16,"insertions":34,"deletions":29,"files":["jc/parsers/date.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/systeminfo.py","jc/parsers/timedatectl.py","jc/parsers/upower.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/who.py"]},"message":"add timestamp format hints for better performance"},{"commit":"76f92908a3ba9cbadcc8e972afa8b1c4a69509bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":44,"deletions":9,"files":["jc/utils.py"]},"message":"add format hints for performance optimization"},{"commit":"1a115da67bdce9acfefbfb71fbac37e234b1babd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"add lru_cache maxsize for python 3.7 support"},{"commit":"f0a37ccf301eee5133a83b5dd96986fef0c38e7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/utils.py"]},"message":"use lru_cache for significant performance boost to timestamp"},{"commit":"f331f53a531169520a4d8ea15d277560a49aedb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["CHANGELOG","jc/utils.py"]},"message":"use !r formatting instead of quotes"},{"commit":"8611aff06b18212b7292d564beb27a2062fc3f41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/parsers/rsync_s.md","jc/parsers/rsync_s.py"]},"message":"add examples"},{"commit":"2f3f78e8d35a0ccccde0f84417400acdfe7fe0aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":16,"insertions":194,"deletions":185,"files":["docgen.sh","docs/parsers/rsync_s.md","docs/readme.md","docs/streaming.md","docs/utils.md","jc/__init__.py","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/streaming.py","man/jc.1"]},"message":"refine streaming parsers"},{"commit":"d1e0ee6123dfecd48d074cb7a40e98a15b6adcb9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":8,"files":["jc/parsers/ping_s.py"]},"message":"use new streaming functions"},{"commit":"45314c98083067f1f6fae9c477c99fabec223f29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":112,"deletions":102,"files":["jc/streaming.py","jc/utils.py"]},"message":"move some functions to streaming"},{"commit":"df00945b46e27e10107f48d186eedf80b55bd40e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":59,"deletions":49,"files":["jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py"]},"message":"move try/except inside for loop"},{"commit":"fda0050d867bcbe4f1d7e024b08e9881d0f57735","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":191,"deletions":0,"files":[".../centos-7.7/rsync-i-logfile-streaming.json","tests/fixtures/centos-7.7/rsync-i-streaming.json",".../centos-7.7/rsync-i-v-logfile-streaming.json",".../centos-7.7/rsync-i-vv-logfile-streaming.json",".../rsync-i-vvv-logfile-nochange-streaming.json",".../centos-7.7/rsync-i-vvv-logfile-streaming.json",".../centos-7.7/rsync-ivvv-nochange-streaming.json",".../fixtures/centos-7.7/rsync-ivvv-streaming.json","tests/fixtures/generic/rsync-i-streaming.json",".../rsync-i-vvv-logfile-nochange-streaming.json",".../rsync-i-vvv-nochange-streaming.json",".../osx-10.14.6/rsync-i-vvv-streaming.json","tests/test_rsync_s.py"]},"message":"add rsync-s tests"},{"commit":"a76d46f9ecb1eff4d6cc7ad633c97cec0e99001a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":19,"insertions":110,"deletions":109,"files":["CHANGELOG","docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","docs/utils.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/utils.py","man/jc.1"]},"message":"refactor ignore_exceptions"},{"commit":"6b069a82d0fa19c8d83b19b934bace556cb758d7","author":"Kevin Lyter","author_email":"lyterk@sent.com","commit_by":"Kevin Lyter","commit_by_email":"lyterk@sent.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/lib.py"]},"message":"Add xrandr to lib.py"},{"commit":"6b793d052147406f388c4d5dc04f506a3456f409","author":"Kevin Lyter","author_email":"lyterk@sent.com","commit_by":"Kevin Lyter","commit_by_email":"lyterk@sent.com","stats":{"files_changed":1,"insertions":6,"deletions":11,"files":["jc/parsers/xrandr.py"]},"message":"Clean up types\n\n* | operator => Union[]\n* Remove unused import Iterator\n* Remove comment"},{"commit":"ce9103f7cc666895dc7840d32797d8c7274cf1b8","author":"Kevin Lyter","author_email":"lyterk@sent.com","commit_by":"Kevin Lyter","commit_by_email":"lyterk@sent.com","stats":{"files_changed":2,"insertions":0,"deletions":287,"files":["templates/xrandr_sample.txt","templates/xrandr_sample_verbose.txt"]},"message":"Delete old files in template folder"},{"commit":"671d6dee36a37317257e09a080849205d301bceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":83,"deletions":15,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","docs/utils.md"]},"message":"doc update"},{"commit":"49929c714c2d71a310b1dd95138dbd02f8704138","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":139,"deletions":52,"files":["jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/utils.py"]},"message":"add add_jc_meta decorator"},{"commit":"2986771f07de87bfee44dd3bbb4f285e249aad76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"require python v3.7 and above since v3.6 is now deprecated"},{"commit":"520082d963b93d2bafeff921da3899686b22cadf","author":"Kevin Lyter","author_email":"lyterk@sent.com","commit_by":"Kevin Lyter","commit_by_email":"lyterk@sent.com","stats":{"files_changed":9,"insertions":968,"deletions":0,"files":["jc/parsers/xrandr.py","templates/xrandr_sample.txt","templates/xrandr_sample_verbose.txt","tests/fixtures/generic/simple_xrandr.json","tests/fixtures/generic/simple_xrandr.out","tests/fixtures/generic/xrandr.out","tests/fixtures/generic/xrandr_2.out","tests/fixtures/generic/xrandr_device.out","tests/test_xrandr.py"]},"message":"New parser: xrandr\n\nTests passing, working as intended in plugin directory"},{"commit":"021e296d457140c32b5256c2b0acf66efc458896","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":104,"deletions":100,"files":["jc/parsers/rsync_s.py"]},"message":"move variable inits and regexes up"},{"commit":"42e56fbcea6db64ea7f7045e7755af492c95aec2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":12,"files":["jc/parsers/rsync.py"]},"message":"move regex up"},{"commit":"a5b62a4055df37b84751a7cdc14eb6f1ed907cd9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":230,"deletions":18,"files":["docs/parsers/rsync_s.md","jc/parsers/rsync_s.py"]},"message":"add processing and docs"},{"commit":"be98c9b7f6c67e23ea101223934d67bba512e645","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/foo_s.py"]},"message":"simplify try/except by moving outside for loop"},{"commit":"aceeb8450796ae748a4d4abf75643f309d0a42e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":12,"deletions":1,"files":["CHANGELOG","README.md","man/jc.1"]},"message":"doc update"},{"commit":"13910632173e7c815ff1161cf52fd1d17153c4a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":367,"deletions":0,"files":["jc/lib.py","jc/parsers/rsync_s.py"]},"message":"first draft rsync streaming parser"},{"commit":"52157addd0d6dff3bdb34f179ec14b07c8c27ccc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/foo_s.py"]},"message":"fix compatible list"},{"commit":"ec0bc6615e22fdc536623e290d88b9725cb6a0ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/utils.md","jc/utils.py"]},"message":"formatting"},{"commit":"2f80800e38256b363a4122195ec4aaffebe67d87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"simplify all_parser_info comprehension"},{"commit":"3959d3347c8d3e838f8c3158c4db74e2fa2eb856","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["docs/lib.md"]},"message":"doc update"},{"commit":"b57d25c69a193d3866ea86a3a34edd67049b198d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/lib.py"]},"message":"clean up return type for parser_info"},{"commit":"63e43a7cabb51c624c962cdcc92a1199f18c77e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":188,"deletions":21,"files":["README.md","docs/lib.md","docs/parsers/rsync.md","docs/parsers/universal.md","docs/parsers/zipinfo.md","docs/utils.md","man/jc.1"]},"message":"doc updates"},{"commit":"21719f9a26c25d896b0a5d49c9d7814175835e16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":18,"deletions":20,"files":["jc/lib.py","jc/utils.py"]},"message":"type annotation updates"},{"commit":"96ec70de4f6178b0669fd9ab47cb303dc45e55c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["jc/parsers/universal.py","jc/utils.py"]},"message":"remove unneeded optional"},{"commit":"a15a1967dc06169ceeda0fd5b4857ce1a351f3d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"fix typo"},{"commit":"a10d7566294fe5246e68a16e355ce56dd3557ac5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/universal.py"]},"message":"fixy mypy issues"},{"commit":"0700dc7a64b121cf0243416e2cbb82fcef15f5a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/rsync.py"]},"message":"remove cygwin from compatible"},{"commit":"ca654b214057e19839b89e0d9a66f1110f679c1e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"fix parser order"},{"commit":"4ff3b87c1c96d720f4e7fd39e613944e322cb388","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/rsync.py"]},"message":"remove future field from docstring"},{"commit":"ea244fb7a91f1d1f8ffe0ea6dc10dfe5ab836878","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_rsync.py"]},"message":"formatting"},{"commit":"8061f30e6fa58d22ed1a52e02c4d9c7f0bf132cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":236,"deletions":6,"files":["tests/fixtures/centos-7.7/rsync-ivvv-nochange.json","tests/fixtures/centos-7.7/rsync-ivvv-nochange.out","tests/test_rsync.py"]},"message":"add centos -i nochange test"},{"commit":"8f3b12e81e1b4f0d4394c33db5b3a352f4cfb391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":299,"deletions":0,"files":["jc/parsers/rsync.py",".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.json",".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.out","tests/fixtures/osx-10.14.6/rsync-i-vvv.json","tests/fixtures/osx-10.14.6/rsync-i-vvv.out","tests/test_rsync.py"]},"message":"add fixes for mac -i output"},{"commit":"d0694ce0db5ea2d06b5787429adf23095c4c2df0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":245,"deletions":6,"files":[".../osx-10.14.6/rsync-i-vvv-logfile-nochange.json",".../osx-10.14.6/rsync-i-vvv-logfile-nochange.out","tests/test_rsync.py"]},"message":"add nochange log test for mac"},{"commit":"0cd4c4bc7f3ffe13cb2f1920187e25636b88af61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":658,"deletions":0,"files":[".../centos-7.7/rsync-i-vvv-logfile-nochange.json",".../centos-7.7/rsync-i-vvv-logfile-nochange.out"]},"message":"add nochange tests"},{"commit":"12f90c349c903634def4225ce87924b475be46d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":68,"deletions":20,"files":["jc/parsers/rsync.py","tests/test_rsync.py"]},"message":"update regexes for unchanged files"},{"commit":"26b8a1f167c4b1ec3f9fb4077254a27ed8548933","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"]},"message":"remove packages from binaries and packages header"},{"commit":"3abe382c064f605d915912f9b726d76784eba8a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":90,"deletions":3,"files":["EXAMPLES.md","jc/parsers/rsync.py"]},"message":"add examples"},{"commit":"1e2edc2c7b5dc104a9efe4da7df9be61b9e1be32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":53,"deletions":29,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-logfile.json","tests/fixtures/centos-7.7/rsync-i-v-logfile.json","tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json"]},"message":"add timestamp"},{"commit":"5fe032a6741b7b6586c60eb28be74bd0e56277a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/zipinfo.py"]},"message":"fix typo"},{"commit":"e825c02df1cdae67c7f335fe3c675685eb1a8d02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":605,"deletions":0,"files":["tests/fixtures/centos-7.7/rsync-i-logfile.json","tests/fixtures/centos-7.7/rsync-i-v-logfile.json","tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out","tests/fixtures/centos-7.7/rsync-i.json","tests/fixtures/centos-7.7/rsync-i.out","tests/fixtures/centos-7.7/rsync-ivvv.json","tests/fixtures/generic/rsync-i.json","tests/fixtures/generic/rsync-i.out","tests/test_rsync.py"]},"message":"add rsync tests"},{"commit":"a4a4d170b5ae8c189de982adea5bdc9bf1f26e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":5,"files":["jc/parsers/rsync.py"]},"message":"update docstring"},{"commit":"d0fcd523cb2cbb59d0f90369721749b54222961d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":17,"files":["jc/parsers/rsync.py"]},"message":"fix process conversions"},{"commit":"f72b7dc75dbd1c3f5daee3ecee28487258a04873","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":8,"files":["jc/parsers/rsync.py"]},"message":"change keyname to files and remove future key"},{"commit":"4101dc6bf7bab7d00899426e2f6271a7480d558f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":1008,"deletions":19,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-v-logfile.out","tests/fixtures/centos-7.7/rsync-i-vv-logfile.out","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out"]},"message":"add log-file support"},{"commit":"ea5011b616365b5c10c04416d43035d84e3dacba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":175,"deletions":41,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-logfile.out"]},"message":"updated schema. add log-file option support"},{"commit":"d6de81747fd92642dbd5cb1fb097e375aa38be35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":3,"files":["jc/parsers/rsync.py"]},"message":"add int/float conversions"},{"commit":"38f04b1c9699246d85332b20df5b6a91ae0c48d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":32,"deletions":7,"files":["jc/parsers/rsync.py"]},"message":"add summary"},{"commit":"84169e1a913d035744f71472be81fe3a7d774b97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":637,"deletions":2,"files":["jc/lib.py","jc/parsers/rsync.py","setup.py","tests/fixtures/centos-7.7/rsync-ivvv.out"]},"message":"add rsync parser"},{"commit":"1f96586a5e883709f436526de6dcb21ff44bf97b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/foo.py"]},"message":"reorder imports"},{"commit":"681176e4c958157ef1f2151b3e57963a6ba48e09","merge":"b389665 8bb2663","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #203 from kellyjonbrazil/dev\n\nDev v1.18.2"},{"commit":"8bb266352207f95040b72750e5b3ae3b8ceb2b98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"date update"},{"commit":"663abf313931b49fad64b425ece6a5a257dc7938","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":3,"deletions":4,"files":["MANIFEST.in","mangen.py","runtests.sh","updatedocs.sh"]},"message":"clean up scripts"},{"commit":"f7ac41db95c16fd21d83fbce678c5dec28ab40f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":13,"files":["README.md","man/jc.1"]},"message":"final doc update"},{"commit":"5502cda9e591b531d6b452b02d8ec322c3287800","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["tests/test_lib.py"]},"message":"add additional test for dict inside list for all_parser_info()"},{"commit":"a2b165565f54d91489bf38577a0785e78a4523d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["tests/test_lib.py"]},"message":"add lib tests for new functions"},{"commit":"b426369815984bd2aae8bcb14e306ba73b8cd4ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/cli.py"]},"message":"use all_parser_info() from lib in about function"},{"commit":"ac0840cc0afb4aeee2c99076710c987e09cfa5f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"fix typo"},{"commit":"ee98ab0a4a7671ae34ee79f7b0b97c061a8c2944","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/lib.md","docs/utils.md"]},"message":"doc update"},{"commit":"2adec2c0035b84ca0242f2494b6c2651b9898ca5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":21,"deletions":19,"files":["jc/lib.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/utils.py"]},"message":"update type hints with mypy help"},{"commit":"f19c9c71bf4f592f55a5176458acd478b462fdbe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":4,"files":["jc/parsers/foo.py","jc/parsers/foo_s.py"]},"message":"add type hints"},{"commit":"e93adf1884c0006a64123513070a5fd96a940da2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"fix doc"},{"commit":"254c4fc507842ca72064c0196418a7b939d54d06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":6,"files":["docs/readme.md","jc/__init__.py"]},"message":"add new functions"},{"commit":"74d5f60d14fc42cfd5768c7ffd6efc890a65d442","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"]},"message":"update console interview description"},{"commit":"db7dc0634bc17b4daadc8bc21bba5975c093efe5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/lib.md","jc/lib.py"]},"message":"make **kwargs optional"},{"commit":"e156b0db453e99fb0f74b618fd343218f978ff68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"add type hints"},{"commit":"50adc05fbd6a0dcd9e4fb38aa41917bb57332f36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/utils.md","jc/utils.py"]},"message":"formatting"},{"commit":"446cac7c217103eb66cfdee97e3a208b7144b644","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":11,"files":["docs/utils.md","jc/utils.py"]},"message":"doc update"},{"commit":"28ffe3076bb5f23aeaf2624344856dbd02b4c0e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":9,"files":["docs/lib.md","jc/lib.py"]},"message":"formatting"},{"commit":"d4d5e206cae14acd25445952f820810818b3fdce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":40,"deletions":28,"files":["docs/lib.md","docs/utils.md","jc/utils.py"]},"message":"type hints update"},{"commit":"42fbe40a4ae02b9d09acdbf9b22573844959d2ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/lib.py"]},"message":"simplify type hints"},{"commit":"27e4a120e21dcbb3eadc6c4cf224ddb33859328d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/lib.md","jc/lib.py"]},"message":"remove trailing comma"},{"commit":"b5d5b7c73a96d4335b178ccfac60af90913e6f0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":29,"deletions":148,"files":["docgen.sh","docs/parsers/ifconfig.md","docs/parsers/traceroute.md"]},"message":"remove private classes"},{"commit":"e7471556ba5fb0586ac5b0d7404cabd98a58db2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":5,"files":["docgen.sh"]},"message":"remove sed lines"},{"commit":"640a21341bb1c562cb2124155b511dfc74277fc0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":47,"deletions":42,"files":["docs/utils.md","jc/utils.py"]},"message":"fix indentation"},{"commit":"f5befad3e41ba2864abc795a2fdf63e0f1d37c21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":33,"deletions":25,"files":["docs/utils.md","jc/utils.py"]},"message":"move docstring under __init__"},{"commit":"f8223023c31093c1a34130b4e4cfc23b1d80a30c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":24,"deletions":10,"files":["docgen.sh","docs/parsers/ifconfig.md","docs/parsers/traceroute.md","docs/utils.md"]},"message":"change header depth"},{"commit":"7028e87f9b411c0cfb92eee7fc0667cdcb9a54ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":87,"insertions":22,"deletions":445,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md"]},"message":"remove TOC for parsers"},{"commit":"590728f9c1ccfdc078e600d1f35ad4ba51f70d36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":91,"insertions":506,"deletions":17,"files":["docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/utils.md","jc/lib.py"]},"message":"try new pydoc-markdown formatting options"},{"commit":"7cc147fe2d7b278bcab905bc4c3b70b5265e1510","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":44,"files":["docgen.sh","docgen.sh.old"]},"message":"increase heading size"},{"commit":"3cfb3965bb25024a7b03870b71f02194e278919b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":19,"deletions":19,"files":["docs/lib.md","docs/parsers/universal.md","docs/utils.md"]},"message":"formatting"},{"commit":"155d4213225fe4fcf4a059fb63c1ab9fc493177e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":86,"insertions":182,"deletions":181,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"]},"message":"formatting"},{"commit":"d3e10bb87bdb32396bce95f74e62a023f4efaf99","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":291,"deletions":0,"files":["docs/parsers/lsusb.md"]},"message":"add lsusb docs"},{"commit":"fd5433ee6220357e59633c78b689aa432d056b43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":293,"files":["docs/lib.md","docs/parsers/lsusb.md","jc/lib.py"]},"message":"parse docstring formatting"},{"commit":"4568f2d06e8fc1c465c86c318d925586481af062","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/lib.md","jc/lib.py"]},"message":"formatting for parse docstring"},{"commit":"c36e513d1bcc07cd8f01ff59199950e5396da51b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":86,"insertions":88,"deletions":91,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"]},"message":"formatting"},{"commit":"8e089baf3fe30fed80e1c5cdde7c3046bb70ca5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":86,"insertions":8,"deletions":855,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"]},"message":"remove info class from docs"},{"commit":"386f6c317e104e797c2b55e3d21c8b064a83ac78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":89,"insertions":9552,"deletions":9939,"files":["docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/utils.md"]},"message":"update markdown processor settings"},{"commit":"75cd84ce8a86b3357c6cf5fe4fbc62d0f298a29a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":94,"insertions":11423,"deletions":10081,"files":["README.md","docgen.sh","docgen.sh.old","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/utils.md","jc/cli.py","man/jc.1"]},"message":"try new markdown conversion"},{"commit":"6fad44e35df5d0e33e716d0fcb84ed309e6fd30b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"fix type hint"},{"commit":"1caac750daa25a5abeb1289964e918ec06289bfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/lib.py"]},"message":"Update type hints"},{"commit":"16370dcb3d5cf1304c2340ef2253ef2987a982b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"update type hints"},{"commit":"c1302f2573993a6908001d6df0697486f54a9e7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":8,"files":["jc/lib.py"]},"message":"add type-hints to public api"},{"commit":"6f0ffe0955e4d9d6cc82552cf4e4f419e3ff3756","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"docu update"},{"commit":"1f89745fe7cca3a0ac27445942098b717675a481","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump"},{"commit":"a46ac18ef775bb2c52675e61e11c5d92f33cbe81","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["CHANGELOG"]},"message":"doc update"},{"commit":"1a05f1c575b57456481e41baaf551cef30115966","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":64,"deletions":54,"files":["jc/__init__.py","jc/cli.py","jc/lib.py"]},"message":"add parser info functions. move _get_parser functionality from cli to lib"},{"commit":"08f818aa42ca68050a79ec387c42bff265257fd5","merge":"027c231 b389665","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #199 from kellyjonbrazil/master\n\nsync to dev"},{"commit":"b3896650c230b4acc73704a50c93ee74e4034eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":62,"deletions":104,"files":["README.md","templates/readme_template"]},"message":"revert column formatting"},{"commit":"f285539526998a5097943c71dcecb2979036b2b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":104,"deletions":62,"files":["README.md","templates/readme_template"]},"message":"conform to 80 columns"},{"commit":"a896dcdf3b31b60582ebb1b3bca5d1103f998dd6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":338,"deletions":120,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"0a187d4ed08173ec360a006ae2367bb1f2f96c52","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"]},"message":"add console interview links"},{"commit":"2d65bc57d5a396e6683f970194de29494b5c1272","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/readme.md","jc/__init__.py"]},"message":"add quotes"},{"commit":"ab63809fde0cefe1f0401d957a3736fdb760f0cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"update description"},{"commit":"6f04707dc63936efd0e533ae36e1b39ead10c466","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add python package doc info to top of page"},{"commit":"d14a86a9b58bdc3cb0c8df1dfa495aefdaab8033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py"]},"message":"fix typo"},{"commit":"8e6a31d3da19926ac46744e02b27a899ca5fbd7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":14,"deletions":8,"files":["CHANGELOG","docs/readme.md","jc/__init__.py","jc/lib.py","man/jc.1","setup.py"]},"message":"minor fix for macOS binary"},{"commit":"6e7b6afe87355e96422bb2560ffcbd5e79d28f04","merge":"70cb445 027c231","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #198 from kellyjonbrazil/dev\n\nDev v1.18.0"},{"commit":"027c231097a002526350a93322407582a85db0cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"formatting"},{"commit":"f1cf7d1f953586dd44a4463d924f1a1f52717c37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":5,"files":["jc/parsers/foo.py","jc/parsers/foo_s.py"]},"message":"add helper function info"},{"commit":"df611cc263f50285e74ceb3381f55b43a74870a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting"},{"commit":"0f3143bbbb593340190e66729580146410012e14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting"},{"commit":"c280757b7624a46543e481ca47a6e084d2d6f519","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting"},{"commit":"d30b9d84ef5ec3a2a504f7ea251c932b8c9ea878","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting"},{"commit":"50ded1dbd97d26cf01d7e1a98b40e0f0f7d02202","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":4,"files":["docs/readme.md"]},"message":"doc update"},{"commit":"e319aea5a45c598a44f35b4e58131d977509e4f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":4,"files":["jc/__init__.py"]},"message":"add doc version info"},{"commit":"ba86509c1d8700a50fe14e9d931ee57261306c5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":9,"files":["jc/cli.py"]},"message":"simplify OSError exception handling"},{"commit":"0a9279ae6bfdd1aa59f5e9b31ce0af3bfec19f96","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["CHANGELOG","tests/test_lib.py"]},"message":"doc update"},{"commit":"a13dde12af01b4473aa9a34b8a0d7387fb48500a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":173,"insertions":173,"deletions":173,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py","man/jc.1"]},"message":"change raw output wording"},{"commit":"e2ed358de1abefd737c187a324cbe4734d6975e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["CHANGELOG"]},"message":"changelog update"},{"commit":"a2cd3666210be3727a00c3405972f32fbd421046","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["docs/_config.yml"]},"message":"Delete _config.yml"},{"commit":"15addd9bfc18a0e87beb97040b431c872b783662","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":8,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"doc fix"},{"commit":"a4e34b0053ec0c032f4783caaa3e07fc2c685a98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":63,"deletions":0,"files":["docgen.sh","docs/parsers/universal.md"]},"message":"add universal parser docs"},{"commit":"d09529ac302fbcc156d58cf836f8397c98121a76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update"},{"commit":"553097b5050dc02fbdaeec2e2e138e01bc6811d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/universal.py"]},"message":"docstring update"},{"commit":"49c556857708307f617b2b516f2d281398681b5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":35,"deletions":15,"files":["README.md","docs/lib.md","docs/readme.md","jc/__init__.py","jc/lib.py","man/jc.1","templates/readme_template"]},"message":"module doc update"},{"commit":"6962b9ee8a52c924dc2de6b79ddeea3636e80fe4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":6,"files":["docs/lib.md","jc/lib.py"]},"message":"formatting"},{"commit":"b4575a3f780f9aa2751c8b4789f67aaca32dd1cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":91,"deletions":1,"files":["docgen.sh","docs/lib.md","jc/lib.py"]},"message":"add lib docs"},{"commit":"35b54d235d73b2ce658223be3d6095906f142d89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add python package doc info"},{"commit":"583a5757e454a4e36b331057d1266279b55ee16a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":18,"insertions":34,"deletions":30,"files":["docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/file.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/traceroute.md","docs/parsers/ufw_appinfo.md","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/file.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/traceroute.py","jc/parsers/ufw_appinfo.py"]},"message":"formatting"},{"commit":"f355333eeed3c4afba844dc7bed5224356552adc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting"},{"commit":"4d7df109604e4f8367904968602acfc05217a7fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting"},{"commit":"66b2c28f4bc75fb76800f9fb7ea485eee194a9a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":24,"deletions":24,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting"},{"commit":"299a9c6d88fdf1fede447b4057d8f4263daef733","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":25,"deletions":57,"files":["docs/parsers/csv.md","docs/readme.md"]},"message":"formatting"},{"commit":"bd391d979ce98b126dab0f012a56b3fcb1f73439","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":55,"files":["jc/__init__.py"]},"message":"add lib function docs"},{"commit":"7309bd2282445f6daef0b1491ff60b8104500abb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":19,"deletions":10,"files":["jc/lib.py","jc/parsers/csv.py","jc/parsers/universal.py"]},"message":"add get_help"},{"commit":"ce84c09d3394b598f19a3e012ef27ce4154e3b3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/__init__.py"]},"message":"add get_help()"},{"commit":"b4fffbb6476daf78fbdf19dbf31bbeeab950d2dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":46,"insertions":501,"deletions":304,"files":["docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/history.md","docs/parsers/ini.md","docs/parsers/iostat_s.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsusb.md","docs/parsers/netstat.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/ps.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/upower.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/who.md"]},"message":"formatting"},{"commit":"3701b4198aad1826ad6da571fbcaa530b057cc48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":86,"insertions":710,"deletions":606,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"formatting"},{"commit":"d4c34098fa7ad2098076f0fa0564467e5d06f916","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/lib.py"]},"message":"formatting"},{"commit":"b3c531193b3fc53697e7d7823576f481f9462d53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":125,"deletions":71,"files":["CHANGELOG","docs/utils.md","jc/utils.py"]},"message":"formatting"},{"commit":"1d0e07c77bab5c48405323e52873c7952dd0a587","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":57,"deletions":55,"files":["docs/readme.md","jc/__init__.py","jc/lib.py"]},"message":"formatting"},{"commit":"06a322cf9c7468dc7e8ba05914e1d07bbc51f63a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":8,"files":["tests/test_lib.py"]},"message":"rename tests and add conversion function tests"},{"commit":"623d148712f93eacf9b7b5803140603f0af67acb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"doc update"},{"commit":"647e83d0439a0937db14a2cc97929e38a6b6a43b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["tests/test_lib.py"]},"message":"add test to ensure there are zero plugin parsers installed during tests"},{"commit":"91a554464444da0cc3ed3b4d212539232411f6cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/lib.py"]},"message":"doc update"},{"commit":"a1190998aef1bf403ee34c38c1a0fbd6291ac38b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":82,"deletions":0,"files":["tests/test_jc.py","tests/test_lib.py"]},"message":"add jc and jc.lib tests"},{"commit":"097d7a1850f6f6df73a5761c657b73ef9dbd3e29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/__init__.py"]},"message":"simplify __init__"},{"commit":"302bf72e720b3a67fbf1300eaff4f99fc343abeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":138,"insertions":718,"deletions":6,"files":["docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py"]},"message":"Update high-level API docs"},{"commit":"2c42baf3a4dd6733c078f31a1becd708a05f2c36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":34,"insertions":174,"deletions":0,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py"]},"message":"add new high-level api info"},{"commit":"03feb89c84096c0ea1d6ae3a0634ae7b8b507e8f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/readme.md","jc/__init__.py"]},"message":"add module list info"},{"commit":"9dd553192fbca3037b3afe5df6bae88f7a8a9365","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":29,"deletions":12,"files":["CHANGELOG","README.md","docs/readme.md","man/jc.1","templates/readme_template"]},"message":"doc update"},{"commit":"fa3f02e9d1ac7867e3465c2d214f4e4229ff4c66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump"},{"commit":"0a9dde58c5235f78c4c9ae9c013f7454482c6067","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":228,"deletions":134,"files":["jc/__init__.py","jc/cli.py","jc/lib.py"]},"message":"add jc.parse() high-level API"},{"commit":"70cb4453bebb235130e2c287633ecb1de6c2b0aa","merge":"e6900e2 830674c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #195 from kellyjonbrazil/dev\n\nDev v1.17.7"},{"commit":"830674cc6f19e107347a743baff7bbaab7f80b75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["CHANGELOG","jc/__init__.py","man/jc.1","setup.py"]},"message":"version bump"},{"commit":"fb406b58a12fdfe81bcff76671661af77e7f2fe5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["docs/parsers/stat_s.md","jc/parsers/stat_s.py","man/jc.1"]},"message":"formatting"},{"commit":"55b272e41259ddc835cf4eb513fb67e7b2cf1573","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat_s.py"]},"message":"tighten stat data detection"},{"commit":"94f62a9bf36242310790a0f37c66b2e6c6fdc078","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/stat_s.md","jc/parsers/stat_s.py"]},"message":"formatting"},{"commit":"8d19e4cb7b45e3b6cb8c404c959949b7593c9386","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":115,"deletions":1,"files":["CHANGELOG","README.md","docs/parsers/stat_s.md","man/jc.1"]},"message":"doc update"},{"commit":"7e510d48e0f8426a67cf8d70d06d0331c274d358","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":106,"deletions":2,"files":["jc/parsers/stat_s.py","tests/fixtures/centos-7.7/stat-streaming.json","tests/fixtures/freebsd12/stat-streaming.json",".../stat-filename-with-spaces-streaming.json","tests/fixtures/osx-10.14.6/stat-streaming.json","tests/fixtures/ubuntu-18.04/stat-streaming.json","tests/test_stat_s.py"]},"message":"simplify non-stat parse error logic"},{"commit":"7b20cffb143447f4497bc4e895eac2426e8a519f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/stat_s.py"]},"message":"simplify last item logic"},{"commit":"5c934c43c13b69183561da8a77280feb3363e950","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/stat_s.py"]},"message":"add continue to simplify logic"},{"commit":"8609298449e997ba4804d818f4fc23cb393ded7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/parsers/stat_s.py"]},"message":"update docstring"},{"commit":"72cb0dc10b2dac486d3e2a52cf44baf0d7496034","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":10,"files":["jc/parsers/stat_s.py"]},"message":"fixup for first and last items"},{"commit":"7b22fa81ded0f6f59e250ffea63c5d2a0f928b25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/parsers/stat_s.py"]},"message":"raise for non-stat data"},{"commit":"0b6a1307790e0793917bc2781e4873aa9dd67225","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/stat_s.py"]},"message":"ignore blank lines"},{"commit":"fdcf4338e0f099699f8d48df6382be1cc97dba84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["jc/parsers/stat_s.py"]},"message":"add examples to docstring"},{"commit":"ee43037f481286a34a766390568965fdd53af132","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/stat_s.py"]},"message":"remove unused continue lines"},{"commit":"26e365563c314e694915c7a3feae490ea99a112c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":50,"deletions":11,"files":["jc/parsers/stat_s.py"]},"message":"add schema and _process logic"},{"commit":"1b39586bb1b62aee8ae709512c2e3f79cefdb3d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":227,"deletions":0,"files":["jc/cli.py","jc/parsers/stat_s.py"]},"message":"add stat streaming parser"},{"commit":"8bb3a6bea34d60d49039f1ed72fd7e413edc05da","merge":"78672bd e6900e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #194 from kellyjonbrazil/master\n\nsync to dev"},{"commit":"e6900e2000bf265dfcfc09ffbfda39e9238661af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["EXAMPLES.md"]},"message":"add jar-manifest"},{"commit":"0ee244756bf39123e4873eb231156edbe7f0e0ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/jar_manifest.md","jc/parsers/jar_manifest.py"]},"message":"spelling"},{"commit":"6d5ac9abe6712e01887ce0d96c278a568319f405","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["docs/parsers/csv.md","docs/parsers/csv_s.md","man/jc.1"]},"message":"update docs"},{"commit":"44f6d9e1321459be8196aeebf6db088cc5120e61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"changelog update"},{"commit":"360154559c5dee6affa55bbdd5d2f473248b9168","merge":"241d53a 78672bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #193 from kellyjonbrazil/dev\n\nDev add csv doublequote fix"},{"commit":"78672bd7ad66c418e0ecf31add73f887b0946d29","merge":"bc7973a 65d96e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #190 from shaikustin/csv-doubleqouted\n\nfix doubleqoute in csv"},{"commit":"65d96e26b59e231c77c1dbba1dc91708c33de30c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":13,"deletions":0,"files":["tests/fixtures/generic/csv-doubleqouted-streaming.json","tests/test_csv_s.py"]},"message":"add streaming tests"},{"commit":"241d53af9a5c9bba70e28835e22c52c0060269ba","merge":"f733100 bc7973a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #192 from kellyjonbrazil/dev\n\nDev v1.17.6"},{"commit":"5563829df2849a899df2e9211d6c92bddc695f9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/csv_s.py"]},"message":"make dialect sniff behavior match non-streaming parser"},{"commit":"3a4a27e1f94ee07352c7616c57ec655c1aea04f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/csv.py"]},"message":"version bump"},{"commit":"9c887a36a804d817c3f669a55b9b1566d09d645d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/csv_s.py"]},"message":"update csv_s parser with csv changes"},{"commit":"bc7973af36e13006230b5faa9e201e300d468912","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","jc/cli.py","man/jc.1"]},"message":"update copyright"},{"commit":"32972d8fdbdc71923978fd5c2a87fd6cfa4b7f8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":122,"deletions":9,"files":["CHANGELOG","README.md","docs/parsers/jar_manifest.md","jc/__init__.py","jc/parsers/jar_manifest.py","man/jc.1","setup.py"]},"message":"doc update"},{"commit":"b128d9109cbdb1176f2473d450023bb0be02531b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":46,"deletions":0,"files":["tests/test_jar_manifest.py"]},"message":"add MANIFEST.MF tests"},{"commit":"929d7273a422c2bd5b83e5e19d32630f1a027f75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/jar_manifest.py"]},"message":"doc updates"},{"commit":"2a40f842743a8745d651b4b6cae645045e6c6aab","author":"shaik","author_email":"shai.kustin@torq.io","commit_by":"shaik","commit_by_email":"shai.kustin@torq.io","stats":{"files_changed":4,"insertions":22,"deletions":1,"files":["jc/parsers/csv.py","tests/fixtures/generic/csv-doubleqouted.csv","tests/fixtures/generic/csv-doubleqouted.json","tests/test_csv.py"]},"message":"fix doubleqoute in csv"},{"commit":"9ff6fa818f0857321e4b3b089d288997f2ae27af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add jar-manifest"},{"commit":"dac73a4bfe24e36474fdf6ff60c23e784ca409bd","merge":"d789554 f733100","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #189 from kellyjonbrazil/master\n\nuse github releases instead of packaging site"},{"commit":"d7895547f74744e82317eabe4c870115701872be","merge":"f8e09ae b7d439c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #188 from listuser/new_branch\n\nCreate key value pairs from a MANIFEST.MF file, to include key multiline value pairs."},{"commit":"b7d439cb870e443e4f4e4a2137ab170835e77eff","author":"listuser","author_email":null,"commit_by":"listuser","commit_by_email":null,"stats":{"files_changed":3,"insertions":2220,"deletions":9,"files":["jc/parsers/{jar-manifest.py => jar_manifest.py}","tests/fixtures/rhel-8/MANIFEST.MF.MULTI.json","tests/fixtures/rhel-8/MANIFEST.MF.MULTI.out"]},"message":"Renamed jar-manifest.py to jar_manifest.py, added multi manifest outputs to tests..."},{"commit":"7cc903a5f5ca368be97babadc72689375567a901","author":"listuser","author_email":null,"commit_by":"listuser","commit_by_email":null,"stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/jar-manifest.py"]},"message":"Removed inflating from examples in jar-manifest.py"},{"commit":"c495a8291bd3e1fd070ee2e018b9b550f9c86314","author":"listuser","author_email":null,"commit_by":"listuser","commit_by_email":null,"stats":{"files_changed":1,"insertions":1,"deletions":292,"files":["tests/fixtures/rhel-8/MANIFEST.MF.json"]},"message":"Updated test output in MANIFEST.MF.json"},{"commit":"5e1d7d777c627fb17feda6e51d9640bbd0f03302","author":"listuser","author_email":null,"commit_by":"listuser","commit_by_email":null,"stats":{"files_changed":8,"insertions":304,"deletions":2544,"files":["jc/parsers/{metamf.py => jar-manifest.py}","tests/fixtures/rhel-8/MANIFEST.MF.json",".../rhel-8/{MANIFEST.MF => MANIFEST.MF.out}",".../rhel-8/cmds_used_to_generate_test_data.txt",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out"]},"message":"Renamed metamf.py to jar-manifest.py, plus other changes"},{"commit":"7edad3f676fe5560017ca9cb05ede6f46787e78f","author":"listuser","author_email":null,"commit_by":"listuser","commit_by_email":null,"stats":{"files_changed":8,"insertions":3042,"deletions":0,"files":["jc/parsers/metamf.py","tests/fixtures/rhel-8/MANIFEST.MF","tests/fixtures/rhel-8/MANIFEST.MF.json",".../rhel-8/cmds_used_to_generate_test_data.txt",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out"]},"message":"Create key value pairs from a MANIFEST.MF file, to include key multiline value pairs."},{"commit":"f7331001d4ab976e311458a16b6e5337da2e3aab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"]},"message":"use github releases instead of packaging site"},{"commit":"f8e09ae2ffe185d21305d566fad20f510df9890f","merge":"2e4f5a5 433c7cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #187 from kellyjonbrazil/master\n\nsync to dev"},{"commit":"433c7cc0f05e321ffe024845a908f3e856d4cd2b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/zipinfo.md","jc/parsers/zipinfo.py"]},"message":"formatting"},{"commit":"d753e71a7452310d45fa605a2e4c70320ed60dbb","merge":"3ac8d03 2e4f5a5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #186 from kellyjonbrazil/dev\n\nDev v1.17.5"},{"commit":"2e4f5a508b6c90f9e03dcbcf64efc0e2fc446666","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":6,"deletions":3,"files":["CHANGELOG","jc/__init__.py","man/jc.1","setup.py"]},"message":"version bump"},{"commit":"88b960eff6cb3739d0d243c8d8b3e8ad5b8eb97c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":144,"deletions":1,"files":["EXAMPLES.md","README.md","docs/parsers/zipinfo.md","man/jc.1"]},"message":"doc update"},{"commit":"88c77bd89e2c2a5f023e6638816c9153b6276d35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":47,"deletions":0,"files":["tests/fixtures/osx-10.14.6/zipinfo-multi.json","tests/test_zipinfo.py"]},"message":"add zipinfo tests"},{"commit":"51a7a4251fff518d8da78ffa41e7ba2e2cb47f12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":0,"files":["tests/fixtures/osx-10.14.6/zipinfo-multi.out"]},"message":"add multi-archive test output"},{"commit":"51d2f316f388d962c26aeb4f42affebec339e5a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":97,"deletions":72,"files":["jc/parsers/zipinfo.py"]},"message":"add multi-archive support"},{"commit":"ff78a46c4854339a097992701351ef471aff1671","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"add zipinfo parser"},{"commit":"ed4a9dc1d470f64bcc9de35b2d98568ffd50257d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":23,"files":["jc/parsers/zipinfo.py"]},"message":"formatting"},{"commit":"63182dba26040974cb8cada6f5910bb29b1fa3ed","merge":"b450697 9c1eaa9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #185 from listuser/new_branch\n\ncontributed zipinfo parser"},{"commit":"9c1eaa938934269fe4179da798acf5f119cde0cf","author":"Matt J","author_email":"none","commit_by":"Matt J","commit_by_email":"none","stats":{"files_changed":2,"insertions":68,"deletions":61,"files":["jc/parsers/zipinfo.py","tests/fixtures/rhel-8/zipinfo.json"]},"message":"revised zipinfo.py nested version"},{"commit":"bc520fcbcdfad6a53e51944391fd24512bed8128","author":"Matt J","author_email":"none","commit_by":"Matt J","commit_by_email":"none","stats":{"files_changed":2,"insertions":63,"deletions":53,"files":["jc/parsers/zipinfo.py","tests/fixtures/rhel-8/zipinfo.json"]},"message":"added zipinfo.py nested version"},{"commit":"46faac1a12a5b39d6a25427f6e8fdcca1204dbcd","author":"Matt J","author_email":"none","commit_by":"Matt J","commit_by_email":"none","stats":{"files_changed":2,"insertions":1222,"deletions":0,"files":["tests/fixtures/rhel-8/zipinfo.json","tests/fixtures/rhel-8/zipinfo.out"]},"message":"add test data zipinfo.json and zipinfo.out"},{"commit":"3c424c0cb3cff462a963183585b57bea004e974f","author":"Matt J","author_email":"none","commit_by":"Matt J","commit_by_email":"none","stats":{"files_changed":1,"insertions":165,"deletions":0,"files":["jc/parsers/zipinfo.py"]},"message":"initial commit zipinfo.py to new_branch"},{"commit":"3ac8d0362b4fb9999fc55a60a9cb20ac80d114f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"use quotes around python versions"},{"commit":"d88b998e6c7826a9ecae18663328e2d2915030fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"]},"message":"formatting"},{"commit":"a9ed55c00652a563391a7930c7a4649967131ae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":11,"deletions":11,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]},"message":"fix spelling"},{"commit":"ea614341232e5272ee0c7fd46ba0f313033c761f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":16,"deletions":8,"files":["docs/parsers/crontab.md","docs/parsers/crontab_u.md","jc/parsers/crontab.py","jc/parsers/crontab_u.py"]},"message":"fix schema docs"},{"commit":"a73d0d26cbe2860b8374661068e09e0717a3bab2","merge":"a7de911 b450697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #184 from kellyjonbrazil/dev\n\nDev 1.17.4"},{"commit":"b4506976e3c865397bc657183d49c484d8bcfd7a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["man/jc.1","templates/manpage_template"]},"message":"formatting"},{"commit":"34cb75a09697a06c3878f2f9a84eb3bd2a90ae62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/__init__.py","setup.py"]},"message":"version bump"},{"commit":"34df643f60712ae25645cb7cddff80e43c12262b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":18,"deletions":0,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"add disable colors section"},{"commit":"ac7c13fcc013d386f34db51d634298fa3e97eccd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":11,"deletions":1,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"add -C option to docs"},{"commit":"4fdb34c7d5fcaa65e2ccab814c3acf2f0f70c442","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"add no-color.org"},{"commit":"7ac468e35aac1a63c4e22f33aead74a6e41a22a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update"},{"commit":"df190aa299f1669d1fe09380026ae086839abc02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":15,"deletions":7,"files":["jc/cli.py"]},"message":"add -C option to force color even with pipes"},{"commit":"9621475e86fe20fcdc2902b6ce7860a833ae2ca0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update"},{"commit":"82e0160de820ad2ed6143f58458711d600b929a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"refactor NO_COLOR test"},{"commit":"d03fb8b626a97e81006d0b108c8f400fe4e2ce3b","merge":"b300dfb 7933dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"b300dfb3d75fe76e2ddbb087ff742dd0b5e6155b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"Add support for NO_COLOR env variable"},{"commit":"a7de9111d97e687cafbc0709ec3ff7453d658a80","merge":"21e69a7 7933dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #183 from kellyjonbrazil/dev\n\nDev v1.17.3"},{"commit":"7933dfdbe7bf400833d6f6b771362dfc518b9a8d","merge":"f7cb5f7 21e69a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge branch 'master' into dev"},{"commit":"f7cb5f7d01ac01538bee4da816408072b585768e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"update date"},{"commit":"a26a298f1a3c141171e7d7ce459a27a297cec031","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":148,"deletions":1,"files":["README.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","man/jc.1"]},"message":"doc update"},{"commit":"dbd134d0dac2fc152183480958fd9e65919ac98d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/iostat_s.py"]},"message":"add examples to docs"},{"commit":"11aa01b0d9d6913059f98f9bd7591d7cad9037cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":15,"insertions":15,"deletions":1,"files":["jc/parsers/iostat_s.py","tests/fixtures/centos-7.7/iostat-1-streaming.json","tests/fixtures/centos-7.7/iostat-m-streaming.json","tests/fixtures/centos-7.7/iostat-mx-streaming.json","tests/fixtures/centos-7.7/iostat-streaming.json","tests/fixtures/centos-7.7/iostat-x-streaming.json","tests/fixtures/ubuntu-18.04/iostat-1-streaming.json","tests/fixtures/ubuntu-18.04/iostat-m-streaming.json","tests/fixtures/ubuntu-18.04/iostat-mx-streaming.json","tests/fixtures/ubuntu-18.04/iostat-streaming.json","tests/fixtures/ubuntu-18.04/iostat-x-streaming.json","tests/fixtures/ubuntu-20.10/iostat-m-streaming.json","tests/fixtures/ubuntu-20.10/iostat-mx-streaming.json","tests/fixtures/ubuntu-20.10/iostat-streaming.json","tests/fixtures/ubuntu-20.10/iostat-x-streaming.json"]},"message":"iostat-s tests"},{"commit":"6f18e5344356684e845ec63158c570d82156254f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":203,"deletions":0,"files":["tests/test_iostat_s.py"]},"message":"fix for null lines"},{"commit":"7b467c466568ad4e7986d4d7cf3ec606681b6d46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":137,"deletions":0,"files":["tests/fixtures/ubuntu-20.10/iostat-m.json","tests/fixtures/ubuntu-20.10/iostat-m.out","tests/fixtures/ubuntu-20.10/iostat-mx.json","tests/fixtures/ubuntu-20.10/iostat-mx.out","tests/fixtures/ubuntu-20.10/iostat-x.json","tests/fixtures/ubuntu-20.10/iostat-x.out","tests/fixtures/ubuntu-20.10/iostat.json","tests/fixtures/ubuntu-20.10/iostat.out","tests/test_iostat.py"]},"message":"add ubuntu 20.10 tests"},{"commit":"537b8f263087894c02b5b7c121765cf96182a370","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"]},"message":"add more int conversions"},{"commit":"4d823575e791999e200dedd491511c4fde64fc2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"]},"message":"add more float fields"},{"commit":"541aa1d09f20ff6979eabaa66790decb3895f18d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":68,"deletions":8,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"]},"message":"Add new field float conversions for iostat v11"},{"commit":"8f02021014b7b19acf1a8bbd777161aa82c65d66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/iostat_s.py"]},"message":"formatting"},{"commit":"158a15157c7e5dde95dc21766d0696bd82486688","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update"},{"commit":"2752e0d66a9ba0b57ac86913fd302ada23c280c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":166,"deletions":0,"files":["jc/cli.py","jc/parsers/iostat_s.py"]},"message":"add iostat streaming parser"},{"commit":"6c11e912afe3c4d16da9199b5c2fc10461928ac3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"update changelog"},{"commit":"43d34461e27e3e4ac5f985786831c170b348c7c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":83,"insertions":279,"deletions":81,"files":["README.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/utils.md","man/jc.1"]},"message":"update docs"},{"commit":"4dfdc9b0f65d8c950ed74545d0cc3f95c8abec6c","merge":"e2311cb 6665ffa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"e2311cbb03f407414df953c8d1c07d0cf1a549ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":400,"deletions":0,"files":["tests/fixtures/centos-7.7/iostat-1.json","tests/fixtures/centos-7.7/iostat-1.out","tests/fixtures/centos-7.7/iostat-m.json","tests/fixtures/centos-7.7/iostat-m.out","tests/fixtures/centos-7.7/iostat-mx.json","tests/fixtures/centos-7.7/iostat-mx.out","tests/fixtures/centos-7.7/iostat-x.json","tests/fixtures/centos-7.7/iostat-x.out","tests/fixtures/centos-7.7/iostat.json","tests/fixtures/centos-7.7/iostat.out","tests/fixtures/ubuntu-18.04/iostat-1.json","tests/fixtures/ubuntu-18.04/iostat-1.out","tests/fixtures/ubuntu-18.04/iostat-m.json","tests/fixtures/ubuntu-18.04/iostat-m.out","tests/fixtures/ubuntu-18.04/iostat-mx.json","tests/fixtures/ubuntu-18.04/iostat-mx.out","tests/fixtures/ubuntu-18.04/iostat-x.json","tests/fixtures/ubuntu-18.04/iostat-x.out","tests/fixtures/ubuntu-18.04/iostat.json","tests/fixtures/ubuntu-18.04/iostat.out","tests/test_iostat.py"]},"message":"add iostat tests"},{"commit":"bf15575e90985cfec5c57dd11dfa2b86d53a41be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":7,"files":["jc/parsers/iostat.py"]},"message":"fixes for ubunut"},{"commit":"406336c7185b539b5e00532b58146d5b1b73f259","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":44,"deletions":0,"files":["EXAMPLES.md"]},"message":"add iostat example"},{"commit":"6665ffaeb8107e9db3b917db0663beaf44024533","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"remove python 3.6 from tests"},{"commit":"dcf552ca0c69aa5f0309a83dc33dee7c5ed81292","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":138,"deletions":47,"files":["jc/parsers/iostat.py"]},"message":"add _process and cleanup"},{"commit":"7a6ebf3c9555dd82df7dc0b71981cdd32ce0061d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":171,"deletions":0,"files":["jc/cli.py","jc/parsers/iostat.py"]},"message":"add iostat parser"},{"commit":"d2dc4a983c86c538e13e568b908072de4ca0daaf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"]},"message":"changelog update"},{"commit":"1168259bc23862f671326d41f5282a3575205214","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"]},"message":"add doc strings"},{"commit":"e8e4b46021557fbf5776c32dff46de022817fb6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":14,"deletions":19,"files":["jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]},"message":"use jc.utils type checks"},{"commit":"12d2de22821fd8f57f4d412e62f53db3d89d5e30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":77,"insertions":181,"deletions":165,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/utils.py"]},"message":"use jc.utils.input_type_check() and simplify compatibility check"},{"commit":"0e2fe401e1c49a9f947d7d17b72cfc4e90787f47","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]},"message":"version bump"},{"commit":"14247adb0ae007924ca551a706eb0cfdbae97a41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["jc/parsers/csv_s.py","tests/test_csv_s.py"]},"message":"add input type checks"},{"commit":"3a9f0934c41c85ea7fa87165b9559f08814645cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":3,"files":["jc/parsers/ls_s.py","tests/test_ls_s.py"]},"message":"add input type checks"},{"commit":"caf0a5c8713bf0d72951a2c6fd5a2c62c9eb59d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":4,"files":["jc/parsers/vmstat_s.py","tests/test_vmstat_s.py"]},"message":"add input type checking"},{"commit":"cfb58b1cf3e3028f8e03fdd93f0165cf8d230e1e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/parsers/foo_s.py"]},"message":"add input type checks"},{"commit":"975cf195cc02774f50460ca479d9ebb7b73c7870","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping_s.py"]},"message":"formatting"},{"commit":"8a46a259a36efc55bb0b2141acb9dd5ae52b7725","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["jc/parsers/ping_s.py","tests/test_ping_s.py"]},"message":"add input type checks"},{"commit":"e395142e599aa78b4a7ec80dcc3f8ccf279f97b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"]},"message":"version bump"},{"commit":"caaeaf0d67cf44f8d2651cc53a7528d3ef0c74d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":76,"insertions":227,"deletions":227,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"add 'str' type check on input"},{"commit":"21e69a7cbf62240238f6fb78e874dda6ce2e922a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"]},"message":"ignore _config.yml"},{"commit":"603964935b58e02cf0614cf67ffacc6d94755e05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CHANGELOG"]},"message":"remove trailing whitespace"},{"commit":"47eb83ae55b9892716fff712bd2be21b6191b552","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"]},"message":"add .vscode"},{"commit":"fc0ce6c95923ab124961e695a26c0b68dd0f359f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"add streaming parser to custom parsers info"},{"commit":"077a29fb4eedcfccb026498c5c3a64b7b7601363","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":2,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"]},"message":"add _jc_meta field info"},{"commit":"8568d0d328706a7a5b1476452e078d8cbe7b7391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":3,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py","man/jc.1"]},"message":"fix csv_s documentation"},{"commit":"597d39c28ea0c0fe3b072413e9d91ab5e27b62bd","merge":"b59e38c eb888dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #180 from kellyjonbrazil/dev\n\nDev v1.17.2"},{"commit":"eb888dcbbcf83c9197bd59aab72f65ea6eb622ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["jc/__init__.py","man/jc.1","setup.py"]},"message":"version bump"},{"commit":"d1b9ac0841b15ee15690c4066453a322618320ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/df.md","docs/parsers/netstat.md","docs/parsers/ping.md","man/jc.1"]},"message":"doc update"},{"commit":"89a6d9c5c39b74f1b040f410659bfd7ae1a902d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/df.py"]},"message":"add key-check to restore previous behavior even with non-df data"},{"commit":"85d983761637129cb85abfb0bbdde7c507061cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add df info"},{"commit":"cd7731484d826d84d835ecd460d746e78cadc5fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":62,"deletions":2,"files":["jc/parsers/df.py","tests/fixtures/generic/df-long-filesystem.json","tests/fixtures/generic/df-long-filesystem.out","tests/test_df.py"]},"message":"fix for cases where the Filesystem data overflows the column length (happens on older versions of df)"},{"commit":"086da16b1743c16a5ccdd102f889fb31f99e3caa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"version bump"},{"commit":"20830528f04a5ecbe78420d8008249b089667767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":28,"deletions":0,"files":["CHANGELOG","tests/fixtures/generic/netstat-old.json","tests/fixtures/generic/netstat-old.out","tests/test_netstat.py"]},"message":"add test for older netstat version fix"},{"commit":"83371edd8fe3d23dfa92fc707604086522c85ab9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat_linux.py"]},"message":"add space before inode to compensate for removed dash"},{"commit":"364a81decc16742e3caa070d90b1d605d96fe2c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ping.py"]},"message":"version bump"},{"commit":"ef09592ad3e5c9a77c1bdebe8f876fc4dde54834","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["CHANGELOG"]},"message":"update for 1.17.2"},{"commit":"4a86e109ccb254d5195b782f84f3967c96ef726c","merge":"5ba22da 7fa5391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #179 from shaikustin/ping-alpine-linux\n\nsupport alpine linux ping"},{"commit":"7fa5391b6613e62689c624041e03f9750c9c7972","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_ping.py"]},"message":"change alpine ping6 to ping"},{"commit":"9b53ba5714819ff760f2d4546f5d2ee4d521c080","author":"shaik","author_email":"shai.kustin@torq.io","commit_by":"shaik","commit_by_email":"shai.kustin@torq.io","stats":{"files_changed":6,"insertions":45,"deletions":1,"files":["jc/parsers/ping.py",".../fixtures/alpine-linux-3.13/ping-hostname.json","tests/fixtures/alpine-linux-3.13/ping-hostname.out","tests/fixtures/alpine-linux-3.13/ping-ip.json","tests/fixtures/alpine-linux-3.13/ping-ip.out","tests/test_ping.py"]},"message":"support alpine linux ping"},{"commit":"b59e38cfd2c8a7f5868e05d5562557b1c27e5e56","merge":"30cff5f 5ba22da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #176 from kellyjonbrazil/dev\n\nDev v1.17.1"},{"commit":"5ba22dae597b9d154ca0a82f71cfbd8d8a6325db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"]},"message":"add JSON lines info"},{"commit":"4232e523acc523e510b4881d2a57a95b88ec8c8b","merge":"bee80b3 30cff5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge branch 'master' into dev"},{"commit":"bee80b35d2b8c15e6233f2798e9c02a11e9e1e9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["CHANGELOG","docs/parsers/csv_s.md","man/jc.1"]},"message":"update for version bump"},{"commit":"c32395f6950d6294770ee93e8bf4d79c7d275ac3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_utils.py"]},"message":"linting"},{"commit":"735c5e1078cc27b5cba03b8ebbae15aeca6b8fbd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["tests/test_csv_s.py"]},"message":"update comments for ParseError test: https://bugs.python.org/issue45617"},{"commit":"d09c94b292ca3beec92a00f8a51b7259dd30a1e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add python 3.10 testing info"},{"commit":"4d04866f48f72b9ea0d213dc1533729d3b68a503","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/csv_s.py"]},"message":"add python bug https://bugs.python.org/issue45617 info"},{"commit":"a2d90f4dfcdc2cb00c6c0fa957493c95a21e256b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_csv_s.py"]},"message":"force test"},{"commit":"93a5002c8b530bd6f5f81e5d8595cde1f836ae41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"fix 3.10.0 version number"},{"commit":"23bf5227a4c39ea017e55fc21150331e1af6fdb7","merge":"77c96fa 3f5a1f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"77c96fa2a96148221bde7d2274e0dfb5386a166f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["tests/test_csv_s.py"]},"message":"try tests on python 3.10"},{"commit":"3f5a1f015e9c0807e227b9f7300592e25502e014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"add python 3.10"},{"commit":"b280c4fc18e60a85ab212b09aa5bf3a05a0eceff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":11,"deletions":19,"files":[".../fixtures/generic/csv-insurance-streaming.json","tests/test_csv_s.py"]},"message":"add ParseError test to streaming csv parser"},{"commit":"3ab9b43a2eebf535be98c94810ac474bf32ec515","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/csv_s.py"]},"message":"raise ParseError on newline bug"},{"commit":"46f568414a5c8d2f135486e86d0ada48cfcefeb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":96,"deletions":89,"files":["tests/test_ls_s.py","tests/test_ping_s.py","tests/test_vmstat_s.py"]},"message":"change streaming parser test names"},{"commit":"cba2fd299fff09a551b780e064a6e22bdf7e539a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":75,"deletions":61,"files":[".../generic/csv-10k-sales-records-streaming.json","tests/fixtures/generic/csv-deniro-streaming.json","tests/fixtures/generic/csv-example-streaming.json","tests/fixtures/generic/csv-flyrna-streaming.json","tests/fixtures/generic/csv-flyrna2-streaming.json",".../fixtures/generic/csv-homes-pipe-streaming.json","tests/fixtures/generic/csv-homes-streaming.json",".../fixtures/generic/csv-insurance-streaming.json","tests/test_csv_s.py"]},"message":"add tests"},{"commit":"1e6e44f656f1bbb277eb38fb485f7b48e3b9e40b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/csv_s.py"]},"message":"fix for piping data with non-platform newlines (e.g. windows csv files on unix)"},{"commit":"acac0399946d9781193e9350dd7109f1dd3999fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":149,"deletions":0,"files":["tests/fixtures/generic/csv-biostats-streaming.json","tests/fixtures/generic/csv-cities-streaming.json","tests/test_csv_s.py"]},"message":"working tests"},{"commit":"50a3b340164b3139f04f67a2bee16e5343c8a2da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":8,"files":["jc/parsers/csv_s.py"]},"message":"optimizations and use iter() so we can exhaust data coming from list objects"},{"commit":"b45396070cf28fa36ecb44acd7be3e3bb81a712d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_vmstat_s.py"]},"message":"update comment"},{"commit":"218b9aec8ac397e26e6cd4ff407f3d10ef88ea9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":87,"deletions":48,"files":["README.md","docs/parsers/csv_s.md","jc/parsers/csv_s.py","man/jc.1"]},"message":"doc update for streaming CSV parser"},{"commit":"2b887debc647bd533040e392465967d12869cb02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":10172,"deletions":1,"files":["CHANGELOG","jc/cli.py","jc/parsers/csv_s.py","tests/fixtures/generic/csv-10k-sales-records.csv"]},"message":"add csv streaming parser"},{"commit":"0313e3f8ca0e22e1575192d765d5afedf48e94df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":6,"files":["jc/parsers/lsusb.py"]},"message":"linting"},{"commit":"1669e6e20c3af3d28968558b76d0901a56775ac0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":28,"files":["jc/parsers/lsusb.py"]},"message":"linting"},{"commit":"ef6de75dda90c7221d53e0e0a942f0cac2247354","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["tests/test_utils.py"]},"message":"add vmstat timestamp tests to utils"},{"commit":"a6bcec425a3f44ba3c7cd06b5ebaf522b66df109","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"]},"message":"comment update"},{"commit":"596ad9a64d002ced212b08512126e52707fe73d2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"]},"message":"update comment"},{"commit":"7a91c93319f75c37ba6bf268d8270947f0bf8b22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":122,"deletions":0,"files":["EXAMPLES.md"]},"message":"add lsusb"},{"commit":"b5f7b35f89197879a9f13bd8fa5d2a0c77cc059a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"]},"message":"comment update"},{"commit":"2f47fb7f14c4ff0e1c835897d94ee81d14590aba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["tests/test_uname.py"]},"message":"fix ParseError tests"},{"commit":"1b214c403657a50689f2a04892ce836dea669a1d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":30,"deletions":0,"files":["jc/parsers/lsusb.py","tests/fixtures/generic/lsusb-t.out","tests/test_lsusb.py"]},"message":"raise ParseError if -t option is detected. add test"},{"commit":"8f94f8acc6bb53bbb19ba150551c7df2183a8863","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":384,"deletions":3,"files":["README.md","docs/parsers/file.md","docs/parsers/lsusb.md","docs/parsers/uname.md","man/jc.1","tests/fixtures/centos-7.7/lsusb-v-single.json","tests/fixtures/centos-7.7/lsusb-v.json","tests/fixtures/centos-7.7/lsusb.json","tests/fixtures/generic/lsusb-test-attributes.json","tests/fixtures/generic/lsusb-test-attributes2.json","tests/test_lsusb.py"]},"message":"add tests and update docs"},{"commit":"3a2a69cfa55e2f40d7536d923170a5cfc986998e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/parsers/lsusb.py"]},"message":"formatting"},{"commit":"f599c659881248b79c6dbc86d85a61311c9d3434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":464,"deletions":0,"files":["tests/fixtures/generic/lsusb-test-attributes.out","tests/fixtures/generic/lsusb-test-attributes2.out"]},"message":"add stress test examples"},{"commit":"ad12849fd9fc2177afb30740acc63cf284dc394b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":138,"deletions":26,"files":["jc/parsers/lsusb.py"]},"message":"update docs example and"},{"commit":"f36b3789e8df6673207d6c2d3d0796acfdfe011d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsusb.py"]},"message":"formatting"},{"commit":"6d18c0ba61cd188dbff736f1be47b7362c841687","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":47,"deletions":47,"files":["jc/parsers/lsusb.py"]},"message":"change variable name last_attribute and last_attr to last_item"},{"commit":"17097abec9567a58b5a5f7bbed11ecfd69cbd28c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":6,"files":["jc/parsers/lsusb.py"]},"message":"formatting"},{"commit":"b7ddd3b285f205211394edc70b611171cf72a4c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":22,"deletions":22,"files":["jc/parsers/lsusb.py"]},"message":"change variable names"},{"commit":"75b23f62c9d7b33907af92964d1a6234332fbc78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":35,"deletions":7,"files":["jc/parsers/lsusb.py"]},"message":"working configuration_descriptor and device_descriptor attributes"},{"commit":"f88967b2a59d79e053554d1e141f71e9d2d87456","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":126,"deletions":21,"files":["jc/parsers/lsusb.py"]},"message":"add attribute lists up to interface_association"},{"commit":"ba2846664b35b2e94aa905431c55c029b24a64e3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":22,"deletions":2,"files":["jc/parsers/lsusb.py"]},"message":"edpoint_descriptors attributes working"},{"commit":"10dba37ca2624e05eff246ef49df8ebd3f275d86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":28,"deletions":1,"files":["jc/parsers/lsusb.py"]},"message":"hub_descriptor attributes working"},{"commit":"0e6f938514965503f1d86d56c047f9f8fc03ac65","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":36,"deletions":45,"files":["jc/parsers/lsusb.py"]},"message":"working hub_port_status section"},{"commit":"159d87c1126f4d79d5e34837bc2c353a5445803b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":18,"deletions":7,"files":["jc/parsers/uname.py","tests/fixtures/centos-7.7/uname.out","tests/test_uname.py"]},"message":"add length guard and test for uname with no -a on linux"},{"commit":"9e7b1621cf232e9859bdf018737e536820f380a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":18,"files":["jc/parsers/lsusb.py"]},"message":"device_status working"},{"commit":"2057817ef8fec85b2a978b682e7fe8bc16def828","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":89,"deletions":0,"files":["tests/fixtures/debian10/uname-a.json","tests/fixtures/debian10/uname-a.out","tests/fixtures/freebsd12/uname-a.json","tests/fixtures/freebsd12/uname-a.out","tests/fixtures/freebsd12/uname-a2.json","tests/fixtures/freebsd12/uname-a2.out","tests/fixtures/generic/uname-a-different-proc.json","tests/fixtures/generic/uname-a-different-proc.out","tests/fixtures/generic/uname-a.json","tests/fixtures/generic/uname-a.out","tests/test_uname.py"]},"message":"add uname tests"},{"commit":"a1eabad2d37bb0d0e9407edf7305e223eba67da2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/uname.py"]},"message":"add comments"},{"commit":"92bf2b1ca2a172d3977d6e3c36b5ca1a8c2bab63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":20,"files":["CHANGELOG","jc/parsers/uname.py"]},"message":"simplify fixup logic for uname"},{"commit":"2b2123a4ba9b77d2089d367fe85dcb5d2857a295","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","jc/parsers/uname.py"]},"message":"add FreeBSD support"},{"commit":"908b2f9200ddcce4beb531a3c90908786b6a5b02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"]},"message":"add items"},{"commit":"deff0c7bfdf942b8d7e7bd140219e08bf80a50cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":5,"files":["jc/parsers/uname.py"]},"message":"remove print debug"},{"commit":"7cd01efa64029775042a2c145997ce30ef6b4f6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":25,"deletions":1,"files":["jc/parsers/uname.py"]},"message":"fixup for cases where the 'process' and/or 'machine' fields are blank on linux"},{"commit":"2dbe56456bbea2bdfce7eacbf8b9f10a1b249f55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":49,"deletions":39,"files":["jc/parsers/lsusb.py"]},"message":"add nested_dict. start work on hub_port_status and device_status"},{"commit":"6078a411ef612be8bad012aa404f34ebd74a1fd7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":79,"deletions":4,"files":["jc/parsers/lsusb.py"]},"message":"add initial schema doc"},{"commit":"4a3656562f161a51f5cb6f0e9ccd271859b78d62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["jc/parsers/lsusb.py"]},"message":"del null keys"},{"commit":"ba75989a24839907723ed7c3d7a497473d489a34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/lsusb.py"]},"message":"update comments"},{"commit":"9e9e2c362894f0072ab839565829881d750c8912","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsusb.py"]},"message":"move state instantiation before has_data test"},{"commit":"9a2a8c6b61a46a9bfb5a4492b86774a4a78672ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":52,"files":["jc/parsers/lsusb.py"]},"message":"shorten set_sections"},{"commit":"dae42ef1619441637672d634f9e5d7ab26115f09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":1,"files":["jc/parsers/lsusb.py"]},"message":"add hub_port_status and device_status"},{"commit":"931f2cab78bda180443535c04b532d04c6e88dd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":11,"files":["jc/parsers/lsusb.py"]},"message":"add hub_descriptor"},{"commit":"72b061bed4453686d264ccf8977cba6c2a4794ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":32,"deletions":8,"files":["jc/parsers/lsusb.py"]},"message":"add endpoint_descriptors"},{"commit":"29a7c73990d9620b15a4010d17fc9a9a859f44b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/parsers/lsusb.py"]},"message":"add hid_device_descriptor and report_descriptors"},{"commit":"2d1d68e3007f76d4c34ac07ae822935ab6021e79","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":87,"deletions":88,"files":["jc/parsers/lsusb.py"]},"message":"simplify populate_lists. Add CDC lists"},{"commit":"c5c1e170d1f502de5c76e9e481a23b26ffcaf237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":111,"deletions":76,"files":["jc/parsers/lsusb.py"]},"message":"interface descriptors working"},{"commit":"9c1bb66452838e704ef2277f313bb51a42dc03b9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/lsusb.py"]},"message":"fix remove _state field during schema_populate"},{"commit":"a4f3306bae90fbc807fdd9ff2ce71e25d36a663f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":69,"deletions":28,"files":["jc/parsers/lsusb.py"]},"message":"initial schema build. need to figure out why deleting _state from output_line causes exceptions"},{"commit":"1bc638b6ee7a820406ba4b84d3408f7cd4fe779d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":36,"deletions":32,"files":["jc/parsers/lsusb.py"]},"message":"add bus_list and add all device_list data to the list"},{"commit":"9ad0cd9dae8822235c37159541ce72471eb4263e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":116,"deletions":211,"files":["jc/parsers/lsusb.py"]},"message":"now storing state within the objects to make building the schema (later) easier."},{"commit":"6d4a4691276d8659253b2ac8f8bdbd71a1fece7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":356,"deletions":333,"files":["jc/parsers/lsusb.py"]},"message":"use class for state"},{"commit":"ed6997e3ff2e575a6d4daa7d7a2cbe7dddacdd4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":170,"deletions":34,"files":["jc/parsers/lsusb.py","tests/fixtures/centos-7.7/lsusb-v-single.out"]},"message":"add interface_association section"},{"commit":"eb788fca6e25eea1fa8a43b22360c852ecf5af35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":919,"deletions":0,"files":["jc/cli.py","jc/parsers/lsusb.py","tests/fixtures/centos-7.7/lsusb-v.out","tests/fixtures/centos-7.7/lsusb.out"]},"message":"somewhat working lsusb parser. needs a lot more TLC"},{"commit":"9186f5f37739012b8c04c776310a20ef55b1469f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":99,"deletions":4,"files":["CHANGELOG","jc/__init__.py","jc/parsers/file.py","setup.py","tests/fixtures/osx-10.14.6/file3.json","tests/fixtures/osx-10.14.6/file3.out","tests/test_file.py"]},"message":"fix file parser for gzip cases (has ': ' in the description, which is the delimiter)"},{"commit":"30cff5f28140a5b20a617c8145c13e43b7b6685b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":17,"deletions":3,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","man/jc.1"]},"message":"add note that the streaming parser outputs JSON Lines"},{"commit":"b724e0969a0d6b22bed0c77eb8d629381179ea3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"]},"message":"-qq instead of -q"},{"commit":"a62c49e8715873b068a96da5021ea24a783acd6b","merge":"77dcbc5 9b160f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #172 from kellyjonbrazil/master\n\nsync master to dev"},{"commit":"9b160f6279bbbf0c15413c98922eef137ba2f3f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]},"message":"link update"},{"commit":"338a4e2612f70bb3e2af31f61a7db75f647293fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]},"message":"formatting"},{"commit":"0140688750be61dd752059ee66734ab1c7a8f30e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":8,"deletions":4,"files":["README.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","templates/readme_template"]},"message":"link updates"},{"commit":"73e5ea98c1ca2b9299085e3832791162eca3b9ff","merge":"528aac7 77dcbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #170 from kellyjonbrazil/dev\n\njc v1.17.0 from dev"},{"commit":"77dcbc544da271edab5de5ad209117e98c846f9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":2,"deletions":3,"files":["CHANGELOG","jc/__init__.py","man/jc.1"]},"message":"final doc update"},{"commit":"c7bcb0947ae32acc9cdba7a6975d2f2557f10a39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"]},"message":"indent subsequent error and warning lines"},{"commit":"5cd3f7f71d38b560a88dd6057e9c7a94991a3d71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/foo_s.py"]},"message":"Add example to raise ParseError if there is no output data to yield"},{"commit":"5044388ab2e8d7d8b427fd51b0ab875611bd127f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":3,"files":["jc/parsers/vmstat_s.py","tests/test_vmstat_s.py"]},"message":"raise if line data is unrecognized"},{"commit":"ee075db59819d80e4dcb60ddbd9cfe2fd529dfe9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":5,"deletions":7,"files":["jc/cli.py","jc/parsers/foo_s.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"]},"message":"linting"},{"commit":"9904e0be61e7c81b907bf3770f111346daeff481","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/utils.md","jc/utils.py"]},"message":"formatting"},{"commit":"31b69b3242eeca2c02f87c31d58193dd3f06fe49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/utils.md","jc/utils.py"]},"message":"formatting"},{"commit":"e6a80fea3228122dd84e17672c835c0460ad1342","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":7,"files":["docs/utils.md","jc/utils.py","man/jc.1"]},"message":"formatting"},{"commit":"d6aec00e038d1ecfe43c13a6909d50630455b372","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":27,"deletions":1,"files":["tests/fixtures/ubuntu-18.04/vmstat-1-long-streaming.json","tests/fixtures/ubuntu-18.04/vmstat-1-long.json","tests/test_vmstat.py","tests/test_vmstat_s.py"]},"message":"add vmstat-1-long tests"},{"commit":"4aa7d81e11ea7fcfbb5c9d74337cde617b1a0d5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":50,"deletions":2,"files":["jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","tests/fixtures/ubuntu-18.04/vmstat-1-long.out"]},"message":"ignore re-printed header rows in output"},{"commit":"48cdabc3b0862d6291e1ec59ab385e0e146c31eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":16,"deletions":0,"files":["docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"]},"message":"document timestamps"},{"commit":"a1791ef5479749692c79bbe98fc7687d70cd6cda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"]},"message":"linting"},{"commit":"7bc87f6c2d4cfcfa656a1c1b8973a4c0414c85d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":8,"deletions":8,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","man/jc.1"]},"message":"change _meta to _jc_meta"},{"commit":"bbed9e274b8252ba0518140fe7fc97029310771f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":154,"deletions":159,"files":["jc/parsers/ping_s.py"]},"message":"linting"},{"commit":"486282b9856f5e56cf43ee1399d8e7cb78353b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/vmstat_s.py"]},"message":"linting"},{"commit":"a4d45b653f794033978940da14910f5d607a8254","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["jc/parsers/foo_s.py","jc/parsers/vmstat.py"]},"message":"linting"},{"commit":"22e151b01c0f97c141d912c9646e46df0320d622","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":56,"deletions":60,"files":["jc/cli.py","jc/utils.py"]},"message":"linting"},{"commit":"7a4ebcd1ecdb4929aae70e44b4f9b6b5ab52b393","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CONTRIBUTING.md"]},"message":"language hints"},{"commit":"651cbfe02fbb354c4caf8e0d022655642e7caed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"add streaming foo parser"},{"commit":"8c3e764516e1c28961b09380b638a57ce98b1261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"add streaming parser to contrib guidelines"},{"commit":"b4e75da7e3f23502723ce8b2a7261b376f296864","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"37223f086cabc8db5962415bd161fed151dafb9d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"a404033735c2c8075a8e08194197eae59db70afd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add error and warning message wrap info"},{"commit":"b7433ed085c0ba22ea0d49330871a651a8d83fb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":80,"deletions":41,"files":["docs/utils.md","jc/cli.py","jc/parsers/file.py","jc/parsers/ls.py","jc/parsers/traceroute.py","jc/utils.py"]},"message":"auto wrap warning and error messages"},{"commit":"224d3d65ada4216e28e142d411b0c2c3358517b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"Add exception class name to error message"},{"commit":"a349fb0bdabaf74503831f22c4efbd02254f809d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":10,"deletions":8,"files":["README.md","docs/utils.md","man/jc.1"]},"message":"change _meta to _jc_meta"},{"commit":"e7ddcfb83fb295034db44ade407476ff3a962cd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":14,"deletions":12,"files":["jc/utils.py","templates/manpage_template","templates/readme_template",".../centos-7.7/ping-ip-O-streaming-ignore-exceptions.json","tests/test_ping_s.py"]},"message":"change _meta to _jc_meta"},{"commit":"abd20dfe3662f65373ac582c70aa740e53b52f68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"formatting"},{"commit":"dc1fd3ef1be41aee349b159059f1febff76f6caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":12,"deletions":12,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"fix -qq docs"},{"commit":"98a7686db46fbd3ed98382867976249f307d0015","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":18,"insertions":160,"deletions":152,"files":["README.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","docs/utils.md","jc/cli.py","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","jc/utils.py","man/jc.1","templates/manpage_template","templates/readme_template","... => ping-ip-O-streaming-ignore-exceptions.json}","tests/test_ls_s.py","tests/test_ping_s.py","tests/test_vmstat_s.py"]},"message":"use -qq to ignore streaming exceptions"},{"commit":"9c6c6c4330fc68115be012de254161f36e3a8328","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"add next() info"},{"commit":"f9be5651daa891e06ad0acd8980ffc0fe51fd29d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":6,"files":["README.md","templates/readme_template"]},"message":"add language hints"},{"commit":"df9835a3e62bb2b3b6ec8b55f06a25a00a799d92","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"92363be2dd633bdd3c2dd07c72ebd281d2cb4565","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"fix streaming python module example"},{"commit":"31b62030156f9c826fe5c7d127e9dd0ace582dd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"18805858d685d456f9a38540bbaedbaa1a411546","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["man/jc.1","templates/manpage_template"]},"message":"formatting"},{"commit":"e676f0e20fb6e96a536c4d182b0d287cdc1ad0f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":36,"deletions":6,"files":["README.md","templates/readme_template"]},"message":"add streaming parser info for python module use"},{"commit":"20652edefaa7705b8ba756bae3944ff362a295a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["CHANGELOG"]},"message":"update changelog"},{"commit":"98c29d07478093e78f53ec633f2dd08cafc3e3ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":120,"deletions":0,"files":["tests/fixtures/centos-7.7/vmstat-a.json","tests/fixtures/centos-7.7/vmstat-at-5-10.json","tests/fixtures/centos-7.7/vmstat-awt.json","tests/fixtures/centos-7.7/vmstat-d.json","tests/fixtures/centos-7.7/vmstat-dt.json","tests/fixtures/centos-7.7/vmstat-w.json","tests/fixtures/centos-7.7/vmstat.json","tests/test_vmstat.py"]},"message":"add vmstat tests"},{"commit":"41a6311f6b3ed2cc94919d042aed51c46cdf3e2f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":132,"deletions":1,"files":["tests/fixtures/centos-7.7/vmstat-a-streaming.json",".../centos-7.7/vmstat-at-5-10-streaming.json",".../fixtures/centos-7.7/vmstat-awt-streaming.json","tests/fixtures/centos-7.7/vmstat-d-streaming.json","tests/fixtures/centos-7.7/vmstat-dt-streaming.json","tests/fixtures/centos-7.7/vmstat-streaming.json","tests/fixtures/centos-7.7/vmstat-w-streaming.json","tests/test_ping_s.py","tests/test_vmstat_s.py"]},"message":"add streaming parser tests"},{"commit":"978760ec57e04e3ec347c8764bfad015b6dddbff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"add exception class name to error string"},{"commit":"d410425537817964ceb7b61e0fdff6c03fdf8766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":136,"deletions":136,"files":["docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"]},"message":"replace single quotes with double quotes in doc"},{"commit":"6b7430329cbe1bfb95b47bcfe031906641c127e1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":269,"deletions":1,"files":["README.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat_s.py","man/jc.1"]},"message":"doc update"},{"commit":"40fe0d4a6081a1233bf5c3eb51a01da1f12bc4dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":141,"deletions":22,"files":["jc/parsers/vmstat_s.py"]},"message":"working parser"},{"commit":"365c5354a0349e470558d15243217a064e73da38","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/vmstat.py"]},"message":"remove debug print statement"},{"commit":"b246a05cbb4c1c564f81b3e72cecb62edbe6ced6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"fix vmstat-s name"},{"commit":"9e5a7a4abb8668d043625951a05eb5733cbbd56f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":37,"deletions":0,"files":["tests/fixtures/centos-7.7/vmstat-a.out","tests/fixtures/centos-7.7/vmstat-at-5-10.out","tests/fixtures/centos-7.7/vmstat-awt.out","tests/fixtures/centos-7.7/vmstat-d.out","tests/fixtures/centos-7.7/vmstat-dt.out","tests/fixtures/centos-7.7/vmstat-w.out","tests/fixtures/centos-7.7/vmstat.out"]},"message":"add vmstat sample output"},{"commit":"f266acbccafc040c375723147b8e5d7fddb1e697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":106,"deletions":14,"files":["jc/parsers/vmstat.py"]},"message":"add processing logic"},{"commit":"4e3b471f1801f1b9006b18cae2a3d816f361262e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/utils.py"]},"message":"add format for vmstat"},{"commit":"5e28736c2e0c951e71e6531e03a9619279d95d3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"]},"message":"add vmstat and vmstat_s"},{"commit":"a91913a3b517ea0dbb25d6e4cc92850eb2fde5ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":106,"deletions":0,"files":["jc/parsers/vmstat_s.py"]},"message":"streaming parser template"},{"commit":"90c64f0ae0d97d025adee40970d89baca79ee4ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":182,"deletions":0,"files":["jc/parsers/vmstat.py"]},"message":"initial working parser"},{"commit":"7cc642ed1a476abda709ac9b79900a1de12e1ef7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/foo_s.py"]},"message":"formatting"},{"commit":"809f64d35a92bb3d7380fa9d78ac1421a10b81fc","merge":"ff0fda4 a6f859a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #169 from kellyjonbrazil/streaming\n\nStreaming to dev"},{"commit":"a6f859a55edae50fcc185948736218404cfaa929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":18,"insertions":168,"deletions":153,"files":[".../osx-10.14.6/ping-hostname-p-streaming.json",".../osx-10.14.6/ping-hostname-s-streaming.json",".../osx-10.14.6/ping-hostname-streaming.json",".../osx-10.14.6/ping-ip-dup-streaming.json",".../fixtures/osx-10.14.6/ping-ip-p-streaming.json",".../fixtures/osx-10.14.6/ping-ip-s-streaming.json","tests/fixtures/osx-10.14.6/ping-ip-streaming.json",".../osx-10.14.6/ping-ip-unreachable-streaming.json",".../osx-10.14.6/ping6-hostname-p-streaming.json",".../osx-10.14.6/ping6-hostname-s-streaming.json",".../osx-10.14.6/ping6-hostname-streaming.json",".../osx-10.14.6/ping6-ip-dup-streaming.json",".../fixtures/osx-10.14.6/ping6-ip-p-streaming.json",".../fixtures/osx-10.14.6/ping6-ip-s-streaming.json","tests/fixtures/osx-10.14.6/ping6-ip-streaming.json","tests/fixtures/pi/ping-ip-O-D-streaming.json","tests/fixtures/pi/ping-ip-O-streaming.json","tests/test_ping_s.py"]},"message":"add final ping_s tests"},{"commit":"39ef88078f43708e470d3c1b2fd95e76b5cbeb08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/ping_s.py"]},"message":"add destination_ip to error lines"},{"commit":"aeea5e8d2eab2fef3e14637f512aed7b117c4a3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/test_ls_s.py"]},"message":"formatting"},{"commit":"1a0700bff4bdebbd9f1f92f2fc7a56c4d5ed6925","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":31,"insertions":240,"deletions":213,"files":[".../fedora32/ping-hostname-O-D-p-s-streaming.json",".../fedora32/ping-hostname-O-p-streaming.json",".../fedora32/ping-hostname-O-streaming.json","tests/fixtures/fedora32/ping-ip-O-D-streaming.json","tests/fixtures/fedora32/ping-ip-O-streaming.json",".../fedora32/ping6-hostname-O-D-p-s-streaming.json",".../fedora32/ping6-hostname-O-p-streaming.json",".../fedora32/ping6-ip-O-D-p-streaming.json",".../fixtures/fedora32/ping6-ip-O-p-streaming.json",".../freebsd12/ping-hostname-p-streaming.json",".../freebsd12/ping-hostname-s-streaming.json",".../freebsd12/ping-hostname-streaming.json","tests/fixtures/freebsd12/ping-ip-p-streaming.json","tests/fixtures/freebsd12/ping-ip-s-streaming.json","tests/fixtures/freebsd12/ping-ip-streaming.json",".../freebsd12/ping6-hostname-p-streaming.json",".../freebsd12/ping6-hostname-s-streaming.json",".../freebsd12/ping6-hostname-streaming.json","tests/fixtures/freebsd12/ping6-ip-p-streaming.json","tests/fixtures/freebsd12/ping6-ip-s-streaming.json","tests/fixtures/freebsd12/ping6-ip-streaming.json",".../ping-hostname-O-D-p-s-streaming.json",".../ubuntu-18.04/ping-hostname-O-p-streaming.json",".../ubuntu-18.04/ping-hostname-O-streaming.json",".../ubuntu-18.04/ping-ip-O-D-streaming.json",".../fixtures/ubuntu-18.04/ping-ip-O-streaming.json",".../ping6-hostname-O-D-p-s-streaming.json",".../ubuntu-18.04/ping6-hostname-O-p-streaming.json",".../ubuntu-18.04/ping6-ip-O-D-p-streaming.json",".../ubuntu-18.04/ping6-ip-O-p-streaming.json","tests/test_ping_s.py"]},"message":"add more ping-s tests"},{"commit":"b5fa6d068f240671eb948b055cd4f7bf127e0ec0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":25,"deletions":5,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"]},"message":"update docs"},{"commit":"1baec0b420feff068f2dc1e35499f78aa7d0a6e0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":815,"deletions":0,"files":[".../ping-hostname-O-D-p-s-streaming.json",".../centos-7.7/ping-hostname-O-p-streaming.json",".../centos-7.7/ping-hostname-O-streaming.json",".../fixtures/centos-7.7/ping-ip-O-D-streaming.json",".../centos-7.7/ping-ip-O-streaming-quiet.json","tests/fixtures/centos-7.7/ping-ip-O-streaming.json",".../fixtures/centos-7.7/ping-ip-dup-streaming.json",".../ping6-hostname-O-D-p-s-streaming.json",".../centos-7.7/ping6-hostname-O-p-streaming.json",".../centos-7.7/ping6-ip-O-D-p-streaming.json",".../centos-7.7/ping6-ip-O-p-streaming.json",".../centos-7.7/ping6-ip-dup-streaming.json","tests/test_ping_s.py"]},"message":"add some streaming tests"},{"commit":"4f2a4e1dee9d722d2aa5ddf2c082a358c88cf640","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/parsers/ping_s.py"]},"message":"skip blank lines and warning lines"},{"commit":"758d617668d1f9d0f27b52d46749e5b67a570cf1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":5,"deletions":5,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"]},"message":"doc update"},{"commit":"55322c37f57a9c8e28641a61928fad2329f5e50d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/foo_s.py"]},"message":"formatting"},{"commit":"d19ea5552bb3a379f7f92bcb58794c557ecc6647","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":193,"deletions":0,"files":["tests/fixtures/centos-7.7/ls-al-streaming.json","tests/fixtures/centos-7.7/ls-alR-streaming.json","tests/fixtures/centos-7.7/ls-alh-streaming.json","tests/fixtures/osx-10.14.6/ls-al-streaming.json","tests/fixtures/osx-10.14.6/ls-alR-streaming.json","tests/fixtures/osx-10.14.6/ls-alh-streaming.json",".../osx-10.14.6/ls-lR-empty-folder-streaming.json","tests/fixtures/ubuntu-18.04/ls-al-streaming.json","tests/fixtures/ubuntu-18.04/ls-alR-streaming.json","tests/fixtures/ubuntu-18.04/ls-alh-streaming.json",".../fixtures/ubuntu-18.04/ls-l-iso-streaming.json","tests/test_ls_s.py"]},"message":"add streaming ls parser tests"},{"commit":"130c3527c1083d399deef00ee8fcaa75f609b485","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":25,"deletions":25,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","man/jc.1"]},"message":"update docstrings"},{"commit":"3f221f471416766a860bd19850afda4899ee5eb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"]},"message":"doc update"},{"commit":"d64c4cb39056bb869fc117477612ae5ae2ef3d85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":141,"deletions":1,"files":["man/jc.1","templates/manpage_template"]},"message":"add streaming parsers section"},{"commit":"448c56aa46b72438e4a4c83b10a7eb889e3f50e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"9fbea15b6d031baa8c90f2602e39de7cf51408e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":8,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"]},"message":"rename state class to _state"},{"commit":"932060314b3c1ce518b9f57532e124285cb3ad0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":41,"deletions":11,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"]},"message":"doc update"},{"commit":"5e68ae50097cb339f3390449db7e3f189a716320","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/parsers/ping_s.py"]},"message":"import exception. tighten up os detection"},{"commit":"d03541beae44a4571a7d0481af01a5c19506207f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":5,"files":["jc/parsers/ping_s.py"]},"message":"add docstring examples. add exception raise when OS cannot be detected."},{"commit":"516fa571d90a0c93134c953c15ce84dd31b96b4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/ping_s.py"]},"message":"remove unused variable. use elif instead of if for linux vs. bsd detection"},{"commit":"a19c12096a8e8de02a6ff761cc9c13ec249d416e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":373,"deletions":143,"files":["jc/parsers/ping_s.py"]},"message":"initial working parser for both linux and bsd"},{"commit":"758f27945de4f0897405eba02c7908d815ce6e9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/ping_s.py"]},"message":"change data_bytes and bytes to sent_bytes and response_bytes"},{"commit":"8b1e8d58df22f8542ccaf7bf3e1eabe6132e7a42","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping_s.py"]},"message":"remove unneeded line"},{"commit":"b967489d085319facee077958deaa04956a98343","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":81,"deletions":40,"files":["jc/parsers/ping_s.py"]},"message":"complete linux coverage including summary"},{"commit":"870d0218be2641e3eddb114c23d54deb23155f25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"]},"message":"add unbuffer note"},{"commit":"84020bc2af294cb065105f1399453aefc98eb180","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":12,"deletions":6,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/utils.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","man/jc.1"]},"message":"change error_msg to error in -q result docs"},{"commit":"4efe5344e069ed921f208bcbbd097705be2d3b4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add links to HN and Reddit"},{"commit":"9182c545134b3d56d27d2c1d9bda678532bdc3fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":8,"files":["jc/utils.py"]},"message":"formatting"},{"commit":"28f0ab0b02d21fc060f1ac7181f85552798dc4bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/ls_s.py","jc/utils.py"]},"message":"update streaming error messages"},{"commit":"90d1a30696b2cbfbb06a55cc0cf920cf8ecd89aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"130b3738cc57fe261e8ef881a57b7836acd7e7e9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":21,"deletions":26,"files":["jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/utils.py"]},"message":"shorten successful yield to a single line"},{"commit":"92c7357615af7689db273aa78d666b35a2ec7a70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/foo_s.py"]},"message":"formatting"},{"commit":"c80f8633349c00ea461b8927f9949fe19b2f46ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/foo.py"]},"message":"simplify return condition formatting"},{"commit":"4642c20179d4643e0cf1970b264da7d9d91628de","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"5288eb22aadbbc1005b16428b94d2b07e9a75e3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"add info about streaming parser performance characteristics"},{"commit":"df8387a1a99df69eac5005662aaf56d506fa0efd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"streaming parsers cannot be used with the magic syntax"},{"commit":"cc38c27f44d3f088609b878304cab8eed75fc8f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"64f5357d69fe88b45d710d38948969699e1ca12f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":84,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add streaming parsers section"},{"commit":"51debb5649bef431e51e543f1c9270e2810aa58f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"]},"message":"add vmstat parser and change from linebuffer to unbuffer"},{"commit":"b48d05a4313b27cf5e69d3e4259542e0b131b60f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":15,"deletions":15,"files":["README.md","jc/cli.py","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"change from line buffer output to unbuffer output"},{"commit":"4e7f6b337db61b8a106cf958f6b874157909c87a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":17,"deletions":25,"files":["jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"]},"message":"simplify yield statements"},{"commit":"a509d99cafd80862721595ee59ccc4a471b5e5a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/utils.py"]},"message":"add stream_success dictionary"},{"commit":"481e45fb644ac88fa77ef35643b793f179fe6859","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"]},"message":"limit parse error msg lenght"},{"commit":"e9038e1720e1c0e520e2f29b718aa8505cbbb9a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":66,"deletions":0,"files":["docs/parsers/ping_s.md"]},"message":"initial streaming ping docs"},{"commit":"8fd9e582bf29275c4daaa3be88ea8d196411b34a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":15,"deletions":17,"files":["docs/parsers/ls_s.md"]},"message":"doc update"},{"commit":"c1fd6f48a5a3501499c9fca7239673b8555cc7c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["docs/utils.md"]},"message":"add stream_error docs"},{"commit":"af615c7f4b3f589ffc1b37cf9834062a04c013cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":26,"deletions":5,"files":["CHANGELOG","README.md","jc/cli.py","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"add line buffer output option"},{"commit":"bf0bc32d7ae6cabe07906207f4f08c2e81802c80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"flush streamed text for better piping experience"},{"commit":"2d6b53e012181a4c33bab441880c47c0fc0b0601","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":36,"deletions":42,"files":["jc/parsers/ping_s.py"]},"message":"add pattern support. move unparsable line detection to standard streaming parser style"},{"commit":"51271fea0fbd7bd63863ba05c399b4675dc5b4bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":139,"deletions":149,"files":["jc/parsers/ping_s.py"]},"message":"somewhat working parser"},{"commit":"2deb473e0bc96c0e39ec4074a6df4b941ba2172b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":262,"deletions":0,"files":["jc/parsers/ping_s.py"]},"message":"initial streaming ping parser"},{"commit":"23eeb33b3da43a679c3bf3f3643cfa552a1164e1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"modify stream_error message"},{"commit":"f50dfaef45632241f8f6972fa19bb17c54a457ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":13,"files":["jc/parsers/ls_s.py"]},"message":"use stream_error function for exceptions. raise on non -l ls output"},{"commit":"55bb71e9d466cc9ee5f7fd8eca1101c941cbcb35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"add streaming ping parser. update streaming exception message"},{"commit":"dab9357d286962b70224d6fafbf90a4c0cbc9980","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":12,"files":["jc/parsers/foo_s.py"]},"message":"use stream_error function for exceptions"},{"commit":"27eb427245b5126335cef0adb5e57522272474b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/utils.py"]},"message":"add stream_error function"},{"commit":"260f3685d944ded84396ae3395773d6898803fb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":112,"deletions":0,"files":["jc/parsers/foo_s.py"]},"message":"add streaming parser template"},{"commit":"76e78fc0c34b88a90fef876eebef92bd71cd772c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":11,"files":["jc/parsers/ls_s.py"]},"message":"doc updates"},{"commit":"1ac944fa028a400ae7b39b811fcf368c9bf5e259","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/ls_s.py"]},"message":"add -q option info to docstring"},{"commit":"986bc9b042a940f8dd34f0541bcb9b5840df579e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":43,"files":["jc/parsers/ls_s.py"]},"message":"cleanup unused code"},{"commit":"5a7942069b1f3ef3b45992b482bfb6bb973f7e8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":28,"deletions":28,"files":["jc/parsers/ls_s.py"]},"message":"add support for parent field"},{"commit":"f6c6fc13ac4c779667807df12444a41ef28a8011","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/cli.py"]},"message":"enhance error msg when streaming parser is used"},{"commit":"1d8cfae89f24192b6fab087f59c9b8988ef363dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/parsers/ls_s.py"]},"message":"only print _meta object if -q or quiet flag is used. Also, add message to the end of exceptions informing of the -q option to ignore errors"},{"commit":"787df51239ffa8260b48d6a3a58e6ff07d5e0f64","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"]},"message":"remove `\\n` from end of line in exception message"},{"commit":"5e7f302a9c45343c36e81944db38a435e6c8a20c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":10,"files":["jc/parsers/ls_s.py"]},"message":"Raise exceptions unless the -q or quiet flag are used"},{"commit":"3d10fd40b56264836874da19aa72351e6d5cfbf7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":13,"files":["jc/cli.py"]},"message":"remove print flush for better performance. Roll json.JSONDecodeError into the parse try/except block"},{"commit":"57e3bf239cc76d3b0ee0eddc618171eb90c28dec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"]},"message":"formatting for docs"},{"commit":"ccb09861e82044e17ec51277b3c8875e5ba9d87d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":20,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"]},"message":"formatting for docs"},{"commit":"94551d75dd926c7f558e5cab47ba9483a20c6b3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":116,"deletions":49,"files":["CHANGELOG","README.md","docs/parsers/ls_s.md","docs/readme.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz","mangen.py","setup.py"]},"message":"doc update"},{"commit":"6e21218425359210591827e936b8d48d9644df92","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":234,"deletions":3,"files":["jc/cli.py","jc/parsers/ls_s.py"]},"message":"working prototype of streaming ls parser"},{"commit":"ff0fda48fc48760a7293528155d222c6456f84c4","merge":"e08b61f 528aac7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #168 from kellyjonbrazil/master\n\nSync master to dev"},{"commit":"528aac7ad87feae2093aba563c83a29ebf75e5f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":38,"files":["README.md","templates/readme_template"]},"message":"use subprocess in python example"},{"commit":"ab482e521d4cecfffa5393805b1d7de4389db49a","merge":"9c1ad92 e08b61f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #163 from kellyjonbrazil/dev\n\nDev v1.16.2"},{"commit":"e08b61fa81b1bd2304d04db5cdc8b809fe9c6032","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]},"message":"add schema note to sfdisk"},{"commit":"ce61bd1d2b4323d9c2d0454c4f646521913ae20d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":73,"deletions":7,"files":["tests/fixtures/debian10/sfdisk-F2.json","tests/fixtures/debian10/sfdisk-F2.out","tests/fixtures/debian10/sfdisk-l2.json","tests/fixtures/debian10/sfdisk-l2.out","tests/fixtures/debian10/sfdisk-l3.json","tests/fixtures/debian10/sfdisk-l3.out","tests/test_sfdisk.py"]},"message":"add tests for -F fixes"},{"commit":"7b708f75182bf3ed33478a7de62e9c2496f0b994","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":11,"deletions":5,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-l.json","tests/fixtures/debian10/sfdisk-l.json"]},"message":"Don't convert 'size' to int, except for legacy -d support. Change partition table detection logic to fix -F output"},{"commit":"89ca50c7fc1bf64f34c915e65031d0bc520e6466","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"]},"message":"add -l to sfdisk raw example"},{"commit":"fb54899dcc2160450448e0d6111557cebdeb0d4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":38,"deletions":23,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]},"message":"doc update"},{"commit":"0a625ad7ddd9c804052d98930165cd22049546bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/sfdisk.py"]},"message":"remove unneeded lines"},{"commit":"d32e45efbe0d71a9a132abfb2855f1f4ccee9916","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":69,"deletions":1,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-F.json","tests/fixtures/centos-8/sfdisk-l.json","tests/fixtures/debian10/sfdisk-F.json","tests/fixtures/debian10/sfdisk-l.json","tests/test_sfdisk.py"]},"message":"add sfdisk tests"},{"commit":"c77696bc789cdfd286a7479c3d9f67d23149d0ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"]},"message":"version bump"},{"commit":"736fde9e784587cb2ef344bbf31d876eafea7741","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":147,"deletions":28,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-F.out","tests/fixtures/centos-8/sfdisk-l.out","tests/fixtures/debian10/sfdisk-F.out","tests/fixtures/debian10/sfdisk-l.out"]},"message":"add support for newer versions of sfdisk"},{"commit":"9c1ad92fed9a4b3a0da66d6b71deec8d608edfa9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["CONTRIBUTING.md"]},"message":"fix examples"},{"commit":"1a9fd2139d156a51bf2d25db951e47e96da77f7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"add \"For new parsers:\""},{"commit":"7661e7f27a4e5c379ea37c7f95496aca2c1e2910","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"formatting"},{"commit":"f857b7fbf7862ddd7eb5ab20470f5dbaacc62119","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"add custom parser folder info"},{"commit":"d94d12dbc5fb3e3712b2f1aea949013cb8213e28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["CONTRIBUTING.md"]},"message":"add foo parser template info"},{"commit":"700916276ae8b0a106410e3dd2ea3e00248ee37a","merge":"473f706 834e523","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #159 from kellyjonbrazil/master\n\nSync Master to dev"},{"commit":"834e52369ceb479776ddc8fc2931790af53b9c18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":5,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]},"message":"update man page"},{"commit":"1ce53365de61421c8bd43e04590038083894153b","merge":"2689697 473f706","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #156 from kellyjonbrazil/dev\n\nDev v1.16.1"},{"commit":"473f70668f04a38765559c5dbf0468af24d625c9","merge":"0dbd270 2689697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'master' into dev\n\n# Conflicts:\n# jc/man/jc.1.gz\n# man/jc.1\n# man/jc.1.gz"},{"commit":"0dbd2702f6ab2640b2ccdea92411ac0789673e66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/cli.py"]},"message":"reformat doc_text for nicer indentation"},{"commit":"01e3764a9b6ba902aea522bf6b7005fd37b3acbb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"fix join syntax"},{"commit":"ff9c81722ae7221364e9bcb83d98b16b4263334e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"]},"message":"try/except for shlex.join since only available in python 3.8"},{"commit":"166aef7a022ed29862ab2e0702d53c591bb5cc77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":4,"deletions":4,"files":["docs/parsers/stat.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz","setup.py"]},"message":"version bump"},{"commit":"78caf7646baf5d35602fd76771443cd64bd783af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add stat fix"},{"commit":"1f99d40cecc5d88a246f3558f71db376ebd885c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":17,"deletions":2,"files":["jc/parsers/stat.py","tests/fixtures/osx-10.14.6/stat-filename-with-spaces.json","tests/fixtures/osx-10.14.6/stat-filename-with-spaces.out","tests/test_stat.py"]},"message":"fix filename with spaces for osx/bsd"},{"commit":"4c2912d3d5ec1fd2d5d891f2b3c58a33dd8572be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"use shlex.join to quote run_command_str for better error messages"},{"commit":"45e6e06be581f787f707e3f5645129c713478d16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["CHANGELOG"]},"message":"add glob and process substitution fixes"},{"commit":"fdbe3e05f323c95687a1137983f9623911008ca2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["jc/cli.py"]},"message":"fix issue with globs not including filenames with spaces with magic syntax (introduced during switch to use subprocess to grab process exit code). No longer need to shlex quote arguments."},{"commit":"7cc168f6409af13fda815d0d2a6db25b7c9ba367","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"add comment"},{"commit":"ff2d609c9b5f5f57f3331e5593e8fe87c01654dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":1,"files":["jc/cli.py"]},"message":"add close_fds=False in subprocess.Popen() to allow process substitution in magic syntax. Also check for too many open files exception"},{"commit":"2689697b4c21758903e5f74ec069e89be585aba2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"f90a0ea8ab15629b7786e4431e9c968c3a896ee0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["templates/readme_template"]},"message":"formatting"},{"commit":"caabe60f849fb2422e47b8f10e0ff35beb706dcd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":3,"deletions":3,"files":["docs/parsers/kv.md","jc/man/jc.1.gz","jc/parsers/kv.py","man/jc.1","man/jc.1.gz"]},"message":"fix kv example"},{"commit":"2bef4ed6038201f54339e750a833260dc1998591","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","README.md"]},"message":"package updates"},{"commit":"ee57be533b12593a33a2abbb2892697f0bd40c65","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"]},"message":"fix sfdisk example"},{"commit":"c5b7aaca25d6b66d3e44256c2c6760a4cf2956ec","merge":"3b22ce4 7a1be90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #149 from kellyjonbrazil/dev\n\nDev v1.16.0"},{"commit":"7a1be905bb8654558afb5979b0bd78d4a8488874","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]},"message":"version bump"},{"commit":"5798495a11afa2f72ce6f79be785d46240fcbeb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["CHANGELOG"]},"message":"add 1.15.7 to 1.16.0 changes"},{"commit":"46171e220252ec92d18e744d2a57c1d6a6dc19f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":69,"deletions":0,"files":["EXAMPLES.md"]},"message":"add sfdisk example"},{"commit":"dd5c924ff505dcc2a9c851d2425677bdf16ea462","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add man page location change"},{"commit":"30c4ab297658228a07ef9b1585516719af3febb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":515,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]},"message":"new man page location"},{"commit":"26ea4d47b33277efb0ddafe8f421791696277c07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":14,"deletions":3,"files":["CHANGELOG","MANIFEST.in","jc/__init__.py","mangen.py","setup.py"]},"message":"version bump and deprecate /man/jc.1.gz and /jc/man/jc.1.gz"},{"commit":"2732cd175c1e878210707162de3928f33fb2f201","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["CHANGELOG","MANIFEST.in"]},"message":"include CHANGELOG in source distribution"},{"commit":"3e54b597be88b0e342e4361b7f2c1af447f9482b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add timezone change for unit tests"},{"commit":"f10ebea20962084833e5c1ebd9bc90a251bf3ff4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":78,"deletions":0,"files":["tests/test_date.py","tests/test_dig.py","tests/test_dir.py","tests/test_last.py","tests/test_ls.py","tests/test_rpm_qai.py","tests/test_stat.py","tests/test_systeminfo.py","tests/test_upower.py","tests/test_utils.py","tests/test_who.py"]},"message":"update tests to set correct timezone on POSIX systems"},{"commit":"2c6f3993cb4c5e559dbac7a479ec889aa2cba752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/route.md","jc/man/jc.1.gz","jc/parsers/route.py","man/jc.1.gz"]},"message":"remove extra comma"},{"commit":"708a696920b52c2614edcdba264912527b2dfbef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":0,"deletions":2,"files":["docs/parsers/route.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"remove extra lines"},{"commit":"20bbb5d331575c8fc33ba63643882a62650c97b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/route.py"]},"message":"remove extra lines"},{"commit":"223e785b547d9376174efa15321d60a533847c57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/sfdisk.py"]},"message":"rename variable"},{"commit":"3d78692c59980e4d70361d3a9f74bacc3f21376e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":150,"deletions":1,"files":["tests/fixtures/centos-7.7/sfdisk-d-multi.json","tests/fixtures/centos-7.7/sfdisk-d-multi.out","tests/fixtures/centos-7.7/sfdisk-d.json","tests/fixtures/centos-7.7/sfdisk-d.out","tests/fixtures/centos-7.7/sfdisk-l-multi.json","tests/fixtures/centos-7.7/sfdisk-l-multi.out","tests/fixtures/centos-7.7/sfdisk-l.json","tests/fixtures/centos-7.7/sfdisk-luB.json","tests/fixtures/centos-7.7/sfdisk-luM.json","tests/fixtures/centos-7.7/sfdisk-luS.json","tests/test_sfdisk.py"]},"message":"add sfdisk tests"},{"commit":"5321a15dcf13cf14efe578d0f66b651078c3d8a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":8,"deletions":8,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"]},"message":"update examples"},{"commit":"a452f8252a593f7914ebece53af9d73f4fd11a19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"]},"message":"fix integer conversion"},{"commit":"49267f09ac01fead3b20b2d481bb5e0d07af1439","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/sfdisk.py"]},"message":"change to root prompt in examples"},{"commit":"db47f35783e46a8299533c22146d851509f6ceb2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":15,"insertions":610,"deletions":3,"files":["CHANGELOG","README.md","docs/parsers/sfdisk.md","jc/__init__.py","jc/cli.py","jc/man/jc.1.gz","jc/parsers/sfdisk.py","jc/utils.py","man/jc.1.gz","setup.py","tests/fixtures/centos-7.7/sfdisk-d.out","tests/fixtures/centos-7.7/sfdisk-l.out","tests/fixtures/centos-7.7/sfdisk-luB.out","tests/fixtures/centos-7.7/sfdisk-luM.out","tests/fixtures/centos-7.7/sfdisk-luS.out"]},"message":"add working sfdisk parser"},{"commit":"d48abf312c1f55ab31aa11da2b6cf6bc8166733b","merge":"ff7ab0a 3b22ce4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #147 from kellyjonbrazil/master\n\nsync to dev"},{"commit":"3b22ce41105387e7f46a410460cf04759feef197","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":6,"deletions":3,"files":["CHANGELOG","jc/__init__.py","jc/cli.py","jc/man/jc.1.gz","man/jc.1.gz","setup.py"]},"message":"fix local plugin parser issue where parser has .py in the name but it is not at the end"},{"commit":"c521ca5bc9e2b035cfef6ff65f6b303b3ec44296","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"change possible to available"},{"commit":"3ddc1c665990e1e732314330db214a81ab810fe9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"add jello"},{"commit":"a8e19402b7d1f9f06bc40b81a15dec401154180c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["ADVANCED_USAGE.md"]},"message":"remove temporary fix"},{"commit":"0927902b30654274743ab9092e90e768709a9937","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["ADVANCED_USAGE.md"]},"message":"temp fix for wrong url"},{"commit":"572548b42fb6ed9d32a392503d44fac1a8f146d3","merge":"95aec9c ff7ab0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #141 from kellyjonbrazil/dev\n\nDev v1.15.5"},{"commit":"ff7ab0a1ed7f468d0e84eb3bf0636f53913c490d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":0,"deletions":1,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc updates for v1.15.5"},{"commit":"5db71b05cb28691bbbaa5d668bcd4a4ac7e68b85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":3,"deletions":3,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template","templates/readme_template"]},"message":"add en_US.UTF-8 to LANG info"},{"commit":"f9b952885aa7f2b450786a08c3879d9e358886da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add python 3.9.5 packaged info"},{"commit":"e7983bc0b29abaca2147038dfad018cba1e67cdf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xml.md","docs/parsers/yaml.md"]},"message":"version bump"},{"commit":"473a6431425fc24a4cc83939ff592e0d49535b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":10,"deletions":3,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"]},"message":"add windows msi info"},{"commit":"14f3d442cb86250b8f2cdfd7977938634b8abd6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"formatting"},{"commit":"d6f4ed9ab55fe9b7c2766fb437172af62a1d5c87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/test_utils.py"]},"message":"add long-form UTC test"},{"commit":"1b8d654444ff8c8b8171c7ac63e2736447a36c09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add error message info"},{"commit":"6002af0dca334c0affaff3e9acdca416238c7d82","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/cli.py"]},"message":"add more error message detail to the user for ParseError and LibraryNotFound exceptions"},{"commit":"0924d822a30c8806f65574c010561cd6f7c8e181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":1,"files":["templates/readme_template"]},"message":"add windows example"},{"commit":"72a37b928924c3edde3a4edb952f98c94aa05f0b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"]},"message":"version bump"},{"commit":"5eef7bd769f8ffb03ba396833d1b33484041a99f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":16,"deletions":16,"files":["jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"use LibraryNotInstalled exception instead of exiting via sys.exit"},{"commit":"c6893e1bd5283d982a7ecd6f84bdfdd0054ce7a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/exceptions.py"]},"message":"add LibraryNotInstalled exception"},{"commit":"039f6612e491c6f821c001252e122e9b0a781104","merge":"9c57c09 95aec9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #139 from kellyjonbrazil/master\n\nsync branches"},{"commit":"95aec9c6f9aa8fb4d0dae227410a1346d550f47f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["templates/manpage_template"]},"message":"add info about Magic syntax not supporting shell builtins"},{"commit":"4e9652a8ec2482a64dc029b0ce0e1047a3e49867","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"spelling"},{"commit":"773b7f4b1f23e04c90e602aab05bc1a7e5aae37b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add space before exit code table"},{"commit":"d17ffde9cdc35392ae25d8e9de5328e46067df2a","merge":"efb1d3e 9c57c09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #138 from kellyjonbrazil/dev\n\nDev v1.15.4"},{"commit":"9c57c09c00e64a9031391b9b70083ad6ecf0bc0b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc update for release"},{"commit":"4d730a9de5a0d7c064a9a59e3add86e58d9ec492","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add UTC fix"},{"commit":"fc57bcfce24af23f077d6a73f1db4591d8f99c13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"]},"message":"fix for when UTC is referenced as \"Coordinated Universal Time\""},{"commit":"fa5571486c3c19bb7e836f043545ea4f2509ed4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":10,"files":["jc/cli.py"]},"message":"simplify json_out function"},{"commit":"9996c4fe23564dfb52e3c7dbdbd8bd67edfb1e95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":10,"deletions":10,"files":["EXAMPLES.md","docs/parsers/history.md","docs/parsers/jobs.md","jc/man/jc.1.gz","jc/parsers/history.py","jc/parsers/jobs.py","man/jc.1.gz"]},"message":"update docs for shell builtins"},{"commit":"038d4290248e6bb94762bb51f69e9958f7c1fecb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":6,"files":["docs/parsers/dig.md","docs/parsers/dir.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc updates"},{"commit":"9bf6facb0d7d76583802309253e7d13ba5148997","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":6,"files":["jc/parsers/dir.py"]},"message":"remove magic command capability since dir is a shell builtin"},{"commit":"965717886e4ebaa6a4a494f189d9fdd01e33eb21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add exceptions module info"},{"commit":"e9bfc3dd29f914fd91e937f06d7f59c0f91b8449","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["CHANGELOG"]},"message":"add time format, dig compatibility, windows colors fix"},{"commit":"f46b33eacf070b4dc72c8d8a66aae49abd149e5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/utils.py","tests/test_utils.py"]},"message":"add windows time format"},{"commit":"f475fe44df2fb2661c5bce4d1e602a4bba7e87c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"]},"message":"add new time format for systeminfo"},{"commit":"5fdbe2962d84dad89de23f103d97b76b90450206","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dig.py"]},"message":"make dig compatible with all platforms"},{"commit":"ab291b9eef6ed5c8ab59b5652f676178941d5ce5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"only force enable colors when running on windows"},{"commit":"fd411fd77273cb7cf872c03ed6a258ccdee4d261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"]},"message":"attempt to get colors working on windows"},{"commit":"b1e95a60a2461dc401ffc299ef6338b65ef12691","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/cli.py"]},"message":"remove unnecessary comment"},{"commit":"bb1439f0d53e87f636fba05fbd30c3c79fb16002","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["jc/parsers/uname.py"]},"message":"use ParseError exception from jc.exceptions module"},{"commit":"ba963d98a0a2b3a0dfca6b211096d802253da5fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/exceptions.py"]},"message":"add exceptions module including ParseError"},{"commit":"83440ccb55d0db15b112b8b7d7352493ff516112","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"error message capitalization"},{"commit":"796f61bfa417afdc6ab48fddbb5502cd0659b840","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":3,"files":["jc/cli.py"]},"message":"handle case where the user pipes data and uses magic syntax simultaneously"},{"commit":"070cac4ae12282458a1e1fc8618ebc473d23cacf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/cli.py"]},"message":"remove commented line"},{"commit":"3ed84f9f42e4e883ddaac28ab49d675600b49424","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/cli.py"]},"message":"reorganize main function. remove pass condition."},{"commit":"a205afb6f355edbb4b98200a980b9601ed0f0658","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"set run_command_str if run_command is set"},{"commit":"a6d983dd8f3871cbc2391c313340167829a575d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"move run_command_str variable"},{"commit":"b6c8d6d01d740827273265dbb0cfbaf7875ac7f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":45,"deletions":17,"files":["jc/cli.py"]},"message":"add exception handling for filenotfound or other subprocess.popen and json.dumps exceptions"},{"commit":"b5a5d5b133f1c0df8023776e59697b7579f8c18a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"set parser_name for magic syntax use"},{"commit":"da528e7814b0cf25a359c3556d0e286e7bf004b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"]},"message":"move separators to a variable"},{"commit":"4acebf4f621ac564f82e3a97e6810fbb08a9dbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/cli.py"]},"message":"move variables"},{"commit":"4d40808d2b70b7543eadcfd2d35c16ebe91f2f9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/cli.py"]},"message":"update comments"},{"commit":"c543f00bd3c737f73144bb2980d12793042459b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["jc/cli.py"]},"message":"simplify piped_output function"},{"commit":"947cf41dfab5811c0e76e371231c59a2d6372752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add exit code info"},{"commit":"8d8c58742e5106c3387a627cd1b1323a76cc9623","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":21,"deletions":15,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template","templates/readme_template"]},"message":"formatting"},{"commit":"995ecc9bfb0425b0ee9e4250395b0200b46c1e89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":15,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template"]},"message":"add exit codes section"},{"commit":"21a15225ebff645439b12d6249dc3e28d7bc09ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":18,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add exit codes section"},{"commit":"48921d4584068fadb0f776ed7e81c21d89172e2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"]},"message":"ensure exit code never exceeds 255"},{"commit":"342db45edc94ab1c3b3ae70e7cf4ca4076e2c7eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":10,"files":["jc/cli.py"]},"message":"fix combined exit codes"},{"commit":"5f88ecf8443bc6e9a7cda5bc60858f37cc09f4f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/cli.py"]},"message":"add comments to magic_parser return"},{"commit":"a56aebfe7024914d2c602278964b99d1443de335","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/cli.py"]},"message":"remove side-effect comment since it is no longer relevant"},{"commit":"422bb744a82472546d62c72ba05eaa1d18d5068a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]},"message":"update man pages"},{"commit":"c3b814a15f571ac84a8ce0719d7fd88acf814caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":4,"files":["jc/cli.py"]},"message":"move imports to the top"},{"commit":"e4574047a0ef6fcd4a47142421a1d05795c7925a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":21,"files":["tests/test_cli.py"]},"message":"update tests for magic_parser function"},{"commit":"0d7d7951f82627d1fb1e20d1398bd7f88c5ce1be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/cli.py"]},"message":"don't reset sys.argv anymore. check for 'valid_command' instead"},{"commit":"da904e4770a20ae85fc67476ae4a529564d0a3ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"remove final \\n from stderr string when printing"},{"commit":"19b540041add64fe6650c3634ec869421ffbc769","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":82,"deletions":51,"files":["jc/cli.py"]},"message":"proof of concept for passing command exit codes when using magic syntax. Needs more testing"},{"commit":"f2ffb93eeaf4c8b5aa93f3e8808bdc044582e8a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":10,"files":["tests/test_ping.py"]},"message":"formatting"},{"commit":"c0c0e05642e0f473cde34178d815978fff8fe1ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add dig `+noall +answer` support"},{"commit":"966978f17e40a338f982628825f30a19d4b84e4c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":72,"deletions":0,"files":[".../centos-7.7/ping6-ip-O-p-unparsable.json",".../centos-7.7/ping6-ip-O-p-unparsable.out",".../fixtures/osx-10.14.6/ping6-ip-unparsable.json","tests/fixtures/osx-10.14.6/ping6-ip-unparsable.out","tests/test_ping.py"]},"message":"add more unparsable line ping tests"},{"commit":"8ab08a5231e082940a62fcde4be218b7ba94be31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"doc update"},{"commit":"48e534fa03b92b2583c5c6269c76651f3aa420cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":17,"deletions":2,"files":["tests/fixtures/osx-10.14.6/dig-noall-answer.json","tests/fixtures/osx-10.14.6/dig-noall-answer.out","tests/test_dig.py"]},"message":"add +noall +answer test"},{"commit":"61851c1bd02aa82d5d82e68595e45630ead13d34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":85,"deletions":3,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"add support for +noall +answer"},{"commit":"3c51b2d83d301b4072bbb12fdba4f60b900573da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":40,"deletions":0,"files":[".../centos-7.7/ping-ip-O-unparsedlines.json",".../centos-7.7/ping-ip-O-unparsedlines.out","tests/test_ping.py"]},"message":"add tests for unparsable lines on linux"},{"commit":"ee3a28528e152c61f05bdf71f264fe38274b4190","merge":"fe1f101 916bcda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev\n\n# Conflicts:\n# templates/readme_template"},{"commit":"916bcdae3881fc9c9f9a91c8c901a714cff3e1da","merge":"fb14f54 efb1d3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #136 from kellyjonbrazil/master\n\nmerge changes from master"},{"commit":"efb1d3e6b2db920423511a9dcf4c5e5fd9d6af43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"add blog title and minor formatting"},{"commit":"4e6ae66bacc014e49c4a9229d10dcc8e95de436c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"5ee88e7b679bc163a1916d560be6ff29f51699e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["README.md"]},"message":"add use cases section"},{"commit":"c3b68903cbd898f80438af342195eec7575aafd3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["templates/readme_template"]},"message":"add use cases section"},{"commit":"fe1f1013a74bdf6b4284f11dd59db8ea17e5e5d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["templates/readme_template"]},"message":"add use cases section"},{"commit":"fb14f5439f00d5eaf08651c552189fd4be7358d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":52,"deletions":3,"files":["jc/parsers/ping.py",".../osx-10.14.6/ping-ip-unknown-errors.json",".../osx-10.14.6/ping-ip-unknown-errors.out","tests/test_ping.py"]},"message":"fix and tests for unknown or unparsable errors"},{"commit":"5ca0fc364eb22d583bee5633cdd7183c1d70bb6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/parsers/ping.md"]},"message":"add unparsed_line to docs"},{"commit":"a1fe7037e5267ec4aced719eff3715085eb35bca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["jc/parsers/ping.py"]},"message":"add unparsed_line field if line cannot be parsed"},{"commit":"c2af7d113ed8e8cf9af985c969cf29858a3c26a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["CHANGELOG","docs/parsers/ping.md"]},"message":"add ping updates"},{"commit":"ff034e401d5c33efbc3c4bc2f0e386d81eaae7fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":59,"deletions":43,"files":["jc/parsers/ping.py"]},"message":"use try/except to make parser more resilient against unknown error types"},{"commit":"5abe095beb4b668e5f55fe8c9588677547e4c2a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":3,"files":["docs/parsers/ping.md"]},"message":"update ping docs"},{"commit":"33de5f01e638953c83bb0960dc3550ca4547849b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["jc/__init__.py","setup.py"]},"message":"version bump"},{"commit":"8ce155d843806be4ad23491b4401e4eda02e2a1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":86,"deletions":23,"files":["CHANGELOG","jc/parsers/ping.py",".../fixtures/osx-10.14.6/ping-ip-unreachable.json","tests/fixtures/osx-10.14.6/ping-ip-unreachable.out","tests/test_ping.py"]},"message":"add support for error replies in v4 ping on osx and bsd"},{"commit":"b921d5ec9583c8f8e992613ae2eaf62165722054","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":105,"deletions":6,"files":["jc/parsers/ping.py"]},"message":"initial support for error replies in bsd/osx"},{"commit":"e21542aaa2aa5f2f287ddc227df41ae47d761332","merge":"d24f9a8 6150aae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #135 from kellyjonbrazil/dev\n\nDev clarify packaged binaries in readme"},{"commit":"6150aae0aeabafba26d9f119406b0660d9221cb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"clarify packaged binaries"},{"commit":"f27b35f37104ad2012c3bddde0bd94941af06894","merge":"bd428a9 d24f9a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #131 from kellyjonbrazil/master\n\nsync branches"},{"commit":"d24f9a885d3954035a98a488671486408f509dca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["CONTRIBUTING.md","README.md","templates/readme_template"]},"message":"fix contributing link"},{"commit":"48dd82c8d1b756c4e08d49b8234b8060080dc035","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"trigger page build on github pages"},{"commit":"e57167ad1f240de6ec5fc86c51cfb780535cd783","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","message":"empty commit"},{"commit":"ada91376426ff359c495fb31081404a2cce72b5f","merge":"0c209db bd428a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #130 from kellyjonbrazil/dev\n\nDev link updates"},{"commit":"bd428a9fd75327710dce96f3c95f74ab9d1beaad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"fix link"},{"commit":"934941332f91d9e2cc4e691b154bb5427166ed30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","templates/readme_template"]},"message":"minor link updates"},{"commit":"0c209dbd108638f89a43801126a332379be9ae8b","merge":"92e2252 56e041a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #129 from kellyjonbrazil/dev\n\nDev update readme"},{"commit":"56e041aa260b2daf2f5662fae98645a93137adb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add Practical JSON at the Command Line blog link"},{"commit":"cf9d48582e4e5df6c8498b916a2f9cf036869f3d","merge":"35464bb 92e2252","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #128 from kellyjonbrazil/master\n\nsync branches"},{"commit":"92e2252bee00482bb0eeae3074b107d4c8553e4c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"fix typo"},{"commit":"fd7861db11e5aaa17c4e7bbce942c0c096116e30","merge":"fcc7e52 35464bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #127 from kellyjonbrazil/dev\n\nDev v1.15.3"},{"commit":"35464bbbfb6b424ef3ee1c855557ada1bf3769fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"date update"},{"commit":"db8ddd7f0e0c2a8bd3e545619e81d3d3972a4d7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":11,"deletions":17,"files":["jc/man/jc.1.gz","jc/parsers/ufw.py","man/jc.1.gz","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json"]},"message":"fix for scenarios where the default port range didn't always display, or overrode existing port ranges."},{"commit":"72207c54ee5734e3d2d3d1a063c8daf1edaa8815","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":102,"deletions":94,"files":["docs/parsers/ufw_appinfo.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"update ufw app info docs to support multiple apps (ufw app info all)"},{"commit":"a683f68003ea64dd5e2c4f06b53a1561ad774f12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":285,"deletions":202,"files":["EXAMPLES.md","jc/parsers/ufw_appinfo.py","tests/fixtures/generic/ufw-appinfo-msn.json","tests/fixtures/generic/ufw-appinfo-test.json","tests/fixtures/generic/ufw-appinfo-test2.json","tests/fixtures/generic/ufw-appinfo-test3.json","tests/fixtures/ubuntu-18.04/ufw-appinfo-all.json","tests/fixtures/ubuntu-18.04/ufw-appinfo-all.out","tests/test_ufw_appinfo.py"]},"message":"change schema to a list of dictionaries to support `ufw app info all` use case"},{"commit":"8d2d3db3fa969456342181a226bf54a3f1613542","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":0,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"]},"message":"formatting"},{"commit":"eca785450d1c72687817d09259fa7cd33376fafc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":34,"deletions":13,"files":["CHANGELOG","README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"]},"message":"add caveats to readme and manpage"},{"commit":"5b40a97ce417687b4e37f320b8a3f07dd7fd169c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":13,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template"]},"message":"add caveats to man page"},{"commit":"66cb4e9bde81b9290c1addaf851de5d80a1b0702","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":216,"deletions":234,"files":["EXAMPLES.md","docs/parsers/ufw.md","jc/man/jc.1.gz","jc/parsers/ufw.py","man/jc.1.gz"]},"message":"update ufw parser docs"},{"commit":"d1f33645caccdb3a55576081c4d355f997ac033c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":26,"deletions":10,"files":["tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw-numbered2.json","tests/fixtures/generic/ufw.json","tests/fixtures/ubuntu-18.04/ufw-numbered.json","tests/fixtures/ubuntu-18.04/ufw-numbered.out","tests/fixtures/ubuntu-18.04/ufw-verbose.json","tests/fixtures/ubuntu-18.04/ufw-verbose.out"]},"message":"update ufw tests"},{"commit":"5eff65c326675a449afd05a2af0a6c9bcf7b5e23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":85,"deletions":268,"files":["jc/parsers/ufw.py"]},"message":"update schema to support port lists and port range lists. Also support other transports than tcp and udp"},{"commit":"929c38715d87bf9dd689507d319c22b90871ae1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"formatting"},{"commit":"8c91a7b7601a967cd9d8096433ffd4ad62b65ceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CONTRIBUTING.md"]},"message":"formatting"},{"commit":"14289ecd6c022ad204444dff5b5e48f6024a5d0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"more timezone info"},{"commit":"b833c44783eb32f2fad24ca205b5b7eab854750f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add ufw-appinfo parser"},{"commit":"e23aa818eaa6d1a389ddef7dd2ad8f62b9f6ff25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"add tests section and timezone info"},{"commit":"473d919c1350a8dc34d233033a5a7d12c928e42d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":32,"deletions":0,"files":["runtests.sh","tests/fixtures/generic/ufw-numbered2.json","tests/fixtures/generic/ufw-numbered2.out","tests/test_ufw.py"]},"message":"add another ufw test sample"},{"commit":"9f925d6ac989a4f21a8c00c84fcf97dfb141e8c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc update"},{"commit":"f6ca32b3a31f314fa0b31d9e8b5494491b928f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/ufw.md","jc/parsers/ufw.py"]},"message":"update ufw docs with a note on lists of ports"},{"commit":"4cbe84c3d6ac8a3b594feb525460f2a68f5d62b2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":110,"deletions":0,"files":["tests/fixtures/generic/ufw-appinfo-msn.json","tests/fixtures/generic/ufw-appinfo-msn.out","tests/fixtures/generic/ufw-appinfo-test.json","tests/fixtures/generic/ufw-appinfo-test.out","tests/fixtures/generic/ufw-appinfo-test2.json","tests/fixtures/generic/ufw-appinfo-test2.out","tests/fixtures/generic/ufw-appinfo-test3.json","tests/fixtures/generic/ufw-appinfo-test3.out","tests/test_ufw_appinfo.py"]},"message":"add ufw-appinfo tests"},{"commit":"ffac5bf9d381305daa86e546f8570be092e5ff34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":12,"deletions":12,"files":["docs/parsers/ufw.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc update"},{"commit":"9aa424f9f8c7e4e0dc29e2c58dac481098beba7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["EXAMPLES.md"]},"message":"fix ufw example"},{"commit":"0a8495c68e427e39bbda957dd933fa2a461092e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":15,"files":["jc/parsers/ufw.py"]},"message":"update docs"},{"commit":"6aea066cf024f92adf4b94eebc7d51430c22332c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/ufw_appinfo.py"]},"message":"make normalized list appear only when data exists. set magic commands"},{"commit":"ff3c2d809ec3ea6e556c302909a228ee670578c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":176,"deletions":25,"files":["EXAMPLES.md","README.md","docs/parsers/ufw_appinfo.md","jc/man/jc.1.gz","jc/parsers/ufw_appinfo.py","man/jc.1.gz"]},"message":"add ufw-appinfo to docs"},{"commit":"145059fc8946b7026184139baea143c2869bc4e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":8,"files":["jc/parsers/ufw_appinfo.py"]},"message":"clean up output if sections are blank"},{"commit":"20e5c19de448c1b979497817c887d8d2d6487839","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/ufw_appinfo.py"]},"message":"fix key error if tcp or udp don't exist"},{"commit":"4c98fd4b877c54e1cf7d285a29e178321be12f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":101,"deletions":1,"files":["docs/parsers/ufw_appinfo.md","jc/parsers/ufw_appinfo.py"]},"message":"doc update"},{"commit":"125e54213e8d4dcfe2e3271456af80b3f79c0544","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":105,"deletions":48,"files":["jc/parsers/ufw_appinfo.py"]},"message":"update schema and add normalized fields"},{"commit":"0152e0665f87833250561d743144af35416992f8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":215,"deletions":0,"files":["jc/cli.py","jc/parsers/ufw_appinfo.py"]},"message":"initial working ufw-appinfo parser"},{"commit":"0679bcbc560ea3575555d8546afdd4e2474d05d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":31,"deletions":5,"files":["tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json","tests/fixtures/ubuntu-18.04/ufw-numbered.json","tests/fixtures/ubuntu-18.04/ufw-verbose.json","tests/test_ufw.py"]},"message":"fix ufw tests"},{"commit":"5500648aa0886ea5089856e5b33d7c8ebd78d5b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":46,"deletions":46,"files":["EXAMPLES.md","docs/parsers/ufw.md","jc/parsers/ufw.py"]},"message":"fix ufw docs for int conversions and service behavior"},{"commit":"bb50caad4dfaefa309e747fd05b650186c5a80f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":31,"deletions":4,"files":["jc/parsers/ufw.py","tests/fixtures/ubuntu-18.04/ufw-numbered.out","tests/fixtures/ubuntu-18.04/ufw-verbose.out"]},"message":"fix prefix int conversions. don't reset _transport if service is really a list of ports"},{"commit":"7eef5d94d591a3f70f6638b1b30f952a3bf35f9d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":0,"files":["EXAMPLES.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"ufw doc update"},{"commit":"74f623f8d607c050db8f62ea4996c4e6aae43268","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":43,"deletions":11,"files":["docs/parsers/ufw.md","jc/parsers/ufw.py","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json","tests/fixtures/generic/ufw.out"]},"message":"add support for rule comments and LIMIT and REJECT actions"},{"commit":"f638aca092475bbae14fed765e90435c093fcb8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add deb package name fix"},{"commit":"da35eaf80ad4f11e7482fc4734db4b2265e50548","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["docs/parsers/ufw.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"formatting"},{"commit":"ade0e8e8fc18ff9a0dd406206a85238f1f5a739d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":107,"deletions":0,"files":["tests/fixtures/generic/ufw-inactive.json","tests/fixtures/generic/ufw-inactive.out","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw-numbered.out","tests/fixtures/generic/ufw.json","tests/fixtures/generic/ufw.out","tests/test_ufw.py"]},"message":"add ufw tests"},{"commit":"90076090f05a1f03e2fbff307418ee18d7d046ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":5,"files":["jc/parsers/ufw.py"]},"message":"fix int conversions if 'rules' key does not exist"},{"commit":"23635def8b654097178f73ed1b57fc50965142d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":306,"deletions":4,"files":["README.md","docs/parsers/ping.md","docs/parsers/ufw.md","docs/utils.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"add ufw to docs"},{"commit":"4eeec087bde98f90ab8425473d1fbeee6834852e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":115,"deletions":0,"files":["EXAMPLES.md"]},"message":"add ufw example"},{"commit":"733196103897a1d84d242324ddcf96e783320329","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/ufw.py"]},"message":"update docs with new examples that have `to_service` always existing."},{"commit":"e4acb3d5b70a7d75741ef3e35cd6750d1362a80f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/ufw.py"]},"message":"always make to/from_service None if ports are assigned"},{"commit":"c60549a9947d5684bbfa58223bfbcfc40a3ed479","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":29,"deletions":29,"files":["jc/parsers/ufw.py"]},"message":"change field name from to/from_subnet to to/from_ip_prefix"},{"commit":"d46fc8bbfa15a80a1af6c64f70230f858c215223","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/parsers/ufw.py"]},"message":"set to/from_transport to None if to/from_service is set"},{"commit":"b133d1f90d49362594508d8c475663754f0e7675","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/ufw.py"]},"message":"strip interface value"},{"commit":"5be615a97e7c145c8351764234ac591028560c34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":219,"deletions":9,"files":["jc/parsers/ufw.py"]},"message":"add examples for docs"},{"commit":"ea1d820f96321ddf4084b54ee2fdf397295beb21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/parsers/ufw.py"]},"message":"convert integer fields"},{"commit":"47e262cf7200b02ff0af97a70ffa6bec286c8f39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":59,"deletions":14,"files":["jc/parsers/ufw.py"]},"message":"clean up fields"},{"commit":"eec673be9092e382694aa02682564510ce4e7f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":88,"deletions":3,"files":["jc/parsers/ufw.py"]},"message":"working raw parser"},{"commit":"9a0fb2a7c87e6fde0cc0d84fa8a1f131e28ea732","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":157,"deletions":0,"files":["jc/parsers/ufw.py"]},"message":"parse major sections"},{"commit":"b5145d6c14d7a51e7cfdebe126c9689dc90f7b27","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":8,"deletions":4,"files":["CHANGELOG","jc/__init__.py","jc/cli.py","setup.py"]},"message":"version bump to v1.15.3"},{"commit":"9747ca414dfb8218389c7b2199a080edabc2a184","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/utils.py"]},"message":"minor optimization to convert_to_int(). No longer runs through convert_to_float(), but uses standard float() function."},{"commit":"312d465b61a15592cc70d3734ad747b9a2be10ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"]},"message":"update link"},{"commit":"7dcf87d24ad40eba6ba98de2b4b2bf177a76cd71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping.py"]},"message":"formatting"},{"commit":"cf3cfd16a9de05f30303b5952fbe609cde842d2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_utils.py"]},"message":"rename tests"},{"commit":"fcc7e5294973d1a18943fa2ce2e836b0fe757d95","merge":"6c83846 3ab9d48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #123 from kellyjonbrazil/dev\n\nDev v1.15.2"},{"commit":"3ab9d480149a692510ab9e0ac8e745b674683e3d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CHANGELOG"]},"message":"update changelog"},{"commit":"7eddf41c5f6310264359cd6d78bdfa4b65af7d06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":96,"deletions":9,"files":["jc/man/jc.1.gz","jc/utils.py","man/jc.1.gz","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/df.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/free-h.json","tests/test_utils.py"]},"message":"dont round up int conversions and fix tests"},{"commit":"27a196c93862bd737603cfe402b35529eb412954","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc update"},{"commit":"e4324f05fb6f89c34fa1567e70d8636457623edb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":14,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"fix indentation in doc"},{"commit":"d36b332bd78b5bf5979cdc59b31da08d8e4104d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":53,"insertions":196,"deletions":274,"files":["docs/parsers/systemctl_lj.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/wc.md","docs/parsers/who.md","docs/utils.md","jc/parsers/acpi.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/hash.py","jc/parsers/hciconfig.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl_lj.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/utils.py"]},"message":"use jc.utils for conversions"},{"commit":"1f034826f69c461495f7a302cc8fe35e3052e72f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":42,"insertions":94,"deletions":185,"files":["docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","tests/fixtures/centos-7.7/ls-alh.json","tests/fixtures/centos-7.7/lsof-sudo.json","tests/fixtures/centos-7.7/lsof.json","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/ubuntu-18.04/ls-alh.json","tests/fixtures/ubuntu-18.04/lsof-sudo.json","tests/fixtures/ubuntu-18.04/lsof.json"]},"message":"use jc.utils for conversions"},{"commit":"246c707c98d3128b4e38f5c4b23a1e0ceedc0b0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":46,"insertions":190,"deletions":196,"files":["CHANGELOG","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/df.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/hash.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/utils.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/hash.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/utils.py","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/osx-10.11.6/df-h.json","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/free-h.json"]},"message":"use jc.utils conversions"},{"commit":"b5d8968144e76090870f8563dc1bce910fba668c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":0,"files":["jc/utils.py"]},"message":"add convert_to_int function"},{"commit":"f7b9fbefdde6973077573fec02342eb9946789c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add query_size info for dig"},{"commit":"b1fc4533833ca25f59869bfec8ac114bf49c7847","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"]},"message":"fix _IfconfigParser name"},{"commit":"7581c8d0f4262fc6a05240bb21ffe533b153f6e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":45,"deletions":32,"files":["docs/parsers/dig.md","jc/parsers/dig.py","tests/fixtures/generic/dig-edns3.json"]},"message":"add query_size field. handle user-specified dig output better - especially when querying dnssec"},{"commit":"32bf8ad6f4fff83fdfd83d66c1ba8f1af5a65a90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":52,"deletions":24,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"update dig docs"},{"commit":"b083bcc10fa1105fc09ce8d2c3297aa5575c9d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]},"message":"update man page"},{"commit":"4f6fdd120d23468270c1d7111e4ef71b87759a1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":134,"deletions":100,"files":["docs/readme.md","jc/__init__.py"]},"message":"use dig as example"},{"commit":"eb0038be2490053d32803d30e1c3d4d34509d130","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":40,"deletions":19,"files":["EXAMPLES.md"]},"message":"update dig examples"},{"commit":"7ecdf819fa37c38ae6159ad8e7bc973ee4f34559","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":84,"files":["README.md","templates/readme_template"]},"message":"remove dig example from readme,"},{"commit":"c6aa4d083550d25bcb621cad524047cfd6a08217","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":252,"deletions":317,"files":["README.md","docs/parsers/dig.md","jc/man/jc.1.gz","jc/parsers/dig.py","man/jc.1.gz","templates/readme_template"]},"message":"update docs with new dig parser examples"},{"commit":"7c584b89a6e6b924d53d50103b97f0c2405c33b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":15,"insertions":352,"deletions":52,"files":["jc/parsers/dig.py","tests/fixtures/generic/dig-additional.json","tests/fixtures/generic/dig-additional.out","tests/fixtures/generic/dig-additional2.json","tests/fixtures/generic/dig-additional2.out","tests/fixtures/generic/dig-additional3.json","tests/fixtures/generic/dig-additional3.out","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/generic/dig-edns.json","tests/fixtures/generic/dig-edns.out","tests/fixtures/generic/dig-edns2.json","tests/fixtures/generic/dig-edns2.out","tests/fixtures/generic/dig-edns3.json","tests/fixtures/generic/dig-edns3.out","tests/test_dig.py"]},"message":"add additional section"},{"commit":"c166c0bfdafa922f57f021fa4d16e467fca02d58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":14,"insertions":55,"deletions":21,"files":["jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json"]},"message":"add opt_pseudosection section to output and fix existing tests"},{"commit":"a8dd3f7802bfe8fd3ffbedf89af45ddc580ee78d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":54,"deletions":281,"files":["CHANGELOG","jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-axfr.json"]},"message":"working dig axfr fixes"},{"commit":"3b0e2f03f3b11398ff57b1daed542faaf0b80a62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":24,"deletions":23,"files":["jc/cli.py","templates/manpage_template"]},"message":"clean up examples"},{"commit":"8390ae48c88ab1c7d5acbf40c0e60606953817bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":8,"deletions":8,"files":["jc/parsers/dig.py","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json"]},"message":"fix server entry when IPv6 address is in value (maxsplit on colons)"},{"commit":"2db82c0a7e19d596c876ede8a8ff106aaa733ee5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":66,"deletions":0,"files":["EXAMPLES.md"]},"message":"add systeminfo example"},{"commit":"61479540756704f10853233300ceae8f954a8a95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":0,"files":["tests/test_systeminfo.py","tests/test_utils.py"]},"message":"update tests"},{"commit":"691df271fcfe057ae4b75ad40869e23deb37b886","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":1,"files":["docs/parsers/systeminfo.md","jc/man/jc.1.gz","jc/parsers/systeminfo.py","man/jc.1.gz"]},"message":"add info docstring"},{"commit":"89f52b95f7055da9d7b5fa8dce0923d4c3435bd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":467,"deletions":821,"files":["README.md","docs/parsers/systeminfo.md","jc/man/jc.1.gz","jc/parsers/systeminfo.py","jc/utils.py","man/jc.1.gz",".../windows/windows-10/systeminfo-hyperv-utc.json",".../windows/windows-10/systeminfo-hyperv-utc.out",".../windows/windows-10/systeminfo-hyperv.json","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-10/systeminfo.out",".../windows/windows-2012r2/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"]},"message":"update systeminfo parser with updated timestamps, normalized blank fields, and new doc style"},{"commit":"146acc1bf69c402e38c2f1bc842b84e6cff7e2cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":29,"files":["jc/parsers/systeminfo.py"]},"message":"rename functions to make them private"},{"commit":"c4a345f59aa090336b4e80f181493cd5bc2c17c5","merge":"dfd2703 325fab2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #106 from jon-rd/j/systeminfo\n\nAdd windows systeminfo command parser"},{"commit":"dfd2703f75b907ba865fff266d0742d8931bc2d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"]},"message":"bump dev to v1.15.2"},{"commit":"325fab2de7b8a4bfc452ab8d3cf333d47fdf4989","author":"Jon Smith","author_email":"jon@rebelliondefense.com","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/systeminfo.py"]},"message":"update documentation for parsed structures"},{"commit":"f3d00cf38ad15aeda7eaa5644ebc30ff33de6a29","author":"Jon Smith","author_email":"jon@rebelliondefense.com","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","stats":{"files_changed":5,"insertions":56,"deletions":48,"files":["jc/parsers/systeminfo.py",".../windows/windows-10/systeminfo-hyperv.json","tests/fixtures/windows/windows-10/systeminfo.json",".../windows/windows-2012r2/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"]},"message":"append mb to memory key names; adjust expected timestamps to utc tz"},{"commit":"14838f7f5d780896f1318cac2c3f34d249a158d4","author":"Jon Smith","author_email":"jon@rebelliondefense.com","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","stats":{"files_changed":9,"insertions":956,"deletions":116,"files":["jc/parsers/systeminfo.py","jc/utils.py",".../windows/windows-10/systeminfo-hyperv.json",".../windows/windows-10/systeminfo-hyperv.out","tests/fixtures/windows/windows-10/systeminfo.json",".../windows/windows-2012r2/systeminfo.json",".../fixtures/windows/windows-2012r2/systeminfo.out","tests/fixtures/windows/windows-7/systeminfo.json","tests/test_systeminfo.py"]},"message":"update schema with nic, hyperv, and process changes"},{"commit":"af74047b81776c2ea32d82f9145ab60c346c8203","author":"Jon Smith","author_email":"jon@rebelliondefense.com","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/systeminfo.py"]},"message":"update schema based on processor/hotfix changes"},{"commit":"660c59129cf4ba7889fb3c6fbafd9dd9b479ccd9","author":"Jon Smith","author_email":"jon@rebelliondefense.com","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","stats":{"files_changed":3,"insertions":41,"deletions":9,"files":["jc/parsers/systeminfo.py","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"]},"message":"Add parsing of processors/hotfixs"},{"commit":"89a88e186ed71d84ea802cf08ab756b49cee3225","author":"Jon Smith","author_email":"jon@rebelliondefense.com","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","stats":{"files_changed":1,"insertions":152,"deletions":0,"files":["docs/parsers/systeminfo.md"]},"message":"Add systeminfo.md file"},{"commit":"f861cf95b96a224a0a11f2cdc3261b94c02415ef","author":"Jon Smith","author_email":"jon@rebelliondefense.com","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["jc/cli.py","jc/parsers/systeminfo.py"]},"message":"Change to v0.5; add parser to cli.py; add to docgen"},{"commit":"ee8f06cbdb03f8254bb6a3c56fa5b8a64ff9ca77","author":"Jon Smith","author_email":"jon@rebelliondefense.com","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","stats":{"files_changed":6,"insertions":688,"deletions":0,"files":["jc/parsers/systeminfo.py","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-10/systeminfo.out","tests/fixtures/windows/windows-7/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.out","tests/test_systeminfo.py"]},"message":"Add windows systeminfo command parser"},{"commit":"a2e8b3c7b681605916b8950d035ee19889a125a5","merge":"e0681ee 6c83846","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #121 from kellyjonbrazil/master\n\nMerge pull request #120 from kellyjonbrazil/dev"},{"commit":"6c838460752c7131f75cdab2da07266fee492060","merge":"10292f7 e0681ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #120 from kellyjonbrazil/dev\n\nDev v1.15.1"},{"commit":"e0681eebb9881dc0ffddb478224455f434919104","merge":"e5732d1 10292f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge branch 'master' into dev"},{"commit":"e5732d1cea1c882f6486cf288e45edb993989ea0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"update changelog"},{"commit":"6e7ae3cd3f003fe9e1e587b7f8ebd16ba0895014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/timedatectl.md","jc/man/jc.1.gz","jc/parsers/timedatectl.py","man/jc.1.gz"]},"message":"formatting of timedatectl docs"},{"commit":"f95632d1aaee545ae0ce081ca0617be135c09220","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":83,"deletions":62,"files":["EXAMPLES.md","docs/parsers/rpm_qi.md","jc/man/jc.1.gz","jc/parsers/rpm_qi.py","man/jc.1.gz","tests/fixtures/centos-7.7/rpm-qai.json","tests/fixtures/centos-7.7/rpm-qi-package.json"]},"message":"add install_date calculated fields"},{"commit":"2f8b7b26e59bcd745fa1fcadb373455c7d404286","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":2,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"update docs for v1.15.1"},{"commit":"10292f7502e4cb1c53b53ed39fed9288044c2ef8","merge":"37a3565 aef5470","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #119 from kellyjonbrazil/dpkg_l-fix\n\nadd _l to module name"},{"commit":"aef54705f5267c633e0778e8dce0065978083139","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["docs/parsers/dpkg_l.md"]},"message":"add _l to module name"},{"commit":"bba5980fa53767716bc35d8c904e7a2341346eeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]},"message":"man page update"},{"commit":"977425abfb05a63ee372df36124ac6ba6a5a0aaa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"]},"message":"add _l to package name in docs"},{"commit":"37a3565a1bbd3d01663602673fed651509e69d8c","merge":"bdcdaee 13deb8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #118 from kellyjonbrazil/rpm-qi-doc-fix\n\nfix rpm-qi docs"},{"commit":"13deb8bfb6e77aaf86942f0be87b59d06ee2a97c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":194,"files":["docs/parsers/rpm_qai.md","docs/parsers/rpm_qi.md"]},"message":"fix rpm-qi docs"},{"commit":"a3ed9d075aff41599452c3094f7d057c25fc8f89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":191,"files":["docs/parsers/rpm_qai.md"]},"message":"remove old parser doc"},{"commit":"fb0ced549e021916dee7da39859e8f85c8216e16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":6,"deletions":6,"files":["docs/parsers/rpm_qi.md","jc/man/jc.1.gz","jc/parsers/rpm_qi.py","man/jc.1.gz"]},"message":"fix rpm-qi docs (used underscore instead of dash in name)"},{"commit":"7eb31bc7d290fcd09e53524ebbb11e59110df6a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":39,"deletions":48,"files":["docs/parsers/airport_s.md","jc/man/jc.1.gz","jc/parsers/airport_s.py","man/jc.1.gz"]},"message":"update airport_s docs"},{"commit":"6a06a3914273853742ac57433398968ccf7d9897","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["docgen.sh"]},"message":"use herestring instead of echo -e into jq"},{"commit":"bdcdaee6c5299ea0750512e0943c7f58f56f2e35","merge":"5d8f836 605353f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #117 from kellyjonbrazil/doc_update\n\nadd new docs"},{"commit":"605353fdce3b8b5986d20a35d05f7210a6df0730","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":70,"insertions":1710,"deletions":2656,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md"]},"message":"add new docs"},{"commit":"490c9e17699e8e4f70dcc1612e1a808f86e24b0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["tests/test_cli.py"]},"message":"add more cli tests for magic command"},{"commit":"6ebebb659dc93daeaa869752ad135f6e1d2cb1ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"]},"message":"update changelog"},{"commit":"0e70c5ee12e96f04a89de05153a2da9cd39f98ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"update documentation link"},{"commit":"cd531acf6045660e022c932f62a01d4084433ad4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["docgen.sh"]},"message":"clean up comment"},{"commit":"908ac1f61c5cc011d05d550f933940dfed4431f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":143,"insertions":0,"deletions":690,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/man/jc.1.gz","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","man/jc.1.gz"]},"message":"update docs - remove compatibility section since it is now automatically generated from info()"},{"commit":"f5c7e7e4046bc57b4fcad99390e31b121a7106ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":70,"insertions":350,"deletions":0,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md"]},"message":"add updated docs with home link and parser info at the bottom"},{"commit":"001c700b5bd280cb1cb9e54169ae5f1b7918c257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":2,"deletions":1,"files":["docgen.sh","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"add home link to the top of the md file"},{"commit":"9b41e9bef0ff099e70f37fddc8fe2c6bd8457b19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"]},"message":"Add parser information header"},{"commit":"34bd6e32dc0c0bf7dfeedaadbf04115f43e9d060","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":4,"files":["docgen.sh"]},"message":"pull each parser as a json object into a bash array and iterate on it to add supplementary information like version, author, and compatibility"},{"commit":"c5d058490beaa8f59875a8acfd7a400764768639","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":22,"deletions":13,"files":["jc/cli.py"]},"message":"move parser doc printing to its own function"},{"commit":"dd1ae6d9a7de5421830232deb42d933b9a652672","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":3,"deletions":1,"files":["MANIFEST.in","jc/man/jc.1.gz","man/jc.1.gz","mangen.py"]},"message":"add man page inside the pypi package for easier packaging in homebrew"},{"commit":"d8ea9bde823a7f5c146741150c3211737345c7dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":16,"deletions":16,"files":["docs/parsers/w.md","jc/parsers/w.py","man/jc.1.gz"]},"message":"doc update"},{"commit":"125edc9c906dc3650b6a683ed13830075acb7ab6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"bail out for -h, -a, and -v in magic()"},{"commit":"15ea43e394a9004f8ccec208b3a066c76e241866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["MANIFEST.in"]},"message":"add man file to package for easier packaging in homebrew"},{"commit":"b55b02687c00d1c50e30f30c9b9a7f36f783eb0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":19,"insertions":371,"deletions":441,"files":["CHANGELOG","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","man/jc.1.gz","setup.py"]},"message":"doc update"},{"commit":"da611f0ac6321f7f52fdbc419f8b155c74393c28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":63,"deletions":50,"files":["jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","man/jc.1.gz"]},"message":"update docs"},{"commit":"b8b8dfead4fdc4285585c44c2ebce3bdd42b2e7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":61,"insertions":1501,"deletions":1848,"files":["docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py"]},"message":"update docs"},{"commit":"4290a3cbd135cacbf63664dc30768017ebbed28d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":9,"files":["docs/parsers/ifconfig.md","jc/parsers/ifconfig.py"]},"message":"make IfconfigParser class private"},{"commit":"a5e2203cee6a7bc398cf280f57d37638eeb1d2d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":2,"deletions":1,"files":["docs/parsers/ifconfig.md","jc/parsers/ifconfig.py","man/jc.1.gz"]},"message":"update ifconfig doc"},{"commit":"e28c08b1361161cfd123b9ebc11fa1ffa87d658f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":46,"insertions":976,"deletions":1209,"files":["docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","man/jc.1.gz"]},"message":"update documentation"},{"commit":"a4b6846f63b43168085275d73940265940badf46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":467,"files":["man/jc.1","man/jc.1.gz"]},"message":"man update"},{"commit":"2bc830786114fd57619f34b936dcf6e0bed7a109","merge":"9b39917 5d8f836","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'master' into dev\n\n# Conflicts:\n# man/jc.1"},{"commit":"9b39917c798ed0310c9b82d87172cbf6d24ba111","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":17,"insertions":391,"deletions":453,"files":["README.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","jc/cli.py","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"update docstrings for new help functionality"},{"commit":"57c13cc0a38ad89fda8b0e362bd6487257d0a26a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":3,"files":["jc/cli.py"]},"message":"add support for parser help"},{"commit":"b7355fd30d992a1bcc90227f5a1b02be073829e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":37,"deletions":48,"files":["docs/parsers/arp.md","jc/parsers/arp.py"]},"message":"new docstring format for improved documentation"},{"commit":"93ae309e407b26820b9f05b5b331d05fc77df57f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/__init__.py","man/jc.1"]},"message":"bump version to 1.15.1"},{"commit":"5d8f8365e24a7c3a587d4e71ebba4876de08203b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":461,"files":["man/jc.1","man/jc.1.gz","mangen.py"]},"message":"gzip man page"},{"commit":"f26909eefb236e9ebf63be53cd86ae13cc3d9ea3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["docs/parsers/dir.md"]},"message":"formatting"},{"commit":"55bfbb2797ede3aefbb14ecab950b108b1895ccc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":6,"files":["EXAMPLES.md","jc/parsers/dir.py"]},"message":"formatting"},{"commit":"8970b8342a855203aef649b60dad3e49a1d7fd2a","merge":"a73fdb7 5285e69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #115 from kellyjonbrazil/master\n\nSync master and dev"},{"commit":"5285e699c30fdeaf56068f5a03ef1d1d33fa673c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","jc/cli.py","man/jc.1"]},"message":"fix rpm-qi parser name"},{"commit":"275f3860d5870303235b651d42650256e4db8ada","merge":"577811f a73fdb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #114 from kellyjonbrazil/dev\n\nDev v1.15.0"},{"commit":"a73fdb7478965f0f2c841ac01b2762db80ad0786","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["CHANGELOG","man/jc.1"]},"message":"update dates"},{"commit":"f2d746403a0ed764f931ae9e14d180bab107dcca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/rpm_qi.md","jc/parsers/rpm_qi.py"]},"message":"typo fix"},{"commit":"b7dbf2c49be4beb793495a0aaee7f05dbea5a3a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["jc/utils.py"]},"message":"doc formatting"},{"commit":"21f3c97788826e79b0c387f877c5adf269318e97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"]},"message":"rename rpm_qai to rpm_qi"},{"commit":"14b727cc717d04fefba1cc31b6f29b549ced986f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":73,"deletions":0,"files":["tests/fixtures/centos-7.7/rpm-qi-package.json","tests/fixtures/centos-7.7/rpm-qi-package.out","tests/test_rpm_qai.py"]},"message":"add rpm_qi tests"},{"commit":"abee226591ed4ae37351efc995017d28b27827d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":205,"deletions":14,"files":["README.md","docs/parsers/rpm_qi.md","jc/cli.py","jc/parsers/{rpm_qai.py => rpm_qi.py}","man/jc.1"]},"message":"rename rpm_qia to rpm_qi"},{"commit":"293ad39f4bcf326186dd917d8bc58d3964e5e4d6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"typo fix"},{"commit":"92443025811019f616f596abb60a2889f604c122","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":7,"deletions":6,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/rpm_qai.md","jc/parsers/rpm_qai.py"]},"message":"rpm parser doc update"},{"commit":"753cac25fb1e7e6cd2c742afa8d45ced068ea91d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":3,"files":["jc/parsers/rpm_qai.py"]},"message":"only add description if it exists"},{"commit":"0548263e898bf14f93d2fa423c0f0a9d9f2ff567","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":10468,"deletions":0,"files":["EXAMPLES.md","README.md","docs/parsers/rpm_qai.md","jc/cli.py","jc/parsers/rpm_qai.py","man/jc.1","tests/fixtures/centos-7.7/rpm-qai.json","tests/fixtures/centos-7.7/rpm-qai.out"]},"message":"add rpm -qai parser"},{"commit":"53776a9bf894988d6ef9221a62ab8b816c89560c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["man/jc.1","templates/manpage_template"]},"message":"note -a output is JSON"},{"commit":"cc7def9b76a7fa6de1e11b584676820f3acb0257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":18,"deletions":0,"files":["tests/fixtures/osx-10.14.6/finger.json","tests/fixtures/osx-10.14.6/finger.out","tests/test_finger.py"]},"message":"add OSX finger tests"},{"commit":"11a4422c25ed905f33475677bcc2f59f49c62a23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":51,"deletions":0,"files":["tests/fixtures/centos-7.7/finger.json","tests/fixtures/centos-7.7/finger.out","tests/test_finger.py"]},"message":"add centos 7.7 finger tests"},{"commit":"3a44785260514227b541530baf3e14b6c7ebe86a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/finger.py"]},"message":"del details key if details are blank"},{"commit":"e0d430c26c38db8de5a32741e05df412cffe45b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"update -r raw option info"},{"commit":"417b70020accfa4910016e9d3d12690a5488f6f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":129,"deletions":22,"files":["EXAMPLES.md","docs/parsers/finger.md","jc/parsers/finger.py","tests/fixtures/ubuntu-18.04/finger.json","tests/fixtures/ubuntu-18.04/finger.out"]},"message":"add idle time fields to finger parser"},{"commit":"7b29c464b72ef9a79bd872dab92cf65016490bcc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"date updated"},{"commit":"26d5529d86e4e459ad94226465c3697a050af0ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":7,"files":["docs/parsers/finger.md"]},"message":"remove aix support, add note for -s support. schema update"},{"commit":"852103c478321b84ffbbc0a876d5ece0c0881e1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":14,"files":["jc/parsers/finger.py"]},"message":"tweak regex to support arbitrary 'detail' data"},{"commit":"26a115421b0888e23f4348f1124e2ef7b39df4cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["CHANGELOG"]},"message":"add finger parser"},{"commit":"755b941a9aa602d95d9bc599f5c64e05f9e6216d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":35,"deletions":30,"files":["EXAMPLES.md","docs/parsers/finger.md","jc/parsers/finger.py"]},"message":"doc update"},{"commit":"fd1ca82d86649adeb84968142665e5e4fae3fa0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":263,"deletions":0,"files":["README.md","docs/parsers/finger.md","jc/cli.py","jc/parsers/finger.py","man/jc.1"]},"message":"add finger parser"},{"commit":"6fe175344fc61d4996a9ea20f6c5d429efb1fac7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"change examples link to github.io"},{"commit":"3590cda13a68616ee7eb8c85c5554ffb3fef036d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/last.md","jc/parsers/last.py"]},"message":"docs formatting"},{"commit":"2f1011dd85ec9b3550138ac4a4e1729fa5b4fe17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"readme update"},{"commit":"2b155261b3f6e4879b592f5bc052649ded5e3d69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"]},"message":"use new github.io links for documentation"},{"commit":"02f4d606d0a446c7cc74aedac6035ee79805950d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":69,"deletions":69,"files":["README.md","templates/readme_template"]},"message":"add documentation links to README.md"},{"commit":"577811f00b7fcd0396bb0e26a2985709bd2c65a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/_config.yml"]},"message":"Set theme jekyll-theme-cayman"},{"commit":"b4098d67a3a4a617d42c1389e0a88833c77b89b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"latest"},{"commit":"88bd7554aeb511c19e55dc3dde9c9376efb0485b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":3,"files":["docgen.sh","updatedocs.sh"]},"message":"add status messages"},{"commit":"b5ec16c5cafb78db093861cc30d9646207f2227a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":8,"files":["mangen.py","readmegen.py"]},"message":"formatting"},{"commit":"68fcb60a1460a35500180ec05a8cf5ba5706ff17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["updatedocs.sh"]},"message":"add updatedocs script"},{"commit":"e4781d60ce251f6d47f19bbe042e97f8aa9e2f18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":65,"insertions":188,"deletions":189,"files":["README.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","man/jc.1"]},"message":"update parser descriptions with backticks surrounding command names"},{"commit":"6201fb346a66ba762651624cdaf03f08e08579a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","jc/parsers/iw_scan.py"]},"message":"test backticks in description"},{"commit":"f88c8343f9dec5e0190df94a5109e6c749bda286","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","jc/parsers/iw_scan.py"]},"message":"update iw-scan description for documentation"},{"commit":"25410d33168ee7142bd8f8c739ef22a62a47eb6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":973,"deletions":70,"files":["README.md","mangen.py","readmegen.py","{man/template => templates}/manpage_template","templates/readme_template"]},"message":"create readmegen.py script. move jinja2 templates to templates folder"},{"commit":"4ff9952938d0654376efc94ca7d8a12f6df171af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["README.md"]},"message":"change OSX to macOS"},{"commit":"5e3f63a412c5b23e7515337521ebba6273b5c11f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["man/jc.1","man/template/manpage_template"]},"message":"add license and copyright info. use variables instead of hard-coded values"},{"commit":"e1f57be69efdfd7facd07df6ef0955a36c4fc18b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"]},"message":"add license info"},{"commit":"2c65d5eeccdc95d2de00ac6575a9e8d8458486bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":32,"deletions":8,"files":["man/jc.1","man/template/manpage_template"]},"message":"man page updates"},{"commit":"aa621f2f1ee043611c440683dfb63e6577d8fac4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":74,"deletions":9,"files":["CHANGELOG","man/jc.1","man/template/manpage_template"]},"message":"enhance man page"},{"commit":"ac932c6e59ad80115962d0ea91e6aaabc70c211e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/utils.md","jc/utils.py"]},"message":"update timestamp docs"},{"commit":"029f79da1647e53f97ca83ba92b1f36a131f3128","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"added info regarding updated dev scripts for automating doc generation"},{"commit":"153b2b4a7a216caae5b03f6d50d43980c13a705f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":68,"files":["docgen.sh"]},"message":"use jc to help automate the generation of its own docs"},{"commit":"709b2fe4eead06090f903718deeb06ec774fc26e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":16,"deletions":0,"files":["man/jc.1","man/template/manpage_template"]},"message":"add -h and -v options"},{"commit":"09c1fccc584e3d0582e19b520586419085ea8d04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":4,"deletions":6,"files":["man/jc.1","man/template/manpage_template","mangen.py"]},"message":"manpage updates"},{"commit":"fd254d99b782888fe7646e42a61f28aa99e7cba7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":193,"deletions":15,"files":["man/jc.1","man/template/manpage_template","mangen.py"]},"message":"add manpage generator"},{"commit":"88bd2c172217c498431e8904e74313bc27978785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"fix typo"},{"commit":"d03e2f0fc1d0310cd94702f4d3c959d71b0eb622","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":40,"deletions":0,"files":["CONTRIBUTING.md"]},"message":"add parser schema guidelines"},{"commit":"3f12a393bd37062cd1412128be495235b0c7351f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"formatting"},{"commit":"8c21284c5038bdc2e52ff4211fac747f33f52091","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["CONTRIBUTING.md"]},"message":"remove redundant license info"},{"commit":"e7d396c2157a77500017967dfc68ffaf32507c2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"update issues link"},{"commit":"f238fac0eb0c8e5133c6c9abf9ca709f5df7a925","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":49,"deletions":0,"files":["CHANGELOG","CONTRIBUTING.md","README.md"]},"message":"add contributing guidelines"},{"commit":"017228f80d9a65ad7715f31c539d9fca1615296f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add tested on Windows 10"},{"commit":"286c5fa9434e25434ee8f4825621f68464296469","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add dir parser"},{"commit":"74cfc13abe4cd09ca5470714caeaedd24c099770","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":12,"deletions":21,"files":["tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-S.json","tests/fixtures/windows-10/dir-dirs.json","tests/fixtures/windows-10/dir-files.json","tests/fixtures/windows-10/dir-mix.json","tests/fixtures/windows-10/dir-raw.json","tests/fixtures/windows-10/dir.json","tests/test_dir.py"]},"message":"fixup dir parser tests"},{"commit":"0ee4a6c377321cf6ff67ced38e9a07a8f6313943","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":207,"deletions":460,"files":["docs/parsers/dir.md","jc/parsers/dir.py"]},"message":"update schema and add epoch naive timestamp"},{"commit":"283433578dfc3f132ef35727ce5bafb3e390896c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":46,"deletions":0,"files":["EXAMPLES.md","README.md"]},"message":"add dir parser"},{"commit":"9559c85057308e8815d4654bbe0062a5858c0b2b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":0,"files":["jc/utils.py","tests/test_utils.py"]},"message":"add windows dir format"},{"commit":"c5c020f5654038dacba542be3784a35d7333cbcc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/parsers/dir.md"]},"message":"add /S option"},{"commit":"95ec79bceb3d0c4245e36b7b16cfda6e16b01197","merge":"8f8be8a 5b60c74","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #107 from rasheed-rd/add-dir-parser\n\nAdd windows dir command parser"},{"commit":"8f8be8aa33f0b708ebd9a35c6b288572443d7181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"add -1 option info"},{"commit":"5b60c7445a3f8bd2ae1587aa0ffaeaf093966f9a","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","commit_by":"Rasheed Elsaleh","commit_by_email":"rasheed@rebelliondefense.com","stats":{"files_changed":5,"insertions":469,"deletions":400,"files":["docs/parsers/dir.md","jc/parsers/dir.py","tests/fixtures/windows-10/dir-S.json","tests/fixtures/windows-10/dir-S.out","tests/test_dir.py"]},"message":"Add support for /S and update documentation"},{"commit":"d9dbcc8b526c8de9c6d12ac580880fd606dc68cf","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","commit_by":"Rasheed Elsaleh","commit_by_email":"rasheed@rebelliondefense.com","stats":{"files_changed":15,"insertions":149,"deletions":73,"files":["docs/parsers/dir.md","jc/parsers/dir.py","tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-Q.json","tests/fixtures/windows-10/dir-Q.out","tests/fixtures/windows-10/dir-dirs.json","tests/fixtures/windows-10/dir-dirs.out","tests/fixtures/windows-10/dir-files.json","tests/fixtures/windows-10/dir-files.out","tests/fixtures/windows-10/dir-mix.json","tests/fixtures/windows-10/dir-mix.out","tests/fixtures/windows-10/dir-raw.json","tests/fixtures/windows-10/dir.json","tests/test_dir.py"]},"message":"Add parent dir to structure. Add test cases. Remove support for /Q"},{"commit":"79bc525970b38dea68b4859ac5dd32fc681e5994","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"]},"message":"add codes field to schema"},{"commit":"9dae1091ddc6141694ebfdc5ae649582cb879ccd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"]},"message":"typo fix"},{"commit":"74d3ac686a69518c1048260e37a0245ff254ff57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":61,"deletions":0,"files":["tests/fixtures/ubuntu-18.04/dpkg-l-codes.json","tests/fixtures/ubuntu-18.04/dpkg-l-columns500.json","tests/fixtures/ubuntu-18.04/dpkg-l.json","tests/test_dpkg_l.py"]},"message":"add dpkg-l tests"},{"commit":"cf3cc636badcf4ae6db1e5ee5e57ca0331ee5b0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add dpkg-l parser info"},{"commit":"a720441e1d34771c5a54876cb7dd63fb8c9f408e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":54,"deletions":0,"files":["EXAMPLES.md"]},"message":"add dpkg -l example"},{"commit":"0a7ed0959df07e2f36d9ec3ca8c294cfdaf10396","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"]},"message":"rename err to error"},{"commit":"eb83c9b86dc6d1ff15efed30993071834b65a7d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":21,"files":["docs/utils.md"]},"message":"replace parse_datetime_to_timestamp with timestamp class"},{"commit":"5c0142dd19eee14f4f1c287f0543e29824f9ae70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":1797,"deletions":2,"files":["CHANGELOG","docgen.sh","docs/parsers/dpkg_l.md","jc/cli.py","jc/parsers/dpkg_l.py","jc/parsers/universal.py","tests/fixtures/ubuntu-18.04/dpkg-l-codes.out","tests/fixtures/ubuntu-18.04/dpkg-l-columns500.out","tests/fixtures/ubuntu-18.04/dpkg-l.out"]},"message":"add dpkg-l parser"},{"commit":"c326c8dc8356b55bba13864156adf30607205ece","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":18,"insertions":194,"deletions":1,"files":["jc/parsers/time.py","tests/fixtures/osx-10.14.6/time-l.json","tests/fixtures/osx-10.14.6/time-l.out","tests/fixtures/osx-10.14.6/time-lp.json","tests/fixtures/osx-10.14.6/time-lp.out","tests/fixtures/osx-10.14.6/time-p.json","tests/fixtures/osx-10.14.6/time-p.out","tests/fixtures/osx-10.14.6/time.json","tests/fixtures/osx-10.14.6/time.out","tests/fixtures/ubuntu-18.04/time-p.json","tests/fixtures/ubuntu-18.04/time-p.out","tests/fixtures/ubuntu-18.04/time-verbose.json","tests/fixtures/ubuntu-18.04/time-verbose.out","tests/fixtures/ubuntu-18.04/time.json","tests/fixtures/ubuntu-18.04/time.out","tests/fixtures/ubuntu-18.04/time2.json","tests/fixtures/ubuntu-18.04/time2.out","tests/test_time.py"]},"message":"add TypeError to except block. add /usr/bin/time tests"},{"commit":"fc4082a03feb5645a1ad687908782a2584a58956","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":131,"files":["jc/utils.py"]},"message":"remove old parse_datetime_to_timestamp function"},{"commit":"c8655565ff8718f0f14d41696b81e6539529dde1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"]},"message":"use new timestamp class"},{"commit":"638f879f16c9e87edb60953f4fd0b1c7ad92f277","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/dig.py"]},"message":"use new timestamp class"},{"commit":"1d221bf7e6128d57bd769c0fe8f37f7a94da8cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/who.py"]},"message":"use new timestamp class"},{"commit":"60ea71f0ef931dccf09e6eb0cb737ddad0b47f0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/timedatectl.py"]},"message":"use new timestamp class"},{"commit":"d8bdd35a3f462efcdc871426309299e8aefb0a79","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/stat.py"]},"message":"use new timestamp class"},{"commit":"7463891c53f3670710dfa72ed1422431c274fe4a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/last.py"]},"message":"use new timestamp class"},{"commit":"7537aec76fa07384c4439f34c50d4e3f001c0dfa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":8,"files":["jc/parsers/date.py"]},"message":"use jc.utils.timestamp instead of jc.utils.parse_datetime_to_timestamp()"},{"commit":"62234e39a8533362a20f106c64326ed69f430006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":8,"files":["jc/parsers/upower.py"]},"message":"use jc.utils.timestamp instead of jc.utils.parse_datetime_to_timestamp()"},{"commit":"be004b7b3fe9217160c6418907e7d8aad10e5fae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":172,"deletions":15,"files":["jc/utils.py","tests/test_utils.py"]},"message":"make parse_datetime_to_timestamp function a class called timestamp for easier use"},{"commit":"82539444b24169b2eb762485ed032fc968a81f71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":23,"deletions":21,"files":["docs/parsers/time.md","jc/parsers/time.py"]},"message":"fix indentation for int and float conversions. add real_time field to schema"},{"commit":"a571d3cbafd5048d1d59070e1791398ae410197f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/time.md","jc/parsers/time.py"]},"message":"fix typo"},{"commit":"a038c14c23ea27264df61a38e0301de8d1fa1b9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":8,"deletions":8,"files":["EXAMPLES.md","docs/parsers/time.md","jc/parsers/time.py"]},"message":"change microseconds to centiseconds"},{"commit":"25a85d874cd2b57a7700b0c2dca61132127732b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iw_scan.py"]},"message":"update docs"},{"commit":"884c36ff42df4f580c8e2b4705def8e4c1182e39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":536,"deletions":1,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","docs/parsers/iw_scan.md","docs/parsers/time.md","jc/cli.py","jc/parsers/time.py"]},"message":"add /usr/bin/time parser"},{"commit":"b98e72b8b4eda0ab5ede7725226e61634af572eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add ls parser info"},{"commit":"05885c0096b5ee142ecff2d17e37c446518998a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":931,"deletions":18,"files":["docs/parsers/ls.md","jc/parsers/ls.py","tests/fixtures/ubuntu-18.04/ls-l-iso.json","tests/fixtures/ubuntu-18.04/ls-l-iso.out","tests/test_ls.py"]},"message":"add epoch and epoch_utc timestamps"},{"commit":"4c9761231af897658c3a2c0abcc476aa8b43d1b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":118,"deletions":81,"files":["CHANGELOG","EXAMPLES.md","README.md","docs/parsers/dig.md","jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json"]},"message":"add when_epoch and when_epoch_utc fields"},{"commit":"656eaa150861948091ef9d6323805c2698039bc6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"1560dcddcf82f55fffce22d1b46d372b25a9d0fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"]},"message":"add acpi, upower parsers and -v version option"},{"commit":"08d4cd4870c7acaf3a453d1400b64d77d462437b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":114,"deletions":43,"files":["EXAMPLES.md","docs/parsers/acpi.md","jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.json","tests/fixtures/generic/acpi-V2.json","tests/fixtures/generic/acpi-V3.json","tests/fixtures/generic/acpi-V4.json"]},"message":"add time calculations to acpi parser"},{"commit":"9767a50cededb140575e195abf79ce49c4f53789","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":48,"deletions":46,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/who.md","jc/parsers/who.py","jc/utils.py","tests/fixtures/centos-7.7/who-a.json","tests/fixtures/centos-7.7/who.json","tests/fixtures/osx-10.14.6/who-a.json","tests/fixtures/osx-10.14.6/who.json","tests/fixtures/ubuntu-18.04/who-a.json","tests/fixtures/ubuntu-18.04/who.json","tests/test_utils.py"]},"message":"update who parser to add epoch naive timestamp"},{"commit":"cd86890ed1493644e391e52e33561e9a77631a51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"]},"message":"add website to info and use variables for version info"},{"commit":"ba0dd3b9ca98a042c772898302fcfe5fdc84f79a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["tests/test_utils.py"]},"message":"add parse_timedate_to_timestamp test for format 7300"},{"commit":"8d7fa07ffd50f38336a448eb506a76d9d4849a6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":11,"files":["tests/fixtures/centos-7.7/timedatectl.json"]},"message":"unformat json"},{"commit":"cade1bfe6e56b5926898b7204e911885efebd5a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":2,"files":["tests/fixtures/centos-7.7/timedatectl.json","tests/fixtures/ubuntu-18.04/timedatectl.json"]},"message":"update timedatectl tests for new epoch_utc field"},{"commit":"daec4ab0a7f572e872b27b043d51f68e5e06300f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":20,"deletions":4,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/timedatectl.md","jc/parsers/timedatectl.py","jc/utils.py"]},"message":"add epoch_utc field to timedatectl parser"},{"commit":"3c96bc319615c824a06c388e9e3c1d68a9bf4084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"]},"message":"version bump"},{"commit":"7f7d8d4bd6f37015b11bac60a7bd99e8d3eca108","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":0,"files":["docs/parsers/stat.md","jc/parsers/stat.py"]},"message":"update stat docs"},{"commit":"47263661a41987f334fd484e866e0aa8859cde5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":2,"files":["EXAMPLES.md"]},"message":"update stat example"},{"commit":"4c42a086d206919dfe4f1c0801fe4fb1027cb1cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":6,"files":["jc/utils.py"]},"message":"clean up debug code"},{"commit":"5d2541a5c4bc93f3943a491c76df7f8d4e2cf44b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/utils.py"]},"message":"remove auto c locale and use a manual format rule for windows and linux compatibility"},{"commit":"d91d170b49bfc88c0b2fb54475705c038172f1c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/utils.py"]},"message":"try manual c locale format for windows"},{"commit":"6d1f4584a9ccd0f0f7ed4fdf408576a9e7f5046b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"]},"message":"try manually setting time format for windows compatibility"},{"commit":"1d76d96bcf4185cffb7066bec637913099399db5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/utils.py"]},"message":"debug windows issue"},{"commit":"e8847c998c91131acf5ee0f6485e9976c0fce3ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["tests/fixtures/centos-7.7/stat.json","tests/fixtures/freebsd12/stat.json","tests/fixtures/osx-10.14.6/stat.json","tests/fixtures/ubuntu-18.04/stat.json"]},"message":"update stat tests"},{"commit":"da88e49bae2f3fecff623f52c20bf994b653583e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":69,"deletions":29,"files":["docs/parsers/stat.md","jc/parsers/stat.py"]},"message":"add new examples"},{"commit":"65c3a12e5422782df40489c3c431677f5657dbf5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":35,"deletions":24,"files":["jc/parsers/stat.py","jc/utils.py"]},"message":"simplify None data scenario"},{"commit":"d8d600cc36bde4e6216b935f87a765599e896714","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"add reference to -h for help"},{"commit":"507999b117b024fed1ccf067bd5dc411dbeb268c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":34,"deletions":19,"files":["docs/utils.md","jc/utils.py","tests/test_utils.py"]},"message":"add stat command timestamp detection"},{"commit":"8ad164eb340e135eeeb10b721172916182f37e30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_cli.py"]},"message":"fix tests for compact output"},{"commit":"a507df140b245b83b1c46e8462b44e1145c42f2a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add compact json info"},{"commit":"8912a99986a977ee6ca7bbe2368f5033644577b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/cli.py"]},"message":"make default json output more compact"},{"commit":"1953f9882890cd0e8c515d43ce28c96f918b0ab4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"]},"message":"add version info. add json now supports unicode output"},{"commit":"7515218ddd2cdcfcebd67850140e842f2f121226","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":10,"deletions":14,"files":["jc/cli.py","jc/utils.py"]},"message":"use jc.utils for all warning and error messages. simply error and warning formatting."},{"commit":"36c11201366cefedee4244fb71a4a9cc6507e6ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"formatting"},{"commit":"8fa0fe64d8418093c7f28cdc70a7f409956aeb04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"]},"message":"add -v to helptext. minor formatting"},{"commit":"c1a8201b140c65579ff9f8427322b67653bf3006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["EXAMPLES.md"]},"message":"add copyright"},{"commit":"398bbac48c8a716b1872843d671aa6ceaeba6a78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"simplify return value for parse_datetime_to_timestamp()"},{"commit":"ea71a42bbdd9b09a457727cfe763054625f7901a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/cli.py"]},"message":"formatting"},{"commit":"1c16d25b17a7282a62a5ebd9755df5569c57435f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":30,"deletions":9,"files":["README.md","jc/cli.py"]},"message":"add version option (-v) and copyright information. add 'ensure_ascii=False' to json dumps to properly show UTF-8 copyright character"},{"commit":"9d12ded889f656656267cbf7a91d71267201f736","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"help description change"},{"commit":"5312701515ecb3a10598bb9dcf2f73b7eae71b93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add - make all external python requirements optional"},{"commit":"808c7bc0a94ecfd160ee2b257e5feec347829a5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/xml.py"]},"message":"make xmltodict library optional"},{"commit":"4d394015f458f284d052ce2c1a0c8492916c5b3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/yaml.py"]},"message":"make ruamel.yaml library optional"},{"commit":"3638298af8ebc01d54aa3ab5668d0adedca957e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":53,"deletions":44,"files":["jc/cli.py"]},"message":"make pygments library optional"},{"commit":"5f00973e400629bd68c0ab60ed9005410278f855","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/date.py"]},"message":"remove parenthesis to normalize text for naive timezone detection"},{"commit":"0f6e2c14fcb69f664c29083ec5207326f842dfdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/parsers/upower.py"]},"message":"simplify timestamp failure logic"},{"commit":"51813da61994226ba40478825d47f80c23413349","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":4,"files":["jc/parsers/date.py"]},"message":"add offset timezones. fix timestamp logic on conversion failure"},{"commit":"e7751322ea195cac7f1921ba8e0364c442065d20","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/iw_scan.py"]},"message":"formatting"},{"commit":"26ef29843784ade3d55410be13300dd6f4c06890","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":6,"files":["jc/utils.py"]},"message":"change return to always include the entire object but all keys may be None if conversion fails"},{"commit":"badaf8ce73d7deb0ec2be244e27b4bf8cddbea19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":14,"files":["jc/utils.py"]},"message":"comment formatting"},{"commit":"b123a622039f3cc32643a3bfc0766154d660f8bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/utils.py"]},"message":"move locale change formats to the end of the list"},{"commit":"cfd77e42522aa2ebeada9f45ac99bd1d3414f782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/utils.py"]},"message":"reset locale to None on exception"},{"commit":"38f814072eac5370059f1b4203316eee41cf535b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":8,"files":["jc/utils.py"]},"message":"better normalization of datetime string. better UTC detection. More formats supported with detected locale."},{"commit":"a0db7754e384a0c95f2099bf894f3a22bd33c002","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add nixos install info"},{"commit":"f07620afc7dc0d0d605eb483ef36c5979b33cdfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":18,"deletions":7,"files":["README.md","jc/__init__.py","jc/cli.py"]},"message":"move version to jc.__init__.py\nadd -h option for help instead of always showing on error\nuse jc.utils.error_message for the following errors: missing/incorrect arguments, parser not found, missing piped data"},{"commit":"c1b0d27752726989c6051f683a1194941bee598c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":10,"files":["runtests.sh"]},"message":"remove old commented commands"},{"commit":"430a5108aa265d4df0e4584eade54759da864c61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":19,"deletions":60,"files":["runtests.sh","tests/test_last.py","tests/test_last2.py"]},"message":"move all tests to github actions"},{"commit":"111ce92fc9c33b82c7d1a1664dda046ea5993f6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":0,"deletions":1,"files":["tests/{localtest_date.py => test_date.py}","tests/{localtest_last.py => test_last2.py}","tests/{localtest_upower.py => test_upower.py}","tests/test_utils.py"]},"message":"attempt all tests in github actions with timezone correction"},{"commit":"c851e8a58d98b2a4907cf1e7cf7c7d8d8dc04dc6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_utils.py"]},"message":"force github action"},{"commit":"39f4bcd9b41450068903ea2843508586eccdf709","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"Change Windows timezone\n\nuse \"Pacific Standard Time\""},{"commit":"4a610c4c81493788b8351e8c74aabe819c981c02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["tests/test_utils.py"]},"message":"force github action"},{"commit":"89ee11945d4e2db107a33ef0d61e0c6015ac8ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"Change timezone provider\n\nuses: szenius/set-timezone@v1.0"},{"commit":"dadb09b74a69d1852f8433e0e32ccdd67bd91181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_utils.py"]},"message":"force github action"},{"commit":"1b1f638b97dc5e6f2767183eb363b79ae3c9b3c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":[".github/workflows/pythonapp.yml"]},"message":"Change timezone change provider\n\nchange to actions/set-timezone-action"},{"commit":"794fc4ed44d1565514303090403d68ba5d639cb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":36,"deletions":8,"files":["jc/utils.py","tests/test_utils.py"]},"message":"add parse_datetime_to_timestamp() tests"},{"commit":"72f735bf9211d7beddcf58819fe465722f5d7c5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":[".github/workflows/pythonapp.yml"]},"message":"Set Timezone to America/Los_Angeles\n\nUsing zcong1993/setup-timezone"},{"commit":"912877f25ad562ed4cafe7b2d7446bd48b477ea2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"additional timezone info"},{"commit":"2772c5ae436ea437d833003372d53a3d3f955ea0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"a7ad24d2cb61d84cf2846f8fa43af31f0597043e","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","commit_by":"Rasheed Elsaleh","commit_by_email":"rasheed@rebelliondefense.com","stats":{"files_changed":13,"insertions":772,"deletions":0,"files":["docgen.sh","docs/parsers/dir.md","jc/cli.py","jc/parsers/dir.py","tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-C.out","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-ODTC.out","tests/fixtures/windows-10/dir-Q.json","tests/fixtures/windows-10/dir-Q.out","tests/fixtures/windows-10/dir.json","tests/fixtures/windows-10/dir.out","tests/test_dir.py"]},"message":"Add dir parser\n\nAdd usage commands\n\nFix example options\n\nupdate dir.md"},{"commit":"a364a6a9faeb6aa290b790f3dec74e92b8670534","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"]},"message":"add note regarding calculated timestamps"},{"commit":"7b2dc86a8d974e7984fe2540f56a66c2b9386acd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":19,"files":["EXAMPLES.md"]},"message":"update last example with new timestamp fields"},{"commit":"ad645636d07d0423253f19068a22b2a28251b05f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":86,"deletions":50,"files":["CHANGELOG","EXAMPLES.md","README.md","docs/parsers/uptime.md","jc/parsers/uptime.py"]},"message":"update uptime docs"},{"commit":"2f2f297b29fbe3172647a81db084b3564a441d40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["tests/fixtures/centos-7.7/uptime.json","tests/fixtures/osx-10.11.6/uptime.json","tests/fixtures/osx-10.14.6/uptime.json","tests/fixtures/ubuntu-18.04/uptime.json"]},"message":"update uptime fixtures with new fields"},{"commit":"099ae3fde03f8157298f6b412bdddb8bd56da09a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":22,"files":["jc/parsers/uptime.py"]},"message":"fix issue when there is no data"},{"commit":"e9febe98ac5ec0e03791c5b6794446a2c3312fb1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["runtests.sh"]},"message":"add localtest partition lines for readability"},{"commit":"5fbd07cccf9fb697b996dcc3949eef5b1c09e655","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":59,"deletions":26,"files":["jc/parsers/uptime.py"]},"message":"rewrite of uptime parser including new fields"},{"commit":"5fed4698c2c1f1b7e05c5b4c51639f818e049b53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":6,"files":["docs/parsers/last.md","jc/parsers/last.py"]},"message":"update docs and version number"},{"commit":"ed7eb0983a4dfcc1d66a2957be3e10b2203d909e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/last.py"]},"message":"use parse_datetime_to_timestamp function instead of custom format string"},{"commit":"90c7e18e5fc5ea9fcf6157cc2656f47193d78411","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":11,"files":["EXAMPLES.md"]},"message":"update date example"},{"commit":"953ab5c3bd0c8b6eef29b717edaf1aa2380c2b93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":0,"files":["runtests.sh","tests/{test_upower.py => localtest_upower.py}"]},"message":"make upower tests local only"},{"commit":"699c97d8a07f7575454746159ac4d19981cd1a5c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add last parser info"},{"commit":"e4ca0de92a689ce93b91d86106a5da590226855a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":100,"deletions":0,"files":["tests/fixtures/generic/upower-i-c-locale.json","tests/fixtures/generic/upower-i-non-utc.json","tests/fixtures/generic/upower-i-utc.json",".../{upower-i-utc.out2 => upower-i-utc.out}","tests/fixtures/ubuntu-18.04/upower-d-clocale.json","tests/fixtures/ubuntu-18.04/upower-d.json","tests/fixtures/ubuntu-18.04/upower-i.json","tests/test_upower.py"]},"message":"add upower tests"},{"commit":"04745a36b84cc79e56bde2a0e92a4ee9ab4a1538","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":5,"files":["CHANGELOG","jc/utils.py"]},"message":"doc update"},{"commit":"5936940532b8b753e67c9f5cd9287f34cc84ae9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":136,"deletions":186,"files":["docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date-after-midnight.json","tests/fixtures/generic/date-before-midnight.json","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/fixtures/ubuntu-20.04/date2.json"]},"message":"rewrite of date parser using datetime library"},{"commit":"b3eb064b6753d6e894884e1c16054630c2396fe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"]},"message":"clarify format definition comments"},{"commit":"e4b41057e302074ac2a81ad8c36b6f95cd6b7db2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":24,"deletions":0,"files":[".../{upower-i.out => upower-i-c-locale.out}","tests/fixtures/generic/upower-i-non-utc.out",".../generic/{upower-i2.out => upower-i-utc.out2}"]},"message":"update upower fixture names"},{"commit":"1d41c46cc762ab0c78b819e56db7df39f1111d5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":34,"deletions":5,"files":["jc/utils.py"]},"message":"normalize datetime string to remove all timezones except UTC"},{"commit":"a5c444587b3f0874fcc2833dc4e759c2dc1c7834","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":28,"deletions":0,"files":["tests/fixtures/generic/date-after-midnight.json","tests/fixtures/generic/date-after-midnight.out","tests/fixtures/generic/date-before-midnight.json","tests/fixtures/generic/date-before-midnight.out","tests/localtest_date.py"]},"message":"add before and after midnight date tests"},{"commit":"a56f471be980be16e73d3a91e2b12aad26c6d38c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/fixtures/generic/upower-i2.out"]},"message":"update fixture to use UTC for better testing"},{"commit":"6a6b26ed8d97014c2a5c7d91a4cd9b23f49530fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/date.py"]},"message":"fix 12 to 24 hour conversion for midnight cases"},{"commit":"f62446c152d89f2d37b22ffe9d9de5b5c9fa7049","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":10,"files":["jc/utils.py"]},"message":"rename variables. add another european time format"},{"commit":"56011f1f172344cab2a8e869e7a6df6e45c45874","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":73,"deletions":6,"files":["EXAMPLES.md","docs/parsers/upower.md","jc/parsers/upower.py"]},"message":"updated upower examples"},{"commit":"6d44091c80318fde6c09cd850e6dc5afde7fe799","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":53,"files":["jc/utils.py"]},"message":"refactor parse_datetime_to_timestamp()"},{"commit":"440c458eb42925dffe2d7b026279468fa2fa1bb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"no need for ternary clause"},{"commit":"798250af6116441385339806c8f26bc9720ad302","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":18,"deletions":24,"files":["docs/parsers/upower.md","jc/parsers/upower.py"]},"message":"use jc.utils.parse_datetime_to_timestamp() function for timestamp creation"},{"commit":"c762de29c6491790908451aa20f6aa12fdfa9722","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":32,"deletions":2,"files":["docs/utils.md","jc/utils.py"]},"message":"doc updates"},{"commit":"0701e65e97165efd40ab2ae5087897de3588ea32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":106,"deletions":0,"files":["jc/utils.py"]},"message":"add parse_datetime_to_timestamp() function"},{"commit":"209d54e8b5be6476d896cee1a5274bd2b46219e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/parsers/date.md","jc/parsers/date.py"]},"message":"add hour_24 to schema docs"},{"commit":"2b38462de7d2fa61dd5d2a184e853279f1a9c84b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":33,"deletions":27,"files":["EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py"]},"message":"update examples"},{"commit":"1e8e5533162cb01053ee25e9dbc709a429e58070","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":31,"deletions":14,"files":["CHANGELOG","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/fixtures/ubuntu-20.04/date2.json","tests/localtest_date.py"]},"message":"add hour_24 field"},{"commit":"ab42e6bb15026d6c46e15197c62bc3e8ef95c80d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/date.md","jc/parsers/date.py"]},"message":"formatting"},{"commit":"680288454090f3c48c7f0580cdcb919c0b5a883e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["docs/parsers/date.md","jc/parsers/date.py"]},"message":"ensure period is always uppercase in dict value. update period documentation"},{"commit":"7cb8577b9655f258f2910e7e7bcf3266d4cbece0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":70,"deletions":48,"files":["docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/ubuntu-20.04/date2.out"]},"message":"correct epoch_utc calculation. Fix for 12 hour vs. 24 hour representation"},{"commit":"55810ccd1f17ef6a4b1cb72fc21f6cf990ef8bb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/upower.py"]},"message":"set epoch_dt conversion again if not C locale"},{"commit":"f9921720cd0b9b0d76d66e6eb5bfe43481f5f52b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":4,"deletions":94,"files":["runtests.sh","tests/test_date.py","tests/test_last2.py"]},"message":"revert to local testing for naive datetime objects"},{"commit":"cda1ebd271aa8fd1b716054a2149f876d8087230","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["tests/test_date.py","tests/test_last2.py"]},"message":"try tzset()"},{"commit":"6901e4a23aad0b58cbbfac86c61917115d115dfe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":89,"deletions":3,"files":["runtests.sh","tests/test_date.py","tests/test_last2.py"]},"message":"try setting timezone env variable before tests to ensure it is the same on all test systems"},{"commit":"6bc21d3c735edc7897e49afd2a5ea9e3aa56d7fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["runtests.sh","tests/{test_date.py => localtest_date.py}","tests/localtest_last.py"]},"message":"fix date parser tests - local tests only since timezones may not match on github actions VMs"},{"commit":"1ef231e26a2898d2a01f341fb92014df92703f72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"add date parser updates"},{"commit":"3cd43f0f985a3b8a4e74bf5632bd8dac92d751c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/upower.md","jc/parsers/upower.py"]},"message":"formatting"},{"commit":"156501996688e62dd61a8456206218582a6cbe1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":85,"deletions":63,"files":["EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json"]},"message":"fix weekday numbering to be ISO 8601 compliant. Add naive calculated epoch timestamp field"},{"commit":"0a4de2d3a1c235d1ac2d6e59346e77761fe51885","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":2,"files":["docs/parsers/last.md","docs/parsers/upower.md"]},"message":"add naive datetime calculation info to docs"},{"commit":"a058f6c174e31f5e6040883bb544b83abd88c749","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/last.py"]},"message":"added naive epoch calculation info to docs"},{"commit":"d8e5d03b01a87704424f5259cf6bd977274fd6ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":33,"files":["jc/parsers/upower.py"]},"message":"naive updated_epoch timestamp calculation added"},{"commit":"9dc62eff2eaaafec89c5b8797d8ca8e4c77a07d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":34,"deletions":21,"files":["jc/parsers/upower.py"]},"message":"remove epoch conversions"},{"commit":"d4fea17c57a97d6914624b06208b9439bf2eb05f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":13,"deletions":6,"files":["docgen.sh","docs/parsers/upower.md","jc/parsers/upower.py"]},"message":"use UTC when calculating epoch timestamp. reset time locale to default after changing"},{"commit":"3dd7a5b77ea708047bc12be9f2caddd9078723f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":230,"deletions":0,"files":["docgen.sh","docs/parsers/upower.md"]},"message":"add upower docs"},{"commit":"d77c90a3ba2036b216f4a612876ace988eafd217","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":114,"deletions":6,"files":["jc/parsers/upower.py"]},"message":"fix quoted values in detail level. Add examples"},{"commit":"01f0c20df09fd4aa12bd108928b97376b51ef31a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":0,"files":["tests/fixtures/ubuntu-18.04/upower-d-clocale.out"]},"message":"add sample using C locale timestamp"},{"commit":"aafbe576b3b754de91591d9ec2dae9e9f827dee4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":137,"deletions":36,"files":["jc/parsers/upower.py"]},"message":"working parser and processor"},{"commit":"bd68ad40345fb1f69be0e0f87dc67134f826cd06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/upower.py"]},"message":"don't modify detail_type value since it is no longer a key"},{"commit":"bfee017c138bb30ec6af836685013b7124028974","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":61,"deletions":20,"files":["jc/parsers/upower.py"]},"message":"made the schema more explicit by hardcoding more items. still working on the schema"},{"commit":"61f532cfd0b7fbf14a58a0fd638bcbfb03fbde72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["jc/parsers/upower.py"]},"message":"working history list"},{"commit":"58dbbb75b607d0b29be185c3b8c3f0d8af21ecad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":21,"files":["jc/parsers/upower.py"]},"message":"simplified logic"},{"commit":"8d88b91fcf5060d7d54f687efec3e3a606bab767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/upower.py"]},"message":"move if statements and generalize the history detail detection"},{"commit":"ad39fc60299089f56f37baac71820e50cbe87ed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":268,"deletions":0,"files":["jc/cli.py","jc/parsers/upower.py","tests/fixtures/generic/upower-i.out","tests/fixtures/generic/upower-i2.out","tests/fixtures/ubuntu-18.04/upower-d.out","tests/fixtures/ubuntu-18.04/upower-i.out"]},"message":"working upower parser. history lines are ignored"},{"commit":"89f1fd96e6b7aa0acf6272e4f3469005d4f7c6bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":87,"deletions":0,"files":["tests/fixtures/generic/acpi-V.json","tests/fixtures/generic/acpi-V2.json","tests/fixtures/generic/acpi-V3.json","tests/fixtures/generic/acpi-V4.json","tests/fixtures/ubuntu-18.04/acpi-V.json","tests/test_acpi.py"]},"message":"add acpi tests"},{"commit":"bd425f2493b68949c1fa02cd1d3289ec882d9b0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":321,"deletions":2,"files":["CHANGELOG","EXAMPLES.md","docgen.sh","docs/parsers/acpi.md","jc/cli.py","setup.py"]},"message":"version bump to v1.15.0. Add acpi docs"},{"commit":"46962ff02a0630766a927babc92e11ec91b1f789","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":11,"files":["jc/parsers/acpi.py"]},"message":"remove redundant lines"},{"commit":"e4cb88b05166815e8ad03b646bd3f2b1da7f0d4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/acpi.py"]},"message":"remove unneeded line-state assignment"},{"commit":"32840703dc1d88412712b08db1c9bdaebbc34450","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":39,"files":["jc/parsers/acpi.py"]},"message":"remove redundant code"},{"commit":"1f7aafd0415a79e0547cc6f1c008c1918f8fb460","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":19,"deletions":9,"files":["jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out","tests/fixtures/generic/acpi-V4.out"]},"message":"fix for full charge batter case. Clean up battery object logic"},{"commit":"7378d5dce43f75440cb57903e8ae0c1c615b0782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/acpi.py"]},"message":"remove comment"},{"commit":"84f76866cdf76f67b34de999fd987de8a02f0306","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":197,"deletions":3,"files":["jc/parsers/acpi.py"]},"message":"working process function"},{"commit":"322da9ea6a1ceea1152d720797adb8f3a7dc1199","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":59,"deletions":12,"files":["jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out"]},"message":"working parser"},{"commit":"58645301ec111bfeb2a618f5f169cc734042dc5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":236,"deletions":1,"files":["jc/cli.py","jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out","tests/fixtures/generic/acpi-V2.out","tests/fixtures/generic/acpi-V3.out","tests/fixtures/ubuntu-18.04/acpi-V.out"]},"message":"add acpi command parser"},{"commit":"1e18dd30a824b0463f0cad86e0da7094c47d34f9","merge":"20f9b7f cc6a19a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #102 from kellyjonbrazil/dev\n\nDev v1.14.4"},{"commit":"cc6a19adccea3e10243a166b87d852b6f95414b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/yaml.py"]},"message":"fix typo in comments"},{"commit":"2a5588b177a24d5b78a4b5a515aba515804b7baa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":13,"deletions":3,"files":["CHANGELOG","jc/cli.py","jc/parsers/yaml.py","setup.py"]},"message":"packaging fix for yaml parser and pyoxidizer"},{"commit":"20f9b7f88b97ed68aba46e102b8c7b72443b9c85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"fix typo"},{"commit":"d7e32313cd9776b4a6af38cc2819d6e4ef8c0d55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"fix typo"},{"commit":"fb5654d3c4549e84940e2518f2d214debdd42d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"258f1433b36a7ee117ac43953edb4fe964603e7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]},"message":"add locale info to readme"},{"commit":"fb723ae8bd7bb51f9a4bab380ec1bc54cda0445b","merge":"87b506d 283b89e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #101 from kellyjonbrazil/dev\n\nDev v1.14.3"},{"commit":"283b89e37c38a3082203e43e38569c8b0bb11e12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["CHANGELOG","jc/parsers/dig.py"]},"message":"simplify answer data logic"},{"commit":"f450f9eb8b7d382af316e88301e72af01a018be9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":74,"deletions":0,"files":["tests/fixtures/centos-7.7/hciconfig-a.json","tests/fixtures/centos-7.7/hciconfig.json","tests/fixtures/ubuntu-20.04/hciconfig-a.json","tests/fixtures/ubuntu-20.04/hciconfig.json","tests/test_hciconfig.py"]},"message":"add hciconfig tests"},{"commit":"b3f8cf99a4874335c6b43e105e0c1562c08256dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":15,"deletions":15,"files":["jc/parsers/hciconfig.py"]},"message":"work for both tabs and spaces"},{"commit":"4301ea8caea7c14f59bcddf09668d0198e1115a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/hciconfig.py"]},"message":"remove debug line"},{"commit":"c672d1c174a42ce44544dfaec0ebcf3c30fd7acf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":903,"deletions":22,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","docs/parsers/hciconfig.md","jc/parsers/hciconfig.py","man/jc.1"]},"message":"initial working hciconfig parser"},{"commit":"229e953a38471cdd41af0810577d324329840a4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":205,"deletions":2,"files":["jc/cli.py","jc/parsers/hciconfig.py","setup.py","tests/fixtures/centos-7.7/hciconfig-a.out","tests/fixtures/centos-7.7/hciconfig.out","tests/fixtures/ubuntu-20.04/hciconfig-a.out","tests/fixtures/ubuntu-20.04/hciconfig.out"]},"message":"initial add of hciconfig parser"},{"commit":"87b506dc9b4831d11b4fd04fd6849532db074f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":47,"deletions":4,"files":["CHANGELOG","jc/cli.py","jc/parsers/dig.py","setup.py","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/generic/dig-answer-spaces.out","tests/test_dig.py"]},"message":"fix for spaces in dig answer data"},{"commit":"15c9002d9eff0f52d873fb3ab35dfafd03a8e919","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"simplify logic by taking out 'not' in JC_COLORS parsing"},{"commit":"042aaa61b96fc8472a8a460c49bde4cbbc359094","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"minor updates"},{"commit":"ef856c6ba5774cd8ec23acd71496846e794e3872","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"clarify -q option"},{"commit":"9cf5be73e3f975132d1ffbef412638b941a5664f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]},"message":"typo fix"},{"commit":"63fc149e2a097cbde60c2ce1aeb102d9becabd9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]},"message":"typo fix"},{"commit":"3c25839350800c7e7d2c48fc032bb21efa0ac213","merge":"03c0295 58246e3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #98 from kellyjonbrazil/dev\n\nDev v1.14.1"},{"commit":"58246e33b71bae0ca4a42ad5bdf31134948b1014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","README.md"]},"message":"update compatibility info and changelog date"},{"commit":"8b1407c7068e2105a83992bbb026138ea67bc07c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":59,"deletions":10,"files":["runtests.sh","tests/localtest_last.py","tests/test_last.py"]},"message":"pull env-specific tests from CI/CD and run locally only"},{"commit":"2fde4a4e2299b98a9958e3a55849c6791e4b17dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["EXAMPLES.md","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]},"message":"doc updates"},{"commit":"60b9e9798286121399d0f8b75d63ab0f3312c9bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":80,"deletions":38,"files":["docs/parsers/last.md","jc/parsers/last.py","tests/fixtures/centos-7.7/last-crash.json","tests/fixtures/centos-7.7/last-w.json","tests/fixtures/centos-7.7/last-wF.json","tests/fixtures/centos-7.7/last-wF.out","tests/fixtures/centos-7.7/last.json","tests/fixtures/fedora32/last.json","tests/fixtures/osx-10.14.6/last.json","tests/fixtures/ubuntu-18.04/last-w.json","tests/fixtures/ubuntu-18.04/last.json","tests/fixtures/ubuntu-20.04/last-F.json"]},"message":"last parser enhancements: augment hostname with CONSOLE for GUI login, add convenience fields when -F is used: login_epoch, logout_epoch, duration_seconds, calculate duration to hours:minutes"},{"commit":"0adac79c0f2a22b31dfef1432a029af06132467b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"Add last parser enhancements"},{"commit":"9f485b5981a2ce49ac699b9dad39993c5605ae18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["jc/parsers/iw_scan.py","tests/fixtures/centos-7.7/iw-scan0.json","tests/fixtures/centos-7.7/iw-scan1.json"]},"message":"change mac_address fieldname to bssid. Add credit to Phillip"},{"commit":"db17d21b8f9b2f899760e648f1483d33d0bcf47a","merge":"5885b96 996d394","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #97 from pschmitt/iw_scan_fix_space_detection\n\niw_scan: Improve detection of lines starting with spaces"},{"commit":"996d394e89c732f327323ca340fce405bd5fb2e4","author":"Philipp Schmitt","author_email":"philipp@schmitt.co","commit_by":"Philipp Schmitt","commit_by_email":"philipp@schmitt.co","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/iw_scan.py"]},"message":"iw_scan: Improve detection of lines starting with spaces"},{"commit":"5885b960f9b33a95ecec9f4a33233c2f8682fbc4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":2,"files":["CHANGELOG","README.md","man/jc.1"]},"message":"doc updates"},{"commit":"79987b35f332e287567e103f25cf91cb50e040c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"]},"message":"formatting"},{"commit":"661b3ef311ad26678030c70c11f2f955667311a4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":94,"deletions":2,"files":["EXAMPLES.md","README.md","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]},"message":"doc updates"},{"commit":"fb422726a8366c7133f0712d3b05a26620eea785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["tests/fixtures/ubuntu-20.04/last-F.json","tests/fixtures/ubuntu-20.04/last-F.out"]},"message":"update test to add 'down' condition"},{"commit":"4fb6f3ea59c52515926a51a006e65a1c18e57720","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/last.py"]},"message":"add support for down in addition to crash"},{"commit":"f78fe771e1c2fb4691858fa7f27b1febe5f8c6c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":48,"deletions":0,"files":["tests/fixtures/centos-7.7/iw-scan0.json","tests/fixtures/centos-7.7/iw-scan1.json","tests/test_iw_scan.py"]},"message":"add iw-scan tests"},{"commit":"567b8872538ac9f6b384b98741acd9794229d513","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":252,"deletions":12,"files":["docgen.sh","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]},"message":"doc updates"},{"commit":"e516e6b9466b29d40ec10070dd61551180eeef90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":29,"deletions":1,"files":["jc/parsers/iw_scan.py"]},"message":"fix country/environment fields and process int/float conversions"},{"commit":"62748676aae3d5955191ed267215df33a5bd3a4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":225,"deletions":0,"files":["jc/cli.py","jc/parsers/iw_scan.py"]},"message":"initial iw-scan parser"},{"commit":"7351c72e45242b9eb08c51dea7b6fccf12366dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":402,"deletions":1,"files":["jc/parsers/last.py","tests/fixtures/centos-7.7/last-crash.json","tests/fixtures/centos-7.7/last-crash.out","tests/fixtures/centos-7.7/last-wF.json","tests/fixtures/centos-7.7/last-wF.out","tests/test_last.py"]},"message":"add fixes and tests for entries that contain 'crash'"},{"commit":"2b7405c5e21db2488fc48b58f6c65cff947ca95d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":23,"deletions":16,"files":["CHANGELOG","README.md","docs/parsers/last.md","jc/parsers/last.py","man/jc.1"]},"message":"doc updates"},{"commit":"e2c77cb935a5bd95dbe930d424e5a02e88e1fa76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":15,"deletions":1,"files":["jc/parsers/last.py","tests/fixtures/ubuntu-20.04/last-F.json","tests/test_last.py"]},"message":"add test for last -F output"},{"commit":"7ac621e4c916373a03f379425033cb2d81a03578","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":36,"deletions":6,"files":["docs/parsers/last.md","jc/parsers/last.py","tests/fixtures/ubuntu-20.04/last-F.out"]},"message":"add -F support"},{"commit":"d8b5d6c66ced19dc16f2b4975d2293a903732ffe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/cli.py","setup.py"]},"message":"version bump to 1.14.1"},{"commit":"22b461eb4b1ca86ea9e8c1fde8a2c312d1526b5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":47,"deletions":12,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/test_date.py"]},"message":"Add period field for en_US.UTF-8 locale"},{"commit":"b37ee8555a2a108625a834a7990bc3320e79b08d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update"},{"commit":"1d0ad2f045733c5c690738d49951fdb9bcd3d66d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":123,"insertions":312,"deletions":312,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat_freebsd_osx.py","jc/parsers/netstat_linux.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"doc fixes"},{"commit":"ceccfb2c815f57f1b6fd81f891d8b495de23f9f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":2036,"deletions":0,"files":["tests/fixtures/centos-7.7/iw-scan0.out","tests/fixtures/centos-7.7/iw-scan1.out","tests/fixtures/ubuntu-20.04/date.out"]},"message":"add test output for iw-scan and date on ubuntu 20.04"},{"commit":"03c02953cd7e3327b391f799c37a2990eb2cb24c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":96,"deletions":0,"files":["docgen.sh","docs/parsers/wc.md"]},"message":"add wc doc"},{"commit":"f254a0eaa16fcda316f7a75424ee359058204b03","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump"},{"commit":"9e3b88727cd439e15f235dddb9dd5796e010797a","merge":"439871e b122174","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #91 from kellyjonbrazil/dev\n\nDev v1.14.0"},{"commit":"b12217466e906829d19be4cfd80dfe7cf4008e57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"spelling"},{"commit":"8b9c932f9b05295e63b3e7d0073f243458fd4dd9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"update date"},{"commit":"5986ce03db6fcd1aa0f7b064eaa96c2120c06d2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add printenv info"},{"commit":"a7b0e936e400d2f9e55629e2d722cc002e035e9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"add vdir and printenv info"},{"commit":"cb0221142455a6bcb904fbe9ade657be45815b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":61,"deletions":2,"files":["jc/parsers/wc.py","tests/fixtures/osx-10.14.6/wc-stdin.json","tests/fixtures/osx-10.14.6/wc-stdin.out","tests/test_wc.py"]},"message":"add wc tests"},{"commit":"bd443bf39227515ae5f8df65d07b30268dcc90a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/env.py"]},"message":"add printenv to env docs"},{"commit":"1f547edd361e66b19ccbcb59f6ba0ae78f6080ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/env.md"]},"message":"add printenv to env docs"},{"commit":"e4bac3a493705b09e301ddc90dd1b0cee7467c3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":378,"deletions":0,"files":["CHANGELOG","EXAMPLES.md","README.md","jc/cli.py","jc/parsers/wc.py","tests/fixtures/centos-7.7/wc.json","tests/fixtures/centos-7.7/wc.out","tests/fixtures/osx-10.14.6/wc.json","tests/fixtures/osx-10.14.6/wc.out"]},"message":"add wc parser"},{"commit":"5e6bfa681aff03fbd683f81a9f4daa56b49d1344","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["README.md","docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"add vdir info"},{"commit":"276160125e01553c75eaad68530177bcf4f9004d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"]},"message":"add new commands to README"},{"commit":"d4ae5543f2d5f28a0db5b8e2e19993c21c5d960c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":39,"deletions":0,"files":["tests/fixtures/centos-7.7/hash.json","tests/fixtures/centos-7.7/hash.out","tests/test_hash.py"]},"message":"add hash tests"},{"commit":"55f360e267fdfcfef0c124ed6b88535cc181a8b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":260,"deletions":0,"files":["CHANGELOG","EXAMPLES.md","docgen.sh","docs/parsers/hash.md","jc/cli.py","jc/parsers/hash.py"]},"message":"add hash command parser"},{"commit":"fdedab2a0cf5af15df5803d87302397dd6d71741","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/cksum.py","jc/parsers/hashsum.py"]},"message":"description updates"},{"commit":"a9be42e3031ab0d697cff67a9e384caa2265a3ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"specify parser warnings for quiet option"},{"commit":"6da9510e46e84ec1cb93384825184d2996cf0e08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":482,"deletions":0,"files":["tests/fixtures/centos-7.7/cksum.json","tests/fixtures/centos-7.7/cksum.out","tests/fixtures/centos-7.7/sum.json","tests/fixtures/centos-7.7/sum.out","tests/fixtures/osx-10.14.6/cksum.json","tests/fixtures/osx-10.14.6/cksum.out","tests/fixtures/osx-10.14.6/sum.json","tests/fixtures/osx-10.14.6/sum.out","tests/test_cksum.py"]},"message":"add cksum tests"},{"commit":"0431798178740b03cdefececc6df958e5adf62fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":229,"deletions":3,"files":["CHANGELOG","docgen.sh","docs/parsers/cksum.md","docs/parsers/hashsum.md","jc/cli.py","jc/parsers/cksum.py","jc/parsers/hashsum.py"]},"message":"add cksum parser"},{"commit":"62432f3c484e74acb2b2dfd15d448b3f1b5d53c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/hashsum.py"]},"message":"update hashsum description"},{"commit":"9fbbc30906b597e6afaf2030015a7a694d85f79e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":0,"files":["docs/parsers/hashsum.md","jc/parsers/hashsum.py"]},"message":"add supported commands to docs"},{"commit":"d1567d1f622902053f3df58645b4e39532e0c30a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":104,"deletions":0,"files":["CHANGELOG","docgen.sh","docs/parsers/hashsum.md"]},"message":"add hashsum documentation"},{"commit":"6ca1f5970b3a518615a54ee7fcbc1bddab2db331","merge":"1c880b9 3b7d54c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"1c880b9e24ca53cd592cec1dbc52301308290fb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_hashsum.py"]},"message":"force git tests"},{"commit":"3b7d54c720dfc93637328cf06eb10a85447c8793","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"add python 3.9"},{"commit":"44a740605705bd0ecfde2a6bcc7a826e1010dcf0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":87,"deletions":0,"files":["tests/fixtures/centos-7.7/md5sum.json","tests/fixtures/centos-7.7/sha256sum.json","tests/fixtures/centos-7.7/sha384sum.json","tests/fixtures/osx-10.14.6/md5.json","tests/fixtures/osx-10.14.6/shasum.json","tests/test_hashsum.py"]},"message":"add hashsum tests"},{"commit":"8157dcfdb1868548b7c8ca692e6be25f80bb2c2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":36,"deletions":11,"files":["jc/parsers/hashsum.py"]},"message":"fix for files with spaces in the name"},{"commit":"28762aea15cabc9cd8293d725e7f1f0550f8e15d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":524,"deletions":0,"files":["jc/cli.py","jc/parsers/hashsum.py","tests/fixtures/centos-7.7/md5sum.out","tests/fixtures/centos-7.7/sha256sum.out","tests/fixtures/centos-7.7/sha384sum.out","tests/fixtures/osx-10.14.6/md5.out","tests/fixtures/osx-10.14.6/shasum.out"]},"message":"add hashsum parser"},{"commit":"439871ea9f6b055a407e1faaf47e4f56d1829501","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add ubuntu"},{"commit":"c9180b005c0547c8cbfe4809e66894f1123b0809","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"b14e0725f86853f0113116b1c06f54aaa563f365","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add ansible plugin blog post link"},{"commit":"70fe3dcb4d5b97aba1d6c6dcd5088fecb27af181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"8c554604a42a3ea7ca9131b65c64fd3ceb95f906","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"formatting"},{"commit":"a0a35454bd2831c116cb598c686150b883412f94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add link to the web demo"},{"commit":"e8467e2af5b0c3f14832a9e6d4a96f219c27f3f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"remove extra space"},{"commit":"7515deb5669ef04623e9cbf58653b30c99a96430","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add ansible install command"},{"commit":"ed9e52af241b609ee7f5d1b835c9f6c5306cd3c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"spelling"},{"commit":"592a3804104628c790997747a778b3b39d076dfe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]},"message":"add Ansible note"},{"commit":"1a458d2d5b4c16c0ad90671727ae9b19939e7f23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py"]},"message":"update link"},{"commit":"0e4cf53b92ff951a6390a4dacf8833c272473583","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/readme.md","jc/__init__.py"]},"message":"add parser docs link"},{"commit":"e2f06ccb33177173d984bc0cdda1aae1a3f4c681","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"formatting"},{"commit":"8abff004cd8e09529e5d94be4883308152e11565","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/yaml.md"]},"message":"indentation fix"},{"commit":"c4a0e2e3feb2e51eaaaa202064f352229017bcc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/yaml.py"]},"message":"fix indentation"},{"commit":"4f10f79c73f8b3d6edc2c83e6a12d0ddc1a78555","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":8,"files":["docs/parsers/uname.md","jc/parsers/uname.py"]},"message":"standardize doc"},{"commit":"69e7a560fd82337570c4bb4aa4780f513c18bd94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":8,"deletions":0,"files":["docs/parsers/env.md","docs/parsers/history.md","jc/parsers/env.py","jc/parsers/history.py"]},"message":"add output info to docs"},{"commit":"59b105580805d78516abe1c1069d52a6f0a8131a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":97,"insertions":564,"deletions":269,"files":["docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"enhance docs"},{"commit":"6ed48c6289214fe5114971c80772efdf9ac1b8c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":16,"insertions":88,"deletions":37,"files":["jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py"]},"message":"enhance docs"},{"commit":"f2fb4d3f415fbc1c09eec6dedcf70fba78406b3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","jc/parsers/airport.py","jc/parsers/airport_s.py"]},"message":"improve docs"},{"commit":"6aeea59ea84e56434e87ddf89cd5d4435b99e140","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":8,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md"]},"message":"doc updates"},{"commit":"d016f3bbb307f85bd0f93a508323941a8bb9d872","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":8,"files":["jc/parsers/airport.py","jc/parsers/airport_s.py"]},"message":"improve documentation"},{"commit":"7131c297180bfa195d0209d46fc70ab8e67efe2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":114,"insertions":686,"deletions":116,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"add module usage info to docs"},{"commit":"7432442983841b42c8d3d2459b55596c05d1e100","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["docs/parsers/blkid.md"]},"message":"add usage"},{"commit":"5344883394a0662ee16bb5edd68df8e4410025f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"]},"message":"spelling/add ping parser update"},{"commit":"3fcd2f6c2e015b0e65e7261c8e591ccd8a7d0e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"f3d84bd5bf06349b681e9b72d904676e9f6bca19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":21,"deletions":3,"files":["CHANGELOG","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/fixtures/debian10/crontab-u.json","tests/fixtures/debian10/crontab-u.out","tests/test_crontab_u.py"]},"message":"tighten crontab and crontab-u parser variable detection"},{"commit":"549780c23220bca3bcab58d7329ba8d44d1be55d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"add debian/apt-get info"},{"commit":"2a6da69b82aa9ade6c01d490a32b57b415c62a9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ping.py"]},"message":"improve linux/bsd check"},{"commit":"5c538816cf76686bac1a86a7c06e24664d25a2dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":55,"deletions":4,"files":["CHANGELOG","jc/cli.py","jc/parsers/ping.py","setup.py","tests/fixtures/pi/ping-ip-O-D.json","tests/fixtures/pi/ping-ip-O-D.out","tests/fixtures/pi/ping-ip-O.json","tests/fixtures/pi/ping-ip-O.out","tests/test_ping.py"]},"message":"ping parser fix for raspberry pi"},{"commit":"7b8b378a7df397c488fc54fbd6e77f5f3f23c10c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"]},"message":"add pydoc-markdown version requirement"},{"commit":"e30a75e25c4b43969bf9f874f89e18512a5e3a34","merge":"dda517a 85ad5cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #76 from kellyjonbrazil/dev\n\nDev v1.13.2"},{"commit":"85ad5cfd0bfb903ce35e37b343244fed88dbd979","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"date change"},{"commit":"88b9d5068c5bac0691fedb543114300d6afc7131","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":74,"deletions":15,"files":["EXAMPLES.md","README.md","docs/parsers/date.md","tests/fixtures/generic/date.json","tests/fixtures/generic/date.out","tests/test_date.py"]},"message":"finish date parser"},{"commit":"f8c4948a090642db595eda2ba2ea0773e560ba67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/date.py"]},"message":"remove comment"},{"commit":"412322447f019aec0b64888631bc965e9f21186d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":48,"deletions":17,"files":["jc/parsers/date.py"]},"message":"add month_num and weekday_num fields"},{"commit":"d4f289e40fae621b87f0d49451fca4c3dde216b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/date.md","jc/parsers/date.py"]},"message":"documentation fixup"},{"commit":"e1f3feb8f529172ae26ce4c7a66a4a1c21b722ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":10,"files":["jc/parsers/date.py"]},"message":"cover empty data case in process"},{"commit":"37d3bc699c7be16955be06840d242980f05f1074","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":224,"deletions":1,"files":["CHANGELOG","docgen.sh","docs/parsers/date.md","jc/cli.py","jc/parsers/date.py","man/jc.1"]},"message":"add date parser"},{"commit":"672fd18016b8122510b6ab246b5675b7fd399b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"date bump"},{"commit":"bc2c23a2a09b96d34bb80f69fdc7751fb5ac3ed4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"version bump"},{"commit":"865f7e78124e382c6d315702fa6e48f2104cee46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["man/jc.1"]},"message":"add kv parser to man page"},{"commit":"720212b552e1bd2b9196dd5f06e4b3f85d463531","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":9,"files":["EXAMPLES.md"]},"message":"fixup traceroute example with new behavior"},{"commit":"d3be61f60837801d5a505dc2520cc80c874a6092","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]},"message":"version bump"},{"commit":"13418b16b8fd78fdd97ac045ec3fe9aa59d46080","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":2,"files":["docs/parsers/traceroute.md","jc/parsers/traceroute.py"]},"message":"doc update"},{"commit":"42d2017cd6f5ee1d1a92bd4958cd63366c1e715d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":18,"insertions":41,"deletions":24,"files":["CHANGELOG","jc/parsers/traceroute.py","tests/fixtures/centos-7.7/traceroute.json","tests/fixtures/freebsd12/traceroute.json","tests/fixtures/freebsd12/traceroute6.json","tests/fixtures/generic/traceroute1.json","tests/fixtures/generic/traceroute2.json","tests/fixtures/generic/traceroute3.json","tests/fixtures/generic/traceroute5.json","tests/fixtures/generic/traceroute6.json","tests/fixtures/generic/traceroute7.json","tests/fixtures/osx-10.14.6/traceroute-asn.json",".../fixtures/osx-10.14.6/traceroute-no-header.json","tests/fixtures/osx-10.14.6/traceroute-q.json","tests/fixtures/osx-10.14.6/traceroute.json",".../osx-10.14.6/traceroute6-mult-addresses.json","tests/fixtures/osx-10.14.6/traceroute6.json","tests/test_traceroute.py"]},"message":"traceroute updates: handle missing header row, add annotations, don't print timeouts as probes"},{"commit":"4345e76ead2a49ae0691077e9fbd2b6c5fdfd129","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"]},"message":"change to use --kv for key/value files"},{"commit":"741431322ba2677355c361fcd6095ed8cd0a4349","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":46,"deletions":24,"files":["tests/test_ini.py","tests/test_kv.py"]},"message":"update tests for kv parser"},{"commit":"980beaaf41a04891f7c2f5daeb1e3a23d3c7ec19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/ifconfig.py"]},"message":"fix docgen issue"},{"commit":"2205034e0906b333c259648f7a0e5392945f12ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":105,"deletions":31,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","jc/cli.py","jc/parsers/ini.py","jc/parsers/kv.py","setup.py"]},"message":"add kv parser"},{"commit":"82b9c87a66fce5d8626c56858a8c6f1f3326e7fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":58,"insertions":345,"deletions":62,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/readme.md","docs/utils.md"]},"message":"update docs"},{"commit":"dda517a937323b9888e081aea1032a9d63c4a6bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":163,"files":["README.md"]},"message":"shorten more examples"},{"commit":"4e6d283b9eddf7759b4dd37bd643394ff73febd4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":65,"files":["README.md"]},"message":"shorten netstat example"},{"commit":"55acab05aa740dfd7534304f2678b60942cad116","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["changelog.txt => CHANGELOG"]},"message":"change name to CHANGELOG"},{"commit":"ed38a18d236cdb991779f4f148e42359c139e61c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":86,"files":["README.md"]},"message":"remove more examples"},{"commit":"95b3c11203d3dd0627c5eeca39fe1d145bf2d733","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":124,"files":["README.md"]},"message":"remove more examples"},{"commit":"dce318f4fd44b9c4013211bf233020e84566ddb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1537,"files":["README.md"]},"message":"remove examples to reduce file size"},{"commit":"85127f0fb8096192b19fca1f4ffe38ee391351be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["jc/examples.md => EXAMPLES.md"]},"message":"move examples to root"},{"commit":"fb45058244ce879f12bbb5b7267b0fd63fef1d63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2640,"deletions":0,"files":["jc/examples.md"]},"message":"add examples file"},{"commit":"45bb5ae389a00ed6a132a65c69ce76c7e5976858","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"spelling"},{"commit":"339238ab364d8735892a11cb16a62a651edae169","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":79,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py","tests/fixtures/centos-7.7/route-6-n.json","tests/fixtures/centos-7.7/route-6-n.out","tests/fixtures/centos-7.7/route-6.json","tests/fixtures/centos-7.7/route-6.out","tests/test_route.py"]},"message":"version bump and add route -6 tests"},{"commit":"032cda8b3db096b690d2557e3b918c50c716c543","merge":"690ac52 6badd3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #74 from kellyjonbrazil/dev\n\nDev v1.13.0"},{"commit":"6badd3fb1e1cf6d1ee99614fadc20d54be8039aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["tests/test_cli.py"]},"message":"add parser count test"},{"commit":"724d825745b6f1692eb3b068c3fb59d14892e690","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["man/jc.1"]},"message":"add tracepath parser"},{"commit":"ff1e32ad2ee156f105f5069c6b14a65b22784dfa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump"},{"commit":"a5f97febd3066b9e95a18d6b73162a7d206c5845","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":132,"deletions":0,"files":["tests/fixtures/centos-7.7/tracepath.json","tests/fixtures/centos-7.7/tracepath6.json","tests/fixtures/freebsd12/traceroute.json","tests/fixtures/freebsd12/traceroute.out","tests/fixtures/freebsd12/traceroute6.json","tests/fixtures/freebsd12/traceroute6.out","tests/fixtures/osx-10.14.6/uname.out","tests/test_tracepath.py","tests/test_traceroute.py","tests/test_uname.py"]},"message":"update traceroute, tracepath, and uname tests"},{"commit":"5baa6cc865634142690e78596c640db35e110b29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]},"message":"add route parser update"},{"commit":"7a4f30b843d8f11711abbb8f9bb263f945ff87ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/route.py"]},"message":"fix for iface issue"},{"commit":"b2c385dc4f63e3e15f47e986deac0524967214a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"]},"message":"change 'if' to 'iface'"},{"commit":"5d5da8d33fa6ab77c745d338d1a2e2e8f2e4c697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/route.py"]},"message":"more fixes for ipv6 fix"},{"commit":"e60457157839daba385202906997dec48c9c4950","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"]},"message":"fix next_hop fix"},{"commit":"f9dacc3f95b32e1431914ae0b0dc5c8e8840d5a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/route.py"]},"message":"fixup for ipv6"},{"commit":"6086920332575cd7db1b38262a3b4ba8fbfae7ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]},"message":"update ParseError message"},{"commit":"f52f3163bcaf8d7e784f02505e81456e8240295b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":49,"deletions":0,"files":["README.md"]},"message":"add tracepath example"},{"commit":"d18ff73e880c7d34957f2713857cc83094f914cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/tracepath.py"]},"message":"update author info"},{"commit":"1e5d602caecd96c9056ad77f9fc50cf25bf6fdfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":288,"deletions":32,"files":["docs/parsers/tracepath.md","jc/parsers/tracepath.py"]},"message":"working tracepath parser"},{"commit":"12912521ecb376c36dfdd743b3c4195598fb9aac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":11,"files":["docs/parsers/traceroute.md","jc/parsers/traceroute.py"]},"message":"doc update"},{"commit":"842ea3a94bec3fcab76257fdde5514d1de3d57fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":153,"deletions":0,"files":["docs/parsers/tracepath.md","jc/parsers/tracepath.py"]},"message":"add tracepath parser skeleton"},{"commit":"a8560dbc1598fa97de87594228b4cc10282d4197","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add tracepath"},{"commit":"a65e27540a8c5c7123d2fdf79fcbefa1e2f8afdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":24,"files":["docgen.sh","docs/parsers/traceroute.md","jc/parsers/traceroute.py"]},"message":"update docs"},{"commit":"c3c5ed11e68938e35920144406d37ea3b21d63dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]},"message":"change name from tr to trparse"},{"commit":"ce24149335cd8ed1e8513a2cf040432fe42d86b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping.py"]},"message":"formatting"},{"commit":"0314ca8c4831d24c169a0e4948421ecd638fd699","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add trparse acknowledgement"},{"commit":"ebd8ee49a9f43063850e30c745c8cae46ee13de1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":1,"files":["README.md"]},"message":"add key/value info to ini example"},{"commit":"38d10c97814ec69586c3b447c182f339772d6e22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":130,"deletions":1,"files":["README.md"]},"message":"add ping and traceroute examples"},{"commit":"360106c24d24e6a9697c00a158a14aaa334a4b1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]},"message":"add tracepath"},{"commit":"ca470a5d02fd9fbaf05d8b3b3bb1ffe9f4cf5af3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":39,"deletions":0,"files":["tests/fixtures/centos-7.7/tracepath.out","tests/fixtures/centos-7.7/tracepath6.out"]},"message":"add tracepath fixtures"},{"commit":"57f66e6b1d554ff20b72959f5ebb9e7b2feffed2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":2,"files":["changelog.txt","jc/parsers/uname.py"]},"message":"add exception with hint to use \"uname -a\""},{"commit":"e774f67924c0e6195f79829b2ac75ce95f76fbaa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["jc/parsers/ini.py"]},"message":"turn off interpolation and coerce None to ''"},{"commit":"ac10e576c167d20de259e47a6aa5b23fc998b4c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/ini.md","jc/parsers/ini.py"]},"message":"spelling"},{"commit":"bcae0a99cd0ccce4ec8a67929f7c83a1095a5b88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"add key/value to ini description"},{"commit":"c73c2ff879b3ed7a3e6f04e53e0a729e4f00ed21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["changelog.txt"]},"message":"add ping, traceroute, and ini update"},{"commit":"c39b1a3356881a11a8f6fe9432897e6d67162f07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["README.md"]},"message":"add ping, traceroute and update ini description"},{"commit":"125dc2d9e051a82a4a438afe2e520212338353f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":3,"files":["docs/parsers/ini.md"]},"message":"add info about key/value files to doc"},{"commit":"b7d4ddc7ced2c3aabf3a857b53a0bf1b62eb6a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":50,"deletions":0,"files":["tests/fixtures/generic/keyvalue-ifcfg.json","tests/fixtures/generic/keyvalue-ifcfg.txt","tests/fixtures/generic/keyvalue.json","tests/fixtures/generic/keyvalue.txt","tests/test_ini.py"]},"message":"add tests for key/value files"},{"commit":"f5e546c6fa7cba166284a0976887d6b82451d3e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":33,"deletions":9,"files":["jc/parsers/ini.py"]},"message":"add support for simple key/value pairs"},{"commit":"928e39cd103b96b8c3ccc8d85c930ffb419296c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":104,"deletions":0,"files":["tests/fixtures/generic/traceroute1.json","tests/fixtures/generic/traceroute2.json","tests/fixtures/generic/traceroute3.json","tests/fixtures/generic/traceroute4.json","tests/fixtures/generic/traceroute5.json","tests/fixtures/generic/traceroute6.json","tests/fixtures/generic/traceroute7.json","tests/fixtures/generic/traceroute8.json","tests/test_traceroute.py"]},"message":"add generic traceroute tests"},{"commit":"d0b7ea68a005daff313e44808b256656313a78a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/traceroute.py"]},"message":"check for key in dictionary"},{"commit":"8444690133b6a7522822ab279e97ede6ded17ba9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["man/jc.1"]},"message":"add traceroute"},{"commit":"c03c42d76703ff8f423cf3c10ea6254a27a685cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":76,"deletions":9,"files":["tests/fixtures/centos-7.7/traceroute.json","tests/fixtures/osx-10.14.6/traceroute-asn.json",".../osx-10.14.6/traceroute-mult-addresses.json","tests/fixtures/osx-10.14.6/traceroute-q.json","tests/fixtures/osx-10.14.6/traceroute.json",".../osx-10.14.6/traceroute6-mult-addresses.json","...-address.out => traceroute6-mult-addresses.out}","tests/fixtures/osx-10.14.6/traceroute6.json","tests/test_traceroute.py"]},"message":"add traceroute tests"},{"commit":"ab67688a00ac335d2a5603e9cadef8b565957911","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":55,"deletions":0,"files":["tests/test_traceroute.py"]},"message":"add test skeleton"},{"commit":"5dcb7166daef3c53da65bba0d591672e64d3a90b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":169,"deletions":0,"files":["docgen.sh","docs/parsers/traceroute.md"]},"message":"add traceroute doc"},{"commit":"14697b86d7fc1cfebb41e0fd2d9a9b9b60071d3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":2,"files":["jc/parsers/traceroute.py"]},"message":"add MIT license"},{"commit":"4f4b6276d4bf798b17d996f39742bd0428fc2f19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":38,"deletions":33,"files":["jc/parsers/traceroute.py"]},"message":"update docstring"},{"commit":"7bc497e1291059ae7858c9d2bd2d9a1b4c030dd1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":117,"deletions":14,"files":["jc/parsers/traceroute.py"]},"message":"updated process() function to set integers and floats"},{"commit":"68a37a6a5a3f0ad0fa24c84d363050af9fa11f97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/parsers/traceroute.py"]},"message":"remove unused function load()"},{"commit":"6f5cd1d7c5f76d7d4da42171fdc30daf9fe3996e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]},"message":"change to use f-string"},{"commit":"126b1b121ca10183dc7e9dece83b42907becad39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":0,"files":["tests/fixtures/generic/traceroute8.out"]},"message":"add traceroute6 example"},{"commit":"2341e456a012564f86d533d2748a5887d79995e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]},"message":"use ParseError instead of generic Exception"},{"commit":"72d80e95bb50ae2a7432082e65aba15235ba0955","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":115,"deletions":8,"files":["jc/parsers/traceroute.py","tests/fixtures/generic/traceroute1.out","tests/fixtures/generic/traceroute2.out","tests/fixtures/generic/traceroute3.out","tests/fixtures/generic/traceroute4.out","tests/fixtures/generic/traceroute5.out","tests/fixtures/generic/traceroute6.out","tests/fixtures/generic/traceroute7.out"]},"message":"remove unused regex patterns"},{"commit":"f5ec82440cd1c1b5ac9011d3517298d0cdcd8766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/traceroute.py"]},"message":"simplify regex patterns"},{"commit":"c8e526ead35b868733f57b4c114062a48b78a817","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":3,"files":["jc/parsers/traceroute.py","tests/fixtures/osx-10.14.6/traceroute-q.out"]},"message":"fixes for bsd-style ipv6 output"},{"commit":"066adfb76479df7042bfb12bbb83b5dbd8a6d54c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":83,"deletions":7,"files":["jc/parsers/traceroute.py","tests/fixtures/centos-7.7/traceroute.out","tests/fixtures/osx-10.14.6/traceroute-asn.out",".../osx-10.14.6/traceroute-mult-addresses.out",".../fixtures/osx-10.14.6/traceroute-no-header.out",".../osx-10.14.6/traceroute6-multi-address.out","tests/fixtures/osx-10.14.6/traceroute6.out"]},"message":"handle warning lines in the traceroute output"},{"commit":"5b444d4717b0b8528647e17e71d699907def3e18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":307,"deletions":0,"files":["jc/cli.py","jc/parsers/traceroute.py","tests/fixtures/osx-10.14.6/traceroute.out"]},"message":"add traceroute parser"},{"commit":"69c95adc8d59927c1c00b7e766ca5003b7b6454c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":81,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ping6-ip-dup.json","tests/fixtures/osx-10.14.6/ping6-ip-dup.out","tests/test_ping.py"]},"message":"add osx ipv6 ping dup test"},{"commit":"2b0e0d8f5c1a6a5450e362971f9ad5892093b2ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":27,"deletions":0,"files":["tests/fixtures/centos-7.7/ping6-ip-dup.json","tests/fixtures/centos-7.7/ping6-ip-dup.out","tests/test_ping.py"]},"message":"add ipv6 dup test"},{"commit":"778d1bacbf8df523d434b22f5e1517955e4c15ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":28,"deletions":12,"files":["docs/parsers/ping.md","jc/parsers/ping.py"]},"message":"update docs to add \"duplicates\" fields"},{"commit":"7e1b0410166c584775ebcd681a280ec7321560c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":0,"files":["tests/test_ping.py"]},"message":"add duplicate replies tests"},{"commit":"313b9b329ca6b674069718839f55a4bd7834db80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":55,"insertions":55,"deletions":53,"files":["tests/fixtures/centos-7.7/ping-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping-hostname-O-p.json","tests/fixtures/centos-7.7/ping-hostname-O.json","tests/fixtures/centos-7.7/ping-ip-O-D.json","tests/fixtures/centos-7.7/ping-ip-O.json","tests/fixtures/centos-7.7/ping-ip-dup.json","tests/fixtures/centos-7.7/ping6-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping6-hostname-O-p.json","tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","tests/fixtures/centos-7.7/ping6-ip-O-p.json","tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping-hostname-O-p.json","tests/fixtures/fedora32/ping-hostname-O.json","tests/fixtures/fedora32/ping-ip-O-D.json","tests/fixtures/fedora32/ping-ip-O.json","tests/fixtures/fedora32/ping6-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping6-hostname-O-D-p.json","tests/fixtures/fedora32/ping6-hostname-O-p.json","tests/fixtures/fedora32/ping6-ip-O-D-p.json","tests/fixtures/fedora32/ping6-ip-O-p.json","tests/fixtures/freebsd12/ping-hostname-p.json","tests/fixtures/freebsd12/ping-hostname-s.json","tests/fixtures/freebsd12/ping-hostname.json","tests/fixtures/freebsd12/ping-ip-p.json","tests/fixtures/freebsd12/ping-ip-s.json","tests/fixtures/freebsd12/ping-ip.json","tests/fixtures/freebsd12/ping6-hostname-p.json","tests/fixtures/freebsd12/ping6-hostname-s.json","tests/fixtures/freebsd12/ping6-hostname.json","tests/fixtures/freebsd12/ping6-ip-p.json","tests/fixtures/freebsd12/ping6-ip-s.json","tests/fixtures/freebsd12/ping6-ip.json","tests/fixtures/osx-10.14.6/ping-hostname-p.json","tests/fixtures/osx-10.14.6/ping-hostname-s.json","tests/fixtures/osx-10.14.6/ping-hostname.json","tests/fixtures/osx-10.14.6/ping-ip-dup.json","tests/fixtures/osx-10.14.6/ping-ip-p.json","tests/fixtures/osx-10.14.6/ping-ip-s.json","tests/fixtures/osx-10.14.6/ping-ip.json","tests/fixtures/osx-10.14.6/ping6-hostname-p.json","tests/fixtures/osx-10.14.6/ping6-hostname-s.json","tests/fixtures/osx-10.14.6/ping6-hostname.json","tests/fixtures/osx-10.14.6/ping6-ip-p.json","tests/fixtures/osx-10.14.6/ping6-ip-s.json","tests/fixtures/osx-10.14.6/ping6-ip.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping-hostname-O.json","tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","tests/fixtures/ubuntu-18.04/ping-ip-O.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json"]},"message":"update fixtures for added 'duplicate' fields"},{"commit":"6830062256fbc453f87224f7ab8c10e4494b5a83","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":112,"deletions":24,"files":["docs/parsers/ping.md","jc/parsers/ping.py","tests/fixtures/centos-7.7/ping-ip-dup.out","tests/fixtures/osx-10.14.6/ping-ip-dup.out"]},"message":"add support for duplicate replies"},{"commit":"323072c9827c41c5d74433504b5efceb846cfe09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/ping.md","jc/parsers/ping.py"]},"message":"add source_ip to schema doc"},{"commit":"8719d96bddec80187e7ba3286ba93bfec8465744","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"change description"},{"commit":"dd5d318ab5bbb1027dd600fd3b0b6ec9b8adfdc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["man/jc.1"]},"message":"version bump and add ping command"},{"commit":"d6dc7f5e65c097895c19000e59e8803a3b350fdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":135,"deletions":29,"files":["tests/fixtures/osx-10.14.6/ping-hostname-p.json","tests/fixtures/osx-10.14.6/ping-hostname-s.json","tests/fixtures/osx-10.14.6/ping-hostname.json","tests/fixtures/osx-10.14.6/ping-ip-p.json","tests/fixtures/osx-10.14.6/ping-ip-s.json","tests/fixtures/osx-10.14.6/ping-ip.json","tests/fixtures/osx-10.14.6/ping6-hostname-p.json","tests/fixtures/osx-10.14.6/ping6-hostname-s.json","tests/fixtures/osx-10.14.6/ping6-hostname.json","tests/fixtures/osx-10.14.6/ping6-ip-p.json","tests/fixtures/osx-10.14.6/ping6-ip-s.json","tests/fixtures/osx-10.14.6/ping6-ip.json","tests/test_ping.py"]},"message":"add osx ping tests"},{"commit":"c203664eb5aafa0afa3101b79e3fd13b3e009ec5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":171,"deletions":9,"files":["tests/fixtures/freebsd12/ping-hostname-p.json","tests/fixtures/freebsd12/ping-hostname-s.json","tests/fixtures/freebsd12/ping-hostname.json","tests/fixtures/freebsd12/ping-ip-p.json","tests/fixtures/freebsd12/ping-ip-s.json","tests/fixtures/freebsd12/ping-ip.json","tests/fixtures/freebsd12/ping6-hostname-p.json","tests/fixtures/freebsd12/ping6-hostname-s.json","tests/fixtures/freebsd12/ping6-hostname.json","tests/fixtures/freebsd12/ping6-ip-p.json","tests/fixtures/freebsd12/ping6-ip-s.json","tests/fixtures/freebsd12/ping6-ip.json","tests/test_ping.py"]},"message":"freebsd ping tests"},{"commit":"19ecf1fa19e9fa0873002baf07fa670b71ed7752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":118,"deletions":0,"files":["tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping-hostname-O-p.json","tests/fixtures/fedora32/ping-hostname-O.json","tests/fixtures/fedora32/ping-ip-O-D.json","tests/fixtures/fedora32/ping-ip-O.json",".../fixtures/fedora32/ping6-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping6-hostname-O-D-p.json","tests/fixtures/fedora32/ping6-hostname-O-p.json","tests/fixtures/fedora32/ping6-ip-O-D-p.json","tests/fixtures/fedora32/ping6-ip-O-p.json","tests/test_ping.py"]},"message":"add Fedora32 tests"},{"commit":"b8deb0426cc23333c0e0a9dc3776d9761d99abb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":119,"deletions":8,"files":[".../ubuntu-18.04/ping-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping-hostname-O.json","tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","tests/fixtures/ubuntu-18.04/ping-ip-O.json",".../ubuntu-18.04/ping6-hostname-O-D-p-s.json",".../ubuntu-18.04/ping6-hostname-O-D-p.json",".../fixtures/ubuntu-18.04/ping6-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json","tests/test_ping.py"]},"message":"add ubuntu ping tests"},{"commit":"3b8371f0208a097cb8a1c026348d3842e6702b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":202,"deletions":0,"files":[".../fixtures/centos-7.7/ping-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping-hostname-O-p.json","tests/fixtures/centos-7.7/ping-hostname-O.json","tests/fixtures/centos-7.7/ping-ip-O-D.json","tests/fixtures/centos-7.7/ping-ip-O.json",".../centos-7.7/ping6-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping6-hostname-O-p.json","tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","tests/fixtures/centos-7.7/ping6-ip-O-p.json","tests/test_ping.py"]},"message":"add centos ping tests"},{"commit":"20bb1cdf396abdb3707b34fa146cbe913f9bbd6f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/ping.py"]},"message":"add TypeError to except for None values"},{"commit":"301daa48d0bfc28f97c8e46f028f8c6b875bf34e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":114,"deletions":16,"files":["docs/parsers/ping.md","jc/parsers/ping.py"]},"message":"update documentation"},{"commit":"8421ec88033e02f472e4961d87551a0352663a16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ping.py"]},"message":"remove cygwin compatibility"},{"commit":"74211eb0129f6aa655a38ba4d4d8844d81441107","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":82,"deletions":5,"files":["jc/parsers/ping.py"]},"message":"add examples"},{"commit":"60bd42f298f309cbec6d24c9543ea3d51bd73b18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":59,"deletions":11,"files":["jc/parsers/ping.py"]},"message":"add process() logic"},{"commit":"14bdd74526e400997c5bc247ea35ed40799e83ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":100,"deletions":0,"files":["tests/fixtures/freebsd12/ping-hostname-p.out","tests/fixtures/freebsd12/ping-hostname-s.out","tests/fixtures/freebsd12/ping-hostname.out","tests/fixtures/freebsd12/ping-ip-p.out","tests/fixtures/freebsd12/ping-ip-s.out","tests/fixtures/freebsd12/ping-ip.out","tests/fixtures/freebsd12/ping6-hostname-p.out","tests/fixtures/freebsd12/ping6-hostname-s.out","tests/fixtures/freebsd12/ping6-hostname.out","tests/fixtures/freebsd12/ping6-ip-p.out","tests/fixtures/freebsd12/ping6-ip-s.out","tests/fixtures/freebsd12/ping6-ip.out"]},"message":"add ping test fixtures"},{"commit":"fb0f3eda04a4b1dbb81da7d5791cbfe746bfd617","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["tests/fixtures/create_fixtures.sh"]},"message":"add ping commands"},{"commit":"91ee6e6701307363336a39f9e16641465ddd05c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":100,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ping-hostname-p.out","tests/fixtures/osx-10.14.6/ping-hostname-s.out","tests/fixtures/osx-10.14.6/ping-hostname.out","tests/fixtures/osx-10.14.6/ping-ip-p.out","tests/fixtures/osx-10.14.6/ping-ip-s.out","tests/fixtures/osx-10.14.6/ping-ip.out","tests/fixtures/osx-10.14.6/ping6-hostname-p.out","tests/fixtures/osx-10.14.6/ping6-hostname-s.out","tests/fixtures/osx-10.14.6/ping6-hostname.out","tests/fixtures/osx-10.14.6/ping6-ip-p.out","tests/fixtures/osx-10.14.6/ping6-ip-s.out","tests/fixtures/osx-10.14.6/ping6-ip.out"]},"message":"add osx ping test fixtures"},{"commit":"51f4e6927c68a7e2a26954f564d10d316b98a984","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":3,"files":["jc/parsers/ping.py"]},"message":"add support for pattern in osx/bsd"},{"commit":"94988d86674293faddc6f7e7c82575738d2dc791","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":257,"deletions":0,"files":["tests/fixtures/fedora32/ping-hostname-O-D-p-s.out","tests/fixtures/fedora32/ping-hostname-O-p.out","tests/fixtures/fedora32/ping-hostname-O.out","tests/fixtures/fedora32/ping-ip-O-D.out","tests/fixtures/fedora32/ping-ip-O.out","tests/fixtures/fedora32/ping6-hostname-O-D-p-s.out","tests/fixtures/fedora32/ping6-hostname-O-D-p.out","tests/fixtures/fedora32/ping6-hostname-O-p.out","tests/fixtures/fedora32/ping6-ip-O-D-p.out","tests/fixtures/fedora32/ping6-ip-O-p.out"]},"message":"add fedora ping fixtures"},{"commit":"fe36f5a98cd3ee7753e250b6553e4453d971f929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":318,"deletions":0,"files":["tests/fixtures/centos-7.7/ping-ip-O-D.out","tests/fixtures/centos-7.7/ping-ip-O.out","tests/fixtures/create_fixtures.sh",".../ubuntu-18.04/ping-hostname-O-D-p-s.out","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.out","tests/fixtures/ubuntu-18.04/ping-hostname-O.out","tests/fixtures/ubuntu-18.04/ping-ip-O-D.out","tests/fixtures/ubuntu-18.04/ping-ip-O.out",".../ubuntu-18.04/ping6-hostname-O-D-p-s.out",".../fixtures/ubuntu-18.04/ping6-hostname-O-D-p.out","tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.out","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.out","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.out"]},"message":"add fixtures for ping"},{"commit":"f9eb18b9271b2428dd82f2dc26d3fa0435dad81d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/ping.py"]},"message":"change 'request_timeout' field to 'type', fix compatibility, other formatting fixes"},{"commit":"cc60f3674822c644933f286a0364b09d7e2a60b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":67,"deletions":1,"files":["docgen.sh","docs/parsers/ping.md","jc/cli.py"]},"message":"add ping parser"},{"commit":"604ade791f7bd33b37f64916befba27a2ea08b5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":506,"deletions":0,"files":["jc/parsers/ping.py",".../fixtures/centos-7.7/ping-hostname-O-D-p-s.out","tests/fixtures/centos-7.7/ping-hostname-O-p.out","tests/fixtures/centos-7.7/ping-hostname-O.out",".../fixtures/centos-7.7/ping6-hostname-O-D-p-s.out","tests/fixtures/centos-7.7/ping6-hostname-O-p.out","tests/fixtures/centos-7.7/ping6-ip-O-D-p.out","tests/fixtures/centos-7.7/ping6-ip-O-p.out"]},"message":"add ping parser"},{"commit":"690ac52a917200e46eac2feafc9f504f2734301c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":261,"deletions":0,"files":["man/jc.1"]},"message":"add man page"},{"commit":"34ed772775f1f02ed148f24a3bfff532bc811607","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"d5ab95571f64f55d8194e9e5592ac538bb535229","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":11,"files":["tests/test_cli.py"]},"message":"fix tests when using older versions of pygments"},{"commit":"ffb3a0ee5fb30a3f61d6cbedf877ab04acdbf624","merge":"fde0bc8 94b12b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #73 from kellyjonbrazil/dev\n\nDev v1.12.0"},{"commit":"94b12b57aaa56170d1f31f4910fd1239f88de137","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"spelling"},{"commit":"6d149e84571d5d6dd1d8a1f219ba299de5173779","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":1,"files":["changelog.txt","setup.py"]},"message":"version bump"},{"commit":"1ad89c90d890039b817f65b2635db1b5e849a9e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add pacman"},{"commit":"fb71c7b020bc1eda9484595f30b0200a4f59aa45","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_cli.py"]},"message":"function name spelling"},{"commit":"28ed17ad3bce866e5dc0179ef5de43380ac6ace1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_cli.py"]},"message":"add parser_count test to test_cli_about_jc"},{"commit":"0c2a4e2bf71dca50d4a9bb27ca99944909c022ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["tests/test_cli.py"]},"message":"add cli tests"},{"commit":"62bec30de2f1a303f2ec411d89f7f9f9c6d1abaf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":0,"files":["tests/test_cli.py"]},"message":"add json_out tests"},{"commit":"3fced77e4e258dbf7db94a313e599c830a597b49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":98,"deletions":1,"files":["tests/test_cli.py"]},"message":"add set_env_colors tests"},{"commit":"a09d1d8b7687912610598c88d172733d5e29b1ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":6,"files":["jc/cli.py"]},"message":"move environment variable assignment to main() to simplify tests"},{"commit":"8f4243fbd8d70ca9fd019e984c564e37c81e07db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"47aaf20549ea238443427e69d5841d6996b7afab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":17,"deletions":0,"files":["README.md"]},"message":"add sysctl command parser"},{"commit":"0c5289ea50e4d3d35e80147b4cad32434c19a2a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":72,"deletions":2,"files":["tests/fixtures/freebsd12/sysctl-a.json","tests/fixtures/osx-10.14.6/sysctl-a.json","tests/test_sysctl.py"]},"message":"add sysctl tests"},{"commit":"3e53323514906fb84abfaeed0c2ee1fd9090ad8d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/sysctl.py"]},"message":"don't filter out empty lines"},{"commit":"a5ee9861b9b9b479aee59ea5b1d75f20d7c3c8e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3785,"deletions":1,"files":["tests/fixtures/freebsd12/sysctl-a.json","tests/fixtures/freebsd12/sysctl-a.out","tests/fixtures/osx-10.14.6/sysctl-a.json"]},"message":"update fixtures"},{"commit":"feb8ca76545cba4fd0927273ddf90a77df994006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/sysctl.md"]},"message":"spelling"},{"commit":"a7abe4473b90c512466db9ae98cfac585689fe2a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/sysctl.py"]},"message":"spelling"},{"commit":"780b9b61dec3e142e46c9a82146d2af4e1144123","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/sysctl.py"]},"message":"specify IndexError exception in try/except block"},{"commit":"19ace36ffa659bedf0ba2e43572c9e253592b2e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2167,"deletions":0,"files":["tests/fixtures/osx-10.14.6/sysctl-a.json","tests/fixtures/osx-10.14.6/sysctl-a.out","tests/fixtures/ubuntu-18.04/sysctl-a.json","tests/fixtures/ubuntu-18.04/sysctl-a.out"]},"message":"add fixtures"},{"commit":"5fff8afc9f47f8cc6db8ed3613b90b5cdc683b43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":33,"deletions":11,"files":["jc/parsers/sysctl.py"]},"message":"add fixes for freebsd where values can be on separate lines under the key"},{"commit":"4ad230c9279c5eb6c8ed6baf7254b8e9328e5af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":929,"deletions":14,"files":["docs/parsers/sysctl.md","jc/parsers/sysctl.py","tests/fixtures/centos-7.7/sysctl-a.json","tests/fixtures/centos-7.7/sysctl-a.out"]},"message":"doc update and add test fixtures"},{"commit":"dd98eb1ec8f451eb87a5094e76a7f758dee3fc69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":7,"files":["jc/parsers/sysctl.py"]},"message":"append duplicate key values to original key instead of adding unique keys"},{"commit":"c6baf42e72b4f41ed511e7db943297d03a39c0d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":94,"deletions":7,"files":["docgen.sh","docs/parsers/sysctl.md","jc/parsers/sysctl.py"]},"message":"doc updates"},{"commit":"e2bac97d563e5ef771ccd8ed1e5c42cbf588b120","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["jc/parsers/sysctl.py"]},"message":"fix for multiple identical keys in sysctl output"},{"commit":"d112ee94d0ec534828c8508d0fb833b768975990","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":4,"files":["jc/parsers/sysctl.py"]},"message":"use try/except and add support for floats in process()"},{"commit":"27b21b2fafab912f21b88b66c7f817cbce155765","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":7,"files":["jc/cli.py"]},"message":"formatting and docstring updates"},{"commit":"8c96d5cd20448a4f7f9736c4d489d6ecc3068ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["requirements.txt"]},"message":"reduce pygments version requirement"},{"commit":"c29ed3fd695f725005333db5e6e2cd844bb4ca14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":13,"files":["jc/cli.py"]},"message":"formatting of quotation marks and docstrings"},{"commit":"cedf603f121636bdfa95432059c3c275c3ea3e9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/cli.py"]},"message":"minor formatting"},{"commit":"279161c36f288c27a9789054ae372fe8ceb58a94","merge":"bc7116c ce0b43d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #72 from duelafn/pygments-2.3\n\nSupport older pygments"},{"commit":"ce0b43d919f07d96d1b94e9d14d03e935e80011d","author":"Dean Serenevy","author_email":"dean@serenevy.net","commit_by":"Dean Serenevy","commit_by_email":"dean@serenevy.net","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"]},"message":"Remove dependency on 3rd party packaging library"},{"commit":"ddafa5bf06066bab8e9587be902d6752fcf51605","author":"Dean Serenevy","author_email":"dean@serenevy.net","commit_by":"Dean Serenevy","commit_by_email":"dean@serenevy.net","stats":{"files_changed":2,"insertions":47,"deletions":7,"files":["jc/cli.py","setup.py"]},"message":"Support older pygments"},{"commit":"bc7116c31bacf3159aef775fd0e615187420b010","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":8,"files":["jc/cli.py"]},"message":"fix JC_COLORS env bug and simplify set_env_colors()"},{"commit":"53b709272115e769dac905296fa3b000c1cdd66a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":11,"files":["jc/cli.py"]},"message":"remove side-effects from functions and print in main()"},{"commit":"beb9174b1b35937ae1fb99778369ae643a8f1005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":123,"deletions":0,"files":["jc/parsers/sysctl.py"]},"message":"add sysctl parser"},{"commit":"aea41ed341c8d53cc07c35e8044e8f816ddd2fed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/cli.py"]},"message":"move verbose_debug enable earlier in code to catch more issues. add sysctl and version bump"},{"commit":"d789494cb1f691aa352419aaefc692f654477177","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/tracebackplus.py"]},"message":"change type check to use isinstance"},{"commit":"608e7b4cff081f92177e4151ffa1a91a4a6895ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":61,"deletions":0,"files":["jc/tracebackplus.py"]},"message":"add license info"},{"commit":"4ee199c02a78c2707c5d1427d7c8fae56df5671c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":189,"deletions":3,"files":["jc/cli.py","jc/tracebackplus.py"]},"message":"use tracebackplus instead of cgitb since cgitb is depricated"},{"commit":"fbf47d408501dadda4671fb530f5e11859e85d53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add arch linux"},{"commit":"5a238e4b4204f0552327534ef798c28d3ad4f578","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"remove updates-testing from fedora command"},{"commit":"f852b8246a8f9e5f7d9144fed3a0daa4eddfe035","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/utils.py"]},"message":"wrap warning message"},{"commit":"88140d929a500ee78f807862c4912c399df2a460","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"wrap error message in code"},{"commit":"45f726824027af49c437b6e81e4700f7098af320","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"add -dd to error message"},{"commit":"3a3c8e4d4a77135eaee5cb30c3107a4531c300ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/cli.py"]},"message":"move verbose_debug under debug check"},{"commit":"c1ac183a0472e93226c9ee1905f56c5183e3721f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":15,"deletions":22,"files":["jc/cli.py"]},"message":"simplify debug option"},{"commit":"18bb779ee5cd5821764b03173f16e922f753c64d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"formatting: double quotes to single quotes"},{"commit":"8b6612fe7911ab9e0bf8d29be60865d3b8aa3fd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/cli.py"]},"message":"move JC_COLORS parsing error message"},{"commit":"fde0bc853415418e01616861ace5048770bd97f8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":34,"files":["README.md"]},"message":"improve package install info"},{"commit":"e661a78939ff067b8a61f08301c178dd10a344ab","merge":"b969751 847e346","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #71 from wigust/guix\n\nadd guix package info"},{"commit":"847e346602789bf58e3515319e9d080dfb897fc9","author":"Oleg Pykhalov","author_email":"go.wigust@gmail.com","commit_by":"Oleg Pykhalov","commit_by_email":"go.wigust@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]},"message":"add guix package info"},{"commit":"b9697516887c61f08d8d7b1dc9130350e5bdba9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]},"message":"add other references"},{"commit":"ad6f2ba03a293a7f55e456fa5f5b55ee3cbcd4ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"63c6a5edc0e9001b143595fd8b96f1b4a1377a3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"formatting"},{"commit":"9f4cf9dd5efe94adfff0961fdb73097ca27c5463","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":197,"deletions":67,"files":["README.md"]},"message":"formatting"},{"commit":"51331b6dc01eee00847fa4be549ffde365373a01","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["README.md"]},"message":"formatting"},{"commit":"efb6761033319644bf9cdae6288ff5609f6482ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"6a4f737a0f1c322bebccf69809d9816fc770c5ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":88,"deletions":115,"files":["README.md"]},"message":"update json syntax highlighting"},{"commit":"be6864b778ab721bcba5fc3221576153be7b2ed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":26,"files":["README.md"]},"message":"add syntax highlighting tags"},{"commit":"de3b91a36cfcaf565b26b1da42f1e87835da4dc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add -dd option"},{"commit":"ef5482c3b5afa0ee8e85851bebab1c104cb59936","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":15,"deletions":7,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"add verbose debug option"},{"commit":"d20b795137036f8b889eb231cb4f14b756ec6479","merge":"69018cd 8a13406","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #70 from kellyjonbrazil/dev\n\nDev v1.11.7"},{"commit":"8a134065dff429551449c1ea16a36d745fdab580","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":12,"deletions":12,"files":["tests/fixtures/centos-7.7/iptables-filter-line-numbers.json","tests/fixtures/centos-7.7/iptables-filter-nv.json","tests/fixtures/centos-7.7/iptables-filter.json","tests/fixtures/centos-7.7/iptables-mangle.json","tests/fixtures/centos-7.7/iptables-nat.json","tests/fixtures/centos-7.7/iptables-raw.json","tests/fixtures/ubuntu-18.04/iptables-filter-line-numbers.json","tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","tests/fixtures/ubuntu-18.04/iptables-filter.json","tests/fixtures/ubuntu-18.04/iptables-mangle.json","tests/fixtures/ubuntu-18.04/iptables-nat.json","tests/fixtures/ubuntu-18.04/iptables-raw.json"]},"message":"update fixtures for last chain fix"},{"commit":"22aee1bfa40ed1d3c4df28cd934ef0edfc5c458c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"b282820fd67dcc96c058198f97b066e7b402d1f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/iptables.py"]},"message":"fix to include the final chain in output"},{"commit":"3ee098306daf903687cb0febf92773a81e216111","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"]},"message":"version bump"},{"commit":"09e8f379a64b3b37bb99b4291c10aa4a5cdedea4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":11,"files":["jc/parsers/iptables.py"]},"message":"iptables code optimizations"},{"commit":"69018cdb3a77fcdcb5648e3b89933148c55a6412","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"fix date"},{"commit":"d0d7254c6acc7be4341618d231a5b166f640b287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":26,"deletions":0,"files":["docs/utils.md","jc/utils.py"]},"message":"add docstring"},{"commit":"cc0f0971d76b6f3dec8d989e83f5676db8f2c6d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":56,"insertions":476,"deletions":439,"files":["changelog.txt","jc/cli.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/utils.py","setup.py"]},"message":"Improve and standardize empty data check for all parsers"},{"commit":"2af61730f0f5b9bc6f1f4c5d9d808ff6ccb0faeb","merge":"07b179c 83f41b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #68 from kellyjonbrazil/dev\n\nDev v1.11.5"},{"commit":"83f41b83dc01c462c6a2295e9fc56ad42a3b62f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"1fb84fce88e0306c26a5771fa4c6dc14a21409a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":16,"insertions":137,"deletions":67,"files":["changelog.txt","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/xml.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py","tests/test_timedatectl.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py","tests/test_who.py","tests/test_xml.py","tests/test_yaml.py"]},"message":"fix for no data"},{"commit":"a8837e12447c52dbe438b19c07777b9b4a22081c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"remove --upgrade from pip install"},{"commit":"04d2eec5581998d1a80e762b670af76c92111065","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":56,"deletions":30,"files":["changelog.txt","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","tests/test_stat.py","tests/test_systemctl.py","tests/test_systemctl_lj.py"]},"message":"fix for no data"},{"commit":"1b57ec92f052ddc8959540511512190a539262b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":152,"deletions":68,"files":["changelog.txt","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/pip_list.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","tests/fixtures/centos-7.7/ss-sudo-a.json","tests/fixtures/ubuntu-18.04/ss-sudo-a.json","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_ntpq.py","tests/test_passwd.py","tests/test_pip_list.py","tests/test_pip_show.py","tests/test_ps.py","tests/test_route.py","tests/test_shadow.py","tests/test_ss.py"]},"message":"fix for no data"},{"commit":"4d8859540417e99e273fda2cea959240f3c37ea3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/df.py"]},"message":"enhance empty data check"},{"commit":"52b1272a3aab09b5a8c4a277fbf9975a1b8b6921","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/blkid.py"]},"message":"enhance empty data check"},{"commit":"d2ccad6a83138fbf6eb863634fd354dc6c3fa238","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":33,"deletions":15,"files":["jc/parsers/lsblk.py","jc/parsers/lsmod.py","tests/test_lsblk.py","tests/test_lsmod.py"]},"message":"fix for no data"},{"commit":"cad6dde4ac66cf970a7f52d8e7958ea35c083629","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":60,"deletions":0,"files":["tests/test_group.py","tests/test_gshadow.py","tests/test_history.py","tests/test_hosts.py","tests/test_id.py","tests/test_ifconfig.py","tests/test_ini.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_last.py"]},"message":"fix for no data"},{"commit":"06811c3539b0d871e13e9b8d3b51f731d06fd2ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_fstab.py"]},"message":"add test for no data"},{"commit":"0cb23c2b21f464082609409261de8e95eb1b0d55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":17,"deletions":7,"files":["changelog.txt","jc/parsers/free.py","tests/test_free.py"]},"message":"add fix for no data"},{"commit":"ac4688dca22334385ec2c87027f2f14f9ca93ce4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_file.py"]},"message":"add test for no data"},{"commit":"326c3b4670a0e47cbe2988b38fb1c1b26a4db890","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_env.py"]},"message":"add test for no data"},{"commit":"9b29d0c2688eda2e4707aeba693ed14fa433a706","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_du.py"]},"message":"add test for no data"},{"commit":"e0013c38710b4ecf3a588a16d1d908effc23b485","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["tests/test_dmidecode.py"]},"message":"add test for no data"},{"commit":"a75744075b0628bdb711d8a929a759b4b4067edb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_dig.py"]},"message":"add no data test"},{"commit":"525aec1a02380f17ab7827434616f981f7457bd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":16,"deletions":7,"files":["changelog.txt","jc/parsers/df.py","tests/test_df.py"]},"message":"fix for no data"},{"commit":"0bf9a7a072a80e10a29c6bb3943b107352dc1d45","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_csv.py"]},"message":"add test for no data"},{"commit":"d8f2f4c95bc699386b9fe93d10e13637875a1dcf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":96,"deletions":80,"files":["changelog.txt","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/test_crontab.py","tests/test_crontab_u.py"]},"message":"fix for no data"},{"commit":"35d733b44f3705bed3dd8ce340379470f199f772","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":70,"deletions":60,"files":["changelog.txt","jc/parsers/arp.py","jc/parsers/blkid.py","tests/test_arp.py","tests/test_blkid.py"]},"message":"fix for no data"},{"commit":"9179b4175c5063bed14ecb96ba24c517920c0d94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":16,"deletions":0,"files":["changelog.txt","tests/test_airport.py","tests/test_airport_s.py"]},"message":"add nodata tests"},{"commit":"bb07d78c78ff5c5b2ee4d2086ffc6dd5ebedf0fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":8,"files":["jc/parsers/airport_s.py"]},"message":"add nodata fix"},{"commit":"07b179cd7f8853ff6aca0b27a703e198c158ca72","merge":"12a80e7 054422d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #67 from kellyjonbrazil/Dev\n\nDev v1.11.4"},{"commit":"054422d8373e7b8def18ddabd447062cb9cc3137","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_ls.py"]},"message":"add test for empty directory"},{"commit":"3e052d18102e98a09cbba21866855691eaccc216","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"c8e72805cf9def478b56c925f4afcc0ece1daac0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":10,"files":["jc/parsers/ls.py"]},"message":"fix error on empty directory"},{"commit":"12a80e7db0f6c7d536674ad8d34e26bba9a1f1f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":2,"files":["README.md"]},"message":"add fedora package info"},{"commit":"ee7ff9a09d3373f60ae1645376ccc0057803147e","merge":"346a14c f6478fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #66 from kellyjonbrazil/dev\n\nDev v1.11.3"},{"commit":"f6478fb636ead8d1e53e4a88d59e55222df37a8f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"811a0b0495819925199d70db266066197cc6824e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add info regarding the local parser plugin files"},{"commit":"aeb48edf727f23cc4f8fd9b760cfb69f03098278","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"use $LOCALAPPDATA variable for windows"},{"commit":"b1e94f0df7041bcae97455508f423178aef9d61d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"heading formatting"},{"commit":"60050e3c0fe34980f7db5b8bd46430f953f0c3a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["README.md"]},"message":"fix linux/unix directory and add note about the XDG specification followed"},{"commit":"39ef09aa5b0d43b5128299511afe80336aa38203","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"]},"message":"add local parser plugin feature"},{"commit":"8377d4311611c242e16eaebe66dafac9529150d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"54e4c447ab34ae54c73c92df40f1b4ca6ffb2277","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"]},"message":"clean up formatting"},{"commit":"937a9fa9cf2ede8e686ba853989f33e4a483a0ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":613,"deletions":3,"files":["jc/appdirs.py","jc/cli.py","requirements.txt","setup.py"]},"message":"vendorize appdirs module"},{"commit":"808ff6cf0e784cf0c2d523ff2e01197cb6e88c82","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["README.md"]},"message":"more acknowledgments updates"},{"commit":"7f5c649a95a871c3cd8d48731a6d26dcba6f725b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update acknowledgments"},{"commit":"b72727dec995de1ca5f68ee17a710b086c87d612","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":2,"files":["README.md"]},"message":"update custom parsers info"},{"commit":"3fc88bfb334143b68a9cb78d4034f33e7c0bcf76","merge":"346a14c 9f2279d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #65 from duelafn/local-parsers\n\nLoad custom parsers from /jc/jcparsers"},{"commit":"9f2279d5867eb89d4b4b7b4ffca290166ec97c48","author":"Dean Serenevy","author_email":"dean@serenevy.net","commit_by":"Dean Serenevy","commit_by_email":"dean@serenevy.net","stats":{"files_changed":4,"insertions":29,"deletions":2,"files":["README.md","jc/cli.py","requirements.txt","setup.py"]},"message":"Load custom parsers from /jc/jcparsers"},{"commit":"346a14cb9bb0d762fc3fa366ad97e5ff85f3992a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"change osx_device to unix_device"},{"commit":"dac00d17ff9f3d2bb959697b6e567015bfc2702b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":17,"deletions":0,"files":["tests/fixtures/nixos/route-ee.json","tests/fixtures/nixos/route-ee.out","tests/test_route.py"]},"message":"add nixos test"},{"commit":"9ca7cd40601b97829e8f88071fdfb928d939f7e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":17,"deletions":34,"files":["jc/parsers/route.py"]},"message":"update docs"},{"commit":"aa31628970b12295a41dff20e829fcce9f8a4d07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":70,"deletions":63,"files":["README.md","docs/parsers/netstat.md","docs/parsers/route.md","docs/parsers/stat.md","jc/parsers/netstat.py"]},"message":"update docs"},{"commit":"bed694fcf5c8c31bbd4f3e88759fe7ab82382d24","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump"},{"commit":"4b4af69fa184896ec15b5be7dc8416f36f921d5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"fix date"},{"commit":"9d96190a5b19e8d71c3ac66eb0303d269dd4ce5d","merge":"96df396 fa44d48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #64 from kellyjonbrazil/dev\n\nDev v1.11.2"},{"commit":"fa44d48c094a55e499c2c780d109bf277736b42e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":129,"deletions":7,"files":["changelog.txt","jc/parsers/stat.py","tests/fixtures/freebsd12/stat.json","tests/fixtures/freebsd12/stat.out","tests/fixtures/osx-10.14.6/stat.json","tests/test_stat.py"]},"message":"freebsd fixes, tests, and fixtures"},{"commit":"4ef961c2788c935b1fea1c9777b976e7b89e7367","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":20,"deletions":0,"files":["tests/fixtures/freebsd12/ntpq-p.json","tests/fixtures/freebsd12/ntpq-p.out","tests/test_ntpq.py"]},"message":"add freebsd test and fixtures"},{"commit":"292a837d5c47165ccb155f079b0a114b5c17a98e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":22,"deletions":0,"files":["tests/fixtures/freebsd12/last.json","tests/fixtures/freebsd12/last.out","tests/test_last.py"]},"message":"add tests and fixtures for freebsd12"},{"commit":"aa7b915d847dbd29d2c09b2cc40b847e37174ffb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/last.py"]},"message":"version bump"},{"commit":"c46fe73236b912d2ee89dfb36ff259fe95fd0479","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"add last fixes for freebsd"},{"commit":"039b2c129cbe79d2d23b1194b043d8b730609956","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":1,"files":["jc/parsers/last.py"]},"message":"freebsd fixes"},{"commit":"8f2e5e4808b30c658a4cb87125639e4d7d6c15d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"fix compatible logic"},{"commit":"c4da8e4f78e6b4aaa4aff76ae042be9aaec832a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":3,"files":["README.md"]},"message":"add nixos and freebsd to tested. update new arp fields"},{"commit":"bcab9078a4c2bfd6ae4dca9448b577d9ed0fc01c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"add w parser fix"},{"commit":"b3c6c1ea925bf7cd76368f5074fb8af52a844522","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":29,"deletions":5,"files":["jc/parsers/w.py","tests/fixtures/nixos/w.json","tests/fixtures/nixos/w.out","tests/test_w.py"]},"message":"strip whitespace in string fields and add tests"},{"commit":"a3af8662bd491e344c93d24afabd23e90efd8086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":205,"deletions":3,"files":["tests/fixtures/osx-10.11.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a2.json"]},"message":"add permanent field"},{"commit":"35940d0bc80bf61b11f40b1e1043835f26eb391c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":59,"deletions":4,"files":["changelog.txt","docs/parsers/arp.md","jc/parsers/arp.py","tests/fixtures/freebsd12/arp-a.json","tests/fixtures/freebsd12/arp-a.out","tests/test_arp.py"]},"message":"add freebsd permanent and expires fields"},{"commit":"26994cdcb7148d2c9d1701bca9541d247356260b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":115,"deletions":85,"files":["docs/parsers/df.md","docs/parsers/fstab.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/route.md","docs/parsers/stat.md","docs/parsers/uname.md"]},"message":"add freebsd compatibility info"},{"commit":"017159a829691cb6a7174f123d024eb252179b75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":15,"insertions":221,"deletions":0,"files":["tests/fixtures/freebsd12/netstat-Aa.json","tests/fixtures/freebsd12/netstat-AaT.json","tests/fixtures/freebsd12/netstat-AaT.out","tests/fixtures/freebsd12/netstat-AanP.json","tests/fixtures/freebsd12/netstat-AanP.out","tests/fixtures/freebsd12/netstat-Aax.json","tests/fixtures/freebsd12/netstat-Aax.out","tests/fixtures/freebsd12/netstat-aT.json","tests/fixtures/freebsd12/netstat-aT.out","tests/fixtures/freebsd12/netstat-an.json","tests/fixtures/freebsd12/netstat-i.json","tests/fixtures/freebsd12/netstat-ib.json","tests/fixtures/freebsd12/netstat-ib.out","tests/fixtures/freebsd12/netstat-r.json","tests/test_netstat.py"]},"message":"add freebsd nestat tests and fixtures"},{"commit":"b4e9c85e08d199dad67f03c7603194278a022696","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":0,"files":["jc/parsers/netstat_freebsd_osx.py"]},"message":"fixup -T freebsd output and add whitespace stripping to parse_post"},{"commit":"189146cd84cfad262f2b2601bb0cb4b9dde2587e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/netstat.py"]},"message":"add more ints. remove whitespace strip code and move to freebsd_osx module"},{"commit":"af34153ffab10ca1ad7f44736d379d91ae43c813","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["changelog.txt","jc/cli.py"]},"message":"version bump"},{"commit":"bf2ff3ffbb639446779b1f04f2997707d99c0a1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":1,"files":["jc/utils.py"]},"message":"fix compatibility search for platform names that append the version number (e.g. freebsd12)"},{"commit":"6423c9efd69e938af38934a97ca6b65009e8f07e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":34,"deletions":5,"files":["jc/parsers/netstat.py"]},"message":"integer and float updates"},{"commit":"58ab0d4ece7f006ce9431afb9e0fecbe60930be7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":12,"deletions":4,"files":["changelog.txt","jc/parsers/netstat.py","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json"]},"message":"strip whitespace from string fields"},{"commit":"83a738bf4d756036d6269b9153220d7f1018ac9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json"]},"message":"update fixtures for osx_flags and osx_inode name change to unix_flags and unix_inode"},{"commit":"3640671fc6a67c9628fd47e19e9fe0a0738439ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/{netstat_osx.py => netstat_freebsd_osx.py}"]},"message":"rename module"},{"commit":"1da623b30ef6f9b12ac231518d2d4e7dadcf717b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["changelog.txt"]},"message":"add items"},{"commit":"b10ca64646e93d9797182ea046f4956a17b37627","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":71,"deletions":71,"files":["jc/parsers/netstat.py"]},"message":"change osx_inode and osx_flags to unix_inode and unix_flags. Also rename netstat_osx module to netstat_freebsd_osx"},{"commit":"2128763ee67a07da6ebf123abeec39794bc1f4e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":12,"files":["tests/test_netstat.py"]},"message":"fix osx version from 16.4 to 14.6"},{"commit":"a27e7ed39c63c04cfa78caceaada42f7a9496a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":12,"deletions":12,"files":["tests/fixtures/centos-7.7/netstat-r.json","tests/fixtures/centos-7.7/netstat-rne.json","tests/fixtures/centos-7.7/netstat-rnee.json","tests/fixtures/centos-7.7/route-vn.json","tests/fixtures/centos-7.7/route.json","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-rnl.json","tests/fixtures/ubuntu-18.04/netstat-r.json","tests/fixtures/ubuntu-18.04/netstat-rne.json","tests/fixtures/ubuntu-18.04/netstat-rnee.json","tests/fixtures/ubuntu-18.04/route-vn.json","tests/fixtures/ubuntu-18.04/route.json"]},"message":"test updates for added route_flags_pretty and flags_pretty fields"},{"commit":"f07b7eaa474eb87dbdbc7fbe41b9386feff7bee2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":38,"deletions":12,"files":["jc/parsers/route.py"]},"message":"add flags_pretty"},{"commit":"6ce18de84ce16a926f9cd97c3210ef209c3352da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":130,"deletions":69,"files":["jc/parsers/netstat.py","jc/parsers/netstat_linux.py","jc/parsers/netstat_osx.py"]},"message":"add route_flags_pretty"},{"commit":"8631b756e7ab8cd71c2a3eb288e2d1823cec5782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":76,"deletions":0,"files":["tests/fixtures/freebsd12/netstat-Aa.out","tests/fixtures/freebsd12/netstat-an.out","tests/fixtures/freebsd12/netstat-i.out","tests/fixtures/freebsd12/netstat-r.out"]},"message":"add freebsd test files"},{"commit":"7414d984125300164a5b6156d7a80128d4d6cb15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":18,"deletions":18,"files":["jc/parsers/df.py","jc/parsers/fstab.py","jc/parsers/mount.py","jc/parsers/ntpq.py","jc/parsers/stat.py","jc/parsers/uname.py"]},"message":"add freebsd compatibility"},{"commit":"d7b19892e8fb11e17fcbadcdbb08d49897d7754f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":10,"deletions":7,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"]},"message":"add freebsd support for netstat -i"},{"commit":"96df396eaf4e030113005a95e525d644c394dfe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"2f6f640317da5af894f34f187c4243ef0c599d07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"spelling"},{"commit":"c4a0a50f3a3ac5833ab5d2f8a0cb3f18da335812","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]},"message":"add nix-env"},{"commit":"658f8a3842273cea049689b3aea15d89a7294b24","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":3,"files":["README.md"]},"message":"add zypper and ports info"},{"commit":"bfb876a1e394ff63c6773965ba0b65da4e109c1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"90c34b1f4ee2d9ec8125346bb90b227f76ada2ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"fix dmidecode example"},{"commit":"3f9164ea77ec41e1b0671d0a642900d8e36faf9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"bold formatting"},{"commit":"7fd6fecbf5a08b1f13aa7e906e94be9bc126780a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"8029f72363a4d19938df07603f03a0147f6246a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":10,"deletions":7,"files":["changelog.txt","docs/parsers/stat.md","jc/cli.py","jc/parsers/stat.py","setup.py","tests/fixtures/osx-10.14.6/stat.json"]},"message":"change osx_flags from integer to string"},{"commit":"c7fdce5d3b7566a7d290627767c47d9c196e02ad","merge":"f5627a4 84f48aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #62 from kellyjonbrazil/dev\n\nDev v1.11.0"},{"commit":"84f48aa369a458f534523ecc1e3aaaf403d06f1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"2e9a0a9c1221dd01bd683ecbc4871d03738da671","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["changelog.txt"]},"message":"add features"},{"commit":"c1f6f2b9508e558ab88b4a0a61e93a6cf5460bea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":116,"deletions":4,"files":["docs/parsers/stat.md","jc/parsers/stat.py","tests/fixtures/osx-10.14.6/stat.json","tests/fixtures/osx-10.14.6/stat.out","tests/test_stat.py"]},"message":"osx fixes and tests"},{"commit":"ede21bca13c4b46899721f01d979c8b063f861a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":110,"deletions":78,"files":["jc/parsers/stat.py"]},"message":"add OSX support for stat"},{"commit":"8dd9a9f9cbc70a19176f909f6ac76b2bcf670736","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":45,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-i.json","tests/fixtures/osx-10.14.6/netstat-i.json","tests/fixtures/ubuntu-18.04/netstat-i.json","tests/fixtures/ubuntu-18.04/netstat-i.out","tests/test_netstat.py"]},"message":"add netstat -i tests"},{"commit":"04f92cd1330759e4bad1c0304b9e1c28e8d32d59","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":166,"deletions":4,"files":["README.md","docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_linux.py","tests/fixtures/centos-7.7/netstat-i.out"]},"message":"add linux support for netstat -i"},{"commit":"8be8d2393b276a9249e1c573ce19cf630f0942fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":99,"deletions":3,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-i.out"]},"message":"add netstat -i support for OSX"},{"commit":"0a879681be68fe2e6e5c013ab0fe18de99b04f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":97,"deletions":282,"files":["README.md","docs/parsers/netstat.md","jc/parsers/netstat.py"]},"message":"add netstat -r to docs"},{"commit":"2ca1587a49511899bf719e0b0c7de32158fc491d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":102,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-r.json","tests/fixtures/centos-7.7/netstat-rne.json","tests/fixtures/centos-7.7/netstat-rnee.json","tests/fixtures/ubuntu-18.04/netstat-r.json","tests/fixtures/ubuntu-18.04/netstat-r.out","tests/fixtures/ubuntu-18.04/netstat-rne.json","tests/fixtures/ubuntu-18.04/netstat-rne.out","tests/fixtures/ubuntu-18.04/netstat-rnee.json","tests/fixtures/ubuntu-18.04/netstat-rnee.out","tests/test_netstat.py"]},"message":"add linux netstat -r tests"},{"commit":"ec2cd2d708a57c0458657416bedcb4340cb40901","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":70,"deletions":11,"files":["docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_linux.py","jc/parsers/netstat_osx.py","tests/fixtures/centos-7.7/netstat-r.out","tests/fixtures/centos-7.7/netstat-rne.out","tests/fixtures/centos-7.7/netstat-rnee.out","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-rnl.json"]},"message":"add netstat -r support for linux"},{"commit":"5d0dbece9317e84a47d9f4b2d18a9ffa33fbee6e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":288,"deletions":5,"files":["docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-r.out","tests/fixtures/osx-10.14.6/netstat-rnl.json","tests/fixtures/osx-10.14.6/netstat-rnl.out","tests/test_netstat.py"]},"message":"add netstat -r functionality for OSX"},{"commit":"df1e4b414b2bda5be3153767cd854b2483ba600b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":[".gitignore"]},"message":"remove unused folder"},{"commit":"40760991e7dae43cd15134310f7bbb5ce0f58dae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["LICENSE.md"]},"message":"update copyright date"},{"commit":"464f5f86cf2c8fe6a1a857b0ad4d221a3edf3d88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"update description"},{"commit":"7b09e9fccdd4f09218a500b54c898ada1b9843c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":8,"deletions":5,"files":["docs/parsers/dmidecode.md","jc/parsers/dmidecode.py","tests/fixtures/centos-7.7/dmidecode.json","tests/fixtures/fedora32/dmidecode.json","tests/fixtures/ubuntu-18.04/dmidecode.json"]},"message":"set empty values to Null and update fixtures"},{"commit":"6cba7d429898d331c674c778f8bd85ba75a8dca9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"remove linux from description"},{"commit":"9730f62e4970b5a4490f8dc24b6cfb9cacd0cbf2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":151,"deletions":133,"files":["jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json","tests/fixtures/osx-10.14.6/netstat.out"]},"message":"fixup name field and update test fixtures"},{"commit":"e0c1c87f549eee000b93b5f5a3e8d0b052eb7d32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["README.md"]},"message":"formatting"},{"commit":"931b3d2b836b251590497f4cfa65f106762086c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"e5d561baeecf1fd83a884b3cd9d322762f750dfb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/netstat.py"]},"message":"add multipath condition for osx detection"},{"commit":"2867593e7aa12299686e2c6aa0f2a79a9b550b53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"dd52fee5635c977d5c77046ab9fe78d2ed10deef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":2141,"deletions":0,"files":["tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-Abn.out","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat-An.out","tests/fixtures/osx-10.14.6/netstat.json","tests/fixtures/osx-10.14.6/netstat.out","tests/test_netstat.py"]},"message":"osx netstat tests and fixtures"},{"commit":"8e1f8858273e671a882a07eae1c35b38f5298c94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"fix filtered netstat views"},{"commit":"2d39a58f902e6af77f8f96ffcd1d68b7cbadd56c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":81,"deletions":14,"files":["README.md","docs/parsers/dmidecode.md","docs/parsers/netstat.md","jc/parsers/dmidecode.py"]},"message":"doc update"},{"commit":"9c4fa2ae2601ca4880c0b078fa917f01f1392e0e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":22,"deletions":2,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"]},"message":"integer conversions and icmp fix"},{"commit":"de52d84e82df6d8c5e2416c6bc44e59c41c685da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/netstat_osx.py"]},"message":"fix udp state and udp46 entries"},{"commit":"ce9b55059a28d363b8b0ae4f3ccbdbdc4bf4b58e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":185,"deletions":167,"files":["jc/parsers/netstat.py","jc/parsers/netstat_linux.py"]},"message":"organize files"},{"commit":"bcd370a6a01a115d470776f5690f8571d68d3930","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":15,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"]},"message":"code cleanup"},{"commit":"c8216850abd2d0b8cc6761453f853f296e8a28f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":55,"files":["jc/parsers/netstat_osx.py"]},"message":"code cleanup"},{"commit":"f5feedb90b39e5c3f4564615482d47ccd145844f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":10,"files":["jc/parsers/netstat_osx.py"]},"message":"fix comments"},{"commit":"a4371cd187fe5077018edbfeee77eb17c6a90ad3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/netstat_osx.py"]},"message":"support netstat -A"},{"commit":"9d5ba4c83404e4fab5c0f40c30b4735685499a31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/netstat_osx.py"]},"message":"formatting"},{"commit":"1639dee1bb93f6f89e8bb7b37134dc1f561c479c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":35,"files":["jc/parsers/netstat_osx.py"]},"message":"fix parse_post"},{"commit":"9363f430f20951e6fa739f06c85c5b6b3421b60d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/netstat.py"]},"message":"use list extend method to simplify code"},{"commit":"9192a0907364c772558380be1373b8dcea972a6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":124,"deletions":34,"files":["jc/parsers/netstat_osx.py"]},"message":"parse all sections"},{"commit":"b915eb97556ccc5fc60e8d23f7298ffec2d8e3b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":237,"deletions":55,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"]},"message":"initial osx parser"},{"commit":"1cfcc2b592f682d2b50a0c4188fa3ae832a6c682","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/dmidecode.py"]},"message":"tighten up line test logic when counting tabs"},{"commit":"7138dd02b73073441a52c9b574bf0d6e02f0d7d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/parsers/dmidecode.py"]},"message":"cleanup variables after adding to item"},{"commit":"b4276643b70f7820f8f53df22b32fffb54e30ca2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":56,"deletions":0,"files":["tests/fixtures/centos-7.7/dmidecode.json","tests/fixtures/fedora32/dmidecode.json","tests/fixtures/ubuntu-18.04/dmidecode.json","tests/test_dmidecode.py"]},"message":"add dmidecode tests and fixtures"},{"commit":"2ef00763bfe7c4348f30026759941efe39861a0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/dmidecode.py"]},"message":"fix first item"},{"commit":"54364928fc826ead7774a4cec1bcb73a5cb9ee0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":74,"deletions":81,"files":["docs/parsers/dmidecode.md","jc/parsers/dmidecode.py"]},"message":"fix oddities like hybrid single/multiline data and items containing multiple records"},{"commit":"09b3b4932b0fa4a2b18c88a8465c15a194b727e6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":35430,"deletions":0,"files":["tests/fixtures/centos-7.7/dmidecode.out","tests/fixtures/fedora32/dmidecode.out","tests/fixtures/ubuntu-18.04/dmidecode.out"]},"message":"add dmidecode output fixtures"},{"commit":"29d6670119d8fcd0344e90f01bfb6260aa936e50","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/dmidecode.py"]},"message":"convert integers"},{"commit":"2f654b5f1acda01192294f4c18a5a31363e7f387","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["docs/parsers/dmidecode.md"]},"message":"doc update"},{"commit":"e53b9f5992450b53efc886b4fa9ca16f3dd07530","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["jc/parsers/dmidecode.py"]},"message":"add caveats to documentation"},{"commit":"addb234e6162c58750cb67947bc4776635bf54fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":153,"deletions":0,"files":["docs/parsers/dmidecode.md"]},"message":"add dmidecode doc"},{"commit":"76eca3b65911a0a340d3d94322a8145ee89c50da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"]},"message":"add dmidecode"},{"commit":"f90dec4c0ecf88623fb22273b7527ec8884826c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":94,"deletions":5,"files":["jc/parsers/dmidecode.py"]},"message":"add examples to documentation"},{"commit":"8900a59d4cb424ff58d1eb27f8fda7ea0a668a5c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":19,"files":["jc/parsers/dmidecode.py"]},"message":"simplify logic by removing redundant block"},{"commit":"6685138200d5955115707d04aad0293ea8af5b15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dmidecode.py"]},"message":"fix for missing multi-line values that come immediately after a previous multi-line value"},{"commit":"4d3e65b980d50164b8220e59560822b9871580ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/parsers/dmidecode.py"]},"message":"fix missing values"},{"commit":"e9282bb546f560da6396f44e2ce9e04136348e2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":175,"deletions":0,"files":["jc/cli.py","jc/parsers/dmidecode.py"]},"message":"add dmidecode parser"},{"commit":"f5627a45947e5e76e5f3e64d9b30099fe0b962a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"81ffdb25105c681c8ed12336d220a102b7f4215e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/cli.py"]},"message":"remove shebang for Fedora packaging"},{"commit":"4c00a99850cb6f69713be7c6ad9ffba11924d9b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"2bfcb45b28e2174a8bbc27237e619b5c232ccae8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["jc/cli.py"]},"message":"make cli.py executable"},{"commit":"ab0c10e791283affb227d0d5306701ba7fd29d13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["LICENSE.md","README.md"]},"message":"remove execute permissions"},{"commit":"2c1935115de03a28fe92674b04b2542b0eccb8fe","merge":"99070fa d98e43d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #61 from kellyjonbrazil/dev\n\nDev v1.10.10"},{"commit":"d98e43dc78205d3224bfc1e67de2da3c5fb7ea9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"add netstat item"},{"commit":"9348988d646d9b9c9970c19e84f311554ae38e7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":0,"files":["tests/test_netstat.py"]},"message":"add netstat test for Fedora32"},{"commit":"1285c664679c40b18327c89b85921a80b01f0191","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":140,"deletions":0,"files":["tests/fixtures/fedora32/netstat.json","tests/fixtures/fedora32/netstat.out"]},"message":"netstat with bluetooth section"},{"commit":"b7191bbc130e0f33d02c0a4819fa91ffff1599d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"handle bluetooth section (ignore for now)"},{"commit":"98b97509f7893cb95e9651ce9706db5c961aa997","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"2b2b570490f3834367a598579473001f45738e8a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":21,"deletions":0,"files":["tests/fixtures/fedora32/last.json","tests/fixtures/fedora32/last.out","tests/test_last.py"]},"message":"add tests for 'gone - no logout'"},{"commit":"cce2d1ff298f2284c43c4534144329f3533a81ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/last.py"]},"message":"add condition for 'gone - no logout'"},{"commit":"b79600c57249cbb65805caad2524cc2492342be6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"version bump"},{"commit":"140f1a85437745296b56976bef1b46514e323a4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":7,"deletions":7,"files":["tests/fixtures/centos-7.7/ls-R-newlines.json","tests/fixtures/centos-7.7/ls-R.json","tests/fixtures/centos-7.7/ls-glob.json","tests/fixtures/osx-10.14.6/ls-glob.json","tests/fixtures/ubuntu-18.04/ls-R-newlines.json","tests/fixtures/ubuntu-18.04/ls-R.json","tests/fixtures/ubuntu-18.04/ls-glob.json"]},"message":"test fixes for issue #60"},{"commit":"e34657cfde6816ab7a7415d83580df0a1d98a5a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"]},"message":"fix issue #60 that was skipping the first file in some instances using -R without -l"},{"commit":"99070fa6073c4415a6faf8ca69dd6aa089af4062","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"2b46785b1f1281ee63df9159e36068f4607ad9b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":25,"deletions":3,"files":["jc/parsers/ifconfig.py"]},"message":"add MIT license to vendorized IfconfigParser class"},{"commit":"c72562524b2b9aaca0be372bb24343158829ba5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"fully remove tests from packaging"},{"commit":"b7dd6441c7e3f54f8a260fceef49aae6816c7151","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":1,"files":["changelog.txt","jc/cli.py"]},"message":"version bump"},{"commit":"31fcc2f755ad86622cf51a75879b14d44f246300","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["MANIFEST.in"]},"message":"remove manifest.in - no longer needed due to removing tests"},{"commit":"b391aa14bceffedb5a9c13f3f908923790edefc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["setup.cfg"]},"message":"add license_file to metadata"},{"commit":"d3c45debbb6690acd341fbcc9b99d1ae4cf0a43c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["setup.py"]},"message":"remove tests and add license file"},{"commit":"5b08469b874553744bd5c5b1fa6581f4dcffacd0","merge":"8cf00a2 4a77ec6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #57 from kellyjonbrazil/dev\n\nDev v1.10.7"},{"commit":"4a77ec63a46554c84e646d31564230774ed87431","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["docs/parsers/ifconfig.md"]},"message":"add IfconfigParser class"},{"commit":"d13606b6dc2c207be6dea89a2c3e713c18a574b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":7,"deletions":6,"files":["changelog.txt","jc/cli.py","requirements.txt","setup.py"]},"message":"modify dependencies for easier packaging into Fedora"},{"commit":"05291c93bba1aa364ba1ac7f2508e24bb362a814","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":198,"deletions":3,"files":["jc/parsers/ifconfig.py"]},"message":"vendorize ifconfig-parser module for easier packaging in Fedora"},{"commit":"8cf00a208eb8493300331e7361b72e4f9e3f140e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"change text to strings"},{"commit":"06d73c88767a5b4d6003231c897c447ee5e1faa5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"649c646ea25ac7f89900cffa8919df01671bd32d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]},"message":"add brew install option"},{"commit":"b7756d92501a7b8ba8e77d77d9d3718a58425beb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"1cd2cd954c21e5caec333507bd81819c82d45b49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":16,"files":["tests/fixtures/osx-10.11.6/du.json","tests/fixtures/osx-10.11.6/du.out","tests/fixtures/osx-10.14.6/du.json","tests/fixtures/osx-10.14.6/du.out"]},"message":"remove references to homebrew/shim to allow tests to pass in homebrew packaging ci/cd"},{"commit":"72020b8da999ddca6f9ba82da235c9f42e4f4273","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":22,"files":["README.md"]},"message":"move packages info to jc-packages github page"},{"commit":"cf9720b749e7fc8caed0d2f1f2b1727a22a156b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"update install info"},{"commit":"967b9db7f90a3c3a0352edde7f4455c5f5d45b18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["README.md"]},"message":"spelling"},{"commit":"bb3acb1182f4d509f9ddc7dfcffa4578e0a2bd5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"560c7f7e6d1f8a69ab026ddbff753d232ca1d00b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"79b28417644e00b933f531374d2f7fe8051e61be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":0,"files":["README.md"]},"message":"add new binary package install info"},{"commit":"a06a89cbd11026aa3910fadd1eff7fe388d02507","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"431bd969eb4809424fe99a02a7decb98bce9ea51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"use sys.exit(0) instead of exit()"},{"commit":"c87b722aec6e6964c516bbb8e80667ad7d9c6bc7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"spelling"},{"commit":"3688b8b014a1cf753b2207fbf3ebf0292c3fd672","merge":"99f7842 07b8d9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #56 from kellyjonbrazil/dev\n\nDev v1.10.4"},{"commit":"07b8d9e0c0d723d93e6c652f5b6156c467c451c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"7454b53e395e9122c00d4cf06b1c2af109913d7a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["README.md"]},"message":"formatting"},{"commit":"3d6a76024de0f9dcf91a4ab49cabe461074114fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":0,"files":["README.md"]},"message":"update with JC_COLORS info"},{"commit":"421b9809575a8de00229af4b851739889638ac74","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":37,"files":["jc/cli.py"]},"message":"JC_COLORS working"},{"commit":"4a22e27d6a80a988f4de17bce421110d6abb8867","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":64,"deletions":0,"files":["jc/cli.py"]},"message":"add set_env_colors function"},{"commit":"99f7842dee0f79cf933fae185cf8b0ed7c8b210f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":11,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"fix brek on pipe error"},{"commit":"7f869b4b187d70752207a7e74c13b858446f898f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":11,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"change colors to ansi and match jello style"},{"commit":"9665f4ee84680f3a8154b8a43ea668af2907782c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add pypi badge"},{"commit":"606904d48b1c7e0c19a940b5be0b564d1b5be6c8","merge":"302f05c 3f5279b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #53 from kellyjonbrazil/dev\n\nDev v1.10.1"},{"commit":"3f5279b97c386c736e0e2faa5c39d68ef89c46aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to 1.10.1"},{"commit":"f5ec21e6ac612566af93158fc3968b901322d04a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_luf.py"]},"message":"use in instead of find()"},{"commit":"578a284465f014fe71ad6ac00bd41dc24ab2ced9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_ls.py"]},"message":"use in instead of find()"},{"commit":"422e392d9d98a7864312fc7fbd7f45537b71acbe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_lj.py"]},"message":"use in instead of find()"},{"commit":"54dfffd34a17d1194690142ac403391fc65bb85f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl.py"]},"message":"use in instead of find()"},{"commit":"cffba64d2b9165b44a8856665807111a2ad3a190","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/stat.py"]},"message":"use in and startswith() instead of find()"},{"commit":"56a0c12a59bb252d3b7d0929f9fb19b4d96a8437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/pip_list.py"]},"message":"use in instead of find()"},{"commit":"c174d3de18923b2b03befb5a7dfcbd977a8e147e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/netstat.py"]},"message":"use in and startswith() instead of find()"},{"commit":"a9c59ef9fc1bb68c9d0d7beffbeb670baf5b1e3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/mount.py"]},"message":"fix logic to not for ' type ' in cleandata[0]"},{"commit":"abdb9b26732a6a71f5938d665b2ca43a381e1b33","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/mount.py"]},"message":"use in instead of find()"},{"commit":"548aaab6262878d21f8b9539950cfad48638e35c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":42,"files":["jc/parsers/lsof.py"]},"message":"remove old commented code"},{"commit":"20571c87ae9e1ca8a1f3120511910751420a35ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/jobs.py"]},"message":"us in instead of find()"},{"commit":"19e49200de5c731f76b42e80388c5223e8097e39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"]},"message":"version bump"},{"commit":"d32f5c67a91ede572c88e431b2ad0ce4d6c87dec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/iptables.py"]},"message":"use startswith() instead of find()"},{"commit":"b83b626435c55d2aa63e56dd8f22603da59e7626","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ifconfig.py"]},"message":"use startswith() instead of find()"},{"commit":"ab2c1b25ec5da5f2ba238868c4dfca95a44da30e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/hosts.py"]},"message":"use startswith() and in instead of find()"},{"commit":"f2d46313a4508f13656cdb360f83fdf4116cc7d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/fstab.py"]},"message":"use startswith() instead of find()"},{"commit":"87e4796a6c936793e2784346819c7033d59b91e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/df.py"]},"message":"use in instead of .find()"},{"commit":"0014a5c2f4c056c2683d6614a65d778b1f527932","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab_u.py"]},"message":"us startswith() and in instead of .find()"},{"commit":"7af56e0dadab7d8b9538f3b7a550ad6dd1ac217d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab.py"]},"message":"use startswith() and in instead of find()"},{"commit":"a5ae6e3c017b041f9079ff12455b7551ad204cb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/arp.py"]},"message":"use startswith() instead of find()"},{"commit":"fe1a0d1faf46f55ed2888ed0065f3f3144691ed8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":9,"files":["jc/parsers/dig.py"]},"message":"use in instead of .find()"},{"commit":"302f05cdda305e46e69b74d5b0096f64c17da637","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"prettify style block"},{"commit":"c0044be7b0b6dadcffb64cb88ad92bf653dd2b6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"rename color grey to gray"},{"commit":"01100788070b82b4b827ef356972fa9b8f737eeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update badge"},{"commit":"42eacb45f8fdf8085c6231bf5297629c2ec97c22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"rename to Tests"},{"commit":"a43e2e19916662d509883457c160d7f95f97ae12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add -m option info"},{"commit":"c8b721d4f6e46a2db77e1140b9caeb3b403fef72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":9,"deletions":3,"files":["changelog.txt","jc/cli.py","requirements.txt","setup.py"]},"message":"version bump to 1.10.0"},{"commit":"d0bfddc3d9989444757d6668726c916e5363620b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":41,"deletions":6,"files":["jc/cli.py"]},"message":"add color and -m monochrome option"},{"commit":"6b925a16c87cf75bb30edfda38511e8f84a4f6d6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]},"message":"add tests badge"},{"commit":"89ebd9fc2271d2c76353d5707bfd4afb7dedc278","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":0,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"add axfr info to schema"},{"commit":"6b4ba662317629839aa62fbcfefb8ed3337c37ef","merge":"8ec8cd6 5b697dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #52 from kellyjonbrazil/dev\n\nDev v1.9.3"},{"commit":"5b697dc38141cdd47fcdd63bf295a80a7da86697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":72,"deletions":0,"files":["tests/test_dig.py"]},"message":"add more dig tests"},{"commit":"9ba73c95d1a528a9a92be4068805bb5aa027901e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":215,"deletions":0,"files":["tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/centos-7.7/dig-axfr.out","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-axfr.out","tests/fixtures/ubuntu-18.04/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-axfr.out","tests/test_dig.py"]},"message":"add tests"},{"commit":"93aa39044749c4c0ed749f62fb00fc1c76dc5af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to v1.9.3"},{"commit":"3cfb8945ddd83c00a720c44e2c1d97da0d8bad25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/dig.py"]},"message":"use startswith() instead of find"},{"commit":"cd8d38f2a136c4f35efc020b3476d09e965b71f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":50,"deletions":1,"files":["jc/parsers/dig.py"]},"message":"add axfr support"},{"commit":"8ec8cd62944c59c462ab9f520c1dcfd14218b1ed","merge":"e5bea9a c028113","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #50 from kellyjonbrazil/dev\n\nDev v1.9.2"},{"commit":"c02811356153c2b4f8b2d7efb7f48bf8f7748068","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to v1.9.2"},{"commit":"5f22e1c8031b808ef02ffe078408bd58cc76e570","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":33,"deletions":0,"files":["tests/fixtures/osx-10.14.6/arp-a2.json","tests/fixtures/osx-10.14.6/arp-a2.out","tests/test_arp.py"]},"message":"fix and test for osx arp entries without ifscope"},{"commit":"d3351787e5cabd064c19e6617e9535e501686404","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":9,"files":["jc/parsers/arp.py"]},"message":"change osx detection"},{"commit":"e5bea9ae3b0a70b38f7da7dd9184343dbbd18887","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/file.py"]},"message":"version bump"},{"commit":"93c710abe9171568f61f65c4f84c040ffc24870c","merge":"400f5a4 c29e7cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #49 from kellyjonbrazil/dev\n\nDev v1.9.1"},{"commit":"c29e7cfe5cc4b2151912c6f618137d1b6c39c7be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":9,"deletions":6,"files":["README.md","changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to 1.9.1"},{"commit":"cb5c1ba00dc0e02bf6ad6c40096d99e319fa6171","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":101,"deletions":0,"files":["tests/fixtures/osx-10.14.6/file2.json","tests/fixtures/osx-10.14.6/file2.out","tests/test_file.py"]},"message":"add tests for fix to make the file parser splitting more robust"},{"commit":"9a012b94e1942a14bc6dae3fb967ef618819c77b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/file.py"]},"message":"make splitting more robust"},{"commit":"400f5a44ece280cb0097d806b78a9490d2905600","merge":"c7cd2b6 a2ab5ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #48 from kellyjonbrazil/dev\n\nDev v1.9.0"},{"commit":"a2ab5bab91ea980399df1afb9d8071fa3282d04e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to v1.9.0"},{"commit":"fc8ab27361df3359b706125531b2643612d6996a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":93,"deletions":51,"files":["README.md","docs/parsers/ntpq.md","jc/parsers/ntpq.py","tests/fixtures/ubuntu-18.04/ntpq-p2.json","tests/fixtures/ubuntu-18.04/ntpq-p2.out","tests/test_ntpq.py"]},"message":"bugfix for misaligned columns and additional test for ntpq #31"},{"commit":"59f19d33a5c6677ea756a9424fdb032b430511a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":153,"deletions":0,"files":["tests/fixtures/centos-7.7/file.json","tests/fixtures/centos-7.7/file.out","tests/fixtures/osx-10.14.6/file.json","tests/fixtures/osx-10.14.6/file.out","tests/fixtures/ubuntu-18.04/file.json","tests/fixtures/ubuntu-18.04/file.out","tests/test_file.py"]},"message":"add file command tests for #41"},{"commit":"dfc96181159748d019419a2cba7aa9cb3b7a2a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":260,"deletions":1,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/file.md","jc/cli.py","jc/parsers/file.py"]},"message":"add file parser for issue #41"},{"commit":"8e02e5c75a11cf205299ee6f87b67f9b787cf55e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":5,"files":["jc/cli.py","tests/test_cli.py"]},"message":"fix issue with getting options with some commands #47"},{"commit":"970493ab9346a344b21be7614903ad81bc65a6e9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["jc/parsers/airport.py","jc/parsers/airport_s.py"]},"message":"add magic commands"},{"commit":"64d78956eb33ca0a2564fded3d12729ee036a915","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"update acknowledgment"},{"commit":"40c05346f4098f8eea14c42da07df3faa143587a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":25,"files":["jc/parsers/history.py"]},"message":"re-adding optimizations from https://github.com/philippeitis"},{"commit":"e9b0bc1409a824a82dabd2479892b7d18bad8c3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/airport.py"]},"message":"doc update"},{"commit":"798e6bb7d939176bb36771a6d41bd55403d583be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":29,"deletions":0,"files":["tests/fixtures/osx-10.14.6/airport-s.json","tests/test_airport_s.py"]},"message":"tests passing for airport -s. issue #46"},{"commit":"12a370deed03ba42d7b7ebb410195ce5f32bb9c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":372,"deletions":9,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/airport.md","docs/parsers/airport_s.md","jc/cli.py","jc/parsers/airport.py","jc/parsers/airport_s.py"]},"message":"add airport -s parser for issue #46"},{"commit":"553bfbe1a0dd866851ba7eca66e9295c2097ad86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":40,"deletions":6,"files":["docs/parsers/airport.md","jc/parsers/airport.py","tests/test_airport.py"]},"message":"tests passing for airport -I. Issue #46"},{"commit":"52494321fcfe0dc7ee71d8d78210b3c10372a237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":120,"deletions":15,"files":["README.md","docs/parsers/airport.md","jc/parsers/airport.py","tests/fixtures/osx-10.14.6/airport-I.json","tests/fixtures/osx-10.14.6/airport-I.out"]},"message":"fixes and docs for airport parser issue #46"},{"commit":"c6c9e06496683d2dd3586d17085801c7e698d960","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":196,"deletions":1,"files":["changelog.txt","docgen.sh","docs/parsers/airport.md","jc/cli.py","jc/parsers/airport.py","tests/fixtures/osx-10.14.6/airport-I.out","tests/fixtures/osx-10.14.6/airport-s.out"]},"message":"added airport command parser"},{"commit":"e3a6c05a58a2451e70975d8fabf644c56603c73d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":64,"deletions":17,"files":["docs/parsers/timedatectl.md","jc/parsers/timedatectl.py","tests/fixtures/centos-7.7/timedatectl.json","tests/fixtures/ubuntu-18.04/timedatectl.json","tests/test_timedatectl.py"]},"message":"timedatectl fixes, tests, and fixtures for issue #42"},{"commit":"391d06f68d1f45d33590d5407d3a5e4f723af717","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":35,"deletions":35,"files":["README.md","docs/parsers/ntpq.md","jc/parsers/ntpq.py","tests/fixtures/centos-7.7/ntpq-p.json","tests/fixtures/centos-7.7/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-p.json","tests/fixtures/ubuntu-18.04/ntpq-pn.json"]},"message":"change selection_state to state"},{"commit":"99804ea06e0c70e3a82ddc7f9c7a42343374d700","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":222,"deletions":0,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/timedatectl.md","jc/cli.py","jc/parsers/timedatectl.py"]},"message":"added timedatectl status parser"},{"commit":"51935deb2ad18e4ea3ca16954ce810354f6095a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":21,"deletions":0,"files":["tests/fixtures/centos-7.7/timedatectl.out","tests/fixtures/ubuntu-18.04/timedatectl.out"]},"message":"timedatectl test fixtures"},{"commit":"b24d0c3a475b88d9ccf1a8fe29715ee60972fcad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":34,"deletions":2,"files":["README.md","jc/parsers/ntpq.py"]},"message":"ntpq docs"},{"commit":"762a886d6fdf5c2ad21d81868d138fb32621ed1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":133,"deletions":0,"files":["tests/fixtures/centos-7.7/ntpq-p.json","tests/fixtures/centos-7.7/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-p.json","tests/fixtures/ubuntu-18.04/ntpq-p.out","tests/fixtures/ubuntu-18.04/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-pn.out","tests/fixtures/ubuntu-18.04/ntqp-p.out","tests/test_ntpq.py"]},"message":"add ntpq tests"},{"commit":"2c3e9ddfe47f56cd7edc2fdf6317f7ecec0b7918","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":543,"deletions":0,"files":["changelog.txt","docgen.sh","docs/parsers/ntpq.md","jc/cli.py","jc/parsers/ntpq.py","tests/fixtures/centos-7.7/ntpq-p.out","tests/fixtures/centos-7.7/ntpq-pn.out"]},"message":"add ntpq parser for issue #31"},{"commit":"c7cd2b63c8f24e9d17c458880fe401d8032395ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":91,"files":["tests/fixtures/generic/oscar_age_male.csv"]},"message":"delete unused test file"},{"commit":"f0528ea83112e71ff51c89be27fc9bbdfbbf1951","merge":"b5eaff2 5bc5596","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #45 from kellyjonbrazil/dev\n\nDev v1.8.1"},{"commit":"5bc5596f604fb87dffbfdf44ce2395b16bf01297","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":17,"deletions":4,"files":["changelog.txt","jc/cli.py","setup.py","tests/test_ls.py"]},"message":"version bump to 1.8.1"},{"commit":"2c27ac46be803b583caf82c1765bd0c35cee8bc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2454,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-lR-empty-folder.json","tests/fixtures/osx-10.14.6/ls-lR-empty-folder.out"]},"message":"add ls test fixtures"},{"commit":"caad840153e40dc660a2d5e06a96f3451fef25f9","merge":"aff86ae 65bd7e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #44 from philippeitis/patch-5\n\nMove core magic() logic into seperate function for testability, minor tweaks"},{"commit":"65bd7e2904016141c1ed53cdd437865c66d7628e","merge":"17b6efe c3d7d7d","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #1 from kellyjonbrazil/pr/44\n\nMerge changes"},{"commit":"c3d7d7db12d4870fc4499e0e3445d85ae89f2aea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"removed whitespace"},{"commit":"56053103625af6fb7fa749fc5bc3dbdc62fc223c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":4,"files":["tests/test_cli.py"]},"message":"added tests, removed os import, changed to 'assertEqual'"},{"commit":"17b6efe82e6a558353b011c543489eaaf3a6d3ac","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":14,"deletions":0,"files":["tests/test_cli.py"]},"message":"Create basic tests for generate_magic_commands()"},{"commit":"a032ae56ae7d247e00415267b65b2a8b80a3302e","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"Pass args to generate_magic_command() to allow testing."},{"commit":"eab2f4b0566b4c76db661cbfa99a56a6bf8d6541","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":33,"deletions":19,"files":["jc/cli.py"]},"message":"Move core magic() logic into seperate function for testability, minor tweaks.\n\nWe only care about the command when testing magic() - by moving that out, we can easily test the command. I modified the code to return a boolean signalling that the command is valid, and the command itself to maintain the original functionality.\n\nI also made some small tweaks (removed a list() call, fixed a possible bug with no arguments., moved magic_dict instantiation past the fast path checks to avoid making a dict if not needed.)"},{"commit":"aff86ae6c71abfe1cbdba5c574a5f3707292ec19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":29,"deletions":39,"files":["jc/cli.py"]},"message":"reimpliment magic() based on the dictionary approach suggested by philippeitis"},{"commit":"7ece9ddc1a37551cdaaac50f37a48e6d98b18bf4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"version bump ls"},{"commit":"7cd048e839a7cc8404fd5abc153a3d315c207819","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"1e22f610a33903e8525d35a18b1dcf760a93791e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/ls.py"]},"message":"fix for osx - doesn't print 'total xx' line if empty directory (issue #40)"},{"commit":"5249c972ae25e9b289a2667bf471aad5e58c70a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["changelog.txt"]},"message":"add to changelog"},{"commit":"fd45f856a050f6c56a7a6b50b97b3d8c4de28af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/history.py"]},"message":"import jc.utils instead of jc"},{"commit":"c8ab40cd33b14a3a1937ecf64bb23e282f5bb921","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"]},"message":"ignore .github folder"},{"commit":"b2c872925b37254dac74578c1803b4127f8411c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":20,"insertions":208,"deletions":220,"files":["tests/test_ls.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_passwd.py","tests/test_pip_list.py","tests/test_ps.py","tests/test_route.py","tests/test_shadow.py","tests/test_ss.py","tests/test_systemctl_lj.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py","tests/test_who.py","tests/test_xml.py","tests/test_yaml.py"]},"message":"add utf-8 encoding for testing on Windows"},{"commit":"f48e229202f8ab1ebfa502ca57bb31cf673c7a62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":192,"deletions":192,"files":["tests/test_arp.py","tests/test_blkid.py","tests/test_crontab.py","tests/test_crontab_u.py","tests/test_csv.py","tests/test_df.py","tests/test_dig.py","tests/test_du.py","tests/test_env.py","tests/test_free.py","tests/test_fstab.py","tests/test_group.py","tests/test_gshadow.py","tests/test_history.py","tests/test_hosts.py","tests/test_id.py","tests/test_ifconfig.py","tests/test_ini.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_last.py"]},"message":"utf-8 open for windows tests"},{"commit":"799fec92c39b1ff0696c6ebb182c4bef66b86e56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["tests/test_pip_show.py","tests/test_systemctl.py"]},"message":"utf-8 for windows support"},{"commit":"87a41c2fcaa395f108b5a5126ed77f7cc7fe5d6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["tests/test_lsblk.py","tests/test_stat.py"]},"message":"add utf-8 to open function"},{"commit":"7f85de0c46cda95d57b9677ba0ca3ea59690e502","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"add windows-latest"},{"commit":"13661b19934a74417713e98e3e1e4df6bb0f29ad","merge":"5f798d6 51d5c38","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #37 from philippeitis/continuous_integration\n\nEnable Continuous Integration with GitHub Actions."},{"commit":"51d5c3892d6ff1e2e6ac7c4f3e496e7d9ed4b6a7","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"Remove Windows tests, due to lack of support."},{"commit":"e4eab4641ac15220f2787c5d27b443ab8c718b86","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/blkid.py"]},"message":"Change line in blkid.py to trigger CI"},{"commit":"9b148e0ba37e18749d95608e1bac6c090ab83ee2","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["requirements.txt"]},"message":"Add requirements.txt"},{"commit":"de28932650d5027e2781011f1243b89f053b241d","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":7,"deletions":6,"files":["jc/parsers/arp.py"]},"message":"Consolidate dictionary into creation, trigger CI"},{"commit":"5f798d603e461d2de5adf74662ba4d4b121f28f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/history.py"]},"message":"version bump and ack to philippeitis"},{"commit":"a0757b2dd3fc0f3e26622941d93bd909dae0a1f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":5,"files":["jc/parsers/foo.py"]},"message":"optimize line parsing"},{"commit":"498d51b4e802cb40cac58aae1eff1f723bbbd896","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":31,"deletions":0,"files":[".github/workflows/pythonapp.yml"]},"message":"Enable Continuous Integration with GitHub Actions.\n\nThis automatically runs unit tests on various operating systems and Python versions when Python files are modified to ensure that functionality remains correct."},{"commit":"b06b6bae3f64f591c9075812dc1b632ef6d2da37","merge":"6aa2d5a 0652768","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #36 from philippeitis/patch-3\n\nSimplify process() in history.py, avoid list allocation in parse()"},{"commit":"b5eaff21372a58aefb66e5afc5e863db8355fee1","merge":"d75c406 c01bcd3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #35 from kellyjonbrazil/revert-34-patch-3\n\nRevert \"Simplify process() in history.py, avoid list allocation in parse()\""},{"commit":"c01bcd3734382a0c388d9f4041fc888171ca7675","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":25,"deletions":12,"files":["jc/parsers/history.py"]},"message":"Revert \"Simplify process() in history.py, avoid list allocation in parse()\""},{"commit":"d75c4068caaf4adbe9a39fa452ae867421053673","merge":"d96b3a6 0652768","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #34 from philippeitis/patch-3\n\nSimplify process() in history.py, avoid list allocation in parse()"},{"commit":"6aa2d5a3d26f9f00c3334928f6f0e501860433da","merge":"69576f6 a63408c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #33 from philippeitis/patch-2\n\nHandle case where only options are passed."},{"commit":"065276805f0f2dd23a6382f0120ca07e9eae116f","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":12,"deletions":25,"files":["jc/parsers/history.py"]},"message":"Simplify process() in history.py, avoid list allocation in parse()"},{"commit":"a63408c8cf3f99646be2b375f651d6cf417f7ae0","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/cli.py"]},"message":"Handle case where only options are passed."},{"commit":"69576f6bfae073196627a0a39b5ececb8666d25c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/cli.py"]},"message":"minor sytax fixes"},{"commit":"19845624e2996da4653efc2f312aceb514feaf5c","merge":"d96b3a6 22ff296","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #32 from philippeitis/patch-1\n\nSimplify main(), magic() methods."},{"commit":"22ff2964e9889587711e779ac24f8f8034212f5e","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":62,"deletions":75,"files":["jc/cli.py"]},"message":"Simplify main(), magic() methods."},{"commit":"d96b3a65a98bc135d21d4feafc0a43317b5a11fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"4989445ef4bb8919d9b3b95e2fcee77ca7692aec","merge":"53ee2c3 6770892","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #30 from kellyjonbrazil/dev\n\nDev v1.8.0"},{"commit":"6770892acd49aced225dbccf39290f33522c9001","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]},"message":"add release notes link"},{"commit":"d4eba8740fc325756f3db96ab37a5383540cbeff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"release date 3/3"},{"commit":"9f607605605e47990f97ccfd48fde19a14e036e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["tests/test_group.py","tests/test_gshadow.py"]},"message":"add group and gshadow tests"},{"commit":"0a8f8ac934f040141e6a4eec8cf7170e1ca73294","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"add group and gshadow parsers"},{"commit":"6ae24c82447bcff606e7027dd01b916293b49584","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":274,"deletions":0,"files":["tests/fixtures/centos-7.7/group.json","tests/fixtures/centos-7.7/group.out","tests/fixtures/centos-7.7/gshadow.json","tests/fixtures/centos-7.7/gshadow.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/group.json","tests/fixtures/osx-10.14.6/group.out","tests/fixtures/ubuntu-18.04/group.json","tests/fixtures/ubuntu-18.04/group.out","tests/fixtures/ubuntu-18.04/gshadow.json"]},"message":"add group and gshadow test fixtures"},{"commit":"d3679082a8c5cff76eb7de67c33fe716a1402182","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":64,"deletions":0,"files":["README.md"]},"message":"add group and gshadow parsers"},{"commit":"fb08b42dca135705a3759435335d95c898d47f60","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":21,"deletions":21,"files":["docs/parsers/group.md","jc/parsers/group.py"]},"message":"change 'group_list' to 'members'"},{"commit":"4aeaa9f42a88bf4e05c8780a35cc8c4d83c9b842","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":316,"deletions":0,"files":["docgen.sh","docs/parsers/gshadow.md","jc/cli.py","jc/parsers/gshadow.py","tests/fixtures/ubuntu-18.04/gshadow.out"]},"message":"add /etc/gshadow parser"},{"commit":"5f5693da048cb4739dc56500c672dc8fbccaaf32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["docs/parsers/csv.md"]},"message":"spelling fix"},{"commit":"5eb0f61727f92a84fb3620e13db072167ef552ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":333,"deletions":0,"files":["docgen.sh","docs/parsers/group.md","jc/cli.py","jc/parsers/group.py"]},"message":"add /etc/group file parser"},{"commit":"958e998991b1cc61dc1dc341b90cd53f4691cd43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/csv.py"]},"message":"formatting"},{"commit":"b78c1509f67fb76d17ac97193a2851d8d9e17f62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/csv.py"]},"message":"try/except dialect detection"},{"commit":"ce184d4d57faa3f1bca5bcaa02da7a5a5d995eb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":20,"insertions":24054,"deletions":0,"files":["tests/fixtures/generic/csv-biostats.csv","tests/fixtures/generic/csv-biostats.json","tests/fixtures/generic/csv-cities.csv","tests/fixtures/generic/csv-cities.json","tests/fixtures/generic/csv-deniro.csv","tests/fixtures/generic/csv-deniro.json","tests/fixtures/generic/csv-example.csv","tests/fixtures/generic/csv-example.json","tests/fixtures/generic/csv-flyrna.json","tests/fixtures/generic/csv-flyrna.tsv","tests/fixtures/generic/csv-flyrna2.json","tests/fixtures/generic/csv-flyrna2.tsv","tests/fixtures/generic/csv-homes-pipe.csv","tests/fixtures/generic/csv-homes-pipe.json","tests/fixtures/generic/csv-homes.csv","tests/fixtures/generic/csv-homes.json","tests/fixtures/generic/csv-insurance.csv","tests/fixtures/generic/csv-insurance.json","tests/fixtures/generic/oscar_age_male.csv","tests/test_csv.py"]},"message":"add csv parser tests"},{"commit":"b4c3714ced9ee5cc6a7ef0c59a43cf85e1cb9824","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["README.md"]},"message":"removed [OPTIONS] PARSER syntax. still works but prefer the PARSER [OPTIONS] syntax for better performance"},{"commit":"5b7dfa043864f1a3f34aa4ef5c6554a2dfe185f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"formatting"},{"commit":"391a3884765780497dc34e0e9938ff5032c81291","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":49,"deletions":0,"files":["README.md","changelog.txt"]},"message":"doc update"},{"commit":"d9c4e2ed4c0f908f4b63c2376b53ddfd32a0fae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":241,"deletions":0,"files":["docgen.sh","docs/parsers/csv.md","jc/cli.py","jc/parsers/csv.py"]},"message":"add csv file parser"},{"commit":"0c42db38b102987629e40cee2716b826161e6e94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/who.md","jc/parsers/who.py"]},"message":"doc update"},{"commit":"2f9be8bf33f8be5651d06da9d316f7894606df19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/cli.py"]},"message":"simplify usage"},{"commit":"e8c00155e861b9eedfdf37a22912271bec581d62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"add -b to warning message"},{"commit":"cc88fdd9ee3951d7ef2aa881cc12f0b7f96aef86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"update example"},{"commit":"d9de11ef1d846a9625dad0adb962b864404c90c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["README.md"]},"message":"add another who example"},{"commit":"0ceda97d0968b67b70cdbb68f7a62657e79c9935","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":88,"deletions":0,"files":["tests/test_who.py"]},"message":"who parser tests"},{"commit":"d0dec92ba84640ddc40da7c6faa6568b76757e04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":36,"deletions":0,"files":["tests/fixtures/centos-7.7/who-a.json","tests/fixtures/centos-7.7/who-a.out","tests/fixtures/centos-7.7/who.json","tests/fixtures/centos-7.7/who.out","tests/fixtures/osx-10.14.6/who-a.json","tests/fixtures/osx-10.14.6/who-a.out","tests/fixtures/osx-10.14.6/who.json","tests/fixtures/osx-10.14.6/who.out","tests/fixtures/ubuntu-18.04/who-a.json","tests/fixtures/ubuntu-18.04/who-a.out","tests/fixtures/ubuntu-18.04/who.json","tests/fixtures/ubuntu-18.04/who.out"]},"message":"add who test fixtures"},{"commit":"d420c008d8aaa0879fa5a3f236d81acb506376c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["jc/parsers/who.py"]},"message":"fix for pts lines with no user info"},{"commit":"f0b32db4333477e22cc40de62cf026a6a7aa2eb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","docs/parsers/who.md"]},"message":"who doc update"},{"commit":"bc838eda591473d32b11a885e60ef653925739d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/parsers/who.py"]},"message":"fix output for non-extended"},{"commit":"afe55b6af07b74816d33d9555ffaa1c1921dd27a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":46,"deletions":0,"files":["README.md"]},"message":"add who parser"},{"commit":"dd3a3ac302d7b35beef1181e74aed0faf96fd3e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":255,"deletions":9,"files":["changelog.txt","docgen.sh","docs/parsers/who.md","jc/parsers/who.py"]},"message":"doc update and process pid integers"},{"commit":"f9982a79474c1838f37fc0ff88437980b228d7a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":2,"files":["jc/parsers/who.py"]},"message":"fixes for from and comment fields"},{"commit":"07c1be9e9ad9f62cf76c23788152de8f3530ee16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":170,"deletions":0,"files":["jc/cli.py","jc/parsers/who.py"]},"message":"add who command parser"},{"commit":"f832b88755bfbd3878ec402e603180e6825279be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["tests/test_passwd.py","tests/test_shadow.py"]},"message":"add passwd and shadow tests"},{"commit":"0fac757efca41db062b2f65acc727963c5fb353c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"add passwd and shadow parsers"},{"commit":"fc15742065531152f3d5895042eeb806e33a192a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":215,"deletions":0,"files":["tests/fixtures/centos-7.7/passwd.json","tests/fixtures/centos-7.7/passwd.out","tests/fixtures/centos-7.7/shadow.json","tests/fixtures/centos-7.7/shadow.out","tests/fixtures/osx-10.14.6/passwd.json","tests/fixtures/osx-10.14.6/passwd.out","tests/fixtures/ubuntu-18.04/passwd.json","tests/fixtures/ubuntu-18.04/passwd.out","tests/fixtures/ubuntu-18.04/shadow.json","tests/fixtures/ubuntu-18.04/shadow.out"]},"message":"passwd and shadow test fixtures"},{"commit":"6f2466a1319eaa4256ae7a2a0f23b3ff37882d37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":73,"deletions":0,"files":["README.md"]},"message":"update readme with /etc/passwd and /etc/shadow file parsers"},{"commit":"4b90e22f0a9c6790bca62c8314945a7ffc6e267b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":137,"deletions":9,"files":["docs/parsers/shadow.md","jc/parsers/shadow.py"]},"message":"doc update"},{"commit":"c4935687853fb3b079ae42614793cdafe68e124e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/passwd.md","jc/parsers/passwd.py"]},"message":"doc fix"},{"commit":"1cdf004b7728901dc137e57b0c8994edfdd6d417","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":190,"deletions":0,"files":["docgen.sh","docs/parsers/shadow.md","jc/cli.py","jc/parsers/shadow.py"]},"message":"add /etc/shadow parser"},{"commit":"a4ea50426184d30cbe849a8f80bfd5c975075c9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":303,"deletions":0,"files":["docgen.sh","docs/parsers/passwd.md","jc/cli.py","jc/parsers/passwd.py"]},"message":"add /etc/passwd parser"},{"commit":"4c2c234c3bf68d1aac66bd4d1f22b9f97e99128d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":16,"insertions":673,"deletions":0,"files":["tests/fixtures/centos-7.7/last-w.json","tests/fixtures/centos-7.7/last-w.out","tests/fixtures/centos-7.7/last.json","tests/fixtures/centos-7.7/last.out","tests/fixtures/centos-7.7/lastb.json","tests/fixtures/centos-7.7/lastb.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/last.json","tests/fixtures/osx-10.14.6/last.out","tests/fixtures/ubuntu-18.04/last-w.json","tests/fixtures/ubuntu-18.04/last-w.out","tests/fixtures/ubuntu-18.04/last.json","tests/fixtures/ubuntu-18.04/last.out","tests/fixtures/ubuntu-18.04/lastb.json","tests/fixtures/ubuntu-18.04/lastb.out","tests/test_last.py"]},"message":"add last and lastb tests"},{"commit":"3d4c0f3e89dab6496ff74df350e3238d6625933c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":22,"insertions":285,"deletions":0,"files":["tests/fixtures/centos-7.7/blkid-ip-multi.json","tests/fixtures/centos-7.7/blkid-ip-multi.out","tests/fixtures/centos-7.7/blkid-ip-udev-multi.json","tests/fixtures/centos-7.7/blkid-ip-udev-multi.out","tests/fixtures/centos-7.7/blkid-ip-udev.json","tests/fixtures/centos-7.7/blkid-ip-udev.out","tests/fixtures/centos-7.7/blkid-sda2.json","tests/fixtures/centos-7.7/blkid-sda2.out","tests/fixtures/centos-7.7/blkid.json","tests/fixtures/centos-7.7/blkid.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/blkid-ip-multi.json","tests/fixtures/ubuntu-18.04/blkid-ip-multi.out",".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.json",".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.out","tests/fixtures/ubuntu-18.04/blkid-ip-udev.json","tests/fixtures/ubuntu-18.04/blkid-ip-udev.out","tests/fixtures/ubuntu-18.04/blkid-sda2.json","tests/fixtures/ubuntu-18.04/blkid-sda2.out","tests/fixtures/ubuntu-18.04/blkid.json","tests/fixtures/ubuntu-18.04/blkid.out","tests/test_blkid.py"]},"message":"add blkid tests"},{"commit":"52fad02903468c05d2422a340ad8dbcdf18ed475","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"doc update"},{"commit":"9dcabc057c40e345971a08474b5b886e6b60a8de","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/blkid.py"]},"message":"support multi device udev output"},{"commit":"db8c1079ddc25922ab6a20d0f71fb19af38f8092","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/blkid.py"]},"message":"use maxsplit=1 in case there are multiple '=' delimiters"},{"commit":"8f954673abdbbd4d9b9da3eacc61b335b4909f89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/blkid.py"]},"message":"use shlex split for values within quotations that have spaces"},{"commit":"79522d1c7dd4dec15b75b06dda002752f7d97e36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"doc fixes"},{"commit":"a18bf030794efef125c70a32fe82855e47649b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/parsers/last.py","jc/parsers/ls.py"]},"message":"use raw strings for regular expressions"},{"commit":"c02b6b5d827d26b43db0a3457124714aa2dbbc98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":81,"deletions":1,"files":["README.md","changelog.txt","setup.py"]},"message":"doc updates"},{"commit":"f99b4232848b0d868804acc4125836bfcf475bba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":134,"deletions":29,"files":["docs/parsers/blkid.md","jc/parsers/blkid.py"]},"message":"doc update"},{"commit":"d7d9d45d4fba89e74f7490c463eb26bf20a5d127","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/blkid.py"]},"message":"add missing comma"},{"commit":"90065ec0cdc8c5abc13bc0027f63658dacf3cfb2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":31,"deletions":26,"files":["jc/parsers/blkid.py"]},"message":"add more integers"},{"commit":"51157ebb867a48332c768bf3086614944aebdb62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/blkid.py"]},"message":"another devname fix"},{"commit":"96d95c79ca0938e326f55f858f8153df9cb49e44","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/blkid.py"]},"message":"devname fix"},{"commit":"e5da34c23306463e8707b15676db0ca53bf66757","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/blkid.py"]},"message":"check if devname key exists before renaming"},{"commit":"f09d657f7728242947db3dc63ff6779d08c37866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/blkid.py"]},"message":"rename devname to device"},{"commit":"0f4b0189f54dc0b3622cd407c5565e53ea111379","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":35,"deletions":3,"files":["jc/parsers/blkid.py"]},"message":"process integer values"},{"commit":"4666042abb3142e2cfb518db9ffe22d9e608e090","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":216,"deletions":0,"files":["docgen.sh","docs/parsers/blkid.md","jc/cli.py","jc/parsers/blkid.py"]},"message":"add blkid parser"},{"commit":"027d544c2bb778adc0ee9463832f19b10e099a0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"]},"message":"add last and lastb parser"},{"commit":"f1967d0138d27bde864c2400aa75baa8a39bbfde","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/last.py"]},"message":"system_boot fix"},{"commit":"c1d896027dd1ce021e048b3e77eab24ff59d08bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/last.py"]},"message":"fix system_boot tty"},{"commit":"5c2d2a66187d32d62b31b7c7f13e502fdb7f9635","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":190,"deletions":6,"files":["docgen.sh","docs/parsers/last.md","jc/parsers/last.py"]},"message":"process function and docs"},{"commit":"997b269b0b7e53a456e2a0bd997ead6c2ae843bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/last.py"]},"message":"btmp fix"},{"commit":"61257e7525c25827cb8057ed5c612e54ea9b9637","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":119,"deletions":1,"files":["jc/cli.py","jc/parsers/last.py"]},"message":"add last and lastb parser"},{"commit":"53ee2c36310cb84390ef96644aee6871769151c9","merge":"2ad3167 8bfa0bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #29 from kellyjonbrazil/dev\n\nDev v1.7.5"},{"commit":"8bfa0bddec9ff1c21972019467dcf5738ab3afd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to 1.7.5"},{"commit":"ad61e6bc81177a2add7d052bf1ddec5f1b3f2976","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":26,"insertions":598,"deletions":133,"files":["tests/fixtures/centos-7.7/ls-R-newlines.json","tests/fixtures/centos-7.7/ls-R-newlines.out","tests/fixtures/centos-7.7/ls-l-newlines.json","tests/fixtures/centos-7.7/ls-l-newlines.out","tests/fixtures/centos-7.7/ls-lR-newlines.json","tests/fixtures/centos-7.7/ls-lR-newlines.out","tests/fixtures/centos-7.7/ls-newlines.json","tests/fixtures/centos-7.7/ls-newlines.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/ls-R-newlines.json","tests/fixtures/osx-10.14.6/ls-R-newlines.out","tests/fixtures/osx-10.14.6/ls-l-newlines.json","tests/fixtures/osx-10.14.6/ls-l-newlines.out","tests/fixtures/osx-10.14.6/ls-lR-newlines.json","tests/fixtures/osx-10.14.6/ls-lR-newlines.out","tests/fixtures/osx-10.14.6/ls-newlines.json","tests/fixtures/osx-10.14.6/ls-newlines.out","tests/fixtures/ubuntu-18.04/ls-R-newlines.json","tests/fixtures/ubuntu-18.04/ls-R-newlines.out","tests/fixtures/ubuntu-18.04/ls-l-newlines.json","tests/fixtures/ubuntu-18.04/ls-l-newlines.out","tests/fixtures/ubuntu-18.04/ls-lR-newlines.json","tests/fixtures/ubuntu-18.04/ls-lR-newlines.out","tests/fixtures/ubuntu-18.04/ls-newlines.json","tests/fixtures/ubuntu-18.04/ls-newlines.out","tests/test_ls.py"]},"message":"add ls tests for filenames with newline characters"},{"commit":"873b5ba8acf599d083d6031b818d5fca83cbca9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":31,"files":["README.md"]},"message":"move examples to bottom"},{"commit":"6ae50054e2e8c7ca730013b43062eedc230c0ad4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"readme update"},{"commit":"22a35f41bf9c404d3532611f5929143d04b10010","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/ls.py"]},"message":"move variables to top"},{"commit":"961696c963215a9dab56113ff89f21a6e9739df6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/ls.py"]},"message":"add a warning if newlines are detected in naked ls"},{"commit":"c7b7f1a5dcf77a1f4c23ef6bbf5683fd1a055f72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"fix for files with newlines in naked ls"},{"commit":"b5a0d650b128d8af81bb14dd5d007349529cb66f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":151,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-newlines.out"]},"message":"ls output with newlines"},{"commit":"573b27946474276592ee7494689ce9a88f5a05f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"fixup for filenames that start with a newline character"},{"commit":"116e07f1614b4a45eb58ffcfe20b5efa71c473a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":7,"files":["jc/parsers/ls.py"]},"message":"fixes for multiple consecutive newlines and trailing newlines in filenames"},{"commit":"964868c8aff99edf37b0db41c7d16f8b84ac4704","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":21,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"add support for newlines in filenames (only with ls -l)"},{"commit":"c8dac32df8102c2b782e87d55bb95ca2d9490185","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"readme update"},{"commit":"72a0016bd833699c3819baa899f335f75b8c1943","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"use link to anchor for Parsers"},{"commit":"2ad316743460bb6620e7ede251e1dc2739b073fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update doc url"},{"commit":"ddabfaa05c63f886b17e5b4d37cd83fcfdb9b221","merge":"873771d f857523","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #25 from kellyjonbrazil/dev\n\nDev v1.7.4"},{"commit":"f857523ca756864211b6b18af5a8886e5db200bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"bump to version 1.7.4"},{"commit":"00d53858e820f00ba015bc25629100c8e5495221","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add note about aliases not being supported"},{"commit":"c008167e660929a91606bb96498cdc113e815f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"add time-style=full-iso option to doc"},{"commit":"102344a041e9e0aff8b6d9db1873ba1064f7e895","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/ls.py"]},"message":"formatting"},{"commit":"c865298ef3613fe6ce17f41c15209a69940af1ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"remove unnecessary enumerate in for loop"},{"commit":"6ac03faf939bcda8930a48a5e832b557813e2129","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"Revert \"add ubuntu and centos default ls aliases to magic_commands\"\n\nThis reverts commit 49c2701743706b6cbf0e52b2c7f275e301315189."},{"commit":"49c2701743706b6cbf0e52b2c7f275e301315189","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"add ubuntu and centos default ls aliases to magic_commands"},{"commit":"d1a271b08e64b42be8cec11377b0e18435a0caec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":35333,"deletions":1374,"files":["tests/fixtures/centos-7.7/ls-R.json","tests/fixtures/centos-7.7/ls-R.out","tests/fixtures/centos-7.7/ls-alR.json","tests/fixtures/centos-7.7/ls-alR.out","tests/fixtures/centos-7.7/ls-glob.json","tests/fixtures/centos-7.7/ls-glob.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/ls-R.json","tests/fixtures/osx-10.14.6/ls-R.out","tests/fixtures/osx-10.14.6/ls-alR.json","tests/fixtures/osx-10.14.6/ls-alR.out","tests/fixtures/osx-10.14.6/ls-glob.json","tests/fixtures/osx-10.14.6/ls-glob.out","tests/fixtures/ubuntu-18.04/ls-R.json","tests/fixtures/ubuntu-18.04/ls-R.out","tests/fixtures/ubuntu-18.04/ls-alR.json","tests/fixtures/ubuntu-18.04/ls-alR.out","tests/fixtures/ubuntu-18.04/ls-glob.json","tests/fixtures/ubuntu-18.04/ls-glob.out","tests/fixtures/ubuntu-18.04/ls-lR.out","tests/test_ls.py"]},"message":"add new ls tests for recursive and multiple directories with glob"},{"commit":"7388ad19b9d252d3e66659e4bc37171cef2a9748","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":6,"deletions":4,"files":["docs/parsers/ls.md","jc/cli.py","jc/parsers/ls.py","setup.py"]},"message":"bump to v1.8.0"},{"commit":"2e63cb5fadd032c7cb54a618e8b374ee853abcca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"version bump ls to 1.1"},{"commit":"e7f14d02b12c7dcba309f2d28a0f171769d1ba37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1438,"deletions":8,"files":["jc/parsers/ls.py","tests/fixtures/ubuntu-18.04/ls-R.out","tests/fixtures/ubuntu-18.04/ls-lR.out"]},"message":"update ls to allow multi directory (glob and -R). Adds 'parent' key if found"},{"commit":"873771d05ab0b77163c95d2c37e11edf38451832","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"d7de122e36e0698e00f321fbac8dc0b543cf9e8a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"prettify link"},{"commit":"4ef0434f536c6658ddc2b48a3db113df2fd26000","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["README.md"]},"message":"formatting update"},{"commit":"1aa2c9925996f2358b6272547db755ec3098a8a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":2,"files":["README.md","jc/parsers/history.py"]},"message":"removed history from magic syntax"},{"commit":"c2450b27b079b02ed3f4ece9e36547f01cd4b139","merge":"028e136 14d6d8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #22 from kellyjonbrazil/dev\n\nDev 1.7.3"},{"commit":"14d6d8b84f0ddeff984aff486e2e697a91ac6fb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump to 1.7.3"},{"commit":"f0e3846c038ec5507cd4a19980d83ee0fb969ef5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["README.md"]},"message":"formatting"},{"commit":"6ba64f1128373843b068226424a3af545ac9d22c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":2,"files":["README.md"]},"message":"usage update"},{"commit":"13bcdbc6c9a81bc5d52fe7a84e6a0a34908db8bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"doc update"},{"commit":"cfba62db20674d788601354211a10e2b1675a0c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":6,"files":["jc/cli.py"]},"message":"correct parser search in magic()"},{"commit":"18fb69e36e303a3f9530dcb80354b25bfdbb931d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"docs/parsers link"},{"commit":"474eb0f3fdeaa612e189d745b12a5ed9c6e0a31b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"doc updates"},{"commit":"7f47b533701e60449351d5da03cd5960e0dec9ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":90,"deletions":68,"files":["README.md"]},"message":"add alternate magic syntax"},{"commit":"dc2907d3ce101043b30bcce71abb4bb02897f43a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["docs/parsers/crontab.md"]},"message":"doc update"},{"commit":"1af85811e06c489051c456918284a746ce12c692","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/fstab.py"]},"message":"remove magic_command info"},{"commit":"1c1b19a478fe5c356a93cd165518429e77fcbdf0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab.py"]},"message":"doc update"},{"commit":"66942d64babf932faeb887eb4ec0cab32829321a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"2fb6ae08d76e7a5727b2fcdd5def3e3822e0cf72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"]},"message":"fix shlex usage"},{"commit":"bf8811e03e2a5b736f4c084f42400fcde400ff3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":3,"files":["jc/cli.py"]},"message":"add comments"},{"commit":"c8b502c571d3081ca3086e349a426ca252a3bb84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/cli.py"]},"message":"remove unnecessary join and add comments"},{"commit":"81c11a975c6ee66a1f83350df8b065a6b07dcc9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/cli.py"]},"message":"added docstrings"},{"commit":"0d370eb403ab4d9ed11e36776efc08bdd3505c1a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"doc update"},{"commit":"7492c3f1e312cdb0c58c2077db0d60d2cab1e58f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"515a8a84b79c9bf6f3001d3c52faa82a6709b8d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":33,"insertions":33,"deletions":33,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add \"command\" to description"},{"commit":"dd6680efb2b15bb8ed676016aae1c65193dfe147","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":29,"deletions":14,"files":["changelog.txt","jc/cli.py"]},"message":"allow condensed options (-prdq is equivalent to -p -r -d -q)"},{"commit":"a7158373cd225685f5c398fa36b8d5208e20521c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"comment update"},{"commit":"6d50ec71997cac9c898737de93b8a945f0351e53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":6,"files":["jc/cli.py"]},"message":"add try/except to fix bare jc command condition"},{"commit":"95dbf98e8e03486f74d986683f52699f4f9c9577","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":6,"files":["jc/cli.py"]},"message":"allow options in magic syntax"},{"commit":"d49323e4ebf2a8aebd1d8ea65ef0854ee8bcb29f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":33,"insertions":33,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add magic_commands list to info"},{"commit":"08c1e2aec9d6bb68653dc12ba2272535fb7cef09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"]},"message":"add magic syntax"},{"commit":"a2c137df2e6d3b133df5df0bb3f9b1ca69990557","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":66,"deletions":299,"files":["jc/cli.py","jc/cli.py.old"]},"message":"better magic command syntax logic using introspection information from parser modules"},{"commit":"fe27dcdb8f72b5a288f978b87be2eb930099543e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":319,"deletions":45,"files":["jc/cli.py","jc/cli.py.old"]},"message":"proof of concept for magic syntax (e.g. jc ls -al)"},{"commit":"028e136161ac15f588845f87907b4565a6ee7be2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":7,"deletions":2,"files":["MANIFEST.in","changelog.txt","jc/cli.py","setup.py"]},"message":"bump to 1.7.2: add test fixtures to package"},{"commit":"9a85a0a4d504447b32fb622bb17cebc5e47f687f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/crontab_u.md","jc/parsers/crontab_u.py"]},"message":"fix doc"},{"commit":"3a1cbc4d5063344c3e3a4bf510d651a36beedfb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":14,"files":["jc/cli.py"]},"message":"move info class to top"},{"commit":"77d334f7f386f79ec0571325500054fdab207f31","merge":"4de8f42 53cdf86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #19 from kellyjonbrazil/dev-1.7.1\n\nDev v1.7.1"},{"commit":"53cdf863acc72dbdb671773e30277f42e9eadc0e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"7b7e7fe0fe92edef1e559bd7ae8272530d7ed5c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"0c03132847a3d2bcbdb0b743e1472865916cced4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"fix error codes using sys.exit()"},{"commit":"3b81f7e2a1381958b33962d4531f3fa223c6a83e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"exit code on ctrl-c exit"},{"commit":"3d76437b435660e92633c604c4ad32ee0500a28b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ini.md","docs/parsers/xml.md","jc/parsers/ini.py","jc/parsers/xml.py"]},"message":"doc fix"},{"commit":"4bc54c78cea48682ed0432ea56460a26a0e52f83","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":7,"deletions":7,"files":["docs/parsers/du.md","docs/parsers/history.md","jc/parsers/du.py","jc/parsers/history.py"]},"message":"fix compatibility list"},{"commit":"3d303a96b9f6d582b1e99a632da539c3bee4df7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":16,"deletions":2,"files":["tests/fixtures/centos-7.7/crontab-u.json","tests/fixtures/centos-7.7/{crontab2.out => crontab-u.out}","tests/fixtures/centos-7.7/crontab.json","tests/fixtures/ubuntu-18.04/crontab-u.json","tests/test_crontab_u.py"]},"message":"crontab bug fix and tests"},{"commit":"33c99d031d18e52a8ca85dfc1a8cba0acebfc3bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/crontab.py"]},"message":"fix line clobbering bug"},{"commit":"caf7e9f69a22f3c9b3d4624fd2238d6e54d932ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/crontab_u.py"]},"message":"fix line clobbering bug and add user field to shortcuts"},{"commit":"9449f1f5d5e7bc075549549758af5cc3a6c4524f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":9,"deletions":3,"files":["changelog.txt","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/fixtures/centos-7.7/crontab2.out"]},"message":"crontab bugfix: inserting header row was clobbering the first data row"},{"commit":"6bad164b5e2a5b7c7ce82c69b6c091fc079ab2fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":9,"files":["jc/cli.py"]},"message":"simplify by removing unnecessary getattr calls"},{"commit":"bb5ba7ddb146821db2efe095b6de5ae5b72bb335","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/cli.py"]},"message":"add indent variable to helptext"},{"commit":"8b2e01d5404649e8f94c81ca3b5fa05fe8962220","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"doc update"},{"commit":"ff1159b1deb9b870382a6066166961902679b569","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"exit codes on error"},{"commit":"a2fd3202a0a3df336792f167c546ea3e53ea2332","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/pip_list.py","jc/parsers/pip_show.py"]},"message":"description formatting change"},{"commit":"7b53715b91787a8885d61ddc0079c7ee8f9348a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/crontab_u.py"]},"message":"change description"},{"commit":"e05fc0a5107b348af14ff4bea39d274939fab7dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":8,"files":["jc/cli.py"]},"message":"change padding of helptext"},{"commit":"43604c33f654b8c19e8cce387ebbf31bd598b73b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]},"message":"doc update"},{"commit":"eb67c484ff2a9530b434cd6a90c160f6936e1de7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"add crontab-u to parsers list"},{"commit":"a7b7bdd46781d07e6e70d74a41a3944855fde5fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":94,"deletions":92,"files":["jc/cli.py"]},"message":"load parser modules 'just in time' so we don't need to load all modules at startup"},{"commit":"ab06989a18faf5378f1e73c7016ea02e1218ff9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["README.md"]},"message":"description updates"},{"commit":"657b722f947b6a0aa7e52a786e4c84f177e9a5c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":8,"deletions":8,"files":["README.md","changelog.txt","docs/parsers/ini.md","jc/parsers/ini.py"]},"message":"ini to INI"},{"commit":"dd2aecad2787186b3962723086bb7e13eff4874f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"description update"},{"commit":"c82c5c5c648384eb5a54205ba8590624a3ab4375","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"a1761cd68f91e2668d8d7e2fa7774f6496408be6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":42,"deletions":0,"files":["tests/fixtures/centos-7.7/id.json","tests/fixtures/osx-10.14.6/id.json","tests/test_id.py"]},"message":"id tests"},{"commit":"d618a7f583629bb7a7fc0854e7349cab07e3e003","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":143,"deletions":9,"files":["README.md","docgen.sh","docs/parsers/id.md","jc/parsers/id.py"]},"message":"doc update"},{"commit":"831a42f66096f5efbbf0f6882970c328120f9c9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["README.md"]},"message":"id formatting"},{"commit":"3b36022e5a1056a28a83494b1ab8fab209399c2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":250,"deletions":1,"files":["README.md","jc/cli.py","jc/parsers/id.py","tests/fixtures/centos-7.7/id.out","tests/fixtures/osx-10.14.6/id.out"]},"message":"add id parser"},{"commit":"d01dfa25f10f82cd201ae7b4c9cc18313773f8d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["changelog.txt"]},"message":"changelog updates"},{"commit":"395a99037b4816eb800b289f90372a9b8d7d36cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":89,"deletions":13,"files":["README.md","docs/parsers/history.md","jc/parsers/history.py"]},"message":"crontab-u and history doc updates"},{"commit":"025986c51d2d4869b17de63a7dd96efa2988e3c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":13,"deletions":3,"files":["jc/parsers/history.py","tests/fixtures/centos-7.7/history.json","tests/fixtures/ubuntu-18.04/history.json"]},"message":"change history 'line' to integer"},{"commit":"c56b83093ff05f55ef4643c1731cff61d4b9e8ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":202,"deletions":2,"files":["docgen.sh","docs/parsers/crontab.md","docs/parsers/crontab_u.md"]},"message":"doc update"},{"commit":"7c712a4133abd843d4da926e4c8d548abd1d6fa3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":52,"deletions":50,"files":["jc/parsers/crontab_u.py"]},"message":"doc update"},{"commit":"9a0cfe6dfa4888f435d35bd2d35126d031a556d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/crontab.py"]},"message":"minor formatting"},{"commit":"a116cdbcec1b27192dd0f9f4707629353edb3caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":29,"deletions":13,"files":["tests/fixtures/ubuntu-18.04/crontab-u.json",".../ubuntu-18.04/{crontab.out => crontab-u.out}","tests/fixtures/ubuntu-18.04/crontab.json","tests/test_crontab.py","tests/test_crontab_u.py"]},"message":"tests for crontab-u"},{"commit":"f2d616c98e049cdac5d667e63723f92110419a1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":272,"deletions":0,"files":["changelog.txt","jc/cli.py","jc/parsers/crontab_u.py"]},"message":"add crontab with user parser"},{"commit":"42cbd1777dbacc614d75f67f3f9156f72be46532","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":80,"deletions":0,"files":["tests/test_xml.py","tests/test_yaml.py"]},"message":"add xml and yaml tests"},{"commit":"ebf375aac0473249cfd212068f6e6e33cc42449a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":40,"deletions":0,"files":["tests/test_ini.py"]},"message":"add ini tests"},{"commit":"1f9050267eeb870c4c0f50000fc32985c4d8535b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":586,"deletions":0,"files":["tests/fixtures/generic/ini-iptelserver.ini","tests/fixtures/generic/ini-iptelserver.json","tests/fixtures/generic/ini-test.ini","tests/fixtures/generic/ini-test.json","tests/fixtures/generic/xml-cd_catalog.json","tests/fixtures/generic/xml-cd_catalog.xml","tests/fixtures/generic/xml-foodmenu.json","tests/fixtures/generic/xml-foodmenu.xml","tests/fixtures/generic/yaml-istio-sc.json","tests/fixtures/generic/yaml-istio-sc.yaml","tests/fixtures/generic/yaml-istio-sidecar.json","tests/fixtures/generic/yaml-istio-sidecar.yaml"]},"message":"add ini, xml, and yaml test files"},{"commit":"d7f9707a1521719ce051140b1a0b4ced7c5114c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/ini.py","jc/parsers/yaml.py"]},"message":"minor formatting"},{"commit":"ab589ee3ed09b9d5e09d8c046f3a64cd2bd14c98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/cli.py"]},"message":"add __version__ variable"},{"commit":"c84ec0361fc4c877c698378b28ff9e8b502793b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":105,"deletions":3,"files":["README.md","docgen.sh","docs/parsers/xml.md","jc/parsers/xml.py"]},"message":"xml example update"},{"commit":"47d2f8968a8a9b68fc9fff45985f5e69f1a5cc40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","changelog.txt"]},"message":"doc update"},{"commit":"019c480bcce7fe3821b75906fc673ce7bb1ffadc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"update acknowledgments"},{"commit":"547c6d3d5956984d3c4fb5c2a1b76a595752b467","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":172,"deletions":2,"files":["README.md","changelog.txt","jc/cli.py","jc/parsers/xml.py","setup.py"]},"message":"add xml parser"},{"commit":"b5ebf8b76afcd0e0190994048fe1f5b53f654451","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add ruamel.yaml ack"},{"commit":"c690e328f23a69f592dfaaa949b74ba2190ad376","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":102,"deletions":14,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"]},"message":"add examples"},{"commit":"cbb92c1a9517234806f1c54398a69645b6f43669","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":94,"deletions":0,"files":["README.md"]},"message":"add ini and yaml"},{"commit":"beb41997c9b3797e73a678ec1bcddcfb83b5ef0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":91,"deletions":2,"files":["docgen.sh","docs/parsers/ini.md","jc/parsers/ini.py"]},"message":"doc update"},{"commit":"755a6faf1110f150fe2261b81439b7d17a9b424e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":8,"files":["jc/parsers/yaml.py"]},"message":"clean up multi-document support"},{"commit":"021f8350a31a49ecc539f02576303600b222b49d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["changelog.txt"]},"message":"update doc"},{"commit":"76583dcd2f5ef32e58ca87149154563b07e061cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":113,"deletions":0,"files":["jc/cli.py","jc/parsers/ini.py"]},"message":"add ini file parser"},{"commit":"bf033239a706c42be3d7508c58a51c542f8a69b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":82,"deletions":7,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"]},"message":"doc update"},{"commit":"eb37fccd37fd625f701a14b6cfcf30e9f0bbff4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/yaml.py"]},"message":"doc update"},{"commit":"d04ad453319fe45e302da87f970d2ac0806fae1a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":2,"files":["changelog.txt","docgen.sh","setup.py"]},"message":"setup for 1.7.1"},{"commit":"db157b8ca7f7fa935676bafeaafdfd9818a89e6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":94,"deletions":2,"files":["jc/cli.py","jc/parsers/yaml.py"]},"message":"add yaml file parser"},{"commit":"68f277bb2081eb2cba14ffe7f0ee1ee0a982335b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":33,"insertions":99,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add __version__"},{"commit":"4de8f42664379570392552796e34324abb39fdc2","merge":"6633d92 4f11855","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #17 from kellyjonbrazil/dev\n\nDev v1.6.1"},{"commit":"4f118559356edc1da866e1bec80830e7a75a0b26","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["changelog.txt"]},"message":"update version info"},{"commit":"2b9a5fcc32f85295faa55410efcaf142c42bd167","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["setup.py"]},"message":"update version"},{"commit":"224948d1f23e01b7cd968820529579792f862f0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":428,"deletions":0,"files":["tests/fixtures/centos-7.7/pip-list.json","tests/fixtures/centos-7.7/pip-list.out","tests/fixtures/centos-7.7/pip-show.json","tests/fixtures/centos-7.7/pip-show.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.11.6/pip-list.json","tests/fixtures/osx-10.11.6/pip-list.out","tests/fixtures/osx-10.11.6/pip-show.json","tests/fixtures/osx-10.11.6/pip-show.out","tests/fixtures/osx-10.14.6/pip-list.json","tests/fixtures/osx-10.14.6/pip-list.out","tests/fixtures/osx-10.14.6/pip-show.json","tests/fixtures/osx-10.14.6/pip-show.out","tests/fixtures/ubuntu-18.04/pip-list-legacy.json","tests/fixtures/ubuntu-18.04/pip-list-legacy.out","tests/fixtures/ubuntu-18.04/pip-list.json","tests/fixtures/ubuntu-18.04/pip-list.out","tests/fixtures/ubuntu-18.04/pip-show.json","tests/fixtures/ubuntu-18.04/pip-show.out","tests/test_pip_list.py","tests/test_pip_show.py"]},"message":"pip list and pip show tests"},{"commit":"36f2812d5a7a94c412e098233c026d99d5205b60","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":15,"deletions":7,"files":["jc/parsers/pip_list.py"]},"message":"add support for legacy output"},{"commit":"be06aa2b31c057c56229e75c7fa70052b83053ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":65,"insertions":70,"deletions":66,"files":["docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"update parse() Return info"},{"commit":"41f8e3aba268ca0cd09931a04368615425c1aec8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":65,"insertions":67,"deletions":65,"files":["docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"update Return info"},{"commit":"093c0df8978ace842af5258f9aff72c63c6f843d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["README.md"]},"message":"schema info"},{"commit":"37afc7dc8ae30342d01f3f72e73646fa60bb5294","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["README.md"]},"message":"updte todo and compatibility"},{"commit":"efbf3549606fc77f8c16587ff04a0c316dfe5c00","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":126,"deletions":12,"files":["README.md","docgen.sh","docs/parsers/pip_show.md","jc/parsers/pip_show.py"]},"message":"doc update for pip show"},{"commit":"5e39fe0d8044787389d8f206f3c863d4bdf1e2ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":64,"deletions":5,"files":["jc/parsers/pip_show.py"]},"message":"pip show parser working"},{"commit":"47328dc65969f149c8f027286774ff0847c18add","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"]},"message":"add pip-show parser"},{"commit":"addeef50ba54f536855544937a6c98135ae5cd51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":84,"deletions":0,"files":["jc/parsers/pip_show.py"]},"message":"initial pip show parser add"},{"commit":"ad338cc5b50a178091c47cbea9a1db135a7fb678","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":56,"deletions":42,"files":["docs/parsers/crontab.md","jc/parsers/crontab.py"]},"message":"schema doc update"},{"commit":"202bc8201e31fd453c682265347b4e2ac2d41718","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["README.md","docs/parsers/crontab.md","jc/parsers/crontab.py"]},"message":"doc update"},{"commit":"5ff99de405fbd8f79f9c2e301ac27184e0aba6fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add argument to parser info"},{"commit":"86ebe2cf9c6b336eacf217393c3c3c324ee29ec0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":205,"deletions":1,"files":["README.md","docgen.sh","docs/parsers/crontab.md","docs/parsers/pip_list.md","jc/cli.py","jc/parsers/pip_list.py"]},"message":"initial add of pip list parser"},{"commit":"facf0b399c608d33f6a454ee24fd49fc62471742","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/crontab.py"]},"message":"add osx to campatible"},{"commit":"33db7b0bcb0f24979cad6e173737d75c8ed301af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":57,"deletions":0,"files":["tests/fixtures/centos-7.7/crontab.json","tests/fixtures/ubuntu-18.04/crontab.json","tests/fixtures/ubuntu-18.04/crontab.out","tests/test_crontab.py"]},"message":"add crontab tests"},{"commit":"663d07bca1181024d9d08b940237c52197c91729","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":191,"deletions":0,"files":["docgen.sh","docs/parsers/crontab.md"]},"message":"add crontab"},{"commit":"ba04e4997fcb28adbee446f633c121f1585b9f2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":113,"deletions":4,"files":["jc/parsers/crontab.py"]},"message":"update docs"},{"commit":"c4fee1b658c91afa2abdd746af6c1b4697c44b35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":72,"deletions":1,"files":["README.md"]},"message":"add crontab parser"},{"commit":"99b92a15bbebc5568f4455f388f945613c4a2759","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":37,"deletions":14,"files":["jc/parsers/crontab.py","tests/fixtures/centos-7.7/crontab.out"]},"message":"support shortcut schedules"},{"commit":"b076ab5b57a6a59db096485e5ff4eb9f91bae8be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":177,"deletions":0,"files":["jc/cli.py","jc/parsers/crontab.py","tests/fixtures/centos-7.7/crontab.out"]},"message":"initial crontab parser"},{"commit":"687759f75d0e80e81746a84f051e55cfdc870447","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":31,"deletions":31,"files":["README.md"]},"message":"alphabetize du entry"},{"commit":"9eaac7f3af0e0851c2d091d94c9920faa8a0fdfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":32,"deletions":0,"files":["README.md"]},"message":"add du"},{"commit":"4c24e00cfc0748d98e220d08820b88fc156148db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":21738,"deletions":9,"files":["tests/fixtures/osx-10.11.6/du.json","tests/fixtures/osx-10.11.6/du.out","tests/fixtures/ubuntu-18.04/du.json","tests/fixtures/ubuntu-18.04/du.out","tests/test_du.py"]},"message":"add osx-11 and ubuntu tests"},{"commit":"beb17011b03e720078b0752e79a6a0f6123d1d3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":131,"deletions":2,"files":["changelog.txt","docgen.sh","docs/parsers/du.md","docs/parsers/uname.md","tests/fixtures/osx-10.14.6/du.json","tests/test_du.py"]},"message":"du tests and docs"},{"commit":"e882bf55bcd1d3526423ed1ccc61fb4819395cce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":8755,"deletions":0,"files":["changelog.txt","jc/cli.py","jc/parsers/du.py","tests/fixtures/centos-7.7/du.json","tests/fixtures/centos-7.7/du.out","tests/fixtures/osx-10.14.6/du.out","tests/test_du.py"]},"message":"initial add du parser"},{"commit":"3a3016adb6d5b9e35f8a39908bfcdc65997cc5c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add parser_count to about"},{"commit":"1e8b68153ade8a1e3d2b4db36e0c402bbc887079","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":27,"deletions":1,"files":["tests/fixtures/osx-10.11.6/uname-a.json","tests/fixtures/osx-10.14.6/uname-a.json","tests/fixtures/osx-10.14.6/uname-a.out","tests/test_uname.py"]},"message":"add osx uname tests"},{"commit":"9335cf65fbb87e3a0a7da0c4e9bcd251cb829de2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"add uname osx support"},{"commit":"83f35256aee71f2619ddf880e2b8f2d6c63280bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":30,"deletions":19,"files":["jc/parsers/uname.py"]},"message":"add OSX support"},{"commit":"428333394817e4461a4eb095f4d6d128305a5f98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"version bump"},{"commit":"b8f902796b7fb23a41355b23f7ce235bd18edc58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["changelog.txt"]},"message":"shorten changelog"},{"commit":"8f99ab295cd15718b98781707def97539ad41920","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"info update"},{"commit":"882310e268e2022f0cd6da75f80f5356529cd05c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add name to about parser info"},{"commit":"56bce9521409d1850f75a3ae2be1363e765dd9dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":10,"files":["jc/cli.py"]},"message":"about code cleanup"},{"commit":"c13ecbec2952c5d6765397f645e90653a4fd9d05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":28,"insertions":2,"deletions":28,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"clean up parser info"},{"commit":"0ffaaa6e73649d1f657af569ac0b912f166e8493","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":9,"files":["jc/cli.py"]},"message":"clean up about code"},{"commit":"75eff3adea097157c005b2201e353a741241ce8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/utils.py"]},"message":"remove whitespace"},{"commit":"bf5f80476cff642ae672187ea59d40bdb602101e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["jc/cli.py"]},"message":"use real parser name in error message"},{"commit":"9aaf0fbb2f838c0af1e7f18fdb19104f9f5d3d39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":29,"insertions":146,"deletions":1,"files":["changelog.txt","docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md"]},"message":"doc updates"},{"commit":"8f01ef79532743573632d716ceea41d5ea752c88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add -a option info"},{"commit":"da1d087452da02631296b1b3dc9ee10d4b7f764b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add parser version info"},{"commit":"e16bc7e882a27a1d5a4bd7cf9972208e6997f96f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":29,"insertions":82,"deletions":17,"files":["jc/cli.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add about information to parsers"},{"commit":"fe9bdd4811216257c05b16d6d61897929669d434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":31,"insertions":384,"deletions":219,"files":["changelog.txt","jc/cli.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add info class"},{"commit":"17b6f3f6d6c398a52166849088a793d0e3b328b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":26,"deletions":0,"files":["tests/fixtures/osx-10.11.6/uptime.json","tests/fixtures/osx-10.14.6/uptime.json","tests/test_uptime.py"]},"message":"add osx tests"},{"commit":"90a6baf0ee3b8b27476badada4e590e22144f810","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":52,"deletions":0,"files":["tests/fixtures/osx-10.11.6/ps-axu.json","tests/fixtures/osx-10.11.6/ps-ef.json","tests/fixtures/osx-10.11.6/w.json","tests/fixtures/osx-10.14.6/w.json","tests/test_ps.py","tests/test_w.py"]},"message":"add osx tests"},{"commit":"f0e73d0e72d540292f41fff51652932c4e8b0315","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":444,"deletions":0,"files":["tests/fixtures/osx-10.11.6/ps-axu.out","tests/fixtures/osx-10.11.6/ps-ef.out","tests/fixtures/osx-10.11.6/uname-a.out","tests/fixtures/osx-10.11.6/uptime.out","tests/fixtures/osx-10.11.6/w.out","tests/fixtures/osx-10.14.6/uname-a.out","tests/fixtures/osx-10.14.6/uptime.out","tests/fixtures/osx-10.14.6/w.out"]},"message":"add osx tests"},{"commit":"a762882f1ccea6789ce7813b313f3242175b5bd6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":88,"files":["tests/fixtures/osx-10.14.6/ps-axu.json","tests/fixtures/osx-10.14.6/ps-axu.out","tests/fixtures/osx-10.14.6/ps-ef.json","tests/fixtures/osx-10.14.6/ps-ef.out"]},"message":"fixture updates"},{"commit":"4c1bc5923658bf463805ea33ec8d170a817909ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":4,"deletions":3,"files":["docs/parsers/mount.md","docs/parsers/ps.md","docs/parsers/stat.md"]},"message":"doc updates"},{"commit":"f2962083f80503f82c3eddf470674c776e616b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":93,"deletions":17,"files":["changelog.txt","jc/parsers/mount.py","tests/fixtures/osx-10.14.6/mount.json","tests/fixtures/osx-10.14.6/mount.out","tests/fixtures/osx-10.14.6/mount2.json","tests/fixtures/osx-10.14.6/mount2.out","tests/test_mount.py"]},"message":"add osx support for mount parser"},{"commit":"a0b22a5bcfa0777895243088b2c0f3bb5b758775","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"help text formatting"},{"commit":"dcf393354cd57683aaeecbed7b884d19b0fe94d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"]},"message":"doc fix"},{"commit":"5f771656e3fdd703d449b2817faa4faeff1cd879","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/route.py"]},"message":"use universal parser"},{"commit":"f376aab79328a211a127f4f818e7007232f1fae3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/universal.py"]},"message":"doc update"},{"commit":"3c96464217a740571e16c74ad41c1d92f7585547","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":886,"deletions":13,"files":["jc/parsers/ps.py","tests/fixtures/osx-10.14.6/ps-axu.json","tests/fixtures/osx-10.14.6/ps-axu.out","tests/fixtures/osx-10.14.6/ps-ef.json","tests/fixtures/osx-10.14.6/ps-ef.out","tests/test_ps.py"]},"message":"osx fixes and tests"},{"commit":"c9892833a16bb63f78537717be65670eb65a87b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/mount.py"]},"message":"formatting change"},{"commit":"127c98affc7b122f0ced13852850214b9e07677e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"8687a772f53ecaf1a20464429060b94bbf660fe7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["jc/parsers/lsof.py"]},"message":"use universal parser"},{"commit":"b1162b14d42643fd53dbbe3f89ba042f030d9254","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":6,"files":["jc/parsers/lsmod.py"]},"message":"use universal parser"},{"commit":"8a8ee3570733c0c06b8cf53eb005e53ac2f9170f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":60,"files":["jc/parsers/lsblk.py"]},"message":"use universal parser"},{"commit":"5e109a3665cf0c286ac9dcbe2a452348a14b90ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/fixtures/create_fixtures.sh"]},"message":"add du"},{"commit":"11db478430515ef3e1020482792f23d1c40ca32b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"update changelog"},{"commit":"a85377014d9f93fcb9840715129b0e09d48d8584","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":11,"files":["jc/parsers/free.py"]},"message":"use universal parser"},{"commit":"3aea86234d33160f5b3139cbfc2f4f032f655f3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":70,"deletions":61,"files":["tests/fixtures/osx-10.11.6/ls-al.json","tests/fixtures/osx-10.11.6/ls-al.out","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.11.6/ls-alh.out","tests/fixtures/osx-10.11.6/ls.json","tests/fixtures/osx-10.11.6/ls.out"]},"message":"fix osx-10.11.6 tests"},{"commit":"916ec6ed6b858a8a496e4026b9bab5505abca2ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":193,"deletions":61,"files":["tests/fixtures/osx-10.11.6/ls-al.json","tests/fixtures/osx-10.11.6/ls-al.out","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.11.6/ls-alh.out","tests/fixtures/osx-10.11.6/ls.json","tests/fixtures/osx-10.11.6/ls.out","tests/fixtures/osx-10.14.6/ls-al.json","tests/fixtures/osx-10.14.6/ls-al.out","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.out","tests/fixtures/osx-10.14.6/ls.json","tests/fixtures/osx-10.14.6/ls.out","tests/test_ls.py"]},"message":"fix osx ls tests"},{"commit":"9dca6ba5393d8840ad7fc9509273715a71955bd1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":55,"insertions":120,"deletions":6,"files":["docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"doc formatting change"},{"commit":"0ebb89f561e1ced2e7f61ae19290e176c8a98bf2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["docs/parsers/arp.md"]},"message":"doc update"},{"commit":"e237867e242211ba37206911ebf1b35c97b417fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/arp.py"]},"message":"doc formatting"},{"commit":"78fa44fd9ac9790313de6f461eb46d9b8d6159d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":24,"insertions":75,"deletions":3,"files":["docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add compatibility to docs"},{"commit":"d615fa3b933ccd284bd8ee92baf5dfa6264507c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":30,"insertions":91,"deletions":1,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py"]},"message":"add compatibility to docs"},{"commit":"ce134dc332dd9175e0d1823a4959bed427a3ddce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":115,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-al.json","tests/fixtures/osx-10.14.6/ls-al.out","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.out","tests/fixtures/osx-10.14.6/ls.json","tests/fixtures/osx-10.14.6/ls.out","tests/test_ls.py"]},"message":"Add OSX tests for ls"},{"commit":"a56e4dc752a01635fbd9fc31e21d390bbd629084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":28,"deletions":3,"files":["changelog.txt","jc/parsers/arp.py","jc/parsers/universal.py"]},"message":"use universal simple table parser"},{"commit":"d221b4aa29e80dda2b591059f4d64c416bff0a17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"d2cba6ad2f1f1cd35aa174239584a0291abb8e37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py"]},"message":"add compatibility info"},{"commit":"84b3c30b525ddf1f74eb7fd833050a0ec69621dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":254,"deletions":2,"files":["tests/fixtures/osx-10.11.6/df-h.json","tests/fixtures/osx-10.11.6/df-h.out","tests/fixtures/osx-10.11.6/df.json","tests/fixtures/osx-10.11.6/df.out","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-aaaa.out","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig-x.out","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.11.6/dig.out","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/osx-10.14.6/df-h.out","tests/fixtures/osx-10.14.6/df.json","tests/fixtures/osx-10.14.6/df.out","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-aaaa.out","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig-x.out","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/osx-10.14.6/dig.out","tests/test_df.py"]},"message":"add osx tests"},{"commit":"68eeec19a812b735627763bb7d7e2a58b72f7504","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":30,"deletions":25,"files":["README.md","docs/parsers/df.md","jc/parsers/df.py"]},"message":"doc update"},{"commit":"c6d1528a2ed302ea82828b733a98db415be83708","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":19,"deletions":8,"files":["jc/parsers/df.py","jc/parsers/universal.py","tests/fixtures/centos-7.7/df.json","tests/fixtures/ubuntu-18.04/df.json"]},"message":"use _ instead of -"},{"commit":"50a6b256b8a0936299f562c208ede6187feeb9a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":83,"deletions":0,"files":["jc/parsers/universal.py"]},"message":"new universal parsers to limit code duplication"},{"commit":"bbba1fe477014d0b7f370ce46ed821121be81a8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":38,"deletions":19,"files":["jc/parsers/df.py"]},"message":"update df to use universal sparse table parser for osx compatibility"},{"commit":"46b827da6b438be73fab168c3f05298483b141e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":75,"deletions":4,"files":["changelog.txt","jc/parsers/arp.py","tests/fixtures/osx-10.11.6/arp-a.json","tests/fixtures/osx-10.11.6/arp-a.out","tests/fixtures/osx-10.14.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a.out","tests/test_arp.py"]},"message":"add osx compatibility"},{"commit":"5e8c28a30a283b6ef525e9e78d3ef2a0e1526927","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"]},"message":"comment fix"},{"commit":"e5d39031645ac897e0c0297f514ee62efe02f5f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":38,"deletions":17,"files":["docs/parsers/ifconfig.md"]},"message":"update ifconfig doc"},{"commit":"23975c9c9e1dd9d3e9fd7c05d231a86d646be048","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":132,"deletions":45,"files":["README.md","changelog.txt","jc/parsers/ifconfig.py","tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig2.json","tests/fixtures/osx-10.14.6/ifconfig.json","tests/fixtures/osx-10.14.6/ifconfig2.json","tests/fixtures/ubuntu-18.04/ifconfig.json","tests/test_ifconfig.py"]},"message":"fixup osx subnet mask and convert state to an array"},{"commit":"1e0dab8355e6fcb0ecde85270d4daac6ad93875b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":272,"deletions":2,"files":["tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.out","tests/fixtures/osx-10.11.6/ifconfig2.json","tests/fixtures/osx-10.11.6/ifconfig2.out","tests/fixtures/osx-10.14.6/ifconfig.json","tests/fixtures/osx-10.14.6/ifconfig.out","tests/fixtures/osx-10.14.6/ifconfig2.json","tests/fixtures/osx-10.14.6/ifconfig2.out","tests/fixtures/ubuntu-18.04/ifconfig.json"]},"message":"ifconfig fixture updates"},{"commit":"5f4c10ffd5a9cbe4e5e3d2b9adc34f36492eaf46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["README.md","changelog.txt"]},"message":"doc update"},{"commit":"6f3d2b4b566b963fbf38572c587e8bd4e18881dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"require ifconfig-parser v0.0.5 for mac and bytes support"},{"commit":"fea8ace8446b64abe9e61a028951bc4e6df9f9c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":6,"files":["README.md","jc/parsers/ifconfig.py"]},"message":"add OSX compatibility"},{"commit":"6633d9262c936217d8e90e64505c66b006cdab56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["_config.yml"]},"message":"Set theme jekyll-theme-cayman"},{"commit":"7d54137140e6d0515bc23c131a097af5c70c3379","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"link update"},{"commit":"2fcda6f2480ae6bd5428a0147c19f9af527391b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add motivation to readme"},{"commit":"9c1b8bacf9a59a86feb2a91eb44919e800491d1e","merge":"d192745 4867655","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #16 from kellyjonbrazil/dev\n\nDev v1.5.1"},{"commit":"4867655eb297b1da7a55e0d3a24c7ed7c8af55c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":172,"deletions":0,"files":[".../centos-7.7/iptables-filter-line-numbers.json",".../centos-7.7/iptables-filter-line-numbers.out","tests/fixtures/create_fixtures.sh",".../ubuntu-18.04/iptables-filter-line-numbers.json",".../ubuntu-18.04/iptables-filter-line-numbers.out","tests/test_iptables.py"]},"message":"add line-numbers tests"},{"commit":"47410d1a95406b0960aac705e7cfe925fea3172c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["changelog.txt","setup.py"]},"message":"version bump"},{"commit":"5fa49f5e672fc6f8dc18fb4b1761c98b81362649","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"36c53827fab6ac38c0010250ec387db40fdeecfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":19,"insertions":1316,"deletions":308,"files":["tests/fixtures/centos-7.7/systemctl-ls.json","tests/fixtures/centos-7.7/systemctl-ls.out","tests/fixtures/centos-7.7/systemctl-luf.json","tests/fixtures/centos-7.7/systemctl-luf.out","tests/fixtures/centos-7.7/systemctl.json","tests/fixtures/centos-7.7/systemctl.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/systemctl-lj.json","tests/fixtures/ubuntu-18.04/systemctl-lj.out","tests/fixtures/ubuntu-18.04/systemctl-ls.json","tests/fixtures/ubuntu-18.04/systemctl-ls.out","tests/fixtures/ubuntu-18.04/systemctl-luf.json","tests/fixtures/ubuntu-18.04/systemctl-luf.out","tests/fixtures/ubuntu-18.04/systemctl.json","tests/fixtures/ubuntu-18.04/systemctl.out","tests/test_systemctl.py","tests/test_systemctl_lj.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py"]},"message":"add systemctl tests"},{"commit":"51631aef5b1b6fdeff4ab543510a9f9e15a0c2c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":358,"deletions":0,"files":["tests/fixtures/centos-7.7/systemctl.json","tests/fixtures/centos-7.7/systemctl.out","tests/fixtures/ubuntu-18.04/systemctl.json","tests/fixtures/ubuntu-18.04/systemctl.out","tests/test_systemctl.py"]},"message":"add systemctl tests"},{"commit":"a0298ac8a39093620b6859c909a78d11ab4a8e56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":55,"deletions":0,"files":["tests/fixtures/centos-7.7/fstab.json","tests/fixtures/centos-7.7/fstab.out","tests/fixtures/ubuntu-18.04/fstab.json","tests/fixtures/ubuntu-18.04/fstab.out","tests/test_fstab.py"]},"message":"add fstab tests"},{"commit":"98c0188821ebaa71c5661f2e095cf464bec695f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/systemctl_ls.md","jc/parsers/systemctl_ls.py"]},"message":"formatting fix"},{"commit":"ab1dabe3e42997825707006b63cc0c03d28470d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py"]},"message":"doc update"},{"commit":"94bdb11fdf0e16d89769046d317643334ef1acdd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"]},"message":"remove systemctl from TODO"},{"commit":"b6727d68bab66164a3834b240ae868062aad9371","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":68,"deletions":0,"files":["README.md"]},"message":"add systemctl parsers"},{"commit":"89bad7fc2b4023b10b6eeb7ff1f8f18b71731cb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":1,"deletions":191,"files":["changelog.txt","docgen.sh","docs/parsers/systemctl_lm.md","jc/cli.py","jc/parsers/systemctl_lm.py"]},"message":"remove systemctl list-machines parser"},{"commit":"c0b8b810a2616e77973c1223f9c39329112337ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":306,"deletions":0,"files":["docgen.sh","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_lm.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md"]},"message":"add systemctl list parsers"},{"commit":"31eb65acd18b6d9163de900dbe48807a41a23785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_lm.py"]},"message":"doc fix"},{"commit":"513bbeb4649c011476930e1d1bf739ff06c2d66f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/systemctl_lj.py"]},"message":"add break on footer condition"},{"commit":"3a52fb725a0e56b52a0ea430266400b268360737","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":55,"deletions":29,"files":["jc/cli.py","jc/parsers/systemctl_lj.py"]},"message":"add systemctl list-jobs parser"},{"commit":"5affd444999de88b9bff7b49d790913540f97cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":342,"deletions":24,"files":["jc/cli.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_lm.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py"]},"message":"add systemctl_lj, lm, ls, and luf"},{"commit":"5dbc6e806c5d05bfa1f7e2156ed2573341eb23c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":142,"deletions":29,"files":["jc/cli.py","jc/parsers/systemctl_luf.py"]},"message":"add systemctl_luf parser"},{"commit":"59ae31f3f342c9337037aac4630310c9b9eb8287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":219,"deletions":0,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/systemctl.md","jc/cli.py","jc/parsers/systemctl.py"]},"message":"add systemctl parser"},{"commit":"230e921c2e8d931ea8a6abdf81215dbfc968b41c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"]},"message":"remove fstab from TODO"},{"commit":"a7c3d88b08ab90b719035cb15d78afe708235742","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":136,"deletions":0,"files":["docgen.sh","docs/parsers/fstab.md","jc/parsers/fstab.py"]},"message":"update example and docs"},{"commit":"9b453bcb84dd9f2f566955eda1ab35c863b3e8a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":13,"files":["jc/parsers/fstab.py"]},"message":"remove commented code block"},{"commit":"ce43c782f601fc12267fa22279e8e0142ecc3a7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"fstab update"},{"commit":"cb16faaf4d1700379d53053fe06824fd03404f87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"helptext update"},{"commit":"3f1d3ff6d85422536e0adfb6433fd3ec0399ebe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":73,"deletions":6,"files":["README.md","jc/parsers/fstab.py"]},"message":"add examples"},{"commit":"6f67eecd5ed46f8a692ff5dd607a2395a5c838ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":108,"deletions":0,"files":["jc/cli.py","jc/parsers/fstab.py"]},"message":"add fstab parser"},{"commit":"e75c819190634f0a9048942b39eda691831829ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"601e68d104dd43940acadaa574dfd9b5117b0476","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/hosts.md","jc/parsers/hosts.py"]},"message":"doc update"},{"commit":"8285ecfd1e7810102cdbc399398a16f999c841ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["tests/fixtures/centos-7.7/hosts.out","tests/fixtures/ubuntu-18.04/hosts.out"]},"message":"enhance test file with comments"},{"commit":"8726de902e527b95a12afd79a53d533cc176703d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"add hosts parser"},{"commit":"4133585274b0e7faa0255a911468248eb390d673","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":53,"deletions":0,"files":["tests/fixtures/centos-7.7/hosts.json","tests/fixtures/centos-7.7/hosts.out","tests/fixtures/ubuntu-18.04/hosts.json","tests/fixtures/ubuntu-18.04/hosts.out","tests/test_hosts.py"]},"message":"add hosts tests"},{"commit":"ad913b141721655a72a7b2a6ad60037e5acd5f9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":148,"deletions":2,"files":["README.md","docgen.sh","docs/parsers/hosts.md","jc/parsers/hosts.py"]},"message":"add hosts docs"},{"commit":"7113e5a844fc0304f62f4afe65b5cbc816f75372","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":0,"files":["jc/parsers/hosts.py"]},"message":"filter out comments at the end of the line"},{"commit":"a3a8369dc0e7227072f595cef1e57d471eff4d2f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":51,"deletions":9,"files":["jc/parsers/hosts.py"]},"message":"add docs"},{"commit":"64016b8ef049d5d4f02b4371f5cc9632c19bcaa2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["jc/cli.py","jc/parsers/hosts.py"]},"message":"add hosts parser"},{"commit":"1cb49d60c84054b0446f299f6b4bab7d102101c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["README.md"]},"message":"remove sar and sadf"},{"commit":"c858adfd12144569d0b990a217c5bcd75bd23828","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"]},"message":"remove stat from todo"},{"commit":"08d68327c777dd740d93a1b5fff8cf62f58904c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":8080,"deletions":0,"files":["tests/fixtures/centos-7.7/stat.json","tests/fixtures/centos-7.7/stat.out","tests/fixtures/ubuntu-18.04/stat.json","tests/fixtures/ubuntu-18.04/stat.out","tests/test_stat.py"]},"message":"add stat tests"},{"commit":"0d7c6c5664911af7a41149d51dd6ae05b39d7648","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/parsers/stat.md","jc/parsers/stat.py"]},"message":"doc fix and add continue lines"},{"commit":"8bfa41dbf485cb06c928bc00a68727d2ceac21fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":22,"deletions":14,"files":["README.md","docs/parsers/stat.md","jc/parsers/stat.py"]},"message":"change values to null if -"},{"commit":"7e2fa48ed4f3fd452082ce06e7306efd38b2d508","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"update changelog"},{"commit":"340635cad5224f2c715bf961956f4b9b6119d80b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":408,"deletions":111,"files":["docgen.sh","docs/parsers/ss.md","docs/parsers/stat.md"]},"message":"fix stats doc"},{"commit":"8f77d1de098f035767d73a6965a695b95b75e161","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":111,"deletions":253,"files":["docgen.sh","docs/parsers/ss.md"]},"message":"add stat docs"},{"commit":"7dcf1b25ffb801375f0bf4263f34713ded904de9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":0,"files":["jc/parsers/stat.py"]},"message":"add link_to field"},{"commit":"9b735381063a1167a6a74864a43b81aefd98009f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"]},"message":"set compatibility to linux only"},{"commit":"3bf8c8c6dbdf7e03e26b4581e35c3274084c07ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":27,"deletions":27,"files":["jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"pep8 fixes"},{"commit":"04a1ff2ca7873d55cdbc831e521f3d4892074d98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":28,"deletions":28,"files":["jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py"]},"message":"pep8 fixes"},{"commit":"64647d230ac936cb43864481ae0f45d13707d7b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":21,"deletions":21,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py"]},"message":"pep8 cleanup"},{"commit":"c2a67e1b70f33044aecabd8b46018117cb38cb9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":213,"deletions":16,"files":["README.md","jc/parsers/stat.py"]},"message":"add stat parser"},{"commit":"edb9a7c76e1fedaf37b6a226ad4e1cfc08a9a5ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":94,"deletions":0,"files":["jc/cli.py","jc/parsers/stat.py"]},"message":"add stat parser"},{"commit":"a407f5b67833cc5f8dda9fe8265cd34e62f28d14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"minor update"},{"commit":"e5b4987acb70e854d9996350235c5535b4a46b69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"doc update"},{"commit":"ba8cc18eebe779742cff0ba4c8bebe376e787c8c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":405,"deletions":0,"files":["tests/fixtures/centos-7.7/ss-sudo-a.json","tests/fixtures/centos-7.7/ss-sudo-a.out","tests/fixtures/ubuntu-18.04/ss-sudo-a.json","tests/fixtures/ubuntu-18.04/ss-sudo-a.out","tests/test_ss.py"]},"message":"add ss tests"},{"commit":"d2c7316e00b9aaf19231c05351821041458baf98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"update command options info"},{"commit":"609aa14d243206e81ed31f8438c3f42e8263e140","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/ss.md","jc/parsers/ss.py"]},"message":"spelling fix"},{"commit":"ef1ad4c700fcb740b5fbe1e12205b9a30ae427ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["docs/parsers/ss.md","jc/parsers/ss.py"]},"message":"doc update"},{"commit":"a0e2732152dc3005914b9a3e4f03e937a113c67f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":64,"deletions":12,"files":["README.md"]},"message":"add ss example"},{"commit":"9b5d3e3be1ac07813e716f8426fe89cced478221","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":135,"deletions":25,"files":["docs/parsers/ss.md"]},"message":"update doc"},{"commit":"2663ef31fbc1b69b89b8032640a25065cc953866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":159,"deletions":30,"files":["jc/parsers/ss.py"]},"message":"fix field names per ss documentation"},{"commit":"a4cdd3378e6a031f16dd371ed5cd60ff018feb32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["README.md"]},"message":"add compatibility info"},{"commit":"2f805da24d0e833e3d2a1f3a5ec34031fa911c05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":45,"insertions":51,"deletions":51,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/utils.md","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/utils.py"]},"message":"add colon to parameter in docs"},{"commit":"79152a946d93e4facf9711bfa0f421e1978e0f1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"initialize network_list and socket_list variables"},{"commit":"de37bb37d01b397df2b5992b4acd64817380401d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":187,"deletions":1,"files":["docgen.sh","docs/parsers/ss.md","jc/parsers/ss.py"]},"message":"add ss docs"},{"commit":"f783e44e5c0cd05733da5d24573f06d05760f993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["README.md","changelog.txt"]},"message":"doc fix"},{"commit":"af82f2c991ac0668485e75ae78a26b9553ec8b13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update raw format note"},{"commit":"46774daf9d3e0612df8f79d4b6b724e612ceb725","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":194,"deletions":4,"files":["README.md","jc/parsers/ss.py"]},"message":"doc update"},{"commit":"648306b7856fe2e296ce463ff4c9c2a8632c92d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":44,"deletions":22,"files":["jc/parsers/ss.py"]},"message":"process ss data"},{"commit":"b7a4f205b80c0a6a41aaabf59703525ac526c295","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":17,"deletions":14,"files":["jc/parsers/ss.py"]},"message":"parser fixes"},{"commit":"fdb168b43a69358a97bf43b71a0adbc7b1ef56f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":120,"deletions":0,"files":["jc/cli.py","jc/parsers/ss.py"]},"message":"add ss parser"},{"commit":"b6f65c93c462856f26201df0cbfe804b29a65169","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":43,"deletions":69,"files":["README.md","docs/parsers/ps.md","jc/parsers/ps.py"]},"message":"ps doc update"},{"commit":"3f4838f17a81969718d9e5b6bafa21e0b92e1d95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":6,"files":["docgen.sh","docs/cli.md"]},"message":"remove cli.md"},{"commit":"eef0dee2aa206716d9cf011bec58a06c46bbee15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":0,"files":["docs/utils.md","jc/utils.py"]},"message":"doc update"},{"commit":"e17388d3b2d1521d963bf9dd9e7a4ba5ba9bb09d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":44,"deletions":4,"files":["docs/utils.md","jc/utils.py"]},"message":"doc update"},{"commit":"7e6a1bc719b7160ba70cd326ff6aa182993a7380","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":41,"deletions":63,"files":["docs/readme.md","jc/__init__.py"]},"message":"doc update"},{"commit":"37738a2ea2f15af847e4b8383aba911e2020a3e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update contributions"},{"commit":"c5834a57db8957723a1425b9db46c433e28a3af1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":0,"files":["README.md"]},"message":"add todo section"},{"commit":"91b9373f380e06f91888811edbfb21747ff08810","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":417,"deletions":673,"files":["README.md"]},"message":"new examples"},{"commit":"ce0bb5b816eed0c75542ead474c3dcb8401be2d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting fix"},{"commit":"f330ff0eff00586f46d18497f2441e94b6430e91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["README.md"]},"message":"wrap example text"},{"commit":"4b02700414660b90518311485761870402368625","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":20,"files":["README.md"]},"message":"update simple examples"},{"commit":"ee30180376b7acec46314bbc483866bff41c362a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"fix note"},{"commit":"338e0ff15c7fac84475c1ed107e6a23e7a009b1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]},"message":"add schema note"},{"commit":"3ac75305dfa33429646bb5d415567034cccfeee3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":39,"insertions":351,"deletions":39,"files":["docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"update process() doc"},{"commit":"3bdcf44afb708cf6a716a0847b119f895602c23e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":18,"deletions":2,"files":["docs/parsers/arp.md","jc/parsers/arp.py"]},"message":"doc update"},{"commit":"e3f4ffede56fe48c0a282a021ac5cdfd7a8abee9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":20,"insertions":172,"deletions":77,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md"]},"message":"doc update"},{"commit":"f0c8725d4355113f7690f20bb99078e488084ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":181,"deletions":81,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"doc update"},{"commit":"5473bc4eb697d00bd26a038287e1137e438cacb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":16,"deletions":6,"files":["docs/parsers/arp.md","jc/parsers/arp.py"]},"message":"doc update"},{"commit":"b9bd9422bfa46144416fa65add2e041d4124357b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":380,"deletions":46,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"doc update"},{"commit":"cb5729a070925a7fa29f762bd4b074532f5cba55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":62,"deletions":44,"files":["README.md"]},"message":"add options to docs"},{"commit":"f0b1ab42337746afd37365abdf44729d530d5410","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/utils.md","jc/utils.py"]},"message":"doc update"},{"commit":"b15386e849b9fea347e7b17307eedf779d8022fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":11,"deletions":5,"files":["docs/utils.md","jc/utils.py"]},"message":"doc update"},{"commit":"d2a2c8da35ee44e9a7572885609548eb809bcdda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":5,"files":["docs/parsers/iptables.md","docs/parsers/mount.md","docs/parsers/uname.md"]},"message":"doc updates"},{"commit":"7251548cbb09beae6971385a56036e9649bd9b2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":5,"files":["jc/parsers/iptables.py","jc/parsers/mount.py","jc/parsers/uname.py"]},"message":"documentation updates"},{"commit":"146e29f7cbc0f396be67dbd7ae971a4ef4dafb7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":47,"insertions":5386,"deletions":2249,"files":["docgen.sh","docs/cli.md","docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/readme.md","docs/utils.md","jc/__init__.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/utils.py"]},"message":"update docs"},{"commit":"363fd3eab409351121dab8a11c6b565829ccd84a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"move parser_name to except block"},{"commit":"4083dd4260ff3a8bb6649e1661cf3e058fdbad59","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":24,"deletions":5,"files":["changelog.txt","jc/cli.py"]},"message":"add -d option"},{"commit":"b2b74547baaf33058d74fc08cb665777b19bd05a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":317,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-sudo-aeep.json","tests/fixtures/centos-7.7/netstat-sudo-aeep.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.json","tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.out","tests/test_netstat.py"]},"message":"add netstat-sudo-aeep tests"},{"commit":"dddb0baabf8a78261ac80380b97e7c92c7ce4d89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/netstat.py"]},"message":"use \\u2063 instead of \\u2026"},{"commit":"84b4f67ef9d4bb0db201a095d74400a56394589d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["tests/fixtures/centos-7.7/ps-axu.json","tests/fixtures/ubuntu-18.04/ps-axu.json"]},"message":"new json output"},{"commit":"3a089138b8c269ba3c5f7aec87ae3f8ec368c3ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":129,"deletions":9,"files":["jc/parsers/ps.py"]},"message":"add int and float changes"},{"commit":"3ff0305c8e62ce3b5a8f3f9174c5a9da3bc22766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":54,"deletions":2,"files":["tests/fixtures/centos-7.7/lsblk-allcols.json","tests/fixtures/centos-7.7/lsblk-allcols.out","tests/fixtures/centos-7.7/lsblk.json","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/lsblk-allcols.json","tests/fixtures/ubuntu-18.04/lsblk-allcols.out","tests/fixtures/ubuntu-18.04/lsblk.json","tests/test_lsblk.py"]},"message":"add lsblk tests"},{"commit":"761edc3c6cfc215fe45c65ee2bb5462cb460b6a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":6,"files":["jc/parsers/lsblk.py"]},"message":"remove unused parse_pairs function"},{"commit":"3351c81f647ac97a5038cc0c14adb31e55832a77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":200,"deletions":2,"files":["jc/parsers/lsblk.py"]},"message":"add documentation"},{"commit":"3dfc6f67d770c59804bdeb371d5c78e3f3668f9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/lsblk.py"]},"message":"change empty values to Null"},{"commit":"1546ec3bd139ef687282f60786388b5207541c98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":17,"deletions":13,"files":["jc/parsers/lsblk.py"]},"message":"fixes for right justified columns"},{"commit":"2a953011f72e922c89b9af6dfebd1983da7c338d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":50,"deletions":155,"files":["changelog.txt","jc/parsers/lsblk.py"]},"message":"rewrite of lsblk parser to use a custom delimiter"},{"commit":"d2f755de9d2be7b0af5f010042e1f4ca589c5464","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":14,"insertions":250,"deletions":566,"files":["tests/test_ifconfig.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_ls.py","tests/test_lsblk.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_ps.py","tests/test_route.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py"]},"message":"updates tests"},{"commit":"f363334639c5fa3a43889794ea52409056a2d886","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":87,"deletions":219,"files":["tests/test_df.py","tests/test_dig.py","tests/test_env.py","tests/test_free.py","tests/test_history.py"]},"message":"update tests"},{"commit":"750197e48596ad96804477053d3ff3c8063ea68a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":70,"files":["tests/test_arp.py"]},"message":"new tests"},{"commit":"36b349e4ed39fe611c7d87a47c378cc4d4627ad2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":76,"insertions":76,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-a.json","tests/fixtures/centos-7.7/arp-v.json","tests/fixtures/centos-7.7/arp.json","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/df.json","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/centos-7.7/env.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/centos-7.7/free.json","tests/fixtures/centos-7.7/history.json","tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/centos-7.7/iptables-filter-nv.json","tests/fixtures/centos-7.7/iptables-filter.json","tests/fixtures/centos-7.7/iptables-mangle.json","tests/fixtures/centos-7.7/iptables-nat.json","tests/fixtures/centos-7.7/iptables-raw.json","tests/fixtures/centos-7.7/jobs.json","tests/fixtures/centos-7.7/ls-al.json","tests/fixtures/centos-7.7/ls-alh.json","tests/fixtures/centos-7.7/ls.json","tests/fixtures/centos-7.7/lsblk.json","tests/fixtures/centos-7.7/lsmod.json","tests/fixtures/centos-7.7/lsof-sudo.json","tests/fixtures/centos-7.7/lsof.json","tests/fixtures/centos-7.7/mount.json","tests/fixtures/centos-7.7/netstat-l.json","tests/fixtures/centos-7.7/netstat-p.json","tests/fixtures/centos-7.7/netstat-sudo-lnp.json","tests/fixtures/centos-7.7/netstat.json","tests/fixtures/centos-7.7/ps-axu.json","tests/fixtures/centos-7.7/ps-ef.json","tests/fixtures/centos-7.7/route-vn.json","tests/fixtures/centos-7.7/route.json","tests/fixtures/centos-7.7/uname-a.json","tests/fixtures/centos-7.7/uptime.json","tests/fixtures/centos-7.7/w.json","tests/fixtures/ubuntu-18.04/arp-a.json","tests/fixtures/ubuntu-18.04/arp-v.json","tests/fixtures/ubuntu-18.04/arp.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/df.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json","tests/fixtures/ubuntu-18.04/env.json","tests/fixtures/ubuntu-18.04/free-h.json","tests/fixtures/ubuntu-18.04/free.json","tests/fixtures/ubuntu-18.04/history.json","tests/fixtures/ubuntu-18.04/ifconfig.json","tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","tests/fixtures/ubuntu-18.04/iptables-filter.json","tests/fixtures/ubuntu-18.04/iptables-mangle.json","tests/fixtures/ubuntu-18.04/iptables-nat.json","tests/fixtures/ubuntu-18.04/iptables-raw.json","tests/fixtures/ubuntu-18.04/jobs.json","tests/fixtures/ubuntu-18.04/ls-al.json","tests/fixtures/ubuntu-18.04/ls-alh.json","tests/fixtures/ubuntu-18.04/ls.json","tests/fixtures/ubuntu-18.04/lsblk.json","tests/fixtures/ubuntu-18.04/lsmod.json","tests/fixtures/ubuntu-18.04/lsof-sudo.json","tests/fixtures/ubuntu-18.04/lsof.json","tests/fixtures/ubuntu-18.04/mount.json","tests/fixtures/ubuntu-18.04/netstat-l.json","tests/fixtures/ubuntu-18.04/netstat-p.json","tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.json","tests/fixtures/ubuntu-18.04/netstat.json","tests/fixtures/ubuntu-18.04/ps-axu.json","tests/fixtures/ubuntu-18.04/ps-ef.json","tests/fixtures/ubuntu-18.04/route-vn.json","tests/fixtures/ubuntu-18.04/route.json","tests/fixtures/ubuntu-18.04/uname-a.json","tests/fixtures/ubuntu-18.04/uptime.json","tests/fixtures/ubuntu-18.04/w.json"]},"message":"json output files"},{"commit":"b5f1e94fe2859c4fbcf126f8f8fb20d71a9b6433","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/netstat.py"]},"message":"fix for space before '-' in program_name"},{"commit":"6a504fb0e10b1ef551ed9fe780926fe5ca02d267","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"]},"message":"add exception type"},{"commit":"e02bad2240bacbc31097d931a902a34217d559db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":123,"deletions":175,"files":["jc/parsers/netstat.py"]},"message":"update documentation"},{"commit":"1d4043a3b64c38a20a0db065c3bdc3c6a2d068bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":52,"deletions":0,"files":["jc/parsers/foo.py"]},"message":"add template parser"},{"commit":"039e034829789ca314a00abd4f1d9ad06f1a6eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":6,"files":["jc/parsers/netstat.py"]},"message":"fix parsing issues in program_name when spaces are in the name"},{"commit":"d828de4f4f2f4c3d582fddee79830d12511c3299","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":53,"deletions":9,"files":["jc/parsers/w.py"]},"message":"update documentation"},{"commit":"098000bb10a3f5ed33d285c6ba4f0dfb9a013fdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":24,"deletions":9,"files":["changelog.txt","jc/parsers/w.py"]},"message":"fix blank 'from' column issue"},{"commit":"b41165eff5cd7371e852cd33e084a919524ead9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":31,"deletions":1,"files":["jc/parsers/w.py"]},"message":"process w data"},{"commit":"6ad7891b2b34fae1a366568e4eba86e886a6dd84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":59,"deletions":14,"files":["jc/parsers/uptime.py"]},"message":"process uptime data"},{"commit":"72138315598cd405bc0508b554108bf3f730dcb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":31,"deletions":10,"files":["jc/parsers/uname.py"]},"message":"add process boilerplate"},{"commit":"10eedd82e4c4678fbf989fe599d7ca75deced5a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"a55493da0f1457a46f29511e0835adfa9d748f7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":93,"deletions":6,"files":["jc/parsers/route.py"]},"message":"process route data"},{"commit":"89973f4162317693b0d094a64115ee87d8479d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":45,"deletions":27,"files":["jc/parsers/ps.py"]},"message":"doc updates and tty fix"},{"commit":"4802222ad50d55372f2b883d83a61181086b0619","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/parsers/ps.py"]},"message":"process ps data"},{"commit":"bcd28f06f87a4260d1787399d723817afd6aee90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":1,"files":["jc/parsers/ps.py"]},"message":"prep ps for process"},{"commit":"e17a47a7fa7f4c1bb4c4b55fb004963fc1b61434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"fix typo"},{"commit":"cad2e16c7aa54a70f476bf4268ff8e5985cff468","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":353,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"document examples"},{"commit":"5da5d278dac77bd4aa21819194e7f9e178bd1887","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":0,"files":["jc/parsers/netstat.py"]},"message":"process netstat data"},{"commit":"81b6776e57c113cbfb8346d1cfd83532a440c257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":177,"files":["jc/parsers/netstat.py.old"]},"message":"remove old netstat parser"},{"commit":"5ecb6bd58b4ed91f63e4a0b5939378bd9925b7b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":3,"files":["changelog.txt","jc/parsers/netstat.py"]},"message":"doc updates"},{"commit":"21b56096c57cfcf5c55fdf5f9bab88b6d5c7dd73","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["jc/parsers/netstat.py"]},"message":"finalize parse_post"},{"commit":"8c78f959731a25a05ee6361a14853c92f8fce69b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"clean up trailing spaces on entries"},{"commit":"94a88bb5669d9a9a5dff085a4c4111bdd39df8f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":35,"deletions":17,"files":["jc/parsers/netstat.py"]},"message":"post_parse flags and program_name"},{"commit":"579124475b0b517b36ddbe5bdb13be14807dea1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"simplify parser_map code"},{"commit":"5da83e020015eb5559d216bc3f39b3854e76adf3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"]},"message":"fix found variable error"},{"commit":"a90a76d004b923edece07a52a3aa400a9ef4b005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":177,"deletions":140,"files":["jc/parsers/netstat.py.old","jc/parsers/netstat2.py"]},"message":"move out old netstat parser"},{"commit":"bdfa95912398b2630fcb13e866f4013747fd0975","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":20,"insertions":209,"deletions":212,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"fix compatibility code"},{"commit":"4380594275bc863e81839a6a7b032a6ff0cbb9b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":46,"files":["jc/utils.py"]},"message":"remove cli functions from utils"},{"commit":"88bf252c0df3c583640286880d7992e4399e23f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":139,"deletions":128,"files":["jc/cli.py","jc/jc.py"]},"message":"rename jc.py to cli.py"},{"commit":"a5efd8adce77fca7e3343f8f518c7bad578fdb4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"rename jc.py to cli.py"},{"commit":"2ee392eefffde77ebdf83f5e4e0c43cf8c1a7d6e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/netstat2.py"]},"message":"add quiet mode"},{"commit":"9c1d893e16ea17b16bec5fd0ec8839c4fe6f0590","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":102,"deletions":90,"files":["jc/jc.py","jc/parsers/arp.py","jc/parsers/df.py","jc/utils.py"]},"message":"move utils to own module and add quiet mode"},{"commit":"88dcb90c83b757285661c72429c5b60bb1ead94a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"a3bcabc89c1f74d067da0046492dbc56e50b1005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":62,"files":["jc/parsers/netstat2.py"]},"message":"mvp of netstat raw_data parser"},{"commit":"dafbf9fdcf53a8abbd006baef0be6697f860d2a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":247,"deletions":53,"files":["jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat2.py"]},"message":"process lsmod data"},{"commit":"680cb2b2caa82e1e2c3225b3c44cae2ba03ba02c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":76,"deletions":7,"files":["jc/parsers/lsblk.py"]},"message":"doc update"},{"commit":"54818a06e0e0b981810f6aec45c308da81a9e2ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/lsblk.py"]},"message":"change bool variable names"},{"commit":"88f4c5b5a93da3938b84f97abfc54539ee19ac48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":10,"deletions":10,"files":["jc/parsers/dig.py","jc/parsers/free.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py"]},"message":"remove TypeError from exception check"},{"commit":"2bb7409887e8b7659613189daf58d02cb26bd6ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":36,"deletions":11,"files":["jc/parsers/df.py","jc/parsers/lsblk.py"]},"message":"process lsblk data"},{"commit":"c780aac3aba02cc042c6a3c984af198069956370","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":22,"insertions":91,"deletions":5,"files":["jc/jc.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat2.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add compatibility function"},{"commit":"5010aaec285e26ae9dbfdb3fcdc38a3bd36cd236","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"]},"message":"put exit() back"},{"commit":"066e93cb075021ac94a0e2e6a36a34bc173ee6c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"]},"message":"move exit() to errormessage()"},{"commit":"0bd2faa7f71a128babc68afea053159ccb91b702","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/jc.py"]},"message":"beautify compatibility list"},{"commit":"e2f926453ba386736204e358f8306dfc731b5005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["install.sh"]},"message":"add install script"},{"commit":"b953b79f9c46d8c5398a6c1c2769167b5aed2805","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":11,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/ls.py"]},"message":"add compatibility"},{"commit":"7f9967780692bec2fcbe992eee0c392ab92efb7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":19,"deletions":1,"files":["jc/jc.py","jc/parsers/lsblk.py"]},"message":"compatibility function call"},{"commit":"721b54665924ad1657ee83cd5fca601e03700962","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/lsblk.py"]},"message":"finish schema"},{"commit":"2de5e41269421c73e07d4abd6ca99b38be736261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":95,"deletions":12,"files":["jc/parsers/lsblk.py"]},"message":"fix for more columns and build schema"},{"commit":"dfe0f6e99b6174734661fc43d9ad4b1d0dfd96e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":75,"deletions":9,"files":["jc/parsers/ls.py"]},"message":"process ls data"},{"commit":"8873b1bc697c8f9409fa676c88b5ebe109dc8717","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":46,"files":["jc/parsers/df.py"]},"message":"clean up process code"},{"commit":"9ff94707004fefed475603436fc0a7ffb19e6fee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":4,"files":["jc/jc.py"]},"message":"refactor helptext() function"},{"commit":"2c58fca53044892e15ceb5e8bcae1afb09fa3269","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":62,"deletions":4,"files":["jc/parsers/jobs.py"]},"message":"process jobs data"},{"commit":"9e5cd90da7d92bbadbc0d25071d087a3dbd90a5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":131,"deletions":261,"files":["jc/parsers/iptables.py"]},"message":"process iptables data"},{"commit":"7ee0d49424bba5274975d6c33e0721977660692f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":107,"deletions":28,"files":["jc/parsers/ifconfig.py"]},"message":"process ifconfig data"},{"commit":"a9058ee21e87454aa423112239c4f4df7daca8c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":4,"deletions":1,"files":["jc/parsers/arp.py","jc/parsers/dig.py","jc/parsers/free.py"]},"message":"doc formatting"},{"commit":"fcf0aac87dccac2ce28e6f55e66e2f0b8f6fbd36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":54,"deletions":10,"files":["jc/parsers/history.py"]},"message":"add history processing"},{"commit":"daec5f068103aae547509ddacc2be56c84f39f17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":55,"deletions":6,"files":["jc/parsers/free.py"]},"message":"process free data"},{"commit":"5b2491d5ae72705758944e247fbca83367c0365f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":54,"deletions":5,"files":["jc/parsers/env.py"]},"message":"process env data"},{"commit":"d9b41ac73b234f5bf7ff3abfee198092424a1bbd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/dig.py"]},"message":"doc formatting"},{"commit":"7168ffddf8a8dfcdd5bcabd8bf943d6417de407d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":87,"deletions":5,"files":["jc/parsers/dig.py"]},"message":"process dig output"},{"commit":"a855344bec9f60d852de326953436ec76f25cffb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":0,"files":["jc/parsers/arp.py"]},"message":"document schema"},{"commit":"d8b3b59fae924494fbcdfbdf6ad790f5234b0c69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/parsers/df.py"]},"message":"add schema and rename 'avail' to 'available'"},{"commit":"4b7d7840d37be47c1c98c38a6d712e7090e5b68c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","changelog.txt"]},"message":"add -r option"},{"commit":"58a094a9b4cab0fcb99581f37a21a450fc3a1aed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"65adbb4189ac66de3283adb2af93a1251103f057","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":29,"deletions":7,"files":["jc/parsers/arp.py"]},"message":"doc update"},{"commit":"f7350959c9706486a3aed19a999e5ee756a1240c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":47,"deletions":24,"files":["jc/parsers/df.py"]},"message":"df fix for changing header names when -h used"},{"commit":"8934a7d832b8e1375f0bbdd71031f37ae42f3929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["jc/parsers/arp.py","jc/parsers/df.py"]},"message":"fix dictionary iteration"},{"commit":"669a424fd6508db91bf5cfa2607033fac85f442c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/df.py"]},"message":"fix process function"},{"commit":"591a65c2bda26efcdd570a5f147f98a5be0473d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":46,"deletions":2,"files":["jc/parsers/df.py"]},"message":"process df data"},{"commit":"a78fb890782a64b20c0c1b60afbd915ebdd88535","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":5,"files":["jc/parsers/arp.py"]},"message":"add raw and processed output"},{"commit":"8979dab2a5371fce3a773004c2309e7483e4cd31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":25,"deletions":20,"files":["jc/jc.py"]},"message":"add raw mode"},{"commit":"0a891f0adda7f2f3233222a0cb5c1f737913ad6f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":1,"files":["changelog.txt","setup.py"]},"message":"bump python required version"},{"commit":"c220e35b14237c2cfc38aa661413af83ea13e393","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":34,"deletions":33,"files":["jc/jc.py"]},"message":"cleanup helptext"},{"commit":"f26c5818bd958c18f4ecc22611b9c058f6213a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":36,"deletions":33,"files":["jc/jc.py"]},"message":"refactor helptext"},{"commit":"e712cd3fc4cec1b3137c73e199b2d89fd42fb3bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":138,"deletions":0,"files":["jc/parsers/netstat2.py"]},"message":"netstat2 skeleton"},{"commit":"0309c9ac67c5f65e0a584fd01e8104ef1990fa7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"setup cleanup"},{"commit":"9a9eb4120af7696cd3727ac0f0a014663e62b993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["setup.py"]},"message":"setup updates"},{"commit":"d1927456b02e6c2a6e6395cd6ce873b6565ec37d","merge":"0691cfc a3d9213","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #6 from kellyjonbrazil/dev\n\nDev v1.1.1"},{"commit":"a3d9213a1e2fd52ba2cbc863d4d01d3ffeebe230","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["changelog.txt"]},"message":"add date"},{"commit":"3365c03a1e709835b4bd6bca023afbcb46912982","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":361,"deletions":0,"files":["tests/test_arp.py","tests/test_dig.py"]},"message":"add tests"},{"commit":"4f6c87389b313b368d9e833feef55fe6daf7aac9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":164,"deletions":1,"files":["tests/fixtures/centos-7.7/dig-aaaa.out","tests/fixtures/centos-7.7/dig-x.out","tests/fixtures/centos-7.7/dig.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/dig-aaaa.out","tests/fixtures/ubuntu-18.04/dig-x.out","tests/fixtures/ubuntu-18.04/dig.out"]},"message":"add dig test files"},{"commit":"41a2a9adac7d3c29dfa11292f08b0877c69b1a5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":147,"deletions":3,"files":["README.md","jc/parsers/dig.py"]},"message":"remove unnecessary if statement"},{"commit":"74dae2905b2b0916f0be9fee2a4a343962760ff6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":143,"deletions":30,"files":["jc/parsers/dig.py"]},"message":"dig parser mvp"},{"commit":"d1f64214de00090c3faae0bf544c6c2602ab8c31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":3,"files":["jc/parsers/dig.py"]},"message":"add authority parsing"},{"commit":"d3e1aa20a815d1d1d6ae82776ae18e3416f0966f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dig.py"]},"message":"fix when line"},{"commit":"72cae9577756c4355211a19f4dd77aaeb6f8e905","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":47,"deletions":9,"files":["jc/parsers/dig.py"]},"message":"dig fixes"},{"commit":"219bc8130f55f23e3be3abbe56104aefc2f84e86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":155,"deletions":0,"files":["jc/jc.py","jc/parsers/dig.py"]},"message":"dig parser skeleton"},{"commit":"e8c1a554c040ad8f9c6b518db5fd58e8345d2181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-a.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/arp-a.out"]},"message":"testfile updates"},{"commit":"087a60bc2adf64bfcedc1f264fef328f993b530c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":87,"deletions":5,"files":["README.md","jc/parsers/arp.py"]},"message":"documentation updates"},{"commit":"9c9823c3b8737b5de08af6278ca74414138e9263","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":16,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-v.out","tests/fixtures/centos-7.7/arp.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/arp-v.out","tests/fixtures/ubuntu-18.04/arp.out"]},"message":"add arp testfiles"},{"commit":"cf8d13030bf67261a986c0f80fa20ec0e37a743a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["README.md"]},"message":"add arp"},{"commit":"1eff69c187ca410ffaec7909bc2532553be1d80c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":17,"deletions":1,"files":["changelog.txt","jc/parsers/arp.py"]},"message":"add documentation"},{"commit":"b10fb77d714b73a10a9bf28b45269b3530e01cee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/arp.py"]},"message":"fixup arp parser"},{"commit":"87cee8b230a06fa270b2e36afb56f337da814c80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":28,"deletions":1,"files":["jc/jc.py","jc/parsers/arp.py"]},"message":"add arp parser"},{"commit":"83ab10d6282e26391bbf6bae5d0d29e040b209f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":44,"deletions":34,"files":["jc/__init__.py"]},"message":"documentation update"},{"commit":"d58a6e1d1dc93155255922b65b0af1325439b033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":15,"files":["README.md"]},"message":"readme update"},{"commit":"cb46ca5c2776a13c673a44d3e0fbd0661b32af9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]},"message":"readme update"},{"commit":"5528d979f0b45787d68ab79b962371df9acc527b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["changelog.txt","setup.py"]},"message":"version bump"},{"commit":"ee94a038a61d60db72046d5bcceec58009decb39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":131,"deletions":0,"files":["tests/test_uname.py","tests/test_uptime.py","tests/test_w.py"]},"message":"add tests"},{"commit":"1d658f7a9fc50873f76985b2fb9de92ada9d5547","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":265,"deletions":0,"files":["tests/test_netstat.py","tests/test_ps.py","tests/test_route.py"]},"message":"add tests"},{"commit":"392cb44f9b19829a5ceba055e24c7af4d8ac5b3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":80,"insertions":12667,"deletions":0,"files":["runtests.sh","tests/__init__.py","tests/fixtures/centos-7.7/df-h.out","tests/fixtures/centos-7.7/df.out","tests/fixtures/centos-7.7/env.out","tests/fixtures/centos-7.7/free-h.out","tests/fixtures/centos-7.7/free.out","tests/fixtures/centos-7.7/history.out","tests/fixtures/centos-7.7/ifconfig.out","tests/fixtures/centos-7.7/iptables-filter-nv.out","tests/fixtures/centos-7.7/iptables-filter.out","tests/fixtures/centos-7.7/iptables-mangle.out","tests/fixtures/centos-7.7/iptables-nat.out","tests/fixtures/centos-7.7/iptables-raw.out","tests/fixtures/centos-7.7/jobs.out","tests/fixtures/centos-7.7/ls-al.out","tests/fixtures/centos-7.7/ls-alh.out","tests/fixtures/centos-7.7/ls.out","tests/fixtures/centos-7.7/lsblk.out","tests/fixtures/centos-7.7/lsmod.out","tests/fixtures/centos-7.7/lsof-sudo.out","tests/fixtures/centos-7.7/lsof.out","tests/fixtures/centos-7.7/mount.out","tests/fixtures/centos-7.7/netstat-l.out","tests/fixtures/centos-7.7/netstat-p.out","tests/fixtures/centos-7.7/netstat-sudo-lnp.out","tests/fixtures/centos-7.7/netstat.out","tests/fixtures/centos-7.7/ps-axu.out","tests/fixtures/centos-7.7/ps-ef.out","tests/fixtures/centos-7.7/route-vn.out","tests/fixtures/centos-7.7/route.out","tests/fixtures/centos-7.7/uname-a.out","tests/fixtures/centos-7.7/uptime.out","tests/fixtures/centos-7.7/w.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/df-h.out","tests/fixtures/ubuntu-18.04/df.out","tests/fixtures/ubuntu-18.04/env.out","tests/fixtures/ubuntu-18.04/free-h.out","tests/fixtures/ubuntu-18.04/free.out","tests/fixtures/ubuntu-18.04/history.out","tests/fixtures/ubuntu-18.04/ifconfig.out","tests/fixtures/ubuntu-18.04/iptables-filter-nv.out","tests/fixtures/ubuntu-18.04/iptables-filter.out","tests/fixtures/ubuntu-18.04/iptables-mangle.out","tests/fixtures/ubuntu-18.04/iptables-nat.out","tests/fixtures/ubuntu-18.04/iptables-raw.out","tests/fixtures/ubuntu-18.04/jobs.out","tests/fixtures/ubuntu-18.04/ls-al.out","tests/fixtures/ubuntu-18.04/ls-alh.out","tests/fixtures/ubuntu-18.04/ls.out","tests/fixtures/ubuntu-18.04/lsblk.out","tests/fixtures/ubuntu-18.04/lsmod.out","tests/fixtures/ubuntu-18.04/lsof-sudo.out","tests/fixtures/ubuntu-18.04/lsof.out","tests/fixtures/ubuntu-18.04/mount.out","tests/fixtures/ubuntu-18.04/netstat-l.out","tests/fixtures/ubuntu-18.04/netstat-p.out","tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.out","tests/fixtures/ubuntu-18.04/netstat.out","tests/fixtures/ubuntu-18.04/ps-axu.out","tests/fixtures/ubuntu-18.04/ps-ef.out","tests/fixtures/ubuntu-18.04/route-vn.out","tests/fixtures/ubuntu-18.04/route.out","tests/fixtures/ubuntu-18.04/uname-a.out","tests/fixtures/ubuntu-18.04/uptime.out","tests/fixtures/ubuntu-18.04/w.out","tests/test_df.py","tests/test_env.py","tests/test_free.py","tests/test_history.py","tests/test_ifconfig.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_ls.py","tests/test_lsblk.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py"]},"message":"initial add of tests and fixtures"},{"commit":"579bef079cdd7cfa298bc20e052b8eb75b586f5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/netstat.py"]},"message":"move global output variable inside function"},{"commit":"0691cfcab3f5f91908e06ec906d57e548d4e7a1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["changelog.txt"]},"message":"changelog fix"},{"commit":"db29c7c186601fd4596d3eb121b37100601af907","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","jc/parsers/netstat.py"]},"message":"documentation fixes"},{"commit":"fb1e03637514b5ab02fd4c5df1db8b3cbacdd531","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":10,"files":["README.md"]},"message":"formatting"},{"commit":"c3eaf59836538f4ab4c745e87b70115b4a4c5421","merge":"ea0cf0a c9849ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #5 from kellyjonbrazil/dev\n\nDev v1.0.1"},{"commit":"c9849ce0db1f864d33739f8f6f942bf5672bc3b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"d3c89a3092973a7a8765463fff41c2469ed675cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":9,"files":["jc/parsers/uname.py"]},"message":"check for enough info to parse"},{"commit":"a3d43f27f7bb0835b3593b7c303fe0ee8d896a58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":10,"files":["jc/parsers/uptime.py"]},"message":"fix odd uptime text parsing"},{"commit":"f4d9c1b699fa30bd297a40ccf3d5f6e7ba3d4253","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":4,"files":["jc/parsers/uptime.py"]},"message":"fix uptime for minutes and hours long uptime"},{"commit":"de647bba4aff84f7b513cf7f6fec8d3933b0d9da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"documentation update"},{"commit":"d7913070315e5e0c89006942250aaf37e9e3e18e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"documentation update"},{"commit":"1a4fc204e21f1555ae67c3147322c8d73fab630b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":10,"deletions":1,"files":["README.md","changelog.txt"]},"message":"Documentation update"},{"commit":"0328e14c7c65a330093faa52fe48dae6cb173e42","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":0,"files":["jc/jc.py"]},"message":"handle ctrl-c gracefully"},{"commit":"1acc4d6c29d136e286f82d607c4a3a59e2680b68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/uptime.py"]},"message":"fix uptime parsing for short uptimes"},{"commit":"27245590ce28be933f1a55db4ee6b24783f4b63d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":20,"files":["jc/parsers/jobs.py"]},"message":"remove integers"},{"commit":"7ca2a4bdb939293e8d7364f8901ad1fd6d3ee808","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":182,"deletions":201,"files":["README.md","changelog.txt","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/netstat.py"]},"message":"remove integer values"},{"commit":"5f1ec6734874651bee595961edf1fafaf5acf001","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":473,"deletions":456,"files":["README.md","jc/parsers/df.py","jc/parsers/history.py","jc/parsers/iptables.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/w.py"]},"message":"lower() headers"},{"commit":"7e44c4278a75c7223d99200023160e8d77fde54d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/jobs.py"]},"message":"formatting"},{"commit":"eda726c4a3864008e2f700374b679ae68a965ef8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":80,"deletions":1,"files":["jc/parsers/ifconfig.py"]},"message":"documentation update"},{"commit":"5f8e70d73054f1a106c0e75eee621bc0cefd1c6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":20,"deletions":22,"files":["changelog.txt","jc/parsers/df.py","jc/parsers/free.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/w.py"]},"message":"convert headers to lowercase"},{"commit":"25b90546c652cafa9409f02bae1654cb523add88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":14,"deletions":9,"files":["README.md","changelog.txt","jc/parsers/df.py"]},"message":"change 'Use%' to 'Use_percent'"},{"commit":"75c084153845757e22c149ea4ae7909d42ec7118","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"5b532b9b71fdb9de575da0af9b7989ac537877c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/parsers/lsof.py"]},"message":"minor cleanup"},{"commit":"8c7b3193d131411f8766508fc27b2a6589bba1f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/history.py"]},"message":"documentation change"},{"commit":"0897c96ef3c180a1707e8f56c545f59b3a4e0672","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/lsof.py"]},"message":"formatting"},{"commit":"57d0ab2ed7f444862546da17cbbe8f8ce67bca8c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":9,"deletions":4,"files":["README.md","jc/parsers/w.py"]},"message":"change LOGIN@ to LOGIN_AT"},{"commit":"a07d9a0e4bb76d369b4a9bf0d77c7590dc3c2861","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":22,"deletions":13,"files":["README.md","jc/parsers/lsof.py"]},"message":"change SIZE/OFF key to SIZE_OFF"},{"commit":"b3996cb4dfed908d71b292dc0b0136c6675351e6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":10,"files":["README.md","jc/parsers/lsblk.py"]},"message":"change MAJ:MIN key to MAJ_MIN"},{"commit":"4fa88c1ba38b34f9750625458c465d66f6531bc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/history.py"]},"message":"clear out non-ascii chars from data"},{"commit":"c8c5564b29588094721949b96bff1e623437835d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":3,"files":["README.md","jc/parsers/free.py"]},"message":"change buff/cache key to buff_cache"},{"commit":"6d047486d9f577bc04d79af839f5eef9657a9d43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"doc fix"},{"commit":"42bdc058141c4a3ac6f2c8211f9c990590b1b5cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"changelog fix"},{"commit":"85bfb688862e78d5879df6973b88ba8023fa6086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":10,"files":["README.md","jc/parsers/history.py"]},"message":"history parser fixes"},{"commit":"08ec21556b553cd7e64932d68e01ba8ff3b0f210","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/w.py"]},"message":"formatting"},{"commit":"320929bf2595026d32b80b80c3e4878db9cf083f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/env.py"]},"message":"documentation update"},{"commit":"41cd489c34502c42602bf64086670ba3b2b8e14b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":126,"deletions":0,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/history.py","jc/parsers/uptime.py"]},"message":"add history and uptime parsers"},{"commit":"f101d881a16e662e883818749d48e96858fba853","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":78,"deletions":3,"files":["README.md","jc/jc.py","jc/parsers/w.py","setup.py"]},"message":"add w parser"},{"commit":"fa7466022bb8947c1bbf9f7b01aa4d92300a8992","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":28,"deletions":56,"files":["README.md","changelog.txt","jc/parsers/env.py"]},"message":"fix env parser"},{"commit":"ea0cf0acf22585fbf8828841cf50155636eae82f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/lsof.py"]},"message":"documentation update"},{"commit":"e7921b65f5a250c10b08f78939f74968047af430","merge":"393e8bc 2cc1b1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #4 from kellyjonbrazil/dev\n\nDev v0.9.1"},{"commit":"2cc1b1bd5451f31d71b0e2236bdee0ce2b25b5d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"version bump"},{"commit":"58ae976db0165730a75dd7450c698d2727a354ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":113,"deletions":4,"files":["README.md","jc/parsers/lsmod.py","setup.py"]},"message":"documentation update"},{"commit":"66772392ae78ef394e22070b127416b1d5b01332","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":32,"deletions":0,"files":["changelog.txt","jc/jc.py","jc/parsers/lsmod.py"]},"message":"add lsmod parser"},{"commit":"29c47c03a64f9c6b0f44d34be5449396654849b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":134,"deletions":2,"files":["README.md","changelog.txt","jc/parsers/lsof.py"]},"message":"documentation update"},{"commit":"91eb9a4d13e9254bd5bbde931196904c1947a28e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsof.py"]},"message":"use None instead of --"},{"commit":"a1a3de32ec14d6ef433e334b9694856698c26d41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":59,"deletions":0,"files":["jc/jc.py","jc/parsers/lsof.py"]},"message":"add lsof parser"},{"commit":"9c47fd05bf716c2e18ebf4da41b1a46b972b2518","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/jobs.py"]},"message":"doco fix"},{"commit":"649c0aa7c157f87691cc8eeac64c747e81f63594","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":76,"deletions":1,"files":["README.md","jc/parsers/jobs.py"]},"message":"add documentation"},{"commit":"3db758764e50666e5ae40de8d89180de2ef5bc28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":83,"deletions":0,"files":["changelog.txt","jc/jc.py","jc/parsers/jobs.py"]},"message":"add jobs parser"},{"commit":"802f1510eb6d621f9c760f28b83f16a4781b8d93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"]},"message":"tighten if statements"},{"commit":"56901788dee154890e70269ad48d4b22bb8c5437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":30,"deletions":19,"files":["jc/jc.py"]},"message":"stop blocking when no pipe and enhance help text"},{"commit":"679ae6d5dc7af26240dc00d8bc6499950f81d457","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump"},{"commit":"b15c8c352a87a9b3b1dece28af0287ef71ca02d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":16,"files":["jc/parsers/iptables.py"]},"message":"simplify state variables"},{"commit":"393e8bc56041a4be01b6c0b2f98895aa330afd04","merge":"e3750b4 976fd7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #3 from kellyjonbrazil/dev\n\nDev v0.8.1"},{"commit":"976fd7d9bd49190a8b28ea5acf5af8979cdec537","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":28,"files":["README.md"]},"message":"readme update"},{"commit":"d8337870cad042cdcc6a4ff3c61f756c3430fa96","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":28,"files":["jc/parsers/df.py"]},"message":"update documentation"},{"commit":"39a8aec77f5134b5b958e3f679910a1c3512e13a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/parsers/ls.py","setup.py"]},"message":"v0.8.1 build"},{"commit":"306d539b6bbfb272c7b955e4847adc3a6b4afa5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"readme update"},{"commit":"f3087b8a8ede88834285bb5d0655fc96341c174c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":635,"deletions":1,"files":["README.md","changelog.txt","jc/parsers/iptables.py"]},"message":"update readme and formatting"},{"commit":"414c2ecef88af2d2c098e6acfb507a5fd7bb8eda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":10,"files":["jc/parsers/iptables.py"]},"message":"fix iptables parser"},{"commit":"776ef2d1be81180b8b295fbc587446a326f2f7a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":61,"deletions":0,"files":["jc/jc.py","jc/parsers/iptables.py"]},"message":"add iptables parser"},{"commit":"9ac57469967443b195be09d580beaa76ce0e1095","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":64,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/uname.py"]},"message":"add uname parser"},{"commit":"a3e55d97c0fd4397b42e9146afb0ba9558274fdb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":127,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/mount.py"]},"message":"add mount parser"},{"commit":"b15227e7ba5377e5fb6799d1b9e4ed5a11c6d92f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":125,"deletions":0,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/lsblk.py"]},"message":"add lsblk parser"},{"commit":"ec3d1f84ceccb492b4c968938714fafa2e6a6321","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":2,"files":["jc/parsers/free.py"]},"message":"fix free parser"},{"commit":"753d5fd9fe5a8e4b67b1a0ec018a9f811e27f8bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"readme update"},{"commit":"73a0d70c9294ad392792e690a7bfbcc4f51b0a5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"readme update"},{"commit":"c2c189f3e6e900e5f3d35df9a9b9d033448baff6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["README.md"]},"message":"readme update"},{"commit":"36bc55a3109278d663b675a09829200f5474c3d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["README.md"]},"message":"fix df"},{"commit":"a023001cd350e320ce30f47af214ed7a9bb43185","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":226,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/df.py","jc/parsers/env.py","jc/parsers/free.py"]},"message":"add df, env, and free parsers"},{"commit":"e3750b49628794fd4d563013b1f3a7471c27ce68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":83,"deletions":51,"files":["README.md","jc/__init__.py"]},"message":"documentation enhancements"},{"commit":"b5ea08e55bfd22c9da5ba73c124791012df119a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":20,"deletions":20,"files":["README.md","changelog.txt","jc/parsers/netstat.py","setup.py"]},"message":"fix transport protocol"},{"commit":"8e71b8e3522b9b1af4d869a0854223eb5c300b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"fix jq example"},{"commit":"4c8610c54ff4b643237d8f0e4c5781c277fc39f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["changelog.txt","setup.py"]},"message":"fixed build"},{"commit":"c8f886dc8fcdc58f8471d68c3d583200d0ea2f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"]},"message":"fix example"},{"commit":"4cfc2d22b3f9fd6f0cde8ad206edd7fe260b3071","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"update changelog"},{"commit":"59238c85408117748e78c5e87157381a828f3782","merge":"d54d906 30080c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #2 from kellyjonbrazil/dev\n\nDev v0.6.2"},{"commit":"30080c01659cf611666876b7b063b7b329822352","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":35,"deletions":35,"files":["README.md"]},"message":"reorder parsers"},{"commit":"fab80bb3b4a1897da29d818e98e9b80ce45443dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["README.md","setup.py"]},"message":"readme update"},{"commit":"a9f2df805421754afb8e8adbcac7f2d3bd06c9ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"move parsed_line var lower"},{"commit":"1d110be6cb25d169ae0dde6532cbcdf05d93d42f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":13,"deletions":1,"files":["README.md","changelog.txt","setup.py"]},"message":"update doco"},{"commit":"be81b5e1ed93eb65e5dbed4f52905439cde86f62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":112,"deletions":121,"files":["README.md"]},"message":"readme update"},{"commit":"5f88f7d8a071306be92cbfb65d6d62c5a68159f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":110,"deletions":137,"files":["jc/parsers/netstat.py"]},"message":"netstat cleanup"},{"commit":"e57c7cc8ef3102cc41dee4ea5fd33d40ba666491","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"change output from dict to list"},{"commit":"b216627c1073ea645029e341b4d3376601e5468e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":116,"files":["jc/parsers/netstat.py"]},"message":"flatten netstat output"},{"commit":"6e925eab131024b5746d870cbd47e2791acf18bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":18,"files":["jc/jc.py"]},"message":"clean up arg parsing"},{"commit":"d54d906c571b4683f01cab2eca63ae5f0725a87b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update readme"},{"commit":"0040febbf099ed8ab35f6ee343750fcf89f2e739","merge":"8073d15 e416c77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #1 from kellyjonbrazil/dev\n\nDev v0.5.5"},{"commit":"e416c77bed1267254da972b0f95b7ff1d43fccef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"version bump"},{"commit":"9181d242aaed5219bb35fde01d672be88949cceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"bump version"},{"commit":"d6f94c53a4df84fb75554605477e49536a809dc2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"]},"message":"fix blank output case in ls"},{"commit":"a9294f32a00709737d0b82ff434a311e75ad0bed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":39,"deletions":42,"files":["changelog.txt","jc/parsers/ls.py","setup.py"]},"message":"ls fixes"},{"commit":"4d93b38fe47329e3175025878e87f7c963061f98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":90,"deletions":1,"files":["README.md","jc/parsers/route.py"]},"message":"add route documentation"},{"commit":"77b74c550795f96b808e48a9b0bfd1a8af9866f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"add route parser"},{"commit":"51a1d3e6f48cf7084267be4092f0dd3f778dcef3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump"},{"commit":"2eba30422b44f648c7356a44cbff7416c6648f19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"]},"message":"skip first line"},{"commit":"43ed09ce5ba53261dfd7ef50a2e187cb524c416c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":25,"deletions":1,"files":["jc/jc.py","jc/parsers/route.py","setup.py"]},"message":"add route parser"},{"commit":"367ab54f94bf7f456377ec9d20f8daf99dbdc1ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":99,"deletions":2,"files":["README.md","changelog.txt","jc/parsers/ps.py"]},"message":"formatting"},{"commit":"4f552e370e656cc1882a7dae231475a016f8aa14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/ps.py"]},"message":"acknowledgment"},{"commit":"7571139f7980f6e74c29d46971881e82ab0f04bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"bump version"},{"commit":"8ec1bec31711d2ef487da3e4a29a842d98d77626","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":29,"deletions":7,"files":["changelog.txt","jc/__init__.py","jc/jc.py","jc/parsers/ps.py"]},"message":"add ps parser"},{"commit":"c04895407f203aa0a3a080d5242faf8f6889ae41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["changelog.txt","jc/parsers/netstat.py"]},"message":"ubuntu fixes"},{"commit":"cec73d61310591e4890605f61dc5c1bef5808ec4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":24,"deletions":16,"files":["jc/jc.py","jc/parsers/ifconfig.py","jc/parsers/ls.py","jc/parsers/netstat.py"]},"message":"linting"},{"commit":"756c2bc9acd60111281b76085a40778e51ca06cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":3,"files":["README.md"]},"message":"add acknowledgments"},{"commit":"084048987c7afc6516f69e68d37d73b2402dc7f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"02d97394dd76a8782e6e7d3f8a85e1aed05e796b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"177f948f9740e3e33449b04b9136a346c9a2c265","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version update"},{"commit":"c2b013150ec1f1b1ab7d416f1aa8a62165a5bb95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["changelog.txt"]},"message":"add changelog"},{"commit":"0bec67c29ce5d965271440da41a0c4b4c2a1f0fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/netstat.py"]},"message":"double quotes to single quotes"},{"commit":"8073d15fe11546a17cacd81409e255bb8aecd602","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":4,"files":["README.md"]},"message":"readme update"},{"commit":"3b74afc39e58f801e75b7105e521c1469d30f991","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["pypi-upload.sh"]},"message":"upload script"},{"commit":"ed320cf0f4bb11cee1e69e9dc9176ba109df1b86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":22,"deletions":22,"files":["README.md","jc/parsers/netstat.py","setup.py"]},"message":"change netstat pid field to integer"},{"commit":"021b6924e24e1cf0f971246244b174cd3181c0a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":254,"deletions":5,"files":["README.md","jc/parsers/netstat.py"]},"message":"documentation updates"},{"commit":"5fb21b077662f1cb172741945ba5036e5a280638","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":8,"files":["jc/parsers/netstat.py"]},"message":"remove debug print statements"},{"commit":"7b8540ae2a60f2400fe672a022ee00d1415a3500","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":7,"files":["jc/parsers/netstat.py"]},"message":"netstat fixes"},{"commit":"a5e039d4c2e07d52a0797833685c562ab285b49b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":17,"deletions":7,"files":["jc/parsers/netstat.py"]},"message":"netstat debugging"},{"commit":"7071f60a302b7aefb8fb312699b0abec25548986","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":66,"deletions":18,"files":["jc/parsers/netstat.py"]},"message":"netstat mvp"},{"commit":"0de1dff0253eb46b7336103f62f888940406ccc0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["jc/parsers/netstat.py"]},"message":"fix ands"},{"commit":"b3c52eb1ccf82e899dda62c332c0b217d80eb4c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":112,"deletions":40,"files":["jc/parsers/ifconfig.py","jc/parsers/netstat.py"]},"message":"add netstat parser"},{"commit":"366c5dbc010869bdb1d3b9d852e10510bd5c266f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/jc.py"]},"message":"fix help message"},{"commit":"a3ee02514b5fbd43a38ddf515a4aad49bb4e161a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/jc.py"]},"message":"fix imports and module names"},{"commit":"46ad1269cb58dc6f064d17eb0b04da62d8fd5fce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":3,"files":["jc/jc.py","setup.py"]},"message":"packaging fixes"},{"commit":"7234afe568818678585ac423649a0ccce0f45d68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"entrypoint fix"},{"commit":"caf480c63aacb518805d48fba0fd454959d11023","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"module fix"},{"commit":"62851b48d5e5cd673e630a28996e1c24cc45aa58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/jc.py","setup.py"]},"message":"fix modules"},{"commit":"46d6da92f0e196e150ab9dd44b1ba290c950905b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["jc/{jc => jc.py}","setup.py"]},"message":"fix entry_points"},{"commit":"e572b2edfa993c5049ef3caeda7a8e4797f0c751","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":37,"deletions":29,"files":["jc/jc","setup.py"]},"message":"use entry_points instead of scripts"},{"commit":"72c69e7de59029d623c9819dda6aa8cae91bc419","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/jc"]},"message":"fix package paths"},{"commit":"4d1565071e5cf7c38e026e08db8f4d2e79969691","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["jc/{jc.py => jc}","setup.py"]},"message":"rename jc.py to jc"},{"commit":"3652e51693d7ba829f4699fd80de20856941d82f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"fix requirements"},{"commit":"49ce9f13e817266659400a8c19f5b078a48589df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":17,"deletions":20,"files":["jc/jc.py","jc/parsers/__init__.py","setup.py"]},"message":"setup updates"},{"commit":"e83170b7ec7ed2123bfde69be263b6034c7afa53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["README.md"]},"message":"readme update"},{"commit":"ffb6eb754a87baad5fb0558e30a5bca1a9b9e0a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/parsers/__init__.py","setup.py"]},"message":"setup fixes"},{"commit":"2597a18d95d01109d2250487b7550a501edaf77b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":82,"deletions":0,"files":["README.md"]},"message":"readme update"},{"commit":"3e576250b1bfe1c62c556f2fa0425103b0ede1f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":429,"deletions":0,"files":[".gitignore","LICENSE.md","README.md","build-package.sh","jc/__init__.py","jc/jc.py","jc/parsers/__init__.py","jc/parsers/ifconfig.py","jc/parsers/ls.py","jc/parsers/netstat.py","setup.py"]},"message":"First commit"}] +[{"commit":"096fffdb79807d34b99985b38df0a3df7f6a86c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":120,"deletions":36,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":78},{"name":"jc/parsers/git_log.py","lines_changed":78}]},"message":"use stat examples"},{"commit":"728d882ed007b3c8b785018874a0eb06e1143b66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":90,"deletions":12,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":51},{"name":"jc/parsers/git_log.py","lines_changed":51}]},"message":"add timestamp docs and examples"},{"commit":"b53e42aca623181aa9bc72194e6eeef1e9a3a237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":29,"deletions":6,"files":["docs/parsers/git_log.md","docs/utils.md","jc/parsers/git_log.py","jc/utils.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":8},{"name":"docs/utils.md","lines_changed":4},{"name":"jc/parsers/git_log.py","lines_changed":14},{"name":"jc/utils.py","lines_changed":7},{"name":"man/jc.1","lines_changed":2}]},"message":"add calculated timestamp"},{"commit":"477329ce5b8f5c2a8e4384ba3f59289fc18c957d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add linefeed to version text"},{"commit":"283dc4efd55030188f17c7e1dfbc5315103494b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["CHANGELOG","jc/cli.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/cli.py","lines_changed":7}]},"message":"add python interpreter version and path to -v and -a output"},{"commit":"d490bbcaa0291a691b95fa5b61807eebb0b088eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":26,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":52}]},"message":"normalize add/update"},{"commit":"f49ddf8e5c5009702155fc62d83c63e3c08c594d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":4},{"name":"jc/parsers/git_log.py","lines_changed":4}]},"message":"doc update"},{"commit":"e1e341652b51b823844e76ef7e68f9373a323435","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"doc update"},{"commit":"ecda667549137bed5622cca69f2022e7a75ea833","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":8,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":2},{"name":"jc/parsers/git_log.py","lines_changed":18}]},"message":"process integers"},{"commit":"a0d96a188a9f875b2d59625aa97d4f80bba290f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":1,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"doc update"},{"commit":"6c0f0cddfe4dd2d5169f7c55416c6725912557f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":1,"files":["jc/parsers/yaml.py","tests/test_yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":7},{"name":"tests/test_yaml.py","lines_changed":8}]},"message":"fix for datetime objects in yaml files"},{"commit":"c7173ecd89742c8cf8a7bc4a8021baac5c3cd483","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":6,"files":["jc/parsers/git_log.py"],"file_stats":[{"name":"jc/parsers/git_log.py","lines_changed":14}]},"message":"fix mypy issues"},{"commit":"e98240c905394e3ebd6a45fa31b6d432c150afc4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/git_log.py"],"file_stats":[{"name":"jc/parsers/git_log.py","lines_changed":8}]},"message":"extend instead of append list"},{"commit":"6cb7e25974b11afe57d7d0e8550b3b1a56b14c67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":93,"deletions":1,"files":["README.md","docs/parsers/git_log.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/git_log.md","lines_changed":86},{"name":"man/jc.1","lines_changed":7}]},"message":"add docs"},{"commit":"c37980c05c7fbd4f811ce5fcfcfddaf5f3ab5414","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":41,"deletions":7,"files":["jc/parsers/git_log.py"],"file_stats":[{"name":"jc/parsers/git_log.py","lines_changed":48}]},"message":"add stat support"},{"commit":"b5943bd39d776fc4c3b3dea03c0f3d4b6f4bb260","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":10,"files":["jc/parsers/git_log.py"],"file_stats":[{"name":"jc/parsers/git_log.py","lines_changed":33}]},"message":"initial docstring"},{"commit":"49a3a7db3b2b0b292489a41691c9dcbce816cfed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":175,"deletions":0,"files":["jc/lib.py","jc/parsers/git_log.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/git_log.py","lines_changed":174}]},"message":"initial git-log parser"},{"commit":"0c55240e9da30ac4293cc324f1094de2abd3da91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":0,"files":["CHANGELOG","tests/{ => templates}/_test_foo.py","tests/{ => templates}/_test_foo_s.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"tests/{ => templates}/_test_foo.py","lines_changed":0},{"name":"tests/{ => templates}/_test_foo_s.py","lines_changed":0}]},"message":"move test templates to fix test failures on some systems"},{"commit":"f91988aed5499d25acf7a7e87b2b0d0cd37b62af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/lib.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":2}]},"message":"iterator -> iterable"},{"commit":"3c3ad9fc6adf865b3814a1f03814d0bc17d1c6bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"iterator -> iterable in doc"},{"commit":"291ab79e22a59cb31814e7a5af9dbc9f2ec863e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":24,"deletions":24,"files":["README.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":24},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":22}]},"message":"fix arch linux command"},{"commit":"e6d5892c146762cd41a966adadb77db333d98ace","merge":"c0414e7 dcca7a5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #226 from kellyjonbrazil/master\n\nsync to dev"},{"commit":"dcca7a57d558721a61fbba44f07b1d53116827e1","merge":"7138eef 4ee8a69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #225 from adrianteri/patch-1\n\nUpdate README"},{"commit":"4ee8a69337b24e199983fe657643abcb0a56a8e6","author":"003","author_email":"adriateri@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"Update README\n\nSpecify the Arch package is in the AUR and NOT in the standard Archlinux repositories."},{"commit":"c0414e7db7f5d785b72ad616517f2ec63af151a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":8}]},"message":"clean up background tasks"},{"commit":"a419175fe6dffe9c5fd20cfbd82ee552bc82a993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":34,"deletions":17,"files":["docgen.sh","updatedocs.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":30},{"name":"updatedocs.sh","lines_changed":21}]},"message":"enhance parallelization"},{"commit":"cd6dead034f3c72aebd22afeb2aea6591ae6d94d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"man page update"},{"commit":"45342ea9fea29947d8d90260c7665ffbca612cce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":16,"deletions":9,"files":["docgen.sh","updatedocs.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":16},{"name":"updatedocs.sh","lines_changed":9}]},"message":"parallelize doc gneration"},{"commit":"585bf0e159c7839869cf3e458938dcc5fa2ceb81","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"xrandr update"},{"commit":"3a860b9babe93d455f68ef21436edf7470d375af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":5,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":4},{"name":"jc/parsers/xrandr.py","lines_changed":8}]},"message":"add rotation field"},{"commit":"269180df77f9ff953b07222e8ae790c7e7a8298e","merge":"e85f11c a1afed8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #223 from anekos/fix/support-rotated-devices\n\nFix/support rotated devices"},{"commit":"a1afed8d95e33fbbc618c7b5778a9faeea2f628f","author":"anekos","author_email":"anekos@snca.net","commit_by":"anekos","commit_by_email":"anekos@snca.net","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["docs/parsers/xrandr.md"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":4}]},"message":"doc update"},{"commit":"e39f150a216e4e184444dfc88a63e0f303e51631","author":"anekos","author_email":"anekos@snca.net","commit_by":"anekos","commit_by_email":"anekos@snca.net","stats":{"files_changed":3,"insertions":9,"deletions":4,"files":["jc/parsers/xrandr.py","tests/fixtures/generic/xrandr_simple.json","tests/test_xrandr.py"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":4},{"name":"tests/fixtures/generic/xrandr_simple.json","lines_changed":1},{"name":"tests/test_xrandr.py","lines_changed":8}]},"message":"Support rotated devices"},{"commit":"e85f11c6fcad5461bae612dd5a945c20d300e59a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":12,"deletions":12,"files":["docs/parsers/ini.md","docs/parsers/kv.md","jc/parsers/ini.py","jc/parsers/kv.py"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":6},{"name":"docs/parsers/kv.md","lines_changed":6},{"name":"jc/parsers/ini.py","lines_changed":6},{"name":"jc/parsers/kv.py","lines_changed":6}]},"message":"doc formatting"},{"commit":"49a9d7b07e89696f2e022655d7256b7d6ad4bf7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":12,"deletions":8,"files":["docs/parsers/ini.md","docs/parsers/kv.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":8},{"name":"docs/parsers/kv.md","lines_changed":10},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"a2ef9c429e4bb9f70d033511dce77ccdb9013971","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":38,"deletions":8,"files":["jc/parsers/ini.py","jc/parsers/kv.py","tests/test_ini.py","tests/test_kv.py"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":12},{"name":"jc/parsers/kv.py","lines_changed":10},{"name":"tests/test_ini.py","lines_changed":12},{"name":"tests/test_kv.py","lines_changed":12}]},"message":"allow duplicate keys"},{"commit":"d5e9074f1c8facb3f15b8c41a008917178626978","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/lib.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/lib.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"774699f085d97f22ae2dab0cf64d72aa1e1709f7","merge":"789f073 7138eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #220 from kellyjonbrazil/master\n\nsync to dev"},{"commit":"7138eef3d137bc64286d4af453d8d4e7b3f4408d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"docs/parsers/asciitable_m.md","lines_changed":6},{"name":"jc/parsers/asciitable_m.py","lines_changed":6}]},"message":"fix newline chars in doc"},{"commit":"fad5e544aa9e57d31473190e196f59c616901207","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":2},{"name":"jc/parsers/asciitable.py","lines_changed":2}]},"message":"formatting"},{"commit":"64757e2cf55448bccfbbd60d31930ab3f59af21b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":12},{"name":"jc/parsers/asciitable.py","lines_changed":12}]},"message":"doc formatting"},{"commit":"e05be3f08beae1b600fc55a3a7b4e28163e15bc0","merge":"ac61e9a 789f073","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #213 from kellyjonbrazil/dev\n\nDev v1.18.6"},{"commit":"789f0735dfd63e728b8716d97cf0c6045ede5011","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"doc update"},{"commit":"34bc7753174be28d6c1a00dadc662bc374e554c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"38de059a1bc285c8681086d9fb43d0d23ac01d49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":3,"files":["docs/parsers/asciitable.md","docs/parsers/universal.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":6},{"name":"docs/parsers/universal.md","lines_changed":4},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"304ae6268f4dff6e6f901628e7ff89db1d6e0767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":12}]},"message":"minor optimization by changing the expression order"},{"commit":"978caf45221188a29c0e67147804f20f317c066d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["jc/parsers/asciitable.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":26}]},"message":"minor optimization by reordering expressions"},{"commit":"17df5bfcfc25f226a2976aa7ab8a80e4aaa915c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":2,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":10},{"name":"jc/parsers/asciitable_m.py","lines_changed":4}]},"message":"cache _is_separator function"},{"commit":"5e6a5068cff71b3b30525d0a12868bdf6551456c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":2,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":8}]},"message":"allow iterables for simple table parser"},{"commit":"619de68a61be0117e635032347dde417d77c748c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":9,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":7},{"name":"jc/parsers/asciitable_m.py","lines_changed":10}]},"message":"formatting"},{"commit":"6748c3cc91f90bddea3d07b8b30a049ee55eaf35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":65,"deletions":61,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":52},{"name":"jc/parsers/asciitable_m.py","lines_changed":74}]},"message":"remove lines from corner detection and add rounded corners"},{"commit":"0a462978b731770d1290187a502706c2322f5f91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":101,"deletions":3,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py","tests/test_asciitable.py","tests/test_asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":25},{"name":"jc/parsers/asciitable_m.py","lines_changed":8},{"name":"tests/test_asciitable.py","lines_changed":43},{"name":"tests/test_asciitable_m.py","lines_changed":28}]},"message":"fix for special characters in headers"},{"commit":"e66a82ff49b40a674f9ef373a12d59fc71bfa730","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":5,"files":["CHANGELOG","jc/parsers/asciitable_m.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":5},{"name":"jc/parsers/asciitable_m.py","lines_changed":4},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"f3aa797d96c8e2cef2124dbb2f49d1fadaee3fa2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":69,"deletions":9,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":43},{"name":"jc/parsers/asciitable_m.py","lines_changed":35}]},"message":"add more pretty table separators"},{"commit":"e5b478218c4ba3781afd085056dba888c3f6ae02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_xrandr.py"],"file_stats":[{"name":"tests/test_xrandr.py","lines_changed":6}]},"message":"add quiet=True to parse tests"},{"commit":"35e0e9c32afbc5450c661bcb3a23904d135358ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":1}]},"message":"remove print statement"},{"commit":"17c3c2f029a0a47eb02d681567619d471b99949c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":58,"deletions":2,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py","tests/test_asciitable.py","tests/test_asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":3},{"name":"jc/parsers/asciitable_m.py","lines_changed":2},{"name":"tests/test_asciitable.py","lines_changed":31},{"name":"tests/test_asciitable_m.py","lines_changed":24}]},"message":"add bold bar seperator and ANSI code tests"},{"commit":"cf83e6398b3314b233581eb313510872177de20a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":0,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":4},{"name":"jc/parsers/asciitable_m.py","lines_changed":3}]},"message":"add fancy separators"},{"commit":"94e061b881e2ed28d2b462ad038e5ba77182b6c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":275,"deletions":0,"files":["tests/test_asciitable.py"],"file_stats":[{"name":"tests/test_asciitable.py","lines_changed":275}]},"message":"add asciitable parser tests"},{"commit":"720480e39ce3cc2079d7f4f5bcff2725081fec34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":10,"deletions":2,"files":["docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":3},{"name":"docs/parsers/asciitable_m.md","lines_changed":3},{"name":"jc/parsers/asciitable.py","lines_changed":3},{"name":"jc/parsers/asciitable_m.py","lines_changed":3}]},"message":"doc update"},{"commit":"82a63fe15922456853aa4597aa10a5a02b20bdef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":8,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":7},{"name":"jc/parsers/asciitable.py","lines_changed":7}]},"message":"doc update"},{"commit":"9c1ec9940e68ce9848da20e81b8c0b7e35a215df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":82,"deletions":14,"files":["docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":44},{"name":"docs/parsers/asciitable_m.md","lines_changed":4},{"name":"jc/parsers/asciitable.py","lines_changed":44},{"name":"jc/parsers/asciitable_m.py","lines_changed":4}]},"message":"doc update"},{"commit":"f23f19da453a0f7bcf70e417a10f87e27571aa43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":122,"deletions":9,"files":["README.md","docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/asciitable.md","lines_changed":97},{"name":"docs/parsers/asciitable_m.md","lines_changed":4},{"name":"jc/parsers/asciitable_m.py","lines_changed":24},{"name":"man/jc.1","lines_changed":5}]},"message":"doc update"},{"commit":"aea2e1b0a9c6bb2a02a6e73889bb04e8f4f22588","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["tests/test_asciitable_m.py"],"file_stats":[{"name":"tests/test_asciitable_m.py","lines_changed":48}]},"message":"fix tests so blank strings are now None"},{"commit":"7d95d679bf4093ea77f30a1be55384b6dbf08341","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":212,"deletions":1,"files":["jc/lib.py","jc/parsers/asciitable.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2},{"name":"jc/parsers/asciitable.py","lines_changed":211}]},"message":"add asciitable parser"},{"commit":"b3b140066b74ee31dd1c460502caf2f26df321b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"docs/parsers/asciitable_m.md","lines_changed":4},{"name":"jc/parsers/asciitable_m.py","lines_changed":4}]},"message":"doc update"},{"commit":"b204c423c1b947c17cb251a5dd3c444cd71dd2c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":193,"deletions":15,"files":["README.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/asciitable_m.md","lines_changed":122},{"name":"jc/parsers/asciitable_m.py","lines_changed":78},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update"},{"commit":"d451c309bb0d8889dc09a698212bf01c2154a582","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":8,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":19}]},"message":"change multiple or statements to any()"},{"commit":"01d53da68ed04b736934851137c59216ad02d8c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":1}]},"message":"remove debug print"},{"commit":"53dd05e52c329a15c30a756a36a165ac59ef8a14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":29,"deletions":1,"files":["jc/parsers/asciitable_m.py","tests/test_asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":3},{"name":"tests/test_asciitable_m.py","lines_changed":27}]},"message":"fix rstrip and add tests"},{"commit":"ab564f5be8282f1c7ee2d602bcef398fdfd4570f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":237,"deletions":1,"files":["jc/parsers/asciitable_m.py","tests/test_asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":16},{"name":"tests/test_asciitable_m.py","lines_changed":222}]},"message":"add tests"},{"commit":"00c39450f9878527b60545ad61c04cfb98f418dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":2}]},"message":"enhance type annotation"},{"commit":"f611d08b50219f4e573c1d1f0beae27583e76432","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":5}]},"message":"formatting"},{"commit":"90e79b7df3a4d5b37835fdf1c2debc1bad0a40b9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":2}]},"message":"formatting"},{"commit":"4eb2d725d5fe6f2cc7935c7dc891912cf7b8e940","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":2}]},"message":"formatting"},{"commit":"51ae5ebcac7263ef2571c11975b275eff352bbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":148,"deletions":175,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":323}]},"message":"new streamlined parser"},{"commit":"9ecbdb09162da4d563799aa93d422db85b2c324b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":35,"deletions":30,"files":["docs/parsers/mpstat_s.md","docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","docs/parsers/universal.md","jc/parsers/foo_s.py","jc/parsers/mpstat_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"docs/parsers/mpstat_s.md","lines_changed":10},{"name":"docs/parsers/pidstat_s.md","lines_changed":10},{"name":"docs/parsers/rsync_s.md","lines_changed":10},{"name":"docs/parsers/universal.md","lines_changed":19},{"name":"jc/parsers/foo_s.py","lines_changed":4},{"name":"jc/parsers/mpstat_s.py","lines_changed":4},{"name":"jc/parsers/pidstat_s.py","lines_changed":4},{"name":"jc/parsers/rsync_s.py","lines_changed":4}]},"message":"use generator instead of iterable in function return annotation"},{"commit":"b3a2886fd0af0cd06890f37f1edfc6890bb83e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["docs/lib.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":3}]},"message":"formatting"},{"commit":"ceacec0f462bd7c2d9e92ddb9029ccd71aef481c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":1}]},"message":"remove errant os sep import"},{"commit":"ff0f794b01395ed9b65fac75a6b07f0772d45a2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":32,"deletions":10,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":42}]},"message":"working"},{"commit":"70fafbf3f80f35c5db2c306978b2a488adad40bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"remove asciitable so tests pass for now"},{"commit":"5a248a8fc58952a5eab3d4aac025d7422ba82d08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":344,"deletions":0,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":344}]},"message":"add multiline asciitable parser"},{"commit":"4a3a4e10df8a552a4db3510640695f02b166dc40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":4,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":7}]},"message":"add asciitable and asciitable-m parsers"},{"commit":"c27bd5ff39f21c6377e661d4d7de1200d2fdd72f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":16,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":39}]},"message":"pad lines in sparse_table_parse and use str.isspace()"},{"commit":"f804c9627fb71341429ca80aec2887e23e0277db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":1}]},"message":"copy input list so we don't mutate the caller's data"},{"commit":"3ab25d02f9dc248706aa1105e1766b2a84bc55a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"use _parser_is_streaming from lib"},{"commit":"9e80fd2b97b9bfe38fdaa6acdf2e8ed26d34b49d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":11,"files":["jc/cli.py","jc/lib.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":21},{"name":"jc/lib.py","lines_changed":5}]},"message":"fallback if info and doc items don't exist"},{"commit":"ff9527a098a94c996641fb3fe2f905c8ae5e3063","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":13,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":22}]},"message":"import cleanup and use all_parser_info in parsers_text"},{"commit":"7dac2f8dc3baf619105e3c6ca4d3e45300b86287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":23,"deletions":9,"files":["docs/lib.md","docs/readme.md","man/jc.1"],"file_stats":[{"name":"docs/lib.md","lines_changed":23},{"name":"docs/readme.md","lines_changed":7},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"32e4d55e86c3e7d94488ec69f13a4f6400c4cef3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":10}]},"message":"use parser_info for help_doc"},{"commit":"f9a9062147256d0949457cc7fde838f87202524d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":27,"deletions":10,"files":["CHANGELOG","jc/__init__.py","jc/lib.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/__init__.py","lines_changed":7},{"name":"jc/lib.py","lines_changed":29}]},"message":"add documentation argument to parser_info and all_parser_info"},{"commit":"89e5919796f7da585285901dca461aae21336415","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/mpstat_s.md","jc/parsers/mpstat_s.py"],"file_stats":[{"name":"docs/parsers/mpstat_s.md","lines_changed":2},{"name":"jc/parsers/mpstat_s.py","lines_changed":2}]},"message":"add -A to second example"},{"commit":"e5f5b2591d8ac3abeb9571688c7fb8de34d647f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"changelog update"},{"commit":"77c667eec045daff5cbd062fe9d6e83f237727e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":67,"deletions":6,"files":["docs/parsers/mpstat.md","docs/parsers/mpstat_s.md","jc/parsers/mpstat.py","jc/parsers/mpstat_s.py","tests/fixtures/ubuntu-18.04/mpstat-A-streaming.json","tests/fixtures/ubuntu-18.04/mpstat-A.json","tests/fixtures/ubuntu-18.04/mpstat-A.out","tests/test_mpstat.py","tests/test_mpstat_s.py"],"file_stats":[{"name":"docs/parsers/mpstat.md","lines_changed":2},{"name":"docs/parsers/mpstat_s.md","lines_changed":2},{"name":"jc/parsers/mpstat.py","lines_changed":12},{"name":"jc/parsers/mpstat_s.py","lines_changed":12},{"name":"tests/fixtures/ubuntu-18.04/mpstat-A-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/mpstat-A.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/mpstat-A.out","lines_changed":19},{"name":"tests/test_mpstat.py","lines_changed":12},{"name":"tests/test_mpstat_s.py","lines_changed":12}]},"message":"ubuntu fixes"},{"commit":"b257ce8c2fe6825fe435b4d04b4184091030db10","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":65,"deletions":0,"files":[".../centos-7.7/mpstat-A-2-5-streaming.json","tests/fixtures/centos-7.7/mpstat-A-streaming.json","tests/fixtures/centos-7.7/mpstat-streaming.json","tests/test_mpstat_s.py"],"file_stats":[{"name":".../centos-7.7/mpstat-A-2-5-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat-A-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat-streaming.json","lines_changed":1},{"name":"tests/test_mpstat_s.py","lines_changed":62}]},"message":"add mpstat_s tests"},{"commit":"c693c868cacbcd81f44fd383719723dd7a137c87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":352,"deletions":0,"files":["README.md","docs/parsers/mpstat.md","docs/parsers/mpstat_s.md","jc/lib.py","jc/parsers/mpstat.py","jc/parsers/mpstat_s.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/mpstat.md","lines_changed":2},{"name":"docs/parsers/mpstat_s.md","lines_changed":130},{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/mpstat.py","lines_changed":2},{"name":"jc/parsers/mpstat_s.py","lines_changed":211},{"name":"man/jc.1","lines_changed":5}]},"message":"add mpstat streaming parser"},{"commit":"6f98b27a05d6e1f7571a97316b193f096521b959","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":168,"deletions":0,"files":["tests/fixtures/centos-7.7/mpstat-A-2-5.json","tests/fixtures/centos-7.7/mpstat-A-2-5.out","tests/fixtures/centos-7.7/mpstat-A.json","tests/fixtures/centos-7.7/mpstat-A.out","tests/fixtures/centos-7.7/mpstat.json","tests/fixtures/centos-7.7/mpstat.out","tests/test_mpstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/mpstat-A-2-5.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat-A-2-5.out","lines_changed":86},{"name":"tests/fixtures/centos-7.7/mpstat-A.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat-A.out","lines_changed":15},{"name":"tests/fixtures/centos-7.7/mpstat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat.out","lines_changed":5},{"name":"tests/test_mpstat.py","lines_changed":59}]},"message":"add mpstat tests"},{"commit":"d7efd25d88a8f489564ce48223845a16e4ab1cc7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":207,"deletions":1,"files":["EXAMPLES.md","README.md","docs/parsers/mpstat.md","man/jc.1"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":64},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/mpstat.md","lines_changed":136},{"name":"man/jc.1","lines_changed":7}]},"message":"add mpstat to docs"},{"commit":"2cddb1f0bb497be0be071cdcb56bf49d2dafc920","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":94,"deletions":15,"files":["jc/parsers/mpstat.py"],"file_stats":[{"name":"jc/parsers/mpstat.py","lines_changed":109}]},"message":"working mpstat"},{"commit":"ae1c331595dd857d8ae7f8cf93daee1b26be2c3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":30,"deletions":5,"files":["jc/parsers/mpstat.py"],"file_stats":[{"name":"jc/parsers/mpstat.py","lines_changed":35}]},"message":"initial working version"},{"commit":"bc97052ed4ee3bf3f25127968139f2e89a659fe3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":109,"deletions":0,"files":["CHANGELOG","jc/lib.py","jc/parsers/mpstat.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/mpstat.py","lines_changed":107}]},"message":"initial add mpstat parser"},{"commit":"6c3e0e2aa0e8cc375d9f7473930b18957d33f1aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"formatting"},{"commit":"dd052e01469e9e3328f7326d3591365a8e7322eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":26,"deletions":24,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":25},{"name":"jc/parsers/universal.py","lines_changed":25}]},"message":"add underscores to column examples"},{"commit":"54e8f58145f6c4332fbd375d112259ea7abb2d72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":28,"deletions":2,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":15},{"name":"jc/parsers/universal.py","lines_changed":15}]},"message":"add table result examples"},{"commit":"def7aa5764e69cd0cf2c5b70aa62c62023f76c9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":16,"deletions":16,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":16},{"name":"jc/parsers/universal.py","lines_changed":16}]},"message":"formatting"},{"commit":"6986c74f6dceca907ea2e469a332deeb093a122c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":169,"insertions":34,"deletions":837,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/pidstat.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/nmcli.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/pidstat.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/xrandr.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":5},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iostat.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jar_manifest.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/nmcli.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/pidstat.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/rsync.md","lines_changed":5},{"name":"docs/parsers/sfdisk.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/systeminfo.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"docs/parsers/ufw.md","lines_changed":5},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/universal.md","lines_changed":18},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/vmstat.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/xrandr.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5},{"name":"docs/parsers/zipinfo.md","lines_changed":5},{"name":"jc/parsers/acpi.py","lines_changed":5},{"name":"jc/parsers/airport.py","lines_changed":5},{"name":"jc/parsers/airport_s.py","lines_changed":5},{"name":"jc/parsers/arp.py","lines_changed":5},{"name":"jc/parsers/blkid.py","lines_changed":5},{"name":"jc/parsers/cksum.py","lines_changed":5},{"name":"jc/parsers/crontab.py","lines_changed":5},{"name":"jc/parsers/crontab_u.py","lines_changed":5},{"name":"jc/parsers/csv.py","lines_changed":5},{"name":"jc/parsers/date.py","lines_changed":5},{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":5},{"name":"jc/parsers/dir.py","lines_changed":5},{"name":"jc/parsers/dmidecode.py","lines_changed":5},{"name":"jc/parsers/dpkg_l.py","lines_changed":5},{"name":"jc/parsers/du.py","lines_changed":5},{"name":"jc/parsers/env.py","lines_changed":5},{"name":"jc/parsers/file.py","lines_changed":5},{"name":"jc/parsers/finger.py","lines_changed":5},{"name":"jc/parsers/foo.py","lines_changed":5},{"name":"jc/parsers/free.py","lines_changed":5},{"name":"jc/parsers/fstab.py","lines_changed":5},{"name":"jc/parsers/group.py","lines_changed":5},{"name":"jc/parsers/gshadow.py","lines_changed":5},{"name":"jc/parsers/hash.py","lines_changed":5},{"name":"jc/parsers/hashsum.py","lines_changed":5},{"name":"jc/parsers/hciconfig.py","lines_changed":5},{"name":"jc/parsers/history.py","lines_changed":5},{"name":"jc/parsers/hosts.py","lines_changed":5},{"name":"jc/parsers/id.py","lines_changed":5},{"name":"jc/parsers/ifconfig.py","lines_changed":5},{"name":"jc/parsers/ini.py","lines_changed":5},{"name":"jc/parsers/iostat.py","lines_changed":5},{"name":"jc/parsers/iptables.py","lines_changed":5},{"name":"jc/parsers/iw_scan.py","lines_changed":5},{"name":"jc/parsers/jar_manifest.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":5},{"name":"jc/parsers/kv.py","lines_changed":5},{"name":"jc/parsers/last.py","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":5},{"name":"jc/parsers/lsblk.py","lines_changed":5},{"name":"jc/parsers/lsmod.py","lines_changed":5},{"name":"jc/parsers/lsof.py","lines_changed":5},{"name":"jc/parsers/lsusb.py","lines_changed":5},{"name":"jc/parsers/mount.py","lines_changed":5},{"name":"jc/parsers/netstat.py","lines_changed":5},{"name":"jc/parsers/nmcli.py","lines_changed":5},{"name":"jc/parsers/ntpq.py","lines_changed":5},{"name":"jc/parsers/passwd.py","lines_changed":5},{"name":"jc/parsers/pidstat.py","lines_changed":5},{"name":"jc/parsers/ping.py","lines_changed":5},{"name":"jc/parsers/pip_list.py","lines_changed":5},{"name":"jc/parsers/pip_show.py","lines_changed":5},{"name":"jc/parsers/ps.py","lines_changed":5},{"name":"jc/parsers/route.py","lines_changed":5},{"name":"jc/parsers/rpm_qi.py","lines_changed":5},{"name":"jc/parsers/rsync.py","lines_changed":5},{"name":"jc/parsers/sfdisk.py","lines_changed":5},{"name":"jc/parsers/shadow.py","lines_changed":5},{"name":"jc/parsers/ss.py","lines_changed":5},{"name":"jc/parsers/stat.py","lines_changed":5},{"name":"jc/parsers/sysctl.py","lines_changed":5},{"name":"jc/parsers/systemctl.py","lines_changed":5},{"name":"jc/parsers/systemctl_lj.py","lines_changed":5},{"name":"jc/parsers/systemctl_ls.py","lines_changed":5},{"name":"jc/parsers/systemctl_luf.py","lines_changed":5},{"name":"jc/parsers/systeminfo.py","lines_changed":5},{"name":"jc/parsers/time.py","lines_changed":5},{"name":"jc/parsers/timedatectl.py","lines_changed":5},{"name":"jc/parsers/tracepath.py","lines_changed":5},{"name":"jc/parsers/traceroute.py","lines_changed":5},{"name":"jc/parsers/ufw.py","lines_changed":5},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":5},{"name":"jc/parsers/uname.py","lines_changed":5},{"name":"jc/parsers/universal.py","lines_changed":18},{"name":"jc/parsers/upower.py","lines_changed":5},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/vmstat.py","lines_changed":5},{"name":"jc/parsers/w.py","lines_changed":5},{"name":"jc/parsers/wc.py","lines_changed":5},{"name":"jc/parsers/who.py","lines_changed":5},{"name":"jc/parsers/xml.py","lines_changed":5},{"name":"jc/parsers/xrandr.py","lines_changed":5},{"name":"jc/parsers/yaml.py","lines_changed":5},{"name":"jc/parsers/zipinfo.py","lines_changed":5}]},"message":"remove direct parser module example from doc"},{"commit":"b784db404d0569a4c630eb124b37b0b1d0846453","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":17,"insertions":87,"deletions":166,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/pidstat_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/pidstat_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":13},{"name":"docs/parsers/iostat_s.md","lines_changed":20},{"name":"docs/parsers/ls_s.md","lines_changed":16},{"name":"docs/parsers/pidstat_s.md","lines_changed":9},{"name":"docs/parsers/ping_s.md","lines_changed":13},{"name":"docs/parsers/rsync_s.md","lines_changed":13},{"name":"docs/parsers/stat_s.md","lines_changed":13},{"name":"docs/parsers/vmstat_s.md","lines_changed":23},{"name":"jc/parsers/csv_s.py","lines_changed":13},{"name":"jc/parsers/foo_s.py","lines_changed":13},{"name":"jc/parsers/iostat_s.py","lines_changed":20},{"name":"jc/parsers/ls_s.py","lines_changed":16},{"name":"jc/parsers/pidstat_s.py","lines_changed":9},{"name":"jc/parsers/ping_s.py","lines_changed":13},{"name":"jc/parsers/rsync_s.py","lines_changed":13},{"name":"jc/parsers/stat_s.py","lines_changed":13},{"name":"jc/parsers/vmstat_s.py","lines_changed":23}]},"message":"streaming doc formatting update"},{"commit":"8aee4517bb4c2eebdd9873f7eb0827cd33b85519","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":26,"files":["docs/parsers/pidstat_s.md","jc/parsers/pidstat_s.py"],"file_stats":[{"name":"docs/parsers/pidstat_s.md","lines_changed":19},{"name":"jc/parsers/pidstat_s.py","lines_changed":19}]},"message":"doc formatting"},{"commit":"a5fb8fbf94b3b80bef82f078ad6582260b13e374","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":17,"insertions":164,"deletions":148,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/pidstat_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/pidstat_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":12},{"name":"docs/parsers/iostat_s.md","lines_changed":14},{"name":"docs/parsers/ls_s.md","lines_changed":14},{"name":"docs/parsers/pidstat_s.md","lines_changed":53},{"name":"docs/parsers/ping_s.md","lines_changed":14},{"name":"docs/parsers/rsync_s.md","lines_changed":14},{"name":"docs/parsers/stat_s.md","lines_changed":14},{"name":"docs/parsers/vmstat_s.md","lines_changed":14},{"name":"jc/parsers/csv_s.py","lines_changed":12},{"name":"jc/parsers/foo_s.py","lines_changed":14},{"name":"jc/parsers/iostat_s.py","lines_changed":14},{"name":"jc/parsers/ls_s.py","lines_changed":14},{"name":"jc/parsers/pidstat_s.py","lines_changed":53},{"name":"jc/parsers/ping_s.py","lines_changed":14},{"name":"jc/parsers/rsync_s.py","lines_changed":14},{"name":"jc/parsers/stat_s.py","lines_changed":14},{"name":"jc/parsers/vmstat_s.py","lines_changed":14}]},"message":"streaming doc update"},{"commit":"b9365e2ac28c3eacf53bc101857f7f1d7286ec20","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":74,"deletions":0,"files":[".../centos-7.7/pidstat-hdlrsuw-2-5-streaming.json",".../centos-7.7/pidstat-hdlrsuw-streaming.json",".../fixtures/centos-7.7/pidstat-hl-streaming.json","tests/test_pidstat_s.py"],"file_stats":[{"name":".../centos-7.7/pidstat-hdlrsuw-2-5-streaming.json","lines_changed":1},{"name":".../centos-7.7/pidstat-hdlrsuw-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/pidstat-hl-streaming.json","lines_changed":1},{"name":"tests/test_pidstat_s.py","lines_changed":71}]},"message":"add pidstat-s tests"},{"commit":"696338c1a3d462afbe677a6f2ebe08d06ef4046a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":38,"deletions":0,"files":["tests/_test_foo_s.py"],"file_stats":[{"name":"tests/_test_foo_s.py","lines_changed":38}]},"message":"add streaming test template"},{"commit":"4f0616190bb842411353d65650b78a65d8cbdc28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/pidstat_s.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"3278cb0de301ee542b1fe8245a6c359193373b6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":10,"files":["docs/parsers/arp.md","jc/parsers/arp.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":23}]},"message":"add type hints"},{"commit":"4fc04256a567c502a88ac8a1bd189746387c93f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["jc/parsers/foo_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":4},{"name":"jc/parsers/pidstat_s.py","lines_changed":4},{"name":"jc/parsers/rsync_s.py","lines_changed":4}]},"message":"rollback noReturn to tuple"},{"commit":"e4ae0fea63c0386c1b3239607fd6a58738d23633","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":8,"deletions":8,"files":["docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","jc/parsers/foo_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"docs/parsers/pidstat_s.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":4},{"name":"jc/parsers/pidstat_s.py","lines_changed":4},{"name":"jc/parsers/rsync_s.py","lines_changed":4}]},"message":"fix type annotation"},{"commit":"d3727ea0906d6167aa48c340519242b010469d98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":99,"deletions":1,"files":["CHANGELOG","README.md","docs/parsers/pidstat_s.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/pidstat_s.md","lines_changed":91},{"name":"man/jc.1","lines_changed":5}]},"message":"doc update"},{"commit":"0d13909cf63d14008607c5640d074ab4073115e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":168,"deletions":0,"files":["jc/lib.py","jc/parsers/pidstat_s.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/pidstat_s.py","lines_changed":167}]},"message":"add pidstat-s parser"},{"commit":"c52ca20e285895d2afb685a2a5ca275de7901033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/pidstat.py"],"file_stats":[{"name":"jc/parsers/pidstat.py","lines_changed":2}]},"message":"fix comment"},{"commit":"21f27f26c81c75234221a5193c7d3903323e2032","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":72,"deletions":0,"files":["tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.json","tests/fixtures/centos-7.7/pidstat-hdlrsuw.json","tests/fixtures/centos-7.7/pidstat-hl.json","tests/test_pidstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/pidstat-hdlrsuw.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/pidstat-hl.json","lines_changed":1},{"name":"tests/test_pidstat.py","lines_changed":69}]},"message":"add pidstat tests"},{"commit":"5e7a87f39782d12070a895440ff541800df91b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":35,"deletions":0,"files":["tests/_test_foo.py"],"file_stats":[{"name":"tests/_test_foo.py","lines_changed":35}]},"message":"add test template"},{"commit":"845d763829acd03fff1d2fad6e9691f04bd1a2aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/pidstat.md","jc/parsers/pidstat.py"],"file_stats":[{"name":"docs/parsers/pidstat.md","lines_changed":4},{"name":"jc/parsers/pidstat.py","lines_changed":4}]},"message":"format docs to fit 80 columns"},{"commit":"f5c7d52ec72f5ff4b77d5ac4491f330575b9f10f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":10,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":6},{"name":"templates/manpage_template","lines_changed":6}]},"message":"formatting"},{"commit":"c3198a58744803f52113f80967c7259d781e2328","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":22,"deletions":12,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":17},{"name":"templates/manpage_template","lines_changed":17}]},"message":"formatting"},{"commit":"bbd4afa73542ba6596aed77426bb494fbcf23196","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["README.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"man/jc.1","lines_changed":7}]},"message":"add pidstat to docs"},{"commit":"ae754a84bf5fc35b248bbc5f7b0fa8e871765819","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":263,"deletions":33,"files":["docs/parsers/arp.md","docs/parsers/pidstat.md","jc/parsers/pidstat.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/pidstat.md","lines_changed":156},{"name":"jc/parsers/pidstat.py","lines_changed":138}]},"message":"doc update"},{"commit":"3389eb5debe0f0ba01ece01e20048608bf357e70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":219,"deletions":9,"files":["jc/parsers/pidstat.py","tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.out","tests/fixtures/centos-7.7/pidstat-hdlrsuw.out","tests/fixtures/centos-7.7/pidstat-hl.out"],"file_stats":[{"name":"jc/parsers/pidstat.py","lines_changed":52},{"name":"tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.out","lines_changed":47},{"name":"tests/fixtures/centos-7.7/pidstat-hdlrsuw.out","lines_changed":83},{"name":"tests/fixtures/centos-7.7/pidstat-hl.out","lines_changed":46}]},"message":"initial working parser"},{"commit":"01f2c1e71f87ab401d487be4d6d150cb67c91437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":162,"deletions":2,"files":["CHANGELOG","jc/lib.py","jc/parsers/pidstat.py","setup.py","tests/fixtures/centos-7.7/pidstat.out"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/lib.py","lines_changed":3},{"name":"jc/parsers/pidstat.py","lines_changed":112},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/pidstat.out","lines_changed":44}]},"message":"add pidstat parser"},{"commit":"8bfbf8f1bcd233a8ecd34012e140eb29164ca5fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"simplify error message"},{"commit":"f4242669bac3af5eb196c46d4146823aacec40ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":10,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":12}]},"message":"minor cleanup"},{"commit":"bebd9331f1fb9b80f8cb4a5cfacd68461743004e","merge":"9861983 ac61e9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #211 from kellyjonbrazil/master\n\nsync to dev"},{"commit":"ac61e9ad2c9c4e864db02db04cbf907fb0efd99b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"templates/readme_template","lines_changed":1}]},"message":"add pypi link"},{"commit":"648ef4d8a9c33a36d4bb2c135fe59b031de8f24c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"templates/readme_template","lines_changed":4}]},"message":"update badge links"},{"commit":"727fc9a701e9aae75d3d2b708010da1d0dc8781a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/date.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"306512d6bb53af18516fc10b15c7ec79cb02cc98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":7,"deletions":4,"files":["CHANGELOG","jc/lib.py","jc/parsers/date.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/lib.py","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":4},{"name":"setup.py","lines_changed":2}]},"message":"force AM/PM to uppercase in date parser"},{"commit":"6afb1d389ca9dfd7880386d380fee032b7eb92e2","merge":"961968a 9861983","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #209 from kellyjonbrazil/dev\n\nDev v1.18.4"},{"commit":"98619834818c181cb50a9605fe166b6153c46095","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"ca79053db08542849136ae13fdb4d1d90b79a7e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":2}]},"message":"document pydoc version"},{"commit":"29c263f87810f8566ebdad2358e99896391adfd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":93,"insertions":115,"deletions":115,"files":["docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/streaming.md","docs/utils.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":16},{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/dpkg_l.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/finger.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/gshadow.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iostat.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/jar_manifest.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/kv.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/nmcli.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/rsync.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/stat_s.md","lines_changed":2},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/universal.md","lines_changed":4},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/xrandr.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"docs/parsers/zipinfo.md","lines_changed":2},{"name":"docs/streaming.md","lines_changed":12},{"name":"docs/utils.md","lines_changed":20}]},"message":"pydoc formatting fixes"},{"commit":"128c3c170abc6a702ae044b073fb9d992d4262b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"doc update"},{"commit":"a531ab8864fca27b55d83b55055eaef1c36128cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"formatting"},{"commit":"0c1be7cc11ec75a5738483d68d053e702eb34fc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":18,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":11},{"name":"templates/readme_template","lines_changed":11}]},"message":"reduce dig example size"},{"commit":"e4222b45f54e6179e22d7924c083e4642b9974ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":4}]},"message":"fix names to mod names"},{"commit":"ac32c69c31e8eff22252d7aded08f6cb14622086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":2},{"name":"jc/parsers/universal.py","lines_changed":2}]},"message":"formatting"},{"commit":"cb2dfeac8d44b733ad9d364e8c6d233a381bfae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":199,"insertions":334,"deletions":326,"files":["README.md","docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/streaming.md","docs/utils.md","jc/__init__.py","jc/cli.py","jc/exceptions.py","jc/lib.py","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat_freebsd_osx.py","jc/parsers/netstat_linux.py","jc/parsers/nmcli.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/xrandr.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py","jc/streaming.py","jc/utils.py","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docgen.sh","lines_changed":6},{"name":"docs/lib.md","lines_changed":25},{"name":"docs/parsers/acpi.md","lines_changed":4},{"name":"docs/parsers/airport.md","lines_changed":4},{"name":"docs/parsers/airport_s.md","lines_changed":4},{"name":"docs/parsers/arp.md","lines_changed":4},{"name":"docs/parsers/blkid.md","lines_changed":4},{"name":"docs/parsers/cksum.md","lines_changed":4},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"docs/parsers/crontab_u.md","lines_changed":4},{"name":"docs/parsers/csv.md","lines_changed":4},{"name":"docs/parsers/csv_s.md","lines_changed":4},{"name":"docs/parsers/date.md","lines_changed":4},{"name":"docs/parsers/df.md","lines_changed":4},{"name":"docs/parsers/dig.md","lines_changed":4},{"name":"docs/parsers/dir.md","lines_changed":4},{"name":"docs/parsers/dmidecode.md","lines_changed":4},{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"docs/parsers/du.md","lines_changed":4},{"name":"docs/parsers/env.md","lines_changed":4},{"name":"docs/parsers/file.md","lines_changed":4},{"name":"docs/parsers/finger.md","lines_changed":4},{"name":"docs/parsers/free.md","lines_changed":4},{"name":"docs/parsers/fstab.md","lines_changed":4},{"name":"docs/parsers/group.md","lines_changed":4},{"name":"docs/parsers/gshadow.md","lines_changed":4},{"name":"docs/parsers/hash.md","lines_changed":4},{"name":"docs/parsers/hashsum.md","lines_changed":4},{"name":"docs/parsers/hciconfig.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":4},{"name":"docs/parsers/hosts.md","lines_changed":4},{"name":"docs/parsers/id.md","lines_changed":4},{"name":"docs/parsers/ifconfig.md","lines_changed":4},{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"docs/parsers/iostat.md","lines_changed":4},{"name":"docs/parsers/iostat_s.md","lines_changed":4},{"name":"docs/parsers/iptables.md","lines_changed":4},{"name":"docs/parsers/iw_scan.md","lines_changed":4},{"name":"docs/parsers/jar_manifest.md","lines_changed":4},{"name":"docs/parsers/jobs.md","lines_changed":4},{"name":"docs/parsers/kv.md","lines_changed":4},{"name":"docs/parsers/last.md","lines_changed":4},{"name":"docs/parsers/ls.md","lines_changed":4},{"name":"docs/parsers/ls_s.md","lines_changed":4},{"name":"docs/parsers/lsblk.md","lines_changed":4},{"name":"docs/parsers/lsmod.md","lines_changed":4},{"name":"docs/parsers/lsof.md","lines_changed":4},{"name":"docs/parsers/lsusb.md","lines_changed":4},{"name":"docs/parsers/mount.md","lines_changed":4},{"name":"docs/parsers/netstat.md","lines_changed":4},{"name":"docs/parsers/nmcli.md","lines_changed":4},{"name":"docs/parsers/ntpq.md","lines_changed":4},{"name":"docs/parsers/passwd.md","lines_changed":4},{"name":"docs/parsers/ping.md","lines_changed":4},{"name":"docs/parsers/ping_s.md","lines_changed":4},{"name":"docs/parsers/pip_list.md","lines_changed":4},{"name":"docs/parsers/pip_show.md","lines_changed":4},{"name":"docs/parsers/ps.md","lines_changed":4},{"name":"docs/parsers/route.md","lines_changed":4},{"name":"docs/parsers/rpm_qi.md","lines_changed":4},{"name":"docs/parsers/rsync.md","lines_changed":4},{"name":"docs/parsers/rsync_s.md","lines_changed":9},{"name":"docs/parsers/sfdisk.md","lines_changed":4},{"name":"docs/parsers/shadow.md","lines_changed":4},{"name":"docs/parsers/ss.md","lines_changed":4},{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"docs/parsers/stat_s.md","lines_changed":4},{"name":"docs/parsers/sysctl.md","lines_changed":4},{"name":"docs/parsers/systemctl.md","lines_changed":4},{"name":"docs/parsers/systemctl_lj.md","lines_changed":4},{"name":"docs/parsers/systemctl_ls.md","lines_changed":4},{"name":"docs/parsers/systemctl_luf.md","lines_changed":4},{"name":"docs/parsers/systeminfo.md","lines_changed":4},{"name":"docs/parsers/time.md","lines_changed":4},{"name":"docs/parsers/timedatectl.md","lines_changed":4},{"name":"docs/parsers/tracepath.md","lines_changed":4},{"name":"docs/parsers/traceroute.md","lines_changed":4},{"name":"docs/parsers/ufw.md","lines_changed":4},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":4},{"name":"docs/parsers/uname.md","lines_changed":4},{"name":"docs/parsers/universal.md","lines_changed":6},{"name":"docs/parsers/upower.md","lines_changed":4},{"name":"docs/parsers/uptime.md","lines_changed":4},{"name":"docs/parsers/vmstat.md","lines_changed":4},{"name":"docs/parsers/vmstat_s.md","lines_changed":4},{"name":"docs/parsers/w.md","lines_changed":4},{"name":"docs/parsers/wc.md","lines_changed":4},{"name":"docs/parsers/who.md","lines_changed":4},{"name":"docs/parsers/xml.md","lines_changed":4},{"name":"docs/parsers/xrandr.md","lines_changed":4},{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"docs/parsers/zipinfo.md","lines_changed":4},{"name":"docs/readme.md","lines_changed":2},{"name":"docs/streaming.md","lines_changed":17},{"name":"docs/utils.md","lines_changed":29},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/cli.py","lines_changed":4},{"name":"jc/exceptions.py","lines_changed":2},{"name":"jc/lib.py","lines_changed":2},{"name":"jc/parsers/acpi.py","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/blkid.py","lines_changed":2},{"name":"jc/parsers/cksum.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"jc/parsers/csv.py","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/dir.py","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":2},{"name":"jc/parsers/dpkg_l.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/finger.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/group.py","lines_changed":2},{"name":"jc/parsers/gshadow.py","lines_changed":2},{"name":"jc/parsers/hash.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":2},{"name":"jc/parsers/hciconfig.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/iostat.py","lines_changed":2},{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2},{"name":"jc/parsers/jar_manifest.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/kv.py","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/lsusb.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/netstat_freebsd_osx.py","lines_changed":2},{"name":"jc/parsers/netstat_linux.py","lines_changed":2},{"name":"jc/parsers/nmcli.py","lines_changed":2},{"name":"jc/parsers/ntpq.py","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":2},{"name":"jc/parsers/ping.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/rpm_qi.py","lines_changed":2},{"name":"jc/parsers/rsync.py","lines_changed":2},{"name":"jc/parsers/rsync_s.py","lines_changed":2},{"name":"jc/parsers/sfdisk.py","lines_changed":2},{"name":"jc/parsers/shadow.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/stat_s.py","lines_changed":2},{"name":"jc/parsers/sysctl.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/systeminfo.py","lines_changed":2},{"name":"jc/parsers/time.py","lines_changed":2},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/ufw.py","lines_changed":2},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/universal.py","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/parsers/wc.py","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":2},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/xrandr.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2},{"name":"jc/parsers/zipinfo.py","lines_changed":2},{"name":"jc/streaming.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"templates/manpage_template","lines_changed":2},{"name":"templates/readme_template","lines_changed":4}]},"message":"change name to JSON Convert"},{"commit":"9a3602e70b865a3015bd700b30d1076e17511a9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":4},{"name":"jc/lib.py","lines_changed":4}]},"message":"doc update"},{"commit":"a9f53ee258e18bc90934e263d8dc96feee84e939","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":4,"files":["jc/cli.py","jc/lib.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4},{"name":"jc/lib.py","lines_changed":15}]},"message":"optimize streaming parser detection in cli"},{"commit":"6be3d3d98222a262c5138bb09f2951ccfab96110","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":43,"deletions":1,"files":["CHANGELOG","docs/lib.md","docs/readme.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docs/lib.md","lines_changed":25},{"name":"docs/readme.md","lines_changed":16}]},"message":"doc update"},{"commit":"e49df7208377ab34a74240a06f35f17fee4b8203","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"use streaming parser list to find streaming parsers"},{"commit":"7ede7be7bf7b1a7d29d158b3b21c20fff4990e72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":42,"deletions":0,"files":["jc/__init__.py","jc/lib.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":17},{"name":"jc/lib.py","lines_changed":25}]},"message":"add standard and streaming list functions"},{"commit":"4758e28a36e2a55497e4f722d386a6b5cc30dc4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":16,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":18},{"name":"jc/__init__.py","lines_changed":18}]},"message":"formatting"},{"commit":"4a1ee151b3cb054d84cd964fd62f5855f765751d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":9,"deletions":11,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py"],"file_stats":[{"name":"docs/parsers/nmcli.md","lines_changed":4},{"name":"jc/parsers/nmcli.py","lines_changed":16}]},"message":"add dhcp6 options to docs"},{"commit":"8c8afc1a922e3c30fcf501d169b33a68b65cd3e0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":60,"deletions":24,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":42},{"name":"jc/__init__.py","lines_changed":42}]},"message":"formatting"},{"commit":"ed205f7720d98c225c917c252ed7a6c9e6e8c2b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":9,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/nmcli.md","lines_changed":8},{"name":"jc/parsers/nmcli.py","lines_changed":8},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"d65f7ae992abc33140c00714d442290103661757","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":41,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":41}]},"message":"add nmcli"},{"commit":"e2ffef57b9a474048fe72cf42aebfa6bfaf2e42b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_nmcli.py"],"file_stats":[{"name":"tests/test_nmcli.py","lines_changed":2}]},"message":"fix test"},{"commit":"002caa9fb3b65f1ae64df25cc39c3de130403e76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":252,"deletions":0,"files":[".../fedora32/nmcli-connection-show-ens33.json",".../fedora32/nmcli-connection-show-ens33.out",".../fixtures/fedora32/nmcli-device-show-ens33.json",".../fixtures/fedora32/nmcli-device-show-ens33.out","tests/fixtures/fedora32/nmcli-device-show.json","tests/fixtures/fedora32/nmcli-device-show.out","tests/test_nmcli.py"],"file_stats":[{"name":".../fedora32/nmcli-connection-show-ens33.json","lines_changed":1},{"name":".../fedora32/nmcli-connection-show-ens33.out","lines_changed":148},{"name":".../fixtures/fedora32/nmcli-device-show-ens33.json","lines_changed":1},{"name":".../fixtures/fedora32/nmcli-device-show-ens33.out","lines_changed":26},{"name":"tests/fixtures/fedora32/nmcli-device-show.json","lines_changed":1},{"name":"tests/fixtures/fedora32/nmcli-device-show.out","lines_changed":39},{"name":"tests/test_nmcli.py","lines_changed":36}]},"message":"add fedora tests"},{"commit":"b7c6faf3daf8eb0c42a222778baa440c5a018c75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"enhance error message"},{"commit":"554ca61d1764b81dea06b6b013d0444072f0662a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":165,"deletions":0,"files":[".../fixtures/centos-7.7/nmcli-connection-all.json",".../centos-7.7/nmcli-connection-show-ens33.json","tests/fixtures/centos-7.7/nmcli-connection.json","tests/fixtures/centos-7.7/nmcli-device-all.json",".../centos-7.7/nmcli-device-show-ens33.json",".../fixtures/centos-7.7/nmcli-device-show-lo.json","tests/fixtures/centos-7.7/nmcli-device-show.json","tests/fixtures/centos-7.7/nmcli-device.json","tests/fixtures/centos-7.7/nmcli-general-all.json",".../centos-7.7/nmcli-general-permissions.json","tests/test_nmcli.py"],"file_stats":[{"name":".../fixtures/centos-7.7/nmcli-connection-all.json","lines_changed":1},{"name":".../centos-7.7/nmcli-connection-show-ens33.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-connection.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-device-all.json","lines_changed":1},{"name":".../centos-7.7/nmcli-device-show-ens33.json","lines_changed":1},{"name":".../fixtures/centos-7.7/nmcli-device-show-lo.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-device-show.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-device.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-general-all.json","lines_changed":1},{"name":".../centos-7.7/nmcli-general-permissions.json","lines_changed":1},{"name":"tests/test_nmcli.py","lines_changed":155}]},"message":"add tests"},{"commit":"7b9722d255a16981099dc803beda7abe0d46106a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":26,"deletions":34,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":30},{"name":"templates/manpage_template","lines_changed":30}]},"message":"fix formatting"},{"commit":"5505bde8ef77db0885f08d8d04160cbc4418dd67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/zipinfo.md"],"file_stats":[{"name":"docs/parsers/zipinfo.md","lines_changed":2}]},"message":"doc update"},{"commit":"dbcd9a4060647be24bca2a8d577f11925a9ac210","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":2}]},"message":"bump version to 1.0"},{"commit":"4bdeb2b3aa063c2772f5c44e52acbe16e915cc3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/xrandr.py"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":2}]},"message":"simplify warning message"},{"commit":"6ae1d03187c6d4b669f6f74db1be7c9cf07adaed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py"],"file_stats":[{"name":"docs/parsers/nmcli.md","lines_changed":2},{"name":"jc/parsers/nmcli.py","lines_changed":2}]},"message":"doc fix"},{"commit":"f75b06abe4af152be094f8bc1ba5ce66b25e35e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":180,"deletions":3,"files":["README.md","docs/parsers/nmcli.md","jc/parsers/nmcli.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/nmcli.md","lines_changed":172},{"name":"jc/parsers/nmcli.py","lines_changed":3},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update"},{"commit":"1923925710dadc4116202855ae884ef18394d428","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"update changelog"},{"commit":"2c5c57ae04df3b7abfb1c3423c3350c7c2ab5dcd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/lib.py","setup.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"f4d11d697e000135720a971edf84dcad31a1bec8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":155,"deletions":15,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":170}]},"message":"finish use cases and doc"},{"commit":"7f409b7082aa9525cc9280e3c5c92bc82089cf14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"enhance ParseError cli message"},{"commit":"937fa5aad2519f588c6d0feb8f08211f6b99872f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":0,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":20}]},"message":"split dhcp options"},{"commit":"19dcef513565c34a31f6d735577da5e25f9bd2cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":69,"deletions":2,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":71}]},"message":"firm up flow. add/remove text. parse routes"},{"commit":"3d01356461eb2790f859968da7f5cb4fd2ee9898","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":3,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":30}]},"message":"add text_kv function"},{"commit":"2d6f666fa4c791e7995f6b0c1490dac73ce224c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":61,"deletions":16,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":77}]},"message":"add dev show and conn show parsers"},{"commit":"4dda895f122ecc19b267ed1485cf656bae76ff07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":404,"deletions":0,"files":["jc/lib.py","jc/parsers/nmcli.py","tests/fixtures/centos-7.7/nmcli-connection-all.out",".../centos-7.7/nmcli-connection-show-ens33.out","tests/fixtures/centos-7.7/nmcli-connection.out","tests/fixtures/centos-7.7/nmcli-device-all.out",".../centos-7.7/nmcli-device-show-ens33.out","tests/fixtures/centos-7.7/nmcli-device-show-lo.out","tests/fixtures/centos-7.7/nmcli-device-show.out","tests/fixtures/centos-7.7/nmcli-device.out","tests/fixtures/centos-7.7/nmcli-general-all.out",".../centos-7.7/nmcli-general-permissions.out","tests/fixtures/centos-7.7/nmcli.out"],"file_stats":[{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/nmcli.py","lines_changed":130},{"name":"tests/fixtures/centos-7.7/nmcli-connection-all.out","lines_changed":3},{"name":".../centos-7.7/nmcli-connection-show-ens33.out","lines_changed":136},{"name":"tests/fixtures/centos-7.7/nmcli-connection.out","lines_changed":3},{"name":"tests/fixtures/centos-7.7/nmcli-device-all.out","lines_changed":5},{"name":".../centos-7.7/nmcli-device-show-ens33.out","lines_changed":18},{"name":"tests/fixtures/centos-7.7/nmcli-device-show-lo.out","lines_changed":12},{"name":"tests/fixtures/centos-7.7/nmcli-device-show.out","lines_changed":42},{"name":"tests/fixtures/centos-7.7/nmcli-device.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/nmcli-general-all.out","lines_changed":3},{"name":".../centos-7.7/nmcli-general-permissions.out","lines_changed":18},{"name":"tests/fixtures/centos-7.7/nmcli.out","lines_changed":29}]},"message":"initial nmcli parser"},{"commit":"52617b1722ba2f089716b069f78f70a865430d61","merge":"3afaa48 961968a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #208 from kellyjonbrazil/master\n\nsync to dev"},{"commit":"961968a0fcaf37b64bc850c4945ba4b805a1fe54","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":26,"deletions":23,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":24},{"name":"jc/parsers/xrandr.py","lines_changed":25}]},"message":"fix schema"},{"commit":"f026a788e5ca1231927e71fdbb1dadb2365a6518","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":62,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":62}]},"message":"add xrandr example"},{"commit":"2f7c03eb35520be916c28a687031f8c6425839ba","merge":"681176e 3afaa48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #207 from kellyjonbrazil/dev\n\nDev v1.18.3"},{"commit":"3afaa48eee081e28262d1762c5ec23d318012822","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":15,"insertions":15,"deletions":15,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"docs/parsers/stat_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/rsync_s.py","lines_changed":2},{"name":"jc/parsers/stat_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]},"message":"doc update"},{"commit":"3201452564fb0fb44ef9cc32217339370bd2521e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":2},{"name":"jc/parsers/xrandr.py","lines_changed":2}]},"message":"add -p to example"},{"commit":"7ee1e34fc71c0dbc08ba482b787d560fd5125f64","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":116,"deletions":4,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":60},{"name":"jc/parsers/xrandr.py","lines_changed":60}]},"message":"doc update"},{"commit":"67dbf050161201f5016899591e81ab6253ac2322","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":2},{"name":"jc/parsers/xrandr.py","lines_changed":2}]},"message":"add type annotations"},{"commit":"4ac9f2e3dad4e7bd270bf5a8e61b729838b2c89c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":10,"deletions":17,"files":["CHANGELOG","docs/parsers/rsync.md","docs/parsers/rsync_s.md","jc/parsers/rsync.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docs/parsers/rsync.md","lines_changed":6},{"name":"docs/parsers/rsync_s.md","lines_changed":6},{"name":"jc/parsers/rsync.py","lines_changed":6},{"name":"jc/parsers/rsync_s.py","lines_changed":6}]},"message":"doc update"},{"commit":"3f5f6e39a777ef524cb3a06a01321bb8c31d930d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":100,"deletions":98,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":99},{"name":"jc/parsers/xrandr.py","lines_changed":99}]},"message":"formatting"},{"commit":"4723db8e3cc4946b14c83b25d6e8c6d2309aa72e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":195,"deletions":77,"files":["README.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/xrandr.md","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/xrandr.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/rsync.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"docs/parsers/xrandr.md","lines_changed":109},{"name":"jc/parsers/rsync.py","lines_changed":2},{"name":"jc/parsers/rsync_s.py","lines_changed":2},{"name":"jc/parsers/xrandr.py","lines_changed":147},{"name":"man/jc.1","lines_changed":7}]},"message":"doc updates"},{"commit":"ca914ec77d1fc77e42860189e62ac2fb203d4931","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":2,"files":["tests/test_xrandr.py"],"file_stats":[{"name":"tests/test_xrandr.py","lines_changed":13}]},"message":"add nodata test"},{"commit":"dcc7f3f357ef016b4583fc1320fd2394788f271f","merge":"184ef3a cbdc666","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #204 from lyterk/xrandr\n\nNew parser: xrandr"},{"commit":"cbdc66623671da335eafe132b7af79f884856f1d","author":"Kevin Lyter","author_email":"lyterk@sent.com","commit_by":"Kevin Lyter","commit_by_email":"lyterk@sent.com","stats":{"files_changed":3,"insertions":2,"deletions":30,"files":["jc/parsers/xrandr.py",".../{simple_xrandr.json => xrandr_simple.json}",".../{simple_xrandr.out => xrandr_simple.out}"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":32},{"name":".../{simple_xrandr.json => xrandr_simple.json}","lines_changed":0},{"name":".../{simple_xrandr.out => xrandr_simple.out}","lines_changed":0}]},"message":"Return empty object if no results and filenames\n\n- If no results are returned, return {} instead of {\"screens\": [],\n\"unassociated_devices\": []}\n- simple_xrandr -> xrandr_simple"},{"commit":"184ef3a1faeb406ce62076cff637ee86d61541fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":11,"deletions":3,"files":["docs/parsers/rsync.md","docs/parsers/rsync_s.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/rsync.md","lines_changed":6},{"name":"docs/parsers/rsync_s.md","lines_changed":6},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"c732f759445e335fe36586859b6fde7e27bb8901","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":10,"deletions":2,"files":["jc/parsers/rsync.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":6},{"name":"jc/parsers/rsync_s.py","lines_changed":6}]},"message":"doc update"},{"commit":"7a1ae4f5fc5328c32bf77235cfbd9f83ec995053","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":105,"deletions":0,"files":["tests/{test_lib.py => test_jc_lib.py}","tests/test_jc_streaming.py","tests/{test_utils.py => test_jc_utils.py}"],"file_stats":[{"name":"tests/{test_lib.py => test_jc_lib.py}","lines_changed":0},{"name":"tests/test_jc_streaming.py","lines_changed":61},{"name":"tests/{test_utils.py => test_jc_utils.py}","lines_changed":44}]},"message":"add library tests"},{"commit":"d04bc3757c482ec9062b2da91ded76c5dd6d106b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add xrandr"},{"commit":"73e8391653145412cd852aca349466018c8b9084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":3,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":11}]},"message":"formatting"},{"commit":"f6c1463c1578db264ccb3d4c2677857ed906e965","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":44,"deletions":24,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":68}]},"message":"formatting"},{"commit":"d392c7f901a9d7c57617fbd03bd3f88ee0bf4132","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":20,"deletions":13,"files":["docs/parsers/date.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/ls.md","docs/parsers/rpm_qi.md","docs/parsers/stat.md","docs/parsers/systeminfo.md","docs/parsers/timedatectl.md","docs/parsers/upower.md","docs/parsers/vmstat.md","docs/parsers/who.md","docs/utils.md"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":11}]},"message":"doc update"},{"commit":"d0387f58205b2fd9b9860ce9656bb29ceec54340","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":16,"insertions":34,"deletions":29,"files":["jc/parsers/date.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/systeminfo.py","jc/parsers/timedatectl.py","jc/parsers/upower.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":4},{"name":"jc/parsers/dir.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/rpm_qi.py","lines_changed":6},{"name":"jc/parsers/rsync.py","lines_changed":2},{"name":"jc/parsers/rsync_s.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"jc/parsers/stat_s.py","lines_changed":2},{"name":"jc/parsers/systeminfo.py","lines_changed":8},{"name":"jc/parsers/timedatectl.py","lines_changed":4},{"name":"jc/parsers/upower.py","lines_changed":5},{"name":"jc/parsers/vmstat.py","lines_changed":5},{"name":"jc/parsers/vmstat_s.py","lines_changed":3},{"name":"jc/parsers/who.py","lines_changed":4}]},"message":"add timestamp format hints for better performance"},{"commit":"76f92908a3ba9cbadcc8e972afa8b1c4a69509bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":44,"deletions":9,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":53}]},"message":"add format hints for performance optimization"},{"commit":"1a115da67bdce9acfefbfb71fbac37e234b1babd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"add lru_cache maxsize for python 3.7 support"},{"commit":"f0a37ccf301eee5133a83b5dd96986fef0c38e7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":11}]},"message":"use lru_cache for significant performance boost to timestamp"},{"commit":"f331f53a531169520a4d8ea15d277560a49aedb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["CHANGELOG","jc/utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/utils.py","lines_changed":2}]},"message":"use !r formatting instead of quotes"},{"commit":"8611aff06b18212b7292d564beb27a2062fc3f41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/parsers/rsync_s.md","jc/parsers/rsync_s.py"],"file_stats":[{"name":"docs/parsers/rsync_s.md","lines_changed":8},{"name":"jc/parsers/rsync_s.py","lines_changed":8}]},"message":"add examples"},{"commit":"2f3f78e8d35a0ccccde0f84417400acdfe7fe0aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":16,"insertions":194,"deletions":185,"files":["docgen.sh","docs/parsers/rsync_s.md","docs/readme.md","docs/streaming.md","docs/utils.md","jc/__init__.py","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/streaming.py","man/jc.1"],"file_stats":[{"name":"docgen.sh","lines_changed":3},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"docs/readme.md","lines_changed":2},{"name":"docs/streaming.md","lines_changed":114},{"name":"docs/utils.md","lines_changed":93},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":10},{"name":"jc/parsers/foo_s.py","lines_changed":14},{"name":"jc/parsers/iostat_s.py","lines_changed":15},{"name":"jc/parsers/ls_s.py","lines_changed":14},{"name":"jc/parsers/ping_s.py","lines_changed":4},{"name":"jc/parsers/rsync_s.py","lines_changed":25},{"name":"jc/parsers/stat_s.py","lines_changed":22},{"name":"jc/parsers/vmstat_s.py","lines_changed":16},{"name":"jc/streaming.py","lines_changed":41},{"name":"man/jc.1","lines_changed":2}]},"message":"refine streaming parsers"},{"commit":"d1e0ee6123dfecd48d074cb7a40e98a15b6adcb9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":8,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":14}]},"message":"use new streaming functions"},{"commit":"45314c98083067f1f6fae9c477c99fabec223f29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":112,"deletions":102,"files":["jc/streaming.py","jc/utils.py"],"file_stats":[{"name":"jc/streaming.py","lines_changed":111},{"name":"jc/utils.py","lines_changed":103}]},"message":"move some functions to streaming"},{"commit":"df00945b46e27e10107f48d186eedf80b55bd40e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":59,"deletions":49,"files":["jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":15},{"name":"jc/parsers/iostat_s.py","lines_changed":15},{"name":"jc/parsers/ls_s.py","lines_changed":17},{"name":"jc/parsers/ping_s.py","lines_changed":19},{"name":"jc/parsers/rsync_s.py","lines_changed":21},{"name":"jc/parsers/stat_s.py","lines_changed":21}]},"message":"move try/except inside for loop"},{"commit":"fda0050d867bcbe4f1d7e024b08e9881d0f57735","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":191,"deletions":0,"files":[".../centos-7.7/rsync-i-logfile-streaming.json","tests/fixtures/centos-7.7/rsync-i-streaming.json",".../centos-7.7/rsync-i-v-logfile-streaming.json",".../centos-7.7/rsync-i-vv-logfile-streaming.json",".../rsync-i-vvv-logfile-nochange-streaming.json",".../centos-7.7/rsync-i-vvv-logfile-streaming.json",".../centos-7.7/rsync-ivvv-nochange-streaming.json",".../fixtures/centos-7.7/rsync-ivvv-streaming.json","tests/fixtures/generic/rsync-i-streaming.json",".../rsync-i-vvv-logfile-nochange-streaming.json",".../rsync-i-vvv-nochange-streaming.json",".../osx-10.14.6/rsync-i-vvv-streaming.json","tests/test_rsync_s.py"],"file_stats":[{"name":".../centos-7.7/rsync-i-logfile-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-streaming.json","lines_changed":1},{"name":".../centos-7.7/rsync-i-v-logfile-streaming.json","lines_changed":1},{"name":".../centos-7.7/rsync-i-vv-logfile-streaming.json","lines_changed":1},{"name":".../rsync-i-vvv-logfile-nochange-streaming.json","lines_changed":1},{"name":".../centos-7.7/rsync-i-vvv-logfile-streaming.json","lines_changed":1},{"name":".../centos-7.7/rsync-ivvv-nochange-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/rsync-ivvv-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/rsync-i-streaming.json","lines_changed":1},{"name":".../rsync-i-vvv-logfile-nochange-streaming.json","lines_changed":1},{"name":".../rsync-i-vvv-nochange-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/rsync-i-vvv-streaming.json","lines_changed":1},{"name":"tests/test_rsync_s.py","lines_changed":179}]},"message":"add rsync-s tests"},{"commit":"a76d46f9ecb1eff4d6cc7ad633c97cec0e99001a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":19,"insertions":110,"deletions":109,"files":["CHANGELOG","docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","docs/utils.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/utils.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":5},{"name":"docs/parsers/iostat_s.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":5},{"name":"docs/parsers/ping_s.md","lines_changed":5},{"name":"docs/parsers/rsync_s.md","lines_changed":5},{"name":"docs/parsers/stat_s.md","lines_changed":5},{"name":"docs/parsers/vmstat_s.md","lines_changed":5},{"name":"docs/utils.md","lines_changed":15},{"name":"jc/parsers/csv_s.py","lines_changed":13},{"name":"jc/parsers/foo_s.py","lines_changed":11},{"name":"jc/parsers/iostat_s.py","lines_changed":23},{"name":"jc/parsers/ls_s.py","lines_changed":20},{"name":"jc/parsers/ping_s.py","lines_changed":22},{"name":"jc/parsers/rsync_s.py","lines_changed":11},{"name":"jc/parsers/stat_s.py","lines_changed":30},{"name":"jc/parsers/vmstat_s.py","lines_changed":11},{"name":"jc/utils.py","lines_changed":24},{"name":"man/jc.1","lines_changed":2}]},"message":"refactor ignore_exceptions"},{"commit":"6b069a82d0fa19c8d83b19b934bace556cb758d7","author":"Kevin Lyter","author_email":"lyterk@sent.com","commit_by":"Kevin Lyter","commit_by_email":"lyterk@sent.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":1}]},"message":"Add xrandr to lib.py"},{"commit":"6b793d052147406f388c4d5dc04f506a3456f409","author":"Kevin Lyter","author_email":"lyterk@sent.com","commit_by":"Kevin Lyter","commit_by_email":"lyterk@sent.com","stats":{"files_changed":1,"insertions":6,"deletions":11,"files":["jc/parsers/xrandr.py"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":17}]},"message":"Clean up types\n\n* | operator => Union[]\n* Remove unused import Iterator\n* Remove comment"},{"commit":"ce9103f7cc666895dc7840d32797d8c7274cf1b8","author":"Kevin Lyter","author_email":"lyterk@sent.com","commit_by":"Kevin Lyter","commit_by_email":"lyterk@sent.com","stats":{"files_changed":2,"insertions":0,"deletions":287,"files":["templates/xrandr_sample.txt","templates/xrandr_sample_verbose.txt"],"file_stats":[{"name":"templates/xrandr_sample.txt","lines_changed":38},{"name":"templates/xrandr_sample_verbose.txt","lines_changed":249}]},"message":"Delete old files in template folder"},{"commit":"671d6dee36a37317257e09a080849205d301bceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":83,"deletions":15,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","docs/utils.md"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":8},{"name":"docs/parsers/iostat_s.md","lines_changed":8},{"name":"docs/parsers/ls_s.md","lines_changed":8},{"name":"docs/parsers/ping_s.md","lines_changed":8},{"name":"docs/parsers/rsync_s.md","lines_changed":10},{"name":"docs/parsers/stat_s.md","lines_changed":8},{"name":"docs/parsers/vmstat_s.md","lines_changed":8},{"name":"docs/utils.md","lines_changed":40}]},"message":"doc update"},{"commit":"49929c714c2d71a310b1dd95138dbd02f8704138","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":139,"deletions":52,"files":["jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":14},{"name":"jc/parsers/foo_s.py","lines_changed":16},{"name":"jc/parsers/iostat_s.py","lines_changed":15},{"name":"jc/parsers/ls_s.py","lines_changed":14},{"name":"jc/parsers/ping_s.py","lines_changed":14},{"name":"jc/parsers/rsync_s.py","lines_changed":30},{"name":"jc/parsers/stat_s.py","lines_changed":21},{"name":"jc/parsers/vmstat_s.py","lines_changed":14},{"name":"jc/utils.py","lines_changed":53}]},"message":"add add_jc_meta decorator"},{"commit":"2986771f07de87bfee44dd3bbb4f285e249aad76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"require python v3.7 and above since v3.6 is now deprecated"},{"commit":"520082d963b93d2bafeff921da3899686b22cadf","author":"Kevin Lyter","author_email":"lyterk@sent.com","commit_by":"Kevin Lyter","commit_by_email":"lyterk@sent.com","stats":{"files_changed":9,"insertions":968,"deletions":0,"files":["jc/parsers/xrandr.py","templates/xrandr_sample.txt","templates/xrandr_sample_verbose.txt","tests/fixtures/generic/simple_xrandr.json","tests/fixtures/generic/simple_xrandr.out","tests/fixtures/generic/xrandr.out","tests/fixtures/generic/xrandr_2.out","tests/fixtures/generic/xrandr_device.out","tests/test_xrandr.py"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":353},{"name":"templates/xrandr_sample.txt","lines_changed":38},{"name":"templates/xrandr_sample_verbose.txt","lines_changed":249},{"name":"tests/fixtures/generic/simple_xrandr.json","lines_changed":56},{"name":"tests/fixtures/generic/simple_xrandr.out","lines_changed":4},{"name":"tests/fixtures/generic/xrandr.out","lines_changed":38},{"name":"tests/fixtures/generic/xrandr_2.out","lines_changed":43},{"name":"tests/fixtures/generic/xrandr_device.out","lines_changed":15},{"name":"tests/test_xrandr.py","lines_changed":172}]},"message":"New parser: xrandr\n\nTests passing, working as intended in plugin directory"},{"commit":"021e296d457140c32b5256c2b0acf66efc458896","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":104,"deletions":100,"files":["jc/parsers/rsync_s.py"],"file_stats":[{"name":"jc/parsers/rsync_s.py","lines_changed":204}]},"message":"move variable inits and regexes up"},{"commit":"42e56fbcea6db64ea7f7045e7755af492c95aec2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":12,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":23}]},"message":"move regex up"},{"commit":"a5b62a4055df37b84751a7cdc14eb6f1ed907cd9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":230,"deletions":18,"files":["docs/parsers/rsync_s.md","jc/parsers/rsync_s.py"],"file_stats":[{"name":"docs/parsers/rsync_s.md","lines_changed":124},{"name":"jc/parsers/rsync_s.py","lines_changed":124}]},"message":"add processing and docs"},{"commit":"be98c9b7f6c67e23ea101223934d67bba512e645","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":11}]},"message":"simplify try/except by moving outside for loop"},{"commit":"aceeb8450796ae748a4d4abf75643f309d0a42e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":12,"deletions":1,"files":["CHANGELOG","README.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":5},{"name":"README.md","lines_changed":1},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update"},{"commit":"13910632173e7c815ff1161cf52fd1d17153c4a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":367,"deletions":0,"files":["jc/lib.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/rsync_s.py","lines_changed":366}]},"message":"first draft rsync streaming parser"},{"commit":"52157addd0d6dff3bdb34f179ec14b07c8c27ccc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":2}]},"message":"fix compatible list"},{"commit":"ec0bc6615e22fdc536623e290d88b9725cb6a0ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":2},{"name":"jc/utils.py","lines_changed":2}]},"message":"formatting"},{"commit":"2f80800e38256b363a4122195ec4aaffebe67d87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"simplify all_parser_info comprehension"},{"commit":"3959d3347c8d3e838f8c3158c4db74e2fa2eb856","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["docs/lib.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":4}]},"message":"doc update"},{"commit":"b57d25c69a193d3866ea86a3a34edd67049b198d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":12}]},"message":"clean up return type for parser_info"},{"commit":"63e43a7cabb51c624c962cdcc92a1199f18c77e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":188,"deletions":21,"files":["README.md","docs/lib.md","docs/parsers/rsync.md","docs/parsers/universal.md","docs/parsers/zipinfo.md","docs/utils.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"docs/lib.md","lines_changed":4},{"name":"docs/parsers/rsync.md","lines_changed":163},{"name":"docs/parsers/universal.md","lines_changed":2},{"name":"docs/parsers/zipinfo.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":28},{"name":"man/jc.1","lines_changed":7}]},"message":"doc updates"},{"commit":"21719f9a26c25d896b0a5d49c9d7814175835e16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":18,"deletions":20,"files":["jc/lib.py","jc/utils.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":36}]},"message":"type annotation updates"},{"commit":"96ec70de4f6178b0669fd9ab47cb303dc45e55c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["jc/parsers/universal.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":6},{"name":"jc/utils.py","lines_changed":4}]},"message":"remove unneeded optional"},{"commit":"a15a1967dc06169ceeda0fd5b4857ce1a351f3d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"fix typo"},{"commit":"a10d7566294fe5246e68a16e355ce56dd3557ac5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":8}]},"message":"fixy mypy issues"},{"commit":"0700dc7a64b121cf0243416e2cbb82fcef15f5a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":2}]},"message":"remove cygwin from compatible"},{"commit":"ca654b214057e19839b89e0d9a66f1110f679c1e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"fix parser order"},{"commit":"4ff3b87c1c96d720f4e7fd39e613944e322cb388","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":1}]},"message":"remove future field from docstring"},{"commit":"ea244fb7a91f1d1f8ffe0ea6dc10dfe5ab836878","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_rsync.py"],"file_stats":[{"name":"tests/test_rsync.py","lines_changed":2}]},"message":"formatting"},{"commit":"8061f30e6fa58d22ed1a52e02c4d9c7f0bf132cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":236,"deletions":6,"files":["tests/fixtures/centos-7.7/rsync-ivvv-nochange.json","tests/fixtures/centos-7.7/rsync-ivvv-nochange.out","tests/test_rsync.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/rsync-ivvv-nochange.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-ivvv-nochange.out","lines_changed":224},{"name":"tests/test_rsync.py","lines_changed":17}]},"message":"add centos -i nochange test"},{"commit":"8f3b12e81e1b4f0d4394c33db5b3a352f4cfb391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":299,"deletions":0,"files":["jc/parsers/rsync.py",".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.json",".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.out","tests/fixtures/osx-10.14.6/rsync-i-vvv.json","tests/fixtures/osx-10.14.6/rsync-i-vvv.out","tests/test_rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":22},{"name":".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.out","lines_changed":88},{"name":"tests/fixtures/osx-10.14.6/rsync-i-vvv.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/rsync-i-vvv.out","lines_changed":156},{"name":"tests/test_rsync.py","lines_changed":31}]},"message":"add fixes for mac -i output"},{"commit":"d0694ce0db5ea2d06b5787429adf23095c4c2df0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":245,"deletions":6,"files":[".../osx-10.14.6/rsync-i-vvv-logfile-nochange.json",".../osx-10.14.6/rsync-i-vvv-logfile-nochange.out","tests/test_rsync.py"],"file_stats":[{"name":".../osx-10.14.6/rsync-i-vvv-logfile-nochange.json","lines_changed":1},{"name":".../osx-10.14.6/rsync-i-vvv-logfile-nochange.out","lines_changed":233},{"name":"tests/test_rsync.py","lines_changed":17}]},"message":"add nochange log test for mac"},{"commit":"0cd4c4bc7f3ffe13cb2f1920187e25636b88af61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":658,"deletions":0,"files":[".../centos-7.7/rsync-i-vvv-logfile-nochange.json",".../centos-7.7/rsync-i-vvv-logfile-nochange.out"],"file_stats":[{"name":".../centos-7.7/rsync-i-vvv-logfile-nochange.json","lines_changed":1},{"name":".../centos-7.7/rsync-i-vvv-logfile-nochange.out","lines_changed":657}]},"message":"add nochange tests"},{"commit":"12f90c349c903634def4225ce87924b475be46d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":68,"deletions":20,"files":["jc/parsers/rsync.py","tests/test_rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":68},{"name":"tests/test_rsync.py","lines_changed":20}]},"message":"update regexes for unchanged files"},{"commit":"26b8a1f167c4b1ec3f9fb4077254a27ed8548933","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":2}]},"message":"remove packages from binaries and packages header"},{"commit":"3abe382c064f605d915912f9b726d76784eba8a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":90,"deletions":3,"files":["EXAMPLES.md","jc/parsers/rsync.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":33},{"name":"jc/parsers/rsync.py","lines_changed":60}]},"message":"add examples"},{"commit":"1e2edc2c7b5dc104a9efe4da7df9be61b9e1be32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":53,"deletions":29,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-logfile.json","tests/fixtures/centos-7.7/rsync-i-v-logfile.json","tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":74},{"name":"tests/fixtures/centos-7.7/rsync-i-logfile.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rsync-i-v-logfile.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json","lines_changed":2}]},"message":"add timestamp"},{"commit":"5fe032a6741b7b6586c60eb28be74bd0e56277a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":2}]},"message":"fix typo"},{"commit":"e825c02df1cdae67c7f335fe3c675685eb1a8d02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":605,"deletions":0,"files":["tests/fixtures/centos-7.7/rsync-i-logfile.json","tests/fixtures/centos-7.7/rsync-i-v-logfile.json","tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out","tests/fixtures/centos-7.7/rsync-i.json","tests/fixtures/centos-7.7/rsync-i.out","tests/fixtures/centos-7.7/rsync-ivvv.json","tests/fixtures/generic/rsync-i.json","tests/fixtures/generic/rsync-i.out","tests/test_rsync.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/rsync-i-logfile.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-v-logfile.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out","lines_changed":434},{"name":"tests/fixtures/centos-7.7/rsync-i.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i.out","lines_changed":28},{"name":"tests/fixtures/centos-7.7/rsync-ivvv.json","lines_changed":1},{"name":"tests/fixtures/generic/rsync-i.json","lines_changed":1},{"name":"tests/fixtures/generic/rsync-i.out","lines_changed":11},{"name":"tests/test_rsync.py","lines_changed":125}]},"message":"add rsync tests"},{"commit":"a4a4d170b5ae8c189de982adea5bdc9bf1f26e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":5,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":15}]},"message":"update docstring"},{"commit":"d0fcd523cb2cbb59d0f90369721749b54222961d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":17,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":36}]},"message":"fix process conversions"},{"commit":"f72b7dc75dbd1c3f5daee3ecee28487258a04873","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":8,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":12}]},"message":"change keyname to files and remove future key"},{"commit":"4101dc6bf7bab7d00899426e2f6271a7480d558f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":1008,"deletions":19,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-v-logfile.out","tests/fixtures/centos-7.7/rsync-i-vv-logfile.out","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":60},{"name":"tests/fixtures/centos-7.7/rsync-i-v-logfile.out","lines_changed":61},{"name":"tests/fixtures/centos-7.7/rsync-i-vv-logfile.out","lines_changed":65},{"name":"tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out","lines_changed":841}]},"message":"add log-file support"},{"commit":"ea5011b616365b5c10c04416d43035d84e3dacba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":175,"deletions":41,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-logfile.out"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":157},{"name":"tests/fixtures/centos-7.7/rsync-i-logfile.out","lines_changed":59}]},"message":"updated schema. add log-file option support"},{"commit":"d6de81747fd92642dbd5cb1fb097e375aa38be35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":3,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":14}]},"message":"add int/float conversions"},{"commit":"38f04b1c9699246d85332b20df5b6a91ae0c48d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":32,"deletions":7,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":39}]},"message":"add summary"},{"commit":"84169e1a913d035744f71472be81fe3a7d774b97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":637,"deletions":2,"files":["jc/lib.py","jc/parsers/rsync.py","setup.py","tests/fixtures/centos-7.7/rsync-ivvv.out"],"file_stats":[{"name":"jc/lib.py","lines_changed":3},{"name":"jc/parsers/rsync.py","lines_changed":212},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rsync-ivvv.out","lines_changed":422}]},"message":"add rsync parser"},{"commit":"1f96586a5e883709f436526de6dcb21ff44bf97b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/foo.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":2}]},"message":"reorder imports"},{"commit":"681176e4c958157ef1f2151b3e57963a6ba48e09","merge":"b389665 8bb2663","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #203 from kellyjonbrazil/dev\n\nDev v1.18.2"},{"commit":"8bb266352207f95040b72750e5b3ae3b8ceb2b98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"date update"},{"commit":"663abf313931b49fad64b425ece6a5a257dc7938","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":3,"deletions":4,"files":["MANIFEST.in","mangen.py","runtests.sh","updatedocs.sh"],"file_stats":[{"name":"MANIFEST.in","lines_changed":1},{"name":"mangen.py","lines_changed":3},{"name":"runtests.sh","lines_changed":1},{"name":"updatedocs.sh","lines_changed":2}]},"message":"clean up scripts"},{"commit":"f7ac41db95c16fd21d83fbce678c5dec28ab40f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":13,"files":["README.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"man/jc.1","lines_changed":12}]},"message":"final doc update"},{"commit":"5502cda9e591b531d6b452b02d8ec322c3287800","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["tests/test_lib.py"],"file_stats":[{"name":"tests/test_lib.py","lines_changed":3}]},"message":"add additional test for dict inside list for all_parser_info()"},{"commit":"a2b165565f54d91489bf38577a0785e78a4523d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["tests/test_lib.py"],"file_stats":[{"name":"tests/test_lib.py","lines_changed":21}]},"message":"add lib tests for new functions"},{"commit":"b426369815984bd2aae8bcb14e306ba73b8cd4ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":12}]},"message":"use all_parser_info() from lib in about function"},{"commit":"ac0840cc0afb4aeee2c99076710c987e09cfa5f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"fix typo"},{"commit":"ee98ab0a4a7671ae34ee79f7b0b97c061a8c2944","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/lib.md","docs/utils.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":6},{"name":"docs/utils.md","lines_changed":4}]},"message":"doc update"},{"commit":"2adec2c0035b84ca0242f2494b6c2651b9898ca5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":21,"deletions":19,"files":["jc/lib.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/utils.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":18},{"name":"jc/parsers/foo.py","lines_changed":8},{"name":"jc/parsers/foo_s.py","lines_changed":10},{"name":"jc/utils.py","lines_changed":4}]},"message":"update type hints with mypy help"},{"commit":"f19c9c71bf4f592f55a5176458acd478b462fdbe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":4,"files":["jc/parsers/foo.py","jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":9},{"name":"jc/parsers/foo_s.py","lines_changed":10}]},"message":"add type hints"},{"commit":"e93adf1884c0006a64123513070a5fd96a940da2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":5},{"name":"jc/__init__.py","lines_changed":5}]},"message":"fix doc"},{"commit":"254c4fc507842ca72064c0196418a7b939d54d06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":6,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":13},{"name":"jc/__init__.py","lines_changed":13}]},"message":"add new functions"},{"commit":"74d5f60d14fc42cfd5768c7ffd6efc890a65d442","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"update console interview description"},{"commit":"db7dc0634bc17b4daadc8bc21bba5975c093efe5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":2},{"name":"jc/lib.py","lines_changed":2}]},"message":"make **kwargs optional"},{"commit":"e156b0db453e99fb0f74b618fd343218f978ff68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":4},{"name":"jc/parsers/universal.py","lines_changed":5}]},"message":"add type hints"},{"commit":"50adc05fbd6a0dcd9e4fb38aa41917bb57332f36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":6},{"name":"jc/utils.py","lines_changed":6}]},"message":"formatting"},{"commit":"446cac7c217103eb66cfdee97e3a208b7144b644","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":11,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":11},{"name":"jc/utils.py","lines_changed":15}]},"message":"doc update"},{"commit":"28ffe3076bb5f23aeaf2624344856dbd02b4c0e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":9,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":8},{"name":"jc/lib.py","lines_changed":9}]},"message":"formatting"},{"commit":"d4d5e206cae14acd25445952f820810818b3fdce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":40,"deletions":28,"files":["docs/lib.md","docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":15},{"name":"docs/utils.md","lines_changed":26},{"name":"jc/utils.py","lines_changed":27}]},"message":"type hints update"},{"commit":"42fbe40a4ae02b9d09acdbf9b22573844959d2ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":11}]},"message":"simplify type hints"},{"commit":"27e4a120e21dcbb3eadc6c4cf224ddb33859328d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":2},{"name":"jc/lib.py","lines_changed":2}]},"message":"remove trailing comma"},{"commit":"b5d5b7c73a96d4335b178ccfac60af90913e6f0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":29,"deletions":148,"files":["docgen.sh","docs/parsers/ifconfig.md","docs/parsers/traceroute.md"],"file_stats":[{"name":"docgen.sh","lines_changed":35},{"name":"docs/parsers/ifconfig.md","lines_changed":94},{"name":"docs/parsers/traceroute.md","lines_changed":48}]},"message":"remove private classes"},{"commit":"e7471556ba5fb0586ac5b0d7404cabd98a58db2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":5,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":5}]},"message":"remove sed lines"},{"commit":"640a21341bb1c562cb2124155b511dfc74277fc0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":47,"deletions":42,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":20},{"name":"jc/utils.py","lines_changed":69}]},"message":"fix indentation"},{"commit":"f5befad3e41ba2864abc795a2fdf63e0f1d37c21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":33,"deletions":25,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":21},{"name":"jc/utils.py","lines_changed":37}]},"message":"move docstring under __init__"},{"commit":"f8223023c31093c1a34130b4e4cfc23b1d80a30c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":24,"deletions":10,"files":["docgen.sh","docs/parsers/ifconfig.md","docs/parsers/traceroute.md","docs/utils.md"],"file_stats":[{"name":"docgen.sh","lines_changed":28},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":2}]},"message":"change header depth"},{"commit":"7028e87f9b411c0cfb92eee7fc0667cdcb9a54ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":87,"insertions":22,"deletions":445,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md"],"file_stats":[{"name":"docgen.sh","lines_changed":26},{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/csv_s.md","lines_changed":5},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":14},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iostat.md","lines_changed":5},{"name":"docs/parsers/iostat_s.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jar_manifest.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/ping_s.md","lines_changed":5},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/sfdisk.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/stat_s.md","lines_changed":5},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/systeminfo.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":8},{"name":"docs/parsers/ufw.md","lines_changed":5},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/vmstat.md","lines_changed":5},{"name":"docs/parsers/vmstat_s.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5},{"name":"docs/parsers/zipinfo.md","lines_changed":5},{"name":"docs/readme.md","lines_changed":4}]},"message":"remove TOC for parsers"},{"commit":"590728f9c1ccfdc078e600d1f35ad4ba51f70d36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":91,"insertions":506,"deletions":17,"files":["docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/utils.md","jc/lib.py"],"file_stats":[{"name":"docgen.sh","lines_changed":28},{"name":"docs/lib.md","lines_changed":13},{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/csv_s.md","lines_changed":5},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":14},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iostat.md","lines_changed":5},{"name":"docs/parsers/iostat_s.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jar_manifest.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/ping_s.md","lines_changed":5},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/sfdisk.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/stat_s.md","lines_changed":5},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/systeminfo.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":8},{"name":"docs/parsers/ufw.md","lines_changed":5},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/universal.md","lines_changed":6},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/vmstat.md","lines_changed":5},{"name":"docs/parsers/vmstat_s.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5},{"name":"docs/parsers/zipinfo.md","lines_changed":5},{"name":"docs/readme.md","lines_changed":4},{"name":"docs/utils.md","lines_changed":17},{"name":"jc/lib.py","lines_changed":18}]},"message":"try new pydoc-markdown formatting options"},{"commit":"7cc147fe2d7b278bcab905bc4c3b70b5265e1510","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":44,"files":["docgen.sh","docgen.sh.old"],"file_stats":[{"name":"docgen.sh","lines_changed":4},{"name":"docgen.sh.old","lines_changed":44}]},"message":"increase heading size"},{"commit":"3cfb3965bb25024a7b03870b71f02194e278919b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":19,"deletions":19,"files":["docs/lib.md","docs/parsers/universal.md","docs/utils.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":10},{"name":"docs/parsers/universal.md","lines_changed":4},{"name":"docs/utils.md","lines_changed":24}]},"message":"formatting"},{"commit":"155d4213225fe4fcf4a059fb63c1ab9fc493177e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":86,"insertions":182,"deletions":181,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"],"file_stats":[{"name":"docgen.sh","lines_changed":3},{"name":"docs/parsers/acpi.md","lines_changed":4},{"name":"docs/parsers/airport.md","lines_changed":4},{"name":"docs/parsers/airport_s.md","lines_changed":4},{"name":"docs/parsers/arp.md","lines_changed":4},{"name":"docs/parsers/blkid.md","lines_changed":4},{"name":"docs/parsers/cksum.md","lines_changed":4},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"docs/parsers/crontab_u.md","lines_changed":4},{"name":"docs/parsers/csv.md","lines_changed":4},{"name":"docs/parsers/csv_s.md","lines_changed":4},{"name":"docs/parsers/date.md","lines_changed":4},{"name":"docs/parsers/df.md","lines_changed":4},{"name":"docs/parsers/dig.md","lines_changed":4},{"name":"docs/parsers/dir.md","lines_changed":4},{"name":"docs/parsers/dmidecode.md","lines_changed":4},{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"docs/parsers/du.md","lines_changed":4},{"name":"docs/parsers/env.md","lines_changed":4},{"name":"docs/parsers/file.md","lines_changed":4},{"name":"docs/parsers/finger.md","lines_changed":4},{"name":"docs/parsers/free.md","lines_changed":4},{"name":"docs/parsers/fstab.md","lines_changed":4},{"name":"docs/parsers/group.md","lines_changed":4},{"name":"docs/parsers/gshadow.md","lines_changed":4},{"name":"docs/parsers/hash.md","lines_changed":4},{"name":"docs/parsers/hashsum.md","lines_changed":4},{"name":"docs/parsers/hciconfig.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":4},{"name":"docs/parsers/hosts.md","lines_changed":4},{"name":"docs/parsers/id.md","lines_changed":4},{"name":"docs/parsers/ifconfig.md","lines_changed":20},{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"docs/parsers/iostat.md","lines_changed":4},{"name":"docs/parsers/iostat_s.md","lines_changed":4},{"name":"docs/parsers/iptables.md","lines_changed":4},{"name":"docs/parsers/iw_scan.md","lines_changed":4},{"name":"docs/parsers/jar_manifest.md","lines_changed":4},{"name":"docs/parsers/jobs.md","lines_changed":4},{"name":"docs/parsers/kv.md","lines_changed":4},{"name":"docs/parsers/last.md","lines_changed":4},{"name":"docs/parsers/ls.md","lines_changed":4},{"name":"docs/parsers/ls_s.md","lines_changed":4},{"name":"docs/parsers/lsblk.md","lines_changed":4},{"name":"docs/parsers/lsmod.md","lines_changed":4},{"name":"docs/parsers/lsof.md","lines_changed":4},{"name":"docs/parsers/lsusb.md","lines_changed":4},{"name":"docs/parsers/mount.md","lines_changed":4},{"name":"docs/parsers/netstat.md","lines_changed":4},{"name":"docs/parsers/ntpq.md","lines_changed":4},{"name":"docs/parsers/passwd.md","lines_changed":4},{"name":"docs/parsers/ping.md","lines_changed":4},{"name":"docs/parsers/ping_s.md","lines_changed":4},{"name":"docs/parsers/pip_list.md","lines_changed":4},{"name":"docs/parsers/pip_show.md","lines_changed":4},{"name":"docs/parsers/ps.md","lines_changed":4},{"name":"docs/parsers/route.md","lines_changed":4},{"name":"docs/parsers/rpm_qi.md","lines_changed":4},{"name":"docs/parsers/sfdisk.md","lines_changed":4},{"name":"docs/parsers/shadow.md","lines_changed":4},{"name":"docs/parsers/ss.md","lines_changed":4},{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"docs/parsers/stat_s.md","lines_changed":4},{"name":"docs/parsers/sysctl.md","lines_changed":4},{"name":"docs/parsers/systemctl.md","lines_changed":4},{"name":"docs/parsers/systemctl_lj.md","lines_changed":4},{"name":"docs/parsers/systemctl_ls.md","lines_changed":4},{"name":"docs/parsers/systemctl_luf.md","lines_changed":4},{"name":"docs/parsers/systeminfo.md","lines_changed":4},{"name":"docs/parsers/time.md","lines_changed":4},{"name":"docs/parsers/timedatectl.md","lines_changed":4},{"name":"docs/parsers/tracepath.md","lines_changed":4},{"name":"docs/parsers/traceroute.md","lines_changed":8},{"name":"docs/parsers/ufw.md","lines_changed":4},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":4},{"name":"docs/parsers/uname.md","lines_changed":4},{"name":"docs/parsers/upower.md","lines_changed":4},{"name":"docs/parsers/uptime.md","lines_changed":4},{"name":"docs/parsers/vmstat.md","lines_changed":4},{"name":"docs/parsers/vmstat_s.md","lines_changed":4},{"name":"docs/parsers/w.md","lines_changed":4},{"name":"docs/parsers/wc.md","lines_changed":4},{"name":"docs/parsers/who.md","lines_changed":4},{"name":"docs/parsers/xml.md","lines_changed":4},{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"docs/parsers/zipinfo.md","lines_changed":4}]},"message":"formatting"},{"commit":"d3e10bb87bdb32396bce95f74e62a023f4efaf99","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":291,"deletions":0,"files":["docs/parsers/lsusb.md"],"file_stats":[{"name":"docs/parsers/lsusb.md","lines_changed":291}]},"message":"add lsusb docs"},{"commit":"fd5433ee6220357e59633c78b689aa432d056b43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":293,"files":["docs/lib.md","docs/parsers/lsusb.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":4},{"name":"docs/parsers/lsusb.md","lines_changed":291},{"name":"jc/lib.py","lines_changed":4}]},"message":"parse docstring formatting"},{"commit":"4568f2d06e8fc1c465c86c318d925586481af062","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":4},{"name":"jc/lib.py","lines_changed":4}]},"message":"formatting for parse docstring"},{"commit":"c36e513d1bcc07cd8f01ff59199950e5396da51b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":86,"insertions":88,"deletions":91,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"],"file_stats":[{"name":"docgen.sh","lines_changed":9},{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/dpkg_l.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/finger.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/gshadow.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iostat.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/jar_manifest.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/kv.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/stat_s.md","lines_changed":2},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"docs/parsers/zipinfo.md","lines_changed":2}]},"message":"formatting"},{"commit":"8e089baf3fe30fed80e1c5cdde7c3046bb70ca5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":86,"insertions":8,"deletions":855,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"],"file_stats":[{"name":"docgen.sh","lines_changed":13},{"name":"docs/parsers/acpi.md","lines_changed":10},{"name":"docs/parsers/airport.md","lines_changed":10},{"name":"docs/parsers/airport_s.md","lines_changed":10},{"name":"docs/parsers/arp.md","lines_changed":10},{"name":"docs/parsers/blkid.md","lines_changed":10},{"name":"docs/parsers/cksum.md","lines_changed":10},{"name":"docs/parsers/crontab.md","lines_changed":10},{"name":"docs/parsers/crontab_u.md","lines_changed":10},{"name":"docs/parsers/csv.md","lines_changed":10},{"name":"docs/parsers/csv_s.md","lines_changed":10},{"name":"docs/parsers/date.md","lines_changed":10},{"name":"docs/parsers/df.md","lines_changed":10},{"name":"docs/parsers/dig.md","lines_changed":10},{"name":"docs/parsers/dir.md","lines_changed":10},{"name":"docs/parsers/dmidecode.md","lines_changed":10},{"name":"docs/parsers/dpkg_l.md","lines_changed":10},{"name":"docs/parsers/du.md","lines_changed":10},{"name":"docs/parsers/env.md","lines_changed":10},{"name":"docs/parsers/file.md","lines_changed":10},{"name":"docs/parsers/finger.md","lines_changed":10},{"name":"docs/parsers/free.md","lines_changed":10},{"name":"docs/parsers/fstab.md","lines_changed":10},{"name":"docs/parsers/group.md","lines_changed":10},{"name":"docs/parsers/gshadow.md","lines_changed":10},{"name":"docs/parsers/hash.md","lines_changed":10},{"name":"docs/parsers/hashsum.md","lines_changed":10},{"name":"docs/parsers/hciconfig.md","lines_changed":10},{"name":"docs/parsers/history.md","lines_changed":10},{"name":"docs/parsers/hosts.md","lines_changed":10},{"name":"docs/parsers/id.md","lines_changed":10},{"name":"docs/parsers/ifconfig.md","lines_changed":10},{"name":"docs/parsers/ini.md","lines_changed":10},{"name":"docs/parsers/iostat.md","lines_changed":10},{"name":"docs/parsers/iostat_s.md","lines_changed":10},{"name":"docs/parsers/iptables.md","lines_changed":10},{"name":"docs/parsers/iw_scan.md","lines_changed":10},{"name":"docs/parsers/jar_manifest.md","lines_changed":10},{"name":"docs/parsers/jobs.md","lines_changed":10},{"name":"docs/parsers/kv.md","lines_changed":10},{"name":"docs/parsers/last.md","lines_changed":10},{"name":"docs/parsers/ls.md","lines_changed":10},{"name":"docs/parsers/ls_s.md","lines_changed":10},{"name":"docs/parsers/lsblk.md","lines_changed":10},{"name":"docs/parsers/lsmod.md","lines_changed":10},{"name":"docs/parsers/lsof.md","lines_changed":10},{"name":"docs/parsers/lsusb.md","lines_changed":10},{"name":"docs/parsers/mount.md","lines_changed":10},{"name":"docs/parsers/netstat.md","lines_changed":10},{"name":"docs/parsers/ntpq.md","lines_changed":10},{"name":"docs/parsers/passwd.md","lines_changed":10},{"name":"docs/parsers/ping.md","lines_changed":10},{"name":"docs/parsers/ping_s.md","lines_changed":10},{"name":"docs/parsers/pip_list.md","lines_changed":10},{"name":"docs/parsers/pip_show.md","lines_changed":10},{"name":"docs/parsers/ps.md","lines_changed":10},{"name":"docs/parsers/route.md","lines_changed":10},{"name":"docs/parsers/rpm_qi.md","lines_changed":10},{"name":"docs/parsers/sfdisk.md","lines_changed":10},{"name":"docs/parsers/shadow.md","lines_changed":10},{"name":"docs/parsers/ss.md","lines_changed":10},{"name":"docs/parsers/stat.md","lines_changed":10},{"name":"docs/parsers/stat_s.md","lines_changed":10},{"name":"docs/parsers/sysctl.md","lines_changed":10},{"name":"docs/parsers/systemctl.md","lines_changed":10},{"name":"docs/parsers/systemctl_lj.md","lines_changed":10},{"name":"docs/parsers/systemctl_ls.md","lines_changed":10},{"name":"docs/parsers/systemctl_luf.md","lines_changed":10},{"name":"docs/parsers/systeminfo.md","lines_changed":10},{"name":"docs/parsers/time.md","lines_changed":10},{"name":"docs/parsers/timedatectl.md","lines_changed":10},{"name":"docs/parsers/tracepath.md","lines_changed":10},{"name":"docs/parsers/traceroute.md","lines_changed":10},{"name":"docs/parsers/ufw.md","lines_changed":10},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":10},{"name":"docs/parsers/uname.md","lines_changed":10},{"name":"docs/parsers/upower.md","lines_changed":10},{"name":"docs/parsers/uptime.md","lines_changed":10},{"name":"docs/parsers/vmstat.md","lines_changed":10},{"name":"docs/parsers/vmstat_s.md","lines_changed":10},{"name":"docs/parsers/w.md","lines_changed":10},{"name":"docs/parsers/wc.md","lines_changed":10},{"name":"docs/parsers/who.md","lines_changed":10},{"name":"docs/parsers/xml.md","lines_changed":10},{"name":"docs/parsers/yaml.md","lines_changed":10},{"name":"docs/parsers/zipinfo.md","lines_changed":10}]},"message":"remove info class from docs"},{"commit":"386f6c317e104e797c2b55e3d21c8b064a83ac78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":89,"insertions":9552,"deletions":9939,"files":["docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/utils.md"],"file_stats":[{"name":"docgen.sh","lines_changed":10},{"name":"docs/lib.md","lines_changed":105},{"name":"docs/parsers/acpi.md","lines_changed":440},{"name":"docs/parsers/airport.md","lines_changed":146},{"name":"docs/parsers/airport_s.md","lines_changed":202},{"name":"docs/parsers/arp.md","lines_changed":220},{"name":"docs/parsers/blkid.md","lines_changed":230},{"name":"docs/parsers/cksum.md","lines_changed":90},{"name":"docs/parsers/crontab.md","lines_changed":330},{"name":"docs/parsers/crontab_u.md","lines_changed":326},{"name":"docs/parsers/csv.md","lines_changed":140},{"name":"docs/parsers/csv_s.md","lines_changed":114},{"name":"docs/parsers/date.md","lines_changed":132},{"name":"docs/parsers/df.md","lines_changed":184},{"name":"docs/parsers/dig.md","lines_changed":614},{"name":"docs/parsers/dir.md","lines_changed":210},{"name":"docs/parsers/dmidecode.md","lines_changed":240},{"name":"docs/parsers/dpkg_l.md","lines_changed":244},{"name":"docs/parsers/du.md","lines_changed":164},{"name":"docs/parsers/env.md","lines_changed":126},{"name":"docs/parsers/file.md","lines_changed":114},{"name":"docs/parsers/finger.md","lines_changed":166},{"name":"docs/parsers/free.md","lines_changed":134},{"name":"docs/parsers/fstab.md","lines_changed":164},{"name":"docs/parsers/group.md","lines_changed":212},{"name":"docs/parsers/gshadow.md","lines_changed":148},{"name":"docs/parsers/hash.md","lines_changed":68},{"name":"docs/parsers/hashsum.md","lines_changed":106},{"name":"docs/parsers/hciconfig.md","lines_changed":620},{"name":"docs/parsers/history.md","lines_changed":106},{"name":"docs/parsers/hosts.md","lines_changed":142},{"name":"docs/parsers/id.md","lines_changed":200},{"name":"docs/parsers/ifconfig.md","lines_changed":388},{"name":"docs/parsers/ini.md","lines_changed":110},{"name":"docs/parsers/iostat.md","lines_changed":304},{"name":"docs/parsers/iostat_s.md","lines_changed":198},{"name":"docs/parsers/iptables.md","lines_changed":312},{"name":"docs/parsers/iw_scan.md","lines_changed":226},{"name":"docs/parsers/jar_manifest.md","lines_changed":148},{"name":"docs/parsers/jobs.md","lines_changed":170},{"name":"docs/parsers/kv.md","lines_changed":86},{"name":"docs/parsers/last.md","lines_changed":186},{"name":"docs/parsers/ls.md","lines_changed":190},{"name":"docs/parsers/ls_s.md","lines_changed":130},{"name":"docs/parsers/lsblk.md","lines_changed":534},{"name":"docs/parsers/lsmod.md","lines_changed":240},{"name":"docs/parsers/lsof.md","lines_changed":228},{"name":"docs/parsers/lsusb.md","lines_changed":502},{"name":"docs/parsers/mount.md","lines_changed":140},{"name":"docs/parsers/netstat.md","lines_changed":688},{"name":"docs/parsers/ntpq.md","lines_changed":402},{"name":"docs/parsers/passwd.md","lines_changed":182},{"name":"docs/parsers/ping.md","lines_changed":308},{"name":"docs/parsers/ping_s.md","lines_changed":160},{"name":"docs/parsers/pip_list.md","lines_changed":84},{"name":"docs/parsers/pip_show.md","lines_changed":120},{"name":"docs/parsers/ps.md","lines_changed":394},{"name":"docs/parsers/route.md","lines_changed":206},{"name":"docs/parsers/rpm_qi.md","lines_changed":296},{"name":"docs/parsers/sfdisk.md","lines_changed":376},{"name":"docs/parsers/shadow.md","lines_changed":196},{"name":"docs/parsers/ss.md","lines_changed":538},{"name":"docs/parsers/stat.md","lines_changed":318},{"name":"docs/parsers/stat_s.md","lines_changed":152},{"name":"docs/parsers/sysctl.md","lines_changed":100},{"name":"docs/parsers/systemctl.md","lines_changed":106},{"name":"docs/parsers/systemctl_lj.md","lines_changed":140},{"name":"docs/parsers/systemctl_ls.md","lines_changed":90},{"name":"docs/parsers/systemctl_luf.md","lines_changed":82},{"name":"docs/parsers/systeminfo.md","lines_changed":396},{"name":"docs/parsers/time.md","lines_changed":242},{"name":"docs/parsers/timedatectl.md","lines_changed":112},{"name":"docs/parsers/tracepath.md","lines_changed":248},{"name":"docs/parsers/traceroute.md","lines_changed":220},{"name":"docs/parsers/ufw.md","lines_changed":390},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":250},{"name":"docs/parsers/uname.md","lines_changed":80},{"name":"docs/parsers/universal.md","lines_changed":72},{"name":"docs/parsers/upower.md","lines_changed":374},{"name":"docs/parsers/uptime.md","lines_changed":120},{"name":"docs/parsers/vmstat.md","lines_changed":226},{"name":"docs/parsers/vmstat_s.md","lines_changed":172},{"name":"docs/parsers/w.md","lines_changed":196},{"name":"docs/parsers/wc.md","lines_changed":98},{"name":"docs/parsers/who.md","lines_changed":250},{"name":"docs/parsers/xml.md","lines_changed":134},{"name":"docs/parsers/yaml.md","lines_changed":162},{"name":"docs/parsers/zipinfo.md","lines_changed":138},{"name":"docs/utils.md","lines_changed":134}]},"message":"update markdown processor settings"},{"commit":"75cd84ce8a86b3357c6cf5fe4fbc62d0f298a29a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":94,"insertions":11423,"deletions":10081,"files":["README.md","docgen.sh","docgen.sh.old","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/utils.md","jc/cli.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docgen.sh","lines_changed":12},{"name":"docgen.sh.old","lines_changed":44},{"name":"docs/lib.md","lines_changed":151},{"name":"docs/parsers/acpi.md","lines_changed":454},{"name":"docs/parsers/airport.md","lines_changed":166},{"name":"docs/parsers/airport_s.md","lines_changed":224},{"name":"docs/parsers/arp.md","lines_changed":240},{"name":"docs/parsers/blkid.md","lines_changed":250},{"name":"docs/parsers/cksum.md","lines_changed":110},{"name":"docs/parsers/crontab.md","lines_changed":350},{"name":"docs/parsers/crontab_u.md","lines_changed":348},{"name":"docs/parsers/csv.md","lines_changed":160},{"name":"docs/parsers/csv_s.md","lines_changed":120},{"name":"docs/parsers/date.md","lines_changed":152},{"name":"docs/parsers/df.md","lines_changed":204},{"name":"docs/parsers/dig.md","lines_changed":634},{"name":"docs/parsers/dir.md","lines_changed":230},{"name":"docs/parsers/dmidecode.md","lines_changed":260},{"name":"docs/parsers/dpkg_l.md","lines_changed":266},{"name":"docs/parsers/du.md","lines_changed":184},{"name":"docs/parsers/env.md","lines_changed":146},{"name":"docs/parsers/file.md","lines_changed":134},{"name":"docs/parsers/finger.md","lines_changed":186},{"name":"docs/parsers/free.md","lines_changed":154},{"name":"docs/parsers/fstab.md","lines_changed":184},{"name":"docs/parsers/group.md","lines_changed":232},{"name":"docs/parsers/gshadow.md","lines_changed":168},{"name":"docs/parsers/hash.md","lines_changed":88},{"name":"docs/parsers/hashsum.md","lines_changed":126},{"name":"docs/parsers/hciconfig.md","lines_changed":634},{"name":"docs/parsers/history.md","lines_changed":126},{"name":"docs/parsers/hosts.md","lines_changed":162},{"name":"docs/parsers/id.md","lines_changed":220},{"name":"docs/parsers/ifconfig.md","lines_changed":472},{"name":"docs/parsers/ini.md","lines_changed":130},{"name":"docs/parsers/iostat.md","lines_changed":324},{"name":"docs/parsers/iostat_s.md","lines_changed":220},{"name":"docs/parsers/iptables.md","lines_changed":332},{"name":"docs/parsers/iw_scan.md","lines_changed":248},{"name":"docs/parsers/jar_manifest.md","lines_changed":170},{"name":"docs/parsers/jobs.md","lines_changed":190},{"name":"docs/parsers/kv.md","lines_changed":106},{"name":"docs/parsers/last.md","lines_changed":207},{"name":"docs/parsers/ls.md","lines_changed":210},{"name":"docs/parsers/ls_s.md","lines_changed":152},{"name":"docs/parsers/lsblk.md","lines_changed":548},{"name":"docs/parsers/lsmod.md","lines_changed":260},{"name":"docs/parsers/lsof.md","lines_changed":248},{"name":"docs/parsers/lsusb.md","lines_changed":518},{"name":"docs/parsers/mount.md","lines_changed":160},{"name":"docs/parsers/netstat.md","lines_changed":702},{"name":"docs/parsers/ntpq.md","lines_changed":422},{"name":"docs/parsers/passwd.md","lines_changed":202},{"name":"docs/parsers/ping.md","lines_changed":328},{"name":"docs/parsers/ping_s.md","lines_changed":182},{"name":"docs/parsers/pip_list.md","lines_changed":106},{"name":"docs/parsers/pip_show.md","lines_changed":142},{"name":"docs/parsers/ps.md","lines_changed":414},{"name":"docs/parsers/route.md","lines_changed":226},{"name":"docs/parsers/rpm_qi.md","lines_changed":318},{"name":"docs/parsers/sfdisk.md","lines_changed":396},{"name":"docs/parsers/shadow.md","lines_changed":216},{"name":"docs/parsers/ss.md","lines_changed":552},{"name":"docs/parsers/stat.md","lines_changed":338},{"name":"docs/parsers/stat_s.md","lines_changed":174},{"name":"docs/parsers/sysctl.md","lines_changed":120},{"name":"docs/parsers/systemctl.md","lines_changed":126},{"name":"docs/parsers/systemctl_lj.md","lines_changed":162},{"name":"docs/parsers/systemctl_ls.md","lines_changed":112},{"name":"docs/parsers/systemctl_luf.md","lines_changed":104},{"name":"docs/parsers/systeminfo.md","lines_changed":416},{"name":"docs/parsers/time.md","lines_changed":262},{"name":"docs/parsers/timedatectl.md","lines_changed":132},{"name":"docs/parsers/tracepath.md","lines_changed":268},{"name":"docs/parsers/traceroute.md","lines_changed":288},{"name":"docs/parsers/ufw.md","lines_changed":410},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":272},{"name":"docs/parsers/uname.md","lines_changed":100},{"name":"docs/parsers/universal.md","lines_changed":85},{"name":"docs/parsers/upower.md","lines_changed":394},{"name":"docs/parsers/uptime.md","lines_changed":140},{"name":"docs/parsers/vmstat.md","lines_changed":246},{"name":"docs/parsers/vmstat_s.md","lines_changed":194},{"name":"docs/parsers/w.md","lines_changed":216},{"name":"docs/parsers/wc.md","lines_changed":118},{"name":"docs/parsers/who.md","lines_changed":270},{"name":"docs/parsers/xml.md","lines_changed":154},{"name":"docs/parsers/yaml.md","lines_changed":182},{"name":"docs/parsers/zipinfo.md","lines_changed":158},{"name":"docs/readme.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":223},{"name":"jc/cli.py","lines_changed":4},{"name":"man/jc.1","lines_changed":12}]},"message":"try new markdown conversion"},{"commit":"6fad44e35df5d0e33e716d0fcb84ed309e6fd30b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"fix type hint"},{"commit":"1caac750daa25a5abeb1289964e918ec06289bfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":4}]},"message":"Update type hints"},{"commit":"16370dcb3d5cf1304c2340ef2253ef2987a982b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"update type hints"},{"commit":"c1302f2573993a6908001d6df0697486f54a9e7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":8,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":27}]},"message":"add type-hints to public api"},{"commit":"6f0ffe0955e4d9d6cc82552cf4e4f419e3ff3756","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"docu update"},{"commit":"1f89745fe7cca3a0ac27445942098b717675a481","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"a46ac18ef775bb2c52675e61e11c5d92f33cbe81","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"doc update"},{"commit":"1a05f1c575b57456481e41baaf551cef30115966","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":64,"deletions":54,"files":["jc/__init__.py","jc/cli.py","jc/lib.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":4},{"name":"jc/cli.py","lines_changed":48},{"name":"jc/lib.py","lines_changed":66}]},"message":"add parser info functions. move _get_parser functionality from cli to lib"},{"commit":"08f818aa42ca68050a79ec387c42bff265257fd5","merge":"027c231 b389665","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #199 from kellyjonbrazil/master\n\nsync to dev"},{"commit":"b3896650c230b4acc73704a50c93ee74e4034eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":62,"deletions":104,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":83},{"name":"templates/readme_template","lines_changed":83}]},"message":"revert column formatting"},{"commit":"f285539526998a5097943c71dcecb2979036b2b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":104,"deletions":62,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":83},{"name":"templates/readme_template","lines_changed":83}]},"message":"conform to 80 columns"},{"commit":"a896dcdf3b31b60582ebb1b3bca5d1103f998dd6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":338,"deletions":120,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":229},{"name":"templates/readme_template","lines_changed":229}]},"message":"formatting"},{"commit":"0a187d4ed08173ec360a006ae2367bb1f2f96c52","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":4}]},"message":"add console interview links"},{"commit":"2d65bc57d5a396e6683f970194de29494b5c1272","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":6},{"name":"jc/__init__.py","lines_changed":6}]},"message":"add quotes"},{"commit":"ab63809fde0cefe1f0401d957a3736fdb760f0cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"update description"},{"commit":"6f04707dc63936efd0e533ae36e1b39ead10c466","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add python package doc info to top of page"},{"commit":"d14a86a9b58bdc3cb0c8df1dfa495aefdaab8033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2}]},"message":"fix typo"},{"commit":"8e6a31d3da19926ac46744e02b27a899ca5fbd7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":14,"deletions":8,"files":["CHANGELOG","docs/readme.md","jc/__init__.py","jc/lib.py","man/jc.1","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4},{"name":"jc/lib.py","lines_changed":7},{"name":"man/jc.1","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"minor fix for macOS binary"},{"commit":"6e7b6afe87355e96422bb2560ffcbd5e79d28f04","merge":"70cb445 027c231","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #198 from kellyjonbrazil/dev\n\nDev v1.18.0"},{"commit":"027c231097a002526350a93322407582a85db0cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"formatting"},{"commit":"f1cf7d1f953586dd44a4463d924f1a1f52717c37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":5,"files":["jc/parsers/foo.py","jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":6},{"name":"jc/parsers/foo_s.py","lines_changed":6}]},"message":"add helper function info"},{"commit":"df611cc263f50285e74ceb3381f55b43a74870a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":6},{"name":"jc/__init__.py","lines_changed":6}]},"message":"formatting"},{"commit":"0f3143bbbb593340190e66729580146410012e14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":6},{"name":"jc/__init__.py","lines_changed":6}]},"message":"formatting"},{"commit":"c280757b7624a46543e481ca47a6e084d2d6f519","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"formatting"},{"commit":"d30b9d84ef5ec3a2a504f7ea251c932b8c9ea878","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"formatting"},{"commit":"50ded1dbd97d26cf01d7e1a98b40e0f0f7d02202","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":4,"files":["docs/readme.md"],"file_stats":[{"name":"docs/readme.md","lines_changed":14}]},"message":"doc update"},{"commit":"e319aea5a45c598a44f35b4e58131d977509e4f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":4,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":14}]},"message":"add doc version info"},{"commit":"ba86509c1d8700a50fe14e9d931ee57261306c5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":9,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":12}]},"message":"simplify OSError exception handling"},{"commit":"0a9279ae6bfdd1aa59f5e9b31ce0af3bfec19f96","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["CHANGELOG","tests/test_lib.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":5},{"name":"tests/test_lib.py","lines_changed":1}]},"message":"doc update"},{"commit":"a13dde12af01b4473aa9a34b8a0d7387fb48500a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":173,"insertions":173,"deletions":173,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/dpkg_l.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/finger.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/gshadow.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iostat.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/jar_manifest.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/kv.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/stat_s.md","lines_changed":2},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"docs/parsers/zipinfo.md","lines_changed":2},{"name":"jc/parsers/acpi.py","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/blkid.py","lines_changed":2},{"name":"jc/parsers/cksum.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"jc/parsers/csv.py","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/dir.py","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":2},{"name":"jc/parsers/dpkg_l.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/finger.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/group.py","lines_changed":2},{"name":"jc/parsers/gshadow.py","lines_changed":2},{"name":"jc/parsers/hash.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":2},{"name":"jc/parsers/hciconfig.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/iostat.py","lines_changed":2},{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2},{"name":"jc/parsers/jar_manifest.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/kv.py","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/lsusb.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/ntpq.py","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":2},{"name":"jc/parsers/ping.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/rpm_qi.py","lines_changed":2},{"name":"jc/parsers/sfdisk.py","lines_changed":2},{"name":"jc/parsers/shadow.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/stat_s.py","lines_changed":2},{"name":"jc/parsers/sysctl.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/systeminfo.py","lines_changed":2},{"name":"jc/parsers/time.py","lines_changed":2},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/ufw.py","lines_changed":2},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/parsers/wc.py","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":2},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2},{"name":"jc/parsers/zipinfo.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"change raw output wording"},{"commit":"e2ed358de1abefd737c187a324cbe4734d6975e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"changelog update"},{"commit":"a2cd3666210be3727a00c3405972f32fbd421046","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["docs/_config.yml"],"file_stats":[{"name":"docs/_config.yml","lines_changed":1}]},"message":"Delete _config.yml"},{"commit":"15addd9bfc18a0e87beb97040b431c872b783662","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":8,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":5},{"name":"jc/parsers/universal.py","lines_changed":7}]},"message":"doc fix"},{"commit":"a4e34b0053ec0c032f4783caaa3e07fc2c685a98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":63,"deletions":0,"files":["docgen.sh","docs/parsers/universal.md"],"file_stats":[{"name":"docgen.sh","lines_changed":3},{"name":"docs/parsers/universal.md","lines_changed":60}]},"message":"add universal parser docs"},{"commit":"d09529ac302fbcc156d58cf836f8397c98121a76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"changelog update"},{"commit":"553097b5050dc02fbdaeec2e2e138e01bc6811d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":2}]},"message":"docstring update"},{"commit":"49c556857708307f617b2b516f2d281398681b5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":35,"deletions":15,"files":["README.md","docs/lib.md","docs/readme.md","jc/__init__.py","jc/lib.py","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/lib.md","lines_changed":9},{"name":"docs/readme.md","lines_changed":13},{"name":"jc/__init__.py","lines_changed":13},{"name":"jc/lib.py","lines_changed":9},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"module doc update"},{"commit":"6962b9ee8a52c924dc2de6b79ddeea3636e80fe4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":6,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":7},{"name":"jc/lib.py","lines_changed":7}]},"message":"formatting"},{"commit":"b4575a3f780f9aa2751c8b4789f67aaca32dd1cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":91,"deletions":1,"files":["docgen.sh","docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docgen.sh","lines_changed":4},{"name":"docs/lib.md","lines_changed":86},{"name":"jc/lib.py","lines_changed":2}]},"message":"add lib docs"},{"commit":"35b54d235d73b2ce658223be3d6095906f142d89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"templates/readme_template","lines_changed":3}]},"message":"add python package doc info"},{"commit":"583a5757e454a4e36b331057d1266279b55ee16a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":18,"insertions":34,"deletions":30,"files":["docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/file.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/traceroute.md","docs/parsers/ufw_appinfo.md","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/file.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/traceroute.py","jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":6},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":9},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":6},{"name":"jc/parsers/ls.py","lines_changed":5},{"name":"jc/parsers/ls_s.py","lines_changed":9},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":2}]},"message":"formatting"},{"commit":"f355333eeed3c4afba844dc7bed5224356552adc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":8},{"name":"jc/__init__.py","lines_changed":8}]},"message":"formatting"},{"commit":"4d7df109604e4f8367904968602acfc05217a7fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"formatting"},{"commit":"66b2c28f4bc75fb76800f9fb7ea485eee194a9a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":24,"deletions":24,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":24},{"name":"jc/__init__.py","lines_changed":24}]},"message":"formatting"},{"commit":"299a9c6d88fdf1fede447b4057d8f4263daef733","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":25,"deletions":57,"files":["docs/parsers/csv.md","docs/readme.md"],"file_stats":[{"name":"docs/parsers/csv.md","lines_changed":4},{"name":"docs/readme.md","lines_changed":78}]},"message":"formatting"},{"commit":"bd391d979ce98b126dab0f012a56b3fcb1f73439","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":55,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":78}]},"message":"add lib function docs"},{"commit":"7309bd2282445f6daef0b1491ff60b8104500abb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":19,"deletions":10,"files":["jc/lib.py","jc/parsers/csv.py","jc/parsers/universal.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":15},{"name":"jc/parsers/csv.py","lines_changed":4},{"name":"jc/parsers/universal.py","lines_changed":10}]},"message":"add get_help"},{"commit":"ce84c09d3394b598f19a3e012ef27ce4154e3b3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":3}]},"message":"add get_help()"},{"commit":"b4fffbb6476daf78fbdf19dbf31bbeeab950d2dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":46,"insertions":501,"deletions":304,"files":["docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/history.md","docs/parsers/ini.md","docs/parsers/iostat_s.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsusb.md","docs/parsers/netstat.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/ps.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/upower.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/who.md"],"file_stats":[{"name":"docs/parsers/crontab.md","lines_changed":3},{"name":"docs/parsers/crontab_u.md","lines_changed":22},{"name":"docs/parsers/csv.md","lines_changed":9},{"name":"docs/parsers/csv_s.md","lines_changed":35},{"name":"docs/parsers/date.md","lines_changed":18},{"name":"docs/parsers/dig.md","lines_changed":16},{"name":"docs/parsers/dir.md","lines_changed":6},{"name":"docs/parsers/dpkg_l.md","lines_changed":7},{"name":"docs/parsers/du.md","lines_changed":20},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":8},{"name":"docs/parsers/ini.md","lines_changed":15},{"name":"docs/parsers/iostat_s.md","lines_changed":25},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jar_manifest.md","lines_changed":25},{"name":"docs/parsers/jobs.md","lines_changed":3},{"name":"docs/parsers/kv.md","lines_changed":11},{"name":"docs/parsers/last.md","lines_changed":10},{"name":"docs/parsers/ls.md","lines_changed":19},{"name":"docs/parsers/ls_s.md","lines_changed":51},{"name":"docs/parsers/lsblk.md","lines_changed":10},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":3},{"name":"docs/parsers/ping.md","lines_changed":32},{"name":"docs/parsers/ping_s.md","lines_changed":85},{"name":"docs/parsers/ps.md","lines_changed":8},{"name":"docs/parsers/rpm_qi.md","lines_changed":37},{"name":"docs/parsers/sfdisk.md","lines_changed":8},{"name":"docs/parsers/ss.md","lines_changed":6},{"name":"docs/parsers/stat.md","lines_changed":6},{"name":"docs/parsers/stat_s.md","lines_changed":27},{"name":"docs/parsers/sysctl.md","lines_changed":7},{"name":"docs/parsers/systemctl.md","lines_changed":4},{"name":"docs/parsers/systemctl_ls.md","lines_changed":3},{"name":"docs/parsers/systemctl_luf.md","lines_changed":3},{"name":"docs/parsers/systeminfo.md","lines_changed":19},{"name":"docs/parsers/time.md","lines_changed":33},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"docs/parsers/ufw.md","lines_changed":7},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":28},{"name":"docs/parsers/upower.md","lines_changed":16},{"name":"docs/parsers/vmstat.md","lines_changed":13},{"name":"docs/parsers/vmstat_s.md","lines_changed":111},{"name":"docs/parsers/who.md","lines_changed":7}]},"message":"formatting"},{"commit":"3701b4198aad1826ad6da571fbcaa530b057cc48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":86,"insertions":710,"deletions":606,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":5},{"name":"jc/parsers/airport.py","lines_changed":7},{"name":"jc/parsers/airport_s.py","lines_changed":3},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/blkid.py","lines_changed":10},{"name":"jc/parsers/cksum.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":6},{"name":"jc/parsers/crontab_u.py","lines_changed":25},{"name":"jc/parsers/csv.py","lines_changed":14},{"name":"jc/parsers/csv_s.py","lines_changed":38},{"name":"jc/parsers/date.py","lines_changed":69},{"name":"jc/parsers/df.py","lines_changed":13},{"name":"jc/parsers/dig.py","lines_changed":28},{"name":"jc/parsers/dir.py","lines_changed":8},{"name":"jc/parsers/dmidecode.py","lines_changed":3},{"name":"jc/parsers/dpkg_l.py","lines_changed":10},{"name":"jc/parsers/du.py","lines_changed":23},{"name":"jc/parsers/env.py","lines_changed":7},{"name":"jc/parsers/file.py","lines_changed":6},{"name":"jc/parsers/finger.py","lines_changed":14},{"name":"jc/parsers/foo.py","lines_changed":3},{"name":"jc/parsers/foo_s.py","lines_changed":23},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/group.py","lines_changed":3},{"name":"jc/parsers/gshadow.py","lines_changed":3},{"name":"jc/parsers/hash.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":5},{"name":"jc/parsers/hciconfig.py","lines_changed":13},{"name":"jc/parsers/history.py","lines_changed":10},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":3},{"name":"jc/parsers/ifconfig.py","lines_changed":20},{"name":"jc/parsers/ini.py","lines_changed":23},{"name":"jc/parsers/iostat_s.py","lines_changed":25},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":11},{"name":"jc/parsers/jar_manifest.py","lines_changed":25},{"name":"jc/parsers/jobs.py","lines_changed":5},{"name":"jc/parsers/kv.py","lines_changed":13},{"name":"jc/parsers/last.py","lines_changed":17},{"name":"jc/parsers/ls.py","lines_changed":21},{"name":"jc/parsers/ls_s.py","lines_changed":53},{"name":"jc/parsers/lsblk.py","lines_changed":15},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/lsusb.py","lines_changed":5},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":20},{"name":"jc/parsers/ntpq.py","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":3},{"name":"jc/parsers/ping.py","lines_changed":46},{"name":"jc/parsers/ping_s.py","lines_changed":99},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":10},{"name":"jc/parsers/route.py","lines_changed":6},{"name":"jc/parsers/rpm_qi.py","lines_changed":40},{"name":"jc/parsers/sfdisk.py","lines_changed":16},{"name":"jc/parsers/shadow.py","lines_changed":3},{"name":"jc/parsers/ss.py","lines_changed":8},{"name":"jc/parsers/stat.py","lines_changed":12},{"name":"jc/parsers/stat_s.py","lines_changed":31},{"name":"jc/parsers/sysctl.py","lines_changed":10},{"name":"jc/parsers/systemctl.py","lines_changed":6},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":5},{"name":"jc/parsers/systemctl_luf.py","lines_changed":5},{"name":"jc/parsers/systeminfo.py","lines_changed":31},{"name":"jc/parsers/time.py","lines_changed":51},{"name":"jc/parsers/timedatectl.py","lines_changed":8},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":7},{"name":"jc/parsers/ufw.py","lines_changed":7},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":28},{"name":"jc/parsers/uname.py","lines_changed":4},{"name":"jc/parsers/universal.py","lines_changed":40},{"name":"jc/parsers/upower.py","lines_changed":32},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":28},{"name":"jc/parsers/vmstat_s.py","lines_changed":125},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/parsers/wc.py","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":10},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"formatting"},{"commit":"d4c34098fa7ad2098076f0fa0564467e5d06f916","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":5}]},"message":"formatting"},{"commit":"b3c531193b3fc53697e7d7823576f481f9462d53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":125,"deletions":71,"files":["CHANGELOG","docs/utils.md","jc/utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docs/utils.md","lines_changed":79},{"name":"jc/utils.py","lines_changed":114}]},"message":"formatting"},{"commit":"1d0e07c77bab5c48405323e52873c7952dd0a587","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":57,"deletions":55,"files":["docs/readme.md","jc/__init__.py","jc/lib.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":33},{"name":"jc/__init__.py","lines_changed":33},{"name":"jc/lib.py","lines_changed":46}]},"message":"formatting"},{"commit":"06a322cf9c7468dc7e8ba05914e1d07bbc51f63a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":8,"files":["tests/test_lib.py"],"file_stats":[{"name":"tests/test_lib.py","lines_changed":22}]},"message":"rename tests and add conversion function tests"},{"commit":"623d148712f93eacf9b7b5803140603f0af67acb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"647e83d0439a0937db14a2cc97929e38a6b6a43b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["tests/test_lib.py"],"file_stats":[{"name":"tests/test_lib.py","lines_changed":3}]},"message":"add test to ensure there are zero plugin parsers installed during tests"},{"commit":"91a554464444da0cc3ed3b4d212539232411f6cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":5}]},"message":"doc update"},{"commit":"a1190998aef1bf403ee34c38c1a0fbd6291ac38b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":82,"deletions":0,"files":["tests/test_jc.py","tests/test_lib.py"],"file_stats":[{"name":"tests/test_jc.py","lines_changed":41},{"name":"tests/test_lib.py","lines_changed":41}]},"message":"add jc and jc.lib tests"},{"commit":"097d7a1850f6f6df73a5761c657b73ef9dbd3e29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":4}]},"message":"simplify __init__"},{"commit":"302bf72e720b3a67fbf1300eaff4f99fc343abeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":138,"insertions":718,"deletions":6,"files":["docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py"],"file_stats":[{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":5},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iostat.md","lines_changed":5},{"name":"docs/parsers/iostat_s.md","lines_changed":7},{"name":"docs/parsers/iptables.md","lines_changed":7},{"name":"docs/parsers/iw_scan.md","lines_changed":9},{"name":"docs/parsers/jar_manifest.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":7},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/ping_s.md","lines_changed":7},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/sfdisk.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/stat_s.md","lines_changed":7},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/systeminfo.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"docs/parsers/ufw.md","lines_changed":5},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/vmstat.md","lines_changed":5},{"name":"docs/parsers/vmstat_s.md","lines_changed":7},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5},{"name":"docs/parsers/zipinfo.md","lines_changed":5},{"name":"jc/parsers/env.py","lines_changed":5},{"name":"jc/parsers/file.py","lines_changed":5},{"name":"jc/parsers/finger.py","lines_changed":5},{"name":"jc/parsers/foo.py","lines_changed":5},{"name":"jc/parsers/foo_s.py","lines_changed":7},{"name":"jc/parsers/free.py","lines_changed":5},{"name":"jc/parsers/fstab.py","lines_changed":5},{"name":"jc/parsers/group.py","lines_changed":5},{"name":"jc/parsers/gshadow.py","lines_changed":5},{"name":"jc/parsers/hash.py","lines_changed":5},{"name":"jc/parsers/hashsum.py","lines_changed":5},{"name":"jc/parsers/hciconfig.py","lines_changed":5},{"name":"jc/parsers/history.py","lines_changed":5},{"name":"jc/parsers/hosts.py","lines_changed":5},{"name":"jc/parsers/id.py","lines_changed":5},{"name":"jc/parsers/ifconfig.py","lines_changed":5},{"name":"jc/parsers/ini.py","lines_changed":5},{"name":"jc/parsers/iostat.py","lines_changed":5},{"name":"jc/parsers/iostat_s.py","lines_changed":7},{"name":"jc/parsers/iptables.py","lines_changed":7},{"name":"jc/parsers/iw_scan.py","lines_changed":9},{"name":"jc/parsers/jar_manifest.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":5},{"name":"jc/parsers/kv.py","lines_changed":5},{"name":"jc/parsers/last.py","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":5},{"name":"jc/parsers/ls_s.py","lines_changed":7},{"name":"jc/parsers/lsblk.py","lines_changed":5},{"name":"jc/parsers/lsmod.py","lines_changed":5},{"name":"jc/parsers/lsof.py","lines_changed":5},{"name":"jc/parsers/lsusb.py","lines_changed":5},{"name":"jc/parsers/mount.py","lines_changed":5},{"name":"jc/parsers/netstat.py","lines_changed":5},{"name":"jc/parsers/ntpq.py","lines_changed":5},{"name":"jc/parsers/passwd.py","lines_changed":5},{"name":"jc/parsers/ping.py","lines_changed":5},{"name":"jc/parsers/ping_s.py","lines_changed":7},{"name":"jc/parsers/pip_list.py","lines_changed":5},{"name":"jc/parsers/pip_show.py","lines_changed":5},{"name":"jc/parsers/ps.py","lines_changed":5},{"name":"jc/parsers/route.py","lines_changed":5},{"name":"jc/parsers/rpm_qi.py","lines_changed":5},{"name":"jc/parsers/sfdisk.py","lines_changed":5},{"name":"jc/parsers/shadow.py","lines_changed":5},{"name":"jc/parsers/ss.py","lines_changed":5},{"name":"jc/parsers/stat.py","lines_changed":5},{"name":"jc/parsers/stat_s.py","lines_changed":7},{"name":"jc/parsers/sysctl.py","lines_changed":5},{"name":"jc/parsers/systemctl.py","lines_changed":5},{"name":"jc/parsers/systemctl_lj.py","lines_changed":5},{"name":"jc/parsers/systemctl_ls.py","lines_changed":5},{"name":"jc/parsers/systemctl_luf.py","lines_changed":5},{"name":"jc/parsers/systeminfo.py","lines_changed":5},{"name":"jc/parsers/time.py","lines_changed":5},{"name":"jc/parsers/timedatectl.py","lines_changed":5},{"name":"jc/parsers/tracepath.py","lines_changed":5},{"name":"jc/parsers/traceroute.py","lines_changed":5},{"name":"jc/parsers/ufw.py","lines_changed":5},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":5},{"name":"jc/parsers/uname.py","lines_changed":5},{"name":"jc/parsers/upower.py","lines_changed":5},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/vmstat.py","lines_changed":5},{"name":"jc/parsers/vmstat_s.py","lines_changed":7},{"name":"jc/parsers/w.py","lines_changed":5},{"name":"jc/parsers/wc.py","lines_changed":5},{"name":"jc/parsers/who.py","lines_changed":5},{"name":"jc/parsers/xml.py","lines_changed":5},{"name":"jc/parsers/yaml.py","lines_changed":5},{"name":"jc/parsers/zipinfo.py","lines_changed":5}]},"message":"Update high-level API docs"},{"commit":"2c42baf3a4dd6733c078f31a1becd708a05f2c36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":34,"insertions":174,"deletions":0,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/csv_s.md","lines_changed":7},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"jc/parsers/acpi.py","lines_changed":5},{"name":"jc/parsers/airport.py","lines_changed":5},{"name":"jc/parsers/airport_s.py","lines_changed":5},{"name":"jc/parsers/arp.py","lines_changed":5},{"name":"jc/parsers/blkid.py","lines_changed":5},{"name":"jc/parsers/cksum.py","lines_changed":5},{"name":"jc/parsers/crontab.py","lines_changed":5},{"name":"jc/parsers/crontab_u.py","lines_changed":5},{"name":"jc/parsers/csv.py","lines_changed":5},{"name":"jc/parsers/csv_s.py","lines_changed":7},{"name":"jc/parsers/date.py","lines_changed":5},{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":5},{"name":"jc/parsers/dir.py","lines_changed":5},{"name":"jc/parsers/dmidecode.py","lines_changed":5},{"name":"jc/parsers/dpkg_l.py","lines_changed":5},{"name":"jc/parsers/du.py","lines_changed":5}]},"message":"add new high-level api info"},{"commit":"03feb89c84096c0ea1d6ae3a0634ae7b8b507e8f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2}]},"message":"add module list info"},{"commit":"9dd553192fbca3037b3afe5df6bae88f7a8a9365","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":29,"deletions":12,"files":["CHANGELOG","README.md","docs/readme.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":10},{"name":"docs/readme.md","lines_changed":16},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":10}]},"message":"doc update"},{"commit":"fa3f02e9d1ac7867e3465c2d214f4e4229ff4c66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"0a9dde58c5235f78c4c9ae9c013f7454482c6067","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":228,"deletions":134,"files":["jc/__init__.py","jc/cli.py","jc/lib.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":22},{"name":"jc/cli.py","lines_changed":154},{"name":"jc/lib.py","lines_changed":186}]},"message":"add jc.parse() high-level API"},{"commit":"70cb4453bebb235130e2c287633ecb1de6c2b0aa","merge":"e6900e2 830674c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #195 from kellyjonbrazil/dev\n\nDev v1.17.7"},{"commit":"830674cc6f19e107347a743baff7bbaab7f80b75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["CHANGELOG","jc/__init__.py","man/jc.1","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"fb406b58a12fdfe81bcff76671661af77e7f2fe5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["docs/parsers/stat_s.md","jc/parsers/stat_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/stat_s.md","lines_changed":4},{"name":"jc/parsers/stat_s.py","lines_changed":4},{"name":"man/jc.1","lines_changed":2}]},"message":"formatting"},{"commit":"55b272e41259ddc835cf4eb513fb67e7b2cf1573","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":2}]},"message":"tighten stat data detection"},{"commit":"94f62a9bf36242310790a0f37c66b2e6c6fdc078","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/stat_s.md","jc/parsers/stat_s.py"],"file_stats":[{"name":"docs/parsers/stat_s.md","lines_changed":6},{"name":"jc/parsers/stat_s.py","lines_changed":6}]},"message":"formatting"},{"commit":"8d19e4cb7b45e3b6cb8c404c959949b7593c9386","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":115,"deletions":1,"files":["CHANGELOG","README.md","docs/parsers/stat_s.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/stat_s.md","lines_changed":105},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update"},{"commit":"7e510d48e0f8426a67cf8d70d06d0331c274d358","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":106,"deletions":2,"files":["jc/parsers/stat_s.py","tests/fixtures/centos-7.7/stat-streaming.json","tests/fixtures/freebsd12/stat-streaming.json",".../stat-filename-with-spaces-streaming.json","tests/fixtures/osx-10.14.6/stat-streaming.json","tests/fixtures/ubuntu-18.04/stat-streaming.json","tests/test_stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":3},{"name":"tests/fixtures/centos-7.7/stat-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/stat-streaming.json","lines_changed":1},{"name":".../stat-filename-with-spaces-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/stat-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/stat-streaming.json","lines_changed":1},{"name":"tests/test_stat_s.py","lines_changed":100}]},"message":"simplify non-stat parse error logic"},{"commit":"7b20cffb143447f4497bc4e895eac2426e8a519f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":8}]},"message":"simplify last item logic"},{"commit":"5c934c43c13b69183561da8a77280feb3363e950","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":2}]},"message":"add continue to simplify logic"},{"commit":"8609298449e997ba4804d818f4fc23cb393ded7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":8}]},"message":"update docstring"},{"commit":"72cb0dc10b2dac486d3e2a52cf44baf0d7496034","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":10,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":24}]},"message":"fixup for first and last items"},{"commit":"7b22fa81ded0f6f59e250ffea63c5d2a0f928b25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":8}]},"message":"raise for non-stat data"},{"commit":"0b6a1307790e0793917bc2781e4873aa9dd67225","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":4}]},"message":"ignore blank lines"},{"commit":"fdcf4338e0f099699f8d48df6382be1cc97dba84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":6}]},"message":"add examples to docstring"},{"commit":"ee43037f481286a34a766390568965fdd53af132","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":2}]},"message":"remove unused continue lines"},{"commit":"26e365563c314e694915c7a3feae490ea99a112c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":50,"deletions":11,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":61}]},"message":"add schema and _process logic"},{"commit":"1b39586bb1b62aee8ae709512c2e3f79cefdb3d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":227,"deletions":0,"files":["jc/cli.py","jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/stat_s.py","lines_changed":226}]},"message":"add stat streaming parser"},{"commit":"8bb3a6bea34d60d49039f1ed72fd7e413edc05da","merge":"78672bd e6900e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #194 from kellyjonbrazil/master\n\nsync to dev"},{"commit":"e6900e2000bf265dfcfc09ffbfda39e9238661af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":21}]},"message":"add jar-manifest"},{"commit":"0ee244756bf39123e4873eb231156edbe7f0e0ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/jar_manifest.md","jc/parsers/jar_manifest.py"],"file_stats":[{"name":"docs/parsers/jar_manifest.md","lines_changed":2},{"name":"jc/parsers/jar_manifest.py","lines_changed":2}]},"message":"spelling"},{"commit":"6d5ac9abe6712e01887ce0d96c278a568319f405","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["docs/parsers/csv.md","docs/parsers/csv_s.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"update docs"},{"commit":"44f6d9e1321459be8196aeebf6db088cc5120e61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"changelog update"},{"commit":"360154559c5dee6affa55bbdd5d2f473248b9168","merge":"241d53a 78672bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #193 from kellyjonbrazil/dev\n\nDev add csv doublequote fix"},{"commit":"78672bd7ad66c418e0ecf31add73f887b0946d29","merge":"bc7973a 65d96e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #190 from shaikustin/csv-doubleqouted\n\nfix doubleqoute in csv"},{"commit":"65d96e26b59e231c77c1dbba1dc91708c33de30c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":13,"deletions":0,"files":["tests/fixtures/generic/csv-doubleqouted-streaming.json","tests/test_csv_s.py"],"file_stats":[{"name":"tests/fixtures/generic/csv-doubleqouted-streaming.json","lines_changed":1},{"name":"tests/test_csv_s.py","lines_changed":12}]},"message":"add streaming tests"},{"commit":"241d53af9a5c9bba70e28835e22c52c0060269ba","merge":"f733100 bc7973a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #192 from kellyjonbrazil/dev\n\nDev v1.17.6"},{"commit":"5563829df2849a899df2e9211d6c92bddc695f9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":8}]},"message":"make dialect sniff behavior match non-streaming parser"},{"commit":"3a4a27e1f94ee07352c7616c57ec655c1aea04f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/csv.py"],"file_stats":[{"name":"jc/parsers/csv.py","lines_changed":4}]},"message":"version bump"},{"commit":"9c887a36a804d817c3f669a55b9b1566d09d645d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":6}]},"message":"update csv_s parser with csv changes"},{"commit":"bc7973af36e13006230b5faa9e201e300d468912","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","jc/cli.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"update copyright"},{"commit":"32972d8fdbdc71923978fd5c2a87fd6cfa4b7f8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":122,"deletions":9,"files":["CHANGELOG","README.md","docs/parsers/jar_manifest.md","jc/__init__.py","jc/parsers/jar_manifest.py","man/jc.1","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/jar_manifest.md","lines_changed":104},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/parsers/jar_manifest.py","lines_changed":12},{"name":"man/jc.1","lines_changed":7},{"name":"setup.py","lines_changed":2}]},"message":"doc update"},{"commit":"b128d9109cbdb1176f2473d450023bb0be02531b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":46,"deletions":0,"files":["tests/test_jar_manifest.py"],"file_stats":[{"name":"tests/test_jar_manifest.py","lines_changed":46}]},"message":"add MANIFEST.MF tests"},{"commit":"929d7273a422c2bd5b83e5e19d32630f1a027f75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/jar_manifest.py"],"file_stats":[{"name":"jc/parsers/jar_manifest.py","lines_changed":8}]},"message":"doc updates"},{"commit":"2a40f842743a8745d651b4b6cae645045e6c6aab","author":"shaik","author_email":"shai.kustin@torq.io","commit_by":"shaik","commit_by_email":"shai.kustin@torq.io","stats":{"files_changed":4,"insertions":22,"deletions":1,"files":["jc/parsers/csv.py","tests/fixtures/generic/csv-doubleqouted.csv","tests/fixtures/generic/csv-doubleqouted.json","tests/test_csv.py"],"file_stats":[{"name":"jc/parsers/csv.py","lines_changed":4},{"name":"tests/fixtures/generic/csv-doubleqouted.csv","lines_changed":3},{"name":"tests/fixtures/generic/csv-doubleqouted.json","lines_changed":4},{"name":"tests/test_csv.py","lines_changed":12}]},"message":"fix doubleqoute in csv"},{"commit":"9ff6fa818f0857321e4b3b089d288997f2ae27af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add jar-manifest"},{"commit":"dac73a4bfe24e36474fdf6ff60c23e784ca409bd","merge":"d789554 f733100","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #189 from kellyjonbrazil/master\n\nuse github releases instead of packaging site"},{"commit":"d7895547f74744e82317eabe4c870115701872be","merge":"f8e09ae b7d439c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #188 from listuser/new_branch\n\nCreate key value pairs from a MANIFEST.MF file, to include key multiline value pairs."},{"commit":"b7d439cb870e443e4f4e4a2137ab170835e77eff","author":"listuser","author_email":null,"commit_by":"listuser","commit_by_email":null,"stats":{"files_changed":3,"insertions":2220,"deletions":9,"files":["jc/parsers/{jar-manifest.py => jar_manifest.py}","tests/fixtures/rhel-8/MANIFEST.MF.MULTI.json","tests/fixtures/rhel-8/MANIFEST.MF.MULTI.out"],"file_stats":[{"name":"jc/parsers/{jar-manifest.py => jar_manifest.py}","lines_changed":18},{"name":"tests/fixtures/rhel-8/MANIFEST.MF.MULTI.json","lines_changed":1},{"name":"tests/fixtures/rhel-8/MANIFEST.MF.MULTI.out","lines_changed":2210}]},"message":"Renamed jar-manifest.py to jar_manifest.py, added multi manifest outputs to tests..."},{"commit":"7cc903a5f5ca368be97babadc72689375567a901","author":"listuser","author_email":null,"commit_by":"listuser","commit_by_email":null,"stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/jar-manifest.py"],"file_stats":[{"name":"jc/parsers/jar-manifest.py","lines_changed":3}]},"message":"Removed inflating from examples in jar-manifest.py"},{"commit":"c495a8291bd3e1fd070ee2e018b9b550f9c86314","author":"listuser","author_email":null,"commit_by":"listuser","commit_by_email":null,"stats":{"files_changed":1,"insertions":1,"deletions":292,"files":["tests/fixtures/rhel-8/MANIFEST.MF.json"],"file_stats":[{"name":"tests/fixtures/rhel-8/MANIFEST.MF.json","lines_changed":293}]},"message":"Updated test output in MANIFEST.MF.json"},{"commit":"5e1d7d777c627fb17feda6e51d9640bbd0f03302","author":"listuser","author_email":null,"commit_by":"listuser","commit_by_email":null,"stats":{"files_changed":8,"insertions":304,"deletions":2544,"files":["jc/parsers/{metamf.py => jar-manifest.py}","tests/fixtures/rhel-8/MANIFEST.MF.json",".../rhel-8/{MANIFEST.MF => MANIFEST.MF.out}",".../rhel-8/cmds_used_to_generate_test_data.txt",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out"],"file_stats":[{"name":"jc/parsers/{metamf.py => jar-manifest.py}","lines_changed":34},{"name":"tests/fixtures/rhel-8/MANIFEST.MF.json","lines_changed":293},{"name":".../rhel-8/{MANIFEST.MF => MANIFEST.MF.out}","lines_changed":0},{"name":".../rhel-8/cmds_used_to_generate_test_data.txt","lines_changed":14},{"name":".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json","lines_changed":1},{"name":".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out","lines_changed":2210},{"name":".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json","lines_changed":1},{"name":".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out","lines_changed":295}]},"message":"Renamed metamf.py to jar-manifest.py, plus other changes"},{"commit":"7edad3f676fe5560017ca9cb05ede6f46787e78f","author":"listuser","author_email":null,"commit_by":"listuser","commit_by_email":null,"stats":{"files_changed":8,"insertions":3042,"deletions":0,"files":["jc/parsers/metamf.py","tests/fixtures/rhel-8/MANIFEST.MF","tests/fixtures/rhel-8/MANIFEST.MF.json",".../rhel-8/cmds_used_to_generate_test_data.txt",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out"],"file_stats":[{"name":"jc/parsers/metamf.py","lines_changed":228},{"name":"tests/fixtures/rhel-8/MANIFEST.MF","lines_changed":292},{"name":"tests/fixtures/rhel-8/MANIFEST.MF.json","lines_changed":1},{"name":".../rhel-8/cmds_used_to_generate_test_data.txt","lines_changed":14},{"name":".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json","lines_changed":1},{"name":".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out","lines_changed":2210},{"name":".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json","lines_changed":1},{"name":".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out","lines_changed":295}]},"message":"Create key value pairs from a MANIFEST.MF file, to include key multiline value pairs."},{"commit":"f7331001d4ab976e311458a16b6e5337da2e3aab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":5},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":5}]},"message":"use github releases instead of packaging site"},{"commit":"f8e09ae2ffe185d21305d566fad20f510df9890f","merge":"2e4f5a5 433c7cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #187 from kellyjonbrazil/master\n\nsync to dev"},{"commit":"433c7cc0f05e321ffe024845a908f3e856d4cd2b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/zipinfo.md","jc/parsers/zipinfo.py"],"file_stats":[{"name":"docs/parsers/zipinfo.md","lines_changed":1},{"name":"jc/parsers/zipinfo.py","lines_changed":1}]},"message":"formatting"},{"commit":"d753e71a7452310d45fa605a2e4c70320ed60dbb","merge":"3ac8d03 2e4f5a5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #186 from kellyjonbrazil/dev\n\nDev v1.17.5"},{"commit":"2e4f5a508b6c90f9e03dcbcf64efc0e2fc446666","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":6,"deletions":3,"files":["CHANGELOG","jc/__init__.py","man/jc.1","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"88b960eff6cb3739d0d243c8d8b3e8ad5b8eb97c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":144,"deletions":1,"files":["EXAMPLES.md","README.md","docs/parsers/zipinfo.md","man/jc.1"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":31},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/zipinfo.md","lines_changed":106},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update"},{"commit":"88c77bd89e2c2a5f023e6638816c9153b6276d35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":47,"deletions":0,"files":["tests/fixtures/osx-10.14.6/zipinfo-multi.json","tests/test_zipinfo.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/zipinfo-multi.json","lines_changed":1},{"name":"tests/test_zipinfo.py","lines_changed":46}]},"message":"add zipinfo tests"},{"commit":"51a7a4251fff518d8da78ffa41e7ba2e2cb47f12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":0,"files":["tests/fixtures/osx-10.14.6/zipinfo-multi.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/zipinfo-multi.out","lines_changed":24}]},"message":"add multi-archive test output"},{"commit":"51d2f316f388d962c26aeb4f42affebec339e5a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":97,"deletions":72,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":169}]},"message":"add multi-archive support"},{"commit":"ff78a46c4854339a097992701351ef471aff1671","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"add zipinfo parser"},{"commit":"ed4a9dc1d470f64bcc9de35b2d98568ffd50257d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":23,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":44}]},"message":"formatting"},{"commit":"63182dba26040974cb8cada6f5910bb29b1fa3ed","merge":"b450697 9c1eaa9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #185 from listuser/new_branch\n\ncontributed zipinfo parser"},{"commit":"9c1eaa938934269fe4179da798acf5f119cde0cf","author":"Matt J","author_email":"none","commit_by":"Matt J","commit_by_email":"none","stats":{"files_changed":2,"insertions":68,"deletions":61,"files":["jc/parsers/zipinfo.py","tests/fixtures/rhel-8/zipinfo.json"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":127},{"name":"tests/fixtures/rhel-8/zipinfo.json","lines_changed":2}]},"message":"revised zipinfo.py nested version"},{"commit":"bc520fcbcdfad6a53e51944391fd24512bed8128","author":"Matt J","author_email":"none","commit_by":"Matt J","commit_by_email":"none","stats":{"files_changed":2,"insertions":63,"deletions":53,"files":["jc/parsers/zipinfo.py","tests/fixtures/rhel-8/zipinfo.json"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":114},{"name":"tests/fixtures/rhel-8/zipinfo.json","lines_changed":2}]},"message":"added zipinfo.py nested version"},{"commit":"46faac1a12a5b39d6a25427f6e8fdcca1204dbcd","author":"Matt J","author_email":"none","commit_by":"Matt J","commit_by_email":"none","stats":{"files_changed":2,"insertions":1222,"deletions":0,"files":["tests/fixtures/rhel-8/zipinfo.json","tests/fixtures/rhel-8/zipinfo.out"],"file_stats":[{"name":"tests/fixtures/rhel-8/zipinfo.json","lines_changed":1},{"name":"tests/fixtures/rhel-8/zipinfo.out","lines_changed":1221}]},"message":"add test data zipinfo.json and zipinfo.out"},{"commit":"3c424c0cb3cff462a963183585b57bea004e974f","author":"Matt J","author_email":"none","commit_by":"Matt J","commit_by_email":"none","stats":{"files_changed":1,"insertions":165,"deletions":0,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":165}]},"message":"initial commit zipinfo.py to new_branch"},{"commit":"3ac8d0362b4fb9999fc55a60a9cb20ac80d114f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"use quotes around python versions"},{"commit":"d88b998e6c7826a9ecae18663328e2d2915030fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":8},{"name":"jc/parsers/csv_s.py","lines_changed":8}]},"message":"formatting"},{"commit":"a9ed55c00652a563391a7930c7a4649967131ae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":11,"deletions":11,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]},"message":"fix spelling"},{"commit":"ea614341232e5272ee0c7fd46ba0f313033c761f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":16,"deletions":8,"files":["docs/parsers/crontab.md","docs/parsers/crontab_u.md","jc/parsers/crontab.py","jc/parsers/crontab_u.py"],"file_stats":[{"name":"docs/parsers/crontab.md","lines_changed":6},{"name":"docs/parsers/crontab_u.md","lines_changed":6},{"name":"jc/parsers/crontab.py","lines_changed":6},{"name":"jc/parsers/crontab_u.py","lines_changed":6}]},"message":"fix schema docs"},{"commit":"a73d0d26cbe2860b8374661068e09e0717a3bab2","merge":"a7de911 b450697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #184 from kellyjonbrazil/dev\n\nDev 1.17.4"},{"commit":"b4506976e3c865397bc657183d49c484d8bcfd7a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":8},{"name":"templates/manpage_template","lines_changed":6}]},"message":"formatting"},{"commit":"34cb75a09697a06c3878f2f9a84eb3bd2a90ae62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/__init__.py","setup.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"34df643f60712ae25645cb7cddff80e43c12262b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":18,"deletions":0,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"man/jc.1","lines_changed":6},{"name":"templates/manpage_template","lines_changed":6},{"name":"templates/readme_template","lines_changed":3}]},"message":"add disable colors section"},{"commit":"ac7c13fcc013d386f34db51d634298fa3e97eccd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":11,"deletions":1,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"man/jc.1","lines_changed":6},{"name":"templates/manpage_template","lines_changed":4},{"name":"templates/readme_template","lines_changed":1}]},"message":"add -C option to docs"},{"commit":"4fdb34c7d5fcaa65e2ccab814c3acf2f0f70c442","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"add no-color.org"},{"commit":"7ac468e35aac1a63c4e22f33aead74a6e41a22a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"changelog update"},{"commit":"df190aa299f1669d1fe09380026ae086839abc02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":15,"deletions":7,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":22}]},"message":"add -C option to force color even with pipes"},{"commit":"9621475e86fe20fcdc2902b6ce7860a833ae2ca0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"changelog update"},{"commit":"82e0160de820ad2ed6143f58458711d600b929a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"refactor NO_COLOR test"},{"commit":"d03fb8b626a97e81006d0b108c8f400fe4e2ce3b","merge":"b300dfb 7933dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"b300dfb3d75fe76e2ddbb087ff742dd0b5e6155b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"Add support for NO_COLOR env variable"},{"commit":"a7de9111d97e687cafbc0709ec3ff7453d658a80","merge":"21e69a7 7933dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #183 from kellyjonbrazil/dev\n\nDev v1.17.3"},{"commit":"7933dfdbe7bf400833d6f6b771362dfc518b9a8d","merge":"f7cb5f7 21e69a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge branch 'master' into dev"},{"commit":"f7cb5f7d01ac01538bee4da816408072b585768e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"update date"},{"commit":"a26a298f1a3c141171e7d7ce459a27a297cec031","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":148,"deletions":1,"files":["README.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/iostat.md","lines_changed":15},{"name":"docs/parsers/iostat_s.md","lines_changed":126},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update"},{"commit":"dbd134d0dac2fc152183480958fd9e65919ac98d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat_s.py","lines_changed":6}]},"message":"add examples to docs"},{"commit":"11aa01b0d9d6913059f98f9bd7591d7cad9037cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":15,"insertions":15,"deletions":1,"files":["jc/parsers/iostat_s.py","tests/fixtures/centos-7.7/iostat-1-streaming.json","tests/fixtures/centos-7.7/iostat-m-streaming.json","tests/fixtures/centos-7.7/iostat-mx-streaming.json","tests/fixtures/centos-7.7/iostat-streaming.json","tests/fixtures/centos-7.7/iostat-x-streaming.json","tests/fixtures/ubuntu-18.04/iostat-1-streaming.json","tests/fixtures/ubuntu-18.04/iostat-m-streaming.json","tests/fixtures/ubuntu-18.04/iostat-mx-streaming.json","tests/fixtures/ubuntu-18.04/iostat-streaming.json","tests/fixtures/ubuntu-18.04/iostat-x-streaming.json","tests/fixtures/ubuntu-20.10/iostat-m-streaming.json","tests/fixtures/ubuntu-20.10/iostat-mx-streaming.json","tests/fixtures/ubuntu-20.10/iostat-streaming.json","tests/fixtures/ubuntu-20.10/iostat-x-streaming.json"],"file_stats":[{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iostat-1-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-m-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-mx-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-x-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-1-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-m-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-mx-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-x-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-m-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-mx-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-x-streaming.json","lines_changed":1}]},"message":"iostat-s tests"},{"commit":"6f18e5344356684e845ec63158c570d82156254f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":203,"deletions":0,"files":["tests/test_iostat_s.py"],"file_stats":[{"name":"tests/test_iostat_s.py","lines_changed":203}]},"message":"fix for null lines"},{"commit":"7b467c466568ad4e7986d4d7cf3ec606681b6d46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":137,"deletions":0,"files":["tests/fixtures/ubuntu-20.10/iostat-m.json","tests/fixtures/ubuntu-20.10/iostat-m.out","tests/fixtures/ubuntu-20.10/iostat-mx.json","tests/fixtures/ubuntu-20.10/iostat-mx.out","tests/fixtures/ubuntu-20.10/iostat-x.json","tests/fixtures/ubuntu-20.10/iostat-x.out","tests/fixtures/ubuntu-20.10/iostat.json","tests/fixtures/ubuntu-20.10/iostat.out","tests/test_iostat.py"],"file_stats":[{"name":"tests/fixtures/ubuntu-20.10/iostat-m.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-m.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-20.10/iostat-mx.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-mx.out","lines_changed":22},{"name":"tests/fixtures/ubuntu-20.10/iostat-x.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-x.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-20.10/iostat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat.out","lines_changed":22},{"name":"tests/test_iostat.py","lines_changed":47}]},"message":"add ubuntu 20.10 tests"},{"commit":"537b8f263087894c02b5b7c121765cf96182a370","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":4},{"name":"jc/parsers/iostat_s.py","lines_changed":4}]},"message":"add more int conversions"},{"commit":"4d823575e791999e200dedd491511c4fde64fc2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":4},{"name":"jc/parsers/iostat_s.py","lines_changed":4}]},"message":"add more float fields"},{"commit":"541aa1d09f20ff6979eabaa66790decb3895f18d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":68,"deletions":8,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":15},{"name":"jc/parsers/iostat_s.py","lines_changed":61}]},"message":"Add new field float conversions for iostat v11"},{"commit":"8f02021014b7b19acf1a8bbd777161aa82c65d66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat_s.py","lines_changed":1}]},"message":"formatting"},{"commit":"158a15157c7e5dde95dc21766d0696bd82486688","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"changelog update"},{"commit":"2752e0d66a9ba0b57ac86913fd302ada23c280c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":166,"deletions":0,"files":["jc/cli.py","jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/iostat_s.py","lines_changed":165}]},"message":"add iostat streaming parser"},{"commit":"6c11e912afe3c4d16da9199b5c2fc10461928ac3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"update changelog"},{"commit":"43d34461e27e3e4ac5f985786831c170b348c7c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":83,"insertions":279,"deletions":81,"files":["README.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/utils.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/dpkg_l.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/finger.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/gshadow.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iostat.md","lines_changed":172},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":22},{"name":"man/jc.1","lines_changed":7}]},"message":"update docs"},{"commit":"4dfdc9b0f65d8c950ed74545d0cc3f95c8abec6c","merge":"e2311cb 6665ffa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"e2311cbb03f407414df953c8d1c07d0cf1a549ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":400,"deletions":0,"files":["tests/fixtures/centos-7.7/iostat-1.json","tests/fixtures/centos-7.7/iostat-1.out","tests/fixtures/centos-7.7/iostat-m.json","tests/fixtures/centos-7.7/iostat-m.out","tests/fixtures/centos-7.7/iostat-mx.json","tests/fixtures/centos-7.7/iostat-mx.out","tests/fixtures/centos-7.7/iostat-x.json","tests/fixtures/centos-7.7/iostat-x.out","tests/fixtures/centos-7.7/iostat.json","tests/fixtures/centos-7.7/iostat.out","tests/fixtures/ubuntu-18.04/iostat-1.json","tests/fixtures/ubuntu-18.04/iostat-1.out","tests/fixtures/ubuntu-18.04/iostat-m.json","tests/fixtures/ubuntu-18.04/iostat-m.out","tests/fixtures/ubuntu-18.04/iostat-mx.json","tests/fixtures/ubuntu-18.04/iostat-mx.out","tests/fixtures/ubuntu-18.04/iostat-x.json","tests/fixtures/ubuntu-18.04/iostat-x.out","tests/fixtures/ubuntu-18.04/iostat.json","tests/fixtures/ubuntu-18.04/iostat.out","tests/test_iostat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/iostat-1.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-1.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/iostat-m.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-m.out","lines_changed":10},{"name":"tests/fixtures/centos-7.7/iostat-mx.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-mx.out","lines_changed":9},{"name":"tests/fixtures/centos-7.7/iostat-x.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-x.out","lines_changed":10},{"name":"tests/fixtures/centos-7.7/iostat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat.out","lines_changed":9},{"name":"tests/fixtures/ubuntu-18.04/iostat-1.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-1.out","lines_changed":77},{"name":"tests/fixtures/ubuntu-18.04/iostat-m.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-m.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-18.04/iostat-mx.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-mx.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/iostat-x.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-x.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/iostat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat.out","lines_changed":27},{"name":"tests/test_iostat.py","lines_changed":143}]},"message":"add iostat tests"},{"commit":"bf15575e90985cfec5c57dd11dfa2b86d53a41be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":7,"files":["jc/parsers/iostat.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":21}]},"message":"fixes for ubunut"},{"commit":"406336c7185b539b5e00532b58146d5b1b73f259","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":44,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":44}]},"message":"add iostat example"},{"commit":"6665ffaeb8107e9db3b917db0663beaf44024533","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"remove python 3.6 from tests"},{"commit":"dcf552ca0c69aa5f0309a83dc33dee7c5ed81292","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":138,"deletions":47,"files":["jc/parsers/iostat.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":185}]},"message":"add _process and cleanup"},{"commit":"7a6ebf3c9555dd82df7dc0b71981cdd32ce0061d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":171,"deletions":0,"files":["jc/cli.py","jc/parsers/iostat.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/iostat.py","lines_changed":170}]},"message":"add iostat parser"},{"commit":"d2dc4a983c86c538e13e568b908072de4ca0daaf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"changelog update"},{"commit":"1168259bc23862f671326d41f5282a3575205214","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":3}]},"message":"add doc strings"},{"commit":"e8e4b46021557fbf5776c32dff46de022817fb6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":14,"deletions":19,"files":["jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":5},{"name":"jc/parsers/foo_s.py","lines_changed":7},{"name":"jc/parsers/ls_s.py","lines_changed":7},{"name":"jc/parsers/ping_s.py","lines_changed":7},{"name":"jc/parsers/vmstat_s.py","lines_changed":7}]},"message":"use jc.utils type checks"},{"commit":"12d2de22821fd8f57f4d412e62f53db3d89d5e30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":77,"insertions":181,"deletions":165,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":4},{"name":"jc/parsers/airport.py","lines_changed":4},{"name":"jc/parsers/airport_s.py","lines_changed":4},{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/blkid.py","lines_changed":4},{"name":"jc/parsers/cksum.py","lines_changed":4},{"name":"jc/parsers/crontab.py","lines_changed":4},{"name":"jc/parsers/crontab_u.py","lines_changed":4},{"name":"jc/parsers/csv.py","lines_changed":4},{"name":"jc/parsers/date.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":5},{"name":"jc/parsers/dir.py","lines_changed":4},{"name":"jc/parsers/dmidecode.py","lines_changed":4},{"name":"jc/parsers/dpkg_l.py","lines_changed":4},{"name":"jc/parsers/du.py","lines_changed":4},{"name":"jc/parsers/env.py","lines_changed":4},{"name":"jc/parsers/file.py","lines_changed":4},{"name":"jc/parsers/finger.py","lines_changed":4},{"name":"jc/parsers/foo.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":4},{"name":"jc/parsers/fstab.py","lines_changed":4},{"name":"jc/parsers/group.py","lines_changed":4},{"name":"jc/parsers/gshadow.py","lines_changed":4},{"name":"jc/parsers/hash.py","lines_changed":4},{"name":"jc/parsers/hashsum.py","lines_changed":4},{"name":"jc/parsers/hciconfig.py","lines_changed":4},{"name":"jc/parsers/history.py","lines_changed":4},{"name":"jc/parsers/hosts.py","lines_changed":4},{"name":"jc/parsers/id.py","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":4},{"name":"jc/parsers/ini.py","lines_changed":4},{"name":"jc/parsers/iptables.py","lines_changed":4},{"name":"jc/parsers/iw_scan.py","lines_changed":4},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/last.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4},{"name":"jc/parsers/lsblk.py","lines_changed":4},{"name":"jc/parsers/lsmod.py","lines_changed":4},{"name":"jc/parsers/lsof.py","lines_changed":4},{"name":"jc/parsers/lsusb.py","lines_changed":4},{"name":"jc/parsers/mount.py","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":4},{"name":"jc/parsers/ntpq.py","lines_changed":4},{"name":"jc/parsers/passwd.py","lines_changed":4},{"name":"jc/parsers/ping.py","lines_changed":4},{"name":"jc/parsers/pip_list.py","lines_changed":4},{"name":"jc/parsers/pip_show.py","lines_changed":4},{"name":"jc/parsers/ps.py","lines_changed":4},{"name":"jc/parsers/route.py","lines_changed":4},{"name":"jc/parsers/rpm_qi.py","lines_changed":4},{"name":"jc/parsers/sfdisk.py","lines_changed":4},{"name":"jc/parsers/shadow.py","lines_changed":4},{"name":"jc/parsers/ss.py","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"jc/parsers/sysctl.py","lines_changed":4},{"name":"jc/parsers/systemctl.py","lines_changed":4},{"name":"jc/parsers/systemctl_lj.py","lines_changed":4},{"name":"jc/parsers/systemctl_ls.py","lines_changed":4},{"name":"jc/parsers/systemctl_luf.py","lines_changed":4},{"name":"jc/parsers/systeminfo.py","lines_changed":4},{"name":"jc/parsers/time.py","lines_changed":4},{"name":"jc/parsers/timedatectl.py","lines_changed":4},{"name":"jc/parsers/tracepath.py","lines_changed":4},{"name":"jc/parsers/traceroute.py","lines_changed":4},{"name":"jc/parsers/ufw.py","lines_changed":4},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":4},{"name":"jc/parsers/uname.py","lines_changed":4},{"name":"jc/parsers/upower.py","lines_changed":4},{"name":"jc/parsers/uptime.py","lines_changed":4},{"name":"jc/parsers/vmstat.py","lines_changed":4},{"name":"jc/parsers/w.py","lines_changed":4},{"name":"jc/parsers/wc.py","lines_changed":4},{"name":"jc/parsers/who.py","lines_changed":4},{"name":"jc/parsers/xml.py","lines_changed":4},{"name":"jc/parsers/yaml.py","lines_changed":4},{"name":"jc/utils.py","lines_changed":40}]},"message":"use jc.utils.input_type_check() and simplify compatibility check"},{"commit":"0e2fe401e1c49a9f947d7d17b72cfc4e90787f47","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]},"message":"version bump"},{"commit":"14247adb0ae007924ca551a706eb0cfdbae97a41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["jc/parsers/csv_s.py","tests/test_csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":7},{"name":"tests/test_csv_s.py","lines_changed":2}]},"message":"add input type checks"},{"commit":"3a9f0934c41c85ea7fa87165b9559f08814645cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":3,"files":["jc/parsers/ls_s.py","tests/test_ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":6},{"name":"tests/test_ls_s.py","lines_changed":2}]},"message":"add input type checks"},{"commit":"caf0a5c8713bf0d72951a2c6fd5a2c62c9eb59d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":4,"files":["jc/parsers/vmstat_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":9},{"name":"tests/test_vmstat_s.py","lines_changed":2}]},"message":"add input type checking"},{"commit":"cfb58b1cf3e3028f8e03fdd93f0165cf8d230e1e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":8}]},"message":"add input type checks"},{"commit":"975cf195cc02774f50460ca479d9ebb7b73c7870","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":1}]},"message":"formatting"},{"commit":"8a46a259a36efc55bb0b2141acb9dd5ae52b7725","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["jc/parsers/ping_s.py","tests/test_ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":8},{"name":"tests/test_ping_s.py","lines_changed":2}]},"message":"add input type checks"},{"commit":"e395142e599aa78b4a7ec80dcc3f8ccf279f97b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"caaeaf0d67cf44f8d2651cc53a7528d3ef0c74d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":76,"insertions":227,"deletions":227,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":6},{"name":"jc/parsers/airport.py","lines_changed":6},{"name":"jc/parsers/airport_s.py","lines_changed":6},{"name":"jc/parsers/arp.py","lines_changed":6},{"name":"jc/parsers/blkid.py","lines_changed":6},{"name":"jc/parsers/cksum.py","lines_changed":6},{"name":"jc/parsers/crontab.py","lines_changed":6},{"name":"jc/parsers/crontab_u.py","lines_changed":6},{"name":"jc/parsers/csv.py","lines_changed":6},{"name":"jc/parsers/date.py","lines_changed":6},{"name":"jc/parsers/df.py","lines_changed":6},{"name":"jc/parsers/dig.py","lines_changed":6},{"name":"jc/parsers/dir.py","lines_changed":6},{"name":"jc/parsers/dmidecode.py","lines_changed":6},{"name":"jc/parsers/dpkg_l.py","lines_changed":6},{"name":"jc/parsers/du.py","lines_changed":6},{"name":"jc/parsers/env.py","lines_changed":6},{"name":"jc/parsers/file.py","lines_changed":6},{"name":"jc/parsers/finger.py","lines_changed":6},{"name":"jc/parsers/foo.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":6},{"name":"jc/parsers/fstab.py","lines_changed":6},{"name":"jc/parsers/group.py","lines_changed":6},{"name":"jc/parsers/gshadow.py","lines_changed":6},{"name":"jc/parsers/hash.py","lines_changed":6},{"name":"jc/parsers/hashsum.py","lines_changed":6},{"name":"jc/parsers/hciconfig.py","lines_changed":6},{"name":"jc/parsers/history.py","lines_changed":6},{"name":"jc/parsers/hosts.py","lines_changed":6},{"name":"jc/parsers/id.py","lines_changed":6},{"name":"jc/parsers/ifconfig.py","lines_changed":6},{"name":"jc/parsers/ini.py","lines_changed":6},{"name":"jc/parsers/iptables.py","lines_changed":6},{"name":"jc/parsers/iw_scan.py","lines_changed":6},{"name":"jc/parsers/jobs.py","lines_changed":6},{"name":"jc/parsers/last.py","lines_changed":6},{"name":"jc/parsers/ls.py","lines_changed":6},{"name":"jc/parsers/lsblk.py","lines_changed":6},{"name":"jc/parsers/lsmod.py","lines_changed":6},{"name":"jc/parsers/lsof.py","lines_changed":6},{"name":"jc/parsers/lsusb.py","lines_changed":6},{"name":"jc/parsers/mount.py","lines_changed":6},{"name":"jc/parsers/netstat.py","lines_changed":6},{"name":"jc/parsers/ntpq.py","lines_changed":6},{"name":"jc/parsers/passwd.py","lines_changed":6},{"name":"jc/parsers/ping.py","lines_changed":6},{"name":"jc/parsers/pip_list.py","lines_changed":6},{"name":"jc/parsers/pip_show.py","lines_changed":6},{"name":"jc/parsers/ps.py","lines_changed":6},{"name":"jc/parsers/route.py","lines_changed":6},{"name":"jc/parsers/rpm_qi.py","lines_changed":6},{"name":"jc/parsers/sfdisk.py","lines_changed":6},{"name":"jc/parsers/shadow.py","lines_changed":6},{"name":"jc/parsers/ss.py","lines_changed":6},{"name":"jc/parsers/stat.py","lines_changed":6},{"name":"jc/parsers/sysctl.py","lines_changed":6},{"name":"jc/parsers/systemctl.py","lines_changed":6},{"name":"jc/parsers/systemctl_lj.py","lines_changed":6},{"name":"jc/parsers/systemctl_ls.py","lines_changed":6},{"name":"jc/parsers/systemctl_luf.py","lines_changed":6},{"name":"jc/parsers/systeminfo.py","lines_changed":6},{"name":"jc/parsers/time.py","lines_changed":6},{"name":"jc/parsers/timedatectl.py","lines_changed":6},{"name":"jc/parsers/tracepath.py","lines_changed":6},{"name":"jc/parsers/traceroute.py","lines_changed":6},{"name":"jc/parsers/ufw.py","lines_changed":6},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":6},{"name":"jc/parsers/uname.py","lines_changed":6},{"name":"jc/parsers/upower.py","lines_changed":6},{"name":"jc/parsers/uptime.py","lines_changed":6},{"name":"jc/parsers/vmstat.py","lines_changed":6},{"name":"jc/parsers/w.py","lines_changed":6},{"name":"jc/parsers/wc.py","lines_changed":6},{"name":"jc/parsers/who.py","lines_changed":6},{"name":"jc/parsers/xml.py","lines_changed":6},{"name":"jc/parsers/yaml.py","lines_changed":6}]},"message":"add 'str' type check on input"},{"commit":"21e69a7cbf62240238f6fb78e874dda6ce2e922a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"],"file_stats":[{"name":".gitignore","lines_changed":1}]},"message":"ignore _config.yml"},{"commit":"603964935b58e02cf0614cf67ffacc6d94755e05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"remove trailing whitespace"},{"commit":"47eb83ae55b9892716fff712bd2be21b6191b552","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"],"file_stats":[{"name":".gitignore","lines_changed":1}]},"message":"add .vscode"},{"commit":"fc0ce6c95923ab124961e695a26c0b68dd0f359f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add streaming parser to custom parsers info"},{"commit":"077a29fb4eedcfccb026498c5c3a64b7b7601363","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":2,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":8},{"name":"jc/parsers/csv_s.py","lines_changed":8}]},"message":"add _jc_meta field info"},{"commit":"8568d0d328706a7a5b1476452e078d8cbe7b7391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":3,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":4},{"name":"jc/parsers/csv_s.py","lines_changed":4},{"name":"man/jc.1","lines_changed":2}]},"message":"fix csv_s documentation"},{"commit":"597d39c28ea0c0fe3b072413e9d91ab5e27b62bd","merge":"b59e38c eb888dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #180 from kellyjonbrazil/dev\n\nDev v1.17.2"},{"commit":"eb888dcbbcf83c9197bd59aab72f65ea6eb622ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["jc/__init__.py","man/jc.1","setup.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"d1b9ac0841b15ee15690c4066453a322618320ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/df.md","docs/parsers/netstat.md","docs/parsers/ping.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"89a6d9c5c39b74f1b040f410659bfd7ae1a902d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":5}]},"message":"add key-check to restore previous behavior even with non-df data"},{"commit":"85d983761637129cb85abfb0bbdde7c507061cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add df info"},{"commit":"cd7731484d826d84d835ecd460d746e78cadc5fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":62,"deletions":2,"files":["jc/parsers/df.py","tests/fixtures/generic/df-long-filesystem.json","tests/fixtures/generic/df-long-filesystem.out","tests/test_df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":47},{"name":"tests/fixtures/generic/df-long-filesystem.json","lines_changed":1},{"name":"tests/fixtures/generic/df-long-filesystem.out","lines_changed":4},{"name":"tests/test_df.py","lines_changed":12}]},"message":"fix for cases where the Filesystem data overflows the column length (happens on older versions of df)"},{"commit":"086da16b1743c16a5ccdd102f889fb31f99e3caa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":2}]},"message":"version bump"},{"commit":"20830528f04a5ecbe78420d8008249b089667767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":28,"deletions":0,"files":["CHANGELOG","tests/fixtures/generic/netstat-old.json","tests/fixtures/generic/netstat-old.out","tests/test_netstat.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"tests/fixtures/generic/netstat-old.json","lines_changed":1},{"name":"tests/fixtures/generic/netstat-old.out","lines_changed":14},{"name":"tests/test_netstat.py","lines_changed":12}]},"message":"add test for older netstat version fix"},{"commit":"83371edd8fe3d23dfa92fc707604086522c85ab9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat_linux.py"],"file_stats":[{"name":"jc/parsers/netstat_linux.py","lines_changed":2}]},"message":"add space before inode to compensate for removed dash"},{"commit":"364a81decc16742e3caa070d90b1d605d96fe2c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":2}]},"message":"version bump"},{"commit":"ef09592ad3e5c9a77c1bdebe8f876fc4dde54834","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"update for 1.17.2"},{"commit":"4a86e109ccb254d5195b782f84f3967c96ef726c","merge":"5ba22da 7fa5391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #179 from shaikustin/ping-alpine-linux\n\nsupport alpine linux ping"},{"commit":"7fa5391b6613e62689c624041e03f9750c9c7972","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_ping.py"],"file_stats":[{"name":"tests/test_ping.py","lines_changed":2}]},"message":"change alpine ping6 to ping"},{"commit":"9b53ba5714819ff760f2d4546f5d2ee4d521c080","author":"shaik","author_email":"shai.kustin@torq.io","commit_by":"shaik","commit_by_email":"shai.kustin@torq.io","stats":{"files_changed":6,"insertions":45,"deletions":1,"files":["jc/parsers/ping.py",".../fixtures/alpine-linux-3.13/ping-hostname.json","tests/fixtures/alpine-linux-3.13/ping-hostname.out","tests/fixtures/alpine-linux-3.13/ping-ip.json","tests/fixtures/alpine-linux-3.13/ping-ip.out","tests/test_ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":2},{"name":".../fixtures/alpine-linux-3.13/ping-hostname.json","lines_changed":1},{"name":"tests/fixtures/alpine-linux-3.13/ping-hostname.out","lines_changed":9},{"name":"tests/fixtures/alpine-linux-3.13/ping-ip.json","lines_changed":1},{"name":"tests/fixtures/alpine-linux-3.13/ping-ip.out","lines_changed":6},{"name":"tests/test_ping.py","lines_changed":27}]},"message":"support alpine linux ping"},{"commit":"b59e38cfd2c8a7f5868e05d5562557b1c27e5e56","merge":"30cff5f 5ba22da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #176 from kellyjonbrazil/dev\n\nDev v1.17.1"},{"commit":"5ba22dae597b9d154ca0a82f71cfbd8d8a6325db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2}]},"message":"add JSON lines info"},{"commit":"4232e523acc523e510b4881d2a57a95b88ec8c8b","merge":"bee80b3 30cff5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge branch 'master' into dev"},{"commit":"bee80b35d2b8c15e6233f2798e9c02a11e9e1e9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["CHANGELOG","docs/parsers/csv_s.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":8},{"name":"man/jc.1","lines_changed":2}]},"message":"update for version bump"},{"commit":"c32395f6950d6294770ee93e8bf4d79c7d275ac3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":2}]},"message":"linting"},{"commit":"735c5e1078cc27b5cba03b8ebbae15aeca6b8fbd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["tests/test_csv_s.py"],"file_stats":[{"name":"tests/test_csv_s.py","lines_changed":5}]},"message":"update comments for ParseError test: https://bugs.python.org/issue45617"},{"commit":"d09c94b292ca3beec92a00f8a51b7259dd30a1e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add python 3.10 testing info"},{"commit":"4d04866f48f72b9ea0d213dc1533729d3b68a503","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":1}]},"message":"add python bug https://bugs.python.org/issue45617 info"},{"commit":"a2d90f4dfcdc2cb00c6c0fa957493c95a21e256b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_csv_s.py"],"file_stats":[{"name":"tests/test_csv_s.py","lines_changed":2}]},"message":"force test"},{"commit":"93a5002c8b530bd6f5f81e5d8595cde1f836ae41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"fix 3.10.0 version number"},{"commit":"23bf5227a4c39ea017e55fc21150331e1af6fdb7","merge":"77c96fa 3f5a1f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"77c96fa2a96148221bde7d2274e0dfb5386a166f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["tests/test_csv_s.py"],"file_stats":[{"name":"tests/test_csv_s.py","lines_changed":3}]},"message":"try tests on python 3.10"},{"commit":"3f5a1f015e9c0807e227b9f7300592e25502e014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"add python 3.10"},{"commit":"b280c4fc18e60a85ab212b09aa5bf3a05a0eceff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":11,"deletions":19,"files":[".../fixtures/generic/csv-insurance-streaming.json","tests/test_csv_s.py"],"file_stats":[{"name":".../fixtures/generic/csv-insurance-streaming.json","lines_changed":1},{"name":"tests/test_csv_s.py","lines_changed":29}]},"message":"add ParseError test to streaming csv parser"},{"commit":"3ab9b43a2eebf535be98c94810ac474bf32ec515","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":14}]},"message":"raise ParseError on newline bug"},{"commit":"46f568414a5c8d2f135486e86d0ada48cfcefeb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":96,"deletions":89,"files":["tests/test_ls_s.py","tests/test_ping_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"tests/test_ls_s.py","lines_changed":26},{"name":"tests/test_ping_s.py","lines_changed":138},{"name":"tests/test_vmstat_s.py","lines_changed":21}]},"message":"change streaming parser test names"},{"commit":"cba2fd299fff09a551b780e064a6e22bdf7e539a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":75,"deletions":61,"files":[".../generic/csv-10k-sales-records-streaming.json","tests/fixtures/generic/csv-deniro-streaming.json","tests/fixtures/generic/csv-example-streaming.json","tests/fixtures/generic/csv-flyrna-streaming.json","tests/fixtures/generic/csv-flyrna2-streaming.json",".../fixtures/generic/csv-homes-pipe-streaming.json","tests/fixtures/generic/csv-homes-streaming.json",".../fixtures/generic/csv-insurance-streaming.json","tests/test_csv_s.py"],"file_stats":[{"name":".../generic/csv-10k-sales-records-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-deniro-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-example-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna2-streaming.json","lines_changed":1},{"name":".../fixtures/generic/csv-homes-pipe-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-homes-streaming.json","lines_changed":1},{"name":".../fixtures/generic/csv-insurance-streaming.json","lines_changed":1},{"name":"tests/test_csv_s.py","lines_changed":128}]},"message":"add tests"},{"commit":"1e6e44f656f1bbb277eb38fb485f7b48e3b9e40b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":5}]},"message":"fix for piping data with non-platform newlines (e.g. windows csv files on unix)"},{"commit":"acac0399946d9781193e9350dd7109f1dd3999fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":149,"deletions":0,"files":["tests/fixtures/generic/csv-biostats-streaming.json","tests/fixtures/generic/csv-cities-streaming.json","tests/test_csv_s.py"],"file_stats":[{"name":"tests/fixtures/generic/csv-biostats-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-cities-streaming.json","lines_changed":1},{"name":"tests/test_csv_s.py","lines_changed":147}]},"message":"working tests"},{"commit":"50a3b340164b3139f04f67a2bee16e5343c8a2da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":8,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":13}]},"message":"optimizations and use iter() so we can exhaust data coming from list objects"},{"commit":"b45396070cf28fa36ecb44acd7be3e3bb81a712d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_vmstat_s.py"],"file_stats":[{"name":"tests/test_vmstat_s.py","lines_changed":2}]},"message":"update comment"},{"commit":"218b9aec8ac397e26e6cd4ff407f3d10ef88ea9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":87,"deletions":48,"files":["README.md","docs/parsers/csv_s.md","jc/parsers/csv_s.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/csv_s.md","lines_changed":75},{"name":"jc/parsers/csv_s.py","lines_changed":52},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update for streaming CSV parser"},{"commit":"2b887debc647bd533040e392465967d12869cb02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":10172,"deletions":1,"files":["CHANGELOG","jc/cli.py","jc/parsers/csv_s.py","tests/fixtures/generic/csv-10k-sales-records.csv"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/csv_s.py","lines_changed":168},{"name":"tests/fixtures/generic/csv-10k-sales-records.csv","lines_changed":10001}]},"message":"add csv streaming parser"},{"commit":"0313e3f8ca0e22e1575192d765d5afedf48e94df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":6,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":15}]},"message":"linting"},{"commit":"1669e6e20c3af3d28968558b76d0901a56775ac0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":28,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":51}]},"message":"linting"},{"commit":"ef6de75dda90c7221d53e0e0a942f0cac2247354","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":4}]},"message":"add vmstat timestamp tests to utils"},{"commit":"a6bcec425a3f44ba3c7cd06b5ebaf522b66df109","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":2}]},"message":"comment update"},{"commit":"596ad9a64d002ced212b08512126e52707fe73d2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":2}]},"message":"update comment"},{"commit":"7a91c93319f75c37ba6bf268d8270947f0bf8b22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":122,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":122}]},"message":"add lsusb"},{"commit":"b5f7b35f89197879a9f13bd8fa5d2a0c77cc059a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":2}]},"message":"comment update"},{"commit":"2f47fb7f14c4ff0e1c835897d94ee81d14590aba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["tests/test_uname.py"],"file_stats":[{"name":"tests/test_uname.py","lines_changed":5}]},"message":"fix ParseError tests"},{"commit":"1b214c403657a50689f2a04892ce836dea669a1d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":30,"deletions":0,"files":["jc/parsers/lsusb.py","tests/fixtures/generic/lsusb-t.out","tests/test_lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":5},{"name":"tests/fixtures/generic/lsusb-t.out","lines_changed":15},{"name":"tests/test_lsusb.py","lines_changed":10}]},"message":"raise ParseError if -t option is detected. add test"},{"commit":"8f94f8acc6bb53bbb19ba150551c7df2183a8863","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":384,"deletions":3,"files":["README.md","docs/parsers/file.md","docs/parsers/lsusb.md","docs/parsers/uname.md","man/jc.1","tests/fixtures/centos-7.7/lsusb-v-single.json","tests/fixtures/centos-7.7/lsusb-v.json","tests/fixtures/centos-7.7/lsusb.json","tests/fixtures/generic/lsusb-test-attributes.json","tests/fixtures/generic/lsusb-test-attributes2.json","tests/test_lsusb.py"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":288},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"man/jc.1","lines_changed":7},{"name":"tests/fixtures/centos-7.7/lsusb-v-single.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsusb-v.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsusb.json","lines_changed":1},{"name":"tests/fixtures/generic/lsusb-test-attributes.json","lines_changed":1},{"name":"tests/fixtures/generic/lsusb-test-attributes2.json","lines_changed":1},{"name":"tests/test_lsusb.py","lines_changed":82}]},"message":"add tests and update docs"},{"commit":"3a2a69cfa55e2f40d7536d923170a5cfc986998e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":4}]},"message":"formatting"},{"commit":"f599c659881248b79c6dbc86d85a61311c9d3434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":464,"deletions":0,"files":["tests/fixtures/generic/lsusb-test-attributes.out","tests/fixtures/generic/lsusb-test-attributes2.out"],"file_stats":[{"name":"tests/fixtures/generic/lsusb-test-attributes.out","lines_changed":116},{"name":"tests/fixtures/generic/lsusb-test-attributes2.out","lines_changed":348}]},"message":"add stress test examples"},{"commit":"ad12849fd9fc2177afb30740acc63cf284dc394b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":138,"deletions":26,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":164}]},"message":"update docs example and"},{"commit":"f36b3789e8df6673207d6c2d3d0796acfdfe011d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":4}]},"message":"formatting"},{"commit":"6d18c0ba61cd188dbff736f1be47b7362c841687","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":47,"deletions":47,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":94}]},"message":"change variable name last_attribute and last_attr to last_item"},{"commit":"17097abec9567a58b5a5f7bbed11ecfd69cbd28c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":6,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":8}]},"message":"formatting"},{"commit":"b7ddd3b285f205211394edc70b611171cf72a4c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":22,"deletions":22,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":44}]},"message":"change variable names"},{"commit":"75b23f62c9d7b33907af92964d1a6234332fbc78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":35,"deletions":7,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":42}]},"message":"working configuration_descriptor and device_descriptor attributes"},{"commit":"f88967b2a59d79e053554d1e141f71e9d2d87456","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":126,"deletions":21,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":147}]},"message":"add attribute lists up to interface_association"},{"commit":"ba2846664b35b2e94aa905431c55c029b24a64e3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":22,"deletions":2,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":24}]},"message":"edpoint_descriptors attributes working"},{"commit":"10dba37ca2624e05eff246ef49df8ebd3f275d86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":28,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":29}]},"message":"hub_descriptor attributes working"},{"commit":"0e6f938514965503f1d86d56c047f9f8fc03ac65","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":36,"deletions":45,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":81}]},"message":"working hub_port_status section"},{"commit":"159d87c1126f4d79d5e34837bc2c353a5445803b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":18,"deletions":7,"files":["jc/parsers/uname.py","tests/fixtures/centos-7.7/uname.out","tests/test_uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":11},{"name":"tests/fixtures/centos-7.7/uname.out","lines_changed":1},{"name":"tests/test_uname.py","lines_changed":13}]},"message":"add length guard and test for uname with no -a on linux"},{"commit":"9e7b1621cf232e9859bdf018737e536820f380a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":18,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":36}]},"message":"device_status working"},{"commit":"2057817ef8fec85b2a978b682e7fe8bc16def828","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":89,"deletions":0,"files":["tests/fixtures/debian10/uname-a.json","tests/fixtures/debian10/uname-a.out","tests/fixtures/freebsd12/uname-a.json","tests/fixtures/freebsd12/uname-a.out","tests/fixtures/freebsd12/uname-a2.json","tests/fixtures/freebsd12/uname-a2.out","tests/fixtures/generic/uname-a-different-proc.json","tests/fixtures/generic/uname-a-different-proc.out","tests/fixtures/generic/uname-a.json","tests/fixtures/generic/uname-a.out","tests/test_uname.py"],"file_stats":[{"name":"tests/fixtures/debian10/uname-a.json","lines_changed":10},{"name":"tests/fixtures/debian10/uname-a.out","lines_changed":2},{"name":"tests/fixtures/freebsd12/uname-a.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/uname-a.out","lines_changed":2},{"name":"tests/fixtures/freebsd12/uname-a2.json","lines_changed":7},{"name":"tests/fixtures/freebsd12/uname-a2.out","lines_changed":2},{"name":"tests/fixtures/generic/uname-a-different-proc.json","lines_changed":1},{"name":"tests/fixtures/generic/uname-a-different-proc.out","lines_changed":1},{"name":"tests/fixtures/generic/uname-a.json","lines_changed":1},{"name":"tests/fixtures/generic/uname-a.out","lines_changed":2},{"name":"tests/test_uname.py","lines_changed":60}]},"message":"add uname tests"},{"commit":"a1eabad2d37bb0d0e9407edf7305e223eba67da2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":6}]},"message":"add comments"},{"commit":"92bf2b1ca2a172d3977d6e3c36b5ca1a8c2bab63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":20,"files":["CHANGELOG","jc/parsers/uname.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":26}]},"message":"simplify fixup logic for uname"},{"commit":"2b2123a4ba9b77d2089d367fe85dcb5d2857a295","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","jc/parsers/uname.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/parsers/uname.py","lines_changed":4}]},"message":"add FreeBSD support"},{"commit":"908b2f9200ddcce4beb531a3c90908786b6a5b02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"add items"},{"commit":"deff0c7bfdf942b8d7e7bd140219e08bf80a50cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":5,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":6}]},"message":"remove print debug"},{"commit":"7cd01efa64029775042a2c145997ce30ef6b4f6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":25,"deletions":1,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":26}]},"message":"fixup for cases where the 'process' and/or 'machine' fields are blank on linux"},{"commit":"2dbe56456bbea2bdfce7eacbf8b9f10a1b249f55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":49,"deletions":39,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":88}]},"message":"add nested_dict. start work on hub_port_status and device_status"},{"commit":"6078a411ef612be8bad012aa404f34ebd74a1fd7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":79,"deletions":4,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":83}]},"message":"add initial schema doc"},{"commit":"4a3656562f161a51f5cb6f0e9ccd271859b78d62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":6}]},"message":"del null keys"},{"commit":"ba75989a24839907723ed7c3d7a497473d489a34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":10}]},"message":"update comments"},{"commit":"9e9e2c362894f0072ab839565829881d750c8912","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":4}]},"message":"move state instantiation before has_data test"},{"commit":"9a2a8c6b61a46a9bfb5a4492b86774a4a78672ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":52,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":72}]},"message":"shorten set_sections"},{"commit":"dae42ef1619441637672d634f9e5d7ab26115f09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":19}]},"message":"add hub_port_status and device_status"},{"commit":"931f2cab78bda180443535c04b532d04c6e88dd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":11,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":25}]},"message":"add hub_descriptor"},{"commit":"72b061bed4453686d264ccf8977cba6c2a4794ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":32,"deletions":8,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":40}]},"message":"add endpoint_descriptors"},{"commit":"29a7c73990d9620b15a4010d17fc9a9a859f44b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":16}]},"message":"add hid_device_descriptor and report_descriptors"},{"commit":"2d1d68e3007f76d4c34ac07ae822935ab6021e79","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":87,"deletions":88,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":175}]},"message":"simplify populate_lists. Add CDC lists"},{"commit":"c5c1e170d1f502de5c76e9e481a23b26ffcaf237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":111,"deletions":76,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":187}]},"message":"interface descriptors working"},{"commit":"9c1bb66452838e704ef2277f313bb51a42dc03b9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":18}]},"message":"fix remove _state field during schema_populate"},{"commit":"a4f3306bae90fbc807fdd9ff2ce71e25d36a663f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":69,"deletions":28,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":97}]},"message":"initial schema build. need to figure out why deleting _state from output_line causes exceptions"},{"commit":"1bc638b6ee7a820406ba4b84d3408f7cd4fe779d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":36,"deletions":32,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":68}]},"message":"add bus_list and add all device_list data to the list"},{"commit":"9ad0cd9dae8822235c37159541ce72471eb4263e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":116,"deletions":211,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":327}]},"message":"now storing state within the objects to make building the schema (later) easier."},{"commit":"6d4a4691276d8659253b2ac8f8bdbd71a1fece7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":356,"deletions":333,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":689}]},"message":"use class for state"},{"commit":"ed6997e3ff2e575a6d4daa7d7a2cbe7dddacdd4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":170,"deletions":34,"files":["jc/parsers/lsusb.py","tests/fixtures/centos-7.7/lsusb-v-single.out"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":104},{"name":"tests/fixtures/centos-7.7/lsusb-v-single.out","lines_changed":100}]},"message":"add interface_association section"},{"commit":"eb788fca6e25eea1fa8a43b22360c852ecf5af35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":919,"deletions":0,"files":["jc/cli.py","jc/parsers/lsusb.py","tests/fixtures/centos-7.7/lsusb-v.out","tests/fixtures/centos-7.7/lsusb.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/lsusb.py","lines_changed":404},{"name":"tests/fixtures/centos-7.7/lsusb-v.out","lines_changed":509},{"name":"tests/fixtures/centos-7.7/lsusb.out","lines_changed":5}]},"message":"somewhat working lsusb parser. needs a lot more TLC"},{"commit":"9186f5f37739012b8c04c776310a20ef55b1469f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":99,"deletions":4,"files":["CHANGELOG","jc/__init__.py","jc/parsers/file.py","setup.py","tests/fixtures/osx-10.14.6/file3.json","tests/fixtures/osx-10.14.6/file3.out","tests/test_file.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":11},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/file3.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/file3.out","lines_changed":72},{"name":"tests/test_file.py","lines_changed":12}]},"message":"fix file parser for gzip cases (has ': ' in the description, which is the delimiter)"},{"commit":"30cff5f28140a5b20a617c8145c13e43b7b6685b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":17,"deletions":3,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":4},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":4},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"add note that the streaming parser outputs JSON Lines"},{"commit":"b724e0969a0d6b22bed0c77eb8d629381179ea3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2}]},"message":"-qq instead of -q"},{"commit":"a62c49e8715873b068a96da5021ea24a783acd6b","merge":"77dcbc5 9b160f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #172 from kellyjonbrazil/master\n\nsync master to dev"},{"commit":"9b160f6279bbbf0c15413c98922eef137ba2f3f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]},"message":"link update"},{"commit":"338a4e2612f70bb3e2af31f61a7db75f647293fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]},"message":"formatting"},{"commit":"0140688750be61dd752059ee66734ab1c7a8f30e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":8,"deletions":4,"files":["README.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"link updates"},{"commit":"73e5ea98c1ca2b9299085e3832791162eca3b9ff","merge":"528aac7 77dcbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #170 from kellyjonbrazil/dev\n\njc v1.17.0 from dev"},{"commit":"77dcbc544da271edab5de5ad209117e98c846f9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":2,"deletions":3,"files":["CHANGELOG","jc/__init__.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"final doc update"},{"commit":"c7bcb0947ae32acc9cdba7a6975d2f2557f10a39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":4}]},"message":"indent subsequent error and warning lines"},{"commit":"5cd3f7f71d38b560a88dd6057e9c7a94991a3d71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":6}]},"message":"Add example to raise ParseError if there is no output data to yield"},{"commit":"5044388ab2e8d7d8b427fd51b0ab875611bd127f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":3,"files":["jc/parsers/vmstat_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":6},{"name":"tests/test_vmstat_s.py","lines_changed":3}]},"message":"raise if line data is unrecognized"},{"commit":"ee075db59819d80e4dcb60ddbd9cfe2fd529dfe9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":5,"deletions":7,"files":["jc/cli.py","jc/parsers/foo_s.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":5},{"name":"jc/parsers/vmstat_s.py","lines_changed":3}]},"message":"linting"},{"commit":"9904e0be61e7c81b907bf3770f111346daeff481","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":2},{"name":"jc/utils.py","lines_changed":2}]},"message":"formatting"},{"commit":"31b69b3242eeca2c02f87c31d58193dd3f06fe49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":6},{"name":"jc/utils.py","lines_changed":6}]},"message":"formatting"},{"commit":"e6a80fea3228122dd84e17672c835c0460ad1342","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":7,"files":["docs/utils.md","jc/utils.py","man/jc.1"],"file_stats":[{"name":"docs/utils.md","lines_changed":6},{"name":"jc/utils.py","lines_changed":6},{"name":"man/jc.1","lines_changed":2}]},"message":"formatting"},{"commit":"d6aec00e038d1ecfe43c13a6909d50630455b372","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":27,"deletions":1,"files":["tests/fixtures/ubuntu-18.04/vmstat-1-long-streaming.json","tests/fixtures/ubuntu-18.04/vmstat-1-long.json","tests/test_vmstat.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"tests/fixtures/ubuntu-18.04/vmstat-1-long-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/vmstat-1-long.json","lines_changed":1},{"name":"tests/test_vmstat.py","lines_changed":12},{"name":"tests/test_vmstat_s.py","lines_changed":14}]},"message":"add vmstat-1-long tests"},{"commit":"4aa7d81e11ea7fcfbb5c9d74337cde617b1a0d5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":50,"deletions":2,"files":["jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","tests/fixtures/ubuntu-18.04/vmstat-1-long.out"],"file_stats":[{"name":"jc/parsers/vmstat.py","lines_changed":3},{"name":"jc/parsers/vmstat_s.py","lines_changed":7},{"name":"tests/fixtures/ubuntu-18.04/vmstat-1-long.out","lines_changed":42}]},"message":"ignore re-printed header rows in output"},{"commit":"48cdabc3b0862d6291e1ec59ab385e0e146c31eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":16,"deletions":0,"files":["docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/vmstat.md","lines_changed":4},{"name":"docs/parsers/vmstat_s.md","lines_changed":4},{"name":"jc/parsers/vmstat.py","lines_changed":4},{"name":"jc/parsers/vmstat_s.py","lines_changed":4}]},"message":"document timestamps"},{"commit":"a1791ef5479749692c79bbe98fc7687d70cd6cda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2}]},"message":"linting"},{"commit":"7bc87f6c2d4cfcfa656a1c1b8973a4c0414c85d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":8,"deletions":8,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"change _meta to _jc_meta"},{"commit":"bbed9e274b8252ba0518140fe7fc97029310771f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":154,"deletions":159,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":313}]},"message":"linting"},{"commit":"486282b9856f5e56cf43ee1399d8e7cb78353b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":10}]},"message":"linting"},{"commit":"a4d45b653f794033978940da14910f5d607a8254","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["jc/parsers/foo_s.py","jc/parsers/vmstat.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":8}]},"message":"linting"},{"commit":"22e151b01c0f97c141d912c9646e46df0320d622","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":56,"deletions":60,"files":["jc/cli.py","jc/utils.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":88},{"name":"jc/utils.py","lines_changed":28}]},"message":"linting"},{"commit":"7a4ebcd1ecdb4929aae70e44b4f9b6b5ab52b393","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":4}]},"message":"language hints"},{"commit":"651cbfe02fbb354c4caf8e0d022655642e7caed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"add streaming foo parser"},{"commit":"8c3e764516e1c28961b09380b638a57ce98b1261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add streaming parser to contrib guidelines"},{"commit":"b4e75da7e3f23502723ce8b2a7261b376f296864","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"templates/readme_template","lines_changed":4}]},"message":"formatting"},{"commit":"37223f086cabc8db5962415bd161fed151dafb9d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":5},{"name":"templates/readme_template","lines_changed":5}]},"message":"formatting"},{"commit":"a404033735c2c8075a8e08194197eae59db70afd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add error and warning message wrap info"},{"commit":"b7433ed085c0ba22ea0d49330871a651a8d83fb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":80,"deletions":41,"files":["docs/utils.md","jc/cli.py","jc/parsers/file.py","jc/parsers/ls.py","jc/parsers/traceroute.py","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":16},{"name":"jc/cli.py","lines_changed":39},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":60}]},"message":"auto wrap warning and error messages"},{"commit":"224d3d65ada4216e28e142d411b0c2c3358517b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"Add exception class name to error message"},{"commit":"a349fb0bdabaf74503831f22c4efbd02254f809d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":10,"deletions":8,"files":["README.md","docs/utils.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"docs/utils.md","lines_changed":6},{"name":"man/jc.1","lines_changed":6}]},"message":"change _meta to _jc_meta"},{"commit":"e7ddcfb83fb295034db44ade407476ff3a962cd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":14,"deletions":12,"files":["jc/utils.py","templates/manpage_template","templates/readme_template",".../centos-7.7/ping-ip-O-streaming-ignore-exceptions.json","tests/test_ping_s.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":10},{"name":"templates/manpage_template","lines_changed":6},{"name":"templates/readme_template","lines_changed":6},{"name":".../centos-7.7/ping-ip-O-streaming-ignore-exceptions.json","lines_changed":2},{"name":"tests/test_ping_s.py","lines_changed":2}]},"message":"change _meta to _jc_meta"},{"commit":"abd20dfe3662f65373ac582c70aa740e53b52f68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"templates/manpage_template","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting"},{"commit":"dc1fd3ef1be41aee349b159059f1febff76f6caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":12,"deletions":12,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"man/jc.1","lines_changed":6},{"name":"templates/manpage_template","lines_changed":6},{"name":"templates/readme_template","lines_changed":6}]},"message":"fix -qq docs"},{"commit":"98a7686db46fbd3ed98382867976249f307d0015","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":18,"insertions":160,"deletions":152,"files":["README.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","docs/utils.md","jc/cli.py","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","jc/utils.py","man/jc.1","templates/manpage_template","templates/readme_template","... => ping-ip-O-streaming-ignore-exceptions.json}","tests/test_ls_s.py","tests/test_ping_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":9},{"name":"docs/parsers/ping_s.md","lines_changed":9},{"name":"docs/parsers/vmstat_s.md","lines_changed":9},{"name":"docs/utils.md","lines_changed":6},{"name":"jc/cli.py","lines_changed":23},{"name":"jc/parsers/foo_s.py","lines_changed":13},{"name":"jc/parsers/ls_s.py","lines_changed":13},{"name":"jc/parsers/ping_s.py","lines_changed":13},{"name":"jc/parsers/vmstat_s.py","lines_changed":13},{"name":"jc/utils.py","lines_changed":12},{"name":"man/jc.1","lines_changed":4},{"name":"templates/manpage_template","lines_changed":4},{"name":"templates/readme_template","lines_changed":2},{"name":"... => ping-ip-O-streaming-ignore-exceptions.json}","lines_changed":0},{"name":"tests/test_ls_s.py","lines_changed":24},{"name":"tests/test_ping_s.py","lines_changed":140},{"name":"tests/test_vmstat_s.py","lines_changed":16}]},"message":"use -qq to ignore streaming exceptions"},{"commit":"9c6c6c4330fc68115be012de254161f36e3a8328","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add next() info"},{"commit":"f9be5651daa891e06ad0acd8980ffc0fe51fd29d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":6,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":5},{"name":"templates/readme_template","lines_changed":5}]},"message":"add language hints"},{"commit":"df9835a3e62bb2b3b6ec8b55f06a25a00a799d92","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting"},{"commit":"92363be2dd633bdd3c2dd07c72ebd281d2cb4565","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"templates/readme_template","lines_changed":3}]},"message":"fix streaming python module example"},{"commit":"31b62030156f9c826fe5c7d127e9dd0ace582dd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"templates/readme_template","lines_changed":6}]},"message":"formatting"},{"commit":"18805858d685d456f9a38540bbaedbaa1a411546","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":4},{"name":"templates/manpage_template","lines_changed":2}]},"message":"formatting"},{"commit":"e676f0e20fb6e96a536c4d182b0d287cdc1ad0f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":36,"deletions":6,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":21},{"name":"templates/readme_template","lines_changed":21}]},"message":"add streaming parser info for python module use"},{"commit":"20652edefaa7705b8ba756bae3944ff362a295a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":7}]},"message":"update changelog"},{"commit":"98c29d07478093e78f53ec633f2dd08cafc3e3ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":120,"deletions":0,"files":["tests/fixtures/centos-7.7/vmstat-a.json","tests/fixtures/centos-7.7/vmstat-at-5-10.json","tests/fixtures/centos-7.7/vmstat-awt.json","tests/fixtures/centos-7.7/vmstat-d.json","tests/fixtures/centos-7.7/vmstat-dt.json","tests/fixtures/centos-7.7/vmstat-w.json","tests/fixtures/centos-7.7/vmstat.json","tests/test_vmstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/vmstat-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-at-5-10.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-awt.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-d.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-dt.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-w.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat.json","lines_changed":1},{"name":"tests/test_vmstat.py","lines_changed":113}]},"message":"add vmstat tests"},{"commit":"41a6311f6b3ed2cc94919d042aed51c46cdf3e2f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":132,"deletions":1,"files":["tests/fixtures/centos-7.7/vmstat-a-streaming.json",".../centos-7.7/vmstat-at-5-10-streaming.json",".../fixtures/centos-7.7/vmstat-awt-streaming.json","tests/fixtures/centos-7.7/vmstat-d-streaming.json","tests/fixtures/centos-7.7/vmstat-dt-streaming.json","tests/fixtures/centos-7.7/vmstat-streaming.json","tests/fixtures/centos-7.7/vmstat-w-streaming.json","tests/test_ping_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/vmstat-a-streaming.json","lines_changed":1},{"name":".../centos-7.7/vmstat-at-5-10-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/vmstat-awt-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-d-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-dt-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-w-streaming.json","lines_changed":1},{"name":"tests/test_ping_s.py","lines_changed":2},{"name":"tests/test_vmstat_s.py","lines_changed":124}]},"message":"add streaming parser tests"},{"commit":"978760ec57e04e3ec347c8764bfad015b6dddbff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"add exception class name to error string"},{"commit":"d410425537817964ceb7b61e0fdff6c03fdf8766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":136,"deletions":136,"files":["docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/vmstat.md","lines_changed":68},{"name":"docs/parsers/vmstat_s.md","lines_changed":68},{"name":"jc/parsers/vmstat.py","lines_changed":68},{"name":"jc/parsers/vmstat_s.py","lines_changed":68}]},"message":"replace single quotes with double quotes in doc"},{"commit":"6b7430329cbe1bfb95b47bcfe031906641c127e1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":269,"deletions":1,"files":["README.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat_s.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":145},{"name":"docs/parsers/vmstat_s.md","lines_changed":105},{"name":"jc/parsers/vmstat_s.py","lines_changed":6},{"name":"man/jc.1","lines_changed":12}]},"message":"doc update"},{"commit":"40fe0d4a6081a1233bf5c3eb51a01da1f12bc4dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":141,"deletions":22,"files":["jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":163}]},"message":"working parser"},{"commit":"365c5354a0349e470558d15243217a064e73da38","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/vmstat.py"],"file_stats":[{"name":"jc/parsers/vmstat.py","lines_changed":1}]},"message":"remove debug print statement"},{"commit":"b246a05cbb4c1c564f81b3e72cecb62edbe6ced6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"fix vmstat-s name"},{"commit":"9e5a7a4abb8668d043625951a05eb5733cbbd56f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":37,"deletions":0,"files":["tests/fixtures/centos-7.7/vmstat-a.out","tests/fixtures/centos-7.7/vmstat-at-5-10.out","tests/fixtures/centos-7.7/vmstat-awt.out","tests/fixtures/centos-7.7/vmstat-d.out","tests/fixtures/centos-7.7/vmstat-dt.out","tests/fixtures/centos-7.7/vmstat-w.out","tests/fixtures/centos-7.7/vmstat.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/vmstat-a.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/vmstat-at-5-10.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/vmstat-awt.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/vmstat-d.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/vmstat-dt.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/vmstat-w.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/vmstat.out","lines_changed":4}]},"message":"add vmstat sample output"},{"commit":"f266acbccafc040c375723147b8e5d7fddb1e697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":106,"deletions":14,"files":["jc/parsers/vmstat.py"],"file_stats":[{"name":"jc/parsers/vmstat.py","lines_changed":120}]},"message":"add processing logic"},{"commit":"4e3b471f1801f1b9006b18cae2a3d816f361262e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"add format for vmstat"},{"commit":"5e28736c2e0c951e71e6531e03a9619279d95d3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add vmstat and vmstat_s"},{"commit":"a91913a3b517ea0dbb25d6e4cc92850eb2fde5ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":106,"deletions":0,"files":["jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":106}]},"message":"streaming parser template"},{"commit":"90c64f0ae0d97d025adee40970d89baca79ee4ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":182,"deletions":0,"files":["jc/parsers/vmstat.py"],"file_stats":[{"name":"jc/parsers/vmstat.py","lines_changed":182}]},"message":"initial working parser"},{"commit":"7cc642ed1a476abda709ac9b79900a1de12e1ef7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":4}]},"message":"formatting"},{"commit":"809f64d35a92bb3d7380fa9d78ac1421a10b81fc","merge":"ff0fda4 a6f859a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #169 from kellyjonbrazil/streaming\n\nStreaming to dev"},{"commit":"a6f859a55edae50fcc185948736218404cfaa929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":18,"insertions":168,"deletions":153,"files":[".../osx-10.14.6/ping-hostname-p-streaming.json",".../osx-10.14.6/ping-hostname-s-streaming.json",".../osx-10.14.6/ping-hostname-streaming.json",".../osx-10.14.6/ping-ip-dup-streaming.json",".../fixtures/osx-10.14.6/ping-ip-p-streaming.json",".../fixtures/osx-10.14.6/ping-ip-s-streaming.json","tests/fixtures/osx-10.14.6/ping-ip-streaming.json",".../osx-10.14.6/ping-ip-unreachable-streaming.json",".../osx-10.14.6/ping6-hostname-p-streaming.json",".../osx-10.14.6/ping6-hostname-s-streaming.json",".../osx-10.14.6/ping6-hostname-streaming.json",".../osx-10.14.6/ping6-ip-dup-streaming.json",".../fixtures/osx-10.14.6/ping6-ip-p-streaming.json",".../fixtures/osx-10.14.6/ping6-ip-s-streaming.json","tests/fixtures/osx-10.14.6/ping6-ip-streaming.json","tests/fixtures/pi/ping-ip-O-D-streaming.json","tests/fixtures/pi/ping-ip-O-streaming.json","tests/test_ping_s.py"],"file_stats":[{"name":".../osx-10.14.6/ping-hostname-p-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping-hostname-s-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping-hostname-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping-ip-dup-streaming.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/ping-ip-p-streaming.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/ping-ip-s-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping-ip-unreachable-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping6-hostname-p-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping6-hostname-s-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping6-hostname-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping6-ip-dup-streaming.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/ping6-ip-p-streaming.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/ping6-ip-s-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-streaming.json","lines_changed":1},{"name":"tests/fixtures/pi/ping-ip-O-D-streaming.json","lines_changed":1},{"name":"tests/fixtures/pi/ping-ip-O-streaming.json","lines_changed":1},{"name":"tests/test_ping_s.py","lines_changed":304}]},"message":"add final ping_s tests"},{"commit":"39ef88078f43708e470d3c1b2fd95e76b5cbeb08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":1}]},"message":"add destination_ip to error lines"},{"commit":"aeea5e8d2eab2fef3e14637f512aed7b117c4a3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/test_ls_s.py"],"file_stats":[{"name":"tests/test_ls_s.py","lines_changed":2}]},"message":"formatting"},{"commit":"1a0700bff4bdebbd9f1f92f2fc7a56c4d5ed6925","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":31,"insertions":240,"deletions":213,"files":[".../fedora32/ping-hostname-O-D-p-s-streaming.json",".../fedora32/ping-hostname-O-p-streaming.json",".../fedora32/ping-hostname-O-streaming.json","tests/fixtures/fedora32/ping-ip-O-D-streaming.json","tests/fixtures/fedora32/ping-ip-O-streaming.json",".../fedora32/ping6-hostname-O-D-p-s-streaming.json",".../fedora32/ping6-hostname-O-p-streaming.json",".../fedora32/ping6-ip-O-D-p-streaming.json",".../fixtures/fedora32/ping6-ip-O-p-streaming.json",".../freebsd12/ping-hostname-p-streaming.json",".../freebsd12/ping-hostname-s-streaming.json",".../freebsd12/ping-hostname-streaming.json","tests/fixtures/freebsd12/ping-ip-p-streaming.json","tests/fixtures/freebsd12/ping-ip-s-streaming.json","tests/fixtures/freebsd12/ping-ip-streaming.json",".../freebsd12/ping6-hostname-p-streaming.json",".../freebsd12/ping6-hostname-s-streaming.json",".../freebsd12/ping6-hostname-streaming.json","tests/fixtures/freebsd12/ping6-ip-p-streaming.json","tests/fixtures/freebsd12/ping6-ip-s-streaming.json","tests/fixtures/freebsd12/ping6-ip-streaming.json",".../ping-hostname-O-D-p-s-streaming.json",".../ubuntu-18.04/ping-hostname-O-p-streaming.json",".../ubuntu-18.04/ping-hostname-O-streaming.json",".../ubuntu-18.04/ping-ip-O-D-streaming.json",".../fixtures/ubuntu-18.04/ping-ip-O-streaming.json",".../ping6-hostname-O-D-p-s-streaming.json",".../ubuntu-18.04/ping6-hostname-O-p-streaming.json",".../ubuntu-18.04/ping6-ip-O-D-p-streaming.json",".../ubuntu-18.04/ping6-ip-O-p-streaming.json","tests/test_ping_s.py"],"file_stats":[{"name":".../fedora32/ping-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../fedora32/ping-hostname-O-p-streaming.json","lines_changed":1},{"name":".../fedora32/ping-hostname-O-streaming.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-ip-O-D-streaming.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-ip-O-streaming.json","lines_changed":1},{"name":".../fedora32/ping6-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../fedora32/ping6-hostname-O-p-streaming.json","lines_changed":1},{"name":".../fedora32/ping6-ip-O-D-p-streaming.json","lines_changed":1},{"name":".../fixtures/fedora32/ping6-ip-O-p-streaming.json","lines_changed":1},{"name":".../freebsd12/ping-hostname-p-streaming.json","lines_changed":1},{"name":".../freebsd12/ping-hostname-s-streaming.json","lines_changed":1},{"name":".../freebsd12/ping-hostname-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-p-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-s-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-streaming.json","lines_changed":1},{"name":".../freebsd12/ping6-hostname-p-streaming.json","lines_changed":1},{"name":".../freebsd12/ping6-hostname-s-streaming.json","lines_changed":1},{"name":".../freebsd12/ping6-hostname-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-p-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-s-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-streaming.json","lines_changed":1},{"name":".../ping-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping-hostname-O-p-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping-hostname-O-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping-ip-O-D-streaming.json","lines_changed":1},{"name":".../fixtures/ubuntu-18.04/ping-ip-O-streaming.json","lines_changed":1},{"name":".../ping6-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-hostname-O-p-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-ip-O-D-p-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-ip-O-p-streaming.json","lines_changed":1},{"name":"tests/test_ping_s.py","lines_changed":423}]},"message":"add more ping-s tests"},{"commit":"b5fa6d068f240671eb948b055cd4f7bf127e0ec0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":25,"deletions":5,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":6},{"name":"docs/parsers/ping_s.md","lines_changed":6},{"name":"jc/parsers/foo_s.py","lines_changed":6},{"name":"jc/parsers/ls_s.py","lines_changed":6},{"name":"jc/parsers/ping_s.py","lines_changed":6}]},"message":"update docs"},{"commit":"1baec0b420feff068f2dc1e35499f78aa7d0a6e0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":815,"deletions":0,"files":[".../ping-hostname-O-D-p-s-streaming.json",".../centos-7.7/ping-hostname-O-p-streaming.json",".../centos-7.7/ping-hostname-O-streaming.json",".../fixtures/centos-7.7/ping-ip-O-D-streaming.json",".../centos-7.7/ping-ip-O-streaming-quiet.json","tests/fixtures/centos-7.7/ping-ip-O-streaming.json",".../fixtures/centos-7.7/ping-ip-dup-streaming.json",".../ping6-hostname-O-D-p-s-streaming.json",".../centos-7.7/ping6-hostname-O-p-streaming.json",".../centos-7.7/ping6-ip-O-D-p-streaming.json",".../centos-7.7/ping6-ip-O-p-streaming.json",".../centos-7.7/ping6-ip-dup-streaming.json","tests/test_ping_s.py"],"file_stats":[{"name":".../ping-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping-hostname-O-p-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping-hostname-O-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/ping-ip-O-D-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping-ip-O-streaming-quiet.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-ip-O-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/ping-ip-dup-streaming.json","lines_changed":1},{"name":".../ping6-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping6-hostname-O-p-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping6-ip-O-D-p-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping6-ip-O-p-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping6-ip-dup-streaming.json","lines_changed":1},{"name":"tests/test_ping_s.py","lines_changed":803}]},"message":"add some streaming tests"},{"commit":"4f2a4e1dee9d722d2aa5ddf2c082a358c88cf640","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":8}]},"message":"skip blank lines and warning lines"},{"commit":"758d617668d1f9d0f27b52d46749e5b67a570cf1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":5,"deletions":5,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2}]},"message":"doc update"},{"commit":"55322c37f57a9c8e28641a61928fad2329f5e50d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":4}]},"message":"formatting"},{"commit":"d19ea5552bb3a379f7f92bcb58794c557ecc6647","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":193,"deletions":0,"files":["tests/fixtures/centos-7.7/ls-al-streaming.json","tests/fixtures/centos-7.7/ls-alR-streaming.json","tests/fixtures/centos-7.7/ls-alh-streaming.json","tests/fixtures/osx-10.14.6/ls-al-streaming.json","tests/fixtures/osx-10.14.6/ls-alR-streaming.json","tests/fixtures/osx-10.14.6/ls-alh-streaming.json",".../osx-10.14.6/ls-lR-empty-folder-streaming.json","tests/fixtures/ubuntu-18.04/ls-al-streaming.json","tests/fixtures/ubuntu-18.04/ls-alR-streaming.json","tests/fixtures/ubuntu-18.04/ls-alh-streaming.json",".../fixtures/ubuntu-18.04/ls-l-iso-streaming.json","tests/test_ls_s.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ls-al-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-alR-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-alh-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-al-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-alR-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-alh-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ls-lR-empty-folder-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-al-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-alR-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-alh-streaming.json","lines_changed":1},{"name":".../fixtures/ubuntu-18.04/ls-l-iso-streaming.json","lines_changed":1},{"name":"tests/test_ls_s.py","lines_changed":182}]},"message":"add streaming ls parser tests"},{"commit":"130c3527c1083d399deef00ee8fcaa75f609b485","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":25,"deletions":25,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":8},{"name":"docs/parsers/ping_s.md","lines_changed":12},{"name":"jc/parsers/foo_s.py","lines_changed":6},{"name":"jc/parsers/ls_s.py","lines_changed":10},{"name":"jc/parsers/ping_s.py","lines_changed":12},{"name":"man/jc.1","lines_changed":2}]},"message":"update docstrings"},{"commit":"3f221f471416766a860bd19850afda4899ee5eb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":6},{"name":"jc/parsers/ping_s.py","lines_changed":6}]},"message":"doc update"},{"commit":"d64c4cb39056bb869fc117477612ae5ae2ef3d85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":141,"deletions":1,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":72},{"name":"templates/manpage_template","lines_changed":70}]},"message":"add streaming parsers section"},{"commit":"448c56aa46b72438e4a4c83b10a7eb889e3f50e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting"},{"commit":"9fbea15b6d031baa8c90f2602e39de7cf51408e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":8,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":6},{"name":"jc/parsers/ping_s.py","lines_changed":4}]},"message":"rename state class to _state"},{"commit":"932060314b3c1ce518b9f57532e124285cb3ad0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":41,"deletions":11,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":50},{"name":"jc/parsers/ping_s.py","lines_changed":2}]},"message":"doc update"},{"commit":"5e68ae50097cb339f3390449db7e3f189a716320","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":7}]},"message":"import exception. tighten up os detection"},{"commit":"d03541beae44a4571a7d0481af01a5c19506207f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":5,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":17}]},"message":"add docstring examples. add exception raise when OS cannot be detected."},{"commit":"516fa571d90a0c93134c953c15ce84dd31b96b4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":3}]},"message":"remove unused variable. use elif instead of if for linux vs. bsd detection"},{"commit":"a19c12096a8e8de02a6ff761cc9c13ec249d416e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":373,"deletions":143,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":516}]},"message":"initial working parser for both linux and bsd"},{"commit":"758f27945de4f0897405eba02c7908d815ce6e9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":18}]},"message":"change data_bytes and bytes to sent_bytes and response_bytes"},{"commit":"8b1e8d58df22f8542ccaf7bf3e1eabe6132e7a42","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":1}]},"message":"remove unneeded line"},{"commit":"b967489d085319facee077958deaa04956a98343","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":81,"deletions":40,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":121}]},"message":"complete linux coverage including summary"},{"commit":"870d0218be2641e3eddb114c23d54deb23155f25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2}]},"message":"add unbuffer note"},{"commit":"84020bc2af294cb065105f1399453aefc98eb180","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":12,"deletions":6,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/utils.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":6},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"change error_msg to error in -q result docs"},{"commit":"4efe5344e069ed921f208bcbbd097705be2d3b4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add links to HN and Reddit"},{"commit":"9182c545134b3d56d27d2c1d9bda678532bdc3fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":8,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":11}]},"message":"formatting"},{"commit":"28f0ab0b02d21fc060f1ac7181f85552798dc4bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/ls_s.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":2}]},"message":"update streaming error messages"},{"commit":"90d1a30696b2cbfbb06a55cc0cf920cf8ecd89aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting"},{"commit":"130b3738cc57fe261e8ef881a57b7836acd7e7e9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":21,"deletions":26,"files":["jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":8},{"name":"jc/parsers/ls_s.py","lines_changed":8},{"name":"jc/parsers/ping_s.py","lines_changed":14},{"name":"jc/utils.py","lines_changed":17}]},"message":"shorten successful yield to a single line"},{"commit":"92c7357615af7689db273aa78d666b35a2ec7a70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":2}]},"message":"formatting"},{"commit":"c80f8633349c00ea461b8927f9949fe19b2f46ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/foo.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":10}]},"message":"simplify return condition formatting"},{"commit":"4642c20179d4643e0cf1970b264da7d9d91628de","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"templates/readme_template","lines_changed":4}]},"message":"formatting"},{"commit":"5288eb22aadbbc1005b16428b94d2b07e9a75e3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add info about streaming parser performance characteristics"},{"commit":"df8387a1a99df69eac5005662aaf56d506fa0efd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"streaming parsers cannot be used with the magic syntax"},{"commit":"cc38c27f44d3f088609b878304cab8eed75fc8f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"templates/readme_template","lines_changed":3}]},"message":"formatting"},{"commit":"64f5357d69fe88b45d710d38948969699e1ca12f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":84,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":42},{"name":"templates/readme_template","lines_changed":42}]},"message":"add streaming parsers section"},{"commit":"51debb5649bef431e51e543f1c9270e2810aa58f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"add vmstat parser and change from linebuffer to unbuffer"},{"commit":"b48d05a4313b27cf5e69d3e4259542e0b131b60f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":15,"deletions":15,"files":["README.md","jc/cli.py","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":8},{"name":"man/jc.1","lines_changed":10},{"name":"templates/manpage_template","lines_changed":8},{"name":"templates/readme_template","lines_changed":2}]},"message":"change from line buffer output to unbuffer output"},{"commit":"4e7f6b337db61b8a106cf958f6b874157909c87a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":17,"deletions":25,"files":["jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":15},{"name":"jc/parsers/ls_s.py","lines_changed":9},{"name":"jc/parsers/ping_s.py","lines_changed":18}]},"message":"simplify yield statements"},{"commit":"a509d99cafd80862721595ee59ccc4a471b5e5a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":8}]},"message":"add stream_success dictionary"},{"commit":"481e45fb644ac88fa77ef35643b793f179fe6859","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2}]},"message":"limit parse error msg lenght"},{"commit":"e9038e1720e1c0e520e2f29b718aa8505cbbb9a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":66,"deletions":0,"files":["docs/parsers/ping_s.md"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":66}]},"message":"initial streaming ping docs"},{"commit":"8fd9e582bf29275c4daaa3be88ea8d196411b34a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":15,"deletions":17,"files":["docs/parsers/ls_s.md"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":32}]},"message":"doc update"},{"commit":"c1fd6f48a5a3501499c9fca7239673b8555cc7c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["docs/utils.md"],"file_stats":[{"name":"docs/utils.md","lines_changed":6}]},"message":"add stream_error docs"},{"commit":"af615c7f4b3f589ffc1b37cf9834062a04c013cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":26,"deletions":5,"files":["CHANGELOG","README.md","jc/cli.py","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"README.md","lines_changed":4},{"name":"jc/cli.py","lines_changed":7},{"name":"man/jc.1","lines_changed":11},{"name":"templates/manpage_template","lines_changed":4},{"name":"templates/readme_template","lines_changed":3}]},"message":"add line buffer output option"},{"commit":"bf0bc32d7ae6cabe07906207f4f08c2e81802c80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"flush streamed text for better piping experience"},{"commit":"2d6b53e012181a4c33bab441880c47c0fc0b0601","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":36,"deletions":42,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":78}]},"message":"add pattern support. move unparsable line detection to standard streaming parser style"},{"commit":"51271fea0fbd7bd63863ba05c399b4675dc5b4bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":139,"deletions":149,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":288}]},"message":"somewhat working parser"},{"commit":"2deb473e0bc96c0e39ec4074a6df4b941ba2172b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":262,"deletions":0,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":262}]},"message":"initial streaming ping parser"},{"commit":"23eeb33b3da43a679c3bf3f3643cfa552a1164e1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"modify stream_error message"},{"commit":"f50dfaef45632241f8f6972fa19bb17c54a457ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":13,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":19}]},"message":"use stream_error function for exceptions. raise on non -l ls output"},{"commit":"55bb71e9d466cc9ee5f7fd8eca1101c941cbcb35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"add streaming ping parser. update streaming exception message"},{"commit":"dab9357d286962b70224d6fafbf90a4c0cbc9980","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":12,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":13}]},"message":"use stream_error function for exceptions"},{"commit":"27eb427245b5126335cef0adb5e57522272474b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":16}]},"message":"add stream_error function"},{"commit":"260f3685d944ded84396ae3395773d6898803fb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":112,"deletions":0,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":112}]},"message":"add streaming parser template"},{"commit":"76e78fc0c34b88a90fef876eebef92bd71cd772c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":11,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":20}]},"message":"doc updates"},{"commit":"1ac944fa028a400ae7b39b811fcf368c9bf5e259","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2}]},"message":"add -q option info to docstring"},{"commit":"986bc9b042a940f8dd34f0541bcb9b5840df579e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":43,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":52}]},"message":"cleanup unused code"},{"commit":"5a7942069b1f3ef3b45992b482bfb6bb973f7e8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":28,"deletions":28,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":56}]},"message":"add support for parent field"},{"commit":"f6c6fc13ac4c779667807df12444a41ef28a8011","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"enhance error msg when streaming parser is used"},{"commit":"1d8cfae89f24192b6fab087f59c9b8988ef363dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":11}]},"message":"only print _meta object if -q or quiet flag is used. Also, add message to the end of exceptions informing of the -q option to ignore errors"},{"commit":"787df51239ffa8260b48d6a3a58e6ff07d5e0f64","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2}]},"message":"remove `\\n` from end of line in exception message"},{"commit":"5e7f302a9c45343c36e81944db38a435e6c8a20c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":10,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":22}]},"message":"Raise exceptions unless the -q or quiet flag are used"},{"commit":"3d10fd40b56264836874da19aa72351e6d5cfbf7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":13,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":27}]},"message":"remove print flush for better performance. Roll json.JSONDecodeError into the parse try/except block"},{"commit":"57e3bf239cc76d3b0ee0eddc618171eb90c28dec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":6},{"name":"jc/parsers/ls_s.py","lines_changed":6}]},"message":"formatting for docs"},{"commit":"ccb09861e82044e17ec51277b3c8875e5ba9d87d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":20,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":20},{"name":"jc/parsers/ls_s.py","lines_changed":20}]},"message":"formatting for docs"},{"commit":"94551d75dd926c7f558e5cab47ba9483a20c6b3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":116,"deletions":49,"files":["CHANGELOG","README.md","docs/parsers/ls_s.md","docs/readme.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz","mangen.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":6},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/ls_s.md","lines_changed":89},{"name":"docs/readme.md","lines_changed":25},{"name":"jc/__init__.py","lines_changed":27},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":7},{"name":"man/jc.1.gz","lines_changed":null},{"name":"mangen.py","lines_changed":8},{"name":"setup.py","lines_changed":2}]},"message":"doc update"},{"commit":"6e21218425359210591827e936b8d48d9644df92","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":234,"deletions":3,"files":["jc/cli.py","jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":23},{"name":"jc/parsers/ls_s.py","lines_changed":214}]},"message":"working prototype of streaming ls parser"},{"commit":"ff0fda48fc48760a7293528155d222c6456f84c4","merge":"e08b61f 528aac7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #168 from kellyjonbrazil/master\n\nSync master to dev"},{"commit":"528aac7ad87feae2093aba563c83a29ebf75e5f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":38,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":23},{"name":"templates/readme_template","lines_changed":23}]},"message":"use subprocess in python example"},{"commit":"ab482e521d4cecfffa5393805b1d7de4389db49a","merge":"9c1ad92 e08b61f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #163 from kellyjonbrazil/dev\n\nDev v1.16.2"},{"commit":"e08b61fa81b1bd2304d04db5cdc8b809fe9c6032","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add schema note to sfdisk"},{"commit":"ce61bd1d2b4323d9c2d0454c4f646521913ae20d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":73,"deletions":7,"files":["tests/fixtures/debian10/sfdisk-F2.json","tests/fixtures/debian10/sfdisk-F2.out","tests/fixtures/debian10/sfdisk-l2.json","tests/fixtures/debian10/sfdisk-l2.out","tests/fixtures/debian10/sfdisk-l3.json","tests/fixtures/debian10/sfdisk-l3.out","tests/test_sfdisk.py"],"file_stats":[{"name":"tests/fixtures/debian10/sfdisk-F2.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-F2.out","lines_changed":6},{"name":"tests/fixtures/debian10/sfdisk-l2.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-l2.out","lines_changed":15},{"name":"tests/fixtures/debian10/sfdisk-l3.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-l3.out","lines_changed":13},{"name":"tests/test_sfdisk.py","lines_changed":43}]},"message":"add tests for -F fixes"},{"commit":"7b708f75182bf3ed33478a7de62e9c2496f0b994","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":11,"deletions":5,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-l.json","tests/fixtures/debian10/sfdisk-l.json"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":12},{"name":"tests/fixtures/centos-8/sfdisk-l.json","lines_changed":2},{"name":"tests/fixtures/debian10/sfdisk-l.json","lines_changed":2}]},"message":"Don't convert 'size' to int, except for legacy -d support. Change partition table detection logic to fix -F output"},{"commit":"89ca50c7fc1bf64f34c915e65031d0bc520e6466","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/sfdisk.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add -l to sfdisk raw example"},{"commit":"fb54899dcc2160450448e0d6111557cebdeb0d4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":38,"deletions":23,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":59},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update"},{"commit":"0a625ad7ddd9c804052d98930165cd22049546bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/sfdisk.py"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":2}]},"message":"remove unneeded lines"},{"commit":"d32e45efbe0d71a9a132abfb2855f1f4ccee9916","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":69,"deletions":1,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-F.json","tests/fixtures/centos-8/sfdisk-l.json","tests/fixtures/debian10/sfdisk-F.json","tests/fixtures/debian10/sfdisk-l.json","tests/test_sfdisk.py"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":9},{"name":"tests/fixtures/centos-8/sfdisk-F.json","lines_changed":1},{"name":"tests/fixtures/centos-8/sfdisk-l.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-F.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-l.json","lines_changed":1},{"name":"tests/test_sfdisk.py","lines_changed":57}]},"message":"add sfdisk tests"},{"commit":"c77696bc789cdfd286a7479c3d9f67d23149d0ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":4},{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"736fde9e784587cb2ef344bbf31d876eafea7741","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":147,"deletions":28,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-F.out","tests/fixtures/centos-8/sfdisk-l.out","tests/fixtures/debian10/sfdisk-F.out","tests/fixtures/debian10/sfdisk-l.out"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":127},{"name":"tests/fixtures/centos-8/sfdisk-F.out","lines_changed":9},{"name":"tests/fixtures/centos-8/sfdisk-l.out","lines_changed":24},{"name":"tests/fixtures/debian10/sfdisk-F.out","lines_changed":3},{"name":"tests/fixtures/debian10/sfdisk-l.out","lines_changed":12}]},"message":"add support for newer versions of sfdisk"},{"commit":"9c1ad92fed9a4b3a0da66d6b71deec8d608edfa9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":12}]},"message":"fix examples"},{"commit":"1a9fd2139d156a51bf2d25db951e47e96da77f7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"add \"For new parsers:\""},{"commit":"7661e7f27a4e5c379ea37c7f95496aca2c1e2910","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"formatting"},{"commit":"f857b7fbf7862ddd7eb5ab20470f5dbaacc62119","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"add custom parser folder info"},{"commit":"d94d12dbc5fb3e3712b2f1aea949013cb8213e28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":11}]},"message":"add foo parser template info"},{"commit":"700916276ae8b0a106410e3dd2ea3e00248ee37a","merge":"473f706 834e523","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #159 from kellyjonbrazil/master\n\nSync Master to dev"},{"commit":"834e52369ceb479776ddc8fc2931790af53b9c18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":5,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":6},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update man page"},{"commit":"1ce53365de61421c8bd43e04590038083894153b","merge":"2689697 473f706","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #156 from kellyjonbrazil/dev\n\nDev v1.16.1"},{"commit":"473f70668f04a38765559c5dbf0468af24d625c9","merge":"0dbd270 2689697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'master' into dev\n\n# Conflicts:\n# jc/man/jc.1.gz\n# man/jc.1\n# man/jc.1.gz"},{"commit":"0dbd2702f6ab2640b2ccdea92411ac0789673e66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]},"message":"reformat doc_text for nicer indentation"},{"commit":"01e3764a9b6ba902aea522bf6b7005fd37b3acbb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"fix join syntax"},{"commit":"ff9c81722ae7221364e9bcb83d98b16b4263334e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"try/except for shlex.join since only available in python 3.8"},{"commit":"166aef7a022ed29862ab2e0702d53c591bb5cc77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":4,"deletions":4,"files":["docs/parsers/stat.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz","setup.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"78caf7646baf5d35602fd76771443cd64bd783af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add stat fix"},{"commit":"1f99d40cecc5d88a246f3558f71db376ebd885c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":17,"deletions":2,"files":["jc/parsers/stat.py","tests/fixtures/osx-10.14.6/stat-filename-with-spaces.json","tests/fixtures/osx-10.14.6/stat-filename-with-spaces.out","tests/test_stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"tests/fixtures/osx-10.14.6/stat-filename-with-spaces.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/stat-filename-with-spaces.out","lines_changed":2},{"name":"tests/test_stat.py","lines_changed":12}]},"message":"fix filename with spaces for osx/bsd"},{"commit":"4c2912d3d5ec1fd2d5d891f2b3c58a33dd8572be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"use shlex.join to quote run_command_str for better error messages"},{"commit":"45e6e06be581f787f707e3f5645129c713478d16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"add glob and process substitution fixes"},{"commit":"fdbe3e05f323c95687a1137983f9623911008ca2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"fix issue with globs not including filenames with spaces with magic syntax (introduced during switch to use subprocess to grab process exit code). No longer need to shlex quote arguments."},{"commit":"7cc168f6409af13fda815d0d2a6db25b7c9ba367","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add comment"},{"commit":"ff2d609c9b5f5f57f3331e5593e8fe87c01654dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":13}]},"message":"add close_fds=False in subprocess.Popen() to allow process substitution in magic syntax. Also check for too many open files exception"},{"commit":"2689697b4c21758903e5f74ec069e89be585aba2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting"},{"commit":"f90a0ea8ab15629b7786e4431e9c968c3a896ee0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":4}]},"message":"formatting"},{"commit":"caabe60f849fb2422e47b8f10e0ff35beb706dcd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":3,"deletions":3,"files":["docs/parsers/kv.md","jc/man/jc.1.gz","jc/parsers/kv.py","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/kv.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/kv.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"fix kv example"},{"commit":"2bef4ed6038201f54339e750a833260dc1998591","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","README.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"README.md","lines_changed":4}]},"message":"package updates"},{"commit":"ee57be533b12593a33a2abbb2892697f0bd40c65","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2}]},"message":"fix sfdisk example"},{"commit":"c5b7aaca25d6b66d3e44256c2c6760a4cf2956ec","merge":"3b22ce4 7a1be90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #149 from kellyjonbrazil/dev\n\nDev v1.16.0"},{"commit":"7a1be905bb8654558afb5979b0bd78d4a8488874","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"version bump"},{"commit":"5798495a11afa2f72ce6f79be785d46240fcbeb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":6}]},"message":"add 1.15.7 to 1.16.0 changes"},{"commit":"46171e220252ec92d18e744d2a57c1d6a6dc19f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":69,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":69}]},"message":"add sfdisk example"},{"commit":"dd5c924ff505dcc2a9c851d2425677bdf16ea462","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add man page location change"},{"commit":"30c4ab297658228a07ef9b1585516719af3febb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":515,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":515},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"new man page location"},{"commit":"26ea4d47b33277efb0ddafe8f421791696277c07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":14,"deletions":3,"files":["CHANGELOG","MANIFEST.in","jc/__init__.py","mangen.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":10},{"name":"MANIFEST.in","lines_changed":1},{"name":"jc/__init__.py","lines_changed":2},{"name":"mangen.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump and deprecate /man/jc.1.gz and /jc/man/jc.1.gz"},{"commit":"2732cd175c1e878210707162de3928f33fb2f201","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["CHANGELOG","MANIFEST.in"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"MANIFEST.in","lines_changed":1}]},"message":"include CHANGELOG in source distribution"},{"commit":"3e54b597be88b0e342e4361b7f2c1af447f9482b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add timezone change for unit tests"},{"commit":"f10ebea20962084833e5c1ebd9bc90a251bf3ff4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":78,"deletions":0,"files":["tests/test_date.py","tests/test_dig.py","tests/test_dir.py","tests/test_last.py","tests/test_ls.py","tests/test_rpm_qai.py","tests/test_stat.py","tests/test_systeminfo.py","tests/test_upower.py","tests/test_utils.py","tests/test_who.py"],"file_stats":[{"name":"tests/test_date.py","lines_changed":7},{"name":"tests/test_dig.py","lines_changed":7},{"name":"tests/test_dir.py","lines_changed":7},{"name":"tests/test_last.py","lines_changed":7},{"name":"tests/test_ls.py","lines_changed":7},{"name":"tests/test_rpm_qai.py","lines_changed":7},{"name":"tests/test_stat.py","lines_changed":7},{"name":"tests/test_systeminfo.py","lines_changed":7},{"name":"tests/test_upower.py","lines_changed":7},{"name":"tests/test_utils.py","lines_changed":8},{"name":"tests/test_who.py","lines_changed":7}]},"message":"update tests to set correct timezone on POSIX systems"},{"commit":"2c6f3993cb4c5e559dbac7a479ec889aa2cba752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/route.md","jc/man/jc.1.gz","jc/parsers/route.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/route.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"remove extra comma"},{"commit":"708a696920b52c2614edcdba264912527b2dfbef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":0,"deletions":2,"files":["docs/parsers/route.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/route.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"remove extra lines"},{"commit":"20bbb5d331575c8fc33ba63643882a62650c97b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":2}]},"message":"remove extra lines"},{"commit":"223e785b547d9376174efa15321d60a533847c57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/sfdisk.py"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":8}]},"message":"rename variable"},{"commit":"3d78692c59980e4d70361d3a9f74bacc3f21376e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":150,"deletions":1,"files":["tests/fixtures/centos-7.7/sfdisk-d-multi.json","tests/fixtures/centos-7.7/sfdisk-d-multi.out","tests/fixtures/centos-7.7/sfdisk-d.json","tests/fixtures/centos-7.7/sfdisk-d.out","tests/fixtures/centos-7.7/sfdisk-l-multi.json","tests/fixtures/centos-7.7/sfdisk-l-multi.out","tests/fixtures/centos-7.7/sfdisk-l.json","tests/fixtures/centos-7.7/sfdisk-luB.json","tests/fixtures/centos-7.7/sfdisk-luM.json","tests/fixtures/centos-7.7/sfdisk-luS.json","tests/test_sfdisk.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/sfdisk-d-multi.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-d-multi.out","lines_changed":16},{"name":"tests/fixtures/centos-7.7/sfdisk-d.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-d.out","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-l-multi.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-l-multi.out","lines_changed":21},{"name":"tests/fixtures/centos-7.7/sfdisk-l.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-luB.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-luM.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-luS.json","lines_changed":1},{"name":"tests/test_sfdisk.py","lines_changed":106}]},"message":"add sfdisk tests"},{"commit":"5321a15dcf13cf14efe578d0f66b651078c3d8a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":8,"deletions":8,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":8},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/sfdisk.py","lines_changed":8},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update examples"},{"commit":"a452f8252a593f7914ebece53af9d73f4fd11a19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":4},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/sfdisk.py","lines_changed":4},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"fix integer conversion"},{"commit":"49267f09ac01fead3b20b2d481bb5e0d07af1439","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/sfdisk.py"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":4}]},"message":"change to root prompt in examples"},{"commit":"db47f35783e46a8299533c22146d851509f6ceb2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":15,"insertions":610,"deletions":3,"files":["CHANGELOG","README.md","docs/parsers/sfdisk.md","jc/__init__.py","jc/cli.py","jc/man/jc.1.gz","jc/parsers/sfdisk.py","jc/utils.py","man/jc.1.gz","setup.py","tests/fixtures/centos-7.7/sfdisk-d.out","tests/fixtures/centos-7.7/sfdisk-l.out","tests/fixtures/centos-7.7/sfdisk-luB.out","tests/fixtures/centos-7.7/sfdisk-luM.out","tests/fixtures/centos-7.7/sfdisk-luS.out"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/sfdisk.md","lines_changed":213},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/sfdisk.py","lines_changed":325},{"name":"jc/utils.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/sfdisk-d.out","lines_changed":8},{"name":"tests/fixtures/centos-7.7/sfdisk-l.out","lines_changed":14},{"name":"tests/fixtures/centos-7.7/sfdisk-luB.out","lines_changed":14},{"name":"tests/fixtures/centos-7.7/sfdisk-luM.out","lines_changed":14},{"name":"tests/fixtures/centos-7.7/sfdisk-luS.out","lines_changed":14}]},"message":"add working sfdisk parser"},{"commit":"d48abf312c1f55ab31aa11da2b6cf6bc8166733b","merge":"ff7ab0a 3b22ce4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #147 from kellyjonbrazil/master\n\nsync to dev"},{"commit":"3b22ce41105387e7f46a410460cf04759feef197","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":6,"deletions":3,"files":["CHANGELOG","jc/__init__.py","jc/cli.py","jc/man/jc.1.gz","man/jc.1.gz","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"setup.py","lines_changed":2}]},"message":"fix local plugin parser issue where parser has .py in the name but it is not at the end"},{"commit":"c521ca5bc9e2b035cfef6ff65f6b303b3ec44296","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"change possible to available"},{"commit":"3ddc1c665990e1e732314330db214a81ab810fe9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add jello"},{"commit":"a8e19402b7d1f9f06bc40b81a15dec401154180c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["ADVANCED_USAGE.md"],"file_stats":[{"name":"ADVANCED_USAGE.md","lines_changed":4}]},"message":"remove temporary fix"},{"commit":"0927902b30654274743ab9092e90e768709a9937","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["ADVANCED_USAGE.md"],"file_stats":[{"name":"ADVANCED_USAGE.md","lines_changed":4}]},"message":"temp fix for wrong url"},{"commit":"572548b42fb6ed9d32a392503d44fac1a8f146d3","merge":"95aec9c ff7ab0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #141 from kellyjonbrazil/dev\n\nDev v1.15.5"},{"commit":"ff7ab0a1ed7f468d0e84eb3bf0636f53913c490d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":0,"deletions":1,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc updates for v1.15.5"},{"commit":"5db71b05cb28691bbbaa5d668bcd4a4ac7e68b85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":3,"deletions":3,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/manpage_template","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add en_US.UTF-8 to LANG info"},{"commit":"f9b952885aa7f2b450786a08c3879d9e358886da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add python 3.9.5 packaged info"},{"commit":"e7983bc0b29abaca2147038dfad018cba1e67cdf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xml.md","docs/parsers/yaml.md"],"file_stats":[{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2}]},"message":"version bump"},{"commit":"473a6431425fc24a4cc83939ff592e0d49535b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":10,"deletions":3,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":11},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/readme_template","lines_changed":2}]},"message":"add windows msi info"},{"commit":"14f3d442cb86250b8f2cdfd7977938634b8abd6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"formatting"},{"commit":"d6f4ed9ab55fe9b7c2766fb437172af62a1d5c87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":2}]},"message":"add long-form UTC test"},{"commit":"1b8d654444ff8c8b8171c7ac63e2736447a36c09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add error message info"},{"commit":"6002af0dca334c0affaff3e9acdca416238c7d82","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":11}]},"message":"add more error message detail to the user for ParseError and LibraryNotFound exceptions"},{"commit":"0924d822a30c8806f65574c010561cd6f7c8e181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":1,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":9}]},"message":"add windows example"},{"commit":"72a37b928924c3edde3a4edb952f98c94aa05f0b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"5eef7bd769f8ffb03ba396833d1b33484041a99f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":16,"deletions":16,"files":["jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/xml.py","lines_changed":16},{"name":"jc/parsers/yaml.py","lines_changed":16}]},"message":"use LibraryNotInstalled exception instead of exiting via sys.exit"},{"commit":"c6893e1bd5283d982a7ecd6f84bdfdd0054ce7a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/exceptions.py"],"file_stats":[{"name":"jc/exceptions.py","lines_changed":4}]},"message":"add LibraryNotInstalled exception"},{"commit":"039f6612e491c6f821c001252e122e9b0a781104","merge":"9c57c09 95aec9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #139 from kellyjonbrazil/master\n\nsync branches"},{"commit":"95aec9c6f9aa8fb4d0dae227410a1346d550f47f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["templates/manpage_template"],"file_stats":[{"name":"templates/manpage_template","lines_changed":6}]},"message":"add info about Magic syntax not supporting shell builtins"},{"commit":"4e9652a8ec2482a64dc029b0ce0e1047a3e49867","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"spelling"},{"commit":"773b7f4b1f23e04c90e602aab05bc1a7e5aae37b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"templates/readme_template","lines_changed":1}]},"message":"add space before exit code table"},{"commit":"d17ffde9cdc35392ae25d8e9de5328e46067df2a","merge":"efb1d3e 9c57c09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #138 from kellyjonbrazil/dev\n\nDev v1.15.4"},{"commit":"9c57c09c00e64a9031391b9b70083ad6ecf0bc0b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update for release"},{"commit":"4d730a9de5a0d7c064a9a59e3add86e58d9ec492","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add UTC fix"},{"commit":"fc57bcfce24af23f077d6a73f1db4591d8f99c13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":3}]},"message":"fix for when UTC is referenced as \"Coordinated Universal Time\""},{"commit":"fa5571486c3c19bb7e836f043545ea4f2509ed4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":10,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":20}]},"message":"simplify json_out function"},{"commit":"9996c4fe23564dfb52e3c7dbdbd8bd67edfb1e95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":10,"deletions":10,"files":["EXAMPLES.md","docs/parsers/history.md","docs/parsers/jobs.md","jc/man/jc.1.gz","jc/parsers/history.py","jc/parsers/jobs.py","man/jc.1.gz"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":6},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":6},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update docs for shell builtins"},{"commit":"038d4290248e6bb94762bb51f69e9958f7c1fecb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":6,"files":["docs/parsers/dig.md","docs/parsers/dir.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":8},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc updates"},{"commit":"9bf6facb0d7d76583802309253e7d13ba5148997","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":6,"files":["jc/parsers/dir.py"],"file_stats":[{"name":"jc/parsers/dir.py","lines_changed":9}]},"message":"remove magic command capability since dir is a shell builtin"},{"commit":"965717886e4ebaa6a4a494f189d9fdd01e33eb21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add exceptions module info"},{"commit":"e9bfc3dd29f914fd91e937f06d7f59c0f91b8449","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"add time format, dig compatibility, windows colors fix"},{"commit":"f46b33eacf070b4dc72c8d8a66aae49abd149e5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2},{"name":"tests/test_utils.py","lines_changed":2}]},"message":"add windows time format"},{"commit":"f475fe44df2fb2661c5bce4d1e602a4bba7e87c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":3}]},"message":"add new time format for systeminfo"},{"commit":"5fdbe2962d84dad89de23f103d97b76b90450206","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":2}]},"message":"make dig compatible with all platforms"},{"commit":"ab291b9eef6ed5c8ab59b5652f676178941d5ce5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"only force enable colors when running on windows"},{"commit":"fd411fd77273cb7cf872c03ed6a258ccdee4d261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"attempt to get colors working on windows"},{"commit":"b1e95a60a2461dc401ffc299ef6338b65ef12691","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"remove unnecessary comment"},{"commit":"bb1439f0d53e87f636fba05fbd30c3c79fb16002","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":5}]},"message":"use ParseError exception from jc.exceptions module"},{"commit":"ba963d98a0a2b3a0dfca6b211096d802253da5fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/exceptions.py"],"file_stats":[{"name":"jc/exceptions.py","lines_changed":5}]},"message":"add exceptions module including ParseError"},{"commit":"83440ccb55d0db15b112b8b7d7352493ff516112","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"error message capitalization"},{"commit":"796f61bfa417afdc6ab48fddbb5502cd0659b840","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":13}]},"message":"handle case where the user pipes data and uses magic syntax simultaneously"},{"commit":"070cac4ae12282458a1e1fc8618ebc473d23cacf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"remove commented line"},{"commit":"3ed84f9f42e4e883ddaac28ab49d675600b49424","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":18}]},"message":"reorganize main function. remove pass condition."},{"commit":"a205afb6f355edbb4b98200a980b9601ed0f0658","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"set run_command_str if run_command is set"},{"commit":"a6d983dd8f3871cbc2391c313340167829a575d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"move run_command_str variable"},{"commit":"b6c8d6d01d740827273265dbb0cfbaf7875ac7f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":45,"deletions":17,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":62}]},"message":"add exception handling for filenotfound or other subprocess.popen and json.dumps exceptions"},{"commit":"b5a5d5b133f1c0df8023776e59697b7579f8c18a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"set parser_name for magic syntax use"},{"commit":"da528e7814b0cf25a359c3556d0e286e7bf004b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"move separators to a variable"},{"commit":"4acebf4f621ac564f82e3a97e6810fbb08a9dbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"move variables"},{"commit":"4d40808d2b70b7543eadcfd2d35c16ebe91f2f9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":7}]},"message":"update comments"},{"commit":"c543f00bd3c737f73144bb2980d12793042459b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"simplify piped_output function"},{"commit":"947cf41dfab5811c0e76e371231c59a2d6372752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add exit code info"},{"commit":"8d8c58742e5106c3387a627cd1b1323a76cc9623","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":21,"deletions":15,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":13},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/manpage_template","lines_changed":10},{"name":"templates/readme_template","lines_changed":13}]},"message":"formatting"},{"commit":"995ecc9bfb0425b0ee9e4250395b0200b46c1e89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":15,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/manpage_template","lines_changed":15}]},"message":"add exit codes section"},{"commit":"21a15225ebff645439b12d6249dc3e28d7bc09ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":18,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":9},{"name":"templates/readme_template","lines_changed":9}]},"message":"add exit codes section"},{"commit":"48921d4584068fadb0f776ed7e81c21d89172e2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"ensure exit code never exceeds 255"},{"commit":"342db45edc94ab1c3b3ae70e7cf4ca4076e2c7eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":10,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":28}]},"message":"fix combined exit codes"},{"commit":"5f88ecf8443bc6e9a7cda5bc60858f37cc09f4f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]},"message":"add comments to magic_parser return"},{"commit":"a56aebfe7024914d2c602278964b99d1443de335","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"remove side-effect comment since it is no longer relevant"},{"commit":"422bb744a82472546d62c72ba05eaa1d18d5068a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update man pages"},{"commit":"c3b814a15f571ac84a8ce0719d7fd88acf814caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":7}]},"message":"move imports to the top"},{"commit":"e4574047a0ef6fcd4a47142421a1d05795c7925a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":21,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":42}]},"message":"update tests for magic_parser function"},{"commit":"0d7d7951f82627d1fb1e20d1398bd7f88c5ce1be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":12}]},"message":"don't reset sys.argv anymore. check for 'valid_command' instead"},{"commit":"da904e4770a20ae85fc67476ae4a529564d0a3ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"remove final \\n from stderr string when printing"},{"commit":"19b540041add64fe6650c3634ec869421ffbc769","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":82,"deletions":51,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":133}]},"message":"proof of concept for passing command exit codes when using magic syntax. Needs more testing"},{"commit":"f2ffb93eeaf4c8b5aa93f3e8808bdc044582e8a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":10,"files":["tests/test_ping.py"],"file_stats":[{"name":"tests/test_ping.py","lines_changed":10}]},"message":"formatting"},{"commit":"c0c0e05642e0f473cde34178d815978fff8fe1ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add dig `+noall +answer` support"},{"commit":"966978f17e40a338f982628825f30a19d4b84e4c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":72,"deletions":0,"files":[".../centos-7.7/ping6-ip-O-p-unparsable.json",".../centos-7.7/ping6-ip-O-p-unparsable.out",".../fixtures/osx-10.14.6/ping6-ip-unparsable.json","tests/fixtures/osx-10.14.6/ping6-ip-unparsable.out","tests/test_ping.py"],"file_stats":[{"name":".../centos-7.7/ping6-ip-O-p-unparsable.json","lines_changed":1},{"name":".../centos-7.7/ping6-ip-O-p-unparsable.out","lines_changed":27},{"name":".../fixtures/osx-10.14.6/ping6-ip-unparsable.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-unparsable.out","lines_changed":9},{"name":"tests/test_ping.py","lines_changed":34}]},"message":"add more unparsable line ping tests"},{"commit":"8ab08a5231e082940a62fcde4be218b7ba94be31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":4}]},"message":"doc update"},{"commit":"48e534fa03b92b2583c5c6269c76651f3aa420cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":17,"deletions":2,"files":["tests/fixtures/osx-10.14.6/dig-noall-answer.json","tests/fixtures/osx-10.14.6/dig-noall-answer.out","tests/test_dig.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/dig-noall-answer.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig-noall-answer.out","lines_changed":4},{"name":"tests/test_dig.py","lines_changed":14}]},"message":"add +noall +answer test"},{"commit":"61851c1bd02aa82d5d82e68595e45630ead13d34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":85,"deletions":3,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":40},{"name":"jc/parsers/dig.py","lines_changed":48}]},"message":"add support for +noall +answer"},{"commit":"3c51b2d83d301b4072bbb12fdba4f60b900573da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":40,"deletions":0,"files":[".../centos-7.7/ping-ip-O-unparsedlines.json",".../centos-7.7/ping-ip-O-unparsedlines.out","tests/test_ping.py"],"file_stats":[{"name":".../centos-7.7/ping-ip-O-unparsedlines.json","lines_changed":1},{"name":".../centos-7.7/ping-ip-O-unparsedlines.out","lines_changed":27},{"name":"tests/test_ping.py","lines_changed":12}]},"message":"add tests for unparsable lines on linux"},{"commit":"ee3a28528e152c61f05bdf71f264fe38274b4190","merge":"fe1f101 916bcda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev\n\n# Conflicts:\n# templates/readme_template"},{"commit":"916bcdae3881fc9c9f9a91c8c901a714cff3e1da","merge":"fb14f54 efb1d3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #136 from kellyjonbrazil/master\n\nmerge changes from master"},{"commit":"efb1d3e6b2db920423511a9dcf4c5e5fd9d6af43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"templates/readme_template","lines_changed":4}]},"message":"add blog title and minor formatting"},{"commit":"4e6ae66bacc014e49c4a9229d10dcc8e95de436c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting"},{"commit":"5ee88e7b679bc163a1916d560be6ff29f51699e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":10}]},"message":"add use cases section"},{"commit":"c3b68903cbd898f80438af342195eec7575aafd3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":10}]},"message":"add use cases section"},{"commit":"fe1f1013a74bdf6b4284f11dd59db8ea17e5e5d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":10}]},"message":"add use cases section"},{"commit":"fb14f5439f00d5eaf08651c552189fd4be7358d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":52,"deletions":3,"files":["jc/parsers/ping.py",".../osx-10.14.6/ping-ip-unknown-errors.json",".../osx-10.14.6/ping-ip-unknown-errors.out","tests/test_ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":7},{"name":".../osx-10.14.6/ping-ip-unknown-errors.json","lines_changed":1},{"name":".../osx-10.14.6/ping-ip-unknown-errors.out","lines_changed":35},{"name":"tests/test_ping.py","lines_changed":12}]},"message":"fix and tests for unknown or unparsable errors"},{"commit":"5ca0fc364eb22d583bee5633cdd7183c1d70bb6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/parsers/ping.md"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":1}]},"message":"add unparsed_line to docs"},{"commit":"a1fe7037e5267ec4aced719eff3715085eb35bca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":10}]},"message":"add unparsed_line field if line cannot be parsed"},{"commit":"c2af7d113ed8e8cf9af985c969cf29858a3c26a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["CHANGELOG","docs/parsers/ping.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"docs/parsers/ping.md","lines_changed":2}]},"message":"add ping updates"},{"commit":"ff034e401d5c33efbc3c4bc2f0e386d81eaae7fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":59,"deletions":43,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":102}]},"message":"use try/except to make parser more resilient against unknown error types"},{"commit":"5abe095beb4b668e5f55fe8c9588677547e4c2a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":3,"files":["docs/parsers/ping.md"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":17}]},"message":"update ping docs"},{"commit":"33de5f01e638953c83bb0960dc3550ca4547849b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["jc/__init__.py","setup.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":4},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"8ce155d843806be4ad23491b4401e4eda02e2a1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":86,"deletions":23,"files":["CHANGELOG","jc/parsers/ping.py",".../fixtures/osx-10.14.6/ping-ip-unreachable.json","tests/fixtures/osx-10.14.6/ping-ip-unreachable.out","tests/test_ping.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/ping.py","lines_changed":56},{"name":".../fixtures/osx-10.14.6/ping-ip-unreachable.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-unreachable.out","lines_changed":35},{"name":"tests/test_ping.py","lines_changed":14}]},"message":"add support for error replies in v4 ping on osx and bsd"},{"commit":"b921d5ec9583c8f8e992613ae2eaf62165722054","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":105,"deletions":6,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":111}]},"message":"initial support for error replies in bsd/osx"},{"commit":"e21542aaa2aa5f2f287ddc227df41ae47d761332","merge":"d24f9a8 6150aae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #135 from kellyjonbrazil/dev\n\nDev clarify packaged binaries in readme"},{"commit":"6150aae0aeabafba26d9f119406b0660d9221cb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"clarify packaged binaries"},{"commit":"f27b35f37104ad2012c3bddde0bd94941af06894","merge":"bd428a9 d24f9a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #131 from kellyjonbrazil/master\n\nsync branches"},{"commit":"d24f9a885d3954035a98a488671486408f509dca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["CONTRIBUTING.md","README.md","templates/readme_template"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2},{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"fix contributing link"},{"commit":"48dd82c8d1b756c4e08d49b8234b8060080dc035","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"trigger page build on github pages"},{"commit":"e57167ad1f240de6ec5fc86c51cfb780535cd783","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","message":"empty commit"},{"commit":"ada91376426ff359c495fb31081404a2cce72b5f","merge":"0c209db bd428a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #130 from kellyjonbrazil/dev\n\nDev link updates"},{"commit":"bd428a9fd75327710dce96f3c95f74ab9d1beaad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"fix link"},{"commit":"934941332f91d9e2cc4e691b154bb5427166ed30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"templates/readme_template","lines_changed":6}]},"message":"minor link updates"},{"commit":"0c209dbd108638f89a43801126a332379be9ae8b","merge":"92e2252 56e041a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #129 from kellyjonbrazil/dev\n\nDev update readme"},{"commit":"56e041aa260b2daf2f5662fae98645a93137adb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add Practical JSON at the Command Line blog link"},{"commit":"cf9d48582e4e5df6c8498b916a2f9cf036869f3d","merge":"35464bb 92e2252","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #128 from kellyjonbrazil/master\n\nsync branches"},{"commit":"92e2252bee00482bb0eeae3074b107d4c8553e4c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"fix typo"},{"commit":"fd7861db11e5aaa17c4e7bbce942c0c096116e30","merge":"fcc7e52 35464bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #127 from kellyjonbrazil/dev\n\nDev v1.15.3"},{"commit":"35464bbbfb6b424ef3ee1c855557ada1bf3769fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"date update"},{"commit":"db8ddd7f0e0c2a8bd3e545619e81d3d3972a4d7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":11,"deletions":17,"files":["jc/man/jc.1.gz","jc/parsers/ufw.py","man/jc.1.gz","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/ufw.py","lines_changed":24},{"name":"man/jc.1.gz","lines_changed":null},{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.json","lines_changed":2}]},"message":"fix for scenarios where the default port range didn't always display, or overrode existing port ranges."},{"commit":"72207c54ee5734e3d2d3d1a063c8daf1edaa8815","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":102,"deletions":94,"files":["docs/parsers/ufw_appinfo.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/ufw_appinfo.md","lines_changed":196},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update ufw app info docs to support multiple apps (ufw app info all)"},{"commit":"a683f68003ea64dd5e2c4f06b53a1561ad774f12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":285,"deletions":202,"files":["EXAMPLES.md","jc/parsers/ufw_appinfo.py","tests/fixtures/generic/ufw-appinfo-msn.json","tests/fixtures/generic/ufw-appinfo-test.json","tests/fixtures/generic/ufw-appinfo-test2.json","tests/fixtures/generic/ufw-appinfo-test3.json","tests/fixtures/ubuntu-18.04/ufw-appinfo-all.json","tests/fixtures/ubuntu-18.04/ufw-appinfo-all.out","tests/test_ufw_appinfo.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":68},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":345},{"name":"tests/fixtures/generic/ufw-appinfo-msn.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw-appinfo-test.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw-appinfo-test2.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw-appinfo-test3.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-appinfo-all.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ufw-appinfo-all.out","lines_changed":51},{"name":"tests/test_ufw_appinfo.py","lines_changed":14}]},"message":"change schema to a list of dictionaries to support `ufw app info all` use case"},{"commit":"8d2d3db3fa969456342181a226bf54a3f1613542","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":0,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting"},{"commit":"eca785450d1c72687817d09259fa7cd33376fafc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":34,"deletions":13,"files":["CHANGELOG","README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":22},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/readme_template","lines_changed":22}]},"message":"add caveats to readme and manpage"},{"commit":"5b40a97ce417687b4e37f320b8a3f07dd7fd169c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":13,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/manpage_template","lines_changed":13}]},"message":"add caveats to man page"},{"commit":"66cb4e9bde81b9290c1addaf851de5d80a1b0702","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":216,"deletions":234,"files":["EXAMPLES.md","docs/parsers/ufw.md","jc/man/jc.1.gz","jc/parsers/ufw.py","man/jc.1.gz"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":96},{"name":"docs/parsers/ufw.md","lines_changed":226},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/ufw.py","lines_changed":128},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update ufw parser docs"},{"commit":"d1f33645caccdb3a55576081c4d355f997ac033c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":26,"deletions":10,"files":["tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw-numbered2.json","tests/fixtures/generic/ufw.json","tests/fixtures/ubuntu-18.04/ufw-numbered.json","tests/fixtures/ubuntu-18.04/ufw-numbered.out","tests/fixtures/ubuntu-18.04/ufw-verbose.json","tests/fixtures/ubuntu-18.04/ufw-verbose.out"],"file_stats":[{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw-numbered2.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-numbered.out","lines_changed":16},{"name":"tests/fixtures/ubuntu-18.04/ufw-verbose.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-verbose.out","lines_changed":10}]},"message":"update ufw tests"},{"commit":"5eff65c326675a449afd05a2af0a6c9bcf7b5e23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":85,"deletions":268,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":353}]},"message":"update schema to support port lists and port range lists. Also support other transports than tcp and udp"},{"commit":"929c38715d87bf9dd689507d319c22b90871ae1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"formatting"},{"commit":"8c91a7b7601a967cd9d8096433ffd4ad62b65ceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":4}]},"message":"formatting"},{"commit":"14289ecd6c022ad204444dff5b5e48f6024a5d0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":4}]},"message":"more timezone info"},{"commit":"b833c44783eb32f2fad24ca205b5b7eab854750f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add ufw-appinfo parser"},{"commit":"e23aa818eaa6d1a389ddef7dd2ad8f62b9f6ff25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":5}]},"message":"add tests section and timezone info"},{"commit":"473d919c1350a8dc34d233033a5a7d12c928e42d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":32,"deletions":0,"files":["runtests.sh","tests/fixtures/generic/ufw-numbered2.json","tests/fixtures/generic/ufw-numbered2.out","tests/test_ufw.py"],"file_stats":[{"name":"runtests.sh","lines_changed":1},{"name":"tests/fixtures/generic/ufw-numbered2.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-numbered2.out","lines_changed":18},{"name":"tests/test_ufw.py","lines_changed":12}]},"message":"add another ufw test sample"},{"commit":"9f925d6ac989a4f21a8c00c84fcf97dfb141e8c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update"},{"commit":"f6ca32b3a31f314fa0b31d9e8b5494491b928f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/ufw.md","jc/parsers/ufw.py"],"file_stats":[{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"jc/parsers/ufw.py","lines_changed":2}]},"message":"update ufw docs with a note on lists of ports"},{"commit":"4cbe84c3d6ac8a3b594feb525460f2a68f5d62b2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":110,"deletions":0,"files":["tests/fixtures/generic/ufw-appinfo-msn.json","tests/fixtures/generic/ufw-appinfo-msn.out","tests/fixtures/generic/ufw-appinfo-test.json","tests/fixtures/generic/ufw-appinfo-test.out","tests/fixtures/generic/ufw-appinfo-test2.json","tests/fixtures/generic/ufw-appinfo-test2.out","tests/fixtures/generic/ufw-appinfo-test3.json","tests/fixtures/generic/ufw-appinfo-test3.out","tests/test_ufw_appinfo.py"],"file_stats":[{"name":"tests/fixtures/generic/ufw-appinfo-msn.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-appinfo-msn.out","lines_changed":9},{"name":"tests/fixtures/generic/ufw-appinfo-test.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-appinfo-test.out","lines_changed":9},{"name":"tests/fixtures/generic/ufw-appinfo-test2.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-appinfo-test2.out","lines_changed":9},{"name":"tests/fixtures/generic/ufw-appinfo-test3.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-appinfo-test3.out","lines_changed":9},{"name":"tests/test_ufw_appinfo.py","lines_changed":70}]},"message":"add ufw-appinfo tests"},{"commit":"ffac5bf9d381305daa86e546f8570be092e5ff34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":12,"deletions":12,"files":["docs/parsers/ufw.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/ufw.md","lines_changed":24},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update"},{"commit":"9aa424f9f8c7e4e0dc29e2c58dac481098beba7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":12}]},"message":"fix ufw example"},{"commit":"0a8495c68e427e39bbda957dd933fa2a461092e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":15,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":27}]},"message":"update docs"},{"commit":"6aea066cf024f92adf4b94eebc7d51430c22332c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/parsers/ufw_appinfo.py","lines_changed":6}]},"message":"make normalized list appear only when data exists. set magic commands"},{"commit":"ff3c2d809ec3ea6e556c302909a228ee670578c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":176,"deletions":25,"files":["EXAMPLES.md","README.md","docs/parsers/ufw_appinfo.md","jc/man/jc.1.gz","jc/parsers/ufw_appinfo.py","man/jc.1.gz"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":39},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":58},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":103},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add ufw-appinfo to docs"},{"commit":"145059fc8946b7026184139baea143c2869bc4e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":8,"files":["jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/parsers/ufw_appinfo.py","lines_changed":28}]},"message":"clean up output if sections are blank"},{"commit":"20e5c19de448c1b979497817c887d8d2d6487839","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/parsers/ufw_appinfo.py","lines_changed":3}]},"message":"fix key error if tcp or udp don't exist"},{"commit":"4c98fd4b877c54e1cf7d285a29e178321be12f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":101,"deletions":1,"files":["docs/parsers/ufw_appinfo.md","jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"docs/parsers/ufw_appinfo.md","lines_changed":100},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":2}]},"message":"doc update"},{"commit":"125e54213e8d4dcfe2e3271456af80b3f79c0544","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":105,"deletions":48,"files":["jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/parsers/ufw_appinfo.py","lines_changed":153}]},"message":"update schema and add normalized fields"},{"commit":"0152e0665f87833250561d743144af35416992f8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":215,"deletions":0,"files":["jc/cli.py","jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":214}]},"message":"initial working ufw-appinfo parser"},{"commit":"0679bcbc560ea3575555d8546afdd4e2474d05d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":31,"deletions":5,"files":["tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json","tests/fixtures/ubuntu-18.04/ufw-numbered.json","tests/fixtures/ubuntu-18.04/ufw-verbose.json","tests/test_ufw.py"],"file_stats":[{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-numbered.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ufw-verbose.json","lines_changed":1},{"name":"tests/test_ufw.py","lines_changed":30}]},"message":"fix ufw tests"},{"commit":"5500648aa0886ea5089856e5b33d7c8ebd78d5b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":46,"deletions":46,"files":["EXAMPLES.md","docs/parsers/ufw.md","jc/parsers/ufw.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":20},{"name":"docs/parsers/ufw.md","lines_changed":36},{"name":"jc/parsers/ufw.py","lines_changed":36}]},"message":"fix ufw docs for int conversions and service behavior"},{"commit":"bb50caad4dfaefa309e747fd05b650186c5a80f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":31,"deletions":4,"files":["jc/parsers/ufw.py","tests/fixtures/ubuntu-18.04/ufw-numbered.out","tests/fixtures/ubuntu-18.04/ufw-verbose.out"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":10},{"name":"tests/fixtures/ubuntu-18.04/ufw-numbered.out","lines_changed":11},{"name":"tests/fixtures/ubuntu-18.04/ufw-verbose.out","lines_changed":14}]},"message":"fix prefix int conversions. don't reset _transport if service is really a list of ports"},{"commit":"7eef5d94d591a3f70f6638b1b30f952a3bf35f9d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":0,"files":["EXAMPLES.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":5},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"ufw doc update"},{"commit":"74f623f8d607c050db8f62ea4996c4e6aae43268","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":43,"deletions":11,"files":["docs/parsers/ufw.md","jc/parsers/ufw.py","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json","tests/fixtures/generic/ufw.out"],"file_stats":[{"name":"docs/parsers/ufw.md","lines_changed":13},{"name":"jc/parsers/ufw.py","lines_changed":25},{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.out","lines_changed":12}]},"message":"add support for rule comments and LIMIT and REJECT actions"},{"commit":"f638aca092475bbae14fed765e90435c093fcb8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add deb package name fix"},{"commit":"da35eaf80ad4f11e7482fc4734db4b2265e50548","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["docs/parsers/ufw.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"formatting"},{"commit":"ade0e8e8fc18ff9a0dd406206a85238f1f5a739d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":107,"deletions":0,"files":["tests/fixtures/generic/ufw-inactive.json","tests/fixtures/generic/ufw-inactive.out","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw-numbered.out","tests/fixtures/generic/ufw.json","tests/fixtures/generic/ufw.out","tests/test_ufw.py"],"file_stats":[{"name":"tests/fixtures/generic/ufw-inactive.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-inactive.out","lines_changed":1},{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-numbered.out","lines_changed":23},{"name":"tests/fixtures/generic/ufw.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw.out","lines_changed":22},{"name":"tests/test_ufw.py","lines_changed":58}]},"message":"add ufw tests"},{"commit":"90076090f05a1f03e2fbff307418ee18d7d046ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":5,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":12}]},"message":"fix int conversions if 'rules' key does not exist"},{"commit":"23635def8b654097178f73ed1b57fc50965142d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":306,"deletions":4,"files":["README.md","docs/parsers/ping.md","docs/parsers/ufw.md","docs/utils.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"docs/parsers/ping.md","lines_changed":1},{"name":"docs/parsers/ufw.md","lines_changed":302},{"name":"docs/utils.md","lines_changed":4},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add ufw to docs"},{"commit":"4eeec087bde98f90ab8425473d1fbeee6834852e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":115,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":115}]},"message":"add ufw example"},{"commit":"733196103897a1d84d242324ddcf96e783320329","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":4}]},"message":"update docs with new examples that have `to_service` always existing."},{"commit":"e4acb3d5b70a7d75741ef3e35cd6750d1362a80f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":4}]},"message":"always make to/from_service None if ports are assigned"},{"commit":"c60549a9947d5684bbfa58223bfbcfc40a3ed479","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":29,"deletions":29,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":58}]},"message":"change field name from to/from_subnet to to/from_ip_prefix"},{"commit":"d46fc8bbfa15a80a1af6c64f70230f858c215223","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":9}]},"message":"set to/from_transport to None if to/from_service is set"},{"commit":"b133d1f90d49362594508d8c475663754f0e7675","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":6}]},"message":"strip interface value"},{"commit":"5be615a97e7c145c8351764234ac591028560c34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":219,"deletions":9,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":228}]},"message":"add examples for docs"},{"commit":"ea1d820f96321ddf4084b54ee2fdf397295beb21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":11}]},"message":"convert integer fields"},{"commit":"47e262cf7200b02ff0af97a70ffa6bec286c8f39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":59,"deletions":14,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":73}]},"message":"clean up fields"},{"commit":"eec673be9092e382694aa02682564510ce4e7f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":88,"deletions":3,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":91}]},"message":"working raw parser"},{"commit":"9a0fb2a7c87e6fde0cc0d84fa8a1f131e28ea732","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":157,"deletions":0,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":157}]},"message":"parse major sections"},{"commit":"b5145d6c14d7a51e7cfdebe126c9689dc90f7b27","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":8,"deletions":4,"files":["CHANGELOG","jc/__init__.py","jc/cli.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":6},{"name":"jc/cli.py","lines_changed":1},{"name":"setup.py","lines_changed":2}]},"message":"version bump to v1.15.3"},{"commit":"9747ca414dfb8218389c7b2199a080edabc2a184","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":11}]},"message":"minor optimization to convert_to_int(). No longer runs through convert_to_float(), but uses standard float() function."},{"commit":"312d465b61a15592cc70d3734ad747b9a2be10ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":2}]},"message":"update link"},{"commit":"7dcf87d24ad40eba6ba98de2b4b2bf177a76cd71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":1}]},"message":"formatting"},{"commit":"cf3cfd16a9de05f30303b5952fbe609cde842d2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":6}]},"message":"rename tests"},{"commit":"fcc7e5294973d1a18943fa2ce2e836b0fe757d95","merge":"6c83846 3ab9d48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #123 from kellyjonbrazil/dev\n\nDev v1.15.2"},{"commit":"3ab9d480149a692510ab9e0ac8e745b674683e3d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"update changelog"},{"commit":"7eddf41c5f6310264359cd6d78bdfa4b65af7d06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":96,"deletions":9,"files":["jc/man/jc.1.gz","jc/utils.py","man/jc.1.gz","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/df.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/free-h.json","tests/test_utils.py"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/utils.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null},{"name":"tests/fixtures/centos-7.7/df-h.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/df.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/free-h.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/df-h.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/df-h.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/free-h.json","lines_changed":2},{"name":"tests/test_utils.py","lines_changed":89}]},"message":"dont round up int conversions and fix tests"},{"commit":"27a196c93862bd737603cfe402b35529eb412954","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update"},{"commit":"e4324f05fb6f89c34fa1567e70d8636457623edb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":14,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":14},{"name":"jc/parsers/dig.py","lines_changed":14}]},"message":"fix indentation in doc"},{"commit":"d36b332bd78b5bf5979cdc59b31da08d8e4104d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":53,"insertions":196,"deletions":274,"files":["docs/parsers/systemctl_lj.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/wc.md","docs/parsers/who.md","docs/utils.md","jc/parsers/acpi.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/hash.py","jc/parsers/hciconfig.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl_lj.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/utils.py"],"file_stats":[{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":2},{"name":"jc/parsers/acpi.py","lines_changed":21},{"name":"jc/parsers/airport_s.py","lines_changed":9},{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/blkid.py","lines_changed":4},{"name":"jc/parsers/cksum.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":4},{"name":"jc/parsers/dir.py","lines_changed":4},{"name":"jc/parsers/dmidecode.py","lines_changed":4},{"name":"jc/parsers/du.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":4},{"name":"jc/parsers/fstab.py","lines_changed":4},{"name":"jc/parsers/group.py","lines_changed":4},{"name":"jc/parsers/hash.py","lines_changed":4},{"name":"jc/parsers/hciconfig.py","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":4},{"name":"jc/parsers/iptables.py","lines_changed":4},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4},{"name":"jc/parsers/lsblk.py","lines_changed":13},{"name":"jc/parsers/lsmod.py","lines_changed":4},{"name":"jc/parsers/lsof.py","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":16},{"name":"jc/parsers/ntpq.py","lines_changed":10},{"name":"jc/parsers/passwd.py","lines_changed":4},{"name":"jc/parsers/ps.py","lines_changed":13},{"name":"jc/parsers/route.py","lines_changed":4},{"name":"jc/parsers/rpm_qi.py","lines_changed":4},{"name":"jc/parsers/shadow.py","lines_changed":4},{"name":"jc/parsers/ss.py","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"jc/parsers/systemctl_lj.py","lines_changed":13},{"name":"jc/parsers/systeminfo.py","lines_changed":6},{"name":"jc/parsers/time.py","lines_changed":32},{"name":"jc/parsers/timedatectl.py","lines_changed":8},{"name":"jc/parsers/tracepath.py","lines_changed":42},{"name":"jc/parsers/traceroute.py","lines_changed":40},{"name":"jc/parsers/upower.py","lines_changed":24},{"name":"jc/parsers/uptime.py","lines_changed":39},{"name":"jc/parsers/w.py","lines_changed":4},{"name":"jc/parsers/wc.py","lines_changed":12},{"name":"jc/parsers/who.py","lines_changed":12},{"name":"jc/utils.py","lines_changed":36}]},"message":"use jc.utils for conversions"},{"commit":"1f034826f69c461495f7a302cc8fe35e3052e72f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":42,"insertions":94,"deletions":185,"files":["docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","tests/fixtures/centos-7.7/ls-alh.json","tests/fixtures/centos-7.7/lsof-sudo.json","tests/fixtures/centos-7.7/lsof.json","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/ubuntu-18.04/ls-alh.json","tests/fixtures/ubuntu-18.04/lsof-sudo.json","tests/fixtures/ubuntu-18.04/lsof.json"],"file_stats":[{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":3},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":10},{"name":"jc/parsers/jobs.py","lines_changed":8},{"name":"jc/parsers/last.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":9},{"name":"jc/parsers/lsblk.py","lines_changed":14},{"name":"jc/parsers/lsmod.py","lines_changed":9},{"name":"jc/parsers/lsof.py","lines_changed":10},{"name":"jc/parsers/netstat.py","lines_changed":37},{"name":"jc/parsers/ntpq.py","lines_changed":12},{"name":"jc/parsers/passwd.py","lines_changed":8},{"name":"jc/parsers/ping.py","lines_changed":34},{"name":"jc/parsers/ps.py","lines_changed":15},{"name":"jc/parsers/route.py","lines_changed":8},{"name":"jc/parsers/rpm_qi.py","lines_changed":9},{"name":"jc/parsers/shadow.py","lines_changed":8},{"name":"jc/parsers/ss.py","lines_changed":22},{"name":"jc/parsers/stat.py","lines_changed":11},{"name":"tests/fixtures/centos-7.7/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/lsof-sudo.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/lsof.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/lsof-sudo.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/lsof.json","lines_changed":2}]},"message":"use jc.utils for conversions"},{"commit":"246c707c98d3128b4e38f5c4b23a1e0ceedc0b0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":46,"insertions":190,"deletions":196,"files":["CHANGELOG","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/df.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/hash.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/utils.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/hash.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/utils.py","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/osx-10.11.6/df-h.json","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/free-h.json"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":48},{"name":"jc/parsers/acpi.py","lines_changed":22},{"name":"jc/parsers/airport.py","lines_changed":7},{"name":"jc/parsers/airport_s.py","lines_changed":12},{"name":"jc/parsers/arp.py","lines_changed":5},{"name":"jc/parsers/blkid.py","lines_changed":7},{"name":"jc/parsers/cksum.py","lines_changed":8},{"name":"jc/parsers/df.py","lines_changed":14},{"name":"jc/parsers/dig.py","lines_changed":50},{"name":"jc/parsers/dir.py","lines_changed":11},{"name":"jc/parsers/dmidecode.py","lines_changed":8},{"name":"jc/parsers/du.py","lines_changed":8},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":8},{"name":"jc/parsers/fstab.py","lines_changed":8},{"name":"jc/parsers/group.py","lines_changed":8},{"name":"jc/parsers/hash.py","lines_changed":9},{"name":"jc/parsers/hciconfig.py","lines_changed":8},{"name":"jc/parsers/history.py","lines_changed":6},{"name":"jc/parsers/id.py","lines_changed":17},{"name":"jc/parsers/ifconfig.py","lines_changed":11},{"name":"jc/utils.py","lines_changed":62},{"name":"tests/fixtures/centos-7.7/df-h.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/free-h.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/df-h.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/df-h.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/df-h.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/free-h.json","lines_changed":2}]},"message":"use jc.utils conversions"},{"commit":"b5d8968144e76090870f8563dc1bce910fba668c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":19}]},"message":"add convert_to_int function"},{"commit":"f7b9fbefdde6973077573fec02342eb9946789c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add query_size info for dig"},{"commit":"b1fc4533833ca25f59869bfec8ac114bf49c7847","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2}]},"message":"fix _IfconfigParser name"},{"commit":"7581c8d0f4262fc6a05240bb21ffe533b153f6e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":45,"deletions":32,"files":["docs/parsers/dig.md","jc/parsers/dig.py","tests/fixtures/generic/dig-edns3.json"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":74},{"name":"tests/fixtures/generic/dig-edns3.json","lines_changed":2}]},"message":"add query_size field. handle user-specified dig output better - especially when querying dnssec"},{"commit":"32bf8ad6f4fff83fdfd83d66c1ba8f1af5a65a90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":52,"deletions":24,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"EXAMPLES.md","lines_changed":10},{"name":"docs/parsers/dig.md","lines_changed":32},{"name":"jc/parsers/dig.py","lines_changed":32}]},"message":"update dig docs"},{"commit":"b083bcc10fa1105fc09ce8d2c3297aa5575c9d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update man page"},{"commit":"4f6fdd120d23468270c1d7111e4ef71b87759a1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":134,"deletions":100,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":117},{"name":"jc/__init__.py","lines_changed":117}]},"message":"use dig as example"},{"commit":"eb0038be2490053d32803d30e1c3d4d34509d130","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":40,"deletions":19,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":59}]},"message":"update dig examples"},{"commit":"7ecdf819fa37c38ae6159ad8e7bc973ee4f34559","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":84,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":42},{"name":"templates/readme_template","lines_changed":42}]},"message":"remove dig example from readme,"},{"commit":"c6aa4d083550d25bcb621cad524047cfd6a08217","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":252,"deletions":317,"files":["README.md","docs/parsers/dig.md","jc/man/jc.1.gz","jc/parsers/dig.py","man/jc.1.gz","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":84},{"name":"docs/parsers/dig.md","lines_changed":313},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/dig.py","lines_changed":88},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/readme_template","lines_changed":84}]},"message":"update docs with new dig parser examples"},{"commit":"7c584b89a6e6b924d53d50103b97f0c2405c33b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":15,"insertions":352,"deletions":52,"files":["jc/parsers/dig.py","tests/fixtures/generic/dig-additional.json","tests/fixtures/generic/dig-additional.out","tests/fixtures/generic/dig-additional2.json","tests/fixtures/generic/dig-additional2.out","tests/fixtures/generic/dig-additional3.json","tests/fixtures/generic/dig-additional3.out","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/generic/dig-edns.json","tests/fixtures/generic/dig-edns.out","tests/fixtures/generic/dig-edns2.json","tests/fixtures/generic/dig-edns2.out","tests/fixtures/generic/dig-edns3.json","tests/fixtures/generic/dig-edns3.out","tests/test_dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":123},{"name":"tests/fixtures/generic/dig-additional.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-additional.out","lines_changed":32},{"name":"tests/fixtures/generic/dig-additional2.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-additional2.out","lines_changed":34},{"name":"tests/fixtures/generic/dig-additional3.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-additional3.out","lines_changed":41},{"name":"tests/fixtures/generic/dig-answer-spaces.json","lines_changed":2},{"name":"tests/fixtures/generic/dig-edns.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-edns.out","lines_changed":20},{"name":"tests/fixtures/generic/dig-edns2.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-edns2.out","lines_changed":38},{"name":"tests/fixtures/generic/dig-edns3.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-edns3.out","lines_changed":34},{"name":"tests/test_dig.py","lines_changed":74}]},"message":"add additional section"},{"commit":"c166c0bfdafa922f57f021fa4d16e467fca02d58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":14,"insertions":55,"deletions":21,"files":["jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":50},{"name":"tests/fixtures/centos-7.7/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig-x.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig.json","lines_changed":2},{"name":"tests/fixtures/generic/dig-answer-spaces.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-x.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig.json","lines_changed":2}]},"message":"add opt_pseudosection section to output and fix existing tests"},{"commit":"a8dd3f7802bfe8fd3ffbedf89af45ddc580ee78d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":54,"deletions":281,"files":["CHANGELOG","jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-axfr.json"],"file_stats":[{"name":"CHANGELOG","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":325},{"name":"tests/fixtures/centos-7.7/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-axfr.json","lines_changed":2}]},"message":"working dig axfr fixes"},{"commit":"3b0e2f03f3b11398ff57b1daed542faaf0b80a62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":24,"deletions":23,"files":["jc/cli.py","templates/manpage_template"],"file_stats":[{"name":"jc/cli.py","lines_changed":21},{"name":"templates/manpage_template","lines_changed":26}]},"message":"clean up examples"},{"commit":"8390ae48c88ab1c7d5acbf40c0e60606953817bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":8,"deletions":8,"files":["jc/parsers/dig.py","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":4},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig.json","lines_changed":2}]},"message":"fix server entry when IPv6 address is in value (maxsplit on colons)"},{"commit":"2db82c0a7e19d596c876ede8a8ff106aaa733ee5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":66,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":66}]},"message":"add systeminfo example"},{"commit":"61479540756704f10853233300ceae8f954a8a95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":0,"files":["tests/test_systeminfo.py","tests/test_utils.py"],"file_stats":[{"name":"tests/test_systeminfo.py","lines_changed":1},{"name":"tests/test_utils.py","lines_changed":4}]},"message":"update tests"},{"commit":"691df271fcfe057ae4b75ad40869e23deb37b886","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":1,"files":["docs/parsers/systeminfo.md","jc/man/jc.1.gz","jc/parsers/systeminfo.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/systeminfo.py","lines_changed":1},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add info docstring"},{"commit":"89f52b95f7055da9d7b5fa8dce0923d4c3435bd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":467,"deletions":821,"files":["README.md","docs/parsers/systeminfo.md","jc/man/jc.1.gz","jc/parsers/systeminfo.py","jc/utils.py","man/jc.1.gz",".../windows/windows-10/systeminfo-hyperv-utc.json",".../windows/windows-10/systeminfo-hyperv-utc.out",".../windows/windows-10/systeminfo-hyperv.json","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-10/systeminfo.out",".../windows/windows-2012r2/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/systeminfo.md","lines_changed":290},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/systeminfo.py","lines_changed":361},{"name":"jc/utils.py","lines_changed":5},{"name":"man/jc.1.gz","lines_changed":null},{"name":".../windows/windows-10/systeminfo-hyperv-utc.json","lines_changed":1},{"name":".../windows/windows-10/systeminfo-hyperv-utc.out","lines_changed":79},{"name":".../windows/windows-10/systeminfo-hyperv.json","lines_changed":112},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":57},{"name":"tests/fixtures/windows/windows-10/systeminfo.out","lines_changed":1},{"name":".../windows/windows-2012r2/systeminfo.json","lines_changed":55},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":326}]},"message":"update systeminfo parser with updated timestamps, normalized blank fields, and new doc style"},{"commit":"146acc1bf69c402e38c2f1bc842b84e6cff7e2cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":29,"files":["jc/parsers/systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":52}]},"message":"rename functions to make them private"},{"commit":"c4a345f59aa090336b4e80f181493cd5bc2c17c5","merge":"dfd2703 325fab2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #106 from jon-rd/j/systeminfo\n\nAdd windows systeminfo command parser"},{"commit":"dfd2703f75b907ba865fff266d0742d8931bc2d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"bump dev to v1.15.2"},{"commit":"325fab2de7b8a4bfc452ab8d3cf333d47fdf4989","author":"Jon Smith","author_email":"jon@rebelliondefense.com","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":10}]},"message":"update documentation for parsed structures"},{"commit":"f3d00cf38ad15aeda7eaa5644ebc30ff33de6a29","author":"Jon Smith","author_email":"jon@rebelliondefense.com","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","stats":{"files_changed":5,"insertions":56,"deletions":48,"files":["jc/parsers/systeminfo.py",".../windows/windows-10/systeminfo-hyperv.json","tests/fixtures/windows/windows-10/systeminfo.json",".../windows/windows-2012r2/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":48},{"name":".../windows/windows-10/systeminfo-hyperv.json","lines_changed":14},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":14},{"name":".../windows/windows-2012r2/systeminfo.json","lines_changed":14},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":14}]},"message":"append mb to memory key names; adjust expected timestamps to utc tz"},{"commit":"14838f7f5d780896f1318cac2c3f34d249a158d4","author":"Jon Smith","author_email":"jon@rebelliondefense.com","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","stats":{"files_changed":9,"insertions":956,"deletions":116,"files":["jc/parsers/systeminfo.py","jc/utils.py",".../windows/windows-10/systeminfo-hyperv.json",".../windows/windows-10/systeminfo-hyperv.out","tests/fixtures/windows/windows-10/systeminfo.json",".../windows/windows-2012r2/systeminfo.json",".../fixtures/windows/windows-2012r2/systeminfo.out","tests/fixtures/windows/windows-7/systeminfo.json","tests/test_systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":357},{"name":"jc/utils.py","lines_changed":1},{"name":".../windows/windows-10/systeminfo-hyperv.json","lines_changed":111},{"name":".../windows/windows-10/systeminfo-hyperv.out","lines_changed":79},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":43},{"name":".../windows/windows-2012r2/systeminfo.json","lines_changed":54},{"name":".../fixtures/windows/windows-2012r2/systeminfo.out","lines_changed":45},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":311},{"name":"tests/test_systeminfo.py","lines_changed":71}]},"message":"update schema with nic, hyperv, and process changes"},{"commit":"af74047b81776c2ea32d82f9145ab60c346c8203","author":"Jon Smith","author_email":"jon@rebelliondefense.com","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":8}]},"message":"update schema based on processor/hotfix changes"},{"commit":"660c59129cf4ba7889fb3c6fbafd9dd9b479ccd9","author":"Jon Smith","author_email":"jon@rebelliondefense.com","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","stats":{"files_changed":3,"insertions":41,"deletions":9,"files":["jc/parsers/systeminfo.py","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":42},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":4},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":4}]},"message":"Add parsing of processors/hotfixs"},{"commit":"89a88e186ed71d84ea802cf08ab756b49cee3225","author":"Jon Smith","author_email":"jon@rebelliondefense.com","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","stats":{"files_changed":1,"insertions":152,"deletions":0,"files":["docs/parsers/systeminfo.md"],"file_stats":[{"name":"docs/parsers/systeminfo.md","lines_changed":152}]},"message":"Add systeminfo.md file"},{"commit":"f861cf95b96a224a0a11f2cdc3261b94c02415ef","author":"Jon Smith","author_email":"jon@rebelliondefense.com","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["jc/cli.py","jc/parsers/systeminfo.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/systeminfo.py","lines_changed":2}]},"message":"Change to v0.5; add parser to cli.py; add to docgen"},{"commit":"ee8f06cbdb03f8254bb6a3c56fa5b8a64ff9ca77","author":"Jon Smith","author_email":"jon@rebelliondefense.com","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","stats":{"files_changed":6,"insertions":688,"deletions":0,"files":["jc/parsers/systeminfo.py","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-10/systeminfo.out","tests/fixtures/windows/windows-7/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.out","tests/test_systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":209},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":35},{"name":"tests/fixtures/windows/windows-10/systeminfo.out","lines_changed":47},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":34},{"name":"tests/fixtures/windows/windows-7/systeminfo.out","lines_changed":298},{"name":"tests/test_systeminfo.py","lines_changed":65}]},"message":"Add windows systeminfo command parser"},{"commit":"a2e8b3c7b681605916b8950d035ee19889a125a5","merge":"e0681ee 6c83846","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #121 from kellyjonbrazil/master\n\nMerge pull request #120 from kellyjonbrazil/dev"},{"commit":"6c838460752c7131f75cdab2da07266fee492060","merge":"10292f7 e0681ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #120 from kellyjonbrazil/dev\n\nDev v1.15.1"},{"commit":"e0681eebb9881dc0ffddb478224455f434919104","merge":"e5732d1 10292f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge branch 'master' into dev"},{"commit":"e5732d1cea1c882f6486cf288e45edb993989ea0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"update changelog"},{"commit":"6e7ae3cd3f003fe9e1e587b7f8ebd16ba0895014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/timedatectl.md","jc/man/jc.1.gz","jc/parsers/timedatectl.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"formatting of timedatectl docs"},{"commit":"f95632d1aaee545ae0ce081ca0617be135c09220","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":83,"deletions":62,"files":["EXAMPLES.md","docs/parsers/rpm_qi.md","jc/man/jc.1.gz","jc/parsers/rpm_qi.py","man/jc.1.gz","tests/fixtures/centos-7.7/rpm-qai.json","tests/fixtures/centos-7.7/rpm-qi-package.json"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":12},{"name":"docs/parsers/rpm_qi.md","lines_changed":62},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/rpm_qi.py","lines_changed":67},{"name":"man/jc.1.gz","lines_changed":null},{"name":"tests/fixtures/centos-7.7/rpm-qai.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rpm-qi-package.json","lines_changed":2}]},"message":"add install_date calculated fields"},{"commit":"2f8b7b26e59bcd745fa1fcadb373455c7d404286","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":2,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update docs for v1.15.1"},{"commit":"10292f7502e4cb1c53b53ed39fed9288044c2ef8","merge":"37a3565 aef5470","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #119 from kellyjonbrazil/dpkg_l-fix\n\nadd _l to module name"},{"commit":"aef54705f5267c633e0778e8dce0065978083139","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["docs/parsers/dpkg_l.md"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":4}]},"message":"add _l to module name"},{"commit":"bba5980fa53767716bc35d8c904e7a2341346eeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"man page update"},{"commit":"977425abfb05a63ee372df36124ac6ba6a5a0aaa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"jc/parsers/dpkg_l.py","lines_changed":4}]},"message":"add _l to package name in docs"},{"commit":"37a3565a1bbd3d01663602673fed651509e69d8c","merge":"bdcdaee 13deb8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #118 from kellyjonbrazil/rpm-qi-doc-fix\n\nfix rpm-qi docs"},{"commit":"13deb8bfb6e77aaf86942f0be87b59d06ee2a97c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":194,"files":["docs/parsers/rpm_qai.md","docs/parsers/rpm_qi.md"],"file_stats":[{"name":"docs/parsers/rpm_qai.md","lines_changed":191},{"name":"docs/parsers/rpm_qi.md","lines_changed":6}]},"message":"fix rpm-qi docs"},{"commit":"a3ed9d075aff41599452c3094f7d057c25fc8f89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":191,"files":["docs/parsers/rpm_qai.md"],"file_stats":[{"name":"docs/parsers/rpm_qai.md","lines_changed":191}]},"message":"remove old parser doc"},{"commit":"fb0ced549e021916dee7da39859e8f85c8216e16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":6,"deletions":6,"files":["docs/parsers/rpm_qi.md","jc/man/jc.1.gz","jc/parsers/rpm_qi.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/rpm_qi.md","lines_changed":6},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/rpm_qi.py","lines_changed":6},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"fix rpm-qi docs (used underscore instead of dash in name)"},{"commit":"7eb31bc7d290fcd09e53524ebbb11e59110df6a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":39,"deletions":48,"files":["docs/parsers/airport_s.md","jc/man/jc.1.gz","jc/parsers/airport_s.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/airport_s.md","lines_changed":49},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/airport_s.py","lines_changed":38},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update airport_s docs"},{"commit":"6a06a3914273853742ac57433398968ccf7d9897","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":12}]},"message":"use herestring instead of echo -e into jq"},{"commit":"bdcdaee6c5299ea0750512e0943c7f58f56f2e35","merge":"5d8f836 605353f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #117 from kellyjonbrazil/doc_update\n\nadd new docs"},{"commit":"605353fdce3b8b5986d20a35d05f7210a6df0730","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":70,"insertions":1710,"deletions":2656,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":99},{"name":"docs/parsers/airport.md","lines_changed":61},{"name":"docs/parsers/airport_s.md","lines_changed":9},{"name":"docs/parsers/arp.md","lines_changed":51},{"name":"docs/parsers/blkid.md","lines_changed":93},{"name":"docs/parsers/cksum.md","lines_changed":41},{"name":"docs/parsers/crontab.md","lines_changed":84},{"name":"docs/parsers/crontab_u.md","lines_changed":88},{"name":"docs/parsers/csv.md","lines_changed":41},{"name":"docs/parsers/date.md","lines_changed":68},{"name":"docs/parsers/df.md","lines_changed":59},{"name":"docs/parsers/dig.md","lines_changed":133},{"name":"docs/parsers/dir.md","lines_changed":49},{"name":"docs/parsers/dmidecode.md","lines_changed":55},{"name":"docs/parsers/dpkg_l.md","lines_changed":51},{"name":"docs/parsers/du.md","lines_changed":39},{"name":"docs/parsers/env.md","lines_changed":39},{"name":"docs/parsers/file.md","lines_changed":39},{"name":"docs/parsers/finger.md","lines_changed":57},{"name":"docs/parsers/free.md","lines_changed":49},{"name":"docs/parsers/fstab.md","lines_changed":47},{"name":"docs/parsers/group.md","lines_changed":47},{"name":"docs/parsers/gshadow.md","lines_changed":51},{"name":"docs/parsers/hash.md","lines_changed":39},{"name":"docs/parsers/hashsum.md","lines_changed":39},{"name":"docs/parsers/hciconfig.md","lines_changed":123},{"name":"docs/parsers/history.md","lines_changed":39},{"name":"docs/parsers/hosts.md","lines_changed":43},{"name":"docs/parsers/id.md","lines_changed":79},{"name":"docs/parsers/ifconfig.md","lines_changed":97},{"name":"docs/parsers/ini.md","lines_changed":44},{"name":"docs/parsers/iptables.md","lines_changed":67},{"name":"docs/parsers/iw_scan.md","lines_changed":40},{"name":"docs/parsers/jobs.md","lines_changed":45},{"name":"docs/parsers/kv.md","lines_changed":17},{"name":"docs/parsers/last.md","lines_changed":53},{"name":"docs/parsers/ls.md","lines_changed":118},{"name":"docs/parsers/lsblk.md","lines_changed":115},{"name":"docs/parsers/lsmod.md","lines_changed":47},{"name":"docs/parsers/lsof.md","lines_changed":55},{"name":"docs/parsers/mount.md","lines_changed":47},{"name":"docs/parsers/netstat.md","lines_changed":223},{"name":"docs/parsers/ntpq.md","lines_changed":58},{"name":"docs/parsers/passwd.md","lines_changed":49},{"name":"docs/parsers/ping.md","lines_changed":81},{"name":"docs/parsers/pip_list.md","lines_changed":41},{"name":"docs/parsers/pip_show.md","lines_changed":56},{"name":"docs/parsers/ps.md","lines_changed":69},{"name":"docs/parsers/route.md","lines_changed":63},{"name":"docs/parsers/rpm_qi.md","lines_changed":77},{"name":"docs/parsers/shadow.md","lines_changed":51},{"name":"docs/parsers/ss.md","lines_changed":73},{"name":"docs/parsers/stat.md","lines_changed":97},{"name":"docs/parsers/sysctl.md","lines_changed":37},{"name":"docs/parsers/systemctl.md","lines_changed":45},{"name":"docs/parsers/systemctl_lj.md","lines_changed":44},{"name":"docs/parsers/systemctl_ls.md","lines_changed":41},{"name":"docs/parsers/systemctl_luf.md","lines_changed":39},{"name":"docs/parsers/time.md","lines_changed":105},{"name":"docs/parsers/timedatectl.md","lines_changed":53},{"name":"docs/parsers/tracepath.md","lines_changed":60},{"name":"docs/parsers/traceroute.md","lines_changed":69},{"name":"docs/parsers/uname.md","lines_changed":47},{"name":"docs/parsers/upower.md","lines_changed":145},{"name":"docs/parsers/uptime.md","lines_changed":57},{"name":"docs/parsers/w.md","lines_changed":51},{"name":"docs/parsers/wc.md","lines_changed":43},{"name":"docs/parsers/who.md","lines_changed":55},{"name":"docs/parsers/xml.md","lines_changed":38},{"name":"docs/parsers/yaml.md","lines_changed":42}]},"message":"add new docs"},{"commit":"490c9e17699e8e4f70dcc1612e1a808f86e24b0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":8}]},"message":"add more cli tests for magic command"},{"commit":"6ebebb659dc93daeaa869752ad135f6e1d2cb1ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"update changelog"},{"commit":"0e70c5ee12e96f04a89de05153a2da9cd39f98ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update documentation link"},{"commit":"cd531acf6045660e022c932f62a01d4084433ad4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":1}]},"message":"clean up comment"},{"commit":"908ac1f61c5cc011d05d550f933940dfed4431f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":143,"insertions":0,"deletions":690,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/man/jc.1.gz","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":4},{"name":"docs/parsers/airport.md","lines_changed":4},{"name":"docs/parsers/airport_s.md","lines_changed":4},{"name":"docs/parsers/arp.md","lines_changed":4},{"name":"docs/parsers/blkid.md","lines_changed":4},{"name":"docs/parsers/cksum.md","lines_changed":4},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"docs/parsers/crontab_u.md","lines_changed":4},{"name":"docs/parsers/csv.md","lines_changed":4},{"name":"docs/parsers/date.md","lines_changed":4},{"name":"docs/parsers/df.md","lines_changed":4},{"name":"docs/parsers/dig.md","lines_changed":4},{"name":"docs/parsers/dir.md","lines_changed":4},{"name":"docs/parsers/dmidecode.md","lines_changed":4},{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"docs/parsers/du.md","lines_changed":4},{"name":"docs/parsers/env.md","lines_changed":4},{"name":"docs/parsers/file.md","lines_changed":4},{"name":"docs/parsers/finger.md","lines_changed":4},{"name":"docs/parsers/free.md","lines_changed":4},{"name":"docs/parsers/fstab.md","lines_changed":4},{"name":"docs/parsers/group.md","lines_changed":4},{"name":"docs/parsers/gshadow.md","lines_changed":4},{"name":"docs/parsers/hash.md","lines_changed":4},{"name":"docs/parsers/hashsum.md","lines_changed":4},{"name":"docs/parsers/hciconfig.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":4},{"name":"docs/parsers/hosts.md","lines_changed":4},{"name":"docs/parsers/id.md","lines_changed":4},{"name":"docs/parsers/ifconfig.md","lines_changed":4},{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"docs/parsers/iptables.md","lines_changed":4},{"name":"docs/parsers/iw_scan.md","lines_changed":4},{"name":"docs/parsers/jobs.md","lines_changed":4},{"name":"docs/parsers/kv.md","lines_changed":4},{"name":"docs/parsers/last.md","lines_changed":4},{"name":"docs/parsers/ls.md","lines_changed":67},{"name":"docs/parsers/lsblk.md","lines_changed":4},{"name":"docs/parsers/lsmod.md","lines_changed":4},{"name":"docs/parsers/lsof.md","lines_changed":4},{"name":"docs/parsers/mount.md","lines_changed":4},{"name":"docs/parsers/netstat.md","lines_changed":4},{"name":"docs/parsers/ntpq.md","lines_changed":4},{"name":"docs/parsers/passwd.md","lines_changed":4},{"name":"docs/parsers/ping.md","lines_changed":4},{"name":"docs/parsers/pip_list.md","lines_changed":4},{"name":"docs/parsers/pip_show.md","lines_changed":4},{"name":"docs/parsers/ps.md","lines_changed":4},{"name":"docs/parsers/route.md","lines_changed":4},{"name":"docs/parsers/rpm_qi.md","lines_changed":4},{"name":"docs/parsers/shadow.md","lines_changed":4},{"name":"docs/parsers/ss.md","lines_changed":4},{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"docs/parsers/sysctl.md","lines_changed":4},{"name":"docs/parsers/systemctl.md","lines_changed":4},{"name":"docs/parsers/systemctl_lj.md","lines_changed":4},{"name":"docs/parsers/systemctl_ls.md","lines_changed":4},{"name":"docs/parsers/systemctl_luf.md","lines_changed":4},{"name":"docs/parsers/time.md","lines_changed":4},{"name":"docs/parsers/timedatectl.md","lines_changed":4},{"name":"docs/parsers/tracepath.md","lines_changed":4},{"name":"docs/parsers/traceroute.md","lines_changed":4},{"name":"docs/parsers/uname.md","lines_changed":4},{"name":"docs/parsers/upower.md","lines_changed":4},{"name":"docs/parsers/uptime.md","lines_changed":4},{"name":"docs/parsers/w.md","lines_changed":4},{"name":"docs/parsers/wc.md","lines_changed":4},{"name":"docs/parsers/who.md","lines_changed":4},{"name":"docs/parsers/xml.md","lines_changed":4},{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/acpi.py","lines_changed":4},{"name":"jc/parsers/airport.py","lines_changed":4},{"name":"jc/parsers/airport_s.py","lines_changed":4},{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/blkid.py","lines_changed":4},{"name":"jc/parsers/cksum.py","lines_changed":4},{"name":"jc/parsers/crontab.py","lines_changed":4},{"name":"jc/parsers/crontab_u.py","lines_changed":4},{"name":"jc/parsers/csv.py","lines_changed":4},{"name":"jc/parsers/date.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":4},{"name":"jc/parsers/dir.py","lines_changed":4},{"name":"jc/parsers/dmidecode.py","lines_changed":4},{"name":"jc/parsers/dpkg_l.py","lines_changed":4},{"name":"jc/parsers/du.py","lines_changed":4},{"name":"jc/parsers/env.py","lines_changed":4},{"name":"jc/parsers/file.py","lines_changed":4},{"name":"jc/parsers/finger.py","lines_changed":4},{"name":"jc/parsers/foo.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":4},{"name":"jc/parsers/fstab.py","lines_changed":4},{"name":"jc/parsers/group.py","lines_changed":4},{"name":"jc/parsers/gshadow.py","lines_changed":4},{"name":"jc/parsers/hash.py","lines_changed":4},{"name":"jc/parsers/hashsum.py","lines_changed":4},{"name":"jc/parsers/hciconfig.py","lines_changed":4},{"name":"jc/parsers/history.py","lines_changed":4},{"name":"jc/parsers/hosts.py","lines_changed":4},{"name":"jc/parsers/id.py","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":4},{"name":"jc/parsers/ini.py","lines_changed":4},{"name":"jc/parsers/iptables.py","lines_changed":4},{"name":"jc/parsers/iw_scan.py","lines_changed":4},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/kv.py","lines_changed":4},{"name":"jc/parsers/last.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":67},{"name":"jc/parsers/lsblk.py","lines_changed":4},{"name":"jc/parsers/lsmod.py","lines_changed":4},{"name":"jc/parsers/lsof.py","lines_changed":4},{"name":"jc/parsers/mount.py","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":4},{"name":"jc/parsers/ntpq.py","lines_changed":4},{"name":"jc/parsers/passwd.py","lines_changed":4},{"name":"jc/parsers/ping.py","lines_changed":4},{"name":"jc/parsers/pip_list.py","lines_changed":4},{"name":"jc/parsers/pip_show.py","lines_changed":4},{"name":"jc/parsers/ps.py","lines_changed":4},{"name":"jc/parsers/route.py","lines_changed":4},{"name":"jc/parsers/rpm_qi.py","lines_changed":4},{"name":"jc/parsers/shadow.py","lines_changed":4},{"name":"jc/parsers/ss.py","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"jc/parsers/sysctl.py","lines_changed":4},{"name":"jc/parsers/systemctl.py","lines_changed":4},{"name":"jc/parsers/systemctl_lj.py","lines_changed":4},{"name":"jc/parsers/systemctl_ls.py","lines_changed":4},{"name":"jc/parsers/systemctl_luf.py","lines_changed":4},{"name":"jc/parsers/time.py","lines_changed":4},{"name":"jc/parsers/timedatectl.py","lines_changed":4},{"name":"jc/parsers/tracepath.py","lines_changed":4},{"name":"jc/parsers/traceroute.py","lines_changed":4},{"name":"jc/parsers/uname.py","lines_changed":4},{"name":"jc/parsers/upower.py","lines_changed":4},{"name":"jc/parsers/uptime.py","lines_changed":4},{"name":"jc/parsers/w.py","lines_changed":4},{"name":"jc/parsers/wc.py","lines_changed":4},{"name":"jc/parsers/who.py","lines_changed":4},{"name":"jc/parsers/xml.py","lines_changed":4},{"name":"jc/parsers/yaml.py","lines_changed":4},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update docs - remove compatibility section since it is now automatically generated from info()"},{"commit":"f5c7e7e4046bc57b4fcad99390e31b121a7106ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":70,"insertions":350,"deletions":0,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":5},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5}]},"message":"add updated docs with home link and parser info at the bottom"},{"commit":"001c700b5bd280cb1cb9e54169ae5f1b7918c257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":2,"deletions":1,"files":["docgen.sh","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docgen.sh","lines_changed":3},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add home link to the top of the md file"},{"commit":"9b41e9bef0ff099e70f37fddc8fe2c6bd8457b19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":1}]},"message":"Add parser information header"},{"commit":"34bd6e32dc0c0bf7dfeedaadbf04115f43e9d060","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":4,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":24}]},"message":"pull each parser as a json object into a bash array and iterate on it to add supplementary information like version, author, and compatibility"},{"commit":"c5d058490beaa8f59875a8acfd7a400764768639","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":22,"deletions":13,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":35}]},"message":"move parser doc printing to its own function"},{"commit":"dd1ae6d9a7de5421830232deb42d933b9a652672","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":3,"deletions":1,"files":["MANIFEST.in","jc/man/jc.1.gz","man/jc.1.gz","mangen.py"],"file_stats":[{"name":"MANIFEST.in","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"mangen.py","lines_changed":2}]},"message":"add man page inside the pypi package for easier packaging in homebrew"},{"commit":"d8ea9bde823a7f5c146741150c3211737345c7dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":16,"deletions":16,"files":["docs/parsers/w.md","jc/parsers/w.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/w.md","lines_changed":16},{"name":"jc/parsers/w.py","lines_changed":16},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update"},{"commit":"125edc9c906dc3650b6a683ed13830075acb7ab6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"bail out for -h, -a, and -v in magic()"},{"commit":"15ea43e394a9004f8ccec208b3a066c76e241866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["MANIFEST.in"],"file_stats":[{"name":"MANIFEST.in","lines_changed":1}]},"message":"add man file to package for easier packaging in homebrew"},{"commit":"b55b02687c00d1c50e30f30c9b9a7f36f783eb0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":19,"insertions":371,"deletions":441,"files":["CHANGELOG","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","man/jc.1.gz","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":6},{"name":"docs/parsers/uname.md","lines_changed":42},{"name":"docs/parsers/upower.md","lines_changed":140},{"name":"docs/parsers/uptime.md","lines_changed":52},{"name":"docs/parsers/w.md","lines_changed":46},{"name":"docs/parsers/wc.md","lines_changed":38},{"name":"docs/parsers/who.md","lines_changed":50},{"name":"docs/parsers/xml.md","lines_changed":33},{"name":"docs/parsers/yaml.md","lines_changed":37},{"name":"jc/parsers/uname.py","lines_changed":33},{"name":"jc/parsers/upower.py","lines_changed":131},{"name":"jc/parsers/uptime.py","lines_changed":43},{"name":"jc/parsers/w.py","lines_changed":37},{"name":"jc/parsers/wc.py","lines_changed":29},{"name":"jc/parsers/who.py","lines_changed":41},{"name":"jc/parsers/xml.py","lines_changed":24},{"name":"jc/parsers/yaml.py","lines_changed":28},{"name":"man/jc.1.gz","lines_changed":null},{"name":"setup.py","lines_changed":2}]},"message":"doc update"},{"commit":"da611f0ac6321f7f52fdbc419f8b155c74393c28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":63,"deletions":50,"files":["jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","man/jc.1.gz"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":30},{"name":"jc/parsers/iptables.py","lines_changed":53},{"name":"jc/parsers/iw_scan.py","lines_changed":30},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update docs"},{"commit":"b8b8dfead4fdc4285585c44c2ebce3bdd42b2e7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":61,"insertions":1501,"deletions":1848,"files":["docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":39},{"name":"docs/parsers/iptables.md","lines_changed":62},{"name":"docs/parsers/iw_scan.md","lines_changed":35},{"name":"docs/parsers/jobs.md","lines_changed":40},{"name":"docs/parsers/kv.md","lines_changed":12},{"name":"docs/parsers/last.md","lines_changed":48},{"name":"docs/parsers/ls.md","lines_changed":50},{"name":"docs/parsers/lsblk.md","lines_changed":110},{"name":"docs/parsers/lsmod.md","lines_changed":42},{"name":"docs/parsers/lsof.md","lines_changed":50},{"name":"docs/parsers/mount.md","lines_changed":42},{"name":"docs/parsers/netstat.md","lines_changed":218},{"name":"docs/parsers/ntpq.md","lines_changed":53},{"name":"docs/parsers/passwd.md","lines_changed":44},{"name":"docs/parsers/ping.md","lines_changed":76},{"name":"docs/parsers/pip_list.md","lines_changed":36},{"name":"docs/parsers/pip_show.md","lines_changed":51},{"name":"docs/parsers/ps.md","lines_changed":64},{"name":"docs/parsers/route.md","lines_changed":58},{"name":"docs/parsers/rpm_qi.md","lines_changed":72},{"name":"docs/parsers/shadow.md","lines_changed":46},{"name":"docs/parsers/ss.md","lines_changed":66},{"name":"docs/parsers/stat.md","lines_changed":92},{"name":"docs/parsers/sysctl.md","lines_changed":32},{"name":"docs/parsers/systemctl.md","lines_changed":40},{"name":"docs/parsers/systemctl_lj.md","lines_changed":39},{"name":"docs/parsers/systemctl_ls.md","lines_changed":36},{"name":"docs/parsers/systemctl_luf.md","lines_changed":34},{"name":"docs/parsers/time.md","lines_changed":100},{"name":"docs/parsers/timedatectl.md","lines_changed":48},{"name":"docs/parsers/tracepath.md","lines_changed":55},{"name":"docs/parsers/traceroute.md","lines_changed":64},{"name":"jc/parsers/jobs.py","lines_changed":31},{"name":"jc/parsers/kv.py","lines_changed":13},{"name":"jc/parsers/last.py","lines_changed":39},{"name":"jc/parsers/ls.py","lines_changed":41},{"name":"jc/parsers/lsblk.py","lines_changed":101},{"name":"jc/parsers/lsmod.py","lines_changed":33},{"name":"jc/parsers/lsof.py","lines_changed":41},{"name":"jc/parsers/mount.py","lines_changed":41},{"name":"jc/parsers/netstat.py","lines_changed":209},{"name":"jc/parsers/ntpq.py","lines_changed":44},{"name":"jc/parsers/passwd.py","lines_changed":35},{"name":"jc/parsers/ping.py","lines_changed":75},{"name":"jc/parsers/pip_list.py","lines_changed":27},{"name":"jc/parsers/pip_show.py","lines_changed":42},{"name":"jc/parsers/ps.py","lines_changed":55},{"name":"jc/parsers/route.py","lines_changed":49},{"name":"jc/parsers/rpm_qi.py","lines_changed":63},{"name":"jc/parsers/shadow.py","lines_changed":37},{"name":"jc/parsers/ss.py","lines_changed":59},{"name":"jc/parsers/stat.py","lines_changed":83},{"name":"jc/parsers/sysctl.py","lines_changed":23},{"name":"jc/parsers/systemctl.py","lines_changed":31},{"name":"jc/parsers/systemctl_lj.py","lines_changed":30},{"name":"jc/parsers/systemctl_ls.py","lines_changed":27},{"name":"jc/parsers/systemctl_luf.py","lines_changed":25},{"name":"jc/parsers/time.py","lines_changed":91},{"name":"jc/parsers/timedatectl.py","lines_changed":39},{"name":"jc/parsers/tracepath.py","lines_changed":46},{"name":"jc/parsers/traceroute.py","lines_changed":65}]},"message":"update docs"},{"commit":"4290a3cbd135cacbf63664dc30768017ebbed28d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":9,"files":["docs/parsers/ifconfig.md","jc/parsers/ifconfig.py"],"file_stats":[{"name":"docs/parsers/ifconfig.md","lines_changed":6},{"name":"jc/parsers/ifconfig.py","lines_changed":6}]},"message":"make IfconfigParser class private"},{"commit":"a5e2203cee6a7bc398cf280f57d37638eeb1d2d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":2,"deletions":1,"files":["docs/parsers/ifconfig.md","jc/parsers/ifconfig.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":1},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update ifconfig doc"},{"commit":"e28c08b1361161cfd123b9ebc11fa1ffa87d658f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":46,"insertions":976,"deletions":1209,"files":["docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/csv.md","lines_changed":36},{"name":"docs/parsers/date.md","lines_changed":63},{"name":"docs/parsers/df.md","lines_changed":54},{"name":"docs/parsers/dig.md","lines_changed":128},{"name":"docs/parsers/dir.md","lines_changed":44},{"name":"docs/parsers/dmidecode.md","lines_changed":50},{"name":"docs/parsers/dpkg_l.md","lines_changed":46},{"name":"docs/parsers/du.md","lines_changed":34},{"name":"docs/parsers/env.md","lines_changed":34},{"name":"docs/parsers/file.md","lines_changed":34},{"name":"docs/parsers/finger.md","lines_changed":52},{"name":"docs/parsers/free.md","lines_changed":44},{"name":"docs/parsers/fstab.md","lines_changed":42},{"name":"docs/parsers/group.md","lines_changed":42},{"name":"docs/parsers/gshadow.md","lines_changed":46},{"name":"docs/parsers/hash.md","lines_changed":34},{"name":"docs/parsers/hashsum.md","lines_changed":34},{"name":"docs/parsers/hciconfig.md","lines_changed":118},{"name":"docs/parsers/history.md","lines_changed":34},{"name":"docs/parsers/hosts.md","lines_changed":38},{"name":"docs/parsers/id.md","lines_changed":74},{"name":"docs/parsers/ifconfig.md","lines_changed":86},{"name":"jc/parsers/csv.py","lines_changed":27},{"name":"jc/parsers/date.py","lines_changed":54},{"name":"jc/parsers/df.py","lines_changed":45},{"name":"jc/parsers/dig.py","lines_changed":143},{"name":"jc/parsers/dir.py","lines_changed":35},{"name":"jc/parsers/dmidecode.py","lines_changed":41},{"name":"jc/parsers/dpkg_l.py","lines_changed":37},{"name":"jc/parsers/du.py","lines_changed":25},{"name":"jc/parsers/env.py","lines_changed":25},{"name":"jc/parsers/file.py","lines_changed":25},{"name":"jc/parsers/finger.py","lines_changed":43},{"name":"jc/parsers/foo.py","lines_changed":25},{"name":"jc/parsers/free.py","lines_changed":35},{"name":"jc/parsers/fstab.py","lines_changed":33},{"name":"jc/parsers/group.py","lines_changed":33},{"name":"jc/parsers/gshadow.py","lines_changed":37},{"name":"jc/parsers/hash.py","lines_changed":25},{"name":"jc/parsers/hashsum.py","lines_changed":25},{"name":"jc/parsers/hciconfig.py","lines_changed":109},{"name":"jc/parsers/history.py","lines_changed":25},{"name":"jc/parsers/hosts.py","lines_changed":29},{"name":"jc/parsers/id.py","lines_changed":65},{"name":"jc/parsers/ifconfig.py","lines_changed":77},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update documentation"},{"commit":"a4b6846f63b43168085275d73940265940badf46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":467,"files":["man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"man/jc.1","lines_changed":467},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"man update"},{"commit":"2bc830786114fd57619f34b936dcf6e0bed7a109","merge":"9b39917 5d8f836","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'master' into dev\n\n# Conflicts:\n# man/jc.1"},{"commit":"9b39917c798ed0310c9b82d87172cbf6d24ba111","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":17,"insertions":391,"deletions":453,"files":["README.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","jc/cli.py","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/acpi.md","lines_changed":94},{"name":"docs/parsers/airport.md","lines_changed":56},{"name":"docs/parsers/blkid.md","lines_changed":88},{"name":"docs/parsers/cksum.md","lines_changed":36},{"name":"docs/parsers/crontab.md","lines_changed":79},{"name":"docs/parsers/crontab_u.md","lines_changed":83},{"name":"jc/cli.py","lines_changed":6},{"name":"jc/parsers/acpi.py","lines_changed":85},{"name":"jc/parsers/airport.py","lines_changed":47},{"name":"jc/parsers/blkid.py","lines_changed":79},{"name":"jc/parsers/cksum.py","lines_changed":27},{"name":"jc/parsers/crontab.py","lines_changed":70},{"name":"jc/parsers/crontab_u.py","lines_changed":74},{"name":"man/jc.1","lines_changed":8},{"name":"templates/manpage_template","lines_changed":8},{"name":"templates/readme_template","lines_changed":2}]},"message":"update docstrings for new help functionality"},{"commit":"57c13cc0a38ad89fda8b0e362bd6487257d0a26a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":26}]},"message":"add support for parser help"},{"commit":"b7355fd30d992a1bcc90227f5a1b02be073829e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":37,"deletions":48,"files":["docs/parsers/arp.md","jc/parsers/arp.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":46},{"name":"jc/parsers/arp.py","lines_changed":39}]},"message":"new docstring format for improved documentation"},{"commit":"93ae309e407b26820b9f05b5b331d05fc77df57f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/__init__.py","man/jc.1"],"file_stats":[{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"bump version to 1.15.1"},{"commit":"5d8f8365e24a7c3a587d4e71ebba4876de08203b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":461,"files":["man/jc.1","man/jc.1.gz","mangen.py"],"file_stats":[{"name":"man/jc.1","lines_changed":461},{"name":"man/jc.1.gz","lines_changed":null},{"name":"mangen.py","lines_changed":9}]},"message":"gzip man page"},{"commit":"f26909eefb236e9ebf63be53cd86ae13cc3d9ea3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["docs/parsers/dir.md"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":8}]},"message":"formatting"},{"commit":"55bfbb2797ede3aefbb14ecab950b108b1895ccc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":6,"files":["EXAMPLES.md","jc/parsers/dir.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":3},{"name":"jc/parsers/dir.py","lines_changed":8}]},"message":"formatting"},{"commit":"8970b8342a855203aef649b60dad3e49a1d7fd2a","merge":"a73fdb7 5285e69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #115 from kellyjonbrazil/master\n\nSync master and dev"},{"commit":"5285e699c30fdeaf56068f5a03ef1d1d33fa673c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","jc/cli.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"fix rpm-qi parser name"},{"commit":"275f3860d5870303235b651d42650256e4db8ada","merge":"577811f a73fdb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #114 from kellyjonbrazil/dev\n\nDev v1.15.0"},{"commit":"a73fdb7478965f0f2c841ac01b2762db80ad0786","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["CHANGELOG","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"update dates"},{"commit":"f2d746403a0ed764f931ae9e14d180bab107dcca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/rpm_qi.md","jc/parsers/rpm_qi.py"],"file_stats":[{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"jc/parsers/rpm_qi.py","lines_changed":2}]},"message":"typo fix"},{"commit":"b7dbf2c49be4beb793495a0aaee7f05dbea5a3a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":26}]},"message":"doc formatting"},{"commit":"21f3c97788826e79b0c387f877c5adf269318e97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2}]},"message":"rename rpm_qai to rpm_qi"},{"commit":"14b727cc717d04fefba1cc31b6f29b549ced986f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":73,"deletions":0,"files":["tests/fixtures/centos-7.7/rpm-qi-package.json","tests/fixtures/centos-7.7/rpm-qi-package.out","tests/test_rpm_qai.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/rpm-qi-package.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rpm-qi-package.out","lines_changed":26},{"name":"tests/test_rpm_qai.py","lines_changed":46}]},"message":"add rpm_qi tests"},{"commit":"abee226591ed4ae37351efc995017d28b27827d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":205,"deletions":14,"files":["README.md","docs/parsers/rpm_qi.md","jc/cli.py","jc/parsers/{rpm_qai.py => rpm_qi.py}","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":191},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/{rpm_qai.py => rpm_qi.py}","lines_changed":20},{"name":"man/jc.1","lines_changed":4}]},"message":"rename rpm_qia to rpm_qi"},{"commit":"293ad39f4bcf326186dd917d8bc58d3964e5e4d6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"typo fix"},{"commit":"92443025811019f616f596abb60a2889f604c122","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":7,"deletions":6,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/rpm_qai.md","jc/parsers/rpm_qai.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":4},{"name":"docs/parsers/rpm_qai.md","lines_changed":4},{"name":"jc/parsers/rpm_qai.py","lines_changed":4}]},"message":"rpm parser doc update"},{"commit":"753cac25fb1e7e6cd2c742afa8d45ced068ea91d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":3,"files":["jc/parsers/rpm_qai.py"],"file_stats":[{"name":"jc/parsers/rpm_qai.py","lines_changed":9}]},"message":"only add description if it exists"},{"commit":"0548263e898bf14f93d2fa423c0f0a9d9f2ff567","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":10468,"deletions":0,"files":["EXAMPLES.md","README.md","docs/parsers/rpm_qai.md","jc/cli.py","jc/parsers/rpm_qai.py","man/jc.1","tests/fixtures/centos-7.7/rpm-qai.json","tests/fixtures/centos-7.7/rpm-qai.out"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":53},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/rpm_qai.md","lines_changed":191},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/rpm_qai.py","lines_changed":255},{"name":"man/jc.1","lines_changed":5},{"name":"tests/fixtures/centos-7.7/rpm-qai.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rpm-qai.out","lines_changed":9961}]},"message":"add rpm -qai parser"},{"commit":"53776a9bf894988d6ef9221a62ab8b816c89560c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":2},{"name":"templates/manpage_template","lines_changed":2}]},"message":"note -a output is JSON"},{"commit":"cc7def9b76a7fa6de1e11b584676820f3acb0257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":18,"deletions":0,"files":["tests/fixtures/osx-10.14.6/finger.json","tests/fixtures/osx-10.14.6/finger.out","tests/test_finger.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/finger.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/finger.out","lines_changed":5},{"name":"tests/test_finger.py","lines_changed":12}]},"message":"add OSX finger tests"},{"commit":"11a4422c25ed905f33475677bcc2f59f49c62a23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":51,"deletions":0,"files":["tests/fixtures/centos-7.7/finger.json","tests/fixtures/centos-7.7/finger.out","tests/test_finger.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/finger.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/finger.out","lines_changed":3},{"name":"tests/test_finger.py","lines_changed":47}]},"message":"add centos 7.7 finger tests"},{"commit":"3a44785260514227b541530baf3e14b6c7ebe86a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/finger.py"],"file_stats":[{"name":"jc/parsers/finger.py","lines_changed":4}]},"message":"del details key if details are blank"},{"commit":"e0d430c26c38db8de5a32741e05df412cffe45b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"update -r raw option info"},{"commit":"417b70020accfa4910016e9d3d12690a5488f6f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":129,"deletions":22,"files":["EXAMPLES.md","docs/parsers/finger.md","jc/parsers/finger.py","tests/fixtures/ubuntu-18.04/finger.json","tests/fixtures/ubuntu-18.04/finger.out"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":18},{"name":"docs/parsers/finger.md","lines_changed":53},{"name":"jc/parsers/finger.py","lines_changed":71},{"name":"tests/fixtures/ubuntu-18.04/finger.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/finger.out","lines_changed":8}]},"message":"add idle time fields to finger parser"},{"commit":"7b29c464b72ef9a79bd872dab92cf65016490bcc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"date updated"},{"commit":"26d5529d86e4e459ad94226465c3697a050af0ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":7,"files":["docs/parsers/finger.md"],"file_stats":[{"name":"docs/parsers/finger.md","lines_changed":17}]},"message":"remove aix support, add note for -s support. schema update"},{"commit":"852103c478321b84ffbbc0a876d5ece0c0881e1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":14,"files":["jc/parsers/finger.py"],"file_stats":[{"name":"jc/parsers/finger.py","lines_changed":41}]},"message":"tweak regex to support arbitrary 'detail' data"},{"commit":"26a115421b0888e23f4348f1124e2ef7b39df4cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":11}]},"message":"add finger parser"},{"commit":"755b941a9aa602d95d9bc599f5c64e05f9e6216d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":35,"deletions":30,"files":["EXAMPLES.md","docs/parsers/finger.md","jc/parsers/finger.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":23},{"name":"docs/parsers/finger.md","lines_changed":21},{"name":"jc/parsers/finger.py","lines_changed":21}]},"message":"doc update"},{"commit":"fd1ca82d86649adeb84968142665e5e4fae3fa0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":263,"deletions":0,"files":["README.md","docs/parsers/finger.md","jc/cli.py","jc/parsers/finger.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/finger.md","lines_changed":102},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/finger.py","lines_changed":154},{"name":"man/jc.1","lines_changed":5}]},"message":"add finger parser"},{"commit":"6fe175344fc61d4996a9ea20f6c5d429efb1fac7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"change examples link to github.io"},{"commit":"3590cda13a68616ee7eb8c85c5554ffb3fef036d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/last.md","jc/parsers/last.py"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":2}]},"message":"docs formatting"},{"commit":"2f1011dd85ec9b3550138ac4a4e1729fa5b4fe17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"readme update"},{"commit":"2b155261b3f6e4879b592f5bc052649ded5e3d69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":2}]},"message":"use new github.io links for documentation"},{"commit":"02f4d606d0a446c7cc74aedac6035ee79805950d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":69,"deletions":69,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":136},{"name":"templates/readme_template","lines_changed":2}]},"message":"add documentation links to README.md"},{"commit":"577811f00b7fcd0396bb0e26a2985709bd2c65a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/_config.yml"],"file_stats":[{"name":"docs/_config.yml","lines_changed":1}]},"message":"Set theme jekyll-theme-cayman"},{"commit":"b4098d67a3a4a617d42c1389e0a88833c77b89b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"latest"},{"commit":"88bd7554aeb511c19e55dc3dde9c9376efb0485b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":3,"files":["docgen.sh","updatedocs.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":2},{"name":"updatedocs.sh","lines_changed":9}]},"message":"add status messages"},{"commit":"b5ec16c5cafb78db093861cc30d9646207f2227a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":8,"files":["mangen.py","readmegen.py"],"file_stats":[{"name":"mangen.py","lines_changed":4},{"name":"readmegen.py","lines_changed":4}]},"message":"formatting"},{"commit":"68fcb60a1460a35500180ec05a8cf5ba5706ff17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["updatedocs.sh"],"file_stats":[{"name":"updatedocs.sh","lines_changed":6}]},"message":"add updatedocs script"},{"commit":"e4781d60ce251f6d47f19bbe042e97f8aa9e2f18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":65,"insertions":188,"deletions":189,"files":["README.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":124},{"name":"jc/parsers/acpi.py","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/blkid.py","lines_changed":2},{"name":"jc/parsers/cksum.py","lines_changed":3},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/dir.py","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":2},{"name":"jc/parsers/dpkg_l.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/group.py","lines_changed":2},{"name":"jc/parsers/gshadow.py","lines_changed":2},{"name":"jc/parsers/hash.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":2},{"name":"jc/parsers/hciconfig.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/ntpq.py","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":2},{"name":"jc/parsers/ping.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/shadow.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/sysctl.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/time.py","lines_changed":2},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/parsers/wc.py","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":2},{"name":"man/jc.1","lines_changed":126}]},"message":"update parser descriptions with backticks surrounding command names"},{"commit":"6201fb346a66ba762651624cdaf03f08e08579a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"test backticks in description"},{"commit":"f88c8343f9dec5e0190df94a5109e6c749bda286","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"update iw-scan description for documentation"},{"commit":"25410d33168ee7142bd8f8c739ef22a62a47eb6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":973,"deletions":70,"files":["README.md","mangen.py","readmegen.py","{man/template => templates}/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":139},{"name":"mangen.py","lines_changed":2},{"name":"readmegen.py","lines_changed":16},{"name":"{man/template => templates}/manpage_template","lines_changed":0},{"name":"templates/readme_template","lines_changed":886}]},"message":"create readmegen.py script. move jinja2 templates to templates folder"},{"commit":"4ff9952938d0654376efc94ca7d8a12f6df171af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":10}]},"message":"change OSX to macOS"},{"commit":"5e3f63a412c5b23e7515337521ebba6273b5c11f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["man/jc.1","man/template/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":4},{"name":"man/template/manpage_template","lines_changed":8}]},"message":"add license and copyright info. use variables instead of hard-coded values"},{"commit":"e1f57be69efdfd7facd07df6ef0955a36c4fc18b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add license info"},{"commit":"2c65d5eeccdc95d2de00ac6575a9e8d8458486bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":32,"deletions":8,"files":["man/jc.1","man/template/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":20},{"name":"man/template/manpage_template","lines_changed":20}]},"message":"man page updates"},{"commit":"aa621f2f1ee043611c440683dfb63e6577d8fac4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":74,"deletions":9,"files":["CHANGELOG","man/jc.1","man/template/manpage_template"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"man/jc.1","lines_changed":42},{"name":"man/template/manpage_template","lines_changed":40}]},"message":"enhance man page"},{"commit":"ac932c6e59ad80115962d0ea91e6aaabc70c211e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":2},{"name":"jc/utils.py","lines_changed":2}]},"message":"update timestamp docs"},{"commit":"029f79da1647e53f97ca83ba92b1f36a131f3128","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"added info regarding updated dev scripts for automating doc generation"},{"commit":"153b2b4a7a216caae5b03f6d50d43980c13a705f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":68,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":79}]},"message":"use jc to help automate the generation of its own docs"},{"commit":"709b2fe4eead06090f903718deeb06ec774fc26e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":16,"deletions":0,"files":["man/jc.1","man/template/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":8},{"name":"man/template/manpage_template","lines_changed":8}]},"message":"add -h and -v options"},{"commit":"09c1fccc584e3d0582e19b520586419085ea8d04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":4,"deletions":6,"files":["man/jc.1","man/template/manpage_template","mangen.py"],"file_stats":[{"name":"man/jc.1","lines_changed":2},{"name":"man/template/manpage_template","lines_changed":2},{"name":"mangen.py","lines_changed":6}]},"message":"manpage updates"},{"commit":"fd254d99b782888fe7646e42a61f28aa99e7cba7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":193,"deletions":15,"files":["man/jc.1","man/template/manpage_template","mangen.py"],"file_stats":[{"name":"man/jc.1","lines_changed":124},{"name":"man/template/manpage_template","lines_changed":64},{"name":"mangen.py","lines_changed":20}]},"message":"add manpage generator"},{"commit":"88bd2c172217c498431e8904e74313bc27978785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"fix typo"},{"commit":"d03e2f0fc1d0310cd94702f4d3c959d71b0eb622","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":40,"deletions":0,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":40}]},"message":"add parser schema guidelines"},{"commit":"3f12a393bd37062cd1412128be495235b0c7351f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"formatting"},{"commit":"8c21284c5038bdc2e52ff4211fac747f33f52091","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":3}]},"message":"remove redundant license info"},{"commit":"e7d396c2157a77500017967dfc68ffaf32507c2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"update issues link"},{"commit":"f238fac0eb0c8e5133c6c9abf9ca709f5df7a925","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":49,"deletions":0,"files":["CHANGELOG","CONTRIBUTING.md","README.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"CONTRIBUTING.md","lines_changed":46},{"name":"README.md","lines_changed":2}]},"message":"add contributing guidelines"},{"commit":"017228f80d9a65ad7715f31c539d9fca1615296f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add tested on Windows 10"},{"commit":"286c5fa9434e25434ee8f4825621f68464296469","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add dir parser"},{"commit":"74cfc13abe4cd09ca5470714caeaedd24c099770","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":12,"deletions":21,"files":["tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-S.json","tests/fixtures/windows-10/dir-dirs.json","tests/fixtures/windows-10/dir-files.json","tests/fixtures/windows-10/dir-mix.json","tests/fixtures/windows-10/dir-raw.json","tests/fixtures/windows-10/dir.json","tests/test_dir.py"],"file_stats":[{"name":"tests/fixtures/windows-10/dir-C.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-ODTC.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-S.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-dirs.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-files.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-mix.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-raw.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir.json","lines_changed":2},{"name":"tests/test_dir.py","lines_changed":18}]},"message":"fixup dir parser tests"},{"commit":"0ee4a6c377321cf6ff67ced38e9a07a8f6313943","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":207,"deletions":460,"files":["docs/parsers/dir.md","jc/parsers/dir.py"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":316},{"name":"jc/parsers/dir.py","lines_changed":351}]},"message":"update schema and add epoch naive timestamp"},{"commit":"283433578dfc3f132ef35727ce5bafb3e390896c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":46,"deletions":0,"files":["EXAMPLES.md","README.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":45},{"name":"README.md","lines_changed":1}]},"message":"add dir parser"},{"commit":"9559c85057308e8815d4654bbe0062a5858c0b2b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":0,"files":["jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":1},{"name":"tests/test_utils.py","lines_changed":2}]},"message":"add windows dir format"},{"commit":"c5c020f5654038dacba542be3784a35d7333cbcc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/parsers/dir.md"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":1}]},"message":"add /S option"},{"commit":"95ec79bceb3d0c4245e36b7b16cfda6e16b01197","merge":"8f8be8a 5b60c74","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #107 from rasheed-rd/add-dir-parser\n\nAdd windows dir command parser"},{"commit":"8f8be8aa33f0b708ebd9a35c6b288572443d7181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4}]},"message":"add -1 option info"},{"commit":"5b60c7445a3f8bd2ae1587aa0ffaeaf093966f9a","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","commit_by":"Rasheed Elsaleh","commit_by_email":"rasheed@rebelliondefense.com","stats":{"files_changed":5,"insertions":469,"deletions":400,"files":["docs/parsers/dir.md","jc/parsers/dir.py","tests/fixtures/windows-10/dir-S.json","tests/fixtures/windows-10/dir-S.out","tests/test_dir.py"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":404},{"name":"jc/parsers/dir.py","lines_changed":405},{"name":"tests/fixtures/windows-10/dir-S.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-S.out","lines_changed":47},{"name":"tests/test_dir.py","lines_changed":12}]},"message":"Add support for /S and update documentation"},{"commit":"d9dbcc8b526c8de9c6d12ac580880fd606dc68cf","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","commit_by":"Rasheed Elsaleh","commit_by_email":"rasheed@rebelliondefense.com","stats":{"files_changed":15,"insertions":149,"deletions":73,"files":["docs/parsers/dir.md","jc/parsers/dir.py","tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-Q.json","tests/fixtures/windows-10/dir-Q.out","tests/fixtures/windows-10/dir-dirs.json","tests/fixtures/windows-10/dir-dirs.out","tests/fixtures/windows-10/dir-files.json","tests/fixtures/windows-10/dir-files.out","tests/fixtures/windows-10/dir-mix.json","tests/fixtures/windows-10/dir-mix.out","tests/fixtures/windows-10/dir-raw.json","tests/fixtures/windows-10/dir.json","tests/test_dir.py"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":24},{"name":"jc/parsers/dir.py","lines_changed":59},{"name":"tests/fixtures/windows-10/dir-C.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-ODTC.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-Q.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-Q.out","lines_changed":21},{"name":"tests/fixtures/windows-10/dir-dirs.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-dirs.out","lines_changed":19},{"name":"tests/fixtures/windows-10/dir-files.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-files.out","lines_changed":16},{"name":"tests/fixtures/windows-10/dir-mix.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-mix.out","lines_changed":22},{"name":"tests/fixtures/windows-10/dir-raw.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir.json","lines_changed":2},{"name":"tests/test_dir.py","lines_changed":50}]},"message":"Add parent dir to structure. Add test cases. Remove support for /Q"},{"commit":"79bc525970b38dea68b4859ac5dd32fc681e5994","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":1},{"name":"jc/parsers/dpkg_l.py","lines_changed":1}]},"message":"add codes field to schema"},{"commit":"9dae1091ddc6141694ebfdc5ae649582cb879ccd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":6},{"name":"jc/parsers/dpkg_l.py","lines_changed":4}]},"message":"typo fix"},{"commit":"74d3ac686a69518c1048260e37a0245ff254ff57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":61,"deletions":0,"files":["tests/fixtures/ubuntu-18.04/dpkg-l-codes.json","tests/fixtures/ubuntu-18.04/dpkg-l-columns500.json","tests/fixtures/ubuntu-18.04/dpkg-l.json","tests/test_dpkg_l.py"],"file_stats":[{"name":"tests/fixtures/ubuntu-18.04/dpkg-l-codes.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l-columns500.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l.json","lines_changed":1},{"name":"tests/test_dpkg_l.py","lines_changed":58}]},"message":"add dpkg-l tests"},{"commit":"cf3cc636badcf4ae6db1e5ee5e57ca0331ee5b0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add dpkg-l parser info"},{"commit":"a720441e1d34771c5a54876cb7dd63fb8c9f408e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":54,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":54}]},"message":"add dpkg -l example"},{"commit":"0a7ed0959df07e2f36d9ec3ca8c294cfdaf10396","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"jc/parsers/dpkg_l.py","lines_changed":6}]},"message":"rename err to error"},{"commit":"eb83c9b86dc6d1ff15efed30993071834b65a7d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":21,"files":["docs/utils.md"],"file_stats":[{"name":"docs/utils.md","lines_changed":29}]},"message":"replace parse_datetime_to_timestamp with timestamp class"},{"commit":"5c0142dd19eee14f4f1c287f0543e29824f9ae70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":1797,"deletions":2,"files":["CHANGELOG","docgen.sh","docs/parsers/dpkg_l.md","jc/cli.py","jc/parsers/dpkg_l.py","jc/parsers/universal.py","tests/fixtures/ubuntu-18.04/dpkg-l-codes.out","tests/fixtures/ubuntu-18.04/dpkg-l-columns500.out","tests/fixtures/ubuntu-18.04/dpkg-l.out"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/dpkg_l.md","lines_changed":170},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/dpkg_l.py","lines_changed":247},{"name":"jc/parsers/universal.py","lines_changed":4},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l-codes.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l-columns500.out","lines_changed":677},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l.out","lines_changed":677}]},"message":"add dpkg-l parser"},{"commit":"c326c8dc8356b55bba13864156adf30607205ece","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":18,"insertions":194,"deletions":1,"files":["jc/parsers/time.py","tests/fixtures/osx-10.14.6/time-l.json","tests/fixtures/osx-10.14.6/time-l.out","tests/fixtures/osx-10.14.6/time-lp.json","tests/fixtures/osx-10.14.6/time-lp.out","tests/fixtures/osx-10.14.6/time-p.json","tests/fixtures/osx-10.14.6/time-p.out","tests/fixtures/osx-10.14.6/time.json","tests/fixtures/osx-10.14.6/time.out","tests/fixtures/ubuntu-18.04/time-p.json","tests/fixtures/ubuntu-18.04/time-p.out","tests/fixtures/ubuntu-18.04/time-verbose.json","tests/fixtures/ubuntu-18.04/time-verbose.out","tests/fixtures/ubuntu-18.04/time.json","tests/fixtures/ubuntu-18.04/time.out","tests/fixtures/ubuntu-18.04/time2.json","tests/fixtures/ubuntu-18.04/time2.out","tests/test_time.py"],"file_stats":[{"name":"jc/parsers/time.py","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/time-l.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/time-l.out","lines_changed":15},{"name":"tests/fixtures/osx-10.14.6/time-lp.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/time-lp.out","lines_changed":17},{"name":"tests/fixtures/osx-10.14.6/time-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/time-p.out","lines_changed":3},{"name":"tests/fixtures/osx-10.14.6/time.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/time.out","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time-p.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/time-verbose.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time-verbose.out","lines_changed":23},{"name":"tests/fixtures/ubuntu-18.04/time.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/time2.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time2.out","lines_changed":2},{"name":"tests/test_time.py","lines_changed":118}]},"message":"add TypeError to except block. add /usr/bin/time tests"},{"commit":"fc4082a03feb5645a1ad687908782a2584a58956","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":131,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":131}]},"message":"remove old parse_datetime_to_timestamp function"},{"commit":"c8655565ff8718f0f14d41696b81e6539529dde1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"use new timestamp class"},{"commit":"638f879f16c9e87edb60953f4fd0b1c7ad92f277","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":5}]},"message":"use new timestamp class"},{"commit":"1d221bf7e6128d57bd769c0fe8f37f7a94da8cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/who.py","lines_changed":3}]},"message":"use new timestamp class"},{"commit":"60ea71f0ef931dccf09e6eb0cb737ddad0b47f0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/timedatectl.py"],"file_stats":[{"name":"jc/parsers/timedatectl.py","lines_changed":3}]},"message":"use new timestamp class"},{"commit":"d8bdd35a3f462efcdc871426309299e8aefb0a79","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":5}]},"message":"use new timestamp class"},{"commit":"7463891c53f3670710dfa72ed1422431c274fe4a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":6}]},"message":"use new timestamp class"},{"commit":"7537aec76fa07384c4439f34c50d4e3f001c0dfa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":8,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":16}]},"message":"use jc.utils.timestamp instead of jc.utils.parse_datetime_to_timestamp()"},{"commit":"62234e39a8533362a20f106c64326ed69f430006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":8,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":13}]},"message":"use jc.utils.timestamp instead of jc.utils.parse_datetime_to_timestamp()"},{"commit":"be004b7b3fe9217160c6418907e7d8aad10e5fae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":172,"deletions":15,"files":["jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":155},{"name":"tests/test_utils.py","lines_changed":32}]},"message":"make parse_datetime_to_timestamp function a class called timestamp for easier use"},{"commit":"82539444b24169b2eb762485ed032fc968a81f71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":23,"deletions":21,"files":["docs/parsers/time.md","jc/parsers/time.py"],"file_stats":[{"name":"docs/parsers/time.md","lines_changed":1},{"name":"jc/parsers/time.py","lines_changed":43}]},"message":"fix indentation for int and float conversions. add real_time field to schema"},{"commit":"a571d3cbafd5048d1d59070e1791398ae410197f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/time.md","jc/parsers/time.py"],"file_stats":[{"name":"docs/parsers/time.md","lines_changed":2},{"name":"jc/parsers/time.py","lines_changed":2}]},"message":"fix typo"},{"commit":"a038c14c23ea27264df61a38e0301de8d1fa1b9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":8,"deletions":8,"files":["EXAMPLES.md","docs/parsers/time.md","jc/parsers/time.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":4},{"name":"jc/parsers/time.py","lines_changed":10}]},"message":"change microseconds to centiseconds"},{"commit":"25a85d874cd2b57a7700b0c2dca61132127732b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"update docs"},{"commit":"884c36ff42df4f580c8e2b4705def8e4c1182e39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":536,"deletions":1,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","docs/parsers/iw_scan.md","docs/parsers/time.md","jc/cli.py","jc/parsers/time.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":36},{"name":"README.md","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":163},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/time.py","lines_changed":332}]},"message":"add /usr/bin/time parser"},{"commit":"b98e72b8b4eda0ab5ede7725226e61634af572eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add ls parser info"},{"commit":"05885c0096b5ee142ecff2d17e37c446518998a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":931,"deletions":18,"files":["docs/parsers/ls.md","jc/parsers/ls.py","tests/fixtures/ubuntu-18.04/ls-l-iso.json","tests/fixtures/ubuntu-18.04/ls-l-iso.out","tests/test_ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":22},{"name":"jc/parsers/ls.py","lines_changed":31},{"name":"tests/fixtures/ubuntu-18.04/ls-l-iso.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-l-iso.out","lines_changed":883},{"name":"tests/test_ls.py","lines_changed":12}]},"message":"add epoch and epoch_utc timestamps"},{"commit":"4c9761231af897658c3a2c0abcc476aa8b43d1b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":118,"deletions":81,"files":["CHANGELOG","EXAMPLES.md","README.md","docs/parsers/dig.md","jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":46},{"name":"README.md","lines_changed":14},{"name":"docs/parsers/dig.md","lines_changed":50},{"name":"jc/parsers/dig.py","lines_changed":56},{"name":"tests/fixtures/centos-7.7/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig-x.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig.json","lines_changed":2},{"name":"tests/fixtures/generic/dig-answer-spaces.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-x.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig.json","lines_changed":2}]},"message":"add when_epoch and when_epoch_utc fields"},{"commit":"656eaa150861948091ef9d6323805c2698039bc6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"1560dcddcf82f55fffce22d1b46d372b25a9d0fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"add acpi, upower parsers and -v version option"},{"commit":"08d4cd4870c7acaf3a453d1400b64d77d462437b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":114,"deletions":43,"files":["EXAMPLES.md","docs/parsers/acpi.md","jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.json","tests/fixtures/generic/acpi-V2.json","tests/fixtures/generic/acpi-V3.json","tests/fixtures/generic/acpi-V4.json"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":34},{"name":"docs/parsers/acpi.md","lines_changed":50},{"name":"jc/parsers/acpi.py","lines_changed":65},{"name":"tests/fixtures/generic/acpi-V.json","lines_changed":2},{"name":"tests/fixtures/generic/acpi-V2.json","lines_changed":2},{"name":"tests/fixtures/generic/acpi-V3.json","lines_changed":2},{"name":"tests/fixtures/generic/acpi-V4.json","lines_changed":2}]},"message":"add time calculations to acpi parser"},{"commit":"9767a50cededb140575e195abf79ce49c4f53789","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":48,"deletions":46,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/who.md","jc/parsers/who.py","jc/utils.py","tests/fixtures/centos-7.7/who-a.json","tests/fixtures/centos-7.7/who.json","tests/fixtures/osx-10.14.6/who-a.json","tests/fixtures/osx-10.14.6/who.json","tests/fixtures/ubuntu-18.04/who-a.json","tests/fixtures/ubuntu-18.04/who.json","tests/test_utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":37},{"name":"docs/parsers/who.md","lines_changed":18},{"name":"jc/parsers/who.py","lines_changed":23},{"name":"jc/utils.py","lines_changed":1},{"name":"tests/fixtures/centos-7.7/who-a.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/who.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/who-a.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/who.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/who-a.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/who.json","lines_changed":2},{"name":"tests/test_utils.py","lines_changed":2}]},"message":"update who parser to add epoch naive timestamp"},{"commit":"cd86890ed1493644e391e52e33561e9a77631a51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"add website to info and use variables for version info"},{"commit":"ba0dd3b9ca98a042c772898302fcfe5fdc84f79a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":4}]},"message":"add parse_timedate_to_timestamp test for format 7300"},{"commit":"8d7fa07ffd50f38336a448eb506a76d9d4849a6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":11,"files":["tests/fixtures/centos-7.7/timedatectl.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/timedatectl.json","lines_changed":12}]},"message":"unformat json"},{"commit":"cade1bfe6e56b5926898b7204e911885efebd5a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":2,"files":["tests/fixtures/centos-7.7/timedatectl.json","tests/fixtures/ubuntu-18.04/timedatectl.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/timedatectl.json","lines_changed":12},{"name":"tests/fixtures/ubuntu-18.04/timedatectl.json","lines_changed":2}]},"message":"update timedatectl tests for new epoch_utc field"},{"commit":"daec4ab0a7f572e872b27b043d51f68e5e06300f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":20,"deletions":4,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/timedatectl.md","jc/parsers/timedatectl.py","jc/utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"EXAMPLES.md","lines_changed":3},{"name":"docs/parsers/timedatectl.md","lines_changed":6},{"name":"jc/parsers/timedatectl.py","lines_changed":11},{"name":"jc/utils.py","lines_changed":1}]},"message":"add epoch_utc field to timedatectl parser"},{"commit":"3c96bc319615c824a06c388e9e3c1d68a9bf4084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":2}]},"message":"version bump"},{"commit":"7f7d8d4bd6f37015b11bac60a7bd99e8d3eca108","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":0,"files":["docs/parsers/stat.md","jc/parsers/stat.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":4}]},"message":"update stat docs"},{"commit":"47263661a41987f334fd484e866e0aa8859cde5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":2,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":20}]},"message":"update stat example"},{"commit":"4c42a086d206919dfe4f1c0801fe4fb1027cb1cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":6,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":7}]},"message":"clean up debug code"},{"commit":"5d2541a5c4bc93f3943a491c76df7f8d4e2cf44b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":5}]},"message":"remove auto c locale and use a manual format rule for windows and linux compatibility"},{"commit":"d91d170b49bfc88c0b2fb54475705c038172f1c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"try manual c locale format for windows"},{"commit":"6d1f4584a9ccd0f0f7ed4fdf408576a9e7f5046b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":4}]},"message":"try manually setting time format for windows compatibility"},{"commit":"1d76d96bcf4185cffb7066bec637913099399db5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":4}]},"message":"debug windows issue"},{"commit":"e8847c998c91131acf5ee0f6485e9976c0fce3ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["tests/fixtures/centos-7.7/stat.json","tests/fixtures/freebsd12/stat.json","tests/fixtures/osx-10.14.6/stat.json","tests/fixtures/ubuntu-18.04/stat.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/stat.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/stat.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/stat.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/stat.json","lines_changed":2}]},"message":"update stat tests"},{"commit":"da88e49bae2f3fecff623f52c20bf994b653583e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":69,"deletions":29,"files":["docs/parsers/stat.md","jc/parsers/stat.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":76},{"name":"jc/parsers/stat.py","lines_changed":22}]},"message":"add new examples"},{"commit":"65c3a12e5422782df40489c3c431677f5657dbf5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":35,"deletions":24,"files":["jc/parsers/stat.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":58},{"name":"jc/utils.py","lines_changed":1}]},"message":"simplify None data scenario"},{"commit":"d8d600cc36bde4e6216b935f87a765599e896714","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add reference to -h for help"},{"commit":"507999b117b024fed1ccf067bd5dc411dbeb268c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":34,"deletions":19,"files":["docs/utils.md","jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":32},{"name":"jc/utils.py","lines_changed":13},{"name":"tests/test_utils.py","lines_changed":8}]},"message":"add stat command timestamp detection"},{"commit":"8ad164eb340e135eeeb10b721172916182f37e30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":6}]},"message":"fix tests for compact output"},{"commit":"a507df140b245b83b1c46e8462b44e1145c42f2a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add compact json info"},{"commit":"8912a99986a977ee6ca7bbe2368f5033644577b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"make default json output more compact"},{"commit":"1953f9882890cd0e8c515d43ce28c96f918b0ab4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"add version info. add json now supports unicode output"},{"commit":"7515218ddd2cdcfcebd67850140e842f2f121226","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":10,"deletions":14,"files":["jc/cli.py","jc/utils.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8},{"name":"jc/utils.py","lines_changed":16}]},"message":"use jc.utils for all warning and error messages. simply error and warning formatting."},{"commit":"36c11201366cefedee4244fb71a4a9cc6507e6ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"formatting"},{"commit":"8fa0fe64d8418093c7f28cdc70a7f409956aeb04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":10}]},"message":"add -v to helptext. minor formatting"},{"commit":"c1a8201b140c65579ff9f8427322b67653bf3006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":4}]},"message":"add copyright"},{"commit":"398bbac48c8a716b1872843d671aa6ceaeba6a78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"simplify return value for parse_datetime_to_timestamp()"},{"commit":"ea71a42bbdd9b09a457727cfe763054625f7901a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"formatting"},{"commit":"1c16d25b17a7282a62a5ebd9755df5569c57435f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":30,"deletions":9,"files":["README.md","jc/cli.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"jc/cli.py","lines_changed":35}]},"message":"add version option (-v) and copyright information. add 'ensure_ascii=False' to json dumps to properly show UTF-8 copyright character"},{"commit":"9d12ded889f656656267cbf7a91d71267201f736","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"help description change"},{"commit":"5312701515ecb3a10598bb9dcf2f73b7eae71b93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add - make all external python requirements optional"},{"commit":"808c7bc0a94ecfd160ee2b257e5feec347829a5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/xml.py"],"file_stats":[{"name":"jc/parsers/xml.py","lines_changed":10}]},"message":"make xmltodict library optional"},{"commit":"4d394015f458f284d052ce2c1a0c8492916c5b3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":10}]},"message":"make ruamel.yaml library optional"},{"commit":"3638298af8ebc01d54aa3ab5668d0adedca957e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":53,"deletions":44,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":97}]},"message":"make pygments library optional"},{"commit":"5f00973e400629bd68c0ab60ed9005410278f855","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":2}]},"message":"remove parenthesis to normalize text for naive timezone detection"},{"commit":"0f6e2c14fcb69f664c29083ec5207326f842dfdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":9}]},"message":"simplify timestamp failure logic"},{"commit":"51813da61994226ba40478825d47f80c23413349","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":4,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":13}]},"message":"add offset timezones. fix timestamp logic on conversion failure"},{"commit":"e7751322ea195cac7f1921ba8e0364c442065d20","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":10}]},"message":"formatting"},{"commit":"26ef29843784ade3d55410be13300dd6f4c06890","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":6,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":16}]},"message":"change return to always include the entire object but all keys may be None if conversion fails"},{"commit":"badaf8ce73d7deb0ec2be244e27b4bf8cddbea19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":14,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":28}]},"message":"comment formatting"},{"commit":"b123a622039f3cc32643a3bfc0766154d660f8bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":9}]},"message":"move locale change formats to the end of the list"},{"commit":"cfd77e42522aa2ebeada9f45ac99bd1d3414f782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":1}]},"message":"reset locale to None on exception"},{"commit":"38f814072eac5370059f1b4203316eee41cf535b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":8,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":34}]},"message":"better normalization of datetime string. better UTC detection. More formats supported with detected locale."},{"commit":"a0db7754e384a0c95f2099bf894f3a22bd33c002","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add nixos install info"},{"commit":"f07620afc7dc0d0d605eb483ef36c5979b33cdfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":18,"deletions":7,"files":["README.md","jc/__init__.py","jc/cli.py"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"jc/__init__.py","lines_changed":3},{"name":"jc/cli.py","lines_changed":21}]},"message":"move version to jc.__init__.py\nadd -h option for help instead of always showing on error\nuse jc.utils.error_message for the following errors: missing/incorrect arguments, parser not found, missing piped data"},{"commit":"c1b0d27752726989c6051f683a1194941bee598c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":10,"files":["runtests.sh"],"file_stats":[{"name":"runtests.sh","lines_changed":10}]},"message":"remove old commented commands"},{"commit":"430a5108aa265d4df0e4584eade54759da864c61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":19,"deletions":60,"files":["runtests.sh","tests/test_last.py","tests/test_last2.py"],"file_stats":[{"name":"runtests.sh","lines_changed":16},{"name":"tests/test_last.py","lines_changed":23},{"name":"tests/test_last2.py","lines_changed":40}]},"message":"move all tests to github actions"},{"commit":"111ce92fc9c33b82c7d1a1664dda046ea5993f6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":0,"deletions":1,"files":["tests/{localtest_date.py => test_date.py}","tests/{localtest_last.py => test_last2.py}","tests/{localtest_upower.py => test_upower.py}","tests/test_utils.py"],"file_stats":[{"name":"tests/{localtest_date.py => test_date.py}","lines_changed":0},{"name":"tests/{localtest_last.py => test_last2.py}","lines_changed":0},{"name":"tests/{localtest_upower.py => test_upower.py}","lines_changed":0},{"name":"tests/test_utils.py","lines_changed":1}]},"message":"attempt all tests in github actions with timezone correction"},{"commit":"c851e8a58d98b2a4907cf1e7cf7c7d8d8dc04dc6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":1}]},"message":"force github action"},{"commit":"39f4bcd9b41450068903ea2843508586eccdf709","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"Change Windows timezone\n\nuse \"Pacific Standard Time\""},{"commit":"4a610c4c81493788b8351e8c74aabe819c981c02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":1}]},"message":"force github action"},{"commit":"89ee11945d4e2db107a33ef0d61e0c6015ac8ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"Change timezone provider\n\nuses: szenius/set-timezone@v1.0"},{"commit":"dadb09b74a69d1852f8433e0e32ccdd67bd91181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":1}]},"message":"force github action"},{"commit":"1b1f638b97dc5e6f2767183eb363b79ae3c9b3c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":8}]},"message":"Change timezone change provider\n\nchange to actions/set-timezone-action"},{"commit":"794fc4ed44d1565514303090403d68ba5d639cb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":36,"deletions":8,"files":["jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":16},{"name":"tests/test_utils.py","lines_changed":28}]},"message":"add parse_datetime_to_timestamp() tests"},{"commit":"72f735bf9211d7beddcf58819fe465722f5d7c5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":4}]},"message":"Set Timezone to America/Los_Angeles\n\nUsing zcong1993/setup-timezone"},{"commit":"912877f25ad562ed4cafe7b2d7446bd48b477ea2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"additional timezone info"},{"commit":"2772c5ae436ea437d833003372d53a3d3f955ea0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"formatting"},{"commit":"a7ad24d2cb61d84cf2846f8fa43af31f0597043e","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","commit_by":"Rasheed Elsaleh","commit_by_email":"rasheed@rebelliondefense.com","stats":{"files_changed":13,"insertions":772,"deletions":0,"files":["docgen.sh","docs/parsers/dir.md","jc/cli.py","jc/parsers/dir.py","tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-C.out","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-ODTC.out","tests/fixtures/windows-10/dir-Q.json","tests/fixtures/windows-10/dir-Q.out","tests/fixtures/windows-10/dir.json","tests/fixtures/windows-10/dir.out","tests/test_dir.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/dir.md","lines_changed":286},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/dir.py","lines_changed":332},{"name":"tests/fixtures/windows-10/dir-C.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-C.out","lines_changed":21},{"name":"tests/fixtures/windows-10/dir-ODTC.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-ODTC.out","lines_changed":21},{"name":"tests/fixtures/windows-10/dir-Q.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-Q.out","lines_changed":21},{"name":"tests/fixtures/windows-10/dir.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir.out","lines_changed":21},{"name":"tests/test_dir.py","lines_changed":64}]},"message":"Add dir parser\n\nAdd usage commands\n\nFix example options\n\nupdate dir.md"},{"commit":"a364a6a9faeb6aa290b790f3dec74e92b8670534","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"add note regarding calculated timestamps"},{"commit":"7b2dc86a8d974e7984fe2540f56a66c2b9386acd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":19,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":42}]},"message":"update last example with new timestamp fields"},{"commit":"ad645636d07d0423253f19068a22b2a28251b05f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":86,"deletions":50,"files":["CHANGELOG","EXAMPLES.md","README.md","docs/parsers/uptime.md","jc/parsers/uptime.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":9},{"name":"EXAMPLES.md","lines_changed":19},{"name":"README.md","lines_changed":19},{"name":"docs/parsers/uptime.md","lines_changed":50},{"name":"jc/parsers/uptime.py","lines_changed":39}]},"message":"update uptime docs"},{"commit":"2f2f297b29fbe3172647a81db084b3564a441d40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["tests/fixtures/centos-7.7/uptime.json","tests/fixtures/osx-10.11.6/uptime.json","tests/fixtures/osx-10.14.6/uptime.json","tests/fixtures/ubuntu-18.04/uptime.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/uptime.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/uptime.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/uptime.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/uptime.json","lines_changed":2}]},"message":"update uptime fixtures with new fields"},{"commit":"099ae3fde03f8157298f6b412bdddb8bd56da09a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":22,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":48}]},"message":"fix issue when there is no data"},{"commit":"e9febe98ac5ec0e03791c5b6794446a2c3312fb1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["runtests.sh"],"file_stats":[{"name":"runtests.sh","lines_changed":2}]},"message":"add localtest partition lines for readability"},{"commit":"5fbd07cccf9fb697b996dcc3949eef5b1c09e655","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":59,"deletions":26,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":85}]},"message":"rewrite of uptime parser including new fields"},{"commit":"5fed4698c2c1f1b7e05c5b4c51639f818e049b53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":6,"files":["docs/parsers/last.md","jc/parsers/last.py"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":4},{"name":"jc/parsers/last.py","lines_changed":7}]},"message":"update docs and version number"},{"commit":"ed7eb0983a4dfcc1d66a2957be3e10b2203d909e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":8}]},"message":"use parse_datetime_to_timestamp function instead of custom format string"},{"commit":"90c7e18e5fc5ea9fcf6157cc2656f47193d78411","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":11,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":27}]},"message":"update date example"},{"commit":"953ab5c3bd0c8b6eef29b717edaf1aa2380c2b93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":0,"files":["runtests.sh","tests/{test_upower.py => localtest_upower.py}"],"file_stats":[{"name":"runtests.sh","lines_changed":1},{"name":"tests/{test_upower.py => localtest_upower.py}","lines_changed":0}]},"message":"make upower tests local only"},{"commit":"699c97d8a07f7575454746159ac4d19981cd1a5c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add last parser info"},{"commit":"e4ca0de92a689ce93b91d86106a5da590226855a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":100,"deletions":0,"files":["tests/fixtures/generic/upower-i-c-locale.json","tests/fixtures/generic/upower-i-non-utc.json","tests/fixtures/generic/upower-i-utc.json",".../{upower-i-utc.out2 => upower-i-utc.out}","tests/fixtures/ubuntu-18.04/upower-d-clocale.json","tests/fixtures/ubuntu-18.04/upower-d.json","tests/fixtures/ubuntu-18.04/upower-i.json","tests/test_upower.py"],"file_stats":[{"name":"tests/fixtures/generic/upower-i-c-locale.json","lines_changed":1},{"name":"tests/fixtures/generic/upower-i-non-utc.json","lines_changed":1},{"name":"tests/fixtures/generic/upower-i-utc.json","lines_changed":1},{"name":".../{upower-i-utc.out2 => upower-i-utc.out}","lines_changed":0},{"name":"tests/fixtures/ubuntu-18.04/upower-d-clocale.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/upower-d.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/upower-i.json","lines_changed":1},{"name":"tests/test_upower.py","lines_changed":94}]},"message":"add upower tests"},{"commit":"04745a36b84cc79e56bde2a0e92a4ee9ab4a1538","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":5,"files":["CHANGELOG","jc/utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":12},{"name":"jc/utils.py","lines_changed":1}]},"message":"doc update"},{"commit":"5936940532b8b753e67c9f5cd9287f34cc84ae9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":136,"deletions":186,"files":["docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date-after-midnight.json","tests/fixtures/generic/date-before-midnight.json","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/fixtures/ubuntu-20.04/date2.json"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":74},{"name":"jc/parsers/date.py","lines_changed":238},{"name":"tests/fixtures/generic/date-after-midnight.json","lines_changed":2},{"name":"tests/fixtures/generic/date-before-midnight.json","lines_changed":2},{"name":"tests/fixtures/generic/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date2.json","lines_changed":2}]},"message":"rewrite of date parser using datetime library"},{"commit":"b3eb064b6753d6e894884e1c16054630c2396fe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":4}]},"message":"clarify format definition comments"},{"commit":"e4b41057e302074ac2a81ad8c36b6f95cd6b7db2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":24,"deletions":0,"files":[".../{upower-i.out => upower-i-c-locale.out}","tests/fixtures/generic/upower-i-non-utc.out",".../generic/{upower-i2.out => upower-i-utc.out2}"],"file_stats":[{"name":".../{upower-i.out => upower-i-c-locale.out}","lines_changed":0},{"name":"tests/fixtures/generic/upower-i-non-utc.out","lines_changed":24},{"name":".../generic/{upower-i2.out => upower-i-utc.out2}","lines_changed":0}]},"message":"update upower fixture names"},{"commit":"1d41c46cc762ab0c78b819e56db7df39f1111d5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":34,"deletions":5,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":39}]},"message":"normalize datetime string to remove all timezones except UTC"},{"commit":"a5c444587b3f0874fcc2833dc4e759c2dc1c7834","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":28,"deletions":0,"files":["tests/fixtures/generic/date-after-midnight.json","tests/fixtures/generic/date-after-midnight.out","tests/fixtures/generic/date-before-midnight.json","tests/fixtures/generic/date-before-midnight.out","tests/localtest_date.py"],"file_stats":[{"name":"tests/fixtures/generic/date-after-midnight.json","lines_changed":1},{"name":"tests/fixtures/generic/date-after-midnight.out","lines_changed":1},{"name":"tests/fixtures/generic/date-before-midnight.json","lines_changed":1},{"name":"tests/fixtures/generic/date-before-midnight.out","lines_changed":1},{"name":"tests/localtest_date.py","lines_changed":24}]},"message":"add before and after midnight date tests"},{"commit":"a56f471be980be16e73d3a91e2b12aad26c6d38c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/fixtures/generic/upower-i2.out"],"file_stats":[{"name":"tests/fixtures/generic/upower-i2.out","lines_changed":2}]},"message":"update fixture to use UTC for better testing"},{"commit":"6a6b26ed8d97014c2a5c7d91a4cd9b23f49530fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":5}]},"message":"fix 12 to 24 hour conversion for midnight cases"},{"commit":"f62446c152d89f2d37b22ffe9d9de5b5c9fa7049","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":10,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":21}]},"message":"rename variables. add another european time format"},{"commit":"56011f1f172344cab2a8e869e7a6df6e45c45874","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":73,"deletions":6,"files":["EXAMPLES.md","docs/parsers/upower.md","jc/parsers/upower.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":63},{"name":"docs/parsers/upower.md","lines_changed":8},{"name":"jc/parsers/upower.py","lines_changed":8}]},"message":"updated upower examples"},{"commit":"6d44091c80318fde6c09cd850e6dc5afde7fe799","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":53,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":66}]},"message":"refactor parse_datetime_to_timestamp()"},{"commit":"440c458eb42925dffe2d7b026279468fa2fa1bb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"no need for ternary clause"},{"commit":"798250af6116441385339806c8f26bc9720ad302","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":18,"deletions":24,"files":["docs/parsers/upower.md","jc/parsers/upower.py"],"file_stats":[{"name":"docs/parsers/upower.md","lines_changed":7},{"name":"jc/parsers/upower.py","lines_changed":35}]},"message":"use jc.utils.parse_datetime_to_timestamp() function for timestamp creation"},{"commit":"c762de29c6491790908451aa20f6aa12fdfa9722","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":32,"deletions":2,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":30},{"name":"jc/utils.py","lines_changed":4}]},"message":"doc updates"},{"commit":"0701e65e97165efd40ab2ae5087897de3588ea32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":106,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":106}]},"message":"add parse_datetime_to_timestamp() function"},{"commit":"209d54e8b5be6476d896cee1a5274bd2b46219e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":5},{"name":"jc/parsers/date.py","lines_changed":5}]},"message":"add hour_24 to schema docs"},{"commit":"2b38462de7d2fa61dd5d2a184e853279f1a9c84b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":33,"deletions":27,"files":["EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":20},{"name":"docs/parsers/date.md","lines_changed":20},{"name":"jc/parsers/date.py","lines_changed":20}]},"message":"update examples"},{"commit":"1e8e5533162cb01053ee25e9dbc709a429e58070","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":31,"deletions":14,"files":["CHANGELOG","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/fixtures/ubuntu-20.04/date2.json","tests/localtest_date.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/date.py","lines_changed":21},{"name":"tests/fixtures/generic/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date2.json","lines_changed":1},{"name":"tests/localtest_date.py","lines_changed":16}]},"message":"add hour_24 field"},{"commit":"ab42e6bb15026d6c46e15197c62bc3e8ef95c80d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":1},{"name":"jc/parsers/date.py","lines_changed":1}]},"message":"formatting"},{"commit":"680288454090f3c48c7f0580cdcb919c0b5a883e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":4}]},"message":"ensure period is always uppercase in dict value. update period documentation"},{"commit":"7cb8577b9655f258f2910e7e7bcf3266d4cbece0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":70,"deletions":48,"files":["docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/ubuntu-20.04/date2.out"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":36},{"name":"jc/parsers/date.py","lines_changed":81},{"name":"tests/fixtures/ubuntu-20.04/date2.out","lines_changed":1}]},"message":"correct epoch_utc calculation. Fix for 12 hour vs. 24 hour representation"},{"commit":"55810ccd1f17ef6a4b1cb72fc21f6cf990ef8bb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":1}]},"message":"set epoch_dt conversion again if not C locale"},{"commit":"f9921720cd0b9b0d76d66e6eb5bfe43481f5f52b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":4,"deletions":94,"files":["runtests.sh","tests/test_date.py","tests/test_last2.py"],"file_stats":[{"name":"runtests.sh","lines_changed":8},{"name":"tests/test_date.py","lines_changed":48},{"name":"tests/test_last2.py","lines_changed":42}]},"message":"revert to local testing for naive datetime objects"},{"commit":"cda1ebd271aa8fd1b716054a2149f876d8087230","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["tests/test_date.py","tests/test_last2.py"],"file_stats":[{"name":"tests/test_date.py","lines_changed":2},{"name":"tests/test_last2.py","lines_changed":2}]},"message":"try tzset()"},{"commit":"6901e4a23aad0b58cbbfac86c61917115d115dfe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":89,"deletions":3,"files":["runtests.sh","tests/test_date.py","tests/test_last2.py"],"file_stats":[{"name":"runtests.sh","lines_changed":6},{"name":"tests/test_date.py","lines_changed":46},{"name":"tests/test_last2.py","lines_changed":40}]},"message":"try setting timezone env variable before tests to ensure it is the same on all test systems"},{"commit":"6bc21d3c735edc7897e49afd2a5ea9e3aa56d7fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["runtests.sh","tests/{test_date.py => localtest_date.py}","tests/localtest_last.py"],"file_stats":[{"name":"runtests.sh","lines_changed":1},{"name":"tests/{test_date.py => localtest_date.py}","lines_changed":0},{"name":"tests/localtest_last.py","lines_changed":1}]},"message":"fix date parser tests - local tests only since timezones may not match on github actions VMs"},{"commit":"1ef231e26a2898d2a01f341fb92014df92703f72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"add date parser updates"},{"commit":"3cd43f0f985a3b8a4e74bf5632bd8dac92d751c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/upower.md","jc/parsers/upower.py"],"file_stats":[{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":2}]},"message":"formatting"},{"commit":"156501996688e62dd61a8456206218582a6cbe1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":85,"deletions":63,"files":["EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":21},{"name":"docs/parsers/date.md","lines_changed":41},{"name":"jc/parsers/date.py","lines_changed":82},{"name":"tests/fixtures/generic/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date.json","lines_changed":2}]},"message":"fix weekday numbering to be ISO 8601 compliant. Add naive calculated epoch timestamp field"},{"commit":"0a4de2d3a1c235d1ac2d6e59346e77761fe51885","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":2,"files":["docs/parsers/last.md","docs/parsers/upower.md"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":5}]},"message":"add naive datetime calculation info to docs"},{"commit":"a058f6c174e31f5e6040883bb544b83abd88c749","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":2}]},"message":"added naive epoch calculation info to docs"},{"commit":"d8e5d03b01a87704424f5259cf6bd977274fd6ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":33,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":53}]},"message":"naive updated_epoch timestamp calculation added"},{"commit":"9dc62eff2eaaafec89c5b8797d8ca8e4c77a07d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":34,"deletions":21,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":55}]},"message":"remove epoch conversions"},{"commit":"d4fea17c57a97d6914624b06208b9439bf2eb05f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":13,"deletions":6,"files":["docgen.sh","docs/parsers/upower.md","jc/parsers/upower.py"],"file_stats":[{"name":"docgen.sh","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":15}]},"message":"use UTC when calculating epoch timestamp. reset time locale to default after changing"},{"commit":"3dd7a5b77ea708047bc12be9f2caddd9078723f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":230,"deletions":0,"files":["docgen.sh","docs/parsers/upower.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/upower.md","lines_changed":229}]},"message":"add upower docs"},{"commit":"d77c90a3ba2036b216f4a612876ace988eafd217","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":114,"deletions":6,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":120}]},"message":"fix quoted values in detail level. Add examples"},{"commit":"01f0c20df09fd4aa12bd108928b97376b51ef31a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":0,"files":["tests/fixtures/ubuntu-18.04/upower-d-clocale.out"],"file_stats":[{"name":"tests/fixtures/ubuntu-18.04/upower-d-clocale.out","lines_changed":27}]},"message":"add sample using C locale timestamp"},{"commit":"aafbe576b3b754de91591d9ec2dae9e9f827dee4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":137,"deletions":36,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":173}]},"message":"working parser and processor"},{"commit":"bd68ad40345fb1f69be0e0f87dc67134f826cd06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":4}]},"message":"don't modify detail_type value since it is no longer a key"},{"commit":"bfee017c138bb30ec6af836685013b7124028974","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":61,"deletions":20,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":81}]},"message":"made the schema more explicit by hardcoding more items. still working on the schema"},{"commit":"61f532cfd0b7fbf14a58a0fd638bcbfb03fbde72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":12}]},"message":"working history list"},{"commit":"58dbbb75b607d0b29be185c3b8c3f0d8af21ecad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":21,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":30}]},"message":"simplified logic"},{"commit":"8d88b91fcf5060d7d54f687efec3e3a606bab767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":17}]},"message":"move if statements and generalize the history detail detection"},{"commit":"ad39fc60299089f56f37baac71820e50cbe87ed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":268,"deletions":0,"files":["jc/cli.py","jc/parsers/upower.py","tests/fixtures/generic/upower-i.out","tests/fixtures/generic/upower-i2.out","tests/fixtures/ubuntu-18.04/upower-d.out","tests/fixtures/ubuntu-18.04/upower-i.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/upower.py","lines_changed":173},{"name":"tests/fixtures/generic/upower-i.out","lines_changed":32},{"name":"tests/fixtures/generic/upower-i2.out","lines_changed":24},{"name":"tests/fixtures/ubuntu-18.04/upower-d.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-18.04/upower-i.out","lines_changed":11}]},"message":"working upower parser. history lines are ignored"},{"commit":"89f1fd96e6b7aa0acf6272e4f3469005d4f7c6bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":87,"deletions":0,"files":["tests/fixtures/generic/acpi-V.json","tests/fixtures/generic/acpi-V2.json","tests/fixtures/generic/acpi-V3.json","tests/fixtures/generic/acpi-V4.json","tests/fixtures/ubuntu-18.04/acpi-V.json","tests/test_acpi.py"],"file_stats":[{"name":"tests/fixtures/generic/acpi-V.json","lines_changed":1},{"name":"tests/fixtures/generic/acpi-V2.json","lines_changed":1},{"name":"tests/fixtures/generic/acpi-V3.json","lines_changed":1},{"name":"tests/fixtures/generic/acpi-V4.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/acpi-V.json","lines_changed":1},{"name":"tests/test_acpi.py","lines_changed":82}]},"message":"add acpi tests"},{"commit":"bd425f2493b68949c1fa02cd1d3289ec882d9b0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":321,"deletions":2,"files":["CHANGELOG","EXAMPLES.md","docgen.sh","docs/parsers/acpi.md","jc/cli.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":4},{"name":"EXAMPLES.md","lines_changed":58},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/acpi.md","lines_changed":256},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to v1.15.0. Add acpi docs"},{"commit":"46962ff02a0630766a927babc92e11ec91b1f789","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":11,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":12}]},"message":"remove redundant lines"},{"commit":"e4cb88b05166815e8ad03b646bd3f2b1da7f0d4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":1}]},"message":"remove unneeded line-state assignment"},{"commit":"32840703dc1d88412712b08db1c9bdaebbc34450","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":39,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":47}]},"message":"remove redundant code"},{"commit":"1f7aafd0415a79e0547cc6f1c008c1918f8fb460","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":19,"deletions":9,"files":["jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out","tests/fixtures/generic/acpi-V4.out"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":15},{"name":"tests/fixtures/generic/acpi-V.out","lines_changed":1},{"name":"tests/fixtures/generic/acpi-V4.out","lines_changed":12}]},"message":"fix for full charge batter case. Clean up battery object logic"},{"commit":"7378d5dce43f75440cb57903e8ae0c1c615b0782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":1}]},"message":"remove comment"},{"commit":"84f76866cdf76f67b34de999fd987de8a02f0306","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":197,"deletions":3,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":200}]},"message":"working process function"},{"commit":"322da9ea6a1ceea1152d720797adb8f3a7dc1199","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":59,"deletions":12,"files":["jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":67},{"name":"tests/fixtures/generic/acpi-V.out","lines_changed":4}]},"message":"working parser"},{"commit":"58645301ec111bfeb2a618f5f169cc734042dc5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":236,"deletions":1,"files":["jc/cli.py","jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out","tests/fixtures/generic/acpi-V2.out","tests/fixtures/generic/acpi-V3.out","tests/fixtures/ubuntu-18.04/acpi-V.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/acpi.py","lines_changed":191},{"name":"tests/fixtures/generic/acpi-V.out","lines_changed":16},{"name":"tests/fixtures/generic/acpi-V2.out","lines_changed":12},{"name":"tests/fixtures/generic/acpi-V3.out","lines_changed":13},{"name":"tests/fixtures/ubuntu-18.04/acpi-V.out","lines_changed":2}]},"message":"add acpi command parser"},{"commit":"1e18dd30a824b0463f0cad86e0da7094c47d34f9","merge":"20f9b7f cc6a19a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #102 from kellyjonbrazil/dev\n\nDev v1.14.4"},{"commit":"cc6a19adccea3e10243a166b87d852b6f95414b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"fix typo in comments"},{"commit":"2a5588b177a24d5b78a4b5a515aba515804b7baa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":13,"deletions":3,"files":["CHANGELOG","jc/cli.py","jc/parsers/yaml.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":5},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":7},{"name":"setup.py","lines_changed":2}]},"message":"packaging fix for yaml parser and pyoxidizer"},{"commit":"20f9b7f88b97ed68aba46e102b8c7b72443b9c85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"fix typo"},{"commit":"d7e32313cd9776b4a6af38cc2819d6e4ef8c0d55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"fix typo"},{"commit":"fb5654d3c4549e84940e2518f2d214debdd42d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"258f1433b36a7ee117ac43953edb4fe964603e7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add locale info to readme"},{"commit":"fb723ae8bd7bb51f9a4bab380ec1bc54cda0445b","merge":"87b506d 283b89e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #101 from kellyjonbrazil/dev\n\nDev v1.14.3"},{"commit":"283b89e37c38a3082203e43e38569c8b0bb11e12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["CHANGELOG","jc/parsers/dig.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/dig.py","lines_changed":6}]},"message":"simplify answer data logic"},{"commit":"f450f9eb8b7d382af316e88301e72af01a018be9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":74,"deletions":0,"files":["tests/fixtures/centos-7.7/hciconfig-a.json","tests/fixtures/centos-7.7/hciconfig.json","tests/fixtures/ubuntu-20.04/hciconfig-a.json","tests/fixtures/ubuntu-20.04/hciconfig.json","tests/test_hciconfig.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/hciconfig-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/hciconfig.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.04/hciconfig-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.04/hciconfig.json","lines_changed":1},{"name":"tests/test_hciconfig.py","lines_changed":70}]},"message":"add hciconfig tests"},{"commit":"b3f8cf99a4874335c6b43e105e0c1562c08256dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":15,"deletions":15,"files":["jc/parsers/hciconfig.py"],"file_stats":[{"name":"jc/parsers/hciconfig.py","lines_changed":30}]},"message":"work for both tabs and spaces"},{"commit":"4301ea8caea7c14f59bcddf09668d0198e1115a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/hciconfig.py"],"file_stats":[{"name":"jc/parsers/hciconfig.py","lines_changed":1}]},"message":"remove debug line"},{"commit":"c672d1c174a42ce44544dfaec0ebcf3c30fd7acf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":903,"deletions":22,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","docs/parsers/hciconfig.md","jc/parsers/hciconfig.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"EXAMPLES.md","lines_changed":126},{"name":"README.md","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/hciconfig.md","lines_changed":358},{"name":"jc/parsers/hciconfig.py","lines_changed":414},{"name":"man/jc.1","lines_changed":22}]},"message":"initial working hciconfig parser"},{"commit":"229e953a38471cdd41af0810577d324329840a4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":205,"deletions":2,"files":["jc/cli.py","jc/parsers/hciconfig.py","setup.py","tests/fixtures/centos-7.7/hciconfig-a.out","tests/fixtures/centos-7.7/hciconfig.out","tests/fixtures/ubuntu-20.04/hciconfig-a.out","tests/fixtures/ubuntu-20.04/hciconfig.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/hciconfig.py","lines_changed":142},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/hciconfig-a.out","lines_changed":10},{"name":"tests/fixtures/centos-7.7/hciconfig.out","lines_changed":6},{"name":"tests/fixtures/ubuntu-20.04/hciconfig-a.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-20.04/hciconfig.out","lines_changed":17}]},"message":"initial add of hciconfig parser"},{"commit":"87b506dc9b4831d11b4fd04fd6849532db074f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":47,"deletions":4,"files":["CHANGELOG","jc/cli.py","jc/parsers/dig.py","setup.py","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/generic/dig-answer-spaces.out","tests/test_dig.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":8},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/generic/dig-answer-spaces.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-answer-spaces.out","lines_changed":23},{"name":"tests/test_dig.py","lines_changed":12}]},"message":"fix for spaces in dig answer data"},{"commit":"15c9002d9eff0f52d873fb3ab35dfafd03a8e919","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"simplify logic by taking out 'not' in JC_COLORS parsing"},{"commit":"042aaa61b96fc8472a8a460c49bde4cbbc359094","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"minor updates"},{"commit":"ef856c6ba5774cd8ec23acd71496846e794e3872","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"clarify -q option"},{"commit":"9cf5be73e3f975132d1ffbef412638b941a5664f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"typo fix"},{"commit":"63fc149e2a097cbde60c2ce1aeb102d9becabd9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"typo fix"},{"commit":"3c25839350800c7e7d2c48fc032bb21efa0ac213","merge":"03c0295 58246e3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #98 from kellyjonbrazil/dev\n\nDev v1.14.1"},{"commit":"58246e33b71bae0ca4a42ad5bdf31134948b1014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","README.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"README.md","lines_changed":3}]},"message":"update compatibility info and changelog date"},{"commit":"8b1407c7068e2105a83992bbb026138ea67bc07c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":59,"deletions":10,"files":["runtests.sh","tests/localtest_last.py","tests/test_last.py"],"file_stats":[{"name":"runtests.sh","lines_changed":6},{"name":"tests/localtest_last.py","lines_changed":41},{"name":"tests/test_last.py","lines_changed":22}]},"message":"pull env-specific tests from CI/CD and run locally only"},{"commit":"2fde4a4e2299b98a9958e3a55849c6791e4b17dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["EXAMPLES.md","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"doc updates"},{"commit":"60b9e9798286121399d0f8b75d63ab0f3312c9bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":80,"deletions":38,"files":["docs/parsers/last.md","jc/parsers/last.py","tests/fixtures/centos-7.7/last-crash.json","tests/fixtures/centos-7.7/last-w.json","tests/fixtures/centos-7.7/last-wF.json","tests/fixtures/centos-7.7/last-wF.out","tests/fixtures/centos-7.7/last.json","tests/fixtures/fedora32/last.json","tests/fixtures/osx-10.14.6/last.json","tests/fixtures/ubuntu-18.04/last-w.json","tests/fixtures/ubuntu-18.04/last.json","tests/fixtures/ubuntu-20.04/last-F.json"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":37},{"name":"jc/parsers/last.py","lines_changed":57},{"name":"tests/fixtures/centos-7.7/last-crash.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/last-w.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/last-wF.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/last-wF.out","lines_changed":6},{"name":"tests/fixtures/centos-7.7/last.json","lines_changed":2},{"name":"tests/fixtures/fedora32/last.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/last.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/last-w.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/last.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/last-F.json","lines_changed":2}]},"message":"last parser enhancements: augment hostname with CONSOLE for GUI login, add convenience fields when -F is used: login_epoch, logout_epoch, duration_seconds, calculate duration to hours:minutes"},{"commit":"0adac79c0f2a22b31dfef1432a029af06132467b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"Add last parser enhancements"},{"commit":"9f485b5981a2ce49ac699b9dad39993c5605ae18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["jc/parsers/iw_scan.py","tests/fixtures/centos-7.7/iw-scan0.json","tests/fixtures/centos-7.7/iw-scan1.json"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":6},{"name":"tests/fixtures/centos-7.7/iw-scan0.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iw-scan1.json","lines_changed":2}]},"message":"change mac_address fieldname to bssid. Add credit to Phillip"},{"commit":"db17d21b8f9b2f899760e648f1483d33d0bcf47a","merge":"5885b96 996d394","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #97 from pschmitt/iw_scan_fix_space_detection\n\niw_scan: Improve detection of lines starting with spaces"},{"commit":"996d394e89c732f327323ca340fce405bd5fb2e4","author":"Philipp Schmitt","author_email":"philipp@schmitt.co","commit_by":"Philipp Schmitt","commit_by_email":"philipp@schmitt.co","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":3}]},"message":"iw_scan: Improve detection of lines starting with spaces"},{"commit":"5885b960f9b33a95ecec9f4a33233c2f8682fbc4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":2,"files":["CHANGELOG","README.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":2},{"name":"man/jc.1","lines_changed":4}]},"message":"doc updates"},{"commit":"79987b35f332e287567e103f25cf91cb50e040c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2}]},"message":"formatting"},{"commit":"661b3ef311ad26678030c70c11f2f955667311a4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":94,"deletions":2,"files":["EXAMPLES.md","README.md","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":91},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"doc updates"},{"commit":"fb422726a8366c7133f0712d3b05a26620eea785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["tests/fixtures/ubuntu-20.04/last-F.json","tests/fixtures/ubuntu-20.04/last-F.out"],"file_stats":[{"name":"tests/fixtures/ubuntu-20.04/last-F.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/last-F.out","lines_changed":1}]},"message":"update test to add 'down' condition"},{"commit":"4fb6f3ea59c52515926a51a006e65a1c18e57720","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":4}]},"message":"add support for down in addition to crash"},{"commit":"f78fe771e1c2fb4691858fa7f27b1febe5f8c6c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":48,"deletions":0,"files":["tests/fixtures/centos-7.7/iw-scan0.json","tests/fixtures/centos-7.7/iw-scan1.json","tests/test_iw_scan.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/iw-scan0.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iw-scan1.json","lines_changed":1},{"name":"tests/test_iw_scan.py","lines_changed":46}]},"message":"add iw-scan tests"},{"commit":"567b8872538ac9f6b384b98741acd9794229d513","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":252,"deletions":12,"files":["docgen.sh","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/iw_scan.md","lines_changed":160},{"name":"jc/parsers/iw_scan.py","lines_changed":103}]},"message":"doc updates"},{"commit":"e516e6b9466b29d40ec10070dd61551180eeef90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":29,"deletions":1,"files":["jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":30}]},"message":"fix country/environment fields and process int/float conversions"},{"commit":"62748676aae3d5955191ed267215df33a5bd3a4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":225,"deletions":0,"files":["jc/cli.py","jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/iw_scan.py","lines_changed":224}]},"message":"initial iw-scan parser"},{"commit":"7351c72e45242b9eb08c51dea7b6fccf12366dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":402,"deletions":1,"files":["jc/parsers/last.py","tests/fixtures/centos-7.7/last-crash.json","tests/fixtures/centos-7.7/last-crash.out","tests/fixtures/centos-7.7/last-wF.json","tests/fixtures/centos-7.7/last-wF.out","tests/test_last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":10},{"name":"tests/fixtures/centos-7.7/last-crash.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/last-crash.out","lines_changed":184},{"name":"tests/fixtures/centos-7.7/last-wF.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/last-wF.out","lines_changed":184},{"name":"tests/test_last.py","lines_changed":23}]},"message":"add fixes and tests for entries that contain 'crash'"},{"commit":"2b7405c5e21db2488fc48b58f6c65cff947ca95d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":23,"deletions":16,"files":["CHANGELOG","README.md","docs/parsers/last.md","jc/parsers/last.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":6},{"name":"jc/parsers/last.py","lines_changed":6},{"name":"man/jc.1","lines_changed":22}]},"message":"doc updates"},{"commit":"e2c77cb935a5bd95dbe930d424e5a02e88e1fa76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":15,"deletions":1,"files":["jc/parsers/last.py","tests/fixtures/ubuntu-20.04/last-F.json","tests/test_last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":3},{"name":"tests/fixtures/ubuntu-20.04/last-F.json","lines_changed":1},{"name":"tests/test_last.py","lines_changed":12}]},"message":"add test for last -F output"},{"commit":"7ac621e4c916373a03f379425033cb2d81a03578","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":36,"deletions":6,"files":["docs/parsers/last.md","jc/parsers/last.py","tests/fixtures/ubuntu-20.04/last-F.out"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":6},{"name":"jc/parsers/last.py","lines_changed":30},{"name":"tests/fixtures/ubuntu-20.04/last-F.out","lines_changed":6}]},"message":"add -F support"},{"commit":"d8b5d6c66ced19dc16f2b4975d2293a903732ffe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/cli.py","setup.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to 1.14.1"},{"commit":"22b461eb4b1ca86ea9e8c1fde8a2c312d1526b5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":47,"deletions":12,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/test_date.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":1},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":40},{"name":"tests/fixtures/generic/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date.json","lines_changed":1},{"name":"tests/test_date.py","lines_changed":12}]},"message":"Add period field for en_US.UTF-8 locale"},{"commit":"b37ee8555a2a108625a834a7990bc3320e79b08d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":6}]},"message":"changelog update"},{"commit":"1d0ad2f045733c5c690738d49951fdb9bcd3d66d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":123,"insertions":312,"deletions":312,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat_freebsd_osx.py","jc/parsers/netstat_linux.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":6},{"name":"docs/parsers/arp.md","lines_changed":6},{"name":"docs/parsers/blkid.md","lines_changed":6},{"name":"docs/parsers/cksum.md","lines_changed":6},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":6},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":6},{"name":"docs/parsers/dig.md","lines_changed":6},{"name":"docs/parsers/dmidecode.md","lines_changed":6},{"name":"docs/parsers/du.md","lines_changed":6},{"name":"docs/parsers/env.md","lines_changed":6},{"name":"docs/parsers/file.md","lines_changed":6},{"name":"docs/parsers/free.md","lines_changed":6},{"name":"docs/parsers/fstab.md","lines_changed":6},{"name":"docs/parsers/group.md","lines_changed":6},{"name":"docs/parsers/gshadow.md","lines_changed":6},{"name":"docs/parsers/hash.md","lines_changed":6},{"name":"docs/parsers/hashsum.md","lines_changed":6},{"name":"docs/parsers/history.md","lines_changed":6},{"name":"docs/parsers/hosts.md","lines_changed":6},{"name":"docs/parsers/id.md","lines_changed":4},{"name":"docs/parsers/ifconfig.md","lines_changed":6},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":6},{"name":"docs/parsers/jobs.md","lines_changed":6},{"name":"docs/parsers/last.md","lines_changed":6},{"name":"docs/parsers/ls.md","lines_changed":6},{"name":"docs/parsers/lsblk.md","lines_changed":6},{"name":"docs/parsers/lsmod.md","lines_changed":6},{"name":"docs/parsers/lsof.md","lines_changed":6},{"name":"docs/parsers/mount.md","lines_changed":6},{"name":"docs/parsers/netstat.md","lines_changed":6},{"name":"docs/parsers/ntpq.md","lines_changed":6},{"name":"docs/parsers/passwd.md","lines_changed":6},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":6},{"name":"docs/parsers/pip_show.md","lines_changed":6},{"name":"docs/parsers/ps.md","lines_changed":6},{"name":"docs/parsers/route.md","lines_changed":6},{"name":"docs/parsers/shadow.md","lines_changed":6},{"name":"docs/parsers/ss.md","lines_changed":6},{"name":"docs/parsers/stat.md","lines_changed":6},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":6},{"name":"docs/parsers/systemctl_lj.md","lines_changed":6},{"name":"docs/parsers/systemctl_ls.md","lines_changed":6},{"name":"docs/parsers/systemctl_luf.md","lines_changed":6},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":6},{"name":"docs/parsers/wc.md","lines_changed":6},{"name":"docs/parsers/who.md","lines_changed":6},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":6},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":6},{"name":"jc/parsers/arp.py","lines_changed":6},{"name":"jc/parsers/blkid.py","lines_changed":6},{"name":"jc/parsers/cksum.py","lines_changed":6},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"jc/parsers/csv.py","lines_changed":6},{"name":"jc/parsers/date.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":6},{"name":"jc/parsers/dig.py","lines_changed":6},{"name":"jc/parsers/dmidecode.py","lines_changed":6},{"name":"jc/parsers/du.py","lines_changed":6},{"name":"jc/parsers/env.py","lines_changed":6},{"name":"jc/parsers/file.py","lines_changed":6},{"name":"jc/parsers/foo.py","lines_changed":6},{"name":"jc/parsers/free.py","lines_changed":6},{"name":"jc/parsers/fstab.py","lines_changed":6},{"name":"jc/parsers/group.py","lines_changed":6},{"name":"jc/parsers/gshadow.py","lines_changed":6},{"name":"jc/parsers/hash.py","lines_changed":6},{"name":"jc/parsers/hashsum.py","lines_changed":6},{"name":"jc/parsers/history.py","lines_changed":6},{"name":"jc/parsers/hosts.py","lines_changed":6},{"name":"jc/parsers/id.py","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":6},{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":6},{"name":"jc/parsers/jobs.py","lines_changed":6},{"name":"jc/parsers/last.py","lines_changed":6},{"name":"jc/parsers/ls.py","lines_changed":6},{"name":"jc/parsers/lsblk.py","lines_changed":6},{"name":"jc/parsers/lsmod.py","lines_changed":6},{"name":"jc/parsers/lsof.py","lines_changed":6},{"name":"jc/parsers/mount.py","lines_changed":6},{"name":"jc/parsers/netstat.py","lines_changed":6},{"name":"jc/parsers/netstat_freebsd_osx.py","lines_changed":2},{"name":"jc/parsers/netstat_linux.py","lines_changed":2},{"name":"jc/parsers/ntpq.py","lines_changed":6},{"name":"jc/parsers/passwd.py","lines_changed":6},{"name":"jc/parsers/ping.py","lines_changed":4},{"name":"jc/parsers/pip_list.py","lines_changed":6},{"name":"jc/parsers/pip_show.py","lines_changed":6},{"name":"jc/parsers/ps.py","lines_changed":6},{"name":"jc/parsers/route.py","lines_changed":6},{"name":"jc/parsers/shadow.py","lines_changed":6},{"name":"jc/parsers/ss.py","lines_changed":6},{"name":"jc/parsers/stat.py","lines_changed":6},{"name":"jc/parsers/sysctl.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":6},{"name":"jc/parsers/systemctl_lj.py","lines_changed":6},{"name":"jc/parsers/systemctl_ls.py","lines_changed":6},{"name":"jc/parsers/systemctl_luf.py","lines_changed":6},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":6},{"name":"jc/parsers/wc.py","lines_changed":6},{"name":"jc/parsers/who.py","lines_changed":6},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":6}]},"message":"doc fixes"},{"commit":"ceccfb2c815f57f1b6fd81f891d8b495de23f9f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":2036,"deletions":0,"files":["tests/fixtures/centos-7.7/iw-scan0.out","tests/fixtures/centos-7.7/iw-scan1.out","tests/fixtures/ubuntu-20.04/date.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/iw-scan0.out","lines_changed":36},{"name":"tests/fixtures/centos-7.7/iw-scan1.out","lines_changed":1999},{"name":"tests/fixtures/ubuntu-20.04/date.out","lines_changed":1}]},"message":"add test output for iw-scan and date on ubuntu 20.04"},{"commit":"03c02953cd7e3327b391f799c37a2990eb2cb24c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":96,"deletions":0,"files":["docgen.sh","docs/parsers/wc.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/wc.md","lines_changed":95}]},"message":"add wc doc"},{"commit":"f254a0eaa16fcda316f7a75424ee359058204b03","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"9e3b88727cd439e15f235dddb9dd5796e010797a","merge":"439871e b122174","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #91 from kellyjonbrazil/dev\n\nDev v1.14.0"},{"commit":"b12217466e906829d19be4cfd80dfe7cf4008e57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"spelling"},{"commit":"8b9c932f9b05295e63b3e7d0073f243458fd4dd9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"update date"},{"commit":"5986ce03db6fcd1aa0f7b064eaa96c2120c06d2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add printenv info"},{"commit":"a7b0e936e400d2f9e55629e2d722cc002e035e9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"add vdir and printenv info"},{"commit":"cb0221142455a6bcb904fbe9ade657be45815b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":61,"deletions":2,"files":["jc/parsers/wc.py","tests/fixtures/osx-10.14.6/wc-stdin.json","tests/fixtures/osx-10.14.6/wc-stdin.out","tests/test_wc.py"],"file_stats":[{"name":"jc/parsers/wc.py","lines_changed":3},{"name":"tests/fixtures/osx-10.14.6/wc-stdin.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/wc-stdin.out","lines_changed":1},{"name":"tests/test_wc.py","lines_changed":58}]},"message":"add wc tests"},{"commit":"bd443bf39227515ae5f8df65d07b30268dcc90a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/env.py"],"file_stats":[{"name":"jc/parsers/env.py","lines_changed":4}]},"message":"add printenv to env docs"},{"commit":"1f547edd361e66b19ccbcb59f6ba0ae78f6080ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/env.md"],"file_stats":[{"name":"docs/parsers/env.md","lines_changed":2}]},"message":"add printenv to env docs"},{"commit":"e4bac3a493705b09e301ddc90dd1b0cee7467c3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":378,"deletions":0,"files":["CHANGELOG","EXAMPLES.md","README.md","jc/cli.py","jc/parsers/wc.py","tests/fixtures/centos-7.7/wc.json","tests/fixtures/centos-7.7/wc.out","tests/fixtures/osx-10.14.6/wc.json","tests/fixtures/osx-10.14.6/wc.out"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":26},{"name":"README.md","lines_changed":1},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/wc.py","lines_changed":130},{"name":"tests/fixtures/centos-7.7/wc.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/wc.out","lines_changed":67},{"name":"tests/fixtures/osx-10.14.6/wc.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/wc.out","lines_changed":150}]},"message":"add wc parser"},{"commit":"5e6bfa681aff03fbd683f81a9f4daa56b49d1344","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["README.md","docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":6}]},"message":"add vdir info"},{"commit":"276160125e01553c75eaad68530177bcf4f9004d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"add new commands to README"},{"commit":"d4ae5543f2d5f28a0db5b8e2e19993c21c5d960c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":39,"deletions":0,"files":["tests/fixtures/centos-7.7/hash.json","tests/fixtures/centos-7.7/hash.out","tests/test_hash.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/hash.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/hash.out","lines_changed":4},{"name":"tests/test_hash.py","lines_changed":34}]},"message":"add hash tests"},{"commit":"55f360e267fdfcfef0c124ed6b88535cc181a8b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":260,"deletions":0,"files":["CHANGELOG","EXAMPLES.md","docgen.sh","docs/parsers/hash.md","jc/cli.py","jc/parsers/hash.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":71},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/hash.md","lines_changed":78},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/hash.py","lines_changed":108}]},"message":"add hash command parser"},{"commit":"fdedab2a0cf5af15df5803d87302397dd6d71741","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/cksum.py","jc/parsers/hashsum.py"],"file_stats":[{"name":"jc/parsers/cksum.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":2}]},"message":"description updates"},{"commit":"a9be42e3031ab0d697cff67a9e384caa2265a3ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"specify parser warnings for quiet option"},{"commit":"6da9510e46e84ec1cb93384825184d2996cf0e08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":482,"deletions":0,"files":["tests/fixtures/centos-7.7/cksum.json","tests/fixtures/centos-7.7/cksum.out","tests/fixtures/centos-7.7/sum.json","tests/fixtures/centos-7.7/sum.out","tests/fixtures/osx-10.14.6/cksum.json","tests/fixtures/osx-10.14.6/cksum.out","tests/fixtures/osx-10.14.6/sum.json","tests/fixtures/osx-10.14.6/sum.out","tests/test_cksum.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/cksum.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/cksum.out","lines_changed":59},{"name":"tests/fixtures/centos-7.7/sum.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sum.out","lines_changed":58},{"name":"tests/fixtures/osx-10.14.6/cksum.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/cksum.out","lines_changed":145},{"name":"tests/fixtures/osx-10.14.6/sum.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/sum.out","lines_changed":146},{"name":"tests/test_cksum.py","lines_changed":70}]},"message":"add cksum tests"},{"commit":"0431798178740b03cdefececc6df958e5adf62fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":229,"deletions":3,"files":["CHANGELOG","docgen.sh","docs/parsers/cksum.md","docs/parsers/hashsum.md","jc/cli.py","jc/parsers/cksum.py","jc/parsers/hashsum.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/cksum.md","lines_changed":95},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/cksum.py","lines_changed":128},{"name":"jc/parsers/hashsum.py","lines_changed":2}]},"message":"add cksum parser"},{"commit":"62432f3c484e74acb2b2dfd15d448b3f1b5d53c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/hashsum.py"],"file_stats":[{"name":"jc/parsers/hashsum.py","lines_changed":2}]},"message":"update hashsum description"},{"commit":"9fbbc30906b597e6afaf2030015a7a694d85f79e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":0,"files":["docs/parsers/hashsum.md","jc/parsers/hashsum.py"],"file_stats":[{"name":"docs/parsers/hashsum.md","lines_changed":10},{"name":"jc/parsers/hashsum.py","lines_changed":10}]},"message":"add supported commands to docs"},{"commit":"d1567d1f622902053f3df58645b4e39532e0c30a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":104,"deletions":0,"files":["CHANGELOG","docgen.sh","docs/parsers/hashsum.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":4},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/hashsum.md","lines_changed":99}]},"message":"add hashsum documentation"},{"commit":"6ca1f5970b3a518615a54ee7fcbc1bddab2db331","merge":"1c880b9 3b7d54c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"1c880b9e24ca53cd592cec1dbc52301308290fb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_hashsum.py"],"file_stats":[{"name":"tests/test_hashsum.py","lines_changed":2}]},"message":"force git tests"},{"commit":"3b7d54c720dfc93637328cf06eb10a85447c8793","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"add python 3.9"},{"commit":"44a740605705bd0ecfde2a6bcc7a826e1010dcf0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":87,"deletions":0,"files":["tests/fixtures/centos-7.7/md5sum.json","tests/fixtures/centos-7.7/sha256sum.json","tests/fixtures/centos-7.7/sha384sum.json","tests/fixtures/osx-10.14.6/md5.json","tests/fixtures/osx-10.14.6/shasum.json","tests/test_hashsum.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/md5sum.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sha256sum.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sha384sum.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/md5.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/shasum.json","lines_changed":1},{"name":"tests/test_hashsum.py","lines_changed":82}]},"message":"add hashsum tests"},{"commit":"8157dcfdb1868548b7c8ca692e6be25f80bb2c2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":36,"deletions":11,"files":["jc/parsers/hashsum.py"],"file_stats":[{"name":"jc/parsers/hashsum.py","lines_changed":47}]},"message":"fix for files with spaces in the name"},{"commit":"28762aea15cabc9cd8293d725e7f1f0550f8e15d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":524,"deletions":0,"files":["jc/cli.py","jc/parsers/hashsum.py","tests/fixtures/centos-7.7/md5sum.out","tests/fixtures/centos-7.7/sha256sum.out","tests/fixtures/centos-7.7/sha384sum.out","tests/fixtures/osx-10.14.6/md5.out","tests/fixtures/osx-10.14.6/shasum.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/hashsum.py","lines_changed":110},{"name":"tests/fixtures/centos-7.7/md5sum.out","lines_changed":56},{"name":"tests/fixtures/centos-7.7/sha256sum.out","lines_changed":55},{"name":"tests/fixtures/centos-7.7/sha384sum.out","lines_changed":56},{"name":"tests/fixtures/osx-10.14.6/md5.out","lines_changed":104},{"name":"tests/fixtures/osx-10.14.6/shasum.out","lines_changed":142}]},"message":"add hashsum parser"},{"commit":"439871ea9f6b055a407e1faaf47e4f56d1829501","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add ubuntu"},{"commit":"c9180b005c0547c8cbfe4809e66894f1123b0809","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"b14e0725f86853f0113116b1c06f54aaa563f365","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add ansible plugin blog post link"},{"commit":"70fe3dcb4d5b97aba1d6c6dcd5088fecb27af181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"8c554604a42a3ea7ca9131b65c64fd3ceb95f906","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"formatting"},{"commit":"a0a35454bd2831c116cb598c686150b883412f94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add link to the web demo"},{"commit":"e8467e2af5b0c3f14832a9e6d4a96f219c27f3f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"remove extra space"},{"commit":"7515deb5669ef04623e9cbf58653b30c99a96430","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add ansible install command"},{"commit":"ed9e52af241b609ee7f5d1b835c9f6c5306cd3c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"spelling"},{"commit":"592a3804104628c790997747a778b3b39d076dfe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add Ansible note"},{"commit":"1a458d2d5b4c16c0ad90671727ae9b19939e7f23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2}]},"message":"update link"},{"commit":"0e4cf53b92ff951a6390a4dacf8833c272473583","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2}]},"message":"add parser docs link"},{"commit":"e2f06ccb33177173d984bc0cdda1aae1a3f4c681","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"formatting"},{"commit":"8abff004cd8e09529e5d94be4883308152e11565","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/yaml.md"],"file_stats":[{"name":"docs/parsers/yaml.md","lines_changed":2}]},"message":"indentation fix"},{"commit":"c4a0e2e3feb2e51eaaaa202064f352229017bcc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"fix indentation"},{"commit":"4f10f79c73f8b3d6edc2c83e6a12d0ddc1a78555","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":8,"files":["docs/parsers/uname.md","jc/parsers/uname.py"],"file_stats":[{"name":"docs/parsers/uname.md","lines_changed":6},{"name":"jc/parsers/uname.py","lines_changed":6}]},"message":"standardize doc"},{"commit":"69e7a560fd82337570c4bb4aa4780f513c18bd94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":8,"deletions":0,"files":["docs/parsers/env.md","docs/parsers/history.md","jc/parsers/env.py","jc/parsers/history.py"],"file_stats":[{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2}]},"message":"add output info to docs"},{"commit":"59b105580805d78516abe1c1069d52a6f0a8131a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":97,"insertions":564,"deletions":269,"files":["docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":12},{"name":"docs/parsers/blkid.md","lines_changed":8},{"name":"docs/parsers/crontab.md","lines_changed":10},{"name":"docs/parsers/crontab_u.md","lines_changed":6},{"name":"docs/parsers/csv.md","lines_changed":9},{"name":"docs/parsers/date.md","lines_changed":8},{"name":"docs/parsers/df.md","lines_changed":8},{"name":"docs/parsers/dig.md","lines_changed":8},{"name":"docs/parsers/dmidecode.md","lines_changed":8},{"name":"docs/parsers/du.md","lines_changed":8},{"name":"docs/parsers/env.md","lines_changed":8},{"name":"docs/parsers/file.md","lines_changed":8},{"name":"docs/parsers/free.md","lines_changed":8},{"name":"docs/parsers/fstab.md","lines_changed":4},{"name":"docs/parsers/group.md","lines_changed":4},{"name":"docs/parsers/gshadow.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":4},{"name":"docs/parsers/hosts.md","lines_changed":4},{"name":"docs/parsers/id.md","lines_changed":8},{"name":"docs/parsers/ifconfig.md","lines_changed":10},{"name":"docs/parsers/ini.md","lines_changed":10},{"name":"docs/parsers/iptables.md","lines_changed":10},{"name":"docs/parsers/jobs.md","lines_changed":10},{"name":"docs/parsers/kv.md","lines_changed":11},{"name":"docs/parsers/last.md","lines_changed":8},{"name":"docs/parsers/ls.md","lines_changed":21},{"name":"docs/parsers/lsblk.md","lines_changed":8},{"name":"docs/parsers/lsmod.md","lines_changed":8},{"name":"docs/parsers/lsof.md","lines_changed":8},{"name":"docs/parsers/mount.md","lines_changed":8},{"name":"docs/parsers/netstat.md","lines_changed":17},{"name":"docs/parsers/ntpq.md","lines_changed":8},{"name":"docs/parsers/passwd.md","lines_changed":4},{"name":"docs/parsers/ping.md","lines_changed":12},{"name":"docs/parsers/pip_list.md","lines_changed":8},{"name":"docs/parsers/pip_show.md","lines_changed":8},{"name":"docs/parsers/ps.md","lines_changed":14},{"name":"docs/parsers/route.md","lines_changed":8},{"name":"docs/parsers/shadow.md","lines_changed":4},{"name":"docs/parsers/ss.md","lines_changed":8},{"name":"docs/parsers/stat.md","lines_changed":8},{"name":"docs/parsers/sysctl.md","lines_changed":16},{"name":"docs/parsers/systemctl.md","lines_changed":8},{"name":"docs/parsers/systemctl_lj.md","lines_changed":8},{"name":"docs/parsers/systemctl_ls.md","lines_changed":8},{"name":"docs/parsers/systemctl_luf.md","lines_changed":8},{"name":"docs/parsers/timedatectl.md","lines_changed":8},{"name":"docs/parsers/tracepath.md","lines_changed":10},{"name":"docs/parsers/traceroute.md","lines_changed":16},{"name":"docs/parsers/uname.md","lines_changed":8},{"name":"docs/parsers/uptime.md","lines_changed":8},{"name":"docs/parsers/w.md","lines_changed":8},{"name":"docs/parsers/who.md","lines_changed":10},{"name":"docs/parsers/xml.md","lines_changed":4},{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"jc/parsers/group.py","lines_changed":4},{"name":"jc/parsers/gshadow.py","lines_changed":4},{"name":"jc/parsers/history.py","lines_changed":4},{"name":"jc/parsers/hosts.py","lines_changed":4},{"name":"jc/parsers/id.py","lines_changed":8},{"name":"jc/parsers/ifconfig.py","lines_changed":10},{"name":"jc/parsers/ini.py","lines_changed":10},{"name":"jc/parsers/iptables.py","lines_changed":10},{"name":"jc/parsers/jobs.py","lines_changed":10},{"name":"jc/parsers/kv.py","lines_changed":11},{"name":"jc/parsers/last.py","lines_changed":8},{"name":"jc/parsers/ls.py","lines_changed":21},{"name":"jc/parsers/lsblk.py","lines_changed":8},{"name":"jc/parsers/lsmod.py","lines_changed":8},{"name":"jc/parsers/lsof.py","lines_changed":8},{"name":"jc/parsers/mount.py","lines_changed":8},{"name":"jc/parsers/netstat.py","lines_changed":17},{"name":"jc/parsers/ntpq.py","lines_changed":8},{"name":"jc/parsers/passwd.py","lines_changed":4},{"name":"jc/parsers/ping.py","lines_changed":12},{"name":"jc/parsers/pip_list.py","lines_changed":8},{"name":"jc/parsers/pip_show.py","lines_changed":8},{"name":"jc/parsers/ps.py","lines_changed":14},{"name":"jc/parsers/route.py","lines_changed":8},{"name":"jc/parsers/shadow.py","lines_changed":4},{"name":"jc/parsers/ss.py","lines_changed":8},{"name":"jc/parsers/stat.py","lines_changed":8},{"name":"jc/parsers/sysctl.py","lines_changed":16},{"name":"jc/parsers/systemctl.py","lines_changed":8},{"name":"jc/parsers/systemctl_lj.py","lines_changed":8},{"name":"jc/parsers/systemctl_ls.py","lines_changed":8},{"name":"jc/parsers/systemctl_luf.py","lines_changed":8},{"name":"jc/parsers/timedatectl.py","lines_changed":8},{"name":"jc/parsers/tracepath.py","lines_changed":10},{"name":"jc/parsers/traceroute.py","lines_changed":16},{"name":"jc/parsers/uname.py","lines_changed":8},{"name":"jc/parsers/uptime.py","lines_changed":8},{"name":"jc/parsers/w.py","lines_changed":8},{"name":"jc/parsers/who.py","lines_changed":10},{"name":"jc/parsers/xml.py","lines_changed":4},{"name":"jc/parsers/yaml.py","lines_changed":4}]},"message":"enhance docs"},{"commit":"6ed48c6289214fe5114971c80772efdf9ac1b8c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":16,"insertions":88,"deletions":37,"files":["jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py"],"file_stats":[{"name":"jc/parsers/airport_s.py","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":12},{"name":"jc/parsers/blkid.py","lines_changed":8},{"name":"jc/parsers/crontab.py","lines_changed":10},{"name":"jc/parsers/crontab_u.py","lines_changed":6},{"name":"jc/parsers/csv.py","lines_changed":9},{"name":"jc/parsers/date.py","lines_changed":8},{"name":"jc/parsers/df.py","lines_changed":8},{"name":"jc/parsers/dig.py","lines_changed":8},{"name":"jc/parsers/dmidecode.py","lines_changed":8},{"name":"jc/parsers/du.py","lines_changed":8},{"name":"jc/parsers/env.py","lines_changed":8},{"name":"jc/parsers/file.py","lines_changed":8},{"name":"jc/parsers/foo.py","lines_changed":10},{"name":"jc/parsers/free.py","lines_changed":8},{"name":"jc/parsers/fstab.py","lines_changed":4}]},"message":"enhance docs"},{"commit":"f2fb4d3f415fbc1c09eec6dedcf70fba78406b3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","jc/parsers/airport.py","jc/parsers/airport_s.py"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":2}]},"message":"improve docs"},{"commit":"6aeea59ea84e56434e87ddf89cd5d4435b99e140","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":8,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":11},{"name":"docs/parsers/airport_s.md","lines_changed":11}]},"message":"doc updates"},{"commit":"d016f3bbb307f85bd0f93a508323941a8bb9d872","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":8,"files":["jc/parsers/airport.py","jc/parsers/airport_s.py"],"file_stats":[{"name":"jc/parsers/airport.py","lines_changed":11},{"name":"jc/parsers/airport_s.py","lines_changed":11}]},"message":"improve documentation"},{"commit":"7131c297180bfa195d0209d46fc70ab8e67efe2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":114,"insertions":686,"deletions":116,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":7},{"name":"docs/parsers/airport_s.md","lines_changed":7},{"name":"docs/parsers/arp.md","lines_changed":7},{"name":"docs/parsers/crontab.md","lines_changed":7},{"name":"docs/parsers/crontab_u.md","lines_changed":7},{"name":"docs/parsers/csv.md","lines_changed":7},{"name":"docs/parsers/date.md","lines_changed":7},{"name":"docs/parsers/df.md","lines_changed":7},{"name":"docs/parsers/dig.md","lines_changed":7},{"name":"docs/parsers/dmidecode.md","lines_changed":7},{"name":"docs/parsers/du.md","lines_changed":7},{"name":"docs/parsers/env.md","lines_changed":7},{"name":"docs/parsers/file.md","lines_changed":7},{"name":"docs/parsers/free.md","lines_changed":7},{"name":"docs/parsers/fstab.md","lines_changed":7},{"name":"docs/parsers/group.md","lines_changed":7},{"name":"docs/parsers/gshadow.md","lines_changed":7},{"name":"docs/parsers/history.md","lines_changed":7},{"name":"docs/parsers/hosts.md","lines_changed":7},{"name":"docs/parsers/id.md","lines_changed":7},{"name":"docs/parsers/ifconfig.md","lines_changed":7},{"name":"docs/parsers/ini.md","lines_changed":7},{"name":"docs/parsers/iptables.md","lines_changed":7},{"name":"docs/parsers/jobs.md","lines_changed":7},{"name":"docs/parsers/kv.md","lines_changed":7},{"name":"docs/parsers/last.md","lines_changed":7},{"name":"docs/parsers/ls.md","lines_changed":7},{"name":"docs/parsers/lsblk.md","lines_changed":7},{"name":"docs/parsers/lsmod.md","lines_changed":7},{"name":"docs/parsers/lsof.md","lines_changed":7},{"name":"docs/parsers/mount.md","lines_changed":7},{"name":"docs/parsers/netstat.md","lines_changed":7},{"name":"docs/parsers/ntpq.md","lines_changed":7},{"name":"docs/parsers/passwd.md","lines_changed":7},{"name":"docs/parsers/ping.md","lines_changed":7},{"name":"docs/parsers/pip_list.md","lines_changed":7},{"name":"docs/parsers/pip_show.md","lines_changed":7},{"name":"docs/parsers/ps.md","lines_changed":7},{"name":"docs/parsers/route.md","lines_changed":7},{"name":"docs/parsers/shadow.md","lines_changed":7},{"name":"docs/parsers/ss.md","lines_changed":7},{"name":"docs/parsers/stat.md","lines_changed":7},{"name":"docs/parsers/sysctl.md","lines_changed":7},{"name":"docs/parsers/systemctl.md","lines_changed":7},{"name":"docs/parsers/systemctl_lj.md","lines_changed":7},{"name":"docs/parsers/systemctl_ls.md","lines_changed":7},{"name":"docs/parsers/systemctl_luf.md","lines_changed":7},{"name":"docs/parsers/timedatectl.md","lines_changed":7},{"name":"docs/parsers/tracepath.md","lines_changed":7},{"name":"docs/parsers/traceroute.md","lines_changed":7},{"name":"docs/parsers/uname.md","lines_changed":9},{"name":"docs/parsers/uptime.md","lines_changed":7},{"name":"docs/parsers/w.md","lines_changed":7},{"name":"docs/parsers/who.md","lines_changed":7},{"name":"docs/parsers/xml.md","lines_changed":7},{"name":"docs/parsers/yaml.md","lines_changed":7},{"name":"jc/parsers/airport.py","lines_changed":7},{"name":"jc/parsers/airport_s.py","lines_changed":7},{"name":"jc/parsers/arp.py","lines_changed":7},{"name":"jc/parsers/blkid.py","lines_changed":7},{"name":"jc/parsers/crontab.py","lines_changed":7},{"name":"jc/parsers/crontab_u.py","lines_changed":7},{"name":"jc/parsers/csv.py","lines_changed":7},{"name":"jc/parsers/date.py","lines_changed":7},{"name":"jc/parsers/df.py","lines_changed":7},{"name":"jc/parsers/dig.py","lines_changed":7},{"name":"jc/parsers/dmidecode.py","lines_changed":7},{"name":"jc/parsers/du.py","lines_changed":7},{"name":"jc/parsers/env.py","lines_changed":7},{"name":"jc/parsers/file.py","lines_changed":7},{"name":"jc/parsers/foo.py","lines_changed":7},{"name":"jc/parsers/free.py","lines_changed":7},{"name":"jc/parsers/fstab.py","lines_changed":7},{"name":"jc/parsers/group.py","lines_changed":7},{"name":"jc/parsers/gshadow.py","lines_changed":7},{"name":"jc/parsers/history.py","lines_changed":7},{"name":"jc/parsers/hosts.py","lines_changed":7},{"name":"jc/parsers/id.py","lines_changed":7},{"name":"jc/parsers/ifconfig.py","lines_changed":7},{"name":"jc/parsers/ini.py","lines_changed":7},{"name":"jc/parsers/iptables.py","lines_changed":7},{"name":"jc/parsers/jobs.py","lines_changed":7},{"name":"jc/parsers/kv.py","lines_changed":7},{"name":"jc/parsers/last.py","lines_changed":7},{"name":"jc/parsers/ls.py","lines_changed":7},{"name":"jc/parsers/lsblk.py","lines_changed":7},{"name":"jc/parsers/lsmod.py","lines_changed":7},{"name":"jc/parsers/lsof.py","lines_changed":7},{"name":"jc/parsers/mount.py","lines_changed":7},{"name":"jc/parsers/netstat.py","lines_changed":7},{"name":"jc/parsers/ntpq.py","lines_changed":7},{"name":"jc/parsers/passwd.py","lines_changed":7},{"name":"jc/parsers/ping.py","lines_changed":7},{"name":"jc/parsers/pip_list.py","lines_changed":7},{"name":"jc/parsers/pip_show.py","lines_changed":7},{"name":"jc/parsers/ps.py","lines_changed":7},{"name":"jc/parsers/route.py","lines_changed":7},{"name":"jc/parsers/shadow.py","lines_changed":7},{"name":"jc/parsers/ss.py","lines_changed":7},{"name":"jc/parsers/stat.py","lines_changed":7},{"name":"jc/parsers/sysctl.py","lines_changed":7},{"name":"jc/parsers/systemctl.py","lines_changed":7},{"name":"jc/parsers/systemctl_lj.py","lines_changed":7},{"name":"jc/parsers/systemctl_ls.py","lines_changed":7},{"name":"jc/parsers/systemctl_luf.py","lines_changed":7},{"name":"jc/parsers/timedatectl.py","lines_changed":7},{"name":"jc/parsers/tracepath.py","lines_changed":7},{"name":"jc/parsers/traceroute.py","lines_changed":7},{"name":"jc/parsers/uname.py","lines_changed":9},{"name":"jc/parsers/uptime.py","lines_changed":7},{"name":"jc/parsers/w.py","lines_changed":7},{"name":"jc/parsers/who.py","lines_changed":7},{"name":"jc/parsers/xml.py","lines_changed":7},{"name":"jc/parsers/yaml.py","lines_changed":7}]},"message":"add module usage info to docs"},{"commit":"7432442983841b42c8d3d2459b55596c05d1e100","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["docs/parsers/blkid.md"],"file_stats":[{"name":"docs/parsers/blkid.md","lines_changed":7}]},"message":"add usage"},{"commit":"5344883394a0662ee16bb5edd68df8e4410025f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"spelling/add ping parser update"},{"commit":"3fcd2f6c2e015b0e65e7261c8e591ccd8a7d0e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/cli.py","setup.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"f3d84bd5bf06349b681e9b72d904676e9f6bca19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":21,"deletions":3,"files":["CHANGELOG","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/fixtures/debian10/crontab-u.json","tests/fixtures/debian10/crontab-u.out","tests/test_crontab_u.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":4},{"name":"tests/fixtures/debian10/crontab-u.json","lines_changed":1},{"name":"tests/fixtures/debian10/crontab-u.out","lines_changed":2},{"name":"tests/test_crontab_u.py","lines_changed":12}]},"message":"tighten crontab and crontab-u parser variable detection"},{"commit":"549780c23220bca3bcab58d7329ba8d44d1be55d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"add debian/apt-get info"},{"commit":"2a6da69b82aa9ade6c01d490a32b57b415c62a9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":4}]},"message":"improve linux/bsd check"},{"commit":"5c538816cf76686bac1a86a7c06e24664d25a2dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":55,"deletions":4,"files":["CHANGELOG","jc/cli.py","jc/parsers/ping.py","setup.py","tests/fixtures/pi/ping-ip-O-D.json","tests/fixtures/pi/ping-ip-O-D.out","tests/fixtures/pi/ping-ip-O.json","tests/fixtures/pi/ping-ip-O.out","tests/test_ping.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/ping.py","lines_changed":4},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/pi/ping-ip-O-D.json","lines_changed":1},{"name":"tests/fixtures/pi/ping-ip-O-D.out","lines_changed":10},{"name":"tests/fixtures/pi/ping-ip-O.json","lines_changed":1},{"name":"tests/fixtures/pi/ping-ip-O.out","lines_changed":10},{"name":"tests/test_ping.py","lines_changed":26}]},"message":"ping parser fix for raspberry pi"},{"commit":"7b8b378a7df397c488fc54fbd6e77f5f3f23c10c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":1}]},"message":"add pydoc-markdown version requirement"},{"commit":"e30a75e25c4b43969bf9f874f89e18512a5e3a34","merge":"dda517a 85ad5cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #76 from kellyjonbrazil/dev\n\nDev v1.13.2"},{"commit":"85ad5cfd0bfb903ce35e37b343244fed88dbd979","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"date change"},{"commit":"88b9d5068c5bac0691fedb543114300d6afc7131","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":74,"deletions":15,"files":["EXAMPLES.md","README.md","docs/parsers/date.md","tests/fixtures/generic/date.json","tests/fixtures/generic/date.out","tests/test_date.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":18},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/date.md","lines_changed":34},{"name":"tests/fixtures/generic/date.json","lines_changed":1},{"name":"tests/fixtures/generic/date.out","lines_changed":1},{"name":"tests/test_date.py","lines_changed":34}]},"message":"finish date parser"},{"commit":"f8c4948a090642db595eda2ba2ea0773e560ba67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":1}]},"message":"remove comment"},{"commit":"412322447f019aec0b64888631bc965e9f21186d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":48,"deletions":17,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":65}]},"message":"add month_num and weekday_num fields"},{"commit":"d4f289e40fae621b87f0d49451fca4c3dde216b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":4},{"name":"jc/parsers/date.py","lines_changed":4}]},"message":"documentation fixup"},{"commit":"e1f3feb8f529172ae26ce4c7a66a4a1c21b722ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":10,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":23}]},"message":"cover empty data case in process"},{"commit":"37d3bc699c7be16955be06840d242980f05f1074","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":224,"deletions":1,"files":["CHANGELOG","docgen.sh","docs/parsers/date.md","jc/cli.py","jc/parsers/date.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/date.md","lines_changed":89},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/date.py","lines_changed":127},{"name":"man/jc.1","lines_changed":4}]},"message":"add date parser"},{"commit":"672fd18016b8122510b6ab246b5675b7fd399b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"date bump"},{"commit":"bc2c23a2a09b96d34bb80f69fdc7751fb5ac3ed4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"version bump"},{"commit":"865f7e78124e382c6d315702fa6e48f2104cee46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":6}]},"message":"add kv parser to man page"},{"commit":"720212b552e1bd2b9196dd5f06e4b3f85d463531","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":9,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":10}]},"message":"fixup traceroute example with new behavior"},{"commit":"d3be61f60837801d5a505dc2520cc80c874a6092","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]},"message":"version bump"},{"commit":"13418b16b8fd78fdd97ac045ec3fe9aa59d46080","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":2,"files":["docs/parsers/traceroute.md","jc/parsers/traceroute.py"],"file_stats":[{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"jc/parsers/traceroute.py","lines_changed":5}]},"message":"doc update"},{"commit":"42d2017cd6f5ee1d1a92bd4958cd63366c1e715d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":18,"insertions":41,"deletions":24,"files":["CHANGELOG","jc/parsers/traceroute.py","tests/fixtures/centos-7.7/traceroute.json","tests/fixtures/freebsd12/traceroute.json","tests/fixtures/freebsd12/traceroute6.json","tests/fixtures/generic/traceroute1.json","tests/fixtures/generic/traceroute2.json","tests/fixtures/generic/traceroute3.json","tests/fixtures/generic/traceroute5.json","tests/fixtures/generic/traceroute6.json","tests/fixtures/generic/traceroute7.json","tests/fixtures/osx-10.14.6/traceroute-asn.json",".../fixtures/osx-10.14.6/traceroute-no-header.json","tests/fixtures/osx-10.14.6/traceroute-q.json","tests/fixtures/osx-10.14.6/traceroute.json",".../osx-10.14.6/traceroute6-mult-addresses.json","tests/fixtures/osx-10.14.6/traceroute6.json","tests/test_traceroute.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/traceroute.py","lines_changed":26},{"name":"tests/fixtures/centos-7.7/traceroute.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/traceroute.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/traceroute6.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute1.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute2.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute3.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute5.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute6.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute7.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/traceroute-asn.json","lines_changed":2},{"name":".../fixtures/osx-10.14.6/traceroute-no-header.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/traceroute-q.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/traceroute.json","lines_changed":2},{"name":".../osx-10.14.6/traceroute6-mult-addresses.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/traceroute6.json","lines_changed":2},{"name":"tests/test_traceroute.py","lines_changed":7}]},"message":"traceroute updates: handle missing header row, add annotations, don't print timeouts as probes"},{"commit":"4345e76ead2a49ae0691077e9fbd2b6c5fdfd129","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2}]},"message":"change to use --kv for key/value files"},{"commit":"741431322ba2677355c361fcd6095ed8cd0a4349","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":46,"deletions":24,"files":["tests/test_ini.py","tests/test_kv.py"],"file_stats":[{"name":"tests/test_ini.py","lines_changed":24},{"name":"tests/test_kv.py","lines_changed":46}]},"message":"update tests for kv parser"},{"commit":"980beaaf41a04891f7c2f5daeb1e3a23d3c7ec19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2}]},"message":"fix docgen issue"},{"commit":"2205034e0906b333c259648f7a0e5392945f12ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":105,"deletions":31,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","jc/cli.py","jc/parsers/ini.py","jc/parsers/kv.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"EXAMPLES.md","lines_changed":53},{"name":"README.md","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/ini.py","lines_changed":4},{"name":"jc/parsers/kv.py","lines_changed":67},{"name":"setup.py","lines_changed":2}]},"message":"add kv parser"},{"commit":"82b9c87a66fce5d8626c56858a8c6f1f3326e7fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":58,"insertions":345,"deletions":62,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/readme.md","docs/utils.md"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":6},{"name":"docs/parsers/airport_s.md","lines_changed":6},{"name":"docs/parsers/arp.md","lines_changed":6},{"name":"docs/parsers/blkid.md","lines_changed":6},{"name":"docs/parsers/crontab.md","lines_changed":6},{"name":"docs/parsers/crontab_u.md","lines_changed":6},{"name":"docs/parsers/csv.md","lines_changed":6},{"name":"docs/parsers/df.md","lines_changed":6},{"name":"docs/parsers/dig.md","lines_changed":6},{"name":"docs/parsers/dmidecode.md","lines_changed":6},{"name":"docs/parsers/du.md","lines_changed":6},{"name":"docs/parsers/env.md","lines_changed":6},{"name":"docs/parsers/file.md","lines_changed":6},{"name":"docs/parsers/free.md","lines_changed":6},{"name":"docs/parsers/fstab.md","lines_changed":6},{"name":"docs/parsers/group.md","lines_changed":6},{"name":"docs/parsers/gshadow.md","lines_changed":6},{"name":"docs/parsers/history.md","lines_changed":6},{"name":"docs/parsers/hosts.md","lines_changed":6},{"name":"docs/parsers/id.md","lines_changed":6},{"name":"docs/parsers/ifconfig.md","lines_changed":13},{"name":"docs/parsers/ini.md","lines_changed":6},{"name":"docs/parsers/iptables.md","lines_changed":6},{"name":"docs/parsers/jobs.md","lines_changed":6},{"name":"docs/parsers/kv.md","lines_changed":61},{"name":"docs/parsers/last.md","lines_changed":6},{"name":"docs/parsers/ls.md","lines_changed":6},{"name":"docs/parsers/lsblk.md","lines_changed":6},{"name":"docs/parsers/lsmod.md","lines_changed":6},{"name":"docs/parsers/lsof.md","lines_changed":6},{"name":"docs/parsers/mount.md","lines_changed":6},{"name":"docs/parsers/netstat.md","lines_changed":6},{"name":"docs/parsers/ntpq.md","lines_changed":6},{"name":"docs/parsers/passwd.md","lines_changed":6},{"name":"docs/parsers/ping.md","lines_changed":6},{"name":"docs/parsers/pip_list.md","lines_changed":6},{"name":"docs/parsers/pip_show.md","lines_changed":6},{"name":"docs/parsers/ps.md","lines_changed":6},{"name":"docs/parsers/route.md","lines_changed":6},{"name":"docs/parsers/shadow.md","lines_changed":6},{"name":"docs/parsers/ss.md","lines_changed":6},{"name":"docs/parsers/stat.md","lines_changed":6},{"name":"docs/parsers/sysctl.md","lines_changed":6},{"name":"docs/parsers/systemctl.md","lines_changed":6},{"name":"docs/parsers/systemctl_lj.md","lines_changed":6},{"name":"docs/parsers/systemctl_ls.md","lines_changed":6},{"name":"docs/parsers/systemctl_luf.md","lines_changed":6},{"name":"docs/parsers/timedatectl.md","lines_changed":6},{"name":"docs/parsers/tracepath.md","lines_changed":6},{"name":"docs/parsers/traceroute.md","lines_changed":9},{"name":"docs/parsers/uname.md","lines_changed":6},{"name":"docs/parsers/uptime.md","lines_changed":6},{"name":"docs/parsers/w.md","lines_changed":6},{"name":"docs/parsers/who.md","lines_changed":6},{"name":"docs/parsers/xml.md","lines_changed":6},{"name":"docs/parsers/yaml.md","lines_changed":6},{"name":"docs/readme.md","lines_changed":1},{"name":"docs/utils.md","lines_changed":5}]},"message":"update docs"},{"commit":"dda517a937323b9888e081aea1032a9d63c4a6bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":163,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":166}]},"message":"shorten more examples"},{"commit":"4e6d283b9eddf7759b4dd37bd643394ff73febd4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":65,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":65}]},"message":"shorten netstat example"},{"commit":"55acab05aa740dfd7534304f2678b60942cad116","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["changelog.txt => CHANGELOG"],"file_stats":[{"name":"changelog.txt => CHANGELOG","lines_changed":0}]},"message":"change name to CHANGELOG"},{"commit":"ed38a18d236cdb991779f4f148e42359c139e61c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":86,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":87}]},"message":"remove more examples"},{"commit":"95b3c11203d3dd0627c5eeca39fe1d145bf2d733","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":124,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":124}]},"message":"remove more examples"},{"commit":"dce318f4fd44b9c4013211bf233020e84566ddb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1537,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1540}]},"message":"remove examples to reduce file size"},{"commit":"85127f0fb8096192b19fca1f4ffe38ee391351be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["jc/examples.md => EXAMPLES.md"],"file_stats":[{"name":"jc/examples.md => EXAMPLES.md","lines_changed":0}]},"message":"move examples to root"},{"commit":"fb45058244ce879f12bbb5b7267b0fd63fef1d63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2640,"deletions":0,"files":["jc/examples.md"],"file_stats":[{"name":"jc/examples.md","lines_changed":2640}]},"message":"add examples file"},{"commit":"45bb5ae389a00ed6a132a65c69ce76c7e5976858","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"spelling"},{"commit":"339238ab364d8735892a11cb16a62a651edae169","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":79,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py","tests/fixtures/centos-7.7/route-6-n.json","tests/fixtures/centos-7.7/route-6-n.out","tests/fixtures/centos-7.7/route-6.json","tests/fixtures/centos-7.7/route-6.out","tests/test_route.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/route-6-n.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/route-6-n.out","lines_changed":24},{"name":"tests/fixtures/centos-7.7/route-6.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/route-6.out","lines_changed":24},{"name":"tests/test_route.py","lines_changed":24}]},"message":"version bump and add route -6 tests"},{"commit":"032cda8b3db096b690d2557e3b918c50c716c543","merge":"690ac52 6badd3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #74 from kellyjonbrazil/dev\n\nDev v1.13.0"},{"commit":"6badd3fb1e1cf6d1ee99614fadc20d54be8039aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":3}]},"message":"add parser count test"},{"commit":"724d825745b6f1692eb3b068c3fb59d14892e690","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":4}]},"message":"add tracepath parser"},{"commit":"ff1e32ad2ee156f105f5069c6b14a65b22784dfa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"a5f97febd3066b9e95a18d6b73162a7d206c5845","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":132,"deletions":0,"files":["tests/fixtures/centos-7.7/tracepath.json","tests/fixtures/centos-7.7/tracepath6.json","tests/fixtures/freebsd12/traceroute.json","tests/fixtures/freebsd12/traceroute.out","tests/fixtures/freebsd12/traceroute6.json","tests/fixtures/freebsd12/traceroute6.out","tests/fixtures/osx-10.14.6/uname.out","tests/test_tracepath.py","tests/test_traceroute.py","tests/test_uname.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/tracepath.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/tracepath6.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/traceroute.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/traceroute.out","lines_changed":14},{"name":"tests/fixtures/freebsd12/traceroute6.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/traceroute6.out","lines_changed":34},{"name":"tests/fixtures/osx-10.14.6/uname.out","lines_changed":1},{"name":"tests/test_tracepath.py","lines_changed":46},{"name":"tests/test_traceroute.py","lines_changed":24},{"name":"tests/test_uname.py","lines_changed":9}]},"message":"update traceroute, tracepath, and uname tests"},{"commit":"5baa6cc865634142690e78596c640db35e110b29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add route parser update"},{"commit":"7a4f30b843d8f11711abbb8f9bb263f945ff87ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":6}]},"message":"fix for iface issue"},{"commit":"b2c385dc4f63e3e15f47e986deac0524967214a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":2}]},"message":"change 'if' to 'iface'"},{"commit":"5d5da8d33fa6ab77c745d338d1a2e2e8f2e4c697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":6}]},"message":"more fixes for ipv6 fix"},{"commit":"e60457157839daba385202906997dec48c9c4950","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":2}]},"message":"fix next_hop fix"},{"commit":"f9dacc3f95b32e1431914ae0b0dc5c8e8840d5a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":4}]},"message":"fixup for ipv6"},{"commit":"6086920332575cd7db1b38262a3b4ba8fbfae7ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]},"message":"update ParseError message"},{"commit":"f52f3163bcaf8d7e784f02505e81456e8240295b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":49,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":49}]},"message":"add tracepath example"},{"commit":"d18ff73e880c7d34957f2713857cc83094f914cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/tracepath.py"],"file_stats":[{"name":"jc/parsers/tracepath.py","lines_changed":4}]},"message":"update author info"},{"commit":"1e5d602caecd96c9056ad77f9fc50cf25bf6fdfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":288,"deletions":32,"files":["docs/parsers/tracepath.md","jc/parsers/tracepath.py"],"file_stats":[{"name":"docs/parsers/tracepath.md","lines_changed":122},{"name":"jc/parsers/tracepath.py","lines_changed":198}]},"message":"working tracepath parser"},{"commit":"12912521ecb376c36dfdd743b3c4195598fb9aac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":11,"files":["docs/parsers/traceroute.md","jc/parsers/traceroute.py"],"file_stats":[{"name":"docs/parsers/traceroute.md","lines_changed":7},{"name":"jc/parsers/traceroute.py","lines_changed":4}]},"message":"doc update"},{"commit":"842ea3a94bec3fcab76257fdde5514d1de3d57fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":153,"deletions":0,"files":["docs/parsers/tracepath.md","jc/parsers/tracepath.py"],"file_stats":[{"name":"docs/parsers/tracepath.md","lines_changed":64},{"name":"jc/parsers/tracepath.py","lines_changed":89}]},"message":"add tracepath parser skeleton"},{"commit":"a8560dbc1598fa97de87594228b4cc10282d4197","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add tracepath"},{"commit":"a65e27540a8c5c7123d2fdf79fcbefa1e2f8afdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":24,"files":["docgen.sh","docs/parsers/traceroute.md","jc/parsers/traceroute.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/traceroute.md","lines_changed":14},{"name":"jc/parsers/traceroute.py","lines_changed":10}]},"message":"update docs"},{"commit":"c3c5ed11e68938e35920144406d37ea3b21d63dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]},"message":"change name from tr to trparse"},{"commit":"ce24149335cd8ed1e8513a2cf040432fe42d86b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":1}]},"message":"formatting"},{"commit":"0314ca8c4831d24c169a0e4948421ecd638fd699","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add trparse acknowledgement"},{"commit":"ebd8ee49a9f43063850e30c745c8cae46ee13de1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":27}]},"message":"add key/value info to ini example"},{"commit":"38d10c97814ec69586c3b447c182f339772d6e22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":130,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":131}]},"message":"add ping and traceroute examples"},{"commit":"360106c24d24e6a9697c00a158a14aaa334a4b1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add tracepath"},{"commit":"ca470a5d02fd9fbaf05d8b3b3bb1ffe9f4cf5af3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":39,"deletions":0,"files":["tests/fixtures/centos-7.7/tracepath.out","tests/fixtures/centos-7.7/tracepath6.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/tracepath.out","lines_changed":34},{"name":"tests/fixtures/centos-7.7/tracepath6.out","lines_changed":5}]},"message":"add tracepath fixtures"},{"commit":"57f66e6b1d554ff20b72959f5ebb9e7b2feffed2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":2,"files":["changelog.txt","jc/parsers/uname.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":14}]},"message":"add exception with hint to use \"uname -a\""},{"commit":"e774f67924c0e6195f79829b2ac75ce95f76fbaa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["jc/parsers/ini.py"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":10}]},"message":"turn off interpolation and coerce None to ''"},{"commit":"ac10e576c167d20de259e47a6aa5b23fc998b4c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/ini.md","jc/parsers/ini.py"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"jc/parsers/ini.py","lines_changed":4}]},"message":"spelling"},{"commit":"bcae0a99cd0ccce4ec8a67929f7c83a1095a5b88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"add key/value to ini description"},{"commit":"c73c2ff879b3ed7a3e6f04e53e0a729e4f00ed21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":8}]},"message":"add ping, traceroute, and ini update"},{"commit":"c39b1a3356881a11a8f6fe9432897e6d67162f07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"add ping, traceroute and update ini description"},{"commit":"125dc2d9e051a82a4a438afe2e520212338353f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":3,"files":["docs/parsers/ini.md"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":11}]},"message":"add info about key/value files to doc"},{"commit":"b7d4ddc7ced2c3aabf3a857b53a0bf1b62eb6a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":50,"deletions":0,"files":["tests/fixtures/generic/keyvalue-ifcfg.json","tests/fixtures/generic/keyvalue-ifcfg.txt","tests/fixtures/generic/keyvalue.json","tests/fixtures/generic/keyvalue.txt","tests/test_ini.py"],"file_stats":[{"name":"tests/fixtures/generic/keyvalue-ifcfg.json","lines_changed":1},{"name":"tests/fixtures/generic/keyvalue-ifcfg.txt","lines_changed":19},{"name":"tests/fixtures/generic/keyvalue.json","lines_changed":1},{"name":"tests/fixtures/generic/keyvalue.txt","lines_changed":5},{"name":"tests/test_ini.py","lines_changed":24}]},"message":"add tests for key/value files"},{"commit":"f5e546c6fa7cba166284a0976887d6b82451d3e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":33,"deletions":9,"files":["jc/parsers/ini.py"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":42}]},"message":"add support for simple key/value pairs"},{"commit":"928e39cd103b96b8c3ccc8d85c930ffb419296c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":104,"deletions":0,"files":["tests/fixtures/generic/traceroute1.json","tests/fixtures/generic/traceroute2.json","tests/fixtures/generic/traceroute3.json","tests/fixtures/generic/traceroute4.json","tests/fixtures/generic/traceroute5.json","tests/fixtures/generic/traceroute6.json","tests/fixtures/generic/traceroute7.json","tests/fixtures/generic/traceroute8.json","tests/test_traceroute.py"],"file_stats":[{"name":"tests/fixtures/generic/traceroute1.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute2.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute3.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute4.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute5.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute6.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute7.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute8.json","lines_changed":1},{"name":"tests/test_traceroute.py","lines_changed":96}]},"message":"add generic traceroute tests"},{"commit":"d0b7ea68a005daff313e44808b256656313a78a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":4}]},"message":"check for key in dictionary"},{"commit":"8444690133b6a7522822ab279e97ede6ded17ba9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":4}]},"message":"add traceroute"},{"commit":"c03c42d76703ff8f423cf3c10ea6254a27a685cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":76,"deletions":9,"files":["tests/fixtures/centos-7.7/traceroute.json","tests/fixtures/osx-10.14.6/traceroute-asn.json",".../osx-10.14.6/traceroute-mult-addresses.json","tests/fixtures/osx-10.14.6/traceroute-q.json","tests/fixtures/osx-10.14.6/traceroute.json",".../osx-10.14.6/traceroute6-mult-addresses.json","...-address.out => traceroute6-mult-addresses.out}","tests/fixtures/osx-10.14.6/traceroute6.json","tests/test_traceroute.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/traceroute.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/traceroute-asn.json","lines_changed":1},{"name":".../osx-10.14.6/traceroute-mult-addresses.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/traceroute-q.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/traceroute.json","lines_changed":1},{"name":".../osx-10.14.6/traceroute6-mult-addresses.json","lines_changed":1},{"name":"...-address.out => traceroute6-mult-addresses.out}","lines_changed":0},{"name":"tests/fixtures/osx-10.14.6/traceroute6.json","lines_changed":1},{"name":"tests/test_traceroute.py","lines_changed":78}]},"message":"add traceroute tests"},{"commit":"ab67688a00ac335d2a5603e9cadef8b565957911","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":55,"deletions":0,"files":["tests/test_traceroute.py"],"file_stats":[{"name":"tests/test_traceroute.py","lines_changed":55}]},"message":"add test skeleton"},{"commit":"5dcb7166daef3c53da65bba0d591672e64d3a90b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":169,"deletions":0,"files":["docgen.sh","docs/parsers/traceroute.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/traceroute.md","lines_changed":168}]},"message":"add traceroute doc"},{"commit":"14697b86d7fc1cfebb41e0fd2d9a9b9b60071d3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":2,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":26}]},"message":"add MIT license"},{"commit":"4f4b6276d4bf798b17d996f39742bd0428fc2f19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":38,"deletions":33,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":71}]},"message":"update docstring"},{"commit":"7bc497e1291059ae7858c9d2bd2d9a1b4c030dd1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":117,"deletions":14,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":131}]},"message":"updated process() function to set integers and floats"},{"commit":"68a37a6a5a3f0ad0fa24c84d363050af9fa11f97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":4}]},"message":"remove unused function load()"},{"commit":"6f5cd1d7c5f76d7d4da42171fdc30daf9fe3996e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]},"message":"change to use f-string"},{"commit":"126b1b121ca10183dc7e9dece83b42907becad39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":0,"files":["tests/fixtures/generic/traceroute8.out"],"file_stats":[{"name":"tests/fixtures/generic/traceroute8.out","lines_changed":10}]},"message":"add traceroute6 example"},{"commit":"2341e456a012564f86d533d2748a5887d79995e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]},"message":"use ParseError instead of generic Exception"},{"commit":"72d80e95bb50ae2a7432082e65aba15235ba0955","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":115,"deletions":8,"files":["jc/parsers/traceroute.py","tests/fixtures/generic/traceroute1.out","tests/fixtures/generic/traceroute2.out","tests/fixtures/generic/traceroute3.out","tests/fixtures/generic/traceroute4.out","tests/fixtures/generic/traceroute5.out","tests/fixtures/generic/traceroute6.out","tests/fixtures/generic/traceroute7.out"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":9},{"name":"tests/fixtures/generic/traceroute1.out","lines_changed":16},{"name":"tests/fixtures/generic/traceroute2.out","lines_changed":13},{"name":"tests/fixtures/generic/traceroute3.out","lines_changed":20},{"name":"tests/fixtures/generic/traceroute4.out","lines_changed":7},{"name":"tests/fixtures/generic/traceroute5.out","lines_changed":10},{"name":"tests/fixtures/generic/traceroute6.out","lines_changed":31},{"name":"tests/fixtures/generic/traceroute7.out","lines_changed":17}]},"message":"remove unused regex patterns"},{"commit":"f5ec82440cd1c1b5ac9011d3517298d0cdcd8766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":11}]},"message":"simplify regex patterns"},{"commit":"c8e526ead35b868733f57b4c114062a48b78a817","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":3,"files":["jc/parsers/traceroute.py","tests/fixtures/osx-10.14.6/traceroute-q.out"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":11},{"name":"tests/fixtures/osx-10.14.6/traceroute-q.out","lines_changed":4}]},"message":"fixes for bsd-style ipv6 output"},{"commit":"066adfb76479df7042bfb12bbb83b5dbd8a6d54c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":83,"deletions":7,"files":["jc/parsers/traceroute.py","tests/fixtures/centos-7.7/traceroute.out","tests/fixtures/osx-10.14.6/traceroute-asn.out",".../osx-10.14.6/traceroute-mult-addresses.out",".../fixtures/osx-10.14.6/traceroute-no-header.out",".../osx-10.14.6/traceroute6-multi-address.out","tests/fixtures/osx-10.14.6/traceroute6.out"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":30},{"name":"tests/fixtures/centos-7.7/traceroute.out","lines_changed":32},{"name":"tests/fixtures/osx-10.14.6/traceroute-asn.out","lines_changed":5},{"name":".../osx-10.14.6/traceroute-mult-addresses.out","lines_changed":5},{"name":".../fixtures/osx-10.14.6/traceroute-no-header.out","lines_changed":3},{"name":".../osx-10.14.6/traceroute6-multi-address.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/traceroute6.out","lines_changed":7}]},"message":"handle warning lines in the traceroute output"},{"commit":"5b444d4717b0b8528647e17e71d699907def3e18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":307,"deletions":0,"files":["jc/cli.py","jc/parsers/traceroute.py","tests/fixtures/osx-10.14.6/traceroute.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/traceroute.py","lines_changed":295},{"name":"tests/fixtures/osx-10.14.6/traceroute.out","lines_changed":11}]},"message":"add traceroute parser"},{"commit":"69c95adc8d59927c1c00b7e766ca5003b7b6454c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":81,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ping6-ip-dup.json","tests/fixtures/osx-10.14.6/ping6-ip-dup.out","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ping6-ip-dup.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-dup.out","lines_changed":68},{"name":"tests/test_ping.py","lines_changed":12}]},"message":"add osx ipv6 ping dup test"},{"commit":"2b0e0d8f5c1a6a5450e362971f9ad5892093b2ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":27,"deletions":0,"files":["tests/fixtures/centos-7.7/ping6-ip-dup.json","tests/fixtures/centos-7.7/ping6-ip-dup.out","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ping6-ip-dup.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-ip-dup.out","lines_changed":14},{"name":"tests/test_ping.py","lines_changed":12}]},"message":"add ipv6 dup test"},{"commit":"778d1bacbf8df523d434b22f5e1517955e4c15ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":28,"deletions":12,"files":["docs/parsers/ping.md","jc/parsers/ping.py"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":20},{"name":"jc/parsers/ping.py","lines_changed":20}]},"message":"update docs to add \"duplicates\" fields"},{"commit":"7e1b0410166c584775ebcd681a280ec7321560c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":0,"files":["tests/test_ping.py"],"file_stats":[{"name":"tests/test_ping.py","lines_changed":24}]},"message":"add duplicate replies tests"},{"commit":"313b9b329ca6b674069718839f55a4bd7834db80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":55,"insertions":55,"deletions":53,"files":["tests/fixtures/centos-7.7/ping-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping-hostname-O-p.json","tests/fixtures/centos-7.7/ping-hostname-O.json","tests/fixtures/centos-7.7/ping-ip-O-D.json","tests/fixtures/centos-7.7/ping-ip-O.json","tests/fixtures/centos-7.7/ping-ip-dup.json","tests/fixtures/centos-7.7/ping6-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping6-hostname-O-p.json","tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","tests/fixtures/centos-7.7/ping6-ip-O-p.json","tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping-hostname-O-p.json","tests/fixtures/fedora32/ping-hostname-O.json","tests/fixtures/fedora32/ping-ip-O-D.json","tests/fixtures/fedora32/ping-ip-O.json","tests/fixtures/fedora32/ping6-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping6-hostname-O-D-p.json","tests/fixtures/fedora32/ping6-hostname-O-p.json","tests/fixtures/fedora32/ping6-ip-O-D-p.json","tests/fixtures/fedora32/ping6-ip-O-p.json","tests/fixtures/freebsd12/ping-hostname-p.json","tests/fixtures/freebsd12/ping-hostname-s.json","tests/fixtures/freebsd12/ping-hostname.json","tests/fixtures/freebsd12/ping-ip-p.json","tests/fixtures/freebsd12/ping-ip-s.json","tests/fixtures/freebsd12/ping-ip.json","tests/fixtures/freebsd12/ping6-hostname-p.json","tests/fixtures/freebsd12/ping6-hostname-s.json","tests/fixtures/freebsd12/ping6-hostname.json","tests/fixtures/freebsd12/ping6-ip-p.json","tests/fixtures/freebsd12/ping6-ip-s.json","tests/fixtures/freebsd12/ping6-ip.json","tests/fixtures/osx-10.14.6/ping-hostname-p.json","tests/fixtures/osx-10.14.6/ping-hostname-s.json","tests/fixtures/osx-10.14.6/ping-hostname.json","tests/fixtures/osx-10.14.6/ping-ip-dup.json","tests/fixtures/osx-10.14.6/ping-ip-p.json","tests/fixtures/osx-10.14.6/ping-ip-s.json","tests/fixtures/osx-10.14.6/ping-ip.json","tests/fixtures/osx-10.14.6/ping6-hostname-p.json","tests/fixtures/osx-10.14.6/ping6-hostname-s.json","tests/fixtures/osx-10.14.6/ping6-hostname.json","tests/fixtures/osx-10.14.6/ping6-ip-p.json","tests/fixtures/osx-10.14.6/ping6-ip-s.json","tests/fixtures/osx-10.14.6/ping6-ip.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping-hostname-O.json","tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","tests/fixtures/ubuntu-18.04/ping-ip-O.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ping-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-hostname-O.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-ip-O-D.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-ip-O.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-ip-dup.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping6-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-hostname-O.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-ip-O-D.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-ip-O.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-ip-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-ip-O-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-hostname-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-hostname-s.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-hostname.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-ip-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-ip-s.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-ip.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-hostname-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-hostname-s.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-hostname.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-ip-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-ip-s.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-ip.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-hostname-p.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-hostname-s.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-hostname.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-ip-dup.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-p.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-ip-s.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-ip.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-p.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-s.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-p.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-s.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-ip.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json","lines_changed":2}]},"message":"update fixtures for added 'duplicate' fields"},{"commit":"6830062256fbc453f87224f7ab8c10e4494b5a83","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":112,"deletions":24,"files":["docs/parsers/ping.md","jc/parsers/ping.py","tests/fixtures/centos-7.7/ping-ip-dup.out","tests/fixtures/osx-10.14.6/ping-ip-dup.out"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":6},{"name":"jc/parsers/ping.py","lines_changed":83},{"name":"tests/fixtures/centos-7.7/ping-ip-dup.out","lines_changed":27},{"name":"tests/fixtures/osx-10.14.6/ping-ip-dup.out","lines_changed":20}]},"message":"add support for duplicate replies"},{"commit":"323072c9827c41c5d74433504b5efceb846cfe09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/ping.md","jc/parsers/ping.py"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":1},{"name":"jc/parsers/ping.py","lines_changed":1}]},"message":"add source_ip to schema doc"},{"commit":"8719d96bddec80187e7ba3286ba93bfec8465744","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"change description"},{"commit":"dd5d318ab5bbb1027dd600fd3b0b6ec9b8adfdc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":6}]},"message":"version bump and add ping command"},{"commit":"d6dc7f5e65c097895c19000e59e8803a3b350fdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":135,"deletions":29,"files":["tests/fixtures/osx-10.14.6/ping-hostname-p.json","tests/fixtures/osx-10.14.6/ping-hostname-s.json","tests/fixtures/osx-10.14.6/ping-hostname.json","tests/fixtures/osx-10.14.6/ping-ip-p.json","tests/fixtures/osx-10.14.6/ping-ip-s.json","tests/fixtures/osx-10.14.6/ping-ip.json","tests/fixtures/osx-10.14.6/ping6-hostname-p.json","tests/fixtures/osx-10.14.6/ping6-hostname-s.json","tests/fixtures/osx-10.14.6/ping6-hostname.json","tests/fixtures/osx-10.14.6/ping6-ip-p.json","tests/fixtures/osx-10.14.6/ping6-ip-s.json","tests/fixtures/osx-10.14.6/ping6-ip.json","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ping-hostname-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-hostname-s.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-hostname.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-s.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-s.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-s.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":152}]},"message":"add osx ping tests"},{"commit":"c203664eb5aafa0afa3101b79e3fd13b3e009ec5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":171,"deletions":9,"files":["tests/fixtures/freebsd12/ping-hostname-p.json","tests/fixtures/freebsd12/ping-hostname-s.json","tests/fixtures/freebsd12/ping-hostname.json","tests/fixtures/freebsd12/ping-ip-p.json","tests/fixtures/freebsd12/ping-ip-s.json","tests/fixtures/freebsd12/ping-ip.json","tests/fixtures/freebsd12/ping6-hostname-p.json","tests/fixtures/freebsd12/ping6-hostname-s.json","tests/fixtures/freebsd12/ping6-hostname.json","tests/fixtures/freebsd12/ping6-ip-p.json","tests/fixtures/freebsd12/ping6-ip-s.json","tests/fixtures/freebsd12/ping6-ip.json","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/ping-hostname-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-hostname-s.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-hostname.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-s.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-hostname-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-hostname-s.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-hostname.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-s.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":168}]},"message":"freebsd ping tests"},{"commit":"19ecf1fa19e9fa0873002baf07fa670b71ed7752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":118,"deletions":0,"files":["tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping-hostname-O-p.json","tests/fixtures/fedora32/ping-hostname-O.json","tests/fixtures/fedora32/ping-ip-O-D.json","tests/fixtures/fedora32/ping-ip-O.json",".../fixtures/fedora32/ping6-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping6-hostname-O-D-p.json","tests/fixtures/fedora32/ping6-hostname-O-p.json","tests/fixtures/fedora32/ping6-ip-O-D-p.json","tests/fixtures/fedora32/ping6-ip-O-p.json","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-hostname-O.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-ip-O-D.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-ip-O.json","lines_changed":1},{"name":".../fixtures/fedora32/ping6-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping6-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping6-ip-O-D-p.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping6-ip-O-p.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":108}]},"message":"add Fedora32 tests"},{"commit":"b8deb0426cc23333c0e0a9dc3776d9761d99abb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":119,"deletions":8,"files":[".../ubuntu-18.04/ping-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping-hostname-O.json","tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","tests/fixtures/ubuntu-18.04/ping-ip-O.json",".../ubuntu-18.04/ping6-hostname-O-D-p-s.json",".../ubuntu-18.04/ping6-hostname-O-D-p.json",".../fixtures/ubuntu-18.04/ping6-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json","tests/test_ping.py"],"file_stats":[{"name":".../ubuntu-18.04/ping-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-hostname-O-D-p-s.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-hostname-O-D-p.json","lines_changed":1},{"name":".../fixtures/ubuntu-18.04/ping6-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":117}]},"message":"add ubuntu ping tests"},{"commit":"3b8371f0208a097cb8a1c026348d3842e6702b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":202,"deletions":0,"files":[".../fixtures/centos-7.7/ping-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping-hostname-O-p.json","tests/fixtures/centos-7.7/ping-hostname-O.json","tests/fixtures/centos-7.7/ping-ip-O-D.json","tests/fixtures/centos-7.7/ping-ip-O.json",".../centos-7.7/ping6-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping6-hostname-O-p.json","tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","tests/fixtures/centos-7.7/ping6-ip-O-p.json","tests/test_ping.py"],"file_stats":[{"name":".../fixtures/centos-7.7/ping-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-hostname-O.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-ip-O-D.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-ip-O.json","lines_changed":1},{"name":".../centos-7.7/ping6-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-p.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":193}]},"message":"add centos ping tests"},{"commit":"20bb1cdf396abdb3707b34fa146cbe913f9bbd6f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":8}]},"message":"add TypeError to except for None values"},{"commit":"301daa48d0bfc28f97c8e46f028f8c6b875bf34e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":114,"deletions":16,"files":["docs/parsers/ping.md","jc/parsers/ping.py"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":128},{"name":"jc/parsers/ping.py","lines_changed":2}]},"message":"update documentation"},{"commit":"8421ec88033e02f472e4961d87551a0352663a16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":4}]},"message":"remove cygwin compatibility"},{"commit":"74211eb0129f6aa655a38ba4d4d8844d81441107","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":82,"deletions":5,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":87}]},"message":"add examples"},{"commit":"60bd42f298f309cbec6d24c9543ea3d51bd73b18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":59,"deletions":11,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":70}]},"message":"add process() logic"},{"commit":"14bdd74526e400997c5bc247ea35ed40799e83ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":100,"deletions":0,"files":["tests/fixtures/freebsd12/ping-hostname-p.out","tests/fixtures/freebsd12/ping-hostname-s.out","tests/fixtures/freebsd12/ping-hostname.out","tests/fixtures/freebsd12/ping-ip-p.out","tests/fixtures/freebsd12/ping-ip-s.out","tests/fixtures/freebsd12/ping-ip.out","tests/fixtures/freebsd12/ping6-hostname-p.out","tests/fixtures/freebsd12/ping6-hostname-s.out","tests/fixtures/freebsd12/ping6-hostname.out","tests/fixtures/freebsd12/ping6-ip-p.out","tests/fixtures/freebsd12/ping6-ip-s.out","tests/fixtures/freebsd12/ping6-ip.out"],"file_stats":[{"name":"tests/fixtures/freebsd12/ping-hostname-p.out","lines_changed":9},{"name":"tests/fixtures/freebsd12/ping-hostname-s.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping-hostname.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping-ip-p.out","lines_changed":9},{"name":"tests/fixtures/freebsd12/ping-ip-s.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping-ip.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping6-hostname-p.out","lines_changed":9},{"name":"tests/fixtures/freebsd12/ping6-hostname-s.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping6-hostname.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping6-ip-p.out","lines_changed":9},{"name":"tests/fixtures/freebsd12/ping6-ip-s.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping6-ip.out","lines_changed":8}]},"message":"add ping test fixtures"},{"commit":"fb0f3eda04a4b1dbb81da7d5791cbfe746bfd617","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["tests/fixtures/create_fixtures.sh"],"file_stats":[{"name":"tests/fixtures/create_fixtures.sh","lines_changed":16}]},"message":"add ping commands"},{"commit":"91ee6e6701307363336a39f9e16641465ddd05c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":100,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ping-hostname-p.out","tests/fixtures/osx-10.14.6/ping-hostname-s.out","tests/fixtures/osx-10.14.6/ping-hostname.out","tests/fixtures/osx-10.14.6/ping-ip-p.out","tests/fixtures/osx-10.14.6/ping-ip-s.out","tests/fixtures/osx-10.14.6/ping-ip.out","tests/fixtures/osx-10.14.6/ping6-hostname-p.out","tests/fixtures/osx-10.14.6/ping6-hostname-s.out","tests/fixtures/osx-10.14.6/ping6-hostname.out","tests/fixtures/osx-10.14.6/ping6-ip-p.out","tests/fixtures/osx-10.14.6/ping6-ip-s.out","tests/fixtures/osx-10.14.6/ping6-ip.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ping-hostname-p.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/ping-hostname-s.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping-hostname.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping-ip-p.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/ping-ip-s.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping-ip.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-p.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-s.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-p.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-s.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping6-ip.out","lines_changed":8}]},"message":"add osx ping test fixtures"},{"commit":"51f4e6927c68a7e2a26954f564d10d316b98a984","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":3,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":15}]},"message":"add support for pattern in osx/bsd"},{"commit":"94988d86674293faddc6f7e7c82575738d2dc791","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":257,"deletions":0,"files":["tests/fixtures/fedora32/ping-hostname-O-D-p-s.out","tests/fixtures/fedora32/ping-hostname-O-p.out","tests/fixtures/fedora32/ping-hostname-O.out","tests/fixtures/fedora32/ping-ip-O-D.out","tests/fixtures/fedora32/ping-ip-O.out","tests/fixtures/fedora32/ping6-hostname-O-D-p-s.out","tests/fixtures/fedora32/ping6-hostname-O-D-p.out","tests/fixtures/fedora32/ping6-hostname-O-p.out","tests/fixtures/fedora32/ping6-ip-O-D-p.out","tests/fixtures/fedora32/ping6-ip-O-p.out"],"file_stats":[{"name":"tests/fixtures/fedora32/ping-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping-hostname-O.out","lines_changed":25},{"name":"tests/fixtures/fedora32/ping-ip-O-D.out","lines_changed":25},{"name":"tests/fixtures/fedora32/ping-ip-O.out","lines_changed":25},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping6-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping6-ip-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping6-ip-O-p.out","lines_changed":26}]},"message":"add fedora ping fixtures"},{"commit":"fe36f5a98cd3ee7753e250b6553e4453d971f929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":318,"deletions":0,"files":["tests/fixtures/centos-7.7/ping-ip-O-D.out","tests/fixtures/centos-7.7/ping-ip-O.out","tests/fixtures/create_fixtures.sh",".../ubuntu-18.04/ping-hostname-O-D-p-s.out","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.out","tests/fixtures/ubuntu-18.04/ping-hostname-O.out","tests/fixtures/ubuntu-18.04/ping-ip-O-D.out","tests/fixtures/ubuntu-18.04/ping-ip-O.out",".../ubuntu-18.04/ping6-hostname-O-D-p-s.out",".../fixtures/ubuntu-18.04/ping6-hostname-O-D-p.out","tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.out","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.out","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ping-ip-O-D.out","lines_changed":25},{"name":"tests/fixtures/centos-7.7/ping-ip-O.out","lines_changed":25},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":12},{"name":".../ubuntu-18.04/ping-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O.out","lines_changed":25},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O-D.out","lines_changed":25},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O.out","lines_changed":25},{"name":".../ubuntu-18.04/ping6-hostname-O-D-p-s.out","lines_changed":26},{"name":".../fixtures/ubuntu-18.04/ping6-hostname-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-p.out","lines_changed":25}]},"message":"add fixtures for ping"},{"commit":"f9eb18b9271b2428dd82f2dc26d3fa0435dad81d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":17}]},"message":"change 'request_timeout' field to 'type', fix compatibility, other formatting fixes"},{"commit":"cc60f3674822c644933f286a0364b09d7e2a60b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":67,"deletions":1,"files":["docgen.sh","docs/parsers/ping.md","jc/cli.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ping.md","lines_changed":64},{"name":"jc/cli.py","lines_changed":3}]},"message":"add ping parser"},{"commit":"604ade791f7bd33b37f64916befba27a2ea08b5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":506,"deletions":0,"files":["jc/parsers/ping.py",".../fixtures/centos-7.7/ping-hostname-O-D-p-s.out","tests/fixtures/centos-7.7/ping-hostname-O-p.out","tests/fixtures/centos-7.7/ping-hostname-O.out",".../fixtures/centos-7.7/ping6-hostname-O-D-p-s.out","tests/fixtures/centos-7.7/ping6-hostname-O-p.out","tests/fixtures/centos-7.7/ping6-ip-O-D-p.out","tests/fixtures/centos-7.7/ping6-ip-O-p.out"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":325},{"name":".../fixtures/centos-7.7/ping-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping-hostname-O.out","lines_changed":25},{"name":".../fixtures/centos-7.7/ping6-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping6-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-p.out","lines_changed":26}]},"message":"add ping parser"},{"commit":"690ac52a917200e46eac2feafc9f504f2734301c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":261,"deletions":0,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":261}]},"message":"add man page"},{"commit":"34ed772775f1f02ed148f24a3bfff532bc811607","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"d5ab95571f64f55d8194e9e5592ac538bb535229","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":11,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":37}]},"message":"fix tests when using older versions of pygments"},{"commit":"ffb3a0ee5fb30a3f61d6cbedf877ab04acdbf624","merge":"fde0bc8 94b12b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #73 from kellyjonbrazil/dev\n\nDev v1.12.0"},{"commit":"94b12b57aaa56170d1f31f4910fd1239f88de137","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"spelling"},{"commit":"6d149e84571d5d6dd1d8a1f219ba299de5173779","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":1,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":7},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"1ad89c90d890039b817f65b2635db1b5e849a9e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add pacman"},{"commit":"fb71c7b020bc1eda9484595f30b0200a4f59aa45","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":2}]},"message":"function name spelling"},{"commit":"28ed17ad3bce866e5dc0179ef5de43380ac6ace1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":1}]},"message":"add parser_count test to test_cli_about_jc"},{"commit":"0c2a4e2bf71dca50d4a9bb27ca99944909c022ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":37}]},"message":"add cli tests"},{"commit":"62bec30de2f1a303f2ec411d89f7f9f9c6d1abaf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":0,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":20}]},"message":"add json_out tests"},{"commit":"3fced77e4e258dbf7db94a313e599c830a597b49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":98,"deletions":1,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":99}]},"message":"add set_env_colors tests"},{"commit":"a09d1d8b7687912610598c88d172733d5e29b1ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":13}]},"message":"move environment variable assignment to main() to simplify tests"},{"commit":"8f4243fbd8d70ca9fd019e984c564e37c81e07db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"formatting"},{"commit":"47aaf20549ea238443427e69d5841d6996b7afab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":17,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":17}]},"message":"add sysctl command parser"},{"commit":"0c5289ea50e4d3d35e80147b4cad32434c19a2a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":72,"deletions":2,"files":["tests/fixtures/freebsd12/sysctl-a.json","tests/fixtures/osx-10.14.6/sysctl-a.json","tests/test_sysctl.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/sysctl-a.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/sysctl-a.json","lines_changed":2},{"name":"tests/test_sysctl.py","lines_changed":70}]},"message":"add sysctl tests"},{"commit":"3e53323514906fb84abfaeed0c2ee1fd9090ad8d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":2}]},"message":"don't filter out empty lines"},{"commit":"a5ee9861b9b9b479aee59ea5b1d75f20d7c3c8e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3785,"deletions":1,"files":["tests/fixtures/freebsd12/sysctl-a.json","tests/fixtures/freebsd12/sysctl-a.out","tests/fixtures/osx-10.14.6/sysctl-a.json"],"file_stats":[{"name":"tests/fixtures/freebsd12/sysctl-a.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/sysctl-a.out","lines_changed":3783},{"name":"tests/fixtures/osx-10.14.6/sysctl-a.json","lines_changed":2}]},"message":"update fixtures"},{"commit":"feb8ca76545cba4fd0927273ddf90a77df994006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/sysctl.md"],"file_stats":[{"name":"docs/parsers/sysctl.md","lines_changed":2}]},"message":"spelling"},{"commit":"a7abe4473b90c512466db9ae98cfac585689fe2a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":2}]},"message":"spelling"},{"commit":"780b9b61dec3e142e46c9a82146d2af4e1144123","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":6}]},"message":"specify IndexError exception in try/except block"},{"commit":"19ace36ffa659bedf0ba2e43572c9e253592b2e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2167,"deletions":0,"files":["tests/fixtures/osx-10.14.6/sysctl-a.json","tests/fixtures/osx-10.14.6/sysctl-a.out","tests/fixtures/ubuntu-18.04/sysctl-a.json","tests/fixtures/ubuntu-18.04/sysctl-a.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/sysctl-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/sysctl-a.out","lines_changed":1287},{"name":"tests/fixtures/ubuntu-18.04/sysctl-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/sysctl-a.out","lines_changed":878}]},"message":"add fixtures"},{"commit":"5fff8afc9f47f8cc6db8ed3613b90b5cdc683b43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":33,"deletions":11,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":44}]},"message":"add fixes for freebsd where values can be on separate lines under the key"},{"commit":"4ad230c9279c5eb6c8ed6baf7254b8e9328e5af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":929,"deletions":14,"files":["docs/parsers/sysctl.md","jc/parsers/sysctl.py","tests/fixtures/centos-7.7/sysctl-a.json","tests/fixtures/centos-7.7/sysctl-a.out"],"file_stats":[{"name":"docs/parsers/sysctl.md","lines_changed":12},{"name":"jc/parsers/sysctl.py","lines_changed":12},{"name":"tests/fixtures/centos-7.7/sysctl-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sysctl-a.out","lines_changed":918}]},"message":"doc update and add test fixtures"},{"commit":"dd98eb1ec8f451eb87a5094e76a7f758dee3fc69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":7,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":11}]},"message":"append duplicate key values to original key instead of adding unique keys"},{"commit":"c6baf42e72b4f41ed511e7db943297d03a39c0d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":94,"deletions":7,"files":["docgen.sh","docs/parsers/sysctl.md","jc/parsers/sysctl.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/sysctl.md","lines_changed":86},{"name":"jc/parsers/sysctl.py","lines_changed":14}]},"message":"doc updates"},{"commit":"e2bac97d563e5ef771ccd8ed1e5c42cbf588b120","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":12}]},"message":"fix for multiple identical keys in sysctl output"},{"commit":"d112ee94d0ec534828c8508d0fb833b768975990","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":4,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":12}]},"message":"use try/except and add support for floats in process()"},{"commit":"27b21b2fafab912f21b88b66c7f817cbce155765","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":7,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":15}]},"message":"formatting and docstring updates"},{"commit":"8c96d5cd20448a4f7f9736c4d489d6ecc3068ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["requirements.txt"],"file_stats":[{"name":"requirements.txt","lines_changed":2}]},"message":"reduce pygments version requirement"},{"commit":"c29ed3fd695f725005333db5e6e2cd844bb4ca14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":13,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":27}]},"message":"formatting of quotation marks and docstrings"},{"commit":"cedf603f121636bdfa95432059c3c275c3ea3e9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]},"message":"minor formatting"},{"commit":"279161c36f288c27a9789054ae372fe8ceb58a94","merge":"bc7116c ce0b43d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #72 from duelafn/pygments-2.3\n\nSupport older pygments"},{"commit":"ce0b43d919f07d96d1b94e9d14d03e935e80011d","author":"Dean Serenevy","author_email":"dean@serenevy.net","commit_by":"Dean Serenevy","commit_by_email":"dean@serenevy.net","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"Remove dependency on 3rd party packaging library"},{"commit":"ddafa5bf06066bab8e9587be902d6752fcf51605","author":"Dean Serenevy","author_email":"dean@serenevy.net","commit_by":"Dean Serenevy","commit_by_email":"dean@serenevy.net","stats":{"files_changed":2,"insertions":47,"deletions":7,"files":["jc/cli.py","setup.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":52},{"name":"setup.py","lines_changed":2}]},"message":"Support older pygments"},{"commit":"bc7116c31bacf3159aef775fd0e615187420b010","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":8,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":15}]},"message":"fix JC_COLORS env bug and simplify set_env_colors()"},{"commit":"53b709272115e769dac905296fa3b000c1cdd66a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":11,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":22}]},"message":"remove side-effects from functions and print in main()"},{"commit":"beb9174b1b35937ae1fb99778369ae643a8f1005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":123,"deletions":0,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":123}]},"message":"add sysctl parser"},{"commit":"aea41ed341c8d53cc07c35e8044e8f816ddd2fed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":11}]},"message":"move verbose_debug enable earlier in code to catch more issues. add sysctl and version bump"},{"commit":"d789494cb1f691aa352419aaefc692f654477177","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/tracebackplus.py"],"file_stats":[{"name":"jc/tracebackplus.py","lines_changed":2}]},"message":"change type check to use isinstance"},{"commit":"608e7b4cff081f92177e4151ffa1a91a4a6895ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":61,"deletions":0,"files":["jc/tracebackplus.py"],"file_stats":[{"name":"jc/tracebackplus.py","lines_changed":61}]},"message":"add license info"},{"commit":"4ee199c02a78c2707c5d1427d7c8fae56df5671c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":189,"deletions":3,"files":["jc/cli.py","jc/tracebackplus.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6},{"name":"jc/tracebackplus.py","lines_changed":186}]},"message":"use tracebackplus instead of cgitb since cgitb is depricated"},{"commit":"fbf47d408501dadda4671fb530f5e11859e85d53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add arch linux"},{"commit":"5a238e4b4204f0552327534ef798c28d3ad4f578","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"remove updates-testing from fedora command"},{"commit":"f852b8246a8f9e5f7d9144fed3a0daa4eddfe035","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":3}]},"message":"wrap warning message"},{"commit":"88140d929a500ee78f807862c4912c399df2a460","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"wrap error message in code"},{"commit":"45f726824027af49c437b6e81e4700f7098af320","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add -dd to error message"},{"commit":"3a3c8e4d4a77135eaee5cb30c3107a4531c300ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]},"message":"move verbose_debug under debug check"},{"commit":"c1ac183a0472e93226c9ee1905f56c5183e3721f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":15,"deletions":22,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":37}]},"message":"simplify debug option"},{"commit":"18bb779ee5cd5821764b03173f16e922f753c64d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"formatting: double quotes to single quotes"},{"commit":"8b6612fe7911ab9e0bf8d29be60865d3b8aa3fd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"move JC_COLORS parsing error message"},{"commit":"fde0bc853415418e01616861ace5048770bd97f8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":34,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":43}]},"message":"improve package install info"},{"commit":"e661a78939ff067b8a61f08301c178dd10a344ab","merge":"b969751 847e346","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #71 from wigust/guix\n\nadd guix package info"},{"commit":"847e346602789bf58e3515319e9d080dfb897fc9","author":"Oleg Pykhalov","author_email":"go.wigust@gmail.com","commit_by":"Oleg Pykhalov","commit_by_email":"go.wigust@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"add guix package info"},{"commit":"b9697516887c61f08d8d7b1dc9130350e5bdba9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"add other references"},{"commit":"ad6f2ba03a293a7f55e456fa5f5b55ee3cbcd4ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"63c6a5edc0e9001b143595fd8b96f1b4a1377a3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"formatting"},{"commit":"9f4cf9dd5efe94adfff0961fdb73097ca27c5463","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":197,"deletions":67,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":264}]},"message":"formatting"},{"commit":"51331b6dc01eee00847fa4be549ffde365373a01","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":5}]},"message":"formatting"},{"commit":"efb6761033319644bf9cdae6288ff5609f6482ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"6a4f737a0f1c322bebccf69809d9816fc770c5ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":88,"deletions":115,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":203}]},"message":"update json syntax highlighting"},{"commit":"be6864b778ab721bcba5fc3221576153be7b2ed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":26,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":52}]},"message":"add syntax highlighting tags"},{"commit":"de3b91a36cfcaf565b26b1da42f1e87835da4dc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add -dd option"},{"commit":"ef5482c3b5afa0ee8e85851bebab1c104cb59936","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":15,"deletions":7,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":17},{"name":"setup.py","lines_changed":2}]},"message":"add verbose debug option"},{"commit":"d20b795137036f8b889eb231cb4f14b756ec6479","merge":"69018cd 8a13406","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #70 from kellyjonbrazil/dev\n\nDev v1.11.7"},{"commit":"8a134065dff429551449c1ea16a36d745fdab580","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":12,"deletions":12,"files":["tests/fixtures/centos-7.7/iptables-filter-line-numbers.json","tests/fixtures/centos-7.7/iptables-filter-nv.json","tests/fixtures/centos-7.7/iptables-filter.json","tests/fixtures/centos-7.7/iptables-mangle.json","tests/fixtures/centos-7.7/iptables-nat.json","tests/fixtures/centos-7.7/iptables-raw.json","tests/fixtures/ubuntu-18.04/iptables-filter-line-numbers.json","tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","tests/fixtures/ubuntu-18.04/iptables-filter.json","tests/fixtures/ubuntu-18.04/iptables-mangle.json","tests/fixtures/ubuntu-18.04/iptables-nat.json","tests/fixtures/ubuntu-18.04/iptables-raw.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/iptables-filter-line-numbers.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-filter-nv.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-filter.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-mangle.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-nat.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-raw.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter-line-numbers.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-mangle.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-nat.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-raw.json","lines_changed":2}]},"message":"update fixtures for last chain fix"},{"commit":"22aee1bfa40ed1d3c4df28cd934ef0edfc5c458c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"b282820fd67dcc96c058198f97b066e7b402d1f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":3}]},"message":"fix to include the final chain in output"},{"commit":"3ee098306daf903687cb0febf92773a81e216111","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":2}]},"message":"version bump"},{"commit":"09e8f379a64b3b37bb99b4291c10aa4a5cdedea4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":11,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":20}]},"message":"iptables code optimizations"},{"commit":"69018cdb3a77fcdcb5648e3b89933148c55a6412","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"fix date"},{"commit":"d0d7254c6acc7be4341618d231a5b166f640b287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":26,"deletions":0,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":15},{"name":"jc/utils.py","lines_changed":11}]},"message":"add docstring"},{"commit":"cc0f0971d76b6f3dec8d989e83f5676db8f2c6d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":56,"insertions":476,"deletions":439,"files":["changelog.txt","jc/cli.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/utils.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":10},{"name":"jc/parsers/airport_s.py","lines_changed":4},{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/blkid.py","lines_changed":5},{"name":"jc/parsers/crontab.py","lines_changed":5},{"name":"jc/parsers/crontab_u.py","lines_changed":5},{"name":"jc/parsers/csv.py","lines_changed":5},{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":193},{"name":"jc/parsers/dmidecode.py","lines_changed":264},{"name":"jc/parsers/du.py","lines_changed":8},{"name":"jc/parsers/env.py","lines_changed":8},{"name":"jc/parsers/file.py","lines_changed":39},{"name":"jc/parsers/foo.py","lines_changed":8},{"name":"jc/parsers/free.py","lines_changed":5},{"name":"jc/parsers/fstab.py","lines_changed":5},{"name":"jc/parsers/group.py","lines_changed":5},{"name":"jc/parsers/gshadow.py","lines_changed":5},{"name":"jc/parsers/history.py","lines_changed":26},{"name":"jc/parsers/hosts.py","lines_changed":8},{"name":"jc/parsers/id.py","lines_changed":8},{"name":"jc/parsers/ifconfig.py","lines_changed":18},{"name":"jc/parsers/ini.py","lines_changed":5},{"name":"jc/parsers/iptables.py","lines_changed":44},{"name":"jc/parsers/jobs.py","lines_changed":8},{"name":"jc/parsers/last.py","lines_changed":8},{"name":"jc/parsers/ls.py","lines_changed":5},{"name":"jc/parsers/lsblk.py","lines_changed":8},{"name":"jc/parsers/lsmod.py","lines_changed":5},{"name":"jc/parsers/lsof.py","lines_changed":9},{"name":"jc/parsers/mount.py","lines_changed":9},{"name":"jc/parsers/netstat.py","lines_changed":8},{"name":"jc/parsers/ntpq.py","lines_changed":5},{"name":"jc/parsers/passwd.py","lines_changed":8},{"name":"jc/parsers/pip_list.py","lines_changed":9},{"name":"jc/parsers/pip_show.py","lines_changed":9},{"name":"jc/parsers/ps.py","lines_changed":6},{"name":"jc/parsers/route.py","lines_changed":6},{"name":"jc/parsers/shadow.py","lines_changed":8},{"name":"jc/parsers/ss.py","lines_changed":8},{"name":"jc/parsers/stat.py","lines_changed":7},{"name":"jc/parsers/systemctl.py","lines_changed":8},{"name":"jc/parsers/systemctl_lj.py","lines_changed":8},{"name":"jc/parsers/systemctl_ls.py","lines_changed":8},{"name":"jc/parsers/systemctl_luf.py","lines_changed":8},{"name":"jc/parsers/timedatectl.py","lines_changed":14},{"name":"jc/parsers/uname.py","lines_changed":6},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/w.py","lines_changed":5},{"name":"jc/parsers/who.py","lines_changed":8},{"name":"jc/parsers/xml.py","lines_changed":5},{"name":"jc/parsers/yaml.py","lines_changed":11},{"name":"jc/utils.py","lines_changed":4},{"name":"setup.py","lines_changed":2}]},"message":"Improve and standardize empty data check for all parsers"},{"commit":"2af61730f0f5b9bc6f1f4c5d9d808ff6ccb0faeb","merge":"07b179c 83f41b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #68 from kellyjonbrazil/dev\n\nDev v1.11.5"},{"commit":"83f41b83dc01c462c6a2295e9fc56ad42a3b62f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"1fb84fce88e0306c26a5771fa4c6dc14a21409a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":16,"insertions":137,"deletions":67,"files":["changelog.txt","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/xml.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py","tests/test_timedatectl.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py","tests/test_who.py","tests/test_xml.py","tests/test_yaml.py"],"file_stats":[{"name":"changelog.txt","lines_changed":5},{"name":"jc/parsers/systemctl_lj.py","lines_changed":3},{"name":"jc/parsers/systemctl_ls.py","lines_changed":33},{"name":"jc/parsers/systemctl_luf.py","lines_changed":35},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/w.py","lines_changed":63},{"name":"jc/parsers/xml.py","lines_changed":6},{"name":"tests/test_systemctl_ls.py","lines_changed":6},{"name":"tests/test_systemctl_luf.py","lines_changed":6},{"name":"tests/test_timedatectl.py","lines_changed":6},{"name":"tests/test_uname.py","lines_changed":6},{"name":"tests/test_uptime.py","lines_changed":6},{"name":"tests/test_w.py","lines_changed":6},{"name":"tests/test_who.py","lines_changed":6},{"name":"tests/test_xml.py","lines_changed":6},{"name":"tests/test_yaml.py","lines_changed":6}]},"message":"fix for no data"},{"commit":"a8837e12447c52dbe438b19c07777b9b4a22081c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"remove --upgrade from pip install"},{"commit":"04d2eec5581998d1a80e762b670af76c92111065","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":56,"deletions":30,"files":["changelog.txt","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","tests/test_stat.py","tests/test_systemctl.py","tests/test_systemctl_lj.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":33},{"name":"jc/parsers/systemctl_lj.py","lines_changed":33},{"name":"tests/test_stat.py","lines_changed":6},{"name":"tests/test_systemctl.py","lines_changed":6},{"name":"tests/test_systemctl_lj.py","lines_changed":6}]},"message":"fix for no data"},{"commit":"1b57ec92f052ddc8959540511512190a539262b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":152,"deletions":68,"files":["changelog.txt","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/pip_list.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","tests/fixtures/centos-7.7/ss-sudo-a.json","tests/fixtures/ubuntu-18.04/ss-sudo-a.json","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_ntpq.py","tests/test_passwd.py","tests/test_pip_list.py","tests/test_pip_show.py","tests/test_ps.py","tests/test_route.py","tests/test_shadow.py","tests/test_ss.py"],"file_stats":[{"name":"changelog.txt","lines_changed":8},{"name":"jc/parsers/mount.py","lines_changed":3},{"name":"jc/parsers/netstat.py","lines_changed":41},{"name":"jc/parsers/ntpq.py","lines_changed":35},{"name":"jc/parsers/pip_list.py","lines_changed":31},{"name":"jc/parsers/ps.py","lines_changed":9},{"name":"jc/parsers/route.py","lines_changed":9},{"name":"jc/parsers/ss.py","lines_changed":14},{"name":"tests/fixtures/centos-7.7/ss-sudo-a.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ss-sudo-a.json","lines_changed":2},{"name":"tests/test_lsof.py","lines_changed":6},{"name":"tests/test_mount.py","lines_changed":6},{"name":"tests/test_netstat.py","lines_changed":6},{"name":"tests/test_ntpq.py","lines_changed":6},{"name":"tests/test_passwd.py","lines_changed":6},{"name":"tests/test_pip_list.py","lines_changed":6},{"name":"tests/test_pip_show.py","lines_changed":6},{"name":"tests/test_ps.py","lines_changed":6},{"name":"tests/test_route.py","lines_changed":6},{"name":"tests/test_shadow.py","lines_changed":6},{"name":"tests/test_ss.py","lines_changed":6}]},"message":"fix for no data"},{"commit":"4d8859540417e99e273fda2cea959240f3c37ea3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":2}]},"message":"enhance empty data check"},{"commit":"52b1272a3aab09b5a8c4a277fbf9975a1b8b6921","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":2}]},"message":"enhance empty data check"},{"commit":"d2ccad6a83138fbf6eb863634fd354dc6c3fa238","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":33,"deletions":15,"files":["jc/parsers/lsblk.py","jc/parsers/lsmod.py","tests/test_lsblk.py","tests/test_lsmod.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":21},{"name":"jc/parsers/lsmod.py","lines_changed":15},{"name":"tests/test_lsblk.py","lines_changed":6},{"name":"tests/test_lsmod.py","lines_changed":6}]},"message":"fix for no data"},{"commit":"cad6dde4ac66cf970a7f52d8e7958ea35c083629","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":60,"deletions":0,"files":["tests/test_group.py","tests/test_gshadow.py","tests/test_history.py","tests/test_hosts.py","tests/test_id.py","tests/test_ifconfig.py","tests/test_ini.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_last.py"],"file_stats":[{"name":"tests/test_group.py","lines_changed":6},{"name":"tests/test_gshadow.py","lines_changed":6},{"name":"tests/test_history.py","lines_changed":6},{"name":"tests/test_hosts.py","lines_changed":6},{"name":"tests/test_id.py","lines_changed":6},{"name":"tests/test_ifconfig.py","lines_changed":6},{"name":"tests/test_ini.py","lines_changed":6},{"name":"tests/test_iptables.py","lines_changed":6},{"name":"tests/test_jobs.py","lines_changed":6},{"name":"tests/test_last.py","lines_changed":6}]},"message":"fix for no data"},{"commit":"06811c3539b0d871e13e9b8d3b51f731d06fd2ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_fstab.py"],"file_stats":[{"name":"tests/test_fstab.py","lines_changed":6}]},"message":"add test for no data"},{"commit":"0cb23c2b21f464082609409261de8e95eb1b0d55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":17,"deletions":7,"files":["changelog.txt","jc/parsers/free.py","tests/test_free.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/free.py","lines_changed":17},{"name":"tests/test_free.py","lines_changed":6}]},"message":"add fix for no data"},{"commit":"ac4688dca22334385ec2c87027f2f14f9ca93ce4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_file.py"],"file_stats":[{"name":"tests/test_file.py","lines_changed":6}]},"message":"add test for no data"},{"commit":"326c3b4670a0e47cbe2988b38fb1c1b26a4db890","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_env.py"],"file_stats":[{"name":"tests/test_env.py","lines_changed":6}]},"message":"add test for no data"},{"commit":"9b29d0c2688eda2e4707aeba693ed14fa433a706","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_du.py"],"file_stats":[{"name":"tests/test_du.py","lines_changed":6}]},"message":"add test for no data"},{"commit":"e0013c38710b4ecf3a588a16d1d908effc23b485","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["tests/test_dmidecode.py"],"file_stats":[{"name":"tests/test_dmidecode.py","lines_changed":5}]},"message":"add test for no data"},{"commit":"a75744075b0628bdb711d8a929a759b4b4067edb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_dig.py"],"file_stats":[{"name":"tests/test_dig.py","lines_changed":6}]},"message":"add no data test"},{"commit":"525aec1a02380f17ab7827434616f981f7457bd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":16,"deletions":7,"files":["changelog.txt","jc/parsers/df.py","tests/test_df.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":16},{"name":"tests/test_df.py","lines_changed":6}]},"message":"fix for no data"},{"commit":"0bf9a7a072a80e10a29c6bb3943b107352dc1d45","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_csv.py"],"file_stats":[{"name":"tests/test_csv.py","lines_changed":6}]},"message":"add test for no data"},{"commit":"d8f2f4c95bc699386b9fe93d10e13637875a1dcf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":96,"deletions":80,"files":["changelog.txt","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/test_crontab.py","tests/test_crontab_u.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":79},{"name":"jc/parsers/crontab_u.py","lines_changed":83},{"name":"tests/test_crontab.py","lines_changed":6},{"name":"tests/test_crontab_u.py","lines_changed":6}]},"message":"fix for no data"},{"commit":"35d733b44f3705bed3dd8ce340379470f199f772","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":70,"deletions":60,"files":["changelog.txt","jc/parsers/arp.py","jc/parsers/blkid.py","tests/test_arp.py","tests/test_blkid.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":112},{"name":"jc/parsers/blkid.py","lines_changed":4},{"name":"tests/test_arp.py","lines_changed":6},{"name":"tests/test_blkid.py","lines_changed":6}]},"message":"fix for no data"},{"commit":"9179b4175c5063bed14ecb96ba24c517920c0d94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":16,"deletions":0,"files":["changelog.txt","tests/test_airport.py","tests/test_airport_s.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"tests/test_airport.py","lines_changed":6},{"name":"tests/test_airport_s.py","lines_changed":6}]},"message":"add nodata tests"},{"commit":"bb07d78c78ff5c5b2ee4d2086ffc6dd5ebedf0fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":8,"files":["jc/parsers/airport_s.py"],"file_stats":[{"name":"jc/parsers/airport_s.py","lines_changed":18}]},"message":"add nodata fix"},{"commit":"07b179cd7f8853ff6aca0b27a703e198c158ca72","merge":"12a80e7 054422d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #67 from kellyjonbrazil/Dev\n\nDev v1.11.4"},{"commit":"054422d8373e7b8def18ddabd447062cb9cc3137","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_ls.py"],"file_stats":[{"name":"tests/test_ls.py","lines_changed":6}]},"message":"add test for empty directory"},{"commit":"3e052d18102e98a09cbba21866855691eaccc216","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"c8e72805cf9def478b56c925f4afcc0ece1daac0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":10,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":19}]},"message":"fix error on empty directory"},{"commit":"12a80e7db0f6c7d536674ad8d34e26bba9a1f1f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":12}]},"message":"add fedora package info"},{"commit":"ee7ff9a09d3373f60ae1645376ccc0057803147e","merge":"346a14c f6478fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #66 from kellyjonbrazil/dev\n\nDev v1.11.3"},{"commit":"f6478fb636ead8d1e53e4a88d59e55222df37a8f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"811a0b0495819925199d70db266066197cc6824e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add info regarding the local parser plugin files"},{"commit":"aeb48edf727f23cc4f8fd9b760cfb69f03098278","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"use $LOCALAPPDATA variable for windows"},{"commit":"b1e94f0df7041bcae97455508f423178aef9d61d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"heading formatting"},{"commit":"60050e3c0fe34980f7db5b8bd46430f953f0c3a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":26}]},"message":"fix linux/unix directory and add note about the XDG specification followed"},{"commit":"39ef09aa5b0d43b5128299511afe80336aa38203","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add local parser plugin feature"},{"commit":"8377d4311611c242e16eaebe66dafac9529150d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"54e4c447ab34ae54c73c92df40f1b4ca6ffb2277","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":10}]},"message":"clean up formatting"},{"commit":"937a9fa9cf2ede8e686ba853989f33e4a483a0ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":613,"deletions":3,"files":["jc/appdirs.py","jc/cli.py","requirements.txt","setup.py"],"file_stats":[{"name":"jc/appdirs.py","lines_changed":611},{"name":"jc/cli.py","lines_changed":3},{"name":"requirements.txt","lines_changed":1},{"name":"setup.py","lines_changed":1}]},"message":"vendorize appdirs module"},{"commit":"808ff6cf0e784cf0c2d523ff2e01197cb6e88c82","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":12}]},"message":"more acknowledgments updates"},{"commit":"7f5c649a95a871c3cd8d48731a6d26dcba6f725b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update acknowledgments"},{"commit":"b72727dec995de1ca5f68ee17a710b086c87d612","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":11}]},"message":"update custom parsers info"},{"commit":"3fc88bfb334143b68a9cb78d4034f33e7c0bcf76","merge":"346a14c 9f2279d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #65 from duelafn/local-parsers\n\nLoad custom parsers from /jc/jcparsers"},{"commit":"9f2279d5867eb89d4b4b7b4ffca290166ec97c48","author":"Dean Serenevy","author_email":"dean@serenevy.net","commit_by":"Dean Serenevy","commit_by_email":"dean@serenevy.net","stats":{"files_changed":4,"insertions":29,"deletions":2,"files":["README.md","jc/cli.py","requirements.txt","setup.py"],"file_stats":[{"name":"README.md","lines_changed":7},{"name":"jc/cli.py","lines_changed":22},{"name":"requirements.txt","lines_changed":1},{"name":"setup.py","lines_changed":1}]},"message":"Load custom parsers from /jc/jcparsers"},{"commit":"346a14cb9bb0d762fc3fa366ad97e5ff85f3992a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"change osx_device to unix_device"},{"commit":"dac00d17ff9f3d2bb959697b6e567015bfc2702b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":17,"deletions":0,"files":["tests/fixtures/nixos/route-ee.json","tests/fixtures/nixos/route-ee.out","tests/test_route.py"],"file_stats":[{"name":"tests/fixtures/nixos/route-ee.json","lines_changed":1},{"name":"tests/fixtures/nixos/route-ee.out","lines_changed":4},{"name":"tests/test_route.py","lines_changed":12}]},"message":"add nixos test"},{"commit":"9ca7cd40601b97829e8f88071fdfb928d939f7e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":17,"deletions":34,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":51}]},"message":"update docs"},{"commit":"aa31628970b12295a41dff20e829fcce9f8a4d07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":70,"deletions":63,"files":["README.md","docs/parsers/netstat.md","docs/parsers/route.md","docs/parsers/stat.md","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":46},{"name":"docs/parsers/netstat.md","lines_changed":16},{"name":"docs/parsers/route.md","lines_changed":51},{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":16}]},"message":"update docs"},{"commit":"bed694fcf5c8c31bbd4f3e88759fe7ab82382d24","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"4b4af69fa184896ec15b5be7dc8416f36f921d5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"fix date"},{"commit":"9d96190a5b19e8d71c3ac66eb0303d269dd4ce5d","merge":"96df396 fa44d48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #64 from kellyjonbrazil/dev\n\nDev v1.11.2"},{"commit":"fa44d48c094a55e499c2c780d109bf277736b42e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":129,"deletions":7,"files":["changelog.txt","jc/parsers/stat.py","tests/fixtures/freebsd12/stat.json","tests/fixtures/freebsd12/stat.out","tests/fixtures/osx-10.14.6/stat.json","tests/test_stat.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":12},{"name":"tests/fixtures/freebsd12/stat.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/stat.out","lines_changed":107},{"name":"tests/fixtures/osx-10.14.6/stat.json","lines_changed":2},{"name":"tests/test_stat.py","lines_changed":12}]},"message":"freebsd fixes, tests, and fixtures"},{"commit":"4ef961c2788c935b1fea1c9777b976e7b89e7367","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":20,"deletions":0,"files":["tests/fixtures/freebsd12/ntpq-p.json","tests/fixtures/freebsd12/ntpq-p.out","tests/test_ntpq.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/ntpq-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ntpq-p.out","lines_changed":7},{"name":"tests/test_ntpq.py","lines_changed":12}]},"message":"add freebsd test and fixtures"},{"commit":"292a837d5c47165ccb155f079b0a114b5c17a98e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":22,"deletions":0,"files":["tests/fixtures/freebsd12/last.json","tests/fixtures/freebsd12/last.out","tests/test_last.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/last.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/last.out","lines_changed":9},{"name":"tests/test_last.py","lines_changed":12}]},"message":"add tests and fixtures for freebsd12"},{"commit":"aa7b915d847dbd29d2c09b2cc40b847e37174ffb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":2}]},"message":"version bump"},{"commit":"c46fe73236b912d2ee89dfb36ff259fe95fd0479","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"add last fixes for freebsd"},{"commit":"039b2c129cbe79d2d23b1194b043d8b730609956","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":1,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":11}]},"message":"freebsd fixes"},{"commit":"8f2e5e4808b30c658a4cb87125639e4d7d6c15d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"fix compatible logic"},{"commit":"c4da8e4f78e6b4aaa4aff76ae042be9aaec832a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":12}]},"message":"add nixos and freebsd to tested. update new arp fields"},{"commit":"bcab9078a4c2bfd6ae4dca9448b577d9ed0fc01c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"add w parser fix"},{"commit":"b3c6c1ea925bf7cd76368f5074fb8af52a844522","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":29,"deletions":5,"files":["jc/parsers/w.py","tests/fixtures/nixos/w.json","tests/fixtures/nixos/w.out","tests/test_w.py"],"file_stats":[{"name":"jc/parsers/w.py","lines_changed":8},{"name":"tests/fixtures/nixos/w.json","lines_changed":1},{"name":"tests/fixtures/nixos/w.out","lines_changed":5},{"name":"tests/test_w.py","lines_changed":20}]},"message":"strip whitespace in string fields and add tests"},{"commit":"a3af8662bd491e344c93d24afabd23e90efd8086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":205,"deletions":3,"files":["tests/fixtures/osx-10.11.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a2.json"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/arp-a.json","lines_changed":107},{"name":"tests/fixtures/osx-10.14.6/arp-a.json","lines_changed":99},{"name":"tests/fixtures/osx-10.14.6/arp-a2.json","lines_changed":2}]},"message":"add permanent field"},{"commit":"35940d0bc80bf61b11f40b1e1043835f26eb391c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":59,"deletions":4,"files":["changelog.txt","docs/parsers/arp.md","jc/parsers/arp.py","tests/fixtures/freebsd12/arp-a.json","tests/fixtures/freebsd12/arp-a.out","tests/test_arp.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":12},{"name":"jc/parsers/arp.py","lines_changed":33},{"name":"tests/fixtures/freebsd12/arp-a.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/arp-a.out","lines_changed":3},{"name":"tests/test_arp.py","lines_changed":12}]},"message":"add freebsd permanent and expires fields"},{"commit":"26994cdcb7148d2c9d1701bca9541d247356260b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":115,"deletions":85,"files":["docs/parsers/df.md","docs/parsers/fstab.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/route.md","docs/parsers/stat.md","docs/parsers/uname.md"],"file_stats":[{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":163},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":25},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2}]},"message":"add freebsd compatibility info"},{"commit":"017159a829691cb6a7174f123d024eb252179b75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":15,"insertions":221,"deletions":0,"files":["tests/fixtures/freebsd12/netstat-Aa.json","tests/fixtures/freebsd12/netstat-AaT.json","tests/fixtures/freebsd12/netstat-AaT.out","tests/fixtures/freebsd12/netstat-AanP.json","tests/fixtures/freebsd12/netstat-AanP.out","tests/fixtures/freebsd12/netstat-Aax.json","tests/fixtures/freebsd12/netstat-Aax.out","tests/fixtures/freebsd12/netstat-aT.json","tests/fixtures/freebsd12/netstat-aT.out","tests/fixtures/freebsd12/netstat-an.json","tests/fixtures/freebsd12/netstat-i.json","tests/fixtures/freebsd12/netstat-ib.json","tests/fixtures/freebsd12/netstat-ib.out","tests/fixtures/freebsd12/netstat-r.json","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/netstat-Aa.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-AaT.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-AaT.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-AanP.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-AanP.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-Aax.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-Aax.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-aT.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-aT.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-an.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-i.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-ib.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-ib.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/netstat-r.json","lines_changed":1},{"name":"tests/test_netstat.py","lines_changed":108}]},"message":"add freebsd nestat tests and fixtures"},{"commit":"b4e9c85e08d199dad67f03c7603194278a022696","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":0,"files":["jc/parsers/netstat_freebsd_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_freebsd_osx.py","lines_changed":12}]},"message":"fixup -T freebsd output and add whitespace stripping to parse_post"},{"commit":"189146cd84cfad262f2b2601bb0cb4b9dde2587e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":10}]},"message":"add more ints. remove whitespace strip code and move to freebsd_osx module"},{"commit":"af34153ffab10ca1ad7f44736d379d91ae43c813","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["changelog.txt","jc/cli.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2}]},"message":"version bump"},{"commit":"bf2ff3ffbb639446779b1f04f2997707d99c0a1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":9}]},"message":"fix compatibility search for platform names that append the version number (e.g. freebsd12)"},{"commit":"6423c9efd69e938af38934a97ca6b65009e8f07e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":34,"deletions":5,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":39}]},"message":"integer and float updates"},{"commit":"58ab0d4ece7f006ce9431afb9e0fecbe60930be7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":12,"deletions":4,"files":["changelog.txt","jc/parsers/netstat.py","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":11},{"name":"tests/fixtures/osx-10.14.6/netstat-An.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat.json","lines_changed":2}]},"message":"strip whitespace from string fields"},{"commit":"83a738bf4d756036d6269b9153220d7f1018ac9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/netstat-Abn.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-An.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat.json","lines_changed":2}]},"message":"update fixtures for osx_flags and osx_inode name change to unix_flags and unix_inode"},{"commit":"3640671fc6a67c9628fd47e19e9fe0a0738439ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/{netstat_osx.py => netstat_freebsd_osx.py}"],"file_stats":[{"name":"jc/parsers/{netstat_osx.py => netstat_freebsd_osx.py}","lines_changed":10}]},"message":"rename module"},{"commit":"1da623b30ef6f9b12ac231518d2d4e7dadcf717b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":9}]},"message":"add items"},{"commit":"b10ca64646e93d9797182ea046f4956a17b37627","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":71,"deletions":71,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":142}]},"message":"change osx_inode and osx_flags to unix_inode and unix_flags. Also rename netstat_osx module to netstat_freebsd_osx"},{"commit":"2128763ee67a07da6ebf123abeec39794bc1f4e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":12,"files":["tests/test_netstat.py"],"file_stats":[{"name":"tests/test_netstat.py","lines_changed":24}]},"message":"fix osx version from 16.4 to 14.6"},{"commit":"a27e7ed39c63c04cfa78caceaada42f7a9496a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":12,"deletions":12,"files":["tests/fixtures/centos-7.7/netstat-r.json","tests/fixtures/centos-7.7/netstat-rne.json","tests/fixtures/centos-7.7/netstat-rnee.json","tests/fixtures/centos-7.7/route-vn.json","tests/fixtures/centos-7.7/route.json","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-rnl.json","tests/fixtures/ubuntu-18.04/netstat-r.json","tests/fixtures/ubuntu-18.04/netstat-rne.json","tests/fixtures/ubuntu-18.04/netstat-rnee.json","tests/fixtures/ubuntu-18.04/route-vn.json","tests/fixtures/ubuntu-18.04/route.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/netstat-r.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/netstat-rne.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/netstat-rnee.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/route-vn.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/route.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-r.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-rnl.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/netstat-r.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/netstat-rne.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/netstat-rnee.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/route-vn.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/route.json","lines_changed":2}]},"message":"test updates for added route_flags_pretty and flags_pretty fields"},{"commit":"f07b7eaa474eb87dbdbc7fbe41b9386feff7bee2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":38,"deletions":12,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":50}]},"message":"add flags_pretty"},{"commit":"6ce18de84ce16a926f9cd97c3210ef209c3352da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":130,"deletions":69,"files":["jc/parsers/netstat.py","jc/parsers/netstat_linux.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":139},{"name":"jc/parsers/netstat_linux.py","lines_changed":23},{"name":"jc/parsers/netstat_osx.py","lines_changed":37}]},"message":"add route_flags_pretty"},{"commit":"8631b756e7ab8cd71c2a3eb288e2d1823cec5782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":76,"deletions":0,"files":["tests/fixtures/freebsd12/netstat-Aa.out","tests/fixtures/freebsd12/netstat-an.out","tests/fixtures/freebsd12/netstat-i.out","tests/fixtures/freebsd12/netstat-r.out"],"file_stats":[{"name":"tests/fixtures/freebsd12/netstat-Aa.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-an.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-i.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/netstat-r.out","lines_changed":20}]},"message":"add freebsd test files"},{"commit":"7414d984125300164a5b6156d7a80128d4d6cb15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":18,"deletions":18,"files":["jc/parsers/df.py","jc/parsers/fstab.py","jc/parsers/mount.py","jc/parsers/ntpq.py","jc/parsers/stat.py","jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":6},{"name":"jc/parsers/fstab.py","lines_changed":6},{"name":"jc/parsers/mount.py","lines_changed":6},{"name":"jc/parsers/ntpq.py","lines_changed":6},{"name":"jc/parsers/stat.py","lines_changed":6},{"name":"jc/parsers/uname.py","lines_changed":6}]},"message":"add freebsd compatibility"},{"commit":"d7b19892e8fb11e17fcbadcdbb08d49897d7754f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":10,"deletions":7,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":13},{"name":"jc/parsers/netstat_osx.py","lines_changed":4}]},"message":"add freebsd support for netstat -i"},{"commit":"96df396eaf4e030113005a95e525d644c394dfe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"2f6f640317da5af894f34f187c4243ef0c599d07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"spelling"},{"commit":"c4a0a50f3a3ac5833ab5d2f8a0cb3f18da335812","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"add nix-env"},{"commit":"658f8a3842273cea049689b3aea15d89a7294b24","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":13}]},"message":"add zypper and ports info"},{"commit":"bfb876a1e394ff63c6773965ba0b65da4e109c1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"formatting"},{"commit":"90c34b1f4ee2d9ec8125346bb90b227f76ada2ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"fix dmidecode example"},{"commit":"3f9164ea77ec41e1b0671d0a642900d8e36faf9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"bold formatting"},{"commit":"7fd6fecbf5a08b1f13aa7e906e94be9bc126780a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"8029f72363a4d19938df07603f03a0147f6246a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":10,"deletions":7,"files":["changelog.txt","docs/parsers/stat.md","jc/cli.py","jc/parsers/stat.py","setup.py","tests/fixtures/osx-10.14.6/stat.json"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":6},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/stat.json","lines_changed":2}]},"message":"change osx_flags from integer to string"},{"commit":"c7fdce5d3b7566a7d290627767c47d9c196e02ad","merge":"f5627a4 84f48aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #62 from kellyjonbrazil/dev\n\nDev v1.11.0"},{"commit":"84f48aa369a458f534523ecc1e3aaaf403d06f1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"2e9a0a9c1221dd01bd683ecbc4871d03738da671","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]},"message":"add features"},{"commit":"c1f6f2b9508e558ab88b4a0a61e93a6cf5460bea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":116,"deletions":4,"files":["docs/parsers/stat.md","jc/parsers/stat.py","tests/fixtures/osx-10.14.6/stat.json","tests/fixtures/osx-10.14.6/stat.out","tests/test_stat.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":8},{"name":"jc/parsers/stat.py","lines_changed":5},{"name":"tests/fixtures/osx-10.14.6/stat.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/stat.out","lines_changed":94},{"name":"tests/test_stat.py","lines_changed":12}]},"message":"osx fixes and tests"},{"commit":"ede21bca13c4b46899721f01d979c8b063f861a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":110,"deletions":78,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":188}]},"message":"add OSX support for stat"},{"commit":"8dd9a9f9cbc70a19176f909f6ac76b2bcf670736","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":45,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-i.json","tests/fixtures/osx-10.14.6/netstat-i.json","tests/fixtures/ubuntu-18.04/netstat-i.json","tests/fixtures/ubuntu-18.04/netstat-i.out","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/netstat-i.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-i.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-i.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-i.out","lines_changed":4},{"name":"tests/test_netstat.py","lines_changed":38}]},"message":"add netstat -i tests"},{"commit":"04f92cd1330759e4bad1c0304b9e1c28e8d32d59","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":166,"deletions":4,"files":["README.md","docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_linux.py","tests/fixtures/centos-7.7/netstat-i.out"],"file_stats":[{"name":"README.md","lines_changed":32},{"name":"docs/parsers/netstat.md","lines_changed":50},{"name":"jc/parsers/netstat.py","lines_changed":44},{"name":"jc/parsers/netstat_linux.py","lines_changed":39},{"name":"tests/fixtures/centos-7.7/netstat-i.out","lines_changed":5}]},"message":"add linux support for netstat -i"},{"commit":"8be8d2393b276a9249e1c573ce19cf630f0942fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":99,"deletions":3,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-i.out"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":19},{"name":"jc/parsers/netstat_osx.py","lines_changed":40},{"name":"tests/fixtures/osx-10.14.6/netstat-i.out","lines_changed":43}]},"message":"add netstat -i support for OSX"},{"commit":"0a879681be68fe2e6e5c013ab0fe18de99b04f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":97,"deletions":282,"files":["README.md","docs/parsers/netstat.md","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":37},{"name":"docs/parsers/netstat.md","lines_changed":171},{"name":"jc/parsers/netstat.py","lines_changed":171}]},"message":"add netstat -r to docs"},{"commit":"2ca1587a49511899bf719e0b0c7de32158fc491d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":102,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-r.json","tests/fixtures/centos-7.7/netstat-rne.json","tests/fixtures/centos-7.7/netstat-rnee.json","tests/fixtures/ubuntu-18.04/netstat-r.json","tests/fixtures/ubuntu-18.04/netstat-r.out","tests/fixtures/ubuntu-18.04/netstat-rne.json","tests/fixtures/ubuntu-18.04/netstat-rne.out","tests/fixtures/ubuntu-18.04/netstat-rnee.json","tests/fixtures/ubuntu-18.04/netstat-rnee.out","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/netstat-r.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-rne.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-rnee.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-r.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-r.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/netstat-rne.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-rne.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/netstat-rnee.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-rnee.out","lines_changed":5},{"name":"tests/test_netstat.py","lines_changed":81}]},"message":"add linux netstat -r tests"},{"commit":"ec2cd2d708a57c0458657416bedcb4340cb40901","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":70,"deletions":11,"files":["docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_linux.py","jc/parsers/netstat_osx.py","tests/fixtures/centos-7.7/netstat-r.out","tests/fixtures/centos-7.7/netstat-rne.out","tests/fixtures/centos-7.7/netstat-rnee.out","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-rnl.json"],"file_stats":[{"name":"docs/parsers/netstat.md","lines_changed":11},{"name":"jc/parsers/netstat.py","lines_changed":13},{"name":"jc/parsers/netstat_linux.py","lines_changed":37},{"name":"jc/parsers/netstat_osx.py","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-r.out","lines_changed":5},{"name":"tests/fixtures/centos-7.7/netstat-rne.out","lines_changed":5},{"name":"tests/fixtures/centos-7.7/netstat-rnee.out","lines_changed":5},{"name":"tests/fixtures/osx-10.14.6/netstat-r.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-rnl.json","lines_changed":2}]},"message":"add netstat -r support for linux"},{"commit":"5d0dbece9317e84a47d9f4b2d18a9ffa33fbee6e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":288,"deletions":5,"files":["docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-r.out","tests/fixtures/osx-10.14.6/netstat-rnl.json","tests/fixtures/osx-10.14.6/netstat-rnl.out","tests/test_netstat.py"],"file_stats":[{"name":"docs/parsers/netstat.md","lines_changed":17},{"name":"jc/parsers/netstat.py","lines_changed":23},{"name":"jc/parsers/netstat_osx.py","lines_changed":37},{"name":"tests/fixtures/osx-10.14.6/netstat-r.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-r.out","lines_changed":93},{"name":"tests/fixtures/osx-10.14.6/netstat-rnl.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-rnl.out","lines_changed":96},{"name":"tests/test_netstat.py","lines_changed":25}]},"message":"add netstat -r functionality for OSX"},{"commit":"df1e4b414b2bda5be3153767cd854b2483ba600b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":[".gitignore"],"file_stats":[{"name":".gitignore","lines_changed":1}]},"message":"remove unused folder"},{"commit":"40760991e7dae43cd15134310f7bbb5ce0f58dae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["LICENSE.md"],"file_stats":[{"name":"LICENSE.md","lines_changed":2}]},"message":"update copyright date"},{"commit":"464f5f86cf2c8fe6a1a857b0ad4d221a3edf3d88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"update description"},{"commit":"7b09e9fccdd4f09218a500b54c898ada1b9843c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":8,"deletions":5,"files":["docs/parsers/dmidecode.md","jc/parsers/dmidecode.py","tests/fixtures/centos-7.7/dmidecode.json","tests/fixtures/fedora32/dmidecode.json","tests/fixtures/ubuntu-18.04/dmidecode.json"],"file_stats":[{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":5},{"name":"tests/fixtures/centos-7.7/dmidecode.json","lines_changed":2},{"name":"tests/fixtures/fedora32/dmidecode.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dmidecode.json","lines_changed":2}]},"message":"set empty values to Null and update fixtures"},{"commit":"6cba7d429898d331c674c778f8bd85ba75a8dca9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"remove linux from description"},{"commit":"9730f62e4970b5a4490f8dc24b6cfb9cacd0cbf2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":151,"deletions":133,"files":["jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json","tests/fixtures/osx-10.14.6/netstat.out"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":7},{"name":"tests/fixtures/osx-10.14.6/netstat-Abn.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-An.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat.out","lines_changed":271}]},"message":"fixup name field and update test fixtures"},{"commit":"e0c1c87f549eee000b93b5f5a3e8d0b052eb7d32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":8}]},"message":"formatting"},{"commit":"931b3d2b836b251590497f4cfa65f106762086c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"e5d561baeecf1fd83a884b3cd9d322762f750dfb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":1}]},"message":"add multipath condition for osx detection"},{"commit":"2867593e7aa12299686e2c6aa0f2a79a9b550b53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":6}]},"message":"changelog update"},{"commit":"dd52fee5635c977d5c77046ab9fe78d2ed10deef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":2141,"deletions":0,"files":["tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-Abn.out","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat-An.out","tests/fixtures/osx-10.14.6/netstat.json","tests/fixtures/osx-10.14.6/netstat.out","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/netstat-Abn.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-Abn.out","lines_changed":689},{"name":"tests/fixtures/osx-10.14.6/netstat-An.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-An.out","lines_changed":689},{"name":"tests/fixtures/osx-10.14.6/netstat.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat.out","lines_changed":724},{"name":"tests/test_netstat.py","lines_changed":36}]},"message":"osx netstat tests and fixtures"},{"commit":"8e1f8858273e671a882a07eae1c35b38f5298c94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":7}]},"message":"fix filtered netstat views"},{"commit":"2d39a58f902e6af77f8f96ffcd1d68b7cbadd56c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":81,"deletions":14,"files":["README.md","docs/parsers/dmidecode.md","docs/parsers/netstat.md","jc/parsers/dmidecode.py"],"file_stats":[{"name":"README.md","lines_changed":67},{"name":"docs/parsers/dmidecode.md","lines_changed":4},{"name":"docs/parsers/netstat.md","lines_changed":20},{"name":"jc/parsers/dmidecode.py","lines_changed":4}]},"message":"doc update"},{"commit":"9c4fa2ae2601ca4880c0b078fa917f01f1392e0e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":22,"deletions":2,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":21},{"name":"jc/parsers/netstat_osx.py","lines_changed":3}]},"message":"integer conversions and icmp fix"},{"commit":"de52d84e82df6d8c5e2416c6bc44e59c41c685da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":17}]},"message":"fix udp state and udp46 entries"},{"commit":"ce9b55059a28d363b8b0ae4f3ccbdbdc4bf4b58e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":185,"deletions":167,"files":["jc/parsers/netstat.py","jc/parsers/netstat_linux.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":171},{"name":"jc/parsers/netstat_linux.py","lines_changed":181}]},"message":"organize files"},{"commit":"bcd370a6a01a115d470776f5690f8571d68d3930","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":15,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":16},{"name":"jc/parsers/netstat_osx.py","lines_changed":4}]},"message":"code cleanup"},{"commit":"c8216850abd2d0b8cc6761453f853f296e8a28f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":55,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":74}]},"message":"code cleanup"},{"commit":"f5feedb90b39e5c3f4564615482d47ccd145844f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":10,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":11}]},"message":"fix comments"},{"commit":"a4371cd187fe5077018edbfeee77eb17c6a90ad3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":6}]},"message":"support netstat -A"},{"commit":"9d5ba4c83404e4fab5c0f40c30b4735685499a31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":2}]},"message":"formatting"},{"commit":"1639dee1bb93f6f89e8bb7b37134dc1f561c479c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":35,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":45}]},"message":"fix parse_post"},{"commit":"9363f430f20951e6fa739f06c85c5b6b3421b60d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":3}]},"message":"use list extend method to simplify code"},{"commit":"9192a0907364c772558380be1373b8dcea972a6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":124,"deletions":34,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":158}]},"message":"parse all sections"},{"commit":"b915eb97556ccc5fc60e8d23f7298ffec2d8e3b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":237,"deletions":55,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":118},{"name":"jc/parsers/netstat_osx.py","lines_changed":174}]},"message":"initial osx parser"},{"commit":"1cfcc2b592f682d2b50a0c4188fa3ae832a6c682","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":2}]},"message":"tighten up line test logic when counting tabs"},{"commit":"7138dd02b73073441a52c9b574bf0d6e02f0d7d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":11}]},"message":"cleanup variables after adding to item"},{"commit":"b4276643b70f7820f8f53df22b32fffb54e30ca2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":56,"deletions":0,"files":["tests/fixtures/centos-7.7/dmidecode.json","tests/fixtures/fedora32/dmidecode.json","tests/fixtures/ubuntu-18.04/dmidecode.json","tests/test_dmidecode.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/dmidecode.json","lines_changed":1},{"name":"tests/fixtures/fedora32/dmidecode.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dmidecode.json","lines_changed":1},{"name":"tests/test_dmidecode.py","lines_changed":53}]},"message":"add dmidecode tests and fixtures"},{"commit":"2ef00763bfe7c4348f30026759941efe39861a0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":4}]},"message":"fix first item"},{"commit":"54364928fc826ead7774a4cec1bcb73a5cb9ee0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":74,"deletions":81,"files":["docs/parsers/dmidecode.md","jc/parsers/dmidecode.py"],"file_stats":[{"name":"docs/parsers/dmidecode.md","lines_changed":37},{"name":"jc/parsers/dmidecode.py","lines_changed":118}]},"message":"fix oddities like hybrid single/multiline data and items containing multiple records"},{"commit":"09b3b4932b0fa4a2b18c88a8465c15a194b727e6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":35430,"deletions":0,"files":["tests/fixtures/centos-7.7/dmidecode.out","tests/fixtures/fedora32/dmidecode.out","tests/fixtures/ubuntu-18.04/dmidecode.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/dmidecode.out","lines_changed":11810},{"name":"tests/fixtures/fedora32/dmidecode.out","lines_changed":11810},{"name":"tests/fixtures/ubuntu-18.04/dmidecode.out","lines_changed":11810}]},"message":"add dmidecode output fixtures"},{"commit":"29d6670119d8fcd0344e90f01bfb6260aa936e50","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":10}]},"message":"convert integers"},{"commit":"2f654b5f1acda01192294f4c18a5a31363e7f387","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["docs/parsers/dmidecode.md"],"file_stats":[{"name":"docs/parsers/dmidecode.md","lines_changed":37}]},"message":"doc update"},{"commit":"e53b9f5992450b53efc886b4fa9ca16f3dd07530","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":37}]},"message":"add caveats to documentation"},{"commit":"addb234e6162c58750cb67947bc4776635bf54fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":153,"deletions":0,"files":["docs/parsers/dmidecode.md"],"file_stats":[{"name":"docs/parsers/dmidecode.md","lines_changed":153}]},"message":"add dmidecode doc"},{"commit":"76eca3b65911a0a340d3d94322a8145ee89c50da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":1}]},"message":"add dmidecode"},{"commit":"f90dec4c0ecf88623fb22273b7527ec8884826c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":94,"deletions":5,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":99}]},"message":"add examples to documentation"},{"commit":"8900a59d4cb424ff58d1eb27f8fda7ea0a668a5c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":19,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":20}]},"message":"simplify logic by removing redundant block"},{"commit":"6685138200d5955115707d04aad0293ea8af5b15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":2}]},"message":"fix for missing multi-line values that come immediately after a previous multi-line value"},{"commit":"4d3e65b980d50164b8220e59560822b9871580ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":5}]},"message":"fix missing values"},{"commit":"e9282bb546f560da6396f44e2ce9e04136348e2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":175,"deletions":0,"files":["jc/cli.py","jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/dmidecode.py","lines_changed":174}]},"message":"add dmidecode parser"},{"commit":"f5627a45947e5e76e5f3e64d9b30099fe0b962a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"81ffdb25105c681c8ed12336d220a102b7f4215e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"remove shebang for Fedora packaging"},{"commit":"4c00a99850cb6f69713be7c6ad9ffba11924d9b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"2bfcb45b28e2174a8bbc27237e619b5c232ccae8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":0}]},"message":"make cli.py executable"},{"commit":"ab0c10e791283affb227d0d5306701ba7fd29d13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["LICENSE.md","README.md"],"file_stats":[{"name":"LICENSE.md","lines_changed":0},{"name":"README.md","lines_changed":0}]},"message":"remove execute permissions"},{"commit":"2c1935115de03a28fe92674b04b2542b0eccb8fe","merge":"99070fa d98e43d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #61 from kellyjonbrazil/dev\n\nDev v1.10.10"},{"commit":"d98e43dc78205d3224bfc1e67de2da3c5fb7ea9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"add netstat item"},{"commit":"9348988d646d9b9c9970c19e84f311554ae38e7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":0,"files":["tests/test_netstat.py"],"file_stats":[{"name":"tests/test_netstat.py","lines_changed":12}]},"message":"add netstat test for Fedora32"},{"commit":"1285c664679c40b18327c89b85921a80b01f0191","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":140,"deletions":0,"files":["tests/fixtures/fedora32/netstat.json","tests/fixtures/fedora32/netstat.out"],"file_stats":[{"name":"tests/fixtures/fedora32/netstat.json","lines_changed":1},{"name":"tests/fixtures/fedora32/netstat.out","lines_changed":139}]},"message":"netstat with bluetooth section"},{"commit":"b7191bbc130e0f33d02c0a4819fa91ffff1599d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":15}]},"message":"handle bluetooth section (ignore for now)"},{"commit":"98b97509f7893cb95e9651ce9706db5c961aa997","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"2b2b570490f3834367a598579473001f45738e8a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":21,"deletions":0,"files":["tests/fixtures/fedora32/last.json","tests/fixtures/fedora32/last.out","tests/test_last.py"],"file_stats":[{"name":"tests/fixtures/fedora32/last.json","lines_changed":1},{"name":"tests/fixtures/fedora32/last.out","lines_changed":8},{"name":"tests/test_last.py","lines_changed":12}]},"message":"add tests for 'gone - no logout'"},{"commit":"cce2d1ff298f2284c43c4534144329f3533a81ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":6}]},"message":"add condition for 'gone - no logout'"},{"commit":"b79600c57249cbb65805caad2524cc2492342be6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"version bump"},{"commit":"140f1a85437745296b56976bef1b46514e323a4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":7,"deletions":7,"files":["tests/fixtures/centos-7.7/ls-R-newlines.json","tests/fixtures/centos-7.7/ls-R.json","tests/fixtures/centos-7.7/ls-glob.json","tests/fixtures/osx-10.14.6/ls-glob.json","tests/fixtures/ubuntu-18.04/ls-R-newlines.json","tests/fixtures/ubuntu-18.04/ls-R.json","tests/fixtures/ubuntu-18.04/ls-glob.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ls-R-newlines.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ls-R.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ls-glob.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-glob.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ls-R-newlines.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ls-R.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ls-glob.json","lines_changed":2}]},"message":"test fixes for issue #60"},{"commit":"e34657cfde6816ab7a7415d83580df0a1d98a5a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"fix issue #60 that was skipping the first file in some instances using -R without -l"},{"commit":"99070fa6073c4415a6faf8ca69dd6aa089af4062","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"2b46785b1f1281ee63df9159e36068f4607ad9b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":25,"deletions":3,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":28}]},"message":"add MIT license to vendorized IfconfigParser class"},{"commit":"c72562524b2b9aaca0be372bb24343158829ba5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"fully remove tests from packaging"},{"commit":"b7dd6441c7e3f54f8a260fceef49aae6816c7151","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":1,"files":["changelog.txt","jc/cli.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/cli.py","lines_changed":2}]},"message":"version bump"},{"commit":"31fcc2f755ad86622cf51a75879b14d44f246300","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["MANIFEST.in"],"file_stats":[{"name":"MANIFEST.in","lines_changed":1}]},"message":"remove manifest.in - no longer needed due to removing tests"},{"commit":"b391aa14bceffedb5a9c13f3f908923790edefc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["setup.cfg"],"file_stats":[{"name":"setup.cfg","lines_changed":2}]},"message":"add license_file to metadata"},{"commit":"d3c45debbb6690acd341fbcc9b99d1ae4cf0a43c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":5}]},"message":"remove tests and add license file"},{"commit":"5b08469b874553744bd5c5b1fa6581f4dcffacd0","merge":"8cf00a2 4a77ec6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #57 from kellyjonbrazil/dev\n\nDev v1.10.7"},{"commit":"4a77ec63a46554c84e646d31564230774ed87431","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["docs/parsers/ifconfig.md"],"file_stats":[{"name":"docs/parsers/ifconfig.md","lines_changed":11}]},"message":"add IfconfigParser class"},{"commit":"d13606b6dc2c207be6dea89a2c3e713c18a574b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":7,"deletions":6,"files":["changelog.txt","jc/cli.py","requirements.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"requirements.txt","lines_changed":3},{"name":"setup.py","lines_changed":5}]},"message":"modify dependencies for easier packaging into Fedora"},{"commit":"05291c93bba1aa364ba1ac7f2508e24bb362a814","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":198,"deletions":3,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":201}]},"message":"vendorize ifconfig-parser module for easier packaging in Fedora"},{"commit":"8cf00a208eb8493300331e7361b72e4f9e3f140e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"change text to strings"},{"commit":"06d73c88767a5b4d6003231c897c447ee5e1faa5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"649c646ea25ac7f89900cffa8919df01671bd32d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"add brew install option"},{"commit":"b7756d92501a7b8ba8e77d77d9d3718a58425beb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"1cd2cd954c21e5caec333507bd81819c82d45b49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":16,"files":["tests/fixtures/osx-10.11.6/du.json","tests/fixtures/osx-10.11.6/du.out","tests/fixtures/osx-10.14.6/du.json","tests/fixtures/osx-10.14.6/du.out"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/du.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/du.out","lines_changed":7},{"name":"tests/fixtures/osx-10.14.6/du.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/du.out","lines_changed":7}]},"message":"remove references to homebrew/shim to allow tests to pass in homebrew packaging ci/cd"},{"commit":"72020b8da999ddca6f9ba82da235c9f42e4f4273","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":22,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":24}]},"message":"move packages info to jc-packages github page"},{"commit":"cf9720b749e7fc8caed0d2f1f2b1727a22a156b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"update install info"},{"commit":"967b9db7f90a3c3a0352edde7f4455c5f5d45b18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":6}]},"message":"spelling"},{"commit":"bb3acb1182f4d509f9ddc7dfcffa4578e0a2bd5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"560c7f7e6d1f8a69ab026ddbff753d232ca1d00b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"79b28417644e00b933f531374d2f7fe8051e61be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":26}]},"message":"add new binary package install info"},{"commit":"a06a89cbd11026aa3910fadd1eff7fe388d02507","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"431bd969eb4809424fe99a02a7decb98bce9ea51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"use sys.exit(0) instead of exit()"},{"commit":"c87b722aec6e6964c516bbb8e80667ad7d9c6bc7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"spelling"},{"commit":"3688b8b014a1cf753b2207fbf3ebf0292c3fd672","merge":"99f7842 07b8d9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #56 from kellyjonbrazil/dev\n\nDev v1.10.4"},{"commit":"07b8d9e0c0d723d93e6c652f5b6156c467c451c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"7454b53e395e9122c00d4cf06b1c2af109913d7a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"formatting"},{"commit":"3d6a76024de0f9dcf91a4ab49cabe461074114fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":18}]},"message":"update with JC_COLORS info"},{"commit":"421b9809575a8de00229af4b851739889638ac74","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":37,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":55}]},"message":"JC_COLORS working"},{"commit":"4a22e27d6a80a988f4de17bce421110d6abb8867","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":64,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":64}]},"message":"add set_env_colors function"},{"commit":"99f7842dee0f79cf933fae185cf8b0ed7c8b210f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":11,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":8},{"name":"setup.py","lines_changed":2}]},"message":"fix brek on pipe error"},{"commit":"7f869b4b187d70752207a7e74c13b858446f898f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":11,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":15},{"name":"setup.py","lines_changed":2}]},"message":"change colors to ansi and match jello style"},{"commit":"9665f4ee84680f3a8154b8a43ea668af2907782c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add pypi badge"},{"commit":"606904d48b1c7e0c19a940b5be0b564d1b5be6c8","merge":"302f05c 3f5279b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #53 from kellyjonbrazil/dev\n\nDev v1.10.1"},{"commit":"3f5279b97c386c736e0e2faa5c39d68ef89c46aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to 1.10.1"},{"commit":"f5ec21e6ac612566af93158fc3968b901322d04a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_luf.py"],"file_stats":[{"name":"jc/parsers/systemctl_luf.py","lines_changed":4}]},"message":"use in instead of find()"},{"commit":"578a284465f014fe71ad6ac00bd41dc24ab2ced9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_ls.py"],"file_stats":[{"name":"jc/parsers/systemctl_ls.py","lines_changed":4}]},"message":"use in instead of find()"},{"commit":"422e392d9d98a7864312fc7fbd7f45537b71acbe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_lj.py"],"file_stats":[{"name":"jc/parsers/systemctl_lj.py","lines_changed":4}]},"message":"use in instead of find()"},{"commit":"54dfffd34a17d1194690142ac403391fc65bb85f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl.py"],"file_stats":[{"name":"jc/parsers/systemctl.py","lines_changed":4}]},"message":"use in instead of find()"},{"commit":"cffba64d2b9165b44a8856665807111a2ad3a190","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":14}]},"message":"use in and startswith() instead of find()"},{"commit":"56a0c12a59bb252d3b7d0929f9fb19b4d96a8437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/pip_list.py"],"file_stats":[{"name":"jc/parsers/pip_list.py","lines_changed":6}]},"message":"use in instead of find()"},{"commit":"c174d3de18923b2b03befb5a7dfcbd977a8e147e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":14}]},"message":"use in and startswith() instead of find()"},{"commit":"a9c59ef9fc1bb68c9d0d7beffbeb670baf5b1e3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/mount.py"],"file_stats":[{"name":"jc/parsers/mount.py","lines_changed":2}]},"message":"fix logic to not for ' type ' in cleandata[0]"},{"commit":"abdb9b26732a6a71f5938d665b2ca43a381e1b33","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/mount.py"],"file_stats":[{"name":"jc/parsers/mount.py","lines_changed":4}]},"message":"use in instead of find()"},{"commit":"548aaab6262878d21f8b9539950cfad48638e35c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":42,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":43}]},"message":"remove old commented code"},{"commit":"20571c87ae9e1ca8a1f3120511910751420a35ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":6}]},"message":"us in instead of find()"},{"commit":"19e49200de5c731f76b42e80388c5223e8097e39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":2}]},"message":"version bump"},{"commit":"d32f5c67a91ede572c88e431b2ad0ce4d6c87dec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":4}]},"message":"use startswith() instead of find()"},{"commit":"b83b626435c55d2aa63e56dd8f22603da59e7626","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":4}]},"message":"use startswith() instead of find()"},{"commit":"ab2c1b25ec5da5f2ba238868c4dfca95a44da30e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/hosts.py"],"file_stats":[{"name":"jc/parsers/hosts.py","lines_changed":6}]},"message":"use startswith() and in instead of find()"},{"commit":"f2d46313a4508f13656cdb360f83fdf4116cc7d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/fstab.py"],"file_stats":[{"name":"jc/parsers/fstab.py","lines_changed":4}]},"message":"use startswith() instead of find()"},{"commit":"87e4796a6c936793e2784346819c7033d59b91e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":4}]},"message":"use in instead of .find()"},{"commit":"0014a5c2f4c056c2683d6614a65d778b1f527932","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab_u.py"],"file_stats":[{"name":"jc/parsers/crontab_u.py","lines_changed":6}]},"message":"us startswith() and in instead of .find()"},{"commit":"7af56e0dadab7d8b9538f3b7a550ad6dd1ac217d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":6}]},"message":"use startswith() and in instead of find()"},{"commit":"a5ae6e3c017b041f9079ff12455b7551ad204cb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":6}]},"message":"use startswith() instead of find()"},{"commit":"fe1a0d1faf46f55ed2888ed0065f3f3144691ed8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":9,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":19}]},"message":"use in instead of .find()"},{"commit":"302f05cdda305e46e69b74d5b0096f64c17da637","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"prettify style block"},{"commit":"c0044be7b0b6dadcffb64cb88ad92bf653dd2b6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"rename color grey to gray"},{"commit":"01100788070b82b4b827ef356972fa9b8f737eeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update badge"},{"commit":"42eacb45f8fdf8085c6231bf5297629c2ec97c22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"rename to Tests"},{"commit":"a43e2e19916662d509883457c160d7f95f97ae12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add -m option info"},{"commit":"c8b721d4f6e46a2db77e1140b9caeb3b403fef72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":9,"deletions":3,"files":["changelog.txt","jc/cli.py","requirements.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/cli.py","lines_changed":2},{"name":"requirements.txt","lines_changed":1},{"name":"setup.py","lines_changed":5}]},"message":"version bump to 1.10.0"},{"commit":"d0bfddc3d9989444757d6668726c916e5363620b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":41,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":47}]},"message":"add color and -m monochrome option"},{"commit":"6b925a16c87cf75bb30edfda38511e8f84a4f6d6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add tests badge"},{"commit":"89ebd9fc2271d2c76353d5707bfd4afb7dedc278","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":0,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":10},{"name":"jc/parsers/dig.py","lines_changed":10}]},"message":"add axfr info to schema"},{"commit":"6b4ba662317629839aa62fbcfefb8ed3337c37ef","merge":"8ec8cd6 5b697dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #52 from kellyjonbrazil/dev\n\nDev v1.9.3"},{"commit":"5b697dc38141cdd47fcdd63bf295a80a7da86697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":72,"deletions":0,"files":["tests/test_dig.py"],"file_stats":[{"name":"tests/test_dig.py","lines_changed":72}]},"message":"add more dig tests"},{"commit":"9ba73c95d1a528a9a92be4068805bb5aa027901e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":215,"deletions":0,"files":["tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/centos-7.7/dig-axfr.out","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-axfr.out","tests/fixtures/ubuntu-18.04/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-axfr.out","tests/test_dig.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/dig-axfr.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/dig-axfr.out","lines_changed":60},{"name":"tests/fixtures/osx-10.14.6/dig-axfr.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig-axfr.out","lines_changed":59},{"name":"tests/fixtures/ubuntu-18.04/dig-axfr.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dig-axfr.out","lines_changed":57},{"name":"tests/test_dig.py","lines_changed":36}]},"message":"add tests"},{"commit":"93aa39044749c4c0ed749f62fb00fc1c76dc5af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to v1.9.3"},{"commit":"3cfb8945ddd83c00a720c44e2c1d97da0d8bad25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":18}]},"message":"use startswith() instead of find"},{"commit":"cd8d38f2a136c4f35efc020b3476d09e965b71f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":50,"deletions":1,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":51}]},"message":"add axfr support"},{"commit":"8ec8cd62944c59c462ab9f520c1dcfd14218b1ed","merge":"e5bea9a c028113","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #50 from kellyjonbrazil/dev\n\nDev v1.9.2"},{"commit":"c02811356153c2b4f8b2d7efb7f48bf8f7748068","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":5},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to v1.9.2"},{"commit":"5f22e1c8031b808ef02ffe078408bd58cc76e570","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":33,"deletions":0,"files":["tests/fixtures/osx-10.14.6/arp-a2.json","tests/fixtures/osx-10.14.6/arp-a2.out","tests/test_arp.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/arp-a2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/arp-a2.out","lines_changed":20},{"name":"tests/test_arp.py","lines_changed":12}]},"message":"fix and test for osx arp entries without ifscope"},{"commit":"d3351787e5cabd064c19e6617e9535e501686404","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":9,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":19}]},"message":"change osx detection"},{"commit":"e5bea9ae3b0a70b38f7da7dd9184343dbbd18887","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/file.py"],"file_stats":[{"name":"jc/parsers/file.py","lines_changed":2}]},"message":"version bump"},{"commit":"93c710abe9171568f61f65c4f84c040ffc24870c","merge":"400f5a4 c29e7cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #49 from kellyjonbrazil/dev\n\nDev v1.9.1"},{"commit":"c29e7cfe5cc4b2151912c6f618137d1b6c39c7be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":9,"deletions":6,"files":["README.md","changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to 1.9.1"},{"commit":"cb5c1ba00dc0e02bf6ad6c40096d99e319fa6171","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":101,"deletions":0,"files":["tests/fixtures/osx-10.14.6/file2.json","tests/fixtures/osx-10.14.6/file2.out","tests/test_file.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/file2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/file2.out","lines_changed":88},{"name":"tests/test_file.py","lines_changed":12}]},"message":"add tests for fix to make the file parser splitting more robust"},{"commit":"9a012b94e1942a14bc6dae3fb967ef618819c77b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/file.py"],"file_stats":[{"name":"jc/parsers/file.py","lines_changed":2}]},"message":"make splitting more robust"},{"commit":"400f5a44ece280cb0097d806b78a9490d2905600","merge":"c7cd2b6 a2ab5ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #48 from kellyjonbrazil/dev\n\nDev v1.9.0"},{"commit":"a2ab5bab91ea980399df1afb9d8071fa3282d04e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to v1.9.0"},{"commit":"fc8ab27361df3359b706125531b2643612d6996a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":93,"deletions":51,"files":["README.md","docs/parsers/ntpq.md","jc/parsers/ntpq.py","tests/fixtures/ubuntu-18.04/ntpq-p2.json","tests/fixtures/ubuntu-18.04/ntpq-p2.out","tests/test_ntpq.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"docs/parsers/ntpq.md","lines_changed":40},{"name":"jc/parsers/ntpq.py","lines_changed":59},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p2.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p2.out","lines_changed":24},{"name":"tests/test_ntpq.py","lines_changed":12}]},"message":"bugfix for misaligned columns and additional test for ntpq #31"},{"commit":"59f19d33a5c6677ea756a9424fdb032b430511a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":153,"deletions":0,"files":["tests/fixtures/centos-7.7/file.json","tests/fixtures/centos-7.7/file.out","tests/fixtures/osx-10.14.6/file.json","tests/fixtures/osx-10.14.6/file.out","tests/fixtures/ubuntu-18.04/file.json","tests/fixtures/ubuntu-18.04/file.out","tests/test_file.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/file.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/file.out","lines_changed":25},{"name":"tests/fixtures/osx-10.14.6/file.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/file.out","lines_changed":53},{"name":"tests/fixtures/ubuntu-18.04/file.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/file.out","lines_changed":20},{"name":"tests/test_file.py","lines_changed":52}]},"message":"add file command tests for #41"},{"commit":"dfc96181159748d019419a2cba7aa9cb3b7a2a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":260,"deletions":1,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/file.md","jc/cli.py","jc/parsers/file.py"],"file_stats":[{"name":"README.md","lines_changed":36},{"name":"changelog.txt","lines_changed":5},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/file.md","lines_changed":90},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/file.py","lines_changed":128}]},"message":"add file parser for issue #41"},{"commit":"8e02e5c75a11cf205299ee6f87b67f9b787cf55e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":5,"files":["jc/cli.py","tests/test_cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8},{"name":"tests/test_cli.py","lines_changed":3}]},"message":"fix issue with getting options with some commands #47"},{"commit":"970493ab9346a344b21be7614903ad81bc65a6e9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["jc/parsers/airport.py","jc/parsers/airport_s.py"],"file_stats":[{"name":"jc/parsers/airport.py","lines_changed":1},{"name":"jc/parsers/airport_s.py","lines_changed":1}]},"message":"add magic commands"},{"commit":"64d78956eb33ca0a2564fded3d12729ee036a915","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"update acknowledgment"},{"commit":"40c05346f4098f8eea14c42da07df3faa143587a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":25,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":37}]},"message":"re-adding optimizations from https://github.com/philippeitis"},{"commit":"e9b0bc1409a824a82dabd2479892b7d18bad8c3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/airport.py"],"file_stats":[{"name":"jc/parsers/airport.py","lines_changed":2}]},"message":"doc update"},{"commit":"798e6bb7d939176bb36771a6d41bd55403d583be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":29,"deletions":0,"files":["tests/fixtures/osx-10.14.6/airport-s.json","tests/test_airport_s.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/airport-s.json","lines_changed":1},{"name":"tests/test_airport_s.py","lines_changed":28}]},"message":"tests passing for airport -s. issue #46"},{"commit":"12a370deed03ba42d7b7ebb410195ce5f32bb9c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":372,"deletions":9,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/airport.md","docs/parsers/airport_s.md","jc/cli.py","jc/parsers/airport.py","jc/parsers/airport_s.py"],"file_stats":[{"name":"README.md","lines_changed":47},{"name":"changelog.txt","lines_changed":2},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/airport.md","lines_changed":4},{"name":"docs/parsers/airport_s.md","lines_changed":136},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/airport.py","lines_changed":5},{"name":"jc/parsers/airport_s.py","lines_changed":185}]},"message":"add airport -s parser for issue #46"},{"commit":"553bfbe1a0dd866851ba7eca66e9295c2097ad86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":40,"deletions":6,"files":["docs/parsers/airport.md","jc/parsers/airport.py","tests/test_airport.py"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":9},{"name":"jc/parsers/airport.py","lines_changed":9},{"name":"tests/test_airport.py","lines_changed":28}]},"message":"tests passing for airport -I. Issue #46"},{"commit":"52494321fcfe0dc7ee71d8d78210b3c10372a237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":120,"deletions":15,"files":["README.md","docs/parsers/airport.md","jc/parsers/airport.py","tests/fixtures/osx-10.14.6/airport-I.json","tests/fixtures/osx-10.14.6/airport-I.out"],"file_stats":[{"name":"README.md","lines_changed":22},{"name":"docs/parsers/airport.md","lines_changed":48},{"name":"jc/parsers/airport.py","lines_changed":62},{"name":"tests/fixtures/osx-10.14.6/airport-I.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/airport-I.out","lines_changed":2}]},"message":"fixes and docs for airport parser issue #46"},{"commit":"c6c9e06496683d2dd3586d17085801c7e698d960","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":196,"deletions":1,"files":["changelog.txt","docgen.sh","docs/parsers/airport.md","jc/cli.py","jc/parsers/airport.py","tests/fixtures/osx-10.14.6/airport-I.out","tests/fixtures/osx-10.14.6/airport-s.out"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/airport.md","lines_changed":64},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/airport.py","lines_changed":98},{"name":"tests/fixtures/osx-10.14.6/airport-I.out","lines_changed":15},{"name":"tests/fixtures/osx-10.14.6/airport-s.out","lines_changed":15}]},"message":"added airport command parser"},{"commit":"e3a6c05a58a2451e70975d8fabf644c56603c73d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":64,"deletions":17,"files":["docs/parsers/timedatectl.md","jc/parsers/timedatectl.py","tests/fixtures/centos-7.7/timedatectl.json","tests/fixtures/ubuntu-18.04/timedatectl.json","tests/test_timedatectl.py"],"file_stats":[{"name":"docs/parsers/timedatectl.md","lines_changed":18},{"name":"jc/parsers/timedatectl.py","lines_changed":21},{"name":"tests/fixtures/centos-7.7/timedatectl.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/timedatectl.json","lines_changed":1},{"name":"tests/test_timedatectl.py","lines_changed":40}]},"message":"timedatectl fixes, tests, and fixtures for issue #42"},{"commit":"391d06f68d1f45d33590d5407d3a5e4f723af717","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":35,"deletions":35,"files":["README.md","docs/parsers/ntpq.md","jc/parsers/ntpq.py","tests/fixtures/centos-7.7/ntpq-p.json","tests/fixtures/centos-7.7/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-p.json","tests/fixtures/ubuntu-18.04/ntpq-pn.json"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docs/parsers/ntpq.md","lines_changed":26},{"name":"jc/parsers/ntpq.py","lines_changed":32},{"name":"tests/fixtures/centos-7.7/ntpq-p.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ntpq-pn.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ntpq-pn.json","lines_changed":2}]},"message":"change selection_state to state"},{"commit":"99804ea06e0c70e3a82ddc7f9c7a42343374d700","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":222,"deletions":0,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/timedatectl.md","jc/cli.py","jc/parsers/timedatectl.py"],"file_stats":[{"name":"README.md","lines_changed":15},{"name":"changelog.txt","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/timedatectl.md","lines_changed":85},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/timedatectl.py","lines_changed":119}]},"message":"added timedatectl status parser"},{"commit":"51935deb2ad18e4ea3ca16954ce810354f6095a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":21,"deletions":0,"files":["tests/fixtures/centos-7.7/timedatectl.out","tests/fixtures/ubuntu-18.04/timedatectl.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/timedatectl.out","lines_changed":14},{"name":"tests/fixtures/ubuntu-18.04/timedatectl.out","lines_changed":7}]},"message":"timedatectl test fixtures"},{"commit":"b24d0c3a475b88d9ccf1a8fe29715ee60972fcad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":34,"deletions":2,"files":["README.md","jc/parsers/ntpq.py"],"file_stats":[{"name":"README.md","lines_changed":33},{"name":"jc/parsers/ntpq.py","lines_changed":3}]},"message":"ntpq docs"},{"commit":"762a886d6fdf5c2ad21d81868d138fb32621ed1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":133,"deletions":0,"files":["tests/fixtures/centos-7.7/ntpq-p.json","tests/fixtures/centos-7.7/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-p.json","tests/fixtures/ubuntu-18.04/ntpq-p.out","tests/fixtures/ubuntu-18.04/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-pn.out","tests/fixtures/ubuntu-18.04/ntqp-p.out","tests/test_ntpq.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ntpq-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ntpq-pn.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-18.04/ntpq-pn.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ntpq-pn.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-18.04/ntqp-p.out","lines_changed":21},{"name":"tests/test_ntpq.py","lines_changed":66}]},"message":"add ntpq tests"},{"commit":"2c3e9ddfe47f56cd7edc2fdf6317f7ecec0b7918","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":543,"deletions":0,"files":["changelog.txt","docgen.sh","docs/parsers/ntpq.md","jc/cli.py","jc/parsers/ntpq.py","tests/fixtures/centos-7.7/ntpq-p.out","tests/fixtures/centos-7.7/ntpq-pn.out"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ntpq.md","lines_changed":235},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/ntpq.py","lines_changed":291},{"name":"tests/fixtures/centos-7.7/ntpq-p.out","lines_changed":6},{"name":"tests/fixtures/centos-7.7/ntpq-pn.out","lines_changed":6}]},"message":"add ntpq parser for issue #31"},{"commit":"c7cd2b63c8f24e9d17c458880fe401d8032395ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":91,"files":["tests/fixtures/generic/oscar_age_male.csv"],"file_stats":[{"name":"tests/fixtures/generic/oscar_age_male.csv","lines_changed":91}]},"message":"delete unused test file"},{"commit":"f0528ea83112e71ff51c89be27fc9bbdfbbf1951","merge":"b5eaff2 5bc5596","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #45 from kellyjonbrazil/dev\n\nDev v1.8.1"},{"commit":"5bc5596f604fb87dffbfdf44ce2395b16bf01297","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":17,"deletions":4,"files":["changelog.txt","jc/cli.py","setup.py","tests/test_ls.py"],"file_stats":[{"name":"changelog.txt","lines_changed":5},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2},{"name":"tests/test_ls.py","lines_changed":12}]},"message":"version bump to 1.8.1"},{"commit":"2c27ac46be803b583caf82c1765bd0c35cee8bc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2454,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-lR-empty-folder.json","tests/fixtures/osx-10.14.6/ls-lR-empty-folder.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ls-lR-empty-folder.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-lR-empty-folder.out","lines_changed":2453}]},"message":"add ls test fixtures"},{"commit":"caad840153e40dc660a2d5e06a96f3451fef25f9","merge":"aff86ae 65bd7e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #44 from philippeitis/patch-5\n\nMove core magic() logic into seperate function for testability, minor tweaks"},{"commit":"65bd7e2904016141c1ed53cdd437865c66d7628e","merge":"17b6efe c3d7d7d","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #1 from kellyjonbrazil/pr/44\n\nMerge changes"},{"commit":"c3d7d7db12d4870fc4499e0e3445d85ae89f2aea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"removed whitespace"},{"commit":"56053103625af6fb7fa749fc5bc3dbdc62fc223c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":4,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":15}]},"message":"added tests, removed os import, changed to 'assertEqual'"},{"commit":"17b6efe82e6a558353b011c543489eaaf3a6d3ac","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":14,"deletions":0,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":14}]},"message":"Create basic tests for generate_magic_commands()"},{"commit":"a032ae56ae7d247e00415267b65b2a8b80a3302e","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"Pass args to generate_magic_command() to allow testing."},{"commit":"eab2f4b0566b4c76db661cbfa99a56a6bf8d6541","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":33,"deletions":19,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":52}]},"message":"Move core magic() logic into seperate function for testability, minor tweaks.\n\nWe only care about the command when testing magic() - by moving that out, we can easily test the command. I modified the code to return a boolean signalling that the command is valid, and the command itself to maintain the original functionality.\n\nI also made some small tweaks (removed a list() call, fixed a possible bug with no arguments., moved magic_dict instantiation past the fast path checks to avoid making a dict if not needed.)"},{"commit":"aff86ae6c71abfe1cbdba5c574a5f3707292ec19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":29,"deletions":39,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":68}]},"message":"reimpliment magic() based on the dictionary approach suggested by philippeitis"},{"commit":"7ece9ddc1a37551cdaaac50f37a48e6d98b18bf4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"version bump ls"},{"commit":"7cd048e839a7cc8404fd5abc153a3d315c207819","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update"},{"commit":"1e22f610a33903e8525d35a18b1dcf760a93791e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"fix for osx - doesn't print 'total xx' line if empty directory (issue #40)"},{"commit":"5249c972ae25e9b289a2667bf471aad5e58c70a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":4}]},"message":"add to changelog"},{"commit":"fd45f856a050f6c56a7a6b50b97b3d8c4de28af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":2}]},"message":"import jc.utils instead of jc"},{"commit":"c8ab40cd33b14a3a1937ecf64bb23e282f5bb921","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"],"file_stats":[{"name":".gitignore","lines_changed":1}]},"message":"ignore .github folder"},{"commit":"b2c872925b37254dac74578c1803b4127f8411c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":20,"insertions":208,"deletions":220,"files":["tests/test_ls.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_passwd.py","tests/test_pip_list.py","tests/test_ps.py","tests/test_route.py","tests/test_shadow.py","tests/test_ss.py","tests/test_systemctl_lj.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py","tests/test_who.py","tests/test_xml.py","tests/test_yaml.py"],"file_stats":[{"name":"tests/test_ls.py","lines_changed":132},{"name":"tests/test_lsmod.py","lines_changed":8},{"name":"tests/test_lsof.py","lines_changed":16},{"name":"tests/test_mount.py","lines_changed":16},{"name":"tests/test_netstat.py","lines_changed":40},{"name":"tests/test_passwd.py","lines_changed":12},{"name":"tests/test_pip_list.py","lines_changed":20},{"name":"tests/test_ps.py","lines_changed":32},{"name":"tests/test_route.py","lines_changed":16},{"name":"tests/test_shadow.py","lines_changed":8},{"name":"tests/test_ss.py","lines_changed":8},{"name":"tests/test_systemctl_lj.py","lines_changed":16},{"name":"tests/test_systemctl_ls.py","lines_changed":8},{"name":"tests/test_systemctl_luf.py","lines_changed":8},{"name":"tests/test_uname.py","lines_changed":16},{"name":"tests/test_uptime.py","lines_changed":16},{"name":"tests/test_w.py","lines_changed":16},{"name":"tests/test_who.py","lines_changed":24},{"name":"tests/test_xml.py","lines_changed":8},{"name":"tests/test_yaml.py","lines_changed":8}]},"message":"add utf-8 encoding for testing on Windows"},{"commit":"f48e229202f8ab1ebfa502ca57bb31cf673c7a62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":192,"deletions":192,"files":["tests/test_arp.py","tests/test_blkid.py","tests/test_crontab.py","tests/test_crontab_u.py","tests/test_csv.py","tests/test_df.py","tests/test_dig.py","tests/test_du.py","tests/test_env.py","tests/test_free.py","tests/test_fstab.py","tests/test_group.py","tests/test_gshadow.py","tests/test_history.py","tests/test_hosts.py","tests/test_id.py","tests/test_ifconfig.py","tests/test_ini.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_last.py"],"file_stats":[{"name":"tests/test_arp.py","lines_changed":32},{"name":"tests/test_blkid.py","lines_changed":40},{"name":"tests/test_crontab.py","lines_changed":4},{"name":"tests/test_crontab_u.py","lines_changed":8},{"name":"tests/test_csv.py","lines_changed":36},{"name":"tests/test_df.py","lines_changed":32},{"name":"tests/test_dig.py","lines_changed":24},{"name":"tests/test_du.py","lines_changed":16},{"name":"tests/test_env.py","lines_changed":8},{"name":"tests/test_free.py","lines_changed":16},{"name":"tests/test_fstab.py","lines_changed":8},{"name":"tests/test_group.py","lines_changed":12},{"name":"tests/test_gshadow.py","lines_changed":8},{"name":"tests/test_history.py","lines_changed":8},{"name":"tests/test_hosts.py","lines_changed":8},{"name":"tests/test_id.py","lines_changed":8},{"name":"tests/test_ifconfig.py","lines_changed":24},{"name":"tests/test_ini.py","lines_changed":8},{"name":"tests/test_iptables.py","lines_changed":48},{"name":"tests/test_jobs.py","lines_changed":8},{"name":"tests/test_last.py","lines_changed":28}]},"message":"utf-8 open for windows tests"},{"commit":"799fec92c39b1ff0696c6ebb182c4bef66b86e56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["tests/test_pip_show.py","tests/test_systemctl.py"],"file_stats":[{"name":"tests/test_pip_show.py","lines_changed":16},{"name":"tests/test_systemctl.py","lines_changed":8}]},"message":"utf-8 for windows support"},{"commit":"87a41c2fcaa395f108b5a5126ed77f7cc7fe5d6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["tests/test_lsblk.py","tests/test_stat.py"],"file_stats":[{"name":"tests/test_lsblk.py","lines_changed":16},{"name":"tests/test_stat.py","lines_changed":8}]},"message":"add utf-8 to open function"},{"commit":"7f85de0c46cda95d57b9677ba0ca3ea59690e502","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"add windows-latest"},{"commit":"13661b19934a74417713e98e3e1e4df6bb0f29ad","merge":"5f798d6 51d5c38","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #37 from philippeitis/continuous_integration\n\nEnable Continuous Integration with GitHub Actions."},{"commit":"51d5c3892d6ff1e2e6ac7c4f3e496e7d9ed4b6a7","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"Remove Windows tests, due to lack of support."},{"commit":"e4eab4641ac15220f2787c5d27b443ab8c718b86","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":3}]},"message":"Change line in blkid.py to trigger CI"},{"commit":"9b148e0ba37e18749d95608e1bac6c090ab83ee2","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["requirements.txt"],"file_stats":[{"name":"requirements.txt","lines_changed":3}]},"message":"Add requirements.txt"},{"commit":"de28932650d5027e2781011f1243b89f053b241d","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":7,"deletions":6,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":13}]},"message":"Consolidate dictionary into creation, trigger CI"},{"commit":"5f798d603e461d2de5adf74662ba4d4b121f28f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":3}]},"message":"version bump and ack to philippeitis"},{"commit":"a0757b2dd3fc0f3e26622941d93bd909dae0a1f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":5,"files":["jc/parsers/foo.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":6}]},"message":"optimize line parsing"},{"commit":"498d51b4e802cb40cac58aae1eff1f723bbbd896","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":31,"deletions":0,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":31}]},"message":"Enable Continuous Integration with GitHub Actions.\n\nThis automatically runs unit tests on various operating systems and Python versions when Python files are modified to ensure that functionality remains correct."},{"commit":"b06b6bae3f64f591c9075812dc1b632ef6d2da37","merge":"6aa2d5a 0652768","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #36 from philippeitis/patch-3\n\nSimplify process() in history.py, avoid list allocation in parse()"},{"commit":"b5eaff21372a58aefb66e5afc5e863db8355fee1","merge":"d75c406 c01bcd3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #35 from kellyjonbrazil/revert-34-patch-3\n\nRevert \"Simplify process() in history.py, avoid list allocation in parse()\""},{"commit":"c01bcd3734382a0c388d9f4041fc888171ca7675","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":25,"deletions":12,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":37}]},"message":"Revert \"Simplify process() in history.py, avoid list allocation in parse()\""},{"commit":"d75c4068caaf4adbe9a39fa452ae867421053673","merge":"d96b3a6 0652768","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #34 from philippeitis/patch-3\n\nSimplify process() in history.py, avoid list allocation in parse()"},{"commit":"6aa2d5a3d26f9f00c3334928f6f0e501860433da","merge":"69576f6 a63408c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #33 from philippeitis/patch-2\n\nHandle case where only options are passed."},{"commit":"065276805f0f2dd23a6382f0120ca07e9eae116f","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":12,"deletions":25,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":37}]},"message":"Simplify process() in history.py, avoid list allocation in parse()"},{"commit":"a63408c8cf3f99646be2b375f651d6cf417f7ae0","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"Handle case where only options are passed."},{"commit":"69576f6bfae073196627a0a39b5ececb8666d25c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6}]},"message":"minor sytax fixes"},{"commit":"19845624e2996da4653efc2f312aceb514feaf5c","merge":"d96b3a6 22ff296","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #32 from philippeitis/patch-1\n\nSimplify main(), magic() methods."},{"commit":"22ff2964e9889587711e779ac24f8f8034212f5e","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":62,"deletions":75,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":137}]},"message":"Simplify main(), magic() methods."},{"commit":"d96b3a65a98bc135d21d4feafc0a43317b5a11fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"4989445ef4bb8919d9b3b95e2fcee77ca7692aec","merge":"53ee2c3 6770892","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #30 from kellyjonbrazil/dev\n\nDev v1.8.0"},{"commit":"6770892acd49aced225dbccf39290f33522c9001","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add release notes link"},{"commit":"d4eba8740fc325756f3db96ab37a5383540cbeff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"release date 3/3"},{"commit":"9f607605605e47990f97ccfd48fde19a14e036e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["tests/test_group.py","tests/test_gshadow.py"],"file_stats":[{"name":"tests/test_group.py","lines_changed":52},{"name":"tests/test_gshadow.py","lines_changed":40}]},"message":"add group and gshadow tests"},{"commit":"0a8f8ac934f040141e6a4eec8cf7170e1ca73294","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"add group and gshadow parsers"},{"commit":"6ae24c82447bcff606e7027dd01b916293b49584","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":274,"deletions":0,"files":["tests/fixtures/centos-7.7/group.json","tests/fixtures/centos-7.7/group.out","tests/fixtures/centos-7.7/gshadow.json","tests/fixtures/centos-7.7/gshadow.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/group.json","tests/fixtures/osx-10.14.6/group.out","tests/fixtures/ubuntu-18.04/group.json","tests/fixtures/ubuntu-18.04/group.out","tests/fixtures/ubuntu-18.04/gshadow.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/group.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/group.out","lines_changed":39},{"name":"tests/fixtures/centos-7.7/gshadow.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/gshadow.out","lines_changed":39},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":3},{"name":"tests/fixtures/osx-10.14.6/group.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/group.out","lines_changed":135},{"name":"tests/fixtures/ubuntu-18.04/group.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/group.out","lines_changed":53},{"name":"tests/fixtures/ubuntu-18.04/gshadow.json","lines_changed":1}]},"message":"add group and gshadow test fixtures"},{"commit":"d3679082a8c5cff76eb7de67c33fe716a1402182","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":64,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":64}]},"message":"add group and gshadow parsers"},{"commit":"fb08b42dca135705a3759435335d95c898d47f60","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":21,"deletions":21,"files":["docs/parsers/group.md","jc/parsers/group.py"],"file_stats":[{"name":"docs/parsers/group.md","lines_changed":18},{"name":"jc/parsers/group.py","lines_changed":24}]},"message":"change 'group_list' to 'members'"},{"commit":"4aeaa9f42a88bf4e05c8780a35cc8c4d83c9b842","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":316,"deletions":0,"files":["docgen.sh","docs/parsers/gshadow.md","jc/cli.py","jc/parsers/gshadow.py","tests/fixtures/ubuntu-18.04/gshadow.out"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/gshadow.md","lines_changed":109},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/gshadow.py","lines_changed":152},{"name":"tests/fixtures/ubuntu-18.04/gshadow.out","lines_changed":53}]},"message":"add /etc/gshadow parser"},{"commit":"5f5693da048cb4739dc56500c672dc8fbccaaf32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["docs/parsers/csv.md"],"file_stats":[{"name":"docs/parsers/csv.md","lines_changed":3}]},"message":"spelling fix"},{"commit":"5eb0f61727f92a84fb3620e13db072167ef552ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":333,"deletions":0,"files":["docgen.sh","docs/parsers/group.md","jc/cli.py","jc/parsers/group.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/group.md","lines_changed":141},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/group.py","lines_changed":190}]},"message":"add /etc/group file parser"},{"commit":"958e998991b1cc61dc1dc341b90cd53f4691cd43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/csv.py"],"file_stats":[{"name":"jc/parsers/csv.py","lines_changed":4}]},"message":"formatting"},{"commit":"b78c1509f67fb76d17ac97193a2851d8d9e17f62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/csv.py"],"file_stats":[{"name":"jc/parsers/csv.py","lines_changed":10}]},"message":"try/except dialect detection"},{"commit":"ce184d4d57faa3f1bca5bcaa02da7a5a5d995eb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":20,"insertions":24054,"deletions":0,"files":["tests/fixtures/generic/csv-biostats.csv","tests/fixtures/generic/csv-biostats.json","tests/fixtures/generic/csv-cities.csv","tests/fixtures/generic/csv-cities.json","tests/fixtures/generic/csv-deniro.csv","tests/fixtures/generic/csv-deniro.json","tests/fixtures/generic/csv-example.csv","tests/fixtures/generic/csv-example.json","tests/fixtures/generic/csv-flyrna.json","tests/fixtures/generic/csv-flyrna.tsv","tests/fixtures/generic/csv-flyrna2.json","tests/fixtures/generic/csv-flyrna2.tsv","tests/fixtures/generic/csv-homes-pipe.csv","tests/fixtures/generic/csv-homes-pipe.json","tests/fixtures/generic/csv-homes.csv","tests/fixtures/generic/csv-homes.json","tests/fixtures/generic/csv-insurance.csv","tests/fixtures/generic/csv-insurance.json","tests/fixtures/generic/oscar_age_male.csv","tests/test_csv.py"],"file_stats":[{"name":"tests/fixtures/generic/csv-biostats.csv","lines_changed":20},{"name":"tests/fixtures/generic/csv-biostats.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-cities.csv","lines_changed":130},{"name":"tests/fixtures/generic/csv-cities.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-deniro.csv","lines_changed":89},{"name":"tests/fixtures/generic/csv-deniro.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-example.csv","lines_changed":2},{"name":"tests/fixtures/generic/csv-example.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna.tsv","lines_changed":11767},{"name":"tests/fixtures/generic/csv-flyrna2.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna2.tsv","lines_changed":11767},{"name":"tests/fixtures/generic/csv-homes-pipe.csv","lines_changed":3},{"name":"tests/fixtures/generic/csv-homes-pipe.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-homes.csv","lines_changed":51},{"name":"tests/fixtures/generic/csv-homes.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-insurance.csv","lines_changed":1},{"name":"tests/fixtures/generic/csv-insurance.json","lines_changed":1},{"name":"tests/fixtures/generic/oscar_age_male.csv","lines_changed":91},{"name":"tests/test_csv.py","lines_changed":124}]},"message":"add csv parser tests"},{"commit":"b4c3714ced9ee5cc6a7ef0c59a43cf85e1cb9824","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"removed [OPTIONS] PARSER syntax. still works but prefer the PARSER [OPTIONS] syntax for better performance"},{"commit":"5b7dfa043864f1a3f34aa4ef5c6554a2dfe185f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"formatting"},{"commit":"391a3884765780497dc34e0e9938ff5032c81291","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":49,"deletions":0,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":48},{"name":"changelog.txt","lines_changed":1}]},"message":"doc update"},{"commit":"d9c4e2ed4c0f908f4b63c2376b53ddfd32a0fae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":241,"deletions":0,"files":["docgen.sh","docs/parsers/csv.md","jc/cli.py","jc/parsers/csv.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/csv.md","lines_changed":104},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/csv.py","lines_changed":135}]},"message":"add csv file parser"},{"commit":"0c42db38b102987629e40cee2716b826161e6e94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/who.md","jc/parsers/who.py"],"file_stats":[{"name":"docs/parsers/who.md","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":2}]},"message":"doc update"},{"commit":"2f9be8bf33f8be5651d06da9d316f7894606df19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"simplify usage"},{"commit":"e8c00155e861b9eedfdf37a22912271bec581d62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"add -b to warning message"},{"commit":"cc88fdd9ee3951d7ef2aa881cc12f0b7f96aef86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"update example"},{"commit":"d9de11ef1d846a9625dad0adb962b864404c90c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":16}]},"message":"add another who example"},{"commit":"0ceda97d0968b67b70cdbb68f7a62657e79c9935","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":88,"deletions":0,"files":["tests/test_who.py"],"file_stats":[{"name":"tests/test_who.py","lines_changed":88}]},"message":"who parser tests"},{"commit":"d0dec92ba84640ddc40da7c6faa6568b76757e04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":36,"deletions":0,"files":["tests/fixtures/centos-7.7/who-a.json","tests/fixtures/centos-7.7/who-a.out","tests/fixtures/centos-7.7/who.json","tests/fixtures/centos-7.7/who.out","tests/fixtures/osx-10.14.6/who-a.json","tests/fixtures/osx-10.14.6/who-a.out","tests/fixtures/osx-10.14.6/who.json","tests/fixtures/osx-10.14.6/who.out","tests/fixtures/ubuntu-18.04/who-a.json","tests/fixtures/ubuntu-18.04/who-a.out","tests/fixtures/ubuntu-18.04/who.json","tests/fixtures/ubuntu-18.04/who.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/who-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/who-a.out","lines_changed":6},{"name":"tests/fixtures/centos-7.7/who.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/who.out","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/who-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/who-a.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/who.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/who.out","lines_changed":4},{"name":"tests/fixtures/ubuntu-18.04/who-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/who-a.out","lines_changed":6},{"name":"tests/fixtures/ubuntu-18.04/who.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/who.out","lines_changed":3}]},"message":"add who test fixtures"},{"commit":"d420c008d8aaa0879fa5a3f236d81acb506376c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/who.py","lines_changed":9}]},"message":"fix for pts lines with no user info"},{"commit":"f0b32db4333477e22cc40de62cf026a6a7aa2eb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","docs/parsers/who.md"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docs/parsers/who.md","lines_changed":8}]},"message":"who doc update"},{"commit":"bc838eda591473d32b11a885e60ef653925739d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/who.py","lines_changed":9}]},"message":"fix output for non-extended"},{"commit":"afe55b6af07b74816d33d9555ffaa1c1921dd27a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":46,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":46}]},"message":"add who parser"},{"commit":"dd3a3ac302d7b35beef1181e74aed0faf96fd3e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":255,"deletions":9,"files":["changelog.txt","docgen.sh","docs/parsers/who.md","jc/parsers/who.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/who.md","lines_changed":150},{"name":"jc/parsers/who.py","lines_changed":112}]},"message":"doc update and process pid integers"},{"commit":"f9982a79474c1838f37fc0ff88437980b228d7a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":2,"files":["jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/who.py","lines_changed":13}]},"message":"fixes for from and comment fields"},{"commit":"07c1be9e9ad9f62cf76c23788152de8f3530ee16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":170,"deletions":0,"files":["jc/cli.py","jc/parsers/who.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/who.py","lines_changed":169}]},"message":"add who command parser"},{"commit":"f832b88755bfbd3878ec402e603180e6825279be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["tests/test_passwd.py","tests/test_shadow.py"],"file_stats":[{"name":"tests/test_passwd.py","lines_changed":52},{"name":"tests/test_shadow.py","lines_changed":40}]},"message":"add passwd and shadow tests"},{"commit":"0fac757efca41db062b2f65acc727963c5fb353c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"add passwd and shadow parsers"},{"commit":"fc15742065531152f3d5895042eeb806e33a192a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":215,"deletions":0,"files":["tests/fixtures/centos-7.7/passwd.json","tests/fixtures/centos-7.7/passwd.out","tests/fixtures/centos-7.7/shadow.json","tests/fixtures/centos-7.7/shadow.out","tests/fixtures/osx-10.14.6/passwd.json","tests/fixtures/osx-10.14.6/passwd.out","tests/fixtures/ubuntu-18.04/passwd.json","tests/fixtures/ubuntu-18.04/passwd.out","tests/fixtures/ubuntu-18.04/shadow.json","tests/fixtures/ubuntu-18.04/shadow.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/passwd.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/passwd.out","lines_changed":21},{"name":"tests/fixtures/centos-7.7/shadow.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/shadow.out","lines_changed":21},{"name":"tests/fixtures/osx-10.14.6/passwd.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/passwd.out","lines_changed":108},{"name":"tests/fixtures/ubuntu-18.04/passwd.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/passwd.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/shadow.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/shadow.out","lines_changed":30}]},"message":"passwd and shadow test fixtures"},{"commit":"6f2466a1319eaa4256ae7a2a0f23b3ff37882d37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":73,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":73}]},"message":"update readme with /etc/passwd and /etc/shadow file parsers"},{"commit":"4b90e22f0a9c6790bca62c8314945a7ffc6e267b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":137,"deletions":9,"files":["docs/parsers/shadow.md","jc/parsers/shadow.py"],"file_stats":[{"name":"docs/parsers/shadow.md","lines_changed":72},{"name":"jc/parsers/shadow.py","lines_changed":74}]},"message":"doc update"},{"commit":"c4935687853fb3b079ae42614793cdafe68e124e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/passwd.md","jc/parsers/passwd.py"],"file_stats":[{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":2}]},"message":"doc fix"},{"commit":"1cdf004b7728901dc137e57b0c8994edfdd6d417","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":190,"deletions":0,"files":["docgen.sh","docs/parsers/shadow.md","jc/cli.py","jc/parsers/shadow.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/shadow.md","lines_changed":69},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/shadow.py","lines_changed":119}]},"message":"add /etc/shadow parser"},{"commit":"a4ea50426184d30cbe849a8f80bfd5c975075c9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":303,"deletions":0,"files":["docgen.sh","docs/parsers/passwd.md","jc/cli.py","jc/parsers/passwd.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/passwd.md","lines_changed":126},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/passwd.py","lines_changed":175}]},"message":"add /etc/passwd parser"},{"commit":"4c2c234c3bf68d1aac66bd4d1f22b9f97e99128d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":16,"insertions":673,"deletions":0,"files":["tests/fixtures/centos-7.7/last-w.json","tests/fixtures/centos-7.7/last-w.out","tests/fixtures/centos-7.7/last.json","tests/fixtures/centos-7.7/last.out","tests/fixtures/centos-7.7/lastb.json","tests/fixtures/centos-7.7/lastb.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/last.json","tests/fixtures/osx-10.14.6/last.out","tests/fixtures/ubuntu-18.04/last-w.json","tests/fixtures/ubuntu-18.04/last-w.out","tests/fixtures/ubuntu-18.04/last.json","tests/fixtures/ubuntu-18.04/last.out","tests/fixtures/ubuntu-18.04/lastb.json","tests/fixtures/ubuntu-18.04/lastb.out","tests/test_last.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/last-w.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/last-w.out","lines_changed":69},{"name":"tests/fixtures/centos-7.7/last.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/last.out","lines_changed":69},{"name":"tests/fixtures/centos-7.7/lastb.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lastb.out","lines_changed":6},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":4},{"name":"tests/fixtures/osx-10.14.6/last.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/last.out","lines_changed":383},{"name":"tests/fixtures/ubuntu-18.04/last-w.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/last-w.out","lines_changed":16},{"name":"tests/fixtures/ubuntu-18.04/last.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/last.out","lines_changed":16},{"name":"tests/fixtures/ubuntu-18.04/lastb.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lastb.out","lines_changed":3},{"name":"tests/test_last.py","lines_changed":100}]},"message":"add last and lastb tests"},{"commit":"3d4c0f3e89dab6496ff74df350e3238d6625933c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":22,"insertions":285,"deletions":0,"files":["tests/fixtures/centos-7.7/blkid-ip-multi.json","tests/fixtures/centos-7.7/blkid-ip-multi.out","tests/fixtures/centos-7.7/blkid-ip-udev-multi.json","tests/fixtures/centos-7.7/blkid-ip-udev-multi.out","tests/fixtures/centos-7.7/blkid-ip-udev.json","tests/fixtures/centos-7.7/blkid-ip-udev.out","tests/fixtures/centos-7.7/blkid-sda2.json","tests/fixtures/centos-7.7/blkid-sda2.out","tests/fixtures/centos-7.7/blkid.json","tests/fixtures/centos-7.7/blkid.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/blkid-ip-multi.json","tests/fixtures/ubuntu-18.04/blkid-ip-multi.out",".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.json",".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.out","tests/fixtures/ubuntu-18.04/blkid-ip-udev.json","tests/fixtures/ubuntu-18.04/blkid-ip-udev.out","tests/fixtures/ubuntu-18.04/blkid-sda2.json","tests/fixtures/ubuntu-18.04/blkid-sda2.out","tests/fixtures/ubuntu-18.04/blkid.json","tests/fixtures/ubuntu-18.04/blkid.out","tests/test_blkid.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/blkid-ip-multi.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid-ip-multi.out","lines_changed":29},{"name":"tests/fixtures/centos-7.7/blkid-ip-udev-multi.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid-ip-udev-multi.out","lines_changed":29},{"name":"tests/fixtures/centos-7.7/blkid-ip-udev.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid-ip-udev.out","lines_changed":14},{"name":"tests/fixtures/centos-7.7/blkid-sda2.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid-sda2.out","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid.out","lines_changed":4},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":6},{"name":"tests/fixtures/ubuntu-18.04/blkid-ip-multi.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid-ip-multi.out","lines_changed":2},{"name":".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.json","lines_changed":1},{"name":".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/blkid-ip-udev.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid-ip-udev.out","lines_changed":12},{"name":"tests/fixtures/ubuntu-18.04/blkid-sda2.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid-sda2.out","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid.out","lines_changed":15},{"name":"tests/test_blkid.py","lines_changed":136}]},"message":"add blkid tests"},{"commit":"52fad02903468c05d2422a340ad8dbcdf18ed475","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":12},{"name":"jc/parsers/ls.py","lines_changed":12}]},"message":"doc update"},{"commit":"9dcabc057c40e345971a08474b5b886e6b60a8de","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":10}]},"message":"support multi device udev output"},{"commit":"db8c1079ddc25922ab6a20d0f71fb19af38f8092","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":8}]},"message":"use maxsplit=1 in case there are multiple '=' delimiters"},{"commit":"8f954673abdbbd4d9b9da3eacc61b335b4909f89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":5}]},"message":"use shlex split for values within quotations that have spaces"},{"commit":"79522d1c7dd4dec15b75b06dda002752f7d97e36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"doc fixes"},{"commit":"a18bf030794efef125c70a32fe82855e47649b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/parsers/last.py","jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":12}]},"message":"use raw strings for regular expressions"},{"commit":"c02b6b5d827d26b43db0a3457124714aa2dbbc98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":81,"deletions":1,"files":["README.md","changelog.txt","setup.py"],"file_stats":[{"name":"README.md","lines_changed":79},{"name":"changelog.txt","lines_changed":1},{"name":"setup.py","lines_changed":2}]},"message":"doc updates"},{"commit":"f99b4232848b0d868804acc4125836bfcf475bba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":134,"deletions":29,"files":["docs/parsers/blkid.md","jc/parsers/blkid.py"],"file_stats":[{"name":"docs/parsers/blkid.md","lines_changed":115},{"name":"jc/parsers/blkid.py","lines_changed":48}]},"message":"doc update"},{"commit":"d7d9d45d4fba89e74f7490c463eb26bf20a5d127","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":2}]},"message":"add missing comma"},{"commit":"90065ec0cdc8c5abc13bc0027f63658dacf3cfb2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":31,"deletions":26,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":57}]},"message":"add more integers"},{"commit":"51157ebb867a48332c768bf3086614944aebdb62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":4}]},"message":"another devname fix"},{"commit":"96d95c79ca0938e326f55f858f8153df9cb49e44","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":6}]},"message":"devname fix"},{"commit":"e5da34c23306463e8707b15676db0ca53bf66757","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":3}]},"message":"check if devname key exists before renaming"},{"commit":"f09d657f7728242947db3dc63ff6779d08c37866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":5}]},"message":"rename devname to device"},{"commit":"0f4b0189f54dc0b3622cd407c5565e53ea111379","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":35,"deletions":3,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":38}]},"message":"process integer values"},{"commit":"4666042abb3142e2cfb518db9ffe22d9e608e090","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":216,"deletions":0,"files":["docgen.sh","docs/parsers/blkid.md","jc/cli.py","jc/parsers/blkid.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/blkid.md","lines_changed":83},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/blkid.py","lines_changed":131}]},"message":"add blkid parser"},{"commit":"027d544c2bb778adc0ee9463832f19b10e099a0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add last and lastb parser"},{"commit":"f1967d0138d27bde864c2400aa75baa8a39bbfde","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":3}]},"message":"system_boot fix"},{"commit":"c1d896027dd1ce021e048b3e77eab24ff59d08bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":3}]},"message":"fix system_boot tty"},{"commit":"5c2d2a66187d32d62b31b7c7f13e502fdb7f9635","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":190,"deletions":6,"files":["docgen.sh","docs/parsers/last.md","jc/parsers/last.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/last.md","lines_changed":118},{"name":"jc/parsers/last.py","lines_changed":77}]},"message":"process function and docs"},{"commit":"997b269b0b7e53a456e2a0bd997ead6c2ae843bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":3}]},"message":"btmp fix"},{"commit":"61257e7525c25827cb8057ed5c612e54ea9b9637","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":119,"deletions":1,"files":["jc/cli.py","jc/parsers/last.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/last.py","lines_changed":117}]},"message":"add last and lastb parser"},{"commit":"53ee2c36310cb84390ef96644aee6871769151c9","merge":"2ad3167 8bfa0bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #29 from kellyjonbrazil/dev\n\nDev v1.7.5"},{"commit":"8bfa0bddec9ff1c21972019467dcf5738ab3afd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to 1.7.5"},{"commit":"ad61e6bc81177a2add7d052bf1ddec5f1b3f2976","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":26,"insertions":598,"deletions":133,"files":["tests/fixtures/centos-7.7/ls-R-newlines.json","tests/fixtures/centos-7.7/ls-R-newlines.out","tests/fixtures/centos-7.7/ls-l-newlines.json","tests/fixtures/centos-7.7/ls-l-newlines.out","tests/fixtures/centos-7.7/ls-lR-newlines.json","tests/fixtures/centos-7.7/ls-lR-newlines.out","tests/fixtures/centos-7.7/ls-newlines.json","tests/fixtures/centos-7.7/ls-newlines.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/ls-R-newlines.json","tests/fixtures/osx-10.14.6/ls-R-newlines.out","tests/fixtures/osx-10.14.6/ls-l-newlines.json","tests/fixtures/osx-10.14.6/ls-l-newlines.out","tests/fixtures/osx-10.14.6/ls-lR-newlines.json","tests/fixtures/osx-10.14.6/ls-lR-newlines.out","tests/fixtures/osx-10.14.6/ls-newlines.json","tests/fixtures/osx-10.14.6/ls-newlines.out","tests/fixtures/ubuntu-18.04/ls-R-newlines.json","tests/fixtures/ubuntu-18.04/ls-R-newlines.out","tests/fixtures/ubuntu-18.04/ls-l-newlines.json","tests/fixtures/ubuntu-18.04/ls-l-newlines.out","tests/fixtures/ubuntu-18.04/ls-lR-newlines.json","tests/fixtures/ubuntu-18.04/ls-lR-newlines.out","tests/fixtures/ubuntu-18.04/ls-newlines.json","tests/fixtures/ubuntu-18.04/ls-newlines.out","tests/test_ls.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ls-R-newlines.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-R-newlines.out","lines_changed":43},{"name":"tests/fixtures/centos-7.7/ls-l-newlines.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-l-newlines.out","lines_changed":34},{"name":"tests/fixtures/centos-7.7/ls-lR-newlines.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-lR-newlines.out","lines_changed":45},{"name":"tests/fixtures/centos-7.7/ls-newlines.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-newlines.out","lines_changed":33},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":15},{"name":"tests/fixtures/osx-10.14.6/ls-R-newlines.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-R-newlines.out","lines_changed":36},{"name":"tests/fixtures/osx-10.14.6/ls-l-newlines.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-l-newlines.out","lines_changed":34},{"name":"tests/fixtures/osx-10.14.6/ls-lR-newlines.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-lR-newlines.out","lines_changed":38},{"name":"tests/fixtures/osx-10.14.6/ls-newlines.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-newlines.out","lines_changed":148},{"name":"tests/fixtures/ubuntu-18.04/ls-R-newlines.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-R-newlines.out","lines_changed":40},{"name":"tests/fixtures/ubuntu-18.04/ls-l-newlines.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-l-newlines.out","lines_changed":34},{"name":"tests/fixtures/ubuntu-18.04/ls-lR-newlines.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-lR-newlines.out","lines_changed":42},{"name":"tests/fixtures/ubuntu-18.04/ls-newlines.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-newlines.out","lines_changed":33},{"name":"tests/test_ls.py","lines_changed":144}]},"message":"add ls tests for filenames with newline characters"},{"commit":"873b5ba8acf599d083d6031b818d5fca83cbca9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":31,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":58}]},"message":"move examples to bottom"},{"commit":"6ae50054e2e8c7ca730013b43062eedc230c0ad4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"readme update"},{"commit":"22a35f41bf9c404d3532611f5929143d04b10010","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":10}]},"message":"move variables to top"},{"commit":"961696c963215a9dab56113ff89f21a6e9739df6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"add a warning if newlines are detected in naked ls"},{"commit":"c7b7f1a5dcf77a1f4c23ef6bbf5683fd1a055f72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"fix for files with newlines in naked ls"},{"commit":"b5a0d650b128d8af81bb14dd5d007349529cb66f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":151,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-newlines.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ls-newlines.out","lines_changed":151}]},"message":"ls output with newlines"},{"commit":"573b27946474276592ee7494689ce9a88f5a05f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":6}]},"message":"fixup for filenames that start with a newline character"},{"commit":"116e07f1614b4a45eb58ffcfe20b5efa71c473a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":7,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":13}]},"message":"fixes for multiple consecutive newlines and trailing newlines in filenames"},{"commit":"964868c8aff99edf37b0db41c7d16f8b84ac4704","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":21,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":20}]},"message":"add support for newlines in filenames (only with ls -l)"},{"commit":"c8dac32df8102c2b782e87d55bb95ca2d9490185","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"readme update"},{"commit":"72a0016bd833699c3819baa899f335f75b8c1943","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"use link to anchor for Parsers"},{"commit":"2ad316743460bb6620e7ede251e1dc2739b073fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update doc url"},{"commit":"ddabfaa05c63f886b17e5b4d37cd83fcfdb9b221","merge":"873771d f857523","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #25 from kellyjonbrazil/dev\n\nDev v1.7.4"},{"commit":"f857523ca756864211b6b18af5a8886e5db200bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"bump to version 1.7.4"},{"commit":"00d53858e820f00ba015bc25629100c8e5495221","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add note about aliases not being supported"},{"commit":"c008167e660929a91606bb96498cdc113e815f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":1},{"name":"jc/parsers/ls.py","lines_changed":1}]},"message":"add time-style=full-iso option to doc"},{"commit":"102344a041e9e0aff8b6d9db1873ba1064f7e895","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"formatting"},{"commit":"c865298ef3613fe6ce17f41c15209a69940af1ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":3}]},"message":"remove unnecessary enumerate in for loop"},{"commit":"6ac03faf939bcda8930a48a5e832b557813e2129","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"Revert \"add ubuntu and centos default ls aliases to magic_commands\"\n\nThis reverts commit 49c2701743706b6cbf0e52b2c7f275e301315189."},{"commit":"49c2701743706b6cbf0e52b2c7f275e301315189","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"add ubuntu and centos default ls aliases to magic_commands"},{"commit":"d1a271b08e64b42be8cec11377b0e18435a0caec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":35333,"deletions":1374,"files":["tests/fixtures/centos-7.7/ls-R.json","tests/fixtures/centos-7.7/ls-R.out","tests/fixtures/centos-7.7/ls-alR.json","tests/fixtures/centos-7.7/ls-alR.out","tests/fixtures/centos-7.7/ls-glob.json","tests/fixtures/centos-7.7/ls-glob.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/ls-R.json","tests/fixtures/osx-10.14.6/ls-R.out","tests/fixtures/osx-10.14.6/ls-alR.json","tests/fixtures/osx-10.14.6/ls-alR.out","tests/fixtures/osx-10.14.6/ls-glob.json","tests/fixtures/osx-10.14.6/ls-glob.out","tests/fixtures/ubuntu-18.04/ls-R.json","tests/fixtures/ubuntu-18.04/ls-R.out","tests/fixtures/ubuntu-18.04/ls-alR.json","tests/fixtures/ubuntu-18.04/ls-alR.out","tests/fixtures/ubuntu-18.04/ls-glob.json","tests/fixtures/ubuntu-18.04/ls-glob.out","tests/fixtures/ubuntu-18.04/ls-lR.out","tests/test_ls.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ls-R.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-R.out","lines_changed":5089},{"name":"tests/fixtures/centos-7.7/ls-alR.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-alR.out","lines_changed":4997},{"name":"tests/fixtures/centos-7.7/ls-glob.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-glob.out","lines_changed":1919},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":5},{"name":"tests/fixtures/osx-10.14.6/ls-R.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-R.out","lines_changed":5018},{"name":"tests/fixtures/osx-10.14.6/ls-alR.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-alR.out","lines_changed":4997},{"name":"tests/fixtures/osx-10.14.6/ls-glob.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-glob.out","lines_changed":1831},{"name":"tests/fixtures/ubuntu-18.04/ls-R.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-R.out","lines_changed":5639},{"name":"tests/fixtures/ubuntu-18.04/ls-alR.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-alR.out","lines_changed":5026},{"name":"tests/fixtures/ubuntu-18.04/ls-glob.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-glob.out","lines_changed":1357},{"name":"tests/fixtures/ubuntu-18.04/ls-lR.out","lines_changed":712},{"name":"tests/test_ls.py","lines_changed":108}]},"message":"add new ls tests for recursive and multiple directories with glob"},{"commit":"7388ad19b9d252d3e66659e4bc37171cef2a9748","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":6,"deletions":4,"files":["docs/parsers/ls.md","jc/cli.py","jc/parsers/ls.py","setup.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"setup.py","lines_changed":2}]},"message":"bump to v1.8.0"},{"commit":"2e63cb5fadd032c7cb54a618e8b374ee853abcca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"version bump ls to 1.1"},{"commit":"e7f14d02b12c7dcba309f2d28a0f171769d1ba37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1438,"deletions":8,"files":["jc/parsers/ls.py","tests/fixtures/ubuntu-18.04/ls-R.out","tests/fixtures/ubuntu-18.04/ls-lR.out"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":48},{"name":"tests/fixtures/ubuntu-18.04/ls-R.out","lines_changed":686},{"name":"tests/fixtures/ubuntu-18.04/ls-lR.out","lines_changed":712}]},"message":"update ls to allow multi directory (glob and -R). Adds 'parent' key if found"},{"commit":"873771d05ab0b77163c95d2c37e11edf38451832","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"d7de122e36e0698e00f321fbac8dc0b543cf9e8a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"prettify link"},{"commit":"4ef0434f536c6658ddc2b48a3db113df2fd26000","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":6}]},"message":"formatting update"},{"commit":"1aa2c9925996f2358b6272547db755ec3098a8a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":2,"files":["README.md","jc/parsers/history.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":1}]},"message":"removed history from magic syntax"},{"commit":"c2450b27b079b02ed3f4ece9e36547f01cd4b139","merge":"028e136 14d6d8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #22 from kellyjonbrazil/dev\n\nDev 1.7.3"},{"commit":"14d6d8b84f0ddeff984aff486e2e697a91ac6fb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump to 1.7.3"},{"commit":"f0e3846c038ec5507cd4a19980d83ee0fb969ef5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":5}]},"message":"formatting"},{"commit":"6ba64f1128373843b068226424a3af545ac9d22c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"usage update"},{"commit":"13bcdbc6c9a81bc5d52fe7a84e6a0a34908db8bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"doc update"},{"commit":"cfba62db20674d788601354211a10e2b1675a0c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":19}]},"message":"correct parser search in magic()"},{"commit":"18fb69e36e303a3f9530dcb80354b25bfdbb931d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"docs/parsers link"},{"commit":"474eb0f3fdeaa612e189d745b12a5ed9c6e0a31b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"doc updates"},{"commit":"7f47b533701e60449351d5da03cd5960e0dec9ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":90,"deletions":68,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":158}]},"message":"add alternate magic syntax"},{"commit":"dc2907d3ce101043b30bcce71abb4bb02897f43a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["docs/parsers/crontab.md"],"file_stats":[{"name":"docs/parsers/crontab.md","lines_changed":6}]},"message":"doc update"},{"commit":"1af85811e06c489051c456918284a746ce12c692","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/fstab.py"],"file_stats":[{"name":"jc/parsers/fstab.py","lines_changed":3}]},"message":"remove magic_command info"},{"commit":"1c1b19a478fe5c356a93cd165518429e77fcbdf0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":6}]},"message":"doc update"},{"commit":"66942d64babf932faeb887eb4ec0cab32829321a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":4}]},"message":"changelog update"},{"commit":"2fb6ae08d76e7a5727b2fcdd5def3e3822e0cf72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"fix shlex usage"},{"commit":"bf8811e03e2a5b736f4c084f42400fcde400ff3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]},"message":"add comments"},{"commit":"c8b502c571d3081ca3086e349a426ca252a3bb84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6}]},"message":"remove unnecessary join and add comments"},{"commit":"81c11a975c6ee66a1f83350df8b065a6b07dcc9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"added docstrings"},{"commit":"0d370eb403ab4d9ed11e36776efc08bdd3505c1a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"doc update"},{"commit":"7492c3f1e312cdb0c58c2077db0d60d2cab1e58f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"changelog update"},{"commit":"515a8a84b79c9bf6f3001d3c52faa82a6709b8d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":33,"insertions":33,"deletions":33,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2}]},"message":"add \"command\" to description"},{"commit":"dd6680efb2b15bb8ed676016aae1c65193dfe147","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":29,"deletions":14,"files":["changelog.txt","jc/cli.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":40}]},"message":"allow condensed options (-prdq is equivalent to -p -r -d -q)"},{"commit":"a7158373cd225685f5c398fa36b8d5208e20521c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"comment update"},{"commit":"6d50ec71997cac9c898737de93b8a945f0351e53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":15}]},"message":"add try/except to fix bare jc command condition"},{"commit":"95dbf98e8e03486f74d986683f52699f4f9c9577","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":32}]},"message":"allow options in magic syntax"},{"commit":"d49323e4ebf2a8aebd1d8ea65ef0854ee8bcb29f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":33,"insertions":33,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":1},{"name":"jc/parsers/crontab.py","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":1},{"name":"jc/parsers/du.py","lines_changed":1},{"name":"jc/parsers/env.py","lines_changed":1},{"name":"jc/parsers/foo.py","lines_changed":1},{"name":"jc/parsers/free.py","lines_changed":1},{"name":"jc/parsers/fstab.py","lines_changed":1},{"name":"jc/parsers/history.py","lines_changed":1},{"name":"jc/parsers/id.py","lines_changed":1},{"name":"jc/parsers/ifconfig.py","lines_changed":1},{"name":"jc/parsers/iptables.py","lines_changed":1},{"name":"jc/parsers/jobs.py","lines_changed":1},{"name":"jc/parsers/ls.py","lines_changed":1},{"name":"jc/parsers/lsblk.py","lines_changed":1},{"name":"jc/parsers/lsmod.py","lines_changed":1},{"name":"jc/parsers/lsof.py","lines_changed":1},{"name":"jc/parsers/mount.py","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":1},{"name":"jc/parsers/pip_list.py","lines_changed":1},{"name":"jc/parsers/pip_show.py","lines_changed":1},{"name":"jc/parsers/ps.py","lines_changed":1},{"name":"jc/parsers/route.py","lines_changed":1},{"name":"jc/parsers/ss.py","lines_changed":1},{"name":"jc/parsers/stat.py","lines_changed":1},{"name":"jc/parsers/systemctl.py","lines_changed":1},{"name":"jc/parsers/systemctl_lj.py","lines_changed":1},{"name":"jc/parsers/systemctl_ls.py","lines_changed":1},{"name":"jc/parsers/systemctl_luf.py","lines_changed":1},{"name":"jc/parsers/uname.py","lines_changed":1},{"name":"jc/parsers/uptime.py","lines_changed":1},{"name":"jc/parsers/w.py","lines_changed":1}]},"message":"add magic_commands list to info"},{"commit":"08c1e2aec9d6bb68653dc12ba2272535fb7cef09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add magic syntax"},{"commit":"a2c137df2e6d3b133df5df0bb3f9b1ca69990557","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":66,"deletions":299,"files":["jc/cli.py","jc/cli.py.old"],"file_stats":[{"name":"jc/cli.py","lines_changed":135},{"name":"jc/cli.py.old","lines_changed":230}]},"message":"better magic command syntax logic using introspection information from parser modules"},{"commit":"fe27dcdb8f72b5a288f978b87be2eb930099543e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":319,"deletions":45,"files":["jc/cli.py","jc/cli.py.old"],"file_stats":[{"name":"jc/cli.py","lines_changed":134},{"name":"jc/cli.py.old","lines_changed":230}]},"message":"proof of concept for magic syntax (e.g. jc ls -al)"},{"commit":"028e136161ac15f588845f87907b4565a6ee7be2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":7,"deletions":2,"files":["MANIFEST.in","changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"MANIFEST.in","lines_changed":1},{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":3}]},"message":"bump to 1.7.2: add test fixtures to package"},{"commit":"9a85a0a4d504447b32fb622bb17cebc5e47f687f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/crontab_u.md","jc/parsers/crontab_u.py"],"file_stats":[{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2}]},"message":"fix doc"},{"commit":"3a1cbc4d5063344c3e3a4bf510d651a36beedfb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":14,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":28}]},"message":"move info class to top"},{"commit":"77d334f7f386f79ec0571325500054fdab207f31","merge":"4de8f42 53cdf86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #19 from kellyjonbrazil/dev-1.7.1\n\nDev v1.7.1"},{"commit":"53cdf863acc72dbdb671773e30277f42e9eadc0e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":4}]},"message":"changelog update"},{"commit":"7b7e7fe0fe92edef1e559bd7ae8272530d7ed5c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"changelog update"},{"commit":"0c03132847a3d2bcbdb0b743e1472865916cced4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"fix error codes using sys.exit()"},{"commit":"3b81f7e2a1381958b33962d4531f3fa223c6a83e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"exit code on ctrl-c exit"},{"commit":"3d76437b435660e92633c604c4ad32ee0500a28b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ini.md","docs/parsers/xml.md","jc/parsers/ini.py","jc/parsers/xml.py"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/xml.py","lines_changed":2}]},"message":"doc fix"},{"commit":"4bc54c78cea48682ed0432ea56460a26a0e52f83","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":7,"deletions":7,"files":["docs/parsers/du.md","docs/parsers/history.md","jc/parsers/du.py","jc/parsers/history.py"],"file_stats":[{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":6},{"name":"jc/parsers/history.py","lines_changed":4}]},"message":"fix compatibility list"},{"commit":"3d303a96b9f6d582b1e99a632da539c3bee4df7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":16,"deletions":2,"files":["tests/fixtures/centos-7.7/crontab-u.json","tests/fixtures/centos-7.7/{crontab2.out => crontab-u.out}","tests/fixtures/centos-7.7/crontab.json","tests/fixtures/ubuntu-18.04/crontab-u.json","tests/test_crontab_u.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/crontab-u.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/{crontab2.out => crontab-u.out}","lines_changed":1},{"name":"tests/fixtures/centos-7.7/crontab.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/crontab-u.json","lines_changed":2},{"name":"tests/test_crontab_u.py","lines_changed":12}]},"message":"crontab bug fix and tests"},{"commit":"33c99d031d18e52a8ca85dfc1a8cba0acebfc3bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":2}]},"message":"fix line clobbering bug"},{"commit":"caf7e9f69a22f3c9b3d4624fd2238d6e54d932ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/crontab_u.py"],"file_stats":[{"name":"jc/parsers/crontab_u.py","lines_changed":6}]},"message":"fix line clobbering bug and add user field to shortcuts"},{"commit":"9449f1f5d5e7bc075549549758af5cc3a6c4524f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":9,"deletions":3,"files":["changelog.txt","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/fixtures/centos-7.7/crontab2.out"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/crontab.py","lines_changed":4},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/crontab2.out","lines_changed":5}]},"message":"crontab bugfix: inserting header row was clobbering the first data row"},{"commit":"6bad164b5e2a5b7c7ce82c69b6c091fc079ab2fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":9,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":16}]},"message":"simplify by removing unnecessary getattr calls"},{"commit":"bb5ba7ddb146821db2efe095b6de5ae5b72bb335","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":7}]},"message":"add indent variable to helptext"},{"commit":"8b2e01d5404649e8f94c81ca3b5fa05fe8962220","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"doc update"},{"commit":"ff1159b1deb9b870382a6066166961902679b569","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"exit codes on error"},{"commit":"a2fd3202a0a3df336792f167c546ea3e53ea2332","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/pip_list.py","jc/parsers/pip_show.py"],"file_stats":[{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2}]},"message":"description formatting change"},{"commit":"7b53715b91787a8885d61ddc0079c7ee8f9348a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/crontab_u.py"],"file_stats":[{"name":"jc/parsers/crontab_u.py","lines_changed":2}]},"message":"change description"},{"commit":"e05fc0a5107b348af14ff4bea39d274939fab7dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":8,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":16}]},"message":"change padding of helptext"},{"commit":"43604c33f654b8c19e8cce387ebbf31bd598b73b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"doc update"},{"commit":"eb67c484ff2a9530b434cd6a90c160f6936e1de7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"add crontab-u to parsers list"},{"commit":"a7b7bdd46781d07e6e70d74a41a3944855fde5fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":94,"deletions":92,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":186}]},"message":"load parser modules 'just in time' so we don't need to load all modules at startup"},{"commit":"ab06989a18faf5378f1e73c7016ea02e1218ff9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":10}]},"message":"description updates"},{"commit":"657b722f947b6a0aa7e52a786e4c84f177e9a5c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":8,"deletions":8,"files":["README.md","changelog.txt","docs/parsers/ini.md","jc/parsers/ini.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"changelog.txt","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"jc/parsers/ini.py","lines_changed":6}]},"message":"ini to INI"},{"commit":"dd2aecad2787186b3962723086bb7e13eff4874f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"description update"},{"commit":"c82c5c5c648384eb5a54205ba8590624a3ab4375","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":6}]},"message":"changelog update"},{"commit":"a1761cd68f91e2668d8d7e2fa7774f6496408be6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":42,"deletions":0,"files":["tests/fixtures/centos-7.7/id.json","tests/fixtures/osx-10.14.6/id.json","tests/test_id.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/id.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/id.json","lines_changed":1},{"name":"tests/test_id.py","lines_changed":40}]},"message":"id tests"},{"commit":"d618a7f583629bb7a7fc0854e7349cab07e3e003","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":143,"deletions":9,"files":["README.md","docgen.sh","docs/parsers/id.md","jc/parsers/id.py"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/id.md","lines_changed":133},{"name":"jc/parsers/id.py","lines_changed":12}]},"message":"doc update"},{"commit":"831a42f66096f5efbbf0f6882970c328120f9c9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":48}]},"message":"id formatting"},{"commit":"3b36022e5a1056a28a83494b1ab8fab209399c2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":250,"deletions":1,"files":["README.md","jc/cli.py","jc/parsers/id.py","tests/fixtures/centos-7.7/id.out","tests/fixtures/osx-10.14.6/id.out"],"file_stats":[{"name":"README.md","lines_changed":33},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":214},{"name":"tests/fixtures/centos-7.7/id.out","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/id.out","lines_changed":1}]},"message":"add id parser"},{"commit":"d01dfa25f10f82cd201ae7b4c9cc18313773f8d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]},"message":"changelog updates"},{"commit":"395a99037b4816eb800b289f90372a9b8d7d36cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":89,"deletions":13,"files":["README.md","docs/parsers/history.md","jc/parsers/history.py"],"file_stats":[{"name":"README.md","lines_changed":84},{"name":"docs/parsers/history.md","lines_changed":10},{"name":"jc/parsers/history.py","lines_changed":8}]},"message":"crontab-u and history doc updates"},{"commit":"025986c51d2d4869b17de63a7dd96efa2988e3c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":13,"deletions":3,"files":["jc/parsers/history.py","tests/fixtures/centos-7.7/history.json","tests/fixtures/ubuntu-18.04/history.json"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":12},{"name":"tests/fixtures/centos-7.7/history.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/history.json","lines_changed":2}]},"message":"change history 'line' to integer"},{"commit":"c56b83093ff05f55ef4643c1731cff61d4b9e8ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":202,"deletions":2,"files":["docgen.sh","docs/parsers/crontab.md","docs/parsers/crontab_u.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"docs/parsers/crontab_u.md","lines_changed":199}]},"message":"doc update"},{"commit":"7c712a4133abd843d4da926e4c8d548abd1d6fa3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":52,"deletions":50,"files":["jc/parsers/crontab_u.py"],"file_stats":[{"name":"jc/parsers/crontab_u.py","lines_changed":102}]},"message":"doc update"},{"commit":"9a0cfe6dfa4888f435d35bd2d35126d031a556d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":4}]},"message":"minor formatting"},{"commit":"a116cdbcec1b27192dd0f9f4707629353edb3caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":29,"deletions":13,"files":["tests/fixtures/ubuntu-18.04/crontab-u.json",".../ubuntu-18.04/{crontab.out => crontab-u.out}","tests/fixtures/ubuntu-18.04/crontab.json","tests/test_crontab.py","tests/test_crontab_u.py"],"file_stats":[{"name":"tests/fixtures/ubuntu-18.04/crontab-u.json","lines_changed":1},{"name":".../ubuntu-18.04/{crontab.out => crontab-u.out}","lines_changed":0},{"name":"tests/fixtures/ubuntu-18.04/crontab.json","lines_changed":1},{"name":"tests/test_crontab.py","lines_changed":12},{"name":"tests/test_crontab_u.py","lines_changed":28}]},"message":"tests for crontab-u"},{"commit":"f2d616c98e049cdac5d667e63723f92110419a1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":272,"deletions":0,"files":["changelog.txt","jc/cli.py","jc/parsers/crontab_u.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":269}]},"message":"add crontab with user parser"},{"commit":"42cbd1777dbacc614d75f67f3f9156f72be46532","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":80,"deletions":0,"files":["tests/test_xml.py","tests/test_yaml.py"],"file_stats":[{"name":"tests/test_xml.py","lines_changed":40},{"name":"tests/test_yaml.py","lines_changed":40}]},"message":"add xml and yaml tests"},{"commit":"ebf375aac0473249cfd212068f6e6e33cc42449a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":40,"deletions":0,"files":["tests/test_ini.py"],"file_stats":[{"name":"tests/test_ini.py","lines_changed":40}]},"message":"add ini tests"},{"commit":"1f9050267eeb870c4c0f50000fc32985c4d8535b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":586,"deletions":0,"files":["tests/fixtures/generic/ini-iptelserver.ini","tests/fixtures/generic/ini-iptelserver.json","tests/fixtures/generic/ini-test.ini","tests/fixtures/generic/ini-test.json","tests/fixtures/generic/xml-cd_catalog.json","tests/fixtures/generic/xml-cd_catalog.xml","tests/fixtures/generic/xml-foodmenu.json","tests/fixtures/generic/xml-foodmenu.xml","tests/fixtures/generic/yaml-istio-sc.json","tests/fixtures/generic/yaml-istio-sc.yaml","tests/fixtures/generic/yaml-istio-sidecar.json","tests/fixtures/generic/yaml-istio-sidecar.yaml"],"file_stats":[{"name":"tests/fixtures/generic/ini-iptelserver.ini","lines_changed":133},{"name":"tests/fixtures/generic/ini-iptelserver.json","lines_changed":1},{"name":"tests/fixtures/generic/ini-test.ini","lines_changed":12},{"name":"tests/fixtures/generic/ini-test.json","lines_changed":1},{"name":"tests/fixtures/generic/xml-cd_catalog.json","lines_changed":1},{"name":"tests/fixtures/generic/xml-cd_catalog.xml","lines_changed":211},{"name":"tests/fixtures/generic/xml-foodmenu.json","lines_changed":1},{"name":"tests/fixtures/generic/xml-foodmenu.xml","lines_changed":33},{"name":"tests/fixtures/generic/yaml-istio-sc.json","lines_changed":1},{"name":"tests/fixtures/generic/yaml-istio-sc.yaml","lines_changed":17},{"name":"tests/fixtures/generic/yaml-istio-sidecar.json","lines_changed":1},{"name":"tests/fixtures/generic/yaml-istio-sidecar.yaml","lines_changed":174}]},"message":"add ini, xml, and yaml test files"},{"commit":"d7f9707a1521719ce051140b1a0b4ced7c5114c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/ini.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"minor formatting"},{"commit":"ab589ee3ed09b9d5e09d8c046f3a64cd2bd14c98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"add __version__ variable"},{"commit":"c84ec0361fc4c877c698378b28ff9e8b502793b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":105,"deletions":3,"files":["README.md","docgen.sh","docs/parsers/xml.md","jc/parsers/xml.py"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/xml.md","lines_changed":99},{"name":"jc/parsers/xml.py","lines_changed":5}]},"message":"xml example update"},{"commit":"47d2f8968a8a9b68fc9fff45985f5e69f1a5cc40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"changelog.txt","lines_changed":1}]},"message":"doc update"},{"commit":"019c480bcce7fe3821b75906fc673ce7bb1ffadc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"update acknowledgments"},{"commit":"547c6d3d5956984d3c4fb5c2a1b76a595752b467","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":172,"deletions":2,"files":["README.md","changelog.txt","jc/cli.py","jc/parsers/xml.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":46},{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/xml.py","lines_changed":119},{"name":"setup.py","lines_changed":3}]},"message":"add xml parser"},{"commit":"b5ebf8b76afcd0e0190994048fe1f5b53f654451","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add ruamel.yaml ack"},{"commit":"c690e328f23a69f592dfaaa949b74ba2190ad376","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":102,"deletions":14,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/yaml.md","lines_changed":58},{"name":"jc/parsers/yaml.py","lines_changed":58}]},"message":"add examples"},{"commit":"cbb92c1a9517234806f1c54398a69645b6f43669","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":94,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":94}]},"message":"add ini and yaml"},{"commit":"beb41997c9b3797e73a678ec1bcddcfb83b5ef0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":91,"deletions":2,"files":["docgen.sh","docs/parsers/ini.md","jc/parsers/ini.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ini.md","lines_changed":87},{"name":"jc/parsers/ini.py","lines_changed":5}]},"message":"doc update"},{"commit":"755a6faf1110f150fe2261b81439b7d17a9b424e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":8,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":12}]},"message":"clean up multi-document support"},{"commit":"021f8350a31a49ecc539f02576303600b222b49d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":4}]},"message":"update doc"},{"commit":"76583dcd2f5ef32e58ca87149154563b07e061cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":113,"deletions":0,"files":["jc/cli.py","jc/parsers/ini.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/ini.py","lines_changed":111}]},"message":"add ini file parser"},{"commit":"bf033239a706c42be3d7508c58a51c542f8a69b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":82,"deletions":7,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/yaml.md","lines_changed":69},{"name":"jc/parsers/yaml.py","lines_changed":20}]},"message":"doc update"},{"commit":"eb37fccd37fd625f701a14b6cfcf30e9f0bbff4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":11}]},"message":"doc update"},{"commit":"d04ad453319fe45e302da87f970d2ac0806fae1a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":2,"files":["changelog.txt","docgen.sh","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"setup.py","lines_changed":5}]},"message":"setup for 1.7.1"},{"commit":"db157b8ca7f7fa935676bafeaafdfd9818a89e6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":94,"deletions":2,"files":["jc/cli.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6},{"name":"jc/parsers/yaml.py","lines_changed":90}]},"message":"add yaml file parser"},{"commit":"68f277bb2081eb2cba14ffe7f0ee1ee0a982335b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":33,"insertions":99,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/crontab.py","lines_changed":3},{"name":"jc/parsers/df.py","lines_changed":3},{"name":"jc/parsers/dig.py","lines_changed":3},{"name":"jc/parsers/du.py","lines_changed":3},{"name":"jc/parsers/env.py","lines_changed":3},{"name":"jc/parsers/foo.py","lines_changed":3},{"name":"jc/parsers/free.py","lines_changed":3},{"name":"jc/parsers/fstab.py","lines_changed":3},{"name":"jc/parsers/history.py","lines_changed":3},{"name":"jc/parsers/hosts.py","lines_changed":3},{"name":"jc/parsers/ifconfig.py","lines_changed":3},{"name":"jc/parsers/iptables.py","lines_changed":3},{"name":"jc/parsers/jobs.py","lines_changed":3},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"jc/parsers/lsblk.py","lines_changed":3},{"name":"jc/parsers/lsmod.py","lines_changed":3},{"name":"jc/parsers/lsof.py","lines_changed":3},{"name":"jc/parsers/mount.py","lines_changed":3},{"name":"jc/parsers/netstat.py","lines_changed":3},{"name":"jc/parsers/pip_list.py","lines_changed":3},{"name":"jc/parsers/pip_show.py","lines_changed":3},{"name":"jc/parsers/ps.py","lines_changed":3},{"name":"jc/parsers/route.py","lines_changed":3},{"name":"jc/parsers/ss.py","lines_changed":3},{"name":"jc/parsers/stat.py","lines_changed":3},{"name":"jc/parsers/systemctl.py","lines_changed":3},{"name":"jc/parsers/systemctl_lj.py","lines_changed":3},{"name":"jc/parsers/systemctl_ls.py","lines_changed":3},{"name":"jc/parsers/systemctl_luf.py","lines_changed":3},{"name":"jc/parsers/uname.py","lines_changed":3},{"name":"jc/parsers/uptime.py","lines_changed":3},{"name":"jc/parsers/w.py","lines_changed":3}]},"message":"add __version__"},{"commit":"4de8f42664379570392552796e34324abb39fdc2","merge":"6633d92 4f11855","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #17 from kellyjonbrazil/dev\n\nDev v1.6.1"},{"commit":"4f118559356edc1da866e1bec80830e7a75a0b26","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]},"message":"update version info"},{"commit":"2b9a5fcc32f85295faa55410efcaf142c42bd167","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":4}]},"message":"update version"},{"commit":"224948d1f23e01b7cd968820529579792f862f0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":428,"deletions":0,"files":["tests/fixtures/centos-7.7/pip-list.json","tests/fixtures/centos-7.7/pip-list.out","tests/fixtures/centos-7.7/pip-show.json","tests/fixtures/centos-7.7/pip-show.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.11.6/pip-list.json","tests/fixtures/osx-10.11.6/pip-list.out","tests/fixtures/osx-10.11.6/pip-show.json","tests/fixtures/osx-10.11.6/pip-show.out","tests/fixtures/osx-10.14.6/pip-list.json","tests/fixtures/osx-10.14.6/pip-list.out","tests/fixtures/osx-10.14.6/pip-show.json","tests/fixtures/osx-10.14.6/pip-show.out","tests/fixtures/ubuntu-18.04/pip-list-legacy.json","tests/fixtures/ubuntu-18.04/pip-list-legacy.out","tests/fixtures/ubuntu-18.04/pip-list.json","tests/fixtures/ubuntu-18.04/pip-list.out","tests/fixtures/ubuntu-18.04/pip-show.json","tests/fixtures/ubuntu-18.04/pip-show.out","tests/test_pip_list.py","tests/test_pip_show.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/pip-list.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/pip-list.out","lines_changed":22},{"name":"tests/fixtures/centos-7.7/pip-show.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/pip-show.out","lines_changed":32},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/pip-list.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/pip-list.out","lines_changed":7},{"name":"tests/fixtures/osx-10.11.6/pip-show.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/pip-show.out","lines_changed":32},{"name":"tests/fixtures/osx-10.14.6/pip-list.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/pip-list.out","lines_changed":7},{"name":"tests/fixtures/osx-10.14.6/pip-show.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/pip-show.out","lines_changed":32},{"name":"tests/fixtures/ubuntu-18.04/pip-list-legacy.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/pip-list-legacy.out","lines_changed":57},{"name":"tests/fixtures/ubuntu-18.04/pip-list.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/pip-list.out","lines_changed":59},{"name":"tests/fixtures/ubuntu-18.04/pip-show.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/pip-show.out","lines_changed":29},{"name":"tests/test_pip_list.py","lines_changed":76},{"name":"tests/test_pip_show.py","lines_changed":64}]},"message":"pip list and pip show tests"},{"commit":"36f2812d5a7a94c412e098233c026d99d5205b60","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":15,"deletions":7,"files":["jc/parsers/pip_list.py"],"file_stats":[{"name":"jc/parsers/pip_list.py","lines_changed":22}]},"message":"add support for legacy output"},{"commit":"be06aa2b31c057c56229e75c7fa70052b83053ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":65,"insertions":70,"deletions":66,"files":["docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":3},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":3},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":3},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":3},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2}]},"message":"update parse() Return info"},{"commit":"41f8e3aba268ca0cd09931a04368615425c1aec8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":65,"insertions":67,"deletions":65,"files":["docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":3},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":3},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2}]},"message":"update Return info"},{"commit":"093c0df8978ace842af5258f9aff72c63c6f843d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"schema info"},{"commit":"37afc7dc8ae30342d01f3f72e73646fa60bb5294","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"updte todo and compatibility"},{"commit":"efbf3549606fc77f8c16587ff04a0c316dfe5c00","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":126,"deletions":12,"files":["README.md","docgen.sh","docs/parsers/pip_show.md","jc/parsers/pip_show.py"],"file_stats":[{"name":"README.md","lines_changed":31},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/pip_show.md","lines_changed":94},{"name":"jc/parsers/pip_show.py","lines_changed":12}]},"message":"doc update for pip show"},{"commit":"5e39fe0d8044787389d8f206f3c863d4bdf1e2ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":64,"deletions":5,"files":["jc/parsers/pip_show.py"],"file_stats":[{"name":"jc/parsers/pip_show.py","lines_changed":69}]},"message":"pip show parser working"},{"commit":"47328dc65969f149c8f027286774ff0847c18add","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add pip-show parser"},{"commit":"addeef50ba54f536855544937a6c98135ae5cd51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":84,"deletions":0,"files":["jc/parsers/pip_show.py"],"file_stats":[{"name":"jc/parsers/pip_show.py","lines_changed":84}]},"message":"initial pip show parser add"},{"commit":"ad338cc5b50a178091c47cbea9a1db135a7fb678","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":56,"deletions":42,"files":["docs/parsers/crontab.md","jc/parsers/crontab.py"],"file_stats":[{"name":"docs/parsers/crontab.md","lines_changed":49},{"name":"jc/parsers/crontab.py","lines_changed":49}]},"message":"schema doc update"},{"commit":"202bc8201e31fd453c682265347b4e2ac2d41718","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["README.md","docs/parsers/crontab.md","jc/parsers/crontab.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"jc/parsers/crontab.py","lines_changed":4}]},"message":"doc update"},{"commit":"5ff99de405fbd8f79f9c2e301ac27184e0aba6fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add argument to parser info"},{"commit":"86ebe2cf9c6b336eacf217393c3c3c324ee29ec0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":205,"deletions":1,"files":["README.md","docgen.sh","docs/parsers/crontab.md","docs/parsers/pip_list.md","jc/cli.py","jc/parsers/pip_list.py"],"file_stats":[{"name":"README.md","lines_changed":21},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":75},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":105}]},"message":"initial add of pip list parser"},{"commit":"facf0b399c608d33f6a454ee24fd49fc62471742","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":4}]},"message":"add osx to campatible"},{"commit":"33db7b0bcb0f24979cad6e173737d75c8ed301af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":57,"deletions":0,"files":["tests/fixtures/centos-7.7/crontab.json","tests/fixtures/ubuntu-18.04/crontab.json","tests/fixtures/ubuntu-18.04/crontab.out","tests/test_crontab.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/crontab.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/crontab.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/crontab.out","lines_changed":15},{"name":"tests/test_crontab.py","lines_changed":40}]},"message":"add crontab tests"},{"commit":"663d07bca1181024d9d08b940237c52197c91729","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":191,"deletions":0,"files":["docgen.sh","docs/parsers/crontab.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/crontab.md","lines_changed":190}]},"message":"add crontab"},{"commit":"ba04e4997fcb28adbee446f633c121f1585b9f2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":113,"deletions":4,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":117}]},"message":"update docs"},{"commit":"c4fee1b658c91afa2abdd746af6c1b4697c44b35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":72,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":73}]},"message":"add crontab parser"},{"commit":"99b92a15bbebc5568f4455f388f945613c4a2759","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":37,"deletions":14,"files":["jc/parsers/crontab.py","tests/fixtures/centos-7.7/crontab.out"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":40},{"name":"tests/fixtures/centos-7.7/crontab.out","lines_changed":11}]},"message":"support shortcut schedules"},{"commit":"b076ab5b57a6a59db096485e5ff4eb9f91bae8be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":177,"deletions":0,"files":["jc/cli.py","jc/parsers/crontab.py","tests/fixtures/centos-7.7/crontab.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":132},{"name":"tests/fixtures/centos-7.7/crontab.out","lines_changed":43}]},"message":"initial crontab parser"},{"commit":"687759f75d0e80e81746a84f051e55cfdc870447","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":31,"deletions":31,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":62}]},"message":"alphabetize du entry"},{"commit":"9eaac7f3af0e0851c2d091d94c9920faa8a0fdfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":32,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":32}]},"message":"add du"},{"commit":"4c24e00cfc0748d98e220d08820b88fc156148db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":21738,"deletions":9,"files":["tests/fixtures/osx-10.11.6/du.json","tests/fixtures/osx-10.11.6/du.out","tests/fixtures/ubuntu-18.04/du.json","tests/fixtures/ubuntu-18.04/du.out","tests/test_du.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/du.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/du.out","lines_changed":2471},{"name":"tests/fixtures/ubuntu-18.04/du.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/du.out","lines_changed":19244},{"name":"tests/test_du.py","lines_changed":30}]},"message":"add osx-11 and ubuntu tests"},{"commit":"beb17011b03e720078b0752e79a6a0f6123d1d3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":131,"deletions":2,"files":["changelog.txt","docgen.sh","docs/parsers/du.md","docs/parsers/uname.md","tests/fixtures/osx-10.14.6/du.json","tests/test_du.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/du.md","lines_changed":115},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/du.json","lines_changed":1},{"name":"tests/test_du.py","lines_changed":12}]},"message":"du tests and docs"},{"commit":"e882bf55bcd1d3526423ed1ccc61fb4819395cce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":8755,"deletions":0,"files":["changelog.txt","jc/cli.py","jc/parsers/du.py","tests/fixtures/centos-7.7/du.json","tests/fixtures/centos-7.7/du.out","tests/fixtures/osx-10.14.6/du.out","tests/test_du.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":148},{"name":"tests/fixtures/centos-7.7/du.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/du.out","lines_changed":5199},{"name":"tests/fixtures/osx-10.14.6/du.out","lines_changed":3364},{"name":"tests/test_du.py","lines_changed":40}]},"message":"initial add du parser"},{"commit":"3a3016adb6d5b9e35f8a39908bfcdc65997cc5c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add parser_count to about"},{"commit":"1e8b68153ade8a1e3d2b4db36e0c402bbc887079","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":27,"deletions":1,"files":["tests/fixtures/osx-10.11.6/uname-a.json","tests/fixtures/osx-10.14.6/uname-a.json","tests/fixtures/osx-10.14.6/uname-a.out","tests/test_uname.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/uname-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/uname-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/uname-a.out","lines_changed":2},{"name":"tests/test_uname.py","lines_changed":24}]},"message":"add osx uname tests"},{"commit":"9335cf65fbb87e3a0a7da0c4e9bcd251cb829de2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"add uname osx support"},{"commit":"83f35256aee71f2619ddf880e2b8f2d6c63280bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":30,"deletions":19,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":49}]},"message":"add OSX support"},{"commit":"428333394817e4461a4eb095f4d6d128305a5f98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":2}]},"message":"version bump"},{"commit":"b8f902796b7fb23a41355b23f7ce235bd18edc58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]},"message":"shorten changelog"},{"commit":"8f99ab295cd15718b98781707def97539ad41920","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"info update"},{"commit":"882310e268e2022f0cd6da75f80f5356529cd05c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add name to about parser info"},{"commit":"56bce9521409d1850f75a3ae2be1363e765dd9dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":10,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":16}]},"message":"about code cleanup"},{"commit":"c13ecbec2952c5d6765397f645e90653a4fd9d05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":28,"insertions":2,"deletions":28,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":1},{"name":"jc/parsers/env.py","lines_changed":1},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":1},{"name":"jc/parsers/fstab.py","lines_changed":1},{"name":"jc/parsers/history.py","lines_changed":1},{"name":"jc/parsers/hosts.py","lines_changed":1},{"name":"jc/parsers/iptables.py","lines_changed":1},{"name":"jc/parsers/jobs.py","lines_changed":1},{"name":"jc/parsers/ls.py","lines_changed":1},{"name":"jc/parsers/lsblk.py","lines_changed":1},{"name":"jc/parsers/lsmod.py","lines_changed":1},{"name":"jc/parsers/lsof.py","lines_changed":1},{"name":"jc/parsers/mount.py","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":1},{"name":"jc/parsers/ps.py","lines_changed":1},{"name":"jc/parsers/route.py","lines_changed":1},{"name":"jc/parsers/ss.py","lines_changed":1},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":1},{"name":"jc/parsers/systemctl_lj.py","lines_changed":1},{"name":"jc/parsers/systemctl_ls.py","lines_changed":1},{"name":"jc/parsers/systemctl_luf.py","lines_changed":1},{"name":"jc/parsers/uname.py","lines_changed":1},{"name":"jc/parsers/uptime.py","lines_changed":1},{"name":"jc/parsers/w.py","lines_changed":1}]},"message":"clean up parser info"},{"commit":"0ffaaa6e73649d1f657af569ac0b912f166e8493","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":9,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":16}]},"message":"clean up about code"},{"commit":"75eff3adea097157c005b2201e353a741241ce8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":8}]},"message":"remove whitespace"},{"commit":"bf5f80476cff642ae672187ea59d40bdb602101e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6}]},"message":"use real parser name in error message"},{"commit":"9aaf0fbb2f838c0af1e7f18fdb19104f9f5d3d39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":29,"insertions":146,"deletions":1,"files":["changelog.txt","docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"docs/parsers/arp.md","lines_changed":11},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5}]},"message":"doc updates"},{"commit":"8f01ef79532743573632d716ceea41d5ea752c88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add -a option info"},{"commit":"da1d087452da02631296b1b3dc9ee10d4b7f764b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add parser version info"},{"commit":"e16bc7e882a27a1d5a4bd7cf9972208e6997f96f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":29,"insertions":82,"deletions":17,"files":["jc/cli.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":71},{"name":"jc/parsers/arp.py","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":1},{"name":"jc/parsers/env.py","lines_changed":1},{"name":"jc/parsers/foo.py","lines_changed":1},{"name":"jc/parsers/free.py","lines_changed":1},{"name":"jc/parsers/fstab.py","lines_changed":1},{"name":"jc/parsers/history.py","lines_changed":1},{"name":"jc/parsers/hosts.py","lines_changed":1},{"name":"jc/parsers/iptables.py","lines_changed":1},{"name":"jc/parsers/jobs.py","lines_changed":1},{"name":"jc/parsers/ls.py","lines_changed":1},{"name":"jc/parsers/lsblk.py","lines_changed":1},{"name":"jc/parsers/lsmod.py","lines_changed":1},{"name":"jc/parsers/lsof.py","lines_changed":1},{"name":"jc/parsers/mount.py","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":1},{"name":"jc/parsers/ps.py","lines_changed":1},{"name":"jc/parsers/route.py","lines_changed":1},{"name":"jc/parsers/ss.py","lines_changed":1},{"name":"jc/parsers/stat.py","lines_changed":1},{"name":"jc/parsers/systemctl.py","lines_changed":1},{"name":"jc/parsers/systemctl_lj.py","lines_changed":1},{"name":"jc/parsers/systemctl_ls.py","lines_changed":1},{"name":"jc/parsers/systemctl_luf.py","lines_changed":1},{"name":"jc/parsers/uname.py","lines_changed":1},{"name":"jc/parsers/uptime.py","lines_changed":1},{"name":"jc/parsers/w.py","lines_changed":1}]},"message":"add about information to parsers"},{"commit":"fe9bdd4811216257c05b16d6d61897929669d434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":31,"insertions":384,"deletions":219,"files":["changelog.txt","jc/cli.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/cli.py","lines_changed":127},{"name":"jc/parsers/arp.py","lines_changed":25},{"name":"jc/parsers/df.py","lines_changed":15},{"name":"jc/parsers/dig.py","lines_changed":15},{"name":"jc/parsers/env.py","lines_changed":16},{"name":"jc/parsers/foo.py","lines_changed":16},{"name":"jc/parsers/free.py","lines_changed":16},{"name":"jc/parsers/fstab.py","lines_changed":16},{"name":"jc/parsers/history.py","lines_changed":16},{"name":"jc/parsers/hosts.py","lines_changed":16},{"name":"jc/parsers/ifconfig.py","lines_changed":17},{"name":"jc/parsers/iptables.py","lines_changed":16},{"name":"jc/parsers/jobs.py","lines_changed":16},{"name":"jc/parsers/ls.py","lines_changed":16},{"name":"jc/parsers/lsblk.py","lines_changed":17},{"name":"jc/parsers/lsmod.py","lines_changed":16},{"name":"jc/parsers/lsof.py","lines_changed":16},{"name":"jc/parsers/mount.py","lines_changed":16},{"name":"jc/parsers/netstat.py","lines_changed":16},{"name":"jc/parsers/ps.py","lines_changed":16},{"name":"jc/parsers/route.py","lines_changed":16},{"name":"jc/parsers/ss.py","lines_changed":16},{"name":"jc/parsers/stat.py","lines_changed":15},{"name":"jc/parsers/systemctl.py","lines_changed":16},{"name":"jc/parsers/systemctl_lj.py","lines_changed":16},{"name":"jc/parsers/systemctl_ls.py","lines_changed":16},{"name":"jc/parsers/systemctl_luf.py","lines_changed":16},{"name":"jc/parsers/uname.py","lines_changed":16},{"name":"jc/parsers/uptime.py","lines_changed":16},{"name":"jc/parsers/w.py","lines_changed":16}]},"message":"add info class"},{"commit":"17b6f3f6d6c398a52166849088a793d0e3b328b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":26,"deletions":0,"files":["tests/fixtures/osx-10.11.6/uptime.json","tests/fixtures/osx-10.14.6/uptime.json","tests/test_uptime.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/uptime.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/uptime.json","lines_changed":1},{"name":"tests/test_uptime.py","lines_changed":24}]},"message":"add osx tests"},{"commit":"90a6baf0ee3b8b27476badada4e590e22144f810","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":52,"deletions":0,"files":["tests/fixtures/osx-10.11.6/ps-axu.json","tests/fixtures/osx-10.11.6/ps-ef.json","tests/fixtures/osx-10.11.6/w.json","tests/fixtures/osx-10.14.6/w.json","tests/test_ps.py","tests/test_w.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/ps-axu.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ps-ef.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/w.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/w.json","lines_changed":1},{"name":"tests/test_ps.py","lines_changed":24},{"name":"tests/test_w.py","lines_changed":24}]},"message":"add osx tests"},{"commit":"f0e73d0e72d540292f41fff51652932c4e8b0315","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":444,"deletions":0,"files":["tests/fixtures/osx-10.11.6/ps-axu.out","tests/fixtures/osx-10.11.6/ps-ef.out","tests/fixtures/osx-10.11.6/uname-a.out","tests/fixtures/osx-10.11.6/uptime.out","tests/fixtures/osx-10.11.6/w.out","tests/fixtures/osx-10.14.6/uname-a.out","tests/fixtures/osx-10.14.6/uptime.out","tests/fixtures/osx-10.14.6/w.out"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/ps-axu.out","lines_changed":211},{"name":"tests/fixtures/osx-10.11.6/ps-ef.out","lines_changed":211},{"name":"tests/fixtures/osx-10.11.6/uname-a.out","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/uptime.out","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/w.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/uname-a.out","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/uptime.out","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/w.out","lines_changed":10}]},"message":"add osx tests"},{"commit":"a762882f1ccea6789ce7813b313f3242175b5bd6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":88,"files":["tests/fixtures/osx-10.14.6/ps-axu.json","tests/fixtures/osx-10.14.6/ps-axu.out","tests/fixtures/osx-10.14.6/ps-ef.json","tests/fixtures/osx-10.14.6/ps-ef.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ps-axu.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ps-axu.out","lines_changed":43},{"name":"tests/fixtures/osx-10.14.6/ps-ef.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ps-ef.out","lines_changed":43}]},"message":"fixture updates"},{"commit":"4c1bc5923658bf463805ea33ec8d170a817909ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":4,"deletions":3,"files":["docs/parsers/mount.md","docs/parsers/ps.md","docs/parsers/stat.md"],"file_stats":[{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":3},{"name":"docs/parsers/stat.md","lines_changed":2}]},"message":"doc updates"},{"commit":"f2962083f80503f82c3eddf470674c776e616b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":93,"deletions":17,"files":["changelog.txt","jc/parsers/mount.py","tests/fixtures/osx-10.14.6/mount.json","tests/fixtures/osx-10.14.6/mount.out","tests/fixtures/osx-10.14.6/mount2.json","tests/fixtures/osx-10.14.6/mount2.out","tests/test_mount.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/parsers/mount.py","lines_changed":68},{"name":"tests/fixtures/osx-10.14.6/mount.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/mount.out","lines_changed":6},{"name":"tests/fixtures/osx-10.14.6/mount2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/mount2.out","lines_changed":7},{"name":"tests/test_mount.py","lines_changed":24}]},"message":"add osx support for mount parser"},{"commit":"a0b22a5bcfa0777895243088b2c0f3bb5b758775","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"help text formatting"},{"commit":"dcf393354cd57683aaeecbed7b884d19b0fe94d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":2}]},"message":"doc fix"},{"commit":"5f771656e3fdd703d449b2817faa4faeff1cd879","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":10}]},"message":"use universal parser"},{"commit":"f376aab79328a211a127f4f818e7007232f1fae3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":3}]},"message":"doc update"},{"commit":"3c96464217a740571e16c74ad41c1d92f7585547","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":886,"deletions":13,"files":["jc/parsers/ps.py","tests/fixtures/osx-10.14.6/ps-axu.json","tests/fixtures/osx-10.14.6/ps-axu.out","tests/fixtures/osx-10.14.6/ps-ef.json","tests/fixtures/osx-10.14.6/ps-ef.out","tests/test_ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":31},{"name":"tests/fixtures/osx-10.14.6/ps-axu.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ps-axu.out","lines_changed":421},{"name":"tests/fixtures/osx-10.14.6/ps-ef.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ps-ef.out","lines_changed":421},{"name":"tests/test_ps.py","lines_changed":24}]},"message":"osx fixes and tests"},{"commit":"c9892833a16bb63f78537717be65670eb65a87b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/mount.py"],"file_stats":[{"name":"jc/parsers/mount.py","lines_changed":2}]},"message":"formatting change"},{"commit":"127c98affc7b122f0ced13852850214b9e07677e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update"},{"commit":"8687a772f53ecaf1a20464429060b94bbf660fe7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":8}]},"message":"use universal parser"},{"commit":"b1162b14d42643fd53dbbe3f89ba042f030d9254","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":6,"files":["jc/parsers/lsmod.py"],"file_stats":[{"name":"jc/parsers/lsmod.py","lines_changed":9}]},"message":"use universal parser"},{"commit":"8a8ee3570733c0c06b8cf53eb005e53ac2f9170f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":60,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":68}]},"message":"use universal parser"},{"commit":"5e109a3665cf0c286ac9dcbe2a452348a14b90ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/fixtures/create_fixtures.sh"],"file_stats":[{"name":"tests/fixtures/create_fixtures.sh","lines_changed":2}]},"message":"add du"},{"commit":"11db478430515ef3e1020482792f23d1c40ca32b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"update changelog"},{"commit":"a85377014d9f93fcb9840715129b0e09d48d8584","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":11,"files":["jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/free.py","lines_changed":16}]},"message":"use universal parser"},{"commit":"3aea86234d33160f5b3139cbfc2f4f032f655f3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":70,"deletions":61,"files":["tests/fixtures/osx-10.11.6/ls-al.json","tests/fixtures/osx-10.11.6/ls-al.out","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.11.6/ls-alh.out","tests/fixtures/osx-10.11.6/ls.json","tests/fixtures/osx-10.11.6/ls.out"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/ls-al.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ls-al.out","lines_changed":61},{"name":"tests/fixtures/osx-10.11.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ls-alh.out","lines_changed":61},{"name":"tests/fixtures/osx-10.11.6/ls.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ls.out","lines_changed":3}]},"message":"fix osx-10.11.6 tests"},{"commit":"916ec6ed6b858a8a496e4026b9bab5505abca2ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":193,"deletions":61,"files":["tests/fixtures/osx-10.11.6/ls-al.json","tests/fixtures/osx-10.11.6/ls-al.out","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.11.6/ls-alh.out","tests/fixtures/osx-10.11.6/ls.json","tests/fixtures/osx-10.11.6/ls.out","tests/fixtures/osx-10.14.6/ls-al.json","tests/fixtures/osx-10.14.6/ls-al.out","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.out","tests/fixtures/osx-10.14.6/ls.json","tests/fixtures/osx-10.14.6/ls.out","tests/test_ls.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/ls-al.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ls-al.out","lines_changed":29},{"name":"tests/fixtures/osx-10.11.6/ls-alh.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ls-alh.out","lines_changed":29},{"name":"tests/fixtures/osx-10.11.6/ls.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ls.out","lines_changed":18},{"name":"tests/fixtures/osx-10.14.6/ls-al.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-al.out","lines_changed":64},{"name":"tests/fixtures/osx-10.14.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-alh.out","lines_changed":64},{"name":"tests/fixtures/osx-10.14.6/ls.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls.out","lines_changed":5},{"name":"tests/test_ls.py","lines_changed":36}]},"message":"fix osx ls tests"},{"commit":"9dca6ba5393d8840ad7fc9509273715a71955bd1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":55,"insertions":120,"deletions":6,"files":["docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":8},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":3},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":3},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":8},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":3},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":3},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2}]},"message":"doc formatting change"},{"commit":"0ebb89f561e1ced2e7f61ae19290e176c8a98bf2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["docs/parsers/arp.md"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2}]},"message":"doc update"},{"commit":"e237867e242211ba37206911ebf1b35c97b417fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":2}]},"message":"doc formatting"},{"commit":"78fa44fd9ac9790313de6f461eb46d9b8d6159d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":24,"insertions":75,"deletions":3,"files":["docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/netstat.md","lines_changed":3},{"name":"docs/parsers/ps.md","lines_changed":3},{"name":"docs/parsers/route.md","lines_changed":3},{"name":"docs/parsers/ss.md","lines_changed":3},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":3},{"name":"docs/parsers/systemctl_lj.md","lines_changed":3},{"name":"docs/parsers/systemctl_ls.md","lines_changed":3},{"name":"docs/parsers/systemctl_luf.md","lines_changed":3},{"name":"docs/parsers/uname.md","lines_changed":3},{"name":"docs/parsers/uptime.md","lines_changed":3},{"name":"docs/parsers/w.md","lines_changed":3},{"name":"jc/parsers/netstat.py","lines_changed":3},{"name":"jc/parsers/ps.py","lines_changed":3},{"name":"jc/parsers/route.py","lines_changed":5},{"name":"jc/parsers/ss.py","lines_changed":3},{"name":"jc/parsers/stat.py","lines_changed":5},{"name":"jc/parsers/systemctl.py","lines_changed":3},{"name":"jc/parsers/systemctl_lj.py","lines_changed":3},{"name":"jc/parsers/systemctl_ls.py","lines_changed":3},{"name":"jc/parsers/systemctl_luf.py","lines_changed":3},{"name":"jc/parsers/uname.py","lines_changed":3},{"name":"jc/parsers/uptime.py","lines_changed":3},{"name":"jc/parsers/w.py","lines_changed":3}]},"message":"add compatibility to docs"},{"commit":"d615fa3b933ccd284bd8ee92baf5dfa6264507c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":30,"insertions":91,"deletions":1,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":3},{"name":"docs/parsers/df.md","lines_changed":3},{"name":"docs/parsers/dig.md","lines_changed":3},{"name":"docs/parsers/env.md","lines_changed":3},{"name":"docs/parsers/free.md","lines_changed":3},{"name":"docs/parsers/fstab.md","lines_changed":3},{"name":"docs/parsers/history.md","lines_changed":3},{"name":"docs/parsers/hosts.md","lines_changed":3},{"name":"docs/parsers/ifconfig.md","lines_changed":3},{"name":"docs/parsers/iptables.md","lines_changed":3},{"name":"docs/parsers/jobs.md","lines_changed":3},{"name":"docs/parsers/ls.md","lines_changed":3},{"name":"docs/parsers/lsblk.md","lines_changed":3},{"name":"docs/parsers/lsmod.md","lines_changed":3},{"name":"docs/parsers/lsof.md","lines_changed":3},{"name":"docs/parsers/mount.md","lines_changed":3},{"name":"jc/parsers/env.py","lines_changed":3},{"name":"jc/parsers/foo.py","lines_changed":3},{"name":"jc/parsers/free.py","lines_changed":3},{"name":"jc/parsers/fstab.py","lines_changed":3},{"name":"jc/parsers/history.py","lines_changed":3},{"name":"jc/parsers/hosts.py","lines_changed":3},{"name":"jc/parsers/ifconfig.py","lines_changed":3},{"name":"jc/parsers/iptables.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":3},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"jc/parsers/lsblk.py","lines_changed":3},{"name":"jc/parsers/lsmod.py","lines_changed":3},{"name":"jc/parsers/lsof.py","lines_changed":3},{"name":"jc/parsers/mount.py","lines_changed":3}]},"message":"add compatibility to docs"},{"commit":"ce134dc332dd9175e0d1823a4959bed427a3ddce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":115,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-al.json","tests/fixtures/osx-10.14.6/ls-al.out","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.out","tests/fixtures/osx-10.14.6/ls.json","tests/fixtures/osx-10.14.6/ls.out","tests/test_ls.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ls-al.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-al.out","lines_changed":29},{"name":"tests/fixtures/osx-10.14.6/ls-alh.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-alh.out","lines_changed":29},{"name":"tests/fixtures/osx-10.14.6/ls.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls.out","lines_changed":18},{"name":"tests/test_ls.py","lines_changed":36}]},"message":"Add OSX tests for ls"},{"commit":"a56e4dc752a01635fbd9fc31e21d390bbd629084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":28,"deletions":3,"files":["changelog.txt","jc/parsers/arp.py","jc/parsers/universal.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/arp.py","lines_changed":6},{"name":"jc/parsers/universal.py","lines_changed":24}]},"message":"use universal simple table parser"},{"commit":"d221b4aa29e80dda2b591059f4d64c416bff0a17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update"},{"commit":"d2cba6ad2f1f1cd35aa174239584a0291abb8e37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/df.py","lines_changed":3},{"name":"jc/parsers/dig.py","lines_changed":3}]},"message":"add compatibility info"},{"commit":"84b3c30b525ddf1f74eb7fd833050a0ec69621dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":254,"deletions":2,"files":["tests/fixtures/osx-10.11.6/df-h.json","tests/fixtures/osx-10.11.6/df-h.out","tests/fixtures/osx-10.11.6/df.json","tests/fixtures/osx-10.11.6/df.out","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-aaaa.out","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig-x.out","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.11.6/dig.out","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/osx-10.14.6/df-h.out","tests/fixtures/osx-10.14.6/df.json","tests/fixtures/osx-10.14.6/df.out","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-aaaa.out","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig-x.out","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/osx-10.14.6/dig.out","tests/test_df.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/df-h.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/df-h.out","lines_changed":7},{"name":"tests/fixtures/osx-10.11.6/df.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/df.out","lines_changed":7},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.out","lines_changed":20},{"name":"tests/fixtures/osx-10.11.6/dig-x.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/dig-x.out","lines_changed":20},{"name":"tests/fixtures/osx-10.11.6/dig.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/dig.out","lines_changed":41},{"name":"tests/fixtures/osx-10.14.6/df-h.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/df-h.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/df.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/df.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.out","lines_changed":20},{"name":"tests/fixtures/osx-10.14.6/dig-x.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig-x.out","lines_changed":20},{"name":"tests/fixtures/osx-10.14.6/dig.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig.out","lines_changed":41},{"name":"tests/test_df.py","lines_changed":52}]},"message":"add osx tests"},{"commit":"68eeec19a812b735627763bb7d7e2a58b72f7504","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":30,"deletions":25,"files":["README.md","docs/parsers/df.md","jc/parsers/df.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docs/parsers/df.md","lines_changed":31},{"name":"jc/parsers/df.py","lines_changed":20}]},"message":"doc update"},{"commit":"c6d1528a2ed302ea82828b733a98db415be83708","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":19,"deletions":8,"files":["jc/parsers/df.py","jc/parsers/universal.py","tests/fixtures/centos-7.7/df.json","tests/fixtures/ubuntu-18.04/df.json"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":21},{"name":"jc/parsers/universal.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/df.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/df.json","lines_changed":2}]},"message":"use _ instead of -"},{"commit":"50a6b256b8a0936299f562c208ede6187feeb9a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":83,"deletions":0,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":83}]},"message":"new universal parsers to limit code duplication"},{"commit":"bbba1fe477014d0b7f370ce46ed821121be81a8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":38,"deletions":19,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":57}]},"message":"update df to use universal sparse table parser for osx compatibility"},{"commit":"46b827da6b438be73fab168c3f05298483b141e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":75,"deletions":4,"files":["changelog.txt","jc/parsers/arp.py","tests/fixtures/osx-10.11.6/arp-a.json","tests/fixtures/osx-10.11.6/arp-a.out","tests/fixtures/osx-10.14.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a.out","tests/test_arp.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/arp.py","lines_changed":27},{"name":"tests/fixtures/osx-10.11.6/arp-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/arp-a.out","lines_changed":13},{"name":"tests/fixtures/osx-10.14.6/arp-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/arp-a.out","lines_changed":12},{"name":"tests/test_arp.py","lines_changed":24}]},"message":"add osx compatibility"},{"commit":"5e8c28a30a283b6ef525e9e78d3ef2a0e1526927","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2}]},"message":"comment fix"},{"commit":"e5d39031645ac897e0c0297f514ee62efe02f5f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":38,"deletions":17,"files":["docs/parsers/ifconfig.md"],"file_stats":[{"name":"docs/parsers/ifconfig.md","lines_changed":55}]},"message":"update ifconfig doc"},{"commit":"23975c9c9e1dd9d3e9fd7c05d231a86d646be048","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":132,"deletions":45,"files":["README.md","changelog.txt","jc/parsers/ifconfig.py","tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig2.json","tests/fixtures/osx-10.14.6/ifconfig.json","tests/fixtures/osx-10.14.6/ifconfig2.json","tests/fixtures/ubuntu-18.04/ifconfig.json","tests/test_ifconfig.py"],"file_stats":[{"name":"README.md","lines_changed":35},{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":80},{"name":"tests/fixtures/centos-7.7/ifconfig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ifconfig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ifconfig2.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ifconfig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ifconfig2.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ifconfig.json","lines_changed":2},{"name":"tests/test_ifconfig.py","lines_changed":48}]},"message":"fixup osx subnet mask and convert state to an array"},{"commit":"1e0dab8355e6fcb0ecde85270d4daac6ad93875b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":272,"deletions":2,"files":["tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.out","tests/fixtures/osx-10.11.6/ifconfig2.json","tests/fixtures/osx-10.11.6/ifconfig2.out","tests/fixtures/osx-10.14.6/ifconfig.json","tests/fixtures/osx-10.14.6/ifconfig.out","tests/fixtures/osx-10.14.6/ifconfig2.json","tests/fixtures/osx-10.14.6/ifconfig2.out","tests/fixtures/ubuntu-18.04/ifconfig.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ifconfig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ifconfig.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ifconfig.out","lines_changed":40},{"name":"tests/fixtures/osx-10.11.6/ifconfig2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ifconfig2.out","lines_changed":40},{"name":"tests/fixtures/osx-10.14.6/ifconfig.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ifconfig.out","lines_changed":91},{"name":"tests/fixtures/osx-10.14.6/ifconfig2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ifconfig2.out","lines_changed":95},{"name":"tests/fixtures/ubuntu-18.04/ifconfig.json","lines_changed":2}]},"message":"ifconfig fixture updates"},{"commit":"5f4c10ffd5a9cbe4e5e3d2b9adc34f36492eaf46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"changelog.txt","lines_changed":4}]},"message":"doc update"},{"commit":"6f3d2b4b566b963fbf38572c587e8bd4e18881dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"require ifconfig-parser v0.0.5 for mac and bytes support"},{"commit":"fea8ace8446b64abe9e61a028951bc4e6df9f9c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":6,"files":["README.md","jc/parsers/ifconfig.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":22}]},"message":"add OSX compatibility"},{"commit":"6633d9262c936217d8e90e64505c66b006cdab56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["_config.yml"],"file_stats":[{"name":"_config.yml","lines_changed":1}]},"message":"Set theme jekyll-theme-cayman"},{"commit":"7d54137140e6d0515bc23c131a097af5c70c3379","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"link update"},{"commit":"2fcda6f2480ae6bd5428a0147c19f9af527391b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add motivation to readme"},{"commit":"9c1b8bacf9a59a86feb2a91eb44919e800491d1e","merge":"d192745 4867655","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #16 from kellyjonbrazil/dev\n\nDev v1.5.1"},{"commit":"4867655eb297b1da7a55e0d3a24c7ed7c8af55c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":172,"deletions":0,"files":[".../centos-7.7/iptables-filter-line-numbers.json",".../centos-7.7/iptables-filter-line-numbers.out","tests/fixtures/create_fixtures.sh",".../ubuntu-18.04/iptables-filter-line-numbers.json",".../ubuntu-18.04/iptables-filter-line-numbers.out","tests/test_iptables.py"],"file_stats":[{"name":".../centos-7.7/iptables-filter-line-numbers.json","lines_changed":1},{"name":".../centos-7.7/iptables-filter-line-numbers.out","lines_changed":128},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":1},{"name":".../ubuntu-18.04/iptables-filter-line-numbers.json","lines_changed":1},{"name":".../ubuntu-18.04/iptables-filter-line-numbers.out","lines_changed":17},{"name":"tests/test_iptables.py","lines_changed":24}]},"message":"add line-numbers tests"},{"commit":"47410d1a95406b0960aac705e7cfe925fea3172c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"5fa49f5e672fc6f8dc18fb4b1761c98b81362649","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update"},{"commit":"36c53827fab6ac38c0010250ec387db40fdeecfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":19,"insertions":1316,"deletions":308,"files":["tests/fixtures/centos-7.7/systemctl-ls.json","tests/fixtures/centos-7.7/systemctl-ls.out","tests/fixtures/centos-7.7/systemctl-luf.json","tests/fixtures/centos-7.7/systemctl-luf.out","tests/fixtures/centos-7.7/systemctl.json","tests/fixtures/centos-7.7/systemctl.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/systemctl-lj.json","tests/fixtures/ubuntu-18.04/systemctl-lj.out","tests/fixtures/ubuntu-18.04/systemctl-ls.json","tests/fixtures/ubuntu-18.04/systemctl-ls.out","tests/fixtures/ubuntu-18.04/systemctl-luf.json","tests/fixtures/ubuntu-18.04/systemctl-luf.out","tests/fixtures/ubuntu-18.04/systemctl.json","tests/fixtures/ubuntu-18.04/systemctl.out","tests/test_systemctl.py","tests/test_systemctl_lj.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/systemctl-ls.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/systemctl-ls.out","lines_changed":17},{"name":"tests/fixtures/centos-7.7/systemctl-luf.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/systemctl-luf.out","lines_changed":247},{"name":"tests/fixtures/centos-7.7/systemctl.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/systemctl.out","lines_changed":334},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":8},{"name":"tests/fixtures/ubuntu-18.04/systemctl-lj.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/systemctl-lj.out","lines_changed":6},{"name":"tests/fixtures/ubuntu-18.04/systemctl-ls.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/systemctl-ls.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-18.04/systemctl-luf.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/systemctl-luf.out","lines_changed":324},{"name":"tests/fixtures/ubuntu-18.04/systemctl.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/systemctl.out","lines_changed":528},{"name":"tests/test_systemctl.py","lines_changed":4},{"name":"tests/test_systemctl_lj.py","lines_changed":40},{"name":"tests/test_systemctl_ls.py","lines_changed":40},{"name":"tests/test_systemctl_luf.py","lines_changed":40}]},"message":"add systemctl tests"},{"commit":"51631aef5b1b6fdeff4ab543510a9f9e15a0c2c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":358,"deletions":0,"files":["tests/fixtures/centos-7.7/systemctl.json","tests/fixtures/centos-7.7/systemctl.out","tests/fixtures/ubuntu-18.04/systemctl.json","tests/fixtures/ubuntu-18.04/systemctl.out","tests/test_systemctl.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/systemctl.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/systemctl.out","lines_changed":118},{"name":"tests/fixtures/ubuntu-18.04/systemctl.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/systemctl.out","lines_changed":198},{"name":"tests/test_systemctl.py","lines_changed":40}]},"message":"add systemctl tests"},{"commit":"a0298ac8a39093620b6859c909a78d11ab4a8e56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":55,"deletions":0,"files":["tests/fixtures/centos-7.7/fstab.json","tests/fixtures/centos-7.7/fstab.out","tests/fixtures/ubuntu-18.04/fstab.json","tests/fixtures/ubuntu-18.04/fstab.out","tests/test_fstab.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/fstab.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/fstab.out","lines_changed":11},{"name":"tests/fixtures/ubuntu-18.04/fstab.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/fstab.out","lines_changed":2},{"name":"tests/test_fstab.py","lines_changed":40}]},"message":"add fstab tests"},{"commit":"98c0188821ebaa71c5661f2e095cf464bec695f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/systemctl_ls.md","jc/parsers/systemctl_ls.py"],"file_stats":[{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2}]},"message":"formatting fix"},{"commit":"ab1dabe3e42997825707006b63cc0c03d28470d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py"],"file_stats":[{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2}]},"message":"doc update"},{"commit":"94bdb11fdf0e16d89769046d317643334ef1acdd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"remove systemctl from TODO"},{"commit":"b6727d68bab66164a3834b240ae868062aad9371","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":68,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":68}]},"message":"add systemctl parsers"},{"commit":"89bad7fc2b4023b10b6eeb7ff1f8f18b71731cb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":1,"deletions":191,"files":["changelog.txt","docgen.sh","docs/parsers/systemctl_lm.md","jc/cli.py","jc/parsers/systemctl_lm.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/systemctl_lm.md","lines_changed":76},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/systemctl_lm.py","lines_changed":110}]},"message":"remove systemctl list-machines parser"},{"commit":"c0b8b810a2616e77973c1223f9c39329112337ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":306,"deletions":0,"files":["docgen.sh","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_lm.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md"],"file_stats":[{"name":"docgen.sh","lines_changed":4},{"name":"docs/parsers/systemctl_lj.md","lines_changed":94},{"name":"docs/parsers/systemctl_lm.md","lines_changed":76},{"name":"docs/parsers/systemctl_ls.md","lines_changed":68},{"name":"docs/parsers/systemctl_luf.md","lines_changed":64}]},"message":"add systemctl list parsers"},{"commit":"31eb65acd18b6d9163de900dbe48807a41a23785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_lm.py"],"file_stats":[{"name":"jc/parsers/systemctl_lm.py","lines_changed":4}]},"message":"doc fix"},{"commit":"513bbeb4649c011476930e1d1bf739ff06c2d66f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/systemctl_lj.py"],"file_stats":[{"name":"jc/parsers/systemctl_lj.py","lines_changed":2}]},"message":"add break on footer condition"},{"commit":"3a52fb725a0e56b52a0ea430266400b268360737","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":55,"deletions":29,"files":["jc/cli.py","jc/parsers/systemctl_lj.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4},{"name":"jc/parsers/systemctl_lj.py","lines_changed":80}]},"message":"add systemctl list-jobs parser"},{"commit":"5affd444999de88b9bff7b49d790913540f97cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":342,"deletions":24,"files":["jc/cli.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_lm.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":11},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":110},{"name":"jc/parsers/systemctl_lm.py","lines_changed":110},{"name":"jc/parsers/systemctl_ls.py","lines_changed":101},{"name":"jc/parsers/systemctl_luf.py","lines_changed":32}]},"message":"add systemctl_lj, lm, ls, and luf"},{"commit":"5dbc6e806c5d05bfa1f7e2156ed2573341eb23c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":142,"deletions":29,"files":["jc/cli.py","jc/parsers/systemctl_luf.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":61},{"name":"jc/parsers/systemctl_luf.py","lines_changed":110}]},"message":"add systemctl_luf parser"},{"commit":"59ae31f3f342c9337037aac4630310c9b9eb8287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":219,"deletions":0,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/systemctl.md","jc/cli.py","jc/parsers/systemctl.py"],"file_stats":[{"name":"README.md","lines_changed":29},{"name":"changelog.txt","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/systemctl.md","lines_changed":76},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/systemctl.py","lines_changed":109}]},"message":"add systemctl parser"},{"commit":"230e921c2e8d931ea8a6abdf81215dbfc968b41c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"remove fstab from TODO"},{"commit":"a7c3d88b08ab90b719035cb15d78afe708235742","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":136,"deletions":0,"files":["docgen.sh","docs/parsers/fstab.md","jc/parsers/fstab.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/fstab.md","lines_changed":107},{"name":"jc/parsers/fstab.py","lines_changed":28}]},"message":"update example and docs"},{"commit":"9b453bcb84dd9f2f566955eda1ab35c863b3e8a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":13,"files":["jc/parsers/fstab.py"],"file_stats":[{"name":"jc/parsers/fstab.py","lines_changed":14}]},"message":"remove commented code block"},{"commit":"ce43c782f601fc12267fa22279e8e0142ecc3a7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"fstab update"},{"commit":"cb16faaf4d1700379d53053fe06824fd03404f87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"helptext update"},{"commit":"3f1d3ff6d85422536e0adfb6433fd3ec0399ebe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":73,"deletions":6,"files":["README.md","jc/parsers/fstab.py"],"file_stats":[{"name":"README.md","lines_changed":31},{"name":"jc/parsers/fstab.py","lines_changed":48}]},"message":"add examples"},{"commit":"6f67eecd5ed46f8a692ff5dd607a2395a5c838ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":108,"deletions":0,"files":["jc/cli.py","jc/parsers/fstab.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/fstab.py","lines_changed":105}]},"message":"add fstab parser"},{"commit":"e75c819190634f0a9048942b39eda691831829ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"changelog update"},{"commit":"601e68d104dd43940acadaa574dfd9b5117b0476","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/hosts.md","jc/parsers/hosts.py"],"file_stats":[{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2}]},"message":"doc update"},{"commit":"8285ecfd1e7810102cdbc399398a16f999c841ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["tests/fixtures/centos-7.7/hosts.out","tests/fixtures/ubuntu-18.04/hosts.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/hosts.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/hosts.out","lines_changed":3}]},"message":"enhance test file with comments"},{"commit":"8726de902e527b95a12afd79a53d533cc176703d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"add hosts parser"},{"commit":"4133585274b0e7faa0255a911468248eb390d673","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":53,"deletions":0,"files":["tests/fixtures/centos-7.7/hosts.json","tests/fixtures/centos-7.7/hosts.out","tests/fixtures/ubuntu-18.04/hosts.json","tests/fixtures/ubuntu-18.04/hosts.out","tests/test_hosts.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/hosts.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/hosts.out","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/hosts.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/hosts.out","lines_changed":9},{"name":"tests/test_hosts.py","lines_changed":40}]},"message":"add hosts tests"},{"commit":"ad913b141721655a72a7b2a6ad60037e5acd5f9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":148,"deletions":2,"files":["README.md","docgen.sh","docs/parsers/hosts.md","jc/parsers/hosts.py"],"file_stats":[{"name":"README.md","lines_changed":51},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/hosts.md","lines_changed":96},{"name":"jc/parsers/hosts.py","lines_changed":2}]},"message":"add hosts docs"},{"commit":"7113e5a844fc0304f62f4afe65b5cbc816f75372","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":0,"files":["jc/parsers/hosts.py"],"file_stats":[{"name":"jc/parsers/hosts.py","lines_changed":10}]},"message":"filter out comments at the end of the line"},{"commit":"a3a8369dc0e7227072f595cef1e57d471eff4d2f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":51,"deletions":9,"files":["jc/parsers/hosts.py"],"file_stats":[{"name":"jc/parsers/hosts.py","lines_changed":60}]},"message":"add docs"},{"commit":"64016b8ef049d5d4f02b4371f5cc9632c19bcaa2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["jc/cli.py","jc/parsers/hosts.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/hosts.py","lines_changed":89}]},"message":"add hosts parser"},{"commit":"1cb49d60c84054b0446f299f6b4bab7d102101c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"remove sar and sadf"},{"commit":"c858adfd12144569d0b990a217c5bcd75bd23828","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"remove stat from todo"},{"commit":"08d68327c777dd740d93a1b5fff8cf62f58904c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":8080,"deletions":0,"files":["tests/fixtures/centos-7.7/stat.json","tests/fixtures/centos-7.7/stat.out","tests/fixtures/ubuntu-18.04/stat.json","tests/fixtures/ubuntu-18.04/stat.out","tests/test_stat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/stat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/stat.out","lines_changed":6678},{"name":"tests/fixtures/ubuntu-18.04/stat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/stat.out","lines_changed":1360},{"name":"tests/test_stat.py","lines_changed":40}]},"message":"add stat tests"},{"commit":"0d7c6c5664911af7a41149d51dd6ae05b39d7648","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/parsers/stat.md","jc/parsers/stat.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":8}]},"message":"doc fix and add continue lines"},{"commit":"8bfa41dbf485cb06c928bc00a68727d2ceac21fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":22,"deletions":14,"files":["README.md","docs/parsers/stat.md","jc/parsers/stat.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docs/parsers/stat.md","lines_changed":12},{"name":"jc/parsers/stat.py","lines_changed":20}]},"message":"change values to null if -"},{"commit":"7e2fa48ed4f3fd452082ce06e7306efd38b2d508","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"update changelog"},{"commit":"340635cad5224f2c715bf961956f4b9b6119d80b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":408,"deletions":111,"files":["docgen.sh","docs/parsers/ss.md","docs/parsers/stat.md"],"file_stats":[{"name":"docgen.sh","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":363},{"name":"docs/parsers/stat.md","lines_changed":154}]},"message":"fix stats doc"},{"commit":"8f77d1de098f035767d73a6965a695b95b75e161","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":111,"deletions":253,"files":["docgen.sh","docs/parsers/ss.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ss.md","lines_changed":363}]},"message":"add stat docs"},{"commit":"7dcf1b25ffb801375f0bf4263f34713ded904de9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":0,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":13}]},"message":"add link_to field"},{"commit":"9b735381063a1167a6a74864a43b81aefd98009f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":2}]},"message":"set compatibility to linux only"},{"commit":"3bf8c8c6dbdf7e03e26b4581e35c3274084c07ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":27,"deletions":27,"files":["jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/mount.py","lines_changed":6},{"name":"jc/parsers/netstat.py","lines_changed":8},{"name":"jc/parsers/ps.py","lines_changed":8},{"name":"jc/parsers/route.py","lines_changed":8},{"name":"jc/parsers/uname.py","lines_changed":8},{"name":"jc/parsers/uptime.py","lines_changed":8},{"name":"jc/parsers/w.py","lines_changed":8}]},"message":"pep8 fixes"},{"commit":"04a1ff2ca7873d55cdbc831e521f3d4892074d98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":28,"deletions":28,"files":["jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":8},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":6},{"name":"jc/parsers/jobs.py","lines_changed":6},{"name":"jc/parsers/ls.py","lines_changed":8},{"name":"jc/parsers/lsblk.py","lines_changed":10},{"name":"jc/parsers/lsmod.py","lines_changed":8},{"name":"jc/parsers/lsof.py","lines_changed":8}]},"message":"pep8 fixes"},{"commit":"64647d230ac936cb43864481ae0f45d13707d7b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":21,"deletions":21,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":8},{"name":"jc/parsers/dig.py","lines_changed":8},{"name":"jc/parsers/env.py","lines_changed":8},{"name":"jc/parsers/foo.py","lines_changed":8},{"name":"jc/parsers/free.py","lines_changed":6}]},"message":"pep8 cleanup"},{"commit":"c2a67e1b70f33044aecabd8b46018117cb38cb9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":213,"deletions":16,"files":["README.md","jc/parsers/stat.py"],"file_stats":[{"name":"README.md","lines_changed":48},{"name":"jc/parsers/stat.py","lines_changed":181}]},"message":"add stat parser"},{"commit":"edb9a7c76e1fedaf37b6a226ad4e1cfc08a9a5ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":94,"deletions":0,"files":["jc/cli.py","jc/parsers/stat.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/stat.py","lines_changed":91}]},"message":"add stat parser"},{"commit":"a407f5b67833cc5f8dda9fe8265cd34e62f28d14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"minor update"},{"commit":"e5b4987acb70e854d9996350235c5535b4a46b69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"doc update"},{"commit":"ba8cc18eebe779742cff0ba4c8bebe376e787c8c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":405,"deletions":0,"files":["tests/fixtures/centos-7.7/ss-sudo-a.json","tests/fixtures/centos-7.7/ss-sudo-a.out","tests/fixtures/ubuntu-18.04/ss-sudo-a.json","tests/fixtures/ubuntu-18.04/ss-sudo-a.out","tests/test_ss.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ss-sudo-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ss-sudo-a.out","lines_changed":204},{"name":"tests/fixtures/ubuntu-18.04/ss-sudo-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ss-sudo-a.out","lines_changed":159},{"name":"tests/test_ss.py","lines_changed":40}]},"message":"add ss tests"},{"commit":"d2c7316e00b9aaf19231c05351821041458baf98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"update command options info"},{"commit":"609aa14d243206e81ed31f8438c3f42e8263e140","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/ss.md","jc/parsers/ss.py"],"file_stats":[{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2}]},"message":"spelling fix"},{"commit":"ef1ad4c700fcb740b5fbe1e12205b9a30ae427ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["docs/parsers/ss.md","jc/parsers/ss.py"],"file_stats":[{"name":"docs/parsers/ss.md","lines_changed":3},{"name":"jc/parsers/ss.py","lines_changed":3}]},"message":"doc update"},{"commit":"a0e2732152dc3005914b9a3e4f03e937a113c67f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":64,"deletions":12,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":76}]},"message":"add ss example"},{"commit":"9b5d3e3be1ac07813e716f8426fe89cced478221","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":135,"deletions":25,"files":["docs/parsers/ss.md"],"file_stats":[{"name":"docs/parsers/ss.md","lines_changed":160}]},"message":"update doc"},{"commit":"2663ef31fbc1b69b89b8032640a25065cc953866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":159,"deletions":30,"files":["jc/parsers/ss.py"],"file_stats":[{"name":"jc/parsers/ss.py","lines_changed":189}]},"message":"fix field names per ss documentation"},{"commit":"a4cdd3378e6a031f16dd371ed5cd60ff018feb32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":6}]},"message":"add compatibility info"},{"commit":"2f805da24d0e833e3d2a1f3a5ec34031fa911c05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":45,"insertions":51,"deletions":51,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/utils.md","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/utils.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":8},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":8}]},"message":"add colon to parameter in docs"},{"commit":"79152a946d93e4facf9711bfa0f421e1978e0f1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":3}]},"message":"initialize network_list and socket_list variables"},{"commit":"de37bb37d01b397df2b5992b4acd64817380401d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":187,"deletions":1,"files":["docgen.sh","docs/parsers/ss.md","jc/parsers/ss.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ss.md","lines_changed":184},{"name":"jc/parsers/ss.py","lines_changed":3}]},"message":"add ss docs"},{"commit":"f783e44e5c0cd05733da5d24573f06d05760f993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"changelog.txt","lines_changed":1}]},"message":"doc fix"},{"commit":"af82f2c991ac0668485e75ae78a26b9553ec8b13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update raw format note"},{"commit":"46774daf9d3e0612df8f79d4b6b724e612ceb725","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":194,"deletions":4,"files":["README.md","jc/parsers/ss.py"],"file_stats":[{"name":"README.md","lines_changed":68},{"name":"jc/parsers/ss.py","lines_changed":130}]},"message":"doc update"},{"commit":"648306b7856fe2e296ce463ff4c9c2a8632c92d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":44,"deletions":22,"files":["jc/parsers/ss.py"],"file_stats":[{"name":"jc/parsers/ss.py","lines_changed":66}]},"message":"process ss data"},{"commit":"b7a4f205b80c0a6a41aaabf59703525ac526c295","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":17,"deletions":14,"files":["jc/parsers/ss.py"],"file_stats":[{"name":"jc/parsers/ss.py","lines_changed":31}]},"message":"parser fixes"},{"commit":"fdb168b43a69358a97bf43b71a0adbc7b1ef56f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":120,"deletions":0,"files":["jc/cli.py","jc/parsers/ss.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/ss.py","lines_changed":117}]},"message":"add ss parser"},{"commit":"b6f65c93c462856f26201df0cbfe804b29a65169","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":43,"deletions":69,"files":["README.md","docs/parsers/ps.md","jc/parsers/ps.py"],"file_stats":[{"name":"README.md","lines_changed":26},{"name":"docs/parsers/ps.md","lines_changed":43},{"name":"jc/parsers/ps.py","lines_changed":43}]},"message":"ps doc update"},{"commit":"3f4838f17a81969718d9e5b6bafa21e0b92e1d95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":6,"files":["docgen.sh","docs/cli.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/cli.md","lines_changed":5}]},"message":"remove cli.md"},{"commit":"eef0dee2aa206716d9cf011bec58a06c46bbee15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":0,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":4},{"name":"jc/utils.py","lines_changed":4}]},"message":"doc update"},{"commit":"e17388d3b2d1521d963bf9dd9e7a4ba5ba9bb09d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":44,"deletions":4,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":22},{"name":"jc/utils.py","lines_changed":26}]},"message":"doc update"},{"commit":"7e6a1bc719b7160ba70cd326ff6aa182993a7380","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":41,"deletions":63,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":51},{"name":"jc/__init__.py","lines_changed":53}]},"message":"doc update"},{"commit":"37738a2ea2f15af847e4b8383aba911e2020a3e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update contributions"},{"commit":"c5834a57db8957723a1425b9db46c433e28a3af1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":14}]},"message":"add todo section"},{"commit":"91b9373f380e06f91888811edbfb21747ff08810","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":417,"deletions":673,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1090}]},"message":"new examples"},{"commit":"ce0bb5b816eed0c75542ead474c3dcb8401be2d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting fix"},{"commit":"f330ff0eff00586f46d18497f2441e94b6430e91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":12}]},"message":"wrap example text"},{"commit":"4b02700414660b90518311485761870402368625","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":20,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":29}]},"message":"update simple examples"},{"commit":"ee30180376b7acec46314bbc483866bff41c362a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"fix note"},{"commit":"338e0ff15c7fac84475c1ed107e6a23e7a009b1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add schema note"},{"commit":"3ac75305dfa33429646bb5d415567034cccfeee3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":39,"insertions":351,"deletions":39,"files":["docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/df.md","lines_changed":10},{"name":"docs/parsers/dig.md","lines_changed":10},{"name":"docs/parsers/env.md","lines_changed":10},{"name":"docs/parsers/free.md","lines_changed":10},{"name":"docs/parsers/history.md","lines_changed":10},{"name":"docs/parsers/ifconfig.md","lines_changed":10},{"name":"docs/parsers/iptables.md","lines_changed":10},{"name":"docs/parsers/jobs.md","lines_changed":10},{"name":"docs/parsers/ls.md","lines_changed":10},{"name":"docs/parsers/lsblk.md","lines_changed":10},{"name":"docs/parsers/lsmod.md","lines_changed":10},{"name":"docs/parsers/lsof.md","lines_changed":10},{"name":"docs/parsers/mount.md","lines_changed":10},{"name":"docs/parsers/netstat.md","lines_changed":10},{"name":"docs/parsers/ps.md","lines_changed":10},{"name":"docs/parsers/route.md","lines_changed":10},{"name":"docs/parsers/uname.md","lines_changed":10},{"name":"docs/parsers/uptime.md","lines_changed":10},{"name":"docs/parsers/w.md","lines_changed":10},{"name":"jc/parsers/df.py","lines_changed":10},{"name":"jc/parsers/dig.py","lines_changed":10},{"name":"jc/parsers/env.py","lines_changed":10},{"name":"jc/parsers/foo.py","lines_changed":10},{"name":"jc/parsers/free.py","lines_changed":10},{"name":"jc/parsers/history.py","lines_changed":10},{"name":"jc/parsers/ifconfig.py","lines_changed":10},{"name":"jc/parsers/iptables.py","lines_changed":10},{"name":"jc/parsers/jobs.py","lines_changed":10},{"name":"jc/parsers/ls.py","lines_changed":10},{"name":"jc/parsers/lsblk.py","lines_changed":10},{"name":"jc/parsers/lsmod.py","lines_changed":10},{"name":"jc/parsers/lsof.py","lines_changed":10},{"name":"jc/parsers/mount.py","lines_changed":10},{"name":"jc/parsers/netstat.py","lines_changed":10},{"name":"jc/parsers/ps.py","lines_changed":10},{"name":"jc/parsers/route.py","lines_changed":10},{"name":"jc/parsers/uname.py","lines_changed":10},{"name":"jc/parsers/uptime.py","lines_changed":10},{"name":"jc/parsers/w.py","lines_changed":10}]},"message":"update process() doc"},{"commit":"3bdcf44afb708cf6a716a0847b119f895602c23e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":18,"deletions":2,"files":["docs/parsers/arp.md","jc/parsers/arp.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":10},{"name":"jc/parsers/arp.py","lines_changed":10}]},"message":"doc update"},{"commit":"e3f4ffede56fe48c0a282a021ac5cdfd7a8abee9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":20,"insertions":172,"deletions":77,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":13},{"name":"docs/parsers/dig.md","lines_changed":13},{"name":"docs/parsers/env.md","lines_changed":13},{"name":"docs/parsers/free.md","lines_changed":13},{"name":"docs/parsers/history.md","lines_changed":13},{"name":"docs/parsers/ifconfig.md","lines_changed":13},{"name":"docs/parsers/iptables.md","lines_changed":13},{"name":"docs/parsers/jobs.md","lines_changed":13},{"name":"docs/parsers/ls.md","lines_changed":13},{"name":"docs/parsers/lsblk.md","lines_changed":13},{"name":"docs/parsers/lsmod.md","lines_changed":13},{"name":"docs/parsers/lsof.md","lines_changed":13},{"name":"docs/parsers/mount.md","lines_changed":13},{"name":"docs/parsers/netstat.md","lines_changed":13},{"name":"docs/parsers/ps.md","lines_changed":13},{"name":"docs/parsers/route.md","lines_changed":13},{"name":"docs/parsers/uname.md","lines_changed":13},{"name":"docs/parsers/uptime.md","lines_changed":13},{"name":"docs/parsers/w.md","lines_changed":13}]},"message":"doc update"},{"commit":"f0c8725d4355113f7690f20bb99078e488084ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":181,"deletions":81,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":13},{"name":"jc/parsers/dig.py","lines_changed":13},{"name":"jc/parsers/env.py","lines_changed":13},{"name":"jc/parsers/foo.py","lines_changed":13},{"name":"jc/parsers/free.py","lines_changed":13},{"name":"jc/parsers/history.py","lines_changed":13},{"name":"jc/parsers/ifconfig.py","lines_changed":13},{"name":"jc/parsers/iptables.py","lines_changed":13},{"name":"jc/parsers/jobs.py","lines_changed":13},{"name":"jc/parsers/ls.py","lines_changed":13},{"name":"jc/parsers/lsblk.py","lines_changed":13},{"name":"jc/parsers/lsmod.py","lines_changed":13},{"name":"jc/parsers/lsof.py","lines_changed":13},{"name":"jc/parsers/mount.py","lines_changed":13},{"name":"jc/parsers/netstat.py","lines_changed":13},{"name":"jc/parsers/ps.py","lines_changed":13},{"name":"jc/parsers/route.py","lines_changed":13},{"name":"jc/parsers/uname.py","lines_changed":13},{"name":"jc/parsers/uptime.py","lines_changed":13},{"name":"jc/parsers/w.py","lines_changed":13}]},"message":"doc update"},{"commit":"5473bc4eb697d00bd26a038287e1137e438cacb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":16,"deletions":6,"files":["docs/parsers/arp.md","jc/parsers/arp.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":11},{"name":"jc/parsers/arp.py","lines_changed":11}]},"message":"doc update"},{"commit":"b9bd9422bfa46144416fa65add2e041d4124357b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":380,"deletions":46,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":213},{"name":"jc/parsers/dig.py","lines_changed":213}]},"message":"doc update"},{"commit":"cb5729a070925a7fa29f762bd4b074532f5cba55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":62,"deletions":44,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":106}]},"message":"add options to docs"},{"commit":"f0b1ab42337746afd37365abdf44729d530d5410","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":1},{"name":"jc/utils.py","lines_changed":1}]},"message":"doc update"},{"commit":"b15386e849b9fea347e7b17307eedf779d8022fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":11,"deletions":5,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":7},{"name":"jc/utils.py","lines_changed":9}]},"message":"doc update"},{"commit":"d2a2c8da35ee44e9a7572885609548eb809bcdda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":5,"files":["docs/parsers/iptables.md","docs/parsers/mount.md","docs/parsers/uname.md"],"file_stats":[{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2}]},"message":"doc updates"},{"commit":"7251548cbb09beae6971385a56036e9649bd9b2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":5,"files":["jc/parsers/iptables.py","jc/parsers/mount.py","jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":3},{"name":"jc/parsers/uname.py","lines_changed":3}]},"message":"documentation updates"},{"commit":"146e29f7cbc0f396be67dbd7ae971a4ef4dafb7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":47,"insertions":5386,"deletions":2249,"files":["docgen.sh","docs/cli.md","docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/readme.md","docs/utils.md","jc/__init__.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/utils.py"],"file_stats":[{"name":"docgen.sh","lines_changed":27},{"name":"docs/cli.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":110},{"name":"docs/parsers/df.md","lines_changed":97},{"name":"docs/parsers/dig.md","lines_changed":212},{"name":"docs/parsers/env.md","lines_changed":72},{"name":"docs/parsers/free.md","lines_changed":77},{"name":"docs/parsers/history.md","lines_changed":64},{"name":"docs/parsers/ifconfig.md","lines_changed":170},{"name":"docs/parsers/iptables.md","lines_changed":168},{"name":"docs/parsers/jobs.md","lines_changed":98},{"name":"docs/parsers/ls.md","lines_changed":168},{"name":"docs/parsers/lsblk.md","lines_changed":273},{"name":"docs/parsers/lsmod.md","lines_changed":130},{"name":"docs/parsers/lsof.md","lines_changed":124},{"name":"docs/parsers/mount.md","lines_changed":82},{"name":"docs/parsers/netstat.md","lines_changed":352},{"name":"docs/parsers/ps.md","lines_changed":223},{"name":"docs/parsers/route.md","lines_changed":129},{"name":"docs/parsers/uname.md","lines_changed":55},{"name":"docs/parsers/uptime.md","lines_changed":56},{"name":"docs/parsers/w.md","lines_changed":108},{"name":"docs/readme.md","lines_changed":79},{"name":"docs/utils.md","lines_changed":22},{"name":"jc/__init__.py","lines_changed":135},{"name":"jc/parsers/arp.py","lines_changed":176},{"name":"jc/parsers/df.py","lines_changed":129},{"name":"jc/parsers/dig.py","lines_changed":362},{"name":"jc/parsers/env.py","lines_changed":101},{"name":"jc/parsers/foo.py","lines_changed":37},{"name":"jc/parsers/free.py","lines_changed":111},{"name":"jc/parsers/history.py","lines_changed":85},{"name":"jc/parsers/ifconfig.py","lines_changed":294},{"name":"jc/parsers/iptables.py","lines_changed":271},{"name":"jc/parsers/jobs.py","lines_changed":150},{"name":"jc/parsers/ls.py","lines_changed":280},{"name":"jc/parsers/lsblk.py","lines_changed":499},{"name":"jc/parsers/lsmod.py","lines_changed":211},{"name":"jc/parsers/lsof.py","lines_changed":205},{"name":"jc/parsers/mount.py","lines_changed":115},{"name":"jc/parsers/netstat.py","lines_changed":661},{"name":"jc/parsers/ps.py","lines_changed":389},{"name":"jc/parsers/route.py","lines_changed":213},{"name":"jc/parsers/uname.py","lines_changed":57},{"name":"jc/parsers/uptime.py","lines_changed":69},{"name":"jc/parsers/w.py","lines_changed":173},{"name":"jc/utils.py","lines_changed":11}]},"message":"update docs"},{"commit":"363fd3eab409351121dab8a11c6b565829ccd84a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"move parser_name to except block"},{"commit":"4083dd4260ff3a8bb6649e1661cf3e058fdbad59","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":24,"deletions":5,"files":["changelog.txt","jc/cli.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/cli.py","lines_changed":28}]},"message":"add -d option"},{"commit":"b2b74547baaf33058d74fc08cb665777b19bd05a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":317,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-sudo-aeep.json","tests/fixtures/centos-7.7/netstat-sudo-aeep.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.json","tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.out","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/netstat-sudo-aeep.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-sudo-aeep.out","lines_changed":164},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.out","lines_changed":126},{"name":"tests/test_netstat.py","lines_changed":24}]},"message":"add netstat-sudo-aeep tests"},{"commit":"dddb0baabf8a78261ac80380b97e7c92c7ce4d89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":8}]},"message":"use \\u2063 instead of \\u2026"},{"commit":"84b4f67ef9d4bb0db201a095d74400a56394589d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["tests/fixtures/centos-7.7/ps-axu.json","tests/fixtures/ubuntu-18.04/ps-axu.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ps-axu.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ps-axu.json","lines_changed":2}]},"message":"new json output"},{"commit":"3a089138b8c269ba3c5f7aec87ae3f8ec368c3ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":129,"deletions":9,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":138}]},"message":"add int and float changes"},{"commit":"3ff0305c8e62ce3b5a8f3f9174c5a9da3bc22766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":54,"deletions":2,"files":["tests/fixtures/centos-7.7/lsblk-allcols.json","tests/fixtures/centos-7.7/lsblk-allcols.out","tests/fixtures/centos-7.7/lsblk.json","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/lsblk-allcols.json","tests/fixtures/ubuntu-18.04/lsblk-allcols.out","tests/fixtures/ubuntu-18.04/lsblk.json","tests/test_lsblk.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/lsblk-allcols.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsblk-allcols.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/lsblk.json","lines_changed":2},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsblk-allcols.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsblk-allcols.out","lines_changed":18},{"name":"tests/fixtures/ubuntu-18.04/lsblk.json","lines_changed":2},{"name":"tests/test_lsblk.py","lines_changed":24}]},"message":"add lsblk tests"},{"commit":"761edc3c6cfc215fe45c65ee2bb5462cb460b6a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":6,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":7}]},"message":"remove unused parse_pairs function"},{"commit":"3351c81f647ac97a5038cc0c14adb31e55832a77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":200,"deletions":2,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":202}]},"message":"add documentation"},{"commit":"3dfc6f67d770c59804bdeb371d5c78e3f3668f9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":6}]},"message":"change empty values to Null"},{"commit":"1546ec3bd139ef687282f60786388b5207541c98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":17,"deletions":13,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":30}]},"message":"fixes for right justified columns"},{"commit":"2a953011f72e922c89b9af6dfebd1983da7c338d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":50,"deletions":155,"files":["changelog.txt","jc/parsers/lsblk.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":203}]},"message":"rewrite of lsblk parser to use a custom delimiter"},{"commit":"d2f755de9d2be7b0af5f010042e1f4ca589c5464","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":14,"insertions":250,"deletions":566,"files":["tests/test_ifconfig.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_ls.py","tests/test_lsblk.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_ps.py","tests/test_route.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py"],"file_stats":[{"name":"tests/test_ifconfig.py","lines_changed":59},{"name":"tests/test_iptables.py","lines_changed":249},{"name":"tests/test_jobs.py","lines_changed":19},{"name":"tests/test_ls.py","lines_changed":58},{"name":"tests/test_lsblk.py","lines_changed":25},{"name":"tests/test_lsmod.py","lines_changed":22},{"name":"tests/test_lsof.py","lines_changed":59},{"name":"tests/test_mount.py","lines_changed":30},{"name":"tests/test_netstat.py","lines_changed":110},{"name":"tests/test_ps.py","lines_changed":57},{"name":"tests/test_route.py","lines_changed":51},{"name":"tests/test_uname.py","lines_changed":27},{"name":"tests/test_uptime.py","lines_changed":23},{"name":"tests/test_w.py","lines_changed":27}]},"message":"updates tests"},{"commit":"f363334639c5fa3a43889794ea52409056a2d886","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":87,"deletions":219,"files":["tests/test_df.py","tests/test_dig.py","tests/test_env.py","tests/test_free.py","tests/test_history.py"],"file_stats":[{"name":"tests/test_df.py","lines_changed":43},{"name":"tests/test_dig.py","lines_changed":196},{"name":"tests/test_env.py","lines_changed":13},{"name":"tests/test_free.py","lines_changed":41},{"name":"tests/test_history.py","lines_changed":13}]},"message":"update tests"},{"commit":"750197e48596ad96804477053d3ff3c8063ea68a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":70,"files":["tests/test_arp.py"],"file_stats":[{"name":"tests/test_arp.py","lines_changed":97}]},"message":"new tests"},{"commit":"36b349e4ed39fe611c7d87a47c378cc4d4627ad2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":76,"insertions":76,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-a.json","tests/fixtures/centos-7.7/arp-v.json","tests/fixtures/centos-7.7/arp.json","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/df.json","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/centos-7.7/env.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/centos-7.7/free.json","tests/fixtures/centos-7.7/history.json","tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/centos-7.7/iptables-filter-nv.json","tests/fixtures/centos-7.7/iptables-filter.json","tests/fixtures/centos-7.7/iptables-mangle.json","tests/fixtures/centos-7.7/iptables-nat.json","tests/fixtures/centos-7.7/iptables-raw.json","tests/fixtures/centos-7.7/jobs.json","tests/fixtures/centos-7.7/ls-al.json","tests/fixtures/centos-7.7/ls-alh.json","tests/fixtures/centos-7.7/ls.json","tests/fixtures/centos-7.7/lsblk.json","tests/fixtures/centos-7.7/lsmod.json","tests/fixtures/centos-7.7/lsof-sudo.json","tests/fixtures/centos-7.7/lsof.json","tests/fixtures/centos-7.7/mount.json","tests/fixtures/centos-7.7/netstat-l.json","tests/fixtures/centos-7.7/netstat-p.json","tests/fixtures/centos-7.7/netstat-sudo-lnp.json","tests/fixtures/centos-7.7/netstat.json","tests/fixtures/centos-7.7/ps-axu.json","tests/fixtures/centos-7.7/ps-ef.json","tests/fixtures/centos-7.7/route-vn.json","tests/fixtures/centos-7.7/route.json","tests/fixtures/centos-7.7/uname-a.json","tests/fixtures/centos-7.7/uptime.json","tests/fixtures/centos-7.7/w.json","tests/fixtures/ubuntu-18.04/arp-a.json","tests/fixtures/ubuntu-18.04/arp-v.json","tests/fixtures/ubuntu-18.04/arp.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/df.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json","tests/fixtures/ubuntu-18.04/env.json","tests/fixtures/ubuntu-18.04/free-h.json","tests/fixtures/ubuntu-18.04/free.json","tests/fixtures/ubuntu-18.04/history.json","tests/fixtures/ubuntu-18.04/ifconfig.json","tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","tests/fixtures/ubuntu-18.04/iptables-filter.json","tests/fixtures/ubuntu-18.04/iptables-mangle.json","tests/fixtures/ubuntu-18.04/iptables-nat.json","tests/fixtures/ubuntu-18.04/iptables-raw.json","tests/fixtures/ubuntu-18.04/jobs.json","tests/fixtures/ubuntu-18.04/ls-al.json","tests/fixtures/ubuntu-18.04/ls-alh.json","tests/fixtures/ubuntu-18.04/ls.json","tests/fixtures/ubuntu-18.04/lsblk.json","tests/fixtures/ubuntu-18.04/lsmod.json","tests/fixtures/ubuntu-18.04/lsof-sudo.json","tests/fixtures/ubuntu-18.04/lsof.json","tests/fixtures/ubuntu-18.04/mount.json","tests/fixtures/ubuntu-18.04/netstat-l.json","tests/fixtures/ubuntu-18.04/netstat-p.json","tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.json","tests/fixtures/ubuntu-18.04/netstat.json","tests/fixtures/ubuntu-18.04/ps-axu.json","tests/fixtures/ubuntu-18.04/ps-ef.json","tests/fixtures/ubuntu-18.04/route-vn.json","tests/fixtures/ubuntu-18.04/route.json","tests/fixtures/ubuntu-18.04/uname-a.json","tests/fixtures/ubuntu-18.04/uptime.json","tests/fixtures/ubuntu-18.04/w.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/arp-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/arp-v.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/arp.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/df-h.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/df.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/dig-aaaa.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/dig-x.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/dig.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/env.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/free-h.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/free.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/history.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ifconfig.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-filter-nv.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-filter.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-mangle.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-nat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-raw.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/jobs.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-al.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-alh.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsblk.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsmod.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsof-sudo.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsof.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mount.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-l.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-sudo-lnp.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ps-axu.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ps-ef.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/route-vn.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/route.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/uname-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/uptime.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/w.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/arp-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/arp-v.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/arp.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/df-h.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/df.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dig-aaaa.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dig-x.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dig.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/env.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/free-h.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/free.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/history.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ifconfig.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-mangle.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-nat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-raw.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/jobs.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-al.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-alh.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsblk.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsmod.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsof-sudo.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsof.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/mount.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-l.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ps-axu.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ps-ef.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/route-vn.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/route.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/uname-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/uptime.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/w.json","lines_changed":1}]},"message":"json output files"},{"commit":"b5f1e94fe2859c4fbcf126f8f8fb20d71a9b6433","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":1}]},"message":"fix for space before '-' in program_name"},{"commit":"6a504fb0e10b1ef551ed9fe780926fe5ca02d267","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2}]},"message":"add exception type"},{"commit":"e02bad2240bacbc31097d931a902a34217d559db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":123,"deletions":175,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":298}]},"message":"update documentation"},{"commit":"1d4043a3b64c38a20a0db065c3bdc3c6a2d068bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":52,"deletions":0,"files":["jc/parsers/foo.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":52}]},"message":"add template parser"},{"commit":"039e034829789ca314a00abd4f1d9ad06f1a6eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":6,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":25}]},"message":"fix parsing issues in program_name when spaces are in the name"},{"commit":"d828de4f4f2f4c3d582fddee79830d12511c3299","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":53,"deletions":9,"files":["jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/w.py","lines_changed":62}]},"message":"update documentation"},{"commit":"098000bb10a3f5ed33d285c6ba4f0dfb9a013fdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":24,"deletions":9,"files":["changelog.txt","jc/parsers/w.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/w.py","lines_changed":32}]},"message":"fix blank 'from' column issue"},{"commit":"b41165eff5cd7371e852cd33e084a919524ead9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":31,"deletions":1,"files":["jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/w.py","lines_changed":32}]},"message":"process w data"},{"commit":"6ad7891b2b34fae1a366568e4eba86e886a6dd84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":59,"deletions":14,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":73}]},"message":"process uptime data"},{"commit":"72138315598cd405bc0508b554108bf3f730dcb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":31,"deletions":10,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":41}]},"message":"add process boilerplate"},{"commit":"10eedd82e4c4678fbf989fe599d7ca75deced5a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]},"message":"changelog update"},{"commit":"a55493da0f1457a46f29511e0835adfa9d748f7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":93,"deletions":6,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":99}]},"message":"process route data"},{"commit":"89973f4162317693b0d094a64115ee87d8479d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":45,"deletions":27,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":72}]},"message":"doc updates and tty fix"},{"commit":"4802222ad50d55372f2b883d83a61181086b0619","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":11}]},"message":"process ps data"},{"commit":"bcd28f06f87a4260d1787399d723817afd6aee90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":1,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":24}]},"message":"prep ps for process"},{"commit":"e17a47a7fa7f4c1bb4c4b55fb004963fc1b61434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":2}]},"message":"fix typo"},{"commit":"cad2e16c7aa54a70f476bf4268ff8e5985cff468","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":353,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":354}]},"message":"document examples"},{"commit":"5da5d278dac77bd4aa21819194e7f9e178bd1887","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":0,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":23}]},"message":"process netstat data"},{"commit":"81b6776e57c113cbfb8346d1cfd83532a440c257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":177,"files":["jc/parsers/netstat.py.old"],"file_stats":[{"name":"jc/parsers/netstat.py.old","lines_changed":177}]},"message":"remove old netstat parser"},{"commit":"5ecb6bd58b4ed91f63e4a0b5939378bd9925b7b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":3,"files":["changelog.txt","jc/parsers/netstat.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":3}]},"message":"doc updates"},{"commit":"21b56096c57cfcf5c55fdf5f9bab88b6d5c7dd73","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":37}]},"message":"finalize parse_post"},{"commit":"8c78f959731a25a05ee6361a14853c92f8fce69b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":8}]},"message":"clean up trailing spaces on entries"},{"commit":"94a88bb5669d9a9a5dff085a4c4111bdd39df8f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":35,"deletions":17,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":52}]},"message":"post_parse flags and program_name"},{"commit":"579124475b0b517b36ddbe5bdb13be14807dea1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"simplify parser_map code"},{"commit":"5da83e020015eb5559d216bc3f39b3854e76adf3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"fix found variable error"},{"commit":"a90a76d004b923edece07a52a3aa400a9ef4b005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":177,"deletions":140,"files":["jc/parsers/netstat.py.old","jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/netstat.py.old","lines_changed":177},{"name":"jc/parsers/netstat2.py","lines_changed":140}]},"message":"move out old netstat parser"},{"commit":"bdfa95912398b2630fcb13e866f4013747fd0975","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":20,"insertions":209,"deletions":212,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":10},{"name":"jc/parsers/env.py","lines_changed":10},{"name":"jc/parsers/free.py","lines_changed":10},{"name":"jc/parsers/history.py","lines_changed":8},{"name":"jc/parsers/ifconfig.py","lines_changed":10},{"name":"jc/parsers/iptables.py","lines_changed":10},{"name":"jc/parsers/jobs.py","lines_changed":10},{"name":"jc/parsers/ls.py","lines_changed":10},{"name":"jc/parsers/lsblk.py","lines_changed":10},{"name":"jc/parsers/lsmod.py","lines_changed":10},{"name":"jc/parsers/lsof.py","lines_changed":10},{"name":"jc/parsers/mount.py","lines_changed":10},{"name":"jc/parsers/netstat.py","lines_changed":245},{"name":"jc/parsers/ps.py","lines_changed":10},{"name":"jc/parsers/route.py","lines_changed":10},{"name":"jc/parsers/uname.py","lines_changed":10},{"name":"jc/parsers/uptime.py","lines_changed":10},{"name":"jc/parsers/w.py","lines_changed":10}]},"message":"fix compatibility code"},{"commit":"4380594275bc863e81839a6a7b032a6ff0cbb9b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":46,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":54}]},"message":"remove cli functions from utils"},{"commit":"88bf252c0df3c583640286880d7992e4399e23f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":139,"deletions":128,"files":["jc/cli.py","jc/jc.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":139},{"name":"jc/jc.py","lines_changed":128}]},"message":"rename jc.py to cli.py"},{"commit":"a5efd8adce77fca7e3343f8f518c7bad578fdb4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"rename jc.py to cli.py"},{"commit":"2ee392eefffde77ebdf83f5e4e0c43cf8c1a7d6e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/netstat2.py","lines_changed":10}]},"message":"add quiet mode"},{"commit":"9c1d893e16ea17b16bec5fd0ec8839c4fe6f0590","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":102,"deletions":90,"files":["jc/jc.py","jc/parsers/arp.py","jc/parsers/df.py","jc/utils.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":107},{"name":"jc/parsers/arp.py","lines_changed":10},{"name":"jc/parsers/df.py","lines_changed":10},{"name":"jc/utils.py","lines_changed":65}]},"message":"move utils to own module and add quiet mode"},{"commit":"88dcb90c83b757285661c72429c5b60bb1ead94a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":6}]},"message":"changelog update"},{"commit":"a3bcabc89c1f74d067da0046492dbc56e50b1005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":62,"files":["jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/netstat2.py","lines_changed":71}]},"message":"mvp of netstat raw_data parser"},{"commit":"dafbf9fdcf53a8abbd006baef0be6697f860d2a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":247,"deletions":53,"files":["jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/lsmod.py","lines_changed":85},{"name":"jc/parsers/lsof.py","lines_changed":106},{"name":"jc/parsers/mount.py","lines_changed":31},{"name":"jc/parsers/netstat2.py","lines_changed":78}]},"message":"process lsmod data"},{"commit":"680cb2b2caa82e1e2c3225b3c44cae2ba03ba02c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":76,"deletions":7,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":83}]},"message":"doc update"},{"commit":"54818a06e0e0b981810f6aec45c308da81a9e2ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":8}]},"message":"change bool variable names"},{"commit":"88f4c5b5a93da3938b84f97abfc54539ee19ac48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":10,"deletions":10,"files":["jc/parsers/dig.py","jc/parsers/free.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":8},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":4},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"remove TypeError from exception check"},{"commit":"2bb7409887e8b7659613189daf58d02cb26bd6ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":36,"deletions":11,"files":["jc/parsers/df.py","jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/lsblk.py","lines_changed":42}]},"message":"process lsblk data"},{"commit":"c780aac3aba02cc042c6a3c984af198069956370","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":22,"insertions":91,"deletions":5,"files":["jc/jc.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat2.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":8},{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/df.py","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":5},{"name":"jc/parsers/env.py","lines_changed":5},{"name":"jc/parsers/free.py","lines_changed":4},{"name":"jc/parsers/history.py","lines_changed":5},{"name":"jc/parsers/ifconfig.py","lines_changed":5},{"name":"jc/parsers/iptables.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"jc/parsers/lsblk.py","lines_changed":1},{"name":"jc/parsers/lsmod.py","lines_changed":4},{"name":"jc/parsers/lsof.py","lines_changed":5},{"name":"jc/parsers/mount.py","lines_changed":5},{"name":"jc/parsers/netstat.py","lines_changed":5},{"name":"jc/parsers/netstat2.py","lines_changed":5},{"name":"jc/parsers/ps.py","lines_changed":4},{"name":"jc/parsers/route.py","lines_changed":4},{"name":"jc/parsers/uname.py","lines_changed":5},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/w.py","lines_changed":4}]},"message":"add compatibility function"},{"commit":"5010aaec285e26ae9dbfdb3fcdc38a3bd36cd236","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":2}]},"message":"put exit() back"},{"commit":"066e93cb075021ac94a0e2e6a36a34bc173ee6c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":2}]},"message":"move exit() to errormessage()"},{"commit":"0bd2faa7f71a128babc68afea053159ccb91b702","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":3}]},"message":"beautify compatibility list"},{"commit":"e2f926453ba386736204e358f8306dfc731b5005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["install.sh"],"file_stats":[{"name":"install.sh","lines_changed":2}]},"message":"add install script"},{"commit":"b953b79f9c46d8c5398a6c1c2769167b5aed2805","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":11,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4}]},"message":"add compatibility"},{"commit":"7f9967780692bec2fcbe992eee0c392ab92efb7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":19,"deletions":1,"files":["jc/jc.py","jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":16},{"name":"jc/parsers/lsblk.py","lines_changed":4}]},"message":"compatibility function call"},{"commit":"721b54665924ad1657ee83cd5fca601e03700962","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":8}]},"message":"finish schema"},{"commit":"2de5e41269421c73e07d4abd6ca99b38be736261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":95,"deletions":12,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":107}]},"message":"fix for more columns and build schema"},{"commit":"dfe0f6e99b6174734661fc43d9ad4b1d0dfd96e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":75,"deletions":9,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":84}]},"message":"process ls data"},{"commit":"8873b1bc697c8f9409fa676c88b5ebe109dc8717","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":46,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":70}]},"message":"clean up process code"},{"commit":"9ff94707004fefed475603436fc0a7ffb19e6fee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":4,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":13}]},"message":"refactor helptext() function"},{"commit":"2c58fca53044892e15ceb5e8bcae1afb09fa3269","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":62,"deletions":4,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":66}]},"message":"process jobs data"},{"commit":"9e5cd90da7d92bbadbc0d25071d087a3dbd90a5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":131,"deletions":261,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":392}]},"message":"process iptables data"},{"commit":"7ee0d49424bba5274975d6c33e0721977660692f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":107,"deletions":28,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":135}]},"message":"process ifconfig data"},{"commit":"a9058ee21e87454aa423112239c4f4df7daca8c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":4,"deletions":1,"files":["jc/parsers/arp.py","jc/parsers/dig.py","jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/dig.py","lines_changed":1},{"name":"jc/parsers/free.py","lines_changed":1}]},"message":"doc formatting"},{"commit":"fcf0aac87dccac2ce28e6f55e66e2f0b8f6fbd36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":54,"deletions":10,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":64}]},"message":"add history processing"},{"commit":"daec5f068103aae547509ddacc2be56c84f39f17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":55,"deletions":6,"files":["jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/free.py","lines_changed":61}]},"message":"process free data"},{"commit":"5b2491d5ae72705758944e247fbca83367c0365f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":54,"deletions":5,"files":["jc/parsers/env.py"],"file_stats":[{"name":"jc/parsers/env.py","lines_changed":59}]},"message":"process env data"},{"commit":"d9b41ac73b234f5bf7ff3abfee198092424a1bbd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":4}]},"message":"doc formatting"},{"commit":"7168ffddf8a8dfcdd5bcabd8bf943d6417de407d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":87,"deletions":5,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":92}]},"message":"process dig output"},{"commit":"a855344bec9f60d852de326953436ec76f25cffb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":0,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":13}]},"message":"document schema"},{"commit":"d8b3b59fae924494fbcdfbdf6ad790f5234b0c69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":16}]},"message":"add schema and rename 'avail' to 'available'"},{"commit":"4b7d7840d37be47c1c98c38a6d712e7090e5b68c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"changelog.txt","lines_changed":2}]},"message":"add -r option"},{"commit":"58a094a9b4cab0fcb99581f37a21a450fc3a1aed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update"},{"commit":"65adbb4189ac66de3283adb2af93a1251103f057","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":29,"deletions":7,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":36}]},"message":"doc update"},{"commit":"f7350959c9706486a3aed19a999e5ee756a1240c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":47,"deletions":24,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":71}]},"message":"df fix for changing header names when -h used"},{"commit":"8934a7d832b8e1375f0bbdd71031f37ae42f3929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["jc/parsers/arp.py","jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":6}]},"message":"fix dictionary iteration"},{"commit":"669a424fd6508db91bf5cfa2607033fac85f442c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":4}]},"message":"fix process function"},{"commit":"591a65c2bda26efcdd570a5f147f98a5be0473d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":46,"deletions":2,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":48}]},"message":"process df data"},{"commit":"a78fb890782a64b20c0c1b60afbd915ebdd88535","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":5,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":26}]},"message":"add raw and processed output"},{"commit":"8979dab2a5371fce3a773004c2309e7483e4cd31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":25,"deletions":20,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":45}]},"message":"add raw mode"},{"commit":"0a891f0adda7f2f3233222a0cb5c1f737913ad6f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":1,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"setup.py","lines_changed":2}]},"message":"bump python required version"},{"commit":"c220e35b14237c2cfc38aa661413af83ea13e393","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":34,"deletions":33,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":67}]},"message":"cleanup helptext"},{"commit":"f26c5818bd958c18f4ecc22611b9c058f6213a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":36,"deletions":33,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":69}]},"message":"refactor helptext"},{"commit":"e712cd3fc4cec1b3137c73e199b2d89fd42fb3bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":138,"deletions":0,"files":["jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/netstat2.py","lines_changed":138}]},"message":"netstat2 skeleton"},{"commit":"0309c9ac67c5f65e0a584fd01e8104ef1990fa7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"setup cleanup"},{"commit":"9a9eb4120af7696cd3727ac0f0a014663e62b993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":3}]},"message":"setup updates"},{"commit":"d1927456b02e6c2a6e6395cd6ce873b6565ec37d","merge":"0691cfc a3d9213","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #6 from kellyjonbrazil/dev\n\nDev v1.1.1"},{"commit":"a3d9213a1e2fd52ba2cbc863d4d01d3ffeebe230","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add date"},{"commit":"3365c03a1e709835b4bd6bca023afbcb46912982","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":361,"deletions":0,"files":["tests/test_arp.py","tests/test_dig.py"],"file_stats":[{"name":"tests/test_arp.py","lines_changed":131},{"name":"tests/test_dig.py","lines_changed":230}]},"message":"add tests"},{"commit":"4f6c87389b313b368d9e833feef55fe6daf7aac9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":164,"deletions":1,"files":["tests/fixtures/centos-7.7/dig-aaaa.out","tests/fixtures/centos-7.7/dig-x.out","tests/fixtures/centos-7.7/dig.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/dig-aaaa.out","tests/fixtures/ubuntu-18.04/dig-x.out","tests/fixtures/ubuntu-18.04/dig.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/dig-aaaa.out","lines_changed":20},{"name":"tests/fixtures/centos-7.7/dig-x.out","lines_changed":20},{"name":"tests/fixtures/centos-7.7/dig.out","lines_changed":38},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":6},{"name":"tests/fixtures/ubuntu-18.04/dig-aaaa.out","lines_changed":20},{"name":"tests/fixtures/ubuntu-18.04/dig-x.out","lines_changed":20},{"name":"tests/fixtures/ubuntu-18.04/dig.out","lines_changed":41}]},"message":"add dig test files"},{"commit":"41a2a9adac7d3c29dfa11292f08b0877c69b1a5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":147,"deletions":3,"files":["README.md","jc/parsers/dig.py"],"file_stats":[{"name":"README.md","lines_changed":147},{"name":"jc/parsers/dig.py","lines_changed":3}]},"message":"remove unnecessary if statement"},{"commit":"74dae2905b2b0916f0be9fee2a4a343962760ff6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":143,"deletions":30,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":173}]},"message":"dig parser mvp"},{"commit":"d1f64214de00090c3faae0bf544c6c2602ab8c31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":3,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":22}]},"message":"add authority parsing"},{"commit":"d3e1aa20a815d1d1d6ae82776ae18e3416f0966f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":2}]},"message":"fix when line"},{"commit":"72cae9577756c4355211a19f4dd77aaeb6f8e905","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":47,"deletions":9,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":56}]},"message":"dig fixes"},{"commit":"219bc8130f55f23e3be3abbe56104aefc2f84e86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":155,"deletions":0,"files":["jc/jc.py","jc/parsers/dig.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":150}]},"message":"dig parser skeleton"},{"commit":"e8c1a554c040ad8f9c6b518db5fd58e8345d2181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-a.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/arp-a.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/arp-a.out","lines_changed":3},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/arp-a.out","lines_changed":3}]},"message":"testfile updates"},{"commit":"087a60bc2adf64bfcedc1f264fef328f993b530c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":87,"deletions":5,"files":["README.md","jc/parsers/arp.py"],"file_stats":[{"name":"README.md","lines_changed":33},{"name":"jc/parsers/arp.py","lines_changed":59}]},"message":"documentation updates"},{"commit":"9c9823c3b8737b5de08af6278ca74414138e9263","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":16,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-v.out","tests/fixtures/centos-7.7/arp.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/arp-v.out","tests/fixtures/ubuntu-18.04/arp.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/arp-v.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/arp.out","lines_changed":3},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/arp-v.out","lines_changed":4},{"name":"tests/fixtures/ubuntu-18.04/arp.out","lines_changed":3}]},"message":"add arp testfiles"},{"commit":"cf8d13030bf67261a986c0f80fa20ec0e37a743a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":21}]},"message":"add arp"},{"commit":"1eff69c187ca410ffaec7909bc2532553be1d80c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":17,"deletions":1,"files":["changelog.txt","jc/parsers/arp.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/arp.py","lines_changed":17}]},"message":"add documentation"},{"commit":"b10fb77d714b73a10a9bf28b45269b3530e01cee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":10}]},"message":"fixup arp parser"},{"commit":"87cee8b230a06fa270b2e36afb56f337da814c80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":28,"deletions":1,"files":["jc/jc.py","jc/parsers/arp.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":7},{"name":"jc/parsers/arp.py","lines_changed":22}]},"message":"add arp parser"},{"commit":"83ab10d6282e26391bbf6bae5d0d29e040b209f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":44,"deletions":34,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":78}]},"message":"documentation update"},{"commit":"d58a6e1d1dc93155255922b65b0af1325439b033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":15,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":28}]},"message":"readme update"},{"commit":"cb46ca5c2776a13c673a44d3e0fbd0661b32af9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"readme update"},{"commit":"5528d979f0b45787d68ab79b962371df9acc527b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":6},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"ee94a038a61d60db72046d5bcceec58009decb39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":131,"deletions":0,"files":["tests/test_uname.py","tests/test_uptime.py","tests/test_w.py"],"file_stats":[{"name":"tests/test_uname.py","lines_changed":45},{"name":"tests/test_uptime.py","lines_changed":41},{"name":"tests/test_w.py","lines_changed":45}]},"message":"add tests"},{"commit":"1d658f7a9fc50873f76985b2fb9de92ada9d5547","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":265,"deletions":0,"files":["tests/test_netstat.py","tests/test_ps.py","tests/test_route.py"],"file_stats":[{"name":"tests/test_netstat.py","lines_changed":105},{"name":"tests/test_ps.py","lines_changed":83},{"name":"tests/test_route.py","lines_changed":77}]},"message":"add tests"},{"commit":"392cb44f9b19829a5ceba055e24c7af4d8ac5b3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":80,"insertions":12667,"deletions":0,"files":["runtests.sh","tests/__init__.py","tests/fixtures/centos-7.7/df-h.out","tests/fixtures/centos-7.7/df.out","tests/fixtures/centos-7.7/env.out","tests/fixtures/centos-7.7/free-h.out","tests/fixtures/centos-7.7/free.out","tests/fixtures/centos-7.7/history.out","tests/fixtures/centos-7.7/ifconfig.out","tests/fixtures/centos-7.7/iptables-filter-nv.out","tests/fixtures/centos-7.7/iptables-filter.out","tests/fixtures/centos-7.7/iptables-mangle.out","tests/fixtures/centos-7.7/iptables-nat.out","tests/fixtures/centos-7.7/iptables-raw.out","tests/fixtures/centos-7.7/jobs.out","tests/fixtures/centos-7.7/ls-al.out","tests/fixtures/centos-7.7/ls-alh.out","tests/fixtures/centos-7.7/ls.out","tests/fixtures/centos-7.7/lsblk.out","tests/fixtures/centos-7.7/lsmod.out","tests/fixtures/centos-7.7/lsof-sudo.out","tests/fixtures/centos-7.7/lsof.out","tests/fixtures/centos-7.7/mount.out","tests/fixtures/centos-7.7/netstat-l.out","tests/fixtures/centos-7.7/netstat-p.out","tests/fixtures/centos-7.7/netstat-sudo-lnp.out","tests/fixtures/centos-7.7/netstat.out","tests/fixtures/centos-7.7/ps-axu.out","tests/fixtures/centos-7.7/ps-ef.out","tests/fixtures/centos-7.7/route-vn.out","tests/fixtures/centos-7.7/route.out","tests/fixtures/centos-7.7/uname-a.out","tests/fixtures/centos-7.7/uptime.out","tests/fixtures/centos-7.7/w.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/df-h.out","tests/fixtures/ubuntu-18.04/df.out","tests/fixtures/ubuntu-18.04/env.out","tests/fixtures/ubuntu-18.04/free-h.out","tests/fixtures/ubuntu-18.04/free.out","tests/fixtures/ubuntu-18.04/history.out","tests/fixtures/ubuntu-18.04/ifconfig.out","tests/fixtures/ubuntu-18.04/iptables-filter-nv.out","tests/fixtures/ubuntu-18.04/iptables-filter.out","tests/fixtures/ubuntu-18.04/iptables-mangle.out","tests/fixtures/ubuntu-18.04/iptables-nat.out","tests/fixtures/ubuntu-18.04/iptables-raw.out","tests/fixtures/ubuntu-18.04/jobs.out","tests/fixtures/ubuntu-18.04/ls-al.out","tests/fixtures/ubuntu-18.04/ls-alh.out","tests/fixtures/ubuntu-18.04/ls.out","tests/fixtures/ubuntu-18.04/lsblk.out","tests/fixtures/ubuntu-18.04/lsmod.out","tests/fixtures/ubuntu-18.04/lsof-sudo.out","tests/fixtures/ubuntu-18.04/lsof.out","tests/fixtures/ubuntu-18.04/mount.out","tests/fixtures/ubuntu-18.04/netstat-l.out","tests/fixtures/ubuntu-18.04/netstat-p.out","tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.out","tests/fixtures/ubuntu-18.04/netstat.out","tests/fixtures/ubuntu-18.04/ps-axu.out","tests/fixtures/ubuntu-18.04/ps-ef.out","tests/fixtures/ubuntu-18.04/route-vn.out","tests/fixtures/ubuntu-18.04/route.out","tests/fixtures/ubuntu-18.04/uname-a.out","tests/fixtures/ubuntu-18.04/uptime.out","tests/fixtures/ubuntu-18.04/w.out","tests/test_df.py","tests/test_env.py","tests/test_free.py","tests/test_history.py","tests/test_ifconfig.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_ls.py","tests/test_lsblk.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py"],"file_stats":[{"name":"runtests.sh","lines_changed":3},{"name":"tests/__init__.py","lines_changed":0},{"name":"tests/fixtures/centos-7.7/df-h.out","lines_changed":8},{"name":"tests/fixtures/centos-7.7/df.out","lines_changed":8},{"name":"tests/fixtures/centos-7.7/env.out","lines_changed":24},{"name":"tests/fixtures/centos-7.7/free-h.out","lines_changed":3},{"name":"tests/fixtures/centos-7.7/free.out","lines_changed":3},{"name":"tests/fixtures/centos-7.7/history.out","lines_changed":1000},{"name":"tests/fixtures/centos-7.7/ifconfig.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/iptables-filter-nv.out","lines_changed":134},{"name":"tests/fixtures/centos-7.7/iptables-filter.out","lines_changed":134},{"name":"tests/fixtures/centos-7.7/iptables-mangle.out","lines_changed":59},{"name":"tests/fixtures/centos-7.7/iptables-nat.out","lines_changed":80},{"name":"tests/fixtures/centos-7.7/iptables-raw.out","lines_changed":38},{"name":"tests/fixtures/centos-7.7/jobs.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/ls-al.out","lines_changed":22},{"name":"tests/fixtures/centos-7.7/ls-alh.out","lines_changed":22},{"name":"tests/fixtures/centos-7.7/ls.out","lines_changed":19},{"name":"tests/fixtures/centos-7.7/lsblk.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/lsmod.out","lines_changed":99},{"name":"tests/fixtures/centos-7.7/lsof-sudo.out","lines_changed":3390},{"name":"tests/fixtures/centos-7.7/lsof.out","lines_changed":639},{"name":"tests/fixtures/centos-7.7/mount.out","lines_changed":31},{"name":"tests/fixtures/centos-7.7/netstat-l.out","lines_changed":45},{"name":"tests/fixtures/centos-7.7/netstat-p.out","lines_changed":121},{"name":"tests/fixtures/centos-7.7/netstat-sudo-lnp.out","lines_changed":45},{"name":"tests/fixtures/centos-7.7/netstat.out","lines_changed":123},{"name":"tests/fixtures/centos-7.7/ps-axu.out","lines_changed":110},{"name":"tests/fixtures/centos-7.7/ps-ef.out","lines_changed":110},{"name":"tests/fixtures/centos-7.7/route-vn.out","lines_changed":5},{"name":"tests/fixtures/centos-7.7/route.out","lines_changed":5},{"name":"tests/fixtures/centos-7.7/uname-a.out","lines_changed":1},{"name":"tests/fixtures/centos-7.7/uptime.out","lines_changed":1},{"name":"tests/fixtures/centos-7.7/w.out","lines_changed":4},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":48},{"name":"tests/fixtures/ubuntu-18.04/df-h.out","lines_changed":19},{"name":"tests/fixtures/ubuntu-18.04/df.out","lines_changed":19},{"name":"tests/fixtures/ubuntu-18.04/env.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-18.04/free-h.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/free.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/history.out","lines_changed":453},{"name":"tests/fixtures/ubuntu-18.04/ifconfig.out","lines_changed":18},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter-nv.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/iptables-mangle.out","lines_changed":14},{"name":"tests/fixtures/ubuntu-18.04/iptables-nat.out","lines_changed":11},{"name":"tests/fixtures/ubuntu-18.04/iptables-raw.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/jobs.out","lines_changed":4},{"name":"tests/fixtures/ubuntu-18.04/ls-al.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/ls-alh.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/ls.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-18.04/lsblk.out","lines_changed":18},{"name":"tests/fixtures/ubuntu-18.04/lsmod.out","lines_changed":102},{"name":"tests/fixtures/ubuntu-18.04/lsof-sudo.out","lines_changed":2854},{"name":"tests/fixtures/ubuntu-18.04/lsof.out","lines_changed":976},{"name":"tests/fixtures/ubuntu-18.04/mount.out","lines_changed":43},{"name":"tests/fixtures/ubuntu-18.04/netstat-l.out","lines_changed":32},{"name":"tests/fixtures/ubuntu-18.04/netstat-p.out","lines_changed":97},{"name":"tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.out","lines_changed":32},{"name":"tests/fixtures/ubuntu-18.04/netstat.out","lines_changed":97},{"name":"tests/fixtures/ubuntu-18.04/ps-axu.out","lines_changed":173},{"name":"tests/fixtures/ubuntu-18.04/ps-ef.out","lines_changed":173},{"name":"tests/fixtures/ubuntu-18.04/route-vn.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/route.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/uname-a.out","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/uptime.out","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/w.out","lines_changed":4},{"name":"tests/test_df.py","lines_changed":69},{"name":"tests/test_env.py","lines_changed":31},{"name":"tests/test_free.py","lines_changed":67},{"name":"tests/test_history.py","lines_changed":31},{"name":"tests/test_ifconfig.py","lines_changed":77},{"name":"tests/test_iptables.py","lines_changed":299},{"name":"tests/test_jobs.py","lines_changed":37},{"name":"tests/test_ls.py","lines_changed":92},{"name":"tests/test_lsblk.py","lines_changed":43},{"name":"tests/test_lsmod.py","lines_changed":40},{"name":"tests/test_lsof.py","lines_changed":85},{"name":"tests/test_mount.py","lines_changed":48},{"name":"tests/test_netstat.py","lines_changed":47}]},"message":"initial add of tests and fixtures"},{"commit":"579bef079cdd7cfa298bc20e052b8eb75b586f5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":3}]},"message":"move global output variable inside function"},{"commit":"0691cfcab3f5f91908e06ec906d57e548d4e7a1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog fix"},{"commit":"db29c7c186601fd4596d3eb121b37100601af907","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":4}]},"message":"documentation fixes"},{"commit":"fb1e03637514b5ab02fd4c5df1db8b3cbacdd531","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":10,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":24}]},"message":"formatting"},{"commit":"c3eaf59836538f4ab4c745e87b70115b4a4c5421","merge":"ea0cf0a c9849ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #5 from kellyjonbrazil/dev\n\nDev v1.0.1"},{"commit":"c9849ce0db1f864d33739f8f6f942bf5672bc3b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"changelog update"},{"commit":"d3c89a3092973a7a8765463fff41c2469ed675cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":9,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":20}]},"message":"check for enough info to parse"},{"commit":"a3d43f27f7bb0835b3593b7c303fe0ee8d896a58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":10,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":22}]},"message":"fix odd uptime text parsing"},{"commit":"f4d9c1b699fa30bd297a40ccf3d5f6e7ba3d4253","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":4,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":12}]},"message":"fix uptime for minutes and hours long uptime"},{"commit":"de647bba4aff84f7b513cf7f6fec8d3933b0d9da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"documentation update"},{"commit":"d7913070315e5e0c89006942250aaf37e9e3e18e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"documentation update"},{"commit":"1a4fc204e21f1555ae67c3147322c8d73fab630b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":10,"deletions":1,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":10},{"name":"changelog.txt","lines_changed":1}]},"message":"Documentation update"},{"commit":"0328e14c7c65a330093faa52fe48dae6cb173e42","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":0,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":7}]},"message":"handle ctrl-c gracefully"},{"commit":"1acc4d6c29d136e286f82d607c4a3a59e2680b68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":4}]},"message":"fix uptime parsing for short uptimes"},{"commit":"27245590ce28be933f1a55db4ee6b24783f4b63d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":20,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":32}]},"message":"remove integers"},{"commit":"7ca2a4bdb939293e8d7364f8901ad1fd6d3ee808","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":182,"deletions":201,"files":["README.md","changelog.txt","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":199},{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":95},{"name":"jc/parsers/netstat.py","lines_changed":84}]},"message":"remove integer values"},{"commit":"5f1ec6734874651bee595961edf1fafaf5acf001","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":473,"deletions":456,"files":["README.md","jc/parsers/df.py","jc/parsers/history.py","jc/parsers/iptables.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/w.py"],"file_stats":[{"name":"README.md","lines_changed":453},{"name":"jc/parsers/df.py","lines_changed":52},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":73},{"name":"jc/parsers/lsmod.py","lines_changed":61},{"name":"jc/parsers/lsof.py","lines_changed":113},{"name":"jc/parsers/ps.py","lines_changed":81},{"name":"jc/parsers/route.py","lines_changed":60},{"name":"jc/parsers/w.py","lines_changed":32}]},"message":"lower() headers"},{"commit":"7e44c4278a75c7223d99200023160e8d77fde54d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":2}]},"message":"formatting"},{"commit":"eda726c4a3864008e2f700374b679ae68a965ef8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":80,"deletions":1,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":81}]},"message":"documentation update"},{"commit":"5f8e70d73054f1a106c0e75eee621bc0cefd1c6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":20,"deletions":22,"files":["changelog.txt","jc/parsers/df.py","jc/parsers/free.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/w.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":8},{"name":"jc/parsers/lsmod.py","lines_changed":9},{"name":"jc/parsers/lsof.py","lines_changed":8},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":6}]},"message":"convert headers to lowercase"},{"commit":"25b90546c652cafa9409f02bae1654cb523add88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":14,"deletions":9,"files":["README.md","changelog.txt","jc/parsers/df.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":13}]},"message":"change 'Use%' to 'Use_percent'"},{"commit":"75c084153845757e22c149ea4ae7909d42ec7118","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"changelog update"},{"commit":"5b532b9b71fdb9de575da0af9b7989ac537877c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":5}]},"message":"minor cleanup"},{"commit":"8c7b3193d131411f8766508fc27b2a6589bba1f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":2}]},"message":"documentation change"},{"commit":"0897c96ef3c180a1707e8f56c545f59b3a4e0672","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":2}]},"message":"formatting"},{"commit":"57d0ab2ed7f444862546da17cbbe8f8ce67bca8c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":9,"deletions":4,"files":["README.md","jc/parsers/w.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"jc/parsers/w.py","lines_changed":9}]},"message":"change LOGIN@ to LOGIN_AT"},{"commit":"a07d9a0e4bb76d369b4a9bf0d77c7590dc3c2861","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":22,"deletions":13,"files":["README.md","jc/parsers/lsof.py"],"file_stats":[{"name":"README.md","lines_changed":10},{"name":"jc/parsers/lsof.py","lines_changed":25}]},"message":"change SIZE/OFF key to SIZE_OFF"},{"commit":"b3996cb4dfed908d71b292dc0b0136c6675351e6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":10,"files":["README.md","jc/parsers/lsblk.py"],"file_stats":[{"name":"README.md","lines_changed":10},{"name":"jc/parsers/lsblk.py","lines_changed":14}]},"message":"change MAJ:MIN key to MAJ_MIN"},{"commit":"4fa88c1ba38b34f9750625458c465d66f6531bc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":3}]},"message":"clear out non-ascii chars from data"},{"commit":"c8c5564b29588094721949b96bff1e623437835d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":3,"files":["README.md","jc/parsers/free.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":7}]},"message":"change buff/cache key to buff_cache"},{"commit":"6d047486d9f577bc04d79af839f5eef9657a9d43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"doc fix"},{"commit":"42bdc058141c4a3ac6f2c8211f9c990590b1b5cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"changelog fix"},{"commit":"85bfb688862e78d5879df6973b88ba8023fa6086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":10,"files":["README.md","jc/parsers/history.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"jc/parsers/history.py","lines_changed":17}]},"message":"history parser fixes"},{"commit":"08ec21556b553cd7e64932d68e01ba8ff3b0f210","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/w.py","lines_changed":1}]},"message":"formatting"},{"commit":"320929bf2595026d32b80b80c3e4878db9cf083f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/env.py"],"file_stats":[{"name":"jc/parsers/env.py","lines_changed":2}]},"message":"documentation update"},{"commit":"41cd489c34502c42602bf64086670ba3b2b8e14b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":126,"deletions":0,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/history.py","jc/parsers/uptime.py"],"file_stats":[{"name":"README.md","lines_changed":46},{"name":"changelog.txt","lines_changed":3},{"name":"jc/jc.py","lines_changed":10},{"name":"jc/parsers/history.py","lines_changed":32},{"name":"jc/parsers/uptime.py","lines_changed":35}]},"message":"add history and uptime parsers"},{"commit":"f101d881a16e662e883818749d48e96858fba853","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":78,"deletions":3,"files":["README.md","jc/jc.py","jc/parsers/w.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":27},{"name":"jc/jc.py","lines_changed":9},{"name":"jc/parsers/w.py","lines_changed":43},{"name":"setup.py","lines_changed":2}]},"message":"add w parser"},{"commit":"fa7466022bb8947c1bbf9f7b01aa4d92300a8992","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":28,"deletions":56,"files":["README.md","changelog.txt","jc/parsers/env.py"],"file_stats":[{"name":"README.md","lines_changed":37},{"name":"changelog.txt","lines_changed":3},{"name":"jc/parsers/env.py","lines_changed":44}]},"message":"fix env parser"},{"commit":"ea0cf0acf22585fbf8828841cf50155636eae82f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":3}]},"message":"documentation update"},{"commit":"e7921b65f5a250c10b08f78939f74968047af430","merge":"393e8bc 2cc1b1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #4 from kellyjonbrazil/dev\n\nDev v0.9.1"},{"commit":"2cc1b1bd5451f31d71b0e2236bdee0ce2b25b5d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"version bump"},{"commit":"58ae976db0165730a75dd7450c698d2727a354ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":113,"deletions":4,"files":["README.md","jc/parsers/lsmod.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":55},{"name":"jc/parsers/lsmod.py","lines_changed":60},{"name":"setup.py","lines_changed":2}]},"message":"documentation update"},{"commit":"66772392ae78ef394e22070b127416b1d5b01332","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":32,"deletions":0,"files":["changelog.txt","jc/jc.py","jc/parsers/lsmod.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/lsmod.py","lines_changed":26}]},"message":"add lsmod parser"},{"commit":"29c47c03a64f9c6b0f44d34be5449396654849b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":134,"deletions":2,"files":["README.md","changelog.txt","jc/parsers/lsof.py"],"file_stats":[{"name":"README.md","lines_changed":68},{"name":"changelog.txt","lines_changed":3},{"name":"jc/parsers/lsof.py","lines_changed":65}]},"message":"documentation update"},{"commit":"91eb9a4d13e9254bd5bbde931196904c1947a28e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":4}]},"message":"use None instead of --"},{"commit":"a1a3de32ec14d6ef433e334b9694856698c26d41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":59,"deletions":0,"files":["jc/jc.py","jc/parsers/lsof.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/lsof.py","lines_changed":54}]},"message":"add lsof parser"},{"commit":"9c47fd05bf716c2e18ebf4da41b1a46b972b2518","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":2}]},"message":"doco fix"},{"commit":"649c0aa7c157f87691cc8eeac64c747e81f63594","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":76,"deletions":1,"files":["README.md","jc/parsers/jobs.py"],"file_stats":[{"name":"README.md","lines_changed":39},{"name":"jc/parsers/jobs.py","lines_changed":38}]},"message":"add documentation"},{"commit":"3db758764e50666e5ae40de8d89180de2ef5bc28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":83,"deletions":0,"files":["changelog.txt","jc/jc.py","jc/parsers/jobs.py"],"file_stats":[{"name":"changelog.txt","lines_changed":6},{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":72}]},"message":"add jobs parser"},{"commit":"802f1510eb6d621f9c760f28b83f16a4781b8d93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":2}]},"message":"tighten if statements"},{"commit":"56901788dee154890e70269ad48d4b22bb8c5437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":30,"deletions":19,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":49}]},"message":"stop blocking when no pipe and enhance help text"},{"commit":"679ae6d5dc7af26240dc00d8bc6499950f81d457","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"b15c8c352a87a9b3b1dece28af0287ef71ca02d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":16,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":30}]},"message":"simplify state variables"},{"commit":"393e8bc56041a4be01b6c0b2f98895aa330afd04","merge":"e3750b4 976fd7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #3 from kellyjonbrazil/dev\n\nDev v0.8.1"},{"commit":"976fd7d9bd49190a8b28ea5acf5af8979cdec537","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":28,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":55}]},"message":"readme update"},{"commit":"d8337870cad042cdcc6a4ff3c61f756c3430fa96","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":28,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":55}]},"message":"update documentation"},{"commit":"39a8aec77f5134b5b958e3f679910a1c3512e13a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/parsers/ls.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"v0.8.1 build"},{"commit":"306d539b6bbfb272c7b955e4847adc3a6b4afa5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"readme update"},{"commit":"f3087b8a8ede88834285bb5d0655fc96341c174c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":635,"deletions":1,"files":["README.md","changelog.txt","jc/parsers/iptables.py"],"file_stats":[{"name":"README.md","lines_changed":319},{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/iptables.py","lines_changed":316}]},"message":"update readme and formatting"},{"commit":"414c2ecef88af2d2c098e6acfb507a5fd7bb8eda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":10,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":16}]},"message":"fix iptables parser"},{"commit":"776ef2d1be81180b8b295fbc587446a326f2f7a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":61,"deletions":0,"files":["jc/jc.py","jc/parsers/iptables.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/iptables.py","lines_changed":56}]},"message":"add iptables parser"},{"commit":"9ac57469967443b195be09d580beaa76ce0e1095","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":64,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/uname.py"],"file_stats":[{"name":"README.md","lines_changed":15},{"name":"changelog.txt","lines_changed":1},{"name":"jc/jc.py","lines_changed":7},{"name":"jc/parsers/uname.py","lines_changed":42}]},"message":"add uname parser"},{"commit":"a3e55d97c0fd4397b42e9146afb0ba9558274fdb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":127,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/mount.py"],"file_stats":[{"name":"README.md","lines_changed":45},{"name":"changelog.txt","lines_changed":1},{"name":"jc/jc.py","lines_changed":7},{"name":"jc/parsers/mount.py","lines_changed":75}]},"message":"add mount parser"},{"commit":"b15227e7ba5377e5fb6799d1b9e4ed5a11c6d92f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":125,"deletions":0,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/lsblk.py"],"file_stats":[{"name":"README.md","lines_changed":49},{"name":"changelog.txt","lines_changed":1},{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/lsblk.py","lines_changed":70}]},"message":"add lsblk parser"},{"commit":"ec3d1f84ceccb492b4c968938714fafa2e6a6321","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":2,"files":["jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/free.py","lines_changed":26}]},"message":"fix free parser"},{"commit":"753d5fd9fe5a8e4b67b1a0ec018a9f811e27f8bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"readme update"},{"commit":"73a0d70c9294ad392792e690a7bfbcc4f51b0a5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"readme update"},{"commit":"c2c189f3e6e900e5f3d35df9a9b9d033448baff6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":5}]},"message":"readme update"},{"commit":"36bc55a3109278d663b675a09829200f5474c3d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"fix df"},{"commit":"a023001cd350e320ce30f47af214ed7a9bb43185","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":226,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/df.py","jc/parsers/env.py","jc/parsers/free.py"],"file_stats":[{"name":"README.md","lines_changed":73},{"name":"changelog.txt","lines_changed":5},{"name":"jc/jc.py","lines_changed":17},{"name":"jc/parsers/df.py","lines_changed":56},{"name":"jc/parsers/env.py","lines_changed":53},{"name":"jc/parsers/free.py","lines_changed":23}]},"message":"add df, env, and free parsers"},{"commit":"e3750b49628794fd4d563013b1f3a7471c27ce68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":83,"deletions":51,"files":["README.md","jc/__init__.py"],"file_stats":[{"name":"README.md","lines_changed":30},{"name":"jc/__init__.py","lines_changed":104}]},"message":"documentation enhancements"},{"commit":"b5ea08e55bfd22c9da5ba73c124791012df119a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":20,"deletions":20,"files":["README.md","changelog.txt","jc/parsers/netstat.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":16},{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":20},{"name":"setup.py","lines_changed":2}]},"message":"fix transport protocol"},{"commit":"8e71b8e3522b9b1af4d869a0854223eb5c300b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"fix jq example"},{"commit":"4c8610c54ff4b643237d8f0e4c5781c277fc39f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"setup.py","lines_changed":2}]},"message":"fixed build"},{"commit":"c8f886dc8fcdc58f8471d68c3d583200d0ea2f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":2}]},"message":"fix example"},{"commit":"4cfc2d22b3f9fd6f0cde8ad206edd7fe260b3071","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"update changelog"},{"commit":"59238c85408117748e78c5e87157381a828f3782","merge":"d54d906 30080c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #2 from kellyjonbrazil/dev\n\nDev v0.6.2"},{"commit":"30080c01659cf611666876b7b063b7b329822352","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":35,"deletions":35,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":70}]},"message":"reorder parsers"},{"commit":"fab80bb3b4a1897da29d818e98e9b80ce45443dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["README.md","setup.py"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"setup.py","lines_changed":2}]},"message":"readme update"},{"commit":"a9f2df805421754afb8e8adbcac7f2d3bd06c9ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":3}]},"message":"move parsed_line var lower"},{"commit":"1d110be6cb25d169ae0dde6532cbcdf05d93d42f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":13,"deletions":1,"files":["README.md","changelog.txt","setup.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"changelog.txt","lines_changed":4},{"name":"setup.py","lines_changed":2}]},"message":"update doco"},{"commit":"be81b5e1ed93eb65e5dbed4f52905439cde86f62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":112,"deletions":121,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":233}]},"message":"readme update"},{"commit":"5f88f7d8a071306be92cbfb65d6d62c5a68159f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":110,"deletions":137,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":247}]},"message":"netstat cleanup"},{"commit":"e57c7cc8ef3102cc41dee4ea5fd33d40ba666491","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":2}]},"message":"change output from dict to list"},{"commit":"b216627c1073ea645029e341b4d3376601e5468e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":116,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":135}]},"message":"flatten netstat output"},{"commit":"6e925eab131024b5746d870cbd47e2791acf18bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":18,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":45}]},"message":"clean up arg parsing"},{"commit":"d54d906c571b4683f01cab2eca63ae5f0725a87b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update readme"},{"commit":"0040febbf099ed8ab35f6ee343750fcf89f2e739","merge":"8073d15 e416c77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #1 from kellyjonbrazil/dev\n\nDev v0.5.5"},{"commit":"e416c77bed1267254da972b0f95b7ff1d43fccef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"version bump"},{"commit":"9181d242aaed5219bb35fde01d672be88949cceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"bump version"},{"commit":"d6f94c53a4df84fb75554605477e49536a809dc2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"fix blank output case in ls"},{"commit":"a9294f32a00709737d0b82ff434a311e75ad0bed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":39,"deletions":42,"files":["changelog.txt","jc/parsers/ls.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":7},{"name":"jc/parsers/ls.py","lines_changed":72},{"name":"setup.py","lines_changed":2}]},"message":"ls fixes"},{"commit":"4d93b38fe47329e3175025878e87f7c963061f98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":90,"deletions":1,"files":["README.md","jc/parsers/route.py"],"file_stats":[{"name":"README.md","lines_changed":47},{"name":"jc/parsers/route.py","lines_changed":44}]},"message":"add route documentation"},{"commit":"77b74c550795f96b808e48a9b0bfd1a8af9866f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"add route parser"},{"commit":"51a1d3e6f48cf7084267be4092f0dd3f778dcef3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"2eba30422b44f648c7356a44cbff7416c6648f19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":2}]},"message":"skip first line"},{"commit":"43ed09ce5ba53261dfd7ef50a2e187cb524c416c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":25,"deletions":1,"files":["jc/jc.py","jc/parsers/route.py","setup.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":3},{"name":"jc/parsers/route.py","lines_changed":21},{"name":"setup.py","lines_changed":2}]},"message":"add route parser"},{"commit":"367ab54f94bf7f456377ec9d20f8daf99dbdc1ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":99,"deletions":2,"files":["README.md","changelog.txt","jc/parsers/ps.py"],"file_stats":[{"name":"README.md","lines_changed":53},{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":46}]},"message":"formatting"},{"commit":"4f552e370e656cc1882a7dae231475a016f8aa14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":4}]},"message":"acknowledgment"},{"commit":"7571139f7980f6e74c29d46971881e82ab0f04bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"bump version"},{"commit":"8ec1bec31711d2ef487da3e4a29a842d98d77626","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":29,"deletions":7,"files":["changelog.txt","jc/__init__.py","jc/jc.py","jc/parsers/ps.py"],"file_stats":[{"name":"changelog.txt","lines_changed":10},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/jc.py","lines_changed":3},{"name":"jc/parsers/ps.py","lines_changed":21}]},"message":"add ps parser"},{"commit":"c04895407f203aa0a3a080d5242faf8f6889ae41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["changelog.txt","jc/parsers/netstat.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":9}]},"message":"ubuntu fixes"},{"commit":"cec73d61310591e4890605f61dc5c1bef5808ec4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":24,"deletions":16,"files":["jc/jc.py","jc/parsers/ifconfig.py","jc/parsers/ls.py","jc/parsers/netstat.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":7},{"name":"jc/parsers/ifconfig.py","lines_changed":7},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"jc/parsers/netstat.py","lines_changed":23}]},"message":"linting"},{"commit":"756c2bc9acd60111281b76085a40778e51ca06cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":23}]},"message":"add acknowledgments"},{"commit":"084048987c7afc6516f69e68d37d73b2402dc7f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"changelog update"},{"commit":"02d97394dd76a8782e6e7d3f8a85e1aed05e796b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update"},{"commit":"177f948f9740e3e33449b04b9136a346c9a2c265","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version update"},{"commit":"c2b013150ec1f1b1ab7d416f1aa8a62165a5bb95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":9}]},"message":"add changelog"},{"commit":"0bec67c29ce5d965271440da41a0c4b4c2a1f0fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":4}]},"message":"double quotes to single quotes"},{"commit":"8073d15fe11546a17cacd81409e255bb8aecd602","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":16}]},"message":"readme update"},{"commit":"3b74afc39e58f801e75b7105e521c1469d30f991","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["pypi-upload.sh"],"file_stats":[{"name":"pypi-upload.sh","lines_changed":2}]},"message":"upload script"},{"commit":"ed320cf0f4bb11cee1e69e9dc9176ba109df1b86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":22,"deletions":22,"files":["README.md","jc/parsers/netstat.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":20},{"name":"jc/parsers/netstat.py","lines_changed":22},{"name":"setup.py","lines_changed":2}]},"message":"change netstat pid field to integer"},{"commit":"021b6924e24e1cf0f971246244b174cd3181c0a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":254,"deletions":5,"files":["README.md","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":124},{"name":"jc/parsers/netstat.py","lines_changed":135}]},"message":"documentation updates"},{"commit":"5fb21b077662f1cb172741945ba5036e5a280638","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":8,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":8}]},"message":"remove debug print statements"},{"commit":"7b8540ae2a60f2400fe672a022ee00d1415a3500","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":7,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":26}]},"message":"netstat fixes"},{"commit":"a5e039d4c2e07d52a0797833685c562ab285b49b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":17,"deletions":7,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":24}]},"message":"netstat debugging"},{"commit":"7071f60a302b7aefb8fb312699b0abec25548986","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":66,"deletions":18,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":84}]},"message":"netstat mvp"},{"commit":"0de1dff0253eb46b7336103f62f888940406ccc0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":48}]},"message":"fix ands"},{"commit":"b3c52eb1ccf82e899dda62c332c0b217d80eb4c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":112,"deletions":40,"files":["jc/parsers/ifconfig.py","jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":150}]},"message":"add netstat parser"},{"commit":"366c5dbc010869bdb1d3b9d852e10510bd5c266f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":4}]},"message":"fix help message"},{"commit":"a3ee02514b5fbd43a38ddf515a4aad49bb4e161a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":12}]},"message":"fix imports and module names"},{"commit":"46ad1269cb58dc6f064d17eb0b04da62d8fd5fce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":3,"files":["jc/jc.py","setup.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":6},{"name":"setup.py","lines_changed":1}]},"message":"packaging fixes"},{"commit":"7234afe568818678585ac423649a0ccce0f45d68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"entrypoint fix"},{"commit":"caf480c63aacb518805d48fba0fd454959d11023","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"module fix"},{"commit":"62851b48d5e5cd673e630a28996e1c24cc45aa58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/jc.py","setup.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":12},{"name":"setup.py","lines_changed":2}]},"message":"fix modules"},{"commit":"46d6da92f0e196e150ab9dd44b1ba290c950905b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["jc/{jc => jc.py}","setup.py"],"file_stats":[{"name":"jc/{jc => jc.py}","lines_changed":0},{"name":"setup.py","lines_changed":2}]},"message":"fix entry_points"},{"commit":"e572b2edfa993c5049ef3caeda7a8e4797f0c751","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":37,"deletions":29,"files":["jc/jc","setup.py"],"file_stats":[{"name":"jc/jc","lines_changed":58},{"name":"setup.py","lines_changed":8}]},"message":"use entry_points instead of scripts"},{"commit":"72c69e7de59029d623c9819dda6aa8cae91bc419","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/jc"],"file_stats":[{"name":"jc/jc","lines_changed":12}]},"message":"fix package paths"},{"commit":"4d1565071e5cf7c38e026e08db8f4d2e79969691","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["jc/{jc.py => jc}","setup.py"],"file_stats":[{"name":"jc/{jc.py => jc}","lines_changed":0},{"name":"setup.py","lines_changed":2}]},"message":"rename jc.py to jc"},{"commit":"3652e51693d7ba829f4699fd80de20856941d82f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"fix requirements"},{"commit":"49ce9f13e817266659400a8c19f5b078a48589df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":17,"deletions":20,"files":["jc/jc.py","jc/parsers/__init__.py","setup.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/__init__.py","lines_changed":5},{"name":"setup.py","lines_changed":27}]},"message":"setup updates"},{"commit":"e83170b7ec7ed2123bfde69be263b6034c7afa53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"readme update"},{"commit":"ffb6eb754a87baad5fb0558e30a5bca1a9b9e0a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/parsers/__init__.py","setup.py"],"file_stats":[{"name":"jc/parsers/__init__.py","lines_changed":8},{"name":"setup.py","lines_changed":6}]},"message":"setup fixes"},{"commit":"2597a18d95d01109d2250487b7550a501edaf77b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":82,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":82}]},"message":"readme update"},{"commit":"3e576250b1bfe1c62c556f2fa0425103b0ede1f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":429,"deletions":0,"files":[".gitignore","LICENSE.md","README.md","build-package.sh","jc/__init__.py","jc/jc.py","jc/parsers/__init__.py","jc/parsers/ifconfig.py","jc/parsers/ls.py","jc/parsers/netstat.py","setup.py"],"file_stats":[{"name":".gitignore","lines_changed":6},{"name":"LICENSE.md","lines_changed":21},{"name":"README.md","lines_changed":53},{"name":"build-package.sh","lines_changed":5},{"name":"jc/__init__.py","lines_changed":61},{"name":"jc/jc.py","lines_changed":38},{"name":"jc/parsers/__init__.py","lines_changed":3},{"name":"jc/parsers/ifconfig.py","lines_changed":30},{"name":"jc/parsers/ls.py","lines_changed":130},{"name":"jc/parsers/netstat.py","lines_changed":55},{"name":"setup.py","lines_changed":27}]},"message":"First commit"}] diff --git a/tests/fixtures/generic/git-log-full-stat.json b/tests/fixtures/generic/git-log-full-stat.json index cfee8317..3f02d37f 100644 --- a/tests/fixtures/generic/git-log-full-stat.json +++ b/tests/fixtures/generic/git-log-full-stat.json @@ -1 +1 @@ -[{"commit":"096fffdb79807d34b99985b38df0a3df7f6a86c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":120,"deletions":36,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"]},"message":"use stat examples"},{"commit":"728d882ed007b3c8b785018874a0eb06e1143b66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":90,"deletions":12,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"]},"message":"add timestamp docs and examples"},{"commit":"b53e42aca623181aa9bc72194e6eeef1e9a3a237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":29,"deletions":6,"files":["docs/parsers/git_log.md","docs/utils.md","jc/parsers/git_log.py","jc/utils.py","man/jc.1"]},"message":"add calculated timestamp"},{"commit":"477329ce5b8f5c2a8e4384ba3f59289fc18c957d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add linefeed to version text"},{"commit":"283dc4efd55030188f17c7e1dfbc5315103494b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["CHANGELOG","jc/cli.py"]},"message":"add python interpreter version and path to -v and -a output"},{"commit":"d490bbcaa0291a691b95fa5b61807eebb0b088eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":26,"files":["CHANGELOG"]},"message":"normalize add/update"},{"commit":"f49ddf8e5c5009702155fc62d83c63e3c08c594d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"]},"message":"doc update"},{"commit":"e1e341652b51b823844e76ef7e68f9373a323435","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"doc update"},{"commit":"ecda667549137bed5622cca69f2022e7a75ea833","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":8,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"]},"message":"process integers"},{"commit":"a0d96a188a9f875b2d59625aa97d4f80bba290f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":1,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"]},"message":"doc update"},{"commit":"6c0f0cddfe4dd2d5169f7c55416c6725912557f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":1,"files":["jc/parsers/yaml.py","tests/test_yaml.py"]},"message":"fix for datetime objects in yaml files"},{"commit":"c7173ecd89742c8cf8a7bc4a8021baac5c3cd483","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":6,"files":["jc/parsers/git_log.py"]},"message":"fix mypy issues"},{"commit":"e98240c905394e3ebd6a45fa31b6d432c150afc4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/git_log.py"]},"message":"extend instead of append list"},{"commit":"6cb7e25974b11afe57d7d0e8550b3b1a56b14c67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":93,"deletions":1,"files":["README.md","docs/parsers/git_log.md","man/jc.1"]},"message":"add docs"},{"commit":"c37980c05c7fbd4f811ce5fcfcfddaf5f3ab5414","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":41,"deletions":7,"files":["jc/parsers/git_log.py"]},"message":"add stat support"},{"commit":"b5943bd39d776fc4c3b3dea03c0f3d4b6f4bb260","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":10,"files":["jc/parsers/git_log.py"]},"message":"initial docstring"},{"commit":"49a3a7db3b2b0b292489a41691c9dcbce816cfed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":175,"deletions":0,"files":["jc/lib.py","jc/parsers/git_log.py"]},"message":"initial git-log parser"},{"commit":"0c55240e9da30ac4293cc324f1094de2abd3da91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":0,"files":["CHANGELOG","tests/{ => templates}/_test_foo.py","tests/{ => templates}/_test_foo_s.py"]},"message":"move test templates to fix test failures on some systems"},{"commit":"f91988aed5499d25acf7a7e87b2b0d0cd37b62af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/lib.md"]},"message":"iterator -> iterable"},{"commit":"3c3ad9fc6adf865b3814a1f03814d0bc17d1c6bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"iterator -> iterable in doc"},{"commit":"291ab79e22a59cb31814e7a5af9dbc9f2ec863e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":24,"deletions":24,"files":["README.md","man/jc.1","templates/readme_template"]},"message":"fix arch linux command"},{"commit":"e6d5892c146762cd41a966adadb77db333d98ace","merge":"c0414e7 dcca7a5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #226 from kellyjonbrazil/master\n\nsync to dev"},{"commit":"dcca7a57d558721a61fbba44f07b1d53116827e1","merge":"7138eef 4ee8a69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #225 from adrianteri/patch-1\n\nUpdate README"},{"commit":"4ee8a69337b24e199983fe657643abcb0a56a8e6","author":"003","author_email":"adriateri@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"Update README\n\nSpecify the Arch package is in the AUR and NOT in the standard Archlinux repositories."},{"commit":"c0414e7db7f5d785b72ad616517f2ec63af151a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["docgen.sh"]},"message":"clean up background tasks"},{"commit":"a419175fe6dffe9c5fd20cfbd82ee552bc82a993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":34,"deletions":17,"files":["docgen.sh","updatedocs.sh"]},"message":"enhance parallelization"},{"commit":"cd6dead034f3c72aebd22afeb2aea6591ae6d94d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"man page update"},{"commit":"45342ea9fea29947d8d90260c7665ffbca612cce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":16,"deletions":9,"files":["docgen.sh","updatedocs.sh"]},"message":"parallelize doc gneration"},{"commit":"585bf0e159c7839869cf3e458938dcc5fa2ceb81","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"xrandr update"},{"commit":"3a860b9babe93d455f68ef21436edf7470d375af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":5,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"add rotation field"},{"commit":"269180df77f9ff953b07222e8ae790c7e7a8298e","merge":"e85f11c a1afed8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #223 from anekos/fix/support-rotated-devices\n\nFix/support rotated devices"},{"commit":"a1afed8d95e33fbbc618c7b5778a9faeea2f628f","author":"anekos","author_email":"anekos@snca.net","commit_by":"anekos","commit_by_email":"anekos@snca.net","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["docs/parsers/xrandr.md"]},"message":"doc update"},{"commit":"e39f150a216e4e184444dfc88a63e0f303e51631","author":"anekos","author_email":"anekos@snca.net","commit_by":"anekos","commit_by_email":"anekos@snca.net","stats":{"files_changed":3,"insertions":9,"deletions":4,"files":["jc/parsers/xrandr.py","tests/fixtures/generic/xrandr_simple.json","tests/test_xrandr.py"]},"message":"Support rotated devices"},{"commit":"e85f11c6fcad5461bae612dd5a945c20d300e59a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":12,"deletions":12,"files":["docs/parsers/ini.md","docs/parsers/kv.md","jc/parsers/ini.py","jc/parsers/kv.py"]},"message":"doc formatting"},{"commit":"49a9d7b07e89696f2e022655d7256b7d6ad4bf7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":12,"deletions":8,"files":["docs/parsers/ini.md","docs/parsers/kv.md","man/jc.1"]},"message":"doc update"},{"commit":"a2ef9c429e4bb9f70d033511dce77ccdb9013971","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":38,"deletions":8,"files":["jc/parsers/ini.py","jc/parsers/kv.py","tests/test_ini.py","tests/test_kv.py"]},"message":"allow duplicate keys"},{"commit":"d5e9074f1c8facb3f15b8c41a008917178626978","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/lib.py","setup.py"]},"message":"version bump"},{"commit":"774699f085d97f22ae2dab0cf64d72aa1e1709f7","merge":"789f073 7138eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #220 from kellyjonbrazil/master\n\nsync to dev"},{"commit":"7138eef3d137bc64286d4af453d8d4e7b3f4408d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py"]},"message":"fix newline chars in doc"},{"commit":"fad5e544aa9e57d31473190e196f59c616901207","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"]},"message":"formatting"},{"commit":"64757e2cf55448bccfbbd60d31930ab3f59af21b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"]},"message":"doc formatting"},{"commit":"e05be3f08beae1b600fc55a3a7b4e28163e15bc0","merge":"ac61e9a 789f073","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #213 from kellyjonbrazil/dev\n\nDev v1.18.6"},{"commit":"789f0735dfd63e728b8716d97cf0c6045ede5011","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"doc update"},{"commit":"34bc7753174be28d6c1a00dadc662bc374e554c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"doc update"},{"commit":"38de059a1bc285c8681086d9fb43d0d23ac01d49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":3,"files":["docs/parsers/asciitable.md","docs/parsers/universal.md","man/jc.1"]},"message":"doc update"},{"commit":"304ae6268f4dff6e6f901628e7ff89db1d6e0767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/parsers/asciitable_m.py"]},"message":"minor optimization by changing the expression order"},{"commit":"978caf45221188a29c0e67147804f20f317c066d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["jc/parsers/asciitable.py"]},"message":"minor optimization by reordering expressions"},{"commit":"17df5bfcfc25f226a2976aa7ab8a80e4aaa915c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":2,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"cache _is_separator function"},{"commit":"5e6a5068cff71b3b30525d0a12868bdf6551456c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":2,"files":["jc/parsers/universal.py"]},"message":"allow iterables for simple table parser"},{"commit":"619de68a61be0117e635032347dde417d77c748c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":9,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"formatting"},{"commit":"6748c3cc91f90bddea3d07b8b30a049ee55eaf35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":65,"deletions":61,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"remove lines from corner detection and add rounded corners"},{"commit":"0a462978b731770d1290187a502706c2322f5f91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":101,"deletions":3,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py","tests/test_asciitable.py","tests/test_asciitable_m.py"]},"message":"fix for special characters in headers"},{"commit":"e66a82ff49b40a674f9ef373a12d59fc71bfa730","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":5,"files":["CHANGELOG","jc/parsers/asciitable_m.py","man/jc.1"]},"message":"doc update"},{"commit":"f3aa797d96c8e2cef2124dbb2f49d1fadaee3fa2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":69,"deletions":9,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"add more pretty table separators"},{"commit":"e5b478218c4ba3781afd085056dba888c3f6ae02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_xrandr.py"]},"message":"add quiet=True to parse tests"},{"commit":"35e0e9c32afbc5450c661bcb3a23904d135358ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable.py"]},"message":"remove print statement"},{"commit":"17c3c2f029a0a47eb02d681567619d471b99949c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":58,"deletions":2,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py","tests/test_asciitable.py","tests/test_asciitable_m.py"]},"message":"add bold bar seperator and ANSI code tests"},{"commit":"cf83e6398b3314b233581eb313510872177de20a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":0,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"add fancy separators"},{"commit":"94e061b881e2ed28d2b462ad038e5ba77182b6c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":275,"deletions":0,"files":["tests/test_asciitable.py"]},"message":"add asciitable parser tests"},{"commit":"720480e39ce3cc2079d7f4f5bcff2725081fec34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":10,"deletions":2,"files":["docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"doc update"},{"commit":"82a63fe15922456853aa4597aa10a5a02b20bdef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":8,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"]},"message":"doc update"},{"commit":"9c1ec9940e68ce9848da20e81b8c0b7e35a215df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":82,"deletions":14,"files":["docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"doc update"},{"commit":"f23f19da453a0f7bcf70e417a10f87e27571aa43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":122,"deletions":9,"files":["README.md","docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py","man/jc.1"]},"message":"doc update"},{"commit":"aea2e1b0a9c6bb2a02a6e73889bb04e8f4f22588","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["tests/test_asciitable_m.py"]},"message":"fix tests so blank strings are now None"},{"commit":"7d95d679bf4093ea77f30a1be55384b6dbf08341","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":212,"deletions":1,"files":["jc/lib.py","jc/parsers/asciitable.py"]},"message":"add asciitable parser"},{"commit":"b3b140066b74ee31dd1c460502caf2f26df321b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py"]},"message":"doc update"},{"commit":"b204c423c1b947c17cb251a5dd3c444cd71dd2c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":193,"deletions":15,"files":["README.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py","man/jc.1"]},"message":"doc update"},{"commit":"d451c309bb0d8889dc09a698212bf01c2154a582","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":8,"files":["jc/parsers/asciitable_m.py"]},"message":"change multiple or statements to any()"},{"commit":"01d53da68ed04b736934851137c59216ad02d8c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable_m.py"]},"message":"remove debug print"},{"commit":"53dd05e52c329a15c30a756a36a165ac59ef8a14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":29,"deletions":1,"files":["jc/parsers/asciitable_m.py","tests/test_asciitable_m.py"]},"message":"fix rstrip and add tests"},{"commit":"ab564f5be8282f1c7ee2d602bcef398fdfd4570f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":237,"deletions":1,"files":["jc/parsers/asciitable_m.py","tests/test_asciitable_m.py"]},"message":"add tests"},{"commit":"00c39450f9878527b60545ad61c04cfb98f418dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"]},"message":"enhance type annotation"},{"commit":"f611d08b50219f4e573c1d1f0beae27583e76432","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/asciitable_m.py"]},"message":"formatting"},{"commit":"90e79b7df3a4d5b37835fdf1c2debc1bad0a40b9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"]},"message":"formatting"},{"commit":"4eb2d725d5fe6f2cc7935c7dc891912cf7b8e940","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"]},"message":"formatting"},{"commit":"51ae5ebcac7263ef2571c11975b275eff352bbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":148,"deletions":175,"files":["jc/parsers/asciitable_m.py"]},"message":"new streamlined parser"},{"commit":"9ecbdb09162da4d563799aa93d422db85b2c324b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":35,"deletions":30,"files":["docs/parsers/mpstat_s.md","docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","docs/parsers/universal.md","jc/parsers/foo_s.py","jc/parsers/mpstat_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"]},"message":"use generator instead of iterable in function return annotation"},{"commit":"b3a2886fd0af0cd06890f37f1edfc6890bb83e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["docs/lib.md"]},"message":"formatting"},{"commit":"ceacec0f462bd7c2d9e92ddb9029ccd71aef481c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable_m.py"]},"message":"remove errant os sep import"},{"commit":"ff0f794b01395ed9b65fac75a6b07f0772d45a2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":32,"deletions":10,"files":["jc/parsers/asciitable_m.py"]},"message":"working"},{"commit":"70fafbf3f80f35c5db2c306978b2a488adad40bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"remove asciitable so tests pass for now"},{"commit":"5a248a8fc58952a5eab3d4aac025d7422ba82d08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":344,"deletions":0,"files":["jc/parsers/asciitable_m.py"]},"message":"add multiline asciitable parser"},{"commit":"4a3a4e10df8a552a4db3510640695f02b166dc40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":4,"files":["jc/lib.py"]},"message":"add asciitable and asciitable-m parsers"},{"commit":"c27bd5ff39f21c6377e661d4d7de1200d2fdd72f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":16,"files":["jc/parsers/universal.py"]},"message":"pad lines in sparse_table_parse and use str.isspace()"},{"commit":"f804c9627fb71341429ca80aec2887e23e0277db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/universal.py"]},"message":"copy input list so we don't mutate the caller's data"},{"commit":"3ab25d02f9dc248706aa1105e1766b2a84bc55a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"use _parser_is_streaming from lib"},{"commit":"9e80fd2b97b9bfe38fdaa6acdf2e8ed26d34b49d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":11,"files":["jc/cli.py","jc/lib.py"]},"message":"fallback if info and doc items don't exist"},{"commit":"ff9527a098a94c996641fb3fe2f905c8ae5e3063","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":13,"files":["jc/cli.py"]},"message":"import cleanup and use all_parser_info in parsers_text"},{"commit":"7dac2f8dc3baf619105e3c6ca4d3e45300b86287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":23,"deletions":9,"files":["docs/lib.md","docs/readme.md","man/jc.1"]},"message":"doc update"},{"commit":"32e4d55e86c3e7d94488ec69f13a4f6400c4cef3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"]},"message":"use parser_info for help_doc"},{"commit":"f9a9062147256d0949457cc7fde838f87202524d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":27,"deletions":10,"files":["CHANGELOG","jc/__init__.py","jc/lib.py"]},"message":"add documentation argument to parser_info and all_parser_info"},{"commit":"89e5919796f7da585285901dca461aae21336415","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/mpstat_s.md","jc/parsers/mpstat_s.py"]},"message":"add -A to second example"},{"commit":"e5f5b2591d8ac3abeb9571688c7fb8de34d647f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update"},{"commit":"77c667eec045daff5cbd062fe9d6e83f237727e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":67,"deletions":6,"files":["docs/parsers/mpstat.md","docs/parsers/mpstat_s.md","jc/parsers/mpstat.py","jc/parsers/mpstat_s.py","tests/fixtures/ubuntu-18.04/mpstat-A-streaming.json","tests/fixtures/ubuntu-18.04/mpstat-A.json","tests/fixtures/ubuntu-18.04/mpstat-A.out","tests/test_mpstat.py","tests/test_mpstat_s.py"]},"message":"ubuntu fixes"},{"commit":"b257ce8c2fe6825fe435b4d04b4184091030db10","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":65,"deletions":0,"files":[".../centos-7.7/mpstat-A-2-5-streaming.json","tests/fixtures/centos-7.7/mpstat-A-streaming.json","tests/fixtures/centos-7.7/mpstat-streaming.json","tests/test_mpstat_s.py"]},"message":"add mpstat_s tests"},{"commit":"c693c868cacbcd81f44fd383719723dd7a137c87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":352,"deletions":0,"files":["README.md","docs/parsers/mpstat.md","docs/parsers/mpstat_s.md","jc/lib.py","jc/parsers/mpstat.py","jc/parsers/mpstat_s.py","man/jc.1"]},"message":"add mpstat streaming parser"},{"commit":"6f98b27a05d6e1f7571a97316b193f096521b959","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":168,"deletions":0,"files":["tests/fixtures/centos-7.7/mpstat-A-2-5.json","tests/fixtures/centos-7.7/mpstat-A-2-5.out","tests/fixtures/centos-7.7/mpstat-A.json","tests/fixtures/centos-7.7/mpstat-A.out","tests/fixtures/centos-7.7/mpstat.json","tests/fixtures/centos-7.7/mpstat.out","tests/test_mpstat.py"]},"message":"add mpstat tests"},{"commit":"d7efd25d88a8f489564ce48223845a16e4ab1cc7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":207,"deletions":1,"files":["EXAMPLES.md","README.md","docs/parsers/mpstat.md","man/jc.1"]},"message":"add mpstat to docs"},{"commit":"2cddb1f0bb497be0be071cdcb56bf49d2dafc920","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":94,"deletions":15,"files":["jc/parsers/mpstat.py"]},"message":"working mpstat"},{"commit":"ae1c331595dd857d8ae7f8cf93daee1b26be2c3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":30,"deletions":5,"files":["jc/parsers/mpstat.py"]},"message":"initial working version"},{"commit":"bc97052ed4ee3bf3f25127968139f2e89a659fe3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":109,"deletions":0,"files":["CHANGELOG","jc/lib.py","jc/parsers/mpstat.py"]},"message":"initial add mpstat parser"},{"commit":"6c3e0e2aa0e8cc375d9f7473930b18957d33f1aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"formatting"},{"commit":"dd052e01469e9e3328f7326d3591365a8e7322eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":26,"deletions":24,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"add underscores to column examples"},{"commit":"54e8f58145f6c4332fbd375d112259ea7abb2d72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":28,"deletions":2,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"add table result examples"},{"commit":"def7aa5764e69cd0cf2c5b70aa62c62023f76c9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":16,"deletions":16,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"formatting"},{"commit":"6986c74f6dceca907ea2e469a332deeb093a122c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":169,"insertions":34,"deletions":837,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/pidstat.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/nmcli.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/pidstat.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/xrandr.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py"]},"message":"remove direct parser module example from doc"},{"commit":"b784db404d0569a4c630eb124b37b0b1d0846453","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":17,"insertions":87,"deletions":166,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/pidstat_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/pidstat_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"]},"message":"streaming doc formatting update"},{"commit":"8aee4517bb4c2eebdd9873f7eb0827cd33b85519","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":26,"files":["docs/parsers/pidstat_s.md","jc/parsers/pidstat_s.py"]},"message":"doc formatting"},{"commit":"a5fb8fbf94b3b80bef82f078ad6582260b13e374","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":17,"insertions":164,"deletions":148,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/pidstat_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/pidstat_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"]},"message":"streaming doc update"},{"commit":"b9365e2ac28c3eacf53bc101857f7f1d7286ec20","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":74,"deletions":0,"files":[".../centos-7.7/pidstat-hdlrsuw-2-5-streaming.json",".../centos-7.7/pidstat-hdlrsuw-streaming.json",".../fixtures/centos-7.7/pidstat-hl-streaming.json","tests/test_pidstat_s.py"]},"message":"add pidstat-s tests"},{"commit":"696338c1a3d462afbe677a6f2ebe08d06ef4046a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":38,"deletions":0,"files":["tests/_test_foo_s.py"]},"message":"add streaming test template"},{"commit":"4f0616190bb842411353d65650b78a65d8cbdc28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","man/jc.1"]},"message":"doc update"},{"commit":"3278cb0de301ee542b1fe8245a6c359193373b6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":10,"files":["docs/parsers/arp.md","jc/parsers/arp.py"]},"message":"add type hints"},{"commit":"4fc04256a567c502a88ac8a1bd189746387c93f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["jc/parsers/foo_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"]},"message":"rollback noReturn to tuple"},{"commit":"e4ae0fea63c0386c1b3239607fd6a58738d23633","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":8,"deletions":8,"files":["docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","jc/parsers/foo_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"]},"message":"fix type annotation"},{"commit":"d3727ea0906d6167aa48c340519242b010469d98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":99,"deletions":1,"files":["CHANGELOG","README.md","docs/parsers/pidstat_s.md","man/jc.1"]},"message":"doc update"},{"commit":"0d13909cf63d14008607c5640d074ab4073115e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":168,"deletions":0,"files":["jc/lib.py","jc/parsers/pidstat_s.py"]},"message":"add pidstat-s parser"},{"commit":"c52ca20e285895d2afb685a2a5ca275de7901033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/pidstat.py"]},"message":"fix comment"},{"commit":"21f27f26c81c75234221a5193c7d3903323e2032","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":72,"deletions":0,"files":["tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.json","tests/fixtures/centos-7.7/pidstat-hdlrsuw.json","tests/fixtures/centos-7.7/pidstat-hl.json","tests/test_pidstat.py"]},"message":"add pidstat tests"},{"commit":"5e7a87f39782d12070a895440ff541800df91b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":35,"deletions":0,"files":["tests/_test_foo.py"]},"message":"add test template"},{"commit":"845d763829acd03fff1d2fad6e9691f04bd1a2aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/pidstat.md","jc/parsers/pidstat.py"]},"message":"format docs to fit 80 columns"},{"commit":"f5c7d52ec72f5ff4b77d5ac4491f330575b9f10f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":10,"files":["man/jc.1","templates/manpage_template"]},"message":"formatting"},{"commit":"c3198a58744803f52113f80967c7259d781e2328","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":22,"deletions":12,"files":["man/jc.1","templates/manpage_template"]},"message":"formatting"},{"commit":"bbd4afa73542ba6596aed77426bb494fbcf23196","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["README.md","man/jc.1"]},"message":"add pidstat to docs"},{"commit":"ae754a84bf5fc35b248bbc5f7b0fa8e871765819","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":263,"deletions":33,"files":["docs/parsers/arp.md","docs/parsers/pidstat.md","jc/parsers/pidstat.py"]},"message":"doc update"},{"commit":"3389eb5debe0f0ba01ece01e20048608bf357e70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":219,"deletions":9,"files":["jc/parsers/pidstat.py","tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.out","tests/fixtures/centos-7.7/pidstat-hdlrsuw.out","tests/fixtures/centos-7.7/pidstat-hl.out"]},"message":"initial working parser"},{"commit":"01f2c1e71f87ab401d487be4d6d150cb67c91437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":162,"deletions":2,"files":["CHANGELOG","jc/lib.py","jc/parsers/pidstat.py","setup.py","tests/fixtures/centos-7.7/pidstat.out"]},"message":"add pidstat parser"},{"commit":"8bfbf8f1bcd233a8ecd34012e140eb29164ca5fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"simplify error message"},{"commit":"f4242669bac3af5eb196c46d4146823aacec40ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":10,"files":["jc/parsers/arp.py"]},"message":"minor cleanup"},{"commit":"bebd9331f1fb9b80f8cb4a5cfacd68461743004e","merge":"9861983 ac61e9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #211 from kellyjonbrazil/master\n\nsync to dev"},{"commit":"ac61e9ad2c9c4e864db02db04cbf907fb0efd99b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add pypi link"},{"commit":"648ef4d8a9c33a36d4bb2c135fe59b031de8f24c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"update badge links"},{"commit":"727fc9a701e9aae75d3d2b708010da1d0dc8781a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/date.md","man/jc.1"]},"message":"doc update"},{"commit":"306512d6bb53af18516fc10b15c7ec79cb02cc98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":7,"deletions":4,"files":["CHANGELOG","jc/lib.py","jc/parsers/date.py","setup.py"]},"message":"force AM/PM to uppercase in date parser"},{"commit":"6afb1d389ca9dfd7880386d380fee032b7eb92e2","merge":"961968a 9861983","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #209 from kellyjonbrazil/dev\n\nDev v1.18.4"},{"commit":"98619834818c181cb50a9605fe166b6153c46095","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"doc update"},{"commit":"ca79053db08542849136ae13fdb4d1d90b79a7e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docgen.sh"]},"message":"document pydoc version"},{"commit":"29c263f87810f8566ebdad2358e99896391adfd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":93,"insertions":115,"deletions":115,"files":["docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/streaming.md","docs/utils.md"]},"message":"pydoc formatting fixes"},{"commit":"128c3c170abc6a702ae044b073fb9d992d4262b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"doc update"},{"commit":"a531ab8864fca27b55d83b55055eaef1c36128cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting"},{"commit":"0c1be7cc11ec75a5738483d68d053e702eb34fc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":18,"files":["README.md","templates/readme_template"]},"message":"reduce dig example size"},{"commit":"e4222b45f54e6179e22d7924c083e4642b9974ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/lib.py"]},"message":"fix names to mod names"},{"commit":"ac32c69c31e8eff22252d7aded08f6cb14622086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"formatting"},{"commit":"cb2dfeac8d44b733ad9d364e8c6d233a381bfae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":199,"insertions":334,"deletions":326,"files":["README.md","docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/streaming.md","docs/utils.md","jc/__init__.py","jc/cli.py","jc/exceptions.py","jc/lib.py","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat_freebsd_osx.py","jc/parsers/netstat_linux.py","jc/parsers/nmcli.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/xrandr.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py","jc/streaming.py","jc/utils.py","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"change name to JSON Convert"},{"commit":"9a3602e70b865a3015bd700b30d1076e17511a9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/lib.md","jc/lib.py"]},"message":"doc update"},{"commit":"a9f53ee258e18bc90934e263d8dc96feee84e939","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":4,"files":["jc/cli.py","jc/lib.py"]},"message":"optimize streaming parser detection in cli"},{"commit":"6be3d3d98222a262c5138bb09f2951ccfab96110","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":43,"deletions":1,"files":["CHANGELOG","docs/lib.md","docs/readme.md"]},"message":"doc update"},{"commit":"e49df7208377ab34a74240a06f35f17fee4b8203","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"use streaming parser list to find streaming parsers"},{"commit":"7ede7be7bf7b1a7d29d158b3b21c20fff4990e72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":42,"deletions":0,"files":["jc/__init__.py","jc/lib.py"]},"message":"add standard and streaming list functions"},{"commit":"4758e28a36e2a55497e4f722d386a6b5cc30dc4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":16,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting"},{"commit":"4a1ee151b3cb054d84cd964fd62f5855f765751d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":9,"deletions":11,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py"]},"message":"add dhcp6 options to docs"},{"commit":"8c8afc1a922e3c30fcf501d169b33a68b65cd3e0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":60,"deletions":24,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting"},{"commit":"ed205f7720d98c225c917c252ed7a6c9e6e8c2b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":9,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py","man/jc.1"]},"message":"doc update"},{"commit":"d65f7ae992abc33140c00714d442290103661757","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":41,"deletions":0,"files":["EXAMPLES.md"]},"message":"add nmcli"},{"commit":"e2ffef57b9a474048fe72cf42aebfa6bfaf2e42b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_nmcli.py"]},"message":"fix test"},{"commit":"002caa9fb3b65f1ae64df25cc39c3de130403e76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":252,"deletions":0,"files":[".../fedora32/nmcli-connection-show-ens33.json",".../fedora32/nmcli-connection-show-ens33.out",".../fixtures/fedora32/nmcli-device-show-ens33.json",".../fixtures/fedora32/nmcli-device-show-ens33.out","tests/fixtures/fedora32/nmcli-device-show.json","tests/fixtures/fedora32/nmcli-device-show.out","tests/test_nmcli.py"]},"message":"add fedora tests"},{"commit":"b7c6faf3daf8eb0c42a222778baa440c5a018c75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"enhance error message"},{"commit":"554ca61d1764b81dea06b6b013d0444072f0662a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":165,"deletions":0,"files":[".../fixtures/centos-7.7/nmcli-connection-all.json",".../centos-7.7/nmcli-connection-show-ens33.json","tests/fixtures/centos-7.7/nmcli-connection.json","tests/fixtures/centos-7.7/nmcli-device-all.json",".../centos-7.7/nmcli-device-show-ens33.json",".../fixtures/centos-7.7/nmcli-device-show-lo.json","tests/fixtures/centos-7.7/nmcli-device-show.json","tests/fixtures/centos-7.7/nmcli-device.json","tests/fixtures/centos-7.7/nmcli-general-all.json",".../centos-7.7/nmcli-general-permissions.json","tests/test_nmcli.py"]},"message":"add tests"},{"commit":"7b9722d255a16981099dc803beda7abe0d46106a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":26,"deletions":34,"files":["man/jc.1","templates/manpage_template"]},"message":"fix formatting"},{"commit":"5505bde8ef77db0885f08d8d04160cbc4418dd67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/zipinfo.md"]},"message":"doc update"},{"commit":"dbcd9a4060647be24bca2a8d577f11925a9ac210","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/zipinfo.py"]},"message":"bump version to 1.0"},{"commit":"4bdeb2b3aa063c2772f5c44e52acbe16e915cc3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/xrandr.py"]},"message":"simplify warning message"},{"commit":"6ae1d03187c6d4b669f6f74db1be7c9cf07adaed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py"]},"message":"doc fix"},{"commit":"f75b06abe4af152be094f8bc1ba5ce66b25e35e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":180,"deletions":3,"files":["README.md","docs/parsers/nmcli.md","jc/parsers/nmcli.py","man/jc.1"]},"message":"doc update"},{"commit":"1923925710dadc4116202855ae884ef18394d428","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["CHANGELOG"]},"message":"update changelog"},{"commit":"2c5c57ae04df3b7abfb1c3423c3350c7c2ab5dcd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/lib.py","setup.py"]},"message":"version bump"},{"commit":"f4d11d697e000135720a971edf84dcad31a1bec8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":155,"deletions":15,"files":["jc/parsers/nmcli.py"]},"message":"finish use cases and doc"},{"commit":"7f409b7082aa9525cc9280e3c5c92bc82089cf14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"enhance ParseError cli message"},{"commit":"937fa5aad2519f588c6d0feb8f08211f6b99872f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":0,"files":["jc/parsers/nmcli.py"]},"message":"split dhcp options"},{"commit":"19dcef513565c34a31f6d735577da5e25f9bd2cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":69,"deletions":2,"files":["jc/parsers/nmcli.py"]},"message":"firm up flow. add/remove text. parse routes"},{"commit":"3d01356461eb2790f859968da7f5cb4fd2ee9898","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":3,"files":["jc/parsers/nmcli.py"]},"message":"add text_kv function"},{"commit":"2d6f666fa4c791e7995f6b0c1490dac73ce224c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":61,"deletions":16,"files":["jc/parsers/nmcli.py"]},"message":"add dev show and conn show parsers"},{"commit":"4dda895f122ecc19b267ed1485cf656bae76ff07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":404,"deletions":0,"files":["jc/lib.py","jc/parsers/nmcli.py","tests/fixtures/centos-7.7/nmcli-connection-all.out",".../centos-7.7/nmcli-connection-show-ens33.out","tests/fixtures/centos-7.7/nmcli-connection.out","tests/fixtures/centos-7.7/nmcli-device-all.out",".../centos-7.7/nmcli-device-show-ens33.out","tests/fixtures/centos-7.7/nmcli-device-show-lo.out","tests/fixtures/centos-7.7/nmcli-device-show.out","tests/fixtures/centos-7.7/nmcli-device.out","tests/fixtures/centos-7.7/nmcli-general-all.out",".../centos-7.7/nmcli-general-permissions.out","tests/fixtures/centos-7.7/nmcli.out"]},"message":"initial nmcli parser"},{"commit":"52617b1722ba2f089716b069f78f70a865430d61","merge":"3afaa48 961968a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #208 from kellyjonbrazil/master\n\nsync to dev"},{"commit":"961968a0fcaf37b64bc850c4945ba4b805a1fe54","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":26,"deletions":23,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"fix schema"},{"commit":"f026a788e5ca1231927e71fdbb1dadb2365a6518","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":62,"deletions":0,"files":["EXAMPLES.md"]},"message":"add xrandr example"},{"commit":"2f7c03eb35520be916c28a687031f8c6425839ba","merge":"681176e 3afaa48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #207 from kellyjonbrazil/dev\n\nDev v1.18.3"},{"commit":"3afaa48eee081e28262d1762c5ec23d318012822","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":15,"insertions":15,"deletions":15,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"]},"message":"doc update"},{"commit":"3201452564fb0fb44ef9cc32217339370bd2521e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"add -p to example"},{"commit":"7ee1e34fc71c0dbc08ba482b787d560fd5125f64","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":116,"deletions":4,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"doc update"},{"commit":"67dbf050161201f5016899591e81ab6253ac2322","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"add type annotations"},{"commit":"4ac9f2e3dad4e7bd270bf5a8e61b729838b2c89c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":10,"deletions":17,"files":["CHANGELOG","docs/parsers/rsync.md","docs/parsers/rsync_s.md","jc/parsers/rsync.py","jc/parsers/rsync_s.py"]},"message":"doc update"},{"commit":"3f5f6e39a777ef524cb3a06a01321bb8c31d930d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":100,"deletions":98,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"formatting"},{"commit":"4723db8e3cc4946b14c83b25d6e8c6d2309aa72e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":195,"deletions":77,"files":["README.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/xrandr.md","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/xrandr.py","man/jc.1"]},"message":"doc updates"},{"commit":"ca914ec77d1fc77e42860189e62ac2fb203d4931","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":2,"files":["tests/test_xrandr.py"]},"message":"add nodata test"},{"commit":"dcc7f3f357ef016b4583fc1320fd2394788f271f","merge":"184ef3a cbdc666","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #204 from lyterk/xrandr\n\nNew parser: xrandr"},{"commit":"cbdc66623671da335eafe132b7af79f884856f1d","author":"Kevin Lyter","author_email":"lyterk@sent.com","commit_by":"Kevin Lyter","commit_by_email":"lyterk@sent.com","stats":{"files_changed":3,"insertions":2,"deletions":30,"files":["jc/parsers/xrandr.py",".../{simple_xrandr.json => xrandr_simple.json}",".../{simple_xrandr.out => xrandr_simple.out}"]},"message":"Return empty object if no results and filenames\n\n- If no results are returned, return {} instead of {\"screens\": [],\n\"unassociated_devices\": []}\n- simple_xrandr -> xrandr_simple"},{"commit":"184ef3a1faeb406ce62076cff637ee86d61541fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":11,"deletions":3,"files":["docs/parsers/rsync.md","docs/parsers/rsync_s.md","man/jc.1"]},"message":"doc update"},{"commit":"c732f759445e335fe36586859b6fde7e27bb8901","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":10,"deletions":2,"files":["jc/parsers/rsync.py","jc/parsers/rsync_s.py"]},"message":"doc update"},{"commit":"7a1ae4f5fc5328c32bf77235cfbd9f83ec995053","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":105,"deletions":0,"files":["tests/{test_lib.py => test_jc_lib.py}","tests/test_jc_streaming.py","tests/{test_utils.py => test_jc_utils.py}"]},"message":"add library tests"},{"commit":"d04bc3757c482ec9062b2da91ded76c5dd6d106b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add xrandr"},{"commit":"73e8391653145412cd852aca349466018c8b9084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":3,"files":["jc/utils.py"]},"message":"formatting"},{"commit":"f6c1463c1578db264ccb3d4c2677857ed906e965","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":44,"deletions":24,"files":["jc/cli.py"]},"message":"formatting"},{"commit":"d392c7f901a9d7c57617fbd03bd3f88ee0bf4132","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":20,"deletions":13,"files":["docs/parsers/date.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/ls.md","docs/parsers/rpm_qi.md","docs/parsers/stat.md","docs/parsers/systeminfo.md","docs/parsers/timedatectl.md","docs/parsers/upower.md","docs/parsers/vmstat.md","docs/parsers/who.md","docs/utils.md"]},"message":"doc update"},{"commit":"d0387f58205b2fd9b9860ce9656bb29ceec54340","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":16,"insertions":34,"deletions":29,"files":["jc/parsers/date.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/systeminfo.py","jc/parsers/timedatectl.py","jc/parsers/upower.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/who.py"]},"message":"add timestamp format hints for better performance"},{"commit":"76f92908a3ba9cbadcc8e972afa8b1c4a69509bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":44,"deletions":9,"files":["jc/utils.py"]},"message":"add format hints for performance optimization"},{"commit":"1a115da67bdce9acfefbfb71fbac37e234b1babd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"add lru_cache maxsize for python 3.7 support"},{"commit":"f0a37ccf301eee5133a83b5dd96986fef0c38e7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/utils.py"]},"message":"use lru_cache for significant performance boost to timestamp"},{"commit":"f331f53a531169520a4d8ea15d277560a49aedb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["CHANGELOG","jc/utils.py"]},"message":"use !r formatting instead of quotes"},{"commit":"8611aff06b18212b7292d564beb27a2062fc3f41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/parsers/rsync_s.md","jc/parsers/rsync_s.py"]},"message":"add examples"},{"commit":"2f3f78e8d35a0ccccde0f84417400acdfe7fe0aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":16,"insertions":194,"deletions":185,"files":["docgen.sh","docs/parsers/rsync_s.md","docs/readme.md","docs/streaming.md","docs/utils.md","jc/__init__.py","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/streaming.py","man/jc.1"]},"message":"refine streaming parsers"},{"commit":"d1e0ee6123dfecd48d074cb7a40e98a15b6adcb9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":8,"files":["jc/parsers/ping_s.py"]},"message":"use new streaming functions"},{"commit":"45314c98083067f1f6fae9c477c99fabec223f29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":112,"deletions":102,"files":["jc/streaming.py","jc/utils.py"]},"message":"move some functions to streaming"},{"commit":"df00945b46e27e10107f48d186eedf80b55bd40e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":59,"deletions":49,"files":["jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py"]},"message":"move try/except inside for loop"},{"commit":"fda0050d867bcbe4f1d7e024b08e9881d0f57735","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":191,"deletions":0,"files":[".../centos-7.7/rsync-i-logfile-streaming.json","tests/fixtures/centos-7.7/rsync-i-streaming.json",".../centos-7.7/rsync-i-v-logfile-streaming.json",".../centos-7.7/rsync-i-vv-logfile-streaming.json",".../rsync-i-vvv-logfile-nochange-streaming.json",".../centos-7.7/rsync-i-vvv-logfile-streaming.json",".../centos-7.7/rsync-ivvv-nochange-streaming.json",".../fixtures/centos-7.7/rsync-ivvv-streaming.json","tests/fixtures/generic/rsync-i-streaming.json",".../rsync-i-vvv-logfile-nochange-streaming.json",".../rsync-i-vvv-nochange-streaming.json",".../osx-10.14.6/rsync-i-vvv-streaming.json","tests/test_rsync_s.py"]},"message":"add rsync-s tests"},{"commit":"a76d46f9ecb1eff4d6cc7ad633c97cec0e99001a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":19,"insertions":110,"deletions":109,"files":["CHANGELOG","docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","docs/utils.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/utils.py","man/jc.1"]},"message":"refactor ignore_exceptions"},{"commit":"6b069a82d0fa19c8d83b19b934bace556cb758d7","author":"Kevin Lyter","author_email":"lyterk@sent.com","commit_by":"Kevin Lyter","commit_by_email":"lyterk@sent.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/lib.py"]},"message":"Add xrandr to lib.py"},{"commit":"6b793d052147406f388c4d5dc04f506a3456f409","author":"Kevin Lyter","author_email":"lyterk@sent.com","commit_by":"Kevin Lyter","commit_by_email":"lyterk@sent.com","stats":{"files_changed":1,"insertions":6,"deletions":11,"files":["jc/parsers/xrandr.py"]},"message":"Clean up types\n\n* | operator => Union[]\n* Remove unused import Iterator\n* Remove comment"},{"commit":"ce9103f7cc666895dc7840d32797d8c7274cf1b8","author":"Kevin Lyter","author_email":"lyterk@sent.com","commit_by":"Kevin Lyter","commit_by_email":"lyterk@sent.com","stats":{"files_changed":2,"insertions":0,"deletions":287,"files":["templates/xrandr_sample.txt","templates/xrandr_sample_verbose.txt"]},"message":"Delete old files in template folder"},{"commit":"671d6dee36a37317257e09a080849205d301bceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":83,"deletions":15,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","docs/utils.md"]},"message":"doc update"},{"commit":"49929c714c2d71a310b1dd95138dbd02f8704138","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":139,"deletions":52,"files":["jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/utils.py"]},"message":"add add_jc_meta decorator"},{"commit":"2986771f07de87bfee44dd3bbb4f285e249aad76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"require python v3.7 and above since v3.6 is now deprecated"},{"commit":"520082d963b93d2bafeff921da3899686b22cadf","author":"Kevin Lyter","author_email":"lyterk@sent.com","commit_by":"Kevin Lyter","commit_by_email":"lyterk@sent.com","stats":{"files_changed":9,"insertions":968,"deletions":0,"files":["jc/parsers/xrandr.py","templates/xrandr_sample.txt","templates/xrandr_sample_verbose.txt","tests/fixtures/generic/simple_xrandr.json","tests/fixtures/generic/simple_xrandr.out","tests/fixtures/generic/xrandr.out","tests/fixtures/generic/xrandr_2.out","tests/fixtures/generic/xrandr_device.out","tests/test_xrandr.py"]},"message":"New parser: xrandr\n\nTests passing, working as intended in plugin directory"},{"commit":"021e296d457140c32b5256c2b0acf66efc458896","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":104,"deletions":100,"files":["jc/parsers/rsync_s.py"]},"message":"move variable inits and regexes up"},{"commit":"42e56fbcea6db64ea7f7045e7755af492c95aec2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":12,"files":["jc/parsers/rsync.py"]},"message":"move regex up"},{"commit":"a5b62a4055df37b84751a7cdc14eb6f1ed907cd9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":230,"deletions":18,"files":["docs/parsers/rsync_s.md","jc/parsers/rsync_s.py"]},"message":"add processing and docs"},{"commit":"be98c9b7f6c67e23ea101223934d67bba512e645","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/foo_s.py"]},"message":"simplify try/except by moving outside for loop"},{"commit":"aceeb8450796ae748a4d4abf75643f309d0a42e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":12,"deletions":1,"files":["CHANGELOG","README.md","man/jc.1"]},"message":"doc update"},{"commit":"13910632173e7c815ff1161cf52fd1d17153c4a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":367,"deletions":0,"files":["jc/lib.py","jc/parsers/rsync_s.py"]},"message":"first draft rsync streaming parser"},{"commit":"52157addd0d6dff3bdb34f179ec14b07c8c27ccc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/foo_s.py"]},"message":"fix compatible list"},{"commit":"ec0bc6615e22fdc536623e290d88b9725cb6a0ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/utils.md","jc/utils.py"]},"message":"formatting"},{"commit":"2f80800e38256b363a4122195ec4aaffebe67d87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"simplify all_parser_info comprehension"},{"commit":"3959d3347c8d3e838f8c3158c4db74e2fa2eb856","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["docs/lib.md"]},"message":"doc update"},{"commit":"b57d25c69a193d3866ea86a3a34edd67049b198d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/lib.py"]},"message":"clean up return type for parser_info"},{"commit":"63e43a7cabb51c624c962cdcc92a1199f18c77e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":188,"deletions":21,"files":["README.md","docs/lib.md","docs/parsers/rsync.md","docs/parsers/universal.md","docs/parsers/zipinfo.md","docs/utils.md","man/jc.1"]},"message":"doc updates"},{"commit":"21719f9a26c25d896b0a5d49c9d7814175835e16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":18,"deletions":20,"files":["jc/lib.py","jc/utils.py"]},"message":"type annotation updates"},{"commit":"96ec70de4f6178b0669fd9ab47cb303dc45e55c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["jc/parsers/universal.py","jc/utils.py"]},"message":"remove unneeded optional"},{"commit":"a15a1967dc06169ceeda0fd5b4857ce1a351f3d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"fix typo"},{"commit":"a10d7566294fe5246e68a16e355ce56dd3557ac5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/universal.py"]},"message":"fixy mypy issues"},{"commit":"0700dc7a64b121cf0243416e2cbb82fcef15f5a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/rsync.py"]},"message":"remove cygwin from compatible"},{"commit":"ca654b214057e19839b89e0d9a66f1110f679c1e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"fix parser order"},{"commit":"4ff3b87c1c96d720f4e7fd39e613944e322cb388","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/rsync.py"]},"message":"remove future field from docstring"},{"commit":"ea244fb7a91f1d1f8ffe0ea6dc10dfe5ab836878","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_rsync.py"]},"message":"formatting"},{"commit":"8061f30e6fa58d22ed1a52e02c4d9c7f0bf132cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":236,"deletions":6,"files":["tests/fixtures/centos-7.7/rsync-ivvv-nochange.json","tests/fixtures/centos-7.7/rsync-ivvv-nochange.out","tests/test_rsync.py"]},"message":"add centos -i nochange test"},{"commit":"8f3b12e81e1b4f0d4394c33db5b3a352f4cfb391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":299,"deletions":0,"files":["jc/parsers/rsync.py",".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.json",".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.out","tests/fixtures/osx-10.14.6/rsync-i-vvv.json","tests/fixtures/osx-10.14.6/rsync-i-vvv.out","tests/test_rsync.py"]},"message":"add fixes for mac -i output"},{"commit":"d0694ce0db5ea2d06b5787429adf23095c4c2df0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":245,"deletions":6,"files":[".../osx-10.14.6/rsync-i-vvv-logfile-nochange.json",".../osx-10.14.6/rsync-i-vvv-logfile-nochange.out","tests/test_rsync.py"]},"message":"add nochange log test for mac"},{"commit":"0cd4c4bc7f3ffe13cb2f1920187e25636b88af61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":658,"deletions":0,"files":[".../centos-7.7/rsync-i-vvv-logfile-nochange.json",".../centos-7.7/rsync-i-vvv-logfile-nochange.out"]},"message":"add nochange tests"},{"commit":"12f90c349c903634def4225ce87924b475be46d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":68,"deletions":20,"files":["jc/parsers/rsync.py","tests/test_rsync.py"]},"message":"update regexes for unchanged files"},{"commit":"26b8a1f167c4b1ec3f9fb4077254a27ed8548933","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"]},"message":"remove packages from binaries and packages header"},{"commit":"3abe382c064f605d915912f9b726d76784eba8a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":90,"deletions":3,"files":["EXAMPLES.md","jc/parsers/rsync.py"]},"message":"add examples"},{"commit":"1e2edc2c7b5dc104a9efe4da7df9be61b9e1be32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":53,"deletions":29,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-logfile.json","tests/fixtures/centos-7.7/rsync-i-v-logfile.json","tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json"]},"message":"add timestamp"},{"commit":"5fe032a6741b7b6586c60eb28be74bd0e56277a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/zipinfo.py"]},"message":"fix typo"},{"commit":"e825c02df1cdae67c7f335fe3c675685eb1a8d02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":605,"deletions":0,"files":["tests/fixtures/centos-7.7/rsync-i-logfile.json","tests/fixtures/centos-7.7/rsync-i-v-logfile.json","tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out","tests/fixtures/centos-7.7/rsync-i.json","tests/fixtures/centos-7.7/rsync-i.out","tests/fixtures/centos-7.7/rsync-ivvv.json","tests/fixtures/generic/rsync-i.json","tests/fixtures/generic/rsync-i.out","tests/test_rsync.py"]},"message":"add rsync tests"},{"commit":"a4a4d170b5ae8c189de982adea5bdc9bf1f26e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":5,"files":["jc/parsers/rsync.py"]},"message":"update docstring"},{"commit":"d0fcd523cb2cbb59d0f90369721749b54222961d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":17,"files":["jc/parsers/rsync.py"]},"message":"fix process conversions"},{"commit":"f72b7dc75dbd1c3f5daee3ecee28487258a04873","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":8,"files":["jc/parsers/rsync.py"]},"message":"change keyname to files and remove future key"},{"commit":"4101dc6bf7bab7d00899426e2f6271a7480d558f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":1008,"deletions":19,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-v-logfile.out","tests/fixtures/centos-7.7/rsync-i-vv-logfile.out","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out"]},"message":"add log-file support"},{"commit":"ea5011b616365b5c10c04416d43035d84e3dacba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":175,"deletions":41,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-logfile.out"]},"message":"updated schema. add log-file option support"},{"commit":"d6de81747fd92642dbd5cb1fb097e375aa38be35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":3,"files":["jc/parsers/rsync.py"]},"message":"add int/float conversions"},{"commit":"38f04b1c9699246d85332b20df5b6a91ae0c48d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":32,"deletions":7,"files":["jc/parsers/rsync.py"]},"message":"add summary"},{"commit":"84169e1a913d035744f71472be81fe3a7d774b97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":637,"deletions":2,"files":["jc/lib.py","jc/parsers/rsync.py","setup.py","tests/fixtures/centos-7.7/rsync-ivvv.out"]},"message":"add rsync parser"},{"commit":"1f96586a5e883709f436526de6dcb21ff44bf97b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/foo.py"]},"message":"reorder imports"},{"commit":"681176e4c958157ef1f2151b3e57963a6ba48e09","merge":"b389665 8bb2663","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #203 from kellyjonbrazil/dev\n\nDev v1.18.2"},{"commit":"8bb266352207f95040b72750e5b3ae3b8ceb2b98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"date update"},{"commit":"663abf313931b49fad64b425ece6a5a257dc7938","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":3,"deletions":4,"files":["MANIFEST.in","mangen.py","runtests.sh","updatedocs.sh"]},"message":"clean up scripts"},{"commit":"f7ac41db95c16fd21d83fbce678c5dec28ab40f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":13,"files":["README.md","man/jc.1"]},"message":"final doc update"},{"commit":"5502cda9e591b531d6b452b02d8ec322c3287800","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["tests/test_lib.py"]},"message":"add additional test for dict inside list for all_parser_info()"},{"commit":"a2b165565f54d91489bf38577a0785e78a4523d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["tests/test_lib.py"]},"message":"add lib tests for new functions"},{"commit":"b426369815984bd2aae8bcb14e306ba73b8cd4ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/cli.py"]},"message":"use all_parser_info() from lib in about function"},{"commit":"ac0840cc0afb4aeee2c99076710c987e09cfa5f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"fix typo"},{"commit":"ee98ab0a4a7671ae34ee79f7b0b97c061a8c2944","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/lib.md","docs/utils.md"]},"message":"doc update"},{"commit":"2adec2c0035b84ca0242f2494b6c2651b9898ca5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":21,"deletions":19,"files":["jc/lib.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/utils.py"]},"message":"update type hints with mypy help"},{"commit":"f19c9c71bf4f592f55a5176458acd478b462fdbe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":4,"files":["jc/parsers/foo.py","jc/parsers/foo_s.py"]},"message":"add type hints"},{"commit":"e93adf1884c0006a64123513070a5fd96a940da2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"fix doc"},{"commit":"254c4fc507842ca72064c0196418a7b939d54d06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":6,"files":["docs/readme.md","jc/__init__.py"]},"message":"add new functions"},{"commit":"74d5f60d14fc42cfd5768c7ffd6efc890a65d442","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"]},"message":"update console interview description"},{"commit":"db7dc0634bc17b4daadc8bc21bba5975c093efe5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/lib.md","jc/lib.py"]},"message":"make **kwargs optional"},{"commit":"e156b0db453e99fb0f74b618fd343218f978ff68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"add type hints"},{"commit":"50adc05fbd6a0dcd9e4fb38aa41917bb57332f36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/utils.md","jc/utils.py"]},"message":"formatting"},{"commit":"446cac7c217103eb66cfdee97e3a208b7144b644","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":11,"files":["docs/utils.md","jc/utils.py"]},"message":"doc update"},{"commit":"28ffe3076bb5f23aeaf2624344856dbd02b4c0e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":9,"files":["docs/lib.md","jc/lib.py"]},"message":"formatting"},{"commit":"d4d5e206cae14acd25445952f820810818b3fdce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":40,"deletions":28,"files":["docs/lib.md","docs/utils.md","jc/utils.py"]},"message":"type hints update"},{"commit":"42fbe40a4ae02b9d09acdbf9b22573844959d2ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/lib.py"]},"message":"simplify type hints"},{"commit":"27e4a120e21dcbb3eadc6c4cf224ddb33859328d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/lib.md","jc/lib.py"]},"message":"remove trailing comma"},{"commit":"b5d5b7c73a96d4335b178ccfac60af90913e6f0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":29,"deletions":148,"files":["docgen.sh","docs/parsers/ifconfig.md","docs/parsers/traceroute.md"]},"message":"remove private classes"},{"commit":"e7471556ba5fb0586ac5b0d7404cabd98a58db2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":5,"files":["docgen.sh"]},"message":"remove sed lines"},{"commit":"640a21341bb1c562cb2124155b511dfc74277fc0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":47,"deletions":42,"files":["docs/utils.md","jc/utils.py"]},"message":"fix indentation"},{"commit":"f5befad3e41ba2864abc795a2fdf63e0f1d37c21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":33,"deletions":25,"files":["docs/utils.md","jc/utils.py"]},"message":"move docstring under __init__"},{"commit":"f8223023c31093c1a34130b4e4cfc23b1d80a30c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":24,"deletions":10,"files":["docgen.sh","docs/parsers/ifconfig.md","docs/parsers/traceroute.md","docs/utils.md"]},"message":"change header depth"},{"commit":"7028e87f9b411c0cfb92eee7fc0667cdcb9a54ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":87,"insertions":22,"deletions":445,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md"]},"message":"remove TOC for parsers"},{"commit":"590728f9c1ccfdc078e600d1f35ad4ba51f70d36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":91,"insertions":506,"deletions":17,"files":["docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/utils.md","jc/lib.py"]},"message":"try new pydoc-markdown formatting options"},{"commit":"7cc147fe2d7b278bcab905bc4c3b70b5265e1510","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":44,"files":["docgen.sh","docgen.sh.old"]},"message":"increase heading size"},{"commit":"3cfb3965bb25024a7b03870b71f02194e278919b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":19,"deletions":19,"files":["docs/lib.md","docs/parsers/universal.md","docs/utils.md"]},"message":"formatting"},{"commit":"155d4213225fe4fcf4a059fb63c1ab9fc493177e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":86,"insertions":182,"deletions":181,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"]},"message":"formatting"},{"commit":"d3e10bb87bdb32396bce95f74e62a023f4efaf99","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":291,"deletions":0,"files":["docs/parsers/lsusb.md"]},"message":"add lsusb docs"},{"commit":"fd5433ee6220357e59633c78b689aa432d056b43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":293,"files":["docs/lib.md","docs/parsers/lsusb.md","jc/lib.py"]},"message":"parse docstring formatting"},{"commit":"4568f2d06e8fc1c465c86c318d925586481af062","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/lib.md","jc/lib.py"]},"message":"formatting for parse docstring"},{"commit":"c36e513d1bcc07cd8f01ff59199950e5396da51b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":86,"insertions":88,"deletions":91,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"]},"message":"formatting"},{"commit":"8e089baf3fe30fed80e1c5cdde7c3046bb70ca5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":86,"insertions":8,"deletions":855,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"]},"message":"remove info class from docs"},{"commit":"386f6c317e104e797c2b55e3d21c8b064a83ac78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":89,"insertions":9552,"deletions":9939,"files":["docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/utils.md"]},"message":"update markdown processor settings"},{"commit":"75cd84ce8a86b3357c6cf5fe4fbc62d0f298a29a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":94,"insertions":11423,"deletions":10081,"files":["README.md","docgen.sh","docgen.sh.old","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/utils.md","jc/cli.py","man/jc.1"]},"message":"try new markdown conversion"},{"commit":"6fad44e35df5d0e33e716d0fcb84ed309e6fd30b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"fix type hint"},{"commit":"1caac750daa25a5abeb1289964e918ec06289bfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/lib.py"]},"message":"Update type hints"},{"commit":"16370dcb3d5cf1304c2340ef2253ef2987a982b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"update type hints"},{"commit":"c1302f2573993a6908001d6df0697486f54a9e7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":8,"files":["jc/lib.py"]},"message":"add type-hints to public api"},{"commit":"6f0ffe0955e4d9d6cc82552cf4e4f419e3ff3756","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"docu update"},{"commit":"1f89745fe7cca3a0ac27445942098b717675a481","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump"},{"commit":"a46ac18ef775bb2c52675e61e11c5d92f33cbe81","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["CHANGELOG"]},"message":"doc update"},{"commit":"1a05f1c575b57456481e41baaf551cef30115966","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":64,"deletions":54,"files":["jc/__init__.py","jc/cli.py","jc/lib.py"]},"message":"add parser info functions. move _get_parser functionality from cli to lib"},{"commit":"08f818aa42ca68050a79ec387c42bff265257fd5","merge":"027c231 b389665","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #199 from kellyjonbrazil/master\n\nsync to dev"},{"commit":"b3896650c230b4acc73704a50c93ee74e4034eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":62,"deletions":104,"files":["README.md","templates/readme_template"]},"message":"revert column formatting"},{"commit":"f285539526998a5097943c71dcecb2979036b2b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":104,"deletions":62,"files":["README.md","templates/readme_template"]},"message":"conform to 80 columns"},{"commit":"a896dcdf3b31b60582ebb1b3bca5d1103f998dd6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":338,"deletions":120,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"0a187d4ed08173ec360a006ae2367bb1f2f96c52","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"]},"message":"add console interview links"},{"commit":"2d65bc57d5a396e6683f970194de29494b5c1272","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/readme.md","jc/__init__.py"]},"message":"add quotes"},{"commit":"ab63809fde0cefe1f0401d957a3736fdb760f0cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"update description"},{"commit":"6f04707dc63936efd0e533ae36e1b39ead10c466","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add python package doc info to top of page"},{"commit":"d14a86a9b58bdc3cb0c8df1dfa495aefdaab8033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py"]},"message":"fix typo"},{"commit":"8e6a31d3da19926ac46744e02b27a899ca5fbd7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":14,"deletions":8,"files":["CHANGELOG","docs/readme.md","jc/__init__.py","jc/lib.py","man/jc.1","setup.py"]},"message":"minor fix for macOS binary"},{"commit":"6e7b6afe87355e96422bb2560ffcbd5e79d28f04","merge":"70cb445 027c231","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #198 from kellyjonbrazil/dev\n\nDev v1.18.0"},{"commit":"027c231097a002526350a93322407582a85db0cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"formatting"},{"commit":"f1cf7d1f953586dd44a4463d924f1a1f52717c37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":5,"files":["jc/parsers/foo.py","jc/parsers/foo_s.py"]},"message":"add helper function info"},{"commit":"df611cc263f50285e74ceb3381f55b43a74870a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting"},{"commit":"0f3143bbbb593340190e66729580146410012e14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting"},{"commit":"c280757b7624a46543e481ca47a6e084d2d6f519","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting"},{"commit":"d30b9d84ef5ec3a2a504f7ea251c932b8c9ea878","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting"},{"commit":"50ded1dbd97d26cf01d7e1a98b40e0f0f7d02202","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":4,"files":["docs/readme.md"]},"message":"doc update"},{"commit":"e319aea5a45c598a44f35b4e58131d977509e4f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":4,"files":["jc/__init__.py"]},"message":"add doc version info"},{"commit":"ba86509c1d8700a50fe14e9d931ee57261306c5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":9,"files":["jc/cli.py"]},"message":"simplify OSError exception handling"},{"commit":"0a9279ae6bfdd1aa59f5e9b31ce0af3bfec19f96","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["CHANGELOG","tests/test_lib.py"]},"message":"doc update"},{"commit":"a13dde12af01b4473aa9a34b8a0d7387fb48500a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":173,"insertions":173,"deletions":173,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py","man/jc.1"]},"message":"change raw output wording"},{"commit":"e2ed358de1abefd737c187a324cbe4734d6975e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["CHANGELOG"]},"message":"changelog update"},{"commit":"a2cd3666210be3727a00c3405972f32fbd421046","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["docs/_config.yml"]},"message":"Delete _config.yml"},{"commit":"15addd9bfc18a0e87beb97040b431c872b783662","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":8,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"doc fix"},{"commit":"a4e34b0053ec0c032f4783caaa3e07fc2c685a98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":63,"deletions":0,"files":["docgen.sh","docs/parsers/universal.md"]},"message":"add universal parser docs"},{"commit":"d09529ac302fbcc156d58cf836f8397c98121a76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update"},{"commit":"553097b5050dc02fbdaeec2e2e138e01bc6811d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/universal.py"]},"message":"docstring update"},{"commit":"49c556857708307f617b2b516f2d281398681b5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":35,"deletions":15,"files":["README.md","docs/lib.md","docs/readme.md","jc/__init__.py","jc/lib.py","man/jc.1","templates/readme_template"]},"message":"module doc update"},{"commit":"6962b9ee8a52c924dc2de6b79ddeea3636e80fe4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":6,"files":["docs/lib.md","jc/lib.py"]},"message":"formatting"},{"commit":"b4575a3f780f9aa2751c8b4789f67aaca32dd1cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":91,"deletions":1,"files":["docgen.sh","docs/lib.md","jc/lib.py"]},"message":"add lib docs"},{"commit":"35b54d235d73b2ce658223be3d6095906f142d89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add python package doc info"},{"commit":"583a5757e454a4e36b331057d1266279b55ee16a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":18,"insertions":34,"deletions":30,"files":["docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/file.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/traceroute.md","docs/parsers/ufw_appinfo.md","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/file.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/traceroute.py","jc/parsers/ufw_appinfo.py"]},"message":"formatting"},{"commit":"f355333eeed3c4afba844dc7bed5224356552adc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting"},{"commit":"4d7df109604e4f8367904968602acfc05217a7fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting"},{"commit":"66b2c28f4bc75fb76800f9fb7ea485eee194a9a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":24,"deletions":24,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting"},{"commit":"299a9c6d88fdf1fede447b4057d8f4263daef733","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":25,"deletions":57,"files":["docs/parsers/csv.md","docs/readme.md"]},"message":"formatting"},{"commit":"bd391d979ce98b126dab0f012a56b3fcb1f73439","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":55,"files":["jc/__init__.py"]},"message":"add lib function docs"},{"commit":"7309bd2282445f6daef0b1491ff60b8104500abb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":19,"deletions":10,"files":["jc/lib.py","jc/parsers/csv.py","jc/parsers/universal.py"]},"message":"add get_help"},{"commit":"ce84c09d3394b598f19a3e012ef27ce4154e3b3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/__init__.py"]},"message":"add get_help()"},{"commit":"b4fffbb6476daf78fbdf19dbf31bbeeab950d2dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":46,"insertions":501,"deletions":304,"files":["docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/history.md","docs/parsers/ini.md","docs/parsers/iostat_s.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsusb.md","docs/parsers/netstat.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/ps.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/upower.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/who.md"]},"message":"formatting"},{"commit":"3701b4198aad1826ad6da571fbcaa530b057cc48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":86,"insertions":710,"deletions":606,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"formatting"},{"commit":"d4c34098fa7ad2098076f0fa0564467e5d06f916","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/lib.py"]},"message":"formatting"},{"commit":"b3c531193b3fc53697e7d7823576f481f9462d53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":125,"deletions":71,"files":["CHANGELOG","docs/utils.md","jc/utils.py"]},"message":"formatting"},{"commit":"1d0e07c77bab5c48405323e52873c7952dd0a587","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":57,"deletions":55,"files":["docs/readme.md","jc/__init__.py","jc/lib.py"]},"message":"formatting"},{"commit":"06a322cf9c7468dc7e8ba05914e1d07bbc51f63a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":8,"files":["tests/test_lib.py"]},"message":"rename tests and add conversion function tests"},{"commit":"623d148712f93eacf9b7b5803140603f0af67acb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"doc update"},{"commit":"647e83d0439a0937db14a2cc97929e38a6b6a43b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["tests/test_lib.py"]},"message":"add test to ensure there are zero plugin parsers installed during tests"},{"commit":"91a554464444da0cc3ed3b4d212539232411f6cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/lib.py"]},"message":"doc update"},{"commit":"a1190998aef1bf403ee34c38c1a0fbd6291ac38b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":82,"deletions":0,"files":["tests/test_jc.py","tests/test_lib.py"]},"message":"add jc and jc.lib tests"},{"commit":"097d7a1850f6f6df73a5761c657b73ef9dbd3e29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/__init__.py"]},"message":"simplify __init__"},{"commit":"302bf72e720b3a67fbf1300eaff4f99fc343abeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":138,"insertions":718,"deletions":6,"files":["docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py"]},"message":"Update high-level API docs"},{"commit":"2c42baf3a4dd6733c078f31a1becd708a05f2c36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":34,"insertions":174,"deletions":0,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py"]},"message":"add new high-level api info"},{"commit":"03feb89c84096c0ea1d6ae3a0634ae7b8b507e8f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/readme.md","jc/__init__.py"]},"message":"add module list info"},{"commit":"9dd553192fbca3037b3afe5df6bae88f7a8a9365","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":29,"deletions":12,"files":["CHANGELOG","README.md","docs/readme.md","man/jc.1","templates/readme_template"]},"message":"doc update"},{"commit":"fa3f02e9d1ac7867e3465c2d214f4e4229ff4c66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump"},{"commit":"0a9dde58c5235f78c4c9ae9c013f7454482c6067","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":228,"deletions":134,"files":["jc/__init__.py","jc/cli.py","jc/lib.py"]},"message":"add jc.parse() high-level API"},{"commit":"70cb4453bebb235130e2c287633ecb1de6c2b0aa","merge":"e6900e2 830674c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #195 from kellyjonbrazil/dev\n\nDev v1.17.7"},{"commit":"830674cc6f19e107347a743baff7bbaab7f80b75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["CHANGELOG","jc/__init__.py","man/jc.1","setup.py"]},"message":"version bump"},{"commit":"fb406b58a12fdfe81bcff76671661af77e7f2fe5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["docs/parsers/stat_s.md","jc/parsers/stat_s.py","man/jc.1"]},"message":"formatting"},{"commit":"55b272e41259ddc835cf4eb513fb67e7b2cf1573","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat_s.py"]},"message":"tighten stat data detection"},{"commit":"94f62a9bf36242310790a0f37c66b2e6c6fdc078","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/stat_s.md","jc/parsers/stat_s.py"]},"message":"formatting"},{"commit":"8d19e4cb7b45e3b6cb8c404c959949b7593c9386","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":115,"deletions":1,"files":["CHANGELOG","README.md","docs/parsers/stat_s.md","man/jc.1"]},"message":"doc update"},{"commit":"7e510d48e0f8426a67cf8d70d06d0331c274d358","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":106,"deletions":2,"files":["jc/parsers/stat_s.py","tests/fixtures/centos-7.7/stat-streaming.json","tests/fixtures/freebsd12/stat-streaming.json",".../stat-filename-with-spaces-streaming.json","tests/fixtures/osx-10.14.6/stat-streaming.json","tests/fixtures/ubuntu-18.04/stat-streaming.json","tests/test_stat_s.py"]},"message":"simplify non-stat parse error logic"},{"commit":"7b20cffb143447f4497bc4e895eac2426e8a519f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/stat_s.py"]},"message":"simplify last item logic"},{"commit":"5c934c43c13b69183561da8a77280feb3363e950","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/stat_s.py"]},"message":"add continue to simplify logic"},{"commit":"8609298449e997ba4804d818f4fc23cb393ded7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/parsers/stat_s.py"]},"message":"update docstring"},{"commit":"72cb0dc10b2dac486d3e2a52cf44baf0d7496034","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":10,"files":["jc/parsers/stat_s.py"]},"message":"fixup for first and last items"},{"commit":"7b22fa81ded0f6f59e250ffea63c5d2a0f928b25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/parsers/stat_s.py"]},"message":"raise for non-stat data"},{"commit":"0b6a1307790e0793917bc2781e4873aa9dd67225","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/stat_s.py"]},"message":"ignore blank lines"},{"commit":"fdcf4338e0f099699f8d48df6382be1cc97dba84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["jc/parsers/stat_s.py"]},"message":"add examples to docstring"},{"commit":"ee43037f481286a34a766390568965fdd53af132","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/stat_s.py"]},"message":"remove unused continue lines"},{"commit":"26e365563c314e694915c7a3feae490ea99a112c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":50,"deletions":11,"files":["jc/parsers/stat_s.py"]},"message":"add schema and _process logic"},{"commit":"1b39586bb1b62aee8ae709512c2e3f79cefdb3d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":227,"deletions":0,"files":["jc/cli.py","jc/parsers/stat_s.py"]},"message":"add stat streaming parser"},{"commit":"8bb3a6bea34d60d49039f1ed72fd7e413edc05da","merge":"78672bd e6900e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #194 from kellyjonbrazil/master\n\nsync to dev"},{"commit":"e6900e2000bf265dfcfc09ffbfda39e9238661af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["EXAMPLES.md"]},"message":"add jar-manifest"},{"commit":"0ee244756bf39123e4873eb231156edbe7f0e0ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/jar_manifest.md","jc/parsers/jar_manifest.py"]},"message":"spelling"},{"commit":"6d5ac9abe6712e01887ce0d96c278a568319f405","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["docs/parsers/csv.md","docs/parsers/csv_s.md","man/jc.1"]},"message":"update docs"},{"commit":"44f6d9e1321459be8196aeebf6db088cc5120e61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"changelog update"},{"commit":"360154559c5dee6affa55bbdd5d2f473248b9168","merge":"241d53a 78672bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #193 from kellyjonbrazil/dev\n\nDev add csv doublequote fix"},{"commit":"78672bd7ad66c418e0ecf31add73f887b0946d29","merge":"bc7973a 65d96e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #190 from shaikustin/csv-doubleqouted\n\nfix doubleqoute in csv"},{"commit":"65d96e26b59e231c77c1dbba1dc91708c33de30c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":13,"deletions":0,"files":["tests/fixtures/generic/csv-doubleqouted-streaming.json","tests/test_csv_s.py"]},"message":"add streaming tests"},{"commit":"241d53af9a5c9bba70e28835e22c52c0060269ba","merge":"f733100 bc7973a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #192 from kellyjonbrazil/dev\n\nDev v1.17.6"},{"commit":"5563829df2849a899df2e9211d6c92bddc695f9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/csv_s.py"]},"message":"make dialect sniff behavior match non-streaming parser"},{"commit":"3a4a27e1f94ee07352c7616c57ec655c1aea04f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/csv.py"]},"message":"version bump"},{"commit":"9c887a36a804d817c3f669a55b9b1566d09d645d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/csv_s.py"]},"message":"update csv_s parser with csv changes"},{"commit":"bc7973af36e13006230b5faa9e201e300d468912","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","jc/cli.py","man/jc.1"]},"message":"update copyright"},{"commit":"32972d8fdbdc71923978fd5c2a87fd6cfa4b7f8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":122,"deletions":9,"files":["CHANGELOG","README.md","docs/parsers/jar_manifest.md","jc/__init__.py","jc/parsers/jar_manifest.py","man/jc.1","setup.py"]},"message":"doc update"},{"commit":"b128d9109cbdb1176f2473d450023bb0be02531b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":46,"deletions":0,"files":["tests/test_jar_manifest.py"]},"message":"add MANIFEST.MF tests"},{"commit":"929d7273a422c2bd5b83e5e19d32630f1a027f75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/jar_manifest.py"]},"message":"doc updates"},{"commit":"2a40f842743a8745d651b4b6cae645045e6c6aab","author":"shaik","author_email":"shai.kustin@torq.io","commit_by":"shaik","commit_by_email":"shai.kustin@torq.io","stats":{"files_changed":4,"insertions":22,"deletions":1,"files":["jc/parsers/csv.py","tests/fixtures/generic/csv-doubleqouted.csv","tests/fixtures/generic/csv-doubleqouted.json","tests/test_csv.py"]},"message":"fix doubleqoute in csv"},{"commit":"9ff6fa818f0857321e4b3b089d288997f2ae27af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add jar-manifest"},{"commit":"dac73a4bfe24e36474fdf6ff60c23e784ca409bd","merge":"d789554 f733100","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #189 from kellyjonbrazil/master\n\nuse github releases instead of packaging site"},{"commit":"d7895547f74744e82317eabe4c870115701872be","merge":"f8e09ae b7d439c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #188 from listuser/new_branch\n\nCreate key value pairs from a MANIFEST.MF file, to include key multiline value pairs."},{"commit":"b7d439cb870e443e4f4e4a2137ab170835e77eff","author":"listuser","author_email":null,"commit_by":"listuser","commit_by_email":null,"stats":{"files_changed":3,"insertions":2220,"deletions":9,"files":["jc/parsers/{jar-manifest.py => jar_manifest.py}","tests/fixtures/rhel-8/MANIFEST.MF.MULTI.json","tests/fixtures/rhel-8/MANIFEST.MF.MULTI.out"]},"message":"Renamed jar-manifest.py to jar_manifest.py, added multi manifest outputs to tests..."},{"commit":"7cc903a5f5ca368be97babadc72689375567a901","author":"listuser","author_email":null,"commit_by":"listuser","commit_by_email":null,"stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/jar-manifest.py"]},"message":"Removed inflating from examples in jar-manifest.py"},{"commit":"c495a8291bd3e1fd070ee2e018b9b550f9c86314","author":"listuser","author_email":null,"commit_by":"listuser","commit_by_email":null,"stats":{"files_changed":1,"insertions":1,"deletions":292,"files":["tests/fixtures/rhel-8/MANIFEST.MF.json"]},"message":"Updated test output in MANIFEST.MF.json"},{"commit":"5e1d7d777c627fb17feda6e51d9640bbd0f03302","author":"listuser","author_email":null,"commit_by":"listuser","commit_by_email":null,"stats":{"files_changed":8,"insertions":304,"deletions":2544,"files":["jc/parsers/{metamf.py => jar-manifest.py}","tests/fixtures/rhel-8/MANIFEST.MF.json",".../rhel-8/{MANIFEST.MF => MANIFEST.MF.out}",".../rhel-8/cmds_used_to_generate_test_data.txt",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out"]},"message":"Renamed metamf.py to jar-manifest.py, plus other changes"},{"commit":"7edad3f676fe5560017ca9cb05ede6f46787e78f","author":"listuser","author_email":null,"commit_by":"listuser","commit_by_email":null,"stats":{"files_changed":8,"insertions":3042,"deletions":0,"files":["jc/parsers/metamf.py","tests/fixtures/rhel-8/MANIFEST.MF","tests/fixtures/rhel-8/MANIFEST.MF.json",".../rhel-8/cmds_used_to_generate_test_data.txt",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out"]},"message":"Create key value pairs from a MANIFEST.MF file, to include key multiline value pairs."},{"commit":"f7331001d4ab976e311458a16b6e5337da2e3aab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"]},"message":"use github releases instead of packaging site"},{"commit":"f8e09ae2ffe185d21305d566fad20f510df9890f","merge":"2e4f5a5 433c7cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #187 from kellyjonbrazil/master\n\nsync to dev"},{"commit":"433c7cc0f05e321ffe024845a908f3e856d4cd2b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/zipinfo.md","jc/parsers/zipinfo.py"]},"message":"formatting"},{"commit":"d753e71a7452310d45fa605a2e4c70320ed60dbb","merge":"3ac8d03 2e4f5a5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #186 from kellyjonbrazil/dev\n\nDev v1.17.5"},{"commit":"2e4f5a508b6c90f9e03dcbcf64efc0e2fc446666","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":6,"deletions":3,"files":["CHANGELOG","jc/__init__.py","man/jc.1","setup.py"]},"message":"version bump"},{"commit":"88b960eff6cb3739d0d243c8d8b3e8ad5b8eb97c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":144,"deletions":1,"files":["EXAMPLES.md","README.md","docs/parsers/zipinfo.md","man/jc.1"]},"message":"doc update"},{"commit":"88c77bd89e2c2a5f023e6638816c9153b6276d35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":47,"deletions":0,"files":["tests/fixtures/osx-10.14.6/zipinfo-multi.json","tests/test_zipinfo.py"]},"message":"add zipinfo tests"},{"commit":"51a7a4251fff518d8da78ffa41e7ba2e2cb47f12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":0,"files":["tests/fixtures/osx-10.14.6/zipinfo-multi.out"]},"message":"add multi-archive test output"},{"commit":"51d2f316f388d962c26aeb4f42affebec339e5a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":97,"deletions":72,"files":["jc/parsers/zipinfo.py"]},"message":"add multi-archive support"},{"commit":"ff78a46c4854339a097992701351ef471aff1671","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"add zipinfo parser"},{"commit":"ed4a9dc1d470f64bcc9de35b2d98568ffd50257d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":23,"files":["jc/parsers/zipinfo.py"]},"message":"formatting"},{"commit":"63182dba26040974cb8cada6f5910bb29b1fa3ed","merge":"b450697 9c1eaa9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #185 from listuser/new_branch\n\ncontributed zipinfo parser"},{"commit":"9c1eaa938934269fe4179da798acf5f119cde0cf","author":"Matt J","author_email":"none","commit_by":"Matt J","commit_by_email":"none","stats":{"files_changed":2,"insertions":68,"deletions":61,"files":["jc/parsers/zipinfo.py","tests/fixtures/rhel-8/zipinfo.json"]},"message":"revised zipinfo.py nested version"},{"commit":"bc520fcbcdfad6a53e51944391fd24512bed8128","author":"Matt J","author_email":"none","commit_by":"Matt J","commit_by_email":"none","stats":{"files_changed":2,"insertions":63,"deletions":53,"files":["jc/parsers/zipinfo.py","tests/fixtures/rhel-8/zipinfo.json"]},"message":"added zipinfo.py nested version"},{"commit":"46faac1a12a5b39d6a25427f6e8fdcca1204dbcd","author":"Matt J","author_email":"none","commit_by":"Matt J","commit_by_email":"none","stats":{"files_changed":2,"insertions":1222,"deletions":0,"files":["tests/fixtures/rhel-8/zipinfo.json","tests/fixtures/rhel-8/zipinfo.out"]},"message":"add test data zipinfo.json and zipinfo.out"},{"commit":"3c424c0cb3cff462a963183585b57bea004e974f","author":"Matt J","author_email":"none","commit_by":"Matt J","commit_by_email":"none","stats":{"files_changed":1,"insertions":165,"deletions":0,"files":["jc/parsers/zipinfo.py"]},"message":"initial commit zipinfo.py to new_branch"},{"commit":"3ac8d0362b4fb9999fc55a60a9cb20ac80d114f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"use quotes around python versions"},{"commit":"d88b998e6c7826a9ecae18663328e2d2915030fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"]},"message":"formatting"},{"commit":"a9ed55c00652a563391a7930c7a4649967131ae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":11,"deletions":11,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]},"message":"fix spelling"},{"commit":"ea614341232e5272ee0c7fd46ba0f313033c761f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":16,"deletions":8,"files":["docs/parsers/crontab.md","docs/parsers/crontab_u.md","jc/parsers/crontab.py","jc/parsers/crontab_u.py"]},"message":"fix schema docs"},{"commit":"a73d0d26cbe2860b8374661068e09e0717a3bab2","merge":"a7de911 b450697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #184 from kellyjonbrazil/dev\n\nDev 1.17.4"},{"commit":"b4506976e3c865397bc657183d49c484d8bcfd7a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["man/jc.1","templates/manpage_template"]},"message":"formatting"},{"commit":"34cb75a09697a06c3878f2f9a84eb3bd2a90ae62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/__init__.py","setup.py"]},"message":"version bump"},{"commit":"34df643f60712ae25645cb7cddff80e43c12262b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":18,"deletions":0,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"add disable colors section"},{"commit":"ac7c13fcc013d386f34db51d634298fa3e97eccd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":11,"deletions":1,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"add -C option to docs"},{"commit":"4fdb34c7d5fcaa65e2ccab814c3acf2f0f70c442","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"add no-color.org"},{"commit":"7ac468e35aac1a63c4e22f33aead74a6e41a22a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update"},{"commit":"df190aa299f1669d1fe09380026ae086839abc02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":15,"deletions":7,"files":["jc/cli.py"]},"message":"add -C option to force color even with pipes"},{"commit":"9621475e86fe20fcdc2902b6ce7860a833ae2ca0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update"},{"commit":"82e0160de820ad2ed6143f58458711d600b929a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"refactor NO_COLOR test"},{"commit":"d03fb8b626a97e81006d0b108c8f400fe4e2ce3b","merge":"b300dfb 7933dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"b300dfb3d75fe76e2ddbb087ff742dd0b5e6155b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"Add support for NO_COLOR env variable"},{"commit":"a7de9111d97e687cafbc0709ec3ff7453d658a80","merge":"21e69a7 7933dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #183 from kellyjonbrazil/dev\n\nDev v1.17.3"},{"commit":"7933dfdbe7bf400833d6f6b771362dfc518b9a8d","merge":"f7cb5f7 21e69a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge branch 'master' into dev"},{"commit":"f7cb5f7d01ac01538bee4da816408072b585768e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"update date"},{"commit":"a26a298f1a3c141171e7d7ce459a27a297cec031","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":148,"deletions":1,"files":["README.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","man/jc.1"]},"message":"doc update"},{"commit":"dbd134d0dac2fc152183480958fd9e65919ac98d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/iostat_s.py"]},"message":"add examples to docs"},{"commit":"11aa01b0d9d6913059f98f9bd7591d7cad9037cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":15,"insertions":15,"deletions":1,"files":["jc/parsers/iostat_s.py","tests/fixtures/centos-7.7/iostat-1-streaming.json","tests/fixtures/centos-7.7/iostat-m-streaming.json","tests/fixtures/centos-7.7/iostat-mx-streaming.json","tests/fixtures/centos-7.7/iostat-streaming.json","tests/fixtures/centos-7.7/iostat-x-streaming.json","tests/fixtures/ubuntu-18.04/iostat-1-streaming.json","tests/fixtures/ubuntu-18.04/iostat-m-streaming.json","tests/fixtures/ubuntu-18.04/iostat-mx-streaming.json","tests/fixtures/ubuntu-18.04/iostat-streaming.json","tests/fixtures/ubuntu-18.04/iostat-x-streaming.json","tests/fixtures/ubuntu-20.10/iostat-m-streaming.json","tests/fixtures/ubuntu-20.10/iostat-mx-streaming.json","tests/fixtures/ubuntu-20.10/iostat-streaming.json","tests/fixtures/ubuntu-20.10/iostat-x-streaming.json"]},"message":"iostat-s tests"},{"commit":"6f18e5344356684e845ec63158c570d82156254f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":203,"deletions":0,"files":["tests/test_iostat_s.py"]},"message":"fix for null lines"},{"commit":"7b467c466568ad4e7986d4d7cf3ec606681b6d46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":137,"deletions":0,"files":["tests/fixtures/ubuntu-20.10/iostat-m.json","tests/fixtures/ubuntu-20.10/iostat-m.out","tests/fixtures/ubuntu-20.10/iostat-mx.json","tests/fixtures/ubuntu-20.10/iostat-mx.out","tests/fixtures/ubuntu-20.10/iostat-x.json","tests/fixtures/ubuntu-20.10/iostat-x.out","tests/fixtures/ubuntu-20.10/iostat.json","tests/fixtures/ubuntu-20.10/iostat.out","tests/test_iostat.py"]},"message":"add ubuntu 20.10 tests"},{"commit":"537b8f263087894c02b5b7c121765cf96182a370","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"]},"message":"add more int conversions"},{"commit":"4d823575e791999e200dedd491511c4fde64fc2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"]},"message":"add more float fields"},{"commit":"541aa1d09f20ff6979eabaa66790decb3895f18d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":68,"deletions":8,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"]},"message":"Add new field float conversions for iostat v11"},{"commit":"8f02021014b7b19acf1a8bbd777161aa82c65d66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/iostat_s.py"]},"message":"formatting"},{"commit":"158a15157c7e5dde95dc21766d0696bd82486688","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update"},{"commit":"2752e0d66a9ba0b57ac86913fd302ada23c280c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":166,"deletions":0,"files":["jc/cli.py","jc/parsers/iostat_s.py"]},"message":"add iostat streaming parser"},{"commit":"6c11e912afe3c4d16da9199b5c2fc10461928ac3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"update changelog"},{"commit":"43d34461e27e3e4ac5f985786831c170b348c7c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":83,"insertions":279,"deletions":81,"files":["README.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/utils.md","man/jc.1"]},"message":"update docs"},{"commit":"4dfdc9b0f65d8c950ed74545d0cc3f95c8abec6c","merge":"e2311cb 6665ffa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"e2311cbb03f407414df953c8d1c07d0cf1a549ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":400,"deletions":0,"files":["tests/fixtures/centos-7.7/iostat-1.json","tests/fixtures/centos-7.7/iostat-1.out","tests/fixtures/centos-7.7/iostat-m.json","tests/fixtures/centos-7.7/iostat-m.out","tests/fixtures/centos-7.7/iostat-mx.json","tests/fixtures/centos-7.7/iostat-mx.out","tests/fixtures/centos-7.7/iostat-x.json","tests/fixtures/centos-7.7/iostat-x.out","tests/fixtures/centos-7.7/iostat.json","tests/fixtures/centos-7.7/iostat.out","tests/fixtures/ubuntu-18.04/iostat-1.json","tests/fixtures/ubuntu-18.04/iostat-1.out","tests/fixtures/ubuntu-18.04/iostat-m.json","tests/fixtures/ubuntu-18.04/iostat-m.out","tests/fixtures/ubuntu-18.04/iostat-mx.json","tests/fixtures/ubuntu-18.04/iostat-mx.out","tests/fixtures/ubuntu-18.04/iostat-x.json","tests/fixtures/ubuntu-18.04/iostat-x.out","tests/fixtures/ubuntu-18.04/iostat.json","tests/fixtures/ubuntu-18.04/iostat.out","tests/test_iostat.py"]},"message":"add iostat tests"},{"commit":"bf15575e90985cfec5c57dd11dfa2b86d53a41be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":7,"files":["jc/parsers/iostat.py"]},"message":"fixes for ubunut"},{"commit":"406336c7185b539b5e00532b58146d5b1b73f259","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":44,"deletions":0,"files":["EXAMPLES.md"]},"message":"add iostat example"},{"commit":"6665ffaeb8107e9db3b917db0663beaf44024533","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"remove python 3.6 from tests"},{"commit":"dcf552ca0c69aa5f0309a83dc33dee7c5ed81292","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":138,"deletions":47,"files":["jc/parsers/iostat.py"]},"message":"add _process and cleanup"},{"commit":"7a6ebf3c9555dd82df7dc0b71981cdd32ce0061d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":171,"deletions":0,"files":["jc/cli.py","jc/parsers/iostat.py"]},"message":"add iostat parser"},{"commit":"d2dc4a983c86c538e13e568b908072de4ca0daaf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"]},"message":"changelog update"},{"commit":"1168259bc23862f671326d41f5282a3575205214","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"]},"message":"add doc strings"},{"commit":"e8e4b46021557fbf5776c32dff46de022817fb6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":14,"deletions":19,"files":["jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]},"message":"use jc.utils type checks"},{"commit":"12d2de22821fd8f57f4d412e62f53db3d89d5e30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":77,"insertions":181,"deletions":165,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/utils.py"]},"message":"use jc.utils.input_type_check() and simplify compatibility check"},{"commit":"0e2fe401e1c49a9f947d7d17b72cfc4e90787f47","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]},"message":"version bump"},{"commit":"14247adb0ae007924ca551a706eb0cfdbae97a41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["jc/parsers/csv_s.py","tests/test_csv_s.py"]},"message":"add input type checks"},{"commit":"3a9f0934c41c85ea7fa87165b9559f08814645cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":3,"files":["jc/parsers/ls_s.py","tests/test_ls_s.py"]},"message":"add input type checks"},{"commit":"caf0a5c8713bf0d72951a2c6fd5a2c62c9eb59d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":4,"files":["jc/parsers/vmstat_s.py","tests/test_vmstat_s.py"]},"message":"add input type checking"},{"commit":"cfb58b1cf3e3028f8e03fdd93f0165cf8d230e1e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/parsers/foo_s.py"]},"message":"add input type checks"},{"commit":"975cf195cc02774f50460ca479d9ebb7b73c7870","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping_s.py"]},"message":"formatting"},{"commit":"8a46a259a36efc55bb0b2141acb9dd5ae52b7725","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["jc/parsers/ping_s.py","tests/test_ping_s.py"]},"message":"add input type checks"},{"commit":"e395142e599aa78b4a7ec80dcc3f8ccf279f97b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"]},"message":"version bump"},{"commit":"caaeaf0d67cf44f8d2651cc53a7528d3ef0c74d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":76,"insertions":227,"deletions":227,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"add 'str' type check on input"},{"commit":"21e69a7cbf62240238f6fb78e874dda6ce2e922a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"]},"message":"ignore _config.yml"},{"commit":"603964935b58e02cf0614cf67ffacc6d94755e05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CHANGELOG"]},"message":"remove trailing whitespace"},{"commit":"47eb83ae55b9892716fff712bd2be21b6191b552","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"]},"message":"add .vscode"},{"commit":"fc0ce6c95923ab124961e695a26c0b68dd0f359f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"add streaming parser to custom parsers info"},{"commit":"077a29fb4eedcfccb026498c5c3a64b7b7601363","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":2,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"]},"message":"add _jc_meta field info"},{"commit":"8568d0d328706a7a5b1476452e078d8cbe7b7391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":3,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py","man/jc.1"]},"message":"fix csv_s documentation"},{"commit":"597d39c28ea0c0fe3b072413e9d91ab5e27b62bd","merge":"b59e38c eb888dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #180 from kellyjonbrazil/dev\n\nDev v1.17.2"},{"commit":"eb888dcbbcf83c9197bd59aab72f65ea6eb622ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["jc/__init__.py","man/jc.1","setup.py"]},"message":"version bump"},{"commit":"d1b9ac0841b15ee15690c4066453a322618320ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/df.md","docs/parsers/netstat.md","docs/parsers/ping.md","man/jc.1"]},"message":"doc update"},{"commit":"89a6d9c5c39b74f1b040f410659bfd7ae1a902d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/df.py"]},"message":"add key-check to restore previous behavior even with non-df data"},{"commit":"85d983761637129cb85abfb0bbdde7c507061cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add df info"},{"commit":"cd7731484d826d84d835ecd460d746e78cadc5fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":62,"deletions":2,"files":["jc/parsers/df.py","tests/fixtures/generic/df-long-filesystem.json","tests/fixtures/generic/df-long-filesystem.out","tests/test_df.py"]},"message":"fix for cases where the Filesystem data overflows the column length (happens on older versions of df)"},{"commit":"086da16b1743c16a5ccdd102f889fb31f99e3caa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"version bump"},{"commit":"20830528f04a5ecbe78420d8008249b089667767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":28,"deletions":0,"files":["CHANGELOG","tests/fixtures/generic/netstat-old.json","tests/fixtures/generic/netstat-old.out","tests/test_netstat.py"]},"message":"add test for older netstat version fix"},{"commit":"83371edd8fe3d23dfa92fc707604086522c85ab9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat_linux.py"]},"message":"add space before inode to compensate for removed dash"},{"commit":"364a81decc16742e3caa070d90b1d605d96fe2c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ping.py"]},"message":"version bump"},{"commit":"ef09592ad3e5c9a77c1bdebe8f876fc4dde54834","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["CHANGELOG"]},"message":"update for 1.17.2"},{"commit":"4a86e109ccb254d5195b782f84f3967c96ef726c","merge":"5ba22da 7fa5391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #179 from shaikustin/ping-alpine-linux\n\nsupport alpine linux ping"},{"commit":"7fa5391b6613e62689c624041e03f9750c9c7972","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_ping.py"]},"message":"change alpine ping6 to ping"},{"commit":"9b53ba5714819ff760f2d4546f5d2ee4d521c080","author":"shaik","author_email":"shai.kustin@torq.io","commit_by":"shaik","commit_by_email":"shai.kustin@torq.io","stats":{"files_changed":6,"insertions":45,"deletions":1,"files":["jc/parsers/ping.py",".../fixtures/alpine-linux-3.13/ping-hostname.json","tests/fixtures/alpine-linux-3.13/ping-hostname.out","tests/fixtures/alpine-linux-3.13/ping-ip.json","tests/fixtures/alpine-linux-3.13/ping-ip.out","tests/test_ping.py"]},"message":"support alpine linux ping"},{"commit":"b59e38cfd2c8a7f5868e05d5562557b1c27e5e56","merge":"30cff5f 5ba22da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #176 from kellyjonbrazil/dev\n\nDev v1.17.1"},{"commit":"5ba22dae597b9d154ca0a82f71cfbd8d8a6325db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"]},"message":"add JSON lines info"},{"commit":"4232e523acc523e510b4881d2a57a95b88ec8c8b","merge":"bee80b3 30cff5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge branch 'master' into dev"},{"commit":"bee80b35d2b8c15e6233f2798e9c02a11e9e1e9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["CHANGELOG","docs/parsers/csv_s.md","man/jc.1"]},"message":"update for version bump"},{"commit":"c32395f6950d6294770ee93e8bf4d79c7d275ac3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_utils.py"]},"message":"linting"},{"commit":"735c5e1078cc27b5cba03b8ebbae15aeca6b8fbd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["tests/test_csv_s.py"]},"message":"update comments for ParseError test: https://bugs.python.org/issue45617"},{"commit":"d09c94b292ca3beec92a00f8a51b7259dd30a1e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add python 3.10 testing info"},{"commit":"4d04866f48f72b9ea0d213dc1533729d3b68a503","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/csv_s.py"]},"message":"add python bug https://bugs.python.org/issue45617 info"},{"commit":"a2d90f4dfcdc2cb00c6c0fa957493c95a21e256b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_csv_s.py"]},"message":"force test"},{"commit":"93a5002c8b530bd6f5f81e5d8595cde1f836ae41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"fix 3.10.0 version number"},{"commit":"23bf5227a4c39ea017e55fc21150331e1af6fdb7","merge":"77c96fa 3f5a1f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"77c96fa2a96148221bde7d2274e0dfb5386a166f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["tests/test_csv_s.py"]},"message":"try tests on python 3.10"},{"commit":"3f5a1f015e9c0807e227b9f7300592e25502e014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"add python 3.10"},{"commit":"b280c4fc18e60a85ab212b09aa5bf3a05a0eceff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":11,"deletions":19,"files":[".../fixtures/generic/csv-insurance-streaming.json","tests/test_csv_s.py"]},"message":"add ParseError test to streaming csv parser"},{"commit":"3ab9b43a2eebf535be98c94810ac474bf32ec515","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/csv_s.py"]},"message":"raise ParseError on newline bug"},{"commit":"46f568414a5c8d2f135486e86d0ada48cfcefeb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":96,"deletions":89,"files":["tests/test_ls_s.py","tests/test_ping_s.py","tests/test_vmstat_s.py"]},"message":"change streaming parser test names"},{"commit":"cba2fd299fff09a551b780e064a6e22bdf7e539a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":75,"deletions":61,"files":[".../generic/csv-10k-sales-records-streaming.json","tests/fixtures/generic/csv-deniro-streaming.json","tests/fixtures/generic/csv-example-streaming.json","tests/fixtures/generic/csv-flyrna-streaming.json","tests/fixtures/generic/csv-flyrna2-streaming.json",".../fixtures/generic/csv-homes-pipe-streaming.json","tests/fixtures/generic/csv-homes-streaming.json",".../fixtures/generic/csv-insurance-streaming.json","tests/test_csv_s.py"]},"message":"add tests"},{"commit":"1e6e44f656f1bbb277eb38fb485f7b48e3b9e40b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/csv_s.py"]},"message":"fix for piping data with non-platform newlines (e.g. windows csv files on unix)"},{"commit":"acac0399946d9781193e9350dd7109f1dd3999fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":149,"deletions":0,"files":["tests/fixtures/generic/csv-biostats-streaming.json","tests/fixtures/generic/csv-cities-streaming.json","tests/test_csv_s.py"]},"message":"working tests"},{"commit":"50a3b340164b3139f04f67a2bee16e5343c8a2da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":8,"files":["jc/parsers/csv_s.py"]},"message":"optimizations and use iter() so we can exhaust data coming from list objects"},{"commit":"b45396070cf28fa36ecb44acd7be3e3bb81a712d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_vmstat_s.py"]},"message":"update comment"},{"commit":"218b9aec8ac397e26e6cd4ff407f3d10ef88ea9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":87,"deletions":48,"files":["README.md","docs/parsers/csv_s.md","jc/parsers/csv_s.py","man/jc.1"]},"message":"doc update for streaming CSV parser"},{"commit":"2b887debc647bd533040e392465967d12869cb02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":10172,"deletions":1,"files":["CHANGELOG","jc/cli.py","jc/parsers/csv_s.py","tests/fixtures/generic/csv-10k-sales-records.csv"]},"message":"add csv streaming parser"},{"commit":"0313e3f8ca0e22e1575192d765d5afedf48e94df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":6,"files":["jc/parsers/lsusb.py"]},"message":"linting"},{"commit":"1669e6e20c3af3d28968558b76d0901a56775ac0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":28,"files":["jc/parsers/lsusb.py"]},"message":"linting"},{"commit":"ef6de75dda90c7221d53e0e0a942f0cac2247354","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["tests/test_utils.py"]},"message":"add vmstat timestamp tests to utils"},{"commit":"a6bcec425a3f44ba3c7cd06b5ebaf522b66df109","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"]},"message":"comment update"},{"commit":"596ad9a64d002ced212b08512126e52707fe73d2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"]},"message":"update comment"},{"commit":"7a91c93319f75c37ba6bf268d8270947f0bf8b22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":122,"deletions":0,"files":["EXAMPLES.md"]},"message":"add lsusb"},{"commit":"b5f7b35f89197879a9f13bd8fa5d2a0c77cc059a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"]},"message":"comment update"},{"commit":"2f47fb7f14c4ff0e1c835897d94ee81d14590aba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["tests/test_uname.py"]},"message":"fix ParseError tests"},{"commit":"1b214c403657a50689f2a04892ce836dea669a1d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":30,"deletions":0,"files":["jc/parsers/lsusb.py","tests/fixtures/generic/lsusb-t.out","tests/test_lsusb.py"]},"message":"raise ParseError if -t option is detected. add test"},{"commit":"8f94f8acc6bb53bbb19ba150551c7df2183a8863","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":384,"deletions":3,"files":["README.md","docs/parsers/file.md","docs/parsers/lsusb.md","docs/parsers/uname.md","man/jc.1","tests/fixtures/centos-7.7/lsusb-v-single.json","tests/fixtures/centos-7.7/lsusb-v.json","tests/fixtures/centos-7.7/lsusb.json","tests/fixtures/generic/lsusb-test-attributes.json","tests/fixtures/generic/lsusb-test-attributes2.json","tests/test_lsusb.py"]},"message":"add tests and update docs"},{"commit":"3a2a69cfa55e2f40d7536d923170a5cfc986998e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/parsers/lsusb.py"]},"message":"formatting"},{"commit":"f599c659881248b79c6dbc86d85a61311c9d3434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":464,"deletions":0,"files":["tests/fixtures/generic/lsusb-test-attributes.out","tests/fixtures/generic/lsusb-test-attributes2.out"]},"message":"add stress test examples"},{"commit":"ad12849fd9fc2177afb30740acc63cf284dc394b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":138,"deletions":26,"files":["jc/parsers/lsusb.py"]},"message":"update docs example and"},{"commit":"f36b3789e8df6673207d6c2d3d0796acfdfe011d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsusb.py"]},"message":"formatting"},{"commit":"6d18c0ba61cd188dbff736f1be47b7362c841687","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":47,"deletions":47,"files":["jc/parsers/lsusb.py"]},"message":"change variable name last_attribute and last_attr to last_item"},{"commit":"17097abec9567a58b5a5f7bbed11ecfd69cbd28c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":6,"files":["jc/parsers/lsusb.py"]},"message":"formatting"},{"commit":"b7ddd3b285f205211394edc70b611171cf72a4c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":22,"deletions":22,"files":["jc/parsers/lsusb.py"]},"message":"change variable names"},{"commit":"75b23f62c9d7b33907af92964d1a6234332fbc78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":35,"deletions":7,"files":["jc/parsers/lsusb.py"]},"message":"working configuration_descriptor and device_descriptor attributes"},{"commit":"f88967b2a59d79e053554d1e141f71e9d2d87456","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":126,"deletions":21,"files":["jc/parsers/lsusb.py"]},"message":"add attribute lists up to interface_association"},{"commit":"ba2846664b35b2e94aa905431c55c029b24a64e3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":22,"deletions":2,"files":["jc/parsers/lsusb.py"]},"message":"edpoint_descriptors attributes working"},{"commit":"10dba37ca2624e05eff246ef49df8ebd3f275d86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":28,"deletions":1,"files":["jc/parsers/lsusb.py"]},"message":"hub_descriptor attributes working"},{"commit":"0e6f938514965503f1d86d56c047f9f8fc03ac65","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":36,"deletions":45,"files":["jc/parsers/lsusb.py"]},"message":"working hub_port_status section"},{"commit":"159d87c1126f4d79d5e34837bc2c353a5445803b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":18,"deletions":7,"files":["jc/parsers/uname.py","tests/fixtures/centos-7.7/uname.out","tests/test_uname.py"]},"message":"add length guard and test for uname with no -a on linux"},{"commit":"9e7b1621cf232e9859bdf018737e536820f380a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":18,"files":["jc/parsers/lsusb.py"]},"message":"device_status working"},{"commit":"2057817ef8fec85b2a978b682e7fe8bc16def828","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":89,"deletions":0,"files":["tests/fixtures/debian10/uname-a.json","tests/fixtures/debian10/uname-a.out","tests/fixtures/freebsd12/uname-a.json","tests/fixtures/freebsd12/uname-a.out","tests/fixtures/freebsd12/uname-a2.json","tests/fixtures/freebsd12/uname-a2.out","tests/fixtures/generic/uname-a-different-proc.json","tests/fixtures/generic/uname-a-different-proc.out","tests/fixtures/generic/uname-a.json","tests/fixtures/generic/uname-a.out","tests/test_uname.py"]},"message":"add uname tests"},{"commit":"a1eabad2d37bb0d0e9407edf7305e223eba67da2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/uname.py"]},"message":"add comments"},{"commit":"92bf2b1ca2a172d3977d6e3c36b5ca1a8c2bab63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":20,"files":["CHANGELOG","jc/parsers/uname.py"]},"message":"simplify fixup logic for uname"},{"commit":"2b2123a4ba9b77d2089d367fe85dcb5d2857a295","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","jc/parsers/uname.py"]},"message":"add FreeBSD support"},{"commit":"908b2f9200ddcce4beb531a3c90908786b6a5b02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"]},"message":"add items"},{"commit":"deff0c7bfdf942b8d7e7bd140219e08bf80a50cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":5,"files":["jc/parsers/uname.py"]},"message":"remove print debug"},{"commit":"7cd01efa64029775042a2c145997ce30ef6b4f6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":25,"deletions":1,"files":["jc/parsers/uname.py"]},"message":"fixup for cases where the 'process' and/or 'machine' fields are blank on linux"},{"commit":"2dbe56456bbea2bdfce7eacbf8b9f10a1b249f55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":49,"deletions":39,"files":["jc/parsers/lsusb.py"]},"message":"add nested_dict. start work on hub_port_status and device_status"},{"commit":"6078a411ef612be8bad012aa404f34ebd74a1fd7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":79,"deletions":4,"files":["jc/parsers/lsusb.py"]},"message":"add initial schema doc"},{"commit":"4a3656562f161a51f5cb6f0e9ccd271859b78d62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["jc/parsers/lsusb.py"]},"message":"del null keys"},{"commit":"ba75989a24839907723ed7c3d7a497473d489a34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/lsusb.py"]},"message":"update comments"},{"commit":"9e9e2c362894f0072ab839565829881d750c8912","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsusb.py"]},"message":"move state instantiation before has_data test"},{"commit":"9a2a8c6b61a46a9bfb5a4492b86774a4a78672ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":52,"files":["jc/parsers/lsusb.py"]},"message":"shorten set_sections"},{"commit":"dae42ef1619441637672d634f9e5d7ab26115f09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":1,"files":["jc/parsers/lsusb.py"]},"message":"add hub_port_status and device_status"},{"commit":"931f2cab78bda180443535c04b532d04c6e88dd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":11,"files":["jc/parsers/lsusb.py"]},"message":"add hub_descriptor"},{"commit":"72b061bed4453686d264ccf8977cba6c2a4794ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":32,"deletions":8,"files":["jc/parsers/lsusb.py"]},"message":"add endpoint_descriptors"},{"commit":"29a7c73990d9620b15a4010d17fc9a9a859f44b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/parsers/lsusb.py"]},"message":"add hid_device_descriptor and report_descriptors"},{"commit":"2d1d68e3007f76d4c34ac07ae822935ab6021e79","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":87,"deletions":88,"files":["jc/parsers/lsusb.py"]},"message":"simplify populate_lists. Add CDC lists"},{"commit":"c5c1e170d1f502de5c76e9e481a23b26ffcaf237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":111,"deletions":76,"files":["jc/parsers/lsusb.py"]},"message":"interface descriptors working"},{"commit":"9c1bb66452838e704ef2277f313bb51a42dc03b9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/lsusb.py"]},"message":"fix remove _state field during schema_populate"},{"commit":"a4f3306bae90fbc807fdd9ff2ce71e25d36a663f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":69,"deletions":28,"files":["jc/parsers/lsusb.py"]},"message":"initial schema build. need to figure out why deleting _state from output_line causes exceptions"},{"commit":"1bc638b6ee7a820406ba4b84d3408f7cd4fe779d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":36,"deletions":32,"files":["jc/parsers/lsusb.py"]},"message":"add bus_list and add all device_list data to the list"},{"commit":"9ad0cd9dae8822235c37159541ce72471eb4263e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":116,"deletions":211,"files":["jc/parsers/lsusb.py"]},"message":"now storing state within the objects to make building the schema (later) easier."},{"commit":"6d4a4691276d8659253b2ac8f8bdbd71a1fece7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":356,"deletions":333,"files":["jc/parsers/lsusb.py"]},"message":"use class for state"},{"commit":"ed6997e3ff2e575a6d4daa7d7a2cbe7dddacdd4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":170,"deletions":34,"files":["jc/parsers/lsusb.py","tests/fixtures/centos-7.7/lsusb-v-single.out"]},"message":"add interface_association section"},{"commit":"eb788fca6e25eea1fa8a43b22360c852ecf5af35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":919,"deletions":0,"files":["jc/cli.py","jc/parsers/lsusb.py","tests/fixtures/centos-7.7/lsusb-v.out","tests/fixtures/centos-7.7/lsusb.out"]},"message":"somewhat working lsusb parser. needs a lot more TLC"},{"commit":"9186f5f37739012b8c04c776310a20ef55b1469f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":99,"deletions":4,"files":["CHANGELOG","jc/__init__.py","jc/parsers/file.py","setup.py","tests/fixtures/osx-10.14.6/file3.json","tests/fixtures/osx-10.14.6/file3.out","tests/test_file.py"]},"message":"fix file parser for gzip cases (has ': ' in the description, which is the delimiter)"},{"commit":"30cff5f28140a5b20a617c8145c13e43b7b6685b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":17,"deletions":3,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","man/jc.1"]},"message":"add note that the streaming parser outputs JSON Lines"},{"commit":"b724e0969a0d6b22bed0c77eb8d629381179ea3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"]},"message":"-qq instead of -q"},{"commit":"a62c49e8715873b068a96da5021ea24a783acd6b","merge":"77dcbc5 9b160f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #172 from kellyjonbrazil/master\n\nsync master to dev"},{"commit":"9b160f6279bbbf0c15413c98922eef137ba2f3f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]},"message":"link update"},{"commit":"338a4e2612f70bb3e2af31f61a7db75f647293fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]},"message":"formatting"},{"commit":"0140688750be61dd752059ee66734ab1c7a8f30e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":8,"deletions":4,"files":["README.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","templates/readme_template"]},"message":"link updates"},{"commit":"73e5ea98c1ca2b9299085e3832791162eca3b9ff","merge":"528aac7 77dcbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #170 from kellyjonbrazil/dev\n\njc v1.17.0 from dev"},{"commit":"77dcbc544da271edab5de5ad209117e98c846f9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":2,"deletions":3,"files":["CHANGELOG","jc/__init__.py","man/jc.1"]},"message":"final doc update"},{"commit":"c7bcb0947ae32acc9cdba7a6975d2f2557f10a39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"]},"message":"indent subsequent error and warning lines"},{"commit":"5cd3f7f71d38b560a88dd6057e9c7a94991a3d71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/foo_s.py"]},"message":"Add example to raise ParseError if there is no output data to yield"},{"commit":"5044388ab2e8d7d8b427fd51b0ab875611bd127f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":3,"files":["jc/parsers/vmstat_s.py","tests/test_vmstat_s.py"]},"message":"raise if line data is unrecognized"},{"commit":"ee075db59819d80e4dcb60ddbd9cfe2fd529dfe9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":5,"deletions":7,"files":["jc/cli.py","jc/parsers/foo_s.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"]},"message":"linting"},{"commit":"9904e0be61e7c81b907bf3770f111346daeff481","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/utils.md","jc/utils.py"]},"message":"formatting"},{"commit":"31b69b3242eeca2c02f87c31d58193dd3f06fe49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/utils.md","jc/utils.py"]},"message":"formatting"},{"commit":"e6a80fea3228122dd84e17672c835c0460ad1342","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":7,"files":["docs/utils.md","jc/utils.py","man/jc.1"]},"message":"formatting"},{"commit":"d6aec00e038d1ecfe43c13a6909d50630455b372","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":27,"deletions":1,"files":["tests/fixtures/ubuntu-18.04/vmstat-1-long-streaming.json","tests/fixtures/ubuntu-18.04/vmstat-1-long.json","tests/test_vmstat.py","tests/test_vmstat_s.py"]},"message":"add vmstat-1-long tests"},{"commit":"4aa7d81e11ea7fcfbb5c9d74337cde617b1a0d5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":50,"deletions":2,"files":["jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","tests/fixtures/ubuntu-18.04/vmstat-1-long.out"]},"message":"ignore re-printed header rows in output"},{"commit":"48cdabc3b0862d6291e1ec59ab385e0e146c31eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":16,"deletions":0,"files":["docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"]},"message":"document timestamps"},{"commit":"a1791ef5479749692c79bbe98fc7687d70cd6cda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"]},"message":"linting"},{"commit":"7bc87f6c2d4cfcfa656a1c1b8973a4c0414c85d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":8,"deletions":8,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","man/jc.1"]},"message":"change _meta to _jc_meta"},{"commit":"bbed9e274b8252ba0518140fe7fc97029310771f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":154,"deletions":159,"files":["jc/parsers/ping_s.py"]},"message":"linting"},{"commit":"486282b9856f5e56cf43ee1399d8e7cb78353b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/vmstat_s.py"]},"message":"linting"},{"commit":"a4d45b653f794033978940da14910f5d607a8254","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["jc/parsers/foo_s.py","jc/parsers/vmstat.py"]},"message":"linting"},{"commit":"22e151b01c0f97c141d912c9646e46df0320d622","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":56,"deletions":60,"files":["jc/cli.py","jc/utils.py"]},"message":"linting"},{"commit":"7a4ebcd1ecdb4929aae70e44b4f9b6b5ab52b393","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CONTRIBUTING.md"]},"message":"language hints"},{"commit":"651cbfe02fbb354c4caf8e0d022655642e7caed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"add streaming foo parser"},{"commit":"8c3e764516e1c28961b09380b638a57ce98b1261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"add streaming parser to contrib guidelines"},{"commit":"b4e75da7e3f23502723ce8b2a7261b376f296864","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"37223f086cabc8db5962415bd161fed151dafb9d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"a404033735c2c8075a8e08194197eae59db70afd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add error and warning message wrap info"},{"commit":"b7433ed085c0ba22ea0d49330871a651a8d83fb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":80,"deletions":41,"files":["docs/utils.md","jc/cli.py","jc/parsers/file.py","jc/parsers/ls.py","jc/parsers/traceroute.py","jc/utils.py"]},"message":"auto wrap warning and error messages"},{"commit":"224d3d65ada4216e28e142d411b0c2c3358517b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"Add exception class name to error message"},{"commit":"a349fb0bdabaf74503831f22c4efbd02254f809d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":10,"deletions":8,"files":["README.md","docs/utils.md","man/jc.1"]},"message":"change _meta to _jc_meta"},{"commit":"e7ddcfb83fb295034db44ade407476ff3a962cd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":14,"deletions":12,"files":["jc/utils.py","templates/manpage_template","templates/readme_template",".../centos-7.7/ping-ip-O-streaming-ignore-exceptions.json","tests/test_ping_s.py"]},"message":"change _meta to _jc_meta"},{"commit":"abd20dfe3662f65373ac582c70aa740e53b52f68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"formatting"},{"commit":"dc1fd3ef1be41aee349b159059f1febff76f6caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":12,"deletions":12,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"fix -qq docs"},{"commit":"98a7686db46fbd3ed98382867976249f307d0015","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":18,"insertions":160,"deletions":152,"files":["README.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","docs/utils.md","jc/cli.py","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","jc/utils.py","man/jc.1","templates/manpage_template","templates/readme_template","... => ping-ip-O-streaming-ignore-exceptions.json}","tests/test_ls_s.py","tests/test_ping_s.py","tests/test_vmstat_s.py"]},"message":"use -qq to ignore streaming exceptions"},{"commit":"9c6c6c4330fc68115be012de254161f36e3a8328","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"add next() info"},{"commit":"f9be5651daa891e06ad0acd8980ffc0fe51fd29d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":6,"files":["README.md","templates/readme_template"]},"message":"add language hints"},{"commit":"df9835a3e62bb2b3b6ec8b55f06a25a00a799d92","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"92363be2dd633bdd3c2dd07c72ebd281d2cb4565","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"fix streaming python module example"},{"commit":"31b62030156f9c826fe5c7d127e9dd0ace582dd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"18805858d685d456f9a38540bbaedbaa1a411546","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["man/jc.1","templates/manpage_template"]},"message":"formatting"},{"commit":"e676f0e20fb6e96a536c4d182b0d287cdc1ad0f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":36,"deletions":6,"files":["README.md","templates/readme_template"]},"message":"add streaming parser info for python module use"},{"commit":"20652edefaa7705b8ba756bae3944ff362a295a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["CHANGELOG"]},"message":"update changelog"},{"commit":"98c29d07478093e78f53ec633f2dd08cafc3e3ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":120,"deletions":0,"files":["tests/fixtures/centos-7.7/vmstat-a.json","tests/fixtures/centos-7.7/vmstat-at-5-10.json","tests/fixtures/centos-7.7/vmstat-awt.json","tests/fixtures/centos-7.7/vmstat-d.json","tests/fixtures/centos-7.7/vmstat-dt.json","tests/fixtures/centos-7.7/vmstat-w.json","tests/fixtures/centos-7.7/vmstat.json","tests/test_vmstat.py"]},"message":"add vmstat tests"},{"commit":"41a6311f6b3ed2cc94919d042aed51c46cdf3e2f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":132,"deletions":1,"files":["tests/fixtures/centos-7.7/vmstat-a-streaming.json",".../centos-7.7/vmstat-at-5-10-streaming.json",".../fixtures/centos-7.7/vmstat-awt-streaming.json","tests/fixtures/centos-7.7/vmstat-d-streaming.json","tests/fixtures/centos-7.7/vmstat-dt-streaming.json","tests/fixtures/centos-7.7/vmstat-streaming.json","tests/fixtures/centos-7.7/vmstat-w-streaming.json","tests/test_ping_s.py","tests/test_vmstat_s.py"]},"message":"add streaming parser tests"},{"commit":"978760ec57e04e3ec347c8764bfad015b6dddbff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"add exception class name to error string"},{"commit":"d410425537817964ceb7b61e0fdff6c03fdf8766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":136,"deletions":136,"files":["docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"]},"message":"replace single quotes with double quotes in doc"},{"commit":"6b7430329cbe1bfb95b47bcfe031906641c127e1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":269,"deletions":1,"files":["README.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat_s.py","man/jc.1"]},"message":"doc update"},{"commit":"40fe0d4a6081a1233bf5c3eb51a01da1f12bc4dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":141,"deletions":22,"files":["jc/parsers/vmstat_s.py"]},"message":"working parser"},{"commit":"365c5354a0349e470558d15243217a064e73da38","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/vmstat.py"]},"message":"remove debug print statement"},{"commit":"b246a05cbb4c1c564f81b3e72cecb62edbe6ced6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"fix vmstat-s name"},{"commit":"9e5a7a4abb8668d043625951a05eb5733cbbd56f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":37,"deletions":0,"files":["tests/fixtures/centos-7.7/vmstat-a.out","tests/fixtures/centos-7.7/vmstat-at-5-10.out","tests/fixtures/centos-7.7/vmstat-awt.out","tests/fixtures/centos-7.7/vmstat-d.out","tests/fixtures/centos-7.7/vmstat-dt.out","tests/fixtures/centos-7.7/vmstat-w.out","tests/fixtures/centos-7.7/vmstat.out"]},"message":"add vmstat sample output"},{"commit":"f266acbccafc040c375723147b8e5d7fddb1e697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":106,"deletions":14,"files":["jc/parsers/vmstat.py"]},"message":"add processing logic"},{"commit":"4e3b471f1801f1b9006b18cae2a3d816f361262e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/utils.py"]},"message":"add format for vmstat"},{"commit":"5e28736c2e0c951e71e6531e03a9619279d95d3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"]},"message":"add vmstat and vmstat_s"},{"commit":"a91913a3b517ea0dbb25d6e4cc92850eb2fde5ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":106,"deletions":0,"files":["jc/parsers/vmstat_s.py"]},"message":"streaming parser template"},{"commit":"90c64f0ae0d97d025adee40970d89baca79ee4ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":182,"deletions":0,"files":["jc/parsers/vmstat.py"]},"message":"initial working parser"},{"commit":"7cc642ed1a476abda709ac9b79900a1de12e1ef7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/foo_s.py"]},"message":"formatting"},{"commit":"809f64d35a92bb3d7380fa9d78ac1421a10b81fc","merge":"ff0fda4 a6f859a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #169 from kellyjonbrazil/streaming\n\nStreaming to dev"},{"commit":"a6f859a55edae50fcc185948736218404cfaa929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":18,"insertions":168,"deletions":153,"files":[".../osx-10.14.6/ping-hostname-p-streaming.json",".../osx-10.14.6/ping-hostname-s-streaming.json",".../osx-10.14.6/ping-hostname-streaming.json",".../osx-10.14.6/ping-ip-dup-streaming.json",".../fixtures/osx-10.14.6/ping-ip-p-streaming.json",".../fixtures/osx-10.14.6/ping-ip-s-streaming.json","tests/fixtures/osx-10.14.6/ping-ip-streaming.json",".../osx-10.14.6/ping-ip-unreachable-streaming.json",".../osx-10.14.6/ping6-hostname-p-streaming.json",".../osx-10.14.6/ping6-hostname-s-streaming.json",".../osx-10.14.6/ping6-hostname-streaming.json",".../osx-10.14.6/ping6-ip-dup-streaming.json",".../fixtures/osx-10.14.6/ping6-ip-p-streaming.json",".../fixtures/osx-10.14.6/ping6-ip-s-streaming.json","tests/fixtures/osx-10.14.6/ping6-ip-streaming.json","tests/fixtures/pi/ping-ip-O-D-streaming.json","tests/fixtures/pi/ping-ip-O-streaming.json","tests/test_ping_s.py"]},"message":"add final ping_s tests"},{"commit":"39ef88078f43708e470d3c1b2fd95e76b5cbeb08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/ping_s.py"]},"message":"add destination_ip to error lines"},{"commit":"aeea5e8d2eab2fef3e14637f512aed7b117c4a3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/test_ls_s.py"]},"message":"formatting"},{"commit":"1a0700bff4bdebbd9f1f92f2fc7a56c4d5ed6925","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":31,"insertions":240,"deletions":213,"files":[".../fedora32/ping-hostname-O-D-p-s-streaming.json",".../fedora32/ping-hostname-O-p-streaming.json",".../fedora32/ping-hostname-O-streaming.json","tests/fixtures/fedora32/ping-ip-O-D-streaming.json","tests/fixtures/fedora32/ping-ip-O-streaming.json",".../fedora32/ping6-hostname-O-D-p-s-streaming.json",".../fedora32/ping6-hostname-O-p-streaming.json",".../fedora32/ping6-ip-O-D-p-streaming.json",".../fixtures/fedora32/ping6-ip-O-p-streaming.json",".../freebsd12/ping-hostname-p-streaming.json",".../freebsd12/ping-hostname-s-streaming.json",".../freebsd12/ping-hostname-streaming.json","tests/fixtures/freebsd12/ping-ip-p-streaming.json","tests/fixtures/freebsd12/ping-ip-s-streaming.json","tests/fixtures/freebsd12/ping-ip-streaming.json",".../freebsd12/ping6-hostname-p-streaming.json",".../freebsd12/ping6-hostname-s-streaming.json",".../freebsd12/ping6-hostname-streaming.json","tests/fixtures/freebsd12/ping6-ip-p-streaming.json","tests/fixtures/freebsd12/ping6-ip-s-streaming.json","tests/fixtures/freebsd12/ping6-ip-streaming.json",".../ping-hostname-O-D-p-s-streaming.json",".../ubuntu-18.04/ping-hostname-O-p-streaming.json",".../ubuntu-18.04/ping-hostname-O-streaming.json",".../ubuntu-18.04/ping-ip-O-D-streaming.json",".../fixtures/ubuntu-18.04/ping-ip-O-streaming.json",".../ping6-hostname-O-D-p-s-streaming.json",".../ubuntu-18.04/ping6-hostname-O-p-streaming.json",".../ubuntu-18.04/ping6-ip-O-D-p-streaming.json",".../ubuntu-18.04/ping6-ip-O-p-streaming.json","tests/test_ping_s.py"]},"message":"add more ping-s tests"},{"commit":"b5fa6d068f240671eb948b055cd4f7bf127e0ec0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":25,"deletions":5,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"]},"message":"update docs"},{"commit":"1baec0b420feff068f2dc1e35499f78aa7d0a6e0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":815,"deletions":0,"files":[".../ping-hostname-O-D-p-s-streaming.json",".../centos-7.7/ping-hostname-O-p-streaming.json",".../centos-7.7/ping-hostname-O-streaming.json",".../fixtures/centos-7.7/ping-ip-O-D-streaming.json",".../centos-7.7/ping-ip-O-streaming-quiet.json","tests/fixtures/centos-7.7/ping-ip-O-streaming.json",".../fixtures/centos-7.7/ping-ip-dup-streaming.json",".../ping6-hostname-O-D-p-s-streaming.json",".../centos-7.7/ping6-hostname-O-p-streaming.json",".../centos-7.7/ping6-ip-O-D-p-streaming.json",".../centos-7.7/ping6-ip-O-p-streaming.json",".../centos-7.7/ping6-ip-dup-streaming.json","tests/test_ping_s.py"]},"message":"add some streaming tests"},{"commit":"4f2a4e1dee9d722d2aa5ddf2c082a358c88cf640","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/parsers/ping_s.py"]},"message":"skip blank lines and warning lines"},{"commit":"758d617668d1f9d0f27b52d46749e5b67a570cf1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":5,"deletions":5,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"]},"message":"doc update"},{"commit":"55322c37f57a9c8e28641a61928fad2329f5e50d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/foo_s.py"]},"message":"formatting"},{"commit":"d19ea5552bb3a379f7f92bcb58794c557ecc6647","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":193,"deletions":0,"files":["tests/fixtures/centos-7.7/ls-al-streaming.json","tests/fixtures/centos-7.7/ls-alR-streaming.json","tests/fixtures/centos-7.7/ls-alh-streaming.json","tests/fixtures/osx-10.14.6/ls-al-streaming.json","tests/fixtures/osx-10.14.6/ls-alR-streaming.json","tests/fixtures/osx-10.14.6/ls-alh-streaming.json",".../osx-10.14.6/ls-lR-empty-folder-streaming.json","tests/fixtures/ubuntu-18.04/ls-al-streaming.json","tests/fixtures/ubuntu-18.04/ls-alR-streaming.json","tests/fixtures/ubuntu-18.04/ls-alh-streaming.json",".../fixtures/ubuntu-18.04/ls-l-iso-streaming.json","tests/test_ls_s.py"]},"message":"add streaming ls parser tests"},{"commit":"130c3527c1083d399deef00ee8fcaa75f609b485","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":25,"deletions":25,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","man/jc.1"]},"message":"update docstrings"},{"commit":"3f221f471416766a860bd19850afda4899ee5eb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"]},"message":"doc update"},{"commit":"d64c4cb39056bb869fc117477612ae5ae2ef3d85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":141,"deletions":1,"files":["man/jc.1","templates/manpage_template"]},"message":"add streaming parsers section"},{"commit":"448c56aa46b72438e4a4c83b10a7eb889e3f50e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"9fbea15b6d031baa8c90f2602e39de7cf51408e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":8,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"]},"message":"rename state class to _state"},{"commit":"932060314b3c1ce518b9f57532e124285cb3ad0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":41,"deletions":11,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"]},"message":"doc update"},{"commit":"5e68ae50097cb339f3390449db7e3f189a716320","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/parsers/ping_s.py"]},"message":"import exception. tighten up os detection"},{"commit":"d03541beae44a4571a7d0481af01a5c19506207f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":5,"files":["jc/parsers/ping_s.py"]},"message":"add docstring examples. add exception raise when OS cannot be detected."},{"commit":"516fa571d90a0c93134c953c15ce84dd31b96b4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/ping_s.py"]},"message":"remove unused variable. use elif instead of if for linux vs. bsd detection"},{"commit":"a19c12096a8e8de02a6ff761cc9c13ec249d416e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":373,"deletions":143,"files":["jc/parsers/ping_s.py"]},"message":"initial working parser for both linux and bsd"},{"commit":"758f27945de4f0897405eba02c7908d815ce6e9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/ping_s.py"]},"message":"change data_bytes and bytes to sent_bytes and response_bytes"},{"commit":"8b1e8d58df22f8542ccaf7bf3e1eabe6132e7a42","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping_s.py"]},"message":"remove unneeded line"},{"commit":"b967489d085319facee077958deaa04956a98343","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":81,"deletions":40,"files":["jc/parsers/ping_s.py"]},"message":"complete linux coverage including summary"},{"commit":"870d0218be2641e3eddb114c23d54deb23155f25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"]},"message":"add unbuffer note"},{"commit":"84020bc2af294cb065105f1399453aefc98eb180","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":12,"deletions":6,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/utils.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","man/jc.1"]},"message":"change error_msg to error in -q result docs"},{"commit":"4efe5344e069ed921f208bcbbd097705be2d3b4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add links to HN and Reddit"},{"commit":"9182c545134b3d56d27d2c1d9bda678532bdc3fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":8,"files":["jc/utils.py"]},"message":"formatting"},{"commit":"28f0ab0b02d21fc060f1ac7181f85552798dc4bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/ls_s.py","jc/utils.py"]},"message":"update streaming error messages"},{"commit":"90d1a30696b2cbfbb06a55cc0cf920cf8ecd89aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"130b3738cc57fe261e8ef881a57b7836acd7e7e9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":21,"deletions":26,"files":["jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/utils.py"]},"message":"shorten successful yield to a single line"},{"commit":"92c7357615af7689db273aa78d666b35a2ec7a70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/foo_s.py"]},"message":"formatting"},{"commit":"c80f8633349c00ea461b8927f9949fe19b2f46ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/foo.py"]},"message":"simplify return condition formatting"},{"commit":"4642c20179d4643e0cf1970b264da7d9d91628de","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"5288eb22aadbbc1005b16428b94d2b07e9a75e3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"add info about streaming parser performance characteristics"},{"commit":"df8387a1a99df69eac5005662aaf56d506fa0efd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"streaming parsers cannot be used with the magic syntax"},{"commit":"cc38c27f44d3f088609b878304cab8eed75fc8f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"64f5357d69fe88b45d710d38948969699e1ca12f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":84,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add streaming parsers section"},{"commit":"51debb5649bef431e51e543f1c9270e2810aa58f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"]},"message":"add vmstat parser and change from linebuffer to unbuffer"},{"commit":"b48d05a4313b27cf5e69d3e4259542e0b131b60f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":15,"deletions":15,"files":["README.md","jc/cli.py","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"change from line buffer output to unbuffer output"},{"commit":"4e7f6b337db61b8a106cf958f6b874157909c87a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":17,"deletions":25,"files":["jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"]},"message":"simplify yield statements"},{"commit":"a509d99cafd80862721595ee59ccc4a471b5e5a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/utils.py"]},"message":"add stream_success dictionary"},{"commit":"481e45fb644ac88fa77ef35643b793f179fe6859","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"]},"message":"limit parse error msg lenght"},{"commit":"e9038e1720e1c0e520e2f29b718aa8505cbbb9a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":66,"deletions":0,"files":["docs/parsers/ping_s.md"]},"message":"initial streaming ping docs"},{"commit":"8fd9e582bf29275c4daaa3be88ea8d196411b34a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":15,"deletions":17,"files":["docs/parsers/ls_s.md"]},"message":"doc update"},{"commit":"c1fd6f48a5a3501499c9fca7239673b8555cc7c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["docs/utils.md"]},"message":"add stream_error docs"},{"commit":"af615c7f4b3f589ffc1b37cf9834062a04c013cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":26,"deletions":5,"files":["CHANGELOG","README.md","jc/cli.py","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"add line buffer output option"},{"commit":"bf0bc32d7ae6cabe07906207f4f08c2e81802c80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"flush streamed text for better piping experience"},{"commit":"2d6b53e012181a4c33bab441880c47c0fc0b0601","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":36,"deletions":42,"files":["jc/parsers/ping_s.py"]},"message":"add pattern support. move unparsable line detection to standard streaming parser style"},{"commit":"51271fea0fbd7bd63863ba05c399b4675dc5b4bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":139,"deletions":149,"files":["jc/parsers/ping_s.py"]},"message":"somewhat working parser"},{"commit":"2deb473e0bc96c0e39ec4074a6df4b941ba2172b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":262,"deletions":0,"files":["jc/parsers/ping_s.py"]},"message":"initial streaming ping parser"},{"commit":"23eeb33b3da43a679c3bf3f3643cfa552a1164e1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"modify stream_error message"},{"commit":"f50dfaef45632241f8f6972fa19bb17c54a457ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":13,"files":["jc/parsers/ls_s.py"]},"message":"use stream_error function for exceptions. raise on non -l ls output"},{"commit":"55bb71e9d466cc9ee5f7fd8eca1101c941cbcb35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"add streaming ping parser. update streaming exception message"},{"commit":"dab9357d286962b70224d6fafbf90a4c0cbc9980","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":12,"files":["jc/parsers/foo_s.py"]},"message":"use stream_error function for exceptions"},{"commit":"27eb427245b5126335cef0adb5e57522272474b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/utils.py"]},"message":"add stream_error function"},{"commit":"260f3685d944ded84396ae3395773d6898803fb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":112,"deletions":0,"files":["jc/parsers/foo_s.py"]},"message":"add streaming parser template"},{"commit":"76e78fc0c34b88a90fef876eebef92bd71cd772c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":11,"files":["jc/parsers/ls_s.py"]},"message":"doc updates"},{"commit":"1ac944fa028a400ae7b39b811fcf368c9bf5e259","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/ls_s.py"]},"message":"add -q option info to docstring"},{"commit":"986bc9b042a940f8dd34f0541bcb9b5840df579e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":43,"files":["jc/parsers/ls_s.py"]},"message":"cleanup unused code"},{"commit":"5a7942069b1f3ef3b45992b482bfb6bb973f7e8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":28,"deletions":28,"files":["jc/parsers/ls_s.py"]},"message":"add support for parent field"},{"commit":"f6c6fc13ac4c779667807df12444a41ef28a8011","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/cli.py"]},"message":"enhance error msg when streaming parser is used"},{"commit":"1d8cfae89f24192b6fab087f59c9b8988ef363dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/parsers/ls_s.py"]},"message":"only print _meta object if -q or quiet flag is used. Also, add message to the end of exceptions informing of the -q option to ignore errors"},{"commit":"787df51239ffa8260b48d6a3a58e6ff07d5e0f64","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"]},"message":"remove `\\n` from end of line in exception message"},{"commit":"5e7f302a9c45343c36e81944db38a435e6c8a20c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":10,"files":["jc/parsers/ls_s.py"]},"message":"Raise exceptions unless the -q or quiet flag are used"},{"commit":"3d10fd40b56264836874da19aa72351e6d5cfbf7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":13,"files":["jc/cli.py"]},"message":"remove print flush for better performance. Roll json.JSONDecodeError into the parse try/except block"},{"commit":"57e3bf239cc76d3b0ee0eddc618171eb90c28dec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"]},"message":"formatting for docs"},{"commit":"ccb09861e82044e17ec51277b3c8875e5ba9d87d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":20,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"]},"message":"formatting for docs"},{"commit":"94551d75dd926c7f558e5cab47ba9483a20c6b3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":116,"deletions":49,"files":["CHANGELOG","README.md","docs/parsers/ls_s.md","docs/readme.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz","mangen.py","setup.py"]},"message":"doc update"},{"commit":"6e21218425359210591827e936b8d48d9644df92","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":234,"deletions":3,"files":["jc/cli.py","jc/parsers/ls_s.py"]},"message":"working prototype of streaming ls parser"},{"commit":"ff0fda48fc48760a7293528155d222c6456f84c4","merge":"e08b61f 528aac7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #168 from kellyjonbrazil/master\n\nSync master to dev"},{"commit":"528aac7ad87feae2093aba563c83a29ebf75e5f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":38,"files":["README.md","templates/readme_template"]},"message":"use subprocess in python example"},{"commit":"ab482e521d4cecfffa5393805b1d7de4389db49a","merge":"9c1ad92 e08b61f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #163 from kellyjonbrazil/dev\n\nDev v1.16.2"},{"commit":"e08b61fa81b1bd2304d04db5cdc8b809fe9c6032","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]},"message":"add schema note to sfdisk"},{"commit":"ce61bd1d2b4323d9c2d0454c4f646521913ae20d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":73,"deletions":7,"files":["tests/fixtures/debian10/sfdisk-F2.json","tests/fixtures/debian10/sfdisk-F2.out","tests/fixtures/debian10/sfdisk-l2.json","tests/fixtures/debian10/sfdisk-l2.out","tests/fixtures/debian10/sfdisk-l3.json","tests/fixtures/debian10/sfdisk-l3.out","tests/test_sfdisk.py"]},"message":"add tests for -F fixes"},{"commit":"7b708f75182bf3ed33478a7de62e9c2496f0b994","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":11,"deletions":5,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-l.json","tests/fixtures/debian10/sfdisk-l.json"]},"message":"Don't convert 'size' to int, except for legacy -d support. Change partition table detection logic to fix -F output"},{"commit":"89ca50c7fc1bf64f34c915e65031d0bc520e6466","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"]},"message":"add -l to sfdisk raw example"},{"commit":"fb54899dcc2160450448e0d6111557cebdeb0d4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":38,"deletions":23,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]},"message":"doc update"},{"commit":"0a625ad7ddd9c804052d98930165cd22049546bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/sfdisk.py"]},"message":"remove unneeded lines"},{"commit":"d32e45efbe0d71a9a132abfb2855f1f4ccee9916","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":69,"deletions":1,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-F.json","tests/fixtures/centos-8/sfdisk-l.json","tests/fixtures/debian10/sfdisk-F.json","tests/fixtures/debian10/sfdisk-l.json","tests/test_sfdisk.py"]},"message":"add sfdisk tests"},{"commit":"c77696bc789cdfd286a7479c3d9f67d23149d0ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"]},"message":"version bump"},{"commit":"736fde9e784587cb2ef344bbf31d876eafea7741","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":147,"deletions":28,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-F.out","tests/fixtures/centos-8/sfdisk-l.out","tests/fixtures/debian10/sfdisk-F.out","tests/fixtures/debian10/sfdisk-l.out"]},"message":"add support for newer versions of sfdisk"},{"commit":"9c1ad92fed9a4b3a0da66d6b71deec8d608edfa9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["CONTRIBUTING.md"]},"message":"fix examples"},{"commit":"1a9fd2139d156a51bf2d25db951e47e96da77f7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"add \"For new parsers:\""},{"commit":"7661e7f27a4e5c379ea37c7f95496aca2c1e2910","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"formatting"},{"commit":"f857b7fbf7862ddd7eb5ab20470f5dbaacc62119","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"add custom parser folder info"},{"commit":"d94d12dbc5fb3e3712b2f1aea949013cb8213e28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["CONTRIBUTING.md"]},"message":"add foo parser template info"},{"commit":"700916276ae8b0a106410e3dd2ea3e00248ee37a","merge":"473f706 834e523","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #159 from kellyjonbrazil/master\n\nSync Master to dev"},{"commit":"834e52369ceb479776ddc8fc2931790af53b9c18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":5,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]},"message":"update man page"},{"commit":"1ce53365de61421c8bd43e04590038083894153b","merge":"2689697 473f706","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #156 from kellyjonbrazil/dev\n\nDev v1.16.1"},{"commit":"473f70668f04a38765559c5dbf0468af24d625c9","merge":"0dbd270 2689697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'master' into dev\n\n# Conflicts:\n# jc/man/jc.1.gz\n# man/jc.1\n# man/jc.1.gz"},{"commit":"0dbd2702f6ab2640b2ccdea92411ac0789673e66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/cli.py"]},"message":"reformat doc_text for nicer indentation"},{"commit":"01e3764a9b6ba902aea522bf6b7005fd37b3acbb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"fix join syntax"},{"commit":"ff9c81722ae7221364e9bcb83d98b16b4263334e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"]},"message":"try/except for shlex.join since only available in python 3.8"},{"commit":"166aef7a022ed29862ab2e0702d53c591bb5cc77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":4,"deletions":4,"files":["docs/parsers/stat.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz","setup.py"]},"message":"version bump"},{"commit":"78caf7646baf5d35602fd76771443cd64bd783af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add stat fix"},{"commit":"1f99d40cecc5d88a246f3558f71db376ebd885c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":17,"deletions":2,"files":["jc/parsers/stat.py","tests/fixtures/osx-10.14.6/stat-filename-with-spaces.json","tests/fixtures/osx-10.14.6/stat-filename-with-spaces.out","tests/test_stat.py"]},"message":"fix filename with spaces for osx/bsd"},{"commit":"4c2912d3d5ec1fd2d5d891f2b3c58a33dd8572be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"use shlex.join to quote run_command_str for better error messages"},{"commit":"45e6e06be581f787f707e3f5645129c713478d16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["CHANGELOG"]},"message":"add glob and process substitution fixes"},{"commit":"fdbe3e05f323c95687a1137983f9623911008ca2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["jc/cli.py"]},"message":"fix issue with globs not including filenames with spaces with magic syntax (introduced during switch to use subprocess to grab process exit code). No longer need to shlex quote arguments."},{"commit":"7cc168f6409af13fda815d0d2a6db25b7c9ba367","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"add comment"},{"commit":"ff2d609c9b5f5f57f3331e5593e8fe87c01654dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":1,"files":["jc/cli.py"]},"message":"add close_fds=False in subprocess.Popen() to allow process substitution in magic syntax. Also check for too many open files exception"},{"commit":"2689697b4c21758903e5f74ec069e89be585aba2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"f90a0ea8ab15629b7786e4431e9c968c3a896ee0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["templates/readme_template"]},"message":"formatting"},{"commit":"caabe60f849fb2422e47b8f10e0ff35beb706dcd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":3,"deletions":3,"files":["docs/parsers/kv.md","jc/man/jc.1.gz","jc/parsers/kv.py","man/jc.1","man/jc.1.gz"]},"message":"fix kv example"},{"commit":"2bef4ed6038201f54339e750a833260dc1998591","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","README.md"]},"message":"package updates"},{"commit":"ee57be533b12593a33a2abbb2892697f0bd40c65","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"]},"message":"fix sfdisk example"},{"commit":"c5b7aaca25d6b66d3e44256c2c6760a4cf2956ec","merge":"3b22ce4 7a1be90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #149 from kellyjonbrazil/dev\n\nDev v1.16.0"},{"commit":"7a1be905bb8654558afb5979b0bd78d4a8488874","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]},"message":"version bump"},{"commit":"5798495a11afa2f72ce6f79be785d46240fcbeb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["CHANGELOG"]},"message":"add 1.15.7 to 1.16.0 changes"},{"commit":"46171e220252ec92d18e744d2a57c1d6a6dc19f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":69,"deletions":0,"files":["EXAMPLES.md"]},"message":"add sfdisk example"},{"commit":"dd5c924ff505dcc2a9c851d2425677bdf16ea462","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add man page location change"},{"commit":"30c4ab297658228a07ef9b1585516719af3febb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":515,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]},"message":"new man page location"},{"commit":"26ea4d47b33277efb0ddafe8f421791696277c07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":14,"deletions":3,"files":["CHANGELOG","MANIFEST.in","jc/__init__.py","mangen.py","setup.py"]},"message":"version bump and deprecate /man/jc.1.gz and /jc/man/jc.1.gz"},{"commit":"2732cd175c1e878210707162de3928f33fb2f201","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["CHANGELOG","MANIFEST.in"]},"message":"include CHANGELOG in source distribution"},{"commit":"3e54b597be88b0e342e4361b7f2c1af447f9482b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add timezone change for unit tests"},{"commit":"f10ebea20962084833e5c1ebd9bc90a251bf3ff4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":78,"deletions":0,"files":["tests/test_date.py","tests/test_dig.py","tests/test_dir.py","tests/test_last.py","tests/test_ls.py","tests/test_rpm_qai.py","tests/test_stat.py","tests/test_systeminfo.py","tests/test_upower.py","tests/test_utils.py","tests/test_who.py"]},"message":"update tests to set correct timezone on POSIX systems"},{"commit":"2c6f3993cb4c5e559dbac7a479ec889aa2cba752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/route.md","jc/man/jc.1.gz","jc/parsers/route.py","man/jc.1.gz"]},"message":"remove extra comma"},{"commit":"708a696920b52c2614edcdba264912527b2dfbef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":0,"deletions":2,"files":["docs/parsers/route.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"remove extra lines"},{"commit":"20bbb5d331575c8fc33ba63643882a62650c97b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/route.py"]},"message":"remove extra lines"},{"commit":"223e785b547d9376174efa15321d60a533847c57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/sfdisk.py"]},"message":"rename variable"},{"commit":"3d78692c59980e4d70361d3a9f74bacc3f21376e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":150,"deletions":1,"files":["tests/fixtures/centos-7.7/sfdisk-d-multi.json","tests/fixtures/centos-7.7/sfdisk-d-multi.out","tests/fixtures/centos-7.7/sfdisk-d.json","tests/fixtures/centos-7.7/sfdisk-d.out","tests/fixtures/centos-7.7/sfdisk-l-multi.json","tests/fixtures/centos-7.7/sfdisk-l-multi.out","tests/fixtures/centos-7.7/sfdisk-l.json","tests/fixtures/centos-7.7/sfdisk-luB.json","tests/fixtures/centos-7.7/sfdisk-luM.json","tests/fixtures/centos-7.7/sfdisk-luS.json","tests/test_sfdisk.py"]},"message":"add sfdisk tests"},{"commit":"5321a15dcf13cf14efe578d0f66b651078c3d8a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":8,"deletions":8,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"]},"message":"update examples"},{"commit":"a452f8252a593f7914ebece53af9d73f4fd11a19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"]},"message":"fix integer conversion"},{"commit":"49267f09ac01fead3b20b2d481bb5e0d07af1439","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/sfdisk.py"]},"message":"change to root prompt in examples"},{"commit":"db47f35783e46a8299533c22146d851509f6ceb2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":15,"insertions":610,"deletions":3,"files":["CHANGELOG","README.md","docs/parsers/sfdisk.md","jc/__init__.py","jc/cli.py","jc/man/jc.1.gz","jc/parsers/sfdisk.py","jc/utils.py","man/jc.1.gz","setup.py","tests/fixtures/centos-7.7/sfdisk-d.out","tests/fixtures/centos-7.7/sfdisk-l.out","tests/fixtures/centos-7.7/sfdisk-luB.out","tests/fixtures/centos-7.7/sfdisk-luM.out","tests/fixtures/centos-7.7/sfdisk-luS.out"]},"message":"add working sfdisk parser"},{"commit":"d48abf312c1f55ab31aa11da2b6cf6bc8166733b","merge":"ff7ab0a 3b22ce4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #147 from kellyjonbrazil/master\n\nsync to dev"},{"commit":"3b22ce41105387e7f46a410460cf04759feef197","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":6,"deletions":3,"files":["CHANGELOG","jc/__init__.py","jc/cli.py","jc/man/jc.1.gz","man/jc.1.gz","setup.py"]},"message":"fix local plugin parser issue where parser has .py in the name but it is not at the end"},{"commit":"c521ca5bc9e2b035cfef6ff65f6b303b3ec44296","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"change possible to available"},{"commit":"3ddc1c665990e1e732314330db214a81ab810fe9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"add jello"},{"commit":"a8e19402b7d1f9f06bc40b81a15dec401154180c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["ADVANCED_USAGE.md"]},"message":"remove temporary fix"},{"commit":"0927902b30654274743ab9092e90e768709a9937","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["ADVANCED_USAGE.md"]},"message":"temp fix for wrong url"},{"commit":"572548b42fb6ed9d32a392503d44fac1a8f146d3","merge":"95aec9c ff7ab0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #141 from kellyjonbrazil/dev\n\nDev v1.15.5"},{"commit":"ff7ab0a1ed7f468d0e84eb3bf0636f53913c490d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":0,"deletions":1,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc updates for v1.15.5"},{"commit":"5db71b05cb28691bbbaa5d668bcd4a4ac7e68b85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":3,"deletions":3,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template","templates/readme_template"]},"message":"add en_US.UTF-8 to LANG info"},{"commit":"f9b952885aa7f2b450786a08c3879d9e358886da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add python 3.9.5 packaged info"},{"commit":"e7983bc0b29abaca2147038dfad018cba1e67cdf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xml.md","docs/parsers/yaml.md"]},"message":"version bump"},{"commit":"473a6431425fc24a4cc83939ff592e0d49535b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":10,"deletions":3,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"]},"message":"add windows msi info"},{"commit":"14f3d442cb86250b8f2cdfd7977938634b8abd6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"formatting"},{"commit":"d6f4ed9ab55fe9b7c2766fb437172af62a1d5c87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/test_utils.py"]},"message":"add long-form UTC test"},{"commit":"1b8d654444ff8c8b8171c7ac63e2736447a36c09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add error message info"},{"commit":"6002af0dca334c0affaff3e9acdca416238c7d82","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/cli.py"]},"message":"add more error message detail to the user for ParseError and LibraryNotFound exceptions"},{"commit":"0924d822a30c8806f65574c010561cd6f7c8e181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":1,"files":["templates/readme_template"]},"message":"add windows example"},{"commit":"72a37b928924c3edde3a4edb952f98c94aa05f0b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"]},"message":"version bump"},{"commit":"5eef7bd769f8ffb03ba396833d1b33484041a99f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":16,"deletions":16,"files":["jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"use LibraryNotInstalled exception instead of exiting via sys.exit"},{"commit":"c6893e1bd5283d982a7ecd6f84bdfdd0054ce7a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/exceptions.py"]},"message":"add LibraryNotInstalled exception"},{"commit":"039f6612e491c6f821c001252e122e9b0a781104","merge":"9c57c09 95aec9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #139 from kellyjonbrazil/master\n\nsync branches"},{"commit":"95aec9c6f9aa8fb4d0dae227410a1346d550f47f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["templates/manpage_template"]},"message":"add info about Magic syntax not supporting shell builtins"},{"commit":"4e9652a8ec2482a64dc029b0ce0e1047a3e49867","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"spelling"},{"commit":"773b7f4b1f23e04c90e602aab05bc1a7e5aae37b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add space before exit code table"},{"commit":"d17ffde9cdc35392ae25d8e9de5328e46067df2a","merge":"efb1d3e 9c57c09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #138 from kellyjonbrazil/dev\n\nDev v1.15.4"},{"commit":"9c57c09c00e64a9031391b9b70083ad6ecf0bc0b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc update for release"},{"commit":"4d730a9de5a0d7c064a9a59e3add86e58d9ec492","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add UTC fix"},{"commit":"fc57bcfce24af23f077d6a73f1db4591d8f99c13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"]},"message":"fix for when UTC is referenced as \"Coordinated Universal Time\""},{"commit":"fa5571486c3c19bb7e836f043545ea4f2509ed4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":10,"files":["jc/cli.py"]},"message":"simplify json_out function"},{"commit":"9996c4fe23564dfb52e3c7dbdbd8bd67edfb1e95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":10,"deletions":10,"files":["EXAMPLES.md","docs/parsers/history.md","docs/parsers/jobs.md","jc/man/jc.1.gz","jc/parsers/history.py","jc/parsers/jobs.py","man/jc.1.gz"]},"message":"update docs for shell builtins"},{"commit":"038d4290248e6bb94762bb51f69e9958f7c1fecb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":6,"files":["docs/parsers/dig.md","docs/parsers/dir.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc updates"},{"commit":"9bf6facb0d7d76583802309253e7d13ba5148997","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":6,"files":["jc/parsers/dir.py"]},"message":"remove magic command capability since dir is a shell builtin"},{"commit":"965717886e4ebaa6a4a494f189d9fdd01e33eb21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add exceptions module info"},{"commit":"e9bfc3dd29f914fd91e937f06d7f59c0f91b8449","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["CHANGELOG"]},"message":"add time format, dig compatibility, windows colors fix"},{"commit":"f46b33eacf070b4dc72c8d8a66aae49abd149e5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/utils.py","tests/test_utils.py"]},"message":"add windows time format"},{"commit":"f475fe44df2fb2661c5bce4d1e602a4bba7e87c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"]},"message":"add new time format for systeminfo"},{"commit":"5fdbe2962d84dad89de23f103d97b76b90450206","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dig.py"]},"message":"make dig compatible with all platforms"},{"commit":"ab291b9eef6ed5c8ab59b5652f676178941d5ce5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"only force enable colors when running on windows"},{"commit":"fd411fd77273cb7cf872c03ed6a258ccdee4d261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"]},"message":"attempt to get colors working on windows"},{"commit":"b1e95a60a2461dc401ffc299ef6338b65ef12691","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/cli.py"]},"message":"remove unnecessary comment"},{"commit":"bb1439f0d53e87f636fba05fbd30c3c79fb16002","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["jc/parsers/uname.py"]},"message":"use ParseError exception from jc.exceptions module"},{"commit":"ba963d98a0a2b3a0dfca6b211096d802253da5fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/exceptions.py"]},"message":"add exceptions module including ParseError"},{"commit":"83440ccb55d0db15b112b8b7d7352493ff516112","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"error message capitalization"},{"commit":"796f61bfa417afdc6ab48fddbb5502cd0659b840","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":3,"files":["jc/cli.py"]},"message":"handle case where the user pipes data and uses magic syntax simultaneously"},{"commit":"070cac4ae12282458a1e1fc8618ebc473d23cacf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/cli.py"]},"message":"remove commented line"},{"commit":"3ed84f9f42e4e883ddaac28ab49d675600b49424","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/cli.py"]},"message":"reorganize main function. remove pass condition."},{"commit":"a205afb6f355edbb4b98200a980b9601ed0f0658","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"set run_command_str if run_command is set"},{"commit":"a6d983dd8f3871cbc2391c313340167829a575d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"move run_command_str variable"},{"commit":"b6c8d6d01d740827273265dbb0cfbaf7875ac7f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":45,"deletions":17,"files":["jc/cli.py"]},"message":"add exception handling for filenotfound or other subprocess.popen and json.dumps exceptions"},{"commit":"b5a5d5b133f1c0df8023776e59697b7579f8c18a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"set parser_name for magic syntax use"},{"commit":"da528e7814b0cf25a359c3556d0e286e7bf004b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"]},"message":"move separators to a variable"},{"commit":"4acebf4f621ac564f82e3a97e6810fbb08a9dbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/cli.py"]},"message":"move variables"},{"commit":"4d40808d2b70b7543eadcfd2d35c16ebe91f2f9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/cli.py"]},"message":"update comments"},{"commit":"c543f00bd3c737f73144bb2980d12793042459b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["jc/cli.py"]},"message":"simplify piped_output function"},{"commit":"947cf41dfab5811c0e76e371231c59a2d6372752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add exit code info"},{"commit":"8d8c58742e5106c3387a627cd1b1323a76cc9623","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":21,"deletions":15,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template","templates/readme_template"]},"message":"formatting"},{"commit":"995ecc9bfb0425b0ee9e4250395b0200b46c1e89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":15,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template"]},"message":"add exit codes section"},{"commit":"21a15225ebff645439b12d6249dc3e28d7bc09ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":18,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add exit codes section"},{"commit":"48921d4584068fadb0f776ed7e81c21d89172e2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"]},"message":"ensure exit code never exceeds 255"},{"commit":"342db45edc94ab1c3b3ae70e7cf4ca4076e2c7eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":10,"files":["jc/cli.py"]},"message":"fix combined exit codes"},{"commit":"5f88ecf8443bc6e9a7cda5bc60858f37cc09f4f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/cli.py"]},"message":"add comments to magic_parser return"},{"commit":"a56aebfe7024914d2c602278964b99d1443de335","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/cli.py"]},"message":"remove side-effect comment since it is no longer relevant"},{"commit":"422bb744a82472546d62c72ba05eaa1d18d5068a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]},"message":"update man pages"},{"commit":"c3b814a15f571ac84a8ce0719d7fd88acf814caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":4,"files":["jc/cli.py"]},"message":"move imports to the top"},{"commit":"e4574047a0ef6fcd4a47142421a1d05795c7925a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":21,"files":["tests/test_cli.py"]},"message":"update tests for magic_parser function"},{"commit":"0d7d7951f82627d1fb1e20d1398bd7f88c5ce1be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/cli.py"]},"message":"don't reset sys.argv anymore. check for 'valid_command' instead"},{"commit":"da904e4770a20ae85fc67476ae4a529564d0a3ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"remove final \\n from stderr string when printing"},{"commit":"19b540041add64fe6650c3634ec869421ffbc769","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":82,"deletions":51,"files":["jc/cli.py"]},"message":"proof of concept for passing command exit codes when using magic syntax. Needs more testing"},{"commit":"f2ffb93eeaf4c8b5aa93f3e8808bdc044582e8a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":10,"files":["tests/test_ping.py"]},"message":"formatting"},{"commit":"c0c0e05642e0f473cde34178d815978fff8fe1ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add dig `+noall +answer` support"},{"commit":"966978f17e40a338f982628825f30a19d4b84e4c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":72,"deletions":0,"files":[".../centos-7.7/ping6-ip-O-p-unparsable.json",".../centos-7.7/ping6-ip-O-p-unparsable.out",".../fixtures/osx-10.14.6/ping6-ip-unparsable.json","tests/fixtures/osx-10.14.6/ping6-ip-unparsable.out","tests/test_ping.py"]},"message":"add more unparsable line ping tests"},{"commit":"8ab08a5231e082940a62fcde4be218b7ba94be31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"doc update"},{"commit":"48e534fa03b92b2583c5c6269c76651f3aa420cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":17,"deletions":2,"files":["tests/fixtures/osx-10.14.6/dig-noall-answer.json","tests/fixtures/osx-10.14.6/dig-noall-answer.out","tests/test_dig.py"]},"message":"add +noall +answer test"},{"commit":"61851c1bd02aa82d5d82e68595e45630ead13d34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":85,"deletions":3,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"add support for +noall +answer"},{"commit":"3c51b2d83d301b4072bbb12fdba4f60b900573da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":40,"deletions":0,"files":[".../centos-7.7/ping-ip-O-unparsedlines.json",".../centos-7.7/ping-ip-O-unparsedlines.out","tests/test_ping.py"]},"message":"add tests for unparsable lines on linux"},{"commit":"ee3a28528e152c61f05bdf71f264fe38274b4190","merge":"fe1f101 916bcda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev\n\n# Conflicts:\n# templates/readme_template"},{"commit":"916bcdae3881fc9c9f9a91c8c901a714cff3e1da","merge":"fb14f54 efb1d3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #136 from kellyjonbrazil/master\n\nmerge changes from master"},{"commit":"efb1d3e6b2db920423511a9dcf4c5e5fd9d6af43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"add blog title and minor formatting"},{"commit":"4e6ae66bacc014e49c4a9229d10dcc8e95de436c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"5ee88e7b679bc163a1916d560be6ff29f51699e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["README.md"]},"message":"add use cases section"},{"commit":"c3b68903cbd898f80438af342195eec7575aafd3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["templates/readme_template"]},"message":"add use cases section"},{"commit":"fe1f1013a74bdf6b4284f11dd59db8ea17e5e5d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["templates/readme_template"]},"message":"add use cases section"},{"commit":"fb14f5439f00d5eaf08651c552189fd4be7358d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":52,"deletions":3,"files":["jc/parsers/ping.py",".../osx-10.14.6/ping-ip-unknown-errors.json",".../osx-10.14.6/ping-ip-unknown-errors.out","tests/test_ping.py"]},"message":"fix and tests for unknown or unparsable errors"},{"commit":"5ca0fc364eb22d583bee5633cdd7183c1d70bb6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/parsers/ping.md"]},"message":"add unparsed_line to docs"},{"commit":"a1fe7037e5267ec4aced719eff3715085eb35bca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["jc/parsers/ping.py"]},"message":"add unparsed_line field if line cannot be parsed"},{"commit":"c2af7d113ed8e8cf9af985c969cf29858a3c26a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["CHANGELOG","docs/parsers/ping.md"]},"message":"add ping updates"},{"commit":"ff034e401d5c33efbc3c4bc2f0e386d81eaae7fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":59,"deletions":43,"files":["jc/parsers/ping.py"]},"message":"use try/except to make parser more resilient against unknown error types"},{"commit":"5abe095beb4b668e5f55fe8c9588677547e4c2a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":3,"files":["docs/parsers/ping.md"]},"message":"update ping docs"},{"commit":"33de5f01e638953c83bb0960dc3550ca4547849b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["jc/__init__.py","setup.py"]},"message":"version bump"},{"commit":"8ce155d843806be4ad23491b4401e4eda02e2a1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":86,"deletions":23,"files":["CHANGELOG","jc/parsers/ping.py",".../fixtures/osx-10.14.6/ping-ip-unreachable.json","tests/fixtures/osx-10.14.6/ping-ip-unreachable.out","tests/test_ping.py"]},"message":"add support for error replies in v4 ping on osx and bsd"},{"commit":"b921d5ec9583c8f8e992613ae2eaf62165722054","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":105,"deletions":6,"files":["jc/parsers/ping.py"]},"message":"initial support for error replies in bsd/osx"},{"commit":"e21542aaa2aa5f2f287ddc227df41ae47d761332","merge":"d24f9a8 6150aae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #135 from kellyjonbrazil/dev\n\nDev clarify packaged binaries in readme"},{"commit":"6150aae0aeabafba26d9f119406b0660d9221cb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"clarify packaged binaries"},{"commit":"f27b35f37104ad2012c3bddde0bd94941af06894","merge":"bd428a9 d24f9a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #131 from kellyjonbrazil/master\n\nsync branches"},{"commit":"d24f9a885d3954035a98a488671486408f509dca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["CONTRIBUTING.md","README.md","templates/readme_template"]},"message":"fix contributing link"},{"commit":"48dd82c8d1b756c4e08d49b8234b8060080dc035","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"trigger page build on github pages"},{"commit":"e57167ad1f240de6ec5fc86c51cfb780535cd783","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","message":"empty commit"},{"commit":"ada91376426ff359c495fb31081404a2cce72b5f","merge":"0c209db bd428a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #130 from kellyjonbrazil/dev\n\nDev link updates"},{"commit":"bd428a9fd75327710dce96f3c95f74ab9d1beaad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"fix link"},{"commit":"934941332f91d9e2cc4e691b154bb5427166ed30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","templates/readme_template"]},"message":"minor link updates"},{"commit":"0c209dbd108638f89a43801126a332379be9ae8b","merge":"92e2252 56e041a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #129 from kellyjonbrazil/dev\n\nDev update readme"},{"commit":"56e041aa260b2daf2f5662fae98645a93137adb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add Practical JSON at the Command Line blog link"},{"commit":"cf9d48582e4e5df6c8498b916a2f9cf036869f3d","merge":"35464bb 92e2252","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #128 from kellyjonbrazil/master\n\nsync branches"},{"commit":"92e2252bee00482bb0eeae3074b107d4c8553e4c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"fix typo"},{"commit":"fd7861db11e5aaa17c4e7bbce942c0c096116e30","merge":"fcc7e52 35464bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #127 from kellyjonbrazil/dev\n\nDev v1.15.3"},{"commit":"35464bbbfb6b424ef3ee1c855557ada1bf3769fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"date update"},{"commit":"db8ddd7f0e0c2a8bd3e545619e81d3d3972a4d7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":11,"deletions":17,"files":["jc/man/jc.1.gz","jc/parsers/ufw.py","man/jc.1.gz","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json"]},"message":"fix for scenarios where the default port range didn't always display, or overrode existing port ranges."},{"commit":"72207c54ee5734e3d2d3d1a063c8daf1edaa8815","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":102,"deletions":94,"files":["docs/parsers/ufw_appinfo.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"update ufw app info docs to support multiple apps (ufw app info all)"},{"commit":"a683f68003ea64dd5e2c4f06b53a1561ad774f12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":285,"deletions":202,"files":["EXAMPLES.md","jc/parsers/ufw_appinfo.py","tests/fixtures/generic/ufw-appinfo-msn.json","tests/fixtures/generic/ufw-appinfo-test.json","tests/fixtures/generic/ufw-appinfo-test2.json","tests/fixtures/generic/ufw-appinfo-test3.json","tests/fixtures/ubuntu-18.04/ufw-appinfo-all.json","tests/fixtures/ubuntu-18.04/ufw-appinfo-all.out","tests/test_ufw_appinfo.py"]},"message":"change schema to a list of dictionaries to support `ufw app info all` use case"},{"commit":"8d2d3db3fa969456342181a226bf54a3f1613542","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":0,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"]},"message":"formatting"},{"commit":"eca785450d1c72687817d09259fa7cd33376fafc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":34,"deletions":13,"files":["CHANGELOG","README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"]},"message":"add caveats to readme and manpage"},{"commit":"5b40a97ce417687b4e37f320b8a3f07dd7fd169c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":13,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template"]},"message":"add caveats to man page"},{"commit":"66cb4e9bde81b9290c1addaf851de5d80a1b0702","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":216,"deletions":234,"files":["EXAMPLES.md","docs/parsers/ufw.md","jc/man/jc.1.gz","jc/parsers/ufw.py","man/jc.1.gz"]},"message":"update ufw parser docs"},{"commit":"d1f33645caccdb3a55576081c4d355f997ac033c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":26,"deletions":10,"files":["tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw-numbered2.json","tests/fixtures/generic/ufw.json","tests/fixtures/ubuntu-18.04/ufw-numbered.json","tests/fixtures/ubuntu-18.04/ufw-numbered.out","tests/fixtures/ubuntu-18.04/ufw-verbose.json","tests/fixtures/ubuntu-18.04/ufw-verbose.out"]},"message":"update ufw tests"},{"commit":"5eff65c326675a449afd05a2af0a6c9bcf7b5e23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":85,"deletions":268,"files":["jc/parsers/ufw.py"]},"message":"update schema to support port lists and port range lists. Also support other transports than tcp and udp"},{"commit":"929c38715d87bf9dd689507d319c22b90871ae1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"formatting"},{"commit":"8c91a7b7601a967cd9d8096433ffd4ad62b65ceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CONTRIBUTING.md"]},"message":"formatting"},{"commit":"14289ecd6c022ad204444dff5b5e48f6024a5d0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"more timezone info"},{"commit":"b833c44783eb32f2fad24ca205b5b7eab854750f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add ufw-appinfo parser"},{"commit":"e23aa818eaa6d1a389ddef7dd2ad8f62b9f6ff25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"add tests section and timezone info"},{"commit":"473d919c1350a8dc34d233033a5a7d12c928e42d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":32,"deletions":0,"files":["runtests.sh","tests/fixtures/generic/ufw-numbered2.json","tests/fixtures/generic/ufw-numbered2.out","tests/test_ufw.py"]},"message":"add another ufw test sample"},{"commit":"9f925d6ac989a4f21a8c00c84fcf97dfb141e8c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc update"},{"commit":"f6ca32b3a31f314fa0b31d9e8b5494491b928f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/ufw.md","jc/parsers/ufw.py"]},"message":"update ufw docs with a note on lists of ports"},{"commit":"4cbe84c3d6ac8a3b594feb525460f2a68f5d62b2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":110,"deletions":0,"files":["tests/fixtures/generic/ufw-appinfo-msn.json","tests/fixtures/generic/ufw-appinfo-msn.out","tests/fixtures/generic/ufw-appinfo-test.json","tests/fixtures/generic/ufw-appinfo-test.out","tests/fixtures/generic/ufw-appinfo-test2.json","tests/fixtures/generic/ufw-appinfo-test2.out","tests/fixtures/generic/ufw-appinfo-test3.json","tests/fixtures/generic/ufw-appinfo-test3.out","tests/test_ufw_appinfo.py"]},"message":"add ufw-appinfo tests"},{"commit":"ffac5bf9d381305daa86e546f8570be092e5ff34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":12,"deletions":12,"files":["docs/parsers/ufw.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc update"},{"commit":"9aa424f9f8c7e4e0dc29e2c58dac481098beba7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["EXAMPLES.md"]},"message":"fix ufw example"},{"commit":"0a8495c68e427e39bbda957dd933fa2a461092e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":15,"files":["jc/parsers/ufw.py"]},"message":"update docs"},{"commit":"6aea066cf024f92adf4b94eebc7d51430c22332c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/ufw_appinfo.py"]},"message":"make normalized list appear only when data exists. set magic commands"},{"commit":"ff3c2d809ec3ea6e556c302909a228ee670578c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":176,"deletions":25,"files":["EXAMPLES.md","README.md","docs/parsers/ufw_appinfo.md","jc/man/jc.1.gz","jc/parsers/ufw_appinfo.py","man/jc.1.gz"]},"message":"add ufw-appinfo to docs"},{"commit":"145059fc8946b7026184139baea143c2869bc4e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":8,"files":["jc/parsers/ufw_appinfo.py"]},"message":"clean up output if sections are blank"},{"commit":"20e5c19de448c1b979497817c887d8d2d6487839","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/ufw_appinfo.py"]},"message":"fix key error if tcp or udp don't exist"},{"commit":"4c98fd4b877c54e1cf7d285a29e178321be12f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":101,"deletions":1,"files":["docs/parsers/ufw_appinfo.md","jc/parsers/ufw_appinfo.py"]},"message":"doc update"},{"commit":"125e54213e8d4dcfe2e3271456af80b3f79c0544","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":105,"deletions":48,"files":["jc/parsers/ufw_appinfo.py"]},"message":"update schema and add normalized fields"},{"commit":"0152e0665f87833250561d743144af35416992f8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":215,"deletions":0,"files":["jc/cli.py","jc/parsers/ufw_appinfo.py"]},"message":"initial working ufw-appinfo parser"},{"commit":"0679bcbc560ea3575555d8546afdd4e2474d05d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":31,"deletions":5,"files":["tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json","tests/fixtures/ubuntu-18.04/ufw-numbered.json","tests/fixtures/ubuntu-18.04/ufw-verbose.json","tests/test_ufw.py"]},"message":"fix ufw tests"},{"commit":"5500648aa0886ea5089856e5b33d7c8ebd78d5b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":46,"deletions":46,"files":["EXAMPLES.md","docs/parsers/ufw.md","jc/parsers/ufw.py"]},"message":"fix ufw docs for int conversions and service behavior"},{"commit":"bb50caad4dfaefa309e747fd05b650186c5a80f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":31,"deletions":4,"files":["jc/parsers/ufw.py","tests/fixtures/ubuntu-18.04/ufw-numbered.out","tests/fixtures/ubuntu-18.04/ufw-verbose.out"]},"message":"fix prefix int conversions. don't reset _transport if service is really a list of ports"},{"commit":"7eef5d94d591a3f70f6638b1b30f952a3bf35f9d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":0,"files":["EXAMPLES.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"ufw doc update"},{"commit":"74f623f8d607c050db8f62ea4996c4e6aae43268","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":43,"deletions":11,"files":["docs/parsers/ufw.md","jc/parsers/ufw.py","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json","tests/fixtures/generic/ufw.out"]},"message":"add support for rule comments and LIMIT and REJECT actions"},{"commit":"f638aca092475bbae14fed765e90435c093fcb8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add deb package name fix"},{"commit":"da35eaf80ad4f11e7482fc4734db4b2265e50548","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["docs/parsers/ufw.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"formatting"},{"commit":"ade0e8e8fc18ff9a0dd406206a85238f1f5a739d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":107,"deletions":0,"files":["tests/fixtures/generic/ufw-inactive.json","tests/fixtures/generic/ufw-inactive.out","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw-numbered.out","tests/fixtures/generic/ufw.json","tests/fixtures/generic/ufw.out","tests/test_ufw.py"]},"message":"add ufw tests"},{"commit":"90076090f05a1f03e2fbff307418ee18d7d046ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":5,"files":["jc/parsers/ufw.py"]},"message":"fix int conversions if 'rules' key does not exist"},{"commit":"23635def8b654097178f73ed1b57fc50965142d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":306,"deletions":4,"files":["README.md","docs/parsers/ping.md","docs/parsers/ufw.md","docs/utils.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"add ufw to docs"},{"commit":"4eeec087bde98f90ab8425473d1fbeee6834852e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":115,"deletions":0,"files":["EXAMPLES.md"]},"message":"add ufw example"},{"commit":"733196103897a1d84d242324ddcf96e783320329","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/ufw.py"]},"message":"update docs with new examples that have `to_service` always existing."},{"commit":"e4acb3d5b70a7d75741ef3e35cd6750d1362a80f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/ufw.py"]},"message":"always make to/from_service None if ports are assigned"},{"commit":"c60549a9947d5684bbfa58223bfbcfc40a3ed479","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":29,"deletions":29,"files":["jc/parsers/ufw.py"]},"message":"change field name from to/from_subnet to to/from_ip_prefix"},{"commit":"d46fc8bbfa15a80a1af6c64f70230f858c215223","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/parsers/ufw.py"]},"message":"set to/from_transport to None if to/from_service is set"},{"commit":"b133d1f90d49362594508d8c475663754f0e7675","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/ufw.py"]},"message":"strip interface value"},{"commit":"5be615a97e7c145c8351764234ac591028560c34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":219,"deletions":9,"files":["jc/parsers/ufw.py"]},"message":"add examples for docs"},{"commit":"ea1d820f96321ddf4084b54ee2fdf397295beb21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/parsers/ufw.py"]},"message":"convert integer fields"},{"commit":"47e262cf7200b02ff0af97a70ffa6bec286c8f39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":59,"deletions":14,"files":["jc/parsers/ufw.py"]},"message":"clean up fields"},{"commit":"eec673be9092e382694aa02682564510ce4e7f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":88,"deletions":3,"files":["jc/parsers/ufw.py"]},"message":"working raw parser"},{"commit":"9a0fb2a7c87e6fde0cc0d84fa8a1f131e28ea732","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":157,"deletions":0,"files":["jc/parsers/ufw.py"]},"message":"parse major sections"},{"commit":"b5145d6c14d7a51e7cfdebe126c9689dc90f7b27","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":8,"deletions":4,"files":["CHANGELOG","jc/__init__.py","jc/cli.py","setup.py"]},"message":"version bump to v1.15.3"},{"commit":"9747ca414dfb8218389c7b2199a080edabc2a184","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/utils.py"]},"message":"minor optimization to convert_to_int(). No longer runs through convert_to_float(), but uses standard float() function."},{"commit":"312d465b61a15592cc70d3734ad747b9a2be10ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"]},"message":"update link"},{"commit":"7dcf87d24ad40eba6ba98de2b4b2bf177a76cd71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping.py"]},"message":"formatting"},{"commit":"cf3cfd16a9de05f30303b5952fbe609cde842d2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_utils.py"]},"message":"rename tests"},{"commit":"fcc7e5294973d1a18943fa2ce2e836b0fe757d95","merge":"6c83846 3ab9d48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #123 from kellyjonbrazil/dev\n\nDev v1.15.2"},{"commit":"3ab9d480149a692510ab9e0ac8e745b674683e3d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CHANGELOG"]},"message":"update changelog"},{"commit":"7eddf41c5f6310264359cd6d78bdfa4b65af7d06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":96,"deletions":9,"files":["jc/man/jc.1.gz","jc/utils.py","man/jc.1.gz","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/df.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/free-h.json","tests/test_utils.py"]},"message":"dont round up int conversions and fix tests"},{"commit":"27a196c93862bd737603cfe402b35529eb412954","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc update"},{"commit":"e4324f05fb6f89c34fa1567e70d8636457623edb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":14,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"fix indentation in doc"},{"commit":"d36b332bd78b5bf5979cdc59b31da08d8e4104d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":53,"insertions":196,"deletions":274,"files":["docs/parsers/systemctl_lj.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/wc.md","docs/parsers/who.md","docs/utils.md","jc/parsers/acpi.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/hash.py","jc/parsers/hciconfig.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl_lj.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/utils.py"]},"message":"use jc.utils for conversions"},{"commit":"1f034826f69c461495f7a302cc8fe35e3052e72f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":42,"insertions":94,"deletions":185,"files":["docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","tests/fixtures/centos-7.7/ls-alh.json","tests/fixtures/centos-7.7/lsof-sudo.json","tests/fixtures/centos-7.7/lsof.json","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/ubuntu-18.04/ls-alh.json","tests/fixtures/ubuntu-18.04/lsof-sudo.json","tests/fixtures/ubuntu-18.04/lsof.json"]},"message":"use jc.utils for conversions"},{"commit":"246c707c98d3128b4e38f5c4b23a1e0ceedc0b0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":46,"insertions":190,"deletions":196,"files":["CHANGELOG","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/df.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/hash.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/utils.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/hash.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/utils.py","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/osx-10.11.6/df-h.json","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/free-h.json"]},"message":"use jc.utils conversions"},{"commit":"b5d8968144e76090870f8563dc1bce910fba668c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":0,"files":["jc/utils.py"]},"message":"add convert_to_int function"},{"commit":"f7b9fbefdde6973077573fec02342eb9946789c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add query_size info for dig"},{"commit":"b1fc4533833ca25f59869bfec8ac114bf49c7847","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"]},"message":"fix _IfconfigParser name"},{"commit":"7581c8d0f4262fc6a05240bb21ffe533b153f6e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":45,"deletions":32,"files":["docs/parsers/dig.md","jc/parsers/dig.py","tests/fixtures/generic/dig-edns3.json"]},"message":"add query_size field. handle user-specified dig output better - especially when querying dnssec"},{"commit":"32bf8ad6f4fff83fdfd83d66c1ba8f1af5a65a90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":52,"deletions":24,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"update dig docs"},{"commit":"b083bcc10fa1105fc09ce8d2c3297aa5575c9d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]},"message":"update man page"},{"commit":"4f6fdd120d23468270c1d7111e4ef71b87759a1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":134,"deletions":100,"files":["docs/readme.md","jc/__init__.py"]},"message":"use dig as example"},{"commit":"eb0038be2490053d32803d30e1c3d4d34509d130","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":40,"deletions":19,"files":["EXAMPLES.md"]},"message":"update dig examples"},{"commit":"7ecdf819fa37c38ae6159ad8e7bc973ee4f34559","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":84,"files":["README.md","templates/readme_template"]},"message":"remove dig example from readme,"},{"commit":"c6aa4d083550d25bcb621cad524047cfd6a08217","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":252,"deletions":317,"files":["README.md","docs/parsers/dig.md","jc/man/jc.1.gz","jc/parsers/dig.py","man/jc.1.gz","templates/readme_template"]},"message":"update docs with new dig parser examples"},{"commit":"7c584b89a6e6b924d53d50103b97f0c2405c33b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":15,"insertions":352,"deletions":52,"files":["jc/parsers/dig.py","tests/fixtures/generic/dig-additional.json","tests/fixtures/generic/dig-additional.out","tests/fixtures/generic/dig-additional2.json","tests/fixtures/generic/dig-additional2.out","tests/fixtures/generic/dig-additional3.json","tests/fixtures/generic/dig-additional3.out","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/generic/dig-edns.json","tests/fixtures/generic/dig-edns.out","tests/fixtures/generic/dig-edns2.json","tests/fixtures/generic/dig-edns2.out","tests/fixtures/generic/dig-edns3.json","tests/fixtures/generic/dig-edns3.out","tests/test_dig.py"]},"message":"add additional section"},{"commit":"c166c0bfdafa922f57f021fa4d16e467fca02d58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":14,"insertions":55,"deletions":21,"files":["jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json"]},"message":"add opt_pseudosection section to output and fix existing tests"},{"commit":"a8dd3f7802bfe8fd3ffbedf89af45ddc580ee78d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":54,"deletions":281,"files":["CHANGELOG","jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-axfr.json"]},"message":"working dig axfr fixes"},{"commit":"3b0e2f03f3b11398ff57b1daed542faaf0b80a62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":24,"deletions":23,"files":["jc/cli.py","templates/manpage_template"]},"message":"clean up examples"},{"commit":"8390ae48c88ab1c7d5acbf40c0e60606953817bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":8,"deletions":8,"files":["jc/parsers/dig.py","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json"]},"message":"fix server entry when IPv6 address is in value (maxsplit on colons)"},{"commit":"2db82c0a7e19d596c876ede8a8ff106aaa733ee5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":66,"deletions":0,"files":["EXAMPLES.md"]},"message":"add systeminfo example"},{"commit":"61479540756704f10853233300ceae8f954a8a95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":0,"files":["tests/test_systeminfo.py","tests/test_utils.py"]},"message":"update tests"},{"commit":"691df271fcfe057ae4b75ad40869e23deb37b886","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":1,"files":["docs/parsers/systeminfo.md","jc/man/jc.1.gz","jc/parsers/systeminfo.py","man/jc.1.gz"]},"message":"add info docstring"},{"commit":"89f52b95f7055da9d7b5fa8dce0923d4c3435bd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":467,"deletions":821,"files":["README.md","docs/parsers/systeminfo.md","jc/man/jc.1.gz","jc/parsers/systeminfo.py","jc/utils.py","man/jc.1.gz",".../windows/windows-10/systeminfo-hyperv-utc.json",".../windows/windows-10/systeminfo-hyperv-utc.out",".../windows/windows-10/systeminfo-hyperv.json","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-10/systeminfo.out",".../windows/windows-2012r2/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"]},"message":"update systeminfo parser with updated timestamps, normalized blank fields, and new doc style"},{"commit":"146acc1bf69c402e38c2f1bc842b84e6cff7e2cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":29,"files":["jc/parsers/systeminfo.py"]},"message":"rename functions to make them private"},{"commit":"c4a345f59aa090336b4e80f181493cd5bc2c17c5","merge":"dfd2703 325fab2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #106 from jon-rd/j/systeminfo\n\nAdd windows systeminfo command parser"},{"commit":"dfd2703f75b907ba865fff266d0742d8931bc2d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"]},"message":"bump dev to v1.15.2"},{"commit":"325fab2de7b8a4bfc452ab8d3cf333d47fdf4989","author":"Jon Smith","author_email":"jon@rebelliondefense.com","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/systeminfo.py"]},"message":"update documentation for parsed structures"},{"commit":"f3d00cf38ad15aeda7eaa5644ebc30ff33de6a29","author":"Jon Smith","author_email":"jon@rebelliondefense.com","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","stats":{"files_changed":5,"insertions":56,"deletions":48,"files":["jc/parsers/systeminfo.py",".../windows/windows-10/systeminfo-hyperv.json","tests/fixtures/windows/windows-10/systeminfo.json",".../windows/windows-2012r2/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"]},"message":"append mb to memory key names; adjust expected timestamps to utc tz"},{"commit":"14838f7f5d780896f1318cac2c3f34d249a158d4","author":"Jon Smith","author_email":"jon@rebelliondefense.com","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","stats":{"files_changed":9,"insertions":956,"deletions":116,"files":["jc/parsers/systeminfo.py","jc/utils.py",".../windows/windows-10/systeminfo-hyperv.json",".../windows/windows-10/systeminfo-hyperv.out","tests/fixtures/windows/windows-10/systeminfo.json",".../windows/windows-2012r2/systeminfo.json",".../fixtures/windows/windows-2012r2/systeminfo.out","tests/fixtures/windows/windows-7/systeminfo.json","tests/test_systeminfo.py"]},"message":"update schema with nic, hyperv, and process changes"},{"commit":"af74047b81776c2ea32d82f9145ab60c346c8203","author":"Jon Smith","author_email":"jon@rebelliondefense.com","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/systeminfo.py"]},"message":"update schema based on processor/hotfix changes"},{"commit":"660c59129cf4ba7889fb3c6fbafd9dd9b479ccd9","author":"Jon Smith","author_email":"jon@rebelliondefense.com","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","stats":{"files_changed":3,"insertions":41,"deletions":9,"files":["jc/parsers/systeminfo.py","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"]},"message":"Add parsing of processors/hotfixs"},{"commit":"89a88e186ed71d84ea802cf08ab756b49cee3225","author":"Jon Smith","author_email":"jon@rebelliondefense.com","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","stats":{"files_changed":1,"insertions":152,"deletions":0,"files":["docs/parsers/systeminfo.md"]},"message":"Add systeminfo.md file"},{"commit":"f861cf95b96a224a0a11f2cdc3261b94c02415ef","author":"Jon Smith","author_email":"jon@rebelliondefense.com","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["jc/cli.py","jc/parsers/systeminfo.py"]},"message":"Change to v0.5; add parser to cli.py; add to docgen"},{"commit":"ee8f06cbdb03f8254bb6a3c56fa5b8a64ff9ca77","author":"Jon Smith","author_email":"jon@rebelliondefense.com","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","stats":{"files_changed":6,"insertions":688,"deletions":0,"files":["jc/parsers/systeminfo.py","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-10/systeminfo.out","tests/fixtures/windows/windows-7/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.out","tests/test_systeminfo.py"]},"message":"Add windows systeminfo command parser"},{"commit":"a2e8b3c7b681605916b8950d035ee19889a125a5","merge":"e0681ee 6c83846","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #121 from kellyjonbrazil/master\n\nMerge pull request #120 from kellyjonbrazil/dev"},{"commit":"6c838460752c7131f75cdab2da07266fee492060","merge":"10292f7 e0681ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #120 from kellyjonbrazil/dev\n\nDev v1.15.1"},{"commit":"e0681eebb9881dc0ffddb478224455f434919104","merge":"e5732d1 10292f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge branch 'master' into dev"},{"commit":"e5732d1cea1c882f6486cf288e45edb993989ea0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"update changelog"},{"commit":"6e7ae3cd3f003fe9e1e587b7f8ebd16ba0895014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/timedatectl.md","jc/man/jc.1.gz","jc/parsers/timedatectl.py","man/jc.1.gz"]},"message":"formatting of timedatectl docs"},{"commit":"f95632d1aaee545ae0ce081ca0617be135c09220","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":83,"deletions":62,"files":["EXAMPLES.md","docs/parsers/rpm_qi.md","jc/man/jc.1.gz","jc/parsers/rpm_qi.py","man/jc.1.gz","tests/fixtures/centos-7.7/rpm-qai.json","tests/fixtures/centos-7.7/rpm-qi-package.json"]},"message":"add install_date calculated fields"},{"commit":"2f8b7b26e59bcd745fa1fcadb373455c7d404286","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":2,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"update docs for v1.15.1"},{"commit":"10292f7502e4cb1c53b53ed39fed9288044c2ef8","merge":"37a3565 aef5470","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #119 from kellyjonbrazil/dpkg_l-fix\n\nadd _l to module name"},{"commit":"aef54705f5267c633e0778e8dce0065978083139","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["docs/parsers/dpkg_l.md"]},"message":"add _l to module name"},{"commit":"bba5980fa53767716bc35d8c904e7a2341346eeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]},"message":"man page update"},{"commit":"977425abfb05a63ee372df36124ac6ba6a5a0aaa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"]},"message":"add _l to package name in docs"},{"commit":"37a3565a1bbd3d01663602673fed651509e69d8c","merge":"bdcdaee 13deb8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #118 from kellyjonbrazil/rpm-qi-doc-fix\n\nfix rpm-qi docs"},{"commit":"13deb8bfb6e77aaf86942f0be87b59d06ee2a97c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":194,"files":["docs/parsers/rpm_qai.md","docs/parsers/rpm_qi.md"]},"message":"fix rpm-qi docs"},{"commit":"a3ed9d075aff41599452c3094f7d057c25fc8f89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":191,"files":["docs/parsers/rpm_qai.md"]},"message":"remove old parser doc"},{"commit":"fb0ced549e021916dee7da39859e8f85c8216e16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":6,"deletions":6,"files":["docs/parsers/rpm_qi.md","jc/man/jc.1.gz","jc/parsers/rpm_qi.py","man/jc.1.gz"]},"message":"fix rpm-qi docs (used underscore instead of dash in name)"},{"commit":"7eb31bc7d290fcd09e53524ebbb11e59110df6a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":39,"deletions":48,"files":["docs/parsers/airport_s.md","jc/man/jc.1.gz","jc/parsers/airport_s.py","man/jc.1.gz"]},"message":"update airport_s docs"},{"commit":"6a06a3914273853742ac57433398968ccf7d9897","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["docgen.sh"]},"message":"use herestring instead of echo -e into jq"},{"commit":"bdcdaee6c5299ea0750512e0943c7f58f56f2e35","merge":"5d8f836 605353f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #117 from kellyjonbrazil/doc_update\n\nadd new docs"},{"commit":"605353fdce3b8b5986d20a35d05f7210a6df0730","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":70,"insertions":1710,"deletions":2656,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md"]},"message":"add new docs"},{"commit":"490c9e17699e8e4f70dcc1612e1a808f86e24b0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["tests/test_cli.py"]},"message":"add more cli tests for magic command"},{"commit":"6ebebb659dc93daeaa869752ad135f6e1d2cb1ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"]},"message":"update changelog"},{"commit":"0e70c5ee12e96f04a89de05153a2da9cd39f98ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"update documentation link"},{"commit":"cd531acf6045660e022c932f62a01d4084433ad4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["docgen.sh"]},"message":"clean up comment"},{"commit":"908ac1f61c5cc011d05d550f933940dfed4431f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":143,"insertions":0,"deletions":690,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/man/jc.1.gz","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","man/jc.1.gz"]},"message":"update docs - remove compatibility section since it is now automatically generated from info()"},{"commit":"f5c7e7e4046bc57b4fcad99390e31b121a7106ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":70,"insertions":350,"deletions":0,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md"]},"message":"add updated docs with home link and parser info at the bottom"},{"commit":"001c700b5bd280cb1cb9e54169ae5f1b7918c257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":2,"deletions":1,"files":["docgen.sh","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"add home link to the top of the md file"},{"commit":"9b41e9bef0ff099e70f37fddc8fe2c6bd8457b19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"]},"message":"Add parser information header"},{"commit":"34bd6e32dc0c0bf7dfeedaadbf04115f43e9d060","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":4,"files":["docgen.sh"]},"message":"pull each parser as a json object into a bash array and iterate on it to add supplementary information like version, author, and compatibility"},{"commit":"c5d058490beaa8f59875a8acfd7a400764768639","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":22,"deletions":13,"files":["jc/cli.py"]},"message":"move parser doc printing to its own function"},{"commit":"dd1ae6d9a7de5421830232deb42d933b9a652672","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":3,"deletions":1,"files":["MANIFEST.in","jc/man/jc.1.gz","man/jc.1.gz","mangen.py"]},"message":"add man page inside the pypi package for easier packaging in homebrew"},{"commit":"d8ea9bde823a7f5c146741150c3211737345c7dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":16,"deletions":16,"files":["docs/parsers/w.md","jc/parsers/w.py","man/jc.1.gz"]},"message":"doc update"},{"commit":"125edc9c906dc3650b6a683ed13830075acb7ab6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"bail out for -h, -a, and -v in magic()"},{"commit":"15ea43e394a9004f8ccec208b3a066c76e241866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["MANIFEST.in"]},"message":"add man file to package for easier packaging in homebrew"},{"commit":"b55b02687c00d1c50e30f30c9b9a7f36f783eb0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":19,"insertions":371,"deletions":441,"files":["CHANGELOG","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","man/jc.1.gz","setup.py"]},"message":"doc update"},{"commit":"da611f0ac6321f7f52fdbc419f8b155c74393c28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":63,"deletions":50,"files":["jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","man/jc.1.gz"]},"message":"update docs"},{"commit":"b8b8dfead4fdc4285585c44c2ebce3bdd42b2e7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":61,"insertions":1501,"deletions":1848,"files":["docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py"]},"message":"update docs"},{"commit":"4290a3cbd135cacbf63664dc30768017ebbed28d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":9,"files":["docs/parsers/ifconfig.md","jc/parsers/ifconfig.py"]},"message":"make IfconfigParser class private"},{"commit":"a5e2203cee6a7bc398cf280f57d37638eeb1d2d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":2,"deletions":1,"files":["docs/parsers/ifconfig.md","jc/parsers/ifconfig.py","man/jc.1.gz"]},"message":"update ifconfig doc"},{"commit":"e28c08b1361161cfd123b9ebc11fa1ffa87d658f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":46,"insertions":976,"deletions":1209,"files":["docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","man/jc.1.gz"]},"message":"update documentation"},{"commit":"a4b6846f63b43168085275d73940265940badf46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":467,"files":["man/jc.1","man/jc.1.gz"]},"message":"man update"},{"commit":"2bc830786114fd57619f34b936dcf6e0bed7a109","merge":"9b39917 5d8f836","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'master' into dev\n\n# Conflicts:\n# man/jc.1"},{"commit":"9b39917c798ed0310c9b82d87172cbf6d24ba111","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":17,"insertions":391,"deletions":453,"files":["README.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","jc/cli.py","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"update docstrings for new help functionality"},{"commit":"57c13cc0a38ad89fda8b0e362bd6487257d0a26a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":3,"files":["jc/cli.py"]},"message":"add support for parser help"},{"commit":"b7355fd30d992a1bcc90227f5a1b02be073829e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":37,"deletions":48,"files":["docs/parsers/arp.md","jc/parsers/arp.py"]},"message":"new docstring format for improved documentation"},{"commit":"93ae309e407b26820b9f05b5b331d05fc77df57f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/__init__.py","man/jc.1"]},"message":"bump version to 1.15.1"},{"commit":"5d8f8365e24a7c3a587d4e71ebba4876de08203b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":461,"files":["man/jc.1","man/jc.1.gz","mangen.py"]},"message":"gzip man page"},{"commit":"f26909eefb236e9ebf63be53cd86ae13cc3d9ea3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["docs/parsers/dir.md"]},"message":"formatting"},{"commit":"55bfbb2797ede3aefbb14ecab950b108b1895ccc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":6,"files":["EXAMPLES.md","jc/parsers/dir.py"]},"message":"formatting"},{"commit":"8970b8342a855203aef649b60dad3e49a1d7fd2a","merge":"a73fdb7 5285e69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #115 from kellyjonbrazil/master\n\nSync master and dev"},{"commit":"5285e699c30fdeaf56068f5a03ef1d1d33fa673c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","jc/cli.py","man/jc.1"]},"message":"fix rpm-qi parser name"},{"commit":"275f3860d5870303235b651d42650256e4db8ada","merge":"577811f a73fdb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #114 from kellyjonbrazil/dev\n\nDev v1.15.0"},{"commit":"a73fdb7478965f0f2c841ac01b2762db80ad0786","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["CHANGELOG","man/jc.1"]},"message":"update dates"},{"commit":"f2d746403a0ed764f931ae9e14d180bab107dcca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/rpm_qi.md","jc/parsers/rpm_qi.py"]},"message":"typo fix"},{"commit":"b7dbf2c49be4beb793495a0aaee7f05dbea5a3a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["jc/utils.py"]},"message":"doc formatting"},{"commit":"21f3c97788826e79b0c387f877c5adf269318e97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"]},"message":"rename rpm_qai to rpm_qi"},{"commit":"14b727cc717d04fefba1cc31b6f29b549ced986f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":73,"deletions":0,"files":["tests/fixtures/centos-7.7/rpm-qi-package.json","tests/fixtures/centos-7.7/rpm-qi-package.out","tests/test_rpm_qai.py"]},"message":"add rpm_qi tests"},{"commit":"abee226591ed4ae37351efc995017d28b27827d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":205,"deletions":14,"files":["README.md","docs/parsers/rpm_qi.md","jc/cli.py","jc/parsers/{rpm_qai.py => rpm_qi.py}","man/jc.1"]},"message":"rename rpm_qia to rpm_qi"},{"commit":"293ad39f4bcf326186dd917d8bc58d3964e5e4d6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"typo fix"},{"commit":"92443025811019f616f596abb60a2889f604c122","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":7,"deletions":6,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/rpm_qai.md","jc/parsers/rpm_qai.py"]},"message":"rpm parser doc update"},{"commit":"753cac25fb1e7e6cd2c742afa8d45ced068ea91d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":3,"files":["jc/parsers/rpm_qai.py"]},"message":"only add description if it exists"},{"commit":"0548263e898bf14f93d2fa423c0f0a9d9f2ff567","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":10468,"deletions":0,"files":["EXAMPLES.md","README.md","docs/parsers/rpm_qai.md","jc/cli.py","jc/parsers/rpm_qai.py","man/jc.1","tests/fixtures/centos-7.7/rpm-qai.json","tests/fixtures/centos-7.7/rpm-qai.out"]},"message":"add rpm -qai parser"},{"commit":"53776a9bf894988d6ef9221a62ab8b816c89560c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["man/jc.1","templates/manpage_template"]},"message":"note -a output is JSON"},{"commit":"cc7def9b76a7fa6de1e11b584676820f3acb0257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":18,"deletions":0,"files":["tests/fixtures/osx-10.14.6/finger.json","tests/fixtures/osx-10.14.6/finger.out","tests/test_finger.py"]},"message":"add OSX finger tests"},{"commit":"11a4422c25ed905f33475677bcc2f59f49c62a23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":51,"deletions":0,"files":["tests/fixtures/centos-7.7/finger.json","tests/fixtures/centos-7.7/finger.out","tests/test_finger.py"]},"message":"add centos 7.7 finger tests"},{"commit":"3a44785260514227b541530baf3e14b6c7ebe86a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/finger.py"]},"message":"del details key if details are blank"},{"commit":"e0d430c26c38db8de5a32741e05df412cffe45b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"update -r raw option info"},{"commit":"417b70020accfa4910016e9d3d12690a5488f6f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":129,"deletions":22,"files":["EXAMPLES.md","docs/parsers/finger.md","jc/parsers/finger.py","tests/fixtures/ubuntu-18.04/finger.json","tests/fixtures/ubuntu-18.04/finger.out"]},"message":"add idle time fields to finger parser"},{"commit":"7b29c464b72ef9a79bd872dab92cf65016490bcc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"date updated"},{"commit":"26d5529d86e4e459ad94226465c3697a050af0ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":7,"files":["docs/parsers/finger.md"]},"message":"remove aix support, add note for -s support. schema update"},{"commit":"852103c478321b84ffbbc0a876d5ece0c0881e1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":14,"files":["jc/parsers/finger.py"]},"message":"tweak regex to support arbitrary 'detail' data"},{"commit":"26a115421b0888e23f4348f1124e2ef7b39df4cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["CHANGELOG"]},"message":"add finger parser"},{"commit":"755b941a9aa602d95d9bc599f5c64e05f9e6216d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":35,"deletions":30,"files":["EXAMPLES.md","docs/parsers/finger.md","jc/parsers/finger.py"]},"message":"doc update"},{"commit":"fd1ca82d86649adeb84968142665e5e4fae3fa0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":263,"deletions":0,"files":["README.md","docs/parsers/finger.md","jc/cli.py","jc/parsers/finger.py","man/jc.1"]},"message":"add finger parser"},{"commit":"6fe175344fc61d4996a9ea20f6c5d429efb1fac7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"change examples link to github.io"},{"commit":"3590cda13a68616ee7eb8c85c5554ffb3fef036d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/last.md","jc/parsers/last.py"]},"message":"docs formatting"},{"commit":"2f1011dd85ec9b3550138ac4a4e1729fa5b4fe17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"readme update"},{"commit":"2b155261b3f6e4879b592f5bc052649ded5e3d69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"]},"message":"use new github.io links for documentation"},{"commit":"02f4d606d0a446c7cc74aedac6035ee79805950d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":69,"deletions":69,"files":["README.md","templates/readme_template"]},"message":"add documentation links to README.md"},{"commit":"577811f00b7fcd0396bb0e26a2985709bd2c65a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/_config.yml"]},"message":"Set theme jekyll-theme-cayman"},{"commit":"b4098d67a3a4a617d42c1389e0a88833c77b89b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"latest"},{"commit":"88bd7554aeb511c19e55dc3dde9c9376efb0485b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":3,"files":["docgen.sh","updatedocs.sh"]},"message":"add status messages"},{"commit":"b5ec16c5cafb78db093861cc30d9646207f2227a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":8,"files":["mangen.py","readmegen.py"]},"message":"formatting"},{"commit":"68fcb60a1460a35500180ec05a8cf5ba5706ff17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["updatedocs.sh"]},"message":"add updatedocs script"},{"commit":"e4781d60ce251f6d47f19bbe042e97f8aa9e2f18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":65,"insertions":188,"deletions":189,"files":["README.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","man/jc.1"]},"message":"update parser descriptions with backticks surrounding command names"},{"commit":"6201fb346a66ba762651624cdaf03f08e08579a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","jc/parsers/iw_scan.py"]},"message":"test backticks in description"},{"commit":"f88c8343f9dec5e0190df94a5109e6c749bda286","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","jc/parsers/iw_scan.py"]},"message":"update iw-scan description for documentation"},{"commit":"25410d33168ee7142bd8f8c739ef22a62a47eb6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":973,"deletions":70,"files":["README.md","mangen.py","readmegen.py","{man/template => templates}/manpage_template","templates/readme_template"]},"message":"create readmegen.py script. move jinja2 templates to templates folder"},{"commit":"4ff9952938d0654376efc94ca7d8a12f6df171af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["README.md"]},"message":"change OSX to macOS"},{"commit":"5e3f63a412c5b23e7515337521ebba6273b5c11f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["man/jc.1","man/template/manpage_template"]},"message":"add license and copyright info. use variables instead of hard-coded values"},{"commit":"e1f57be69efdfd7facd07df6ef0955a36c4fc18b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"]},"message":"add license info"},{"commit":"2c65d5eeccdc95d2de00ac6575a9e8d8458486bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":32,"deletions":8,"files":["man/jc.1","man/template/manpage_template"]},"message":"man page updates"},{"commit":"aa621f2f1ee043611c440683dfb63e6577d8fac4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":74,"deletions":9,"files":["CHANGELOG","man/jc.1","man/template/manpage_template"]},"message":"enhance man page"},{"commit":"ac932c6e59ad80115962d0ea91e6aaabc70c211e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/utils.md","jc/utils.py"]},"message":"update timestamp docs"},{"commit":"029f79da1647e53f97ca83ba92b1f36a131f3128","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"added info regarding updated dev scripts for automating doc generation"},{"commit":"153b2b4a7a216caae5b03f6d50d43980c13a705f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":68,"files":["docgen.sh"]},"message":"use jc to help automate the generation of its own docs"},{"commit":"709b2fe4eead06090f903718deeb06ec774fc26e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":16,"deletions":0,"files":["man/jc.1","man/template/manpage_template"]},"message":"add -h and -v options"},{"commit":"09c1fccc584e3d0582e19b520586419085ea8d04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":4,"deletions":6,"files":["man/jc.1","man/template/manpage_template","mangen.py"]},"message":"manpage updates"},{"commit":"fd254d99b782888fe7646e42a61f28aa99e7cba7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":193,"deletions":15,"files":["man/jc.1","man/template/manpage_template","mangen.py"]},"message":"add manpage generator"},{"commit":"88bd2c172217c498431e8904e74313bc27978785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"fix typo"},{"commit":"d03e2f0fc1d0310cd94702f4d3c959d71b0eb622","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":40,"deletions":0,"files":["CONTRIBUTING.md"]},"message":"add parser schema guidelines"},{"commit":"3f12a393bd37062cd1412128be495235b0c7351f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"formatting"},{"commit":"8c21284c5038bdc2e52ff4211fac747f33f52091","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["CONTRIBUTING.md"]},"message":"remove redundant license info"},{"commit":"e7d396c2157a77500017967dfc68ffaf32507c2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"update issues link"},{"commit":"f238fac0eb0c8e5133c6c9abf9ca709f5df7a925","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":49,"deletions":0,"files":["CHANGELOG","CONTRIBUTING.md","README.md"]},"message":"add contributing guidelines"},{"commit":"017228f80d9a65ad7715f31c539d9fca1615296f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add tested on Windows 10"},{"commit":"286c5fa9434e25434ee8f4825621f68464296469","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add dir parser"},{"commit":"74cfc13abe4cd09ca5470714caeaedd24c099770","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":12,"deletions":21,"files":["tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-S.json","tests/fixtures/windows-10/dir-dirs.json","tests/fixtures/windows-10/dir-files.json","tests/fixtures/windows-10/dir-mix.json","tests/fixtures/windows-10/dir-raw.json","tests/fixtures/windows-10/dir.json","tests/test_dir.py"]},"message":"fixup dir parser tests"},{"commit":"0ee4a6c377321cf6ff67ced38e9a07a8f6313943","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":207,"deletions":460,"files":["docs/parsers/dir.md","jc/parsers/dir.py"]},"message":"update schema and add epoch naive timestamp"},{"commit":"283433578dfc3f132ef35727ce5bafb3e390896c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":46,"deletions":0,"files":["EXAMPLES.md","README.md"]},"message":"add dir parser"},{"commit":"9559c85057308e8815d4654bbe0062a5858c0b2b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":0,"files":["jc/utils.py","tests/test_utils.py"]},"message":"add windows dir format"},{"commit":"c5c020f5654038dacba542be3784a35d7333cbcc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/parsers/dir.md"]},"message":"add /S option"},{"commit":"95ec79bceb3d0c4245e36b7b16cfda6e16b01197","merge":"8f8be8a 5b60c74","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #107 from rasheed-rd/add-dir-parser\n\nAdd windows dir command parser"},{"commit":"8f8be8aa33f0b708ebd9a35c6b288572443d7181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"add -1 option info"},{"commit":"5b60c7445a3f8bd2ae1587aa0ffaeaf093966f9a","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","commit_by":"Rasheed Elsaleh","commit_by_email":"rasheed@rebelliondefense.com","stats":{"files_changed":5,"insertions":469,"deletions":400,"files":["docs/parsers/dir.md","jc/parsers/dir.py","tests/fixtures/windows-10/dir-S.json","tests/fixtures/windows-10/dir-S.out","tests/test_dir.py"]},"message":"Add support for /S and update documentation"},{"commit":"d9dbcc8b526c8de9c6d12ac580880fd606dc68cf","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","commit_by":"Rasheed Elsaleh","commit_by_email":"rasheed@rebelliondefense.com","stats":{"files_changed":15,"insertions":149,"deletions":73,"files":["docs/parsers/dir.md","jc/parsers/dir.py","tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-Q.json","tests/fixtures/windows-10/dir-Q.out","tests/fixtures/windows-10/dir-dirs.json","tests/fixtures/windows-10/dir-dirs.out","tests/fixtures/windows-10/dir-files.json","tests/fixtures/windows-10/dir-files.out","tests/fixtures/windows-10/dir-mix.json","tests/fixtures/windows-10/dir-mix.out","tests/fixtures/windows-10/dir-raw.json","tests/fixtures/windows-10/dir.json","tests/test_dir.py"]},"message":"Add parent dir to structure. Add test cases. Remove support for /Q"},{"commit":"79bc525970b38dea68b4859ac5dd32fc681e5994","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"]},"message":"add codes field to schema"},{"commit":"9dae1091ddc6141694ebfdc5ae649582cb879ccd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"]},"message":"typo fix"},{"commit":"74d3ac686a69518c1048260e37a0245ff254ff57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":61,"deletions":0,"files":["tests/fixtures/ubuntu-18.04/dpkg-l-codes.json","tests/fixtures/ubuntu-18.04/dpkg-l-columns500.json","tests/fixtures/ubuntu-18.04/dpkg-l.json","tests/test_dpkg_l.py"]},"message":"add dpkg-l tests"},{"commit":"cf3cc636badcf4ae6db1e5ee5e57ca0331ee5b0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add dpkg-l parser info"},{"commit":"a720441e1d34771c5a54876cb7dd63fb8c9f408e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":54,"deletions":0,"files":["EXAMPLES.md"]},"message":"add dpkg -l example"},{"commit":"0a7ed0959df07e2f36d9ec3ca8c294cfdaf10396","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"]},"message":"rename err to error"},{"commit":"eb83c9b86dc6d1ff15efed30993071834b65a7d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":21,"files":["docs/utils.md"]},"message":"replace parse_datetime_to_timestamp with timestamp class"},{"commit":"5c0142dd19eee14f4f1c287f0543e29824f9ae70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":1797,"deletions":2,"files":["CHANGELOG","docgen.sh","docs/parsers/dpkg_l.md","jc/cli.py","jc/parsers/dpkg_l.py","jc/parsers/universal.py","tests/fixtures/ubuntu-18.04/dpkg-l-codes.out","tests/fixtures/ubuntu-18.04/dpkg-l-columns500.out","tests/fixtures/ubuntu-18.04/dpkg-l.out"]},"message":"add dpkg-l parser"},{"commit":"c326c8dc8356b55bba13864156adf30607205ece","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":18,"insertions":194,"deletions":1,"files":["jc/parsers/time.py","tests/fixtures/osx-10.14.6/time-l.json","tests/fixtures/osx-10.14.6/time-l.out","tests/fixtures/osx-10.14.6/time-lp.json","tests/fixtures/osx-10.14.6/time-lp.out","tests/fixtures/osx-10.14.6/time-p.json","tests/fixtures/osx-10.14.6/time-p.out","tests/fixtures/osx-10.14.6/time.json","tests/fixtures/osx-10.14.6/time.out","tests/fixtures/ubuntu-18.04/time-p.json","tests/fixtures/ubuntu-18.04/time-p.out","tests/fixtures/ubuntu-18.04/time-verbose.json","tests/fixtures/ubuntu-18.04/time-verbose.out","tests/fixtures/ubuntu-18.04/time.json","tests/fixtures/ubuntu-18.04/time.out","tests/fixtures/ubuntu-18.04/time2.json","tests/fixtures/ubuntu-18.04/time2.out","tests/test_time.py"]},"message":"add TypeError to except block. add /usr/bin/time tests"},{"commit":"fc4082a03feb5645a1ad687908782a2584a58956","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":131,"files":["jc/utils.py"]},"message":"remove old parse_datetime_to_timestamp function"},{"commit":"c8655565ff8718f0f14d41696b81e6539529dde1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"]},"message":"use new timestamp class"},{"commit":"638f879f16c9e87edb60953f4fd0b1c7ad92f277","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/dig.py"]},"message":"use new timestamp class"},{"commit":"1d221bf7e6128d57bd769c0fe8f37f7a94da8cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/who.py"]},"message":"use new timestamp class"},{"commit":"60ea71f0ef931dccf09e6eb0cb737ddad0b47f0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/timedatectl.py"]},"message":"use new timestamp class"},{"commit":"d8bdd35a3f462efcdc871426309299e8aefb0a79","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/stat.py"]},"message":"use new timestamp class"},{"commit":"7463891c53f3670710dfa72ed1422431c274fe4a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/last.py"]},"message":"use new timestamp class"},{"commit":"7537aec76fa07384c4439f34c50d4e3f001c0dfa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":8,"files":["jc/parsers/date.py"]},"message":"use jc.utils.timestamp instead of jc.utils.parse_datetime_to_timestamp()"},{"commit":"62234e39a8533362a20f106c64326ed69f430006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":8,"files":["jc/parsers/upower.py"]},"message":"use jc.utils.timestamp instead of jc.utils.parse_datetime_to_timestamp()"},{"commit":"be004b7b3fe9217160c6418907e7d8aad10e5fae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":172,"deletions":15,"files":["jc/utils.py","tests/test_utils.py"]},"message":"make parse_datetime_to_timestamp function a class called timestamp for easier use"},{"commit":"82539444b24169b2eb762485ed032fc968a81f71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":23,"deletions":21,"files":["docs/parsers/time.md","jc/parsers/time.py"]},"message":"fix indentation for int and float conversions. add real_time field to schema"},{"commit":"a571d3cbafd5048d1d59070e1791398ae410197f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/time.md","jc/parsers/time.py"]},"message":"fix typo"},{"commit":"a038c14c23ea27264df61a38e0301de8d1fa1b9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":8,"deletions":8,"files":["EXAMPLES.md","docs/parsers/time.md","jc/parsers/time.py"]},"message":"change microseconds to centiseconds"},{"commit":"25a85d874cd2b57a7700b0c2dca61132127732b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iw_scan.py"]},"message":"update docs"},{"commit":"884c36ff42df4f580c8e2b4705def8e4c1182e39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":536,"deletions":1,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","docs/parsers/iw_scan.md","docs/parsers/time.md","jc/cli.py","jc/parsers/time.py"]},"message":"add /usr/bin/time parser"},{"commit":"b98e72b8b4eda0ab5ede7725226e61634af572eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add ls parser info"},{"commit":"05885c0096b5ee142ecff2d17e37c446518998a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":931,"deletions":18,"files":["docs/parsers/ls.md","jc/parsers/ls.py","tests/fixtures/ubuntu-18.04/ls-l-iso.json","tests/fixtures/ubuntu-18.04/ls-l-iso.out","tests/test_ls.py"]},"message":"add epoch and epoch_utc timestamps"},{"commit":"4c9761231af897658c3a2c0abcc476aa8b43d1b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":118,"deletions":81,"files":["CHANGELOG","EXAMPLES.md","README.md","docs/parsers/dig.md","jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json"]},"message":"add when_epoch and when_epoch_utc fields"},{"commit":"656eaa150861948091ef9d6323805c2698039bc6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"1560dcddcf82f55fffce22d1b46d372b25a9d0fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"]},"message":"add acpi, upower parsers and -v version option"},{"commit":"08d4cd4870c7acaf3a453d1400b64d77d462437b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":114,"deletions":43,"files":["EXAMPLES.md","docs/parsers/acpi.md","jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.json","tests/fixtures/generic/acpi-V2.json","tests/fixtures/generic/acpi-V3.json","tests/fixtures/generic/acpi-V4.json"]},"message":"add time calculations to acpi parser"},{"commit":"9767a50cededb140575e195abf79ce49c4f53789","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":48,"deletions":46,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/who.md","jc/parsers/who.py","jc/utils.py","tests/fixtures/centos-7.7/who-a.json","tests/fixtures/centos-7.7/who.json","tests/fixtures/osx-10.14.6/who-a.json","tests/fixtures/osx-10.14.6/who.json","tests/fixtures/ubuntu-18.04/who-a.json","tests/fixtures/ubuntu-18.04/who.json","tests/test_utils.py"]},"message":"update who parser to add epoch naive timestamp"},{"commit":"cd86890ed1493644e391e52e33561e9a77631a51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"]},"message":"add website to info and use variables for version info"},{"commit":"ba0dd3b9ca98a042c772898302fcfe5fdc84f79a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["tests/test_utils.py"]},"message":"add parse_timedate_to_timestamp test for format 7300"},{"commit":"8d7fa07ffd50f38336a448eb506a76d9d4849a6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":11,"files":["tests/fixtures/centos-7.7/timedatectl.json"]},"message":"unformat json"},{"commit":"cade1bfe6e56b5926898b7204e911885efebd5a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":2,"files":["tests/fixtures/centos-7.7/timedatectl.json","tests/fixtures/ubuntu-18.04/timedatectl.json"]},"message":"update timedatectl tests for new epoch_utc field"},{"commit":"daec4ab0a7f572e872b27b043d51f68e5e06300f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":20,"deletions":4,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/timedatectl.md","jc/parsers/timedatectl.py","jc/utils.py"]},"message":"add epoch_utc field to timedatectl parser"},{"commit":"3c96bc319615c824a06c388e9e3c1d68a9bf4084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"]},"message":"version bump"},{"commit":"7f7d8d4bd6f37015b11bac60a7bd99e8d3eca108","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":0,"files":["docs/parsers/stat.md","jc/parsers/stat.py"]},"message":"update stat docs"},{"commit":"47263661a41987f334fd484e866e0aa8859cde5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":2,"files":["EXAMPLES.md"]},"message":"update stat example"},{"commit":"4c42a086d206919dfe4f1c0801fe4fb1027cb1cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":6,"files":["jc/utils.py"]},"message":"clean up debug code"},{"commit":"5d2541a5c4bc93f3943a491c76df7f8d4e2cf44b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/utils.py"]},"message":"remove auto c locale and use a manual format rule for windows and linux compatibility"},{"commit":"d91d170b49bfc88c0b2fb54475705c038172f1c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/utils.py"]},"message":"try manual c locale format for windows"},{"commit":"6d1f4584a9ccd0f0f7ed4fdf408576a9e7f5046b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"]},"message":"try manually setting time format for windows compatibility"},{"commit":"1d76d96bcf4185cffb7066bec637913099399db5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/utils.py"]},"message":"debug windows issue"},{"commit":"e8847c998c91131acf5ee0f6485e9976c0fce3ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["tests/fixtures/centos-7.7/stat.json","tests/fixtures/freebsd12/stat.json","tests/fixtures/osx-10.14.6/stat.json","tests/fixtures/ubuntu-18.04/stat.json"]},"message":"update stat tests"},{"commit":"da88e49bae2f3fecff623f52c20bf994b653583e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":69,"deletions":29,"files":["docs/parsers/stat.md","jc/parsers/stat.py"]},"message":"add new examples"},{"commit":"65c3a12e5422782df40489c3c431677f5657dbf5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":35,"deletions":24,"files":["jc/parsers/stat.py","jc/utils.py"]},"message":"simplify None data scenario"},{"commit":"d8d600cc36bde4e6216b935f87a765599e896714","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"add reference to -h for help"},{"commit":"507999b117b024fed1ccf067bd5dc411dbeb268c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":34,"deletions":19,"files":["docs/utils.md","jc/utils.py","tests/test_utils.py"]},"message":"add stat command timestamp detection"},{"commit":"8ad164eb340e135eeeb10b721172916182f37e30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_cli.py"]},"message":"fix tests for compact output"},{"commit":"a507df140b245b83b1c46e8462b44e1145c42f2a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add compact json info"},{"commit":"8912a99986a977ee6ca7bbe2368f5033644577b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/cli.py"]},"message":"make default json output more compact"},{"commit":"1953f9882890cd0e8c515d43ce28c96f918b0ab4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"]},"message":"add version info. add json now supports unicode output"},{"commit":"7515218ddd2cdcfcebd67850140e842f2f121226","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":10,"deletions":14,"files":["jc/cli.py","jc/utils.py"]},"message":"use jc.utils for all warning and error messages. simply error and warning formatting."},{"commit":"36c11201366cefedee4244fb71a4a9cc6507e6ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"formatting"},{"commit":"8fa0fe64d8418093c7f28cdc70a7f409956aeb04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"]},"message":"add -v to helptext. minor formatting"},{"commit":"c1a8201b140c65579ff9f8427322b67653bf3006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["EXAMPLES.md"]},"message":"add copyright"},{"commit":"398bbac48c8a716b1872843d671aa6ceaeba6a78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"simplify return value for parse_datetime_to_timestamp()"},{"commit":"ea71a42bbdd9b09a457727cfe763054625f7901a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/cli.py"]},"message":"formatting"},{"commit":"1c16d25b17a7282a62a5ebd9755df5569c57435f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":30,"deletions":9,"files":["README.md","jc/cli.py"]},"message":"add version option (-v) and copyright information. add 'ensure_ascii=False' to json dumps to properly show UTF-8 copyright character"},{"commit":"9d12ded889f656656267cbf7a91d71267201f736","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"help description change"},{"commit":"5312701515ecb3a10598bb9dcf2f73b7eae71b93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add - make all external python requirements optional"},{"commit":"808c7bc0a94ecfd160ee2b257e5feec347829a5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/xml.py"]},"message":"make xmltodict library optional"},{"commit":"4d394015f458f284d052ce2c1a0c8492916c5b3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/yaml.py"]},"message":"make ruamel.yaml library optional"},{"commit":"3638298af8ebc01d54aa3ab5668d0adedca957e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":53,"deletions":44,"files":["jc/cli.py"]},"message":"make pygments library optional"},{"commit":"5f00973e400629bd68c0ab60ed9005410278f855","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/date.py"]},"message":"remove parenthesis to normalize text for naive timezone detection"},{"commit":"0f6e2c14fcb69f664c29083ec5207326f842dfdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/parsers/upower.py"]},"message":"simplify timestamp failure logic"},{"commit":"51813da61994226ba40478825d47f80c23413349","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":4,"files":["jc/parsers/date.py"]},"message":"add offset timezones. fix timestamp logic on conversion failure"},{"commit":"e7751322ea195cac7f1921ba8e0364c442065d20","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/iw_scan.py"]},"message":"formatting"},{"commit":"26ef29843784ade3d55410be13300dd6f4c06890","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":6,"files":["jc/utils.py"]},"message":"change return to always include the entire object but all keys may be None if conversion fails"},{"commit":"badaf8ce73d7deb0ec2be244e27b4bf8cddbea19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":14,"files":["jc/utils.py"]},"message":"comment formatting"},{"commit":"b123a622039f3cc32643a3bfc0766154d660f8bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/utils.py"]},"message":"move locale change formats to the end of the list"},{"commit":"cfd77e42522aa2ebeada9f45ac99bd1d3414f782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/utils.py"]},"message":"reset locale to None on exception"},{"commit":"38f814072eac5370059f1b4203316eee41cf535b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":8,"files":["jc/utils.py"]},"message":"better normalization of datetime string. better UTC detection. More formats supported with detected locale."},{"commit":"a0db7754e384a0c95f2099bf894f3a22bd33c002","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add nixos install info"},{"commit":"f07620afc7dc0d0d605eb483ef36c5979b33cdfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":18,"deletions":7,"files":["README.md","jc/__init__.py","jc/cli.py"]},"message":"move version to jc.__init__.py\nadd -h option for help instead of always showing on error\nuse jc.utils.error_message for the following errors: missing/incorrect arguments, parser not found, missing piped data"},{"commit":"c1b0d27752726989c6051f683a1194941bee598c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":10,"files":["runtests.sh"]},"message":"remove old commented commands"},{"commit":"430a5108aa265d4df0e4584eade54759da864c61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":19,"deletions":60,"files":["runtests.sh","tests/test_last.py","tests/test_last2.py"]},"message":"move all tests to github actions"},{"commit":"111ce92fc9c33b82c7d1a1664dda046ea5993f6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":0,"deletions":1,"files":["tests/{localtest_date.py => test_date.py}","tests/{localtest_last.py => test_last2.py}","tests/{localtest_upower.py => test_upower.py}","tests/test_utils.py"]},"message":"attempt all tests in github actions with timezone correction"},{"commit":"c851e8a58d98b2a4907cf1e7cf7c7d8d8dc04dc6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_utils.py"]},"message":"force github action"},{"commit":"39f4bcd9b41450068903ea2843508586eccdf709","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"Change Windows timezone\n\nuse \"Pacific Standard Time\""},{"commit":"4a610c4c81493788b8351e8c74aabe819c981c02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["tests/test_utils.py"]},"message":"force github action"},{"commit":"89ee11945d4e2db107a33ef0d61e0c6015ac8ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"Change timezone provider\n\nuses: szenius/set-timezone@v1.0"},{"commit":"dadb09b74a69d1852f8433e0e32ccdd67bd91181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_utils.py"]},"message":"force github action"},{"commit":"1b1f638b97dc5e6f2767183eb363b79ae3c9b3c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":[".github/workflows/pythonapp.yml"]},"message":"Change timezone change provider\n\nchange to actions/set-timezone-action"},{"commit":"794fc4ed44d1565514303090403d68ba5d639cb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":36,"deletions":8,"files":["jc/utils.py","tests/test_utils.py"]},"message":"add parse_datetime_to_timestamp() tests"},{"commit":"72f735bf9211d7beddcf58819fe465722f5d7c5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":[".github/workflows/pythonapp.yml"]},"message":"Set Timezone to America/Los_Angeles\n\nUsing zcong1993/setup-timezone"},{"commit":"912877f25ad562ed4cafe7b2d7446bd48b477ea2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"additional timezone info"},{"commit":"2772c5ae436ea437d833003372d53a3d3f955ea0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"a7ad24d2cb61d84cf2846f8fa43af31f0597043e","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","commit_by":"Rasheed Elsaleh","commit_by_email":"rasheed@rebelliondefense.com","stats":{"files_changed":13,"insertions":772,"deletions":0,"files":["docgen.sh","docs/parsers/dir.md","jc/cli.py","jc/parsers/dir.py","tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-C.out","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-ODTC.out","tests/fixtures/windows-10/dir-Q.json","tests/fixtures/windows-10/dir-Q.out","tests/fixtures/windows-10/dir.json","tests/fixtures/windows-10/dir.out","tests/test_dir.py"]},"message":"Add dir parser\n\nAdd usage commands\n\nFix example options\n\nupdate dir.md"},{"commit":"a364a6a9faeb6aa290b790f3dec74e92b8670534","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"]},"message":"add note regarding calculated timestamps"},{"commit":"7b2dc86a8d974e7984fe2540f56a66c2b9386acd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":19,"files":["EXAMPLES.md"]},"message":"update last example with new timestamp fields"},{"commit":"ad645636d07d0423253f19068a22b2a28251b05f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":86,"deletions":50,"files":["CHANGELOG","EXAMPLES.md","README.md","docs/parsers/uptime.md","jc/parsers/uptime.py"]},"message":"update uptime docs"},{"commit":"2f2f297b29fbe3172647a81db084b3564a441d40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["tests/fixtures/centos-7.7/uptime.json","tests/fixtures/osx-10.11.6/uptime.json","tests/fixtures/osx-10.14.6/uptime.json","tests/fixtures/ubuntu-18.04/uptime.json"]},"message":"update uptime fixtures with new fields"},{"commit":"099ae3fde03f8157298f6b412bdddb8bd56da09a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":22,"files":["jc/parsers/uptime.py"]},"message":"fix issue when there is no data"},{"commit":"e9febe98ac5ec0e03791c5b6794446a2c3312fb1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["runtests.sh"]},"message":"add localtest partition lines for readability"},{"commit":"5fbd07cccf9fb697b996dcc3949eef5b1c09e655","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":59,"deletions":26,"files":["jc/parsers/uptime.py"]},"message":"rewrite of uptime parser including new fields"},{"commit":"5fed4698c2c1f1b7e05c5b4c51639f818e049b53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":6,"files":["docs/parsers/last.md","jc/parsers/last.py"]},"message":"update docs and version number"},{"commit":"ed7eb0983a4dfcc1d66a2957be3e10b2203d909e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/last.py"]},"message":"use parse_datetime_to_timestamp function instead of custom format string"},{"commit":"90c7e18e5fc5ea9fcf6157cc2656f47193d78411","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":11,"files":["EXAMPLES.md"]},"message":"update date example"},{"commit":"953ab5c3bd0c8b6eef29b717edaf1aa2380c2b93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":0,"files":["runtests.sh","tests/{test_upower.py => localtest_upower.py}"]},"message":"make upower tests local only"},{"commit":"699c97d8a07f7575454746159ac4d19981cd1a5c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add last parser info"},{"commit":"e4ca0de92a689ce93b91d86106a5da590226855a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":100,"deletions":0,"files":["tests/fixtures/generic/upower-i-c-locale.json","tests/fixtures/generic/upower-i-non-utc.json","tests/fixtures/generic/upower-i-utc.json",".../{upower-i-utc.out2 => upower-i-utc.out}","tests/fixtures/ubuntu-18.04/upower-d-clocale.json","tests/fixtures/ubuntu-18.04/upower-d.json","tests/fixtures/ubuntu-18.04/upower-i.json","tests/test_upower.py"]},"message":"add upower tests"},{"commit":"04745a36b84cc79e56bde2a0e92a4ee9ab4a1538","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":5,"files":["CHANGELOG","jc/utils.py"]},"message":"doc update"},{"commit":"5936940532b8b753e67c9f5cd9287f34cc84ae9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":136,"deletions":186,"files":["docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date-after-midnight.json","tests/fixtures/generic/date-before-midnight.json","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/fixtures/ubuntu-20.04/date2.json"]},"message":"rewrite of date parser using datetime library"},{"commit":"b3eb064b6753d6e894884e1c16054630c2396fe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"]},"message":"clarify format definition comments"},{"commit":"e4b41057e302074ac2a81ad8c36b6f95cd6b7db2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":24,"deletions":0,"files":[".../{upower-i.out => upower-i-c-locale.out}","tests/fixtures/generic/upower-i-non-utc.out",".../generic/{upower-i2.out => upower-i-utc.out2}"]},"message":"update upower fixture names"},{"commit":"1d41c46cc762ab0c78b819e56db7df39f1111d5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":34,"deletions":5,"files":["jc/utils.py"]},"message":"normalize datetime string to remove all timezones except UTC"},{"commit":"a5c444587b3f0874fcc2833dc4e759c2dc1c7834","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":28,"deletions":0,"files":["tests/fixtures/generic/date-after-midnight.json","tests/fixtures/generic/date-after-midnight.out","tests/fixtures/generic/date-before-midnight.json","tests/fixtures/generic/date-before-midnight.out","tests/localtest_date.py"]},"message":"add before and after midnight date tests"},{"commit":"a56f471be980be16e73d3a91e2b12aad26c6d38c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/fixtures/generic/upower-i2.out"]},"message":"update fixture to use UTC for better testing"},{"commit":"6a6b26ed8d97014c2a5c7d91a4cd9b23f49530fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/date.py"]},"message":"fix 12 to 24 hour conversion for midnight cases"},{"commit":"f62446c152d89f2d37b22ffe9d9de5b5c9fa7049","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":10,"files":["jc/utils.py"]},"message":"rename variables. add another european time format"},{"commit":"56011f1f172344cab2a8e869e7a6df6e45c45874","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":73,"deletions":6,"files":["EXAMPLES.md","docs/parsers/upower.md","jc/parsers/upower.py"]},"message":"updated upower examples"},{"commit":"6d44091c80318fde6c09cd850e6dc5afde7fe799","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":53,"files":["jc/utils.py"]},"message":"refactor parse_datetime_to_timestamp()"},{"commit":"440c458eb42925dffe2d7b026279468fa2fa1bb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"no need for ternary clause"},{"commit":"798250af6116441385339806c8f26bc9720ad302","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":18,"deletions":24,"files":["docs/parsers/upower.md","jc/parsers/upower.py"]},"message":"use jc.utils.parse_datetime_to_timestamp() function for timestamp creation"},{"commit":"c762de29c6491790908451aa20f6aa12fdfa9722","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":32,"deletions":2,"files":["docs/utils.md","jc/utils.py"]},"message":"doc updates"},{"commit":"0701e65e97165efd40ab2ae5087897de3588ea32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":106,"deletions":0,"files":["jc/utils.py"]},"message":"add parse_datetime_to_timestamp() function"},{"commit":"209d54e8b5be6476d896cee1a5274bd2b46219e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/parsers/date.md","jc/parsers/date.py"]},"message":"add hour_24 to schema docs"},{"commit":"2b38462de7d2fa61dd5d2a184e853279f1a9c84b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":33,"deletions":27,"files":["EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py"]},"message":"update examples"},{"commit":"1e8e5533162cb01053ee25e9dbc709a429e58070","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":31,"deletions":14,"files":["CHANGELOG","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/fixtures/ubuntu-20.04/date2.json","tests/localtest_date.py"]},"message":"add hour_24 field"},{"commit":"ab42e6bb15026d6c46e15197c62bc3e8ef95c80d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/date.md","jc/parsers/date.py"]},"message":"formatting"},{"commit":"680288454090f3c48c7f0580cdcb919c0b5a883e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["docs/parsers/date.md","jc/parsers/date.py"]},"message":"ensure period is always uppercase in dict value. update period documentation"},{"commit":"7cb8577b9655f258f2910e7e7bcf3266d4cbece0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":70,"deletions":48,"files":["docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/ubuntu-20.04/date2.out"]},"message":"correct epoch_utc calculation. Fix for 12 hour vs. 24 hour representation"},{"commit":"55810ccd1f17ef6a4b1cb72fc21f6cf990ef8bb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/upower.py"]},"message":"set epoch_dt conversion again if not C locale"},{"commit":"f9921720cd0b9b0d76d66e6eb5bfe43481f5f52b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":4,"deletions":94,"files":["runtests.sh","tests/test_date.py","tests/test_last2.py"]},"message":"revert to local testing for naive datetime objects"},{"commit":"cda1ebd271aa8fd1b716054a2149f876d8087230","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["tests/test_date.py","tests/test_last2.py"]},"message":"try tzset()"},{"commit":"6901e4a23aad0b58cbbfac86c61917115d115dfe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":89,"deletions":3,"files":["runtests.sh","tests/test_date.py","tests/test_last2.py"]},"message":"try setting timezone env variable before tests to ensure it is the same on all test systems"},{"commit":"6bc21d3c735edc7897e49afd2a5ea9e3aa56d7fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["runtests.sh","tests/{test_date.py => localtest_date.py}","tests/localtest_last.py"]},"message":"fix date parser tests - local tests only since timezones may not match on github actions VMs"},{"commit":"1ef231e26a2898d2a01f341fb92014df92703f72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"add date parser updates"},{"commit":"3cd43f0f985a3b8a4e74bf5632bd8dac92d751c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/upower.md","jc/parsers/upower.py"]},"message":"formatting"},{"commit":"156501996688e62dd61a8456206218582a6cbe1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":85,"deletions":63,"files":["EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json"]},"message":"fix weekday numbering to be ISO 8601 compliant. Add naive calculated epoch timestamp field"},{"commit":"0a4de2d3a1c235d1ac2d6e59346e77761fe51885","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":2,"files":["docs/parsers/last.md","docs/parsers/upower.md"]},"message":"add naive datetime calculation info to docs"},{"commit":"a058f6c174e31f5e6040883bb544b83abd88c749","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/last.py"]},"message":"added naive epoch calculation info to docs"},{"commit":"d8e5d03b01a87704424f5259cf6bd977274fd6ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":33,"files":["jc/parsers/upower.py"]},"message":"naive updated_epoch timestamp calculation added"},{"commit":"9dc62eff2eaaafec89c5b8797d8ca8e4c77a07d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":34,"deletions":21,"files":["jc/parsers/upower.py"]},"message":"remove epoch conversions"},{"commit":"d4fea17c57a97d6914624b06208b9439bf2eb05f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":13,"deletions":6,"files":["docgen.sh","docs/parsers/upower.md","jc/parsers/upower.py"]},"message":"use UTC when calculating epoch timestamp. reset time locale to default after changing"},{"commit":"3dd7a5b77ea708047bc12be9f2caddd9078723f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":230,"deletions":0,"files":["docgen.sh","docs/parsers/upower.md"]},"message":"add upower docs"},{"commit":"d77c90a3ba2036b216f4a612876ace988eafd217","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":114,"deletions":6,"files":["jc/parsers/upower.py"]},"message":"fix quoted values in detail level. Add examples"},{"commit":"01f0c20df09fd4aa12bd108928b97376b51ef31a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":0,"files":["tests/fixtures/ubuntu-18.04/upower-d-clocale.out"]},"message":"add sample using C locale timestamp"},{"commit":"aafbe576b3b754de91591d9ec2dae9e9f827dee4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":137,"deletions":36,"files":["jc/parsers/upower.py"]},"message":"working parser and processor"},{"commit":"bd68ad40345fb1f69be0e0f87dc67134f826cd06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/upower.py"]},"message":"don't modify detail_type value since it is no longer a key"},{"commit":"bfee017c138bb30ec6af836685013b7124028974","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":61,"deletions":20,"files":["jc/parsers/upower.py"]},"message":"made the schema more explicit by hardcoding more items. still working on the schema"},{"commit":"61f532cfd0b7fbf14a58a0fd638bcbfb03fbde72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["jc/parsers/upower.py"]},"message":"working history list"},{"commit":"58dbbb75b607d0b29be185c3b8c3f0d8af21ecad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":21,"files":["jc/parsers/upower.py"]},"message":"simplified logic"},{"commit":"8d88b91fcf5060d7d54f687efec3e3a606bab767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/upower.py"]},"message":"move if statements and generalize the history detail detection"},{"commit":"ad39fc60299089f56f37baac71820e50cbe87ed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":268,"deletions":0,"files":["jc/cli.py","jc/parsers/upower.py","tests/fixtures/generic/upower-i.out","tests/fixtures/generic/upower-i2.out","tests/fixtures/ubuntu-18.04/upower-d.out","tests/fixtures/ubuntu-18.04/upower-i.out"]},"message":"working upower parser. history lines are ignored"},{"commit":"89f1fd96e6b7aa0acf6272e4f3469005d4f7c6bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":87,"deletions":0,"files":["tests/fixtures/generic/acpi-V.json","tests/fixtures/generic/acpi-V2.json","tests/fixtures/generic/acpi-V3.json","tests/fixtures/generic/acpi-V4.json","tests/fixtures/ubuntu-18.04/acpi-V.json","tests/test_acpi.py"]},"message":"add acpi tests"},{"commit":"bd425f2493b68949c1fa02cd1d3289ec882d9b0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":321,"deletions":2,"files":["CHANGELOG","EXAMPLES.md","docgen.sh","docs/parsers/acpi.md","jc/cli.py","setup.py"]},"message":"version bump to v1.15.0. Add acpi docs"},{"commit":"46962ff02a0630766a927babc92e11ec91b1f789","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":11,"files":["jc/parsers/acpi.py"]},"message":"remove redundant lines"},{"commit":"e4cb88b05166815e8ad03b646bd3f2b1da7f0d4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/acpi.py"]},"message":"remove unneeded line-state assignment"},{"commit":"32840703dc1d88412712b08db1c9bdaebbc34450","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":39,"files":["jc/parsers/acpi.py"]},"message":"remove redundant code"},{"commit":"1f7aafd0415a79e0547cc6f1c008c1918f8fb460","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":19,"deletions":9,"files":["jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out","tests/fixtures/generic/acpi-V4.out"]},"message":"fix for full charge batter case. Clean up battery object logic"},{"commit":"7378d5dce43f75440cb57903e8ae0c1c615b0782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/acpi.py"]},"message":"remove comment"},{"commit":"84f76866cdf76f67b34de999fd987de8a02f0306","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":197,"deletions":3,"files":["jc/parsers/acpi.py"]},"message":"working process function"},{"commit":"322da9ea6a1ceea1152d720797adb8f3a7dc1199","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":59,"deletions":12,"files":["jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out"]},"message":"working parser"},{"commit":"58645301ec111bfeb2a618f5f169cc734042dc5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":236,"deletions":1,"files":["jc/cli.py","jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out","tests/fixtures/generic/acpi-V2.out","tests/fixtures/generic/acpi-V3.out","tests/fixtures/ubuntu-18.04/acpi-V.out"]},"message":"add acpi command parser"},{"commit":"1e18dd30a824b0463f0cad86e0da7094c47d34f9","merge":"20f9b7f cc6a19a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #102 from kellyjonbrazil/dev\n\nDev v1.14.4"},{"commit":"cc6a19adccea3e10243a166b87d852b6f95414b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/yaml.py"]},"message":"fix typo in comments"},{"commit":"2a5588b177a24d5b78a4b5a515aba515804b7baa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":13,"deletions":3,"files":["CHANGELOG","jc/cli.py","jc/parsers/yaml.py","setup.py"]},"message":"packaging fix for yaml parser and pyoxidizer"},{"commit":"20f9b7f88b97ed68aba46e102b8c7b72443b9c85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"fix typo"},{"commit":"d7e32313cd9776b4a6af38cc2819d6e4ef8c0d55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"fix typo"},{"commit":"fb5654d3c4549e84940e2518f2d214debdd42d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"258f1433b36a7ee117ac43953edb4fe964603e7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]},"message":"add locale info to readme"},{"commit":"fb723ae8bd7bb51f9a4bab380ec1bc54cda0445b","merge":"87b506d 283b89e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #101 from kellyjonbrazil/dev\n\nDev v1.14.3"},{"commit":"283b89e37c38a3082203e43e38569c8b0bb11e12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["CHANGELOG","jc/parsers/dig.py"]},"message":"simplify answer data logic"},{"commit":"f450f9eb8b7d382af316e88301e72af01a018be9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":74,"deletions":0,"files":["tests/fixtures/centos-7.7/hciconfig-a.json","tests/fixtures/centos-7.7/hciconfig.json","tests/fixtures/ubuntu-20.04/hciconfig-a.json","tests/fixtures/ubuntu-20.04/hciconfig.json","tests/test_hciconfig.py"]},"message":"add hciconfig tests"},{"commit":"b3f8cf99a4874335c6b43e105e0c1562c08256dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":15,"deletions":15,"files":["jc/parsers/hciconfig.py"]},"message":"work for both tabs and spaces"},{"commit":"4301ea8caea7c14f59bcddf09668d0198e1115a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/hciconfig.py"]},"message":"remove debug line"},{"commit":"c672d1c174a42ce44544dfaec0ebcf3c30fd7acf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":903,"deletions":22,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","docs/parsers/hciconfig.md","jc/parsers/hciconfig.py","man/jc.1"]},"message":"initial working hciconfig parser"},{"commit":"229e953a38471cdd41af0810577d324329840a4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":205,"deletions":2,"files":["jc/cli.py","jc/parsers/hciconfig.py","setup.py","tests/fixtures/centos-7.7/hciconfig-a.out","tests/fixtures/centos-7.7/hciconfig.out","tests/fixtures/ubuntu-20.04/hciconfig-a.out","tests/fixtures/ubuntu-20.04/hciconfig.out"]},"message":"initial add of hciconfig parser"},{"commit":"87b506dc9b4831d11b4fd04fd6849532db074f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":47,"deletions":4,"files":["CHANGELOG","jc/cli.py","jc/parsers/dig.py","setup.py","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/generic/dig-answer-spaces.out","tests/test_dig.py"]},"message":"fix for spaces in dig answer data"},{"commit":"15c9002d9eff0f52d873fb3ab35dfafd03a8e919","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"simplify logic by taking out 'not' in JC_COLORS parsing"},{"commit":"042aaa61b96fc8472a8a460c49bde4cbbc359094","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"minor updates"},{"commit":"ef856c6ba5774cd8ec23acd71496846e794e3872","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"clarify -q option"},{"commit":"9cf5be73e3f975132d1ffbef412638b941a5664f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]},"message":"typo fix"},{"commit":"63fc149e2a097cbde60c2ce1aeb102d9becabd9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]},"message":"typo fix"},{"commit":"3c25839350800c7e7d2c48fc032bb21efa0ac213","merge":"03c0295 58246e3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #98 from kellyjonbrazil/dev\n\nDev v1.14.1"},{"commit":"58246e33b71bae0ca4a42ad5bdf31134948b1014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","README.md"]},"message":"update compatibility info and changelog date"},{"commit":"8b1407c7068e2105a83992bbb026138ea67bc07c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":59,"deletions":10,"files":["runtests.sh","tests/localtest_last.py","tests/test_last.py"]},"message":"pull env-specific tests from CI/CD and run locally only"},{"commit":"2fde4a4e2299b98a9958e3a55849c6791e4b17dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["EXAMPLES.md","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]},"message":"doc updates"},{"commit":"60b9e9798286121399d0f8b75d63ab0f3312c9bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":80,"deletions":38,"files":["docs/parsers/last.md","jc/parsers/last.py","tests/fixtures/centos-7.7/last-crash.json","tests/fixtures/centos-7.7/last-w.json","tests/fixtures/centos-7.7/last-wF.json","tests/fixtures/centos-7.7/last-wF.out","tests/fixtures/centos-7.7/last.json","tests/fixtures/fedora32/last.json","tests/fixtures/osx-10.14.6/last.json","tests/fixtures/ubuntu-18.04/last-w.json","tests/fixtures/ubuntu-18.04/last.json","tests/fixtures/ubuntu-20.04/last-F.json"]},"message":"last parser enhancements: augment hostname with CONSOLE for GUI login, add convenience fields when -F is used: login_epoch, logout_epoch, duration_seconds, calculate duration to hours:minutes"},{"commit":"0adac79c0f2a22b31dfef1432a029af06132467b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"Add last parser enhancements"},{"commit":"9f485b5981a2ce49ac699b9dad39993c5605ae18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["jc/parsers/iw_scan.py","tests/fixtures/centos-7.7/iw-scan0.json","tests/fixtures/centos-7.7/iw-scan1.json"]},"message":"change mac_address fieldname to bssid. Add credit to Phillip"},{"commit":"db17d21b8f9b2f899760e648f1483d33d0bcf47a","merge":"5885b96 996d394","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #97 from pschmitt/iw_scan_fix_space_detection\n\niw_scan: Improve detection of lines starting with spaces"},{"commit":"996d394e89c732f327323ca340fce405bd5fb2e4","author":"Philipp Schmitt","author_email":"philipp@schmitt.co","commit_by":"Philipp Schmitt","commit_by_email":"philipp@schmitt.co","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/iw_scan.py"]},"message":"iw_scan: Improve detection of lines starting with spaces"},{"commit":"5885b960f9b33a95ecec9f4a33233c2f8682fbc4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":2,"files":["CHANGELOG","README.md","man/jc.1"]},"message":"doc updates"},{"commit":"79987b35f332e287567e103f25cf91cb50e040c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"]},"message":"formatting"},{"commit":"661b3ef311ad26678030c70c11f2f955667311a4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":94,"deletions":2,"files":["EXAMPLES.md","README.md","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]},"message":"doc updates"},{"commit":"fb422726a8366c7133f0712d3b05a26620eea785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["tests/fixtures/ubuntu-20.04/last-F.json","tests/fixtures/ubuntu-20.04/last-F.out"]},"message":"update test to add 'down' condition"},{"commit":"4fb6f3ea59c52515926a51a006e65a1c18e57720","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/last.py"]},"message":"add support for down in addition to crash"},{"commit":"f78fe771e1c2fb4691858fa7f27b1febe5f8c6c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":48,"deletions":0,"files":["tests/fixtures/centos-7.7/iw-scan0.json","tests/fixtures/centos-7.7/iw-scan1.json","tests/test_iw_scan.py"]},"message":"add iw-scan tests"},{"commit":"567b8872538ac9f6b384b98741acd9794229d513","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":252,"deletions":12,"files":["docgen.sh","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]},"message":"doc updates"},{"commit":"e516e6b9466b29d40ec10070dd61551180eeef90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":29,"deletions":1,"files":["jc/parsers/iw_scan.py"]},"message":"fix country/environment fields and process int/float conversions"},{"commit":"62748676aae3d5955191ed267215df33a5bd3a4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":225,"deletions":0,"files":["jc/cli.py","jc/parsers/iw_scan.py"]},"message":"initial iw-scan parser"},{"commit":"7351c72e45242b9eb08c51dea7b6fccf12366dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":402,"deletions":1,"files":["jc/parsers/last.py","tests/fixtures/centos-7.7/last-crash.json","tests/fixtures/centos-7.7/last-crash.out","tests/fixtures/centos-7.7/last-wF.json","tests/fixtures/centos-7.7/last-wF.out","tests/test_last.py"]},"message":"add fixes and tests for entries that contain 'crash'"},{"commit":"2b7405c5e21db2488fc48b58f6c65cff947ca95d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":23,"deletions":16,"files":["CHANGELOG","README.md","docs/parsers/last.md","jc/parsers/last.py","man/jc.1"]},"message":"doc updates"},{"commit":"e2c77cb935a5bd95dbe930d424e5a02e88e1fa76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":15,"deletions":1,"files":["jc/parsers/last.py","tests/fixtures/ubuntu-20.04/last-F.json","tests/test_last.py"]},"message":"add test for last -F output"},{"commit":"7ac621e4c916373a03f379425033cb2d81a03578","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":36,"deletions":6,"files":["docs/parsers/last.md","jc/parsers/last.py","tests/fixtures/ubuntu-20.04/last-F.out"]},"message":"add -F support"},{"commit":"d8b5d6c66ced19dc16f2b4975d2293a903732ffe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/cli.py","setup.py"]},"message":"version bump to 1.14.1"},{"commit":"22b461eb4b1ca86ea9e8c1fde8a2c312d1526b5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":47,"deletions":12,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/test_date.py"]},"message":"Add period field for en_US.UTF-8 locale"},{"commit":"b37ee8555a2a108625a834a7990bc3320e79b08d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update"},{"commit":"1d0ad2f045733c5c690738d49951fdb9bcd3d66d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":123,"insertions":312,"deletions":312,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat_freebsd_osx.py","jc/parsers/netstat_linux.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"doc fixes"},{"commit":"ceccfb2c815f57f1b6fd81f891d8b495de23f9f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":2036,"deletions":0,"files":["tests/fixtures/centos-7.7/iw-scan0.out","tests/fixtures/centos-7.7/iw-scan1.out","tests/fixtures/ubuntu-20.04/date.out"]},"message":"add test output for iw-scan and date on ubuntu 20.04"},{"commit":"03c02953cd7e3327b391f799c37a2990eb2cb24c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":96,"deletions":0,"files":["docgen.sh","docs/parsers/wc.md"]},"message":"add wc doc"},{"commit":"f254a0eaa16fcda316f7a75424ee359058204b03","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump"},{"commit":"9e3b88727cd439e15f235dddb9dd5796e010797a","merge":"439871e b122174","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #91 from kellyjonbrazil/dev\n\nDev v1.14.0"},{"commit":"b12217466e906829d19be4cfd80dfe7cf4008e57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"spelling"},{"commit":"8b9c932f9b05295e63b3e7d0073f243458fd4dd9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"update date"},{"commit":"5986ce03db6fcd1aa0f7b064eaa96c2120c06d2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add printenv info"},{"commit":"a7b0e936e400d2f9e55629e2d722cc002e035e9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"add vdir and printenv info"},{"commit":"cb0221142455a6bcb904fbe9ade657be45815b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":61,"deletions":2,"files":["jc/parsers/wc.py","tests/fixtures/osx-10.14.6/wc-stdin.json","tests/fixtures/osx-10.14.6/wc-stdin.out","tests/test_wc.py"]},"message":"add wc tests"},{"commit":"bd443bf39227515ae5f8df65d07b30268dcc90a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/env.py"]},"message":"add printenv to env docs"},{"commit":"1f547edd361e66b19ccbcb59f6ba0ae78f6080ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/env.md"]},"message":"add printenv to env docs"},{"commit":"e4bac3a493705b09e301ddc90dd1b0cee7467c3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":378,"deletions":0,"files":["CHANGELOG","EXAMPLES.md","README.md","jc/cli.py","jc/parsers/wc.py","tests/fixtures/centos-7.7/wc.json","tests/fixtures/centos-7.7/wc.out","tests/fixtures/osx-10.14.6/wc.json","tests/fixtures/osx-10.14.6/wc.out"]},"message":"add wc parser"},{"commit":"5e6bfa681aff03fbd683f81a9f4daa56b49d1344","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["README.md","docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"add vdir info"},{"commit":"276160125e01553c75eaad68530177bcf4f9004d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"]},"message":"add new commands to README"},{"commit":"d4ae5543f2d5f28a0db5b8e2e19993c21c5d960c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":39,"deletions":0,"files":["tests/fixtures/centos-7.7/hash.json","tests/fixtures/centos-7.7/hash.out","tests/test_hash.py"]},"message":"add hash tests"},{"commit":"55f360e267fdfcfef0c124ed6b88535cc181a8b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":260,"deletions":0,"files":["CHANGELOG","EXAMPLES.md","docgen.sh","docs/parsers/hash.md","jc/cli.py","jc/parsers/hash.py"]},"message":"add hash command parser"},{"commit":"fdedab2a0cf5af15df5803d87302397dd6d71741","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/cksum.py","jc/parsers/hashsum.py"]},"message":"description updates"},{"commit":"a9be42e3031ab0d697cff67a9e384caa2265a3ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"specify parser warnings for quiet option"},{"commit":"6da9510e46e84ec1cb93384825184d2996cf0e08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":482,"deletions":0,"files":["tests/fixtures/centos-7.7/cksum.json","tests/fixtures/centos-7.7/cksum.out","tests/fixtures/centos-7.7/sum.json","tests/fixtures/centos-7.7/sum.out","tests/fixtures/osx-10.14.6/cksum.json","tests/fixtures/osx-10.14.6/cksum.out","tests/fixtures/osx-10.14.6/sum.json","tests/fixtures/osx-10.14.6/sum.out","tests/test_cksum.py"]},"message":"add cksum tests"},{"commit":"0431798178740b03cdefececc6df958e5adf62fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":229,"deletions":3,"files":["CHANGELOG","docgen.sh","docs/parsers/cksum.md","docs/parsers/hashsum.md","jc/cli.py","jc/parsers/cksum.py","jc/parsers/hashsum.py"]},"message":"add cksum parser"},{"commit":"62432f3c484e74acb2b2dfd15d448b3f1b5d53c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/hashsum.py"]},"message":"update hashsum description"},{"commit":"9fbbc30906b597e6afaf2030015a7a694d85f79e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":0,"files":["docs/parsers/hashsum.md","jc/parsers/hashsum.py"]},"message":"add supported commands to docs"},{"commit":"d1567d1f622902053f3df58645b4e39532e0c30a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":104,"deletions":0,"files":["CHANGELOG","docgen.sh","docs/parsers/hashsum.md"]},"message":"add hashsum documentation"},{"commit":"6ca1f5970b3a518615a54ee7fcbc1bddab2db331","merge":"1c880b9 3b7d54c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"1c880b9e24ca53cd592cec1dbc52301308290fb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_hashsum.py"]},"message":"force git tests"},{"commit":"3b7d54c720dfc93637328cf06eb10a85447c8793","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"add python 3.9"},{"commit":"44a740605705bd0ecfde2a6bcc7a826e1010dcf0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":87,"deletions":0,"files":["tests/fixtures/centos-7.7/md5sum.json","tests/fixtures/centos-7.7/sha256sum.json","tests/fixtures/centos-7.7/sha384sum.json","tests/fixtures/osx-10.14.6/md5.json","tests/fixtures/osx-10.14.6/shasum.json","tests/test_hashsum.py"]},"message":"add hashsum tests"},{"commit":"8157dcfdb1868548b7c8ca692e6be25f80bb2c2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":36,"deletions":11,"files":["jc/parsers/hashsum.py"]},"message":"fix for files with spaces in the name"},{"commit":"28762aea15cabc9cd8293d725e7f1f0550f8e15d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":524,"deletions":0,"files":["jc/cli.py","jc/parsers/hashsum.py","tests/fixtures/centos-7.7/md5sum.out","tests/fixtures/centos-7.7/sha256sum.out","tests/fixtures/centos-7.7/sha384sum.out","tests/fixtures/osx-10.14.6/md5.out","tests/fixtures/osx-10.14.6/shasum.out"]},"message":"add hashsum parser"},{"commit":"439871ea9f6b055a407e1faaf47e4f56d1829501","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add ubuntu"},{"commit":"c9180b005c0547c8cbfe4809e66894f1123b0809","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"b14e0725f86853f0113116b1c06f54aaa563f365","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add ansible plugin blog post link"},{"commit":"70fe3dcb4d5b97aba1d6c6dcd5088fecb27af181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"8c554604a42a3ea7ca9131b65c64fd3ceb95f906","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"formatting"},{"commit":"a0a35454bd2831c116cb598c686150b883412f94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add link to the web demo"},{"commit":"e8467e2af5b0c3f14832a9e6d4a96f219c27f3f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"remove extra space"},{"commit":"7515deb5669ef04623e9cbf58653b30c99a96430","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add ansible install command"},{"commit":"ed9e52af241b609ee7f5d1b835c9f6c5306cd3c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"spelling"},{"commit":"592a3804104628c790997747a778b3b39d076dfe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]},"message":"add Ansible note"},{"commit":"1a458d2d5b4c16c0ad90671727ae9b19939e7f23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py"]},"message":"update link"},{"commit":"0e4cf53b92ff951a6390a4dacf8833c272473583","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/readme.md","jc/__init__.py"]},"message":"add parser docs link"},{"commit":"e2f06ccb33177173d984bc0cdda1aae1a3f4c681","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"formatting"},{"commit":"8abff004cd8e09529e5d94be4883308152e11565","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/yaml.md"]},"message":"indentation fix"},{"commit":"c4a0e2e3feb2e51eaaaa202064f352229017bcc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/yaml.py"]},"message":"fix indentation"},{"commit":"4f10f79c73f8b3d6edc2c83e6a12d0ddc1a78555","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":8,"files":["docs/parsers/uname.md","jc/parsers/uname.py"]},"message":"standardize doc"},{"commit":"69e7a560fd82337570c4bb4aa4780f513c18bd94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":8,"deletions":0,"files":["docs/parsers/env.md","docs/parsers/history.md","jc/parsers/env.py","jc/parsers/history.py"]},"message":"add output info to docs"},{"commit":"59b105580805d78516abe1c1069d52a6f0a8131a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":97,"insertions":564,"deletions":269,"files":["docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"enhance docs"},{"commit":"6ed48c6289214fe5114971c80772efdf9ac1b8c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":16,"insertions":88,"deletions":37,"files":["jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py"]},"message":"enhance docs"},{"commit":"f2fb4d3f415fbc1c09eec6dedcf70fba78406b3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","jc/parsers/airport.py","jc/parsers/airport_s.py"]},"message":"improve docs"},{"commit":"6aeea59ea84e56434e87ddf89cd5d4435b99e140","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":8,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md"]},"message":"doc updates"},{"commit":"d016f3bbb307f85bd0f93a508323941a8bb9d872","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":8,"files":["jc/parsers/airport.py","jc/parsers/airport_s.py"]},"message":"improve documentation"},{"commit":"7131c297180bfa195d0209d46fc70ab8e67efe2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":114,"insertions":686,"deletions":116,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"add module usage info to docs"},{"commit":"7432442983841b42c8d3d2459b55596c05d1e100","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["docs/parsers/blkid.md"]},"message":"add usage"},{"commit":"5344883394a0662ee16bb5edd68df8e4410025f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"]},"message":"spelling/add ping parser update"},{"commit":"3fcd2f6c2e015b0e65e7261c8e591ccd8a7d0e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"f3d84bd5bf06349b681e9b72d904676e9f6bca19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":21,"deletions":3,"files":["CHANGELOG","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/fixtures/debian10/crontab-u.json","tests/fixtures/debian10/crontab-u.out","tests/test_crontab_u.py"]},"message":"tighten crontab and crontab-u parser variable detection"},{"commit":"549780c23220bca3bcab58d7329ba8d44d1be55d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"add debian/apt-get info"},{"commit":"2a6da69b82aa9ade6c01d490a32b57b415c62a9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ping.py"]},"message":"improve linux/bsd check"},{"commit":"5c538816cf76686bac1a86a7c06e24664d25a2dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":55,"deletions":4,"files":["CHANGELOG","jc/cli.py","jc/parsers/ping.py","setup.py","tests/fixtures/pi/ping-ip-O-D.json","tests/fixtures/pi/ping-ip-O-D.out","tests/fixtures/pi/ping-ip-O.json","tests/fixtures/pi/ping-ip-O.out","tests/test_ping.py"]},"message":"ping parser fix for raspberry pi"},{"commit":"7b8b378a7df397c488fc54fbd6e77f5f3f23c10c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"]},"message":"add pydoc-markdown version requirement"},{"commit":"e30a75e25c4b43969bf9f874f89e18512a5e3a34","merge":"dda517a 85ad5cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #76 from kellyjonbrazil/dev\n\nDev v1.13.2"},{"commit":"85ad5cfd0bfb903ce35e37b343244fed88dbd979","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"date change"},{"commit":"88b9d5068c5bac0691fedb543114300d6afc7131","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":74,"deletions":15,"files":["EXAMPLES.md","README.md","docs/parsers/date.md","tests/fixtures/generic/date.json","tests/fixtures/generic/date.out","tests/test_date.py"]},"message":"finish date parser"},{"commit":"f8c4948a090642db595eda2ba2ea0773e560ba67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/date.py"]},"message":"remove comment"},{"commit":"412322447f019aec0b64888631bc965e9f21186d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":48,"deletions":17,"files":["jc/parsers/date.py"]},"message":"add month_num and weekday_num fields"},{"commit":"d4f289e40fae621b87f0d49451fca4c3dde216b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/date.md","jc/parsers/date.py"]},"message":"documentation fixup"},{"commit":"e1f3feb8f529172ae26ce4c7a66a4a1c21b722ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":10,"files":["jc/parsers/date.py"]},"message":"cover empty data case in process"},{"commit":"37d3bc699c7be16955be06840d242980f05f1074","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":224,"deletions":1,"files":["CHANGELOG","docgen.sh","docs/parsers/date.md","jc/cli.py","jc/parsers/date.py","man/jc.1"]},"message":"add date parser"},{"commit":"672fd18016b8122510b6ab246b5675b7fd399b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"date bump"},{"commit":"bc2c23a2a09b96d34bb80f69fdc7751fb5ac3ed4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"version bump"},{"commit":"865f7e78124e382c6d315702fa6e48f2104cee46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["man/jc.1"]},"message":"add kv parser to man page"},{"commit":"720212b552e1bd2b9196dd5f06e4b3f85d463531","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":9,"files":["EXAMPLES.md"]},"message":"fixup traceroute example with new behavior"},{"commit":"d3be61f60837801d5a505dc2520cc80c874a6092","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]},"message":"version bump"},{"commit":"13418b16b8fd78fdd97ac045ec3fe9aa59d46080","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":2,"files":["docs/parsers/traceroute.md","jc/parsers/traceroute.py"]},"message":"doc update"},{"commit":"42d2017cd6f5ee1d1a92bd4958cd63366c1e715d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":18,"insertions":41,"deletions":24,"files":["CHANGELOG","jc/parsers/traceroute.py","tests/fixtures/centos-7.7/traceroute.json","tests/fixtures/freebsd12/traceroute.json","tests/fixtures/freebsd12/traceroute6.json","tests/fixtures/generic/traceroute1.json","tests/fixtures/generic/traceroute2.json","tests/fixtures/generic/traceroute3.json","tests/fixtures/generic/traceroute5.json","tests/fixtures/generic/traceroute6.json","tests/fixtures/generic/traceroute7.json","tests/fixtures/osx-10.14.6/traceroute-asn.json",".../fixtures/osx-10.14.6/traceroute-no-header.json","tests/fixtures/osx-10.14.6/traceroute-q.json","tests/fixtures/osx-10.14.6/traceroute.json",".../osx-10.14.6/traceroute6-mult-addresses.json","tests/fixtures/osx-10.14.6/traceroute6.json","tests/test_traceroute.py"]},"message":"traceroute updates: handle missing header row, add annotations, don't print timeouts as probes"},{"commit":"4345e76ead2a49ae0691077e9fbd2b6c5fdfd129","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"]},"message":"change to use --kv for key/value files"},{"commit":"741431322ba2677355c361fcd6095ed8cd0a4349","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":46,"deletions":24,"files":["tests/test_ini.py","tests/test_kv.py"]},"message":"update tests for kv parser"},{"commit":"980beaaf41a04891f7c2f5daeb1e3a23d3c7ec19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/ifconfig.py"]},"message":"fix docgen issue"},{"commit":"2205034e0906b333c259648f7a0e5392945f12ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":105,"deletions":31,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","jc/cli.py","jc/parsers/ini.py","jc/parsers/kv.py","setup.py"]},"message":"add kv parser"},{"commit":"82b9c87a66fce5d8626c56858a8c6f1f3326e7fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":58,"insertions":345,"deletions":62,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/readme.md","docs/utils.md"]},"message":"update docs"},{"commit":"dda517a937323b9888e081aea1032a9d63c4a6bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":163,"files":["README.md"]},"message":"shorten more examples"},{"commit":"4e6d283b9eddf7759b4dd37bd643394ff73febd4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":65,"files":["README.md"]},"message":"shorten netstat example"},{"commit":"55acab05aa740dfd7534304f2678b60942cad116","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["changelog.txt => CHANGELOG"]},"message":"change name to CHANGELOG"},{"commit":"ed38a18d236cdb991779f4f148e42359c139e61c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":86,"files":["README.md"]},"message":"remove more examples"},{"commit":"95b3c11203d3dd0627c5eeca39fe1d145bf2d733","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":124,"files":["README.md"]},"message":"remove more examples"},{"commit":"dce318f4fd44b9c4013211bf233020e84566ddb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1537,"files":["README.md"]},"message":"remove examples to reduce file size"},{"commit":"85127f0fb8096192b19fca1f4ffe38ee391351be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["jc/examples.md => EXAMPLES.md"]},"message":"move examples to root"},{"commit":"fb45058244ce879f12bbb5b7267b0fd63fef1d63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2640,"deletions":0,"files":["jc/examples.md"]},"message":"add examples file"},{"commit":"45bb5ae389a00ed6a132a65c69ce76c7e5976858","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"spelling"},{"commit":"339238ab364d8735892a11cb16a62a651edae169","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":79,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py","tests/fixtures/centos-7.7/route-6-n.json","tests/fixtures/centos-7.7/route-6-n.out","tests/fixtures/centos-7.7/route-6.json","tests/fixtures/centos-7.7/route-6.out","tests/test_route.py"]},"message":"version bump and add route -6 tests"},{"commit":"032cda8b3db096b690d2557e3b918c50c716c543","merge":"690ac52 6badd3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #74 from kellyjonbrazil/dev\n\nDev v1.13.0"},{"commit":"6badd3fb1e1cf6d1ee99614fadc20d54be8039aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["tests/test_cli.py"]},"message":"add parser count test"},{"commit":"724d825745b6f1692eb3b068c3fb59d14892e690","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["man/jc.1"]},"message":"add tracepath parser"},{"commit":"ff1e32ad2ee156f105f5069c6b14a65b22784dfa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump"},{"commit":"a5f97febd3066b9e95a18d6b73162a7d206c5845","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":132,"deletions":0,"files":["tests/fixtures/centos-7.7/tracepath.json","tests/fixtures/centos-7.7/tracepath6.json","tests/fixtures/freebsd12/traceroute.json","tests/fixtures/freebsd12/traceroute.out","tests/fixtures/freebsd12/traceroute6.json","tests/fixtures/freebsd12/traceroute6.out","tests/fixtures/osx-10.14.6/uname.out","tests/test_tracepath.py","tests/test_traceroute.py","tests/test_uname.py"]},"message":"update traceroute, tracepath, and uname tests"},{"commit":"5baa6cc865634142690e78596c640db35e110b29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]},"message":"add route parser update"},{"commit":"7a4f30b843d8f11711abbb8f9bb263f945ff87ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/route.py"]},"message":"fix for iface issue"},{"commit":"b2c385dc4f63e3e15f47e986deac0524967214a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"]},"message":"change 'if' to 'iface'"},{"commit":"5d5da8d33fa6ab77c745d338d1a2e2e8f2e4c697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/route.py"]},"message":"more fixes for ipv6 fix"},{"commit":"e60457157839daba385202906997dec48c9c4950","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"]},"message":"fix next_hop fix"},{"commit":"f9dacc3f95b32e1431914ae0b0dc5c8e8840d5a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/route.py"]},"message":"fixup for ipv6"},{"commit":"6086920332575cd7db1b38262a3b4ba8fbfae7ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]},"message":"update ParseError message"},{"commit":"f52f3163bcaf8d7e784f02505e81456e8240295b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":49,"deletions":0,"files":["README.md"]},"message":"add tracepath example"},{"commit":"d18ff73e880c7d34957f2713857cc83094f914cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/tracepath.py"]},"message":"update author info"},{"commit":"1e5d602caecd96c9056ad77f9fc50cf25bf6fdfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":288,"deletions":32,"files":["docs/parsers/tracepath.md","jc/parsers/tracepath.py"]},"message":"working tracepath parser"},{"commit":"12912521ecb376c36dfdd743b3c4195598fb9aac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":11,"files":["docs/parsers/traceroute.md","jc/parsers/traceroute.py"]},"message":"doc update"},{"commit":"842ea3a94bec3fcab76257fdde5514d1de3d57fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":153,"deletions":0,"files":["docs/parsers/tracepath.md","jc/parsers/tracepath.py"]},"message":"add tracepath parser skeleton"},{"commit":"a8560dbc1598fa97de87594228b4cc10282d4197","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add tracepath"},{"commit":"a65e27540a8c5c7123d2fdf79fcbefa1e2f8afdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":24,"files":["docgen.sh","docs/parsers/traceroute.md","jc/parsers/traceroute.py"]},"message":"update docs"},{"commit":"c3c5ed11e68938e35920144406d37ea3b21d63dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]},"message":"change name from tr to trparse"},{"commit":"ce24149335cd8ed1e8513a2cf040432fe42d86b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping.py"]},"message":"formatting"},{"commit":"0314ca8c4831d24c169a0e4948421ecd638fd699","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add trparse acknowledgement"},{"commit":"ebd8ee49a9f43063850e30c745c8cae46ee13de1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":1,"files":["README.md"]},"message":"add key/value info to ini example"},{"commit":"38d10c97814ec69586c3b447c182f339772d6e22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":130,"deletions":1,"files":["README.md"]},"message":"add ping and traceroute examples"},{"commit":"360106c24d24e6a9697c00a158a14aaa334a4b1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]},"message":"add tracepath"},{"commit":"ca470a5d02fd9fbaf05d8b3b3bb1ffe9f4cf5af3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":39,"deletions":0,"files":["tests/fixtures/centos-7.7/tracepath.out","tests/fixtures/centos-7.7/tracepath6.out"]},"message":"add tracepath fixtures"},{"commit":"57f66e6b1d554ff20b72959f5ebb9e7b2feffed2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":2,"files":["changelog.txt","jc/parsers/uname.py"]},"message":"add exception with hint to use \"uname -a\""},{"commit":"e774f67924c0e6195f79829b2ac75ce95f76fbaa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["jc/parsers/ini.py"]},"message":"turn off interpolation and coerce None to ''"},{"commit":"ac10e576c167d20de259e47a6aa5b23fc998b4c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/ini.md","jc/parsers/ini.py"]},"message":"spelling"},{"commit":"bcae0a99cd0ccce4ec8a67929f7c83a1095a5b88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"add key/value to ini description"},{"commit":"c73c2ff879b3ed7a3e6f04e53e0a729e4f00ed21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["changelog.txt"]},"message":"add ping, traceroute, and ini update"},{"commit":"c39b1a3356881a11a8f6fe9432897e6d67162f07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["README.md"]},"message":"add ping, traceroute and update ini description"},{"commit":"125dc2d9e051a82a4a438afe2e520212338353f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":3,"files":["docs/parsers/ini.md"]},"message":"add info about key/value files to doc"},{"commit":"b7d4ddc7ced2c3aabf3a857b53a0bf1b62eb6a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":50,"deletions":0,"files":["tests/fixtures/generic/keyvalue-ifcfg.json","tests/fixtures/generic/keyvalue-ifcfg.txt","tests/fixtures/generic/keyvalue.json","tests/fixtures/generic/keyvalue.txt","tests/test_ini.py"]},"message":"add tests for key/value files"},{"commit":"f5e546c6fa7cba166284a0976887d6b82451d3e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":33,"deletions":9,"files":["jc/parsers/ini.py"]},"message":"add support for simple key/value pairs"},{"commit":"928e39cd103b96b8c3ccc8d85c930ffb419296c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":104,"deletions":0,"files":["tests/fixtures/generic/traceroute1.json","tests/fixtures/generic/traceroute2.json","tests/fixtures/generic/traceroute3.json","tests/fixtures/generic/traceroute4.json","tests/fixtures/generic/traceroute5.json","tests/fixtures/generic/traceroute6.json","tests/fixtures/generic/traceroute7.json","tests/fixtures/generic/traceroute8.json","tests/test_traceroute.py"]},"message":"add generic traceroute tests"},{"commit":"d0b7ea68a005daff313e44808b256656313a78a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/traceroute.py"]},"message":"check for key in dictionary"},{"commit":"8444690133b6a7522822ab279e97ede6ded17ba9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["man/jc.1"]},"message":"add traceroute"},{"commit":"c03c42d76703ff8f423cf3c10ea6254a27a685cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":76,"deletions":9,"files":["tests/fixtures/centos-7.7/traceroute.json","tests/fixtures/osx-10.14.6/traceroute-asn.json",".../osx-10.14.6/traceroute-mult-addresses.json","tests/fixtures/osx-10.14.6/traceroute-q.json","tests/fixtures/osx-10.14.6/traceroute.json",".../osx-10.14.6/traceroute6-mult-addresses.json","...-address.out => traceroute6-mult-addresses.out}","tests/fixtures/osx-10.14.6/traceroute6.json","tests/test_traceroute.py"]},"message":"add traceroute tests"},{"commit":"ab67688a00ac335d2a5603e9cadef8b565957911","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":55,"deletions":0,"files":["tests/test_traceroute.py"]},"message":"add test skeleton"},{"commit":"5dcb7166daef3c53da65bba0d591672e64d3a90b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":169,"deletions":0,"files":["docgen.sh","docs/parsers/traceroute.md"]},"message":"add traceroute doc"},{"commit":"14697b86d7fc1cfebb41e0fd2d9a9b9b60071d3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":2,"files":["jc/parsers/traceroute.py"]},"message":"add MIT license"},{"commit":"4f4b6276d4bf798b17d996f39742bd0428fc2f19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":38,"deletions":33,"files":["jc/parsers/traceroute.py"]},"message":"update docstring"},{"commit":"7bc497e1291059ae7858c9d2bd2d9a1b4c030dd1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":117,"deletions":14,"files":["jc/parsers/traceroute.py"]},"message":"updated process() function to set integers and floats"},{"commit":"68a37a6a5a3f0ad0fa24c84d363050af9fa11f97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/parsers/traceroute.py"]},"message":"remove unused function load()"},{"commit":"6f5cd1d7c5f76d7d4da42171fdc30daf9fe3996e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]},"message":"change to use f-string"},{"commit":"126b1b121ca10183dc7e9dece83b42907becad39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":0,"files":["tests/fixtures/generic/traceroute8.out"]},"message":"add traceroute6 example"},{"commit":"2341e456a012564f86d533d2748a5887d79995e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]},"message":"use ParseError instead of generic Exception"},{"commit":"72d80e95bb50ae2a7432082e65aba15235ba0955","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":115,"deletions":8,"files":["jc/parsers/traceroute.py","tests/fixtures/generic/traceroute1.out","tests/fixtures/generic/traceroute2.out","tests/fixtures/generic/traceroute3.out","tests/fixtures/generic/traceroute4.out","tests/fixtures/generic/traceroute5.out","tests/fixtures/generic/traceroute6.out","tests/fixtures/generic/traceroute7.out"]},"message":"remove unused regex patterns"},{"commit":"f5ec82440cd1c1b5ac9011d3517298d0cdcd8766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/traceroute.py"]},"message":"simplify regex patterns"},{"commit":"c8e526ead35b868733f57b4c114062a48b78a817","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":3,"files":["jc/parsers/traceroute.py","tests/fixtures/osx-10.14.6/traceroute-q.out"]},"message":"fixes for bsd-style ipv6 output"},{"commit":"066adfb76479df7042bfb12bbb83b5dbd8a6d54c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":83,"deletions":7,"files":["jc/parsers/traceroute.py","tests/fixtures/centos-7.7/traceroute.out","tests/fixtures/osx-10.14.6/traceroute-asn.out",".../osx-10.14.6/traceroute-mult-addresses.out",".../fixtures/osx-10.14.6/traceroute-no-header.out",".../osx-10.14.6/traceroute6-multi-address.out","tests/fixtures/osx-10.14.6/traceroute6.out"]},"message":"handle warning lines in the traceroute output"},{"commit":"5b444d4717b0b8528647e17e71d699907def3e18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":307,"deletions":0,"files":["jc/cli.py","jc/parsers/traceroute.py","tests/fixtures/osx-10.14.6/traceroute.out"]},"message":"add traceroute parser"},{"commit":"69c95adc8d59927c1c00b7e766ca5003b7b6454c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":81,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ping6-ip-dup.json","tests/fixtures/osx-10.14.6/ping6-ip-dup.out","tests/test_ping.py"]},"message":"add osx ipv6 ping dup test"},{"commit":"2b0e0d8f5c1a6a5450e362971f9ad5892093b2ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":27,"deletions":0,"files":["tests/fixtures/centos-7.7/ping6-ip-dup.json","tests/fixtures/centos-7.7/ping6-ip-dup.out","tests/test_ping.py"]},"message":"add ipv6 dup test"},{"commit":"778d1bacbf8df523d434b22f5e1517955e4c15ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":28,"deletions":12,"files":["docs/parsers/ping.md","jc/parsers/ping.py"]},"message":"update docs to add \"duplicates\" fields"},{"commit":"7e1b0410166c584775ebcd681a280ec7321560c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":0,"files":["tests/test_ping.py"]},"message":"add duplicate replies tests"},{"commit":"313b9b329ca6b674069718839f55a4bd7834db80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":55,"insertions":55,"deletions":53,"files":["tests/fixtures/centos-7.7/ping-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping-hostname-O-p.json","tests/fixtures/centos-7.7/ping-hostname-O.json","tests/fixtures/centos-7.7/ping-ip-O-D.json","tests/fixtures/centos-7.7/ping-ip-O.json","tests/fixtures/centos-7.7/ping-ip-dup.json","tests/fixtures/centos-7.7/ping6-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping6-hostname-O-p.json","tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","tests/fixtures/centos-7.7/ping6-ip-O-p.json","tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping-hostname-O-p.json","tests/fixtures/fedora32/ping-hostname-O.json","tests/fixtures/fedora32/ping-ip-O-D.json","tests/fixtures/fedora32/ping-ip-O.json","tests/fixtures/fedora32/ping6-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping6-hostname-O-D-p.json","tests/fixtures/fedora32/ping6-hostname-O-p.json","tests/fixtures/fedora32/ping6-ip-O-D-p.json","tests/fixtures/fedora32/ping6-ip-O-p.json","tests/fixtures/freebsd12/ping-hostname-p.json","tests/fixtures/freebsd12/ping-hostname-s.json","tests/fixtures/freebsd12/ping-hostname.json","tests/fixtures/freebsd12/ping-ip-p.json","tests/fixtures/freebsd12/ping-ip-s.json","tests/fixtures/freebsd12/ping-ip.json","tests/fixtures/freebsd12/ping6-hostname-p.json","tests/fixtures/freebsd12/ping6-hostname-s.json","tests/fixtures/freebsd12/ping6-hostname.json","tests/fixtures/freebsd12/ping6-ip-p.json","tests/fixtures/freebsd12/ping6-ip-s.json","tests/fixtures/freebsd12/ping6-ip.json","tests/fixtures/osx-10.14.6/ping-hostname-p.json","tests/fixtures/osx-10.14.6/ping-hostname-s.json","tests/fixtures/osx-10.14.6/ping-hostname.json","tests/fixtures/osx-10.14.6/ping-ip-dup.json","tests/fixtures/osx-10.14.6/ping-ip-p.json","tests/fixtures/osx-10.14.6/ping-ip-s.json","tests/fixtures/osx-10.14.6/ping-ip.json","tests/fixtures/osx-10.14.6/ping6-hostname-p.json","tests/fixtures/osx-10.14.6/ping6-hostname-s.json","tests/fixtures/osx-10.14.6/ping6-hostname.json","tests/fixtures/osx-10.14.6/ping6-ip-p.json","tests/fixtures/osx-10.14.6/ping6-ip-s.json","tests/fixtures/osx-10.14.6/ping6-ip.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping-hostname-O.json","tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","tests/fixtures/ubuntu-18.04/ping-ip-O.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json"]},"message":"update fixtures for added 'duplicate' fields"},{"commit":"6830062256fbc453f87224f7ab8c10e4494b5a83","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":112,"deletions":24,"files":["docs/parsers/ping.md","jc/parsers/ping.py","tests/fixtures/centos-7.7/ping-ip-dup.out","tests/fixtures/osx-10.14.6/ping-ip-dup.out"]},"message":"add support for duplicate replies"},{"commit":"323072c9827c41c5d74433504b5efceb846cfe09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/ping.md","jc/parsers/ping.py"]},"message":"add source_ip to schema doc"},{"commit":"8719d96bddec80187e7ba3286ba93bfec8465744","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"change description"},{"commit":"dd5d318ab5bbb1027dd600fd3b0b6ec9b8adfdc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["man/jc.1"]},"message":"version bump and add ping command"},{"commit":"d6dc7f5e65c097895c19000e59e8803a3b350fdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":135,"deletions":29,"files":["tests/fixtures/osx-10.14.6/ping-hostname-p.json","tests/fixtures/osx-10.14.6/ping-hostname-s.json","tests/fixtures/osx-10.14.6/ping-hostname.json","tests/fixtures/osx-10.14.6/ping-ip-p.json","tests/fixtures/osx-10.14.6/ping-ip-s.json","tests/fixtures/osx-10.14.6/ping-ip.json","tests/fixtures/osx-10.14.6/ping6-hostname-p.json","tests/fixtures/osx-10.14.6/ping6-hostname-s.json","tests/fixtures/osx-10.14.6/ping6-hostname.json","tests/fixtures/osx-10.14.6/ping6-ip-p.json","tests/fixtures/osx-10.14.6/ping6-ip-s.json","tests/fixtures/osx-10.14.6/ping6-ip.json","tests/test_ping.py"]},"message":"add osx ping tests"},{"commit":"c203664eb5aafa0afa3101b79e3fd13b3e009ec5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":171,"deletions":9,"files":["tests/fixtures/freebsd12/ping-hostname-p.json","tests/fixtures/freebsd12/ping-hostname-s.json","tests/fixtures/freebsd12/ping-hostname.json","tests/fixtures/freebsd12/ping-ip-p.json","tests/fixtures/freebsd12/ping-ip-s.json","tests/fixtures/freebsd12/ping-ip.json","tests/fixtures/freebsd12/ping6-hostname-p.json","tests/fixtures/freebsd12/ping6-hostname-s.json","tests/fixtures/freebsd12/ping6-hostname.json","tests/fixtures/freebsd12/ping6-ip-p.json","tests/fixtures/freebsd12/ping6-ip-s.json","tests/fixtures/freebsd12/ping6-ip.json","tests/test_ping.py"]},"message":"freebsd ping tests"},{"commit":"19ecf1fa19e9fa0873002baf07fa670b71ed7752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":118,"deletions":0,"files":["tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping-hostname-O-p.json","tests/fixtures/fedora32/ping-hostname-O.json","tests/fixtures/fedora32/ping-ip-O-D.json","tests/fixtures/fedora32/ping-ip-O.json",".../fixtures/fedora32/ping6-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping6-hostname-O-D-p.json","tests/fixtures/fedora32/ping6-hostname-O-p.json","tests/fixtures/fedora32/ping6-ip-O-D-p.json","tests/fixtures/fedora32/ping6-ip-O-p.json","tests/test_ping.py"]},"message":"add Fedora32 tests"},{"commit":"b8deb0426cc23333c0e0a9dc3776d9761d99abb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":119,"deletions":8,"files":[".../ubuntu-18.04/ping-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping-hostname-O.json","tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","tests/fixtures/ubuntu-18.04/ping-ip-O.json",".../ubuntu-18.04/ping6-hostname-O-D-p-s.json",".../ubuntu-18.04/ping6-hostname-O-D-p.json",".../fixtures/ubuntu-18.04/ping6-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json","tests/test_ping.py"]},"message":"add ubuntu ping tests"},{"commit":"3b8371f0208a097cb8a1c026348d3842e6702b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":202,"deletions":0,"files":[".../fixtures/centos-7.7/ping-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping-hostname-O-p.json","tests/fixtures/centos-7.7/ping-hostname-O.json","tests/fixtures/centos-7.7/ping-ip-O-D.json","tests/fixtures/centos-7.7/ping-ip-O.json",".../centos-7.7/ping6-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping6-hostname-O-p.json","tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","tests/fixtures/centos-7.7/ping6-ip-O-p.json","tests/test_ping.py"]},"message":"add centos ping tests"},{"commit":"20bb1cdf396abdb3707b34fa146cbe913f9bbd6f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/ping.py"]},"message":"add TypeError to except for None values"},{"commit":"301daa48d0bfc28f97c8e46f028f8c6b875bf34e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":114,"deletions":16,"files":["docs/parsers/ping.md","jc/parsers/ping.py"]},"message":"update documentation"},{"commit":"8421ec88033e02f472e4961d87551a0352663a16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ping.py"]},"message":"remove cygwin compatibility"},{"commit":"74211eb0129f6aa655a38ba4d4d8844d81441107","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":82,"deletions":5,"files":["jc/parsers/ping.py"]},"message":"add examples"},{"commit":"60bd42f298f309cbec6d24c9543ea3d51bd73b18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":59,"deletions":11,"files":["jc/parsers/ping.py"]},"message":"add process() logic"},{"commit":"14bdd74526e400997c5bc247ea35ed40799e83ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":100,"deletions":0,"files":["tests/fixtures/freebsd12/ping-hostname-p.out","tests/fixtures/freebsd12/ping-hostname-s.out","tests/fixtures/freebsd12/ping-hostname.out","tests/fixtures/freebsd12/ping-ip-p.out","tests/fixtures/freebsd12/ping-ip-s.out","tests/fixtures/freebsd12/ping-ip.out","tests/fixtures/freebsd12/ping6-hostname-p.out","tests/fixtures/freebsd12/ping6-hostname-s.out","tests/fixtures/freebsd12/ping6-hostname.out","tests/fixtures/freebsd12/ping6-ip-p.out","tests/fixtures/freebsd12/ping6-ip-s.out","tests/fixtures/freebsd12/ping6-ip.out"]},"message":"add ping test fixtures"},{"commit":"fb0f3eda04a4b1dbb81da7d5791cbfe746bfd617","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["tests/fixtures/create_fixtures.sh"]},"message":"add ping commands"},{"commit":"91ee6e6701307363336a39f9e16641465ddd05c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":100,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ping-hostname-p.out","tests/fixtures/osx-10.14.6/ping-hostname-s.out","tests/fixtures/osx-10.14.6/ping-hostname.out","tests/fixtures/osx-10.14.6/ping-ip-p.out","tests/fixtures/osx-10.14.6/ping-ip-s.out","tests/fixtures/osx-10.14.6/ping-ip.out","tests/fixtures/osx-10.14.6/ping6-hostname-p.out","tests/fixtures/osx-10.14.6/ping6-hostname-s.out","tests/fixtures/osx-10.14.6/ping6-hostname.out","tests/fixtures/osx-10.14.6/ping6-ip-p.out","tests/fixtures/osx-10.14.6/ping6-ip-s.out","tests/fixtures/osx-10.14.6/ping6-ip.out"]},"message":"add osx ping test fixtures"},{"commit":"51f4e6927c68a7e2a26954f564d10d316b98a984","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":3,"files":["jc/parsers/ping.py"]},"message":"add support for pattern in osx/bsd"},{"commit":"94988d86674293faddc6f7e7c82575738d2dc791","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":257,"deletions":0,"files":["tests/fixtures/fedora32/ping-hostname-O-D-p-s.out","tests/fixtures/fedora32/ping-hostname-O-p.out","tests/fixtures/fedora32/ping-hostname-O.out","tests/fixtures/fedora32/ping-ip-O-D.out","tests/fixtures/fedora32/ping-ip-O.out","tests/fixtures/fedora32/ping6-hostname-O-D-p-s.out","tests/fixtures/fedora32/ping6-hostname-O-D-p.out","tests/fixtures/fedora32/ping6-hostname-O-p.out","tests/fixtures/fedora32/ping6-ip-O-D-p.out","tests/fixtures/fedora32/ping6-ip-O-p.out"]},"message":"add fedora ping fixtures"},{"commit":"fe36f5a98cd3ee7753e250b6553e4453d971f929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":318,"deletions":0,"files":["tests/fixtures/centos-7.7/ping-ip-O-D.out","tests/fixtures/centos-7.7/ping-ip-O.out","tests/fixtures/create_fixtures.sh",".../ubuntu-18.04/ping-hostname-O-D-p-s.out","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.out","tests/fixtures/ubuntu-18.04/ping-hostname-O.out","tests/fixtures/ubuntu-18.04/ping-ip-O-D.out","tests/fixtures/ubuntu-18.04/ping-ip-O.out",".../ubuntu-18.04/ping6-hostname-O-D-p-s.out",".../fixtures/ubuntu-18.04/ping6-hostname-O-D-p.out","tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.out","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.out","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.out"]},"message":"add fixtures for ping"},{"commit":"f9eb18b9271b2428dd82f2dc26d3fa0435dad81d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/ping.py"]},"message":"change 'request_timeout' field to 'type', fix compatibility, other formatting fixes"},{"commit":"cc60f3674822c644933f286a0364b09d7e2a60b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":67,"deletions":1,"files":["docgen.sh","docs/parsers/ping.md","jc/cli.py"]},"message":"add ping parser"},{"commit":"604ade791f7bd33b37f64916befba27a2ea08b5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":506,"deletions":0,"files":["jc/parsers/ping.py",".../fixtures/centos-7.7/ping-hostname-O-D-p-s.out","tests/fixtures/centos-7.7/ping-hostname-O-p.out","tests/fixtures/centos-7.7/ping-hostname-O.out",".../fixtures/centos-7.7/ping6-hostname-O-D-p-s.out","tests/fixtures/centos-7.7/ping6-hostname-O-p.out","tests/fixtures/centos-7.7/ping6-ip-O-D-p.out","tests/fixtures/centos-7.7/ping6-ip-O-p.out"]},"message":"add ping parser"},{"commit":"690ac52a917200e46eac2feafc9f504f2734301c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":261,"deletions":0,"files":["man/jc.1"]},"message":"add man page"},{"commit":"34ed772775f1f02ed148f24a3bfff532bc811607","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"d5ab95571f64f55d8194e9e5592ac538bb535229","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":11,"files":["tests/test_cli.py"]},"message":"fix tests when using older versions of pygments"},{"commit":"ffb3a0ee5fb30a3f61d6cbedf877ab04acdbf624","merge":"fde0bc8 94b12b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #73 from kellyjonbrazil/dev\n\nDev v1.12.0"},{"commit":"94b12b57aaa56170d1f31f4910fd1239f88de137","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"spelling"},{"commit":"6d149e84571d5d6dd1d8a1f219ba299de5173779","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":1,"files":["changelog.txt","setup.py"]},"message":"version bump"},{"commit":"1ad89c90d890039b817f65b2635db1b5e849a9e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add pacman"},{"commit":"fb71c7b020bc1eda9484595f30b0200a4f59aa45","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_cli.py"]},"message":"function name spelling"},{"commit":"28ed17ad3bce866e5dc0179ef5de43380ac6ace1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_cli.py"]},"message":"add parser_count test to test_cli_about_jc"},{"commit":"0c2a4e2bf71dca50d4a9bb27ca99944909c022ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["tests/test_cli.py"]},"message":"add cli tests"},{"commit":"62bec30de2f1a303f2ec411d89f7f9f9c6d1abaf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":0,"files":["tests/test_cli.py"]},"message":"add json_out tests"},{"commit":"3fced77e4e258dbf7db94a313e599c830a597b49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":98,"deletions":1,"files":["tests/test_cli.py"]},"message":"add set_env_colors tests"},{"commit":"a09d1d8b7687912610598c88d172733d5e29b1ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":6,"files":["jc/cli.py"]},"message":"move environment variable assignment to main() to simplify tests"},{"commit":"8f4243fbd8d70ca9fd019e984c564e37c81e07db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"47aaf20549ea238443427e69d5841d6996b7afab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":17,"deletions":0,"files":["README.md"]},"message":"add sysctl command parser"},{"commit":"0c5289ea50e4d3d35e80147b4cad32434c19a2a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":72,"deletions":2,"files":["tests/fixtures/freebsd12/sysctl-a.json","tests/fixtures/osx-10.14.6/sysctl-a.json","tests/test_sysctl.py"]},"message":"add sysctl tests"},{"commit":"3e53323514906fb84abfaeed0c2ee1fd9090ad8d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/sysctl.py"]},"message":"don't filter out empty lines"},{"commit":"a5ee9861b9b9b479aee59ea5b1d75f20d7c3c8e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3785,"deletions":1,"files":["tests/fixtures/freebsd12/sysctl-a.json","tests/fixtures/freebsd12/sysctl-a.out","tests/fixtures/osx-10.14.6/sysctl-a.json"]},"message":"update fixtures"},{"commit":"feb8ca76545cba4fd0927273ddf90a77df994006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/sysctl.md"]},"message":"spelling"},{"commit":"a7abe4473b90c512466db9ae98cfac585689fe2a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/sysctl.py"]},"message":"spelling"},{"commit":"780b9b61dec3e142e46c9a82146d2af4e1144123","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/sysctl.py"]},"message":"specify IndexError exception in try/except block"},{"commit":"19ace36ffa659bedf0ba2e43572c9e253592b2e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2167,"deletions":0,"files":["tests/fixtures/osx-10.14.6/sysctl-a.json","tests/fixtures/osx-10.14.6/sysctl-a.out","tests/fixtures/ubuntu-18.04/sysctl-a.json","tests/fixtures/ubuntu-18.04/sysctl-a.out"]},"message":"add fixtures"},{"commit":"5fff8afc9f47f8cc6db8ed3613b90b5cdc683b43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":33,"deletions":11,"files":["jc/parsers/sysctl.py"]},"message":"add fixes for freebsd where values can be on separate lines under the key"},{"commit":"4ad230c9279c5eb6c8ed6baf7254b8e9328e5af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":929,"deletions":14,"files":["docs/parsers/sysctl.md","jc/parsers/sysctl.py","tests/fixtures/centos-7.7/sysctl-a.json","tests/fixtures/centos-7.7/sysctl-a.out"]},"message":"doc update and add test fixtures"},{"commit":"dd98eb1ec8f451eb87a5094e76a7f758dee3fc69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":7,"files":["jc/parsers/sysctl.py"]},"message":"append duplicate key values to original key instead of adding unique keys"},{"commit":"c6baf42e72b4f41ed511e7db943297d03a39c0d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":94,"deletions":7,"files":["docgen.sh","docs/parsers/sysctl.md","jc/parsers/sysctl.py"]},"message":"doc updates"},{"commit":"e2bac97d563e5ef771ccd8ed1e5c42cbf588b120","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["jc/parsers/sysctl.py"]},"message":"fix for multiple identical keys in sysctl output"},{"commit":"d112ee94d0ec534828c8508d0fb833b768975990","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":4,"files":["jc/parsers/sysctl.py"]},"message":"use try/except and add support for floats in process()"},{"commit":"27b21b2fafab912f21b88b66c7f817cbce155765","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":7,"files":["jc/cli.py"]},"message":"formatting and docstring updates"},{"commit":"8c96d5cd20448a4f7f9736c4d489d6ecc3068ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["requirements.txt"]},"message":"reduce pygments version requirement"},{"commit":"c29ed3fd695f725005333db5e6e2cd844bb4ca14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":13,"files":["jc/cli.py"]},"message":"formatting of quotation marks and docstrings"},{"commit":"cedf603f121636bdfa95432059c3c275c3ea3e9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/cli.py"]},"message":"minor formatting"},{"commit":"279161c36f288c27a9789054ae372fe8ceb58a94","merge":"bc7116c ce0b43d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #72 from duelafn/pygments-2.3\n\nSupport older pygments"},{"commit":"ce0b43d919f07d96d1b94e9d14d03e935e80011d","author":"Dean Serenevy","author_email":"dean@serenevy.net","commit_by":"Dean Serenevy","commit_by_email":"dean@serenevy.net","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"]},"message":"Remove dependency on 3rd party packaging library"},{"commit":"ddafa5bf06066bab8e9587be902d6752fcf51605","author":"Dean Serenevy","author_email":"dean@serenevy.net","commit_by":"Dean Serenevy","commit_by_email":"dean@serenevy.net","stats":{"files_changed":2,"insertions":47,"deletions":7,"files":["jc/cli.py","setup.py"]},"message":"Support older pygments"},{"commit":"bc7116c31bacf3159aef775fd0e615187420b010","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":8,"files":["jc/cli.py"]},"message":"fix JC_COLORS env bug and simplify set_env_colors()"},{"commit":"53b709272115e769dac905296fa3b000c1cdd66a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":11,"files":["jc/cli.py"]},"message":"remove side-effects from functions and print in main()"},{"commit":"beb9174b1b35937ae1fb99778369ae643a8f1005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":123,"deletions":0,"files":["jc/parsers/sysctl.py"]},"message":"add sysctl parser"},{"commit":"aea41ed341c8d53cc07c35e8044e8f816ddd2fed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/cli.py"]},"message":"move verbose_debug enable earlier in code to catch more issues. add sysctl and version bump"},{"commit":"d789494cb1f691aa352419aaefc692f654477177","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/tracebackplus.py"]},"message":"change type check to use isinstance"},{"commit":"608e7b4cff081f92177e4151ffa1a91a4a6895ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":61,"deletions":0,"files":["jc/tracebackplus.py"]},"message":"add license info"},{"commit":"4ee199c02a78c2707c5d1427d7c8fae56df5671c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":189,"deletions":3,"files":["jc/cli.py","jc/tracebackplus.py"]},"message":"use tracebackplus instead of cgitb since cgitb is depricated"},{"commit":"fbf47d408501dadda4671fb530f5e11859e85d53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add arch linux"},{"commit":"5a238e4b4204f0552327534ef798c28d3ad4f578","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"remove updates-testing from fedora command"},{"commit":"f852b8246a8f9e5f7d9144fed3a0daa4eddfe035","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/utils.py"]},"message":"wrap warning message"},{"commit":"88140d929a500ee78f807862c4912c399df2a460","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"wrap error message in code"},{"commit":"45f726824027af49c437b6e81e4700f7098af320","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"add -dd to error message"},{"commit":"3a3c8e4d4a77135eaee5cb30c3107a4531c300ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/cli.py"]},"message":"move verbose_debug under debug check"},{"commit":"c1ac183a0472e93226c9ee1905f56c5183e3721f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":15,"deletions":22,"files":["jc/cli.py"]},"message":"simplify debug option"},{"commit":"18bb779ee5cd5821764b03173f16e922f753c64d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"formatting: double quotes to single quotes"},{"commit":"8b6612fe7911ab9e0bf8d29be60865d3b8aa3fd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/cli.py"]},"message":"move JC_COLORS parsing error message"},{"commit":"fde0bc853415418e01616861ace5048770bd97f8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":34,"files":["README.md"]},"message":"improve package install info"},{"commit":"e661a78939ff067b8a61f08301c178dd10a344ab","merge":"b969751 847e346","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #71 from wigust/guix\n\nadd guix package info"},{"commit":"847e346602789bf58e3515319e9d080dfb897fc9","author":"Oleg Pykhalov","author_email":"go.wigust@gmail.com","commit_by":"Oleg Pykhalov","commit_by_email":"go.wigust@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]},"message":"add guix package info"},{"commit":"b9697516887c61f08d8d7b1dc9130350e5bdba9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]},"message":"add other references"},{"commit":"ad6f2ba03a293a7f55e456fa5f5b55ee3cbcd4ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"63c6a5edc0e9001b143595fd8b96f1b4a1377a3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"formatting"},{"commit":"9f4cf9dd5efe94adfff0961fdb73097ca27c5463","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":197,"deletions":67,"files":["README.md"]},"message":"formatting"},{"commit":"51331b6dc01eee00847fa4be549ffde365373a01","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["README.md"]},"message":"formatting"},{"commit":"efb6761033319644bf9cdae6288ff5609f6482ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"6a4f737a0f1c322bebccf69809d9816fc770c5ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":88,"deletions":115,"files":["README.md"]},"message":"update json syntax highlighting"},{"commit":"be6864b778ab721bcba5fc3221576153be7b2ed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":26,"files":["README.md"]},"message":"add syntax highlighting tags"},{"commit":"de3b91a36cfcaf565b26b1da42f1e87835da4dc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add -dd option"},{"commit":"ef5482c3b5afa0ee8e85851bebab1c104cb59936","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":15,"deletions":7,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"add verbose debug option"},{"commit":"d20b795137036f8b889eb231cb4f14b756ec6479","merge":"69018cd 8a13406","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #70 from kellyjonbrazil/dev\n\nDev v1.11.7"},{"commit":"8a134065dff429551449c1ea16a36d745fdab580","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":12,"deletions":12,"files":["tests/fixtures/centos-7.7/iptables-filter-line-numbers.json","tests/fixtures/centos-7.7/iptables-filter-nv.json","tests/fixtures/centos-7.7/iptables-filter.json","tests/fixtures/centos-7.7/iptables-mangle.json","tests/fixtures/centos-7.7/iptables-nat.json","tests/fixtures/centos-7.7/iptables-raw.json","tests/fixtures/ubuntu-18.04/iptables-filter-line-numbers.json","tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","tests/fixtures/ubuntu-18.04/iptables-filter.json","tests/fixtures/ubuntu-18.04/iptables-mangle.json","tests/fixtures/ubuntu-18.04/iptables-nat.json","tests/fixtures/ubuntu-18.04/iptables-raw.json"]},"message":"update fixtures for last chain fix"},{"commit":"22aee1bfa40ed1d3c4df28cd934ef0edfc5c458c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"b282820fd67dcc96c058198f97b066e7b402d1f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/iptables.py"]},"message":"fix to include the final chain in output"},{"commit":"3ee098306daf903687cb0febf92773a81e216111","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"]},"message":"version bump"},{"commit":"09e8f379a64b3b37bb99b4291c10aa4a5cdedea4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":11,"files":["jc/parsers/iptables.py"]},"message":"iptables code optimizations"},{"commit":"69018cdb3a77fcdcb5648e3b89933148c55a6412","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"fix date"},{"commit":"d0d7254c6acc7be4341618d231a5b166f640b287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":26,"deletions":0,"files":["docs/utils.md","jc/utils.py"]},"message":"add docstring"},{"commit":"cc0f0971d76b6f3dec8d989e83f5676db8f2c6d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":56,"insertions":476,"deletions":439,"files":["changelog.txt","jc/cli.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/utils.py","setup.py"]},"message":"Improve and standardize empty data check for all parsers"},{"commit":"2af61730f0f5b9bc6f1f4c5d9d808ff6ccb0faeb","merge":"07b179c 83f41b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #68 from kellyjonbrazil/dev\n\nDev v1.11.5"},{"commit":"83f41b83dc01c462c6a2295e9fc56ad42a3b62f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"1fb84fce88e0306c26a5771fa4c6dc14a21409a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":16,"insertions":137,"deletions":67,"files":["changelog.txt","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/xml.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py","tests/test_timedatectl.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py","tests/test_who.py","tests/test_xml.py","tests/test_yaml.py"]},"message":"fix for no data"},{"commit":"a8837e12447c52dbe438b19c07777b9b4a22081c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"remove --upgrade from pip install"},{"commit":"04d2eec5581998d1a80e762b670af76c92111065","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":56,"deletions":30,"files":["changelog.txt","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","tests/test_stat.py","tests/test_systemctl.py","tests/test_systemctl_lj.py"]},"message":"fix for no data"},{"commit":"1b57ec92f052ddc8959540511512190a539262b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":152,"deletions":68,"files":["changelog.txt","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/pip_list.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","tests/fixtures/centos-7.7/ss-sudo-a.json","tests/fixtures/ubuntu-18.04/ss-sudo-a.json","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_ntpq.py","tests/test_passwd.py","tests/test_pip_list.py","tests/test_pip_show.py","tests/test_ps.py","tests/test_route.py","tests/test_shadow.py","tests/test_ss.py"]},"message":"fix for no data"},{"commit":"4d8859540417e99e273fda2cea959240f3c37ea3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/df.py"]},"message":"enhance empty data check"},{"commit":"52b1272a3aab09b5a8c4a277fbf9975a1b8b6921","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/blkid.py"]},"message":"enhance empty data check"},{"commit":"d2ccad6a83138fbf6eb863634fd354dc6c3fa238","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":33,"deletions":15,"files":["jc/parsers/lsblk.py","jc/parsers/lsmod.py","tests/test_lsblk.py","tests/test_lsmod.py"]},"message":"fix for no data"},{"commit":"cad6dde4ac66cf970a7f52d8e7958ea35c083629","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":60,"deletions":0,"files":["tests/test_group.py","tests/test_gshadow.py","tests/test_history.py","tests/test_hosts.py","tests/test_id.py","tests/test_ifconfig.py","tests/test_ini.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_last.py"]},"message":"fix for no data"},{"commit":"06811c3539b0d871e13e9b8d3b51f731d06fd2ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_fstab.py"]},"message":"add test for no data"},{"commit":"0cb23c2b21f464082609409261de8e95eb1b0d55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":17,"deletions":7,"files":["changelog.txt","jc/parsers/free.py","tests/test_free.py"]},"message":"add fix for no data"},{"commit":"ac4688dca22334385ec2c87027f2f14f9ca93ce4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_file.py"]},"message":"add test for no data"},{"commit":"326c3b4670a0e47cbe2988b38fb1c1b26a4db890","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_env.py"]},"message":"add test for no data"},{"commit":"9b29d0c2688eda2e4707aeba693ed14fa433a706","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_du.py"]},"message":"add test for no data"},{"commit":"e0013c38710b4ecf3a588a16d1d908effc23b485","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["tests/test_dmidecode.py"]},"message":"add test for no data"},{"commit":"a75744075b0628bdb711d8a929a759b4b4067edb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_dig.py"]},"message":"add no data test"},{"commit":"525aec1a02380f17ab7827434616f981f7457bd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":16,"deletions":7,"files":["changelog.txt","jc/parsers/df.py","tests/test_df.py"]},"message":"fix for no data"},{"commit":"0bf9a7a072a80e10a29c6bb3943b107352dc1d45","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_csv.py"]},"message":"add test for no data"},{"commit":"d8f2f4c95bc699386b9fe93d10e13637875a1dcf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":96,"deletions":80,"files":["changelog.txt","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/test_crontab.py","tests/test_crontab_u.py"]},"message":"fix for no data"},{"commit":"35d733b44f3705bed3dd8ce340379470f199f772","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":70,"deletions":60,"files":["changelog.txt","jc/parsers/arp.py","jc/parsers/blkid.py","tests/test_arp.py","tests/test_blkid.py"]},"message":"fix for no data"},{"commit":"9179b4175c5063bed14ecb96ba24c517920c0d94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":16,"deletions":0,"files":["changelog.txt","tests/test_airport.py","tests/test_airport_s.py"]},"message":"add nodata tests"},{"commit":"bb07d78c78ff5c5b2ee4d2086ffc6dd5ebedf0fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":8,"files":["jc/parsers/airport_s.py"]},"message":"add nodata fix"},{"commit":"07b179cd7f8853ff6aca0b27a703e198c158ca72","merge":"12a80e7 054422d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #67 from kellyjonbrazil/Dev\n\nDev v1.11.4"},{"commit":"054422d8373e7b8def18ddabd447062cb9cc3137","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_ls.py"]},"message":"add test for empty directory"},{"commit":"3e052d18102e98a09cbba21866855691eaccc216","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"c8e72805cf9def478b56c925f4afcc0ece1daac0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":10,"files":["jc/parsers/ls.py"]},"message":"fix error on empty directory"},{"commit":"12a80e7db0f6c7d536674ad8d34e26bba9a1f1f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":2,"files":["README.md"]},"message":"add fedora package info"},{"commit":"ee7ff9a09d3373f60ae1645376ccc0057803147e","merge":"346a14c f6478fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #66 from kellyjonbrazil/dev\n\nDev v1.11.3"},{"commit":"f6478fb636ead8d1e53e4a88d59e55222df37a8f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"811a0b0495819925199d70db266066197cc6824e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add info regarding the local parser plugin files"},{"commit":"aeb48edf727f23cc4f8fd9b760cfb69f03098278","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"use $LOCALAPPDATA variable for windows"},{"commit":"b1e94f0df7041bcae97455508f423178aef9d61d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"heading formatting"},{"commit":"60050e3c0fe34980f7db5b8bd46430f953f0c3a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["README.md"]},"message":"fix linux/unix directory and add note about the XDG specification followed"},{"commit":"39ef09aa5b0d43b5128299511afe80336aa38203","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"]},"message":"add local parser plugin feature"},{"commit":"8377d4311611c242e16eaebe66dafac9529150d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"54e4c447ab34ae54c73c92df40f1b4ca6ffb2277","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"]},"message":"clean up formatting"},{"commit":"937a9fa9cf2ede8e686ba853989f33e4a483a0ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":613,"deletions":3,"files":["jc/appdirs.py","jc/cli.py","requirements.txt","setup.py"]},"message":"vendorize appdirs module"},{"commit":"808ff6cf0e784cf0c2d523ff2e01197cb6e88c82","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["README.md"]},"message":"more acknowledgments updates"},{"commit":"7f5c649a95a871c3cd8d48731a6d26dcba6f725b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update acknowledgments"},{"commit":"b72727dec995de1ca5f68ee17a710b086c87d612","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":2,"files":["README.md"]},"message":"update custom parsers info"},{"commit":"3fc88bfb334143b68a9cb78d4034f33e7c0bcf76","merge":"346a14c 9f2279d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #65 from duelafn/local-parsers\n\nLoad custom parsers from /jc/jcparsers"},{"commit":"9f2279d5867eb89d4b4b7b4ffca290166ec97c48","author":"Dean Serenevy","author_email":"dean@serenevy.net","commit_by":"Dean Serenevy","commit_by_email":"dean@serenevy.net","stats":{"files_changed":4,"insertions":29,"deletions":2,"files":["README.md","jc/cli.py","requirements.txt","setup.py"]},"message":"Load custom parsers from /jc/jcparsers"},{"commit":"346a14cb9bb0d762fc3fa366ad97e5ff85f3992a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"change osx_device to unix_device"},{"commit":"dac00d17ff9f3d2bb959697b6e567015bfc2702b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":17,"deletions":0,"files":["tests/fixtures/nixos/route-ee.json","tests/fixtures/nixos/route-ee.out","tests/test_route.py"]},"message":"add nixos test"},{"commit":"9ca7cd40601b97829e8f88071fdfb928d939f7e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":17,"deletions":34,"files":["jc/parsers/route.py"]},"message":"update docs"},{"commit":"aa31628970b12295a41dff20e829fcce9f8a4d07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":70,"deletions":63,"files":["README.md","docs/parsers/netstat.md","docs/parsers/route.md","docs/parsers/stat.md","jc/parsers/netstat.py"]},"message":"update docs"},{"commit":"bed694fcf5c8c31bbd4f3e88759fe7ab82382d24","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump"},{"commit":"4b4af69fa184896ec15b5be7dc8416f36f921d5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"fix date"},{"commit":"9d96190a5b19e8d71c3ac66eb0303d269dd4ce5d","merge":"96df396 fa44d48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #64 from kellyjonbrazil/dev\n\nDev v1.11.2"},{"commit":"fa44d48c094a55e499c2c780d109bf277736b42e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":129,"deletions":7,"files":["changelog.txt","jc/parsers/stat.py","tests/fixtures/freebsd12/stat.json","tests/fixtures/freebsd12/stat.out","tests/fixtures/osx-10.14.6/stat.json","tests/test_stat.py"]},"message":"freebsd fixes, tests, and fixtures"},{"commit":"4ef961c2788c935b1fea1c9777b976e7b89e7367","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":20,"deletions":0,"files":["tests/fixtures/freebsd12/ntpq-p.json","tests/fixtures/freebsd12/ntpq-p.out","tests/test_ntpq.py"]},"message":"add freebsd test and fixtures"},{"commit":"292a837d5c47165ccb155f079b0a114b5c17a98e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":22,"deletions":0,"files":["tests/fixtures/freebsd12/last.json","tests/fixtures/freebsd12/last.out","tests/test_last.py"]},"message":"add tests and fixtures for freebsd12"},{"commit":"aa7b915d847dbd29d2c09b2cc40b847e37174ffb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/last.py"]},"message":"version bump"},{"commit":"c46fe73236b912d2ee89dfb36ff259fe95fd0479","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"add last fixes for freebsd"},{"commit":"039b2c129cbe79d2d23b1194b043d8b730609956","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":1,"files":["jc/parsers/last.py"]},"message":"freebsd fixes"},{"commit":"8f2e5e4808b30c658a4cb87125639e4d7d6c15d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"fix compatible logic"},{"commit":"c4da8e4f78e6b4aaa4aff76ae042be9aaec832a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":3,"files":["README.md"]},"message":"add nixos and freebsd to tested. update new arp fields"},{"commit":"bcab9078a4c2bfd6ae4dca9448b577d9ed0fc01c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"add w parser fix"},{"commit":"b3c6c1ea925bf7cd76368f5074fb8af52a844522","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":29,"deletions":5,"files":["jc/parsers/w.py","tests/fixtures/nixos/w.json","tests/fixtures/nixos/w.out","tests/test_w.py"]},"message":"strip whitespace in string fields and add tests"},{"commit":"a3af8662bd491e344c93d24afabd23e90efd8086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":205,"deletions":3,"files":["tests/fixtures/osx-10.11.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a2.json"]},"message":"add permanent field"},{"commit":"35940d0bc80bf61b11f40b1e1043835f26eb391c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":59,"deletions":4,"files":["changelog.txt","docs/parsers/arp.md","jc/parsers/arp.py","tests/fixtures/freebsd12/arp-a.json","tests/fixtures/freebsd12/arp-a.out","tests/test_arp.py"]},"message":"add freebsd permanent and expires fields"},{"commit":"26994cdcb7148d2c9d1701bca9541d247356260b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":115,"deletions":85,"files":["docs/parsers/df.md","docs/parsers/fstab.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/route.md","docs/parsers/stat.md","docs/parsers/uname.md"]},"message":"add freebsd compatibility info"},{"commit":"017159a829691cb6a7174f123d024eb252179b75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":15,"insertions":221,"deletions":0,"files":["tests/fixtures/freebsd12/netstat-Aa.json","tests/fixtures/freebsd12/netstat-AaT.json","tests/fixtures/freebsd12/netstat-AaT.out","tests/fixtures/freebsd12/netstat-AanP.json","tests/fixtures/freebsd12/netstat-AanP.out","tests/fixtures/freebsd12/netstat-Aax.json","tests/fixtures/freebsd12/netstat-Aax.out","tests/fixtures/freebsd12/netstat-aT.json","tests/fixtures/freebsd12/netstat-aT.out","tests/fixtures/freebsd12/netstat-an.json","tests/fixtures/freebsd12/netstat-i.json","tests/fixtures/freebsd12/netstat-ib.json","tests/fixtures/freebsd12/netstat-ib.out","tests/fixtures/freebsd12/netstat-r.json","tests/test_netstat.py"]},"message":"add freebsd nestat tests and fixtures"},{"commit":"b4e9c85e08d199dad67f03c7603194278a022696","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":0,"files":["jc/parsers/netstat_freebsd_osx.py"]},"message":"fixup -T freebsd output and add whitespace stripping to parse_post"},{"commit":"189146cd84cfad262f2b2601bb0cb4b9dde2587e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/netstat.py"]},"message":"add more ints. remove whitespace strip code and move to freebsd_osx module"},{"commit":"af34153ffab10ca1ad7f44736d379d91ae43c813","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["changelog.txt","jc/cli.py"]},"message":"version bump"},{"commit":"bf2ff3ffbb639446779b1f04f2997707d99c0a1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":1,"files":["jc/utils.py"]},"message":"fix compatibility search for platform names that append the version number (e.g. freebsd12)"},{"commit":"6423c9efd69e938af38934a97ca6b65009e8f07e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":34,"deletions":5,"files":["jc/parsers/netstat.py"]},"message":"integer and float updates"},{"commit":"58ab0d4ece7f006ce9431afb9e0fecbe60930be7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":12,"deletions":4,"files":["changelog.txt","jc/parsers/netstat.py","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json"]},"message":"strip whitespace from string fields"},{"commit":"83a738bf4d756036d6269b9153220d7f1018ac9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json"]},"message":"update fixtures for osx_flags and osx_inode name change to unix_flags and unix_inode"},{"commit":"3640671fc6a67c9628fd47e19e9fe0a0738439ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/{netstat_osx.py => netstat_freebsd_osx.py}"]},"message":"rename module"},{"commit":"1da623b30ef6f9b12ac231518d2d4e7dadcf717b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["changelog.txt"]},"message":"add items"},{"commit":"b10ca64646e93d9797182ea046f4956a17b37627","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":71,"deletions":71,"files":["jc/parsers/netstat.py"]},"message":"change osx_inode and osx_flags to unix_inode and unix_flags. Also rename netstat_osx module to netstat_freebsd_osx"},{"commit":"2128763ee67a07da6ebf123abeec39794bc1f4e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":12,"files":["tests/test_netstat.py"]},"message":"fix osx version from 16.4 to 14.6"},{"commit":"a27e7ed39c63c04cfa78caceaada42f7a9496a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":12,"deletions":12,"files":["tests/fixtures/centos-7.7/netstat-r.json","tests/fixtures/centos-7.7/netstat-rne.json","tests/fixtures/centos-7.7/netstat-rnee.json","tests/fixtures/centos-7.7/route-vn.json","tests/fixtures/centos-7.7/route.json","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-rnl.json","tests/fixtures/ubuntu-18.04/netstat-r.json","tests/fixtures/ubuntu-18.04/netstat-rne.json","tests/fixtures/ubuntu-18.04/netstat-rnee.json","tests/fixtures/ubuntu-18.04/route-vn.json","tests/fixtures/ubuntu-18.04/route.json"]},"message":"test updates for added route_flags_pretty and flags_pretty fields"},{"commit":"f07b7eaa474eb87dbdbc7fbe41b9386feff7bee2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":38,"deletions":12,"files":["jc/parsers/route.py"]},"message":"add flags_pretty"},{"commit":"6ce18de84ce16a926f9cd97c3210ef209c3352da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":130,"deletions":69,"files":["jc/parsers/netstat.py","jc/parsers/netstat_linux.py","jc/parsers/netstat_osx.py"]},"message":"add route_flags_pretty"},{"commit":"8631b756e7ab8cd71c2a3eb288e2d1823cec5782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":76,"deletions":0,"files":["tests/fixtures/freebsd12/netstat-Aa.out","tests/fixtures/freebsd12/netstat-an.out","tests/fixtures/freebsd12/netstat-i.out","tests/fixtures/freebsd12/netstat-r.out"]},"message":"add freebsd test files"},{"commit":"7414d984125300164a5b6156d7a80128d4d6cb15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":18,"deletions":18,"files":["jc/parsers/df.py","jc/parsers/fstab.py","jc/parsers/mount.py","jc/parsers/ntpq.py","jc/parsers/stat.py","jc/parsers/uname.py"]},"message":"add freebsd compatibility"},{"commit":"d7b19892e8fb11e17fcbadcdbb08d49897d7754f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":10,"deletions":7,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"]},"message":"add freebsd support for netstat -i"},{"commit":"96df396eaf4e030113005a95e525d644c394dfe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"2f6f640317da5af894f34f187c4243ef0c599d07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"spelling"},{"commit":"c4a0a50f3a3ac5833ab5d2f8a0cb3f18da335812","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]},"message":"add nix-env"},{"commit":"658f8a3842273cea049689b3aea15d89a7294b24","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":3,"files":["README.md"]},"message":"add zypper and ports info"},{"commit":"bfb876a1e394ff63c6773965ba0b65da4e109c1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"90c34b1f4ee2d9ec8125346bb90b227f76ada2ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"fix dmidecode example"},{"commit":"3f9164ea77ec41e1b0671d0a642900d8e36faf9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"bold formatting"},{"commit":"7fd6fecbf5a08b1f13aa7e906e94be9bc126780a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"8029f72363a4d19938df07603f03a0147f6246a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":10,"deletions":7,"files":["changelog.txt","docs/parsers/stat.md","jc/cli.py","jc/parsers/stat.py","setup.py","tests/fixtures/osx-10.14.6/stat.json"]},"message":"change osx_flags from integer to string"},{"commit":"c7fdce5d3b7566a7d290627767c47d9c196e02ad","merge":"f5627a4 84f48aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #62 from kellyjonbrazil/dev\n\nDev v1.11.0"},{"commit":"84f48aa369a458f534523ecc1e3aaaf403d06f1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"2e9a0a9c1221dd01bd683ecbc4871d03738da671","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["changelog.txt"]},"message":"add features"},{"commit":"c1f6f2b9508e558ab88b4a0a61e93a6cf5460bea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":116,"deletions":4,"files":["docs/parsers/stat.md","jc/parsers/stat.py","tests/fixtures/osx-10.14.6/stat.json","tests/fixtures/osx-10.14.6/stat.out","tests/test_stat.py"]},"message":"osx fixes and tests"},{"commit":"ede21bca13c4b46899721f01d979c8b063f861a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":110,"deletions":78,"files":["jc/parsers/stat.py"]},"message":"add OSX support for stat"},{"commit":"8dd9a9f9cbc70a19176f909f6ac76b2bcf670736","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":45,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-i.json","tests/fixtures/osx-10.14.6/netstat-i.json","tests/fixtures/ubuntu-18.04/netstat-i.json","tests/fixtures/ubuntu-18.04/netstat-i.out","tests/test_netstat.py"]},"message":"add netstat -i tests"},{"commit":"04f92cd1330759e4bad1c0304b9e1c28e8d32d59","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":166,"deletions":4,"files":["README.md","docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_linux.py","tests/fixtures/centos-7.7/netstat-i.out"]},"message":"add linux support for netstat -i"},{"commit":"8be8d2393b276a9249e1c573ce19cf630f0942fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":99,"deletions":3,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-i.out"]},"message":"add netstat -i support for OSX"},{"commit":"0a879681be68fe2e6e5c013ab0fe18de99b04f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":97,"deletions":282,"files":["README.md","docs/parsers/netstat.md","jc/parsers/netstat.py"]},"message":"add netstat -r to docs"},{"commit":"2ca1587a49511899bf719e0b0c7de32158fc491d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":102,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-r.json","tests/fixtures/centos-7.7/netstat-rne.json","tests/fixtures/centos-7.7/netstat-rnee.json","tests/fixtures/ubuntu-18.04/netstat-r.json","tests/fixtures/ubuntu-18.04/netstat-r.out","tests/fixtures/ubuntu-18.04/netstat-rne.json","tests/fixtures/ubuntu-18.04/netstat-rne.out","tests/fixtures/ubuntu-18.04/netstat-rnee.json","tests/fixtures/ubuntu-18.04/netstat-rnee.out","tests/test_netstat.py"]},"message":"add linux netstat -r tests"},{"commit":"ec2cd2d708a57c0458657416bedcb4340cb40901","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":70,"deletions":11,"files":["docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_linux.py","jc/parsers/netstat_osx.py","tests/fixtures/centos-7.7/netstat-r.out","tests/fixtures/centos-7.7/netstat-rne.out","tests/fixtures/centos-7.7/netstat-rnee.out","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-rnl.json"]},"message":"add netstat -r support for linux"},{"commit":"5d0dbece9317e84a47d9f4b2d18a9ffa33fbee6e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":288,"deletions":5,"files":["docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-r.out","tests/fixtures/osx-10.14.6/netstat-rnl.json","tests/fixtures/osx-10.14.6/netstat-rnl.out","tests/test_netstat.py"]},"message":"add netstat -r functionality for OSX"},{"commit":"df1e4b414b2bda5be3153767cd854b2483ba600b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":[".gitignore"]},"message":"remove unused folder"},{"commit":"40760991e7dae43cd15134310f7bbb5ce0f58dae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["LICENSE.md"]},"message":"update copyright date"},{"commit":"464f5f86cf2c8fe6a1a857b0ad4d221a3edf3d88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"update description"},{"commit":"7b09e9fccdd4f09218a500b54c898ada1b9843c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":8,"deletions":5,"files":["docs/parsers/dmidecode.md","jc/parsers/dmidecode.py","tests/fixtures/centos-7.7/dmidecode.json","tests/fixtures/fedora32/dmidecode.json","tests/fixtures/ubuntu-18.04/dmidecode.json"]},"message":"set empty values to Null and update fixtures"},{"commit":"6cba7d429898d331c674c778f8bd85ba75a8dca9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"remove linux from description"},{"commit":"9730f62e4970b5a4490f8dc24b6cfb9cacd0cbf2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":151,"deletions":133,"files":["jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json","tests/fixtures/osx-10.14.6/netstat.out"]},"message":"fixup name field and update test fixtures"},{"commit":"e0c1c87f549eee000b93b5f5a3e8d0b052eb7d32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["README.md"]},"message":"formatting"},{"commit":"931b3d2b836b251590497f4cfa65f106762086c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"e5d561baeecf1fd83a884b3cd9d322762f750dfb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/netstat.py"]},"message":"add multipath condition for osx detection"},{"commit":"2867593e7aa12299686e2c6aa0f2a79a9b550b53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"dd52fee5635c977d5c77046ab9fe78d2ed10deef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":2141,"deletions":0,"files":["tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-Abn.out","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat-An.out","tests/fixtures/osx-10.14.6/netstat.json","tests/fixtures/osx-10.14.6/netstat.out","tests/test_netstat.py"]},"message":"osx netstat tests and fixtures"},{"commit":"8e1f8858273e671a882a07eae1c35b38f5298c94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"fix filtered netstat views"},{"commit":"2d39a58f902e6af77f8f96ffcd1d68b7cbadd56c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":81,"deletions":14,"files":["README.md","docs/parsers/dmidecode.md","docs/parsers/netstat.md","jc/parsers/dmidecode.py"]},"message":"doc update"},{"commit":"9c4fa2ae2601ca4880c0b078fa917f01f1392e0e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":22,"deletions":2,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"]},"message":"integer conversions and icmp fix"},{"commit":"de52d84e82df6d8c5e2416c6bc44e59c41c685da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/netstat_osx.py"]},"message":"fix udp state and udp46 entries"},{"commit":"ce9b55059a28d363b8b0ae4f3ccbdbdc4bf4b58e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":185,"deletions":167,"files":["jc/parsers/netstat.py","jc/parsers/netstat_linux.py"]},"message":"organize files"},{"commit":"bcd370a6a01a115d470776f5690f8571d68d3930","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":15,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"]},"message":"code cleanup"},{"commit":"c8216850abd2d0b8cc6761453f853f296e8a28f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":55,"files":["jc/parsers/netstat_osx.py"]},"message":"code cleanup"},{"commit":"f5feedb90b39e5c3f4564615482d47ccd145844f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":10,"files":["jc/parsers/netstat_osx.py"]},"message":"fix comments"},{"commit":"a4371cd187fe5077018edbfeee77eb17c6a90ad3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/netstat_osx.py"]},"message":"support netstat -A"},{"commit":"9d5ba4c83404e4fab5c0f40c30b4735685499a31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/netstat_osx.py"]},"message":"formatting"},{"commit":"1639dee1bb93f6f89e8bb7b37134dc1f561c479c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":35,"files":["jc/parsers/netstat_osx.py"]},"message":"fix parse_post"},{"commit":"9363f430f20951e6fa739f06c85c5b6b3421b60d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/netstat.py"]},"message":"use list extend method to simplify code"},{"commit":"9192a0907364c772558380be1373b8dcea972a6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":124,"deletions":34,"files":["jc/parsers/netstat_osx.py"]},"message":"parse all sections"},{"commit":"b915eb97556ccc5fc60e8d23f7298ffec2d8e3b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":237,"deletions":55,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"]},"message":"initial osx parser"},{"commit":"1cfcc2b592f682d2b50a0c4188fa3ae832a6c682","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/dmidecode.py"]},"message":"tighten up line test logic when counting tabs"},{"commit":"7138dd02b73073441a52c9b574bf0d6e02f0d7d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/parsers/dmidecode.py"]},"message":"cleanup variables after adding to item"},{"commit":"b4276643b70f7820f8f53df22b32fffb54e30ca2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":56,"deletions":0,"files":["tests/fixtures/centos-7.7/dmidecode.json","tests/fixtures/fedora32/dmidecode.json","tests/fixtures/ubuntu-18.04/dmidecode.json","tests/test_dmidecode.py"]},"message":"add dmidecode tests and fixtures"},{"commit":"2ef00763bfe7c4348f30026759941efe39861a0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/dmidecode.py"]},"message":"fix first item"},{"commit":"54364928fc826ead7774a4cec1bcb73a5cb9ee0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":74,"deletions":81,"files":["docs/parsers/dmidecode.md","jc/parsers/dmidecode.py"]},"message":"fix oddities like hybrid single/multiline data and items containing multiple records"},{"commit":"09b3b4932b0fa4a2b18c88a8465c15a194b727e6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":35430,"deletions":0,"files":["tests/fixtures/centos-7.7/dmidecode.out","tests/fixtures/fedora32/dmidecode.out","tests/fixtures/ubuntu-18.04/dmidecode.out"]},"message":"add dmidecode output fixtures"},{"commit":"29d6670119d8fcd0344e90f01bfb6260aa936e50","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/dmidecode.py"]},"message":"convert integers"},{"commit":"2f654b5f1acda01192294f4c18a5a31363e7f387","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["docs/parsers/dmidecode.md"]},"message":"doc update"},{"commit":"e53b9f5992450b53efc886b4fa9ca16f3dd07530","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["jc/parsers/dmidecode.py"]},"message":"add caveats to documentation"},{"commit":"addb234e6162c58750cb67947bc4776635bf54fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":153,"deletions":0,"files":["docs/parsers/dmidecode.md"]},"message":"add dmidecode doc"},{"commit":"76eca3b65911a0a340d3d94322a8145ee89c50da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"]},"message":"add dmidecode"},{"commit":"f90dec4c0ecf88623fb22273b7527ec8884826c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":94,"deletions":5,"files":["jc/parsers/dmidecode.py"]},"message":"add examples to documentation"},{"commit":"8900a59d4cb424ff58d1eb27f8fda7ea0a668a5c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":19,"files":["jc/parsers/dmidecode.py"]},"message":"simplify logic by removing redundant block"},{"commit":"6685138200d5955115707d04aad0293ea8af5b15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dmidecode.py"]},"message":"fix for missing multi-line values that come immediately after a previous multi-line value"},{"commit":"4d3e65b980d50164b8220e59560822b9871580ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/parsers/dmidecode.py"]},"message":"fix missing values"},{"commit":"e9282bb546f560da6396f44e2ce9e04136348e2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":175,"deletions":0,"files":["jc/cli.py","jc/parsers/dmidecode.py"]},"message":"add dmidecode parser"},{"commit":"f5627a45947e5e76e5f3e64d9b30099fe0b962a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"81ffdb25105c681c8ed12336d220a102b7f4215e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/cli.py"]},"message":"remove shebang for Fedora packaging"},{"commit":"4c00a99850cb6f69713be7c6ad9ffba11924d9b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"2bfcb45b28e2174a8bbc27237e619b5c232ccae8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["jc/cli.py"]},"message":"make cli.py executable"},{"commit":"ab0c10e791283affb227d0d5306701ba7fd29d13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["LICENSE.md","README.md"]},"message":"remove execute permissions"},{"commit":"2c1935115de03a28fe92674b04b2542b0eccb8fe","merge":"99070fa d98e43d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #61 from kellyjonbrazil/dev\n\nDev v1.10.10"},{"commit":"d98e43dc78205d3224bfc1e67de2da3c5fb7ea9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"add netstat item"},{"commit":"9348988d646d9b9c9970c19e84f311554ae38e7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":0,"files":["tests/test_netstat.py"]},"message":"add netstat test for Fedora32"},{"commit":"1285c664679c40b18327c89b85921a80b01f0191","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":140,"deletions":0,"files":["tests/fixtures/fedora32/netstat.json","tests/fixtures/fedora32/netstat.out"]},"message":"netstat with bluetooth section"},{"commit":"b7191bbc130e0f33d02c0a4819fa91ffff1599d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"handle bluetooth section (ignore for now)"},{"commit":"98b97509f7893cb95e9651ce9706db5c961aa997","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"2b2b570490f3834367a598579473001f45738e8a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":21,"deletions":0,"files":["tests/fixtures/fedora32/last.json","tests/fixtures/fedora32/last.out","tests/test_last.py"]},"message":"add tests for 'gone - no logout'"},{"commit":"cce2d1ff298f2284c43c4534144329f3533a81ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/last.py"]},"message":"add condition for 'gone - no logout'"},{"commit":"b79600c57249cbb65805caad2524cc2492342be6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"version bump"},{"commit":"140f1a85437745296b56976bef1b46514e323a4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":7,"deletions":7,"files":["tests/fixtures/centos-7.7/ls-R-newlines.json","tests/fixtures/centos-7.7/ls-R.json","tests/fixtures/centos-7.7/ls-glob.json","tests/fixtures/osx-10.14.6/ls-glob.json","tests/fixtures/ubuntu-18.04/ls-R-newlines.json","tests/fixtures/ubuntu-18.04/ls-R.json","tests/fixtures/ubuntu-18.04/ls-glob.json"]},"message":"test fixes for issue #60"},{"commit":"e34657cfde6816ab7a7415d83580df0a1d98a5a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"]},"message":"fix issue #60 that was skipping the first file in some instances using -R without -l"},{"commit":"99070fa6073c4415a6faf8ca69dd6aa089af4062","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"2b46785b1f1281ee63df9159e36068f4607ad9b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":25,"deletions":3,"files":["jc/parsers/ifconfig.py"]},"message":"add MIT license to vendorized IfconfigParser class"},{"commit":"c72562524b2b9aaca0be372bb24343158829ba5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"fully remove tests from packaging"},{"commit":"b7dd6441c7e3f54f8a260fceef49aae6816c7151","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":1,"files":["changelog.txt","jc/cli.py"]},"message":"version bump"},{"commit":"31fcc2f755ad86622cf51a75879b14d44f246300","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["MANIFEST.in"]},"message":"remove manifest.in - no longer needed due to removing tests"},{"commit":"b391aa14bceffedb5a9c13f3f908923790edefc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["setup.cfg"]},"message":"add license_file to metadata"},{"commit":"d3c45debbb6690acd341fbcc9b99d1ae4cf0a43c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["setup.py"]},"message":"remove tests and add license file"},{"commit":"5b08469b874553744bd5c5b1fa6581f4dcffacd0","merge":"8cf00a2 4a77ec6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #57 from kellyjonbrazil/dev\n\nDev v1.10.7"},{"commit":"4a77ec63a46554c84e646d31564230774ed87431","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["docs/parsers/ifconfig.md"]},"message":"add IfconfigParser class"},{"commit":"d13606b6dc2c207be6dea89a2c3e713c18a574b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":7,"deletions":6,"files":["changelog.txt","jc/cli.py","requirements.txt","setup.py"]},"message":"modify dependencies for easier packaging into Fedora"},{"commit":"05291c93bba1aa364ba1ac7f2508e24bb362a814","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":198,"deletions":3,"files":["jc/parsers/ifconfig.py"]},"message":"vendorize ifconfig-parser module for easier packaging in Fedora"},{"commit":"8cf00a208eb8493300331e7361b72e4f9e3f140e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"change text to strings"},{"commit":"06d73c88767a5b4d6003231c897c447ee5e1faa5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"649c646ea25ac7f89900cffa8919df01671bd32d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]},"message":"add brew install option"},{"commit":"b7756d92501a7b8ba8e77d77d9d3718a58425beb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"1cd2cd954c21e5caec333507bd81819c82d45b49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":16,"files":["tests/fixtures/osx-10.11.6/du.json","tests/fixtures/osx-10.11.6/du.out","tests/fixtures/osx-10.14.6/du.json","tests/fixtures/osx-10.14.6/du.out"]},"message":"remove references to homebrew/shim to allow tests to pass in homebrew packaging ci/cd"},{"commit":"72020b8da999ddca6f9ba82da235c9f42e4f4273","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":22,"files":["README.md"]},"message":"move packages info to jc-packages github page"},{"commit":"cf9720b749e7fc8caed0d2f1f2b1727a22a156b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"update install info"},{"commit":"967b9db7f90a3c3a0352edde7f4455c5f5d45b18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["README.md"]},"message":"spelling"},{"commit":"bb3acb1182f4d509f9ddc7dfcffa4578e0a2bd5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"560c7f7e6d1f8a69ab026ddbff753d232ca1d00b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"79b28417644e00b933f531374d2f7fe8051e61be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":0,"files":["README.md"]},"message":"add new binary package install info"},{"commit":"a06a89cbd11026aa3910fadd1eff7fe388d02507","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"431bd969eb4809424fe99a02a7decb98bce9ea51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"use sys.exit(0) instead of exit()"},{"commit":"c87b722aec6e6964c516bbb8e80667ad7d9c6bc7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"spelling"},{"commit":"3688b8b014a1cf753b2207fbf3ebf0292c3fd672","merge":"99f7842 07b8d9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #56 from kellyjonbrazil/dev\n\nDev v1.10.4"},{"commit":"07b8d9e0c0d723d93e6c652f5b6156c467c451c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"7454b53e395e9122c00d4cf06b1c2af109913d7a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["README.md"]},"message":"formatting"},{"commit":"3d6a76024de0f9dcf91a4ab49cabe461074114fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":0,"files":["README.md"]},"message":"update with JC_COLORS info"},{"commit":"421b9809575a8de00229af4b851739889638ac74","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":37,"files":["jc/cli.py"]},"message":"JC_COLORS working"},{"commit":"4a22e27d6a80a988f4de17bce421110d6abb8867","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":64,"deletions":0,"files":["jc/cli.py"]},"message":"add set_env_colors function"},{"commit":"99f7842dee0f79cf933fae185cf8b0ed7c8b210f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":11,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"fix brek on pipe error"},{"commit":"7f869b4b187d70752207a7e74c13b858446f898f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":11,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"change colors to ansi and match jello style"},{"commit":"9665f4ee84680f3a8154b8a43ea668af2907782c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add pypi badge"},{"commit":"606904d48b1c7e0c19a940b5be0b564d1b5be6c8","merge":"302f05c 3f5279b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #53 from kellyjonbrazil/dev\n\nDev v1.10.1"},{"commit":"3f5279b97c386c736e0e2faa5c39d68ef89c46aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to 1.10.1"},{"commit":"f5ec21e6ac612566af93158fc3968b901322d04a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_luf.py"]},"message":"use in instead of find()"},{"commit":"578a284465f014fe71ad6ac00bd41dc24ab2ced9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_ls.py"]},"message":"use in instead of find()"},{"commit":"422e392d9d98a7864312fc7fbd7f45537b71acbe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_lj.py"]},"message":"use in instead of find()"},{"commit":"54dfffd34a17d1194690142ac403391fc65bb85f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl.py"]},"message":"use in instead of find()"},{"commit":"cffba64d2b9165b44a8856665807111a2ad3a190","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/stat.py"]},"message":"use in and startswith() instead of find()"},{"commit":"56a0c12a59bb252d3b7d0929f9fb19b4d96a8437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/pip_list.py"]},"message":"use in instead of find()"},{"commit":"c174d3de18923b2b03befb5a7dfcbd977a8e147e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/netstat.py"]},"message":"use in and startswith() instead of find()"},{"commit":"a9c59ef9fc1bb68c9d0d7beffbeb670baf5b1e3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/mount.py"]},"message":"fix logic to not for ' type ' in cleandata[0]"},{"commit":"abdb9b26732a6a71f5938d665b2ca43a381e1b33","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/mount.py"]},"message":"use in instead of find()"},{"commit":"548aaab6262878d21f8b9539950cfad48638e35c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":42,"files":["jc/parsers/lsof.py"]},"message":"remove old commented code"},{"commit":"20571c87ae9e1ca8a1f3120511910751420a35ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/jobs.py"]},"message":"us in instead of find()"},{"commit":"19e49200de5c731f76b42e80388c5223e8097e39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"]},"message":"version bump"},{"commit":"d32f5c67a91ede572c88e431b2ad0ce4d6c87dec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/iptables.py"]},"message":"use startswith() instead of find()"},{"commit":"b83b626435c55d2aa63e56dd8f22603da59e7626","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ifconfig.py"]},"message":"use startswith() instead of find()"},{"commit":"ab2c1b25ec5da5f2ba238868c4dfca95a44da30e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/hosts.py"]},"message":"use startswith() and in instead of find()"},{"commit":"f2d46313a4508f13656cdb360f83fdf4116cc7d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/fstab.py"]},"message":"use startswith() instead of find()"},{"commit":"87e4796a6c936793e2784346819c7033d59b91e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/df.py"]},"message":"use in instead of .find()"},{"commit":"0014a5c2f4c056c2683d6614a65d778b1f527932","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab_u.py"]},"message":"us startswith() and in instead of .find()"},{"commit":"7af56e0dadab7d8b9538f3b7a550ad6dd1ac217d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab.py"]},"message":"use startswith() and in instead of find()"},{"commit":"a5ae6e3c017b041f9079ff12455b7551ad204cb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/arp.py"]},"message":"use startswith() instead of find()"},{"commit":"fe1a0d1faf46f55ed2888ed0065f3f3144691ed8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":9,"files":["jc/parsers/dig.py"]},"message":"use in instead of .find()"},{"commit":"302f05cdda305e46e69b74d5b0096f64c17da637","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"prettify style block"},{"commit":"c0044be7b0b6dadcffb64cb88ad92bf653dd2b6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"rename color grey to gray"},{"commit":"01100788070b82b4b827ef356972fa9b8f737eeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update badge"},{"commit":"42eacb45f8fdf8085c6231bf5297629c2ec97c22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"rename to Tests"},{"commit":"a43e2e19916662d509883457c160d7f95f97ae12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add -m option info"},{"commit":"c8b721d4f6e46a2db77e1140b9caeb3b403fef72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":9,"deletions":3,"files":["changelog.txt","jc/cli.py","requirements.txt","setup.py"]},"message":"version bump to 1.10.0"},{"commit":"d0bfddc3d9989444757d6668726c916e5363620b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":41,"deletions":6,"files":["jc/cli.py"]},"message":"add color and -m monochrome option"},{"commit":"6b925a16c87cf75bb30edfda38511e8f84a4f6d6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]},"message":"add tests badge"},{"commit":"89ebd9fc2271d2c76353d5707bfd4afb7dedc278","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":0,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"add axfr info to schema"},{"commit":"6b4ba662317629839aa62fbcfefb8ed3337c37ef","merge":"8ec8cd6 5b697dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #52 from kellyjonbrazil/dev\n\nDev v1.9.3"},{"commit":"5b697dc38141cdd47fcdd63bf295a80a7da86697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":72,"deletions":0,"files":["tests/test_dig.py"]},"message":"add more dig tests"},{"commit":"9ba73c95d1a528a9a92be4068805bb5aa027901e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":215,"deletions":0,"files":["tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/centos-7.7/dig-axfr.out","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-axfr.out","tests/fixtures/ubuntu-18.04/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-axfr.out","tests/test_dig.py"]},"message":"add tests"},{"commit":"93aa39044749c4c0ed749f62fb00fc1c76dc5af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to v1.9.3"},{"commit":"3cfb8945ddd83c00a720c44e2c1d97da0d8bad25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/dig.py"]},"message":"use startswith() instead of find"},{"commit":"cd8d38f2a136c4f35efc020b3476d09e965b71f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":50,"deletions":1,"files":["jc/parsers/dig.py"]},"message":"add axfr support"},{"commit":"8ec8cd62944c59c462ab9f520c1dcfd14218b1ed","merge":"e5bea9a c028113","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #50 from kellyjonbrazil/dev\n\nDev v1.9.2"},{"commit":"c02811356153c2b4f8b2d7efb7f48bf8f7748068","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to v1.9.2"},{"commit":"5f22e1c8031b808ef02ffe078408bd58cc76e570","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":33,"deletions":0,"files":["tests/fixtures/osx-10.14.6/arp-a2.json","tests/fixtures/osx-10.14.6/arp-a2.out","tests/test_arp.py"]},"message":"fix and test for osx arp entries without ifscope"},{"commit":"d3351787e5cabd064c19e6617e9535e501686404","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":9,"files":["jc/parsers/arp.py"]},"message":"change osx detection"},{"commit":"e5bea9ae3b0a70b38f7da7dd9184343dbbd18887","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/file.py"]},"message":"version bump"},{"commit":"93c710abe9171568f61f65c4f84c040ffc24870c","merge":"400f5a4 c29e7cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #49 from kellyjonbrazil/dev\n\nDev v1.9.1"},{"commit":"c29e7cfe5cc4b2151912c6f618137d1b6c39c7be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":9,"deletions":6,"files":["README.md","changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to 1.9.1"},{"commit":"cb5c1ba00dc0e02bf6ad6c40096d99e319fa6171","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":101,"deletions":0,"files":["tests/fixtures/osx-10.14.6/file2.json","tests/fixtures/osx-10.14.6/file2.out","tests/test_file.py"]},"message":"add tests for fix to make the file parser splitting more robust"},{"commit":"9a012b94e1942a14bc6dae3fb967ef618819c77b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/file.py"]},"message":"make splitting more robust"},{"commit":"400f5a44ece280cb0097d806b78a9490d2905600","merge":"c7cd2b6 a2ab5ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #48 from kellyjonbrazil/dev\n\nDev v1.9.0"},{"commit":"a2ab5bab91ea980399df1afb9d8071fa3282d04e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to v1.9.0"},{"commit":"fc8ab27361df3359b706125531b2643612d6996a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":93,"deletions":51,"files":["README.md","docs/parsers/ntpq.md","jc/parsers/ntpq.py","tests/fixtures/ubuntu-18.04/ntpq-p2.json","tests/fixtures/ubuntu-18.04/ntpq-p2.out","tests/test_ntpq.py"]},"message":"bugfix for misaligned columns and additional test for ntpq #31"},{"commit":"59f19d33a5c6677ea756a9424fdb032b430511a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":153,"deletions":0,"files":["tests/fixtures/centos-7.7/file.json","tests/fixtures/centos-7.7/file.out","tests/fixtures/osx-10.14.6/file.json","tests/fixtures/osx-10.14.6/file.out","tests/fixtures/ubuntu-18.04/file.json","tests/fixtures/ubuntu-18.04/file.out","tests/test_file.py"]},"message":"add file command tests for #41"},{"commit":"dfc96181159748d019419a2cba7aa9cb3b7a2a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":260,"deletions":1,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/file.md","jc/cli.py","jc/parsers/file.py"]},"message":"add file parser for issue #41"},{"commit":"8e02e5c75a11cf205299ee6f87b67f9b787cf55e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":5,"files":["jc/cli.py","tests/test_cli.py"]},"message":"fix issue with getting options with some commands #47"},{"commit":"970493ab9346a344b21be7614903ad81bc65a6e9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["jc/parsers/airport.py","jc/parsers/airport_s.py"]},"message":"add magic commands"},{"commit":"64d78956eb33ca0a2564fded3d12729ee036a915","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"update acknowledgment"},{"commit":"40c05346f4098f8eea14c42da07df3faa143587a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":25,"files":["jc/parsers/history.py"]},"message":"re-adding optimizations from https://github.com/philippeitis"},{"commit":"e9b0bc1409a824a82dabd2479892b7d18bad8c3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/airport.py"]},"message":"doc update"},{"commit":"798e6bb7d939176bb36771a6d41bd55403d583be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":29,"deletions":0,"files":["tests/fixtures/osx-10.14.6/airport-s.json","tests/test_airport_s.py"]},"message":"tests passing for airport -s. issue #46"},{"commit":"12a370deed03ba42d7b7ebb410195ce5f32bb9c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":372,"deletions":9,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/airport.md","docs/parsers/airport_s.md","jc/cli.py","jc/parsers/airport.py","jc/parsers/airport_s.py"]},"message":"add airport -s parser for issue #46"},{"commit":"553bfbe1a0dd866851ba7eca66e9295c2097ad86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":40,"deletions":6,"files":["docs/parsers/airport.md","jc/parsers/airport.py","tests/test_airport.py"]},"message":"tests passing for airport -I. Issue #46"},{"commit":"52494321fcfe0dc7ee71d8d78210b3c10372a237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":120,"deletions":15,"files":["README.md","docs/parsers/airport.md","jc/parsers/airport.py","tests/fixtures/osx-10.14.6/airport-I.json","tests/fixtures/osx-10.14.6/airport-I.out"]},"message":"fixes and docs for airport parser issue #46"},{"commit":"c6c9e06496683d2dd3586d17085801c7e698d960","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":196,"deletions":1,"files":["changelog.txt","docgen.sh","docs/parsers/airport.md","jc/cli.py","jc/parsers/airport.py","tests/fixtures/osx-10.14.6/airport-I.out","tests/fixtures/osx-10.14.6/airport-s.out"]},"message":"added airport command parser"},{"commit":"e3a6c05a58a2451e70975d8fabf644c56603c73d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":64,"deletions":17,"files":["docs/parsers/timedatectl.md","jc/parsers/timedatectl.py","tests/fixtures/centos-7.7/timedatectl.json","tests/fixtures/ubuntu-18.04/timedatectl.json","tests/test_timedatectl.py"]},"message":"timedatectl fixes, tests, and fixtures for issue #42"},{"commit":"391d06f68d1f45d33590d5407d3a5e4f723af717","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":35,"deletions":35,"files":["README.md","docs/parsers/ntpq.md","jc/parsers/ntpq.py","tests/fixtures/centos-7.7/ntpq-p.json","tests/fixtures/centos-7.7/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-p.json","tests/fixtures/ubuntu-18.04/ntpq-pn.json"]},"message":"change selection_state to state"},{"commit":"99804ea06e0c70e3a82ddc7f9c7a42343374d700","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":222,"deletions":0,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/timedatectl.md","jc/cli.py","jc/parsers/timedatectl.py"]},"message":"added timedatectl status parser"},{"commit":"51935deb2ad18e4ea3ca16954ce810354f6095a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":21,"deletions":0,"files":["tests/fixtures/centos-7.7/timedatectl.out","tests/fixtures/ubuntu-18.04/timedatectl.out"]},"message":"timedatectl test fixtures"},{"commit":"b24d0c3a475b88d9ccf1a8fe29715ee60972fcad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":34,"deletions":2,"files":["README.md","jc/parsers/ntpq.py"]},"message":"ntpq docs"},{"commit":"762a886d6fdf5c2ad21d81868d138fb32621ed1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":133,"deletions":0,"files":["tests/fixtures/centos-7.7/ntpq-p.json","tests/fixtures/centos-7.7/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-p.json","tests/fixtures/ubuntu-18.04/ntpq-p.out","tests/fixtures/ubuntu-18.04/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-pn.out","tests/fixtures/ubuntu-18.04/ntqp-p.out","tests/test_ntpq.py"]},"message":"add ntpq tests"},{"commit":"2c3e9ddfe47f56cd7edc2fdf6317f7ecec0b7918","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":543,"deletions":0,"files":["changelog.txt","docgen.sh","docs/parsers/ntpq.md","jc/cli.py","jc/parsers/ntpq.py","tests/fixtures/centos-7.7/ntpq-p.out","tests/fixtures/centos-7.7/ntpq-pn.out"]},"message":"add ntpq parser for issue #31"},{"commit":"c7cd2b63c8f24e9d17c458880fe401d8032395ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":91,"files":["tests/fixtures/generic/oscar_age_male.csv"]},"message":"delete unused test file"},{"commit":"f0528ea83112e71ff51c89be27fc9bbdfbbf1951","merge":"b5eaff2 5bc5596","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #45 from kellyjonbrazil/dev\n\nDev v1.8.1"},{"commit":"5bc5596f604fb87dffbfdf44ce2395b16bf01297","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":17,"deletions":4,"files":["changelog.txt","jc/cli.py","setup.py","tests/test_ls.py"]},"message":"version bump to 1.8.1"},{"commit":"2c27ac46be803b583caf82c1765bd0c35cee8bc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2454,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-lR-empty-folder.json","tests/fixtures/osx-10.14.6/ls-lR-empty-folder.out"]},"message":"add ls test fixtures"},{"commit":"caad840153e40dc660a2d5e06a96f3451fef25f9","merge":"aff86ae 65bd7e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #44 from philippeitis/patch-5\n\nMove core magic() logic into seperate function for testability, minor tweaks"},{"commit":"65bd7e2904016141c1ed53cdd437865c66d7628e","merge":"17b6efe c3d7d7d","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #1 from kellyjonbrazil/pr/44\n\nMerge changes"},{"commit":"c3d7d7db12d4870fc4499e0e3445d85ae89f2aea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"removed whitespace"},{"commit":"56053103625af6fb7fa749fc5bc3dbdc62fc223c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":4,"files":["tests/test_cli.py"]},"message":"added tests, removed os import, changed to 'assertEqual'"},{"commit":"17b6efe82e6a558353b011c543489eaaf3a6d3ac","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":14,"deletions":0,"files":["tests/test_cli.py"]},"message":"Create basic tests for generate_magic_commands()"},{"commit":"a032ae56ae7d247e00415267b65b2a8b80a3302e","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"Pass args to generate_magic_command() to allow testing."},{"commit":"eab2f4b0566b4c76db661cbfa99a56a6bf8d6541","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":33,"deletions":19,"files":["jc/cli.py"]},"message":"Move core magic() logic into seperate function for testability, minor tweaks.\n\nWe only care about the command when testing magic() - by moving that out, we can easily test the command. I modified the code to return a boolean signalling that the command is valid, and the command itself to maintain the original functionality.\n\nI also made some small tweaks (removed a list() call, fixed a possible bug with no arguments., moved magic_dict instantiation past the fast path checks to avoid making a dict if not needed.)"},{"commit":"aff86ae6c71abfe1cbdba5c574a5f3707292ec19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":29,"deletions":39,"files":["jc/cli.py"]},"message":"reimpliment magic() based on the dictionary approach suggested by philippeitis"},{"commit":"7ece9ddc1a37551cdaaac50f37a48e6d98b18bf4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"version bump ls"},{"commit":"7cd048e839a7cc8404fd5abc153a3d315c207819","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"1e22f610a33903e8525d35a18b1dcf760a93791e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/ls.py"]},"message":"fix for osx - doesn't print 'total xx' line if empty directory (issue #40)"},{"commit":"5249c972ae25e9b289a2667bf471aad5e58c70a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["changelog.txt"]},"message":"add to changelog"},{"commit":"fd45f856a050f6c56a7a6b50b97b3d8c4de28af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/history.py"]},"message":"import jc.utils instead of jc"},{"commit":"c8ab40cd33b14a3a1937ecf64bb23e282f5bb921","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"]},"message":"ignore .github folder"},{"commit":"b2c872925b37254dac74578c1803b4127f8411c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":20,"insertions":208,"deletions":220,"files":["tests/test_ls.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_passwd.py","tests/test_pip_list.py","tests/test_ps.py","tests/test_route.py","tests/test_shadow.py","tests/test_ss.py","tests/test_systemctl_lj.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py","tests/test_who.py","tests/test_xml.py","tests/test_yaml.py"]},"message":"add utf-8 encoding for testing on Windows"},{"commit":"f48e229202f8ab1ebfa502ca57bb31cf673c7a62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":192,"deletions":192,"files":["tests/test_arp.py","tests/test_blkid.py","tests/test_crontab.py","tests/test_crontab_u.py","tests/test_csv.py","tests/test_df.py","tests/test_dig.py","tests/test_du.py","tests/test_env.py","tests/test_free.py","tests/test_fstab.py","tests/test_group.py","tests/test_gshadow.py","tests/test_history.py","tests/test_hosts.py","tests/test_id.py","tests/test_ifconfig.py","tests/test_ini.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_last.py"]},"message":"utf-8 open for windows tests"},{"commit":"799fec92c39b1ff0696c6ebb182c4bef66b86e56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["tests/test_pip_show.py","tests/test_systemctl.py"]},"message":"utf-8 for windows support"},{"commit":"87a41c2fcaa395f108b5a5126ed77f7cc7fe5d6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["tests/test_lsblk.py","tests/test_stat.py"]},"message":"add utf-8 to open function"},{"commit":"7f85de0c46cda95d57b9677ba0ca3ea59690e502","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"add windows-latest"},{"commit":"13661b19934a74417713e98e3e1e4df6bb0f29ad","merge":"5f798d6 51d5c38","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #37 from philippeitis/continuous_integration\n\nEnable Continuous Integration with GitHub Actions."},{"commit":"51d5c3892d6ff1e2e6ac7c4f3e496e7d9ed4b6a7","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"Remove Windows tests, due to lack of support."},{"commit":"e4eab4641ac15220f2787c5d27b443ab8c718b86","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/blkid.py"]},"message":"Change line in blkid.py to trigger CI"},{"commit":"9b148e0ba37e18749d95608e1bac6c090ab83ee2","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["requirements.txt"]},"message":"Add requirements.txt"},{"commit":"de28932650d5027e2781011f1243b89f053b241d","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":7,"deletions":6,"files":["jc/parsers/arp.py"]},"message":"Consolidate dictionary into creation, trigger CI"},{"commit":"5f798d603e461d2de5adf74662ba4d4b121f28f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/history.py"]},"message":"version bump and ack to philippeitis"},{"commit":"a0757b2dd3fc0f3e26622941d93bd909dae0a1f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":5,"files":["jc/parsers/foo.py"]},"message":"optimize line parsing"},{"commit":"498d51b4e802cb40cac58aae1eff1f723bbbd896","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":31,"deletions":0,"files":[".github/workflows/pythonapp.yml"]},"message":"Enable Continuous Integration with GitHub Actions.\n\nThis automatically runs unit tests on various operating systems and Python versions when Python files are modified to ensure that functionality remains correct."},{"commit":"b06b6bae3f64f591c9075812dc1b632ef6d2da37","merge":"6aa2d5a 0652768","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #36 from philippeitis/patch-3\n\nSimplify process() in history.py, avoid list allocation in parse()"},{"commit":"b5eaff21372a58aefb66e5afc5e863db8355fee1","merge":"d75c406 c01bcd3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #35 from kellyjonbrazil/revert-34-patch-3\n\nRevert \"Simplify process() in history.py, avoid list allocation in parse()\""},{"commit":"c01bcd3734382a0c388d9f4041fc888171ca7675","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":25,"deletions":12,"files":["jc/parsers/history.py"]},"message":"Revert \"Simplify process() in history.py, avoid list allocation in parse()\""},{"commit":"d75c4068caaf4adbe9a39fa452ae867421053673","merge":"d96b3a6 0652768","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #34 from philippeitis/patch-3\n\nSimplify process() in history.py, avoid list allocation in parse()"},{"commit":"6aa2d5a3d26f9f00c3334928f6f0e501860433da","merge":"69576f6 a63408c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #33 from philippeitis/patch-2\n\nHandle case where only options are passed."},{"commit":"065276805f0f2dd23a6382f0120ca07e9eae116f","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":12,"deletions":25,"files":["jc/parsers/history.py"]},"message":"Simplify process() in history.py, avoid list allocation in parse()"},{"commit":"a63408c8cf3f99646be2b375f651d6cf417f7ae0","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/cli.py"]},"message":"Handle case where only options are passed."},{"commit":"69576f6bfae073196627a0a39b5ececb8666d25c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/cli.py"]},"message":"minor sytax fixes"},{"commit":"19845624e2996da4653efc2f312aceb514feaf5c","merge":"d96b3a6 22ff296","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #32 from philippeitis/patch-1\n\nSimplify main(), magic() methods."},{"commit":"22ff2964e9889587711e779ac24f8f8034212f5e","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":62,"deletions":75,"files":["jc/cli.py"]},"message":"Simplify main(), magic() methods."},{"commit":"d96b3a65a98bc135d21d4feafc0a43317b5a11fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"4989445ef4bb8919d9b3b95e2fcee77ca7692aec","merge":"53ee2c3 6770892","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #30 from kellyjonbrazil/dev\n\nDev v1.8.0"},{"commit":"6770892acd49aced225dbccf39290f33522c9001","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]},"message":"add release notes link"},{"commit":"d4eba8740fc325756f3db96ab37a5383540cbeff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"release date 3/3"},{"commit":"9f607605605e47990f97ccfd48fde19a14e036e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["tests/test_group.py","tests/test_gshadow.py"]},"message":"add group and gshadow tests"},{"commit":"0a8f8ac934f040141e6a4eec8cf7170e1ca73294","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"add group and gshadow parsers"},{"commit":"6ae24c82447bcff606e7027dd01b916293b49584","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":274,"deletions":0,"files":["tests/fixtures/centos-7.7/group.json","tests/fixtures/centos-7.7/group.out","tests/fixtures/centos-7.7/gshadow.json","tests/fixtures/centos-7.7/gshadow.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/group.json","tests/fixtures/osx-10.14.6/group.out","tests/fixtures/ubuntu-18.04/group.json","tests/fixtures/ubuntu-18.04/group.out","tests/fixtures/ubuntu-18.04/gshadow.json"]},"message":"add group and gshadow test fixtures"},{"commit":"d3679082a8c5cff76eb7de67c33fe716a1402182","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":64,"deletions":0,"files":["README.md"]},"message":"add group and gshadow parsers"},{"commit":"fb08b42dca135705a3759435335d95c898d47f60","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":21,"deletions":21,"files":["docs/parsers/group.md","jc/parsers/group.py"]},"message":"change 'group_list' to 'members'"},{"commit":"4aeaa9f42a88bf4e05c8780a35cc8c4d83c9b842","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":316,"deletions":0,"files":["docgen.sh","docs/parsers/gshadow.md","jc/cli.py","jc/parsers/gshadow.py","tests/fixtures/ubuntu-18.04/gshadow.out"]},"message":"add /etc/gshadow parser"},{"commit":"5f5693da048cb4739dc56500c672dc8fbccaaf32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["docs/parsers/csv.md"]},"message":"spelling fix"},{"commit":"5eb0f61727f92a84fb3620e13db072167ef552ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":333,"deletions":0,"files":["docgen.sh","docs/parsers/group.md","jc/cli.py","jc/parsers/group.py"]},"message":"add /etc/group file parser"},{"commit":"958e998991b1cc61dc1dc341b90cd53f4691cd43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/csv.py"]},"message":"formatting"},{"commit":"b78c1509f67fb76d17ac97193a2851d8d9e17f62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/csv.py"]},"message":"try/except dialect detection"},{"commit":"ce184d4d57faa3f1bca5bcaa02da7a5a5d995eb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":20,"insertions":24054,"deletions":0,"files":["tests/fixtures/generic/csv-biostats.csv","tests/fixtures/generic/csv-biostats.json","tests/fixtures/generic/csv-cities.csv","tests/fixtures/generic/csv-cities.json","tests/fixtures/generic/csv-deniro.csv","tests/fixtures/generic/csv-deniro.json","tests/fixtures/generic/csv-example.csv","tests/fixtures/generic/csv-example.json","tests/fixtures/generic/csv-flyrna.json","tests/fixtures/generic/csv-flyrna.tsv","tests/fixtures/generic/csv-flyrna2.json","tests/fixtures/generic/csv-flyrna2.tsv","tests/fixtures/generic/csv-homes-pipe.csv","tests/fixtures/generic/csv-homes-pipe.json","tests/fixtures/generic/csv-homes.csv","tests/fixtures/generic/csv-homes.json","tests/fixtures/generic/csv-insurance.csv","tests/fixtures/generic/csv-insurance.json","tests/fixtures/generic/oscar_age_male.csv","tests/test_csv.py"]},"message":"add csv parser tests"},{"commit":"b4c3714ced9ee5cc6a7ef0c59a43cf85e1cb9824","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["README.md"]},"message":"removed [OPTIONS] PARSER syntax. still works but prefer the PARSER [OPTIONS] syntax for better performance"},{"commit":"5b7dfa043864f1a3f34aa4ef5c6554a2dfe185f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"formatting"},{"commit":"391a3884765780497dc34e0e9938ff5032c81291","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":49,"deletions":0,"files":["README.md","changelog.txt"]},"message":"doc update"},{"commit":"d9c4e2ed4c0f908f4b63c2376b53ddfd32a0fae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":241,"deletions":0,"files":["docgen.sh","docs/parsers/csv.md","jc/cli.py","jc/parsers/csv.py"]},"message":"add csv file parser"},{"commit":"0c42db38b102987629e40cee2716b826161e6e94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/who.md","jc/parsers/who.py"]},"message":"doc update"},{"commit":"2f9be8bf33f8be5651d06da9d316f7894606df19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/cli.py"]},"message":"simplify usage"},{"commit":"e8c00155e861b9eedfdf37a22912271bec581d62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"add -b to warning message"},{"commit":"cc88fdd9ee3951d7ef2aa881cc12f0b7f96aef86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"update example"},{"commit":"d9de11ef1d846a9625dad0adb962b864404c90c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["README.md"]},"message":"add another who example"},{"commit":"0ceda97d0968b67b70cdbb68f7a62657e79c9935","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":88,"deletions":0,"files":["tests/test_who.py"]},"message":"who parser tests"},{"commit":"d0dec92ba84640ddc40da7c6faa6568b76757e04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":36,"deletions":0,"files":["tests/fixtures/centos-7.7/who-a.json","tests/fixtures/centos-7.7/who-a.out","tests/fixtures/centos-7.7/who.json","tests/fixtures/centos-7.7/who.out","tests/fixtures/osx-10.14.6/who-a.json","tests/fixtures/osx-10.14.6/who-a.out","tests/fixtures/osx-10.14.6/who.json","tests/fixtures/osx-10.14.6/who.out","tests/fixtures/ubuntu-18.04/who-a.json","tests/fixtures/ubuntu-18.04/who-a.out","tests/fixtures/ubuntu-18.04/who.json","tests/fixtures/ubuntu-18.04/who.out"]},"message":"add who test fixtures"},{"commit":"d420c008d8aaa0879fa5a3f236d81acb506376c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["jc/parsers/who.py"]},"message":"fix for pts lines with no user info"},{"commit":"f0b32db4333477e22cc40de62cf026a6a7aa2eb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","docs/parsers/who.md"]},"message":"who doc update"},{"commit":"bc838eda591473d32b11a885e60ef653925739d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/parsers/who.py"]},"message":"fix output for non-extended"},{"commit":"afe55b6af07b74816d33d9555ffaa1c1921dd27a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":46,"deletions":0,"files":["README.md"]},"message":"add who parser"},{"commit":"dd3a3ac302d7b35beef1181e74aed0faf96fd3e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":255,"deletions":9,"files":["changelog.txt","docgen.sh","docs/parsers/who.md","jc/parsers/who.py"]},"message":"doc update and process pid integers"},{"commit":"f9982a79474c1838f37fc0ff88437980b228d7a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":2,"files":["jc/parsers/who.py"]},"message":"fixes for from and comment fields"},{"commit":"07c1be9e9ad9f62cf76c23788152de8f3530ee16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":170,"deletions":0,"files":["jc/cli.py","jc/parsers/who.py"]},"message":"add who command parser"},{"commit":"f832b88755bfbd3878ec402e603180e6825279be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["tests/test_passwd.py","tests/test_shadow.py"]},"message":"add passwd and shadow tests"},{"commit":"0fac757efca41db062b2f65acc727963c5fb353c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"add passwd and shadow parsers"},{"commit":"fc15742065531152f3d5895042eeb806e33a192a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":215,"deletions":0,"files":["tests/fixtures/centos-7.7/passwd.json","tests/fixtures/centos-7.7/passwd.out","tests/fixtures/centos-7.7/shadow.json","tests/fixtures/centos-7.7/shadow.out","tests/fixtures/osx-10.14.6/passwd.json","tests/fixtures/osx-10.14.6/passwd.out","tests/fixtures/ubuntu-18.04/passwd.json","tests/fixtures/ubuntu-18.04/passwd.out","tests/fixtures/ubuntu-18.04/shadow.json","tests/fixtures/ubuntu-18.04/shadow.out"]},"message":"passwd and shadow test fixtures"},{"commit":"6f2466a1319eaa4256ae7a2a0f23b3ff37882d37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":73,"deletions":0,"files":["README.md"]},"message":"update readme with /etc/passwd and /etc/shadow file parsers"},{"commit":"4b90e22f0a9c6790bca62c8314945a7ffc6e267b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":137,"deletions":9,"files":["docs/parsers/shadow.md","jc/parsers/shadow.py"]},"message":"doc update"},{"commit":"c4935687853fb3b079ae42614793cdafe68e124e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/passwd.md","jc/parsers/passwd.py"]},"message":"doc fix"},{"commit":"1cdf004b7728901dc137e57b0c8994edfdd6d417","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":190,"deletions":0,"files":["docgen.sh","docs/parsers/shadow.md","jc/cli.py","jc/parsers/shadow.py"]},"message":"add /etc/shadow parser"},{"commit":"a4ea50426184d30cbe849a8f80bfd5c975075c9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":303,"deletions":0,"files":["docgen.sh","docs/parsers/passwd.md","jc/cli.py","jc/parsers/passwd.py"]},"message":"add /etc/passwd parser"},{"commit":"4c2c234c3bf68d1aac66bd4d1f22b9f97e99128d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":16,"insertions":673,"deletions":0,"files":["tests/fixtures/centos-7.7/last-w.json","tests/fixtures/centos-7.7/last-w.out","tests/fixtures/centos-7.7/last.json","tests/fixtures/centos-7.7/last.out","tests/fixtures/centos-7.7/lastb.json","tests/fixtures/centos-7.7/lastb.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/last.json","tests/fixtures/osx-10.14.6/last.out","tests/fixtures/ubuntu-18.04/last-w.json","tests/fixtures/ubuntu-18.04/last-w.out","tests/fixtures/ubuntu-18.04/last.json","tests/fixtures/ubuntu-18.04/last.out","tests/fixtures/ubuntu-18.04/lastb.json","tests/fixtures/ubuntu-18.04/lastb.out","tests/test_last.py"]},"message":"add last and lastb tests"},{"commit":"3d4c0f3e89dab6496ff74df350e3238d6625933c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":22,"insertions":285,"deletions":0,"files":["tests/fixtures/centos-7.7/blkid-ip-multi.json","tests/fixtures/centos-7.7/blkid-ip-multi.out","tests/fixtures/centos-7.7/blkid-ip-udev-multi.json","tests/fixtures/centos-7.7/blkid-ip-udev-multi.out","tests/fixtures/centos-7.7/blkid-ip-udev.json","tests/fixtures/centos-7.7/blkid-ip-udev.out","tests/fixtures/centos-7.7/blkid-sda2.json","tests/fixtures/centos-7.7/blkid-sda2.out","tests/fixtures/centos-7.7/blkid.json","tests/fixtures/centos-7.7/blkid.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/blkid-ip-multi.json","tests/fixtures/ubuntu-18.04/blkid-ip-multi.out",".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.json",".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.out","tests/fixtures/ubuntu-18.04/blkid-ip-udev.json","tests/fixtures/ubuntu-18.04/blkid-ip-udev.out","tests/fixtures/ubuntu-18.04/blkid-sda2.json","tests/fixtures/ubuntu-18.04/blkid-sda2.out","tests/fixtures/ubuntu-18.04/blkid.json","tests/fixtures/ubuntu-18.04/blkid.out","tests/test_blkid.py"]},"message":"add blkid tests"},{"commit":"52fad02903468c05d2422a340ad8dbcdf18ed475","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"doc update"},{"commit":"9dcabc057c40e345971a08474b5b886e6b60a8de","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/blkid.py"]},"message":"support multi device udev output"},{"commit":"db8c1079ddc25922ab6a20d0f71fb19af38f8092","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/blkid.py"]},"message":"use maxsplit=1 in case there are multiple '=' delimiters"},{"commit":"8f954673abdbbd4d9b9da3eacc61b335b4909f89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/blkid.py"]},"message":"use shlex split for values within quotations that have spaces"},{"commit":"79522d1c7dd4dec15b75b06dda002752f7d97e36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"doc fixes"},{"commit":"a18bf030794efef125c70a32fe82855e47649b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/parsers/last.py","jc/parsers/ls.py"]},"message":"use raw strings for regular expressions"},{"commit":"c02b6b5d827d26b43db0a3457124714aa2dbbc98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":81,"deletions":1,"files":["README.md","changelog.txt","setup.py"]},"message":"doc updates"},{"commit":"f99b4232848b0d868804acc4125836bfcf475bba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":134,"deletions":29,"files":["docs/parsers/blkid.md","jc/parsers/blkid.py"]},"message":"doc update"},{"commit":"d7d9d45d4fba89e74f7490c463eb26bf20a5d127","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/blkid.py"]},"message":"add missing comma"},{"commit":"90065ec0cdc8c5abc13bc0027f63658dacf3cfb2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":31,"deletions":26,"files":["jc/parsers/blkid.py"]},"message":"add more integers"},{"commit":"51157ebb867a48332c768bf3086614944aebdb62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/blkid.py"]},"message":"another devname fix"},{"commit":"96d95c79ca0938e326f55f858f8153df9cb49e44","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/blkid.py"]},"message":"devname fix"},{"commit":"e5da34c23306463e8707b15676db0ca53bf66757","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/blkid.py"]},"message":"check if devname key exists before renaming"},{"commit":"f09d657f7728242947db3dc63ff6779d08c37866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/blkid.py"]},"message":"rename devname to device"},{"commit":"0f4b0189f54dc0b3622cd407c5565e53ea111379","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":35,"deletions":3,"files":["jc/parsers/blkid.py"]},"message":"process integer values"},{"commit":"4666042abb3142e2cfb518db9ffe22d9e608e090","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":216,"deletions":0,"files":["docgen.sh","docs/parsers/blkid.md","jc/cli.py","jc/parsers/blkid.py"]},"message":"add blkid parser"},{"commit":"027d544c2bb778adc0ee9463832f19b10e099a0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"]},"message":"add last and lastb parser"},{"commit":"f1967d0138d27bde864c2400aa75baa8a39bbfde","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/last.py"]},"message":"system_boot fix"},{"commit":"c1d896027dd1ce021e048b3e77eab24ff59d08bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/last.py"]},"message":"fix system_boot tty"},{"commit":"5c2d2a66187d32d62b31b7c7f13e502fdb7f9635","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":190,"deletions":6,"files":["docgen.sh","docs/parsers/last.md","jc/parsers/last.py"]},"message":"process function and docs"},{"commit":"997b269b0b7e53a456e2a0bd997ead6c2ae843bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/last.py"]},"message":"btmp fix"},{"commit":"61257e7525c25827cb8057ed5c612e54ea9b9637","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":119,"deletions":1,"files":["jc/cli.py","jc/parsers/last.py"]},"message":"add last and lastb parser"},{"commit":"53ee2c36310cb84390ef96644aee6871769151c9","merge":"2ad3167 8bfa0bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #29 from kellyjonbrazil/dev\n\nDev v1.7.5"},{"commit":"8bfa0bddec9ff1c21972019467dcf5738ab3afd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to 1.7.5"},{"commit":"ad61e6bc81177a2add7d052bf1ddec5f1b3f2976","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":26,"insertions":598,"deletions":133,"files":["tests/fixtures/centos-7.7/ls-R-newlines.json","tests/fixtures/centos-7.7/ls-R-newlines.out","tests/fixtures/centos-7.7/ls-l-newlines.json","tests/fixtures/centos-7.7/ls-l-newlines.out","tests/fixtures/centos-7.7/ls-lR-newlines.json","tests/fixtures/centos-7.7/ls-lR-newlines.out","tests/fixtures/centos-7.7/ls-newlines.json","tests/fixtures/centos-7.7/ls-newlines.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/ls-R-newlines.json","tests/fixtures/osx-10.14.6/ls-R-newlines.out","tests/fixtures/osx-10.14.6/ls-l-newlines.json","tests/fixtures/osx-10.14.6/ls-l-newlines.out","tests/fixtures/osx-10.14.6/ls-lR-newlines.json","tests/fixtures/osx-10.14.6/ls-lR-newlines.out","tests/fixtures/osx-10.14.6/ls-newlines.json","tests/fixtures/osx-10.14.6/ls-newlines.out","tests/fixtures/ubuntu-18.04/ls-R-newlines.json","tests/fixtures/ubuntu-18.04/ls-R-newlines.out","tests/fixtures/ubuntu-18.04/ls-l-newlines.json","tests/fixtures/ubuntu-18.04/ls-l-newlines.out","tests/fixtures/ubuntu-18.04/ls-lR-newlines.json","tests/fixtures/ubuntu-18.04/ls-lR-newlines.out","tests/fixtures/ubuntu-18.04/ls-newlines.json","tests/fixtures/ubuntu-18.04/ls-newlines.out","tests/test_ls.py"]},"message":"add ls tests for filenames with newline characters"},{"commit":"873b5ba8acf599d083d6031b818d5fca83cbca9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":31,"files":["README.md"]},"message":"move examples to bottom"},{"commit":"6ae50054e2e8c7ca730013b43062eedc230c0ad4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"readme update"},{"commit":"22a35f41bf9c404d3532611f5929143d04b10010","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/ls.py"]},"message":"move variables to top"},{"commit":"961696c963215a9dab56113ff89f21a6e9739df6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/ls.py"]},"message":"add a warning if newlines are detected in naked ls"},{"commit":"c7b7f1a5dcf77a1f4c23ef6bbf5683fd1a055f72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"fix for files with newlines in naked ls"},{"commit":"b5a0d650b128d8af81bb14dd5d007349529cb66f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":151,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-newlines.out"]},"message":"ls output with newlines"},{"commit":"573b27946474276592ee7494689ce9a88f5a05f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"fixup for filenames that start with a newline character"},{"commit":"116e07f1614b4a45eb58ffcfe20b5efa71c473a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":7,"files":["jc/parsers/ls.py"]},"message":"fixes for multiple consecutive newlines and trailing newlines in filenames"},{"commit":"964868c8aff99edf37b0db41c7d16f8b84ac4704","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":21,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"add support for newlines in filenames (only with ls -l)"},{"commit":"c8dac32df8102c2b782e87d55bb95ca2d9490185","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"readme update"},{"commit":"72a0016bd833699c3819baa899f335f75b8c1943","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"use link to anchor for Parsers"},{"commit":"2ad316743460bb6620e7ede251e1dc2739b073fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update doc url"},{"commit":"ddabfaa05c63f886b17e5b4d37cd83fcfdb9b221","merge":"873771d f857523","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #25 from kellyjonbrazil/dev\n\nDev v1.7.4"},{"commit":"f857523ca756864211b6b18af5a8886e5db200bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"bump to version 1.7.4"},{"commit":"00d53858e820f00ba015bc25629100c8e5495221","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add note about aliases not being supported"},{"commit":"c008167e660929a91606bb96498cdc113e815f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"add time-style=full-iso option to doc"},{"commit":"102344a041e9e0aff8b6d9db1873ba1064f7e895","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/ls.py"]},"message":"formatting"},{"commit":"c865298ef3613fe6ce17f41c15209a69940af1ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"remove unnecessary enumerate in for loop"},{"commit":"6ac03faf939bcda8930a48a5e832b557813e2129","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"Revert \"add ubuntu and centos default ls aliases to magic_commands\"\n\nThis reverts commit 49c2701743706b6cbf0e52b2c7f275e301315189."},{"commit":"49c2701743706b6cbf0e52b2c7f275e301315189","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"add ubuntu and centos default ls aliases to magic_commands"},{"commit":"d1a271b08e64b42be8cec11377b0e18435a0caec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":35333,"deletions":1374,"files":["tests/fixtures/centos-7.7/ls-R.json","tests/fixtures/centos-7.7/ls-R.out","tests/fixtures/centos-7.7/ls-alR.json","tests/fixtures/centos-7.7/ls-alR.out","tests/fixtures/centos-7.7/ls-glob.json","tests/fixtures/centos-7.7/ls-glob.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/ls-R.json","tests/fixtures/osx-10.14.6/ls-R.out","tests/fixtures/osx-10.14.6/ls-alR.json","tests/fixtures/osx-10.14.6/ls-alR.out","tests/fixtures/osx-10.14.6/ls-glob.json","tests/fixtures/osx-10.14.6/ls-glob.out","tests/fixtures/ubuntu-18.04/ls-R.json","tests/fixtures/ubuntu-18.04/ls-R.out","tests/fixtures/ubuntu-18.04/ls-alR.json","tests/fixtures/ubuntu-18.04/ls-alR.out","tests/fixtures/ubuntu-18.04/ls-glob.json","tests/fixtures/ubuntu-18.04/ls-glob.out","tests/fixtures/ubuntu-18.04/ls-lR.out","tests/test_ls.py"]},"message":"add new ls tests for recursive and multiple directories with glob"},{"commit":"7388ad19b9d252d3e66659e4bc37171cef2a9748","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":6,"deletions":4,"files":["docs/parsers/ls.md","jc/cli.py","jc/parsers/ls.py","setup.py"]},"message":"bump to v1.8.0"},{"commit":"2e63cb5fadd032c7cb54a618e8b374ee853abcca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"version bump ls to 1.1"},{"commit":"e7f14d02b12c7dcba309f2d28a0f171769d1ba37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1438,"deletions":8,"files":["jc/parsers/ls.py","tests/fixtures/ubuntu-18.04/ls-R.out","tests/fixtures/ubuntu-18.04/ls-lR.out"]},"message":"update ls to allow multi directory (glob and -R). Adds 'parent' key if found"},{"commit":"873771d05ab0b77163c95d2c37e11edf38451832","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"d7de122e36e0698e00f321fbac8dc0b543cf9e8a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"prettify link"},{"commit":"4ef0434f536c6658ddc2b48a3db113df2fd26000","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["README.md"]},"message":"formatting update"},{"commit":"1aa2c9925996f2358b6272547db755ec3098a8a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":2,"files":["README.md","jc/parsers/history.py"]},"message":"removed history from magic syntax"},{"commit":"c2450b27b079b02ed3f4ece9e36547f01cd4b139","merge":"028e136 14d6d8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #22 from kellyjonbrazil/dev\n\nDev 1.7.3"},{"commit":"14d6d8b84f0ddeff984aff486e2e697a91ac6fb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump to 1.7.3"},{"commit":"f0e3846c038ec5507cd4a19980d83ee0fb969ef5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["README.md"]},"message":"formatting"},{"commit":"6ba64f1128373843b068226424a3af545ac9d22c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":2,"files":["README.md"]},"message":"usage update"},{"commit":"13bcdbc6c9a81bc5d52fe7a84e6a0a34908db8bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"doc update"},{"commit":"cfba62db20674d788601354211a10e2b1675a0c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":6,"files":["jc/cli.py"]},"message":"correct parser search in magic()"},{"commit":"18fb69e36e303a3f9530dcb80354b25bfdbb931d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"docs/parsers link"},{"commit":"474eb0f3fdeaa612e189d745b12a5ed9c6e0a31b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"doc updates"},{"commit":"7f47b533701e60449351d5da03cd5960e0dec9ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":90,"deletions":68,"files":["README.md"]},"message":"add alternate magic syntax"},{"commit":"dc2907d3ce101043b30bcce71abb4bb02897f43a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["docs/parsers/crontab.md"]},"message":"doc update"},{"commit":"1af85811e06c489051c456918284a746ce12c692","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/fstab.py"]},"message":"remove magic_command info"},{"commit":"1c1b19a478fe5c356a93cd165518429e77fcbdf0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab.py"]},"message":"doc update"},{"commit":"66942d64babf932faeb887eb4ec0cab32829321a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"2fb6ae08d76e7a5727b2fcdd5def3e3822e0cf72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"]},"message":"fix shlex usage"},{"commit":"bf8811e03e2a5b736f4c084f42400fcde400ff3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":3,"files":["jc/cli.py"]},"message":"add comments"},{"commit":"c8b502c571d3081ca3086e349a426ca252a3bb84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/cli.py"]},"message":"remove unnecessary join and add comments"},{"commit":"81c11a975c6ee66a1f83350df8b065a6b07dcc9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/cli.py"]},"message":"added docstrings"},{"commit":"0d370eb403ab4d9ed11e36776efc08bdd3505c1a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"doc update"},{"commit":"7492c3f1e312cdb0c58c2077db0d60d2cab1e58f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"515a8a84b79c9bf6f3001d3c52faa82a6709b8d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":33,"insertions":33,"deletions":33,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add \"command\" to description"},{"commit":"dd6680efb2b15bb8ed676016aae1c65193dfe147","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":29,"deletions":14,"files":["changelog.txt","jc/cli.py"]},"message":"allow condensed options (-prdq is equivalent to -p -r -d -q)"},{"commit":"a7158373cd225685f5c398fa36b8d5208e20521c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"comment update"},{"commit":"6d50ec71997cac9c898737de93b8a945f0351e53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":6,"files":["jc/cli.py"]},"message":"add try/except to fix bare jc command condition"},{"commit":"95dbf98e8e03486f74d986683f52699f4f9c9577","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":6,"files":["jc/cli.py"]},"message":"allow options in magic syntax"},{"commit":"d49323e4ebf2a8aebd1d8ea65ef0854ee8bcb29f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":33,"insertions":33,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add magic_commands list to info"},{"commit":"08c1e2aec9d6bb68653dc12ba2272535fb7cef09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"]},"message":"add magic syntax"},{"commit":"a2c137df2e6d3b133df5df0bb3f9b1ca69990557","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":66,"deletions":299,"files":["jc/cli.py","jc/cli.py.old"]},"message":"better magic command syntax logic using introspection information from parser modules"},{"commit":"fe27dcdb8f72b5a288f978b87be2eb930099543e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":319,"deletions":45,"files":["jc/cli.py","jc/cli.py.old"]},"message":"proof of concept for magic syntax (e.g. jc ls -al)"},{"commit":"028e136161ac15f588845f87907b4565a6ee7be2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":7,"deletions":2,"files":["MANIFEST.in","changelog.txt","jc/cli.py","setup.py"]},"message":"bump to 1.7.2: add test fixtures to package"},{"commit":"9a85a0a4d504447b32fb622bb17cebc5e47f687f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/crontab_u.md","jc/parsers/crontab_u.py"]},"message":"fix doc"},{"commit":"3a1cbc4d5063344c3e3a4bf510d651a36beedfb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":14,"files":["jc/cli.py"]},"message":"move info class to top"},{"commit":"77d334f7f386f79ec0571325500054fdab207f31","merge":"4de8f42 53cdf86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #19 from kellyjonbrazil/dev-1.7.1\n\nDev v1.7.1"},{"commit":"53cdf863acc72dbdb671773e30277f42e9eadc0e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"7b7e7fe0fe92edef1e559bd7ae8272530d7ed5c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"0c03132847a3d2bcbdb0b743e1472865916cced4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"fix error codes using sys.exit()"},{"commit":"3b81f7e2a1381958b33962d4531f3fa223c6a83e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"exit code on ctrl-c exit"},{"commit":"3d76437b435660e92633c604c4ad32ee0500a28b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ini.md","docs/parsers/xml.md","jc/parsers/ini.py","jc/parsers/xml.py"]},"message":"doc fix"},{"commit":"4bc54c78cea48682ed0432ea56460a26a0e52f83","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":7,"deletions":7,"files":["docs/parsers/du.md","docs/parsers/history.md","jc/parsers/du.py","jc/parsers/history.py"]},"message":"fix compatibility list"},{"commit":"3d303a96b9f6d582b1e99a632da539c3bee4df7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":16,"deletions":2,"files":["tests/fixtures/centos-7.7/crontab-u.json","tests/fixtures/centos-7.7/{crontab2.out => crontab-u.out}","tests/fixtures/centos-7.7/crontab.json","tests/fixtures/ubuntu-18.04/crontab-u.json","tests/test_crontab_u.py"]},"message":"crontab bug fix and tests"},{"commit":"33c99d031d18e52a8ca85dfc1a8cba0acebfc3bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/crontab.py"]},"message":"fix line clobbering bug"},{"commit":"caf7e9f69a22f3c9b3d4624fd2238d6e54d932ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/crontab_u.py"]},"message":"fix line clobbering bug and add user field to shortcuts"},{"commit":"9449f1f5d5e7bc075549549758af5cc3a6c4524f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":9,"deletions":3,"files":["changelog.txt","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/fixtures/centos-7.7/crontab2.out"]},"message":"crontab bugfix: inserting header row was clobbering the first data row"},{"commit":"6bad164b5e2a5b7c7ce82c69b6c091fc079ab2fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":9,"files":["jc/cli.py"]},"message":"simplify by removing unnecessary getattr calls"},{"commit":"bb5ba7ddb146821db2efe095b6de5ae5b72bb335","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/cli.py"]},"message":"add indent variable to helptext"},{"commit":"8b2e01d5404649e8f94c81ca3b5fa05fe8962220","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"doc update"},{"commit":"ff1159b1deb9b870382a6066166961902679b569","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"exit codes on error"},{"commit":"a2fd3202a0a3df336792f167c546ea3e53ea2332","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/pip_list.py","jc/parsers/pip_show.py"]},"message":"description formatting change"},{"commit":"7b53715b91787a8885d61ddc0079c7ee8f9348a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/crontab_u.py"]},"message":"change description"},{"commit":"e05fc0a5107b348af14ff4bea39d274939fab7dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":8,"files":["jc/cli.py"]},"message":"change padding of helptext"},{"commit":"43604c33f654b8c19e8cce387ebbf31bd598b73b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]},"message":"doc update"},{"commit":"eb67c484ff2a9530b434cd6a90c160f6936e1de7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"add crontab-u to parsers list"},{"commit":"a7b7bdd46781d07e6e70d74a41a3944855fde5fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":94,"deletions":92,"files":["jc/cli.py"]},"message":"load parser modules 'just in time' so we don't need to load all modules at startup"},{"commit":"ab06989a18faf5378f1e73c7016ea02e1218ff9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["README.md"]},"message":"description updates"},{"commit":"657b722f947b6a0aa7e52a786e4c84f177e9a5c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":8,"deletions":8,"files":["README.md","changelog.txt","docs/parsers/ini.md","jc/parsers/ini.py"]},"message":"ini to INI"},{"commit":"dd2aecad2787186b3962723086bb7e13eff4874f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"description update"},{"commit":"c82c5c5c648384eb5a54205ba8590624a3ab4375","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"a1761cd68f91e2668d8d7e2fa7774f6496408be6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":42,"deletions":0,"files":["tests/fixtures/centos-7.7/id.json","tests/fixtures/osx-10.14.6/id.json","tests/test_id.py"]},"message":"id tests"},{"commit":"d618a7f583629bb7a7fc0854e7349cab07e3e003","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":143,"deletions":9,"files":["README.md","docgen.sh","docs/parsers/id.md","jc/parsers/id.py"]},"message":"doc update"},{"commit":"831a42f66096f5efbbf0f6882970c328120f9c9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["README.md"]},"message":"id formatting"},{"commit":"3b36022e5a1056a28a83494b1ab8fab209399c2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":250,"deletions":1,"files":["README.md","jc/cli.py","jc/parsers/id.py","tests/fixtures/centos-7.7/id.out","tests/fixtures/osx-10.14.6/id.out"]},"message":"add id parser"},{"commit":"d01dfa25f10f82cd201ae7b4c9cc18313773f8d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["changelog.txt"]},"message":"changelog updates"},{"commit":"395a99037b4816eb800b289f90372a9b8d7d36cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":89,"deletions":13,"files":["README.md","docs/parsers/history.md","jc/parsers/history.py"]},"message":"crontab-u and history doc updates"},{"commit":"025986c51d2d4869b17de63a7dd96efa2988e3c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":13,"deletions":3,"files":["jc/parsers/history.py","tests/fixtures/centos-7.7/history.json","tests/fixtures/ubuntu-18.04/history.json"]},"message":"change history 'line' to integer"},{"commit":"c56b83093ff05f55ef4643c1731cff61d4b9e8ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":202,"deletions":2,"files":["docgen.sh","docs/parsers/crontab.md","docs/parsers/crontab_u.md"]},"message":"doc update"},{"commit":"7c712a4133abd843d4da926e4c8d548abd1d6fa3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":52,"deletions":50,"files":["jc/parsers/crontab_u.py"]},"message":"doc update"},{"commit":"9a0cfe6dfa4888f435d35bd2d35126d031a556d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/crontab.py"]},"message":"minor formatting"},{"commit":"a116cdbcec1b27192dd0f9f4707629353edb3caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":29,"deletions":13,"files":["tests/fixtures/ubuntu-18.04/crontab-u.json",".../ubuntu-18.04/{crontab.out => crontab-u.out}","tests/fixtures/ubuntu-18.04/crontab.json","tests/test_crontab.py","tests/test_crontab_u.py"]},"message":"tests for crontab-u"},{"commit":"f2d616c98e049cdac5d667e63723f92110419a1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":272,"deletions":0,"files":["changelog.txt","jc/cli.py","jc/parsers/crontab_u.py"]},"message":"add crontab with user parser"},{"commit":"42cbd1777dbacc614d75f67f3f9156f72be46532","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":80,"deletions":0,"files":["tests/test_xml.py","tests/test_yaml.py"]},"message":"add xml and yaml tests"},{"commit":"ebf375aac0473249cfd212068f6e6e33cc42449a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":40,"deletions":0,"files":["tests/test_ini.py"]},"message":"add ini tests"},{"commit":"1f9050267eeb870c4c0f50000fc32985c4d8535b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":586,"deletions":0,"files":["tests/fixtures/generic/ini-iptelserver.ini","tests/fixtures/generic/ini-iptelserver.json","tests/fixtures/generic/ini-test.ini","tests/fixtures/generic/ini-test.json","tests/fixtures/generic/xml-cd_catalog.json","tests/fixtures/generic/xml-cd_catalog.xml","tests/fixtures/generic/xml-foodmenu.json","tests/fixtures/generic/xml-foodmenu.xml","tests/fixtures/generic/yaml-istio-sc.json","tests/fixtures/generic/yaml-istio-sc.yaml","tests/fixtures/generic/yaml-istio-sidecar.json","tests/fixtures/generic/yaml-istio-sidecar.yaml"]},"message":"add ini, xml, and yaml test files"},{"commit":"d7f9707a1521719ce051140b1a0b4ced7c5114c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/ini.py","jc/parsers/yaml.py"]},"message":"minor formatting"},{"commit":"ab589ee3ed09b9d5e09d8c046f3a64cd2bd14c98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/cli.py"]},"message":"add __version__ variable"},{"commit":"c84ec0361fc4c877c698378b28ff9e8b502793b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":105,"deletions":3,"files":["README.md","docgen.sh","docs/parsers/xml.md","jc/parsers/xml.py"]},"message":"xml example update"},{"commit":"47d2f8968a8a9b68fc9fff45985f5e69f1a5cc40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","changelog.txt"]},"message":"doc update"},{"commit":"019c480bcce7fe3821b75906fc673ce7bb1ffadc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"update acknowledgments"},{"commit":"547c6d3d5956984d3c4fb5c2a1b76a595752b467","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":172,"deletions":2,"files":["README.md","changelog.txt","jc/cli.py","jc/parsers/xml.py","setup.py"]},"message":"add xml parser"},{"commit":"b5ebf8b76afcd0e0190994048fe1f5b53f654451","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add ruamel.yaml ack"},{"commit":"c690e328f23a69f592dfaaa949b74ba2190ad376","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":102,"deletions":14,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"]},"message":"add examples"},{"commit":"cbb92c1a9517234806f1c54398a69645b6f43669","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":94,"deletions":0,"files":["README.md"]},"message":"add ini and yaml"},{"commit":"beb41997c9b3797e73a678ec1bcddcfb83b5ef0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":91,"deletions":2,"files":["docgen.sh","docs/parsers/ini.md","jc/parsers/ini.py"]},"message":"doc update"},{"commit":"755a6faf1110f150fe2261b81439b7d17a9b424e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":8,"files":["jc/parsers/yaml.py"]},"message":"clean up multi-document support"},{"commit":"021f8350a31a49ecc539f02576303600b222b49d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["changelog.txt"]},"message":"update doc"},{"commit":"76583dcd2f5ef32e58ca87149154563b07e061cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":113,"deletions":0,"files":["jc/cli.py","jc/parsers/ini.py"]},"message":"add ini file parser"},{"commit":"bf033239a706c42be3d7508c58a51c542f8a69b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":82,"deletions":7,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"]},"message":"doc update"},{"commit":"eb37fccd37fd625f701a14b6cfcf30e9f0bbff4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/yaml.py"]},"message":"doc update"},{"commit":"d04ad453319fe45e302da87f970d2ac0806fae1a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":2,"files":["changelog.txt","docgen.sh","setup.py"]},"message":"setup for 1.7.1"},{"commit":"db157b8ca7f7fa935676bafeaafdfd9818a89e6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":94,"deletions":2,"files":["jc/cli.py","jc/parsers/yaml.py"]},"message":"add yaml file parser"},{"commit":"68f277bb2081eb2cba14ffe7f0ee1ee0a982335b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":33,"insertions":99,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add __version__"},{"commit":"4de8f42664379570392552796e34324abb39fdc2","merge":"6633d92 4f11855","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #17 from kellyjonbrazil/dev\n\nDev v1.6.1"},{"commit":"4f118559356edc1da866e1bec80830e7a75a0b26","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["changelog.txt"]},"message":"update version info"},{"commit":"2b9a5fcc32f85295faa55410efcaf142c42bd167","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["setup.py"]},"message":"update version"},{"commit":"224948d1f23e01b7cd968820529579792f862f0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":428,"deletions":0,"files":["tests/fixtures/centos-7.7/pip-list.json","tests/fixtures/centos-7.7/pip-list.out","tests/fixtures/centos-7.7/pip-show.json","tests/fixtures/centos-7.7/pip-show.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.11.6/pip-list.json","tests/fixtures/osx-10.11.6/pip-list.out","tests/fixtures/osx-10.11.6/pip-show.json","tests/fixtures/osx-10.11.6/pip-show.out","tests/fixtures/osx-10.14.6/pip-list.json","tests/fixtures/osx-10.14.6/pip-list.out","tests/fixtures/osx-10.14.6/pip-show.json","tests/fixtures/osx-10.14.6/pip-show.out","tests/fixtures/ubuntu-18.04/pip-list-legacy.json","tests/fixtures/ubuntu-18.04/pip-list-legacy.out","tests/fixtures/ubuntu-18.04/pip-list.json","tests/fixtures/ubuntu-18.04/pip-list.out","tests/fixtures/ubuntu-18.04/pip-show.json","tests/fixtures/ubuntu-18.04/pip-show.out","tests/test_pip_list.py","tests/test_pip_show.py"]},"message":"pip list and pip show tests"},{"commit":"36f2812d5a7a94c412e098233c026d99d5205b60","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":15,"deletions":7,"files":["jc/parsers/pip_list.py"]},"message":"add support for legacy output"},{"commit":"be06aa2b31c057c56229e75c7fa70052b83053ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":65,"insertions":70,"deletions":66,"files":["docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"update parse() Return info"},{"commit":"41f8e3aba268ca0cd09931a04368615425c1aec8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":65,"insertions":67,"deletions":65,"files":["docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"update Return info"},{"commit":"093c0df8978ace842af5258f9aff72c63c6f843d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["README.md"]},"message":"schema info"},{"commit":"37afc7dc8ae30342d01f3f72e73646fa60bb5294","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["README.md"]},"message":"updte todo and compatibility"},{"commit":"efbf3549606fc77f8c16587ff04a0c316dfe5c00","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":126,"deletions":12,"files":["README.md","docgen.sh","docs/parsers/pip_show.md","jc/parsers/pip_show.py"]},"message":"doc update for pip show"},{"commit":"5e39fe0d8044787389d8f206f3c863d4bdf1e2ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":64,"deletions":5,"files":["jc/parsers/pip_show.py"]},"message":"pip show parser working"},{"commit":"47328dc65969f149c8f027286774ff0847c18add","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"]},"message":"add pip-show parser"},{"commit":"addeef50ba54f536855544937a6c98135ae5cd51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":84,"deletions":0,"files":["jc/parsers/pip_show.py"]},"message":"initial pip show parser add"},{"commit":"ad338cc5b50a178091c47cbea9a1db135a7fb678","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":56,"deletions":42,"files":["docs/parsers/crontab.md","jc/parsers/crontab.py"]},"message":"schema doc update"},{"commit":"202bc8201e31fd453c682265347b4e2ac2d41718","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["README.md","docs/parsers/crontab.md","jc/parsers/crontab.py"]},"message":"doc update"},{"commit":"5ff99de405fbd8f79f9c2e301ac27184e0aba6fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add argument to parser info"},{"commit":"86ebe2cf9c6b336eacf217393c3c3c324ee29ec0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":205,"deletions":1,"files":["README.md","docgen.sh","docs/parsers/crontab.md","docs/parsers/pip_list.md","jc/cli.py","jc/parsers/pip_list.py"]},"message":"initial add of pip list parser"},{"commit":"facf0b399c608d33f6a454ee24fd49fc62471742","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/crontab.py"]},"message":"add osx to campatible"},{"commit":"33db7b0bcb0f24979cad6e173737d75c8ed301af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":57,"deletions":0,"files":["tests/fixtures/centos-7.7/crontab.json","tests/fixtures/ubuntu-18.04/crontab.json","tests/fixtures/ubuntu-18.04/crontab.out","tests/test_crontab.py"]},"message":"add crontab tests"},{"commit":"663d07bca1181024d9d08b940237c52197c91729","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":191,"deletions":0,"files":["docgen.sh","docs/parsers/crontab.md"]},"message":"add crontab"},{"commit":"ba04e4997fcb28adbee446f633c121f1585b9f2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":113,"deletions":4,"files":["jc/parsers/crontab.py"]},"message":"update docs"},{"commit":"c4fee1b658c91afa2abdd746af6c1b4697c44b35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":72,"deletions":1,"files":["README.md"]},"message":"add crontab parser"},{"commit":"99b92a15bbebc5568f4455f388f945613c4a2759","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":37,"deletions":14,"files":["jc/parsers/crontab.py","tests/fixtures/centos-7.7/crontab.out"]},"message":"support shortcut schedules"},{"commit":"b076ab5b57a6a59db096485e5ff4eb9f91bae8be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":177,"deletions":0,"files":["jc/cli.py","jc/parsers/crontab.py","tests/fixtures/centos-7.7/crontab.out"]},"message":"initial crontab parser"},{"commit":"687759f75d0e80e81746a84f051e55cfdc870447","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":31,"deletions":31,"files":["README.md"]},"message":"alphabetize du entry"},{"commit":"9eaac7f3af0e0851c2d091d94c9920faa8a0fdfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":32,"deletions":0,"files":["README.md"]},"message":"add du"},{"commit":"4c24e00cfc0748d98e220d08820b88fc156148db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":21738,"deletions":9,"files":["tests/fixtures/osx-10.11.6/du.json","tests/fixtures/osx-10.11.6/du.out","tests/fixtures/ubuntu-18.04/du.json","tests/fixtures/ubuntu-18.04/du.out","tests/test_du.py"]},"message":"add osx-11 and ubuntu tests"},{"commit":"beb17011b03e720078b0752e79a6a0f6123d1d3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":131,"deletions":2,"files":["changelog.txt","docgen.sh","docs/parsers/du.md","docs/parsers/uname.md","tests/fixtures/osx-10.14.6/du.json","tests/test_du.py"]},"message":"du tests and docs"},{"commit":"e882bf55bcd1d3526423ed1ccc61fb4819395cce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":8755,"deletions":0,"files":["changelog.txt","jc/cli.py","jc/parsers/du.py","tests/fixtures/centos-7.7/du.json","tests/fixtures/centos-7.7/du.out","tests/fixtures/osx-10.14.6/du.out","tests/test_du.py"]},"message":"initial add du parser"},{"commit":"3a3016adb6d5b9e35f8a39908bfcdc65997cc5c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add parser_count to about"},{"commit":"1e8b68153ade8a1e3d2b4db36e0c402bbc887079","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":27,"deletions":1,"files":["tests/fixtures/osx-10.11.6/uname-a.json","tests/fixtures/osx-10.14.6/uname-a.json","tests/fixtures/osx-10.14.6/uname-a.out","tests/test_uname.py"]},"message":"add osx uname tests"},{"commit":"9335cf65fbb87e3a0a7da0c4e9bcd251cb829de2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"add uname osx support"},{"commit":"83f35256aee71f2619ddf880e2b8f2d6c63280bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":30,"deletions":19,"files":["jc/parsers/uname.py"]},"message":"add OSX support"},{"commit":"428333394817e4461a4eb095f4d6d128305a5f98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"version bump"},{"commit":"b8f902796b7fb23a41355b23f7ce235bd18edc58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["changelog.txt"]},"message":"shorten changelog"},{"commit":"8f99ab295cd15718b98781707def97539ad41920","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"info update"},{"commit":"882310e268e2022f0cd6da75f80f5356529cd05c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add name to about parser info"},{"commit":"56bce9521409d1850f75a3ae2be1363e765dd9dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":10,"files":["jc/cli.py"]},"message":"about code cleanup"},{"commit":"c13ecbec2952c5d6765397f645e90653a4fd9d05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":28,"insertions":2,"deletions":28,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"clean up parser info"},{"commit":"0ffaaa6e73649d1f657af569ac0b912f166e8493","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":9,"files":["jc/cli.py"]},"message":"clean up about code"},{"commit":"75eff3adea097157c005b2201e353a741241ce8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/utils.py"]},"message":"remove whitespace"},{"commit":"bf5f80476cff642ae672187ea59d40bdb602101e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["jc/cli.py"]},"message":"use real parser name in error message"},{"commit":"9aaf0fbb2f838c0af1e7f18fdb19104f9f5d3d39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":29,"insertions":146,"deletions":1,"files":["changelog.txt","docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md"]},"message":"doc updates"},{"commit":"8f01ef79532743573632d716ceea41d5ea752c88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add -a option info"},{"commit":"da1d087452da02631296b1b3dc9ee10d4b7f764b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add parser version info"},{"commit":"e16bc7e882a27a1d5a4bd7cf9972208e6997f96f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":29,"insertions":82,"deletions":17,"files":["jc/cli.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add about information to parsers"},{"commit":"fe9bdd4811216257c05b16d6d61897929669d434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":31,"insertions":384,"deletions":219,"files":["changelog.txt","jc/cli.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add info class"},{"commit":"17b6f3f6d6c398a52166849088a793d0e3b328b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":26,"deletions":0,"files":["tests/fixtures/osx-10.11.6/uptime.json","tests/fixtures/osx-10.14.6/uptime.json","tests/test_uptime.py"]},"message":"add osx tests"},{"commit":"90a6baf0ee3b8b27476badada4e590e22144f810","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":52,"deletions":0,"files":["tests/fixtures/osx-10.11.6/ps-axu.json","tests/fixtures/osx-10.11.6/ps-ef.json","tests/fixtures/osx-10.11.6/w.json","tests/fixtures/osx-10.14.6/w.json","tests/test_ps.py","tests/test_w.py"]},"message":"add osx tests"},{"commit":"f0e73d0e72d540292f41fff51652932c4e8b0315","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":444,"deletions":0,"files":["tests/fixtures/osx-10.11.6/ps-axu.out","tests/fixtures/osx-10.11.6/ps-ef.out","tests/fixtures/osx-10.11.6/uname-a.out","tests/fixtures/osx-10.11.6/uptime.out","tests/fixtures/osx-10.11.6/w.out","tests/fixtures/osx-10.14.6/uname-a.out","tests/fixtures/osx-10.14.6/uptime.out","tests/fixtures/osx-10.14.6/w.out"]},"message":"add osx tests"},{"commit":"a762882f1ccea6789ce7813b313f3242175b5bd6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":88,"files":["tests/fixtures/osx-10.14.6/ps-axu.json","tests/fixtures/osx-10.14.6/ps-axu.out","tests/fixtures/osx-10.14.6/ps-ef.json","tests/fixtures/osx-10.14.6/ps-ef.out"]},"message":"fixture updates"},{"commit":"4c1bc5923658bf463805ea33ec8d170a817909ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":4,"deletions":3,"files":["docs/parsers/mount.md","docs/parsers/ps.md","docs/parsers/stat.md"]},"message":"doc updates"},{"commit":"f2962083f80503f82c3eddf470674c776e616b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":93,"deletions":17,"files":["changelog.txt","jc/parsers/mount.py","tests/fixtures/osx-10.14.6/mount.json","tests/fixtures/osx-10.14.6/mount.out","tests/fixtures/osx-10.14.6/mount2.json","tests/fixtures/osx-10.14.6/mount2.out","tests/test_mount.py"]},"message":"add osx support for mount parser"},{"commit":"a0b22a5bcfa0777895243088b2c0f3bb5b758775","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"help text formatting"},{"commit":"dcf393354cd57683aaeecbed7b884d19b0fe94d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"]},"message":"doc fix"},{"commit":"5f771656e3fdd703d449b2817faa4faeff1cd879","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/route.py"]},"message":"use universal parser"},{"commit":"f376aab79328a211a127f4f818e7007232f1fae3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/universal.py"]},"message":"doc update"},{"commit":"3c96464217a740571e16c74ad41c1d92f7585547","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":886,"deletions":13,"files":["jc/parsers/ps.py","tests/fixtures/osx-10.14.6/ps-axu.json","tests/fixtures/osx-10.14.6/ps-axu.out","tests/fixtures/osx-10.14.6/ps-ef.json","tests/fixtures/osx-10.14.6/ps-ef.out","tests/test_ps.py"]},"message":"osx fixes and tests"},{"commit":"c9892833a16bb63f78537717be65670eb65a87b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/mount.py"]},"message":"formatting change"},{"commit":"127c98affc7b122f0ced13852850214b9e07677e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"8687a772f53ecaf1a20464429060b94bbf660fe7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["jc/parsers/lsof.py"]},"message":"use universal parser"},{"commit":"b1162b14d42643fd53dbbe3f89ba042f030d9254","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":6,"files":["jc/parsers/lsmod.py"]},"message":"use universal parser"},{"commit":"8a8ee3570733c0c06b8cf53eb005e53ac2f9170f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":60,"files":["jc/parsers/lsblk.py"]},"message":"use universal parser"},{"commit":"5e109a3665cf0c286ac9dcbe2a452348a14b90ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/fixtures/create_fixtures.sh"]},"message":"add du"},{"commit":"11db478430515ef3e1020482792f23d1c40ca32b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"update changelog"},{"commit":"a85377014d9f93fcb9840715129b0e09d48d8584","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":11,"files":["jc/parsers/free.py"]},"message":"use universal parser"},{"commit":"3aea86234d33160f5b3139cbfc2f4f032f655f3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":70,"deletions":61,"files":["tests/fixtures/osx-10.11.6/ls-al.json","tests/fixtures/osx-10.11.6/ls-al.out","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.11.6/ls-alh.out","tests/fixtures/osx-10.11.6/ls.json","tests/fixtures/osx-10.11.6/ls.out"]},"message":"fix osx-10.11.6 tests"},{"commit":"916ec6ed6b858a8a496e4026b9bab5505abca2ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":193,"deletions":61,"files":["tests/fixtures/osx-10.11.6/ls-al.json","tests/fixtures/osx-10.11.6/ls-al.out","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.11.6/ls-alh.out","tests/fixtures/osx-10.11.6/ls.json","tests/fixtures/osx-10.11.6/ls.out","tests/fixtures/osx-10.14.6/ls-al.json","tests/fixtures/osx-10.14.6/ls-al.out","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.out","tests/fixtures/osx-10.14.6/ls.json","tests/fixtures/osx-10.14.6/ls.out","tests/test_ls.py"]},"message":"fix osx ls tests"},{"commit":"9dca6ba5393d8840ad7fc9509273715a71955bd1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":55,"insertions":120,"deletions":6,"files":["docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"doc formatting change"},{"commit":"0ebb89f561e1ced2e7f61ae19290e176c8a98bf2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["docs/parsers/arp.md"]},"message":"doc update"},{"commit":"e237867e242211ba37206911ebf1b35c97b417fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/arp.py"]},"message":"doc formatting"},{"commit":"78fa44fd9ac9790313de6f461eb46d9b8d6159d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":24,"insertions":75,"deletions":3,"files":["docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add compatibility to docs"},{"commit":"d615fa3b933ccd284bd8ee92baf5dfa6264507c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":30,"insertions":91,"deletions":1,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py"]},"message":"add compatibility to docs"},{"commit":"ce134dc332dd9175e0d1823a4959bed427a3ddce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":115,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-al.json","tests/fixtures/osx-10.14.6/ls-al.out","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.out","tests/fixtures/osx-10.14.6/ls.json","tests/fixtures/osx-10.14.6/ls.out","tests/test_ls.py"]},"message":"Add OSX tests for ls"},{"commit":"a56e4dc752a01635fbd9fc31e21d390bbd629084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":28,"deletions":3,"files":["changelog.txt","jc/parsers/arp.py","jc/parsers/universal.py"]},"message":"use universal simple table parser"},{"commit":"d221b4aa29e80dda2b591059f4d64c416bff0a17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"d2cba6ad2f1f1cd35aa174239584a0291abb8e37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py"]},"message":"add compatibility info"},{"commit":"84b3c30b525ddf1f74eb7fd833050a0ec69621dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":254,"deletions":2,"files":["tests/fixtures/osx-10.11.6/df-h.json","tests/fixtures/osx-10.11.6/df-h.out","tests/fixtures/osx-10.11.6/df.json","tests/fixtures/osx-10.11.6/df.out","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-aaaa.out","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig-x.out","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.11.6/dig.out","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/osx-10.14.6/df-h.out","tests/fixtures/osx-10.14.6/df.json","tests/fixtures/osx-10.14.6/df.out","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-aaaa.out","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig-x.out","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/osx-10.14.6/dig.out","tests/test_df.py"]},"message":"add osx tests"},{"commit":"68eeec19a812b735627763bb7d7e2a58b72f7504","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":30,"deletions":25,"files":["README.md","docs/parsers/df.md","jc/parsers/df.py"]},"message":"doc update"},{"commit":"c6d1528a2ed302ea82828b733a98db415be83708","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":19,"deletions":8,"files":["jc/parsers/df.py","jc/parsers/universal.py","tests/fixtures/centos-7.7/df.json","tests/fixtures/ubuntu-18.04/df.json"]},"message":"use _ instead of -"},{"commit":"50a6b256b8a0936299f562c208ede6187feeb9a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":83,"deletions":0,"files":["jc/parsers/universal.py"]},"message":"new universal parsers to limit code duplication"},{"commit":"bbba1fe477014d0b7f370ce46ed821121be81a8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":38,"deletions":19,"files":["jc/parsers/df.py"]},"message":"update df to use universal sparse table parser for osx compatibility"},{"commit":"46b827da6b438be73fab168c3f05298483b141e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":75,"deletions":4,"files":["changelog.txt","jc/parsers/arp.py","tests/fixtures/osx-10.11.6/arp-a.json","tests/fixtures/osx-10.11.6/arp-a.out","tests/fixtures/osx-10.14.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a.out","tests/test_arp.py"]},"message":"add osx compatibility"},{"commit":"5e8c28a30a283b6ef525e9e78d3ef2a0e1526927","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"]},"message":"comment fix"},{"commit":"e5d39031645ac897e0c0297f514ee62efe02f5f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":38,"deletions":17,"files":["docs/parsers/ifconfig.md"]},"message":"update ifconfig doc"},{"commit":"23975c9c9e1dd9d3e9fd7c05d231a86d646be048","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":132,"deletions":45,"files":["README.md","changelog.txt","jc/parsers/ifconfig.py","tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig2.json","tests/fixtures/osx-10.14.6/ifconfig.json","tests/fixtures/osx-10.14.6/ifconfig2.json","tests/fixtures/ubuntu-18.04/ifconfig.json","tests/test_ifconfig.py"]},"message":"fixup osx subnet mask and convert state to an array"},{"commit":"1e0dab8355e6fcb0ecde85270d4daac6ad93875b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":272,"deletions":2,"files":["tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.out","tests/fixtures/osx-10.11.6/ifconfig2.json","tests/fixtures/osx-10.11.6/ifconfig2.out","tests/fixtures/osx-10.14.6/ifconfig.json","tests/fixtures/osx-10.14.6/ifconfig.out","tests/fixtures/osx-10.14.6/ifconfig2.json","tests/fixtures/osx-10.14.6/ifconfig2.out","tests/fixtures/ubuntu-18.04/ifconfig.json"]},"message":"ifconfig fixture updates"},{"commit":"5f4c10ffd5a9cbe4e5e3d2b9adc34f36492eaf46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["README.md","changelog.txt"]},"message":"doc update"},{"commit":"6f3d2b4b566b963fbf38572c587e8bd4e18881dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"require ifconfig-parser v0.0.5 for mac and bytes support"},{"commit":"fea8ace8446b64abe9e61a028951bc4e6df9f9c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":6,"files":["README.md","jc/parsers/ifconfig.py"]},"message":"add OSX compatibility"},{"commit":"6633d9262c936217d8e90e64505c66b006cdab56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["_config.yml"]},"message":"Set theme jekyll-theme-cayman"},{"commit":"7d54137140e6d0515bc23c131a097af5c70c3379","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"link update"},{"commit":"2fcda6f2480ae6bd5428a0147c19f9af527391b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add motivation to readme"},{"commit":"9c1b8bacf9a59a86feb2a91eb44919e800491d1e","merge":"d192745 4867655","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #16 from kellyjonbrazil/dev\n\nDev v1.5.1"},{"commit":"4867655eb297b1da7a55e0d3a24c7ed7c8af55c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":172,"deletions":0,"files":[".../centos-7.7/iptables-filter-line-numbers.json",".../centos-7.7/iptables-filter-line-numbers.out","tests/fixtures/create_fixtures.sh",".../ubuntu-18.04/iptables-filter-line-numbers.json",".../ubuntu-18.04/iptables-filter-line-numbers.out","tests/test_iptables.py"]},"message":"add line-numbers tests"},{"commit":"47410d1a95406b0960aac705e7cfe925fea3172c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["changelog.txt","setup.py"]},"message":"version bump"},{"commit":"5fa49f5e672fc6f8dc18fb4b1761c98b81362649","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"36c53827fab6ac38c0010250ec387db40fdeecfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":19,"insertions":1316,"deletions":308,"files":["tests/fixtures/centos-7.7/systemctl-ls.json","tests/fixtures/centos-7.7/systemctl-ls.out","tests/fixtures/centos-7.7/systemctl-luf.json","tests/fixtures/centos-7.7/systemctl-luf.out","tests/fixtures/centos-7.7/systemctl.json","tests/fixtures/centos-7.7/systemctl.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/systemctl-lj.json","tests/fixtures/ubuntu-18.04/systemctl-lj.out","tests/fixtures/ubuntu-18.04/systemctl-ls.json","tests/fixtures/ubuntu-18.04/systemctl-ls.out","tests/fixtures/ubuntu-18.04/systemctl-luf.json","tests/fixtures/ubuntu-18.04/systemctl-luf.out","tests/fixtures/ubuntu-18.04/systemctl.json","tests/fixtures/ubuntu-18.04/systemctl.out","tests/test_systemctl.py","tests/test_systemctl_lj.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py"]},"message":"add systemctl tests"},{"commit":"51631aef5b1b6fdeff4ab543510a9f9e15a0c2c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":358,"deletions":0,"files":["tests/fixtures/centos-7.7/systemctl.json","tests/fixtures/centos-7.7/systemctl.out","tests/fixtures/ubuntu-18.04/systemctl.json","tests/fixtures/ubuntu-18.04/systemctl.out","tests/test_systemctl.py"]},"message":"add systemctl tests"},{"commit":"a0298ac8a39093620b6859c909a78d11ab4a8e56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":55,"deletions":0,"files":["tests/fixtures/centos-7.7/fstab.json","tests/fixtures/centos-7.7/fstab.out","tests/fixtures/ubuntu-18.04/fstab.json","tests/fixtures/ubuntu-18.04/fstab.out","tests/test_fstab.py"]},"message":"add fstab tests"},{"commit":"98c0188821ebaa71c5661f2e095cf464bec695f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/systemctl_ls.md","jc/parsers/systemctl_ls.py"]},"message":"formatting fix"},{"commit":"ab1dabe3e42997825707006b63cc0c03d28470d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py"]},"message":"doc update"},{"commit":"94bdb11fdf0e16d89769046d317643334ef1acdd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"]},"message":"remove systemctl from TODO"},{"commit":"b6727d68bab66164a3834b240ae868062aad9371","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":68,"deletions":0,"files":["README.md"]},"message":"add systemctl parsers"},{"commit":"89bad7fc2b4023b10b6eeb7ff1f8f18b71731cb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":1,"deletions":191,"files":["changelog.txt","docgen.sh","docs/parsers/systemctl_lm.md","jc/cli.py","jc/parsers/systemctl_lm.py"]},"message":"remove systemctl list-machines parser"},{"commit":"c0b8b810a2616e77973c1223f9c39329112337ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":306,"deletions":0,"files":["docgen.sh","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_lm.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md"]},"message":"add systemctl list parsers"},{"commit":"31eb65acd18b6d9163de900dbe48807a41a23785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_lm.py"]},"message":"doc fix"},{"commit":"513bbeb4649c011476930e1d1bf739ff06c2d66f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/systemctl_lj.py"]},"message":"add break on footer condition"},{"commit":"3a52fb725a0e56b52a0ea430266400b268360737","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":55,"deletions":29,"files":["jc/cli.py","jc/parsers/systemctl_lj.py"]},"message":"add systemctl list-jobs parser"},{"commit":"5affd444999de88b9bff7b49d790913540f97cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":342,"deletions":24,"files":["jc/cli.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_lm.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py"]},"message":"add systemctl_lj, lm, ls, and luf"},{"commit":"5dbc6e806c5d05bfa1f7e2156ed2573341eb23c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":142,"deletions":29,"files":["jc/cli.py","jc/parsers/systemctl_luf.py"]},"message":"add systemctl_luf parser"},{"commit":"59ae31f3f342c9337037aac4630310c9b9eb8287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":219,"deletions":0,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/systemctl.md","jc/cli.py","jc/parsers/systemctl.py"]},"message":"add systemctl parser"},{"commit":"230e921c2e8d931ea8a6abdf81215dbfc968b41c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"]},"message":"remove fstab from TODO"},{"commit":"a7c3d88b08ab90b719035cb15d78afe708235742","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":136,"deletions":0,"files":["docgen.sh","docs/parsers/fstab.md","jc/parsers/fstab.py"]},"message":"update example and docs"},{"commit":"9b453bcb84dd9f2f566955eda1ab35c863b3e8a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":13,"files":["jc/parsers/fstab.py"]},"message":"remove commented code block"},{"commit":"ce43c782f601fc12267fa22279e8e0142ecc3a7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"fstab update"},{"commit":"cb16faaf4d1700379d53053fe06824fd03404f87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"helptext update"},{"commit":"3f1d3ff6d85422536e0adfb6433fd3ec0399ebe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":73,"deletions":6,"files":["README.md","jc/parsers/fstab.py"]},"message":"add examples"},{"commit":"6f67eecd5ed46f8a692ff5dd607a2395a5c838ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":108,"deletions":0,"files":["jc/cli.py","jc/parsers/fstab.py"]},"message":"add fstab parser"},{"commit":"e75c819190634f0a9048942b39eda691831829ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"601e68d104dd43940acadaa574dfd9b5117b0476","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/hosts.md","jc/parsers/hosts.py"]},"message":"doc update"},{"commit":"8285ecfd1e7810102cdbc399398a16f999c841ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["tests/fixtures/centos-7.7/hosts.out","tests/fixtures/ubuntu-18.04/hosts.out"]},"message":"enhance test file with comments"},{"commit":"8726de902e527b95a12afd79a53d533cc176703d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"add hosts parser"},{"commit":"4133585274b0e7faa0255a911468248eb390d673","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":53,"deletions":0,"files":["tests/fixtures/centos-7.7/hosts.json","tests/fixtures/centos-7.7/hosts.out","tests/fixtures/ubuntu-18.04/hosts.json","tests/fixtures/ubuntu-18.04/hosts.out","tests/test_hosts.py"]},"message":"add hosts tests"},{"commit":"ad913b141721655a72a7b2a6ad60037e5acd5f9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":148,"deletions":2,"files":["README.md","docgen.sh","docs/parsers/hosts.md","jc/parsers/hosts.py"]},"message":"add hosts docs"},{"commit":"7113e5a844fc0304f62f4afe65b5cbc816f75372","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":0,"files":["jc/parsers/hosts.py"]},"message":"filter out comments at the end of the line"},{"commit":"a3a8369dc0e7227072f595cef1e57d471eff4d2f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":51,"deletions":9,"files":["jc/parsers/hosts.py"]},"message":"add docs"},{"commit":"64016b8ef049d5d4f02b4371f5cc9632c19bcaa2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["jc/cli.py","jc/parsers/hosts.py"]},"message":"add hosts parser"},{"commit":"1cb49d60c84054b0446f299f6b4bab7d102101c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["README.md"]},"message":"remove sar and sadf"},{"commit":"c858adfd12144569d0b990a217c5bcd75bd23828","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"]},"message":"remove stat from todo"},{"commit":"08d68327c777dd740d93a1b5fff8cf62f58904c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":8080,"deletions":0,"files":["tests/fixtures/centos-7.7/stat.json","tests/fixtures/centos-7.7/stat.out","tests/fixtures/ubuntu-18.04/stat.json","tests/fixtures/ubuntu-18.04/stat.out","tests/test_stat.py"]},"message":"add stat tests"},{"commit":"0d7c6c5664911af7a41149d51dd6ae05b39d7648","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/parsers/stat.md","jc/parsers/stat.py"]},"message":"doc fix and add continue lines"},{"commit":"8bfa41dbf485cb06c928bc00a68727d2ceac21fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":22,"deletions":14,"files":["README.md","docs/parsers/stat.md","jc/parsers/stat.py"]},"message":"change values to null if -"},{"commit":"7e2fa48ed4f3fd452082ce06e7306efd38b2d508","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"update changelog"},{"commit":"340635cad5224f2c715bf961956f4b9b6119d80b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":408,"deletions":111,"files":["docgen.sh","docs/parsers/ss.md","docs/parsers/stat.md"]},"message":"fix stats doc"},{"commit":"8f77d1de098f035767d73a6965a695b95b75e161","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":111,"deletions":253,"files":["docgen.sh","docs/parsers/ss.md"]},"message":"add stat docs"},{"commit":"7dcf1b25ffb801375f0bf4263f34713ded904de9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":0,"files":["jc/parsers/stat.py"]},"message":"add link_to field"},{"commit":"9b735381063a1167a6a74864a43b81aefd98009f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"]},"message":"set compatibility to linux only"},{"commit":"3bf8c8c6dbdf7e03e26b4581e35c3274084c07ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":27,"deletions":27,"files":["jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"pep8 fixes"},{"commit":"04a1ff2ca7873d55cdbc831e521f3d4892074d98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":28,"deletions":28,"files":["jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py"]},"message":"pep8 fixes"},{"commit":"64647d230ac936cb43864481ae0f45d13707d7b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":21,"deletions":21,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py"]},"message":"pep8 cleanup"},{"commit":"c2a67e1b70f33044aecabd8b46018117cb38cb9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":213,"deletions":16,"files":["README.md","jc/parsers/stat.py"]},"message":"add stat parser"},{"commit":"edb9a7c76e1fedaf37b6a226ad4e1cfc08a9a5ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":94,"deletions":0,"files":["jc/cli.py","jc/parsers/stat.py"]},"message":"add stat parser"},{"commit":"a407f5b67833cc5f8dda9fe8265cd34e62f28d14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"minor update"},{"commit":"e5b4987acb70e854d9996350235c5535b4a46b69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"doc update"},{"commit":"ba8cc18eebe779742cff0ba4c8bebe376e787c8c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":405,"deletions":0,"files":["tests/fixtures/centos-7.7/ss-sudo-a.json","tests/fixtures/centos-7.7/ss-sudo-a.out","tests/fixtures/ubuntu-18.04/ss-sudo-a.json","tests/fixtures/ubuntu-18.04/ss-sudo-a.out","tests/test_ss.py"]},"message":"add ss tests"},{"commit":"d2c7316e00b9aaf19231c05351821041458baf98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"update command options info"},{"commit":"609aa14d243206e81ed31f8438c3f42e8263e140","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/ss.md","jc/parsers/ss.py"]},"message":"spelling fix"},{"commit":"ef1ad4c700fcb740b5fbe1e12205b9a30ae427ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["docs/parsers/ss.md","jc/parsers/ss.py"]},"message":"doc update"},{"commit":"a0e2732152dc3005914b9a3e4f03e937a113c67f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":64,"deletions":12,"files":["README.md"]},"message":"add ss example"},{"commit":"9b5d3e3be1ac07813e716f8426fe89cced478221","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":135,"deletions":25,"files":["docs/parsers/ss.md"]},"message":"update doc"},{"commit":"2663ef31fbc1b69b89b8032640a25065cc953866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":159,"deletions":30,"files":["jc/parsers/ss.py"]},"message":"fix field names per ss documentation"},{"commit":"a4cdd3378e6a031f16dd371ed5cd60ff018feb32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["README.md"]},"message":"add compatibility info"},{"commit":"2f805da24d0e833e3d2a1f3a5ec34031fa911c05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":45,"insertions":51,"deletions":51,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/utils.md","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/utils.py"]},"message":"add colon to parameter in docs"},{"commit":"79152a946d93e4facf9711bfa0f421e1978e0f1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"initialize network_list and socket_list variables"},{"commit":"de37bb37d01b397df2b5992b4acd64817380401d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":187,"deletions":1,"files":["docgen.sh","docs/parsers/ss.md","jc/parsers/ss.py"]},"message":"add ss docs"},{"commit":"f783e44e5c0cd05733da5d24573f06d05760f993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["README.md","changelog.txt"]},"message":"doc fix"},{"commit":"af82f2c991ac0668485e75ae78a26b9553ec8b13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update raw format note"},{"commit":"46774daf9d3e0612df8f79d4b6b724e612ceb725","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":194,"deletions":4,"files":["README.md","jc/parsers/ss.py"]},"message":"doc update"},{"commit":"648306b7856fe2e296ce463ff4c9c2a8632c92d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":44,"deletions":22,"files":["jc/parsers/ss.py"]},"message":"process ss data"},{"commit":"b7a4f205b80c0a6a41aaabf59703525ac526c295","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":17,"deletions":14,"files":["jc/parsers/ss.py"]},"message":"parser fixes"},{"commit":"fdb168b43a69358a97bf43b71a0adbc7b1ef56f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":120,"deletions":0,"files":["jc/cli.py","jc/parsers/ss.py"]},"message":"add ss parser"},{"commit":"b6f65c93c462856f26201df0cbfe804b29a65169","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":43,"deletions":69,"files":["README.md","docs/parsers/ps.md","jc/parsers/ps.py"]},"message":"ps doc update"},{"commit":"3f4838f17a81969718d9e5b6bafa21e0b92e1d95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":6,"files":["docgen.sh","docs/cli.md"]},"message":"remove cli.md"},{"commit":"eef0dee2aa206716d9cf011bec58a06c46bbee15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":0,"files":["docs/utils.md","jc/utils.py"]},"message":"doc update"},{"commit":"e17388d3b2d1521d963bf9dd9e7a4ba5ba9bb09d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":44,"deletions":4,"files":["docs/utils.md","jc/utils.py"]},"message":"doc update"},{"commit":"7e6a1bc719b7160ba70cd326ff6aa182993a7380","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":41,"deletions":63,"files":["docs/readme.md","jc/__init__.py"]},"message":"doc update"},{"commit":"37738a2ea2f15af847e4b8383aba911e2020a3e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update contributions"},{"commit":"c5834a57db8957723a1425b9db46c433e28a3af1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":0,"files":["README.md"]},"message":"add todo section"},{"commit":"91b9373f380e06f91888811edbfb21747ff08810","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":417,"deletions":673,"files":["README.md"]},"message":"new examples"},{"commit":"ce0bb5b816eed0c75542ead474c3dcb8401be2d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting fix"},{"commit":"f330ff0eff00586f46d18497f2441e94b6430e91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["README.md"]},"message":"wrap example text"},{"commit":"4b02700414660b90518311485761870402368625","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":20,"files":["README.md"]},"message":"update simple examples"},{"commit":"ee30180376b7acec46314bbc483866bff41c362a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"fix note"},{"commit":"338e0ff15c7fac84475c1ed107e6a23e7a009b1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]},"message":"add schema note"},{"commit":"3ac75305dfa33429646bb5d415567034cccfeee3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":39,"insertions":351,"deletions":39,"files":["docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"update process() doc"},{"commit":"3bdcf44afb708cf6a716a0847b119f895602c23e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":18,"deletions":2,"files":["docs/parsers/arp.md","jc/parsers/arp.py"]},"message":"doc update"},{"commit":"e3f4ffede56fe48c0a282a021ac5cdfd7a8abee9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":20,"insertions":172,"deletions":77,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md"]},"message":"doc update"},{"commit":"f0c8725d4355113f7690f20bb99078e488084ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":181,"deletions":81,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"doc update"},{"commit":"5473bc4eb697d00bd26a038287e1137e438cacb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":16,"deletions":6,"files":["docs/parsers/arp.md","jc/parsers/arp.py"]},"message":"doc update"},{"commit":"b9bd9422bfa46144416fa65add2e041d4124357b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":380,"deletions":46,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"doc update"},{"commit":"cb5729a070925a7fa29f762bd4b074532f5cba55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":62,"deletions":44,"files":["README.md"]},"message":"add options to docs"},{"commit":"f0b1ab42337746afd37365abdf44729d530d5410","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/utils.md","jc/utils.py"]},"message":"doc update"},{"commit":"b15386e849b9fea347e7b17307eedf779d8022fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":11,"deletions":5,"files":["docs/utils.md","jc/utils.py"]},"message":"doc update"},{"commit":"d2a2c8da35ee44e9a7572885609548eb809bcdda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":5,"files":["docs/parsers/iptables.md","docs/parsers/mount.md","docs/parsers/uname.md"]},"message":"doc updates"},{"commit":"7251548cbb09beae6971385a56036e9649bd9b2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":5,"files":["jc/parsers/iptables.py","jc/parsers/mount.py","jc/parsers/uname.py"]},"message":"documentation updates"},{"commit":"146e29f7cbc0f396be67dbd7ae971a4ef4dafb7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":47,"insertions":5386,"deletions":2249,"files":["docgen.sh","docs/cli.md","docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/readme.md","docs/utils.md","jc/__init__.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/utils.py"]},"message":"update docs"},{"commit":"363fd3eab409351121dab8a11c6b565829ccd84a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"move parser_name to except block"},{"commit":"4083dd4260ff3a8bb6649e1661cf3e058fdbad59","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":24,"deletions":5,"files":["changelog.txt","jc/cli.py"]},"message":"add -d option"},{"commit":"b2b74547baaf33058d74fc08cb665777b19bd05a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":317,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-sudo-aeep.json","tests/fixtures/centos-7.7/netstat-sudo-aeep.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.json","tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.out","tests/test_netstat.py"]},"message":"add netstat-sudo-aeep tests"},{"commit":"dddb0baabf8a78261ac80380b97e7c92c7ce4d89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/netstat.py"]},"message":"use \\u2063 instead of \\u2026"},{"commit":"84b4f67ef9d4bb0db201a095d74400a56394589d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["tests/fixtures/centos-7.7/ps-axu.json","tests/fixtures/ubuntu-18.04/ps-axu.json"]},"message":"new json output"},{"commit":"3a089138b8c269ba3c5f7aec87ae3f8ec368c3ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":129,"deletions":9,"files":["jc/parsers/ps.py"]},"message":"add int and float changes"},{"commit":"3ff0305c8e62ce3b5a8f3f9174c5a9da3bc22766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":54,"deletions":2,"files":["tests/fixtures/centos-7.7/lsblk-allcols.json","tests/fixtures/centos-7.7/lsblk-allcols.out","tests/fixtures/centos-7.7/lsblk.json","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/lsblk-allcols.json","tests/fixtures/ubuntu-18.04/lsblk-allcols.out","tests/fixtures/ubuntu-18.04/lsblk.json","tests/test_lsblk.py"]},"message":"add lsblk tests"},{"commit":"761edc3c6cfc215fe45c65ee2bb5462cb460b6a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":6,"files":["jc/parsers/lsblk.py"]},"message":"remove unused parse_pairs function"},{"commit":"3351c81f647ac97a5038cc0c14adb31e55832a77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":200,"deletions":2,"files":["jc/parsers/lsblk.py"]},"message":"add documentation"},{"commit":"3dfc6f67d770c59804bdeb371d5c78e3f3668f9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/lsblk.py"]},"message":"change empty values to Null"},{"commit":"1546ec3bd139ef687282f60786388b5207541c98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":17,"deletions":13,"files":["jc/parsers/lsblk.py"]},"message":"fixes for right justified columns"},{"commit":"2a953011f72e922c89b9af6dfebd1983da7c338d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":50,"deletions":155,"files":["changelog.txt","jc/parsers/lsblk.py"]},"message":"rewrite of lsblk parser to use a custom delimiter"},{"commit":"d2f755de9d2be7b0af5f010042e1f4ca589c5464","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":14,"insertions":250,"deletions":566,"files":["tests/test_ifconfig.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_ls.py","tests/test_lsblk.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_ps.py","tests/test_route.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py"]},"message":"updates tests"},{"commit":"f363334639c5fa3a43889794ea52409056a2d886","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":87,"deletions":219,"files":["tests/test_df.py","tests/test_dig.py","tests/test_env.py","tests/test_free.py","tests/test_history.py"]},"message":"update tests"},{"commit":"750197e48596ad96804477053d3ff3c8063ea68a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":70,"files":["tests/test_arp.py"]},"message":"new tests"},{"commit":"36b349e4ed39fe611c7d87a47c378cc4d4627ad2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":76,"insertions":76,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-a.json","tests/fixtures/centos-7.7/arp-v.json","tests/fixtures/centos-7.7/arp.json","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/df.json","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/centos-7.7/env.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/centos-7.7/free.json","tests/fixtures/centos-7.7/history.json","tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/centos-7.7/iptables-filter-nv.json","tests/fixtures/centos-7.7/iptables-filter.json","tests/fixtures/centos-7.7/iptables-mangle.json","tests/fixtures/centos-7.7/iptables-nat.json","tests/fixtures/centos-7.7/iptables-raw.json","tests/fixtures/centos-7.7/jobs.json","tests/fixtures/centos-7.7/ls-al.json","tests/fixtures/centos-7.7/ls-alh.json","tests/fixtures/centos-7.7/ls.json","tests/fixtures/centos-7.7/lsblk.json","tests/fixtures/centos-7.7/lsmod.json","tests/fixtures/centos-7.7/lsof-sudo.json","tests/fixtures/centos-7.7/lsof.json","tests/fixtures/centos-7.7/mount.json","tests/fixtures/centos-7.7/netstat-l.json","tests/fixtures/centos-7.7/netstat-p.json","tests/fixtures/centos-7.7/netstat-sudo-lnp.json","tests/fixtures/centos-7.7/netstat.json","tests/fixtures/centos-7.7/ps-axu.json","tests/fixtures/centos-7.7/ps-ef.json","tests/fixtures/centos-7.7/route-vn.json","tests/fixtures/centos-7.7/route.json","tests/fixtures/centos-7.7/uname-a.json","tests/fixtures/centos-7.7/uptime.json","tests/fixtures/centos-7.7/w.json","tests/fixtures/ubuntu-18.04/arp-a.json","tests/fixtures/ubuntu-18.04/arp-v.json","tests/fixtures/ubuntu-18.04/arp.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/df.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json","tests/fixtures/ubuntu-18.04/env.json","tests/fixtures/ubuntu-18.04/free-h.json","tests/fixtures/ubuntu-18.04/free.json","tests/fixtures/ubuntu-18.04/history.json","tests/fixtures/ubuntu-18.04/ifconfig.json","tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","tests/fixtures/ubuntu-18.04/iptables-filter.json","tests/fixtures/ubuntu-18.04/iptables-mangle.json","tests/fixtures/ubuntu-18.04/iptables-nat.json","tests/fixtures/ubuntu-18.04/iptables-raw.json","tests/fixtures/ubuntu-18.04/jobs.json","tests/fixtures/ubuntu-18.04/ls-al.json","tests/fixtures/ubuntu-18.04/ls-alh.json","tests/fixtures/ubuntu-18.04/ls.json","tests/fixtures/ubuntu-18.04/lsblk.json","tests/fixtures/ubuntu-18.04/lsmod.json","tests/fixtures/ubuntu-18.04/lsof-sudo.json","tests/fixtures/ubuntu-18.04/lsof.json","tests/fixtures/ubuntu-18.04/mount.json","tests/fixtures/ubuntu-18.04/netstat-l.json","tests/fixtures/ubuntu-18.04/netstat-p.json","tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.json","tests/fixtures/ubuntu-18.04/netstat.json","tests/fixtures/ubuntu-18.04/ps-axu.json","tests/fixtures/ubuntu-18.04/ps-ef.json","tests/fixtures/ubuntu-18.04/route-vn.json","tests/fixtures/ubuntu-18.04/route.json","tests/fixtures/ubuntu-18.04/uname-a.json","tests/fixtures/ubuntu-18.04/uptime.json","tests/fixtures/ubuntu-18.04/w.json"]},"message":"json output files"},{"commit":"b5f1e94fe2859c4fbcf126f8f8fb20d71a9b6433","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/netstat.py"]},"message":"fix for space before '-' in program_name"},{"commit":"6a504fb0e10b1ef551ed9fe780926fe5ca02d267","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"]},"message":"add exception type"},{"commit":"e02bad2240bacbc31097d931a902a34217d559db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":123,"deletions":175,"files":["jc/parsers/netstat.py"]},"message":"update documentation"},{"commit":"1d4043a3b64c38a20a0db065c3bdc3c6a2d068bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":52,"deletions":0,"files":["jc/parsers/foo.py"]},"message":"add template parser"},{"commit":"039e034829789ca314a00abd4f1d9ad06f1a6eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":6,"files":["jc/parsers/netstat.py"]},"message":"fix parsing issues in program_name when spaces are in the name"},{"commit":"d828de4f4f2f4c3d582fddee79830d12511c3299","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":53,"deletions":9,"files":["jc/parsers/w.py"]},"message":"update documentation"},{"commit":"098000bb10a3f5ed33d285c6ba4f0dfb9a013fdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":24,"deletions":9,"files":["changelog.txt","jc/parsers/w.py"]},"message":"fix blank 'from' column issue"},{"commit":"b41165eff5cd7371e852cd33e084a919524ead9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":31,"deletions":1,"files":["jc/parsers/w.py"]},"message":"process w data"},{"commit":"6ad7891b2b34fae1a366568e4eba86e886a6dd84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":59,"deletions":14,"files":["jc/parsers/uptime.py"]},"message":"process uptime data"},{"commit":"72138315598cd405bc0508b554108bf3f730dcb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":31,"deletions":10,"files":["jc/parsers/uname.py"]},"message":"add process boilerplate"},{"commit":"10eedd82e4c4678fbf989fe599d7ca75deced5a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"a55493da0f1457a46f29511e0835adfa9d748f7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":93,"deletions":6,"files":["jc/parsers/route.py"]},"message":"process route data"},{"commit":"89973f4162317693b0d094a64115ee87d8479d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":45,"deletions":27,"files":["jc/parsers/ps.py"]},"message":"doc updates and tty fix"},{"commit":"4802222ad50d55372f2b883d83a61181086b0619","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/parsers/ps.py"]},"message":"process ps data"},{"commit":"bcd28f06f87a4260d1787399d723817afd6aee90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":1,"files":["jc/parsers/ps.py"]},"message":"prep ps for process"},{"commit":"e17a47a7fa7f4c1bb4c4b55fb004963fc1b61434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"fix typo"},{"commit":"cad2e16c7aa54a70f476bf4268ff8e5985cff468","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":353,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"document examples"},{"commit":"5da5d278dac77bd4aa21819194e7f9e178bd1887","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":0,"files":["jc/parsers/netstat.py"]},"message":"process netstat data"},{"commit":"81b6776e57c113cbfb8346d1cfd83532a440c257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":177,"files":["jc/parsers/netstat.py.old"]},"message":"remove old netstat parser"},{"commit":"5ecb6bd58b4ed91f63e4a0b5939378bd9925b7b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":3,"files":["changelog.txt","jc/parsers/netstat.py"]},"message":"doc updates"},{"commit":"21b56096c57cfcf5c55fdf5f9bab88b6d5c7dd73","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["jc/parsers/netstat.py"]},"message":"finalize parse_post"},{"commit":"8c78f959731a25a05ee6361a14853c92f8fce69b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"clean up trailing spaces on entries"},{"commit":"94a88bb5669d9a9a5dff085a4c4111bdd39df8f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":35,"deletions":17,"files":["jc/parsers/netstat.py"]},"message":"post_parse flags and program_name"},{"commit":"579124475b0b517b36ddbe5bdb13be14807dea1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"simplify parser_map code"},{"commit":"5da83e020015eb5559d216bc3f39b3854e76adf3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"]},"message":"fix found variable error"},{"commit":"a90a76d004b923edece07a52a3aa400a9ef4b005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":177,"deletions":140,"files":["jc/parsers/netstat.py.old","jc/parsers/netstat2.py"]},"message":"move out old netstat parser"},{"commit":"bdfa95912398b2630fcb13e866f4013747fd0975","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":20,"insertions":209,"deletions":212,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"fix compatibility code"},{"commit":"4380594275bc863e81839a6a7b032a6ff0cbb9b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":46,"files":["jc/utils.py"]},"message":"remove cli functions from utils"},{"commit":"88bf252c0df3c583640286880d7992e4399e23f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":139,"deletions":128,"files":["jc/cli.py","jc/jc.py"]},"message":"rename jc.py to cli.py"},{"commit":"a5efd8adce77fca7e3343f8f518c7bad578fdb4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"rename jc.py to cli.py"},{"commit":"2ee392eefffde77ebdf83f5e4e0c43cf8c1a7d6e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/netstat2.py"]},"message":"add quiet mode"},{"commit":"9c1d893e16ea17b16bec5fd0ec8839c4fe6f0590","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":102,"deletions":90,"files":["jc/jc.py","jc/parsers/arp.py","jc/parsers/df.py","jc/utils.py"]},"message":"move utils to own module and add quiet mode"},{"commit":"88dcb90c83b757285661c72429c5b60bb1ead94a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"a3bcabc89c1f74d067da0046492dbc56e50b1005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":62,"files":["jc/parsers/netstat2.py"]},"message":"mvp of netstat raw_data parser"},{"commit":"dafbf9fdcf53a8abbd006baef0be6697f860d2a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":247,"deletions":53,"files":["jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat2.py"]},"message":"process lsmod data"},{"commit":"680cb2b2caa82e1e2c3225b3c44cae2ba03ba02c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":76,"deletions":7,"files":["jc/parsers/lsblk.py"]},"message":"doc update"},{"commit":"54818a06e0e0b981810f6aec45c308da81a9e2ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/lsblk.py"]},"message":"change bool variable names"},{"commit":"88f4c5b5a93da3938b84f97abfc54539ee19ac48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":10,"deletions":10,"files":["jc/parsers/dig.py","jc/parsers/free.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py"]},"message":"remove TypeError from exception check"},{"commit":"2bb7409887e8b7659613189daf58d02cb26bd6ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":36,"deletions":11,"files":["jc/parsers/df.py","jc/parsers/lsblk.py"]},"message":"process lsblk data"},{"commit":"c780aac3aba02cc042c6a3c984af198069956370","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":22,"insertions":91,"deletions":5,"files":["jc/jc.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat2.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add compatibility function"},{"commit":"5010aaec285e26ae9dbfdb3fcdc38a3bd36cd236","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"]},"message":"put exit() back"},{"commit":"066e93cb075021ac94a0e2e6a36a34bc173ee6c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"]},"message":"move exit() to errormessage()"},{"commit":"0bd2faa7f71a128babc68afea053159ccb91b702","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/jc.py"]},"message":"beautify compatibility list"},{"commit":"e2f926453ba386736204e358f8306dfc731b5005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["install.sh"]},"message":"add install script"},{"commit":"b953b79f9c46d8c5398a6c1c2769167b5aed2805","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":11,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/ls.py"]},"message":"add compatibility"},{"commit":"7f9967780692bec2fcbe992eee0c392ab92efb7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":19,"deletions":1,"files":["jc/jc.py","jc/parsers/lsblk.py"]},"message":"compatibility function call"},{"commit":"721b54665924ad1657ee83cd5fca601e03700962","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/lsblk.py"]},"message":"finish schema"},{"commit":"2de5e41269421c73e07d4abd6ca99b38be736261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":95,"deletions":12,"files":["jc/parsers/lsblk.py"]},"message":"fix for more columns and build schema"},{"commit":"dfe0f6e99b6174734661fc43d9ad4b1d0dfd96e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":75,"deletions":9,"files":["jc/parsers/ls.py"]},"message":"process ls data"},{"commit":"8873b1bc697c8f9409fa676c88b5ebe109dc8717","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":46,"files":["jc/parsers/df.py"]},"message":"clean up process code"},{"commit":"9ff94707004fefed475603436fc0a7ffb19e6fee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":4,"files":["jc/jc.py"]},"message":"refactor helptext() function"},{"commit":"2c58fca53044892e15ceb5e8bcae1afb09fa3269","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":62,"deletions":4,"files":["jc/parsers/jobs.py"]},"message":"process jobs data"},{"commit":"9e5cd90da7d92bbadbc0d25071d087a3dbd90a5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":131,"deletions":261,"files":["jc/parsers/iptables.py"]},"message":"process iptables data"},{"commit":"7ee0d49424bba5274975d6c33e0721977660692f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":107,"deletions":28,"files":["jc/parsers/ifconfig.py"]},"message":"process ifconfig data"},{"commit":"a9058ee21e87454aa423112239c4f4df7daca8c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":4,"deletions":1,"files":["jc/parsers/arp.py","jc/parsers/dig.py","jc/parsers/free.py"]},"message":"doc formatting"},{"commit":"fcf0aac87dccac2ce28e6f55e66e2f0b8f6fbd36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":54,"deletions":10,"files":["jc/parsers/history.py"]},"message":"add history processing"},{"commit":"daec5f068103aae547509ddacc2be56c84f39f17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":55,"deletions":6,"files":["jc/parsers/free.py"]},"message":"process free data"},{"commit":"5b2491d5ae72705758944e247fbca83367c0365f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":54,"deletions":5,"files":["jc/parsers/env.py"]},"message":"process env data"},{"commit":"d9b41ac73b234f5bf7ff3abfee198092424a1bbd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/dig.py"]},"message":"doc formatting"},{"commit":"7168ffddf8a8dfcdd5bcabd8bf943d6417de407d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":87,"deletions":5,"files":["jc/parsers/dig.py"]},"message":"process dig output"},{"commit":"a855344bec9f60d852de326953436ec76f25cffb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":0,"files":["jc/parsers/arp.py"]},"message":"document schema"},{"commit":"d8b3b59fae924494fbcdfbdf6ad790f5234b0c69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/parsers/df.py"]},"message":"add schema and rename 'avail' to 'available'"},{"commit":"4b7d7840d37be47c1c98c38a6d712e7090e5b68c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","changelog.txt"]},"message":"add -r option"},{"commit":"58a094a9b4cab0fcb99581f37a21a450fc3a1aed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"65adbb4189ac66de3283adb2af93a1251103f057","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":29,"deletions":7,"files":["jc/parsers/arp.py"]},"message":"doc update"},{"commit":"f7350959c9706486a3aed19a999e5ee756a1240c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":47,"deletions":24,"files":["jc/parsers/df.py"]},"message":"df fix for changing header names when -h used"},{"commit":"8934a7d832b8e1375f0bbdd71031f37ae42f3929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["jc/parsers/arp.py","jc/parsers/df.py"]},"message":"fix dictionary iteration"},{"commit":"669a424fd6508db91bf5cfa2607033fac85f442c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/df.py"]},"message":"fix process function"},{"commit":"591a65c2bda26efcdd570a5f147f98a5be0473d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":46,"deletions":2,"files":["jc/parsers/df.py"]},"message":"process df data"},{"commit":"a78fb890782a64b20c0c1b60afbd915ebdd88535","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":5,"files":["jc/parsers/arp.py"]},"message":"add raw and processed output"},{"commit":"8979dab2a5371fce3a773004c2309e7483e4cd31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":25,"deletions":20,"files":["jc/jc.py"]},"message":"add raw mode"},{"commit":"0a891f0adda7f2f3233222a0cb5c1f737913ad6f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":1,"files":["changelog.txt","setup.py"]},"message":"bump python required version"},{"commit":"c220e35b14237c2cfc38aa661413af83ea13e393","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":34,"deletions":33,"files":["jc/jc.py"]},"message":"cleanup helptext"},{"commit":"f26c5818bd958c18f4ecc22611b9c058f6213a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":36,"deletions":33,"files":["jc/jc.py"]},"message":"refactor helptext"},{"commit":"e712cd3fc4cec1b3137c73e199b2d89fd42fb3bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":138,"deletions":0,"files":["jc/parsers/netstat2.py"]},"message":"netstat2 skeleton"},{"commit":"0309c9ac67c5f65e0a584fd01e8104ef1990fa7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"setup cleanup"},{"commit":"9a9eb4120af7696cd3727ac0f0a014663e62b993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["setup.py"]},"message":"setup updates"},{"commit":"d1927456b02e6c2a6e6395cd6ce873b6565ec37d","merge":"0691cfc a3d9213","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #6 from kellyjonbrazil/dev\n\nDev v1.1.1"},{"commit":"a3d9213a1e2fd52ba2cbc863d4d01d3ffeebe230","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["changelog.txt"]},"message":"add date"},{"commit":"3365c03a1e709835b4bd6bca023afbcb46912982","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":361,"deletions":0,"files":["tests/test_arp.py","tests/test_dig.py"]},"message":"add tests"},{"commit":"4f6c87389b313b368d9e833feef55fe6daf7aac9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":164,"deletions":1,"files":["tests/fixtures/centos-7.7/dig-aaaa.out","tests/fixtures/centos-7.7/dig-x.out","tests/fixtures/centos-7.7/dig.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/dig-aaaa.out","tests/fixtures/ubuntu-18.04/dig-x.out","tests/fixtures/ubuntu-18.04/dig.out"]},"message":"add dig test files"},{"commit":"41a2a9adac7d3c29dfa11292f08b0877c69b1a5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":147,"deletions":3,"files":["README.md","jc/parsers/dig.py"]},"message":"remove unnecessary if statement"},{"commit":"74dae2905b2b0916f0be9fee2a4a343962760ff6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":143,"deletions":30,"files":["jc/parsers/dig.py"]},"message":"dig parser mvp"},{"commit":"d1f64214de00090c3faae0bf544c6c2602ab8c31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":3,"files":["jc/parsers/dig.py"]},"message":"add authority parsing"},{"commit":"d3e1aa20a815d1d1d6ae82776ae18e3416f0966f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dig.py"]},"message":"fix when line"},{"commit":"72cae9577756c4355211a19f4dd77aaeb6f8e905","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":47,"deletions":9,"files":["jc/parsers/dig.py"]},"message":"dig fixes"},{"commit":"219bc8130f55f23e3be3abbe56104aefc2f84e86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":155,"deletions":0,"files":["jc/jc.py","jc/parsers/dig.py"]},"message":"dig parser skeleton"},{"commit":"e8c1a554c040ad8f9c6b518db5fd58e8345d2181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-a.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/arp-a.out"]},"message":"testfile updates"},{"commit":"087a60bc2adf64bfcedc1f264fef328f993b530c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":87,"deletions":5,"files":["README.md","jc/parsers/arp.py"]},"message":"documentation updates"},{"commit":"9c9823c3b8737b5de08af6278ca74414138e9263","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":16,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-v.out","tests/fixtures/centos-7.7/arp.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/arp-v.out","tests/fixtures/ubuntu-18.04/arp.out"]},"message":"add arp testfiles"},{"commit":"cf8d13030bf67261a986c0f80fa20ec0e37a743a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["README.md"]},"message":"add arp"},{"commit":"1eff69c187ca410ffaec7909bc2532553be1d80c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":17,"deletions":1,"files":["changelog.txt","jc/parsers/arp.py"]},"message":"add documentation"},{"commit":"b10fb77d714b73a10a9bf28b45269b3530e01cee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/arp.py"]},"message":"fixup arp parser"},{"commit":"87cee8b230a06fa270b2e36afb56f337da814c80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":28,"deletions":1,"files":["jc/jc.py","jc/parsers/arp.py"]},"message":"add arp parser"},{"commit":"83ab10d6282e26391bbf6bae5d0d29e040b209f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":44,"deletions":34,"files":["jc/__init__.py"]},"message":"documentation update"},{"commit":"d58a6e1d1dc93155255922b65b0af1325439b033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":15,"files":["README.md"]},"message":"readme update"},{"commit":"cb46ca5c2776a13c673a44d3e0fbd0661b32af9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]},"message":"readme update"},{"commit":"5528d979f0b45787d68ab79b962371df9acc527b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["changelog.txt","setup.py"]},"message":"version bump"},{"commit":"ee94a038a61d60db72046d5bcceec58009decb39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":131,"deletions":0,"files":["tests/test_uname.py","tests/test_uptime.py","tests/test_w.py"]},"message":"add tests"},{"commit":"1d658f7a9fc50873f76985b2fb9de92ada9d5547","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":265,"deletions":0,"files":["tests/test_netstat.py","tests/test_ps.py","tests/test_route.py"]},"message":"add tests"},{"commit":"392cb44f9b19829a5ceba055e24c7af4d8ac5b3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":80,"insertions":12667,"deletions":0,"files":["runtests.sh","tests/__init__.py","tests/fixtures/centos-7.7/df-h.out","tests/fixtures/centos-7.7/df.out","tests/fixtures/centos-7.7/env.out","tests/fixtures/centos-7.7/free-h.out","tests/fixtures/centos-7.7/free.out","tests/fixtures/centos-7.7/history.out","tests/fixtures/centos-7.7/ifconfig.out","tests/fixtures/centos-7.7/iptables-filter-nv.out","tests/fixtures/centos-7.7/iptables-filter.out","tests/fixtures/centos-7.7/iptables-mangle.out","tests/fixtures/centos-7.7/iptables-nat.out","tests/fixtures/centos-7.7/iptables-raw.out","tests/fixtures/centos-7.7/jobs.out","tests/fixtures/centos-7.7/ls-al.out","tests/fixtures/centos-7.7/ls-alh.out","tests/fixtures/centos-7.7/ls.out","tests/fixtures/centos-7.7/lsblk.out","tests/fixtures/centos-7.7/lsmod.out","tests/fixtures/centos-7.7/lsof-sudo.out","tests/fixtures/centos-7.7/lsof.out","tests/fixtures/centos-7.7/mount.out","tests/fixtures/centos-7.7/netstat-l.out","tests/fixtures/centos-7.7/netstat-p.out","tests/fixtures/centos-7.7/netstat-sudo-lnp.out","tests/fixtures/centos-7.7/netstat.out","tests/fixtures/centos-7.7/ps-axu.out","tests/fixtures/centos-7.7/ps-ef.out","tests/fixtures/centos-7.7/route-vn.out","tests/fixtures/centos-7.7/route.out","tests/fixtures/centos-7.7/uname-a.out","tests/fixtures/centos-7.7/uptime.out","tests/fixtures/centos-7.7/w.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/df-h.out","tests/fixtures/ubuntu-18.04/df.out","tests/fixtures/ubuntu-18.04/env.out","tests/fixtures/ubuntu-18.04/free-h.out","tests/fixtures/ubuntu-18.04/free.out","tests/fixtures/ubuntu-18.04/history.out","tests/fixtures/ubuntu-18.04/ifconfig.out","tests/fixtures/ubuntu-18.04/iptables-filter-nv.out","tests/fixtures/ubuntu-18.04/iptables-filter.out","tests/fixtures/ubuntu-18.04/iptables-mangle.out","tests/fixtures/ubuntu-18.04/iptables-nat.out","tests/fixtures/ubuntu-18.04/iptables-raw.out","tests/fixtures/ubuntu-18.04/jobs.out","tests/fixtures/ubuntu-18.04/ls-al.out","tests/fixtures/ubuntu-18.04/ls-alh.out","tests/fixtures/ubuntu-18.04/ls.out","tests/fixtures/ubuntu-18.04/lsblk.out","tests/fixtures/ubuntu-18.04/lsmod.out","tests/fixtures/ubuntu-18.04/lsof-sudo.out","tests/fixtures/ubuntu-18.04/lsof.out","tests/fixtures/ubuntu-18.04/mount.out","tests/fixtures/ubuntu-18.04/netstat-l.out","tests/fixtures/ubuntu-18.04/netstat-p.out","tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.out","tests/fixtures/ubuntu-18.04/netstat.out","tests/fixtures/ubuntu-18.04/ps-axu.out","tests/fixtures/ubuntu-18.04/ps-ef.out","tests/fixtures/ubuntu-18.04/route-vn.out","tests/fixtures/ubuntu-18.04/route.out","tests/fixtures/ubuntu-18.04/uname-a.out","tests/fixtures/ubuntu-18.04/uptime.out","tests/fixtures/ubuntu-18.04/w.out","tests/test_df.py","tests/test_env.py","tests/test_free.py","tests/test_history.py","tests/test_ifconfig.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_ls.py","tests/test_lsblk.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py"]},"message":"initial add of tests and fixtures"},{"commit":"579bef079cdd7cfa298bc20e052b8eb75b586f5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/netstat.py"]},"message":"move global output variable inside function"},{"commit":"0691cfcab3f5f91908e06ec906d57e548d4e7a1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["changelog.txt"]},"message":"changelog fix"},{"commit":"db29c7c186601fd4596d3eb121b37100601af907","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","jc/parsers/netstat.py"]},"message":"documentation fixes"},{"commit":"fb1e03637514b5ab02fd4c5df1db8b3cbacdd531","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":10,"files":["README.md"]},"message":"formatting"},{"commit":"c3eaf59836538f4ab4c745e87b70115b4a4c5421","merge":"ea0cf0a c9849ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #5 from kellyjonbrazil/dev\n\nDev v1.0.1"},{"commit":"c9849ce0db1f864d33739f8f6f942bf5672bc3b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"d3c89a3092973a7a8765463fff41c2469ed675cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":9,"files":["jc/parsers/uname.py"]},"message":"check for enough info to parse"},{"commit":"a3d43f27f7bb0835b3593b7c303fe0ee8d896a58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":10,"files":["jc/parsers/uptime.py"]},"message":"fix odd uptime text parsing"},{"commit":"f4d9c1b699fa30bd297a40ccf3d5f6e7ba3d4253","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":4,"files":["jc/parsers/uptime.py"]},"message":"fix uptime for minutes and hours long uptime"},{"commit":"de647bba4aff84f7b513cf7f6fec8d3933b0d9da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"documentation update"},{"commit":"d7913070315e5e0c89006942250aaf37e9e3e18e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"documentation update"},{"commit":"1a4fc204e21f1555ae67c3147322c8d73fab630b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":10,"deletions":1,"files":["README.md","changelog.txt"]},"message":"Documentation update"},{"commit":"0328e14c7c65a330093faa52fe48dae6cb173e42","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":0,"files":["jc/jc.py"]},"message":"handle ctrl-c gracefully"},{"commit":"1acc4d6c29d136e286f82d607c4a3a59e2680b68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/uptime.py"]},"message":"fix uptime parsing for short uptimes"},{"commit":"27245590ce28be933f1a55db4ee6b24783f4b63d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":20,"files":["jc/parsers/jobs.py"]},"message":"remove integers"},{"commit":"7ca2a4bdb939293e8d7364f8901ad1fd6d3ee808","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":182,"deletions":201,"files":["README.md","changelog.txt","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/netstat.py"]},"message":"remove integer values"},{"commit":"5f1ec6734874651bee595961edf1fafaf5acf001","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":473,"deletions":456,"files":["README.md","jc/parsers/df.py","jc/parsers/history.py","jc/parsers/iptables.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/w.py"]},"message":"lower() headers"},{"commit":"7e44c4278a75c7223d99200023160e8d77fde54d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/jobs.py"]},"message":"formatting"},{"commit":"eda726c4a3864008e2f700374b679ae68a965ef8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":80,"deletions":1,"files":["jc/parsers/ifconfig.py"]},"message":"documentation update"},{"commit":"5f8e70d73054f1a106c0e75eee621bc0cefd1c6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":20,"deletions":22,"files":["changelog.txt","jc/parsers/df.py","jc/parsers/free.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/w.py"]},"message":"convert headers to lowercase"},{"commit":"25b90546c652cafa9409f02bae1654cb523add88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":14,"deletions":9,"files":["README.md","changelog.txt","jc/parsers/df.py"]},"message":"change 'Use%' to 'Use_percent'"},{"commit":"75c084153845757e22c149ea4ae7909d42ec7118","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"5b532b9b71fdb9de575da0af9b7989ac537877c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/parsers/lsof.py"]},"message":"minor cleanup"},{"commit":"8c7b3193d131411f8766508fc27b2a6589bba1f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/history.py"]},"message":"documentation change"},{"commit":"0897c96ef3c180a1707e8f56c545f59b3a4e0672","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/lsof.py"]},"message":"formatting"},{"commit":"57d0ab2ed7f444862546da17cbbe8f8ce67bca8c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":9,"deletions":4,"files":["README.md","jc/parsers/w.py"]},"message":"change LOGIN@ to LOGIN_AT"},{"commit":"a07d9a0e4bb76d369b4a9bf0d77c7590dc3c2861","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":22,"deletions":13,"files":["README.md","jc/parsers/lsof.py"]},"message":"change SIZE/OFF key to SIZE_OFF"},{"commit":"b3996cb4dfed908d71b292dc0b0136c6675351e6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":10,"files":["README.md","jc/parsers/lsblk.py"]},"message":"change MAJ:MIN key to MAJ_MIN"},{"commit":"4fa88c1ba38b34f9750625458c465d66f6531bc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/history.py"]},"message":"clear out non-ascii chars from data"},{"commit":"c8c5564b29588094721949b96bff1e623437835d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":3,"files":["README.md","jc/parsers/free.py"]},"message":"change buff/cache key to buff_cache"},{"commit":"6d047486d9f577bc04d79af839f5eef9657a9d43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"doc fix"},{"commit":"42bdc058141c4a3ac6f2c8211f9c990590b1b5cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"changelog fix"},{"commit":"85bfb688862e78d5879df6973b88ba8023fa6086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":10,"files":["README.md","jc/parsers/history.py"]},"message":"history parser fixes"},{"commit":"08ec21556b553cd7e64932d68e01ba8ff3b0f210","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/w.py"]},"message":"formatting"},{"commit":"320929bf2595026d32b80b80c3e4878db9cf083f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/env.py"]},"message":"documentation update"},{"commit":"41cd489c34502c42602bf64086670ba3b2b8e14b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":126,"deletions":0,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/history.py","jc/parsers/uptime.py"]},"message":"add history and uptime parsers"},{"commit":"f101d881a16e662e883818749d48e96858fba853","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":78,"deletions":3,"files":["README.md","jc/jc.py","jc/parsers/w.py","setup.py"]},"message":"add w parser"},{"commit":"fa7466022bb8947c1bbf9f7b01aa4d92300a8992","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":28,"deletions":56,"files":["README.md","changelog.txt","jc/parsers/env.py"]},"message":"fix env parser"},{"commit":"ea0cf0acf22585fbf8828841cf50155636eae82f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/lsof.py"]},"message":"documentation update"},{"commit":"e7921b65f5a250c10b08f78939f74968047af430","merge":"393e8bc 2cc1b1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #4 from kellyjonbrazil/dev\n\nDev v0.9.1"},{"commit":"2cc1b1bd5451f31d71b0e2236bdee0ce2b25b5d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"version bump"},{"commit":"58ae976db0165730a75dd7450c698d2727a354ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":113,"deletions":4,"files":["README.md","jc/parsers/lsmod.py","setup.py"]},"message":"documentation update"},{"commit":"66772392ae78ef394e22070b127416b1d5b01332","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":32,"deletions":0,"files":["changelog.txt","jc/jc.py","jc/parsers/lsmod.py"]},"message":"add lsmod parser"},{"commit":"29c47c03a64f9c6b0f44d34be5449396654849b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":134,"deletions":2,"files":["README.md","changelog.txt","jc/parsers/lsof.py"]},"message":"documentation update"},{"commit":"91eb9a4d13e9254bd5bbde931196904c1947a28e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsof.py"]},"message":"use None instead of --"},{"commit":"a1a3de32ec14d6ef433e334b9694856698c26d41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":59,"deletions":0,"files":["jc/jc.py","jc/parsers/lsof.py"]},"message":"add lsof parser"},{"commit":"9c47fd05bf716c2e18ebf4da41b1a46b972b2518","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/jobs.py"]},"message":"doco fix"},{"commit":"649c0aa7c157f87691cc8eeac64c747e81f63594","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":76,"deletions":1,"files":["README.md","jc/parsers/jobs.py"]},"message":"add documentation"},{"commit":"3db758764e50666e5ae40de8d89180de2ef5bc28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":83,"deletions":0,"files":["changelog.txt","jc/jc.py","jc/parsers/jobs.py"]},"message":"add jobs parser"},{"commit":"802f1510eb6d621f9c760f28b83f16a4781b8d93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"]},"message":"tighten if statements"},{"commit":"56901788dee154890e70269ad48d4b22bb8c5437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":30,"deletions":19,"files":["jc/jc.py"]},"message":"stop blocking when no pipe and enhance help text"},{"commit":"679ae6d5dc7af26240dc00d8bc6499950f81d457","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump"},{"commit":"b15c8c352a87a9b3b1dece28af0287ef71ca02d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":16,"files":["jc/parsers/iptables.py"]},"message":"simplify state variables"},{"commit":"393e8bc56041a4be01b6c0b2f98895aa330afd04","merge":"e3750b4 976fd7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #3 from kellyjonbrazil/dev\n\nDev v0.8.1"},{"commit":"976fd7d9bd49190a8b28ea5acf5af8979cdec537","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":28,"files":["README.md"]},"message":"readme update"},{"commit":"d8337870cad042cdcc6a4ff3c61f756c3430fa96","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":28,"files":["jc/parsers/df.py"]},"message":"update documentation"},{"commit":"39a8aec77f5134b5b958e3f679910a1c3512e13a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/parsers/ls.py","setup.py"]},"message":"v0.8.1 build"},{"commit":"306d539b6bbfb272c7b955e4847adc3a6b4afa5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"readme update"},{"commit":"f3087b8a8ede88834285bb5d0655fc96341c174c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":635,"deletions":1,"files":["README.md","changelog.txt","jc/parsers/iptables.py"]},"message":"update readme and formatting"},{"commit":"414c2ecef88af2d2c098e6acfb507a5fd7bb8eda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":10,"files":["jc/parsers/iptables.py"]},"message":"fix iptables parser"},{"commit":"776ef2d1be81180b8b295fbc587446a326f2f7a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":61,"deletions":0,"files":["jc/jc.py","jc/parsers/iptables.py"]},"message":"add iptables parser"},{"commit":"9ac57469967443b195be09d580beaa76ce0e1095","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":64,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/uname.py"]},"message":"add uname parser"},{"commit":"a3e55d97c0fd4397b42e9146afb0ba9558274fdb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":127,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/mount.py"]},"message":"add mount parser"},{"commit":"b15227e7ba5377e5fb6799d1b9e4ed5a11c6d92f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":125,"deletions":0,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/lsblk.py"]},"message":"add lsblk parser"},{"commit":"ec3d1f84ceccb492b4c968938714fafa2e6a6321","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":2,"files":["jc/parsers/free.py"]},"message":"fix free parser"},{"commit":"753d5fd9fe5a8e4b67b1a0ec018a9f811e27f8bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"readme update"},{"commit":"73a0d70c9294ad392792e690a7bfbcc4f51b0a5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"readme update"},{"commit":"c2c189f3e6e900e5f3d35df9a9b9d033448baff6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["README.md"]},"message":"readme update"},{"commit":"36bc55a3109278d663b675a09829200f5474c3d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["README.md"]},"message":"fix df"},{"commit":"a023001cd350e320ce30f47af214ed7a9bb43185","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":226,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/df.py","jc/parsers/env.py","jc/parsers/free.py"]},"message":"add df, env, and free parsers"},{"commit":"e3750b49628794fd4d563013b1f3a7471c27ce68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":83,"deletions":51,"files":["README.md","jc/__init__.py"]},"message":"documentation enhancements"},{"commit":"b5ea08e55bfd22c9da5ba73c124791012df119a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":20,"deletions":20,"files":["README.md","changelog.txt","jc/parsers/netstat.py","setup.py"]},"message":"fix transport protocol"},{"commit":"8e71b8e3522b9b1af4d869a0854223eb5c300b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"fix jq example"},{"commit":"4c8610c54ff4b643237d8f0e4c5781c277fc39f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["changelog.txt","setup.py"]},"message":"fixed build"},{"commit":"c8f886dc8fcdc58f8471d68c3d583200d0ea2f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"]},"message":"fix example"},{"commit":"4cfc2d22b3f9fd6f0cde8ad206edd7fe260b3071","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"update changelog"},{"commit":"59238c85408117748e78c5e87157381a828f3782","merge":"d54d906 30080c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #2 from kellyjonbrazil/dev\n\nDev v0.6.2"},{"commit":"30080c01659cf611666876b7b063b7b329822352","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":35,"deletions":35,"files":["README.md"]},"message":"reorder parsers"},{"commit":"fab80bb3b4a1897da29d818e98e9b80ce45443dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["README.md","setup.py"]},"message":"readme update"},{"commit":"a9f2df805421754afb8e8adbcac7f2d3bd06c9ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"move parsed_line var lower"},{"commit":"1d110be6cb25d169ae0dde6532cbcdf05d93d42f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":13,"deletions":1,"files":["README.md","changelog.txt","setup.py"]},"message":"update doco"},{"commit":"be81b5e1ed93eb65e5dbed4f52905439cde86f62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":112,"deletions":121,"files":["README.md"]},"message":"readme update"},{"commit":"5f88f7d8a071306be92cbfb65d6d62c5a68159f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":110,"deletions":137,"files":["jc/parsers/netstat.py"]},"message":"netstat cleanup"},{"commit":"e57c7cc8ef3102cc41dee4ea5fd33d40ba666491","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"change output from dict to list"},{"commit":"b216627c1073ea645029e341b4d3376601e5468e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":116,"files":["jc/parsers/netstat.py"]},"message":"flatten netstat output"},{"commit":"6e925eab131024b5746d870cbd47e2791acf18bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":18,"files":["jc/jc.py"]},"message":"clean up arg parsing"},{"commit":"d54d906c571b4683f01cab2eca63ae5f0725a87b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update readme"},{"commit":"0040febbf099ed8ab35f6ee343750fcf89f2e739","merge":"8073d15 e416c77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #1 from kellyjonbrazil/dev\n\nDev v0.5.5"},{"commit":"e416c77bed1267254da972b0f95b7ff1d43fccef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"version bump"},{"commit":"9181d242aaed5219bb35fde01d672be88949cceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"bump version"},{"commit":"d6f94c53a4df84fb75554605477e49536a809dc2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"]},"message":"fix blank output case in ls"},{"commit":"a9294f32a00709737d0b82ff434a311e75ad0bed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":39,"deletions":42,"files":["changelog.txt","jc/parsers/ls.py","setup.py"]},"message":"ls fixes"},{"commit":"4d93b38fe47329e3175025878e87f7c963061f98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":90,"deletions":1,"files":["README.md","jc/parsers/route.py"]},"message":"add route documentation"},{"commit":"77b74c550795f96b808e48a9b0bfd1a8af9866f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"add route parser"},{"commit":"51a1d3e6f48cf7084267be4092f0dd3f778dcef3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump"},{"commit":"2eba30422b44f648c7356a44cbff7416c6648f19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"]},"message":"skip first line"},{"commit":"43ed09ce5ba53261dfd7ef50a2e187cb524c416c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":25,"deletions":1,"files":["jc/jc.py","jc/parsers/route.py","setup.py"]},"message":"add route parser"},{"commit":"367ab54f94bf7f456377ec9d20f8daf99dbdc1ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":99,"deletions":2,"files":["README.md","changelog.txt","jc/parsers/ps.py"]},"message":"formatting"},{"commit":"4f552e370e656cc1882a7dae231475a016f8aa14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/ps.py"]},"message":"acknowledgment"},{"commit":"7571139f7980f6e74c29d46971881e82ab0f04bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"bump version"},{"commit":"8ec1bec31711d2ef487da3e4a29a842d98d77626","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":29,"deletions":7,"files":["changelog.txt","jc/__init__.py","jc/jc.py","jc/parsers/ps.py"]},"message":"add ps parser"},{"commit":"c04895407f203aa0a3a080d5242faf8f6889ae41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["changelog.txt","jc/parsers/netstat.py"]},"message":"ubuntu fixes"},{"commit":"cec73d61310591e4890605f61dc5c1bef5808ec4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":24,"deletions":16,"files":["jc/jc.py","jc/parsers/ifconfig.py","jc/parsers/ls.py","jc/parsers/netstat.py"]},"message":"linting"},{"commit":"756c2bc9acd60111281b76085a40778e51ca06cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":3,"files":["README.md"]},"message":"add acknowledgments"},{"commit":"084048987c7afc6516f69e68d37d73b2402dc7f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"02d97394dd76a8782e6e7d3f8a85e1aed05e796b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"177f948f9740e3e33449b04b9136a346c9a2c265","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version update"},{"commit":"c2b013150ec1f1b1ab7d416f1aa8a62165a5bb95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["changelog.txt"]},"message":"add changelog"},{"commit":"0bec67c29ce5d965271440da41a0c4b4c2a1f0fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/netstat.py"]},"message":"double quotes to single quotes"},{"commit":"8073d15fe11546a17cacd81409e255bb8aecd602","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":4,"files":["README.md"]},"message":"readme update"},{"commit":"3b74afc39e58f801e75b7105e521c1469d30f991","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["pypi-upload.sh"]},"message":"upload script"},{"commit":"ed320cf0f4bb11cee1e69e9dc9176ba109df1b86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":22,"deletions":22,"files":["README.md","jc/parsers/netstat.py","setup.py"]},"message":"change netstat pid field to integer"},{"commit":"021b6924e24e1cf0f971246244b174cd3181c0a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":254,"deletions":5,"files":["README.md","jc/parsers/netstat.py"]},"message":"documentation updates"},{"commit":"5fb21b077662f1cb172741945ba5036e5a280638","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":8,"files":["jc/parsers/netstat.py"]},"message":"remove debug print statements"},{"commit":"7b8540ae2a60f2400fe672a022ee00d1415a3500","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":7,"files":["jc/parsers/netstat.py"]},"message":"netstat fixes"},{"commit":"a5e039d4c2e07d52a0797833685c562ab285b49b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":17,"deletions":7,"files":["jc/parsers/netstat.py"]},"message":"netstat debugging"},{"commit":"7071f60a302b7aefb8fb312699b0abec25548986","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":66,"deletions":18,"files":["jc/parsers/netstat.py"]},"message":"netstat mvp"},{"commit":"0de1dff0253eb46b7336103f62f888940406ccc0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["jc/parsers/netstat.py"]},"message":"fix ands"},{"commit":"b3c52eb1ccf82e899dda62c332c0b217d80eb4c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":112,"deletions":40,"files":["jc/parsers/ifconfig.py","jc/parsers/netstat.py"]},"message":"add netstat parser"},{"commit":"366c5dbc010869bdb1d3b9d852e10510bd5c266f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/jc.py"]},"message":"fix help message"},{"commit":"a3ee02514b5fbd43a38ddf515a4aad49bb4e161a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/jc.py"]},"message":"fix imports and module names"},{"commit":"46ad1269cb58dc6f064d17eb0b04da62d8fd5fce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":3,"files":["jc/jc.py","setup.py"]},"message":"packaging fixes"},{"commit":"7234afe568818678585ac423649a0ccce0f45d68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"entrypoint fix"},{"commit":"caf480c63aacb518805d48fba0fd454959d11023","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"module fix"},{"commit":"62851b48d5e5cd673e630a28996e1c24cc45aa58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/jc.py","setup.py"]},"message":"fix modules"},{"commit":"46d6da92f0e196e150ab9dd44b1ba290c950905b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["jc/{jc => jc.py}","setup.py"]},"message":"fix entry_points"},{"commit":"e572b2edfa993c5049ef3caeda7a8e4797f0c751","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":37,"deletions":29,"files":["jc/jc","setup.py"]},"message":"use entry_points instead of scripts"},{"commit":"72c69e7de59029d623c9819dda6aa8cae91bc419","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/jc"]},"message":"fix package paths"},{"commit":"4d1565071e5cf7c38e026e08db8f4d2e79969691","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["jc/{jc.py => jc}","setup.py"]},"message":"rename jc.py to jc"},{"commit":"3652e51693d7ba829f4699fd80de20856941d82f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"fix requirements"},{"commit":"49ce9f13e817266659400a8c19f5b078a48589df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":17,"deletions":20,"files":["jc/jc.py","jc/parsers/__init__.py","setup.py"]},"message":"setup updates"},{"commit":"e83170b7ec7ed2123bfde69be263b6034c7afa53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["README.md"]},"message":"readme update"},{"commit":"ffb6eb754a87baad5fb0558e30a5bca1a9b9e0a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/parsers/__init__.py","setup.py"]},"message":"setup fixes"},{"commit":"2597a18d95d01109d2250487b7550a501edaf77b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":82,"deletions":0,"files":["README.md"]},"message":"readme update"},{"commit":"3e576250b1bfe1c62c556f2fa0425103b0ede1f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":429,"deletions":0,"files":[".gitignore","LICENSE.md","README.md","build-package.sh","jc/__init__.py","jc/jc.py","jc/parsers/__init__.py","jc/parsers/ifconfig.py","jc/parsers/ls.py","jc/parsers/netstat.py","setup.py"]},"message":"First commit"}] +[{"commit":"096fffdb79807d34b99985b38df0a3df7f6a86c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":120,"deletions":36,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":78},{"name":"jc/parsers/git_log.py","lines_changed":78}]},"message":"use stat examples"},{"commit":"728d882ed007b3c8b785018874a0eb06e1143b66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":90,"deletions":12,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":51},{"name":"jc/parsers/git_log.py","lines_changed":51}]},"message":"add timestamp docs and examples"},{"commit":"b53e42aca623181aa9bc72194e6eeef1e9a3a237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":29,"deletions":6,"files":["docs/parsers/git_log.md","docs/utils.md","jc/parsers/git_log.py","jc/utils.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":8},{"name":"docs/utils.md","lines_changed":4},{"name":"jc/parsers/git_log.py","lines_changed":14},{"name":"jc/utils.py","lines_changed":7},{"name":"man/jc.1","lines_changed":2}]},"message":"add calculated timestamp"},{"commit":"477329ce5b8f5c2a8e4384ba3f59289fc18c957d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add linefeed to version text"},{"commit":"283dc4efd55030188f17c7e1dfbc5315103494b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["CHANGELOG","jc/cli.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/cli.py","lines_changed":7}]},"message":"add python interpreter version and path to -v and -a output"},{"commit":"d490bbcaa0291a691b95fa5b61807eebb0b088eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":26,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":52}]},"message":"normalize add/update"},{"commit":"f49ddf8e5c5009702155fc62d83c63e3c08c594d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":4},{"name":"jc/parsers/git_log.py","lines_changed":4}]},"message":"doc update"},{"commit":"e1e341652b51b823844e76ef7e68f9373a323435","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"doc update"},{"commit":"ecda667549137bed5622cca69f2022e7a75ea833","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":8,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":2},{"name":"jc/parsers/git_log.py","lines_changed":18}]},"message":"process integers"},{"commit":"a0d96a188a9f875b2d59625aa97d4f80bba290f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":1,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"doc update"},{"commit":"6c0f0cddfe4dd2d5169f7c55416c6725912557f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":1,"files":["jc/parsers/yaml.py","tests/test_yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":7},{"name":"tests/test_yaml.py","lines_changed":8}]},"message":"fix for datetime objects in yaml files"},{"commit":"c7173ecd89742c8cf8a7bc4a8021baac5c3cd483","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":6,"files":["jc/parsers/git_log.py"],"file_stats":[{"name":"jc/parsers/git_log.py","lines_changed":14}]},"message":"fix mypy issues"},{"commit":"e98240c905394e3ebd6a45fa31b6d432c150afc4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/git_log.py"],"file_stats":[{"name":"jc/parsers/git_log.py","lines_changed":8}]},"message":"extend instead of append list"},{"commit":"6cb7e25974b11afe57d7d0e8550b3b1a56b14c67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":93,"deletions":1,"files":["README.md","docs/parsers/git_log.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/git_log.md","lines_changed":86},{"name":"man/jc.1","lines_changed":7}]},"message":"add docs"},{"commit":"c37980c05c7fbd4f811ce5fcfcfddaf5f3ab5414","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":41,"deletions":7,"files":["jc/parsers/git_log.py"],"file_stats":[{"name":"jc/parsers/git_log.py","lines_changed":48}]},"message":"add stat support"},{"commit":"b5943bd39d776fc4c3b3dea03c0f3d4b6f4bb260","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":10,"files":["jc/parsers/git_log.py"],"file_stats":[{"name":"jc/parsers/git_log.py","lines_changed":33}]},"message":"initial docstring"},{"commit":"49a3a7db3b2b0b292489a41691c9dcbce816cfed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":175,"deletions":0,"files":["jc/lib.py","jc/parsers/git_log.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/git_log.py","lines_changed":174}]},"message":"initial git-log parser"},{"commit":"0c55240e9da30ac4293cc324f1094de2abd3da91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":0,"files":["CHANGELOG","tests/{ => templates}/_test_foo.py","tests/{ => templates}/_test_foo_s.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"tests/{ => templates}/_test_foo.py","lines_changed":0},{"name":"tests/{ => templates}/_test_foo_s.py","lines_changed":0}]},"message":"move test templates to fix test failures on some systems"},{"commit":"f91988aed5499d25acf7a7e87b2b0d0cd37b62af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/lib.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":2}]},"message":"iterator -> iterable"},{"commit":"3c3ad9fc6adf865b3814a1f03814d0bc17d1c6bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"iterator -> iterable in doc"},{"commit":"291ab79e22a59cb31814e7a5af9dbc9f2ec863e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":24,"deletions":24,"files":["README.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":24},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":22}]},"message":"fix arch linux command"},{"commit":"e6d5892c146762cd41a966adadb77db333d98ace","merge":"c0414e7 dcca7a5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #226 from kellyjonbrazil/master\n\nsync to dev"},{"commit":"dcca7a57d558721a61fbba44f07b1d53116827e1","merge":"7138eef 4ee8a69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #225 from adrianteri/patch-1\n\nUpdate README"},{"commit":"4ee8a69337b24e199983fe657643abcb0a56a8e6","author":"003","author_email":"adriateri@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"Update README\n\nSpecify the Arch package is in the AUR and NOT in the standard Archlinux repositories."},{"commit":"c0414e7db7f5d785b72ad616517f2ec63af151a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":8}]},"message":"clean up background tasks"},{"commit":"a419175fe6dffe9c5fd20cfbd82ee552bc82a993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":34,"deletions":17,"files":["docgen.sh","updatedocs.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":30},{"name":"updatedocs.sh","lines_changed":21}]},"message":"enhance parallelization"},{"commit":"cd6dead034f3c72aebd22afeb2aea6591ae6d94d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"man page update"},{"commit":"45342ea9fea29947d8d90260c7665ffbca612cce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":16,"deletions":9,"files":["docgen.sh","updatedocs.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":16},{"name":"updatedocs.sh","lines_changed":9}]},"message":"parallelize doc gneration"},{"commit":"585bf0e159c7839869cf3e458938dcc5fa2ceb81","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"xrandr update"},{"commit":"3a860b9babe93d455f68ef21436edf7470d375af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":5,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":4},{"name":"jc/parsers/xrandr.py","lines_changed":8}]},"message":"add rotation field"},{"commit":"269180df77f9ff953b07222e8ae790c7e7a8298e","merge":"e85f11c a1afed8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #223 from anekos/fix/support-rotated-devices\n\nFix/support rotated devices"},{"commit":"a1afed8d95e33fbbc618c7b5778a9faeea2f628f","author":"anekos","author_email":"anekos@snca.net","commit_by":"anekos","commit_by_email":"anekos@snca.net","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["docs/parsers/xrandr.md"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":4}]},"message":"doc update"},{"commit":"e39f150a216e4e184444dfc88a63e0f303e51631","author":"anekos","author_email":"anekos@snca.net","commit_by":"anekos","commit_by_email":"anekos@snca.net","stats":{"files_changed":3,"insertions":9,"deletions":4,"files":["jc/parsers/xrandr.py","tests/fixtures/generic/xrandr_simple.json","tests/test_xrandr.py"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":4},{"name":"tests/fixtures/generic/xrandr_simple.json","lines_changed":1},{"name":"tests/test_xrandr.py","lines_changed":8}]},"message":"Support rotated devices"},{"commit":"e85f11c6fcad5461bae612dd5a945c20d300e59a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":12,"deletions":12,"files":["docs/parsers/ini.md","docs/parsers/kv.md","jc/parsers/ini.py","jc/parsers/kv.py"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":6},{"name":"docs/parsers/kv.md","lines_changed":6},{"name":"jc/parsers/ini.py","lines_changed":6},{"name":"jc/parsers/kv.py","lines_changed":6}]},"message":"doc formatting"},{"commit":"49a9d7b07e89696f2e022655d7256b7d6ad4bf7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":12,"deletions":8,"files":["docs/parsers/ini.md","docs/parsers/kv.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":8},{"name":"docs/parsers/kv.md","lines_changed":10},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"a2ef9c429e4bb9f70d033511dce77ccdb9013971","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":38,"deletions":8,"files":["jc/parsers/ini.py","jc/parsers/kv.py","tests/test_ini.py","tests/test_kv.py"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":12},{"name":"jc/parsers/kv.py","lines_changed":10},{"name":"tests/test_ini.py","lines_changed":12},{"name":"tests/test_kv.py","lines_changed":12}]},"message":"allow duplicate keys"},{"commit":"d5e9074f1c8facb3f15b8c41a008917178626978","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/lib.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/lib.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"774699f085d97f22ae2dab0cf64d72aa1e1709f7","merge":"789f073 7138eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #220 from kellyjonbrazil/master\n\nsync to dev"},{"commit":"7138eef3d137bc64286d4af453d8d4e7b3f4408d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"docs/parsers/asciitable_m.md","lines_changed":6},{"name":"jc/parsers/asciitable_m.py","lines_changed":6}]},"message":"fix newline chars in doc"},{"commit":"fad5e544aa9e57d31473190e196f59c616901207","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":2},{"name":"jc/parsers/asciitable.py","lines_changed":2}]},"message":"formatting"},{"commit":"64757e2cf55448bccfbbd60d31930ab3f59af21b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":12},{"name":"jc/parsers/asciitable.py","lines_changed":12}]},"message":"doc formatting"},{"commit":"e05be3f08beae1b600fc55a3a7b4e28163e15bc0","merge":"ac61e9a 789f073","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #213 from kellyjonbrazil/dev\n\nDev v1.18.6"},{"commit":"789f0735dfd63e728b8716d97cf0c6045ede5011","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"doc update"},{"commit":"34bc7753174be28d6c1a00dadc662bc374e554c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"38de059a1bc285c8681086d9fb43d0d23ac01d49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":3,"files":["docs/parsers/asciitable.md","docs/parsers/universal.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":6},{"name":"docs/parsers/universal.md","lines_changed":4},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"304ae6268f4dff6e6f901628e7ff89db1d6e0767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":12}]},"message":"minor optimization by changing the expression order"},{"commit":"978caf45221188a29c0e67147804f20f317c066d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["jc/parsers/asciitable.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":26}]},"message":"minor optimization by reordering expressions"},{"commit":"17df5bfcfc25f226a2976aa7ab8a80e4aaa915c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":2,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":10},{"name":"jc/parsers/asciitable_m.py","lines_changed":4}]},"message":"cache _is_separator function"},{"commit":"5e6a5068cff71b3b30525d0a12868bdf6551456c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":2,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":8}]},"message":"allow iterables for simple table parser"},{"commit":"619de68a61be0117e635032347dde417d77c748c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":9,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":7},{"name":"jc/parsers/asciitable_m.py","lines_changed":10}]},"message":"formatting"},{"commit":"6748c3cc91f90bddea3d07b8b30a049ee55eaf35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":65,"deletions":61,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":52},{"name":"jc/parsers/asciitable_m.py","lines_changed":74}]},"message":"remove lines from corner detection and add rounded corners"},{"commit":"0a462978b731770d1290187a502706c2322f5f91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":101,"deletions":3,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py","tests/test_asciitable.py","tests/test_asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":25},{"name":"jc/parsers/asciitable_m.py","lines_changed":8},{"name":"tests/test_asciitable.py","lines_changed":43},{"name":"tests/test_asciitable_m.py","lines_changed":28}]},"message":"fix for special characters in headers"},{"commit":"e66a82ff49b40a674f9ef373a12d59fc71bfa730","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":5,"files":["CHANGELOG","jc/parsers/asciitable_m.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":5},{"name":"jc/parsers/asciitable_m.py","lines_changed":4},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"f3aa797d96c8e2cef2124dbb2f49d1fadaee3fa2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":69,"deletions":9,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":43},{"name":"jc/parsers/asciitable_m.py","lines_changed":35}]},"message":"add more pretty table separators"},{"commit":"e5b478218c4ba3781afd085056dba888c3f6ae02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_xrandr.py"],"file_stats":[{"name":"tests/test_xrandr.py","lines_changed":6}]},"message":"add quiet=True to parse tests"},{"commit":"35e0e9c32afbc5450c661bcb3a23904d135358ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":1}]},"message":"remove print statement"},{"commit":"17c3c2f029a0a47eb02d681567619d471b99949c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":58,"deletions":2,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py","tests/test_asciitable.py","tests/test_asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":3},{"name":"jc/parsers/asciitable_m.py","lines_changed":2},{"name":"tests/test_asciitable.py","lines_changed":31},{"name":"tests/test_asciitable_m.py","lines_changed":24}]},"message":"add bold bar seperator and ANSI code tests"},{"commit":"cf83e6398b3314b233581eb313510872177de20a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":0,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":4},{"name":"jc/parsers/asciitable_m.py","lines_changed":3}]},"message":"add fancy separators"},{"commit":"94e061b881e2ed28d2b462ad038e5ba77182b6c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":275,"deletions":0,"files":["tests/test_asciitable.py"],"file_stats":[{"name":"tests/test_asciitable.py","lines_changed":275}]},"message":"add asciitable parser tests"},{"commit":"720480e39ce3cc2079d7f4f5bcff2725081fec34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":10,"deletions":2,"files":["docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":3},{"name":"docs/parsers/asciitable_m.md","lines_changed":3},{"name":"jc/parsers/asciitable.py","lines_changed":3},{"name":"jc/parsers/asciitable_m.py","lines_changed":3}]},"message":"doc update"},{"commit":"82a63fe15922456853aa4597aa10a5a02b20bdef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":8,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":7},{"name":"jc/parsers/asciitable.py","lines_changed":7}]},"message":"doc update"},{"commit":"9c1ec9940e68ce9848da20e81b8c0b7e35a215df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":82,"deletions":14,"files":["docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":44},{"name":"docs/parsers/asciitable_m.md","lines_changed":4},{"name":"jc/parsers/asciitable.py","lines_changed":44},{"name":"jc/parsers/asciitable_m.py","lines_changed":4}]},"message":"doc update"},{"commit":"f23f19da453a0f7bcf70e417a10f87e27571aa43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":122,"deletions":9,"files":["README.md","docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/asciitable.md","lines_changed":97},{"name":"docs/parsers/asciitable_m.md","lines_changed":4},{"name":"jc/parsers/asciitable_m.py","lines_changed":24},{"name":"man/jc.1","lines_changed":5}]},"message":"doc update"},{"commit":"aea2e1b0a9c6bb2a02a6e73889bb04e8f4f22588","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["tests/test_asciitable_m.py"],"file_stats":[{"name":"tests/test_asciitable_m.py","lines_changed":48}]},"message":"fix tests so blank strings are now None"},{"commit":"7d95d679bf4093ea77f30a1be55384b6dbf08341","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":212,"deletions":1,"files":["jc/lib.py","jc/parsers/asciitable.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2},{"name":"jc/parsers/asciitable.py","lines_changed":211}]},"message":"add asciitable parser"},{"commit":"b3b140066b74ee31dd1c460502caf2f26df321b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"docs/parsers/asciitable_m.md","lines_changed":4},{"name":"jc/parsers/asciitable_m.py","lines_changed":4}]},"message":"doc update"},{"commit":"b204c423c1b947c17cb251a5dd3c444cd71dd2c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":193,"deletions":15,"files":["README.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/asciitable_m.md","lines_changed":122},{"name":"jc/parsers/asciitable_m.py","lines_changed":78},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update"},{"commit":"d451c309bb0d8889dc09a698212bf01c2154a582","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":8,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":19}]},"message":"change multiple or statements to any()"},{"commit":"01d53da68ed04b736934851137c59216ad02d8c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":1}]},"message":"remove debug print"},{"commit":"53dd05e52c329a15c30a756a36a165ac59ef8a14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":29,"deletions":1,"files":["jc/parsers/asciitable_m.py","tests/test_asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":3},{"name":"tests/test_asciitable_m.py","lines_changed":27}]},"message":"fix rstrip and add tests"},{"commit":"ab564f5be8282f1c7ee2d602bcef398fdfd4570f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":237,"deletions":1,"files":["jc/parsers/asciitable_m.py","tests/test_asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":16},{"name":"tests/test_asciitable_m.py","lines_changed":222}]},"message":"add tests"},{"commit":"00c39450f9878527b60545ad61c04cfb98f418dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":2}]},"message":"enhance type annotation"},{"commit":"f611d08b50219f4e573c1d1f0beae27583e76432","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":5}]},"message":"formatting"},{"commit":"90e79b7df3a4d5b37835fdf1c2debc1bad0a40b9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":2}]},"message":"formatting"},{"commit":"4eb2d725d5fe6f2cc7935c7dc891912cf7b8e940","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":2}]},"message":"formatting"},{"commit":"51ae5ebcac7263ef2571c11975b275eff352bbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":148,"deletions":175,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":323}]},"message":"new streamlined parser"},{"commit":"9ecbdb09162da4d563799aa93d422db85b2c324b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":35,"deletions":30,"files":["docs/parsers/mpstat_s.md","docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","docs/parsers/universal.md","jc/parsers/foo_s.py","jc/parsers/mpstat_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"docs/parsers/mpstat_s.md","lines_changed":10},{"name":"docs/parsers/pidstat_s.md","lines_changed":10},{"name":"docs/parsers/rsync_s.md","lines_changed":10},{"name":"docs/parsers/universal.md","lines_changed":19},{"name":"jc/parsers/foo_s.py","lines_changed":4},{"name":"jc/parsers/mpstat_s.py","lines_changed":4},{"name":"jc/parsers/pidstat_s.py","lines_changed":4},{"name":"jc/parsers/rsync_s.py","lines_changed":4}]},"message":"use generator instead of iterable in function return annotation"},{"commit":"b3a2886fd0af0cd06890f37f1edfc6890bb83e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["docs/lib.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":3}]},"message":"formatting"},{"commit":"ceacec0f462bd7c2d9e92ddb9029ccd71aef481c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":1}]},"message":"remove errant os sep import"},{"commit":"ff0f794b01395ed9b65fac75a6b07f0772d45a2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":32,"deletions":10,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":42}]},"message":"working"},{"commit":"70fafbf3f80f35c5db2c306978b2a488adad40bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"remove asciitable so tests pass for now"},{"commit":"5a248a8fc58952a5eab3d4aac025d7422ba82d08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":344,"deletions":0,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":344}]},"message":"add multiline asciitable parser"},{"commit":"4a3a4e10df8a552a4db3510640695f02b166dc40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":4,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":7}]},"message":"add asciitable and asciitable-m parsers"},{"commit":"c27bd5ff39f21c6377e661d4d7de1200d2fdd72f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":16,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":39}]},"message":"pad lines in sparse_table_parse and use str.isspace()"},{"commit":"f804c9627fb71341429ca80aec2887e23e0277db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":1}]},"message":"copy input list so we don't mutate the caller's data"},{"commit":"3ab25d02f9dc248706aa1105e1766b2a84bc55a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"use _parser_is_streaming from lib"},{"commit":"9e80fd2b97b9bfe38fdaa6acdf2e8ed26d34b49d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":11,"files":["jc/cli.py","jc/lib.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":21},{"name":"jc/lib.py","lines_changed":5}]},"message":"fallback if info and doc items don't exist"},{"commit":"ff9527a098a94c996641fb3fe2f905c8ae5e3063","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":13,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":22}]},"message":"import cleanup and use all_parser_info in parsers_text"},{"commit":"7dac2f8dc3baf619105e3c6ca4d3e45300b86287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":23,"deletions":9,"files":["docs/lib.md","docs/readme.md","man/jc.1"],"file_stats":[{"name":"docs/lib.md","lines_changed":23},{"name":"docs/readme.md","lines_changed":7},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"32e4d55e86c3e7d94488ec69f13a4f6400c4cef3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":10}]},"message":"use parser_info for help_doc"},{"commit":"f9a9062147256d0949457cc7fde838f87202524d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":27,"deletions":10,"files":["CHANGELOG","jc/__init__.py","jc/lib.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/__init__.py","lines_changed":7},{"name":"jc/lib.py","lines_changed":29}]},"message":"add documentation argument to parser_info and all_parser_info"},{"commit":"89e5919796f7da585285901dca461aae21336415","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/mpstat_s.md","jc/parsers/mpstat_s.py"],"file_stats":[{"name":"docs/parsers/mpstat_s.md","lines_changed":2},{"name":"jc/parsers/mpstat_s.py","lines_changed":2}]},"message":"add -A to second example"},{"commit":"e5f5b2591d8ac3abeb9571688c7fb8de34d647f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"changelog update"},{"commit":"77c667eec045daff5cbd062fe9d6e83f237727e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":67,"deletions":6,"files":["docs/parsers/mpstat.md","docs/parsers/mpstat_s.md","jc/parsers/mpstat.py","jc/parsers/mpstat_s.py","tests/fixtures/ubuntu-18.04/mpstat-A-streaming.json","tests/fixtures/ubuntu-18.04/mpstat-A.json","tests/fixtures/ubuntu-18.04/mpstat-A.out","tests/test_mpstat.py","tests/test_mpstat_s.py"],"file_stats":[{"name":"docs/parsers/mpstat.md","lines_changed":2},{"name":"docs/parsers/mpstat_s.md","lines_changed":2},{"name":"jc/parsers/mpstat.py","lines_changed":12},{"name":"jc/parsers/mpstat_s.py","lines_changed":12},{"name":"tests/fixtures/ubuntu-18.04/mpstat-A-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/mpstat-A.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/mpstat-A.out","lines_changed":19},{"name":"tests/test_mpstat.py","lines_changed":12},{"name":"tests/test_mpstat_s.py","lines_changed":12}]},"message":"ubuntu fixes"},{"commit":"b257ce8c2fe6825fe435b4d04b4184091030db10","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":65,"deletions":0,"files":[".../centos-7.7/mpstat-A-2-5-streaming.json","tests/fixtures/centos-7.7/mpstat-A-streaming.json","tests/fixtures/centos-7.7/mpstat-streaming.json","tests/test_mpstat_s.py"],"file_stats":[{"name":".../centos-7.7/mpstat-A-2-5-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat-A-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat-streaming.json","lines_changed":1},{"name":"tests/test_mpstat_s.py","lines_changed":62}]},"message":"add mpstat_s tests"},{"commit":"c693c868cacbcd81f44fd383719723dd7a137c87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":352,"deletions":0,"files":["README.md","docs/parsers/mpstat.md","docs/parsers/mpstat_s.md","jc/lib.py","jc/parsers/mpstat.py","jc/parsers/mpstat_s.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/mpstat.md","lines_changed":2},{"name":"docs/parsers/mpstat_s.md","lines_changed":130},{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/mpstat.py","lines_changed":2},{"name":"jc/parsers/mpstat_s.py","lines_changed":211},{"name":"man/jc.1","lines_changed":5}]},"message":"add mpstat streaming parser"},{"commit":"6f98b27a05d6e1f7571a97316b193f096521b959","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":168,"deletions":0,"files":["tests/fixtures/centos-7.7/mpstat-A-2-5.json","tests/fixtures/centos-7.7/mpstat-A-2-5.out","tests/fixtures/centos-7.7/mpstat-A.json","tests/fixtures/centos-7.7/mpstat-A.out","tests/fixtures/centos-7.7/mpstat.json","tests/fixtures/centos-7.7/mpstat.out","tests/test_mpstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/mpstat-A-2-5.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat-A-2-5.out","lines_changed":86},{"name":"tests/fixtures/centos-7.7/mpstat-A.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat-A.out","lines_changed":15},{"name":"tests/fixtures/centos-7.7/mpstat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat.out","lines_changed":5},{"name":"tests/test_mpstat.py","lines_changed":59}]},"message":"add mpstat tests"},{"commit":"d7efd25d88a8f489564ce48223845a16e4ab1cc7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":207,"deletions":1,"files":["EXAMPLES.md","README.md","docs/parsers/mpstat.md","man/jc.1"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":64},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/mpstat.md","lines_changed":136},{"name":"man/jc.1","lines_changed":7}]},"message":"add mpstat to docs"},{"commit":"2cddb1f0bb497be0be071cdcb56bf49d2dafc920","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":94,"deletions":15,"files":["jc/parsers/mpstat.py"],"file_stats":[{"name":"jc/parsers/mpstat.py","lines_changed":109}]},"message":"working mpstat"},{"commit":"ae1c331595dd857d8ae7f8cf93daee1b26be2c3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":30,"deletions":5,"files":["jc/parsers/mpstat.py"],"file_stats":[{"name":"jc/parsers/mpstat.py","lines_changed":35}]},"message":"initial working version"},{"commit":"bc97052ed4ee3bf3f25127968139f2e89a659fe3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":109,"deletions":0,"files":["CHANGELOG","jc/lib.py","jc/parsers/mpstat.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/mpstat.py","lines_changed":107}]},"message":"initial add mpstat parser"},{"commit":"6c3e0e2aa0e8cc375d9f7473930b18957d33f1aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"formatting"},{"commit":"dd052e01469e9e3328f7326d3591365a8e7322eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":26,"deletions":24,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":25},{"name":"jc/parsers/universal.py","lines_changed":25}]},"message":"add underscores to column examples"},{"commit":"54e8f58145f6c4332fbd375d112259ea7abb2d72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":28,"deletions":2,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":15},{"name":"jc/parsers/universal.py","lines_changed":15}]},"message":"add table result examples"},{"commit":"def7aa5764e69cd0cf2c5b70aa62c62023f76c9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":16,"deletions":16,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":16},{"name":"jc/parsers/universal.py","lines_changed":16}]},"message":"formatting"},{"commit":"6986c74f6dceca907ea2e469a332deeb093a122c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":169,"insertions":34,"deletions":837,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/pidstat.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/nmcli.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/pidstat.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/xrandr.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":5},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iostat.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jar_manifest.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/nmcli.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/pidstat.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/rsync.md","lines_changed":5},{"name":"docs/parsers/sfdisk.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/systeminfo.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"docs/parsers/ufw.md","lines_changed":5},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/universal.md","lines_changed":18},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/vmstat.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/xrandr.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5},{"name":"docs/parsers/zipinfo.md","lines_changed":5},{"name":"jc/parsers/acpi.py","lines_changed":5},{"name":"jc/parsers/airport.py","lines_changed":5},{"name":"jc/parsers/airport_s.py","lines_changed":5},{"name":"jc/parsers/arp.py","lines_changed":5},{"name":"jc/parsers/blkid.py","lines_changed":5},{"name":"jc/parsers/cksum.py","lines_changed":5},{"name":"jc/parsers/crontab.py","lines_changed":5},{"name":"jc/parsers/crontab_u.py","lines_changed":5},{"name":"jc/parsers/csv.py","lines_changed":5},{"name":"jc/parsers/date.py","lines_changed":5},{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":5},{"name":"jc/parsers/dir.py","lines_changed":5},{"name":"jc/parsers/dmidecode.py","lines_changed":5},{"name":"jc/parsers/dpkg_l.py","lines_changed":5},{"name":"jc/parsers/du.py","lines_changed":5},{"name":"jc/parsers/env.py","lines_changed":5},{"name":"jc/parsers/file.py","lines_changed":5},{"name":"jc/parsers/finger.py","lines_changed":5},{"name":"jc/parsers/foo.py","lines_changed":5},{"name":"jc/parsers/free.py","lines_changed":5},{"name":"jc/parsers/fstab.py","lines_changed":5},{"name":"jc/parsers/group.py","lines_changed":5},{"name":"jc/parsers/gshadow.py","lines_changed":5},{"name":"jc/parsers/hash.py","lines_changed":5},{"name":"jc/parsers/hashsum.py","lines_changed":5},{"name":"jc/parsers/hciconfig.py","lines_changed":5},{"name":"jc/parsers/history.py","lines_changed":5},{"name":"jc/parsers/hosts.py","lines_changed":5},{"name":"jc/parsers/id.py","lines_changed":5},{"name":"jc/parsers/ifconfig.py","lines_changed":5},{"name":"jc/parsers/ini.py","lines_changed":5},{"name":"jc/parsers/iostat.py","lines_changed":5},{"name":"jc/parsers/iptables.py","lines_changed":5},{"name":"jc/parsers/iw_scan.py","lines_changed":5},{"name":"jc/parsers/jar_manifest.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":5},{"name":"jc/parsers/kv.py","lines_changed":5},{"name":"jc/parsers/last.py","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":5},{"name":"jc/parsers/lsblk.py","lines_changed":5},{"name":"jc/parsers/lsmod.py","lines_changed":5},{"name":"jc/parsers/lsof.py","lines_changed":5},{"name":"jc/parsers/lsusb.py","lines_changed":5},{"name":"jc/parsers/mount.py","lines_changed":5},{"name":"jc/parsers/netstat.py","lines_changed":5},{"name":"jc/parsers/nmcli.py","lines_changed":5},{"name":"jc/parsers/ntpq.py","lines_changed":5},{"name":"jc/parsers/passwd.py","lines_changed":5},{"name":"jc/parsers/pidstat.py","lines_changed":5},{"name":"jc/parsers/ping.py","lines_changed":5},{"name":"jc/parsers/pip_list.py","lines_changed":5},{"name":"jc/parsers/pip_show.py","lines_changed":5},{"name":"jc/parsers/ps.py","lines_changed":5},{"name":"jc/parsers/route.py","lines_changed":5},{"name":"jc/parsers/rpm_qi.py","lines_changed":5},{"name":"jc/parsers/rsync.py","lines_changed":5},{"name":"jc/parsers/sfdisk.py","lines_changed":5},{"name":"jc/parsers/shadow.py","lines_changed":5},{"name":"jc/parsers/ss.py","lines_changed":5},{"name":"jc/parsers/stat.py","lines_changed":5},{"name":"jc/parsers/sysctl.py","lines_changed":5},{"name":"jc/parsers/systemctl.py","lines_changed":5},{"name":"jc/parsers/systemctl_lj.py","lines_changed":5},{"name":"jc/parsers/systemctl_ls.py","lines_changed":5},{"name":"jc/parsers/systemctl_luf.py","lines_changed":5},{"name":"jc/parsers/systeminfo.py","lines_changed":5},{"name":"jc/parsers/time.py","lines_changed":5},{"name":"jc/parsers/timedatectl.py","lines_changed":5},{"name":"jc/parsers/tracepath.py","lines_changed":5},{"name":"jc/parsers/traceroute.py","lines_changed":5},{"name":"jc/parsers/ufw.py","lines_changed":5},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":5},{"name":"jc/parsers/uname.py","lines_changed":5},{"name":"jc/parsers/universal.py","lines_changed":18},{"name":"jc/parsers/upower.py","lines_changed":5},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/vmstat.py","lines_changed":5},{"name":"jc/parsers/w.py","lines_changed":5},{"name":"jc/parsers/wc.py","lines_changed":5},{"name":"jc/parsers/who.py","lines_changed":5},{"name":"jc/parsers/xml.py","lines_changed":5},{"name":"jc/parsers/xrandr.py","lines_changed":5},{"name":"jc/parsers/yaml.py","lines_changed":5},{"name":"jc/parsers/zipinfo.py","lines_changed":5}]},"message":"remove direct parser module example from doc"},{"commit":"b784db404d0569a4c630eb124b37b0b1d0846453","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":17,"insertions":87,"deletions":166,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/pidstat_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/pidstat_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":13},{"name":"docs/parsers/iostat_s.md","lines_changed":20},{"name":"docs/parsers/ls_s.md","lines_changed":16},{"name":"docs/parsers/pidstat_s.md","lines_changed":9},{"name":"docs/parsers/ping_s.md","lines_changed":13},{"name":"docs/parsers/rsync_s.md","lines_changed":13},{"name":"docs/parsers/stat_s.md","lines_changed":13},{"name":"docs/parsers/vmstat_s.md","lines_changed":23},{"name":"jc/parsers/csv_s.py","lines_changed":13},{"name":"jc/parsers/foo_s.py","lines_changed":13},{"name":"jc/parsers/iostat_s.py","lines_changed":20},{"name":"jc/parsers/ls_s.py","lines_changed":16},{"name":"jc/parsers/pidstat_s.py","lines_changed":9},{"name":"jc/parsers/ping_s.py","lines_changed":13},{"name":"jc/parsers/rsync_s.py","lines_changed":13},{"name":"jc/parsers/stat_s.py","lines_changed":13},{"name":"jc/parsers/vmstat_s.py","lines_changed":23}]},"message":"streaming doc formatting update"},{"commit":"8aee4517bb4c2eebdd9873f7eb0827cd33b85519","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":26,"files":["docs/parsers/pidstat_s.md","jc/parsers/pidstat_s.py"],"file_stats":[{"name":"docs/parsers/pidstat_s.md","lines_changed":19},{"name":"jc/parsers/pidstat_s.py","lines_changed":19}]},"message":"doc formatting"},{"commit":"a5fb8fbf94b3b80bef82f078ad6582260b13e374","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":17,"insertions":164,"deletions":148,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/pidstat_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/pidstat_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":12},{"name":"docs/parsers/iostat_s.md","lines_changed":14},{"name":"docs/parsers/ls_s.md","lines_changed":14},{"name":"docs/parsers/pidstat_s.md","lines_changed":53},{"name":"docs/parsers/ping_s.md","lines_changed":14},{"name":"docs/parsers/rsync_s.md","lines_changed":14},{"name":"docs/parsers/stat_s.md","lines_changed":14},{"name":"docs/parsers/vmstat_s.md","lines_changed":14},{"name":"jc/parsers/csv_s.py","lines_changed":12},{"name":"jc/parsers/foo_s.py","lines_changed":14},{"name":"jc/parsers/iostat_s.py","lines_changed":14},{"name":"jc/parsers/ls_s.py","lines_changed":14},{"name":"jc/parsers/pidstat_s.py","lines_changed":53},{"name":"jc/parsers/ping_s.py","lines_changed":14},{"name":"jc/parsers/rsync_s.py","lines_changed":14},{"name":"jc/parsers/stat_s.py","lines_changed":14},{"name":"jc/parsers/vmstat_s.py","lines_changed":14}]},"message":"streaming doc update"},{"commit":"b9365e2ac28c3eacf53bc101857f7f1d7286ec20","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":74,"deletions":0,"files":[".../centos-7.7/pidstat-hdlrsuw-2-5-streaming.json",".../centos-7.7/pidstat-hdlrsuw-streaming.json",".../fixtures/centos-7.7/pidstat-hl-streaming.json","tests/test_pidstat_s.py"],"file_stats":[{"name":".../centos-7.7/pidstat-hdlrsuw-2-5-streaming.json","lines_changed":1},{"name":".../centos-7.7/pidstat-hdlrsuw-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/pidstat-hl-streaming.json","lines_changed":1},{"name":"tests/test_pidstat_s.py","lines_changed":71}]},"message":"add pidstat-s tests"},{"commit":"696338c1a3d462afbe677a6f2ebe08d06ef4046a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":38,"deletions":0,"files":["tests/_test_foo_s.py"],"file_stats":[{"name":"tests/_test_foo_s.py","lines_changed":38}]},"message":"add streaming test template"},{"commit":"4f0616190bb842411353d65650b78a65d8cbdc28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/pidstat_s.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"3278cb0de301ee542b1fe8245a6c359193373b6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":10,"files":["docs/parsers/arp.md","jc/parsers/arp.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":23}]},"message":"add type hints"},{"commit":"4fc04256a567c502a88ac8a1bd189746387c93f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["jc/parsers/foo_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":4},{"name":"jc/parsers/pidstat_s.py","lines_changed":4},{"name":"jc/parsers/rsync_s.py","lines_changed":4}]},"message":"rollback noReturn to tuple"},{"commit":"e4ae0fea63c0386c1b3239607fd6a58738d23633","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":8,"deletions":8,"files":["docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","jc/parsers/foo_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"docs/parsers/pidstat_s.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":4},{"name":"jc/parsers/pidstat_s.py","lines_changed":4},{"name":"jc/parsers/rsync_s.py","lines_changed":4}]},"message":"fix type annotation"},{"commit":"d3727ea0906d6167aa48c340519242b010469d98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":99,"deletions":1,"files":["CHANGELOG","README.md","docs/parsers/pidstat_s.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/pidstat_s.md","lines_changed":91},{"name":"man/jc.1","lines_changed":5}]},"message":"doc update"},{"commit":"0d13909cf63d14008607c5640d074ab4073115e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":168,"deletions":0,"files":["jc/lib.py","jc/parsers/pidstat_s.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/pidstat_s.py","lines_changed":167}]},"message":"add pidstat-s parser"},{"commit":"c52ca20e285895d2afb685a2a5ca275de7901033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/pidstat.py"],"file_stats":[{"name":"jc/parsers/pidstat.py","lines_changed":2}]},"message":"fix comment"},{"commit":"21f27f26c81c75234221a5193c7d3903323e2032","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":72,"deletions":0,"files":["tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.json","tests/fixtures/centos-7.7/pidstat-hdlrsuw.json","tests/fixtures/centos-7.7/pidstat-hl.json","tests/test_pidstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/pidstat-hdlrsuw.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/pidstat-hl.json","lines_changed":1},{"name":"tests/test_pidstat.py","lines_changed":69}]},"message":"add pidstat tests"},{"commit":"5e7a87f39782d12070a895440ff541800df91b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":35,"deletions":0,"files":["tests/_test_foo.py"],"file_stats":[{"name":"tests/_test_foo.py","lines_changed":35}]},"message":"add test template"},{"commit":"845d763829acd03fff1d2fad6e9691f04bd1a2aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/pidstat.md","jc/parsers/pidstat.py"],"file_stats":[{"name":"docs/parsers/pidstat.md","lines_changed":4},{"name":"jc/parsers/pidstat.py","lines_changed":4}]},"message":"format docs to fit 80 columns"},{"commit":"f5c7d52ec72f5ff4b77d5ac4491f330575b9f10f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":10,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":6},{"name":"templates/manpage_template","lines_changed":6}]},"message":"formatting"},{"commit":"c3198a58744803f52113f80967c7259d781e2328","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":22,"deletions":12,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":17},{"name":"templates/manpage_template","lines_changed":17}]},"message":"formatting"},{"commit":"bbd4afa73542ba6596aed77426bb494fbcf23196","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["README.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"man/jc.1","lines_changed":7}]},"message":"add pidstat to docs"},{"commit":"ae754a84bf5fc35b248bbc5f7b0fa8e871765819","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":263,"deletions":33,"files":["docs/parsers/arp.md","docs/parsers/pidstat.md","jc/parsers/pidstat.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/pidstat.md","lines_changed":156},{"name":"jc/parsers/pidstat.py","lines_changed":138}]},"message":"doc update"},{"commit":"3389eb5debe0f0ba01ece01e20048608bf357e70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":219,"deletions":9,"files":["jc/parsers/pidstat.py","tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.out","tests/fixtures/centos-7.7/pidstat-hdlrsuw.out","tests/fixtures/centos-7.7/pidstat-hl.out"],"file_stats":[{"name":"jc/parsers/pidstat.py","lines_changed":52},{"name":"tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.out","lines_changed":47},{"name":"tests/fixtures/centos-7.7/pidstat-hdlrsuw.out","lines_changed":83},{"name":"tests/fixtures/centos-7.7/pidstat-hl.out","lines_changed":46}]},"message":"initial working parser"},{"commit":"01f2c1e71f87ab401d487be4d6d150cb67c91437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":162,"deletions":2,"files":["CHANGELOG","jc/lib.py","jc/parsers/pidstat.py","setup.py","tests/fixtures/centos-7.7/pidstat.out"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/lib.py","lines_changed":3},{"name":"jc/parsers/pidstat.py","lines_changed":112},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/pidstat.out","lines_changed":44}]},"message":"add pidstat parser"},{"commit":"8bfbf8f1bcd233a8ecd34012e140eb29164ca5fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"simplify error message"},{"commit":"f4242669bac3af5eb196c46d4146823aacec40ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":10,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":12}]},"message":"minor cleanup"},{"commit":"bebd9331f1fb9b80f8cb4a5cfacd68461743004e","merge":"9861983 ac61e9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #211 from kellyjonbrazil/master\n\nsync to dev"},{"commit":"ac61e9ad2c9c4e864db02db04cbf907fb0efd99b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"templates/readme_template","lines_changed":1}]},"message":"add pypi link"},{"commit":"648ef4d8a9c33a36d4bb2c135fe59b031de8f24c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"templates/readme_template","lines_changed":4}]},"message":"update badge links"},{"commit":"727fc9a701e9aae75d3d2b708010da1d0dc8781a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/date.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"306512d6bb53af18516fc10b15c7ec79cb02cc98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":7,"deletions":4,"files":["CHANGELOG","jc/lib.py","jc/parsers/date.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/lib.py","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":4},{"name":"setup.py","lines_changed":2}]},"message":"force AM/PM to uppercase in date parser"},{"commit":"6afb1d389ca9dfd7880386d380fee032b7eb92e2","merge":"961968a 9861983","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #209 from kellyjonbrazil/dev\n\nDev v1.18.4"},{"commit":"98619834818c181cb50a9605fe166b6153c46095","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"ca79053db08542849136ae13fdb4d1d90b79a7e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":2}]},"message":"document pydoc version"},{"commit":"29c263f87810f8566ebdad2358e99896391adfd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":93,"insertions":115,"deletions":115,"files":["docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/streaming.md","docs/utils.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":16},{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/dpkg_l.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/finger.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/gshadow.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iostat.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/jar_manifest.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/kv.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/nmcli.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/rsync.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/stat_s.md","lines_changed":2},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/universal.md","lines_changed":4},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/xrandr.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"docs/parsers/zipinfo.md","lines_changed":2},{"name":"docs/streaming.md","lines_changed":12},{"name":"docs/utils.md","lines_changed":20}]},"message":"pydoc formatting fixes"},{"commit":"128c3c170abc6a702ae044b073fb9d992d4262b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"doc update"},{"commit":"a531ab8864fca27b55d83b55055eaef1c36128cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"formatting"},{"commit":"0c1be7cc11ec75a5738483d68d053e702eb34fc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":18,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":11},{"name":"templates/readme_template","lines_changed":11}]},"message":"reduce dig example size"},{"commit":"e4222b45f54e6179e22d7924c083e4642b9974ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":4}]},"message":"fix names to mod names"},{"commit":"ac32c69c31e8eff22252d7aded08f6cb14622086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":2},{"name":"jc/parsers/universal.py","lines_changed":2}]},"message":"formatting"},{"commit":"cb2dfeac8d44b733ad9d364e8c6d233a381bfae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":199,"insertions":334,"deletions":326,"files":["README.md","docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/streaming.md","docs/utils.md","jc/__init__.py","jc/cli.py","jc/exceptions.py","jc/lib.py","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat_freebsd_osx.py","jc/parsers/netstat_linux.py","jc/parsers/nmcli.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/xrandr.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py","jc/streaming.py","jc/utils.py","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docgen.sh","lines_changed":6},{"name":"docs/lib.md","lines_changed":25},{"name":"docs/parsers/acpi.md","lines_changed":4},{"name":"docs/parsers/airport.md","lines_changed":4},{"name":"docs/parsers/airport_s.md","lines_changed":4},{"name":"docs/parsers/arp.md","lines_changed":4},{"name":"docs/parsers/blkid.md","lines_changed":4},{"name":"docs/parsers/cksum.md","lines_changed":4},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"docs/parsers/crontab_u.md","lines_changed":4},{"name":"docs/parsers/csv.md","lines_changed":4},{"name":"docs/parsers/csv_s.md","lines_changed":4},{"name":"docs/parsers/date.md","lines_changed":4},{"name":"docs/parsers/df.md","lines_changed":4},{"name":"docs/parsers/dig.md","lines_changed":4},{"name":"docs/parsers/dir.md","lines_changed":4},{"name":"docs/parsers/dmidecode.md","lines_changed":4},{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"docs/parsers/du.md","lines_changed":4},{"name":"docs/parsers/env.md","lines_changed":4},{"name":"docs/parsers/file.md","lines_changed":4},{"name":"docs/parsers/finger.md","lines_changed":4},{"name":"docs/parsers/free.md","lines_changed":4},{"name":"docs/parsers/fstab.md","lines_changed":4},{"name":"docs/parsers/group.md","lines_changed":4},{"name":"docs/parsers/gshadow.md","lines_changed":4},{"name":"docs/parsers/hash.md","lines_changed":4},{"name":"docs/parsers/hashsum.md","lines_changed":4},{"name":"docs/parsers/hciconfig.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":4},{"name":"docs/parsers/hosts.md","lines_changed":4},{"name":"docs/parsers/id.md","lines_changed":4},{"name":"docs/parsers/ifconfig.md","lines_changed":4},{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"docs/parsers/iostat.md","lines_changed":4},{"name":"docs/parsers/iostat_s.md","lines_changed":4},{"name":"docs/parsers/iptables.md","lines_changed":4},{"name":"docs/parsers/iw_scan.md","lines_changed":4},{"name":"docs/parsers/jar_manifest.md","lines_changed":4},{"name":"docs/parsers/jobs.md","lines_changed":4},{"name":"docs/parsers/kv.md","lines_changed":4},{"name":"docs/parsers/last.md","lines_changed":4},{"name":"docs/parsers/ls.md","lines_changed":4},{"name":"docs/parsers/ls_s.md","lines_changed":4},{"name":"docs/parsers/lsblk.md","lines_changed":4},{"name":"docs/parsers/lsmod.md","lines_changed":4},{"name":"docs/parsers/lsof.md","lines_changed":4},{"name":"docs/parsers/lsusb.md","lines_changed":4},{"name":"docs/parsers/mount.md","lines_changed":4},{"name":"docs/parsers/netstat.md","lines_changed":4},{"name":"docs/parsers/nmcli.md","lines_changed":4},{"name":"docs/parsers/ntpq.md","lines_changed":4},{"name":"docs/parsers/passwd.md","lines_changed":4},{"name":"docs/parsers/ping.md","lines_changed":4},{"name":"docs/parsers/ping_s.md","lines_changed":4},{"name":"docs/parsers/pip_list.md","lines_changed":4},{"name":"docs/parsers/pip_show.md","lines_changed":4},{"name":"docs/parsers/ps.md","lines_changed":4},{"name":"docs/parsers/route.md","lines_changed":4},{"name":"docs/parsers/rpm_qi.md","lines_changed":4},{"name":"docs/parsers/rsync.md","lines_changed":4},{"name":"docs/parsers/rsync_s.md","lines_changed":9},{"name":"docs/parsers/sfdisk.md","lines_changed":4},{"name":"docs/parsers/shadow.md","lines_changed":4},{"name":"docs/parsers/ss.md","lines_changed":4},{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"docs/parsers/stat_s.md","lines_changed":4},{"name":"docs/parsers/sysctl.md","lines_changed":4},{"name":"docs/parsers/systemctl.md","lines_changed":4},{"name":"docs/parsers/systemctl_lj.md","lines_changed":4},{"name":"docs/parsers/systemctl_ls.md","lines_changed":4},{"name":"docs/parsers/systemctl_luf.md","lines_changed":4},{"name":"docs/parsers/systeminfo.md","lines_changed":4},{"name":"docs/parsers/time.md","lines_changed":4},{"name":"docs/parsers/timedatectl.md","lines_changed":4},{"name":"docs/parsers/tracepath.md","lines_changed":4},{"name":"docs/parsers/traceroute.md","lines_changed":4},{"name":"docs/parsers/ufw.md","lines_changed":4},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":4},{"name":"docs/parsers/uname.md","lines_changed":4},{"name":"docs/parsers/universal.md","lines_changed":6},{"name":"docs/parsers/upower.md","lines_changed":4},{"name":"docs/parsers/uptime.md","lines_changed":4},{"name":"docs/parsers/vmstat.md","lines_changed":4},{"name":"docs/parsers/vmstat_s.md","lines_changed":4},{"name":"docs/parsers/w.md","lines_changed":4},{"name":"docs/parsers/wc.md","lines_changed":4},{"name":"docs/parsers/who.md","lines_changed":4},{"name":"docs/parsers/xml.md","lines_changed":4},{"name":"docs/parsers/xrandr.md","lines_changed":4},{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"docs/parsers/zipinfo.md","lines_changed":4},{"name":"docs/readme.md","lines_changed":2},{"name":"docs/streaming.md","lines_changed":17},{"name":"docs/utils.md","lines_changed":29},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/cli.py","lines_changed":4},{"name":"jc/exceptions.py","lines_changed":2},{"name":"jc/lib.py","lines_changed":2},{"name":"jc/parsers/acpi.py","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/blkid.py","lines_changed":2},{"name":"jc/parsers/cksum.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"jc/parsers/csv.py","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/dir.py","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":2},{"name":"jc/parsers/dpkg_l.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/finger.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/group.py","lines_changed":2},{"name":"jc/parsers/gshadow.py","lines_changed":2},{"name":"jc/parsers/hash.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":2},{"name":"jc/parsers/hciconfig.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/iostat.py","lines_changed":2},{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2},{"name":"jc/parsers/jar_manifest.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/kv.py","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/lsusb.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/netstat_freebsd_osx.py","lines_changed":2},{"name":"jc/parsers/netstat_linux.py","lines_changed":2},{"name":"jc/parsers/nmcli.py","lines_changed":2},{"name":"jc/parsers/ntpq.py","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":2},{"name":"jc/parsers/ping.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/rpm_qi.py","lines_changed":2},{"name":"jc/parsers/rsync.py","lines_changed":2},{"name":"jc/parsers/rsync_s.py","lines_changed":2},{"name":"jc/parsers/sfdisk.py","lines_changed":2},{"name":"jc/parsers/shadow.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/stat_s.py","lines_changed":2},{"name":"jc/parsers/sysctl.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/systeminfo.py","lines_changed":2},{"name":"jc/parsers/time.py","lines_changed":2},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/ufw.py","lines_changed":2},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/universal.py","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/parsers/wc.py","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":2},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/xrandr.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2},{"name":"jc/parsers/zipinfo.py","lines_changed":2},{"name":"jc/streaming.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"templates/manpage_template","lines_changed":2},{"name":"templates/readme_template","lines_changed":4}]},"message":"change name to JSON Convert"},{"commit":"9a3602e70b865a3015bd700b30d1076e17511a9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":4},{"name":"jc/lib.py","lines_changed":4}]},"message":"doc update"},{"commit":"a9f53ee258e18bc90934e263d8dc96feee84e939","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":4,"files":["jc/cli.py","jc/lib.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4},{"name":"jc/lib.py","lines_changed":15}]},"message":"optimize streaming parser detection in cli"},{"commit":"6be3d3d98222a262c5138bb09f2951ccfab96110","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":43,"deletions":1,"files":["CHANGELOG","docs/lib.md","docs/readme.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docs/lib.md","lines_changed":25},{"name":"docs/readme.md","lines_changed":16}]},"message":"doc update"},{"commit":"e49df7208377ab34a74240a06f35f17fee4b8203","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"use streaming parser list to find streaming parsers"},{"commit":"7ede7be7bf7b1a7d29d158b3b21c20fff4990e72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":42,"deletions":0,"files":["jc/__init__.py","jc/lib.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":17},{"name":"jc/lib.py","lines_changed":25}]},"message":"add standard and streaming list functions"},{"commit":"4758e28a36e2a55497e4f722d386a6b5cc30dc4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":16,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":18},{"name":"jc/__init__.py","lines_changed":18}]},"message":"formatting"},{"commit":"4a1ee151b3cb054d84cd964fd62f5855f765751d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":9,"deletions":11,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py"],"file_stats":[{"name":"docs/parsers/nmcli.md","lines_changed":4},{"name":"jc/parsers/nmcli.py","lines_changed":16}]},"message":"add dhcp6 options to docs"},{"commit":"8c8afc1a922e3c30fcf501d169b33a68b65cd3e0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":60,"deletions":24,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":42},{"name":"jc/__init__.py","lines_changed":42}]},"message":"formatting"},{"commit":"ed205f7720d98c225c917c252ed7a6c9e6e8c2b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":9,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/nmcli.md","lines_changed":8},{"name":"jc/parsers/nmcli.py","lines_changed":8},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"d65f7ae992abc33140c00714d442290103661757","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":41,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":41}]},"message":"add nmcli"},{"commit":"e2ffef57b9a474048fe72cf42aebfa6bfaf2e42b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_nmcli.py"],"file_stats":[{"name":"tests/test_nmcli.py","lines_changed":2}]},"message":"fix test"},{"commit":"002caa9fb3b65f1ae64df25cc39c3de130403e76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":252,"deletions":0,"files":[".../fedora32/nmcli-connection-show-ens33.json",".../fedora32/nmcli-connection-show-ens33.out",".../fixtures/fedora32/nmcli-device-show-ens33.json",".../fixtures/fedora32/nmcli-device-show-ens33.out","tests/fixtures/fedora32/nmcli-device-show.json","tests/fixtures/fedora32/nmcli-device-show.out","tests/test_nmcli.py"],"file_stats":[{"name":".../fedora32/nmcli-connection-show-ens33.json","lines_changed":1},{"name":".../fedora32/nmcli-connection-show-ens33.out","lines_changed":148},{"name":".../fixtures/fedora32/nmcli-device-show-ens33.json","lines_changed":1},{"name":".../fixtures/fedora32/nmcli-device-show-ens33.out","lines_changed":26},{"name":"tests/fixtures/fedora32/nmcli-device-show.json","lines_changed":1},{"name":"tests/fixtures/fedora32/nmcli-device-show.out","lines_changed":39},{"name":"tests/test_nmcli.py","lines_changed":36}]},"message":"add fedora tests"},{"commit":"b7c6faf3daf8eb0c42a222778baa440c5a018c75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"enhance error message"},{"commit":"554ca61d1764b81dea06b6b013d0444072f0662a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":165,"deletions":0,"files":[".../fixtures/centos-7.7/nmcli-connection-all.json",".../centos-7.7/nmcli-connection-show-ens33.json","tests/fixtures/centos-7.7/nmcli-connection.json","tests/fixtures/centos-7.7/nmcli-device-all.json",".../centos-7.7/nmcli-device-show-ens33.json",".../fixtures/centos-7.7/nmcli-device-show-lo.json","tests/fixtures/centos-7.7/nmcli-device-show.json","tests/fixtures/centos-7.7/nmcli-device.json","tests/fixtures/centos-7.7/nmcli-general-all.json",".../centos-7.7/nmcli-general-permissions.json","tests/test_nmcli.py"],"file_stats":[{"name":".../fixtures/centos-7.7/nmcli-connection-all.json","lines_changed":1},{"name":".../centos-7.7/nmcli-connection-show-ens33.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-connection.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-device-all.json","lines_changed":1},{"name":".../centos-7.7/nmcli-device-show-ens33.json","lines_changed":1},{"name":".../fixtures/centos-7.7/nmcli-device-show-lo.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-device-show.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-device.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-general-all.json","lines_changed":1},{"name":".../centos-7.7/nmcli-general-permissions.json","lines_changed":1},{"name":"tests/test_nmcli.py","lines_changed":155}]},"message":"add tests"},{"commit":"7b9722d255a16981099dc803beda7abe0d46106a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":26,"deletions":34,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":30},{"name":"templates/manpage_template","lines_changed":30}]},"message":"fix formatting"},{"commit":"5505bde8ef77db0885f08d8d04160cbc4418dd67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/zipinfo.md"],"file_stats":[{"name":"docs/parsers/zipinfo.md","lines_changed":2}]},"message":"doc update"},{"commit":"dbcd9a4060647be24bca2a8d577f11925a9ac210","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":2}]},"message":"bump version to 1.0"},{"commit":"4bdeb2b3aa063c2772f5c44e52acbe16e915cc3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/xrandr.py"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":2}]},"message":"simplify warning message"},{"commit":"6ae1d03187c6d4b669f6f74db1be7c9cf07adaed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py"],"file_stats":[{"name":"docs/parsers/nmcli.md","lines_changed":2},{"name":"jc/parsers/nmcli.py","lines_changed":2}]},"message":"doc fix"},{"commit":"f75b06abe4af152be094f8bc1ba5ce66b25e35e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":180,"deletions":3,"files":["README.md","docs/parsers/nmcli.md","jc/parsers/nmcli.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/nmcli.md","lines_changed":172},{"name":"jc/parsers/nmcli.py","lines_changed":3},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update"},{"commit":"1923925710dadc4116202855ae884ef18394d428","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"update changelog"},{"commit":"2c5c57ae04df3b7abfb1c3423c3350c7c2ab5dcd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/lib.py","setup.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"f4d11d697e000135720a971edf84dcad31a1bec8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":155,"deletions":15,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":170}]},"message":"finish use cases and doc"},{"commit":"7f409b7082aa9525cc9280e3c5c92bc82089cf14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"enhance ParseError cli message"},{"commit":"937fa5aad2519f588c6d0feb8f08211f6b99872f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":0,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":20}]},"message":"split dhcp options"},{"commit":"19dcef513565c34a31f6d735577da5e25f9bd2cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":69,"deletions":2,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":71}]},"message":"firm up flow. add/remove text. parse routes"},{"commit":"3d01356461eb2790f859968da7f5cb4fd2ee9898","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":3,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":30}]},"message":"add text_kv function"},{"commit":"2d6f666fa4c791e7995f6b0c1490dac73ce224c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":61,"deletions":16,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":77}]},"message":"add dev show and conn show parsers"},{"commit":"4dda895f122ecc19b267ed1485cf656bae76ff07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":404,"deletions":0,"files":["jc/lib.py","jc/parsers/nmcli.py","tests/fixtures/centos-7.7/nmcli-connection-all.out",".../centos-7.7/nmcli-connection-show-ens33.out","tests/fixtures/centos-7.7/nmcli-connection.out","tests/fixtures/centos-7.7/nmcli-device-all.out",".../centos-7.7/nmcli-device-show-ens33.out","tests/fixtures/centos-7.7/nmcli-device-show-lo.out","tests/fixtures/centos-7.7/nmcli-device-show.out","tests/fixtures/centos-7.7/nmcli-device.out","tests/fixtures/centos-7.7/nmcli-general-all.out",".../centos-7.7/nmcli-general-permissions.out","tests/fixtures/centos-7.7/nmcli.out"],"file_stats":[{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/nmcli.py","lines_changed":130},{"name":"tests/fixtures/centos-7.7/nmcli-connection-all.out","lines_changed":3},{"name":".../centos-7.7/nmcli-connection-show-ens33.out","lines_changed":136},{"name":"tests/fixtures/centos-7.7/nmcli-connection.out","lines_changed":3},{"name":"tests/fixtures/centos-7.7/nmcli-device-all.out","lines_changed":5},{"name":".../centos-7.7/nmcli-device-show-ens33.out","lines_changed":18},{"name":"tests/fixtures/centos-7.7/nmcli-device-show-lo.out","lines_changed":12},{"name":"tests/fixtures/centos-7.7/nmcli-device-show.out","lines_changed":42},{"name":"tests/fixtures/centos-7.7/nmcli-device.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/nmcli-general-all.out","lines_changed":3},{"name":".../centos-7.7/nmcli-general-permissions.out","lines_changed":18},{"name":"tests/fixtures/centos-7.7/nmcli.out","lines_changed":29}]},"message":"initial nmcli parser"},{"commit":"52617b1722ba2f089716b069f78f70a865430d61","merge":"3afaa48 961968a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #208 from kellyjonbrazil/master\n\nsync to dev"},{"commit":"961968a0fcaf37b64bc850c4945ba4b805a1fe54","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":26,"deletions":23,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":24},{"name":"jc/parsers/xrandr.py","lines_changed":25}]},"message":"fix schema"},{"commit":"f026a788e5ca1231927e71fdbb1dadb2365a6518","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":62,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":62}]},"message":"add xrandr example"},{"commit":"2f7c03eb35520be916c28a687031f8c6425839ba","merge":"681176e 3afaa48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #207 from kellyjonbrazil/dev\n\nDev v1.18.3"},{"commit":"3afaa48eee081e28262d1762c5ec23d318012822","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":15,"insertions":15,"deletions":15,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"docs/parsers/stat_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/rsync_s.py","lines_changed":2},{"name":"jc/parsers/stat_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]},"message":"doc update"},{"commit":"3201452564fb0fb44ef9cc32217339370bd2521e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":2},{"name":"jc/parsers/xrandr.py","lines_changed":2}]},"message":"add -p to example"},{"commit":"7ee1e34fc71c0dbc08ba482b787d560fd5125f64","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":116,"deletions":4,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":60},{"name":"jc/parsers/xrandr.py","lines_changed":60}]},"message":"doc update"},{"commit":"67dbf050161201f5016899591e81ab6253ac2322","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":2},{"name":"jc/parsers/xrandr.py","lines_changed":2}]},"message":"add type annotations"},{"commit":"4ac9f2e3dad4e7bd270bf5a8e61b729838b2c89c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":10,"deletions":17,"files":["CHANGELOG","docs/parsers/rsync.md","docs/parsers/rsync_s.md","jc/parsers/rsync.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docs/parsers/rsync.md","lines_changed":6},{"name":"docs/parsers/rsync_s.md","lines_changed":6},{"name":"jc/parsers/rsync.py","lines_changed":6},{"name":"jc/parsers/rsync_s.py","lines_changed":6}]},"message":"doc update"},{"commit":"3f5f6e39a777ef524cb3a06a01321bb8c31d930d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":100,"deletions":98,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":99},{"name":"jc/parsers/xrandr.py","lines_changed":99}]},"message":"formatting"},{"commit":"4723db8e3cc4946b14c83b25d6e8c6d2309aa72e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":195,"deletions":77,"files":["README.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/xrandr.md","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/xrandr.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/rsync.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"docs/parsers/xrandr.md","lines_changed":109},{"name":"jc/parsers/rsync.py","lines_changed":2},{"name":"jc/parsers/rsync_s.py","lines_changed":2},{"name":"jc/parsers/xrandr.py","lines_changed":147},{"name":"man/jc.1","lines_changed":7}]},"message":"doc updates"},{"commit":"ca914ec77d1fc77e42860189e62ac2fb203d4931","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":2,"files":["tests/test_xrandr.py"],"file_stats":[{"name":"tests/test_xrandr.py","lines_changed":13}]},"message":"add nodata test"},{"commit":"dcc7f3f357ef016b4583fc1320fd2394788f271f","merge":"184ef3a cbdc666","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #204 from lyterk/xrandr\n\nNew parser: xrandr"},{"commit":"cbdc66623671da335eafe132b7af79f884856f1d","author":"Kevin Lyter","author_email":"lyterk@sent.com","commit_by":"Kevin Lyter","commit_by_email":"lyterk@sent.com","stats":{"files_changed":3,"insertions":2,"deletions":30,"files":["jc/parsers/xrandr.py",".../{simple_xrandr.json => xrandr_simple.json}",".../{simple_xrandr.out => xrandr_simple.out}"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":32},{"name":".../{simple_xrandr.json => xrandr_simple.json}","lines_changed":0},{"name":".../{simple_xrandr.out => xrandr_simple.out}","lines_changed":0}]},"message":"Return empty object if no results and filenames\n\n- If no results are returned, return {} instead of {\"screens\": [],\n\"unassociated_devices\": []}\n- simple_xrandr -> xrandr_simple"},{"commit":"184ef3a1faeb406ce62076cff637ee86d61541fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":11,"deletions":3,"files":["docs/parsers/rsync.md","docs/parsers/rsync_s.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/rsync.md","lines_changed":6},{"name":"docs/parsers/rsync_s.md","lines_changed":6},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"c732f759445e335fe36586859b6fde7e27bb8901","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":10,"deletions":2,"files":["jc/parsers/rsync.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":6},{"name":"jc/parsers/rsync_s.py","lines_changed":6}]},"message":"doc update"},{"commit":"7a1ae4f5fc5328c32bf77235cfbd9f83ec995053","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":105,"deletions":0,"files":["tests/{test_lib.py => test_jc_lib.py}","tests/test_jc_streaming.py","tests/{test_utils.py => test_jc_utils.py}"],"file_stats":[{"name":"tests/{test_lib.py => test_jc_lib.py}","lines_changed":0},{"name":"tests/test_jc_streaming.py","lines_changed":61},{"name":"tests/{test_utils.py => test_jc_utils.py}","lines_changed":44}]},"message":"add library tests"},{"commit":"d04bc3757c482ec9062b2da91ded76c5dd6d106b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add xrandr"},{"commit":"73e8391653145412cd852aca349466018c8b9084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":3,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":11}]},"message":"formatting"},{"commit":"f6c1463c1578db264ccb3d4c2677857ed906e965","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":44,"deletions":24,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":68}]},"message":"formatting"},{"commit":"d392c7f901a9d7c57617fbd03bd3f88ee0bf4132","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":20,"deletions":13,"files":["docs/parsers/date.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/ls.md","docs/parsers/rpm_qi.md","docs/parsers/stat.md","docs/parsers/systeminfo.md","docs/parsers/timedatectl.md","docs/parsers/upower.md","docs/parsers/vmstat.md","docs/parsers/who.md","docs/utils.md"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":11}]},"message":"doc update"},{"commit":"d0387f58205b2fd9b9860ce9656bb29ceec54340","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":16,"insertions":34,"deletions":29,"files":["jc/parsers/date.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/systeminfo.py","jc/parsers/timedatectl.py","jc/parsers/upower.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":4},{"name":"jc/parsers/dir.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/rpm_qi.py","lines_changed":6},{"name":"jc/parsers/rsync.py","lines_changed":2},{"name":"jc/parsers/rsync_s.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"jc/parsers/stat_s.py","lines_changed":2},{"name":"jc/parsers/systeminfo.py","lines_changed":8},{"name":"jc/parsers/timedatectl.py","lines_changed":4},{"name":"jc/parsers/upower.py","lines_changed":5},{"name":"jc/parsers/vmstat.py","lines_changed":5},{"name":"jc/parsers/vmstat_s.py","lines_changed":3},{"name":"jc/parsers/who.py","lines_changed":4}]},"message":"add timestamp format hints for better performance"},{"commit":"76f92908a3ba9cbadcc8e972afa8b1c4a69509bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":44,"deletions":9,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":53}]},"message":"add format hints for performance optimization"},{"commit":"1a115da67bdce9acfefbfb71fbac37e234b1babd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"add lru_cache maxsize for python 3.7 support"},{"commit":"f0a37ccf301eee5133a83b5dd96986fef0c38e7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":11}]},"message":"use lru_cache for significant performance boost to timestamp"},{"commit":"f331f53a531169520a4d8ea15d277560a49aedb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["CHANGELOG","jc/utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/utils.py","lines_changed":2}]},"message":"use !r formatting instead of quotes"},{"commit":"8611aff06b18212b7292d564beb27a2062fc3f41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/parsers/rsync_s.md","jc/parsers/rsync_s.py"],"file_stats":[{"name":"docs/parsers/rsync_s.md","lines_changed":8},{"name":"jc/parsers/rsync_s.py","lines_changed":8}]},"message":"add examples"},{"commit":"2f3f78e8d35a0ccccde0f84417400acdfe7fe0aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":16,"insertions":194,"deletions":185,"files":["docgen.sh","docs/parsers/rsync_s.md","docs/readme.md","docs/streaming.md","docs/utils.md","jc/__init__.py","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/streaming.py","man/jc.1"],"file_stats":[{"name":"docgen.sh","lines_changed":3},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"docs/readme.md","lines_changed":2},{"name":"docs/streaming.md","lines_changed":114},{"name":"docs/utils.md","lines_changed":93},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":10},{"name":"jc/parsers/foo_s.py","lines_changed":14},{"name":"jc/parsers/iostat_s.py","lines_changed":15},{"name":"jc/parsers/ls_s.py","lines_changed":14},{"name":"jc/parsers/ping_s.py","lines_changed":4},{"name":"jc/parsers/rsync_s.py","lines_changed":25},{"name":"jc/parsers/stat_s.py","lines_changed":22},{"name":"jc/parsers/vmstat_s.py","lines_changed":16},{"name":"jc/streaming.py","lines_changed":41},{"name":"man/jc.1","lines_changed":2}]},"message":"refine streaming parsers"},{"commit":"d1e0ee6123dfecd48d074cb7a40e98a15b6adcb9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":8,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":14}]},"message":"use new streaming functions"},{"commit":"45314c98083067f1f6fae9c477c99fabec223f29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":112,"deletions":102,"files":["jc/streaming.py","jc/utils.py"],"file_stats":[{"name":"jc/streaming.py","lines_changed":111},{"name":"jc/utils.py","lines_changed":103}]},"message":"move some functions to streaming"},{"commit":"df00945b46e27e10107f48d186eedf80b55bd40e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":59,"deletions":49,"files":["jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":15},{"name":"jc/parsers/iostat_s.py","lines_changed":15},{"name":"jc/parsers/ls_s.py","lines_changed":17},{"name":"jc/parsers/ping_s.py","lines_changed":19},{"name":"jc/parsers/rsync_s.py","lines_changed":21},{"name":"jc/parsers/stat_s.py","lines_changed":21}]},"message":"move try/except inside for loop"},{"commit":"fda0050d867bcbe4f1d7e024b08e9881d0f57735","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":191,"deletions":0,"files":[".../centos-7.7/rsync-i-logfile-streaming.json","tests/fixtures/centos-7.7/rsync-i-streaming.json",".../centos-7.7/rsync-i-v-logfile-streaming.json",".../centos-7.7/rsync-i-vv-logfile-streaming.json",".../rsync-i-vvv-logfile-nochange-streaming.json",".../centos-7.7/rsync-i-vvv-logfile-streaming.json",".../centos-7.7/rsync-ivvv-nochange-streaming.json",".../fixtures/centos-7.7/rsync-ivvv-streaming.json","tests/fixtures/generic/rsync-i-streaming.json",".../rsync-i-vvv-logfile-nochange-streaming.json",".../rsync-i-vvv-nochange-streaming.json",".../osx-10.14.6/rsync-i-vvv-streaming.json","tests/test_rsync_s.py"],"file_stats":[{"name":".../centos-7.7/rsync-i-logfile-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-streaming.json","lines_changed":1},{"name":".../centos-7.7/rsync-i-v-logfile-streaming.json","lines_changed":1},{"name":".../centos-7.7/rsync-i-vv-logfile-streaming.json","lines_changed":1},{"name":".../rsync-i-vvv-logfile-nochange-streaming.json","lines_changed":1},{"name":".../centos-7.7/rsync-i-vvv-logfile-streaming.json","lines_changed":1},{"name":".../centos-7.7/rsync-ivvv-nochange-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/rsync-ivvv-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/rsync-i-streaming.json","lines_changed":1},{"name":".../rsync-i-vvv-logfile-nochange-streaming.json","lines_changed":1},{"name":".../rsync-i-vvv-nochange-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/rsync-i-vvv-streaming.json","lines_changed":1},{"name":"tests/test_rsync_s.py","lines_changed":179}]},"message":"add rsync-s tests"},{"commit":"a76d46f9ecb1eff4d6cc7ad633c97cec0e99001a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":19,"insertions":110,"deletions":109,"files":["CHANGELOG","docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","docs/utils.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/utils.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":5},{"name":"docs/parsers/iostat_s.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":5},{"name":"docs/parsers/ping_s.md","lines_changed":5},{"name":"docs/parsers/rsync_s.md","lines_changed":5},{"name":"docs/parsers/stat_s.md","lines_changed":5},{"name":"docs/parsers/vmstat_s.md","lines_changed":5},{"name":"docs/utils.md","lines_changed":15},{"name":"jc/parsers/csv_s.py","lines_changed":13},{"name":"jc/parsers/foo_s.py","lines_changed":11},{"name":"jc/parsers/iostat_s.py","lines_changed":23},{"name":"jc/parsers/ls_s.py","lines_changed":20},{"name":"jc/parsers/ping_s.py","lines_changed":22},{"name":"jc/parsers/rsync_s.py","lines_changed":11},{"name":"jc/parsers/stat_s.py","lines_changed":30},{"name":"jc/parsers/vmstat_s.py","lines_changed":11},{"name":"jc/utils.py","lines_changed":24},{"name":"man/jc.1","lines_changed":2}]},"message":"refactor ignore_exceptions"},{"commit":"6b069a82d0fa19c8d83b19b934bace556cb758d7","author":"Kevin Lyter","author_email":"lyterk@sent.com","commit_by":"Kevin Lyter","commit_by_email":"lyterk@sent.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":1}]},"message":"Add xrandr to lib.py"},{"commit":"6b793d052147406f388c4d5dc04f506a3456f409","author":"Kevin Lyter","author_email":"lyterk@sent.com","commit_by":"Kevin Lyter","commit_by_email":"lyterk@sent.com","stats":{"files_changed":1,"insertions":6,"deletions":11,"files":["jc/parsers/xrandr.py"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":17}]},"message":"Clean up types\n\n* | operator => Union[]\n* Remove unused import Iterator\n* Remove comment"},{"commit":"ce9103f7cc666895dc7840d32797d8c7274cf1b8","author":"Kevin Lyter","author_email":"lyterk@sent.com","commit_by":"Kevin Lyter","commit_by_email":"lyterk@sent.com","stats":{"files_changed":2,"insertions":0,"deletions":287,"files":["templates/xrandr_sample.txt","templates/xrandr_sample_verbose.txt"],"file_stats":[{"name":"templates/xrandr_sample.txt","lines_changed":38},{"name":"templates/xrandr_sample_verbose.txt","lines_changed":249}]},"message":"Delete old files in template folder"},{"commit":"671d6dee36a37317257e09a080849205d301bceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":83,"deletions":15,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","docs/utils.md"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":8},{"name":"docs/parsers/iostat_s.md","lines_changed":8},{"name":"docs/parsers/ls_s.md","lines_changed":8},{"name":"docs/parsers/ping_s.md","lines_changed":8},{"name":"docs/parsers/rsync_s.md","lines_changed":10},{"name":"docs/parsers/stat_s.md","lines_changed":8},{"name":"docs/parsers/vmstat_s.md","lines_changed":8},{"name":"docs/utils.md","lines_changed":40}]},"message":"doc update"},{"commit":"49929c714c2d71a310b1dd95138dbd02f8704138","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":139,"deletions":52,"files":["jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":14},{"name":"jc/parsers/foo_s.py","lines_changed":16},{"name":"jc/parsers/iostat_s.py","lines_changed":15},{"name":"jc/parsers/ls_s.py","lines_changed":14},{"name":"jc/parsers/ping_s.py","lines_changed":14},{"name":"jc/parsers/rsync_s.py","lines_changed":30},{"name":"jc/parsers/stat_s.py","lines_changed":21},{"name":"jc/parsers/vmstat_s.py","lines_changed":14},{"name":"jc/utils.py","lines_changed":53}]},"message":"add add_jc_meta decorator"},{"commit":"2986771f07de87bfee44dd3bbb4f285e249aad76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"require python v3.7 and above since v3.6 is now deprecated"},{"commit":"520082d963b93d2bafeff921da3899686b22cadf","author":"Kevin Lyter","author_email":"lyterk@sent.com","commit_by":"Kevin Lyter","commit_by_email":"lyterk@sent.com","stats":{"files_changed":9,"insertions":968,"deletions":0,"files":["jc/parsers/xrandr.py","templates/xrandr_sample.txt","templates/xrandr_sample_verbose.txt","tests/fixtures/generic/simple_xrandr.json","tests/fixtures/generic/simple_xrandr.out","tests/fixtures/generic/xrandr.out","tests/fixtures/generic/xrandr_2.out","tests/fixtures/generic/xrandr_device.out","tests/test_xrandr.py"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":353},{"name":"templates/xrandr_sample.txt","lines_changed":38},{"name":"templates/xrandr_sample_verbose.txt","lines_changed":249},{"name":"tests/fixtures/generic/simple_xrandr.json","lines_changed":56},{"name":"tests/fixtures/generic/simple_xrandr.out","lines_changed":4},{"name":"tests/fixtures/generic/xrandr.out","lines_changed":38},{"name":"tests/fixtures/generic/xrandr_2.out","lines_changed":43},{"name":"tests/fixtures/generic/xrandr_device.out","lines_changed":15},{"name":"tests/test_xrandr.py","lines_changed":172}]},"message":"New parser: xrandr\n\nTests passing, working as intended in plugin directory"},{"commit":"021e296d457140c32b5256c2b0acf66efc458896","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":104,"deletions":100,"files":["jc/parsers/rsync_s.py"],"file_stats":[{"name":"jc/parsers/rsync_s.py","lines_changed":204}]},"message":"move variable inits and regexes up"},{"commit":"42e56fbcea6db64ea7f7045e7755af492c95aec2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":12,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":23}]},"message":"move regex up"},{"commit":"a5b62a4055df37b84751a7cdc14eb6f1ed907cd9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":230,"deletions":18,"files":["docs/parsers/rsync_s.md","jc/parsers/rsync_s.py"],"file_stats":[{"name":"docs/parsers/rsync_s.md","lines_changed":124},{"name":"jc/parsers/rsync_s.py","lines_changed":124}]},"message":"add processing and docs"},{"commit":"be98c9b7f6c67e23ea101223934d67bba512e645","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":11}]},"message":"simplify try/except by moving outside for loop"},{"commit":"aceeb8450796ae748a4d4abf75643f309d0a42e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":12,"deletions":1,"files":["CHANGELOG","README.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":5},{"name":"README.md","lines_changed":1},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update"},{"commit":"13910632173e7c815ff1161cf52fd1d17153c4a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":367,"deletions":0,"files":["jc/lib.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/rsync_s.py","lines_changed":366}]},"message":"first draft rsync streaming parser"},{"commit":"52157addd0d6dff3bdb34f179ec14b07c8c27ccc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":2}]},"message":"fix compatible list"},{"commit":"ec0bc6615e22fdc536623e290d88b9725cb6a0ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":2},{"name":"jc/utils.py","lines_changed":2}]},"message":"formatting"},{"commit":"2f80800e38256b363a4122195ec4aaffebe67d87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"simplify all_parser_info comprehension"},{"commit":"3959d3347c8d3e838f8c3158c4db74e2fa2eb856","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["docs/lib.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":4}]},"message":"doc update"},{"commit":"b57d25c69a193d3866ea86a3a34edd67049b198d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":12}]},"message":"clean up return type for parser_info"},{"commit":"63e43a7cabb51c624c962cdcc92a1199f18c77e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":188,"deletions":21,"files":["README.md","docs/lib.md","docs/parsers/rsync.md","docs/parsers/universal.md","docs/parsers/zipinfo.md","docs/utils.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"docs/lib.md","lines_changed":4},{"name":"docs/parsers/rsync.md","lines_changed":163},{"name":"docs/parsers/universal.md","lines_changed":2},{"name":"docs/parsers/zipinfo.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":28},{"name":"man/jc.1","lines_changed":7}]},"message":"doc updates"},{"commit":"21719f9a26c25d896b0a5d49c9d7814175835e16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":18,"deletions":20,"files":["jc/lib.py","jc/utils.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":36}]},"message":"type annotation updates"},{"commit":"96ec70de4f6178b0669fd9ab47cb303dc45e55c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["jc/parsers/universal.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":6},{"name":"jc/utils.py","lines_changed":4}]},"message":"remove unneeded optional"},{"commit":"a15a1967dc06169ceeda0fd5b4857ce1a351f3d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"fix typo"},{"commit":"a10d7566294fe5246e68a16e355ce56dd3557ac5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":8}]},"message":"fixy mypy issues"},{"commit":"0700dc7a64b121cf0243416e2cbb82fcef15f5a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":2}]},"message":"remove cygwin from compatible"},{"commit":"ca654b214057e19839b89e0d9a66f1110f679c1e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"fix parser order"},{"commit":"4ff3b87c1c96d720f4e7fd39e613944e322cb388","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":1}]},"message":"remove future field from docstring"},{"commit":"ea244fb7a91f1d1f8ffe0ea6dc10dfe5ab836878","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_rsync.py"],"file_stats":[{"name":"tests/test_rsync.py","lines_changed":2}]},"message":"formatting"},{"commit":"8061f30e6fa58d22ed1a52e02c4d9c7f0bf132cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":236,"deletions":6,"files":["tests/fixtures/centos-7.7/rsync-ivvv-nochange.json","tests/fixtures/centos-7.7/rsync-ivvv-nochange.out","tests/test_rsync.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/rsync-ivvv-nochange.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-ivvv-nochange.out","lines_changed":224},{"name":"tests/test_rsync.py","lines_changed":17}]},"message":"add centos -i nochange test"},{"commit":"8f3b12e81e1b4f0d4394c33db5b3a352f4cfb391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":299,"deletions":0,"files":["jc/parsers/rsync.py",".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.json",".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.out","tests/fixtures/osx-10.14.6/rsync-i-vvv.json","tests/fixtures/osx-10.14.6/rsync-i-vvv.out","tests/test_rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":22},{"name":".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.out","lines_changed":88},{"name":"tests/fixtures/osx-10.14.6/rsync-i-vvv.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/rsync-i-vvv.out","lines_changed":156},{"name":"tests/test_rsync.py","lines_changed":31}]},"message":"add fixes for mac -i output"},{"commit":"d0694ce0db5ea2d06b5787429adf23095c4c2df0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":245,"deletions":6,"files":[".../osx-10.14.6/rsync-i-vvv-logfile-nochange.json",".../osx-10.14.6/rsync-i-vvv-logfile-nochange.out","tests/test_rsync.py"],"file_stats":[{"name":".../osx-10.14.6/rsync-i-vvv-logfile-nochange.json","lines_changed":1},{"name":".../osx-10.14.6/rsync-i-vvv-logfile-nochange.out","lines_changed":233},{"name":"tests/test_rsync.py","lines_changed":17}]},"message":"add nochange log test for mac"},{"commit":"0cd4c4bc7f3ffe13cb2f1920187e25636b88af61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":658,"deletions":0,"files":[".../centos-7.7/rsync-i-vvv-logfile-nochange.json",".../centos-7.7/rsync-i-vvv-logfile-nochange.out"],"file_stats":[{"name":".../centos-7.7/rsync-i-vvv-logfile-nochange.json","lines_changed":1},{"name":".../centos-7.7/rsync-i-vvv-logfile-nochange.out","lines_changed":657}]},"message":"add nochange tests"},{"commit":"12f90c349c903634def4225ce87924b475be46d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":68,"deletions":20,"files":["jc/parsers/rsync.py","tests/test_rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":68},{"name":"tests/test_rsync.py","lines_changed":20}]},"message":"update regexes for unchanged files"},{"commit":"26b8a1f167c4b1ec3f9fb4077254a27ed8548933","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":2}]},"message":"remove packages from binaries and packages header"},{"commit":"3abe382c064f605d915912f9b726d76784eba8a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":90,"deletions":3,"files":["EXAMPLES.md","jc/parsers/rsync.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":33},{"name":"jc/parsers/rsync.py","lines_changed":60}]},"message":"add examples"},{"commit":"1e2edc2c7b5dc104a9efe4da7df9be61b9e1be32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":53,"deletions":29,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-logfile.json","tests/fixtures/centos-7.7/rsync-i-v-logfile.json","tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":74},{"name":"tests/fixtures/centos-7.7/rsync-i-logfile.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rsync-i-v-logfile.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json","lines_changed":2}]},"message":"add timestamp"},{"commit":"5fe032a6741b7b6586c60eb28be74bd0e56277a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":2}]},"message":"fix typo"},{"commit":"e825c02df1cdae67c7f335fe3c675685eb1a8d02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":605,"deletions":0,"files":["tests/fixtures/centos-7.7/rsync-i-logfile.json","tests/fixtures/centos-7.7/rsync-i-v-logfile.json","tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out","tests/fixtures/centos-7.7/rsync-i.json","tests/fixtures/centos-7.7/rsync-i.out","tests/fixtures/centos-7.7/rsync-ivvv.json","tests/fixtures/generic/rsync-i.json","tests/fixtures/generic/rsync-i.out","tests/test_rsync.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/rsync-i-logfile.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-v-logfile.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out","lines_changed":434},{"name":"tests/fixtures/centos-7.7/rsync-i.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i.out","lines_changed":28},{"name":"tests/fixtures/centos-7.7/rsync-ivvv.json","lines_changed":1},{"name":"tests/fixtures/generic/rsync-i.json","lines_changed":1},{"name":"tests/fixtures/generic/rsync-i.out","lines_changed":11},{"name":"tests/test_rsync.py","lines_changed":125}]},"message":"add rsync tests"},{"commit":"a4a4d170b5ae8c189de982adea5bdc9bf1f26e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":5,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":15}]},"message":"update docstring"},{"commit":"d0fcd523cb2cbb59d0f90369721749b54222961d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":17,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":36}]},"message":"fix process conversions"},{"commit":"f72b7dc75dbd1c3f5daee3ecee28487258a04873","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":8,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":12}]},"message":"change keyname to files and remove future key"},{"commit":"4101dc6bf7bab7d00899426e2f6271a7480d558f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":1008,"deletions":19,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-v-logfile.out","tests/fixtures/centos-7.7/rsync-i-vv-logfile.out","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":60},{"name":"tests/fixtures/centos-7.7/rsync-i-v-logfile.out","lines_changed":61},{"name":"tests/fixtures/centos-7.7/rsync-i-vv-logfile.out","lines_changed":65},{"name":"tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out","lines_changed":841}]},"message":"add log-file support"},{"commit":"ea5011b616365b5c10c04416d43035d84e3dacba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":175,"deletions":41,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-logfile.out"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":157},{"name":"tests/fixtures/centos-7.7/rsync-i-logfile.out","lines_changed":59}]},"message":"updated schema. add log-file option support"},{"commit":"d6de81747fd92642dbd5cb1fb097e375aa38be35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":3,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":14}]},"message":"add int/float conversions"},{"commit":"38f04b1c9699246d85332b20df5b6a91ae0c48d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":32,"deletions":7,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":39}]},"message":"add summary"},{"commit":"84169e1a913d035744f71472be81fe3a7d774b97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":637,"deletions":2,"files":["jc/lib.py","jc/parsers/rsync.py","setup.py","tests/fixtures/centos-7.7/rsync-ivvv.out"],"file_stats":[{"name":"jc/lib.py","lines_changed":3},{"name":"jc/parsers/rsync.py","lines_changed":212},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rsync-ivvv.out","lines_changed":422}]},"message":"add rsync parser"},{"commit":"1f96586a5e883709f436526de6dcb21ff44bf97b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/foo.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":2}]},"message":"reorder imports"},{"commit":"681176e4c958157ef1f2151b3e57963a6ba48e09","merge":"b389665 8bb2663","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #203 from kellyjonbrazil/dev\n\nDev v1.18.2"},{"commit":"8bb266352207f95040b72750e5b3ae3b8ceb2b98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"date update"},{"commit":"663abf313931b49fad64b425ece6a5a257dc7938","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":3,"deletions":4,"files":["MANIFEST.in","mangen.py","runtests.sh","updatedocs.sh"],"file_stats":[{"name":"MANIFEST.in","lines_changed":1},{"name":"mangen.py","lines_changed":3},{"name":"runtests.sh","lines_changed":1},{"name":"updatedocs.sh","lines_changed":2}]},"message":"clean up scripts"},{"commit":"f7ac41db95c16fd21d83fbce678c5dec28ab40f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":13,"files":["README.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"man/jc.1","lines_changed":12}]},"message":"final doc update"},{"commit":"5502cda9e591b531d6b452b02d8ec322c3287800","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["tests/test_lib.py"],"file_stats":[{"name":"tests/test_lib.py","lines_changed":3}]},"message":"add additional test for dict inside list for all_parser_info()"},{"commit":"a2b165565f54d91489bf38577a0785e78a4523d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["tests/test_lib.py"],"file_stats":[{"name":"tests/test_lib.py","lines_changed":21}]},"message":"add lib tests for new functions"},{"commit":"b426369815984bd2aae8bcb14e306ba73b8cd4ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":12}]},"message":"use all_parser_info() from lib in about function"},{"commit":"ac0840cc0afb4aeee2c99076710c987e09cfa5f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"fix typo"},{"commit":"ee98ab0a4a7671ae34ee79f7b0b97c061a8c2944","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/lib.md","docs/utils.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":6},{"name":"docs/utils.md","lines_changed":4}]},"message":"doc update"},{"commit":"2adec2c0035b84ca0242f2494b6c2651b9898ca5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":21,"deletions":19,"files":["jc/lib.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/utils.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":18},{"name":"jc/parsers/foo.py","lines_changed":8},{"name":"jc/parsers/foo_s.py","lines_changed":10},{"name":"jc/utils.py","lines_changed":4}]},"message":"update type hints with mypy help"},{"commit":"f19c9c71bf4f592f55a5176458acd478b462fdbe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":4,"files":["jc/parsers/foo.py","jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":9},{"name":"jc/parsers/foo_s.py","lines_changed":10}]},"message":"add type hints"},{"commit":"e93adf1884c0006a64123513070a5fd96a940da2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":5},{"name":"jc/__init__.py","lines_changed":5}]},"message":"fix doc"},{"commit":"254c4fc507842ca72064c0196418a7b939d54d06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":6,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":13},{"name":"jc/__init__.py","lines_changed":13}]},"message":"add new functions"},{"commit":"74d5f60d14fc42cfd5768c7ffd6efc890a65d442","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"update console interview description"},{"commit":"db7dc0634bc17b4daadc8bc21bba5975c093efe5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":2},{"name":"jc/lib.py","lines_changed":2}]},"message":"make **kwargs optional"},{"commit":"e156b0db453e99fb0f74b618fd343218f978ff68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":4},{"name":"jc/parsers/universal.py","lines_changed":5}]},"message":"add type hints"},{"commit":"50adc05fbd6a0dcd9e4fb38aa41917bb57332f36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":6},{"name":"jc/utils.py","lines_changed":6}]},"message":"formatting"},{"commit":"446cac7c217103eb66cfdee97e3a208b7144b644","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":11,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":11},{"name":"jc/utils.py","lines_changed":15}]},"message":"doc update"},{"commit":"28ffe3076bb5f23aeaf2624344856dbd02b4c0e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":9,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":8},{"name":"jc/lib.py","lines_changed":9}]},"message":"formatting"},{"commit":"d4d5e206cae14acd25445952f820810818b3fdce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":40,"deletions":28,"files":["docs/lib.md","docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":15},{"name":"docs/utils.md","lines_changed":26},{"name":"jc/utils.py","lines_changed":27}]},"message":"type hints update"},{"commit":"42fbe40a4ae02b9d09acdbf9b22573844959d2ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":11}]},"message":"simplify type hints"},{"commit":"27e4a120e21dcbb3eadc6c4cf224ddb33859328d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":2},{"name":"jc/lib.py","lines_changed":2}]},"message":"remove trailing comma"},{"commit":"b5d5b7c73a96d4335b178ccfac60af90913e6f0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":29,"deletions":148,"files":["docgen.sh","docs/parsers/ifconfig.md","docs/parsers/traceroute.md"],"file_stats":[{"name":"docgen.sh","lines_changed":35},{"name":"docs/parsers/ifconfig.md","lines_changed":94},{"name":"docs/parsers/traceroute.md","lines_changed":48}]},"message":"remove private classes"},{"commit":"e7471556ba5fb0586ac5b0d7404cabd98a58db2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":5,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":5}]},"message":"remove sed lines"},{"commit":"640a21341bb1c562cb2124155b511dfc74277fc0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":47,"deletions":42,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":20},{"name":"jc/utils.py","lines_changed":69}]},"message":"fix indentation"},{"commit":"f5befad3e41ba2864abc795a2fdf63e0f1d37c21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":33,"deletions":25,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":21},{"name":"jc/utils.py","lines_changed":37}]},"message":"move docstring under __init__"},{"commit":"f8223023c31093c1a34130b4e4cfc23b1d80a30c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":24,"deletions":10,"files":["docgen.sh","docs/parsers/ifconfig.md","docs/parsers/traceroute.md","docs/utils.md"],"file_stats":[{"name":"docgen.sh","lines_changed":28},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":2}]},"message":"change header depth"},{"commit":"7028e87f9b411c0cfb92eee7fc0667cdcb9a54ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":87,"insertions":22,"deletions":445,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md"],"file_stats":[{"name":"docgen.sh","lines_changed":26},{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/csv_s.md","lines_changed":5},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":14},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iostat.md","lines_changed":5},{"name":"docs/parsers/iostat_s.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jar_manifest.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/ping_s.md","lines_changed":5},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/sfdisk.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/stat_s.md","lines_changed":5},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/systeminfo.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":8},{"name":"docs/parsers/ufw.md","lines_changed":5},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/vmstat.md","lines_changed":5},{"name":"docs/parsers/vmstat_s.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5},{"name":"docs/parsers/zipinfo.md","lines_changed":5},{"name":"docs/readme.md","lines_changed":4}]},"message":"remove TOC for parsers"},{"commit":"590728f9c1ccfdc078e600d1f35ad4ba51f70d36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":91,"insertions":506,"deletions":17,"files":["docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/utils.md","jc/lib.py"],"file_stats":[{"name":"docgen.sh","lines_changed":28},{"name":"docs/lib.md","lines_changed":13},{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/csv_s.md","lines_changed":5},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":14},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iostat.md","lines_changed":5},{"name":"docs/parsers/iostat_s.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jar_manifest.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/ping_s.md","lines_changed":5},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/sfdisk.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/stat_s.md","lines_changed":5},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/systeminfo.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":8},{"name":"docs/parsers/ufw.md","lines_changed":5},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/universal.md","lines_changed":6},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/vmstat.md","lines_changed":5},{"name":"docs/parsers/vmstat_s.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5},{"name":"docs/parsers/zipinfo.md","lines_changed":5},{"name":"docs/readme.md","lines_changed":4},{"name":"docs/utils.md","lines_changed":17},{"name":"jc/lib.py","lines_changed":18}]},"message":"try new pydoc-markdown formatting options"},{"commit":"7cc147fe2d7b278bcab905bc4c3b70b5265e1510","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":44,"files":["docgen.sh","docgen.sh.old"],"file_stats":[{"name":"docgen.sh","lines_changed":4},{"name":"docgen.sh.old","lines_changed":44}]},"message":"increase heading size"},{"commit":"3cfb3965bb25024a7b03870b71f02194e278919b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":19,"deletions":19,"files":["docs/lib.md","docs/parsers/universal.md","docs/utils.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":10},{"name":"docs/parsers/universal.md","lines_changed":4},{"name":"docs/utils.md","lines_changed":24}]},"message":"formatting"},{"commit":"155d4213225fe4fcf4a059fb63c1ab9fc493177e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":86,"insertions":182,"deletions":181,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"],"file_stats":[{"name":"docgen.sh","lines_changed":3},{"name":"docs/parsers/acpi.md","lines_changed":4},{"name":"docs/parsers/airport.md","lines_changed":4},{"name":"docs/parsers/airport_s.md","lines_changed":4},{"name":"docs/parsers/arp.md","lines_changed":4},{"name":"docs/parsers/blkid.md","lines_changed":4},{"name":"docs/parsers/cksum.md","lines_changed":4},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"docs/parsers/crontab_u.md","lines_changed":4},{"name":"docs/parsers/csv.md","lines_changed":4},{"name":"docs/parsers/csv_s.md","lines_changed":4},{"name":"docs/parsers/date.md","lines_changed":4},{"name":"docs/parsers/df.md","lines_changed":4},{"name":"docs/parsers/dig.md","lines_changed":4},{"name":"docs/parsers/dir.md","lines_changed":4},{"name":"docs/parsers/dmidecode.md","lines_changed":4},{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"docs/parsers/du.md","lines_changed":4},{"name":"docs/parsers/env.md","lines_changed":4},{"name":"docs/parsers/file.md","lines_changed":4},{"name":"docs/parsers/finger.md","lines_changed":4},{"name":"docs/parsers/free.md","lines_changed":4},{"name":"docs/parsers/fstab.md","lines_changed":4},{"name":"docs/parsers/group.md","lines_changed":4},{"name":"docs/parsers/gshadow.md","lines_changed":4},{"name":"docs/parsers/hash.md","lines_changed":4},{"name":"docs/parsers/hashsum.md","lines_changed":4},{"name":"docs/parsers/hciconfig.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":4},{"name":"docs/parsers/hosts.md","lines_changed":4},{"name":"docs/parsers/id.md","lines_changed":4},{"name":"docs/parsers/ifconfig.md","lines_changed":20},{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"docs/parsers/iostat.md","lines_changed":4},{"name":"docs/parsers/iostat_s.md","lines_changed":4},{"name":"docs/parsers/iptables.md","lines_changed":4},{"name":"docs/parsers/iw_scan.md","lines_changed":4},{"name":"docs/parsers/jar_manifest.md","lines_changed":4},{"name":"docs/parsers/jobs.md","lines_changed":4},{"name":"docs/parsers/kv.md","lines_changed":4},{"name":"docs/parsers/last.md","lines_changed":4},{"name":"docs/parsers/ls.md","lines_changed":4},{"name":"docs/parsers/ls_s.md","lines_changed":4},{"name":"docs/parsers/lsblk.md","lines_changed":4},{"name":"docs/parsers/lsmod.md","lines_changed":4},{"name":"docs/parsers/lsof.md","lines_changed":4},{"name":"docs/parsers/lsusb.md","lines_changed":4},{"name":"docs/parsers/mount.md","lines_changed":4},{"name":"docs/parsers/netstat.md","lines_changed":4},{"name":"docs/parsers/ntpq.md","lines_changed":4},{"name":"docs/parsers/passwd.md","lines_changed":4},{"name":"docs/parsers/ping.md","lines_changed":4},{"name":"docs/parsers/ping_s.md","lines_changed":4},{"name":"docs/parsers/pip_list.md","lines_changed":4},{"name":"docs/parsers/pip_show.md","lines_changed":4},{"name":"docs/parsers/ps.md","lines_changed":4},{"name":"docs/parsers/route.md","lines_changed":4},{"name":"docs/parsers/rpm_qi.md","lines_changed":4},{"name":"docs/parsers/sfdisk.md","lines_changed":4},{"name":"docs/parsers/shadow.md","lines_changed":4},{"name":"docs/parsers/ss.md","lines_changed":4},{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"docs/parsers/stat_s.md","lines_changed":4},{"name":"docs/parsers/sysctl.md","lines_changed":4},{"name":"docs/parsers/systemctl.md","lines_changed":4},{"name":"docs/parsers/systemctl_lj.md","lines_changed":4},{"name":"docs/parsers/systemctl_ls.md","lines_changed":4},{"name":"docs/parsers/systemctl_luf.md","lines_changed":4},{"name":"docs/parsers/systeminfo.md","lines_changed":4},{"name":"docs/parsers/time.md","lines_changed":4},{"name":"docs/parsers/timedatectl.md","lines_changed":4},{"name":"docs/parsers/tracepath.md","lines_changed":4},{"name":"docs/parsers/traceroute.md","lines_changed":8},{"name":"docs/parsers/ufw.md","lines_changed":4},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":4},{"name":"docs/parsers/uname.md","lines_changed":4},{"name":"docs/parsers/upower.md","lines_changed":4},{"name":"docs/parsers/uptime.md","lines_changed":4},{"name":"docs/parsers/vmstat.md","lines_changed":4},{"name":"docs/parsers/vmstat_s.md","lines_changed":4},{"name":"docs/parsers/w.md","lines_changed":4},{"name":"docs/parsers/wc.md","lines_changed":4},{"name":"docs/parsers/who.md","lines_changed":4},{"name":"docs/parsers/xml.md","lines_changed":4},{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"docs/parsers/zipinfo.md","lines_changed":4}]},"message":"formatting"},{"commit":"d3e10bb87bdb32396bce95f74e62a023f4efaf99","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":291,"deletions":0,"files":["docs/parsers/lsusb.md"],"file_stats":[{"name":"docs/parsers/lsusb.md","lines_changed":291}]},"message":"add lsusb docs"},{"commit":"fd5433ee6220357e59633c78b689aa432d056b43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":293,"files":["docs/lib.md","docs/parsers/lsusb.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":4},{"name":"docs/parsers/lsusb.md","lines_changed":291},{"name":"jc/lib.py","lines_changed":4}]},"message":"parse docstring formatting"},{"commit":"4568f2d06e8fc1c465c86c318d925586481af062","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":4},{"name":"jc/lib.py","lines_changed":4}]},"message":"formatting for parse docstring"},{"commit":"c36e513d1bcc07cd8f01ff59199950e5396da51b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":86,"insertions":88,"deletions":91,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"],"file_stats":[{"name":"docgen.sh","lines_changed":9},{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/dpkg_l.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/finger.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/gshadow.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iostat.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/jar_manifest.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/kv.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/stat_s.md","lines_changed":2},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"docs/parsers/zipinfo.md","lines_changed":2}]},"message":"formatting"},{"commit":"8e089baf3fe30fed80e1c5cdde7c3046bb70ca5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":86,"insertions":8,"deletions":855,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"],"file_stats":[{"name":"docgen.sh","lines_changed":13},{"name":"docs/parsers/acpi.md","lines_changed":10},{"name":"docs/parsers/airport.md","lines_changed":10},{"name":"docs/parsers/airport_s.md","lines_changed":10},{"name":"docs/parsers/arp.md","lines_changed":10},{"name":"docs/parsers/blkid.md","lines_changed":10},{"name":"docs/parsers/cksum.md","lines_changed":10},{"name":"docs/parsers/crontab.md","lines_changed":10},{"name":"docs/parsers/crontab_u.md","lines_changed":10},{"name":"docs/parsers/csv.md","lines_changed":10},{"name":"docs/parsers/csv_s.md","lines_changed":10},{"name":"docs/parsers/date.md","lines_changed":10},{"name":"docs/parsers/df.md","lines_changed":10},{"name":"docs/parsers/dig.md","lines_changed":10},{"name":"docs/parsers/dir.md","lines_changed":10},{"name":"docs/parsers/dmidecode.md","lines_changed":10},{"name":"docs/parsers/dpkg_l.md","lines_changed":10},{"name":"docs/parsers/du.md","lines_changed":10},{"name":"docs/parsers/env.md","lines_changed":10},{"name":"docs/parsers/file.md","lines_changed":10},{"name":"docs/parsers/finger.md","lines_changed":10},{"name":"docs/parsers/free.md","lines_changed":10},{"name":"docs/parsers/fstab.md","lines_changed":10},{"name":"docs/parsers/group.md","lines_changed":10},{"name":"docs/parsers/gshadow.md","lines_changed":10},{"name":"docs/parsers/hash.md","lines_changed":10},{"name":"docs/parsers/hashsum.md","lines_changed":10},{"name":"docs/parsers/hciconfig.md","lines_changed":10},{"name":"docs/parsers/history.md","lines_changed":10},{"name":"docs/parsers/hosts.md","lines_changed":10},{"name":"docs/parsers/id.md","lines_changed":10},{"name":"docs/parsers/ifconfig.md","lines_changed":10},{"name":"docs/parsers/ini.md","lines_changed":10},{"name":"docs/parsers/iostat.md","lines_changed":10},{"name":"docs/parsers/iostat_s.md","lines_changed":10},{"name":"docs/parsers/iptables.md","lines_changed":10},{"name":"docs/parsers/iw_scan.md","lines_changed":10},{"name":"docs/parsers/jar_manifest.md","lines_changed":10},{"name":"docs/parsers/jobs.md","lines_changed":10},{"name":"docs/parsers/kv.md","lines_changed":10},{"name":"docs/parsers/last.md","lines_changed":10},{"name":"docs/parsers/ls.md","lines_changed":10},{"name":"docs/parsers/ls_s.md","lines_changed":10},{"name":"docs/parsers/lsblk.md","lines_changed":10},{"name":"docs/parsers/lsmod.md","lines_changed":10},{"name":"docs/parsers/lsof.md","lines_changed":10},{"name":"docs/parsers/lsusb.md","lines_changed":10},{"name":"docs/parsers/mount.md","lines_changed":10},{"name":"docs/parsers/netstat.md","lines_changed":10},{"name":"docs/parsers/ntpq.md","lines_changed":10},{"name":"docs/parsers/passwd.md","lines_changed":10},{"name":"docs/parsers/ping.md","lines_changed":10},{"name":"docs/parsers/ping_s.md","lines_changed":10},{"name":"docs/parsers/pip_list.md","lines_changed":10},{"name":"docs/parsers/pip_show.md","lines_changed":10},{"name":"docs/parsers/ps.md","lines_changed":10},{"name":"docs/parsers/route.md","lines_changed":10},{"name":"docs/parsers/rpm_qi.md","lines_changed":10},{"name":"docs/parsers/sfdisk.md","lines_changed":10},{"name":"docs/parsers/shadow.md","lines_changed":10},{"name":"docs/parsers/ss.md","lines_changed":10},{"name":"docs/parsers/stat.md","lines_changed":10},{"name":"docs/parsers/stat_s.md","lines_changed":10},{"name":"docs/parsers/sysctl.md","lines_changed":10},{"name":"docs/parsers/systemctl.md","lines_changed":10},{"name":"docs/parsers/systemctl_lj.md","lines_changed":10},{"name":"docs/parsers/systemctl_ls.md","lines_changed":10},{"name":"docs/parsers/systemctl_luf.md","lines_changed":10},{"name":"docs/parsers/systeminfo.md","lines_changed":10},{"name":"docs/parsers/time.md","lines_changed":10},{"name":"docs/parsers/timedatectl.md","lines_changed":10},{"name":"docs/parsers/tracepath.md","lines_changed":10},{"name":"docs/parsers/traceroute.md","lines_changed":10},{"name":"docs/parsers/ufw.md","lines_changed":10},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":10},{"name":"docs/parsers/uname.md","lines_changed":10},{"name":"docs/parsers/upower.md","lines_changed":10},{"name":"docs/parsers/uptime.md","lines_changed":10},{"name":"docs/parsers/vmstat.md","lines_changed":10},{"name":"docs/parsers/vmstat_s.md","lines_changed":10},{"name":"docs/parsers/w.md","lines_changed":10},{"name":"docs/parsers/wc.md","lines_changed":10},{"name":"docs/parsers/who.md","lines_changed":10},{"name":"docs/parsers/xml.md","lines_changed":10},{"name":"docs/parsers/yaml.md","lines_changed":10},{"name":"docs/parsers/zipinfo.md","lines_changed":10}]},"message":"remove info class from docs"},{"commit":"386f6c317e104e797c2b55e3d21c8b064a83ac78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":89,"insertions":9552,"deletions":9939,"files":["docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/utils.md"],"file_stats":[{"name":"docgen.sh","lines_changed":10},{"name":"docs/lib.md","lines_changed":105},{"name":"docs/parsers/acpi.md","lines_changed":440},{"name":"docs/parsers/airport.md","lines_changed":146},{"name":"docs/parsers/airport_s.md","lines_changed":202},{"name":"docs/parsers/arp.md","lines_changed":220},{"name":"docs/parsers/blkid.md","lines_changed":230},{"name":"docs/parsers/cksum.md","lines_changed":90},{"name":"docs/parsers/crontab.md","lines_changed":330},{"name":"docs/parsers/crontab_u.md","lines_changed":326},{"name":"docs/parsers/csv.md","lines_changed":140},{"name":"docs/parsers/csv_s.md","lines_changed":114},{"name":"docs/parsers/date.md","lines_changed":132},{"name":"docs/parsers/df.md","lines_changed":184},{"name":"docs/parsers/dig.md","lines_changed":614},{"name":"docs/parsers/dir.md","lines_changed":210},{"name":"docs/parsers/dmidecode.md","lines_changed":240},{"name":"docs/parsers/dpkg_l.md","lines_changed":244},{"name":"docs/parsers/du.md","lines_changed":164},{"name":"docs/parsers/env.md","lines_changed":126},{"name":"docs/parsers/file.md","lines_changed":114},{"name":"docs/parsers/finger.md","lines_changed":166},{"name":"docs/parsers/free.md","lines_changed":134},{"name":"docs/parsers/fstab.md","lines_changed":164},{"name":"docs/parsers/group.md","lines_changed":212},{"name":"docs/parsers/gshadow.md","lines_changed":148},{"name":"docs/parsers/hash.md","lines_changed":68},{"name":"docs/parsers/hashsum.md","lines_changed":106},{"name":"docs/parsers/hciconfig.md","lines_changed":620},{"name":"docs/parsers/history.md","lines_changed":106},{"name":"docs/parsers/hosts.md","lines_changed":142},{"name":"docs/parsers/id.md","lines_changed":200},{"name":"docs/parsers/ifconfig.md","lines_changed":388},{"name":"docs/parsers/ini.md","lines_changed":110},{"name":"docs/parsers/iostat.md","lines_changed":304},{"name":"docs/parsers/iostat_s.md","lines_changed":198},{"name":"docs/parsers/iptables.md","lines_changed":312},{"name":"docs/parsers/iw_scan.md","lines_changed":226},{"name":"docs/parsers/jar_manifest.md","lines_changed":148},{"name":"docs/parsers/jobs.md","lines_changed":170},{"name":"docs/parsers/kv.md","lines_changed":86},{"name":"docs/parsers/last.md","lines_changed":186},{"name":"docs/parsers/ls.md","lines_changed":190},{"name":"docs/parsers/ls_s.md","lines_changed":130},{"name":"docs/parsers/lsblk.md","lines_changed":534},{"name":"docs/parsers/lsmod.md","lines_changed":240},{"name":"docs/parsers/lsof.md","lines_changed":228},{"name":"docs/parsers/lsusb.md","lines_changed":502},{"name":"docs/parsers/mount.md","lines_changed":140},{"name":"docs/parsers/netstat.md","lines_changed":688},{"name":"docs/parsers/ntpq.md","lines_changed":402},{"name":"docs/parsers/passwd.md","lines_changed":182},{"name":"docs/parsers/ping.md","lines_changed":308},{"name":"docs/parsers/ping_s.md","lines_changed":160},{"name":"docs/parsers/pip_list.md","lines_changed":84},{"name":"docs/parsers/pip_show.md","lines_changed":120},{"name":"docs/parsers/ps.md","lines_changed":394},{"name":"docs/parsers/route.md","lines_changed":206},{"name":"docs/parsers/rpm_qi.md","lines_changed":296},{"name":"docs/parsers/sfdisk.md","lines_changed":376},{"name":"docs/parsers/shadow.md","lines_changed":196},{"name":"docs/parsers/ss.md","lines_changed":538},{"name":"docs/parsers/stat.md","lines_changed":318},{"name":"docs/parsers/stat_s.md","lines_changed":152},{"name":"docs/parsers/sysctl.md","lines_changed":100},{"name":"docs/parsers/systemctl.md","lines_changed":106},{"name":"docs/parsers/systemctl_lj.md","lines_changed":140},{"name":"docs/parsers/systemctl_ls.md","lines_changed":90},{"name":"docs/parsers/systemctl_luf.md","lines_changed":82},{"name":"docs/parsers/systeminfo.md","lines_changed":396},{"name":"docs/parsers/time.md","lines_changed":242},{"name":"docs/parsers/timedatectl.md","lines_changed":112},{"name":"docs/parsers/tracepath.md","lines_changed":248},{"name":"docs/parsers/traceroute.md","lines_changed":220},{"name":"docs/parsers/ufw.md","lines_changed":390},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":250},{"name":"docs/parsers/uname.md","lines_changed":80},{"name":"docs/parsers/universal.md","lines_changed":72},{"name":"docs/parsers/upower.md","lines_changed":374},{"name":"docs/parsers/uptime.md","lines_changed":120},{"name":"docs/parsers/vmstat.md","lines_changed":226},{"name":"docs/parsers/vmstat_s.md","lines_changed":172},{"name":"docs/parsers/w.md","lines_changed":196},{"name":"docs/parsers/wc.md","lines_changed":98},{"name":"docs/parsers/who.md","lines_changed":250},{"name":"docs/parsers/xml.md","lines_changed":134},{"name":"docs/parsers/yaml.md","lines_changed":162},{"name":"docs/parsers/zipinfo.md","lines_changed":138},{"name":"docs/utils.md","lines_changed":134}]},"message":"update markdown processor settings"},{"commit":"75cd84ce8a86b3357c6cf5fe4fbc62d0f298a29a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":94,"insertions":11423,"deletions":10081,"files":["README.md","docgen.sh","docgen.sh.old","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/utils.md","jc/cli.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docgen.sh","lines_changed":12},{"name":"docgen.sh.old","lines_changed":44},{"name":"docs/lib.md","lines_changed":151},{"name":"docs/parsers/acpi.md","lines_changed":454},{"name":"docs/parsers/airport.md","lines_changed":166},{"name":"docs/parsers/airport_s.md","lines_changed":224},{"name":"docs/parsers/arp.md","lines_changed":240},{"name":"docs/parsers/blkid.md","lines_changed":250},{"name":"docs/parsers/cksum.md","lines_changed":110},{"name":"docs/parsers/crontab.md","lines_changed":350},{"name":"docs/parsers/crontab_u.md","lines_changed":348},{"name":"docs/parsers/csv.md","lines_changed":160},{"name":"docs/parsers/csv_s.md","lines_changed":120},{"name":"docs/parsers/date.md","lines_changed":152},{"name":"docs/parsers/df.md","lines_changed":204},{"name":"docs/parsers/dig.md","lines_changed":634},{"name":"docs/parsers/dir.md","lines_changed":230},{"name":"docs/parsers/dmidecode.md","lines_changed":260},{"name":"docs/parsers/dpkg_l.md","lines_changed":266},{"name":"docs/parsers/du.md","lines_changed":184},{"name":"docs/parsers/env.md","lines_changed":146},{"name":"docs/parsers/file.md","lines_changed":134},{"name":"docs/parsers/finger.md","lines_changed":186},{"name":"docs/parsers/free.md","lines_changed":154},{"name":"docs/parsers/fstab.md","lines_changed":184},{"name":"docs/parsers/group.md","lines_changed":232},{"name":"docs/parsers/gshadow.md","lines_changed":168},{"name":"docs/parsers/hash.md","lines_changed":88},{"name":"docs/parsers/hashsum.md","lines_changed":126},{"name":"docs/parsers/hciconfig.md","lines_changed":634},{"name":"docs/parsers/history.md","lines_changed":126},{"name":"docs/parsers/hosts.md","lines_changed":162},{"name":"docs/parsers/id.md","lines_changed":220},{"name":"docs/parsers/ifconfig.md","lines_changed":472},{"name":"docs/parsers/ini.md","lines_changed":130},{"name":"docs/parsers/iostat.md","lines_changed":324},{"name":"docs/parsers/iostat_s.md","lines_changed":220},{"name":"docs/parsers/iptables.md","lines_changed":332},{"name":"docs/parsers/iw_scan.md","lines_changed":248},{"name":"docs/parsers/jar_manifest.md","lines_changed":170},{"name":"docs/parsers/jobs.md","lines_changed":190},{"name":"docs/parsers/kv.md","lines_changed":106},{"name":"docs/parsers/last.md","lines_changed":207},{"name":"docs/parsers/ls.md","lines_changed":210},{"name":"docs/parsers/ls_s.md","lines_changed":152},{"name":"docs/parsers/lsblk.md","lines_changed":548},{"name":"docs/parsers/lsmod.md","lines_changed":260},{"name":"docs/parsers/lsof.md","lines_changed":248},{"name":"docs/parsers/lsusb.md","lines_changed":518},{"name":"docs/parsers/mount.md","lines_changed":160},{"name":"docs/parsers/netstat.md","lines_changed":702},{"name":"docs/parsers/ntpq.md","lines_changed":422},{"name":"docs/parsers/passwd.md","lines_changed":202},{"name":"docs/parsers/ping.md","lines_changed":328},{"name":"docs/parsers/ping_s.md","lines_changed":182},{"name":"docs/parsers/pip_list.md","lines_changed":106},{"name":"docs/parsers/pip_show.md","lines_changed":142},{"name":"docs/parsers/ps.md","lines_changed":414},{"name":"docs/parsers/route.md","lines_changed":226},{"name":"docs/parsers/rpm_qi.md","lines_changed":318},{"name":"docs/parsers/sfdisk.md","lines_changed":396},{"name":"docs/parsers/shadow.md","lines_changed":216},{"name":"docs/parsers/ss.md","lines_changed":552},{"name":"docs/parsers/stat.md","lines_changed":338},{"name":"docs/parsers/stat_s.md","lines_changed":174},{"name":"docs/parsers/sysctl.md","lines_changed":120},{"name":"docs/parsers/systemctl.md","lines_changed":126},{"name":"docs/parsers/systemctl_lj.md","lines_changed":162},{"name":"docs/parsers/systemctl_ls.md","lines_changed":112},{"name":"docs/parsers/systemctl_luf.md","lines_changed":104},{"name":"docs/parsers/systeminfo.md","lines_changed":416},{"name":"docs/parsers/time.md","lines_changed":262},{"name":"docs/parsers/timedatectl.md","lines_changed":132},{"name":"docs/parsers/tracepath.md","lines_changed":268},{"name":"docs/parsers/traceroute.md","lines_changed":288},{"name":"docs/parsers/ufw.md","lines_changed":410},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":272},{"name":"docs/parsers/uname.md","lines_changed":100},{"name":"docs/parsers/universal.md","lines_changed":85},{"name":"docs/parsers/upower.md","lines_changed":394},{"name":"docs/parsers/uptime.md","lines_changed":140},{"name":"docs/parsers/vmstat.md","lines_changed":246},{"name":"docs/parsers/vmstat_s.md","lines_changed":194},{"name":"docs/parsers/w.md","lines_changed":216},{"name":"docs/parsers/wc.md","lines_changed":118},{"name":"docs/parsers/who.md","lines_changed":270},{"name":"docs/parsers/xml.md","lines_changed":154},{"name":"docs/parsers/yaml.md","lines_changed":182},{"name":"docs/parsers/zipinfo.md","lines_changed":158},{"name":"docs/readme.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":223},{"name":"jc/cli.py","lines_changed":4},{"name":"man/jc.1","lines_changed":12}]},"message":"try new markdown conversion"},{"commit":"6fad44e35df5d0e33e716d0fcb84ed309e6fd30b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"fix type hint"},{"commit":"1caac750daa25a5abeb1289964e918ec06289bfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":4}]},"message":"Update type hints"},{"commit":"16370dcb3d5cf1304c2340ef2253ef2987a982b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"update type hints"},{"commit":"c1302f2573993a6908001d6df0697486f54a9e7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":8,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":27}]},"message":"add type-hints to public api"},{"commit":"6f0ffe0955e4d9d6cc82552cf4e4f419e3ff3756","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"docu update"},{"commit":"1f89745fe7cca3a0ac27445942098b717675a481","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"a46ac18ef775bb2c52675e61e11c5d92f33cbe81","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"doc update"},{"commit":"1a05f1c575b57456481e41baaf551cef30115966","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":64,"deletions":54,"files":["jc/__init__.py","jc/cli.py","jc/lib.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":4},{"name":"jc/cli.py","lines_changed":48},{"name":"jc/lib.py","lines_changed":66}]},"message":"add parser info functions. move _get_parser functionality from cli to lib"},{"commit":"08f818aa42ca68050a79ec387c42bff265257fd5","merge":"027c231 b389665","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #199 from kellyjonbrazil/master\n\nsync to dev"},{"commit":"b3896650c230b4acc73704a50c93ee74e4034eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":62,"deletions":104,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":83},{"name":"templates/readme_template","lines_changed":83}]},"message":"revert column formatting"},{"commit":"f285539526998a5097943c71dcecb2979036b2b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":104,"deletions":62,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":83},{"name":"templates/readme_template","lines_changed":83}]},"message":"conform to 80 columns"},{"commit":"a896dcdf3b31b60582ebb1b3bca5d1103f998dd6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":338,"deletions":120,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":229},{"name":"templates/readme_template","lines_changed":229}]},"message":"formatting"},{"commit":"0a187d4ed08173ec360a006ae2367bb1f2f96c52","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":4}]},"message":"add console interview links"},{"commit":"2d65bc57d5a396e6683f970194de29494b5c1272","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":6},{"name":"jc/__init__.py","lines_changed":6}]},"message":"add quotes"},{"commit":"ab63809fde0cefe1f0401d957a3736fdb760f0cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"update description"},{"commit":"6f04707dc63936efd0e533ae36e1b39ead10c466","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add python package doc info to top of page"},{"commit":"d14a86a9b58bdc3cb0c8df1dfa495aefdaab8033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2}]},"message":"fix typo"},{"commit":"8e6a31d3da19926ac46744e02b27a899ca5fbd7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":14,"deletions":8,"files":["CHANGELOG","docs/readme.md","jc/__init__.py","jc/lib.py","man/jc.1","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4},{"name":"jc/lib.py","lines_changed":7},{"name":"man/jc.1","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"minor fix for macOS binary"},{"commit":"6e7b6afe87355e96422bb2560ffcbd5e79d28f04","merge":"70cb445 027c231","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #198 from kellyjonbrazil/dev\n\nDev v1.18.0"},{"commit":"027c231097a002526350a93322407582a85db0cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"formatting"},{"commit":"f1cf7d1f953586dd44a4463d924f1a1f52717c37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":5,"files":["jc/parsers/foo.py","jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":6},{"name":"jc/parsers/foo_s.py","lines_changed":6}]},"message":"add helper function info"},{"commit":"df611cc263f50285e74ceb3381f55b43a74870a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":6},{"name":"jc/__init__.py","lines_changed":6}]},"message":"formatting"},{"commit":"0f3143bbbb593340190e66729580146410012e14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":6},{"name":"jc/__init__.py","lines_changed":6}]},"message":"formatting"},{"commit":"c280757b7624a46543e481ca47a6e084d2d6f519","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"formatting"},{"commit":"d30b9d84ef5ec3a2a504f7ea251c932b8c9ea878","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"formatting"},{"commit":"50ded1dbd97d26cf01d7e1a98b40e0f0f7d02202","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":4,"files":["docs/readme.md"],"file_stats":[{"name":"docs/readme.md","lines_changed":14}]},"message":"doc update"},{"commit":"e319aea5a45c598a44f35b4e58131d977509e4f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":4,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":14}]},"message":"add doc version info"},{"commit":"ba86509c1d8700a50fe14e9d931ee57261306c5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":9,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":12}]},"message":"simplify OSError exception handling"},{"commit":"0a9279ae6bfdd1aa59f5e9b31ce0af3bfec19f96","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["CHANGELOG","tests/test_lib.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":5},{"name":"tests/test_lib.py","lines_changed":1}]},"message":"doc update"},{"commit":"a13dde12af01b4473aa9a34b8a0d7387fb48500a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":173,"insertions":173,"deletions":173,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/dpkg_l.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/finger.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/gshadow.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iostat.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/jar_manifest.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/kv.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/stat_s.md","lines_changed":2},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"docs/parsers/zipinfo.md","lines_changed":2},{"name":"jc/parsers/acpi.py","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/blkid.py","lines_changed":2},{"name":"jc/parsers/cksum.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"jc/parsers/csv.py","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/dir.py","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":2},{"name":"jc/parsers/dpkg_l.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/finger.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/group.py","lines_changed":2},{"name":"jc/parsers/gshadow.py","lines_changed":2},{"name":"jc/parsers/hash.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":2},{"name":"jc/parsers/hciconfig.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/iostat.py","lines_changed":2},{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2},{"name":"jc/parsers/jar_manifest.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/kv.py","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/lsusb.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/ntpq.py","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":2},{"name":"jc/parsers/ping.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/rpm_qi.py","lines_changed":2},{"name":"jc/parsers/sfdisk.py","lines_changed":2},{"name":"jc/parsers/shadow.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/stat_s.py","lines_changed":2},{"name":"jc/parsers/sysctl.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/systeminfo.py","lines_changed":2},{"name":"jc/parsers/time.py","lines_changed":2},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/ufw.py","lines_changed":2},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/parsers/wc.py","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":2},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2},{"name":"jc/parsers/zipinfo.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"change raw output wording"},{"commit":"e2ed358de1abefd737c187a324cbe4734d6975e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"changelog update"},{"commit":"a2cd3666210be3727a00c3405972f32fbd421046","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["docs/_config.yml"],"file_stats":[{"name":"docs/_config.yml","lines_changed":1}]},"message":"Delete _config.yml"},{"commit":"15addd9bfc18a0e87beb97040b431c872b783662","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":8,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":5},{"name":"jc/parsers/universal.py","lines_changed":7}]},"message":"doc fix"},{"commit":"a4e34b0053ec0c032f4783caaa3e07fc2c685a98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":63,"deletions":0,"files":["docgen.sh","docs/parsers/universal.md"],"file_stats":[{"name":"docgen.sh","lines_changed":3},{"name":"docs/parsers/universal.md","lines_changed":60}]},"message":"add universal parser docs"},{"commit":"d09529ac302fbcc156d58cf836f8397c98121a76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"changelog update"},{"commit":"553097b5050dc02fbdaeec2e2e138e01bc6811d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":2}]},"message":"docstring update"},{"commit":"49c556857708307f617b2b516f2d281398681b5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":35,"deletions":15,"files":["README.md","docs/lib.md","docs/readme.md","jc/__init__.py","jc/lib.py","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/lib.md","lines_changed":9},{"name":"docs/readme.md","lines_changed":13},{"name":"jc/__init__.py","lines_changed":13},{"name":"jc/lib.py","lines_changed":9},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"module doc update"},{"commit":"6962b9ee8a52c924dc2de6b79ddeea3636e80fe4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":6,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":7},{"name":"jc/lib.py","lines_changed":7}]},"message":"formatting"},{"commit":"b4575a3f780f9aa2751c8b4789f67aaca32dd1cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":91,"deletions":1,"files":["docgen.sh","docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docgen.sh","lines_changed":4},{"name":"docs/lib.md","lines_changed":86},{"name":"jc/lib.py","lines_changed":2}]},"message":"add lib docs"},{"commit":"35b54d235d73b2ce658223be3d6095906f142d89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"templates/readme_template","lines_changed":3}]},"message":"add python package doc info"},{"commit":"583a5757e454a4e36b331057d1266279b55ee16a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":18,"insertions":34,"deletions":30,"files":["docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/file.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/traceroute.md","docs/parsers/ufw_appinfo.md","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/file.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/traceroute.py","jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":6},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":9},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":6},{"name":"jc/parsers/ls.py","lines_changed":5},{"name":"jc/parsers/ls_s.py","lines_changed":9},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":2}]},"message":"formatting"},{"commit":"f355333eeed3c4afba844dc7bed5224356552adc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":8},{"name":"jc/__init__.py","lines_changed":8}]},"message":"formatting"},{"commit":"4d7df109604e4f8367904968602acfc05217a7fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"formatting"},{"commit":"66b2c28f4bc75fb76800f9fb7ea485eee194a9a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":24,"deletions":24,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":24},{"name":"jc/__init__.py","lines_changed":24}]},"message":"formatting"},{"commit":"299a9c6d88fdf1fede447b4057d8f4263daef733","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":25,"deletions":57,"files":["docs/parsers/csv.md","docs/readme.md"],"file_stats":[{"name":"docs/parsers/csv.md","lines_changed":4},{"name":"docs/readme.md","lines_changed":78}]},"message":"formatting"},{"commit":"bd391d979ce98b126dab0f012a56b3fcb1f73439","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":55,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":78}]},"message":"add lib function docs"},{"commit":"7309bd2282445f6daef0b1491ff60b8104500abb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":19,"deletions":10,"files":["jc/lib.py","jc/parsers/csv.py","jc/parsers/universal.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":15},{"name":"jc/parsers/csv.py","lines_changed":4},{"name":"jc/parsers/universal.py","lines_changed":10}]},"message":"add get_help"},{"commit":"ce84c09d3394b598f19a3e012ef27ce4154e3b3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":3}]},"message":"add get_help()"},{"commit":"b4fffbb6476daf78fbdf19dbf31bbeeab950d2dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":46,"insertions":501,"deletions":304,"files":["docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/history.md","docs/parsers/ini.md","docs/parsers/iostat_s.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsusb.md","docs/parsers/netstat.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/ps.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/upower.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/who.md"],"file_stats":[{"name":"docs/parsers/crontab.md","lines_changed":3},{"name":"docs/parsers/crontab_u.md","lines_changed":22},{"name":"docs/parsers/csv.md","lines_changed":9},{"name":"docs/parsers/csv_s.md","lines_changed":35},{"name":"docs/parsers/date.md","lines_changed":18},{"name":"docs/parsers/dig.md","lines_changed":16},{"name":"docs/parsers/dir.md","lines_changed":6},{"name":"docs/parsers/dpkg_l.md","lines_changed":7},{"name":"docs/parsers/du.md","lines_changed":20},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":8},{"name":"docs/parsers/ini.md","lines_changed":15},{"name":"docs/parsers/iostat_s.md","lines_changed":25},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jar_manifest.md","lines_changed":25},{"name":"docs/parsers/jobs.md","lines_changed":3},{"name":"docs/parsers/kv.md","lines_changed":11},{"name":"docs/parsers/last.md","lines_changed":10},{"name":"docs/parsers/ls.md","lines_changed":19},{"name":"docs/parsers/ls_s.md","lines_changed":51},{"name":"docs/parsers/lsblk.md","lines_changed":10},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":3},{"name":"docs/parsers/ping.md","lines_changed":32},{"name":"docs/parsers/ping_s.md","lines_changed":85},{"name":"docs/parsers/ps.md","lines_changed":8},{"name":"docs/parsers/rpm_qi.md","lines_changed":37},{"name":"docs/parsers/sfdisk.md","lines_changed":8},{"name":"docs/parsers/ss.md","lines_changed":6},{"name":"docs/parsers/stat.md","lines_changed":6},{"name":"docs/parsers/stat_s.md","lines_changed":27},{"name":"docs/parsers/sysctl.md","lines_changed":7},{"name":"docs/parsers/systemctl.md","lines_changed":4},{"name":"docs/parsers/systemctl_ls.md","lines_changed":3},{"name":"docs/parsers/systemctl_luf.md","lines_changed":3},{"name":"docs/parsers/systeminfo.md","lines_changed":19},{"name":"docs/parsers/time.md","lines_changed":33},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"docs/parsers/ufw.md","lines_changed":7},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":28},{"name":"docs/parsers/upower.md","lines_changed":16},{"name":"docs/parsers/vmstat.md","lines_changed":13},{"name":"docs/parsers/vmstat_s.md","lines_changed":111},{"name":"docs/parsers/who.md","lines_changed":7}]},"message":"formatting"},{"commit":"3701b4198aad1826ad6da571fbcaa530b057cc48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":86,"insertions":710,"deletions":606,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":5},{"name":"jc/parsers/airport.py","lines_changed":7},{"name":"jc/parsers/airport_s.py","lines_changed":3},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/blkid.py","lines_changed":10},{"name":"jc/parsers/cksum.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":6},{"name":"jc/parsers/crontab_u.py","lines_changed":25},{"name":"jc/parsers/csv.py","lines_changed":14},{"name":"jc/parsers/csv_s.py","lines_changed":38},{"name":"jc/parsers/date.py","lines_changed":69},{"name":"jc/parsers/df.py","lines_changed":13},{"name":"jc/parsers/dig.py","lines_changed":28},{"name":"jc/parsers/dir.py","lines_changed":8},{"name":"jc/parsers/dmidecode.py","lines_changed":3},{"name":"jc/parsers/dpkg_l.py","lines_changed":10},{"name":"jc/parsers/du.py","lines_changed":23},{"name":"jc/parsers/env.py","lines_changed":7},{"name":"jc/parsers/file.py","lines_changed":6},{"name":"jc/parsers/finger.py","lines_changed":14},{"name":"jc/parsers/foo.py","lines_changed":3},{"name":"jc/parsers/foo_s.py","lines_changed":23},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/group.py","lines_changed":3},{"name":"jc/parsers/gshadow.py","lines_changed":3},{"name":"jc/parsers/hash.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":5},{"name":"jc/parsers/hciconfig.py","lines_changed":13},{"name":"jc/parsers/history.py","lines_changed":10},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":3},{"name":"jc/parsers/ifconfig.py","lines_changed":20},{"name":"jc/parsers/ini.py","lines_changed":23},{"name":"jc/parsers/iostat_s.py","lines_changed":25},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":11},{"name":"jc/parsers/jar_manifest.py","lines_changed":25},{"name":"jc/parsers/jobs.py","lines_changed":5},{"name":"jc/parsers/kv.py","lines_changed":13},{"name":"jc/parsers/last.py","lines_changed":17},{"name":"jc/parsers/ls.py","lines_changed":21},{"name":"jc/parsers/ls_s.py","lines_changed":53},{"name":"jc/parsers/lsblk.py","lines_changed":15},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/lsusb.py","lines_changed":5},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":20},{"name":"jc/parsers/ntpq.py","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":3},{"name":"jc/parsers/ping.py","lines_changed":46},{"name":"jc/parsers/ping_s.py","lines_changed":99},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":10},{"name":"jc/parsers/route.py","lines_changed":6},{"name":"jc/parsers/rpm_qi.py","lines_changed":40},{"name":"jc/parsers/sfdisk.py","lines_changed":16},{"name":"jc/parsers/shadow.py","lines_changed":3},{"name":"jc/parsers/ss.py","lines_changed":8},{"name":"jc/parsers/stat.py","lines_changed":12},{"name":"jc/parsers/stat_s.py","lines_changed":31},{"name":"jc/parsers/sysctl.py","lines_changed":10},{"name":"jc/parsers/systemctl.py","lines_changed":6},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":5},{"name":"jc/parsers/systemctl_luf.py","lines_changed":5},{"name":"jc/parsers/systeminfo.py","lines_changed":31},{"name":"jc/parsers/time.py","lines_changed":51},{"name":"jc/parsers/timedatectl.py","lines_changed":8},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":7},{"name":"jc/parsers/ufw.py","lines_changed":7},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":28},{"name":"jc/parsers/uname.py","lines_changed":4},{"name":"jc/parsers/universal.py","lines_changed":40},{"name":"jc/parsers/upower.py","lines_changed":32},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":28},{"name":"jc/parsers/vmstat_s.py","lines_changed":125},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/parsers/wc.py","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":10},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"formatting"},{"commit":"d4c34098fa7ad2098076f0fa0564467e5d06f916","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":5}]},"message":"formatting"},{"commit":"b3c531193b3fc53697e7d7823576f481f9462d53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":125,"deletions":71,"files":["CHANGELOG","docs/utils.md","jc/utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docs/utils.md","lines_changed":79},{"name":"jc/utils.py","lines_changed":114}]},"message":"formatting"},{"commit":"1d0e07c77bab5c48405323e52873c7952dd0a587","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":57,"deletions":55,"files":["docs/readme.md","jc/__init__.py","jc/lib.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":33},{"name":"jc/__init__.py","lines_changed":33},{"name":"jc/lib.py","lines_changed":46}]},"message":"formatting"},{"commit":"06a322cf9c7468dc7e8ba05914e1d07bbc51f63a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":8,"files":["tests/test_lib.py"],"file_stats":[{"name":"tests/test_lib.py","lines_changed":22}]},"message":"rename tests and add conversion function tests"},{"commit":"623d148712f93eacf9b7b5803140603f0af67acb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"647e83d0439a0937db14a2cc97929e38a6b6a43b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["tests/test_lib.py"],"file_stats":[{"name":"tests/test_lib.py","lines_changed":3}]},"message":"add test to ensure there are zero plugin parsers installed during tests"},{"commit":"91a554464444da0cc3ed3b4d212539232411f6cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":5}]},"message":"doc update"},{"commit":"a1190998aef1bf403ee34c38c1a0fbd6291ac38b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":82,"deletions":0,"files":["tests/test_jc.py","tests/test_lib.py"],"file_stats":[{"name":"tests/test_jc.py","lines_changed":41},{"name":"tests/test_lib.py","lines_changed":41}]},"message":"add jc and jc.lib tests"},{"commit":"097d7a1850f6f6df73a5761c657b73ef9dbd3e29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":4}]},"message":"simplify __init__"},{"commit":"302bf72e720b3a67fbf1300eaff4f99fc343abeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":138,"insertions":718,"deletions":6,"files":["docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py"],"file_stats":[{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":5},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iostat.md","lines_changed":5},{"name":"docs/parsers/iostat_s.md","lines_changed":7},{"name":"docs/parsers/iptables.md","lines_changed":7},{"name":"docs/parsers/iw_scan.md","lines_changed":9},{"name":"docs/parsers/jar_manifest.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":7},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/ping_s.md","lines_changed":7},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/sfdisk.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/stat_s.md","lines_changed":7},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/systeminfo.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"docs/parsers/ufw.md","lines_changed":5},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/vmstat.md","lines_changed":5},{"name":"docs/parsers/vmstat_s.md","lines_changed":7},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5},{"name":"docs/parsers/zipinfo.md","lines_changed":5},{"name":"jc/parsers/env.py","lines_changed":5},{"name":"jc/parsers/file.py","lines_changed":5},{"name":"jc/parsers/finger.py","lines_changed":5},{"name":"jc/parsers/foo.py","lines_changed":5},{"name":"jc/parsers/foo_s.py","lines_changed":7},{"name":"jc/parsers/free.py","lines_changed":5},{"name":"jc/parsers/fstab.py","lines_changed":5},{"name":"jc/parsers/group.py","lines_changed":5},{"name":"jc/parsers/gshadow.py","lines_changed":5},{"name":"jc/parsers/hash.py","lines_changed":5},{"name":"jc/parsers/hashsum.py","lines_changed":5},{"name":"jc/parsers/hciconfig.py","lines_changed":5},{"name":"jc/parsers/history.py","lines_changed":5},{"name":"jc/parsers/hosts.py","lines_changed":5},{"name":"jc/parsers/id.py","lines_changed":5},{"name":"jc/parsers/ifconfig.py","lines_changed":5},{"name":"jc/parsers/ini.py","lines_changed":5},{"name":"jc/parsers/iostat.py","lines_changed":5},{"name":"jc/parsers/iostat_s.py","lines_changed":7},{"name":"jc/parsers/iptables.py","lines_changed":7},{"name":"jc/parsers/iw_scan.py","lines_changed":9},{"name":"jc/parsers/jar_manifest.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":5},{"name":"jc/parsers/kv.py","lines_changed":5},{"name":"jc/parsers/last.py","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":5},{"name":"jc/parsers/ls_s.py","lines_changed":7},{"name":"jc/parsers/lsblk.py","lines_changed":5},{"name":"jc/parsers/lsmod.py","lines_changed":5},{"name":"jc/parsers/lsof.py","lines_changed":5},{"name":"jc/parsers/lsusb.py","lines_changed":5},{"name":"jc/parsers/mount.py","lines_changed":5},{"name":"jc/parsers/netstat.py","lines_changed":5},{"name":"jc/parsers/ntpq.py","lines_changed":5},{"name":"jc/parsers/passwd.py","lines_changed":5},{"name":"jc/parsers/ping.py","lines_changed":5},{"name":"jc/parsers/ping_s.py","lines_changed":7},{"name":"jc/parsers/pip_list.py","lines_changed":5},{"name":"jc/parsers/pip_show.py","lines_changed":5},{"name":"jc/parsers/ps.py","lines_changed":5},{"name":"jc/parsers/route.py","lines_changed":5},{"name":"jc/parsers/rpm_qi.py","lines_changed":5},{"name":"jc/parsers/sfdisk.py","lines_changed":5},{"name":"jc/parsers/shadow.py","lines_changed":5},{"name":"jc/parsers/ss.py","lines_changed":5},{"name":"jc/parsers/stat.py","lines_changed":5},{"name":"jc/parsers/stat_s.py","lines_changed":7},{"name":"jc/parsers/sysctl.py","lines_changed":5},{"name":"jc/parsers/systemctl.py","lines_changed":5},{"name":"jc/parsers/systemctl_lj.py","lines_changed":5},{"name":"jc/parsers/systemctl_ls.py","lines_changed":5},{"name":"jc/parsers/systemctl_luf.py","lines_changed":5},{"name":"jc/parsers/systeminfo.py","lines_changed":5},{"name":"jc/parsers/time.py","lines_changed":5},{"name":"jc/parsers/timedatectl.py","lines_changed":5},{"name":"jc/parsers/tracepath.py","lines_changed":5},{"name":"jc/parsers/traceroute.py","lines_changed":5},{"name":"jc/parsers/ufw.py","lines_changed":5},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":5},{"name":"jc/parsers/uname.py","lines_changed":5},{"name":"jc/parsers/upower.py","lines_changed":5},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/vmstat.py","lines_changed":5},{"name":"jc/parsers/vmstat_s.py","lines_changed":7},{"name":"jc/parsers/w.py","lines_changed":5},{"name":"jc/parsers/wc.py","lines_changed":5},{"name":"jc/parsers/who.py","lines_changed":5},{"name":"jc/parsers/xml.py","lines_changed":5},{"name":"jc/parsers/yaml.py","lines_changed":5},{"name":"jc/parsers/zipinfo.py","lines_changed":5}]},"message":"Update high-level API docs"},{"commit":"2c42baf3a4dd6733c078f31a1becd708a05f2c36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":34,"insertions":174,"deletions":0,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/csv_s.md","lines_changed":7},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"jc/parsers/acpi.py","lines_changed":5},{"name":"jc/parsers/airport.py","lines_changed":5},{"name":"jc/parsers/airport_s.py","lines_changed":5},{"name":"jc/parsers/arp.py","lines_changed":5},{"name":"jc/parsers/blkid.py","lines_changed":5},{"name":"jc/parsers/cksum.py","lines_changed":5},{"name":"jc/parsers/crontab.py","lines_changed":5},{"name":"jc/parsers/crontab_u.py","lines_changed":5},{"name":"jc/parsers/csv.py","lines_changed":5},{"name":"jc/parsers/csv_s.py","lines_changed":7},{"name":"jc/parsers/date.py","lines_changed":5},{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":5},{"name":"jc/parsers/dir.py","lines_changed":5},{"name":"jc/parsers/dmidecode.py","lines_changed":5},{"name":"jc/parsers/dpkg_l.py","lines_changed":5},{"name":"jc/parsers/du.py","lines_changed":5}]},"message":"add new high-level api info"},{"commit":"03feb89c84096c0ea1d6ae3a0634ae7b8b507e8f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2}]},"message":"add module list info"},{"commit":"9dd553192fbca3037b3afe5df6bae88f7a8a9365","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":29,"deletions":12,"files":["CHANGELOG","README.md","docs/readme.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":10},{"name":"docs/readme.md","lines_changed":16},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":10}]},"message":"doc update"},{"commit":"fa3f02e9d1ac7867e3465c2d214f4e4229ff4c66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"0a9dde58c5235f78c4c9ae9c013f7454482c6067","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":228,"deletions":134,"files":["jc/__init__.py","jc/cli.py","jc/lib.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":22},{"name":"jc/cli.py","lines_changed":154},{"name":"jc/lib.py","lines_changed":186}]},"message":"add jc.parse() high-level API"},{"commit":"70cb4453bebb235130e2c287633ecb1de6c2b0aa","merge":"e6900e2 830674c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #195 from kellyjonbrazil/dev\n\nDev v1.17.7"},{"commit":"830674cc6f19e107347a743baff7bbaab7f80b75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["CHANGELOG","jc/__init__.py","man/jc.1","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"fb406b58a12fdfe81bcff76671661af77e7f2fe5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["docs/parsers/stat_s.md","jc/parsers/stat_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/stat_s.md","lines_changed":4},{"name":"jc/parsers/stat_s.py","lines_changed":4},{"name":"man/jc.1","lines_changed":2}]},"message":"formatting"},{"commit":"55b272e41259ddc835cf4eb513fb67e7b2cf1573","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":2}]},"message":"tighten stat data detection"},{"commit":"94f62a9bf36242310790a0f37c66b2e6c6fdc078","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/stat_s.md","jc/parsers/stat_s.py"],"file_stats":[{"name":"docs/parsers/stat_s.md","lines_changed":6},{"name":"jc/parsers/stat_s.py","lines_changed":6}]},"message":"formatting"},{"commit":"8d19e4cb7b45e3b6cb8c404c959949b7593c9386","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":115,"deletions":1,"files":["CHANGELOG","README.md","docs/parsers/stat_s.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/stat_s.md","lines_changed":105},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update"},{"commit":"7e510d48e0f8426a67cf8d70d06d0331c274d358","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":106,"deletions":2,"files":["jc/parsers/stat_s.py","tests/fixtures/centos-7.7/stat-streaming.json","tests/fixtures/freebsd12/stat-streaming.json",".../stat-filename-with-spaces-streaming.json","tests/fixtures/osx-10.14.6/stat-streaming.json","tests/fixtures/ubuntu-18.04/stat-streaming.json","tests/test_stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":3},{"name":"tests/fixtures/centos-7.7/stat-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/stat-streaming.json","lines_changed":1},{"name":".../stat-filename-with-spaces-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/stat-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/stat-streaming.json","lines_changed":1},{"name":"tests/test_stat_s.py","lines_changed":100}]},"message":"simplify non-stat parse error logic"},{"commit":"7b20cffb143447f4497bc4e895eac2426e8a519f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":8}]},"message":"simplify last item logic"},{"commit":"5c934c43c13b69183561da8a77280feb3363e950","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":2}]},"message":"add continue to simplify logic"},{"commit":"8609298449e997ba4804d818f4fc23cb393ded7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":8}]},"message":"update docstring"},{"commit":"72cb0dc10b2dac486d3e2a52cf44baf0d7496034","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":10,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":24}]},"message":"fixup for first and last items"},{"commit":"7b22fa81ded0f6f59e250ffea63c5d2a0f928b25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":8}]},"message":"raise for non-stat data"},{"commit":"0b6a1307790e0793917bc2781e4873aa9dd67225","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":4}]},"message":"ignore blank lines"},{"commit":"fdcf4338e0f099699f8d48df6382be1cc97dba84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":6}]},"message":"add examples to docstring"},{"commit":"ee43037f481286a34a766390568965fdd53af132","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":2}]},"message":"remove unused continue lines"},{"commit":"26e365563c314e694915c7a3feae490ea99a112c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":50,"deletions":11,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":61}]},"message":"add schema and _process logic"},{"commit":"1b39586bb1b62aee8ae709512c2e3f79cefdb3d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":227,"deletions":0,"files":["jc/cli.py","jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/stat_s.py","lines_changed":226}]},"message":"add stat streaming parser"},{"commit":"8bb3a6bea34d60d49039f1ed72fd7e413edc05da","merge":"78672bd e6900e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #194 from kellyjonbrazil/master\n\nsync to dev"},{"commit":"e6900e2000bf265dfcfc09ffbfda39e9238661af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":21}]},"message":"add jar-manifest"},{"commit":"0ee244756bf39123e4873eb231156edbe7f0e0ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/jar_manifest.md","jc/parsers/jar_manifest.py"],"file_stats":[{"name":"docs/parsers/jar_manifest.md","lines_changed":2},{"name":"jc/parsers/jar_manifest.py","lines_changed":2}]},"message":"spelling"},{"commit":"6d5ac9abe6712e01887ce0d96c278a568319f405","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["docs/parsers/csv.md","docs/parsers/csv_s.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"update docs"},{"commit":"44f6d9e1321459be8196aeebf6db088cc5120e61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"changelog update"},{"commit":"360154559c5dee6affa55bbdd5d2f473248b9168","merge":"241d53a 78672bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #193 from kellyjonbrazil/dev\n\nDev add csv doublequote fix"},{"commit":"78672bd7ad66c418e0ecf31add73f887b0946d29","merge":"bc7973a 65d96e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #190 from shaikustin/csv-doubleqouted\n\nfix doubleqoute in csv"},{"commit":"65d96e26b59e231c77c1dbba1dc91708c33de30c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":13,"deletions":0,"files":["tests/fixtures/generic/csv-doubleqouted-streaming.json","tests/test_csv_s.py"],"file_stats":[{"name":"tests/fixtures/generic/csv-doubleqouted-streaming.json","lines_changed":1},{"name":"tests/test_csv_s.py","lines_changed":12}]},"message":"add streaming tests"},{"commit":"241d53af9a5c9bba70e28835e22c52c0060269ba","merge":"f733100 bc7973a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #192 from kellyjonbrazil/dev\n\nDev v1.17.6"},{"commit":"5563829df2849a899df2e9211d6c92bddc695f9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":8}]},"message":"make dialect sniff behavior match non-streaming parser"},{"commit":"3a4a27e1f94ee07352c7616c57ec655c1aea04f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/csv.py"],"file_stats":[{"name":"jc/parsers/csv.py","lines_changed":4}]},"message":"version bump"},{"commit":"9c887a36a804d817c3f669a55b9b1566d09d645d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":6}]},"message":"update csv_s parser with csv changes"},{"commit":"bc7973af36e13006230b5faa9e201e300d468912","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","jc/cli.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"update copyright"},{"commit":"32972d8fdbdc71923978fd5c2a87fd6cfa4b7f8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":122,"deletions":9,"files":["CHANGELOG","README.md","docs/parsers/jar_manifest.md","jc/__init__.py","jc/parsers/jar_manifest.py","man/jc.1","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/jar_manifest.md","lines_changed":104},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/parsers/jar_manifest.py","lines_changed":12},{"name":"man/jc.1","lines_changed":7},{"name":"setup.py","lines_changed":2}]},"message":"doc update"},{"commit":"b128d9109cbdb1176f2473d450023bb0be02531b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":46,"deletions":0,"files":["tests/test_jar_manifest.py"],"file_stats":[{"name":"tests/test_jar_manifest.py","lines_changed":46}]},"message":"add MANIFEST.MF tests"},{"commit":"929d7273a422c2bd5b83e5e19d32630f1a027f75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/jar_manifest.py"],"file_stats":[{"name":"jc/parsers/jar_manifest.py","lines_changed":8}]},"message":"doc updates"},{"commit":"2a40f842743a8745d651b4b6cae645045e6c6aab","author":"shaik","author_email":"shai.kustin@torq.io","commit_by":"shaik","commit_by_email":"shai.kustin@torq.io","stats":{"files_changed":4,"insertions":22,"deletions":1,"files":["jc/parsers/csv.py","tests/fixtures/generic/csv-doubleqouted.csv","tests/fixtures/generic/csv-doubleqouted.json","tests/test_csv.py"],"file_stats":[{"name":"jc/parsers/csv.py","lines_changed":4},{"name":"tests/fixtures/generic/csv-doubleqouted.csv","lines_changed":3},{"name":"tests/fixtures/generic/csv-doubleqouted.json","lines_changed":4},{"name":"tests/test_csv.py","lines_changed":12}]},"message":"fix doubleqoute in csv"},{"commit":"9ff6fa818f0857321e4b3b089d288997f2ae27af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add jar-manifest"},{"commit":"dac73a4bfe24e36474fdf6ff60c23e784ca409bd","merge":"d789554 f733100","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #189 from kellyjonbrazil/master\n\nuse github releases instead of packaging site"},{"commit":"d7895547f74744e82317eabe4c870115701872be","merge":"f8e09ae b7d439c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #188 from listuser/new_branch\n\nCreate key value pairs from a MANIFEST.MF file, to include key multiline value pairs."},{"commit":"b7d439cb870e443e4f4e4a2137ab170835e77eff","author":"listuser","author_email":null,"commit_by":"listuser","commit_by_email":null,"stats":{"files_changed":3,"insertions":2220,"deletions":9,"files":["jc/parsers/{jar-manifest.py => jar_manifest.py}","tests/fixtures/rhel-8/MANIFEST.MF.MULTI.json","tests/fixtures/rhel-8/MANIFEST.MF.MULTI.out"],"file_stats":[{"name":"jc/parsers/{jar-manifest.py => jar_manifest.py}","lines_changed":18},{"name":"tests/fixtures/rhel-8/MANIFEST.MF.MULTI.json","lines_changed":1},{"name":"tests/fixtures/rhel-8/MANIFEST.MF.MULTI.out","lines_changed":2210}]},"message":"Renamed jar-manifest.py to jar_manifest.py, added multi manifest outputs to tests..."},{"commit":"7cc903a5f5ca368be97babadc72689375567a901","author":"listuser","author_email":null,"commit_by":"listuser","commit_by_email":null,"stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/jar-manifest.py"],"file_stats":[{"name":"jc/parsers/jar-manifest.py","lines_changed":3}]},"message":"Removed inflating from examples in jar-manifest.py"},{"commit":"c495a8291bd3e1fd070ee2e018b9b550f9c86314","author":"listuser","author_email":null,"commit_by":"listuser","commit_by_email":null,"stats":{"files_changed":1,"insertions":1,"deletions":292,"files":["tests/fixtures/rhel-8/MANIFEST.MF.json"],"file_stats":[{"name":"tests/fixtures/rhel-8/MANIFEST.MF.json","lines_changed":293}]},"message":"Updated test output in MANIFEST.MF.json"},{"commit":"5e1d7d777c627fb17feda6e51d9640bbd0f03302","author":"listuser","author_email":null,"commit_by":"listuser","commit_by_email":null,"stats":{"files_changed":8,"insertions":304,"deletions":2544,"files":["jc/parsers/{metamf.py => jar-manifest.py}","tests/fixtures/rhel-8/MANIFEST.MF.json",".../rhel-8/{MANIFEST.MF => MANIFEST.MF.out}",".../rhel-8/cmds_used_to_generate_test_data.txt",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out"],"file_stats":[{"name":"jc/parsers/{metamf.py => jar-manifest.py}","lines_changed":34},{"name":"tests/fixtures/rhel-8/MANIFEST.MF.json","lines_changed":293},{"name":".../rhel-8/{MANIFEST.MF => MANIFEST.MF.out}","lines_changed":0},{"name":".../rhel-8/cmds_used_to_generate_test_data.txt","lines_changed":14},{"name":".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json","lines_changed":1},{"name":".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out","lines_changed":2210},{"name":".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json","lines_changed":1},{"name":".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out","lines_changed":295}]},"message":"Renamed metamf.py to jar-manifest.py, plus other changes"},{"commit":"7edad3f676fe5560017ca9cb05ede6f46787e78f","author":"listuser","author_email":null,"commit_by":"listuser","commit_by_email":null,"stats":{"files_changed":8,"insertions":3042,"deletions":0,"files":["jc/parsers/metamf.py","tests/fixtures/rhel-8/MANIFEST.MF","tests/fixtures/rhel-8/MANIFEST.MF.json",".../rhel-8/cmds_used_to_generate_test_data.txt",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out"],"file_stats":[{"name":"jc/parsers/metamf.py","lines_changed":228},{"name":"tests/fixtures/rhel-8/MANIFEST.MF","lines_changed":292},{"name":"tests/fixtures/rhel-8/MANIFEST.MF.json","lines_changed":1},{"name":".../rhel-8/cmds_used_to_generate_test_data.txt","lines_changed":14},{"name":".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json","lines_changed":1},{"name":".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out","lines_changed":2210},{"name":".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json","lines_changed":1},{"name":".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out","lines_changed":295}]},"message":"Create key value pairs from a MANIFEST.MF file, to include key multiline value pairs."},{"commit":"f7331001d4ab976e311458a16b6e5337da2e3aab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":5},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":5}]},"message":"use github releases instead of packaging site"},{"commit":"f8e09ae2ffe185d21305d566fad20f510df9890f","merge":"2e4f5a5 433c7cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #187 from kellyjonbrazil/master\n\nsync to dev"},{"commit":"433c7cc0f05e321ffe024845a908f3e856d4cd2b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/zipinfo.md","jc/parsers/zipinfo.py"],"file_stats":[{"name":"docs/parsers/zipinfo.md","lines_changed":1},{"name":"jc/parsers/zipinfo.py","lines_changed":1}]},"message":"formatting"},{"commit":"d753e71a7452310d45fa605a2e4c70320ed60dbb","merge":"3ac8d03 2e4f5a5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #186 from kellyjonbrazil/dev\n\nDev v1.17.5"},{"commit":"2e4f5a508b6c90f9e03dcbcf64efc0e2fc446666","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":6,"deletions":3,"files":["CHANGELOG","jc/__init__.py","man/jc.1","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"88b960eff6cb3739d0d243c8d8b3e8ad5b8eb97c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":144,"deletions":1,"files":["EXAMPLES.md","README.md","docs/parsers/zipinfo.md","man/jc.1"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":31},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/zipinfo.md","lines_changed":106},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update"},{"commit":"88c77bd89e2c2a5f023e6638816c9153b6276d35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":47,"deletions":0,"files":["tests/fixtures/osx-10.14.6/zipinfo-multi.json","tests/test_zipinfo.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/zipinfo-multi.json","lines_changed":1},{"name":"tests/test_zipinfo.py","lines_changed":46}]},"message":"add zipinfo tests"},{"commit":"51a7a4251fff518d8da78ffa41e7ba2e2cb47f12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":0,"files":["tests/fixtures/osx-10.14.6/zipinfo-multi.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/zipinfo-multi.out","lines_changed":24}]},"message":"add multi-archive test output"},{"commit":"51d2f316f388d962c26aeb4f42affebec339e5a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":97,"deletions":72,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":169}]},"message":"add multi-archive support"},{"commit":"ff78a46c4854339a097992701351ef471aff1671","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"add zipinfo parser"},{"commit":"ed4a9dc1d470f64bcc9de35b2d98568ffd50257d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":23,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":44}]},"message":"formatting"},{"commit":"63182dba26040974cb8cada6f5910bb29b1fa3ed","merge":"b450697 9c1eaa9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #185 from listuser/new_branch\n\ncontributed zipinfo parser"},{"commit":"9c1eaa938934269fe4179da798acf5f119cde0cf","author":"Matt J","author_email":"none","commit_by":"Matt J","commit_by_email":"none","stats":{"files_changed":2,"insertions":68,"deletions":61,"files":["jc/parsers/zipinfo.py","tests/fixtures/rhel-8/zipinfo.json"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":127},{"name":"tests/fixtures/rhel-8/zipinfo.json","lines_changed":2}]},"message":"revised zipinfo.py nested version"},{"commit":"bc520fcbcdfad6a53e51944391fd24512bed8128","author":"Matt J","author_email":"none","commit_by":"Matt J","commit_by_email":"none","stats":{"files_changed":2,"insertions":63,"deletions":53,"files":["jc/parsers/zipinfo.py","tests/fixtures/rhel-8/zipinfo.json"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":114},{"name":"tests/fixtures/rhel-8/zipinfo.json","lines_changed":2}]},"message":"added zipinfo.py nested version"},{"commit":"46faac1a12a5b39d6a25427f6e8fdcca1204dbcd","author":"Matt J","author_email":"none","commit_by":"Matt J","commit_by_email":"none","stats":{"files_changed":2,"insertions":1222,"deletions":0,"files":["tests/fixtures/rhel-8/zipinfo.json","tests/fixtures/rhel-8/zipinfo.out"],"file_stats":[{"name":"tests/fixtures/rhel-8/zipinfo.json","lines_changed":1},{"name":"tests/fixtures/rhel-8/zipinfo.out","lines_changed":1221}]},"message":"add test data zipinfo.json and zipinfo.out"},{"commit":"3c424c0cb3cff462a963183585b57bea004e974f","author":"Matt J","author_email":"none","commit_by":"Matt J","commit_by_email":"none","stats":{"files_changed":1,"insertions":165,"deletions":0,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":165}]},"message":"initial commit zipinfo.py to new_branch"},{"commit":"3ac8d0362b4fb9999fc55a60a9cb20ac80d114f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"use quotes around python versions"},{"commit":"d88b998e6c7826a9ecae18663328e2d2915030fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":8},{"name":"jc/parsers/csv_s.py","lines_changed":8}]},"message":"formatting"},{"commit":"a9ed55c00652a563391a7930c7a4649967131ae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":11,"deletions":11,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]},"message":"fix spelling"},{"commit":"ea614341232e5272ee0c7fd46ba0f313033c761f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":16,"deletions":8,"files":["docs/parsers/crontab.md","docs/parsers/crontab_u.md","jc/parsers/crontab.py","jc/parsers/crontab_u.py"],"file_stats":[{"name":"docs/parsers/crontab.md","lines_changed":6},{"name":"docs/parsers/crontab_u.md","lines_changed":6},{"name":"jc/parsers/crontab.py","lines_changed":6},{"name":"jc/parsers/crontab_u.py","lines_changed":6}]},"message":"fix schema docs"},{"commit":"a73d0d26cbe2860b8374661068e09e0717a3bab2","merge":"a7de911 b450697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #184 from kellyjonbrazil/dev\n\nDev 1.17.4"},{"commit":"b4506976e3c865397bc657183d49c484d8bcfd7a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":8},{"name":"templates/manpage_template","lines_changed":6}]},"message":"formatting"},{"commit":"34cb75a09697a06c3878f2f9a84eb3bd2a90ae62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/__init__.py","setup.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"34df643f60712ae25645cb7cddff80e43c12262b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":18,"deletions":0,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"man/jc.1","lines_changed":6},{"name":"templates/manpage_template","lines_changed":6},{"name":"templates/readme_template","lines_changed":3}]},"message":"add disable colors section"},{"commit":"ac7c13fcc013d386f34db51d634298fa3e97eccd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":11,"deletions":1,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"man/jc.1","lines_changed":6},{"name":"templates/manpage_template","lines_changed":4},{"name":"templates/readme_template","lines_changed":1}]},"message":"add -C option to docs"},{"commit":"4fdb34c7d5fcaa65e2ccab814c3acf2f0f70c442","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"add no-color.org"},{"commit":"7ac468e35aac1a63c4e22f33aead74a6e41a22a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"changelog update"},{"commit":"df190aa299f1669d1fe09380026ae086839abc02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":15,"deletions":7,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":22}]},"message":"add -C option to force color even with pipes"},{"commit":"9621475e86fe20fcdc2902b6ce7860a833ae2ca0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"changelog update"},{"commit":"82e0160de820ad2ed6143f58458711d600b929a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"refactor NO_COLOR test"},{"commit":"d03fb8b626a97e81006d0b108c8f400fe4e2ce3b","merge":"b300dfb 7933dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"b300dfb3d75fe76e2ddbb087ff742dd0b5e6155b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"Add support for NO_COLOR env variable"},{"commit":"a7de9111d97e687cafbc0709ec3ff7453d658a80","merge":"21e69a7 7933dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #183 from kellyjonbrazil/dev\n\nDev v1.17.3"},{"commit":"7933dfdbe7bf400833d6f6b771362dfc518b9a8d","merge":"f7cb5f7 21e69a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge branch 'master' into dev"},{"commit":"f7cb5f7d01ac01538bee4da816408072b585768e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"update date"},{"commit":"a26a298f1a3c141171e7d7ce459a27a297cec031","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":148,"deletions":1,"files":["README.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/iostat.md","lines_changed":15},{"name":"docs/parsers/iostat_s.md","lines_changed":126},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update"},{"commit":"dbd134d0dac2fc152183480958fd9e65919ac98d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat_s.py","lines_changed":6}]},"message":"add examples to docs"},{"commit":"11aa01b0d9d6913059f98f9bd7591d7cad9037cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":15,"insertions":15,"deletions":1,"files":["jc/parsers/iostat_s.py","tests/fixtures/centos-7.7/iostat-1-streaming.json","tests/fixtures/centos-7.7/iostat-m-streaming.json","tests/fixtures/centos-7.7/iostat-mx-streaming.json","tests/fixtures/centos-7.7/iostat-streaming.json","tests/fixtures/centos-7.7/iostat-x-streaming.json","tests/fixtures/ubuntu-18.04/iostat-1-streaming.json","tests/fixtures/ubuntu-18.04/iostat-m-streaming.json","tests/fixtures/ubuntu-18.04/iostat-mx-streaming.json","tests/fixtures/ubuntu-18.04/iostat-streaming.json","tests/fixtures/ubuntu-18.04/iostat-x-streaming.json","tests/fixtures/ubuntu-20.10/iostat-m-streaming.json","tests/fixtures/ubuntu-20.10/iostat-mx-streaming.json","tests/fixtures/ubuntu-20.10/iostat-streaming.json","tests/fixtures/ubuntu-20.10/iostat-x-streaming.json"],"file_stats":[{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iostat-1-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-m-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-mx-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-x-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-1-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-m-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-mx-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-x-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-m-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-mx-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-x-streaming.json","lines_changed":1}]},"message":"iostat-s tests"},{"commit":"6f18e5344356684e845ec63158c570d82156254f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":203,"deletions":0,"files":["tests/test_iostat_s.py"],"file_stats":[{"name":"tests/test_iostat_s.py","lines_changed":203}]},"message":"fix for null lines"},{"commit":"7b467c466568ad4e7986d4d7cf3ec606681b6d46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":137,"deletions":0,"files":["tests/fixtures/ubuntu-20.10/iostat-m.json","tests/fixtures/ubuntu-20.10/iostat-m.out","tests/fixtures/ubuntu-20.10/iostat-mx.json","tests/fixtures/ubuntu-20.10/iostat-mx.out","tests/fixtures/ubuntu-20.10/iostat-x.json","tests/fixtures/ubuntu-20.10/iostat-x.out","tests/fixtures/ubuntu-20.10/iostat.json","tests/fixtures/ubuntu-20.10/iostat.out","tests/test_iostat.py"],"file_stats":[{"name":"tests/fixtures/ubuntu-20.10/iostat-m.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-m.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-20.10/iostat-mx.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-mx.out","lines_changed":22},{"name":"tests/fixtures/ubuntu-20.10/iostat-x.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-x.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-20.10/iostat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat.out","lines_changed":22},{"name":"tests/test_iostat.py","lines_changed":47}]},"message":"add ubuntu 20.10 tests"},{"commit":"537b8f263087894c02b5b7c121765cf96182a370","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":4},{"name":"jc/parsers/iostat_s.py","lines_changed":4}]},"message":"add more int conversions"},{"commit":"4d823575e791999e200dedd491511c4fde64fc2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":4},{"name":"jc/parsers/iostat_s.py","lines_changed":4}]},"message":"add more float fields"},{"commit":"541aa1d09f20ff6979eabaa66790decb3895f18d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":68,"deletions":8,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":15},{"name":"jc/parsers/iostat_s.py","lines_changed":61}]},"message":"Add new field float conversions for iostat v11"},{"commit":"8f02021014b7b19acf1a8bbd777161aa82c65d66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat_s.py","lines_changed":1}]},"message":"formatting"},{"commit":"158a15157c7e5dde95dc21766d0696bd82486688","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"changelog update"},{"commit":"2752e0d66a9ba0b57ac86913fd302ada23c280c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":166,"deletions":0,"files":["jc/cli.py","jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/iostat_s.py","lines_changed":165}]},"message":"add iostat streaming parser"},{"commit":"6c11e912afe3c4d16da9199b5c2fc10461928ac3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"update changelog"},{"commit":"43d34461e27e3e4ac5f985786831c170b348c7c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":83,"insertions":279,"deletions":81,"files":["README.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/utils.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/dpkg_l.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/finger.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/gshadow.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iostat.md","lines_changed":172},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":22},{"name":"man/jc.1","lines_changed":7}]},"message":"update docs"},{"commit":"4dfdc9b0f65d8c950ed74545d0cc3f95c8abec6c","merge":"e2311cb 6665ffa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"e2311cbb03f407414df953c8d1c07d0cf1a549ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":400,"deletions":0,"files":["tests/fixtures/centos-7.7/iostat-1.json","tests/fixtures/centos-7.7/iostat-1.out","tests/fixtures/centos-7.7/iostat-m.json","tests/fixtures/centos-7.7/iostat-m.out","tests/fixtures/centos-7.7/iostat-mx.json","tests/fixtures/centos-7.7/iostat-mx.out","tests/fixtures/centos-7.7/iostat-x.json","tests/fixtures/centos-7.7/iostat-x.out","tests/fixtures/centos-7.7/iostat.json","tests/fixtures/centos-7.7/iostat.out","tests/fixtures/ubuntu-18.04/iostat-1.json","tests/fixtures/ubuntu-18.04/iostat-1.out","tests/fixtures/ubuntu-18.04/iostat-m.json","tests/fixtures/ubuntu-18.04/iostat-m.out","tests/fixtures/ubuntu-18.04/iostat-mx.json","tests/fixtures/ubuntu-18.04/iostat-mx.out","tests/fixtures/ubuntu-18.04/iostat-x.json","tests/fixtures/ubuntu-18.04/iostat-x.out","tests/fixtures/ubuntu-18.04/iostat.json","tests/fixtures/ubuntu-18.04/iostat.out","tests/test_iostat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/iostat-1.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-1.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/iostat-m.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-m.out","lines_changed":10},{"name":"tests/fixtures/centos-7.7/iostat-mx.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-mx.out","lines_changed":9},{"name":"tests/fixtures/centos-7.7/iostat-x.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-x.out","lines_changed":10},{"name":"tests/fixtures/centos-7.7/iostat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat.out","lines_changed":9},{"name":"tests/fixtures/ubuntu-18.04/iostat-1.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-1.out","lines_changed":77},{"name":"tests/fixtures/ubuntu-18.04/iostat-m.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-m.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-18.04/iostat-mx.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-mx.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/iostat-x.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-x.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/iostat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat.out","lines_changed":27},{"name":"tests/test_iostat.py","lines_changed":143}]},"message":"add iostat tests"},{"commit":"bf15575e90985cfec5c57dd11dfa2b86d53a41be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":7,"files":["jc/parsers/iostat.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":21}]},"message":"fixes for ubunut"},{"commit":"406336c7185b539b5e00532b58146d5b1b73f259","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":44,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":44}]},"message":"add iostat example"},{"commit":"6665ffaeb8107e9db3b917db0663beaf44024533","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"remove python 3.6 from tests"},{"commit":"dcf552ca0c69aa5f0309a83dc33dee7c5ed81292","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":138,"deletions":47,"files":["jc/parsers/iostat.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":185}]},"message":"add _process and cleanup"},{"commit":"7a6ebf3c9555dd82df7dc0b71981cdd32ce0061d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":171,"deletions":0,"files":["jc/cli.py","jc/parsers/iostat.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/iostat.py","lines_changed":170}]},"message":"add iostat parser"},{"commit":"d2dc4a983c86c538e13e568b908072de4ca0daaf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"changelog update"},{"commit":"1168259bc23862f671326d41f5282a3575205214","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":3}]},"message":"add doc strings"},{"commit":"e8e4b46021557fbf5776c32dff46de022817fb6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":14,"deletions":19,"files":["jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":5},{"name":"jc/parsers/foo_s.py","lines_changed":7},{"name":"jc/parsers/ls_s.py","lines_changed":7},{"name":"jc/parsers/ping_s.py","lines_changed":7},{"name":"jc/parsers/vmstat_s.py","lines_changed":7}]},"message":"use jc.utils type checks"},{"commit":"12d2de22821fd8f57f4d412e62f53db3d89d5e30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":77,"insertions":181,"deletions":165,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":4},{"name":"jc/parsers/airport.py","lines_changed":4},{"name":"jc/parsers/airport_s.py","lines_changed":4},{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/blkid.py","lines_changed":4},{"name":"jc/parsers/cksum.py","lines_changed":4},{"name":"jc/parsers/crontab.py","lines_changed":4},{"name":"jc/parsers/crontab_u.py","lines_changed":4},{"name":"jc/parsers/csv.py","lines_changed":4},{"name":"jc/parsers/date.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":5},{"name":"jc/parsers/dir.py","lines_changed":4},{"name":"jc/parsers/dmidecode.py","lines_changed":4},{"name":"jc/parsers/dpkg_l.py","lines_changed":4},{"name":"jc/parsers/du.py","lines_changed":4},{"name":"jc/parsers/env.py","lines_changed":4},{"name":"jc/parsers/file.py","lines_changed":4},{"name":"jc/parsers/finger.py","lines_changed":4},{"name":"jc/parsers/foo.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":4},{"name":"jc/parsers/fstab.py","lines_changed":4},{"name":"jc/parsers/group.py","lines_changed":4},{"name":"jc/parsers/gshadow.py","lines_changed":4},{"name":"jc/parsers/hash.py","lines_changed":4},{"name":"jc/parsers/hashsum.py","lines_changed":4},{"name":"jc/parsers/hciconfig.py","lines_changed":4},{"name":"jc/parsers/history.py","lines_changed":4},{"name":"jc/parsers/hosts.py","lines_changed":4},{"name":"jc/parsers/id.py","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":4},{"name":"jc/parsers/ini.py","lines_changed":4},{"name":"jc/parsers/iptables.py","lines_changed":4},{"name":"jc/parsers/iw_scan.py","lines_changed":4},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/last.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4},{"name":"jc/parsers/lsblk.py","lines_changed":4},{"name":"jc/parsers/lsmod.py","lines_changed":4},{"name":"jc/parsers/lsof.py","lines_changed":4},{"name":"jc/parsers/lsusb.py","lines_changed":4},{"name":"jc/parsers/mount.py","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":4},{"name":"jc/parsers/ntpq.py","lines_changed":4},{"name":"jc/parsers/passwd.py","lines_changed":4},{"name":"jc/parsers/ping.py","lines_changed":4},{"name":"jc/parsers/pip_list.py","lines_changed":4},{"name":"jc/parsers/pip_show.py","lines_changed":4},{"name":"jc/parsers/ps.py","lines_changed":4},{"name":"jc/parsers/route.py","lines_changed":4},{"name":"jc/parsers/rpm_qi.py","lines_changed":4},{"name":"jc/parsers/sfdisk.py","lines_changed":4},{"name":"jc/parsers/shadow.py","lines_changed":4},{"name":"jc/parsers/ss.py","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"jc/parsers/sysctl.py","lines_changed":4},{"name":"jc/parsers/systemctl.py","lines_changed":4},{"name":"jc/parsers/systemctl_lj.py","lines_changed":4},{"name":"jc/parsers/systemctl_ls.py","lines_changed":4},{"name":"jc/parsers/systemctl_luf.py","lines_changed":4},{"name":"jc/parsers/systeminfo.py","lines_changed":4},{"name":"jc/parsers/time.py","lines_changed":4},{"name":"jc/parsers/timedatectl.py","lines_changed":4},{"name":"jc/parsers/tracepath.py","lines_changed":4},{"name":"jc/parsers/traceroute.py","lines_changed":4},{"name":"jc/parsers/ufw.py","lines_changed":4},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":4},{"name":"jc/parsers/uname.py","lines_changed":4},{"name":"jc/parsers/upower.py","lines_changed":4},{"name":"jc/parsers/uptime.py","lines_changed":4},{"name":"jc/parsers/vmstat.py","lines_changed":4},{"name":"jc/parsers/w.py","lines_changed":4},{"name":"jc/parsers/wc.py","lines_changed":4},{"name":"jc/parsers/who.py","lines_changed":4},{"name":"jc/parsers/xml.py","lines_changed":4},{"name":"jc/parsers/yaml.py","lines_changed":4},{"name":"jc/utils.py","lines_changed":40}]},"message":"use jc.utils.input_type_check() and simplify compatibility check"},{"commit":"0e2fe401e1c49a9f947d7d17b72cfc4e90787f47","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]},"message":"version bump"},{"commit":"14247adb0ae007924ca551a706eb0cfdbae97a41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["jc/parsers/csv_s.py","tests/test_csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":7},{"name":"tests/test_csv_s.py","lines_changed":2}]},"message":"add input type checks"},{"commit":"3a9f0934c41c85ea7fa87165b9559f08814645cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":3,"files":["jc/parsers/ls_s.py","tests/test_ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":6},{"name":"tests/test_ls_s.py","lines_changed":2}]},"message":"add input type checks"},{"commit":"caf0a5c8713bf0d72951a2c6fd5a2c62c9eb59d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":4,"files":["jc/parsers/vmstat_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":9},{"name":"tests/test_vmstat_s.py","lines_changed":2}]},"message":"add input type checking"},{"commit":"cfb58b1cf3e3028f8e03fdd93f0165cf8d230e1e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":8}]},"message":"add input type checks"},{"commit":"975cf195cc02774f50460ca479d9ebb7b73c7870","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":1}]},"message":"formatting"},{"commit":"8a46a259a36efc55bb0b2141acb9dd5ae52b7725","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["jc/parsers/ping_s.py","tests/test_ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":8},{"name":"tests/test_ping_s.py","lines_changed":2}]},"message":"add input type checks"},{"commit":"e395142e599aa78b4a7ec80dcc3f8ccf279f97b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"caaeaf0d67cf44f8d2651cc53a7528d3ef0c74d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":76,"insertions":227,"deletions":227,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":6},{"name":"jc/parsers/airport.py","lines_changed":6},{"name":"jc/parsers/airport_s.py","lines_changed":6},{"name":"jc/parsers/arp.py","lines_changed":6},{"name":"jc/parsers/blkid.py","lines_changed":6},{"name":"jc/parsers/cksum.py","lines_changed":6},{"name":"jc/parsers/crontab.py","lines_changed":6},{"name":"jc/parsers/crontab_u.py","lines_changed":6},{"name":"jc/parsers/csv.py","lines_changed":6},{"name":"jc/parsers/date.py","lines_changed":6},{"name":"jc/parsers/df.py","lines_changed":6},{"name":"jc/parsers/dig.py","lines_changed":6},{"name":"jc/parsers/dir.py","lines_changed":6},{"name":"jc/parsers/dmidecode.py","lines_changed":6},{"name":"jc/parsers/dpkg_l.py","lines_changed":6},{"name":"jc/parsers/du.py","lines_changed":6},{"name":"jc/parsers/env.py","lines_changed":6},{"name":"jc/parsers/file.py","lines_changed":6},{"name":"jc/parsers/finger.py","lines_changed":6},{"name":"jc/parsers/foo.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":6},{"name":"jc/parsers/fstab.py","lines_changed":6},{"name":"jc/parsers/group.py","lines_changed":6},{"name":"jc/parsers/gshadow.py","lines_changed":6},{"name":"jc/parsers/hash.py","lines_changed":6},{"name":"jc/parsers/hashsum.py","lines_changed":6},{"name":"jc/parsers/hciconfig.py","lines_changed":6},{"name":"jc/parsers/history.py","lines_changed":6},{"name":"jc/parsers/hosts.py","lines_changed":6},{"name":"jc/parsers/id.py","lines_changed":6},{"name":"jc/parsers/ifconfig.py","lines_changed":6},{"name":"jc/parsers/ini.py","lines_changed":6},{"name":"jc/parsers/iptables.py","lines_changed":6},{"name":"jc/parsers/iw_scan.py","lines_changed":6},{"name":"jc/parsers/jobs.py","lines_changed":6},{"name":"jc/parsers/last.py","lines_changed":6},{"name":"jc/parsers/ls.py","lines_changed":6},{"name":"jc/parsers/lsblk.py","lines_changed":6},{"name":"jc/parsers/lsmod.py","lines_changed":6},{"name":"jc/parsers/lsof.py","lines_changed":6},{"name":"jc/parsers/lsusb.py","lines_changed":6},{"name":"jc/parsers/mount.py","lines_changed":6},{"name":"jc/parsers/netstat.py","lines_changed":6},{"name":"jc/parsers/ntpq.py","lines_changed":6},{"name":"jc/parsers/passwd.py","lines_changed":6},{"name":"jc/parsers/ping.py","lines_changed":6},{"name":"jc/parsers/pip_list.py","lines_changed":6},{"name":"jc/parsers/pip_show.py","lines_changed":6},{"name":"jc/parsers/ps.py","lines_changed":6},{"name":"jc/parsers/route.py","lines_changed":6},{"name":"jc/parsers/rpm_qi.py","lines_changed":6},{"name":"jc/parsers/sfdisk.py","lines_changed":6},{"name":"jc/parsers/shadow.py","lines_changed":6},{"name":"jc/parsers/ss.py","lines_changed":6},{"name":"jc/parsers/stat.py","lines_changed":6},{"name":"jc/parsers/sysctl.py","lines_changed":6},{"name":"jc/parsers/systemctl.py","lines_changed":6},{"name":"jc/parsers/systemctl_lj.py","lines_changed":6},{"name":"jc/parsers/systemctl_ls.py","lines_changed":6},{"name":"jc/parsers/systemctl_luf.py","lines_changed":6},{"name":"jc/parsers/systeminfo.py","lines_changed":6},{"name":"jc/parsers/time.py","lines_changed":6},{"name":"jc/parsers/timedatectl.py","lines_changed":6},{"name":"jc/parsers/tracepath.py","lines_changed":6},{"name":"jc/parsers/traceroute.py","lines_changed":6},{"name":"jc/parsers/ufw.py","lines_changed":6},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":6},{"name":"jc/parsers/uname.py","lines_changed":6},{"name":"jc/parsers/upower.py","lines_changed":6},{"name":"jc/parsers/uptime.py","lines_changed":6},{"name":"jc/parsers/vmstat.py","lines_changed":6},{"name":"jc/parsers/w.py","lines_changed":6},{"name":"jc/parsers/wc.py","lines_changed":6},{"name":"jc/parsers/who.py","lines_changed":6},{"name":"jc/parsers/xml.py","lines_changed":6},{"name":"jc/parsers/yaml.py","lines_changed":6}]},"message":"add 'str' type check on input"},{"commit":"21e69a7cbf62240238f6fb78e874dda6ce2e922a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"],"file_stats":[{"name":".gitignore","lines_changed":1}]},"message":"ignore _config.yml"},{"commit":"603964935b58e02cf0614cf67ffacc6d94755e05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"remove trailing whitespace"},{"commit":"47eb83ae55b9892716fff712bd2be21b6191b552","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"],"file_stats":[{"name":".gitignore","lines_changed":1}]},"message":"add .vscode"},{"commit":"fc0ce6c95923ab124961e695a26c0b68dd0f359f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add streaming parser to custom parsers info"},{"commit":"077a29fb4eedcfccb026498c5c3a64b7b7601363","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":2,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":8},{"name":"jc/parsers/csv_s.py","lines_changed":8}]},"message":"add _jc_meta field info"},{"commit":"8568d0d328706a7a5b1476452e078d8cbe7b7391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":3,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":4},{"name":"jc/parsers/csv_s.py","lines_changed":4},{"name":"man/jc.1","lines_changed":2}]},"message":"fix csv_s documentation"},{"commit":"597d39c28ea0c0fe3b072413e9d91ab5e27b62bd","merge":"b59e38c eb888dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #180 from kellyjonbrazil/dev\n\nDev v1.17.2"},{"commit":"eb888dcbbcf83c9197bd59aab72f65ea6eb622ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["jc/__init__.py","man/jc.1","setup.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"d1b9ac0841b15ee15690c4066453a322618320ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/df.md","docs/parsers/netstat.md","docs/parsers/ping.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"89a6d9c5c39b74f1b040f410659bfd7ae1a902d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":5}]},"message":"add key-check to restore previous behavior even with non-df data"},{"commit":"85d983761637129cb85abfb0bbdde7c507061cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add df info"},{"commit":"cd7731484d826d84d835ecd460d746e78cadc5fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":62,"deletions":2,"files":["jc/parsers/df.py","tests/fixtures/generic/df-long-filesystem.json","tests/fixtures/generic/df-long-filesystem.out","tests/test_df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":47},{"name":"tests/fixtures/generic/df-long-filesystem.json","lines_changed":1},{"name":"tests/fixtures/generic/df-long-filesystem.out","lines_changed":4},{"name":"tests/test_df.py","lines_changed":12}]},"message":"fix for cases where the Filesystem data overflows the column length (happens on older versions of df)"},{"commit":"086da16b1743c16a5ccdd102f889fb31f99e3caa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":2}]},"message":"version bump"},{"commit":"20830528f04a5ecbe78420d8008249b089667767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":28,"deletions":0,"files":["CHANGELOG","tests/fixtures/generic/netstat-old.json","tests/fixtures/generic/netstat-old.out","tests/test_netstat.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"tests/fixtures/generic/netstat-old.json","lines_changed":1},{"name":"tests/fixtures/generic/netstat-old.out","lines_changed":14},{"name":"tests/test_netstat.py","lines_changed":12}]},"message":"add test for older netstat version fix"},{"commit":"83371edd8fe3d23dfa92fc707604086522c85ab9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat_linux.py"],"file_stats":[{"name":"jc/parsers/netstat_linux.py","lines_changed":2}]},"message":"add space before inode to compensate for removed dash"},{"commit":"364a81decc16742e3caa070d90b1d605d96fe2c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":2}]},"message":"version bump"},{"commit":"ef09592ad3e5c9a77c1bdebe8f876fc4dde54834","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"update for 1.17.2"},{"commit":"4a86e109ccb254d5195b782f84f3967c96ef726c","merge":"5ba22da 7fa5391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #179 from shaikustin/ping-alpine-linux\n\nsupport alpine linux ping"},{"commit":"7fa5391b6613e62689c624041e03f9750c9c7972","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_ping.py"],"file_stats":[{"name":"tests/test_ping.py","lines_changed":2}]},"message":"change alpine ping6 to ping"},{"commit":"9b53ba5714819ff760f2d4546f5d2ee4d521c080","author":"shaik","author_email":"shai.kustin@torq.io","commit_by":"shaik","commit_by_email":"shai.kustin@torq.io","stats":{"files_changed":6,"insertions":45,"deletions":1,"files":["jc/parsers/ping.py",".../fixtures/alpine-linux-3.13/ping-hostname.json","tests/fixtures/alpine-linux-3.13/ping-hostname.out","tests/fixtures/alpine-linux-3.13/ping-ip.json","tests/fixtures/alpine-linux-3.13/ping-ip.out","tests/test_ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":2},{"name":".../fixtures/alpine-linux-3.13/ping-hostname.json","lines_changed":1},{"name":"tests/fixtures/alpine-linux-3.13/ping-hostname.out","lines_changed":9},{"name":"tests/fixtures/alpine-linux-3.13/ping-ip.json","lines_changed":1},{"name":"tests/fixtures/alpine-linux-3.13/ping-ip.out","lines_changed":6},{"name":"tests/test_ping.py","lines_changed":27}]},"message":"support alpine linux ping"},{"commit":"b59e38cfd2c8a7f5868e05d5562557b1c27e5e56","merge":"30cff5f 5ba22da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #176 from kellyjonbrazil/dev\n\nDev v1.17.1"},{"commit":"5ba22dae597b9d154ca0a82f71cfbd8d8a6325db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2}]},"message":"add JSON lines info"},{"commit":"4232e523acc523e510b4881d2a57a95b88ec8c8b","merge":"bee80b3 30cff5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge branch 'master' into dev"},{"commit":"bee80b35d2b8c15e6233f2798e9c02a11e9e1e9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["CHANGELOG","docs/parsers/csv_s.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":8},{"name":"man/jc.1","lines_changed":2}]},"message":"update for version bump"},{"commit":"c32395f6950d6294770ee93e8bf4d79c7d275ac3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":2}]},"message":"linting"},{"commit":"735c5e1078cc27b5cba03b8ebbae15aeca6b8fbd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["tests/test_csv_s.py"],"file_stats":[{"name":"tests/test_csv_s.py","lines_changed":5}]},"message":"update comments for ParseError test: https://bugs.python.org/issue45617"},{"commit":"d09c94b292ca3beec92a00f8a51b7259dd30a1e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add python 3.10 testing info"},{"commit":"4d04866f48f72b9ea0d213dc1533729d3b68a503","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":1}]},"message":"add python bug https://bugs.python.org/issue45617 info"},{"commit":"a2d90f4dfcdc2cb00c6c0fa957493c95a21e256b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_csv_s.py"],"file_stats":[{"name":"tests/test_csv_s.py","lines_changed":2}]},"message":"force test"},{"commit":"93a5002c8b530bd6f5f81e5d8595cde1f836ae41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"fix 3.10.0 version number"},{"commit":"23bf5227a4c39ea017e55fc21150331e1af6fdb7","merge":"77c96fa 3f5a1f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"77c96fa2a96148221bde7d2274e0dfb5386a166f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["tests/test_csv_s.py"],"file_stats":[{"name":"tests/test_csv_s.py","lines_changed":3}]},"message":"try tests on python 3.10"},{"commit":"3f5a1f015e9c0807e227b9f7300592e25502e014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"add python 3.10"},{"commit":"b280c4fc18e60a85ab212b09aa5bf3a05a0eceff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":11,"deletions":19,"files":[".../fixtures/generic/csv-insurance-streaming.json","tests/test_csv_s.py"],"file_stats":[{"name":".../fixtures/generic/csv-insurance-streaming.json","lines_changed":1},{"name":"tests/test_csv_s.py","lines_changed":29}]},"message":"add ParseError test to streaming csv parser"},{"commit":"3ab9b43a2eebf535be98c94810ac474bf32ec515","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":14}]},"message":"raise ParseError on newline bug"},{"commit":"46f568414a5c8d2f135486e86d0ada48cfcefeb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":96,"deletions":89,"files":["tests/test_ls_s.py","tests/test_ping_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"tests/test_ls_s.py","lines_changed":26},{"name":"tests/test_ping_s.py","lines_changed":138},{"name":"tests/test_vmstat_s.py","lines_changed":21}]},"message":"change streaming parser test names"},{"commit":"cba2fd299fff09a551b780e064a6e22bdf7e539a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":75,"deletions":61,"files":[".../generic/csv-10k-sales-records-streaming.json","tests/fixtures/generic/csv-deniro-streaming.json","tests/fixtures/generic/csv-example-streaming.json","tests/fixtures/generic/csv-flyrna-streaming.json","tests/fixtures/generic/csv-flyrna2-streaming.json",".../fixtures/generic/csv-homes-pipe-streaming.json","tests/fixtures/generic/csv-homes-streaming.json",".../fixtures/generic/csv-insurance-streaming.json","tests/test_csv_s.py"],"file_stats":[{"name":".../generic/csv-10k-sales-records-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-deniro-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-example-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna2-streaming.json","lines_changed":1},{"name":".../fixtures/generic/csv-homes-pipe-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-homes-streaming.json","lines_changed":1},{"name":".../fixtures/generic/csv-insurance-streaming.json","lines_changed":1},{"name":"tests/test_csv_s.py","lines_changed":128}]},"message":"add tests"},{"commit":"1e6e44f656f1bbb277eb38fb485f7b48e3b9e40b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":5}]},"message":"fix for piping data with non-platform newlines (e.g. windows csv files on unix)"},{"commit":"acac0399946d9781193e9350dd7109f1dd3999fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":149,"deletions":0,"files":["tests/fixtures/generic/csv-biostats-streaming.json","tests/fixtures/generic/csv-cities-streaming.json","tests/test_csv_s.py"],"file_stats":[{"name":"tests/fixtures/generic/csv-biostats-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-cities-streaming.json","lines_changed":1},{"name":"tests/test_csv_s.py","lines_changed":147}]},"message":"working tests"},{"commit":"50a3b340164b3139f04f67a2bee16e5343c8a2da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":8,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":13}]},"message":"optimizations and use iter() so we can exhaust data coming from list objects"},{"commit":"b45396070cf28fa36ecb44acd7be3e3bb81a712d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_vmstat_s.py"],"file_stats":[{"name":"tests/test_vmstat_s.py","lines_changed":2}]},"message":"update comment"},{"commit":"218b9aec8ac397e26e6cd4ff407f3d10ef88ea9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":87,"deletions":48,"files":["README.md","docs/parsers/csv_s.md","jc/parsers/csv_s.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/csv_s.md","lines_changed":75},{"name":"jc/parsers/csv_s.py","lines_changed":52},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update for streaming CSV parser"},{"commit":"2b887debc647bd533040e392465967d12869cb02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":10172,"deletions":1,"files":["CHANGELOG","jc/cli.py","jc/parsers/csv_s.py","tests/fixtures/generic/csv-10k-sales-records.csv"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/csv_s.py","lines_changed":168},{"name":"tests/fixtures/generic/csv-10k-sales-records.csv","lines_changed":10001}]},"message":"add csv streaming parser"},{"commit":"0313e3f8ca0e22e1575192d765d5afedf48e94df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":6,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":15}]},"message":"linting"},{"commit":"1669e6e20c3af3d28968558b76d0901a56775ac0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":28,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":51}]},"message":"linting"},{"commit":"ef6de75dda90c7221d53e0e0a942f0cac2247354","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":4}]},"message":"add vmstat timestamp tests to utils"},{"commit":"a6bcec425a3f44ba3c7cd06b5ebaf522b66df109","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":2}]},"message":"comment update"},{"commit":"596ad9a64d002ced212b08512126e52707fe73d2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":2}]},"message":"update comment"},{"commit":"7a91c93319f75c37ba6bf268d8270947f0bf8b22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":122,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":122}]},"message":"add lsusb"},{"commit":"b5f7b35f89197879a9f13bd8fa5d2a0c77cc059a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":2}]},"message":"comment update"},{"commit":"2f47fb7f14c4ff0e1c835897d94ee81d14590aba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["tests/test_uname.py"],"file_stats":[{"name":"tests/test_uname.py","lines_changed":5}]},"message":"fix ParseError tests"},{"commit":"1b214c403657a50689f2a04892ce836dea669a1d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":30,"deletions":0,"files":["jc/parsers/lsusb.py","tests/fixtures/generic/lsusb-t.out","tests/test_lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":5},{"name":"tests/fixtures/generic/lsusb-t.out","lines_changed":15},{"name":"tests/test_lsusb.py","lines_changed":10}]},"message":"raise ParseError if -t option is detected. add test"},{"commit":"8f94f8acc6bb53bbb19ba150551c7df2183a8863","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":384,"deletions":3,"files":["README.md","docs/parsers/file.md","docs/parsers/lsusb.md","docs/parsers/uname.md","man/jc.1","tests/fixtures/centos-7.7/lsusb-v-single.json","tests/fixtures/centos-7.7/lsusb-v.json","tests/fixtures/centos-7.7/lsusb.json","tests/fixtures/generic/lsusb-test-attributes.json","tests/fixtures/generic/lsusb-test-attributes2.json","tests/test_lsusb.py"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":288},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"man/jc.1","lines_changed":7},{"name":"tests/fixtures/centos-7.7/lsusb-v-single.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsusb-v.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsusb.json","lines_changed":1},{"name":"tests/fixtures/generic/lsusb-test-attributes.json","lines_changed":1},{"name":"tests/fixtures/generic/lsusb-test-attributes2.json","lines_changed":1},{"name":"tests/test_lsusb.py","lines_changed":82}]},"message":"add tests and update docs"},{"commit":"3a2a69cfa55e2f40d7536d923170a5cfc986998e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":4}]},"message":"formatting"},{"commit":"f599c659881248b79c6dbc86d85a61311c9d3434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":464,"deletions":0,"files":["tests/fixtures/generic/lsusb-test-attributes.out","tests/fixtures/generic/lsusb-test-attributes2.out"],"file_stats":[{"name":"tests/fixtures/generic/lsusb-test-attributes.out","lines_changed":116},{"name":"tests/fixtures/generic/lsusb-test-attributes2.out","lines_changed":348}]},"message":"add stress test examples"},{"commit":"ad12849fd9fc2177afb30740acc63cf284dc394b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":138,"deletions":26,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":164}]},"message":"update docs example and"},{"commit":"f36b3789e8df6673207d6c2d3d0796acfdfe011d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":4}]},"message":"formatting"},{"commit":"6d18c0ba61cd188dbff736f1be47b7362c841687","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":47,"deletions":47,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":94}]},"message":"change variable name last_attribute and last_attr to last_item"},{"commit":"17097abec9567a58b5a5f7bbed11ecfd69cbd28c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":6,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":8}]},"message":"formatting"},{"commit":"b7ddd3b285f205211394edc70b611171cf72a4c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":22,"deletions":22,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":44}]},"message":"change variable names"},{"commit":"75b23f62c9d7b33907af92964d1a6234332fbc78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":35,"deletions":7,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":42}]},"message":"working configuration_descriptor and device_descriptor attributes"},{"commit":"f88967b2a59d79e053554d1e141f71e9d2d87456","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":126,"deletions":21,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":147}]},"message":"add attribute lists up to interface_association"},{"commit":"ba2846664b35b2e94aa905431c55c029b24a64e3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":22,"deletions":2,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":24}]},"message":"edpoint_descriptors attributes working"},{"commit":"10dba37ca2624e05eff246ef49df8ebd3f275d86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":28,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":29}]},"message":"hub_descriptor attributes working"},{"commit":"0e6f938514965503f1d86d56c047f9f8fc03ac65","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":36,"deletions":45,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":81}]},"message":"working hub_port_status section"},{"commit":"159d87c1126f4d79d5e34837bc2c353a5445803b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":18,"deletions":7,"files":["jc/parsers/uname.py","tests/fixtures/centos-7.7/uname.out","tests/test_uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":11},{"name":"tests/fixtures/centos-7.7/uname.out","lines_changed":1},{"name":"tests/test_uname.py","lines_changed":13}]},"message":"add length guard and test for uname with no -a on linux"},{"commit":"9e7b1621cf232e9859bdf018737e536820f380a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":18,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":36}]},"message":"device_status working"},{"commit":"2057817ef8fec85b2a978b682e7fe8bc16def828","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":89,"deletions":0,"files":["tests/fixtures/debian10/uname-a.json","tests/fixtures/debian10/uname-a.out","tests/fixtures/freebsd12/uname-a.json","tests/fixtures/freebsd12/uname-a.out","tests/fixtures/freebsd12/uname-a2.json","tests/fixtures/freebsd12/uname-a2.out","tests/fixtures/generic/uname-a-different-proc.json","tests/fixtures/generic/uname-a-different-proc.out","tests/fixtures/generic/uname-a.json","tests/fixtures/generic/uname-a.out","tests/test_uname.py"],"file_stats":[{"name":"tests/fixtures/debian10/uname-a.json","lines_changed":10},{"name":"tests/fixtures/debian10/uname-a.out","lines_changed":2},{"name":"tests/fixtures/freebsd12/uname-a.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/uname-a.out","lines_changed":2},{"name":"tests/fixtures/freebsd12/uname-a2.json","lines_changed":7},{"name":"tests/fixtures/freebsd12/uname-a2.out","lines_changed":2},{"name":"tests/fixtures/generic/uname-a-different-proc.json","lines_changed":1},{"name":"tests/fixtures/generic/uname-a-different-proc.out","lines_changed":1},{"name":"tests/fixtures/generic/uname-a.json","lines_changed":1},{"name":"tests/fixtures/generic/uname-a.out","lines_changed":2},{"name":"tests/test_uname.py","lines_changed":60}]},"message":"add uname tests"},{"commit":"a1eabad2d37bb0d0e9407edf7305e223eba67da2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":6}]},"message":"add comments"},{"commit":"92bf2b1ca2a172d3977d6e3c36b5ca1a8c2bab63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":20,"files":["CHANGELOG","jc/parsers/uname.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":26}]},"message":"simplify fixup logic for uname"},{"commit":"2b2123a4ba9b77d2089d367fe85dcb5d2857a295","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","jc/parsers/uname.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/parsers/uname.py","lines_changed":4}]},"message":"add FreeBSD support"},{"commit":"908b2f9200ddcce4beb531a3c90908786b6a5b02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"add items"},{"commit":"deff0c7bfdf942b8d7e7bd140219e08bf80a50cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":5,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":6}]},"message":"remove print debug"},{"commit":"7cd01efa64029775042a2c145997ce30ef6b4f6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":25,"deletions":1,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":26}]},"message":"fixup for cases where the 'process' and/or 'machine' fields are blank on linux"},{"commit":"2dbe56456bbea2bdfce7eacbf8b9f10a1b249f55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":49,"deletions":39,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":88}]},"message":"add nested_dict. start work on hub_port_status and device_status"},{"commit":"6078a411ef612be8bad012aa404f34ebd74a1fd7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":79,"deletions":4,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":83}]},"message":"add initial schema doc"},{"commit":"4a3656562f161a51f5cb6f0e9ccd271859b78d62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":6}]},"message":"del null keys"},{"commit":"ba75989a24839907723ed7c3d7a497473d489a34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":10}]},"message":"update comments"},{"commit":"9e9e2c362894f0072ab839565829881d750c8912","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":4}]},"message":"move state instantiation before has_data test"},{"commit":"9a2a8c6b61a46a9bfb5a4492b86774a4a78672ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":52,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":72}]},"message":"shorten set_sections"},{"commit":"dae42ef1619441637672d634f9e5d7ab26115f09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":19}]},"message":"add hub_port_status and device_status"},{"commit":"931f2cab78bda180443535c04b532d04c6e88dd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":11,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":25}]},"message":"add hub_descriptor"},{"commit":"72b061bed4453686d264ccf8977cba6c2a4794ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":32,"deletions":8,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":40}]},"message":"add endpoint_descriptors"},{"commit":"29a7c73990d9620b15a4010d17fc9a9a859f44b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":16}]},"message":"add hid_device_descriptor and report_descriptors"},{"commit":"2d1d68e3007f76d4c34ac07ae822935ab6021e79","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":87,"deletions":88,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":175}]},"message":"simplify populate_lists. Add CDC lists"},{"commit":"c5c1e170d1f502de5c76e9e481a23b26ffcaf237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":111,"deletions":76,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":187}]},"message":"interface descriptors working"},{"commit":"9c1bb66452838e704ef2277f313bb51a42dc03b9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":18}]},"message":"fix remove _state field during schema_populate"},{"commit":"a4f3306bae90fbc807fdd9ff2ce71e25d36a663f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":69,"deletions":28,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":97}]},"message":"initial schema build. need to figure out why deleting _state from output_line causes exceptions"},{"commit":"1bc638b6ee7a820406ba4b84d3408f7cd4fe779d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":36,"deletions":32,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":68}]},"message":"add bus_list and add all device_list data to the list"},{"commit":"9ad0cd9dae8822235c37159541ce72471eb4263e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":116,"deletions":211,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":327}]},"message":"now storing state within the objects to make building the schema (later) easier."},{"commit":"6d4a4691276d8659253b2ac8f8bdbd71a1fece7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":356,"deletions":333,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":689}]},"message":"use class for state"},{"commit":"ed6997e3ff2e575a6d4daa7d7a2cbe7dddacdd4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":170,"deletions":34,"files":["jc/parsers/lsusb.py","tests/fixtures/centos-7.7/lsusb-v-single.out"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":104},{"name":"tests/fixtures/centos-7.7/lsusb-v-single.out","lines_changed":100}]},"message":"add interface_association section"},{"commit":"eb788fca6e25eea1fa8a43b22360c852ecf5af35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":919,"deletions":0,"files":["jc/cli.py","jc/parsers/lsusb.py","tests/fixtures/centos-7.7/lsusb-v.out","tests/fixtures/centos-7.7/lsusb.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/lsusb.py","lines_changed":404},{"name":"tests/fixtures/centos-7.7/lsusb-v.out","lines_changed":509},{"name":"tests/fixtures/centos-7.7/lsusb.out","lines_changed":5}]},"message":"somewhat working lsusb parser. needs a lot more TLC"},{"commit":"9186f5f37739012b8c04c776310a20ef55b1469f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":99,"deletions":4,"files":["CHANGELOG","jc/__init__.py","jc/parsers/file.py","setup.py","tests/fixtures/osx-10.14.6/file3.json","tests/fixtures/osx-10.14.6/file3.out","tests/test_file.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":11},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/file3.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/file3.out","lines_changed":72},{"name":"tests/test_file.py","lines_changed":12}]},"message":"fix file parser for gzip cases (has ': ' in the description, which is the delimiter)"},{"commit":"30cff5f28140a5b20a617c8145c13e43b7b6685b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":17,"deletions":3,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":4},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":4},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"add note that the streaming parser outputs JSON Lines"},{"commit":"b724e0969a0d6b22bed0c77eb8d629381179ea3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2}]},"message":"-qq instead of -q"},{"commit":"a62c49e8715873b068a96da5021ea24a783acd6b","merge":"77dcbc5 9b160f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #172 from kellyjonbrazil/master\n\nsync master to dev"},{"commit":"9b160f6279bbbf0c15413c98922eef137ba2f3f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]},"message":"link update"},{"commit":"338a4e2612f70bb3e2af31f61a7db75f647293fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]},"message":"formatting"},{"commit":"0140688750be61dd752059ee66734ab1c7a8f30e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":8,"deletions":4,"files":["README.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"link updates"},{"commit":"73e5ea98c1ca2b9299085e3832791162eca3b9ff","merge":"528aac7 77dcbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #170 from kellyjonbrazil/dev\n\njc v1.17.0 from dev"},{"commit":"77dcbc544da271edab5de5ad209117e98c846f9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":2,"deletions":3,"files":["CHANGELOG","jc/__init__.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"final doc update"},{"commit":"c7bcb0947ae32acc9cdba7a6975d2f2557f10a39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":4}]},"message":"indent subsequent error and warning lines"},{"commit":"5cd3f7f71d38b560a88dd6057e9c7a94991a3d71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":6}]},"message":"Add example to raise ParseError if there is no output data to yield"},{"commit":"5044388ab2e8d7d8b427fd51b0ab875611bd127f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":3,"files":["jc/parsers/vmstat_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":6},{"name":"tests/test_vmstat_s.py","lines_changed":3}]},"message":"raise if line data is unrecognized"},{"commit":"ee075db59819d80e4dcb60ddbd9cfe2fd529dfe9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":5,"deletions":7,"files":["jc/cli.py","jc/parsers/foo_s.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":5},{"name":"jc/parsers/vmstat_s.py","lines_changed":3}]},"message":"linting"},{"commit":"9904e0be61e7c81b907bf3770f111346daeff481","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":2},{"name":"jc/utils.py","lines_changed":2}]},"message":"formatting"},{"commit":"31b69b3242eeca2c02f87c31d58193dd3f06fe49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":6},{"name":"jc/utils.py","lines_changed":6}]},"message":"formatting"},{"commit":"e6a80fea3228122dd84e17672c835c0460ad1342","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":7,"files":["docs/utils.md","jc/utils.py","man/jc.1"],"file_stats":[{"name":"docs/utils.md","lines_changed":6},{"name":"jc/utils.py","lines_changed":6},{"name":"man/jc.1","lines_changed":2}]},"message":"formatting"},{"commit":"d6aec00e038d1ecfe43c13a6909d50630455b372","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":27,"deletions":1,"files":["tests/fixtures/ubuntu-18.04/vmstat-1-long-streaming.json","tests/fixtures/ubuntu-18.04/vmstat-1-long.json","tests/test_vmstat.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"tests/fixtures/ubuntu-18.04/vmstat-1-long-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/vmstat-1-long.json","lines_changed":1},{"name":"tests/test_vmstat.py","lines_changed":12},{"name":"tests/test_vmstat_s.py","lines_changed":14}]},"message":"add vmstat-1-long tests"},{"commit":"4aa7d81e11ea7fcfbb5c9d74337cde617b1a0d5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":50,"deletions":2,"files":["jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","tests/fixtures/ubuntu-18.04/vmstat-1-long.out"],"file_stats":[{"name":"jc/parsers/vmstat.py","lines_changed":3},{"name":"jc/parsers/vmstat_s.py","lines_changed":7},{"name":"tests/fixtures/ubuntu-18.04/vmstat-1-long.out","lines_changed":42}]},"message":"ignore re-printed header rows in output"},{"commit":"48cdabc3b0862d6291e1ec59ab385e0e146c31eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":16,"deletions":0,"files":["docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/vmstat.md","lines_changed":4},{"name":"docs/parsers/vmstat_s.md","lines_changed":4},{"name":"jc/parsers/vmstat.py","lines_changed":4},{"name":"jc/parsers/vmstat_s.py","lines_changed":4}]},"message":"document timestamps"},{"commit":"a1791ef5479749692c79bbe98fc7687d70cd6cda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2}]},"message":"linting"},{"commit":"7bc87f6c2d4cfcfa656a1c1b8973a4c0414c85d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":8,"deletions":8,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"change _meta to _jc_meta"},{"commit":"bbed9e274b8252ba0518140fe7fc97029310771f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":154,"deletions":159,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":313}]},"message":"linting"},{"commit":"486282b9856f5e56cf43ee1399d8e7cb78353b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":10}]},"message":"linting"},{"commit":"a4d45b653f794033978940da14910f5d607a8254","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["jc/parsers/foo_s.py","jc/parsers/vmstat.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":8}]},"message":"linting"},{"commit":"22e151b01c0f97c141d912c9646e46df0320d622","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":56,"deletions":60,"files":["jc/cli.py","jc/utils.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":88},{"name":"jc/utils.py","lines_changed":28}]},"message":"linting"},{"commit":"7a4ebcd1ecdb4929aae70e44b4f9b6b5ab52b393","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":4}]},"message":"language hints"},{"commit":"651cbfe02fbb354c4caf8e0d022655642e7caed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"add streaming foo parser"},{"commit":"8c3e764516e1c28961b09380b638a57ce98b1261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add streaming parser to contrib guidelines"},{"commit":"b4e75da7e3f23502723ce8b2a7261b376f296864","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"templates/readme_template","lines_changed":4}]},"message":"formatting"},{"commit":"37223f086cabc8db5962415bd161fed151dafb9d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":5},{"name":"templates/readme_template","lines_changed":5}]},"message":"formatting"},{"commit":"a404033735c2c8075a8e08194197eae59db70afd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add error and warning message wrap info"},{"commit":"b7433ed085c0ba22ea0d49330871a651a8d83fb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":80,"deletions":41,"files":["docs/utils.md","jc/cli.py","jc/parsers/file.py","jc/parsers/ls.py","jc/parsers/traceroute.py","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":16},{"name":"jc/cli.py","lines_changed":39},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":60}]},"message":"auto wrap warning and error messages"},{"commit":"224d3d65ada4216e28e142d411b0c2c3358517b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"Add exception class name to error message"},{"commit":"a349fb0bdabaf74503831f22c4efbd02254f809d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":10,"deletions":8,"files":["README.md","docs/utils.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"docs/utils.md","lines_changed":6},{"name":"man/jc.1","lines_changed":6}]},"message":"change _meta to _jc_meta"},{"commit":"e7ddcfb83fb295034db44ade407476ff3a962cd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":14,"deletions":12,"files":["jc/utils.py","templates/manpage_template","templates/readme_template",".../centos-7.7/ping-ip-O-streaming-ignore-exceptions.json","tests/test_ping_s.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":10},{"name":"templates/manpage_template","lines_changed":6},{"name":"templates/readme_template","lines_changed":6},{"name":".../centos-7.7/ping-ip-O-streaming-ignore-exceptions.json","lines_changed":2},{"name":"tests/test_ping_s.py","lines_changed":2}]},"message":"change _meta to _jc_meta"},{"commit":"abd20dfe3662f65373ac582c70aa740e53b52f68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"templates/manpage_template","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting"},{"commit":"dc1fd3ef1be41aee349b159059f1febff76f6caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":12,"deletions":12,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"man/jc.1","lines_changed":6},{"name":"templates/manpage_template","lines_changed":6},{"name":"templates/readme_template","lines_changed":6}]},"message":"fix -qq docs"},{"commit":"98a7686db46fbd3ed98382867976249f307d0015","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":18,"insertions":160,"deletions":152,"files":["README.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","docs/utils.md","jc/cli.py","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","jc/utils.py","man/jc.1","templates/manpage_template","templates/readme_template","... => ping-ip-O-streaming-ignore-exceptions.json}","tests/test_ls_s.py","tests/test_ping_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":9},{"name":"docs/parsers/ping_s.md","lines_changed":9},{"name":"docs/parsers/vmstat_s.md","lines_changed":9},{"name":"docs/utils.md","lines_changed":6},{"name":"jc/cli.py","lines_changed":23},{"name":"jc/parsers/foo_s.py","lines_changed":13},{"name":"jc/parsers/ls_s.py","lines_changed":13},{"name":"jc/parsers/ping_s.py","lines_changed":13},{"name":"jc/parsers/vmstat_s.py","lines_changed":13},{"name":"jc/utils.py","lines_changed":12},{"name":"man/jc.1","lines_changed":4},{"name":"templates/manpage_template","lines_changed":4},{"name":"templates/readme_template","lines_changed":2},{"name":"... => ping-ip-O-streaming-ignore-exceptions.json}","lines_changed":0},{"name":"tests/test_ls_s.py","lines_changed":24},{"name":"tests/test_ping_s.py","lines_changed":140},{"name":"tests/test_vmstat_s.py","lines_changed":16}]},"message":"use -qq to ignore streaming exceptions"},{"commit":"9c6c6c4330fc68115be012de254161f36e3a8328","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add next() info"},{"commit":"f9be5651daa891e06ad0acd8980ffc0fe51fd29d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":6,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":5},{"name":"templates/readme_template","lines_changed":5}]},"message":"add language hints"},{"commit":"df9835a3e62bb2b3b6ec8b55f06a25a00a799d92","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting"},{"commit":"92363be2dd633bdd3c2dd07c72ebd281d2cb4565","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"templates/readme_template","lines_changed":3}]},"message":"fix streaming python module example"},{"commit":"31b62030156f9c826fe5c7d127e9dd0ace582dd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"templates/readme_template","lines_changed":6}]},"message":"formatting"},{"commit":"18805858d685d456f9a38540bbaedbaa1a411546","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":4},{"name":"templates/manpage_template","lines_changed":2}]},"message":"formatting"},{"commit":"e676f0e20fb6e96a536c4d182b0d287cdc1ad0f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":36,"deletions":6,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":21},{"name":"templates/readme_template","lines_changed":21}]},"message":"add streaming parser info for python module use"},{"commit":"20652edefaa7705b8ba756bae3944ff362a295a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":7}]},"message":"update changelog"},{"commit":"98c29d07478093e78f53ec633f2dd08cafc3e3ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":120,"deletions":0,"files":["tests/fixtures/centos-7.7/vmstat-a.json","tests/fixtures/centos-7.7/vmstat-at-5-10.json","tests/fixtures/centos-7.7/vmstat-awt.json","tests/fixtures/centos-7.7/vmstat-d.json","tests/fixtures/centos-7.7/vmstat-dt.json","tests/fixtures/centos-7.7/vmstat-w.json","tests/fixtures/centos-7.7/vmstat.json","tests/test_vmstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/vmstat-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-at-5-10.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-awt.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-d.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-dt.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-w.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat.json","lines_changed":1},{"name":"tests/test_vmstat.py","lines_changed":113}]},"message":"add vmstat tests"},{"commit":"41a6311f6b3ed2cc94919d042aed51c46cdf3e2f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":132,"deletions":1,"files":["tests/fixtures/centos-7.7/vmstat-a-streaming.json",".../centos-7.7/vmstat-at-5-10-streaming.json",".../fixtures/centos-7.7/vmstat-awt-streaming.json","tests/fixtures/centos-7.7/vmstat-d-streaming.json","tests/fixtures/centos-7.7/vmstat-dt-streaming.json","tests/fixtures/centos-7.7/vmstat-streaming.json","tests/fixtures/centos-7.7/vmstat-w-streaming.json","tests/test_ping_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/vmstat-a-streaming.json","lines_changed":1},{"name":".../centos-7.7/vmstat-at-5-10-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/vmstat-awt-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-d-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-dt-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-w-streaming.json","lines_changed":1},{"name":"tests/test_ping_s.py","lines_changed":2},{"name":"tests/test_vmstat_s.py","lines_changed":124}]},"message":"add streaming parser tests"},{"commit":"978760ec57e04e3ec347c8764bfad015b6dddbff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"add exception class name to error string"},{"commit":"d410425537817964ceb7b61e0fdff6c03fdf8766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":136,"deletions":136,"files":["docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/vmstat.md","lines_changed":68},{"name":"docs/parsers/vmstat_s.md","lines_changed":68},{"name":"jc/parsers/vmstat.py","lines_changed":68},{"name":"jc/parsers/vmstat_s.py","lines_changed":68}]},"message":"replace single quotes with double quotes in doc"},{"commit":"6b7430329cbe1bfb95b47bcfe031906641c127e1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":269,"deletions":1,"files":["README.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat_s.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":145},{"name":"docs/parsers/vmstat_s.md","lines_changed":105},{"name":"jc/parsers/vmstat_s.py","lines_changed":6},{"name":"man/jc.1","lines_changed":12}]},"message":"doc update"},{"commit":"40fe0d4a6081a1233bf5c3eb51a01da1f12bc4dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":141,"deletions":22,"files":["jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":163}]},"message":"working parser"},{"commit":"365c5354a0349e470558d15243217a064e73da38","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/vmstat.py"],"file_stats":[{"name":"jc/parsers/vmstat.py","lines_changed":1}]},"message":"remove debug print statement"},{"commit":"b246a05cbb4c1c564f81b3e72cecb62edbe6ced6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"fix vmstat-s name"},{"commit":"9e5a7a4abb8668d043625951a05eb5733cbbd56f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":37,"deletions":0,"files":["tests/fixtures/centos-7.7/vmstat-a.out","tests/fixtures/centos-7.7/vmstat-at-5-10.out","tests/fixtures/centos-7.7/vmstat-awt.out","tests/fixtures/centos-7.7/vmstat-d.out","tests/fixtures/centos-7.7/vmstat-dt.out","tests/fixtures/centos-7.7/vmstat-w.out","tests/fixtures/centos-7.7/vmstat.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/vmstat-a.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/vmstat-at-5-10.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/vmstat-awt.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/vmstat-d.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/vmstat-dt.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/vmstat-w.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/vmstat.out","lines_changed":4}]},"message":"add vmstat sample output"},{"commit":"f266acbccafc040c375723147b8e5d7fddb1e697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":106,"deletions":14,"files":["jc/parsers/vmstat.py"],"file_stats":[{"name":"jc/parsers/vmstat.py","lines_changed":120}]},"message":"add processing logic"},{"commit":"4e3b471f1801f1b9006b18cae2a3d816f361262e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"add format for vmstat"},{"commit":"5e28736c2e0c951e71e6531e03a9619279d95d3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add vmstat and vmstat_s"},{"commit":"a91913a3b517ea0dbb25d6e4cc92850eb2fde5ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":106,"deletions":0,"files":["jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":106}]},"message":"streaming parser template"},{"commit":"90c64f0ae0d97d025adee40970d89baca79ee4ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":182,"deletions":0,"files":["jc/parsers/vmstat.py"],"file_stats":[{"name":"jc/parsers/vmstat.py","lines_changed":182}]},"message":"initial working parser"},{"commit":"7cc642ed1a476abda709ac9b79900a1de12e1ef7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":4}]},"message":"formatting"},{"commit":"809f64d35a92bb3d7380fa9d78ac1421a10b81fc","merge":"ff0fda4 a6f859a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #169 from kellyjonbrazil/streaming\n\nStreaming to dev"},{"commit":"a6f859a55edae50fcc185948736218404cfaa929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":18,"insertions":168,"deletions":153,"files":[".../osx-10.14.6/ping-hostname-p-streaming.json",".../osx-10.14.6/ping-hostname-s-streaming.json",".../osx-10.14.6/ping-hostname-streaming.json",".../osx-10.14.6/ping-ip-dup-streaming.json",".../fixtures/osx-10.14.6/ping-ip-p-streaming.json",".../fixtures/osx-10.14.6/ping-ip-s-streaming.json","tests/fixtures/osx-10.14.6/ping-ip-streaming.json",".../osx-10.14.6/ping-ip-unreachable-streaming.json",".../osx-10.14.6/ping6-hostname-p-streaming.json",".../osx-10.14.6/ping6-hostname-s-streaming.json",".../osx-10.14.6/ping6-hostname-streaming.json",".../osx-10.14.6/ping6-ip-dup-streaming.json",".../fixtures/osx-10.14.6/ping6-ip-p-streaming.json",".../fixtures/osx-10.14.6/ping6-ip-s-streaming.json","tests/fixtures/osx-10.14.6/ping6-ip-streaming.json","tests/fixtures/pi/ping-ip-O-D-streaming.json","tests/fixtures/pi/ping-ip-O-streaming.json","tests/test_ping_s.py"],"file_stats":[{"name":".../osx-10.14.6/ping-hostname-p-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping-hostname-s-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping-hostname-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping-ip-dup-streaming.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/ping-ip-p-streaming.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/ping-ip-s-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping-ip-unreachable-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping6-hostname-p-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping6-hostname-s-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping6-hostname-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping6-ip-dup-streaming.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/ping6-ip-p-streaming.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/ping6-ip-s-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-streaming.json","lines_changed":1},{"name":"tests/fixtures/pi/ping-ip-O-D-streaming.json","lines_changed":1},{"name":"tests/fixtures/pi/ping-ip-O-streaming.json","lines_changed":1},{"name":"tests/test_ping_s.py","lines_changed":304}]},"message":"add final ping_s tests"},{"commit":"39ef88078f43708e470d3c1b2fd95e76b5cbeb08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":1}]},"message":"add destination_ip to error lines"},{"commit":"aeea5e8d2eab2fef3e14637f512aed7b117c4a3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/test_ls_s.py"],"file_stats":[{"name":"tests/test_ls_s.py","lines_changed":2}]},"message":"formatting"},{"commit":"1a0700bff4bdebbd9f1f92f2fc7a56c4d5ed6925","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":31,"insertions":240,"deletions":213,"files":[".../fedora32/ping-hostname-O-D-p-s-streaming.json",".../fedora32/ping-hostname-O-p-streaming.json",".../fedora32/ping-hostname-O-streaming.json","tests/fixtures/fedora32/ping-ip-O-D-streaming.json","tests/fixtures/fedora32/ping-ip-O-streaming.json",".../fedora32/ping6-hostname-O-D-p-s-streaming.json",".../fedora32/ping6-hostname-O-p-streaming.json",".../fedora32/ping6-ip-O-D-p-streaming.json",".../fixtures/fedora32/ping6-ip-O-p-streaming.json",".../freebsd12/ping-hostname-p-streaming.json",".../freebsd12/ping-hostname-s-streaming.json",".../freebsd12/ping-hostname-streaming.json","tests/fixtures/freebsd12/ping-ip-p-streaming.json","tests/fixtures/freebsd12/ping-ip-s-streaming.json","tests/fixtures/freebsd12/ping-ip-streaming.json",".../freebsd12/ping6-hostname-p-streaming.json",".../freebsd12/ping6-hostname-s-streaming.json",".../freebsd12/ping6-hostname-streaming.json","tests/fixtures/freebsd12/ping6-ip-p-streaming.json","tests/fixtures/freebsd12/ping6-ip-s-streaming.json","tests/fixtures/freebsd12/ping6-ip-streaming.json",".../ping-hostname-O-D-p-s-streaming.json",".../ubuntu-18.04/ping-hostname-O-p-streaming.json",".../ubuntu-18.04/ping-hostname-O-streaming.json",".../ubuntu-18.04/ping-ip-O-D-streaming.json",".../fixtures/ubuntu-18.04/ping-ip-O-streaming.json",".../ping6-hostname-O-D-p-s-streaming.json",".../ubuntu-18.04/ping6-hostname-O-p-streaming.json",".../ubuntu-18.04/ping6-ip-O-D-p-streaming.json",".../ubuntu-18.04/ping6-ip-O-p-streaming.json","tests/test_ping_s.py"],"file_stats":[{"name":".../fedora32/ping-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../fedora32/ping-hostname-O-p-streaming.json","lines_changed":1},{"name":".../fedora32/ping-hostname-O-streaming.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-ip-O-D-streaming.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-ip-O-streaming.json","lines_changed":1},{"name":".../fedora32/ping6-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../fedora32/ping6-hostname-O-p-streaming.json","lines_changed":1},{"name":".../fedora32/ping6-ip-O-D-p-streaming.json","lines_changed":1},{"name":".../fixtures/fedora32/ping6-ip-O-p-streaming.json","lines_changed":1},{"name":".../freebsd12/ping-hostname-p-streaming.json","lines_changed":1},{"name":".../freebsd12/ping-hostname-s-streaming.json","lines_changed":1},{"name":".../freebsd12/ping-hostname-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-p-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-s-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-streaming.json","lines_changed":1},{"name":".../freebsd12/ping6-hostname-p-streaming.json","lines_changed":1},{"name":".../freebsd12/ping6-hostname-s-streaming.json","lines_changed":1},{"name":".../freebsd12/ping6-hostname-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-p-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-s-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-streaming.json","lines_changed":1},{"name":".../ping-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping-hostname-O-p-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping-hostname-O-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping-ip-O-D-streaming.json","lines_changed":1},{"name":".../fixtures/ubuntu-18.04/ping-ip-O-streaming.json","lines_changed":1},{"name":".../ping6-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-hostname-O-p-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-ip-O-D-p-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-ip-O-p-streaming.json","lines_changed":1},{"name":"tests/test_ping_s.py","lines_changed":423}]},"message":"add more ping-s tests"},{"commit":"b5fa6d068f240671eb948b055cd4f7bf127e0ec0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":25,"deletions":5,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":6},{"name":"docs/parsers/ping_s.md","lines_changed":6},{"name":"jc/parsers/foo_s.py","lines_changed":6},{"name":"jc/parsers/ls_s.py","lines_changed":6},{"name":"jc/parsers/ping_s.py","lines_changed":6}]},"message":"update docs"},{"commit":"1baec0b420feff068f2dc1e35499f78aa7d0a6e0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":815,"deletions":0,"files":[".../ping-hostname-O-D-p-s-streaming.json",".../centos-7.7/ping-hostname-O-p-streaming.json",".../centos-7.7/ping-hostname-O-streaming.json",".../fixtures/centos-7.7/ping-ip-O-D-streaming.json",".../centos-7.7/ping-ip-O-streaming-quiet.json","tests/fixtures/centos-7.7/ping-ip-O-streaming.json",".../fixtures/centos-7.7/ping-ip-dup-streaming.json",".../ping6-hostname-O-D-p-s-streaming.json",".../centos-7.7/ping6-hostname-O-p-streaming.json",".../centos-7.7/ping6-ip-O-D-p-streaming.json",".../centos-7.7/ping6-ip-O-p-streaming.json",".../centos-7.7/ping6-ip-dup-streaming.json","tests/test_ping_s.py"],"file_stats":[{"name":".../ping-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping-hostname-O-p-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping-hostname-O-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/ping-ip-O-D-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping-ip-O-streaming-quiet.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-ip-O-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/ping-ip-dup-streaming.json","lines_changed":1},{"name":".../ping6-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping6-hostname-O-p-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping6-ip-O-D-p-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping6-ip-O-p-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping6-ip-dup-streaming.json","lines_changed":1},{"name":"tests/test_ping_s.py","lines_changed":803}]},"message":"add some streaming tests"},{"commit":"4f2a4e1dee9d722d2aa5ddf2c082a358c88cf640","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":8}]},"message":"skip blank lines and warning lines"},{"commit":"758d617668d1f9d0f27b52d46749e5b67a570cf1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":5,"deletions":5,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2}]},"message":"doc update"},{"commit":"55322c37f57a9c8e28641a61928fad2329f5e50d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":4}]},"message":"formatting"},{"commit":"d19ea5552bb3a379f7f92bcb58794c557ecc6647","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":193,"deletions":0,"files":["tests/fixtures/centos-7.7/ls-al-streaming.json","tests/fixtures/centos-7.7/ls-alR-streaming.json","tests/fixtures/centos-7.7/ls-alh-streaming.json","tests/fixtures/osx-10.14.6/ls-al-streaming.json","tests/fixtures/osx-10.14.6/ls-alR-streaming.json","tests/fixtures/osx-10.14.6/ls-alh-streaming.json",".../osx-10.14.6/ls-lR-empty-folder-streaming.json","tests/fixtures/ubuntu-18.04/ls-al-streaming.json","tests/fixtures/ubuntu-18.04/ls-alR-streaming.json","tests/fixtures/ubuntu-18.04/ls-alh-streaming.json",".../fixtures/ubuntu-18.04/ls-l-iso-streaming.json","tests/test_ls_s.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ls-al-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-alR-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-alh-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-al-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-alR-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-alh-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ls-lR-empty-folder-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-al-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-alR-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-alh-streaming.json","lines_changed":1},{"name":".../fixtures/ubuntu-18.04/ls-l-iso-streaming.json","lines_changed":1},{"name":"tests/test_ls_s.py","lines_changed":182}]},"message":"add streaming ls parser tests"},{"commit":"130c3527c1083d399deef00ee8fcaa75f609b485","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":25,"deletions":25,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":8},{"name":"docs/parsers/ping_s.md","lines_changed":12},{"name":"jc/parsers/foo_s.py","lines_changed":6},{"name":"jc/parsers/ls_s.py","lines_changed":10},{"name":"jc/parsers/ping_s.py","lines_changed":12},{"name":"man/jc.1","lines_changed":2}]},"message":"update docstrings"},{"commit":"3f221f471416766a860bd19850afda4899ee5eb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":6},{"name":"jc/parsers/ping_s.py","lines_changed":6}]},"message":"doc update"},{"commit":"d64c4cb39056bb869fc117477612ae5ae2ef3d85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":141,"deletions":1,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":72},{"name":"templates/manpage_template","lines_changed":70}]},"message":"add streaming parsers section"},{"commit":"448c56aa46b72438e4a4c83b10a7eb889e3f50e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting"},{"commit":"9fbea15b6d031baa8c90f2602e39de7cf51408e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":8,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":6},{"name":"jc/parsers/ping_s.py","lines_changed":4}]},"message":"rename state class to _state"},{"commit":"932060314b3c1ce518b9f57532e124285cb3ad0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":41,"deletions":11,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":50},{"name":"jc/parsers/ping_s.py","lines_changed":2}]},"message":"doc update"},{"commit":"5e68ae50097cb339f3390449db7e3f189a716320","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":7}]},"message":"import exception. tighten up os detection"},{"commit":"d03541beae44a4571a7d0481af01a5c19506207f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":5,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":17}]},"message":"add docstring examples. add exception raise when OS cannot be detected."},{"commit":"516fa571d90a0c93134c953c15ce84dd31b96b4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":3}]},"message":"remove unused variable. use elif instead of if for linux vs. bsd detection"},{"commit":"a19c12096a8e8de02a6ff761cc9c13ec249d416e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":373,"deletions":143,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":516}]},"message":"initial working parser for both linux and bsd"},{"commit":"758f27945de4f0897405eba02c7908d815ce6e9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":18}]},"message":"change data_bytes and bytes to sent_bytes and response_bytes"},{"commit":"8b1e8d58df22f8542ccaf7bf3e1eabe6132e7a42","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":1}]},"message":"remove unneeded line"},{"commit":"b967489d085319facee077958deaa04956a98343","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":81,"deletions":40,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":121}]},"message":"complete linux coverage including summary"},{"commit":"870d0218be2641e3eddb114c23d54deb23155f25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2}]},"message":"add unbuffer note"},{"commit":"84020bc2af294cb065105f1399453aefc98eb180","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":12,"deletions":6,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/utils.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":6},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"change error_msg to error in -q result docs"},{"commit":"4efe5344e069ed921f208bcbbd097705be2d3b4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add links to HN and Reddit"},{"commit":"9182c545134b3d56d27d2c1d9bda678532bdc3fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":8,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":11}]},"message":"formatting"},{"commit":"28f0ab0b02d21fc060f1ac7181f85552798dc4bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/ls_s.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":2}]},"message":"update streaming error messages"},{"commit":"90d1a30696b2cbfbb06a55cc0cf920cf8ecd89aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting"},{"commit":"130b3738cc57fe261e8ef881a57b7836acd7e7e9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":21,"deletions":26,"files":["jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":8},{"name":"jc/parsers/ls_s.py","lines_changed":8},{"name":"jc/parsers/ping_s.py","lines_changed":14},{"name":"jc/utils.py","lines_changed":17}]},"message":"shorten successful yield to a single line"},{"commit":"92c7357615af7689db273aa78d666b35a2ec7a70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":2}]},"message":"formatting"},{"commit":"c80f8633349c00ea461b8927f9949fe19b2f46ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/foo.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":10}]},"message":"simplify return condition formatting"},{"commit":"4642c20179d4643e0cf1970b264da7d9d91628de","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"templates/readme_template","lines_changed":4}]},"message":"formatting"},{"commit":"5288eb22aadbbc1005b16428b94d2b07e9a75e3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add info about streaming parser performance characteristics"},{"commit":"df8387a1a99df69eac5005662aaf56d506fa0efd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"streaming parsers cannot be used with the magic syntax"},{"commit":"cc38c27f44d3f088609b878304cab8eed75fc8f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"templates/readme_template","lines_changed":3}]},"message":"formatting"},{"commit":"64f5357d69fe88b45d710d38948969699e1ca12f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":84,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":42},{"name":"templates/readme_template","lines_changed":42}]},"message":"add streaming parsers section"},{"commit":"51debb5649bef431e51e543f1c9270e2810aa58f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"add vmstat parser and change from linebuffer to unbuffer"},{"commit":"b48d05a4313b27cf5e69d3e4259542e0b131b60f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":15,"deletions":15,"files":["README.md","jc/cli.py","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":8},{"name":"man/jc.1","lines_changed":10},{"name":"templates/manpage_template","lines_changed":8},{"name":"templates/readme_template","lines_changed":2}]},"message":"change from line buffer output to unbuffer output"},{"commit":"4e7f6b337db61b8a106cf958f6b874157909c87a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":17,"deletions":25,"files":["jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":15},{"name":"jc/parsers/ls_s.py","lines_changed":9},{"name":"jc/parsers/ping_s.py","lines_changed":18}]},"message":"simplify yield statements"},{"commit":"a509d99cafd80862721595ee59ccc4a471b5e5a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":8}]},"message":"add stream_success dictionary"},{"commit":"481e45fb644ac88fa77ef35643b793f179fe6859","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2}]},"message":"limit parse error msg lenght"},{"commit":"e9038e1720e1c0e520e2f29b718aa8505cbbb9a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":66,"deletions":0,"files":["docs/parsers/ping_s.md"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":66}]},"message":"initial streaming ping docs"},{"commit":"8fd9e582bf29275c4daaa3be88ea8d196411b34a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":15,"deletions":17,"files":["docs/parsers/ls_s.md"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":32}]},"message":"doc update"},{"commit":"c1fd6f48a5a3501499c9fca7239673b8555cc7c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["docs/utils.md"],"file_stats":[{"name":"docs/utils.md","lines_changed":6}]},"message":"add stream_error docs"},{"commit":"af615c7f4b3f589ffc1b37cf9834062a04c013cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":26,"deletions":5,"files":["CHANGELOG","README.md","jc/cli.py","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"README.md","lines_changed":4},{"name":"jc/cli.py","lines_changed":7},{"name":"man/jc.1","lines_changed":11},{"name":"templates/manpage_template","lines_changed":4},{"name":"templates/readme_template","lines_changed":3}]},"message":"add line buffer output option"},{"commit":"bf0bc32d7ae6cabe07906207f4f08c2e81802c80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"flush streamed text for better piping experience"},{"commit":"2d6b53e012181a4c33bab441880c47c0fc0b0601","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":36,"deletions":42,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":78}]},"message":"add pattern support. move unparsable line detection to standard streaming parser style"},{"commit":"51271fea0fbd7bd63863ba05c399b4675dc5b4bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":139,"deletions":149,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":288}]},"message":"somewhat working parser"},{"commit":"2deb473e0bc96c0e39ec4074a6df4b941ba2172b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":262,"deletions":0,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":262}]},"message":"initial streaming ping parser"},{"commit":"23eeb33b3da43a679c3bf3f3643cfa552a1164e1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"modify stream_error message"},{"commit":"f50dfaef45632241f8f6972fa19bb17c54a457ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":13,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":19}]},"message":"use stream_error function for exceptions. raise on non -l ls output"},{"commit":"55bb71e9d466cc9ee5f7fd8eca1101c941cbcb35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"add streaming ping parser. update streaming exception message"},{"commit":"dab9357d286962b70224d6fafbf90a4c0cbc9980","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":12,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":13}]},"message":"use stream_error function for exceptions"},{"commit":"27eb427245b5126335cef0adb5e57522272474b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":16}]},"message":"add stream_error function"},{"commit":"260f3685d944ded84396ae3395773d6898803fb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":112,"deletions":0,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":112}]},"message":"add streaming parser template"},{"commit":"76e78fc0c34b88a90fef876eebef92bd71cd772c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":11,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":20}]},"message":"doc updates"},{"commit":"1ac944fa028a400ae7b39b811fcf368c9bf5e259","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2}]},"message":"add -q option info to docstring"},{"commit":"986bc9b042a940f8dd34f0541bcb9b5840df579e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":43,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":52}]},"message":"cleanup unused code"},{"commit":"5a7942069b1f3ef3b45992b482bfb6bb973f7e8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":28,"deletions":28,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":56}]},"message":"add support for parent field"},{"commit":"f6c6fc13ac4c779667807df12444a41ef28a8011","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"enhance error msg when streaming parser is used"},{"commit":"1d8cfae89f24192b6fab087f59c9b8988ef363dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":11}]},"message":"only print _meta object if -q or quiet flag is used. Also, add message to the end of exceptions informing of the -q option to ignore errors"},{"commit":"787df51239ffa8260b48d6a3a58e6ff07d5e0f64","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2}]},"message":"remove `\\n` from end of line in exception message"},{"commit":"5e7f302a9c45343c36e81944db38a435e6c8a20c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":10,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":22}]},"message":"Raise exceptions unless the -q or quiet flag are used"},{"commit":"3d10fd40b56264836874da19aa72351e6d5cfbf7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":13,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":27}]},"message":"remove print flush for better performance. Roll json.JSONDecodeError into the parse try/except block"},{"commit":"57e3bf239cc76d3b0ee0eddc618171eb90c28dec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":6},{"name":"jc/parsers/ls_s.py","lines_changed":6}]},"message":"formatting for docs"},{"commit":"ccb09861e82044e17ec51277b3c8875e5ba9d87d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":20,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":20},{"name":"jc/parsers/ls_s.py","lines_changed":20}]},"message":"formatting for docs"},{"commit":"94551d75dd926c7f558e5cab47ba9483a20c6b3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":116,"deletions":49,"files":["CHANGELOG","README.md","docs/parsers/ls_s.md","docs/readme.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz","mangen.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":6},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/ls_s.md","lines_changed":89},{"name":"docs/readme.md","lines_changed":25},{"name":"jc/__init__.py","lines_changed":27},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":7},{"name":"man/jc.1.gz","lines_changed":null},{"name":"mangen.py","lines_changed":8},{"name":"setup.py","lines_changed":2}]},"message":"doc update"},{"commit":"6e21218425359210591827e936b8d48d9644df92","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":234,"deletions":3,"files":["jc/cli.py","jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":23},{"name":"jc/parsers/ls_s.py","lines_changed":214}]},"message":"working prototype of streaming ls parser"},{"commit":"ff0fda48fc48760a7293528155d222c6456f84c4","merge":"e08b61f 528aac7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #168 from kellyjonbrazil/master\n\nSync master to dev"},{"commit":"528aac7ad87feae2093aba563c83a29ebf75e5f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":38,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":23},{"name":"templates/readme_template","lines_changed":23}]},"message":"use subprocess in python example"},{"commit":"ab482e521d4cecfffa5393805b1d7de4389db49a","merge":"9c1ad92 e08b61f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #163 from kellyjonbrazil/dev\n\nDev v1.16.2"},{"commit":"e08b61fa81b1bd2304d04db5cdc8b809fe9c6032","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add schema note to sfdisk"},{"commit":"ce61bd1d2b4323d9c2d0454c4f646521913ae20d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":73,"deletions":7,"files":["tests/fixtures/debian10/sfdisk-F2.json","tests/fixtures/debian10/sfdisk-F2.out","tests/fixtures/debian10/sfdisk-l2.json","tests/fixtures/debian10/sfdisk-l2.out","tests/fixtures/debian10/sfdisk-l3.json","tests/fixtures/debian10/sfdisk-l3.out","tests/test_sfdisk.py"],"file_stats":[{"name":"tests/fixtures/debian10/sfdisk-F2.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-F2.out","lines_changed":6},{"name":"tests/fixtures/debian10/sfdisk-l2.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-l2.out","lines_changed":15},{"name":"tests/fixtures/debian10/sfdisk-l3.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-l3.out","lines_changed":13},{"name":"tests/test_sfdisk.py","lines_changed":43}]},"message":"add tests for -F fixes"},{"commit":"7b708f75182bf3ed33478a7de62e9c2496f0b994","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":11,"deletions":5,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-l.json","tests/fixtures/debian10/sfdisk-l.json"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":12},{"name":"tests/fixtures/centos-8/sfdisk-l.json","lines_changed":2},{"name":"tests/fixtures/debian10/sfdisk-l.json","lines_changed":2}]},"message":"Don't convert 'size' to int, except for legacy -d support. Change partition table detection logic to fix -F output"},{"commit":"89ca50c7fc1bf64f34c915e65031d0bc520e6466","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/sfdisk.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add -l to sfdisk raw example"},{"commit":"fb54899dcc2160450448e0d6111557cebdeb0d4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":38,"deletions":23,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":59},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update"},{"commit":"0a625ad7ddd9c804052d98930165cd22049546bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/sfdisk.py"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":2}]},"message":"remove unneeded lines"},{"commit":"d32e45efbe0d71a9a132abfb2855f1f4ccee9916","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":69,"deletions":1,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-F.json","tests/fixtures/centos-8/sfdisk-l.json","tests/fixtures/debian10/sfdisk-F.json","tests/fixtures/debian10/sfdisk-l.json","tests/test_sfdisk.py"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":9},{"name":"tests/fixtures/centos-8/sfdisk-F.json","lines_changed":1},{"name":"tests/fixtures/centos-8/sfdisk-l.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-F.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-l.json","lines_changed":1},{"name":"tests/test_sfdisk.py","lines_changed":57}]},"message":"add sfdisk tests"},{"commit":"c77696bc789cdfd286a7479c3d9f67d23149d0ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":4},{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"736fde9e784587cb2ef344bbf31d876eafea7741","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":147,"deletions":28,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-F.out","tests/fixtures/centos-8/sfdisk-l.out","tests/fixtures/debian10/sfdisk-F.out","tests/fixtures/debian10/sfdisk-l.out"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":127},{"name":"tests/fixtures/centos-8/sfdisk-F.out","lines_changed":9},{"name":"tests/fixtures/centos-8/sfdisk-l.out","lines_changed":24},{"name":"tests/fixtures/debian10/sfdisk-F.out","lines_changed":3},{"name":"tests/fixtures/debian10/sfdisk-l.out","lines_changed":12}]},"message":"add support for newer versions of sfdisk"},{"commit":"9c1ad92fed9a4b3a0da66d6b71deec8d608edfa9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":12}]},"message":"fix examples"},{"commit":"1a9fd2139d156a51bf2d25db951e47e96da77f7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"add \"For new parsers:\""},{"commit":"7661e7f27a4e5c379ea37c7f95496aca2c1e2910","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"formatting"},{"commit":"f857b7fbf7862ddd7eb5ab20470f5dbaacc62119","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"add custom parser folder info"},{"commit":"d94d12dbc5fb3e3712b2f1aea949013cb8213e28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":11}]},"message":"add foo parser template info"},{"commit":"700916276ae8b0a106410e3dd2ea3e00248ee37a","merge":"473f706 834e523","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #159 from kellyjonbrazil/master\n\nSync Master to dev"},{"commit":"834e52369ceb479776ddc8fc2931790af53b9c18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":5,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":6},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update man page"},{"commit":"1ce53365de61421c8bd43e04590038083894153b","merge":"2689697 473f706","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #156 from kellyjonbrazil/dev\n\nDev v1.16.1"},{"commit":"473f70668f04a38765559c5dbf0468af24d625c9","merge":"0dbd270 2689697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'master' into dev\n\n# Conflicts:\n# jc/man/jc.1.gz\n# man/jc.1\n# man/jc.1.gz"},{"commit":"0dbd2702f6ab2640b2ccdea92411ac0789673e66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]},"message":"reformat doc_text for nicer indentation"},{"commit":"01e3764a9b6ba902aea522bf6b7005fd37b3acbb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"fix join syntax"},{"commit":"ff9c81722ae7221364e9bcb83d98b16b4263334e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"try/except for shlex.join since only available in python 3.8"},{"commit":"166aef7a022ed29862ab2e0702d53c591bb5cc77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":4,"deletions":4,"files":["docs/parsers/stat.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz","setup.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"78caf7646baf5d35602fd76771443cd64bd783af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add stat fix"},{"commit":"1f99d40cecc5d88a246f3558f71db376ebd885c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":17,"deletions":2,"files":["jc/parsers/stat.py","tests/fixtures/osx-10.14.6/stat-filename-with-spaces.json","tests/fixtures/osx-10.14.6/stat-filename-with-spaces.out","tests/test_stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"tests/fixtures/osx-10.14.6/stat-filename-with-spaces.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/stat-filename-with-spaces.out","lines_changed":2},{"name":"tests/test_stat.py","lines_changed":12}]},"message":"fix filename with spaces for osx/bsd"},{"commit":"4c2912d3d5ec1fd2d5d891f2b3c58a33dd8572be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"use shlex.join to quote run_command_str for better error messages"},{"commit":"45e6e06be581f787f707e3f5645129c713478d16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"add glob and process substitution fixes"},{"commit":"fdbe3e05f323c95687a1137983f9623911008ca2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"fix issue with globs not including filenames with spaces with magic syntax (introduced during switch to use subprocess to grab process exit code). No longer need to shlex quote arguments."},{"commit":"7cc168f6409af13fda815d0d2a6db25b7c9ba367","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add comment"},{"commit":"ff2d609c9b5f5f57f3331e5593e8fe87c01654dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":13}]},"message":"add close_fds=False in subprocess.Popen() to allow process substitution in magic syntax. Also check for too many open files exception"},{"commit":"2689697b4c21758903e5f74ec069e89be585aba2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting"},{"commit":"f90a0ea8ab15629b7786e4431e9c968c3a896ee0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":4}]},"message":"formatting"},{"commit":"caabe60f849fb2422e47b8f10e0ff35beb706dcd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":3,"deletions":3,"files":["docs/parsers/kv.md","jc/man/jc.1.gz","jc/parsers/kv.py","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/kv.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/kv.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"fix kv example"},{"commit":"2bef4ed6038201f54339e750a833260dc1998591","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","README.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"README.md","lines_changed":4}]},"message":"package updates"},{"commit":"ee57be533b12593a33a2abbb2892697f0bd40c65","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2}]},"message":"fix sfdisk example"},{"commit":"c5b7aaca25d6b66d3e44256c2c6760a4cf2956ec","merge":"3b22ce4 7a1be90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #149 from kellyjonbrazil/dev\n\nDev v1.16.0"},{"commit":"7a1be905bb8654558afb5979b0bd78d4a8488874","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"version bump"},{"commit":"5798495a11afa2f72ce6f79be785d46240fcbeb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":6}]},"message":"add 1.15.7 to 1.16.0 changes"},{"commit":"46171e220252ec92d18e744d2a57c1d6a6dc19f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":69,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":69}]},"message":"add sfdisk example"},{"commit":"dd5c924ff505dcc2a9c851d2425677bdf16ea462","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add man page location change"},{"commit":"30c4ab297658228a07ef9b1585516719af3febb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":515,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":515},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"new man page location"},{"commit":"26ea4d47b33277efb0ddafe8f421791696277c07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":14,"deletions":3,"files":["CHANGELOG","MANIFEST.in","jc/__init__.py","mangen.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":10},{"name":"MANIFEST.in","lines_changed":1},{"name":"jc/__init__.py","lines_changed":2},{"name":"mangen.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump and deprecate /man/jc.1.gz and /jc/man/jc.1.gz"},{"commit":"2732cd175c1e878210707162de3928f33fb2f201","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["CHANGELOG","MANIFEST.in"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"MANIFEST.in","lines_changed":1}]},"message":"include CHANGELOG in source distribution"},{"commit":"3e54b597be88b0e342e4361b7f2c1af447f9482b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add timezone change for unit tests"},{"commit":"f10ebea20962084833e5c1ebd9bc90a251bf3ff4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":78,"deletions":0,"files":["tests/test_date.py","tests/test_dig.py","tests/test_dir.py","tests/test_last.py","tests/test_ls.py","tests/test_rpm_qai.py","tests/test_stat.py","tests/test_systeminfo.py","tests/test_upower.py","tests/test_utils.py","tests/test_who.py"],"file_stats":[{"name":"tests/test_date.py","lines_changed":7},{"name":"tests/test_dig.py","lines_changed":7},{"name":"tests/test_dir.py","lines_changed":7},{"name":"tests/test_last.py","lines_changed":7},{"name":"tests/test_ls.py","lines_changed":7},{"name":"tests/test_rpm_qai.py","lines_changed":7},{"name":"tests/test_stat.py","lines_changed":7},{"name":"tests/test_systeminfo.py","lines_changed":7},{"name":"tests/test_upower.py","lines_changed":7},{"name":"tests/test_utils.py","lines_changed":8},{"name":"tests/test_who.py","lines_changed":7}]},"message":"update tests to set correct timezone on POSIX systems"},{"commit":"2c6f3993cb4c5e559dbac7a479ec889aa2cba752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/route.md","jc/man/jc.1.gz","jc/parsers/route.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/route.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"remove extra comma"},{"commit":"708a696920b52c2614edcdba264912527b2dfbef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":0,"deletions":2,"files":["docs/parsers/route.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/route.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"remove extra lines"},{"commit":"20bbb5d331575c8fc33ba63643882a62650c97b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":2}]},"message":"remove extra lines"},{"commit":"223e785b547d9376174efa15321d60a533847c57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/sfdisk.py"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":8}]},"message":"rename variable"},{"commit":"3d78692c59980e4d70361d3a9f74bacc3f21376e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":150,"deletions":1,"files":["tests/fixtures/centos-7.7/sfdisk-d-multi.json","tests/fixtures/centos-7.7/sfdisk-d-multi.out","tests/fixtures/centos-7.7/sfdisk-d.json","tests/fixtures/centos-7.7/sfdisk-d.out","tests/fixtures/centos-7.7/sfdisk-l-multi.json","tests/fixtures/centos-7.7/sfdisk-l-multi.out","tests/fixtures/centos-7.7/sfdisk-l.json","tests/fixtures/centos-7.7/sfdisk-luB.json","tests/fixtures/centos-7.7/sfdisk-luM.json","tests/fixtures/centos-7.7/sfdisk-luS.json","tests/test_sfdisk.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/sfdisk-d-multi.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-d-multi.out","lines_changed":16},{"name":"tests/fixtures/centos-7.7/sfdisk-d.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-d.out","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-l-multi.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-l-multi.out","lines_changed":21},{"name":"tests/fixtures/centos-7.7/sfdisk-l.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-luB.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-luM.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-luS.json","lines_changed":1},{"name":"tests/test_sfdisk.py","lines_changed":106}]},"message":"add sfdisk tests"},{"commit":"5321a15dcf13cf14efe578d0f66b651078c3d8a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":8,"deletions":8,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":8},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/sfdisk.py","lines_changed":8},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update examples"},{"commit":"a452f8252a593f7914ebece53af9d73f4fd11a19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":4},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/sfdisk.py","lines_changed":4},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"fix integer conversion"},{"commit":"49267f09ac01fead3b20b2d481bb5e0d07af1439","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/sfdisk.py"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":4}]},"message":"change to root prompt in examples"},{"commit":"db47f35783e46a8299533c22146d851509f6ceb2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":15,"insertions":610,"deletions":3,"files":["CHANGELOG","README.md","docs/parsers/sfdisk.md","jc/__init__.py","jc/cli.py","jc/man/jc.1.gz","jc/parsers/sfdisk.py","jc/utils.py","man/jc.1.gz","setup.py","tests/fixtures/centos-7.7/sfdisk-d.out","tests/fixtures/centos-7.7/sfdisk-l.out","tests/fixtures/centos-7.7/sfdisk-luB.out","tests/fixtures/centos-7.7/sfdisk-luM.out","tests/fixtures/centos-7.7/sfdisk-luS.out"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/sfdisk.md","lines_changed":213},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/sfdisk.py","lines_changed":325},{"name":"jc/utils.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/sfdisk-d.out","lines_changed":8},{"name":"tests/fixtures/centos-7.7/sfdisk-l.out","lines_changed":14},{"name":"tests/fixtures/centos-7.7/sfdisk-luB.out","lines_changed":14},{"name":"tests/fixtures/centos-7.7/sfdisk-luM.out","lines_changed":14},{"name":"tests/fixtures/centos-7.7/sfdisk-luS.out","lines_changed":14}]},"message":"add working sfdisk parser"},{"commit":"d48abf312c1f55ab31aa11da2b6cf6bc8166733b","merge":"ff7ab0a 3b22ce4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #147 from kellyjonbrazil/master\n\nsync to dev"},{"commit":"3b22ce41105387e7f46a410460cf04759feef197","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":6,"deletions":3,"files":["CHANGELOG","jc/__init__.py","jc/cli.py","jc/man/jc.1.gz","man/jc.1.gz","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"setup.py","lines_changed":2}]},"message":"fix local plugin parser issue where parser has .py in the name but it is not at the end"},{"commit":"c521ca5bc9e2b035cfef6ff65f6b303b3ec44296","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"change possible to available"},{"commit":"3ddc1c665990e1e732314330db214a81ab810fe9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add jello"},{"commit":"a8e19402b7d1f9f06bc40b81a15dec401154180c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["ADVANCED_USAGE.md"],"file_stats":[{"name":"ADVANCED_USAGE.md","lines_changed":4}]},"message":"remove temporary fix"},{"commit":"0927902b30654274743ab9092e90e768709a9937","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["ADVANCED_USAGE.md"],"file_stats":[{"name":"ADVANCED_USAGE.md","lines_changed":4}]},"message":"temp fix for wrong url"},{"commit":"572548b42fb6ed9d32a392503d44fac1a8f146d3","merge":"95aec9c ff7ab0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #141 from kellyjonbrazil/dev\n\nDev v1.15.5"},{"commit":"ff7ab0a1ed7f468d0e84eb3bf0636f53913c490d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":0,"deletions":1,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc updates for v1.15.5"},{"commit":"5db71b05cb28691bbbaa5d668bcd4a4ac7e68b85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":3,"deletions":3,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/manpage_template","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add en_US.UTF-8 to LANG info"},{"commit":"f9b952885aa7f2b450786a08c3879d9e358886da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add python 3.9.5 packaged info"},{"commit":"e7983bc0b29abaca2147038dfad018cba1e67cdf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xml.md","docs/parsers/yaml.md"],"file_stats":[{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2}]},"message":"version bump"},{"commit":"473a6431425fc24a4cc83939ff592e0d49535b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":10,"deletions":3,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":11},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/readme_template","lines_changed":2}]},"message":"add windows msi info"},{"commit":"14f3d442cb86250b8f2cdfd7977938634b8abd6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"formatting"},{"commit":"d6f4ed9ab55fe9b7c2766fb437172af62a1d5c87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":2}]},"message":"add long-form UTC test"},{"commit":"1b8d654444ff8c8b8171c7ac63e2736447a36c09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add error message info"},{"commit":"6002af0dca334c0affaff3e9acdca416238c7d82","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":11}]},"message":"add more error message detail to the user for ParseError and LibraryNotFound exceptions"},{"commit":"0924d822a30c8806f65574c010561cd6f7c8e181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":1,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":9}]},"message":"add windows example"},{"commit":"72a37b928924c3edde3a4edb952f98c94aa05f0b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"5eef7bd769f8ffb03ba396833d1b33484041a99f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":16,"deletions":16,"files":["jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/xml.py","lines_changed":16},{"name":"jc/parsers/yaml.py","lines_changed":16}]},"message":"use LibraryNotInstalled exception instead of exiting via sys.exit"},{"commit":"c6893e1bd5283d982a7ecd6f84bdfdd0054ce7a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/exceptions.py"],"file_stats":[{"name":"jc/exceptions.py","lines_changed":4}]},"message":"add LibraryNotInstalled exception"},{"commit":"039f6612e491c6f821c001252e122e9b0a781104","merge":"9c57c09 95aec9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #139 from kellyjonbrazil/master\n\nsync branches"},{"commit":"95aec9c6f9aa8fb4d0dae227410a1346d550f47f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["templates/manpage_template"],"file_stats":[{"name":"templates/manpage_template","lines_changed":6}]},"message":"add info about Magic syntax not supporting shell builtins"},{"commit":"4e9652a8ec2482a64dc029b0ce0e1047a3e49867","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"spelling"},{"commit":"773b7f4b1f23e04c90e602aab05bc1a7e5aae37b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"templates/readme_template","lines_changed":1}]},"message":"add space before exit code table"},{"commit":"d17ffde9cdc35392ae25d8e9de5328e46067df2a","merge":"efb1d3e 9c57c09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #138 from kellyjonbrazil/dev\n\nDev v1.15.4"},{"commit":"9c57c09c00e64a9031391b9b70083ad6ecf0bc0b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update for release"},{"commit":"4d730a9de5a0d7c064a9a59e3add86e58d9ec492","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add UTC fix"},{"commit":"fc57bcfce24af23f077d6a73f1db4591d8f99c13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":3}]},"message":"fix for when UTC is referenced as \"Coordinated Universal Time\""},{"commit":"fa5571486c3c19bb7e836f043545ea4f2509ed4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":10,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":20}]},"message":"simplify json_out function"},{"commit":"9996c4fe23564dfb52e3c7dbdbd8bd67edfb1e95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":10,"deletions":10,"files":["EXAMPLES.md","docs/parsers/history.md","docs/parsers/jobs.md","jc/man/jc.1.gz","jc/parsers/history.py","jc/parsers/jobs.py","man/jc.1.gz"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":6},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":6},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update docs for shell builtins"},{"commit":"038d4290248e6bb94762bb51f69e9958f7c1fecb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":6,"files":["docs/parsers/dig.md","docs/parsers/dir.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":8},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc updates"},{"commit":"9bf6facb0d7d76583802309253e7d13ba5148997","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":6,"files":["jc/parsers/dir.py"],"file_stats":[{"name":"jc/parsers/dir.py","lines_changed":9}]},"message":"remove magic command capability since dir is a shell builtin"},{"commit":"965717886e4ebaa6a4a494f189d9fdd01e33eb21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add exceptions module info"},{"commit":"e9bfc3dd29f914fd91e937f06d7f59c0f91b8449","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"add time format, dig compatibility, windows colors fix"},{"commit":"f46b33eacf070b4dc72c8d8a66aae49abd149e5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2},{"name":"tests/test_utils.py","lines_changed":2}]},"message":"add windows time format"},{"commit":"f475fe44df2fb2661c5bce4d1e602a4bba7e87c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":3}]},"message":"add new time format for systeminfo"},{"commit":"5fdbe2962d84dad89de23f103d97b76b90450206","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":2}]},"message":"make dig compatible with all platforms"},{"commit":"ab291b9eef6ed5c8ab59b5652f676178941d5ce5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"only force enable colors when running on windows"},{"commit":"fd411fd77273cb7cf872c03ed6a258ccdee4d261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"attempt to get colors working on windows"},{"commit":"b1e95a60a2461dc401ffc299ef6338b65ef12691","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"remove unnecessary comment"},{"commit":"bb1439f0d53e87f636fba05fbd30c3c79fb16002","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":5}]},"message":"use ParseError exception from jc.exceptions module"},{"commit":"ba963d98a0a2b3a0dfca6b211096d802253da5fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/exceptions.py"],"file_stats":[{"name":"jc/exceptions.py","lines_changed":5}]},"message":"add exceptions module including ParseError"},{"commit":"83440ccb55d0db15b112b8b7d7352493ff516112","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"error message capitalization"},{"commit":"796f61bfa417afdc6ab48fddbb5502cd0659b840","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":13}]},"message":"handle case where the user pipes data and uses magic syntax simultaneously"},{"commit":"070cac4ae12282458a1e1fc8618ebc473d23cacf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"remove commented line"},{"commit":"3ed84f9f42e4e883ddaac28ab49d675600b49424","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":18}]},"message":"reorganize main function. remove pass condition."},{"commit":"a205afb6f355edbb4b98200a980b9601ed0f0658","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"set run_command_str if run_command is set"},{"commit":"a6d983dd8f3871cbc2391c313340167829a575d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"move run_command_str variable"},{"commit":"b6c8d6d01d740827273265dbb0cfbaf7875ac7f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":45,"deletions":17,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":62}]},"message":"add exception handling for filenotfound or other subprocess.popen and json.dumps exceptions"},{"commit":"b5a5d5b133f1c0df8023776e59697b7579f8c18a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"set parser_name for magic syntax use"},{"commit":"da528e7814b0cf25a359c3556d0e286e7bf004b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"move separators to a variable"},{"commit":"4acebf4f621ac564f82e3a97e6810fbb08a9dbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"move variables"},{"commit":"4d40808d2b70b7543eadcfd2d35c16ebe91f2f9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":7}]},"message":"update comments"},{"commit":"c543f00bd3c737f73144bb2980d12793042459b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"simplify piped_output function"},{"commit":"947cf41dfab5811c0e76e371231c59a2d6372752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add exit code info"},{"commit":"8d8c58742e5106c3387a627cd1b1323a76cc9623","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":21,"deletions":15,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":13},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/manpage_template","lines_changed":10},{"name":"templates/readme_template","lines_changed":13}]},"message":"formatting"},{"commit":"995ecc9bfb0425b0ee9e4250395b0200b46c1e89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":15,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/manpage_template","lines_changed":15}]},"message":"add exit codes section"},{"commit":"21a15225ebff645439b12d6249dc3e28d7bc09ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":18,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":9},{"name":"templates/readme_template","lines_changed":9}]},"message":"add exit codes section"},{"commit":"48921d4584068fadb0f776ed7e81c21d89172e2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"ensure exit code never exceeds 255"},{"commit":"342db45edc94ab1c3b3ae70e7cf4ca4076e2c7eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":10,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":28}]},"message":"fix combined exit codes"},{"commit":"5f88ecf8443bc6e9a7cda5bc60858f37cc09f4f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]},"message":"add comments to magic_parser return"},{"commit":"a56aebfe7024914d2c602278964b99d1443de335","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"remove side-effect comment since it is no longer relevant"},{"commit":"422bb744a82472546d62c72ba05eaa1d18d5068a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update man pages"},{"commit":"c3b814a15f571ac84a8ce0719d7fd88acf814caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":7}]},"message":"move imports to the top"},{"commit":"e4574047a0ef6fcd4a47142421a1d05795c7925a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":21,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":42}]},"message":"update tests for magic_parser function"},{"commit":"0d7d7951f82627d1fb1e20d1398bd7f88c5ce1be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":12}]},"message":"don't reset sys.argv anymore. check for 'valid_command' instead"},{"commit":"da904e4770a20ae85fc67476ae4a529564d0a3ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"remove final \\n from stderr string when printing"},{"commit":"19b540041add64fe6650c3634ec869421ffbc769","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":82,"deletions":51,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":133}]},"message":"proof of concept for passing command exit codes when using magic syntax. Needs more testing"},{"commit":"f2ffb93eeaf4c8b5aa93f3e8808bdc044582e8a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":10,"files":["tests/test_ping.py"],"file_stats":[{"name":"tests/test_ping.py","lines_changed":10}]},"message":"formatting"},{"commit":"c0c0e05642e0f473cde34178d815978fff8fe1ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add dig `+noall +answer` support"},{"commit":"966978f17e40a338f982628825f30a19d4b84e4c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":72,"deletions":0,"files":[".../centos-7.7/ping6-ip-O-p-unparsable.json",".../centos-7.7/ping6-ip-O-p-unparsable.out",".../fixtures/osx-10.14.6/ping6-ip-unparsable.json","tests/fixtures/osx-10.14.6/ping6-ip-unparsable.out","tests/test_ping.py"],"file_stats":[{"name":".../centos-7.7/ping6-ip-O-p-unparsable.json","lines_changed":1},{"name":".../centos-7.7/ping6-ip-O-p-unparsable.out","lines_changed":27},{"name":".../fixtures/osx-10.14.6/ping6-ip-unparsable.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-unparsable.out","lines_changed":9},{"name":"tests/test_ping.py","lines_changed":34}]},"message":"add more unparsable line ping tests"},{"commit":"8ab08a5231e082940a62fcde4be218b7ba94be31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":4}]},"message":"doc update"},{"commit":"48e534fa03b92b2583c5c6269c76651f3aa420cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":17,"deletions":2,"files":["tests/fixtures/osx-10.14.6/dig-noall-answer.json","tests/fixtures/osx-10.14.6/dig-noall-answer.out","tests/test_dig.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/dig-noall-answer.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig-noall-answer.out","lines_changed":4},{"name":"tests/test_dig.py","lines_changed":14}]},"message":"add +noall +answer test"},{"commit":"61851c1bd02aa82d5d82e68595e45630ead13d34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":85,"deletions":3,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":40},{"name":"jc/parsers/dig.py","lines_changed":48}]},"message":"add support for +noall +answer"},{"commit":"3c51b2d83d301b4072bbb12fdba4f60b900573da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":40,"deletions":0,"files":[".../centos-7.7/ping-ip-O-unparsedlines.json",".../centos-7.7/ping-ip-O-unparsedlines.out","tests/test_ping.py"],"file_stats":[{"name":".../centos-7.7/ping-ip-O-unparsedlines.json","lines_changed":1},{"name":".../centos-7.7/ping-ip-O-unparsedlines.out","lines_changed":27},{"name":"tests/test_ping.py","lines_changed":12}]},"message":"add tests for unparsable lines on linux"},{"commit":"ee3a28528e152c61f05bdf71f264fe38274b4190","merge":"fe1f101 916bcda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev\n\n# Conflicts:\n# templates/readme_template"},{"commit":"916bcdae3881fc9c9f9a91c8c901a714cff3e1da","merge":"fb14f54 efb1d3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #136 from kellyjonbrazil/master\n\nmerge changes from master"},{"commit":"efb1d3e6b2db920423511a9dcf4c5e5fd9d6af43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"templates/readme_template","lines_changed":4}]},"message":"add blog title and minor formatting"},{"commit":"4e6ae66bacc014e49c4a9229d10dcc8e95de436c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting"},{"commit":"5ee88e7b679bc163a1916d560be6ff29f51699e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":10}]},"message":"add use cases section"},{"commit":"c3b68903cbd898f80438af342195eec7575aafd3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":10}]},"message":"add use cases section"},{"commit":"fe1f1013a74bdf6b4284f11dd59db8ea17e5e5d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":10}]},"message":"add use cases section"},{"commit":"fb14f5439f00d5eaf08651c552189fd4be7358d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":52,"deletions":3,"files":["jc/parsers/ping.py",".../osx-10.14.6/ping-ip-unknown-errors.json",".../osx-10.14.6/ping-ip-unknown-errors.out","tests/test_ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":7},{"name":".../osx-10.14.6/ping-ip-unknown-errors.json","lines_changed":1},{"name":".../osx-10.14.6/ping-ip-unknown-errors.out","lines_changed":35},{"name":"tests/test_ping.py","lines_changed":12}]},"message":"fix and tests for unknown or unparsable errors"},{"commit":"5ca0fc364eb22d583bee5633cdd7183c1d70bb6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/parsers/ping.md"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":1}]},"message":"add unparsed_line to docs"},{"commit":"a1fe7037e5267ec4aced719eff3715085eb35bca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":10}]},"message":"add unparsed_line field if line cannot be parsed"},{"commit":"c2af7d113ed8e8cf9af985c969cf29858a3c26a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["CHANGELOG","docs/parsers/ping.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"docs/parsers/ping.md","lines_changed":2}]},"message":"add ping updates"},{"commit":"ff034e401d5c33efbc3c4bc2f0e386d81eaae7fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":59,"deletions":43,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":102}]},"message":"use try/except to make parser more resilient against unknown error types"},{"commit":"5abe095beb4b668e5f55fe8c9588677547e4c2a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":3,"files":["docs/parsers/ping.md"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":17}]},"message":"update ping docs"},{"commit":"33de5f01e638953c83bb0960dc3550ca4547849b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["jc/__init__.py","setup.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":4},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"8ce155d843806be4ad23491b4401e4eda02e2a1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":86,"deletions":23,"files":["CHANGELOG","jc/parsers/ping.py",".../fixtures/osx-10.14.6/ping-ip-unreachable.json","tests/fixtures/osx-10.14.6/ping-ip-unreachable.out","tests/test_ping.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/ping.py","lines_changed":56},{"name":".../fixtures/osx-10.14.6/ping-ip-unreachable.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-unreachable.out","lines_changed":35},{"name":"tests/test_ping.py","lines_changed":14}]},"message":"add support for error replies in v4 ping on osx and bsd"},{"commit":"b921d5ec9583c8f8e992613ae2eaf62165722054","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":105,"deletions":6,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":111}]},"message":"initial support for error replies in bsd/osx"},{"commit":"e21542aaa2aa5f2f287ddc227df41ae47d761332","merge":"d24f9a8 6150aae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #135 from kellyjonbrazil/dev\n\nDev clarify packaged binaries in readme"},{"commit":"6150aae0aeabafba26d9f119406b0660d9221cb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"clarify packaged binaries"},{"commit":"f27b35f37104ad2012c3bddde0bd94941af06894","merge":"bd428a9 d24f9a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #131 from kellyjonbrazil/master\n\nsync branches"},{"commit":"d24f9a885d3954035a98a488671486408f509dca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["CONTRIBUTING.md","README.md","templates/readme_template"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2},{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"fix contributing link"},{"commit":"48dd82c8d1b756c4e08d49b8234b8060080dc035","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"trigger page build on github pages"},{"commit":"e57167ad1f240de6ec5fc86c51cfb780535cd783","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","message":"empty commit"},{"commit":"ada91376426ff359c495fb31081404a2cce72b5f","merge":"0c209db bd428a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #130 from kellyjonbrazil/dev\n\nDev link updates"},{"commit":"bd428a9fd75327710dce96f3c95f74ab9d1beaad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"fix link"},{"commit":"934941332f91d9e2cc4e691b154bb5427166ed30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"templates/readme_template","lines_changed":6}]},"message":"minor link updates"},{"commit":"0c209dbd108638f89a43801126a332379be9ae8b","merge":"92e2252 56e041a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #129 from kellyjonbrazil/dev\n\nDev update readme"},{"commit":"56e041aa260b2daf2f5662fae98645a93137adb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add Practical JSON at the Command Line blog link"},{"commit":"cf9d48582e4e5df6c8498b916a2f9cf036869f3d","merge":"35464bb 92e2252","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #128 from kellyjonbrazil/master\n\nsync branches"},{"commit":"92e2252bee00482bb0eeae3074b107d4c8553e4c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"fix typo"},{"commit":"fd7861db11e5aaa17c4e7bbce942c0c096116e30","merge":"fcc7e52 35464bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #127 from kellyjonbrazil/dev\n\nDev v1.15.3"},{"commit":"35464bbbfb6b424ef3ee1c855557ada1bf3769fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"date update"},{"commit":"db8ddd7f0e0c2a8bd3e545619e81d3d3972a4d7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":11,"deletions":17,"files":["jc/man/jc.1.gz","jc/parsers/ufw.py","man/jc.1.gz","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/ufw.py","lines_changed":24},{"name":"man/jc.1.gz","lines_changed":null},{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.json","lines_changed":2}]},"message":"fix for scenarios where the default port range didn't always display, or overrode existing port ranges."},{"commit":"72207c54ee5734e3d2d3d1a063c8daf1edaa8815","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":102,"deletions":94,"files":["docs/parsers/ufw_appinfo.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/ufw_appinfo.md","lines_changed":196},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update ufw app info docs to support multiple apps (ufw app info all)"},{"commit":"a683f68003ea64dd5e2c4f06b53a1561ad774f12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":285,"deletions":202,"files":["EXAMPLES.md","jc/parsers/ufw_appinfo.py","tests/fixtures/generic/ufw-appinfo-msn.json","tests/fixtures/generic/ufw-appinfo-test.json","tests/fixtures/generic/ufw-appinfo-test2.json","tests/fixtures/generic/ufw-appinfo-test3.json","tests/fixtures/ubuntu-18.04/ufw-appinfo-all.json","tests/fixtures/ubuntu-18.04/ufw-appinfo-all.out","tests/test_ufw_appinfo.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":68},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":345},{"name":"tests/fixtures/generic/ufw-appinfo-msn.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw-appinfo-test.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw-appinfo-test2.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw-appinfo-test3.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-appinfo-all.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ufw-appinfo-all.out","lines_changed":51},{"name":"tests/test_ufw_appinfo.py","lines_changed":14}]},"message":"change schema to a list of dictionaries to support `ufw app info all` use case"},{"commit":"8d2d3db3fa969456342181a226bf54a3f1613542","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":0,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting"},{"commit":"eca785450d1c72687817d09259fa7cd33376fafc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":34,"deletions":13,"files":["CHANGELOG","README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":22},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/readme_template","lines_changed":22}]},"message":"add caveats to readme and manpage"},{"commit":"5b40a97ce417687b4e37f320b8a3f07dd7fd169c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":13,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/manpage_template","lines_changed":13}]},"message":"add caveats to man page"},{"commit":"66cb4e9bde81b9290c1addaf851de5d80a1b0702","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":216,"deletions":234,"files":["EXAMPLES.md","docs/parsers/ufw.md","jc/man/jc.1.gz","jc/parsers/ufw.py","man/jc.1.gz"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":96},{"name":"docs/parsers/ufw.md","lines_changed":226},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/ufw.py","lines_changed":128},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update ufw parser docs"},{"commit":"d1f33645caccdb3a55576081c4d355f997ac033c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":26,"deletions":10,"files":["tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw-numbered2.json","tests/fixtures/generic/ufw.json","tests/fixtures/ubuntu-18.04/ufw-numbered.json","tests/fixtures/ubuntu-18.04/ufw-numbered.out","tests/fixtures/ubuntu-18.04/ufw-verbose.json","tests/fixtures/ubuntu-18.04/ufw-verbose.out"],"file_stats":[{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw-numbered2.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-numbered.out","lines_changed":16},{"name":"tests/fixtures/ubuntu-18.04/ufw-verbose.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-verbose.out","lines_changed":10}]},"message":"update ufw tests"},{"commit":"5eff65c326675a449afd05a2af0a6c9bcf7b5e23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":85,"deletions":268,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":353}]},"message":"update schema to support port lists and port range lists. Also support other transports than tcp and udp"},{"commit":"929c38715d87bf9dd689507d319c22b90871ae1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"formatting"},{"commit":"8c91a7b7601a967cd9d8096433ffd4ad62b65ceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":4}]},"message":"formatting"},{"commit":"14289ecd6c022ad204444dff5b5e48f6024a5d0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":4}]},"message":"more timezone info"},{"commit":"b833c44783eb32f2fad24ca205b5b7eab854750f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add ufw-appinfo parser"},{"commit":"e23aa818eaa6d1a389ddef7dd2ad8f62b9f6ff25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":5}]},"message":"add tests section and timezone info"},{"commit":"473d919c1350a8dc34d233033a5a7d12c928e42d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":32,"deletions":0,"files":["runtests.sh","tests/fixtures/generic/ufw-numbered2.json","tests/fixtures/generic/ufw-numbered2.out","tests/test_ufw.py"],"file_stats":[{"name":"runtests.sh","lines_changed":1},{"name":"tests/fixtures/generic/ufw-numbered2.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-numbered2.out","lines_changed":18},{"name":"tests/test_ufw.py","lines_changed":12}]},"message":"add another ufw test sample"},{"commit":"9f925d6ac989a4f21a8c00c84fcf97dfb141e8c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update"},{"commit":"f6ca32b3a31f314fa0b31d9e8b5494491b928f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/ufw.md","jc/parsers/ufw.py"],"file_stats":[{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"jc/parsers/ufw.py","lines_changed":2}]},"message":"update ufw docs with a note on lists of ports"},{"commit":"4cbe84c3d6ac8a3b594feb525460f2a68f5d62b2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":110,"deletions":0,"files":["tests/fixtures/generic/ufw-appinfo-msn.json","tests/fixtures/generic/ufw-appinfo-msn.out","tests/fixtures/generic/ufw-appinfo-test.json","tests/fixtures/generic/ufw-appinfo-test.out","tests/fixtures/generic/ufw-appinfo-test2.json","tests/fixtures/generic/ufw-appinfo-test2.out","tests/fixtures/generic/ufw-appinfo-test3.json","tests/fixtures/generic/ufw-appinfo-test3.out","tests/test_ufw_appinfo.py"],"file_stats":[{"name":"tests/fixtures/generic/ufw-appinfo-msn.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-appinfo-msn.out","lines_changed":9},{"name":"tests/fixtures/generic/ufw-appinfo-test.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-appinfo-test.out","lines_changed":9},{"name":"tests/fixtures/generic/ufw-appinfo-test2.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-appinfo-test2.out","lines_changed":9},{"name":"tests/fixtures/generic/ufw-appinfo-test3.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-appinfo-test3.out","lines_changed":9},{"name":"tests/test_ufw_appinfo.py","lines_changed":70}]},"message":"add ufw-appinfo tests"},{"commit":"ffac5bf9d381305daa86e546f8570be092e5ff34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":12,"deletions":12,"files":["docs/parsers/ufw.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/ufw.md","lines_changed":24},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update"},{"commit":"9aa424f9f8c7e4e0dc29e2c58dac481098beba7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":12}]},"message":"fix ufw example"},{"commit":"0a8495c68e427e39bbda957dd933fa2a461092e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":15,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":27}]},"message":"update docs"},{"commit":"6aea066cf024f92adf4b94eebc7d51430c22332c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/parsers/ufw_appinfo.py","lines_changed":6}]},"message":"make normalized list appear only when data exists. set magic commands"},{"commit":"ff3c2d809ec3ea6e556c302909a228ee670578c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":176,"deletions":25,"files":["EXAMPLES.md","README.md","docs/parsers/ufw_appinfo.md","jc/man/jc.1.gz","jc/parsers/ufw_appinfo.py","man/jc.1.gz"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":39},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":58},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":103},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add ufw-appinfo to docs"},{"commit":"145059fc8946b7026184139baea143c2869bc4e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":8,"files":["jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/parsers/ufw_appinfo.py","lines_changed":28}]},"message":"clean up output if sections are blank"},{"commit":"20e5c19de448c1b979497817c887d8d2d6487839","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/parsers/ufw_appinfo.py","lines_changed":3}]},"message":"fix key error if tcp or udp don't exist"},{"commit":"4c98fd4b877c54e1cf7d285a29e178321be12f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":101,"deletions":1,"files":["docs/parsers/ufw_appinfo.md","jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"docs/parsers/ufw_appinfo.md","lines_changed":100},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":2}]},"message":"doc update"},{"commit":"125e54213e8d4dcfe2e3271456af80b3f79c0544","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":105,"deletions":48,"files":["jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/parsers/ufw_appinfo.py","lines_changed":153}]},"message":"update schema and add normalized fields"},{"commit":"0152e0665f87833250561d743144af35416992f8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":215,"deletions":0,"files":["jc/cli.py","jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":214}]},"message":"initial working ufw-appinfo parser"},{"commit":"0679bcbc560ea3575555d8546afdd4e2474d05d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":31,"deletions":5,"files":["tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json","tests/fixtures/ubuntu-18.04/ufw-numbered.json","tests/fixtures/ubuntu-18.04/ufw-verbose.json","tests/test_ufw.py"],"file_stats":[{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-numbered.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ufw-verbose.json","lines_changed":1},{"name":"tests/test_ufw.py","lines_changed":30}]},"message":"fix ufw tests"},{"commit":"5500648aa0886ea5089856e5b33d7c8ebd78d5b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":46,"deletions":46,"files":["EXAMPLES.md","docs/parsers/ufw.md","jc/parsers/ufw.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":20},{"name":"docs/parsers/ufw.md","lines_changed":36},{"name":"jc/parsers/ufw.py","lines_changed":36}]},"message":"fix ufw docs for int conversions and service behavior"},{"commit":"bb50caad4dfaefa309e747fd05b650186c5a80f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":31,"deletions":4,"files":["jc/parsers/ufw.py","tests/fixtures/ubuntu-18.04/ufw-numbered.out","tests/fixtures/ubuntu-18.04/ufw-verbose.out"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":10},{"name":"tests/fixtures/ubuntu-18.04/ufw-numbered.out","lines_changed":11},{"name":"tests/fixtures/ubuntu-18.04/ufw-verbose.out","lines_changed":14}]},"message":"fix prefix int conversions. don't reset _transport if service is really a list of ports"},{"commit":"7eef5d94d591a3f70f6638b1b30f952a3bf35f9d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":0,"files":["EXAMPLES.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":5},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"ufw doc update"},{"commit":"74f623f8d607c050db8f62ea4996c4e6aae43268","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":43,"deletions":11,"files":["docs/parsers/ufw.md","jc/parsers/ufw.py","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json","tests/fixtures/generic/ufw.out"],"file_stats":[{"name":"docs/parsers/ufw.md","lines_changed":13},{"name":"jc/parsers/ufw.py","lines_changed":25},{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.out","lines_changed":12}]},"message":"add support for rule comments and LIMIT and REJECT actions"},{"commit":"f638aca092475bbae14fed765e90435c093fcb8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add deb package name fix"},{"commit":"da35eaf80ad4f11e7482fc4734db4b2265e50548","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["docs/parsers/ufw.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"formatting"},{"commit":"ade0e8e8fc18ff9a0dd406206a85238f1f5a739d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":107,"deletions":0,"files":["tests/fixtures/generic/ufw-inactive.json","tests/fixtures/generic/ufw-inactive.out","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw-numbered.out","tests/fixtures/generic/ufw.json","tests/fixtures/generic/ufw.out","tests/test_ufw.py"],"file_stats":[{"name":"tests/fixtures/generic/ufw-inactive.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-inactive.out","lines_changed":1},{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-numbered.out","lines_changed":23},{"name":"tests/fixtures/generic/ufw.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw.out","lines_changed":22},{"name":"tests/test_ufw.py","lines_changed":58}]},"message":"add ufw tests"},{"commit":"90076090f05a1f03e2fbff307418ee18d7d046ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":5,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":12}]},"message":"fix int conversions if 'rules' key does not exist"},{"commit":"23635def8b654097178f73ed1b57fc50965142d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":306,"deletions":4,"files":["README.md","docs/parsers/ping.md","docs/parsers/ufw.md","docs/utils.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"docs/parsers/ping.md","lines_changed":1},{"name":"docs/parsers/ufw.md","lines_changed":302},{"name":"docs/utils.md","lines_changed":4},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add ufw to docs"},{"commit":"4eeec087bde98f90ab8425473d1fbeee6834852e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":115,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":115}]},"message":"add ufw example"},{"commit":"733196103897a1d84d242324ddcf96e783320329","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":4}]},"message":"update docs with new examples that have `to_service` always existing."},{"commit":"e4acb3d5b70a7d75741ef3e35cd6750d1362a80f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":4}]},"message":"always make to/from_service None if ports are assigned"},{"commit":"c60549a9947d5684bbfa58223bfbcfc40a3ed479","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":29,"deletions":29,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":58}]},"message":"change field name from to/from_subnet to to/from_ip_prefix"},{"commit":"d46fc8bbfa15a80a1af6c64f70230f858c215223","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":9}]},"message":"set to/from_transport to None if to/from_service is set"},{"commit":"b133d1f90d49362594508d8c475663754f0e7675","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":6}]},"message":"strip interface value"},{"commit":"5be615a97e7c145c8351764234ac591028560c34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":219,"deletions":9,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":228}]},"message":"add examples for docs"},{"commit":"ea1d820f96321ddf4084b54ee2fdf397295beb21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":11}]},"message":"convert integer fields"},{"commit":"47e262cf7200b02ff0af97a70ffa6bec286c8f39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":59,"deletions":14,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":73}]},"message":"clean up fields"},{"commit":"eec673be9092e382694aa02682564510ce4e7f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":88,"deletions":3,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":91}]},"message":"working raw parser"},{"commit":"9a0fb2a7c87e6fde0cc0d84fa8a1f131e28ea732","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":157,"deletions":0,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":157}]},"message":"parse major sections"},{"commit":"b5145d6c14d7a51e7cfdebe126c9689dc90f7b27","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":8,"deletions":4,"files":["CHANGELOG","jc/__init__.py","jc/cli.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":6},{"name":"jc/cli.py","lines_changed":1},{"name":"setup.py","lines_changed":2}]},"message":"version bump to v1.15.3"},{"commit":"9747ca414dfb8218389c7b2199a080edabc2a184","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":11}]},"message":"minor optimization to convert_to_int(). No longer runs through convert_to_float(), but uses standard float() function."},{"commit":"312d465b61a15592cc70d3734ad747b9a2be10ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":2}]},"message":"update link"},{"commit":"7dcf87d24ad40eba6ba98de2b4b2bf177a76cd71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":1}]},"message":"formatting"},{"commit":"cf3cfd16a9de05f30303b5952fbe609cde842d2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":6}]},"message":"rename tests"},{"commit":"fcc7e5294973d1a18943fa2ce2e836b0fe757d95","merge":"6c83846 3ab9d48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #123 from kellyjonbrazil/dev\n\nDev v1.15.2"},{"commit":"3ab9d480149a692510ab9e0ac8e745b674683e3d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"update changelog"},{"commit":"7eddf41c5f6310264359cd6d78bdfa4b65af7d06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":96,"deletions":9,"files":["jc/man/jc.1.gz","jc/utils.py","man/jc.1.gz","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/df.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/free-h.json","tests/test_utils.py"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/utils.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null},{"name":"tests/fixtures/centos-7.7/df-h.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/df.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/free-h.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/df-h.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/df-h.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/free-h.json","lines_changed":2},{"name":"tests/test_utils.py","lines_changed":89}]},"message":"dont round up int conversions and fix tests"},{"commit":"27a196c93862bd737603cfe402b35529eb412954","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update"},{"commit":"e4324f05fb6f89c34fa1567e70d8636457623edb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":14,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":14},{"name":"jc/parsers/dig.py","lines_changed":14}]},"message":"fix indentation in doc"},{"commit":"d36b332bd78b5bf5979cdc59b31da08d8e4104d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":53,"insertions":196,"deletions":274,"files":["docs/parsers/systemctl_lj.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/wc.md","docs/parsers/who.md","docs/utils.md","jc/parsers/acpi.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/hash.py","jc/parsers/hciconfig.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl_lj.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/utils.py"],"file_stats":[{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":2},{"name":"jc/parsers/acpi.py","lines_changed":21},{"name":"jc/parsers/airport_s.py","lines_changed":9},{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/blkid.py","lines_changed":4},{"name":"jc/parsers/cksum.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":4},{"name":"jc/parsers/dir.py","lines_changed":4},{"name":"jc/parsers/dmidecode.py","lines_changed":4},{"name":"jc/parsers/du.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":4},{"name":"jc/parsers/fstab.py","lines_changed":4},{"name":"jc/parsers/group.py","lines_changed":4},{"name":"jc/parsers/hash.py","lines_changed":4},{"name":"jc/parsers/hciconfig.py","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":4},{"name":"jc/parsers/iptables.py","lines_changed":4},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4},{"name":"jc/parsers/lsblk.py","lines_changed":13},{"name":"jc/parsers/lsmod.py","lines_changed":4},{"name":"jc/parsers/lsof.py","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":16},{"name":"jc/parsers/ntpq.py","lines_changed":10},{"name":"jc/parsers/passwd.py","lines_changed":4},{"name":"jc/parsers/ps.py","lines_changed":13},{"name":"jc/parsers/route.py","lines_changed":4},{"name":"jc/parsers/rpm_qi.py","lines_changed":4},{"name":"jc/parsers/shadow.py","lines_changed":4},{"name":"jc/parsers/ss.py","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"jc/parsers/systemctl_lj.py","lines_changed":13},{"name":"jc/parsers/systeminfo.py","lines_changed":6},{"name":"jc/parsers/time.py","lines_changed":32},{"name":"jc/parsers/timedatectl.py","lines_changed":8},{"name":"jc/parsers/tracepath.py","lines_changed":42},{"name":"jc/parsers/traceroute.py","lines_changed":40},{"name":"jc/parsers/upower.py","lines_changed":24},{"name":"jc/parsers/uptime.py","lines_changed":39},{"name":"jc/parsers/w.py","lines_changed":4},{"name":"jc/parsers/wc.py","lines_changed":12},{"name":"jc/parsers/who.py","lines_changed":12},{"name":"jc/utils.py","lines_changed":36}]},"message":"use jc.utils for conversions"},{"commit":"1f034826f69c461495f7a302cc8fe35e3052e72f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":42,"insertions":94,"deletions":185,"files":["docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","tests/fixtures/centos-7.7/ls-alh.json","tests/fixtures/centos-7.7/lsof-sudo.json","tests/fixtures/centos-7.7/lsof.json","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/ubuntu-18.04/ls-alh.json","tests/fixtures/ubuntu-18.04/lsof-sudo.json","tests/fixtures/ubuntu-18.04/lsof.json"],"file_stats":[{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":3},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":10},{"name":"jc/parsers/jobs.py","lines_changed":8},{"name":"jc/parsers/last.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":9},{"name":"jc/parsers/lsblk.py","lines_changed":14},{"name":"jc/parsers/lsmod.py","lines_changed":9},{"name":"jc/parsers/lsof.py","lines_changed":10},{"name":"jc/parsers/netstat.py","lines_changed":37},{"name":"jc/parsers/ntpq.py","lines_changed":12},{"name":"jc/parsers/passwd.py","lines_changed":8},{"name":"jc/parsers/ping.py","lines_changed":34},{"name":"jc/parsers/ps.py","lines_changed":15},{"name":"jc/parsers/route.py","lines_changed":8},{"name":"jc/parsers/rpm_qi.py","lines_changed":9},{"name":"jc/parsers/shadow.py","lines_changed":8},{"name":"jc/parsers/ss.py","lines_changed":22},{"name":"jc/parsers/stat.py","lines_changed":11},{"name":"tests/fixtures/centos-7.7/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/lsof-sudo.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/lsof.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/lsof-sudo.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/lsof.json","lines_changed":2}]},"message":"use jc.utils for conversions"},{"commit":"246c707c98d3128b4e38f5c4b23a1e0ceedc0b0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":46,"insertions":190,"deletions":196,"files":["CHANGELOG","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/df.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/hash.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/utils.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/hash.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/utils.py","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/osx-10.11.6/df-h.json","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/free-h.json"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":48},{"name":"jc/parsers/acpi.py","lines_changed":22},{"name":"jc/parsers/airport.py","lines_changed":7},{"name":"jc/parsers/airport_s.py","lines_changed":12},{"name":"jc/parsers/arp.py","lines_changed":5},{"name":"jc/parsers/blkid.py","lines_changed":7},{"name":"jc/parsers/cksum.py","lines_changed":8},{"name":"jc/parsers/df.py","lines_changed":14},{"name":"jc/parsers/dig.py","lines_changed":50},{"name":"jc/parsers/dir.py","lines_changed":11},{"name":"jc/parsers/dmidecode.py","lines_changed":8},{"name":"jc/parsers/du.py","lines_changed":8},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":8},{"name":"jc/parsers/fstab.py","lines_changed":8},{"name":"jc/parsers/group.py","lines_changed":8},{"name":"jc/parsers/hash.py","lines_changed":9},{"name":"jc/parsers/hciconfig.py","lines_changed":8},{"name":"jc/parsers/history.py","lines_changed":6},{"name":"jc/parsers/id.py","lines_changed":17},{"name":"jc/parsers/ifconfig.py","lines_changed":11},{"name":"jc/utils.py","lines_changed":62},{"name":"tests/fixtures/centos-7.7/df-h.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/free-h.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/df-h.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/df-h.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/df-h.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/free-h.json","lines_changed":2}]},"message":"use jc.utils conversions"},{"commit":"b5d8968144e76090870f8563dc1bce910fba668c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":19}]},"message":"add convert_to_int function"},{"commit":"f7b9fbefdde6973077573fec02342eb9946789c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add query_size info for dig"},{"commit":"b1fc4533833ca25f59869bfec8ac114bf49c7847","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2}]},"message":"fix _IfconfigParser name"},{"commit":"7581c8d0f4262fc6a05240bb21ffe533b153f6e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":45,"deletions":32,"files":["docs/parsers/dig.md","jc/parsers/dig.py","tests/fixtures/generic/dig-edns3.json"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":74},{"name":"tests/fixtures/generic/dig-edns3.json","lines_changed":2}]},"message":"add query_size field. handle user-specified dig output better - especially when querying dnssec"},{"commit":"32bf8ad6f4fff83fdfd83d66c1ba8f1af5a65a90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":52,"deletions":24,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"EXAMPLES.md","lines_changed":10},{"name":"docs/parsers/dig.md","lines_changed":32},{"name":"jc/parsers/dig.py","lines_changed":32}]},"message":"update dig docs"},{"commit":"b083bcc10fa1105fc09ce8d2c3297aa5575c9d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update man page"},{"commit":"4f6fdd120d23468270c1d7111e4ef71b87759a1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":134,"deletions":100,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":117},{"name":"jc/__init__.py","lines_changed":117}]},"message":"use dig as example"},{"commit":"eb0038be2490053d32803d30e1c3d4d34509d130","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":40,"deletions":19,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":59}]},"message":"update dig examples"},{"commit":"7ecdf819fa37c38ae6159ad8e7bc973ee4f34559","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":84,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":42},{"name":"templates/readme_template","lines_changed":42}]},"message":"remove dig example from readme,"},{"commit":"c6aa4d083550d25bcb621cad524047cfd6a08217","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":252,"deletions":317,"files":["README.md","docs/parsers/dig.md","jc/man/jc.1.gz","jc/parsers/dig.py","man/jc.1.gz","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":84},{"name":"docs/parsers/dig.md","lines_changed":313},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/dig.py","lines_changed":88},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/readme_template","lines_changed":84}]},"message":"update docs with new dig parser examples"},{"commit":"7c584b89a6e6b924d53d50103b97f0c2405c33b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":15,"insertions":352,"deletions":52,"files":["jc/parsers/dig.py","tests/fixtures/generic/dig-additional.json","tests/fixtures/generic/dig-additional.out","tests/fixtures/generic/dig-additional2.json","tests/fixtures/generic/dig-additional2.out","tests/fixtures/generic/dig-additional3.json","tests/fixtures/generic/dig-additional3.out","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/generic/dig-edns.json","tests/fixtures/generic/dig-edns.out","tests/fixtures/generic/dig-edns2.json","tests/fixtures/generic/dig-edns2.out","tests/fixtures/generic/dig-edns3.json","tests/fixtures/generic/dig-edns3.out","tests/test_dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":123},{"name":"tests/fixtures/generic/dig-additional.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-additional.out","lines_changed":32},{"name":"tests/fixtures/generic/dig-additional2.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-additional2.out","lines_changed":34},{"name":"tests/fixtures/generic/dig-additional3.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-additional3.out","lines_changed":41},{"name":"tests/fixtures/generic/dig-answer-spaces.json","lines_changed":2},{"name":"tests/fixtures/generic/dig-edns.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-edns.out","lines_changed":20},{"name":"tests/fixtures/generic/dig-edns2.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-edns2.out","lines_changed":38},{"name":"tests/fixtures/generic/dig-edns3.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-edns3.out","lines_changed":34},{"name":"tests/test_dig.py","lines_changed":74}]},"message":"add additional section"},{"commit":"c166c0bfdafa922f57f021fa4d16e467fca02d58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":14,"insertions":55,"deletions":21,"files":["jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":50},{"name":"tests/fixtures/centos-7.7/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig-x.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig.json","lines_changed":2},{"name":"tests/fixtures/generic/dig-answer-spaces.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-x.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig.json","lines_changed":2}]},"message":"add opt_pseudosection section to output and fix existing tests"},{"commit":"a8dd3f7802bfe8fd3ffbedf89af45ddc580ee78d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":54,"deletions":281,"files":["CHANGELOG","jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-axfr.json"],"file_stats":[{"name":"CHANGELOG","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":325},{"name":"tests/fixtures/centos-7.7/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-axfr.json","lines_changed":2}]},"message":"working dig axfr fixes"},{"commit":"3b0e2f03f3b11398ff57b1daed542faaf0b80a62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":24,"deletions":23,"files":["jc/cli.py","templates/manpage_template"],"file_stats":[{"name":"jc/cli.py","lines_changed":21},{"name":"templates/manpage_template","lines_changed":26}]},"message":"clean up examples"},{"commit":"8390ae48c88ab1c7d5acbf40c0e60606953817bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":8,"deletions":8,"files":["jc/parsers/dig.py","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":4},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig.json","lines_changed":2}]},"message":"fix server entry when IPv6 address is in value (maxsplit on colons)"},{"commit":"2db82c0a7e19d596c876ede8a8ff106aaa733ee5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":66,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":66}]},"message":"add systeminfo example"},{"commit":"61479540756704f10853233300ceae8f954a8a95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":0,"files":["tests/test_systeminfo.py","tests/test_utils.py"],"file_stats":[{"name":"tests/test_systeminfo.py","lines_changed":1},{"name":"tests/test_utils.py","lines_changed":4}]},"message":"update tests"},{"commit":"691df271fcfe057ae4b75ad40869e23deb37b886","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":1,"files":["docs/parsers/systeminfo.md","jc/man/jc.1.gz","jc/parsers/systeminfo.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/systeminfo.py","lines_changed":1},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add info docstring"},{"commit":"89f52b95f7055da9d7b5fa8dce0923d4c3435bd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":467,"deletions":821,"files":["README.md","docs/parsers/systeminfo.md","jc/man/jc.1.gz","jc/parsers/systeminfo.py","jc/utils.py","man/jc.1.gz",".../windows/windows-10/systeminfo-hyperv-utc.json",".../windows/windows-10/systeminfo-hyperv-utc.out",".../windows/windows-10/systeminfo-hyperv.json","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-10/systeminfo.out",".../windows/windows-2012r2/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/systeminfo.md","lines_changed":290},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/systeminfo.py","lines_changed":361},{"name":"jc/utils.py","lines_changed":5},{"name":"man/jc.1.gz","lines_changed":null},{"name":".../windows/windows-10/systeminfo-hyperv-utc.json","lines_changed":1},{"name":".../windows/windows-10/systeminfo-hyperv-utc.out","lines_changed":79},{"name":".../windows/windows-10/systeminfo-hyperv.json","lines_changed":112},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":57},{"name":"tests/fixtures/windows/windows-10/systeminfo.out","lines_changed":1},{"name":".../windows/windows-2012r2/systeminfo.json","lines_changed":55},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":326}]},"message":"update systeminfo parser with updated timestamps, normalized blank fields, and new doc style"},{"commit":"146acc1bf69c402e38c2f1bc842b84e6cff7e2cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":29,"files":["jc/parsers/systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":52}]},"message":"rename functions to make them private"},{"commit":"c4a345f59aa090336b4e80f181493cd5bc2c17c5","merge":"dfd2703 325fab2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #106 from jon-rd/j/systeminfo\n\nAdd windows systeminfo command parser"},{"commit":"dfd2703f75b907ba865fff266d0742d8931bc2d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"bump dev to v1.15.2"},{"commit":"325fab2de7b8a4bfc452ab8d3cf333d47fdf4989","author":"Jon Smith","author_email":"jon@rebelliondefense.com","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":10}]},"message":"update documentation for parsed structures"},{"commit":"f3d00cf38ad15aeda7eaa5644ebc30ff33de6a29","author":"Jon Smith","author_email":"jon@rebelliondefense.com","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","stats":{"files_changed":5,"insertions":56,"deletions":48,"files":["jc/parsers/systeminfo.py",".../windows/windows-10/systeminfo-hyperv.json","tests/fixtures/windows/windows-10/systeminfo.json",".../windows/windows-2012r2/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":48},{"name":".../windows/windows-10/systeminfo-hyperv.json","lines_changed":14},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":14},{"name":".../windows/windows-2012r2/systeminfo.json","lines_changed":14},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":14}]},"message":"append mb to memory key names; adjust expected timestamps to utc tz"},{"commit":"14838f7f5d780896f1318cac2c3f34d249a158d4","author":"Jon Smith","author_email":"jon@rebelliondefense.com","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","stats":{"files_changed":9,"insertions":956,"deletions":116,"files":["jc/parsers/systeminfo.py","jc/utils.py",".../windows/windows-10/systeminfo-hyperv.json",".../windows/windows-10/systeminfo-hyperv.out","tests/fixtures/windows/windows-10/systeminfo.json",".../windows/windows-2012r2/systeminfo.json",".../fixtures/windows/windows-2012r2/systeminfo.out","tests/fixtures/windows/windows-7/systeminfo.json","tests/test_systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":357},{"name":"jc/utils.py","lines_changed":1},{"name":".../windows/windows-10/systeminfo-hyperv.json","lines_changed":111},{"name":".../windows/windows-10/systeminfo-hyperv.out","lines_changed":79},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":43},{"name":".../windows/windows-2012r2/systeminfo.json","lines_changed":54},{"name":".../fixtures/windows/windows-2012r2/systeminfo.out","lines_changed":45},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":311},{"name":"tests/test_systeminfo.py","lines_changed":71}]},"message":"update schema with nic, hyperv, and process changes"},{"commit":"af74047b81776c2ea32d82f9145ab60c346c8203","author":"Jon Smith","author_email":"jon@rebelliondefense.com","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":8}]},"message":"update schema based on processor/hotfix changes"},{"commit":"660c59129cf4ba7889fb3c6fbafd9dd9b479ccd9","author":"Jon Smith","author_email":"jon@rebelliondefense.com","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","stats":{"files_changed":3,"insertions":41,"deletions":9,"files":["jc/parsers/systeminfo.py","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":42},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":4},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":4}]},"message":"Add parsing of processors/hotfixs"},{"commit":"89a88e186ed71d84ea802cf08ab756b49cee3225","author":"Jon Smith","author_email":"jon@rebelliondefense.com","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","stats":{"files_changed":1,"insertions":152,"deletions":0,"files":["docs/parsers/systeminfo.md"],"file_stats":[{"name":"docs/parsers/systeminfo.md","lines_changed":152}]},"message":"Add systeminfo.md file"},{"commit":"f861cf95b96a224a0a11f2cdc3261b94c02415ef","author":"Jon Smith","author_email":"jon@rebelliondefense.com","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["jc/cli.py","jc/parsers/systeminfo.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/systeminfo.py","lines_changed":2}]},"message":"Change to v0.5; add parser to cli.py; add to docgen"},{"commit":"ee8f06cbdb03f8254bb6a3c56fa5b8a64ff9ca77","author":"Jon Smith","author_email":"jon@rebelliondefense.com","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","stats":{"files_changed":6,"insertions":688,"deletions":0,"files":["jc/parsers/systeminfo.py","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-10/systeminfo.out","tests/fixtures/windows/windows-7/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.out","tests/test_systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":209},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":35},{"name":"tests/fixtures/windows/windows-10/systeminfo.out","lines_changed":47},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":34},{"name":"tests/fixtures/windows/windows-7/systeminfo.out","lines_changed":298},{"name":"tests/test_systeminfo.py","lines_changed":65}]},"message":"Add windows systeminfo command parser"},{"commit":"a2e8b3c7b681605916b8950d035ee19889a125a5","merge":"e0681ee 6c83846","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #121 from kellyjonbrazil/master\n\nMerge pull request #120 from kellyjonbrazil/dev"},{"commit":"6c838460752c7131f75cdab2da07266fee492060","merge":"10292f7 e0681ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #120 from kellyjonbrazil/dev\n\nDev v1.15.1"},{"commit":"e0681eebb9881dc0ffddb478224455f434919104","merge":"e5732d1 10292f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge branch 'master' into dev"},{"commit":"e5732d1cea1c882f6486cf288e45edb993989ea0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"update changelog"},{"commit":"6e7ae3cd3f003fe9e1e587b7f8ebd16ba0895014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/timedatectl.md","jc/man/jc.1.gz","jc/parsers/timedatectl.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"formatting of timedatectl docs"},{"commit":"f95632d1aaee545ae0ce081ca0617be135c09220","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":83,"deletions":62,"files":["EXAMPLES.md","docs/parsers/rpm_qi.md","jc/man/jc.1.gz","jc/parsers/rpm_qi.py","man/jc.1.gz","tests/fixtures/centos-7.7/rpm-qai.json","tests/fixtures/centos-7.7/rpm-qi-package.json"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":12},{"name":"docs/parsers/rpm_qi.md","lines_changed":62},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/rpm_qi.py","lines_changed":67},{"name":"man/jc.1.gz","lines_changed":null},{"name":"tests/fixtures/centos-7.7/rpm-qai.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rpm-qi-package.json","lines_changed":2}]},"message":"add install_date calculated fields"},{"commit":"2f8b7b26e59bcd745fa1fcadb373455c7d404286","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":2,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update docs for v1.15.1"},{"commit":"10292f7502e4cb1c53b53ed39fed9288044c2ef8","merge":"37a3565 aef5470","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #119 from kellyjonbrazil/dpkg_l-fix\n\nadd _l to module name"},{"commit":"aef54705f5267c633e0778e8dce0065978083139","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["docs/parsers/dpkg_l.md"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":4}]},"message":"add _l to module name"},{"commit":"bba5980fa53767716bc35d8c904e7a2341346eeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"man page update"},{"commit":"977425abfb05a63ee372df36124ac6ba6a5a0aaa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"jc/parsers/dpkg_l.py","lines_changed":4}]},"message":"add _l to package name in docs"},{"commit":"37a3565a1bbd3d01663602673fed651509e69d8c","merge":"bdcdaee 13deb8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #118 from kellyjonbrazil/rpm-qi-doc-fix\n\nfix rpm-qi docs"},{"commit":"13deb8bfb6e77aaf86942f0be87b59d06ee2a97c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":194,"files":["docs/parsers/rpm_qai.md","docs/parsers/rpm_qi.md"],"file_stats":[{"name":"docs/parsers/rpm_qai.md","lines_changed":191},{"name":"docs/parsers/rpm_qi.md","lines_changed":6}]},"message":"fix rpm-qi docs"},{"commit":"a3ed9d075aff41599452c3094f7d057c25fc8f89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":191,"files":["docs/parsers/rpm_qai.md"],"file_stats":[{"name":"docs/parsers/rpm_qai.md","lines_changed":191}]},"message":"remove old parser doc"},{"commit":"fb0ced549e021916dee7da39859e8f85c8216e16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":6,"deletions":6,"files":["docs/parsers/rpm_qi.md","jc/man/jc.1.gz","jc/parsers/rpm_qi.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/rpm_qi.md","lines_changed":6},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/rpm_qi.py","lines_changed":6},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"fix rpm-qi docs (used underscore instead of dash in name)"},{"commit":"7eb31bc7d290fcd09e53524ebbb11e59110df6a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":39,"deletions":48,"files":["docs/parsers/airport_s.md","jc/man/jc.1.gz","jc/parsers/airport_s.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/airport_s.md","lines_changed":49},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/airport_s.py","lines_changed":38},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update airport_s docs"},{"commit":"6a06a3914273853742ac57433398968ccf7d9897","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":12}]},"message":"use herestring instead of echo -e into jq"},{"commit":"bdcdaee6c5299ea0750512e0943c7f58f56f2e35","merge":"5d8f836 605353f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #117 from kellyjonbrazil/doc_update\n\nadd new docs"},{"commit":"605353fdce3b8b5986d20a35d05f7210a6df0730","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":70,"insertions":1710,"deletions":2656,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":99},{"name":"docs/parsers/airport.md","lines_changed":61},{"name":"docs/parsers/airport_s.md","lines_changed":9},{"name":"docs/parsers/arp.md","lines_changed":51},{"name":"docs/parsers/blkid.md","lines_changed":93},{"name":"docs/parsers/cksum.md","lines_changed":41},{"name":"docs/parsers/crontab.md","lines_changed":84},{"name":"docs/parsers/crontab_u.md","lines_changed":88},{"name":"docs/parsers/csv.md","lines_changed":41},{"name":"docs/parsers/date.md","lines_changed":68},{"name":"docs/parsers/df.md","lines_changed":59},{"name":"docs/parsers/dig.md","lines_changed":133},{"name":"docs/parsers/dir.md","lines_changed":49},{"name":"docs/parsers/dmidecode.md","lines_changed":55},{"name":"docs/parsers/dpkg_l.md","lines_changed":51},{"name":"docs/parsers/du.md","lines_changed":39},{"name":"docs/parsers/env.md","lines_changed":39},{"name":"docs/parsers/file.md","lines_changed":39},{"name":"docs/parsers/finger.md","lines_changed":57},{"name":"docs/parsers/free.md","lines_changed":49},{"name":"docs/parsers/fstab.md","lines_changed":47},{"name":"docs/parsers/group.md","lines_changed":47},{"name":"docs/parsers/gshadow.md","lines_changed":51},{"name":"docs/parsers/hash.md","lines_changed":39},{"name":"docs/parsers/hashsum.md","lines_changed":39},{"name":"docs/parsers/hciconfig.md","lines_changed":123},{"name":"docs/parsers/history.md","lines_changed":39},{"name":"docs/parsers/hosts.md","lines_changed":43},{"name":"docs/parsers/id.md","lines_changed":79},{"name":"docs/parsers/ifconfig.md","lines_changed":97},{"name":"docs/parsers/ini.md","lines_changed":44},{"name":"docs/parsers/iptables.md","lines_changed":67},{"name":"docs/parsers/iw_scan.md","lines_changed":40},{"name":"docs/parsers/jobs.md","lines_changed":45},{"name":"docs/parsers/kv.md","lines_changed":17},{"name":"docs/parsers/last.md","lines_changed":53},{"name":"docs/parsers/ls.md","lines_changed":118},{"name":"docs/parsers/lsblk.md","lines_changed":115},{"name":"docs/parsers/lsmod.md","lines_changed":47},{"name":"docs/parsers/lsof.md","lines_changed":55},{"name":"docs/parsers/mount.md","lines_changed":47},{"name":"docs/parsers/netstat.md","lines_changed":223},{"name":"docs/parsers/ntpq.md","lines_changed":58},{"name":"docs/parsers/passwd.md","lines_changed":49},{"name":"docs/parsers/ping.md","lines_changed":81},{"name":"docs/parsers/pip_list.md","lines_changed":41},{"name":"docs/parsers/pip_show.md","lines_changed":56},{"name":"docs/parsers/ps.md","lines_changed":69},{"name":"docs/parsers/route.md","lines_changed":63},{"name":"docs/parsers/rpm_qi.md","lines_changed":77},{"name":"docs/parsers/shadow.md","lines_changed":51},{"name":"docs/parsers/ss.md","lines_changed":73},{"name":"docs/parsers/stat.md","lines_changed":97},{"name":"docs/parsers/sysctl.md","lines_changed":37},{"name":"docs/parsers/systemctl.md","lines_changed":45},{"name":"docs/parsers/systemctl_lj.md","lines_changed":44},{"name":"docs/parsers/systemctl_ls.md","lines_changed":41},{"name":"docs/parsers/systemctl_luf.md","lines_changed":39},{"name":"docs/parsers/time.md","lines_changed":105},{"name":"docs/parsers/timedatectl.md","lines_changed":53},{"name":"docs/parsers/tracepath.md","lines_changed":60},{"name":"docs/parsers/traceroute.md","lines_changed":69},{"name":"docs/parsers/uname.md","lines_changed":47},{"name":"docs/parsers/upower.md","lines_changed":145},{"name":"docs/parsers/uptime.md","lines_changed":57},{"name":"docs/parsers/w.md","lines_changed":51},{"name":"docs/parsers/wc.md","lines_changed":43},{"name":"docs/parsers/who.md","lines_changed":55},{"name":"docs/parsers/xml.md","lines_changed":38},{"name":"docs/parsers/yaml.md","lines_changed":42}]},"message":"add new docs"},{"commit":"490c9e17699e8e4f70dcc1612e1a808f86e24b0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":8}]},"message":"add more cli tests for magic command"},{"commit":"6ebebb659dc93daeaa869752ad135f6e1d2cb1ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"update changelog"},{"commit":"0e70c5ee12e96f04a89de05153a2da9cd39f98ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update documentation link"},{"commit":"cd531acf6045660e022c932f62a01d4084433ad4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":1}]},"message":"clean up comment"},{"commit":"908ac1f61c5cc011d05d550f933940dfed4431f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":143,"insertions":0,"deletions":690,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/man/jc.1.gz","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":4},{"name":"docs/parsers/airport.md","lines_changed":4},{"name":"docs/parsers/airport_s.md","lines_changed":4},{"name":"docs/parsers/arp.md","lines_changed":4},{"name":"docs/parsers/blkid.md","lines_changed":4},{"name":"docs/parsers/cksum.md","lines_changed":4},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"docs/parsers/crontab_u.md","lines_changed":4},{"name":"docs/parsers/csv.md","lines_changed":4},{"name":"docs/parsers/date.md","lines_changed":4},{"name":"docs/parsers/df.md","lines_changed":4},{"name":"docs/parsers/dig.md","lines_changed":4},{"name":"docs/parsers/dir.md","lines_changed":4},{"name":"docs/parsers/dmidecode.md","lines_changed":4},{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"docs/parsers/du.md","lines_changed":4},{"name":"docs/parsers/env.md","lines_changed":4},{"name":"docs/parsers/file.md","lines_changed":4},{"name":"docs/parsers/finger.md","lines_changed":4},{"name":"docs/parsers/free.md","lines_changed":4},{"name":"docs/parsers/fstab.md","lines_changed":4},{"name":"docs/parsers/group.md","lines_changed":4},{"name":"docs/parsers/gshadow.md","lines_changed":4},{"name":"docs/parsers/hash.md","lines_changed":4},{"name":"docs/parsers/hashsum.md","lines_changed":4},{"name":"docs/parsers/hciconfig.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":4},{"name":"docs/parsers/hosts.md","lines_changed":4},{"name":"docs/parsers/id.md","lines_changed":4},{"name":"docs/parsers/ifconfig.md","lines_changed":4},{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"docs/parsers/iptables.md","lines_changed":4},{"name":"docs/parsers/iw_scan.md","lines_changed":4},{"name":"docs/parsers/jobs.md","lines_changed":4},{"name":"docs/parsers/kv.md","lines_changed":4},{"name":"docs/parsers/last.md","lines_changed":4},{"name":"docs/parsers/ls.md","lines_changed":67},{"name":"docs/parsers/lsblk.md","lines_changed":4},{"name":"docs/parsers/lsmod.md","lines_changed":4},{"name":"docs/parsers/lsof.md","lines_changed":4},{"name":"docs/parsers/mount.md","lines_changed":4},{"name":"docs/parsers/netstat.md","lines_changed":4},{"name":"docs/parsers/ntpq.md","lines_changed":4},{"name":"docs/parsers/passwd.md","lines_changed":4},{"name":"docs/parsers/ping.md","lines_changed":4},{"name":"docs/parsers/pip_list.md","lines_changed":4},{"name":"docs/parsers/pip_show.md","lines_changed":4},{"name":"docs/parsers/ps.md","lines_changed":4},{"name":"docs/parsers/route.md","lines_changed":4},{"name":"docs/parsers/rpm_qi.md","lines_changed":4},{"name":"docs/parsers/shadow.md","lines_changed":4},{"name":"docs/parsers/ss.md","lines_changed":4},{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"docs/parsers/sysctl.md","lines_changed":4},{"name":"docs/parsers/systemctl.md","lines_changed":4},{"name":"docs/parsers/systemctl_lj.md","lines_changed":4},{"name":"docs/parsers/systemctl_ls.md","lines_changed":4},{"name":"docs/parsers/systemctl_luf.md","lines_changed":4},{"name":"docs/parsers/time.md","lines_changed":4},{"name":"docs/parsers/timedatectl.md","lines_changed":4},{"name":"docs/parsers/tracepath.md","lines_changed":4},{"name":"docs/parsers/traceroute.md","lines_changed":4},{"name":"docs/parsers/uname.md","lines_changed":4},{"name":"docs/parsers/upower.md","lines_changed":4},{"name":"docs/parsers/uptime.md","lines_changed":4},{"name":"docs/parsers/w.md","lines_changed":4},{"name":"docs/parsers/wc.md","lines_changed":4},{"name":"docs/parsers/who.md","lines_changed":4},{"name":"docs/parsers/xml.md","lines_changed":4},{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/acpi.py","lines_changed":4},{"name":"jc/parsers/airport.py","lines_changed":4},{"name":"jc/parsers/airport_s.py","lines_changed":4},{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/blkid.py","lines_changed":4},{"name":"jc/parsers/cksum.py","lines_changed":4},{"name":"jc/parsers/crontab.py","lines_changed":4},{"name":"jc/parsers/crontab_u.py","lines_changed":4},{"name":"jc/parsers/csv.py","lines_changed":4},{"name":"jc/parsers/date.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":4},{"name":"jc/parsers/dir.py","lines_changed":4},{"name":"jc/parsers/dmidecode.py","lines_changed":4},{"name":"jc/parsers/dpkg_l.py","lines_changed":4},{"name":"jc/parsers/du.py","lines_changed":4},{"name":"jc/parsers/env.py","lines_changed":4},{"name":"jc/parsers/file.py","lines_changed":4},{"name":"jc/parsers/finger.py","lines_changed":4},{"name":"jc/parsers/foo.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":4},{"name":"jc/parsers/fstab.py","lines_changed":4},{"name":"jc/parsers/group.py","lines_changed":4},{"name":"jc/parsers/gshadow.py","lines_changed":4},{"name":"jc/parsers/hash.py","lines_changed":4},{"name":"jc/parsers/hashsum.py","lines_changed":4},{"name":"jc/parsers/hciconfig.py","lines_changed":4},{"name":"jc/parsers/history.py","lines_changed":4},{"name":"jc/parsers/hosts.py","lines_changed":4},{"name":"jc/parsers/id.py","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":4},{"name":"jc/parsers/ini.py","lines_changed":4},{"name":"jc/parsers/iptables.py","lines_changed":4},{"name":"jc/parsers/iw_scan.py","lines_changed":4},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/kv.py","lines_changed":4},{"name":"jc/parsers/last.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":67},{"name":"jc/parsers/lsblk.py","lines_changed":4},{"name":"jc/parsers/lsmod.py","lines_changed":4},{"name":"jc/parsers/lsof.py","lines_changed":4},{"name":"jc/parsers/mount.py","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":4},{"name":"jc/parsers/ntpq.py","lines_changed":4},{"name":"jc/parsers/passwd.py","lines_changed":4},{"name":"jc/parsers/ping.py","lines_changed":4},{"name":"jc/parsers/pip_list.py","lines_changed":4},{"name":"jc/parsers/pip_show.py","lines_changed":4},{"name":"jc/parsers/ps.py","lines_changed":4},{"name":"jc/parsers/route.py","lines_changed":4},{"name":"jc/parsers/rpm_qi.py","lines_changed":4},{"name":"jc/parsers/shadow.py","lines_changed":4},{"name":"jc/parsers/ss.py","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"jc/parsers/sysctl.py","lines_changed":4},{"name":"jc/parsers/systemctl.py","lines_changed":4},{"name":"jc/parsers/systemctl_lj.py","lines_changed":4},{"name":"jc/parsers/systemctl_ls.py","lines_changed":4},{"name":"jc/parsers/systemctl_luf.py","lines_changed":4},{"name":"jc/parsers/time.py","lines_changed":4},{"name":"jc/parsers/timedatectl.py","lines_changed":4},{"name":"jc/parsers/tracepath.py","lines_changed":4},{"name":"jc/parsers/traceroute.py","lines_changed":4},{"name":"jc/parsers/uname.py","lines_changed":4},{"name":"jc/parsers/upower.py","lines_changed":4},{"name":"jc/parsers/uptime.py","lines_changed":4},{"name":"jc/parsers/w.py","lines_changed":4},{"name":"jc/parsers/wc.py","lines_changed":4},{"name":"jc/parsers/who.py","lines_changed":4},{"name":"jc/parsers/xml.py","lines_changed":4},{"name":"jc/parsers/yaml.py","lines_changed":4},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update docs - remove compatibility section since it is now automatically generated from info()"},{"commit":"f5c7e7e4046bc57b4fcad99390e31b121a7106ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":70,"insertions":350,"deletions":0,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":5},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5}]},"message":"add updated docs with home link and parser info at the bottom"},{"commit":"001c700b5bd280cb1cb9e54169ae5f1b7918c257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":2,"deletions":1,"files":["docgen.sh","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docgen.sh","lines_changed":3},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add home link to the top of the md file"},{"commit":"9b41e9bef0ff099e70f37fddc8fe2c6bd8457b19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":1}]},"message":"Add parser information header"},{"commit":"34bd6e32dc0c0bf7dfeedaadbf04115f43e9d060","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":4,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":24}]},"message":"pull each parser as a json object into a bash array and iterate on it to add supplementary information like version, author, and compatibility"},{"commit":"c5d058490beaa8f59875a8acfd7a400764768639","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":22,"deletions":13,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":35}]},"message":"move parser doc printing to its own function"},{"commit":"dd1ae6d9a7de5421830232deb42d933b9a652672","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":3,"deletions":1,"files":["MANIFEST.in","jc/man/jc.1.gz","man/jc.1.gz","mangen.py"],"file_stats":[{"name":"MANIFEST.in","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"mangen.py","lines_changed":2}]},"message":"add man page inside the pypi package for easier packaging in homebrew"},{"commit":"d8ea9bde823a7f5c146741150c3211737345c7dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":16,"deletions":16,"files":["docs/parsers/w.md","jc/parsers/w.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/w.md","lines_changed":16},{"name":"jc/parsers/w.py","lines_changed":16},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update"},{"commit":"125edc9c906dc3650b6a683ed13830075acb7ab6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"bail out for -h, -a, and -v in magic()"},{"commit":"15ea43e394a9004f8ccec208b3a066c76e241866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["MANIFEST.in"],"file_stats":[{"name":"MANIFEST.in","lines_changed":1}]},"message":"add man file to package for easier packaging in homebrew"},{"commit":"b55b02687c00d1c50e30f30c9b9a7f36f783eb0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":19,"insertions":371,"deletions":441,"files":["CHANGELOG","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","man/jc.1.gz","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":6},{"name":"docs/parsers/uname.md","lines_changed":42},{"name":"docs/parsers/upower.md","lines_changed":140},{"name":"docs/parsers/uptime.md","lines_changed":52},{"name":"docs/parsers/w.md","lines_changed":46},{"name":"docs/parsers/wc.md","lines_changed":38},{"name":"docs/parsers/who.md","lines_changed":50},{"name":"docs/parsers/xml.md","lines_changed":33},{"name":"docs/parsers/yaml.md","lines_changed":37},{"name":"jc/parsers/uname.py","lines_changed":33},{"name":"jc/parsers/upower.py","lines_changed":131},{"name":"jc/parsers/uptime.py","lines_changed":43},{"name":"jc/parsers/w.py","lines_changed":37},{"name":"jc/parsers/wc.py","lines_changed":29},{"name":"jc/parsers/who.py","lines_changed":41},{"name":"jc/parsers/xml.py","lines_changed":24},{"name":"jc/parsers/yaml.py","lines_changed":28},{"name":"man/jc.1.gz","lines_changed":null},{"name":"setup.py","lines_changed":2}]},"message":"doc update"},{"commit":"da611f0ac6321f7f52fdbc419f8b155c74393c28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":63,"deletions":50,"files":["jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","man/jc.1.gz"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":30},{"name":"jc/parsers/iptables.py","lines_changed":53},{"name":"jc/parsers/iw_scan.py","lines_changed":30},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update docs"},{"commit":"b8b8dfead4fdc4285585c44c2ebce3bdd42b2e7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":61,"insertions":1501,"deletions":1848,"files":["docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":39},{"name":"docs/parsers/iptables.md","lines_changed":62},{"name":"docs/parsers/iw_scan.md","lines_changed":35},{"name":"docs/parsers/jobs.md","lines_changed":40},{"name":"docs/parsers/kv.md","lines_changed":12},{"name":"docs/parsers/last.md","lines_changed":48},{"name":"docs/parsers/ls.md","lines_changed":50},{"name":"docs/parsers/lsblk.md","lines_changed":110},{"name":"docs/parsers/lsmod.md","lines_changed":42},{"name":"docs/parsers/lsof.md","lines_changed":50},{"name":"docs/parsers/mount.md","lines_changed":42},{"name":"docs/parsers/netstat.md","lines_changed":218},{"name":"docs/parsers/ntpq.md","lines_changed":53},{"name":"docs/parsers/passwd.md","lines_changed":44},{"name":"docs/parsers/ping.md","lines_changed":76},{"name":"docs/parsers/pip_list.md","lines_changed":36},{"name":"docs/parsers/pip_show.md","lines_changed":51},{"name":"docs/parsers/ps.md","lines_changed":64},{"name":"docs/parsers/route.md","lines_changed":58},{"name":"docs/parsers/rpm_qi.md","lines_changed":72},{"name":"docs/parsers/shadow.md","lines_changed":46},{"name":"docs/parsers/ss.md","lines_changed":66},{"name":"docs/parsers/stat.md","lines_changed":92},{"name":"docs/parsers/sysctl.md","lines_changed":32},{"name":"docs/parsers/systemctl.md","lines_changed":40},{"name":"docs/parsers/systemctl_lj.md","lines_changed":39},{"name":"docs/parsers/systemctl_ls.md","lines_changed":36},{"name":"docs/parsers/systemctl_luf.md","lines_changed":34},{"name":"docs/parsers/time.md","lines_changed":100},{"name":"docs/parsers/timedatectl.md","lines_changed":48},{"name":"docs/parsers/tracepath.md","lines_changed":55},{"name":"docs/parsers/traceroute.md","lines_changed":64},{"name":"jc/parsers/jobs.py","lines_changed":31},{"name":"jc/parsers/kv.py","lines_changed":13},{"name":"jc/parsers/last.py","lines_changed":39},{"name":"jc/parsers/ls.py","lines_changed":41},{"name":"jc/parsers/lsblk.py","lines_changed":101},{"name":"jc/parsers/lsmod.py","lines_changed":33},{"name":"jc/parsers/lsof.py","lines_changed":41},{"name":"jc/parsers/mount.py","lines_changed":41},{"name":"jc/parsers/netstat.py","lines_changed":209},{"name":"jc/parsers/ntpq.py","lines_changed":44},{"name":"jc/parsers/passwd.py","lines_changed":35},{"name":"jc/parsers/ping.py","lines_changed":75},{"name":"jc/parsers/pip_list.py","lines_changed":27},{"name":"jc/parsers/pip_show.py","lines_changed":42},{"name":"jc/parsers/ps.py","lines_changed":55},{"name":"jc/parsers/route.py","lines_changed":49},{"name":"jc/parsers/rpm_qi.py","lines_changed":63},{"name":"jc/parsers/shadow.py","lines_changed":37},{"name":"jc/parsers/ss.py","lines_changed":59},{"name":"jc/parsers/stat.py","lines_changed":83},{"name":"jc/parsers/sysctl.py","lines_changed":23},{"name":"jc/parsers/systemctl.py","lines_changed":31},{"name":"jc/parsers/systemctl_lj.py","lines_changed":30},{"name":"jc/parsers/systemctl_ls.py","lines_changed":27},{"name":"jc/parsers/systemctl_luf.py","lines_changed":25},{"name":"jc/parsers/time.py","lines_changed":91},{"name":"jc/parsers/timedatectl.py","lines_changed":39},{"name":"jc/parsers/tracepath.py","lines_changed":46},{"name":"jc/parsers/traceroute.py","lines_changed":65}]},"message":"update docs"},{"commit":"4290a3cbd135cacbf63664dc30768017ebbed28d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":9,"files":["docs/parsers/ifconfig.md","jc/parsers/ifconfig.py"],"file_stats":[{"name":"docs/parsers/ifconfig.md","lines_changed":6},{"name":"jc/parsers/ifconfig.py","lines_changed":6}]},"message":"make IfconfigParser class private"},{"commit":"a5e2203cee6a7bc398cf280f57d37638eeb1d2d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":2,"deletions":1,"files":["docs/parsers/ifconfig.md","jc/parsers/ifconfig.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":1},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update ifconfig doc"},{"commit":"e28c08b1361161cfd123b9ebc11fa1ffa87d658f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":46,"insertions":976,"deletions":1209,"files":["docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/csv.md","lines_changed":36},{"name":"docs/parsers/date.md","lines_changed":63},{"name":"docs/parsers/df.md","lines_changed":54},{"name":"docs/parsers/dig.md","lines_changed":128},{"name":"docs/parsers/dir.md","lines_changed":44},{"name":"docs/parsers/dmidecode.md","lines_changed":50},{"name":"docs/parsers/dpkg_l.md","lines_changed":46},{"name":"docs/parsers/du.md","lines_changed":34},{"name":"docs/parsers/env.md","lines_changed":34},{"name":"docs/parsers/file.md","lines_changed":34},{"name":"docs/parsers/finger.md","lines_changed":52},{"name":"docs/parsers/free.md","lines_changed":44},{"name":"docs/parsers/fstab.md","lines_changed":42},{"name":"docs/parsers/group.md","lines_changed":42},{"name":"docs/parsers/gshadow.md","lines_changed":46},{"name":"docs/parsers/hash.md","lines_changed":34},{"name":"docs/parsers/hashsum.md","lines_changed":34},{"name":"docs/parsers/hciconfig.md","lines_changed":118},{"name":"docs/parsers/history.md","lines_changed":34},{"name":"docs/parsers/hosts.md","lines_changed":38},{"name":"docs/parsers/id.md","lines_changed":74},{"name":"docs/parsers/ifconfig.md","lines_changed":86},{"name":"jc/parsers/csv.py","lines_changed":27},{"name":"jc/parsers/date.py","lines_changed":54},{"name":"jc/parsers/df.py","lines_changed":45},{"name":"jc/parsers/dig.py","lines_changed":143},{"name":"jc/parsers/dir.py","lines_changed":35},{"name":"jc/parsers/dmidecode.py","lines_changed":41},{"name":"jc/parsers/dpkg_l.py","lines_changed":37},{"name":"jc/parsers/du.py","lines_changed":25},{"name":"jc/parsers/env.py","lines_changed":25},{"name":"jc/parsers/file.py","lines_changed":25},{"name":"jc/parsers/finger.py","lines_changed":43},{"name":"jc/parsers/foo.py","lines_changed":25},{"name":"jc/parsers/free.py","lines_changed":35},{"name":"jc/parsers/fstab.py","lines_changed":33},{"name":"jc/parsers/group.py","lines_changed":33},{"name":"jc/parsers/gshadow.py","lines_changed":37},{"name":"jc/parsers/hash.py","lines_changed":25},{"name":"jc/parsers/hashsum.py","lines_changed":25},{"name":"jc/parsers/hciconfig.py","lines_changed":109},{"name":"jc/parsers/history.py","lines_changed":25},{"name":"jc/parsers/hosts.py","lines_changed":29},{"name":"jc/parsers/id.py","lines_changed":65},{"name":"jc/parsers/ifconfig.py","lines_changed":77},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update documentation"},{"commit":"a4b6846f63b43168085275d73940265940badf46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":467,"files":["man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"man/jc.1","lines_changed":467},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"man update"},{"commit":"2bc830786114fd57619f34b936dcf6e0bed7a109","merge":"9b39917 5d8f836","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'master' into dev\n\n# Conflicts:\n# man/jc.1"},{"commit":"9b39917c798ed0310c9b82d87172cbf6d24ba111","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":17,"insertions":391,"deletions":453,"files":["README.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","jc/cli.py","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/acpi.md","lines_changed":94},{"name":"docs/parsers/airport.md","lines_changed":56},{"name":"docs/parsers/blkid.md","lines_changed":88},{"name":"docs/parsers/cksum.md","lines_changed":36},{"name":"docs/parsers/crontab.md","lines_changed":79},{"name":"docs/parsers/crontab_u.md","lines_changed":83},{"name":"jc/cli.py","lines_changed":6},{"name":"jc/parsers/acpi.py","lines_changed":85},{"name":"jc/parsers/airport.py","lines_changed":47},{"name":"jc/parsers/blkid.py","lines_changed":79},{"name":"jc/parsers/cksum.py","lines_changed":27},{"name":"jc/parsers/crontab.py","lines_changed":70},{"name":"jc/parsers/crontab_u.py","lines_changed":74},{"name":"man/jc.1","lines_changed":8},{"name":"templates/manpage_template","lines_changed":8},{"name":"templates/readme_template","lines_changed":2}]},"message":"update docstrings for new help functionality"},{"commit":"57c13cc0a38ad89fda8b0e362bd6487257d0a26a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":26}]},"message":"add support for parser help"},{"commit":"b7355fd30d992a1bcc90227f5a1b02be073829e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":37,"deletions":48,"files":["docs/parsers/arp.md","jc/parsers/arp.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":46},{"name":"jc/parsers/arp.py","lines_changed":39}]},"message":"new docstring format for improved documentation"},{"commit":"93ae309e407b26820b9f05b5b331d05fc77df57f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/__init__.py","man/jc.1"],"file_stats":[{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"bump version to 1.15.1"},{"commit":"5d8f8365e24a7c3a587d4e71ebba4876de08203b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":461,"files":["man/jc.1","man/jc.1.gz","mangen.py"],"file_stats":[{"name":"man/jc.1","lines_changed":461},{"name":"man/jc.1.gz","lines_changed":null},{"name":"mangen.py","lines_changed":9}]},"message":"gzip man page"},{"commit":"f26909eefb236e9ebf63be53cd86ae13cc3d9ea3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["docs/parsers/dir.md"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":8}]},"message":"formatting"},{"commit":"55bfbb2797ede3aefbb14ecab950b108b1895ccc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":6,"files":["EXAMPLES.md","jc/parsers/dir.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":3},{"name":"jc/parsers/dir.py","lines_changed":8}]},"message":"formatting"},{"commit":"8970b8342a855203aef649b60dad3e49a1d7fd2a","merge":"a73fdb7 5285e69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #115 from kellyjonbrazil/master\n\nSync master and dev"},{"commit":"5285e699c30fdeaf56068f5a03ef1d1d33fa673c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","jc/cli.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"fix rpm-qi parser name"},{"commit":"275f3860d5870303235b651d42650256e4db8ada","merge":"577811f a73fdb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #114 from kellyjonbrazil/dev\n\nDev v1.15.0"},{"commit":"a73fdb7478965f0f2c841ac01b2762db80ad0786","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["CHANGELOG","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"update dates"},{"commit":"f2d746403a0ed764f931ae9e14d180bab107dcca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/rpm_qi.md","jc/parsers/rpm_qi.py"],"file_stats":[{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"jc/parsers/rpm_qi.py","lines_changed":2}]},"message":"typo fix"},{"commit":"b7dbf2c49be4beb793495a0aaee7f05dbea5a3a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":26}]},"message":"doc formatting"},{"commit":"21f3c97788826e79b0c387f877c5adf269318e97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2}]},"message":"rename rpm_qai to rpm_qi"},{"commit":"14b727cc717d04fefba1cc31b6f29b549ced986f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":73,"deletions":0,"files":["tests/fixtures/centos-7.7/rpm-qi-package.json","tests/fixtures/centos-7.7/rpm-qi-package.out","tests/test_rpm_qai.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/rpm-qi-package.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rpm-qi-package.out","lines_changed":26},{"name":"tests/test_rpm_qai.py","lines_changed":46}]},"message":"add rpm_qi tests"},{"commit":"abee226591ed4ae37351efc995017d28b27827d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":205,"deletions":14,"files":["README.md","docs/parsers/rpm_qi.md","jc/cli.py","jc/parsers/{rpm_qai.py => rpm_qi.py}","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":191},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/{rpm_qai.py => rpm_qi.py}","lines_changed":20},{"name":"man/jc.1","lines_changed":4}]},"message":"rename rpm_qia to rpm_qi"},{"commit":"293ad39f4bcf326186dd917d8bc58d3964e5e4d6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"typo fix"},{"commit":"92443025811019f616f596abb60a2889f604c122","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":7,"deletions":6,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/rpm_qai.md","jc/parsers/rpm_qai.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":4},{"name":"docs/parsers/rpm_qai.md","lines_changed":4},{"name":"jc/parsers/rpm_qai.py","lines_changed":4}]},"message":"rpm parser doc update"},{"commit":"753cac25fb1e7e6cd2c742afa8d45ced068ea91d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":3,"files":["jc/parsers/rpm_qai.py"],"file_stats":[{"name":"jc/parsers/rpm_qai.py","lines_changed":9}]},"message":"only add description if it exists"},{"commit":"0548263e898bf14f93d2fa423c0f0a9d9f2ff567","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":10468,"deletions":0,"files":["EXAMPLES.md","README.md","docs/parsers/rpm_qai.md","jc/cli.py","jc/parsers/rpm_qai.py","man/jc.1","tests/fixtures/centos-7.7/rpm-qai.json","tests/fixtures/centos-7.7/rpm-qai.out"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":53},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/rpm_qai.md","lines_changed":191},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/rpm_qai.py","lines_changed":255},{"name":"man/jc.1","lines_changed":5},{"name":"tests/fixtures/centos-7.7/rpm-qai.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rpm-qai.out","lines_changed":9961}]},"message":"add rpm -qai parser"},{"commit":"53776a9bf894988d6ef9221a62ab8b816c89560c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":2},{"name":"templates/manpage_template","lines_changed":2}]},"message":"note -a output is JSON"},{"commit":"cc7def9b76a7fa6de1e11b584676820f3acb0257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":18,"deletions":0,"files":["tests/fixtures/osx-10.14.6/finger.json","tests/fixtures/osx-10.14.6/finger.out","tests/test_finger.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/finger.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/finger.out","lines_changed":5},{"name":"tests/test_finger.py","lines_changed":12}]},"message":"add OSX finger tests"},{"commit":"11a4422c25ed905f33475677bcc2f59f49c62a23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":51,"deletions":0,"files":["tests/fixtures/centos-7.7/finger.json","tests/fixtures/centos-7.7/finger.out","tests/test_finger.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/finger.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/finger.out","lines_changed":3},{"name":"tests/test_finger.py","lines_changed":47}]},"message":"add centos 7.7 finger tests"},{"commit":"3a44785260514227b541530baf3e14b6c7ebe86a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/finger.py"],"file_stats":[{"name":"jc/parsers/finger.py","lines_changed":4}]},"message":"del details key if details are blank"},{"commit":"e0d430c26c38db8de5a32741e05df412cffe45b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"update -r raw option info"},{"commit":"417b70020accfa4910016e9d3d12690a5488f6f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":129,"deletions":22,"files":["EXAMPLES.md","docs/parsers/finger.md","jc/parsers/finger.py","tests/fixtures/ubuntu-18.04/finger.json","tests/fixtures/ubuntu-18.04/finger.out"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":18},{"name":"docs/parsers/finger.md","lines_changed":53},{"name":"jc/parsers/finger.py","lines_changed":71},{"name":"tests/fixtures/ubuntu-18.04/finger.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/finger.out","lines_changed":8}]},"message":"add idle time fields to finger parser"},{"commit":"7b29c464b72ef9a79bd872dab92cf65016490bcc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"date updated"},{"commit":"26d5529d86e4e459ad94226465c3697a050af0ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":7,"files":["docs/parsers/finger.md"],"file_stats":[{"name":"docs/parsers/finger.md","lines_changed":17}]},"message":"remove aix support, add note for -s support. schema update"},{"commit":"852103c478321b84ffbbc0a876d5ece0c0881e1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":14,"files":["jc/parsers/finger.py"],"file_stats":[{"name":"jc/parsers/finger.py","lines_changed":41}]},"message":"tweak regex to support arbitrary 'detail' data"},{"commit":"26a115421b0888e23f4348f1124e2ef7b39df4cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":11}]},"message":"add finger parser"},{"commit":"755b941a9aa602d95d9bc599f5c64e05f9e6216d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":35,"deletions":30,"files":["EXAMPLES.md","docs/parsers/finger.md","jc/parsers/finger.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":23},{"name":"docs/parsers/finger.md","lines_changed":21},{"name":"jc/parsers/finger.py","lines_changed":21}]},"message":"doc update"},{"commit":"fd1ca82d86649adeb84968142665e5e4fae3fa0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":263,"deletions":0,"files":["README.md","docs/parsers/finger.md","jc/cli.py","jc/parsers/finger.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/finger.md","lines_changed":102},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/finger.py","lines_changed":154},{"name":"man/jc.1","lines_changed":5}]},"message":"add finger parser"},{"commit":"6fe175344fc61d4996a9ea20f6c5d429efb1fac7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"change examples link to github.io"},{"commit":"3590cda13a68616ee7eb8c85c5554ffb3fef036d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/last.md","jc/parsers/last.py"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":2}]},"message":"docs formatting"},{"commit":"2f1011dd85ec9b3550138ac4a4e1729fa5b4fe17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"readme update"},{"commit":"2b155261b3f6e4879b592f5bc052649ded5e3d69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":2}]},"message":"use new github.io links for documentation"},{"commit":"02f4d606d0a446c7cc74aedac6035ee79805950d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":69,"deletions":69,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":136},{"name":"templates/readme_template","lines_changed":2}]},"message":"add documentation links to README.md"},{"commit":"577811f00b7fcd0396bb0e26a2985709bd2c65a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/_config.yml"],"file_stats":[{"name":"docs/_config.yml","lines_changed":1}]},"message":"Set theme jekyll-theme-cayman"},{"commit":"b4098d67a3a4a617d42c1389e0a88833c77b89b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"latest"},{"commit":"88bd7554aeb511c19e55dc3dde9c9376efb0485b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":3,"files":["docgen.sh","updatedocs.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":2},{"name":"updatedocs.sh","lines_changed":9}]},"message":"add status messages"},{"commit":"b5ec16c5cafb78db093861cc30d9646207f2227a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":8,"files":["mangen.py","readmegen.py"],"file_stats":[{"name":"mangen.py","lines_changed":4},{"name":"readmegen.py","lines_changed":4}]},"message":"formatting"},{"commit":"68fcb60a1460a35500180ec05a8cf5ba5706ff17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["updatedocs.sh"],"file_stats":[{"name":"updatedocs.sh","lines_changed":6}]},"message":"add updatedocs script"},{"commit":"e4781d60ce251f6d47f19bbe042e97f8aa9e2f18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":65,"insertions":188,"deletions":189,"files":["README.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":124},{"name":"jc/parsers/acpi.py","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/blkid.py","lines_changed":2},{"name":"jc/parsers/cksum.py","lines_changed":3},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/dir.py","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":2},{"name":"jc/parsers/dpkg_l.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/group.py","lines_changed":2},{"name":"jc/parsers/gshadow.py","lines_changed":2},{"name":"jc/parsers/hash.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":2},{"name":"jc/parsers/hciconfig.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/ntpq.py","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":2},{"name":"jc/parsers/ping.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/shadow.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/sysctl.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/time.py","lines_changed":2},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/parsers/wc.py","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":2},{"name":"man/jc.1","lines_changed":126}]},"message":"update parser descriptions with backticks surrounding command names"},{"commit":"6201fb346a66ba762651624cdaf03f08e08579a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"test backticks in description"},{"commit":"f88c8343f9dec5e0190df94a5109e6c749bda286","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"update iw-scan description for documentation"},{"commit":"25410d33168ee7142bd8f8c739ef22a62a47eb6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":973,"deletions":70,"files":["README.md","mangen.py","readmegen.py","{man/template => templates}/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":139},{"name":"mangen.py","lines_changed":2},{"name":"readmegen.py","lines_changed":16},{"name":"{man/template => templates}/manpage_template","lines_changed":0},{"name":"templates/readme_template","lines_changed":886}]},"message":"create readmegen.py script. move jinja2 templates to templates folder"},{"commit":"4ff9952938d0654376efc94ca7d8a12f6df171af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":10}]},"message":"change OSX to macOS"},{"commit":"5e3f63a412c5b23e7515337521ebba6273b5c11f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["man/jc.1","man/template/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":4},{"name":"man/template/manpage_template","lines_changed":8}]},"message":"add license and copyright info. use variables instead of hard-coded values"},{"commit":"e1f57be69efdfd7facd07df6ef0955a36c4fc18b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add license info"},{"commit":"2c65d5eeccdc95d2de00ac6575a9e8d8458486bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":32,"deletions":8,"files":["man/jc.1","man/template/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":20},{"name":"man/template/manpage_template","lines_changed":20}]},"message":"man page updates"},{"commit":"aa621f2f1ee043611c440683dfb63e6577d8fac4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":74,"deletions":9,"files":["CHANGELOG","man/jc.1","man/template/manpage_template"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"man/jc.1","lines_changed":42},{"name":"man/template/manpage_template","lines_changed":40}]},"message":"enhance man page"},{"commit":"ac932c6e59ad80115962d0ea91e6aaabc70c211e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":2},{"name":"jc/utils.py","lines_changed":2}]},"message":"update timestamp docs"},{"commit":"029f79da1647e53f97ca83ba92b1f36a131f3128","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"added info regarding updated dev scripts for automating doc generation"},{"commit":"153b2b4a7a216caae5b03f6d50d43980c13a705f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":68,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":79}]},"message":"use jc to help automate the generation of its own docs"},{"commit":"709b2fe4eead06090f903718deeb06ec774fc26e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":16,"deletions":0,"files":["man/jc.1","man/template/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":8},{"name":"man/template/manpage_template","lines_changed":8}]},"message":"add -h and -v options"},{"commit":"09c1fccc584e3d0582e19b520586419085ea8d04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":4,"deletions":6,"files":["man/jc.1","man/template/manpage_template","mangen.py"],"file_stats":[{"name":"man/jc.1","lines_changed":2},{"name":"man/template/manpage_template","lines_changed":2},{"name":"mangen.py","lines_changed":6}]},"message":"manpage updates"},{"commit":"fd254d99b782888fe7646e42a61f28aa99e7cba7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":193,"deletions":15,"files":["man/jc.1","man/template/manpage_template","mangen.py"],"file_stats":[{"name":"man/jc.1","lines_changed":124},{"name":"man/template/manpage_template","lines_changed":64},{"name":"mangen.py","lines_changed":20}]},"message":"add manpage generator"},{"commit":"88bd2c172217c498431e8904e74313bc27978785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"fix typo"},{"commit":"d03e2f0fc1d0310cd94702f4d3c959d71b0eb622","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":40,"deletions":0,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":40}]},"message":"add parser schema guidelines"},{"commit":"3f12a393bd37062cd1412128be495235b0c7351f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"formatting"},{"commit":"8c21284c5038bdc2e52ff4211fac747f33f52091","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":3}]},"message":"remove redundant license info"},{"commit":"e7d396c2157a77500017967dfc68ffaf32507c2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"update issues link"},{"commit":"f238fac0eb0c8e5133c6c9abf9ca709f5df7a925","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":49,"deletions":0,"files":["CHANGELOG","CONTRIBUTING.md","README.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"CONTRIBUTING.md","lines_changed":46},{"name":"README.md","lines_changed":2}]},"message":"add contributing guidelines"},{"commit":"017228f80d9a65ad7715f31c539d9fca1615296f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add tested on Windows 10"},{"commit":"286c5fa9434e25434ee8f4825621f68464296469","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add dir parser"},{"commit":"74cfc13abe4cd09ca5470714caeaedd24c099770","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":12,"deletions":21,"files":["tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-S.json","tests/fixtures/windows-10/dir-dirs.json","tests/fixtures/windows-10/dir-files.json","tests/fixtures/windows-10/dir-mix.json","tests/fixtures/windows-10/dir-raw.json","tests/fixtures/windows-10/dir.json","tests/test_dir.py"],"file_stats":[{"name":"tests/fixtures/windows-10/dir-C.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-ODTC.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-S.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-dirs.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-files.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-mix.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-raw.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir.json","lines_changed":2},{"name":"tests/test_dir.py","lines_changed":18}]},"message":"fixup dir parser tests"},{"commit":"0ee4a6c377321cf6ff67ced38e9a07a8f6313943","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":207,"deletions":460,"files":["docs/parsers/dir.md","jc/parsers/dir.py"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":316},{"name":"jc/parsers/dir.py","lines_changed":351}]},"message":"update schema and add epoch naive timestamp"},{"commit":"283433578dfc3f132ef35727ce5bafb3e390896c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":46,"deletions":0,"files":["EXAMPLES.md","README.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":45},{"name":"README.md","lines_changed":1}]},"message":"add dir parser"},{"commit":"9559c85057308e8815d4654bbe0062a5858c0b2b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":0,"files":["jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":1},{"name":"tests/test_utils.py","lines_changed":2}]},"message":"add windows dir format"},{"commit":"c5c020f5654038dacba542be3784a35d7333cbcc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/parsers/dir.md"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":1}]},"message":"add /S option"},{"commit":"95ec79bceb3d0c4245e36b7b16cfda6e16b01197","merge":"8f8be8a 5b60c74","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #107 from rasheed-rd/add-dir-parser\n\nAdd windows dir command parser"},{"commit":"8f8be8aa33f0b708ebd9a35c6b288572443d7181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4}]},"message":"add -1 option info"},{"commit":"5b60c7445a3f8bd2ae1587aa0ffaeaf093966f9a","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","commit_by":"Rasheed Elsaleh","commit_by_email":"rasheed@rebelliondefense.com","stats":{"files_changed":5,"insertions":469,"deletions":400,"files":["docs/parsers/dir.md","jc/parsers/dir.py","tests/fixtures/windows-10/dir-S.json","tests/fixtures/windows-10/dir-S.out","tests/test_dir.py"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":404},{"name":"jc/parsers/dir.py","lines_changed":405},{"name":"tests/fixtures/windows-10/dir-S.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-S.out","lines_changed":47},{"name":"tests/test_dir.py","lines_changed":12}]},"message":"Add support for /S and update documentation"},{"commit":"d9dbcc8b526c8de9c6d12ac580880fd606dc68cf","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","commit_by":"Rasheed Elsaleh","commit_by_email":"rasheed@rebelliondefense.com","stats":{"files_changed":15,"insertions":149,"deletions":73,"files":["docs/parsers/dir.md","jc/parsers/dir.py","tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-Q.json","tests/fixtures/windows-10/dir-Q.out","tests/fixtures/windows-10/dir-dirs.json","tests/fixtures/windows-10/dir-dirs.out","tests/fixtures/windows-10/dir-files.json","tests/fixtures/windows-10/dir-files.out","tests/fixtures/windows-10/dir-mix.json","tests/fixtures/windows-10/dir-mix.out","tests/fixtures/windows-10/dir-raw.json","tests/fixtures/windows-10/dir.json","tests/test_dir.py"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":24},{"name":"jc/parsers/dir.py","lines_changed":59},{"name":"tests/fixtures/windows-10/dir-C.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-ODTC.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-Q.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-Q.out","lines_changed":21},{"name":"tests/fixtures/windows-10/dir-dirs.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-dirs.out","lines_changed":19},{"name":"tests/fixtures/windows-10/dir-files.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-files.out","lines_changed":16},{"name":"tests/fixtures/windows-10/dir-mix.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-mix.out","lines_changed":22},{"name":"tests/fixtures/windows-10/dir-raw.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir.json","lines_changed":2},{"name":"tests/test_dir.py","lines_changed":50}]},"message":"Add parent dir to structure. Add test cases. Remove support for /Q"},{"commit":"79bc525970b38dea68b4859ac5dd32fc681e5994","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":1},{"name":"jc/parsers/dpkg_l.py","lines_changed":1}]},"message":"add codes field to schema"},{"commit":"9dae1091ddc6141694ebfdc5ae649582cb879ccd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":6},{"name":"jc/parsers/dpkg_l.py","lines_changed":4}]},"message":"typo fix"},{"commit":"74d3ac686a69518c1048260e37a0245ff254ff57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":61,"deletions":0,"files":["tests/fixtures/ubuntu-18.04/dpkg-l-codes.json","tests/fixtures/ubuntu-18.04/dpkg-l-columns500.json","tests/fixtures/ubuntu-18.04/dpkg-l.json","tests/test_dpkg_l.py"],"file_stats":[{"name":"tests/fixtures/ubuntu-18.04/dpkg-l-codes.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l-columns500.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l.json","lines_changed":1},{"name":"tests/test_dpkg_l.py","lines_changed":58}]},"message":"add dpkg-l tests"},{"commit":"cf3cc636badcf4ae6db1e5ee5e57ca0331ee5b0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add dpkg-l parser info"},{"commit":"a720441e1d34771c5a54876cb7dd63fb8c9f408e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":54,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":54}]},"message":"add dpkg -l example"},{"commit":"0a7ed0959df07e2f36d9ec3ca8c294cfdaf10396","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"jc/parsers/dpkg_l.py","lines_changed":6}]},"message":"rename err to error"},{"commit":"eb83c9b86dc6d1ff15efed30993071834b65a7d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":21,"files":["docs/utils.md"],"file_stats":[{"name":"docs/utils.md","lines_changed":29}]},"message":"replace parse_datetime_to_timestamp with timestamp class"},{"commit":"5c0142dd19eee14f4f1c287f0543e29824f9ae70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":1797,"deletions":2,"files":["CHANGELOG","docgen.sh","docs/parsers/dpkg_l.md","jc/cli.py","jc/parsers/dpkg_l.py","jc/parsers/universal.py","tests/fixtures/ubuntu-18.04/dpkg-l-codes.out","tests/fixtures/ubuntu-18.04/dpkg-l-columns500.out","tests/fixtures/ubuntu-18.04/dpkg-l.out"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/dpkg_l.md","lines_changed":170},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/dpkg_l.py","lines_changed":247},{"name":"jc/parsers/universal.py","lines_changed":4},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l-codes.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l-columns500.out","lines_changed":677},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l.out","lines_changed":677}]},"message":"add dpkg-l parser"},{"commit":"c326c8dc8356b55bba13864156adf30607205ece","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":18,"insertions":194,"deletions":1,"files":["jc/parsers/time.py","tests/fixtures/osx-10.14.6/time-l.json","tests/fixtures/osx-10.14.6/time-l.out","tests/fixtures/osx-10.14.6/time-lp.json","tests/fixtures/osx-10.14.6/time-lp.out","tests/fixtures/osx-10.14.6/time-p.json","tests/fixtures/osx-10.14.6/time-p.out","tests/fixtures/osx-10.14.6/time.json","tests/fixtures/osx-10.14.6/time.out","tests/fixtures/ubuntu-18.04/time-p.json","tests/fixtures/ubuntu-18.04/time-p.out","tests/fixtures/ubuntu-18.04/time-verbose.json","tests/fixtures/ubuntu-18.04/time-verbose.out","tests/fixtures/ubuntu-18.04/time.json","tests/fixtures/ubuntu-18.04/time.out","tests/fixtures/ubuntu-18.04/time2.json","tests/fixtures/ubuntu-18.04/time2.out","tests/test_time.py"],"file_stats":[{"name":"jc/parsers/time.py","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/time-l.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/time-l.out","lines_changed":15},{"name":"tests/fixtures/osx-10.14.6/time-lp.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/time-lp.out","lines_changed":17},{"name":"tests/fixtures/osx-10.14.6/time-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/time-p.out","lines_changed":3},{"name":"tests/fixtures/osx-10.14.6/time.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/time.out","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time-p.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/time-verbose.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time-verbose.out","lines_changed":23},{"name":"tests/fixtures/ubuntu-18.04/time.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/time2.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time2.out","lines_changed":2},{"name":"tests/test_time.py","lines_changed":118}]},"message":"add TypeError to except block. add /usr/bin/time tests"},{"commit":"fc4082a03feb5645a1ad687908782a2584a58956","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":131,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":131}]},"message":"remove old parse_datetime_to_timestamp function"},{"commit":"c8655565ff8718f0f14d41696b81e6539529dde1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"use new timestamp class"},{"commit":"638f879f16c9e87edb60953f4fd0b1c7ad92f277","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":5}]},"message":"use new timestamp class"},{"commit":"1d221bf7e6128d57bd769c0fe8f37f7a94da8cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/who.py","lines_changed":3}]},"message":"use new timestamp class"},{"commit":"60ea71f0ef931dccf09e6eb0cb737ddad0b47f0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/timedatectl.py"],"file_stats":[{"name":"jc/parsers/timedatectl.py","lines_changed":3}]},"message":"use new timestamp class"},{"commit":"d8bdd35a3f462efcdc871426309299e8aefb0a79","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":5}]},"message":"use new timestamp class"},{"commit":"7463891c53f3670710dfa72ed1422431c274fe4a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":6}]},"message":"use new timestamp class"},{"commit":"7537aec76fa07384c4439f34c50d4e3f001c0dfa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":8,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":16}]},"message":"use jc.utils.timestamp instead of jc.utils.parse_datetime_to_timestamp()"},{"commit":"62234e39a8533362a20f106c64326ed69f430006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":8,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":13}]},"message":"use jc.utils.timestamp instead of jc.utils.parse_datetime_to_timestamp()"},{"commit":"be004b7b3fe9217160c6418907e7d8aad10e5fae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":172,"deletions":15,"files":["jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":155},{"name":"tests/test_utils.py","lines_changed":32}]},"message":"make parse_datetime_to_timestamp function a class called timestamp for easier use"},{"commit":"82539444b24169b2eb762485ed032fc968a81f71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":23,"deletions":21,"files":["docs/parsers/time.md","jc/parsers/time.py"],"file_stats":[{"name":"docs/parsers/time.md","lines_changed":1},{"name":"jc/parsers/time.py","lines_changed":43}]},"message":"fix indentation for int and float conversions. add real_time field to schema"},{"commit":"a571d3cbafd5048d1d59070e1791398ae410197f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/time.md","jc/parsers/time.py"],"file_stats":[{"name":"docs/parsers/time.md","lines_changed":2},{"name":"jc/parsers/time.py","lines_changed":2}]},"message":"fix typo"},{"commit":"a038c14c23ea27264df61a38e0301de8d1fa1b9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":8,"deletions":8,"files":["EXAMPLES.md","docs/parsers/time.md","jc/parsers/time.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":4},{"name":"jc/parsers/time.py","lines_changed":10}]},"message":"change microseconds to centiseconds"},{"commit":"25a85d874cd2b57a7700b0c2dca61132127732b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"update docs"},{"commit":"884c36ff42df4f580c8e2b4705def8e4c1182e39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":536,"deletions":1,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","docs/parsers/iw_scan.md","docs/parsers/time.md","jc/cli.py","jc/parsers/time.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":36},{"name":"README.md","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":163},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/time.py","lines_changed":332}]},"message":"add /usr/bin/time parser"},{"commit":"b98e72b8b4eda0ab5ede7725226e61634af572eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add ls parser info"},{"commit":"05885c0096b5ee142ecff2d17e37c446518998a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":931,"deletions":18,"files":["docs/parsers/ls.md","jc/parsers/ls.py","tests/fixtures/ubuntu-18.04/ls-l-iso.json","tests/fixtures/ubuntu-18.04/ls-l-iso.out","tests/test_ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":22},{"name":"jc/parsers/ls.py","lines_changed":31},{"name":"tests/fixtures/ubuntu-18.04/ls-l-iso.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-l-iso.out","lines_changed":883},{"name":"tests/test_ls.py","lines_changed":12}]},"message":"add epoch and epoch_utc timestamps"},{"commit":"4c9761231af897658c3a2c0abcc476aa8b43d1b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":118,"deletions":81,"files":["CHANGELOG","EXAMPLES.md","README.md","docs/parsers/dig.md","jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":46},{"name":"README.md","lines_changed":14},{"name":"docs/parsers/dig.md","lines_changed":50},{"name":"jc/parsers/dig.py","lines_changed":56},{"name":"tests/fixtures/centos-7.7/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig-x.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig.json","lines_changed":2},{"name":"tests/fixtures/generic/dig-answer-spaces.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-x.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig.json","lines_changed":2}]},"message":"add when_epoch and when_epoch_utc fields"},{"commit":"656eaa150861948091ef9d6323805c2698039bc6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"1560dcddcf82f55fffce22d1b46d372b25a9d0fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"add acpi, upower parsers and -v version option"},{"commit":"08d4cd4870c7acaf3a453d1400b64d77d462437b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":114,"deletions":43,"files":["EXAMPLES.md","docs/parsers/acpi.md","jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.json","tests/fixtures/generic/acpi-V2.json","tests/fixtures/generic/acpi-V3.json","tests/fixtures/generic/acpi-V4.json"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":34},{"name":"docs/parsers/acpi.md","lines_changed":50},{"name":"jc/parsers/acpi.py","lines_changed":65},{"name":"tests/fixtures/generic/acpi-V.json","lines_changed":2},{"name":"tests/fixtures/generic/acpi-V2.json","lines_changed":2},{"name":"tests/fixtures/generic/acpi-V3.json","lines_changed":2},{"name":"tests/fixtures/generic/acpi-V4.json","lines_changed":2}]},"message":"add time calculations to acpi parser"},{"commit":"9767a50cededb140575e195abf79ce49c4f53789","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":48,"deletions":46,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/who.md","jc/parsers/who.py","jc/utils.py","tests/fixtures/centos-7.7/who-a.json","tests/fixtures/centos-7.7/who.json","tests/fixtures/osx-10.14.6/who-a.json","tests/fixtures/osx-10.14.6/who.json","tests/fixtures/ubuntu-18.04/who-a.json","tests/fixtures/ubuntu-18.04/who.json","tests/test_utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":37},{"name":"docs/parsers/who.md","lines_changed":18},{"name":"jc/parsers/who.py","lines_changed":23},{"name":"jc/utils.py","lines_changed":1},{"name":"tests/fixtures/centos-7.7/who-a.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/who.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/who-a.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/who.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/who-a.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/who.json","lines_changed":2},{"name":"tests/test_utils.py","lines_changed":2}]},"message":"update who parser to add epoch naive timestamp"},{"commit":"cd86890ed1493644e391e52e33561e9a77631a51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"add website to info and use variables for version info"},{"commit":"ba0dd3b9ca98a042c772898302fcfe5fdc84f79a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":4}]},"message":"add parse_timedate_to_timestamp test for format 7300"},{"commit":"8d7fa07ffd50f38336a448eb506a76d9d4849a6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":11,"files":["tests/fixtures/centos-7.7/timedatectl.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/timedatectl.json","lines_changed":12}]},"message":"unformat json"},{"commit":"cade1bfe6e56b5926898b7204e911885efebd5a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":2,"files":["tests/fixtures/centos-7.7/timedatectl.json","tests/fixtures/ubuntu-18.04/timedatectl.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/timedatectl.json","lines_changed":12},{"name":"tests/fixtures/ubuntu-18.04/timedatectl.json","lines_changed":2}]},"message":"update timedatectl tests for new epoch_utc field"},{"commit":"daec4ab0a7f572e872b27b043d51f68e5e06300f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":20,"deletions":4,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/timedatectl.md","jc/parsers/timedatectl.py","jc/utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"EXAMPLES.md","lines_changed":3},{"name":"docs/parsers/timedatectl.md","lines_changed":6},{"name":"jc/parsers/timedatectl.py","lines_changed":11},{"name":"jc/utils.py","lines_changed":1}]},"message":"add epoch_utc field to timedatectl parser"},{"commit":"3c96bc319615c824a06c388e9e3c1d68a9bf4084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":2}]},"message":"version bump"},{"commit":"7f7d8d4bd6f37015b11bac60a7bd99e8d3eca108","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":0,"files":["docs/parsers/stat.md","jc/parsers/stat.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":4}]},"message":"update stat docs"},{"commit":"47263661a41987f334fd484e866e0aa8859cde5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":2,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":20}]},"message":"update stat example"},{"commit":"4c42a086d206919dfe4f1c0801fe4fb1027cb1cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":6,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":7}]},"message":"clean up debug code"},{"commit":"5d2541a5c4bc93f3943a491c76df7f8d4e2cf44b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":5}]},"message":"remove auto c locale and use a manual format rule for windows and linux compatibility"},{"commit":"d91d170b49bfc88c0b2fb54475705c038172f1c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"try manual c locale format for windows"},{"commit":"6d1f4584a9ccd0f0f7ed4fdf408576a9e7f5046b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":4}]},"message":"try manually setting time format for windows compatibility"},{"commit":"1d76d96bcf4185cffb7066bec637913099399db5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":4}]},"message":"debug windows issue"},{"commit":"e8847c998c91131acf5ee0f6485e9976c0fce3ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["tests/fixtures/centos-7.7/stat.json","tests/fixtures/freebsd12/stat.json","tests/fixtures/osx-10.14.6/stat.json","tests/fixtures/ubuntu-18.04/stat.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/stat.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/stat.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/stat.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/stat.json","lines_changed":2}]},"message":"update stat tests"},{"commit":"da88e49bae2f3fecff623f52c20bf994b653583e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":69,"deletions":29,"files":["docs/parsers/stat.md","jc/parsers/stat.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":76},{"name":"jc/parsers/stat.py","lines_changed":22}]},"message":"add new examples"},{"commit":"65c3a12e5422782df40489c3c431677f5657dbf5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":35,"deletions":24,"files":["jc/parsers/stat.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":58},{"name":"jc/utils.py","lines_changed":1}]},"message":"simplify None data scenario"},{"commit":"d8d600cc36bde4e6216b935f87a765599e896714","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add reference to -h for help"},{"commit":"507999b117b024fed1ccf067bd5dc411dbeb268c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":34,"deletions":19,"files":["docs/utils.md","jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":32},{"name":"jc/utils.py","lines_changed":13},{"name":"tests/test_utils.py","lines_changed":8}]},"message":"add stat command timestamp detection"},{"commit":"8ad164eb340e135eeeb10b721172916182f37e30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":6}]},"message":"fix tests for compact output"},{"commit":"a507df140b245b83b1c46e8462b44e1145c42f2a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add compact json info"},{"commit":"8912a99986a977ee6ca7bbe2368f5033644577b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"make default json output more compact"},{"commit":"1953f9882890cd0e8c515d43ce28c96f918b0ab4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"add version info. add json now supports unicode output"},{"commit":"7515218ddd2cdcfcebd67850140e842f2f121226","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":10,"deletions":14,"files":["jc/cli.py","jc/utils.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8},{"name":"jc/utils.py","lines_changed":16}]},"message":"use jc.utils for all warning and error messages. simply error and warning formatting."},{"commit":"36c11201366cefedee4244fb71a4a9cc6507e6ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"formatting"},{"commit":"8fa0fe64d8418093c7f28cdc70a7f409956aeb04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":10}]},"message":"add -v to helptext. minor formatting"},{"commit":"c1a8201b140c65579ff9f8427322b67653bf3006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":4}]},"message":"add copyright"},{"commit":"398bbac48c8a716b1872843d671aa6ceaeba6a78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"simplify return value for parse_datetime_to_timestamp()"},{"commit":"ea71a42bbdd9b09a457727cfe763054625f7901a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"formatting"},{"commit":"1c16d25b17a7282a62a5ebd9755df5569c57435f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":30,"deletions":9,"files":["README.md","jc/cli.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"jc/cli.py","lines_changed":35}]},"message":"add version option (-v) and copyright information. add 'ensure_ascii=False' to json dumps to properly show UTF-8 copyright character"},{"commit":"9d12ded889f656656267cbf7a91d71267201f736","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"help description change"},{"commit":"5312701515ecb3a10598bb9dcf2f73b7eae71b93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add - make all external python requirements optional"},{"commit":"808c7bc0a94ecfd160ee2b257e5feec347829a5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/xml.py"],"file_stats":[{"name":"jc/parsers/xml.py","lines_changed":10}]},"message":"make xmltodict library optional"},{"commit":"4d394015f458f284d052ce2c1a0c8492916c5b3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":10}]},"message":"make ruamel.yaml library optional"},{"commit":"3638298af8ebc01d54aa3ab5668d0adedca957e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":53,"deletions":44,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":97}]},"message":"make pygments library optional"},{"commit":"5f00973e400629bd68c0ab60ed9005410278f855","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":2}]},"message":"remove parenthesis to normalize text for naive timezone detection"},{"commit":"0f6e2c14fcb69f664c29083ec5207326f842dfdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":9}]},"message":"simplify timestamp failure logic"},{"commit":"51813da61994226ba40478825d47f80c23413349","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":4,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":13}]},"message":"add offset timezones. fix timestamp logic on conversion failure"},{"commit":"e7751322ea195cac7f1921ba8e0364c442065d20","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":10}]},"message":"formatting"},{"commit":"26ef29843784ade3d55410be13300dd6f4c06890","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":6,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":16}]},"message":"change return to always include the entire object but all keys may be None if conversion fails"},{"commit":"badaf8ce73d7deb0ec2be244e27b4bf8cddbea19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":14,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":28}]},"message":"comment formatting"},{"commit":"b123a622039f3cc32643a3bfc0766154d660f8bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":9}]},"message":"move locale change formats to the end of the list"},{"commit":"cfd77e42522aa2ebeada9f45ac99bd1d3414f782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":1}]},"message":"reset locale to None on exception"},{"commit":"38f814072eac5370059f1b4203316eee41cf535b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":8,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":34}]},"message":"better normalization of datetime string. better UTC detection. More formats supported with detected locale."},{"commit":"a0db7754e384a0c95f2099bf894f3a22bd33c002","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add nixos install info"},{"commit":"f07620afc7dc0d0d605eb483ef36c5979b33cdfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":18,"deletions":7,"files":["README.md","jc/__init__.py","jc/cli.py"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"jc/__init__.py","lines_changed":3},{"name":"jc/cli.py","lines_changed":21}]},"message":"move version to jc.__init__.py\nadd -h option for help instead of always showing on error\nuse jc.utils.error_message for the following errors: missing/incorrect arguments, parser not found, missing piped data"},{"commit":"c1b0d27752726989c6051f683a1194941bee598c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":10,"files":["runtests.sh"],"file_stats":[{"name":"runtests.sh","lines_changed":10}]},"message":"remove old commented commands"},{"commit":"430a5108aa265d4df0e4584eade54759da864c61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":19,"deletions":60,"files":["runtests.sh","tests/test_last.py","tests/test_last2.py"],"file_stats":[{"name":"runtests.sh","lines_changed":16},{"name":"tests/test_last.py","lines_changed":23},{"name":"tests/test_last2.py","lines_changed":40}]},"message":"move all tests to github actions"},{"commit":"111ce92fc9c33b82c7d1a1664dda046ea5993f6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":0,"deletions":1,"files":["tests/{localtest_date.py => test_date.py}","tests/{localtest_last.py => test_last2.py}","tests/{localtest_upower.py => test_upower.py}","tests/test_utils.py"],"file_stats":[{"name":"tests/{localtest_date.py => test_date.py}","lines_changed":0},{"name":"tests/{localtest_last.py => test_last2.py}","lines_changed":0},{"name":"tests/{localtest_upower.py => test_upower.py}","lines_changed":0},{"name":"tests/test_utils.py","lines_changed":1}]},"message":"attempt all tests in github actions with timezone correction"},{"commit":"c851e8a58d98b2a4907cf1e7cf7c7d8d8dc04dc6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":1}]},"message":"force github action"},{"commit":"39f4bcd9b41450068903ea2843508586eccdf709","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"Change Windows timezone\n\nuse \"Pacific Standard Time\""},{"commit":"4a610c4c81493788b8351e8c74aabe819c981c02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":1}]},"message":"force github action"},{"commit":"89ee11945d4e2db107a33ef0d61e0c6015ac8ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"Change timezone provider\n\nuses: szenius/set-timezone@v1.0"},{"commit":"dadb09b74a69d1852f8433e0e32ccdd67bd91181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":1}]},"message":"force github action"},{"commit":"1b1f638b97dc5e6f2767183eb363b79ae3c9b3c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":8}]},"message":"Change timezone change provider\n\nchange to actions/set-timezone-action"},{"commit":"794fc4ed44d1565514303090403d68ba5d639cb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":36,"deletions":8,"files":["jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":16},{"name":"tests/test_utils.py","lines_changed":28}]},"message":"add parse_datetime_to_timestamp() tests"},{"commit":"72f735bf9211d7beddcf58819fe465722f5d7c5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":4}]},"message":"Set Timezone to America/Los_Angeles\n\nUsing zcong1993/setup-timezone"},{"commit":"912877f25ad562ed4cafe7b2d7446bd48b477ea2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"additional timezone info"},{"commit":"2772c5ae436ea437d833003372d53a3d3f955ea0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"formatting"},{"commit":"a7ad24d2cb61d84cf2846f8fa43af31f0597043e","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","commit_by":"Rasheed Elsaleh","commit_by_email":"rasheed@rebelliondefense.com","stats":{"files_changed":13,"insertions":772,"deletions":0,"files":["docgen.sh","docs/parsers/dir.md","jc/cli.py","jc/parsers/dir.py","tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-C.out","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-ODTC.out","tests/fixtures/windows-10/dir-Q.json","tests/fixtures/windows-10/dir-Q.out","tests/fixtures/windows-10/dir.json","tests/fixtures/windows-10/dir.out","tests/test_dir.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/dir.md","lines_changed":286},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/dir.py","lines_changed":332},{"name":"tests/fixtures/windows-10/dir-C.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-C.out","lines_changed":21},{"name":"tests/fixtures/windows-10/dir-ODTC.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-ODTC.out","lines_changed":21},{"name":"tests/fixtures/windows-10/dir-Q.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-Q.out","lines_changed":21},{"name":"tests/fixtures/windows-10/dir.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir.out","lines_changed":21},{"name":"tests/test_dir.py","lines_changed":64}]},"message":"Add dir parser\n\nAdd usage commands\n\nFix example options\n\nupdate dir.md"},{"commit":"a364a6a9faeb6aa290b790f3dec74e92b8670534","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"add note regarding calculated timestamps"},{"commit":"7b2dc86a8d974e7984fe2540f56a66c2b9386acd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":19,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":42}]},"message":"update last example with new timestamp fields"},{"commit":"ad645636d07d0423253f19068a22b2a28251b05f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":86,"deletions":50,"files":["CHANGELOG","EXAMPLES.md","README.md","docs/parsers/uptime.md","jc/parsers/uptime.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":9},{"name":"EXAMPLES.md","lines_changed":19},{"name":"README.md","lines_changed":19},{"name":"docs/parsers/uptime.md","lines_changed":50},{"name":"jc/parsers/uptime.py","lines_changed":39}]},"message":"update uptime docs"},{"commit":"2f2f297b29fbe3172647a81db084b3564a441d40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["tests/fixtures/centos-7.7/uptime.json","tests/fixtures/osx-10.11.6/uptime.json","tests/fixtures/osx-10.14.6/uptime.json","tests/fixtures/ubuntu-18.04/uptime.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/uptime.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/uptime.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/uptime.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/uptime.json","lines_changed":2}]},"message":"update uptime fixtures with new fields"},{"commit":"099ae3fde03f8157298f6b412bdddb8bd56da09a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":22,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":48}]},"message":"fix issue when there is no data"},{"commit":"e9febe98ac5ec0e03791c5b6794446a2c3312fb1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["runtests.sh"],"file_stats":[{"name":"runtests.sh","lines_changed":2}]},"message":"add localtest partition lines for readability"},{"commit":"5fbd07cccf9fb697b996dcc3949eef5b1c09e655","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":59,"deletions":26,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":85}]},"message":"rewrite of uptime parser including new fields"},{"commit":"5fed4698c2c1f1b7e05c5b4c51639f818e049b53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":6,"files":["docs/parsers/last.md","jc/parsers/last.py"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":4},{"name":"jc/parsers/last.py","lines_changed":7}]},"message":"update docs and version number"},{"commit":"ed7eb0983a4dfcc1d66a2957be3e10b2203d909e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":8}]},"message":"use parse_datetime_to_timestamp function instead of custom format string"},{"commit":"90c7e18e5fc5ea9fcf6157cc2656f47193d78411","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":11,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":27}]},"message":"update date example"},{"commit":"953ab5c3bd0c8b6eef29b717edaf1aa2380c2b93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":0,"files":["runtests.sh","tests/{test_upower.py => localtest_upower.py}"],"file_stats":[{"name":"runtests.sh","lines_changed":1},{"name":"tests/{test_upower.py => localtest_upower.py}","lines_changed":0}]},"message":"make upower tests local only"},{"commit":"699c97d8a07f7575454746159ac4d19981cd1a5c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add last parser info"},{"commit":"e4ca0de92a689ce93b91d86106a5da590226855a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":100,"deletions":0,"files":["tests/fixtures/generic/upower-i-c-locale.json","tests/fixtures/generic/upower-i-non-utc.json","tests/fixtures/generic/upower-i-utc.json",".../{upower-i-utc.out2 => upower-i-utc.out}","tests/fixtures/ubuntu-18.04/upower-d-clocale.json","tests/fixtures/ubuntu-18.04/upower-d.json","tests/fixtures/ubuntu-18.04/upower-i.json","tests/test_upower.py"],"file_stats":[{"name":"tests/fixtures/generic/upower-i-c-locale.json","lines_changed":1},{"name":"tests/fixtures/generic/upower-i-non-utc.json","lines_changed":1},{"name":"tests/fixtures/generic/upower-i-utc.json","lines_changed":1},{"name":".../{upower-i-utc.out2 => upower-i-utc.out}","lines_changed":0},{"name":"tests/fixtures/ubuntu-18.04/upower-d-clocale.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/upower-d.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/upower-i.json","lines_changed":1},{"name":"tests/test_upower.py","lines_changed":94}]},"message":"add upower tests"},{"commit":"04745a36b84cc79e56bde2a0e92a4ee9ab4a1538","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":5,"files":["CHANGELOG","jc/utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":12},{"name":"jc/utils.py","lines_changed":1}]},"message":"doc update"},{"commit":"5936940532b8b753e67c9f5cd9287f34cc84ae9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":136,"deletions":186,"files":["docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date-after-midnight.json","tests/fixtures/generic/date-before-midnight.json","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/fixtures/ubuntu-20.04/date2.json"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":74},{"name":"jc/parsers/date.py","lines_changed":238},{"name":"tests/fixtures/generic/date-after-midnight.json","lines_changed":2},{"name":"tests/fixtures/generic/date-before-midnight.json","lines_changed":2},{"name":"tests/fixtures/generic/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date2.json","lines_changed":2}]},"message":"rewrite of date parser using datetime library"},{"commit":"b3eb064b6753d6e894884e1c16054630c2396fe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":4}]},"message":"clarify format definition comments"},{"commit":"e4b41057e302074ac2a81ad8c36b6f95cd6b7db2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":24,"deletions":0,"files":[".../{upower-i.out => upower-i-c-locale.out}","tests/fixtures/generic/upower-i-non-utc.out",".../generic/{upower-i2.out => upower-i-utc.out2}"],"file_stats":[{"name":".../{upower-i.out => upower-i-c-locale.out}","lines_changed":0},{"name":"tests/fixtures/generic/upower-i-non-utc.out","lines_changed":24},{"name":".../generic/{upower-i2.out => upower-i-utc.out2}","lines_changed":0}]},"message":"update upower fixture names"},{"commit":"1d41c46cc762ab0c78b819e56db7df39f1111d5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":34,"deletions":5,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":39}]},"message":"normalize datetime string to remove all timezones except UTC"},{"commit":"a5c444587b3f0874fcc2833dc4e759c2dc1c7834","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":28,"deletions":0,"files":["tests/fixtures/generic/date-after-midnight.json","tests/fixtures/generic/date-after-midnight.out","tests/fixtures/generic/date-before-midnight.json","tests/fixtures/generic/date-before-midnight.out","tests/localtest_date.py"],"file_stats":[{"name":"tests/fixtures/generic/date-after-midnight.json","lines_changed":1},{"name":"tests/fixtures/generic/date-after-midnight.out","lines_changed":1},{"name":"tests/fixtures/generic/date-before-midnight.json","lines_changed":1},{"name":"tests/fixtures/generic/date-before-midnight.out","lines_changed":1},{"name":"tests/localtest_date.py","lines_changed":24}]},"message":"add before and after midnight date tests"},{"commit":"a56f471be980be16e73d3a91e2b12aad26c6d38c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/fixtures/generic/upower-i2.out"],"file_stats":[{"name":"tests/fixtures/generic/upower-i2.out","lines_changed":2}]},"message":"update fixture to use UTC for better testing"},{"commit":"6a6b26ed8d97014c2a5c7d91a4cd9b23f49530fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":5}]},"message":"fix 12 to 24 hour conversion for midnight cases"},{"commit":"f62446c152d89f2d37b22ffe9d9de5b5c9fa7049","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":10,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":21}]},"message":"rename variables. add another european time format"},{"commit":"56011f1f172344cab2a8e869e7a6df6e45c45874","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":73,"deletions":6,"files":["EXAMPLES.md","docs/parsers/upower.md","jc/parsers/upower.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":63},{"name":"docs/parsers/upower.md","lines_changed":8},{"name":"jc/parsers/upower.py","lines_changed":8}]},"message":"updated upower examples"},{"commit":"6d44091c80318fde6c09cd850e6dc5afde7fe799","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":53,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":66}]},"message":"refactor parse_datetime_to_timestamp()"},{"commit":"440c458eb42925dffe2d7b026279468fa2fa1bb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"no need for ternary clause"},{"commit":"798250af6116441385339806c8f26bc9720ad302","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":18,"deletions":24,"files":["docs/parsers/upower.md","jc/parsers/upower.py"],"file_stats":[{"name":"docs/parsers/upower.md","lines_changed":7},{"name":"jc/parsers/upower.py","lines_changed":35}]},"message":"use jc.utils.parse_datetime_to_timestamp() function for timestamp creation"},{"commit":"c762de29c6491790908451aa20f6aa12fdfa9722","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":32,"deletions":2,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":30},{"name":"jc/utils.py","lines_changed":4}]},"message":"doc updates"},{"commit":"0701e65e97165efd40ab2ae5087897de3588ea32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":106,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":106}]},"message":"add parse_datetime_to_timestamp() function"},{"commit":"209d54e8b5be6476d896cee1a5274bd2b46219e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":5},{"name":"jc/parsers/date.py","lines_changed":5}]},"message":"add hour_24 to schema docs"},{"commit":"2b38462de7d2fa61dd5d2a184e853279f1a9c84b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":33,"deletions":27,"files":["EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":20},{"name":"docs/parsers/date.md","lines_changed":20},{"name":"jc/parsers/date.py","lines_changed":20}]},"message":"update examples"},{"commit":"1e8e5533162cb01053ee25e9dbc709a429e58070","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":31,"deletions":14,"files":["CHANGELOG","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/fixtures/ubuntu-20.04/date2.json","tests/localtest_date.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/date.py","lines_changed":21},{"name":"tests/fixtures/generic/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date2.json","lines_changed":1},{"name":"tests/localtest_date.py","lines_changed":16}]},"message":"add hour_24 field"},{"commit":"ab42e6bb15026d6c46e15197c62bc3e8ef95c80d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":1},{"name":"jc/parsers/date.py","lines_changed":1}]},"message":"formatting"},{"commit":"680288454090f3c48c7f0580cdcb919c0b5a883e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":4}]},"message":"ensure period is always uppercase in dict value. update period documentation"},{"commit":"7cb8577b9655f258f2910e7e7bcf3266d4cbece0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":70,"deletions":48,"files":["docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/ubuntu-20.04/date2.out"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":36},{"name":"jc/parsers/date.py","lines_changed":81},{"name":"tests/fixtures/ubuntu-20.04/date2.out","lines_changed":1}]},"message":"correct epoch_utc calculation. Fix for 12 hour vs. 24 hour representation"},{"commit":"55810ccd1f17ef6a4b1cb72fc21f6cf990ef8bb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":1}]},"message":"set epoch_dt conversion again if not C locale"},{"commit":"f9921720cd0b9b0d76d66e6eb5bfe43481f5f52b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":4,"deletions":94,"files":["runtests.sh","tests/test_date.py","tests/test_last2.py"],"file_stats":[{"name":"runtests.sh","lines_changed":8},{"name":"tests/test_date.py","lines_changed":48},{"name":"tests/test_last2.py","lines_changed":42}]},"message":"revert to local testing for naive datetime objects"},{"commit":"cda1ebd271aa8fd1b716054a2149f876d8087230","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["tests/test_date.py","tests/test_last2.py"],"file_stats":[{"name":"tests/test_date.py","lines_changed":2},{"name":"tests/test_last2.py","lines_changed":2}]},"message":"try tzset()"},{"commit":"6901e4a23aad0b58cbbfac86c61917115d115dfe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":89,"deletions":3,"files":["runtests.sh","tests/test_date.py","tests/test_last2.py"],"file_stats":[{"name":"runtests.sh","lines_changed":6},{"name":"tests/test_date.py","lines_changed":46},{"name":"tests/test_last2.py","lines_changed":40}]},"message":"try setting timezone env variable before tests to ensure it is the same on all test systems"},{"commit":"6bc21d3c735edc7897e49afd2a5ea9e3aa56d7fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["runtests.sh","tests/{test_date.py => localtest_date.py}","tests/localtest_last.py"],"file_stats":[{"name":"runtests.sh","lines_changed":1},{"name":"tests/{test_date.py => localtest_date.py}","lines_changed":0},{"name":"tests/localtest_last.py","lines_changed":1}]},"message":"fix date parser tests - local tests only since timezones may not match on github actions VMs"},{"commit":"1ef231e26a2898d2a01f341fb92014df92703f72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"add date parser updates"},{"commit":"3cd43f0f985a3b8a4e74bf5632bd8dac92d751c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/upower.md","jc/parsers/upower.py"],"file_stats":[{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":2}]},"message":"formatting"},{"commit":"156501996688e62dd61a8456206218582a6cbe1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":85,"deletions":63,"files":["EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":21},{"name":"docs/parsers/date.md","lines_changed":41},{"name":"jc/parsers/date.py","lines_changed":82},{"name":"tests/fixtures/generic/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date.json","lines_changed":2}]},"message":"fix weekday numbering to be ISO 8601 compliant. Add naive calculated epoch timestamp field"},{"commit":"0a4de2d3a1c235d1ac2d6e59346e77761fe51885","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":2,"files":["docs/parsers/last.md","docs/parsers/upower.md"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":5}]},"message":"add naive datetime calculation info to docs"},{"commit":"a058f6c174e31f5e6040883bb544b83abd88c749","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":2}]},"message":"added naive epoch calculation info to docs"},{"commit":"d8e5d03b01a87704424f5259cf6bd977274fd6ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":33,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":53}]},"message":"naive updated_epoch timestamp calculation added"},{"commit":"9dc62eff2eaaafec89c5b8797d8ca8e4c77a07d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":34,"deletions":21,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":55}]},"message":"remove epoch conversions"},{"commit":"d4fea17c57a97d6914624b06208b9439bf2eb05f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":13,"deletions":6,"files":["docgen.sh","docs/parsers/upower.md","jc/parsers/upower.py"],"file_stats":[{"name":"docgen.sh","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":15}]},"message":"use UTC when calculating epoch timestamp. reset time locale to default after changing"},{"commit":"3dd7a5b77ea708047bc12be9f2caddd9078723f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":230,"deletions":0,"files":["docgen.sh","docs/parsers/upower.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/upower.md","lines_changed":229}]},"message":"add upower docs"},{"commit":"d77c90a3ba2036b216f4a612876ace988eafd217","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":114,"deletions":6,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":120}]},"message":"fix quoted values in detail level. Add examples"},{"commit":"01f0c20df09fd4aa12bd108928b97376b51ef31a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":0,"files":["tests/fixtures/ubuntu-18.04/upower-d-clocale.out"],"file_stats":[{"name":"tests/fixtures/ubuntu-18.04/upower-d-clocale.out","lines_changed":27}]},"message":"add sample using C locale timestamp"},{"commit":"aafbe576b3b754de91591d9ec2dae9e9f827dee4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":137,"deletions":36,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":173}]},"message":"working parser and processor"},{"commit":"bd68ad40345fb1f69be0e0f87dc67134f826cd06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":4}]},"message":"don't modify detail_type value since it is no longer a key"},{"commit":"bfee017c138bb30ec6af836685013b7124028974","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":61,"deletions":20,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":81}]},"message":"made the schema more explicit by hardcoding more items. still working on the schema"},{"commit":"61f532cfd0b7fbf14a58a0fd638bcbfb03fbde72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":12}]},"message":"working history list"},{"commit":"58dbbb75b607d0b29be185c3b8c3f0d8af21ecad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":21,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":30}]},"message":"simplified logic"},{"commit":"8d88b91fcf5060d7d54f687efec3e3a606bab767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":17}]},"message":"move if statements and generalize the history detail detection"},{"commit":"ad39fc60299089f56f37baac71820e50cbe87ed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":268,"deletions":0,"files":["jc/cli.py","jc/parsers/upower.py","tests/fixtures/generic/upower-i.out","tests/fixtures/generic/upower-i2.out","tests/fixtures/ubuntu-18.04/upower-d.out","tests/fixtures/ubuntu-18.04/upower-i.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/upower.py","lines_changed":173},{"name":"tests/fixtures/generic/upower-i.out","lines_changed":32},{"name":"tests/fixtures/generic/upower-i2.out","lines_changed":24},{"name":"tests/fixtures/ubuntu-18.04/upower-d.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-18.04/upower-i.out","lines_changed":11}]},"message":"working upower parser. history lines are ignored"},{"commit":"89f1fd96e6b7aa0acf6272e4f3469005d4f7c6bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":87,"deletions":0,"files":["tests/fixtures/generic/acpi-V.json","tests/fixtures/generic/acpi-V2.json","tests/fixtures/generic/acpi-V3.json","tests/fixtures/generic/acpi-V4.json","tests/fixtures/ubuntu-18.04/acpi-V.json","tests/test_acpi.py"],"file_stats":[{"name":"tests/fixtures/generic/acpi-V.json","lines_changed":1},{"name":"tests/fixtures/generic/acpi-V2.json","lines_changed":1},{"name":"tests/fixtures/generic/acpi-V3.json","lines_changed":1},{"name":"tests/fixtures/generic/acpi-V4.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/acpi-V.json","lines_changed":1},{"name":"tests/test_acpi.py","lines_changed":82}]},"message":"add acpi tests"},{"commit":"bd425f2493b68949c1fa02cd1d3289ec882d9b0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":321,"deletions":2,"files":["CHANGELOG","EXAMPLES.md","docgen.sh","docs/parsers/acpi.md","jc/cli.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":4},{"name":"EXAMPLES.md","lines_changed":58},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/acpi.md","lines_changed":256},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to v1.15.0. Add acpi docs"},{"commit":"46962ff02a0630766a927babc92e11ec91b1f789","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":11,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":12}]},"message":"remove redundant lines"},{"commit":"e4cb88b05166815e8ad03b646bd3f2b1da7f0d4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":1}]},"message":"remove unneeded line-state assignment"},{"commit":"32840703dc1d88412712b08db1c9bdaebbc34450","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":39,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":47}]},"message":"remove redundant code"},{"commit":"1f7aafd0415a79e0547cc6f1c008c1918f8fb460","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":19,"deletions":9,"files":["jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out","tests/fixtures/generic/acpi-V4.out"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":15},{"name":"tests/fixtures/generic/acpi-V.out","lines_changed":1},{"name":"tests/fixtures/generic/acpi-V4.out","lines_changed":12}]},"message":"fix for full charge batter case. Clean up battery object logic"},{"commit":"7378d5dce43f75440cb57903e8ae0c1c615b0782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":1}]},"message":"remove comment"},{"commit":"84f76866cdf76f67b34de999fd987de8a02f0306","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":197,"deletions":3,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":200}]},"message":"working process function"},{"commit":"322da9ea6a1ceea1152d720797adb8f3a7dc1199","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":59,"deletions":12,"files":["jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":67},{"name":"tests/fixtures/generic/acpi-V.out","lines_changed":4}]},"message":"working parser"},{"commit":"58645301ec111bfeb2a618f5f169cc734042dc5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":236,"deletions":1,"files":["jc/cli.py","jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out","tests/fixtures/generic/acpi-V2.out","tests/fixtures/generic/acpi-V3.out","tests/fixtures/ubuntu-18.04/acpi-V.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/acpi.py","lines_changed":191},{"name":"tests/fixtures/generic/acpi-V.out","lines_changed":16},{"name":"tests/fixtures/generic/acpi-V2.out","lines_changed":12},{"name":"tests/fixtures/generic/acpi-V3.out","lines_changed":13},{"name":"tests/fixtures/ubuntu-18.04/acpi-V.out","lines_changed":2}]},"message":"add acpi command parser"},{"commit":"1e18dd30a824b0463f0cad86e0da7094c47d34f9","merge":"20f9b7f cc6a19a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #102 from kellyjonbrazil/dev\n\nDev v1.14.4"},{"commit":"cc6a19adccea3e10243a166b87d852b6f95414b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"fix typo in comments"},{"commit":"2a5588b177a24d5b78a4b5a515aba515804b7baa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":13,"deletions":3,"files":["CHANGELOG","jc/cli.py","jc/parsers/yaml.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":5},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":7},{"name":"setup.py","lines_changed":2}]},"message":"packaging fix for yaml parser and pyoxidizer"},{"commit":"20f9b7f88b97ed68aba46e102b8c7b72443b9c85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"fix typo"},{"commit":"d7e32313cd9776b4a6af38cc2819d6e4ef8c0d55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"fix typo"},{"commit":"fb5654d3c4549e84940e2518f2d214debdd42d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"258f1433b36a7ee117ac43953edb4fe964603e7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add locale info to readme"},{"commit":"fb723ae8bd7bb51f9a4bab380ec1bc54cda0445b","merge":"87b506d 283b89e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #101 from kellyjonbrazil/dev\n\nDev v1.14.3"},{"commit":"283b89e37c38a3082203e43e38569c8b0bb11e12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["CHANGELOG","jc/parsers/dig.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/dig.py","lines_changed":6}]},"message":"simplify answer data logic"},{"commit":"f450f9eb8b7d382af316e88301e72af01a018be9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":74,"deletions":0,"files":["tests/fixtures/centos-7.7/hciconfig-a.json","tests/fixtures/centos-7.7/hciconfig.json","tests/fixtures/ubuntu-20.04/hciconfig-a.json","tests/fixtures/ubuntu-20.04/hciconfig.json","tests/test_hciconfig.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/hciconfig-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/hciconfig.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.04/hciconfig-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.04/hciconfig.json","lines_changed":1},{"name":"tests/test_hciconfig.py","lines_changed":70}]},"message":"add hciconfig tests"},{"commit":"b3f8cf99a4874335c6b43e105e0c1562c08256dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":15,"deletions":15,"files":["jc/parsers/hciconfig.py"],"file_stats":[{"name":"jc/parsers/hciconfig.py","lines_changed":30}]},"message":"work for both tabs and spaces"},{"commit":"4301ea8caea7c14f59bcddf09668d0198e1115a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/hciconfig.py"],"file_stats":[{"name":"jc/parsers/hciconfig.py","lines_changed":1}]},"message":"remove debug line"},{"commit":"c672d1c174a42ce44544dfaec0ebcf3c30fd7acf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":903,"deletions":22,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","docs/parsers/hciconfig.md","jc/parsers/hciconfig.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"EXAMPLES.md","lines_changed":126},{"name":"README.md","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/hciconfig.md","lines_changed":358},{"name":"jc/parsers/hciconfig.py","lines_changed":414},{"name":"man/jc.1","lines_changed":22}]},"message":"initial working hciconfig parser"},{"commit":"229e953a38471cdd41af0810577d324329840a4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":205,"deletions":2,"files":["jc/cli.py","jc/parsers/hciconfig.py","setup.py","tests/fixtures/centos-7.7/hciconfig-a.out","tests/fixtures/centos-7.7/hciconfig.out","tests/fixtures/ubuntu-20.04/hciconfig-a.out","tests/fixtures/ubuntu-20.04/hciconfig.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/hciconfig.py","lines_changed":142},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/hciconfig-a.out","lines_changed":10},{"name":"tests/fixtures/centos-7.7/hciconfig.out","lines_changed":6},{"name":"tests/fixtures/ubuntu-20.04/hciconfig-a.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-20.04/hciconfig.out","lines_changed":17}]},"message":"initial add of hciconfig parser"},{"commit":"87b506dc9b4831d11b4fd04fd6849532db074f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":47,"deletions":4,"files":["CHANGELOG","jc/cli.py","jc/parsers/dig.py","setup.py","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/generic/dig-answer-spaces.out","tests/test_dig.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":8},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/generic/dig-answer-spaces.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-answer-spaces.out","lines_changed":23},{"name":"tests/test_dig.py","lines_changed":12}]},"message":"fix for spaces in dig answer data"},{"commit":"15c9002d9eff0f52d873fb3ab35dfafd03a8e919","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"simplify logic by taking out 'not' in JC_COLORS parsing"},{"commit":"042aaa61b96fc8472a8a460c49bde4cbbc359094","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"minor updates"},{"commit":"ef856c6ba5774cd8ec23acd71496846e794e3872","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"clarify -q option"},{"commit":"9cf5be73e3f975132d1ffbef412638b941a5664f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"typo fix"},{"commit":"63fc149e2a097cbde60c2ce1aeb102d9becabd9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"typo fix"},{"commit":"3c25839350800c7e7d2c48fc032bb21efa0ac213","merge":"03c0295 58246e3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #98 from kellyjonbrazil/dev\n\nDev v1.14.1"},{"commit":"58246e33b71bae0ca4a42ad5bdf31134948b1014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","README.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"README.md","lines_changed":3}]},"message":"update compatibility info and changelog date"},{"commit":"8b1407c7068e2105a83992bbb026138ea67bc07c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":59,"deletions":10,"files":["runtests.sh","tests/localtest_last.py","tests/test_last.py"],"file_stats":[{"name":"runtests.sh","lines_changed":6},{"name":"tests/localtest_last.py","lines_changed":41},{"name":"tests/test_last.py","lines_changed":22}]},"message":"pull env-specific tests from CI/CD and run locally only"},{"commit":"2fde4a4e2299b98a9958e3a55849c6791e4b17dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["EXAMPLES.md","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"doc updates"},{"commit":"60b9e9798286121399d0f8b75d63ab0f3312c9bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":80,"deletions":38,"files":["docs/parsers/last.md","jc/parsers/last.py","tests/fixtures/centos-7.7/last-crash.json","tests/fixtures/centos-7.7/last-w.json","tests/fixtures/centos-7.7/last-wF.json","tests/fixtures/centos-7.7/last-wF.out","tests/fixtures/centos-7.7/last.json","tests/fixtures/fedora32/last.json","tests/fixtures/osx-10.14.6/last.json","tests/fixtures/ubuntu-18.04/last-w.json","tests/fixtures/ubuntu-18.04/last.json","tests/fixtures/ubuntu-20.04/last-F.json"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":37},{"name":"jc/parsers/last.py","lines_changed":57},{"name":"tests/fixtures/centos-7.7/last-crash.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/last-w.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/last-wF.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/last-wF.out","lines_changed":6},{"name":"tests/fixtures/centos-7.7/last.json","lines_changed":2},{"name":"tests/fixtures/fedora32/last.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/last.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/last-w.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/last.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/last-F.json","lines_changed":2}]},"message":"last parser enhancements: augment hostname with CONSOLE for GUI login, add convenience fields when -F is used: login_epoch, logout_epoch, duration_seconds, calculate duration to hours:minutes"},{"commit":"0adac79c0f2a22b31dfef1432a029af06132467b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"Add last parser enhancements"},{"commit":"9f485b5981a2ce49ac699b9dad39993c5605ae18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["jc/parsers/iw_scan.py","tests/fixtures/centos-7.7/iw-scan0.json","tests/fixtures/centos-7.7/iw-scan1.json"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":6},{"name":"tests/fixtures/centos-7.7/iw-scan0.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iw-scan1.json","lines_changed":2}]},"message":"change mac_address fieldname to bssid. Add credit to Phillip"},{"commit":"db17d21b8f9b2f899760e648f1483d33d0bcf47a","merge":"5885b96 996d394","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #97 from pschmitt/iw_scan_fix_space_detection\n\niw_scan: Improve detection of lines starting with spaces"},{"commit":"996d394e89c732f327323ca340fce405bd5fb2e4","author":"Philipp Schmitt","author_email":"philipp@schmitt.co","commit_by":"Philipp Schmitt","commit_by_email":"philipp@schmitt.co","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":3}]},"message":"iw_scan: Improve detection of lines starting with spaces"},{"commit":"5885b960f9b33a95ecec9f4a33233c2f8682fbc4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":2,"files":["CHANGELOG","README.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":2},{"name":"man/jc.1","lines_changed":4}]},"message":"doc updates"},{"commit":"79987b35f332e287567e103f25cf91cb50e040c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2}]},"message":"formatting"},{"commit":"661b3ef311ad26678030c70c11f2f955667311a4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":94,"deletions":2,"files":["EXAMPLES.md","README.md","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":91},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"doc updates"},{"commit":"fb422726a8366c7133f0712d3b05a26620eea785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["tests/fixtures/ubuntu-20.04/last-F.json","tests/fixtures/ubuntu-20.04/last-F.out"],"file_stats":[{"name":"tests/fixtures/ubuntu-20.04/last-F.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/last-F.out","lines_changed":1}]},"message":"update test to add 'down' condition"},{"commit":"4fb6f3ea59c52515926a51a006e65a1c18e57720","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":4}]},"message":"add support for down in addition to crash"},{"commit":"f78fe771e1c2fb4691858fa7f27b1febe5f8c6c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":48,"deletions":0,"files":["tests/fixtures/centos-7.7/iw-scan0.json","tests/fixtures/centos-7.7/iw-scan1.json","tests/test_iw_scan.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/iw-scan0.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iw-scan1.json","lines_changed":1},{"name":"tests/test_iw_scan.py","lines_changed":46}]},"message":"add iw-scan tests"},{"commit":"567b8872538ac9f6b384b98741acd9794229d513","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":252,"deletions":12,"files":["docgen.sh","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/iw_scan.md","lines_changed":160},{"name":"jc/parsers/iw_scan.py","lines_changed":103}]},"message":"doc updates"},{"commit":"e516e6b9466b29d40ec10070dd61551180eeef90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":29,"deletions":1,"files":["jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":30}]},"message":"fix country/environment fields and process int/float conversions"},{"commit":"62748676aae3d5955191ed267215df33a5bd3a4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":225,"deletions":0,"files":["jc/cli.py","jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/iw_scan.py","lines_changed":224}]},"message":"initial iw-scan parser"},{"commit":"7351c72e45242b9eb08c51dea7b6fccf12366dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":402,"deletions":1,"files":["jc/parsers/last.py","tests/fixtures/centos-7.7/last-crash.json","tests/fixtures/centos-7.7/last-crash.out","tests/fixtures/centos-7.7/last-wF.json","tests/fixtures/centos-7.7/last-wF.out","tests/test_last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":10},{"name":"tests/fixtures/centos-7.7/last-crash.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/last-crash.out","lines_changed":184},{"name":"tests/fixtures/centos-7.7/last-wF.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/last-wF.out","lines_changed":184},{"name":"tests/test_last.py","lines_changed":23}]},"message":"add fixes and tests for entries that contain 'crash'"},{"commit":"2b7405c5e21db2488fc48b58f6c65cff947ca95d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":23,"deletions":16,"files":["CHANGELOG","README.md","docs/parsers/last.md","jc/parsers/last.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":6},{"name":"jc/parsers/last.py","lines_changed":6},{"name":"man/jc.1","lines_changed":22}]},"message":"doc updates"},{"commit":"e2c77cb935a5bd95dbe930d424e5a02e88e1fa76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":15,"deletions":1,"files":["jc/parsers/last.py","tests/fixtures/ubuntu-20.04/last-F.json","tests/test_last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":3},{"name":"tests/fixtures/ubuntu-20.04/last-F.json","lines_changed":1},{"name":"tests/test_last.py","lines_changed":12}]},"message":"add test for last -F output"},{"commit":"7ac621e4c916373a03f379425033cb2d81a03578","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":36,"deletions":6,"files":["docs/parsers/last.md","jc/parsers/last.py","tests/fixtures/ubuntu-20.04/last-F.out"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":6},{"name":"jc/parsers/last.py","lines_changed":30},{"name":"tests/fixtures/ubuntu-20.04/last-F.out","lines_changed":6}]},"message":"add -F support"},{"commit":"d8b5d6c66ced19dc16f2b4975d2293a903732ffe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/cli.py","setup.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to 1.14.1"},{"commit":"22b461eb4b1ca86ea9e8c1fde8a2c312d1526b5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":47,"deletions":12,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/test_date.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":1},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":40},{"name":"tests/fixtures/generic/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date.json","lines_changed":1},{"name":"tests/test_date.py","lines_changed":12}]},"message":"Add period field for en_US.UTF-8 locale"},{"commit":"b37ee8555a2a108625a834a7990bc3320e79b08d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":6}]},"message":"changelog update"},{"commit":"1d0ad2f045733c5c690738d49951fdb9bcd3d66d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":123,"insertions":312,"deletions":312,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat_freebsd_osx.py","jc/parsers/netstat_linux.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":6},{"name":"docs/parsers/arp.md","lines_changed":6},{"name":"docs/parsers/blkid.md","lines_changed":6},{"name":"docs/parsers/cksum.md","lines_changed":6},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":6},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":6},{"name":"docs/parsers/dig.md","lines_changed":6},{"name":"docs/parsers/dmidecode.md","lines_changed":6},{"name":"docs/parsers/du.md","lines_changed":6},{"name":"docs/parsers/env.md","lines_changed":6},{"name":"docs/parsers/file.md","lines_changed":6},{"name":"docs/parsers/free.md","lines_changed":6},{"name":"docs/parsers/fstab.md","lines_changed":6},{"name":"docs/parsers/group.md","lines_changed":6},{"name":"docs/parsers/gshadow.md","lines_changed":6},{"name":"docs/parsers/hash.md","lines_changed":6},{"name":"docs/parsers/hashsum.md","lines_changed":6},{"name":"docs/parsers/history.md","lines_changed":6},{"name":"docs/parsers/hosts.md","lines_changed":6},{"name":"docs/parsers/id.md","lines_changed":4},{"name":"docs/parsers/ifconfig.md","lines_changed":6},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":6},{"name":"docs/parsers/jobs.md","lines_changed":6},{"name":"docs/parsers/last.md","lines_changed":6},{"name":"docs/parsers/ls.md","lines_changed":6},{"name":"docs/parsers/lsblk.md","lines_changed":6},{"name":"docs/parsers/lsmod.md","lines_changed":6},{"name":"docs/parsers/lsof.md","lines_changed":6},{"name":"docs/parsers/mount.md","lines_changed":6},{"name":"docs/parsers/netstat.md","lines_changed":6},{"name":"docs/parsers/ntpq.md","lines_changed":6},{"name":"docs/parsers/passwd.md","lines_changed":6},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":6},{"name":"docs/parsers/pip_show.md","lines_changed":6},{"name":"docs/parsers/ps.md","lines_changed":6},{"name":"docs/parsers/route.md","lines_changed":6},{"name":"docs/parsers/shadow.md","lines_changed":6},{"name":"docs/parsers/ss.md","lines_changed":6},{"name":"docs/parsers/stat.md","lines_changed":6},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":6},{"name":"docs/parsers/systemctl_lj.md","lines_changed":6},{"name":"docs/parsers/systemctl_ls.md","lines_changed":6},{"name":"docs/parsers/systemctl_luf.md","lines_changed":6},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":6},{"name":"docs/parsers/wc.md","lines_changed":6},{"name":"docs/parsers/who.md","lines_changed":6},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":6},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":6},{"name":"jc/parsers/arp.py","lines_changed":6},{"name":"jc/parsers/blkid.py","lines_changed":6},{"name":"jc/parsers/cksum.py","lines_changed":6},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"jc/parsers/csv.py","lines_changed":6},{"name":"jc/parsers/date.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":6},{"name":"jc/parsers/dig.py","lines_changed":6},{"name":"jc/parsers/dmidecode.py","lines_changed":6},{"name":"jc/parsers/du.py","lines_changed":6},{"name":"jc/parsers/env.py","lines_changed":6},{"name":"jc/parsers/file.py","lines_changed":6},{"name":"jc/parsers/foo.py","lines_changed":6},{"name":"jc/parsers/free.py","lines_changed":6},{"name":"jc/parsers/fstab.py","lines_changed":6},{"name":"jc/parsers/group.py","lines_changed":6},{"name":"jc/parsers/gshadow.py","lines_changed":6},{"name":"jc/parsers/hash.py","lines_changed":6},{"name":"jc/parsers/hashsum.py","lines_changed":6},{"name":"jc/parsers/history.py","lines_changed":6},{"name":"jc/parsers/hosts.py","lines_changed":6},{"name":"jc/parsers/id.py","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":6},{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":6},{"name":"jc/parsers/jobs.py","lines_changed":6},{"name":"jc/parsers/last.py","lines_changed":6},{"name":"jc/parsers/ls.py","lines_changed":6},{"name":"jc/parsers/lsblk.py","lines_changed":6},{"name":"jc/parsers/lsmod.py","lines_changed":6},{"name":"jc/parsers/lsof.py","lines_changed":6},{"name":"jc/parsers/mount.py","lines_changed":6},{"name":"jc/parsers/netstat.py","lines_changed":6},{"name":"jc/parsers/netstat_freebsd_osx.py","lines_changed":2},{"name":"jc/parsers/netstat_linux.py","lines_changed":2},{"name":"jc/parsers/ntpq.py","lines_changed":6},{"name":"jc/parsers/passwd.py","lines_changed":6},{"name":"jc/parsers/ping.py","lines_changed":4},{"name":"jc/parsers/pip_list.py","lines_changed":6},{"name":"jc/parsers/pip_show.py","lines_changed":6},{"name":"jc/parsers/ps.py","lines_changed":6},{"name":"jc/parsers/route.py","lines_changed":6},{"name":"jc/parsers/shadow.py","lines_changed":6},{"name":"jc/parsers/ss.py","lines_changed":6},{"name":"jc/parsers/stat.py","lines_changed":6},{"name":"jc/parsers/sysctl.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":6},{"name":"jc/parsers/systemctl_lj.py","lines_changed":6},{"name":"jc/parsers/systemctl_ls.py","lines_changed":6},{"name":"jc/parsers/systemctl_luf.py","lines_changed":6},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":6},{"name":"jc/parsers/wc.py","lines_changed":6},{"name":"jc/parsers/who.py","lines_changed":6},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":6}]},"message":"doc fixes"},{"commit":"ceccfb2c815f57f1b6fd81f891d8b495de23f9f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":2036,"deletions":0,"files":["tests/fixtures/centos-7.7/iw-scan0.out","tests/fixtures/centos-7.7/iw-scan1.out","tests/fixtures/ubuntu-20.04/date.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/iw-scan0.out","lines_changed":36},{"name":"tests/fixtures/centos-7.7/iw-scan1.out","lines_changed":1999},{"name":"tests/fixtures/ubuntu-20.04/date.out","lines_changed":1}]},"message":"add test output for iw-scan and date on ubuntu 20.04"},{"commit":"03c02953cd7e3327b391f799c37a2990eb2cb24c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":96,"deletions":0,"files":["docgen.sh","docs/parsers/wc.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/wc.md","lines_changed":95}]},"message":"add wc doc"},{"commit":"f254a0eaa16fcda316f7a75424ee359058204b03","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"9e3b88727cd439e15f235dddb9dd5796e010797a","merge":"439871e b122174","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #91 from kellyjonbrazil/dev\n\nDev v1.14.0"},{"commit":"b12217466e906829d19be4cfd80dfe7cf4008e57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"spelling"},{"commit":"8b9c932f9b05295e63b3e7d0073f243458fd4dd9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"update date"},{"commit":"5986ce03db6fcd1aa0f7b064eaa96c2120c06d2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add printenv info"},{"commit":"a7b0e936e400d2f9e55629e2d722cc002e035e9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"add vdir and printenv info"},{"commit":"cb0221142455a6bcb904fbe9ade657be45815b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":61,"deletions":2,"files":["jc/parsers/wc.py","tests/fixtures/osx-10.14.6/wc-stdin.json","tests/fixtures/osx-10.14.6/wc-stdin.out","tests/test_wc.py"],"file_stats":[{"name":"jc/parsers/wc.py","lines_changed":3},{"name":"tests/fixtures/osx-10.14.6/wc-stdin.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/wc-stdin.out","lines_changed":1},{"name":"tests/test_wc.py","lines_changed":58}]},"message":"add wc tests"},{"commit":"bd443bf39227515ae5f8df65d07b30268dcc90a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/env.py"],"file_stats":[{"name":"jc/parsers/env.py","lines_changed":4}]},"message":"add printenv to env docs"},{"commit":"1f547edd361e66b19ccbcb59f6ba0ae78f6080ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/env.md"],"file_stats":[{"name":"docs/parsers/env.md","lines_changed":2}]},"message":"add printenv to env docs"},{"commit":"e4bac3a493705b09e301ddc90dd1b0cee7467c3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":378,"deletions":0,"files":["CHANGELOG","EXAMPLES.md","README.md","jc/cli.py","jc/parsers/wc.py","tests/fixtures/centos-7.7/wc.json","tests/fixtures/centos-7.7/wc.out","tests/fixtures/osx-10.14.6/wc.json","tests/fixtures/osx-10.14.6/wc.out"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":26},{"name":"README.md","lines_changed":1},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/wc.py","lines_changed":130},{"name":"tests/fixtures/centos-7.7/wc.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/wc.out","lines_changed":67},{"name":"tests/fixtures/osx-10.14.6/wc.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/wc.out","lines_changed":150}]},"message":"add wc parser"},{"commit":"5e6bfa681aff03fbd683f81a9f4daa56b49d1344","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["README.md","docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":6}]},"message":"add vdir info"},{"commit":"276160125e01553c75eaad68530177bcf4f9004d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"add new commands to README"},{"commit":"d4ae5543f2d5f28a0db5b8e2e19993c21c5d960c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":39,"deletions":0,"files":["tests/fixtures/centos-7.7/hash.json","tests/fixtures/centos-7.7/hash.out","tests/test_hash.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/hash.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/hash.out","lines_changed":4},{"name":"tests/test_hash.py","lines_changed":34}]},"message":"add hash tests"},{"commit":"55f360e267fdfcfef0c124ed6b88535cc181a8b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":260,"deletions":0,"files":["CHANGELOG","EXAMPLES.md","docgen.sh","docs/parsers/hash.md","jc/cli.py","jc/parsers/hash.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":71},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/hash.md","lines_changed":78},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/hash.py","lines_changed":108}]},"message":"add hash command parser"},{"commit":"fdedab2a0cf5af15df5803d87302397dd6d71741","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/cksum.py","jc/parsers/hashsum.py"],"file_stats":[{"name":"jc/parsers/cksum.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":2}]},"message":"description updates"},{"commit":"a9be42e3031ab0d697cff67a9e384caa2265a3ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"specify parser warnings for quiet option"},{"commit":"6da9510e46e84ec1cb93384825184d2996cf0e08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":482,"deletions":0,"files":["tests/fixtures/centos-7.7/cksum.json","tests/fixtures/centos-7.7/cksum.out","tests/fixtures/centos-7.7/sum.json","tests/fixtures/centos-7.7/sum.out","tests/fixtures/osx-10.14.6/cksum.json","tests/fixtures/osx-10.14.6/cksum.out","tests/fixtures/osx-10.14.6/sum.json","tests/fixtures/osx-10.14.6/sum.out","tests/test_cksum.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/cksum.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/cksum.out","lines_changed":59},{"name":"tests/fixtures/centos-7.7/sum.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sum.out","lines_changed":58},{"name":"tests/fixtures/osx-10.14.6/cksum.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/cksum.out","lines_changed":145},{"name":"tests/fixtures/osx-10.14.6/sum.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/sum.out","lines_changed":146},{"name":"tests/test_cksum.py","lines_changed":70}]},"message":"add cksum tests"},{"commit":"0431798178740b03cdefececc6df958e5adf62fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":229,"deletions":3,"files":["CHANGELOG","docgen.sh","docs/parsers/cksum.md","docs/parsers/hashsum.md","jc/cli.py","jc/parsers/cksum.py","jc/parsers/hashsum.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/cksum.md","lines_changed":95},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/cksum.py","lines_changed":128},{"name":"jc/parsers/hashsum.py","lines_changed":2}]},"message":"add cksum parser"},{"commit":"62432f3c484e74acb2b2dfd15d448b3f1b5d53c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/hashsum.py"],"file_stats":[{"name":"jc/parsers/hashsum.py","lines_changed":2}]},"message":"update hashsum description"},{"commit":"9fbbc30906b597e6afaf2030015a7a694d85f79e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":0,"files":["docs/parsers/hashsum.md","jc/parsers/hashsum.py"],"file_stats":[{"name":"docs/parsers/hashsum.md","lines_changed":10},{"name":"jc/parsers/hashsum.py","lines_changed":10}]},"message":"add supported commands to docs"},{"commit":"d1567d1f622902053f3df58645b4e39532e0c30a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":104,"deletions":0,"files":["CHANGELOG","docgen.sh","docs/parsers/hashsum.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":4},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/hashsum.md","lines_changed":99}]},"message":"add hashsum documentation"},{"commit":"6ca1f5970b3a518615a54ee7fcbc1bddab2db331","merge":"1c880b9 3b7d54c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"1c880b9e24ca53cd592cec1dbc52301308290fb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_hashsum.py"],"file_stats":[{"name":"tests/test_hashsum.py","lines_changed":2}]},"message":"force git tests"},{"commit":"3b7d54c720dfc93637328cf06eb10a85447c8793","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"add python 3.9"},{"commit":"44a740605705bd0ecfde2a6bcc7a826e1010dcf0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":87,"deletions":0,"files":["tests/fixtures/centos-7.7/md5sum.json","tests/fixtures/centos-7.7/sha256sum.json","tests/fixtures/centos-7.7/sha384sum.json","tests/fixtures/osx-10.14.6/md5.json","tests/fixtures/osx-10.14.6/shasum.json","tests/test_hashsum.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/md5sum.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sha256sum.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sha384sum.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/md5.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/shasum.json","lines_changed":1},{"name":"tests/test_hashsum.py","lines_changed":82}]},"message":"add hashsum tests"},{"commit":"8157dcfdb1868548b7c8ca692e6be25f80bb2c2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":36,"deletions":11,"files":["jc/parsers/hashsum.py"],"file_stats":[{"name":"jc/parsers/hashsum.py","lines_changed":47}]},"message":"fix for files with spaces in the name"},{"commit":"28762aea15cabc9cd8293d725e7f1f0550f8e15d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":524,"deletions":0,"files":["jc/cli.py","jc/parsers/hashsum.py","tests/fixtures/centos-7.7/md5sum.out","tests/fixtures/centos-7.7/sha256sum.out","tests/fixtures/centos-7.7/sha384sum.out","tests/fixtures/osx-10.14.6/md5.out","tests/fixtures/osx-10.14.6/shasum.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/hashsum.py","lines_changed":110},{"name":"tests/fixtures/centos-7.7/md5sum.out","lines_changed":56},{"name":"tests/fixtures/centos-7.7/sha256sum.out","lines_changed":55},{"name":"tests/fixtures/centos-7.7/sha384sum.out","lines_changed":56},{"name":"tests/fixtures/osx-10.14.6/md5.out","lines_changed":104},{"name":"tests/fixtures/osx-10.14.6/shasum.out","lines_changed":142}]},"message":"add hashsum parser"},{"commit":"439871ea9f6b055a407e1faaf47e4f56d1829501","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add ubuntu"},{"commit":"c9180b005c0547c8cbfe4809e66894f1123b0809","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"b14e0725f86853f0113116b1c06f54aaa563f365","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add ansible plugin blog post link"},{"commit":"70fe3dcb4d5b97aba1d6c6dcd5088fecb27af181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"8c554604a42a3ea7ca9131b65c64fd3ceb95f906","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"formatting"},{"commit":"a0a35454bd2831c116cb598c686150b883412f94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add link to the web demo"},{"commit":"e8467e2af5b0c3f14832a9e6d4a96f219c27f3f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"remove extra space"},{"commit":"7515deb5669ef04623e9cbf58653b30c99a96430","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add ansible install command"},{"commit":"ed9e52af241b609ee7f5d1b835c9f6c5306cd3c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"spelling"},{"commit":"592a3804104628c790997747a778b3b39d076dfe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add Ansible note"},{"commit":"1a458d2d5b4c16c0ad90671727ae9b19939e7f23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2}]},"message":"update link"},{"commit":"0e4cf53b92ff951a6390a4dacf8833c272473583","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2}]},"message":"add parser docs link"},{"commit":"e2f06ccb33177173d984bc0cdda1aae1a3f4c681","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"formatting"},{"commit":"8abff004cd8e09529e5d94be4883308152e11565","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/yaml.md"],"file_stats":[{"name":"docs/parsers/yaml.md","lines_changed":2}]},"message":"indentation fix"},{"commit":"c4a0e2e3feb2e51eaaaa202064f352229017bcc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"fix indentation"},{"commit":"4f10f79c73f8b3d6edc2c83e6a12d0ddc1a78555","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":8,"files":["docs/parsers/uname.md","jc/parsers/uname.py"],"file_stats":[{"name":"docs/parsers/uname.md","lines_changed":6},{"name":"jc/parsers/uname.py","lines_changed":6}]},"message":"standardize doc"},{"commit":"69e7a560fd82337570c4bb4aa4780f513c18bd94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":8,"deletions":0,"files":["docs/parsers/env.md","docs/parsers/history.md","jc/parsers/env.py","jc/parsers/history.py"],"file_stats":[{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2}]},"message":"add output info to docs"},{"commit":"59b105580805d78516abe1c1069d52a6f0a8131a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":97,"insertions":564,"deletions":269,"files":["docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":12},{"name":"docs/parsers/blkid.md","lines_changed":8},{"name":"docs/parsers/crontab.md","lines_changed":10},{"name":"docs/parsers/crontab_u.md","lines_changed":6},{"name":"docs/parsers/csv.md","lines_changed":9},{"name":"docs/parsers/date.md","lines_changed":8},{"name":"docs/parsers/df.md","lines_changed":8},{"name":"docs/parsers/dig.md","lines_changed":8},{"name":"docs/parsers/dmidecode.md","lines_changed":8},{"name":"docs/parsers/du.md","lines_changed":8},{"name":"docs/parsers/env.md","lines_changed":8},{"name":"docs/parsers/file.md","lines_changed":8},{"name":"docs/parsers/free.md","lines_changed":8},{"name":"docs/parsers/fstab.md","lines_changed":4},{"name":"docs/parsers/group.md","lines_changed":4},{"name":"docs/parsers/gshadow.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":4},{"name":"docs/parsers/hosts.md","lines_changed":4},{"name":"docs/parsers/id.md","lines_changed":8},{"name":"docs/parsers/ifconfig.md","lines_changed":10},{"name":"docs/parsers/ini.md","lines_changed":10},{"name":"docs/parsers/iptables.md","lines_changed":10},{"name":"docs/parsers/jobs.md","lines_changed":10},{"name":"docs/parsers/kv.md","lines_changed":11},{"name":"docs/parsers/last.md","lines_changed":8},{"name":"docs/parsers/ls.md","lines_changed":21},{"name":"docs/parsers/lsblk.md","lines_changed":8},{"name":"docs/parsers/lsmod.md","lines_changed":8},{"name":"docs/parsers/lsof.md","lines_changed":8},{"name":"docs/parsers/mount.md","lines_changed":8},{"name":"docs/parsers/netstat.md","lines_changed":17},{"name":"docs/parsers/ntpq.md","lines_changed":8},{"name":"docs/parsers/passwd.md","lines_changed":4},{"name":"docs/parsers/ping.md","lines_changed":12},{"name":"docs/parsers/pip_list.md","lines_changed":8},{"name":"docs/parsers/pip_show.md","lines_changed":8},{"name":"docs/parsers/ps.md","lines_changed":14},{"name":"docs/parsers/route.md","lines_changed":8},{"name":"docs/parsers/shadow.md","lines_changed":4},{"name":"docs/parsers/ss.md","lines_changed":8},{"name":"docs/parsers/stat.md","lines_changed":8},{"name":"docs/parsers/sysctl.md","lines_changed":16},{"name":"docs/parsers/systemctl.md","lines_changed":8},{"name":"docs/parsers/systemctl_lj.md","lines_changed":8},{"name":"docs/parsers/systemctl_ls.md","lines_changed":8},{"name":"docs/parsers/systemctl_luf.md","lines_changed":8},{"name":"docs/parsers/timedatectl.md","lines_changed":8},{"name":"docs/parsers/tracepath.md","lines_changed":10},{"name":"docs/parsers/traceroute.md","lines_changed":16},{"name":"docs/parsers/uname.md","lines_changed":8},{"name":"docs/parsers/uptime.md","lines_changed":8},{"name":"docs/parsers/w.md","lines_changed":8},{"name":"docs/parsers/who.md","lines_changed":10},{"name":"docs/parsers/xml.md","lines_changed":4},{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"jc/parsers/group.py","lines_changed":4},{"name":"jc/parsers/gshadow.py","lines_changed":4},{"name":"jc/parsers/history.py","lines_changed":4},{"name":"jc/parsers/hosts.py","lines_changed":4},{"name":"jc/parsers/id.py","lines_changed":8},{"name":"jc/parsers/ifconfig.py","lines_changed":10},{"name":"jc/parsers/ini.py","lines_changed":10},{"name":"jc/parsers/iptables.py","lines_changed":10},{"name":"jc/parsers/jobs.py","lines_changed":10},{"name":"jc/parsers/kv.py","lines_changed":11},{"name":"jc/parsers/last.py","lines_changed":8},{"name":"jc/parsers/ls.py","lines_changed":21},{"name":"jc/parsers/lsblk.py","lines_changed":8},{"name":"jc/parsers/lsmod.py","lines_changed":8},{"name":"jc/parsers/lsof.py","lines_changed":8},{"name":"jc/parsers/mount.py","lines_changed":8},{"name":"jc/parsers/netstat.py","lines_changed":17},{"name":"jc/parsers/ntpq.py","lines_changed":8},{"name":"jc/parsers/passwd.py","lines_changed":4},{"name":"jc/parsers/ping.py","lines_changed":12},{"name":"jc/parsers/pip_list.py","lines_changed":8},{"name":"jc/parsers/pip_show.py","lines_changed":8},{"name":"jc/parsers/ps.py","lines_changed":14},{"name":"jc/parsers/route.py","lines_changed":8},{"name":"jc/parsers/shadow.py","lines_changed":4},{"name":"jc/parsers/ss.py","lines_changed":8},{"name":"jc/parsers/stat.py","lines_changed":8},{"name":"jc/parsers/sysctl.py","lines_changed":16},{"name":"jc/parsers/systemctl.py","lines_changed":8},{"name":"jc/parsers/systemctl_lj.py","lines_changed":8},{"name":"jc/parsers/systemctl_ls.py","lines_changed":8},{"name":"jc/parsers/systemctl_luf.py","lines_changed":8},{"name":"jc/parsers/timedatectl.py","lines_changed":8},{"name":"jc/parsers/tracepath.py","lines_changed":10},{"name":"jc/parsers/traceroute.py","lines_changed":16},{"name":"jc/parsers/uname.py","lines_changed":8},{"name":"jc/parsers/uptime.py","lines_changed":8},{"name":"jc/parsers/w.py","lines_changed":8},{"name":"jc/parsers/who.py","lines_changed":10},{"name":"jc/parsers/xml.py","lines_changed":4},{"name":"jc/parsers/yaml.py","lines_changed":4}]},"message":"enhance docs"},{"commit":"6ed48c6289214fe5114971c80772efdf9ac1b8c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":16,"insertions":88,"deletions":37,"files":["jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py"],"file_stats":[{"name":"jc/parsers/airport_s.py","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":12},{"name":"jc/parsers/blkid.py","lines_changed":8},{"name":"jc/parsers/crontab.py","lines_changed":10},{"name":"jc/parsers/crontab_u.py","lines_changed":6},{"name":"jc/parsers/csv.py","lines_changed":9},{"name":"jc/parsers/date.py","lines_changed":8},{"name":"jc/parsers/df.py","lines_changed":8},{"name":"jc/parsers/dig.py","lines_changed":8},{"name":"jc/parsers/dmidecode.py","lines_changed":8},{"name":"jc/parsers/du.py","lines_changed":8},{"name":"jc/parsers/env.py","lines_changed":8},{"name":"jc/parsers/file.py","lines_changed":8},{"name":"jc/parsers/foo.py","lines_changed":10},{"name":"jc/parsers/free.py","lines_changed":8},{"name":"jc/parsers/fstab.py","lines_changed":4}]},"message":"enhance docs"},{"commit":"f2fb4d3f415fbc1c09eec6dedcf70fba78406b3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","jc/parsers/airport.py","jc/parsers/airport_s.py"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":2}]},"message":"improve docs"},{"commit":"6aeea59ea84e56434e87ddf89cd5d4435b99e140","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":8,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":11},{"name":"docs/parsers/airport_s.md","lines_changed":11}]},"message":"doc updates"},{"commit":"d016f3bbb307f85bd0f93a508323941a8bb9d872","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":8,"files":["jc/parsers/airport.py","jc/parsers/airport_s.py"],"file_stats":[{"name":"jc/parsers/airport.py","lines_changed":11},{"name":"jc/parsers/airport_s.py","lines_changed":11}]},"message":"improve documentation"},{"commit":"7131c297180bfa195d0209d46fc70ab8e67efe2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":114,"insertions":686,"deletions":116,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":7},{"name":"docs/parsers/airport_s.md","lines_changed":7},{"name":"docs/parsers/arp.md","lines_changed":7},{"name":"docs/parsers/crontab.md","lines_changed":7},{"name":"docs/parsers/crontab_u.md","lines_changed":7},{"name":"docs/parsers/csv.md","lines_changed":7},{"name":"docs/parsers/date.md","lines_changed":7},{"name":"docs/parsers/df.md","lines_changed":7},{"name":"docs/parsers/dig.md","lines_changed":7},{"name":"docs/parsers/dmidecode.md","lines_changed":7},{"name":"docs/parsers/du.md","lines_changed":7},{"name":"docs/parsers/env.md","lines_changed":7},{"name":"docs/parsers/file.md","lines_changed":7},{"name":"docs/parsers/free.md","lines_changed":7},{"name":"docs/parsers/fstab.md","lines_changed":7},{"name":"docs/parsers/group.md","lines_changed":7},{"name":"docs/parsers/gshadow.md","lines_changed":7},{"name":"docs/parsers/history.md","lines_changed":7},{"name":"docs/parsers/hosts.md","lines_changed":7},{"name":"docs/parsers/id.md","lines_changed":7},{"name":"docs/parsers/ifconfig.md","lines_changed":7},{"name":"docs/parsers/ini.md","lines_changed":7},{"name":"docs/parsers/iptables.md","lines_changed":7},{"name":"docs/parsers/jobs.md","lines_changed":7},{"name":"docs/parsers/kv.md","lines_changed":7},{"name":"docs/parsers/last.md","lines_changed":7},{"name":"docs/parsers/ls.md","lines_changed":7},{"name":"docs/parsers/lsblk.md","lines_changed":7},{"name":"docs/parsers/lsmod.md","lines_changed":7},{"name":"docs/parsers/lsof.md","lines_changed":7},{"name":"docs/parsers/mount.md","lines_changed":7},{"name":"docs/parsers/netstat.md","lines_changed":7},{"name":"docs/parsers/ntpq.md","lines_changed":7},{"name":"docs/parsers/passwd.md","lines_changed":7},{"name":"docs/parsers/ping.md","lines_changed":7},{"name":"docs/parsers/pip_list.md","lines_changed":7},{"name":"docs/parsers/pip_show.md","lines_changed":7},{"name":"docs/parsers/ps.md","lines_changed":7},{"name":"docs/parsers/route.md","lines_changed":7},{"name":"docs/parsers/shadow.md","lines_changed":7},{"name":"docs/parsers/ss.md","lines_changed":7},{"name":"docs/parsers/stat.md","lines_changed":7},{"name":"docs/parsers/sysctl.md","lines_changed":7},{"name":"docs/parsers/systemctl.md","lines_changed":7},{"name":"docs/parsers/systemctl_lj.md","lines_changed":7},{"name":"docs/parsers/systemctl_ls.md","lines_changed":7},{"name":"docs/parsers/systemctl_luf.md","lines_changed":7},{"name":"docs/parsers/timedatectl.md","lines_changed":7},{"name":"docs/parsers/tracepath.md","lines_changed":7},{"name":"docs/parsers/traceroute.md","lines_changed":7},{"name":"docs/parsers/uname.md","lines_changed":9},{"name":"docs/parsers/uptime.md","lines_changed":7},{"name":"docs/parsers/w.md","lines_changed":7},{"name":"docs/parsers/who.md","lines_changed":7},{"name":"docs/parsers/xml.md","lines_changed":7},{"name":"docs/parsers/yaml.md","lines_changed":7},{"name":"jc/parsers/airport.py","lines_changed":7},{"name":"jc/parsers/airport_s.py","lines_changed":7},{"name":"jc/parsers/arp.py","lines_changed":7},{"name":"jc/parsers/blkid.py","lines_changed":7},{"name":"jc/parsers/crontab.py","lines_changed":7},{"name":"jc/parsers/crontab_u.py","lines_changed":7},{"name":"jc/parsers/csv.py","lines_changed":7},{"name":"jc/parsers/date.py","lines_changed":7},{"name":"jc/parsers/df.py","lines_changed":7},{"name":"jc/parsers/dig.py","lines_changed":7},{"name":"jc/parsers/dmidecode.py","lines_changed":7},{"name":"jc/parsers/du.py","lines_changed":7},{"name":"jc/parsers/env.py","lines_changed":7},{"name":"jc/parsers/file.py","lines_changed":7},{"name":"jc/parsers/foo.py","lines_changed":7},{"name":"jc/parsers/free.py","lines_changed":7},{"name":"jc/parsers/fstab.py","lines_changed":7},{"name":"jc/parsers/group.py","lines_changed":7},{"name":"jc/parsers/gshadow.py","lines_changed":7},{"name":"jc/parsers/history.py","lines_changed":7},{"name":"jc/parsers/hosts.py","lines_changed":7},{"name":"jc/parsers/id.py","lines_changed":7},{"name":"jc/parsers/ifconfig.py","lines_changed":7},{"name":"jc/parsers/ini.py","lines_changed":7},{"name":"jc/parsers/iptables.py","lines_changed":7},{"name":"jc/parsers/jobs.py","lines_changed":7},{"name":"jc/parsers/kv.py","lines_changed":7},{"name":"jc/parsers/last.py","lines_changed":7},{"name":"jc/parsers/ls.py","lines_changed":7},{"name":"jc/parsers/lsblk.py","lines_changed":7},{"name":"jc/parsers/lsmod.py","lines_changed":7},{"name":"jc/parsers/lsof.py","lines_changed":7},{"name":"jc/parsers/mount.py","lines_changed":7},{"name":"jc/parsers/netstat.py","lines_changed":7},{"name":"jc/parsers/ntpq.py","lines_changed":7},{"name":"jc/parsers/passwd.py","lines_changed":7},{"name":"jc/parsers/ping.py","lines_changed":7},{"name":"jc/parsers/pip_list.py","lines_changed":7},{"name":"jc/parsers/pip_show.py","lines_changed":7},{"name":"jc/parsers/ps.py","lines_changed":7},{"name":"jc/parsers/route.py","lines_changed":7},{"name":"jc/parsers/shadow.py","lines_changed":7},{"name":"jc/parsers/ss.py","lines_changed":7},{"name":"jc/parsers/stat.py","lines_changed":7},{"name":"jc/parsers/sysctl.py","lines_changed":7},{"name":"jc/parsers/systemctl.py","lines_changed":7},{"name":"jc/parsers/systemctl_lj.py","lines_changed":7},{"name":"jc/parsers/systemctl_ls.py","lines_changed":7},{"name":"jc/parsers/systemctl_luf.py","lines_changed":7},{"name":"jc/parsers/timedatectl.py","lines_changed":7},{"name":"jc/parsers/tracepath.py","lines_changed":7},{"name":"jc/parsers/traceroute.py","lines_changed":7},{"name":"jc/parsers/uname.py","lines_changed":9},{"name":"jc/parsers/uptime.py","lines_changed":7},{"name":"jc/parsers/w.py","lines_changed":7},{"name":"jc/parsers/who.py","lines_changed":7},{"name":"jc/parsers/xml.py","lines_changed":7},{"name":"jc/parsers/yaml.py","lines_changed":7}]},"message":"add module usage info to docs"},{"commit":"7432442983841b42c8d3d2459b55596c05d1e100","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["docs/parsers/blkid.md"],"file_stats":[{"name":"docs/parsers/blkid.md","lines_changed":7}]},"message":"add usage"},{"commit":"5344883394a0662ee16bb5edd68df8e4410025f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"spelling/add ping parser update"},{"commit":"3fcd2f6c2e015b0e65e7261c8e591ccd8a7d0e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/cli.py","setup.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"f3d84bd5bf06349b681e9b72d904676e9f6bca19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":21,"deletions":3,"files":["CHANGELOG","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/fixtures/debian10/crontab-u.json","tests/fixtures/debian10/crontab-u.out","tests/test_crontab_u.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":4},{"name":"tests/fixtures/debian10/crontab-u.json","lines_changed":1},{"name":"tests/fixtures/debian10/crontab-u.out","lines_changed":2},{"name":"tests/test_crontab_u.py","lines_changed":12}]},"message":"tighten crontab and crontab-u parser variable detection"},{"commit":"549780c23220bca3bcab58d7329ba8d44d1be55d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"add debian/apt-get info"},{"commit":"2a6da69b82aa9ade6c01d490a32b57b415c62a9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":4}]},"message":"improve linux/bsd check"},{"commit":"5c538816cf76686bac1a86a7c06e24664d25a2dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":55,"deletions":4,"files":["CHANGELOG","jc/cli.py","jc/parsers/ping.py","setup.py","tests/fixtures/pi/ping-ip-O-D.json","tests/fixtures/pi/ping-ip-O-D.out","tests/fixtures/pi/ping-ip-O.json","tests/fixtures/pi/ping-ip-O.out","tests/test_ping.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/ping.py","lines_changed":4},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/pi/ping-ip-O-D.json","lines_changed":1},{"name":"tests/fixtures/pi/ping-ip-O-D.out","lines_changed":10},{"name":"tests/fixtures/pi/ping-ip-O.json","lines_changed":1},{"name":"tests/fixtures/pi/ping-ip-O.out","lines_changed":10},{"name":"tests/test_ping.py","lines_changed":26}]},"message":"ping parser fix for raspberry pi"},{"commit":"7b8b378a7df397c488fc54fbd6e77f5f3f23c10c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":1}]},"message":"add pydoc-markdown version requirement"},{"commit":"e30a75e25c4b43969bf9f874f89e18512a5e3a34","merge":"dda517a 85ad5cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #76 from kellyjonbrazil/dev\n\nDev v1.13.2"},{"commit":"85ad5cfd0bfb903ce35e37b343244fed88dbd979","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"date change"},{"commit":"88b9d5068c5bac0691fedb543114300d6afc7131","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":74,"deletions":15,"files":["EXAMPLES.md","README.md","docs/parsers/date.md","tests/fixtures/generic/date.json","tests/fixtures/generic/date.out","tests/test_date.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":18},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/date.md","lines_changed":34},{"name":"tests/fixtures/generic/date.json","lines_changed":1},{"name":"tests/fixtures/generic/date.out","lines_changed":1},{"name":"tests/test_date.py","lines_changed":34}]},"message":"finish date parser"},{"commit":"f8c4948a090642db595eda2ba2ea0773e560ba67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":1}]},"message":"remove comment"},{"commit":"412322447f019aec0b64888631bc965e9f21186d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":48,"deletions":17,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":65}]},"message":"add month_num and weekday_num fields"},{"commit":"d4f289e40fae621b87f0d49451fca4c3dde216b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":4},{"name":"jc/parsers/date.py","lines_changed":4}]},"message":"documentation fixup"},{"commit":"e1f3feb8f529172ae26ce4c7a66a4a1c21b722ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":10,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":23}]},"message":"cover empty data case in process"},{"commit":"37d3bc699c7be16955be06840d242980f05f1074","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":224,"deletions":1,"files":["CHANGELOG","docgen.sh","docs/parsers/date.md","jc/cli.py","jc/parsers/date.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/date.md","lines_changed":89},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/date.py","lines_changed":127},{"name":"man/jc.1","lines_changed":4}]},"message":"add date parser"},{"commit":"672fd18016b8122510b6ab246b5675b7fd399b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"date bump"},{"commit":"bc2c23a2a09b96d34bb80f69fdc7751fb5ac3ed4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"version bump"},{"commit":"865f7e78124e382c6d315702fa6e48f2104cee46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":6}]},"message":"add kv parser to man page"},{"commit":"720212b552e1bd2b9196dd5f06e4b3f85d463531","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":9,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":10}]},"message":"fixup traceroute example with new behavior"},{"commit":"d3be61f60837801d5a505dc2520cc80c874a6092","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]},"message":"version bump"},{"commit":"13418b16b8fd78fdd97ac045ec3fe9aa59d46080","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":2,"files":["docs/parsers/traceroute.md","jc/parsers/traceroute.py"],"file_stats":[{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"jc/parsers/traceroute.py","lines_changed":5}]},"message":"doc update"},{"commit":"42d2017cd6f5ee1d1a92bd4958cd63366c1e715d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":18,"insertions":41,"deletions":24,"files":["CHANGELOG","jc/parsers/traceroute.py","tests/fixtures/centos-7.7/traceroute.json","tests/fixtures/freebsd12/traceroute.json","tests/fixtures/freebsd12/traceroute6.json","tests/fixtures/generic/traceroute1.json","tests/fixtures/generic/traceroute2.json","tests/fixtures/generic/traceroute3.json","tests/fixtures/generic/traceroute5.json","tests/fixtures/generic/traceroute6.json","tests/fixtures/generic/traceroute7.json","tests/fixtures/osx-10.14.6/traceroute-asn.json",".../fixtures/osx-10.14.6/traceroute-no-header.json","tests/fixtures/osx-10.14.6/traceroute-q.json","tests/fixtures/osx-10.14.6/traceroute.json",".../osx-10.14.6/traceroute6-mult-addresses.json","tests/fixtures/osx-10.14.6/traceroute6.json","tests/test_traceroute.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/traceroute.py","lines_changed":26},{"name":"tests/fixtures/centos-7.7/traceroute.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/traceroute.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/traceroute6.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute1.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute2.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute3.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute5.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute6.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute7.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/traceroute-asn.json","lines_changed":2},{"name":".../fixtures/osx-10.14.6/traceroute-no-header.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/traceroute-q.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/traceroute.json","lines_changed":2},{"name":".../osx-10.14.6/traceroute6-mult-addresses.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/traceroute6.json","lines_changed":2},{"name":"tests/test_traceroute.py","lines_changed":7}]},"message":"traceroute updates: handle missing header row, add annotations, don't print timeouts as probes"},{"commit":"4345e76ead2a49ae0691077e9fbd2b6c5fdfd129","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2}]},"message":"change to use --kv for key/value files"},{"commit":"741431322ba2677355c361fcd6095ed8cd0a4349","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":46,"deletions":24,"files":["tests/test_ini.py","tests/test_kv.py"],"file_stats":[{"name":"tests/test_ini.py","lines_changed":24},{"name":"tests/test_kv.py","lines_changed":46}]},"message":"update tests for kv parser"},{"commit":"980beaaf41a04891f7c2f5daeb1e3a23d3c7ec19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2}]},"message":"fix docgen issue"},{"commit":"2205034e0906b333c259648f7a0e5392945f12ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":105,"deletions":31,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","jc/cli.py","jc/parsers/ini.py","jc/parsers/kv.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"EXAMPLES.md","lines_changed":53},{"name":"README.md","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/ini.py","lines_changed":4},{"name":"jc/parsers/kv.py","lines_changed":67},{"name":"setup.py","lines_changed":2}]},"message":"add kv parser"},{"commit":"82b9c87a66fce5d8626c56858a8c6f1f3326e7fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":58,"insertions":345,"deletions":62,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/readme.md","docs/utils.md"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":6},{"name":"docs/parsers/airport_s.md","lines_changed":6},{"name":"docs/parsers/arp.md","lines_changed":6},{"name":"docs/parsers/blkid.md","lines_changed":6},{"name":"docs/parsers/crontab.md","lines_changed":6},{"name":"docs/parsers/crontab_u.md","lines_changed":6},{"name":"docs/parsers/csv.md","lines_changed":6},{"name":"docs/parsers/df.md","lines_changed":6},{"name":"docs/parsers/dig.md","lines_changed":6},{"name":"docs/parsers/dmidecode.md","lines_changed":6},{"name":"docs/parsers/du.md","lines_changed":6},{"name":"docs/parsers/env.md","lines_changed":6},{"name":"docs/parsers/file.md","lines_changed":6},{"name":"docs/parsers/free.md","lines_changed":6},{"name":"docs/parsers/fstab.md","lines_changed":6},{"name":"docs/parsers/group.md","lines_changed":6},{"name":"docs/parsers/gshadow.md","lines_changed":6},{"name":"docs/parsers/history.md","lines_changed":6},{"name":"docs/parsers/hosts.md","lines_changed":6},{"name":"docs/parsers/id.md","lines_changed":6},{"name":"docs/parsers/ifconfig.md","lines_changed":13},{"name":"docs/parsers/ini.md","lines_changed":6},{"name":"docs/parsers/iptables.md","lines_changed":6},{"name":"docs/parsers/jobs.md","lines_changed":6},{"name":"docs/parsers/kv.md","lines_changed":61},{"name":"docs/parsers/last.md","lines_changed":6},{"name":"docs/parsers/ls.md","lines_changed":6},{"name":"docs/parsers/lsblk.md","lines_changed":6},{"name":"docs/parsers/lsmod.md","lines_changed":6},{"name":"docs/parsers/lsof.md","lines_changed":6},{"name":"docs/parsers/mount.md","lines_changed":6},{"name":"docs/parsers/netstat.md","lines_changed":6},{"name":"docs/parsers/ntpq.md","lines_changed":6},{"name":"docs/parsers/passwd.md","lines_changed":6},{"name":"docs/parsers/ping.md","lines_changed":6},{"name":"docs/parsers/pip_list.md","lines_changed":6},{"name":"docs/parsers/pip_show.md","lines_changed":6},{"name":"docs/parsers/ps.md","lines_changed":6},{"name":"docs/parsers/route.md","lines_changed":6},{"name":"docs/parsers/shadow.md","lines_changed":6},{"name":"docs/parsers/ss.md","lines_changed":6},{"name":"docs/parsers/stat.md","lines_changed":6},{"name":"docs/parsers/sysctl.md","lines_changed":6},{"name":"docs/parsers/systemctl.md","lines_changed":6},{"name":"docs/parsers/systemctl_lj.md","lines_changed":6},{"name":"docs/parsers/systemctl_ls.md","lines_changed":6},{"name":"docs/parsers/systemctl_luf.md","lines_changed":6},{"name":"docs/parsers/timedatectl.md","lines_changed":6},{"name":"docs/parsers/tracepath.md","lines_changed":6},{"name":"docs/parsers/traceroute.md","lines_changed":9},{"name":"docs/parsers/uname.md","lines_changed":6},{"name":"docs/parsers/uptime.md","lines_changed":6},{"name":"docs/parsers/w.md","lines_changed":6},{"name":"docs/parsers/who.md","lines_changed":6},{"name":"docs/parsers/xml.md","lines_changed":6},{"name":"docs/parsers/yaml.md","lines_changed":6},{"name":"docs/readme.md","lines_changed":1},{"name":"docs/utils.md","lines_changed":5}]},"message":"update docs"},{"commit":"dda517a937323b9888e081aea1032a9d63c4a6bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":163,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":166}]},"message":"shorten more examples"},{"commit":"4e6d283b9eddf7759b4dd37bd643394ff73febd4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":65,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":65}]},"message":"shorten netstat example"},{"commit":"55acab05aa740dfd7534304f2678b60942cad116","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["changelog.txt => CHANGELOG"],"file_stats":[{"name":"changelog.txt => CHANGELOG","lines_changed":0}]},"message":"change name to CHANGELOG"},{"commit":"ed38a18d236cdb991779f4f148e42359c139e61c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":86,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":87}]},"message":"remove more examples"},{"commit":"95b3c11203d3dd0627c5eeca39fe1d145bf2d733","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":124,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":124}]},"message":"remove more examples"},{"commit":"dce318f4fd44b9c4013211bf233020e84566ddb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1537,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1540}]},"message":"remove examples to reduce file size"},{"commit":"85127f0fb8096192b19fca1f4ffe38ee391351be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["jc/examples.md => EXAMPLES.md"],"file_stats":[{"name":"jc/examples.md => EXAMPLES.md","lines_changed":0}]},"message":"move examples to root"},{"commit":"fb45058244ce879f12bbb5b7267b0fd63fef1d63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2640,"deletions":0,"files":["jc/examples.md"],"file_stats":[{"name":"jc/examples.md","lines_changed":2640}]},"message":"add examples file"},{"commit":"45bb5ae389a00ed6a132a65c69ce76c7e5976858","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"spelling"},{"commit":"339238ab364d8735892a11cb16a62a651edae169","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":79,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py","tests/fixtures/centos-7.7/route-6-n.json","tests/fixtures/centos-7.7/route-6-n.out","tests/fixtures/centos-7.7/route-6.json","tests/fixtures/centos-7.7/route-6.out","tests/test_route.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/route-6-n.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/route-6-n.out","lines_changed":24},{"name":"tests/fixtures/centos-7.7/route-6.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/route-6.out","lines_changed":24},{"name":"tests/test_route.py","lines_changed":24}]},"message":"version bump and add route -6 tests"},{"commit":"032cda8b3db096b690d2557e3b918c50c716c543","merge":"690ac52 6badd3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #74 from kellyjonbrazil/dev\n\nDev v1.13.0"},{"commit":"6badd3fb1e1cf6d1ee99614fadc20d54be8039aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":3}]},"message":"add parser count test"},{"commit":"724d825745b6f1692eb3b068c3fb59d14892e690","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":4}]},"message":"add tracepath parser"},{"commit":"ff1e32ad2ee156f105f5069c6b14a65b22784dfa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"a5f97febd3066b9e95a18d6b73162a7d206c5845","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":132,"deletions":0,"files":["tests/fixtures/centos-7.7/tracepath.json","tests/fixtures/centos-7.7/tracepath6.json","tests/fixtures/freebsd12/traceroute.json","tests/fixtures/freebsd12/traceroute.out","tests/fixtures/freebsd12/traceroute6.json","tests/fixtures/freebsd12/traceroute6.out","tests/fixtures/osx-10.14.6/uname.out","tests/test_tracepath.py","tests/test_traceroute.py","tests/test_uname.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/tracepath.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/tracepath6.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/traceroute.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/traceroute.out","lines_changed":14},{"name":"tests/fixtures/freebsd12/traceroute6.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/traceroute6.out","lines_changed":34},{"name":"tests/fixtures/osx-10.14.6/uname.out","lines_changed":1},{"name":"tests/test_tracepath.py","lines_changed":46},{"name":"tests/test_traceroute.py","lines_changed":24},{"name":"tests/test_uname.py","lines_changed":9}]},"message":"update traceroute, tracepath, and uname tests"},{"commit":"5baa6cc865634142690e78596c640db35e110b29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add route parser update"},{"commit":"7a4f30b843d8f11711abbb8f9bb263f945ff87ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":6}]},"message":"fix for iface issue"},{"commit":"b2c385dc4f63e3e15f47e986deac0524967214a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":2}]},"message":"change 'if' to 'iface'"},{"commit":"5d5da8d33fa6ab77c745d338d1a2e2e8f2e4c697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":6}]},"message":"more fixes for ipv6 fix"},{"commit":"e60457157839daba385202906997dec48c9c4950","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":2}]},"message":"fix next_hop fix"},{"commit":"f9dacc3f95b32e1431914ae0b0dc5c8e8840d5a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":4}]},"message":"fixup for ipv6"},{"commit":"6086920332575cd7db1b38262a3b4ba8fbfae7ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]},"message":"update ParseError message"},{"commit":"f52f3163bcaf8d7e784f02505e81456e8240295b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":49,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":49}]},"message":"add tracepath example"},{"commit":"d18ff73e880c7d34957f2713857cc83094f914cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/tracepath.py"],"file_stats":[{"name":"jc/parsers/tracepath.py","lines_changed":4}]},"message":"update author info"},{"commit":"1e5d602caecd96c9056ad77f9fc50cf25bf6fdfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":288,"deletions":32,"files":["docs/parsers/tracepath.md","jc/parsers/tracepath.py"],"file_stats":[{"name":"docs/parsers/tracepath.md","lines_changed":122},{"name":"jc/parsers/tracepath.py","lines_changed":198}]},"message":"working tracepath parser"},{"commit":"12912521ecb376c36dfdd743b3c4195598fb9aac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":11,"files":["docs/parsers/traceroute.md","jc/parsers/traceroute.py"],"file_stats":[{"name":"docs/parsers/traceroute.md","lines_changed":7},{"name":"jc/parsers/traceroute.py","lines_changed":4}]},"message":"doc update"},{"commit":"842ea3a94bec3fcab76257fdde5514d1de3d57fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":153,"deletions":0,"files":["docs/parsers/tracepath.md","jc/parsers/tracepath.py"],"file_stats":[{"name":"docs/parsers/tracepath.md","lines_changed":64},{"name":"jc/parsers/tracepath.py","lines_changed":89}]},"message":"add tracepath parser skeleton"},{"commit":"a8560dbc1598fa97de87594228b4cc10282d4197","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add tracepath"},{"commit":"a65e27540a8c5c7123d2fdf79fcbefa1e2f8afdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":24,"files":["docgen.sh","docs/parsers/traceroute.md","jc/parsers/traceroute.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/traceroute.md","lines_changed":14},{"name":"jc/parsers/traceroute.py","lines_changed":10}]},"message":"update docs"},{"commit":"c3c5ed11e68938e35920144406d37ea3b21d63dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]},"message":"change name from tr to trparse"},{"commit":"ce24149335cd8ed1e8513a2cf040432fe42d86b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":1}]},"message":"formatting"},{"commit":"0314ca8c4831d24c169a0e4948421ecd638fd699","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add trparse acknowledgement"},{"commit":"ebd8ee49a9f43063850e30c745c8cae46ee13de1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":27}]},"message":"add key/value info to ini example"},{"commit":"38d10c97814ec69586c3b447c182f339772d6e22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":130,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":131}]},"message":"add ping and traceroute examples"},{"commit":"360106c24d24e6a9697c00a158a14aaa334a4b1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add tracepath"},{"commit":"ca470a5d02fd9fbaf05d8b3b3bb1ffe9f4cf5af3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":39,"deletions":0,"files":["tests/fixtures/centos-7.7/tracepath.out","tests/fixtures/centos-7.7/tracepath6.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/tracepath.out","lines_changed":34},{"name":"tests/fixtures/centos-7.7/tracepath6.out","lines_changed":5}]},"message":"add tracepath fixtures"},{"commit":"57f66e6b1d554ff20b72959f5ebb9e7b2feffed2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":2,"files":["changelog.txt","jc/parsers/uname.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":14}]},"message":"add exception with hint to use \"uname -a\""},{"commit":"e774f67924c0e6195f79829b2ac75ce95f76fbaa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["jc/parsers/ini.py"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":10}]},"message":"turn off interpolation and coerce None to ''"},{"commit":"ac10e576c167d20de259e47a6aa5b23fc998b4c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/ini.md","jc/parsers/ini.py"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"jc/parsers/ini.py","lines_changed":4}]},"message":"spelling"},{"commit":"bcae0a99cd0ccce4ec8a67929f7c83a1095a5b88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"add key/value to ini description"},{"commit":"c73c2ff879b3ed7a3e6f04e53e0a729e4f00ed21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":8}]},"message":"add ping, traceroute, and ini update"},{"commit":"c39b1a3356881a11a8f6fe9432897e6d67162f07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"add ping, traceroute and update ini description"},{"commit":"125dc2d9e051a82a4a438afe2e520212338353f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":3,"files":["docs/parsers/ini.md"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":11}]},"message":"add info about key/value files to doc"},{"commit":"b7d4ddc7ced2c3aabf3a857b53a0bf1b62eb6a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":50,"deletions":0,"files":["tests/fixtures/generic/keyvalue-ifcfg.json","tests/fixtures/generic/keyvalue-ifcfg.txt","tests/fixtures/generic/keyvalue.json","tests/fixtures/generic/keyvalue.txt","tests/test_ini.py"],"file_stats":[{"name":"tests/fixtures/generic/keyvalue-ifcfg.json","lines_changed":1},{"name":"tests/fixtures/generic/keyvalue-ifcfg.txt","lines_changed":19},{"name":"tests/fixtures/generic/keyvalue.json","lines_changed":1},{"name":"tests/fixtures/generic/keyvalue.txt","lines_changed":5},{"name":"tests/test_ini.py","lines_changed":24}]},"message":"add tests for key/value files"},{"commit":"f5e546c6fa7cba166284a0976887d6b82451d3e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":33,"deletions":9,"files":["jc/parsers/ini.py"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":42}]},"message":"add support for simple key/value pairs"},{"commit":"928e39cd103b96b8c3ccc8d85c930ffb419296c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":104,"deletions":0,"files":["tests/fixtures/generic/traceroute1.json","tests/fixtures/generic/traceroute2.json","tests/fixtures/generic/traceroute3.json","tests/fixtures/generic/traceroute4.json","tests/fixtures/generic/traceroute5.json","tests/fixtures/generic/traceroute6.json","tests/fixtures/generic/traceroute7.json","tests/fixtures/generic/traceroute8.json","tests/test_traceroute.py"],"file_stats":[{"name":"tests/fixtures/generic/traceroute1.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute2.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute3.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute4.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute5.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute6.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute7.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute8.json","lines_changed":1},{"name":"tests/test_traceroute.py","lines_changed":96}]},"message":"add generic traceroute tests"},{"commit":"d0b7ea68a005daff313e44808b256656313a78a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":4}]},"message":"check for key in dictionary"},{"commit":"8444690133b6a7522822ab279e97ede6ded17ba9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":4}]},"message":"add traceroute"},{"commit":"c03c42d76703ff8f423cf3c10ea6254a27a685cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":76,"deletions":9,"files":["tests/fixtures/centos-7.7/traceroute.json","tests/fixtures/osx-10.14.6/traceroute-asn.json",".../osx-10.14.6/traceroute-mult-addresses.json","tests/fixtures/osx-10.14.6/traceroute-q.json","tests/fixtures/osx-10.14.6/traceroute.json",".../osx-10.14.6/traceroute6-mult-addresses.json","...-address.out => traceroute6-mult-addresses.out}","tests/fixtures/osx-10.14.6/traceroute6.json","tests/test_traceroute.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/traceroute.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/traceroute-asn.json","lines_changed":1},{"name":".../osx-10.14.6/traceroute-mult-addresses.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/traceroute-q.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/traceroute.json","lines_changed":1},{"name":".../osx-10.14.6/traceroute6-mult-addresses.json","lines_changed":1},{"name":"...-address.out => traceroute6-mult-addresses.out}","lines_changed":0},{"name":"tests/fixtures/osx-10.14.6/traceroute6.json","lines_changed":1},{"name":"tests/test_traceroute.py","lines_changed":78}]},"message":"add traceroute tests"},{"commit":"ab67688a00ac335d2a5603e9cadef8b565957911","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":55,"deletions":0,"files":["tests/test_traceroute.py"],"file_stats":[{"name":"tests/test_traceroute.py","lines_changed":55}]},"message":"add test skeleton"},{"commit":"5dcb7166daef3c53da65bba0d591672e64d3a90b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":169,"deletions":0,"files":["docgen.sh","docs/parsers/traceroute.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/traceroute.md","lines_changed":168}]},"message":"add traceroute doc"},{"commit":"14697b86d7fc1cfebb41e0fd2d9a9b9b60071d3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":2,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":26}]},"message":"add MIT license"},{"commit":"4f4b6276d4bf798b17d996f39742bd0428fc2f19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":38,"deletions":33,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":71}]},"message":"update docstring"},{"commit":"7bc497e1291059ae7858c9d2bd2d9a1b4c030dd1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":117,"deletions":14,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":131}]},"message":"updated process() function to set integers and floats"},{"commit":"68a37a6a5a3f0ad0fa24c84d363050af9fa11f97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":4}]},"message":"remove unused function load()"},{"commit":"6f5cd1d7c5f76d7d4da42171fdc30daf9fe3996e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]},"message":"change to use f-string"},{"commit":"126b1b121ca10183dc7e9dece83b42907becad39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":0,"files":["tests/fixtures/generic/traceroute8.out"],"file_stats":[{"name":"tests/fixtures/generic/traceroute8.out","lines_changed":10}]},"message":"add traceroute6 example"},{"commit":"2341e456a012564f86d533d2748a5887d79995e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]},"message":"use ParseError instead of generic Exception"},{"commit":"72d80e95bb50ae2a7432082e65aba15235ba0955","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":115,"deletions":8,"files":["jc/parsers/traceroute.py","tests/fixtures/generic/traceroute1.out","tests/fixtures/generic/traceroute2.out","tests/fixtures/generic/traceroute3.out","tests/fixtures/generic/traceroute4.out","tests/fixtures/generic/traceroute5.out","tests/fixtures/generic/traceroute6.out","tests/fixtures/generic/traceroute7.out"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":9},{"name":"tests/fixtures/generic/traceroute1.out","lines_changed":16},{"name":"tests/fixtures/generic/traceroute2.out","lines_changed":13},{"name":"tests/fixtures/generic/traceroute3.out","lines_changed":20},{"name":"tests/fixtures/generic/traceroute4.out","lines_changed":7},{"name":"tests/fixtures/generic/traceroute5.out","lines_changed":10},{"name":"tests/fixtures/generic/traceroute6.out","lines_changed":31},{"name":"tests/fixtures/generic/traceroute7.out","lines_changed":17}]},"message":"remove unused regex patterns"},{"commit":"f5ec82440cd1c1b5ac9011d3517298d0cdcd8766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":11}]},"message":"simplify regex patterns"},{"commit":"c8e526ead35b868733f57b4c114062a48b78a817","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":3,"files":["jc/parsers/traceroute.py","tests/fixtures/osx-10.14.6/traceroute-q.out"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":11},{"name":"tests/fixtures/osx-10.14.6/traceroute-q.out","lines_changed":4}]},"message":"fixes for bsd-style ipv6 output"},{"commit":"066adfb76479df7042bfb12bbb83b5dbd8a6d54c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":83,"deletions":7,"files":["jc/parsers/traceroute.py","tests/fixtures/centos-7.7/traceroute.out","tests/fixtures/osx-10.14.6/traceroute-asn.out",".../osx-10.14.6/traceroute-mult-addresses.out",".../fixtures/osx-10.14.6/traceroute-no-header.out",".../osx-10.14.6/traceroute6-multi-address.out","tests/fixtures/osx-10.14.6/traceroute6.out"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":30},{"name":"tests/fixtures/centos-7.7/traceroute.out","lines_changed":32},{"name":"tests/fixtures/osx-10.14.6/traceroute-asn.out","lines_changed":5},{"name":".../osx-10.14.6/traceroute-mult-addresses.out","lines_changed":5},{"name":".../fixtures/osx-10.14.6/traceroute-no-header.out","lines_changed":3},{"name":".../osx-10.14.6/traceroute6-multi-address.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/traceroute6.out","lines_changed":7}]},"message":"handle warning lines in the traceroute output"},{"commit":"5b444d4717b0b8528647e17e71d699907def3e18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":307,"deletions":0,"files":["jc/cli.py","jc/parsers/traceroute.py","tests/fixtures/osx-10.14.6/traceroute.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/traceroute.py","lines_changed":295},{"name":"tests/fixtures/osx-10.14.6/traceroute.out","lines_changed":11}]},"message":"add traceroute parser"},{"commit":"69c95adc8d59927c1c00b7e766ca5003b7b6454c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":81,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ping6-ip-dup.json","tests/fixtures/osx-10.14.6/ping6-ip-dup.out","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ping6-ip-dup.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-dup.out","lines_changed":68},{"name":"tests/test_ping.py","lines_changed":12}]},"message":"add osx ipv6 ping dup test"},{"commit":"2b0e0d8f5c1a6a5450e362971f9ad5892093b2ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":27,"deletions":0,"files":["tests/fixtures/centos-7.7/ping6-ip-dup.json","tests/fixtures/centos-7.7/ping6-ip-dup.out","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ping6-ip-dup.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-ip-dup.out","lines_changed":14},{"name":"tests/test_ping.py","lines_changed":12}]},"message":"add ipv6 dup test"},{"commit":"778d1bacbf8df523d434b22f5e1517955e4c15ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":28,"deletions":12,"files":["docs/parsers/ping.md","jc/parsers/ping.py"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":20},{"name":"jc/parsers/ping.py","lines_changed":20}]},"message":"update docs to add \"duplicates\" fields"},{"commit":"7e1b0410166c584775ebcd681a280ec7321560c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":0,"files":["tests/test_ping.py"],"file_stats":[{"name":"tests/test_ping.py","lines_changed":24}]},"message":"add duplicate replies tests"},{"commit":"313b9b329ca6b674069718839f55a4bd7834db80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":55,"insertions":55,"deletions":53,"files":["tests/fixtures/centos-7.7/ping-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping-hostname-O-p.json","tests/fixtures/centos-7.7/ping-hostname-O.json","tests/fixtures/centos-7.7/ping-ip-O-D.json","tests/fixtures/centos-7.7/ping-ip-O.json","tests/fixtures/centos-7.7/ping-ip-dup.json","tests/fixtures/centos-7.7/ping6-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping6-hostname-O-p.json","tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","tests/fixtures/centos-7.7/ping6-ip-O-p.json","tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping-hostname-O-p.json","tests/fixtures/fedora32/ping-hostname-O.json","tests/fixtures/fedora32/ping-ip-O-D.json","tests/fixtures/fedora32/ping-ip-O.json","tests/fixtures/fedora32/ping6-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping6-hostname-O-D-p.json","tests/fixtures/fedora32/ping6-hostname-O-p.json","tests/fixtures/fedora32/ping6-ip-O-D-p.json","tests/fixtures/fedora32/ping6-ip-O-p.json","tests/fixtures/freebsd12/ping-hostname-p.json","tests/fixtures/freebsd12/ping-hostname-s.json","tests/fixtures/freebsd12/ping-hostname.json","tests/fixtures/freebsd12/ping-ip-p.json","tests/fixtures/freebsd12/ping-ip-s.json","tests/fixtures/freebsd12/ping-ip.json","tests/fixtures/freebsd12/ping6-hostname-p.json","tests/fixtures/freebsd12/ping6-hostname-s.json","tests/fixtures/freebsd12/ping6-hostname.json","tests/fixtures/freebsd12/ping6-ip-p.json","tests/fixtures/freebsd12/ping6-ip-s.json","tests/fixtures/freebsd12/ping6-ip.json","tests/fixtures/osx-10.14.6/ping-hostname-p.json","tests/fixtures/osx-10.14.6/ping-hostname-s.json","tests/fixtures/osx-10.14.6/ping-hostname.json","tests/fixtures/osx-10.14.6/ping-ip-dup.json","tests/fixtures/osx-10.14.6/ping-ip-p.json","tests/fixtures/osx-10.14.6/ping-ip-s.json","tests/fixtures/osx-10.14.6/ping-ip.json","tests/fixtures/osx-10.14.6/ping6-hostname-p.json","tests/fixtures/osx-10.14.6/ping6-hostname-s.json","tests/fixtures/osx-10.14.6/ping6-hostname.json","tests/fixtures/osx-10.14.6/ping6-ip-p.json","tests/fixtures/osx-10.14.6/ping6-ip-s.json","tests/fixtures/osx-10.14.6/ping6-ip.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping-hostname-O.json","tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","tests/fixtures/ubuntu-18.04/ping-ip-O.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ping-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-hostname-O.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-ip-O-D.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-ip-O.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-ip-dup.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping6-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-hostname-O.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-ip-O-D.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-ip-O.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-ip-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-ip-O-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-hostname-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-hostname-s.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-hostname.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-ip-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-ip-s.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-ip.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-hostname-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-hostname-s.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-hostname.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-ip-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-ip-s.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-ip.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-hostname-p.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-hostname-s.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-hostname.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-ip-dup.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-p.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-ip-s.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-ip.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-p.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-s.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-p.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-s.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-ip.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json","lines_changed":2}]},"message":"update fixtures for added 'duplicate' fields"},{"commit":"6830062256fbc453f87224f7ab8c10e4494b5a83","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":112,"deletions":24,"files":["docs/parsers/ping.md","jc/parsers/ping.py","tests/fixtures/centos-7.7/ping-ip-dup.out","tests/fixtures/osx-10.14.6/ping-ip-dup.out"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":6},{"name":"jc/parsers/ping.py","lines_changed":83},{"name":"tests/fixtures/centos-7.7/ping-ip-dup.out","lines_changed":27},{"name":"tests/fixtures/osx-10.14.6/ping-ip-dup.out","lines_changed":20}]},"message":"add support for duplicate replies"},{"commit":"323072c9827c41c5d74433504b5efceb846cfe09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/ping.md","jc/parsers/ping.py"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":1},{"name":"jc/parsers/ping.py","lines_changed":1}]},"message":"add source_ip to schema doc"},{"commit":"8719d96bddec80187e7ba3286ba93bfec8465744","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"change description"},{"commit":"dd5d318ab5bbb1027dd600fd3b0b6ec9b8adfdc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":6}]},"message":"version bump and add ping command"},{"commit":"d6dc7f5e65c097895c19000e59e8803a3b350fdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":135,"deletions":29,"files":["tests/fixtures/osx-10.14.6/ping-hostname-p.json","tests/fixtures/osx-10.14.6/ping-hostname-s.json","tests/fixtures/osx-10.14.6/ping-hostname.json","tests/fixtures/osx-10.14.6/ping-ip-p.json","tests/fixtures/osx-10.14.6/ping-ip-s.json","tests/fixtures/osx-10.14.6/ping-ip.json","tests/fixtures/osx-10.14.6/ping6-hostname-p.json","tests/fixtures/osx-10.14.6/ping6-hostname-s.json","tests/fixtures/osx-10.14.6/ping6-hostname.json","tests/fixtures/osx-10.14.6/ping6-ip-p.json","tests/fixtures/osx-10.14.6/ping6-ip-s.json","tests/fixtures/osx-10.14.6/ping6-ip.json","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ping-hostname-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-hostname-s.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-hostname.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-s.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-s.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-s.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":152}]},"message":"add osx ping tests"},{"commit":"c203664eb5aafa0afa3101b79e3fd13b3e009ec5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":171,"deletions":9,"files":["tests/fixtures/freebsd12/ping-hostname-p.json","tests/fixtures/freebsd12/ping-hostname-s.json","tests/fixtures/freebsd12/ping-hostname.json","tests/fixtures/freebsd12/ping-ip-p.json","tests/fixtures/freebsd12/ping-ip-s.json","tests/fixtures/freebsd12/ping-ip.json","tests/fixtures/freebsd12/ping6-hostname-p.json","tests/fixtures/freebsd12/ping6-hostname-s.json","tests/fixtures/freebsd12/ping6-hostname.json","tests/fixtures/freebsd12/ping6-ip-p.json","tests/fixtures/freebsd12/ping6-ip-s.json","tests/fixtures/freebsd12/ping6-ip.json","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/ping-hostname-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-hostname-s.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-hostname.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-s.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-hostname-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-hostname-s.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-hostname.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-s.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":168}]},"message":"freebsd ping tests"},{"commit":"19ecf1fa19e9fa0873002baf07fa670b71ed7752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":118,"deletions":0,"files":["tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping-hostname-O-p.json","tests/fixtures/fedora32/ping-hostname-O.json","tests/fixtures/fedora32/ping-ip-O-D.json","tests/fixtures/fedora32/ping-ip-O.json",".../fixtures/fedora32/ping6-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping6-hostname-O-D-p.json","tests/fixtures/fedora32/ping6-hostname-O-p.json","tests/fixtures/fedora32/ping6-ip-O-D-p.json","tests/fixtures/fedora32/ping6-ip-O-p.json","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-hostname-O.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-ip-O-D.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-ip-O.json","lines_changed":1},{"name":".../fixtures/fedora32/ping6-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping6-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping6-ip-O-D-p.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping6-ip-O-p.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":108}]},"message":"add Fedora32 tests"},{"commit":"b8deb0426cc23333c0e0a9dc3776d9761d99abb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":119,"deletions":8,"files":[".../ubuntu-18.04/ping-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping-hostname-O.json","tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","tests/fixtures/ubuntu-18.04/ping-ip-O.json",".../ubuntu-18.04/ping6-hostname-O-D-p-s.json",".../ubuntu-18.04/ping6-hostname-O-D-p.json",".../fixtures/ubuntu-18.04/ping6-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json","tests/test_ping.py"],"file_stats":[{"name":".../ubuntu-18.04/ping-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-hostname-O-D-p-s.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-hostname-O-D-p.json","lines_changed":1},{"name":".../fixtures/ubuntu-18.04/ping6-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":117}]},"message":"add ubuntu ping tests"},{"commit":"3b8371f0208a097cb8a1c026348d3842e6702b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":202,"deletions":0,"files":[".../fixtures/centos-7.7/ping-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping-hostname-O-p.json","tests/fixtures/centos-7.7/ping-hostname-O.json","tests/fixtures/centos-7.7/ping-ip-O-D.json","tests/fixtures/centos-7.7/ping-ip-O.json",".../centos-7.7/ping6-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping6-hostname-O-p.json","tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","tests/fixtures/centos-7.7/ping6-ip-O-p.json","tests/test_ping.py"],"file_stats":[{"name":".../fixtures/centos-7.7/ping-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-hostname-O.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-ip-O-D.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-ip-O.json","lines_changed":1},{"name":".../centos-7.7/ping6-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-p.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":193}]},"message":"add centos ping tests"},{"commit":"20bb1cdf396abdb3707b34fa146cbe913f9bbd6f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":8}]},"message":"add TypeError to except for None values"},{"commit":"301daa48d0bfc28f97c8e46f028f8c6b875bf34e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":114,"deletions":16,"files":["docs/parsers/ping.md","jc/parsers/ping.py"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":128},{"name":"jc/parsers/ping.py","lines_changed":2}]},"message":"update documentation"},{"commit":"8421ec88033e02f472e4961d87551a0352663a16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":4}]},"message":"remove cygwin compatibility"},{"commit":"74211eb0129f6aa655a38ba4d4d8844d81441107","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":82,"deletions":5,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":87}]},"message":"add examples"},{"commit":"60bd42f298f309cbec6d24c9543ea3d51bd73b18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":59,"deletions":11,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":70}]},"message":"add process() logic"},{"commit":"14bdd74526e400997c5bc247ea35ed40799e83ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":100,"deletions":0,"files":["tests/fixtures/freebsd12/ping-hostname-p.out","tests/fixtures/freebsd12/ping-hostname-s.out","tests/fixtures/freebsd12/ping-hostname.out","tests/fixtures/freebsd12/ping-ip-p.out","tests/fixtures/freebsd12/ping-ip-s.out","tests/fixtures/freebsd12/ping-ip.out","tests/fixtures/freebsd12/ping6-hostname-p.out","tests/fixtures/freebsd12/ping6-hostname-s.out","tests/fixtures/freebsd12/ping6-hostname.out","tests/fixtures/freebsd12/ping6-ip-p.out","tests/fixtures/freebsd12/ping6-ip-s.out","tests/fixtures/freebsd12/ping6-ip.out"],"file_stats":[{"name":"tests/fixtures/freebsd12/ping-hostname-p.out","lines_changed":9},{"name":"tests/fixtures/freebsd12/ping-hostname-s.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping-hostname.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping-ip-p.out","lines_changed":9},{"name":"tests/fixtures/freebsd12/ping-ip-s.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping-ip.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping6-hostname-p.out","lines_changed":9},{"name":"tests/fixtures/freebsd12/ping6-hostname-s.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping6-hostname.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping6-ip-p.out","lines_changed":9},{"name":"tests/fixtures/freebsd12/ping6-ip-s.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping6-ip.out","lines_changed":8}]},"message":"add ping test fixtures"},{"commit":"fb0f3eda04a4b1dbb81da7d5791cbfe746bfd617","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["tests/fixtures/create_fixtures.sh"],"file_stats":[{"name":"tests/fixtures/create_fixtures.sh","lines_changed":16}]},"message":"add ping commands"},{"commit":"91ee6e6701307363336a39f9e16641465ddd05c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":100,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ping-hostname-p.out","tests/fixtures/osx-10.14.6/ping-hostname-s.out","tests/fixtures/osx-10.14.6/ping-hostname.out","tests/fixtures/osx-10.14.6/ping-ip-p.out","tests/fixtures/osx-10.14.6/ping-ip-s.out","tests/fixtures/osx-10.14.6/ping-ip.out","tests/fixtures/osx-10.14.6/ping6-hostname-p.out","tests/fixtures/osx-10.14.6/ping6-hostname-s.out","tests/fixtures/osx-10.14.6/ping6-hostname.out","tests/fixtures/osx-10.14.6/ping6-ip-p.out","tests/fixtures/osx-10.14.6/ping6-ip-s.out","tests/fixtures/osx-10.14.6/ping6-ip.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ping-hostname-p.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/ping-hostname-s.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping-hostname.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping-ip-p.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/ping-ip-s.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping-ip.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-p.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-s.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-p.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-s.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping6-ip.out","lines_changed":8}]},"message":"add osx ping test fixtures"},{"commit":"51f4e6927c68a7e2a26954f564d10d316b98a984","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":3,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":15}]},"message":"add support for pattern in osx/bsd"},{"commit":"94988d86674293faddc6f7e7c82575738d2dc791","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":257,"deletions":0,"files":["tests/fixtures/fedora32/ping-hostname-O-D-p-s.out","tests/fixtures/fedora32/ping-hostname-O-p.out","tests/fixtures/fedora32/ping-hostname-O.out","tests/fixtures/fedora32/ping-ip-O-D.out","tests/fixtures/fedora32/ping-ip-O.out","tests/fixtures/fedora32/ping6-hostname-O-D-p-s.out","tests/fixtures/fedora32/ping6-hostname-O-D-p.out","tests/fixtures/fedora32/ping6-hostname-O-p.out","tests/fixtures/fedora32/ping6-ip-O-D-p.out","tests/fixtures/fedora32/ping6-ip-O-p.out"],"file_stats":[{"name":"tests/fixtures/fedora32/ping-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping-hostname-O.out","lines_changed":25},{"name":"tests/fixtures/fedora32/ping-ip-O-D.out","lines_changed":25},{"name":"tests/fixtures/fedora32/ping-ip-O.out","lines_changed":25},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping6-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping6-ip-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping6-ip-O-p.out","lines_changed":26}]},"message":"add fedora ping fixtures"},{"commit":"fe36f5a98cd3ee7753e250b6553e4453d971f929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":318,"deletions":0,"files":["tests/fixtures/centos-7.7/ping-ip-O-D.out","tests/fixtures/centos-7.7/ping-ip-O.out","tests/fixtures/create_fixtures.sh",".../ubuntu-18.04/ping-hostname-O-D-p-s.out","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.out","tests/fixtures/ubuntu-18.04/ping-hostname-O.out","tests/fixtures/ubuntu-18.04/ping-ip-O-D.out","tests/fixtures/ubuntu-18.04/ping-ip-O.out",".../ubuntu-18.04/ping6-hostname-O-D-p-s.out",".../fixtures/ubuntu-18.04/ping6-hostname-O-D-p.out","tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.out","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.out","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ping-ip-O-D.out","lines_changed":25},{"name":"tests/fixtures/centos-7.7/ping-ip-O.out","lines_changed":25},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":12},{"name":".../ubuntu-18.04/ping-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O.out","lines_changed":25},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O-D.out","lines_changed":25},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O.out","lines_changed":25},{"name":".../ubuntu-18.04/ping6-hostname-O-D-p-s.out","lines_changed":26},{"name":".../fixtures/ubuntu-18.04/ping6-hostname-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-p.out","lines_changed":25}]},"message":"add fixtures for ping"},{"commit":"f9eb18b9271b2428dd82f2dc26d3fa0435dad81d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":17}]},"message":"change 'request_timeout' field to 'type', fix compatibility, other formatting fixes"},{"commit":"cc60f3674822c644933f286a0364b09d7e2a60b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":67,"deletions":1,"files":["docgen.sh","docs/parsers/ping.md","jc/cli.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ping.md","lines_changed":64},{"name":"jc/cli.py","lines_changed":3}]},"message":"add ping parser"},{"commit":"604ade791f7bd33b37f64916befba27a2ea08b5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":506,"deletions":0,"files":["jc/parsers/ping.py",".../fixtures/centos-7.7/ping-hostname-O-D-p-s.out","tests/fixtures/centos-7.7/ping-hostname-O-p.out","tests/fixtures/centos-7.7/ping-hostname-O.out",".../fixtures/centos-7.7/ping6-hostname-O-D-p-s.out","tests/fixtures/centos-7.7/ping6-hostname-O-p.out","tests/fixtures/centos-7.7/ping6-ip-O-D-p.out","tests/fixtures/centos-7.7/ping6-ip-O-p.out"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":325},{"name":".../fixtures/centos-7.7/ping-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping-hostname-O.out","lines_changed":25},{"name":".../fixtures/centos-7.7/ping6-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping6-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-p.out","lines_changed":26}]},"message":"add ping parser"},{"commit":"690ac52a917200e46eac2feafc9f504f2734301c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":261,"deletions":0,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":261}]},"message":"add man page"},{"commit":"34ed772775f1f02ed148f24a3bfff532bc811607","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"d5ab95571f64f55d8194e9e5592ac538bb535229","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":11,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":37}]},"message":"fix tests when using older versions of pygments"},{"commit":"ffb3a0ee5fb30a3f61d6cbedf877ab04acdbf624","merge":"fde0bc8 94b12b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #73 from kellyjonbrazil/dev\n\nDev v1.12.0"},{"commit":"94b12b57aaa56170d1f31f4910fd1239f88de137","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"spelling"},{"commit":"6d149e84571d5d6dd1d8a1f219ba299de5173779","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":1,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":7},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"1ad89c90d890039b817f65b2635db1b5e849a9e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add pacman"},{"commit":"fb71c7b020bc1eda9484595f30b0200a4f59aa45","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":2}]},"message":"function name spelling"},{"commit":"28ed17ad3bce866e5dc0179ef5de43380ac6ace1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":1}]},"message":"add parser_count test to test_cli_about_jc"},{"commit":"0c2a4e2bf71dca50d4a9bb27ca99944909c022ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":37}]},"message":"add cli tests"},{"commit":"62bec30de2f1a303f2ec411d89f7f9f9c6d1abaf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":0,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":20}]},"message":"add json_out tests"},{"commit":"3fced77e4e258dbf7db94a313e599c830a597b49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":98,"deletions":1,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":99}]},"message":"add set_env_colors tests"},{"commit":"a09d1d8b7687912610598c88d172733d5e29b1ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":13}]},"message":"move environment variable assignment to main() to simplify tests"},{"commit":"8f4243fbd8d70ca9fd019e984c564e37c81e07db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"formatting"},{"commit":"47aaf20549ea238443427e69d5841d6996b7afab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":17,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":17}]},"message":"add sysctl command parser"},{"commit":"0c5289ea50e4d3d35e80147b4cad32434c19a2a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":72,"deletions":2,"files":["tests/fixtures/freebsd12/sysctl-a.json","tests/fixtures/osx-10.14.6/sysctl-a.json","tests/test_sysctl.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/sysctl-a.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/sysctl-a.json","lines_changed":2},{"name":"tests/test_sysctl.py","lines_changed":70}]},"message":"add sysctl tests"},{"commit":"3e53323514906fb84abfaeed0c2ee1fd9090ad8d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":2}]},"message":"don't filter out empty lines"},{"commit":"a5ee9861b9b9b479aee59ea5b1d75f20d7c3c8e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3785,"deletions":1,"files":["tests/fixtures/freebsd12/sysctl-a.json","tests/fixtures/freebsd12/sysctl-a.out","tests/fixtures/osx-10.14.6/sysctl-a.json"],"file_stats":[{"name":"tests/fixtures/freebsd12/sysctl-a.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/sysctl-a.out","lines_changed":3783},{"name":"tests/fixtures/osx-10.14.6/sysctl-a.json","lines_changed":2}]},"message":"update fixtures"},{"commit":"feb8ca76545cba4fd0927273ddf90a77df994006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/sysctl.md"],"file_stats":[{"name":"docs/parsers/sysctl.md","lines_changed":2}]},"message":"spelling"},{"commit":"a7abe4473b90c512466db9ae98cfac585689fe2a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":2}]},"message":"spelling"},{"commit":"780b9b61dec3e142e46c9a82146d2af4e1144123","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":6}]},"message":"specify IndexError exception in try/except block"},{"commit":"19ace36ffa659bedf0ba2e43572c9e253592b2e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2167,"deletions":0,"files":["tests/fixtures/osx-10.14.6/sysctl-a.json","tests/fixtures/osx-10.14.6/sysctl-a.out","tests/fixtures/ubuntu-18.04/sysctl-a.json","tests/fixtures/ubuntu-18.04/sysctl-a.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/sysctl-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/sysctl-a.out","lines_changed":1287},{"name":"tests/fixtures/ubuntu-18.04/sysctl-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/sysctl-a.out","lines_changed":878}]},"message":"add fixtures"},{"commit":"5fff8afc9f47f8cc6db8ed3613b90b5cdc683b43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":33,"deletions":11,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":44}]},"message":"add fixes for freebsd where values can be on separate lines under the key"},{"commit":"4ad230c9279c5eb6c8ed6baf7254b8e9328e5af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":929,"deletions":14,"files":["docs/parsers/sysctl.md","jc/parsers/sysctl.py","tests/fixtures/centos-7.7/sysctl-a.json","tests/fixtures/centos-7.7/sysctl-a.out"],"file_stats":[{"name":"docs/parsers/sysctl.md","lines_changed":12},{"name":"jc/parsers/sysctl.py","lines_changed":12},{"name":"tests/fixtures/centos-7.7/sysctl-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sysctl-a.out","lines_changed":918}]},"message":"doc update and add test fixtures"},{"commit":"dd98eb1ec8f451eb87a5094e76a7f758dee3fc69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":7,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":11}]},"message":"append duplicate key values to original key instead of adding unique keys"},{"commit":"c6baf42e72b4f41ed511e7db943297d03a39c0d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":94,"deletions":7,"files":["docgen.sh","docs/parsers/sysctl.md","jc/parsers/sysctl.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/sysctl.md","lines_changed":86},{"name":"jc/parsers/sysctl.py","lines_changed":14}]},"message":"doc updates"},{"commit":"e2bac97d563e5ef771ccd8ed1e5c42cbf588b120","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":12}]},"message":"fix for multiple identical keys in sysctl output"},{"commit":"d112ee94d0ec534828c8508d0fb833b768975990","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":4,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":12}]},"message":"use try/except and add support for floats in process()"},{"commit":"27b21b2fafab912f21b88b66c7f817cbce155765","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":7,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":15}]},"message":"formatting and docstring updates"},{"commit":"8c96d5cd20448a4f7f9736c4d489d6ecc3068ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["requirements.txt"],"file_stats":[{"name":"requirements.txt","lines_changed":2}]},"message":"reduce pygments version requirement"},{"commit":"c29ed3fd695f725005333db5e6e2cd844bb4ca14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":13,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":27}]},"message":"formatting of quotation marks and docstrings"},{"commit":"cedf603f121636bdfa95432059c3c275c3ea3e9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]},"message":"minor formatting"},{"commit":"279161c36f288c27a9789054ae372fe8ceb58a94","merge":"bc7116c ce0b43d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #72 from duelafn/pygments-2.3\n\nSupport older pygments"},{"commit":"ce0b43d919f07d96d1b94e9d14d03e935e80011d","author":"Dean Serenevy","author_email":"dean@serenevy.net","commit_by":"Dean Serenevy","commit_by_email":"dean@serenevy.net","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"Remove dependency on 3rd party packaging library"},{"commit":"ddafa5bf06066bab8e9587be902d6752fcf51605","author":"Dean Serenevy","author_email":"dean@serenevy.net","commit_by":"Dean Serenevy","commit_by_email":"dean@serenevy.net","stats":{"files_changed":2,"insertions":47,"deletions":7,"files":["jc/cli.py","setup.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":52},{"name":"setup.py","lines_changed":2}]},"message":"Support older pygments"},{"commit":"bc7116c31bacf3159aef775fd0e615187420b010","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":8,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":15}]},"message":"fix JC_COLORS env bug and simplify set_env_colors()"},{"commit":"53b709272115e769dac905296fa3b000c1cdd66a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":11,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":22}]},"message":"remove side-effects from functions and print in main()"},{"commit":"beb9174b1b35937ae1fb99778369ae643a8f1005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":123,"deletions":0,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":123}]},"message":"add sysctl parser"},{"commit":"aea41ed341c8d53cc07c35e8044e8f816ddd2fed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":11}]},"message":"move verbose_debug enable earlier in code to catch more issues. add sysctl and version bump"},{"commit":"d789494cb1f691aa352419aaefc692f654477177","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/tracebackplus.py"],"file_stats":[{"name":"jc/tracebackplus.py","lines_changed":2}]},"message":"change type check to use isinstance"},{"commit":"608e7b4cff081f92177e4151ffa1a91a4a6895ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":61,"deletions":0,"files":["jc/tracebackplus.py"],"file_stats":[{"name":"jc/tracebackplus.py","lines_changed":61}]},"message":"add license info"},{"commit":"4ee199c02a78c2707c5d1427d7c8fae56df5671c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":189,"deletions":3,"files":["jc/cli.py","jc/tracebackplus.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6},{"name":"jc/tracebackplus.py","lines_changed":186}]},"message":"use tracebackplus instead of cgitb since cgitb is depricated"},{"commit":"fbf47d408501dadda4671fb530f5e11859e85d53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add arch linux"},{"commit":"5a238e4b4204f0552327534ef798c28d3ad4f578","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"remove updates-testing from fedora command"},{"commit":"f852b8246a8f9e5f7d9144fed3a0daa4eddfe035","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":3}]},"message":"wrap warning message"},{"commit":"88140d929a500ee78f807862c4912c399df2a460","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"wrap error message in code"},{"commit":"45f726824027af49c437b6e81e4700f7098af320","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add -dd to error message"},{"commit":"3a3c8e4d4a77135eaee5cb30c3107a4531c300ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]},"message":"move verbose_debug under debug check"},{"commit":"c1ac183a0472e93226c9ee1905f56c5183e3721f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":15,"deletions":22,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":37}]},"message":"simplify debug option"},{"commit":"18bb779ee5cd5821764b03173f16e922f753c64d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"formatting: double quotes to single quotes"},{"commit":"8b6612fe7911ab9e0bf8d29be60865d3b8aa3fd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"move JC_COLORS parsing error message"},{"commit":"fde0bc853415418e01616861ace5048770bd97f8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":34,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":43}]},"message":"improve package install info"},{"commit":"e661a78939ff067b8a61f08301c178dd10a344ab","merge":"b969751 847e346","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #71 from wigust/guix\n\nadd guix package info"},{"commit":"847e346602789bf58e3515319e9d080dfb897fc9","author":"Oleg Pykhalov","author_email":"go.wigust@gmail.com","commit_by":"Oleg Pykhalov","commit_by_email":"go.wigust@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"add guix package info"},{"commit":"b9697516887c61f08d8d7b1dc9130350e5bdba9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"add other references"},{"commit":"ad6f2ba03a293a7f55e456fa5f5b55ee3cbcd4ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"63c6a5edc0e9001b143595fd8b96f1b4a1377a3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"formatting"},{"commit":"9f4cf9dd5efe94adfff0961fdb73097ca27c5463","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":197,"deletions":67,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":264}]},"message":"formatting"},{"commit":"51331b6dc01eee00847fa4be549ffde365373a01","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":5}]},"message":"formatting"},{"commit":"efb6761033319644bf9cdae6288ff5609f6482ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"6a4f737a0f1c322bebccf69809d9816fc770c5ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":88,"deletions":115,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":203}]},"message":"update json syntax highlighting"},{"commit":"be6864b778ab721bcba5fc3221576153be7b2ed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":26,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":52}]},"message":"add syntax highlighting tags"},{"commit":"de3b91a36cfcaf565b26b1da42f1e87835da4dc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add -dd option"},{"commit":"ef5482c3b5afa0ee8e85851bebab1c104cb59936","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":15,"deletions":7,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":17},{"name":"setup.py","lines_changed":2}]},"message":"add verbose debug option"},{"commit":"d20b795137036f8b889eb231cb4f14b756ec6479","merge":"69018cd 8a13406","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #70 from kellyjonbrazil/dev\n\nDev v1.11.7"},{"commit":"8a134065dff429551449c1ea16a36d745fdab580","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":12,"deletions":12,"files":["tests/fixtures/centos-7.7/iptables-filter-line-numbers.json","tests/fixtures/centos-7.7/iptables-filter-nv.json","tests/fixtures/centos-7.7/iptables-filter.json","tests/fixtures/centos-7.7/iptables-mangle.json","tests/fixtures/centos-7.7/iptables-nat.json","tests/fixtures/centos-7.7/iptables-raw.json","tests/fixtures/ubuntu-18.04/iptables-filter-line-numbers.json","tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","tests/fixtures/ubuntu-18.04/iptables-filter.json","tests/fixtures/ubuntu-18.04/iptables-mangle.json","tests/fixtures/ubuntu-18.04/iptables-nat.json","tests/fixtures/ubuntu-18.04/iptables-raw.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/iptables-filter-line-numbers.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-filter-nv.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-filter.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-mangle.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-nat.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-raw.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter-line-numbers.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-mangle.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-nat.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-raw.json","lines_changed":2}]},"message":"update fixtures for last chain fix"},{"commit":"22aee1bfa40ed1d3c4df28cd934ef0edfc5c458c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"b282820fd67dcc96c058198f97b066e7b402d1f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":3}]},"message":"fix to include the final chain in output"},{"commit":"3ee098306daf903687cb0febf92773a81e216111","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":2}]},"message":"version bump"},{"commit":"09e8f379a64b3b37bb99b4291c10aa4a5cdedea4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":11,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":20}]},"message":"iptables code optimizations"},{"commit":"69018cdb3a77fcdcb5648e3b89933148c55a6412","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"fix date"},{"commit":"d0d7254c6acc7be4341618d231a5b166f640b287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":26,"deletions":0,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":15},{"name":"jc/utils.py","lines_changed":11}]},"message":"add docstring"},{"commit":"cc0f0971d76b6f3dec8d989e83f5676db8f2c6d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":56,"insertions":476,"deletions":439,"files":["changelog.txt","jc/cli.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/utils.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":10},{"name":"jc/parsers/airport_s.py","lines_changed":4},{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/blkid.py","lines_changed":5},{"name":"jc/parsers/crontab.py","lines_changed":5},{"name":"jc/parsers/crontab_u.py","lines_changed":5},{"name":"jc/parsers/csv.py","lines_changed":5},{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":193},{"name":"jc/parsers/dmidecode.py","lines_changed":264},{"name":"jc/parsers/du.py","lines_changed":8},{"name":"jc/parsers/env.py","lines_changed":8},{"name":"jc/parsers/file.py","lines_changed":39},{"name":"jc/parsers/foo.py","lines_changed":8},{"name":"jc/parsers/free.py","lines_changed":5},{"name":"jc/parsers/fstab.py","lines_changed":5},{"name":"jc/parsers/group.py","lines_changed":5},{"name":"jc/parsers/gshadow.py","lines_changed":5},{"name":"jc/parsers/history.py","lines_changed":26},{"name":"jc/parsers/hosts.py","lines_changed":8},{"name":"jc/parsers/id.py","lines_changed":8},{"name":"jc/parsers/ifconfig.py","lines_changed":18},{"name":"jc/parsers/ini.py","lines_changed":5},{"name":"jc/parsers/iptables.py","lines_changed":44},{"name":"jc/parsers/jobs.py","lines_changed":8},{"name":"jc/parsers/last.py","lines_changed":8},{"name":"jc/parsers/ls.py","lines_changed":5},{"name":"jc/parsers/lsblk.py","lines_changed":8},{"name":"jc/parsers/lsmod.py","lines_changed":5},{"name":"jc/parsers/lsof.py","lines_changed":9},{"name":"jc/parsers/mount.py","lines_changed":9},{"name":"jc/parsers/netstat.py","lines_changed":8},{"name":"jc/parsers/ntpq.py","lines_changed":5},{"name":"jc/parsers/passwd.py","lines_changed":8},{"name":"jc/parsers/pip_list.py","lines_changed":9},{"name":"jc/parsers/pip_show.py","lines_changed":9},{"name":"jc/parsers/ps.py","lines_changed":6},{"name":"jc/parsers/route.py","lines_changed":6},{"name":"jc/parsers/shadow.py","lines_changed":8},{"name":"jc/parsers/ss.py","lines_changed":8},{"name":"jc/parsers/stat.py","lines_changed":7},{"name":"jc/parsers/systemctl.py","lines_changed":8},{"name":"jc/parsers/systemctl_lj.py","lines_changed":8},{"name":"jc/parsers/systemctl_ls.py","lines_changed":8},{"name":"jc/parsers/systemctl_luf.py","lines_changed":8},{"name":"jc/parsers/timedatectl.py","lines_changed":14},{"name":"jc/parsers/uname.py","lines_changed":6},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/w.py","lines_changed":5},{"name":"jc/parsers/who.py","lines_changed":8},{"name":"jc/parsers/xml.py","lines_changed":5},{"name":"jc/parsers/yaml.py","lines_changed":11},{"name":"jc/utils.py","lines_changed":4},{"name":"setup.py","lines_changed":2}]},"message":"Improve and standardize empty data check for all parsers"},{"commit":"2af61730f0f5b9bc6f1f4c5d9d808ff6ccb0faeb","merge":"07b179c 83f41b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #68 from kellyjonbrazil/dev\n\nDev v1.11.5"},{"commit":"83f41b83dc01c462c6a2295e9fc56ad42a3b62f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"1fb84fce88e0306c26a5771fa4c6dc14a21409a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":16,"insertions":137,"deletions":67,"files":["changelog.txt","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/xml.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py","tests/test_timedatectl.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py","tests/test_who.py","tests/test_xml.py","tests/test_yaml.py"],"file_stats":[{"name":"changelog.txt","lines_changed":5},{"name":"jc/parsers/systemctl_lj.py","lines_changed":3},{"name":"jc/parsers/systemctl_ls.py","lines_changed":33},{"name":"jc/parsers/systemctl_luf.py","lines_changed":35},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/w.py","lines_changed":63},{"name":"jc/parsers/xml.py","lines_changed":6},{"name":"tests/test_systemctl_ls.py","lines_changed":6},{"name":"tests/test_systemctl_luf.py","lines_changed":6},{"name":"tests/test_timedatectl.py","lines_changed":6},{"name":"tests/test_uname.py","lines_changed":6},{"name":"tests/test_uptime.py","lines_changed":6},{"name":"tests/test_w.py","lines_changed":6},{"name":"tests/test_who.py","lines_changed":6},{"name":"tests/test_xml.py","lines_changed":6},{"name":"tests/test_yaml.py","lines_changed":6}]},"message":"fix for no data"},{"commit":"a8837e12447c52dbe438b19c07777b9b4a22081c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"remove --upgrade from pip install"},{"commit":"04d2eec5581998d1a80e762b670af76c92111065","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":56,"deletions":30,"files":["changelog.txt","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","tests/test_stat.py","tests/test_systemctl.py","tests/test_systemctl_lj.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":33},{"name":"jc/parsers/systemctl_lj.py","lines_changed":33},{"name":"tests/test_stat.py","lines_changed":6},{"name":"tests/test_systemctl.py","lines_changed":6},{"name":"tests/test_systemctl_lj.py","lines_changed":6}]},"message":"fix for no data"},{"commit":"1b57ec92f052ddc8959540511512190a539262b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":152,"deletions":68,"files":["changelog.txt","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/pip_list.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","tests/fixtures/centos-7.7/ss-sudo-a.json","tests/fixtures/ubuntu-18.04/ss-sudo-a.json","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_ntpq.py","tests/test_passwd.py","tests/test_pip_list.py","tests/test_pip_show.py","tests/test_ps.py","tests/test_route.py","tests/test_shadow.py","tests/test_ss.py"],"file_stats":[{"name":"changelog.txt","lines_changed":8},{"name":"jc/parsers/mount.py","lines_changed":3},{"name":"jc/parsers/netstat.py","lines_changed":41},{"name":"jc/parsers/ntpq.py","lines_changed":35},{"name":"jc/parsers/pip_list.py","lines_changed":31},{"name":"jc/parsers/ps.py","lines_changed":9},{"name":"jc/parsers/route.py","lines_changed":9},{"name":"jc/parsers/ss.py","lines_changed":14},{"name":"tests/fixtures/centos-7.7/ss-sudo-a.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ss-sudo-a.json","lines_changed":2},{"name":"tests/test_lsof.py","lines_changed":6},{"name":"tests/test_mount.py","lines_changed":6},{"name":"tests/test_netstat.py","lines_changed":6},{"name":"tests/test_ntpq.py","lines_changed":6},{"name":"tests/test_passwd.py","lines_changed":6},{"name":"tests/test_pip_list.py","lines_changed":6},{"name":"tests/test_pip_show.py","lines_changed":6},{"name":"tests/test_ps.py","lines_changed":6},{"name":"tests/test_route.py","lines_changed":6},{"name":"tests/test_shadow.py","lines_changed":6},{"name":"tests/test_ss.py","lines_changed":6}]},"message":"fix for no data"},{"commit":"4d8859540417e99e273fda2cea959240f3c37ea3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":2}]},"message":"enhance empty data check"},{"commit":"52b1272a3aab09b5a8c4a277fbf9975a1b8b6921","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":2}]},"message":"enhance empty data check"},{"commit":"d2ccad6a83138fbf6eb863634fd354dc6c3fa238","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":33,"deletions":15,"files":["jc/parsers/lsblk.py","jc/parsers/lsmod.py","tests/test_lsblk.py","tests/test_lsmod.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":21},{"name":"jc/parsers/lsmod.py","lines_changed":15},{"name":"tests/test_lsblk.py","lines_changed":6},{"name":"tests/test_lsmod.py","lines_changed":6}]},"message":"fix for no data"},{"commit":"cad6dde4ac66cf970a7f52d8e7958ea35c083629","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":60,"deletions":0,"files":["tests/test_group.py","tests/test_gshadow.py","tests/test_history.py","tests/test_hosts.py","tests/test_id.py","tests/test_ifconfig.py","tests/test_ini.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_last.py"],"file_stats":[{"name":"tests/test_group.py","lines_changed":6},{"name":"tests/test_gshadow.py","lines_changed":6},{"name":"tests/test_history.py","lines_changed":6},{"name":"tests/test_hosts.py","lines_changed":6},{"name":"tests/test_id.py","lines_changed":6},{"name":"tests/test_ifconfig.py","lines_changed":6},{"name":"tests/test_ini.py","lines_changed":6},{"name":"tests/test_iptables.py","lines_changed":6},{"name":"tests/test_jobs.py","lines_changed":6},{"name":"tests/test_last.py","lines_changed":6}]},"message":"fix for no data"},{"commit":"06811c3539b0d871e13e9b8d3b51f731d06fd2ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_fstab.py"],"file_stats":[{"name":"tests/test_fstab.py","lines_changed":6}]},"message":"add test for no data"},{"commit":"0cb23c2b21f464082609409261de8e95eb1b0d55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":17,"deletions":7,"files":["changelog.txt","jc/parsers/free.py","tests/test_free.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/free.py","lines_changed":17},{"name":"tests/test_free.py","lines_changed":6}]},"message":"add fix for no data"},{"commit":"ac4688dca22334385ec2c87027f2f14f9ca93ce4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_file.py"],"file_stats":[{"name":"tests/test_file.py","lines_changed":6}]},"message":"add test for no data"},{"commit":"326c3b4670a0e47cbe2988b38fb1c1b26a4db890","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_env.py"],"file_stats":[{"name":"tests/test_env.py","lines_changed":6}]},"message":"add test for no data"},{"commit":"9b29d0c2688eda2e4707aeba693ed14fa433a706","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_du.py"],"file_stats":[{"name":"tests/test_du.py","lines_changed":6}]},"message":"add test for no data"},{"commit":"e0013c38710b4ecf3a588a16d1d908effc23b485","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["tests/test_dmidecode.py"],"file_stats":[{"name":"tests/test_dmidecode.py","lines_changed":5}]},"message":"add test for no data"},{"commit":"a75744075b0628bdb711d8a929a759b4b4067edb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_dig.py"],"file_stats":[{"name":"tests/test_dig.py","lines_changed":6}]},"message":"add no data test"},{"commit":"525aec1a02380f17ab7827434616f981f7457bd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":16,"deletions":7,"files":["changelog.txt","jc/parsers/df.py","tests/test_df.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":16},{"name":"tests/test_df.py","lines_changed":6}]},"message":"fix for no data"},{"commit":"0bf9a7a072a80e10a29c6bb3943b107352dc1d45","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_csv.py"],"file_stats":[{"name":"tests/test_csv.py","lines_changed":6}]},"message":"add test for no data"},{"commit":"d8f2f4c95bc699386b9fe93d10e13637875a1dcf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":96,"deletions":80,"files":["changelog.txt","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/test_crontab.py","tests/test_crontab_u.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":79},{"name":"jc/parsers/crontab_u.py","lines_changed":83},{"name":"tests/test_crontab.py","lines_changed":6},{"name":"tests/test_crontab_u.py","lines_changed":6}]},"message":"fix for no data"},{"commit":"35d733b44f3705bed3dd8ce340379470f199f772","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":70,"deletions":60,"files":["changelog.txt","jc/parsers/arp.py","jc/parsers/blkid.py","tests/test_arp.py","tests/test_blkid.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":112},{"name":"jc/parsers/blkid.py","lines_changed":4},{"name":"tests/test_arp.py","lines_changed":6},{"name":"tests/test_blkid.py","lines_changed":6}]},"message":"fix for no data"},{"commit":"9179b4175c5063bed14ecb96ba24c517920c0d94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":16,"deletions":0,"files":["changelog.txt","tests/test_airport.py","tests/test_airport_s.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"tests/test_airport.py","lines_changed":6},{"name":"tests/test_airport_s.py","lines_changed":6}]},"message":"add nodata tests"},{"commit":"bb07d78c78ff5c5b2ee4d2086ffc6dd5ebedf0fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":8,"files":["jc/parsers/airport_s.py"],"file_stats":[{"name":"jc/parsers/airport_s.py","lines_changed":18}]},"message":"add nodata fix"},{"commit":"07b179cd7f8853ff6aca0b27a703e198c158ca72","merge":"12a80e7 054422d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #67 from kellyjonbrazil/Dev\n\nDev v1.11.4"},{"commit":"054422d8373e7b8def18ddabd447062cb9cc3137","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_ls.py"],"file_stats":[{"name":"tests/test_ls.py","lines_changed":6}]},"message":"add test for empty directory"},{"commit":"3e052d18102e98a09cbba21866855691eaccc216","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"c8e72805cf9def478b56c925f4afcc0ece1daac0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":10,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":19}]},"message":"fix error on empty directory"},{"commit":"12a80e7db0f6c7d536674ad8d34e26bba9a1f1f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":12}]},"message":"add fedora package info"},{"commit":"ee7ff9a09d3373f60ae1645376ccc0057803147e","merge":"346a14c f6478fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #66 from kellyjonbrazil/dev\n\nDev v1.11.3"},{"commit":"f6478fb636ead8d1e53e4a88d59e55222df37a8f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"811a0b0495819925199d70db266066197cc6824e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add info regarding the local parser plugin files"},{"commit":"aeb48edf727f23cc4f8fd9b760cfb69f03098278","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"use $LOCALAPPDATA variable for windows"},{"commit":"b1e94f0df7041bcae97455508f423178aef9d61d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"heading formatting"},{"commit":"60050e3c0fe34980f7db5b8bd46430f953f0c3a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":26}]},"message":"fix linux/unix directory and add note about the XDG specification followed"},{"commit":"39ef09aa5b0d43b5128299511afe80336aa38203","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add local parser plugin feature"},{"commit":"8377d4311611c242e16eaebe66dafac9529150d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"54e4c447ab34ae54c73c92df40f1b4ca6ffb2277","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":10}]},"message":"clean up formatting"},{"commit":"937a9fa9cf2ede8e686ba853989f33e4a483a0ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":613,"deletions":3,"files":["jc/appdirs.py","jc/cli.py","requirements.txt","setup.py"],"file_stats":[{"name":"jc/appdirs.py","lines_changed":611},{"name":"jc/cli.py","lines_changed":3},{"name":"requirements.txt","lines_changed":1},{"name":"setup.py","lines_changed":1}]},"message":"vendorize appdirs module"},{"commit":"808ff6cf0e784cf0c2d523ff2e01197cb6e88c82","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":12}]},"message":"more acknowledgments updates"},{"commit":"7f5c649a95a871c3cd8d48731a6d26dcba6f725b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update acknowledgments"},{"commit":"b72727dec995de1ca5f68ee17a710b086c87d612","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":11}]},"message":"update custom parsers info"},{"commit":"3fc88bfb334143b68a9cb78d4034f33e7c0bcf76","merge":"346a14c 9f2279d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #65 from duelafn/local-parsers\n\nLoad custom parsers from /jc/jcparsers"},{"commit":"9f2279d5867eb89d4b4b7b4ffca290166ec97c48","author":"Dean Serenevy","author_email":"dean@serenevy.net","commit_by":"Dean Serenevy","commit_by_email":"dean@serenevy.net","stats":{"files_changed":4,"insertions":29,"deletions":2,"files":["README.md","jc/cli.py","requirements.txt","setup.py"],"file_stats":[{"name":"README.md","lines_changed":7},{"name":"jc/cli.py","lines_changed":22},{"name":"requirements.txt","lines_changed":1},{"name":"setup.py","lines_changed":1}]},"message":"Load custom parsers from /jc/jcparsers"},{"commit":"346a14cb9bb0d762fc3fa366ad97e5ff85f3992a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"change osx_device to unix_device"},{"commit":"dac00d17ff9f3d2bb959697b6e567015bfc2702b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":17,"deletions":0,"files":["tests/fixtures/nixos/route-ee.json","tests/fixtures/nixos/route-ee.out","tests/test_route.py"],"file_stats":[{"name":"tests/fixtures/nixos/route-ee.json","lines_changed":1},{"name":"tests/fixtures/nixos/route-ee.out","lines_changed":4},{"name":"tests/test_route.py","lines_changed":12}]},"message":"add nixos test"},{"commit":"9ca7cd40601b97829e8f88071fdfb928d939f7e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":17,"deletions":34,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":51}]},"message":"update docs"},{"commit":"aa31628970b12295a41dff20e829fcce9f8a4d07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":70,"deletions":63,"files":["README.md","docs/parsers/netstat.md","docs/parsers/route.md","docs/parsers/stat.md","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":46},{"name":"docs/parsers/netstat.md","lines_changed":16},{"name":"docs/parsers/route.md","lines_changed":51},{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":16}]},"message":"update docs"},{"commit":"bed694fcf5c8c31bbd4f3e88759fe7ab82382d24","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"4b4af69fa184896ec15b5be7dc8416f36f921d5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"fix date"},{"commit":"9d96190a5b19e8d71c3ac66eb0303d269dd4ce5d","merge":"96df396 fa44d48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #64 from kellyjonbrazil/dev\n\nDev v1.11.2"},{"commit":"fa44d48c094a55e499c2c780d109bf277736b42e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":129,"deletions":7,"files":["changelog.txt","jc/parsers/stat.py","tests/fixtures/freebsd12/stat.json","tests/fixtures/freebsd12/stat.out","tests/fixtures/osx-10.14.6/stat.json","tests/test_stat.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":12},{"name":"tests/fixtures/freebsd12/stat.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/stat.out","lines_changed":107},{"name":"tests/fixtures/osx-10.14.6/stat.json","lines_changed":2},{"name":"tests/test_stat.py","lines_changed":12}]},"message":"freebsd fixes, tests, and fixtures"},{"commit":"4ef961c2788c935b1fea1c9777b976e7b89e7367","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":20,"deletions":0,"files":["tests/fixtures/freebsd12/ntpq-p.json","tests/fixtures/freebsd12/ntpq-p.out","tests/test_ntpq.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/ntpq-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ntpq-p.out","lines_changed":7},{"name":"tests/test_ntpq.py","lines_changed":12}]},"message":"add freebsd test and fixtures"},{"commit":"292a837d5c47165ccb155f079b0a114b5c17a98e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":22,"deletions":0,"files":["tests/fixtures/freebsd12/last.json","tests/fixtures/freebsd12/last.out","tests/test_last.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/last.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/last.out","lines_changed":9},{"name":"tests/test_last.py","lines_changed":12}]},"message":"add tests and fixtures for freebsd12"},{"commit":"aa7b915d847dbd29d2c09b2cc40b847e37174ffb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":2}]},"message":"version bump"},{"commit":"c46fe73236b912d2ee89dfb36ff259fe95fd0479","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"add last fixes for freebsd"},{"commit":"039b2c129cbe79d2d23b1194b043d8b730609956","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":1,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":11}]},"message":"freebsd fixes"},{"commit":"8f2e5e4808b30c658a4cb87125639e4d7d6c15d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"fix compatible logic"},{"commit":"c4da8e4f78e6b4aaa4aff76ae042be9aaec832a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":12}]},"message":"add nixos and freebsd to tested. update new arp fields"},{"commit":"bcab9078a4c2bfd6ae4dca9448b577d9ed0fc01c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"add w parser fix"},{"commit":"b3c6c1ea925bf7cd76368f5074fb8af52a844522","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":29,"deletions":5,"files":["jc/parsers/w.py","tests/fixtures/nixos/w.json","tests/fixtures/nixos/w.out","tests/test_w.py"],"file_stats":[{"name":"jc/parsers/w.py","lines_changed":8},{"name":"tests/fixtures/nixos/w.json","lines_changed":1},{"name":"tests/fixtures/nixos/w.out","lines_changed":5},{"name":"tests/test_w.py","lines_changed":20}]},"message":"strip whitespace in string fields and add tests"},{"commit":"a3af8662bd491e344c93d24afabd23e90efd8086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":205,"deletions":3,"files":["tests/fixtures/osx-10.11.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a2.json"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/arp-a.json","lines_changed":107},{"name":"tests/fixtures/osx-10.14.6/arp-a.json","lines_changed":99},{"name":"tests/fixtures/osx-10.14.6/arp-a2.json","lines_changed":2}]},"message":"add permanent field"},{"commit":"35940d0bc80bf61b11f40b1e1043835f26eb391c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":59,"deletions":4,"files":["changelog.txt","docs/parsers/arp.md","jc/parsers/arp.py","tests/fixtures/freebsd12/arp-a.json","tests/fixtures/freebsd12/arp-a.out","tests/test_arp.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":12},{"name":"jc/parsers/arp.py","lines_changed":33},{"name":"tests/fixtures/freebsd12/arp-a.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/arp-a.out","lines_changed":3},{"name":"tests/test_arp.py","lines_changed":12}]},"message":"add freebsd permanent and expires fields"},{"commit":"26994cdcb7148d2c9d1701bca9541d247356260b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":115,"deletions":85,"files":["docs/parsers/df.md","docs/parsers/fstab.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/route.md","docs/parsers/stat.md","docs/parsers/uname.md"],"file_stats":[{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":163},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":25},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2}]},"message":"add freebsd compatibility info"},{"commit":"017159a829691cb6a7174f123d024eb252179b75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":15,"insertions":221,"deletions":0,"files":["tests/fixtures/freebsd12/netstat-Aa.json","tests/fixtures/freebsd12/netstat-AaT.json","tests/fixtures/freebsd12/netstat-AaT.out","tests/fixtures/freebsd12/netstat-AanP.json","tests/fixtures/freebsd12/netstat-AanP.out","tests/fixtures/freebsd12/netstat-Aax.json","tests/fixtures/freebsd12/netstat-Aax.out","tests/fixtures/freebsd12/netstat-aT.json","tests/fixtures/freebsd12/netstat-aT.out","tests/fixtures/freebsd12/netstat-an.json","tests/fixtures/freebsd12/netstat-i.json","tests/fixtures/freebsd12/netstat-ib.json","tests/fixtures/freebsd12/netstat-ib.out","tests/fixtures/freebsd12/netstat-r.json","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/netstat-Aa.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-AaT.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-AaT.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-AanP.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-AanP.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-Aax.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-Aax.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-aT.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-aT.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-an.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-i.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-ib.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-ib.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/netstat-r.json","lines_changed":1},{"name":"tests/test_netstat.py","lines_changed":108}]},"message":"add freebsd nestat tests and fixtures"},{"commit":"b4e9c85e08d199dad67f03c7603194278a022696","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":0,"files":["jc/parsers/netstat_freebsd_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_freebsd_osx.py","lines_changed":12}]},"message":"fixup -T freebsd output and add whitespace stripping to parse_post"},{"commit":"189146cd84cfad262f2b2601bb0cb4b9dde2587e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":10}]},"message":"add more ints. remove whitespace strip code and move to freebsd_osx module"},{"commit":"af34153ffab10ca1ad7f44736d379d91ae43c813","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["changelog.txt","jc/cli.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2}]},"message":"version bump"},{"commit":"bf2ff3ffbb639446779b1f04f2997707d99c0a1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":9}]},"message":"fix compatibility search for platform names that append the version number (e.g. freebsd12)"},{"commit":"6423c9efd69e938af38934a97ca6b65009e8f07e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":34,"deletions":5,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":39}]},"message":"integer and float updates"},{"commit":"58ab0d4ece7f006ce9431afb9e0fecbe60930be7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":12,"deletions":4,"files":["changelog.txt","jc/parsers/netstat.py","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":11},{"name":"tests/fixtures/osx-10.14.6/netstat-An.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat.json","lines_changed":2}]},"message":"strip whitespace from string fields"},{"commit":"83a738bf4d756036d6269b9153220d7f1018ac9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/netstat-Abn.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-An.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat.json","lines_changed":2}]},"message":"update fixtures for osx_flags and osx_inode name change to unix_flags and unix_inode"},{"commit":"3640671fc6a67c9628fd47e19e9fe0a0738439ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/{netstat_osx.py => netstat_freebsd_osx.py}"],"file_stats":[{"name":"jc/parsers/{netstat_osx.py => netstat_freebsd_osx.py}","lines_changed":10}]},"message":"rename module"},{"commit":"1da623b30ef6f9b12ac231518d2d4e7dadcf717b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":9}]},"message":"add items"},{"commit":"b10ca64646e93d9797182ea046f4956a17b37627","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":71,"deletions":71,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":142}]},"message":"change osx_inode and osx_flags to unix_inode and unix_flags. Also rename netstat_osx module to netstat_freebsd_osx"},{"commit":"2128763ee67a07da6ebf123abeec39794bc1f4e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":12,"files":["tests/test_netstat.py"],"file_stats":[{"name":"tests/test_netstat.py","lines_changed":24}]},"message":"fix osx version from 16.4 to 14.6"},{"commit":"a27e7ed39c63c04cfa78caceaada42f7a9496a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":12,"deletions":12,"files":["tests/fixtures/centos-7.7/netstat-r.json","tests/fixtures/centos-7.7/netstat-rne.json","tests/fixtures/centos-7.7/netstat-rnee.json","tests/fixtures/centos-7.7/route-vn.json","tests/fixtures/centos-7.7/route.json","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-rnl.json","tests/fixtures/ubuntu-18.04/netstat-r.json","tests/fixtures/ubuntu-18.04/netstat-rne.json","tests/fixtures/ubuntu-18.04/netstat-rnee.json","tests/fixtures/ubuntu-18.04/route-vn.json","tests/fixtures/ubuntu-18.04/route.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/netstat-r.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/netstat-rne.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/netstat-rnee.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/route-vn.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/route.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-r.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-rnl.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/netstat-r.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/netstat-rne.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/netstat-rnee.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/route-vn.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/route.json","lines_changed":2}]},"message":"test updates for added route_flags_pretty and flags_pretty fields"},{"commit":"f07b7eaa474eb87dbdbc7fbe41b9386feff7bee2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":38,"deletions":12,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":50}]},"message":"add flags_pretty"},{"commit":"6ce18de84ce16a926f9cd97c3210ef209c3352da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":130,"deletions":69,"files":["jc/parsers/netstat.py","jc/parsers/netstat_linux.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":139},{"name":"jc/parsers/netstat_linux.py","lines_changed":23},{"name":"jc/parsers/netstat_osx.py","lines_changed":37}]},"message":"add route_flags_pretty"},{"commit":"8631b756e7ab8cd71c2a3eb288e2d1823cec5782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":76,"deletions":0,"files":["tests/fixtures/freebsd12/netstat-Aa.out","tests/fixtures/freebsd12/netstat-an.out","tests/fixtures/freebsd12/netstat-i.out","tests/fixtures/freebsd12/netstat-r.out"],"file_stats":[{"name":"tests/fixtures/freebsd12/netstat-Aa.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-an.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-i.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/netstat-r.out","lines_changed":20}]},"message":"add freebsd test files"},{"commit":"7414d984125300164a5b6156d7a80128d4d6cb15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":18,"deletions":18,"files":["jc/parsers/df.py","jc/parsers/fstab.py","jc/parsers/mount.py","jc/parsers/ntpq.py","jc/parsers/stat.py","jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":6},{"name":"jc/parsers/fstab.py","lines_changed":6},{"name":"jc/parsers/mount.py","lines_changed":6},{"name":"jc/parsers/ntpq.py","lines_changed":6},{"name":"jc/parsers/stat.py","lines_changed":6},{"name":"jc/parsers/uname.py","lines_changed":6}]},"message":"add freebsd compatibility"},{"commit":"d7b19892e8fb11e17fcbadcdbb08d49897d7754f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":10,"deletions":7,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":13},{"name":"jc/parsers/netstat_osx.py","lines_changed":4}]},"message":"add freebsd support for netstat -i"},{"commit":"96df396eaf4e030113005a95e525d644c394dfe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"2f6f640317da5af894f34f187c4243ef0c599d07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"spelling"},{"commit":"c4a0a50f3a3ac5833ab5d2f8a0cb3f18da335812","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"add nix-env"},{"commit":"658f8a3842273cea049689b3aea15d89a7294b24","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":13}]},"message":"add zypper and ports info"},{"commit":"bfb876a1e394ff63c6773965ba0b65da4e109c1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"formatting"},{"commit":"90c34b1f4ee2d9ec8125346bb90b227f76ada2ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"fix dmidecode example"},{"commit":"3f9164ea77ec41e1b0671d0a642900d8e36faf9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"bold formatting"},{"commit":"7fd6fecbf5a08b1f13aa7e906e94be9bc126780a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"8029f72363a4d19938df07603f03a0147f6246a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":10,"deletions":7,"files":["changelog.txt","docs/parsers/stat.md","jc/cli.py","jc/parsers/stat.py","setup.py","tests/fixtures/osx-10.14.6/stat.json"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":6},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/stat.json","lines_changed":2}]},"message":"change osx_flags from integer to string"},{"commit":"c7fdce5d3b7566a7d290627767c47d9c196e02ad","merge":"f5627a4 84f48aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #62 from kellyjonbrazil/dev\n\nDev v1.11.0"},{"commit":"84f48aa369a458f534523ecc1e3aaaf403d06f1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"2e9a0a9c1221dd01bd683ecbc4871d03738da671","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]},"message":"add features"},{"commit":"c1f6f2b9508e558ab88b4a0a61e93a6cf5460bea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":116,"deletions":4,"files":["docs/parsers/stat.md","jc/parsers/stat.py","tests/fixtures/osx-10.14.6/stat.json","tests/fixtures/osx-10.14.6/stat.out","tests/test_stat.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":8},{"name":"jc/parsers/stat.py","lines_changed":5},{"name":"tests/fixtures/osx-10.14.6/stat.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/stat.out","lines_changed":94},{"name":"tests/test_stat.py","lines_changed":12}]},"message":"osx fixes and tests"},{"commit":"ede21bca13c4b46899721f01d979c8b063f861a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":110,"deletions":78,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":188}]},"message":"add OSX support for stat"},{"commit":"8dd9a9f9cbc70a19176f909f6ac76b2bcf670736","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":45,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-i.json","tests/fixtures/osx-10.14.6/netstat-i.json","tests/fixtures/ubuntu-18.04/netstat-i.json","tests/fixtures/ubuntu-18.04/netstat-i.out","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/netstat-i.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-i.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-i.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-i.out","lines_changed":4},{"name":"tests/test_netstat.py","lines_changed":38}]},"message":"add netstat -i tests"},{"commit":"04f92cd1330759e4bad1c0304b9e1c28e8d32d59","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":166,"deletions":4,"files":["README.md","docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_linux.py","tests/fixtures/centos-7.7/netstat-i.out"],"file_stats":[{"name":"README.md","lines_changed":32},{"name":"docs/parsers/netstat.md","lines_changed":50},{"name":"jc/parsers/netstat.py","lines_changed":44},{"name":"jc/parsers/netstat_linux.py","lines_changed":39},{"name":"tests/fixtures/centos-7.7/netstat-i.out","lines_changed":5}]},"message":"add linux support for netstat -i"},{"commit":"8be8d2393b276a9249e1c573ce19cf630f0942fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":99,"deletions":3,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-i.out"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":19},{"name":"jc/parsers/netstat_osx.py","lines_changed":40},{"name":"tests/fixtures/osx-10.14.6/netstat-i.out","lines_changed":43}]},"message":"add netstat -i support for OSX"},{"commit":"0a879681be68fe2e6e5c013ab0fe18de99b04f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":97,"deletions":282,"files":["README.md","docs/parsers/netstat.md","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":37},{"name":"docs/parsers/netstat.md","lines_changed":171},{"name":"jc/parsers/netstat.py","lines_changed":171}]},"message":"add netstat -r to docs"},{"commit":"2ca1587a49511899bf719e0b0c7de32158fc491d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":102,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-r.json","tests/fixtures/centos-7.7/netstat-rne.json","tests/fixtures/centos-7.7/netstat-rnee.json","tests/fixtures/ubuntu-18.04/netstat-r.json","tests/fixtures/ubuntu-18.04/netstat-r.out","tests/fixtures/ubuntu-18.04/netstat-rne.json","tests/fixtures/ubuntu-18.04/netstat-rne.out","tests/fixtures/ubuntu-18.04/netstat-rnee.json","tests/fixtures/ubuntu-18.04/netstat-rnee.out","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/netstat-r.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-rne.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-rnee.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-r.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-r.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/netstat-rne.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-rne.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/netstat-rnee.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-rnee.out","lines_changed":5},{"name":"tests/test_netstat.py","lines_changed":81}]},"message":"add linux netstat -r tests"},{"commit":"ec2cd2d708a57c0458657416bedcb4340cb40901","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":70,"deletions":11,"files":["docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_linux.py","jc/parsers/netstat_osx.py","tests/fixtures/centos-7.7/netstat-r.out","tests/fixtures/centos-7.7/netstat-rne.out","tests/fixtures/centos-7.7/netstat-rnee.out","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-rnl.json"],"file_stats":[{"name":"docs/parsers/netstat.md","lines_changed":11},{"name":"jc/parsers/netstat.py","lines_changed":13},{"name":"jc/parsers/netstat_linux.py","lines_changed":37},{"name":"jc/parsers/netstat_osx.py","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-r.out","lines_changed":5},{"name":"tests/fixtures/centos-7.7/netstat-rne.out","lines_changed":5},{"name":"tests/fixtures/centos-7.7/netstat-rnee.out","lines_changed":5},{"name":"tests/fixtures/osx-10.14.6/netstat-r.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-rnl.json","lines_changed":2}]},"message":"add netstat -r support for linux"},{"commit":"5d0dbece9317e84a47d9f4b2d18a9ffa33fbee6e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":288,"deletions":5,"files":["docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-r.out","tests/fixtures/osx-10.14.6/netstat-rnl.json","tests/fixtures/osx-10.14.6/netstat-rnl.out","tests/test_netstat.py"],"file_stats":[{"name":"docs/parsers/netstat.md","lines_changed":17},{"name":"jc/parsers/netstat.py","lines_changed":23},{"name":"jc/parsers/netstat_osx.py","lines_changed":37},{"name":"tests/fixtures/osx-10.14.6/netstat-r.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-r.out","lines_changed":93},{"name":"tests/fixtures/osx-10.14.6/netstat-rnl.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-rnl.out","lines_changed":96},{"name":"tests/test_netstat.py","lines_changed":25}]},"message":"add netstat -r functionality for OSX"},{"commit":"df1e4b414b2bda5be3153767cd854b2483ba600b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":[".gitignore"],"file_stats":[{"name":".gitignore","lines_changed":1}]},"message":"remove unused folder"},{"commit":"40760991e7dae43cd15134310f7bbb5ce0f58dae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["LICENSE.md"],"file_stats":[{"name":"LICENSE.md","lines_changed":2}]},"message":"update copyright date"},{"commit":"464f5f86cf2c8fe6a1a857b0ad4d221a3edf3d88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"update description"},{"commit":"7b09e9fccdd4f09218a500b54c898ada1b9843c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":8,"deletions":5,"files":["docs/parsers/dmidecode.md","jc/parsers/dmidecode.py","tests/fixtures/centos-7.7/dmidecode.json","tests/fixtures/fedora32/dmidecode.json","tests/fixtures/ubuntu-18.04/dmidecode.json"],"file_stats":[{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":5},{"name":"tests/fixtures/centos-7.7/dmidecode.json","lines_changed":2},{"name":"tests/fixtures/fedora32/dmidecode.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dmidecode.json","lines_changed":2}]},"message":"set empty values to Null and update fixtures"},{"commit":"6cba7d429898d331c674c778f8bd85ba75a8dca9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"remove linux from description"},{"commit":"9730f62e4970b5a4490f8dc24b6cfb9cacd0cbf2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":151,"deletions":133,"files":["jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json","tests/fixtures/osx-10.14.6/netstat.out"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":7},{"name":"tests/fixtures/osx-10.14.6/netstat-Abn.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-An.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat.out","lines_changed":271}]},"message":"fixup name field and update test fixtures"},{"commit":"e0c1c87f549eee000b93b5f5a3e8d0b052eb7d32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":8}]},"message":"formatting"},{"commit":"931b3d2b836b251590497f4cfa65f106762086c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"e5d561baeecf1fd83a884b3cd9d322762f750dfb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":1}]},"message":"add multipath condition for osx detection"},{"commit":"2867593e7aa12299686e2c6aa0f2a79a9b550b53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":6}]},"message":"changelog update"},{"commit":"dd52fee5635c977d5c77046ab9fe78d2ed10deef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":2141,"deletions":0,"files":["tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-Abn.out","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat-An.out","tests/fixtures/osx-10.14.6/netstat.json","tests/fixtures/osx-10.14.6/netstat.out","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/netstat-Abn.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-Abn.out","lines_changed":689},{"name":"tests/fixtures/osx-10.14.6/netstat-An.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-An.out","lines_changed":689},{"name":"tests/fixtures/osx-10.14.6/netstat.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat.out","lines_changed":724},{"name":"tests/test_netstat.py","lines_changed":36}]},"message":"osx netstat tests and fixtures"},{"commit":"8e1f8858273e671a882a07eae1c35b38f5298c94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":7}]},"message":"fix filtered netstat views"},{"commit":"2d39a58f902e6af77f8f96ffcd1d68b7cbadd56c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":81,"deletions":14,"files":["README.md","docs/parsers/dmidecode.md","docs/parsers/netstat.md","jc/parsers/dmidecode.py"],"file_stats":[{"name":"README.md","lines_changed":67},{"name":"docs/parsers/dmidecode.md","lines_changed":4},{"name":"docs/parsers/netstat.md","lines_changed":20},{"name":"jc/parsers/dmidecode.py","lines_changed":4}]},"message":"doc update"},{"commit":"9c4fa2ae2601ca4880c0b078fa917f01f1392e0e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":22,"deletions":2,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":21},{"name":"jc/parsers/netstat_osx.py","lines_changed":3}]},"message":"integer conversions and icmp fix"},{"commit":"de52d84e82df6d8c5e2416c6bc44e59c41c685da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":17}]},"message":"fix udp state and udp46 entries"},{"commit":"ce9b55059a28d363b8b0ae4f3ccbdbdc4bf4b58e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":185,"deletions":167,"files":["jc/parsers/netstat.py","jc/parsers/netstat_linux.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":171},{"name":"jc/parsers/netstat_linux.py","lines_changed":181}]},"message":"organize files"},{"commit":"bcd370a6a01a115d470776f5690f8571d68d3930","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":15,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":16},{"name":"jc/parsers/netstat_osx.py","lines_changed":4}]},"message":"code cleanup"},{"commit":"c8216850abd2d0b8cc6761453f853f296e8a28f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":55,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":74}]},"message":"code cleanup"},{"commit":"f5feedb90b39e5c3f4564615482d47ccd145844f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":10,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":11}]},"message":"fix comments"},{"commit":"a4371cd187fe5077018edbfeee77eb17c6a90ad3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":6}]},"message":"support netstat -A"},{"commit":"9d5ba4c83404e4fab5c0f40c30b4735685499a31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":2}]},"message":"formatting"},{"commit":"1639dee1bb93f6f89e8bb7b37134dc1f561c479c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":35,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":45}]},"message":"fix parse_post"},{"commit":"9363f430f20951e6fa739f06c85c5b6b3421b60d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":3}]},"message":"use list extend method to simplify code"},{"commit":"9192a0907364c772558380be1373b8dcea972a6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":124,"deletions":34,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":158}]},"message":"parse all sections"},{"commit":"b915eb97556ccc5fc60e8d23f7298ffec2d8e3b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":237,"deletions":55,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":118},{"name":"jc/parsers/netstat_osx.py","lines_changed":174}]},"message":"initial osx parser"},{"commit":"1cfcc2b592f682d2b50a0c4188fa3ae832a6c682","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":2}]},"message":"tighten up line test logic when counting tabs"},{"commit":"7138dd02b73073441a52c9b574bf0d6e02f0d7d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":11}]},"message":"cleanup variables after adding to item"},{"commit":"b4276643b70f7820f8f53df22b32fffb54e30ca2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":56,"deletions":0,"files":["tests/fixtures/centos-7.7/dmidecode.json","tests/fixtures/fedora32/dmidecode.json","tests/fixtures/ubuntu-18.04/dmidecode.json","tests/test_dmidecode.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/dmidecode.json","lines_changed":1},{"name":"tests/fixtures/fedora32/dmidecode.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dmidecode.json","lines_changed":1},{"name":"tests/test_dmidecode.py","lines_changed":53}]},"message":"add dmidecode tests and fixtures"},{"commit":"2ef00763bfe7c4348f30026759941efe39861a0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":4}]},"message":"fix first item"},{"commit":"54364928fc826ead7774a4cec1bcb73a5cb9ee0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":74,"deletions":81,"files":["docs/parsers/dmidecode.md","jc/parsers/dmidecode.py"],"file_stats":[{"name":"docs/parsers/dmidecode.md","lines_changed":37},{"name":"jc/parsers/dmidecode.py","lines_changed":118}]},"message":"fix oddities like hybrid single/multiline data and items containing multiple records"},{"commit":"09b3b4932b0fa4a2b18c88a8465c15a194b727e6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":35430,"deletions":0,"files":["tests/fixtures/centos-7.7/dmidecode.out","tests/fixtures/fedora32/dmidecode.out","tests/fixtures/ubuntu-18.04/dmidecode.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/dmidecode.out","lines_changed":11810},{"name":"tests/fixtures/fedora32/dmidecode.out","lines_changed":11810},{"name":"tests/fixtures/ubuntu-18.04/dmidecode.out","lines_changed":11810}]},"message":"add dmidecode output fixtures"},{"commit":"29d6670119d8fcd0344e90f01bfb6260aa936e50","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":10}]},"message":"convert integers"},{"commit":"2f654b5f1acda01192294f4c18a5a31363e7f387","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["docs/parsers/dmidecode.md"],"file_stats":[{"name":"docs/parsers/dmidecode.md","lines_changed":37}]},"message":"doc update"},{"commit":"e53b9f5992450b53efc886b4fa9ca16f3dd07530","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":37}]},"message":"add caveats to documentation"},{"commit":"addb234e6162c58750cb67947bc4776635bf54fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":153,"deletions":0,"files":["docs/parsers/dmidecode.md"],"file_stats":[{"name":"docs/parsers/dmidecode.md","lines_changed":153}]},"message":"add dmidecode doc"},{"commit":"76eca3b65911a0a340d3d94322a8145ee89c50da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":1}]},"message":"add dmidecode"},{"commit":"f90dec4c0ecf88623fb22273b7527ec8884826c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":94,"deletions":5,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":99}]},"message":"add examples to documentation"},{"commit":"8900a59d4cb424ff58d1eb27f8fda7ea0a668a5c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":19,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":20}]},"message":"simplify logic by removing redundant block"},{"commit":"6685138200d5955115707d04aad0293ea8af5b15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":2}]},"message":"fix for missing multi-line values that come immediately after a previous multi-line value"},{"commit":"4d3e65b980d50164b8220e59560822b9871580ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":5}]},"message":"fix missing values"},{"commit":"e9282bb546f560da6396f44e2ce9e04136348e2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":175,"deletions":0,"files":["jc/cli.py","jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/dmidecode.py","lines_changed":174}]},"message":"add dmidecode parser"},{"commit":"f5627a45947e5e76e5f3e64d9b30099fe0b962a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"81ffdb25105c681c8ed12336d220a102b7f4215e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"remove shebang for Fedora packaging"},{"commit":"4c00a99850cb6f69713be7c6ad9ffba11924d9b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"2bfcb45b28e2174a8bbc27237e619b5c232ccae8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":0}]},"message":"make cli.py executable"},{"commit":"ab0c10e791283affb227d0d5306701ba7fd29d13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["LICENSE.md","README.md"],"file_stats":[{"name":"LICENSE.md","lines_changed":0},{"name":"README.md","lines_changed":0}]},"message":"remove execute permissions"},{"commit":"2c1935115de03a28fe92674b04b2542b0eccb8fe","merge":"99070fa d98e43d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #61 from kellyjonbrazil/dev\n\nDev v1.10.10"},{"commit":"d98e43dc78205d3224bfc1e67de2da3c5fb7ea9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"add netstat item"},{"commit":"9348988d646d9b9c9970c19e84f311554ae38e7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":0,"files":["tests/test_netstat.py"],"file_stats":[{"name":"tests/test_netstat.py","lines_changed":12}]},"message":"add netstat test for Fedora32"},{"commit":"1285c664679c40b18327c89b85921a80b01f0191","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":140,"deletions":0,"files":["tests/fixtures/fedora32/netstat.json","tests/fixtures/fedora32/netstat.out"],"file_stats":[{"name":"tests/fixtures/fedora32/netstat.json","lines_changed":1},{"name":"tests/fixtures/fedora32/netstat.out","lines_changed":139}]},"message":"netstat with bluetooth section"},{"commit":"b7191bbc130e0f33d02c0a4819fa91ffff1599d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":15}]},"message":"handle bluetooth section (ignore for now)"},{"commit":"98b97509f7893cb95e9651ce9706db5c961aa997","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"2b2b570490f3834367a598579473001f45738e8a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":21,"deletions":0,"files":["tests/fixtures/fedora32/last.json","tests/fixtures/fedora32/last.out","tests/test_last.py"],"file_stats":[{"name":"tests/fixtures/fedora32/last.json","lines_changed":1},{"name":"tests/fixtures/fedora32/last.out","lines_changed":8},{"name":"tests/test_last.py","lines_changed":12}]},"message":"add tests for 'gone - no logout'"},{"commit":"cce2d1ff298f2284c43c4534144329f3533a81ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":6}]},"message":"add condition for 'gone - no logout'"},{"commit":"b79600c57249cbb65805caad2524cc2492342be6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"version bump"},{"commit":"140f1a85437745296b56976bef1b46514e323a4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":7,"deletions":7,"files":["tests/fixtures/centos-7.7/ls-R-newlines.json","tests/fixtures/centos-7.7/ls-R.json","tests/fixtures/centos-7.7/ls-glob.json","tests/fixtures/osx-10.14.6/ls-glob.json","tests/fixtures/ubuntu-18.04/ls-R-newlines.json","tests/fixtures/ubuntu-18.04/ls-R.json","tests/fixtures/ubuntu-18.04/ls-glob.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ls-R-newlines.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ls-R.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ls-glob.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-glob.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ls-R-newlines.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ls-R.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ls-glob.json","lines_changed":2}]},"message":"test fixes for issue #60"},{"commit":"e34657cfde6816ab7a7415d83580df0a1d98a5a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"fix issue #60 that was skipping the first file in some instances using -R without -l"},{"commit":"99070fa6073c4415a6faf8ca69dd6aa089af4062","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"2b46785b1f1281ee63df9159e36068f4607ad9b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":25,"deletions":3,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":28}]},"message":"add MIT license to vendorized IfconfigParser class"},{"commit":"c72562524b2b9aaca0be372bb24343158829ba5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"fully remove tests from packaging"},{"commit":"b7dd6441c7e3f54f8a260fceef49aae6816c7151","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":1,"files":["changelog.txt","jc/cli.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/cli.py","lines_changed":2}]},"message":"version bump"},{"commit":"31fcc2f755ad86622cf51a75879b14d44f246300","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["MANIFEST.in"],"file_stats":[{"name":"MANIFEST.in","lines_changed":1}]},"message":"remove manifest.in - no longer needed due to removing tests"},{"commit":"b391aa14bceffedb5a9c13f3f908923790edefc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["setup.cfg"],"file_stats":[{"name":"setup.cfg","lines_changed":2}]},"message":"add license_file to metadata"},{"commit":"d3c45debbb6690acd341fbcc9b99d1ae4cf0a43c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":5}]},"message":"remove tests and add license file"},{"commit":"5b08469b874553744bd5c5b1fa6581f4dcffacd0","merge":"8cf00a2 4a77ec6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #57 from kellyjonbrazil/dev\n\nDev v1.10.7"},{"commit":"4a77ec63a46554c84e646d31564230774ed87431","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["docs/parsers/ifconfig.md"],"file_stats":[{"name":"docs/parsers/ifconfig.md","lines_changed":11}]},"message":"add IfconfigParser class"},{"commit":"d13606b6dc2c207be6dea89a2c3e713c18a574b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":7,"deletions":6,"files":["changelog.txt","jc/cli.py","requirements.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"requirements.txt","lines_changed":3},{"name":"setup.py","lines_changed":5}]},"message":"modify dependencies for easier packaging into Fedora"},{"commit":"05291c93bba1aa364ba1ac7f2508e24bb362a814","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":198,"deletions":3,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":201}]},"message":"vendorize ifconfig-parser module for easier packaging in Fedora"},{"commit":"8cf00a208eb8493300331e7361b72e4f9e3f140e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"change text to strings"},{"commit":"06d73c88767a5b4d6003231c897c447ee5e1faa5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"649c646ea25ac7f89900cffa8919df01671bd32d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"add brew install option"},{"commit":"b7756d92501a7b8ba8e77d77d9d3718a58425beb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"1cd2cd954c21e5caec333507bd81819c82d45b49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":16,"files":["tests/fixtures/osx-10.11.6/du.json","tests/fixtures/osx-10.11.6/du.out","tests/fixtures/osx-10.14.6/du.json","tests/fixtures/osx-10.14.6/du.out"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/du.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/du.out","lines_changed":7},{"name":"tests/fixtures/osx-10.14.6/du.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/du.out","lines_changed":7}]},"message":"remove references to homebrew/shim to allow tests to pass in homebrew packaging ci/cd"},{"commit":"72020b8da999ddca6f9ba82da235c9f42e4f4273","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":22,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":24}]},"message":"move packages info to jc-packages github page"},{"commit":"cf9720b749e7fc8caed0d2f1f2b1727a22a156b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"update install info"},{"commit":"967b9db7f90a3c3a0352edde7f4455c5f5d45b18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":6}]},"message":"spelling"},{"commit":"bb3acb1182f4d509f9ddc7dfcffa4578e0a2bd5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"560c7f7e6d1f8a69ab026ddbff753d232ca1d00b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"79b28417644e00b933f531374d2f7fe8051e61be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":26}]},"message":"add new binary package install info"},{"commit":"a06a89cbd11026aa3910fadd1eff7fe388d02507","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"431bd969eb4809424fe99a02a7decb98bce9ea51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"use sys.exit(0) instead of exit()"},{"commit":"c87b722aec6e6964c516bbb8e80667ad7d9c6bc7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"spelling"},{"commit":"3688b8b014a1cf753b2207fbf3ebf0292c3fd672","merge":"99f7842 07b8d9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #56 from kellyjonbrazil/dev\n\nDev v1.10.4"},{"commit":"07b8d9e0c0d723d93e6c652f5b6156c467c451c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"7454b53e395e9122c00d4cf06b1c2af109913d7a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"formatting"},{"commit":"3d6a76024de0f9dcf91a4ab49cabe461074114fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":18}]},"message":"update with JC_COLORS info"},{"commit":"421b9809575a8de00229af4b851739889638ac74","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":37,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":55}]},"message":"JC_COLORS working"},{"commit":"4a22e27d6a80a988f4de17bce421110d6abb8867","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":64,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":64}]},"message":"add set_env_colors function"},{"commit":"99f7842dee0f79cf933fae185cf8b0ed7c8b210f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":11,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":8},{"name":"setup.py","lines_changed":2}]},"message":"fix brek on pipe error"},{"commit":"7f869b4b187d70752207a7e74c13b858446f898f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":11,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":15},{"name":"setup.py","lines_changed":2}]},"message":"change colors to ansi and match jello style"},{"commit":"9665f4ee84680f3a8154b8a43ea668af2907782c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add pypi badge"},{"commit":"606904d48b1c7e0c19a940b5be0b564d1b5be6c8","merge":"302f05c 3f5279b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #53 from kellyjonbrazil/dev\n\nDev v1.10.1"},{"commit":"3f5279b97c386c736e0e2faa5c39d68ef89c46aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to 1.10.1"},{"commit":"f5ec21e6ac612566af93158fc3968b901322d04a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_luf.py"],"file_stats":[{"name":"jc/parsers/systemctl_luf.py","lines_changed":4}]},"message":"use in instead of find()"},{"commit":"578a284465f014fe71ad6ac00bd41dc24ab2ced9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_ls.py"],"file_stats":[{"name":"jc/parsers/systemctl_ls.py","lines_changed":4}]},"message":"use in instead of find()"},{"commit":"422e392d9d98a7864312fc7fbd7f45537b71acbe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_lj.py"],"file_stats":[{"name":"jc/parsers/systemctl_lj.py","lines_changed":4}]},"message":"use in instead of find()"},{"commit":"54dfffd34a17d1194690142ac403391fc65bb85f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl.py"],"file_stats":[{"name":"jc/parsers/systemctl.py","lines_changed":4}]},"message":"use in instead of find()"},{"commit":"cffba64d2b9165b44a8856665807111a2ad3a190","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":14}]},"message":"use in and startswith() instead of find()"},{"commit":"56a0c12a59bb252d3b7d0929f9fb19b4d96a8437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/pip_list.py"],"file_stats":[{"name":"jc/parsers/pip_list.py","lines_changed":6}]},"message":"use in instead of find()"},{"commit":"c174d3de18923b2b03befb5a7dfcbd977a8e147e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":14}]},"message":"use in and startswith() instead of find()"},{"commit":"a9c59ef9fc1bb68c9d0d7beffbeb670baf5b1e3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/mount.py"],"file_stats":[{"name":"jc/parsers/mount.py","lines_changed":2}]},"message":"fix logic to not for ' type ' in cleandata[0]"},{"commit":"abdb9b26732a6a71f5938d665b2ca43a381e1b33","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/mount.py"],"file_stats":[{"name":"jc/parsers/mount.py","lines_changed":4}]},"message":"use in instead of find()"},{"commit":"548aaab6262878d21f8b9539950cfad48638e35c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":42,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":43}]},"message":"remove old commented code"},{"commit":"20571c87ae9e1ca8a1f3120511910751420a35ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":6}]},"message":"us in instead of find()"},{"commit":"19e49200de5c731f76b42e80388c5223e8097e39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":2}]},"message":"version bump"},{"commit":"d32f5c67a91ede572c88e431b2ad0ce4d6c87dec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":4}]},"message":"use startswith() instead of find()"},{"commit":"b83b626435c55d2aa63e56dd8f22603da59e7626","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":4}]},"message":"use startswith() instead of find()"},{"commit":"ab2c1b25ec5da5f2ba238868c4dfca95a44da30e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/hosts.py"],"file_stats":[{"name":"jc/parsers/hosts.py","lines_changed":6}]},"message":"use startswith() and in instead of find()"},{"commit":"f2d46313a4508f13656cdb360f83fdf4116cc7d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/fstab.py"],"file_stats":[{"name":"jc/parsers/fstab.py","lines_changed":4}]},"message":"use startswith() instead of find()"},{"commit":"87e4796a6c936793e2784346819c7033d59b91e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":4}]},"message":"use in instead of .find()"},{"commit":"0014a5c2f4c056c2683d6614a65d778b1f527932","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab_u.py"],"file_stats":[{"name":"jc/parsers/crontab_u.py","lines_changed":6}]},"message":"us startswith() and in instead of .find()"},{"commit":"7af56e0dadab7d8b9538f3b7a550ad6dd1ac217d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":6}]},"message":"use startswith() and in instead of find()"},{"commit":"a5ae6e3c017b041f9079ff12455b7551ad204cb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":6}]},"message":"use startswith() instead of find()"},{"commit":"fe1a0d1faf46f55ed2888ed0065f3f3144691ed8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":9,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":19}]},"message":"use in instead of .find()"},{"commit":"302f05cdda305e46e69b74d5b0096f64c17da637","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"prettify style block"},{"commit":"c0044be7b0b6dadcffb64cb88ad92bf653dd2b6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"rename color grey to gray"},{"commit":"01100788070b82b4b827ef356972fa9b8f737eeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update badge"},{"commit":"42eacb45f8fdf8085c6231bf5297629c2ec97c22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"rename to Tests"},{"commit":"a43e2e19916662d509883457c160d7f95f97ae12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add -m option info"},{"commit":"c8b721d4f6e46a2db77e1140b9caeb3b403fef72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":9,"deletions":3,"files":["changelog.txt","jc/cli.py","requirements.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/cli.py","lines_changed":2},{"name":"requirements.txt","lines_changed":1},{"name":"setup.py","lines_changed":5}]},"message":"version bump to 1.10.0"},{"commit":"d0bfddc3d9989444757d6668726c916e5363620b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":41,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":47}]},"message":"add color and -m monochrome option"},{"commit":"6b925a16c87cf75bb30edfda38511e8f84a4f6d6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add tests badge"},{"commit":"89ebd9fc2271d2c76353d5707bfd4afb7dedc278","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":0,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":10},{"name":"jc/parsers/dig.py","lines_changed":10}]},"message":"add axfr info to schema"},{"commit":"6b4ba662317629839aa62fbcfefb8ed3337c37ef","merge":"8ec8cd6 5b697dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #52 from kellyjonbrazil/dev\n\nDev v1.9.3"},{"commit":"5b697dc38141cdd47fcdd63bf295a80a7da86697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":72,"deletions":0,"files":["tests/test_dig.py"],"file_stats":[{"name":"tests/test_dig.py","lines_changed":72}]},"message":"add more dig tests"},{"commit":"9ba73c95d1a528a9a92be4068805bb5aa027901e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":215,"deletions":0,"files":["tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/centos-7.7/dig-axfr.out","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-axfr.out","tests/fixtures/ubuntu-18.04/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-axfr.out","tests/test_dig.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/dig-axfr.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/dig-axfr.out","lines_changed":60},{"name":"tests/fixtures/osx-10.14.6/dig-axfr.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig-axfr.out","lines_changed":59},{"name":"tests/fixtures/ubuntu-18.04/dig-axfr.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dig-axfr.out","lines_changed":57},{"name":"tests/test_dig.py","lines_changed":36}]},"message":"add tests"},{"commit":"93aa39044749c4c0ed749f62fb00fc1c76dc5af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to v1.9.3"},{"commit":"3cfb8945ddd83c00a720c44e2c1d97da0d8bad25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":18}]},"message":"use startswith() instead of find"},{"commit":"cd8d38f2a136c4f35efc020b3476d09e965b71f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":50,"deletions":1,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":51}]},"message":"add axfr support"},{"commit":"8ec8cd62944c59c462ab9f520c1dcfd14218b1ed","merge":"e5bea9a c028113","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #50 from kellyjonbrazil/dev\n\nDev v1.9.2"},{"commit":"c02811356153c2b4f8b2d7efb7f48bf8f7748068","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":5},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to v1.9.2"},{"commit":"5f22e1c8031b808ef02ffe078408bd58cc76e570","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":33,"deletions":0,"files":["tests/fixtures/osx-10.14.6/arp-a2.json","tests/fixtures/osx-10.14.6/arp-a2.out","tests/test_arp.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/arp-a2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/arp-a2.out","lines_changed":20},{"name":"tests/test_arp.py","lines_changed":12}]},"message":"fix and test for osx arp entries without ifscope"},{"commit":"d3351787e5cabd064c19e6617e9535e501686404","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":9,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":19}]},"message":"change osx detection"},{"commit":"e5bea9ae3b0a70b38f7da7dd9184343dbbd18887","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/file.py"],"file_stats":[{"name":"jc/parsers/file.py","lines_changed":2}]},"message":"version bump"},{"commit":"93c710abe9171568f61f65c4f84c040ffc24870c","merge":"400f5a4 c29e7cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #49 from kellyjonbrazil/dev\n\nDev v1.9.1"},{"commit":"c29e7cfe5cc4b2151912c6f618137d1b6c39c7be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":9,"deletions":6,"files":["README.md","changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to 1.9.1"},{"commit":"cb5c1ba00dc0e02bf6ad6c40096d99e319fa6171","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":101,"deletions":0,"files":["tests/fixtures/osx-10.14.6/file2.json","tests/fixtures/osx-10.14.6/file2.out","tests/test_file.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/file2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/file2.out","lines_changed":88},{"name":"tests/test_file.py","lines_changed":12}]},"message":"add tests for fix to make the file parser splitting more robust"},{"commit":"9a012b94e1942a14bc6dae3fb967ef618819c77b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/file.py"],"file_stats":[{"name":"jc/parsers/file.py","lines_changed":2}]},"message":"make splitting more robust"},{"commit":"400f5a44ece280cb0097d806b78a9490d2905600","merge":"c7cd2b6 a2ab5ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #48 from kellyjonbrazil/dev\n\nDev v1.9.0"},{"commit":"a2ab5bab91ea980399df1afb9d8071fa3282d04e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to v1.9.0"},{"commit":"fc8ab27361df3359b706125531b2643612d6996a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":93,"deletions":51,"files":["README.md","docs/parsers/ntpq.md","jc/parsers/ntpq.py","tests/fixtures/ubuntu-18.04/ntpq-p2.json","tests/fixtures/ubuntu-18.04/ntpq-p2.out","tests/test_ntpq.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"docs/parsers/ntpq.md","lines_changed":40},{"name":"jc/parsers/ntpq.py","lines_changed":59},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p2.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p2.out","lines_changed":24},{"name":"tests/test_ntpq.py","lines_changed":12}]},"message":"bugfix for misaligned columns and additional test for ntpq #31"},{"commit":"59f19d33a5c6677ea756a9424fdb032b430511a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":153,"deletions":0,"files":["tests/fixtures/centos-7.7/file.json","tests/fixtures/centos-7.7/file.out","tests/fixtures/osx-10.14.6/file.json","tests/fixtures/osx-10.14.6/file.out","tests/fixtures/ubuntu-18.04/file.json","tests/fixtures/ubuntu-18.04/file.out","tests/test_file.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/file.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/file.out","lines_changed":25},{"name":"tests/fixtures/osx-10.14.6/file.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/file.out","lines_changed":53},{"name":"tests/fixtures/ubuntu-18.04/file.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/file.out","lines_changed":20},{"name":"tests/test_file.py","lines_changed":52}]},"message":"add file command tests for #41"},{"commit":"dfc96181159748d019419a2cba7aa9cb3b7a2a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":260,"deletions":1,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/file.md","jc/cli.py","jc/parsers/file.py"],"file_stats":[{"name":"README.md","lines_changed":36},{"name":"changelog.txt","lines_changed":5},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/file.md","lines_changed":90},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/file.py","lines_changed":128}]},"message":"add file parser for issue #41"},{"commit":"8e02e5c75a11cf205299ee6f87b67f9b787cf55e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":5,"files":["jc/cli.py","tests/test_cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8},{"name":"tests/test_cli.py","lines_changed":3}]},"message":"fix issue with getting options with some commands #47"},{"commit":"970493ab9346a344b21be7614903ad81bc65a6e9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["jc/parsers/airport.py","jc/parsers/airport_s.py"],"file_stats":[{"name":"jc/parsers/airport.py","lines_changed":1},{"name":"jc/parsers/airport_s.py","lines_changed":1}]},"message":"add magic commands"},{"commit":"64d78956eb33ca0a2564fded3d12729ee036a915","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"update acknowledgment"},{"commit":"40c05346f4098f8eea14c42da07df3faa143587a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":25,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":37}]},"message":"re-adding optimizations from https://github.com/philippeitis"},{"commit":"e9b0bc1409a824a82dabd2479892b7d18bad8c3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/airport.py"],"file_stats":[{"name":"jc/parsers/airport.py","lines_changed":2}]},"message":"doc update"},{"commit":"798e6bb7d939176bb36771a6d41bd55403d583be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":29,"deletions":0,"files":["tests/fixtures/osx-10.14.6/airport-s.json","tests/test_airport_s.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/airport-s.json","lines_changed":1},{"name":"tests/test_airport_s.py","lines_changed":28}]},"message":"tests passing for airport -s. issue #46"},{"commit":"12a370deed03ba42d7b7ebb410195ce5f32bb9c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":372,"deletions":9,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/airport.md","docs/parsers/airport_s.md","jc/cli.py","jc/parsers/airport.py","jc/parsers/airport_s.py"],"file_stats":[{"name":"README.md","lines_changed":47},{"name":"changelog.txt","lines_changed":2},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/airport.md","lines_changed":4},{"name":"docs/parsers/airport_s.md","lines_changed":136},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/airport.py","lines_changed":5},{"name":"jc/parsers/airport_s.py","lines_changed":185}]},"message":"add airport -s parser for issue #46"},{"commit":"553bfbe1a0dd866851ba7eca66e9295c2097ad86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":40,"deletions":6,"files":["docs/parsers/airport.md","jc/parsers/airport.py","tests/test_airport.py"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":9},{"name":"jc/parsers/airport.py","lines_changed":9},{"name":"tests/test_airport.py","lines_changed":28}]},"message":"tests passing for airport -I. Issue #46"},{"commit":"52494321fcfe0dc7ee71d8d78210b3c10372a237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":120,"deletions":15,"files":["README.md","docs/parsers/airport.md","jc/parsers/airport.py","tests/fixtures/osx-10.14.6/airport-I.json","tests/fixtures/osx-10.14.6/airport-I.out"],"file_stats":[{"name":"README.md","lines_changed":22},{"name":"docs/parsers/airport.md","lines_changed":48},{"name":"jc/parsers/airport.py","lines_changed":62},{"name":"tests/fixtures/osx-10.14.6/airport-I.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/airport-I.out","lines_changed":2}]},"message":"fixes and docs for airport parser issue #46"},{"commit":"c6c9e06496683d2dd3586d17085801c7e698d960","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":196,"deletions":1,"files":["changelog.txt","docgen.sh","docs/parsers/airport.md","jc/cli.py","jc/parsers/airport.py","tests/fixtures/osx-10.14.6/airport-I.out","tests/fixtures/osx-10.14.6/airport-s.out"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/airport.md","lines_changed":64},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/airport.py","lines_changed":98},{"name":"tests/fixtures/osx-10.14.6/airport-I.out","lines_changed":15},{"name":"tests/fixtures/osx-10.14.6/airport-s.out","lines_changed":15}]},"message":"added airport command parser"},{"commit":"e3a6c05a58a2451e70975d8fabf644c56603c73d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":64,"deletions":17,"files":["docs/parsers/timedatectl.md","jc/parsers/timedatectl.py","tests/fixtures/centos-7.7/timedatectl.json","tests/fixtures/ubuntu-18.04/timedatectl.json","tests/test_timedatectl.py"],"file_stats":[{"name":"docs/parsers/timedatectl.md","lines_changed":18},{"name":"jc/parsers/timedatectl.py","lines_changed":21},{"name":"tests/fixtures/centos-7.7/timedatectl.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/timedatectl.json","lines_changed":1},{"name":"tests/test_timedatectl.py","lines_changed":40}]},"message":"timedatectl fixes, tests, and fixtures for issue #42"},{"commit":"391d06f68d1f45d33590d5407d3a5e4f723af717","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":35,"deletions":35,"files":["README.md","docs/parsers/ntpq.md","jc/parsers/ntpq.py","tests/fixtures/centos-7.7/ntpq-p.json","tests/fixtures/centos-7.7/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-p.json","tests/fixtures/ubuntu-18.04/ntpq-pn.json"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docs/parsers/ntpq.md","lines_changed":26},{"name":"jc/parsers/ntpq.py","lines_changed":32},{"name":"tests/fixtures/centos-7.7/ntpq-p.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ntpq-pn.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ntpq-pn.json","lines_changed":2}]},"message":"change selection_state to state"},{"commit":"99804ea06e0c70e3a82ddc7f9c7a42343374d700","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":222,"deletions":0,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/timedatectl.md","jc/cli.py","jc/parsers/timedatectl.py"],"file_stats":[{"name":"README.md","lines_changed":15},{"name":"changelog.txt","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/timedatectl.md","lines_changed":85},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/timedatectl.py","lines_changed":119}]},"message":"added timedatectl status parser"},{"commit":"51935deb2ad18e4ea3ca16954ce810354f6095a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":21,"deletions":0,"files":["tests/fixtures/centos-7.7/timedatectl.out","tests/fixtures/ubuntu-18.04/timedatectl.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/timedatectl.out","lines_changed":14},{"name":"tests/fixtures/ubuntu-18.04/timedatectl.out","lines_changed":7}]},"message":"timedatectl test fixtures"},{"commit":"b24d0c3a475b88d9ccf1a8fe29715ee60972fcad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":34,"deletions":2,"files":["README.md","jc/parsers/ntpq.py"],"file_stats":[{"name":"README.md","lines_changed":33},{"name":"jc/parsers/ntpq.py","lines_changed":3}]},"message":"ntpq docs"},{"commit":"762a886d6fdf5c2ad21d81868d138fb32621ed1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":133,"deletions":0,"files":["tests/fixtures/centos-7.7/ntpq-p.json","tests/fixtures/centos-7.7/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-p.json","tests/fixtures/ubuntu-18.04/ntpq-p.out","tests/fixtures/ubuntu-18.04/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-pn.out","tests/fixtures/ubuntu-18.04/ntqp-p.out","tests/test_ntpq.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ntpq-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ntpq-pn.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-18.04/ntpq-pn.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ntpq-pn.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-18.04/ntqp-p.out","lines_changed":21},{"name":"tests/test_ntpq.py","lines_changed":66}]},"message":"add ntpq tests"},{"commit":"2c3e9ddfe47f56cd7edc2fdf6317f7ecec0b7918","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":543,"deletions":0,"files":["changelog.txt","docgen.sh","docs/parsers/ntpq.md","jc/cli.py","jc/parsers/ntpq.py","tests/fixtures/centos-7.7/ntpq-p.out","tests/fixtures/centos-7.7/ntpq-pn.out"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ntpq.md","lines_changed":235},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/ntpq.py","lines_changed":291},{"name":"tests/fixtures/centos-7.7/ntpq-p.out","lines_changed":6},{"name":"tests/fixtures/centos-7.7/ntpq-pn.out","lines_changed":6}]},"message":"add ntpq parser for issue #31"},{"commit":"c7cd2b63c8f24e9d17c458880fe401d8032395ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":91,"files":["tests/fixtures/generic/oscar_age_male.csv"],"file_stats":[{"name":"tests/fixtures/generic/oscar_age_male.csv","lines_changed":91}]},"message":"delete unused test file"},{"commit":"f0528ea83112e71ff51c89be27fc9bbdfbbf1951","merge":"b5eaff2 5bc5596","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #45 from kellyjonbrazil/dev\n\nDev v1.8.1"},{"commit":"5bc5596f604fb87dffbfdf44ce2395b16bf01297","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":17,"deletions":4,"files":["changelog.txt","jc/cli.py","setup.py","tests/test_ls.py"],"file_stats":[{"name":"changelog.txt","lines_changed":5},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2},{"name":"tests/test_ls.py","lines_changed":12}]},"message":"version bump to 1.8.1"},{"commit":"2c27ac46be803b583caf82c1765bd0c35cee8bc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2454,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-lR-empty-folder.json","tests/fixtures/osx-10.14.6/ls-lR-empty-folder.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ls-lR-empty-folder.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-lR-empty-folder.out","lines_changed":2453}]},"message":"add ls test fixtures"},{"commit":"caad840153e40dc660a2d5e06a96f3451fef25f9","merge":"aff86ae 65bd7e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #44 from philippeitis/patch-5\n\nMove core magic() logic into seperate function for testability, minor tweaks"},{"commit":"65bd7e2904016141c1ed53cdd437865c66d7628e","merge":"17b6efe c3d7d7d","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #1 from kellyjonbrazil/pr/44\n\nMerge changes"},{"commit":"c3d7d7db12d4870fc4499e0e3445d85ae89f2aea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"removed whitespace"},{"commit":"56053103625af6fb7fa749fc5bc3dbdc62fc223c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":4,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":15}]},"message":"added tests, removed os import, changed to 'assertEqual'"},{"commit":"17b6efe82e6a558353b011c543489eaaf3a6d3ac","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":14,"deletions":0,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":14}]},"message":"Create basic tests for generate_magic_commands()"},{"commit":"a032ae56ae7d247e00415267b65b2a8b80a3302e","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"Pass args to generate_magic_command() to allow testing."},{"commit":"eab2f4b0566b4c76db661cbfa99a56a6bf8d6541","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":33,"deletions":19,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":52}]},"message":"Move core magic() logic into seperate function for testability, minor tweaks.\n\nWe only care about the command when testing magic() - by moving that out, we can easily test the command. I modified the code to return a boolean signalling that the command is valid, and the command itself to maintain the original functionality.\n\nI also made some small tweaks (removed a list() call, fixed a possible bug with no arguments., moved magic_dict instantiation past the fast path checks to avoid making a dict if not needed.)"},{"commit":"aff86ae6c71abfe1cbdba5c574a5f3707292ec19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":29,"deletions":39,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":68}]},"message":"reimpliment magic() based on the dictionary approach suggested by philippeitis"},{"commit":"7ece9ddc1a37551cdaaac50f37a48e6d98b18bf4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"version bump ls"},{"commit":"7cd048e839a7cc8404fd5abc153a3d315c207819","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update"},{"commit":"1e22f610a33903e8525d35a18b1dcf760a93791e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"fix for osx - doesn't print 'total xx' line if empty directory (issue #40)"},{"commit":"5249c972ae25e9b289a2667bf471aad5e58c70a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":4}]},"message":"add to changelog"},{"commit":"fd45f856a050f6c56a7a6b50b97b3d8c4de28af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":2}]},"message":"import jc.utils instead of jc"},{"commit":"c8ab40cd33b14a3a1937ecf64bb23e282f5bb921","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"],"file_stats":[{"name":".gitignore","lines_changed":1}]},"message":"ignore .github folder"},{"commit":"b2c872925b37254dac74578c1803b4127f8411c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":20,"insertions":208,"deletions":220,"files":["tests/test_ls.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_passwd.py","tests/test_pip_list.py","tests/test_ps.py","tests/test_route.py","tests/test_shadow.py","tests/test_ss.py","tests/test_systemctl_lj.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py","tests/test_who.py","tests/test_xml.py","tests/test_yaml.py"],"file_stats":[{"name":"tests/test_ls.py","lines_changed":132},{"name":"tests/test_lsmod.py","lines_changed":8},{"name":"tests/test_lsof.py","lines_changed":16},{"name":"tests/test_mount.py","lines_changed":16},{"name":"tests/test_netstat.py","lines_changed":40},{"name":"tests/test_passwd.py","lines_changed":12},{"name":"tests/test_pip_list.py","lines_changed":20},{"name":"tests/test_ps.py","lines_changed":32},{"name":"tests/test_route.py","lines_changed":16},{"name":"tests/test_shadow.py","lines_changed":8},{"name":"tests/test_ss.py","lines_changed":8},{"name":"tests/test_systemctl_lj.py","lines_changed":16},{"name":"tests/test_systemctl_ls.py","lines_changed":8},{"name":"tests/test_systemctl_luf.py","lines_changed":8},{"name":"tests/test_uname.py","lines_changed":16},{"name":"tests/test_uptime.py","lines_changed":16},{"name":"tests/test_w.py","lines_changed":16},{"name":"tests/test_who.py","lines_changed":24},{"name":"tests/test_xml.py","lines_changed":8},{"name":"tests/test_yaml.py","lines_changed":8}]},"message":"add utf-8 encoding for testing on Windows"},{"commit":"f48e229202f8ab1ebfa502ca57bb31cf673c7a62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":192,"deletions":192,"files":["tests/test_arp.py","tests/test_blkid.py","tests/test_crontab.py","tests/test_crontab_u.py","tests/test_csv.py","tests/test_df.py","tests/test_dig.py","tests/test_du.py","tests/test_env.py","tests/test_free.py","tests/test_fstab.py","tests/test_group.py","tests/test_gshadow.py","tests/test_history.py","tests/test_hosts.py","tests/test_id.py","tests/test_ifconfig.py","tests/test_ini.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_last.py"],"file_stats":[{"name":"tests/test_arp.py","lines_changed":32},{"name":"tests/test_blkid.py","lines_changed":40},{"name":"tests/test_crontab.py","lines_changed":4},{"name":"tests/test_crontab_u.py","lines_changed":8},{"name":"tests/test_csv.py","lines_changed":36},{"name":"tests/test_df.py","lines_changed":32},{"name":"tests/test_dig.py","lines_changed":24},{"name":"tests/test_du.py","lines_changed":16},{"name":"tests/test_env.py","lines_changed":8},{"name":"tests/test_free.py","lines_changed":16},{"name":"tests/test_fstab.py","lines_changed":8},{"name":"tests/test_group.py","lines_changed":12},{"name":"tests/test_gshadow.py","lines_changed":8},{"name":"tests/test_history.py","lines_changed":8},{"name":"tests/test_hosts.py","lines_changed":8},{"name":"tests/test_id.py","lines_changed":8},{"name":"tests/test_ifconfig.py","lines_changed":24},{"name":"tests/test_ini.py","lines_changed":8},{"name":"tests/test_iptables.py","lines_changed":48},{"name":"tests/test_jobs.py","lines_changed":8},{"name":"tests/test_last.py","lines_changed":28}]},"message":"utf-8 open for windows tests"},{"commit":"799fec92c39b1ff0696c6ebb182c4bef66b86e56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["tests/test_pip_show.py","tests/test_systemctl.py"],"file_stats":[{"name":"tests/test_pip_show.py","lines_changed":16},{"name":"tests/test_systemctl.py","lines_changed":8}]},"message":"utf-8 for windows support"},{"commit":"87a41c2fcaa395f108b5a5126ed77f7cc7fe5d6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["tests/test_lsblk.py","tests/test_stat.py"],"file_stats":[{"name":"tests/test_lsblk.py","lines_changed":16},{"name":"tests/test_stat.py","lines_changed":8}]},"message":"add utf-8 to open function"},{"commit":"7f85de0c46cda95d57b9677ba0ca3ea59690e502","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"add windows-latest"},{"commit":"13661b19934a74417713e98e3e1e4df6bb0f29ad","merge":"5f798d6 51d5c38","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #37 from philippeitis/continuous_integration\n\nEnable Continuous Integration with GitHub Actions."},{"commit":"51d5c3892d6ff1e2e6ac7c4f3e496e7d9ed4b6a7","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"Remove Windows tests, due to lack of support."},{"commit":"e4eab4641ac15220f2787c5d27b443ab8c718b86","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":3}]},"message":"Change line in blkid.py to trigger CI"},{"commit":"9b148e0ba37e18749d95608e1bac6c090ab83ee2","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["requirements.txt"],"file_stats":[{"name":"requirements.txt","lines_changed":3}]},"message":"Add requirements.txt"},{"commit":"de28932650d5027e2781011f1243b89f053b241d","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":7,"deletions":6,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":13}]},"message":"Consolidate dictionary into creation, trigger CI"},{"commit":"5f798d603e461d2de5adf74662ba4d4b121f28f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":3}]},"message":"version bump and ack to philippeitis"},{"commit":"a0757b2dd3fc0f3e26622941d93bd909dae0a1f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":5,"files":["jc/parsers/foo.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":6}]},"message":"optimize line parsing"},{"commit":"498d51b4e802cb40cac58aae1eff1f723bbbd896","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":31,"deletions":0,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":31}]},"message":"Enable Continuous Integration with GitHub Actions.\n\nThis automatically runs unit tests on various operating systems and Python versions when Python files are modified to ensure that functionality remains correct."},{"commit":"b06b6bae3f64f591c9075812dc1b632ef6d2da37","merge":"6aa2d5a 0652768","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #36 from philippeitis/patch-3\n\nSimplify process() in history.py, avoid list allocation in parse()"},{"commit":"b5eaff21372a58aefb66e5afc5e863db8355fee1","merge":"d75c406 c01bcd3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #35 from kellyjonbrazil/revert-34-patch-3\n\nRevert \"Simplify process() in history.py, avoid list allocation in parse()\""},{"commit":"c01bcd3734382a0c388d9f4041fc888171ca7675","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":25,"deletions":12,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":37}]},"message":"Revert \"Simplify process() in history.py, avoid list allocation in parse()\""},{"commit":"d75c4068caaf4adbe9a39fa452ae867421053673","merge":"d96b3a6 0652768","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #34 from philippeitis/patch-3\n\nSimplify process() in history.py, avoid list allocation in parse()"},{"commit":"6aa2d5a3d26f9f00c3334928f6f0e501860433da","merge":"69576f6 a63408c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #33 from philippeitis/patch-2\n\nHandle case where only options are passed."},{"commit":"065276805f0f2dd23a6382f0120ca07e9eae116f","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":12,"deletions":25,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":37}]},"message":"Simplify process() in history.py, avoid list allocation in parse()"},{"commit":"a63408c8cf3f99646be2b375f651d6cf417f7ae0","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"Handle case where only options are passed."},{"commit":"69576f6bfae073196627a0a39b5ececb8666d25c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6}]},"message":"minor sytax fixes"},{"commit":"19845624e2996da4653efc2f312aceb514feaf5c","merge":"d96b3a6 22ff296","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #32 from philippeitis/patch-1\n\nSimplify main(), magic() methods."},{"commit":"22ff2964e9889587711e779ac24f8f8034212f5e","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":62,"deletions":75,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":137}]},"message":"Simplify main(), magic() methods."},{"commit":"d96b3a65a98bc135d21d4feafc0a43317b5a11fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"4989445ef4bb8919d9b3b95e2fcee77ca7692aec","merge":"53ee2c3 6770892","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #30 from kellyjonbrazil/dev\n\nDev v1.8.0"},{"commit":"6770892acd49aced225dbccf39290f33522c9001","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add release notes link"},{"commit":"d4eba8740fc325756f3db96ab37a5383540cbeff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"release date 3/3"},{"commit":"9f607605605e47990f97ccfd48fde19a14e036e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["tests/test_group.py","tests/test_gshadow.py"],"file_stats":[{"name":"tests/test_group.py","lines_changed":52},{"name":"tests/test_gshadow.py","lines_changed":40}]},"message":"add group and gshadow tests"},{"commit":"0a8f8ac934f040141e6a4eec8cf7170e1ca73294","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"add group and gshadow parsers"},{"commit":"6ae24c82447bcff606e7027dd01b916293b49584","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":274,"deletions":0,"files":["tests/fixtures/centos-7.7/group.json","tests/fixtures/centos-7.7/group.out","tests/fixtures/centos-7.7/gshadow.json","tests/fixtures/centos-7.7/gshadow.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/group.json","tests/fixtures/osx-10.14.6/group.out","tests/fixtures/ubuntu-18.04/group.json","tests/fixtures/ubuntu-18.04/group.out","tests/fixtures/ubuntu-18.04/gshadow.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/group.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/group.out","lines_changed":39},{"name":"tests/fixtures/centos-7.7/gshadow.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/gshadow.out","lines_changed":39},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":3},{"name":"tests/fixtures/osx-10.14.6/group.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/group.out","lines_changed":135},{"name":"tests/fixtures/ubuntu-18.04/group.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/group.out","lines_changed":53},{"name":"tests/fixtures/ubuntu-18.04/gshadow.json","lines_changed":1}]},"message":"add group and gshadow test fixtures"},{"commit":"d3679082a8c5cff76eb7de67c33fe716a1402182","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":64,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":64}]},"message":"add group and gshadow parsers"},{"commit":"fb08b42dca135705a3759435335d95c898d47f60","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":21,"deletions":21,"files":["docs/parsers/group.md","jc/parsers/group.py"],"file_stats":[{"name":"docs/parsers/group.md","lines_changed":18},{"name":"jc/parsers/group.py","lines_changed":24}]},"message":"change 'group_list' to 'members'"},{"commit":"4aeaa9f42a88bf4e05c8780a35cc8c4d83c9b842","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":316,"deletions":0,"files":["docgen.sh","docs/parsers/gshadow.md","jc/cli.py","jc/parsers/gshadow.py","tests/fixtures/ubuntu-18.04/gshadow.out"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/gshadow.md","lines_changed":109},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/gshadow.py","lines_changed":152},{"name":"tests/fixtures/ubuntu-18.04/gshadow.out","lines_changed":53}]},"message":"add /etc/gshadow parser"},{"commit":"5f5693da048cb4739dc56500c672dc8fbccaaf32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["docs/parsers/csv.md"],"file_stats":[{"name":"docs/parsers/csv.md","lines_changed":3}]},"message":"spelling fix"},{"commit":"5eb0f61727f92a84fb3620e13db072167ef552ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":333,"deletions":0,"files":["docgen.sh","docs/parsers/group.md","jc/cli.py","jc/parsers/group.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/group.md","lines_changed":141},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/group.py","lines_changed":190}]},"message":"add /etc/group file parser"},{"commit":"958e998991b1cc61dc1dc341b90cd53f4691cd43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/csv.py"],"file_stats":[{"name":"jc/parsers/csv.py","lines_changed":4}]},"message":"formatting"},{"commit":"b78c1509f67fb76d17ac97193a2851d8d9e17f62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/csv.py"],"file_stats":[{"name":"jc/parsers/csv.py","lines_changed":10}]},"message":"try/except dialect detection"},{"commit":"ce184d4d57faa3f1bca5bcaa02da7a5a5d995eb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":20,"insertions":24054,"deletions":0,"files":["tests/fixtures/generic/csv-biostats.csv","tests/fixtures/generic/csv-biostats.json","tests/fixtures/generic/csv-cities.csv","tests/fixtures/generic/csv-cities.json","tests/fixtures/generic/csv-deniro.csv","tests/fixtures/generic/csv-deniro.json","tests/fixtures/generic/csv-example.csv","tests/fixtures/generic/csv-example.json","tests/fixtures/generic/csv-flyrna.json","tests/fixtures/generic/csv-flyrna.tsv","tests/fixtures/generic/csv-flyrna2.json","tests/fixtures/generic/csv-flyrna2.tsv","tests/fixtures/generic/csv-homes-pipe.csv","tests/fixtures/generic/csv-homes-pipe.json","tests/fixtures/generic/csv-homes.csv","tests/fixtures/generic/csv-homes.json","tests/fixtures/generic/csv-insurance.csv","tests/fixtures/generic/csv-insurance.json","tests/fixtures/generic/oscar_age_male.csv","tests/test_csv.py"],"file_stats":[{"name":"tests/fixtures/generic/csv-biostats.csv","lines_changed":20},{"name":"tests/fixtures/generic/csv-biostats.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-cities.csv","lines_changed":130},{"name":"tests/fixtures/generic/csv-cities.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-deniro.csv","lines_changed":89},{"name":"tests/fixtures/generic/csv-deniro.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-example.csv","lines_changed":2},{"name":"tests/fixtures/generic/csv-example.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna.tsv","lines_changed":11767},{"name":"tests/fixtures/generic/csv-flyrna2.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna2.tsv","lines_changed":11767},{"name":"tests/fixtures/generic/csv-homes-pipe.csv","lines_changed":3},{"name":"tests/fixtures/generic/csv-homes-pipe.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-homes.csv","lines_changed":51},{"name":"tests/fixtures/generic/csv-homes.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-insurance.csv","lines_changed":1},{"name":"tests/fixtures/generic/csv-insurance.json","lines_changed":1},{"name":"tests/fixtures/generic/oscar_age_male.csv","lines_changed":91},{"name":"tests/test_csv.py","lines_changed":124}]},"message":"add csv parser tests"},{"commit":"b4c3714ced9ee5cc6a7ef0c59a43cf85e1cb9824","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"removed [OPTIONS] PARSER syntax. still works but prefer the PARSER [OPTIONS] syntax for better performance"},{"commit":"5b7dfa043864f1a3f34aa4ef5c6554a2dfe185f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"formatting"},{"commit":"391a3884765780497dc34e0e9938ff5032c81291","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":49,"deletions":0,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":48},{"name":"changelog.txt","lines_changed":1}]},"message":"doc update"},{"commit":"d9c4e2ed4c0f908f4b63c2376b53ddfd32a0fae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":241,"deletions":0,"files":["docgen.sh","docs/parsers/csv.md","jc/cli.py","jc/parsers/csv.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/csv.md","lines_changed":104},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/csv.py","lines_changed":135}]},"message":"add csv file parser"},{"commit":"0c42db38b102987629e40cee2716b826161e6e94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/who.md","jc/parsers/who.py"],"file_stats":[{"name":"docs/parsers/who.md","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":2}]},"message":"doc update"},{"commit":"2f9be8bf33f8be5651d06da9d316f7894606df19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"simplify usage"},{"commit":"e8c00155e861b9eedfdf37a22912271bec581d62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"add -b to warning message"},{"commit":"cc88fdd9ee3951d7ef2aa881cc12f0b7f96aef86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"update example"},{"commit":"d9de11ef1d846a9625dad0adb962b864404c90c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":16}]},"message":"add another who example"},{"commit":"0ceda97d0968b67b70cdbb68f7a62657e79c9935","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":88,"deletions":0,"files":["tests/test_who.py"],"file_stats":[{"name":"tests/test_who.py","lines_changed":88}]},"message":"who parser tests"},{"commit":"d0dec92ba84640ddc40da7c6faa6568b76757e04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":36,"deletions":0,"files":["tests/fixtures/centos-7.7/who-a.json","tests/fixtures/centos-7.7/who-a.out","tests/fixtures/centos-7.7/who.json","tests/fixtures/centos-7.7/who.out","tests/fixtures/osx-10.14.6/who-a.json","tests/fixtures/osx-10.14.6/who-a.out","tests/fixtures/osx-10.14.6/who.json","tests/fixtures/osx-10.14.6/who.out","tests/fixtures/ubuntu-18.04/who-a.json","tests/fixtures/ubuntu-18.04/who-a.out","tests/fixtures/ubuntu-18.04/who.json","tests/fixtures/ubuntu-18.04/who.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/who-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/who-a.out","lines_changed":6},{"name":"tests/fixtures/centos-7.7/who.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/who.out","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/who-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/who-a.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/who.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/who.out","lines_changed":4},{"name":"tests/fixtures/ubuntu-18.04/who-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/who-a.out","lines_changed":6},{"name":"tests/fixtures/ubuntu-18.04/who.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/who.out","lines_changed":3}]},"message":"add who test fixtures"},{"commit":"d420c008d8aaa0879fa5a3f236d81acb506376c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/who.py","lines_changed":9}]},"message":"fix for pts lines with no user info"},{"commit":"f0b32db4333477e22cc40de62cf026a6a7aa2eb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","docs/parsers/who.md"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docs/parsers/who.md","lines_changed":8}]},"message":"who doc update"},{"commit":"bc838eda591473d32b11a885e60ef653925739d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/who.py","lines_changed":9}]},"message":"fix output for non-extended"},{"commit":"afe55b6af07b74816d33d9555ffaa1c1921dd27a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":46,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":46}]},"message":"add who parser"},{"commit":"dd3a3ac302d7b35beef1181e74aed0faf96fd3e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":255,"deletions":9,"files":["changelog.txt","docgen.sh","docs/parsers/who.md","jc/parsers/who.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/who.md","lines_changed":150},{"name":"jc/parsers/who.py","lines_changed":112}]},"message":"doc update and process pid integers"},{"commit":"f9982a79474c1838f37fc0ff88437980b228d7a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":2,"files":["jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/who.py","lines_changed":13}]},"message":"fixes for from and comment fields"},{"commit":"07c1be9e9ad9f62cf76c23788152de8f3530ee16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":170,"deletions":0,"files":["jc/cli.py","jc/parsers/who.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/who.py","lines_changed":169}]},"message":"add who command parser"},{"commit":"f832b88755bfbd3878ec402e603180e6825279be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["tests/test_passwd.py","tests/test_shadow.py"],"file_stats":[{"name":"tests/test_passwd.py","lines_changed":52},{"name":"tests/test_shadow.py","lines_changed":40}]},"message":"add passwd and shadow tests"},{"commit":"0fac757efca41db062b2f65acc727963c5fb353c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"add passwd and shadow parsers"},{"commit":"fc15742065531152f3d5895042eeb806e33a192a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":215,"deletions":0,"files":["tests/fixtures/centos-7.7/passwd.json","tests/fixtures/centos-7.7/passwd.out","tests/fixtures/centos-7.7/shadow.json","tests/fixtures/centos-7.7/shadow.out","tests/fixtures/osx-10.14.6/passwd.json","tests/fixtures/osx-10.14.6/passwd.out","tests/fixtures/ubuntu-18.04/passwd.json","tests/fixtures/ubuntu-18.04/passwd.out","tests/fixtures/ubuntu-18.04/shadow.json","tests/fixtures/ubuntu-18.04/shadow.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/passwd.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/passwd.out","lines_changed":21},{"name":"tests/fixtures/centos-7.7/shadow.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/shadow.out","lines_changed":21},{"name":"tests/fixtures/osx-10.14.6/passwd.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/passwd.out","lines_changed":108},{"name":"tests/fixtures/ubuntu-18.04/passwd.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/passwd.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/shadow.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/shadow.out","lines_changed":30}]},"message":"passwd and shadow test fixtures"},{"commit":"6f2466a1319eaa4256ae7a2a0f23b3ff37882d37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":73,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":73}]},"message":"update readme with /etc/passwd and /etc/shadow file parsers"},{"commit":"4b90e22f0a9c6790bca62c8314945a7ffc6e267b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":137,"deletions":9,"files":["docs/parsers/shadow.md","jc/parsers/shadow.py"],"file_stats":[{"name":"docs/parsers/shadow.md","lines_changed":72},{"name":"jc/parsers/shadow.py","lines_changed":74}]},"message":"doc update"},{"commit":"c4935687853fb3b079ae42614793cdafe68e124e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/passwd.md","jc/parsers/passwd.py"],"file_stats":[{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":2}]},"message":"doc fix"},{"commit":"1cdf004b7728901dc137e57b0c8994edfdd6d417","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":190,"deletions":0,"files":["docgen.sh","docs/parsers/shadow.md","jc/cli.py","jc/parsers/shadow.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/shadow.md","lines_changed":69},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/shadow.py","lines_changed":119}]},"message":"add /etc/shadow parser"},{"commit":"a4ea50426184d30cbe849a8f80bfd5c975075c9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":303,"deletions":0,"files":["docgen.sh","docs/parsers/passwd.md","jc/cli.py","jc/parsers/passwd.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/passwd.md","lines_changed":126},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/passwd.py","lines_changed":175}]},"message":"add /etc/passwd parser"},{"commit":"4c2c234c3bf68d1aac66bd4d1f22b9f97e99128d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":16,"insertions":673,"deletions":0,"files":["tests/fixtures/centos-7.7/last-w.json","tests/fixtures/centos-7.7/last-w.out","tests/fixtures/centos-7.7/last.json","tests/fixtures/centos-7.7/last.out","tests/fixtures/centos-7.7/lastb.json","tests/fixtures/centos-7.7/lastb.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/last.json","tests/fixtures/osx-10.14.6/last.out","tests/fixtures/ubuntu-18.04/last-w.json","tests/fixtures/ubuntu-18.04/last-w.out","tests/fixtures/ubuntu-18.04/last.json","tests/fixtures/ubuntu-18.04/last.out","tests/fixtures/ubuntu-18.04/lastb.json","tests/fixtures/ubuntu-18.04/lastb.out","tests/test_last.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/last-w.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/last-w.out","lines_changed":69},{"name":"tests/fixtures/centos-7.7/last.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/last.out","lines_changed":69},{"name":"tests/fixtures/centos-7.7/lastb.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lastb.out","lines_changed":6},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":4},{"name":"tests/fixtures/osx-10.14.6/last.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/last.out","lines_changed":383},{"name":"tests/fixtures/ubuntu-18.04/last-w.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/last-w.out","lines_changed":16},{"name":"tests/fixtures/ubuntu-18.04/last.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/last.out","lines_changed":16},{"name":"tests/fixtures/ubuntu-18.04/lastb.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lastb.out","lines_changed":3},{"name":"tests/test_last.py","lines_changed":100}]},"message":"add last and lastb tests"},{"commit":"3d4c0f3e89dab6496ff74df350e3238d6625933c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":22,"insertions":285,"deletions":0,"files":["tests/fixtures/centos-7.7/blkid-ip-multi.json","tests/fixtures/centos-7.7/blkid-ip-multi.out","tests/fixtures/centos-7.7/blkid-ip-udev-multi.json","tests/fixtures/centos-7.7/blkid-ip-udev-multi.out","tests/fixtures/centos-7.7/blkid-ip-udev.json","tests/fixtures/centos-7.7/blkid-ip-udev.out","tests/fixtures/centos-7.7/blkid-sda2.json","tests/fixtures/centos-7.7/blkid-sda2.out","tests/fixtures/centos-7.7/blkid.json","tests/fixtures/centos-7.7/blkid.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/blkid-ip-multi.json","tests/fixtures/ubuntu-18.04/blkid-ip-multi.out",".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.json",".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.out","tests/fixtures/ubuntu-18.04/blkid-ip-udev.json","tests/fixtures/ubuntu-18.04/blkid-ip-udev.out","tests/fixtures/ubuntu-18.04/blkid-sda2.json","tests/fixtures/ubuntu-18.04/blkid-sda2.out","tests/fixtures/ubuntu-18.04/blkid.json","tests/fixtures/ubuntu-18.04/blkid.out","tests/test_blkid.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/blkid-ip-multi.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid-ip-multi.out","lines_changed":29},{"name":"tests/fixtures/centos-7.7/blkid-ip-udev-multi.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid-ip-udev-multi.out","lines_changed":29},{"name":"tests/fixtures/centos-7.7/blkid-ip-udev.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid-ip-udev.out","lines_changed":14},{"name":"tests/fixtures/centos-7.7/blkid-sda2.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid-sda2.out","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid.out","lines_changed":4},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":6},{"name":"tests/fixtures/ubuntu-18.04/blkid-ip-multi.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid-ip-multi.out","lines_changed":2},{"name":".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.json","lines_changed":1},{"name":".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/blkid-ip-udev.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid-ip-udev.out","lines_changed":12},{"name":"tests/fixtures/ubuntu-18.04/blkid-sda2.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid-sda2.out","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid.out","lines_changed":15},{"name":"tests/test_blkid.py","lines_changed":136}]},"message":"add blkid tests"},{"commit":"52fad02903468c05d2422a340ad8dbcdf18ed475","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":12},{"name":"jc/parsers/ls.py","lines_changed":12}]},"message":"doc update"},{"commit":"9dcabc057c40e345971a08474b5b886e6b60a8de","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":10}]},"message":"support multi device udev output"},{"commit":"db8c1079ddc25922ab6a20d0f71fb19af38f8092","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":8}]},"message":"use maxsplit=1 in case there are multiple '=' delimiters"},{"commit":"8f954673abdbbd4d9b9da3eacc61b335b4909f89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":5}]},"message":"use shlex split for values within quotations that have spaces"},{"commit":"79522d1c7dd4dec15b75b06dda002752f7d97e36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"doc fixes"},{"commit":"a18bf030794efef125c70a32fe82855e47649b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/parsers/last.py","jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":12}]},"message":"use raw strings for regular expressions"},{"commit":"c02b6b5d827d26b43db0a3457124714aa2dbbc98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":81,"deletions":1,"files":["README.md","changelog.txt","setup.py"],"file_stats":[{"name":"README.md","lines_changed":79},{"name":"changelog.txt","lines_changed":1},{"name":"setup.py","lines_changed":2}]},"message":"doc updates"},{"commit":"f99b4232848b0d868804acc4125836bfcf475bba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":134,"deletions":29,"files":["docs/parsers/blkid.md","jc/parsers/blkid.py"],"file_stats":[{"name":"docs/parsers/blkid.md","lines_changed":115},{"name":"jc/parsers/blkid.py","lines_changed":48}]},"message":"doc update"},{"commit":"d7d9d45d4fba89e74f7490c463eb26bf20a5d127","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":2}]},"message":"add missing comma"},{"commit":"90065ec0cdc8c5abc13bc0027f63658dacf3cfb2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":31,"deletions":26,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":57}]},"message":"add more integers"},{"commit":"51157ebb867a48332c768bf3086614944aebdb62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":4}]},"message":"another devname fix"},{"commit":"96d95c79ca0938e326f55f858f8153df9cb49e44","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":6}]},"message":"devname fix"},{"commit":"e5da34c23306463e8707b15676db0ca53bf66757","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":3}]},"message":"check if devname key exists before renaming"},{"commit":"f09d657f7728242947db3dc63ff6779d08c37866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":5}]},"message":"rename devname to device"},{"commit":"0f4b0189f54dc0b3622cd407c5565e53ea111379","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":35,"deletions":3,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":38}]},"message":"process integer values"},{"commit":"4666042abb3142e2cfb518db9ffe22d9e608e090","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":216,"deletions":0,"files":["docgen.sh","docs/parsers/blkid.md","jc/cli.py","jc/parsers/blkid.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/blkid.md","lines_changed":83},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/blkid.py","lines_changed":131}]},"message":"add blkid parser"},{"commit":"027d544c2bb778adc0ee9463832f19b10e099a0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add last and lastb parser"},{"commit":"f1967d0138d27bde864c2400aa75baa8a39bbfde","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":3}]},"message":"system_boot fix"},{"commit":"c1d896027dd1ce021e048b3e77eab24ff59d08bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":3}]},"message":"fix system_boot tty"},{"commit":"5c2d2a66187d32d62b31b7c7f13e502fdb7f9635","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":190,"deletions":6,"files":["docgen.sh","docs/parsers/last.md","jc/parsers/last.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/last.md","lines_changed":118},{"name":"jc/parsers/last.py","lines_changed":77}]},"message":"process function and docs"},{"commit":"997b269b0b7e53a456e2a0bd997ead6c2ae843bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":3}]},"message":"btmp fix"},{"commit":"61257e7525c25827cb8057ed5c612e54ea9b9637","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":119,"deletions":1,"files":["jc/cli.py","jc/parsers/last.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/last.py","lines_changed":117}]},"message":"add last and lastb parser"},{"commit":"53ee2c36310cb84390ef96644aee6871769151c9","merge":"2ad3167 8bfa0bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #29 from kellyjonbrazil/dev\n\nDev v1.7.5"},{"commit":"8bfa0bddec9ff1c21972019467dcf5738ab3afd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to 1.7.5"},{"commit":"ad61e6bc81177a2add7d052bf1ddec5f1b3f2976","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":26,"insertions":598,"deletions":133,"files":["tests/fixtures/centos-7.7/ls-R-newlines.json","tests/fixtures/centos-7.7/ls-R-newlines.out","tests/fixtures/centos-7.7/ls-l-newlines.json","tests/fixtures/centos-7.7/ls-l-newlines.out","tests/fixtures/centos-7.7/ls-lR-newlines.json","tests/fixtures/centos-7.7/ls-lR-newlines.out","tests/fixtures/centos-7.7/ls-newlines.json","tests/fixtures/centos-7.7/ls-newlines.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/ls-R-newlines.json","tests/fixtures/osx-10.14.6/ls-R-newlines.out","tests/fixtures/osx-10.14.6/ls-l-newlines.json","tests/fixtures/osx-10.14.6/ls-l-newlines.out","tests/fixtures/osx-10.14.6/ls-lR-newlines.json","tests/fixtures/osx-10.14.6/ls-lR-newlines.out","tests/fixtures/osx-10.14.6/ls-newlines.json","tests/fixtures/osx-10.14.6/ls-newlines.out","tests/fixtures/ubuntu-18.04/ls-R-newlines.json","tests/fixtures/ubuntu-18.04/ls-R-newlines.out","tests/fixtures/ubuntu-18.04/ls-l-newlines.json","tests/fixtures/ubuntu-18.04/ls-l-newlines.out","tests/fixtures/ubuntu-18.04/ls-lR-newlines.json","tests/fixtures/ubuntu-18.04/ls-lR-newlines.out","tests/fixtures/ubuntu-18.04/ls-newlines.json","tests/fixtures/ubuntu-18.04/ls-newlines.out","tests/test_ls.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ls-R-newlines.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-R-newlines.out","lines_changed":43},{"name":"tests/fixtures/centos-7.7/ls-l-newlines.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-l-newlines.out","lines_changed":34},{"name":"tests/fixtures/centos-7.7/ls-lR-newlines.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-lR-newlines.out","lines_changed":45},{"name":"tests/fixtures/centos-7.7/ls-newlines.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-newlines.out","lines_changed":33},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":15},{"name":"tests/fixtures/osx-10.14.6/ls-R-newlines.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-R-newlines.out","lines_changed":36},{"name":"tests/fixtures/osx-10.14.6/ls-l-newlines.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-l-newlines.out","lines_changed":34},{"name":"tests/fixtures/osx-10.14.6/ls-lR-newlines.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-lR-newlines.out","lines_changed":38},{"name":"tests/fixtures/osx-10.14.6/ls-newlines.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-newlines.out","lines_changed":148},{"name":"tests/fixtures/ubuntu-18.04/ls-R-newlines.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-R-newlines.out","lines_changed":40},{"name":"tests/fixtures/ubuntu-18.04/ls-l-newlines.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-l-newlines.out","lines_changed":34},{"name":"tests/fixtures/ubuntu-18.04/ls-lR-newlines.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-lR-newlines.out","lines_changed":42},{"name":"tests/fixtures/ubuntu-18.04/ls-newlines.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-newlines.out","lines_changed":33},{"name":"tests/test_ls.py","lines_changed":144}]},"message":"add ls tests for filenames with newline characters"},{"commit":"873b5ba8acf599d083d6031b818d5fca83cbca9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":31,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":58}]},"message":"move examples to bottom"},{"commit":"6ae50054e2e8c7ca730013b43062eedc230c0ad4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"readme update"},{"commit":"22a35f41bf9c404d3532611f5929143d04b10010","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":10}]},"message":"move variables to top"},{"commit":"961696c963215a9dab56113ff89f21a6e9739df6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"add a warning if newlines are detected in naked ls"},{"commit":"c7b7f1a5dcf77a1f4c23ef6bbf5683fd1a055f72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"fix for files with newlines in naked ls"},{"commit":"b5a0d650b128d8af81bb14dd5d007349529cb66f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":151,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-newlines.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ls-newlines.out","lines_changed":151}]},"message":"ls output with newlines"},{"commit":"573b27946474276592ee7494689ce9a88f5a05f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":6}]},"message":"fixup for filenames that start with a newline character"},{"commit":"116e07f1614b4a45eb58ffcfe20b5efa71c473a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":7,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":13}]},"message":"fixes for multiple consecutive newlines and trailing newlines in filenames"},{"commit":"964868c8aff99edf37b0db41c7d16f8b84ac4704","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":21,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":20}]},"message":"add support for newlines in filenames (only with ls -l)"},{"commit":"c8dac32df8102c2b782e87d55bb95ca2d9490185","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"readme update"},{"commit":"72a0016bd833699c3819baa899f335f75b8c1943","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"use link to anchor for Parsers"},{"commit":"2ad316743460bb6620e7ede251e1dc2739b073fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update doc url"},{"commit":"ddabfaa05c63f886b17e5b4d37cd83fcfdb9b221","merge":"873771d f857523","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #25 from kellyjonbrazil/dev\n\nDev v1.7.4"},{"commit":"f857523ca756864211b6b18af5a8886e5db200bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"bump to version 1.7.4"},{"commit":"00d53858e820f00ba015bc25629100c8e5495221","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add note about aliases not being supported"},{"commit":"c008167e660929a91606bb96498cdc113e815f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":1},{"name":"jc/parsers/ls.py","lines_changed":1}]},"message":"add time-style=full-iso option to doc"},{"commit":"102344a041e9e0aff8b6d9db1873ba1064f7e895","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"formatting"},{"commit":"c865298ef3613fe6ce17f41c15209a69940af1ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":3}]},"message":"remove unnecessary enumerate in for loop"},{"commit":"6ac03faf939bcda8930a48a5e832b557813e2129","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"Revert \"add ubuntu and centos default ls aliases to magic_commands\"\n\nThis reverts commit 49c2701743706b6cbf0e52b2c7f275e301315189."},{"commit":"49c2701743706b6cbf0e52b2c7f275e301315189","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"add ubuntu and centos default ls aliases to magic_commands"},{"commit":"d1a271b08e64b42be8cec11377b0e18435a0caec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":35333,"deletions":1374,"files":["tests/fixtures/centos-7.7/ls-R.json","tests/fixtures/centos-7.7/ls-R.out","tests/fixtures/centos-7.7/ls-alR.json","tests/fixtures/centos-7.7/ls-alR.out","tests/fixtures/centos-7.7/ls-glob.json","tests/fixtures/centos-7.7/ls-glob.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/ls-R.json","tests/fixtures/osx-10.14.6/ls-R.out","tests/fixtures/osx-10.14.6/ls-alR.json","tests/fixtures/osx-10.14.6/ls-alR.out","tests/fixtures/osx-10.14.6/ls-glob.json","tests/fixtures/osx-10.14.6/ls-glob.out","tests/fixtures/ubuntu-18.04/ls-R.json","tests/fixtures/ubuntu-18.04/ls-R.out","tests/fixtures/ubuntu-18.04/ls-alR.json","tests/fixtures/ubuntu-18.04/ls-alR.out","tests/fixtures/ubuntu-18.04/ls-glob.json","tests/fixtures/ubuntu-18.04/ls-glob.out","tests/fixtures/ubuntu-18.04/ls-lR.out","tests/test_ls.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ls-R.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-R.out","lines_changed":5089},{"name":"tests/fixtures/centos-7.7/ls-alR.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-alR.out","lines_changed":4997},{"name":"tests/fixtures/centos-7.7/ls-glob.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-glob.out","lines_changed":1919},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":5},{"name":"tests/fixtures/osx-10.14.6/ls-R.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-R.out","lines_changed":5018},{"name":"tests/fixtures/osx-10.14.6/ls-alR.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-alR.out","lines_changed":4997},{"name":"tests/fixtures/osx-10.14.6/ls-glob.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-glob.out","lines_changed":1831},{"name":"tests/fixtures/ubuntu-18.04/ls-R.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-R.out","lines_changed":5639},{"name":"tests/fixtures/ubuntu-18.04/ls-alR.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-alR.out","lines_changed":5026},{"name":"tests/fixtures/ubuntu-18.04/ls-glob.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-glob.out","lines_changed":1357},{"name":"tests/fixtures/ubuntu-18.04/ls-lR.out","lines_changed":712},{"name":"tests/test_ls.py","lines_changed":108}]},"message":"add new ls tests for recursive and multiple directories with glob"},{"commit":"7388ad19b9d252d3e66659e4bc37171cef2a9748","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":6,"deletions":4,"files":["docs/parsers/ls.md","jc/cli.py","jc/parsers/ls.py","setup.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"setup.py","lines_changed":2}]},"message":"bump to v1.8.0"},{"commit":"2e63cb5fadd032c7cb54a618e8b374ee853abcca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"version bump ls to 1.1"},{"commit":"e7f14d02b12c7dcba309f2d28a0f171769d1ba37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1438,"deletions":8,"files":["jc/parsers/ls.py","tests/fixtures/ubuntu-18.04/ls-R.out","tests/fixtures/ubuntu-18.04/ls-lR.out"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":48},{"name":"tests/fixtures/ubuntu-18.04/ls-R.out","lines_changed":686},{"name":"tests/fixtures/ubuntu-18.04/ls-lR.out","lines_changed":712}]},"message":"update ls to allow multi directory (glob and -R). Adds 'parent' key if found"},{"commit":"873771d05ab0b77163c95d2c37e11edf38451832","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"d7de122e36e0698e00f321fbac8dc0b543cf9e8a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"prettify link"},{"commit":"4ef0434f536c6658ddc2b48a3db113df2fd26000","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":6}]},"message":"formatting update"},{"commit":"1aa2c9925996f2358b6272547db755ec3098a8a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":2,"files":["README.md","jc/parsers/history.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":1}]},"message":"removed history from magic syntax"},{"commit":"c2450b27b079b02ed3f4ece9e36547f01cd4b139","merge":"028e136 14d6d8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #22 from kellyjonbrazil/dev\n\nDev 1.7.3"},{"commit":"14d6d8b84f0ddeff984aff486e2e697a91ac6fb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump to 1.7.3"},{"commit":"f0e3846c038ec5507cd4a19980d83ee0fb969ef5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":5}]},"message":"formatting"},{"commit":"6ba64f1128373843b068226424a3af545ac9d22c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"usage update"},{"commit":"13bcdbc6c9a81bc5d52fe7a84e6a0a34908db8bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"doc update"},{"commit":"cfba62db20674d788601354211a10e2b1675a0c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":19}]},"message":"correct parser search in magic()"},{"commit":"18fb69e36e303a3f9530dcb80354b25bfdbb931d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"docs/parsers link"},{"commit":"474eb0f3fdeaa612e189d745b12a5ed9c6e0a31b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"doc updates"},{"commit":"7f47b533701e60449351d5da03cd5960e0dec9ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":90,"deletions":68,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":158}]},"message":"add alternate magic syntax"},{"commit":"dc2907d3ce101043b30bcce71abb4bb02897f43a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["docs/parsers/crontab.md"],"file_stats":[{"name":"docs/parsers/crontab.md","lines_changed":6}]},"message":"doc update"},{"commit":"1af85811e06c489051c456918284a746ce12c692","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/fstab.py"],"file_stats":[{"name":"jc/parsers/fstab.py","lines_changed":3}]},"message":"remove magic_command info"},{"commit":"1c1b19a478fe5c356a93cd165518429e77fcbdf0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":6}]},"message":"doc update"},{"commit":"66942d64babf932faeb887eb4ec0cab32829321a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":4}]},"message":"changelog update"},{"commit":"2fb6ae08d76e7a5727b2fcdd5def3e3822e0cf72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"fix shlex usage"},{"commit":"bf8811e03e2a5b736f4c084f42400fcde400ff3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]},"message":"add comments"},{"commit":"c8b502c571d3081ca3086e349a426ca252a3bb84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6}]},"message":"remove unnecessary join and add comments"},{"commit":"81c11a975c6ee66a1f83350df8b065a6b07dcc9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"added docstrings"},{"commit":"0d370eb403ab4d9ed11e36776efc08bdd3505c1a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"doc update"},{"commit":"7492c3f1e312cdb0c58c2077db0d60d2cab1e58f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"changelog update"},{"commit":"515a8a84b79c9bf6f3001d3c52faa82a6709b8d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":33,"insertions":33,"deletions":33,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2}]},"message":"add \"command\" to description"},{"commit":"dd6680efb2b15bb8ed676016aae1c65193dfe147","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":29,"deletions":14,"files":["changelog.txt","jc/cli.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":40}]},"message":"allow condensed options (-prdq is equivalent to -p -r -d -q)"},{"commit":"a7158373cd225685f5c398fa36b8d5208e20521c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"comment update"},{"commit":"6d50ec71997cac9c898737de93b8a945f0351e53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":15}]},"message":"add try/except to fix bare jc command condition"},{"commit":"95dbf98e8e03486f74d986683f52699f4f9c9577","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":32}]},"message":"allow options in magic syntax"},{"commit":"d49323e4ebf2a8aebd1d8ea65ef0854ee8bcb29f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":33,"insertions":33,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":1},{"name":"jc/parsers/crontab.py","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":1},{"name":"jc/parsers/du.py","lines_changed":1},{"name":"jc/parsers/env.py","lines_changed":1},{"name":"jc/parsers/foo.py","lines_changed":1},{"name":"jc/parsers/free.py","lines_changed":1},{"name":"jc/parsers/fstab.py","lines_changed":1},{"name":"jc/parsers/history.py","lines_changed":1},{"name":"jc/parsers/id.py","lines_changed":1},{"name":"jc/parsers/ifconfig.py","lines_changed":1},{"name":"jc/parsers/iptables.py","lines_changed":1},{"name":"jc/parsers/jobs.py","lines_changed":1},{"name":"jc/parsers/ls.py","lines_changed":1},{"name":"jc/parsers/lsblk.py","lines_changed":1},{"name":"jc/parsers/lsmod.py","lines_changed":1},{"name":"jc/parsers/lsof.py","lines_changed":1},{"name":"jc/parsers/mount.py","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":1},{"name":"jc/parsers/pip_list.py","lines_changed":1},{"name":"jc/parsers/pip_show.py","lines_changed":1},{"name":"jc/parsers/ps.py","lines_changed":1},{"name":"jc/parsers/route.py","lines_changed":1},{"name":"jc/parsers/ss.py","lines_changed":1},{"name":"jc/parsers/stat.py","lines_changed":1},{"name":"jc/parsers/systemctl.py","lines_changed":1},{"name":"jc/parsers/systemctl_lj.py","lines_changed":1},{"name":"jc/parsers/systemctl_ls.py","lines_changed":1},{"name":"jc/parsers/systemctl_luf.py","lines_changed":1},{"name":"jc/parsers/uname.py","lines_changed":1},{"name":"jc/parsers/uptime.py","lines_changed":1},{"name":"jc/parsers/w.py","lines_changed":1}]},"message":"add magic_commands list to info"},{"commit":"08c1e2aec9d6bb68653dc12ba2272535fb7cef09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add magic syntax"},{"commit":"a2c137df2e6d3b133df5df0bb3f9b1ca69990557","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":66,"deletions":299,"files":["jc/cli.py","jc/cli.py.old"],"file_stats":[{"name":"jc/cli.py","lines_changed":135},{"name":"jc/cli.py.old","lines_changed":230}]},"message":"better magic command syntax logic using introspection information from parser modules"},{"commit":"fe27dcdb8f72b5a288f978b87be2eb930099543e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":319,"deletions":45,"files":["jc/cli.py","jc/cli.py.old"],"file_stats":[{"name":"jc/cli.py","lines_changed":134},{"name":"jc/cli.py.old","lines_changed":230}]},"message":"proof of concept for magic syntax (e.g. jc ls -al)"},{"commit":"028e136161ac15f588845f87907b4565a6ee7be2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":7,"deletions":2,"files":["MANIFEST.in","changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"MANIFEST.in","lines_changed":1},{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":3}]},"message":"bump to 1.7.2: add test fixtures to package"},{"commit":"9a85a0a4d504447b32fb622bb17cebc5e47f687f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/crontab_u.md","jc/parsers/crontab_u.py"],"file_stats":[{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2}]},"message":"fix doc"},{"commit":"3a1cbc4d5063344c3e3a4bf510d651a36beedfb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":14,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":28}]},"message":"move info class to top"},{"commit":"77d334f7f386f79ec0571325500054fdab207f31","merge":"4de8f42 53cdf86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #19 from kellyjonbrazil/dev-1.7.1\n\nDev v1.7.1"},{"commit":"53cdf863acc72dbdb671773e30277f42e9eadc0e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":4}]},"message":"changelog update"},{"commit":"7b7e7fe0fe92edef1e559bd7ae8272530d7ed5c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"changelog update"},{"commit":"0c03132847a3d2bcbdb0b743e1472865916cced4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"fix error codes using sys.exit()"},{"commit":"3b81f7e2a1381958b33962d4531f3fa223c6a83e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"exit code on ctrl-c exit"},{"commit":"3d76437b435660e92633c604c4ad32ee0500a28b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ini.md","docs/parsers/xml.md","jc/parsers/ini.py","jc/parsers/xml.py"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/xml.py","lines_changed":2}]},"message":"doc fix"},{"commit":"4bc54c78cea48682ed0432ea56460a26a0e52f83","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":7,"deletions":7,"files":["docs/parsers/du.md","docs/parsers/history.md","jc/parsers/du.py","jc/parsers/history.py"],"file_stats":[{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":6},{"name":"jc/parsers/history.py","lines_changed":4}]},"message":"fix compatibility list"},{"commit":"3d303a96b9f6d582b1e99a632da539c3bee4df7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":16,"deletions":2,"files":["tests/fixtures/centos-7.7/crontab-u.json","tests/fixtures/centos-7.7/{crontab2.out => crontab-u.out}","tests/fixtures/centos-7.7/crontab.json","tests/fixtures/ubuntu-18.04/crontab-u.json","tests/test_crontab_u.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/crontab-u.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/{crontab2.out => crontab-u.out}","lines_changed":1},{"name":"tests/fixtures/centos-7.7/crontab.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/crontab-u.json","lines_changed":2},{"name":"tests/test_crontab_u.py","lines_changed":12}]},"message":"crontab bug fix and tests"},{"commit":"33c99d031d18e52a8ca85dfc1a8cba0acebfc3bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":2}]},"message":"fix line clobbering bug"},{"commit":"caf7e9f69a22f3c9b3d4624fd2238d6e54d932ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/crontab_u.py"],"file_stats":[{"name":"jc/parsers/crontab_u.py","lines_changed":6}]},"message":"fix line clobbering bug and add user field to shortcuts"},{"commit":"9449f1f5d5e7bc075549549758af5cc3a6c4524f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":9,"deletions":3,"files":["changelog.txt","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/fixtures/centos-7.7/crontab2.out"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/crontab.py","lines_changed":4},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/crontab2.out","lines_changed":5}]},"message":"crontab bugfix: inserting header row was clobbering the first data row"},{"commit":"6bad164b5e2a5b7c7ce82c69b6c091fc079ab2fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":9,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":16}]},"message":"simplify by removing unnecessary getattr calls"},{"commit":"bb5ba7ddb146821db2efe095b6de5ae5b72bb335","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":7}]},"message":"add indent variable to helptext"},{"commit":"8b2e01d5404649e8f94c81ca3b5fa05fe8962220","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"doc update"},{"commit":"ff1159b1deb9b870382a6066166961902679b569","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"exit codes on error"},{"commit":"a2fd3202a0a3df336792f167c546ea3e53ea2332","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/pip_list.py","jc/parsers/pip_show.py"],"file_stats":[{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2}]},"message":"description formatting change"},{"commit":"7b53715b91787a8885d61ddc0079c7ee8f9348a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/crontab_u.py"],"file_stats":[{"name":"jc/parsers/crontab_u.py","lines_changed":2}]},"message":"change description"},{"commit":"e05fc0a5107b348af14ff4bea39d274939fab7dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":8,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":16}]},"message":"change padding of helptext"},{"commit":"43604c33f654b8c19e8cce387ebbf31bd598b73b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"doc update"},{"commit":"eb67c484ff2a9530b434cd6a90c160f6936e1de7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"add crontab-u to parsers list"},{"commit":"a7b7bdd46781d07e6e70d74a41a3944855fde5fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":94,"deletions":92,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":186}]},"message":"load parser modules 'just in time' so we don't need to load all modules at startup"},{"commit":"ab06989a18faf5378f1e73c7016ea02e1218ff9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":10}]},"message":"description updates"},{"commit":"657b722f947b6a0aa7e52a786e4c84f177e9a5c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":8,"deletions":8,"files":["README.md","changelog.txt","docs/parsers/ini.md","jc/parsers/ini.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"changelog.txt","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"jc/parsers/ini.py","lines_changed":6}]},"message":"ini to INI"},{"commit":"dd2aecad2787186b3962723086bb7e13eff4874f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"description update"},{"commit":"c82c5c5c648384eb5a54205ba8590624a3ab4375","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":6}]},"message":"changelog update"},{"commit":"a1761cd68f91e2668d8d7e2fa7774f6496408be6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":42,"deletions":0,"files":["tests/fixtures/centos-7.7/id.json","tests/fixtures/osx-10.14.6/id.json","tests/test_id.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/id.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/id.json","lines_changed":1},{"name":"tests/test_id.py","lines_changed":40}]},"message":"id tests"},{"commit":"d618a7f583629bb7a7fc0854e7349cab07e3e003","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":143,"deletions":9,"files":["README.md","docgen.sh","docs/parsers/id.md","jc/parsers/id.py"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/id.md","lines_changed":133},{"name":"jc/parsers/id.py","lines_changed":12}]},"message":"doc update"},{"commit":"831a42f66096f5efbbf0f6882970c328120f9c9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":48}]},"message":"id formatting"},{"commit":"3b36022e5a1056a28a83494b1ab8fab209399c2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":250,"deletions":1,"files":["README.md","jc/cli.py","jc/parsers/id.py","tests/fixtures/centos-7.7/id.out","tests/fixtures/osx-10.14.6/id.out"],"file_stats":[{"name":"README.md","lines_changed":33},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":214},{"name":"tests/fixtures/centos-7.7/id.out","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/id.out","lines_changed":1}]},"message":"add id parser"},{"commit":"d01dfa25f10f82cd201ae7b4c9cc18313773f8d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]},"message":"changelog updates"},{"commit":"395a99037b4816eb800b289f90372a9b8d7d36cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":89,"deletions":13,"files":["README.md","docs/parsers/history.md","jc/parsers/history.py"],"file_stats":[{"name":"README.md","lines_changed":84},{"name":"docs/parsers/history.md","lines_changed":10},{"name":"jc/parsers/history.py","lines_changed":8}]},"message":"crontab-u and history doc updates"},{"commit":"025986c51d2d4869b17de63a7dd96efa2988e3c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":13,"deletions":3,"files":["jc/parsers/history.py","tests/fixtures/centos-7.7/history.json","tests/fixtures/ubuntu-18.04/history.json"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":12},{"name":"tests/fixtures/centos-7.7/history.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/history.json","lines_changed":2}]},"message":"change history 'line' to integer"},{"commit":"c56b83093ff05f55ef4643c1731cff61d4b9e8ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":202,"deletions":2,"files":["docgen.sh","docs/parsers/crontab.md","docs/parsers/crontab_u.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"docs/parsers/crontab_u.md","lines_changed":199}]},"message":"doc update"},{"commit":"7c712a4133abd843d4da926e4c8d548abd1d6fa3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":52,"deletions":50,"files":["jc/parsers/crontab_u.py"],"file_stats":[{"name":"jc/parsers/crontab_u.py","lines_changed":102}]},"message":"doc update"},{"commit":"9a0cfe6dfa4888f435d35bd2d35126d031a556d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":4}]},"message":"minor formatting"},{"commit":"a116cdbcec1b27192dd0f9f4707629353edb3caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":29,"deletions":13,"files":["tests/fixtures/ubuntu-18.04/crontab-u.json",".../ubuntu-18.04/{crontab.out => crontab-u.out}","tests/fixtures/ubuntu-18.04/crontab.json","tests/test_crontab.py","tests/test_crontab_u.py"],"file_stats":[{"name":"tests/fixtures/ubuntu-18.04/crontab-u.json","lines_changed":1},{"name":".../ubuntu-18.04/{crontab.out => crontab-u.out}","lines_changed":0},{"name":"tests/fixtures/ubuntu-18.04/crontab.json","lines_changed":1},{"name":"tests/test_crontab.py","lines_changed":12},{"name":"tests/test_crontab_u.py","lines_changed":28}]},"message":"tests for crontab-u"},{"commit":"f2d616c98e049cdac5d667e63723f92110419a1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":272,"deletions":0,"files":["changelog.txt","jc/cli.py","jc/parsers/crontab_u.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":269}]},"message":"add crontab with user parser"},{"commit":"42cbd1777dbacc614d75f67f3f9156f72be46532","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":80,"deletions":0,"files":["tests/test_xml.py","tests/test_yaml.py"],"file_stats":[{"name":"tests/test_xml.py","lines_changed":40},{"name":"tests/test_yaml.py","lines_changed":40}]},"message":"add xml and yaml tests"},{"commit":"ebf375aac0473249cfd212068f6e6e33cc42449a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":40,"deletions":0,"files":["tests/test_ini.py"],"file_stats":[{"name":"tests/test_ini.py","lines_changed":40}]},"message":"add ini tests"},{"commit":"1f9050267eeb870c4c0f50000fc32985c4d8535b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":586,"deletions":0,"files":["tests/fixtures/generic/ini-iptelserver.ini","tests/fixtures/generic/ini-iptelserver.json","tests/fixtures/generic/ini-test.ini","tests/fixtures/generic/ini-test.json","tests/fixtures/generic/xml-cd_catalog.json","tests/fixtures/generic/xml-cd_catalog.xml","tests/fixtures/generic/xml-foodmenu.json","tests/fixtures/generic/xml-foodmenu.xml","tests/fixtures/generic/yaml-istio-sc.json","tests/fixtures/generic/yaml-istio-sc.yaml","tests/fixtures/generic/yaml-istio-sidecar.json","tests/fixtures/generic/yaml-istio-sidecar.yaml"],"file_stats":[{"name":"tests/fixtures/generic/ini-iptelserver.ini","lines_changed":133},{"name":"tests/fixtures/generic/ini-iptelserver.json","lines_changed":1},{"name":"tests/fixtures/generic/ini-test.ini","lines_changed":12},{"name":"tests/fixtures/generic/ini-test.json","lines_changed":1},{"name":"tests/fixtures/generic/xml-cd_catalog.json","lines_changed":1},{"name":"tests/fixtures/generic/xml-cd_catalog.xml","lines_changed":211},{"name":"tests/fixtures/generic/xml-foodmenu.json","lines_changed":1},{"name":"tests/fixtures/generic/xml-foodmenu.xml","lines_changed":33},{"name":"tests/fixtures/generic/yaml-istio-sc.json","lines_changed":1},{"name":"tests/fixtures/generic/yaml-istio-sc.yaml","lines_changed":17},{"name":"tests/fixtures/generic/yaml-istio-sidecar.json","lines_changed":1},{"name":"tests/fixtures/generic/yaml-istio-sidecar.yaml","lines_changed":174}]},"message":"add ini, xml, and yaml test files"},{"commit":"d7f9707a1521719ce051140b1a0b4ced7c5114c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/ini.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"minor formatting"},{"commit":"ab589ee3ed09b9d5e09d8c046f3a64cd2bd14c98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"add __version__ variable"},{"commit":"c84ec0361fc4c877c698378b28ff9e8b502793b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":105,"deletions":3,"files":["README.md","docgen.sh","docs/parsers/xml.md","jc/parsers/xml.py"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/xml.md","lines_changed":99},{"name":"jc/parsers/xml.py","lines_changed":5}]},"message":"xml example update"},{"commit":"47d2f8968a8a9b68fc9fff45985f5e69f1a5cc40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"changelog.txt","lines_changed":1}]},"message":"doc update"},{"commit":"019c480bcce7fe3821b75906fc673ce7bb1ffadc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"update acknowledgments"},{"commit":"547c6d3d5956984d3c4fb5c2a1b76a595752b467","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":172,"deletions":2,"files":["README.md","changelog.txt","jc/cli.py","jc/parsers/xml.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":46},{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/xml.py","lines_changed":119},{"name":"setup.py","lines_changed":3}]},"message":"add xml parser"},{"commit":"b5ebf8b76afcd0e0190994048fe1f5b53f654451","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add ruamel.yaml ack"},{"commit":"c690e328f23a69f592dfaaa949b74ba2190ad376","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":102,"deletions":14,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/yaml.md","lines_changed":58},{"name":"jc/parsers/yaml.py","lines_changed":58}]},"message":"add examples"},{"commit":"cbb92c1a9517234806f1c54398a69645b6f43669","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":94,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":94}]},"message":"add ini and yaml"},{"commit":"beb41997c9b3797e73a678ec1bcddcfb83b5ef0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":91,"deletions":2,"files":["docgen.sh","docs/parsers/ini.md","jc/parsers/ini.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ini.md","lines_changed":87},{"name":"jc/parsers/ini.py","lines_changed":5}]},"message":"doc update"},{"commit":"755a6faf1110f150fe2261b81439b7d17a9b424e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":8,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":12}]},"message":"clean up multi-document support"},{"commit":"021f8350a31a49ecc539f02576303600b222b49d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":4}]},"message":"update doc"},{"commit":"76583dcd2f5ef32e58ca87149154563b07e061cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":113,"deletions":0,"files":["jc/cli.py","jc/parsers/ini.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/ini.py","lines_changed":111}]},"message":"add ini file parser"},{"commit":"bf033239a706c42be3d7508c58a51c542f8a69b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":82,"deletions":7,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/yaml.md","lines_changed":69},{"name":"jc/parsers/yaml.py","lines_changed":20}]},"message":"doc update"},{"commit":"eb37fccd37fd625f701a14b6cfcf30e9f0bbff4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":11}]},"message":"doc update"},{"commit":"d04ad453319fe45e302da87f970d2ac0806fae1a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":2,"files":["changelog.txt","docgen.sh","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"setup.py","lines_changed":5}]},"message":"setup for 1.7.1"},{"commit":"db157b8ca7f7fa935676bafeaafdfd9818a89e6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":94,"deletions":2,"files":["jc/cli.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6},{"name":"jc/parsers/yaml.py","lines_changed":90}]},"message":"add yaml file parser"},{"commit":"68f277bb2081eb2cba14ffe7f0ee1ee0a982335b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":33,"insertions":99,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/crontab.py","lines_changed":3},{"name":"jc/parsers/df.py","lines_changed":3},{"name":"jc/parsers/dig.py","lines_changed":3},{"name":"jc/parsers/du.py","lines_changed":3},{"name":"jc/parsers/env.py","lines_changed":3},{"name":"jc/parsers/foo.py","lines_changed":3},{"name":"jc/parsers/free.py","lines_changed":3},{"name":"jc/parsers/fstab.py","lines_changed":3},{"name":"jc/parsers/history.py","lines_changed":3},{"name":"jc/parsers/hosts.py","lines_changed":3},{"name":"jc/parsers/ifconfig.py","lines_changed":3},{"name":"jc/parsers/iptables.py","lines_changed":3},{"name":"jc/parsers/jobs.py","lines_changed":3},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"jc/parsers/lsblk.py","lines_changed":3},{"name":"jc/parsers/lsmod.py","lines_changed":3},{"name":"jc/parsers/lsof.py","lines_changed":3},{"name":"jc/parsers/mount.py","lines_changed":3},{"name":"jc/parsers/netstat.py","lines_changed":3},{"name":"jc/parsers/pip_list.py","lines_changed":3},{"name":"jc/parsers/pip_show.py","lines_changed":3},{"name":"jc/parsers/ps.py","lines_changed":3},{"name":"jc/parsers/route.py","lines_changed":3},{"name":"jc/parsers/ss.py","lines_changed":3},{"name":"jc/parsers/stat.py","lines_changed":3},{"name":"jc/parsers/systemctl.py","lines_changed":3},{"name":"jc/parsers/systemctl_lj.py","lines_changed":3},{"name":"jc/parsers/systemctl_ls.py","lines_changed":3},{"name":"jc/parsers/systemctl_luf.py","lines_changed":3},{"name":"jc/parsers/uname.py","lines_changed":3},{"name":"jc/parsers/uptime.py","lines_changed":3},{"name":"jc/parsers/w.py","lines_changed":3}]},"message":"add __version__"},{"commit":"4de8f42664379570392552796e34324abb39fdc2","merge":"6633d92 4f11855","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #17 from kellyjonbrazil/dev\n\nDev v1.6.1"},{"commit":"4f118559356edc1da866e1bec80830e7a75a0b26","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]},"message":"update version info"},{"commit":"2b9a5fcc32f85295faa55410efcaf142c42bd167","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":4}]},"message":"update version"},{"commit":"224948d1f23e01b7cd968820529579792f862f0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":428,"deletions":0,"files":["tests/fixtures/centos-7.7/pip-list.json","tests/fixtures/centos-7.7/pip-list.out","tests/fixtures/centos-7.7/pip-show.json","tests/fixtures/centos-7.7/pip-show.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.11.6/pip-list.json","tests/fixtures/osx-10.11.6/pip-list.out","tests/fixtures/osx-10.11.6/pip-show.json","tests/fixtures/osx-10.11.6/pip-show.out","tests/fixtures/osx-10.14.6/pip-list.json","tests/fixtures/osx-10.14.6/pip-list.out","tests/fixtures/osx-10.14.6/pip-show.json","tests/fixtures/osx-10.14.6/pip-show.out","tests/fixtures/ubuntu-18.04/pip-list-legacy.json","tests/fixtures/ubuntu-18.04/pip-list-legacy.out","tests/fixtures/ubuntu-18.04/pip-list.json","tests/fixtures/ubuntu-18.04/pip-list.out","tests/fixtures/ubuntu-18.04/pip-show.json","tests/fixtures/ubuntu-18.04/pip-show.out","tests/test_pip_list.py","tests/test_pip_show.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/pip-list.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/pip-list.out","lines_changed":22},{"name":"tests/fixtures/centos-7.7/pip-show.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/pip-show.out","lines_changed":32},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/pip-list.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/pip-list.out","lines_changed":7},{"name":"tests/fixtures/osx-10.11.6/pip-show.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/pip-show.out","lines_changed":32},{"name":"tests/fixtures/osx-10.14.6/pip-list.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/pip-list.out","lines_changed":7},{"name":"tests/fixtures/osx-10.14.6/pip-show.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/pip-show.out","lines_changed":32},{"name":"tests/fixtures/ubuntu-18.04/pip-list-legacy.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/pip-list-legacy.out","lines_changed":57},{"name":"tests/fixtures/ubuntu-18.04/pip-list.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/pip-list.out","lines_changed":59},{"name":"tests/fixtures/ubuntu-18.04/pip-show.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/pip-show.out","lines_changed":29},{"name":"tests/test_pip_list.py","lines_changed":76},{"name":"tests/test_pip_show.py","lines_changed":64}]},"message":"pip list and pip show tests"},{"commit":"36f2812d5a7a94c412e098233c026d99d5205b60","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":15,"deletions":7,"files":["jc/parsers/pip_list.py"],"file_stats":[{"name":"jc/parsers/pip_list.py","lines_changed":22}]},"message":"add support for legacy output"},{"commit":"be06aa2b31c057c56229e75c7fa70052b83053ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":65,"insertions":70,"deletions":66,"files":["docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":3},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":3},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":3},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":3},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2}]},"message":"update parse() Return info"},{"commit":"41f8e3aba268ca0cd09931a04368615425c1aec8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":65,"insertions":67,"deletions":65,"files":["docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":3},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":3},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2}]},"message":"update Return info"},{"commit":"093c0df8978ace842af5258f9aff72c63c6f843d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"schema info"},{"commit":"37afc7dc8ae30342d01f3f72e73646fa60bb5294","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"updte todo and compatibility"},{"commit":"efbf3549606fc77f8c16587ff04a0c316dfe5c00","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":126,"deletions":12,"files":["README.md","docgen.sh","docs/parsers/pip_show.md","jc/parsers/pip_show.py"],"file_stats":[{"name":"README.md","lines_changed":31},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/pip_show.md","lines_changed":94},{"name":"jc/parsers/pip_show.py","lines_changed":12}]},"message":"doc update for pip show"},{"commit":"5e39fe0d8044787389d8f206f3c863d4bdf1e2ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":64,"deletions":5,"files":["jc/parsers/pip_show.py"],"file_stats":[{"name":"jc/parsers/pip_show.py","lines_changed":69}]},"message":"pip show parser working"},{"commit":"47328dc65969f149c8f027286774ff0847c18add","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add pip-show parser"},{"commit":"addeef50ba54f536855544937a6c98135ae5cd51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":84,"deletions":0,"files":["jc/parsers/pip_show.py"],"file_stats":[{"name":"jc/parsers/pip_show.py","lines_changed":84}]},"message":"initial pip show parser add"},{"commit":"ad338cc5b50a178091c47cbea9a1db135a7fb678","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":56,"deletions":42,"files":["docs/parsers/crontab.md","jc/parsers/crontab.py"],"file_stats":[{"name":"docs/parsers/crontab.md","lines_changed":49},{"name":"jc/parsers/crontab.py","lines_changed":49}]},"message":"schema doc update"},{"commit":"202bc8201e31fd453c682265347b4e2ac2d41718","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["README.md","docs/parsers/crontab.md","jc/parsers/crontab.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"jc/parsers/crontab.py","lines_changed":4}]},"message":"doc update"},{"commit":"5ff99de405fbd8f79f9c2e301ac27184e0aba6fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add argument to parser info"},{"commit":"86ebe2cf9c6b336eacf217393c3c3c324ee29ec0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":205,"deletions":1,"files":["README.md","docgen.sh","docs/parsers/crontab.md","docs/parsers/pip_list.md","jc/cli.py","jc/parsers/pip_list.py"],"file_stats":[{"name":"README.md","lines_changed":21},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":75},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":105}]},"message":"initial add of pip list parser"},{"commit":"facf0b399c608d33f6a454ee24fd49fc62471742","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":4}]},"message":"add osx to campatible"},{"commit":"33db7b0bcb0f24979cad6e173737d75c8ed301af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":57,"deletions":0,"files":["tests/fixtures/centos-7.7/crontab.json","tests/fixtures/ubuntu-18.04/crontab.json","tests/fixtures/ubuntu-18.04/crontab.out","tests/test_crontab.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/crontab.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/crontab.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/crontab.out","lines_changed":15},{"name":"tests/test_crontab.py","lines_changed":40}]},"message":"add crontab tests"},{"commit":"663d07bca1181024d9d08b940237c52197c91729","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":191,"deletions":0,"files":["docgen.sh","docs/parsers/crontab.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/crontab.md","lines_changed":190}]},"message":"add crontab"},{"commit":"ba04e4997fcb28adbee446f633c121f1585b9f2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":113,"deletions":4,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":117}]},"message":"update docs"},{"commit":"c4fee1b658c91afa2abdd746af6c1b4697c44b35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":72,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":73}]},"message":"add crontab parser"},{"commit":"99b92a15bbebc5568f4455f388f945613c4a2759","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":37,"deletions":14,"files":["jc/parsers/crontab.py","tests/fixtures/centos-7.7/crontab.out"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":40},{"name":"tests/fixtures/centos-7.7/crontab.out","lines_changed":11}]},"message":"support shortcut schedules"},{"commit":"b076ab5b57a6a59db096485e5ff4eb9f91bae8be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":177,"deletions":0,"files":["jc/cli.py","jc/parsers/crontab.py","tests/fixtures/centos-7.7/crontab.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":132},{"name":"tests/fixtures/centos-7.7/crontab.out","lines_changed":43}]},"message":"initial crontab parser"},{"commit":"687759f75d0e80e81746a84f051e55cfdc870447","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":31,"deletions":31,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":62}]},"message":"alphabetize du entry"},{"commit":"9eaac7f3af0e0851c2d091d94c9920faa8a0fdfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":32,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":32}]},"message":"add du"},{"commit":"4c24e00cfc0748d98e220d08820b88fc156148db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":21738,"deletions":9,"files":["tests/fixtures/osx-10.11.6/du.json","tests/fixtures/osx-10.11.6/du.out","tests/fixtures/ubuntu-18.04/du.json","tests/fixtures/ubuntu-18.04/du.out","tests/test_du.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/du.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/du.out","lines_changed":2471},{"name":"tests/fixtures/ubuntu-18.04/du.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/du.out","lines_changed":19244},{"name":"tests/test_du.py","lines_changed":30}]},"message":"add osx-11 and ubuntu tests"},{"commit":"beb17011b03e720078b0752e79a6a0f6123d1d3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":131,"deletions":2,"files":["changelog.txt","docgen.sh","docs/parsers/du.md","docs/parsers/uname.md","tests/fixtures/osx-10.14.6/du.json","tests/test_du.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/du.md","lines_changed":115},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/du.json","lines_changed":1},{"name":"tests/test_du.py","lines_changed":12}]},"message":"du tests and docs"},{"commit":"e882bf55bcd1d3526423ed1ccc61fb4819395cce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":8755,"deletions":0,"files":["changelog.txt","jc/cli.py","jc/parsers/du.py","tests/fixtures/centos-7.7/du.json","tests/fixtures/centos-7.7/du.out","tests/fixtures/osx-10.14.6/du.out","tests/test_du.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":148},{"name":"tests/fixtures/centos-7.7/du.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/du.out","lines_changed":5199},{"name":"tests/fixtures/osx-10.14.6/du.out","lines_changed":3364},{"name":"tests/test_du.py","lines_changed":40}]},"message":"initial add du parser"},{"commit":"3a3016adb6d5b9e35f8a39908bfcdc65997cc5c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add parser_count to about"},{"commit":"1e8b68153ade8a1e3d2b4db36e0c402bbc887079","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":27,"deletions":1,"files":["tests/fixtures/osx-10.11.6/uname-a.json","tests/fixtures/osx-10.14.6/uname-a.json","tests/fixtures/osx-10.14.6/uname-a.out","tests/test_uname.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/uname-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/uname-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/uname-a.out","lines_changed":2},{"name":"tests/test_uname.py","lines_changed":24}]},"message":"add osx uname tests"},{"commit":"9335cf65fbb87e3a0a7da0c4e9bcd251cb829de2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"add uname osx support"},{"commit":"83f35256aee71f2619ddf880e2b8f2d6c63280bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":30,"deletions":19,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":49}]},"message":"add OSX support"},{"commit":"428333394817e4461a4eb095f4d6d128305a5f98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":2}]},"message":"version bump"},{"commit":"b8f902796b7fb23a41355b23f7ce235bd18edc58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]},"message":"shorten changelog"},{"commit":"8f99ab295cd15718b98781707def97539ad41920","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"info update"},{"commit":"882310e268e2022f0cd6da75f80f5356529cd05c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add name to about parser info"},{"commit":"56bce9521409d1850f75a3ae2be1363e765dd9dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":10,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":16}]},"message":"about code cleanup"},{"commit":"c13ecbec2952c5d6765397f645e90653a4fd9d05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":28,"insertions":2,"deletions":28,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":1},{"name":"jc/parsers/env.py","lines_changed":1},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":1},{"name":"jc/parsers/fstab.py","lines_changed":1},{"name":"jc/parsers/history.py","lines_changed":1},{"name":"jc/parsers/hosts.py","lines_changed":1},{"name":"jc/parsers/iptables.py","lines_changed":1},{"name":"jc/parsers/jobs.py","lines_changed":1},{"name":"jc/parsers/ls.py","lines_changed":1},{"name":"jc/parsers/lsblk.py","lines_changed":1},{"name":"jc/parsers/lsmod.py","lines_changed":1},{"name":"jc/parsers/lsof.py","lines_changed":1},{"name":"jc/parsers/mount.py","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":1},{"name":"jc/parsers/ps.py","lines_changed":1},{"name":"jc/parsers/route.py","lines_changed":1},{"name":"jc/parsers/ss.py","lines_changed":1},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":1},{"name":"jc/parsers/systemctl_lj.py","lines_changed":1},{"name":"jc/parsers/systemctl_ls.py","lines_changed":1},{"name":"jc/parsers/systemctl_luf.py","lines_changed":1},{"name":"jc/parsers/uname.py","lines_changed":1},{"name":"jc/parsers/uptime.py","lines_changed":1},{"name":"jc/parsers/w.py","lines_changed":1}]},"message":"clean up parser info"},{"commit":"0ffaaa6e73649d1f657af569ac0b912f166e8493","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":9,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":16}]},"message":"clean up about code"},{"commit":"75eff3adea097157c005b2201e353a741241ce8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":8}]},"message":"remove whitespace"},{"commit":"bf5f80476cff642ae672187ea59d40bdb602101e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6}]},"message":"use real parser name in error message"},{"commit":"9aaf0fbb2f838c0af1e7f18fdb19104f9f5d3d39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":29,"insertions":146,"deletions":1,"files":["changelog.txt","docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"docs/parsers/arp.md","lines_changed":11},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5}]},"message":"doc updates"},{"commit":"8f01ef79532743573632d716ceea41d5ea752c88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add -a option info"},{"commit":"da1d087452da02631296b1b3dc9ee10d4b7f764b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add parser version info"},{"commit":"e16bc7e882a27a1d5a4bd7cf9972208e6997f96f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":29,"insertions":82,"deletions":17,"files":["jc/cli.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":71},{"name":"jc/parsers/arp.py","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":1},{"name":"jc/parsers/env.py","lines_changed":1},{"name":"jc/parsers/foo.py","lines_changed":1},{"name":"jc/parsers/free.py","lines_changed":1},{"name":"jc/parsers/fstab.py","lines_changed":1},{"name":"jc/parsers/history.py","lines_changed":1},{"name":"jc/parsers/hosts.py","lines_changed":1},{"name":"jc/parsers/iptables.py","lines_changed":1},{"name":"jc/parsers/jobs.py","lines_changed":1},{"name":"jc/parsers/ls.py","lines_changed":1},{"name":"jc/parsers/lsblk.py","lines_changed":1},{"name":"jc/parsers/lsmod.py","lines_changed":1},{"name":"jc/parsers/lsof.py","lines_changed":1},{"name":"jc/parsers/mount.py","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":1},{"name":"jc/parsers/ps.py","lines_changed":1},{"name":"jc/parsers/route.py","lines_changed":1},{"name":"jc/parsers/ss.py","lines_changed":1},{"name":"jc/parsers/stat.py","lines_changed":1},{"name":"jc/parsers/systemctl.py","lines_changed":1},{"name":"jc/parsers/systemctl_lj.py","lines_changed":1},{"name":"jc/parsers/systemctl_ls.py","lines_changed":1},{"name":"jc/parsers/systemctl_luf.py","lines_changed":1},{"name":"jc/parsers/uname.py","lines_changed":1},{"name":"jc/parsers/uptime.py","lines_changed":1},{"name":"jc/parsers/w.py","lines_changed":1}]},"message":"add about information to parsers"},{"commit":"fe9bdd4811216257c05b16d6d61897929669d434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":31,"insertions":384,"deletions":219,"files":["changelog.txt","jc/cli.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/cli.py","lines_changed":127},{"name":"jc/parsers/arp.py","lines_changed":25},{"name":"jc/parsers/df.py","lines_changed":15},{"name":"jc/parsers/dig.py","lines_changed":15},{"name":"jc/parsers/env.py","lines_changed":16},{"name":"jc/parsers/foo.py","lines_changed":16},{"name":"jc/parsers/free.py","lines_changed":16},{"name":"jc/parsers/fstab.py","lines_changed":16},{"name":"jc/parsers/history.py","lines_changed":16},{"name":"jc/parsers/hosts.py","lines_changed":16},{"name":"jc/parsers/ifconfig.py","lines_changed":17},{"name":"jc/parsers/iptables.py","lines_changed":16},{"name":"jc/parsers/jobs.py","lines_changed":16},{"name":"jc/parsers/ls.py","lines_changed":16},{"name":"jc/parsers/lsblk.py","lines_changed":17},{"name":"jc/parsers/lsmod.py","lines_changed":16},{"name":"jc/parsers/lsof.py","lines_changed":16},{"name":"jc/parsers/mount.py","lines_changed":16},{"name":"jc/parsers/netstat.py","lines_changed":16},{"name":"jc/parsers/ps.py","lines_changed":16},{"name":"jc/parsers/route.py","lines_changed":16},{"name":"jc/parsers/ss.py","lines_changed":16},{"name":"jc/parsers/stat.py","lines_changed":15},{"name":"jc/parsers/systemctl.py","lines_changed":16},{"name":"jc/parsers/systemctl_lj.py","lines_changed":16},{"name":"jc/parsers/systemctl_ls.py","lines_changed":16},{"name":"jc/parsers/systemctl_luf.py","lines_changed":16},{"name":"jc/parsers/uname.py","lines_changed":16},{"name":"jc/parsers/uptime.py","lines_changed":16},{"name":"jc/parsers/w.py","lines_changed":16}]},"message":"add info class"},{"commit":"17b6f3f6d6c398a52166849088a793d0e3b328b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":26,"deletions":0,"files":["tests/fixtures/osx-10.11.6/uptime.json","tests/fixtures/osx-10.14.6/uptime.json","tests/test_uptime.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/uptime.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/uptime.json","lines_changed":1},{"name":"tests/test_uptime.py","lines_changed":24}]},"message":"add osx tests"},{"commit":"90a6baf0ee3b8b27476badada4e590e22144f810","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":52,"deletions":0,"files":["tests/fixtures/osx-10.11.6/ps-axu.json","tests/fixtures/osx-10.11.6/ps-ef.json","tests/fixtures/osx-10.11.6/w.json","tests/fixtures/osx-10.14.6/w.json","tests/test_ps.py","tests/test_w.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/ps-axu.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ps-ef.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/w.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/w.json","lines_changed":1},{"name":"tests/test_ps.py","lines_changed":24},{"name":"tests/test_w.py","lines_changed":24}]},"message":"add osx tests"},{"commit":"f0e73d0e72d540292f41fff51652932c4e8b0315","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":444,"deletions":0,"files":["tests/fixtures/osx-10.11.6/ps-axu.out","tests/fixtures/osx-10.11.6/ps-ef.out","tests/fixtures/osx-10.11.6/uname-a.out","tests/fixtures/osx-10.11.6/uptime.out","tests/fixtures/osx-10.11.6/w.out","tests/fixtures/osx-10.14.6/uname-a.out","tests/fixtures/osx-10.14.6/uptime.out","tests/fixtures/osx-10.14.6/w.out"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/ps-axu.out","lines_changed":211},{"name":"tests/fixtures/osx-10.11.6/ps-ef.out","lines_changed":211},{"name":"tests/fixtures/osx-10.11.6/uname-a.out","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/uptime.out","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/w.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/uname-a.out","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/uptime.out","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/w.out","lines_changed":10}]},"message":"add osx tests"},{"commit":"a762882f1ccea6789ce7813b313f3242175b5bd6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":88,"files":["tests/fixtures/osx-10.14.6/ps-axu.json","tests/fixtures/osx-10.14.6/ps-axu.out","tests/fixtures/osx-10.14.6/ps-ef.json","tests/fixtures/osx-10.14.6/ps-ef.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ps-axu.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ps-axu.out","lines_changed":43},{"name":"tests/fixtures/osx-10.14.6/ps-ef.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ps-ef.out","lines_changed":43}]},"message":"fixture updates"},{"commit":"4c1bc5923658bf463805ea33ec8d170a817909ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":4,"deletions":3,"files":["docs/parsers/mount.md","docs/parsers/ps.md","docs/parsers/stat.md"],"file_stats":[{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":3},{"name":"docs/parsers/stat.md","lines_changed":2}]},"message":"doc updates"},{"commit":"f2962083f80503f82c3eddf470674c776e616b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":93,"deletions":17,"files":["changelog.txt","jc/parsers/mount.py","tests/fixtures/osx-10.14.6/mount.json","tests/fixtures/osx-10.14.6/mount.out","tests/fixtures/osx-10.14.6/mount2.json","tests/fixtures/osx-10.14.6/mount2.out","tests/test_mount.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/parsers/mount.py","lines_changed":68},{"name":"tests/fixtures/osx-10.14.6/mount.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/mount.out","lines_changed":6},{"name":"tests/fixtures/osx-10.14.6/mount2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/mount2.out","lines_changed":7},{"name":"tests/test_mount.py","lines_changed":24}]},"message":"add osx support for mount parser"},{"commit":"a0b22a5bcfa0777895243088b2c0f3bb5b758775","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"help text formatting"},{"commit":"dcf393354cd57683aaeecbed7b884d19b0fe94d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":2}]},"message":"doc fix"},{"commit":"5f771656e3fdd703d449b2817faa4faeff1cd879","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":10}]},"message":"use universal parser"},{"commit":"f376aab79328a211a127f4f818e7007232f1fae3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":3}]},"message":"doc update"},{"commit":"3c96464217a740571e16c74ad41c1d92f7585547","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":886,"deletions":13,"files":["jc/parsers/ps.py","tests/fixtures/osx-10.14.6/ps-axu.json","tests/fixtures/osx-10.14.6/ps-axu.out","tests/fixtures/osx-10.14.6/ps-ef.json","tests/fixtures/osx-10.14.6/ps-ef.out","tests/test_ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":31},{"name":"tests/fixtures/osx-10.14.6/ps-axu.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ps-axu.out","lines_changed":421},{"name":"tests/fixtures/osx-10.14.6/ps-ef.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ps-ef.out","lines_changed":421},{"name":"tests/test_ps.py","lines_changed":24}]},"message":"osx fixes and tests"},{"commit":"c9892833a16bb63f78537717be65670eb65a87b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/mount.py"],"file_stats":[{"name":"jc/parsers/mount.py","lines_changed":2}]},"message":"formatting change"},{"commit":"127c98affc7b122f0ced13852850214b9e07677e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update"},{"commit":"8687a772f53ecaf1a20464429060b94bbf660fe7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":8}]},"message":"use universal parser"},{"commit":"b1162b14d42643fd53dbbe3f89ba042f030d9254","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":6,"files":["jc/parsers/lsmod.py"],"file_stats":[{"name":"jc/parsers/lsmod.py","lines_changed":9}]},"message":"use universal parser"},{"commit":"8a8ee3570733c0c06b8cf53eb005e53ac2f9170f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":60,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":68}]},"message":"use universal parser"},{"commit":"5e109a3665cf0c286ac9dcbe2a452348a14b90ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/fixtures/create_fixtures.sh"],"file_stats":[{"name":"tests/fixtures/create_fixtures.sh","lines_changed":2}]},"message":"add du"},{"commit":"11db478430515ef3e1020482792f23d1c40ca32b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"update changelog"},{"commit":"a85377014d9f93fcb9840715129b0e09d48d8584","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":11,"files":["jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/free.py","lines_changed":16}]},"message":"use universal parser"},{"commit":"3aea86234d33160f5b3139cbfc2f4f032f655f3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":70,"deletions":61,"files":["tests/fixtures/osx-10.11.6/ls-al.json","tests/fixtures/osx-10.11.6/ls-al.out","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.11.6/ls-alh.out","tests/fixtures/osx-10.11.6/ls.json","tests/fixtures/osx-10.11.6/ls.out"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/ls-al.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ls-al.out","lines_changed":61},{"name":"tests/fixtures/osx-10.11.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ls-alh.out","lines_changed":61},{"name":"tests/fixtures/osx-10.11.6/ls.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ls.out","lines_changed":3}]},"message":"fix osx-10.11.6 tests"},{"commit":"916ec6ed6b858a8a496e4026b9bab5505abca2ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":193,"deletions":61,"files":["tests/fixtures/osx-10.11.6/ls-al.json","tests/fixtures/osx-10.11.6/ls-al.out","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.11.6/ls-alh.out","tests/fixtures/osx-10.11.6/ls.json","tests/fixtures/osx-10.11.6/ls.out","tests/fixtures/osx-10.14.6/ls-al.json","tests/fixtures/osx-10.14.6/ls-al.out","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.out","tests/fixtures/osx-10.14.6/ls.json","tests/fixtures/osx-10.14.6/ls.out","tests/test_ls.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/ls-al.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ls-al.out","lines_changed":29},{"name":"tests/fixtures/osx-10.11.6/ls-alh.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ls-alh.out","lines_changed":29},{"name":"tests/fixtures/osx-10.11.6/ls.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ls.out","lines_changed":18},{"name":"tests/fixtures/osx-10.14.6/ls-al.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-al.out","lines_changed":64},{"name":"tests/fixtures/osx-10.14.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-alh.out","lines_changed":64},{"name":"tests/fixtures/osx-10.14.6/ls.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls.out","lines_changed":5},{"name":"tests/test_ls.py","lines_changed":36}]},"message":"fix osx ls tests"},{"commit":"9dca6ba5393d8840ad7fc9509273715a71955bd1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":55,"insertions":120,"deletions":6,"files":["docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":8},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":3},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":3},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":8},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":3},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":3},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2}]},"message":"doc formatting change"},{"commit":"0ebb89f561e1ced2e7f61ae19290e176c8a98bf2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["docs/parsers/arp.md"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2}]},"message":"doc update"},{"commit":"e237867e242211ba37206911ebf1b35c97b417fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":2}]},"message":"doc formatting"},{"commit":"78fa44fd9ac9790313de6f461eb46d9b8d6159d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":24,"insertions":75,"deletions":3,"files":["docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/netstat.md","lines_changed":3},{"name":"docs/parsers/ps.md","lines_changed":3},{"name":"docs/parsers/route.md","lines_changed":3},{"name":"docs/parsers/ss.md","lines_changed":3},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":3},{"name":"docs/parsers/systemctl_lj.md","lines_changed":3},{"name":"docs/parsers/systemctl_ls.md","lines_changed":3},{"name":"docs/parsers/systemctl_luf.md","lines_changed":3},{"name":"docs/parsers/uname.md","lines_changed":3},{"name":"docs/parsers/uptime.md","lines_changed":3},{"name":"docs/parsers/w.md","lines_changed":3},{"name":"jc/parsers/netstat.py","lines_changed":3},{"name":"jc/parsers/ps.py","lines_changed":3},{"name":"jc/parsers/route.py","lines_changed":5},{"name":"jc/parsers/ss.py","lines_changed":3},{"name":"jc/parsers/stat.py","lines_changed":5},{"name":"jc/parsers/systemctl.py","lines_changed":3},{"name":"jc/parsers/systemctl_lj.py","lines_changed":3},{"name":"jc/parsers/systemctl_ls.py","lines_changed":3},{"name":"jc/parsers/systemctl_luf.py","lines_changed":3},{"name":"jc/parsers/uname.py","lines_changed":3},{"name":"jc/parsers/uptime.py","lines_changed":3},{"name":"jc/parsers/w.py","lines_changed":3}]},"message":"add compatibility to docs"},{"commit":"d615fa3b933ccd284bd8ee92baf5dfa6264507c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":30,"insertions":91,"deletions":1,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":3},{"name":"docs/parsers/df.md","lines_changed":3},{"name":"docs/parsers/dig.md","lines_changed":3},{"name":"docs/parsers/env.md","lines_changed":3},{"name":"docs/parsers/free.md","lines_changed":3},{"name":"docs/parsers/fstab.md","lines_changed":3},{"name":"docs/parsers/history.md","lines_changed":3},{"name":"docs/parsers/hosts.md","lines_changed":3},{"name":"docs/parsers/ifconfig.md","lines_changed":3},{"name":"docs/parsers/iptables.md","lines_changed":3},{"name":"docs/parsers/jobs.md","lines_changed":3},{"name":"docs/parsers/ls.md","lines_changed":3},{"name":"docs/parsers/lsblk.md","lines_changed":3},{"name":"docs/parsers/lsmod.md","lines_changed":3},{"name":"docs/parsers/lsof.md","lines_changed":3},{"name":"docs/parsers/mount.md","lines_changed":3},{"name":"jc/parsers/env.py","lines_changed":3},{"name":"jc/parsers/foo.py","lines_changed":3},{"name":"jc/parsers/free.py","lines_changed":3},{"name":"jc/parsers/fstab.py","lines_changed":3},{"name":"jc/parsers/history.py","lines_changed":3},{"name":"jc/parsers/hosts.py","lines_changed":3},{"name":"jc/parsers/ifconfig.py","lines_changed":3},{"name":"jc/parsers/iptables.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":3},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"jc/parsers/lsblk.py","lines_changed":3},{"name":"jc/parsers/lsmod.py","lines_changed":3},{"name":"jc/parsers/lsof.py","lines_changed":3},{"name":"jc/parsers/mount.py","lines_changed":3}]},"message":"add compatibility to docs"},{"commit":"ce134dc332dd9175e0d1823a4959bed427a3ddce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":115,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-al.json","tests/fixtures/osx-10.14.6/ls-al.out","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.out","tests/fixtures/osx-10.14.6/ls.json","tests/fixtures/osx-10.14.6/ls.out","tests/test_ls.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ls-al.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-al.out","lines_changed":29},{"name":"tests/fixtures/osx-10.14.6/ls-alh.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-alh.out","lines_changed":29},{"name":"tests/fixtures/osx-10.14.6/ls.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls.out","lines_changed":18},{"name":"tests/test_ls.py","lines_changed":36}]},"message":"Add OSX tests for ls"},{"commit":"a56e4dc752a01635fbd9fc31e21d390bbd629084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":28,"deletions":3,"files":["changelog.txt","jc/parsers/arp.py","jc/parsers/universal.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/arp.py","lines_changed":6},{"name":"jc/parsers/universal.py","lines_changed":24}]},"message":"use universal simple table parser"},{"commit":"d221b4aa29e80dda2b591059f4d64c416bff0a17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update"},{"commit":"d2cba6ad2f1f1cd35aa174239584a0291abb8e37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/df.py","lines_changed":3},{"name":"jc/parsers/dig.py","lines_changed":3}]},"message":"add compatibility info"},{"commit":"84b3c30b525ddf1f74eb7fd833050a0ec69621dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":254,"deletions":2,"files":["tests/fixtures/osx-10.11.6/df-h.json","tests/fixtures/osx-10.11.6/df-h.out","tests/fixtures/osx-10.11.6/df.json","tests/fixtures/osx-10.11.6/df.out","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-aaaa.out","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig-x.out","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.11.6/dig.out","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/osx-10.14.6/df-h.out","tests/fixtures/osx-10.14.6/df.json","tests/fixtures/osx-10.14.6/df.out","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-aaaa.out","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig-x.out","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/osx-10.14.6/dig.out","tests/test_df.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/df-h.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/df-h.out","lines_changed":7},{"name":"tests/fixtures/osx-10.11.6/df.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/df.out","lines_changed":7},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.out","lines_changed":20},{"name":"tests/fixtures/osx-10.11.6/dig-x.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/dig-x.out","lines_changed":20},{"name":"tests/fixtures/osx-10.11.6/dig.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/dig.out","lines_changed":41},{"name":"tests/fixtures/osx-10.14.6/df-h.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/df-h.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/df.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/df.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.out","lines_changed":20},{"name":"tests/fixtures/osx-10.14.6/dig-x.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig-x.out","lines_changed":20},{"name":"tests/fixtures/osx-10.14.6/dig.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig.out","lines_changed":41},{"name":"tests/test_df.py","lines_changed":52}]},"message":"add osx tests"},{"commit":"68eeec19a812b735627763bb7d7e2a58b72f7504","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":30,"deletions":25,"files":["README.md","docs/parsers/df.md","jc/parsers/df.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docs/parsers/df.md","lines_changed":31},{"name":"jc/parsers/df.py","lines_changed":20}]},"message":"doc update"},{"commit":"c6d1528a2ed302ea82828b733a98db415be83708","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":19,"deletions":8,"files":["jc/parsers/df.py","jc/parsers/universal.py","tests/fixtures/centos-7.7/df.json","tests/fixtures/ubuntu-18.04/df.json"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":21},{"name":"jc/parsers/universal.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/df.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/df.json","lines_changed":2}]},"message":"use _ instead of -"},{"commit":"50a6b256b8a0936299f562c208ede6187feeb9a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":83,"deletions":0,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":83}]},"message":"new universal parsers to limit code duplication"},{"commit":"bbba1fe477014d0b7f370ce46ed821121be81a8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":38,"deletions":19,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":57}]},"message":"update df to use universal sparse table parser for osx compatibility"},{"commit":"46b827da6b438be73fab168c3f05298483b141e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":75,"deletions":4,"files":["changelog.txt","jc/parsers/arp.py","tests/fixtures/osx-10.11.6/arp-a.json","tests/fixtures/osx-10.11.6/arp-a.out","tests/fixtures/osx-10.14.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a.out","tests/test_arp.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/arp.py","lines_changed":27},{"name":"tests/fixtures/osx-10.11.6/arp-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/arp-a.out","lines_changed":13},{"name":"tests/fixtures/osx-10.14.6/arp-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/arp-a.out","lines_changed":12},{"name":"tests/test_arp.py","lines_changed":24}]},"message":"add osx compatibility"},{"commit":"5e8c28a30a283b6ef525e9e78d3ef2a0e1526927","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2}]},"message":"comment fix"},{"commit":"e5d39031645ac897e0c0297f514ee62efe02f5f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":38,"deletions":17,"files":["docs/parsers/ifconfig.md"],"file_stats":[{"name":"docs/parsers/ifconfig.md","lines_changed":55}]},"message":"update ifconfig doc"},{"commit":"23975c9c9e1dd9d3e9fd7c05d231a86d646be048","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":132,"deletions":45,"files":["README.md","changelog.txt","jc/parsers/ifconfig.py","tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig2.json","tests/fixtures/osx-10.14.6/ifconfig.json","tests/fixtures/osx-10.14.6/ifconfig2.json","tests/fixtures/ubuntu-18.04/ifconfig.json","tests/test_ifconfig.py"],"file_stats":[{"name":"README.md","lines_changed":35},{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":80},{"name":"tests/fixtures/centos-7.7/ifconfig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ifconfig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ifconfig2.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ifconfig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ifconfig2.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ifconfig.json","lines_changed":2},{"name":"tests/test_ifconfig.py","lines_changed":48}]},"message":"fixup osx subnet mask and convert state to an array"},{"commit":"1e0dab8355e6fcb0ecde85270d4daac6ad93875b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":272,"deletions":2,"files":["tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.out","tests/fixtures/osx-10.11.6/ifconfig2.json","tests/fixtures/osx-10.11.6/ifconfig2.out","tests/fixtures/osx-10.14.6/ifconfig.json","tests/fixtures/osx-10.14.6/ifconfig.out","tests/fixtures/osx-10.14.6/ifconfig2.json","tests/fixtures/osx-10.14.6/ifconfig2.out","tests/fixtures/ubuntu-18.04/ifconfig.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ifconfig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ifconfig.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ifconfig.out","lines_changed":40},{"name":"tests/fixtures/osx-10.11.6/ifconfig2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ifconfig2.out","lines_changed":40},{"name":"tests/fixtures/osx-10.14.6/ifconfig.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ifconfig.out","lines_changed":91},{"name":"tests/fixtures/osx-10.14.6/ifconfig2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ifconfig2.out","lines_changed":95},{"name":"tests/fixtures/ubuntu-18.04/ifconfig.json","lines_changed":2}]},"message":"ifconfig fixture updates"},{"commit":"5f4c10ffd5a9cbe4e5e3d2b9adc34f36492eaf46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"changelog.txt","lines_changed":4}]},"message":"doc update"},{"commit":"6f3d2b4b566b963fbf38572c587e8bd4e18881dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"require ifconfig-parser v0.0.5 for mac and bytes support"},{"commit":"fea8ace8446b64abe9e61a028951bc4e6df9f9c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":6,"files":["README.md","jc/parsers/ifconfig.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":22}]},"message":"add OSX compatibility"},{"commit":"6633d9262c936217d8e90e64505c66b006cdab56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["_config.yml"],"file_stats":[{"name":"_config.yml","lines_changed":1}]},"message":"Set theme jekyll-theme-cayman"},{"commit":"7d54137140e6d0515bc23c131a097af5c70c3379","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"link update"},{"commit":"2fcda6f2480ae6bd5428a0147c19f9af527391b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add motivation to readme"},{"commit":"9c1b8bacf9a59a86feb2a91eb44919e800491d1e","merge":"d192745 4867655","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #16 from kellyjonbrazil/dev\n\nDev v1.5.1"},{"commit":"4867655eb297b1da7a55e0d3a24c7ed7c8af55c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":172,"deletions":0,"files":[".../centos-7.7/iptables-filter-line-numbers.json",".../centos-7.7/iptables-filter-line-numbers.out","tests/fixtures/create_fixtures.sh",".../ubuntu-18.04/iptables-filter-line-numbers.json",".../ubuntu-18.04/iptables-filter-line-numbers.out","tests/test_iptables.py"],"file_stats":[{"name":".../centos-7.7/iptables-filter-line-numbers.json","lines_changed":1},{"name":".../centos-7.7/iptables-filter-line-numbers.out","lines_changed":128},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":1},{"name":".../ubuntu-18.04/iptables-filter-line-numbers.json","lines_changed":1},{"name":".../ubuntu-18.04/iptables-filter-line-numbers.out","lines_changed":17},{"name":"tests/test_iptables.py","lines_changed":24}]},"message":"add line-numbers tests"},{"commit":"47410d1a95406b0960aac705e7cfe925fea3172c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"5fa49f5e672fc6f8dc18fb4b1761c98b81362649","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update"},{"commit":"36c53827fab6ac38c0010250ec387db40fdeecfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":19,"insertions":1316,"deletions":308,"files":["tests/fixtures/centos-7.7/systemctl-ls.json","tests/fixtures/centos-7.7/systemctl-ls.out","tests/fixtures/centos-7.7/systemctl-luf.json","tests/fixtures/centos-7.7/systemctl-luf.out","tests/fixtures/centos-7.7/systemctl.json","tests/fixtures/centos-7.7/systemctl.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/systemctl-lj.json","tests/fixtures/ubuntu-18.04/systemctl-lj.out","tests/fixtures/ubuntu-18.04/systemctl-ls.json","tests/fixtures/ubuntu-18.04/systemctl-ls.out","tests/fixtures/ubuntu-18.04/systemctl-luf.json","tests/fixtures/ubuntu-18.04/systemctl-luf.out","tests/fixtures/ubuntu-18.04/systemctl.json","tests/fixtures/ubuntu-18.04/systemctl.out","tests/test_systemctl.py","tests/test_systemctl_lj.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/systemctl-ls.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/systemctl-ls.out","lines_changed":17},{"name":"tests/fixtures/centos-7.7/systemctl-luf.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/systemctl-luf.out","lines_changed":247},{"name":"tests/fixtures/centos-7.7/systemctl.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/systemctl.out","lines_changed":334},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":8},{"name":"tests/fixtures/ubuntu-18.04/systemctl-lj.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/systemctl-lj.out","lines_changed":6},{"name":"tests/fixtures/ubuntu-18.04/systemctl-ls.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/systemctl-ls.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-18.04/systemctl-luf.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/systemctl-luf.out","lines_changed":324},{"name":"tests/fixtures/ubuntu-18.04/systemctl.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/systemctl.out","lines_changed":528},{"name":"tests/test_systemctl.py","lines_changed":4},{"name":"tests/test_systemctl_lj.py","lines_changed":40},{"name":"tests/test_systemctl_ls.py","lines_changed":40},{"name":"tests/test_systemctl_luf.py","lines_changed":40}]},"message":"add systemctl tests"},{"commit":"51631aef5b1b6fdeff4ab543510a9f9e15a0c2c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":358,"deletions":0,"files":["tests/fixtures/centos-7.7/systemctl.json","tests/fixtures/centos-7.7/systemctl.out","tests/fixtures/ubuntu-18.04/systemctl.json","tests/fixtures/ubuntu-18.04/systemctl.out","tests/test_systemctl.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/systemctl.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/systemctl.out","lines_changed":118},{"name":"tests/fixtures/ubuntu-18.04/systemctl.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/systemctl.out","lines_changed":198},{"name":"tests/test_systemctl.py","lines_changed":40}]},"message":"add systemctl tests"},{"commit":"a0298ac8a39093620b6859c909a78d11ab4a8e56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":55,"deletions":0,"files":["tests/fixtures/centos-7.7/fstab.json","tests/fixtures/centos-7.7/fstab.out","tests/fixtures/ubuntu-18.04/fstab.json","tests/fixtures/ubuntu-18.04/fstab.out","tests/test_fstab.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/fstab.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/fstab.out","lines_changed":11},{"name":"tests/fixtures/ubuntu-18.04/fstab.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/fstab.out","lines_changed":2},{"name":"tests/test_fstab.py","lines_changed":40}]},"message":"add fstab tests"},{"commit":"98c0188821ebaa71c5661f2e095cf464bec695f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/systemctl_ls.md","jc/parsers/systemctl_ls.py"],"file_stats":[{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2}]},"message":"formatting fix"},{"commit":"ab1dabe3e42997825707006b63cc0c03d28470d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py"],"file_stats":[{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2}]},"message":"doc update"},{"commit":"94bdb11fdf0e16d89769046d317643334ef1acdd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"remove systemctl from TODO"},{"commit":"b6727d68bab66164a3834b240ae868062aad9371","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":68,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":68}]},"message":"add systemctl parsers"},{"commit":"89bad7fc2b4023b10b6eeb7ff1f8f18b71731cb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":1,"deletions":191,"files":["changelog.txt","docgen.sh","docs/parsers/systemctl_lm.md","jc/cli.py","jc/parsers/systemctl_lm.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/systemctl_lm.md","lines_changed":76},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/systemctl_lm.py","lines_changed":110}]},"message":"remove systemctl list-machines parser"},{"commit":"c0b8b810a2616e77973c1223f9c39329112337ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":306,"deletions":0,"files":["docgen.sh","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_lm.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md"],"file_stats":[{"name":"docgen.sh","lines_changed":4},{"name":"docs/parsers/systemctl_lj.md","lines_changed":94},{"name":"docs/parsers/systemctl_lm.md","lines_changed":76},{"name":"docs/parsers/systemctl_ls.md","lines_changed":68},{"name":"docs/parsers/systemctl_luf.md","lines_changed":64}]},"message":"add systemctl list parsers"},{"commit":"31eb65acd18b6d9163de900dbe48807a41a23785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_lm.py"],"file_stats":[{"name":"jc/parsers/systemctl_lm.py","lines_changed":4}]},"message":"doc fix"},{"commit":"513bbeb4649c011476930e1d1bf739ff06c2d66f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/systemctl_lj.py"],"file_stats":[{"name":"jc/parsers/systemctl_lj.py","lines_changed":2}]},"message":"add break on footer condition"},{"commit":"3a52fb725a0e56b52a0ea430266400b268360737","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":55,"deletions":29,"files":["jc/cli.py","jc/parsers/systemctl_lj.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4},{"name":"jc/parsers/systemctl_lj.py","lines_changed":80}]},"message":"add systemctl list-jobs parser"},{"commit":"5affd444999de88b9bff7b49d790913540f97cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":342,"deletions":24,"files":["jc/cli.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_lm.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":11},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":110},{"name":"jc/parsers/systemctl_lm.py","lines_changed":110},{"name":"jc/parsers/systemctl_ls.py","lines_changed":101},{"name":"jc/parsers/systemctl_luf.py","lines_changed":32}]},"message":"add systemctl_lj, lm, ls, and luf"},{"commit":"5dbc6e806c5d05bfa1f7e2156ed2573341eb23c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":142,"deletions":29,"files":["jc/cli.py","jc/parsers/systemctl_luf.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":61},{"name":"jc/parsers/systemctl_luf.py","lines_changed":110}]},"message":"add systemctl_luf parser"},{"commit":"59ae31f3f342c9337037aac4630310c9b9eb8287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":219,"deletions":0,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/systemctl.md","jc/cli.py","jc/parsers/systemctl.py"],"file_stats":[{"name":"README.md","lines_changed":29},{"name":"changelog.txt","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/systemctl.md","lines_changed":76},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/systemctl.py","lines_changed":109}]},"message":"add systemctl parser"},{"commit":"230e921c2e8d931ea8a6abdf81215dbfc968b41c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"remove fstab from TODO"},{"commit":"a7c3d88b08ab90b719035cb15d78afe708235742","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":136,"deletions":0,"files":["docgen.sh","docs/parsers/fstab.md","jc/parsers/fstab.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/fstab.md","lines_changed":107},{"name":"jc/parsers/fstab.py","lines_changed":28}]},"message":"update example and docs"},{"commit":"9b453bcb84dd9f2f566955eda1ab35c863b3e8a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":13,"files":["jc/parsers/fstab.py"],"file_stats":[{"name":"jc/parsers/fstab.py","lines_changed":14}]},"message":"remove commented code block"},{"commit":"ce43c782f601fc12267fa22279e8e0142ecc3a7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"fstab update"},{"commit":"cb16faaf4d1700379d53053fe06824fd03404f87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"helptext update"},{"commit":"3f1d3ff6d85422536e0adfb6433fd3ec0399ebe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":73,"deletions":6,"files":["README.md","jc/parsers/fstab.py"],"file_stats":[{"name":"README.md","lines_changed":31},{"name":"jc/parsers/fstab.py","lines_changed":48}]},"message":"add examples"},{"commit":"6f67eecd5ed46f8a692ff5dd607a2395a5c838ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":108,"deletions":0,"files":["jc/cli.py","jc/parsers/fstab.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/fstab.py","lines_changed":105}]},"message":"add fstab parser"},{"commit":"e75c819190634f0a9048942b39eda691831829ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"changelog update"},{"commit":"601e68d104dd43940acadaa574dfd9b5117b0476","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/hosts.md","jc/parsers/hosts.py"],"file_stats":[{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2}]},"message":"doc update"},{"commit":"8285ecfd1e7810102cdbc399398a16f999c841ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["tests/fixtures/centos-7.7/hosts.out","tests/fixtures/ubuntu-18.04/hosts.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/hosts.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/hosts.out","lines_changed":3}]},"message":"enhance test file with comments"},{"commit":"8726de902e527b95a12afd79a53d533cc176703d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"add hosts parser"},{"commit":"4133585274b0e7faa0255a911468248eb390d673","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":53,"deletions":0,"files":["tests/fixtures/centos-7.7/hosts.json","tests/fixtures/centos-7.7/hosts.out","tests/fixtures/ubuntu-18.04/hosts.json","tests/fixtures/ubuntu-18.04/hosts.out","tests/test_hosts.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/hosts.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/hosts.out","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/hosts.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/hosts.out","lines_changed":9},{"name":"tests/test_hosts.py","lines_changed":40}]},"message":"add hosts tests"},{"commit":"ad913b141721655a72a7b2a6ad60037e5acd5f9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":148,"deletions":2,"files":["README.md","docgen.sh","docs/parsers/hosts.md","jc/parsers/hosts.py"],"file_stats":[{"name":"README.md","lines_changed":51},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/hosts.md","lines_changed":96},{"name":"jc/parsers/hosts.py","lines_changed":2}]},"message":"add hosts docs"},{"commit":"7113e5a844fc0304f62f4afe65b5cbc816f75372","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":0,"files":["jc/parsers/hosts.py"],"file_stats":[{"name":"jc/parsers/hosts.py","lines_changed":10}]},"message":"filter out comments at the end of the line"},{"commit":"a3a8369dc0e7227072f595cef1e57d471eff4d2f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":51,"deletions":9,"files":["jc/parsers/hosts.py"],"file_stats":[{"name":"jc/parsers/hosts.py","lines_changed":60}]},"message":"add docs"},{"commit":"64016b8ef049d5d4f02b4371f5cc9632c19bcaa2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["jc/cli.py","jc/parsers/hosts.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/hosts.py","lines_changed":89}]},"message":"add hosts parser"},{"commit":"1cb49d60c84054b0446f299f6b4bab7d102101c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"remove sar and sadf"},{"commit":"c858adfd12144569d0b990a217c5bcd75bd23828","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"remove stat from todo"},{"commit":"08d68327c777dd740d93a1b5fff8cf62f58904c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":8080,"deletions":0,"files":["tests/fixtures/centos-7.7/stat.json","tests/fixtures/centos-7.7/stat.out","tests/fixtures/ubuntu-18.04/stat.json","tests/fixtures/ubuntu-18.04/stat.out","tests/test_stat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/stat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/stat.out","lines_changed":6678},{"name":"tests/fixtures/ubuntu-18.04/stat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/stat.out","lines_changed":1360},{"name":"tests/test_stat.py","lines_changed":40}]},"message":"add stat tests"},{"commit":"0d7c6c5664911af7a41149d51dd6ae05b39d7648","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/parsers/stat.md","jc/parsers/stat.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":8}]},"message":"doc fix and add continue lines"},{"commit":"8bfa41dbf485cb06c928bc00a68727d2ceac21fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":22,"deletions":14,"files":["README.md","docs/parsers/stat.md","jc/parsers/stat.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docs/parsers/stat.md","lines_changed":12},{"name":"jc/parsers/stat.py","lines_changed":20}]},"message":"change values to null if -"},{"commit":"7e2fa48ed4f3fd452082ce06e7306efd38b2d508","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"update changelog"},{"commit":"340635cad5224f2c715bf961956f4b9b6119d80b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":408,"deletions":111,"files":["docgen.sh","docs/parsers/ss.md","docs/parsers/stat.md"],"file_stats":[{"name":"docgen.sh","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":363},{"name":"docs/parsers/stat.md","lines_changed":154}]},"message":"fix stats doc"},{"commit":"8f77d1de098f035767d73a6965a695b95b75e161","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":111,"deletions":253,"files":["docgen.sh","docs/parsers/ss.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ss.md","lines_changed":363}]},"message":"add stat docs"},{"commit":"7dcf1b25ffb801375f0bf4263f34713ded904de9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":0,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":13}]},"message":"add link_to field"},{"commit":"9b735381063a1167a6a74864a43b81aefd98009f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":2}]},"message":"set compatibility to linux only"},{"commit":"3bf8c8c6dbdf7e03e26b4581e35c3274084c07ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":27,"deletions":27,"files":["jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/mount.py","lines_changed":6},{"name":"jc/parsers/netstat.py","lines_changed":8},{"name":"jc/parsers/ps.py","lines_changed":8},{"name":"jc/parsers/route.py","lines_changed":8},{"name":"jc/parsers/uname.py","lines_changed":8},{"name":"jc/parsers/uptime.py","lines_changed":8},{"name":"jc/parsers/w.py","lines_changed":8}]},"message":"pep8 fixes"},{"commit":"04a1ff2ca7873d55cdbc831e521f3d4892074d98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":28,"deletions":28,"files":["jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":8},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":6},{"name":"jc/parsers/jobs.py","lines_changed":6},{"name":"jc/parsers/ls.py","lines_changed":8},{"name":"jc/parsers/lsblk.py","lines_changed":10},{"name":"jc/parsers/lsmod.py","lines_changed":8},{"name":"jc/parsers/lsof.py","lines_changed":8}]},"message":"pep8 fixes"},{"commit":"64647d230ac936cb43864481ae0f45d13707d7b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":21,"deletions":21,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":8},{"name":"jc/parsers/dig.py","lines_changed":8},{"name":"jc/parsers/env.py","lines_changed":8},{"name":"jc/parsers/foo.py","lines_changed":8},{"name":"jc/parsers/free.py","lines_changed":6}]},"message":"pep8 cleanup"},{"commit":"c2a67e1b70f33044aecabd8b46018117cb38cb9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":213,"deletions":16,"files":["README.md","jc/parsers/stat.py"],"file_stats":[{"name":"README.md","lines_changed":48},{"name":"jc/parsers/stat.py","lines_changed":181}]},"message":"add stat parser"},{"commit":"edb9a7c76e1fedaf37b6a226ad4e1cfc08a9a5ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":94,"deletions":0,"files":["jc/cli.py","jc/parsers/stat.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/stat.py","lines_changed":91}]},"message":"add stat parser"},{"commit":"a407f5b67833cc5f8dda9fe8265cd34e62f28d14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"minor update"},{"commit":"e5b4987acb70e854d9996350235c5535b4a46b69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"doc update"},{"commit":"ba8cc18eebe779742cff0ba4c8bebe376e787c8c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":405,"deletions":0,"files":["tests/fixtures/centos-7.7/ss-sudo-a.json","tests/fixtures/centos-7.7/ss-sudo-a.out","tests/fixtures/ubuntu-18.04/ss-sudo-a.json","tests/fixtures/ubuntu-18.04/ss-sudo-a.out","tests/test_ss.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ss-sudo-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ss-sudo-a.out","lines_changed":204},{"name":"tests/fixtures/ubuntu-18.04/ss-sudo-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ss-sudo-a.out","lines_changed":159},{"name":"tests/test_ss.py","lines_changed":40}]},"message":"add ss tests"},{"commit":"d2c7316e00b9aaf19231c05351821041458baf98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"update command options info"},{"commit":"609aa14d243206e81ed31f8438c3f42e8263e140","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/ss.md","jc/parsers/ss.py"],"file_stats":[{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2}]},"message":"spelling fix"},{"commit":"ef1ad4c700fcb740b5fbe1e12205b9a30ae427ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["docs/parsers/ss.md","jc/parsers/ss.py"],"file_stats":[{"name":"docs/parsers/ss.md","lines_changed":3},{"name":"jc/parsers/ss.py","lines_changed":3}]},"message":"doc update"},{"commit":"a0e2732152dc3005914b9a3e4f03e937a113c67f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":64,"deletions":12,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":76}]},"message":"add ss example"},{"commit":"9b5d3e3be1ac07813e716f8426fe89cced478221","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":135,"deletions":25,"files":["docs/parsers/ss.md"],"file_stats":[{"name":"docs/parsers/ss.md","lines_changed":160}]},"message":"update doc"},{"commit":"2663ef31fbc1b69b89b8032640a25065cc953866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":159,"deletions":30,"files":["jc/parsers/ss.py"],"file_stats":[{"name":"jc/parsers/ss.py","lines_changed":189}]},"message":"fix field names per ss documentation"},{"commit":"a4cdd3378e6a031f16dd371ed5cd60ff018feb32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":6}]},"message":"add compatibility info"},{"commit":"2f805da24d0e833e3d2a1f3a5ec34031fa911c05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":45,"insertions":51,"deletions":51,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/utils.md","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/utils.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":8},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":8}]},"message":"add colon to parameter in docs"},{"commit":"79152a946d93e4facf9711bfa0f421e1978e0f1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":3}]},"message":"initialize network_list and socket_list variables"},{"commit":"de37bb37d01b397df2b5992b4acd64817380401d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":187,"deletions":1,"files":["docgen.sh","docs/parsers/ss.md","jc/parsers/ss.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ss.md","lines_changed":184},{"name":"jc/parsers/ss.py","lines_changed":3}]},"message":"add ss docs"},{"commit":"f783e44e5c0cd05733da5d24573f06d05760f993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"changelog.txt","lines_changed":1}]},"message":"doc fix"},{"commit":"af82f2c991ac0668485e75ae78a26b9553ec8b13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update raw format note"},{"commit":"46774daf9d3e0612df8f79d4b6b724e612ceb725","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":194,"deletions":4,"files":["README.md","jc/parsers/ss.py"],"file_stats":[{"name":"README.md","lines_changed":68},{"name":"jc/parsers/ss.py","lines_changed":130}]},"message":"doc update"},{"commit":"648306b7856fe2e296ce463ff4c9c2a8632c92d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":44,"deletions":22,"files":["jc/parsers/ss.py"],"file_stats":[{"name":"jc/parsers/ss.py","lines_changed":66}]},"message":"process ss data"},{"commit":"b7a4f205b80c0a6a41aaabf59703525ac526c295","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":17,"deletions":14,"files":["jc/parsers/ss.py"],"file_stats":[{"name":"jc/parsers/ss.py","lines_changed":31}]},"message":"parser fixes"},{"commit":"fdb168b43a69358a97bf43b71a0adbc7b1ef56f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":120,"deletions":0,"files":["jc/cli.py","jc/parsers/ss.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/ss.py","lines_changed":117}]},"message":"add ss parser"},{"commit":"b6f65c93c462856f26201df0cbfe804b29a65169","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":43,"deletions":69,"files":["README.md","docs/parsers/ps.md","jc/parsers/ps.py"],"file_stats":[{"name":"README.md","lines_changed":26},{"name":"docs/parsers/ps.md","lines_changed":43},{"name":"jc/parsers/ps.py","lines_changed":43}]},"message":"ps doc update"},{"commit":"3f4838f17a81969718d9e5b6bafa21e0b92e1d95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":6,"files":["docgen.sh","docs/cli.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/cli.md","lines_changed":5}]},"message":"remove cli.md"},{"commit":"eef0dee2aa206716d9cf011bec58a06c46bbee15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":0,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":4},{"name":"jc/utils.py","lines_changed":4}]},"message":"doc update"},{"commit":"e17388d3b2d1521d963bf9dd9e7a4ba5ba9bb09d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":44,"deletions":4,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":22},{"name":"jc/utils.py","lines_changed":26}]},"message":"doc update"},{"commit":"7e6a1bc719b7160ba70cd326ff6aa182993a7380","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":41,"deletions":63,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":51},{"name":"jc/__init__.py","lines_changed":53}]},"message":"doc update"},{"commit":"37738a2ea2f15af847e4b8383aba911e2020a3e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update contributions"},{"commit":"c5834a57db8957723a1425b9db46c433e28a3af1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":14}]},"message":"add todo section"},{"commit":"91b9373f380e06f91888811edbfb21747ff08810","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":417,"deletions":673,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1090}]},"message":"new examples"},{"commit":"ce0bb5b816eed0c75542ead474c3dcb8401be2d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting fix"},{"commit":"f330ff0eff00586f46d18497f2441e94b6430e91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":12}]},"message":"wrap example text"},{"commit":"4b02700414660b90518311485761870402368625","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":20,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":29}]},"message":"update simple examples"},{"commit":"ee30180376b7acec46314bbc483866bff41c362a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"fix note"},{"commit":"338e0ff15c7fac84475c1ed107e6a23e7a009b1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add schema note"},{"commit":"3ac75305dfa33429646bb5d415567034cccfeee3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":39,"insertions":351,"deletions":39,"files":["docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/df.md","lines_changed":10},{"name":"docs/parsers/dig.md","lines_changed":10},{"name":"docs/parsers/env.md","lines_changed":10},{"name":"docs/parsers/free.md","lines_changed":10},{"name":"docs/parsers/history.md","lines_changed":10},{"name":"docs/parsers/ifconfig.md","lines_changed":10},{"name":"docs/parsers/iptables.md","lines_changed":10},{"name":"docs/parsers/jobs.md","lines_changed":10},{"name":"docs/parsers/ls.md","lines_changed":10},{"name":"docs/parsers/lsblk.md","lines_changed":10},{"name":"docs/parsers/lsmod.md","lines_changed":10},{"name":"docs/parsers/lsof.md","lines_changed":10},{"name":"docs/parsers/mount.md","lines_changed":10},{"name":"docs/parsers/netstat.md","lines_changed":10},{"name":"docs/parsers/ps.md","lines_changed":10},{"name":"docs/parsers/route.md","lines_changed":10},{"name":"docs/parsers/uname.md","lines_changed":10},{"name":"docs/parsers/uptime.md","lines_changed":10},{"name":"docs/parsers/w.md","lines_changed":10},{"name":"jc/parsers/df.py","lines_changed":10},{"name":"jc/parsers/dig.py","lines_changed":10},{"name":"jc/parsers/env.py","lines_changed":10},{"name":"jc/parsers/foo.py","lines_changed":10},{"name":"jc/parsers/free.py","lines_changed":10},{"name":"jc/parsers/history.py","lines_changed":10},{"name":"jc/parsers/ifconfig.py","lines_changed":10},{"name":"jc/parsers/iptables.py","lines_changed":10},{"name":"jc/parsers/jobs.py","lines_changed":10},{"name":"jc/parsers/ls.py","lines_changed":10},{"name":"jc/parsers/lsblk.py","lines_changed":10},{"name":"jc/parsers/lsmod.py","lines_changed":10},{"name":"jc/parsers/lsof.py","lines_changed":10},{"name":"jc/parsers/mount.py","lines_changed":10},{"name":"jc/parsers/netstat.py","lines_changed":10},{"name":"jc/parsers/ps.py","lines_changed":10},{"name":"jc/parsers/route.py","lines_changed":10},{"name":"jc/parsers/uname.py","lines_changed":10},{"name":"jc/parsers/uptime.py","lines_changed":10},{"name":"jc/parsers/w.py","lines_changed":10}]},"message":"update process() doc"},{"commit":"3bdcf44afb708cf6a716a0847b119f895602c23e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":18,"deletions":2,"files":["docs/parsers/arp.md","jc/parsers/arp.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":10},{"name":"jc/parsers/arp.py","lines_changed":10}]},"message":"doc update"},{"commit":"e3f4ffede56fe48c0a282a021ac5cdfd7a8abee9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":20,"insertions":172,"deletions":77,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":13},{"name":"docs/parsers/dig.md","lines_changed":13},{"name":"docs/parsers/env.md","lines_changed":13},{"name":"docs/parsers/free.md","lines_changed":13},{"name":"docs/parsers/history.md","lines_changed":13},{"name":"docs/parsers/ifconfig.md","lines_changed":13},{"name":"docs/parsers/iptables.md","lines_changed":13},{"name":"docs/parsers/jobs.md","lines_changed":13},{"name":"docs/parsers/ls.md","lines_changed":13},{"name":"docs/parsers/lsblk.md","lines_changed":13},{"name":"docs/parsers/lsmod.md","lines_changed":13},{"name":"docs/parsers/lsof.md","lines_changed":13},{"name":"docs/parsers/mount.md","lines_changed":13},{"name":"docs/parsers/netstat.md","lines_changed":13},{"name":"docs/parsers/ps.md","lines_changed":13},{"name":"docs/parsers/route.md","lines_changed":13},{"name":"docs/parsers/uname.md","lines_changed":13},{"name":"docs/parsers/uptime.md","lines_changed":13},{"name":"docs/parsers/w.md","lines_changed":13}]},"message":"doc update"},{"commit":"f0c8725d4355113f7690f20bb99078e488084ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":181,"deletions":81,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":13},{"name":"jc/parsers/dig.py","lines_changed":13},{"name":"jc/parsers/env.py","lines_changed":13},{"name":"jc/parsers/foo.py","lines_changed":13},{"name":"jc/parsers/free.py","lines_changed":13},{"name":"jc/parsers/history.py","lines_changed":13},{"name":"jc/parsers/ifconfig.py","lines_changed":13},{"name":"jc/parsers/iptables.py","lines_changed":13},{"name":"jc/parsers/jobs.py","lines_changed":13},{"name":"jc/parsers/ls.py","lines_changed":13},{"name":"jc/parsers/lsblk.py","lines_changed":13},{"name":"jc/parsers/lsmod.py","lines_changed":13},{"name":"jc/parsers/lsof.py","lines_changed":13},{"name":"jc/parsers/mount.py","lines_changed":13},{"name":"jc/parsers/netstat.py","lines_changed":13},{"name":"jc/parsers/ps.py","lines_changed":13},{"name":"jc/parsers/route.py","lines_changed":13},{"name":"jc/parsers/uname.py","lines_changed":13},{"name":"jc/parsers/uptime.py","lines_changed":13},{"name":"jc/parsers/w.py","lines_changed":13}]},"message":"doc update"},{"commit":"5473bc4eb697d00bd26a038287e1137e438cacb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":16,"deletions":6,"files":["docs/parsers/arp.md","jc/parsers/arp.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":11},{"name":"jc/parsers/arp.py","lines_changed":11}]},"message":"doc update"},{"commit":"b9bd9422bfa46144416fa65add2e041d4124357b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":380,"deletions":46,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":213},{"name":"jc/parsers/dig.py","lines_changed":213}]},"message":"doc update"},{"commit":"cb5729a070925a7fa29f762bd4b074532f5cba55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":62,"deletions":44,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":106}]},"message":"add options to docs"},{"commit":"f0b1ab42337746afd37365abdf44729d530d5410","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":1},{"name":"jc/utils.py","lines_changed":1}]},"message":"doc update"},{"commit":"b15386e849b9fea347e7b17307eedf779d8022fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":11,"deletions":5,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":7},{"name":"jc/utils.py","lines_changed":9}]},"message":"doc update"},{"commit":"d2a2c8da35ee44e9a7572885609548eb809bcdda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":5,"files":["docs/parsers/iptables.md","docs/parsers/mount.md","docs/parsers/uname.md"],"file_stats":[{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2}]},"message":"doc updates"},{"commit":"7251548cbb09beae6971385a56036e9649bd9b2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":5,"files":["jc/parsers/iptables.py","jc/parsers/mount.py","jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":3},{"name":"jc/parsers/uname.py","lines_changed":3}]},"message":"documentation updates"},{"commit":"146e29f7cbc0f396be67dbd7ae971a4ef4dafb7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":47,"insertions":5386,"deletions":2249,"files":["docgen.sh","docs/cli.md","docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/readme.md","docs/utils.md","jc/__init__.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/utils.py"],"file_stats":[{"name":"docgen.sh","lines_changed":27},{"name":"docs/cli.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":110},{"name":"docs/parsers/df.md","lines_changed":97},{"name":"docs/parsers/dig.md","lines_changed":212},{"name":"docs/parsers/env.md","lines_changed":72},{"name":"docs/parsers/free.md","lines_changed":77},{"name":"docs/parsers/history.md","lines_changed":64},{"name":"docs/parsers/ifconfig.md","lines_changed":170},{"name":"docs/parsers/iptables.md","lines_changed":168},{"name":"docs/parsers/jobs.md","lines_changed":98},{"name":"docs/parsers/ls.md","lines_changed":168},{"name":"docs/parsers/lsblk.md","lines_changed":273},{"name":"docs/parsers/lsmod.md","lines_changed":130},{"name":"docs/parsers/lsof.md","lines_changed":124},{"name":"docs/parsers/mount.md","lines_changed":82},{"name":"docs/parsers/netstat.md","lines_changed":352},{"name":"docs/parsers/ps.md","lines_changed":223},{"name":"docs/parsers/route.md","lines_changed":129},{"name":"docs/parsers/uname.md","lines_changed":55},{"name":"docs/parsers/uptime.md","lines_changed":56},{"name":"docs/parsers/w.md","lines_changed":108},{"name":"docs/readme.md","lines_changed":79},{"name":"docs/utils.md","lines_changed":22},{"name":"jc/__init__.py","lines_changed":135},{"name":"jc/parsers/arp.py","lines_changed":176},{"name":"jc/parsers/df.py","lines_changed":129},{"name":"jc/parsers/dig.py","lines_changed":362},{"name":"jc/parsers/env.py","lines_changed":101},{"name":"jc/parsers/foo.py","lines_changed":37},{"name":"jc/parsers/free.py","lines_changed":111},{"name":"jc/parsers/history.py","lines_changed":85},{"name":"jc/parsers/ifconfig.py","lines_changed":294},{"name":"jc/parsers/iptables.py","lines_changed":271},{"name":"jc/parsers/jobs.py","lines_changed":150},{"name":"jc/parsers/ls.py","lines_changed":280},{"name":"jc/parsers/lsblk.py","lines_changed":499},{"name":"jc/parsers/lsmod.py","lines_changed":211},{"name":"jc/parsers/lsof.py","lines_changed":205},{"name":"jc/parsers/mount.py","lines_changed":115},{"name":"jc/parsers/netstat.py","lines_changed":661},{"name":"jc/parsers/ps.py","lines_changed":389},{"name":"jc/parsers/route.py","lines_changed":213},{"name":"jc/parsers/uname.py","lines_changed":57},{"name":"jc/parsers/uptime.py","lines_changed":69},{"name":"jc/parsers/w.py","lines_changed":173},{"name":"jc/utils.py","lines_changed":11}]},"message":"update docs"},{"commit":"363fd3eab409351121dab8a11c6b565829ccd84a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"move parser_name to except block"},{"commit":"4083dd4260ff3a8bb6649e1661cf3e058fdbad59","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":24,"deletions":5,"files":["changelog.txt","jc/cli.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/cli.py","lines_changed":28}]},"message":"add -d option"},{"commit":"b2b74547baaf33058d74fc08cb665777b19bd05a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":317,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-sudo-aeep.json","tests/fixtures/centos-7.7/netstat-sudo-aeep.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.json","tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.out","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/netstat-sudo-aeep.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-sudo-aeep.out","lines_changed":164},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.out","lines_changed":126},{"name":"tests/test_netstat.py","lines_changed":24}]},"message":"add netstat-sudo-aeep tests"},{"commit":"dddb0baabf8a78261ac80380b97e7c92c7ce4d89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":8}]},"message":"use \\u2063 instead of \\u2026"},{"commit":"84b4f67ef9d4bb0db201a095d74400a56394589d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["tests/fixtures/centos-7.7/ps-axu.json","tests/fixtures/ubuntu-18.04/ps-axu.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ps-axu.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ps-axu.json","lines_changed":2}]},"message":"new json output"},{"commit":"3a089138b8c269ba3c5f7aec87ae3f8ec368c3ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":129,"deletions":9,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":138}]},"message":"add int and float changes"},{"commit":"3ff0305c8e62ce3b5a8f3f9174c5a9da3bc22766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":54,"deletions":2,"files":["tests/fixtures/centos-7.7/lsblk-allcols.json","tests/fixtures/centos-7.7/lsblk-allcols.out","tests/fixtures/centos-7.7/lsblk.json","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/lsblk-allcols.json","tests/fixtures/ubuntu-18.04/lsblk-allcols.out","tests/fixtures/ubuntu-18.04/lsblk.json","tests/test_lsblk.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/lsblk-allcols.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsblk-allcols.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/lsblk.json","lines_changed":2},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsblk-allcols.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsblk-allcols.out","lines_changed":18},{"name":"tests/fixtures/ubuntu-18.04/lsblk.json","lines_changed":2},{"name":"tests/test_lsblk.py","lines_changed":24}]},"message":"add lsblk tests"},{"commit":"761edc3c6cfc215fe45c65ee2bb5462cb460b6a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":6,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":7}]},"message":"remove unused parse_pairs function"},{"commit":"3351c81f647ac97a5038cc0c14adb31e55832a77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":200,"deletions":2,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":202}]},"message":"add documentation"},{"commit":"3dfc6f67d770c59804bdeb371d5c78e3f3668f9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":6}]},"message":"change empty values to Null"},{"commit":"1546ec3bd139ef687282f60786388b5207541c98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":17,"deletions":13,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":30}]},"message":"fixes for right justified columns"},{"commit":"2a953011f72e922c89b9af6dfebd1983da7c338d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":50,"deletions":155,"files":["changelog.txt","jc/parsers/lsblk.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":203}]},"message":"rewrite of lsblk parser to use a custom delimiter"},{"commit":"d2f755de9d2be7b0af5f010042e1f4ca589c5464","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":14,"insertions":250,"deletions":566,"files":["tests/test_ifconfig.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_ls.py","tests/test_lsblk.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_ps.py","tests/test_route.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py"],"file_stats":[{"name":"tests/test_ifconfig.py","lines_changed":59},{"name":"tests/test_iptables.py","lines_changed":249},{"name":"tests/test_jobs.py","lines_changed":19},{"name":"tests/test_ls.py","lines_changed":58},{"name":"tests/test_lsblk.py","lines_changed":25},{"name":"tests/test_lsmod.py","lines_changed":22},{"name":"tests/test_lsof.py","lines_changed":59},{"name":"tests/test_mount.py","lines_changed":30},{"name":"tests/test_netstat.py","lines_changed":110},{"name":"tests/test_ps.py","lines_changed":57},{"name":"tests/test_route.py","lines_changed":51},{"name":"tests/test_uname.py","lines_changed":27},{"name":"tests/test_uptime.py","lines_changed":23},{"name":"tests/test_w.py","lines_changed":27}]},"message":"updates tests"},{"commit":"f363334639c5fa3a43889794ea52409056a2d886","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":87,"deletions":219,"files":["tests/test_df.py","tests/test_dig.py","tests/test_env.py","tests/test_free.py","tests/test_history.py"],"file_stats":[{"name":"tests/test_df.py","lines_changed":43},{"name":"tests/test_dig.py","lines_changed":196},{"name":"tests/test_env.py","lines_changed":13},{"name":"tests/test_free.py","lines_changed":41},{"name":"tests/test_history.py","lines_changed":13}]},"message":"update tests"},{"commit":"750197e48596ad96804477053d3ff3c8063ea68a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":70,"files":["tests/test_arp.py"],"file_stats":[{"name":"tests/test_arp.py","lines_changed":97}]},"message":"new tests"},{"commit":"36b349e4ed39fe611c7d87a47c378cc4d4627ad2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":76,"insertions":76,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-a.json","tests/fixtures/centos-7.7/arp-v.json","tests/fixtures/centos-7.7/arp.json","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/df.json","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/centos-7.7/env.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/centos-7.7/free.json","tests/fixtures/centos-7.7/history.json","tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/centos-7.7/iptables-filter-nv.json","tests/fixtures/centos-7.7/iptables-filter.json","tests/fixtures/centos-7.7/iptables-mangle.json","tests/fixtures/centos-7.7/iptables-nat.json","tests/fixtures/centos-7.7/iptables-raw.json","tests/fixtures/centos-7.7/jobs.json","tests/fixtures/centos-7.7/ls-al.json","tests/fixtures/centos-7.7/ls-alh.json","tests/fixtures/centos-7.7/ls.json","tests/fixtures/centos-7.7/lsblk.json","tests/fixtures/centos-7.7/lsmod.json","tests/fixtures/centos-7.7/lsof-sudo.json","tests/fixtures/centos-7.7/lsof.json","tests/fixtures/centos-7.7/mount.json","tests/fixtures/centos-7.7/netstat-l.json","tests/fixtures/centos-7.7/netstat-p.json","tests/fixtures/centos-7.7/netstat-sudo-lnp.json","tests/fixtures/centos-7.7/netstat.json","tests/fixtures/centos-7.7/ps-axu.json","tests/fixtures/centos-7.7/ps-ef.json","tests/fixtures/centos-7.7/route-vn.json","tests/fixtures/centos-7.7/route.json","tests/fixtures/centos-7.7/uname-a.json","tests/fixtures/centos-7.7/uptime.json","tests/fixtures/centos-7.7/w.json","tests/fixtures/ubuntu-18.04/arp-a.json","tests/fixtures/ubuntu-18.04/arp-v.json","tests/fixtures/ubuntu-18.04/arp.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/df.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json","tests/fixtures/ubuntu-18.04/env.json","tests/fixtures/ubuntu-18.04/free-h.json","tests/fixtures/ubuntu-18.04/free.json","tests/fixtures/ubuntu-18.04/history.json","tests/fixtures/ubuntu-18.04/ifconfig.json","tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","tests/fixtures/ubuntu-18.04/iptables-filter.json","tests/fixtures/ubuntu-18.04/iptables-mangle.json","tests/fixtures/ubuntu-18.04/iptables-nat.json","tests/fixtures/ubuntu-18.04/iptables-raw.json","tests/fixtures/ubuntu-18.04/jobs.json","tests/fixtures/ubuntu-18.04/ls-al.json","tests/fixtures/ubuntu-18.04/ls-alh.json","tests/fixtures/ubuntu-18.04/ls.json","tests/fixtures/ubuntu-18.04/lsblk.json","tests/fixtures/ubuntu-18.04/lsmod.json","tests/fixtures/ubuntu-18.04/lsof-sudo.json","tests/fixtures/ubuntu-18.04/lsof.json","tests/fixtures/ubuntu-18.04/mount.json","tests/fixtures/ubuntu-18.04/netstat-l.json","tests/fixtures/ubuntu-18.04/netstat-p.json","tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.json","tests/fixtures/ubuntu-18.04/netstat.json","tests/fixtures/ubuntu-18.04/ps-axu.json","tests/fixtures/ubuntu-18.04/ps-ef.json","tests/fixtures/ubuntu-18.04/route-vn.json","tests/fixtures/ubuntu-18.04/route.json","tests/fixtures/ubuntu-18.04/uname-a.json","tests/fixtures/ubuntu-18.04/uptime.json","tests/fixtures/ubuntu-18.04/w.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/arp-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/arp-v.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/arp.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/df-h.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/df.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/dig-aaaa.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/dig-x.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/dig.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/env.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/free-h.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/free.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/history.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ifconfig.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-filter-nv.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-filter.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-mangle.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-nat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-raw.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/jobs.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-al.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-alh.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsblk.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsmod.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsof-sudo.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsof.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mount.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-l.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-sudo-lnp.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ps-axu.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ps-ef.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/route-vn.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/route.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/uname-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/uptime.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/w.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/arp-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/arp-v.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/arp.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/df-h.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/df.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dig-aaaa.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dig-x.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dig.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/env.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/free-h.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/free.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/history.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ifconfig.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-mangle.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-nat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-raw.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/jobs.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-al.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-alh.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsblk.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsmod.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsof-sudo.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsof.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/mount.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-l.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ps-axu.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ps-ef.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/route-vn.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/route.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/uname-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/uptime.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/w.json","lines_changed":1}]},"message":"json output files"},{"commit":"b5f1e94fe2859c4fbcf126f8f8fb20d71a9b6433","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":1}]},"message":"fix for space before '-' in program_name"},{"commit":"6a504fb0e10b1ef551ed9fe780926fe5ca02d267","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2}]},"message":"add exception type"},{"commit":"e02bad2240bacbc31097d931a902a34217d559db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":123,"deletions":175,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":298}]},"message":"update documentation"},{"commit":"1d4043a3b64c38a20a0db065c3bdc3c6a2d068bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":52,"deletions":0,"files":["jc/parsers/foo.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":52}]},"message":"add template parser"},{"commit":"039e034829789ca314a00abd4f1d9ad06f1a6eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":6,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":25}]},"message":"fix parsing issues in program_name when spaces are in the name"},{"commit":"d828de4f4f2f4c3d582fddee79830d12511c3299","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":53,"deletions":9,"files":["jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/w.py","lines_changed":62}]},"message":"update documentation"},{"commit":"098000bb10a3f5ed33d285c6ba4f0dfb9a013fdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":24,"deletions":9,"files":["changelog.txt","jc/parsers/w.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/w.py","lines_changed":32}]},"message":"fix blank 'from' column issue"},{"commit":"b41165eff5cd7371e852cd33e084a919524ead9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":31,"deletions":1,"files":["jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/w.py","lines_changed":32}]},"message":"process w data"},{"commit":"6ad7891b2b34fae1a366568e4eba86e886a6dd84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":59,"deletions":14,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":73}]},"message":"process uptime data"},{"commit":"72138315598cd405bc0508b554108bf3f730dcb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":31,"deletions":10,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":41}]},"message":"add process boilerplate"},{"commit":"10eedd82e4c4678fbf989fe599d7ca75deced5a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]},"message":"changelog update"},{"commit":"a55493da0f1457a46f29511e0835adfa9d748f7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":93,"deletions":6,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":99}]},"message":"process route data"},{"commit":"89973f4162317693b0d094a64115ee87d8479d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":45,"deletions":27,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":72}]},"message":"doc updates and tty fix"},{"commit":"4802222ad50d55372f2b883d83a61181086b0619","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":11}]},"message":"process ps data"},{"commit":"bcd28f06f87a4260d1787399d723817afd6aee90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":1,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":24}]},"message":"prep ps for process"},{"commit":"e17a47a7fa7f4c1bb4c4b55fb004963fc1b61434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":2}]},"message":"fix typo"},{"commit":"cad2e16c7aa54a70f476bf4268ff8e5985cff468","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":353,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":354}]},"message":"document examples"},{"commit":"5da5d278dac77bd4aa21819194e7f9e178bd1887","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":0,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":23}]},"message":"process netstat data"},{"commit":"81b6776e57c113cbfb8346d1cfd83532a440c257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":177,"files":["jc/parsers/netstat.py.old"],"file_stats":[{"name":"jc/parsers/netstat.py.old","lines_changed":177}]},"message":"remove old netstat parser"},{"commit":"5ecb6bd58b4ed91f63e4a0b5939378bd9925b7b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":3,"files":["changelog.txt","jc/parsers/netstat.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":3}]},"message":"doc updates"},{"commit":"21b56096c57cfcf5c55fdf5f9bab88b6d5c7dd73","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":37}]},"message":"finalize parse_post"},{"commit":"8c78f959731a25a05ee6361a14853c92f8fce69b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":8}]},"message":"clean up trailing spaces on entries"},{"commit":"94a88bb5669d9a9a5dff085a4c4111bdd39df8f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":35,"deletions":17,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":52}]},"message":"post_parse flags and program_name"},{"commit":"579124475b0b517b36ddbe5bdb13be14807dea1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"simplify parser_map code"},{"commit":"5da83e020015eb5559d216bc3f39b3854e76adf3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"fix found variable error"},{"commit":"a90a76d004b923edece07a52a3aa400a9ef4b005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":177,"deletions":140,"files":["jc/parsers/netstat.py.old","jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/netstat.py.old","lines_changed":177},{"name":"jc/parsers/netstat2.py","lines_changed":140}]},"message":"move out old netstat parser"},{"commit":"bdfa95912398b2630fcb13e866f4013747fd0975","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":20,"insertions":209,"deletions":212,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":10},{"name":"jc/parsers/env.py","lines_changed":10},{"name":"jc/parsers/free.py","lines_changed":10},{"name":"jc/parsers/history.py","lines_changed":8},{"name":"jc/parsers/ifconfig.py","lines_changed":10},{"name":"jc/parsers/iptables.py","lines_changed":10},{"name":"jc/parsers/jobs.py","lines_changed":10},{"name":"jc/parsers/ls.py","lines_changed":10},{"name":"jc/parsers/lsblk.py","lines_changed":10},{"name":"jc/parsers/lsmod.py","lines_changed":10},{"name":"jc/parsers/lsof.py","lines_changed":10},{"name":"jc/parsers/mount.py","lines_changed":10},{"name":"jc/parsers/netstat.py","lines_changed":245},{"name":"jc/parsers/ps.py","lines_changed":10},{"name":"jc/parsers/route.py","lines_changed":10},{"name":"jc/parsers/uname.py","lines_changed":10},{"name":"jc/parsers/uptime.py","lines_changed":10},{"name":"jc/parsers/w.py","lines_changed":10}]},"message":"fix compatibility code"},{"commit":"4380594275bc863e81839a6a7b032a6ff0cbb9b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":46,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":54}]},"message":"remove cli functions from utils"},{"commit":"88bf252c0df3c583640286880d7992e4399e23f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":139,"deletions":128,"files":["jc/cli.py","jc/jc.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":139},{"name":"jc/jc.py","lines_changed":128}]},"message":"rename jc.py to cli.py"},{"commit":"a5efd8adce77fca7e3343f8f518c7bad578fdb4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"rename jc.py to cli.py"},{"commit":"2ee392eefffde77ebdf83f5e4e0c43cf8c1a7d6e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/netstat2.py","lines_changed":10}]},"message":"add quiet mode"},{"commit":"9c1d893e16ea17b16bec5fd0ec8839c4fe6f0590","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":102,"deletions":90,"files":["jc/jc.py","jc/parsers/arp.py","jc/parsers/df.py","jc/utils.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":107},{"name":"jc/parsers/arp.py","lines_changed":10},{"name":"jc/parsers/df.py","lines_changed":10},{"name":"jc/utils.py","lines_changed":65}]},"message":"move utils to own module and add quiet mode"},{"commit":"88dcb90c83b757285661c72429c5b60bb1ead94a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":6}]},"message":"changelog update"},{"commit":"a3bcabc89c1f74d067da0046492dbc56e50b1005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":62,"files":["jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/netstat2.py","lines_changed":71}]},"message":"mvp of netstat raw_data parser"},{"commit":"dafbf9fdcf53a8abbd006baef0be6697f860d2a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":247,"deletions":53,"files":["jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/lsmod.py","lines_changed":85},{"name":"jc/parsers/lsof.py","lines_changed":106},{"name":"jc/parsers/mount.py","lines_changed":31},{"name":"jc/parsers/netstat2.py","lines_changed":78}]},"message":"process lsmod data"},{"commit":"680cb2b2caa82e1e2c3225b3c44cae2ba03ba02c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":76,"deletions":7,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":83}]},"message":"doc update"},{"commit":"54818a06e0e0b981810f6aec45c308da81a9e2ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":8}]},"message":"change bool variable names"},{"commit":"88f4c5b5a93da3938b84f97abfc54539ee19ac48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":10,"deletions":10,"files":["jc/parsers/dig.py","jc/parsers/free.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":8},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":4},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"remove TypeError from exception check"},{"commit":"2bb7409887e8b7659613189daf58d02cb26bd6ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":36,"deletions":11,"files":["jc/parsers/df.py","jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/lsblk.py","lines_changed":42}]},"message":"process lsblk data"},{"commit":"c780aac3aba02cc042c6a3c984af198069956370","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":22,"insertions":91,"deletions":5,"files":["jc/jc.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat2.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":8},{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/df.py","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":5},{"name":"jc/parsers/env.py","lines_changed":5},{"name":"jc/parsers/free.py","lines_changed":4},{"name":"jc/parsers/history.py","lines_changed":5},{"name":"jc/parsers/ifconfig.py","lines_changed":5},{"name":"jc/parsers/iptables.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"jc/parsers/lsblk.py","lines_changed":1},{"name":"jc/parsers/lsmod.py","lines_changed":4},{"name":"jc/parsers/lsof.py","lines_changed":5},{"name":"jc/parsers/mount.py","lines_changed":5},{"name":"jc/parsers/netstat.py","lines_changed":5},{"name":"jc/parsers/netstat2.py","lines_changed":5},{"name":"jc/parsers/ps.py","lines_changed":4},{"name":"jc/parsers/route.py","lines_changed":4},{"name":"jc/parsers/uname.py","lines_changed":5},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/w.py","lines_changed":4}]},"message":"add compatibility function"},{"commit":"5010aaec285e26ae9dbfdb3fcdc38a3bd36cd236","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":2}]},"message":"put exit() back"},{"commit":"066e93cb075021ac94a0e2e6a36a34bc173ee6c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":2}]},"message":"move exit() to errormessage()"},{"commit":"0bd2faa7f71a128babc68afea053159ccb91b702","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":3}]},"message":"beautify compatibility list"},{"commit":"e2f926453ba386736204e358f8306dfc731b5005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["install.sh"],"file_stats":[{"name":"install.sh","lines_changed":2}]},"message":"add install script"},{"commit":"b953b79f9c46d8c5398a6c1c2769167b5aed2805","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":11,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4}]},"message":"add compatibility"},{"commit":"7f9967780692bec2fcbe992eee0c392ab92efb7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":19,"deletions":1,"files":["jc/jc.py","jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":16},{"name":"jc/parsers/lsblk.py","lines_changed":4}]},"message":"compatibility function call"},{"commit":"721b54665924ad1657ee83cd5fca601e03700962","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":8}]},"message":"finish schema"},{"commit":"2de5e41269421c73e07d4abd6ca99b38be736261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":95,"deletions":12,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":107}]},"message":"fix for more columns and build schema"},{"commit":"dfe0f6e99b6174734661fc43d9ad4b1d0dfd96e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":75,"deletions":9,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":84}]},"message":"process ls data"},{"commit":"8873b1bc697c8f9409fa676c88b5ebe109dc8717","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":46,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":70}]},"message":"clean up process code"},{"commit":"9ff94707004fefed475603436fc0a7ffb19e6fee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":4,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":13}]},"message":"refactor helptext() function"},{"commit":"2c58fca53044892e15ceb5e8bcae1afb09fa3269","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":62,"deletions":4,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":66}]},"message":"process jobs data"},{"commit":"9e5cd90da7d92bbadbc0d25071d087a3dbd90a5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":131,"deletions":261,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":392}]},"message":"process iptables data"},{"commit":"7ee0d49424bba5274975d6c33e0721977660692f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":107,"deletions":28,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":135}]},"message":"process ifconfig data"},{"commit":"a9058ee21e87454aa423112239c4f4df7daca8c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":4,"deletions":1,"files":["jc/parsers/arp.py","jc/parsers/dig.py","jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/dig.py","lines_changed":1},{"name":"jc/parsers/free.py","lines_changed":1}]},"message":"doc formatting"},{"commit":"fcf0aac87dccac2ce28e6f55e66e2f0b8f6fbd36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":54,"deletions":10,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":64}]},"message":"add history processing"},{"commit":"daec5f068103aae547509ddacc2be56c84f39f17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":55,"deletions":6,"files":["jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/free.py","lines_changed":61}]},"message":"process free data"},{"commit":"5b2491d5ae72705758944e247fbca83367c0365f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":54,"deletions":5,"files":["jc/parsers/env.py"],"file_stats":[{"name":"jc/parsers/env.py","lines_changed":59}]},"message":"process env data"},{"commit":"d9b41ac73b234f5bf7ff3abfee198092424a1bbd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":4}]},"message":"doc formatting"},{"commit":"7168ffddf8a8dfcdd5bcabd8bf943d6417de407d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":87,"deletions":5,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":92}]},"message":"process dig output"},{"commit":"a855344bec9f60d852de326953436ec76f25cffb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":0,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":13}]},"message":"document schema"},{"commit":"d8b3b59fae924494fbcdfbdf6ad790f5234b0c69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":16}]},"message":"add schema and rename 'avail' to 'available'"},{"commit":"4b7d7840d37be47c1c98c38a6d712e7090e5b68c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"changelog.txt","lines_changed":2}]},"message":"add -r option"},{"commit":"58a094a9b4cab0fcb99581f37a21a450fc3a1aed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update"},{"commit":"65adbb4189ac66de3283adb2af93a1251103f057","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":29,"deletions":7,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":36}]},"message":"doc update"},{"commit":"f7350959c9706486a3aed19a999e5ee756a1240c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":47,"deletions":24,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":71}]},"message":"df fix for changing header names when -h used"},{"commit":"8934a7d832b8e1375f0bbdd71031f37ae42f3929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["jc/parsers/arp.py","jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":6}]},"message":"fix dictionary iteration"},{"commit":"669a424fd6508db91bf5cfa2607033fac85f442c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":4}]},"message":"fix process function"},{"commit":"591a65c2bda26efcdd570a5f147f98a5be0473d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":46,"deletions":2,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":48}]},"message":"process df data"},{"commit":"a78fb890782a64b20c0c1b60afbd915ebdd88535","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":5,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":26}]},"message":"add raw and processed output"},{"commit":"8979dab2a5371fce3a773004c2309e7483e4cd31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":25,"deletions":20,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":45}]},"message":"add raw mode"},{"commit":"0a891f0adda7f2f3233222a0cb5c1f737913ad6f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":1,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"setup.py","lines_changed":2}]},"message":"bump python required version"},{"commit":"c220e35b14237c2cfc38aa661413af83ea13e393","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":34,"deletions":33,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":67}]},"message":"cleanup helptext"},{"commit":"f26c5818bd958c18f4ecc22611b9c058f6213a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":36,"deletions":33,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":69}]},"message":"refactor helptext"},{"commit":"e712cd3fc4cec1b3137c73e199b2d89fd42fb3bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":138,"deletions":0,"files":["jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/netstat2.py","lines_changed":138}]},"message":"netstat2 skeleton"},{"commit":"0309c9ac67c5f65e0a584fd01e8104ef1990fa7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"setup cleanup"},{"commit":"9a9eb4120af7696cd3727ac0f0a014663e62b993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":3}]},"message":"setup updates"},{"commit":"d1927456b02e6c2a6e6395cd6ce873b6565ec37d","merge":"0691cfc a3d9213","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #6 from kellyjonbrazil/dev\n\nDev v1.1.1"},{"commit":"a3d9213a1e2fd52ba2cbc863d4d01d3ffeebe230","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add date"},{"commit":"3365c03a1e709835b4bd6bca023afbcb46912982","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":361,"deletions":0,"files":["tests/test_arp.py","tests/test_dig.py"],"file_stats":[{"name":"tests/test_arp.py","lines_changed":131},{"name":"tests/test_dig.py","lines_changed":230}]},"message":"add tests"},{"commit":"4f6c87389b313b368d9e833feef55fe6daf7aac9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":164,"deletions":1,"files":["tests/fixtures/centos-7.7/dig-aaaa.out","tests/fixtures/centos-7.7/dig-x.out","tests/fixtures/centos-7.7/dig.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/dig-aaaa.out","tests/fixtures/ubuntu-18.04/dig-x.out","tests/fixtures/ubuntu-18.04/dig.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/dig-aaaa.out","lines_changed":20},{"name":"tests/fixtures/centos-7.7/dig-x.out","lines_changed":20},{"name":"tests/fixtures/centos-7.7/dig.out","lines_changed":38},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":6},{"name":"tests/fixtures/ubuntu-18.04/dig-aaaa.out","lines_changed":20},{"name":"tests/fixtures/ubuntu-18.04/dig-x.out","lines_changed":20},{"name":"tests/fixtures/ubuntu-18.04/dig.out","lines_changed":41}]},"message":"add dig test files"},{"commit":"41a2a9adac7d3c29dfa11292f08b0877c69b1a5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":147,"deletions":3,"files":["README.md","jc/parsers/dig.py"],"file_stats":[{"name":"README.md","lines_changed":147},{"name":"jc/parsers/dig.py","lines_changed":3}]},"message":"remove unnecessary if statement"},{"commit":"74dae2905b2b0916f0be9fee2a4a343962760ff6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":143,"deletions":30,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":173}]},"message":"dig parser mvp"},{"commit":"d1f64214de00090c3faae0bf544c6c2602ab8c31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":3,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":22}]},"message":"add authority parsing"},{"commit":"d3e1aa20a815d1d1d6ae82776ae18e3416f0966f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":2}]},"message":"fix when line"},{"commit":"72cae9577756c4355211a19f4dd77aaeb6f8e905","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":47,"deletions":9,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":56}]},"message":"dig fixes"},{"commit":"219bc8130f55f23e3be3abbe56104aefc2f84e86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":155,"deletions":0,"files":["jc/jc.py","jc/parsers/dig.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":150}]},"message":"dig parser skeleton"},{"commit":"e8c1a554c040ad8f9c6b518db5fd58e8345d2181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-a.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/arp-a.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/arp-a.out","lines_changed":3},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/arp-a.out","lines_changed":3}]},"message":"testfile updates"},{"commit":"087a60bc2adf64bfcedc1f264fef328f993b530c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":87,"deletions":5,"files":["README.md","jc/parsers/arp.py"],"file_stats":[{"name":"README.md","lines_changed":33},{"name":"jc/parsers/arp.py","lines_changed":59}]},"message":"documentation updates"},{"commit":"9c9823c3b8737b5de08af6278ca74414138e9263","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":16,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-v.out","tests/fixtures/centos-7.7/arp.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/arp-v.out","tests/fixtures/ubuntu-18.04/arp.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/arp-v.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/arp.out","lines_changed":3},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/arp-v.out","lines_changed":4},{"name":"tests/fixtures/ubuntu-18.04/arp.out","lines_changed":3}]},"message":"add arp testfiles"},{"commit":"cf8d13030bf67261a986c0f80fa20ec0e37a743a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":21}]},"message":"add arp"},{"commit":"1eff69c187ca410ffaec7909bc2532553be1d80c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":17,"deletions":1,"files":["changelog.txt","jc/parsers/arp.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/arp.py","lines_changed":17}]},"message":"add documentation"},{"commit":"b10fb77d714b73a10a9bf28b45269b3530e01cee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":10}]},"message":"fixup arp parser"},{"commit":"87cee8b230a06fa270b2e36afb56f337da814c80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":28,"deletions":1,"files":["jc/jc.py","jc/parsers/arp.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":7},{"name":"jc/parsers/arp.py","lines_changed":22}]},"message":"add arp parser"},{"commit":"83ab10d6282e26391bbf6bae5d0d29e040b209f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":44,"deletions":34,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":78}]},"message":"documentation update"},{"commit":"d58a6e1d1dc93155255922b65b0af1325439b033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":15,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":28}]},"message":"readme update"},{"commit":"cb46ca5c2776a13c673a44d3e0fbd0661b32af9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"readme update"},{"commit":"5528d979f0b45787d68ab79b962371df9acc527b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":6},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"ee94a038a61d60db72046d5bcceec58009decb39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":131,"deletions":0,"files":["tests/test_uname.py","tests/test_uptime.py","tests/test_w.py"],"file_stats":[{"name":"tests/test_uname.py","lines_changed":45},{"name":"tests/test_uptime.py","lines_changed":41},{"name":"tests/test_w.py","lines_changed":45}]},"message":"add tests"},{"commit":"1d658f7a9fc50873f76985b2fb9de92ada9d5547","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":265,"deletions":0,"files":["tests/test_netstat.py","tests/test_ps.py","tests/test_route.py"],"file_stats":[{"name":"tests/test_netstat.py","lines_changed":105},{"name":"tests/test_ps.py","lines_changed":83},{"name":"tests/test_route.py","lines_changed":77}]},"message":"add tests"},{"commit":"392cb44f9b19829a5ceba055e24c7af4d8ac5b3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":80,"insertions":12667,"deletions":0,"files":["runtests.sh","tests/__init__.py","tests/fixtures/centos-7.7/df-h.out","tests/fixtures/centos-7.7/df.out","tests/fixtures/centos-7.7/env.out","tests/fixtures/centos-7.7/free-h.out","tests/fixtures/centos-7.7/free.out","tests/fixtures/centos-7.7/history.out","tests/fixtures/centos-7.7/ifconfig.out","tests/fixtures/centos-7.7/iptables-filter-nv.out","tests/fixtures/centos-7.7/iptables-filter.out","tests/fixtures/centos-7.7/iptables-mangle.out","tests/fixtures/centos-7.7/iptables-nat.out","tests/fixtures/centos-7.7/iptables-raw.out","tests/fixtures/centos-7.7/jobs.out","tests/fixtures/centos-7.7/ls-al.out","tests/fixtures/centos-7.7/ls-alh.out","tests/fixtures/centos-7.7/ls.out","tests/fixtures/centos-7.7/lsblk.out","tests/fixtures/centos-7.7/lsmod.out","tests/fixtures/centos-7.7/lsof-sudo.out","tests/fixtures/centos-7.7/lsof.out","tests/fixtures/centos-7.7/mount.out","tests/fixtures/centos-7.7/netstat-l.out","tests/fixtures/centos-7.7/netstat-p.out","tests/fixtures/centos-7.7/netstat-sudo-lnp.out","tests/fixtures/centos-7.7/netstat.out","tests/fixtures/centos-7.7/ps-axu.out","tests/fixtures/centos-7.7/ps-ef.out","tests/fixtures/centos-7.7/route-vn.out","tests/fixtures/centos-7.7/route.out","tests/fixtures/centos-7.7/uname-a.out","tests/fixtures/centos-7.7/uptime.out","tests/fixtures/centos-7.7/w.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/df-h.out","tests/fixtures/ubuntu-18.04/df.out","tests/fixtures/ubuntu-18.04/env.out","tests/fixtures/ubuntu-18.04/free-h.out","tests/fixtures/ubuntu-18.04/free.out","tests/fixtures/ubuntu-18.04/history.out","tests/fixtures/ubuntu-18.04/ifconfig.out","tests/fixtures/ubuntu-18.04/iptables-filter-nv.out","tests/fixtures/ubuntu-18.04/iptables-filter.out","tests/fixtures/ubuntu-18.04/iptables-mangle.out","tests/fixtures/ubuntu-18.04/iptables-nat.out","tests/fixtures/ubuntu-18.04/iptables-raw.out","tests/fixtures/ubuntu-18.04/jobs.out","tests/fixtures/ubuntu-18.04/ls-al.out","tests/fixtures/ubuntu-18.04/ls-alh.out","tests/fixtures/ubuntu-18.04/ls.out","tests/fixtures/ubuntu-18.04/lsblk.out","tests/fixtures/ubuntu-18.04/lsmod.out","tests/fixtures/ubuntu-18.04/lsof-sudo.out","tests/fixtures/ubuntu-18.04/lsof.out","tests/fixtures/ubuntu-18.04/mount.out","tests/fixtures/ubuntu-18.04/netstat-l.out","tests/fixtures/ubuntu-18.04/netstat-p.out","tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.out","tests/fixtures/ubuntu-18.04/netstat.out","tests/fixtures/ubuntu-18.04/ps-axu.out","tests/fixtures/ubuntu-18.04/ps-ef.out","tests/fixtures/ubuntu-18.04/route-vn.out","tests/fixtures/ubuntu-18.04/route.out","tests/fixtures/ubuntu-18.04/uname-a.out","tests/fixtures/ubuntu-18.04/uptime.out","tests/fixtures/ubuntu-18.04/w.out","tests/test_df.py","tests/test_env.py","tests/test_free.py","tests/test_history.py","tests/test_ifconfig.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_ls.py","tests/test_lsblk.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py"],"file_stats":[{"name":"runtests.sh","lines_changed":3},{"name":"tests/__init__.py","lines_changed":0},{"name":"tests/fixtures/centos-7.7/df-h.out","lines_changed":8},{"name":"tests/fixtures/centos-7.7/df.out","lines_changed":8},{"name":"tests/fixtures/centos-7.7/env.out","lines_changed":24},{"name":"tests/fixtures/centos-7.7/free-h.out","lines_changed":3},{"name":"tests/fixtures/centos-7.7/free.out","lines_changed":3},{"name":"tests/fixtures/centos-7.7/history.out","lines_changed":1000},{"name":"tests/fixtures/centos-7.7/ifconfig.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/iptables-filter-nv.out","lines_changed":134},{"name":"tests/fixtures/centos-7.7/iptables-filter.out","lines_changed":134},{"name":"tests/fixtures/centos-7.7/iptables-mangle.out","lines_changed":59},{"name":"tests/fixtures/centos-7.7/iptables-nat.out","lines_changed":80},{"name":"tests/fixtures/centos-7.7/iptables-raw.out","lines_changed":38},{"name":"tests/fixtures/centos-7.7/jobs.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/ls-al.out","lines_changed":22},{"name":"tests/fixtures/centos-7.7/ls-alh.out","lines_changed":22},{"name":"tests/fixtures/centos-7.7/ls.out","lines_changed":19},{"name":"tests/fixtures/centos-7.7/lsblk.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/lsmod.out","lines_changed":99},{"name":"tests/fixtures/centos-7.7/lsof-sudo.out","lines_changed":3390},{"name":"tests/fixtures/centos-7.7/lsof.out","lines_changed":639},{"name":"tests/fixtures/centos-7.7/mount.out","lines_changed":31},{"name":"tests/fixtures/centos-7.7/netstat-l.out","lines_changed":45},{"name":"tests/fixtures/centos-7.7/netstat-p.out","lines_changed":121},{"name":"tests/fixtures/centos-7.7/netstat-sudo-lnp.out","lines_changed":45},{"name":"tests/fixtures/centos-7.7/netstat.out","lines_changed":123},{"name":"tests/fixtures/centos-7.7/ps-axu.out","lines_changed":110},{"name":"tests/fixtures/centos-7.7/ps-ef.out","lines_changed":110},{"name":"tests/fixtures/centos-7.7/route-vn.out","lines_changed":5},{"name":"tests/fixtures/centos-7.7/route.out","lines_changed":5},{"name":"tests/fixtures/centos-7.7/uname-a.out","lines_changed":1},{"name":"tests/fixtures/centos-7.7/uptime.out","lines_changed":1},{"name":"tests/fixtures/centos-7.7/w.out","lines_changed":4},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":48},{"name":"tests/fixtures/ubuntu-18.04/df-h.out","lines_changed":19},{"name":"tests/fixtures/ubuntu-18.04/df.out","lines_changed":19},{"name":"tests/fixtures/ubuntu-18.04/env.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-18.04/free-h.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/free.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/history.out","lines_changed":453},{"name":"tests/fixtures/ubuntu-18.04/ifconfig.out","lines_changed":18},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter-nv.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/iptables-mangle.out","lines_changed":14},{"name":"tests/fixtures/ubuntu-18.04/iptables-nat.out","lines_changed":11},{"name":"tests/fixtures/ubuntu-18.04/iptables-raw.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/jobs.out","lines_changed":4},{"name":"tests/fixtures/ubuntu-18.04/ls-al.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/ls-alh.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/ls.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-18.04/lsblk.out","lines_changed":18},{"name":"tests/fixtures/ubuntu-18.04/lsmod.out","lines_changed":102},{"name":"tests/fixtures/ubuntu-18.04/lsof-sudo.out","lines_changed":2854},{"name":"tests/fixtures/ubuntu-18.04/lsof.out","lines_changed":976},{"name":"tests/fixtures/ubuntu-18.04/mount.out","lines_changed":43},{"name":"tests/fixtures/ubuntu-18.04/netstat-l.out","lines_changed":32},{"name":"tests/fixtures/ubuntu-18.04/netstat-p.out","lines_changed":97},{"name":"tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.out","lines_changed":32},{"name":"tests/fixtures/ubuntu-18.04/netstat.out","lines_changed":97},{"name":"tests/fixtures/ubuntu-18.04/ps-axu.out","lines_changed":173},{"name":"tests/fixtures/ubuntu-18.04/ps-ef.out","lines_changed":173},{"name":"tests/fixtures/ubuntu-18.04/route-vn.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/route.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/uname-a.out","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/uptime.out","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/w.out","lines_changed":4},{"name":"tests/test_df.py","lines_changed":69},{"name":"tests/test_env.py","lines_changed":31},{"name":"tests/test_free.py","lines_changed":67},{"name":"tests/test_history.py","lines_changed":31},{"name":"tests/test_ifconfig.py","lines_changed":77},{"name":"tests/test_iptables.py","lines_changed":299},{"name":"tests/test_jobs.py","lines_changed":37},{"name":"tests/test_ls.py","lines_changed":92},{"name":"tests/test_lsblk.py","lines_changed":43},{"name":"tests/test_lsmod.py","lines_changed":40},{"name":"tests/test_lsof.py","lines_changed":85},{"name":"tests/test_mount.py","lines_changed":48},{"name":"tests/test_netstat.py","lines_changed":47}]},"message":"initial add of tests and fixtures"},{"commit":"579bef079cdd7cfa298bc20e052b8eb75b586f5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":3}]},"message":"move global output variable inside function"},{"commit":"0691cfcab3f5f91908e06ec906d57e548d4e7a1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog fix"},{"commit":"db29c7c186601fd4596d3eb121b37100601af907","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":4}]},"message":"documentation fixes"},{"commit":"fb1e03637514b5ab02fd4c5df1db8b3cbacdd531","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":10,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":24}]},"message":"formatting"},{"commit":"c3eaf59836538f4ab4c745e87b70115b4a4c5421","merge":"ea0cf0a c9849ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #5 from kellyjonbrazil/dev\n\nDev v1.0.1"},{"commit":"c9849ce0db1f864d33739f8f6f942bf5672bc3b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"changelog update"},{"commit":"d3c89a3092973a7a8765463fff41c2469ed675cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":9,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":20}]},"message":"check for enough info to parse"},{"commit":"a3d43f27f7bb0835b3593b7c303fe0ee8d896a58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":10,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":22}]},"message":"fix odd uptime text parsing"},{"commit":"f4d9c1b699fa30bd297a40ccf3d5f6e7ba3d4253","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":4,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":12}]},"message":"fix uptime for minutes and hours long uptime"},{"commit":"de647bba4aff84f7b513cf7f6fec8d3933b0d9da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"documentation update"},{"commit":"d7913070315e5e0c89006942250aaf37e9e3e18e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"documentation update"},{"commit":"1a4fc204e21f1555ae67c3147322c8d73fab630b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":10,"deletions":1,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":10},{"name":"changelog.txt","lines_changed":1}]},"message":"Documentation update"},{"commit":"0328e14c7c65a330093faa52fe48dae6cb173e42","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":0,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":7}]},"message":"handle ctrl-c gracefully"},{"commit":"1acc4d6c29d136e286f82d607c4a3a59e2680b68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":4}]},"message":"fix uptime parsing for short uptimes"},{"commit":"27245590ce28be933f1a55db4ee6b24783f4b63d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":20,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":32}]},"message":"remove integers"},{"commit":"7ca2a4bdb939293e8d7364f8901ad1fd6d3ee808","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":182,"deletions":201,"files":["README.md","changelog.txt","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":199},{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":95},{"name":"jc/parsers/netstat.py","lines_changed":84}]},"message":"remove integer values"},{"commit":"5f1ec6734874651bee595961edf1fafaf5acf001","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":473,"deletions":456,"files":["README.md","jc/parsers/df.py","jc/parsers/history.py","jc/parsers/iptables.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/w.py"],"file_stats":[{"name":"README.md","lines_changed":453},{"name":"jc/parsers/df.py","lines_changed":52},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":73},{"name":"jc/parsers/lsmod.py","lines_changed":61},{"name":"jc/parsers/lsof.py","lines_changed":113},{"name":"jc/parsers/ps.py","lines_changed":81},{"name":"jc/parsers/route.py","lines_changed":60},{"name":"jc/parsers/w.py","lines_changed":32}]},"message":"lower() headers"},{"commit":"7e44c4278a75c7223d99200023160e8d77fde54d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":2}]},"message":"formatting"},{"commit":"eda726c4a3864008e2f700374b679ae68a965ef8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":80,"deletions":1,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":81}]},"message":"documentation update"},{"commit":"5f8e70d73054f1a106c0e75eee621bc0cefd1c6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":20,"deletions":22,"files":["changelog.txt","jc/parsers/df.py","jc/parsers/free.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/w.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":8},{"name":"jc/parsers/lsmod.py","lines_changed":9},{"name":"jc/parsers/lsof.py","lines_changed":8},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":6}]},"message":"convert headers to lowercase"},{"commit":"25b90546c652cafa9409f02bae1654cb523add88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":14,"deletions":9,"files":["README.md","changelog.txt","jc/parsers/df.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":13}]},"message":"change 'Use%' to 'Use_percent'"},{"commit":"75c084153845757e22c149ea4ae7909d42ec7118","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"changelog update"},{"commit":"5b532b9b71fdb9de575da0af9b7989ac537877c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":5}]},"message":"minor cleanup"},{"commit":"8c7b3193d131411f8766508fc27b2a6589bba1f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":2}]},"message":"documentation change"},{"commit":"0897c96ef3c180a1707e8f56c545f59b3a4e0672","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":2}]},"message":"formatting"},{"commit":"57d0ab2ed7f444862546da17cbbe8f8ce67bca8c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":9,"deletions":4,"files":["README.md","jc/parsers/w.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"jc/parsers/w.py","lines_changed":9}]},"message":"change LOGIN@ to LOGIN_AT"},{"commit":"a07d9a0e4bb76d369b4a9bf0d77c7590dc3c2861","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":22,"deletions":13,"files":["README.md","jc/parsers/lsof.py"],"file_stats":[{"name":"README.md","lines_changed":10},{"name":"jc/parsers/lsof.py","lines_changed":25}]},"message":"change SIZE/OFF key to SIZE_OFF"},{"commit":"b3996cb4dfed908d71b292dc0b0136c6675351e6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":10,"files":["README.md","jc/parsers/lsblk.py"],"file_stats":[{"name":"README.md","lines_changed":10},{"name":"jc/parsers/lsblk.py","lines_changed":14}]},"message":"change MAJ:MIN key to MAJ_MIN"},{"commit":"4fa88c1ba38b34f9750625458c465d66f6531bc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":3}]},"message":"clear out non-ascii chars from data"},{"commit":"c8c5564b29588094721949b96bff1e623437835d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":3,"files":["README.md","jc/parsers/free.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":7}]},"message":"change buff/cache key to buff_cache"},{"commit":"6d047486d9f577bc04d79af839f5eef9657a9d43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"doc fix"},{"commit":"42bdc058141c4a3ac6f2c8211f9c990590b1b5cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"changelog fix"},{"commit":"85bfb688862e78d5879df6973b88ba8023fa6086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":10,"files":["README.md","jc/parsers/history.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"jc/parsers/history.py","lines_changed":17}]},"message":"history parser fixes"},{"commit":"08ec21556b553cd7e64932d68e01ba8ff3b0f210","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/w.py","lines_changed":1}]},"message":"formatting"},{"commit":"320929bf2595026d32b80b80c3e4878db9cf083f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/env.py"],"file_stats":[{"name":"jc/parsers/env.py","lines_changed":2}]},"message":"documentation update"},{"commit":"41cd489c34502c42602bf64086670ba3b2b8e14b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":126,"deletions":0,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/history.py","jc/parsers/uptime.py"],"file_stats":[{"name":"README.md","lines_changed":46},{"name":"changelog.txt","lines_changed":3},{"name":"jc/jc.py","lines_changed":10},{"name":"jc/parsers/history.py","lines_changed":32},{"name":"jc/parsers/uptime.py","lines_changed":35}]},"message":"add history and uptime parsers"},{"commit":"f101d881a16e662e883818749d48e96858fba853","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":78,"deletions":3,"files":["README.md","jc/jc.py","jc/parsers/w.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":27},{"name":"jc/jc.py","lines_changed":9},{"name":"jc/parsers/w.py","lines_changed":43},{"name":"setup.py","lines_changed":2}]},"message":"add w parser"},{"commit":"fa7466022bb8947c1bbf9f7b01aa4d92300a8992","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":28,"deletions":56,"files":["README.md","changelog.txt","jc/parsers/env.py"],"file_stats":[{"name":"README.md","lines_changed":37},{"name":"changelog.txt","lines_changed":3},{"name":"jc/parsers/env.py","lines_changed":44}]},"message":"fix env parser"},{"commit":"ea0cf0acf22585fbf8828841cf50155636eae82f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":3}]},"message":"documentation update"},{"commit":"e7921b65f5a250c10b08f78939f74968047af430","merge":"393e8bc 2cc1b1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #4 from kellyjonbrazil/dev\n\nDev v0.9.1"},{"commit":"2cc1b1bd5451f31d71b0e2236bdee0ce2b25b5d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"version bump"},{"commit":"58ae976db0165730a75dd7450c698d2727a354ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":113,"deletions":4,"files":["README.md","jc/parsers/lsmod.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":55},{"name":"jc/parsers/lsmod.py","lines_changed":60},{"name":"setup.py","lines_changed":2}]},"message":"documentation update"},{"commit":"66772392ae78ef394e22070b127416b1d5b01332","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":32,"deletions":0,"files":["changelog.txt","jc/jc.py","jc/parsers/lsmod.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/lsmod.py","lines_changed":26}]},"message":"add lsmod parser"},{"commit":"29c47c03a64f9c6b0f44d34be5449396654849b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":134,"deletions":2,"files":["README.md","changelog.txt","jc/parsers/lsof.py"],"file_stats":[{"name":"README.md","lines_changed":68},{"name":"changelog.txt","lines_changed":3},{"name":"jc/parsers/lsof.py","lines_changed":65}]},"message":"documentation update"},{"commit":"91eb9a4d13e9254bd5bbde931196904c1947a28e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":4}]},"message":"use None instead of --"},{"commit":"a1a3de32ec14d6ef433e334b9694856698c26d41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":59,"deletions":0,"files":["jc/jc.py","jc/parsers/lsof.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/lsof.py","lines_changed":54}]},"message":"add lsof parser"},{"commit":"9c47fd05bf716c2e18ebf4da41b1a46b972b2518","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":2}]},"message":"doco fix"},{"commit":"649c0aa7c157f87691cc8eeac64c747e81f63594","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":76,"deletions":1,"files":["README.md","jc/parsers/jobs.py"],"file_stats":[{"name":"README.md","lines_changed":39},{"name":"jc/parsers/jobs.py","lines_changed":38}]},"message":"add documentation"},{"commit":"3db758764e50666e5ae40de8d89180de2ef5bc28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":83,"deletions":0,"files":["changelog.txt","jc/jc.py","jc/parsers/jobs.py"],"file_stats":[{"name":"changelog.txt","lines_changed":6},{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":72}]},"message":"add jobs parser"},{"commit":"802f1510eb6d621f9c760f28b83f16a4781b8d93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":2}]},"message":"tighten if statements"},{"commit":"56901788dee154890e70269ad48d4b22bb8c5437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":30,"deletions":19,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":49}]},"message":"stop blocking when no pipe and enhance help text"},{"commit":"679ae6d5dc7af26240dc00d8bc6499950f81d457","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"b15c8c352a87a9b3b1dece28af0287ef71ca02d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":16,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":30}]},"message":"simplify state variables"},{"commit":"393e8bc56041a4be01b6c0b2f98895aa330afd04","merge":"e3750b4 976fd7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #3 from kellyjonbrazil/dev\n\nDev v0.8.1"},{"commit":"976fd7d9bd49190a8b28ea5acf5af8979cdec537","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":28,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":55}]},"message":"readme update"},{"commit":"d8337870cad042cdcc6a4ff3c61f756c3430fa96","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":28,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":55}]},"message":"update documentation"},{"commit":"39a8aec77f5134b5b958e3f679910a1c3512e13a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/parsers/ls.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"v0.8.1 build"},{"commit":"306d539b6bbfb272c7b955e4847adc3a6b4afa5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"readme update"},{"commit":"f3087b8a8ede88834285bb5d0655fc96341c174c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":635,"deletions":1,"files":["README.md","changelog.txt","jc/parsers/iptables.py"],"file_stats":[{"name":"README.md","lines_changed":319},{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/iptables.py","lines_changed":316}]},"message":"update readme and formatting"},{"commit":"414c2ecef88af2d2c098e6acfb507a5fd7bb8eda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":10,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":16}]},"message":"fix iptables parser"},{"commit":"776ef2d1be81180b8b295fbc587446a326f2f7a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":61,"deletions":0,"files":["jc/jc.py","jc/parsers/iptables.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/iptables.py","lines_changed":56}]},"message":"add iptables parser"},{"commit":"9ac57469967443b195be09d580beaa76ce0e1095","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":64,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/uname.py"],"file_stats":[{"name":"README.md","lines_changed":15},{"name":"changelog.txt","lines_changed":1},{"name":"jc/jc.py","lines_changed":7},{"name":"jc/parsers/uname.py","lines_changed":42}]},"message":"add uname parser"},{"commit":"a3e55d97c0fd4397b42e9146afb0ba9558274fdb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":127,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/mount.py"],"file_stats":[{"name":"README.md","lines_changed":45},{"name":"changelog.txt","lines_changed":1},{"name":"jc/jc.py","lines_changed":7},{"name":"jc/parsers/mount.py","lines_changed":75}]},"message":"add mount parser"},{"commit":"b15227e7ba5377e5fb6799d1b9e4ed5a11c6d92f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":125,"deletions":0,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/lsblk.py"],"file_stats":[{"name":"README.md","lines_changed":49},{"name":"changelog.txt","lines_changed":1},{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/lsblk.py","lines_changed":70}]},"message":"add lsblk parser"},{"commit":"ec3d1f84ceccb492b4c968938714fafa2e6a6321","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":2,"files":["jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/free.py","lines_changed":26}]},"message":"fix free parser"},{"commit":"753d5fd9fe5a8e4b67b1a0ec018a9f811e27f8bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"readme update"},{"commit":"73a0d70c9294ad392792e690a7bfbcc4f51b0a5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"readme update"},{"commit":"c2c189f3e6e900e5f3d35df9a9b9d033448baff6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":5}]},"message":"readme update"},{"commit":"36bc55a3109278d663b675a09829200f5474c3d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"fix df"},{"commit":"a023001cd350e320ce30f47af214ed7a9bb43185","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":226,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/df.py","jc/parsers/env.py","jc/parsers/free.py"],"file_stats":[{"name":"README.md","lines_changed":73},{"name":"changelog.txt","lines_changed":5},{"name":"jc/jc.py","lines_changed":17},{"name":"jc/parsers/df.py","lines_changed":56},{"name":"jc/parsers/env.py","lines_changed":53},{"name":"jc/parsers/free.py","lines_changed":23}]},"message":"add df, env, and free parsers"},{"commit":"e3750b49628794fd4d563013b1f3a7471c27ce68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":83,"deletions":51,"files":["README.md","jc/__init__.py"],"file_stats":[{"name":"README.md","lines_changed":30},{"name":"jc/__init__.py","lines_changed":104}]},"message":"documentation enhancements"},{"commit":"b5ea08e55bfd22c9da5ba73c124791012df119a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":20,"deletions":20,"files":["README.md","changelog.txt","jc/parsers/netstat.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":16},{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":20},{"name":"setup.py","lines_changed":2}]},"message":"fix transport protocol"},{"commit":"8e71b8e3522b9b1af4d869a0854223eb5c300b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"fix jq example"},{"commit":"4c8610c54ff4b643237d8f0e4c5781c277fc39f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"setup.py","lines_changed":2}]},"message":"fixed build"},{"commit":"c8f886dc8fcdc58f8471d68c3d583200d0ea2f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":2}]},"message":"fix example"},{"commit":"4cfc2d22b3f9fd6f0cde8ad206edd7fe260b3071","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"update changelog"},{"commit":"59238c85408117748e78c5e87157381a828f3782","merge":"d54d906 30080c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #2 from kellyjonbrazil/dev\n\nDev v0.6.2"},{"commit":"30080c01659cf611666876b7b063b7b329822352","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":35,"deletions":35,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":70}]},"message":"reorder parsers"},{"commit":"fab80bb3b4a1897da29d818e98e9b80ce45443dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["README.md","setup.py"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"setup.py","lines_changed":2}]},"message":"readme update"},{"commit":"a9f2df805421754afb8e8adbcac7f2d3bd06c9ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":3}]},"message":"move parsed_line var lower"},{"commit":"1d110be6cb25d169ae0dde6532cbcdf05d93d42f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":13,"deletions":1,"files":["README.md","changelog.txt","setup.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"changelog.txt","lines_changed":4},{"name":"setup.py","lines_changed":2}]},"message":"update doco"},{"commit":"be81b5e1ed93eb65e5dbed4f52905439cde86f62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":112,"deletions":121,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":233}]},"message":"readme update"},{"commit":"5f88f7d8a071306be92cbfb65d6d62c5a68159f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":110,"deletions":137,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":247}]},"message":"netstat cleanup"},{"commit":"e57c7cc8ef3102cc41dee4ea5fd33d40ba666491","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":2}]},"message":"change output from dict to list"},{"commit":"b216627c1073ea645029e341b4d3376601e5468e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":116,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":135}]},"message":"flatten netstat output"},{"commit":"6e925eab131024b5746d870cbd47e2791acf18bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":18,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":45}]},"message":"clean up arg parsing"},{"commit":"d54d906c571b4683f01cab2eca63ae5f0725a87b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update readme"},{"commit":"0040febbf099ed8ab35f6ee343750fcf89f2e739","merge":"8073d15 e416c77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","message":"Merge pull request #1 from kellyjonbrazil/dev\n\nDev v0.5.5"},{"commit":"e416c77bed1267254da972b0f95b7ff1d43fccef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"version bump"},{"commit":"9181d242aaed5219bb35fde01d672be88949cceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"bump version"},{"commit":"d6f94c53a4df84fb75554605477e49536a809dc2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"fix blank output case in ls"},{"commit":"a9294f32a00709737d0b82ff434a311e75ad0bed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":39,"deletions":42,"files":["changelog.txt","jc/parsers/ls.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":7},{"name":"jc/parsers/ls.py","lines_changed":72},{"name":"setup.py","lines_changed":2}]},"message":"ls fixes"},{"commit":"4d93b38fe47329e3175025878e87f7c963061f98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":90,"deletions":1,"files":["README.md","jc/parsers/route.py"],"file_stats":[{"name":"README.md","lines_changed":47},{"name":"jc/parsers/route.py","lines_changed":44}]},"message":"add route documentation"},{"commit":"77b74c550795f96b808e48a9b0bfd1a8af9866f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"add route parser"},{"commit":"51a1d3e6f48cf7084267be4092f0dd3f778dcef3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"2eba30422b44f648c7356a44cbff7416c6648f19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":2}]},"message":"skip first line"},{"commit":"43ed09ce5ba53261dfd7ef50a2e187cb524c416c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":25,"deletions":1,"files":["jc/jc.py","jc/parsers/route.py","setup.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":3},{"name":"jc/parsers/route.py","lines_changed":21},{"name":"setup.py","lines_changed":2}]},"message":"add route parser"},{"commit":"367ab54f94bf7f456377ec9d20f8daf99dbdc1ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":99,"deletions":2,"files":["README.md","changelog.txt","jc/parsers/ps.py"],"file_stats":[{"name":"README.md","lines_changed":53},{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":46}]},"message":"formatting"},{"commit":"4f552e370e656cc1882a7dae231475a016f8aa14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":4}]},"message":"acknowledgment"},{"commit":"7571139f7980f6e74c29d46971881e82ab0f04bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"bump version"},{"commit":"8ec1bec31711d2ef487da3e4a29a842d98d77626","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":29,"deletions":7,"files":["changelog.txt","jc/__init__.py","jc/jc.py","jc/parsers/ps.py"],"file_stats":[{"name":"changelog.txt","lines_changed":10},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/jc.py","lines_changed":3},{"name":"jc/parsers/ps.py","lines_changed":21}]},"message":"add ps parser"},{"commit":"c04895407f203aa0a3a080d5242faf8f6889ae41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["changelog.txt","jc/parsers/netstat.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":9}]},"message":"ubuntu fixes"},{"commit":"cec73d61310591e4890605f61dc5c1bef5808ec4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":24,"deletions":16,"files":["jc/jc.py","jc/parsers/ifconfig.py","jc/parsers/ls.py","jc/parsers/netstat.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":7},{"name":"jc/parsers/ifconfig.py","lines_changed":7},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"jc/parsers/netstat.py","lines_changed":23}]},"message":"linting"},{"commit":"756c2bc9acd60111281b76085a40778e51ca06cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":23}]},"message":"add acknowledgments"},{"commit":"084048987c7afc6516f69e68d37d73b2402dc7f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"changelog update"},{"commit":"02d97394dd76a8782e6e7d3f8a85e1aed05e796b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update"},{"commit":"177f948f9740e3e33449b04b9136a346c9a2c265","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version update"},{"commit":"c2b013150ec1f1b1ab7d416f1aa8a62165a5bb95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":9}]},"message":"add changelog"},{"commit":"0bec67c29ce5d965271440da41a0c4b4c2a1f0fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":4}]},"message":"double quotes to single quotes"},{"commit":"8073d15fe11546a17cacd81409e255bb8aecd602","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":16}]},"message":"readme update"},{"commit":"3b74afc39e58f801e75b7105e521c1469d30f991","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["pypi-upload.sh"],"file_stats":[{"name":"pypi-upload.sh","lines_changed":2}]},"message":"upload script"},{"commit":"ed320cf0f4bb11cee1e69e9dc9176ba109df1b86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":22,"deletions":22,"files":["README.md","jc/parsers/netstat.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":20},{"name":"jc/parsers/netstat.py","lines_changed":22},{"name":"setup.py","lines_changed":2}]},"message":"change netstat pid field to integer"},{"commit":"021b6924e24e1cf0f971246244b174cd3181c0a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":254,"deletions":5,"files":["README.md","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":124},{"name":"jc/parsers/netstat.py","lines_changed":135}]},"message":"documentation updates"},{"commit":"5fb21b077662f1cb172741945ba5036e5a280638","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":8,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":8}]},"message":"remove debug print statements"},{"commit":"7b8540ae2a60f2400fe672a022ee00d1415a3500","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":7,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":26}]},"message":"netstat fixes"},{"commit":"a5e039d4c2e07d52a0797833685c562ab285b49b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":17,"deletions":7,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":24}]},"message":"netstat debugging"},{"commit":"7071f60a302b7aefb8fb312699b0abec25548986","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":66,"deletions":18,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":84}]},"message":"netstat mvp"},{"commit":"0de1dff0253eb46b7336103f62f888940406ccc0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":48}]},"message":"fix ands"},{"commit":"b3c52eb1ccf82e899dda62c332c0b217d80eb4c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":112,"deletions":40,"files":["jc/parsers/ifconfig.py","jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":150}]},"message":"add netstat parser"},{"commit":"366c5dbc010869bdb1d3b9d852e10510bd5c266f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":4}]},"message":"fix help message"},{"commit":"a3ee02514b5fbd43a38ddf515a4aad49bb4e161a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":12}]},"message":"fix imports and module names"},{"commit":"46ad1269cb58dc6f064d17eb0b04da62d8fd5fce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":3,"files":["jc/jc.py","setup.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":6},{"name":"setup.py","lines_changed":1}]},"message":"packaging fixes"},{"commit":"7234afe568818678585ac423649a0ccce0f45d68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"entrypoint fix"},{"commit":"caf480c63aacb518805d48fba0fd454959d11023","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"module fix"},{"commit":"62851b48d5e5cd673e630a28996e1c24cc45aa58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/jc.py","setup.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":12},{"name":"setup.py","lines_changed":2}]},"message":"fix modules"},{"commit":"46d6da92f0e196e150ab9dd44b1ba290c950905b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["jc/{jc => jc.py}","setup.py"],"file_stats":[{"name":"jc/{jc => jc.py}","lines_changed":0},{"name":"setup.py","lines_changed":2}]},"message":"fix entry_points"},{"commit":"e572b2edfa993c5049ef3caeda7a8e4797f0c751","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":37,"deletions":29,"files":["jc/jc","setup.py"],"file_stats":[{"name":"jc/jc","lines_changed":58},{"name":"setup.py","lines_changed":8}]},"message":"use entry_points instead of scripts"},{"commit":"72c69e7de59029d623c9819dda6aa8cae91bc419","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/jc"],"file_stats":[{"name":"jc/jc","lines_changed":12}]},"message":"fix package paths"},{"commit":"4d1565071e5cf7c38e026e08db8f4d2e79969691","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["jc/{jc.py => jc}","setup.py"],"file_stats":[{"name":"jc/{jc.py => jc}","lines_changed":0},{"name":"setup.py","lines_changed":2}]},"message":"rename jc.py to jc"},{"commit":"3652e51693d7ba829f4699fd80de20856941d82f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"fix requirements"},{"commit":"49ce9f13e817266659400a8c19f5b078a48589df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":17,"deletions":20,"files":["jc/jc.py","jc/parsers/__init__.py","setup.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/__init__.py","lines_changed":5},{"name":"setup.py","lines_changed":27}]},"message":"setup updates"},{"commit":"e83170b7ec7ed2123bfde69be263b6034c7afa53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"readme update"},{"commit":"ffb6eb754a87baad5fb0558e30a5bca1a9b9e0a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/parsers/__init__.py","setup.py"],"file_stats":[{"name":"jc/parsers/__init__.py","lines_changed":8},{"name":"setup.py","lines_changed":6}]},"message":"setup fixes"},{"commit":"2597a18d95d01109d2250487b7550a501edaf77b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"GitHub","commit_by_email":"noreply@github.com","stats":{"files_changed":1,"insertions":82,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":82}]},"message":"readme update"},{"commit":"3e576250b1bfe1c62c556f2fa0425103b0ede1f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":429,"deletions":0,"files":[".gitignore","LICENSE.md","README.md","build-package.sh","jc/__init__.py","jc/jc.py","jc/parsers/__init__.py","jc/parsers/ifconfig.py","jc/parsers/ls.py","jc/parsers/netstat.py","setup.py"],"file_stats":[{"name":".gitignore","lines_changed":6},{"name":"LICENSE.md","lines_changed":21},{"name":"README.md","lines_changed":53},{"name":"build-package.sh","lines_changed":5},{"name":"jc/__init__.py","lines_changed":61},{"name":"jc/jc.py","lines_changed":38},{"name":"jc/parsers/__init__.py","lines_changed":3},{"name":"jc/parsers/ifconfig.py","lines_changed":30},{"name":"jc/parsers/ls.py","lines_changed":130},{"name":"jc/parsers/netstat.py","lines_changed":55},{"name":"setup.py","lines_changed":27}]},"message":"First commit"}] diff --git a/tests/fixtures/generic/git-log-fuller-stat-streaming.json b/tests/fixtures/generic/git-log-fuller-stat-streaming.json index 87c924dd..6f41169b 100644 --- a/tests/fixtures/generic/git-log-fuller-stat-streaming.json +++ b/tests/fixtures/generic/git-log-fuller-stat-streaming.json @@ -1 +1 @@ -[{"commit":"096fffdb79807d34b99985b38df0a3df7f6a86c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 20 10:03:36 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 20 10:03:36 2022 -0400","stats":{"files_changed":2,"insertions":120,"deletions":36,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"]},"message":"use stat examples","epoch":1650474216,"epoch_utc":null},{"commit":"728d882ed007b3c8b785018874a0eb06e1143b66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 20 09:50:19 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 20 09:50:19 2022 -0400","stats":{"files_changed":2,"insertions":90,"deletions":12,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"]},"message":"add timestamp docs and examples","epoch":1650473419,"epoch_utc":null},{"commit":"b53e42aca623181aa9bc72194e6eeef1e9a3a237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 20 09:44:42 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 20 09:44:42 2022 -0400","stats":{"files_changed":5,"insertions":29,"deletions":6,"files":["docs/parsers/git_log.md","docs/utils.md","jc/parsers/git_log.py","jc/utils.py","man/jc.1"]},"message":"add calculated timestamp","epoch":1650473082,"epoch_utc":null},{"commit":"477329ce5b8f5c2a8e4384ba3f59289fc18c957d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 20 08:26:26 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 20 08:26:26 2022 -0400","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add linefeed to version text","epoch":1650468386,"epoch_utc":null},{"commit":"283dc4efd55030188f17c7e1dfbc5315103494b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 17:44:15 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 17:44:15 2022 -0400","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["CHANGELOG","jc/cli.py"]},"message":"add python interpreter version and path to -v and -a output","epoch":1650415455,"epoch_utc":null},{"commit":"d490bbcaa0291a691b95fa5b61807eebb0b088eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 15:26:31 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 15:26:31 2022 -0400","stats":{"files_changed":1,"insertions":26,"deletions":26,"files":["CHANGELOG"]},"message":"normalize add/update","epoch":1650407191,"epoch_utc":null},{"commit":"f49ddf8e5c5009702155fc62d83c63e3c08c594d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 15:18:04 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 15:18:04 2022 -0400","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"]},"message":"doc update","epoch":1650406684,"epoch_utc":null},{"commit":"e1e341652b51b823844e76ef7e68f9373a323435","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 15:10:40 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 15:10:40 2022 -0400","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"doc update","epoch":1650406240,"epoch_utc":null},{"commit":"ecda667549137bed5622cca69f2022e7a75ea833","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 15:10:35 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 15:10:35 2022 -0400","stats":{"files_changed":2,"insertions":12,"deletions":8,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"]},"message":"process integers","epoch":1650406235,"epoch_utc":null},{"commit":"a0d96a188a9f875b2d59625aa97d4f80bba290f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 14:45:20 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 14:45:20 2022 -0400","stats":{"files_changed":2,"insertions":5,"deletions":1,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"]},"message":"doc update","epoch":1650404720,"epoch_utc":null},{"commit":"6c0f0cddfe4dd2d5169f7c55416c6725912557f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 14:43:47 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 14:43:47 2022 -0400","stats":{"files_changed":2,"insertions":14,"deletions":1,"files":["jc/parsers/yaml.py","tests/test_yaml.py"]},"message":"fix for datetime objects in yaml files","epoch":1650404627,"epoch_utc":null},{"commit":"c7173ecd89742c8cf8a7bc4a8021baac5c3cd483","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 14:34:53 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 14:34:53 2022 -0400","stats":{"files_changed":1,"insertions":8,"deletions":6,"files":["jc/parsers/git_log.py"]},"message":"fix mypy issues","epoch":1650404093,"epoch_utc":null},{"commit":"e98240c905394e3ebd6a45fa31b6d432c150afc4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 14:20:44 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 14:20:44 2022 -0400","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/git_log.py"]},"message":"extend instead of append list","epoch":1650403244,"epoch_utc":null},{"commit":"6cb7e25974b11afe57d7d0e8550b3b1a56b14c67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 13:17:24 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 13:17:24 2022 -0400","stats":{"files_changed":3,"insertions":93,"deletions":1,"files":["README.md","docs/parsers/git_log.md","man/jc.1"]},"message":"add docs","epoch":1650399444,"epoch_utc":null},{"commit":"c37980c05c7fbd4f811ce5fcfcfddaf5f3ab5414","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 13:17:16 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 13:17:16 2022 -0400","stats":{"files_changed":1,"insertions":41,"deletions":7,"files":["jc/parsers/git_log.py"]},"message":"add stat support","epoch":1650399436,"epoch_utc":null},{"commit":"b5943bd39d776fc4c3b3dea03c0f3d4b6f4bb260","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 10:32:55 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 10:32:55 2022 -0400","stats":{"files_changed":1,"insertions":23,"deletions":10,"files":["jc/parsers/git_log.py"]},"message":"initial docstring","epoch":1650389575,"epoch_utc":null},{"commit":"49a3a7db3b2b0b292489a41691c9dcbce816cfed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 09:30:38 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 09:30:38 2022 -0400","stats":{"files_changed":2,"insertions":175,"deletions":0,"files":["jc/lib.py","jc/parsers/git_log.py"]},"message":"initial git-log parser","epoch":1650385838,"epoch_utc":null},{"commit":"0c55240e9da30ac4293cc324f1094de2abd3da91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 13 10:54:28 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 13 10:54:28 2022 -0700","stats":{"files_changed":3,"insertions":1,"deletions":0,"files":["CHANGELOG","tests/{ => templates}/_test_foo.py","tests/{ => templates}/_test_foo_s.py"]},"message":"move test templates to fix test failures on some systems","epoch":1649872468,"epoch_utc":null},{"commit":"f91988aed5499d25acf7a7e87b2b0d0cd37b62af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 12 14:22:06 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 12 14:22:06 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/lib.md"]},"message":"iterator -> iterable","epoch":1649798526,"epoch_utc":null},{"commit":"3c3ad9fc6adf865b3814a1f03814d0bc17d1c6bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 12 14:20:58 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 12 14:20:58 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"iterator -> iterable in doc","epoch":1649798458,"epoch_utc":null},{"commit":"291ab79e22a59cb31814e7a5af9dbc9f2ec863e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 12 11:07:34 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 12 11:07:34 2022 -0700","stats":{"files_changed":3,"insertions":24,"deletions":24,"files":["README.md","man/jc.1","templates/readme_template"]},"message":"fix arch linux command","epoch":1649786854,"epoch_utc":null},{"commit":"e6d5892c146762cd41a966adadb77db333d98ace","merge":"c0414e7 dcca7a5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 12 11:02:37 2022 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Apr 12 11:02:37 2022 -0700","message":"Merge pull request #226 from kellyjonbrazil/master\n\nsync to dev","epoch":1649786557,"epoch_utc":null},{"commit":"dcca7a57d558721a61fbba44f07b1d53116827e1","merge":"7138eef 4ee8a69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 12 11:00:51 2022 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Apr 12 11:00:51 2022 -0700","message":"Merge pull request #225 from adrianteri/patch-1\n\nUpdate README","epoch":1649786451,"epoch_utc":null},{"commit":"4ee8a69337b24e199983fe657643abcb0a56a8e6","author":"003","author_email":"adriateri@gmail.com","date":"Tue Apr 12 20:53:39 2022 +0300","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Apr 12 20:53:39 2022 +0300","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"Update README\n\nSpecify the Arch package is in the AUR and NOT in the standard Archlinux repositories.","epoch":1649822019,"epoch_utc":null},{"commit":"c0414e7db7f5d785b72ad616517f2ec63af151a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 17:18:20 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 10 17:18:20 2022 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["docgen.sh"]},"message":"clean up background tasks","epoch":1649636300,"epoch_utc":null},{"commit":"a419175fe6dffe9c5fd20cfbd82ee552bc82a993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 17:14:34 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 10 17:14:34 2022 -0700","stats":{"files_changed":2,"insertions":34,"deletions":17,"files":["docgen.sh","updatedocs.sh"]},"message":"enhance parallelization","epoch":1649636074,"epoch_utc":null},{"commit":"cd6dead034f3c72aebd22afeb2aea6591ae6d94d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 16:54:34 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 10 16:54:34 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"man page update","epoch":1649634874,"epoch_utc":null},{"commit":"45342ea9fea29947d8d90260c7665ffbca612cce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 16:54:22 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 10 16:54:22 2022 -0700","stats":{"files_changed":2,"insertions":16,"deletions":9,"files":["docgen.sh","updatedocs.sh"]},"message":"parallelize doc gneration","epoch":1649634862,"epoch_utc":null},{"commit":"585bf0e159c7839869cf3e458938dcc5fa2ceb81","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 10:32:51 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 10 10:32:51 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"xrandr update","epoch":1649611971,"epoch_utc":null},{"commit":"3a860b9babe93d455f68ef21436edf7470d375af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 10:31:13 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 10 10:31:13 2022 -0700","stats":{"files_changed":2,"insertions":7,"deletions":5,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"add rotation field","epoch":1649611873,"epoch_utc":null},{"commit":"269180df77f9ff953b07222e8ae790c7e7a8298e","merge":"e85f11c a1afed8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 10:19:50 2022 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Apr 10 10:19:50 2022 -0700","message":"Merge pull request #223 from anekos/fix/support-rotated-devices\n\nFix/support rotated devices","epoch":1649611190,"epoch_utc":null},{"commit":"a1afed8d95e33fbbc618c7b5778a9faeea2f628f","author":"anekos","author_email":"anekos@snca.net","date":"Sun Apr 10 18:19:29 2022 +0900","commit_by":"anekos","commit_by_email":"anekos@snca.net","commit_by_date":"Sun Apr 10 19:53:37 2022 +0900","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["docs/parsers/xrandr.md"]},"message":"doc update","epoch":1649639969,"epoch_utc":null},{"commit":"e39f150a216e4e184444dfc88a63e0f303e51631","author":"anekos","author_email":"anekos@snca.net","date":"Sun Apr 10 18:12:28 2022 +0900","commit_by":"anekos","commit_by_email":"anekos@snca.net","commit_by_date":"Sun Apr 10 19:53:37 2022 +0900","stats":{"files_changed":3,"insertions":9,"deletions":4,"files":["jc/parsers/xrandr.py","tests/fixtures/generic/xrandr_simple.json","tests/test_xrandr.py"]},"message":"Support rotated devices","epoch":1649639548,"epoch_utc":null},{"commit":"e85f11c6fcad5461bae612dd5a945c20d300e59a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 4 12:00:41 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 4 12:00:41 2022 -0700","stats":{"files_changed":4,"insertions":12,"deletions":12,"files":["docs/parsers/ini.md","docs/parsers/kv.md","jc/parsers/ini.py","jc/parsers/kv.py"]},"message":"doc formatting","epoch":1649098841,"epoch_utc":null},{"commit":"49a9d7b07e89696f2e022655d7256b7d6ad4bf7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 4 11:42:16 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 4 11:42:16 2022 -0700","stats":{"files_changed":3,"insertions":12,"deletions":8,"files":["docs/parsers/ini.md","docs/parsers/kv.md","man/jc.1"]},"message":"doc update","epoch":1649097736,"epoch_utc":null},{"commit":"a2ef9c429e4bb9f70d033511dce77ccdb9013971","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 4 11:38:52 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 4 11:38:52 2022 -0700","stats":{"files_changed":4,"insertions":38,"deletions":8,"files":["jc/parsers/ini.py","jc/parsers/kv.py","tests/test_ini.py","tests/test_kv.py"]},"message":"allow duplicate keys","epoch":1649097532,"epoch_utc":null},{"commit":"d5e9074f1c8facb3f15b8c41a008917178626978","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 4 11:38:04 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 4 11:38:04 2022 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/lib.py","setup.py"]},"message":"version bump","epoch":1649097484,"epoch_utc":null},{"commit":"774699f085d97f22ae2dab0cf64d72aa1e1709f7","merge":"789f073 7138eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 4 18:21:15 2022 +0000","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Apr 4 18:21:15 2022 +0000","message":"Merge pull request #220 from kellyjonbrazil/master\n\nsync to dev","epoch":1649121675,"epoch_utc":1649096475},{"commit":"7138eef3d137bc64286d4af453d8d4e7b3f4408d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 30 14:39:56 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 30 14:39:56 2022 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py"]},"message":"fix newline chars in doc","epoch":1648676396,"epoch_utc":null},{"commit":"fad5e544aa9e57d31473190e196f59c616901207","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 29 09:58:44 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 29 09:58:44 2022 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"]},"message":"formatting","epoch":1648573124,"epoch_utc":null},{"commit":"64757e2cf55448bccfbbd60d31930ab3f59af21b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 29 09:35:54 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 29 09:35:54 2022 -0700","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"]},"message":"doc formatting","epoch":1648571754,"epoch_utc":null},{"commit":"e05be3f08beae1b600fc55a3a7b4e28163e15bc0","merge":"ac61e9a 789f073","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 25 22:36:05 2022 +0000","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Mar 25 22:36:05 2022 +0000","message":"Merge pull request #213 from kellyjonbrazil/dev\n\nDev v1.18.6","epoch":1648272965,"epoch_utc":1648247765},{"commit":"789f0735dfd63e728b8716d97cf0c6045ede5011","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 25 15:32:37 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 25 15:32:37 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"doc update","epoch":1648247557,"epoch_utc":null},{"commit":"34bc7753174be28d6c1a00dadc662bc374e554c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 25 15:32:11 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 25 15:32:11 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"doc update","epoch":1648247531,"epoch_utc":null},{"commit":"38de059a1bc285c8681086d9fb43d0d23ac01d49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 16:58:45 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 24 16:58:45 2022 -0700","stats":{"files_changed":3,"insertions":9,"deletions":3,"files":["docs/parsers/asciitable.md","docs/parsers/universal.md","man/jc.1"]},"message":"doc update","epoch":1648166325,"epoch_utc":null},{"commit":"304ae6268f4dff6e6f901628e7ff89db1d6e0767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 16:58:39 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 24 16:58:39 2022 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/parsers/asciitable_m.py"]},"message":"minor optimization by changing the expression order","epoch":1648166319,"epoch_utc":null},{"commit":"978caf45221188a29c0e67147804f20f317c066d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 12:37:46 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 24 12:37:46 2022 -0700","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["jc/parsers/asciitable.py"]},"message":"minor optimization by reordering expressions","epoch":1648150666,"epoch_utc":null},{"commit":"17df5bfcfc25f226a2976aa7ab8a80e4aaa915c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 11:58:13 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 24 11:58:13 2022 -0700","stats":{"files_changed":2,"insertions":12,"deletions":2,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"cache _is_separator function","epoch":1648148293,"epoch_utc":null},{"commit":"5e6a5068cff71b3b30525d0a12868bdf6551456c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 11:57:01 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 24 11:57:01 2022 -0700","stats":{"files_changed":1,"insertions":6,"deletions":2,"files":["jc/parsers/universal.py"]},"message":"allow iterables for simple table parser","epoch":1648148221,"epoch_utc":null},{"commit":"619de68a61be0117e635032347dde417d77c748c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 09:39:53 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 24 09:39:53 2022 -0700","stats":{"files_changed":2,"insertions":8,"deletions":9,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"formatting","epoch":1648139993,"epoch_utc":null},{"commit":"6748c3cc91f90bddea3d07b8b30a049ee55eaf35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 09:31:12 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 24 09:31:12 2022 -0700","stats":{"files_changed":2,"insertions":65,"deletions":61,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"remove lines from corner detection and add rounded corners","epoch":1648139472,"epoch_utc":null},{"commit":"0a462978b731770d1290187a502706c2322f5f91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 23 15:08:33 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 23 15:08:33 2022 -0700","stats":{"files_changed":4,"insertions":101,"deletions":3,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py","tests/test_asciitable.py","tests/test_asciitable_m.py"]},"message":"fix for special characters in headers","epoch":1648073313,"epoch_utc":null},{"commit":"e66a82ff49b40a674f9ef373a12d59fc71bfa730","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 23 10:50:34 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 23 10:50:34 2022 -0700","stats":{"files_changed":3,"insertions":6,"deletions":5,"files":["CHANGELOG","jc/parsers/asciitable_m.py","man/jc.1"]},"message":"doc update","epoch":1648057834,"epoch_utc":null},{"commit":"f3aa797d96c8e2cef2124dbb2f49d1fadaee3fa2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 17:47:19 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 17:47:19 2022 -0700","stats":{"files_changed":2,"insertions":69,"deletions":9,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"add more pretty table separators","epoch":1647996439,"epoch_utc":null},{"commit":"e5b478218c4ba3781afd085056dba888c3f6ae02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 16:05:07 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 16:05:07 2022 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_xrandr.py"]},"message":"add quiet=True to parse tests","epoch":1647990307,"epoch_utc":null},{"commit":"35e0e9c32afbc5450c661bcb3a23904d135358ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 15:57:43 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 15:57:43 2022 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable.py"]},"message":"remove print statement","epoch":1647989863,"epoch_utc":null},{"commit":"17c3c2f029a0a47eb02d681567619d471b99949c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 15:55:59 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 15:55:59 2022 -0700","stats":{"files_changed":4,"insertions":58,"deletions":2,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py","tests/test_asciitable.py","tests/test_asciitable_m.py"]},"message":"add bold bar seperator and ANSI code tests","epoch":1647989759,"epoch_utc":null},{"commit":"cf83e6398b3314b233581eb313510872177de20a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 15:13:07 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 15:13:07 2022 -0700","stats":{"files_changed":2,"insertions":7,"deletions":0,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"add fancy separators","epoch":1647987187,"epoch_utc":null},{"commit":"94e061b881e2ed28d2b462ad038e5ba77182b6c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 14:53:34 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 14:53:34 2022 -0700","stats":{"files_changed":1,"insertions":275,"deletions":0,"files":["tests/test_asciitable.py"]},"message":"add asciitable parser tests","epoch":1647986014,"epoch_utc":null},{"commit":"720480e39ce3cc2079d7f4f5bcff2725081fec34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 13:21:10 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 13:21:10 2022 -0700","stats":{"files_changed":4,"insertions":10,"deletions":2,"files":["docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"doc update","epoch":1647980470,"epoch_utc":null},{"commit":"82a63fe15922456853aa4597aa10a5a02b20bdef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 12:42:07 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 12:42:07 2022 -0700","stats":{"files_changed":2,"insertions":6,"deletions":8,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"]},"message":"doc update","epoch":1647978127,"epoch_utc":null},{"commit":"9c1ec9940e68ce9848da20e81b8c0b7e35a215df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 12:35:56 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 12:35:56 2022 -0700","stats":{"files_changed":4,"insertions":82,"deletions":14,"files":["docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"doc update","epoch":1647977756,"epoch_utc":null},{"commit":"f23f19da453a0f7bcf70e417a10f87e27571aa43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 12:25:59 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 12:25:59 2022 -0700","stats":{"files_changed":5,"insertions":122,"deletions":9,"files":["README.md","docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py","man/jc.1"]},"message":"doc update","epoch":1647977159,"epoch_utc":null},{"commit":"aea2e1b0a9c6bb2a02a6e73889bb04e8f4f22588","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 12:25:51 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 12:25:51 2022 -0700","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["tests/test_asciitable_m.py"]},"message":"fix tests so blank strings are now None","epoch":1647977151,"epoch_utc":null},{"commit":"7d95d679bf4093ea77f30a1be55384b6dbf08341","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 12:25:24 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 12:25:24 2022 -0700","stats":{"files_changed":2,"insertions":212,"deletions":1,"files":["jc/lib.py","jc/parsers/asciitable.py"]},"message":"add asciitable parser","epoch":1647977124,"epoch_utc":null},{"commit":"b3b140066b74ee31dd1c460502caf2f26df321b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 07:21:19 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 07:21:19 2022 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py"]},"message":"doc update","epoch":1647958879,"epoch_utc":null},{"commit":"b204c423c1b947c17cb251a5dd3c444cd71dd2c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 07:05:14 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 07:05:14 2022 -0700","stats":{"files_changed":4,"insertions":193,"deletions":15,"files":["README.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py","man/jc.1"]},"message":"doc update","epoch":1647957914,"epoch_utc":null},{"commit":"d451c309bb0d8889dc09a698212bf01c2154a582","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 06:30:07 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 06:30:07 2022 -0700","stats":{"files_changed":1,"insertions":11,"deletions":8,"files":["jc/parsers/asciitable_m.py"]},"message":"change multiple or statements to any()","epoch":1647955807,"epoch_utc":null},{"commit":"01d53da68ed04b736934851137c59216ad02d8c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 19:11:27 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 21 19:11:27 2022 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable_m.py"]},"message":"remove debug print","epoch":1647915087,"epoch_utc":null},{"commit":"53dd05e52c329a15c30a756a36a165ac59ef8a14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 19:10:02 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 21 19:10:02 2022 -0700","stats":{"files_changed":2,"insertions":29,"deletions":1,"files":["jc/parsers/asciitable_m.py","tests/test_asciitable_m.py"]},"message":"fix rstrip and add tests","epoch":1647915002,"epoch_utc":null},{"commit":"ab564f5be8282f1c7ee2d602bcef398fdfd4570f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 17:57:14 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 21 17:57:14 2022 -0700","stats":{"files_changed":2,"insertions":237,"deletions":1,"files":["jc/parsers/asciitable_m.py","tests/test_asciitable_m.py"]},"message":"add tests","epoch":1647910634,"epoch_utc":null},{"commit":"00c39450f9878527b60545ad61c04cfb98f418dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 13:36:54 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 21 13:36:54 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"]},"message":"enhance type annotation","epoch":1647895014,"epoch_utc":null},{"commit":"f611d08b50219f4e573c1d1f0beae27583e76432","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 13:33:35 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 21 13:33:35 2022 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/asciitable_m.py"]},"message":"formatting","epoch":1647894815,"epoch_utc":null},{"commit":"90e79b7df3a4d5b37835fdf1c2debc1bad0a40b9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 13:27:44 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 21 13:27:44 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"]},"message":"formatting","epoch":1647894464,"epoch_utc":null},{"commit":"4eb2d725d5fe6f2cc7935c7dc891912cf7b8e940","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 13:09:50 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 21 13:09:50 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"]},"message":"formatting","epoch":1647893390,"epoch_utc":null},{"commit":"51ae5ebcac7263ef2571c11975b275eff352bbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 13:06:34 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 21 13:06:34 2022 -0700","stats":{"files_changed":1,"insertions":148,"deletions":175,"files":["jc/parsers/asciitable_m.py"]},"message":"new streamlined parser","epoch":1647893194,"epoch_utc":null},{"commit":"9ecbdb09162da4d563799aa93d422db85b2c324b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 20 10:16:29 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 20 10:16:29 2022 -0700","stats":{"files_changed":8,"insertions":35,"deletions":30,"files":["docs/parsers/mpstat_s.md","docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","docs/parsers/universal.md","jc/parsers/foo_s.py","jc/parsers/mpstat_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"]},"message":"use generator instead of iterable in function return annotation","epoch":1647796589,"epoch_utc":null},{"commit":"b3a2886fd0af0cd06890f37f1edfc6890bb83e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 20 10:12:29 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 20 10:12:29 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["docs/lib.md"]},"message":"formatting","epoch":1647796349,"epoch_utc":null},{"commit":"ceacec0f462bd7c2d9e92ddb9029ccd71aef481c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 18 16:57:47 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 18 16:57:47 2022 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable_m.py"]},"message":"remove errant os sep import","epoch":1647647867,"epoch_utc":null},{"commit":"ff0f794b01395ed9b65fac75a6b07f0772d45a2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 18 16:53:23 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 18 16:53:23 2022 -0700","stats":{"files_changed":1,"insertions":32,"deletions":10,"files":["jc/parsers/asciitable_m.py"]},"message":"working","epoch":1647647603,"epoch_utc":null},{"commit":"70fafbf3f80f35c5db2c306978b2a488adad40bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 18 14:19:00 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 18 14:19:00 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"remove asciitable so tests pass for now","epoch":1647638340,"epoch_utc":null},{"commit":"5a248a8fc58952a5eab3d4aac025d7422ba82d08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 18 13:05:57 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 18 13:05:57 2022 -0700","stats":{"files_changed":1,"insertions":344,"deletions":0,"files":["jc/parsers/asciitable_m.py"]},"message":"add multiline asciitable parser","epoch":1647633957,"epoch_utc":null},{"commit":"4a3a4e10df8a552a4db3510640695f02b166dc40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 18 13:03:43 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 18 13:03:43 2022 -0700","stats":{"files_changed":1,"insertions":3,"deletions":4,"files":["jc/lib.py"]},"message":"add asciitable and asciitable-m parsers","epoch":1647633823,"epoch_utc":null},{"commit":"c27bd5ff39f21c6377e661d4d7de1200d2fdd72f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 17 16:24:18 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 17 16:24:18 2022 -0700","stats":{"files_changed":1,"insertions":23,"deletions":16,"files":["jc/parsers/universal.py"]},"message":"pad lines in sparse_table_parse and use str.isspace()","epoch":1647559458,"epoch_utc":null},{"commit":"f804c9627fb71341429ca80aec2887e23e0277db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 15 16:04:58 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 15 16:04:58 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/universal.py"]},"message":"copy input list so we don't mutate the caller's data","epoch":1647385498,"epoch_utc":null},{"commit":"3ab25d02f9dc248706aa1105e1766b2a84bc55a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 12:30:09 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 14 12:30:09 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"use _parser_is_streaming from lib","epoch":1647286209,"epoch_utc":null},{"commit":"9e80fd2b97b9bfe38fdaa6acdf2e8ed26d34b49d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 12:17:18 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 14 12:17:18 2022 -0700","stats":{"files_changed":2,"insertions":15,"deletions":11,"files":["jc/cli.py","jc/lib.py"]},"message":"fallback if info and doc items don't exist","epoch":1647285438,"epoch_utc":null},{"commit":"ff9527a098a94c996641fb3fe2f905c8ae5e3063","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 11:35:57 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 14 11:35:57 2022 -0700","stats":{"files_changed":1,"insertions":9,"deletions":13,"files":["jc/cli.py"]},"message":"import cleanup and use all_parser_info in parsers_text","epoch":1647282957,"epoch_utc":null},{"commit":"7dac2f8dc3baf619105e3c6ca4d3e45300b86287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 10:50:10 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 14 10:50:10 2022 -0700","stats":{"files_changed":3,"insertions":23,"deletions":9,"files":["docs/lib.md","docs/readme.md","man/jc.1"]},"message":"doc update","epoch":1647280210,"epoch_utc":null},{"commit":"32e4d55e86c3e7d94488ec69f13a4f6400c4cef3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 10:46:54 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 14 10:46:54 2022 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"]},"message":"use parser_info for help_doc","epoch":1647280014,"epoch_utc":null},{"commit":"f9a9062147256d0949457cc7fde838f87202524d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 10:46:23 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 14 10:46:23 2022 -0700","stats":{"files_changed":3,"insertions":27,"deletions":10,"files":["CHANGELOG","jc/__init__.py","jc/lib.py"]},"message":"add documentation argument to parser_info and all_parser_info","epoch":1647279983,"epoch_utc":null},{"commit":"89e5919796f7da585285901dca461aae21336415","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 09:56:50 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 14 09:56:50 2022 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/mpstat_s.md","jc/parsers/mpstat_s.py"]},"message":"add -A to second example","epoch":1647277010,"epoch_utc":null},{"commit":"e5f5b2591d8ac3abeb9571688c7fb8de34d647f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 09:45:17 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 14 09:45:17 2022 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update","epoch":1647276317,"epoch_utc":null},{"commit":"77c667eec045daff5cbd062fe9d6e83f237727e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 09:43:18 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 14 09:43:18 2022 -0700","stats":{"files_changed":9,"insertions":67,"deletions":6,"files":["docs/parsers/mpstat.md","docs/parsers/mpstat_s.md","jc/parsers/mpstat.py","jc/parsers/mpstat_s.py","tests/fixtures/ubuntu-18.04/mpstat-A-streaming.json","tests/fixtures/ubuntu-18.04/mpstat-A.json","tests/fixtures/ubuntu-18.04/mpstat-A.out","tests/test_mpstat.py","tests/test_mpstat_s.py"]},"message":"ubuntu fixes","epoch":1647276198,"epoch_utc":null},{"commit":"b257ce8c2fe6825fe435b4d04b4184091030db10","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 13 12:25:50 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 13 12:25:50 2022 -0700","stats":{"files_changed":4,"insertions":65,"deletions":0,"files":[".../centos-7.7/mpstat-A-2-5-streaming.json","tests/fixtures/centos-7.7/mpstat-A-streaming.json","tests/fixtures/centos-7.7/mpstat-streaming.json","tests/test_mpstat_s.py"]},"message":"add mpstat_s tests","epoch":1647199550,"epoch_utc":null},{"commit":"c693c868cacbcd81f44fd383719723dd7a137c87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 15:59:38 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 11 15:59:38 2022 -0800","stats":{"files_changed":7,"insertions":352,"deletions":0,"files":["README.md","docs/parsers/mpstat.md","docs/parsers/mpstat_s.md","jc/lib.py","jc/parsers/mpstat.py","jc/parsers/mpstat_s.py","man/jc.1"]},"message":"add mpstat streaming parser","epoch":1647043178,"epoch_utc":null},{"commit":"6f98b27a05d6e1f7571a97316b193f096521b959","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 15:33:31 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 11 15:33:31 2022 -0800","stats":{"files_changed":7,"insertions":168,"deletions":0,"files":["tests/fixtures/centos-7.7/mpstat-A-2-5.json","tests/fixtures/centos-7.7/mpstat-A-2-5.out","tests/fixtures/centos-7.7/mpstat-A.json","tests/fixtures/centos-7.7/mpstat-A.out","tests/fixtures/centos-7.7/mpstat.json","tests/fixtures/centos-7.7/mpstat.out","tests/test_mpstat.py"]},"message":"add mpstat tests","epoch":1647041611,"epoch_utc":null},{"commit":"d7efd25d88a8f489564ce48223845a16e4ab1cc7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 14:54:06 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 11 14:54:06 2022 -0800","stats":{"files_changed":4,"insertions":207,"deletions":1,"files":["EXAMPLES.md","README.md","docs/parsers/mpstat.md","man/jc.1"]},"message":"add mpstat to docs","epoch":1647039246,"epoch_utc":null},{"commit":"2cddb1f0bb497be0be071cdcb56bf49d2dafc920","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 14:00:19 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 11 14:00:19 2022 -0800","stats":{"files_changed":1,"insertions":94,"deletions":15,"files":["jc/parsers/mpstat.py"]},"message":"working mpstat","epoch":1647036019,"epoch_utc":null},{"commit":"ae1c331595dd857d8ae7f8cf93daee1b26be2c3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 13:15:39 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 11 13:15:39 2022 -0800","stats":{"files_changed":1,"insertions":30,"deletions":5,"files":["jc/parsers/mpstat.py"]},"message":"initial working version","epoch":1647033339,"epoch_utc":null},{"commit":"bc97052ed4ee3bf3f25127968139f2e89a659fe3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 12:37:17 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 11 12:37:17 2022 -0800","stats":{"files_changed":3,"insertions":109,"deletions":0,"files":["CHANGELOG","jc/lib.py","jc/parsers/mpstat.py"]},"message":"initial add mpstat parser","epoch":1647031037,"epoch_utc":null},{"commit":"6c3e0e2aa0e8cc375d9f7473930b18957d33f1aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 12:37:01 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 11 12:37:01 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"formatting","epoch":1647031021,"epoch_utc":null},{"commit":"dd052e01469e9e3328f7326d3591365a8e7322eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 10:25:24 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 11 10:25:24 2022 -0800","stats":{"files_changed":2,"insertions":26,"deletions":24,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"add underscores to column examples","epoch":1647023124,"epoch_utc":null},{"commit":"54e8f58145f6c4332fbd375d112259ea7abb2d72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 16:50:55 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 16:50:55 2022 -0800","stats":{"files_changed":2,"insertions":28,"deletions":2,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"add table result examples","epoch":1646959855,"epoch_utc":null},{"commit":"def7aa5764e69cd0cf2c5b70aa62c62023f76c9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 15:36:11 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 15:36:11 2022 -0800","stats":{"files_changed":2,"insertions":16,"deletions":16,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"formatting","epoch":1646955371,"epoch_utc":null},{"commit":"6986c74f6dceca907ea2e469a332deeb093a122c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 15:18:27 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 15:18:27 2022 -0800","stats":{"files_changed":169,"insertions":34,"deletions":837,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/pidstat.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/nmcli.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/pidstat.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/xrandr.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py"]},"message":"remove direct parser module example from doc","epoch":1646954307,"epoch_utc":null},{"commit":"b784db404d0569a4c630eb124b37b0b1d0846453","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 13:32:26 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 13:32:26 2022 -0800","stats":{"files_changed":17,"insertions":87,"deletions":166,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/pidstat_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/pidstat_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"]},"message":"streaming doc formatting update","epoch":1646947946,"epoch_utc":null},{"commit":"8aee4517bb4c2eebdd9873f7eb0827cd33b85519","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 13:02:50 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 13:02:50 2022 -0800","stats":{"files_changed":2,"insertions":12,"deletions":26,"files":["docs/parsers/pidstat_s.md","jc/parsers/pidstat_s.py"]},"message":"doc formatting","epoch":1646946170,"epoch_utc":null},{"commit":"a5fb8fbf94b3b80bef82f078ad6582260b13e374","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 10:10:57 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 10:10:57 2022 -0800","stats":{"files_changed":17,"insertions":164,"deletions":148,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/pidstat_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/pidstat_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"]},"message":"streaming doc update","epoch":1646935857,"epoch_utc":null},{"commit":"b9365e2ac28c3eacf53bc101857f7f1d7286ec20","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 09:23:36 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 09:23:36 2022 -0800","stats":{"files_changed":4,"insertions":74,"deletions":0,"files":[".../centos-7.7/pidstat-hdlrsuw-2-5-streaming.json",".../centos-7.7/pidstat-hdlrsuw-streaming.json",".../fixtures/centos-7.7/pidstat-hl-streaming.json","tests/test_pidstat_s.py"]},"message":"add pidstat-s tests","epoch":1646933016,"epoch_utc":null},{"commit":"696338c1a3d462afbe677a6f2ebe08d06ef4046a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 09:04:12 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 09:04:12 2022 -0800","stats":{"files_changed":1,"insertions":38,"deletions":0,"files":["tests/_test_foo_s.py"]},"message":"add streaming test template","epoch":1646931852,"epoch_utc":null},{"commit":"4f0616190bb842411353d65650b78a65d8cbdc28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 08:14:58 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 08:14:58 2022 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","man/jc.1"]},"message":"doc update","epoch":1646928898,"epoch_utc":null},{"commit":"3278cb0de301ee542b1fe8245a6c359193373b6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 08:14:46 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 08:14:46 2022 -0800","stats":{"files_changed":2,"insertions":15,"deletions":10,"files":["docs/parsers/arp.md","jc/parsers/arp.py"]},"message":"add type hints","epoch":1646928886,"epoch_utc":null},{"commit":"4fc04256a567c502a88ac8a1bd189746387c93f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 08:00:37 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 08:00:37 2022 -0800","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["jc/parsers/foo_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"]},"message":"rollback noReturn to tuple","epoch":1646928037,"epoch_utc":null},{"commit":"e4ae0fea63c0386c1b3239607fd6a58738d23633","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 16:28:55 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 16:28:55 2022 -0800","stats":{"files_changed":5,"insertions":8,"deletions":8,"files":["docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","jc/parsers/foo_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"]},"message":"fix type annotation","epoch":1646872135,"epoch_utc":null},{"commit":"d3727ea0906d6167aa48c340519242b010469d98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 16:09:35 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 16:09:35 2022 -0800","stats":{"files_changed":4,"insertions":99,"deletions":1,"files":["CHANGELOG","README.md","docs/parsers/pidstat_s.md","man/jc.1"]},"message":"doc update","epoch":1646870975,"epoch_utc":null},{"commit":"0d13909cf63d14008607c5640d074ab4073115e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 16:07:29 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 16:07:29 2022 -0800","stats":{"files_changed":2,"insertions":168,"deletions":0,"files":["jc/lib.py","jc/parsers/pidstat_s.py"]},"message":"add pidstat-s parser","epoch":1646870849,"epoch_utc":null},{"commit":"c52ca20e285895d2afb685a2a5ca275de7901033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 16:07:17 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 16:07:17 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/pidstat.py"]},"message":"fix comment","epoch":1646870837,"epoch_utc":null},{"commit":"21f27f26c81c75234221a5193c7d3903323e2032","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 15:37:10 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 15:37:10 2022 -0800","stats":{"files_changed":4,"insertions":72,"deletions":0,"files":["tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.json","tests/fixtures/centos-7.7/pidstat-hdlrsuw.json","tests/fixtures/centos-7.7/pidstat-hl.json","tests/test_pidstat.py"]},"message":"add pidstat tests","epoch":1646869030,"epoch_utc":null},{"commit":"5e7a87f39782d12070a895440ff541800df91b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 15:37:04 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 15:37:04 2022 -0800","stats":{"files_changed":1,"insertions":35,"deletions":0,"files":["tests/_test_foo.py"]},"message":"add test template","epoch":1646869024,"epoch_utc":null},{"commit":"845d763829acd03fff1d2fad6e9691f04bd1a2aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 15:09:22 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 15:09:22 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/pidstat.md","jc/parsers/pidstat.py"]},"message":"format docs to fit 80 columns","epoch":1646867362,"epoch_utc":null},{"commit":"f5c7d52ec72f5ff4b77d5ac4491f330575b9f10f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 14:43:56 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 14:43:56 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":10,"files":["man/jc.1","templates/manpage_template"]},"message":"formatting","epoch":1646865836,"epoch_utc":null},{"commit":"c3198a58744803f52113f80967c7259d781e2328","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 14:17:48 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 14:17:48 2022 -0800","stats":{"files_changed":2,"insertions":22,"deletions":12,"files":["man/jc.1","templates/manpage_template"]},"message":"formatting","epoch":1646864268,"epoch_utc":null},{"commit":"bbd4afa73542ba6596aed77426bb494fbcf23196","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 14:09:58 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 14:09:58 2022 -0800","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["README.md","man/jc.1"]},"message":"add pidstat to docs","epoch":1646863798,"epoch_utc":null},{"commit":"ae754a84bf5fc35b248bbc5f7b0fa8e871765819","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 14:06:34 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 14:06:34 2022 -0800","stats":{"files_changed":3,"insertions":263,"deletions":33,"files":["docs/parsers/arp.md","docs/parsers/pidstat.md","jc/parsers/pidstat.py"]},"message":"doc update","epoch":1646863594,"epoch_utc":null},{"commit":"3389eb5debe0f0ba01ece01e20048608bf357e70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 13:18:04 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 13:18:04 2022 -0800","stats":{"files_changed":4,"insertions":219,"deletions":9,"files":["jc/parsers/pidstat.py","tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.out","tests/fixtures/centos-7.7/pidstat-hdlrsuw.out","tests/fixtures/centos-7.7/pidstat-hl.out"]},"message":"initial working parser","epoch":1646860684,"epoch_utc":null},{"commit":"01f2c1e71f87ab401d487be4d6d150cb67c91437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 12:13:32 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 12:13:32 2022 -0800","stats":{"files_changed":5,"insertions":162,"deletions":2,"files":["CHANGELOG","jc/lib.py","jc/parsers/pidstat.py","setup.py","tests/fixtures/centos-7.7/pidstat.out"]},"message":"add pidstat parser","epoch":1646856812,"epoch_utc":null},{"commit":"8bfbf8f1bcd233a8ecd34012e140eb29164ca5fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 12:13:07 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 12:13:07 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"simplify error message","epoch":1646856787,"epoch_utc":null},{"commit":"f4242669bac3af5eb196c46d4146823aacec40ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 10:52:40 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 10:52:40 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":10,"files":["jc/parsers/arp.py"]},"message":"minor cleanup","epoch":1646851960,"epoch_utc":null},{"commit":"bebd9331f1fb9b80f8cb4a5cfacd68461743004e","merge":"9861983 ac61e9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 18:49:01 2022 +0000","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 9 18:49:01 2022 +0000","message":"Merge pull request #211 from kellyjonbrazil/master\n\nsync to dev","epoch":1646880541,"epoch_utc":1646851741},{"commit":"ac61e9ad2c9c4e864db02db04cbf907fb0efd99b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 8 13:21:05 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 8 13:21:05 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add pypi link","epoch":1646774465,"epoch_utc":null},{"commit":"648ef4d8a9c33a36d4bb2c135fe59b031de8f24c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 8 13:19:20 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 8 13:19:20 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"update badge links","epoch":1646774360,"epoch_utc":null},{"commit":"727fc9a701e9aae75d3d2b708010da1d0dc8781a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 15:19:25 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Mar 5 15:19:25 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/date.md","man/jc.1"]},"message":"doc update","epoch":1646522365,"epoch_utc":null},{"commit":"306512d6bb53af18516fc10b15c7ec79cb02cc98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 15:13:47 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Mar 5 15:13:47 2022 -0800","stats":{"files_changed":4,"insertions":7,"deletions":4,"files":["CHANGELOG","jc/lib.py","jc/parsers/date.py","setup.py"]},"message":"force AM/PM to uppercase in date parser","epoch":1646522027,"epoch_utc":null},{"commit":"6afb1d389ca9dfd7880386d380fee032b7eb92e2","merge":"961968a 9861983","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 21:49:36 2022 +0000","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sat Mar 5 21:49:36 2022 +0000","message":"Merge pull request #209 from kellyjonbrazil/dev\n\nDev v1.18.4","epoch":1646545776,"epoch_utc":1646516976},{"commit":"98619834818c181cb50a9605fe166b6153c46095","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 13:45:28 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Mar 5 13:45:28 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"doc update","epoch":1646516728,"epoch_utc":null},{"commit":"ca79053db08542849136ae13fdb4d1d90b79a7e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 12:15:47 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Mar 5 12:15:47 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docgen.sh"]},"message":"document pydoc version","epoch":1646511347,"epoch_utc":null},{"commit":"29c263f87810f8566ebdad2358e99896391adfd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 12:15:14 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Mar 5 12:15:14 2022 -0800","stats":{"files_changed":93,"insertions":115,"deletions":115,"files":["docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/streaming.md","docs/utils.md"]},"message":"pydoc formatting fixes","epoch":1646511314,"epoch_utc":null},{"commit":"128c3c170abc6a702ae044b073fb9d992d4262b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 16:38:49 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 4 16:38:49 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"doc update","epoch":1646440729,"epoch_utc":null},{"commit":"a531ab8864fca27b55d83b55055eaef1c36128cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 16:35:06 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 4 16:35:06 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting","epoch":1646440506,"epoch_utc":null},{"commit":"0c1be7cc11ec75a5738483d68d053e702eb34fc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 16:29:36 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 4 16:29:36 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":18,"files":["README.md","templates/readme_template"]},"message":"reduce dig example size","epoch":1646440176,"epoch_utc":null},{"commit":"e4222b45f54e6179e22d7924c083e4642b9974ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 16:24:13 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 4 16:24:13 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/lib.py"]},"message":"fix names to mod names","epoch":1646439853,"epoch_utc":null},{"commit":"ac32c69c31e8eff22252d7aded08f6cb14622086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 13:35:16 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 4 13:35:16 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"formatting","epoch":1646429716,"epoch_utc":null},{"commit":"cb2dfeac8d44b733ad9d364e8c6d233a381bfae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 13:27:39 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 4 13:27:39 2022 -0800","stats":{"files_changed":199,"insertions":334,"deletions":326,"files":["README.md","docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/streaming.md","docs/utils.md","jc/__init__.py","jc/cli.py","jc/exceptions.py","jc/lib.py","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat_freebsd_osx.py","jc/parsers/netstat_linux.py","jc/parsers/nmcli.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/xrandr.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py","jc/streaming.py","jc/utils.py","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"change name to JSON Convert","epoch":1646429259,"epoch_utc":null},{"commit":"9a3602e70b865a3015bd700b30d1076e17511a9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 08:57:11 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 4 08:57:11 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/lib.md","jc/lib.py"]},"message":"doc update","epoch":1646413031,"epoch_utc":null},{"commit":"a9f53ee258e18bc90934e263d8dc96feee84e939","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 3 17:50:19 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 3 17:50:19 2022 -0800","stats":{"files_changed":2,"insertions":15,"deletions":4,"files":["jc/cli.py","jc/lib.py"]},"message":"optimize streaming parser detection in cli","epoch":1646358619,"epoch_utc":null},{"commit":"6be3d3d98222a262c5138bb09f2951ccfab96110","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 3 17:38:47 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 3 17:38:47 2022 -0800","stats":{"files_changed":3,"insertions":43,"deletions":1,"files":["CHANGELOG","docs/lib.md","docs/readme.md"]},"message":"doc update","epoch":1646357927,"epoch_utc":null},{"commit":"e49df7208377ab34a74240a06f35f17fee4b8203","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 3 17:37:01 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 3 17:37:01 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"use streaming parser list to find streaming parsers","epoch":1646357821,"epoch_utc":null},{"commit":"7ede7be7bf7b1a7d29d158b3b21c20fff4990e72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 3 17:36:40 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 3 17:36:40 2022 -0800","stats":{"files_changed":2,"insertions":42,"deletions":0,"files":["jc/__init__.py","jc/lib.py"]},"message":"add standard and streaming list functions","epoch":1646357800,"epoch_utc":null},{"commit":"4758e28a36e2a55497e4f722d386a6b5cc30dc4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 2 15:24:18 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 2 15:24:18 2022 -0800","stats":{"files_changed":2,"insertions":20,"deletions":16,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting","epoch":1646263458,"epoch_utc":null},{"commit":"4a1ee151b3cb054d84cd964fd62f5855f765751d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 2 10:57:09 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 2 10:57:09 2022 -0800","stats":{"files_changed":2,"insertions":9,"deletions":11,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py"]},"message":"add dhcp6 options to docs","epoch":1646247429,"epoch_utc":null},{"commit":"8c8afc1a922e3c30fcf501d169b33a68b65cd3e0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 2 10:15:01 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 2 10:15:01 2022 -0800","stats":{"files_changed":2,"insertions":60,"deletions":24,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting","epoch":1646244901,"epoch_utc":null},{"commit":"ed205f7720d98c225c917c252ed7a6c9e6e8c2b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 28 12:55:05 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 28 12:55:05 2022 -0800","stats":{"files_changed":3,"insertions":9,"deletions":9,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py","man/jc.1"]},"message":"doc update","epoch":1646081705,"epoch_utc":null},{"commit":"d65f7ae992abc33140c00714d442290103661757","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 28 12:26:06 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 28 12:26:06 2022 -0800","stats":{"files_changed":1,"insertions":41,"deletions":0,"files":["EXAMPLES.md"]},"message":"add nmcli","epoch":1646079966,"epoch_utc":null},{"commit":"e2ffef57b9a474048fe72cf42aebfa6bfaf2e42b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 28 12:20:39 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 28 12:20:39 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_nmcli.py"]},"message":"fix test","epoch":1646079639,"epoch_utc":null},{"commit":"002caa9fb3b65f1ae64df25cc39c3de130403e76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 28 12:19:02 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 28 12:19:02 2022 -0800","stats":{"files_changed":7,"insertions":252,"deletions":0,"files":[".../fedora32/nmcli-connection-show-ens33.json",".../fedora32/nmcli-connection-show-ens33.out",".../fixtures/fedora32/nmcli-device-show-ens33.json",".../fixtures/fedora32/nmcli-device-show-ens33.out","tests/fixtures/fedora32/nmcli-device-show.json","tests/fixtures/fedora32/nmcli-device-show.out","tests/test_nmcli.py"]},"message":"add fedora tests","epoch":1646079542,"epoch_utc":null},{"commit":"b7c6faf3daf8eb0c42a222778baa440c5a018c75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 25 11:23:20 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 25 11:23:20 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"enhance error message","epoch":1645817000,"epoch_utc":null},{"commit":"554ca61d1764b81dea06b6b013d0444072f0662a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 25 11:19:20 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 25 11:19:20 2022 -0800","stats":{"files_changed":11,"insertions":165,"deletions":0,"files":[".../fixtures/centos-7.7/nmcli-connection-all.json",".../centos-7.7/nmcli-connection-show-ens33.json","tests/fixtures/centos-7.7/nmcli-connection.json","tests/fixtures/centos-7.7/nmcli-device-all.json",".../centos-7.7/nmcli-device-show-ens33.json",".../fixtures/centos-7.7/nmcli-device-show-lo.json","tests/fixtures/centos-7.7/nmcli-device-show.json","tests/fixtures/centos-7.7/nmcli-device.json","tests/fixtures/centos-7.7/nmcli-general-all.json",".../centos-7.7/nmcli-general-permissions.json","tests/test_nmcli.py"]},"message":"add tests","epoch":1645816760,"epoch_utc":null},{"commit":"7b9722d255a16981099dc803beda7abe0d46106a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 21:21:02 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 21:21:02 2022 -0800","stats":{"files_changed":2,"insertions":26,"deletions":34,"files":["man/jc.1","templates/manpage_template"]},"message":"fix formatting","epoch":1645766462,"epoch_utc":null},{"commit":"5505bde8ef77db0885f08d8d04160cbc4418dd67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:53:54 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 20:53:54 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/zipinfo.md"]},"message":"doc update","epoch":1645764834,"epoch_utc":null},{"commit":"dbcd9a4060647be24bca2a8d577f11925a9ac210","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:52:28 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 20:52:28 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/zipinfo.py"]},"message":"bump version to 1.0","epoch":1645764748,"epoch_utc":null},{"commit":"4bdeb2b3aa063c2772f5c44e52acbe16e915cc3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:52:18 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 20:52:18 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/xrandr.py"]},"message":"simplify warning message","epoch":1645764738,"epoch_utc":null},{"commit":"6ae1d03187c6d4b669f6f74db1be7c9cf07adaed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:47:15 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 20:47:15 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py"]},"message":"doc fix","epoch":1645764435,"epoch_utc":null},{"commit":"f75b06abe4af152be094f8bc1ba5ce66b25e35e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:43:20 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 20:43:20 2022 -0800","stats":{"files_changed":4,"insertions":180,"deletions":3,"files":["README.md","docs/parsers/nmcli.md","jc/parsers/nmcli.py","man/jc.1"]},"message":"doc update","epoch":1645764200,"epoch_utc":null},{"commit":"1923925710dadc4116202855ae884ef18394d428","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:35:00 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 20:35:00 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["CHANGELOG"]},"message":"update changelog","epoch":1645763700,"epoch_utc":null},{"commit":"2c5c57ae04df3b7abfb1c3423c3350c7c2ab5dcd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:33:10 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 20:33:10 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/lib.py","setup.py"]},"message":"version bump","epoch":1645763590,"epoch_utc":null},{"commit":"f4d11d697e000135720a971edf84dcad31a1bec8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:31:58 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 20:31:58 2022 -0800","stats":{"files_changed":1,"insertions":155,"deletions":15,"files":["jc/parsers/nmcli.py"]},"message":"finish use cases and doc","epoch":1645763518,"epoch_utc":null},{"commit":"7f409b7082aa9525cc9280e3c5c92bc82089cf14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:31:09 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 20:31:09 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"enhance ParseError cli message","epoch":1645763469,"epoch_utc":null},{"commit":"937fa5aad2519f588c6d0feb8f08211f6b99872f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 18:22:19 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 18:22:19 2022 -0800","stats":{"files_changed":1,"insertions":20,"deletions":0,"files":["jc/parsers/nmcli.py"]},"message":"split dhcp options","epoch":1645755739,"epoch_utc":null},{"commit":"19dcef513565c34a31f6d735577da5e25f9bd2cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 17:10:39 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 17:10:39 2022 -0800","stats":{"files_changed":1,"insertions":69,"deletions":2,"files":["jc/parsers/nmcli.py"]},"message":"firm up flow. add/remove text. parse routes","epoch":1645751439,"epoch_utc":null},{"commit":"3d01356461eb2790f859968da7f5cb4fd2ee9898","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 14:53:26 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 14:53:26 2022 -0800","stats":{"files_changed":1,"insertions":27,"deletions":3,"files":["jc/parsers/nmcli.py"]},"message":"add text_kv function","epoch":1645743206,"epoch_utc":null},{"commit":"2d6f666fa4c791e7995f6b0c1490dac73ce224c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 12:21:13 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 12:21:13 2022 -0800","stats":{"files_changed":1,"insertions":61,"deletions":16,"files":["jc/parsers/nmcli.py"]},"message":"add dev show and conn show parsers","epoch":1645734073,"epoch_utc":null},{"commit":"4dda895f122ecc19b267ed1485cf656bae76ff07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 11:25:14 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 11:25:14 2022 -0800","stats":{"files_changed":13,"insertions":404,"deletions":0,"files":["jc/lib.py","jc/parsers/nmcli.py","tests/fixtures/centos-7.7/nmcli-connection-all.out",".../centos-7.7/nmcli-connection-show-ens33.out","tests/fixtures/centos-7.7/nmcli-connection.out","tests/fixtures/centos-7.7/nmcli-device-all.out",".../centos-7.7/nmcli-device-show-ens33.out","tests/fixtures/centos-7.7/nmcli-device-show-lo.out","tests/fixtures/centos-7.7/nmcli-device-show.out","tests/fixtures/centos-7.7/nmcli-device.out","tests/fixtures/centos-7.7/nmcli-general-all.out",".../centos-7.7/nmcli-general-permissions.out","tests/fixtures/centos-7.7/nmcli.out"]},"message":"initial nmcli parser","epoch":1645730714,"epoch_utc":null},{"commit":"52617b1722ba2f089716b069f78f70a865430d61","merge":"3afaa48 961968a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 21 16:35:12 2022 +0000","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Feb 21 16:35:12 2022 +0000","message":"Merge pull request #208 from kellyjonbrazil/master\n\nsync to dev","epoch":1645490112,"epoch_utc":1645461312},{"commit":"961968a0fcaf37b64bc850c4945ba4b805a1fe54","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 15:14:22 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 14 15:14:22 2022 -0800","stats":{"files_changed":2,"insertions":26,"deletions":23,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"fix schema","epoch":1644880462,"epoch_utc":null},{"commit":"f026a788e5ca1231927e71fdbb1dadb2365a6518","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 11:30:03 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 14 11:30:03 2022 -0800","stats":{"files_changed":1,"insertions":62,"deletions":0,"files":["EXAMPLES.md"]},"message":"add xrandr example","epoch":1644867003,"epoch_utc":null},{"commit":"2f7c03eb35520be916c28a687031f8c6425839ba","merge":"681176e 3afaa48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 10:36:08 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Feb 14 10:36:08 2022 -0800","message":"Merge pull request #207 from kellyjonbrazil/dev\n\nDev v1.18.3","epoch":1644863768,"epoch_utc":null},{"commit":"3afaa48eee081e28262d1762c5ec23d318012822","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 10:31:41 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 14 10:31:41 2022 -0800","stats":{"files_changed":15,"insertions":15,"deletions":15,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"]},"message":"doc update","epoch":1644863501,"epoch_utc":null},{"commit":"3201452564fb0fb44ef9cc32217339370bd2521e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 10:06:09 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 14 10:06:09 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"add -p to example","epoch":1644861969,"epoch_utc":null},{"commit":"7ee1e34fc71c0dbc08ba482b787d560fd5125f64","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 10:03:52 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 14 10:03:52 2022 -0800","stats":{"files_changed":2,"insertions":116,"deletions":4,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"doc update","epoch":1644861832,"epoch_utc":null},{"commit":"67dbf050161201f5016899591e81ab6253ac2322","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 09:58:31 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 14 09:58:31 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"add type annotations","epoch":1644861511,"epoch_utc":null},{"commit":"4ac9f2e3dad4e7bd270bf5a8e61b729838b2c89c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 09:37:37 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 14 09:37:37 2022 -0800","stats":{"files_changed":5,"insertions":10,"deletions":17,"files":["CHANGELOG","docs/parsers/rsync.md","docs/parsers/rsync_s.md","jc/parsers/rsync.py","jc/parsers/rsync_s.py"]},"message":"doc update","epoch":1644860257,"epoch_utc":null},{"commit":"3f5f6e39a777ef524cb3a06a01321bb8c31d930d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 09:20:16 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 14 09:20:16 2022 -0800","stats":{"files_changed":2,"insertions":100,"deletions":98,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"formatting","epoch":1644859216,"epoch_utc":null},{"commit":"4723db8e3cc4946b14c83b25d6e8c6d2309aa72e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 09:14:46 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 14 09:14:46 2022 -0800","stats":{"files_changed":8,"insertions":195,"deletions":77,"files":["README.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/xrandr.md","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/xrandr.py","man/jc.1"]},"message":"doc updates","epoch":1644858886,"epoch_utc":null},{"commit":"ca914ec77d1fc77e42860189e62ac2fb203d4931","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 09:14:38 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 14 09:14:38 2022 -0800","stats":{"files_changed":1,"insertions":11,"deletions":2,"files":["tests/test_xrandr.py"]},"message":"add nodata test","epoch":1644858878,"epoch_utc":null},{"commit":"dcc7f3f357ef016b4583fc1320fd2394788f271f","merge":"184ef3a cbdc666","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Feb 13 17:45:53 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Feb 13 17:45:53 2022 -0800","message":"Merge pull request #204 from lyterk/xrandr\n\nNew parser: xrandr","epoch":1644803153,"epoch_utc":null},{"commit":"cbdc66623671da335eafe132b7af79f884856f1d","author":"Kevin Lyter","author_email":"lyterk@sent.com","date":"Wed Feb 9 21:50:07 2022 -0800","commit_by":"Kevin Lyter","commit_by_email":"lyterk@sent.com","commit_by_date":"Wed Feb 9 22:06:23 2022 -0800","stats":{"files_changed":3,"insertions":2,"deletions":30,"files":["jc/parsers/xrandr.py",".../{simple_xrandr.json => xrandr_simple.json}",".../{simple_xrandr.out => xrandr_simple.out}"]},"message":"Return empty object if no results and filenames\n\n- If no results are returned, return {} instead of {\"screens\": [],\n\"unassociated_devices\": []}\n- simple_xrandr -> xrandr_simple","epoch":1644472207,"epoch_utc":null},{"commit":"184ef3a1faeb406ce62076cff637ee86d61541fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 8 14:45:33 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 8 14:45:33 2022 -0800","stats":{"files_changed":3,"insertions":11,"deletions":3,"files":["docs/parsers/rsync.md","docs/parsers/rsync_s.md","man/jc.1"]},"message":"doc update","epoch":1644360333,"epoch_utc":null},{"commit":"c732f759445e335fe36586859b6fde7e27bb8901","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 8 14:43:14 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 8 14:43:14 2022 -0800","stats":{"files_changed":2,"insertions":10,"deletions":2,"files":["jc/parsers/rsync.py","jc/parsers/rsync_s.py"]},"message":"doc update","epoch":1644360194,"epoch_utc":null},{"commit":"7a1ae4f5fc5328c32bf77235cfbd9f83ec995053","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 8 13:32:22 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 8 13:32:22 2022 -0800","stats":{"files_changed":3,"insertions":105,"deletions":0,"files":["tests/{test_lib.py => test_jc_lib.py}","tests/test_jc_streaming.py","tests/{test_utils.py => test_jc_utils.py}"]},"message":"add library tests","epoch":1644355942,"epoch_utc":null},{"commit":"d04bc3757c482ec9062b2da91ded76c5dd6d106b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 8 07:33:26 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 8 07:33:26 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add xrandr","epoch":1644334406,"epoch_utc":null},{"commit":"73e8391653145412cd852aca349466018c8b9084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 16:58:06 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 7 16:58:06 2022 -0800","stats":{"files_changed":1,"insertions":8,"deletions":3,"files":["jc/utils.py"]},"message":"formatting","epoch":1644281886,"epoch_utc":null},{"commit":"f6c1463c1578db264ccb3d4c2677857ed906e965","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 16:31:43 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 7 16:31:43 2022 -0800","stats":{"files_changed":1,"insertions":44,"deletions":24,"files":["jc/cli.py"]},"message":"formatting","epoch":1644280303,"epoch_utc":null},{"commit":"d392c7f901a9d7c57617fbd03bd3f88ee0bf4132","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 15:44:54 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 7 15:44:54 2022 -0800","stats":{"files_changed":12,"insertions":20,"deletions":13,"files":["docs/parsers/date.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/ls.md","docs/parsers/rpm_qi.md","docs/parsers/stat.md","docs/parsers/systeminfo.md","docs/parsers/timedatectl.md","docs/parsers/upower.md","docs/parsers/vmstat.md","docs/parsers/who.md","docs/utils.md"]},"message":"doc update","epoch":1644277494,"epoch_utc":null},{"commit":"d0387f58205b2fd9b9860ce9656bb29ceec54340","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 15:44:46 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 7 15:44:46 2022 -0800","stats":{"files_changed":16,"insertions":34,"deletions":29,"files":["jc/parsers/date.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/systeminfo.py","jc/parsers/timedatectl.py","jc/parsers/upower.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/who.py"]},"message":"add timestamp format hints for better performance","epoch":1644277486,"epoch_utc":null},{"commit":"76f92908a3ba9cbadcc8e972afa8b1c4a69509bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 15:43:24 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 7 15:43:24 2022 -0800","stats":{"files_changed":1,"insertions":44,"deletions":9,"files":["jc/utils.py"]},"message":"add format hints for performance optimization","epoch":1644277404,"epoch_utc":null},{"commit":"1a115da67bdce9acfefbfb71fbac37e234b1babd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 08:34:34 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 7 08:34:34 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"add lru_cache maxsize for python 3.7 support","epoch":1644251674,"epoch_utc":null},{"commit":"f0a37ccf301eee5133a83b5dd96986fef0c38e7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 08:30:11 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 7 08:30:11 2022 -0800","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/utils.py"]},"message":"use lru_cache for significant performance boost to timestamp","epoch":1644251411,"epoch_utc":null},{"commit":"f331f53a531169520a4d8ea15d277560a49aedb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 08:06:48 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 7 08:06:48 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["CHANGELOG","jc/utils.py"]},"message":"use !r formatting instead of quotes","epoch":1644250008,"epoch_utc":null},{"commit":"8611aff06b18212b7292d564beb27a2062fc3f41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 06:42:35 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 7 06:42:35 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/parsers/rsync_s.md","jc/parsers/rsync_s.py"]},"message":"add examples","epoch":1644244955,"epoch_utc":null},{"commit":"2f3f78e8d35a0ccccde0f84417400acdfe7fe0aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 06:29:17 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 7 06:29:17 2022 -0800","stats":{"files_changed":16,"insertions":194,"deletions":185,"files":["docgen.sh","docs/parsers/rsync_s.md","docs/readme.md","docs/streaming.md","docs/utils.md","jc/__init__.py","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/streaming.py","man/jc.1"]},"message":"refine streaming parsers","epoch":1644244157,"epoch_utc":null},{"commit":"d1e0ee6123dfecd48d074cb7a40e98a15b6adcb9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Feb 6 08:56:18 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Feb 6 08:56:18 2022 -0800","stats":{"files_changed":1,"insertions":6,"deletions":8,"files":["jc/parsers/ping_s.py"]},"message":"use new streaming functions","epoch":1644166578,"epoch_utc":null},{"commit":"45314c98083067f1f6fae9c477c99fabec223f29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Feb 6 08:55:42 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Feb 6 08:55:42 2022 -0800","stats":{"files_changed":2,"insertions":112,"deletions":102,"files":["jc/streaming.py","jc/utils.py"]},"message":"move some functions to streaming","epoch":1644166542,"epoch_utc":null},{"commit":"df00945b46e27e10107f48d186eedf80b55bd40e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 4 16:03:44 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 4 16:03:44 2022 -0800","stats":{"files_changed":6,"insertions":59,"deletions":49,"files":["jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py"]},"message":"move try/except inside for loop","epoch":1644019424,"epoch_utc":null},{"commit":"fda0050d867bcbe4f1d7e024b08e9881d0f57735","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 4 14:39:45 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 4 14:39:45 2022 -0800","stats":{"files_changed":13,"insertions":191,"deletions":0,"files":[".../centos-7.7/rsync-i-logfile-streaming.json","tests/fixtures/centos-7.7/rsync-i-streaming.json",".../centos-7.7/rsync-i-v-logfile-streaming.json",".../centos-7.7/rsync-i-vv-logfile-streaming.json",".../rsync-i-vvv-logfile-nochange-streaming.json",".../centos-7.7/rsync-i-vvv-logfile-streaming.json",".../centos-7.7/rsync-ivvv-nochange-streaming.json",".../fixtures/centos-7.7/rsync-ivvv-streaming.json","tests/fixtures/generic/rsync-i-streaming.json",".../rsync-i-vvv-logfile-nochange-streaming.json",".../rsync-i-vvv-nochange-streaming.json",".../osx-10.14.6/rsync-i-vvv-streaming.json","tests/test_rsync_s.py"]},"message":"add rsync-s tests","epoch":1644014385,"epoch_utc":null},{"commit":"a76d46f9ecb1eff4d6cc7ad633c97cec0e99001a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 4 12:14:16 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 4 12:14:16 2022 -0800","stats":{"files_changed":19,"insertions":110,"deletions":109,"files":["CHANGELOG","docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","docs/utils.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/utils.py","man/jc.1"]},"message":"refactor ignore_exceptions","epoch":1644005656,"epoch_utc":null},{"commit":"6b069a82d0fa19c8d83b19b934bace556cb758d7","author":"Kevin Lyter","author_email":"lyterk@sent.com","date":"Thu Feb 3 18:13:58 2022 -0800","commit_by":"Kevin Lyter","commit_by_email":"lyterk@sent.com","commit_by_date":"Thu Feb 3 22:40:40 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/lib.py"]},"message":"Add xrandr to lib.py","epoch":1643940838,"epoch_utc":null},{"commit":"6b793d052147406f388c4d5dc04f506a3456f409","author":"Kevin Lyter","author_email":"lyterk@sent.com","date":"Thu Feb 3 18:13:11 2022 -0800","commit_by":"Kevin Lyter","commit_by_email":"lyterk@sent.com","commit_by_date":"Thu Feb 3 22:40:35 2022 -0800","stats":{"files_changed":1,"insertions":6,"deletions":11,"files":["jc/parsers/xrandr.py"]},"message":"Clean up types\n\n* | operator => Union[]\n* Remove unused import Iterator\n* Remove comment","epoch":1643940791,"epoch_utc":null},{"commit":"ce9103f7cc666895dc7840d32797d8c7274cf1b8","author":"Kevin Lyter","author_email":"lyterk@sent.com","date":"Thu Feb 3 18:12:46 2022 -0800","commit_by":"Kevin Lyter","commit_by_email":"lyterk@sent.com","commit_by_date":"Thu Feb 3 18:12:46 2022 -0800","stats":{"files_changed":2,"insertions":0,"deletions":287,"files":["templates/xrandr_sample.txt","templates/xrandr_sample_verbose.txt"]},"message":"Delete old files in template folder","epoch":1643940766,"epoch_utc":null},{"commit":"671d6dee36a37317257e09a080849205d301bceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 3 15:47:46 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 3 15:47:46 2022 -0800","stats":{"files_changed":8,"insertions":83,"deletions":15,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","docs/utils.md"]},"message":"doc update","epoch":1643932066,"epoch_utc":null},{"commit":"49929c714c2d71a310b1dd95138dbd02f8704138","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 3 15:44:18 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 3 15:44:18 2022 -0800","stats":{"files_changed":9,"insertions":139,"deletions":52,"files":["jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/utils.py"]},"message":"add add_jc_meta decorator","epoch":1643931858,"epoch_utc":null},{"commit":"2986771f07de87bfee44dd3bbb4f285e249aad76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 3 09:21:20 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 3 09:21:20 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"require python v3.7 and above since v3.6 is now deprecated","epoch":1643908880,"epoch_utc":null},{"commit":"520082d963b93d2bafeff921da3899686b22cadf","author":"Kevin Lyter","author_email":"lyterk@sent.com","date":"Wed Feb 2 18:25:55 2022 -0800","commit_by":"Kevin Lyter","commit_by_email":"lyterk@sent.com","commit_by_date":"Wed Feb 2 20:33:25 2022 -0800","stats":{"files_changed":9,"insertions":968,"deletions":0,"files":["jc/parsers/xrandr.py","templates/xrandr_sample.txt","templates/xrandr_sample_verbose.txt","tests/fixtures/generic/simple_xrandr.json","tests/fixtures/generic/simple_xrandr.out","tests/fixtures/generic/xrandr.out","tests/fixtures/generic/xrandr_2.out","tests/fixtures/generic/xrandr_device.out","tests/test_xrandr.py"]},"message":"New parser: xrandr\n\nTests passing, working as intended in plugin directory","epoch":1643855155,"epoch_utc":null},{"commit":"021e296d457140c32b5256c2b0acf66efc458896","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 17:06:20 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 2 17:06:20 2022 -0800","stats":{"files_changed":1,"insertions":104,"deletions":100,"files":["jc/parsers/rsync_s.py"]},"message":"move variable inits and regexes up","epoch":1643850380,"epoch_utc":null},{"commit":"42e56fbcea6db64ea7f7045e7755af492c95aec2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 17:05:53 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 2 17:05:53 2022 -0800","stats":{"files_changed":1,"insertions":11,"deletions":12,"files":["jc/parsers/rsync.py"]},"message":"move regex up","epoch":1643850353,"epoch_utc":null},{"commit":"a5b62a4055df37b84751a7cdc14eb6f1ed907cd9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 16:03:14 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 2 16:03:14 2022 -0800","stats":{"files_changed":2,"insertions":230,"deletions":18,"files":["docs/parsers/rsync_s.md","jc/parsers/rsync_s.py"]},"message":"add processing and docs","epoch":1643846594,"epoch_utc":null},{"commit":"be98c9b7f6c67e23ea101223934d67bba512e645","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 15:59:12 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 2 15:59:12 2022 -0800","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/foo_s.py"]},"message":"simplify try/except by moving outside for loop","epoch":1643846352,"epoch_utc":null},{"commit":"aceeb8450796ae748a4d4abf75643f309d0a42e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 15:58:29 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 2 15:58:29 2022 -0800","stats":{"files_changed":3,"insertions":12,"deletions":1,"files":["CHANGELOG","README.md","man/jc.1"]},"message":"doc update","epoch":1643846309,"epoch_utc":null},{"commit":"13910632173e7c815ff1161cf52fd1d17153c4a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 11:49:39 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 2 11:49:39 2022 -0800","stats":{"files_changed":2,"insertions":367,"deletions":0,"files":["jc/lib.py","jc/parsers/rsync_s.py"]},"message":"first draft rsync streaming parser","epoch":1643831379,"epoch_utc":null},{"commit":"52157addd0d6dff3bdb34f179ec14b07c8c27ccc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 11:49:24 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 2 11:49:24 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/foo_s.py"]},"message":"fix compatible list","epoch":1643831364,"epoch_utc":null},{"commit":"ec0bc6615e22fdc536623e290d88b9725cb6a0ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 19:20:19 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 19:20:19 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/utils.md","jc/utils.py"]},"message":"formatting","epoch":1643772019,"epoch_utc":null},{"commit":"2f80800e38256b363a4122195ec4aaffebe67d87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 19:06:41 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 19:06:41 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"simplify all_parser_info comprehension","epoch":1643771201,"epoch_utc":null},{"commit":"3959d3347c8d3e838f8c3158c4db74e2fa2eb856","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 18:33:07 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 18:33:07 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["docs/lib.md"]},"message":"doc update","epoch":1643769187,"epoch_utc":null},{"commit":"b57d25c69a193d3866ea86a3a34edd67049b198d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 18:30:37 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 18:30:37 2022 -0800","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/lib.py"]},"message":"clean up return type for parser_info","epoch":1643769037,"epoch_utc":null},{"commit":"63e43a7cabb51c624c962cdcc92a1199f18c77e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 17:57:12 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 17:57:12 2022 -0800","stats":{"files_changed":7,"insertions":188,"deletions":21,"files":["README.md","docs/lib.md","docs/parsers/rsync.md","docs/parsers/universal.md","docs/parsers/zipinfo.md","docs/utils.md","man/jc.1"]},"message":"doc updates","epoch":1643767032,"epoch_utc":null},{"commit":"21719f9a26c25d896b0a5d49c9d7814175835e16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 17:54:22 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 17:54:22 2022 -0800","stats":{"files_changed":2,"insertions":18,"deletions":20,"files":["jc/lib.py","jc/utils.py"]},"message":"type annotation updates","epoch":1643766862,"epoch_utc":null},{"commit":"96ec70de4f6178b0669fd9ab47cb303dc45e55c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 17:18:55 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 17:18:55 2022 -0800","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["jc/parsers/universal.py","jc/utils.py"]},"message":"remove unneeded optional","epoch":1643764735,"epoch_utc":null},{"commit":"a15a1967dc06169ceeda0fd5b4857ce1a351f3d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 17:18:39 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 17:18:39 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"fix typo","epoch":1643764719,"epoch_utc":null},{"commit":"a10d7566294fe5246e68a16e355ce56dd3557ac5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:49:31 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 16:49:31 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/universal.py"]},"message":"fixy mypy issues","epoch":1643762971,"epoch_utc":null},{"commit":"0700dc7a64b121cf0243416e2cbb82fcef15f5a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:42:51 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 16:42:51 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/rsync.py"]},"message":"remove cygwin from compatible","epoch":1643762571,"epoch_utc":null},{"commit":"ca654b214057e19839b89e0d9a66f1110f679c1e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:42:10 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 16:42:10 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"fix parser order","epoch":1643762530,"epoch_utc":null},{"commit":"4ff3b87c1c96d720f4e7fd39e613944e322cb388","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:18:38 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 16:18:38 2022 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/rsync.py"]},"message":"remove future field from docstring","epoch":1643761118,"epoch_utc":null},{"commit":"ea244fb7a91f1d1f8ffe0ea6dc10dfe5ab836878","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:17:03 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 16:17:03 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_rsync.py"]},"message":"formatting","epoch":1643761023,"epoch_utc":null},{"commit":"8061f30e6fa58d22ed1a52e02c4d9c7f0bf132cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:16:33 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 16:16:33 2022 -0800","stats":{"files_changed":3,"insertions":236,"deletions":6,"files":["tests/fixtures/centos-7.7/rsync-ivvv-nochange.json","tests/fixtures/centos-7.7/rsync-ivvv-nochange.out","tests/test_rsync.py"]},"message":"add centos -i nochange test","epoch":1643760993,"epoch_utc":null},{"commit":"8f3b12e81e1b4f0d4394c33db5b3a352f4cfb391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 14:52:51 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 14:52:51 2022 -0800","stats":{"files_changed":6,"insertions":299,"deletions":0,"files":["jc/parsers/rsync.py",".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.json",".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.out","tests/fixtures/osx-10.14.6/rsync-i-vvv.json","tests/fixtures/osx-10.14.6/rsync-i-vvv.out","tests/test_rsync.py"]},"message":"add fixes for mac -i output","epoch":1643755971,"epoch_utc":null},{"commit":"d0694ce0db5ea2d06b5787429adf23095c4c2df0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 14:20:53 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 14:20:53 2022 -0800","stats":{"files_changed":3,"insertions":245,"deletions":6,"files":[".../osx-10.14.6/rsync-i-vvv-logfile-nochange.json",".../osx-10.14.6/rsync-i-vvv-logfile-nochange.out","tests/test_rsync.py"]},"message":"add nochange log test for mac","epoch":1643754053,"epoch_utc":null},{"commit":"0cd4c4bc7f3ffe13cb2f1920187e25636b88af61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 13:58:51 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 13:58:51 2022 -0800","stats":{"files_changed":2,"insertions":658,"deletions":0,"files":[".../centos-7.7/rsync-i-vvv-logfile-nochange.json",".../centos-7.7/rsync-i-vvv-logfile-nochange.out"]},"message":"add nochange tests","epoch":1643752731,"epoch_utc":null},{"commit":"12f90c349c903634def4225ce87924b475be46d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 13:54:25 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 13:54:25 2022 -0800","stats":{"files_changed":2,"insertions":68,"deletions":20,"files":["jc/parsers/rsync.py","tests/test_rsync.py"]},"message":"update regexes for unchanged files","epoch":1643752465,"epoch_utc":null},{"commit":"26b8a1f167c4b1ec3f9fb4077254a27ed8548933","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 09:58:18 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 09:58:18 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"]},"message":"remove packages from binaries and packages header","epoch":1643738298,"epoch_utc":null},{"commit":"3abe382c064f605d915912f9b726d76784eba8a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 16:01:42 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 31 16:01:42 2022 -0800","stats":{"files_changed":2,"insertions":90,"deletions":3,"files":["EXAMPLES.md","jc/parsers/rsync.py"]},"message":"add examples","epoch":1643673702,"epoch_utc":null},{"commit":"1e2edc2c7b5dc104a9efe4da7df9be61b9e1be32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 15:54:05 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 31 15:54:05 2022 -0800","stats":{"files_changed":5,"insertions":53,"deletions":29,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-logfile.json","tests/fixtures/centos-7.7/rsync-i-v-logfile.json","tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json"]},"message":"add timestamp","epoch":1643673245,"epoch_utc":null},{"commit":"5fe032a6741b7b6586c60eb28be74bd0e56277a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 13:44:44 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 31 13:44:44 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/zipinfo.py"]},"message":"fix typo","epoch":1643665484,"epoch_utc":null},{"commit":"e825c02df1cdae67c7f335fe3c675685eb1a8d02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 13:23:31 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 31 13:23:31 2022 -0800","stats":{"files_changed":11,"insertions":605,"deletions":0,"files":["tests/fixtures/centos-7.7/rsync-i-logfile.json","tests/fixtures/centos-7.7/rsync-i-v-logfile.json","tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out","tests/fixtures/centos-7.7/rsync-i.json","tests/fixtures/centos-7.7/rsync-i.out","tests/fixtures/centos-7.7/rsync-ivvv.json","tests/fixtures/generic/rsync-i.json","tests/fixtures/generic/rsync-i.out","tests/test_rsync.py"]},"message":"add rsync tests","epoch":1643664211,"epoch_utc":null},{"commit":"a4a4d170b5ae8c189de982adea5bdc9bf1f26e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 13:23:22 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 31 13:23:22 2022 -0800","stats":{"files_changed":1,"insertions":10,"deletions":5,"files":["jc/parsers/rsync.py"]},"message":"update docstring","epoch":1643664202,"epoch_utc":null},{"commit":"d0fcd523cb2cbb59d0f90369721749b54222961d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 11:13:23 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 31 11:13:23 2022 -0800","stats":{"files_changed":1,"insertions":19,"deletions":17,"files":["jc/parsers/rsync.py"]},"message":"fix process conversions","epoch":1643656403,"epoch_utc":null},{"commit":"f72b7dc75dbd1c3f5daee3ecee28487258a04873","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 30 16:37:45 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 30 16:37:45 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":8,"files":["jc/parsers/rsync.py"]},"message":"change keyname to files and remove future key","epoch":1643589465,"epoch_utc":null},{"commit":"4101dc6bf7bab7d00899426e2f6271a7480d558f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 30 16:21:03 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 30 16:21:03 2022 -0800","stats":{"files_changed":4,"insertions":1008,"deletions":19,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-v-logfile.out","tests/fixtures/centos-7.7/rsync-i-vv-logfile.out","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out"]},"message":"add log-file support","epoch":1643588463,"epoch_utc":null},{"commit":"ea5011b616365b5c10c04416d43035d84e3dacba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jan 29 17:24:43 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Jan 29 17:24:43 2022 -0800","stats":{"files_changed":2,"insertions":175,"deletions":41,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-logfile.out"]},"message":"updated schema. add log-file option support","epoch":1643505883,"epoch_utc":null},{"commit":"d6de81747fd92642dbd5cb1fb097e375aa38be35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 28 15:00:05 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 28 15:00:05 2022 -0800","stats":{"files_changed":1,"insertions":11,"deletions":3,"files":["jc/parsers/rsync.py"]},"message":"add int/float conversions","epoch":1643410805,"epoch_utc":null},{"commit":"38f04b1c9699246d85332b20df5b6a91ae0c48d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 28 14:45:01 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 28 14:45:01 2022 -0800","stats":{"files_changed":1,"insertions":32,"deletions":7,"files":["jc/parsers/rsync.py"]},"message":"add summary","epoch":1643409901,"epoch_utc":null},{"commit":"84169e1a913d035744f71472be81fe3a7d774b97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 28 14:08:43 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 28 14:08:43 2022 -0800","stats":{"files_changed":4,"insertions":637,"deletions":2,"files":["jc/lib.py","jc/parsers/rsync.py","setup.py","tests/fixtures/centos-7.7/rsync-ivvv.out"]},"message":"add rsync parser","epoch":1643407723,"epoch_utc":null},{"commit":"1f96586a5e883709f436526de6dcb21ff44bf97b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 28 14:08:21 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 28 14:08:21 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/foo.py"]},"message":"reorder imports","epoch":1643407701,"epoch_utc":null},{"commit":"681176e4c958157ef1f2151b3e57963a6ba48e09","merge":"b389665 8bb2663","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 16:53:37 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Jan 27 16:53:37 2022 -0800","message":"Merge pull request #203 from kellyjonbrazil/dev\n\nDev v1.18.2","epoch":1643331217,"epoch_utc":null},{"commit":"8bb266352207f95040b72750e5b3ae3b8ceb2b98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 16:49:46 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 27 16:49:46 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"date update","epoch":1643330986,"epoch_utc":null},{"commit":"663abf313931b49fad64b425ece6a5a257dc7938","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 16:14:14 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 27 16:14:14 2022 -0800","stats":{"files_changed":4,"insertions":3,"deletions":4,"files":["MANIFEST.in","mangen.py","runtests.sh","updatedocs.sh"]},"message":"clean up scripts","epoch":1643328854,"epoch_utc":null},{"commit":"f7ac41db95c16fd21d83fbce678c5dec28ab40f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 13:27:50 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 27 13:27:50 2022 -0800","stats":{"files_changed":2,"insertions":1,"deletions":13,"files":["README.md","man/jc.1"]},"message":"final doc update","epoch":1643318870,"epoch_utc":null},{"commit":"5502cda9e591b531d6b452b02d8ec322c3287800","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 13:03:02 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 27 13:03:02 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["tests/test_lib.py"]},"message":"add additional test for dict inside list for all_parser_info()","epoch":1643317382,"epoch_utc":null},{"commit":"a2b165565f54d91489bf38577a0785e78a4523d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 12:54:44 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 27 12:54:44 2022 -0800","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["tests/test_lib.py"]},"message":"add lib tests for new functions","epoch":1643316884,"epoch_utc":null},{"commit":"b426369815984bd2aae8bcb14e306ba73b8cd4ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 07:45:20 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 27 07:45:20 2022 -0800","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/cli.py"]},"message":"use all_parser_info() from lib in about function","epoch":1643298320,"epoch_utc":null},{"commit":"ac0840cc0afb4aeee2c99076710c987e09cfa5f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 20:51:18 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 20:51:18 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"fix typo","epoch":1643259078,"epoch_utc":null},{"commit":"ee98ab0a4a7671ae34ee79f7b0b97c061a8c2944","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 20:42:20 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 20:42:20 2022 -0800","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/lib.md","docs/utils.md"]},"message":"doc update","epoch":1643258540,"epoch_utc":null},{"commit":"2adec2c0035b84ca0242f2494b6c2651b9898ca5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 20:40:03 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 20:40:03 2022 -0800","stats":{"files_changed":4,"insertions":21,"deletions":19,"files":["jc/lib.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/utils.py"]},"message":"update type hints with mypy help","epoch":1643258403,"epoch_utc":null},{"commit":"f19c9c71bf4f592f55a5176458acd478b462fdbe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 18:39:14 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 18:39:14 2022 -0800","stats":{"files_changed":2,"insertions":15,"deletions":4,"files":["jc/parsers/foo.py","jc/parsers/foo_s.py"]},"message":"add type hints","epoch":1643251154,"epoch_utc":null},{"commit":"e93adf1884c0006a64123513070a5fd96a940da2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 18:09:30 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 18:09:30 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"fix doc","epoch":1643249370,"epoch_utc":null},{"commit":"254c4fc507842ca72064c0196418a7b939d54d06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 18:05:00 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 18:05:00 2022 -0800","stats":{"files_changed":2,"insertions":20,"deletions":6,"files":["docs/readme.md","jc/__init__.py"]},"message":"add new functions","epoch":1643249100,"epoch_utc":null},{"commit":"74d5f60d14fc42cfd5768c7ffd6efc890a65d442","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 17:17:40 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 17:17:40 2022 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"]},"message":"update console interview description","epoch":1643246260,"epoch_utc":null},{"commit":"db7dc0634bc17b4daadc8bc21bba5975c093efe5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 17:12:35 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 17:12:35 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/lib.md","jc/lib.py"]},"message":"make **kwargs optional","epoch":1643245955,"epoch_utc":null},{"commit":"e156b0db453e99fb0f74b618fd343218f978ff68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 17:08:03 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 17:08:03 2022 -0800","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"add type hints","epoch":1643245683,"epoch_utc":null},{"commit":"50adc05fbd6a0dcd9e4fb38aa41917bb57332f36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 16:58:48 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 16:58:48 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/utils.md","jc/utils.py"]},"message":"formatting","epoch":1643245128,"epoch_utc":null},{"commit":"446cac7c217103eb66cfdee97e3a208b7144b644","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 16:55:39 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 16:55:39 2022 -0800","stats":{"files_changed":2,"insertions":15,"deletions":11,"files":["docs/utils.md","jc/utils.py"]},"message":"doc update","epoch":1643244939,"epoch_utc":null},{"commit":"28ffe3076bb5f23aeaf2624344856dbd02b4c0e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 16:34:23 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 16:34:23 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":9,"files":["docs/lib.md","jc/lib.py"]},"message":"formatting","epoch":1643243663,"epoch_utc":null},{"commit":"d4d5e206cae14acd25445952f820810818b3fdce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 15:54:36 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 15:54:36 2022 -0800","stats":{"files_changed":3,"insertions":40,"deletions":28,"files":["docs/lib.md","docs/utils.md","jc/utils.py"]},"message":"type hints update","epoch":1643241276,"epoch_utc":null},{"commit":"42fbe40a4ae02b9d09acdbf9b22573844959d2ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 15:54:18 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 15:54:18 2022 -0800","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/lib.py"]},"message":"simplify type hints","epoch":1643241258,"epoch_utc":null},{"commit":"27e4a120e21dcbb3eadc6c4cf224ddb33859328d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 15:31:18 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 15:31:18 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/lib.md","jc/lib.py"]},"message":"remove trailing comma","epoch":1643239878,"epoch_utc":null},{"commit":"b5d5b7c73a96d4335b178ccfac60af90913e6f0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 15:01:42 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 15:01:42 2022 -0800","stats":{"files_changed":3,"insertions":29,"deletions":148,"files":["docgen.sh","docs/parsers/ifconfig.md","docs/parsers/traceroute.md"]},"message":"remove private classes","epoch":1643238102,"epoch_utc":null},{"commit":"e7471556ba5fb0586ac5b0d7404cabd98a58db2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 14:39:11 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 14:39:11 2022 -0800","stats":{"files_changed":1,"insertions":0,"deletions":5,"files":["docgen.sh"]},"message":"remove sed lines","epoch":1643236751,"epoch_utc":null},{"commit":"640a21341bb1c562cb2124155b511dfc74277fc0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 14:38:57 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 14:38:57 2022 -0800","stats":{"files_changed":2,"insertions":47,"deletions":42,"files":["docs/utils.md","jc/utils.py"]},"message":"fix indentation","epoch":1643236737,"epoch_utc":null},{"commit":"f5befad3e41ba2864abc795a2fdf63e0f1d37c21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 14:21:06 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 14:21:06 2022 -0800","stats":{"files_changed":2,"insertions":33,"deletions":25,"files":["docs/utils.md","jc/utils.py"]},"message":"move docstring under __init__","epoch":1643235666,"epoch_utc":null},{"commit":"f8223023c31093c1a34130b4e4cfc23b1d80a30c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 14:16:04 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 14:16:04 2022 -0800","stats":{"files_changed":4,"insertions":24,"deletions":10,"files":["docgen.sh","docs/parsers/ifconfig.md","docs/parsers/traceroute.md","docs/utils.md"]},"message":"change header depth","epoch":1643235364,"epoch_utc":null},{"commit":"7028e87f9b411c0cfb92eee7fc0667cdcb9a54ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 13:03:51 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 13:03:51 2022 -0800","stats":{"files_changed":87,"insertions":22,"deletions":445,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md"]},"message":"remove TOC for parsers","epoch":1643231031,"epoch_utc":null},{"commit":"590728f9c1ccfdc078e600d1f35ad4ba51f70d36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 11:50:25 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 11:50:25 2022 -0800","stats":{"files_changed":91,"insertions":506,"deletions":17,"files":["docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/utils.md","jc/lib.py"]},"message":"try new pydoc-markdown formatting options","epoch":1643226625,"epoch_utc":null},{"commit":"7cc147fe2d7b278bcab905bc4c3b70b5265e1510","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 19:28:37 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 19:28:37 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":44,"files":["docgen.sh","docgen.sh.old"]},"message":"increase heading size","epoch":1643167717,"epoch_utc":null},{"commit":"3cfb3965bb25024a7b03870b71f02194e278919b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 19:28:04 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 19:28:04 2022 -0800","stats":{"files_changed":3,"insertions":19,"deletions":19,"files":["docs/lib.md","docs/parsers/universal.md","docs/utils.md"]},"message":"formatting","epoch":1643167684,"epoch_utc":null},{"commit":"155d4213225fe4fcf4a059fb63c1ab9fc493177e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 19:18:54 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 19:18:54 2022 -0800","stats":{"files_changed":86,"insertions":182,"deletions":181,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"]},"message":"formatting","epoch":1643167134,"epoch_utc":null},{"commit":"d3e10bb87bdb32396bce95f74e62a023f4efaf99","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:59:40 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 18:59:40 2022 -0800","stats":{"files_changed":1,"insertions":291,"deletions":0,"files":["docs/parsers/lsusb.md"]},"message":"add lsusb docs","epoch":1643165980,"epoch_utc":null},{"commit":"fd5433ee6220357e59633c78b689aa432d056b43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:58:09 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 18:58:09 2022 -0800","stats":{"files_changed":3,"insertions":6,"deletions":293,"files":["docs/lib.md","docs/parsers/lsusb.md","jc/lib.py"]},"message":"parse docstring formatting","epoch":1643165889,"epoch_utc":null},{"commit":"4568f2d06e8fc1c465c86c318d925586481af062","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:51:56 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 18:51:56 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/lib.md","jc/lib.py"]},"message":"formatting for parse docstring","epoch":1643165516,"epoch_utc":null},{"commit":"c36e513d1bcc07cd8f01ff59199950e5396da51b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:42:55 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 18:42:55 2022 -0800","stats":{"files_changed":86,"insertions":88,"deletions":91,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"]},"message":"formatting","epoch":1643164975,"epoch_utc":null},{"commit":"8e089baf3fe30fed80e1c5cdde7c3046bb70ca5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:38:26 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 18:38:26 2022 -0800","stats":{"files_changed":86,"insertions":8,"deletions":855,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"]},"message":"remove info class from docs","epoch":1643164706,"epoch_utc":null},{"commit":"386f6c317e104e797c2b55e3d21c8b064a83ac78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:03:34 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 18:03:34 2022 -0800","stats":{"files_changed":89,"insertions":9552,"deletions":9939,"files":["docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/utils.md"]},"message":"update markdown processor settings","epoch":1643162614,"epoch_utc":null},{"commit":"75cd84ce8a86b3357c6cf5fe4fbc62d0f298a29a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 17:07:47 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 17:07:47 2022 -0800","stats":{"files_changed":94,"insertions":11423,"deletions":10081,"files":["README.md","docgen.sh","docgen.sh.old","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/utils.md","jc/cli.py","man/jc.1"]},"message":"try new markdown conversion","epoch":1643159267,"epoch_utc":null},{"commit":"6fad44e35df5d0e33e716d0fcb84ed309e6fd30b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 16:28:29 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 16:28:29 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"fix type hint","epoch":1643156909,"epoch_utc":null},{"commit":"1caac750daa25a5abeb1289964e918ec06289bfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 16:27:29 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 16:27:29 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/lib.py"]},"message":"Update type hints","epoch":1643156849,"epoch_utc":null},{"commit":"16370dcb3d5cf1304c2340ef2253ef2987a982b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 15:49:48 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 15:49:48 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"update type hints","epoch":1643154588,"epoch_utc":null},{"commit":"c1302f2573993a6908001d6df0697486f54a9e7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 15:49:31 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 15:49:31 2022 -0800","stats":{"files_changed":1,"insertions":19,"deletions":8,"files":["jc/lib.py"]},"message":"add type-hints to public api","epoch":1643154571,"epoch_utc":null},{"commit":"6f0ffe0955e4d9d6cc82552cf4e4f419e3ff3756","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 15:48:00 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 15:48:00 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"docu update","epoch":1643154480,"epoch_utc":null},{"commit":"1f89745fe7cca3a0ac27445942098b717675a481","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 11:17:18 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 11:17:18 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump","epoch":1643138238,"epoch_utc":null},{"commit":"a46ac18ef775bb2c52675e61e11c5d92f33cbe81","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 10:47:05 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 10:47:05 2022 -0800","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["CHANGELOG"]},"message":"doc update","epoch":1643136425,"epoch_utc":null},{"commit":"1a05f1c575b57456481e41baaf551cef30115966","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 10:46:58 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 10:46:58 2022 -0800","stats":{"files_changed":3,"insertions":64,"deletions":54,"files":["jc/__init__.py","jc/cli.py","jc/lib.py"]},"message":"add parser info functions. move _get_parser functionality from cli to lib","epoch":1643136418,"epoch_utc":null},{"commit":"08f818aa42ca68050a79ec387c42bff265257fd5","merge":"027c231 b389665","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 00:45:53 2022 +0000","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Jan 25 00:45:53 2022 +0000","message":"Merge pull request #199 from kellyjonbrazil/master\n\nsync to dev","epoch":1643100353,"epoch_utc":1643071553},{"commit":"b3896650c230b4acc73704a50c93ee74e4034eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 23 13:40:50 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 23 13:40:50 2022 -0800","stats":{"files_changed":2,"insertions":62,"deletions":104,"files":["README.md","templates/readme_template"]},"message":"revert column formatting","epoch":1642974050,"epoch_utc":null},{"commit":"f285539526998a5097943c71dcecb2979036b2b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 23 13:36:22 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 23 13:36:22 2022 -0800","stats":{"files_changed":2,"insertions":104,"deletions":62,"files":["README.md","templates/readme_template"]},"message":"conform to 80 columns","epoch":1642973782,"epoch_utc":null},{"commit":"a896dcdf3b31b60582ebb1b3bca5d1103f998dd6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 23 13:14:00 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 23 13:14:00 2022 -0800","stats":{"files_changed":2,"insertions":338,"deletions":120,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1642972440,"epoch_utc":null},{"commit":"0a187d4ed08173ec360a006ae2367bb1f2f96c52","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 23 10:04:19 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 23 10:04:19 2022 -0800","stats":{"files_changed":3,"insertions":7,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"]},"message":"add console interview links","epoch":1642961059,"epoch_utc":null},{"commit":"2d65bc57d5a396e6683f970194de29494b5c1272","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 16:58:45 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 16:58:45 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/readme.md","jc/__init__.py"]},"message":"add quotes","epoch":1642813125,"epoch_utc":null},{"commit":"ab63809fde0cefe1f0401d957a3736fdb760f0cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 16:13:00 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 16:13:00 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"update description","epoch":1642810380,"epoch_utc":null},{"commit":"6f04707dc63936efd0e533ae36e1b39ead10c466","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 15:33:43 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 15:33:43 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add python package doc info to top of page","epoch":1642808023,"epoch_utc":null},{"commit":"d14a86a9b58bdc3cb0c8df1dfa495aefdaab8033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 15:29:46 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 15:29:46 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py"]},"message":"fix typo","epoch":1642807786,"epoch_utc":null},{"commit":"8e6a31d3da19926ac46744e02b27a899ca5fbd7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 14:08:19 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 14:08:19 2022 -0800","stats":{"files_changed":6,"insertions":14,"deletions":8,"files":["CHANGELOG","docs/readme.md","jc/__init__.py","jc/lib.py","man/jc.1","setup.py"]},"message":"minor fix for macOS binary","epoch":1642802899,"epoch_utc":null},{"commit":"6e7b6afe87355e96422bb2560ffcbd5e79d28f04","merge":"70cb445 027c231","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 13:52:16 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Jan 21 13:52:16 2022 -0800","message":"Merge pull request #198 from kellyjonbrazil/dev\n\nDev v1.18.0","epoch":1642801936,"epoch_utc":null},{"commit":"027c231097a002526350a93322407582a85db0cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 13:48:38 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 13:48:38 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"formatting","epoch":1642801718,"epoch_utc":null},{"commit":"f1cf7d1f953586dd44a4463d924f1a1f52717c37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:51:26 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 12:51:26 2022 -0800","stats":{"files_changed":2,"insertions":7,"deletions":5,"files":["jc/parsers/foo.py","jc/parsers/foo_s.py"]},"message":"add helper function info","epoch":1642798286,"epoch_utc":null},{"commit":"df611cc263f50285e74ceb3381f55b43a74870a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:41:52 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 12:41:52 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting","epoch":1642797712,"epoch_utc":null},{"commit":"0f3143bbbb593340190e66729580146410012e14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:39:22 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 12:39:22 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting","epoch":1642797562,"epoch_utc":null},{"commit":"c280757b7624a46543e481ca47a6e084d2d6f519","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:35:48 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 12:35:48 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting","epoch":1642797348,"epoch_utc":null},{"commit":"d30b9d84ef5ec3a2a504f7ea251c932b8c9ea878","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:33:23 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 12:33:23 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting","epoch":1642797203,"epoch_utc":null},{"commit":"50ded1dbd97d26cf01d7e1a98b40e0f0f7d02202","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:31:03 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 12:31:03 2022 -0800","stats":{"files_changed":1,"insertions":10,"deletions":4,"files":["docs/readme.md"]},"message":"doc update","epoch":1642797063,"epoch_utc":null},{"commit":"e319aea5a45c598a44f35b4e58131d977509e4f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:29:36 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 12:29:36 2022 -0800","stats":{"files_changed":1,"insertions":10,"deletions":4,"files":["jc/__init__.py"]},"message":"add doc version info","epoch":1642796976,"epoch_utc":null},{"commit":"ba86509c1d8700a50fe14e9d931ee57261306c5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:15:34 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 12:15:34 2022 -0800","stats":{"files_changed":1,"insertions":3,"deletions":9,"files":["jc/cli.py"]},"message":"simplify OSError exception handling","epoch":1642796134,"epoch_utc":null},{"commit":"0a9279ae6bfdd1aa59f5e9b31ce0af3bfec19f96","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:15:16 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 12:15:16 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["CHANGELOG","tests/test_lib.py"]},"message":"doc update","epoch":1642796116,"epoch_utc":null},{"commit":"a13dde12af01b4473aa9a34b8a0d7387fb48500a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 07:42:03 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 07:42:03 2022 -0800","stats":{"files_changed":173,"insertions":173,"deletions":173,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py","man/jc.1"]},"message":"change raw output wording","epoch":1642779723,"epoch_utc":null},{"commit":"e2ed358de1abefd737c187a324cbe4734d6975e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 15:31:24 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 20 15:31:24 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["CHANGELOG"]},"message":"changelog update","epoch":1642721484,"epoch_utc":null},{"commit":"a2cd3666210be3727a00c3405972f32fbd421046","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 15:01:49 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Jan 20 15:01:49 2022 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["docs/_config.yml"]},"message":"Delete _config.yml","epoch":1642719709,"epoch_utc":null},{"commit":"15addd9bfc18a0e87beb97040b431c872b783662","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 09:59:23 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 20 09:59:23 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":8,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"doc fix","epoch":1642701563,"epoch_utc":null},{"commit":"a4e34b0053ec0c032f4783caaa3e07fc2c685a98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 09:46:24 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 20 09:46:24 2022 -0800","stats":{"files_changed":2,"insertions":63,"deletions":0,"files":["docgen.sh","docs/parsers/universal.md"]},"message":"add universal parser docs","epoch":1642700784,"epoch_utc":null},{"commit":"d09529ac302fbcc156d58cf836f8397c98121a76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 09:40:34 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 20 09:40:34 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update","epoch":1642700434,"epoch_utc":null},{"commit":"553097b5050dc02fbdaeec2e2e138e01bc6811d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 09:40:08 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 20 09:40:08 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/universal.py"]},"message":"docstring update","epoch":1642700408,"epoch_utc":null},{"commit":"49c556857708307f617b2b516f2d281398681b5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 07:49:45 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 20 07:49:45 2022 -0800","stats":{"files_changed":7,"insertions":35,"deletions":15,"files":["README.md","docs/lib.md","docs/readme.md","jc/__init__.py","jc/lib.py","man/jc.1","templates/readme_template"]},"message":"module doc update","epoch":1642693785,"epoch_utc":null},{"commit":"6962b9ee8a52c924dc2de6b79ddeea3636e80fe4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 22:24:59 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 22:24:59 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":6,"files":["docs/lib.md","jc/lib.py"]},"message":"formatting","epoch":1642659899,"epoch_utc":null},{"commit":"b4575a3f780f9aa2751c8b4789f67aaca32dd1cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 22:20:36 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 22:20:36 2022 -0800","stats":{"files_changed":3,"insertions":91,"deletions":1,"files":["docgen.sh","docs/lib.md","jc/lib.py"]},"message":"add lib docs","epoch":1642659636,"epoch_utc":null},{"commit":"35b54d235d73b2ce658223be3d6095906f142d89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 21:53:13 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 21:53:13 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add python package doc info","epoch":1642657993,"epoch_utc":null},{"commit":"583a5757e454a4e36b331057d1266279b55ee16a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 21:32:21 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 21:32:21 2022 -0800","stats":{"files_changed":18,"insertions":34,"deletions":30,"files":["docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/file.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/traceroute.md","docs/parsers/ufw_appinfo.md","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/file.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/traceroute.py","jc/parsers/ufw_appinfo.py"]},"message":"formatting","epoch":1642656741,"epoch_utc":null},{"commit":"f355333eeed3c4afba844dc7bed5224356552adc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 19:27:46 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 19:27:46 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting","epoch":1642649266,"epoch_utc":null},{"commit":"4d7df109604e4f8367904968602acfc05217a7fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 19:24:37 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 19:24:37 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting","epoch":1642649077,"epoch_utc":null},{"commit":"66b2c28f4bc75fb76800f9fb7ea485eee194a9a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 19:22:08 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 19:22:08 2022 -0800","stats":{"files_changed":2,"insertions":24,"deletions":24,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting","epoch":1642648928,"epoch_utc":null},{"commit":"299a9c6d88fdf1fede447b4057d8f4263daef733","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 19:19:25 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 19:19:25 2022 -0800","stats":{"files_changed":2,"insertions":25,"deletions":57,"files":["docs/parsers/csv.md","docs/readme.md"]},"message":"formatting","epoch":1642648765,"epoch_utc":null},{"commit":"bd391d979ce98b126dab0f012a56b3fcb1f73439","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 19:18:03 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 19:18:03 2022 -0800","stats":{"files_changed":1,"insertions":23,"deletions":55,"files":["jc/__init__.py"]},"message":"add lib function docs","epoch":1642648683,"epoch_utc":null},{"commit":"7309bd2282445f6daef0b1491ff60b8104500abb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 18:47:44 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 18:47:44 2022 -0800","stats":{"files_changed":3,"insertions":19,"deletions":10,"files":["jc/lib.py","jc/parsers/csv.py","jc/parsers/universal.py"]},"message":"add get_help","epoch":1642646864,"epoch_utc":null},{"commit":"ce84c09d3394b598f19a3e012ef27ce4154e3b3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 18:44:26 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 18:44:26 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/__init__.py"]},"message":"add get_help()","epoch":1642646666,"epoch_utc":null},{"commit":"b4fffbb6476daf78fbdf19dbf31bbeeab950d2dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 17:30:14 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 17:30:14 2022 -0800","stats":{"files_changed":46,"insertions":501,"deletions":304,"files":["docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/history.md","docs/parsers/ini.md","docs/parsers/iostat_s.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsusb.md","docs/parsers/netstat.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/ps.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/upower.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/who.md"]},"message":"formatting","epoch":1642642214,"epoch_utc":null},{"commit":"3701b4198aad1826ad6da571fbcaa530b057cc48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 17:29:22 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 17:29:22 2022 -0800","stats":{"files_changed":86,"insertions":710,"deletions":606,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"formatting","epoch":1642642162,"epoch_utc":null},{"commit":"d4c34098fa7ad2098076f0fa0564467e5d06f916","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 11:31:29 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 11:31:29 2022 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/lib.py"]},"message":"formatting","epoch":1642620689,"epoch_utc":null},{"commit":"b3c531193b3fc53697e7d7823576f481f9462d53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 11:08:59 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 11:08:59 2022 -0800","stats":{"files_changed":3,"insertions":125,"deletions":71,"files":["CHANGELOG","docs/utils.md","jc/utils.py"]},"message":"formatting","epoch":1642619339,"epoch_utc":null},{"commit":"1d0e07c77bab5c48405323e52873c7952dd0a587","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 10:31:46 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 10:31:46 2022 -0800","stats":{"files_changed":3,"insertions":57,"deletions":55,"files":["docs/readme.md","jc/__init__.py","jc/lib.py"]},"message":"formatting","epoch":1642617106,"epoch_utc":null},{"commit":"06a322cf9c7468dc7e8ba05914e1d07bbc51f63a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 10:31:36 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 10:31:36 2022 -0800","stats":{"files_changed":1,"insertions":14,"deletions":8,"files":["tests/test_lib.py"]},"message":"rename tests and add conversion function tests","epoch":1642617096,"epoch_utc":null},{"commit":"623d148712f93eacf9b7b5803140603f0af67acb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 09:30:53 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 09:30:53 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"doc update","epoch":1642613453,"epoch_utc":null},{"commit":"647e83d0439a0937db14a2cc97929e38a6b6a43b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 09:29:09 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 09:29:09 2022 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["tests/test_lib.py"]},"message":"add test to ensure there are zero plugin parsers installed during tests","epoch":1642613349,"epoch_utc":null},{"commit":"91a554464444da0cc3ed3b4d212539232411f6cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 09:28:35 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 09:28:35 2022 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/lib.py"]},"message":"doc update","epoch":1642613315,"epoch_utc":null},{"commit":"a1190998aef1bf403ee34c38c1a0fbd6291ac38b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 09:15:24 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 09:15:24 2022 -0800","stats":{"files_changed":2,"insertions":82,"deletions":0,"files":["tests/test_jc.py","tests/test_lib.py"]},"message":"add jc and jc.lib tests","epoch":1642612524,"epoch_utc":null},{"commit":"097d7a1850f6f6df73a5761c657b73ef9dbd3e29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 09:15:11 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 09:15:11 2022 -0800","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/__init__.py"]},"message":"simplify __init__","epoch":1642612511,"epoch_utc":null},{"commit":"302bf72e720b3a67fbf1300eaff4f99fc343abeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 15:38:03 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 18 15:38:03 2022 -0800","stats":{"files_changed":138,"insertions":718,"deletions":6,"files":["docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py"]},"message":"Update high-level API docs","epoch":1642549083,"epoch_utc":null},{"commit":"2c42baf3a4dd6733c078f31a1becd708a05f2c36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 14:18:12 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 18 14:18:12 2022 -0800","stats":{"files_changed":34,"insertions":174,"deletions":0,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py"]},"message":"add new high-level api info","epoch":1642544292,"epoch_utc":null},{"commit":"03feb89c84096c0ea1d6ae3a0634ae7b8b507e8f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 13:46:11 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 18 13:46:11 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/readme.md","jc/__init__.py"]},"message":"add module list info","epoch":1642542371,"epoch_utc":null},{"commit":"9dd553192fbca3037b3afe5df6bae88f7a8a9365","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 13:40:09 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 18 13:40:09 2022 -0800","stats":{"files_changed":5,"insertions":29,"deletions":12,"files":["CHANGELOG","README.md","docs/readme.md","man/jc.1","templates/readme_template"]},"message":"doc update","epoch":1642542009,"epoch_utc":null},{"commit":"fa3f02e9d1ac7867e3465c2d214f4e4229ff4c66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 13:39:51 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 18 13:39:51 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump","epoch":1642541991,"epoch_utc":null},{"commit":"0a9dde58c5235f78c4c9ae9c013f7454482c6067","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 13:10:14 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 18 13:10:14 2022 -0800","stats":{"files_changed":3,"insertions":228,"deletions":134,"files":["jc/__init__.py","jc/cli.py","jc/lib.py"]},"message":"add jc.parse() high-level API","epoch":1642540214,"epoch_utc":null},{"commit":"70cb4453bebb235130e2c287633ecb1de6c2b0aa","merge":"e6900e2 830674c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 14 11:54:29 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Jan 14 11:54:29 2022 -0800","message":"Merge pull request #195 from kellyjonbrazil/dev\n\nDev v1.17.7","epoch":1642190069,"epoch_utc":null},{"commit":"830674cc6f19e107347a743baff7bbaab7f80b75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 14 11:47:25 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 14 11:47:25 2022 -0800","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["CHANGELOG","jc/__init__.py","man/jc.1","setup.py"]},"message":"version bump","epoch":1642189645,"epoch_utc":null},{"commit":"fb406b58a12fdfe81bcff76671661af77e7f2fe5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jan 8 20:22:53 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Jan 8 20:22:53 2022 -0800","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["docs/parsers/stat_s.md","jc/parsers/stat_s.py","man/jc.1"]},"message":"formatting","epoch":1641702173,"epoch_utc":null},{"commit":"55b272e41259ddc835cf4eb513fb67e7b2cf1573","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 6 11:13:14 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 6 11:13:14 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat_s.py"]},"message":"tighten stat data detection","epoch":1641496394,"epoch_utc":null},{"commit":"94f62a9bf36242310790a0f37c66b2e6c6fdc078","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 6 11:03:49 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 6 11:03:49 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/stat_s.md","jc/parsers/stat_s.py"]},"message":"formatting","epoch":1641495829,"epoch_utc":null},{"commit":"8d19e4cb7b45e3b6cb8c404c959949b7593c9386","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 6 11:00:53 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 6 11:00:53 2022 -0800","stats":{"files_changed":4,"insertions":115,"deletions":1,"files":["CHANGELOG","README.md","docs/parsers/stat_s.md","man/jc.1"]},"message":"doc update","epoch":1641495653,"epoch_utc":null},{"commit":"7e510d48e0f8426a67cf8d70d06d0331c274d358","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 6 10:36:33 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 6 10:36:33 2022 -0800","stats":{"files_changed":7,"insertions":106,"deletions":2,"files":["jc/parsers/stat_s.py","tests/fixtures/centos-7.7/stat-streaming.json","tests/fixtures/freebsd12/stat-streaming.json",".../stat-filename-with-spaces-streaming.json","tests/fixtures/osx-10.14.6/stat-streaming.json","tests/fixtures/ubuntu-18.04/stat-streaming.json","tests/test_stat_s.py"]},"message":"simplify non-stat parse error logic","epoch":1641494193,"epoch_utc":null},{"commit":"7b20cffb143447f4497bc4e895eac2426e8a519f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 5 11:44:00 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 5 11:44:00 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/stat_s.py"]},"message":"simplify last item logic","epoch":1641411840,"epoch_utc":null},{"commit":"5c934c43c13b69183561da8a77280feb3363e950","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 5 11:39:00 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 5 11:39:00 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/stat_s.py"]},"message":"add continue to simplify logic","epoch":1641411540,"epoch_utc":null},{"commit":"8609298449e997ba4804d818f4fc23cb393ded7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 5 11:25:58 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 5 11:25:58 2022 -0800","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/parsers/stat_s.py"]},"message":"update docstring","epoch":1641410758,"epoch_utc":null},{"commit":"72cb0dc10b2dac486d3e2a52cf44baf0d7496034","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 5 11:22:01 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 5 11:22:01 2022 -0800","stats":{"files_changed":1,"insertions":14,"deletions":10,"files":["jc/parsers/stat_s.py"]},"message":"fixup for first and last items","epoch":1641410521,"epoch_utc":null},{"commit":"7b22fa81ded0f6f59e250ffea63c5d2a0f928b25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 5 07:46:58 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 5 07:46:58 2022 -0800","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/parsers/stat_s.py"]},"message":"raise for non-stat data","epoch":1641397618,"epoch_utc":null},{"commit":"0b6a1307790e0793917bc2781e4873aa9dd67225","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 16:43:38 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 4 16:43:38 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/stat_s.py"]},"message":"ignore blank lines","epoch":1641343418,"epoch_utc":null},{"commit":"fdcf4338e0f099699f8d48df6382be1cc97dba84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 15:31:00 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 4 15:31:00 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["jc/parsers/stat_s.py"]},"message":"add examples to docstring","epoch":1641339060,"epoch_utc":null},{"commit":"ee43037f481286a34a766390568965fdd53af132","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 15:13:42 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 4 15:13:42 2022 -0800","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/stat_s.py"]},"message":"remove unused continue lines","epoch":1641338022,"epoch_utc":null},{"commit":"26e365563c314e694915c7a3feae490ea99a112c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 15:07:45 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 4 15:07:45 2022 -0800","stats":{"files_changed":1,"insertions":50,"deletions":11,"files":["jc/parsers/stat_s.py"]},"message":"add schema and _process logic","epoch":1641337665,"epoch_utc":null},{"commit":"1b39586bb1b62aee8ae709512c2e3f79cefdb3d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 15:01:42 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 4 15:01:42 2022 -0800","stats":{"files_changed":2,"insertions":227,"deletions":0,"files":["jc/cli.py","jc/parsers/stat_s.py"]},"message":"add stat streaming parser","epoch":1641337302,"epoch_utc":null},{"commit":"8bb3a6bea34d60d49039f1ed72fd7e413edc05da","merge":"78672bd e6900e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 13:33:35 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Jan 4 13:33:35 2022 -0800","message":"Merge pull request #194 from kellyjonbrazil/master\n\nsync to dev","epoch":1641332015,"epoch_utc":null},{"commit":"e6900e2000bf265dfcfc09ffbfda39e9238661af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:41:16 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 3 09:41:16 2022 -0800","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["EXAMPLES.md"]},"message":"add jar-manifest","epoch":1641231676,"epoch_utc":null},{"commit":"0ee244756bf39123e4873eb231156edbe7f0e0ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:22:35 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 3 09:22:35 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/jar_manifest.md","jc/parsers/jar_manifest.py"]},"message":"spelling","epoch":1641230555,"epoch_utc":null},{"commit":"6d5ac9abe6712e01887ce0d96c278a568319f405","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:19:40 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 3 09:19:40 2022 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["docs/parsers/csv.md","docs/parsers/csv_s.md","man/jc.1"]},"message":"update docs","epoch":1641230380,"epoch_utc":null},{"commit":"44f6d9e1321459be8196aeebf6db088cc5120e61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:18:43 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 3 09:18:43 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"changelog update","epoch":1641230323,"epoch_utc":null},{"commit":"360154559c5dee6affa55bbdd5d2f473248b9168","merge":"241d53a 78672bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:12:50 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Jan 3 09:12:50 2022 -0800","message":"Merge pull request #193 from kellyjonbrazil/dev\n\nDev add csv doublequote fix","epoch":1641229970,"epoch_utc":null},{"commit":"78672bd7ad66c418e0ecf31add73f887b0946d29","merge":"bc7973a 65d96e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:08:57 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Jan 3 09:08:57 2022 -0800","message":"Merge pull request #190 from shaikustin/csv-doubleqouted\n\nfix doubleqoute in csv","epoch":1641229737,"epoch_utc":null},{"commit":"65d96e26b59e231c77c1dbba1dc91708c33de30c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:06:00 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 3 09:06:00 2022 -0800","stats":{"files_changed":2,"insertions":13,"deletions":0,"files":["tests/fixtures/generic/csv-doubleqouted-streaming.json","tests/test_csv_s.py"]},"message":"add streaming tests","epoch":1641229560,"epoch_utc":null},{"commit":"241d53af9a5c9bba70e28835e22c52c0060269ba","merge":"f733100 bc7973a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 08:49:15 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Jan 3 08:49:15 2022 -0800","message":"Merge pull request #192 from kellyjonbrazil/dev\n\nDev v1.17.6","epoch":1641228555,"epoch_utc":null},{"commit":"5563829df2849a899df2e9211d6c92bddc695f9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 08:48:23 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 3 08:48:23 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/csv_s.py"]},"message":"make dialect sniff behavior match non-streaming parser","epoch":1641228503,"epoch_utc":null},{"commit":"3a4a27e1f94ee07352c7616c57ec655c1aea04f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 11:44:25 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 2 11:44:25 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/csv.py"]},"message":"version bump","epoch":1641152665,"epoch_utc":null},{"commit":"9c887a36a804d817c3f669a55b9b1566d09d645d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 11:44:18 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 2 11:44:18 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/csv_s.py"]},"message":"update csv_s parser with csv changes","epoch":1641152658,"epoch_utc":null},{"commit":"bc7973af36e13006230b5faa9e201e300d468912","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 11:07:15 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 2 11:07:15 2022 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","jc/cli.py","man/jc.1"]},"message":"update copyright","epoch":1641150435,"epoch_utc":null},{"commit":"32972d8fdbdc71923978fd5c2a87fd6cfa4b7f8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 11:00:52 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 2 11:00:52 2022 -0800","stats":{"files_changed":7,"insertions":122,"deletions":9,"files":["CHANGELOG","README.md","docs/parsers/jar_manifest.md","jc/__init__.py","jc/parsers/jar_manifest.py","man/jc.1","setup.py"]},"message":"doc update","epoch":1641150052,"epoch_utc":null},{"commit":"b128d9109cbdb1176f2473d450023bb0be02531b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 10:51:02 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 2 10:51:02 2022 -0800","stats":{"files_changed":1,"insertions":46,"deletions":0,"files":["tests/test_jar_manifest.py"]},"message":"add MANIFEST.MF tests","epoch":1641149462,"epoch_utc":null},{"commit":"929d7273a422c2bd5b83e5e19d32630f1a027f75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 10:29:56 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 2 10:29:56 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/jar_manifest.py"]},"message":"doc updates","epoch":1641148196,"epoch_utc":null},{"commit":"2a40f842743a8745d651b4b6cae645045e6c6aab","author":"shaik","author_email":"shai.kustin@torq.io","date":"Sun Jan 2 17:11:20 2022 +0200","commit_by":"shaik","commit_by_email":"shai.kustin@torq.io","commit_by_date":"Sun Jan 2 17:30:25 2022 +0200","stats":{"files_changed":4,"insertions":22,"deletions":1,"files":["jc/parsers/csv.py","tests/fixtures/generic/csv-doubleqouted.csv","tests/fixtures/generic/csv-doubleqouted.json","tests/test_csv.py"]},"message":"fix doubleqoute in csv","epoch":1641172280,"epoch_utc":null},{"commit":"9ff6fa818f0857321e4b3b089d288997f2ae27af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jan 1 10:08:40 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Jan 1 10:08:40 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add jar-manifest","epoch":1641060520,"epoch_utc":null},{"commit":"dac73a4bfe24e36474fdf6ff60c23e784ca409bd","merge":"d789554 f733100","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jan 1 10:06:46 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sat Jan 1 10:06:46 2022 -0800","message":"Merge pull request #189 from kellyjonbrazil/master\n\nuse github releases instead of packaging site","epoch":1641060406,"epoch_utc":null},{"commit":"d7895547f74744e82317eabe4c870115701872be","merge":"f8e09ae b7d439c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jan 1 10:04:47 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sat Jan 1 10:04:47 2022 -0800","message":"Merge pull request #188 from listuser/new_branch\n\nCreate key value pairs from a MANIFEST.MF file, to include key multiline value pairs.","epoch":1641060287,"epoch_utc":null},{"commit":"b7d439cb870e443e4f4e4a2137ab170835e77eff","author":"listuser","author_email":null,"date":"Fri Dec 31 12:15:50 2021 -0800","commit_by":"listuser","commit_by_email":null,"commit_by_date":"Fri Dec 31 12:15:50 2021 -0800","stats":{"files_changed":3,"insertions":2220,"deletions":9,"files":["jc/parsers/{jar-manifest.py => jar_manifest.py}","tests/fixtures/rhel-8/MANIFEST.MF.MULTI.json","tests/fixtures/rhel-8/MANIFEST.MF.MULTI.out"]},"message":"Renamed jar-manifest.py to jar_manifest.py, added multi manifest outputs to tests...","epoch":1640981750,"epoch_utc":null},{"commit":"7cc903a5f5ca368be97babadc72689375567a901","author":"listuser","author_email":null,"date":"Thu Dec 30 15:10:53 2021 -0800","commit_by":"listuser","commit_by_email":null,"commit_by_date":"Thu Dec 30 15:10:53 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/jar-manifest.py"]},"message":"Removed inflating from examples in jar-manifest.py","epoch":1640905853,"epoch_utc":null},{"commit":"c495a8291bd3e1fd070ee2e018b9b550f9c86314","author":"listuser","author_email":null,"date":"Thu Dec 30 15:06:06 2021 -0800","commit_by":"listuser","commit_by_email":null,"commit_by_date":"Thu Dec 30 15:06:06 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":292,"files":["tests/fixtures/rhel-8/MANIFEST.MF.json"]},"message":"Updated test output in MANIFEST.MF.json","epoch":1640905566,"epoch_utc":null},{"commit":"5e1d7d777c627fb17feda6e51d9640bbd0f03302","author":"listuser","author_email":null,"date":"Thu Dec 30 15:02:48 2021 -0800","commit_by":"listuser","commit_by_email":null,"commit_by_date":"Thu Dec 30 15:02:48 2021 -0800","stats":{"files_changed":8,"insertions":304,"deletions":2544,"files":["jc/parsers/{metamf.py => jar-manifest.py}","tests/fixtures/rhel-8/MANIFEST.MF.json",".../rhel-8/{MANIFEST.MF => MANIFEST.MF.out}",".../rhel-8/cmds_used_to_generate_test_data.txt",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out"]},"message":"Renamed metamf.py to jar-manifest.py, plus other changes","epoch":1640905368,"epoch_utc":null},{"commit":"7edad3f676fe5560017ca9cb05ede6f46787e78f","author":"listuser","author_email":null,"date":"Wed Dec 29 12:15:15 2021 -0800","commit_by":"listuser","commit_by_email":null,"commit_by_date":"Wed Dec 29 12:15:15 2021 -0800","stats":{"files_changed":8,"insertions":3042,"deletions":0,"files":["jc/parsers/metamf.py","tests/fixtures/rhel-8/MANIFEST.MF","tests/fixtures/rhel-8/MANIFEST.MF.json",".../rhel-8/cmds_used_to_generate_test_data.txt",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out"]},"message":"Create key value pairs from a MANIFEST.MF file, to include key multiline value pairs.","epoch":1640808915,"epoch_utc":null},{"commit":"f7331001d4ab976e311458a16b6e5337da2e3aab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 23 11:35:39 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 23 11:35:39 2021 -0800","stats":{"files_changed":3,"insertions":9,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"]},"message":"use github releases instead of packaging site","epoch":1640288139,"epoch_utc":null},{"commit":"f8e09ae2ffe185d21305d566fad20f510df9890f","merge":"2e4f5a5 433c7cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 15:46:39 2021 -0600","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Dec 21 15:46:39 2021 -0600","message":"Merge pull request #187 from kellyjonbrazil/master\n\nsync to dev","epoch":1640130399,"epoch_utc":null},{"commit":"433c7cc0f05e321ffe024845a908f3e856d4cd2b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 13:42:24 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 21 13:42:24 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/zipinfo.md","jc/parsers/zipinfo.py"]},"message":"formatting","epoch":1640122944,"epoch_utc":null},{"commit":"d753e71a7452310d45fa605a2e4c70320ed60dbb","merge":"3ac8d03 2e4f5a5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 15:21:18 2021 -0600","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Dec 21 15:21:18 2021 -0600","message":"Merge pull request #186 from kellyjonbrazil/dev\n\nDev v1.17.5","epoch":1640128878,"epoch_utc":null},{"commit":"2e4f5a508b6c90f9e03dcbcf64efc0e2fc446666","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 12:19:17 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 21 12:19:17 2021 -0800","stats":{"files_changed":4,"insertions":6,"deletions":3,"files":["CHANGELOG","jc/__init__.py","man/jc.1","setup.py"]},"message":"version bump","epoch":1640117957,"epoch_utc":null},{"commit":"88b960eff6cb3739d0d243c8d8b3e8ad5b8eb97c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 12:14:20 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 21 12:14:20 2021 -0800","stats":{"files_changed":4,"insertions":144,"deletions":1,"files":["EXAMPLES.md","README.md","docs/parsers/zipinfo.md","man/jc.1"]},"message":"doc update","epoch":1640117660,"epoch_utc":null},{"commit":"88c77bd89e2c2a5f023e6638816c9153b6276d35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 12:08:16 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 21 12:08:16 2021 -0800","stats":{"files_changed":2,"insertions":47,"deletions":0,"files":["tests/fixtures/osx-10.14.6/zipinfo-multi.json","tests/test_zipinfo.py"]},"message":"add zipinfo tests","epoch":1640117296,"epoch_utc":null},{"commit":"51a7a4251fff518d8da78ffa41e7ba2e2cb47f12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 11:11:56 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 21 11:11:56 2021 -0800","stats":{"files_changed":1,"insertions":24,"deletions":0,"files":["tests/fixtures/osx-10.14.6/zipinfo-multi.out"]},"message":"add multi-archive test output","epoch":1640113916,"epoch_utc":null},{"commit":"51d2f316f388d962c26aeb4f42affebec339e5a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 11:11:44 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 21 11:11:44 2021 -0800","stats":{"files_changed":1,"insertions":97,"deletions":72,"files":["jc/parsers/zipinfo.py"]},"message":"add multi-archive support","epoch":1640113904,"epoch_utc":null},{"commit":"ff78a46c4854339a097992701351ef471aff1671","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 08:13:17 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 21 08:13:17 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"add zipinfo parser","epoch":1640103197,"epoch_utc":null},{"commit":"ed4a9dc1d470f64bcc9de35b2d98568ffd50257d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 08:13:00 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 21 08:13:00 2021 -0800","stats":{"files_changed":1,"insertions":21,"deletions":23,"files":["jc/parsers/zipinfo.py"]},"message":"formatting","epoch":1640103180,"epoch_utc":null},{"commit":"63182dba26040974cb8cada6f5910bb29b1fa3ed","merge":"b450697 9c1eaa9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 10:08:46 2021 -0600","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Dec 21 10:08:46 2021 -0600","message":"Merge pull request #185 from listuser/new_branch\n\ncontributed zipinfo parser","epoch":1640110126,"epoch_utc":null},{"commit":"9c1eaa938934269fe4179da798acf5f119cde0cf","author":"Matt J","author_email":"none","date":"Mon Dec 20 21:53:34 2021 -0800","commit_by":"Matt J","commit_by_email":"none","commit_by_date":"Mon Dec 20 21:53:34 2021 -0800","stats":{"files_changed":2,"insertions":68,"deletions":61,"files":["jc/parsers/zipinfo.py","tests/fixtures/rhel-8/zipinfo.json"]},"message":"revised zipinfo.py nested version","epoch":1640066014,"epoch_utc":null},{"commit":"bc520fcbcdfad6a53e51944391fd24512bed8128","author":"Matt J","author_email":"none","date":"Mon Dec 20 14:29:50 2021 -0800","commit_by":"Matt J","commit_by_email":"none","commit_by_date":"Mon Dec 20 14:29:50 2021 -0800","stats":{"files_changed":2,"insertions":63,"deletions":53,"files":["jc/parsers/zipinfo.py","tests/fixtures/rhel-8/zipinfo.json"]},"message":"added zipinfo.py nested version","epoch":1640039390,"epoch_utc":null},{"commit":"46faac1a12a5b39d6a25427f6e8fdcca1204dbcd","author":"Matt J","author_email":"none","date":"Sun Dec 19 17:44:56 2021 -0800","commit_by":"Matt J","commit_by_email":"none","commit_by_date":"Sun Dec 19 18:08:11 2021 -0800","stats":{"files_changed":2,"insertions":1222,"deletions":0,"files":["tests/fixtures/rhel-8/zipinfo.json","tests/fixtures/rhel-8/zipinfo.out"]},"message":"add test data zipinfo.json and zipinfo.out","epoch":1639964696,"epoch_utc":null},{"commit":"3c424c0cb3cff462a963183585b57bea004e974f","author":"Matt J","author_email":"none","date":"Sun Dec 19 14:05:48 2021 -0800","commit_by":"Matt J","commit_by_email":"none","commit_by_date":"Sun Dec 19 14:05:48 2021 -0800","stats":{"files_changed":1,"insertions":165,"deletions":0,"files":["jc/parsers/zipinfo.py"]},"message":"initial commit zipinfo.py to new_branch","epoch":1639951548,"epoch_utc":null},{"commit":"3ac8d0362b4fb9999fc55a60a9cb20ac80d114f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 16 07:04:35 2021 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Dec 16 07:04:35 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"use quotes around python versions","epoch":1639667075,"epoch_utc":null},{"commit":"d88b998e6c7826a9ecae18663328e2d2915030fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 9 10:58:06 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 9 10:58:06 2021 -0800","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"]},"message":"formatting","epoch":1639076286,"epoch_utc":null},{"commit":"a9ed55c00652a563391a7930c7a4649967131ae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 9 10:54:04 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 9 10:54:04 2021 -0800","stats":{"files_changed":11,"insertions":11,"deletions":11,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]},"message":"fix spelling","epoch":1639076044,"epoch_utc":null},{"commit":"ea614341232e5272ee0c7fd46ba0f313033c761f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 9 10:21:37 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 9 10:21:37 2021 -0800","stats":{"files_changed":4,"insertions":16,"deletions":8,"files":["docs/parsers/crontab.md","docs/parsers/crontab_u.md","jc/parsers/crontab.py","jc/parsers/crontab_u.py"]},"message":"fix schema docs","epoch":1639074097,"epoch_utc":null},{"commit":"a73d0d26cbe2860b8374661068e09e0717a3bab2","merge":"a7de911 b450697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 20:49:01 2021 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Dec 8 20:49:01 2021 -0800","message":"Merge pull request #184 from kellyjonbrazil/dev\n\nDev 1.17.4","epoch":1639025341,"epoch_utc":null},{"commit":"b4506976e3c865397bc657183d49c484d8bcfd7a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 11:21:12 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 8 11:21:12 2021 -0800","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["man/jc.1","templates/manpage_template"]},"message":"formatting","epoch":1638991272,"epoch_utc":null},{"commit":"34cb75a09697a06c3878f2f9a84eb3bd2a90ae62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:46:00 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 8 08:46:00 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/__init__.py","setup.py"]},"message":"version bump","epoch":1638981960,"epoch_utc":null},{"commit":"34df643f60712ae25645cb7cddff80e43c12262b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:35:09 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 8 08:35:09 2021 -0800","stats":{"files_changed":4,"insertions":18,"deletions":0,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"add disable colors section","epoch":1638981309,"epoch_utc":null},{"commit":"ac7c13fcc013d386f34db51d634298fa3e97eccd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:22:28 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 8 08:22:28 2021 -0800","stats":{"files_changed":4,"insertions":11,"deletions":1,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"add -C option to docs","epoch":1638980548,"epoch_utc":null},{"commit":"4fdb34c7d5fcaa65e2ccab814c3acf2f0f70c442","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:19:43 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 8 08:19:43 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"add no-color.org","epoch":1638980383,"epoch_utc":null},{"commit":"7ac468e35aac1a63c4e22f33aead74a6e41a22a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:14:36 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 8 08:14:36 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update","epoch":1638980076,"epoch_utc":null},{"commit":"df190aa299f1669d1fe09380026ae086839abc02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:14:28 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 8 08:14:28 2021 -0800","stats":{"files_changed":1,"insertions":15,"deletions":7,"files":["jc/cli.py"]},"message":"add -C option to force color even with pipes","epoch":1638980068,"epoch_utc":null},{"commit":"9621475e86fe20fcdc2902b6ce7860a833ae2ca0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 7 15:46:02 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 7 15:46:02 2021 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update","epoch":1638920762,"epoch_utc":null},{"commit":"82e0160de820ad2ed6143f58458711d600b929a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 7 15:45:11 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 7 15:45:11 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"refactor NO_COLOR test","epoch":1638920711,"epoch_utc":null},{"commit":"d03fb8b626a97e81006d0b108c8f400fe4e2ce3b","merge":"b300dfb 7933dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 7 15:34:23 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 7 15:34:23 2021 -0800","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev","epoch":1638920063,"epoch_utc":null},{"commit":"b300dfb3d75fe76e2ddbb087ff742dd0b5e6155b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 7 15:34:20 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 7 15:34:20 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"Add support for NO_COLOR env variable","epoch":1638920060,"epoch_utc":null},{"commit":"a7de9111d97e687cafbc0709ec3ff7453d658a80","merge":"21e69a7 7933dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 16:37:46 2021 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Dec 2 16:37:46 2021 -0800","message":"Merge pull request #183 from kellyjonbrazil/dev\n\nDev v1.17.3","epoch":1638491866,"epoch_utc":null},{"commit":"7933dfdbe7bf400833d6f6b771362dfc518b9a8d","merge":"f7cb5f7 21e69a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 16:34:06 2021 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Dec 2 16:34:06 2021 -0800","message":"Merge branch 'master' into dev","epoch":1638491646,"epoch_utc":null},{"commit":"f7cb5f7d01ac01538bee4da816408072b585768e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 16:30:47 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 2 16:30:47 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"update date","epoch":1638491447,"epoch_utc":null},{"commit":"a26a298f1a3c141171e7d7ce459a27a297cec031","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 11:42:56 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 2 11:42:56 2021 -0800","stats":{"files_changed":4,"insertions":148,"deletions":1,"files":["README.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","man/jc.1"]},"message":"doc update","epoch":1638474176,"epoch_utc":null},{"commit":"dbd134d0dac2fc152183480958fd9e65919ac98d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 11:40:47 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 2 11:40:47 2021 -0800","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/iostat_s.py"]},"message":"add examples to docs","epoch":1638474047,"epoch_utc":null},{"commit":"11aa01b0d9d6913059f98f9bd7591d7cad9037cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 11:38:00 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 2 11:38:00 2021 -0800","stats":{"files_changed":15,"insertions":15,"deletions":1,"files":["jc/parsers/iostat_s.py","tests/fixtures/centos-7.7/iostat-1-streaming.json","tests/fixtures/centos-7.7/iostat-m-streaming.json","tests/fixtures/centos-7.7/iostat-mx-streaming.json","tests/fixtures/centos-7.7/iostat-streaming.json","tests/fixtures/centos-7.7/iostat-x-streaming.json","tests/fixtures/ubuntu-18.04/iostat-1-streaming.json","tests/fixtures/ubuntu-18.04/iostat-m-streaming.json","tests/fixtures/ubuntu-18.04/iostat-mx-streaming.json","tests/fixtures/ubuntu-18.04/iostat-streaming.json","tests/fixtures/ubuntu-18.04/iostat-x-streaming.json","tests/fixtures/ubuntu-20.10/iostat-m-streaming.json","tests/fixtures/ubuntu-20.10/iostat-mx-streaming.json","tests/fixtures/ubuntu-20.10/iostat-streaming.json","tests/fixtures/ubuntu-20.10/iostat-x-streaming.json"]},"message":"iostat-s tests","epoch":1638473880,"epoch_utc":null},{"commit":"6f18e5344356684e845ec63158c570d82156254f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 11:37:52 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 2 11:37:52 2021 -0800","stats":{"files_changed":1,"insertions":203,"deletions":0,"files":["tests/test_iostat_s.py"]},"message":"fix for null lines","epoch":1638473872,"epoch_utc":null},{"commit":"7b467c466568ad4e7986d4d7cf3ec606681b6d46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 09:30:16 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 2 09:30:16 2021 -0800","stats":{"files_changed":9,"insertions":137,"deletions":0,"files":["tests/fixtures/ubuntu-20.10/iostat-m.json","tests/fixtures/ubuntu-20.10/iostat-m.out","tests/fixtures/ubuntu-20.10/iostat-mx.json","tests/fixtures/ubuntu-20.10/iostat-mx.out","tests/fixtures/ubuntu-20.10/iostat-x.json","tests/fixtures/ubuntu-20.10/iostat-x.out","tests/fixtures/ubuntu-20.10/iostat.json","tests/fixtures/ubuntu-20.10/iostat.out","tests/test_iostat.py"]},"message":"add ubuntu 20.10 tests","epoch":1638466216,"epoch_utc":null},{"commit":"537b8f263087894c02b5b7c121765cf96182a370","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 09:14:43 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 2 09:14:43 2021 -0800","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"]},"message":"add more int conversions","epoch":1638465283,"epoch_utc":null},{"commit":"4d823575e791999e200dedd491511c4fde64fc2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 08:47:25 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 2 08:47:25 2021 -0800","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"]},"message":"add more float fields","epoch":1638463645,"epoch_utc":null},{"commit":"541aa1d09f20ff6979eabaa66790decb3895f18d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 08:41:36 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 2 08:41:36 2021 -0800","stats":{"files_changed":2,"insertions":68,"deletions":8,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"]},"message":"Add new field float conversions for iostat v11","epoch":1638463296,"epoch_utc":null},{"commit":"8f02021014b7b19acf1a8bbd777161aa82c65d66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 05:54:38 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 2 05:54:38 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/iostat_s.py"]},"message":"formatting","epoch":1638453278,"epoch_utc":null},{"commit":"158a15157c7e5dde95dc21766d0696bd82486688","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:47:17 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 1 16:47:17 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update","epoch":1638406037,"epoch_utc":null},{"commit":"2752e0d66a9ba0b57ac86913fd302ada23c280c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:47:09 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 1 16:47:09 2021 -0800","stats":{"files_changed":2,"insertions":166,"deletions":0,"files":["jc/cli.py","jc/parsers/iostat_s.py"]},"message":"add iostat streaming parser","epoch":1638406029,"epoch_utc":null},{"commit":"6c11e912afe3c4d16da9199b5c2fc10461928ac3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:14:22 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 1 16:14:22 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"update changelog","epoch":1638404062,"epoch_utc":null},{"commit":"43d34461e27e3e4ac5f985786831c170b348c7c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:12:51 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 1 16:12:51 2021 -0800","stats":{"files_changed":83,"insertions":279,"deletions":81,"files":["README.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/utils.md","man/jc.1"]},"message":"update docs","epoch":1638403971,"epoch_utc":null},{"commit":"4dfdc9b0f65d8c950ed74545d0cc3f95c8abec6c","merge":"e2311cb 6665ffa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:02:10 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 1 16:02:10 2021 -0800","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev","epoch":1638403330,"epoch_utc":null},{"commit":"e2311cbb03f407414df953c8d1c07d0cf1a549ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:02:06 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 1 16:02:06 2021 -0800","stats":{"files_changed":21,"insertions":400,"deletions":0,"files":["tests/fixtures/centos-7.7/iostat-1.json","tests/fixtures/centos-7.7/iostat-1.out","tests/fixtures/centos-7.7/iostat-m.json","tests/fixtures/centos-7.7/iostat-m.out","tests/fixtures/centos-7.7/iostat-mx.json","tests/fixtures/centos-7.7/iostat-mx.out","tests/fixtures/centos-7.7/iostat-x.json","tests/fixtures/centos-7.7/iostat-x.out","tests/fixtures/centos-7.7/iostat.json","tests/fixtures/centos-7.7/iostat.out","tests/fixtures/ubuntu-18.04/iostat-1.json","tests/fixtures/ubuntu-18.04/iostat-1.out","tests/fixtures/ubuntu-18.04/iostat-m.json","tests/fixtures/ubuntu-18.04/iostat-m.out","tests/fixtures/ubuntu-18.04/iostat-mx.json","tests/fixtures/ubuntu-18.04/iostat-mx.out","tests/fixtures/ubuntu-18.04/iostat-x.json","tests/fixtures/ubuntu-18.04/iostat-x.out","tests/fixtures/ubuntu-18.04/iostat.json","tests/fixtures/ubuntu-18.04/iostat.out","tests/test_iostat.py"]},"message":"add iostat tests","epoch":1638403326,"epoch_utc":null},{"commit":"bf15575e90985cfec5c57dd11dfa2b86d53a41be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:01:52 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 1 16:01:52 2021 -0800","stats":{"files_changed":1,"insertions":14,"deletions":7,"files":["jc/parsers/iostat.py"]},"message":"fixes for ubunut","epoch":1638403312,"epoch_utc":null},{"commit":"406336c7185b539b5e00532b58146d5b1b73f259","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 13:53:31 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 1 13:53:31 2021 -0800","stats":{"files_changed":1,"insertions":44,"deletions":0,"files":["EXAMPLES.md"]},"message":"add iostat example","epoch":1638395611,"epoch_utc":null},{"commit":"6665ffaeb8107e9db3b917db0663beaf44024533","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 10:59:07 2021 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Dec 1 10:59:07 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"remove python 3.6 from tests","epoch":1638385147,"epoch_utc":null},{"commit":"dcf552ca0c69aa5f0309a83dc33dee7c5ed81292","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 10:34:55 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 1 10:34:55 2021 -0800","stats":{"files_changed":1,"insertions":138,"deletions":47,"files":["jc/parsers/iostat.py"]},"message":"add _process and cleanup","epoch":1638383695,"epoch_utc":null},{"commit":"7a6ebf3c9555dd82df7dc0b71981cdd32ce0061d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 16:54:32 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 16:54:32 2021 -0800","stats":{"files_changed":2,"insertions":171,"deletions":0,"files":["jc/cli.py","jc/parsers/iostat.py"]},"message":"add iostat parser","epoch":1638320072,"epoch_utc":null},{"commit":"d2dc4a983c86c538e13e568b908072de4ca0daaf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 11:59:26 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 11:59:26 2021 -0800","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"]},"message":"changelog update","epoch":1638302366,"epoch_utc":null},{"commit":"1168259bc23862f671326d41f5282a3575205214","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 11:57:04 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 11:57:04 2021 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"]},"message":"add doc strings","epoch":1638302224,"epoch_utc":null},{"commit":"e8e4b46021557fbf5776c32dff46de022817fb6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 11:49:40 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 11:49:40 2021 -0800","stats":{"files_changed":5,"insertions":14,"deletions":19,"files":["jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]},"message":"use jc.utils type checks","epoch":1638301780,"epoch_utc":null},{"commit":"12d2de22821fd8f57f4d412e62f53db3d89d5e30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 11:43:06 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 11:43:06 2021 -0800","stats":{"files_changed":77,"insertions":181,"deletions":165,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/utils.py"]},"message":"use jc.utils.input_type_check() and simplify compatibility check","epoch":1638301386,"epoch_utc":null},{"commit":"0e2fe401e1c49a9f947d7d17b72cfc4e90787f47","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 10:08:27 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 10:08:27 2021 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]},"message":"version bump","epoch":1638295707,"epoch_utc":null},{"commit":"14247adb0ae007924ca551a706eb0cfdbae97a41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 10:03:59 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 10:03:59 2021 -0800","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["jc/parsers/csv_s.py","tests/test_csv_s.py"]},"message":"add input type checks","epoch":1638295439,"epoch_utc":null},{"commit":"3a9f0934c41c85ea7fa87165b9559f08814645cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 09:56:33 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 09:56:33 2021 -0800","stats":{"files_changed":2,"insertions":5,"deletions":3,"files":["jc/parsers/ls_s.py","tests/test_ls_s.py"]},"message":"add input type checks","epoch":1638294993,"epoch_utc":null},{"commit":"caf0a5c8713bf0d72951a2c6fd5a2c62c9eb59d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 09:51:27 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 09:51:27 2021 -0800","stats":{"files_changed":2,"insertions":7,"deletions":4,"files":["jc/parsers/vmstat_s.py","tests/test_vmstat_s.py"]},"message":"add input type checking","epoch":1638294687,"epoch_utc":null},{"commit":"cfb58b1cf3e3028f8e03fdd93f0165cf8d230e1e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 09:41:16 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 09:41:16 2021 -0800","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/parsers/foo_s.py"]},"message":"add input type checks","epoch":1638294076,"epoch_utc":null},{"commit":"975cf195cc02774f50460ca479d9ebb7b73c7870","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 09:40:49 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 09:40:49 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping_s.py"]},"message":"formatting","epoch":1638294049,"epoch_utc":null},{"commit":"8a46a259a36efc55bb0b2141acb9dd5ae52b7725","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 09:19:51 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 09:19:51 2021 -0800","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["jc/parsers/ping_s.py","tests/test_ping_s.py"]},"message":"add input type checks","epoch":1638292791,"epoch_utc":null},{"commit":"e395142e599aa78b4a7ec80dcc3f8ccf279f97b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 29 16:45:22 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 29 16:45:22 2021 -0800","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"]},"message":"version bump","epoch":1638233122,"epoch_utc":null},{"commit":"caaeaf0d67cf44f8d2651cc53a7528d3ef0c74d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 29 16:29:23 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 29 16:29:23 2021 -0800","stats":{"files_changed":76,"insertions":227,"deletions":227,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"add 'str' type check on input","epoch":1638232163,"epoch_utc":null},{"commit":"21e69a7cbf62240238f6fb78e874dda6ce2e922a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 24 19:33:07 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 24 19:33:07 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"]},"message":"ignore _config.yml","epoch":1637811187,"epoch_utc":null},{"commit":"603964935b58e02cf0614cf67ffacc6d94755e05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 24 19:30:10 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 24 19:30:10 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CHANGELOG"]},"message":"remove trailing whitespace","epoch":1637811010,"epoch_utc":null},{"commit":"47eb83ae55b9892716fff712bd2be21b6191b552","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 24 13:32:51 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 24 13:32:51 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"]},"message":"add .vscode","epoch":1637789571,"epoch_utc":null},{"commit":"fc0ce6c95923ab124961e695a26c0b68dd0f359f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 22 09:45:14 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 22 09:45:14 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"add streaming parser to custom parsers info","epoch":1637603114,"epoch_utc":null},{"commit":"077a29fb4eedcfccb026498c5c3a64b7b7601363","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 22 09:36:58 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 22 09:36:58 2021 -0800","stats":{"files_changed":2,"insertions":14,"deletions":2,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"]},"message":"add _jc_meta field info","epoch":1637602618,"epoch_utc":null},{"commit":"8568d0d328706a7a5b1476452e078d8cbe7b7391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 22 09:10:11 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 22 09:10:11 2021 -0800","stats":{"files_changed":3,"insertions":7,"deletions":3,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py","man/jc.1"]},"message":"fix csv_s documentation","epoch":1637601011,"epoch_utc":null},{"commit":"597d39c28ea0c0fe3b072413e9d91ab5e27b62bd","merge":"b59e38c eb888dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 18 06:52:01 2021 -1000","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Nov 18 06:52:01 2021 -1000","message":"Merge pull request #180 from kellyjonbrazil/dev\n\nDev v1.17.2","epoch":1637247121,"epoch_utc":null},{"commit":"eb888dcbbcf83c9197bd59aab72f65ea6eb622ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 18 08:48:03 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 18 08:48:03 2021 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["jc/__init__.py","man/jc.1","setup.py"]},"message":"version bump","epoch":1637254083,"epoch_utc":null},{"commit":"d1b9ac0841b15ee15690c4066453a322618320ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 18 08:41:52 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 18 08:41:52 2021 -0800","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/df.md","docs/parsers/netstat.md","docs/parsers/ping.md","man/jc.1"]},"message":"doc update","epoch":1637253712,"epoch_utc":null},{"commit":"89a6d9c5c39b74f1b040f410659bfd7ae1a902d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 17 12:03:40 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 17 12:03:40 2021 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/df.py"]},"message":"add key-check to restore previous behavior even with non-df data","epoch":1637179420,"epoch_utc":null},{"commit":"85d983761637129cb85abfb0bbdde7c507061cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 17 11:41:54 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 17 11:41:54 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add df info","epoch":1637178114,"epoch_utc":null},{"commit":"cd7731484d826d84d835ecd460d746e78cadc5fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 17 11:26:42 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 17 11:26:42 2021 -0800","stats":{"files_changed":4,"insertions":62,"deletions":2,"files":["jc/parsers/df.py","tests/fixtures/generic/df-long-filesystem.json","tests/fixtures/generic/df-long-filesystem.out","tests/test_df.py"]},"message":"fix for cases where the Filesystem data overflows the column length (happens on older versions of df)","epoch":1637177202,"epoch_utc":null},{"commit":"086da16b1743c16a5ccdd102f889fb31f99e3caa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 15 13:05:53 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 15 13:05:53 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"version bump","epoch":1637010353,"epoch_utc":null},{"commit":"20830528f04a5ecbe78420d8008249b089667767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 15 12:52:43 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 15 12:52:43 2021 -0800","stats":{"files_changed":4,"insertions":28,"deletions":0,"files":["CHANGELOG","tests/fixtures/generic/netstat-old.json","tests/fixtures/generic/netstat-old.out","tests/test_netstat.py"]},"message":"add test for older netstat version fix","epoch":1637009563,"epoch_utc":null},{"commit":"83371edd8fe3d23dfa92fc707604086522c85ab9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 15 12:25:22 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 15 12:25:22 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat_linux.py"]},"message":"add space before inode to compensate for removed dash","epoch":1637007922,"epoch_utc":null},{"commit":"364a81decc16742e3caa070d90b1d605d96fe2c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 4 10:25:51 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 4 10:25:51 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ping.py"]},"message":"version bump","epoch":1636046751,"epoch_utc":null},{"commit":"ef09592ad3e5c9a77c1bdebe8f876fc4dde54834","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 4 10:21:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 4 10:21:38 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["CHANGELOG"]},"message":"update for 1.17.2","epoch":1636046498,"epoch_utc":null},{"commit":"4a86e109ccb254d5195b782f84f3967c96ef726c","merge":"5ba22da 7fa5391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 4 10:18:47 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Nov 4 10:18:47 2021 -0700","message":"Merge pull request #179 from shaikustin/ping-alpine-linux\n\nsupport alpine linux ping","epoch":1636046327,"epoch_utc":null},{"commit":"7fa5391b6613e62689c624041e03f9750c9c7972","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 4 10:13:44 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Nov 4 10:13:44 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_ping.py"]},"message":"change alpine ping6 to ping","epoch":1636046024,"epoch_utc":null},{"commit":"9b53ba5714819ff760f2d4546f5d2ee4d521c080","author":"shaik","author_email":"shai.kustin@torq.io","date":"Thu Nov 4 13:42:48 2021 +0200","commit_by":"shaik","commit_by_email":"shai.kustin@torq.io","commit_by_date":"Thu Nov 4 13:42:48 2021 +0200","stats":{"files_changed":6,"insertions":45,"deletions":1,"files":["jc/parsers/ping.py",".../fixtures/alpine-linux-3.13/ping-hostname.json","tests/fixtures/alpine-linux-3.13/ping-hostname.out","tests/fixtures/alpine-linux-3.13/ping-ip.json","tests/fixtures/alpine-linux-3.13/ping-ip.out","tests/test_ping.py"]},"message":"support alpine linux ping","epoch":1636058568,"epoch_utc":null},{"commit":"b59e38cfd2c8a7f5868e05d5562557b1c27e5e56","merge":"30cff5f 5ba22da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 30 14:02:25 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sat Oct 30 14:02:25 2021 -0700","message":"Merge pull request #176 from kellyjonbrazil/dev\n\nDev v1.17.1","epoch":1635627745,"epoch_utc":null},{"commit":"5ba22dae597b9d154ca0a82f71cfbd8d8a6325db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 30 13:57:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 30 13:57:36 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"]},"message":"add JSON lines info","epoch":1635627456,"epoch_utc":null},{"commit":"4232e523acc523e510b4881d2a57a95b88ec8c8b","merge":"bee80b3 30cff5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 30 13:49:45 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sat Oct 30 13:49:45 2021 -0700","message":"Merge branch 'master' into dev","epoch":1635626985,"epoch_utc":null},{"commit":"bee80b35d2b8c15e6233f2798e9c02a11e9e1e9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 30 13:47:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 30 13:47:21 2021 -0700","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["CHANGELOG","docs/parsers/csv_s.md","man/jc.1"]},"message":"update for version bump","epoch":1635626841,"epoch_utc":null},{"commit":"c32395f6950d6294770ee93e8bf4d79c7d275ac3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 27 12:54:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 27 12:54:20 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_utils.py"]},"message":"linting","epoch":1635364460,"epoch_utc":null},{"commit":"735c5e1078cc27b5cba03b8ebbae15aeca6b8fbd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 12:26:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 26 12:26:23 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["tests/test_csv_s.py"]},"message":"update comments for ParseError test: https://bugs.python.org/issue45617","epoch":1635276383,"epoch_utc":null},{"commit":"d09c94b292ca3beec92a00f8a51b7259dd30a1e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 12:24:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 26 12:24:49 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add python 3.10 testing info","epoch":1635276289,"epoch_utc":null},{"commit":"4d04866f48f72b9ea0d213dc1533729d3b68a503","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 12:24:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 26 12:24:37 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/csv_s.py"]},"message":"add python bug https://bugs.python.org/issue45617 info","epoch":1635276277,"epoch_utc":null},{"commit":"a2d90f4dfcdc2cb00c6c0fa957493c95a21e256b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 10:04:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 26 10:04:39 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_csv_s.py"]},"message":"force test","epoch":1635267879,"epoch_utc":null},{"commit":"93a5002c8b530bd6f5f81e5d8595cde1f836ae41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 10:01:02 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Oct 26 10:01:02 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"fix 3.10.0 version number","epoch":1635267662,"epoch_utc":null},{"commit":"23bf5227a4c39ea017e55fc21150331e1af6fdb7","merge":"77c96fa 3f5a1f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 07:44:04 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 26 07:44:04 2021 -0700","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev","epoch":1635259444,"epoch_utc":null},{"commit":"77c96fa2a96148221bde7d2274e0dfb5386a166f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 07:43:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 26 07:43:47 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["tests/test_csv_s.py"]},"message":"try tests on python 3.10","epoch":1635259427,"epoch_utc":null},{"commit":"3f5a1f015e9c0807e227b9f7300592e25502e014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 07:42:37 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Oct 26 07:42:37 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"add python 3.10","epoch":1635259357,"epoch_utc":null},{"commit":"b280c4fc18e60a85ab212b09aa5bf3a05a0eceff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 07:36:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 26 07:36:44 2021 -0700","stats":{"files_changed":2,"insertions":11,"deletions":19,"files":[".../fixtures/generic/csv-insurance-streaming.json","tests/test_csv_s.py"]},"message":"add ParseError test to streaming csv parser","epoch":1635259004,"epoch_utc":null},{"commit":"3ab9b43a2eebf535be98c94810ac474bf32ec515","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 07:36:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 26 07:36:23 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/csv_s.py"]},"message":"raise ParseError on newline bug","epoch":1635258983,"epoch_utc":null},{"commit":"46f568414a5c8d2f135486e86d0ada48cfcefeb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 25 11:35:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 25 11:35:01 2021 -0700","stats":{"files_changed":3,"insertions":96,"deletions":89,"files":["tests/test_ls_s.py","tests/test_ping_s.py","tests/test_vmstat_s.py"]},"message":"change streaming parser test names","epoch":1635186901,"epoch_utc":null},{"commit":"cba2fd299fff09a551b780e064a6e22bdf7e539a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 25 11:03:32 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 25 11:03:32 2021 -0700","stats":{"files_changed":9,"insertions":75,"deletions":61,"files":[".../generic/csv-10k-sales-records-streaming.json","tests/fixtures/generic/csv-deniro-streaming.json","tests/fixtures/generic/csv-example-streaming.json","tests/fixtures/generic/csv-flyrna-streaming.json","tests/fixtures/generic/csv-flyrna2-streaming.json",".../fixtures/generic/csv-homes-pipe-streaming.json","tests/fixtures/generic/csv-homes-streaming.json",".../fixtures/generic/csv-insurance-streaming.json","tests/test_csv_s.py"]},"message":"add tests","epoch":1635185012,"epoch_utc":null},{"commit":"1e6e44f656f1bbb277eb38fb485f7b48e3b9e40b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 25 11:03:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 25 11:03:21 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/csv_s.py"]},"message":"fix for piping data with non-platform newlines (e.g. windows csv files on unix)","epoch":1635185001,"epoch_utc":null},{"commit":"acac0399946d9781193e9350dd7109f1dd3999fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 25 10:06:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 25 10:06:01 2021 -0700","stats":{"files_changed":3,"insertions":149,"deletions":0,"files":["tests/fixtures/generic/csv-biostats-streaming.json","tests/fixtures/generic/csv-cities-streaming.json","tests/test_csv_s.py"]},"message":"working tests","epoch":1635181561,"epoch_utc":null},{"commit":"50a3b340164b3139f04f67a2bee16e5343c8a2da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 25 10:05:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 25 10:05:39 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":8,"files":["jc/parsers/csv_s.py"]},"message":"optimizations and use iter() so we can exhaust data coming from list objects","epoch":1635181539,"epoch_utc":null},{"commit":"b45396070cf28fa36ecb44acd7be3e3bb81a712d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 24 13:14:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Oct 24 13:14:05 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_vmstat_s.py"]},"message":"update comment","epoch":1635106445,"epoch_utc":null},{"commit":"218b9aec8ac397e26e6cd4ff407f3d10ef88ea9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 24 13:10:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Oct 24 13:10:47 2021 -0700","stats":{"files_changed":4,"insertions":87,"deletions":48,"files":["README.md","docs/parsers/csv_s.md","jc/parsers/csv_s.py","man/jc.1"]},"message":"doc update for streaming CSV parser","epoch":1635106247,"epoch_utc":null},{"commit":"2b887debc647bd533040e392465967d12869cb02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 24 12:24:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Oct 24 12:24:44 2021 -0700","stats":{"files_changed":4,"insertions":10172,"deletions":1,"files":["CHANGELOG","jc/cli.py","jc/parsers/csv_s.py","tests/fixtures/generic/csv-10k-sales-records.csv"]},"message":"add csv streaming parser","epoch":1635103484,"epoch_utc":null},{"commit":"0313e3f8ca0e22e1575192d765d5afedf48e94df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 24 11:21:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Oct 24 11:21:47 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":6,"files":["jc/parsers/lsusb.py"]},"message":"linting","epoch":1635099707,"epoch_utc":null},{"commit":"1669e6e20c3af3d28968558b76d0901a56775ac0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 24 10:58:13 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Oct 24 10:58:13 2021 -0700","stats":{"files_changed":1,"insertions":23,"deletions":28,"files":["jc/parsers/lsusb.py"]},"message":"linting","epoch":1635098293,"epoch_utc":null},{"commit":"ef6de75dda90c7221d53e0e0a942f0cac2247354","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 13:11:22 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 13:11:22 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["tests/test_utils.py"]},"message":"add vmstat timestamp tests to utils","epoch":1635019882,"epoch_utc":null},{"commit":"a6bcec425a3f44ba3c7cd06b5ebaf522b66df109","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:55:14 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 12:55:14 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"]},"message":"comment update","epoch":1635018914,"epoch_utc":null},{"commit":"596ad9a64d002ced212b08512126e52707fe73d2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:47:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 12:47:44 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"]},"message":"update comment","epoch":1635018464,"epoch_utc":null},{"commit":"7a91c93319f75c37ba6bf268d8270947f0bf8b22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:40:24 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 12:40:24 2021 -0700","stats":{"files_changed":1,"insertions":122,"deletions":0,"files":["EXAMPLES.md"]},"message":"add lsusb","epoch":1635018024,"epoch_utc":null},{"commit":"b5f7b35f89197879a9f13bd8fa5d2a0c77cc059a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:30:18 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 12:30:18 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"]},"message":"comment update","epoch":1635017418,"epoch_utc":null},{"commit":"2f47fb7f14c4ff0e1c835897d94ee81d14590aba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:24:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 12:24:35 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["tests/test_uname.py"]},"message":"fix ParseError tests","epoch":1635017075,"epoch_utc":null},{"commit":"1b214c403657a50689f2a04892ce836dea669a1d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:24:11 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 12:24:11 2021 -0700","stats":{"files_changed":3,"insertions":30,"deletions":0,"files":["jc/parsers/lsusb.py","tests/fixtures/generic/lsusb-t.out","tests/test_lsusb.py"]},"message":"raise ParseError if -t option is detected. add test","epoch":1635017051,"epoch_utc":null},{"commit":"8f94f8acc6bb53bbb19ba150551c7df2183a8863","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 11:56:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 11:56:12 2021 -0700","stats":{"files_changed":11,"insertions":384,"deletions":3,"files":["README.md","docs/parsers/file.md","docs/parsers/lsusb.md","docs/parsers/uname.md","man/jc.1","tests/fixtures/centos-7.7/lsusb-v-single.json","tests/fixtures/centos-7.7/lsusb-v.json","tests/fixtures/centos-7.7/lsusb.json","tests/fixtures/generic/lsusb-test-attributes.json","tests/fixtures/generic/lsusb-test-attributes2.json","tests/test_lsusb.py"]},"message":"add tests and update docs","epoch":1635015372,"epoch_utc":null},{"commit":"3a2a69cfa55e2f40d7536d923170a5cfc986998e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 11:39:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 11:39:08 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/parsers/lsusb.py"]},"message":"formatting","epoch":1635014348,"epoch_utc":null},{"commit":"f599c659881248b79c6dbc86d85a61311c9d3434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 11:08:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 11:08:26 2021 -0700","stats":{"files_changed":2,"insertions":464,"deletions":0,"files":["tests/fixtures/generic/lsusb-test-attributes.out","tests/fixtures/generic/lsusb-test-attributes2.out"]},"message":"add stress test examples","epoch":1635012506,"epoch_utc":null},{"commit":"ad12849fd9fc2177afb30740acc63cf284dc394b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 11:08:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 11:08:05 2021 -0700","stats":{"files_changed":1,"insertions":138,"deletions":26,"files":["jc/parsers/lsusb.py"]},"message":"update docs example and","epoch":1635012485,"epoch_utc":null},{"commit":"f36b3789e8df6673207d6c2d3d0796acfdfe011d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:39:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 22 15:39:02 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsusb.py"]},"message":"formatting","epoch":1634942342,"epoch_utc":null},{"commit":"6d18c0ba61cd188dbff736f1be47b7362c841687","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:37:40 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 22 15:37:40 2021 -0700","stats":{"files_changed":1,"insertions":47,"deletions":47,"files":["jc/parsers/lsusb.py"]},"message":"change variable name last_attribute and last_attr to last_item","epoch":1634942260,"epoch_utc":null},{"commit":"17097abec9567a58b5a5f7bbed11ecfd69cbd28c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:28:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 22 15:28:44 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":6,"files":["jc/parsers/lsusb.py"]},"message":"formatting","epoch":1634941724,"epoch_utc":null},{"commit":"b7ddd3b285f205211394edc70b611171cf72a4c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:23:04 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 22 15:23:04 2021 -0700","stats":{"files_changed":1,"insertions":22,"deletions":22,"files":["jc/parsers/lsusb.py"]},"message":"change variable names","epoch":1634941384,"epoch_utc":null},{"commit":"75b23f62c9d7b33907af92964d1a6234332fbc78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:18:55 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 22 15:18:55 2021 -0700","stats":{"files_changed":1,"insertions":35,"deletions":7,"files":["jc/parsers/lsusb.py"]},"message":"working configuration_descriptor and device_descriptor attributes","epoch":1634941135,"epoch_utc":null},{"commit":"f88967b2a59d79e053554d1e141f71e9d2d87456","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:02:04 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 22 15:02:04 2021 -0700","stats":{"files_changed":1,"insertions":126,"deletions":21,"files":["jc/parsers/lsusb.py"]},"message":"add attribute lists up to interface_association","epoch":1634940124,"epoch_utc":null},{"commit":"ba2846664b35b2e94aa905431c55c029b24a64e3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 13:40:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 22 13:40:01 2021 -0700","stats":{"files_changed":1,"insertions":22,"deletions":2,"files":["jc/parsers/lsusb.py"]},"message":"edpoint_descriptors attributes working","epoch":1634935201,"epoch_utc":null},{"commit":"10dba37ca2624e05eff246ef49df8ebd3f275d86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 12:49:57 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 22 12:49:57 2021 -0700","stats":{"files_changed":1,"insertions":28,"deletions":1,"files":["jc/parsers/lsusb.py"]},"message":"hub_descriptor attributes working","epoch":1634932197,"epoch_utc":null},{"commit":"0e6f938514965503f1d86d56c047f9f8fc03ac65","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 10:31:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 22 10:31:26 2021 -0700","stats":{"files_changed":1,"insertions":36,"deletions":45,"files":["jc/parsers/lsusb.py"]},"message":"working hub_port_status section","epoch":1634923886,"epoch_utc":null},{"commit":"159d87c1126f4d79d5e34837bc2c353a5445803b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 07:14:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 22 07:14:21 2021 -0700","stats":{"files_changed":3,"insertions":18,"deletions":7,"files":["jc/parsers/uname.py","tests/fixtures/centos-7.7/uname.out","tests/test_uname.py"]},"message":"add length guard and test for uname with no -a on linux","epoch":1634912061,"epoch_utc":null},{"commit":"9e7b1621cf232e9859bdf018737e536820f380a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 21 16:59:28 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 21 16:59:28 2021 -0700","stats":{"files_changed":1,"insertions":18,"deletions":18,"files":["jc/parsers/lsusb.py"]},"message":"device_status working","epoch":1634860768,"epoch_utc":null},{"commit":"2057817ef8fec85b2a978b682e7fe8bc16def828","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 20 15:59:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 20 15:59:27 2021 -0700","stats":{"files_changed":11,"insertions":89,"deletions":0,"files":["tests/fixtures/debian10/uname-a.json","tests/fixtures/debian10/uname-a.out","tests/fixtures/freebsd12/uname-a.json","tests/fixtures/freebsd12/uname-a.out","tests/fixtures/freebsd12/uname-a2.json","tests/fixtures/freebsd12/uname-a2.out","tests/fixtures/generic/uname-a-different-proc.json","tests/fixtures/generic/uname-a-different-proc.out","tests/fixtures/generic/uname-a.json","tests/fixtures/generic/uname-a.out","tests/test_uname.py"]},"message":"add uname tests","epoch":1634770767,"epoch_utc":null},{"commit":"a1eabad2d37bb0d0e9407edf7305e223eba67da2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 20 15:58:43 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 20 15:58:43 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/uname.py"]},"message":"add comments","epoch":1634770723,"epoch_utc":null},{"commit":"92bf2b1ca2a172d3977d6e3c36b5ca1a8c2bab63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 20 15:27:14 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 20 15:27:14 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":20,"files":["CHANGELOG","jc/parsers/uname.py"]},"message":"simplify fixup logic for uname","epoch":1634768834,"epoch_utc":null},{"commit":"2b2123a4ba9b77d2089d367fe85dcb5d2857a295","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 20 07:34:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 20 07:34:37 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","jc/parsers/uname.py"]},"message":"add FreeBSD support","epoch":1634740477,"epoch_utc":null},{"commit":"908b2f9200ddcce4beb531a3c90908786b6a5b02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 19 16:16:25 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 19 16:16:25 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"]},"message":"add items","epoch":1634685385,"epoch_utc":null},{"commit":"deff0c7bfdf942b8d7e7bd140219e08bf80a50cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 19 16:05:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 19 16:05:10 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":5,"files":["jc/parsers/uname.py"]},"message":"remove print debug","epoch":1634684710,"epoch_utc":null},{"commit":"7cd01efa64029775042a2c145997ce30ef6b4f6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 19 16:01:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 19 16:01:56 2021 -0700","stats":{"files_changed":1,"insertions":25,"deletions":1,"files":["jc/parsers/uname.py"]},"message":"fixup for cases where the 'process' and/or 'machine' fields are blank on linux","epoch":1634684516,"epoch_utc":null},{"commit":"2dbe56456bbea2bdfce7eacbf8b9f10a1b249f55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 15 11:43:15 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 15 11:43:15 2021 -0700","stats":{"files_changed":1,"insertions":49,"deletions":39,"files":["jc/parsers/lsusb.py"]},"message":"add nested_dict. start work on hub_port_status and device_status","epoch":1634323395,"epoch_utc":null},{"commit":"6078a411ef612be8bad012aa404f34ebd74a1fd7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 13 11:07:09 2021 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 13 11:07:09 2021 -0600","stats":{"files_changed":1,"insertions":79,"deletions":4,"files":["jc/parsers/lsusb.py"]},"message":"add initial schema doc","epoch":1634148429,"epoch_utc":null},{"commit":"4a3656562f161a51f5cb6f0e9ccd271859b78d62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 13 07:26:31 2021 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 13 07:26:31 2021 -0600","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["jc/parsers/lsusb.py"]},"message":"del null keys","epoch":1634135191,"epoch_utc":null},{"commit":"ba75989a24839907723ed7c3d7a497473d489a34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 22:51:45 2021 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 12 22:51:45 2021 -0600","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/lsusb.py"]},"message":"update comments","epoch":1634104305,"epoch_utc":null},{"commit":"9e9e2c362894f0072ab839565829881d750c8912","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 22:40:39 2021 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 12 22:40:39 2021 -0600","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsusb.py"]},"message":"move state instantiation before has_data test","epoch":1634103639,"epoch_utc":null},{"commit":"9a2a8c6b61a46a9bfb5a4492b86774a4a78672ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 22:38:03 2021 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 12 22:38:03 2021 -0600","stats":{"files_changed":1,"insertions":20,"deletions":52,"files":["jc/parsers/lsusb.py"]},"message":"shorten set_sections","epoch":1634103483,"epoch_utc":null},{"commit":"dae42ef1619441637672d634f9e5d7ab26115f09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 15:55:09 2021 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 12 15:55:09 2021 -0600","stats":{"files_changed":1,"insertions":18,"deletions":1,"files":["jc/parsers/lsusb.py"]},"message":"add hub_port_status and device_status","epoch":1634079309,"epoch_utc":null},{"commit":"931f2cab78bda180443535c04b532d04c6e88dd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 12:38:40 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 12 12:38:40 2021 -0700","stats":{"files_changed":1,"insertions":14,"deletions":11,"files":["jc/parsers/lsusb.py"]},"message":"add hub_descriptor","epoch":1634067520,"epoch_utc":null},{"commit":"72b061bed4453686d264ccf8977cba6c2a4794ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 12:29:59 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 12 12:29:59 2021 -0700","stats":{"files_changed":1,"insertions":32,"deletions":8,"files":["jc/parsers/lsusb.py"]},"message":"add endpoint_descriptors","epoch":1634066999,"epoch_utc":null},{"commit":"29a7c73990d9620b15a4010d17fc9a9a859f44b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 11:24:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 12 11:24:49 2021 -0700","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/parsers/lsusb.py"]},"message":"add hid_device_descriptor and report_descriptors","epoch":1634063089,"epoch_utc":null},{"commit":"2d1d68e3007f76d4c34ac07ae822935ab6021e79","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 09:57:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 12 09:57:47 2021 -0700","stats":{"files_changed":1,"insertions":87,"deletions":88,"files":["jc/parsers/lsusb.py"]},"message":"simplify populate_lists. Add CDC lists","epoch":1634057867,"epoch_utc":null},{"commit":"c5c1e170d1f502de5c76e9e481a23b26ffcaf237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 11 21:33:18 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 11 21:33:18 2021 -0700","stats":{"files_changed":1,"insertions":111,"deletions":76,"files":["jc/parsers/lsusb.py"]},"message":"interface descriptors working","epoch":1634013198,"epoch_utc":null},{"commit":"9c1bb66452838e704ef2277f313bb51a42dc03b9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 11 07:48:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 11 07:48:23 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/lsusb.py"]},"message":"fix remove _state field during schema_populate","epoch":1633963703,"epoch_utc":null},{"commit":"a4f3306bae90fbc807fdd9ff2ce71e25d36a663f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 10 22:18:13 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Oct 10 22:18:13 2021 -0700","stats":{"files_changed":1,"insertions":69,"deletions":28,"files":["jc/parsers/lsusb.py"]},"message":"initial schema build. need to figure out why deleting _state from output_line causes exceptions","epoch":1633929493,"epoch_utc":null},{"commit":"1bc638b6ee7a820406ba4b84d3408f7cd4fe779d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 10 10:03:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Oct 10 10:03:39 2021 -0700","stats":{"files_changed":1,"insertions":36,"deletions":32,"files":["jc/parsers/lsusb.py"]},"message":"add bus_list and add all device_list data to the list","epoch":1633885419,"epoch_utc":null},{"commit":"9ad0cd9dae8822235c37159541ce72471eb4263e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 9 20:05:55 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 9 20:05:55 2021 -0700","stats":{"files_changed":1,"insertions":116,"deletions":211,"files":["jc/parsers/lsusb.py"]},"message":"now storing state within the objects to make building the schema (later) easier.","epoch":1633835155,"epoch_utc":null},{"commit":"6d4a4691276d8659253b2ac8f8bdbd71a1fece7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 6 22:03:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 6 22:03:16 2021 -0700","stats":{"files_changed":1,"insertions":356,"deletions":333,"files":["jc/parsers/lsusb.py"]},"message":"use class for state","epoch":1633582996,"epoch_utc":null},{"commit":"ed6997e3ff2e575a6d4daa7d7a2cbe7dddacdd4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 5 16:47:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 5 16:47:23 2021 -0700","stats":{"files_changed":2,"insertions":170,"deletions":34,"files":["jc/parsers/lsusb.py","tests/fixtures/centos-7.7/lsusb-v-single.out"]},"message":"add interface_association section","epoch":1633477643,"epoch_utc":null},{"commit":"eb788fca6e25eea1fa8a43b22360c852ecf5af35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 5 14:59:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 5 14:59:49 2021 -0700","stats":{"files_changed":4,"insertions":919,"deletions":0,"files":["jc/cli.py","jc/parsers/lsusb.py","tests/fixtures/centos-7.7/lsusb-v.out","tests/fixtures/centos-7.7/lsusb.out"]},"message":"somewhat working lsusb parser. needs a lot more TLC","epoch":1633471189,"epoch_utc":null},{"commit":"9186f5f37739012b8c04c776310a20ef55b1469f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 2 14:53:07 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 2 14:53:07 2021 -0700","stats":{"files_changed":7,"insertions":99,"deletions":4,"files":["CHANGELOG","jc/__init__.py","jc/parsers/file.py","setup.py","tests/fixtures/osx-10.14.6/file3.json","tests/fixtures/osx-10.14.6/file3.out","tests/test_file.py"]},"message":"fix file parser for gzip cases (has ': ' in the description, which is the delimiter)","epoch":1633211587,"epoch_utc":null},{"commit":"30cff5f28140a5b20a617c8145c13e43b7b6685b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 27 10:35:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 27 10:35:08 2021 -0700","stats":{"files_changed":8,"insertions":17,"deletions":3,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","man/jc.1"]},"message":"add note that the streaming parser outputs JSON Lines","epoch":1632764108,"epoch_utc":null},{"commit":"b724e0969a0d6b22bed0c77eb8d629381179ea3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 20:22:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 26 20:22:16 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"]},"message":"-qq instead of -q","epoch":1632712936,"epoch_utc":null},{"commit":"a62c49e8715873b068a96da5021ea24a783acd6b","merge":"77dcbc5 9b160f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 16:35:29 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Sep 26 16:35:29 2021 -0700","message":"Merge pull request #172 from kellyjonbrazil/master\n\nsync master to dev","epoch":1632699329,"epoch_utc":null},{"commit":"9b160f6279bbbf0c15413c98922eef137ba2f3f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 16:29:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 26 16:29:36 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]},"message":"link update","epoch":1632698976,"epoch_utc":null},{"commit":"338a4e2612f70bb3e2af31f61a7db75f647293fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 16:27:15 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 26 16:27:15 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]},"message":"formatting","epoch":1632698835,"epoch_utc":null},{"commit":"0140688750be61dd752059ee66734ab1c7a8f30e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 16:24:18 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 26 16:24:18 2021 -0700","stats":{"files_changed":6,"insertions":8,"deletions":4,"files":["README.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","templates/readme_template"]},"message":"link updates","epoch":1632698658,"epoch_utc":null},{"commit":"73e5ea98c1ca2b9299085e3832791162eca3b9ff","merge":"528aac7 77dcbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 14:55:18 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Sep 26 14:55:18 2021 -0700","message":"Merge pull request #170 from kellyjonbrazil/dev\n\njc v1.17.0 from dev","epoch":1632693318,"epoch_utc":null},{"commit":"77dcbc544da271edab5de5ad209117e98c846f9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 14:50:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 26 14:50:02 2021 -0700","stats":{"files_changed":3,"insertions":2,"deletions":3,"files":["CHANGELOG","jc/__init__.py","man/jc.1"]},"message":"final doc update","epoch":1632693002,"epoch_utc":null},{"commit":"c7bcb0947ae32acc9cdba7a6975d2f2557f10a39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 13:20:42 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 26 13:20:42 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"]},"message":"indent subsequent error and warning lines","epoch":1632687642,"epoch_utc":null},{"commit":"5cd3f7f71d38b560a88dd6057e9c7a94991a3d71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 13:15:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 26 13:15:35 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/foo_s.py"]},"message":"Add example to raise ParseError if there is no output data to yield","epoch":1632687335,"epoch_utc":null},{"commit":"5044388ab2e8d7d8b427fd51b0ab875611bd127f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 13:04:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 26 13:04:27 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":3,"files":["jc/parsers/vmstat_s.py","tests/test_vmstat_s.py"]},"message":"raise if line data is unrecognized","epoch":1632686667,"epoch_utc":null},{"commit":"ee075db59819d80e4dcb60ddbd9cfe2fd529dfe9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 12:00:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 26 12:00:30 2021 -0700","stats":{"files_changed":4,"insertions":5,"deletions":7,"files":["jc/cli.py","jc/parsers/foo_s.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"]},"message":"linting","epoch":1632682830,"epoch_utc":null},{"commit":"9904e0be61e7c81b907bf3770f111346daeff481","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Sep 25 08:28:57 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Sep 25 08:28:57 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/utils.md","jc/utils.py"]},"message":"formatting","epoch":1632583737,"epoch_utc":null},{"commit":"31b69b3242eeca2c02f87c31d58193dd3f06fe49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Sep 25 08:23:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Sep 25 08:23:46 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/utils.md","jc/utils.py"]},"message":"formatting","epoch":1632583426,"epoch_utc":null},{"commit":"e6a80fea3228122dd84e17672c835c0460ad1342","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Sep 25 08:19:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Sep 25 08:19:34 2021 -0700","stats":{"files_changed":3,"insertions":7,"deletions":7,"files":["docs/utils.md","jc/utils.py","man/jc.1"]},"message":"formatting","epoch":1632583174,"epoch_utc":null},{"commit":"d6aec00e038d1ecfe43c13a6909d50630455b372","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 16:45:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 24 16:45:38 2021 -0700","stats":{"files_changed":4,"insertions":27,"deletions":1,"files":["tests/fixtures/ubuntu-18.04/vmstat-1-long-streaming.json","tests/fixtures/ubuntu-18.04/vmstat-1-long.json","tests/test_vmstat.py","tests/test_vmstat_s.py"]},"message":"add vmstat-1-long tests","epoch":1632527138,"epoch_utc":null},{"commit":"4aa7d81e11ea7fcfbb5c9d74337cde617b1a0d5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 16:27:11 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 24 16:27:11 2021 -0700","stats":{"files_changed":3,"insertions":50,"deletions":2,"files":["jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","tests/fixtures/ubuntu-18.04/vmstat-1-long.out"]},"message":"ignore re-printed header rows in output","epoch":1632526031,"epoch_utc":null},{"commit":"48cdabc3b0862d6291e1ec59ab385e0e146c31eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 10:11:15 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 24 10:11:15 2021 -0700","stats":{"files_changed":4,"insertions":16,"deletions":0,"files":["docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"]},"message":"document timestamps","epoch":1632503475,"epoch_utc":null},{"commit":"a1791ef5479749692c79bbe98fc7687d70cd6cda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 10:01:13 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 24 10:01:13 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"]},"message":"linting","epoch":1632502873,"epoch_utc":null},{"commit":"7bc87f6c2d4cfcfa656a1c1b8973a4c0414c85d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 09:24:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 24 09:24:30 2021 -0700","stats":{"files_changed":8,"insertions":8,"deletions":8,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","man/jc.1"]},"message":"change _meta to _jc_meta","epoch":1632500670,"epoch_utc":null},{"commit":"bbed9e274b8252ba0518140fe7fc97029310771f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 09:16:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 24 09:16:44 2021 -0700","stats":{"files_changed":1,"insertions":154,"deletions":159,"files":["jc/parsers/ping_s.py"]},"message":"linting","epoch":1632500204,"epoch_utc":null},{"commit":"486282b9856f5e56cf43ee1399d8e7cb78353b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 08:52:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 24 08:52:39 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/vmstat_s.py"]},"message":"linting","epoch":1632498759,"epoch_utc":null},{"commit":"a4d45b653f794033978940da14910f5d607a8254","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 08:49:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 24 08:49:37 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["jc/parsers/foo_s.py","jc/parsers/vmstat.py"]},"message":"linting","epoch":1632498577,"epoch_utc":null},{"commit":"22e151b01c0f97c141d912c9646e46df0320d622","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 08:43:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 24 08:43:09 2021 -0700","stats":{"files_changed":2,"insertions":56,"deletions":60,"files":["jc/cli.py","jc/utils.py"]},"message":"linting","epoch":1632498189,"epoch_utc":null},{"commit":"7a4ebcd1ecdb4929aae70e44b4f9b6b5ab52b393","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 21:22:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 21:22:01 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CONTRIBUTING.md"]},"message":"language hints","epoch":1632457321,"epoch_utc":null},{"commit":"651cbfe02fbb354c4caf8e0d022655642e7caed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 21:20:25 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 21:20:25 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"add streaming foo parser","epoch":1632457225,"epoch_utc":null},{"commit":"8c3e764516e1c28961b09380b638a57ce98b1261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 21:17:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 21:17:17 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"add streaming parser to contrib guidelines","epoch":1632457037,"epoch_utc":null},{"commit":"b4e75da7e3f23502723ce8b2a7261b376f296864","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 21:14:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 21:14:47 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1632456887,"epoch_utc":null},{"commit":"37223f086cabc8db5962415bd161fed151dafb9d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 21:13:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 21:13:21 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1632456801,"epoch_utc":null},{"commit":"a404033735c2c8075a8e08194197eae59db70afd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 20:54:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 20:54:44 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add error and warning message wrap info","epoch":1632455684,"epoch_utc":null},{"commit":"b7433ed085c0ba22ea0d49330871a651a8d83fb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 20:53:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 20:53:31 2021 -0700","stats":{"files_changed":6,"insertions":80,"deletions":41,"files":["docs/utils.md","jc/cli.py","jc/parsers/file.py","jc/parsers/ls.py","jc/parsers/traceroute.py","jc/utils.py"]},"message":"auto wrap warning and error messages","epoch":1632455611,"epoch_utc":null},{"commit":"224d3d65ada4216e28e142d411b0c2c3358517b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 13:15:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 13:15:38 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"Add exception class name to error message","epoch":1632428138,"epoch_utc":null},{"commit":"a349fb0bdabaf74503831f22c4efbd02254f809d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 13:08:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 13:08:31 2021 -0700","stats":{"files_changed":3,"insertions":10,"deletions":8,"files":["README.md","docs/utils.md","man/jc.1"]},"message":"change _meta to _jc_meta","epoch":1632427711,"epoch_utc":null},{"commit":"e7ddcfb83fb295034db44ade407476ff3a962cd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 13:07:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 13:07:10 2021 -0700","stats":{"files_changed":5,"insertions":14,"deletions":12,"files":["jc/utils.py","templates/manpage_template","templates/readme_template",".../centos-7.7/ping-ip-O-streaming-ignore-exceptions.json","tests/test_ping_s.py"]},"message":"change _meta to _jc_meta","epoch":1632427630,"epoch_utc":null},{"commit":"abd20dfe3662f65373ac582c70aa740e53b52f68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 12:58:24 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 12:58:24 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"formatting","epoch":1632427104,"epoch_utc":null},{"commit":"dc1fd3ef1be41aee349b159059f1febff76f6caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 11:54:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 11:54:58 2021 -0700","stats":{"files_changed":4,"insertions":12,"deletions":12,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"fix -qq docs","epoch":1632423298,"epoch_utc":null},{"commit":"98a7686db46fbd3ed98382867976249f307d0015","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 11:48:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 11:48:39 2021 -0700","stats":{"files_changed":18,"insertions":160,"deletions":152,"files":["README.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","docs/utils.md","jc/cli.py","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","jc/utils.py","man/jc.1","templates/manpage_template","templates/readme_template","... => ping-ip-O-streaming-ignore-exceptions.json}","tests/test_ls_s.py","tests/test_ping_s.py","tests/test_vmstat_s.py"]},"message":"use -qq to ignore streaming exceptions","epoch":1632422919,"epoch_utc":null},{"commit":"9c6c6c4330fc68115be012de254161f36e3a8328","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 09:04:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 09:04:37 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"add next() info","epoch":1632413077,"epoch_utc":null},{"commit":"f9be5651daa891e06ad0acd8980ffc0fe51fd29d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:59:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 08:59:26 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":6,"files":["README.md","templates/readme_template"]},"message":"add language hints","epoch":1632412766,"epoch_utc":null},{"commit":"df9835a3e62bb2b3b6ec8b55f06a25a00a799d92","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:57:14 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 08:57:14 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1632412634,"epoch_utc":null},{"commit":"92363be2dd633bdd3c2dd07c72ebd281d2cb4565","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:56:14 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 08:56:14 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"fix streaming python module example","epoch":1632412574,"epoch_utc":null},{"commit":"31b62030156f9c826fe5c7d127e9dd0ace582dd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:54:15 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 08:54:15 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1632412455,"epoch_utc":null},{"commit":"18805858d685d456f9a38540bbaedbaa1a411546","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:53:25 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 08:53:25 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["man/jc.1","templates/manpage_template"]},"message":"formatting","epoch":1632412405,"epoch_utc":null},{"commit":"e676f0e20fb6e96a536c4d182b0d287cdc1ad0f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:53:14 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 08:53:14 2021 -0700","stats":{"files_changed":2,"insertions":36,"deletions":6,"files":["README.md","templates/readme_template"]},"message":"add streaming parser info for python module use","epoch":1632412394,"epoch_utc":null},{"commit":"20652edefaa7705b8ba756bae3944ff362a295a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 20:11:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 20:11:26 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["CHANGELOG"]},"message":"update changelog","epoch":1632366686,"epoch_utc":null},{"commit":"98c29d07478093e78f53ec633f2dd08cafc3e3ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 19:54:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 19:54:12 2021 -0700","stats":{"files_changed":8,"insertions":120,"deletions":0,"files":["tests/fixtures/centos-7.7/vmstat-a.json","tests/fixtures/centos-7.7/vmstat-at-5-10.json","tests/fixtures/centos-7.7/vmstat-awt.json","tests/fixtures/centos-7.7/vmstat-d.json","tests/fixtures/centos-7.7/vmstat-dt.json","tests/fixtures/centos-7.7/vmstat-w.json","tests/fixtures/centos-7.7/vmstat.json","tests/test_vmstat.py"]},"message":"add vmstat tests","epoch":1632365652,"epoch_utc":null},{"commit":"41a6311f6b3ed2cc94919d042aed51c46cdf3e2f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 19:34:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 19:34:44 2021 -0700","stats":{"files_changed":9,"insertions":132,"deletions":1,"files":["tests/fixtures/centos-7.7/vmstat-a-streaming.json",".../centos-7.7/vmstat-at-5-10-streaming.json",".../fixtures/centos-7.7/vmstat-awt-streaming.json","tests/fixtures/centos-7.7/vmstat-d-streaming.json","tests/fixtures/centos-7.7/vmstat-dt-streaming.json","tests/fixtures/centos-7.7/vmstat-streaming.json","tests/fixtures/centos-7.7/vmstat-w-streaming.json","tests/test_ping_s.py","tests/test_vmstat_s.py"]},"message":"add streaming parser tests","epoch":1632364484,"epoch_utc":null},{"commit":"978760ec57e04e3ec347c8764bfad015b6dddbff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 19:32:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 19:32:20 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"add exception class name to error string","epoch":1632364340,"epoch_utc":null},{"commit":"d410425537817964ceb7b61e0fdff6c03fdf8766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:43:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 14:43:26 2021 -0700","stats":{"files_changed":4,"insertions":136,"deletions":136,"files":["docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"]},"message":"replace single quotes with double quotes in doc","epoch":1632347006,"epoch_utc":null},{"commit":"6b7430329cbe1bfb95b47bcfe031906641c127e1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:38:13 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 14:38:13 2021 -0700","stats":{"files_changed":5,"insertions":269,"deletions":1,"files":["README.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat_s.py","man/jc.1"]},"message":"doc update","epoch":1632346693,"epoch_utc":null},{"commit":"40fe0d4a6081a1233bf5c3eb51a01da1f12bc4dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:34:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 14:34:46 2021 -0700","stats":{"files_changed":1,"insertions":141,"deletions":22,"files":["jc/parsers/vmstat_s.py"]},"message":"working parser","epoch":1632346486,"epoch_utc":null},{"commit":"365c5354a0349e470558d15243217a064e73da38","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:34:32 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 14:34:32 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/vmstat.py"]},"message":"remove debug print statement","epoch":1632346472,"epoch_utc":null},{"commit":"b246a05cbb4c1c564f81b3e72cecb62edbe6ced6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:34:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 14:34:19 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"fix vmstat-s name","epoch":1632346459,"epoch_utc":null},{"commit":"9e5a7a4abb8668d043625951a05eb5733cbbd56f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:07:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 14:07:09 2021 -0700","stats":{"files_changed":7,"insertions":37,"deletions":0,"files":["tests/fixtures/centos-7.7/vmstat-a.out","tests/fixtures/centos-7.7/vmstat-at-5-10.out","tests/fixtures/centos-7.7/vmstat-awt.out","tests/fixtures/centos-7.7/vmstat-d.out","tests/fixtures/centos-7.7/vmstat-dt.out","tests/fixtures/centos-7.7/vmstat-w.out","tests/fixtures/centos-7.7/vmstat.out"]},"message":"add vmstat sample output","epoch":1632344829,"epoch_utc":null},{"commit":"f266acbccafc040c375723147b8e5d7fddb1e697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:06:51 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 14:06:51 2021 -0700","stats":{"files_changed":1,"insertions":106,"deletions":14,"files":["jc/parsers/vmstat.py"]},"message":"add processing logic","epoch":1632344811,"epoch_utc":null},{"commit":"4e3b471f1801f1b9006b18cae2a3d816f361262e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:06:28 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 14:06:28 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/utils.py"]},"message":"add format for vmstat","epoch":1632344788,"epoch_utc":null},{"commit":"5e28736c2e0c951e71e6531e03a9619279d95d3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 12:08:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 12:08:20 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"]},"message":"add vmstat and vmstat_s","epoch":1632337700,"epoch_utc":null},{"commit":"a91913a3b517ea0dbb25d6e4cc92850eb2fde5ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 12:07:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 12:07:27 2021 -0700","stats":{"files_changed":1,"insertions":106,"deletions":0,"files":["jc/parsers/vmstat_s.py"]},"message":"streaming parser template","epoch":1632337647,"epoch_utc":null},{"commit":"90c64f0ae0d97d025adee40970d89baca79ee4ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 12:07:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 12:07:09 2021 -0700","stats":{"files_changed":1,"insertions":182,"deletions":0,"files":["jc/parsers/vmstat.py"]},"message":"initial working parser","epoch":1632337629,"epoch_utc":null},{"commit":"7cc642ed1a476abda709ac9b79900a1de12e1ef7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 12:06:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 12:06:56 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/foo_s.py"]},"message":"formatting","epoch":1632337616,"epoch_utc":null},{"commit":"809f64d35a92bb3d7380fa9d78ac1421a10b81fc","merge":"ff0fda4 a6f859a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 22:58:18 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Sep 21 22:58:18 2021 -0700","message":"Merge pull request #169 from kellyjonbrazil/streaming\n\nStreaming to dev","epoch":1632290298,"epoch_utc":null},{"commit":"a6f859a55edae50fcc185948736218404cfaa929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 22:47:48 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 22:47:48 2021 -0700","stats":{"files_changed":18,"insertions":168,"deletions":153,"files":[".../osx-10.14.6/ping-hostname-p-streaming.json",".../osx-10.14.6/ping-hostname-s-streaming.json",".../osx-10.14.6/ping-hostname-streaming.json",".../osx-10.14.6/ping-ip-dup-streaming.json",".../fixtures/osx-10.14.6/ping-ip-p-streaming.json",".../fixtures/osx-10.14.6/ping-ip-s-streaming.json","tests/fixtures/osx-10.14.6/ping-ip-streaming.json",".../osx-10.14.6/ping-ip-unreachable-streaming.json",".../osx-10.14.6/ping6-hostname-p-streaming.json",".../osx-10.14.6/ping6-hostname-s-streaming.json",".../osx-10.14.6/ping6-hostname-streaming.json",".../osx-10.14.6/ping6-ip-dup-streaming.json",".../fixtures/osx-10.14.6/ping6-ip-p-streaming.json",".../fixtures/osx-10.14.6/ping6-ip-s-streaming.json","tests/fixtures/osx-10.14.6/ping6-ip-streaming.json","tests/fixtures/pi/ping-ip-O-D-streaming.json","tests/fixtures/pi/ping-ip-O-streaming.json","tests/test_ping_s.py"]},"message":"add final ping_s tests","epoch":1632289668,"epoch_utc":null},{"commit":"39ef88078f43708e470d3c1b2fd95e76b5cbeb08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 22:47:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 22:47:02 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/ping_s.py"]},"message":"add destination_ip to error lines","epoch":1632289622,"epoch_utc":null},{"commit":"aeea5e8d2eab2fef3e14637f512aed7b117c4a3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 22:00:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 22:00:05 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/test_ls_s.py"]},"message":"formatting","epoch":1632286805,"epoch_utc":null},{"commit":"1a0700bff4bdebbd9f1f92f2fc7a56c4d5ed6925","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 21:58:59 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 21:58:59 2021 -0700","stats":{"files_changed":31,"insertions":240,"deletions":213,"files":[".../fedora32/ping-hostname-O-D-p-s-streaming.json",".../fedora32/ping-hostname-O-p-streaming.json",".../fedora32/ping-hostname-O-streaming.json","tests/fixtures/fedora32/ping-ip-O-D-streaming.json","tests/fixtures/fedora32/ping-ip-O-streaming.json",".../fedora32/ping6-hostname-O-D-p-s-streaming.json",".../fedora32/ping6-hostname-O-p-streaming.json",".../fedora32/ping6-ip-O-D-p-streaming.json",".../fixtures/fedora32/ping6-ip-O-p-streaming.json",".../freebsd12/ping-hostname-p-streaming.json",".../freebsd12/ping-hostname-s-streaming.json",".../freebsd12/ping-hostname-streaming.json","tests/fixtures/freebsd12/ping-ip-p-streaming.json","tests/fixtures/freebsd12/ping-ip-s-streaming.json","tests/fixtures/freebsd12/ping-ip-streaming.json",".../freebsd12/ping6-hostname-p-streaming.json",".../freebsd12/ping6-hostname-s-streaming.json",".../freebsd12/ping6-hostname-streaming.json","tests/fixtures/freebsd12/ping6-ip-p-streaming.json","tests/fixtures/freebsd12/ping6-ip-s-streaming.json","tests/fixtures/freebsd12/ping6-ip-streaming.json",".../ping-hostname-O-D-p-s-streaming.json",".../ubuntu-18.04/ping-hostname-O-p-streaming.json",".../ubuntu-18.04/ping-hostname-O-streaming.json",".../ubuntu-18.04/ping-ip-O-D-streaming.json",".../fixtures/ubuntu-18.04/ping-ip-O-streaming.json",".../ping6-hostname-O-D-p-s-streaming.json",".../ubuntu-18.04/ping6-hostname-O-p-streaming.json",".../ubuntu-18.04/ping6-ip-O-D-p-streaming.json",".../ubuntu-18.04/ping6-ip-O-p-streaming.json","tests/test_ping_s.py"]},"message":"add more ping-s tests","epoch":1632286739,"epoch_utc":null},{"commit":"b5fa6d068f240671eb948b055cd4f7bf127e0ec0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 16:03:00 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 16:03:00 2021 -0700","stats":{"files_changed":5,"insertions":25,"deletions":5,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"]},"message":"update docs","epoch":1632265380,"epoch_utc":null},{"commit":"1baec0b420feff068f2dc1e35499f78aa7d0a6e0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 15:43:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 15:43:02 2021 -0700","stats":{"files_changed":13,"insertions":815,"deletions":0,"files":[".../ping-hostname-O-D-p-s-streaming.json",".../centos-7.7/ping-hostname-O-p-streaming.json",".../centos-7.7/ping-hostname-O-streaming.json",".../fixtures/centos-7.7/ping-ip-O-D-streaming.json",".../centos-7.7/ping-ip-O-streaming-quiet.json","tests/fixtures/centos-7.7/ping-ip-O-streaming.json",".../fixtures/centos-7.7/ping-ip-dup-streaming.json",".../ping6-hostname-O-D-p-s-streaming.json",".../centos-7.7/ping6-hostname-O-p-streaming.json",".../centos-7.7/ping6-ip-O-D-p-streaming.json",".../centos-7.7/ping6-ip-O-p-streaming.json",".../centos-7.7/ping6-ip-dup-streaming.json","tests/test_ping_s.py"]},"message":"add some streaming tests","epoch":1632264182,"epoch_utc":null},{"commit":"4f2a4e1dee9d722d2aa5ddf2c082a358c88cf640","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 15:42:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 15:42:45 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/parsers/ping_s.py"]},"message":"skip blank lines and warning lines","epoch":1632264165,"epoch_utc":null},{"commit":"758d617668d1f9d0f27b52d46749e5b67a570cf1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 13:29:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 13:29:50 2021 -0700","stats":{"files_changed":5,"insertions":5,"deletions":5,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"]},"message":"doc update","epoch":1632256190,"epoch_utc":null},{"commit":"55322c37f57a9c8e28641a61928fad2329f5e50d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 12:36:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 12:36:36 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/foo_s.py"]},"message":"formatting","epoch":1632252996,"epoch_utc":null},{"commit":"d19ea5552bb3a379f7f92bcb58794c557ecc6647","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 12:33:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 12:33:05 2021 -0700","stats":{"files_changed":12,"insertions":193,"deletions":0,"files":["tests/fixtures/centos-7.7/ls-al-streaming.json","tests/fixtures/centos-7.7/ls-alR-streaming.json","tests/fixtures/centos-7.7/ls-alh-streaming.json","tests/fixtures/osx-10.14.6/ls-al-streaming.json","tests/fixtures/osx-10.14.6/ls-alR-streaming.json","tests/fixtures/osx-10.14.6/ls-alh-streaming.json",".../osx-10.14.6/ls-lR-empty-folder-streaming.json","tests/fixtures/ubuntu-18.04/ls-al-streaming.json","tests/fixtures/ubuntu-18.04/ls-alR-streaming.json","tests/fixtures/ubuntu-18.04/ls-alh-streaming.json",".../fixtures/ubuntu-18.04/ls-l-iso-streaming.json","tests/test_ls_s.py"]},"message":"add streaming ls parser tests","epoch":1632252785,"epoch_utc":null},{"commit":"130c3527c1083d399deef00ee8fcaa75f609b485","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 12:32:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 12:32:34 2021 -0700","stats":{"files_changed":6,"insertions":25,"deletions":25,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","man/jc.1"]},"message":"update docstrings","epoch":1632252754,"epoch_utc":null},{"commit":"3f221f471416766a860bd19850afda4899ee5eb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 13:21:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 20 13:21:20 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"]},"message":"doc update","epoch":1632169280,"epoch_utc":null},{"commit":"d64c4cb39056bb869fc117477612ae5ae2ef3d85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 13:04:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 20 13:04:26 2021 -0700","stats":{"files_changed":2,"insertions":141,"deletions":1,"files":["man/jc.1","templates/manpage_template"]},"message":"add streaming parsers section","epoch":1632168266,"epoch_utc":null},{"commit":"448c56aa46b72438e4a4c83b10a7eb889e3f50e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 13:04:14 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 20 13:04:14 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1632168254,"epoch_utc":null},{"commit":"9fbea15b6d031baa8c90f2602e39de7cf51408e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 11:59:54 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 20 11:59:54 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":8,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"]},"message":"rename state class to _state","epoch":1632164394,"epoch_utc":null},{"commit":"932060314b3c1ce518b9f57532e124285cb3ad0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 11:51:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 20 11:51:27 2021 -0700","stats":{"files_changed":2,"insertions":41,"deletions":11,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"]},"message":"doc update","epoch":1632163887,"epoch_utc":null},{"commit":"5e68ae50097cb339f3390449db7e3f189a716320","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 11:42:15 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 20 11:42:15 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/parsers/ping_s.py"]},"message":"import exception. tighten up os detection","epoch":1632163335,"epoch_utc":null},{"commit":"d03541beae44a4571a7d0481af01a5c19506207f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 11:24:59 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 20 11:24:59 2021 -0700","stats":{"files_changed":1,"insertions":12,"deletions":5,"files":["jc/parsers/ping_s.py"]},"message":"add docstring examples. add exception raise when OS cannot be detected.","epoch":1632162299,"epoch_utc":null},{"commit":"516fa571d90a0c93134c953c15ce84dd31b96b4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 19 21:41:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 19 21:41:35 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/ping_s.py"]},"message":"remove unused variable. use elif instead of if for linux vs. bsd detection","epoch":1632112895,"epoch_utc":null},{"commit":"a19c12096a8e8de02a6ff761cc9c13ec249d416e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 19 13:18:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 19 13:18:23 2021 -0700","stats":{"files_changed":1,"insertions":373,"deletions":143,"files":["jc/parsers/ping_s.py"]},"message":"initial working parser for both linux and bsd","epoch":1632082703,"epoch_utc":null},{"commit":"758f27945de4f0897405eba02c7908d815ce6e9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 15:09:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 17 15:09:56 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/ping_s.py"]},"message":"change data_bytes and bytes to sent_bytes and response_bytes","epoch":1631916596,"epoch_utc":null},{"commit":"8b1e8d58df22f8542ccaf7bf3e1eabe6132e7a42","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 14:44:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 17 14:44:49 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping_s.py"]},"message":"remove unneeded line","epoch":1631915089,"epoch_utc":null},{"commit":"b967489d085319facee077958deaa04956a98343","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 14:42:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 17 14:42:30 2021 -0700","stats":{"files_changed":1,"insertions":81,"deletions":40,"files":["jc/parsers/ping_s.py"]},"message":"complete linux coverage including summary","epoch":1631914950,"epoch_utc":null},{"commit":"870d0218be2641e3eddb114c23d54deb23155f25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 10:34:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 17 10:34:05 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"]},"message":"add unbuffer note","epoch":1631900045,"epoch_utc":null},{"commit":"84020bc2af294cb065105f1399453aefc98eb180","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 10:26:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 17 10:26:47 2021 -0700","stats":{"files_changed":7,"insertions":12,"deletions":6,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/utils.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","man/jc.1"]},"message":"change error_msg to error in -q result docs","epoch":1631899607,"epoch_utc":null},{"commit":"4efe5344e069ed921f208bcbbd097705be2d3b4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 10:20:22 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 17 10:20:22 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add links to HN and Reddit","epoch":1631899222,"epoch_utc":null},{"commit":"9182c545134b3d56d27d2c1d9bda678532bdc3fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 08:24:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 17 08:24:56 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":8,"files":["jc/utils.py"]},"message":"formatting","epoch":1631892296,"epoch_utc":null},{"commit":"28f0ab0b02d21fc060f1ac7181f85552798dc4bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 08:21:13 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 17 08:21:13 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/ls_s.py","jc/utils.py"]},"message":"update streaming error messages","epoch":1631892073,"epoch_utc":null},{"commit":"90d1a30696b2cbfbb06a55cc0cf920cf8ecd89aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 08:05:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 17 08:05:23 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1631891123,"epoch_utc":null},{"commit":"130b3738cc57fe261e8ef881a57b7836acd7e7e9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 22:32:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 22:32:46 2021 -0700","stats":{"files_changed":4,"insertions":21,"deletions":26,"files":["jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/utils.py"]},"message":"shorten successful yield to a single line","epoch":1631856766,"epoch_utc":null},{"commit":"92c7357615af7689db273aa78d666b35a2ec7a70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 22:04:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 22:04:44 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/foo_s.py"]},"message":"formatting","epoch":1631855084,"epoch_utc":null},{"commit":"c80f8633349c00ea461b8927f9949fe19b2f46ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 22:04:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 22:04:31 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/foo.py"]},"message":"simplify return condition formatting","epoch":1631855071,"epoch_utc":null},{"commit":"4642c20179d4643e0cf1970b264da7d9d91628de","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 21:55:40 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 21:55:40 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1631854540,"epoch_utc":null},{"commit":"5288eb22aadbbc1005b16428b94d2b07e9a75e3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 21:43:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 21:43:36 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"add info about streaming parser performance characteristics","epoch":1631853816,"epoch_utc":null},{"commit":"df8387a1a99df69eac5005662aaf56d506fa0efd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 21:37:54 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 21:37:54 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"streaming parsers cannot be used with the magic syntax","epoch":1631853474,"epoch_utc":null},{"commit":"cc38c27f44d3f088609b878304cab8eed75fc8f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 21:33:57 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 21:33:57 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1631853237,"epoch_utc":null},{"commit":"64f5357d69fe88b45d710d38948969699e1ca12f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 21:31:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 21:31:45 2021 -0700","stats":{"files_changed":2,"insertions":84,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add streaming parsers section","epoch":1631853105,"epoch_utc":null},{"commit":"51debb5649bef431e51e543f1c9270e2810aa58f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 20:45:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 20:45:01 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"]},"message":"add vmstat parser and change from linebuffer to unbuffer","epoch":1631850301,"epoch_utc":null},{"commit":"b48d05a4313b27cf5e69d3e4259542e0b131b60f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 20:41:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 20:41:56 2021 -0700","stats":{"files_changed":5,"insertions":15,"deletions":15,"files":["README.md","jc/cli.py","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"change from line buffer output to unbuffer output","epoch":1631850116,"epoch_utc":null},{"commit":"4e7f6b337db61b8a106cf958f6b874157909c87a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 20:26:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 20:26:56 2021 -0700","stats":{"files_changed":3,"insertions":17,"deletions":25,"files":["jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"]},"message":"simplify yield statements","epoch":1631849216,"epoch_utc":null},{"commit":"a509d99cafd80862721595ee59ccc4a471b5e5a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 20:25:28 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 20:25:28 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/utils.py"]},"message":"add stream_success dictionary","epoch":1631849128,"epoch_utc":null},{"commit":"481e45fb644ac88fa77ef35643b793f179fe6859","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 14 06:02:55 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 14 06:02:55 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"]},"message":"limit parse error msg lenght","epoch":1631624575,"epoch_utc":null},{"commit":"e9038e1720e1c0e520e2f29b718aa8505cbbb9a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 21:15:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 21:15:26 2021 -0700","stats":{"files_changed":1,"insertions":66,"deletions":0,"files":["docs/parsers/ping_s.md"]},"message":"initial streaming ping docs","epoch":1631592926,"epoch_utc":null},{"commit":"8fd9e582bf29275c4daaa3be88ea8d196411b34a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 21:15:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 21:15:08 2021 -0700","stats":{"files_changed":1,"insertions":15,"deletions":17,"files":["docs/parsers/ls_s.md"]},"message":"doc update","epoch":1631592908,"epoch_utc":null},{"commit":"c1fd6f48a5a3501499c9fca7239673b8555cc7c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 21:14:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 21:14:56 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["docs/utils.md"]},"message":"add stream_error docs","epoch":1631592896,"epoch_utc":null},{"commit":"af615c7f4b3f589ffc1b37cf9834062a04c013cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 21:14:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 21:14:38 2021 -0700","stats":{"files_changed":6,"insertions":26,"deletions":5,"files":["CHANGELOG","README.md","jc/cli.py","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"add line buffer output option","epoch":1631592878,"epoch_utc":null},{"commit":"bf0bc32d7ae6cabe07906207f4f08c2e81802c80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 20:51:24 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 20:51:24 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"flush streamed text for better piping experience","epoch":1631591484,"epoch_utc":null},{"commit":"2d6b53e012181a4c33bab441880c47c0fc0b0601","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 19:50:51 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 19:50:51 2021 -0700","stats":{"files_changed":1,"insertions":36,"deletions":42,"files":["jc/parsers/ping_s.py"]},"message":"add pattern support. move unparsable line detection to standard streaming parser style","epoch":1631587851,"epoch_utc":null},{"commit":"51271fea0fbd7bd63863ba05c399b4675dc5b4bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 19:27:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 19:27:34 2021 -0700","stats":{"files_changed":1,"insertions":139,"deletions":149,"files":["jc/parsers/ping_s.py"]},"message":"somewhat working parser","epoch":1631586454,"epoch_utc":null},{"commit":"2deb473e0bc96c0e39ec4074a6df4b941ba2172b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:36:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 18:36:36 2021 -0700","stats":{"files_changed":1,"insertions":262,"deletions":0,"files":["jc/parsers/ping_s.py"]},"message":"initial streaming ping parser","epoch":1631583396,"epoch_utc":null},{"commit":"23eeb33b3da43a679c3bf3f3643cfa552a1164e1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:36:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 18:36:19 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"modify stream_error message","epoch":1631583379,"epoch_utc":null},{"commit":"f50dfaef45632241f8f6972fa19bb17c54a457ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:31:52 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 18:31:52 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":13,"files":["jc/parsers/ls_s.py"]},"message":"use stream_error function for exceptions. raise on non -l ls output","epoch":1631583112,"epoch_utc":null},{"commit":"55bb71e9d466cc9ee5f7fd8eca1101c941cbcb35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:30:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 18:30:20 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"add streaming ping parser. update streaming exception message","epoch":1631583020,"epoch_utc":null},{"commit":"dab9357d286962b70224d6fafbf90a4c0cbc9980","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:29:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 18:29:49 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":12,"files":["jc/parsers/foo_s.py"]},"message":"use stream_error function for exceptions","epoch":1631582989,"epoch_utc":null},{"commit":"27eb427245b5126335cef0adb5e57522272474b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:29:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 18:29:10 2021 -0700","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/utils.py"]},"message":"add stream_error function","epoch":1631582950,"epoch_utc":null},{"commit":"260f3685d944ded84396ae3395773d6898803fb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 15:06:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 15:06:02 2021 -0700","stats":{"files_changed":1,"insertions":112,"deletions":0,"files":["jc/parsers/foo_s.py"]},"message":"add streaming parser template","epoch":1631570762,"epoch_utc":null},{"commit":"76e78fc0c34b88a90fef876eebef92bd71cd772c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 15:05:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 15:05:49 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":11,"files":["jc/parsers/ls_s.py"]},"message":"doc updates","epoch":1631570749,"epoch_utc":null},{"commit":"1ac944fa028a400ae7b39b811fcf368c9bf5e259","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 12:13:14 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 12:13:14 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/ls_s.py"]},"message":"add -q option info to docstring","epoch":1631560394,"epoch_utc":null},{"commit":"986bc9b042a940f8dd34f0541bcb9b5840df579e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 12:10:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 12:10:02 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":43,"files":["jc/parsers/ls_s.py"]},"message":"cleanup unused code","epoch":1631560202,"epoch_utc":null},{"commit":"5a7942069b1f3ef3b45992b482bfb6bb973f7e8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 10:56:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 10:56:05 2021 -0700","stats":{"files_changed":1,"insertions":28,"deletions":28,"files":["jc/parsers/ls_s.py"]},"message":"add support for parent field","epoch":1631555765,"epoch_utc":null},{"commit":"f6c6fc13ac4c779667807df12444a41ef28a8011","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 08:55:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 08:55:19 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/cli.py"]},"message":"enhance error msg when streaming parser is used","epoch":1631548519,"epoch_utc":null},{"commit":"1d8cfae89f24192b6fab087f59c9b8988ef363dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 12 17:30:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 12 17:30:56 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/parsers/ls_s.py"]},"message":"only print _meta object if -q or quiet flag is used. Also, add message to the end of exceptions informing of the -q option to ignore errors","epoch":1631493056,"epoch_utc":null},{"commit":"787df51239ffa8260b48d6a3a58e6ff07d5e0f64","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 12 16:42:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 12 16:42:47 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"]},"message":"remove `\\n` from end of line in exception message","epoch":1631490167,"epoch_utc":null},{"commit":"5e7f302a9c45343c36e81944db38a435e6c8a20c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 12 16:35:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 12 16:35:46 2021 -0700","stats":{"files_changed":1,"insertions":12,"deletions":10,"files":["jc/parsers/ls_s.py"]},"message":"Raise exceptions unless the -q or quiet flag are used","epoch":1631489746,"epoch_utc":null},{"commit":"3d10fd40b56264836874da19aa72351e6d5cfbf7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 12 16:27:00 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 12 16:27:00 2021 -0700","stats":{"files_changed":1,"insertions":14,"deletions":13,"files":["jc/cli.py"]},"message":"remove print flush for better performance. Roll json.JSONDecodeError into the parse try/except block","epoch":1631489220,"epoch_utc":null},{"commit":"57e3bf239cc76d3b0ee0eddc618171eb90c28dec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 10 15:02:15 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 10 15:02:15 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"]},"message":"formatting for docs","epoch":1631311335,"epoch_utc":null},{"commit":"ccb09861e82044e17ec51277b3c8875e5ba9d87d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 10 15:01:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 10 15:01:02 2021 -0700","stats":{"files_changed":2,"insertions":20,"deletions":20,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"]},"message":"formatting for docs","epoch":1631311262,"epoch_utc":null},{"commit":"94551d75dd926c7f558e5cab47ba9483a20c6b3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 10 14:27:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 10 14:27:50 2021 -0700","stats":{"files_changed":10,"insertions":116,"deletions":49,"files":["CHANGELOG","README.md","docs/parsers/ls_s.md","docs/readme.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz","mangen.py","setup.py"]},"message":"doc update","epoch":1631309270,"epoch_utc":null},{"commit":"6e21218425359210591827e936b8d48d9644df92","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 10 14:14:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 10 14:14:10 2021 -0700","stats":{"files_changed":2,"insertions":234,"deletions":3,"files":["jc/cli.py","jc/parsers/ls_s.py"]},"message":"working prototype of streaming ls parser","epoch":1631308450,"epoch_utc":null},{"commit":"ff0fda48fc48760a7293528155d222c6456f84c4","merge":"e08b61f 528aac7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 10 08:08:45 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Sep 10 08:08:45 2021 -0700","message":"Merge pull request #168 from kellyjonbrazil/master\n\nSync master to dev","epoch":1631286525,"epoch_utc":null},{"commit":"528aac7ad87feae2093aba563c83a29ebf75e5f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 8 07:00:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 8 07:00:50 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":38,"files":["README.md","templates/readme_template"]},"message":"use subprocess in python example","epoch":1631109650,"epoch_utc":null},{"commit":"ab482e521d4cecfffa5393805b1d7de4389db49a","merge":"9c1ad92 e08b61f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 31 09:50:38 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Aug 31 09:50:38 2021 -0700","message":"Merge pull request #163 from kellyjonbrazil/dev\n\nDev v1.16.2","epoch":1630428638,"epoch_utc":null},{"commit":"e08b61fa81b1bd2304d04db5cdc8b809fe9c6032","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 31 08:54:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Aug 31 08:54:23 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]},"message":"add schema note to sfdisk","epoch":1630425263,"epoch_utc":null},{"commit":"ce61bd1d2b4323d9c2d0454c4f646521913ae20d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 31 08:50:42 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Aug 31 08:50:42 2021 -0700","stats":{"files_changed":7,"insertions":73,"deletions":7,"files":["tests/fixtures/debian10/sfdisk-F2.json","tests/fixtures/debian10/sfdisk-F2.out","tests/fixtures/debian10/sfdisk-l2.json","tests/fixtures/debian10/sfdisk-l2.out","tests/fixtures/debian10/sfdisk-l3.json","tests/fixtures/debian10/sfdisk-l3.out","tests/test_sfdisk.py"]},"message":"add tests for -F fixes","epoch":1630425042,"epoch_utc":null},{"commit":"7b708f75182bf3ed33478a7de62e9c2496f0b994","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 31 08:39:54 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Aug 31 08:39:54 2021 -0700","stats":{"files_changed":3,"insertions":11,"deletions":5,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-l.json","tests/fixtures/debian10/sfdisk-l.json"]},"message":"Don't convert 'size' to int, except for legacy -d support. Change partition table detection logic to fix -F output","epoch":1630424394,"epoch_utc":null},{"commit":"89ca50c7fc1bf64f34c915e65031d0bc520e6466","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 21:56:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 30 21:56:36 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"]},"message":"add -l to sfdisk raw example","epoch":1630385796,"epoch_utc":null},{"commit":"fb54899dcc2160450448e0d6111557cebdeb0d4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 21:53:40 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 30 21:53:40 2021 -0700","stats":{"files_changed":4,"insertions":38,"deletions":23,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]},"message":"doc update","epoch":1630385620,"epoch_utc":null},{"commit":"0a625ad7ddd9c804052d98930165cd22049546bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 21:52:55 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 30 21:52:55 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/sfdisk.py"]},"message":"remove unneeded lines","epoch":1630385575,"epoch_utc":null},{"commit":"d32e45efbe0d71a9a132abfb2855f1f4ccee9916","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 21:49:07 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 30 21:49:07 2021 -0700","stats":{"files_changed":6,"insertions":69,"deletions":1,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-F.json","tests/fixtures/centos-8/sfdisk-l.json","tests/fixtures/debian10/sfdisk-F.json","tests/fixtures/debian10/sfdisk-l.json","tests/test_sfdisk.py"]},"message":"add sfdisk tests","epoch":1630385347,"epoch_utc":null},{"commit":"c77696bc789cdfd286a7479c3d9f67d23149d0ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 20:55:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 30 20:55:26 2021 -0700","stats":{"files_changed":3,"insertions":6,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"]},"message":"version bump","epoch":1630382126,"epoch_utc":null},{"commit":"736fde9e784587cb2ef344bbf31d876eafea7741","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 20:51:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 30 20:51:19 2021 -0700","stats":{"files_changed":5,"insertions":147,"deletions":28,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-F.out","tests/fixtures/centos-8/sfdisk-l.out","tests/fixtures/debian10/sfdisk-F.out","tests/fixtures/debian10/sfdisk-l.out"]},"message":"add support for newer versions of sfdisk","epoch":1630381879,"epoch_utc":null},{"commit":"9c1ad92fed9a4b3a0da66d6b71deec8d608edfa9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:31:51 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 26 10:31:51 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["CONTRIBUTING.md"]},"message":"fix examples","epoch":1629999111,"epoch_utc":null},{"commit":"1a9fd2139d156a51bf2d25db951e47e96da77f7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:29:13 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 26 10:29:13 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"add \"For new parsers:\"","epoch":1629998953,"epoch_utc":null},{"commit":"7661e7f27a4e5c379ea37c7f95496aca2c1e2910","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:27:11 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 26 10:27:11 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"formatting","epoch":1629998831,"epoch_utc":null},{"commit":"f857b7fbf7862ddd7eb5ab20470f5dbaacc62119","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:25:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 26 10:25:37 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"add custom parser folder info","epoch":1629998737,"epoch_utc":null},{"commit":"d94d12dbc5fb3e3712b2f1aea949013cb8213e28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:20:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 26 10:20:53 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["CONTRIBUTING.md"]},"message":"add foo parser template info","epoch":1629998453,"epoch_utc":null},{"commit":"700916276ae8b0a106410e3dd2ea3e00248ee37a","merge":"473f706 834e523","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:01:08 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Aug 26 10:01:08 2021 -0700","message":"Merge pull request #159 from kellyjonbrazil/master\n\nSync Master to dev","epoch":1629997268,"epoch_utc":null},{"commit":"834e52369ceb479776ddc8fc2931790af53b9c18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 16 10:33:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 16 10:33:26 2021 -0700","stats":{"files_changed":3,"insertions":1,"deletions":5,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]},"message":"update man page","epoch":1629135206,"epoch_utc":null},{"commit":"1ce53365de61421c8bd43e04590038083894153b","merge":"2689697 473f706","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 16 10:32:03 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Aug 16 10:32:03 2021 -0700","message":"Merge pull request #156 from kellyjonbrazil/dev\n\nDev v1.16.1","epoch":1629135123,"epoch_utc":null},{"commit":"473f70668f04a38765559c5dbf0468af24d625c9","merge":"0dbd270 2689697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 16 10:28:11 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 16 10:28:11 2021 -0700","message":"Merge branch 'master' into dev\n\n# Conflicts:\n# jc/man/jc.1.gz\n# man/jc.1\n# man/jc.1.gz","epoch":1629134891,"epoch_utc":null},{"commit":"0dbd2702f6ab2640b2ccdea92411ac0789673e66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 17:17:51 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Aug 13 17:17:51 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/cli.py"]},"message":"reformat doc_text for nicer indentation","epoch":1628900271,"epoch_utc":null},{"commit":"01e3764a9b6ba902aea522bf6b7005fd37b3acbb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 16:03:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Aug 13 16:03:46 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"fix join syntax","epoch":1628895826,"epoch_utc":null},{"commit":"ff9c81722ae7221364e9bcb83d98b16b4263334e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 16:01:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Aug 13 16:01:45 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"]},"message":"try/except for shlex.join since only available in python 3.8","epoch":1628895705,"epoch_utc":null},{"commit":"166aef7a022ed29862ab2e0702d53c591bb5cc77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 15:22:33 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Aug 13 15:22:33 2021 -0700","stats":{"files_changed":6,"insertions":4,"deletions":4,"files":["docs/parsers/stat.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz","setup.py"]},"message":"version bump","epoch":1628893353,"epoch_utc":null},{"commit":"78caf7646baf5d35602fd76771443cd64bd783af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 15:19:41 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Aug 13 15:19:41 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add stat fix","epoch":1628893181,"epoch_utc":null},{"commit":"1f99d40cecc5d88a246f3558f71db376ebd885c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 15:19:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Aug 13 15:19:31 2021 -0700","stats":{"files_changed":4,"insertions":17,"deletions":2,"files":["jc/parsers/stat.py","tests/fixtures/osx-10.14.6/stat-filename-with-spaces.json","tests/fixtures/osx-10.14.6/stat-filename-with-spaces.out","tests/test_stat.py"]},"message":"fix filename with spaces for osx/bsd","epoch":1628893171,"epoch_utc":null},{"commit":"4c2912d3d5ec1fd2d5d891f2b3c58a33dd8572be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 15:19:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Aug 13 15:19:17 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"use shlex.join to quote run_command_str for better error messages","epoch":1628893157,"epoch_utc":null},{"commit":"45e6e06be581f787f707e3f5645129c713478d16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 14:19:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Aug 13 14:19:45 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["CHANGELOG"]},"message":"add glob and process substitution fixes","epoch":1628889585,"epoch_utc":null},{"commit":"fdbe3e05f323c95687a1137983f9623911008ca2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 14:19:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Aug 13 14:19:26 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["jc/cli.py"]},"message":"fix issue with globs not including filenames with spaces with magic syntax (introduced during switch to use subprocess to grab process exit code). No longer need to shlex quote arguments.","epoch":1628889566,"epoch_utc":null},{"commit":"7cc168f6409af13fda815d0d2a6db25b7c9ba367","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 12 16:55:07 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 12 16:55:07 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"add comment","epoch":1628812507,"epoch_utc":null},{"commit":"ff2d609c9b5f5f57f3331e5593e8fe87c01654dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 12 16:36:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 12 16:36:35 2021 -0700","stats":{"files_changed":1,"insertions":12,"deletions":1,"files":["jc/cli.py"]},"message":"add close_fds=False in subprocess.Popen() to allow process substitution in magic syntax. Also check for too many open files exception","epoch":1628811395,"epoch_utc":null},{"commit":"2689697b4c21758903e5f74ec069e89be585aba2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 22 17:03:00 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 22 17:03:00 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1626998580,"epoch_utc":null},{"commit":"f90a0ea8ab15629b7786e4431e9c968c3a896ee0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 22 12:20:48 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 22 12:20:48 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["templates/readme_template"]},"message":"formatting","epoch":1626981648,"epoch_utc":null},{"commit":"caabe60f849fb2422e47b8f10e0ff35beb706dcd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 22 12:20:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 22 12:20:31 2021 -0700","stats":{"files_changed":5,"insertions":3,"deletions":3,"files":["docs/parsers/kv.md","jc/man/jc.1.gz","jc/parsers/kv.py","man/jc.1","man/jc.1.gz"]},"message":"fix kv example","epoch":1626981631,"epoch_utc":null},{"commit":"2bef4ed6038201f54339e750a833260dc1998591","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 21 08:47:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 21 08:47:16 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","README.md"]},"message":"package updates","epoch":1626882436,"epoch_utc":null},{"commit":"ee57be533b12593a33a2abbb2892697f0bd40c65","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 20 12:35:02 2021 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 20 12:35:02 2021 -0500","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"]},"message":"fix sfdisk example","epoch":1626809702,"epoch_utc":null},{"commit":"c5b7aaca25d6b66d3e44256c2c6760a4cf2956ec","merge":"3b22ce4 7a1be90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 20 10:19:14 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Jul 20 10:19:14 2021 -0700","message":"Merge pull request #149 from kellyjonbrazil/dev\n\nDev v1.16.0","epoch":1626801554,"epoch_utc":null},{"commit":"7a1be905bb8654558afb5979b0bd78d4a8488874","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 20 12:15:29 2021 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 20 12:15:29 2021 -0500","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]},"message":"version bump","epoch":1626808529,"epoch_utc":null},{"commit":"5798495a11afa2f72ce6f79be785d46240fcbeb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 20 12:13:33 2021 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 20 12:13:33 2021 -0500","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["CHANGELOG"]},"message":"add 1.15.7 to 1.16.0 changes","epoch":1626808413,"epoch_utc":null},{"commit":"46171e220252ec92d18e744d2a57c1d6a6dc19f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 20 12:13:14 2021 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 20 12:13:14 2021 -0500","stats":{"files_changed":1,"insertions":69,"deletions":0,"files":["EXAMPLES.md"]},"message":"add sfdisk example","epoch":1626808394,"epoch_utc":null},{"commit":"dd5c924ff505dcc2a9c851d2425677bdf16ea462","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 19 12:13:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 19 12:13:46 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add man page location change","epoch":1626722026,"epoch_utc":null},{"commit":"30c4ab297658228a07ef9b1585516719af3febb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 19 12:08:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 19 12:08:50 2021 -0700","stats":{"files_changed":3,"insertions":515,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]},"message":"new man page location","epoch":1626721730,"epoch_utc":null},{"commit":"26ea4d47b33277efb0ddafe8f421791696277c07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 19 12:04:25 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 19 12:04:25 2021 -0700","stats":{"files_changed":5,"insertions":14,"deletions":3,"files":["CHANGELOG","MANIFEST.in","jc/__init__.py","mangen.py","setup.py"]},"message":"version bump and deprecate /man/jc.1.gz and /jc/man/jc.1.gz","epoch":1626721465,"epoch_utc":null},{"commit":"2732cd175c1e878210707162de3928f33fb2f201","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 12 08:10:18 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 12 08:10:18 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["CHANGELOG","MANIFEST.in"]},"message":"include CHANGELOG in source distribution","epoch":1626102618,"epoch_utc":null},{"commit":"3e54b597be88b0e342e4361b7f2c1af447f9482b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 7 09:00:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 7 09:00:19 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add timezone change for unit tests","epoch":1625673619,"epoch_utc":null},{"commit":"f10ebea20962084833e5c1ebd9bc90a251bf3ff4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 7 08:53:52 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 7 08:53:52 2021 -0700","stats":{"files_changed":11,"insertions":78,"deletions":0,"files":["tests/test_date.py","tests/test_dig.py","tests/test_dir.py","tests/test_last.py","tests/test_ls.py","tests/test_rpm_qai.py","tests/test_stat.py","tests/test_systeminfo.py","tests/test_upower.py","tests/test_utils.py","tests/test_who.py"]},"message":"update tests to set correct timezone on POSIX systems","epoch":1625673232,"epoch_utc":null},{"commit":"2c6f3993cb4c5e559dbac7a479ec889aa2cba752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 1 15:53:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 1 15:53:10 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/route.md","jc/man/jc.1.gz","jc/parsers/route.py","man/jc.1.gz"]},"message":"remove extra comma","epoch":1625179990,"epoch_utc":null},{"commit":"708a696920b52c2614edcdba264912527b2dfbef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 1 15:51:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 1 15:51:38 2021 -0700","stats":{"files_changed":3,"insertions":0,"deletions":2,"files":["docs/parsers/route.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"remove extra lines","epoch":1625179898,"epoch_utc":null},{"commit":"20bbb5d331575c8fc33ba63643882a62650c97b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 1 15:50:55 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 1 15:50:55 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/route.py"]},"message":"remove extra lines","epoch":1625179855,"epoch_utc":null},{"commit":"223e785b547d9376174efa15321d60a533847c57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 17:07:43 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 30 17:07:43 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/sfdisk.py"]},"message":"rename variable","epoch":1625098063,"epoch_utc":null},{"commit":"3d78692c59980e4d70361d3a9f74bacc3f21376e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 16:54:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 30 16:54:34 2021 -0700","stats":{"files_changed":11,"insertions":150,"deletions":1,"files":["tests/fixtures/centos-7.7/sfdisk-d-multi.json","tests/fixtures/centos-7.7/sfdisk-d-multi.out","tests/fixtures/centos-7.7/sfdisk-d.json","tests/fixtures/centos-7.7/sfdisk-d.out","tests/fixtures/centos-7.7/sfdisk-l-multi.json","tests/fixtures/centos-7.7/sfdisk-l-multi.out","tests/fixtures/centos-7.7/sfdisk-l.json","tests/fixtures/centos-7.7/sfdisk-luB.json","tests/fixtures/centos-7.7/sfdisk-luM.json","tests/fixtures/centos-7.7/sfdisk-luS.json","tests/test_sfdisk.py"]},"message":"add sfdisk tests","epoch":1625097274,"epoch_utc":null},{"commit":"5321a15dcf13cf14efe578d0f66b651078c3d8a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 14:30:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 30 14:30:35 2021 -0700","stats":{"files_changed":4,"insertions":8,"deletions":8,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"]},"message":"update examples","epoch":1625088635,"epoch_utc":null},{"commit":"a452f8252a593f7914ebece53af9d73f4fd11a19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 14:27:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 30 14:27:12 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"]},"message":"fix integer conversion","epoch":1625088432,"epoch_utc":null},{"commit":"49267f09ac01fead3b20b2d481bb5e0d07af1439","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 14:06:15 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 30 14:06:15 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/sfdisk.py"]},"message":"change to root prompt in examples","epoch":1625087175,"epoch_utc":null},{"commit":"db47f35783e46a8299533c22146d851509f6ceb2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 12:38:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 30 12:38:36 2021 -0700","stats":{"files_changed":15,"insertions":610,"deletions":3,"files":["CHANGELOG","README.md","docs/parsers/sfdisk.md","jc/__init__.py","jc/cli.py","jc/man/jc.1.gz","jc/parsers/sfdisk.py","jc/utils.py","man/jc.1.gz","setup.py","tests/fixtures/centos-7.7/sfdisk-d.out","tests/fixtures/centos-7.7/sfdisk-l.out","tests/fixtures/centos-7.7/sfdisk-luB.out","tests/fixtures/centos-7.7/sfdisk-luM.out","tests/fixtures/centos-7.7/sfdisk-luS.out"]},"message":"add working sfdisk parser","epoch":1625081916,"epoch_utc":null},{"commit":"d48abf312c1f55ab31aa11da2b6cf6bc8166733b","merge":"ff7ab0a 3b22ce4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 10:10:59 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Jun 30 10:10:59 2021 -0700","message":"Merge pull request #147 from kellyjonbrazil/master\n\nsync to dev","epoch":1625073059,"epoch_utc":null},{"commit":"3b22ce41105387e7f46a410460cf04759feef197","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 28 08:04:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jun 28 08:04:46 2021 -0700","stats":{"files_changed":6,"insertions":6,"deletions":3,"files":["CHANGELOG","jc/__init__.py","jc/cli.py","jc/man/jc.1.gz","man/jc.1.gz","setup.py"]},"message":"fix local plugin parser issue where parser has .py in the name but it is not at the end","epoch":1624892686,"epoch_utc":null},{"commit":"c521ca5bc9e2b035cfef6ff65f6b303b3ec44296","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 11 11:41:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jun 11 11:41:16 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"change possible to available","epoch":1623436876,"epoch_utc":null},{"commit":"3ddc1c665990e1e732314330db214a81ab810fe9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 11 11:39:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jun 11 11:39:38 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"add jello","epoch":1623436778,"epoch_utc":null},{"commit":"a8e19402b7d1f9f06bc40b81a15dec401154180c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 9 08:33:48 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 9 08:33:48 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["ADVANCED_USAGE.md"]},"message":"remove temporary fix","epoch":1623252828,"epoch_utc":null},{"commit":"0927902b30654274743ab9092e90e768709a9937","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 8 16:51:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jun 8 16:51:03 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["ADVANCED_USAGE.md"]},"message":"temp fix for wrong url","epoch":1623196263,"epoch_utc":null},{"commit":"572548b42fb6ed9d32a392503d44fac1a8f146d3","merge":"95aec9c ff7ab0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 27 17:00:54 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu May 27 17:00:54 2021 -0700","message":"Merge pull request #141 from kellyjonbrazil/dev\n\nDev v1.15.5","epoch":1622160054,"epoch_utc":null},{"commit":"ff7ab0a1ed7f468d0e84eb3bf0636f53913c490d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 27 16:58:14 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 27 16:58:14 2021 -0700","stats":{"files_changed":3,"insertions":0,"deletions":1,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc updates for v1.15.5","epoch":1622159894,"epoch_utc":null},{"commit":"5db71b05cb28691bbbaa5d668bcd4a4ac7e68b85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 25 09:47:24 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 25 09:47:24 2021 -0700","stats":{"files_changed":5,"insertions":3,"deletions":3,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template","templates/readme_template"]},"message":"add en_US.UTF-8 to LANG info","epoch":1621961244,"epoch_utc":null},{"commit":"f9b952885aa7f2b450786a08c3879d9e358886da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 21 10:21:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 21 10:21:21 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add python 3.9.5 packaged info","epoch":1621617681,"epoch_utc":null},{"commit":"e7983bc0b29abaca2147038dfad018cba1e67cdf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 21 10:16:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 21 10:16:19 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xml.md","docs/parsers/yaml.md"]},"message":"version bump","epoch":1621617379,"epoch_utc":null},{"commit":"473a6431425fc24a4cc83939ff592e0d49535b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 21 10:16:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 21 10:16:08 2021 -0700","stats":{"files_changed":4,"insertions":10,"deletions":3,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"]},"message":"add windows msi info","epoch":1621617368,"epoch_utc":null},{"commit":"14f3d442cb86250b8f2cdfd7977938634b8abd6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 21 09:46:51 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 21 09:46:51 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"formatting","epoch":1621615611,"epoch_utc":null},{"commit":"d6f4ed9ab55fe9b7c2766fb437172af62a1d5c87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 21 09:46:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 21 09:46:34 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/test_utils.py"]},"message":"add long-form UTC test","epoch":1621615594,"epoch_utc":null},{"commit":"1b8d654444ff8c8b8171c7ac63e2736447a36c09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 20 15:49:18 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 20 15:49:18 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add error message info","epoch":1621550958,"epoch_utc":null},{"commit":"6002af0dca334c0affaff3e9acdca416238c7d82","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 20 15:46:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 20 15:46:31 2021 -0700","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/cli.py"]},"message":"add more error message detail to the user for ParseError and LibraryNotFound exceptions","epoch":1621550791,"epoch_utc":null},{"commit":"0924d822a30c8806f65574c010561cd6f7c8e181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 20 15:36:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 20 15:36:27 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":1,"files":["templates/readme_template"]},"message":"add windows example","epoch":1621550187,"epoch_utc":null},{"commit":"72a37b928924c3edde3a4edb952f98c94aa05f0b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 19 16:23:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 19 16:23:34 2021 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"]},"message":"version bump","epoch":1621466614,"epoch_utc":null},{"commit":"5eef7bd769f8ffb03ba396833d1b33484041a99f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 19 16:14:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 19 16:14:26 2021 -0700","stats":{"files_changed":2,"insertions":16,"deletions":16,"files":["jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"use LibraryNotInstalled exception instead of exiting via sys.exit","epoch":1621466066,"epoch_utc":null},{"commit":"c6893e1bd5283d982a7ecd6f84bdfdd0054ce7a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 19 16:13:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 19 16:13:05 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/exceptions.py"]},"message":"add LibraryNotInstalled exception","epoch":1621465985,"epoch_utc":null},{"commit":"039f6612e491c6f821c001252e122e9b0a781104","merge":"9c57c09 95aec9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 18 10:29:02 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue May 18 10:29:02 2021 -0700","message":"Merge pull request #139 from kellyjonbrazil/master\n\nsync branches","epoch":1621358942,"epoch_utc":null},{"commit":"95aec9c6f9aa8fb4d0dae227410a1346d550f47f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 18 10:27:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 18 10:27:36 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["templates/manpage_template"]},"message":"add info about Magic syntax not supporting shell builtins","epoch":1621358856,"epoch_utc":null},{"commit":"4e9652a8ec2482a64dc029b0ce0e1047a3e49867","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 17 14:36:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 17 14:36:20 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"spelling","epoch":1621287380,"epoch_utc":null},{"commit":"773b7f4b1f23e04c90e602aab05bc1a7e5aae37b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 17 08:38:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 17 08:38:09 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add space before exit code table","epoch":1621265889,"epoch_utc":null},{"commit":"d17ffde9cdc35392ae25d8e9de5328e46067df2a","merge":"efb1d3e 9c57c09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 17 08:35:13 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon May 17 08:35:13 2021 -0700","message":"Merge pull request #138 from kellyjonbrazil/dev\n\nDev v1.15.4","epoch":1621265713,"epoch_utc":null},{"commit":"9c57c09c00e64a9031391b9b70083ad6ecf0bc0b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 17 08:24:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 17 08:24:31 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc update for release","epoch":1621265071,"epoch_utc":null},{"commit":"4d730a9de5a0d7c064a9a59e3add86e58d9ec492","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 20:57:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 20:57:17 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add UTC fix","epoch":1621223837,"epoch_utc":null},{"commit":"fc57bcfce24af23f077d6a73f1db4591d8f99c13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 20:51:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 20:51:39 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"]},"message":"fix for when UTC is referenced as \"Coordinated Universal Time\"","epoch":1621223499,"epoch_utc":null},{"commit":"fa5571486c3c19bb7e836f043545ea4f2509ed4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 20:33:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 20:33:03 2021 -0700","stats":{"files_changed":1,"insertions":10,"deletions":10,"files":["jc/cli.py"]},"message":"simplify json_out function","epoch":1621222383,"epoch_utc":null},{"commit":"9996c4fe23564dfb52e3c7dbdbd8bd67edfb1e95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:55:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 19:55:53 2021 -0700","stats":{"files_changed":7,"insertions":10,"deletions":10,"files":["EXAMPLES.md","docs/parsers/history.md","docs/parsers/jobs.md","jc/man/jc.1.gz","jc/parsers/history.py","jc/parsers/jobs.py","man/jc.1.gz"]},"message":"update docs for shell builtins","epoch":1621220153,"epoch_utc":null},{"commit":"038d4290248e6bb94762bb51f69e9958f7c1fecb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:44:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 19:44:10 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":6,"files":["docs/parsers/dig.md","docs/parsers/dir.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc updates","epoch":1621219450,"epoch_utc":null},{"commit":"9bf6facb0d7d76583802309253e7d13ba5148997","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:43:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 19:43:10 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":6,"files":["jc/parsers/dir.py"]},"message":"remove magic command capability since dir is a shell builtin","epoch":1621219390,"epoch_utc":null},{"commit":"965717886e4ebaa6a4a494f189d9fdd01e33eb21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:30:00 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 19:30:00 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add exceptions module info","epoch":1621218600,"epoch_utc":null},{"commit":"e9bfc3dd29f914fd91e937f06d7f59c0f91b8449","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:21:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 19:21:37 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["CHANGELOG"]},"message":"add time format, dig compatibility, windows colors fix","epoch":1621218097,"epoch_utc":null},{"commit":"f46b33eacf070b4dc72c8d8a66aae49abd149e5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:20:13 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 19:20:13 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/utils.py","tests/test_utils.py"]},"message":"add windows time format","epoch":1621218013,"epoch_utc":null},{"commit":"f475fe44df2fb2661c5bce4d1e602a4bba7e87c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:09:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 19:09:53 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"]},"message":"add new time format for systeminfo","epoch":1621217393,"epoch_utc":null},{"commit":"5fdbe2962d84dad89de23f103d97b76b90450206","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 17:48:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 17:48:56 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dig.py"]},"message":"make dig compatible with all platforms","epoch":1621212536,"epoch_utc":null},{"commit":"ab291b9eef6ed5c8ab59b5652f676178941d5ce5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 17:48:40 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 17:48:40 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"only force enable colors when running on windows","epoch":1621212520,"epoch_utc":null},{"commit":"fd411fd77273cb7cf872c03ed6a258ccdee4d261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 17:43:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 17:43:05 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"]},"message":"attempt to get colors working on windows","epoch":1621212185,"epoch_utc":null},{"commit":"b1e95a60a2461dc401ffc299ef6338b65ef12691","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 13 08:42:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 13 08:42:27 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/cli.py"]},"message":"remove unnecessary comment","epoch":1620920547,"epoch_utc":null},{"commit":"bb1439f0d53e87f636fba05fbd30c3c79fb16002","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 13 08:20:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 13 08:20:58 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["jc/parsers/uname.py"]},"message":"use ParseError exception from jc.exceptions module","epoch":1620919258,"epoch_utc":null},{"commit":"ba963d98a0a2b3a0dfca6b211096d802253da5fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 13 08:20:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 13 08:20:35 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/exceptions.py"]},"message":"add exceptions module including ParseError","epoch":1620919235,"epoch_utc":null},{"commit":"83440ccb55d0db15b112b8b7d7352493ff516112","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 13 08:02:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 13 08:02:38 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"error message capitalization","epoch":1620918158,"epoch_utc":null},{"commit":"796f61bfa417afdc6ab48fddbb5502cd0659b840","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 17:01:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 12 17:01:09 2021 -0700","stats":{"files_changed":1,"insertions":10,"deletions":3,"files":["jc/cli.py"]},"message":"handle case where the user pipes data and uses magic syntax simultaneously","epoch":1620864069,"epoch_utc":null},{"commit":"070cac4ae12282458a1e1fc8618ebc473d23cacf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 15:36:06 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 12 15:36:06 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/cli.py"]},"message":"remove commented line","epoch":1620858966,"epoch_utc":null},{"commit":"3ed84f9f42e4e883ddaac28ab49d675600b49424","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 15:19:11 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 12 15:19:11 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/cli.py"]},"message":"reorganize main function. remove pass condition.","epoch":1620857951,"epoch_utc":null},{"commit":"a205afb6f355edbb4b98200a980b9601ed0f0658","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 13:44:15 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 12 13:44:15 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"set run_command_str if run_command is set","epoch":1620852255,"epoch_utc":null},{"commit":"a6d983dd8f3871cbc2391c313340167829a575d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 13:38:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 12 13:38:08 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"move run_command_str variable","epoch":1620851888,"epoch_utc":null},{"commit":"b6c8d6d01d740827273265dbb0cfbaf7875ac7f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 13:18:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 12 13:18:58 2021 -0700","stats":{"files_changed":1,"insertions":45,"deletions":17,"files":["jc/cli.py"]},"message":"add exception handling for filenotfound or other subprocess.popen and json.dumps exceptions","epoch":1620850738,"epoch_utc":null},{"commit":"b5a5d5b133f1c0df8023776e59697b7579f8c18a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 11:36:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 12 11:36:27 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"set parser_name for magic syntax use","epoch":1620844587,"epoch_utc":null},{"commit":"da528e7814b0cf25a359c3556d0e286e7bf004b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 09:40:22 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 12 09:40:22 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"]},"message":"move separators to a variable","epoch":1620837622,"epoch_utc":null},{"commit":"4acebf4f621ac564f82e3a97e6810fbb08a9dbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 08:48:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 12 08:48:49 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/cli.py"]},"message":"move variables","epoch":1620834529,"epoch_utc":null},{"commit":"4d40808d2b70b7543eadcfd2d35c16ebe91f2f9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 08:27:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 12 08:27:39 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/cli.py"]},"message":"update comments","epoch":1620833259,"epoch_utc":null},{"commit":"c543f00bd3c737f73144bb2980d12793042459b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 14:30:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 11 14:30:46 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["jc/cli.py"]},"message":"simplify piped_output function","epoch":1620768646,"epoch_utc":null},{"commit":"947cf41dfab5811c0e76e371231c59a2d6372752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 12:42:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 11 12:42:21 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add exit code info","epoch":1620762141,"epoch_utc":null},{"commit":"8d8c58742e5106c3387a627cd1b1323a76cc9623","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 11:32:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 11 11:32:08 2021 -0700","stats":{"files_changed":5,"insertions":21,"deletions":15,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template","templates/readme_template"]},"message":"formatting","epoch":1620757928,"epoch_utc":null},{"commit":"995ecc9bfb0425b0ee9e4250395b0200b46c1e89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 11:11:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 11 11:11:17 2021 -0700","stats":{"files_changed":3,"insertions":15,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template"]},"message":"add exit codes section","epoch":1620756677,"epoch_utc":null},{"commit":"21a15225ebff645439b12d6249dc3e28d7bc09ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 10:59:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 11 10:59:26 2021 -0700","stats":{"files_changed":2,"insertions":18,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add exit codes section","epoch":1620755966,"epoch_utc":null},{"commit":"48921d4584068fadb0f776ed7e81c21d89172e2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 10:50:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 11 10:50:35 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"]},"message":"ensure exit code never exceeds 255","epoch":1620755435,"epoch_utc":null},{"commit":"342db45edc94ab1c3b3ae70e7cf4ca4076e2c7eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 10:36:55 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 11 10:36:55 2021 -0700","stats":{"files_changed":1,"insertions":18,"deletions":10,"files":["jc/cli.py"]},"message":"fix combined exit codes","epoch":1620754615,"epoch_utc":null},{"commit":"5f88ecf8443bc6e9a7cda5bc60858f37cc09f4f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 21:23:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 21:23:23 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/cli.py"]},"message":"add comments to magic_parser return","epoch":1620707003,"epoch_utc":null},{"commit":"a56aebfe7024914d2c602278964b99d1443de335","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 21:09:00 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 21:09:00 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/cli.py"]},"message":"remove side-effect comment since it is no longer relevant","epoch":1620706140,"epoch_utc":null},{"commit":"422bb744a82472546d62c72ba05eaa1d18d5068a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 21:03:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 21:03:30 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]},"message":"update man pages","epoch":1620705810,"epoch_utc":null},{"commit":"c3b814a15f571ac84a8ce0719d7fd88acf814caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 21:02:28 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 21:02:28 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":4,"files":["jc/cli.py"]},"message":"move imports to the top","epoch":1620705748,"epoch_utc":null},{"commit":"e4574047a0ef6fcd4a47142421a1d05795c7925a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 20:49:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 20:49:44 2021 -0700","stats":{"files_changed":1,"insertions":21,"deletions":21,"files":["tests/test_cli.py"]},"message":"update tests for magic_parser function","epoch":1620704984,"epoch_utc":null},{"commit":"0d7d7951f82627d1fb1e20d1398bd7f88c5ce1be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 18:58:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 18:58:45 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/cli.py"]},"message":"don't reset sys.argv anymore. check for 'valid_command' instead","epoch":1620698325,"epoch_utc":null},{"commit":"da904e4770a20ae85fc67476ae4a529564d0a3ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 18:50:59 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 18:50:59 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"remove final \\n from stderr string when printing","epoch":1620697859,"epoch_utc":null},{"commit":"19b540041add64fe6650c3634ec869421ffbc769","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 18:31:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 18:31:30 2021 -0700","stats":{"files_changed":1,"insertions":82,"deletions":51,"files":["jc/cli.py"]},"message":"proof of concept for passing command exit codes when using magic syntax. Needs more testing","epoch":1620696690,"epoch_utc":null},{"commit":"f2ffb93eeaf4c8b5aa93f3e8808bdc044582e8a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 10:43:40 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 10:43:40 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":10,"files":["tests/test_ping.py"]},"message":"formatting","epoch":1620668620,"epoch_utc":null},{"commit":"c0c0e05642e0f473cde34178d815978fff8fe1ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 10:40:13 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 10:40:13 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add dig `+noall +answer` support","epoch":1620668413,"epoch_utc":null},{"commit":"966978f17e40a338f982628825f30a19d4b84e4c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 10:39:51 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 10:39:51 2021 -0700","stats":{"files_changed":5,"insertions":72,"deletions":0,"files":[".../centos-7.7/ping6-ip-O-p-unparsable.json",".../centos-7.7/ping6-ip-O-p-unparsable.out",".../fixtures/osx-10.14.6/ping6-ip-unparsable.json","tests/fixtures/osx-10.14.6/ping6-ip-unparsable.out","tests/test_ping.py"]},"message":"add more unparsable line ping tests","epoch":1620668391,"epoch_utc":null},{"commit":"8ab08a5231e082940a62fcde4be218b7ba94be31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 10:13:52 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 10:13:52 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"doc update","epoch":1620666832,"epoch_utc":null},{"commit":"48e534fa03b92b2583c5c6269c76651f3aa420cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 7 16:55:18 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 7 16:55:18 2021 -0700","stats":{"files_changed":3,"insertions":17,"deletions":2,"files":["tests/fixtures/osx-10.14.6/dig-noall-answer.json","tests/fixtures/osx-10.14.6/dig-noall-answer.out","tests/test_dig.py"]},"message":"add +noall +answer test","epoch":1620431718,"epoch_utc":null},{"commit":"61851c1bd02aa82d5d82e68595e45630ead13d34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 7 16:42:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 7 16:42:09 2021 -0700","stats":{"files_changed":2,"insertions":85,"deletions":3,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"add support for +noall +answer","epoch":1620430929,"epoch_utc":null},{"commit":"3c51b2d83d301b4072bbb12fdba4f60b900573da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 7 13:50:28 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 7 13:50:28 2021 -0700","stats":{"files_changed":3,"insertions":40,"deletions":0,"files":[".../centos-7.7/ping-ip-O-unparsedlines.json",".../centos-7.7/ping-ip-O-unparsedlines.out","tests/test_ping.py"]},"message":"add tests for unparsable lines on linux","epoch":1620420628,"epoch_utc":null},{"commit":"ee3a28528e152c61f05bdf71f264fe38274b4190","merge":"fe1f101 916bcda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 10:03:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 5 10:03:58 2021 -0700","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev\n\n# Conflicts:\n# templates/readme_template","epoch":1620234238,"epoch_utc":null},{"commit":"916bcdae3881fc9c9f9a91c8c901a714cff3e1da","merge":"fb14f54 efb1d3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 10:02:25 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed May 5 10:02:25 2021 -0700","message":"Merge pull request #136 from kellyjonbrazil/master\n\nmerge changes from master","epoch":1620234145,"epoch_utc":null},{"commit":"efb1d3e6b2db920423511a9dcf4c5e5fd9d6af43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 09:23:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 5 09:23:21 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"add blog title and minor formatting","epoch":1620231801,"epoch_utc":null},{"commit":"4e6ae66bacc014e49c4a9229d10dcc8e95de436c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 09:20:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 5 09:20:47 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1620231647,"epoch_utc":null},{"commit":"5ee88e7b679bc163a1916d560be6ff29f51699e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 09:18:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 5 09:18:45 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["README.md"]},"message":"add use cases section","epoch":1620231525,"epoch_utc":null},{"commit":"c3b68903cbd898f80438af342195eec7575aafd3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 09:17:11 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 5 09:17:11 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["templates/readme_template"]},"message":"add use cases section","epoch":1620231431,"epoch_utc":null},{"commit":"fe1f1013a74bdf6b4284f11dd59db8ea17e5e5d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 09:16:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 5 09:16:05 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["templates/readme_template"]},"message":"add use cases section","epoch":1620231365,"epoch_utc":null},{"commit":"fb14f5439f00d5eaf08651c552189fd4be7358d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 08:03:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 5 08:03:27 2021 -0700","stats":{"files_changed":4,"insertions":52,"deletions":3,"files":["jc/parsers/ping.py",".../osx-10.14.6/ping-ip-unknown-errors.json",".../osx-10.14.6/ping-ip-unknown-errors.out","tests/test_ping.py"]},"message":"fix and tests for unknown or unparsable errors","epoch":1620227007,"epoch_utc":null},{"commit":"5ca0fc364eb22d583bee5633cdd7183c1d70bb6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 4 19:05:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 4 19:05:20 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/parsers/ping.md"]},"message":"add unparsed_line to docs","epoch":1620180320,"epoch_utc":null},{"commit":"a1fe7037e5267ec4aced719eff3715085eb35bca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 4 19:04:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 4 19:04:16 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["jc/parsers/ping.py"]},"message":"add unparsed_line field if line cannot be parsed","epoch":1620180256,"epoch_utc":null},{"commit":"c2af7d113ed8e8cf9af985c969cf29858a3c26a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 4 15:35:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 4 15:35:47 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["CHANGELOG","docs/parsers/ping.md"]},"message":"add ping updates","epoch":1620167747,"epoch_utc":null},{"commit":"ff034e401d5c33efbc3c4bc2f0e386d81eaae7fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 4 15:34:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 4 15:34:45 2021 -0700","stats":{"files_changed":1,"insertions":59,"deletions":43,"files":["jc/parsers/ping.py"]},"message":"use try/except to make parser more resilient against unknown error types","epoch":1620167685,"epoch_utc":null},{"commit":"5abe095beb4b668e5f55fe8c9588677547e4c2a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 3 15:26:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 3 15:26:16 2021 -0700","stats":{"files_changed":1,"insertions":14,"deletions":3,"files":["docs/parsers/ping.md"]},"message":"update ping docs","epoch":1620080776,"epoch_utc":null},{"commit":"33de5f01e638953c83bb0960dc3550ca4547849b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 3 15:16:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 3 15:16:47 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["jc/__init__.py","setup.py"]},"message":"version bump","epoch":1620080207,"epoch_utc":null},{"commit":"8ce155d843806be4ad23491b4401e4eda02e2a1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 3 15:16:33 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 3 15:16:33 2021 -0700","stats":{"files_changed":5,"insertions":86,"deletions":23,"files":["CHANGELOG","jc/parsers/ping.py",".../fixtures/osx-10.14.6/ping-ip-unreachable.json","tests/fixtures/osx-10.14.6/ping-ip-unreachable.out","tests/test_ping.py"]},"message":"add support for error replies in v4 ping on osx and bsd","epoch":1620080193,"epoch_utc":null},{"commit":"b921d5ec9583c8f8e992613ae2eaf62165722054","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 30 16:53:52 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 30 16:53:52 2021 -0700","stats":{"files_changed":1,"insertions":105,"deletions":6,"files":["jc/parsers/ping.py"]},"message":"initial support for error replies in bsd/osx","epoch":1619826832,"epoch_utc":null},{"commit":"e21542aaa2aa5f2f287ddc227df41ae47d761332","merge":"d24f9a8 6150aae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 30 10:31:55 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Apr 30 10:31:55 2021 -0700","message":"Merge pull request #135 from kellyjonbrazil/dev\n\nDev clarify packaged binaries in readme","epoch":1619803915,"epoch_utc":null},{"commit":"6150aae0aeabafba26d9f119406b0660d9221cb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 30 10:31:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 30 10:31:02 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"clarify packaged binaries","epoch":1619803862,"epoch_utc":null},{"commit":"f27b35f37104ad2012c3bddde0bd94941af06894","merge":"bd428a9 d24f9a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 15:28:35 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Apr 28 15:28:35 2021 -0700","message":"Merge pull request #131 from kellyjonbrazil/master\n\nsync branches","epoch":1619648915,"epoch_utc":null},{"commit":"d24f9a885d3954035a98a488671486408f509dca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 15:26:52 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 28 15:26:52 2021 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["CONTRIBUTING.md","README.md","templates/readme_template"]},"message":"fix contributing link","epoch":1619648812,"epoch_utc":null},{"commit":"48dd82c8d1b756c4e08d49b8234b8060080dc035","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 15:15:41 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 28 15:15:41 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"trigger page build on github pages","epoch":1619648141,"epoch_utc":null},{"commit":"e57167ad1f240de6ec5fc86c51cfb780535cd783","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 12:23:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 28 12:23:31 2021 -0700","message":"empty commit","epoch":1619637811,"epoch_utc":null},{"commit":"ada91376426ff359c495fb31081404a2cce72b5f","merge":"0c209db bd428a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 11:53:15 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Apr 28 11:53:15 2021 -0700","message":"Merge pull request #130 from kellyjonbrazil/dev\n\nDev link updates","epoch":1619635995,"epoch_utc":null},{"commit":"bd428a9fd75327710dce96f3c95f74ab9d1beaad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 11:52:24 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 28 11:52:24 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"fix link","epoch":1619635944,"epoch_utc":null},{"commit":"934941332f91d9e2cc4e691b154bb5427166ed30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 11:50:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 28 11:50:10 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","templates/readme_template"]},"message":"minor link updates","epoch":1619635810,"epoch_utc":null},{"commit":"0c209dbd108638f89a43801126a332379be9ae8b","merge":"92e2252 56e041a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 11:36:05 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Apr 28 11:36:05 2021 -0700","message":"Merge pull request #129 from kellyjonbrazil/dev\n\nDev update readme","epoch":1619634965,"epoch_utc":null},{"commit":"56e041aa260b2daf2f5662fae98645a93137adb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 11:34:51 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 28 11:34:51 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add Practical JSON at the Command Line blog link","epoch":1619634891,"epoch_utc":null},{"commit":"cf9d48582e4e5df6c8498b916a2f9cf036869f3d","merge":"35464bb 92e2252","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 13:17:20 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Apr 26 13:17:20 2021 -0700","message":"Merge pull request #128 from kellyjonbrazil/master\n\nsync branches","epoch":1619468240,"epoch_utc":null},{"commit":"92e2252bee00482bb0eeae3074b107d4c8553e4c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 12:18:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 26 12:18:21 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"fix typo","epoch":1619464701,"epoch_utc":null},{"commit":"fd7861db11e5aaa17c4e7bbce942c0c096116e30","merge":"fcc7e52 35464bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 12:12:02 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Apr 26 12:12:02 2021 -0700","message":"Merge pull request #127 from kellyjonbrazil/dev\n\nDev v1.15.3","epoch":1619464322,"epoch_utc":null},{"commit":"35464bbbfb6b424ef3ee1c855557ada1bf3769fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 12:08:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 26 12:08:10 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"date update","epoch":1619464090,"epoch_utc":null},{"commit":"db8ddd7f0e0c2a8bd3e545619e81d3d3972a4d7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 12:04:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 26 12:04:03 2021 -0700","stats":{"files_changed":5,"insertions":11,"deletions":17,"files":["jc/man/jc.1.gz","jc/parsers/ufw.py","man/jc.1.gz","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json"]},"message":"fix for scenarios where the default port range didn't always display, or overrode existing port ranges.","epoch":1619463843,"epoch_utc":null},{"commit":"72207c54ee5734e3d2d3d1a063c8daf1edaa8815","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 10:02:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 26 10:02:02 2021 -0700","stats":{"files_changed":3,"insertions":102,"deletions":94,"files":["docs/parsers/ufw_appinfo.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"update ufw app info docs to support multiple apps (ufw app info all)","epoch":1619456522,"epoch_utc":null},{"commit":"a683f68003ea64dd5e2c4f06b53a1561ad774f12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 10:00:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 26 10:00:44 2021 -0700","stats":{"files_changed":9,"insertions":285,"deletions":202,"files":["EXAMPLES.md","jc/parsers/ufw_appinfo.py","tests/fixtures/generic/ufw-appinfo-msn.json","tests/fixtures/generic/ufw-appinfo-test.json","tests/fixtures/generic/ufw-appinfo-test2.json","tests/fixtures/generic/ufw-appinfo-test3.json","tests/fixtures/ubuntu-18.04/ufw-appinfo-all.json","tests/fixtures/ubuntu-18.04/ufw-appinfo-all.out","tests/test_ufw_appinfo.py"]},"message":"change schema to a list of dictionaries to support `ufw app info all` use case","epoch":1619456444,"epoch_utc":null},{"commit":"8d2d3db3fa969456342181a226bf54a3f1613542","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 21:10:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 25 21:10:21 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":0,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"]},"message":"formatting","epoch":1619410221,"epoch_utc":null},{"commit":"eca785450d1c72687817d09259fa7cd33376fafc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 21:06:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 25 21:06:47 2021 -0700","stats":{"files_changed":5,"insertions":34,"deletions":13,"files":["CHANGELOG","README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"]},"message":"add caveats to readme and manpage","epoch":1619410007,"epoch_utc":null},{"commit":"5b40a97ce417687b4e37f320b8a3f07dd7fd169c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 20:55:43 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 25 20:55:43 2021 -0700","stats":{"files_changed":3,"insertions":13,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template"]},"message":"add caveats to man page","epoch":1619409343,"epoch_utc":null},{"commit":"66cb4e9bde81b9290c1addaf851de5d80a1b0702","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 20:49:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 25 20:49:35 2021 -0700","stats":{"files_changed":5,"insertions":216,"deletions":234,"files":["EXAMPLES.md","docs/parsers/ufw.md","jc/man/jc.1.gz","jc/parsers/ufw.py","man/jc.1.gz"]},"message":"update ufw parser docs","epoch":1619408975,"epoch_utc":null},{"commit":"d1f33645caccdb3a55576081c4d355f997ac033c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 20:40:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 25 20:40:38 2021 -0700","stats":{"files_changed":7,"insertions":26,"deletions":10,"files":["tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw-numbered2.json","tests/fixtures/generic/ufw.json","tests/fixtures/ubuntu-18.04/ufw-numbered.json","tests/fixtures/ubuntu-18.04/ufw-numbered.out","tests/fixtures/ubuntu-18.04/ufw-verbose.json","tests/fixtures/ubuntu-18.04/ufw-verbose.out"]},"message":"update ufw tests","epoch":1619408438,"epoch_utc":null},{"commit":"5eff65c326675a449afd05a2af0a6c9bcf7b5e23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 20:10:52 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 25 20:10:52 2021 -0700","stats":{"files_changed":1,"insertions":85,"deletions":268,"files":["jc/parsers/ufw.py"]},"message":"update schema to support port lists and port range lists. Also support other transports than tcp and udp","epoch":1619406652,"epoch_utc":null},{"commit":"929c38715d87bf9dd689507d319c22b90871ae1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 12:53:29 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 24 12:53:29 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"formatting","epoch":1619294009,"epoch_utc":null},{"commit":"8c91a7b7601a967cd9d8096433ffd4ad62b65ceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 12:52:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 24 12:52:26 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CONTRIBUTING.md"]},"message":"formatting","epoch":1619293946,"epoch_utc":null},{"commit":"14289ecd6c022ad204444dff5b5e48f6024a5d0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 12:50:40 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 24 12:50:40 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"more timezone info","epoch":1619293840,"epoch_utc":null},{"commit":"b833c44783eb32f2fad24ca205b5b7eab854750f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 12:47:24 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 24 12:47:24 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add ufw-appinfo parser","epoch":1619293644,"epoch_utc":null},{"commit":"e23aa818eaa6d1a389ddef7dd2ad8f62b9f6ff25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 12:47:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 24 12:47:12 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"add tests section and timezone info","epoch":1619293632,"epoch_utc":null},{"commit":"473d919c1350a8dc34d233033a5a7d12c928e42d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 10:58:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 24 10:58:31 2021 -0700","stats":{"files_changed":4,"insertions":32,"deletions":0,"files":["runtests.sh","tests/fixtures/generic/ufw-numbered2.json","tests/fixtures/generic/ufw-numbered2.out","tests/test_ufw.py"]},"message":"add another ufw test sample","epoch":1619287111,"epoch_utc":null},{"commit":"9f925d6ac989a4f21a8c00c84fcf97dfb141e8c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 10:22:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 24 10:22:37 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc update","epoch":1619284957,"epoch_utc":null},{"commit":"f6ca32b3a31f314fa0b31d9e8b5494491b928f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 10:22:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 24 10:22:19 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/ufw.md","jc/parsers/ufw.py"]},"message":"update ufw docs with a note on lists of ports","epoch":1619284939,"epoch_utc":null},{"commit":"4cbe84c3d6ac8a3b594feb525460f2a68f5d62b2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 16:15:04 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 23 16:15:04 2021 -0700","stats":{"files_changed":9,"insertions":110,"deletions":0,"files":["tests/fixtures/generic/ufw-appinfo-msn.json","tests/fixtures/generic/ufw-appinfo-msn.out","tests/fixtures/generic/ufw-appinfo-test.json","tests/fixtures/generic/ufw-appinfo-test.out","tests/fixtures/generic/ufw-appinfo-test2.json","tests/fixtures/generic/ufw-appinfo-test2.out","tests/fixtures/generic/ufw-appinfo-test3.json","tests/fixtures/generic/ufw-appinfo-test3.out","tests/test_ufw_appinfo.py"]},"message":"add ufw-appinfo tests","epoch":1619219704,"epoch_utc":null},{"commit":"ffac5bf9d381305daa86e546f8570be092e5ff34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 16:14:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 23 16:14:53 2021 -0700","stats":{"files_changed":3,"insertions":12,"deletions":12,"files":["docs/parsers/ufw.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc update","epoch":1619219693,"epoch_utc":null},{"commit":"9aa424f9f8c7e4e0dc29e2c58dac481098beba7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 16:14:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 23 16:14:39 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["EXAMPLES.md"]},"message":"fix ufw example","epoch":1619219679,"epoch_utc":null},{"commit":"0a8495c68e427e39bbda957dd933fa2a461092e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 16:14:25 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 23 16:14:25 2021 -0700","stats":{"files_changed":1,"insertions":12,"deletions":15,"files":["jc/parsers/ufw.py"]},"message":"update docs","epoch":1619219665,"epoch_utc":null},{"commit":"6aea066cf024f92adf4b94eebc7d51430c22332c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 16:14:11 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 23 16:14:11 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/ufw_appinfo.py"]},"message":"make normalized list appear only when data exists. set magic commands","epoch":1619219651,"epoch_utc":null},{"commit":"ff3c2d809ec3ea6e556c302909a228ee670578c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 09:57:41 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 23 09:57:41 2021 -0700","stats":{"files_changed":6,"insertions":176,"deletions":25,"files":["EXAMPLES.md","README.md","docs/parsers/ufw_appinfo.md","jc/man/jc.1.gz","jc/parsers/ufw_appinfo.py","man/jc.1.gz"]},"message":"add ufw-appinfo to docs","epoch":1619197061,"epoch_utc":null},{"commit":"145059fc8946b7026184139baea143c2869bc4e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 09:04:11 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 23 09:04:11 2021 -0700","stats":{"files_changed":1,"insertions":20,"deletions":8,"files":["jc/parsers/ufw_appinfo.py"]},"message":"clean up output if sections are blank","epoch":1619193851,"epoch_utc":null},{"commit":"20e5c19de448c1b979497817c887d8d2d6487839","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 08:30:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 23 08:30:34 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/ufw_appinfo.py"]},"message":"fix key error if tcp or udp don't exist","epoch":1619191834,"epoch_utc":null},{"commit":"4c98fd4b877c54e1cf7d285a29e178321be12f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 08:26:00 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 23 08:26:00 2021 -0700","stats":{"files_changed":2,"insertions":101,"deletions":1,"files":["docs/parsers/ufw_appinfo.md","jc/parsers/ufw_appinfo.py"]},"message":"doc update","epoch":1619191560,"epoch_utc":null},{"commit":"125e54213e8d4dcfe2e3271456af80b3f79c0544","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 08:13:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 23 08:13:53 2021 -0700","stats":{"files_changed":1,"insertions":105,"deletions":48,"files":["jc/parsers/ufw_appinfo.py"]},"message":"update schema and add normalized fields","epoch":1619190833,"epoch_utc":null},{"commit":"0152e0665f87833250561d743144af35416992f8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 22 16:52:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 22 16:52:01 2021 -0700","stats":{"files_changed":2,"insertions":215,"deletions":0,"files":["jc/cli.py","jc/parsers/ufw_appinfo.py"]},"message":"initial working ufw-appinfo parser","epoch":1619135521,"epoch_utc":null},{"commit":"0679bcbc560ea3575555d8546afdd4e2474d05d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 22 08:33:57 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 22 08:33:57 2021 -0700","stats":{"files_changed":5,"insertions":31,"deletions":5,"files":["tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json","tests/fixtures/ubuntu-18.04/ufw-numbered.json","tests/fixtures/ubuntu-18.04/ufw-verbose.json","tests/test_ufw.py"]},"message":"fix ufw tests","epoch":1619105637,"epoch_utc":null},{"commit":"5500648aa0886ea5089856e5b33d7c8ebd78d5b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 22 08:33:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 22 08:33:45 2021 -0700","stats":{"files_changed":3,"insertions":46,"deletions":46,"files":["EXAMPLES.md","docs/parsers/ufw.md","jc/parsers/ufw.py"]},"message":"fix ufw docs for int conversions and service behavior","epoch":1619105625,"epoch_utc":null},{"commit":"bb50caad4dfaefa309e747fd05b650186c5a80f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 22 08:16:42 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 22 08:16:42 2021 -0700","stats":{"files_changed":3,"insertions":31,"deletions":4,"files":["jc/parsers/ufw.py","tests/fixtures/ubuntu-18.04/ufw-numbered.out","tests/fixtures/ubuntu-18.04/ufw-verbose.out"]},"message":"fix prefix int conversions. don't reset _transport if service is really a list of ports","epoch":1619104602,"epoch_utc":null},{"commit":"7eef5d94d591a3f70f6638b1b30f952a3bf35f9d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 16:55:25 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 21 16:55:25 2021 -0700","stats":{"files_changed":3,"insertions":5,"deletions":0,"files":["EXAMPLES.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"ufw doc update","epoch":1619049325,"epoch_utc":null},{"commit":"74f623f8d607c050db8f62ea4996c4e6aae43268","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 16:55:14 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 21 16:55:14 2021 -0700","stats":{"files_changed":5,"insertions":43,"deletions":11,"files":["docs/parsers/ufw.md","jc/parsers/ufw.py","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json","tests/fixtures/generic/ufw.out"]},"message":"add support for rule comments and LIMIT and REJECT actions","epoch":1619049314,"epoch_utc":null},{"commit":"f638aca092475bbae14fed765e90435c093fcb8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 10:10:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 21 10:10:36 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add deb package name fix","epoch":1619025036,"epoch_utc":null},{"commit":"da35eaf80ad4f11e7482fc4734db4b2265e50548","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 09:10:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 21 09:10:10 2021 -0700","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["docs/parsers/ufw.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"formatting","epoch":1619021410,"epoch_utc":null},{"commit":"ade0e8e8fc18ff9a0dd406206a85238f1f5a739d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 09:09:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 21 09:09:23 2021 -0700","stats":{"files_changed":7,"insertions":107,"deletions":0,"files":["tests/fixtures/generic/ufw-inactive.json","tests/fixtures/generic/ufw-inactive.out","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw-numbered.out","tests/fixtures/generic/ufw.json","tests/fixtures/generic/ufw.out","tests/test_ufw.py"]},"message":"add ufw tests","epoch":1619021363,"epoch_utc":null},{"commit":"90076090f05a1f03e2fbff307418ee18d7d046ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 09:09:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 21 09:09:09 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":5,"files":["jc/parsers/ufw.py"]},"message":"fix int conversions if 'rules' key does not exist","epoch":1619021349,"epoch_utc":null},{"commit":"23635def8b654097178f73ed1b57fc50965142d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 07:51:32 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 21 07:51:32 2021 -0700","stats":{"files_changed":6,"insertions":306,"deletions":4,"files":["README.md","docs/parsers/ping.md","docs/parsers/ufw.md","docs/utils.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"add ufw to docs","epoch":1619016692,"epoch_utc":null},{"commit":"4eeec087bde98f90ab8425473d1fbeee6834852e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 07:49:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 21 07:49:49 2021 -0700","stats":{"files_changed":1,"insertions":115,"deletions":0,"files":["EXAMPLES.md"]},"message":"add ufw example","epoch":1619016589,"epoch_utc":null},{"commit":"733196103897a1d84d242324ddcf96e783320329","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 07:41:32 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 21 07:41:32 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/ufw.py"]},"message":"update docs with new examples that have `to_service` always existing.","epoch":1619016092,"epoch_utc":null},{"commit":"e4acb3d5b70a7d75741ef3e35cd6750d1362a80f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 07:08:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 21 07:08:50 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/ufw.py"]},"message":"always make to/from_service None if ports are assigned","epoch":1619014130,"epoch_utc":null},{"commit":"c60549a9947d5684bbfa58223bfbcfc40a3ed479","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 22:08:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 20 22:08:12 2021 -0700","stats":{"files_changed":1,"insertions":29,"deletions":29,"files":["jc/parsers/ufw.py"]},"message":"change field name from to/from_subnet to to/from_ip_prefix","epoch":1618981692,"epoch_utc":null},{"commit":"d46fc8bbfa15a80a1af6c64f70230f858c215223","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 21:58:52 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 20 21:58:52 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/parsers/ufw.py"]},"message":"set to/from_transport to None if to/from_service is set","epoch":1618981132,"epoch_utc":null},{"commit":"b133d1f90d49362594508d8c475663754f0e7675","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 21:52:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 20 21:52:39 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/ufw.py"]},"message":"strip interface value","epoch":1618980759,"epoch_utc":null},{"commit":"5be615a97e7c145c8351764234ac591028560c34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 21:45:13 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 20 21:45:13 2021 -0700","stats":{"files_changed":1,"insertions":219,"deletions":9,"files":["jc/parsers/ufw.py"]},"message":"add examples for docs","epoch":1618980313,"epoch_utc":null},{"commit":"ea1d820f96321ddf4084b54ee2fdf397295beb21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 21:29:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 20 21:29:49 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/parsers/ufw.py"]},"message":"convert integer fields","epoch":1618979389,"epoch_utc":null},{"commit":"47e262cf7200b02ff0af97a70ffa6bec286c8f39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 21:21:42 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 20 21:21:42 2021 -0700","stats":{"files_changed":1,"insertions":59,"deletions":14,"files":["jc/parsers/ufw.py"]},"message":"clean up fields","epoch":1618978902,"epoch_utc":null},{"commit":"eec673be9092e382694aa02682564510ce4e7f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 20:32:59 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 20 20:32:59 2021 -0700","stats":{"files_changed":1,"insertions":88,"deletions":3,"files":["jc/parsers/ufw.py"]},"message":"working raw parser","epoch":1618975979,"epoch_utc":null},{"commit":"9a0fb2a7c87e6fde0cc0d84fa8a1f131e28ea732","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 14:17:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 20 14:17:01 2021 -0700","stats":{"files_changed":1,"insertions":157,"deletions":0,"files":["jc/parsers/ufw.py"]},"message":"parse major sections","epoch":1618953421,"epoch_utc":null},{"commit":"b5145d6c14d7a51e7cfdebe126c9689dc90f7b27","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 13:39:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 20 13:39:12 2021 -0700","stats":{"files_changed":4,"insertions":8,"deletions":4,"files":["CHANGELOG","jc/__init__.py","jc/cli.py","setup.py"]},"message":"version bump to v1.15.3","epoch":1618951152,"epoch_utc":null},{"commit":"9747ca414dfb8218389c7b2199a080edabc2a184","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 10:50:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 20 10:50:20 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/utils.py"]},"message":"minor optimization to convert_to_int(). No longer runs through convert_to_float(), but uses standard float() function.","epoch":1618941020,"epoch_utc":null},{"commit":"312d465b61a15592cc70d3734ad747b9a2be10ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 19 14:18:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 19 14:18:12 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"]},"message":"update link","epoch":1618867092,"epoch_utc":null},{"commit":"7dcf87d24ad40eba6ba98de2b4b2bf177a76cd71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 19 13:12:55 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 19 13:12:55 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping.py"]},"message":"formatting","epoch":1618863175,"epoch_utc":null},{"commit":"cf3cfd16a9de05f30303b5952fbe609cde842d2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 19 09:59:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 19 09:59:58 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_utils.py"]},"message":"rename tests","epoch":1618851598,"epoch_utc":null},{"commit":"fcc7e5294973d1a18943fa2ce2e836b0fe757d95","merge":"6c83846 3ab9d48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 17:28:27 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Apr 18 17:28:27 2021 -0700","message":"Merge pull request #123 from kellyjonbrazil/dev\n\nDev v1.15.2","epoch":1618792107,"epoch_utc":null},{"commit":"3ab9d480149a692510ab9e0ac8e745b674683e3d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 17:24:42 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 18 17:24:42 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CHANGELOG"]},"message":"update changelog","epoch":1618791882,"epoch_utc":null},{"commit":"7eddf41c5f6310264359cd6d78bdfa4b65af7d06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 17:21:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 18 17:21:08 2021 -0700","stats":{"files_changed":11,"insertions":96,"deletions":9,"files":["jc/man/jc.1.gz","jc/utils.py","man/jc.1.gz","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/df.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/free-h.json","tests/test_utils.py"]},"message":"dont round up int conversions and fix tests","epoch":1618791668,"epoch_utc":null},{"commit":"27a196c93862bd737603cfe402b35529eb412954","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 16:42:42 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 18 16:42:42 2021 -0700","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc update","epoch":1618789362,"epoch_utc":null},{"commit":"e4324f05fb6f89c34fa1567e70d8636457623edb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 16:42:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 18 16:42:34 2021 -0700","stats":{"files_changed":2,"insertions":14,"deletions":14,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"fix indentation in doc","epoch":1618789354,"epoch_utc":null},{"commit":"d36b332bd78b5bf5979cdc59b31da08d8e4104d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 16:33:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 18 16:33:47 2021 -0700","stats":{"files_changed":53,"insertions":196,"deletions":274,"files":["docs/parsers/systemctl_lj.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/wc.md","docs/parsers/who.md","docs/utils.md","jc/parsers/acpi.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/hash.py","jc/parsers/hciconfig.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl_lj.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/utils.py"]},"message":"use jc.utils for conversions","epoch":1618788827,"epoch_utc":null},{"commit":"1f034826f69c461495f7a302cc8fe35e3052e72f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 13:01:25 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 18 13:01:25 2021 -0700","stats":{"files_changed":42,"insertions":94,"deletions":185,"files":["docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","tests/fixtures/centos-7.7/ls-alh.json","tests/fixtures/centos-7.7/lsof-sudo.json","tests/fixtures/centos-7.7/lsof.json","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/ubuntu-18.04/ls-alh.json","tests/fixtures/ubuntu-18.04/lsof-sudo.json","tests/fixtures/ubuntu-18.04/lsof.json"]},"message":"use jc.utils for conversions","epoch":1618776085,"epoch_utc":null},{"commit":"246c707c98d3128b4e38f5c4b23a1e0ceedc0b0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 11:46:42 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 18 11:46:42 2021 -0700","stats":{"files_changed":46,"insertions":190,"deletions":196,"files":["CHANGELOG","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/df.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/hash.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/utils.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/hash.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/utils.py","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/osx-10.11.6/df-h.json","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/free-h.json"]},"message":"use jc.utils conversions","epoch":1618771602,"epoch_utc":null},{"commit":"b5d8968144e76090870f8563dc1bce910fba668c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 17 17:22:59 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 17 17:22:59 2021 -0700","stats":{"files_changed":1,"insertions":19,"deletions":0,"files":["jc/utils.py"]},"message":"add convert_to_int function","epoch":1618705379,"epoch_utc":null},{"commit":"f7b9fbefdde6973077573fec02342eb9946789c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 17 17:22:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 17 17:22:44 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add query_size info for dig","epoch":1618705364,"epoch_utc":null},{"commit":"b1fc4533833ca25f59869bfec8ac114bf49c7847","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 17 17:22:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 17 17:22:30 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"]},"message":"fix _IfconfigParser name","epoch":1618705350,"epoch_utc":null},{"commit":"7581c8d0f4262fc6a05240bb21ffe533b153f6e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 17 17:07:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 17 17:07:20 2021 -0700","stats":{"files_changed":3,"insertions":45,"deletions":32,"files":["docs/parsers/dig.md","jc/parsers/dig.py","tests/fixtures/generic/dig-edns3.json"]},"message":"add query_size field. handle user-specified dig output better - especially when querying dnssec","epoch":1618704440,"epoch_utc":null},{"commit":"32bf8ad6f4fff83fdfd83d66c1ba8f1af5a65a90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 17 15:02:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 17 15:02:45 2021 -0700","stats":{"files_changed":4,"insertions":52,"deletions":24,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"update dig docs","epoch":1618696965,"epoch_utc":null},{"commit":"b083bcc10fa1105fc09ce8d2c3297aa5575c9d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:30:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 16 16:30:17 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]},"message":"update man page","epoch":1618615817,"epoch_utc":null},{"commit":"4f6fdd120d23468270c1d7111e4ef71b87759a1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:30:04 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 16 16:30:04 2021 -0700","stats":{"files_changed":2,"insertions":134,"deletions":100,"files":["docs/readme.md","jc/__init__.py"]},"message":"use dig as example","epoch":1618615804,"epoch_utc":null},{"commit":"eb0038be2490053d32803d30e1c3d4d34509d130","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:29:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 16 16:29:44 2021 -0700","stats":{"files_changed":1,"insertions":40,"deletions":19,"files":["EXAMPLES.md"]},"message":"update dig examples","epoch":1618615784,"epoch_utc":null},{"commit":"7ecdf819fa37c38ae6159ad8e7bc973ee4f34559","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:29:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 16 16:29:27 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":84,"files":["README.md","templates/readme_template"]},"message":"remove dig example from readme,","epoch":1618615767,"epoch_utc":null},{"commit":"c6aa4d083550d25bcb621cad524047cfd6a08217","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:19:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 16 16:19:20 2021 -0700","stats":{"files_changed":6,"insertions":252,"deletions":317,"files":["README.md","docs/parsers/dig.md","jc/man/jc.1.gz","jc/parsers/dig.py","man/jc.1.gz","templates/readme_template"]},"message":"update docs with new dig parser examples","epoch":1618615160,"epoch_utc":null},{"commit":"7c584b89a6e6b924d53d50103b97f0c2405c33b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:04:06 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 16 16:04:06 2021 -0700","stats":{"files_changed":15,"insertions":352,"deletions":52,"files":["jc/parsers/dig.py","tests/fixtures/generic/dig-additional.json","tests/fixtures/generic/dig-additional.out","tests/fixtures/generic/dig-additional2.json","tests/fixtures/generic/dig-additional2.out","tests/fixtures/generic/dig-additional3.json","tests/fixtures/generic/dig-additional3.out","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/generic/dig-edns.json","tests/fixtures/generic/dig-edns.out","tests/fixtures/generic/dig-edns2.json","tests/fixtures/generic/dig-edns2.out","tests/fixtures/generic/dig-edns3.json","tests/fixtures/generic/dig-edns3.out","tests/test_dig.py"]},"message":"add additional section","epoch":1618614246,"epoch_utc":null},{"commit":"c166c0bfdafa922f57f021fa4d16e467fca02d58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 15:22:22 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 16 15:22:22 2021 -0700","stats":{"files_changed":14,"insertions":55,"deletions":21,"files":["jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json"]},"message":"add opt_pseudosection section to output and fix existing tests","epoch":1618611742,"epoch_utc":null},{"commit":"a8dd3f7802bfe8fd3ffbedf89af45ddc580ee78d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 13:11:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 16 13:11:02 2021 -0700","stats":{"files_changed":5,"insertions":54,"deletions":281,"files":["CHANGELOG","jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-axfr.json"]},"message":"working dig axfr fixes","epoch":1618603862,"epoch_utc":null},{"commit":"3b0e2f03f3b11398ff57b1daed542faaf0b80a62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 08:46:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 16 08:46:20 2021 -0700","stats":{"files_changed":2,"insertions":24,"deletions":23,"files":["jc/cli.py","templates/manpage_template"]},"message":"clean up examples","epoch":1618587980,"epoch_utc":null},{"commit":"8390ae48c88ab1c7d5acbf40c0e60606953817bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 15 16:53:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 15 16:53:03 2021 -0700","stats":{"files_changed":7,"insertions":8,"deletions":8,"files":["jc/parsers/dig.py","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json"]},"message":"fix server entry when IPv6 address is in value (maxsplit on colons)","epoch":1618530783,"epoch_utc":null},{"commit":"2db82c0a7e19d596c876ede8a8ff106aaa733ee5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 20:43:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 14 20:43:58 2021 -0700","stats":{"files_changed":1,"insertions":66,"deletions":0,"files":["EXAMPLES.md"]},"message":"add systeminfo example","epoch":1618458238,"epoch_utc":null},{"commit":"61479540756704f10853233300ceae8f954a8a95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 20:39:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 14 20:39:35 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":0,"files":["tests/test_systeminfo.py","tests/test_utils.py"]},"message":"update tests","epoch":1618457975,"epoch_utc":null},{"commit":"691df271fcfe057ae4b75ad40869e23deb37b886","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 20:30:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 14 20:30:31 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":1,"files":["docs/parsers/systeminfo.md","jc/man/jc.1.gz","jc/parsers/systeminfo.py","man/jc.1.gz"]},"message":"add info docstring","epoch":1618457431,"epoch_utc":null},{"commit":"89f52b95f7055da9d7b5fa8dce0923d4c3435bd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 20:20:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 14 20:20:46 2021 -0700","stats":{"files_changed":13,"insertions":467,"deletions":821,"files":["README.md","docs/parsers/systeminfo.md","jc/man/jc.1.gz","jc/parsers/systeminfo.py","jc/utils.py","man/jc.1.gz",".../windows/windows-10/systeminfo-hyperv-utc.json",".../windows/windows-10/systeminfo-hyperv-utc.out",".../windows/windows-10/systeminfo-hyperv.json","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-10/systeminfo.out",".../windows/windows-2012r2/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"]},"message":"update systeminfo parser with updated timestamps, normalized blank fields, and new doc style","epoch":1618456846,"epoch_utc":null},{"commit":"146acc1bf69c402e38c2f1bc842b84e6cff7e2cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 16:46:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 14 16:46:16 2021 -0700","stats":{"files_changed":1,"insertions":23,"deletions":29,"files":["jc/parsers/systeminfo.py"]},"message":"rename functions to make them private","epoch":1618443976,"epoch_utc":null},{"commit":"c4a345f59aa090336b4e80f181493cd5bc2c17c5","merge":"dfd2703 325fab2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 16:39:44 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Apr 14 16:39:44 2021 -0700","message":"Merge pull request #106 from jon-rd/j/systeminfo\n\nAdd windows systeminfo command parser","epoch":1618443584,"epoch_utc":null},{"commit":"dfd2703f75b907ba865fff266d0742d8931bc2d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 16:39:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 14 16:39:05 2021 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"]},"message":"bump dev to v1.15.2","epoch":1618443545,"epoch_utc":null},{"commit":"325fab2de7b8a4bfc452ab8d3cf333d47fdf4989","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Wed Apr 14 11:52:13 2021 -0500","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","commit_by_date":"Wed Apr 14 11:52:13 2021 -0500","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/systeminfo.py"]},"message":"update documentation for parsed structures","epoch":1618426333,"epoch_utc":null},{"commit":"f3d00cf38ad15aeda7eaa5644ebc30ff33de6a29","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Wed Apr 14 09:06:14 2021 -0500","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","commit_by_date":"Wed Apr 14 11:38:50 2021 -0500","stats":{"files_changed":5,"insertions":56,"deletions":48,"files":["jc/parsers/systeminfo.py",".../windows/windows-10/systeminfo-hyperv.json","tests/fixtures/windows/windows-10/systeminfo.json",".../windows/windows-2012r2/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"]},"message":"append mb to memory key names; adjust expected timestamps to utc tz","epoch":1618416374,"epoch_utc":null},{"commit":"14838f7f5d780896f1318cac2c3f34d249a158d4","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Wed Apr 14 08:59:17 2021 -0500","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","commit_by_date":"Wed Apr 14 11:38:50 2021 -0500","stats":{"files_changed":9,"insertions":956,"deletions":116,"files":["jc/parsers/systeminfo.py","jc/utils.py",".../windows/windows-10/systeminfo-hyperv.json",".../windows/windows-10/systeminfo-hyperv.out","tests/fixtures/windows/windows-10/systeminfo.json",".../windows/windows-2012r2/systeminfo.json",".../fixtures/windows/windows-2012r2/systeminfo.out","tests/fixtures/windows/windows-7/systeminfo.json","tests/test_systeminfo.py"]},"message":"update schema with nic, hyperv, and process changes","epoch":1618415957,"epoch_utc":null},{"commit":"af74047b81776c2ea32d82f9145ab60c346c8203","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Mon Apr 5 09:32:04 2021 -0500","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","commit_by_date":"Wed Apr 14 11:38:50 2021 -0500","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/systeminfo.py"]},"message":"update schema based on processor/hotfix changes","epoch":1617640324,"epoch_utc":null},{"commit":"660c59129cf4ba7889fb3c6fbafd9dd9b479ccd9","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Mon Apr 5 09:29:42 2021 -0500","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","commit_by_date":"Wed Apr 14 11:38:50 2021 -0500","stats":{"files_changed":3,"insertions":41,"deletions":9,"files":["jc/parsers/systeminfo.py","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"]},"message":"Add parsing of processors/hotfixs","epoch":1617640182,"epoch_utc":null},{"commit":"89a88e186ed71d84ea802cf08ab756b49cee3225","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Thu Mar 25 16:58:54 2021 -0500","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","commit_by_date":"Wed Apr 14 11:38:50 2021 -0500","stats":{"files_changed":1,"insertions":152,"deletions":0,"files":["docs/parsers/systeminfo.md"]},"message":"Add systeminfo.md file","epoch":1616716734,"epoch_utc":null},{"commit":"f861cf95b96a224a0a11f2cdc3261b94c02415ef","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Thu Mar 25 16:18:14 2021 -0500","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","commit_by_date":"Wed Apr 14 11:38:50 2021 -0500","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["jc/cli.py","jc/parsers/systeminfo.py"]},"message":"Change to v0.5; add parser to cli.py; add to docgen","epoch":1616714294,"epoch_utc":null},{"commit":"ee8f06cbdb03f8254bb6a3c56fa5b8a64ff9ca77","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Wed Mar 24 14:13:22 2021 -0500","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","commit_by_date":"Wed Apr 14 11:38:49 2021 -0500","stats":{"files_changed":6,"insertions":688,"deletions":0,"files":["jc/parsers/systeminfo.py","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-10/systeminfo.out","tests/fixtures/windows/windows-7/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.out","tests/test_systeminfo.py"]},"message":"Add windows systeminfo command parser","epoch":1616620402,"epoch_utc":null},{"commit":"a2e8b3c7b681605916b8950d035ee19889a125a5","merge":"e0681ee 6c83846","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 16:40:43 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Apr 13 16:40:43 2021 -0700","message":"Merge pull request #121 from kellyjonbrazil/master\n\nMerge pull request #120 from kellyjonbrazil/dev","epoch":1618357243,"epoch_utc":null},{"commit":"6c838460752c7131f75cdab2da07266fee492060","merge":"10292f7 e0681ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:59:17 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Apr 13 14:59:17 2021 -0700","message":"Merge pull request #120 from kellyjonbrazil/dev\n\nDev v1.15.1","epoch":1618351157,"epoch_utc":null},{"commit":"e0681eebb9881dc0ffddb478224455f434919104","merge":"e5732d1 10292f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:57:44 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Apr 13 14:57:44 2021 -0700","message":"Merge branch 'master' into dev","epoch":1618351064,"epoch_utc":null},{"commit":"e5732d1cea1c882f6486cf288e45edb993989ea0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:54:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 13 14:54:38 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"update changelog","epoch":1618350878,"epoch_utc":null},{"commit":"6e7ae3cd3f003fe9e1e587b7f8ebd16ba0895014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:51:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 13 14:51:46 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/timedatectl.md","jc/man/jc.1.gz","jc/parsers/timedatectl.py","man/jc.1.gz"]},"message":"formatting of timedatectl docs","epoch":1618350706,"epoch_utc":null},{"commit":"f95632d1aaee545ae0ce081ca0617be135c09220","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:49:57 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 13 14:49:57 2021 -0700","stats":{"files_changed":7,"insertions":83,"deletions":62,"files":["EXAMPLES.md","docs/parsers/rpm_qi.md","jc/man/jc.1.gz","jc/parsers/rpm_qi.py","man/jc.1.gz","tests/fixtures/centos-7.7/rpm-qai.json","tests/fixtures/centos-7.7/rpm-qi-package.json"]},"message":"add install_date calculated fields","epoch":1618350597,"epoch_utc":null},{"commit":"2f8b7b26e59bcd745fa1fcadb373455c7d404286","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:35:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 13 14:35:17 2021 -0700","stats":{"files_changed":3,"insertions":1,"deletions":2,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"update docs for v1.15.1","epoch":1618349717,"epoch_utc":null},{"commit":"10292f7502e4cb1c53b53ed39fed9288044c2ef8","merge":"37a3565 aef5470","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:15:40 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Apr 12 13:15:40 2021 -0700","message":"Merge pull request #119 from kellyjonbrazil/dpkg_l-fix\n\nadd _l to module name","epoch":1618258540,"epoch_utc":null},{"commit":"aef54705f5267c633e0778e8dce0065978083139","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:15:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 12 13:15:12 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["docs/parsers/dpkg_l.md"]},"message":"add _l to module name","epoch":1618258512,"epoch_utc":null},{"commit":"bba5980fa53767716bc35d8c904e7a2341346eeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:13:18 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 12 13:13:18 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]},"message":"man page update","epoch":1618258398,"epoch_utc":null},{"commit":"977425abfb05a63ee372df36124ac6ba6a5a0aaa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:12:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 12 13:12:08 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"]},"message":"add _l to package name in docs","epoch":1618258328,"epoch_utc":null},{"commit":"37a3565a1bbd3d01663602673fed651509e69d8c","merge":"bdcdaee 13deb8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:06:30 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Apr 12 13:06:30 2021 -0700","message":"Merge pull request #118 from kellyjonbrazil/rpm-qi-doc-fix\n\nfix rpm-qi docs","epoch":1618257990,"epoch_utc":null},{"commit":"13deb8bfb6e77aaf86942f0be87b59d06ee2a97c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:05:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 12 13:05:34 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":194,"files":["docs/parsers/rpm_qai.md","docs/parsers/rpm_qi.md"]},"message":"fix rpm-qi docs","epoch":1618257934,"epoch_utc":null},{"commit":"a3ed9d075aff41599452c3094f7d057c25fc8f89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:04:22 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 12 13:04:22 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":191,"files":["docs/parsers/rpm_qai.md"]},"message":"remove old parser doc","epoch":1618257862,"epoch_utc":null},{"commit":"fb0ced549e021916dee7da39859e8f85c8216e16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:01:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 12 13:01:17 2021 -0700","stats":{"files_changed":4,"insertions":6,"deletions":6,"files":["docs/parsers/rpm_qi.md","jc/man/jc.1.gz","jc/parsers/rpm_qi.py","man/jc.1.gz"]},"message":"fix rpm-qi docs (used underscore instead of dash in name)","epoch":1618257677,"epoch_utc":null},{"commit":"7eb31bc7d290fcd09e53524ebbb11e59110df6a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 19:55:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 19:55:03 2021 -0700","stats":{"files_changed":4,"insertions":39,"deletions":48,"files":["docs/parsers/airport_s.md","jc/man/jc.1.gz","jc/parsers/airport_s.py","man/jc.1.gz"]},"message":"update airport_s docs","epoch":1618023303,"epoch_utc":null},{"commit":"6a06a3914273853742ac57433398968ccf7d9897","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 16:36:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 16:36:20 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["docgen.sh"]},"message":"use herestring instead of echo -e into jq","epoch":1618011380,"epoch_utc":null},{"commit":"bdcdaee6c5299ea0750512e0943c7f58f56f2e35","merge":"5d8f836 605353f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 15:11:05 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Apr 9 15:11:05 2021 -0700","message":"Merge pull request #117 from kellyjonbrazil/doc_update\n\nadd new docs","epoch":1618006265,"epoch_utc":null},{"commit":"605353fdce3b8b5986d20a35d05f7210a6df0730","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 15:10:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 15:10:38 2021 -0700","stats":{"files_changed":70,"insertions":1710,"deletions":2656,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md"]},"message":"add new docs","epoch":1618006238,"epoch_utc":null},{"commit":"490c9e17699e8e4f70dcc1612e1a808f86e24b0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 11:38:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 11:38:17 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["tests/test_cli.py"]},"message":"add more cli tests for magic command","epoch":1617993497,"epoch_utc":null},{"commit":"6ebebb659dc93daeaa869752ad135f6e1d2cb1ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 11:10:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 11:10:08 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"]},"message":"update changelog","epoch":1617991808,"epoch_utc":null},{"commit":"0e70c5ee12e96f04a89de05153a2da9cd39f98ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 11:04:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 11:04:17 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"update documentation link","epoch":1617991457,"epoch_utc":null},{"commit":"cd531acf6045660e022c932f62a01d4084433ad4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 11:02:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 11:02:19 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["docgen.sh"]},"message":"clean up comment","epoch":1617991339,"epoch_utc":null},{"commit":"908ac1f61c5cc011d05d550f933940dfed4431f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 10:56:43 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 10:56:43 2021 -0700","stats":{"files_changed":143,"insertions":0,"deletions":690,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/man/jc.1.gz","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","man/jc.1.gz"]},"message":"update docs - remove compatibility section since it is now automatically generated from info()","epoch":1617991003,"epoch_utc":null},{"commit":"f5c7e7e4046bc57b4fcad99390e31b121a7106ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 10:36:42 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 10:36:42 2021 -0700","stats":{"files_changed":70,"insertions":350,"deletions":0,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md"]},"message":"add updated docs with home link and parser info at the bottom","epoch":1617989802,"epoch_utc":null},{"commit":"001c700b5bd280cb1cb9e54169ae5f1b7918c257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 10:36:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 10:36:03 2021 -0700","stats":{"files_changed":3,"insertions":2,"deletions":1,"files":["docgen.sh","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"add home link to the top of the md file","epoch":1617989763,"epoch_utc":null},{"commit":"9b41e9bef0ff099e70f37fddc8fe2c6bd8457b19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 10:32:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 10:32:58 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"]},"message":"Add parser information header","epoch":1617989578,"epoch_utc":null},{"commit":"34bd6e32dc0c0bf7dfeedaadbf04115f43e9d060","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 10:26:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 10:26:34 2021 -0700","stats":{"files_changed":1,"insertions":20,"deletions":4,"files":["docgen.sh"]},"message":"pull each parser as a json object into a bash array and iterate on it to add supplementary information like version, author, and compatibility","epoch":1617989194,"epoch_utc":null},{"commit":"c5d058490beaa8f59875a8acfd7a400764768639","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 09:12:41 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 09:12:41 2021 -0700","stats":{"files_changed":1,"insertions":22,"deletions":13,"files":["jc/cli.py"]},"message":"move parser doc printing to its own function","epoch":1617984761,"epoch_utc":null},{"commit":"dd1ae6d9a7de5421830232deb42d933b9a652672","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 08:09:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 08:09:37 2021 -0700","stats":{"files_changed":4,"insertions":3,"deletions":1,"files":["MANIFEST.in","jc/man/jc.1.gz","man/jc.1.gz","mangen.py"]},"message":"add man page inside the pypi package for easier packaging in homebrew","epoch":1617980977,"epoch_utc":null},{"commit":"d8ea9bde823a7f5c146741150c3211737345c7dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 16:42:57 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 16:42:57 2021 -0700","stats":{"files_changed":3,"insertions":16,"deletions":16,"files":["docs/parsers/w.md","jc/parsers/w.py","man/jc.1.gz"]},"message":"doc update","epoch":1617925377,"epoch_utc":null},{"commit":"125edc9c906dc3650b6a683ed13830075acb7ab6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 16:42:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 16:42:45 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"bail out for -h, -a, and -v in magic()","epoch":1617925365,"epoch_utc":null},{"commit":"15ea43e394a9004f8ccec208b3a066c76e241866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 16:28:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 16:28:05 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["MANIFEST.in"]},"message":"add man file to package for easier packaging in homebrew","epoch":1617924485,"epoch_utc":null},{"commit":"b55b02687c00d1c50e30f30c9b9a7f36f783eb0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 16:14:11 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 16:14:11 2021 -0700","stats":{"files_changed":19,"insertions":371,"deletions":441,"files":["CHANGELOG","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","man/jc.1.gz","setup.py"]},"message":"doc update","epoch":1617923651,"epoch_utc":null},{"commit":"da611f0ac6321f7f52fdbc419f8b155c74393c28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 15:53:06 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 15:53:06 2021 -0700","stats":{"files_changed":4,"insertions":63,"deletions":50,"files":["jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","man/jc.1.gz"]},"message":"update docs","epoch":1617922386,"epoch_utc":null},{"commit":"b8b8dfead4fdc4285585c44c2ebce3bdd42b2e7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 15:52:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 15:52:49 2021 -0700","stats":{"files_changed":61,"insertions":1501,"deletions":1848,"files":["docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py"]},"message":"update docs","epoch":1617922369,"epoch_utc":null},{"commit":"4290a3cbd135cacbf63664dc30768017ebbed28d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 14:00:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 14:00:56 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":9,"files":["docs/parsers/ifconfig.md","jc/parsers/ifconfig.py"]},"message":"make IfconfigParser class private","epoch":1617915656,"epoch_utc":null},{"commit":"a5e2203cee6a7bc398cf280f57d37638eeb1d2d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 12:45:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 12:45:08 2021 -0700","stats":{"files_changed":3,"insertions":2,"deletions":1,"files":["docs/parsers/ifconfig.md","jc/parsers/ifconfig.py","man/jc.1.gz"]},"message":"update ifconfig doc","epoch":1617911108,"epoch_utc":null},{"commit":"e28c08b1361161cfd123b9ebc11fa1ffa87d658f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 12:42:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 12:42:01 2021 -0700","stats":{"files_changed":46,"insertions":976,"deletions":1209,"files":["docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","man/jc.1.gz"]},"message":"update documentation","epoch":1617910921,"epoch_utc":null},{"commit":"a4b6846f63b43168085275d73940265940badf46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 11:37:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 11:37:39 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":467,"files":["man/jc.1","man/jc.1.gz"]},"message":"man update","epoch":1617907059,"epoch_utc":null},{"commit":"2bc830786114fd57619f34b936dcf6e0bed7a109","merge":"9b39917 5d8f836","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 11:33:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 11:33:50 2021 -0700","message":"Merge branch 'master' into dev\n\n# Conflicts:\n# man/jc.1","epoch":1617906830,"epoch_utc":null},{"commit":"9b39917c798ed0310c9b82d87172cbf6d24ba111","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 11:24:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 11:24:02 2021 -0700","stats":{"files_changed":17,"insertions":391,"deletions":453,"files":["README.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","jc/cli.py","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"update docstrings for new help functionality","epoch":1617906242,"epoch_utc":null},{"commit":"57c13cc0a38ad89fda8b0e362bd6487257d0a26a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 10:54:15 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 10:54:15 2021 -0700","stats":{"files_changed":1,"insertions":23,"deletions":3,"files":["jc/cli.py"]},"message":"add support for parser help","epoch":1617904455,"epoch_utc":null},{"commit":"b7355fd30d992a1bcc90227f5a1b02be073829e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 10:20:24 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 10:20:24 2021 -0700","stats":{"files_changed":2,"insertions":37,"deletions":48,"files":["docs/parsers/arp.md","jc/parsers/arp.py"]},"message":"new docstring format for improved documentation","epoch":1617902424,"epoch_utc":null},{"commit":"93ae309e407b26820b9f05b5b331d05fc77df57f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 10:20:00 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 10:20:00 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/__init__.py","man/jc.1"]},"message":"bump version to 1.15.1","epoch":1617902400,"epoch_utc":null},{"commit":"5d8f8365e24a7c3a587d4e71ebba4876de08203b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 14:27:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 7 14:27:34 2021 -0700","stats":{"files_changed":3,"insertions":9,"deletions":461,"files":["man/jc.1","man/jc.1.gz","mangen.py"]},"message":"gzip man page","epoch":1617830854,"epoch_utc":null},{"commit":"f26909eefb236e9ebf63be53cd86ae13cc3d9ea3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 11:18:33 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 7 11:18:33 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["docs/parsers/dir.md"]},"message":"formatting","epoch":1617819513,"epoch_utc":null},{"commit":"55bfbb2797ede3aefbb14ecab950b108b1895ccc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 11:13:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 7 11:13:27 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":6,"files":["EXAMPLES.md","jc/parsers/dir.py"]},"message":"formatting","epoch":1617819207,"epoch_utc":null},{"commit":"8970b8342a855203aef649b60dad3e49a1d7fd2a","merge":"a73fdb7 5285e69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 09:34:45 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Apr 7 09:34:45 2021 -0700","message":"Merge pull request #115 from kellyjonbrazil/master\n\nSync master and dev","epoch":1617813285,"epoch_utc":null},{"commit":"5285e699c30fdeaf56068f5a03ef1d1d33fa673c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 08:07:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 7 08:07:50 2021 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","jc/cli.py","man/jc.1"]},"message":"fix rpm-qi parser name","epoch":1617808070,"epoch_utc":null},{"commit":"275f3860d5870303235b651d42650256e4db8ada","merge":"577811f a73fdb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 07:54:41 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Apr 7 07:54:41 2021 -0700","message":"Merge pull request #114 from kellyjonbrazil/dev\n\nDev v1.15.0","epoch":1617807281,"epoch_utc":null},{"commit":"a73fdb7478965f0f2c841ac01b2762db80ad0786","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 07:50:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 7 07:50:17 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["CHANGELOG","man/jc.1"]},"message":"update dates","epoch":1617807017,"epoch_utc":null},{"commit":"f2d746403a0ed764f931ae9e14d180bab107dcca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 20:30:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 20:30:56 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/rpm_qi.md","jc/parsers/rpm_qi.py"]},"message":"typo fix","epoch":1617766256,"epoch_utc":null},{"commit":"b7dbf2c49be4beb793495a0aaee7f05dbea5a3a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 18:53:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 18:53:50 2021 -0700","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["jc/utils.py"]},"message":"doc formatting","epoch":1617760430,"epoch_utc":null},{"commit":"21f3c97788826e79b0c387f877c5adf269318e97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 18:38:04 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 18:38:04 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"]},"message":"rename rpm_qai to rpm_qi","epoch":1617759484,"epoch_utc":null},{"commit":"14b727cc717d04fefba1cc31b6f29b549ced986f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 18:34:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 18:34:08 2021 -0700","stats":{"files_changed":3,"insertions":73,"deletions":0,"files":["tests/fixtures/centos-7.7/rpm-qi-package.json","tests/fixtures/centos-7.7/rpm-qi-package.out","tests/test_rpm_qai.py"]},"message":"add rpm_qi tests","epoch":1617759248,"epoch_utc":null},{"commit":"abee226591ed4ae37351efc995017d28b27827d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 18:32:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 18:32:47 2021 -0700","stats":{"files_changed":5,"insertions":205,"deletions":14,"files":["README.md","docs/parsers/rpm_qi.md","jc/cli.py","jc/parsers/{rpm_qai.py => rpm_qi.py}","man/jc.1"]},"message":"rename rpm_qia to rpm_qi","epoch":1617759167,"epoch_utc":null},{"commit":"293ad39f4bcf326186dd917d8bc58d3964e5e4d6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 16:48:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 16:48:31 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"typo fix","epoch":1617752911,"epoch_utc":null},{"commit":"92443025811019f616f596abb60a2889f604c122","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 15:07:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 15:07:39 2021 -0700","stats":{"files_changed":4,"insertions":7,"deletions":6,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/rpm_qai.md","jc/parsers/rpm_qai.py"]},"message":"rpm parser doc update","epoch":1617746859,"epoch_utc":null},{"commit":"753cac25fb1e7e6cd2c742afa8d45ced068ea91d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 14:46:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 14:46:27 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":3,"files":["jc/parsers/rpm_qai.py"]},"message":"only add description if it exists","epoch":1617745587,"epoch_utc":null},{"commit":"0548263e898bf14f93d2fa423c0f0a9d9f2ff567","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 14:39:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 14:39:39 2021 -0700","stats":{"files_changed":8,"insertions":10468,"deletions":0,"files":["EXAMPLES.md","README.md","docs/parsers/rpm_qai.md","jc/cli.py","jc/parsers/rpm_qai.py","man/jc.1","tests/fixtures/centos-7.7/rpm-qai.json","tests/fixtures/centos-7.7/rpm-qai.out"]},"message":"add rpm -qai parser","epoch":1617745179,"epoch_utc":null},{"commit":"53776a9bf894988d6ef9221a62ab8b816c89560c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 11:36:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 11:36:10 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["man/jc.1","templates/manpage_template"]},"message":"note -a output is JSON","epoch":1617734170,"epoch_utc":null},{"commit":"cc7def9b76a7fa6de1e11b584676820f3acb0257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 11:29:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 11:29:30 2021 -0700","stats":{"files_changed":3,"insertions":18,"deletions":0,"files":["tests/fixtures/osx-10.14.6/finger.json","tests/fixtures/osx-10.14.6/finger.out","tests/test_finger.py"]},"message":"add OSX finger tests","epoch":1617733770,"epoch_utc":null},{"commit":"11a4422c25ed905f33475677bcc2f59f49c62a23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 11:23:29 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 11:23:29 2021 -0700","stats":{"files_changed":3,"insertions":51,"deletions":0,"files":["tests/fixtures/centos-7.7/finger.json","tests/fixtures/centos-7.7/finger.out","tests/test_finger.py"]},"message":"add centos 7.7 finger tests","epoch":1617733409,"epoch_utc":null},{"commit":"3a44785260514227b541530baf3e14b6c7ebe86a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 11:23:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 11:23:09 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/finger.py"]},"message":"del details key if details are blank","epoch":1617733389,"epoch_utc":null},{"commit":"e0d430c26c38db8de5a32741e05df412cffe45b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 11:00:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 11:00:46 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"update -r raw option info","epoch":1617732046,"epoch_utc":null},{"commit":"417b70020accfa4910016e9d3d12690a5488f6f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 10:51:41 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 10:51:41 2021 -0700","stats":{"files_changed":5,"insertions":129,"deletions":22,"files":["EXAMPLES.md","docs/parsers/finger.md","jc/parsers/finger.py","tests/fixtures/ubuntu-18.04/finger.json","tests/fixtures/ubuntu-18.04/finger.out"]},"message":"add idle time fields to finger parser","epoch":1617731501,"epoch_utc":null},{"commit":"7b29c464b72ef9a79bd872dab92cf65016490bcc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 10:04:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 10:04:02 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"date updated","epoch":1617728642,"epoch_utc":null},{"commit":"26d5529d86e4e459ad94226465c3697a050af0ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 10:03:51 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 10:03:51 2021 -0700","stats":{"files_changed":1,"insertions":10,"deletions":7,"files":["docs/parsers/finger.md"]},"message":"remove aix support, add note for -s support. schema update","epoch":1617728631,"epoch_utc":null},{"commit":"852103c478321b84ffbbc0a876d5ece0c0881e1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 10:02:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 10:02:46 2021 -0700","stats":{"files_changed":1,"insertions":27,"deletions":14,"files":["jc/parsers/finger.py"]},"message":"tweak regex to support arbitrary 'detail' data","epoch":1617728566,"epoch_utc":null},{"commit":"26a115421b0888e23f4348f1124e2ef7b39df4cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 17:16:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 17:16:38 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["CHANGELOG"]},"message":"add finger parser","epoch":1617668198,"epoch_utc":null},{"commit":"755b941a9aa602d95d9bc599f5c64e05f9e6216d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 17:14:33 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 17:14:33 2021 -0700","stats":{"files_changed":3,"insertions":35,"deletions":30,"files":["EXAMPLES.md","docs/parsers/finger.md","jc/parsers/finger.py"]},"message":"doc update","epoch":1617668073,"epoch_utc":null},{"commit":"fd1ca82d86649adeb84968142665e5e4fae3fa0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 17:09:22 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 17:09:22 2021 -0700","stats":{"files_changed":5,"insertions":263,"deletions":0,"files":["README.md","docs/parsers/finger.md","jc/cli.py","jc/parsers/finger.py","man/jc.1"]},"message":"add finger parser","epoch":1617667762,"epoch_utc":null},{"commit":"6fe175344fc61d4996a9ea20f6c5d429efb1fac7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 13:38:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 13:38:09 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"change examples link to github.io","epoch":1617655089,"epoch_utc":null},{"commit":"3590cda13a68616ee7eb8c85c5554ffb3fef036d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 12:07:52 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 12:07:52 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/last.md","jc/parsers/last.py"]},"message":"docs formatting","epoch":1617649672,"epoch_utc":null},{"commit":"2f1011dd85ec9b3550138ac4a4e1729fa5b4fe17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 12:03:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 12:03:35 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"readme update","epoch":1617649415,"epoch_utc":null},{"commit":"2b155261b3f6e4879b592f5bc052649ded5e3d69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 12:01:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 12:01:53 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"]},"message":"use new github.io links for documentation","epoch":1617649313,"epoch_utc":null},{"commit":"02f4d606d0a446c7cc74aedac6035ee79805950d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 11:49:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 11:49:30 2021 -0700","stats":{"files_changed":2,"insertions":69,"deletions":69,"files":["README.md","templates/readme_template"]},"message":"add documentation links to README.md","epoch":1617648570,"epoch_utc":null},{"commit":"577811f00b7fcd0396bb0e26a2985709bd2c65a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 11:42:59 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 11:42:59 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/_config.yml"]},"message":"Set theme jekyll-theme-cayman","epoch":1617648179,"epoch_utc":null},{"commit":"b4098d67a3a4a617d42c1389e0a88833c77b89b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 09:42:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 09:42:35 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"latest","epoch":1617640955,"epoch_utc":null},{"commit":"88bd7554aeb511c19e55dc3dde9c9376efb0485b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 09:42:25 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 09:42:25 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":3,"files":["docgen.sh","updatedocs.sh"]},"message":"add status messages","epoch":1617640945,"epoch_utc":null},{"commit":"b5ec16c5cafb78db093861cc30d9646207f2227a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 09:23:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 09:23:20 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":8,"files":["mangen.py","readmegen.py"]},"message":"formatting","epoch":1617639800,"epoch_utc":null},{"commit":"68fcb60a1460a35500180ec05a8cf5ba5706ff17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 20:56:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 4 20:56:10 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["updatedocs.sh"]},"message":"add updatedocs script","epoch":1617594970,"epoch_utc":null},{"commit":"e4781d60ce251f6d47f19bbe042e97f8aa9e2f18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 20:52:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 4 20:52:34 2021 -0700","stats":{"files_changed":65,"insertions":188,"deletions":189,"files":["README.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","man/jc.1"]},"message":"update parser descriptions with backticks surrounding command names","epoch":1617594754,"epoch_utc":null},{"commit":"6201fb346a66ba762651624cdaf03f08e08579a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 20:31:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 4 20:31:58 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","jc/parsers/iw_scan.py"]},"message":"test backticks in description","epoch":1617593518,"epoch_utc":null},{"commit":"f88c8343f9dec5e0190df94a5109e6c749bda286","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 20:30:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 4 20:30:53 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","jc/parsers/iw_scan.py"]},"message":"update iw-scan description for documentation","epoch":1617593453,"epoch_utc":null},{"commit":"25410d33168ee7142bd8f8c739ef22a62a47eb6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 20:28:54 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 4 20:28:54 2021 -0700","stats":{"files_changed":5,"insertions":973,"deletions":70,"files":["README.md","mangen.py","readmegen.py","{man/template => templates}/manpage_template","templates/readme_template"]},"message":"create readmegen.py script. move jinja2 templates to templates folder","epoch":1617593334,"epoch_utc":null},{"commit":"4ff9952938d0654376efc94ca7d8a12f6df171af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 15:57:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 4 15:57:44 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["README.md"]},"message":"change OSX to macOS","epoch":1617577064,"epoch_utc":null},{"commit":"5e3f63a412c5b23e7515337521ebba6273b5c11f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 15:53:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 4 15:53:23 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["man/jc.1","man/template/manpage_template"]},"message":"add license and copyright info. use variables instead of hard-coded values","epoch":1617576803,"epoch_utc":null},{"commit":"e1f57be69efdfd7facd07df6ef0955a36c4fc18b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 15:52:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 4 15:52:50 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"]},"message":"add license info","epoch":1617576770,"epoch_utc":null},{"commit":"2c65d5eeccdc95d2de00ac6575a9e8d8458486bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 14:40:22 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 4 14:40:22 2021 -0700","stats":{"files_changed":2,"insertions":32,"deletions":8,"files":["man/jc.1","man/template/manpage_template"]},"message":"man page updates","epoch":1617572422,"epoch_utc":null},{"commit":"aa621f2f1ee043611c440683dfb63e6577d8fac4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 14:29:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 4 14:29:37 2021 -0700","stats":{"files_changed":3,"insertions":74,"deletions":9,"files":["CHANGELOG","man/jc.1","man/template/manpage_template"]},"message":"enhance man page","epoch":1617571777,"epoch_utc":null},{"commit":"ac932c6e59ad80115962d0ea91e6aaabc70c211e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 3 14:48:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 3 14:48:30 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/utils.md","jc/utils.py"]},"message":"update timestamp docs","epoch":1617486510,"epoch_utc":null},{"commit":"029f79da1647e53f97ca83ba92b1f36a131f3128","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 21:52:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 21:52:08 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"added info regarding updated dev scripts for automating doc generation","epoch":1617425528,"epoch_utc":null},{"commit":"153b2b4a7a216caae5b03f6d50d43980c13a705f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 21:50:04 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 21:50:04 2021 -0700","stats":{"files_changed":1,"insertions":11,"deletions":68,"files":["docgen.sh"]},"message":"use jc to help automate the generation of its own docs","epoch":1617425404,"epoch_utc":null},{"commit":"709b2fe4eead06090f903718deeb06ec774fc26e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 18:08:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 18:08:46 2021 -0700","stats":{"files_changed":2,"insertions":16,"deletions":0,"files":["man/jc.1","man/template/manpage_template"]},"message":"add -h and -v options","epoch":1617412126,"epoch_utc":null},{"commit":"09c1fccc584e3d0582e19b520586419085ea8d04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 18:04:55 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 18:04:55 2021 -0700","stats":{"files_changed":3,"insertions":4,"deletions":6,"files":["man/jc.1","man/template/manpage_template","mangen.py"]},"message":"manpage updates","epoch":1617411895,"epoch_utc":null},{"commit":"fd254d99b782888fe7646e42a61f28aa99e7cba7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 17:40:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 17:40:09 2021 -0700","stats":{"files_changed":3,"insertions":193,"deletions":15,"files":["man/jc.1","man/template/manpage_template","mangen.py"]},"message":"add manpage generator","epoch":1617410409,"epoch_utc":null},{"commit":"88bd2c172217c498431e8904e74313bc27978785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 16:31:22 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 16:31:22 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"fix typo","epoch":1617406282,"epoch_utc":null},{"commit":"d03e2f0fc1d0310cd94702f4d3c959d71b0eb622","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 15:01:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 15:01:21 2021 -0700","stats":{"files_changed":1,"insertions":40,"deletions":0,"files":["CONTRIBUTING.md"]},"message":"add parser schema guidelines","epoch":1617400881,"epoch_utc":null},{"commit":"3f12a393bd37062cd1412128be495235b0c7351f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 13:25:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 13:25:23 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"formatting","epoch":1617395123,"epoch_utc":null},{"commit":"8c21284c5038bdc2e52ff4211fac747f33f52091","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 13:23:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 13:23:26 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["CONTRIBUTING.md"]},"message":"remove redundant license info","epoch":1617395006,"epoch_utc":null},{"commit":"e7d396c2157a77500017967dfc68ffaf32507c2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 13:21:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 13:21:56 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"update issues link","epoch":1617394916,"epoch_utc":null},{"commit":"f238fac0eb0c8e5133c6c9abf9ca709f5df7a925","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 13:19:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 13:19:47 2021 -0700","stats":{"files_changed":3,"insertions":49,"deletions":0,"files":["CHANGELOG","CONTRIBUTING.md","README.md"]},"message":"add contributing guidelines","epoch":1617394787,"epoch_utc":null},{"commit":"017228f80d9a65ad7715f31c539d9fca1615296f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:14:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 12:14:26 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add tested on Windows 10","epoch":1617390866,"epoch_utc":null},{"commit":"286c5fa9434e25434ee8f4825621f68464296469","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:12:43 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 12:12:43 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add dir parser","epoch":1617390763,"epoch_utc":null},{"commit":"74cfc13abe4cd09ca5470714caeaedd24c099770","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:10:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 12:10:05 2021 -0700","stats":{"files_changed":9,"insertions":12,"deletions":21,"files":["tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-S.json","tests/fixtures/windows-10/dir-dirs.json","tests/fixtures/windows-10/dir-files.json","tests/fixtures/windows-10/dir-mix.json","tests/fixtures/windows-10/dir-raw.json","tests/fixtures/windows-10/dir.json","tests/test_dir.py"]},"message":"fixup dir parser tests","epoch":1617390605,"epoch_utc":null},{"commit":"0ee4a6c377321cf6ff67ced38e9a07a8f6313943","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:01:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 12:01:39 2021 -0700","stats":{"files_changed":2,"insertions":207,"deletions":460,"files":["docs/parsers/dir.md","jc/parsers/dir.py"]},"message":"update schema and add epoch naive timestamp","epoch":1617390099,"epoch_utc":null},{"commit":"283433578dfc3f132ef35727ce5bafb3e390896c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:01:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 12:01:23 2021 -0700","stats":{"files_changed":2,"insertions":46,"deletions":0,"files":["EXAMPLES.md","README.md"]},"message":"add dir parser","epoch":1617390083,"epoch_utc":null},{"commit":"9559c85057308e8815d4654bbe0062a5858c0b2b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:01:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 12:01:05 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":0,"files":["jc/utils.py","tests/test_utils.py"]},"message":"add windows dir format","epoch":1617390065,"epoch_utc":null},{"commit":"c5c020f5654038dacba542be3784a35d7333cbcc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 11:16:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 11:16:03 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/parsers/dir.md"]},"message":"add /S option","epoch":1617387363,"epoch_utc":null},{"commit":"95ec79bceb3d0c4245e36b7b16cfda6e16b01197","merge":"8f8be8a 5b60c74","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 11:14:26 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Apr 2 11:14:26 2021 -0700","message":"Merge pull request #107 from rasheed-rd/add-dir-parser\n\nAdd windows dir command parser","epoch":1617387266,"epoch_utc":null},{"commit":"8f8be8aa33f0b708ebd9a35c6b288572443d7181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 11:14:06 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 11:14:06 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"add -1 option info","epoch":1617387246,"epoch_utc":null},{"commit":"5b60c7445a3f8bd2ae1587aa0ffaeaf093966f9a","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","date":"Fri Apr 2 13:43:06 2021 -0400","commit_by":"Rasheed Elsaleh","commit_by_email":"rasheed@rebelliondefense.com","commit_by_date":"Fri Apr 2 13:43:06 2021 -0400","stats":{"files_changed":5,"insertions":469,"deletions":400,"files":["docs/parsers/dir.md","jc/parsers/dir.py","tests/fixtures/windows-10/dir-S.json","tests/fixtures/windows-10/dir-S.out","tests/test_dir.py"]},"message":"Add support for /S and update documentation","epoch":1617396186,"epoch_utc":null},{"commit":"d9dbcc8b526c8de9c6d12ac580880fd606dc68cf","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","date":"Fri Apr 2 13:13:05 2021 -0400","commit_by":"Rasheed Elsaleh","commit_by_email":"rasheed@rebelliondefense.com","commit_by_date":"Fri Apr 2 13:13:05 2021 -0400","stats":{"files_changed":15,"insertions":149,"deletions":73,"files":["docs/parsers/dir.md","jc/parsers/dir.py","tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-Q.json","tests/fixtures/windows-10/dir-Q.out","tests/fixtures/windows-10/dir-dirs.json","tests/fixtures/windows-10/dir-dirs.out","tests/fixtures/windows-10/dir-files.json","tests/fixtures/windows-10/dir-files.out","tests/fixtures/windows-10/dir-mix.json","tests/fixtures/windows-10/dir-mix.out","tests/fixtures/windows-10/dir-raw.json","tests/fixtures/windows-10/dir.json","tests/test_dir.py"]},"message":"Add parent dir to structure. Add test cases. Remove support for /Q","epoch":1617394385,"epoch_utc":null},{"commit":"79bc525970b38dea68b4859ac5dd32fc681e5994","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:42:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 20:42:36 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"]},"message":"add codes field to schema","epoch":1617334956,"epoch_utc":null},{"commit":"9dae1091ddc6141694ebfdc5ae649582cb879ccd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:41:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 20:41:05 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"]},"message":"typo fix","epoch":1617334865,"epoch_utc":null},{"commit":"74d3ac686a69518c1048260e37a0245ff254ff57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:37:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 20:37:12 2021 -0700","stats":{"files_changed":4,"insertions":61,"deletions":0,"files":["tests/fixtures/ubuntu-18.04/dpkg-l-codes.json","tests/fixtures/ubuntu-18.04/dpkg-l-columns500.json","tests/fixtures/ubuntu-18.04/dpkg-l.json","tests/test_dpkg_l.py"]},"message":"add dpkg-l tests","epoch":1617334632,"epoch_utc":null},{"commit":"cf3cc636badcf4ae6db1e5ee5e57ca0331ee5b0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:25:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 20:25:56 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add dpkg-l parser info","epoch":1617333956,"epoch_utc":null},{"commit":"a720441e1d34771c5a54876cb7dd63fb8c9f408e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:24:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 20:24:19 2021 -0700","stats":{"files_changed":1,"insertions":54,"deletions":0,"files":["EXAMPLES.md"]},"message":"add dpkg -l example","epoch":1617333859,"epoch_utc":null},{"commit":"0a7ed0959df07e2f36d9ec3ca8c294cfdaf10396","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:17:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 20:17:21 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"]},"message":"rename err to error","epoch":1617333441,"epoch_utc":null},{"commit":"eb83c9b86dc6d1ff15efed30993071834b65a7d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:13:40 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 20:13:40 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":21,"files":["docs/utils.md"]},"message":"replace parse_datetime_to_timestamp with timestamp class","epoch":1617333220,"epoch_utc":null},{"commit":"5c0142dd19eee14f4f1c287f0543e29824f9ae70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:12:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 20:12:58 2021 -0700","stats":{"files_changed":9,"insertions":1797,"deletions":2,"files":["CHANGELOG","docgen.sh","docs/parsers/dpkg_l.md","jc/cli.py","jc/parsers/dpkg_l.py","jc/parsers/universal.py","tests/fixtures/ubuntu-18.04/dpkg-l-codes.out","tests/fixtures/ubuntu-18.04/dpkg-l-columns500.out","tests/fixtures/ubuntu-18.04/dpkg-l.out"]},"message":"add dpkg-l parser","epoch":1617333178,"epoch_utc":null},{"commit":"c326c8dc8356b55bba13864156adf30607205ece","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 12:52:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 12:52:10 2021 -0700","stats":{"files_changed":18,"insertions":194,"deletions":1,"files":["jc/parsers/time.py","tests/fixtures/osx-10.14.6/time-l.json","tests/fixtures/osx-10.14.6/time-l.out","tests/fixtures/osx-10.14.6/time-lp.json","tests/fixtures/osx-10.14.6/time-lp.out","tests/fixtures/osx-10.14.6/time-p.json","tests/fixtures/osx-10.14.6/time-p.out","tests/fixtures/osx-10.14.6/time.json","tests/fixtures/osx-10.14.6/time.out","tests/fixtures/ubuntu-18.04/time-p.json","tests/fixtures/ubuntu-18.04/time-p.out","tests/fixtures/ubuntu-18.04/time-verbose.json","tests/fixtures/ubuntu-18.04/time-verbose.out","tests/fixtures/ubuntu-18.04/time.json","tests/fixtures/ubuntu-18.04/time.out","tests/fixtures/ubuntu-18.04/time2.json","tests/fixtures/ubuntu-18.04/time2.out","tests/test_time.py"]},"message":"add TypeError to except block. add /usr/bin/time tests","epoch":1617306730,"epoch_utc":null},{"commit":"fc4082a03feb5645a1ad687908782a2584a58956","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:26:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 11:26:02 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":131,"files":["jc/utils.py"]},"message":"remove old parse_datetime_to_timestamp function","epoch":1617301562,"epoch_utc":null},{"commit":"c8655565ff8718f0f14d41696b81e6539529dde1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:23:24 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 11:23:24 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"]},"message":"use new timestamp class","epoch":1617301404,"epoch_utc":null},{"commit":"638f879f16c9e87edb60953f4fd0b1c7ad92f277","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:21:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 11:21:27 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/dig.py"]},"message":"use new timestamp class","epoch":1617301287,"epoch_utc":null},{"commit":"1d221bf7e6128d57bd769c0fe8f37f7a94da8cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:19:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 11:19:49 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/who.py"]},"message":"use new timestamp class","epoch":1617301189,"epoch_utc":null},{"commit":"60ea71f0ef931dccf09e6eb0cb737ddad0b47f0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:18:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 11:18:03 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/timedatectl.py"]},"message":"use new timestamp class","epoch":1617301083,"epoch_utc":null},{"commit":"d8bdd35a3f462efcdc871426309299e8aefb0a79","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:17:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 11:17:53 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/stat.py"]},"message":"use new timestamp class","epoch":1617301073,"epoch_utc":null},{"commit":"7463891c53f3670710dfa72ed1422431c274fe4a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:13:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 11:13:02 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/last.py"]},"message":"use new timestamp class","epoch":1617300782,"epoch_utc":null},{"commit":"7537aec76fa07384c4439f34c50d4e3f001c0dfa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:08:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 11:08:27 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":8,"files":["jc/parsers/date.py"]},"message":"use jc.utils.timestamp instead of jc.utils.parse_datetime_to_timestamp()","epoch":1617300507,"epoch_utc":null},{"commit":"62234e39a8533362a20f106c64326ed69f430006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:08:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 11:08:20 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":8,"files":["jc/parsers/upower.py"]},"message":"use jc.utils.timestamp instead of jc.utils.parse_datetime_to_timestamp()","epoch":1617300500,"epoch_utc":null},{"commit":"be004b7b3fe9217160c6418907e7d8aad10e5fae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:07:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 11:07:37 2021 -0700","stats":{"files_changed":2,"insertions":172,"deletions":15,"files":["jc/utils.py","tests/test_utils.py"]},"message":"make parse_datetime_to_timestamp function a class called timestamp for easier use","epoch":1617300457,"epoch_utc":null},{"commit":"82539444b24169b2eb762485ed032fc968a81f71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 31 20:48:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 31 20:48:44 2021 -0700","stats":{"files_changed":2,"insertions":23,"deletions":21,"files":["docs/parsers/time.md","jc/parsers/time.py"]},"message":"fix indentation for int and float conversions. add real_time field to schema","epoch":1617248924,"epoch_utc":null},{"commit":"a571d3cbafd5048d1d59070e1791398ae410197f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 31 20:41:04 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 31 20:41:04 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/time.md","jc/parsers/time.py"]},"message":"fix typo","epoch":1617248464,"epoch_utc":null},{"commit":"a038c14c23ea27264df61a38e0301de8d1fa1b9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 31 20:39:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 31 20:39:03 2021 -0700","stats":{"files_changed":3,"insertions":8,"deletions":8,"files":["EXAMPLES.md","docs/parsers/time.md","jc/parsers/time.py"]},"message":"change microseconds to centiseconds","epoch":1617248343,"epoch_utc":null},{"commit":"25a85d874cd2b57a7700b0c2dca61132127732b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 31 20:21:29 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 31 20:21:29 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iw_scan.py"]},"message":"update docs","epoch":1617247289,"epoch_utc":null},{"commit":"884c36ff42df4f580c8e2b4705def8e4c1182e39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 31 20:19:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 31 20:19:46 2021 -0700","stats":{"files_changed":8,"insertions":536,"deletions":1,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","docs/parsers/iw_scan.md","docs/parsers/time.md","jc/cli.py","jc/parsers/time.py"]},"message":"add /usr/bin/time parser","epoch":1617247186,"epoch_utc":null},{"commit":"b98e72b8b4eda0ab5ede7725226e61634af572eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 21:33:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 30 21:33:23 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add ls parser info","epoch":1617165203,"epoch_utc":null},{"commit":"05885c0096b5ee142ecff2d17e37c446518998a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 21:29:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 30 21:29:34 2021 -0700","stats":{"files_changed":5,"insertions":931,"deletions":18,"files":["docs/parsers/ls.md","jc/parsers/ls.py","tests/fixtures/ubuntu-18.04/ls-l-iso.json","tests/fixtures/ubuntu-18.04/ls-l-iso.out","tests/test_ls.py"]},"message":"add epoch and epoch_utc timestamps","epoch":1617164974,"epoch_utc":null},{"commit":"4c9761231af897658c3a2c0abcc476aa8b43d1b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 20:41:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 30 20:41:10 2021 -0700","stats":{"files_changed":21,"insertions":118,"deletions":81,"files":["CHANGELOG","EXAMPLES.md","README.md","docs/parsers/dig.md","jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json"]},"message":"add when_epoch and when_epoch_utc fields","epoch":1617162070,"epoch_utc":null},{"commit":"656eaa150861948091ef9d6323805c2698039bc6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 16:43:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 30 16:43:53 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1617147833,"epoch_utc":null},{"commit":"1560dcddcf82f55fffce22d1b46d372b25a9d0fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 16:43:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 30 16:43:02 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"]},"message":"add acpi, upower parsers and -v version option","epoch":1617147782,"epoch_utc":null},{"commit":"08d4cd4870c7acaf3a453d1400b64d77d462437b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 16:34:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 30 16:34:01 2021 -0700","stats":{"files_changed":7,"insertions":114,"deletions":43,"files":["EXAMPLES.md","docs/parsers/acpi.md","jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.json","tests/fixtures/generic/acpi-V2.json","tests/fixtures/generic/acpi-V3.json","tests/fixtures/generic/acpi-V4.json"]},"message":"add time calculations to acpi parser","epoch":1617147241,"epoch_utc":null},{"commit":"9767a50cededb140575e195abf79ce49c4f53789","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 11:59:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 30 11:59:44 2021 -0700","stats":{"files_changed":12,"insertions":48,"deletions":46,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/who.md","jc/parsers/who.py","jc/utils.py","tests/fixtures/centos-7.7/who-a.json","tests/fixtures/centos-7.7/who.json","tests/fixtures/osx-10.14.6/who-a.json","tests/fixtures/osx-10.14.6/who.json","tests/fixtures/ubuntu-18.04/who-a.json","tests/fixtures/ubuntu-18.04/who.json","tests/test_utils.py"]},"message":"update who parser to add epoch naive timestamp","epoch":1617130784,"epoch_utc":null},{"commit":"cd86890ed1493644e391e52e33561e9a77631a51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 08:05:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 30 08:05:26 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"]},"message":"add website to info and use variables for version info","epoch":1617116726,"epoch_utc":null},{"commit":"ba0dd3b9ca98a042c772898302fcfe5fdc84f79a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 21:25:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 21:25:19 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["tests/test_utils.py"]},"message":"add parse_timedate_to_timestamp test for format 7300","epoch":1617078319,"epoch_utc":null},{"commit":"8d7fa07ffd50f38336a448eb506a76d9d4849a6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 21:20:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 21:20:19 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":11,"files":["tests/fixtures/centos-7.7/timedatectl.json"]},"message":"unformat json","epoch":1617078019,"epoch_utc":null},{"commit":"cade1bfe6e56b5926898b7204e911885efebd5a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 21:19:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 21:19:12 2021 -0700","stats":{"files_changed":2,"insertions":12,"deletions":2,"files":["tests/fixtures/centos-7.7/timedatectl.json","tests/fixtures/ubuntu-18.04/timedatectl.json"]},"message":"update timedatectl tests for new epoch_utc field","epoch":1617077952,"epoch_utc":null},{"commit":"daec4ab0a7f572e872b27b043d51f68e5e06300f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 21:16:40 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 21:16:40 2021 -0700","stats":{"files_changed":5,"insertions":20,"deletions":4,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/timedatectl.md","jc/parsers/timedatectl.py","jc/utils.py"]},"message":"add epoch_utc field to timedatectl parser","epoch":1617077800,"epoch_utc":null},{"commit":"3c96bc319615c824a06c388e9e3c1d68a9bf4084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:57:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 20:57:58 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"]},"message":"version bump","epoch":1617076678,"epoch_utc":null},{"commit":"7f7d8d4bd6f37015b11bac60a7bd99e8d3eca108","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:36:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 20:36:10 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":0,"files":["docs/parsers/stat.md","jc/parsers/stat.py"]},"message":"update stat docs","epoch":1617075370,"epoch_utc":null},{"commit":"47263661a41987f334fd484e866e0aa8859cde5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:30:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 20:30:20 2021 -0700","stats":{"files_changed":1,"insertions":18,"deletions":2,"files":["EXAMPLES.md"]},"message":"update stat example","epoch":1617075020,"epoch_utc":null},{"commit":"4c42a086d206919dfe4f1c0801fe4fb1027cb1cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:25:54 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 20:25:54 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":6,"files":["jc/utils.py"]},"message":"clean up debug code","epoch":1617074754,"epoch_utc":null},{"commit":"5d2541a5c4bc93f3943a491c76df7f8d4e2cf44b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:22:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 20:22:35 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/utils.py"]},"message":"remove auto c locale and use a manual format rule for windows and linux compatibility","epoch":1617074555,"epoch_utc":null},{"commit":"d91d170b49bfc88c0b2fb54475705c038172f1c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:16:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 20:16:05 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/utils.py"]},"message":"try manual c locale format for windows","epoch":1617074165,"epoch_utc":null},{"commit":"6d1f4584a9ccd0f0f7ed4fdf408576a9e7f5046b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:05:42 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 20:05:42 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"]},"message":"try manually setting time format for windows compatibility","epoch":1617073542,"epoch_utc":null},{"commit":"1d76d96bcf4185cffb7066bec637913099399db5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 16:58:57 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 16:58:57 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/utils.py"]},"message":"debug windows issue","epoch":1617062337,"epoch_utc":null},{"commit":"e8847c998c91131acf5ee0f6485e9976c0fce3ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 16:35:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 16:35:26 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["tests/fixtures/centos-7.7/stat.json","tests/fixtures/freebsd12/stat.json","tests/fixtures/osx-10.14.6/stat.json","tests/fixtures/ubuntu-18.04/stat.json"]},"message":"update stat tests","epoch":1617060926,"epoch_utc":null},{"commit":"da88e49bae2f3fecff623f52c20bf994b653583e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 15:36:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 15:36:16 2021 -0700","stats":{"files_changed":2,"insertions":69,"deletions":29,"files":["docs/parsers/stat.md","jc/parsers/stat.py"]},"message":"add new examples","epoch":1617057376,"epoch_utc":null},{"commit":"65c3a12e5422782df40489c3c431677f5657dbf5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 15:32:04 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 15:32:04 2021 -0700","stats":{"files_changed":2,"insertions":35,"deletions":24,"files":["jc/parsers/stat.py","jc/utils.py"]},"message":"simplify None data scenario","epoch":1617057124,"epoch_utc":null},{"commit":"d8d600cc36bde4e6216b935f87a765599e896714","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 14:51:48 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 14:51:48 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"add reference to -h for help","epoch":1617054708,"epoch_utc":null},{"commit":"507999b117b024fed1ccf067bd5dc411dbeb268c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 14:45:13 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 14:45:13 2021 -0700","stats":{"files_changed":3,"insertions":34,"deletions":19,"files":["docs/utils.md","jc/utils.py","tests/test_utils.py"]},"message":"add stat command timestamp detection","epoch":1617054313,"epoch_utc":null},{"commit":"8ad164eb340e135eeeb10b721172916182f37e30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 12:33:54 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 12:33:54 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_cli.py"]},"message":"fix tests for compact output","epoch":1617046434,"epoch_utc":null},{"commit":"a507df140b245b83b1c46e8462b44e1145c42f2a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 12:25:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 12:25:58 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add compact json info","epoch":1617045958,"epoch_utc":null},{"commit":"8912a99986a977ee6ca7bbe2368f5033644577b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 12:25:48 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 12:25:48 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/cli.py"]},"message":"make default json output more compact","epoch":1617045948,"epoch_utc":null},{"commit":"1953f9882890cd0e8c515d43ce28c96f918b0ab4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 11:44:43 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 11:44:43 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"]},"message":"add version info. add json now supports unicode output","epoch":1617043483,"epoch_utc":null},{"commit":"7515218ddd2cdcfcebd67850140e842f2f121226","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 11:42:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 11:42:01 2021 -0700","stats":{"files_changed":2,"insertions":10,"deletions":14,"files":["jc/cli.py","jc/utils.py"]},"message":"use jc.utils for all warning and error messages. simply error and warning formatting.","epoch":1617043321,"epoch_utc":null},{"commit":"36c11201366cefedee4244fb71a4a9cc6507e6ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 10:59:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 10:59:56 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"formatting","epoch":1617040796,"epoch_utc":null},{"commit":"8fa0fe64d8418093c7f28cdc70a7f409956aeb04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 10:52:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 10:52:02 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"]},"message":"add -v to helptext. minor formatting","epoch":1617040322,"epoch_utc":null},{"commit":"c1a8201b140c65579ff9f8427322b67653bf3006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 10:24:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 10:24:58 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["EXAMPLES.md"]},"message":"add copyright","epoch":1617038698,"epoch_utc":null},{"commit":"398bbac48c8a716b1872843d671aa6ceaeba6a78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 10:23:52 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 10:23:52 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"simplify return value for parse_datetime_to_timestamp()","epoch":1617038632,"epoch_utc":null},{"commit":"ea71a42bbdd9b09a457727cfe763054625f7901a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 09:43:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 09:43:19 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/cli.py"]},"message":"formatting","epoch":1617036199,"epoch_utc":null},{"commit":"1c16d25b17a7282a62a5ebd9755df5569c57435f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 09:41:15 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 09:41:15 2021 -0700","stats":{"files_changed":2,"insertions":30,"deletions":9,"files":["README.md","jc/cli.py"]},"message":"add version option (-v) and copyright information. add 'ensure_ascii=False' to json dumps to properly show UTF-8 copyright character","epoch":1617036075,"epoch_utc":null},{"commit":"9d12ded889f656656267cbf7a91d71267201f736","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 16:32:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 16:32:17 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"help description change","epoch":1616801537,"epoch_utc":null},{"commit":"5312701515ecb3a10598bb9dcf2f73b7eae71b93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 16:29:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 16:29:10 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add - make all external python requirements optional","epoch":1616801350,"epoch_utc":null},{"commit":"808c7bc0a94ecfd160ee2b257e5feec347829a5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 16:14:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 16:14:35 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/xml.py"]},"message":"make xmltodict library optional","epoch":1616800475,"epoch_utc":null},{"commit":"4d394015f458f284d052ce2c1a0c8492916c5b3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 16:10:28 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 16:10:28 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/yaml.py"]},"message":"make ruamel.yaml library optional","epoch":1616800228,"epoch_utc":null},{"commit":"3638298af8ebc01d54aa3ab5668d0adedca957e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 15:54:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 15:54:45 2021 -0700","stats":{"files_changed":1,"insertions":53,"deletions":44,"files":["jc/cli.py"]},"message":"make pygments library optional","epoch":1616799285,"epoch_utc":null},{"commit":"5f00973e400629bd68c0ab60ed9005410278f855","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 15:38:57 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 15:38:57 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/date.py"]},"message":"remove parenthesis to normalize text for naive timezone detection","epoch":1616798337,"epoch_utc":null},{"commit":"0f6e2c14fcb69f664c29083ec5207326f842dfdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 14:57:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 14:57:19 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/parsers/upower.py"]},"message":"simplify timestamp failure logic","epoch":1616795839,"epoch_utc":null},{"commit":"51813da61994226ba40478825d47f80c23413349","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 14:56:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 14:56:45 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":4,"files":["jc/parsers/date.py"]},"message":"add offset timezones. fix timestamp logic on conversion failure","epoch":1616795805,"epoch_utc":null},{"commit":"e7751322ea195cac7f1921ba8e0364c442065d20","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 14:55:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 14:55:47 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/iw_scan.py"]},"message":"formatting","epoch":1616795747,"epoch_utc":null},{"commit":"26ef29843784ade3d55410be13300dd6f4c06890","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 14:55:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 14:55:16 2021 -0700","stats":{"files_changed":1,"insertions":10,"deletions":6,"files":["jc/utils.py"]},"message":"change return to always include the entire object but all keys may be None if conversion fails","epoch":1616795716,"epoch_utc":null},{"commit":"badaf8ce73d7deb0ec2be244e27b4bf8cddbea19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 14:00:33 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 14:00:33 2021 -0700","stats":{"files_changed":1,"insertions":14,"deletions":14,"files":["jc/utils.py"]},"message":"comment formatting","epoch":1616792433,"epoch_utc":null},{"commit":"b123a622039f3cc32643a3bfc0766154d660f8bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 13:11:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 13:11:34 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/utils.py"]},"message":"move locale change formats to the end of the list","epoch":1616789494,"epoch_utc":null},{"commit":"cfd77e42522aa2ebeada9f45ac99bd1d3414f782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 13:01:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 13:01:12 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/utils.py"]},"message":"reset locale to None on exception","epoch":1616788872,"epoch_utc":null},{"commit":"38f814072eac5370059f1b4203316eee41cf535b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 11:55:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 11:55:12 2021 -0700","stats":{"files_changed":1,"insertions":26,"deletions":8,"files":["jc/utils.py"]},"message":"better normalization of datetime string. better UTC detection. More formats supported with detected locale.","epoch":1616784912,"epoch_utc":null},{"commit":"a0db7754e384a0c95f2099bf894f3a22bd33c002","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 09:32:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 09:32:49 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add nixos install info","epoch":1616776369,"epoch_utc":null},{"commit":"f07620afc7dc0d0d605eb483ef36c5979b33cdfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 09:28:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 09:28:03 2021 -0700","stats":{"files_changed":3,"insertions":18,"deletions":7,"files":["README.md","jc/__init__.py","jc/cli.py"]},"message":"move version to jc.__init__.py\nadd -h option for help instead of always showing on error\nuse jc.utils.error_message for the following errors: missing/incorrect arguments, parser not found, missing piped data","epoch":1616776083,"epoch_utc":null},{"commit":"c1b0d27752726989c6051f683a1194941bee598c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 20:45:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 20:45:38 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":10,"files":["runtests.sh"]},"message":"remove old commented commands","epoch":1616730338,"epoch_utc":null},{"commit":"430a5108aa265d4df0e4584eade54759da864c61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 20:42:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 20:42:58 2021 -0700","stats":{"files_changed":3,"insertions":19,"deletions":60,"files":["runtests.sh","tests/test_last.py","tests/test_last2.py"]},"message":"move all tests to github actions","epoch":1616730178,"epoch_utc":null},{"commit":"111ce92fc9c33b82c7d1a1664dda046ea5993f6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 20:37:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 20:37:35 2021 -0700","stats":{"files_changed":4,"insertions":0,"deletions":1,"files":["tests/{localtest_date.py => test_date.py}","tests/{localtest_last.py => test_last2.py}","tests/{localtest_upower.py => test_upower.py}","tests/test_utils.py"]},"message":"attempt all tests in github actions with timezone correction","epoch":1616729855,"epoch_utc":null},{"commit":"c851e8a58d98b2a4907cf1e7cf7c7d8d8dc04dc6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 20:33:25 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 20:33:25 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_utils.py"]},"message":"force github action","epoch":1616729605,"epoch_utc":null},{"commit":"39f4bcd9b41450068903ea2843508586eccdf709","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 20:30:13 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Mar 25 20:30:13 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"Change Windows timezone\n\nuse \"Pacific Standard Time\"","epoch":1616729413,"epoch_utc":null},{"commit":"4a610c4c81493788b8351e8c74aabe819c981c02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:57:32 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 19:57:32 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["tests/test_utils.py"]},"message":"force github action","epoch":1616727452,"epoch_utc":null},{"commit":"89ee11945d4e2db107a33ef0d61e0c6015ac8ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:55:21 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Mar 25 19:55:21 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"Change timezone provider\n\nuses: szenius/set-timezone@v1.0","epoch":1616727321,"epoch_utc":null},{"commit":"dadb09b74a69d1852f8433e0e32ccdd67bd91181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:52:43 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 19:52:43 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_utils.py"]},"message":"force github action","epoch":1616727163,"epoch_utc":null},{"commit":"1b1f638b97dc5e6f2767183eb363b79ae3c9b3c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:49:03 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Mar 25 19:49:03 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":[".github/workflows/pythonapp.yml"]},"message":"Change timezone change provider\n\nchange to actions/set-timezone-action","epoch":1616726943,"epoch_utc":null},{"commit":"794fc4ed44d1565514303090403d68ba5d639cb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:43:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 19:43:16 2021 -0700","stats":{"files_changed":2,"insertions":36,"deletions":8,"files":["jc/utils.py","tests/test_utils.py"]},"message":"add parse_datetime_to_timestamp() tests","epoch":1616726596,"epoch_utc":null},{"commit":"72f735bf9211d7beddcf58819fe465722f5d7c5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:42:02 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Mar 25 19:42:02 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":[".github/workflows/pythonapp.yml"]},"message":"Set Timezone to America/Los_Angeles\n\nUsing zcong1993/setup-timezone","epoch":1616726522,"epoch_utc":null},{"commit":"912877f25ad562ed4cafe7b2d7446bd48b477ea2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 15:34:54 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 15:34:54 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"additional timezone info","epoch":1616711694,"epoch_utc":null},{"commit":"2772c5ae436ea437d833003372d53a3d3f955ea0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 15:10:07 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 15:10:07 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1616710207,"epoch_utc":null},{"commit":"a7ad24d2cb61d84cf2846f8fa43af31f0597043e","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","date":"Thu Mar 25 16:45:30 2021 -0400","commit_by":"Rasheed Elsaleh","commit_by_email":"rasheed@rebelliondefense.com","commit_by_date":"Thu Mar 25 18:09:47 2021 -0400","stats":{"files_changed":13,"insertions":772,"deletions":0,"files":["docgen.sh","docs/parsers/dir.md","jc/cli.py","jc/parsers/dir.py","tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-C.out","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-ODTC.out","tests/fixtures/windows-10/dir-Q.json","tests/fixtures/windows-10/dir-Q.out","tests/fixtures/windows-10/dir.json","tests/fixtures/windows-10/dir.out","tests/test_dir.py"]},"message":"Add dir parser\n\nAdd usage commands\n\nFix example options\n\nupdate dir.md","epoch":1616715930,"epoch_utc":null},{"commit":"a364a6a9faeb6aa290b790f3dec74e92b8670534","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 15:08:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 15:08:23 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"]},"message":"add note regarding calculated timestamps","epoch":1616710103,"epoch_utc":null},{"commit":"7b2dc86a8d974e7984fe2540f56a66c2b9386acd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 12:07:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 12:07:36 2021 -0700","stats":{"files_changed":1,"insertions":23,"deletions":19,"files":["EXAMPLES.md"]},"message":"update last example with new timestamp fields","epoch":1616699256,"epoch_utc":null},{"commit":"ad645636d07d0423253f19068a22b2a28251b05f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 11:43:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 11:43:30 2021 -0700","stats":{"files_changed":5,"insertions":86,"deletions":50,"files":["CHANGELOG","EXAMPLES.md","README.md","docs/parsers/uptime.md","jc/parsers/uptime.py"]},"message":"update uptime docs","epoch":1616697810,"epoch_utc":null},{"commit":"2f2f297b29fbe3172647a81db084b3564a441d40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 11:35:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 11:35:21 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["tests/fixtures/centos-7.7/uptime.json","tests/fixtures/osx-10.11.6/uptime.json","tests/fixtures/osx-10.14.6/uptime.json","tests/fixtures/ubuntu-18.04/uptime.json"]},"message":"update uptime fixtures with new fields","epoch":1616697321,"epoch_utc":null},{"commit":"099ae3fde03f8157298f6b412bdddb8bd56da09a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 11:17:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 11:17:44 2021 -0700","stats":{"files_changed":1,"insertions":26,"deletions":22,"files":["jc/parsers/uptime.py"]},"message":"fix issue when there is no data","epoch":1616696264,"epoch_utc":null},{"commit":"e9febe98ac5ec0e03791c5b6794446a2c3312fb1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 11:17:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 11:17:01 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["runtests.sh"]},"message":"add localtest partition lines for readability","epoch":1616696221,"epoch_utc":null},{"commit":"5fbd07cccf9fb697b996dcc3949eef5b1c09e655","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 10:31:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 10:31:12 2021 -0700","stats":{"files_changed":1,"insertions":59,"deletions":26,"files":["jc/parsers/uptime.py"]},"message":"rewrite of uptime parser including new fields","epoch":1616693472,"epoch_utc":null},{"commit":"5fed4698c2c1f1b7e05c5b4c51639f818e049b53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:57:04 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 21:57:04 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":6,"files":["docs/parsers/last.md","jc/parsers/last.py"]},"message":"update docs and version number","epoch":1616648224,"epoch_utc":null},{"commit":"ed7eb0983a4dfcc1d66a2957be3e10b2203d909e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:51:43 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 21:51:43 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/last.py"]},"message":"use parse_datetime_to_timestamp function instead of custom format string","epoch":1616647903,"epoch_utc":null},{"commit":"90c7e18e5fc5ea9fcf6157cc2656f47193d78411","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:50:32 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 21:50:32 2021 -0700","stats":{"files_changed":1,"insertions":16,"deletions":11,"files":["EXAMPLES.md"]},"message":"update date example","epoch":1616647832,"epoch_utc":null},{"commit":"953ab5c3bd0c8b6eef29b717edaf1aa2380c2b93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:29:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 21:29:30 2021 -0700","stats":{"files_changed":2,"insertions":1,"deletions":0,"files":["runtests.sh","tests/{test_upower.py => localtest_upower.py}"]},"message":"make upower tests local only","epoch":1616646570,"epoch_utc":null},{"commit":"699c97d8a07f7575454746159ac4d19981cd1a5c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:24:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 21:24:47 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add last parser info","epoch":1616646287,"epoch_utc":null},{"commit":"e4ca0de92a689ce93b91d86106a5da590226855a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:24:25 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 21:24:25 2021 -0700","stats":{"files_changed":8,"insertions":100,"deletions":0,"files":["tests/fixtures/generic/upower-i-c-locale.json","tests/fixtures/generic/upower-i-non-utc.json","tests/fixtures/generic/upower-i-utc.json",".../{upower-i-utc.out2 => upower-i-utc.out}","tests/fixtures/ubuntu-18.04/upower-d-clocale.json","tests/fixtures/ubuntu-18.04/upower-d.json","tests/fixtures/ubuntu-18.04/upower-i.json","tests/test_upower.py"]},"message":"add upower tests","epoch":1616646265,"epoch_utc":null},{"commit":"04745a36b84cc79e56bde2a0e92a4ee9ab4a1538","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 20:21:06 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 20:21:06 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":5,"files":["CHANGELOG","jc/utils.py"]},"message":"doc update","epoch":1616642466,"epoch_utc":null},{"commit":"5936940532b8b753e67c9f5cd9287f34cc84ae9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 20:20:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 20:20:53 2021 -0700","stats":{"files_changed":7,"insertions":136,"deletions":186,"files":["docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date-after-midnight.json","tests/fixtures/generic/date-before-midnight.json","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/fixtures/ubuntu-20.04/date2.json"]},"message":"rewrite of date parser using datetime library","epoch":1616642453,"epoch_utc":null},{"commit":"b3eb064b6753d6e894884e1c16054630c2396fe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 17:13:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 17:13:01 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"]},"message":"clarify format definition comments","epoch":1616631181,"epoch_utc":null},{"commit":"e4b41057e302074ac2a81ad8c36b6f95cd6b7db2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 17:02:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 17:02:17 2021 -0700","stats":{"files_changed":3,"insertions":24,"deletions":0,"files":[".../{upower-i.out => upower-i-c-locale.out}","tests/fixtures/generic/upower-i-non-utc.out",".../generic/{upower-i2.out => upower-i-utc.out2}"]},"message":"update upower fixture names","epoch":1616630537,"epoch_utc":null},{"commit":"1d41c46cc762ab0c78b819e56db7df39f1111d5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 17:01:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 17:01:56 2021 -0700","stats":{"files_changed":1,"insertions":34,"deletions":5,"files":["jc/utils.py"]},"message":"normalize datetime string to remove all timezones except UTC","epoch":1616630516,"epoch_utc":null},{"commit":"a5c444587b3f0874fcc2833dc4e759c2dc1c7834","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 15:13:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 15:13:10 2021 -0700","stats":{"files_changed":5,"insertions":28,"deletions":0,"files":["tests/fixtures/generic/date-after-midnight.json","tests/fixtures/generic/date-after-midnight.out","tests/fixtures/generic/date-before-midnight.json","tests/fixtures/generic/date-before-midnight.out","tests/localtest_date.py"]},"message":"add before and after midnight date tests","epoch":1616623990,"epoch_utc":null},{"commit":"a56f471be980be16e73d3a91e2b12aad26c6d38c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 15:05:22 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 15:05:22 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/fixtures/generic/upower-i2.out"]},"message":"update fixture to use UTC for better testing","epoch":1616623522,"epoch_utc":null},{"commit":"6a6b26ed8d97014c2a5c7d91a4cd9b23f49530fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 15:04:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 15:04:39 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/date.py"]},"message":"fix 12 to 24 hour conversion for midnight cases","epoch":1616623479,"epoch_utc":null},{"commit":"f62446c152d89f2d37b22ffe9d9de5b5c9fa7049","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 15:04:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 15:04:09 2021 -0700","stats":{"files_changed":1,"insertions":11,"deletions":10,"files":["jc/utils.py"]},"message":"rename variables. add another european time format","epoch":1616623449,"epoch_utc":null},{"commit":"56011f1f172344cab2a8e869e7a6df6e45c45874","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 14:14:22 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 14:14:22 2021 -0700","stats":{"files_changed":3,"insertions":73,"deletions":6,"files":["EXAMPLES.md","docs/parsers/upower.md","jc/parsers/upower.py"]},"message":"updated upower examples","epoch":1616620462,"epoch_utc":null},{"commit":"6d44091c80318fde6c09cd850e6dc5afde7fe799","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 14:01:06 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 14:01:06 2021 -0700","stats":{"files_changed":1,"insertions":13,"deletions":53,"files":["jc/utils.py"]},"message":"refactor parse_datetime_to_timestamp()","epoch":1616619666,"epoch_utc":null},{"commit":"440c458eb42925dffe2d7b026279468fa2fa1bb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 12:57:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 12:57:19 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"no need for ternary clause","epoch":1616615839,"epoch_utc":null},{"commit":"798250af6116441385339806c8f26bc9720ad302","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 12:49:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 12:49:53 2021 -0700","stats":{"files_changed":2,"insertions":18,"deletions":24,"files":["docs/parsers/upower.md","jc/parsers/upower.py"]},"message":"use jc.utils.parse_datetime_to_timestamp() function for timestamp creation","epoch":1616615393,"epoch_utc":null},{"commit":"c762de29c6491790908451aa20f6aa12fdfa9722","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 12:47:57 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 12:47:57 2021 -0700","stats":{"files_changed":2,"insertions":32,"deletions":2,"files":["docs/utils.md","jc/utils.py"]},"message":"doc updates","epoch":1616615277,"epoch_utc":null},{"commit":"0701e65e97165efd40ab2ae5087897de3588ea32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 12:36:54 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 12:36:54 2021 -0700","stats":{"files_changed":1,"insertions":106,"deletions":0,"files":["jc/utils.py"]},"message":"add parse_datetime_to_timestamp() function","epoch":1616614614,"epoch_utc":null},{"commit":"209d54e8b5be6476d896cee1a5274bd2b46219e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 07:39:11 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 07:39:11 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/parsers/date.md","jc/parsers/date.py"]},"message":"add hour_24 to schema docs","epoch":1616596751,"epoch_utc":null},{"commit":"2b38462de7d2fa61dd5d2a184e853279f1a9c84b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 23 14:59:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 23 14:59:03 2021 -0700","stats":{"files_changed":3,"insertions":33,"deletions":27,"files":["EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py"]},"message":"update examples","epoch":1616536743,"epoch_utc":null},{"commit":"1e8e5533162cb01053ee25e9dbc709a429e58070","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 23 14:47:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 23 14:47:44 2021 -0700","stats":{"files_changed":6,"insertions":31,"deletions":14,"files":["CHANGELOG","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/fixtures/ubuntu-20.04/date2.json","tests/localtest_date.py"]},"message":"add hour_24 field","epoch":1616536064,"epoch_utc":null},{"commit":"ab42e6bb15026d6c46e15197c62bc3e8ef95c80d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 23 14:10:42 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 23 14:10:42 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/date.md","jc/parsers/date.py"]},"message":"formatting","epoch":1616533842,"epoch_utc":null},{"commit":"680288454090f3c48c7f0580cdcb919c0b5a883e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 23 14:04:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 23 14:04:36 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["docs/parsers/date.md","jc/parsers/date.py"]},"message":"ensure period is always uppercase in dict value. update period documentation","epoch":1616533476,"epoch_utc":null},{"commit":"7cb8577b9655f258f2910e7e7bcf3266d4cbece0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 23 13:55:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 23 13:55:23 2021 -0700","stats":{"files_changed":3,"insertions":70,"deletions":48,"files":["docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/ubuntu-20.04/date2.out"]},"message":"correct epoch_utc calculation. Fix for 12 hour vs. 24 hour representation","epoch":1616532923,"epoch_utc":null},{"commit":"55810ccd1f17ef6a4b1cb72fc21f6cf990ef8bb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 22:10:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 22:10:35 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/upower.py"]},"message":"set epoch_dt conversion again if not C locale","epoch":1616476235,"epoch_utc":null},{"commit":"f9921720cd0b9b0d76d66e6eb5bfe43481f5f52b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 22:01:07 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 22:01:07 2021 -0700","stats":{"files_changed":3,"insertions":4,"deletions":94,"files":["runtests.sh","tests/test_date.py","tests/test_last2.py"]},"message":"revert to local testing for naive datetime objects","epoch":1616475667,"epoch_utc":null},{"commit":"cda1ebd271aa8fd1b716054a2149f876d8087230","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 21:53:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 21:53:50 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["tests/test_date.py","tests/test_last2.py"]},"message":"try tzset()","epoch":1616475230,"epoch_utc":null},{"commit":"6901e4a23aad0b58cbbfac86c61917115d115dfe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 21:49:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 21:49:26 2021 -0700","stats":{"files_changed":3,"insertions":89,"deletions":3,"files":["runtests.sh","tests/test_date.py","tests/test_last2.py"]},"message":"try setting timezone env variable before tests to ensure it is the same on all test systems","epoch":1616474966,"epoch_utc":null},{"commit":"6bc21d3c735edc7897e49afd2a5ea9e3aa56d7fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 21:05:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 21:05:39 2021 -0700","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["runtests.sh","tests/{test_date.py => localtest_date.py}","tests/localtest_last.py"]},"message":"fix date parser tests - local tests only since timezones may not match on github actions VMs","epoch":1616472339,"epoch_utc":null},{"commit":"1ef231e26a2898d2a01f341fb92014df92703f72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:57:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 20:57:36 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"add date parser updates","epoch":1616471856,"epoch_utc":null},{"commit":"3cd43f0f985a3b8a4e74bf5632bd8dac92d751c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:57:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 20:57:16 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/upower.md","jc/parsers/upower.py"]},"message":"formatting","epoch":1616471836,"epoch_utc":null},{"commit":"156501996688e62dd61a8456206218582a6cbe1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:56:57 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 20:56:57 2021 -0700","stats":{"files_changed":5,"insertions":85,"deletions":63,"files":["EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json"]},"message":"fix weekday numbering to be ISO 8601 compliant. Add naive calculated epoch timestamp field","epoch":1616471817,"epoch_utc":null},{"commit":"0a4de2d3a1c235d1ac2d6e59346e77761fe51885","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:22:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 20:22:35 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":2,"files":["docs/parsers/last.md","docs/parsers/upower.md"]},"message":"add naive datetime calculation info to docs","epoch":1616469755,"epoch_utc":null},{"commit":"a058f6c174e31f5e6040883bb544b83abd88c749","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:21:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 20:21:46 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/last.py"]},"message":"added naive epoch calculation info to docs","epoch":1616469706,"epoch_utc":null},{"commit":"d8e5d03b01a87704424f5259cf6bd977274fd6ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:21:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 20:21:12 2021 -0700","stats":{"files_changed":1,"insertions":20,"deletions":33,"files":["jc/parsers/upower.py"]},"message":"naive updated_epoch timestamp calculation added","epoch":1616469672,"epoch_utc":null},{"commit":"9dc62eff2eaaafec89c5b8797d8ca8e4c77a07d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 21 15:43:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 21 15:43:37 2021 -0700","stats":{"files_changed":1,"insertions":34,"deletions":21,"files":["jc/parsers/upower.py"]},"message":"remove epoch conversions","epoch":1616366617,"epoch_utc":null},{"commit":"d4fea17c57a97d6914624b06208b9439bf2eb05f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 21 14:03:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 21 14:03:36 2021 -0700","stats":{"files_changed":3,"insertions":13,"deletions":6,"files":["docgen.sh","docs/parsers/upower.md","jc/parsers/upower.py"]},"message":"use UTC when calculating epoch timestamp. reset time locale to default after changing","epoch":1616360616,"epoch_utc":null},{"commit":"3dd7a5b77ea708047bc12be9f2caddd9078723f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 19 11:00:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 19 11:00:50 2021 -0700","stats":{"files_changed":2,"insertions":230,"deletions":0,"files":["docgen.sh","docs/parsers/upower.md"]},"message":"add upower docs","epoch":1616176850,"epoch_utc":null},{"commit":"d77c90a3ba2036b216f4a612876ace988eafd217","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 19 10:43:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 19 10:43:20 2021 -0700","stats":{"files_changed":1,"insertions":114,"deletions":6,"files":["jc/parsers/upower.py"]},"message":"fix quoted values in detail level. Add examples","epoch":1616175800,"epoch_utc":null},{"commit":"01f0c20df09fd4aa12bd108928b97376b51ef31a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 18 16:59:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 18 16:59:46 2021 -0700","stats":{"files_changed":1,"insertions":27,"deletions":0,"files":["tests/fixtures/ubuntu-18.04/upower-d-clocale.out"]},"message":"add sample using C locale timestamp","epoch":1616111986,"epoch_utc":null},{"commit":"aafbe576b3b754de91591d9ec2dae9e9f827dee4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 18 16:59:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 18 16:59:19 2021 -0700","stats":{"files_changed":1,"insertions":137,"deletions":36,"files":["jc/parsers/upower.py"]},"message":"working parser and processor","epoch":1616111959,"epoch_utc":null},{"commit":"bd68ad40345fb1f69be0e0f87dc67134f826cd06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 14:31:51 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 17 14:31:51 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/upower.py"]},"message":"don't modify detail_type value since it is no longer a key","epoch":1616016711,"epoch_utc":null},{"commit":"bfee017c138bb30ec6af836685013b7124028974","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 14:21:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 17 14:21:19 2021 -0700","stats":{"files_changed":1,"insertions":61,"deletions":20,"files":["jc/parsers/upower.py"]},"message":"made the schema more explicit by hardcoding more items. still working on the schema","epoch":1616016079,"epoch_utc":null},{"commit":"61f532cfd0b7fbf14a58a0fd638bcbfb03fbde72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 13:30:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 17 13:30:47 2021 -0700","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["jc/parsers/upower.py"]},"message":"working history list","epoch":1616013047,"epoch_utc":null},{"commit":"58dbbb75b607d0b29be185c3b8c3f0d8af21ecad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 13:10:52 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 17 13:10:52 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":21,"files":["jc/parsers/upower.py"]},"message":"simplified logic","epoch":1616011852,"epoch_utc":null},{"commit":"8d88b91fcf5060d7d54f687efec3e3a606bab767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 12:49:48 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 17 12:49:48 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/upower.py"]},"message":"move if statements and generalize the history detail detection","epoch":1616010588,"epoch_utc":null},{"commit":"ad39fc60299089f56f37baac71820e50cbe87ed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 11:26:06 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 17 11:26:06 2021 -0700","stats":{"files_changed":6,"insertions":268,"deletions":0,"files":["jc/cli.py","jc/parsers/upower.py","tests/fixtures/generic/upower-i.out","tests/fixtures/generic/upower-i2.out","tests/fixtures/ubuntu-18.04/upower-d.out","tests/fixtures/ubuntu-18.04/upower-i.out"]},"message":"working upower parser. history lines are ignored","epoch":1616005566,"epoch_utc":null},{"commit":"89f1fd96e6b7aa0acf6272e4f3469005d4f7c6bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 16 12:12:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 16 12:12:01 2021 -0700","stats":{"files_changed":6,"insertions":87,"deletions":0,"files":["tests/fixtures/generic/acpi-V.json","tests/fixtures/generic/acpi-V2.json","tests/fixtures/generic/acpi-V3.json","tests/fixtures/generic/acpi-V4.json","tests/fixtures/ubuntu-18.04/acpi-V.json","tests/test_acpi.py"]},"message":"add acpi tests","epoch":1615921921,"epoch_utc":null},{"commit":"bd425f2493b68949c1fa02cd1d3289ec882d9b0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 16 11:45:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 16 11:45:56 2021 -0700","stats":{"files_changed":6,"insertions":321,"deletions":2,"files":["CHANGELOG","EXAMPLES.md","docgen.sh","docs/parsers/acpi.md","jc/cli.py","setup.py"]},"message":"version bump to v1.15.0. Add acpi docs","epoch":1615920356,"epoch_utc":null},{"commit":"46962ff02a0630766a927babc92e11ec91b1f789","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 12 16:45:15 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 12 16:45:15 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":11,"files":["jc/parsers/acpi.py"]},"message":"remove redundant lines","epoch":1615596315,"epoch_utc":null},{"commit":"e4cb88b05166815e8ad03b646bd3f2b1da7f0d4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 12 12:47:59 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 12 12:47:59 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/acpi.py"]},"message":"remove unneeded line-state assignment","epoch":1615582079,"epoch_utc":null},{"commit":"32840703dc1d88412712b08db1c9bdaebbc34450","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 12 08:55:04 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 12 08:55:04 2021 -0800","stats":{"files_changed":1,"insertions":8,"deletions":39,"files":["jc/parsers/acpi.py"]},"message":"remove redundant code","epoch":1615568104,"epoch_utc":null},{"commit":"1f7aafd0415a79e0547cc6f1c008c1918f8fb460","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 12 08:45:32 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 12 08:45:32 2021 -0800","stats":{"files_changed":3,"insertions":19,"deletions":9,"files":["jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out","tests/fixtures/generic/acpi-V4.out"]},"message":"fix for full charge batter case. Clean up battery object logic","epoch":1615567532,"epoch_utc":null},{"commit":"7378d5dce43f75440cb57903e8ae0c1c615b0782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 11 21:06:24 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 11 21:06:24 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/acpi.py"]},"message":"remove comment","epoch":1615525584,"epoch_utc":null},{"commit":"84f76866cdf76f67b34de999fd987de8a02f0306","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 11 21:05:29 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 11 21:05:29 2021 -0800","stats":{"files_changed":1,"insertions":197,"deletions":3,"files":["jc/parsers/acpi.py"]},"message":"working process function","epoch":1615525529,"epoch_utc":null},{"commit":"322da9ea6a1ceea1152d720797adb8f3a7dc1199","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 11 20:43:31 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 11 20:43:31 2021 -0800","stats":{"files_changed":2,"insertions":59,"deletions":12,"files":["jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out"]},"message":"working parser","epoch":1615524211,"epoch_utc":null},{"commit":"58645301ec111bfeb2a618f5f169cc734042dc5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 11 19:55:47 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 11 19:55:47 2021 -0800","stats":{"files_changed":6,"insertions":236,"deletions":1,"files":["jc/cli.py","jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out","tests/fixtures/generic/acpi-V2.out","tests/fixtures/generic/acpi-V3.out","tests/fixtures/ubuntu-18.04/acpi-V.out"]},"message":"add acpi command parser","epoch":1615521347,"epoch_utc":null},{"commit":"1e18dd30a824b0463f0cad86e0da7094c47d34f9","merge":"20f9b7f cc6a19a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 5 11:50:37 2021 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Mar 5 11:50:37 2021 -0800","message":"Merge pull request #102 from kellyjonbrazil/dev\n\nDev v1.14.4","epoch":1614973837,"epoch_utc":null},{"commit":"cc6a19adccea3e10243a166b87d852b6f95414b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 5 09:41:17 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 5 09:41:17 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/yaml.py"]},"message":"fix typo in comments","epoch":1614966077,"epoch_utc":null},{"commit":"2a5588b177a24d5b78a4b5a515aba515804b7baa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 5 09:38:22 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 5 09:38:22 2021 -0800","stats":{"files_changed":4,"insertions":13,"deletions":3,"files":["CHANGELOG","jc/cli.py","jc/parsers/yaml.py","setup.py"]},"message":"packaging fix for yaml parser and pyoxidizer","epoch":1614965902,"epoch_utc":null},{"commit":"20f9b7f88b97ed68aba46e102b8c7b72443b9c85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 25 11:09:56 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 25 11:09:56 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"fix typo","epoch":1614280196,"epoch_utc":null},{"commit":"d7e32313cd9776b4a6af38cc2819d6e4ef8c0d55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 25 11:09:14 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 25 11:09:14 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"fix typo","epoch":1614280154,"epoch_utc":null},{"commit":"fb5654d3c4549e84940e2518f2d214debdd42d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 11 11:27:54 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 11 11:27:54 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1613071674,"epoch_utc":null},{"commit":"258f1433b36a7ee117ac43953edb4fe964603e7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 11 11:27:01 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 11 11:27:01 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]},"message":"add locale info to readme","epoch":1613071621,"epoch_utc":null},{"commit":"fb723ae8bd7bb51f9a4bab380ec1bc54cda0445b","merge":"87b506d 283b89e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 10 11:01:57 2021 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Feb 10 11:01:57 2021 -0800","message":"Merge pull request #101 from kellyjonbrazil/dev\n\nDev v1.14.3","epoch":1612983717,"epoch_utc":null},{"commit":"283b89e37c38a3082203e43e38569c8b0bb11e12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 10 10:55:53 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 10 10:55:53 2021 -0800","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["CHANGELOG","jc/parsers/dig.py"]},"message":"simplify answer data logic","epoch":1612983353,"epoch_utc":null},{"commit":"f450f9eb8b7d382af316e88301e72af01a018be9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 10 10:47:56 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 10 10:47:56 2021 -0800","stats":{"files_changed":5,"insertions":74,"deletions":0,"files":["tests/fixtures/centos-7.7/hciconfig-a.json","tests/fixtures/centos-7.7/hciconfig.json","tests/fixtures/ubuntu-20.04/hciconfig-a.json","tests/fixtures/ubuntu-20.04/hciconfig.json","tests/test_hciconfig.py"]},"message":"add hciconfig tests","epoch":1612982876,"epoch_utc":null},{"commit":"b3f8cf99a4874335c6b43e105e0c1562c08256dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 10 08:03:36 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 10 08:03:36 2021 -0800","stats":{"files_changed":1,"insertions":15,"deletions":15,"files":["jc/parsers/hciconfig.py"]},"message":"work for both tabs and spaces","epoch":1612973016,"epoch_utc":null},{"commit":"4301ea8caea7c14f59bcddf09668d0198e1115a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 9 16:12:36 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 9 16:12:36 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/hciconfig.py"]},"message":"remove debug line","epoch":1612915956,"epoch_utc":null},{"commit":"c672d1c174a42ce44544dfaec0ebcf3c30fd7acf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 9 16:03:00 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 9 16:03:00 2021 -0800","stats":{"files_changed":7,"insertions":903,"deletions":22,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","docs/parsers/hciconfig.md","jc/parsers/hciconfig.py","man/jc.1"]},"message":"initial working hciconfig parser","epoch":1612915380,"epoch_utc":null},{"commit":"229e953a38471cdd41af0810577d324329840a4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 9 13:26:24 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 9 13:26:24 2021 -0800","stats":{"files_changed":7,"insertions":205,"deletions":2,"files":["jc/cli.py","jc/parsers/hciconfig.py","setup.py","tests/fixtures/centos-7.7/hciconfig-a.out","tests/fixtures/centos-7.7/hciconfig.out","tests/fixtures/ubuntu-20.04/hciconfig-a.out","tests/fixtures/ubuntu-20.04/hciconfig.out"]},"message":"initial add of hciconfig parser","epoch":1612905984,"epoch_utc":null},{"commit":"87b506dc9b4831d11b4fd04fd6849532db074f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 5 06:55:06 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 5 06:55:06 2021 -0800","stats":{"files_changed":7,"insertions":47,"deletions":4,"files":["CHANGELOG","jc/cli.py","jc/parsers/dig.py","setup.py","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/generic/dig-answer-spaces.out","tests/test_dig.py"]},"message":"fix for spaces in dig answer data","epoch":1612536906,"epoch_utc":null},{"commit":"15c9002d9eff0f52d873fb3ab35dfafd03a8e919","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 8 11:56:56 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 8 11:56:56 2021 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"simplify logic by taking out 'not' in JC_COLORS parsing","epoch":1610135816,"epoch_utc":null},{"commit":"042aaa61b96fc8472a8a460c49bde4cbbc359094","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 8 08:23:29 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 8 08:23:29 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"minor updates","epoch":1610123009,"epoch_utc":null},{"commit":"ef856c6ba5774cd8ec23acd71496846e794e3872","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 7 12:09:41 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 7 12:09:41 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"clarify -q option","epoch":1610050181,"epoch_utc":null},{"commit":"9cf5be73e3f975132d1ffbef412638b941a5664f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 16:19:47 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 6 16:19:47 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]},"message":"typo fix","epoch":1609978787,"epoch_utc":null},{"commit":"63fc149e2a097cbde60c2ce1aeb102d9becabd9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 16:17:25 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 6 16:17:25 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]},"message":"typo fix","epoch":1609978645,"epoch_utc":null},{"commit":"3c25839350800c7e7d2c48fc032bb21efa0ac213","merge":"03c0295 58246e3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 14:37:24 2021 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Jan 6 14:37:24 2021 -0800","message":"Merge pull request #98 from kellyjonbrazil/dev\n\nDev v1.14.1","epoch":1609972644,"epoch_utc":null},{"commit":"58246e33b71bae0ca4a42ad5bdf31134948b1014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 14:33:38 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 6 14:33:38 2021 -0800","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","README.md"]},"message":"update compatibility info and changelog date","epoch":1609972418,"epoch_utc":null},{"commit":"8b1407c7068e2105a83992bbb026138ea67bc07c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 14:22:26 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 6 14:22:26 2021 -0800","stats":{"files_changed":3,"insertions":59,"deletions":10,"files":["runtests.sh","tests/localtest_last.py","tests/test_last.py"]},"message":"pull env-specific tests from CI/CD and run locally only","epoch":1609971746,"epoch_utc":null},{"commit":"2fde4a4e2299b98a9958e3a55849c6791e4b17dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 12:07:58 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 6 12:07:58 2021 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["EXAMPLES.md","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]},"message":"doc updates","epoch":1609963678,"epoch_utc":null},{"commit":"60b9e9798286121399d0f8b75d63ab0f3312c9bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 12:02:47 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 6 12:02:47 2021 -0800","stats":{"files_changed":12,"insertions":80,"deletions":38,"files":["docs/parsers/last.md","jc/parsers/last.py","tests/fixtures/centos-7.7/last-crash.json","tests/fixtures/centos-7.7/last-w.json","tests/fixtures/centos-7.7/last-wF.json","tests/fixtures/centos-7.7/last-wF.out","tests/fixtures/centos-7.7/last.json","tests/fixtures/fedora32/last.json","tests/fixtures/osx-10.14.6/last.json","tests/fixtures/ubuntu-18.04/last-w.json","tests/fixtures/ubuntu-18.04/last.json","tests/fixtures/ubuntu-20.04/last-F.json"]},"message":"last parser enhancements: augment hostname with CONSOLE for GUI login, add convenience fields when -F is used: login_epoch, logout_epoch, duration_seconds, calculate duration to hours:minutes","epoch":1609963367,"epoch_utc":null},{"commit":"0adac79c0f2a22b31dfef1432a029af06132467b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 11:09:59 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 6 11:09:59 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"Add last parser enhancements","epoch":1609960199,"epoch_utc":null},{"commit":"9f485b5981a2ce49ac699b9dad39993c5605ae18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 11:09:37 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 6 11:09:37 2021 -0800","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["jc/parsers/iw_scan.py","tests/fixtures/centos-7.7/iw-scan0.json","tests/fixtures/centos-7.7/iw-scan1.json"]},"message":"change mac_address fieldname to bssid. Add credit to Phillip","epoch":1609960177,"epoch_utc":null},{"commit":"db17d21b8f9b2f899760e648f1483d33d0bcf47a","merge":"5885b96 996d394","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 10:42:30 2021 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Jan 6 10:42:30 2021 -0800","message":"Merge pull request #97 from pschmitt/iw_scan_fix_space_detection\n\niw_scan: Improve detection of lines starting with spaces","epoch":1609958550,"epoch_utc":null},{"commit":"996d394e89c732f327323ca340fce405bd5fb2e4","author":"Philipp Schmitt","author_email":"philipp@schmitt.co","date":"Wed Jan 6 10:32:17 2021 +0100","commit_by":"Philipp Schmitt","commit_by_email":"philipp@schmitt.co","commit_by_date":"Wed Jan 6 10:32:17 2021 +0100","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/iw_scan.py"]},"message":"iw_scan: Improve detection of lines starting with spaces","epoch":1609957937,"epoch_utc":null},{"commit":"5885b960f9b33a95ecec9f4a33233c2f8682fbc4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 22:12:13 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 22:12:13 2021 -0800","stats":{"files_changed":3,"insertions":7,"deletions":2,"files":["CHANGELOG","README.md","man/jc.1"]},"message":"doc updates","epoch":1609913533,"epoch_utc":null},{"commit":"79987b35f332e287567e103f25cf91cb50e040c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 22:07:22 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 22:07:22 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"]},"message":"formatting","epoch":1609913242,"epoch_utc":null},{"commit":"661b3ef311ad26678030c70c11f2f955667311a4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 22:04:44 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 22:04:44 2021 -0800","stats":{"files_changed":4,"insertions":94,"deletions":2,"files":["EXAMPLES.md","README.md","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]},"message":"doc updates","epoch":1609913084,"epoch_utc":null},{"commit":"fb422726a8366c7133f0712d3b05a26620eea785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 21:55:06 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 21:55:06 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["tests/fixtures/ubuntu-20.04/last-F.json","tests/fixtures/ubuntu-20.04/last-F.out"]},"message":"update test to add 'down' condition","epoch":1609912506,"epoch_utc":null},{"commit":"4fb6f3ea59c52515926a51a006e65a1c18e57720","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 21:51:30 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 21:51:30 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/last.py"]},"message":"add support for down in addition to crash","epoch":1609912290,"epoch_utc":null},{"commit":"f78fe771e1c2fb4691858fa7f27b1febe5f8c6c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 21:38:51 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 21:38:51 2021 -0800","stats":{"files_changed":3,"insertions":48,"deletions":0,"files":["tests/fixtures/centos-7.7/iw-scan0.json","tests/fixtures/centos-7.7/iw-scan1.json","tests/test_iw_scan.py"]},"message":"add iw-scan tests","epoch":1609911531,"epoch_utc":null},{"commit":"567b8872538ac9f6b384b98741acd9794229d513","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 21:26:43 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 21:26:43 2021 -0800","stats":{"files_changed":3,"insertions":252,"deletions":12,"files":["docgen.sh","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]},"message":"doc updates","epoch":1609910803,"epoch_utc":null},{"commit":"e516e6b9466b29d40ec10070dd61551180eeef90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 21:17:40 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 21:17:40 2021 -0800","stats":{"files_changed":1,"insertions":29,"deletions":1,"files":["jc/parsers/iw_scan.py"]},"message":"fix country/environment fields and process int/float conversions","epoch":1609910260,"epoch_utc":null},{"commit":"62748676aae3d5955191ed267215df33a5bd3a4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 20:44:22 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 20:44:22 2021 -0800","stats":{"files_changed":2,"insertions":225,"deletions":0,"files":["jc/cli.py","jc/parsers/iw_scan.py"]},"message":"initial iw-scan parser","epoch":1609908262,"epoch_utc":null},{"commit":"7351c72e45242b9eb08c51dea7b6fccf12366dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 15:16:40 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 15:16:40 2021 -0800","stats":{"files_changed":6,"insertions":402,"deletions":1,"files":["jc/parsers/last.py","tests/fixtures/centos-7.7/last-crash.json","tests/fixtures/centos-7.7/last-crash.out","tests/fixtures/centos-7.7/last-wF.json","tests/fixtures/centos-7.7/last-wF.out","tests/test_last.py"]},"message":"add fixes and tests for entries that contain 'crash'","epoch":1609888600,"epoch_utc":null},{"commit":"2b7405c5e21db2488fc48b58f6c65cff947ca95d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 13:58:38 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 13:58:38 2021 -0800","stats":{"files_changed":5,"insertions":23,"deletions":16,"files":["CHANGELOG","README.md","docs/parsers/last.md","jc/parsers/last.py","man/jc.1"]},"message":"doc updates","epoch":1609883918,"epoch_utc":null},{"commit":"e2c77cb935a5bd95dbe930d424e5a02e88e1fa76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 13:00:38 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 13:00:38 2021 -0800","stats":{"files_changed":3,"insertions":15,"deletions":1,"files":["jc/parsers/last.py","tests/fixtures/ubuntu-20.04/last-F.json","tests/test_last.py"]},"message":"add test for last -F output","epoch":1609880438,"epoch_utc":null},{"commit":"7ac621e4c916373a03f379425033cb2d81a03578","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 12:29:29 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 12:29:29 2021 -0800","stats":{"files_changed":3,"insertions":36,"deletions":6,"files":["docs/parsers/last.md","jc/parsers/last.py","tests/fixtures/ubuntu-20.04/last-F.out"]},"message":"add -F support","epoch":1609878569,"epoch_utc":null},{"commit":"d8b5d6c66ced19dc16f2b4975d2293a903732ffe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 09:45:37 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 09:45:37 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/cli.py","setup.py"]},"message":"version bump to 1.14.1","epoch":1609868737,"epoch_utc":null},{"commit":"22b461eb4b1ca86ea9e8c1fde8a2c312d1526b5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 09:42:05 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 09:42:05 2021 -0800","stats":{"files_changed":7,"insertions":47,"deletions":12,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/test_date.py"]},"message":"Add period field for en_US.UTF-8 locale","epoch":1609868525,"epoch_utc":null},{"commit":"b37ee8555a2a108625a834a7990bc3320e79b08d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 4 18:02:07 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 4 18:02:07 2021 -0800","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update","epoch":1609812127,"epoch_utc":null},{"commit":"1d0ad2f045733c5c690738d49951fdb9bcd3d66d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 4 18:01:16 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 4 18:01:16 2021 -0800","stats":{"files_changed":123,"insertions":312,"deletions":312,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat_freebsd_osx.py","jc/parsers/netstat_linux.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"doc fixes","epoch":1609812076,"epoch_utc":null},{"commit":"ceccfb2c815f57f1b6fd81f891d8b495de23f9f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 4 17:05:26 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 4 17:05:26 2021 -0800","stats":{"files_changed":3,"insertions":2036,"deletions":0,"files":["tests/fixtures/centos-7.7/iw-scan0.out","tests/fixtures/centos-7.7/iw-scan1.out","tests/fixtures/ubuntu-20.04/date.out"]},"message":"add test output for iw-scan and date on ubuntu 20.04","epoch":1609808726,"epoch_utc":null},{"commit":"03c02953cd7e3327b391f799c37a2990eb2cb24c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 1 12:01:56 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 1 12:01:56 2021 -0800","stats":{"files_changed":2,"insertions":96,"deletions":0,"files":["docgen.sh","docs/parsers/wc.md"]},"message":"add wc doc","epoch":1609531316,"epoch_utc":null},{"commit":"f254a0eaa16fcda316f7a75424ee359058204b03","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 16:45:10 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 31 16:45:10 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump","epoch":1609461910,"epoch_utc":null},{"commit":"9e3b88727cd439e15f235dddb9dd5796e010797a","merge":"439871e b122174","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 16:40:36 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Dec 31 16:40:36 2020 -0800","message":"Merge pull request #91 from kellyjonbrazil/dev\n\nDev v1.14.0","epoch":1609461636,"epoch_utc":null},{"commit":"b12217466e906829d19be4cfd80dfe7cf4008e57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 16:37:47 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 31 16:37:47 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"spelling","epoch":1609461467,"epoch_utc":null},{"commit":"8b9c932f9b05295e63b3e7d0073f243458fd4dd9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 16:37:14 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 31 16:37:14 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"update date","epoch":1609461434,"epoch_utc":null},{"commit":"5986ce03db6fcd1aa0f7b064eaa96c2120c06d2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 16:36:27 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 31 16:36:27 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add printenv info","epoch":1609461387,"epoch_utc":null},{"commit":"a7b0e936e400d2f9e55629e2d722cc002e035e9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 14:21:24 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 31 14:21:24 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"add vdir and printenv info","epoch":1609453284,"epoch_utc":null},{"commit":"cb0221142455a6bcb904fbe9ade657be45815b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 14:19:45 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 31 14:19:45 2020 -0800","stats":{"files_changed":4,"insertions":61,"deletions":2,"files":["jc/parsers/wc.py","tests/fixtures/osx-10.14.6/wc-stdin.json","tests/fixtures/osx-10.14.6/wc-stdin.out","tests/test_wc.py"]},"message":"add wc tests","epoch":1609453185,"epoch_utc":null},{"commit":"bd443bf39227515ae5f8df65d07b30268dcc90a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 14:11:25 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 31 14:11:25 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/env.py"]},"message":"add printenv to env docs","epoch":1609452685,"epoch_utc":null},{"commit":"1f547edd361e66b19ccbcb59f6ba0ae78f6080ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 14:10:56 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 31 14:10:56 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/env.md"]},"message":"add printenv to env docs","epoch":1609452656,"epoch_utc":null},{"commit":"e4bac3a493705b09e301ddc90dd1b0cee7467c3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 14:10:37 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 31 14:10:37 2020 -0800","stats":{"files_changed":9,"insertions":378,"deletions":0,"files":["CHANGELOG","EXAMPLES.md","README.md","jc/cli.py","jc/parsers/wc.py","tests/fixtures/centos-7.7/wc.json","tests/fixtures/centos-7.7/wc.out","tests/fixtures/osx-10.14.6/wc.json","tests/fixtures/osx-10.14.6/wc.out"]},"message":"add wc parser","epoch":1609452637,"epoch_utc":null},{"commit":"5e6bfa681aff03fbd683f81a9f4daa56b49d1344","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 13:18:53 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 31 13:18:53 2020 -0800","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["README.md","docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"add vdir info","epoch":1609449533,"epoch_utc":null},{"commit":"276160125e01553c75eaad68530177bcf4f9004d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 14:04:49 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 30 14:04:49 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"]},"message":"add new commands to README","epoch":1609365889,"epoch_utc":null},{"commit":"d4ae5543f2d5f28a0db5b8e2e19993c21c5d960c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 13:11:13 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 30 13:11:13 2020 -0800","stats":{"files_changed":3,"insertions":39,"deletions":0,"files":["tests/fixtures/centos-7.7/hash.json","tests/fixtures/centos-7.7/hash.out","tests/test_hash.py"]},"message":"add hash tests","epoch":1609362673,"epoch_utc":null},{"commit":"55f360e267fdfcfef0c124ed6b88535cc181a8b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 12:58:52 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 30 12:58:52 2020 -0800","stats":{"files_changed":6,"insertions":260,"deletions":0,"files":["CHANGELOG","EXAMPLES.md","docgen.sh","docs/parsers/hash.md","jc/cli.py","jc/parsers/hash.py"]},"message":"add hash command parser","epoch":1609361932,"epoch_utc":null},{"commit":"fdedab2a0cf5af15df5803d87302397dd6d71741","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 11:33:29 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 30 11:33:29 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/cksum.py","jc/parsers/hashsum.py"]},"message":"description updates","epoch":1609356809,"epoch_utc":null},{"commit":"a9be42e3031ab0d697cff67a9e384caa2265a3ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 11:28:42 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 30 11:28:42 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"specify parser warnings for quiet option","epoch":1609356522,"epoch_utc":null},{"commit":"6da9510e46e84ec1cb93384825184d2996cf0e08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 11:22:17 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 30 11:22:17 2020 -0800","stats":{"files_changed":9,"insertions":482,"deletions":0,"files":["tests/fixtures/centos-7.7/cksum.json","tests/fixtures/centos-7.7/cksum.out","tests/fixtures/centos-7.7/sum.json","tests/fixtures/centos-7.7/sum.out","tests/fixtures/osx-10.14.6/cksum.json","tests/fixtures/osx-10.14.6/cksum.out","tests/fixtures/osx-10.14.6/sum.json","tests/fixtures/osx-10.14.6/sum.out","tests/test_cksum.py"]},"message":"add cksum tests","epoch":1609356137,"epoch_utc":null},{"commit":"0431798178740b03cdefececc6df958e5adf62fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 11:02:02 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 30 11:02:02 2020 -0800","stats":{"files_changed":7,"insertions":229,"deletions":3,"files":["CHANGELOG","docgen.sh","docs/parsers/cksum.md","docs/parsers/hashsum.md","jc/cli.py","jc/parsers/cksum.py","jc/parsers/hashsum.py"]},"message":"add cksum parser","epoch":1609354922,"epoch_utc":null},{"commit":"62432f3c484e74acb2b2dfd15d448b3f1b5d53c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 09:59:54 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 30 09:59:54 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/hashsum.py"]},"message":"update hashsum description","epoch":1609351194,"epoch_utc":null},{"commit":"9fbbc30906b597e6afaf2030015a7a694d85f79e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 13:09:03 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 29 13:09:03 2020 -0800","stats":{"files_changed":2,"insertions":20,"deletions":0,"files":["docs/parsers/hashsum.md","jc/parsers/hashsum.py"]},"message":"add supported commands to docs","epoch":1609276143,"epoch_utc":null},{"commit":"d1567d1f622902053f3df58645b4e39532e0c30a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 13:05:04 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 29 13:05:04 2020 -0800","stats":{"files_changed":3,"insertions":104,"deletions":0,"files":["CHANGELOG","docgen.sh","docs/parsers/hashsum.md"]},"message":"add hashsum documentation","epoch":1609275904,"epoch_utc":null},{"commit":"6ca1f5970b3a518615a54ee7fcbc1bddab2db331","merge":"1c880b9 3b7d54c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 12:59:02 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 29 12:59:02 2020 -0800","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev","epoch":1609275542,"epoch_utc":null},{"commit":"1c880b9e24ca53cd592cec1dbc52301308290fb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 12:58:04 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 29 12:58:04 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_hashsum.py"]},"message":"force git tests","epoch":1609275484,"epoch_utc":null},{"commit":"3b7d54c720dfc93637328cf06eb10a85447c8793","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 12:55:30 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Dec 29 12:55:30 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"add python 3.9","epoch":1609275330,"epoch_utc":null},{"commit":"44a740605705bd0ecfde2a6bcc7a826e1010dcf0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 12:51:43 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 29 12:51:43 2020 -0800","stats":{"files_changed":6,"insertions":87,"deletions":0,"files":["tests/fixtures/centos-7.7/md5sum.json","tests/fixtures/centos-7.7/sha256sum.json","tests/fixtures/centos-7.7/sha384sum.json","tests/fixtures/osx-10.14.6/md5.json","tests/fixtures/osx-10.14.6/shasum.json","tests/test_hashsum.py"]},"message":"add hashsum tests","epoch":1609275103,"epoch_utc":null},{"commit":"8157dcfdb1868548b7c8ca692e6be25f80bb2c2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 12:25:20 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 29 12:25:20 2020 -0800","stats":{"files_changed":1,"insertions":36,"deletions":11,"files":["jc/parsers/hashsum.py"]},"message":"fix for files with spaces in the name","epoch":1609273520,"epoch_utc":null},{"commit":"28762aea15cabc9cd8293d725e7f1f0550f8e15d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 11:36:20 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 29 11:36:20 2020 -0800","stats":{"files_changed":7,"insertions":524,"deletions":0,"files":["jc/cli.py","jc/parsers/hashsum.py","tests/fixtures/centos-7.7/md5sum.out","tests/fixtures/centos-7.7/sha256sum.out","tests/fixtures/centos-7.7/sha384sum.out","tests/fixtures/osx-10.14.6/md5.out","tests/fixtures/osx-10.14.6/shasum.out"]},"message":"add hashsum parser","epoch":1609270580,"epoch_utc":null},{"commit":"439871ea9f6b055a407e1faaf47e4f56d1829501","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 19 07:07:30 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 19 07:07:30 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add ubuntu","epoch":1605798450,"epoch_utc":null},{"commit":"c9180b005c0547c8cbfe4809e66894f1123b0809","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Aug 30 11:58:42 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Aug 30 11:58:42 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1598813922,"epoch_utc":null},{"commit":"b14e0725f86853f0113116b1c06f54aaa563f365","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Aug 30 11:57:55 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Aug 30 11:57:55 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add ansible plugin blog post link","epoch":1598813875,"epoch_utc":null},{"commit":"70fe3dcb4d5b97aba1d6c6dcd5088fecb27af181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 26 15:21:45 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 26 15:21:45 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1598480505,"epoch_utc":null},{"commit":"8c554604a42a3ea7ca9131b65c64fd3ceb95f906","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 26 14:41:01 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 26 14:41:01 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"formatting","epoch":1598478061,"epoch_utc":null},{"commit":"a0a35454bd2831c116cb598c686150b883412f94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 26 14:39:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 26 14:39:40 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add link to the web demo","epoch":1598477980,"epoch_utc":null},{"commit":"e8467e2af5b0c3f14832a9e6d4a96f219c27f3f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 20 10:57:13 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 20 10:57:13 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"remove extra space","epoch":1597946233,"epoch_utc":null},{"commit":"7515deb5669ef04623e9cbf58653b30c99a96430","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 20 10:39:34 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 20 10:39:34 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add ansible install command","epoch":1597945174,"epoch_utc":null},{"commit":"ed9e52af241b609ee7f5d1b835c9f6c5306cd3c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 20 10:37:15 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 20 10:37:15 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"spelling","epoch":1597945035,"epoch_utc":null},{"commit":"592a3804104628c790997747a778b3b39d076dfe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 20 10:35:49 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 20 10:35:49 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]},"message":"add Ansible note","epoch":1597944949,"epoch_utc":null},{"commit":"1a458d2d5b4c16c0ad90671727ae9b19939e7f23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 11 07:00:07 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Aug 11 07:00:07 2020 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py"]},"message":"update link","epoch":1597154407,"epoch_utc":null},{"commit":"0e4cf53b92ff951a6390a4dacf8833c272473583","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 11 06:36:30 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Aug 11 06:36:30 2020 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/readme.md","jc/__init__.py"]},"message":"add parser docs link","epoch":1597152990,"epoch_utc":null},{"commit":"e2f06ccb33177173d984bc0cdda1aae1a3f4c681","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 6 13:00:33 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 6 13:00:33 2020 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"formatting","epoch":1596744033,"epoch_utc":null},{"commit":"8abff004cd8e09529e5d94be4883308152e11565","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 6 12:59:30 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 6 12:59:30 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/yaml.md"]},"message":"indentation fix","epoch":1596743970,"epoch_utc":null},{"commit":"c4a0e2e3feb2e51eaaaa202064f352229017bcc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 6 12:58:53 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 6 12:58:53 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/yaml.py"]},"message":"fix indentation","epoch":1596743933,"epoch_utc":null},{"commit":"4f10f79c73f8b3d6edc2c83e6a12d0ddc1a78555","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 6 12:55:24 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 6 12:55:24 2020 -0700","stats":{"files_changed":2,"insertions":4,"deletions":8,"files":["docs/parsers/uname.md","jc/parsers/uname.py"]},"message":"standardize doc","epoch":1596743724,"epoch_utc":null},{"commit":"69e7a560fd82337570c4bb4aa4780f513c18bd94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 6 07:48:08 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 6 07:48:08 2020 -0700","stats":{"files_changed":4,"insertions":8,"deletions":0,"files":["docs/parsers/env.md","docs/parsers/history.md","jc/parsers/env.py","jc/parsers/history.py"]},"message":"add output info to docs","epoch":1596725288,"epoch_utc":null},{"commit":"59b105580805d78516abe1c1069d52a6f0a8131a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 16:51:58 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 16:51:58 2020 -0700","stats":{"files_changed":97,"insertions":564,"deletions":269,"files":["docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"enhance docs","epoch":1596671518,"epoch_utc":null},{"commit":"6ed48c6289214fe5114971c80772efdf9ac1b8c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 15:34:17 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 15:34:17 2020 -0700","stats":{"files_changed":16,"insertions":88,"deletions":37,"files":["jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py"]},"message":"enhance docs","epoch":1596666857,"epoch_utc":null},{"commit":"f2fb4d3f415fbc1c09eec6dedcf70fba78406b3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 15:10:48 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 15:10:48 2020 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","jc/parsers/airport.py","jc/parsers/airport_s.py"]},"message":"improve docs","epoch":1596665448,"epoch_utc":null},{"commit":"6aeea59ea84e56434e87ddf89cd5d4435b99e140","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 15:08:42 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 15:08:42 2020 -0700","stats":{"files_changed":2,"insertions":14,"deletions":8,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md"]},"message":"doc updates","epoch":1596665322,"epoch_utc":null},{"commit":"d016f3bbb307f85bd0f93a508323941a8bb9d872","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 15:07:33 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 15:07:33 2020 -0700","stats":{"files_changed":2,"insertions":14,"deletions":8,"files":["jc/parsers/airport.py","jc/parsers/airport_s.py"]},"message":"improve documentation","epoch":1596665253,"epoch_utc":null},{"commit":"7131c297180bfa195d0209d46fc70ab8e67efe2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 13:32:59 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 13:32:59 2020 -0700","stats":{"files_changed":114,"insertions":686,"deletions":116,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"add module usage info to docs","epoch":1596659579,"epoch_utc":null},{"commit":"7432442983841b42c8d3d2459b55596c05d1e100","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 13:31:52 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 13:31:52 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["docs/parsers/blkid.md"]},"message":"add usage","epoch":1596659512,"epoch_utc":null},{"commit":"5344883394a0662ee16bb5edd68df8e4410025f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 11:35:52 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 11:35:52 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"]},"message":"spelling/add ping parser update","epoch":1596652552,"epoch_utc":null},{"commit":"3fcd2f6c2e015b0e65e7261c8e591ccd8a7d0e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 11:34:29 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 11:34:29 2020 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/cli.py","setup.py"]},"message":"version bump","epoch":1596652469,"epoch_utc":null},{"commit":"f3d84bd5bf06349b681e9b72d904676e9f6bca19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 11:28:37 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 11:28:37 2020 -0700","stats":{"files_changed":6,"insertions":21,"deletions":3,"files":["CHANGELOG","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/fixtures/debian10/crontab-u.json","tests/fixtures/debian10/crontab-u.out","tests/test_crontab_u.py"]},"message":"tighten crontab and crontab-u parser variable detection","epoch":1596652117,"epoch_utc":null},{"commit":"549780c23220bca3bcab58d7329ba8d44d1be55d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 11:04:07 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 11:04:07 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"add debian/apt-get info","epoch":1596650647,"epoch_utc":null},{"commit":"2a6da69b82aa9ade6c01d490a32b57b415c62a9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 09:58:01 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 09:58:01 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ping.py"]},"message":"improve linux/bsd check","epoch":1596646681,"epoch_utc":null},{"commit":"5c538816cf76686bac1a86a7c06e24664d25a2dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 4 17:36:35 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Aug 4 17:36:35 2020 -0700","stats":{"files_changed":9,"insertions":55,"deletions":4,"files":["CHANGELOG","jc/cli.py","jc/parsers/ping.py","setup.py","tests/fixtures/pi/ping-ip-O-D.json","tests/fixtures/pi/ping-ip-O-D.out","tests/fixtures/pi/ping-ip-O.json","tests/fixtures/pi/ping-ip-O.out","tests/test_ping.py"]},"message":"ping parser fix for raspberry pi","epoch":1596587795,"epoch_utc":null},{"commit":"7b8b378a7df397c488fc54fbd6e77f5f3f23c10c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 3 12:39:18 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 3 12:39:18 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"]},"message":"add pydoc-markdown version requirement","epoch":1596483558,"epoch_utc":null},{"commit":"e30a75e25c4b43969bf9f874f89e18512a5e3a34","merge":"dda517a 85ad5cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 3 10:18:39 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Aug 3 10:18:39 2020 -0700","message":"Merge pull request #76 from kellyjonbrazil/dev\n\nDev v1.13.2","epoch":1596475119,"epoch_utc":null},{"commit":"85ad5cfd0bfb903ce35e37b343244fed88dbd979","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 3 10:14:13 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 3 10:14:13 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"date change","epoch":1596474853,"epoch_utc":null},{"commit":"88b9d5068c5bac0691fedb543114300d6afc7131","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 3 09:26:37 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 3 09:26:37 2020 -0700","stats":{"files_changed":6,"insertions":74,"deletions":15,"files":["EXAMPLES.md","README.md","docs/parsers/date.md","tests/fixtures/generic/date.json","tests/fixtures/generic/date.out","tests/test_date.py"]},"message":"finish date parser","epoch":1596471997,"epoch_utc":null},{"commit":"f8c4948a090642db595eda2ba2ea0773e560ba67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 16:52:48 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 16:52:48 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/date.py"]},"message":"remove comment","epoch":1596239568,"epoch_utc":null},{"commit":"412322447f019aec0b64888631bc965e9f21186d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 16:51:05 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 16:51:05 2020 -0700","stats":{"files_changed":1,"insertions":48,"deletions":17,"files":["jc/parsers/date.py"]},"message":"add month_num and weekday_num fields","epoch":1596239465,"epoch_utc":null},{"commit":"d4f289e40fae621b87f0d49451fca4c3dde216b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 14:47:06 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 14:47:06 2020 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/date.md","jc/parsers/date.py"]},"message":"documentation fixup","epoch":1596232026,"epoch_utc":null},{"commit":"e1f3feb8f529172ae26ce4c7a66a4a1c21b722ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 14:45:30 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 14:45:30 2020 -0700","stats":{"files_changed":1,"insertions":13,"deletions":10,"files":["jc/parsers/date.py"]},"message":"cover empty data case in process","epoch":1596231930,"epoch_utc":null},{"commit":"37d3bc699c7be16955be06840d242980f05f1074","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 14:39:02 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 14:39:02 2020 -0700","stats":{"files_changed":6,"insertions":224,"deletions":1,"files":["CHANGELOG","docgen.sh","docs/parsers/date.md","jc/cli.py","jc/parsers/date.py","man/jc.1"]},"message":"add date parser","epoch":1596231542,"epoch_utc":null},{"commit":"672fd18016b8122510b6ab246b5675b7fd399b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 12:59:44 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 12:59:44 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"date bump","epoch":1596225584,"epoch_utc":null},{"commit":"bc2c23a2a09b96d34bb80f69fdc7751fb5ac3ed4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 12:58:58 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 12:58:58 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"version bump","epoch":1596225538,"epoch_utc":null},{"commit":"865f7e78124e382c6d315702fa6e48f2104cee46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 12:58:11 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 12:58:11 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["man/jc.1"]},"message":"add kv parser to man page","epoch":1596225491,"epoch_utc":null},{"commit":"720212b552e1bd2b9196dd5f06e4b3f85d463531","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 11:02:24 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 11:02:24 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":9,"files":["EXAMPLES.md"]},"message":"fixup traceroute example with new behavior","epoch":1596218544,"epoch_utc":null},{"commit":"d3be61f60837801d5a505dc2520cc80c874a6092","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 10:59:46 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 10:59:46 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]},"message":"version bump","epoch":1596218386,"epoch_utc":null},{"commit":"13418b16b8fd78fdd97ac045ec3fe9aa59d46080","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 10:56:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 10:56:51 2020 -0700","stats":{"files_changed":2,"insertions":8,"deletions":2,"files":["docs/parsers/traceroute.md","jc/parsers/traceroute.py"]},"message":"doc update","epoch":1596218211,"epoch_utc":null},{"commit":"42d2017cd6f5ee1d1a92bd4958cd63366c1e715d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 10:53:47 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 10:53:47 2020 -0700","stats":{"files_changed":18,"insertions":41,"deletions":24,"files":["CHANGELOG","jc/parsers/traceroute.py","tests/fixtures/centos-7.7/traceroute.json","tests/fixtures/freebsd12/traceroute.json","tests/fixtures/freebsd12/traceroute6.json","tests/fixtures/generic/traceroute1.json","tests/fixtures/generic/traceroute2.json","tests/fixtures/generic/traceroute3.json","tests/fixtures/generic/traceroute5.json","tests/fixtures/generic/traceroute6.json","tests/fixtures/generic/traceroute7.json","tests/fixtures/osx-10.14.6/traceroute-asn.json",".../fixtures/osx-10.14.6/traceroute-no-header.json","tests/fixtures/osx-10.14.6/traceroute-q.json","tests/fixtures/osx-10.14.6/traceroute.json",".../osx-10.14.6/traceroute6-mult-addresses.json","tests/fixtures/osx-10.14.6/traceroute6.json","tests/test_traceroute.py"]},"message":"traceroute updates: handle missing header row, add annotations, don't print timeouts as probes","epoch":1596218027,"epoch_utc":null},{"commit":"4345e76ead2a49ae0691077e9fbd2b6c5fdfd129","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 30 16:49:38 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 30 16:49:38 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"]},"message":"change to use --kv for key/value files","epoch":1596152978,"epoch_utc":null},{"commit":"741431322ba2677355c361fcd6095ed8cd0a4349","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 30 16:45:36 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 30 16:45:36 2020 -0700","stats":{"files_changed":2,"insertions":46,"deletions":24,"files":["tests/test_ini.py","tests/test_kv.py"]},"message":"update tests for kv parser","epoch":1596152736,"epoch_utc":null},{"commit":"980beaaf41a04891f7c2f5daeb1e3a23d3c7ec19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 30 16:21:03 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 30 16:21:03 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/ifconfig.py"]},"message":"fix docgen issue","epoch":1596151263,"epoch_utc":null},{"commit":"2205034e0906b333c259648f7a0e5392945f12ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 30 16:20:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 30 16:20:51 2020 -0700","stats":{"files_changed":8,"insertions":105,"deletions":31,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","jc/cli.py","jc/parsers/ini.py","jc/parsers/kv.py","setup.py"]},"message":"add kv parser","epoch":1596151251,"epoch_utc":null},{"commit":"82b9c87a66fce5d8626c56858a8c6f1f3326e7fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 30 16:20:24 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 30 16:20:24 2020 -0700","stats":{"files_changed":58,"insertions":345,"deletions":62,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/readme.md","docs/utils.md"]},"message":"update docs","epoch":1596151224,"epoch_utc":null},{"commit":"dda517a937323b9888e081aea1032a9d63c4a6bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 14:36:20 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 29 14:36:20 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":163,"files":["README.md"]},"message":"shorten more examples","epoch":1596058580,"epoch_utc":null},{"commit":"4e6d283b9eddf7759b4dd37bd643394ff73febd4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 14:27:13 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 29 14:27:13 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":65,"files":["README.md"]},"message":"shorten netstat example","epoch":1596058033,"epoch_utc":null},{"commit":"55acab05aa740dfd7534304f2678b60942cad116","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:55:16 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 29 11:55:16 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["changelog.txt => CHANGELOG"]},"message":"change name to CHANGELOG","epoch":1596048916,"epoch_utc":null},{"commit":"ed38a18d236cdb991779f4f148e42359c139e61c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:49:00 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 29 11:49:00 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":86,"files":["README.md"]},"message":"remove more examples","epoch":1596048540,"epoch_utc":null},{"commit":"95b3c11203d3dd0627c5eeca39fe1d145bf2d733","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:43:22 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 29 11:43:22 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":124,"files":["README.md"]},"message":"remove more examples","epoch":1596048202,"epoch_utc":null},{"commit":"dce318f4fd44b9c4013211bf233020e84566ddb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:40:47 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 29 11:40:47 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1537,"files":["README.md"]},"message":"remove examples to reduce file size","epoch":1596048047,"epoch_utc":null},{"commit":"85127f0fb8096192b19fca1f4ffe38ee391351be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:34:43 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 29 11:34:43 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["jc/examples.md => EXAMPLES.md"]},"message":"move examples to root","epoch":1596047683,"epoch_utc":null},{"commit":"fb45058244ce879f12bbb5b7267b0fd63fef1d63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:32:18 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 29 11:32:18 2020 -0700","stats":{"files_changed":1,"insertions":2640,"deletions":0,"files":["jc/examples.md"]},"message":"add examples file","epoch":1596047538,"epoch_utc":null},{"commit":"45bb5ae389a00ed6a132a65c69ce76c7e5976858","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 28 11:03:41 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 28 11:03:41 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"spelling","epoch":1595959421,"epoch_utc":null},{"commit":"339238ab364d8735892a11cb16a62a651edae169","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 20:37:33 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 20:37:33 2020 -0700","stats":{"files_changed":8,"insertions":79,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py","tests/fixtures/centos-7.7/route-6-n.json","tests/fixtures/centos-7.7/route-6-n.out","tests/fixtures/centos-7.7/route-6.json","tests/fixtures/centos-7.7/route-6.out","tests/test_route.py"]},"message":"version bump and add route -6 tests","epoch":1595907453,"epoch_utc":null},{"commit":"032cda8b3db096b690d2557e3b918c50c716c543","merge":"690ac52 6badd3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 19:12:21 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Jul 27 19:12:21 2020 -0700","message":"Merge pull request #74 from kellyjonbrazil/dev\n\nDev v1.13.0","epoch":1595902341,"epoch_utc":null},{"commit":"6badd3fb1e1cf6d1ee99614fadc20d54be8039aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 19:02:23 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 19:02:23 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["tests/test_cli.py"]},"message":"add parser count test","epoch":1595901743,"epoch_utc":null},{"commit":"724d825745b6f1692eb3b068c3fb59d14892e690","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 19:02:11 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 19:02:11 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["man/jc.1"]},"message":"add tracepath parser","epoch":1595901731,"epoch_utc":null},{"commit":"ff1e32ad2ee156f105f5069c6b14a65b22784dfa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 16:49:34 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 16:49:34 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump","epoch":1595893774,"epoch_utc":null},{"commit":"a5f97febd3066b9e95a18d6b73162a7d206c5845","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 16:47:41 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 16:47:41 2020 -0700","stats":{"files_changed":10,"insertions":132,"deletions":0,"files":["tests/fixtures/centos-7.7/tracepath.json","tests/fixtures/centos-7.7/tracepath6.json","tests/fixtures/freebsd12/traceroute.json","tests/fixtures/freebsd12/traceroute.out","tests/fixtures/freebsd12/traceroute6.json","tests/fixtures/freebsd12/traceroute6.out","tests/fixtures/osx-10.14.6/uname.out","tests/test_tracepath.py","tests/test_traceroute.py","tests/test_uname.py"]},"message":"update traceroute, tracepath, and uname tests","epoch":1595893661,"epoch_utc":null},{"commit":"5baa6cc865634142690e78596c640db35e110b29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:44:13 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 15:44:13 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]},"message":"add route parser update","epoch":1595889853,"epoch_utc":null},{"commit":"7a4f30b843d8f11711abbb8f9bb263f945ff87ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:37:44 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 15:37:44 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/route.py"]},"message":"fix for iface issue","epoch":1595889464,"epoch_utc":null},{"commit":"b2c385dc4f63e3e15f47e986deac0524967214a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:30:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 15:30:09 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"]},"message":"change 'if' to 'iface'","epoch":1595889009,"epoch_utc":null},{"commit":"5d5da8d33fa6ab77c745d338d1a2e2e8f2e4c697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:27:11 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 15:27:11 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/route.py"]},"message":"more fixes for ipv6 fix","epoch":1595888831,"epoch_utc":null},{"commit":"e60457157839daba385202906997dec48c9c4950","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:20:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 15:20:51 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"]},"message":"fix next_hop fix","epoch":1595888451,"epoch_utc":null},{"commit":"f9dacc3f95b32e1431914ae0b0dc5c8e8840d5a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:18:13 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 15:18:13 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/route.py"]},"message":"fixup for ipv6","epoch":1595888293,"epoch_utc":null},{"commit":"6086920332575cd7db1b38262a3b4ba8fbfae7ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:13:32 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 15:13:32 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]},"message":"update ParseError message","epoch":1595888012,"epoch_utc":null},{"commit":"f52f3163bcaf8d7e784f02505e81456e8240295b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 13:57:58 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 13:57:58 2020 -0700","stats":{"files_changed":1,"insertions":49,"deletions":0,"files":["README.md"]},"message":"add tracepath example","epoch":1595883478,"epoch_utc":null},{"commit":"d18ff73e880c7d34957f2713857cc83094f914cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 13:51:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 13:51:51 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/tracepath.py"]},"message":"update author info","epoch":1595883111,"epoch_utc":null},{"commit":"1e5d602caecd96c9056ad77f9fc50cf25bf6fdfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 13:48:46 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 13:48:46 2020 -0700","stats":{"files_changed":2,"insertions":288,"deletions":32,"files":["docs/parsers/tracepath.md","jc/parsers/tracepath.py"]},"message":"working tracepath parser","epoch":1595882926,"epoch_utc":null},{"commit":"12912521ecb376c36dfdd743b3c4195598fb9aac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 11:04:27 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 11:04:27 2020 -0700","stats":{"files_changed":2,"insertions":0,"deletions":11,"files":["docs/parsers/traceroute.md","jc/parsers/traceroute.py"]},"message":"doc update","epoch":1595873067,"epoch_utc":null},{"commit":"842ea3a94bec3fcab76257fdde5514d1de3d57fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 11:02:13 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 11:02:13 2020 -0700","stats":{"files_changed":2,"insertions":153,"deletions":0,"files":["docs/parsers/tracepath.md","jc/parsers/tracepath.py"]},"message":"add tracepath parser skeleton","epoch":1595872933,"epoch_utc":null},{"commit":"a8560dbc1598fa97de87594228b4cc10282d4197","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 11:01:57 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 11:01:57 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add tracepath","epoch":1595872917,"epoch_utc":null},{"commit":"a65e27540a8c5c7123d2fdf79fcbefa1e2f8afdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 11:01:45 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 11:01:45 2020 -0700","stats":{"files_changed":3,"insertions":1,"deletions":24,"files":["docgen.sh","docs/parsers/traceroute.md","jc/parsers/traceroute.py"]},"message":"update docs","epoch":1595872905,"epoch_utc":null},{"commit":"c3c5ed11e68938e35920144406d37ea3b21d63dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 10:33:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 10:33:40 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]},"message":"change name from tr to trparse","epoch":1595871220,"epoch_utc":null},{"commit":"ce24149335cd8ed1e8513a2cf040432fe42d86b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 10:33:25 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 10:33:25 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping.py"]},"message":"formatting","epoch":1595871205,"epoch_utc":null},{"commit":"0314ca8c4831d24c169a0e4948421ecd638fd699","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 10:33:15 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 10:33:15 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add trparse acknowledgement","epoch":1595871195,"epoch_utc":null},{"commit":"ebd8ee49a9f43063850e30c745c8cae46ee13de1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 10:28:15 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 10:28:15 2020 -0700","stats":{"files_changed":1,"insertions":26,"deletions":1,"files":["README.md"]},"message":"add key/value info to ini example","epoch":1595870895,"epoch_utc":null},{"commit":"38d10c97814ec69586c3b447c182f339772d6e22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 09:29:30 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 09:29:30 2020 -0700","stats":{"files_changed":1,"insertions":130,"deletions":1,"files":["README.md"]},"message":"add ping and traceroute examples","epoch":1595867370,"epoch_utc":null},{"commit":"360106c24d24e6a9697c00a158a14aaa334a4b1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 09:23:01 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 09:23:01 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]},"message":"add tracepath","epoch":1595866981,"epoch_utc":null},{"commit":"ca470a5d02fd9fbaf05d8b3b3bb1ffe9f4cf5af3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 09:20:00 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 09:20:00 2020 -0700","stats":{"files_changed":2,"insertions":39,"deletions":0,"files":["tests/fixtures/centos-7.7/tracepath.out","tests/fixtures/centos-7.7/tracepath6.out"]},"message":"add tracepath fixtures","epoch":1595866800,"epoch_utc":null},{"commit":"57f66e6b1d554ff20b72959f5ebb9e7b2feffed2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 09:19:48 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 09:19:48 2020 -0700","stats":{"files_changed":2,"insertions":14,"deletions":2,"files":["changelog.txt","jc/parsers/uname.py"]},"message":"add exception with hint to use \"uname -a\"","epoch":1595866788,"epoch_utc":null},{"commit":"e774f67924c0e6195f79829b2ac75ce95f76fbaa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:53:17 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 16:53:17 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["jc/parsers/ini.py"]},"message":"turn off interpolation and coerce None to ''","epoch":1595634797,"epoch_utc":null},{"commit":"ac10e576c167d20de259e47a6aa5b23fc998b4c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:29:27 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 16:29:27 2020 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/ini.md","jc/parsers/ini.py"]},"message":"spelling","epoch":1595633367,"epoch_utc":null},{"commit":"bcae0a99cd0ccce4ec8a67929f7c83a1095a5b88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:23:45 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 16:23:45 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"add key/value to ini description","epoch":1595633025,"epoch_utc":null},{"commit":"c73c2ff879b3ed7a3e6f04e53e0a729e4f00ed21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:23:30 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 16:23:30 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["changelog.txt"]},"message":"add ping, traceroute, and ini update","epoch":1595633010,"epoch_utc":null},{"commit":"c39b1a3356881a11a8f6fe9432897e6d67162f07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:17:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 16:17:51 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["README.md"]},"message":"add ping, traceroute and update ini description","epoch":1595632671,"epoch_utc":null},{"commit":"125dc2d9e051a82a4a438afe2e520212338353f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:17:16 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 16:17:16 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":3,"files":["docs/parsers/ini.md"]},"message":"add info about key/value files to doc","epoch":1595632636,"epoch_utc":null},{"commit":"b7d4ddc7ced2c3aabf3a857b53a0bf1b62eb6a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:16:54 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 16:16:54 2020 -0700","stats":{"files_changed":5,"insertions":50,"deletions":0,"files":["tests/fixtures/generic/keyvalue-ifcfg.json","tests/fixtures/generic/keyvalue-ifcfg.txt","tests/fixtures/generic/keyvalue.json","tests/fixtures/generic/keyvalue.txt","tests/test_ini.py"]},"message":"add tests for key/value files","epoch":1595632614,"epoch_utc":null},{"commit":"f5e546c6fa7cba166284a0976887d6b82451d3e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:16:24 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 16:16:24 2020 -0700","stats":{"files_changed":1,"insertions":33,"deletions":9,"files":["jc/parsers/ini.py"]},"message":"add support for simple key/value pairs","epoch":1595632584,"epoch_utc":null},{"commit":"928e39cd103b96b8c3ccc8d85c930ffb419296c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 14:16:41 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 14:16:41 2020 -0700","stats":{"files_changed":9,"insertions":104,"deletions":0,"files":["tests/fixtures/generic/traceroute1.json","tests/fixtures/generic/traceroute2.json","tests/fixtures/generic/traceroute3.json","tests/fixtures/generic/traceroute4.json","tests/fixtures/generic/traceroute5.json","tests/fixtures/generic/traceroute6.json","tests/fixtures/generic/traceroute7.json","tests/fixtures/generic/traceroute8.json","tests/test_traceroute.py"]},"message":"add generic traceroute tests","epoch":1595625401,"epoch_utc":null},{"commit":"d0b7ea68a005daff313e44808b256656313a78a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 13:47:47 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 13:47:47 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/traceroute.py"]},"message":"check for key in dictionary","epoch":1595623667,"epoch_utc":null},{"commit":"8444690133b6a7522822ab279e97ede6ded17ba9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 13:47:29 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 13:47:29 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["man/jc.1"]},"message":"add traceroute","epoch":1595623649,"epoch_utc":null},{"commit":"c03c42d76703ff8f423cf3c10ea6254a27a685cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 13:47:23 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 13:47:23 2020 -0700","stats":{"files_changed":9,"insertions":76,"deletions":9,"files":["tests/fixtures/centos-7.7/traceroute.json","tests/fixtures/osx-10.14.6/traceroute-asn.json",".../osx-10.14.6/traceroute-mult-addresses.json","tests/fixtures/osx-10.14.6/traceroute-q.json","tests/fixtures/osx-10.14.6/traceroute.json",".../osx-10.14.6/traceroute6-mult-addresses.json","...-address.out => traceroute6-mult-addresses.out}","tests/fixtures/osx-10.14.6/traceroute6.json","tests/test_traceroute.py"]},"message":"add traceroute tests","epoch":1595623643,"epoch_utc":null},{"commit":"ab67688a00ac335d2a5603e9cadef8b565957911","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 16:45:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 16:45:09 2020 -0700","stats":{"files_changed":1,"insertions":55,"deletions":0,"files":["tests/test_traceroute.py"]},"message":"add test skeleton","epoch":1595547909,"epoch_utc":null},{"commit":"5dcb7166daef3c53da65bba0d591672e64d3a90b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 16:44:57 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 16:44:57 2020 -0700","stats":{"files_changed":2,"insertions":169,"deletions":0,"files":["docgen.sh","docs/parsers/traceroute.md"]},"message":"add traceroute doc","epoch":1595547897,"epoch_utc":null},{"commit":"14697b86d7fc1cfebb41e0fd2d9a9b9b60071d3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 15:48:08 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 15:48:08 2020 -0700","stats":{"files_changed":1,"insertions":24,"deletions":2,"files":["jc/parsers/traceroute.py"]},"message":"add MIT license","epoch":1595544488,"epoch_utc":null},{"commit":"4f4b6276d4bf798b17d996f39742bd0428fc2f19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 15:46:22 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 15:46:22 2020 -0700","stats":{"files_changed":1,"insertions":38,"deletions":33,"files":["jc/parsers/traceroute.py"]},"message":"update docstring","epoch":1595544382,"epoch_utc":null},{"commit":"7bc497e1291059ae7858c9d2bd2d9a1b4c030dd1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 15:42:33 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 15:42:33 2020 -0700","stats":{"files_changed":1,"insertions":117,"deletions":14,"files":["jc/parsers/traceroute.py"]},"message":"updated process() function to set integers and floats","epoch":1595544153,"epoch_utc":null},{"commit":"68a37a6a5a3f0ad0fa24c84d363050af9fa11f97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 12:48:33 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 12:48:33 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/parsers/traceroute.py"]},"message":"remove unused function load()","epoch":1595533713,"epoch_utc":null},{"commit":"6f5cd1d7c5f76d7d4da42171fdc30daf9fe3996e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 12:03:21 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 12:03:21 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]},"message":"change to use f-string","epoch":1595531001,"epoch_utc":null},{"commit":"126b1b121ca10183dc7e9dece83b42907becad39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 11:31:56 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 11:31:56 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":0,"files":["tests/fixtures/generic/traceroute8.out"]},"message":"add traceroute6 example","epoch":1595529116,"epoch_utc":null},{"commit":"2341e456a012564f86d533d2748a5887d79995e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 11:31:35 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 11:31:35 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]},"message":"use ParseError instead of generic Exception","epoch":1595529095,"epoch_utc":null},{"commit":"72d80e95bb50ae2a7432082e65aba15235ba0955","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 10:52:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 10:52:40 2020 -0700","stats":{"files_changed":8,"insertions":115,"deletions":8,"files":["jc/parsers/traceroute.py","tests/fixtures/generic/traceroute1.out","tests/fixtures/generic/traceroute2.out","tests/fixtures/generic/traceroute3.out","tests/fixtures/generic/traceroute4.out","tests/fixtures/generic/traceroute5.out","tests/fixtures/generic/traceroute6.out","tests/fixtures/generic/traceroute7.out"]},"message":"remove unused regex patterns","epoch":1595526760,"epoch_utc":null},{"commit":"f5ec82440cd1c1b5ac9011d3517298d0cdcd8766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 10:19:56 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 10:19:56 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/traceroute.py"]},"message":"simplify regex patterns","epoch":1595524796,"epoch_utc":null},{"commit":"c8e526ead35b868733f57b4c114062a48b78a817","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 22 17:23:24 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 22 17:23:24 2020 -0700","stats":{"files_changed":2,"insertions":12,"deletions":3,"files":["jc/parsers/traceroute.py","tests/fixtures/osx-10.14.6/traceroute-q.out"]},"message":"fixes for bsd-style ipv6 output","epoch":1595463804,"epoch_utc":null},{"commit":"066adfb76479df7042bfb12bbb83b5dbd8a6d54c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 22 15:02:02 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 22 15:02:02 2020 -0700","stats":{"files_changed":7,"insertions":83,"deletions":7,"files":["jc/parsers/traceroute.py","tests/fixtures/centos-7.7/traceroute.out","tests/fixtures/osx-10.14.6/traceroute-asn.out",".../osx-10.14.6/traceroute-mult-addresses.out",".../fixtures/osx-10.14.6/traceroute-no-header.out",".../osx-10.14.6/traceroute6-multi-address.out","tests/fixtures/osx-10.14.6/traceroute6.out"]},"message":"handle warning lines in the traceroute output","epoch":1595455322,"epoch_utc":null},{"commit":"5b444d4717b0b8528647e17e71d699907def3e18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 22 12:19:27 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 22 12:19:27 2020 -0700","stats":{"files_changed":3,"insertions":307,"deletions":0,"files":["jc/cli.py","jc/parsers/traceroute.py","tests/fixtures/osx-10.14.6/traceroute.out"]},"message":"add traceroute parser","epoch":1595445567,"epoch_utc":null},{"commit":"69c95adc8d59927c1c00b7e766ca5003b7b6454c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 22 09:06:11 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 22 09:06:11 2020 -0700","stats":{"files_changed":3,"insertions":81,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ping6-ip-dup.json","tests/fixtures/osx-10.14.6/ping6-ip-dup.out","tests/test_ping.py"]},"message":"add osx ipv6 ping dup test","epoch":1595433971,"epoch_utc":null},{"commit":"2b0e0d8f5c1a6a5450e362971f9ad5892093b2ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 17:34:30 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 21 17:34:30 2020 -0700","stats":{"files_changed":3,"insertions":27,"deletions":0,"files":["tests/fixtures/centos-7.7/ping6-ip-dup.json","tests/fixtures/centos-7.7/ping6-ip-dup.out","tests/test_ping.py"]},"message":"add ipv6 dup test","epoch":1595378070,"epoch_utc":null},{"commit":"778d1bacbf8df523d434b22f5e1517955e4c15ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 15:16:39 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 21 15:16:39 2020 -0700","stats":{"files_changed":2,"insertions":28,"deletions":12,"files":["docs/parsers/ping.md","jc/parsers/ping.py"]},"message":"update docs to add \"duplicates\" fields","epoch":1595369799,"epoch_utc":null},{"commit":"7e1b0410166c584775ebcd681a280ec7321560c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 15:12:43 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 21 15:12:43 2020 -0700","stats":{"files_changed":1,"insertions":24,"deletions":0,"files":["tests/test_ping.py"]},"message":"add duplicate replies tests","epoch":1595369563,"epoch_utc":null},{"commit":"313b9b329ca6b674069718839f55a4bd7834db80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 15:05:54 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 21 15:05:54 2020 -0700","stats":{"files_changed":55,"insertions":55,"deletions":53,"files":["tests/fixtures/centos-7.7/ping-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping-hostname-O-p.json","tests/fixtures/centos-7.7/ping-hostname-O.json","tests/fixtures/centos-7.7/ping-ip-O-D.json","tests/fixtures/centos-7.7/ping-ip-O.json","tests/fixtures/centos-7.7/ping-ip-dup.json","tests/fixtures/centos-7.7/ping6-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping6-hostname-O-p.json","tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","tests/fixtures/centos-7.7/ping6-ip-O-p.json","tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping-hostname-O-p.json","tests/fixtures/fedora32/ping-hostname-O.json","tests/fixtures/fedora32/ping-ip-O-D.json","tests/fixtures/fedora32/ping-ip-O.json","tests/fixtures/fedora32/ping6-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping6-hostname-O-D-p.json","tests/fixtures/fedora32/ping6-hostname-O-p.json","tests/fixtures/fedora32/ping6-ip-O-D-p.json","tests/fixtures/fedora32/ping6-ip-O-p.json","tests/fixtures/freebsd12/ping-hostname-p.json","tests/fixtures/freebsd12/ping-hostname-s.json","tests/fixtures/freebsd12/ping-hostname.json","tests/fixtures/freebsd12/ping-ip-p.json","tests/fixtures/freebsd12/ping-ip-s.json","tests/fixtures/freebsd12/ping-ip.json","tests/fixtures/freebsd12/ping6-hostname-p.json","tests/fixtures/freebsd12/ping6-hostname-s.json","tests/fixtures/freebsd12/ping6-hostname.json","tests/fixtures/freebsd12/ping6-ip-p.json","tests/fixtures/freebsd12/ping6-ip-s.json","tests/fixtures/freebsd12/ping6-ip.json","tests/fixtures/osx-10.14.6/ping-hostname-p.json","tests/fixtures/osx-10.14.6/ping-hostname-s.json","tests/fixtures/osx-10.14.6/ping-hostname.json","tests/fixtures/osx-10.14.6/ping-ip-dup.json","tests/fixtures/osx-10.14.6/ping-ip-p.json","tests/fixtures/osx-10.14.6/ping-ip-s.json","tests/fixtures/osx-10.14.6/ping-ip.json","tests/fixtures/osx-10.14.6/ping6-hostname-p.json","tests/fixtures/osx-10.14.6/ping6-hostname-s.json","tests/fixtures/osx-10.14.6/ping6-hostname.json","tests/fixtures/osx-10.14.6/ping6-ip-p.json","tests/fixtures/osx-10.14.6/ping6-ip-s.json","tests/fixtures/osx-10.14.6/ping6-ip.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping-hostname-O.json","tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","tests/fixtures/ubuntu-18.04/ping-ip-O.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json"]},"message":"update fixtures for added 'duplicate' fields","epoch":1595369154,"epoch_utc":null},{"commit":"6830062256fbc453f87224f7ab8c10e4494b5a83","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 14:47:25 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 21 14:47:25 2020 -0700","stats":{"files_changed":4,"insertions":112,"deletions":24,"files":["docs/parsers/ping.md","jc/parsers/ping.py","tests/fixtures/centos-7.7/ping-ip-dup.out","tests/fixtures/osx-10.14.6/ping-ip-dup.out"]},"message":"add support for duplicate replies","epoch":1595368045,"epoch_utc":null},{"commit":"323072c9827c41c5d74433504b5efceb846cfe09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 09:02:44 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 21 09:02:44 2020 -0700","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/ping.md","jc/parsers/ping.py"]},"message":"add source_ip to schema doc","epoch":1595347364,"epoch_utc":null},{"commit":"8719d96bddec80187e7ba3286ba93bfec8465744","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 16:54:43 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 20 16:54:43 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"change description","epoch":1595289283,"epoch_utc":null},{"commit":"dd5d318ab5bbb1027dd600fd3b0b6ec9b8adfdc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 16:25:20 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 20 16:25:20 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["man/jc.1"]},"message":"version bump and add ping command","epoch":1595287520,"epoch_utc":null},{"commit":"d6dc7f5e65c097895c19000e59e8803a3b350fdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 16:11:18 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 20 16:11:18 2020 -0700","stats":{"files_changed":13,"insertions":135,"deletions":29,"files":["tests/fixtures/osx-10.14.6/ping-hostname-p.json","tests/fixtures/osx-10.14.6/ping-hostname-s.json","tests/fixtures/osx-10.14.6/ping-hostname.json","tests/fixtures/osx-10.14.6/ping-ip-p.json","tests/fixtures/osx-10.14.6/ping-ip-s.json","tests/fixtures/osx-10.14.6/ping-ip.json","tests/fixtures/osx-10.14.6/ping6-hostname-p.json","tests/fixtures/osx-10.14.6/ping6-hostname-s.json","tests/fixtures/osx-10.14.6/ping6-hostname.json","tests/fixtures/osx-10.14.6/ping6-ip-p.json","tests/fixtures/osx-10.14.6/ping6-ip-s.json","tests/fixtures/osx-10.14.6/ping6-ip.json","tests/test_ping.py"]},"message":"add osx ping tests","epoch":1595286678,"epoch_utc":null},{"commit":"c203664eb5aafa0afa3101b79e3fd13b3e009ec5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 15:46:27 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 20 15:46:27 2020 -0700","stats":{"files_changed":13,"insertions":171,"deletions":9,"files":["tests/fixtures/freebsd12/ping-hostname-p.json","tests/fixtures/freebsd12/ping-hostname-s.json","tests/fixtures/freebsd12/ping-hostname.json","tests/fixtures/freebsd12/ping-ip-p.json","tests/fixtures/freebsd12/ping-ip-s.json","tests/fixtures/freebsd12/ping-ip.json","tests/fixtures/freebsd12/ping6-hostname-p.json","tests/fixtures/freebsd12/ping6-hostname-s.json","tests/fixtures/freebsd12/ping6-hostname.json","tests/fixtures/freebsd12/ping6-ip-p.json","tests/fixtures/freebsd12/ping6-ip-s.json","tests/fixtures/freebsd12/ping6-ip.json","tests/test_ping.py"]},"message":"freebsd ping tests","epoch":1595285187,"epoch_utc":null},{"commit":"19ecf1fa19e9fa0873002baf07fa670b71ed7752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 14:35:41 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 20 14:35:41 2020 -0700","stats":{"files_changed":11,"insertions":118,"deletions":0,"files":["tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping-hostname-O-p.json","tests/fixtures/fedora32/ping-hostname-O.json","tests/fixtures/fedora32/ping-ip-O-D.json","tests/fixtures/fedora32/ping-ip-O.json",".../fixtures/fedora32/ping6-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping6-hostname-O-D-p.json","tests/fixtures/fedora32/ping6-hostname-O-p.json","tests/fixtures/fedora32/ping6-ip-O-D-p.json","tests/fixtures/fedora32/ping6-ip-O-p.json","tests/test_ping.py"]},"message":"add Fedora32 tests","epoch":1595280941,"epoch_utc":null},{"commit":"b8deb0426cc23333c0e0a9dc3776d9761d99abb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 13:51:39 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 20 13:51:39 2020 -0700","stats":{"files_changed":11,"insertions":119,"deletions":8,"files":[".../ubuntu-18.04/ping-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping-hostname-O.json","tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","tests/fixtures/ubuntu-18.04/ping-ip-O.json",".../ubuntu-18.04/ping6-hostname-O-D-p-s.json",".../ubuntu-18.04/ping6-hostname-O-D-p.json",".../fixtures/ubuntu-18.04/ping6-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json","tests/test_ping.py"]},"message":"add ubuntu ping tests","epoch":1595278299,"epoch_utc":null},{"commit":"3b8371f0208a097cb8a1c026348d3842e6702b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 12:49:05 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 20 12:49:05 2020 -0700","stats":{"files_changed":10,"insertions":202,"deletions":0,"files":[".../fixtures/centos-7.7/ping-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping-hostname-O-p.json","tests/fixtures/centos-7.7/ping-hostname-O.json","tests/fixtures/centos-7.7/ping-ip-O-D.json","tests/fixtures/centos-7.7/ping-ip-O.json",".../centos-7.7/ping6-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping6-hostname-O-p.json","tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","tests/fixtures/centos-7.7/ping6-ip-O-p.json","tests/test_ping.py"]},"message":"add centos ping tests","epoch":1595274545,"epoch_utc":null},{"commit":"20bb1cdf396abdb3707b34fa146cbe913f9bbd6f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 11:53:06 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 20 11:53:06 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/ping.py"]},"message":"add TypeError to except for None values","epoch":1595271186,"epoch_utc":null},{"commit":"301daa48d0bfc28f97c8e46f028f8c6b875bf34e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 15:30:54 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 15:30:54 2020 -0700","stats":{"files_changed":2,"insertions":114,"deletions":16,"files":["docs/parsers/ping.md","jc/parsers/ping.py"]},"message":"update documentation","epoch":1595197854,"epoch_utc":null},{"commit":"8421ec88033e02f472e4961d87551a0352663a16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 15:19:47 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 15:19:47 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ping.py"]},"message":"remove cygwin compatibility","epoch":1595197187,"epoch_utc":null},{"commit":"74211eb0129f6aa655a38ba4d4d8844d81441107","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 15:16:04 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 15:16:04 2020 -0700","stats":{"files_changed":1,"insertions":82,"deletions":5,"files":["jc/parsers/ping.py"]},"message":"add examples","epoch":1595196964,"epoch_utc":null},{"commit":"60bd42f298f309cbec6d24c9543ea3d51bd73b18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 15:13:52 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 15:13:52 2020 -0700","stats":{"files_changed":1,"insertions":59,"deletions":11,"files":["jc/parsers/ping.py"]},"message":"add process() logic","epoch":1595196832,"epoch_utc":null},{"commit":"14bdd74526e400997c5bc247ea35ed40799e83ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 14:46:02 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 14:46:02 2020 -0700","stats":{"files_changed":12,"insertions":100,"deletions":0,"files":["tests/fixtures/freebsd12/ping-hostname-p.out","tests/fixtures/freebsd12/ping-hostname-s.out","tests/fixtures/freebsd12/ping-hostname.out","tests/fixtures/freebsd12/ping-ip-p.out","tests/fixtures/freebsd12/ping-ip-s.out","tests/fixtures/freebsd12/ping-ip.out","tests/fixtures/freebsd12/ping6-hostname-p.out","tests/fixtures/freebsd12/ping6-hostname-s.out","tests/fixtures/freebsd12/ping6-hostname.out","tests/fixtures/freebsd12/ping6-ip-p.out","tests/fixtures/freebsd12/ping6-ip-s.out","tests/fixtures/freebsd12/ping6-ip.out"]},"message":"add ping test fixtures","epoch":1595195162,"epoch_utc":null},{"commit":"fb0f3eda04a4b1dbb81da7d5791cbfe746bfd617","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 14:45:50 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 14:45:50 2020 -0700","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["tests/fixtures/create_fixtures.sh"]},"message":"add ping commands","epoch":1595195150,"epoch_utc":null},{"commit":"91ee6e6701307363336a39f9e16641465ddd05c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 14:18:56 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 14:18:56 2020 -0700","stats":{"files_changed":12,"insertions":100,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ping-hostname-p.out","tests/fixtures/osx-10.14.6/ping-hostname-s.out","tests/fixtures/osx-10.14.6/ping-hostname.out","tests/fixtures/osx-10.14.6/ping-ip-p.out","tests/fixtures/osx-10.14.6/ping-ip-s.out","tests/fixtures/osx-10.14.6/ping-ip.out","tests/fixtures/osx-10.14.6/ping6-hostname-p.out","tests/fixtures/osx-10.14.6/ping6-hostname-s.out","tests/fixtures/osx-10.14.6/ping6-hostname.out","tests/fixtures/osx-10.14.6/ping6-ip-p.out","tests/fixtures/osx-10.14.6/ping6-ip-s.out","tests/fixtures/osx-10.14.6/ping6-ip.out"]},"message":"add osx ping test fixtures","epoch":1595193536,"epoch_utc":null},{"commit":"51f4e6927c68a7e2a26954f564d10d316b98a984","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 14:18:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 14:18:40 2020 -0700","stats":{"files_changed":1,"insertions":12,"deletions":3,"files":["jc/parsers/ping.py"]},"message":"add support for pattern in osx/bsd","epoch":1595193520,"epoch_utc":null},{"commit":"94988d86674293faddc6f7e7c82575738d2dc791","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 13:50:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 13:50:40 2020 -0700","stats":{"files_changed":10,"insertions":257,"deletions":0,"files":["tests/fixtures/fedora32/ping-hostname-O-D-p-s.out","tests/fixtures/fedora32/ping-hostname-O-p.out","tests/fixtures/fedora32/ping-hostname-O.out","tests/fixtures/fedora32/ping-ip-O-D.out","tests/fixtures/fedora32/ping-ip-O.out","tests/fixtures/fedora32/ping6-hostname-O-D-p-s.out","tests/fixtures/fedora32/ping6-hostname-O-D-p.out","tests/fixtures/fedora32/ping6-hostname-O-p.out","tests/fixtures/fedora32/ping6-ip-O-D-p.out","tests/fixtures/fedora32/ping6-ip-O-p.out"]},"message":"add fedora ping fixtures","epoch":1595191840,"epoch_utc":null},{"commit":"fe36f5a98cd3ee7753e250b6553e4453d971f929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 12:56:53 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 12:56:53 2020 -0700","stats":{"files_changed":13,"insertions":318,"deletions":0,"files":["tests/fixtures/centos-7.7/ping-ip-O-D.out","tests/fixtures/centos-7.7/ping-ip-O.out","tests/fixtures/create_fixtures.sh",".../ubuntu-18.04/ping-hostname-O-D-p-s.out","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.out","tests/fixtures/ubuntu-18.04/ping-hostname-O.out","tests/fixtures/ubuntu-18.04/ping-ip-O-D.out","tests/fixtures/ubuntu-18.04/ping-ip-O.out",".../ubuntu-18.04/ping6-hostname-O-D-p-s.out",".../fixtures/ubuntu-18.04/ping6-hostname-O-D-p.out","tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.out","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.out","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.out"]},"message":"add fixtures for ping","epoch":1595188613,"epoch_utc":null},{"commit":"f9eb18b9271b2428dd82f2dc26d3fa0435dad81d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 12:56:34 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 12:56:34 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/ping.py"]},"message":"change 'request_timeout' field to 'type', fix compatibility, other formatting fixes","epoch":1595188594,"epoch_utc":null},{"commit":"cc60f3674822c644933f286a0364b09d7e2a60b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jul 18 12:35:46 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Jul 18 12:35:46 2020 -0700","stats":{"files_changed":3,"insertions":67,"deletions":1,"files":["docgen.sh","docs/parsers/ping.md","jc/cli.py"]},"message":"add ping parser","epoch":1595100946,"epoch_utc":null},{"commit":"604ade791f7bd33b37f64916befba27a2ea08b5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 17 15:57:07 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 17 15:57:07 2020 -0700","stats":{"files_changed":8,"insertions":506,"deletions":0,"files":["jc/parsers/ping.py",".../fixtures/centos-7.7/ping-hostname-O-D-p-s.out","tests/fixtures/centos-7.7/ping-hostname-O-p.out","tests/fixtures/centos-7.7/ping-hostname-O.out",".../fixtures/centos-7.7/ping6-hostname-O-D-p-s.out","tests/fixtures/centos-7.7/ping6-hostname-O-p.out","tests/fixtures/centos-7.7/ping6-ip-O-D-p.out","tests/fixtures/centos-7.7/ping6-ip-O-p.out"]},"message":"add ping parser","epoch":1595026627,"epoch_utc":null},{"commit":"690ac52a917200e46eac2feafc9f504f2734301c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 13 07:18:48 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 13 07:18:48 2020 -0700","stats":{"files_changed":1,"insertions":261,"deletions":0,"files":["man/jc.1"]},"message":"add man page","epoch":1594649928,"epoch_utc":null},{"commit":"34ed772775f1f02ed148f24a3bfff532bc811607","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jul 11 09:46:47 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Jul 11 09:46:47 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1594486007,"epoch_utc":null},{"commit":"d5ab95571f64f55d8194e9e5592ac538bb535229","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jul 11 09:44:08 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Jul 11 09:44:08 2020 -0700","stats":{"files_changed":1,"insertions":26,"deletions":11,"files":["tests/test_cli.py"]},"message":"fix tests when using older versions of pygments","epoch":1594485848,"epoch_utc":null},{"commit":"ffb3a0ee5fb30a3f61d6cbedf877ab04acdbf624","merge":"fde0bc8 94b12b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 16:34:56 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Jul 10 16:34:56 2020 -0700","message":"Merge pull request #73 from kellyjonbrazil/dev\n\nDev v1.12.0","epoch":1594424096,"epoch_utc":null},{"commit":"94b12b57aaa56170d1f31f4910fd1239f88de137","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 16:30:08 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 16:30:08 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"spelling","epoch":1594423808,"epoch_utc":null},{"commit":"6d149e84571d5d6dd1d8a1f219ba299de5173779","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 16:25:03 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 16:25:03 2020 -0700","stats":{"files_changed":2,"insertions":8,"deletions":1,"files":["changelog.txt","setup.py"]},"message":"version bump","epoch":1594423503,"epoch_utc":null},{"commit":"1ad89c90d890039b817f65b2635db1b5e849a9e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 15:58:02 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 15:58:02 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add pacman","epoch":1594421882,"epoch_utc":null},{"commit":"fb71c7b020bc1eda9484595f30b0200a4f59aa45","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 15:49:35 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 15:49:35 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_cli.py"]},"message":"function name spelling","epoch":1594421375,"epoch_utc":null},{"commit":"28ed17ad3bce866e5dc0179ef5de43380ac6ace1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 15:45:21 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 15:45:21 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_cli.py"]},"message":"add parser_count test to test_cli_about_jc","epoch":1594421121,"epoch_utc":null},{"commit":"0c2a4e2bf71dca50d4a9bb27ca99944909c022ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 15:35:05 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 15:35:05 2020 -0700","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["tests/test_cli.py"]},"message":"add cli tests","epoch":1594420505,"epoch_utc":null},{"commit":"62bec30de2f1a303f2ec411d89f7f9f9c6d1abaf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 14:44:50 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 14:44:50 2020 -0700","stats":{"files_changed":1,"insertions":20,"deletions":0,"files":["tests/test_cli.py"]},"message":"add json_out tests","epoch":1594417490,"epoch_utc":null},{"commit":"3fced77e4e258dbf7db94a313e599c830a597b49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 12:23:48 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 12:23:48 2020 -0700","stats":{"files_changed":1,"insertions":98,"deletions":1,"files":["tests/test_cli.py"]},"message":"add set_env_colors tests","epoch":1594409028,"epoch_utc":null},{"commit":"a09d1d8b7687912610598c88d172733d5e29b1ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 12:23:25 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 12:23:25 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":6,"files":["jc/cli.py"]},"message":"move environment variable assignment to main() to simplify tests","epoch":1594409005,"epoch_utc":null},{"commit":"8f4243fbd8d70ca9fd019e984c564e37c81e07db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 10:54:34 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 10:54:34 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1594403674,"epoch_utc":null},{"commit":"47aaf20549ea238443427e69d5841d6996b7afab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 10:50:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 10:50:51 2020 -0700","stats":{"files_changed":1,"insertions":17,"deletions":0,"files":["README.md"]},"message":"add sysctl command parser","epoch":1594403451,"epoch_utc":null},{"commit":"0c5289ea50e4d3d35e80147b4cad32434c19a2a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 10:47:23 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 10:47:23 2020 -0700","stats":{"files_changed":3,"insertions":72,"deletions":2,"files":["tests/fixtures/freebsd12/sysctl-a.json","tests/fixtures/osx-10.14.6/sysctl-a.json","tests/test_sysctl.py"]},"message":"add sysctl tests","epoch":1594403243,"epoch_utc":null},{"commit":"3e53323514906fb84abfaeed0c2ee1fd9090ad8d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 09:58:56 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 09:58:56 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/sysctl.py"]},"message":"don't filter out empty lines","epoch":1594400336,"epoch_utc":null},{"commit":"a5ee9861b9b9b479aee59ea5b1d75f20d7c3c8e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 09:28:32 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 09:28:32 2020 -0700","stats":{"files_changed":3,"insertions":3785,"deletions":1,"files":["tests/fixtures/freebsd12/sysctl-a.json","tests/fixtures/freebsd12/sysctl-a.out","tests/fixtures/osx-10.14.6/sysctl-a.json"]},"message":"update fixtures","epoch":1594398512,"epoch_utc":null},{"commit":"feb8ca76545cba4fd0927273ddf90a77df994006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 09:28:20 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 09:28:20 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/sysctl.md"]},"message":"spelling","epoch":1594398500,"epoch_utc":null},{"commit":"a7abe4473b90c512466db9ae98cfac585689fe2a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 09:03:04 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 09:03:04 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/sysctl.py"]},"message":"spelling","epoch":1594396984,"epoch_utc":null},{"commit":"780b9b61dec3e142e46c9a82146d2af4e1144123","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 08:30:31 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 08:30:31 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/sysctl.py"]},"message":"specify IndexError exception in try/except block","epoch":1594395031,"epoch_utc":null},{"commit":"19ace36ffa659bedf0ba2e43572c9e253592b2e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 08:21:30 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 08:21:30 2020 -0700","stats":{"files_changed":4,"insertions":2167,"deletions":0,"files":["tests/fixtures/osx-10.14.6/sysctl-a.json","tests/fixtures/osx-10.14.6/sysctl-a.out","tests/fixtures/ubuntu-18.04/sysctl-a.json","tests/fixtures/ubuntu-18.04/sysctl-a.out"]},"message":"add fixtures","epoch":1594394490,"epoch_utc":null},{"commit":"5fff8afc9f47f8cc6db8ed3613b90b5cdc683b43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 08:21:15 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 08:21:15 2020 -0700","stats":{"files_changed":1,"insertions":33,"deletions":11,"files":["jc/parsers/sysctl.py"]},"message":"add fixes for freebsd where values can be on separate lines under the key","epoch":1594394475,"epoch_utc":null},{"commit":"4ad230c9279c5eb6c8ed6baf7254b8e9328e5af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 16:35:36 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 9 16:35:36 2020 -0700","stats":{"files_changed":4,"insertions":929,"deletions":14,"files":["docs/parsers/sysctl.md","jc/parsers/sysctl.py","tests/fixtures/centos-7.7/sysctl-a.json","tests/fixtures/centos-7.7/sysctl-a.out"]},"message":"doc update and add test fixtures","epoch":1594337736,"epoch_utc":null},{"commit":"dd98eb1ec8f451eb87a5094e76a7f758dee3fc69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 16:25:41 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 9 16:25:41 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":7,"files":["jc/parsers/sysctl.py"]},"message":"append duplicate key values to original key instead of adding unique keys","epoch":1594337141,"epoch_utc":null},{"commit":"c6baf42e72b4f41ed511e7db943297d03a39c0d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 16:18:33 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 9 16:18:33 2020 -0700","stats":{"files_changed":3,"insertions":94,"deletions":7,"files":["docgen.sh","docs/parsers/sysctl.md","jc/parsers/sysctl.py"]},"message":"doc updates","epoch":1594336713,"epoch_utc":null},{"commit":"e2bac97d563e5ef771ccd8ed1e5c42cbf588b120","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 14:51:15 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 9 14:51:15 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["jc/parsers/sysctl.py"]},"message":"fix for multiple identical keys in sysctl output","epoch":1594331475,"epoch_utc":null},{"commit":"d112ee94d0ec534828c8508d0fb833b768975990","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 14:26:35 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 9 14:26:35 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":4,"files":["jc/parsers/sysctl.py"]},"message":"use try/except and add support for floats in process()","epoch":1594329995,"epoch_utc":null},{"commit":"27b21b2fafab912f21b88b66c7f817cbce155765","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 11:11:29 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 9 11:11:29 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":7,"files":["jc/cli.py"]},"message":"formatting and docstring updates","epoch":1594318289,"epoch_utc":null},{"commit":"8c96d5cd20448a4f7f9736c4d489d6ecc3068ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 10:59:36 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 9 10:59:36 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["requirements.txt"]},"message":"reduce pygments version requirement","epoch":1594317576,"epoch_utc":null},{"commit":"c29ed3fd695f725005333db5e6e2cd844bb4ca14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 10:54:49 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 9 10:54:49 2020 -0700","stats":{"files_changed":1,"insertions":14,"deletions":13,"files":["jc/cli.py"]},"message":"formatting of quotation marks and docstrings","epoch":1594317289,"epoch_utc":null},{"commit":"cedf603f121636bdfa95432059c3c275c3ea3e9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 09:59:00 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 9 09:59:00 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/cli.py"]},"message":"minor formatting","epoch":1594313940,"epoch_utc":null},{"commit":"279161c36f288c27a9789054ae372fe8ceb58a94","merge":"bc7116c ce0b43d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 09:48:58 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Jul 9 09:48:58 2020 -0700","message":"Merge pull request #72 from duelafn/pygments-2.3\n\nSupport older pygments","epoch":1594313338,"epoch_utc":null},{"commit":"ce0b43d919f07d96d1b94e9d14d03e935e80011d","author":"Dean Serenevy","author_email":"dean@serenevy.net","date":"Thu Jul 9 12:44:41 2020 -0400","commit_by":"Dean Serenevy","commit_by_email":"dean@serenevy.net","commit_by_date":"Thu Jul 9 12:44:41 2020 -0400","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"]},"message":"Remove dependency on 3rd party packaging library","epoch":1594323881,"epoch_utc":null},{"commit":"ddafa5bf06066bab8e9587be902d6752fcf51605","author":"Dean Serenevy","author_email":"dean@serenevy.net","date":"Thu Jul 9 11:27:01 2020 -0400","commit_by":"Dean Serenevy","commit_by_email":"dean@serenevy.net","commit_by_date":"Thu Jul 9 11:39:34 2020 -0400","stats":{"files_changed":2,"insertions":47,"deletions":7,"files":["jc/cli.py","setup.py"]},"message":"Support older pygments","epoch":1594319221,"epoch_utc":null},{"commit":"bc7116c31bacf3159aef775fd0e615187420b010","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 08:30:10 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 9 08:30:10 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":8,"files":["jc/cli.py"]},"message":"fix JC_COLORS env bug and simplify set_env_colors()","epoch":1594308610,"epoch_utc":null},{"commit":"53b709272115e769dac905296fa3b000c1cdd66a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 8 16:40:28 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 8 16:40:28 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":11,"files":["jc/cli.py"]},"message":"remove side-effects from functions and print in main()","epoch":1594251628,"epoch_utc":null},{"commit":"beb9174b1b35937ae1fb99778369ae643a8f1005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 8 15:42:06 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 8 15:42:06 2020 -0700","stats":{"files_changed":1,"insertions":123,"deletions":0,"files":["jc/parsers/sysctl.py"]},"message":"add sysctl parser","epoch":1594248126,"epoch_utc":null},{"commit":"aea41ed341c8d53cc07c35e8044e8f816ddd2fed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 8 15:41:46 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 8 15:41:46 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/cli.py"]},"message":"move verbose_debug enable earlier in code to catch more issues. add sysctl and version bump","epoch":1594248106,"epoch_utc":null},{"commit":"d789494cb1f691aa352419aaefc692f654477177","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 8 05:59:19 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 8 05:59:19 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/tracebackplus.py"]},"message":"change type check to use isinstance","epoch":1594213159,"epoch_utc":null},{"commit":"608e7b4cff081f92177e4151ffa1a91a4a6895ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 6 10:52:12 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 6 10:52:12 2020 -0700","stats":{"files_changed":1,"insertions":61,"deletions":0,"files":["jc/tracebackplus.py"]},"message":"add license info","epoch":1594057932,"epoch_utc":null},{"commit":"4ee199c02a78c2707c5d1427d7c8fae56df5671c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 6 10:41:01 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 6 10:41:01 2020 -0700","stats":{"files_changed":2,"insertions":189,"deletions":3,"files":["jc/cli.py","jc/tracebackplus.py"]},"message":"use tracebackplus instead of cgitb since cgitb is depricated","epoch":1594057261,"epoch_utc":null},{"commit":"fbf47d408501dadda4671fb530f5e11859e85d53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 1 13:28:58 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 1 13:28:58 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add arch linux","epoch":1593635338,"epoch_utc":null},{"commit":"5a238e4b4204f0552327534ef798c28d3ad4f578","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 1 09:11:32 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 1 09:11:32 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"remove updates-testing from fedora command","epoch":1593619892,"epoch_utc":null},{"commit":"f852b8246a8f9e5f7d9144fed3a0daa4eddfe035","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 11:50:37 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jun 30 11:50:37 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/utils.py"]},"message":"wrap warning message","epoch":1593543037,"epoch_utc":null},{"commit":"88140d929a500ee78f807862c4912c399df2a460","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 11:37:33 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jun 30 11:37:33 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"wrap error message in code","epoch":1593542253,"epoch_utc":null},{"commit":"45f726824027af49c437b6e81e4700f7098af320","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 11:34:08 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jun 30 11:34:08 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"add -dd to error message","epoch":1593542048,"epoch_utc":null},{"commit":"3a3c8e4d4a77135eaee5cb30c3107a4531c300ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 11:31:08 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jun 30 11:31:08 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/cli.py"]},"message":"move verbose_debug under debug check","epoch":1593541868,"epoch_utc":null},{"commit":"c1ac183a0472e93226c9ee1905f56c5183e3721f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 11:26:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jun 30 11:26:09 2020 -0700","stats":{"files_changed":1,"insertions":15,"deletions":22,"files":["jc/cli.py"]},"message":"simplify debug option","epoch":1593541569,"epoch_utc":null},{"commit":"18bb779ee5cd5821764b03173f16e922f753c64d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 09:39:05 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jun 30 09:39:05 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"formatting: double quotes to single quotes","epoch":1593535145,"epoch_utc":null},{"commit":"8b6612fe7911ab9e0bf8d29be60865d3b8aa3fd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 07:56:34 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jun 30 07:56:34 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/cli.py"]},"message":"move JC_COLORS parsing error message","epoch":1593528994,"epoch_utc":null},{"commit":"fde0bc853415418e01616861ace5048770bd97f8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jun 27 18:53:19 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Jun 27 18:53:19 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":34,"files":["README.md"]},"message":"improve package install info","epoch":1593309199,"epoch_utc":null},{"commit":"e661a78939ff067b8a61f08301c178dd10a344ab","merge":"b969751 847e346","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jun 27 18:43:02 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sat Jun 27 18:43:02 2020 -0700","message":"Merge pull request #71 from wigust/guix\n\nadd guix package info","epoch":1593308582,"epoch_utc":null},{"commit":"847e346602789bf58e3515319e9d080dfb897fc9","author":"Oleg Pykhalov","author_email":"go.wigust@gmail.com","date":"Sat Jun 27 12:58:59 2020 +0300","commit_by":"Oleg Pykhalov","commit_by_email":"go.wigust@gmail.com","commit_by_date":"Sat Jun 27 13:01:56 2020 +0300","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]},"message":"add guix package info","epoch":1593287939,"epoch_utc":null},{"commit":"b9697516887c61f08d8d7b1dc9130350e5bdba9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 26 09:53:57 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jun 26 09:53:57 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]},"message":"add other references","epoch":1593190437,"epoch_utc":null},{"commit":"ad6f2ba03a293a7f55e456fa5f5b55ee3cbcd4ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 21:16:52 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 25 21:16:52 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1593145012,"epoch_utc":null},{"commit":"63c6a5edc0e9001b143595fd8b96f1b4a1377a3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 21:12:30 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 25 21:12:30 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"formatting","epoch":1593144750,"epoch_utc":null},{"commit":"9f4cf9dd5efe94adfff0961fdb73097ca27c5463","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 21:11:21 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 25 21:11:21 2020 -0700","stats":{"files_changed":1,"insertions":197,"deletions":67,"files":["README.md"]},"message":"formatting","epoch":1593144681,"epoch_utc":null},{"commit":"51331b6dc01eee00847fa4be549ffde365373a01","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 13:01:10 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 25 13:01:10 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["README.md"]},"message":"formatting","epoch":1593115270,"epoch_utc":null},{"commit":"efb6761033319644bf9cdae6288ff5609f6482ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 12:59:56 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 25 12:59:56 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1593115196,"epoch_utc":null},{"commit":"6a4f737a0f1c322bebccf69809d9816fc770c5ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 12:56:06 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 25 12:56:06 2020 -0700","stats":{"files_changed":1,"insertions":88,"deletions":115,"files":["README.md"]},"message":"update json syntax highlighting","epoch":1593114966,"epoch_utc":null},{"commit":"be6864b778ab721bcba5fc3221576153be7b2ed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 12:28:23 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 25 12:28:23 2020 -0700","stats":{"files_changed":1,"insertions":26,"deletions":26,"files":["README.md"]},"message":"add syntax highlighting tags","epoch":1593113303,"epoch_utc":null},{"commit":"de3b91a36cfcaf565b26b1da42f1e87835da4dc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 07:38:39 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 25 07:38:39 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add -dd option","epoch":1593095919,"epoch_utc":null},{"commit":"ef5482c3b5afa0ee8e85851bebab1c104cb59936","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 07:29:28 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 25 07:29:28 2020 -0700","stats":{"files_changed":3,"insertions":15,"deletions":7,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"add verbose debug option","epoch":1593095368,"epoch_utc":null},{"commit":"d20b795137036f8b889eb231cb4f14b756ec6479","merge":"69018cd 8a13406","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 11:28:23 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Jun 22 11:28:23 2020 -0700","message":"Merge pull request #70 from kellyjonbrazil/dev\n\nDev v1.11.7","epoch":1592850503,"epoch_utc":null},{"commit":"8a134065dff429551449c1ea16a36d745fdab580","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 11:23:37 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jun 22 11:23:37 2020 -0700","stats":{"files_changed":12,"insertions":12,"deletions":12,"files":["tests/fixtures/centos-7.7/iptables-filter-line-numbers.json","tests/fixtures/centos-7.7/iptables-filter-nv.json","tests/fixtures/centos-7.7/iptables-filter.json","tests/fixtures/centos-7.7/iptables-mangle.json","tests/fixtures/centos-7.7/iptables-nat.json","tests/fixtures/centos-7.7/iptables-raw.json","tests/fixtures/ubuntu-18.04/iptables-filter-line-numbers.json","tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","tests/fixtures/ubuntu-18.04/iptables-filter.json","tests/fixtures/ubuntu-18.04/iptables-mangle.json","tests/fixtures/ubuntu-18.04/iptables-nat.json","tests/fixtures/ubuntu-18.04/iptables-raw.json"]},"message":"update fixtures for last chain fix","epoch":1592850217,"epoch_utc":null},{"commit":"22aee1bfa40ed1d3c4df28cd934ef0edfc5c458c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 11:23:15 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jun 22 11:23:15 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1592850195,"epoch_utc":null},{"commit":"b282820fd67dcc96c058198f97b066e7b402d1f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 11:09:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jun 22 11:09:09 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/iptables.py"]},"message":"fix to include the final chain in output","epoch":1592849349,"epoch_utc":null},{"commit":"3ee098306daf903687cb0febf92773a81e216111","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 10:48:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jun 22 10:48:51 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"]},"message":"version bump","epoch":1592848131,"epoch_utc":null},{"commit":"09e8f379a64b3b37bb99b4291c10aa4a5cdedea4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 10:47:34 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jun 22 10:47:34 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":11,"files":["jc/parsers/iptables.py"]},"message":"iptables code optimizations","epoch":1592848054,"epoch_utc":null},{"commit":"69018cdb3a77fcdcb5648e3b89933148c55a6412","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 14 17:39:14 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jun 14 17:39:14 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"fix date","epoch":1592181554,"epoch_utc":null},{"commit":"d0d7254c6acc7be4341618d231a5b166f640b287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 14 17:23:10 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jun 14 17:23:10 2020 -0700","stats":{"files_changed":2,"insertions":26,"deletions":0,"files":["docs/utils.md","jc/utils.py"]},"message":"add docstring","epoch":1592180590,"epoch_utc":null},{"commit":"cc0f0971d76b6f3dec8d989e83f5676db8f2c6d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 14 17:17:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jun 14 17:17:40 2020 -0700","stats":{"files_changed":56,"insertions":476,"deletions":439,"files":["changelog.txt","jc/cli.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/utils.py","setup.py"]},"message":"Improve and standardize empty data check for all parsers","epoch":1592180260,"epoch_utc":null},{"commit":"2af61730f0f5b9bc6f1f4c5d9d808ff6ccb0faeb","merge":"07b179c 83f41b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 12 12:34:34 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Jun 12 12:34:34 2020 -0700","message":"Merge pull request #68 from kellyjonbrazil/dev\n\nDev v1.11.5","epoch":1591990474,"epoch_utc":null},{"commit":"83f41b83dc01c462c6a2295e9fc56ad42a3b62f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 12 12:30:19 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jun 12 12:30:19 2020 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1591990219,"epoch_utc":null},{"commit":"1fb84fce88e0306c26a5771fa4c6dc14a21409a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 12 12:25:07 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jun 12 12:25:07 2020 -0700","stats":{"files_changed":16,"insertions":137,"deletions":67,"files":["changelog.txt","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/xml.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py","tests/test_timedatectl.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py","tests/test_who.py","tests/test_xml.py","tests/test_yaml.py"]},"message":"fix for no data","epoch":1591989907,"epoch_utc":null},{"commit":"a8837e12447c52dbe438b19c07777b9b4a22081c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 12 07:57:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jun 12 07:57:40 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"remove --upgrade from pip install","epoch":1591973860,"epoch_utc":null},{"commit":"04d2eec5581998d1a80e762b670af76c92111065","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 11 17:59:06 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 11 17:59:06 2020 -0700","stats":{"files_changed":6,"insertions":56,"deletions":30,"files":["changelog.txt","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","tests/test_stat.py","tests/test_systemctl.py","tests/test_systemctl_lj.py"]},"message":"fix for no data","epoch":1591923546,"epoch_utc":null},{"commit":"1b57ec92f052ddc8959540511512190a539262b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 11 17:52:03 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 11 17:52:03 2020 -0700","stats":{"files_changed":21,"insertions":152,"deletions":68,"files":["changelog.txt","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/pip_list.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","tests/fixtures/centos-7.7/ss-sudo-a.json","tests/fixtures/ubuntu-18.04/ss-sudo-a.json","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_ntpq.py","tests/test_passwd.py","tests/test_pip_list.py","tests/test_pip_show.py","tests/test_ps.py","tests/test_route.py","tests/test_shadow.py","tests/test_ss.py"]},"message":"fix for no data","epoch":1591923123,"epoch_utc":null},{"commit":"4d8859540417e99e273fda2cea959240f3c37ea3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 11 17:16:11 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 11 17:16:11 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/df.py"]},"message":"enhance empty data check","epoch":1591920971,"epoch_utc":null},{"commit":"52b1272a3aab09b5a8c4a277fbf9975a1b8b6921","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 11 17:13:45 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 11 17:13:45 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/blkid.py"]},"message":"enhance empty data check","epoch":1591920825,"epoch_utc":null},{"commit":"d2ccad6a83138fbf6eb863634fd354dc6c3fa238","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 11 17:09:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 11 17:09:51 2020 -0700","stats":{"files_changed":4,"insertions":33,"deletions":15,"files":["jc/parsers/lsblk.py","jc/parsers/lsmod.py","tests/test_lsblk.py","tests/test_lsmod.py"]},"message":"fix for no data","epoch":1591920591,"epoch_utc":null},{"commit":"cad6dde4ac66cf970a7f52d8e7958ea35c083629","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:54:06 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:54:06 2020 -0700","stats":{"files_changed":10,"insertions":60,"deletions":0,"files":["tests/test_group.py","tests/test_gshadow.py","tests/test_history.py","tests/test_hosts.py","tests/test_id.py","tests/test_ifconfig.py","tests/test_ini.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_last.py"]},"message":"fix for no data","epoch":1591836846,"epoch_utc":null},{"commit":"06811c3539b0d871e13e9b8d3b51f731d06fd2ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:41:54 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:41:54 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_fstab.py"]},"message":"add test for no data","epoch":1591836114,"epoch_utc":null},{"commit":"0cb23c2b21f464082609409261de8e95eb1b0d55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:40:18 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:40:18 2020 -0700","stats":{"files_changed":3,"insertions":17,"deletions":7,"files":["changelog.txt","jc/parsers/free.py","tests/test_free.py"]},"message":"add fix for no data","epoch":1591836018,"epoch_utc":null},{"commit":"ac4688dca22334385ec2c87027f2f14f9ca93ce4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:35:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:35:40 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_file.py"]},"message":"add test for no data","epoch":1591835740,"epoch_utc":null},{"commit":"326c3b4670a0e47cbe2988b38fb1c1b26a4db890","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:34:22 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:34:22 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_env.py"]},"message":"add test for no data","epoch":1591835662,"epoch_utc":null},{"commit":"9b29d0c2688eda2e4707aeba693ed14fa433a706","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:32:39 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:32:39 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_du.py"]},"message":"add test for no data","epoch":1591835559,"epoch_utc":null},{"commit":"e0013c38710b4ecf3a588a16d1d908effc23b485","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:31:14 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:31:14 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["tests/test_dmidecode.py"]},"message":"add test for no data","epoch":1591835474,"epoch_utc":null},{"commit":"a75744075b0628bdb711d8a929a759b4b4067edb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:29:41 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:29:41 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_dig.py"]},"message":"add no data test","epoch":1591835381,"epoch_utc":null},{"commit":"525aec1a02380f17ab7827434616f981f7457bd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:27:46 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:27:46 2020 -0700","stats":{"files_changed":3,"insertions":16,"deletions":7,"files":["changelog.txt","jc/parsers/df.py","tests/test_df.py"]},"message":"fix for no data","epoch":1591835266,"epoch_utc":null},{"commit":"0bf9a7a072a80e10a29c6bb3943b107352dc1d45","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:22:59 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:22:59 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_csv.py"]},"message":"add test for no data","epoch":1591834979,"epoch_utc":null},{"commit":"d8f2f4c95bc699386b9fe93d10e13637875a1dcf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:20:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:20:09 2020 -0700","stats":{"files_changed":5,"insertions":96,"deletions":80,"files":["changelog.txt","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/test_crontab.py","tests/test_crontab_u.py"]},"message":"fix for no data","epoch":1591834809,"epoch_utc":null},{"commit":"35d733b44f3705bed3dd8ce340379470f199f772","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:10:53 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:10:53 2020 -0700","stats":{"files_changed":5,"insertions":70,"deletions":60,"files":["changelog.txt","jc/parsers/arp.py","jc/parsers/blkid.py","tests/test_arp.py","tests/test_blkid.py"]},"message":"fix for no data","epoch":1591834253,"epoch_utc":null},{"commit":"9179b4175c5063bed14ecb96ba24c517920c0d94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 16:40:11 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 16:40:11 2020 -0700","stats":{"files_changed":3,"insertions":16,"deletions":0,"files":["changelog.txt","tests/test_airport.py","tests/test_airport_s.py"]},"message":"add nodata tests","epoch":1591832411,"epoch_utc":null},{"commit":"bb07d78c78ff5c5b2ee4d2086ffc6dd5ebedf0fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 16:39:49 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 16:39:49 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":8,"files":["jc/parsers/airport_s.py"]},"message":"add nodata fix","epoch":1591832389,"epoch_utc":null},{"commit":"07b179cd7f8853ff6aca0b27a703e198c158ca72","merge":"12a80e7 054422d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 06:07:42 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Jun 10 06:07:42 2020 -0700","message":"Merge pull request #67 from kellyjonbrazil/Dev\n\nDev v1.11.4","epoch":1591794462,"epoch_utc":null},{"commit":"054422d8373e7b8def18ddabd447062cb9cc3137","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 06:04:50 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 06:04:50 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_ls.py"]},"message":"add test for empty directory","epoch":1591794290,"epoch_utc":null},{"commit":"3e052d18102e98a09cbba21866855691eaccc216","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 05:53:20 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 05:53:20 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1591793600,"epoch_utc":null},{"commit":"c8e72805cf9def478b56c925f4afcc0ece1daac0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 05:51:12 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 05:51:12 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":10,"files":["jc/parsers/ls.py"]},"message":"fix error on empty directory","epoch":1591793472,"epoch_utc":null},{"commit":"12a80e7db0f6c7d536674ad8d34e26bba9a1f1f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 9 15:13:53 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jun 9 15:13:53 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":2,"files":["README.md"]},"message":"add fedora package info","epoch":1591740833,"epoch_utc":null},{"commit":"ee7ff9a09d3373f60ae1645376ccc0057803147e","merge":"346a14c f6478fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 9 11:22:39 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Jun 9 11:22:39 2020 -0700","message":"Merge pull request #66 from kellyjonbrazil/dev\n\nDev v1.11.3","epoch":1591726959,"epoch_utc":null},{"commit":"f6478fb636ead8d1e53e4a88d59e55222df37a8f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 9 11:18:47 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jun 9 11:18:47 2020 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1591726727,"epoch_utc":null},{"commit":"811a0b0495819925199d70db266066197cc6824e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 8 10:54:42 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jun 8 10:54:42 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add info regarding the local parser plugin files","epoch":1591638882,"epoch_utc":null},{"commit":"aeb48edf727f23cc4f8fd9b760cfb69f03098278","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 8 10:48:58 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jun 8 10:48:58 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"use $LOCALAPPDATA variable for windows","epoch":1591638538,"epoch_utc":null},{"commit":"b1e94f0df7041bcae97455508f423178aef9d61d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 8 10:44:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jun 8 10:44:09 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"heading formatting","epoch":1591638249,"epoch_utc":null},{"commit":"60050e3c0fe34980f7db5b8bd46430f953f0c3a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 8 10:42:45 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jun 8 10:42:45 2020 -0700","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["README.md"]},"message":"fix linux/unix directory and add note about the XDG specification followed","epoch":1591638165,"epoch_utc":null},{"commit":"39ef09aa5b0d43b5128299511afe80336aa38203","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 13:30:22 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jun 7 13:30:22 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"]},"message":"add local parser plugin feature","epoch":1591561822,"epoch_utc":null},{"commit":"8377d4311611c242e16eaebe66dafac9529150d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 13:26:03 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jun 7 13:26:03 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1591561563,"epoch_utc":null},{"commit":"54e4c447ab34ae54c73c92df40f1b4ca6ffb2277","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:52:16 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jun 7 12:52:16 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"]},"message":"clean up formatting","epoch":1591559536,"epoch_utc":null},{"commit":"937a9fa9cf2ede8e686ba853989f33e4a483a0ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:41:50 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jun 7 12:41:50 2020 -0700","stats":{"files_changed":4,"insertions":613,"deletions":3,"files":["jc/appdirs.py","jc/cli.py","requirements.txt","setup.py"]},"message":"vendorize appdirs module","epoch":1591558910,"epoch_utc":null},{"commit":"808ff6cf0e784cf0c2d523ff2e01197cb6e88c82","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:29:10 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jun 7 12:29:10 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["README.md"]},"message":"more acknowledgments updates","epoch":1591558150,"epoch_utc":null},{"commit":"7f5c649a95a871c3cd8d48731a6d26dcba6f725b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:23:28 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jun 7 12:23:28 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update acknowledgments","epoch":1591557808,"epoch_utc":null},{"commit":"b72727dec995de1ca5f68ee17a710b086c87d612","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:13:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jun 7 12:13:40 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":2,"files":["README.md"]},"message":"update custom parsers info","epoch":1591557220,"epoch_utc":null},{"commit":"3fc88bfb334143b68a9cb78d4034f33e7c0bcf76","merge":"346a14c 9f2279d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:04:44 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Jun 7 12:04:44 2020 -0700","message":"Merge pull request #65 from duelafn/local-parsers\n\nLoad custom parsers from /jc/jcparsers","epoch":1591556684,"epoch_utc":null},{"commit":"9f2279d5867eb89d4b4b7b4ffca290166ec97c48","author":"Dean Serenevy","author_email":"dean@serenevy.net","date":"Sat Jun 6 14:30:40 2020 -0400","commit_by":"Dean Serenevy","commit_by_email":"dean@serenevy.net","commit_by_date":"Sat Jun 6 14:42:27 2020 -0400","stats":{"files_changed":4,"insertions":29,"deletions":2,"files":["README.md","jc/cli.py","requirements.txt","setup.py"]},"message":"Load custom parsers from /jc/jcparsers","epoch":1591479040,"epoch_utc":null},{"commit":"346a14cb9bb0d762fc3fa366ad97e5ff85f3992a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:44:14 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 20:44:14 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"change osx_device to unix_device","epoch":1590896654,"epoch_utc":null},{"commit":"dac00d17ff9f3d2bb959697b6e567015bfc2702b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:33:50 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 20:33:50 2020 -0700","stats":{"files_changed":3,"insertions":17,"deletions":0,"files":["tests/fixtures/nixos/route-ee.json","tests/fixtures/nixos/route-ee.out","tests/test_route.py"]},"message":"add nixos test","epoch":1590896030,"epoch_utc":null},{"commit":"9ca7cd40601b97829e8f88071fdfb928d939f7e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:33:39 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 20:33:39 2020 -0700","stats":{"files_changed":1,"insertions":17,"deletions":34,"files":["jc/parsers/route.py"]},"message":"update docs","epoch":1590896019,"epoch_utc":null},{"commit":"aa31628970b12295a41dff20e829fcce9f8a4d07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:33:00 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 20:33:00 2020 -0700","stats":{"files_changed":5,"insertions":70,"deletions":63,"files":["README.md","docs/parsers/netstat.md","docs/parsers/route.md","docs/parsers/stat.md","jc/parsers/netstat.py"]},"message":"update docs","epoch":1590895980,"epoch_utc":null},{"commit":"bed694fcf5c8c31bbd4f3e88759fe7ab82382d24","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:13:21 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 20:13:21 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump","epoch":1590894801,"epoch_utc":null},{"commit":"4b4af69fa184896ec15b5be7dc8416f36f921d5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:12:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 20:12:51 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"fix date","epoch":1590894771,"epoch_utc":null},{"commit":"9d96190a5b19e8d71c3ac66eb0303d269dd4ce5d","merge":"96df396 fa44d48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:08:32 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sat May 30 20:08:32 2020 -0700","message":"Merge pull request #64 from kellyjonbrazil/dev\n\nDev v1.11.2","epoch":1590894512,"epoch_utc":null},{"commit":"fa44d48c094a55e499c2c780d109bf277736b42e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 19:50:38 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 19:50:38 2020 -0700","stats":{"files_changed":6,"insertions":129,"deletions":7,"files":["changelog.txt","jc/parsers/stat.py","tests/fixtures/freebsd12/stat.json","tests/fixtures/freebsd12/stat.out","tests/fixtures/osx-10.14.6/stat.json","tests/test_stat.py"]},"message":"freebsd fixes, tests, and fixtures","epoch":1590893438,"epoch_utc":null},{"commit":"4ef961c2788c935b1fea1c9777b976e7b89e7367","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 19:18:01 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 19:18:01 2020 -0700","stats":{"files_changed":3,"insertions":20,"deletions":0,"files":["tests/fixtures/freebsd12/ntpq-p.json","tests/fixtures/freebsd12/ntpq-p.out","tests/test_ntpq.py"]},"message":"add freebsd test and fixtures","epoch":1590891481,"epoch_utc":null},{"commit":"292a837d5c47165ccb155f079b0a114b5c17a98e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 18:54:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 18:54:09 2020 -0700","stats":{"files_changed":3,"insertions":22,"deletions":0,"files":["tests/fixtures/freebsd12/last.json","tests/fixtures/freebsd12/last.out","tests/test_last.py"]},"message":"add tests and fixtures for freebsd12","epoch":1590890049,"epoch_utc":null},{"commit":"aa7b915d847dbd29d2c09b2cc40b847e37174ffb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 18:53:46 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 18:53:46 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/last.py"]},"message":"version bump","epoch":1590890026,"epoch_utc":null},{"commit":"c46fe73236b912d2ee89dfb36ff259fe95fd0479","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 18:53:35 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 18:53:35 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"add last fixes for freebsd","epoch":1590890015,"epoch_utc":null},{"commit":"039b2c129cbe79d2d23b1194b043d8b730609956","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 18:42:26 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 18:42:26 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":1,"files":["jc/parsers/last.py"]},"message":"freebsd fixes","epoch":1590889346,"epoch_utc":null},{"commit":"8f2e5e4808b30c658a4cb87125639e4d7d6c15d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 17:46:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 17:46:09 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"fix compatible logic","epoch":1590885969,"epoch_utc":null},{"commit":"c4da8e4f78e6b4aaa4aff76ae042be9aaec832a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 17:05:41 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 17:05:41 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":3,"files":["README.md"]},"message":"add nixos and freebsd to tested. update new arp fields","epoch":1590883541,"epoch_utc":null},{"commit":"bcab9078a4c2bfd6ae4dca9448b577d9ed0fc01c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 17:02:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 17:02:09 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"add w parser fix","epoch":1590883329,"epoch_utc":null},{"commit":"b3c6c1ea925bf7cd76368f5074fb8af52a844522","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 17:01:59 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 17:01:59 2020 -0700","stats":{"files_changed":4,"insertions":29,"deletions":5,"files":["jc/parsers/w.py","tests/fixtures/nixos/w.json","tests/fixtures/nixos/w.out","tests/test_w.py"]},"message":"strip whitespace in string fields and add tests","epoch":1590883319,"epoch_utc":null},{"commit":"a3af8662bd491e344c93d24afabd23e90efd8086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 16:26:07 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 16:26:07 2020 -0700","stats":{"files_changed":3,"insertions":205,"deletions":3,"files":["tests/fixtures/osx-10.11.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a2.json"]},"message":"add permanent field","epoch":1590881167,"epoch_utc":null},{"commit":"35940d0bc80bf61b11f40b1e1043835f26eb391c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 16:25:53 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 16:25:53 2020 -0700","stats":{"files_changed":6,"insertions":59,"deletions":4,"files":["changelog.txt","docs/parsers/arp.md","jc/parsers/arp.py","tests/fixtures/freebsd12/arp-a.json","tests/fixtures/freebsd12/arp-a.out","tests/test_arp.py"]},"message":"add freebsd permanent and expires fields","epoch":1590881153,"epoch_utc":null},{"commit":"26994cdcb7148d2c9d1701bca9541d247356260b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:51:54 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 15:51:54 2020 -0700","stats":{"files_changed":8,"insertions":115,"deletions":85,"files":["docs/parsers/df.md","docs/parsers/fstab.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/route.md","docs/parsers/stat.md","docs/parsers/uname.md"]},"message":"add freebsd compatibility info","epoch":1590879114,"epoch_utc":null},{"commit":"017159a829691cb6a7174f123d024eb252179b75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:51:06 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 15:51:06 2020 -0700","stats":{"files_changed":15,"insertions":221,"deletions":0,"files":["tests/fixtures/freebsd12/netstat-Aa.json","tests/fixtures/freebsd12/netstat-AaT.json","tests/fixtures/freebsd12/netstat-AaT.out","tests/fixtures/freebsd12/netstat-AanP.json","tests/fixtures/freebsd12/netstat-AanP.out","tests/fixtures/freebsd12/netstat-Aax.json","tests/fixtures/freebsd12/netstat-Aax.out","tests/fixtures/freebsd12/netstat-aT.json","tests/fixtures/freebsd12/netstat-aT.out","tests/fixtures/freebsd12/netstat-an.json","tests/fixtures/freebsd12/netstat-i.json","tests/fixtures/freebsd12/netstat-ib.json","tests/fixtures/freebsd12/netstat-ib.out","tests/fixtures/freebsd12/netstat-r.json","tests/test_netstat.py"]},"message":"add freebsd nestat tests and fixtures","epoch":1590879066,"epoch_utc":null},{"commit":"b4e9c85e08d199dad67f03c7603194278a022696","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:50:45 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 15:50:45 2020 -0700","stats":{"files_changed":1,"insertions":12,"deletions":0,"files":["jc/parsers/netstat_freebsd_osx.py"]},"message":"fixup -T freebsd output and add whitespace stripping to parse_post","epoch":1590879045,"epoch_utc":null},{"commit":"189146cd84cfad262f2b2601bb0cb4b9dde2587e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:50:07 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 15:50:07 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/netstat.py"]},"message":"add more ints. remove whitespace strip code and move to freebsd_osx module","epoch":1590879007,"epoch_utc":null},{"commit":"af34153ffab10ca1ad7f44736d379d91ae43c813","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:48:56 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 15:48:56 2020 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["changelog.txt","jc/cli.py"]},"message":"version bump","epoch":1590878936,"epoch_utc":null},{"commit":"bf2ff3ffbb639446779b1f04f2997707d99c0a1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:48:29 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 15:48:29 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":1,"files":["jc/utils.py"]},"message":"fix compatibility search for platform names that append the version number (e.g. freebsd12)","epoch":1590878909,"epoch_utc":null},{"commit":"6423c9efd69e938af38934a97ca6b65009e8f07e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 15:48:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 15:48:51 2020 -0700","stats":{"files_changed":1,"insertions":34,"deletions":5,"files":["jc/parsers/netstat.py"]},"message":"integer and float updates","epoch":1590792531,"epoch_utc":null},{"commit":"58ab0d4ece7f006ce9431afb9e0fecbe60930be7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 15:14:44 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 15:14:44 2020 -0700","stats":{"files_changed":4,"insertions":12,"deletions":4,"files":["changelog.txt","jc/parsers/netstat.py","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json"]},"message":"strip whitespace from string fields","epoch":1590790484,"epoch_utc":null},{"commit":"83a738bf4d756036d6269b9153220d7f1018ac9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 14:16:11 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 14:16:11 2020 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json"]},"message":"update fixtures for osx_flags and osx_inode name change to unix_flags and unix_inode","epoch":1590786971,"epoch_utc":null},{"commit":"3640671fc6a67c9628fd47e19e9fe0a0738439ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 14:15:28 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 14:15:28 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/{netstat_osx.py => netstat_freebsd_osx.py}"]},"message":"rename module","epoch":1590786928,"epoch_utc":null},{"commit":"1da623b30ef6f9b12ac231518d2d4e7dadcf717b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 14:14:48 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 14:14:48 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["changelog.txt"]},"message":"add items","epoch":1590786888,"epoch_utc":null},{"commit":"b10ca64646e93d9797182ea046f4956a17b37627","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 14:14:37 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 14:14:37 2020 -0700","stats":{"files_changed":1,"insertions":71,"deletions":71,"files":["jc/parsers/netstat.py"]},"message":"change osx_inode and osx_flags to unix_inode and unix_flags. Also rename netstat_osx module to netstat_freebsd_osx","epoch":1590786877,"epoch_utc":null},{"commit":"2128763ee67a07da6ebf123abeec39794bc1f4e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 13:25:19 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 13:25:19 2020 -0700","stats":{"files_changed":1,"insertions":12,"deletions":12,"files":["tests/test_netstat.py"]},"message":"fix osx version from 16.4 to 14.6","epoch":1590783919,"epoch_utc":null},{"commit":"a27e7ed39c63c04cfa78caceaada42f7a9496a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 13:24:52 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 13:24:52 2020 -0700","stats":{"files_changed":12,"insertions":12,"deletions":12,"files":["tests/fixtures/centos-7.7/netstat-r.json","tests/fixtures/centos-7.7/netstat-rne.json","tests/fixtures/centos-7.7/netstat-rnee.json","tests/fixtures/centos-7.7/route-vn.json","tests/fixtures/centos-7.7/route.json","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-rnl.json","tests/fixtures/ubuntu-18.04/netstat-r.json","tests/fixtures/ubuntu-18.04/netstat-rne.json","tests/fixtures/ubuntu-18.04/netstat-rnee.json","tests/fixtures/ubuntu-18.04/route-vn.json","tests/fixtures/ubuntu-18.04/route.json"]},"message":"test updates for added route_flags_pretty and flags_pretty fields","epoch":1590783892,"epoch_utc":null},{"commit":"f07b7eaa474eb87dbdbc7fbe41b9386feff7bee2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 12:55:16 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 12:55:16 2020 -0700","stats":{"files_changed":1,"insertions":38,"deletions":12,"files":["jc/parsers/route.py"]},"message":"add flags_pretty","epoch":1590782116,"epoch_utc":null},{"commit":"6ce18de84ce16a926f9cd97c3210ef209c3352da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 12:51:04 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 12:51:04 2020 -0700","stats":{"files_changed":3,"insertions":130,"deletions":69,"files":["jc/parsers/netstat.py","jc/parsers/netstat_linux.py","jc/parsers/netstat_osx.py"]},"message":"add route_flags_pretty","epoch":1590781864,"epoch_utc":null},{"commit":"8631b756e7ab8cd71c2a3eb288e2d1823cec5782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 12:05:46 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 12:05:46 2020 -0700","stats":{"files_changed":4,"insertions":76,"deletions":0,"files":["tests/fixtures/freebsd12/netstat-Aa.out","tests/fixtures/freebsd12/netstat-an.out","tests/fixtures/freebsd12/netstat-i.out","tests/fixtures/freebsd12/netstat-r.out"]},"message":"add freebsd test files","epoch":1590779146,"epoch_utc":null},{"commit":"7414d984125300164a5b6156d7a80128d4d6cb15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 12:05:34 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 12:05:34 2020 -0700","stats":{"files_changed":6,"insertions":18,"deletions":18,"files":["jc/parsers/df.py","jc/parsers/fstab.py","jc/parsers/mount.py","jc/parsers/ntpq.py","jc/parsers/stat.py","jc/parsers/uname.py"]},"message":"add freebsd compatibility","epoch":1590779134,"epoch_utc":null},{"commit":"d7b19892e8fb11e17fcbadcdbb08d49897d7754f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 12:04:58 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 12:04:58 2020 -0700","stats":{"files_changed":2,"insertions":10,"deletions":7,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"]},"message":"add freebsd support for netstat -i","epoch":1590779098,"epoch_utc":null},{"commit":"96df396eaf4e030113005a95e525d644c394dfe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 07:35:25 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 07:35:25 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1590762925,"epoch_utc":null},{"commit":"2f6f640317da5af894f34f187c4243ef0c599d07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 27 17:11:20 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 27 17:11:20 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"spelling","epoch":1590624680,"epoch_utc":null},{"commit":"c4a0a50f3a3ac5833ab5d2f8a0cb3f18da335812","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 27 17:08:54 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 27 17:08:54 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]},"message":"add nix-env","epoch":1590624534,"epoch_utc":null},{"commit":"658f8a3842273cea049689b3aea15d89a7294b24","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 27 14:58:16 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 27 14:58:16 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":3,"files":["README.md"]},"message":"add zypper and ports info","epoch":1590616696,"epoch_utc":null},{"commit":"bfb876a1e394ff63c6773965ba0b65da4e109c1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 27 09:52:13 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 27 09:52:13 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1590598333,"epoch_utc":null},{"commit":"90c34b1f4ee2d9ec8125346bb90b227f76ada2ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 26 17:31:56 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 26 17:31:56 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"fix dmidecode example","epoch":1590539516,"epoch_utc":null},{"commit":"3f9164ea77ec41e1b0671d0a642900d8e36faf9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 23 21:11:17 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 23 21:11:17 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"bold formatting","epoch":1590293477,"epoch_utc":null},{"commit":"7fd6fecbf5a08b1f13aa7e906e94be9bc126780a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 23 21:09:49 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 23 21:09:49 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1590293389,"epoch_utc":null},{"commit":"8029f72363a4d19938df07603f03a0147f6246a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 23 21:09:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 23 21:09:40 2020 -0700","stats":{"files_changed":6,"insertions":10,"deletions":7,"files":["changelog.txt","docs/parsers/stat.md","jc/cli.py","jc/parsers/stat.py","setup.py","tests/fixtures/osx-10.14.6/stat.json"]},"message":"change osx_flags from integer to string","epoch":1590293380,"epoch_utc":null},{"commit":"c7fdce5d3b7566a7d290627767c47d9c196e02ad","merge":"f5627a4 84f48aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 16:37:50 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri May 22 16:37:50 2020 -0700","message":"Merge pull request #62 from kellyjonbrazil/dev\n\nDev v1.11.0","epoch":1590190670,"epoch_utc":null},{"commit":"84f48aa369a458f534523ecc1e3aaaf403d06f1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 16:30:22 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 16:30:22 2020 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1590190222,"epoch_utc":null},{"commit":"2e9a0a9c1221dd01bd683ecbc4871d03738da671","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 16:21:55 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 16:21:55 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["changelog.txt"]},"message":"add features","epoch":1590189715,"epoch_utc":null},{"commit":"c1f6f2b9508e558ab88b4a0a61e93a6cf5460bea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 16:21:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 16:21:40 2020 -0700","stats":{"files_changed":5,"insertions":116,"deletions":4,"files":["docs/parsers/stat.md","jc/parsers/stat.py","tests/fixtures/osx-10.14.6/stat.json","tests/fixtures/osx-10.14.6/stat.out","tests/test_stat.py"]},"message":"osx fixes and tests","epoch":1590189700,"epoch_utc":null},{"commit":"ede21bca13c4b46899721f01d979c8b063f861a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 16:05:04 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 16:05:04 2020 -0700","stats":{"files_changed":1,"insertions":110,"deletions":78,"files":["jc/parsers/stat.py"]},"message":"add OSX support for stat","epoch":1590188704,"epoch_utc":null},{"commit":"8dd9a9f9cbc70a19176f909f6ac76b2bcf670736","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 15:12:10 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 15:12:10 2020 -0700","stats":{"files_changed":5,"insertions":45,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-i.json","tests/fixtures/osx-10.14.6/netstat-i.json","tests/fixtures/ubuntu-18.04/netstat-i.json","tests/fixtures/ubuntu-18.04/netstat-i.out","tests/test_netstat.py"]},"message":"add netstat -i tests","epoch":1590185530,"epoch_utc":null},{"commit":"04f92cd1330759e4bad1c0304b9e1c28e8d32d59","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 14:04:11 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 14:04:11 2020 -0700","stats":{"files_changed":5,"insertions":166,"deletions":4,"files":["README.md","docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_linux.py","tests/fixtures/centos-7.7/netstat-i.out"]},"message":"add linux support for netstat -i","epoch":1590181451,"epoch_utc":null},{"commit":"8be8d2393b276a9249e1c573ce19cf630f0942fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 13:38:25 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 13:38:25 2020 -0700","stats":{"files_changed":3,"insertions":99,"deletions":3,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-i.out"]},"message":"add netstat -i support for OSX","epoch":1590179905,"epoch_utc":null},{"commit":"0a879681be68fe2e6e5c013ab0fe18de99b04f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 12:56:27 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 12:56:27 2020 -0700","stats":{"files_changed":3,"insertions":97,"deletions":282,"files":["README.md","docs/parsers/netstat.md","jc/parsers/netstat.py"]},"message":"add netstat -r to docs","epoch":1590177387,"epoch_utc":null},{"commit":"2ca1587a49511899bf719e0b0c7de32158fc491d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 12:44:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 12:44:51 2020 -0700","stats":{"files_changed":10,"insertions":102,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-r.json","tests/fixtures/centos-7.7/netstat-rne.json","tests/fixtures/centos-7.7/netstat-rnee.json","tests/fixtures/ubuntu-18.04/netstat-r.json","tests/fixtures/ubuntu-18.04/netstat-r.out","tests/fixtures/ubuntu-18.04/netstat-rne.json","tests/fixtures/ubuntu-18.04/netstat-rne.out","tests/fixtures/ubuntu-18.04/netstat-rnee.json","tests/fixtures/ubuntu-18.04/netstat-rnee.out","tests/test_netstat.py"]},"message":"add linux netstat -r tests","epoch":1590176691,"epoch_utc":null},{"commit":"ec2cd2d708a57c0458657416bedcb4340cb40901","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 12:00:26 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 12:00:26 2020 -0700","stats":{"files_changed":9,"insertions":70,"deletions":11,"files":["docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_linux.py","jc/parsers/netstat_osx.py","tests/fixtures/centos-7.7/netstat-r.out","tests/fixtures/centos-7.7/netstat-rne.out","tests/fixtures/centos-7.7/netstat-rnee.out","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-rnl.json"]},"message":"add netstat -r support for linux","epoch":1590174026,"epoch_utc":null},{"commit":"5d0dbece9317e84a47d9f4b2d18a9ffa33fbee6e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 11:09:41 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 11:09:41 2020 -0700","stats":{"files_changed":8,"insertions":288,"deletions":5,"files":["docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-r.out","tests/fixtures/osx-10.14.6/netstat-rnl.json","tests/fixtures/osx-10.14.6/netstat-rnl.out","tests/test_netstat.py"]},"message":"add netstat -r functionality for OSX","epoch":1590170981,"epoch_utc":null},{"commit":"df1e4b414b2bda5be3153767cd854b2483ba600b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 08:00:18 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 08:00:18 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":[".gitignore"]},"message":"remove unused folder","epoch":1590159618,"epoch_utc":null},{"commit":"40760991e7dae43cd15134310f7bbb5ce0f58dae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 07:51:47 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 07:51:47 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["LICENSE.md"]},"message":"update copyright date","epoch":1590159107,"epoch_utc":null},{"commit":"464f5f86cf2c8fe6a1a857b0ad4d221a3edf3d88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 07:50:22 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 07:50:22 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"update description","epoch":1590159022,"epoch_utc":null},{"commit":"7b09e9fccdd4f09218a500b54c898ada1b9843c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 21 17:01:17 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 21 17:01:17 2020 -0700","stats":{"files_changed":5,"insertions":8,"deletions":5,"files":["docs/parsers/dmidecode.md","jc/parsers/dmidecode.py","tests/fixtures/centos-7.7/dmidecode.json","tests/fixtures/fedora32/dmidecode.json","tests/fixtures/ubuntu-18.04/dmidecode.json"]},"message":"set empty values to Null and update fixtures","epoch":1590105677,"epoch_utc":null},{"commit":"6cba7d429898d331c674c778f8bd85ba75a8dca9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 21 11:10:00 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 21 11:10:00 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"remove linux from description","epoch":1590084600,"epoch_utc":null},{"commit":"9730f62e4970b5a4490f8dc24b6cfb9cacd0cbf2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 21 09:44:28 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 21 09:44:28 2020 -0700","stats":{"files_changed":5,"insertions":151,"deletions":133,"files":["jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json","tests/fixtures/osx-10.14.6/netstat.out"]},"message":"fixup name field and update test fixtures","epoch":1590079468,"epoch_utc":null},{"commit":"e0c1c87f549eee000b93b5f5a3e8d0b052eb7d32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 21 09:07:01 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 21 09:07:01 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["README.md"]},"message":"formatting","epoch":1590077221,"epoch_utc":null},{"commit":"931b3d2b836b251590497f4cfa65f106762086c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 19:56:28 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 19:56:28 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1590029788,"epoch_utc":null},{"commit":"e5d561baeecf1fd83a884b3cd9d322762f750dfb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 17:31:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 17:31:51 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/netstat.py"]},"message":"add multipath condition for osx detection","epoch":1590021111,"epoch_utc":null},{"commit":"2867593e7aa12299686e2c6aa0f2a79a9b550b53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 17:28:44 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 17:28:44 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["changelog.txt"]},"message":"changelog update","epoch":1590020924,"epoch_utc":null},{"commit":"dd52fee5635c977d5c77046ab9fe78d2ed10deef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 17:25:25 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 17:25:25 2020 -0700","stats":{"files_changed":7,"insertions":2141,"deletions":0,"files":["tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-Abn.out","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat-An.out","tests/fixtures/osx-10.14.6/netstat.json","tests/fixtures/osx-10.14.6/netstat.out","tests/test_netstat.py"]},"message":"osx netstat tests and fixtures","epoch":1590020725,"epoch_utc":null},{"commit":"8e1f8858273e671a882a07eae1c35b38f5298c94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 16:43:53 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 16:43:53 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"fix filtered netstat views","epoch":1590018233,"epoch_utc":null},{"commit":"2d39a58f902e6af77f8f96ffcd1d68b7cbadd56c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 16:14:03 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 16:14:03 2020 -0700","stats":{"files_changed":4,"insertions":81,"deletions":14,"files":["README.md","docs/parsers/dmidecode.md","docs/parsers/netstat.md","jc/parsers/dmidecode.py"]},"message":"doc update","epoch":1590016443,"epoch_utc":null},{"commit":"9c4fa2ae2601ca4880c0b078fa917f01f1392e0e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 15:39:47 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 15:39:47 2020 -0700","stats":{"files_changed":2,"insertions":22,"deletions":2,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"]},"message":"integer conversions and icmp fix","epoch":1590014387,"epoch_utc":null},{"commit":"de52d84e82df6d8c5e2416c6bc44e59c41c685da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 12:02:32 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 12:02:32 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/netstat_osx.py"]},"message":"fix udp state and udp46 entries","epoch":1590001352,"epoch_utc":null},{"commit":"ce9b55059a28d363b8b0ae4f3ccbdbdc4bf4b58e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 11:24:38 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 11:24:38 2020 -0700","stats":{"files_changed":2,"insertions":185,"deletions":167,"files":["jc/parsers/netstat.py","jc/parsers/netstat_linux.py"]},"message":"organize files","epoch":1589999078,"epoch_utc":null},{"commit":"bcd370a6a01a115d470776f5690f8571d68d3930","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 08:19:45 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 08:19:45 2020 -0700","stats":{"files_changed":2,"insertions":5,"deletions":15,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"]},"message":"code cleanup","epoch":1589987985,"epoch_utc":null},{"commit":"c8216850abd2d0b8cc6761453f853f296e8a28f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 07:19:24 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 07:19:24 2020 -0700","stats":{"files_changed":1,"insertions":19,"deletions":55,"files":["jc/parsers/netstat_osx.py"]},"message":"code cleanup","epoch":1589984364,"epoch_utc":null},{"commit":"f5feedb90b39e5c3f4564615482d47ccd145844f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 17:38:14 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 19 17:38:14 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":10,"files":["jc/parsers/netstat_osx.py"]},"message":"fix comments","epoch":1589935094,"epoch_utc":null},{"commit":"a4371cd187fe5077018edbfeee77eb17c6a90ad3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 17:36:16 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 19 17:36:16 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/netstat_osx.py"]},"message":"support netstat -A","epoch":1589934976,"epoch_utc":null},{"commit":"9d5ba4c83404e4fab5c0f40c30b4735685499a31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 17:14:04 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 19 17:14:04 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/netstat_osx.py"]},"message":"formatting","epoch":1589933644,"epoch_utc":null},{"commit":"1639dee1bb93f6f89e8bb7b37134dc1f561c479c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 17:13:03 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 19 17:13:03 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":35,"files":["jc/parsers/netstat_osx.py"]},"message":"fix parse_post","epoch":1589933583,"epoch_utc":null},{"commit":"9363f430f20951e6fa739f06c85c5b6b3421b60d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 16:26:41 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 19 16:26:41 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/netstat.py"]},"message":"use list extend method to simplify code","epoch":1589930801,"epoch_utc":null},{"commit":"9192a0907364c772558380be1373b8dcea972a6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 16:26:04 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 19 16:26:04 2020 -0700","stats":{"files_changed":1,"insertions":124,"deletions":34,"files":["jc/parsers/netstat_osx.py"]},"message":"parse all sections","epoch":1589930764,"epoch_utc":null},{"commit":"b915eb97556ccc5fc60e8d23f7298ffec2d8e3b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 15:15:08 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 19 15:15:08 2020 -0700","stats":{"files_changed":2,"insertions":237,"deletions":55,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"]},"message":"initial osx parser","epoch":1589926508,"epoch_utc":null},{"commit":"1cfcc2b592f682d2b50a0c4188fa3ae832a6c682","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 14 09:58:16 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 14 09:58:16 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/dmidecode.py"]},"message":"tighten up line test logic when counting tabs","epoch":1589475496,"epoch_utc":null},{"commit":"7138dd02b73073441a52c9b574bf0d6e02f0d7d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 14 09:51:10 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 14 09:51:10 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/parsers/dmidecode.py"]},"message":"cleanup variables after adding to item","epoch":1589475070,"epoch_utc":null},{"commit":"b4276643b70f7820f8f53df22b32fffb54e30ca2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 14 09:43:13 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 14 09:43:13 2020 -0700","stats":{"files_changed":4,"insertions":56,"deletions":0,"files":["tests/fixtures/centos-7.7/dmidecode.json","tests/fixtures/fedora32/dmidecode.json","tests/fixtures/ubuntu-18.04/dmidecode.json","tests/test_dmidecode.py"]},"message":"add dmidecode tests and fixtures","epoch":1589474593,"epoch_utc":null},{"commit":"2ef00763bfe7c4348f30026759941efe39861a0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 14 09:33:45 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 14 09:33:45 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/dmidecode.py"]},"message":"fix first item","epoch":1589474025,"epoch_utc":null},{"commit":"54364928fc826ead7774a4cec1bcb73a5cb9ee0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 14 08:57:23 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 14 08:57:23 2020 -0700","stats":{"files_changed":2,"insertions":74,"deletions":81,"files":["docs/parsers/dmidecode.md","jc/parsers/dmidecode.py"]},"message":"fix oddities like hybrid single/multiline data and items containing multiple records","epoch":1589471843,"epoch_utc":null},{"commit":"09b3b4932b0fa4a2b18c88a8465c15a194b727e6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 10:51:38 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 10:51:38 2020 -0700","stats":{"files_changed":3,"insertions":35430,"deletions":0,"files":["tests/fixtures/centos-7.7/dmidecode.out","tests/fixtures/fedora32/dmidecode.out","tests/fixtures/ubuntu-18.04/dmidecode.out"]},"message":"add dmidecode output fixtures","epoch":1589392298,"epoch_utc":null},{"commit":"29d6670119d8fcd0344e90f01bfb6260aa936e50","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 10:18:49 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 10:18:49 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/dmidecode.py"]},"message":"convert integers","epoch":1589390329,"epoch_utc":null},{"commit":"2f654b5f1acda01192294f4c18a5a31363e7f387","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 10:13:27 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 10:13:27 2020 -0700","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["docs/parsers/dmidecode.md"]},"message":"doc update","epoch":1589390007,"epoch_utc":null},{"commit":"e53b9f5992450b53efc886b4fa9ca16f3dd07530","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 10:12:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 10:12:40 2020 -0700","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["jc/parsers/dmidecode.py"]},"message":"add caveats to documentation","epoch":1589389960,"epoch_utc":null},{"commit":"addb234e6162c58750cb67947bc4776635bf54fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:44:20 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 09:44:20 2020 -0700","stats":{"files_changed":1,"insertions":153,"deletions":0,"files":["docs/parsers/dmidecode.md"]},"message":"add dmidecode doc","epoch":1589388260,"epoch_utc":null},{"commit":"76eca3b65911a0a340d3d94322a8145ee89c50da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:43:35 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 09:43:35 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"]},"message":"add dmidecode","epoch":1589388215,"epoch_utc":null},{"commit":"f90dec4c0ecf88623fb22273b7527ec8884826c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:43:23 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 09:43:23 2020 -0700","stats":{"files_changed":1,"insertions":94,"deletions":5,"files":["jc/parsers/dmidecode.py"]},"message":"add examples to documentation","epoch":1589388203,"epoch_utc":null},{"commit":"8900a59d4cb424ff58d1eb27f8fda7ea0a668a5c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:31:12 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 09:31:12 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":19,"files":["jc/parsers/dmidecode.py"]},"message":"simplify logic by removing redundant block","epoch":1589387472,"epoch_utc":null},{"commit":"6685138200d5955115707d04aad0293ea8af5b15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:25:02 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 09:25:02 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dmidecode.py"]},"message":"fix for missing multi-line values that come immediately after a previous multi-line value","epoch":1589387102,"epoch_utc":null},{"commit":"4d3e65b980d50164b8220e59560822b9871580ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:00:32 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 09:00:32 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/parsers/dmidecode.py"]},"message":"fix missing values","epoch":1589385632,"epoch_utc":null},{"commit":"e9282bb546f560da6396f44e2ce9e04136348e2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 08:22:52 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 08:22:52 2020 -0700","stats":{"files_changed":2,"insertions":175,"deletions":0,"files":["jc/cli.py","jc/parsers/dmidecode.py"]},"message":"add dmidecode parser","epoch":1589383372,"epoch_utc":null},{"commit":"f5627a45947e5e76e5f3e64d9b30099fe0b962a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 11 11:03:02 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 11 11:03:02 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1589220182,"epoch_utc":null},{"commit":"81ffdb25105c681c8ed12336d220a102b7f4215e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 11 10:54:26 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 11 10:54:26 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/cli.py"]},"message":"remove shebang for Fedora packaging","epoch":1589219666,"epoch_utc":null},{"commit":"4c00a99850cb6f69713be7c6ad9ffba11924d9b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 11 10:37:14 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 11 10:37:14 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1589218634,"epoch_utc":null},{"commit":"2bfcb45b28e2174a8bbc27237e619b5c232ccae8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 11 10:32:42 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 11 10:32:42 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["jc/cli.py"]},"message":"make cli.py executable","epoch":1589218362,"epoch_utc":null},{"commit":"ab0c10e791283affb227d0d5306701ba7fd29d13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 11 10:27:16 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 11 10:27:16 2020 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["LICENSE.md","README.md"]},"message":"remove execute permissions","epoch":1589218036,"epoch_utc":null},{"commit":"2c1935115de03a28fe92674b04b2542b0eccb8fe","merge":"99070fa d98e43d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:47:05 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sat May 9 11:47:05 2020 -0700","message":"Merge pull request #61 from kellyjonbrazil/dev\n\nDev v1.10.10","epoch":1589050025,"epoch_utc":null},{"commit":"d98e43dc78205d3224bfc1e67de2da3c5fb7ea9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:42:56 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 9 11:42:56 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"add netstat item","epoch":1589049776,"epoch_utc":null},{"commit":"9348988d646d9b9c9970c19e84f311554ae38e7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:41:30 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 9 11:41:30 2020 -0700","stats":{"files_changed":1,"insertions":12,"deletions":0,"files":["tests/test_netstat.py"]},"message":"add netstat test for Fedora32","epoch":1589049690,"epoch_utc":null},{"commit":"1285c664679c40b18327c89b85921a80b01f0191","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:36:23 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 9 11:36:23 2020 -0700","stats":{"files_changed":2,"insertions":140,"deletions":0,"files":["tests/fixtures/fedora32/netstat.json","tests/fixtures/fedora32/netstat.out"]},"message":"netstat with bluetooth section","epoch":1589049383,"epoch_utc":null},{"commit":"b7191bbc130e0f33d02c0a4819fa91ffff1599d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:36:03 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 9 11:36:03 2020 -0700","stats":{"files_changed":1,"insertions":14,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"handle bluetooth section (ignore for now)","epoch":1589049363,"epoch_utc":null},{"commit":"98b97509f7893cb95e9651ce9706db5c961aa997","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:25:13 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 9 11:25:13 2020 -0700","stats":{"files_changed":3,"insertions":6,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1589048713,"epoch_utc":null},{"commit":"2b2b570490f3834367a598579473001f45738e8a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:22:26 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 9 11:22:26 2020 -0700","stats":{"files_changed":3,"insertions":21,"deletions":0,"files":["tests/fixtures/fedora32/last.json","tests/fixtures/fedora32/last.out","tests/test_last.py"]},"message":"add tests for 'gone - no logout'","epoch":1589048546,"epoch_utc":null},{"commit":"cce2d1ff298f2284c43c4534144329f3533a81ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:22:01 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 9 11:22:01 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/last.py"]},"message":"add condition for 'gone - no logout'","epoch":1589048521,"epoch_utc":null},{"commit":"b79600c57249cbb65805caad2524cc2492342be6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:01:48 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 9 11:01:48 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"version bump","epoch":1589047308,"epoch_utc":null},{"commit":"140f1a85437745296b56976bef1b46514e323a4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:00:04 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 9 11:00:04 2020 -0700","stats":{"files_changed":7,"insertions":7,"deletions":7,"files":["tests/fixtures/centos-7.7/ls-R-newlines.json","tests/fixtures/centos-7.7/ls-R.json","tests/fixtures/centos-7.7/ls-glob.json","tests/fixtures/osx-10.14.6/ls-glob.json","tests/fixtures/ubuntu-18.04/ls-R-newlines.json","tests/fixtures/ubuntu-18.04/ls-R.json","tests/fixtures/ubuntu-18.04/ls-glob.json"]},"message":"test fixes for issue #60","epoch":1589047204,"epoch_utc":null},{"commit":"e34657cfde6816ab7a7415d83580df0a1d98a5a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 15:26:11 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 8 15:26:11 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"]},"message":"fix issue #60 that was skipping the first file in some instances using -R without -l","epoch":1588976771,"epoch_utc":null},{"commit":"99070fa6073c4415a6faf8ca69dd6aa089af4062","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 10:51:13 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 8 10:51:13 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1588960273,"epoch_utc":null},{"commit":"2b46785b1f1281ee63df9159e36068f4607ad9b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 10:49:30 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 8 10:49:30 2020 -0700","stats":{"files_changed":1,"insertions":25,"deletions":3,"files":["jc/parsers/ifconfig.py"]},"message":"add MIT license to vendorized IfconfigParser class","epoch":1588960170,"epoch_utc":null},{"commit":"c72562524b2b9aaca0be372bb24343158829ba5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 09:30:31 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 8 09:30:31 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"fully remove tests from packaging","epoch":1588955431,"epoch_utc":null},{"commit":"b7dd6441c7e3f54f8a260fceef49aae6816c7151","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 08:20:33 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 8 08:20:33 2020 -0700","stats":{"files_changed":2,"insertions":5,"deletions":1,"files":["changelog.txt","jc/cli.py"]},"message":"version bump","epoch":1588951233,"epoch_utc":null},{"commit":"31fcc2f755ad86622cf51a75879b14d44f246300","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 08:20:21 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 8 08:20:21 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["MANIFEST.in"]},"message":"remove manifest.in - no longer needed due to removing tests","epoch":1588951221,"epoch_utc":null},{"commit":"b391aa14bceffedb5a9c13f3f908923790edefc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 08:19:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 8 08:19:51 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["setup.cfg"]},"message":"add license_file to metadata","epoch":1588951191,"epoch_utc":null},{"commit":"d3c45debbb6690acd341fbcc9b99d1ae4cf0a43c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 08:19:31 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 8 08:19:31 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["setup.py"]},"message":"remove tests and add license file","epoch":1588951171,"epoch_utc":null},{"commit":"5b08469b874553744bd5c5b1fa6581f4dcffacd0","merge":"8cf00a2 4a77ec6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 1 15:55:50 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri May 1 15:55:50 2020 -0700","message":"Merge pull request #57 from kellyjonbrazil/dev\n\nDev v1.10.7","epoch":1588373750,"epoch_utc":null},{"commit":"4a77ec63a46554c84e646d31564230774ed87431","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 1 14:57:50 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 1 14:57:50 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["docs/parsers/ifconfig.md"]},"message":"add IfconfigParser class","epoch":1588370270,"epoch_utc":null},{"commit":"d13606b6dc2c207be6dea89a2c3e713c18a574b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 1 14:37:23 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 1 14:37:23 2020 -0700","stats":{"files_changed":4,"insertions":7,"deletions":6,"files":["changelog.txt","jc/cli.py","requirements.txt","setup.py"]},"message":"modify dependencies for easier packaging into Fedora","epoch":1588369043,"epoch_utc":null},{"commit":"05291c93bba1aa364ba1ac7f2508e24bb362a814","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 1 14:36:54 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 1 14:36:54 2020 -0700","stats":{"files_changed":1,"insertions":198,"deletions":3,"files":["jc/parsers/ifconfig.py"]},"message":"vendorize ifconfig-parser module for easier packaging in Fedora","epoch":1588369014,"epoch_utc":null},{"commit":"8cf00a208eb8493300331e7361b72e4f9e3f140e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 29 15:57:55 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 29 15:57:55 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"change text to strings","epoch":1588201075,"epoch_utc":null},{"commit":"06d73c88767a5b4d6003231c897c447ee5e1faa5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 23 07:06:44 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 23 07:06:44 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1587650804,"epoch_utc":null},{"commit":"649c646ea25ac7f89900cffa8919df01671bd32d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 22 16:08:34 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 22 16:08:34 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]},"message":"add brew install option","epoch":1587596914,"epoch_utc":null},{"commit":"b7756d92501a7b8ba8e77d77d9d3718a58425beb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 20 16:33:26 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 20 16:33:26 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1587425606,"epoch_utc":null},{"commit":"1cd2cd954c21e5caec333507bd81819c82d45b49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 20 16:31:22 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 20 16:31:22 2020 -0700","stats":{"files_changed":4,"insertions":2,"deletions":16,"files":["tests/fixtures/osx-10.11.6/du.json","tests/fixtures/osx-10.11.6/du.out","tests/fixtures/osx-10.14.6/du.json","tests/fixtures/osx-10.14.6/du.out"]},"message":"remove references to homebrew/shim to allow tests to pass in homebrew packaging ci/cd","epoch":1587425482,"epoch_utc":null},{"commit":"72020b8da999ddca6f9ba82da235c9f42e4f4273","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 17 10:20:25 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 17 10:20:25 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":22,"files":["README.md"]},"message":"move packages info to jc-packages github page","epoch":1587144025,"epoch_utc":null},{"commit":"cf9720b749e7fc8caed0d2f1f2b1727a22a156b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 16 14:03:31 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 16 14:03:31 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"update install info","epoch":1587071011,"epoch_utc":null},{"commit":"967b9db7f90a3c3a0352edde7f4455c5f5d45b18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 15 21:27:22 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 15 21:27:22 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["README.md"]},"message":"spelling","epoch":1587011242,"epoch_utc":null},{"commit":"bb3acb1182f4d509f9ddc7dfcffa4578e0a2bd5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 15 21:25:06 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 15 21:25:06 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1587011106,"epoch_utc":null},{"commit":"560c7f7e6d1f8a69ab026ddbff753d232ca1d00b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 15 21:23:55 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 15 21:23:55 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1587011035,"epoch_utc":null},{"commit":"79b28417644e00b933f531374d2f7fe8051e61be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 15 21:22:43 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 15 21:22:43 2020 -0700","stats":{"files_changed":1,"insertions":26,"deletions":0,"files":["README.md"]},"message":"add new binary package install info","epoch":1587010963,"epoch_utc":null},{"commit":"a06a89cbd11026aa3910fadd1eff7fe388d02507","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 14 11:15:24 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 14 11:15:24 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1586888124,"epoch_utc":null},{"commit":"431bd969eb4809424fe99a02a7decb98bce9ea51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 14 11:10:31 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 14 11:10:31 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"use sys.exit(0) instead of exit()","epoch":1586887831,"epoch_utc":null},{"commit":"c87b722aec6e6964c516bbb8e80667ad7d9c6bc7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:23:58 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 12 13:23:58 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"spelling","epoch":1586723038,"epoch_utc":null},{"commit":"3688b8b014a1cf753b2207fbf3ebf0292c3fd672","merge":"99f7842 07b8d9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:21:38 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Apr 12 13:21:38 2020 -0700","message":"Merge pull request #56 from kellyjonbrazil/dev\n\nDev v1.10.4","epoch":1586722898,"epoch_utc":null},{"commit":"07b8d9e0c0d723d93e6c652f5b6156c467c451c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:18:28 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 12 13:18:28 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1586722708,"epoch_utc":null},{"commit":"7454b53e395e9122c00d4cf06b1c2af109913d7a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:13:28 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 12 13:13:28 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["README.md"]},"message":"formatting","epoch":1586722408,"epoch_utc":null},{"commit":"3d6a76024de0f9dcf91a4ab49cabe461074114fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:10:57 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 12 13:10:57 2020 -0700","stats":{"files_changed":1,"insertions":18,"deletions":0,"files":["README.md"]},"message":"update with JC_COLORS info","epoch":1586722257,"epoch_utc":null},{"commit":"421b9809575a8de00229af4b851739889638ac74","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:03:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 12 13:03:09 2020 -0700","stats":{"files_changed":1,"insertions":18,"deletions":37,"files":["jc/cli.py"]},"message":"JC_COLORS working","epoch":1586721789,"epoch_utc":null},{"commit":"4a22e27d6a80a988f4de17bce421110d6abb8867","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 12:43:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 12 12:43:51 2020 -0700","stats":{"files_changed":1,"insertions":64,"deletions":0,"files":["jc/cli.py"]},"message":"add set_env_colors function","epoch":1586720631,"epoch_utc":null},{"commit":"99f7842dee0f79cf933fae185cf8b0ed7c8b210f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 9 13:38:33 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 9 13:38:33 2020 -0700","stats":{"files_changed":3,"insertions":11,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"fix brek on pipe error","epoch":1586464713,"epoch_utc":null},{"commit":"7f869b4b187d70752207a7e74c13b858446f898f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 9 07:31:21 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 9 07:31:21 2020 -0700","stats":{"files_changed":3,"insertions":9,"deletions":11,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"change colors to ansi and match jello style","epoch":1586442681,"epoch_utc":null},{"commit":"9665f4ee84680f3a8154b8a43ea668af2907782c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 7 08:44:15 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 7 08:44:15 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add pypi badge","epoch":1586274255,"epoch_utc":null},{"commit":"606904d48b1c7e0c19a940b5be0b564d1b5be6c8","merge":"302f05c 3f5279b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:28:21 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sat Apr 4 17:28:21 2020 -0700","message":"Merge pull request #53 from kellyjonbrazil/dev\n\nDev v1.10.1","epoch":1586046501,"epoch_utc":null},{"commit":"3f5279b97c386c736e0e2faa5c39d68ef89c46aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:25:55 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:25:55 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to 1.10.1","epoch":1586046355,"epoch_utc":null},{"commit":"f5ec21e6ac612566af93158fc3968b901322d04a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:19:32 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:19:32 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_luf.py"]},"message":"use in instead of find()","epoch":1586045972,"epoch_utc":null},{"commit":"578a284465f014fe71ad6ac00bd41dc24ab2ced9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:18:39 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:18:39 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_ls.py"]},"message":"use in instead of find()","epoch":1586045919,"epoch_utc":null},{"commit":"422e392d9d98a7864312fc7fbd7f45537b71acbe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:17:43 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:17:43 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_lj.py"]},"message":"use in instead of find()","epoch":1586045863,"epoch_utc":null},{"commit":"54dfffd34a17d1194690142ac403391fc65bb85f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:16:25 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:16:25 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl.py"]},"message":"use in instead of find()","epoch":1586045785,"epoch_utc":null},{"commit":"cffba64d2b9165b44a8856665807111a2ad3a190","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:15:03 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:15:03 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/stat.py"]},"message":"use in and startswith() instead of find()","epoch":1586045703,"epoch_utc":null},{"commit":"56a0c12a59bb252d3b7d0929f9fb19b4d96a8437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:12:22 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:12:22 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/pip_list.py"]},"message":"use in instead of find()","epoch":1586045542,"epoch_utc":null},{"commit":"c174d3de18923b2b03befb5a7dfcbd977a8e147e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:10:46 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:10:46 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/netstat.py"]},"message":"use in and startswith() instead of find()","epoch":1586045446,"epoch_utc":null},{"commit":"a9c59ef9fc1bb68c9d0d7beffbeb670baf5b1e3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:07:38 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:07:38 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/mount.py"]},"message":"fix logic to not for ' type ' in cleandata[0]","epoch":1586045258,"epoch_utc":null},{"commit":"abdb9b26732a6a71f5938d665b2ca43a381e1b33","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:05:17 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:05:17 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/mount.py"]},"message":"use in instead of find()","epoch":1586045117,"epoch_utc":null},{"commit":"548aaab6262878d21f8b9539950cfad48638e35c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:04:20 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:04:20 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":42,"files":["jc/parsers/lsof.py"]},"message":"remove old commented code","epoch":1586045060,"epoch_utc":null},{"commit":"20571c87ae9e1ca8a1f3120511910751420a35ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:01:56 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:01:56 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/jobs.py"]},"message":"us in instead of find()","epoch":1586044916,"epoch_utc":null},{"commit":"19e49200de5c731f76b42e80388c5223e8097e39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:59:48 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 16:59:48 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"]},"message":"version bump","epoch":1586044788,"epoch_utc":null},{"commit":"d32f5c67a91ede572c88e431b2ad0ce4d6c87dec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:59:03 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 16:59:03 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/iptables.py"]},"message":"use startswith() instead of find()","epoch":1586044743,"epoch_utc":null},{"commit":"b83b626435c55d2aa63e56dd8f22603da59e7626","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:57:23 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 16:57:23 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ifconfig.py"]},"message":"use startswith() instead of find()","epoch":1586044643,"epoch_utc":null},{"commit":"ab2c1b25ec5da5f2ba238868c4dfca95a44da30e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:56:11 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 16:56:11 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/hosts.py"]},"message":"use startswith() and in instead of find()","epoch":1586044571,"epoch_utc":null},{"commit":"f2d46313a4508f13656cdb360f83fdf4116cc7d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:53:55 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 16:53:55 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/fstab.py"]},"message":"use startswith() instead of find()","epoch":1586044435,"epoch_utc":null},{"commit":"87e4796a6c936793e2784346819c7033d59b91e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:52:45 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 16:52:45 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/df.py"]},"message":"use in instead of .find()","epoch":1586044365,"epoch_utc":null},{"commit":"0014a5c2f4c056c2683d6614a65d778b1f527932","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:51:36 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 16:51:36 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab_u.py"]},"message":"us startswith() and in instead of .find()","epoch":1586044296,"epoch_utc":null},{"commit":"7af56e0dadab7d8b9538f3b7a550ad6dd1ac217d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:50:05 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 16:50:05 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab.py"]},"message":"use startswith() and in instead of find()","epoch":1586044205,"epoch_utc":null},{"commit":"a5ae6e3c017b041f9079ff12455b7551ad204cb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:48:16 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 16:48:16 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/arp.py"]},"message":"use startswith() instead of find()","epoch":1586044096,"epoch_utc":null},{"commit":"fe1a0d1faf46f55ed2888ed0065f3f3144691ed8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:46:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 16:46:09 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":9,"files":["jc/parsers/dig.py"]},"message":"use in instead of .find()","epoch":1586043969,"epoch_utc":null},{"commit":"302f05cdda305e46e69b74d5b0096f64c17da637","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 3 14:50:20 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 3 14:50:20 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"prettify style block","epoch":1585950620,"epoch_utc":null},{"commit":"c0044be7b0b6dadcffb64cb88ad92bf653dd2b6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 3 14:48:19 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 3 14:48:19 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"rename color grey to gray","epoch":1585950499,"epoch_utc":null},{"commit":"01100788070b82b4b827ef356972fa9b8f737eeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 3 14:47:08 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 3 14:47:08 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update badge","epoch":1585950428,"epoch_utc":null},{"commit":"42eacb45f8fdf8085c6231bf5297629c2ec97c22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 3 14:45:04 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Apr 3 14:45:04 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"rename to Tests","epoch":1585950304,"epoch_utc":null},{"commit":"a43e2e19916662d509883457c160d7f95f97ae12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 2 17:40:06 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 2 17:40:06 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add -m option info","epoch":1585874406,"epoch_utc":null},{"commit":"c8b721d4f6e46a2db77e1140b9caeb3b403fef72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 2 17:35:35 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 2 17:35:35 2020 -0700","stats":{"files_changed":4,"insertions":9,"deletions":3,"files":["changelog.txt","jc/cli.py","requirements.txt","setup.py"]},"message":"version bump to 1.10.0","epoch":1585874135,"epoch_utc":null},{"commit":"d0bfddc3d9989444757d6668726c916e5363620b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 2 17:29:25 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 2 17:29:25 2020 -0700","stats":{"files_changed":1,"insertions":41,"deletions":6,"files":["jc/cli.py"]},"message":"add color and -m monochrome option","epoch":1585873765,"epoch_utc":null},{"commit":"6b925a16c87cf75bb30edfda38511e8f84a4f6d6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 2 10:55:32 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 2 10:55:32 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]},"message":"add tests badge","epoch":1585850132,"epoch_utc":null},{"commit":"89ebd9fc2271d2c76353d5707bfd4afb7dedc278","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 27 07:31:08 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 27 07:31:08 2020 -0700","stats":{"files_changed":2,"insertions":20,"deletions":0,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"add axfr info to schema","epoch":1585319468,"epoch_utc":null},{"commit":"6b4ba662317629839aa62fbcfefb8ed3337c37ef","merge":"8ec8cd6 5b697dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 17:15:13 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Mar 26 17:15:13 2020 -0700","message":"Merge pull request #52 from kellyjonbrazil/dev\n\nDev v1.9.3","epoch":1585268113,"epoch_utc":null},{"commit":"5b697dc38141cdd47fcdd63bf295a80a7da86697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 17:09:29 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 26 17:09:29 2020 -0700","stats":{"files_changed":1,"insertions":72,"deletions":0,"files":["tests/test_dig.py"]},"message":"add more dig tests","epoch":1585267769,"epoch_utc":null},{"commit":"9ba73c95d1a528a9a92be4068805bb5aa027901e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 16:45:29 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 26 16:45:29 2020 -0700","stats":{"files_changed":7,"insertions":215,"deletions":0,"files":["tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/centos-7.7/dig-axfr.out","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-axfr.out","tests/fixtures/ubuntu-18.04/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-axfr.out","tests/test_dig.py"]},"message":"add tests","epoch":1585266329,"epoch_utc":null},{"commit":"93aa39044749c4c0ed749f62fb00fc1c76dc5af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 16:30:17 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 26 16:30:17 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to v1.9.3","epoch":1585265417,"epoch_utc":null},{"commit":"3cfb8945ddd83c00a720c44e2c1d97da0d8bad25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 16:29:59 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 26 16:29:59 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/dig.py"]},"message":"use startswith() instead of find","epoch":1585265399,"epoch_utc":null},{"commit":"cd8d38f2a136c4f35efc020b3476d09e965b71f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 16:22:53 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 26 16:22:53 2020 -0700","stats":{"files_changed":1,"insertions":50,"deletions":1,"files":["jc/parsers/dig.py"]},"message":"add axfr support","epoch":1585264973,"epoch_utc":null},{"commit":"8ec8cd62944c59c462ab9f520c1dcfd14218b1ed","merge":"e5bea9a c028113","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 17:09:04 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Mar 12 17:09:04 2020 -0700","message":"Merge pull request #50 from kellyjonbrazil/dev\n\nDev v1.9.2","epoch":1584058144,"epoch_utc":null},{"commit":"c02811356153c2b4f8b2d7efb7f48bf8f7748068","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 17:06:55 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 12 17:06:55 2020 -0700","stats":{"files_changed":3,"insertions":6,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to v1.9.2","epoch":1584058015,"epoch_utc":null},{"commit":"5f22e1c8031b808ef02ffe078408bd58cc76e570","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 17:02:26 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 12 17:02:26 2020 -0700","stats":{"files_changed":3,"insertions":33,"deletions":0,"files":["tests/fixtures/osx-10.14.6/arp-a2.json","tests/fixtures/osx-10.14.6/arp-a2.out","tests/test_arp.py"]},"message":"fix and test for osx arp entries without ifscope","epoch":1584057746,"epoch_utc":null},{"commit":"d3351787e5cabd064c19e6617e9535e501686404","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 16:52:33 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 12 16:52:33 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":9,"files":["jc/parsers/arp.py"]},"message":"change osx detection","epoch":1584057153,"epoch_utc":null},{"commit":"e5bea9ae3b0a70b38f7da7dd9184343dbbd18887","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 08:52:01 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 12 08:52:01 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/file.py"]},"message":"version bump","epoch":1584028321,"epoch_utc":null},{"commit":"93c710abe9171568f61f65c4f84c040ffc24870c","merge":"400f5a4 c29e7cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 08:23:10 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Mar 12 08:23:10 2020 -0700","message":"Merge pull request #49 from kellyjonbrazil/dev\n\nDev v1.9.1","epoch":1584026590,"epoch_utc":null},{"commit":"c29e7cfe5cc4b2151912c6f618137d1b6c39c7be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 08:17:28 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 12 08:17:28 2020 -0700","stats":{"files_changed":4,"insertions":9,"deletions":6,"files":["README.md","changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to 1.9.1","epoch":1584026248,"epoch_utc":null},{"commit":"cb5c1ba00dc0e02bf6ad6c40096d99e319fa6171","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 17:04:48 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 11 17:04:48 2020 -0700","stats":{"files_changed":3,"insertions":101,"deletions":0,"files":["tests/fixtures/osx-10.14.6/file2.json","tests/fixtures/osx-10.14.6/file2.out","tests/test_file.py"]},"message":"add tests for fix to make the file parser splitting more robust","epoch":1583971488,"epoch_utc":null},{"commit":"9a012b94e1942a14bc6dae3fb967ef618819c77b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 15:40:34 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 11 15:40:34 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/file.py"]},"message":"make splitting more robust","epoch":1583966434,"epoch_utc":null},{"commit":"400f5a44ece280cb0097d806b78a9490d2905600","merge":"c7cd2b6 a2ab5ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 13:37:22 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 11 13:37:22 2020 -0700","message":"Merge pull request #48 from kellyjonbrazil/dev\n\nDev v1.9.0","epoch":1583959042,"epoch_utc":null},{"commit":"a2ab5bab91ea980399df1afb9d8071fa3282d04e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 13:32:58 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 11 13:32:58 2020 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to v1.9.0","epoch":1583958778,"epoch_utc":null},{"commit":"fc8ab27361df3359b706125531b2643612d6996a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 13:24:55 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 11 13:24:55 2020 -0700","stats":{"files_changed":6,"insertions":93,"deletions":51,"files":["README.md","docs/parsers/ntpq.md","jc/parsers/ntpq.py","tests/fixtures/ubuntu-18.04/ntpq-p2.json","tests/fixtures/ubuntu-18.04/ntpq-p2.out","tests/test_ntpq.py"]},"message":"bugfix for misaligned columns and additional test for ntpq #31","epoch":1583958295,"epoch_utc":null},{"commit":"59f19d33a5c6677ea756a9424fdb032b430511a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 12:39:59 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 11 12:39:59 2020 -0700","stats":{"files_changed":7,"insertions":153,"deletions":0,"files":["tests/fixtures/centos-7.7/file.json","tests/fixtures/centos-7.7/file.out","tests/fixtures/osx-10.14.6/file.json","tests/fixtures/osx-10.14.6/file.out","tests/fixtures/ubuntu-18.04/file.json","tests/fixtures/ubuntu-18.04/file.out","tests/test_file.py"]},"message":"add file command tests for #41","epoch":1583955599,"epoch_utc":null},{"commit":"dfc96181159748d019419a2cba7aa9cb3b7a2a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 12:20:58 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 11 12:20:58 2020 -0700","stats":{"files_changed":6,"insertions":260,"deletions":1,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/file.md","jc/cli.py","jc/parsers/file.py"]},"message":"add file parser for issue #41","epoch":1583954458,"epoch_utc":null},{"commit":"8e02e5c75a11cf205299ee6f87b67f9b787cf55e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 09:21:14 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 11 09:21:14 2020 -0700","stats":{"files_changed":2,"insertions":6,"deletions":5,"files":["jc/cli.py","tests/test_cli.py"]},"message":"fix issue with getting options with some commands #47","epoch":1583943674,"epoch_utc":null},{"commit":"970493ab9346a344b21be7614903ad81bc65a6e9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 06:22:54 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 11 06:22:54 2020 -0700","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["jc/parsers/airport.py","jc/parsers/airport_s.py"]},"message":"add magic commands","epoch":1583932974,"epoch_utc":null},{"commit":"64d78956eb33ca0a2564fded3d12729ee036a915","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 22:18:26 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 22:18:26 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"update acknowledgment","epoch":1583903906,"epoch_utc":null},{"commit":"40c05346f4098f8eea14c42da07df3faa143587a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 22:16:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 22:16:40 2020 -0700","stats":{"files_changed":1,"insertions":12,"deletions":25,"files":["jc/parsers/history.py"]},"message":"re-adding optimizations from https://github.com/philippeitis","epoch":1583903800,"epoch_utc":null},{"commit":"e9b0bc1409a824a82dabd2479892b7d18bad8c3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 22:03:54 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 22:03:54 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/airport.py"]},"message":"doc update","epoch":1583903034,"epoch_utc":null},{"commit":"798e6bb7d939176bb36771a6d41bd55403d583be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 22:03:44 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 22:03:44 2020 -0700","stats":{"files_changed":2,"insertions":29,"deletions":0,"files":["tests/fixtures/osx-10.14.6/airport-s.json","tests/test_airport_s.py"]},"message":"tests passing for airport -s. issue #46","epoch":1583903024,"epoch_utc":null},{"commit":"12a370deed03ba42d7b7ebb410195ce5f32bb9c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 21:51:02 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 21:51:02 2020 -0700","stats":{"files_changed":8,"insertions":372,"deletions":9,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/airport.md","docs/parsers/airport_s.md","jc/cli.py","jc/parsers/airport.py","jc/parsers/airport_s.py"]},"message":"add airport -s parser for issue #46","epoch":1583902262,"epoch_utc":null},{"commit":"553bfbe1a0dd866851ba7eca66e9295c2097ad86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 21:02:17 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 21:02:17 2020 -0700","stats":{"files_changed":3,"insertions":40,"deletions":6,"files":["docs/parsers/airport.md","jc/parsers/airport.py","tests/test_airport.py"]},"message":"tests passing for airport -I. Issue #46","epoch":1583899337,"epoch_utc":null},{"commit":"52494321fcfe0dc7ee71d8d78210b3c10372a237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 20:55:07 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 20:55:07 2020 -0700","stats":{"files_changed":5,"insertions":120,"deletions":15,"files":["README.md","docs/parsers/airport.md","jc/parsers/airport.py","tests/fixtures/osx-10.14.6/airport-I.json","tests/fixtures/osx-10.14.6/airport-I.out"]},"message":"fixes and docs for airport parser issue #46","epoch":1583898907,"epoch_utc":null},{"commit":"c6c9e06496683d2dd3586d17085801c7e698d960","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 20:35:52 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 20:35:52 2020 -0700","stats":{"files_changed":7,"insertions":196,"deletions":1,"files":["changelog.txt","docgen.sh","docs/parsers/airport.md","jc/cli.py","jc/parsers/airport.py","tests/fixtures/osx-10.14.6/airport-I.out","tests/fixtures/osx-10.14.6/airport-s.out"]},"message":"added airport command parser","epoch":1583897752,"epoch_utc":null},{"commit":"e3a6c05a58a2451e70975d8fabf644c56603c73d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 20:26:53 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 20:26:53 2020 -0700","stats":{"files_changed":5,"insertions":64,"deletions":17,"files":["docs/parsers/timedatectl.md","jc/parsers/timedatectl.py","tests/fixtures/centos-7.7/timedatectl.json","tests/fixtures/ubuntu-18.04/timedatectl.json","tests/test_timedatectl.py"]},"message":"timedatectl fixes, tests, and fixtures for issue #42","epoch":1583897213,"epoch_utc":null},{"commit":"391d06f68d1f45d33590d5407d3a5e4f723af717","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 20:16:41 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 20:16:41 2020 -0700","stats":{"files_changed":7,"insertions":35,"deletions":35,"files":["README.md","docs/parsers/ntpq.md","jc/parsers/ntpq.py","tests/fixtures/centos-7.7/ntpq-p.json","tests/fixtures/centos-7.7/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-p.json","tests/fixtures/ubuntu-18.04/ntpq-pn.json"]},"message":"change selection_state to state","epoch":1583896601,"epoch_utc":null},{"commit":"99804ea06e0c70e3a82ddc7f9c7a42343374d700","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 18:37:55 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 18:37:55 2020 -0700","stats":{"files_changed":6,"insertions":222,"deletions":0,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/timedatectl.md","jc/cli.py","jc/parsers/timedatectl.py"]},"message":"added timedatectl status parser","epoch":1583890675,"epoch_utc":null},{"commit":"51935deb2ad18e4ea3ca16954ce810354f6095a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 18:00:47 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 18:00:47 2020 -0700","stats":{"files_changed":2,"insertions":21,"deletions":0,"files":["tests/fixtures/centos-7.7/timedatectl.out","tests/fixtures/ubuntu-18.04/timedatectl.out"]},"message":"timedatectl test fixtures","epoch":1583888447,"epoch_utc":null},{"commit":"b24d0c3a475b88d9ccf1a8fe29715ee60972fcad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 18:00:26 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 18:00:26 2020 -0700","stats":{"files_changed":2,"insertions":34,"deletions":2,"files":["README.md","jc/parsers/ntpq.py"]},"message":"ntpq docs","epoch":1583888426,"epoch_utc":null},{"commit":"762a886d6fdf5c2ad21d81868d138fb32621ed1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 15:17:25 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 15:17:25 2020 -0700","stats":{"files_changed":8,"insertions":133,"deletions":0,"files":["tests/fixtures/centos-7.7/ntpq-p.json","tests/fixtures/centos-7.7/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-p.json","tests/fixtures/ubuntu-18.04/ntpq-p.out","tests/fixtures/ubuntu-18.04/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-pn.out","tests/fixtures/ubuntu-18.04/ntqp-p.out","tests/test_ntpq.py"]},"message":"add ntpq tests","epoch":1583878645,"epoch_utc":null},{"commit":"2c3e9ddfe47f56cd7edc2fdf6317f7ecec0b7918","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 14:18:55 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 14:18:55 2020 -0700","stats":{"files_changed":7,"insertions":543,"deletions":0,"files":["changelog.txt","docgen.sh","docs/parsers/ntpq.md","jc/cli.py","jc/parsers/ntpq.py","tests/fixtures/centos-7.7/ntpq-p.out","tests/fixtures/centos-7.7/ntpq-pn.out"]},"message":"add ntpq parser for issue #31","epoch":1583875135,"epoch_utc":null},{"commit":"c7cd2b63c8f24e9d17c458880fe401d8032395ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 9 11:46:17 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 9 11:46:17 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":91,"files":["tests/fixtures/generic/oscar_age_male.csv"]},"message":"delete unused test file","epoch":1583779577,"epoch_utc":null},{"commit":"f0528ea83112e71ff51c89be27fc9bbdfbbf1951","merge":"b5eaff2 5bc5596","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:54:13 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Mar 8 14:54:13 2020 -0700","message":"Merge pull request #45 from kellyjonbrazil/dev\n\nDev v1.8.1","epoch":1583704453,"epoch_utc":null},{"commit":"5bc5596f604fb87dffbfdf44ce2395b16bf01297","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:49:23 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 8 14:49:23 2020 -0700","stats":{"files_changed":4,"insertions":17,"deletions":4,"files":["changelog.txt","jc/cli.py","setup.py","tests/test_ls.py"]},"message":"version bump to 1.8.1","epoch":1583704163,"epoch_utc":null},{"commit":"2c27ac46be803b583caf82c1765bd0c35cee8bc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:43:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 8 14:43:51 2020 -0700","stats":{"files_changed":2,"insertions":2454,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-lR-empty-folder.json","tests/fixtures/osx-10.14.6/ls-lR-empty-folder.out"]},"message":"add ls test fixtures","epoch":1583703831,"epoch_utc":null},{"commit":"caad840153e40dc660a2d5e06a96f3451fef25f9","merge":"aff86ae 65bd7e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:19:37 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Mar 8 14:19:37 2020 -0700","message":"Merge pull request #44 from philippeitis/patch-5\n\nMove core magic() logic into seperate function for testability, minor tweaks","epoch":1583702377,"epoch_utc":null},{"commit":"65bd7e2904016141c1ed53cdd437865c66d7628e","merge":"17b6efe c3d7d7d","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Sun Mar 8 14:10:35 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Mar 8 14:10:35 2020 -0700","message":"Merge pull request #1 from kellyjonbrazil/pr/44\n\nMerge changes","epoch":1583701835,"epoch_utc":null},{"commit":"c3d7d7db12d4870fc4499e0e3445d85ae89f2aea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:03:08 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 8 14:03:08 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"removed whitespace","epoch":1583701388,"epoch_utc":null},{"commit":"56053103625af6fb7fa749fc5bc3dbdc62fc223c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:02:54 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 8 14:02:54 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":4,"files":["tests/test_cli.py"]},"message":"added tests, removed os import, changed to 'assertEqual'","epoch":1583701374,"epoch_utc":null},{"commit":"17b6efe82e6a558353b011c543489eaaf3a6d3ac","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Sun Mar 8 13:35:01 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Mar 8 13:35:01 2020 -0700","stats":{"files_changed":1,"insertions":14,"deletions":0,"files":["tests/test_cli.py"]},"message":"Create basic tests for generate_magic_commands()","epoch":1583699701,"epoch_utc":null},{"commit":"a032ae56ae7d247e00415267b65b2a8b80a3302e","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Sun Mar 8 13:26:15 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Mar 8 13:26:15 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"Pass args to generate_magic_command() to allow testing.","epoch":1583699175,"epoch_utc":null},{"commit":"eab2f4b0566b4c76db661cbfa99a56a6bf8d6541","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Sun Mar 8 13:20:38 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Mar 8 13:20:38 2020 -0700","stats":{"files_changed":1,"insertions":33,"deletions":19,"files":["jc/cli.py"]},"message":"Move core magic() logic into seperate function for testability, minor tweaks.\n\nWe only care about the command when testing magic() - by moving that out, we can easily test the command. I modified the code to return a boolean signalling that the command is valid, and the command itself to maintain the original functionality.\n\nI also made some small tweaks (removed a list() call, fixed a possible bug with no arguments., moved magic_dict instantiation past the fast path checks to avoid making a dict if not needed.)","epoch":1583698838,"epoch_utc":null},{"commit":"aff86ae6c71abfe1cbdba5c574a5f3707292ec19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 12:58:26 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 8 12:58:26 2020 -0700","stats":{"files_changed":1,"insertions":29,"deletions":39,"files":["jc/cli.py"]},"message":"reimpliment magic() based on the dictionary approach suggested by philippeitis","epoch":1583697506,"epoch_utc":null},{"commit":"7ece9ddc1a37551cdaaac50f37a48e6d98b18bf4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 7 17:26:42 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Mar 7 17:26:42 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"version bump ls","epoch":1583630802,"epoch_utc":null},{"commit":"7cd048e839a7cc8404fd5abc153a3d315c207819","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 7 17:25:10 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Mar 7 17:25:10 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update","epoch":1583630710,"epoch_utc":null},{"commit":"1e22f610a33903e8525d35a18b1dcf760a93791e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 7 17:22:08 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Mar 7 17:22:08 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/ls.py"]},"message":"fix for osx - doesn't print 'total xx' line if empty directory (issue #40)","epoch":1583630528,"epoch_utc":null},{"commit":"5249c972ae25e9b289a2667bf471aad5e58c70a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 6 12:09:20 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 6 12:09:20 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["changelog.txt"]},"message":"add to changelog","epoch":1583525360,"epoch_utc":null},{"commit":"fd45f856a050f6c56a7a6b50b97b3d8c4de28af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 6 12:09:09 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 6 12:09:09 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/history.py"]},"message":"import jc.utils instead of jc","epoch":1583525349,"epoch_utc":null},{"commit":"c8ab40cd33b14a3a1937ecf64bb23e282f5bb921","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 5 09:19:58 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 5 09:19:58 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"]},"message":"ignore .github folder","epoch":1583428798,"epoch_utc":null},{"commit":"b2c872925b37254dac74578c1803b4127f8411c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 19:47:03 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 4 19:47:03 2020 -0800","stats":{"files_changed":20,"insertions":208,"deletions":220,"files":["tests/test_ls.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_passwd.py","tests/test_pip_list.py","tests/test_ps.py","tests/test_route.py","tests/test_shadow.py","tests/test_ss.py","tests/test_systemctl_lj.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py","tests/test_who.py","tests/test_xml.py","tests/test_yaml.py"]},"message":"add utf-8 encoding for testing on Windows","epoch":1583380023,"epoch_utc":null},{"commit":"f48e229202f8ab1ebfa502ca57bb31cf673c7a62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 19:40:32 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 4 19:40:32 2020 -0800","stats":{"files_changed":21,"insertions":192,"deletions":192,"files":["tests/test_arp.py","tests/test_blkid.py","tests/test_crontab.py","tests/test_crontab_u.py","tests/test_csv.py","tests/test_df.py","tests/test_dig.py","tests/test_du.py","tests/test_env.py","tests/test_free.py","tests/test_fstab.py","tests/test_group.py","tests/test_gshadow.py","tests/test_history.py","tests/test_hosts.py","tests/test_id.py","tests/test_ifconfig.py","tests/test_ini.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_last.py"]},"message":"utf-8 open for windows tests","epoch":1583379632,"epoch_utc":null},{"commit":"799fec92c39b1ff0696c6ebb182c4bef66b86e56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 19:33:45 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 4 19:33:45 2020 -0800","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["tests/test_pip_show.py","tests/test_systemctl.py"]},"message":"utf-8 for windows support","epoch":1583379225,"epoch_utc":null},{"commit":"87a41c2fcaa395f108b5a5126ed77f7cc7fe5d6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 19:30:30 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 4 19:30:30 2020 -0800","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["tests/test_lsblk.py","tests/test_stat.py"]},"message":"add utf-8 to open function","epoch":1583379030,"epoch_utc":null},{"commit":"7f85de0c46cda95d57b9677ba0ca3ea59690e502","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 19:28:21 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 19:28:21 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"add windows-latest","epoch":1583378901,"epoch_utc":null},{"commit":"13661b19934a74417713e98e3e1e4df6bb0f29ad","merge":"5f798d6 51d5c38","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 16:54:26 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 16:54:26 2020 -0800","message":"Merge pull request #37 from philippeitis/continuous_integration\n\nEnable Continuous Integration with GitHub Actions.","epoch":1583369666,"epoch_utc":null},{"commit":"51d5c3892d6ff1e2e6ac7c4f3e496e7d9ed4b6a7","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 16:21:06 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 16:21:06 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"Remove Windows tests, due to lack of support.","epoch":1583367666,"epoch_utc":null},{"commit":"e4eab4641ac15220f2787c5d27b443ab8c718b86","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 16:17:58 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 16:17:58 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/blkid.py"]},"message":"Change line in blkid.py to trigger CI","epoch":1583367478,"epoch_utc":null},{"commit":"9b148e0ba37e18749d95608e1bac6c090ab83ee2","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 16:16:19 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 16:16:19 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["requirements.txt"]},"message":"Add requirements.txt","epoch":1583367379,"epoch_utc":null},{"commit":"de28932650d5027e2781011f1243b89f053b241d","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 16:14:03 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 16:14:03 2020 -0800","stats":{"files_changed":1,"insertions":7,"deletions":6,"files":["jc/parsers/arp.py"]},"message":"Consolidate dictionary into creation, trigger CI","epoch":1583367243,"epoch_utc":null},{"commit":"5f798d603e461d2de5adf74662ba4d4b121f28f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 16:11:14 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 4 16:11:14 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/history.py"]},"message":"version bump and ack to philippeitis","epoch":1583367074,"epoch_utc":null},{"commit":"a0757b2dd3fc0f3e26622941d93bd909dae0a1f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 16:07:53 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 4 16:07:53 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":5,"files":["jc/parsers/foo.py"]},"message":"optimize line parsing","epoch":1583366873,"epoch_utc":null},{"commit":"498d51b4e802cb40cac58aae1eff1f723bbbd896","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 16:07:32 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 16:07:32 2020 -0800","stats":{"files_changed":1,"insertions":31,"deletions":0,"files":[".github/workflows/pythonapp.yml"]},"message":"Enable Continuous Integration with GitHub Actions.\n\nThis automatically runs unit tests on various operating systems and Python versions when Python files are modified to ensure that functionality remains correct.","epoch":1583366852,"epoch_utc":null},{"commit":"b06b6bae3f64f591c9075812dc1b632ef6d2da37","merge":"6aa2d5a 0652768","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 16:04:05 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 16:04:05 2020 -0800","message":"Merge pull request #36 from philippeitis/patch-3\n\nSimplify process() in history.py, avoid list allocation in parse()","epoch":1583366645,"epoch_utc":null},{"commit":"b5eaff21372a58aefb66e5afc5e863db8355fee1","merge":"d75c406 c01bcd3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 15:33:13 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 15:33:13 2020 -0800","message":"Merge pull request #35 from kellyjonbrazil/revert-34-patch-3\n\nRevert \"Simplify process() in history.py, avoid list allocation in parse()\"","epoch":1583364793,"epoch_utc":null},{"commit":"c01bcd3734382a0c388d9f4041fc888171ca7675","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 15:32:23 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 15:32:23 2020 -0800","stats":{"files_changed":1,"insertions":25,"deletions":12,"files":["jc/parsers/history.py"]},"message":"Revert \"Simplify process() in history.py, avoid list allocation in parse()\"","epoch":1583364743,"epoch_utc":null},{"commit":"d75c4068caaf4adbe9a39fa452ae867421053673","merge":"d96b3a6 0652768","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 15:31:55 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 15:31:55 2020 -0800","message":"Merge pull request #34 from philippeitis/patch-3\n\nSimplify process() in history.py, avoid list allocation in parse()","epoch":1583364715,"epoch_utc":null},{"commit":"6aa2d5a3d26f9f00c3334928f6f0e501860433da","merge":"69576f6 a63408c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 15:28:09 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 15:28:09 2020 -0800","message":"Merge pull request #33 from philippeitis/patch-2\n\nHandle case where only options are passed.","epoch":1583364489,"epoch_utc":null},{"commit":"065276805f0f2dd23a6382f0120ca07e9eae116f","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 13:35:31 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 13:35:31 2020 -0800","stats":{"files_changed":1,"insertions":12,"deletions":25,"files":["jc/parsers/history.py"]},"message":"Simplify process() in history.py, avoid list allocation in parse()","epoch":1583357731,"epoch_utc":null},{"commit":"a63408c8cf3f99646be2b375f651d6cf417f7ae0","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 13:16:35 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 13:16:35 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/cli.py"]},"message":"Handle case where only options are passed.","epoch":1583356595,"epoch_utc":null},{"commit":"69576f6bfae073196627a0a39b5ececb8666d25c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 12:03:40 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 4 12:03:40 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/cli.py"]},"message":"minor sytax fixes","epoch":1583352220,"epoch_utc":null},{"commit":"19845624e2996da4653efc2f312aceb514feaf5c","merge":"d96b3a6 22ff296","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 11:59:29 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 11:59:29 2020 -0800","message":"Merge pull request #32 from philippeitis/patch-1\n\nSimplify main(), magic() methods.","epoch":1583351969,"epoch_utc":null},{"commit":"22ff2964e9889587711e779ac24f8f8034212f5e","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 10:33:42 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 10:33:42 2020 -0800","stats":{"files_changed":1,"insertions":62,"deletions":75,"files":["jc/cli.py"]},"message":"Simplify main(), magic() methods.","epoch":1583346822,"epoch_utc":null},{"commit":"d96b3a65a98bc135d21d4feafc0a43317b5a11fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 08:30:52 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 4 08:30:52 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1583339452,"epoch_utc":null},{"commit":"4989445ef4bb8919d9b3b95e2fcee77ca7692aec","merge":"53ee2c3 6770892","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 11:46:09 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Mar 3 11:46:09 2020 -0800","message":"Merge pull request #30 from kellyjonbrazil/dev\n\nDev v1.8.0","epoch":1583264769,"epoch_utc":null},{"commit":"6770892acd49aced225dbccf39290f33522c9001","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 11:37:59 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 3 11:37:59 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]},"message":"add release notes link","epoch":1583264279,"epoch_utc":null},{"commit":"d4eba8740fc325756f3db96ab37a5383540cbeff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 11:08:52 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 3 11:08:52 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"release date 3/3","epoch":1583262532,"epoch_utc":null},{"commit":"9f607605605e47990f97ccfd48fde19a14e036e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 10:54:27 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 3 10:54:27 2020 -0800","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["tests/test_group.py","tests/test_gshadow.py"]},"message":"add group and gshadow tests","epoch":1583261667,"epoch_utc":null},{"commit":"0a8f8ac934f040141e6a4eec8cf7170e1ca73294","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:55:43 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 3 09:55:43 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"add group and gshadow parsers","epoch":1583258143,"epoch_utc":null},{"commit":"6ae24c82447bcff606e7027dd01b916293b49584","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:55:17 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 3 09:55:17 2020 -0800","stats":{"files_changed":10,"insertions":274,"deletions":0,"files":["tests/fixtures/centos-7.7/group.json","tests/fixtures/centos-7.7/group.out","tests/fixtures/centos-7.7/gshadow.json","tests/fixtures/centos-7.7/gshadow.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/group.json","tests/fixtures/osx-10.14.6/group.out","tests/fixtures/ubuntu-18.04/group.json","tests/fixtures/ubuntu-18.04/group.out","tests/fixtures/ubuntu-18.04/gshadow.json"]},"message":"add group and gshadow test fixtures","epoch":1583258117,"epoch_utc":null},{"commit":"d3679082a8c5cff76eb7de67c33fe716a1402182","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:36:16 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 3 09:36:16 2020 -0800","stats":{"files_changed":1,"insertions":64,"deletions":0,"files":["README.md"]},"message":"add group and gshadow parsers","epoch":1583256976,"epoch_utc":null},{"commit":"fb08b42dca135705a3759435335d95c898d47f60","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:32:56 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 3 09:32:56 2020 -0800","stats":{"files_changed":2,"insertions":21,"deletions":21,"files":["docs/parsers/group.md","jc/parsers/group.py"]},"message":"change 'group_list' to 'members'","epoch":1583256776,"epoch_utc":null},{"commit":"4aeaa9f42a88bf4e05c8780a35cc8c4d83c9b842","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:32:25 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 3 09:32:25 2020 -0800","stats":{"files_changed":5,"insertions":316,"deletions":0,"files":["docgen.sh","docs/parsers/gshadow.md","jc/cli.py","jc/parsers/gshadow.py","tests/fixtures/ubuntu-18.04/gshadow.out"]},"message":"add /etc/gshadow parser","epoch":1583256745,"epoch_utc":null},{"commit":"5f5693da048cb4739dc56500c672dc8fbccaaf32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:07:28 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 3 09:07:28 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["docs/parsers/csv.md"]},"message":"spelling fix","epoch":1583255248,"epoch_utc":null},{"commit":"5eb0f61727f92a84fb3620e13db072167ef552ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:07:09 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 3 09:07:09 2020 -0800","stats":{"files_changed":4,"insertions":333,"deletions":0,"files":["docgen.sh","docs/parsers/group.md","jc/cli.py","jc/parsers/group.py"]},"message":"add /etc/group file parser","epoch":1583255229,"epoch_utc":null},{"commit":"958e998991b1cc61dc1dc341b90cd53f4691cd43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 17:15:05 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 2 17:15:05 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/csv.py"]},"message":"formatting","epoch":1583198105,"epoch_utc":null},{"commit":"b78c1509f67fb76d17ac97193a2851d8d9e17f62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 15:06:25 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 2 15:06:25 2020 -0800","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/csv.py"]},"message":"try/except dialect detection","epoch":1583190385,"epoch_utc":null},{"commit":"ce184d4d57faa3f1bca5bcaa02da7a5a5d995eb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 15:05:56 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 2 15:05:56 2020 -0800","stats":{"files_changed":20,"insertions":24054,"deletions":0,"files":["tests/fixtures/generic/csv-biostats.csv","tests/fixtures/generic/csv-biostats.json","tests/fixtures/generic/csv-cities.csv","tests/fixtures/generic/csv-cities.json","tests/fixtures/generic/csv-deniro.csv","tests/fixtures/generic/csv-deniro.json","tests/fixtures/generic/csv-example.csv","tests/fixtures/generic/csv-example.json","tests/fixtures/generic/csv-flyrna.json","tests/fixtures/generic/csv-flyrna.tsv","tests/fixtures/generic/csv-flyrna2.json","tests/fixtures/generic/csv-flyrna2.tsv","tests/fixtures/generic/csv-homes-pipe.csv","tests/fixtures/generic/csv-homes-pipe.json","tests/fixtures/generic/csv-homes.csv","tests/fixtures/generic/csv-homes.json","tests/fixtures/generic/csv-insurance.csv","tests/fixtures/generic/csv-insurance.json","tests/fixtures/generic/oscar_age_male.csv","tests/test_csv.py"]},"message":"add csv parser tests","epoch":1583190356,"epoch_utc":null},{"commit":"b4c3714ced9ee5cc6a7ef0c59a43cf85e1cb9824","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 14:10:15 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 2 14:10:15 2020 -0800","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["README.md"]},"message":"removed [OPTIONS] PARSER syntax. still works but prefer the PARSER [OPTIONS] syntax for better performance","epoch":1583187015,"epoch_utc":null},{"commit":"5b7dfa043864f1a3f34aa4ef5c6554a2dfe185f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 14:07:56 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 2 14:07:56 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"formatting","epoch":1583186876,"epoch_utc":null},{"commit":"391a3884765780497dc34e0e9938ff5032c81291","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 14:07:29 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 2 14:07:29 2020 -0800","stats":{"files_changed":2,"insertions":49,"deletions":0,"files":["README.md","changelog.txt"]},"message":"doc update","epoch":1583186849,"epoch_utc":null},{"commit":"d9c4e2ed4c0f908f4b63c2376b53ddfd32a0fae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 14:03:58 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 2 14:03:58 2020 -0800","stats":{"files_changed":4,"insertions":241,"deletions":0,"files":["docgen.sh","docs/parsers/csv.md","jc/cli.py","jc/parsers/csv.py"]},"message":"add csv file parser","epoch":1583186638,"epoch_utc":null},{"commit":"0c42db38b102987629e40cee2716b826161e6e94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 10:30:12 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 2 10:30:12 2020 -0800","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/who.md","jc/parsers/who.py"]},"message":"doc update","epoch":1583173812,"epoch_utc":null},{"commit":"2f9be8bf33f8be5651d06da9d316f7894606df19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 08:32:42 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 2 08:32:42 2020 -0800","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/cli.py"]},"message":"simplify usage","epoch":1583166762,"epoch_utc":null},{"commit":"e8c00155e861b9eedfdf37a22912271bec581d62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 07:43:45 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 2 07:43:45 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"add -b to warning message","epoch":1583163825,"epoch_utc":null},{"commit":"cc88fdd9ee3951d7ef2aa881cc12f0b7f96aef86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 21:17:50 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 21:17:50 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"update example","epoch":1583126270,"epoch_utc":null},{"commit":"d9de11ef1d846a9625dad0adb962b864404c90c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 21:16:57 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 21:16:57 2020 -0800","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["README.md"]},"message":"add another who example","epoch":1583126217,"epoch_utc":null},{"commit":"0ceda97d0968b67b70cdbb68f7a62657e79c9935","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 19:03:27 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 19:03:27 2020 -0800","stats":{"files_changed":1,"insertions":88,"deletions":0,"files":["tests/test_who.py"]},"message":"who parser tests","epoch":1583118207,"epoch_utc":null},{"commit":"d0dec92ba84640ddc40da7c6faa6568b76757e04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 18:57:51 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 18:57:51 2020 -0800","stats":{"files_changed":12,"insertions":36,"deletions":0,"files":["tests/fixtures/centos-7.7/who-a.json","tests/fixtures/centos-7.7/who-a.out","tests/fixtures/centos-7.7/who.json","tests/fixtures/centos-7.7/who.out","tests/fixtures/osx-10.14.6/who-a.json","tests/fixtures/osx-10.14.6/who-a.out","tests/fixtures/osx-10.14.6/who.json","tests/fixtures/osx-10.14.6/who.out","tests/fixtures/ubuntu-18.04/who-a.json","tests/fixtures/ubuntu-18.04/who-a.out","tests/fixtures/ubuntu-18.04/who.json","tests/fixtures/ubuntu-18.04/who.out"]},"message":"add who test fixtures","epoch":1583117871,"epoch_utc":null},{"commit":"d420c008d8aaa0879fa5a3f236d81acb506376c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 17:52:14 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 17:52:14 2020 -0800","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["jc/parsers/who.py"]},"message":"fix for pts lines with no user info","epoch":1583113934,"epoch_utc":null},{"commit":"f0b32db4333477e22cc40de62cf026a6a7aa2eb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 17:39:02 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 17:39:02 2020 -0800","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","docs/parsers/who.md"]},"message":"who doc update","epoch":1583113142,"epoch_utc":null},{"commit":"bc838eda591473d32b11a885e60ef653925739d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 17:38:51 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 17:38:51 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/parsers/who.py"]},"message":"fix output for non-extended","epoch":1583113131,"epoch_utc":null},{"commit":"afe55b6af07b74816d33d9555ffaa1c1921dd27a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 17:07:28 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 17:07:28 2020 -0800","stats":{"files_changed":1,"insertions":46,"deletions":0,"files":["README.md"]},"message":"add who parser","epoch":1583111248,"epoch_utc":null},{"commit":"dd3a3ac302d7b35beef1181e74aed0faf96fd3e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 17:04:06 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 17:04:06 2020 -0800","stats":{"files_changed":4,"insertions":255,"deletions":9,"files":["changelog.txt","docgen.sh","docs/parsers/who.md","jc/parsers/who.py"]},"message":"doc update and process pid integers","epoch":1583111046,"epoch_utc":null},{"commit":"f9982a79474c1838f37fc0ff88437980b228d7a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 16:49:52 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 16:49:52 2020 -0800","stats":{"files_changed":1,"insertions":11,"deletions":2,"files":["jc/parsers/who.py"]},"message":"fixes for from and comment fields","epoch":1583110192,"epoch_utc":null},{"commit":"07c1be9e9ad9f62cf76c23788152de8f3530ee16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 16:30:04 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 16:30:04 2020 -0800","stats":{"files_changed":2,"insertions":170,"deletions":0,"files":["jc/cli.py","jc/parsers/who.py"]},"message":"add who command parser","epoch":1583109004,"epoch_utc":null},{"commit":"f832b88755bfbd3878ec402e603180e6825279be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 10:17:47 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 10:17:47 2020 -0800","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["tests/test_passwd.py","tests/test_shadow.py"]},"message":"add passwd and shadow tests","epoch":1583086667,"epoch_utc":null},{"commit":"0fac757efca41db062b2f65acc727963c5fb353c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 12:25:41 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Feb 29 12:25:41 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"add passwd and shadow parsers","epoch":1583007941,"epoch_utc":null},{"commit":"fc15742065531152f3d5895042eeb806e33a192a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 12:25:22 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Feb 29 12:25:22 2020 -0800","stats":{"files_changed":10,"insertions":215,"deletions":0,"files":["tests/fixtures/centos-7.7/passwd.json","tests/fixtures/centos-7.7/passwd.out","tests/fixtures/centos-7.7/shadow.json","tests/fixtures/centos-7.7/shadow.out","tests/fixtures/osx-10.14.6/passwd.json","tests/fixtures/osx-10.14.6/passwd.out","tests/fixtures/ubuntu-18.04/passwd.json","tests/fixtures/ubuntu-18.04/passwd.out","tests/fixtures/ubuntu-18.04/shadow.json","tests/fixtures/ubuntu-18.04/shadow.out"]},"message":"passwd and shadow test fixtures","epoch":1583007922,"epoch_utc":null},{"commit":"6f2466a1319eaa4256ae7a2a0f23b3ff37882d37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 11:56:12 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Feb 29 11:56:12 2020 -0800","stats":{"files_changed":1,"insertions":73,"deletions":0,"files":["README.md"]},"message":"update readme with /etc/passwd and /etc/shadow file parsers","epoch":1583006172,"epoch_utc":null},{"commit":"4b90e22f0a9c6790bca62c8314945a7ffc6e267b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 11:50:46 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Feb 29 11:50:46 2020 -0800","stats":{"files_changed":2,"insertions":137,"deletions":9,"files":["docs/parsers/shadow.md","jc/parsers/shadow.py"]},"message":"doc update","epoch":1583005846,"epoch_utc":null},{"commit":"c4935687853fb3b079ae42614793cdafe68e124e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 11:46:38 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Feb 29 11:46:38 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/passwd.md","jc/parsers/passwd.py"]},"message":"doc fix","epoch":1583005598,"epoch_utc":null},{"commit":"1cdf004b7728901dc137e57b0c8994edfdd6d417","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 11:46:24 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Feb 29 11:46:24 2020 -0800","stats":{"files_changed":4,"insertions":190,"deletions":0,"files":["docgen.sh","docs/parsers/shadow.md","jc/cli.py","jc/parsers/shadow.py"]},"message":"add /etc/shadow parser","epoch":1583005584,"epoch_utc":null},{"commit":"a4ea50426184d30cbe849a8f80bfd5c975075c9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 11:33:14 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Feb 29 11:33:14 2020 -0800","stats":{"files_changed":4,"insertions":303,"deletions":0,"files":["docgen.sh","docs/parsers/passwd.md","jc/cli.py","jc/parsers/passwd.py"]},"message":"add /etc/passwd parser","epoch":1583004794,"epoch_utc":null},{"commit":"4c2c234c3bf68d1aac66bd4d1f22b9f97e99128d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 15:15:24 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 28 15:15:24 2020 -0800","stats":{"files_changed":16,"insertions":673,"deletions":0,"files":["tests/fixtures/centos-7.7/last-w.json","tests/fixtures/centos-7.7/last-w.out","tests/fixtures/centos-7.7/last.json","tests/fixtures/centos-7.7/last.out","tests/fixtures/centos-7.7/lastb.json","tests/fixtures/centos-7.7/lastb.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/last.json","tests/fixtures/osx-10.14.6/last.out","tests/fixtures/ubuntu-18.04/last-w.json","tests/fixtures/ubuntu-18.04/last-w.out","tests/fixtures/ubuntu-18.04/last.json","tests/fixtures/ubuntu-18.04/last.out","tests/fixtures/ubuntu-18.04/lastb.json","tests/fixtures/ubuntu-18.04/lastb.out","tests/test_last.py"]},"message":"add last and lastb tests","epoch":1582931724,"epoch_utc":null},{"commit":"3d4c0f3e89dab6496ff74df350e3238d6625933c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 14:50:29 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 28 14:50:29 2020 -0800","stats":{"files_changed":22,"insertions":285,"deletions":0,"files":["tests/fixtures/centos-7.7/blkid-ip-multi.json","tests/fixtures/centos-7.7/blkid-ip-multi.out","tests/fixtures/centos-7.7/blkid-ip-udev-multi.json","tests/fixtures/centos-7.7/blkid-ip-udev-multi.out","tests/fixtures/centos-7.7/blkid-ip-udev.json","tests/fixtures/centos-7.7/blkid-ip-udev.out","tests/fixtures/centos-7.7/blkid-sda2.json","tests/fixtures/centos-7.7/blkid-sda2.out","tests/fixtures/centos-7.7/blkid.json","tests/fixtures/centos-7.7/blkid.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/blkid-ip-multi.json","tests/fixtures/ubuntu-18.04/blkid-ip-multi.out",".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.json",".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.out","tests/fixtures/ubuntu-18.04/blkid-ip-udev.json","tests/fixtures/ubuntu-18.04/blkid-ip-udev.out","tests/fixtures/ubuntu-18.04/blkid-sda2.json","tests/fixtures/ubuntu-18.04/blkid-sda2.out","tests/fixtures/ubuntu-18.04/blkid.json","tests/fixtures/ubuntu-18.04/blkid.out","tests/test_blkid.py"]},"message":"add blkid tests","epoch":1582930229,"epoch_utc":null},{"commit":"52fad02903468c05d2422a340ad8dbcdf18ed475","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 13:31:38 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 28 13:31:38 2020 -0800","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"doc update","epoch":1582925498,"epoch_utc":null},{"commit":"9dcabc057c40e345971a08474b5b886e6b60a8de","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 10:57:14 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 28 10:57:14 2020 -0800","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/blkid.py"]},"message":"support multi device udev output","epoch":1582916234,"epoch_utc":null},{"commit":"db8c1079ddc25922ab6a20d0f71fb19af38f8092","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 09:54:07 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 28 09:54:07 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/blkid.py"]},"message":"use maxsplit=1 in case there are multiple '=' delimiters","epoch":1582912447,"epoch_utc":null},{"commit":"8f954673abdbbd4d9b9da3eacc61b335b4909f89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 09:07:36 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 28 09:07:36 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/blkid.py"]},"message":"use shlex split for values within quotations that have spaces","epoch":1582909656,"epoch_utc":null},{"commit":"79522d1c7dd4dec15b75b06dda002752f7d97e36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 08:51:48 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 28 08:51:48 2020 -0800","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"doc fixes","epoch":1582908708,"epoch_utc":null},{"commit":"a18bf030794efef125c70a32fe82855e47649b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 08:50:35 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 28 08:50:35 2020 -0800","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/parsers/last.py","jc/parsers/ls.py"]},"message":"use raw strings for regular expressions","epoch":1582908635,"epoch_utc":null},{"commit":"c02b6b5d827d26b43db0a3457124714aa2dbbc98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 21:21:19 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 21:21:19 2020 -0800","stats":{"files_changed":3,"insertions":81,"deletions":1,"files":["README.md","changelog.txt","setup.py"]},"message":"doc updates","epoch":1582867279,"epoch_utc":null},{"commit":"f99b4232848b0d868804acc4125836bfcf475bba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 21:04:24 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 21:04:24 2020 -0800","stats":{"files_changed":2,"insertions":134,"deletions":29,"files":["docs/parsers/blkid.md","jc/parsers/blkid.py"]},"message":"doc update","epoch":1582866264,"epoch_utc":null},{"commit":"d7d9d45d4fba89e74f7490c463eb26bf20a5d127","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:59:09 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 20:59:09 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/blkid.py"]},"message":"add missing comma","epoch":1582865949,"epoch_utc":null},{"commit":"90065ec0cdc8c5abc13bc0027f63658dacf3cfb2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:57:22 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 20:57:22 2020 -0800","stats":{"files_changed":1,"insertions":31,"deletions":26,"files":["jc/parsers/blkid.py"]},"message":"add more integers","epoch":1582865842,"epoch_utc":null},{"commit":"51157ebb867a48332c768bf3086614944aebdb62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:49:14 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 20:49:14 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/blkid.py"]},"message":"another devname fix","epoch":1582865354,"epoch_utc":null},{"commit":"96d95c79ca0938e326f55f858f8153df9cb49e44","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:47:07 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 20:47:07 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/blkid.py"]},"message":"devname fix","epoch":1582865227,"epoch_utc":null},{"commit":"e5da34c23306463e8707b15676db0ca53bf66757","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:41:06 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 20:41:06 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/blkid.py"]},"message":"check if devname key exists before renaming","epoch":1582864866,"epoch_utc":null},{"commit":"f09d657f7728242947db3dc63ff6779d08c37866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:36:19 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 20:36:19 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/blkid.py"]},"message":"rename devname to device","epoch":1582864579,"epoch_utc":null},{"commit":"0f4b0189f54dc0b3622cd407c5565e53ea111379","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:31:17 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 20:31:17 2020 -0800","stats":{"files_changed":1,"insertions":35,"deletions":3,"files":["jc/parsers/blkid.py"]},"message":"process integer values","epoch":1582864277,"epoch_utc":null},{"commit":"4666042abb3142e2cfb518db9ffe22d9e608e090","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:21:02 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 20:21:02 2020 -0800","stats":{"files_changed":4,"insertions":216,"deletions":0,"files":["docgen.sh","docs/parsers/blkid.md","jc/cli.py","jc/parsers/blkid.py"]},"message":"add blkid parser","epoch":1582863662,"epoch_utc":null},{"commit":"027d544c2bb778adc0ee9463832f19b10e099a0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 16:08:56 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 16:08:56 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"]},"message":"add last and lastb parser","epoch":1582848536,"epoch_utc":null},{"commit":"f1967d0138d27bde864c2400aa75baa8a39bbfde","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 16:08:39 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 16:08:39 2020 -0800","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/last.py"]},"message":"system_boot fix","epoch":1582848519,"epoch_utc":null},{"commit":"c1d896027dd1ce021e048b3e77eab24ff59d08bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 15:58:12 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 15:58:12 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/last.py"]},"message":"fix system_boot tty","epoch":1582847892,"epoch_utc":null},{"commit":"5c2d2a66187d32d62b31b7c7f13e502fdb7f9635","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 15:44:36 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 15:44:36 2020 -0800","stats":{"files_changed":3,"insertions":190,"deletions":6,"files":["docgen.sh","docs/parsers/last.md","jc/parsers/last.py"]},"message":"process function and docs","epoch":1582847076,"epoch_utc":null},{"commit":"997b269b0b7e53a456e2a0bd997ead6c2ae843bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 15:26:09 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 15:26:09 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/last.py"]},"message":"btmp fix","epoch":1582845969,"epoch_utc":null},{"commit":"61257e7525c25827cb8057ed5c612e54ea9b9637","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 15:14:43 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 15:14:43 2020 -0800","stats":{"files_changed":2,"insertions":119,"deletions":1,"files":["jc/cli.py","jc/parsers/last.py"]},"message":"add last and lastb parser","epoch":1582845283,"epoch_utc":null},{"commit":"53ee2c36310cb84390ef96644aee6871769151c9","merge":"2ad3167 8bfa0bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 10:59:14 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Feb 27 10:59:14 2020 -0800","message":"Merge pull request #29 from kellyjonbrazil/dev\n\nDev v1.7.5","epoch":1582829954,"epoch_utc":null},{"commit":"8bfa0bddec9ff1c21972019467dcf5738ab3afd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 10:50:05 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 10:50:05 2020 -0800","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to 1.7.5","epoch":1582829405,"epoch_utc":null},{"commit":"ad61e6bc81177a2add7d052bf1ddec5f1b3f2976","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 10:48:09 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 10:48:09 2020 -0800","stats":{"files_changed":26,"insertions":598,"deletions":133,"files":["tests/fixtures/centos-7.7/ls-R-newlines.json","tests/fixtures/centos-7.7/ls-R-newlines.out","tests/fixtures/centos-7.7/ls-l-newlines.json","tests/fixtures/centos-7.7/ls-l-newlines.out","tests/fixtures/centos-7.7/ls-lR-newlines.json","tests/fixtures/centos-7.7/ls-lR-newlines.out","tests/fixtures/centos-7.7/ls-newlines.json","tests/fixtures/centos-7.7/ls-newlines.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/ls-R-newlines.json","tests/fixtures/osx-10.14.6/ls-R-newlines.out","tests/fixtures/osx-10.14.6/ls-l-newlines.json","tests/fixtures/osx-10.14.6/ls-l-newlines.out","tests/fixtures/osx-10.14.6/ls-lR-newlines.json","tests/fixtures/osx-10.14.6/ls-lR-newlines.out","tests/fixtures/osx-10.14.6/ls-newlines.json","tests/fixtures/osx-10.14.6/ls-newlines.out","tests/fixtures/ubuntu-18.04/ls-R-newlines.json","tests/fixtures/ubuntu-18.04/ls-R-newlines.out","tests/fixtures/ubuntu-18.04/ls-l-newlines.json","tests/fixtures/ubuntu-18.04/ls-l-newlines.out","tests/fixtures/ubuntu-18.04/ls-lR-newlines.json","tests/fixtures/ubuntu-18.04/ls-lR-newlines.out","tests/fixtures/ubuntu-18.04/ls-newlines.json","tests/fixtures/ubuntu-18.04/ls-newlines.out","tests/test_ls.py"]},"message":"add ls tests for filenames with newline characters","epoch":1582829289,"epoch_utc":null},{"commit":"873b5ba8acf599d083d6031b818d5fca83cbca9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 09:36:57 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 09:36:57 2020 -0800","stats":{"files_changed":1,"insertions":27,"deletions":31,"files":["README.md"]},"message":"move examples to bottom","epoch":1582825017,"epoch_utc":null},{"commit":"6ae50054e2e8c7ca730013b43062eedc230c0ad4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 20:30:44 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 24 20:30:44 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"readme update","epoch":1582605044,"epoch_utc":null},{"commit":"22a35f41bf9c404d3532611f5929143d04b10010","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 17:50:56 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 24 17:50:56 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/ls.py"]},"message":"move variables to top","epoch":1582595456,"epoch_utc":null},{"commit":"961696c963215a9dab56113ff89f21a6e9739df6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 17:47:31 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 24 17:47:31 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/ls.py"]},"message":"add a warning if newlines are detected in naked ls","epoch":1582595251,"epoch_utc":null},{"commit":"c7b7f1a5dcf77a1f4c23ef6bbf5683fd1a055f72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 17:24:56 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 24 17:24:56 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"fix for files with newlines in naked ls","epoch":1582593896,"epoch_utc":null},{"commit":"b5a0d650b128d8af81bb14dd5d007349529cb66f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 17:01:33 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 24 17:01:33 2020 -0800","stats":{"files_changed":1,"insertions":151,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-newlines.out"]},"message":"ls output with newlines","epoch":1582592493,"epoch_utc":null},{"commit":"573b27946474276592ee7494689ce9a88f5a05f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 17:01:12 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 24 17:01:12 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"fixup for filenames that start with a newline character","epoch":1582592472,"epoch_utc":null},{"commit":"116e07f1614b4a45eb58ffcfe20b5efa71c473a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 16:38:29 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 24 16:38:29 2020 -0800","stats":{"files_changed":1,"insertions":6,"deletions":7,"files":["jc/parsers/ls.py"]},"message":"fixes for multiple consecutive newlines and trailing newlines in filenames","epoch":1582591109,"epoch_utc":null},{"commit":"964868c8aff99edf37b0db41c7d16f8b84ac4704","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 15:19:43 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 24 15:19:43 2020 -0800","stats":{"files_changed":2,"insertions":21,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"add support for newlines in filenames (only with ls -l)","epoch":1582586383,"epoch_utc":null},{"commit":"c8dac32df8102c2b782e87d55bb95ca2d9490185","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 13:05:35 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 24 13:05:35 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"readme update","epoch":1582578335,"epoch_utc":null},{"commit":"72a0016bd833699c3819baa899f335f75b8c1943","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 20 15:38:45 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 20 15:38:45 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"use link to anchor for Parsers","epoch":1582241925,"epoch_utc":null},{"commit":"2ad316743460bb6620e7ede251e1dc2739b073fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 19 07:12:43 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 19 07:12:43 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update doc url","epoch":1582125163,"epoch_utc":null},{"commit":"ddabfaa05c63f886b17e5b4d37cd83fcfdb9b221","merge":"873771d f857523","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 19 07:05:29 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Feb 19 07:05:29 2020 -0800","message":"Merge pull request #25 from kellyjonbrazil/dev\n\nDev v1.7.4","epoch":1582124729,"epoch_utc":null},{"commit":"f857523ca756864211b6b18af5a8886e5db200bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 19 07:02:50 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 19 07:02:50 2020 -0800","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"bump to version 1.7.4","epoch":1582124570,"epoch_utc":null},{"commit":"00d53858e820f00ba015bc25629100c8e5495221","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 22:57:15 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 22:57:15 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add note about aliases not being supported","epoch":1582009035,"epoch_utc":null},{"commit":"c008167e660929a91606bb96498cdc113e815f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 22:48:44 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 22:48:44 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"add time-style=full-iso option to doc","epoch":1582008524,"epoch_utc":null},{"commit":"102344a041e9e0aff8b6d9db1873ba1064f7e895","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 22:32:07 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 22:32:07 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/ls.py"]},"message":"formatting","epoch":1582007527,"epoch_utc":null},{"commit":"c865298ef3613fe6ce17f41c15209a69940af1ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 22:29:39 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 22:29:39 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"remove unnecessary enumerate in for loop","epoch":1582007379,"epoch_utc":null},{"commit":"6ac03faf939bcda8930a48a5e832b557813e2129","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 18:58:07 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 18:58:07 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"Revert \"add ubuntu and centos default ls aliases to magic_commands\"\n\nThis reverts commit 49c2701743706b6cbf0e52b2c7f275e301315189.","epoch":1581994687,"epoch_utc":null},{"commit":"49c2701743706b6cbf0e52b2c7f275e301315189","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 18:55:03 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 18:55:03 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"add ubuntu and centos default ls aliases to magic_commands","epoch":1581994503,"epoch_utc":null},{"commit":"d1a271b08e64b42be8cec11377b0e18435a0caec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 18:33:55 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 18:33:55 2020 -0800","stats":{"files_changed":21,"insertions":35333,"deletions":1374,"files":["tests/fixtures/centos-7.7/ls-R.json","tests/fixtures/centos-7.7/ls-R.out","tests/fixtures/centos-7.7/ls-alR.json","tests/fixtures/centos-7.7/ls-alR.out","tests/fixtures/centos-7.7/ls-glob.json","tests/fixtures/centos-7.7/ls-glob.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/ls-R.json","tests/fixtures/osx-10.14.6/ls-R.out","tests/fixtures/osx-10.14.6/ls-alR.json","tests/fixtures/osx-10.14.6/ls-alR.out","tests/fixtures/osx-10.14.6/ls-glob.json","tests/fixtures/osx-10.14.6/ls-glob.out","tests/fixtures/ubuntu-18.04/ls-R.json","tests/fixtures/ubuntu-18.04/ls-R.out","tests/fixtures/ubuntu-18.04/ls-alR.json","tests/fixtures/ubuntu-18.04/ls-alR.out","tests/fixtures/ubuntu-18.04/ls-glob.json","tests/fixtures/ubuntu-18.04/ls-glob.out","tests/fixtures/ubuntu-18.04/ls-lR.out","tests/test_ls.py"]},"message":"add new ls tests for recursive and multiple directories with glob","epoch":1581993235,"epoch_utc":null},{"commit":"7388ad19b9d252d3e66659e4bc37171cef2a9748","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 17:31:15 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 17:31:15 2020 -0800","stats":{"files_changed":4,"insertions":6,"deletions":4,"files":["docs/parsers/ls.md","jc/cli.py","jc/parsers/ls.py","setup.py"]},"message":"bump to v1.8.0","epoch":1581989475,"epoch_utc":null},{"commit":"2e63cb5fadd032c7cb54a618e8b374ee853abcca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 17:16:34 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 17:16:34 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"version bump ls to 1.1","epoch":1581988594,"epoch_utc":null},{"commit":"e7f14d02b12c7dcba309f2d28a0f171769d1ba37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 17:14:27 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 17:14:27 2020 -0800","stats":{"files_changed":3,"insertions":1438,"deletions":8,"files":["jc/parsers/ls.py","tests/fixtures/ubuntu-18.04/ls-R.out","tests/fixtures/ubuntu-18.04/ls-lR.out"]},"message":"update ls to allow multi directory (glob and -R). Adds 'parent' key if found","epoch":1581988467,"epoch_utc":null},{"commit":"873771d05ab0b77163c95d2c37e11edf38451832","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 09:16:32 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 09:16:32 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1581959792,"epoch_utc":null},{"commit":"d7de122e36e0698e00f321fbac8dc0b543cf9e8a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 14 09:44:24 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 14 09:44:24 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"prettify link","epoch":1581702264,"epoch_utc":null},{"commit":"4ef0434f536c6658ddc2b48a3db113df2fd26000","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 14 09:43:02 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 14 09:43:02 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["README.md"]},"message":"formatting update","epoch":1581702182,"epoch_utc":null},{"commit":"1aa2c9925996f2358b6272547db755ec3098a8a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 22:10:22 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 22:10:22 2020 -0800","stats":{"files_changed":2,"insertions":1,"deletions":2,"files":["README.md","jc/parsers/history.py"]},"message":"removed history from magic syntax","epoch":1581660622,"epoch_utc":null},{"commit":"c2450b27b079b02ed3f4ece9e36547f01cd4b139","merge":"028e136 14d6d8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 21:26:18 2020 -0500","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Feb 13 21:26:18 2020 -0500","message":"Merge pull request #22 from kellyjonbrazil/dev\n\nDev 1.7.3","epoch":1581657978,"epoch_utc":null},{"commit":"14d6d8b84f0ddeff984aff486e2e697a91ac6fb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 18:24:53 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 18:24:53 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump to 1.7.3","epoch":1581647093,"epoch_utc":null},{"commit":"f0e3846c038ec5507cd4a19980d83ee0fb969ef5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 18:20:22 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 18:20:22 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["README.md"]},"message":"formatting","epoch":1581646822,"epoch_utc":null},{"commit":"6ba64f1128373843b068226424a3af545ac9d22c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 18:19:19 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 18:19:19 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":2,"files":["README.md"]},"message":"usage update","epoch":1581646759,"epoch_utc":null},{"commit":"13bcdbc6c9a81bc5d52fe7a84e6a0a34908db8bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 17:50:51 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 17:50:51 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"doc update","epoch":1581645051,"epoch_utc":null},{"commit":"cfba62db20674d788601354211a10e2b1675a0c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 17:48:21 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 17:48:21 2020 -0800","stats":{"files_changed":1,"insertions":13,"deletions":6,"files":["jc/cli.py"]},"message":"correct parser search in magic()","epoch":1581644901,"epoch_utc":null},{"commit":"18fb69e36e303a3f9530dcb80354b25bfdbb931d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 17:29:45 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 17:29:45 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"docs/parsers link","epoch":1581643785,"epoch_utc":null},{"commit":"474eb0f3fdeaa612e189d745b12a5ed9c6e0a31b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 17:24:10 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 17:24:10 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"doc updates","epoch":1581643450,"epoch_utc":null},{"commit":"7f47b533701e60449351d5da03cd5960e0dec9ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 17:20:00 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 17:20:00 2020 -0800","stats":{"files_changed":1,"insertions":90,"deletions":68,"files":["README.md"]},"message":"add alternate magic syntax","epoch":1581643200,"epoch_utc":null},{"commit":"dc2907d3ce101043b30bcce71abb4bb02897f43a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 16:58:25 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 16:58:25 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["docs/parsers/crontab.md"]},"message":"doc update","epoch":1581641905,"epoch_utc":null},{"commit":"1af85811e06c489051c456918284a746ce12c692","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 16:57:57 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 16:57:57 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/fstab.py"]},"message":"remove magic_command info","epoch":1581641877,"epoch_utc":null},{"commit":"1c1b19a478fe5c356a93cd165518429e77fcbdf0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 16:57:30 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 16:57:30 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab.py"]},"message":"doc update","epoch":1581641850,"epoch_utc":null},{"commit":"66942d64babf932faeb887eb4ec0cab32829321a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 16:56:48 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 16:56:48 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["changelog.txt"]},"message":"changelog update","epoch":1581641808,"epoch_utc":null},{"commit":"2fb6ae08d76e7a5727b2fcdd5def3e3822e0cf72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 12:17:41 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 12:17:41 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"]},"message":"fix shlex usage","epoch":1581625061,"epoch_utc":null},{"commit":"bf8811e03e2a5b736f4c084f42400fcde400ff3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 10:25:41 2020 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 10:25:41 2020 -0500","stats":{"files_changed":1,"insertions":6,"deletions":3,"files":["jc/cli.py"]},"message":"add comments","epoch":1581618341,"epoch_utc":null},{"commit":"c8b502c571d3081ca3086e349a426ca252a3bb84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 10:14:32 2020 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 10:14:32 2020 -0500","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/cli.py"]},"message":"remove unnecessary join and add comments","epoch":1581617672,"epoch_utc":null},{"commit":"81c11a975c6ee66a1f83350df8b065a6b07dcc9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 10:08:43 2020 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 10:08:43 2020 -0500","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/cli.py"]},"message":"added docstrings","epoch":1581617323,"epoch_utc":null},{"commit":"0d370eb403ab4d9ed11e36776efc08bdd3505c1a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 10:03:11 2020 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 10:03:11 2020 -0500","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"doc update","epoch":1581616991,"epoch_utc":null},{"commit":"7492c3f1e312cdb0c58c2077db0d60d2cab1e58f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 09:48:42 2020 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 09:48:42 2020 -0500","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"changelog update","epoch":1581616122,"epoch_utc":null},{"commit":"515a8a84b79c9bf6f3001d3c52faa82a6709b8d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 09:47:40 2020 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 09:47:40 2020 -0500","stats":{"files_changed":33,"insertions":33,"deletions":33,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add \"command\" to description","epoch":1581616060,"epoch_utc":null},{"commit":"dd6680efb2b15bb8ed676016aae1c65193dfe147","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 09:47:16 2020 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 09:47:16 2020 -0500","stats":{"files_changed":2,"insertions":29,"deletions":14,"files":["changelog.txt","jc/cli.py"]},"message":"allow condensed options (-prdq is equivalent to -p -r -d -q)","epoch":1581616036,"epoch_utc":null},{"commit":"a7158373cd225685f5c398fa36b8d5208e20521c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 12 00:16:17 2020 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 12 00:16:17 2020 -0500","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"comment update","epoch":1581495377,"epoch_utc":null},{"commit":"6d50ec71997cac9c898737de93b8a945f0351e53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 12 00:11:48 2020 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 12 00:11:48 2020 -0500","stats":{"files_changed":1,"insertions":9,"deletions":6,"files":["jc/cli.py"]},"message":"add try/except to fix bare jc command condition","epoch":1581495108,"epoch_utc":null},{"commit":"95dbf98e8e03486f74d986683f52699f4f9c9577","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 11 19:14:51 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 11 19:14:51 2020 -0800","stats":{"files_changed":1,"insertions":26,"deletions":6,"files":["jc/cli.py"]},"message":"allow options in magic syntax","epoch":1581477291,"epoch_utc":null},{"commit":"d49323e4ebf2a8aebd1d8ea65ef0854ee8bcb29f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 11 18:09:21 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 11 18:09:21 2020 -0800","stats":{"files_changed":33,"insertions":33,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add magic_commands list to info","epoch":1581473361,"epoch_utc":null},{"commit":"08c1e2aec9d6bb68653dc12ba2272535fb7cef09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 11 18:08:59 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 11 18:08:59 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"]},"message":"add magic syntax","epoch":1581473339,"epoch_utc":null},{"commit":"a2c137df2e6d3b133df5df0bb3f9b1ca69990557","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 11 18:08:37 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 11 18:08:37 2020 -0800","stats":{"files_changed":2,"insertions":66,"deletions":299,"files":["jc/cli.py","jc/cli.py.old"]},"message":"better magic command syntax logic using introspection information from parser modules","epoch":1581473317,"epoch_utc":null},{"commit":"fe27dcdb8f72b5a288f978b87be2eb930099543e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 11 12:16:23 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 11 12:16:23 2020 -0800","stats":{"files_changed":2,"insertions":319,"deletions":45,"files":["jc/cli.py","jc/cli.py.old"]},"message":"proof of concept for magic syntax (e.g. jc ls -al)","epoch":1581452183,"epoch_utc":null},{"commit":"028e136161ac15f588845f87907b4565a6ee7be2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 8 12:46:42 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Feb 8 12:46:42 2020 -0800","stats":{"files_changed":4,"insertions":7,"deletions":2,"files":["MANIFEST.in","changelog.txt","jc/cli.py","setup.py"]},"message":"bump to 1.7.2: add test fixtures to package","epoch":1581194802,"epoch_utc":null},{"commit":"9a85a0a4d504447b32fb622bb17cebc5e47f687f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 8 12:46:14 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Feb 8 12:46:14 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/crontab_u.md","jc/parsers/crontab_u.py"]},"message":"fix doc","epoch":1581194774,"epoch_utc":null},{"commit":"3a1cbc4d5063344c3e3a4bf510d651a36beedfb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 22:26:47 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 22:26:47 2020 -0800","stats":{"files_changed":1,"insertions":14,"deletions":14,"files":["jc/cli.py"]},"message":"move info class to top","epoch":1580970407,"epoch_utc":null},{"commit":"77d334f7f386f79ec0571325500054fdab207f31","merge":"4de8f42 53cdf86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:59:52 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Feb 5 16:59:52 2020 -0800","message":"Merge pull request #19 from kellyjonbrazil/dev-1.7.1\n\nDev v1.7.1","epoch":1580950792,"epoch_utc":null},{"commit":"53cdf863acc72dbdb671773e30277f42e9eadc0e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:53:17 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 16:53:17 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["changelog.txt"]},"message":"changelog update","epoch":1580950397,"epoch_utc":null},{"commit":"7b7e7fe0fe92edef1e559bd7ae8272530d7ed5c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:50:55 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 16:50:55 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"changelog update","epoch":1580950255,"epoch_utc":null},{"commit":"0c03132847a3d2bcbdb0b743e1472865916cced4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:18:58 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 16:18:58 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"fix error codes using sys.exit()","epoch":1580948338,"epoch_utc":null},{"commit":"3b81f7e2a1381958b33962d4531f3fa223c6a83e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:12:09 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 16:12:09 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"exit code on ctrl-c exit","epoch":1580947929,"epoch_utc":null},{"commit":"3d76437b435660e92633c604c4ad32ee0500a28b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:00:23 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 16:00:23 2020 -0800","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ini.md","docs/parsers/xml.md","jc/parsers/ini.py","jc/parsers/xml.py"]},"message":"doc fix","epoch":1580947223,"epoch_utc":null},{"commit":"4bc54c78cea48682ed0432ea56460a26a0e52f83","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:00:10 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 16:00:10 2020 -0800","stats":{"files_changed":4,"insertions":7,"deletions":7,"files":["docs/parsers/du.md","docs/parsers/history.md","jc/parsers/du.py","jc/parsers/history.py"]},"message":"fix compatibility list","epoch":1580947210,"epoch_utc":null},{"commit":"3d303a96b9f6d582b1e99a632da539c3bee4df7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 15:52:39 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 15:52:39 2020 -0800","stats":{"files_changed":5,"insertions":16,"deletions":2,"files":["tests/fixtures/centos-7.7/crontab-u.json","tests/fixtures/centos-7.7/{crontab2.out => crontab-u.out}","tests/fixtures/centos-7.7/crontab.json","tests/fixtures/ubuntu-18.04/crontab-u.json","tests/test_crontab_u.py"]},"message":"crontab bug fix and tests","epoch":1580946759,"epoch_utc":null},{"commit":"33c99d031d18e52a8ca85dfc1a8cba0acebfc3bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 15:12:59 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 15:12:59 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/crontab.py"]},"message":"fix line clobbering bug","epoch":1580944379,"epoch_utc":null},{"commit":"caf7e9f69a22f3c9b3d4624fd2238d6e54d932ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 15:11:51 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 15:11:51 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/crontab_u.py"]},"message":"fix line clobbering bug and add user field to shortcuts","epoch":1580944311,"epoch_utc":null},{"commit":"9449f1f5d5e7bc075549549758af5cc3a6c4524f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 14:44:49 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 14:44:49 2020 -0800","stats":{"files_changed":4,"insertions":9,"deletions":3,"files":["changelog.txt","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/fixtures/centos-7.7/crontab2.out"]},"message":"crontab bugfix: inserting header row was clobbering the first data row","epoch":1580942689,"epoch_utc":null},{"commit":"6bad164b5e2a5b7c7ce82c69b6c091fc079ab2fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 14:10:22 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 14:10:22 2020 -0800","stats":{"files_changed":1,"insertions":7,"deletions":9,"files":["jc/cli.py"]},"message":"simplify by removing unnecessary getattr calls","epoch":1580940622,"epoch_utc":null},{"commit":"bb5ba7ddb146821db2efe095b6de5ae5b72bb335","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 13:57:34 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 13:57:34 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/cli.py"]},"message":"add indent variable to helptext","epoch":1580939854,"epoch_utc":null},{"commit":"8b2e01d5404649e8f94c81ca3b5fa05fe8962220","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 13:50:12 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 13:50:12 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"doc update","epoch":1580939412,"epoch_utc":null},{"commit":"ff1159b1deb9b870382a6066166961902679b569","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 11:45:17 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 11:45:17 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"exit codes on error","epoch":1580931917,"epoch_utc":null},{"commit":"a2fd3202a0a3df336792f167c546ea3e53ea2332","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 11:34:33 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 11:34:33 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/pip_list.py","jc/parsers/pip_show.py"]},"message":"description formatting change","epoch":1580931273,"epoch_utc":null},{"commit":"7b53715b91787a8885d61ddc0079c7ee8f9348a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 11:08:58 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 11:08:58 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/crontab_u.py"]},"message":"change description","epoch":1580929738,"epoch_utc":null},{"commit":"e05fc0a5107b348af14ff4bea39d274939fab7dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 11:08:47 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 11:08:47 2020 -0800","stats":{"files_changed":1,"insertions":8,"deletions":8,"files":["jc/cli.py"]},"message":"change padding of helptext","epoch":1580929727,"epoch_utc":null},{"commit":"43604c33f654b8c19e8cce387ebbf31bd598b73b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 10:59:51 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 10:59:51 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]},"message":"doc update","epoch":1580929191,"epoch_utc":null},{"commit":"eb67c484ff2a9530b434cd6a90c160f6936e1de7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 10:58:26 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 10:58:26 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"add crontab-u to parsers list","epoch":1580929106,"epoch_utc":null},{"commit":"a7b7bdd46781d07e6e70d74a41a3944855fde5fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 10:55:08 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 10:55:08 2020 -0800","stats":{"files_changed":1,"insertions":94,"deletions":92,"files":["jc/cli.py"]},"message":"load parser modules 'just in time' so we don't need to load all modules at startup","epoch":1580928908,"epoch_utc":null},{"commit":"ab06989a18faf5378f1e73c7016ea02e1218ff9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:46:52 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 21:46:52 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["README.md"]},"message":"description updates","epoch":1580881612,"epoch_utc":null},{"commit":"657b722f947b6a0aa7e52a786e4c84f177e9a5c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:44:10 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 21:44:10 2020 -0800","stats":{"files_changed":4,"insertions":8,"deletions":8,"files":["README.md","changelog.txt","docs/parsers/ini.md","jc/parsers/ini.py"]},"message":"ini to INI","epoch":1580881450,"epoch_utc":null},{"commit":"dd2aecad2787186b3962723086bb7e13eff4874f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:37:07 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 21:37:07 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"description update","epoch":1580881027,"epoch_utc":null},{"commit":"c82c5c5c648384eb5a54205ba8590624a3ab4375","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:34:57 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 21:34:57 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["changelog.txt"]},"message":"changelog update","epoch":1580880897,"epoch_utc":null},{"commit":"a1761cd68f91e2668d8d7e2fa7774f6496408be6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:25:33 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 21:25:33 2020 -0800","stats":{"files_changed":3,"insertions":42,"deletions":0,"files":["tests/fixtures/centos-7.7/id.json","tests/fixtures/osx-10.14.6/id.json","tests/test_id.py"]},"message":"id tests","epoch":1580880333,"epoch_utc":null},{"commit":"d618a7f583629bb7a7fc0854e7349cab07e3e003","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:17:03 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 21:17:03 2020 -0800","stats":{"files_changed":4,"insertions":143,"deletions":9,"files":["README.md","docgen.sh","docs/parsers/id.md","jc/parsers/id.py"]},"message":"doc update","epoch":1580879823,"epoch_utc":null},{"commit":"831a42f66096f5efbbf0f6882970c328120f9c9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:12:32 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 21:12:32 2020 -0800","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["README.md"]},"message":"id formatting","epoch":1580879552,"epoch_utc":null},{"commit":"3b36022e5a1056a28a83494b1ab8fab209399c2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:09:42 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 21:09:42 2020 -0800","stats":{"files_changed":5,"insertions":250,"deletions":1,"files":["README.md","jc/cli.py","jc/parsers/id.py","tests/fixtures/centos-7.7/id.out","tests/fixtures/osx-10.14.6/id.out"]},"message":"add id parser","epoch":1580879382,"epoch_utc":null},{"commit":"d01dfa25f10f82cd201ae7b4c9cc18313773f8d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 15:22:36 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 15:22:36 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["changelog.txt"]},"message":"changelog updates","epoch":1580858556,"epoch_utc":null},{"commit":"395a99037b4816eb800b289f90372a9b8d7d36cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:36:03 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 14:36:03 2020 -0800","stats":{"files_changed":3,"insertions":89,"deletions":13,"files":["README.md","docs/parsers/history.md","jc/parsers/history.py"]},"message":"crontab-u and history doc updates","epoch":1580855763,"epoch_utc":null},{"commit":"025986c51d2d4869b17de63a7dd96efa2988e3c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:31:28 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 14:31:28 2020 -0800","stats":{"files_changed":3,"insertions":13,"deletions":3,"files":["jc/parsers/history.py","tests/fixtures/centos-7.7/history.json","tests/fixtures/ubuntu-18.04/history.json"]},"message":"change history 'line' to integer","epoch":1580855488,"epoch_utc":null},{"commit":"c56b83093ff05f55ef4643c1731cff61d4b9e8ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:19:33 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 14:19:33 2020 -0800","stats":{"files_changed":3,"insertions":202,"deletions":2,"files":["docgen.sh","docs/parsers/crontab.md","docs/parsers/crontab_u.md"]},"message":"doc update","epoch":1580854773,"epoch_utc":null},{"commit":"7c712a4133abd843d4da926e4c8d548abd1d6fa3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:18:14 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 14:18:14 2020 -0800","stats":{"files_changed":1,"insertions":52,"deletions":50,"files":["jc/parsers/crontab_u.py"]},"message":"doc update","epoch":1580854694,"epoch_utc":null},{"commit":"9a0cfe6dfa4888f435d35bd2d35126d031a556d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:18:01 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 14:18:01 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/crontab.py"]},"message":"minor formatting","epoch":1580854681,"epoch_utc":null},{"commit":"a116cdbcec1b27192dd0f9f4707629353edb3caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:11:34 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 14:11:34 2020 -0800","stats":{"files_changed":5,"insertions":29,"deletions":13,"files":["tests/fixtures/ubuntu-18.04/crontab-u.json",".../ubuntu-18.04/{crontab.out => crontab-u.out}","tests/fixtures/ubuntu-18.04/crontab.json","tests/test_crontab.py","tests/test_crontab_u.py"]},"message":"tests for crontab-u","epoch":1580854294,"epoch_utc":null},{"commit":"f2d616c98e049cdac5d667e63723f92110419a1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:02:27 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 14:02:27 2020 -0800","stats":{"files_changed":3,"insertions":272,"deletions":0,"files":["changelog.txt","jc/cli.py","jc/parsers/crontab_u.py"]},"message":"add crontab with user parser","epoch":1580853747,"epoch_utc":null},{"commit":"42cbd1777dbacc614d75f67f3f9156f72be46532","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 13:53:45 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 13:53:45 2020 -0800","stats":{"files_changed":2,"insertions":80,"deletions":0,"files":["tests/test_xml.py","tests/test_yaml.py"]},"message":"add xml and yaml tests","epoch":1580853225,"epoch_utc":null},{"commit":"ebf375aac0473249cfd212068f6e6e33cc42449a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 12:18:31 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 12:18:31 2020 -0800","stats":{"files_changed":1,"insertions":40,"deletions":0,"files":["tests/test_ini.py"]},"message":"add ini tests","epoch":1580847511,"epoch_utc":null},{"commit":"1f9050267eeb870c4c0f50000fc32985c4d8535b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 12:02:18 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 12:02:18 2020 -0800","stats":{"files_changed":12,"insertions":586,"deletions":0,"files":["tests/fixtures/generic/ini-iptelserver.ini","tests/fixtures/generic/ini-iptelserver.json","tests/fixtures/generic/ini-test.ini","tests/fixtures/generic/ini-test.json","tests/fixtures/generic/xml-cd_catalog.json","tests/fixtures/generic/xml-cd_catalog.xml","tests/fixtures/generic/xml-foodmenu.json","tests/fixtures/generic/xml-foodmenu.xml","tests/fixtures/generic/yaml-istio-sc.json","tests/fixtures/generic/yaml-istio-sc.yaml","tests/fixtures/generic/yaml-istio-sidecar.json","tests/fixtures/generic/yaml-istio-sidecar.yaml"]},"message":"add ini, xml, and yaml test files","epoch":1580846538,"epoch_utc":null},{"commit":"d7f9707a1521719ce051140b1a0b4ced7c5114c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 11:18:32 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 11:18:32 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/ini.py","jc/parsers/yaml.py"]},"message":"minor formatting","epoch":1580843912,"epoch_utc":null},{"commit":"ab589ee3ed09b9d5e09d8c046f3a64cd2bd14c98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 11:18:15 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 11:18:15 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/cli.py"]},"message":"add __version__ variable","epoch":1580843895,"epoch_utc":null},{"commit":"c84ec0361fc4c877c698378b28ff9e8b502793b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 22:25:30 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 22:25:30 2020 -0800","stats":{"files_changed":4,"insertions":105,"deletions":3,"files":["README.md","docgen.sh","docs/parsers/xml.md","jc/parsers/xml.py"]},"message":"xml example update","epoch":1580797530,"epoch_utc":null},{"commit":"47d2f8968a8a9b68fc9fff45985f5e69f1a5cc40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 22:21:40 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 22:21:40 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","changelog.txt"]},"message":"doc update","epoch":1580797300,"epoch_utc":null},{"commit":"019c480bcce7fe3821b75906fc673ce7bb1ffadc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 22:17:13 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 22:17:13 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"update acknowledgments","epoch":1580797033,"epoch_utc":null},{"commit":"547c6d3d5956984d3c4fb5c2a1b76a595752b467","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 22:13:06 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 22:13:06 2020 -0800","stats":{"files_changed":5,"insertions":172,"deletions":2,"files":["README.md","changelog.txt","jc/cli.py","jc/parsers/xml.py","setup.py"]},"message":"add xml parser","epoch":1580796786,"epoch_utc":null},{"commit":"b5ebf8b76afcd0e0190994048fe1f5b53f654451","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 21:41:53 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 21:41:53 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add ruamel.yaml ack","epoch":1580794913,"epoch_utc":null},{"commit":"c690e328f23a69f592dfaaa949b74ba2190ad376","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 21:38:21 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 21:38:21 2020 -0800","stats":{"files_changed":2,"insertions":102,"deletions":14,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"]},"message":"add examples","epoch":1580794701,"epoch_utc":null},{"commit":"cbb92c1a9517234806f1c54398a69645b6f43669","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 21:38:08 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 21:38:08 2020 -0800","stats":{"files_changed":1,"insertions":94,"deletions":0,"files":["README.md"]},"message":"add ini and yaml","epoch":1580794688,"epoch_utc":null},{"commit":"beb41997c9b3797e73a678ec1bcddcfb83b5ef0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 21:28:11 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 21:28:11 2020 -0800","stats":{"files_changed":3,"insertions":91,"deletions":2,"files":["docgen.sh","docs/parsers/ini.md","jc/parsers/ini.py"]},"message":"doc update","epoch":1580794091,"epoch_utc":null},{"commit":"755a6faf1110f150fe2261b81439b7d17a9b424e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 21:22:30 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 21:22:30 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":8,"files":["jc/parsers/yaml.py"]},"message":"clean up multi-document support","epoch":1580793750,"epoch_utc":null},{"commit":"021f8350a31a49ecc539f02576303600b222b49d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 19:11:36 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 19:11:36 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["changelog.txt"]},"message":"update doc","epoch":1580785896,"epoch_utc":null},{"commit":"76583dcd2f5ef32e58ca87149154563b07e061cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 19:07:31 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 19:07:31 2020 -0800","stats":{"files_changed":2,"insertions":113,"deletions":0,"files":["jc/cli.py","jc/parsers/ini.py"]},"message":"add ini file parser","epoch":1580785651,"epoch_utc":null},{"commit":"bf033239a706c42be3d7508c58a51c542f8a69b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 16:20:38 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 16:20:38 2020 -0800","stats":{"files_changed":2,"insertions":82,"deletions":7,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"]},"message":"doc update","epoch":1580775638,"epoch_utc":null},{"commit":"eb37fccd37fd625f701a14b6cfcf30e9f0bbff4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 16:17:29 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 16:17:29 2020 -0800","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/yaml.py"]},"message":"doc update","epoch":1580775449,"epoch_utc":null},{"commit":"d04ad453319fe45e302da87f970d2ac0806fae1a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 16:12:45 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 16:12:45 2020 -0800","stats":{"files_changed":3,"insertions":7,"deletions":2,"files":["changelog.txt","docgen.sh","setup.py"]},"message":"setup for 1.7.1","epoch":1580775165,"epoch_utc":null},{"commit":"db157b8ca7f7fa935676bafeaafdfd9818a89e6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 16:12:32 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 16:12:32 2020 -0800","stats":{"files_changed":2,"insertions":94,"deletions":2,"files":["jc/cli.py","jc/parsers/yaml.py"]},"message":"add yaml file parser","epoch":1580775152,"epoch_utc":null},{"commit":"68f277bb2081eb2cba14ffe7f0ee1ee0a982335b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 16:11:58 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 16:11:58 2020 -0800","stats":{"files_changed":33,"insertions":99,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add __version__","epoch":1580775118,"epoch_utc":null},{"commit":"4de8f42664379570392552796e34324abb39fdc2","merge":"6633d92 4f11855","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 12:11:13 2019 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Dec 17 12:11:13 2019 -0800","message":"Merge pull request #17 from kellyjonbrazil/dev\n\nDev v1.6.1","epoch":1576613473,"epoch_utc":null},{"commit":"4f118559356edc1da866e1bec80830e7a75a0b26","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 12:09:24 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 17 12:09:24 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["changelog.txt"]},"message":"update version info","epoch":1576613364,"epoch_utc":null},{"commit":"2b9a5fcc32f85295faa55410efcaf142c42bd167","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 12:05:40 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 17 12:05:40 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["setup.py"]},"message":"update version","epoch":1576613140,"epoch_utc":null},{"commit":"224948d1f23e01b7cd968820529579792f862f0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 11:44:43 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 17 11:44:43 2019 -0800","stats":{"files_changed":21,"insertions":428,"deletions":0,"files":["tests/fixtures/centos-7.7/pip-list.json","tests/fixtures/centos-7.7/pip-list.out","tests/fixtures/centos-7.7/pip-show.json","tests/fixtures/centos-7.7/pip-show.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.11.6/pip-list.json","tests/fixtures/osx-10.11.6/pip-list.out","tests/fixtures/osx-10.11.6/pip-show.json","tests/fixtures/osx-10.11.6/pip-show.out","tests/fixtures/osx-10.14.6/pip-list.json","tests/fixtures/osx-10.14.6/pip-list.out","tests/fixtures/osx-10.14.6/pip-show.json","tests/fixtures/osx-10.14.6/pip-show.out","tests/fixtures/ubuntu-18.04/pip-list-legacy.json","tests/fixtures/ubuntu-18.04/pip-list-legacy.out","tests/fixtures/ubuntu-18.04/pip-list.json","tests/fixtures/ubuntu-18.04/pip-list.out","tests/fixtures/ubuntu-18.04/pip-show.json","tests/fixtures/ubuntu-18.04/pip-show.out","tests/test_pip_list.py","tests/test_pip_show.py"]},"message":"pip list and pip show tests","epoch":1576611883,"epoch_utc":null},{"commit":"36f2812d5a7a94c412e098233c026d99d5205b60","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 10:58:00 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 17 10:58:00 2019 -0800","stats":{"files_changed":1,"insertions":15,"deletions":7,"files":["jc/parsers/pip_list.py"]},"message":"add support for legacy output","epoch":1576609080,"epoch_utc":null},{"commit":"be06aa2b31c057c56229e75c7fa70052b83053ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 10:09:19 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 17 10:09:19 2019 -0800","stats":{"files_changed":65,"insertions":70,"deletions":66,"files":["docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"update parse() Return info","epoch":1576606159,"epoch_utc":null},{"commit":"41f8e3aba268ca0cd09931a04368615425c1aec8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 09:56:09 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 17 09:56:09 2019 -0800","stats":{"files_changed":65,"insertions":67,"deletions":65,"files":["docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"update Return info","epoch":1576605369,"epoch_utc":null},{"commit":"093c0df8978ace842af5258f9aff72c63c6f843d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 09:38:50 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 17 09:38:50 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["README.md"]},"message":"schema info","epoch":1576604330,"epoch_utc":null},{"commit":"37afc7dc8ae30342d01f3f72e73646fa60bb5294","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 09:35:27 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 17 09:35:27 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["README.md"]},"message":"updte todo and compatibility","epoch":1576604127,"epoch_utc":null},{"commit":"efbf3549606fc77f8c16587ff04a0c316dfe5c00","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 09:24:08 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 17 09:24:08 2019 -0800","stats":{"files_changed":4,"insertions":126,"deletions":12,"files":["README.md","docgen.sh","docs/parsers/pip_show.md","jc/parsers/pip_show.py"]},"message":"doc update for pip show","epoch":1576603448,"epoch_utc":null},{"commit":"5e39fe0d8044787389d8f206f3c863d4bdf1e2ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 09:20:26 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 17 09:20:26 2019 -0800","stats":{"files_changed":1,"insertions":64,"deletions":5,"files":["jc/parsers/pip_show.py"]},"message":"pip show parser working","epoch":1576603226,"epoch_utc":null},{"commit":"47328dc65969f149c8f027286774ff0847c18add","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 19:09:14 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 19:09:14 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"]},"message":"add pip-show parser","epoch":1576552154,"epoch_utc":null},{"commit":"addeef50ba54f536855544937a6c98135ae5cd51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 19:07:51 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 19:07:51 2019 -0800","stats":{"files_changed":1,"insertions":84,"deletions":0,"files":["jc/parsers/pip_show.py"]},"message":"initial pip show parser add","epoch":1576552071,"epoch_utc":null},{"commit":"ad338cc5b50a178091c47cbea9a1db135a7fb678","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:58:33 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 18:58:33 2019 -0800","stats":{"files_changed":2,"insertions":56,"deletions":42,"files":["docs/parsers/crontab.md","jc/parsers/crontab.py"]},"message":"schema doc update","epoch":1576551513,"epoch_utc":null},{"commit":"202bc8201e31fd453c682265347b4e2ac2d41718","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:54:19 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 18:54:19 2019 -0800","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["README.md","docs/parsers/crontab.md","jc/parsers/crontab.py"]},"message":"doc update","epoch":1576551259,"epoch_utc":null},{"commit":"5ff99de405fbd8f79f9c2e301ac27184e0aba6fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:40:08 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 18:40:08 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add argument to parser info","epoch":1576550408,"epoch_utc":null},{"commit":"86ebe2cf9c6b336eacf217393c3c3c324ee29ec0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:36:13 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 18:36:13 2019 -0800","stats":{"files_changed":6,"insertions":205,"deletions":1,"files":["README.md","docgen.sh","docs/parsers/crontab.md","docs/parsers/pip_list.md","jc/cli.py","jc/parsers/pip_list.py"]},"message":"initial add of pip list parser","epoch":1576550173,"epoch_utc":null},{"commit":"facf0b399c608d33f6a454ee24fd49fc62471742","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:09:29 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 18:09:29 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/crontab.py"]},"message":"add osx to campatible","epoch":1576548569,"epoch_utc":null},{"commit":"33db7b0bcb0f24979cad6e173737d75c8ed301af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:09:00 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 18:09:00 2019 -0800","stats":{"files_changed":4,"insertions":57,"deletions":0,"files":["tests/fixtures/centos-7.7/crontab.json","tests/fixtures/ubuntu-18.04/crontab.json","tests/fixtures/ubuntu-18.04/crontab.out","tests/test_crontab.py"]},"message":"add crontab tests","epoch":1576548540,"epoch_utc":null},{"commit":"663d07bca1181024d9d08b940237c52197c91729","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 17:52:09 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 17:52:09 2019 -0800","stats":{"files_changed":2,"insertions":191,"deletions":0,"files":["docgen.sh","docs/parsers/crontab.md"]},"message":"add crontab","epoch":1576547529,"epoch_utc":null},{"commit":"ba04e4997fcb28adbee446f633c121f1585b9f2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 17:51:11 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 17:51:11 2019 -0800","stats":{"files_changed":1,"insertions":113,"deletions":4,"files":["jc/parsers/crontab.py"]},"message":"update docs","epoch":1576547471,"epoch_utc":null},{"commit":"c4fee1b658c91afa2abdd746af6c1b4697c44b35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 17:50:52 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 17:50:52 2019 -0800","stats":{"files_changed":1,"insertions":72,"deletions":1,"files":["README.md"]},"message":"add crontab parser","epoch":1576547452,"epoch_utc":null},{"commit":"99b92a15bbebc5568f4455f388f945613c4a2759","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 17:45:34 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 17:45:34 2019 -0800","stats":{"files_changed":2,"insertions":37,"deletions":14,"files":["jc/parsers/crontab.py","tests/fixtures/centos-7.7/crontab.out"]},"message":"support shortcut schedules","epoch":1576547134,"epoch_utc":null},{"commit":"b076ab5b57a6a59db096485e5ff4eb9f91bae8be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 17:01:53 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 17:01:53 2019 -0800","stats":{"files_changed":3,"insertions":177,"deletions":0,"files":["jc/cli.py","jc/parsers/crontab.py","tests/fixtures/centos-7.7/crontab.out"]},"message":"initial crontab parser","epoch":1576544513,"epoch_utc":null},{"commit":"687759f75d0e80e81746a84f051e55cfdc870447","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 14:31:21 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 14:31:21 2019 -0800","stats":{"files_changed":1,"insertions":31,"deletions":31,"files":["README.md"]},"message":"alphabetize du entry","epoch":1576535481,"epoch_utc":null},{"commit":"9eaac7f3af0e0851c2d091d94c9920faa8a0fdfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 14:30:06 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 14:30:06 2019 -0800","stats":{"files_changed":1,"insertions":32,"deletions":0,"files":["README.md"]},"message":"add du","epoch":1576535406,"epoch_utc":null},{"commit":"4c24e00cfc0748d98e220d08820b88fc156148db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 14:27:55 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 14:27:55 2019 -0800","stats":{"files_changed":5,"insertions":21738,"deletions":9,"files":["tests/fixtures/osx-10.11.6/du.json","tests/fixtures/osx-10.11.6/du.out","tests/fixtures/ubuntu-18.04/du.json","tests/fixtures/ubuntu-18.04/du.out","tests/test_du.py"]},"message":"add osx-11 and ubuntu tests","epoch":1576535275,"epoch_utc":null},{"commit":"beb17011b03e720078b0752e79a6a0f6123d1d3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 13:57:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 13:57:42 2019 -0800","stats":{"files_changed":6,"insertions":131,"deletions":2,"files":["changelog.txt","docgen.sh","docs/parsers/du.md","docs/parsers/uname.md","tests/fixtures/osx-10.14.6/du.json","tests/test_du.py"]},"message":"du tests and docs","epoch":1576533462,"epoch_utc":null},{"commit":"e882bf55bcd1d3526423ed1ccc61fb4819395cce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 13:52:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 13:52:42 2019 -0800","stats":{"files_changed":7,"insertions":8755,"deletions":0,"files":["changelog.txt","jc/cli.py","jc/parsers/du.py","tests/fixtures/centos-7.7/du.json","tests/fixtures/centos-7.7/du.out","tests/fixtures/osx-10.14.6/du.out","tests/test_du.py"]},"message":"initial add du parser","epoch":1576533162,"epoch_utc":null},{"commit":"3a3016adb6d5b9e35f8a39908bfcdc65997cc5c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 11:52:18 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 11:52:18 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add parser_count to about","epoch":1576525938,"epoch_utc":null},{"commit":"1e8b68153ade8a1e3d2b4db36e0c402bbc887079","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 11:12:45 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 11:12:45 2019 -0800","stats":{"files_changed":4,"insertions":27,"deletions":1,"files":["tests/fixtures/osx-10.11.6/uname-a.json","tests/fixtures/osx-10.14.6/uname-a.json","tests/fixtures/osx-10.14.6/uname-a.out","tests/test_uname.py"]},"message":"add osx uname tests","epoch":1576523565,"epoch_utc":null},{"commit":"9335cf65fbb87e3a0a7da0c4e9bcd251cb829de2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 11:02:02 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 11:02:02 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"add uname osx support","epoch":1576522922,"epoch_utc":null},{"commit":"83f35256aee71f2619ddf880e2b8f2d6c63280bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 11:01:43 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 11:01:43 2019 -0800","stats":{"files_changed":1,"insertions":30,"deletions":19,"files":["jc/parsers/uname.py"]},"message":"add OSX support","epoch":1576522903,"epoch_utc":null},{"commit":"428333394817e4461a4eb095f4d6d128305a5f98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 10:03:47 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 10:03:47 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"version bump","epoch":1576519427,"epoch_utc":null},{"commit":"b8f902796b7fb23a41355b23f7ce235bd18edc58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 10:03:34 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 10:03:34 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["changelog.txt"]},"message":"shorten changelog","epoch":1576519414,"epoch_utc":null},{"commit":"8f99ab295cd15718b98781707def97539ad41920","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 09:08:47 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 09:08:47 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"info update","epoch":1576516127,"epoch_utc":null},{"commit":"882310e268e2022f0cd6da75f80f5356529cd05c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 09:04:52 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 09:04:52 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add name to about parser info","epoch":1576515892,"epoch_utc":null},{"commit":"56bce9521409d1850f75a3ae2be1363e765dd9dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 09:00:16 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 09:00:16 2019 -0800","stats":{"files_changed":1,"insertions":6,"deletions":10,"files":["jc/cli.py"]},"message":"about code cleanup","epoch":1576515616,"epoch_utc":null},{"commit":"c13ecbec2952c5d6765397f645e90653a4fd9d05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 08:59:41 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 08:59:41 2019 -0800","stats":{"files_changed":28,"insertions":2,"deletions":28,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"clean up parser info","epoch":1576515581,"epoch_utc":null},{"commit":"0ffaaa6e73649d1f657af569ac0b912f166e8493","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 08:18:37 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 08:18:37 2019 -0800","stats":{"files_changed":1,"insertions":7,"deletions":9,"files":["jc/cli.py"]},"message":"clean up about code","epoch":1576513117,"epoch_utc":null},{"commit":"75eff3adea097157c005b2201e353a741241ce8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:56:40 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Dec 14 23:56:40 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/utils.py"]},"message":"remove whitespace","epoch":1576396600,"epoch_utc":null},{"commit":"bf5f80476cff642ae672187ea59d40bdb602101e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:56:22 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Dec 14 23:56:22 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["jc/cli.py"]},"message":"use real parser name in error message","epoch":1576396582,"epoch_utc":null},{"commit":"9aaf0fbb2f838c0af1e7f18fdb19104f9f5d3d39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:35:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Dec 14 23:35:42 2019 -0800","stats":{"files_changed":29,"insertions":146,"deletions":1,"files":["changelog.txt","docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md"]},"message":"doc updates","epoch":1576395342,"epoch_utc":null},{"commit":"8f01ef79532743573632d716ceea41d5ea752c88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:27:56 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Dec 14 23:27:56 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add -a option info","epoch":1576394876,"epoch_utc":null},{"commit":"da1d087452da02631296b1b3dc9ee10d4b7f764b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:21:47 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Dec 14 23:21:47 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add parser version info","epoch":1576394507,"epoch_utc":null},{"commit":"e16bc7e882a27a1d5a4bd7cf9972208e6997f96f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:15:15 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Dec 14 23:15:15 2019 -0800","stats":{"files_changed":29,"insertions":82,"deletions":17,"files":["jc/cli.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add about information to parsers","epoch":1576394115,"epoch_utc":null},{"commit":"fe9bdd4811216257c05b16d6d61897929669d434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 13 20:01:51 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 13 20:01:51 2019 -0800","stats":{"files_changed":31,"insertions":384,"deletions":219,"files":["changelog.txt","jc/cli.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add info class","epoch":1576296111,"epoch_utc":null},{"commit":"17b6f3f6d6c398a52166849088a793d0e3b328b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 13 14:36:21 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 13 14:36:21 2019 -0800","stats":{"files_changed":3,"insertions":26,"deletions":0,"files":["tests/fixtures/osx-10.11.6/uptime.json","tests/fixtures/osx-10.14.6/uptime.json","tests/test_uptime.py"]},"message":"add osx tests","epoch":1576276581,"epoch_utc":null},{"commit":"90a6baf0ee3b8b27476badada4e590e22144f810","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 13 14:30:12 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 13 14:30:12 2019 -0800","stats":{"files_changed":6,"insertions":52,"deletions":0,"files":["tests/fixtures/osx-10.11.6/ps-axu.json","tests/fixtures/osx-10.11.6/ps-ef.json","tests/fixtures/osx-10.11.6/w.json","tests/fixtures/osx-10.14.6/w.json","tests/test_ps.py","tests/test_w.py"]},"message":"add osx tests","epoch":1576276212,"epoch_utc":null},{"commit":"f0e73d0e72d540292f41fff51652932c4e8b0315","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 13 10:50:01 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 13 10:50:01 2019 -0800","stats":{"files_changed":8,"insertions":444,"deletions":0,"files":["tests/fixtures/osx-10.11.6/ps-axu.out","tests/fixtures/osx-10.11.6/ps-ef.out","tests/fixtures/osx-10.11.6/uname-a.out","tests/fixtures/osx-10.11.6/uptime.out","tests/fixtures/osx-10.11.6/w.out","tests/fixtures/osx-10.14.6/uname-a.out","tests/fixtures/osx-10.14.6/uptime.out","tests/fixtures/osx-10.14.6/w.out"]},"message":"add osx tests","epoch":1576263001,"epoch_utc":null},{"commit":"a762882f1ccea6789ce7813b313f3242175b5bd6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 13 08:58:23 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 13 08:58:23 2019 -0800","stats":{"files_changed":4,"insertions":2,"deletions":88,"files":["tests/fixtures/osx-10.14.6/ps-axu.json","tests/fixtures/osx-10.14.6/ps-axu.out","tests/fixtures/osx-10.14.6/ps-ef.json","tests/fixtures/osx-10.14.6/ps-ef.out"]},"message":"fixture updates","epoch":1576256303,"epoch_utc":null},{"commit":"4c1bc5923658bf463805ea33ec8d170a817909ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 17:05:40 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 17:05:40 2019 -0800","stats":{"files_changed":3,"insertions":4,"deletions":3,"files":["docs/parsers/mount.md","docs/parsers/ps.md","docs/parsers/stat.md"]},"message":"doc updates","epoch":1576199140,"epoch_utc":null},{"commit":"f2962083f80503f82c3eddf470674c776e616b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 17:04:40 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 17:04:40 2019 -0800","stats":{"files_changed":7,"insertions":93,"deletions":17,"files":["changelog.txt","jc/parsers/mount.py","tests/fixtures/osx-10.14.6/mount.json","tests/fixtures/osx-10.14.6/mount.out","tests/fixtures/osx-10.14.6/mount2.json","tests/fixtures/osx-10.14.6/mount2.out","tests/test_mount.py"]},"message":"add osx support for mount parser","epoch":1576199080,"epoch_utc":null},{"commit":"a0b22a5bcfa0777895243088b2c0f3bb5b758775","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 16:14:46 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 16:14:46 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"help text formatting","epoch":1576196086,"epoch_utc":null},{"commit":"dcf393354cd57683aaeecbed7b884d19b0fe94d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 16:10:30 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 16:10:30 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"]},"message":"doc fix","epoch":1576195830,"epoch_utc":null},{"commit":"5f771656e3fdd703d449b2817faa4faeff1cd879","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 16:07:52 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 16:07:52 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/route.py"]},"message":"use universal parser","epoch":1576195672,"epoch_utc":null},{"commit":"f376aab79328a211a127f4f818e7007232f1fae3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:59:36 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 15:59:36 2019 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/universal.py"]},"message":"doc update","epoch":1576195176,"epoch_utc":null},{"commit":"3c96464217a740571e16c74ad41c1d92f7585547","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:59:24 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 15:59:24 2019 -0800","stats":{"files_changed":6,"insertions":886,"deletions":13,"files":["jc/parsers/ps.py","tests/fixtures/osx-10.14.6/ps-axu.json","tests/fixtures/osx-10.14.6/ps-axu.out","tests/fixtures/osx-10.14.6/ps-ef.json","tests/fixtures/osx-10.14.6/ps-ef.out","tests/test_ps.py"]},"message":"osx fixes and tests","epoch":1576195164,"epoch_utc":null},{"commit":"c9892833a16bb63f78537717be65670eb65a87b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:58:40 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 15:58:40 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/mount.py"]},"message":"formatting change","epoch":1576195120,"epoch_utc":null},{"commit":"127c98affc7b122f0ced13852850214b9e07677e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:58:24 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 15:58:24 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update","epoch":1576195104,"epoch_utc":null},{"commit":"8687a772f53ecaf1a20464429060b94bbf660fe7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:33:34 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 15:33:34 2019 -0800","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["jc/parsers/lsof.py"]},"message":"use universal parser","epoch":1576193614,"epoch_utc":null},{"commit":"b1162b14d42643fd53dbbe3f89ba042f030d9254","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:22:21 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 15:22:21 2019 -0800","stats":{"files_changed":1,"insertions":3,"deletions":6,"files":["jc/parsers/lsmod.py"]},"message":"use universal parser","epoch":1576192941,"epoch_utc":null},{"commit":"8a8ee3570733c0c06b8cf53eb005e53ac2f9170f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:01:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 15:01:42 2019 -0800","stats":{"files_changed":1,"insertions":8,"deletions":60,"files":["jc/parsers/lsblk.py"]},"message":"use universal parser","epoch":1576191702,"epoch_utc":null},{"commit":"5e109a3665cf0c286ac9dcbe2a452348a14b90ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 14:12:36 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 14:12:36 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/fixtures/create_fixtures.sh"]},"message":"add du","epoch":1576188756,"epoch_utc":null},{"commit":"11db478430515ef3e1020482792f23d1c40ca32b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 14:12:21 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 14:12:21 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"update changelog","epoch":1576188741,"epoch_utc":null},{"commit":"a85377014d9f93fcb9840715129b0e09d48d8584","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 14:11:59 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 14:11:59 2019 -0800","stats":{"files_changed":1,"insertions":5,"deletions":11,"files":["jc/parsers/free.py"]},"message":"use universal parser","epoch":1576188719,"epoch_utc":null},{"commit":"3aea86234d33160f5b3139cbfc2f4f032f655f3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 11:23:49 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 11:23:49 2019 -0800","stats":{"files_changed":6,"insertions":70,"deletions":61,"files":["tests/fixtures/osx-10.11.6/ls-al.json","tests/fixtures/osx-10.11.6/ls-al.out","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.11.6/ls-alh.out","tests/fixtures/osx-10.11.6/ls.json","tests/fixtures/osx-10.11.6/ls.out"]},"message":"fix osx-10.11.6 tests","epoch":1576178629,"epoch_utc":null},{"commit":"916ec6ed6b858a8a496e4026b9bab5505abca2ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 10:11:24 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 10:11:24 2019 -0800","stats":{"files_changed":13,"insertions":193,"deletions":61,"files":["tests/fixtures/osx-10.11.6/ls-al.json","tests/fixtures/osx-10.11.6/ls-al.out","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.11.6/ls-alh.out","tests/fixtures/osx-10.11.6/ls.json","tests/fixtures/osx-10.11.6/ls.out","tests/fixtures/osx-10.14.6/ls-al.json","tests/fixtures/osx-10.14.6/ls-al.out","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.out","tests/fixtures/osx-10.14.6/ls.json","tests/fixtures/osx-10.14.6/ls.out","tests/test_ls.py"]},"message":"fix osx ls tests","epoch":1576174284,"epoch_utc":null},{"commit":"9dca6ba5393d8840ad7fc9509273715a71955bd1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:47:14 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 09:47:14 2019 -0800","stats":{"files_changed":55,"insertions":120,"deletions":6,"files":["docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"doc formatting change","epoch":1576172834,"epoch_utc":null},{"commit":"0ebb89f561e1ced2e7f61ae19290e176c8a98bf2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:41:56 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 09:41:56 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["docs/parsers/arp.md"]},"message":"doc update","epoch":1576172516,"epoch_utc":null},{"commit":"e237867e242211ba37206911ebf1b35c97b417fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:41:25 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 09:41:25 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/arp.py"]},"message":"doc formatting","epoch":1576172485,"epoch_utc":null},{"commit":"78fa44fd9ac9790313de6f461eb46d9b8d6159d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:35:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 09:35:42 2019 -0800","stats":{"files_changed":24,"insertions":75,"deletions":3,"files":["docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add compatibility to docs","epoch":1576172142,"epoch_utc":null},{"commit":"d615fa3b933ccd284bd8ee92baf5dfa6264507c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:21:20 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 09:21:20 2019 -0800","stats":{"files_changed":30,"insertions":91,"deletions":1,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py"]},"message":"add compatibility to docs","epoch":1576171280,"epoch_utc":null},{"commit":"ce134dc332dd9175e0d1823a4959bed427a3ddce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:09:57 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 09:09:57 2019 -0800","stats":{"files_changed":7,"insertions":115,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-al.json","tests/fixtures/osx-10.14.6/ls-al.out","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.out","tests/fixtures/osx-10.14.6/ls.json","tests/fixtures/osx-10.14.6/ls.out","tests/test_ls.py"]},"message":"Add OSX tests for ls","epoch":1576170597,"epoch_utc":null},{"commit":"a56e4dc752a01635fbd9fc31e21d390bbd629084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 17:27:48 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 11 17:27:48 2019 -0800","stats":{"files_changed":3,"insertions":28,"deletions":3,"files":["changelog.txt","jc/parsers/arp.py","jc/parsers/universal.py"]},"message":"use universal simple table parser","epoch":1576114068,"epoch_utc":null},{"commit":"d221b4aa29e80dda2b591059f4d64c416bff0a17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 17:19:38 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 11 17:19:38 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update","epoch":1576113578,"epoch_utc":null},{"commit":"d2cba6ad2f1f1cd35aa174239584a0291abb8e37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 17:18:21 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 11 17:18:21 2019 -0800","stats":{"files_changed":3,"insertions":9,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py"]},"message":"add compatibility info","epoch":1576113501,"epoch_utc":null},{"commit":"84b3c30b525ddf1f74eb7fd833050a0ec69621dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 17:18:04 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 11 17:18:04 2019 -0800","stats":{"files_changed":21,"insertions":254,"deletions":2,"files":["tests/fixtures/osx-10.11.6/df-h.json","tests/fixtures/osx-10.11.6/df-h.out","tests/fixtures/osx-10.11.6/df.json","tests/fixtures/osx-10.11.6/df.out","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-aaaa.out","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig-x.out","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.11.6/dig.out","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/osx-10.14.6/df-h.out","tests/fixtures/osx-10.14.6/df.json","tests/fixtures/osx-10.14.6/df.out","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-aaaa.out","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig-x.out","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/osx-10.14.6/dig.out","tests/test_df.py"]},"message":"add osx tests","epoch":1576113484,"epoch_utc":null},{"commit":"68eeec19a812b735627763bb7d7e2a58b72f7504","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 16:39:30 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 11 16:39:30 2019 -0800","stats":{"files_changed":3,"insertions":30,"deletions":25,"files":["README.md","docs/parsers/df.md","jc/parsers/df.py"]},"message":"doc update","epoch":1576111170,"epoch_utc":null},{"commit":"c6d1528a2ed302ea82828b733a98db415be83708","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 16:37:13 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 11 16:37:13 2019 -0800","stats":{"files_changed":4,"insertions":19,"deletions":8,"files":["jc/parsers/df.py","jc/parsers/universal.py","tests/fixtures/centos-7.7/df.json","tests/fixtures/ubuntu-18.04/df.json"]},"message":"use _ instead of -","epoch":1576111033,"epoch_utc":null},{"commit":"50a6b256b8a0936299f562c208ede6187feeb9a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 9 14:01:47 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 9 14:01:47 2019 -0800","stats":{"files_changed":1,"insertions":83,"deletions":0,"files":["jc/parsers/universal.py"]},"message":"new universal parsers to limit code duplication","epoch":1575928907,"epoch_utc":null},{"commit":"bbba1fe477014d0b7f370ce46ed821121be81a8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 9 14:01:29 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 9 14:01:29 2019 -0800","stats":{"files_changed":1,"insertions":38,"deletions":19,"files":["jc/parsers/df.py"]},"message":"update df to use universal sparse table parser for osx compatibility","epoch":1575928889,"epoch_utc":null},{"commit":"46b827da6b438be73fab168c3f05298483b141e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 13:22:51 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 6 13:22:51 2019 -0800","stats":{"files_changed":7,"insertions":75,"deletions":4,"files":["changelog.txt","jc/parsers/arp.py","tests/fixtures/osx-10.11.6/arp-a.json","tests/fixtures/osx-10.11.6/arp-a.out","tests/fixtures/osx-10.14.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a.out","tests/test_arp.py"]},"message":"add osx compatibility","epoch":1575667371,"epoch_utc":null},{"commit":"5e8c28a30a283b6ef525e9e78d3ef2a0e1526927","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 11:47:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 6 11:47:42 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"]},"message":"comment fix","epoch":1575661662,"epoch_utc":null},{"commit":"e5d39031645ac897e0c0297f514ee62efe02f5f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 11:46:09 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 6 11:46:09 2019 -0800","stats":{"files_changed":1,"insertions":38,"deletions":17,"files":["docs/parsers/ifconfig.md"]},"message":"update ifconfig doc","epoch":1575661569,"epoch_utc":null},{"commit":"23975c9c9e1dd9d3e9fd7c05d231a86d646be048","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 11:44:57 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 6 11:44:57 2019 -0800","stats":{"files_changed":10,"insertions":132,"deletions":45,"files":["README.md","changelog.txt","jc/parsers/ifconfig.py","tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig2.json","tests/fixtures/osx-10.14.6/ifconfig.json","tests/fixtures/osx-10.14.6/ifconfig2.json","tests/fixtures/ubuntu-18.04/ifconfig.json","tests/test_ifconfig.py"]},"message":"fixup osx subnet mask and convert state to an array","epoch":1575661497,"epoch_utc":null},{"commit":"1e0dab8355e6fcb0ecde85270d4daac6ad93875b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 10:53:49 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 6 10:53:49 2019 -0800","stats":{"files_changed":10,"insertions":272,"deletions":2,"files":["tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.out","tests/fixtures/osx-10.11.6/ifconfig2.json","tests/fixtures/osx-10.11.6/ifconfig2.out","tests/fixtures/osx-10.14.6/ifconfig.json","tests/fixtures/osx-10.14.6/ifconfig.out","tests/fixtures/osx-10.14.6/ifconfig2.json","tests/fixtures/osx-10.14.6/ifconfig2.out","tests/fixtures/ubuntu-18.04/ifconfig.json"]},"message":"ifconfig fixture updates","epoch":1575658429,"epoch_utc":null},{"commit":"5f4c10ffd5a9cbe4e5e3d2b9adc34f36492eaf46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 10:39:11 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 6 10:39:11 2019 -0800","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["README.md","changelog.txt"]},"message":"doc update","epoch":1575657551,"epoch_utc":null},{"commit":"6f3d2b4b566b963fbf38572c587e8bd4e18881dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 10:30:01 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 6 10:30:01 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"require ifconfig-parser v0.0.5 for mac and bytes support","epoch":1575657001,"epoch_utc":null},{"commit":"fea8ace8446b64abe9e61a028951bc4e6df9f9c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 10:27:11 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 6 10:27:11 2019 -0800","stats":{"files_changed":2,"insertions":20,"deletions":6,"files":["README.md","jc/parsers/ifconfig.py"]},"message":"add OSX compatibility","epoch":1575656831,"epoch_utc":null},{"commit":"6633d9262c936217d8e90e64505c66b006cdab56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Nov 30 13:52:24 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Nov 30 13:52:24 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["_config.yml"]},"message":"Set theme jekyll-theme-cayman","epoch":1575150744,"epoch_utc":null},{"commit":"7d54137140e6d0515bc23c131a097af5c70c3379","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 28 11:51:54 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 28 11:51:54 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"link update","epoch":1574970714,"epoch_utc":null},{"commit":"2fcda6f2480ae6bd5428a0147c19f9af527391b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 25 18:34:21 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 25 18:34:21 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add motivation to readme","epoch":1574735661,"epoch_utc":null},{"commit":"9c1b8bacf9a59a86feb2a91eb44919e800491d1e","merge":"d192745 4867655","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 11:55:06 2019 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Nov 17 11:55:06 2019 -0800","message":"Merge pull request #16 from kellyjonbrazil/dev\n\nDev v1.5.1","epoch":1574020506,"epoch_utc":null},{"commit":"4867655eb297b1da7a55e0d3a24c7ed7c8af55c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 11:49:36 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Nov 17 11:49:36 2019 -0800","stats":{"files_changed":6,"insertions":172,"deletions":0,"files":[".../centos-7.7/iptables-filter-line-numbers.json",".../centos-7.7/iptables-filter-line-numbers.out","tests/fixtures/create_fixtures.sh",".../ubuntu-18.04/iptables-filter-line-numbers.json",".../ubuntu-18.04/iptables-filter-line-numbers.out","tests/test_iptables.py"]},"message":"add line-numbers tests","epoch":1574020176,"epoch_utc":null},{"commit":"47410d1a95406b0960aac705e7cfe925fea3172c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 11:05:46 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Nov 17 11:05:46 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["changelog.txt","setup.py"]},"message":"version bump","epoch":1574017546,"epoch_utc":null},{"commit":"5fa49f5e672fc6f8dc18fb4b1761c98b81362649","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 11:00:16 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Nov 17 11:00:16 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update","epoch":1574017216,"epoch_utc":null},{"commit":"36c53827fab6ac38c0010250ec387db40fdeecfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 10:56:55 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Nov 17 10:56:55 2019 -0800","stats":{"files_changed":19,"insertions":1316,"deletions":308,"files":["tests/fixtures/centos-7.7/systemctl-ls.json","tests/fixtures/centos-7.7/systemctl-ls.out","tests/fixtures/centos-7.7/systemctl-luf.json","tests/fixtures/centos-7.7/systemctl-luf.out","tests/fixtures/centos-7.7/systemctl.json","tests/fixtures/centos-7.7/systemctl.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/systemctl-lj.json","tests/fixtures/ubuntu-18.04/systemctl-lj.out","tests/fixtures/ubuntu-18.04/systemctl-ls.json","tests/fixtures/ubuntu-18.04/systemctl-ls.out","tests/fixtures/ubuntu-18.04/systemctl-luf.json","tests/fixtures/ubuntu-18.04/systemctl-luf.out","tests/fixtures/ubuntu-18.04/systemctl.json","tests/fixtures/ubuntu-18.04/systemctl.out","tests/test_systemctl.py","tests/test_systemctl_lj.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py"]},"message":"add systemctl tests","epoch":1574017015,"epoch_utc":null},{"commit":"51631aef5b1b6fdeff4ab543510a9f9e15a0c2c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 10:31:58 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Nov 17 10:31:58 2019 -0800","stats":{"files_changed":5,"insertions":358,"deletions":0,"files":["tests/fixtures/centos-7.7/systemctl.json","tests/fixtures/centos-7.7/systemctl.out","tests/fixtures/ubuntu-18.04/systemctl.json","tests/fixtures/ubuntu-18.04/systemctl.out","tests/test_systemctl.py"]},"message":"add systemctl tests","epoch":1574015518,"epoch_utc":null},{"commit":"a0298ac8a39093620b6859c909a78d11ab4a8e56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 10:26:48 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Nov 17 10:26:48 2019 -0800","stats":{"files_changed":5,"insertions":55,"deletions":0,"files":["tests/fixtures/centos-7.7/fstab.json","tests/fixtures/centos-7.7/fstab.out","tests/fixtures/ubuntu-18.04/fstab.json","tests/fixtures/ubuntu-18.04/fstab.out","tests/test_fstab.py"]},"message":"add fstab tests","epoch":1574015208,"epoch_utc":null},{"commit":"98c0188821ebaa71c5661f2e095cf464bec695f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:27:51 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 19:27:51 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/systemctl_ls.md","jc/parsers/systemctl_ls.py"]},"message":"formatting fix","epoch":1573874871,"epoch_utc":null},{"commit":"ab1dabe3e42997825707006b63cc0c03d28470d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:26:22 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 19:26:22 2019 -0800","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py"]},"message":"doc update","epoch":1573874782,"epoch_utc":null},{"commit":"94bdb11fdf0e16d89769046d317643334ef1acdd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:24:32 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 19:24:32 2019 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"]},"message":"remove systemctl from TODO","epoch":1573874672,"epoch_utc":null},{"commit":"b6727d68bab66164a3834b240ae868062aad9371","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:18:31 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 19:18:31 2019 -0800","stats":{"files_changed":1,"insertions":68,"deletions":0,"files":["README.md"]},"message":"add systemctl parsers","epoch":1573874311,"epoch_utc":null},{"commit":"89bad7fc2b4023b10b6eeb7ff1f8f18b71731cb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:13:53 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 19:13:53 2019 -0800","stats":{"files_changed":5,"insertions":1,"deletions":191,"files":["changelog.txt","docgen.sh","docs/parsers/systemctl_lm.md","jc/cli.py","jc/parsers/systemctl_lm.py"]},"message":"remove systemctl list-machines parser","epoch":1573874033,"epoch_utc":null},{"commit":"c0b8b810a2616e77973c1223f9c39329112337ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:07:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 19:07:42 2019 -0800","stats":{"files_changed":5,"insertions":306,"deletions":0,"files":["docgen.sh","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_lm.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md"]},"message":"add systemctl list parsers","epoch":1573873662,"epoch_utc":null},{"commit":"31eb65acd18b6d9163de900dbe48807a41a23785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:05:49 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 19:05:49 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_lm.py"]},"message":"doc fix","epoch":1573873549,"epoch_utc":null},{"commit":"513bbeb4649c011476930e1d1bf739ff06c2d66f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:02:57 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 19:02:57 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/systemctl_lj.py"]},"message":"add break on footer condition","epoch":1573873377,"epoch_utc":null},{"commit":"3a52fb725a0e56b52a0ea430266400b268360737","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 18:58:17 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 18:58:17 2019 -0800","stats":{"files_changed":2,"insertions":55,"deletions":29,"files":["jc/cli.py","jc/parsers/systemctl_lj.py"]},"message":"add systemctl list-jobs parser","epoch":1573873097,"epoch_utc":null},{"commit":"5affd444999de88b9bff7b49d790913540f97cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 18:36:12 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 18:36:12 2019 -0800","stats":{"files_changed":6,"insertions":342,"deletions":24,"files":["jc/cli.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_lm.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py"]},"message":"add systemctl_lj, lm, ls, and luf","epoch":1573871772,"epoch_utc":null},{"commit":"5dbc6e806c5d05bfa1f7e2156ed2573341eb23c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 12:28:28 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 12:28:28 2019 -0800","stats":{"files_changed":2,"insertions":142,"deletions":29,"files":["jc/cli.py","jc/parsers/systemctl_luf.py"]},"message":"add systemctl_luf parser","epoch":1573849708,"epoch_utc":null},{"commit":"59ae31f3f342c9337037aac4630310c9b9eb8287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 11:58:17 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 11:58:17 2019 -0800","stats":{"files_changed":6,"insertions":219,"deletions":0,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/systemctl.md","jc/cli.py","jc/parsers/systemctl.py"]},"message":"add systemctl parser","epoch":1573847897,"epoch_utc":null},{"commit":"230e921c2e8d931ea8a6abdf81215dbfc968b41c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 10:36:58 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 10:36:58 2019 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"]},"message":"remove fstab from TODO","epoch":1573843018,"epoch_utc":null},{"commit":"a7c3d88b08ab90b719035cb15d78afe708235742","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 10:01:29 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 10:01:29 2019 -0800","stats":{"files_changed":3,"insertions":136,"deletions":0,"files":["docgen.sh","docs/parsers/fstab.md","jc/parsers/fstab.py"]},"message":"update example and docs","epoch":1573840889,"epoch_utc":null},{"commit":"9b453bcb84dd9f2f566955eda1ab35c863b3e8a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 09:57:25 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 09:57:25 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":13,"files":["jc/parsers/fstab.py"]},"message":"remove commented code block","epoch":1573840645,"epoch_utc":null},{"commit":"ce43c782f601fc12267fa22279e8e0142ecc3a7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 09:32:12 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 09:32:12 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"fstab update","epoch":1573839132,"epoch_utc":null},{"commit":"cb16faaf4d1700379d53053fe06824fd03404f87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 09:31:28 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 09:31:28 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"helptext update","epoch":1573839088,"epoch_utc":null},{"commit":"3f1d3ff6d85422536e0adfb6433fd3ec0399ebe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 09:29:54 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 09:29:54 2019 -0800","stats":{"files_changed":2,"insertions":73,"deletions":6,"files":["README.md","jc/parsers/fstab.py"]},"message":"add examples","epoch":1573838994,"epoch_utc":null},{"commit":"6f67eecd5ed46f8a692ff5dd607a2395a5c838ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 09:22:07 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 09:22:07 2019 -0800","stats":{"files_changed":2,"insertions":108,"deletions":0,"files":["jc/cli.py","jc/parsers/fstab.py"]},"message":"add fstab parser","epoch":1573838527,"epoch_utc":null},{"commit":"e75c819190634f0a9048942b39eda691831829ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 08:51:53 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 08:51:53 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"changelog update","epoch":1573836713,"epoch_utc":null},{"commit":"601e68d104dd43940acadaa574dfd9b5117b0476","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 08:40:13 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 08:40:13 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/hosts.md","jc/parsers/hosts.py"]},"message":"doc update","epoch":1573836013,"epoch_utc":null},{"commit":"8285ecfd1e7810102cdbc399398a16f999c841ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 08:40:01 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 08:40:01 2019 -0800","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["tests/fixtures/centos-7.7/hosts.out","tests/fixtures/ubuntu-18.04/hosts.out"]},"message":"enhance test file with comments","epoch":1573836001,"epoch_utc":null},{"commit":"8726de902e527b95a12afd79a53d533cc176703d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 22:04:59 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 22:04:59 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"add hosts parser","epoch":1573797899,"epoch_utc":null},{"commit":"4133585274b0e7faa0255a911468248eb390d673","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 22:04:48 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 22:04:48 2019 -0800","stats":{"files_changed":5,"insertions":53,"deletions":0,"files":["tests/fixtures/centos-7.7/hosts.json","tests/fixtures/centos-7.7/hosts.out","tests/fixtures/ubuntu-18.04/hosts.json","tests/fixtures/ubuntu-18.04/hosts.out","tests/test_hosts.py"]},"message":"add hosts tests","epoch":1573797888,"epoch_utc":null},{"commit":"ad913b141721655a72a7b2a6ad60037e5acd5f9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:59:06 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 21:59:06 2019 -0800","stats":{"files_changed":4,"insertions":148,"deletions":2,"files":["README.md","docgen.sh","docs/parsers/hosts.md","jc/parsers/hosts.py"]},"message":"add hosts docs","epoch":1573797546,"epoch_utc":null},{"commit":"7113e5a844fc0304f62f4afe65b5cbc816f75372","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:55:08 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 21:55:08 2019 -0800","stats":{"files_changed":1,"insertions":10,"deletions":0,"files":["jc/parsers/hosts.py"]},"message":"filter out comments at the end of the line","epoch":1573797308,"epoch_utc":null},{"commit":"a3a8369dc0e7227072f595cef1e57d471eff4d2f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:36:02 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 21:36:02 2019 -0800","stats":{"files_changed":1,"insertions":51,"deletions":9,"files":["jc/parsers/hosts.py"]},"message":"add docs","epoch":1573796162,"epoch_utc":null},{"commit":"64016b8ef049d5d4f02b4371f5cc9632c19bcaa2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:31:25 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 21:31:25 2019 -0800","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["jc/cli.py","jc/parsers/hosts.py"]},"message":"add hosts parser","epoch":1573795885,"epoch_utc":null},{"commit":"1cb49d60c84054b0446f299f6b4bab7d102101c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:21:15 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 21:21:15 2019 -0800","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["README.md"]},"message":"remove sar and sadf","epoch":1573795275,"epoch_utc":null},{"commit":"c858adfd12144569d0b990a217c5bcd75bd23828","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:11:05 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 21:11:05 2019 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"]},"message":"remove stat from todo","epoch":1573794665,"epoch_utc":null},{"commit":"08d68327c777dd740d93a1b5fff8cf62f58904c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:08:09 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 21:08:09 2019 -0800","stats":{"files_changed":5,"insertions":8080,"deletions":0,"files":["tests/fixtures/centos-7.7/stat.json","tests/fixtures/centos-7.7/stat.out","tests/fixtures/ubuntu-18.04/stat.json","tests/fixtures/ubuntu-18.04/stat.out","tests/test_stat.py"]},"message":"add stat tests","epoch":1573794489,"epoch_utc":null},{"commit":"0d7c6c5664911af7a41149d51dd6ae05b39d7648","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 20:57:49 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 20:57:49 2019 -0800","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/parsers/stat.md","jc/parsers/stat.py"]},"message":"doc fix and add continue lines","epoch":1573793869,"epoch_utc":null},{"commit":"8bfa41dbf485cb06c928bc00a68727d2ceac21fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 17:36:29 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 17:36:29 2019 -0800","stats":{"files_changed":3,"insertions":22,"deletions":14,"files":["README.md","docs/parsers/stat.md","jc/parsers/stat.py"]},"message":"change values to null if -","epoch":1573781789,"epoch_utc":null},{"commit":"7e2fa48ed4f3fd452082ce06e7306efd38b2d508","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 17:24:51 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 17:24:51 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"update changelog","epoch":1573781091,"epoch_utc":null},{"commit":"340635cad5224f2c715bf961956f4b9b6119d80b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 17:23:44 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 17:23:44 2019 -0800","stats":{"files_changed":3,"insertions":408,"deletions":111,"files":["docgen.sh","docs/parsers/ss.md","docs/parsers/stat.md"]},"message":"fix stats doc","epoch":1573781024,"epoch_utc":null},{"commit":"8f77d1de098f035767d73a6965a695b95b75e161","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 17:21:56 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 17:21:56 2019 -0800","stats":{"files_changed":2,"insertions":111,"deletions":253,"files":["docgen.sh","docs/parsers/ss.md"]},"message":"add stat docs","epoch":1573780916,"epoch_utc":null},{"commit":"7dcf1b25ffb801375f0bf4263f34713ded904de9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 17:20:13 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 17:20:13 2019 -0800","stats":{"files_changed":1,"insertions":13,"deletions":0,"files":["jc/parsers/stat.py"]},"message":"add link_to field","epoch":1573780813,"epoch_utc":null},{"commit":"9b735381063a1167a6a74864a43b81aefd98009f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 16:44:12 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 16:44:12 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"]},"message":"set compatibility to linux only","epoch":1573778652,"epoch_utc":null},{"commit":"3bf8c8c6dbdf7e03e26b4581e35c3274084c07ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 16:40:52 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 16:40:52 2019 -0800","stats":{"files_changed":7,"insertions":27,"deletions":27,"files":["jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"pep8 fixes","epoch":1573778452,"epoch_utc":null},{"commit":"04a1ff2ca7873d55cdbc831e521f3d4892074d98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 16:36:00 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 16:36:00 2019 -0800","stats":{"files_changed":8,"insertions":28,"deletions":28,"files":["jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py"]},"message":"pep8 fixes","epoch":1573778160,"epoch_utc":null},{"commit":"64647d230ac936cb43864481ae0f45d13707d7b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 16:32:11 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 16:32:11 2019 -0800","stats":{"files_changed":6,"insertions":21,"deletions":21,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py"]},"message":"pep8 cleanup","epoch":1573777931,"epoch_utc":null},{"commit":"c2a67e1b70f33044aecabd8b46018117cb38cb9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 16:31:52 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 16:31:52 2019 -0800","stats":{"files_changed":2,"insertions":213,"deletions":16,"files":["README.md","jc/parsers/stat.py"]},"message":"add stat parser","epoch":1573777912,"epoch_utc":null},{"commit":"edb9a7c76e1fedaf37b6a226ad4e1cfc08a9a5ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 15:26:36 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 15:26:36 2019 -0800","stats":{"files_changed":2,"insertions":94,"deletions":0,"files":["jc/cli.py","jc/parsers/stat.py"]},"message":"add stat parser","epoch":1573773996,"epoch_utc":null},{"commit":"a407f5b67833cc5f8dda9fe8265cd34e62f28d14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 14:01:04 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 14:01:04 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"minor update","epoch":1573768864,"epoch_utc":null},{"commit":"e5b4987acb70e854d9996350235c5535b4a46b69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 14:00:06 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 14:00:06 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"doc update","epoch":1573768806,"epoch_utc":null},{"commit":"ba8cc18eebe779742cff0ba4c8bebe376e787c8c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 13:56:09 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 13:56:09 2019 -0800","stats":{"files_changed":5,"insertions":405,"deletions":0,"files":["tests/fixtures/centos-7.7/ss-sudo-a.json","tests/fixtures/centos-7.7/ss-sudo-a.out","tests/fixtures/ubuntu-18.04/ss-sudo-a.json","tests/fixtures/ubuntu-18.04/ss-sudo-a.out","tests/test_ss.py"]},"message":"add ss tests","epoch":1573768569,"epoch_utc":null},{"commit":"d2c7316e00b9aaf19231c05351821041458baf98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 13:43:07 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 13:43:07 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"update command options info","epoch":1573767787,"epoch_utc":null},{"commit":"609aa14d243206e81ed31f8438c3f42e8263e140","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 13:38:52 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 13:38:52 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/ss.md","jc/parsers/ss.py"]},"message":"spelling fix","epoch":1573767532,"epoch_utc":null},{"commit":"ef1ad4c700fcb740b5fbe1e12205b9a30ae427ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 13:37:55 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 13:37:55 2019 -0800","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["docs/parsers/ss.md","jc/parsers/ss.py"]},"message":"doc update","epoch":1573767475,"epoch_utc":null},{"commit":"a0e2732152dc3005914b9a3e4f03e937a113c67f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 09:46:10 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 09:46:10 2019 -0800","stats":{"files_changed":1,"insertions":64,"deletions":12,"files":["README.md"]},"message":"add ss example","epoch":1573753570,"epoch_utc":null},{"commit":"9b5d3e3be1ac07813e716f8426fe89cced478221","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 09:42:44 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 09:42:44 2019 -0800","stats":{"files_changed":1,"insertions":135,"deletions":25,"files":["docs/parsers/ss.md"]},"message":"update doc","epoch":1573753364,"epoch_utc":null},{"commit":"2663ef31fbc1b69b89b8032640a25065cc953866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 09:38:19 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 09:38:19 2019 -0800","stats":{"files_changed":1,"insertions":159,"deletions":30,"files":["jc/parsers/ss.py"]},"message":"fix field names per ss documentation","epoch":1573753099,"epoch_utc":null},{"commit":"a4cdd3378e6a031f16dd371ed5cd60ff018feb32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 13 08:17:41 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 13 08:17:41 2019 -0800","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["README.md"]},"message":"add compatibility info","epoch":1573661861,"epoch_utc":null},{"commit":"2f805da24d0e833e3d2a1f3a5ec34031fa911c05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 13 08:04:40 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 13 08:04:40 2019 -0800","stats":{"files_changed":45,"insertions":51,"deletions":51,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/utils.md","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/utils.py"]},"message":"add colon to parameter in docs","epoch":1573661080,"epoch_utc":null},{"commit":"79152a946d93e4facf9711bfa0f421e1978e0f1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 13 07:46:14 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 13 07:46:14 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"initialize network_list and socket_list variables","epoch":1573659974,"epoch_utc":null},{"commit":"de37bb37d01b397df2b5992b4acd64817380401d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 13 07:45:37 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 13 07:45:37 2019 -0800","stats":{"files_changed":3,"insertions":187,"deletions":1,"files":["docgen.sh","docs/parsers/ss.md","jc/parsers/ss.py"]},"message":"add ss docs","epoch":1573659937,"epoch_utc":null},{"commit":"f783e44e5c0cd05733da5d24573f06d05760f993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 18:58:58 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 18:58:58 2019 -0800","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["README.md","changelog.txt"]},"message":"doc fix","epoch":1573613938,"epoch_utc":null},{"commit":"af82f2c991ac0668485e75ae78a26b9553ec8b13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 18:56:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 18:56:42 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update raw format note","epoch":1573613802,"epoch_utc":null},{"commit":"46774daf9d3e0612df8f79d4b6b724e612ceb725","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 18:51:21 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 18:51:21 2019 -0800","stats":{"files_changed":2,"insertions":194,"deletions":4,"files":["README.md","jc/parsers/ss.py"]},"message":"doc update","epoch":1573613481,"epoch_utc":null},{"commit":"648306b7856fe2e296ce463ff4c9c2a8632c92d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 18:04:40 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 18:04:40 2019 -0800","stats":{"files_changed":1,"insertions":44,"deletions":22,"files":["jc/parsers/ss.py"]},"message":"process ss data","epoch":1573610680,"epoch_utc":null},{"commit":"b7a4f205b80c0a6a41aaabf59703525ac526c295","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 17:10:06 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 17:10:06 2019 -0800","stats":{"files_changed":1,"insertions":17,"deletions":14,"files":["jc/parsers/ss.py"]},"message":"parser fixes","epoch":1573607406,"epoch_utc":null},{"commit":"fdb168b43a69358a97bf43b71a0adbc7b1ef56f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 16:34:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 16:34:42 2019 -0800","stats":{"files_changed":2,"insertions":120,"deletions":0,"files":["jc/cli.py","jc/parsers/ss.py"]},"message":"add ss parser","epoch":1573605282,"epoch_utc":null},{"commit":"b6f65c93c462856f26201df0cbfe804b29a65169","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 15:05:21 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 15:05:21 2019 -0800","stats":{"files_changed":3,"insertions":43,"deletions":69,"files":["README.md","docs/parsers/ps.md","jc/parsers/ps.py"]},"message":"ps doc update","epoch":1573599921,"epoch_utc":null},{"commit":"3f4838f17a81969718d9e5b6bafa21e0b92e1d95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 14:22:49 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 14:22:49 2019 -0800","stats":{"files_changed":2,"insertions":0,"deletions":6,"files":["docgen.sh","docs/cli.md"]},"message":"remove cli.md","epoch":1573597369,"epoch_utc":null},{"commit":"eef0dee2aa206716d9cf011bec58a06c46bbee15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 14:20:59 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 14:20:59 2019 -0800","stats":{"files_changed":2,"insertions":8,"deletions":0,"files":["docs/utils.md","jc/utils.py"]},"message":"doc update","epoch":1573597259,"epoch_utc":null},{"commit":"e17388d3b2d1521d963bf9dd9e7a4ba5ba9bb09d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 14:19:40 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 14:19:40 2019 -0800","stats":{"files_changed":2,"insertions":44,"deletions":4,"files":["docs/utils.md","jc/utils.py"]},"message":"doc update","epoch":1573597180,"epoch_utc":null},{"commit":"7e6a1bc719b7160ba70cd326ff6aa182993a7380","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 14:15:22 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 14:15:22 2019 -0800","stats":{"files_changed":2,"insertions":41,"deletions":63,"files":["docs/readme.md","jc/__init__.py"]},"message":"doc update","epoch":1573596922,"epoch_utc":null},{"commit":"37738a2ea2f15af847e4b8383aba911e2020a3e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 14:10:26 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 14:10:26 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update contributions","epoch":1573596626,"epoch_utc":null},{"commit":"c5834a57db8957723a1425b9db46c433e28a3af1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 13:35:32 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 13:35:32 2019 -0800","stats":{"files_changed":1,"insertions":14,"deletions":0,"files":["README.md"]},"message":"add todo section","epoch":1573594532,"epoch_utc":null},{"commit":"91b9373f380e06f91888811edbfb21747ff08810","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 13:05:19 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 13:05:19 2019 -0800","stats":{"files_changed":1,"insertions":417,"deletions":673,"files":["README.md"]},"message":"new examples","epoch":1573592719,"epoch_utc":null},{"commit":"ce0bb5b816eed0c75542ead474c3dcb8401be2d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:52:16 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 11:52:16 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting fix","epoch":1573588336,"epoch_utc":null},{"commit":"f330ff0eff00586f46d18497f2441e94b6430e91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:49:14 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 11:49:14 2019 -0800","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["README.md"]},"message":"wrap example text","epoch":1573588154,"epoch_utc":null},{"commit":"4b02700414660b90518311485761870402368625","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:46:52 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 11:46:52 2019 -0800","stats":{"files_changed":1,"insertions":9,"deletions":20,"files":["README.md"]},"message":"update simple examples","epoch":1573588012,"epoch_utc":null},{"commit":"ee30180376b7acec46314bbc483866bff41c362a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:39:33 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 11:39:33 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"fix note","epoch":1573587573,"epoch_utc":null},{"commit":"338e0ff15c7fac84475c1ed107e6a23e7a009b1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:38:50 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 11:38:50 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]},"message":"add schema note","epoch":1573587530,"epoch_utc":null},{"commit":"3ac75305dfa33429646bb5d415567034cccfeee3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:28:10 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 11:28:10 2019 -0800","stats":{"files_changed":39,"insertions":351,"deletions":39,"files":["docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"update process() doc","epoch":1573586890,"epoch_utc":null},{"commit":"3bdcf44afb708cf6a716a0847b119f895602c23e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:22:17 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 11:22:17 2019 -0800","stats":{"files_changed":2,"insertions":18,"deletions":2,"files":["docs/parsers/arp.md","jc/parsers/arp.py"]},"message":"doc update","epoch":1573586537,"epoch_utc":null},{"commit":"e3f4ffede56fe48c0a282a021ac5cdfd7a8abee9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:18:00 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 11:18:00 2019 -0800","stats":{"files_changed":20,"insertions":172,"deletions":77,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md"]},"message":"doc update","epoch":1573586280,"epoch_utc":null},{"commit":"f0c8725d4355113f7690f20bb99078e488084ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:17:33 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 11:17:33 2019 -0800","stats":{"files_changed":21,"insertions":181,"deletions":81,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"doc update","epoch":1573586253,"epoch_utc":null},{"commit":"5473bc4eb697d00bd26a038287e1137e438cacb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:12:41 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 11:12:41 2019 -0800","stats":{"files_changed":2,"insertions":16,"deletions":6,"files":["docs/parsers/arp.md","jc/parsers/arp.py"]},"message":"doc update","epoch":1573585961,"epoch_utc":null},{"commit":"b9bd9422bfa46144416fa65add2e041d4124357b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:19:01 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 07:19:01 2019 -0800","stats":{"files_changed":2,"insertions":380,"deletions":46,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"doc update","epoch":1573571941,"epoch_utc":null},{"commit":"cb5729a070925a7fa29f762bd4b074532f5cba55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:18:27 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 07:18:27 2019 -0800","stats":{"files_changed":1,"insertions":62,"deletions":44,"files":["README.md"]},"message":"add options to docs","epoch":1573571907,"epoch_utc":null},{"commit":"f0b1ab42337746afd37365abdf44729d530d5410","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:08:35 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 07:08:35 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/utils.md","jc/utils.py"]},"message":"doc update","epoch":1573571315,"epoch_utc":null},{"commit":"b15386e849b9fea347e7b17307eedf779d8022fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:07:43 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 07:07:43 2019 -0800","stats":{"files_changed":2,"insertions":11,"deletions":5,"files":["docs/utils.md","jc/utils.py"]},"message":"doc update","epoch":1573571263,"epoch_utc":null},{"commit":"d2a2c8da35ee44e9a7572885609548eb809bcdda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:03:02 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 07:03:02 2019 -0800","stats":{"files_changed":3,"insertions":1,"deletions":5,"files":["docs/parsers/iptables.md","docs/parsers/mount.md","docs/parsers/uname.md"]},"message":"doc updates","epoch":1573570982,"epoch_utc":null},{"commit":"7251548cbb09beae6971385a56036e9649bd9b2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:01:36 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 07:01:36 2019 -0800","stats":{"files_changed":3,"insertions":3,"deletions":5,"files":["jc/parsers/iptables.py","jc/parsers/mount.py","jc/parsers/uname.py"]},"message":"documentation updates","epoch":1573570896,"epoch_utc":null},{"commit":"146e29f7cbc0f396be67dbd7ae971a4ef4dafb7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 18:30:46 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 18:30:46 2019 -0800","stats":{"files_changed":47,"insertions":5386,"deletions":2249,"files":["docgen.sh","docs/cli.md","docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/readme.md","docs/utils.md","jc/__init__.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/utils.py"]},"message":"update docs","epoch":1573525846,"epoch_utc":null},{"commit":"363fd3eab409351121dab8a11c6b565829ccd84a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 16:27:28 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 16:27:28 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"move parser_name to except block","epoch":1573518448,"epoch_utc":null},{"commit":"4083dd4260ff3a8bb6649e1661cf3e058fdbad59","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 16:16:41 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 16:16:41 2019 -0800","stats":{"files_changed":2,"insertions":24,"deletions":5,"files":["changelog.txt","jc/cli.py"]},"message":"add -d option","epoch":1573517801,"epoch_utc":null},{"commit":"b2b74547baaf33058d74fc08cb665777b19bd05a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 15:53:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 15:53:42 2019 -0800","stats":{"files_changed":6,"insertions":317,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-sudo-aeep.json","tests/fixtures/centos-7.7/netstat-sudo-aeep.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.json","tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.out","tests/test_netstat.py"]},"message":"add netstat-sudo-aeep tests","epoch":1573516422,"epoch_utc":null},{"commit":"dddb0baabf8a78261ac80380b97e7c92c7ce4d89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 15:53:22 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 15:53:22 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/netstat.py"]},"message":"use \\u2063 instead of \\u2026","epoch":1573516402,"epoch_utc":null},{"commit":"84b4f67ef9d4bb0db201a095d74400a56394589d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 14:34:36 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 14:34:36 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["tests/fixtures/centos-7.7/ps-axu.json","tests/fixtures/ubuntu-18.04/ps-axu.json"]},"message":"new json output","epoch":1573511676,"epoch_utc":null},{"commit":"3a089138b8c269ba3c5f7aec87ae3f8ec368c3ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 14:31:27 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 14:31:27 2019 -0800","stats":{"files_changed":1,"insertions":129,"deletions":9,"files":["jc/parsers/ps.py"]},"message":"add int and float changes","epoch":1573511487,"epoch_utc":null},{"commit":"3ff0305c8e62ce3b5a8f3f9174c5a9da3bc22766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 13:00:17 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 13:00:17 2019 -0800","stats":{"files_changed":8,"insertions":54,"deletions":2,"files":["tests/fixtures/centos-7.7/lsblk-allcols.json","tests/fixtures/centos-7.7/lsblk-allcols.out","tests/fixtures/centos-7.7/lsblk.json","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/lsblk-allcols.json","tests/fixtures/ubuntu-18.04/lsblk-allcols.out","tests/fixtures/ubuntu-18.04/lsblk.json","tests/test_lsblk.py"]},"message":"add lsblk tests","epoch":1573506017,"epoch_utc":null},{"commit":"761edc3c6cfc215fe45c65ee2bb5462cb460b6a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 12:43:27 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 12:43:27 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":6,"files":["jc/parsers/lsblk.py"]},"message":"remove unused parse_pairs function","epoch":1573505007,"epoch_utc":null},{"commit":"3351c81f647ac97a5038cc0c14adb31e55832a77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 12:40:16 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 12:40:16 2019 -0800","stats":{"files_changed":1,"insertions":200,"deletions":2,"files":["jc/parsers/lsblk.py"]},"message":"add documentation","epoch":1573504816,"epoch_utc":null},{"commit":"3dfc6f67d770c59804bdeb371d5c78e3f3668f9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 12:00:23 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 12:00:23 2019 -0800","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/lsblk.py"]},"message":"change empty values to Null","epoch":1573502423,"epoch_utc":null},{"commit":"1546ec3bd139ef687282f60786388b5207541c98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 11:53:16 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 11:53:16 2019 -0800","stats":{"files_changed":1,"insertions":17,"deletions":13,"files":["jc/parsers/lsblk.py"]},"message":"fixes for right justified columns","epoch":1573501996,"epoch_utc":null},{"commit":"2a953011f72e922c89b9af6dfebd1983da7c338d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 10 15:18:53 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Nov 10 15:18:53 2019 -0800","stats":{"files_changed":2,"insertions":50,"deletions":155,"files":["changelog.txt","jc/parsers/lsblk.py"]},"message":"rewrite of lsblk parser to use a custom delimiter","epoch":1573427933,"epoch_utc":null},{"commit":"d2f755de9d2be7b0af5f010042e1f4ca589c5464","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 17:08:41 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 17:08:41 2019 -0800","stats":{"files_changed":14,"insertions":250,"deletions":566,"files":["tests/test_ifconfig.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_ls.py","tests/test_lsblk.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_ps.py","tests/test_route.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py"]},"message":"updates tests","epoch":1573261721,"epoch_utc":null},{"commit":"f363334639c5fa3a43889794ea52409056a2d886","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 16:21:09 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 16:21:09 2019 -0800","stats":{"files_changed":5,"insertions":87,"deletions":219,"files":["tests/test_df.py","tests/test_dig.py","tests/test_env.py","tests/test_free.py","tests/test_history.py"]},"message":"update tests","epoch":1573258869,"epoch_utc":null},{"commit":"750197e48596ad96804477053d3ff3c8063ea68a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 16:04:19 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 16:04:19 2019 -0800","stats":{"files_changed":1,"insertions":27,"deletions":70,"files":["tests/test_arp.py"]},"message":"new tests","epoch":1573257859,"epoch_utc":null},{"commit":"36b349e4ed39fe611c7d87a47c378cc4d4627ad2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 16:03:41 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 16:03:41 2019 -0800","stats":{"files_changed":76,"insertions":76,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-a.json","tests/fixtures/centos-7.7/arp-v.json","tests/fixtures/centos-7.7/arp.json","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/df.json","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/centos-7.7/env.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/centos-7.7/free.json","tests/fixtures/centos-7.7/history.json","tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/centos-7.7/iptables-filter-nv.json","tests/fixtures/centos-7.7/iptables-filter.json","tests/fixtures/centos-7.7/iptables-mangle.json","tests/fixtures/centos-7.7/iptables-nat.json","tests/fixtures/centos-7.7/iptables-raw.json","tests/fixtures/centos-7.7/jobs.json","tests/fixtures/centos-7.7/ls-al.json","tests/fixtures/centos-7.7/ls-alh.json","tests/fixtures/centos-7.7/ls.json","tests/fixtures/centos-7.7/lsblk.json","tests/fixtures/centos-7.7/lsmod.json","tests/fixtures/centos-7.7/lsof-sudo.json","tests/fixtures/centos-7.7/lsof.json","tests/fixtures/centos-7.7/mount.json","tests/fixtures/centos-7.7/netstat-l.json","tests/fixtures/centos-7.7/netstat-p.json","tests/fixtures/centos-7.7/netstat-sudo-lnp.json","tests/fixtures/centos-7.7/netstat.json","tests/fixtures/centos-7.7/ps-axu.json","tests/fixtures/centos-7.7/ps-ef.json","tests/fixtures/centos-7.7/route-vn.json","tests/fixtures/centos-7.7/route.json","tests/fixtures/centos-7.7/uname-a.json","tests/fixtures/centos-7.7/uptime.json","tests/fixtures/centos-7.7/w.json","tests/fixtures/ubuntu-18.04/arp-a.json","tests/fixtures/ubuntu-18.04/arp-v.json","tests/fixtures/ubuntu-18.04/arp.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/df.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json","tests/fixtures/ubuntu-18.04/env.json","tests/fixtures/ubuntu-18.04/free-h.json","tests/fixtures/ubuntu-18.04/free.json","tests/fixtures/ubuntu-18.04/history.json","tests/fixtures/ubuntu-18.04/ifconfig.json","tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","tests/fixtures/ubuntu-18.04/iptables-filter.json","tests/fixtures/ubuntu-18.04/iptables-mangle.json","tests/fixtures/ubuntu-18.04/iptables-nat.json","tests/fixtures/ubuntu-18.04/iptables-raw.json","tests/fixtures/ubuntu-18.04/jobs.json","tests/fixtures/ubuntu-18.04/ls-al.json","tests/fixtures/ubuntu-18.04/ls-alh.json","tests/fixtures/ubuntu-18.04/ls.json","tests/fixtures/ubuntu-18.04/lsblk.json","tests/fixtures/ubuntu-18.04/lsmod.json","tests/fixtures/ubuntu-18.04/lsof-sudo.json","tests/fixtures/ubuntu-18.04/lsof.json","tests/fixtures/ubuntu-18.04/mount.json","tests/fixtures/ubuntu-18.04/netstat-l.json","tests/fixtures/ubuntu-18.04/netstat-p.json","tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.json","tests/fixtures/ubuntu-18.04/netstat.json","tests/fixtures/ubuntu-18.04/ps-axu.json","tests/fixtures/ubuntu-18.04/ps-ef.json","tests/fixtures/ubuntu-18.04/route-vn.json","tests/fixtures/ubuntu-18.04/route.json","tests/fixtures/ubuntu-18.04/uname-a.json","tests/fixtures/ubuntu-18.04/uptime.json","tests/fixtures/ubuntu-18.04/w.json"]},"message":"json output files","epoch":1573257821,"epoch_utc":null},{"commit":"b5f1e94fe2859c4fbcf126f8f8fb20d71a9b6433","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 16:03:14 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 16:03:14 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/netstat.py"]},"message":"fix for space before '-' in program_name","epoch":1573257794,"epoch_utc":null},{"commit":"6a504fb0e10b1ef551ed9fe780926fe5ca02d267","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 16:02:44 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 16:02:44 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"]},"message":"add exception type","epoch":1573257764,"epoch_utc":null},{"commit":"e02bad2240bacbc31097d931a902a34217d559db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 12:22:41 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 12:22:41 2019 -0800","stats":{"files_changed":1,"insertions":123,"deletions":175,"files":["jc/parsers/netstat.py"]},"message":"update documentation","epoch":1573244561,"epoch_utc":null},{"commit":"1d4043a3b64c38a20a0db065c3bdc3c6a2d068bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 12:14:09 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 12:14:09 2019 -0800","stats":{"files_changed":1,"insertions":52,"deletions":0,"files":["jc/parsers/foo.py"]},"message":"add template parser","epoch":1573244049,"epoch_utc":null},{"commit":"039e034829789ca314a00abd4f1d9ad06f1a6eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 11:47:58 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 11:47:58 2019 -0800","stats":{"files_changed":1,"insertions":19,"deletions":6,"files":["jc/parsers/netstat.py"]},"message":"fix parsing issues in program_name when spaces are in the name","epoch":1573242478,"epoch_utc":null},{"commit":"d828de4f4f2f4c3d582fddee79830d12511c3299","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 09:07:05 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 09:07:05 2019 -0800","stats":{"files_changed":1,"insertions":53,"deletions":9,"files":["jc/parsers/w.py"]},"message":"update documentation","epoch":1573232825,"epoch_utc":null},{"commit":"098000bb10a3f5ed33d285c6ba4f0dfb9a013fdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 09:04:03 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 09:04:03 2019 -0800","stats":{"files_changed":2,"insertions":24,"deletions":9,"files":["changelog.txt","jc/parsers/w.py"]},"message":"fix blank 'from' column issue","epoch":1573232643,"epoch_utc":null},{"commit":"b41165eff5cd7371e852cd33e084a919524ead9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 19:13:15 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 19:13:15 2019 -0800","stats":{"files_changed":1,"insertions":31,"deletions":1,"files":["jc/parsers/w.py"]},"message":"process w data","epoch":1573182795,"epoch_utc":null},{"commit":"6ad7891b2b34fae1a366568e4eba86e886a6dd84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 18:54:52 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 18:54:52 2019 -0800","stats":{"files_changed":1,"insertions":59,"deletions":14,"files":["jc/parsers/uptime.py"]},"message":"process uptime data","epoch":1573181692,"epoch_utc":null},{"commit":"72138315598cd405bc0508b554108bf3f730dcb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 18:47:01 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 18:47:01 2019 -0800","stats":{"files_changed":1,"insertions":31,"deletions":10,"files":["jc/parsers/uname.py"]},"message":"add process boilerplate","epoch":1573181221,"epoch_utc":null},{"commit":"10eedd82e4c4678fbf989fe599d7ca75deced5a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 18:34:06 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 18:34:06 2019 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["changelog.txt"]},"message":"changelog update","epoch":1573180446,"epoch_utc":null},{"commit":"a55493da0f1457a46f29511e0835adfa9d748f7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 18:33:51 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 18:33:51 2019 -0800","stats":{"files_changed":1,"insertions":93,"deletions":6,"files":["jc/parsers/route.py"]},"message":"process route data","epoch":1573180431,"epoch_utc":null},{"commit":"89973f4162317693b0d094a64115ee87d8479d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 15:33:12 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 15:33:12 2019 -0800","stats":{"files_changed":1,"insertions":45,"deletions":27,"files":["jc/parsers/ps.py"]},"message":"doc updates and tty fix","epoch":1573169592,"epoch_utc":null},{"commit":"4802222ad50d55372f2b883d83a61181086b0619","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 15:24:03 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 15:24:03 2019 -0800","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/parsers/ps.py"]},"message":"process ps data","epoch":1573169043,"epoch_utc":null},{"commit":"bcd28f06f87a4260d1787399d723817afd6aee90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 15:09:57 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 15:09:57 2019 -0800","stats":{"files_changed":1,"insertions":23,"deletions":1,"files":["jc/parsers/ps.py"]},"message":"prep ps for process","epoch":1573168197,"epoch_utc":null},{"commit":"e17a47a7fa7f4c1bb4c4b55fb004963fc1b61434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 14:51:05 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 14:51:05 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"fix typo","epoch":1573167065,"epoch_utc":null},{"commit":"cad2e16c7aa54a70f476bf4268ff8e5985cff468","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 14:49:21 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 14:49:21 2019 -0800","stats":{"files_changed":1,"insertions":353,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"document examples","epoch":1573166961,"epoch_utc":null},{"commit":"5da5d278dac77bd4aa21819194e7f9e178bd1887","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 14:43:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 14:43:42 2019 -0800","stats":{"files_changed":1,"insertions":23,"deletions":0,"files":["jc/parsers/netstat.py"]},"message":"process netstat data","epoch":1573166622,"epoch_utc":null},{"commit":"81b6776e57c113cbfb8346d1cfd83532a440c257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 13:58:55 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 13:58:55 2019 -0800","stats":{"files_changed":1,"insertions":0,"deletions":177,"files":["jc/parsers/netstat.py.old"]},"message":"remove old netstat parser","epoch":1573163935,"epoch_utc":null},{"commit":"5ecb6bd58b4ed91f63e4a0b5939378bd9925b7b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 13:58:37 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 13:58:37 2019 -0800","stats":{"files_changed":2,"insertions":4,"deletions":3,"files":["changelog.txt","jc/parsers/netstat.py"]},"message":"doc updates","epoch":1573163917,"epoch_utc":null},{"commit":"21b56096c57cfcf5c55fdf5f9bab88b6d5c7dd73","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 13:53:23 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 13:53:23 2019 -0800","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["jc/parsers/netstat.py"]},"message":"finalize parse_post","epoch":1573163603,"epoch_utc":null},{"commit":"8c78f959731a25a05ee6361a14853c92f8fce69b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 12:13:25 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 12:13:25 2019 -0800","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"clean up trailing spaces on entries","epoch":1573157605,"epoch_utc":null},{"commit":"94a88bb5669d9a9a5dff085a4c4111bdd39df8f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 10:52:02 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 10:52:02 2019 -0800","stats":{"files_changed":1,"insertions":35,"deletions":17,"files":["jc/parsers/netstat.py"]},"message":"post_parse flags and program_name","epoch":1573152722,"epoch_utc":null},{"commit":"579124475b0b517b36ddbe5bdb13be14807dea1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 09:02:27 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 09:02:27 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"simplify parser_map code","epoch":1573146147,"epoch_utc":null},{"commit":"5da83e020015eb5559d216bc3f39b3854e76adf3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:23:11 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 08:23:11 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"]},"message":"fix found variable error","epoch":1573143791,"epoch_utc":null},{"commit":"a90a76d004b923edece07a52a3aa400a9ef4b005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:15:19 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 08:15:19 2019 -0800","stats":{"files_changed":2,"insertions":177,"deletions":140,"files":["jc/parsers/netstat.py.old","jc/parsers/netstat2.py"]},"message":"move out old netstat parser","epoch":1573143319,"epoch_utc":null},{"commit":"bdfa95912398b2630fcb13e866f4013747fd0975","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:07:43 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 08:07:43 2019 -0800","stats":{"files_changed":20,"insertions":209,"deletions":212,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"fix compatibility code","epoch":1573142863,"epoch_utc":null},{"commit":"4380594275bc863e81839a6a7b032a6ff0cbb9b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:04:32 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 08:04:32 2019 -0800","stats":{"files_changed":1,"insertions":8,"deletions":46,"files":["jc/utils.py"]},"message":"remove cli functions from utils","epoch":1573142672,"epoch_utc":null},{"commit":"88bf252c0df3c583640286880d7992e4399e23f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:04:07 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 08:04:07 2019 -0800","stats":{"files_changed":2,"insertions":139,"deletions":128,"files":["jc/cli.py","jc/jc.py"]},"message":"rename jc.py to cli.py","epoch":1573142647,"epoch_utc":null},{"commit":"a5efd8adce77fca7e3343f8f518c7bad578fdb4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:03:45 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 08:03:45 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"rename jc.py to cli.py","epoch":1573142625,"epoch_utc":null},{"commit":"2ee392eefffde77ebdf83f5e4e0c43cf8c1a7d6e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 21:09:09 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 6 21:09:09 2019 -0800","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/netstat2.py"]},"message":"add quiet mode","epoch":1573103349,"epoch_utc":null},{"commit":"9c1d893e16ea17b16bec5fd0ec8839c4fe6f0590","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 21:07:25 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 6 21:07:25 2019 -0800","stats":{"files_changed":4,"insertions":102,"deletions":90,"files":["jc/jc.py","jc/parsers/arp.py","jc/parsers/df.py","jc/utils.py"]},"message":"move utils to own module and add quiet mode","epoch":1573103245,"epoch_utc":null},{"commit":"88dcb90c83b757285661c72429c5b60bb1ead94a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 21:05:25 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 6 21:05:25 2019 -0800","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["changelog.txt"]},"message":"changelog update","epoch":1573103125,"epoch_utc":null},{"commit":"a3bcabc89c1f74d067da0046492dbc56e50b1005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 20:35:10 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 6 20:35:10 2019 -0800","stats":{"files_changed":1,"insertions":9,"deletions":62,"files":["jc/parsers/netstat2.py"]},"message":"mvp of netstat raw_data parser","epoch":1573101310,"epoch_utc":null},{"commit":"dafbf9fdcf53a8abbd006baef0be6697f860d2a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 19:17:01 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 6 19:17:01 2019 -0800","stats":{"files_changed":4,"insertions":247,"deletions":53,"files":["jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat2.py"]},"message":"process lsmod data","epoch":1573096621,"epoch_utc":null},{"commit":"680cb2b2caa82e1e2c3225b3c44cae2ba03ba02c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 09:56:59 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 6 09:56:59 2019 -0600","stats":{"files_changed":1,"insertions":76,"deletions":7,"files":["jc/parsers/lsblk.py"]},"message":"doc update","epoch":1573063019,"epoch_utc":null},{"commit":"54818a06e0e0b981810f6aec45c308da81a9e2ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 09:21:55 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 6 09:21:55 2019 -0600","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/lsblk.py"]},"message":"change bool variable names","epoch":1573060915,"epoch_utc":null},{"commit":"88f4c5b5a93da3938b84f97abfc54539ee19ac48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 08:47:54 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 6 08:47:54 2019 -0600","stats":{"files_changed":6,"insertions":10,"deletions":10,"files":["jc/parsers/dig.py","jc/parsers/free.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py"]},"message":"remove TypeError from exception check","epoch":1573058874,"epoch_utc":null},{"commit":"2bb7409887e8b7659613189daf58d02cb26bd6ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 23:10:49 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 23:10:49 2019 -0600","stats":{"files_changed":2,"insertions":36,"deletions":11,"files":["jc/parsers/df.py","jc/parsers/lsblk.py"]},"message":"process lsblk data","epoch":1573024249,"epoch_utc":null},{"commit":"c780aac3aba02cc042c6a3c984af198069956370","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 22:42:48 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 22:42:48 2019 -0600","stats":{"files_changed":22,"insertions":91,"deletions":5,"files":["jc/jc.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat2.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add compatibility function","epoch":1573022568,"epoch_utc":null},{"commit":"5010aaec285e26ae9dbfdb3fcdc38a3bd36cd236","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:25:20 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 17:25:20 2019 -0600","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"]},"message":"put exit() back","epoch":1573003520,"epoch_utc":null},{"commit":"066e93cb075021ac94a0e2e6a36a34bc173ee6c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:23:46 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 17:23:46 2019 -0600","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"]},"message":"move exit() to errormessage()","epoch":1573003426,"epoch_utc":null},{"commit":"0bd2faa7f71a128babc68afea053159ccb91b702","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:17:07 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 17:17:07 2019 -0600","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/jc.py"]},"message":"beautify compatibility list","epoch":1573003027,"epoch_utc":null},{"commit":"e2f926453ba386736204e358f8306dfc731b5005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:08:41 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 17:08:41 2019 -0600","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["install.sh"]},"message":"add install script","epoch":1573002521,"epoch_utc":null},{"commit":"b953b79f9c46d8c5398a6c1c2769167b5aed2805","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:04:18 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 17:04:18 2019 -0600","stats":{"files_changed":3,"insertions":11,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/ls.py"]},"message":"add compatibility","epoch":1573002258,"epoch_utc":null},{"commit":"7f9967780692bec2fcbe992eee0c392ab92efb7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:00:36 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 17:00:36 2019 -0600","stats":{"files_changed":2,"insertions":19,"deletions":1,"files":["jc/jc.py","jc/parsers/lsblk.py"]},"message":"compatibility function call","epoch":1573002036,"epoch_utc":null},{"commit":"721b54665924ad1657ee83cd5fca601e03700962","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 15:14:52 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 15:14:52 2019 -0600","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/lsblk.py"]},"message":"finish schema","epoch":1572995692,"epoch_utc":null},{"commit":"2de5e41269421c73e07d4abd6ca99b38be736261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 15:07:40 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 15:07:40 2019 -0600","stats":{"files_changed":1,"insertions":95,"deletions":12,"files":["jc/parsers/lsblk.py"]},"message":"fix for more columns and build schema","epoch":1572995260,"epoch_utc":null},{"commit":"dfe0f6e99b6174734661fc43d9ad4b1d0dfd96e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 08:30:32 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 08:30:32 2019 -0800","stats":{"files_changed":1,"insertions":75,"deletions":9,"files":["jc/parsers/ls.py"]},"message":"process ls data","epoch":1572971432,"epoch_utc":null},{"commit":"8873b1bc697c8f9409fa676c88b5ebe109dc8717","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 08:07:39 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 08:07:39 2019 -0800","stats":{"files_changed":1,"insertions":24,"deletions":46,"files":["jc/parsers/df.py"]},"message":"clean up process code","epoch":1572970059,"epoch_utc":null},{"commit":"9ff94707004fefed475603436fc0a7ffb19e6fee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 07:21:58 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 07:21:58 2019 -0800","stats":{"files_changed":1,"insertions":9,"deletions":4,"files":["jc/jc.py"]},"message":"refactor helptext() function","epoch":1572967318,"epoch_utc":null},{"commit":"2c58fca53044892e15ceb5e8bcae1afb09fa3269","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 17:07:11 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 17:07:11 2019 -0800","stats":{"files_changed":1,"insertions":62,"deletions":4,"files":["jc/parsers/jobs.py"]},"message":"process jobs data","epoch":1572916031,"epoch_utc":null},{"commit":"9e5cd90da7d92bbadbc0d25071d087a3dbd90a5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 16:59:14 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 16:59:14 2019 -0800","stats":{"files_changed":1,"insertions":131,"deletions":261,"files":["jc/parsers/iptables.py"]},"message":"process iptables data","epoch":1572915554,"epoch_utc":null},{"commit":"7ee0d49424bba5274975d6c33e0721977660692f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 15:54:34 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 15:54:34 2019 -0800","stats":{"files_changed":1,"insertions":107,"deletions":28,"files":["jc/parsers/ifconfig.py"]},"message":"process ifconfig data","epoch":1572911674,"epoch_utc":null},{"commit":"a9058ee21e87454aa423112239c4f4df7daca8c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 15:19:50 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 15:19:50 2019 -0800","stats":{"files_changed":3,"insertions":4,"deletions":1,"files":["jc/parsers/arp.py","jc/parsers/dig.py","jc/parsers/free.py"]},"message":"doc formatting","epoch":1572909590,"epoch_utc":null},{"commit":"fcf0aac87dccac2ce28e6f55e66e2f0b8f6fbd36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 15:19:35 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 15:19:35 2019 -0800","stats":{"files_changed":1,"insertions":54,"deletions":10,"files":["jc/parsers/history.py"]},"message":"add history processing","epoch":1572909575,"epoch_utc":null},{"commit":"daec5f068103aae547509ddacc2be56c84f39f17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 15:11:18 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 15:11:18 2019 -0800","stats":{"files_changed":1,"insertions":55,"deletions":6,"files":["jc/parsers/free.py"]},"message":"process free data","epoch":1572909078,"epoch_utc":null},{"commit":"5b2491d5ae72705758944e247fbca83367c0365f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 15:03:16 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 15:03:16 2019 -0800","stats":{"files_changed":1,"insertions":54,"deletions":5,"files":["jc/parsers/env.py"]},"message":"process env data","epoch":1572908596,"epoch_utc":null},{"commit":"d9b41ac73b234f5bf7ff3abfee198092424a1bbd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 13:52:45 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 13:52:45 2019 -0800","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/dig.py"]},"message":"doc formatting","epoch":1572904365,"epoch_utc":null},{"commit":"7168ffddf8a8dfcdd5bcabd8bf943d6417de407d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 13:47:27 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 13:47:27 2019 -0800","stats":{"files_changed":1,"insertions":87,"deletions":5,"files":["jc/parsers/dig.py"]},"message":"process dig output","epoch":1572904047,"epoch_utc":null},{"commit":"a855344bec9f60d852de326953436ec76f25cffb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 13:05:56 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 13:05:56 2019 -0800","stats":{"files_changed":1,"insertions":13,"deletions":0,"files":["jc/parsers/arp.py"]},"message":"document schema","epoch":1572901556,"epoch_utc":null},{"commit":"d8b3b59fae924494fbcdfbdf6ad790f5234b0c69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 13:02:54 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 13:02:54 2019 -0800","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/parsers/df.py"]},"message":"add schema and rename 'avail' to 'available'","epoch":1572901374,"epoch_utc":null},{"commit":"4b7d7840d37be47c1c98c38a6d712e7090e5b68c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 12:50:37 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 12:50:37 2019 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","changelog.txt"]},"message":"add -r option","epoch":1572900637,"epoch_utc":null},{"commit":"58a094a9b4cab0fcb99581f37a21a450fc3a1aed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 12:40:19 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 12:40:19 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update","epoch":1572900019,"epoch_utc":null},{"commit":"65adbb4189ac66de3283adb2af93a1251103f057","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 12:40:05 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 12:40:05 2019 -0800","stats":{"files_changed":1,"insertions":29,"deletions":7,"files":["jc/parsers/arp.py"]},"message":"doc update","epoch":1572900005,"epoch_utc":null},{"commit":"f7350959c9706486a3aed19a999e5ee756a1240c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 12:39:43 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 12:39:43 2019 -0800","stats":{"files_changed":1,"insertions":47,"deletions":24,"files":["jc/parsers/df.py"]},"message":"df fix for changing header names when -h used","epoch":1572899983,"epoch_utc":null},{"commit":"8934a7d832b8e1375f0bbdd71031f37ae42f3929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 11:10:58 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 11:10:58 2019 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["jc/parsers/arp.py","jc/parsers/df.py"]},"message":"fix dictionary iteration","epoch":1572894658,"epoch_utc":null},{"commit":"669a424fd6508db91bf5cfa2607033fac85f442c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 11:02:02 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 11:02:02 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/df.py"]},"message":"fix process function","epoch":1572894122,"epoch_utc":null},{"commit":"591a65c2bda26efcdd570a5f147f98a5be0473d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 10:56:33 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 10:56:33 2019 -0800","stats":{"files_changed":1,"insertions":46,"deletions":2,"files":["jc/parsers/df.py"]},"message":"process df data","epoch":1572893793,"epoch_utc":null},{"commit":"a78fb890782a64b20c0c1b60afbd915ebdd88535","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 09:32:29 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 09:32:29 2019 -0800","stats":{"files_changed":1,"insertions":21,"deletions":5,"files":["jc/parsers/arp.py"]},"message":"add raw and processed output","epoch":1572888749,"epoch_utc":null},{"commit":"8979dab2a5371fce3a773004c2309e7483e4cd31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 09:32:09 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 09:32:09 2019 -0800","stats":{"files_changed":1,"insertions":25,"deletions":20,"files":["jc/jc.py"]},"message":"add raw mode","epoch":1572888729,"epoch_utc":null},{"commit":"0a891f0adda7f2f3233222a0cb5c1f737913ad6f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 08:09:19 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 08:09:19 2019 -0800","stats":{"files_changed":2,"insertions":4,"deletions":1,"files":["changelog.txt","setup.py"]},"message":"bump python required version","epoch":1572883759,"epoch_utc":null},{"commit":"c220e35b14237c2cfc38aa661413af83ea13e393","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 08:06:50 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 08:06:50 2019 -0800","stats":{"files_changed":1,"insertions":34,"deletions":33,"files":["jc/jc.py"]},"message":"cleanup helptext","epoch":1572883610,"epoch_utc":null},{"commit":"f26c5818bd958c18f4ecc22611b9c058f6213a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 07:57:47 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 07:57:47 2019 -0800","stats":{"files_changed":1,"insertions":36,"deletions":33,"files":["jc/jc.py"]},"message":"refactor helptext","epoch":1572883067,"epoch_utc":null},{"commit":"e712cd3fc4cec1b3137c73e199b2d89fd42fb3bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 1 22:29:08 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 1 22:29:08 2019 -0700","stats":{"files_changed":1,"insertions":138,"deletions":0,"files":["jc/parsers/netstat2.py"]},"message":"netstat2 skeleton","epoch":1572672548,"epoch_utc":null},{"commit":"0309c9ac67c5f65e0a584fd01e8104ef1990fa7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 1 08:55:52 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 1 08:55:52 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"setup cleanup","epoch":1572623752,"epoch_utc":null},{"commit":"9a9eb4120af7696cd3727ac0f0a014663e62b993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 1 08:53:53 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 1 08:53:53 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["setup.py"]},"message":"setup updates","epoch":1572623633,"epoch_utc":null},{"commit":"d1927456b02e6c2a6e6395cd6ce873b6565ec37d","merge":"0691cfc a3d9213","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 31 08:06:01 2019 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Oct 31 08:06:01 2019 -0700","message":"Merge pull request #6 from kellyjonbrazil/dev\n\nDev v1.1.1","epoch":1572534361,"epoch_utc":null},{"commit":"a3d9213a1e2fd52ba2cbc863d4d01d3ffeebe230","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 31 07:59:03 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 31 07:59:03 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["changelog.txt"]},"message":"add date","epoch":1572533943,"epoch_utc":null},{"commit":"3365c03a1e709835b4bd6bca023afbcb46912982","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 31 07:58:44 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 31 07:58:44 2019 -0700","stats":{"files_changed":2,"insertions":361,"deletions":0,"files":["tests/test_arp.py","tests/test_dig.py"]},"message":"add tests","epoch":1572533924,"epoch_utc":null},{"commit":"4f6c87389b313b368d9e833feef55fe6daf7aac9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 31 07:27:31 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 31 07:27:31 2019 -0700","stats":{"files_changed":7,"insertions":164,"deletions":1,"files":["tests/fixtures/centos-7.7/dig-aaaa.out","tests/fixtures/centos-7.7/dig-x.out","tests/fixtures/centos-7.7/dig.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/dig-aaaa.out","tests/fixtures/ubuntu-18.04/dig-x.out","tests/fixtures/ubuntu-18.04/dig.out"]},"message":"add dig test files","epoch":1572532051,"epoch_utc":null},{"commit":"41a2a9adac7d3c29dfa11292f08b0877c69b1a5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 31 07:27:12 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 31 07:27:12 2019 -0700","stats":{"files_changed":2,"insertions":147,"deletions":3,"files":["README.md","jc/parsers/dig.py"]},"message":"remove unnecessary if statement","epoch":1572532032,"epoch_utc":null},{"commit":"74dae2905b2b0916f0be9fee2a4a343962760ff6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 17:23:35 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 17:23:35 2019 -0700","stats":{"files_changed":1,"insertions":143,"deletions":30,"files":["jc/parsers/dig.py"]},"message":"dig parser mvp","epoch":1572481415,"epoch_utc":null},{"commit":"d1f64214de00090c3faae0bf544c6c2602ab8c31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 17:18:14 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 17:18:14 2019 -0700","stats":{"files_changed":1,"insertions":19,"deletions":3,"files":["jc/parsers/dig.py"]},"message":"add authority parsing","epoch":1572481094,"epoch_utc":null},{"commit":"d3e1aa20a815d1d1d6ae82776ae18e3416f0966f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 17:03:35 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 17:03:35 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dig.py"]},"message":"fix when line","epoch":1572480215,"epoch_utc":null},{"commit":"72cae9577756c4355211a19f4dd77aaeb6f8e905","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 16:59:56 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 16:59:56 2019 -0700","stats":{"files_changed":1,"insertions":47,"deletions":9,"files":["jc/parsers/dig.py"]},"message":"dig fixes","epoch":1572479996,"epoch_utc":null},{"commit":"219bc8130f55f23e3be3abbe56104aefc2f84e86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 15:36:13 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 15:36:13 2019 -0700","stats":{"files_changed":2,"insertions":155,"deletions":0,"files":["jc/jc.py","jc/parsers/dig.py"]},"message":"dig parser skeleton","epoch":1572474973,"epoch_utc":null},{"commit":"e8c1a554c040ad8f9c6b518db5fd58e8345d2181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:52:53 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 13:52:53 2019 -0700","stats":{"files_changed":3,"insertions":7,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-a.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/arp-a.out"]},"message":"testfile updates","epoch":1572468773,"epoch_utc":null},{"commit":"087a60bc2adf64bfcedc1f264fef328f993b530c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:52:31 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 13:52:31 2019 -0700","stats":{"files_changed":2,"insertions":87,"deletions":5,"files":["README.md","jc/parsers/arp.py"]},"message":"documentation updates","epoch":1572468751,"epoch_utc":null},{"commit":"9c9823c3b8737b5de08af6278ca74414138e9263","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:29:06 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 13:29:06 2019 -0700","stats":{"files_changed":5,"insertions":16,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-v.out","tests/fixtures/centos-7.7/arp.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/arp-v.out","tests/fixtures/ubuntu-18.04/arp.out"]},"message":"add arp testfiles","epoch":1572467346,"epoch_utc":null},{"commit":"cf8d13030bf67261a986c0f80fa20ec0e37a743a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:22:12 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 13:22:12 2019 -0700","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["README.md"]},"message":"add arp","epoch":1572466932,"epoch_utc":null},{"commit":"1eff69c187ca410ffaec7909bc2532553be1d80c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:21:05 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 13:21:05 2019 -0700","stats":{"files_changed":2,"insertions":17,"deletions":1,"files":["changelog.txt","jc/parsers/arp.py"]},"message":"add documentation","epoch":1572466865,"epoch_utc":null},{"commit":"b10fb77d714b73a10a9bf28b45269b3530e01cee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:12:53 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 13:12:53 2019 -0700","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/arp.py"]},"message":"fixup arp parser","epoch":1572466373,"epoch_utc":null},{"commit":"87cee8b230a06fa270b2e36afb56f337da814c80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:00:05 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 13:00:05 2019 -0700","stats":{"files_changed":2,"insertions":28,"deletions":1,"files":["jc/jc.py","jc/parsers/arp.py"]},"message":"add arp parser","epoch":1572465605,"epoch_utc":null},{"commit":"83ab10d6282e26391bbf6bae5d0d29e040b209f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 12:50:05 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 12:50:05 2019 -0700","stats":{"files_changed":1,"insertions":44,"deletions":34,"files":["jc/__init__.py"]},"message":"documentation update","epoch":1572465005,"epoch_utc":null},{"commit":"d58a6e1d1dc93155255922b65b0af1325439b033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 14:19:04 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 29 14:19:04 2019 -0700","stats":{"files_changed":1,"insertions":13,"deletions":15,"files":["README.md"]},"message":"readme update","epoch":1572383944,"epoch_utc":null},{"commit":"cb46ca5c2776a13c673a44d3e0fbd0661b32af9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 10:27:42 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 29 10:27:42 2019 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]},"message":"readme update","epoch":1572370062,"epoch_utc":null},{"commit":"5528d979f0b45787d68ab79b962371df9acc527b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 09:16:03 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 29 09:16:03 2019 -0700","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["changelog.txt","setup.py"]},"message":"version bump","epoch":1572365763,"epoch_utc":null},{"commit":"ee94a038a61d60db72046d5bcceec58009decb39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 08:58:52 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 29 08:58:52 2019 -0700","stats":{"files_changed":3,"insertions":131,"deletions":0,"files":["tests/test_uname.py","tests/test_uptime.py","tests/test_w.py"]},"message":"add tests","epoch":1572364732,"epoch_utc":null},{"commit":"1d658f7a9fc50873f76985b2fb9de92ada9d5547","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 08:45:11 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 29 08:45:11 2019 -0700","stats":{"files_changed":3,"insertions":265,"deletions":0,"files":["tests/test_netstat.py","tests/test_ps.py","tests/test_route.py"]},"message":"add tests","epoch":1572363911,"epoch_utc":null},{"commit":"392cb44f9b19829a5ceba055e24c7af4d8ac5b3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 07:55:26 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 29 07:55:26 2019 -0700","stats":{"files_changed":80,"insertions":12667,"deletions":0,"files":["runtests.sh","tests/__init__.py","tests/fixtures/centos-7.7/df-h.out","tests/fixtures/centos-7.7/df.out","tests/fixtures/centos-7.7/env.out","tests/fixtures/centos-7.7/free-h.out","tests/fixtures/centos-7.7/free.out","tests/fixtures/centos-7.7/history.out","tests/fixtures/centos-7.7/ifconfig.out","tests/fixtures/centos-7.7/iptables-filter-nv.out","tests/fixtures/centos-7.7/iptables-filter.out","tests/fixtures/centos-7.7/iptables-mangle.out","tests/fixtures/centos-7.7/iptables-nat.out","tests/fixtures/centos-7.7/iptables-raw.out","tests/fixtures/centos-7.7/jobs.out","tests/fixtures/centos-7.7/ls-al.out","tests/fixtures/centos-7.7/ls-alh.out","tests/fixtures/centos-7.7/ls.out","tests/fixtures/centos-7.7/lsblk.out","tests/fixtures/centos-7.7/lsmod.out","tests/fixtures/centos-7.7/lsof-sudo.out","tests/fixtures/centos-7.7/lsof.out","tests/fixtures/centos-7.7/mount.out","tests/fixtures/centos-7.7/netstat-l.out","tests/fixtures/centos-7.7/netstat-p.out","tests/fixtures/centos-7.7/netstat-sudo-lnp.out","tests/fixtures/centos-7.7/netstat.out","tests/fixtures/centos-7.7/ps-axu.out","tests/fixtures/centos-7.7/ps-ef.out","tests/fixtures/centos-7.7/route-vn.out","tests/fixtures/centos-7.7/route.out","tests/fixtures/centos-7.7/uname-a.out","tests/fixtures/centos-7.7/uptime.out","tests/fixtures/centos-7.7/w.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/df-h.out","tests/fixtures/ubuntu-18.04/df.out","tests/fixtures/ubuntu-18.04/env.out","tests/fixtures/ubuntu-18.04/free-h.out","tests/fixtures/ubuntu-18.04/free.out","tests/fixtures/ubuntu-18.04/history.out","tests/fixtures/ubuntu-18.04/ifconfig.out","tests/fixtures/ubuntu-18.04/iptables-filter-nv.out","tests/fixtures/ubuntu-18.04/iptables-filter.out","tests/fixtures/ubuntu-18.04/iptables-mangle.out","tests/fixtures/ubuntu-18.04/iptables-nat.out","tests/fixtures/ubuntu-18.04/iptables-raw.out","tests/fixtures/ubuntu-18.04/jobs.out","tests/fixtures/ubuntu-18.04/ls-al.out","tests/fixtures/ubuntu-18.04/ls-alh.out","tests/fixtures/ubuntu-18.04/ls.out","tests/fixtures/ubuntu-18.04/lsblk.out","tests/fixtures/ubuntu-18.04/lsmod.out","tests/fixtures/ubuntu-18.04/lsof-sudo.out","tests/fixtures/ubuntu-18.04/lsof.out","tests/fixtures/ubuntu-18.04/mount.out","tests/fixtures/ubuntu-18.04/netstat-l.out","tests/fixtures/ubuntu-18.04/netstat-p.out","tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.out","tests/fixtures/ubuntu-18.04/netstat.out","tests/fixtures/ubuntu-18.04/ps-axu.out","tests/fixtures/ubuntu-18.04/ps-ef.out","tests/fixtures/ubuntu-18.04/route-vn.out","tests/fixtures/ubuntu-18.04/route.out","tests/fixtures/ubuntu-18.04/uname-a.out","tests/fixtures/ubuntu-18.04/uptime.out","tests/fixtures/ubuntu-18.04/w.out","tests/test_df.py","tests/test_env.py","tests/test_free.py","tests/test_history.py","tests/test_ifconfig.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_ls.py","tests/test_lsblk.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py"]},"message":"initial add of tests and fixtures","epoch":1572360926,"epoch_utc":null},{"commit":"579bef079cdd7cfa298bc20e052b8eb75b586f5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 07:54:59 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 29 07:54:59 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/netstat.py"]},"message":"move global output variable inside function","epoch":1572360899,"epoch_utc":null},{"commit":"0691cfcab3f5f91908e06ec906d57e548d4e7a1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 26 18:49:43 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 26 18:49:43 2019 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["changelog.txt"]},"message":"changelog fix","epoch":1572140983,"epoch_utc":null},{"commit":"db29c7c186601fd4596d3eb121b37100601af907","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 26 18:49:13 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 26 18:49:13 2019 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","jc/parsers/netstat.py"]},"message":"documentation fixes","epoch":1572140953,"epoch_utc":null},{"commit":"fb1e03637514b5ab02fd4c5df1db8b3cbacdd531","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 20:27:03 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 20:27:03 2019 -0700","stats":{"files_changed":1,"insertions":14,"deletions":10,"files":["README.md"]},"message":"formatting","epoch":1572060423,"epoch_utc":null},{"commit":"c3eaf59836538f4ab4c745e87b70115b4a4c5421","merge":"ea0cf0a c9849ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 19:43:24 2019 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Oct 25 19:43:24 2019 -0700","message":"Merge pull request #5 from kellyjonbrazil/dev\n\nDev v1.0.1","epoch":1572057804,"epoch_utc":null},{"commit":"c9849ce0db1f864d33739f8f6f942bf5672bc3b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 19:41:35 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 19:41:35 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]},"message":"changelog update","epoch":1572057695,"epoch_utc":null},{"commit":"d3c89a3092973a7a8765463fff41c2469ed675cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 19:27:02 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 19:27:02 2019 -0700","stats":{"files_changed":1,"insertions":11,"deletions":9,"files":["jc/parsers/uname.py"]},"message":"check for enough info to parse","epoch":1572056822,"epoch_utc":null},{"commit":"a3d43f27f7bb0835b3593b7c303fe0ee8d896a58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 18:25:33 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 18:25:33 2019 -0700","stats":{"files_changed":1,"insertions":12,"deletions":10,"files":["jc/parsers/uptime.py"]},"message":"fix odd uptime text parsing","epoch":1572053133,"epoch_utc":null},{"commit":"f4d9c1b699fa30bd297a40ccf3d5f6e7ba3d4253","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 17:16:02 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 17:16:02 2019 -0700","stats":{"files_changed":1,"insertions":8,"deletions":4,"files":["jc/parsers/uptime.py"]},"message":"fix uptime for minutes and hours long uptime","epoch":1572048962,"epoch_utc":null},{"commit":"de647bba4aff84f7b513cf7f6fec8d3933b0d9da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 16:14:32 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 16:14:32 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"documentation update","epoch":1572045272,"epoch_utc":null},{"commit":"d7913070315e5e0c89006942250aaf37e9e3e18e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 16:12:45 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 16:12:45 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"documentation update","epoch":1572045165,"epoch_utc":null},{"commit":"1a4fc204e21f1555ae67c3147322c8d73fab630b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 16:09:31 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 16:09:31 2019 -0700","stats":{"files_changed":2,"insertions":10,"deletions":1,"files":["README.md","changelog.txt"]},"message":"Documentation update","epoch":1572044971,"epoch_utc":null},{"commit":"0328e14c7c65a330093faa52fe48dae6cb173e42","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 16:05:34 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 16:05:34 2019 -0700","stats":{"files_changed":1,"insertions":7,"deletions":0,"files":["jc/jc.py"]},"message":"handle ctrl-c gracefully","epoch":1572044734,"epoch_utc":null},{"commit":"1acc4d6c29d136e286f82d607c4a3a59e2680b68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 15:52:53 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 15:52:53 2019 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/uptime.py"]},"message":"fix uptime parsing for short uptimes","epoch":1572043973,"epoch_utc":null},{"commit":"27245590ce28be933f1a55db4ee6b24783f4b63d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 15:40:53 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 15:40:53 2019 -0700","stats":{"files_changed":1,"insertions":12,"deletions":20,"files":["jc/parsers/jobs.py"]},"message":"remove integers","epoch":1572043253,"epoch_utc":null},{"commit":"7ca2a4bdb939293e8d7364f8901ad1fd6d3ee808","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 15:39:48 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 15:39:48 2019 -0700","stats":{"files_changed":5,"insertions":182,"deletions":201,"files":["README.md","changelog.txt","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/netstat.py"]},"message":"remove integer values","epoch":1572043188,"epoch_utc":null},{"commit":"5f1ec6734874651bee595961edf1fafaf5acf001","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 14:58:15 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 14:58:15 2019 -0700","stats":{"files_changed":10,"insertions":473,"deletions":456,"files":["README.md","jc/parsers/df.py","jc/parsers/history.py","jc/parsers/iptables.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/w.py"]},"message":"lower() headers","epoch":1572040695,"epoch_utc":null},{"commit":"7e44c4278a75c7223d99200023160e8d77fde54d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:55:38 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 10:55:38 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/jobs.py"]},"message":"formatting","epoch":1572026138,"epoch_utc":null},{"commit":"eda726c4a3864008e2f700374b679ae68a965ef8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:55:26 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 10:55:26 2019 -0700","stats":{"files_changed":1,"insertions":80,"deletions":1,"files":["jc/parsers/ifconfig.py"]},"message":"documentation update","epoch":1572026126,"epoch_utc":null},{"commit":"5f8e70d73054f1a106c0e75eee621bc0cefd1c6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:55:09 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 10:55:09 2019 -0700","stats":{"files_changed":9,"insertions":20,"deletions":22,"files":["changelog.txt","jc/parsers/df.py","jc/parsers/free.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/w.py"]},"message":"convert headers to lowercase","epoch":1572026109,"epoch_utc":null},{"commit":"25b90546c652cafa9409f02bae1654cb523add88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:39:05 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 10:39:05 2019 -0700","stats":{"files_changed":3,"insertions":14,"deletions":9,"files":["README.md","changelog.txt","jc/parsers/df.py"]},"message":"change 'Use%' to 'Use_percent'","epoch":1572025145,"epoch_utc":null},{"commit":"75c084153845757e22c149ea4ae7909d42ec7118","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:32:54 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 10:32:54 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]},"message":"changelog update","epoch":1572024774,"epoch_utc":null},{"commit":"5b532b9b71fdb9de575da0af9b7989ac537877c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:31:03 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 10:31:03 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/parsers/lsof.py"]},"message":"minor cleanup","epoch":1572024663,"epoch_utc":null},{"commit":"8c7b3193d131411f8766508fc27b2a6589bba1f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:28:19 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 10:28:19 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/history.py"]},"message":"documentation change","epoch":1572024499,"epoch_utc":null},{"commit":"0897c96ef3c180a1707e8f56c545f59b3a4e0672","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:22:23 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 10:22:23 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/lsof.py"]},"message":"formatting","epoch":1572024143,"epoch_utc":null},{"commit":"57d0ab2ed7f444862546da17cbbe8f8ce67bca8c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:22:10 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 10:22:10 2019 -0700","stats":{"files_changed":2,"insertions":9,"deletions":4,"files":["README.md","jc/parsers/w.py"]},"message":"change LOGIN@ to LOGIN_AT","epoch":1572024130,"epoch_utc":null},{"commit":"a07d9a0e4bb76d369b4a9bf0d77c7590dc3c2861","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:04:29 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 10:04:29 2019 -0700","stats":{"files_changed":2,"insertions":22,"deletions":13,"files":["README.md","jc/parsers/lsof.py"]},"message":"change SIZE/OFF key to SIZE_OFF","epoch":1572023069,"epoch_utc":null},{"commit":"b3996cb4dfed908d71b292dc0b0136c6675351e6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 09:54:42 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 09:54:42 2019 -0700","stats":{"files_changed":2,"insertions":14,"deletions":10,"files":["README.md","jc/parsers/lsblk.py"]},"message":"change MAJ:MIN key to MAJ_MIN","epoch":1572022482,"epoch_utc":null},{"commit":"4fa88c1ba38b34f9750625458c465d66f6531bc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 09:53:44 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 09:53:44 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/history.py"]},"message":"clear out non-ascii chars from data","epoch":1572022424,"epoch_utc":null},{"commit":"c8c5564b29588094721949b96bff1e623437835d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 09:46:03 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 09:46:03 2019 -0700","stats":{"files_changed":2,"insertions":6,"deletions":3,"files":["README.md","jc/parsers/free.py"]},"message":"change buff/cache key to buff_cache","epoch":1572021963,"epoch_utc":null},{"commit":"6d047486d9f577bc04d79af839f5eef9657a9d43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:53:56 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 24 17:53:56 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"doc fix","epoch":1571964836,"epoch_utc":null},{"commit":"42bdc058141c4a3ac6f2c8211f9c990590b1b5cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:41:51 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 24 17:41:51 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"changelog fix","epoch":1571964111,"epoch_utc":null},{"commit":"85bfb688862e78d5879df6973b88ba8023fa6086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:33:42 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 24 17:33:42 2019 -0700","stats":{"files_changed":2,"insertions":15,"deletions":10,"files":["README.md","jc/parsers/history.py"]},"message":"history parser fixes","epoch":1571963622,"epoch_utc":null},{"commit":"08ec21556b553cd7e64932d68e01ba8ff3b0f210","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:12:27 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 24 17:12:27 2019 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/w.py"]},"message":"formatting","epoch":1571962347,"epoch_utc":null},{"commit":"320929bf2595026d32b80b80c3e4878db9cf083f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:11:17 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 24 17:11:17 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/env.py"]},"message":"documentation update","epoch":1571962277,"epoch_utc":null},{"commit":"41cd489c34502c42602bf64086670ba3b2b8e14b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:09:32 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 24 17:09:32 2019 -0700","stats":{"files_changed":5,"insertions":126,"deletions":0,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/history.py","jc/parsers/uptime.py"]},"message":"add history and uptime parsers","epoch":1571962172,"epoch_utc":null},{"commit":"f101d881a16e662e883818749d48e96858fba853","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 16:06:55 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 24 16:06:55 2019 -0700","stats":{"files_changed":4,"insertions":78,"deletions":3,"files":["README.md","jc/jc.py","jc/parsers/w.py","setup.py"]},"message":"add w parser","epoch":1571958415,"epoch_utc":null},{"commit":"fa7466022bb8947c1bbf9f7b01aa4d92300a8992","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 15:54:31 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 24 15:54:31 2019 -0700","stats":{"files_changed":3,"insertions":28,"deletions":56,"files":["README.md","changelog.txt","jc/parsers/env.py"]},"message":"fix env parser","epoch":1571957671,"epoch_utc":null},{"commit":"ea0cf0acf22585fbf8828841cf50155636eae82f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 09:48:35 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 24 09:48:35 2019 -0700","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/lsof.py"]},"message":"documentation update","epoch":1571935715,"epoch_utc":null},{"commit":"e7921b65f5a250c10b08f78939f74968047af430","merge":"393e8bc 2cc1b1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 18:41:55 2019 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Oct 23 18:41:55 2019 -0700","message":"Merge pull request #4 from kellyjonbrazil/dev\n\nDev v0.9.1","epoch":1571881315,"epoch_utc":null},{"commit":"2cc1b1bd5451f31d71b0e2236bdee0ce2b25b5d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 18:39:24 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 18:39:24 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"version bump","epoch":1571881164,"epoch_utc":null},{"commit":"58ae976db0165730a75dd7450c698d2727a354ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 18:30:55 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 18:30:55 2019 -0700","stats":{"files_changed":3,"insertions":113,"deletions":4,"files":["README.md","jc/parsers/lsmod.py","setup.py"]},"message":"documentation update","epoch":1571880655,"epoch_utc":null},{"commit":"66772392ae78ef394e22070b127416b1d5b01332","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 18:04:54 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 18:04:54 2019 -0700","stats":{"files_changed":3,"insertions":32,"deletions":0,"files":["changelog.txt","jc/jc.py","jc/parsers/lsmod.py"]},"message":"add lsmod parser","epoch":1571879094,"epoch_utc":null},{"commit":"29c47c03a64f9c6b0f44d34be5449396654849b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 17:37:25 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 17:37:25 2019 -0700","stats":{"files_changed":3,"insertions":134,"deletions":2,"files":["README.md","changelog.txt","jc/parsers/lsof.py"]},"message":"documentation update","epoch":1571877445,"epoch_utc":null},{"commit":"91eb9a4d13e9254bd5bbde931196904c1947a28e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 17:27:23 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 17:27:23 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsof.py"]},"message":"use None instead of --","epoch":1571876843,"epoch_utc":null},{"commit":"a1a3de32ec14d6ef433e334b9694856698c26d41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 17:22:25 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 17:22:25 2019 -0700","stats":{"files_changed":2,"insertions":59,"deletions":0,"files":["jc/jc.py","jc/parsers/lsof.py"]},"message":"add lsof parser","epoch":1571876545,"epoch_utc":null},{"commit":"9c47fd05bf716c2e18ebf4da41b1a46b972b2518","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 14:11:13 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 14:11:13 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/jobs.py"]},"message":"doco fix","epoch":1571865073,"epoch_utc":null},{"commit":"649c0aa7c157f87691cc8eeac64c747e81f63594","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 14:10:10 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 14:10:10 2019 -0700","stats":{"files_changed":2,"insertions":76,"deletions":1,"files":["README.md","jc/parsers/jobs.py"]},"message":"add documentation","epoch":1571865010,"epoch_utc":null},{"commit":"3db758764e50666e5ae40de8d89180de2ef5bc28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 14:05:47 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 14:05:47 2019 -0700","stats":{"files_changed":3,"insertions":83,"deletions":0,"files":["changelog.txt","jc/jc.py","jc/parsers/jobs.py"]},"message":"add jobs parser","epoch":1571864747,"epoch_utc":null},{"commit":"802f1510eb6d621f9c760f28b83f16a4781b8d93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 10:27:05 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 10:27:05 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"]},"message":"tighten if statements","epoch":1571851625,"epoch_utc":null},{"commit":"56901788dee154890e70269ad48d4b22bb8c5437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 09:51:29 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 09:51:29 2019 -0700","stats":{"files_changed":1,"insertions":30,"deletions":19,"files":["jc/jc.py"]},"message":"stop blocking when no pipe and enhance help text","epoch":1571849489,"epoch_utc":null},{"commit":"679ae6d5dc7af26240dc00d8bc6499950f81d457","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 09:20:11 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 09:20:11 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump","epoch":1571847611,"epoch_utc":null},{"commit":"b15c8c352a87a9b3b1dece28af0287ef71ca02d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 08:46:54 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 08:46:54 2019 -0700","stats":{"files_changed":1,"insertions":14,"deletions":16,"files":["jc/parsers/iptables.py"]},"message":"simplify state variables","epoch":1571845614,"epoch_utc":null},{"commit":"393e8bc56041a4be01b6c0b2f98895aa330afd04","merge":"e3750b4 976fd7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 17:26:40 2019 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Oct 22 17:26:40 2019 -0700","message":"Merge pull request #3 from kellyjonbrazil/dev\n\nDev v0.8.1","epoch":1571790400,"epoch_utc":null},{"commit":"976fd7d9bd49190a8b28ea5acf5af8979cdec537","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 17:24:56 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 17:24:56 2019 -0700","stats":{"files_changed":1,"insertions":27,"deletions":28,"files":["README.md"]},"message":"readme update","epoch":1571790296,"epoch_utc":null},{"commit":"d8337870cad042cdcc6a4ff3c61f756c3430fa96","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 17:21:00 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 17:21:00 2019 -0700","stats":{"files_changed":1,"insertions":27,"deletions":28,"files":["jc/parsers/df.py"]},"message":"update documentation","epoch":1571790060,"epoch_utc":null},{"commit":"39a8aec77f5134b5b958e3f679910a1c3512e13a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 17:15:02 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 17:15:02 2019 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/parsers/ls.py","setup.py"]},"message":"v0.8.1 build","epoch":1571789702,"epoch_utc":null},{"commit":"306d539b6bbfb272c7b955e4847adc3a6b4afa5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 16:50:01 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 16:50:01 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"readme update","epoch":1571788201,"epoch_utc":null},{"commit":"f3087b8a8ede88834285bb5d0655fc96341c174c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 16:40:27 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 16:40:27 2019 -0700","stats":{"files_changed":3,"insertions":635,"deletions":1,"files":["README.md","changelog.txt","jc/parsers/iptables.py"]},"message":"update readme and formatting","epoch":1571787627,"epoch_utc":null},{"commit":"414c2ecef88af2d2c098e6acfb507a5fd7bb8eda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 16:32:55 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 16:32:55 2019 -0700","stats":{"files_changed":1,"insertions":6,"deletions":10,"files":["jc/parsers/iptables.py"]},"message":"fix iptables parser","epoch":1571787175,"epoch_utc":null},{"commit":"776ef2d1be81180b8b295fbc587446a326f2f7a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 15:42:29 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 15:42:29 2019 -0700","stats":{"files_changed":2,"insertions":61,"deletions":0,"files":["jc/jc.py","jc/parsers/iptables.py"]},"message":"add iptables parser","epoch":1571784149,"epoch_utc":null},{"commit":"9ac57469967443b195be09d580beaa76ce0e1095","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 13:28:15 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 13:28:15 2019 -0700","stats":{"files_changed":4,"insertions":64,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/uname.py"]},"message":"add uname parser","epoch":1571776095,"epoch_utc":null},{"commit":"a3e55d97c0fd4397b42e9146afb0ba9558274fdb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 12:54:41 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 12:54:41 2019 -0700","stats":{"files_changed":4,"insertions":127,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/mount.py"]},"message":"add mount parser","epoch":1571774081,"epoch_utc":null},{"commit":"b15227e7ba5377e5fb6799d1b9e4ed5a11c6d92f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:55:11 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 11:55:11 2019 -0700","stats":{"files_changed":4,"insertions":125,"deletions":0,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/lsblk.py"]},"message":"add lsblk parser","epoch":1571770511,"epoch_utc":null},{"commit":"ec3d1f84ceccb492b4c968938714fafa2e6a6321","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:26:58 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 11:26:58 2019 -0700","stats":{"files_changed":1,"insertions":24,"deletions":2,"files":["jc/parsers/free.py"]},"message":"fix free parser","epoch":1571768818,"epoch_utc":null},{"commit":"753d5fd9fe5a8e4b67b1a0ec018a9f811e27f8bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:17:21 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 11:17:21 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"readme update","epoch":1571768241,"epoch_utc":null},{"commit":"73a0d70c9294ad392792e690a7bfbcc4f51b0a5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:15:44 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 11:15:44 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"readme update","epoch":1571768144,"epoch_utc":null},{"commit":"c2c189f3e6e900e5f3d35df9a9b9d033448baff6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:14:19 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 11:14:19 2019 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["README.md"]},"message":"readme update","epoch":1571768059,"epoch_utc":null},{"commit":"36bc55a3109278d663b675a09829200f5474c3d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:11:41 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 11:11:41 2019 -0700","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["README.md"]},"message":"fix df","epoch":1571767901,"epoch_utc":null},{"commit":"a023001cd350e320ce30f47af214ed7a9bb43185","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:10:11 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 11:10:11 2019 -0700","stats":{"files_changed":6,"insertions":226,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/df.py","jc/parsers/env.py","jc/parsers/free.py"]},"message":"add df, env, and free parsers","epoch":1571767811,"epoch_utc":null},{"commit":"e3750b49628794fd4d563013b1f3a7471c27ce68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 07:40:42 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 07:40:42 2019 -0700","stats":{"files_changed":2,"insertions":83,"deletions":51,"files":["README.md","jc/__init__.py"]},"message":"documentation enhancements","epoch":1571755242,"epoch_utc":null},{"commit":"b5ea08e55bfd22c9da5ba73c124791012df119a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 18:22:51 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 18:22:51 2019 -0700","stats":{"files_changed":4,"insertions":20,"deletions":20,"files":["README.md","changelog.txt","jc/parsers/netstat.py","setup.py"]},"message":"fix transport protocol","epoch":1571707371,"epoch_utc":null},{"commit":"8e71b8e3522b9b1af4d869a0854223eb5c300b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 18:11:51 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 18:11:51 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"fix jq example","epoch":1571706711,"epoch_utc":null},{"commit":"4c8610c54ff4b643237d8f0e4c5781c277fc39f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:59:32 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 17:59:32 2019 -0700","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["changelog.txt","setup.py"]},"message":"fixed build","epoch":1571705972,"epoch_utc":null},{"commit":"c8f886dc8fcdc58f8471d68c3d583200d0ea2f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:56:53 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 17:56:53 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"]},"message":"fix example","epoch":1571705813,"epoch_utc":null},{"commit":"4cfc2d22b3f9fd6f0cde8ad206edd7fe260b3071","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:38:40 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 17:38:40 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"update changelog","epoch":1571704720,"epoch_utc":null},{"commit":"59238c85408117748e78c5e87157381a828f3782","merge":"d54d906 30080c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:36:33 2019 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Oct 21 17:36:33 2019 -0700","message":"Merge pull request #2 from kellyjonbrazil/dev\n\nDev v0.6.2","epoch":1571704593,"epoch_utc":null},{"commit":"30080c01659cf611666876b7b063b7b329822352","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:26:00 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 17:26:00 2019 -0700","stats":{"files_changed":1,"insertions":35,"deletions":35,"files":["README.md"]},"message":"reorder parsers","epoch":1571703960,"epoch_utc":null},{"commit":"fab80bb3b4a1897da29d818e98e9b80ce45443dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:20:12 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 17:20:12 2019 -0700","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["README.md","setup.py"]},"message":"readme update","epoch":1571703612,"epoch_utc":null},{"commit":"a9f2df805421754afb8e8adbcac7f2d3bd06c9ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 14:27:26 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 14:27:26 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"move parsed_line var lower","epoch":1571693246,"epoch_utc":null},{"commit":"1d110be6cb25d169ae0dde6532cbcdf05d93d42f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 14:13:31 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 14:13:31 2019 -0700","stats":{"files_changed":3,"insertions":13,"deletions":1,"files":["README.md","changelog.txt","setup.py"]},"message":"update doco","epoch":1571692411,"epoch_utc":null},{"commit":"be81b5e1ed93eb65e5dbed4f52905439cde86f62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 13:47:22 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 13:47:22 2019 -0700","stats":{"files_changed":1,"insertions":112,"deletions":121,"files":["README.md"]},"message":"readme update","epoch":1571690842,"epoch_utc":null},{"commit":"5f88f7d8a071306be92cbfb65d6d62c5a68159f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 13:41:53 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 13:41:53 2019 -0700","stats":{"files_changed":1,"insertions":110,"deletions":137,"files":["jc/parsers/netstat.py"]},"message":"netstat cleanup","epoch":1571690513,"epoch_utc":null},{"commit":"e57c7cc8ef3102cc41dee4ea5fd33d40ba666491","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 13:23:29 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 13:23:29 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"change output from dict to list","epoch":1571689409,"epoch_utc":null},{"commit":"b216627c1073ea645029e341b4d3376601e5468e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 13:19:00 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 13:19:00 2019 -0700","stats":{"files_changed":1,"insertions":19,"deletions":116,"files":["jc/parsers/netstat.py"]},"message":"flatten netstat output","epoch":1571689140,"epoch_utc":null},{"commit":"6e925eab131024b5746d870cbd47e2791acf18bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 13:07:30 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 13:07:30 2019 -0700","stats":{"files_changed":1,"insertions":27,"deletions":18,"files":["jc/jc.py"]},"message":"clean up arg parsing","epoch":1571688450,"epoch_utc":null},{"commit":"d54d906c571b4683f01cab2eca63ae5f0725a87b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 19:03:11 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 19:03:11 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update readme","epoch":1571450591,"epoch_utc":null},{"commit":"0040febbf099ed8ab35f6ee343750fcf89f2e739","merge":"8073d15 e416c77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 18:57:32 2019 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Oct 18 18:57:32 2019 -0700","message":"Merge pull request #1 from kellyjonbrazil/dev\n\nDev v0.5.5","epoch":1571450252,"epoch_utc":null},{"commit":"e416c77bed1267254da972b0f95b7ff1d43fccef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 18:56:26 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 18:56:26 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"version bump","epoch":1571450186,"epoch_utc":null},{"commit":"9181d242aaed5219bb35fde01d672be88949cceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 18:47:20 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 18:47:20 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"bump version","epoch":1571449640,"epoch_utc":null},{"commit":"d6f94c53a4df84fb75554605477e49536a809dc2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 18:46:25 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 18:46:25 2019 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"]},"message":"fix blank output case in ls","epoch":1571449585,"epoch_utc":null},{"commit":"a9294f32a00709737d0b82ff434a311e75ad0bed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 18:40:56 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 18:40:56 2019 -0700","stats":{"files_changed":3,"insertions":39,"deletions":42,"files":["changelog.txt","jc/parsers/ls.py","setup.py"]},"message":"ls fixes","epoch":1571449256,"epoch_utc":null},{"commit":"4d93b38fe47329e3175025878e87f7c963061f98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 14:18:34 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 14:18:34 2019 -0700","stats":{"files_changed":2,"insertions":90,"deletions":1,"files":["README.md","jc/parsers/route.py"]},"message":"add route documentation","epoch":1571433514,"epoch_utc":null},{"commit":"77b74c550795f96b808e48a9b0bfd1a8af9866f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:59:30 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 13:59:30 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"add route parser","epoch":1571432370,"epoch_utc":null},{"commit":"51a1d3e6f48cf7084267be4092f0dd3f778dcef3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:51:36 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 13:51:36 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump","epoch":1571431896,"epoch_utc":null},{"commit":"2eba30422b44f648c7356a44cbff7416c6648f19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:43:49 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 13:43:49 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"]},"message":"skip first line","epoch":1571431429,"epoch_utc":null},{"commit":"43ed09ce5ba53261dfd7ef50a2e187cb524c416c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:38:11 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 13:38:11 2019 -0700","stats":{"files_changed":3,"insertions":25,"deletions":1,"files":["jc/jc.py","jc/parsers/route.py","setup.py"]},"message":"add route parser","epoch":1571431091,"epoch_utc":null},{"commit":"367ab54f94bf7f456377ec9d20f8daf99dbdc1ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:34:28 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 13:34:28 2019 -0700","stats":{"files_changed":3,"insertions":99,"deletions":2,"files":["README.md","changelog.txt","jc/parsers/ps.py"]},"message":"formatting","epoch":1571430868,"epoch_utc":null},{"commit":"4f552e370e656cc1882a7dae231475a016f8aa14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:26:24 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 13:26:24 2019 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/ps.py"]},"message":"acknowledgment","epoch":1571430384,"epoch_utc":null},{"commit":"7571139f7980f6e74c29d46971881e82ab0f04bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:20:38 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 13:20:38 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"bump version","epoch":1571430038,"epoch_utc":null},{"commit":"8ec1bec31711d2ef487da3e4a29a842d98d77626","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:19:39 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 13:19:39 2019 -0700","stats":{"files_changed":4,"insertions":29,"deletions":7,"files":["changelog.txt","jc/__init__.py","jc/jc.py","jc/parsers/ps.py"]},"message":"add ps parser","epoch":1571429979,"epoch_utc":null},{"commit":"c04895407f203aa0a3a080d5242faf8f6889ae41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 12:57:02 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 12:57:02 2019 -0700","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["changelog.txt","jc/parsers/netstat.py"]},"message":"ubuntu fixes","epoch":1571428622,"epoch_utc":null},{"commit":"cec73d61310591e4890605f61dc5c1bef5808ec4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 09:57:22 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 09:57:22 2019 -0700","stats":{"files_changed":4,"insertions":24,"deletions":16,"files":["jc/jc.py","jc/parsers/ifconfig.py","jc/parsers/ls.py","jc/parsers/netstat.py"]},"message":"linting","epoch":1571417842,"epoch_utc":null},{"commit":"756c2bc9acd60111281b76085a40778e51ca06cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 09:57:10 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 09:57:10 2019 -0700","stats":{"files_changed":1,"insertions":20,"deletions":3,"files":["README.md"]},"message":"add acknowledgments","epoch":1571417830,"epoch_utc":null},{"commit":"084048987c7afc6516f69e68d37d73b2402dc7f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 17:59:46 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 17:59:46 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"changelog update","epoch":1571360386,"epoch_utc":null},{"commit":"02d97394dd76a8782e6e7d3f8a85e1aed05e796b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 17:28:14 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 17:28:14 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update","epoch":1571358494,"epoch_utc":null},{"commit":"177f948f9740e3e33449b04b9136a346c9a2c265","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 16:11:55 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 16:11:55 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version update","epoch":1571353915,"epoch_utc":null},{"commit":"c2b013150ec1f1b1ab7d416f1aa8a62165a5bb95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 15:51:39 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 15:51:39 2019 -0700","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["changelog.txt"]},"message":"add changelog","epoch":1571352699,"epoch_utc":null},{"commit":"0bec67c29ce5d965271440da41a0c4b4c2a1f0fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 15:39:12 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 15:39:12 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/netstat.py"]},"message":"double quotes to single quotes","epoch":1571351952,"epoch_utc":null},{"commit":"8073d15fe11546a17cacd81409e255bb8aecd602","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 15:03:32 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 15:03:32 2019 -0700","stats":{"files_changed":1,"insertions":12,"deletions":4,"files":["README.md"]},"message":"readme update","epoch":1571349812,"epoch_utc":null},{"commit":"3b74afc39e58f801e75b7105e521c1469d30f991","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 15:00:42 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 15:00:42 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["pypi-upload.sh"]},"message":"upload script","epoch":1571349642,"epoch_utc":null},{"commit":"ed320cf0f4bb11cee1e69e9dc9176ba109df1b86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 13:04:34 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 13:04:34 2019 -0700","stats":{"files_changed":3,"insertions":22,"deletions":22,"files":["README.md","jc/parsers/netstat.py","setup.py"]},"message":"change netstat pid field to integer","epoch":1571342674,"epoch_utc":null},{"commit":"021b6924e24e1cf0f971246244b174cd3181c0a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 12:15:27 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 12:15:27 2019 -0700","stats":{"files_changed":2,"insertions":254,"deletions":5,"files":["README.md","jc/parsers/netstat.py"]},"message":"documentation updates","epoch":1571339727,"epoch_utc":null},{"commit":"5fb21b077662f1cb172741945ba5036e5a280638","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 12:09:05 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 12:09:05 2019 -0700","stats":{"files_changed":1,"insertions":0,"deletions":8,"files":["jc/parsers/netstat.py"]},"message":"remove debug print statements","epoch":1571339345,"epoch_utc":null},{"commit":"7b8540ae2a60f2400fe672a022ee00d1415a3500","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 12:07:01 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 12:07:01 2019 -0700","stats":{"files_changed":1,"insertions":19,"deletions":7,"files":["jc/parsers/netstat.py"]},"message":"netstat fixes","epoch":1571339221,"epoch_utc":null},{"commit":"a5e039d4c2e07d52a0797833685c562ab285b49b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 10:54:37 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 10:54:37 2019 -0700","stats":{"files_changed":1,"insertions":17,"deletions":7,"files":["jc/parsers/netstat.py"]},"message":"netstat debugging","epoch":1571334877,"epoch_utc":null},{"commit":"7071f60a302b7aefb8fb312699b0abec25548986","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 09:05:49 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 09:05:49 2019 -0700","stats":{"files_changed":1,"insertions":66,"deletions":18,"files":["jc/parsers/netstat.py"]},"message":"netstat mvp","epoch":1571328349,"epoch_utc":null},{"commit":"0de1dff0253eb46b7336103f62f888940406ccc0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 08:09:19 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 08:09:19 2019 -0700","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["jc/parsers/netstat.py"]},"message":"fix ands","epoch":1571324959,"epoch_utc":null},{"commit":"b3c52eb1ccf82e899dda62c332c0b217d80eb4c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 08:03:56 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 08:03:56 2019 -0700","stats":{"files_changed":2,"insertions":112,"deletions":40,"files":["jc/parsers/ifconfig.py","jc/parsers/netstat.py"]},"message":"add netstat parser","epoch":1571324636,"epoch_utc":null},{"commit":"366c5dbc010869bdb1d3b9d852e10510bd5c266f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 17:36:50 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 17:36:50 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/jc.py"]},"message":"fix help message","epoch":1571272610,"epoch_utc":null},{"commit":"a3ee02514b5fbd43a38ddf515a4aad49bb4e161a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 17:23:18 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 17:23:18 2019 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/jc.py"]},"message":"fix imports and module names","epoch":1571271798,"epoch_utc":null},{"commit":"46ad1269cb58dc6f064d17eb0b04da62d8fd5fce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 17:15:43 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 17:15:43 2019 -0700","stats":{"files_changed":2,"insertions":4,"deletions":3,"files":["jc/jc.py","setup.py"]},"message":"packaging fixes","epoch":1571271343,"epoch_utc":null},{"commit":"7234afe568818678585ac423649a0ccce0f45d68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 16:22:52 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 16:22:52 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"entrypoint fix","epoch":1571268172,"epoch_utc":null},{"commit":"caf480c63aacb518805d48fba0fd454959d11023","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 16:01:34 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 16:01:34 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"module fix","epoch":1571266894,"epoch_utc":null},{"commit":"62851b48d5e5cd673e630a28996e1c24cc45aa58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 15:54:20 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 15:54:20 2019 -0700","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/jc.py","setup.py"]},"message":"fix modules","epoch":1571266460,"epoch_utc":null},{"commit":"46d6da92f0e196e150ab9dd44b1ba290c950905b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 15:08:06 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 15:08:06 2019 -0700","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["jc/{jc => jc.py}","setup.py"]},"message":"fix entry_points","epoch":1571263686,"epoch_utc":null},{"commit":"e572b2edfa993c5049ef3caeda7a8e4797f0c751","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 15:03:34 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 15:03:34 2019 -0700","stats":{"files_changed":2,"insertions":37,"deletions":29,"files":["jc/jc","setup.py"]},"message":"use entry_points instead of scripts","epoch":1571263414,"epoch_utc":null},{"commit":"72c69e7de59029d623c9819dda6aa8cae91bc419","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 09:39:04 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 09:39:04 2019 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/jc"]},"message":"fix package paths","epoch":1571243944,"epoch_utc":null},{"commit":"4d1565071e5cf7c38e026e08db8f4d2e79969691","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 09:03:05 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 09:03:05 2019 -0700","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["jc/{jc.py => jc}","setup.py"]},"message":"rename jc.py to jc","epoch":1571241785,"epoch_utc":null},{"commit":"3652e51693d7ba829f4699fd80de20856941d82f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 08:27:24 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 08:27:24 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"fix requirements","epoch":1571239644,"epoch_utc":null},{"commit":"49ce9f13e817266659400a8c19f5b078a48589df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 15 18:03:51 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 15 18:03:51 2019 -0700","stats":{"files_changed":3,"insertions":17,"deletions":20,"files":["jc/jc.py","jc/parsers/__init__.py","setup.py"]},"message":"setup updates","epoch":1571187831,"epoch_utc":null},{"commit":"e83170b7ec7ed2123bfde69be263b6034c7afa53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 15 16:28:42 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 15 16:28:42 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["README.md"]},"message":"readme update","epoch":1571182122,"epoch_utc":null},{"commit":"ffb6eb754a87baad5fb0558e30a5bca1a9b9e0a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 15 16:10:24 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 15 16:10:24 2019 -0700","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/parsers/__init__.py","setup.py"]},"message":"setup fixes","epoch":1571181024,"epoch_utc":null},{"commit":"2597a18d95d01109d2250487b7550a501edaf77b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 15 15:32:23 2019 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Oct 15 15:32:23 2019 -0700","stats":{"files_changed":1,"insertions":82,"deletions":0,"files":["README.md"]},"message":"readme update","epoch":1571178743,"epoch_utc":null},{"commit":"3e576250b1bfe1c62c556f2fa0425103b0ede1f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 15 15:06:09 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 15 15:06:09 2019 -0700","stats":{"files_changed":11,"insertions":429,"deletions":0,"files":[".gitignore","LICENSE.md","README.md","build-package.sh","jc/__init__.py","jc/jc.py","jc/parsers/__init__.py","jc/parsers/ifconfig.py","jc/parsers/ls.py","jc/parsers/netstat.py","setup.py"]},"message":"First commit","epoch":1571177169,"epoch_utc":null}] +[{"commit":"096fffdb79807d34b99985b38df0a3df7f6a86c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 20 10:03:36 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 20 10:03:36 2022 -0400","stats":{"files_changed":2,"insertions":120,"deletions":36,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":78},{"name":"jc/parsers/git_log.py","lines_changed":78}]},"message":"use stat examples","epoch":1650474216,"epoch_utc":null},{"commit":"728d882ed007b3c8b785018874a0eb06e1143b66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 20 09:50:19 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 20 09:50:19 2022 -0400","stats":{"files_changed":2,"insertions":90,"deletions":12,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":51},{"name":"jc/parsers/git_log.py","lines_changed":51}]},"message":"add timestamp docs and examples","epoch":1650473419,"epoch_utc":null},{"commit":"b53e42aca623181aa9bc72194e6eeef1e9a3a237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 20 09:44:42 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 20 09:44:42 2022 -0400","stats":{"files_changed":5,"insertions":29,"deletions":6,"files":["docs/parsers/git_log.md","docs/utils.md","jc/parsers/git_log.py","jc/utils.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":8},{"name":"docs/utils.md","lines_changed":4},{"name":"jc/parsers/git_log.py","lines_changed":14},{"name":"jc/utils.py","lines_changed":7},{"name":"man/jc.1","lines_changed":2}]},"message":"add calculated timestamp","epoch":1650473082,"epoch_utc":null},{"commit":"477329ce5b8f5c2a8e4384ba3f59289fc18c957d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 20 08:26:26 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 20 08:26:26 2022 -0400","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add linefeed to version text","epoch":1650468386,"epoch_utc":null},{"commit":"283dc4efd55030188f17c7e1dfbc5315103494b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 17:44:15 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 17:44:15 2022 -0400","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["CHANGELOG","jc/cli.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/cli.py","lines_changed":7}]},"message":"add python interpreter version and path to -v and -a output","epoch":1650415455,"epoch_utc":null},{"commit":"d490bbcaa0291a691b95fa5b61807eebb0b088eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 15:26:31 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 15:26:31 2022 -0400","stats":{"files_changed":1,"insertions":26,"deletions":26,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":52}]},"message":"normalize add/update","epoch":1650407191,"epoch_utc":null},{"commit":"f49ddf8e5c5009702155fc62d83c63e3c08c594d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 15:18:04 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 15:18:04 2022 -0400","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":4},{"name":"jc/parsers/git_log.py","lines_changed":4}]},"message":"doc update","epoch":1650406684,"epoch_utc":null},{"commit":"e1e341652b51b823844e76ef7e68f9373a323435","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 15:10:40 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 15:10:40 2022 -0400","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"doc update","epoch":1650406240,"epoch_utc":null},{"commit":"ecda667549137bed5622cca69f2022e7a75ea833","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 15:10:35 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 15:10:35 2022 -0400","stats":{"files_changed":2,"insertions":12,"deletions":8,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":2},{"name":"jc/parsers/git_log.py","lines_changed":18}]},"message":"process integers","epoch":1650406235,"epoch_utc":null},{"commit":"a0d96a188a9f875b2d59625aa97d4f80bba290f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 14:45:20 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 14:45:20 2022 -0400","stats":{"files_changed":2,"insertions":5,"deletions":1,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"doc update","epoch":1650404720,"epoch_utc":null},{"commit":"6c0f0cddfe4dd2d5169f7c55416c6725912557f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 14:43:47 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 14:43:47 2022 -0400","stats":{"files_changed":2,"insertions":14,"deletions":1,"files":["jc/parsers/yaml.py","tests/test_yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":7},{"name":"tests/test_yaml.py","lines_changed":8}]},"message":"fix for datetime objects in yaml files","epoch":1650404627,"epoch_utc":null},{"commit":"c7173ecd89742c8cf8a7bc4a8021baac5c3cd483","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 14:34:53 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 14:34:53 2022 -0400","stats":{"files_changed":1,"insertions":8,"deletions":6,"files":["jc/parsers/git_log.py"],"file_stats":[{"name":"jc/parsers/git_log.py","lines_changed":14}]},"message":"fix mypy issues","epoch":1650404093,"epoch_utc":null},{"commit":"e98240c905394e3ebd6a45fa31b6d432c150afc4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 14:20:44 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 14:20:44 2022 -0400","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/git_log.py"],"file_stats":[{"name":"jc/parsers/git_log.py","lines_changed":8}]},"message":"extend instead of append list","epoch":1650403244,"epoch_utc":null},{"commit":"6cb7e25974b11afe57d7d0e8550b3b1a56b14c67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 13:17:24 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 13:17:24 2022 -0400","stats":{"files_changed":3,"insertions":93,"deletions":1,"files":["README.md","docs/parsers/git_log.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/git_log.md","lines_changed":86},{"name":"man/jc.1","lines_changed":7}]},"message":"add docs","epoch":1650399444,"epoch_utc":null},{"commit":"c37980c05c7fbd4f811ce5fcfcfddaf5f3ab5414","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 13:17:16 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 13:17:16 2022 -0400","stats":{"files_changed":1,"insertions":41,"deletions":7,"files":["jc/parsers/git_log.py"],"file_stats":[{"name":"jc/parsers/git_log.py","lines_changed":48}]},"message":"add stat support","epoch":1650399436,"epoch_utc":null},{"commit":"b5943bd39d776fc4c3b3dea03c0f3d4b6f4bb260","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 10:32:55 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 10:32:55 2022 -0400","stats":{"files_changed":1,"insertions":23,"deletions":10,"files":["jc/parsers/git_log.py"],"file_stats":[{"name":"jc/parsers/git_log.py","lines_changed":33}]},"message":"initial docstring","epoch":1650389575,"epoch_utc":null},{"commit":"49a3a7db3b2b0b292489a41691c9dcbce816cfed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 09:30:38 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 09:30:38 2022 -0400","stats":{"files_changed":2,"insertions":175,"deletions":0,"files":["jc/lib.py","jc/parsers/git_log.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/git_log.py","lines_changed":174}]},"message":"initial git-log parser","epoch":1650385838,"epoch_utc":null},{"commit":"0c55240e9da30ac4293cc324f1094de2abd3da91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 13 10:54:28 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 13 10:54:28 2022 -0700","stats":{"files_changed":3,"insertions":1,"deletions":0,"files":["CHANGELOG","tests/{ => templates}/_test_foo.py","tests/{ => templates}/_test_foo_s.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"tests/{ => templates}/_test_foo.py","lines_changed":0},{"name":"tests/{ => templates}/_test_foo_s.py","lines_changed":0}]},"message":"move test templates to fix test failures on some systems","epoch":1649872468,"epoch_utc":null},{"commit":"f91988aed5499d25acf7a7e87b2b0d0cd37b62af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 12 14:22:06 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 12 14:22:06 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/lib.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":2}]},"message":"iterator -> iterable","epoch":1649798526,"epoch_utc":null},{"commit":"3c3ad9fc6adf865b3814a1f03814d0bc17d1c6bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 12 14:20:58 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 12 14:20:58 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"iterator -> iterable in doc","epoch":1649798458,"epoch_utc":null},{"commit":"291ab79e22a59cb31814e7a5af9dbc9f2ec863e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 12 11:07:34 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 12 11:07:34 2022 -0700","stats":{"files_changed":3,"insertions":24,"deletions":24,"files":["README.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":24},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":22}]},"message":"fix arch linux command","epoch":1649786854,"epoch_utc":null},{"commit":"e6d5892c146762cd41a966adadb77db333d98ace","merge":"c0414e7 dcca7a5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 12 11:02:37 2022 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Apr 12 11:02:37 2022 -0700","message":"Merge pull request #226 from kellyjonbrazil/master\n\nsync to dev","epoch":1649786557,"epoch_utc":null},{"commit":"dcca7a57d558721a61fbba44f07b1d53116827e1","merge":"7138eef 4ee8a69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 12 11:00:51 2022 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Apr 12 11:00:51 2022 -0700","message":"Merge pull request #225 from adrianteri/patch-1\n\nUpdate README","epoch":1649786451,"epoch_utc":null},{"commit":"4ee8a69337b24e199983fe657643abcb0a56a8e6","author":"003","author_email":"adriateri@gmail.com","date":"Tue Apr 12 20:53:39 2022 +0300","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Apr 12 20:53:39 2022 +0300","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"Update README\n\nSpecify the Arch package is in the AUR and NOT in the standard Archlinux repositories.","epoch":1649822019,"epoch_utc":null},{"commit":"c0414e7db7f5d785b72ad616517f2ec63af151a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 17:18:20 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 10 17:18:20 2022 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":8}]},"message":"clean up background tasks","epoch":1649636300,"epoch_utc":null},{"commit":"a419175fe6dffe9c5fd20cfbd82ee552bc82a993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 17:14:34 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 10 17:14:34 2022 -0700","stats":{"files_changed":2,"insertions":34,"deletions":17,"files":["docgen.sh","updatedocs.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":30},{"name":"updatedocs.sh","lines_changed":21}]},"message":"enhance parallelization","epoch":1649636074,"epoch_utc":null},{"commit":"cd6dead034f3c72aebd22afeb2aea6591ae6d94d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 16:54:34 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 10 16:54:34 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"man page update","epoch":1649634874,"epoch_utc":null},{"commit":"45342ea9fea29947d8d90260c7665ffbca612cce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 16:54:22 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 10 16:54:22 2022 -0700","stats":{"files_changed":2,"insertions":16,"deletions":9,"files":["docgen.sh","updatedocs.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":16},{"name":"updatedocs.sh","lines_changed":9}]},"message":"parallelize doc gneration","epoch":1649634862,"epoch_utc":null},{"commit":"585bf0e159c7839869cf3e458938dcc5fa2ceb81","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 10:32:51 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 10 10:32:51 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"xrandr update","epoch":1649611971,"epoch_utc":null},{"commit":"3a860b9babe93d455f68ef21436edf7470d375af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 10:31:13 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 10 10:31:13 2022 -0700","stats":{"files_changed":2,"insertions":7,"deletions":5,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":4},{"name":"jc/parsers/xrandr.py","lines_changed":8}]},"message":"add rotation field","epoch":1649611873,"epoch_utc":null},{"commit":"269180df77f9ff953b07222e8ae790c7e7a8298e","merge":"e85f11c a1afed8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 10:19:50 2022 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Apr 10 10:19:50 2022 -0700","message":"Merge pull request #223 from anekos/fix/support-rotated-devices\n\nFix/support rotated devices","epoch":1649611190,"epoch_utc":null},{"commit":"a1afed8d95e33fbbc618c7b5778a9faeea2f628f","author":"anekos","author_email":"anekos@snca.net","date":"Sun Apr 10 18:19:29 2022 +0900","commit_by":"anekos","commit_by_email":"anekos@snca.net","commit_by_date":"Sun Apr 10 19:53:37 2022 +0900","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["docs/parsers/xrandr.md"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":4}]},"message":"doc update","epoch":1649639969,"epoch_utc":null},{"commit":"e39f150a216e4e184444dfc88a63e0f303e51631","author":"anekos","author_email":"anekos@snca.net","date":"Sun Apr 10 18:12:28 2022 +0900","commit_by":"anekos","commit_by_email":"anekos@snca.net","commit_by_date":"Sun Apr 10 19:53:37 2022 +0900","stats":{"files_changed":3,"insertions":9,"deletions":4,"files":["jc/parsers/xrandr.py","tests/fixtures/generic/xrandr_simple.json","tests/test_xrandr.py"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":4},{"name":"tests/fixtures/generic/xrandr_simple.json","lines_changed":1},{"name":"tests/test_xrandr.py","lines_changed":8}]},"message":"Support rotated devices","epoch":1649639548,"epoch_utc":null},{"commit":"e85f11c6fcad5461bae612dd5a945c20d300e59a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 4 12:00:41 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 4 12:00:41 2022 -0700","stats":{"files_changed":4,"insertions":12,"deletions":12,"files":["docs/parsers/ini.md","docs/parsers/kv.md","jc/parsers/ini.py","jc/parsers/kv.py"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":6},{"name":"docs/parsers/kv.md","lines_changed":6},{"name":"jc/parsers/ini.py","lines_changed":6},{"name":"jc/parsers/kv.py","lines_changed":6}]},"message":"doc formatting","epoch":1649098841,"epoch_utc":null},{"commit":"49a9d7b07e89696f2e022655d7256b7d6ad4bf7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 4 11:42:16 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 4 11:42:16 2022 -0700","stats":{"files_changed":3,"insertions":12,"deletions":8,"files":["docs/parsers/ini.md","docs/parsers/kv.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":8},{"name":"docs/parsers/kv.md","lines_changed":10},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1649097736,"epoch_utc":null},{"commit":"a2ef9c429e4bb9f70d033511dce77ccdb9013971","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 4 11:38:52 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 4 11:38:52 2022 -0700","stats":{"files_changed":4,"insertions":38,"deletions":8,"files":["jc/parsers/ini.py","jc/parsers/kv.py","tests/test_ini.py","tests/test_kv.py"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":12},{"name":"jc/parsers/kv.py","lines_changed":10},{"name":"tests/test_ini.py","lines_changed":12},{"name":"tests/test_kv.py","lines_changed":12}]},"message":"allow duplicate keys","epoch":1649097532,"epoch_utc":null},{"commit":"d5e9074f1c8facb3f15b8c41a008917178626978","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 4 11:38:04 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 4 11:38:04 2022 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/lib.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/lib.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1649097484,"epoch_utc":null},{"commit":"774699f085d97f22ae2dab0cf64d72aa1e1709f7","merge":"789f073 7138eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 4 18:21:15 2022 +0000","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Apr 4 18:21:15 2022 +0000","message":"Merge pull request #220 from kellyjonbrazil/master\n\nsync to dev","epoch":1649121675,"epoch_utc":1649096475},{"commit":"7138eef3d137bc64286d4af453d8d4e7b3f4408d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 30 14:39:56 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 30 14:39:56 2022 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"docs/parsers/asciitable_m.md","lines_changed":6},{"name":"jc/parsers/asciitable_m.py","lines_changed":6}]},"message":"fix newline chars in doc","epoch":1648676396,"epoch_utc":null},{"commit":"fad5e544aa9e57d31473190e196f59c616901207","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 29 09:58:44 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 29 09:58:44 2022 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":2},{"name":"jc/parsers/asciitable.py","lines_changed":2}]},"message":"formatting","epoch":1648573124,"epoch_utc":null},{"commit":"64757e2cf55448bccfbbd60d31930ab3f59af21b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 29 09:35:54 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 29 09:35:54 2022 -0700","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":12},{"name":"jc/parsers/asciitable.py","lines_changed":12}]},"message":"doc formatting","epoch":1648571754,"epoch_utc":null},{"commit":"e05be3f08beae1b600fc55a3a7b4e28163e15bc0","merge":"ac61e9a 789f073","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 25 22:36:05 2022 +0000","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Mar 25 22:36:05 2022 +0000","message":"Merge pull request #213 from kellyjonbrazil/dev\n\nDev v1.18.6","epoch":1648272965,"epoch_utc":1648247765},{"commit":"789f0735dfd63e728b8716d97cf0c6045ede5011","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 25 15:32:37 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 25 15:32:37 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"doc update","epoch":1648247557,"epoch_utc":null},{"commit":"34bc7753174be28d6c1a00dadc662bc374e554c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 25 15:32:11 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 25 15:32:11 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1648247531,"epoch_utc":null},{"commit":"38de059a1bc285c8681086d9fb43d0d23ac01d49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 16:58:45 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 24 16:58:45 2022 -0700","stats":{"files_changed":3,"insertions":9,"deletions":3,"files":["docs/parsers/asciitable.md","docs/parsers/universal.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":6},{"name":"docs/parsers/universal.md","lines_changed":4},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1648166325,"epoch_utc":null},{"commit":"304ae6268f4dff6e6f901628e7ff89db1d6e0767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 16:58:39 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 24 16:58:39 2022 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":12}]},"message":"minor optimization by changing the expression order","epoch":1648166319,"epoch_utc":null},{"commit":"978caf45221188a29c0e67147804f20f317c066d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 12:37:46 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 24 12:37:46 2022 -0700","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["jc/parsers/asciitable.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":26}]},"message":"minor optimization by reordering expressions","epoch":1648150666,"epoch_utc":null},{"commit":"17df5bfcfc25f226a2976aa7ab8a80e4aaa915c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 11:58:13 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 24 11:58:13 2022 -0700","stats":{"files_changed":2,"insertions":12,"deletions":2,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":10},{"name":"jc/parsers/asciitable_m.py","lines_changed":4}]},"message":"cache _is_separator function","epoch":1648148293,"epoch_utc":null},{"commit":"5e6a5068cff71b3b30525d0a12868bdf6551456c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 11:57:01 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 24 11:57:01 2022 -0700","stats":{"files_changed":1,"insertions":6,"deletions":2,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":8}]},"message":"allow iterables for simple table parser","epoch":1648148221,"epoch_utc":null},{"commit":"619de68a61be0117e635032347dde417d77c748c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 09:39:53 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 24 09:39:53 2022 -0700","stats":{"files_changed":2,"insertions":8,"deletions":9,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":7},{"name":"jc/parsers/asciitable_m.py","lines_changed":10}]},"message":"formatting","epoch":1648139993,"epoch_utc":null},{"commit":"6748c3cc91f90bddea3d07b8b30a049ee55eaf35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 09:31:12 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 24 09:31:12 2022 -0700","stats":{"files_changed":2,"insertions":65,"deletions":61,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":52},{"name":"jc/parsers/asciitable_m.py","lines_changed":74}]},"message":"remove lines from corner detection and add rounded corners","epoch":1648139472,"epoch_utc":null},{"commit":"0a462978b731770d1290187a502706c2322f5f91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 23 15:08:33 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 23 15:08:33 2022 -0700","stats":{"files_changed":4,"insertions":101,"deletions":3,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py","tests/test_asciitable.py","tests/test_asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":25},{"name":"jc/parsers/asciitable_m.py","lines_changed":8},{"name":"tests/test_asciitable.py","lines_changed":43},{"name":"tests/test_asciitable_m.py","lines_changed":28}]},"message":"fix for special characters in headers","epoch":1648073313,"epoch_utc":null},{"commit":"e66a82ff49b40a674f9ef373a12d59fc71bfa730","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 23 10:50:34 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 23 10:50:34 2022 -0700","stats":{"files_changed":3,"insertions":6,"deletions":5,"files":["CHANGELOG","jc/parsers/asciitable_m.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":5},{"name":"jc/parsers/asciitable_m.py","lines_changed":4},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1648057834,"epoch_utc":null},{"commit":"f3aa797d96c8e2cef2124dbb2f49d1fadaee3fa2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 17:47:19 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 17:47:19 2022 -0700","stats":{"files_changed":2,"insertions":69,"deletions":9,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":43},{"name":"jc/parsers/asciitable_m.py","lines_changed":35}]},"message":"add more pretty table separators","epoch":1647996439,"epoch_utc":null},{"commit":"e5b478218c4ba3781afd085056dba888c3f6ae02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 16:05:07 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 16:05:07 2022 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_xrandr.py"],"file_stats":[{"name":"tests/test_xrandr.py","lines_changed":6}]},"message":"add quiet=True to parse tests","epoch":1647990307,"epoch_utc":null},{"commit":"35e0e9c32afbc5450c661bcb3a23904d135358ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 15:57:43 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 15:57:43 2022 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":1}]},"message":"remove print statement","epoch":1647989863,"epoch_utc":null},{"commit":"17c3c2f029a0a47eb02d681567619d471b99949c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 15:55:59 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 15:55:59 2022 -0700","stats":{"files_changed":4,"insertions":58,"deletions":2,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py","tests/test_asciitable.py","tests/test_asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":3},{"name":"jc/parsers/asciitable_m.py","lines_changed":2},{"name":"tests/test_asciitable.py","lines_changed":31},{"name":"tests/test_asciitable_m.py","lines_changed":24}]},"message":"add bold bar seperator and ANSI code tests","epoch":1647989759,"epoch_utc":null},{"commit":"cf83e6398b3314b233581eb313510872177de20a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 15:13:07 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 15:13:07 2022 -0700","stats":{"files_changed":2,"insertions":7,"deletions":0,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":4},{"name":"jc/parsers/asciitable_m.py","lines_changed":3}]},"message":"add fancy separators","epoch":1647987187,"epoch_utc":null},{"commit":"94e061b881e2ed28d2b462ad038e5ba77182b6c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 14:53:34 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 14:53:34 2022 -0700","stats":{"files_changed":1,"insertions":275,"deletions":0,"files":["tests/test_asciitable.py"],"file_stats":[{"name":"tests/test_asciitable.py","lines_changed":275}]},"message":"add asciitable parser tests","epoch":1647986014,"epoch_utc":null},{"commit":"720480e39ce3cc2079d7f4f5bcff2725081fec34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 13:21:10 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 13:21:10 2022 -0700","stats":{"files_changed":4,"insertions":10,"deletions":2,"files":["docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":3},{"name":"docs/parsers/asciitable_m.md","lines_changed":3},{"name":"jc/parsers/asciitable.py","lines_changed":3},{"name":"jc/parsers/asciitable_m.py","lines_changed":3}]},"message":"doc update","epoch":1647980470,"epoch_utc":null},{"commit":"82a63fe15922456853aa4597aa10a5a02b20bdef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 12:42:07 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 12:42:07 2022 -0700","stats":{"files_changed":2,"insertions":6,"deletions":8,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":7},{"name":"jc/parsers/asciitable.py","lines_changed":7}]},"message":"doc update","epoch":1647978127,"epoch_utc":null},{"commit":"9c1ec9940e68ce9848da20e81b8c0b7e35a215df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 12:35:56 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 12:35:56 2022 -0700","stats":{"files_changed":4,"insertions":82,"deletions":14,"files":["docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":44},{"name":"docs/parsers/asciitable_m.md","lines_changed":4},{"name":"jc/parsers/asciitable.py","lines_changed":44},{"name":"jc/parsers/asciitable_m.py","lines_changed":4}]},"message":"doc update","epoch":1647977756,"epoch_utc":null},{"commit":"f23f19da453a0f7bcf70e417a10f87e27571aa43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 12:25:59 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 12:25:59 2022 -0700","stats":{"files_changed":5,"insertions":122,"deletions":9,"files":["README.md","docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/asciitable.md","lines_changed":97},{"name":"docs/parsers/asciitable_m.md","lines_changed":4},{"name":"jc/parsers/asciitable_m.py","lines_changed":24},{"name":"man/jc.1","lines_changed":5}]},"message":"doc update","epoch":1647977159,"epoch_utc":null},{"commit":"aea2e1b0a9c6bb2a02a6e73889bb04e8f4f22588","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 12:25:51 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 12:25:51 2022 -0700","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["tests/test_asciitable_m.py"],"file_stats":[{"name":"tests/test_asciitable_m.py","lines_changed":48}]},"message":"fix tests so blank strings are now None","epoch":1647977151,"epoch_utc":null},{"commit":"7d95d679bf4093ea77f30a1be55384b6dbf08341","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 12:25:24 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 12:25:24 2022 -0700","stats":{"files_changed":2,"insertions":212,"deletions":1,"files":["jc/lib.py","jc/parsers/asciitable.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2},{"name":"jc/parsers/asciitable.py","lines_changed":211}]},"message":"add asciitable parser","epoch":1647977124,"epoch_utc":null},{"commit":"b3b140066b74ee31dd1c460502caf2f26df321b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 07:21:19 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 07:21:19 2022 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"docs/parsers/asciitable_m.md","lines_changed":4},{"name":"jc/parsers/asciitable_m.py","lines_changed":4}]},"message":"doc update","epoch":1647958879,"epoch_utc":null},{"commit":"b204c423c1b947c17cb251a5dd3c444cd71dd2c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 07:05:14 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 07:05:14 2022 -0700","stats":{"files_changed":4,"insertions":193,"deletions":15,"files":["README.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/asciitable_m.md","lines_changed":122},{"name":"jc/parsers/asciitable_m.py","lines_changed":78},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update","epoch":1647957914,"epoch_utc":null},{"commit":"d451c309bb0d8889dc09a698212bf01c2154a582","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 06:30:07 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 06:30:07 2022 -0700","stats":{"files_changed":1,"insertions":11,"deletions":8,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":19}]},"message":"change multiple or statements to any()","epoch":1647955807,"epoch_utc":null},{"commit":"01d53da68ed04b736934851137c59216ad02d8c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 19:11:27 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 21 19:11:27 2022 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":1}]},"message":"remove debug print","epoch":1647915087,"epoch_utc":null},{"commit":"53dd05e52c329a15c30a756a36a165ac59ef8a14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 19:10:02 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 21 19:10:02 2022 -0700","stats":{"files_changed":2,"insertions":29,"deletions":1,"files":["jc/parsers/asciitable_m.py","tests/test_asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":3},{"name":"tests/test_asciitable_m.py","lines_changed":27}]},"message":"fix rstrip and add tests","epoch":1647915002,"epoch_utc":null},{"commit":"ab564f5be8282f1c7ee2d602bcef398fdfd4570f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 17:57:14 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 21 17:57:14 2022 -0700","stats":{"files_changed":2,"insertions":237,"deletions":1,"files":["jc/parsers/asciitable_m.py","tests/test_asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":16},{"name":"tests/test_asciitable_m.py","lines_changed":222}]},"message":"add tests","epoch":1647910634,"epoch_utc":null},{"commit":"00c39450f9878527b60545ad61c04cfb98f418dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 13:36:54 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 21 13:36:54 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":2}]},"message":"enhance type annotation","epoch":1647895014,"epoch_utc":null},{"commit":"f611d08b50219f4e573c1d1f0beae27583e76432","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 13:33:35 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 21 13:33:35 2022 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":5}]},"message":"formatting","epoch":1647894815,"epoch_utc":null},{"commit":"90e79b7df3a4d5b37835fdf1c2debc1bad0a40b9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 13:27:44 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 21 13:27:44 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":2}]},"message":"formatting","epoch":1647894464,"epoch_utc":null},{"commit":"4eb2d725d5fe6f2cc7935c7dc891912cf7b8e940","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 13:09:50 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 21 13:09:50 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":2}]},"message":"formatting","epoch":1647893390,"epoch_utc":null},{"commit":"51ae5ebcac7263ef2571c11975b275eff352bbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 13:06:34 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 21 13:06:34 2022 -0700","stats":{"files_changed":1,"insertions":148,"deletions":175,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":323}]},"message":"new streamlined parser","epoch":1647893194,"epoch_utc":null},{"commit":"9ecbdb09162da4d563799aa93d422db85b2c324b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 20 10:16:29 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 20 10:16:29 2022 -0700","stats":{"files_changed":8,"insertions":35,"deletions":30,"files":["docs/parsers/mpstat_s.md","docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","docs/parsers/universal.md","jc/parsers/foo_s.py","jc/parsers/mpstat_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"docs/parsers/mpstat_s.md","lines_changed":10},{"name":"docs/parsers/pidstat_s.md","lines_changed":10},{"name":"docs/parsers/rsync_s.md","lines_changed":10},{"name":"docs/parsers/universal.md","lines_changed":19},{"name":"jc/parsers/foo_s.py","lines_changed":4},{"name":"jc/parsers/mpstat_s.py","lines_changed":4},{"name":"jc/parsers/pidstat_s.py","lines_changed":4},{"name":"jc/parsers/rsync_s.py","lines_changed":4}]},"message":"use generator instead of iterable in function return annotation","epoch":1647796589,"epoch_utc":null},{"commit":"b3a2886fd0af0cd06890f37f1edfc6890bb83e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 20 10:12:29 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 20 10:12:29 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["docs/lib.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":3}]},"message":"formatting","epoch":1647796349,"epoch_utc":null},{"commit":"ceacec0f462bd7c2d9e92ddb9029ccd71aef481c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 18 16:57:47 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 18 16:57:47 2022 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":1}]},"message":"remove errant os sep import","epoch":1647647867,"epoch_utc":null},{"commit":"ff0f794b01395ed9b65fac75a6b07f0772d45a2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 18 16:53:23 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 18 16:53:23 2022 -0700","stats":{"files_changed":1,"insertions":32,"deletions":10,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":42}]},"message":"working","epoch":1647647603,"epoch_utc":null},{"commit":"70fafbf3f80f35c5db2c306978b2a488adad40bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 18 14:19:00 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 18 14:19:00 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"remove asciitable so tests pass for now","epoch":1647638340,"epoch_utc":null},{"commit":"5a248a8fc58952a5eab3d4aac025d7422ba82d08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 18 13:05:57 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 18 13:05:57 2022 -0700","stats":{"files_changed":1,"insertions":344,"deletions":0,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":344}]},"message":"add multiline asciitable parser","epoch":1647633957,"epoch_utc":null},{"commit":"4a3a4e10df8a552a4db3510640695f02b166dc40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 18 13:03:43 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 18 13:03:43 2022 -0700","stats":{"files_changed":1,"insertions":3,"deletions":4,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":7}]},"message":"add asciitable and asciitable-m parsers","epoch":1647633823,"epoch_utc":null},{"commit":"c27bd5ff39f21c6377e661d4d7de1200d2fdd72f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 17 16:24:18 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 17 16:24:18 2022 -0700","stats":{"files_changed":1,"insertions":23,"deletions":16,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":39}]},"message":"pad lines in sparse_table_parse and use str.isspace()","epoch":1647559458,"epoch_utc":null},{"commit":"f804c9627fb71341429ca80aec2887e23e0277db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 15 16:04:58 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 15 16:04:58 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":1}]},"message":"copy input list so we don't mutate the caller's data","epoch":1647385498,"epoch_utc":null},{"commit":"3ab25d02f9dc248706aa1105e1766b2a84bc55a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 12:30:09 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 14 12:30:09 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"use _parser_is_streaming from lib","epoch":1647286209,"epoch_utc":null},{"commit":"9e80fd2b97b9bfe38fdaa6acdf2e8ed26d34b49d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 12:17:18 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 14 12:17:18 2022 -0700","stats":{"files_changed":2,"insertions":15,"deletions":11,"files":["jc/cli.py","jc/lib.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":21},{"name":"jc/lib.py","lines_changed":5}]},"message":"fallback if info and doc items don't exist","epoch":1647285438,"epoch_utc":null},{"commit":"ff9527a098a94c996641fb3fe2f905c8ae5e3063","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 11:35:57 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 14 11:35:57 2022 -0700","stats":{"files_changed":1,"insertions":9,"deletions":13,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":22}]},"message":"import cleanup and use all_parser_info in parsers_text","epoch":1647282957,"epoch_utc":null},{"commit":"7dac2f8dc3baf619105e3c6ca4d3e45300b86287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 10:50:10 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 14 10:50:10 2022 -0700","stats":{"files_changed":3,"insertions":23,"deletions":9,"files":["docs/lib.md","docs/readme.md","man/jc.1"],"file_stats":[{"name":"docs/lib.md","lines_changed":23},{"name":"docs/readme.md","lines_changed":7},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1647280210,"epoch_utc":null},{"commit":"32e4d55e86c3e7d94488ec69f13a4f6400c4cef3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 10:46:54 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 14 10:46:54 2022 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":10}]},"message":"use parser_info for help_doc","epoch":1647280014,"epoch_utc":null},{"commit":"f9a9062147256d0949457cc7fde838f87202524d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 10:46:23 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 14 10:46:23 2022 -0700","stats":{"files_changed":3,"insertions":27,"deletions":10,"files":["CHANGELOG","jc/__init__.py","jc/lib.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/__init__.py","lines_changed":7},{"name":"jc/lib.py","lines_changed":29}]},"message":"add documentation argument to parser_info and all_parser_info","epoch":1647279983,"epoch_utc":null},{"commit":"89e5919796f7da585285901dca461aae21336415","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 09:56:50 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 14 09:56:50 2022 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/mpstat_s.md","jc/parsers/mpstat_s.py"],"file_stats":[{"name":"docs/parsers/mpstat_s.md","lines_changed":2},{"name":"jc/parsers/mpstat_s.py","lines_changed":2}]},"message":"add -A to second example","epoch":1647277010,"epoch_utc":null},{"commit":"e5f5b2591d8ac3abeb9571688c7fb8de34d647f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 09:45:17 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 14 09:45:17 2022 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"changelog update","epoch":1647276317,"epoch_utc":null},{"commit":"77c667eec045daff5cbd062fe9d6e83f237727e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 09:43:18 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 14 09:43:18 2022 -0700","stats":{"files_changed":9,"insertions":67,"deletions":6,"files":["docs/parsers/mpstat.md","docs/parsers/mpstat_s.md","jc/parsers/mpstat.py","jc/parsers/mpstat_s.py","tests/fixtures/ubuntu-18.04/mpstat-A-streaming.json","tests/fixtures/ubuntu-18.04/mpstat-A.json","tests/fixtures/ubuntu-18.04/mpstat-A.out","tests/test_mpstat.py","tests/test_mpstat_s.py"],"file_stats":[{"name":"docs/parsers/mpstat.md","lines_changed":2},{"name":"docs/parsers/mpstat_s.md","lines_changed":2},{"name":"jc/parsers/mpstat.py","lines_changed":12},{"name":"jc/parsers/mpstat_s.py","lines_changed":12},{"name":"tests/fixtures/ubuntu-18.04/mpstat-A-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/mpstat-A.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/mpstat-A.out","lines_changed":19},{"name":"tests/test_mpstat.py","lines_changed":12},{"name":"tests/test_mpstat_s.py","lines_changed":12}]},"message":"ubuntu fixes","epoch":1647276198,"epoch_utc":null},{"commit":"b257ce8c2fe6825fe435b4d04b4184091030db10","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 13 12:25:50 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 13 12:25:50 2022 -0700","stats":{"files_changed":4,"insertions":65,"deletions":0,"files":[".../centos-7.7/mpstat-A-2-5-streaming.json","tests/fixtures/centos-7.7/mpstat-A-streaming.json","tests/fixtures/centos-7.7/mpstat-streaming.json","tests/test_mpstat_s.py"],"file_stats":[{"name":".../centos-7.7/mpstat-A-2-5-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat-A-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat-streaming.json","lines_changed":1},{"name":"tests/test_mpstat_s.py","lines_changed":62}]},"message":"add mpstat_s tests","epoch":1647199550,"epoch_utc":null},{"commit":"c693c868cacbcd81f44fd383719723dd7a137c87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 15:59:38 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 11 15:59:38 2022 -0800","stats":{"files_changed":7,"insertions":352,"deletions":0,"files":["README.md","docs/parsers/mpstat.md","docs/parsers/mpstat_s.md","jc/lib.py","jc/parsers/mpstat.py","jc/parsers/mpstat_s.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/mpstat.md","lines_changed":2},{"name":"docs/parsers/mpstat_s.md","lines_changed":130},{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/mpstat.py","lines_changed":2},{"name":"jc/parsers/mpstat_s.py","lines_changed":211},{"name":"man/jc.1","lines_changed":5}]},"message":"add mpstat streaming parser","epoch":1647043178,"epoch_utc":null},{"commit":"6f98b27a05d6e1f7571a97316b193f096521b959","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 15:33:31 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 11 15:33:31 2022 -0800","stats":{"files_changed":7,"insertions":168,"deletions":0,"files":["tests/fixtures/centos-7.7/mpstat-A-2-5.json","tests/fixtures/centos-7.7/mpstat-A-2-5.out","tests/fixtures/centos-7.7/mpstat-A.json","tests/fixtures/centos-7.7/mpstat-A.out","tests/fixtures/centos-7.7/mpstat.json","tests/fixtures/centos-7.7/mpstat.out","tests/test_mpstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/mpstat-A-2-5.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat-A-2-5.out","lines_changed":86},{"name":"tests/fixtures/centos-7.7/mpstat-A.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat-A.out","lines_changed":15},{"name":"tests/fixtures/centos-7.7/mpstat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat.out","lines_changed":5},{"name":"tests/test_mpstat.py","lines_changed":59}]},"message":"add mpstat tests","epoch":1647041611,"epoch_utc":null},{"commit":"d7efd25d88a8f489564ce48223845a16e4ab1cc7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 14:54:06 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 11 14:54:06 2022 -0800","stats":{"files_changed":4,"insertions":207,"deletions":1,"files":["EXAMPLES.md","README.md","docs/parsers/mpstat.md","man/jc.1"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":64},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/mpstat.md","lines_changed":136},{"name":"man/jc.1","lines_changed":7}]},"message":"add mpstat to docs","epoch":1647039246,"epoch_utc":null},{"commit":"2cddb1f0bb497be0be071cdcb56bf49d2dafc920","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 14:00:19 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 11 14:00:19 2022 -0800","stats":{"files_changed":1,"insertions":94,"deletions":15,"files":["jc/parsers/mpstat.py"],"file_stats":[{"name":"jc/parsers/mpstat.py","lines_changed":109}]},"message":"working mpstat","epoch":1647036019,"epoch_utc":null},{"commit":"ae1c331595dd857d8ae7f8cf93daee1b26be2c3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 13:15:39 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 11 13:15:39 2022 -0800","stats":{"files_changed":1,"insertions":30,"deletions":5,"files":["jc/parsers/mpstat.py"],"file_stats":[{"name":"jc/parsers/mpstat.py","lines_changed":35}]},"message":"initial working version","epoch":1647033339,"epoch_utc":null},{"commit":"bc97052ed4ee3bf3f25127968139f2e89a659fe3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 12:37:17 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 11 12:37:17 2022 -0800","stats":{"files_changed":3,"insertions":109,"deletions":0,"files":["CHANGELOG","jc/lib.py","jc/parsers/mpstat.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/mpstat.py","lines_changed":107}]},"message":"initial add mpstat parser","epoch":1647031037,"epoch_utc":null},{"commit":"6c3e0e2aa0e8cc375d9f7473930b18957d33f1aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 12:37:01 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 11 12:37:01 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"formatting","epoch":1647031021,"epoch_utc":null},{"commit":"dd052e01469e9e3328f7326d3591365a8e7322eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 10:25:24 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 11 10:25:24 2022 -0800","stats":{"files_changed":2,"insertions":26,"deletions":24,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":25},{"name":"jc/parsers/universal.py","lines_changed":25}]},"message":"add underscores to column examples","epoch":1647023124,"epoch_utc":null},{"commit":"54e8f58145f6c4332fbd375d112259ea7abb2d72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 16:50:55 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 16:50:55 2022 -0800","stats":{"files_changed":2,"insertions":28,"deletions":2,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":15},{"name":"jc/parsers/universal.py","lines_changed":15}]},"message":"add table result examples","epoch":1646959855,"epoch_utc":null},{"commit":"def7aa5764e69cd0cf2c5b70aa62c62023f76c9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 15:36:11 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 15:36:11 2022 -0800","stats":{"files_changed":2,"insertions":16,"deletions":16,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":16},{"name":"jc/parsers/universal.py","lines_changed":16}]},"message":"formatting","epoch":1646955371,"epoch_utc":null},{"commit":"6986c74f6dceca907ea2e469a332deeb093a122c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 15:18:27 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 15:18:27 2022 -0800","stats":{"files_changed":169,"insertions":34,"deletions":837,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/pidstat.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/nmcli.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/pidstat.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/xrandr.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":5},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iostat.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jar_manifest.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/nmcli.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/pidstat.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/rsync.md","lines_changed":5},{"name":"docs/parsers/sfdisk.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/systeminfo.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"docs/parsers/ufw.md","lines_changed":5},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/universal.md","lines_changed":18},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/vmstat.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/xrandr.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5},{"name":"docs/parsers/zipinfo.md","lines_changed":5},{"name":"jc/parsers/acpi.py","lines_changed":5},{"name":"jc/parsers/airport.py","lines_changed":5},{"name":"jc/parsers/airport_s.py","lines_changed":5},{"name":"jc/parsers/arp.py","lines_changed":5},{"name":"jc/parsers/blkid.py","lines_changed":5},{"name":"jc/parsers/cksum.py","lines_changed":5},{"name":"jc/parsers/crontab.py","lines_changed":5},{"name":"jc/parsers/crontab_u.py","lines_changed":5},{"name":"jc/parsers/csv.py","lines_changed":5},{"name":"jc/parsers/date.py","lines_changed":5},{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":5},{"name":"jc/parsers/dir.py","lines_changed":5},{"name":"jc/parsers/dmidecode.py","lines_changed":5},{"name":"jc/parsers/dpkg_l.py","lines_changed":5},{"name":"jc/parsers/du.py","lines_changed":5},{"name":"jc/parsers/env.py","lines_changed":5},{"name":"jc/parsers/file.py","lines_changed":5},{"name":"jc/parsers/finger.py","lines_changed":5},{"name":"jc/parsers/foo.py","lines_changed":5},{"name":"jc/parsers/free.py","lines_changed":5},{"name":"jc/parsers/fstab.py","lines_changed":5},{"name":"jc/parsers/group.py","lines_changed":5},{"name":"jc/parsers/gshadow.py","lines_changed":5},{"name":"jc/parsers/hash.py","lines_changed":5},{"name":"jc/parsers/hashsum.py","lines_changed":5},{"name":"jc/parsers/hciconfig.py","lines_changed":5},{"name":"jc/parsers/history.py","lines_changed":5},{"name":"jc/parsers/hosts.py","lines_changed":5},{"name":"jc/parsers/id.py","lines_changed":5},{"name":"jc/parsers/ifconfig.py","lines_changed":5},{"name":"jc/parsers/ini.py","lines_changed":5},{"name":"jc/parsers/iostat.py","lines_changed":5},{"name":"jc/parsers/iptables.py","lines_changed":5},{"name":"jc/parsers/iw_scan.py","lines_changed":5},{"name":"jc/parsers/jar_manifest.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":5},{"name":"jc/parsers/kv.py","lines_changed":5},{"name":"jc/parsers/last.py","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":5},{"name":"jc/parsers/lsblk.py","lines_changed":5},{"name":"jc/parsers/lsmod.py","lines_changed":5},{"name":"jc/parsers/lsof.py","lines_changed":5},{"name":"jc/parsers/lsusb.py","lines_changed":5},{"name":"jc/parsers/mount.py","lines_changed":5},{"name":"jc/parsers/netstat.py","lines_changed":5},{"name":"jc/parsers/nmcli.py","lines_changed":5},{"name":"jc/parsers/ntpq.py","lines_changed":5},{"name":"jc/parsers/passwd.py","lines_changed":5},{"name":"jc/parsers/pidstat.py","lines_changed":5},{"name":"jc/parsers/ping.py","lines_changed":5},{"name":"jc/parsers/pip_list.py","lines_changed":5},{"name":"jc/parsers/pip_show.py","lines_changed":5},{"name":"jc/parsers/ps.py","lines_changed":5},{"name":"jc/parsers/route.py","lines_changed":5},{"name":"jc/parsers/rpm_qi.py","lines_changed":5},{"name":"jc/parsers/rsync.py","lines_changed":5},{"name":"jc/parsers/sfdisk.py","lines_changed":5},{"name":"jc/parsers/shadow.py","lines_changed":5},{"name":"jc/parsers/ss.py","lines_changed":5},{"name":"jc/parsers/stat.py","lines_changed":5},{"name":"jc/parsers/sysctl.py","lines_changed":5},{"name":"jc/parsers/systemctl.py","lines_changed":5},{"name":"jc/parsers/systemctl_lj.py","lines_changed":5},{"name":"jc/parsers/systemctl_ls.py","lines_changed":5},{"name":"jc/parsers/systemctl_luf.py","lines_changed":5},{"name":"jc/parsers/systeminfo.py","lines_changed":5},{"name":"jc/parsers/time.py","lines_changed":5},{"name":"jc/parsers/timedatectl.py","lines_changed":5},{"name":"jc/parsers/tracepath.py","lines_changed":5},{"name":"jc/parsers/traceroute.py","lines_changed":5},{"name":"jc/parsers/ufw.py","lines_changed":5},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":5},{"name":"jc/parsers/uname.py","lines_changed":5},{"name":"jc/parsers/universal.py","lines_changed":18},{"name":"jc/parsers/upower.py","lines_changed":5},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/vmstat.py","lines_changed":5},{"name":"jc/parsers/w.py","lines_changed":5},{"name":"jc/parsers/wc.py","lines_changed":5},{"name":"jc/parsers/who.py","lines_changed":5},{"name":"jc/parsers/xml.py","lines_changed":5},{"name":"jc/parsers/xrandr.py","lines_changed":5},{"name":"jc/parsers/yaml.py","lines_changed":5},{"name":"jc/parsers/zipinfo.py","lines_changed":5}]},"message":"remove direct parser module example from doc","epoch":1646954307,"epoch_utc":null},{"commit":"b784db404d0569a4c630eb124b37b0b1d0846453","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 13:32:26 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 13:32:26 2022 -0800","stats":{"files_changed":17,"insertions":87,"deletions":166,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/pidstat_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/pidstat_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":13},{"name":"docs/parsers/iostat_s.md","lines_changed":20},{"name":"docs/parsers/ls_s.md","lines_changed":16},{"name":"docs/parsers/pidstat_s.md","lines_changed":9},{"name":"docs/parsers/ping_s.md","lines_changed":13},{"name":"docs/parsers/rsync_s.md","lines_changed":13},{"name":"docs/parsers/stat_s.md","lines_changed":13},{"name":"docs/parsers/vmstat_s.md","lines_changed":23},{"name":"jc/parsers/csv_s.py","lines_changed":13},{"name":"jc/parsers/foo_s.py","lines_changed":13},{"name":"jc/parsers/iostat_s.py","lines_changed":20},{"name":"jc/parsers/ls_s.py","lines_changed":16},{"name":"jc/parsers/pidstat_s.py","lines_changed":9},{"name":"jc/parsers/ping_s.py","lines_changed":13},{"name":"jc/parsers/rsync_s.py","lines_changed":13},{"name":"jc/parsers/stat_s.py","lines_changed":13},{"name":"jc/parsers/vmstat_s.py","lines_changed":23}]},"message":"streaming doc formatting update","epoch":1646947946,"epoch_utc":null},{"commit":"8aee4517bb4c2eebdd9873f7eb0827cd33b85519","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 13:02:50 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 13:02:50 2022 -0800","stats":{"files_changed":2,"insertions":12,"deletions":26,"files":["docs/parsers/pidstat_s.md","jc/parsers/pidstat_s.py"],"file_stats":[{"name":"docs/parsers/pidstat_s.md","lines_changed":19},{"name":"jc/parsers/pidstat_s.py","lines_changed":19}]},"message":"doc formatting","epoch":1646946170,"epoch_utc":null},{"commit":"a5fb8fbf94b3b80bef82f078ad6582260b13e374","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 10:10:57 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 10:10:57 2022 -0800","stats":{"files_changed":17,"insertions":164,"deletions":148,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/pidstat_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/pidstat_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":12},{"name":"docs/parsers/iostat_s.md","lines_changed":14},{"name":"docs/parsers/ls_s.md","lines_changed":14},{"name":"docs/parsers/pidstat_s.md","lines_changed":53},{"name":"docs/parsers/ping_s.md","lines_changed":14},{"name":"docs/parsers/rsync_s.md","lines_changed":14},{"name":"docs/parsers/stat_s.md","lines_changed":14},{"name":"docs/parsers/vmstat_s.md","lines_changed":14},{"name":"jc/parsers/csv_s.py","lines_changed":12},{"name":"jc/parsers/foo_s.py","lines_changed":14},{"name":"jc/parsers/iostat_s.py","lines_changed":14},{"name":"jc/parsers/ls_s.py","lines_changed":14},{"name":"jc/parsers/pidstat_s.py","lines_changed":53},{"name":"jc/parsers/ping_s.py","lines_changed":14},{"name":"jc/parsers/rsync_s.py","lines_changed":14},{"name":"jc/parsers/stat_s.py","lines_changed":14},{"name":"jc/parsers/vmstat_s.py","lines_changed":14}]},"message":"streaming doc update","epoch":1646935857,"epoch_utc":null},{"commit":"b9365e2ac28c3eacf53bc101857f7f1d7286ec20","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 09:23:36 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 09:23:36 2022 -0800","stats":{"files_changed":4,"insertions":74,"deletions":0,"files":[".../centos-7.7/pidstat-hdlrsuw-2-5-streaming.json",".../centos-7.7/pidstat-hdlrsuw-streaming.json",".../fixtures/centos-7.7/pidstat-hl-streaming.json","tests/test_pidstat_s.py"],"file_stats":[{"name":".../centos-7.7/pidstat-hdlrsuw-2-5-streaming.json","lines_changed":1},{"name":".../centos-7.7/pidstat-hdlrsuw-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/pidstat-hl-streaming.json","lines_changed":1},{"name":"tests/test_pidstat_s.py","lines_changed":71}]},"message":"add pidstat-s tests","epoch":1646933016,"epoch_utc":null},{"commit":"696338c1a3d462afbe677a6f2ebe08d06ef4046a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 09:04:12 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 09:04:12 2022 -0800","stats":{"files_changed":1,"insertions":38,"deletions":0,"files":["tests/_test_foo_s.py"],"file_stats":[{"name":"tests/_test_foo_s.py","lines_changed":38}]},"message":"add streaming test template","epoch":1646931852,"epoch_utc":null},{"commit":"4f0616190bb842411353d65650b78a65d8cbdc28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 08:14:58 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 08:14:58 2022 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/pidstat_s.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1646928898,"epoch_utc":null},{"commit":"3278cb0de301ee542b1fe8245a6c359193373b6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 08:14:46 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 08:14:46 2022 -0800","stats":{"files_changed":2,"insertions":15,"deletions":10,"files":["docs/parsers/arp.md","jc/parsers/arp.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":23}]},"message":"add type hints","epoch":1646928886,"epoch_utc":null},{"commit":"4fc04256a567c502a88ac8a1bd189746387c93f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 08:00:37 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 08:00:37 2022 -0800","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["jc/parsers/foo_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":4},{"name":"jc/parsers/pidstat_s.py","lines_changed":4},{"name":"jc/parsers/rsync_s.py","lines_changed":4}]},"message":"rollback noReturn to tuple","epoch":1646928037,"epoch_utc":null},{"commit":"e4ae0fea63c0386c1b3239607fd6a58738d23633","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 16:28:55 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 16:28:55 2022 -0800","stats":{"files_changed":5,"insertions":8,"deletions":8,"files":["docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","jc/parsers/foo_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"docs/parsers/pidstat_s.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":4},{"name":"jc/parsers/pidstat_s.py","lines_changed":4},{"name":"jc/parsers/rsync_s.py","lines_changed":4}]},"message":"fix type annotation","epoch":1646872135,"epoch_utc":null},{"commit":"d3727ea0906d6167aa48c340519242b010469d98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 16:09:35 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 16:09:35 2022 -0800","stats":{"files_changed":4,"insertions":99,"deletions":1,"files":["CHANGELOG","README.md","docs/parsers/pidstat_s.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/pidstat_s.md","lines_changed":91},{"name":"man/jc.1","lines_changed":5}]},"message":"doc update","epoch":1646870975,"epoch_utc":null},{"commit":"0d13909cf63d14008607c5640d074ab4073115e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 16:07:29 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 16:07:29 2022 -0800","stats":{"files_changed":2,"insertions":168,"deletions":0,"files":["jc/lib.py","jc/parsers/pidstat_s.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/pidstat_s.py","lines_changed":167}]},"message":"add pidstat-s parser","epoch":1646870849,"epoch_utc":null},{"commit":"c52ca20e285895d2afb685a2a5ca275de7901033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 16:07:17 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 16:07:17 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/pidstat.py"],"file_stats":[{"name":"jc/parsers/pidstat.py","lines_changed":2}]},"message":"fix comment","epoch":1646870837,"epoch_utc":null},{"commit":"21f27f26c81c75234221a5193c7d3903323e2032","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 15:37:10 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 15:37:10 2022 -0800","stats":{"files_changed":4,"insertions":72,"deletions":0,"files":["tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.json","tests/fixtures/centos-7.7/pidstat-hdlrsuw.json","tests/fixtures/centos-7.7/pidstat-hl.json","tests/test_pidstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/pidstat-hdlrsuw.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/pidstat-hl.json","lines_changed":1},{"name":"tests/test_pidstat.py","lines_changed":69}]},"message":"add pidstat tests","epoch":1646869030,"epoch_utc":null},{"commit":"5e7a87f39782d12070a895440ff541800df91b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 15:37:04 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 15:37:04 2022 -0800","stats":{"files_changed":1,"insertions":35,"deletions":0,"files":["tests/_test_foo.py"],"file_stats":[{"name":"tests/_test_foo.py","lines_changed":35}]},"message":"add test template","epoch":1646869024,"epoch_utc":null},{"commit":"845d763829acd03fff1d2fad6e9691f04bd1a2aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 15:09:22 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 15:09:22 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/pidstat.md","jc/parsers/pidstat.py"],"file_stats":[{"name":"docs/parsers/pidstat.md","lines_changed":4},{"name":"jc/parsers/pidstat.py","lines_changed":4}]},"message":"format docs to fit 80 columns","epoch":1646867362,"epoch_utc":null},{"commit":"f5c7d52ec72f5ff4b77d5ac4491f330575b9f10f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 14:43:56 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 14:43:56 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":10,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":6},{"name":"templates/manpage_template","lines_changed":6}]},"message":"formatting","epoch":1646865836,"epoch_utc":null},{"commit":"c3198a58744803f52113f80967c7259d781e2328","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 14:17:48 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 14:17:48 2022 -0800","stats":{"files_changed":2,"insertions":22,"deletions":12,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":17},{"name":"templates/manpage_template","lines_changed":17}]},"message":"formatting","epoch":1646864268,"epoch_utc":null},{"commit":"bbd4afa73542ba6596aed77426bb494fbcf23196","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 14:09:58 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 14:09:58 2022 -0800","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["README.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"man/jc.1","lines_changed":7}]},"message":"add pidstat to docs","epoch":1646863798,"epoch_utc":null},{"commit":"ae754a84bf5fc35b248bbc5f7b0fa8e871765819","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 14:06:34 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 14:06:34 2022 -0800","stats":{"files_changed":3,"insertions":263,"deletions":33,"files":["docs/parsers/arp.md","docs/parsers/pidstat.md","jc/parsers/pidstat.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/pidstat.md","lines_changed":156},{"name":"jc/parsers/pidstat.py","lines_changed":138}]},"message":"doc update","epoch":1646863594,"epoch_utc":null},{"commit":"3389eb5debe0f0ba01ece01e20048608bf357e70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 13:18:04 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 13:18:04 2022 -0800","stats":{"files_changed":4,"insertions":219,"deletions":9,"files":["jc/parsers/pidstat.py","tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.out","tests/fixtures/centos-7.7/pidstat-hdlrsuw.out","tests/fixtures/centos-7.7/pidstat-hl.out"],"file_stats":[{"name":"jc/parsers/pidstat.py","lines_changed":52},{"name":"tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.out","lines_changed":47},{"name":"tests/fixtures/centos-7.7/pidstat-hdlrsuw.out","lines_changed":83},{"name":"tests/fixtures/centos-7.7/pidstat-hl.out","lines_changed":46}]},"message":"initial working parser","epoch":1646860684,"epoch_utc":null},{"commit":"01f2c1e71f87ab401d487be4d6d150cb67c91437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 12:13:32 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 12:13:32 2022 -0800","stats":{"files_changed":5,"insertions":162,"deletions":2,"files":["CHANGELOG","jc/lib.py","jc/parsers/pidstat.py","setup.py","tests/fixtures/centos-7.7/pidstat.out"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/lib.py","lines_changed":3},{"name":"jc/parsers/pidstat.py","lines_changed":112},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/pidstat.out","lines_changed":44}]},"message":"add pidstat parser","epoch":1646856812,"epoch_utc":null},{"commit":"8bfbf8f1bcd233a8ecd34012e140eb29164ca5fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 12:13:07 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 12:13:07 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"simplify error message","epoch":1646856787,"epoch_utc":null},{"commit":"f4242669bac3af5eb196c46d4146823aacec40ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 10:52:40 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 10:52:40 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":10,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":12}]},"message":"minor cleanup","epoch":1646851960,"epoch_utc":null},{"commit":"bebd9331f1fb9b80f8cb4a5cfacd68461743004e","merge":"9861983 ac61e9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 18:49:01 2022 +0000","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 9 18:49:01 2022 +0000","message":"Merge pull request #211 from kellyjonbrazil/master\n\nsync to dev","epoch":1646880541,"epoch_utc":1646851741},{"commit":"ac61e9ad2c9c4e864db02db04cbf907fb0efd99b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 8 13:21:05 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 8 13:21:05 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"templates/readme_template","lines_changed":1}]},"message":"add pypi link","epoch":1646774465,"epoch_utc":null},{"commit":"648ef4d8a9c33a36d4bb2c135fe59b031de8f24c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 8 13:19:20 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 8 13:19:20 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"templates/readme_template","lines_changed":4}]},"message":"update badge links","epoch":1646774360,"epoch_utc":null},{"commit":"727fc9a701e9aae75d3d2b708010da1d0dc8781a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 15:19:25 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Mar 5 15:19:25 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/date.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1646522365,"epoch_utc":null},{"commit":"306512d6bb53af18516fc10b15c7ec79cb02cc98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 15:13:47 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Mar 5 15:13:47 2022 -0800","stats":{"files_changed":4,"insertions":7,"deletions":4,"files":["CHANGELOG","jc/lib.py","jc/parsers/date.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/lib.py","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":4},{"name":"setup.py","lines_changed":2}]},"message":"force AM/PM to uppercase in date parser","epoch":1646522027,"epoch_utc":null},{"commit":"6afb1d389ca9dfd7880386d380fee032b7eb92e2","merge":"961968a 9861983","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 21:49:36 2022 +0000","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sat Mar 5 21:49:36 2022 +0000","message":"Merge pull request #209 from kellyjonbrazil/dev\n\nDev v1.18.4","epoch":1646545776,"epoch_utc":1646516976},{"commit":"98619834818c181cb50a9605fe166b6153c46095","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 13:45:28 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Mar 5 13:45:28 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1646516728,"epoch_utc":null},{"commit":"ca79053db08542849136ae13fdb4d1d90b79a7e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 12:15:47 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Mar 5 12:15:47 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":2}]},"message":"document pydoc version","epoch":1646511347,"epoch_utc":null},{"commit":"29c263f87810f8566ebdad2358e99896391adfd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 12:15:14 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Mar 5 12:15:14 2022 -0800","stats":{"files_changed":93,"insertions":115,"deletions":115,"files":["docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/streaming.md","docs/utils.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":16},{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/dpkg_l.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/finger.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/gshadow.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iostat.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/jar_manifest.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/kv.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/nmcli.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/rsync.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/stat_s.md","lines_changed":2},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/universal.md","lines_changed":4},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/xrandr.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"docs/parsers/zipinfo.md","lines_changed":2},{"name":"docs/streaming.md","lines_changed":12},{"name":"docs/utils.md","lines_changed":20}]},"message":"pydoc formatting fixes","epoch":1646511314,"epoch_utc":null},{"commit":"128c3c170abc6a702ae044b073fb9d992d4262b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 16:38:49 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 4 16:38:49 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"doc update","epoch":1646440729,"epoch_utc":null},{"commit":"a531ab8864fca27b55d83b55055eaef1c36128cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 16:35:06 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 4 16:35:06 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"formatting","epoch":1646440506,"epoch_utc":null},{"commit":"0c1be7cc11ec75a5738483d68d053e702eb34fc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 16:29:36 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 4 16:29:36 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":18,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":11},{"name":"templates/readme_template","lines_changed":11}]},"message":"reduce dig example size","epoch":1646440176,"epoch_utc":null},{"commit":"e4222b45f54e6179e22d7924c083e4642b9974ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 16:24:13 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 4 16:24:13 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":4}]},"message":"fix names to mod names","epoch":1646439853,"epoch_utc":null},{"commit":"ac32c69c31e8eff22252d7aded08f6cb14622086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 13:35:16 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 4 13:35:16 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":2},{"name":"jc/parsers/universal.py","lines_changed":2}]},"message":"formatting","epoch":1646429716,"epoch_utc":null},{"commit":"cb2dfeac8d44b733ad9d364e8c6d233a381bfae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 13:27:39 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 4 13:27:39 2022 -0800","stats":{"files_changed":199,"insertions":334,"deletions":326,"files":["README.md","docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/streaming.md","docs/utils.md","jc/__init__.py","jc/cli.py","jc/exceptions.py","jc/lib.py","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat_freebsd_osx.py","jc/parsers/netstat_linux.py","jc/parsers/nmcli.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/xrandr.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py","jc/streaming.py","jc/utils.py","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docgen.sh","lines_changed":6},{"name":"docs/lib.md","lines_changed":25},{"name":"docs/parsers/acpi.md","lines_changed":4},{"name":"docs/parsers/airport.md","lines_changed":4},{"name":"docs/parsers/airport_s.md","lines_changed":4},{"name":"docs/parsers/arp.md","lines_changed":4},{"name":"docs/parsers/blkid.md","lines_changed":4},{"name":"docs/parsers/cksum.md","lines_changed":4},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"docs/parsers/crontab_u.md","lines_changed":4},{"name":"docs/parsers/csv.md","lines_changed":4},{"name":"docs/parsers/csv_s.md","lines_changed":4},{"name":"docs/parsers/date.md","lines_changed":4},{"name":"docs/parsers/df.md","lines_changed":4},{"name":"docs/parsers/dig.md","lines_changed":4},{"name":"docs/parsers/dir.md","lines_changed":4},{"name":"docs/parsers/dmidecode.md","lines_changed":4},{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"docs/parsers/du.md","lines_changed":4},{"name":"docs/parsers/env.md","lines_changed":4},{"name":"docs/parsers/file.md","lines_changed":4},{"name":"docs/parsers/finger.md","lines_changed":4},{"name":"docs/parsers/free.md","lines_changed":4},{"name":"docs/parsers/fstab.md","lines_changed":4},{"name":"docs/parsers/group.md","lines_changed":4},{"name":"docs/parsers/gshadow.md","lines_changed":4},{"name":"docs/parsers/hash.md","lines_changed":4},{"name":"docs/parsers/hashsum.md","lines_changed":4},{"name":"docs/parsers/hciconfig.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":4},{"name":"docs/parsers/hosts.md","lines_changed":4},{"name":"docs/parsers/id.md","lines_changed":4},{"name":"docs/parsers/ifconfig.md","lines_changed":4},{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"docs/parsers/iostat.md","lines_changed":4},{"name":"docs/parsers/iostat_s.md","lines_changed":4},{"name":"docs/parsers/iptables.md","lines_changed":4},{"name":"docs/parsers/iw_scan.md","lines_changed":4},{"name":"docs/parsers/jar_manifest.md","lines_changed":4},{"name":"docs/parsers/jobs.md","lines_changed":4},{"name":"docs/parsers/kv.md","lines_changed":4},{"name":"docs/parsers/last.md","lines_changed":4},{"name":"docs/parsers/ls.md","lines_changed":4},{"name":"docs/parsers/ls_s.md","lines_changed":4},{"name":"docs/parsers/lsblk.md","lines_changed":4},{"name":"docs/parsers/lsmod.md","lines_changed":4},{"name":"docs/parsers/lsof.md","lines_changed":4},{"name":"docs/parsers/lsusb.md","lines_changed":4},{"name":"docs/parsers/mount.md","lines_changed":4},{"name":"docs/parsers/netstat.md","lines_changed":4},{"name":"docs/parsers/nmcli.md","lines_changed":4},{"name":"docs/parsers/ntpq.md","lines_changed":4},{"name":"docs/parsers/passwd.md","lines_changed":4},{"name":"docs/parsers/ping.md","lines_changed":4},{"name":"docs/parsers/ping_s.md","lines_changed":4},{"name":"docs/parsers/pip_list.md","lines_changed":4},{"name":"docs/parsers/pip_show.md","lines_changed":4},{"name":"docs/parsers/ps.md","lines_changed":4},{"name":"docs/parsers/route.md","lines_changed":4},{"name":"docs/parsers/rpm_qi.md","lines_changed":4},{"name":"docs/parsers/rsync.md","lines_changed":4},{"name":"docs/parsers/rsync_s.md","lines_changed":9},{"name":"docs/parsers/sfdisk.md","lines_changed":4},{"name":"docs/parsers/shadow.md","lines_changed":4},{"name":"docs/parsers/ss.md","lines_changed":4},{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"docs/parsers/stat_s.md","lines_changed":4},{"name":"docs/parsers/sysctl.md","lines_changed":4},{"name":"docs/parsers/systemctl.md","lines_changed":4},{"name":"docs/parsers/systemctl_lj.md","lines_changed":4},{"name":"docs/parsers/systemctl_ls.md","lines_changed":4},{"name":"docs/parsers/systemctl_luf.md","lines_changed":4},{"name":"docs/parsers/systeminfo.md","lines_changed":4},{"name":"docs/parsers/time.md","lines_changed":4},{"name":"docs/parsers/timedatectl.md","lines_changed":4},{"name":"docs/parsers/tracepath.md","lines_changed":4},{"name":"docs/parsers/traceroute.md","lines_changed":4},{"name":"docs/parsers/ufw.md","lines_changed":4},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":4},{"name":"docs/parsers/uname.md","lines_changed":4},{"name":"docs/parsers/universal.md","lines_changed":6},{"name":"docs/parsers/upower.md","lines_changed":4},{"name":"docs/parsers/uptime.md","lines_changed":4},{"name":"docs/parsers/vmstat.md","lines_changed":4},{"name":"docs/parsers/vmstat_s.md","lines_changed":4},{"name":"docs/parsers/w.md","lines_changed":4},{"name":"docs/parsers/wc.md","lines_changed":4},{"name":"docs/parsers/who.md","lines_changed":4},{"name":"docs/parsers/xml.md","lines_changed":4},{"name":"docs/parsers/xrandr.md","lines_changed":4},{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"docs/parsers/zipinfo.md","lines_changed":4},{"name":"docs/readme.md","lines_changed":2},{"name":"docs/streaming.md","lines_changed":17},{"name":"docs/utils.md","lines_changed":29},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/cli.py","lines_changed":4},{"name":"jc/exceptions.py","lines_changed":2},{"name":"jc/lib.py","lines_changed":2},{"name":"jc/parsers/acpi.py","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/blkid.py","lines_changed":2},{"name":"jc/parsers/cksum.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"jc/parsers/csv.py","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/dir.py","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":2},{"name":"jc/parsers/dpkg_l.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/finger.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/group.py","lines_changed":2},{"name":"jc/parsers/gshadow.py","lines_changed":2},{"name":"jc/parsers/hash.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":2},{"name":"jc/parsers/hciconfig.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/iostat.py","lines_changed":2},{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2},{"name":"jc/parsers/jar_manifest.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/kv.py","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/lsusb.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/netstat_freebsd_osx.py","lines_changed":2},{"name":"jc/parsers/netstat_linux.py","lines_changed":2},{"name":"jc/parsers/nmcli.py","lines_changed":2},{"name":"jc/parsers/ntpq.py","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":2},{"name":"jc/parsers/ping.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/rpm_qi.py","lines_changed":2},{"name":"jc/parsers/rsync.py","lines_changed":2},{"name":"jc/parsers/rsync_s.py","lines_changed":2},{"name":"jc/parsers/sfdisk.py","lines_changed":2},{"name":"jc/parsers/shadow.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/stat_s.py","lines_changed":2},{"name":"jc/parsers/sysctl.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/systeminfo.py","lines_changed":2},{"name":"jc/parsers/time.py","lines_changed":2},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/ufw.py","lines_changed":2},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/universal.py","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/parsers/wc.py","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":2},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/xrandr.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2},{"name":"jc/parsers/zipinfo.py","lines_changed":2},{"name":"jc/streaming.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"templates/manpage_template","lines_changed":2},{"name":"templates/readme_template","lines_changed":4}]},"message":"change name to JSON Convert","epoch":1646429259,"epoch_utc":null},{"commit":"9a3602e70b865a3015bd700b30d1076e17511a9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 08:57:11 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 4 08:57:11 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":4},{"name":"jc/lib.py","lines_changed":4}]},"message":"doc update","epoch":1646413031,"epoch_utc":null},{"commit":"a9f53ee258e18bc90934e263d8dc96feee84e939","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 3 17:50:19 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 3 17:50:19 2022 -0800","stats":{"files_changed":2,"insertions":15,"deletions":4,"files":["jc/cli.py","jc/lib.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4},{"name":"jc/lib.py","lines_changed":15}]},"message":"optimize streaming parser detection in cli","epoch":1646358619,"epoch_utc":null},{"commit":"6be3d3d98222a262c5138bb09f2951ccfab96110","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 3 17:38:47 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 3 17:38:47 2022 -0800","stats":{"files_changed":3,"insertions":43,"deletions":1,"files":["CHANGELOG","docs/lib.md","docs/readme.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docs/lib.md","lines_changed":25},{"name":"docs/readme.md","lines_changed":16}]},"message":"doc update","epoch":1646357927,"epoch_utc":null},{"commit":"e49df7208377ab34a74240a06f35f17fee4b8203","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 3 17:37:01 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 3 17:37:01 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"use streaming parser list to find streaming parsers","epoch":1646357821,"epoch_utc":null},{"commit":"7ede7be7bf7b1a7d29d158b3b21c20fff4990e72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 3 17:36:40 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 3 17:36:40 2022 -0800","stats":{"files_changed":2,"insertions":42,"deletions":0,"files":["jc/__init__.py","jc/lib.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":17},{"name":"jc/lib.py","lines_changed":25}]},"message":"add standard and streaming list functions","epoch":1646357800,"epoch_utc":null},{"commit":"4758e28a36e2a55497e4f722d386a6b5cc30dc4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 2 15:24:18 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 2 15:24:18 2022 -0800","stats":{"files_changed":2,"insertions":20,"deletions":16,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":18},{"name":"jc/__init__.py","lines_changed":18}]},"message":"formatting","epoch":1646263458,"epoch_utc":null},{"commit":"4a1ee151b3cb054d84cd964fd62f5855f765751d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 2 10:57:09 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 2 10:57:09 2022 -0800","stats":{"files_changed":2,"insertions":9,"deletions":11,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py"],"file_stats":[{"name":"docs/parsers/nmcli.md","lines_changed":4},{"name":"jc/parsers/nmcli.py","lines_changed":16}]},"message":"add dhcp6 options to docs","epoch":1646247429,"epoch_utc":null},{"commit":"8c8afc1a922e3c30fcf501d169b33a68b65cd3e0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 2 10:15:01 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 2 10:15:01 2022 -0800","stats":{"files_changed":2,"insertions":60,"deletions":24,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":42},{"name":"jc/__init__.py","lines_changed":42}]},"message":"formatting","epoch":1646244901,"epoch_utc":null},{"commit":"ed205f7720d98c225c917c252ed7a6c9e6e8c2b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 28 12:55:05 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 28 12:55:05 2022 -0800","stats":{"files_changed":3,"insertions":9,"deletions":9,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/nmcli.md","lines_changed":8},{"name":"jc/parsers/nmcli.py","lines_changed":8},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1646081705,"epoch_utc":null},{"commit":"d65f7ae992abc33140c00714d442290103661757","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 28 12:26:06 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 28 12:26:06 2022 -0800","stats":{"files_changed":1,"insertions":41,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":41}]},"message":"add nmcli","epoch":1646079966,"epoch_utc":null},{"commit":"e2ffef57b9a474048fe72cf42aebfa6bfaf2e42b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 28 12:20:39 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 28 12:20:39 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_nmcli.py"],"file_stats":[{"name":"tests/test_nmcli.py","lines_changed":2}]},"message":"fix test","epoch":1646079639,"epoch_utc":null},{"commit":"002caa9fb3b65f1ae64df25cc39c3de130403e76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 28 12:19:02 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 28 12:19:02 2022 -0800","stats":{"files_changed":7,"insertions":252,"deletions":0,"files":[".../fedora32/nmcli-connection-show-ens33.json",".../fedora32/nmcli-connection-show-ens33.out",".../fixtures/fedora32/nmcli-device-show-ens33.json",".../fixtures/fedora32/nmcli-device-show-ens33.out","tests/fixtures/fedora32/nmcli-device-show.json","tests/fixtures/fedora32/nmcli-device-show.out","tests/test_nmcli.py"],"file_stats":[{"name":".../fedora32/nmcli-connection-show-ens33.json","lines_changed":1},{"name":".../fedora32/nmcli-connection-show-ens33.out","lines_changed":148},{"name":".../fixtures/fedora32/nmcli-device-show-ens33.json","lines_changed":1},{"name":".../fixtures/fedora32/nmcli-device-show-ens33.out","lines_changed":26},{"name":"tests/fixtures/fedora32/nmcli-device-show.json","lines_changed":1},{"name":"tests/fixtures/fedora32/nmcli-device-show.out","lines_changed":39},{"name":"tests/test_nmcli.py","lines_changed":36}]},"message":"add fedora tests","epoch":1646079542,"epoch_utc":null},{"commit":"b7c6faf3daf8eb0c42a222778baa440c5a018c75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 25 11:23:20 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 25 11:23:20 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"enhance error message","epoch":1645817000,"epoch_utc":null},{"commit":"554ca61d1764b81dea06b6b013d0444072f0662a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 25 11:19:20 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 25 11:19:20 2022 -0800","stats":{"files_changed":11,"insertions":165,"deletions":0,"files":[".../fixtures/centos-7.7/nmcli-connection-all.json",".../centos-7.7/nmcli-connection-show-ens33.json","tests/fixtures/centos-7.7/nmcli-connection.json","tests/fixtures/centos-7.7/nmcli-device-all.json",".../centos-7.7/nmcli-device-show-ens33.json",".../fixtures/centos-7.7/nmcli-device-show-lo.json","tests/fixtures/centos-7.7/nmcli-device-show.json","tests/fixtures/centos-7.7/nmcli-device.json","tests/fixtures/centos-7.7/nmcli-general-all.json",".../centos-7.7/nmcli-general-permissions.json","tests/test_nmcli.py"],"file_stats":[{"name":".../fixtures/centos-7.7/nmcli-connection-all.json","lines_changed":1},{"name":".../centos-7.7/nmcli-connection-show-ens33.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-connection.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-device-all.json","lines_changed":1},{"name":".../centos-7.7/nmcli-device-show-ens33.json","lines_changed":1},{"name":".../fixtures/centos-7.7/nmcli-device-show-lo.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-device-show.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-device.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-general-all.json","lines_changed":1},{"name":".../centos-7.7/nmcli-general-permissions.json","lines_changed":1},{"name":"tests/test_nmcli.py","lines_changed":155}]},"message":"add tests","epoch":1645816760,"epoch_utc":null},{"commit":"7b9722d255a16981099dc803beda7abe0d46106a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 21:21:02 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 21:21:02 2022 -0800","stats":{"files_changed":2,"insertions":26,"deletions":34,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":30},{"name":"templates/manpage_template","lines_changed":30}]},"message":"fix formatting","epoch":1645766462,"epoch_utc":null},{"commit":"5505bde8ef77db0885f08d8d04160cbc4418dd67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:53:54 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 20:53:54 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/zipinfo.md"],"file_stats":[{"name":"docs/parsers/zipinfo.md","lines_changed":2}]},"message":"doc update","epoch":1645764834,"epoch_utc":null},{"commit":"dbcd9a4060647be24bca2a8d577f11925a9ac210","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:52:28 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 20:52:28 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":2}]},"message":"bump version to 1.0","epoch":1645764748,"epoch_utc":null},{"commit":"4bdeb2b3aa063c2772f5c44e52acbe16e915cc3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:52:18 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 20:52:18 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/xrandr.py"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":2}]},"message":"simplify warning message","epoch":1645764738,"epoch_utc":null},{"commit":"6ae1d03187c6d4b669f6f74db1be7c9cf07adaed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:47:15 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 20:47:15 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py"],"file_stats":[{"name":"docs/parsers/nmcli.md","lines_changed":2},{"name":"jc/parsers/nmcli.py","lines_changed":2}]},"message":"doc fix","epoch":1645764435,"epoch_utc":null},{"commit":"f75b06abe4af152be094f8bc1ba5ce66b25e35e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:43:20 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 20:43:20 2022 -0800","stats":{"files_changed":4,"insertions":180,"deletions":3,"files":["README.md","docs/parsers/nmcli.md","jc/parsers/nmcli.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/nmcli.md","lines_changed":172},{"name":"jc/parsers/nmcli.py","lines_changed":3},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update","epoch":1645764200,"epoch_utc":null},{"commit":"1923925710dadc4116202855ae884ef18394d428","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:35:00 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 20:35:00 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"update changelog","epoch":1645763700,"epoch_utc":null},{"commit":"2c5c57ae04df3b7abfb1c3423c3350c7c2ab5dcd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:33:10 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 20:33:10 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/lib.py","setup.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1645763590,"epoch_utc":null},{"commit":"f4d11d697e000135720a971edf84dcad31a1bec8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:31:58 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 20:31:58 2022 -0800","stats":{"files_changed":1,"insertions":155,"deletions":15,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":170}]},"message":"finish use cases and doc","epoch":1645763518,"epoch_utc":null},{"commit":"7f409b7082aa9525cc9280e3c5c92bc82089cf14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:31:09 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 20:31:09 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"enhance ParseError cli message","epoch":1645763469,"epoch_utc":null},{"commit":"937fa5aad2519f588c6d0feb8f08211f6b99872f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 18:22:19 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 18:22:19 2022 -0800","stats":{"files_changed":1,"insertions":20,"deletions":0,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":20}]},"message":"split dhcp options","epoch":1645755739,"epoch_utc":null},{"commit":"19dcef513565c34a31f6d735577da5e25f9bd2cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 17:10:39 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 17:10:39 2022 -0800","stats":{"files_changed":1,"insertions":69,"deletions":2,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":71}]},"message":"firm up flow. add/remove text. parse routes","epoch":1645751439,"epoch_utc":null},{"commit":"3d01356461eb2790f859968da7f5cb4fd2ee9898","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 14:53:26 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 14:53:26 2022 -0800","stats":{"files_changed":1,"insertions":27,"deletions":3,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":30}]},"message":"add text_kv function","epoch":1645743206,"epoch_utc":null},{"commit":"2d6f666fa4c791e7995f6b0c1490dac73ce224c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 12:21:13 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 12:21:13 2022 -0800","stats":{"files_changed":1,"insertions":61,"deletions":16,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":77}]},"message":"add dev show and conn show parsers","epoch":1645734073,"epoch_utc":null},{"commit":"4dda895f122ecc19b267ed1485cf656bae76ff07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 11:25:14 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 11:25:14 2022 -0800","stats":{"files_changed":13,"insertions":404,"deletions":0,"files":["jc/lib.py","jc/parsers/nmcli.py","tests/fixtures/centos-7.7/nmcli-connection-all.out",".../centos-7.7/nmcli-connection-show-ens33.out","tests/fixtures/centos-7.7/nmcli-connection.out","tests/fixtures/centos-7.7/nmcli-device-all.out",".../centos-7.7/nmcli-device-show-ens33.out","tests/fixtures/centos-7.7/nmcli-device-show-lo.out","tests/fixtures/centos-7.7/nmcli-device-show.out","tests/fixtures/centos-7.7/nmcli-device.out","tests/fixtures/centos-7.7/nmcli-general-all.out",".../centos-7.7/nmcli-general-permissions.out","tests/fixtures/centos-7.7/nmcli.out"],"file_stats":[{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/nmcli.py","lines_changed":130},{"name":"tests/fixtures/centos-7.7/nmcli-connection-all.out","lines_changed":3},{"name":".../centos-7.7/nmcli-connection-show-ens33.out","lines_changed":136},{"name":"tests/fixtures/centos-7.7/nmcli-connection.out","lines_changed":3},{"name":"tests/fixtures/centos-7.7/nmcli-device-all.out","lines_changed":5},{"name":".../centos-7.7/nmcli-device-show-ens33.out","lines_changed":18},{"name":"tests/fixtures/centos-7.7/nmcli-device-show-lo.out","lines_changed":12},{"name":"tests/fixtures/centos-7.7/nmcli-device-show.out","lines_changed":42},{"name":"tests/fixtures/centos-7.7/nmcli-device.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/nmcli-general-all.out","lines_changed":3},{"name":".../centos-7.7/nmcli-general-permissions.out","lines_changed":18},{"name":"tests/fixtures/centos-7.7/nmcli.out","lines_changed":29}]},"message":"initial nmcli parser","epoch":1645730714,"epoch_utc":null},{"commit":"52617b1722ba2f089716b069f78f70a865430d61","merge":"3afaa48 961968a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 21 16:35:12 2022 +0000","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Feb 21 16:35:12 2022 +0000","message":"Merge pull request #208 from kellyjonbrazil/master\n\nsync to dev","epoch":1645490112,"epoch_utc":1645461312},{"commit":"961968a0fcaf37b64bc850c4945ba4b805a1fe54","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 15:14:22 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 14 15:14:22 2022 -0800","stats":{"files_changed":2,"insertions":26,"deletions":23,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":24},{"name":"jc/parsers/xrandr.py","lines_changed":25}]},"message":"fix schema","epoch":1644880462,"epoch_utc":null},{"commit":"f026a788e5ca1231927e71fdbb1dadb2365a6518","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 11:30:03 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 14 11:30:03 2022 -0800","stats":{"files_changed":1,"insertions":62,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":62}]},"message":"add xrandr example","epoch":1644867003,"epoch_utc":null},{"commit":"2f7c03eb35520be916c28a687031f8c6425839ba","merge":"681176e 3afaa48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 10:36:08 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Feb 14 10:36:08 2022 -0800","message":"Merge pull request #207 from kellyjonbrazil/dev\n\nDev v1.18.3","epoch":1644863768,"epoch_utc":null},{"commit":"3afaa48eee081e28262d1762c5ec23d318012822","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 10:31:41 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 14 10:31:41 2022 -0800","stats":{"files_changed":15,"insertions":15,"deletions":15,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"docs/parsers/stat_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/rsync_s.py","lines_changed":2},{"name":"jc/parsers/stat_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]},"message":"doc update","epoch":1644863501,"epoch_utc":null},{"commit":"3201452564fb0fb44ef9cc32217339370bd2521e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 10:06:09 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 14 10:06:09 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":2},{"name":"jc/parsers/xrandr.py","lines_changed":2}]},"message":"add -p to example","epoch":1644861969,"epoch_utc":null},{"commit":"7ee1e34fc71c0dbc08ba482b787d560fd5125f64","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 10:03:52 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 14 10:03:52 2022 -0800","stats":{"files_changed":2,"insertions":116,"deletions":4,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":60},{"name":"jc/parsers/xrandr.py","lines_changed":60}]},"message":"doc update","epoch":1644861832,"epoch_utc":null},{"commit":"67dbf050161201f5016899591e81ab6253ac2322","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 09:58:31 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 14 09:58:31 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":2},{"name":"jc/parsers/xrandr.py","lines_changed":2}]},"message":"add type annotations","epoch":1644861511,"epoch_utc":null},{"commit":"4ac9f2e3dad4e7bd270bf5a8e61b729838b2c89c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 09:37:37 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 14 09:37:37 2022 -0800","stats":{"files_changed":5,"insertions":10,"deletions":17,"files":["CHANGELOG","docs/parsers/rsync.md","docs/parsers/rsync_s.md","jc/parsers/rsync.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docs/parsers/rsync.md","lines_changed":6},{"name":"docs/parsers/rsync_s.md","lines_changed":6},{"name":"jc/parsers/rsync.py","lines_changed":6},{"name":"jc/parsers/rsync_s.py","lines_changed":6}]},"message":"doc update","epoch":1644860257,"epoch_utc":null},{"commit":"3f5f6e39a777ef524cb3a06a01321bb8c31d930d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 09:20:16 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 14 09:20:16 2022 -0800","stats":{"files_changed":2,"insertions":100,"deletions":98,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":99},{"name":"jc/parsers/xrandr.py","lines_changed":99}]},"message":"formatting","epoch":1644859216,"epoch_utc":null},{"commit":"4723db8e3cc4946b14c83b25d6e8c6d2309aa72e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 09:14:46 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 14 09:14:46 2022 -0800","stats":{"files_changed":8,"insertions":195,"deletions":77,"files":["README.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/xrandr.md","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/xrandr.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/rsync.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"docs/parsers/xrandr.md","lines_changed":109},{"name":"jc/parsers/rsync.py","lines_changed":2},{"name":"jc/parsers/rsync_s.py","lines_changed":2},{"name":"jc/parsers/xrandr.py","lines_changed":147},{"name":"man/jc.1","lines_changed":7}]},"message":"doc updates","epoch":1644858886,"epoch_utc":null},{"commit":"ca914ec77d1fc77e42860189e62ac2fb203d4931","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 09:14:38 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 14 09:14:38 2022 -0800","stats":{"files_changed":1,"insertions":11,"deletions":2,"files":["tests/test_xrandr.py"],"file_stats":[{"name":"tests/test_xrandr.py","lines_changed":13}]},"message":"add nodata test","epoch":1644858878,"epoch_utc":null},{"commit":"dcc7f3f357ef016b4583fc1320fd2394788f271f","merge":"184ef3a cbdc666","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Feb 13 17:45:53 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Feb 13 17:45:53 2022 -0800","message":"Merge pull request #204 from lyterk/xrandr\n\nNew parser: xrandr","epoch":1644803153,"epoch_utc":null},{"commit":"cbdc66623671da335eafe132b7af79f884856f1d","author":"Kevin Lyter","author_email":"lyterk@sent.com","date":"Wed Feb 9 21:50:07 2022 -0800","commit_by":"Kevin Lyter","commit_by_email":"lyterk@sent.com","commit_by_date":"Wed Feb 9 22:06:23 2022 -0800","stats":{"files_changed":3,"insertions":2,"deletions":30,"files":["jc/parsers/xrandr.py",".../{simple_xrandr.json => xrandr_simple.json}",".../{simple_xrandr.out => xrandr_simple.out}"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":32},{"name":".../{simple_xrandr.json => xrandr_simple.json}","lines_changed":0},{"name":".../{simple_xrandr.out => xrandr_simple.out}","lines_changed":0}]},"message":"Return empty object if no results and filenames\n\n- If no results are returned, return {} instead of {\"screens\": [],\n\"unassociated_devices\": []}\n- simple_xrandr -> xrandr_simple","epoch":1644472207,"epoch_utc":null},{"commit":"184ef3a1faeb406ce62076cff637ee86d61541fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 8 14:45:33 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 8 14:45:33 2022 -0800","stats":{"files_changed":3,"insertions":11,"deletions":3,"files":["docs/parsers/rsync.md","docs/parsers/rsync_s.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/rsync.md","lines_changed":6},{"name":"docs/parsers/rsync_s.md","lines_changed":6},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1644360333,"epoch_utc":null},{"commit":"c732f759445e335fe36586859b6fde7e27bb8901","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 8 14:43:14 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 8 14:43:14 2022 -0800","stats":{"files_changed":2,"insertions":10,"deletions":2,"files":["jc/parsers/rsync.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":6},{"name":"jc/parsers/rsync_s.py","lines_changed":6}]},"message":"doc update","epoch":1644360194,"epoch_utc":null},{"commit":"7a1ae4f5fc5328c32bf77235cfbd9f83ec995053","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 8 13:32:22 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 8 13:32:22 2022 -0800","stats":{"files_changed":3,"insertions":105,"deletions":0,"files":["tests/{test_lib.py => test_jc_lib.py}","tests/test_jc_streaming.py","tests/{test_utils.py => test_jc_utils.py}"],"file_stats":[{"name":"tests/{test_lib.py => test_jc_lib.py}","lines_changed":0},{"name":"tests/test_jc_streaming.py","lines_changed":61},{"name":"tests/{test_utils.py => test_jc_utils.py}","lines_changed":44}]},"message":"add library tests","epoch":1644355942,"epoch_utc":null},{"commit":"d04bc3757c482ec9062b2da91ded76c5dd6d106b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 8 07:33:26 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 8 07:33:26 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add xrandr","epoch":1644334406,"epoch_utc":null},{"commit":"73e8391653145412cd852aca349466018c8b9084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 16:58:06 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 7 16:58:06 2022 -0800","stats":{"files_changed":1,"insertions":8,"deletions":3,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":11}]},"message":"formatting","epoch":1644281886,"epoch_utc":null},{"commit":"f6c1463c1578db264ccb3d4c2677857ed906e965","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 16:31:43 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 7 16:31:43 2022 -0800","stats":{"files_changed":1,"insertions":44,"deletions":24,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":68}]},"message":"formatting","epoch":1644280303,"epoch_utc":null},{"commit":"d392c7f901a9d7c57617fbd03bd3f88ee0bf4132","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 15:44:54 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 7 15:44:54 2022 -0800","stats":{"files_changed":12,"insertions":20,"deletions":13,"files":["docs/parsers/date.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/ls.md","docs/parsers/rpm_qi.md","docs/parsers/stat.md","docs/parsers/systeminfo.md","docs/parsers/timedatectl.md","docs/parsers/upower.md","docs/parsers/vmstat.md","docs/parsers/who.md","docs/utils.md"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":11}]},"message":"doc update","epoch":1644277494,"epoch_utc":null},{"commit":"d0387f58205b2fd9b9860ce9656bb29ceec54340","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 15:44:46 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 7 15:44:46 2022 -0800","stats":{"files_changed":16,"insertions":34,"deletions":29,"files":["jc/parsers/date.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/systeminfo.py","jc/parsers/timedatectl.py","jc/parsers/upower.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":4},{"name":"jc/parsers/dir.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/rpm_qi.py","lines_changed":6},{"name":"jc/parsers/rsync.py","lines_changed":2},{"name":"jc/parsers/rsync_s.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"jc/parsers/stat_s.py","lines_changed":2},{"name":"jc/parsers/systeminfo.py","lines_changed":8},{"name":"jc/parsers/timedatectl.py","lines_changed":4},{"name":"jc/parsers/upower.py","lines_changed":5},{"name":"jc/parsers/vmstat.py","lines_changed":5},{"name":"jc/parsers/vmstat_s.py","lines_changed":3},{"name":"jc/parsers/who.py","lines_changed":4}]},"message":"add timestamp format hints for better performance","epoch":1644277486,"epoch_utc":null},{"commit":"76f92908a3ba9cbadcc8e972afa8b1c4a69509bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 15:43:24 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 7 15:43:24 2022 -0800","stats":{"files_changed":1,"insertions":44,"deletions":9,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":53}]},"message":"add format hints for performance optimization","epoch":1644277404,"epoch_utc":null},{"commit":"1a115da67bdce9acfefbfb71fbac37e234b1babd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 08:34:34 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 7 08:34:34 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"add lru_cache maxsize for python 3.7 support","epoch":1644251674,"epoch_utc":null},{"commit":"f0a37ccf301eee5133a83b5dd96986fef0c38e7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 08:30:11 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 7 08:30:11 2022 -0800","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":11}]},"message":"use lru_cache for significant performance boost to timestamp","epoch":1644251411,"epoch_utc":null},{"commit":"f331f53a531169520a4d8ea15d277560a49aedb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 08:06:48 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 7 08:06:48 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["CHANGELOG","jc/utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/utils.py","lines_changed":2}]},"message":"use !r formatting instead of quotes","epoch":1644250008,"epoch_utc":null},{"commit":"8611aff06b18212b7292d564beb27a2062fc3f41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 06:42:35 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 7 06:42:35 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/parsers/rsync_s.md","jc/parsers/rsync_s.py"],"file_stats":[{"name":"docs/parsers/rsync_s.md","lines_changed":8},{"name":"jc/parsers/rsync_s.py","lines_changed":8}]},"message":"add examples","epoch":1644244955,"epoch_utc":null},{"commit":"2f3f78e8d35a0ccccde0f84417400acdfe7fe0aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 06:29:17 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 7 06:29:17 2022 -0800","stats":{"files_changed":16,"insertions":194,"deletions":185,"files":["docgen.sh","docs/parsers/rsync_s.md","docs/readme.md","docs/streaming.md","docs/utils.md","jc/__init__.py","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/streaming.py","man/jc.1"],"file_stats":[{"name":"docgen.sh","lines_changed":3},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"docs/readme.md","lines_changed":2},{"name":"docs/streaming.md","lines_changed":114},{"name":"docs/utils.md","lines_changed":93},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":10},{"name":"jc/parsers/foo_s.py","lines_changed":14},{"name":"jc/parsers/iostat_s.py","lines_changed":15},{"name":"jc/parsers/ls_s.py","lines_changed":14},{"name":"jc/parsers/ping_s.py","lines_changed":4},{"name":"jc/parsers/rsync_s.py","lines_changed":25},{"name":"jc/parsers/stat_s.py","lines_changed":22},{"name":"jc/parsers/vmstat_s.py","lines_changed":16},{"name":"jc/streaming.py","lines_changed":41},{"name":"man/jc.1","lines_changed":2}]},"message":"refine streaming parsers","epoch":1644244157,"epoch_utc":null},{"commit":"d1e0ee6123dfecd48d074cb7a40e98a15b6adcb9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Feb 6 08:56:18 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Feb 6 08:56:18 2022 -0800","stats":{"files_changed":1,"insertions":6,"deletions":8,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":14}]},"message":"use new streaming functions","epoch":1644166578,"epoch_utc":null},{"commit":"45314c98083067f1f6fae9c477c99fabec223f29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Feb 6 08:55:42 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Feb 6 08:55:42 2022 -0800","stats":{"files_changed":2,"insertions":112,"deletions":102,"files":["jc/streaming.py","jc/utils.py"],"file_stats":[{"name":"jc/streaming.py","lines_changed":111},{"name":"jc/utils.py","lines_changed":103}]},"message":"move some functions to streaming","epoch":1644166542,"epoch_utc":null},{"commit":"df00945b46e27e10107f48d186eedf80b55bd40e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 4 16:03:44 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 4 16:03:44 2022 -0800","stats":{"files_changed":6,"insertions":59,"deletions":49,"files":["jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":15},{"name":"jc/parsers/iostat_s.py","lines_changed":15},{"name":"jc/parsers/ls_s.py","lines_changed":17},{"name":"jc/parsers/ping_s.py","lines_changed":19},{"name":"jc/parsers/rsync_s.py","lines_changed":21},{"name":"jc/parsers/stat_s.py","lines_changed":21}]},"message":"move try/except inside for loop","epoch":1644019424,"epoch_utc":null},{"commit":"fda0050d867bcbe4f1d7e024b08e9881d0f57735","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 4 14:39:45 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 4 14:39:45 2022 -0800","stats":{"files_changed":13,"insertions":191,"deletions":0,"files":[".../centos-7.7/rsync-i-logfile-streaming.json","tests/fixtures/centos-7.7/rsync-i-streaming.json",".../centos-7.7/rsync-i-v-logfile-streaming.json",".../centos-7.7/rsync-i-vv-logfile-streaming.json",".../rsync-i-vvv-logfile-nochange-streaming.json",".../centos-7.7/rsync-i-vvv-logfile-streaming.json",".../centos-7.7/rsync-ivvv-nochange-streaming.json",".../fixtures/centos-7.7/rsync-ivvv-streaming.json","tests/fixtures/generic/rsync-i-streaming.json",".../rsync-i-vvv-logfile-nochange-streaming.json",".../rsync-i-vvv-nochange-streaming.json",".../osx-10.14.6/rsync-i-vvv-streaming.json","tests/test_rsync_s.py"],"file_stats":[{"name":".../centos-7.7/rsync-i-logfile-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-streaming.json","lines_changed":1},{"name":".../centos-7.7/rsync-i-v-logfile-streaming.json","lines_changed":1},{"name":".../centos-7.7/rsync-i-vv-logfile-streaming.json","lines_changed":1},{"name":".../rsync-i-vvv-logfile-nochange-streaming.json","lines_changed":1},{"name":".../centos-7.7/rsync-i-vvv-logfile-streaming.json","lines_changed":1},{"name":".../centos-7.7/rsync-ivvv-nochange-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/rsync-ivvv-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/rsync-i-streaming.json","lines_changed":1},{"name":".../rsync-i-vvv-logfile-nochange-streaming.json","lines_changed":1},{"name":".../rsync-i-vvv-nochange-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/rsync-i-vvv-streaming.json","lines_changed":1},{"name":"tests/test_rsync_s.py","lines_changed":179}]},"message":"add rsync-s tests","epoch":1644014385,"epoch_utc":null},{"commit":"a76d46f9ecb1eff4d6cc7ad633c97cec0e99001a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 4 12:14:16 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 4 12:14:16 2022 -0800","stats":{"files_changed":19,"insertions":110,"deletions":109,"files":["CHANGELOG","docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","docs/utils.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/utils.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":5},{"name":"docs/parsers/iostat_s.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":5},{"name":"docs/parsers/ping_s.md","lines_changed":5},{"name":"docs/parsers/rsync_s.md","lines_changed":5},{"name":"docs/parsers/stat_s.md","lines_changed":5},{"name":"docs/parsers/vmstat_s.md","lines_changed":5},{"name":"docs/utils.md","lines_changed":15},{"name":"jc/parsers/csv_s.py","lines_changed":13},{"name":"jc/parsers/foo_s.py","lines_changed":11},{"name":"jc/parsers/iostat_s.py","lines_changed":23},{"name":"jc/parsers/ls_s.py","lines_changed":20},{"name":"jc/parsers/ping_s.py","lines_changed":22},{"name":"jc/parsers/rsync_s.py","lines_changed":11},{"name":"jc/parsers/stat_s.py","lines_changed":30},{"name":"jc/parsers/vmstat_s.py","lines_changed":11},{"name":"jc/utils.py","lines_changed":24},{"name":"man/jc.1","lines_changed":2}]},"message":"refactor ignore_exceptions","epoch":1644005656,"epoch_utc":null},{"commit":"6b069a82d0fa19c8d83b19b934bace556cb758d7","author":"Kevin Lyter","author_email":"lyterk@sent.com","date":"Thu Feb 3 18:13:58 2022 -0800","commit_by":"Kevin Lyter","commit_by_email":"lyterk@sent.com","commit_by_date":"Thu Feb 3 22:40:40 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":1}]},"message":"Add xrandr to lib.py","epoch":1643940838,"epoch_utc":null},{"commit":"6b793d052147406f388c4d5dc04f506a3456f409","author":"Kevin Lyter","author_email":"lyterk@sent.com","date":"Thu Feb 3 18:13:11 2022 -0800","commit_by":"Kevin Lyter","commit_by_email":"lyterk@sent.com","commit_by_date":"Thu Feb 3 22:40:35 2022 -0800","stats":{"files_changed":1,"insertions":6,"deletions":11,"files":["jc/parsers/xrandr.py"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":17}]},"message":"Clean up types\n\n* | operator => Union[]\n* Remove unused import Iterator\n* Remove comment","epoch":1643940791,"epoch_utc":null},{"commit":"ce9103f7cc666895dc7840d32797d8c7274cf1b8","author":"Kevin Lyter","author_email":"lyterk@sent.com","date":"Thu Feb 3 18:12:46 2022 -0800","commit_by":"Kevin Lyter","commit_by_email":"lyterk@sent.com","commit_by_date":"Thu Feb 3 18:12:46 2022 -0800","stats":{"files_changed":2,"insertions":0,"deletions":287,"files":["templates/xrandr_sample.txt","templates/xrandr_sample_verbose.txt"],"file_stats":[{"name":"templates/xrandr_sample.txt","lines_changed":38},{"name":"templates/xrandr_sample_verbose.txt","lines_changed":249}]},"message":"Delete old files in template folder","epoch":1643940766,"epoch_utc":null},{"commit":"671d6dee36a37317257e09a080849205d301bceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 3 15:47:46 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 3 15:47:46 2022 -0800","stats":{"files_changed":8,"insertions":83,"deletions":15,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","docs/utils.md"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":8},{"name":"docs/parsers/iostat_s.md","lines_changed":8},{"name":"docs/parsers/ls_s.md","lines_changed":8},{"name":"docs/parsers/ping_s.md","lines_changed":8},{"name":"docs/parsers/rsync_s.md","lines_changed":10},{"name":"docs/parsers/stat_s.md","lines_changed":8},{"name":"docs/parsers/vmstat_s.md","lines_changed":8},{"name":"docs/utils.md","lines_changed":40}]},"message":"doc update","epoch":1643932066,"epoch_utc":null},{"commit":"49929c714c2d71a310b1dd95138dbd02f8704138","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 3 15:44:18 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 3 15:44:18 2022 -0800","stats":{"files_changed":9,"insertions":139,"deletions":52,"files":["jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":14},{"name":"jc/parsers/foo_s.py","lines_changed":16},{"name":"jc/parsers/iostat_s.py","lines_changed":15},{"name":"jc/parsers/ls_s.py","lines_changed":14},{"name":"jc/parsers/ping_s.py","lines_changed":14},{"name":"jc/parsers/rsync_s.py","lines_changed":30},{"name":"jc/parsers/stat_s.py","lines_changed":21},{"name":"jc/parsers/vmstat_s.py","lines_changed":14},{"name":"jc/utils.py","lines_changed":53}]},"message":"add add_jc_meta decorator","epoch":1643931858,"epoch_utc":null},{"commit":"2986771f07de87bfee44dd3bbb4f285e249aad76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 3 09:21:20 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 3 09:21:20 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"require python v3.7 and above since v3.6 is now deprecated","epoch":1643908880,"epoch_utc":null},{"commit":"520082d963b93d2bafeff921da3899686b22cadf","author":"Kevin Lyter","author_email":"lyterk@sent.com","date":"Wed Feb 2 18:25:55 2022 -0800","commit_by":"Kevin Lyter","commit_by_email":"lyterk@sent.com","commit_by_date":"Wed Feb 2 20:33:25 2022 -0800","stats":{"files_changed":9,"insertions":968,"deletions":0,"files":["jc/parsers/xrandr.py","templates/xrandr_sample.txt","templates/xrandr_sample_verbose.txt","tests/fixtures/generic/simple_xrandr.json","tests/fixtures/generic/simple_xrandr.out","tests/fixtures/generic/xrandr.out","tests/fixtures/generic/xrandr_2.out","tests/fixtures/generic/xrandr_device.out","tests/test_xrandr.py"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":353},{"name":"templates/xrandr_sample.txt","lines_changed":38},{"name":"templates/xrandr_sample_verbose.txt","lines_changed":249},{"name":"tests/fixtures/generic/simple_xrandr.json","lines_changed":56},{"name":"tests/fixtures/generic/simple_xrandr.out","lines_changed":4},{"name":"tests/fixtures/generic/xrandr.out","lines_changed":38},{"name":"tests/fixtures/generic/xrandr_2.out","lines_changed":43},{"name":"tests/fixtures/generic/xrandr_device.out","lines_changed":15},{"name":"tests/test_xrandr.py","lines_changed":172}]},"message":"New parser: xrandr\n\nTests passing, working as intended in plugin directory","epoch":1643855155,"epoch_utc":null},{"commit":"021e296d457140c32b5256c2b0acf66efc458896","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 17:06:20 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 2 17:06:20 2022 -0800","stats":{"files_changed":1,"insertions":104,"deletions":100,"files":["jc/parsers/rsync_s.py"],"file_stats":[{"name":"jc/parsers/rsync_s.py","lines_changed":204}]},"message":"move variable inits and regexes up","epoch":1643850380,"epoch_utc":null},{"commit":"42e56fbcea6db64ea7f7045e7755af492c95aec2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 17:05:53 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 2 17:05:53 2022 -0800","stats":{"files_changed":1,"insertions":11,"deletions":12,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":23}]},"message":"move regex up","epoch":1643850353,"epoch_utc":null},{"commit":"a5b62a4055df37b84751a7cdc14eb6f1ed907cd9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 16:03:14 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 2 16:03:14 2022 -0800","stats":{"files_changed":2,"insertions":230,"deletions":18,"files":["docs/parsers/rsync_s.md","jc/parsers/rsync_s.py"],"file_stats":[{"name":"docs/parsers/rsync_s.md","lines_changed":124},{"name":"jc/parsers/rsync_s.py","lines_changed":124}]},"message":"add processing and docs","epoch":1643846594,"epoch_utc":null},{"commit":"be98c9b7f6c67e23ea101223934d67bba512e645","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 15:59:12 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 2 15:59:12 2022 -0800","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":11}]},"message":"simplify try/except by moving outside for loop","epoch":1643846352,"epoch_utc":null},{"commit":"aceeb8450796ae748a4d4abf75643f309d0a42e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 15:58:29 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 2 15:58:29 2022 -0800","stats":{"files_changed":3,"insertions":12,"deletions":1,"files":["CHANGELOG","README.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":5},{"name":"README.md","lines_changed":1},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update","epoch":1643846309,"epoch_utc":null},{"commit":"13910632173e7c815ff1161cf52fd1d17153c4a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 11:49:39 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 2 11:49:39 2022 -0800","stats":{"files_changed":2,"insertions":367,"deletions":0,"files":["jc/lib.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/rsync_s.py","lines_changed":366}]},"message":"first draft rsync streaming parser","epoch":1643831379,"epoch_utc":null},{"commit":"52157addd0d6dff3bdb34f179ec14b07c8c27ccc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 11:49:24 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 2 11:49:24 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":2}]},"message":"fix compatible list","epoch":1643831364,"epoch_utc":null},{"commit":"ec0bc6615e22fdc536623e290d88b9725cb6a0ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 19:20:19 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 19:20:19 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":2},{"name":"jc/utils.py","lines_changed":2}]},"message":"formatting","epoch":1643772019,"epoch_utc":null},{"commit":"2f80800e38256b363a4122195ec4aaffebe67d87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 19:06:41 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 19:06:41 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"simplify all_parser_info comprehension","epoch":1643771201,"epoch_utc":null},{"commit":"3959d3347c8d3e838f8c3158c4db74e2fa2eb856","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 18:33:07 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 18:33:07 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["docs/lib.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":4}]},"message":"doc update","epoch":1643769187,"epoch_utc":null},{"commit":"b57d25c69a193d3866ea86a3a34edd67049b198d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 18:30:37 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 18:30:37 2022 -0800","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":12}]},"message":"clean up return type for parser_info","epoch":1643769037,"epoch_utc":null},{"commit":"63e43a7cabb51c624c962cdcc92a1199f18c77e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 17:57:12 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 17:57:12 2022 -0800","stats":{"files_changed":7,"insertions":188,"deletions":21,"files":["README.md","docs/lib.md","docs/parsers/rsync.md","docs/parsers/universal.md","docs/parsers/zipinfo.md","docs/utils.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"docs/lib.md","lines_changed":4},{"name":"docs/parsers/rsync.md","lines_changed":163},{"name":"docs/parsers/universal.md","lines_changed":2},{"name":"docs/parsers/zipinfo.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":28},{"name":"man/jc.1","lines_changed":7}]},"message":"doc updates","epoch":1643767032,"epoch_utc":null},{"commit":"21719f9a26c25d896b0a5d49c9d7814175835e16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 17:54:22 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 17:54:22 2022 -0800","stats":{"files_changed":2,"insertions":18,"deletions":20,"files":["jc/lib.py","jc/utils.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":36}]},"message":"type annotation updates","epoch":1643766862,"epoch_utc":null},{"commit":"96ec70de4f6178b0669fd9ab47cb303dc45e55c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 17:18:55 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 17:18:55 2022 -0800","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["jc/parsers/universal.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":6},{"name":"jc/utils.py","lines_changed":4}]},"message":"remove unneeded optional","epoch":1643764735,"epoch_utc":null},{"commit":"a15a1967dc06169ceeda0fd5b4857ce1a351f3d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 17:18:39 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 17:18:39 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"fix typo","epoch":1643764719,"epoch_utc":null},{"commit":"a10d7566294fe5246e68a16e355ce56dd3557ac5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:49:31 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 16:49:31 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":8}]},"message":"fixy mypy issues","epoch":1643762971,"epoch_utc":null},{"commit":"0700dc7a64b121cf0243416e2cbb82fcef15f5a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:42:51 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 16:42:51 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":2}]},"message":"remove cygwin from compatible","epoch":1643762571,"epoch_utc":null},{"commit":"ca654b214057e19839b89e0d9a66f1110f679c1e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:42:10 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 16:42:10 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"fix parser order","epoch":1643762530,"epoch_utc":null},{"commit":"4ff3b87c1c96d720f4e7fd39e613944e322cb388","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:18:38 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 16:18:38 2022 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":1}]},"message":"remove future field from docstring","epoch":1643761118,"epoch_utc":null},{"commit":"ea244fb7a91f1d1f8ffe0ea6dc10dfe5ab836878","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:17:03 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 16:17:03 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_rsync.py"],"file_stats":[{"name":"tests/test_rsync.py","lines_changed":2}]},"message":"formatting","epoch":1643761023,"epoch_utc":null},{"commit":"8061f30e6fa58d22ed1a52e02c4d9c7f0bf132cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:16:33 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 16:16:33 2022 -0800","stats":{"files_changed":3,"insertions":236,"deletions":6,"files":["tests/fixtures/centos-7.7/rsync-ivvv-nochange.json","tests/fixtures/centos-7.7/rsync-ivvv-nochange.out","tests/test_rsync.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/rsync-ivvv-nochange.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-ivvv-nochange.out","lines_changed":224},{"name":"tests/test_rsync.py","lines_changed":17}]},"message":"add centos -i nochange test","epoch":1643760993,"epoch_utc":null},{"commit":"8f3b12e81e1b4f0d4394c33db5b3a352f4cfb391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 14:52:51 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 14:52:51 2022 -0800","stats":{"files_changed":6,"insertions":299,"deletions":0,"files":["jc/parsers/rsync.py",".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.json",".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.out","tests/fixtures/osx-10.14.6/rsync-i-vvv.json","tests/fixtures/osx-10.14.6/rsync-i-vvv.out","tests/test_rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":22},{"name":".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.out","lines_changed":88},{"name":"tests/fixtures/osx-10.14.6/rsync-i-vvv.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/rsync-i-vvv.out","lines_changed":156},{"name":"tests/test_rsync.py","lines_changed":31}]},"message":"add fixes for mac -i output","epoch":1643755971,"epoch_utc":null},{"commit":"d0694ce0db5ea2d06b5787429adf23095c4c2df0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 14:20:53 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 14:20:53 2022 -0800","stats":{"files_changed":3,"insertions":245,"deletions":6,"files":[".../osx-10.14.6/rsync-i-vvv-logfile-nochange.json",".../osx-10.14.6/rsync-i-vvv-logfile-nochange.out","tests/test_rsync.py"],"file_stats":[{"name":".../osx-10.14.6/rsync-i-vvv-logfile-nochange.json","lines_changed":1},{"name":".../osx-10.14.6/rsync-i-vvv-logfile-nochange.out","lines_changed":233},{"name":"tests/test_rsync.py","lines_changed":17}]},"message":"add nochange log test for mac","epoch":1643754053,"epoch_utc":null},{"commit":"0cd4c4bc7f3ffe13cb2f1920187e25636b88af61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 13:58:51 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 13:58:51 2022 -0800","stats":{"files_changed":2,"insertions":658,"deletions":0,"files":[".../centos-7.7/rsync-i-vvv-logfile-nochange.json",".../centos-7.7/rsync-i-vvv-logfile-nochange.out"],"file_stats":[{"name":".../centos-7.7/rsync-i-vvv-logfile-nochange.json","lines_changed":1},{"name":".../centos-7.7/rsync-i-vvv-logfile-nochange.out","lines_changed":657}]},"message":"add nochange tests","epoch":1643752731,"epoch_utc":null},{"commit":"12f90c349c903634def4225ce87924b475be46d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 13:54:25 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 13:54:25 2022 -0800","stats":{"files_changed":2,"insertions":68,"deletions":20,"files":["jc/parsers/rsync.py","tests/test_rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":68},{"name":"tests/test_rsync.py","lines_changed":20}]},"message":"update regexes for unchanged files","epoch":1643752465,"epoch_utc":null},{"commit":"26b8a1f167c4b1ec3f9fb4077254a27ed8548933","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 09:58:18 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 09:58:18 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":2}]},"message":"remove packages from binaries and packages header","epoch":1643738298,"epoch_utc":null},{"commit":"3abe382c064f605d915912f9b726d76784eba8a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 16:01:42 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 31 16:01:42 2022 -0800","stats":{"files_changed":2,"insertions":90,"deletions":3,"files":["EXAMPLES.md","jc/parsers/rsync.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":33},{"name":"jc/parsers/rsync.py","lines_changed":60}]},"message":"add examples","epoch":1643673702,"epoch_utc":null},{"commit":"1e2edc2c7b5dc104a9efe4da7df9be61b9e1be32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 15:54:05 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 31 15:54:05 2022 -0800","stats":{"files_changed":5,"insertions":53,"deletions":29,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-logfile.json","tests/fixtures/centos-7.7/rsync-i-v-logfile.json","tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":74},{"name":"tests/fixtures/centos-7.7/rsync-i-logfile.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rsync-i-v-logfile.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json","lines_changed":2}]},"message":"add timestamp","epoch":1643673245,"epoch_utc":null},{"commit":"5fe032a6741b7b6586c60eb28be74bd0e56277a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 13:44:44 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 31 13:44:44 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":2}]},"message":"fix typo","epoch":1643665484,"epoch_utc":null},{"commit":"e825c02df1cdae67c7f335fe3c675685eb1a8d02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 13:23:31 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 31 13:23:31 2022 -0800","stats":{"files_changed":11,"insertions":605,"deletions":0,"files":["tests/fixtures/centos-7.7/rsync-i-logfile.json","tests/fixtures/centos-7.7/rsync-i-v-logfile.json","tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out","tests/fixtures/centos-7.7/rsync-i.json","tests/fixtures/centos-7.7/rsync-i.out","tests/fixtures/centos-7.7/rsync-ivvv.json","tests/fixtures/generic/rsync-i.json","tests/fixtures/generic/rsync-i.out","tests/test_rsync.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/rsync-i-logfile.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-v-logfile.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out","lines_changed":434},{"name":"tests/fixtures/centos-7.7/rsync-i.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i.out","lines_changed":28},{"name":"tests/fixtures/centos-7.7/rsync-ivvv.json","lines_changed":1},{"name":"tests/fixtures/generic/rsync-i.json","lines_changed":1},{"name":"tests/fixtures/generic/rsync-i.out","lines_changed":11},{"name":"tests/test_rsync.py","lines_changed":125}]},"message":"add rsync tests","epoch":1643664211,"epoch_utc":null},{"commit":"a4a4d170b5ae8c189de982adea5bdc9bf1f26e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 13:23:22 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 31 13:23:22 2022 -0800","stats":{"files_changed":1,"insertions":10,"deletions":5,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":15}]},"message":"update docstring","epoch":1643664202,"epoch_utc":null},{"commit":"d0fcd523cb2cbb59d0f90369721749b54222961d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 11:13:23 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 31 11:13:23 2022 -0800","stats":{"files_changed":1,"insertions":19,"deletions":17,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":36}]},"message":"fix process conversions","epoch":1643656403,"epoch_utc":null},{"commit":"f72b7dc75dbd1c3f5daee3ecee28487258a04873","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 30 16:37:45 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 30 16:37:45 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":8,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":12}]},"message":"change keyname to files and remove future key","epoch":1643589465,"epoch_utc":null},{"commit":"4101dc6bf7bab7d00899426e2f6271a7480d558f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 30 16:21:03 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 30 16:21:03 2022 -0800","stats":{"files_changed":4,"insertions":1008,"deletions":19,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-v-logfile.out","tests/fixtures/centos-7.7/rsync-i-vv-logfile.out","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":60},{"name":"tests/fixtures/centos-7.7/rsync-i-v-logfile.out","lines_changed":61},{"name":"tests/fixtures/centos-7.7/rsync-i-vv-logfile.out","lines_changed":65},{"name":"tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out","lines_changed":841}]},"message":"add log-file support","epoch":1643588463,"epoch_utc":null},{"commit":"ea5011b616365b5c10c04416d43035d84e3dacba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jan 29 17:24:43 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Jan 29 17:24:43 2022 -0800","stats":{"files_changed":2,"insertions":175,"deletions":41,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-logfile.out"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":157},{"name":"tests/fixtures/centos-7.7/rsync-i-logfile.out","lines_changed":59}]},"message":"updated schema. add log-file option support","epoch":1643505883,"epoch_utc":null},{"commit":"d6de81747fd92642dbd5cb1fb097e375aa38be35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 28 15:00:05 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 28 15:00:05 2022 -0800","stats":{"files_changed":1,"insertions":11,"deletions":3,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":14}]},"message":"add int/float conversions","epoch":1643410805,"epoch_utc":null},{"commit":"38f04b1c9699246d85332b20df5b6a91ae0c48d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 28 14:45:01 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 28 14:45:01 2022 -0800","stats":{"files_changed":1,"insertions":32,"deletions":7,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":39}]},"message":"add summary","epoch":1643409901,"epoch_utc":null},{"commit":"84169e1a913d035744f71472be81fe3a7d774b97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 28 14:08:43 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 28 14:08:43 2022 -0800","stats":{"files_changed":4,"insertions":637,"deletions":2,"files":["jc/lib.py","jc/parsers/rsync.py","setup.py","tests/fixtures/centos-7.7/rsync-ivvv.out"],"file_stats":[{"name":"jc/lib.py","lines_changed":3},{"name":"jc/parsers/rsync.py","lines_changed":212},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rsync-ivvv.out","lines_changed":422}]},"message":"add rsync parser","epoch":1643407723,"epoch_utc":null},{"commit":"1f96586a5e883709f436526de6dcb21ff44bf97b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 28 14:08:21 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 28 14:08:21 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/foo.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":2}]},"message":"reorder imports","epoch":1643407701,"epoch_utc":null},{"commit":"681176e4c958157ef1f2151b3e57963a6ba48e09","merge":"b389665 8bb2663","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 16:53:37 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Jan 27 16:53:37 2022 -0800","message":"Merge pull request #203 from kellyjonbrazil/dev\n\nDev v1.18.2","epoch":1643331217,"epoch_utc":null},{"commit":"8bb266352207f95040b72750e5b3ae3b8ceb2b98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 16:49:46 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 27 16:49:46 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"date update","epoch":1643330986,"epoch_utc":null},{"commit":"663abf313931b49fad64b425ece6a5a257dc7938","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 16:14:14 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 27 16:14:14 2022 -0800","stats":{"files_changed":4,"insertions":3,"deletions":4,"files":["MANIFEST.in","mangen.py","runtests.sh","updatedocs.sh"],"file_stats":[{"name":"MANIFEST.in","lines_changed":1},{"name":"mangen.py","lines_changed":3},{"name":"runtests.sh","lines_changed":1},{"name":"updatedocs.sh","lines_changed":2}]},"message":"clean up scripts","epoch":1643328854,"epoch_utc":null},{"commit":"f7ac41db95c16fd21d83fbce678c5dec28ab40f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 13:27:50 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 27 13:27:50 2022 -0800","stats":{"files_changed":2,"insertions":1,"deletions":13,"files":["README.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"man/jc.1","lines_changed":12}]},"message":"final doc update","epoch":1643318870,"epoch_utc":null},{"commit":"5502cda9e591b531d6b452b02d8ec322c3287800","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 13:03:02 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 27 13:03:02 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["tests/test_lib.py"],"file_stats":[{"name":"tests/test_lib.py","lines_changed":3}]},"message":"add additional test for dict inside list for all_parser_info()","epoch":1643317382,"epoch_utc":null},{"commit":"a2b165565f54d91489bf38577a0785e78a4523d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 12:54:44 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 27 12:54:44 2022 -0800","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["tests/test_lib.py"],"file_stats":[{"name":"tests/test_lib.py","lines_changed":21}]},"message":"add lib tests for new functions","epoch":1643316884,"epoch_utc":null},{"commit":"b426369815984bd2aae8bcb14e306ba73b8cd4ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 07:45:20 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 27 07:45:20 2022 -0800","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":12}]},"message":"use all_parser_info() from lib in about function","epoch":1643298320,"epoch_utc":null},{"commit":"ac0840cc0afb4aeee2c99076710c987e09cfa5f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 20:51:18 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 20:51:18 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"fix typo","epoch":1643259078,"epoch_utc":null},{"commit":"ee98ab0a4a7671ae34ee79f7b0b97c061a8c2944","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 20:42:20 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 20:42:20 2022 -0800","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/lib.md","docs/utils.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":6},{"name":"docs/utils.md","lines_changed":4}]},"message":"doc update","epoch":1643258540,"epoch_utc":null},{"commit":"2adec2c0035b84ca0242f2494b6c2651b9898ca5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 20:40:03 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 20:40:03 2022 -0800","stats":{"files_changed":4,"insertions":21,"deletions":19,"files":["jc/lib.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/utils.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":18},{"name":"jc/parsers/foo.py","lines_changed":8},{"name":"jc/parsers/foo_s.py","lines_changed":10},{"name":"jc/utils.py","lines_changed":4}]},"message":"update type hints with mypy help","epoch":1643258403,"epoch_utc":null},{"commit":"f19c9c71bf4f592f55a5176458acd478b462fdbe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 18:39:14 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 18:39:14 2022 -0800","stats":{"files_changed":2,"insertions":15,"deletions":4,"files":["jc/parsers/foo.py","jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":9},{"name":"jc/parsers/foo_s.py","lines_changed":10}]},"message":"add type hints","epoch":1643251154,"epoch_utc":null},{"commit":"e93adf1884c0006a64123513070a5fd96a940da2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 18:09:30 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 18:09:30 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":5},{"name":"jc/__init__.py","lines_changed":5}]},"message":"fix doc","epoch":1643249370,"epoch_utc":null},{"commit":"254c4fc507842ca72064c0196418a7b939d54d06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 18:05:00 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 18:05:00 2022 -0800","stats":{"files_changed":2,"insertions":20,"deletions":6,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":13},{"name":"jc/__init__.py","lines_changed":13}]},"message":"add new functions","epoch":1643249100,"epoch_utc":null},{"commit":"74d5f60d14fc42cfd5768c7ffd6efc890a65d442","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 17:17:40 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 17:17:40 2022 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"update console interview description","epoch":1643246260,"epoch_utc":null},{"commit":"db7dc0634bc17b4daadc8bc21bba5975c093efe5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 17:12:35 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 17:12:35 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":2},{"name":"jc/lib.py","lines_changed":2}]},"message":"make **kwargs optional","epoch":1643245955,"epoch_utc":null},{"commit":"e156b0db453e99fb0f74b618fd343218f978ff68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 17:08:03 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 17:08:03 2022 -0800","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":4},{"name":"jc/parsers/universal.py","lines_changed":5}]},"message":"add type hints","epoch":1643245683,"epoch_utc":null},{"commit":"50adc05fbd6a0dcd9e4fb38aa41917bb57332f36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 16:58:48 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 16:58:48 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":6},{"name":"jc/utils.py","lines_changed":6}]},"message":"formatting","epoch":1643245128,"epoch_utc":null},{"commit":"446cac7c217103eb66cfdee97e3a208b7144b644","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 16:55:39 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 16:55:39 2022 -0800","stats":{"files_changed":2,"insertions":15,"deletions":11,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":11},{"name":"jc/utils.py","lines_changed":15}]},"message":"doc update","epoch":1643244939,"epoch_utc":null},{"commit":"28ffe3076bb5f23aeaf2624344856dbd02b4c0e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 16:34:23 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 16:34:23 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":9,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":8},{"name":"jc/lib.py","lines_changed":9}]},"message":"formatting","epoch":1643243663,"epoch_utc":null},{"commit":"d4d5e206cae14acd25445952f820810818b3fdce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 15:54:36 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 15:54:36 2022 -0800","stats":{"files_changed":3,"insertions":40,"deletions":28,"files":["docs/lib.md","docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":15},{"name":"docs/utils.md","lines_changed":26},{"name":"jc/utils.py","lines_changed":27}]},"message":"type hints update","epoch":1643241276,"epoch_utc":null},{"commit":"42fbe40a4ae02b9d09acdbf9b22573844959d2ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 15:54:18 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 15:54:18 2022 -0800","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":11}]},"message":"simplify type hints","epoch":1643241258,"epoch_utc":null},{"commit":"27e4a120e21dcbb3eadc6c4cf224ddb33859328d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 15:31:18 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 15:31:18 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":2},{"name":"jc/lib.py","lines_changed":2}]},"message":"remove trailing comma","epoch":1643239878,"epoch_utc":null},{"commit":"b5d5b7c73a96d4335b178ccfac60af90913e6f0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 15:01:42 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 15:01:42 2022 -0800","stats":{"files_changed":3,"insertions":29,"deletions":148,"files":["docgen.sh","docs/parsers/ifconfig.md","docs/parsers/traceroute.md"],"file_stats":[{"name":"docgen.sh","lines_changed":35},{"name":"docs/parsers/ifconfig.md","lines_changed":94},{"name":"docs/parsers/traceroute.md","lines_changed":48}]},"message":"remove private classes","epoch":1643238102,"epoch_utc":null},{"commit":"e7471556ba5fb0586ac5b0d7404cabd98a58db2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 14:39:11 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 14:39:11 2022 -0800","stats":{"files_changed":1,"insertions":0,"deletions":5,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":5}]},"message":"remove sed lines","epoch":1643236751,"epoch_utc":null},{"commit":"640a21341bb1c562cb2124155b511dfc74277fc0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 14:38:57 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 14:38:57 2022 -0800","stats":{"files_changed":2,"insertions":47,"deletions":42,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":20},{"name":"jc/utils.py","lines_changed":69}]},"message":"fix indentation","epoch":1643236737,"epoch_utc":null},{"commit":"f5befad3e41ba2864abc795a2fdf63e0f1d37c21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 14:21:06 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 14:21:06 2022 -0800","stats":{"files_changed":2,"insertions":33,"deletions":25,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":21},{"name":"jc/utils.py","lines_changed":37}]},"message":"move docstring under __init__","epoch":1643235666,"epoch_utc":null},{"commit":"f8223023c31093c1a34130b4e4cfc23b1d80a30c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 14:16:04 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 14:16:04 2022 -0800","stats":{"files_changed":4,"insertions":24,"deletions":10,"files":["docgen.sh","docs/parsers/ifconfig.md","docs/parsers/traceroute.md","docs/utils.md"],"file_stats":[{"name":"docgen.sh","lines_changed":28},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":2}]},"message":"change header depth","epoch":1643235364,"epoch_utc":null},{"commit":"7028e87f9b411c0cfb92eee7fc0667cdcb9a54ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 13:03:51 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 13:03:51 2022 -0800","stats":{"files_changed":87,"insertions":22,"deletions":445,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md"],"file_stats":[{"name":"docgen.sh","lines_changed":26},{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/csv_s.md","lines_changed":5},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":14},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iostat.md","lines_changed":5},{"name":"docs/parsers/iostat_s.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jar_manifest.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/ping_s.md","lines_changed":5},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/sfdisk.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/stat_s.md","lines_changed":5},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/systeminfo.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":8},{"name":"docs/parsers/ufw.md","lines_changed":5},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/vmstat.md","lines_changed":5},{"name":"docs/parsers/vmstat_s.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5},{"name":"docs/parsers/zipinfo.md","lines_changed":5},{"name":"docs/readme.md","lines_changed":4}]},"message":"remove TOC for parsers","epoch":1643231031,"epoch_utc":null},{"commit":"590728f9c1ccfdc078e600d1f35ad4ba51f70d36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 11:50:25 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 11:50:25 2022 -0800","stats":{"files_changed":91,"insertions":506,"deletions":17,"files":["docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/utils.md","jc/lib.py"],"file_stats":[{"name":"docgen.sh","lines_changed":28},{"name":"docs/lib.md","lines_changed":13},{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/csv_s.md","lines_changed":5},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":14},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iostat.md","lines_changed":5},{"name":"docs/parsers/iostat_s.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jar_manifest.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/ping_s.md","lines_changed":5},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/sfdisk.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/stat_s.md","lines_changed":5},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/systeminfo.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":8},{"name":"docs/parsers/ufw.md","lines_changed":5},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/universal.md","lines_changed":6},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/vmstat.md","lines_changed":5},{"name":"docs/parsers/vmstat_s.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5},{"name":"docs/parsers/zipinfo.md","lines_changed":5},{"name":"docs/readme.md","lines_changed":4},{"name":"docs/utils.md","lines_changed":17},{"name":"jc/lib.py","lines_changed":18}]},"message":"try new pydoc-markdown formatting options","epoch":1643226625,"epoch_utc":null},{"commit":"7cc147fe2d7b278bcab905bc4c3b70b5265e1510","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 19:28:37 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 19:28:37 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":44,"files":["docgen.sh","docgen.sh.old"],"file_stats":[{"name":"docgen.sh","lines_changed":4},{"name":"docgen.sh.old","lines_changed":44}]},"message":"increase heading size","epoch":1643167717,"epoch_utc":null},{"commit":"3cfb3965bb25024a7b03870b71f02194e278919b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 19:28:04 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 19:28:04 2022 -0800","stats":{"files_changed":3,"insertions":19,"deletions":19,"files":["docs/lib.md","docs/parsers/universal.md","docs/utils.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":10},{"name":"docs/parsers/universal.md","lines_changed":4},{"name":"docs/utils.md","lines_changed":24}]},"message":"formatting","epoch":1643167684,"epoch_utc":null},{"commit":"155d4213225fe4fcf4a059fb63c1ab9fc493177e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 19:18:54 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 19:18:54 2022 -0800","stats":{"files_changed":86,"insertions":182,"deletions":181,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"],"file_stats":[{"name":"docgen.sh","lines_changed":3},{"name":"docs/parsers/acpi.md","lines_changed":4},{"name":"docs/parsers/airport.md","lines_changed":4},{"name":"docs/parsers/airport_s.md","lines_changed":4},{"name":"docs/parsers/arp.md","lines_changed":4},{"name":"docs/parsers/blkid.md","lines_changed":4},{"name":"docs/parsers/cksum.md","lines_changed":4},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"docs/parsers/crontab_u.md","lines_changed":4},{"name":"docs/parsers/csv.md","lines_changed":4},{"name":"docs/parsers/csv_s.md","lines_changed":4},{"name":"docs/parsers/date.md","lines_changed":4},{"name":"docs/parsers/df.md","lines_changed":4},{"name":"docs/parsers/dig.md","lines_changed":4},{"name":"docs/parsers/dir.md","lines_changed":4},{"name":"docs/parsers/dmidecode.md","lines_changed":4},{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"docs/parsers/du.md","lines_changed":4},{"name":"docs/parsers/env.md","lines_changed":4},{"name":"docs/parsers/file.md","lines_changed":4},{"name":"docs/parsers/finger.md","lines_changed":4},{"name":"docs/parsers/free.md","lines_changed":4},{"name":"docs/parsers/fstab.md","lines_changed":4},{"name":"docs/parsers/group.md","lines_changed":4},{"name":"docs/parsers/gshadow.md","lines_changed":4},{"name":"docs/parsers/hash.md","lines_changed":4},{"name":"docs/parsers/hashsum.md","lines_changed":4},{"name":"docs/parsers/hciconfig.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":4},{"name":"docs/parsers/hosts.md","lines_changed":4},{"name":"docs/parsers/id.md","lines_changed":4},{"name":"docs/parsers/ifconfig.md","lines_changed":20},{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"docs/parsers/iostat.md","lines_changed":4},{"name":"docs/parsers/iostat_s.md","lines_changed":4},{"name":"docs/parsers/iptables.md","lines_changed":4},{"name":"docs/parsers/iw_scan.md","lines_changed":4},{"name":"docs/parsers/jar_manifest.md","lines_changed":4},{"name":"docs/parsers/jobs.md","lines_changed":4},{"name":"docs/parsers/kv.md","lines_changed":4},{"name":"docs/parsers/last.md","lines_changed":4},{"name":"docs/parsers/ls.md","lines_changed":4},{"name":"docs/parsers/ls_s.md","lines_changed":4},{"name":"docs/parsers/lsblk.md","lines_changed":4},{"name":"docs/parsers/lsmod.md","lines_changed":4},{"name":"docs/parsers/lsof.md","lines_changed":4},{"name":"docs/parsers/lsusb.md","lines_changed":4},{"name":"docs/parsers/mount.md","lines_changed":4},{"name":"docs/parsers/netstat.md","lines_changed":4},{"name":"docs/parsers/ntpq.md","lines_changed":4},{"name":"docs/parsers/passwd.md","lines_changed":4},{"name":"docs/parsers/ping.md","lines_changed":4},{"name":"docs/parsers/ping_s.md","lines_changed":4},{"name":"docs/parsers/pip_list.md","lines_changed":4},{"name":"docs/parsers/pip_show.md","lines_changed":4},{"name":"docs/parsers/ps.md","lines_changed":4},{"name":"docs/parsers/route.md","lines_changed":4},{"name":"docs/parsers/rpm_qi.md","lines_changed":4},{"name":"docs/parsers/sfdisk.md","lines_changed":4},{"name":"docs/parsers/shadow.md","lines_changed":4},{"name":"docs/parsers/ss.md","lines_changed":4},{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"docs/parsers/stat_s.md","lines_changed":4},{"name":"docs/parsers/sysctl.md","lines_changed":4},{"name":"docs/parsers/systemctl.md","lines_changed":4},{"name":"docs/parsers/systemctl_lj.md","lines_changed":4},{"name":"docs/parsers/systemctl_ls.md","lines_changed":4},{"name":"docs/parsers/systemctl_luf.md","lines_changed":4},{"name":"docs/parsers/systeminfo.md","lines_changed":4},{"name":"docs/parsers/time.md","lines_changed":4},{"name":"docs/parsers/timedatectl.md","lines_changed":4},{"name":"docs/parsers/tracepath.md","lines_changed":4},{"name":"docs/parsers/traceroute.md","lines_changed":8},{"name":"docs/parsers/ufw.md","lines_changed":4},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":4},{"name":"docs/parsers/uname.md","lines_changed":4},{"name":"docs/parsers/upower.md","lines_changed":4},{"name":"docs/parsers/uptime.md","lines_changed":4},{"name":"docs/parsers/vmstat.md","lines_changed":4},{"name":"docs/parsers/vmstat_s.md","lines_changed":4},{"name":"docs/parsers/w.md","lines_changed":4},{"name":"docs/parsers/wc.md","lines_changed":4},{"name":"docs/parsers/who.md","lines_changed":4},{"name":"docs/parsers/xml.md","lines_changed":4},{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"docs/parsers/zipinfo.md","lines_changed":4}]},"message":"formatting","epoch":1643167134,"epoch_utc":null},{"commit":"d3e10bb87bdb32396bce95f74e62a023f4efaf99","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:59:40 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 18:59:40 2022 -0800","stats":{"files_changed":1,"insertions":291,"deletions":0,"files":["docs/parsers/lsusb.md"],"file_stats":[{"name":"docs/parsers/lsusb.md","lines_changed":291}]},"message":"add lsusb docs","epoch":1643165980,"epoch_utc":null},{"commit":"fd5433ee6220357e59633c78b689aa432d056b43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:58:09 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 18:58:09 2022 -0800","stats":{"files_changed":3,"insertions":6,"deletions":293,"files":["docs/lib.md","docs/parsers/lsusb.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":4},{"name":"docs/parsers/lsusb.md","lines_changed":291},{"name":"jc/lib.py","lines_changed":4}]},"message":"parse docstring formatting","epoch":1643165889,"epoch_utc":null},{"commit":"4568f2d06e8fc1c465c86c318d925586481af062","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:51:56 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 18:51:56 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":4},{"name":"jc/lib.py","lines_changed":4}]},"message":"formatting for parse docstring","epoch":1643165516,"epoch_utc":null},{"commit":"c36e513d1bcc07cd8f01ff59199950e5396da51b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:42:55 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 18:42:55 2022 -0800","stats":{"files_changed":86,"insertions":88,"deletions":91,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"],"file_stats":[{"name":"docgen.sh","lines_changed":9},{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/dpkg_l.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/finger.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/gshadow.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iostat.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/jar_manifest.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/kv.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/stat_s.md","lines_changed":2},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"docs/parsers/zipinfo.md","lines_changed":2}]},"message":"formatting","epoch":1643164975,"epoch_utc":null},{"commit":"8e089baf3fe30fed80e1c5cdde7c3046bb70ca5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:38:26 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 18:38:26 2022 -0800","stats":{"files_changed":86,"insertions":8,"deletions":855,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"],"file_stats":[{"name":"docgen.sh","lines_changed":13},{"name":"docs/parsers/acpi.md","lines_changed":10},{"name":"docs/parsers/airport.md","lines_changed":10},{"name":"docs/parsers/airport_s.md","lines_changed":10},{"name":"docs/parsers/arp.md","lines_changed":10},{"name":"docs/parsers/blkid.md","lines_changed":10},{"name":"docs/parsers/cksum.md","lines_changed":10},{"name":"docs/parsers/crontab.md","lines_changed":10},{"name":"docs/parsers/crontab_u.md","lines_changed":10},{"name":"docs/parsers/csv.md","lines_changed":10},{"name":"docs/parsers/csv_s.md","lines_changed":10},{"name":"docs/parsers/date.md","lines_changed":10},{"name":"docs/parsers/df.md","lines_changed":10},{"name":"docs/parsers/dig.md","lines_changed":10},{"name":"docs/parsers/dir.md","lines_changed":10},{"name":"docs/parsers/dmidecode.md","lines_changed":10},{"name":"docs/parsers/dpkg_l.md","lines_changed":10},{"name":"docs/parsers/du.md","lines_changed":10},{"name":"docs/parsers/env.md","lines_changed":10},{"name":"docs/parsers/file.md","lines_changed":10},{"name":"docs/parsers/finger.md","lines_changed":10},{"name":"docs/parsers/free.md","lines_changed":10},{"name":"docs/parsers/fstab.md","lines_changed":10},{"name":"docs/parsers/group.md","lines_changed":10},{"name":"docs/parsers/gshadow.md","lines_changed":10},{"name":"docs/parsers/hash.md","lines_changed":10},{"name":"docs/parsers/hashsum.md","lines_changed":10},{"name":"docs/parsers/hciconfig.md","lines_changed":10},{"name":"docs/parsers/history.md","lines_changed":10},{"name":"docs/parsers/hosts.md","lines_changed":10},{"name":"docs/parsers/id.md","lines_changed":10},{"name":"docs/parsers/ifconfig.md","lines_changed":10},{"name":"docs/parsers/ini.md","lines_changed":10},{"name":"docs/parsers/iostat.md","lines_changed":10},{"name":"docs/parsers/iostat_s.md","lines_changed":10},{"name":"docs/parsers/iptables.md","lines_changed":10},{"name":"docs/parsers/iw_scan.md","lines_changed":10},{"name":"docs/parsers/jar_manifest.md","lines_changed":10},{"name":"docs/parsers/jobs.md","lines_changed":10},{"name":"docs/parsers/kv.md","lines_changed":10},{"name":"docs/parsers/last.md","lines_changed":10},{"name":"docs/parsers/ls.md","lines_changed":10},{"name":"docs/parsers/ls_s.md","lines_changed":10},{"name":"docs/parsers/lsblk.md","lines_changed":10},{"name":"docs/parsers/lsmod.md","lines_changed":10},{"name":"docs/parsers/lsof.md","lines_changed":10},{"name":"docs/parsers/lsusb.md","lines_changed":10},{"name":"docs/parsers/mount.md","lines_changed":10},{"name":"docs/parsers/netstat.md","lines_changed":10},{"name":"docs/parsers/ntpq.md","lines_changed":10},{"name":"docs/parsers/passwd.md","lines_changed":10},{"name":"docs/parsers/ping.md","lines_changed":10},{"name":"docs/parsers/ping_s.md","lines_changed":10},{"name":"docs/parsers/pip_list.md","lines_changed":10},{"name":"docs/parsers/pip_show.md","lines_changed":10},{"name":"docs/parsers/ps.md","lines_changed":10},{"name":"docs/parsers/route.md","lines_changed":10},{"name":"docs/parsers/rpm_qi.md","lines_changed":10},{"name":"docs/parsers/sfdisk.md","lines_changed":10},{"name":"docs/parsers/shadow.md","lines_changed":10},{"name":"docs/parsers/ss.md","lines_changed":10},{"name":"docs/parsers/stat.md","lines_changed":10},{"name":"docs/parsers/stat_s.md","lines_changed":10},{"name":"docs/parsers/sysctl.md","lines_changed":10},{"name":"docs/parsers/systemctl.md","lines_changed":10},{"name":"docs/parsers/systemctl_lj.md","lines_changed":10},{"name":"docs/parsers/systemctl_ls.md","lines_changed":10},{"name":"docs/parsers/systemctl_luf.md","lines_changed":10},{"name":"docs/parsers/systeminfo.md","lines_changed":10},{"name":"docs/parsers/time.md","lines_changed":10},{"name":"docs/parsers/timedatectl.md","lines_changed":10},{"name":"docs/parsers/tracepath.md","lines_changed":10},{"name":"docs/parsers/traceroute.md","lines_changed":10},{"name":"docs/parsers/ufw.md","lines_changed":10},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":10},{"name":"docs/parsers/uname.md","lines_changed":10},{"name":"docs/parsers/upower.md","lines_changed":10},{"name":"docs/parsers/uptime.md","lines_changed":10},{"name":"docs/parsers/vmstat.md","lines_changed":10},{"name":"docs/parsers/vmstat_s.md","lines_changed":10},{"name":"docs/parsers/w.md","lines_changed":10},{"name":"docs/parsers/wc.md","lines_changed":10},{"name":"docs/parsers/who.md","lines_changed":10},{"name":"docs/parsers/xml.md","lines_changed":10},{"name":"docs/parsers/yaml.md","lines_changed":10},{"name":"docs/parsers/zipinfo.md","lines_changed":10}]},"message":"remove info class from docs","epoch":1643164706,"epoch_utc":null},{"commit":"386f6c317e104e797c2b55e3d21c8b064a83ac78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:03:34 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 18:03:34 2022 -0800","stats":{"files_changed":89,"insertions":9552,"deletions":9939,"files":["docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/utils.md"],"file_stats":[{"name":"docgen.sh","lines_changed":10},{"name":"docs/lib.md","lines_changed":105},{"name":"docs/parsers/acpi.md","lines_changed":440},{"name":"docs/parsers/airport.md","lines_changed":146},{"name":"docs/parsers/airport_s.md","lines_changed":202},{"name":"docs/parsers/arp.md","lines_changed":220},{"name":"docs/parsers/blkid.md","lines_changed":230},{"name":"docs/parsers/cksum.md","lines_changed":90},{"name":"docs/parsers/crontab.md","lines_changed":330},{"name":"docs/parsers/crontab_u.md","lines_changed":326},{"name":"docs/parsers/csv.md","lines_changed":140},{"name":"docs/parsers/csv_s.md","lines_changed":114},{"name":"docs/parsers/date.md","lines_changed":132},{"name":"docs/parsers/df.md","lines_changed":184},{"name":"docs/parsers/dig.md","lines_changed":614},{"name":"docs/parsers/dir.md","lines_changed":210},{"name":"docs/parsers/dmidecode.md","lines_changed":240},{"name":"docs/parsers/dpkg_l.md","lines_changed":244},{"name":"docs/parsers/du.md","lines_changed":164},{"name":"docs/parsers/env.md","lines_changed":126},{"name":"docs/parsers/file.md","lines_changed":114},{"name":"docs/parsers/finger.md","lines_changed":166},{"name":"docs/parsers/free.md","lines_changed":134},{"name":"docs/parsers/fstab.md","lines_changed":164},{"name":"docs/parsers/group.md","lines_changed":212},{"name":"docs/parsers/gshadow.md","lines_changed":148},{"name":"docs/parsers/hash.md","lines_changed":68},{"name":"docs/parsers/hashsum.md","lines_changed":106},{"name":"docs/parsers/hciconfig.md","lines_changed":620},{"name":"docs/parsers/history.md","lines_changed":106},{"name":"docs/parsers/hosts.md","lines_changed":142},{"name":"docs/parsers/id.md","lines_changed":200},{"name":"docs/parsers/ifconfig.md","lines_changed":388},{"name":"docs/parsers/ini.md","lines_changed":110},{"name":"docs/parsers/iostat.md","lines_changed":304},{"name":"docs/parsers/iostat_s.md","lines_changed":198},{"name":"docs/parsers/iptables.md","lines_changed":312},{"name":"docs/parsers/iw_scan.md","lines_changed":226},{"name":"docs/parsers/jar_manifest.md","lines_changed":148},{"name":"docs/parsers/jobs.md","lines_changed":170},{"name":"docs/parsers/kv.md","lines_changed":86},{"name":"docs/parsers/last.md","lines_changed":186},{"name":"docs/parsers/ls.md","lines_changed":190},{"name":"docs/parsers/ls_s.md","lines_changed":130},{"name":"docs/parsers/lsblk.md","lines_changed":534},{"name":"docs/parsers/lsmod.md","lines_changed":240},{"name":"docs/parsers/lsof.md","lines_changed":228},{"name":"docs/parsers/lsusb.md","lines_changed":502},{"name":"docs/parsers/mount.md","lines_changed":140},{"name":"docs/parsers/netstat.md","lines_changed":688},{"name":"docs/parsers/ntpq.md","lines_changed":402},{"name":"docs/parsers/passwd.md","lines_changed":182},{"name":"docs/parsers/ping.md","lines_changed":308},{"name":"docs/parsers/ping_s.md","lines_changed":160},{"name":"docs/parsers/pip_list.md","lines_changed":84},{"name":"docs/parsers/pip_show.md","lines_changed":120},{"name":"docs/parsers/ps.md","lines_changed":394},{"name":"docs/parsers/route.md","lines_changed":206},{"name":"docs/parsers/rpm_qi.md","lines_changed":296},{"name":"docs/parsers/sfdisk.md","lines_changed":376},{"name":"docs/parsers/shadow.md","lines_changed":196},{"name":"docs/parsers/ss.md","lines_changed":538},{"name":"docs/parsers/stat.md","lines_changed":318},{"name":"docs/parsers/stat_s.md","lines_changed":152},{"name":"docs/parsers/sysctl.md","lines_changed":100},{"name":"docs/parsers/systemctl.md","lines_changed":106},{"name":"docs/parsers/systemctl_lj.md","lines_changed":140},{"name":"docs/parsers/systemctl_ls.md","lines_changed":90},{"name":"docs/parsers/systemctl_luf.md","lines_changed":82},{"name":"docs/parsers/systeminfo.md","lines_changed":396},{"name":"docs/parsers/time.md","lines_changed":242},{"name":"docs/parsers/timedatectl.md","lines_changed":112},{"name":"docs/parsers/tracepath.md","lines_changed":248},{"name":"docs/parsers/traceroute.md","lines_changed":220},{"name":"docs/parsers/ufw.md","lines_changed":390},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":250},{"name":"docs/parsers/uname.md","lines_changed":80},{"name":"docs/parsers/universal.md","lines_changed":72},{"name":"docs/parsers/upower.md","lines_changed":374},{"name":"docs/parsers/uptime.md","lines_changed":120},{"name":"docs/parsers/vmstat.md","lines_changed":226},{"name":"docs/parsers/vmstat_s.md","lines_changed":172},{"name":"docs/parsers/w.md","lines_changed":196},{"name":"docs/parsers/wc.md","lines_changed":98},{"name":"docs/parsers/who.md","lines_changed":250},{"name":"docs/parsers/xml.md","lines_changed":134},{"name":"docs/parsers/yaml.md","lines_changed":162},{"name":"docs/parsers/zipinfo.md","lines_changed":138},{"name":"docs/utils.md","lines_changed":134}]},"message":"update markdown processor settings","epoch":1643162614,"epoch_utc":null},{"commit":"75cd84ce8a86b3357c6cf5fe4fbc62d0f298a29a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 17:07:47 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 17:07:47 2022 -0800","stats":{"files_changed":94,"insertions":11423,"deletions":10081,"files":["README.md","docgen.sh","docgen.sh.old","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/utils.md","jc/cli.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docgen.sh","lines_changed":12},{"name":"docgen.sh.old","lines_changed":44},{"name":"docs/lib.md","lines_changed":151},{"name":"docs/parsers/acpi.md","lines_changed":454},{"name":"docs/parsers/airport.md","lines_changed":166},{"name":"docs/parsers/airport_s.md","lines_changed":224},{"name":"docs/parsers/arp.md","lines_changed":240},{"name":"docs/parsers/blkid.md","lines_changed":250},{"name":"docs/parsers/cksum.md","lines_changed":110},{"name":"docs/parsers/crontab.md","lines_changed":350},{"name":"docs/parsers/crontab_u.md","lines_changed":348},{"name":"docs/parsers/csv.md","lines_changed":160},{"name":"docs/parsers/csv_s.md","lines_changed":120},{"name":"docs/parsers/date.md","lines_changed":152},{"name":"docs/parsers/df.md","lines_changed":204},{"name":"docs/parsers/dig.md","lines_changed":634},{"name":"docs/parsers/dir.md","lines_changed":230},{"name":"docs/parsers/dmidecode.md","lines_changed":260},{"name":"docs/parsers/dpkg_l.md","lines_changed":266},{"name":"docs/parsers/du.md","lines_changed":184},{"name":"docs/parsers/env.md","lines_changed":146},{"name":"docs/parsers/file.md","lines_changed":134},{"name":"docs/parsers/finger.md","lines_changed":186},{"name":"docs/parsers/free.md","lines_changed":154},{"name":"docs/parsers/fstab.md","lines_changed":184},{"name":"docs/parsers/group.md","lines_changed":232},{"name":"docs/parsers/gshadow.md","lines_changed":168},{"name":"docs/parsers/hash.md","lines_changed":88},{"name":"docs/parsers/hashsum.md","lines_changed":126},{"name":"docs/parsers/hciconfig.md","lines_changed":634},{"name":"docs/parsers/history.md","lines_changed":126},{"name":"docs/parsers/hosts.md","lines_changed":162},{"name":"docs/parsers/id.md","lines_changed":220},{"name":"docs/parsers/ifconfig.md","lines_changed":472},{"name":"docs/parsers/ini.md","lines_changed":130},{"name":"docs/parsers/iostat.md","lines_changed":324},{"name":"docs/parsers/iostat_s.md","lines_changed":220},{"name":"docs/parsers/iptables.md","lines_changed":332},{"name":"docs/parsers/iw_scan.md","lines_changed":248},{"name":"docs/parsers/jar_manifest.md","lines_changed":170},{"name":"docs/parsers/jobs.md","lines_changed":190},{"name":"docs/parsers/kv.md","lines_changed":106},{"name":"docs/parsers/last.md","lines_changed":207},{"name":"docs/parsers/ls.md","lines_changed":210},{"name":"docs/parsers/ls_s.md","lines_changed":152},{"name":"docs/parsers/lsblk.md","lines_changed":548},{"name":"docs/parsers/lsmod.md","lines_changed":260},{"name":"docs/parsers/lsof.md","lines_changed":248},{"name":"docs/parsers/lsusb.md","lines_changed":518},{"name":"docs/parsers/mount.md","lines_changed":160},{"name":"docs/parsers/netstat.md","lines_changed":702},{"name":"docs/parsers/ntpq.md","lines_changed":422},{"name":"docs/parsers/passwd.md","lines_changed":202},{"name":"docs/parsers/ping.md","lines_changed":328},{"name":"docs/parsers/ping_s.md","lines_changed":182},{"name":"docs/parsers/pip_list.md","lines_changed":106},{"name":"docs/parsers/pip_show.md","lines_changed":142},{"name":"docs/parsers/ps.md","lines_changed":414},{"name":"docs/parsers/route.md","lines_changed":226},{"name":"docs/parsers/rpm_qi.md","lines_changed":318},{"name":"docs/parsers/sfdisk.md","lines_changed":396},{"name":"docs/parsers/shadow.md","lines_changed":216},{"name":"docs/parsers/ss.md","lines_changed":552},{"name":"docs/parsers/stat.md","lines_changed":338},{"name":"docs/parsers/stat_s.md","lines_changed":174},{"name":"docs/parsers/sysctl.md","lines_changed":120},{"name":"docs/parsers/systemctl.md","lines_changed":126},{"name":"docs/parsers/systemctl_lj.md","lines_changed":162},{"name":"docs/parsers/systemctl_ls.md","lines_changed":112},{"name":"docs/parsers/systemctl_luf.md","lines_changed":104},{"name":"docs/parsers/systeminfo.md","lines_changed":416},{"name":"docs/parsers/time.md","lines_changed":262},{"name":"docs/parsers/timedatectl.md","lines_changed":132},{"name":"docs/parsers/tracepath.md","lines_changed":268},{"name":"docs/parsers/traceroute.md","lines_changed":288},{"name":"docs/parsers/ufw.md","lines_changed":410},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":272},{"name":"docs/parsers/uname.md","lines_changed":100},{"name":"docs/parsers/universal.md","lines_changed":85},{"name":"docs/parsers/upower.md","lines_changed":394},{"name":"docs/parsers/uptime.md","lines_changed":140},{"name":"docs/parsers/vmstat.md","lines_changed":246},{"name":"docs/parsers/vmstat_s.md","lines_changed":194},{"name":"docs/parsers/w.md","lines_changed":216},{"name":"docs/parsers/wc.md","lines_changed":118},{"name":"docs/parsers/who.md","lines_changed":270},{"name":"docs/parsers/xml.md","lines_changed":154},{"name":"docs/parsers/yaml.md","lines_changed":182},{"name":"docs/parsers/zipinfo.md","lines_changed":158},{"name":"docs/readme.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":223},{"name":"jc/cli.py","lines_changed":4},{"name":"man/jc.1","lines_changed":12}]},"message":"try new markdown conversion","epoch":1643159267,"epoch_utc":null},{"commit":"6fad44e35df5d0e33e716d0fcb84ed309e6fd30b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 16:28:29 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 16:28:29 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"fix type hint","epoch":1643156909,"epoch_utc":null},{"commit":"1caac750daa25a5abeb1289964e918ec06289bfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 16:27:29 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 16:27:29 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":4}]},"message":"Update type hints","epoch":1643156849,"epoch_utc":null},{"commit":"16370dcb3d5cf1304c2340ef2253ef2987a982b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 15:49:48 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 15:49:48 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"update type hints","epoch":1643154588,"epoch_utc":null},{"commit":"c1302f2573993a6908001d6df0697486f54a9e7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 15:49:31 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 15:49:31 2022 -0800","stats":{"files_changed":1,"insertions":19,"deletions":8,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":27}]},"message":"add type-hints to public api","epoch":1643154571,"epoch_utc":null},{"commit":"6f0ffe0955e4d9d6cc82552cf4e4f419e3ff3756","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 15:48:00 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 15:48:00 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"docu update","epoch":1643154480,"epoch_utc":null},{"commit":"1f89745fe7cca3a0ac27445942098b717675a481","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 11:17:18 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 11:17:18 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1643138238,"epoch_utc":null},{"commit":"a46ac18ef775bb2c52675e61e11c5d92f33cbe81","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 10:47:05 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 10:47:05 2022 -0800","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"doc update","epoch":1643136425,"epoch_utc":null},{"commit":"1a05f1c575b57456481e41baaf551cef30115966","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 10:46:58 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 10:46:58 2022 -0800","stats":{"files_changed":3,"insertions":64,"deletions":54,"files":["jc/__init__.py","jc/cli.py","jc/lib.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":4},{"name":"jc/cli.py","lines_changed":48},{"name":"jc/lib.py","lines_changed":66}]},"message":"add parser info functions. move _get_parser functionality from cli to lib","epoch":1643136418,"epoch_utc":null},{"commit":"08f818aa42ca68050a79ec387c42bff265257fd5","merge":"027c231 b389665","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 00:45:53 2022 +0000","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Jan 25 00:45:53 2022 +0000","message":"Merge pull request #199 from kellyjonbrazil/master\n\nsync to dev","epoch":1643100353,"epoch_utc":1643071553},{"commit":"b3896650c230b4acc73704a50c93ee74e4034eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 23 13:40:50 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 23 13:40:50 2022 -0800","stats":{"files_changed":2,"insertions":62,"deletions":104,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":83},{"name":"templates/readme_template","lines_changed":83}]},"message":"revert column formatting","epoch":1642974050,"epoch_utc":null},{"commit":"f285539526998a5097943c71dcecb2979036b2b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 23 13:36:22 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 23 13:36:22 2022 -0800","stats":{"files_changed":2,"insertions":104,"deletions":62,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":83},{"name":"templates/readme_template","lines_changed":83}]},"message":"conform to 80 columns","epoch":1642973782,"epoch_utc":null},{"commit":"a896dcdf3b31b60582ebb1b3bca5d1103f998dd6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 23 13:14:00 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 23 13:14:00 2022 -0800","stats":{"files_changed":2,"insertions":338,"deletions":120,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":229},{"name":"templates/readme_template","lines_changed":229}]},"message":"formatting","epoch":1642972440,"epoch_utc":null},{"commit":"0a187d4ed08173ec360a006ae2367bb1f2f96c52","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 23 10:04:19 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 23 10:04:19 2022 -0800","stats":{"files_changed":3,"insertions":7,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":4}]},"message":"add console interview links","epoch":1642961059,"epoch_utc":null},{"commit":"2d65bc57d5a396e6683f970194de29494b5c1272","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 16:58:45 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 16:58:45 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":6},{"name":"jc/__init__.py","lines_changed":6}]},"message":"add quotes","epoch":1642813125,"epoch_utc":null},{"commit":"ab63809fde0cefe1f0401d957a3736fdb760f0cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 16:13:00 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 16:13:00 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"update description","epoch":1642810380,"epoch_utc":null},{"commit":"6f04707dc63936efd0e533ae36e1b39ead10c466","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 15:33:43 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 15:33:43 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add python package doc info to top of page","epoch":1642808023,"epoch_utc":null},{"commit":"d14a86a9b58bdc3cb0c8df1dfa495aefdaab8033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 15:29:46 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 15:29:46 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2}]},"message":"fix typo","epoch":1642807786,"epoch_utc":null},{"commit":"8e6a31d3da19926ac46744e02b27a899ca5fbd7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 14:08:19 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 14:08:19 2022 -0800","stats":{"files_changed":6,"insertions":14,"deletions":8,"files":["CHANGELOG","docs/readme.md","jc/__init__.py","jc/lib.py","man/jc.1","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4},{"name":"jc/lib.py","lines_changed":7},{"name":"man/jc.1","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"minor fix for macOS binary","epoch":1642802899,"epoch_utc":null},{"commit":"6e7b6afe87355e96422bb2560ffcbd5e79d28f04","merge":"70cb445 027c231","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 13:52:16 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Jan 21 13:52:16 2022 -0800","message":"Merge pull request #198 from kellyjonbrazil/dev\n\nDev v1.18.0","epoch":1642801936,"epoch_utc":null},{"commit":"027c231097a002526350a93322407582a85db0cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 13:48:38 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 13:48:38 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"formatting","epoch":1642801718,"epoch_utc":null},{"commit":"f1cf7d1f953586dd44a4463d924f1a1f52717c37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:51:26 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 12:51:26 2022 -0800","stats":{"files_changed":2,"insertions":7,"deletions":5,"files":["jc/parsers/foo.py","jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":6},{"name":"jc/parsers/foo_s.py","lines_changed":6}]},"message":"add helper function info","epoch":1642798286,"epoch_utc":null},{"commit":"df611cc263f50285e74ceb3381f55b43a74870a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:41:52 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 12:41:52 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":6},{"name":"jc/__init__.py","lines_changed":6}]},"message":"formatting","epoch":1642797712,"epoch_utc":null},{"commit":"0f3143bbbb593340190e66729580146410012e14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:39:22 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 12:39:22 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":6},{"name":"jc/__init__.py","lines_changed":6}]},"message":"formatting","epoch":1642797562,"epoch_utc":null},{"commit":"c280757b7624a46543e481ca47a6e084d2d6f519","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:35:48 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 12:35:48 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"formatting","epoch":1642797348,"epoch_utc":null},{"commit":"d30b9d84ef5ec3a2a504f7ea251c932b8c9ea878","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:33:23 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 12:33:23 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"formatting","epoch":1642797203,"epoch_utc":null},{"commit":"50ded1dbd97d26cf01d7e1a98b40e0f0f7d02202","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:31:03 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 12:31:03 2022 -0800","stats":{"files_changed":1,"insertions":10,"deletions":4,"files":["docs/readme.md"],"file_stats":[{"name":"docs/readme.md","lines_changed":14}]},"message":"doc update","epoch":1642797063,"epoch_utc":null},{"commit":"e319aea5a45c598a44f35b4e58131d977509e4f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:29:36 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 12:29:36 2022 -0800","stats":{"files_changed":1,"insertions":10,"deletions":4,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":14}]},"message":"add doc version info","epoch":1642796976,"epoch_utc":null},{"commit":"ba86509c1d8700a50fe14e9d931ee57261306c5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:15:34 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 12:15:34 2022 -0800","stats":{"files_changed":1,"insertions":3,"deletions":9,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":12}]},"message":"simplify OSError exception handling","epoch":1642796134,"epoch_utc":null},{"commit":"0a9279ae6bfdd1aa59f5e9b31ce0af3bfec19f96","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:15:16 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 12:15:16 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["CHANGELOG","tests/test_lib.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":5},{"name":"tests/test_lib.py","lines_changed":1}]},"message":"doc update","epoch":1642796116,"epoch_utc":null},{"commit":"a13dde12af01b4473aa9a34b8a0d7387fb48500a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 07:42:03 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 07:42:03 2022 -0800","stats":{"files_changed":173,"insertions":173,"deletions":173,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/dpkg_l.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/finger.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/gshadow.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iostat.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/jar_manifest.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/kv.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/stat_s.md","lines_changed":2},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"docs/parsers/zipinfo.md","lines_changed":2},{"name":"jc/parsers/acpi.py","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/blkid.py","lines_changed":2},{"name":"jc/parsers/cksum.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"jc/parsers/csv.py","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/dir.py","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":2},{"name":"jc/parsers/dpkg_l.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/finger.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/group.py","lines_changed":2},{"name":"jc/parsers/gshadow.py","lines_changed":2},{"name":"jc/parsers/hash.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":2},{"name":"jc/parsers/hciconfig.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/iostat.py","lines_changed":2},{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2},{"name":"jc/parsers/jar_manifest.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/kv.py","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/lsusb.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/ntpq.py","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":2},{"name":"jc/parsers/ping.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/rpm_qi.py","lines_changed":2},{"name":"jc/parsers/sfdisk.py","lines_changed":2},{"name":"jc/parsers/shadow.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/stat_s.py","lines_changed":2},{"name":"jc/parsers/sysctl.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/systeminfo.py","lines_changed":2},{"name":"jc/parsers/time.py","lines_changed":2},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/ufw.py","lines_changed":2},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/parsers/wc.py","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":2},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2},{"name":"jc/parsers/zipinfo.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"change raw output wording","epoch":1642779723,"epoch_utc":null},{"commit":"e2ed358de1abefd737c187a324cbe4734d6975e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 15:31:24 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 20 15:31:24 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"changelog update","epoch":1642721484,"epoch_utc":null},{"commit":"a2cd3666210be3727a00c3405972f32fbd421046","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 15:01:49 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Jan 20 15:01:49 2022 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["docs/_config.yml"],"file_stats":[{"name":"docs/_config.yml","lines_changed":1}]},"message":"Delete _config.yml","epoch":1642719709,"epoch_utc":null},{"commit":"15addd9bfc18a0e87beb97040b431c872b783662","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 09:59:23 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 20 09:59:23 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":8,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":5},{"name":"jc/parsers/universal.py","lines_changed":7}]},"message":"doc fix","epoch":1642701563,"epoch_utc":null},{"commit":"a4e34b0053ec0c032f4783caaa3e07fc2c685a98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 09:46:24 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 20 09:46:24 2022 -0800","stats":{"files_changed":2,"insertions":63,"deletions":0,"files":["docgen.sh","docs/parsers/universal.md"],"file_stats":[{"name":"docgen.sh","lines_changed":3},{"name":"docs/parsers/universal.md","lines_changed":60}]},"message":"add universal parser docs","epoch":1642700784,"epoch_utc":null},{"commit":"d09529ac302fbcc156d58cf836f8397c98121a76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 09:40:34 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 20 09:40:34 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"changelog update","epoch":1642700434,"epoch_utc":null},{"commit":"553097b5050dc02fbdaeec2e2e138e01bc6811d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 09:40:08 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 20 09:40:08 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":2}]},"message":"docstring update","epoch":1642700408,"epoch_utc":null},{"commit":"49c556857708307f617b2b516f2d281398681b5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 07:49:45 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 20 07:49:45 2022 -0800","stats":{"files_changed":7,"insertions":35,"deletions":15,"files":["README.md","docs/lib.md","docs/readme.md","jc/__init__.py","jc/lib.py","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/lib.md","lines_changed":9},{"name":"docs/readme.md","lines_changed":13},{"name":"jc/__init__.py","lines_changed":13},{"name":"jc/lib.py","lines_changed":9},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"module doc update","epoch":1642693785,"epoch_utc":null},{"commit":"6962b9ee8a52c924dc2de6b79ddeea3636e80fe4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 22:24:59 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 22:24:59 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":6,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":7},{"name":"jc/lib.py","lines_changed":7}]},"message":"formatting","epoch":1642659899,"epoch_utc":null},{"commit":"b4575a3f780f9aa2751c8b4789f67aaca32dd1cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 22:20:36 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 22:20:36 2022 -0800","stats":{"files_changed":3,"insertions":91,"deletions":1,"files":["docgen.sh","docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docgen.sh","lines_changed":4},{"name":"docs/lib.md","lines_changed":86},{"name":"jc/lib.py","lines_changed":2}]},"message":"add lib docs","epoch":1642659636,"epoch_utc":null},{"commit":"35b54d235d73b2ce658223be3d6095906f142d89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 21:53:13 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 21:53:13 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"templates/readme_template","lines_changed":3}]},"message":"add python package doc info","epoch":1642657993,"epoch_utc":null},{"commit":"583a5757e454a4e36b331057d1266279b55ee16a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 21:32:21 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 21:32:21 2022 -0800","stats":{"files_changed":18,"insertions":34,"deletions":30,"files":["docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/file.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/traceroute.md","docs/parsers/ufw_appinfo.md","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/file.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/traceroute.py","jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":6},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":9},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":6},{"name":"jc/parsers/ls.py","lines_changed":5},{"name":"jc/parsers/ls_s.py","lines_changed":9},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":2}]},"message":"formatting","epoch":1642656741,"epoch_utc":null},{"commit":"f355333eeed3c4afba844dc7bed5224356552adc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 19:27:46 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 19:27:46 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":8},{"name":"jc/__init__.py","lines_changed":8}]},"message":"formatting","epoch":1642649266,"epoch_utc":null},{"commit":"4d7df109604e4f8367904968602acfc05217a7fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 19:24:37 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 19:24:37 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"formatting","epoch":1642649077,"epoch_utc":null},{"commit":"66b2c28f4bc75fb76800f9fb7ea485eee194a9a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 19:22:08 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 19:22:08 2022 -0800","stats":{"files_changed":2,"insertions":24,"deletions":24,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":24},{"name":"jc/__init__.py","lines_changed":24}]},"message":"formatting","epoch":1642648928,"epoch_utc":null},{"commit":"299a9c6d88fdf1fede447b4057d8f4263daef733","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 19:19:25 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 19:19:25 2022 -0800","stats":{"files_changed":2,"insertions":25,"deletions":57,"files":["docs/parsers/csv.md","docs/readme.md"],"file_stats":[{"name":"docs/parsers/csv.md","lines_changed":4},{"name":"docs/readme.md","lines_changed":78}]},"message":"formatting","epoch":1642648765,"epoch_utc":null},{"commit":"bd391d979ce98b126dab0f012a56b3fcb1f73439","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 19:18:03 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 19:18:03 2022 -0800","stats":{"files_changed":1,"insertions":23,"deletions":55,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":78}]},"message":"add lib function docs","epoch":1642648683,"epoch_utc":null},{"commit":"7309bd2282445f6daef0b1491ff60b8104500abb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 18:47:44 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 18:47:44 2022 -0800","stats":{"files_changed":3,"insertions":19,"deletions":10,"files":["jc/lib.py","jc/parsers/csv.py","jc/parsers/universal.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":15},{"name":"jc/parsers/csv.py","lines_changed":4},{"name":"jc/parsers/universal.py","lines_changed":10}]},"message":"add get_help","epoch":1642646864,"epoch_utc":null},{"commit":"ce84c09d3394b598f19a3e012ef27ce4154e3b3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 18:44:26 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 18:44:26 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":3}]},"message":"add get_help()","epoch":1642646666,"epoch_utc":null},{"commit":"b4fffbb6476daf78fbdf19dbf31bbeeab950d2dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 17:30:14 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 17:30:14 2022 -0800","stats":{"files_changed":46,"insertions":501,"deletions":304,"files":["docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/history.md","docs/parsers/ini.md","docs/parsers/iostat_s.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsusb.md","docs/parsers/netstat.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/ps.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/upower.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/who.md"],"file_stats":[{"name":"docs/parsers/crontab.md","lines_changed":3},{"name":"docs/parsers/crontab_u.md","lines_changed":22},{"name":"docs/parsers/csv.md","lines_changed":9},{"name":"docs/parsers/csv_s.md","lines_changed":35},{"name":"docs/parsers/date.md","lines_changed":18},{"name":"docs/parsers/dig.md","lines_changed":16},{"name":"docs/parsers/dir.md","lines_changed":6},{"name":"docs/parsers/dpkg_l.md","lines_changed":7},{"name":"docs/parsers/du.md","lines_changed":20},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":8},{"name":"docs/parsers/ini.md","lines_changed":15},{"name":"docs/parsers/iostat_s.md","lines_changed":25},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jar_manifest.md","lines_changed":25},{"name":"docs/parsers/jobs.md","lines_changed":3},{"name":"docs/parsers/kv.md","lines_changed":11},{"name":"docs/parsers/last.md","lines_changed":10},{"name":"docs/parsers/ls.md","lines_changed":19},{"name":"docs/parsers/ls_s.md","lines_changed":51},{"name":"docs/parsers/lsblk.md","lines_changed":10},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":3},{"name":"docs/parsers/ping.md","lines_changed":32},{"name":"docs/parsers/ping_s.md","lines_changed":85},{"name":"docs/parsers/ps.md","lines_changed":8},{"name":"docs/parsers/rpm_qi.md","lines_changed":37},{"name":"docs/parsers/sfdisk.md","lines_changed":8},{"name":"docs/parsers/ss.md","lines_changed":6},{"name":"docs/parsers/stat.md","lines_changed":6},{"name":"docs/parsers/stat_s.md","lines_changed":27},{"name":"docs/parsers/sysctl.md","lines_changed":7},{"name":"docs/parsers/systemctl.md","lines_changed":4},{"name":"docs/parsers/systemctl_ls.md","lines_changed":3},{"name":"docs/parsers/systemctl_luf.md","lines_changed":3},{"name":"docs/parsers/systeminfo.md","lines_changed":19},{"name":"docs/parsers/time.md","lines_changed":33},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"docs/parsers/ufw.md","lines_changed":7},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":28},{"name":"docs/parsers/upower.md","lines_changed":16},{"name":"docs/parsers/vmstat.md","lines_changed":13},{"name":"docs/parsers/vmstat_s.md","lines_changed":111},{"name":"docs/parsers/who.md","lines_changed":7}]},"message":"formatting","epoch":1642642214,"epoch_utc":null},{"commit":"3701b4198aad1826ad6da571fbcaa530b057cc48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 17:29:22 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 17:29:22 2022 -0800","stats":{"files_changed":86,"insertions":710,"deletions":606,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":5},{"name":"jc/parsers/airport.py","lines_changed":7},{"name":"jc/parsers/airport_s.py","lines_changed":3},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/blkid.py","lines_changed":10},{"name":"jc/parsers/cksum.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":6},{"name":"jc/parsers/crontab_u.py","lines_changed":25},{"name":"jc/parsers/csv.py","lines_changed":14},{"name":"jc/parsers/csv_s.py","lines_changed":38},{"name":"jc/parsers/date.py","lines_changed":69},{"name":"jc/parsers/df.py","lines_changed":13},{"name":"jc/parsers/dig.py","lines_changed":28},{"name":"jc/parsers/dir.py","lines_changed":8},{"name":"jc/parsers/dmidecode.py","lines_changed":3},{"name":"jc/parsers/dpkg_l.py","lines_changed":10},{"name":"jc/parsers/du.py","lines_changed":23},{"name":"jc/parsers/env.py","lines_changed":7},{"name":"jc/parsers/file.py","lines_changed":6},{"name":"jc/parsers/finger.py","lines_changed":14},{"name":"jc/parsers/foo.py","lines_changed":3},{"name":"jc/parsers/foo_s.py","lines_changed":23},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/group.py","lines_changed":3},{"name":"jc/parsers/gshadow.py","lines_changed":3},{"name":"jc/parsers/hash.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":5},{"name":"jc/parsers/hciconfig.py","lines_changed":13},{"name":"jc/parsers/history.py","lines_changed":10},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":3},{"name":"jc/parsers/ifconfig.py","lines_changed":20},{"name":"jc/parsers/ini.py","lines_changed":23},{"name":"jc/parsers/iostat_s.py","lines_changed":25},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":11},{"name":"jc/parsers/jar_manifest.py","lines_changed":25},{"name":"jc/parsers/jobs.py","lines_changed":5},{"name":"jc/parsers/kv.py","lines_changed":13},{"name":"jc/parsers/last.py","lines_changed":17},{"name":"jc/parsers/ls.py","lines_changed":21},{"name":"jc/parsers/ls_s.py","lines_changed":53},{"name":"jc/parsers/lsblk.py","lines_changed":15},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/lsusb.py","lines_changed":5},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":20},{"name":"jc/parsers/ntpq.py","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":3},{"name":"jc/parsers/ping.py","lines_changed":46},{"name":"jc/parsers/ping_s.py","lines_changed":99},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":10},{"name":"jc/parsers/route.py","lines_changed":6},{"name":"jc/parsers/rpm_qi.py","lines_changed":40},{"name":"jc/parsers/sfdisk.py","lines_changed":16},{"name":"jc/parsers/shadow.py","lines_changed":3},{"name":"jc/parsers/ss.py","lines_changed":8},{"name":"jc/parsers/stat.py","lines_changed":12},{"name":"jc/parsers/stat_s.py","lines_changed":31},{"name":"jc/parsers/sysctl.py","lines_changed":10},{"name":"jc/parsers/systemctl.py","lines_changed":6},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":5},{"name":"jc/parsers/systemctl_luf.py","lines_changed":5},{"name":"jc/parsers/systeminfo.py","lines_changed":31},{"name":"jc/parsers/time.py","lines_changed":51},{"name":"jc/parsers/timedatectl.py","lines_changed":8},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":7},{"name":"jc/parsers/ufw.py","lines_changed":7},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":28},{"name":"jc/parsers/uname.py","lines_changed":4},{"name":"jc/parsers/universal.py","lines_changed":40},{"name":"jc/parsers/upower.py","lines_changed":32},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":28},{"name":"jc/parsers/vmstat_s.py","lines_changed":125},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/parsers/wc.py","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":10},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"formatting","epoch":1642642162,"epoch_utc":null},{"commit":"d4c34098fa7ad2098076f0fa0564467e5d06f916","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 11:31:29 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 11:31:29 2022 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":5}]},"message":"formatting","epoch":1642620689,"epoch_utc":null},{"commit":"b3c531193b3fc53697e7d7823576f481f9462d53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 11:08:59 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 11:08:59 2022 -0800","stats":{"files_changed":3,"insertions":125,"deletions":71,"files":["CHANGELOG","docs/utils.md","jc/utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docs/utils.md","lines_changed":79},{"name":"jc/utils.py","lines_changed":114}]},"message":"formatting","epoch":1642619339,"epoch_utc":null},{"commit":"1d0e07c77bab5c48405323e52873c7952dd0a587","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 10:31:46 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 10:31:46 2022 -0800","stats":{"files_changed":3,"insertions":57,"deletions":55,"files":["docs/readme.md","jc/__init__.py","jc/lib.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":33},{"name":"jc/__init__.py","lines_changed":33},{"name":"jc/lib.py","lines_changed":46}]},"message":"formatting","epoch":1642617106,"epoch_utc":null},{"commit":"06a322cf9c7468dc7e8ba05914e1d07bbc51f63a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 10:31:36 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 10:31:36 2022 -0800","stats":{"files_changed":1,"insertions":14,"deletions":8,"files":["tests/test_lib.py"],"file_stats":[{"name":"tests/test_lib.py","lines_changed":22}]},"message":"rename tests and add conversion function tests","epoch":1642617096,"epoch_utc":null},{"commit":"623d148712f93eacf9b7b5803140603f0af67acb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 09:30:53 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 09:30:53 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1642613453,"epoch_utc":null},{"commit":"647e83d0439a0937db14a2cc97929e38a6b6a43b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 09:29:09 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 09:29:09 2022 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["tests/test_lib.py"],"file_stats":[{"name":"tests/test_lib.py","lines_changed":3}]},"message":"add test to ensure there are zero plugin parsers installed during tests","epoch":1642613349,"epoch_utc":null},{"commit":"91a554464444da0cc3ed3b4d212539232411f6cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 09:28:35 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 09:28:35 2022 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":5}]},"message":"doc update","epoch":1642613315,"epoch_utc":null},{"commit":"a1190998aef1bf403ee34c38c1a0fbd6291ac38b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 09:15:24 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 09:15:24 2022 -0800","stats":{"files_changed":2,"insertions":82,"deletions":0,"files":["tests/test_jc.py","tests/test_lib.py"],"file_stats":[{"name":"tests/test_jc.py","lines_changed":41},{"name":"tests/test_lib.py","lines_changed":41}]},"message":"add jc and jc.lib tests","epoch":1642612524,"epoch_utc":null},{"commit":"097d7a1850f6f6df73a5761c657b73ef9dbd3e29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 09:15:11 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 09:15:11 2022 -0800","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":4}]},"message":"simplify __init__","epoch":1642612511,"epoch_utc":null},{"commit":"302bf72e720b3a67fbf1300eaff4f99fc343abeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 15:38:03 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 18 15:38:03 2022 -0800","stats":{"files_changed":138,"insertions":718,"deletions":6,"files":["docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py"],"file_stats":[{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":5},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iostat.md","lines_changed":5},{"name":"docs/parsers/iostat_s.md","lines_changed":7},{"name":"docs/parsers/iptables.md","lines_changed":7},{"name":"docs/parsers/iw_scan.md","lines_changed":9},{"name":"docs/parsers/jar_manifest.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":7},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/ping_s.md","lines_changed":7},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/sfdisk.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/stat_s.md","lines_changed":7},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/systeminfo.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"docs/parsers/ufw.md","lines_changed":5},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/vmstat.md","lines_changed":5},{"name":"docs/parsers/vmstat_s.md","lines_changed":7},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5},{"name":"docs/parsers/zipinfo.md","lines_changed":5},{"name":"jc/parsers/env.py","lines_changed":5},{"name":"jc/parsers/file.py","lines_changed":5},{"name":"jc/parsers/finger.py","lines_changed":5},{"name":"jc/parsers/foo.py","lines_changed":5},{"name":"jc/parsers/foo_s.py","lines_changed":7},{"name":"jc/parsers/free.py","lines_changed":5},{"name":"jc/parsers/fstab.py","lines_changed":5},{"name":"jc/parsers/group.py","lines_changed":5},{"name":"jc/parsers/gshadow.py","lines_changed":5},{"name":"jc/parsers/hash.py","lines_changed":5},{"name":"jc/parsers/hashsum.py","lines_changed":5},{"name":"jc/parsers/hciconfig.py","lines_changed":5},{"name":"jc/parsers/history.py","lines_changed":5},{"name":"jc/parsers/hosts.py","lines_changed":5},{"name":"jc/parsers/id.py","lines_changed":5},{"name":"jc/parsers/ifconfig.py","lines_changed":5},{"name":"jc/parsers/ini.py","lines_changed":5},{"name":"jc/parsers/iostat.py","lines_changed":5},{"name":"jc/parsers/iostat_s.py","lines_changed":7},{"name":"jc/parsers/iptables.py","lines_changed":7},{"name":"jc/parsers/iw_scan.py","lines_changed":9},{"name":"jc/parsers/jar_manifest.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":5},{"name":"jc/parsers/kv.py","lines_changed":5},{"name":"jc/parsers/last.py","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":5},{"name":"jc/parsers/ls_s.py","lines_changed":7},{"name":"jc/parsers/lsblk.py","lines_changed":5},{"name":"jc/parsers/lsmod.py","lines_changed":5},{"name":"jc/parsers/lsof.py","lines_changed":5},{"name":"jc/parsers/lsusb.py","lines_changed":5},{"name":"jc/parsers/mount.py","lines_changed":5},{"name":"jc/parsers/netstat.py","lines_changed":5},{"name":"jc/parsers/ntpq.py","lines_changed":5},{"name":"jc/parsers/passwd.py","lines_changed":5},{"name":"jc/parsers/ping.py","lines_changed":5},{"name":"jc/parsers/ping_s.py","lines_changed":7},{"name":"jc/parsers/pip_list.py","lines_changed":5},{"name":"jc/parsers/pip_show.py","lines_changed":5},{"name":"jc/parsers/ps.py","lines_changed":5},{"name":"jc/parsers/route.py","lines_changed":5},{"name":"jc/parsers/rpm_qi.py","lines_changed":5},{"name":"jc/parsers/sfdisk.py","lines_changed":5},{"name":"jc/parsers/shadow.py","lines_changed":5},{"name":"jc/parsers/ss.py","lines_changed":5},{"name":"jc/parsers/stat.py","lines_changed":5},{"name":"jc/parsers/stat_s.py","lines_changed":7},{"name":"jc/parsers/sysctl.py","lines_changed":5},{"name":"jc/parsers/systemctl.py","lines_changed":5},{"name":"jc/parsers/systemctl_lj.py","lines_changed":5},{"name":"jc/parsers/systemctl_ls.py","lines_changed":5},{"name":"jc/parsers/systemctl_luf.py","lines_changed":5},{"name":"jc/parsers/systeminfo.py","lines_changed":5},{"name":"jc/parsers/time.py","lines_changed":5},{"name":"jc/parsers/timedatectl.py","lines_changed":5},{"name":"jc/parsers/tracepath.py","lines_changed":5},{"name":"jc/parsers/traceroute.py","lines_changed":5},{"name":"jc/parsers/ufw.py","lines_changed":5},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":5},{"name":"jc/parsers/uname.py","lines_changed":5},{"name":"jc/parsers/upower.py","lines_changed":5},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/vmstat.py","lines_changed":5},{"name":"jc/parsers/vmstat_s.py","lines_changed":7},{"name":"jc/parsers/w.py","lines_changed":5},{"name":"jc/parsers/wc.py","lines_changed":5},{"name":"jc/parsers/who.py","lines_changed":5},{"name":"jc/parsers/xml.py","lines_changed":5},{"name":"jc/parsers/yaml.py","lines_changed":5},{"name":"jc/parsers/zipinfo.py","lines_changed":5}]},"message":"Update high-level API docs","epoch":1642549083,"epoch_utc":null},{"commit":"2c42baf3a4dd6733c078f31a1becd708a05f2c36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 14:18:12 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 18 14:18:12 2022 -0800","stats":{"files_changed":34,"insertions":174,"deletions":0,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/csv_s.md","lines_changed":7},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"jc/parsers/acpi.py","lines_changed":5},{"name":"jc/parsers/airport.py","lines_changed":5},{"name":"jc/parsers/airport_s.py","lines_changed":5},{"name":"jc/parsers/arp.py","lines_changed":5},{"name":"jc/parsers/blkid.py","lines_changed":5},{"name":"jc/parsers/cksum.py","lines_changed":5},{"name":"jc/parsers/crontab.py","lines_changed":5},{"name":"jc/parsers/crontab_u.py","lines_changed":5},{"name":"jc/parsers/csv.py","lines_changed":5},{"name":"jc/parsers/csv_s.py","lines_changed":7},{"name":"jc/parsers/date.py","lines_changed":5},{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":5},{"name":"jc/parsers/dir.py","lines_changed":5},{"name":"jc/parsers/dmidecode.py","lines_changed":5},{"name":"jc/parsers/dpkg_l.py","lines_changed":5},{"name":"jc/parsers/du.py","lines_changed":5}]},"message":"add new high-level api info","epoch":1642544292,"epoch_utc":null},{"commit":"03feb89c84096c0ea1d6ae3a0634ae7b8b507e8f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 13:46:11 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 18 13:46:11 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2}]},"message":"add module list info","epoch":1642542371,"epoch_utc":null},{"commit":"9dd553192fbca3037b3afe5df6bae88f7a8a9365","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 13:40:09 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 18 13:40:09 2022 -0800","stats":{"files_changed":5,"insertions":29,"deletions":12,"files":["CHANGELOG","README.md","docs/readme.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":10},{"name":"docs/readme.md","lines_changed":16},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":10}]},"message":"doc update","epoch":1642542009,"epoch_utc":null},{"commit":"fa3f02e9d1ac7867e3465c2d214f4e4229ff4c66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 13:39:51 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 18 13:39:51 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1642541991,"epoch_utc":null},{"commit":"0a9dde58c5235f78c4c9ae9c013f7454482c6067","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 13:10:14 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 18 13:10:14 2022 -0800","stats":{"files_changed":3,"insertions":228,"deletions":134,"files":["jc/__init__.py","jc/cli.py","jc/lib.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":22},{"name":"jc/cli.py","lines_changed":154},{"name":"jc/lib.py","lines_changed":186}]},"message":"add jc.parse() high-level API","epoch":1642540214,"epoch_utc":null},{"commit":"70cb4453bebb235130e2c287633ecb1de6c2b0aa","merge":"e6900e2 830674c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 14 11:54:29 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Jan 14 11:54:29 2022 -0800","message":"Merge pull request #195 from kellyjonbrazil/dev\n\nDev v1.17.7","epoch":1642190069,"epoch_utc":null},{"commit":"830674cc6f19e107347a743baff7bbaab7f80b75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 14 11:47:25 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 14 11:47:25 2022 -0800","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["CHANGELOG","jc/__init__.py","man/jc.1","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1642189645,"epoch_utc":null},{"commit":"fb406b58a12fdfe81bcff76671661af77e7f2fe5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jan 8 20:22:53 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Jan 8 20:22:53 2022 -0800","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["docs/parsers/stat_s.md","jc/parsers/stat_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/stat_s.md","lines_changed":4},{"name":"jc/parsers/stat_s.py","lines_changed":4},{"name":"man/jc.1","lines_changed":2}]},"message":"formatting","epoch":1641702173,"epoch_utc":null},{"commit":"55b272e41259ddc835cf4eb513fb67e7b2cf1573","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 6 11:13:14 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 6 11:13:14 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":2}]},"message":"tighten stat data detection","epoch":1641496394,"epoch_utc":null},{"commit":"94f62a9bf36242310790a0f37c66b2e6c6fdc078","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 6 11:03:49 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 6 11:03:49 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/stat_s.md","jc/parsers/stat_s.py"],"file_stats":[{"name":"docs/parsers/stat_s.md","lines_changed":6},{"name":"jc/parsers/stat_s.py","lines_changed":6}]},"message":"formatting","epoch":1641495829,"epoch_utc":null},{"commit":"8d19e4cb7b45e3b6cb8c404c959949b7593c9386","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 6 11:00:53 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 6 11:00:53 2022 -0800","stats":{"files_changed":4,"insertions":115,"deletions":1,"files":["CHANGELOG","README.md","docs/parsers/stat_s.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/stat_s.md","lines_changed":105},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update","epoch":1641495653,"epoch_utc":null},{"commit":"7e510d48e0f8426a67cf8d70d06d0331c274d358","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 6 10:36:33 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 6 10:36:33 2022 -0800","stats":{"files_changed":7,"insertions":106,"deletions":2,"files":["jc/parsers/stat_s.py","tests/fixtures/centos-7.7/stat-streaming.json","tests/fixtures/freebsd12/stat-streaming.json",".../stat-filename-with-spaces-streaming.json","tests/fixtures/osx-10.14.6/stat-streaming.json","tests/fixtures/ubuntu-18.04/stat-streaming.json","tests/test_stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":3},{"name":"tests/fixtures/centos-7.7/stat-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/stat-streaming.json","lines_changed":1},{"name":".../stat-filename-with-spaces-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/stat-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/stat-streaming.json","lines_changed":1},{"name":"tests/test_stat_s.py","lines_changed":100}]},"message":"simplify non-stat parse error logic","epoch":1641494193,"epoch_utc":null},{"commit":"7b20cffb143447f4497bc4e895eac2426e8a519f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 5 11:44:00 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 5 11:44:00 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":8}]},"message":"simplify last item logic","epoch":1641411840,"epoch_utc":null},{"commit":"5c934c43c13b69183561da8a77280feb3363e950","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 5 11:39:00 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 5 11:39:00 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":2}]},"message":"add continue to simplify logic","epoch":1641411540,"epoch_utc":null},{"commit":"8609298449e997ba4804d818f4fc23cb393ded7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 5 11:25:58 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 5 11:25:58 2022 -0800","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":8}]},"message":"update docstring","epoch":1641410758,"epoch_utc":null},{"commit":"72cb0dc10b2dac486d3e2a52cf44baf0d7496034","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 5 11:22:01 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 5 11:22:01 2022 -0800","stats":{"files_changed":1,"insertions":14,"deletions":10,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":24}]},"message":"fixup for first and last items","epoch":1641410521,"epoch_utc":null},{"commit":"7b22fa81ded0f6f59e250ffea63c5d2a0f928b25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 5 07:46:58 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 5 07:46:58 2022 -0800","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":8}]},"message":"raise for non-stat data","epoch":1641397618,"epoch_utc":null},{"commit":"0b6a1307790e0793917bc2781e4873aa9dd67225","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 16:43:38 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 4 16:43:38 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":4}]},"message":"ignore blank lines","epoch":1641343418,"epoch_utc":null},{"commit":"fdcf4338e0f099699f8d48df6382be1cc97dba84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 15:31:00 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 4 15:31:00 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":6}]},"message":"add examples to docstring","epoch":1641339060,"epoch_utc":null},{"commit":"ee43037f481286a34a766390568965fdd53af132","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 15:13:42 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 4 15:13:42 2022 -0800","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":2}]},"message":"remove unused continue lines","epoch":1641338022,"epoch_utc":null},{"commit":"26e365563c314e694915c7a3feae490ea99a112c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 15:07:45 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 4 15:07:45 2022 -0800","stats":{"files_changed":1,"insertions":50,"deletions":11,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":61}]},"message":"add schema and _process logic","epoch":1641337665,"epoch_utc":null},{"commit":"1b39586bb1b62aee8ae709512c2e3f79cefdb3d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 15:01:42 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 4 15:01:42 2022 -0800","stats":{"files_changed":2,"insertions":227,"deletions":0,"files":["jc/cli.py","jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/stat_s.py","lines_changed":226}]},"message":"add stat streaming parser","epoch":1641337302,"epoch_utc":null},{"commit":"8bb3a6bea34d60d49039f1ed72fd7e413edc05da","merge":"78672bd e6900e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 13:33:35 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Jan 4 13:33:35 2022 -0800","message":"Merge pull request #194 from kellyjonbrazil/master\n\nsync to dev","epoch":1641332015,"epoch_utc":null},{"commit":"e6900e2000bf265dfcfc09ffbfda39e9238661af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:41:16 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 3 09:41:16 2022 -0800","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":21}]},"message":"add jar-manifest","epoch":1641231676,"epoch_utc":null},{"commit":"0ee244756bf39123e4873eb231156edbe7f0e0ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:22:35 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 3 09:22:35 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/jar_manifest.md","jc/parsers/jar_manifest.py"],"file_stats":[{"name":"docs/parsers/jar_manifest.md","lines_changed":2},{"name":"jc/parsers/jar_manifest.py","lines_changed":2}]},"message":"spelling","epoch":1641230555,"epoch_utc":null},{"commit":"6d5ac9abe6712e01887ce0d96c278a568319f405","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:19:40 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 3 09:19:40 2022 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["docs/parsers/csv.md","docs/parsers/csv_s.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"update docs","epoch":1641230380,"epoch_utc":null},{"commit":"44f6d9e1321459be8196aeebf6db088cc5120e61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:18:43 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 3 09:18:43 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"changelog update","epoch":1641230323,"epoch_utc":null},{"commit":"360154559c5dee6affa55bbdd5d2f473248b9168","merge":"241d53a 78672bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:12:50 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Jan 3 09:12:50 2022 -0800","message":"Merge pull request #193 from kellyjonbrazil/dev\n\nDev add csv doublequote fix","epoch":1641229970,"epoch_utc":null},{"commit":"78672bd7ad66c418e0ecf31add73f887b0946d29","merge":"bc7973a 65d96e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:08:57 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Jan 3 09:08:57 2022 -0800","message":"Merge pull request #190 from shaikustin/csv-doubleqouted\n\nfix doubleqoute in csv","epoch":1641229737,"epoch_utc":null},{"commit":"65d96e26b59e231c77c1dbba1dc91708c33de30c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:06:00 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 3 09:06:00 2022 -0800","stats":{"files_changed":2,"insertions":13,"deletions":0,"files":["tests/fixtures/generic/csv-doubleqouted-streaming.json","tests/test_csv_s.py"],"file_stats":[{"name":"tests/fixtures/generic/csv-doubleqouted-streaming.json","lines_changed":1},{"name":"tests/test_csv_s.py","lines_changed":12}]},"message":"add streaming tests","epoch":1641229560,"epoch_utc":null},{"commit":"241d53af9a5c9bba70e28835e22c52c0060269ba","merge":"f733100 bc7973a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 08:49:15 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Jan 3 08:49:15 2022 -0800","message":"Merge pull request #192 from kellyjonbrazil/dev\n\nDev v1.17.6","epoch":1641228555,"epoch_utc":null},{"commit":"5563829df2849a899df2e9211d6c92bddc695f9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 08:48:23 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 3 08:48:23 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":8}]},"message":"make dialect sniff behavior match non-streaming parser","epoch":1641228503,"epoch_utc":null},{"commit":"3a4a27e1f94ee07352c7616c57ec655c1aea04f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 11:44:25 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 2 11:44:25 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/csv.py"],"file_stats":[{"name":"jc/parsers/csv.py","lines_changed":4}]},"message":"version bump","epoch":1641152665,"epoch_utc":null},{"commit":"9c887a36a804d817c3f669a55b9b1566d09d645d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 11:44:18 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 2 11:44:18 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":6}]},"message":"update csv_s parser with csv changes","epoch":1641152658,"epoch_utc":null},{"commit":"bc7973af36e13006230b5faa9e201e300d468912","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 11:07:15 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 2 11:07:15 2022 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","jc/cli.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"update copyright","epoch":1641150435,"epoch_utc":null},{"commit":"32972d8fdbdc71923978fd5c2a87fd6cfa4b7f8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 11:00:52 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 2 11:00:52 2022 -0800","stats":{"files_changed":7,"insertions":122,"deletions":9,"files":["CHANGELOG","README.md","docs/parsers/jar_manifest.md","jc/__init__.py","jc/parsers/jar_manifest.py","man/jc.1","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/jar_manifest.md","lines_changed":104},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/parsers/jar_manifest.py","lines_changed":12},{"name":"man/jc.1","lines_changed":7},{"name":"setup.py","lines_changed":2}]},"message":"doc update","epoch":1641150052,"epoch_utc":null},{"commit":"b128d9109cbdb1176f2473d450023bb0be02531b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 10:51:02 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 2 10:51:02 2022 -0800","stats":{"files_changed":1,"insertions":46,"deletions":0,"files":["tests/test_jar_manifest.py"],"file_stats":[{"name":"tests/test_jar_manifest.py","lines_changed":46}]},"message":"add MANIFEST.MF tests","epoch":1641149462,"epoch_utc":null},{"commit":"929d7273a422c2bd5b83e5e19d32630f1a027f75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 10:29:56 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 2 10:29:56 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/jar_manifest.py"],"file_stats":[{"name":"jc/parsers/jar_manifest.py","lines_changed":8}]},"message":"doc updates","epoch":1641148196,"epoch_utc":null},{"commit":"2a40f842743a8745d651b4b6cae645045e6c6aab","author":"shaik","author_email":"shai.kustin@torq.io","date":"Sun Jan 2 17:11:20 2022 +0200","commit_by":"shaik","commit_by_email":"shai.kustin@torq.io","commit_by_date":"Sun Jan 2 17:30:25 2022 +0200","stats":{"files_changed":4,"insertions":22,"deletions":1,"files":["jc/parsers/csv.py","tests/fixtures/generic/csv-doubleqouted.csv","tests/fixtures/generic/csv-doubleqouted.json","tests/test_csv.py"],"file_stats":[{"name":"jc/parsers/csv.py","lines_changed":4},{"name":"tests/fixtures/generic/csv-doubleqouted.csv","lines_changed":3},{"name":"tests/fixtures/generic/csv-doubleqouted.json","lines_changed":4},{"name":"tests/test_csv.py","lines_changed":12}]},"message":"fix doubleqoute in csv","epoch":1641172280,"epoch_utc":null},{"commit":"9ff6fa818f0857321e4b3b089d288997f2ae27af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jan 1 10:08:40 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Jan 1 10:08:40 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add jar-manifest","epoch":1641060520,"epoch_utc":null},{"commit":"dac73a4bfe24e36474fdf6ff60c23e784ca409bd","merge":"d789554 f733100","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jan 1 10:06:46 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sat Jan 1 10:06:46 2022 -0800","message":"Merge pull request #189 from kellyjonbrazil/master\n\nuse github releases instead of packaging site","epoch":1641060406,"epoch_utc":null},{"commit":"d7895547f74744e82317eabe4c870115701872be","merge":"f8e09ae b7d439c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jan 1 10:04:47 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sat Jan 1 10:04:47 2022 -0800","message":"Merge pull request #188 from listuser/new_branch\n\nCreate key value pairs from a MANIFEST.MF file, to include key multiline value pairs.","epoch":1641060287,"epoch_utc":null},{"commit":"b7d439cb870e443e4f4e4a2137ab170835e77eff","author":"listuser","author_email":null,"date":"Fri Dec 31 12:15:50 2021 -0800","commit_by":"listuser","commit_by_email":null,"commit_by_date":"Fri Dec 31 12:15:50 2021 -0800","stats":{"files_changed":3,"insertions":2220,"deletions":9,"files":["jc/parsers/{jar-manifest.py => jar_manifest.py}","tests/fixtures/rhel-8/MANIFEST.MF.MULTI.json","tests/fixtures/rhel-8/MANIFEST.MF.MULTI.out"],"file_stats":[{"name":"jc/parsers/{jar-manifest.py => jar_manifest.py}","lines_changed":18},{"name":"tests/fixtures/rhel-8/MANIFEST.MF.MULTI.json","lines_changed":1},{"name":"tests/fixtures/rhel-8/MANIFEST.MF.MULTI.out","lines_changed":2210}]},"message":"Renamed jar-manifest.py to jar_manifest.py, added multi manifest outputs to tests...","epoch":1640981750,"epoch_utc":null},{"commit":"7cc903a5f5ca368be97babadc72689375567a901","author":"listuser","author_email":null,"date":"Thu Dec 30 15:10:53 2021 -0800","commit_by":"listuser","commit_by_email":null,"commit_by_date":"Thu Dec 30 15:10:53 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/jar-manifest.py"],"file_stats":[{"name":"jc/parsers/jar-manifest.py","lines_changed":3}]},"message":"Removed inflating from examples in jar-manifest.py","epoch":1640905853,"epoch_utc":null},{"commit":"c495a8291bd3e1fd070ee2e018b9b550f9c86314","author":"listuser","author_email":null,"date":"Thu Dec 30 15:06:06 2021 -0800","commit_by":"listuser","commit_by_email":null,"commit_by_date":"Thu Dec 30 15:06:06 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":292,"files":["tests/fixtures/rhel-8/MANIFEST.MF.json"],"file_stats":[{"name":"tests/fixtures/rhel-8/MANIFEST.MF.json","lines_changed":293}]},"message":"Updated test output in MANIFEST.MF.json","epoch":1640905566,"epoch_utc":null},{"commit":"5e1d7d777c627fb17feda6e51d9640bbd0f03302","author":"listuser","author_email":null,"date":"Thu Dec 30 15:02:48 2021 -0800","commit_by":"listuser","commit_by_email":null,"commit_by_date":"Thu Dec 30 15:02:48 2021 -0800","stats":{"files_changed":8,"insertions":304,"deletions":2544,"files":["jc/parsers/{metamf.py => jar-manifest.py}","tests/fixtures/rhel-8/MANIFEST.MF.json",".../rhel-8/{MANIFEST.MF => MANIFEST.MF.out}",".../rhel-8/cmds_used_to_generate_test_data.txt",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out"],"file_stats":[{"name":"jc/parsers/{metamf.py => jar-manifest.py}","lines_changed":34},{"name":"tests/fixtures/rhel-8/MANIFEST.MF.json","lines_changed":293},{"name":".../rhel-8/{MANIFEST.MF => MANIFEST.MF.out}","lines_changed":0},{"name":".../rhel-8/cmds_used_to_generate_test_data.txt","lines_changed":14},{"name":".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json","lines_changed":1},{"name":".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out","lines_changed":2210},{"name":".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json","lines_changed":1},{"name":".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out","lines_changed":295}]},"message":"Renamed metamf.py to jar-manifest.py, plus other changes","epoch":1640905368,"epoch_utc":null},{"commit":"7edad3f676fe5560017ca9cb05ede6f46787e78f","author":"listuser","author_email":null,"date":"Wed Dec 29 12:15:15 2021 -0800","commit_by":"listuser","commit_by_email":null,"commit_by_date":"Wed Dec 29 12:15:15 2021 -0800","stats":{"files_changed":8,"insertions":3042,"deletions":0,"files":["jc/parsers/metamf.py","tests/fixtures/rhel-8/MANIFEST.MF","tests/fixtures/rhel-8/MANIFEST.MF.json",".../rhel-8/cmds_used_to_generate_test_data.txt",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out"],"file_stats":[{"name":"jc/parsers/metamf.py","lines_changed":228},{"name":"tests/fixtures/rhel-8/MANIFEST.MF","lines_changed":292},{"name":"tests/fixtures/rhel-8/MANIFEST.MF.json","lines_changed":1},{"name":".../rhel-8/cmds_used_to_generate_test_data.txt","lines_changed":14},{"name":".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json","lines_changed":1},{"name":".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out","lines_changed":2210},{"name":".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json","lines_changed":1},{"name":".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out","lines_changed":295}]},"message":"Create key value pairs from a MANIFEST.MF file, to include key multiline value pairs.","epoch":1640808915,"epoch_utc":null},{"commit":"f7331001d4ab976e311458a16b6e5337da2e3aab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 23 11:35:39 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 23 11:35:39 2021 -0800","stats":{"files_changed":3,"insertions":9,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":5},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":5}]},"message":"use github releases instead of packaging site","epoch":1640288139,"epoch_utc":null},{"commit":"f8e09ae2ffe185d21305d566fad20f510df9890f","merge":"2e4f5a5 433c7cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 15:46:39 2021 -0600","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Dec 21 15:46:39 2021 -0600","message":"Merge pull request #187 from kellyjonbrazil/master\n\nsync to dev","epoch":1640130399,"epoch_utc":null},{"commit":"433c7cc0f05e321ffe024845a908f3e856d4cd2b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 13:42:24 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 21 13:42:24 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/zipinfo.md","jc/parsers/zipinfo.py"],"file_stats":[{"name":"docs/parsers/zipinfo.md","lines_changed":1},{"name":"jc/parsers/zipinfo.py","lines_changed":1}]},"message":"formatting","epoch":1640122944,"epoch_utc":null},{"commit":"d753e71a7452310d45fa605a2e4c70320ed60dbb","merge":"3ac8d03 2e4f5a5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 15:21:18 2021 -0600","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Dec 21 15:21:18 2021 -0600","message":"Merge pull request #186 from kellyjonbrazil/dev\n\nDev v1.17.5","epoch":1640128878,"epoch_utc":null},{"commit":"2e4f5a508b6c90f9e03dcbcf64efc0e2fc446666","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 12:19:17 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 21 12:19:17 2021 -0800","stats":{"files_changed":4,"insertions":6,"deletions":3,"files":["CHANGELOG","jc/__init__.py","man/jc.1","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1640117957,"epoch_utc":null},{"commit":"88b960eff6cb3739d0d243c8d8b3e8ad5b8eb97c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 12:14:20 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 21 12:14:20 2021 -0800","stats":{"files_changed":4,"insertions":144,"deletions":1,"files":["EXAMPLES.md","README.md","docs/parsers/zipinfo.md","man/jc.1"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":31},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/zipinfo.md","lines_changed":106},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update","epoch":1640117660,"epoch_utc":null},{"commit":"88c77bd89e2c2a5f023e6638816c9153b6276d35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 12:08:16 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 21 12:08:16 2021 -0800","stats":{"files_changed":2,"insertions":47,"deletions":0,"files":["tests/fixtures/osx-10.14.6/zipinfo-multi.json","tests/test_zipinfo.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/zipinfo-multi.json","lines_changed":1},{"name":"tests/test_zipinfo.py","lines_changed":46}]},"message":"add zipinfo tests","epoch":1640117296,"epoch_utc":null},{"commit":"51a7a4251fff518d8da78ffa41e7ba2e2cb47f12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 11:11:56 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 21 11:11:56 2021 -0800","stats":{"files_changed":1,"insertions":24,"deletions":0,"files":["tests/fixtures/osx-10.14.6/zipinfo-multi.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/zipinfo-multi.out","lines_changed":24}]},"message":"add multi-archive test output","epoch":1640113916,"epoch_utc":null},{"commit":"51d2f316f388d962c26aeb4f42affebec339e5a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 11:11:44 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 21 11:11:44 2021 -0800","stats":{"files_changed":1,"insertions":97,"deletions":72,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":169}]},"message":"add multi-archive support","epoch":1640113904,"epoch_utc":null},{"commit":"ff78a46c4854339a097992701351ef471aff1671","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 08:13:17 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 21 08:13:17 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"add zipinfo parser","epoch":1640103197,"epoch_utc":null},{"commit":"ed4a9dc1d470f64bcc9de35b2d98568ffd50257d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 08:13:00 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 21 08:13:00 2021 -0800","stats":{"files_changed":1,"insertions":21,"deletions":23,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":44}]},"message":"formatting","epoch":1640103180,"epoch_utc":null},{"commit":"63182dba26040974cb8cada6f5910bb29b1fa3ed","merge":"b450697 9c1eaa9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 10:08:46 2021 -0600","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Dec 21 10:08:46 2021 -0600","message":"Merge pull request #185 from listuser/new_branch\n\ncontributed zipinfo parser","epoch":1640110126,"epoch_utc":null},{"commit":"9c1eaa938934269fe4179da798acf5f119cde0cf","author":"Matt J","author_email":"none","date":"Mon Dec 20 21:53:34 2021 -0800","commit_by":"Matt J","commit_by_email":"none","commit_by_date":"Mon Dec 20 21:53:34 2021 -0800","stats":{"files_changed":2,"insertions":68,"deletions":61,"files":["jc/parsers/zipinfo.py","tests/fixtures/rhel-8/zipinfo.json"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":127},{"name":"tests/fixtures/rhel-8/zipinfo.json","lines_changed":2}]},"message":"revised zipinfo.py nested version","epoch":1640066014,"epoch_utc":null},{"commit":"bc520fcbcdfad6a53e51944391fd24512bed8128","author":"Matt J","author_email":"none","date":"Mon Dec 20 14:29:50 2021 -0800","commit_by":"Matt J","commit_by_email":"none","commit_by_date":"Mon Dec 20 14:29:50 2021 -0800","stats":{"files_changed":2,"insertions":63,"deletions":53,"files":["jc/parsers/zipinfo.py","tests/fixtures/rhel-8/zipinfo.json"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":114},{"name":"tests/fixtures/rhel-8/zipinfo.json","lines_changed":2}]},"message":"added zipinfo.py nested version","epoch":1640039390,"epoch_utc":null},{"commit":"46faac1a12a5b39d6a25427f6e8fdcca1204dbcd","author":"Matt J","author_email":"none","date":"Sun Dec 19 17:44:56 2021 -0800","commit_by":"Matt J","commit_by_email":"none","commit_by_date":"Sun Dec 19 18:08:11 2021 -0800","stats":{"files_changed":2,"insertions":1222,"deletions":0,"files":["tests/fixtures/rhel-8/zipinfo.json","tests/fixtures/rhel-8/zipinfo.out"],"file_stats":[{"name":"tests/fixtures/rhel-8/zipinfo.json","lines_changed":1},{"name":"tests/fixtures/rhel-8/zipinfo.out","lines_changed":1221}]},"message":"add test data zipinfo.json and zipinfo.out","epoch":1639964696,"epoch_utc":null},{"commit":"3c424c0cb3cff462a963183585b57bea004e974f","author":"Matt J","author_email":"none","date":"Sun Dec 19 14:05:48 2021 -0800","commit_by":"Matt J","commit_by_email":"none","commit_by_date":"Sun Dec 19 14:05:48 2021 -0800","stats":{"files_changed":1,"insertions":165,"deletions":0,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":165}]},"message":"initial commit zipinfo.py to new_branch","epoch":1639951548,"epoch_utc":null},{"commit":"3ac8d0362b4fb9999fc55a60a9cb20ac80d114f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 16 07:04:35 2021 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Dec 16 07:04:35 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"use quotes around python versions","epoch":1639667075,"epoch_utc":null},{"commit":"d88b998e6c7826a9ecae18663328e2d2915030fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 9 10:58:06 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 9 10:58:06 2021 -0800","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":8},{"name":"jc/parsers/csv_s.py","lines_changed":8}]},"message":"formatting","epoch":1639076286,"epoch_utc":null},{"commit":"a9ed55c00652a563391a7930c7a4649967131ae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 9 10:54:04 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 9 10:54:04 2021 -0800","stats":{"files_changed":11,"insertions":11,"deletions":11,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]},"message":"fix spelling","epoch":1639076044,"epoch_utc":null},{"commit":"ea614341232e5272ee0c7fd46ba0f313033c761f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 9 10:21:37 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 9 10:21:37 2021 -0800","stats":{"files_changed":4,"insertions":16,"deletions":8,"files":["docs/parsers/crontab.md","docs/parsers/crontab_u.md","jc/parsers/crontab.py","jc/parsers/crontab_u.py"],"file_stats":[{"name":"docs/parsers/crontab.md","lines_changed":6},{"name":"docs/parsers/crontab_u.md","lines_changed":6},{"name":"jc/parsers/crontab.py","lines_changed":6},{"name":"jc/parsers/crontab_u.py","lines_changed":6}]},"message":"fix schema docs","epoch":1639074097,"epoch_utc":null},{"commit":"a73d0d26cbe2860b8374661068e09e0717a3bab2","merge":"a7de911 b450697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 20:49:01 2021 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Dec 8 20:49:01 2021 -0800","message":"Merge pull request #184 from kellyjonbrazil/dev\n\nDev 1.17.4","epoch":1639025341,"epoch_utc":null},{"commit":"b4506976e3c865397bc657183d49c484d8bcfd7a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 11:21:12 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 8 11:21:12 2021 -0800","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":8},{"name":"templates/manpage_template","lines_changed":6}]},"message":"formatting","epoch":1638991272,"epoch_utc":null},{"commit":"34cb75a09697a06c3878f2f9a84eb3bd2a90ae62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:46:00 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 8 08:46:00 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/__init__.py","setup.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1638981960,"epoch_utc":null},{"commit":"34df643f60712ae25645cb7cddff80e43c12262b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:35:09 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 8 08:35:09 2021 -0800","stats":{"files_changed":4,"insertions":18,"deletions":0,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"man/jc.1","lines_changed":6},{"name":"templates/manpage_template","lines_changed":6},{"name":"templates/readme_template","lines_changed":3}]},"message":"add disable colors section","epoch":1638981309,"epoch_utc":null},{"commit":"ac7c13fcc013d386f34db51d634298fa3e97eccd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:22:28 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 8 08:22:28 2021 -0800","stats":{"files_changed":4,"insertions":11,"deletions":1,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"man/jc.1","lines_changed":6},{"name":"templates/manpage_template","lines_changed":4},{"name":"templates/readme_template","lines_changed":1}]},"message":"add -C option to docs","epoch":1638980548,"epoch_utc":null},{"commit":"4fdb34c7d5fcaa65e2ccab814c3acf2f0f70c442","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:19:43 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 8 08:19:43 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"add no-color.org","epoch":1638980383,"epoch_utc":null},{"commit":"7ac468e35aac1a63c4e22f33aead74a6e41a22a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:14:36 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 8 08:14:36 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"changelog update","epoch":1638980076,"epoch_utc":null},{"commit":"df190aa299f1669d1fe09380026ae086839abc02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:14:28 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 8 08:14:28 2021 -0800","stats":{"files_changed":1,"insertions":15,"deletions":7,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":22}]},"message":"add -C option to force color even with pipes","epoch":1638980068,"epoch_utc":null},{"commit":"9621475e86fe20fcdc2902b6ce7860a833ae2ca0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 7 15:46:02 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 7 15:46:02 2021 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"changelog update","epoch":1638920762,"epoch_utc":null},{"commit":"82e0160de820ad2ed6143f58458711d600b929a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 7 15:45:11 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 7 15:45:11 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"refactor NO_COLOR test","epoch":1638920711,"epoch_utc":null},{"commit":"d03fb8b626a97e81006d0b108c8f400fe4e2ce3b","merge":"b300dfb 7933dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 7 15:34:23 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 7 15:34:23 2021 -0800","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev","epoch":1638920063,"epoch_utc":null},{"commit":"b300dfb3d75fe76e2ddbb087ff742dd0b5e6155b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 7 15:34:20 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 7 15:34:20 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"Add support for NO_COLOR env variable","epoch":1638920060,"epoch_utc":null},{"commit":"a7de9111d97e687cafbc0709ec3ff7453d658a80","merge":"21e69a7 7933dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 16:37:46 2021 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Dec 2 16:37:46 2021 -0800","message":"Merge pull request #183 from kellyjonbrazil/dev\n\nDev v1.17.3","epoch":1638491866,"epoch_utc":null},{"commit":"7933dfdbe7bf400833d6f6b771362dfc518b9a8d","merge":"f7cb5f7 21e69a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 16:34:06 2021 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Dec 2 16:34:06 2021 -0800","message":"Merge branch 'master' into dev","epoch":1638491646,"epoch_utc":null},{"commit":"f7cb5f7d01ac01538bee4da816408072b585768e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 16:30:47 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 2 16:30:47 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"update date","epoch":1638491447,"epoch_utc":null},{"commit":"a26a298f1a3c141171e7d7ce459a27a297cec031","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 11:42:56 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 2 11:42:56 2021 -0800","stats":{"files_changed":4,"insertions":148,"deletions":1,"files":["README.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/iostat.md","lines_changed":15},{"name":"docs/parsers/iostat_s.md","lines_changed":126},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update","epoch":1638474176,"epoch_utc":null},{"commit":"dbd134d0dac2fc152183480958fd9e65919ac98d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 11:40:47 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 2 11:40:47 2021 -0800","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat_s.py","lines_changed":6}]},"message":"add examples to docs","epoch":1638474047,"epoch_utc":null},{"commit":"11aa01b0d9d6913059f98f9bd7591d7cad9037cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 11:38:00 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 2 11:38:00 2021 -0800","stats":{"files_changed":15,"insertions":15,"deletions":1,"files":["jc/parsers/iostat_s.py","tests/fixtures/centos-7.7/iostat-1-streaming.json","tests/fixtures/centos-7.7/iostat-m-streaming.json","tests/fixtures/centos-7.7/iostat-mx-streaming.json","tests/fixtures/centos-7.7/iostat-streaming.json","tests/fixtures/centos-7.7/iostat-x-streaming.json","tests/fixtures/ubuntu-18.04/iostat-1-streaming.json","tests/fixtures/ubuntu-18.04/iostat-m-streaming.json","tests/fixtures/ubuntu-18.04/iostat-mx-streaming.json","tests/fixtures/ubuntu-18.04/iostat-streaming.json","tests/fixtures/ubuntu-18.04/iostat-x-streaming.json","tests/fixtures/ubuntu-20.10/iostat-m-streaming.json","tests/fixtures/ubuntu-20.10/iostat-mx-streaming.json","tests/fixtures/ubuntu-20.10/iostat-streaming.json","tests/fixtures/ubuntu-20.10/iostat-x-streaming.json"],"file_stats":[{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iostat-1-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-m-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-mx-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-x-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-1-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-m-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-mx-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-x-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-m-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-mx-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-x-streaming.json","lines_changed":1}]},"message":"iostat-s tests","epoch":1638473880,"epoch_utc":null},{"commit":"6f18e5344356684e845ec63158c570d82156254f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 11:37:52 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 2 11:37:52 2021 -0800","stats":{"files_changed":1,"insertions":203,"deletions":0,"files":["tests/test_iostat_s.py"],"file_stats":[{"name":"tests/test_iostat_s.py","lines_changed":203}]},"message":"fix for null lines","epoch":1638473872,"epoch_utc":null},{"commit":"7b467c466568ad4e7986d4d7cf3ec606681b6d46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 09:30:16 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 2 09:30:16 2021 -0800","stats":{"files_changed":9,"insertions":137,"deletions":0,"files":["tests/fixtures/ubuntu-20.10/iostat-m.json","tests/fixtures/ubuntu-20.10/iostat-m.out","tests/fixtures/ubuntu-20.10/iostat-mx.json","tests/fixtures/ubuntu-20.10/iostat-mx.out","tests/fixtures/ubuntu-20.10/iostat-x.json","tests/fixtures/ubuntu-20.10/iostat-x.out","tests/fixtures/ubuntu-20.10/iostat.json","tests/fixtures/ubuntu-20.10/iostat.out","tests/test_iostat.py"],"file_stats":[{"name":"tests/fixtures/ubuntu-20.10/iostat-m.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-m.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-20.10/iostat-mx.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-mx.out","lines_changed":22},{"name":"tests/fixtures/ubuntu-20.10/iostat-x.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-x.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-20.10/iostat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat.out","lines_changed":22},{"name":"tests/test_iostat.py","lines_changed":47}]},"message":"add ubuntu 20.10 tests","epoch":1638466216,"epoch_utc":null},{"commit":"537b8f263087894c02b5b7c121765cf96182a370","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 09:14:43 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 2 09:14:43 2021 -0800","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":4},{"name":"jc/parsers/iostat_s.py","lines_changed":4}]},"message":"add more int conversions","epoch":1638465283,"epoch_utc":null},{"commit":"4d823575e791999e200dedd491511c4fde64fc2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 08:47:25 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 2 08:47:25 2021 -0800","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":4},{"name":"jc/parsers/iostat_s.py","lines_changed":4}]},"message":"add more float fields","epoch":1638463645,"epoch_utc":null},{"commit":"541aa1d09f20ff6979eabaa66790decb3895f18d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 08:41:36 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 2 08:41:36 2021 -0800","stats":{"files_changed":2,"insertions":68,"deletions":8,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":15},{"name":"jc/parsers/iostat_s.py","lines_changed":61}]},"message":"Add new field float conversions for iostat v11","epoch":1638463296,"epoch_utc":null},{"commit":"8f02021014b7b19acf1a8bbd777161aa82c65d66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 05:54:38 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 2 05:54:38 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat_s.py","lines_changed":1}]},"message":"formatting","epoch":1638453278,"epoch_utc":null},{"commit":"158a15157c7e5dde95dc21766d0696bd82486688","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:47:17 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 1 16:47:17 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"changelog update","epoch":1638406037,"epoch_utc":null},{"commit":"2752e0d66a9ba0b57ac86913fd302ada23c280c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:47:09 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 1 16:47:09 2021 -0800","stats":{"files_changed":2,"insertions":166,"deletions":0,"files":["jc/cli.py","jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/iostat_s.py","lines_changed":165}]},"message":"add iostat streaming parser","epoch":1638406029,"epoch_utc":null},{"commit":"6c11e912afe3c4d16da9199b5c2fc10461928ac3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:14:22 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 1 16:14:22 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"update changelog","epoch":1638404062,"epoch_utc":null},{"commit":"43d34461e27e3e4ac5f985786831c170b348c7c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:12:51 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 1 16:12:51 2021 -0800","stats":{"files_changed":83,"insertions":279,"deletions":81,"files":["README.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/utils.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/dpkg_l.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/finger.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/gshadow.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iostat.md","lines_changed":172},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":22},{"name":"man/jc.1","lines_changed":7}]},"message":"update docs","epoch":1638403971,"epoch_utc":null},{"commit":"4dfdc9b0f65d8c950ed74545d0cc3f95c8abec6c","merge":"e2311cb 6665ffa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:02:10 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 1 16:02:10 2021 -0800","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev","epoch":1638403330,"epoch_utc":null},{"commit":"e2311cbb03f407414df953c8d1c07d0cf1a549ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:02:06 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 1 16:02:06 2021 -0800","stats":{"files_changed":21,"insertions":400,"deletions":0,"files":["tests/fixtures/centos-7.7/iostat-1.json","tests/fixtures/centos-7.7/iostat-1.out","tests/fixtures/centos-7.7/iostat-m.json","tests/fixtures/centos-7.7/iostat-m.out","tests/fixtures/centos-7.7/iostat-mx.json","tests/fixtures/centos-7.7/iostat-mx.out","tests/fixtures/centos-7.7/iostat-x.json","tests/fixtures/centos-7.7/iostat-x.out","tests/fixtures/centos-7.7/iostat.json","tests/fixtures/centos-7.7/iostat.out","tests/fixtures/ubuntu-18.04/iostat-1.json","tests/fixtures/ubuntu-18.04/iostat-1.out","tests/fixtures/ubuntu-18.04/iostat-m.json","tests/fixtures/ubuntu-18.04/iostat-m.out","tests/fixtures/ubuntu-18.04/iostat-mx.json","tests/fixtures/ubuntu-18.04/iostat-mx.out","tests/fixtures/ubuntu-18.04/iostat-x.json","tests/fixtures/ubuntu-18.04/iostat-x.out","tests/fixtures/ubuntu-18.04/iostat.json","tests/fixtures/ubuntu-18.04/iostat.out","tests/test_iostat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/iostat-1.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-1.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/iostat-m.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-m.out","lines_changed":10},{"name":"tests/fixtures/centos-7.7/iostat-mx.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-mx.out","lines_changed":9},{"name":"tests/fixtures/centos-7.7/iostat-x.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-x.out","lines_changed":10},{"name":"tests/fixtures/centos-7.7/iostat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat.out","lines_changed":9},{"name":"tests/fixtures/ubuntu-18.04/iostat-1.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-1.out","lines_changed":77},{"name":"tests/fixtures/ubuntu-18.04/iostat-m.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-m.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-18.04/iostat-mx.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-mx.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/iostat-x.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-x.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/iostat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat.out","lines_changed":27},{"name":"tests/test_iostat.py","lines_changed":143}]},"message":"add iostat tests","epoch":1638403326,"epoch_utc":null},{"commit":"bf15575e90985cfec5c57dd11dfa2b86d53a41be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:01:52 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 1 16:01:52 2021 -0800","stats":{"files_changed":1,"insertions":14,"deletions":7,"files":["jc/parsers/iostat.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":21}]},"message":"fixes for ubunut","epoch":1638403312,"epoch_utc":null},{"commit":"406336c7185b539b5e00532b58146d5b1b73f259","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 13:53:31 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 1 13:53:31 2021 -0800","stats":{"files_changed":1,"insertions":44,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":44}]},"message":"add iostat example","epoch":1638395611,"epoch_utc":null},{"commit":"6665ffaeb8107e9db3b917db0663beaf44024533","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 10:59:07 2021 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Dec 1 10:59:07 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"remove python 3.6 from tests","epoch":1638385147,"epoch_utc":null},{"commit":"dcf552ca0c69aa5f0309a83dc33dee7c5ed81292","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 10:34:55 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 1 10:34:55 2021 -0800","stats":{"files_changed":1,"insertions":138,"deletions":47,"files":["jc/parsers/iostat.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":185}]},"message":"add _process and cleanup","epoch":1638383695,"epoch_utc":null},{"commit":"7a6ebf3c9555dd82df7dc0b71981cdd32ce0061d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 16:54:32 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 16:54:32 2021 -0800","stats":{"files_changed":2,"insertions":171,"deletions":0,"files":["jc/cli.py","jc/parsers/iostat.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/iostat.py","lines_changed":170}]},"message":"add iostat parser","epoch":1638320072,"epoch_utc":null},{"commit":"d2dc4a983c86c538e13e568b908072de4ca0daaf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 11:59:26 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 11:59:26 2021 -0800","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"changelog update","epoch":1638302366,"epoch_utc":null},{"commit":"1168259bc23862f671326d41f5282a3575205214","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 11:57:04 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 11:57:04 2021 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":3}]},"message":"add doc strings","epoch":1638302224,"epoch_utc":null},{"commit":"e8e4b46021557fbf5776c32dff46de022817fb6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 11:49:40 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 11:49:40 2021 -0800","stats":{"files_changed":5,"insertions":14,"deletions":19,"files":["jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":5},{"name":"jc/parsers/foo_s.py","lines_changed":7},{"name":"jc/parsers/ls_s.py","lines_changed":7},{"name":"jc/parsers/ping_s.py","lines_changed":7},{"name":"jc/parsers/vmstat_s.py","lines_changed":7}]},"message":"use jc.utils type checks","epoch":1638301780,"epoch_utc":null},{"commit":"12d2de22821fd8f57f4d412e62f53db3d89d5e30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 11:43:06 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 11:43:06 2021 -0800","stats":{"files_changed":77,"insertions":181,"deletions":165,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":4},{"name":"jc/parsers/airport.py","lines_changed":4},{"name":"jc/parsers/airport_s.py","lines_changed":4},{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/blkid.py","lines_changed":4},{"name":"jc/parsers/cksum.py","lines_changed":4},{"name":"jc/parsers/crontab.py","lines_changed":4},{"name":"jc/parsers/crontab_u.py","lines_changed":4},{"name":"jc/parsers/csv.py","lines_changed":4},{"name":"jc/parsers/date.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":5},{"name":"jc/parsers/dir.py","lines_changed":4},{"name":"jc/parsers/dmidecode.py","lines_changed":4},{"name":"jc/parsers/dpkg_l.py","lines_changed":4},{"name":"jc/parsers/du.py","lines_changed":4},{"name":"jc/parsers/env.py","lines_changed":4},{"name":"jc/parsers/file.py","lines_changed":4},{"name":"jc/parsers/finger.py","lines_changed":4},{"name":"jc/parsers/foo.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":4},{"name":"jc/parsers/fstab.py","lines_changed":4},{"name":"jc/parsers/group.py","lines_changed":4},{"name":"jc/parsers/gshadow.py","lines_changed":4},{"name":"jc/parsers/hash.py","lines_changed":4},{"name":"jc/parsers/hashsum.py","lines_changed":4},{"name":"jc/parsers/hciconfig.py","lines_changed":4},{"name":"jc/parsers/history.py","lines_changed":4},{"name":"jc/parsers/hosts.py","lines_changed":4},{"name":"jc/parsers/id.py","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":4},{"name":"jc/parsers/ini.py","lines_changed":4},{"name":"jc/parsers/iptables.py","lines_changed":4},{"name":"jc/parsers/iw_scan.py","lines_changed":4},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/last.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4},{"name":"jc/parsers/lsblk.py","lines_changed":4},{"name":"jc/parsers/lsmod.py","lines_changed":4},{"name":"jc/parsers/lsof.py","lines_changed":4},{"name":"jc/parsers/lsusb.py","lines_changed":4},{"name":"jc/parsers/mount.py","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":4},{"name":"jc/parsers/ntpq.py","lines_changed":4},{"name":"jc/parsers/passwd.py","lines_changed":4},{"name":"jc/parsers/ping.py","lines_changed":4},{"name":"jc/parsers/pip_list.py","lines_changed":4},{"name":"jc/parsers/pip_show.py","lines_changed":4},{"name":"jc/parsers/ps.py","lines_changed":4},{"name":"jc/parsers/route.py","lines_changed":4},{"name":"jc/parsers/rpm_qi.py","lines_changed":4},{"name":"jc/parsers/sfdisk.py","lines_changed":4},{"name":"jc/parsers/shadow.py","lines_changed":4},{"name":"jc/parsers/ss.py","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"jc/parsers/sysctl.py","lines_changed":4},{"name":"jc/parsers/systemctl.py","lines_changed":4},{"name":"jc/parsers/systemctl_lj.py","lines_changed":4},{"name":"jc/parsers/systemctl_ls.py","lines_changed":4},{"name":"jc/parsers/systemctl_luf.py","lines_changed":4},{"name":"jc/parsers/systeminfo.py","lines_changed":4},{"name":"jc/parsers/time.py","lines_changed":4},{"name":"jc/parsers/timedatectl.py","lines_changed":4},{"name":"jc/parsers/tracepath.py","lines_changed":4},{"name":"jc/parsers/traceroute.py","lines_changed":4},{"name":"jc/parsers/ufw.py","lines_changed":4},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":4},{"name":"jc/parsers/uname.py","lines_changed":4},{"name":"jc/parsers/upower.py","lines_changed":4},{"name":"jc/parsers/uptime.py","lines_changed":4},{"name":"jc/parsers/vmstat.py","lines_changed":4},{"name":"jc/parsers/w.py","lines_changed":4},{"name":"jc/parsers/wc.py","lines_changed":4},{"name":"jc/parsers/who.py","lines_changed":4},{"name":"jc/parsers/xml.py","lines_changed":4},{"name":"jc/parsers/yaml.py","lines_changed":4},{"name":"jc/utils.py","lines_changed":40}]},"message":"use jc.utils.input_type_check() and simplify compatibility check","epoch":1638301386,"epoch_utc":null},{"commit":"0e2fe401e1c49a9f947d7d17b72cfc4e90787f47","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 10:08:27 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 10:08:27 2021 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]},"message":"version bump","epoch":1638295707,"epoch_utc":null},{"commit":"14247adb0ae007924ca551a706eb0cfdbae97a41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 10:03:59 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 10:03:59 2021 -0800","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["jc/parsers/csv_s.py","tests/test_csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":7},{"name":"tests/test_csv_s.py","lines_changed":2}]},"message":"add input type checks","epoch":1638295439,"epoch_utc":null},{"commit":"3a9f0934c41c85ea7fa87165b9559f08814645cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 09:56:33 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 09:56:33 2021 -0800","stats":{"files_changed":2,"insertions":5,"deletions":3,"files":["jc/parsers/ls_s.py","tests/test_ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":6},{"name":"tests/test_ls_s.py","lines_changed":2}]},"message":"add input type checks","epoch":1638294993,"epoch_utc":null},{"commit":"caf0a5c8713bf0d72951a2c6fd5a2c62c9eb59d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 09:51:27 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 09:51:27 2021 -0800","stats":{"files_changed":2,"insertions":7,"deletions":4,"files":["jc/parsers/vmstat_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":9},{"name":"tests/test_vmstat_s.py","lines_changed":2}]},"message":"add input type checking","epoch":1638294687,"epoch_utc":null},{"commit":"cfb58b1cf3e3028f8e03fdd93f0165cf8d230e1e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 09:41:16 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 09:41:16 2021 -0800","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":8}]},"message":"add input type checks","epoch":1638294076,"epoch_utc":null},{"commit":"975cf195cc02774f50460ca479d9ebb7b73c7870","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 09:40:49 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 09:40:49 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":1}]},"message":"formatting","epoch":1638294049,"epoch_utc":null},{"commit":"8a46a259a36efc55bb0b2141acb9dd5ae52b7725","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 09:19:51 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 09:19:51 2021 -0800","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["jc/parsers/ping_s.py","tests/test_ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":8},{"name":"tests/test_ping_s.py","lines_changed":2}]},"message":"add input type checks","epoch":1638292791,"epoch_utc":null},{"commit":"e395142e599aa78b4a7ec80dcc3f8ccf279f97b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 29 16:45:22 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 29 16:45:22 2021 -0800","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1638233122,"epoch_utc":null},{"commit":"caaeaf0d67cf44f8d2651cc53a7528d3ef0c74d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 29 16:29:23 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 29 16:29:23 2021 -0800","stats":{"files_changed":76,"insertions":227,"deletions":227,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":6},{"name":"jc/parsers/airport.py","lines_changed":6},{"name":"jc/parsers/airport_s.py","lines_changed":6},{"name":"jc/parsers/arp.py","lines_changed":6},{"name":"jc/parsers/blkid.py","lines_changed":6},{"name":"jc/parsers/cksum.py","lines_changed":6},{"name":"jc/parsers/crontab.py","lines_changed":6},{"name":"jc/parsers/crontab_u.py","lines_changed":6},{"name":"jc/parsers/csv.py","lines_changed":6},{"name":"jc/parsers/date.py","lines_changed":6},{"name":"jc/parsers/df.py","lines_changed":6},{"name":"jc/parsers/dig.py","lines_changed":6},{"name":"jc/parsers/dir.py","lines_changed":6},{"name":"jc/parsers/dmidecode.py","lines_changed":6},{"name":"jc/parsers/dpkg_l.py","lines_changed":6},{"name":"jc/parsers/du.py","lines_changed":6},{"name":"jc/parsers/env.py","lines_changed":6},{"name":"jc/parsers/file.py","lines_changed":6},{"name":"jc/parsers/finger.py","lines_changed":6},{"name":"jc/parsers/foo.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":6},{"name":"jc/parsers/fstab.py","lines_changed":6},{"name":"jc/parsers/group.py","lines_changed":6},{"name":"jc/parsers/gshadow.py","lines_changed":6},{"name":"jc/parsers/hash.py","lines_changed":6},{"name":"jc/parsers/hashsum.py","lines_changed":6},{"name":"jc/parsers/hciconfig.py","lines_changed":6},{"name":"jc/parsers/history.py","lines_changed":6},{"name":"jc/parsers/hosts.py","lines_changed":6},{"name":"jc/parsers/id.py","lines_changed":6},{"name":"jc/parsers/ifconfig.py","lines_changed":6},{"name":"jc/parsers/ini.py","lines_changed":6},{"name":"jc/parsers/iptables.py","lines_changed":6},{"name":"jc/parsers/iw_scan.py","lines_changed":6},{"name":"jc/parsers/jobs.py","lines_changed":6},{"name":"jc/parsers/last.py","lines_changed":6},{"name":"jc/parsers/ls.py","lines_changed":6},{"name":"jc/parsers/lsblk.py","lines_changed":6},{"name":"jc/parsers/lsmod.py","lines_changed":6},{"name":"jc/parsers/lsof.py","lines_changed":6},{"name":"jc/parsers/lsusb.py","lines_changed":6},{"name":"jc/parsers/mount.py","lines_changed":6},{"name":"jc/parsers/netstat.py","lines_changed":6},{"name":"jc/parsers/ntpq.py","lines_changed":6},{"name":"jc/parsers/passwd.py","lines_changed":6},{"name":"jc/parsers/ping.py","lines_changed":6},{"name":"jc/parsers/pip_list.py","lines_changed":6},{"name":"jc/parsers/pip_show.py","lines_changed":6},{"name":"jc/parsers/ps.py","lines_changed":6},{"name":"jc/parsers/route.py","lines_changed":6},{"name":"jc/parsers/rpm_qi.py","lines_changed":6},{"name":"jc/parsers/sfdisk.py","lines_changed":6},{"name":"jc/parsers/shadow.py","lines_changed":6},{"name":"jc/parsers/ss.py","lines_changed":6},{"name":"jc/parsers/stat.py","lines_changed":6},{"name":"jc/parsers/sysctl.py","lines_changed":6},{"name":"jc/parsers/systemctl.py","lines_changed":6},{"name":"jc/parsers/systemctl_lj.py","lines_changed":6},{"name":"jc/parsers/systemctl_ls.py","lines_changed":6},{"name":"jc/parsers/systemctl_luf.py","lines_changed":6},{"name":"jc/parsers/systeminfo.py","lines_changed":6},{"name":"jc/parsers/time.py","lines_changed":6},{"name":"jc/parsers/timedatectl.py","lines_changed":6},{"name":"jc/parsers/tracepath.py","lines_changed":6},{"name":"jc/parsers/traceroute.py","lines_changed":6},{"name":"jc/parsers/ufw.py","lines_changed":6},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":6},{"name":"jc/parsers/uname.py","lines_changed":6},{"name":"jc/parsers/upower.py","lines_changed":6},{"name":"jc/parsers/uptime.py","lines_changed":6},{"name":"jc/parsers/vmstat.py","lines_changed":6},{"name":"jc/parsers/w.py","lines_changed":6},{"name":"jc/parsers/wc.py","lines_changed":6},{"name":"jc/parsers/who.py","lines_changed":6},{"name":"jc/parsers/xml.py","lines_changed":6},{"name":"jc/parsers/yaml.py","lines_changed":6}]},"message":"add 'str' type check on input","epoch":1638232163,"epoch_utc":null},{"commit":"21e69a7cbf62240238f6fb78e874dda6ce2e922a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 24 19:33:07 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 24 19:33:07 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"],"file_stats":[{"name":".gitignore","lines_changed":1}]},"message":"ignore _config.yml","epoch":1637811187,"epoch_utc":null},{"commit":"603964935b58e02cf0614cf67ffacc6d94755e05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 24 19:30:10 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 24 19:30:10 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"remove trailing whitespace","epoch":1637811010,"epoch_utc":null},{"commit":"47eb83ae55b9892716fff712bd2be21b6191b552","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 24 13:32:51 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 24 13:32:51 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"],"file_stats":[{"name":".gitignore","lines_changed":1}]},"message":"add .vscode","epoch":1637789571,"epoch_utc":null},{"commit":"fc0ce6c95923ab124961e695a26c0b68dd0f359f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 22 09:45:14 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 22 09:45:14 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add streaming parser to custom parsers info","epoch":1637603114,"epoch_utc":null},{"commit":"077a29fb4eedcfccb026498c5c3a64b7b7601363","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 22 09:36:58 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 22 09:36:58 2021 -0800","stats":{"files_changed":2,"insertions":14,"deletions":2,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":8},{"name":"jc/parsers/csv_s.py","lines_changed":8}]},"message":"add _jc_meta field info","epoch":1637602618,"epoch_utc":null},{"commit":"8568d0d328706a7a5b1476452e078d8cbe7b7391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 22 09:10:11 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 22 09:10:11 2021 -0800","stats":{"files_changed":3,"insertions":7,"deletions":3,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":4},{"name":"jc/parsers/csv_s.py","lines_changed":4},{"name":"man/jc.1","lines_changed":2}]},"message":"fix csv_s documentation","epoch":1637601011,"epoch_utc":null},{"commit":"597d39c28ea0c0fe3b072413e9d91ab5e27b62bd","merge":"b59e38c eb888dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 18 06:52:01 2021 -1000","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Nov 18 06:52:01 2021 -1000","message":"Merge pull request #180 from kellyjonbrazil/dev\n\nDev v1.17.2","epoch":1637247121,"epoch_utc":null},{"commit":"eb888dcbbcf83c9197bd59aab72f65ea6eb622ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 18 08:48:03 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 18 08:48:03 2021 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["jc/__init__.py","man/jc.1","setup.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1637254083,"epoch_utc":null},{"commit":"d1b9ac0841b15ee15690c4066453a322618320ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 18 08:41:52 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 18 08:41:52 2021 -0800","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/df.md","docs/parsers/netstat.md","docs/parsers/ping.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1637253712,"epoch_utc":null},{"commit":"89a6d9c5c39b74f1b040f410659bfd7ae1a902d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 17 12:03:40 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 17 12:03:40 2021 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":5}]},"message":"add key-check to restore previous behavior even with non-df data","epoch":1637179420,"epoch_utc":null},{"commit":"85d983761637129cb85abfb0bbdde7c507061cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 17 11:41:54 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 17 11:41:54 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add df info","epoch":1637178114,"epoch_utc":null},{"commit":"cd7731484d826d84d835ecd460d746e78cadc5fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 17 11:26:42 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 17 11:26:42 2021 -0800","stats":{"files_changed":4,"insertions":62,"deletions":2,"files":["jc/parsers/df.py","tests/fixtures/generic/df-long-filesystem.json","tests/fixtures/generic/df-long-filesystem.out","tests/test_df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":47},{"name":"tests/fixtures/generic/df-long-filesystem.json","lines_changed":1},{"name":"tests/fixtures/generic/df-long-filesystem.out","lines_changed":4},{"name":"tests/test_df.py","lines_changed":12}]},"message":"fix for cases where the Filesystem data overflows the column length (happens on older versions of df)","epoch":1637177202,"epoch_utc":null},{"commit":"086da16b1743c16a5ccdd102f889fb31f99e3caa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 15 13:05:53 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 15 13:05:53 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":2}]},"message":"version bump","epoch":1637010353,"epoch_utc":null},{"commit":"20830528f04a5ecbe78420d8008249b089667767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 15 12:52:43 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 15 12:52:43 2021 -0800","stats":{"files_changed":4,"insertions":28,"deletions":0,"files":["CHANGELOG","tests/fixtures/generic/netstat-old.json","tests/fixtures/generic/netstat-old.out","tests/test_netstat.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"tests/fixtures/generic/netstat-old.json","lines_changed":1},{"name":"tests/fixtures/generic/netstat-old.out","lines_changed":14},{"name":"tests/test_netstat.py","lines_changed":12}]},"message":"add test for older netstat version fix","epoch":1637009563,"epoch_utc":null},{"commit":"83371edd8fe3d23dfa92fc707604086522c85ab9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 15 12:25:22 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 15 12:25:22 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat_linux.py"],"file_stats":[{"name":"jc/parsers/netstat_linux.py","lines_changed":2}]},"message":"add space before inode to compensate for removed dash","epoch":1637007922,"epoch_utc":null},{"commit":"364a81decc16742e3caa070d90b1d605d96fe2c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 4 10:25:51 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 4 10:25:51 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":2}]},"message":"version bump","epoch":1636046751,"epoch_utc":null},{"commit":"ef09592ad3e5c9a77c1bdebe8f876fc4dde54834","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 4 10:21:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 4 10:21:38 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"update for 1.17.2","epoch":1636046498,"epoch_utc":null},{"commit":"4a86e109ccb254d5195b782f84f3967c96ef726c","merge":"5ba22da 7fa5391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 4 10:18:47 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Nov 4 10:18:47 2021 -0700","message":"Merge pull request #179 from shaikustin/ping-alpine-linux\n\nsupport alpine linux ping","epoch":1636046327,"epoch_utc":null},{"commit":"7fa5391b6613e62689c624041e03f9750c9c7972","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 4 10:13:44 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Nov 4 10:13:44 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_ping.py"],"file_stats":[{"name":"tests/test_ping.py","lines_changed":2}]},"message":"change alpine ping6 to ping","epoch":1636046024,"epoch_utc":null},{"commit":"9b53ba5714819ff760f2d4546f5d2ee4d521c080","author":"shaik","author_email":"shai.kustin@torq.io","date":"Thu Nov 4 13:42:48 2021 +0200","commit_by":"shaik","commit_by_email":"shai.kustin@torq.io","commit_by_date":"Thu Nov 4 13:42:48 2021 +0200","stats":{"files_changed":6,"insertions":45,"deletions":1,"files":["jc/parsers/ping.py",".../fixtures/alpine-linux-3.13/ping-hostname.json","tests/fixtures/alpine-linux-3.13/ping-hostname.out","tests/fixtures/alpine-linux-3.13/ping-ip.json","tests/fixtures/alpine-linux-3.13/ping-ip.out","tests/test_ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":2},{"name":".../fixtures/alpine-linux-3.13/ping-hostname.json","lines_changed":1},{"name":"tests/fixtures/alpine-linux-3.13/ping-hostname.out","lines_changed":9},{"name":"tests/fixtures/alpine-linux-3.13/ping-ip.json","lines_changed":1},{"name":"tests/fixtures/alpine-linux-3.13/ping-ip.out","lines_changed":6},{"name":"tests/test_ping.py","lines_changed":27}]},"message":"support alpine linux ping","epoch":1636058568,"epoch_utc":null},{"commit":"b59e38cfd2c8a7f5868e05d5562557b1c27e5e56","merge":"30cff5f 5ba22da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 30 14:02:25 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sat Oct 30 14:02:25 2021 -0700","message":"Merge pull request #176 from kellyjonbrazil/dev\n\nDev v1.17.1","epoch":1635627745,"epoch_utc":null},{"commit":"5ba22dae597b9d154ca0a82f71cfbd8d8a6325db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 30 13:57:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 30 13:57:36 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2}]},"message":"add JSON lines info","epoch":1635627456,"epoch_utc":null},{"commit":"4232e523acc523e510b4881d2a57a95b88ec8c8b","merge":"bee80b3 30cff5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 30 13:49:45 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sat Oct 30 13:49:45 2021 -0700","message":"Merge branch 'master' into dev","epoch":1635626985,"epoch_utc":null},{"commit":"bee80b35d2b8c15e6233f2798e9c02a11e9e1e9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 30 13:47:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 30 13:47:21 2021 -0700","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["CHANGELOG","docs/parsers/csv_s.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":8},{"name":"man/jc.1","lines_changed":2}]},"message":"update for version bump","epoch":1635626841,"epoch_utc":null},{"commit":"c32395f6950d6294770ee93e8bf4d79c7d275ac3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 27 12:54:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 27 12:54:20 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":2}]},"message":"linting","epoch":1635364460,"epoch_utc":null},{"commit":"735c5e1078cc27b5cba03b8ebbae15aeca6b8fbd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 12:26:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 26 12:26:23 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["tests/test_csv_s.py"],"file_stats":[{"name":"tests/test_csv_s.py","lines_changed":5}]},"message":"update comments for ParseError test: https://bugs.python.org/issue45617","epoch":1635276383,"epoch_utc":null},{"commit":"d09c94b292ca3beec92a00f8a51b7259dd30a1e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 12:24:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 26 12:24:49 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add python 3.10 testing info","epoch":1635276289,"epoch_utc":null},{"commit":"4d04866f48f72b9ea0d213dc1533729d3b68a503","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 12:24:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 26 12:24:37 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":1}]},"message":"add python bug https://bugs.python.org/issue45617 info","epoch":1635276277,"epoch_utc":null},{"commit":"a2d90f4dfcdc2cb00c6c0fa957493c95a21e256b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 10:04:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 26 10:04:39 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_csv_s.py"],"file_stats":[{"name":"tests/test_csv_s.py","lines_changed":2}]},"message":"force test","epoch":1635267879,"epoch_utc":null},{"commit":"93a5002c8b530bd6f5f81e5d8595cde1f836ae41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 10:01:02 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Oct 26 10:01:02 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"fix 3.10.0 version number","epoch":1635267662,"epoch_utc":null},{"commit":"23bf5227a4c39ea017e55fc21150331e1af6fdb7","merge":"77c96fa 3f5a1f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 07:44:04 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 26 07:44:04 2021 -0700","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev","epoch":1635259444,"epoch_utc":null},{"commit":"77c96fa2a96148221bde7d2274e0dfb5386a166f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 07:43:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 26 07:43:47 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["tests/test_csv_s.py"],"file_stats":[{"name":"tests/test_csv_s.py","lines_changed":3}]},"message":"try tests on python 3.10","epoch":1635259427,"epoch_utc":null},{"commit":"3f5a1f015e9c0807e227b9f7300592e25502e014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 07:42:37 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Oct 26 07:42:37 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"add python 3.10","epoch":1635259357,"epoch_utc":null},{"commit":"b280c4fc18e60a85ab212b09aa5bf3a05a0eceff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 07:36:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 26 07:36:44 2021 -0700","stats":{"files_changed":2,"insertions":11,"deletions":19,"files":[".../fixtures/generic/csv-insurance-streaming.json","tests/test_csv_s.py"],"file_stats":[{"name":".../fixtures/generic/csv-insurance-streaming.json","lines_changed":1},{"name":"tests/test_csv_s.py","lines_changed":29}]},"message":"add ParseError test to streaming csv parser","epoch":1635259004,"epoch_utc":null},{"commit":"3ab9b43a2eebf535be98c94810ac474bf32ec515","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 07:36:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 26 07:36:23 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":14}]},"message":"raise ParseError on newline bug","epoch":1635258983,"epoch_utc":null},{"commit":"46f568414a5c8d2f135486e86d0ada48cfcefeb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 25 11:35:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 25 11:35:01 2021 -0700","stats":{"files_changed":3,"insertions":96,"deletions":89,"files":["tests/test_ls_s.py","tests/test_ping_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"tests/test_ls_s.py","lines_changed":26},{"name":"tests/test_ping_s.py","lines_changed":138},{"name":"tests/test_vmstat_s.py","lines_changed":21}]},"message":"change streaming parser test names","epoch":1635186901,"epoch_utc":null},{"commit":"cba2fd299fff09a551b780e064a6e22bdf7e539a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 25 11:03:32 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 25 11:03:32 2021 -0700","stats":{"files_changed":9,"insertions":75,"deletions":61,"files":[".../generic/csv-10k-sales-records-streaming.json","tests/fixtures/generic/csv-deniro-streaming.json","tests/fixtures/generic/csv-example-streaming.json","tests/fixtures/generic/csv-flyrna-streaming.json","tests/fixtures/generic/csv-flyrna2-streaming.json",".../fixtures/generic/csv-homes-pipe-streaming.json","tests/fixtures/generic/csv-homes-streaming.json",".../fixtures/generic/csv-insurance-streaming.json","tests/test_csv_s.py"],"file_stats":[{"name":".../generic/csv-10k-sales-records-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-deniro-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-example-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna2-streaming.json","lines_changed":1},{"name":".../fixtures/generic/csv-homes-pipe-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-homes-streaming.json","lines_changed":1},{"name":".../fixtures/generic/csv-insurance-streaming.json","lines_changed":1},{"name":"tests/test_csv_s.py","lines_changed":128}]},"message":"add tests","epoch":1635185012,"epoch_utc":null},{"commit":"1e6e44f656f1bbb277eb38fb485f7b48e3b9e40b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 25 11:03:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 25 11:03:21 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":5}]},"message":"fix for piping data with non-platform newlines (e.g. windows csv files on unix)","epoch":1635185001,"epoch_utc":null},{"commit":"acac0399946d9781193e9350dd7109f1dd3999fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 25 10:06:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 25 10:06:01 2021 -0700","stats":{"files_changed":3,"insertions":149,"deletions":0,"files":["tests/fixtures/generic/csv-biostats-streaming.json","tests/fixtures/generic/csv-cities-streaming.json","tests/test_csv_s.py"],"file_stats":[{"name":"tests/fixtures/generic/csv-biostats-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-cities-streaming.json","lines_changed":1},{"name":"tests/test_csv_s.py","lines_changed":147}]},"message":"working tests","epoch":1635181561,"epoch_utc":null},{"commit":"50a3b340164b3139f04f67a2bee16e5343c8a2da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 25 10:05:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 25 10:05:39 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":8,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":13}]},"message":"optimizations and use iter() so we can exhaust data coming from list objects","epoch":1635181539,"epoch_utc":null},{"commit":"b45396070cf28fa36ecb44acd7be3e3bb81a712d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 24 13:14:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Oct 24 13:14:05 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_vmstat_s.py"],"file_stats":[{"name":"tests/test_vmstat_s.py","lines_changed":2}]},"message":"update comment","epoch":1635106445,"epoch_utc":null},{"commit":"218b9aec8ac397e26e6cd4ff407f3d10ef88ea9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 24 13:10:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Oct 24 13:10:47 2021 -0700","stats":{"files_changed":4,"insertions":87,"deletions":48,"files":["README.md","docs/parsers/csv_s.md","jc/parsers/csv_s.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/csv_s.md","lines_changed":75},{"name":"jc/parsers/csv_s.py","lines_changed":52},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update for streaming CSV parser","epoch":1635106247,"epoch_utc":null},{"commit":"2b887debc647bd533040e392465967d12869cb02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 24 12:24:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Oct 24 12:24:44 2021 -0700","stats":{"files_changed":4,"insertions":10172,"deletions":1,"files":["CHANGELOG","jc/cli.py","jc/parsers/csv_s.py","tests/fixtures/generic/csv-10k-sales-records.csv"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/csv_s.py","lines_changed":168},{"name":"tests/fixtures/generic/csv-10k-sales-records.csv","lines_changed":10001}]},"message":"add csv streaming parser","epoch":1635103484,"epoch_utc":null},{"commit":"0313e3f8ca0e22e1575192d765d5afedf48e94df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 24 11:21:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Oct 24 11:21:47 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":6,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":15}]},"message":"linting","epoch":1635099707,"epoch_utc":null},{"commit":"1669e6e20c3af3d28968558b76d0901a56775ac0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 24 10:58:13 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Oct 24 10:58:13 2021 -0700","stats":{"files_changed":1,"insertions":23,"deletions":28,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":51}]},"message":"linting","epoch":1635098293,"epoch_utc":null},{"commit":"ef6de75dda90c7221d53e0e0a942f0cac2247354","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 13:11:22 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 13:11:22 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":4}]},"message":"add vmstat timestamp tests to utils","epoch":1635019882,"epoch_utc":null},{"commit":"a6bcec425a3f44ba3c7cd06b5ebaf522b66df109","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:55:14 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 12:55:14 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":2}]},"message":"comment update","epoch":1635018914,"epoch_utc":null},{"commit":"596ad9a64d002ced212b08512126e52707fe73d2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:47:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 12:47:44 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":2}]},"message":"update comment","epoch":1635018464,"epoch_utc":null},{"commit":"7a91c93319f75c37ba6bf268d8270947f0bf8b22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:40:24 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 12:40:24 2021 -0700","stats":{"files_changed":1,"insertions":122,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":122}]},"message":"add lsusb","epoch":1635018024,"epoch_utc":null},{"commit":"b5f7b35f89197879a9f13bd8fa5d2a0c77cc059a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:30:18 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 12:30:18 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":2}]},"message":"comment update","epoch":1635017418,"epoch_utc":null},{"commit":"2f47fb7f14c4ff0e1c835897d94ee81d14590aba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:24:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 12:24:35 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["tests/test_uname.py"],"file_stats":[{"name":"tests/test_uname.py","lines_changed":5}]},"message":"fix ParseError tests","epoch":1635017075,"epoch_utc":null},{"commit":"1b214c403657a50689f2a04892ce836dea669a1d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:24:11 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 12:24:11 2021 -0700","stats":{"files_changed":3,"insertions":30,"deletions":0,"files":["jc/parsers/lsusb.py","tests/fixtures/generic/lsusb-t.out","tests/test_lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":5},{"name":"tests/fixtures/generic/lsusb-t.out","lines_changed":15},{"name":"tests/test_lsusb.py","lines_changed":10}]},"message":"raise ParseError if -t option is detected. add test","epoch":1635017051,"epoch_utc":null},{"commit":"8f94f8acc6bb53bbb19ba150551c7df2183a8863","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 11:56:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 11:56:12 2021 -0700","stats":{"files_changed":11,"insertions":384,"deletions":3,"files":["README.md","docs/parsers/file.md","docs/parsers/lsusb.md","docs/parsers/uname.md","man/jc.1","tests/fixtures/centos-7.7/lsusb-v-single.json","tests/fixtures/centos-7.7/lsusb-v.json","tests/fixtures/centos-7.7/lsusb.json","tests/fixtures/generic/lsusb-test-attributes.json","tests/fixtures/generic/lsusb-test-attributes2.json","tests/test_lsusb.py"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":288},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"man/jc.1","lines_changed":7},{"name":"tests/fixtures/centos-7.7/lsusb-v-single.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsusb-v.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsusb.json","lines_changed":1},{"name":"tests/fixtures/generic/lsusb-test-attributes.json","lines_changed":1},{"name":"tests/fixtures/generic/lsusb-test-attributes2.json","lines_changed":1},{"name":"tests/test_lsusb.py","lines_changed":82}]},"message":"add tests and update docs","epoch":1635015372,"epoch_utc":null},{"commit":"3a2a69cfa55e2f40d7536d923170a5cfc986998e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 11:39:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 11:39:08 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":4}]},"message":"formatting","epoch":1635014348,"epoch_utc":null},{"commit":"f599c659881248b79c6dbc86d85a61311c9d3434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 11:08:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 11:08:26 2021 -0700","stats":{"files_changed":2,"insertions":464,"deletions":0,"files":["tests/fixtures/generic/lsusb-test-attributes.out","tests/fixtures/generic/lsusb-test-attributes2.out"],"file_stats":[{"name":"tests/fixtures/generic/lsusb-test-attributes.out","lines_changed":116},{"name":"tests/fixtures/generic/lsusb-test-attributes2.out","lines_changed":348}]},"message":"add stress test examples","epoch":1635012506,"epoch_utc":null},{"commit":"ad12849fd9fc2177afb30740acc63cf284dc394b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 11:08:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 11:08:05 2021 -0700","stats":{"files_changed":1,"insertions":138,"deletions":26,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":164}]},"message":"update docs example and","epoch":1635012485,"epoch_utc":null},{"commit":"f36b3789e8df6673207d6c2d3d0796acfdfe011d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:39:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 22 15:39:02 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":4}]},"message":"formatting","epoch":1634942342,"epoch_utc":null},{"commit":"6d18c0ba61cd188dbff736f1be47b7362c841687","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:37:40 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 22 15:37:40 2021 -0700","stats":{"files_changed":1,"insertions":47,"deletions":47,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":94}]},"message":"change variable name last_attribute and last_attr to last_item","epoch":1634942260,"epoch_utc":null},{"commit":"17097abec9567a58b5a5f7bbed11ecfd69cbd28c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:28:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 22 15:28:44 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":6,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":8}]},"message":"formatting","epoch":1634941724,"epoch_utc":null},{"commit":"b7ddd3b285f205211394edc70b611171cf72a4c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:23:04 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 22 15:23:04 2021 -0700","stats":{"files_changed":1,"insertions":22,"deletions":22,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":44}]},"message":"change variable names","epoch":1634941384,"epoch_utc":null},{"commit":"75b23f62c9d7b33907af92964d1a6234332fbc78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:18:55 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 22 15:18:55 2021 -0700","stats":{"files_changed":1,"insertions":35,"deletions":7,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":42}]},"message":"working configuration_descriptor and device_descriptor attributes","epoch":1634941135,"epoch_utc":null},{"commit":"f88967b2a59d79e053554d1e141f71e9d2d87456","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:02:04 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 22 15:02:04 2021 -0700","stats":{"files_changed":1,"insertions":126,"deletions":21,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":147}]},"message":"add attribute lists up to interface_association","epoch":1634940124,"epoch_utc":null},{"commit":"ba2846664b35b2e94aa905431c55c029b24a64e3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 13:40:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 22 13:40:01 2021 -0700","stats":{"files_changed":1,"insertions":22,"deletions":2,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":24}]},"message":"edpoint_descriptors attributes working","epoch":1634935201,"epoch_utc":null},{"commit":"10dba37ca2624e05eff246ef49df8ebd3f275d86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 12:49:57 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 22 12:49:57 2021 -0700","stats":{"files_changed":1,"insertions":28,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":29}]},"message":"hub_descriptor attributes working","epoch":1634932197,"epoch_utc":null},{"commit":"0e6f938514965503f1d86d56c047f9f8fc03ac65","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 10:31:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 22 10:31:26 2021 -0700","stats":{"files_changed":1,"insertions":36,"deletions":45,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":81}]},"message":"working hub_port_status section","epoch":1634923886,"epoch_utc":null},{"commit":"159d87c1126f4d79d5e34837bc2c353a5445803b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 07:14:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 22 07:14:21 2021 -0700","stats":{"files_changed":3,"insertions":18,"deletions":7,"files":["jc/parsers/uname.py","tests/fixtures/centos-7.7/uname.out","tests/test_uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":11},{"name":"tests/fixtures/centos-7.7/uname.out","lines_changed":1},{"name":"tests/test_uname.py","lines_changed":13}]},"message":"add length guard and test for uname with no -a on linux","epoch":1634912061,"epoch_utc":null},{"commit":"9e7b1621cf232e9859bdf018737e536820f380a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 21 16:59:28 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 21 16:59:28 2021 -0700","stats":{"files_changed":1,"insertions":18,"deletions":18,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":36}]},"message":"device_status working","epoch":1634860768,"epoch_utc":null},{"commit":"2057817ef8fec85b2a978b682e7fe8bc16def828","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 20 15:59:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 20 15:59:27 2021 -0700","stats":{"files_changed":11,"insertions":89,"deletions":0,"files":["tests/fixtures/debian10/uname-a.json","tests/fixtures/debian10/uname-a.out","tests/fixtures/freebsd12/uname-a.json","tests/fixtures/freebsd12/uname-a.out","tests/fixtures/freebsd12/uname-a2.json","tests/fixtures/freebsd12/uname-a2.out","tests/fixtures/generic/uname-a-different-proc.json","tests/fixtures/generic/uname-a-different-proc.out","tests/fixtures/generic/uname-a.json","tests/fixtures/generic/uname-a.out","tests/test_uname.py"],"file_stats":[{"name":"tests/fixtures/debian10/uname-a.json","lines_changed":10},{"name":"tests/fixtures/debian10/uname-a.out","lines_changed":2},{"name":"tests/fixtures/freebsd12/uname-a.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/uname-a.out","lines_changed":2},{"name":"tests/fixtures/freebsd12/uname-a2.json","lines_changed":7},{"name":"tests/fixtures/freebsd12/uname-a2.out","lines_changed":2},{"name":"tests/fixtures/generic/uname-a-different-proc.json","lines_changed":1},{"name":"tests/fixtures/generic/uname-a-different-proc.out","lines_changed":1},{"name":"tests/fixtures/generic/uname-a.json","lines_changed":1},{"name":"tests/fixtures/generic/uname-a.out","lines_changed":2},{"name":"tests/test_uname.py","lines_changed":60}]},"message":"add uname tests","epoch":1634770767,"epoch_utc":null},{"commit":"a1eabad2d37bb0d0e9407edf7305e223eba67da2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 20 15:58:43 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 20 15:58:43 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":6}]},"message":"add comments","epoch":1634770723,"epoch_utc":null},{"commit":"92bf2b1ca2a172d3977d6e3c36b5ca1a8c2bab63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 20 15:27:14 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 20 15:27:14 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":20,"files":["CHANGELOG","jc/parsers/uname.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":26}]},"message":"simplify fixup logic for uname","epoch":1634768834,"epoch_utc":null},{"commit":"2b2123a4ba9b77d2089d367fe85dcb5d2857a295","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 20 07:34:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 20 07:34:37 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","jc/parsers/uname.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/parsers/uname.py","lines_changed":4}]},"message":"add FreeBSD support","epoch":1634740477,"epoch_utc":null},{"commit":"908b2f9200ddcce4beb531a3c90908786b6a5b02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 19 16:16:25 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 19 16:16:25 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"add items","epoch":1634685385,"epoch_utc":null},{"commit":"deff0c7bfdf942b8d7e7bd140219e08bf80a50cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 19 16:05:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 19 16:05:10 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":5,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":6}]},"message":"remove print debug","epoch":1634684710,"epoch_utc":null},{"commit":"7cd01efa64029775042a2c145997ce30ef6b4f6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 19 16:01:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 19 16:01:56 2021 -0700","stats":{"files_changed":1,"insertions":25,"deletions":1,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":26}]},"message":"fixup for cases where the 'process' and/or 'machine' fields are blank on linux","epoch":1634684516,"epoch_utc":null},{"commit":"2dbe56456bbea2bdfce7eacbf8b9f10a1b249f55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 15 11:43:15 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 15 11:43:15 2021 -0700","stats":{"files_changed":1,"insertions":49,"deletions":39,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":88}]},"message":"add nested_dict. start work on hub_port_status and device_status","epoch":1634323395,"epoch_utc":null},{"commit":"6078a411ef612be8bad012aa404f34ebd74a1fd7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 13 11:07:09 2021 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 13 11:07:09 2021 -0600","stats":{"files_changed":1,"insertions":79,"deletions":4,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":83}]},"message":"add initial schema doc","epoch":1634148429,"epoch_utc":null},{"commit":"4a3656562f161a51f5cb6f0e9ccd271859b78d62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 13 07:26:31 2021 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 13 07:26:31 2021 -0600","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":6}]},"message":"del null keys","epoch":1634135191,"epoch_utc":null},{"commit":"ba75989a24839907723ed7c3d7a497473d489a34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 22:51:45 2021 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 12 22:51:45 2021 -0600","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":10}]},"message":"update comments","epoch":1634104305,"epoch_utc":null},{"commit":"9e9e2c362894f0072ab839565829881d750c8912","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 22:40:39 2021 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 12 22:40:39 2021 -0600","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":4}]},"message":"move state instantiation before has_data test","epoch":1634103639,"epoch_utc":null},{"commit":"9a2a8c6b61a46a9bfb5a4492b86774a4a78672ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 22:38:03 2021 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 12 22:38:03 2021 -0600","stats":{"files_changed":1,"insertions":20,"deletions":52,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":72}]},"message":"shorten set_sections","epoch":1634103483,"epoch_utc":null},{"commit":"dae42ef1619441637672d634f9e5d7ab26115f09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 15:55:09 2021 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 12 15:55:09 2021 -0600","stats":{"files_changed":1,"insertions":18,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":19}]},"message":"add hub_port_status and device_status","epoch":1634079309,"epoch_utc":null},{"commit":"931f2cab78bda180443535c04b532d04c6e88dd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 12:38:40 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 12 12:38:40 2021 -0700","stats":{"files_changed":1,"insertions":14,"deletions":11,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":25}]},"message":"add hub_descriptor","epoch":1634067520,"epoch_utc":null},{"commit":"72b061bed4453686d264ccf8977cba6c2a4794ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 12:29:59 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 12 12:29:59 2021 -0700","stats":{"files_changed":1,"insertions":32,"deletions":8,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":40}]},"message":"add endpoint_descriptors","epoch":1634066999,"epoch_utc":null},{"commit":"29a7c73990d9620b15a4010d17fc9a9a859f44b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 11:24:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 12 11:24:49 2021 -0700","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":16}]},"message":"add hid_device_descriptor and report_descriptors","epoch":1634063089,"epoch_utc":null},{"commit":"2d1d68e3007f76d4c34ac07ae822935ab6021e79","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 09:57:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 12 09:57:47 2021 -0700","stats":{"files_changed":1,"insertions":87,"deletions":88,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":175}]},"message":"simplify populate_lists. Add CDC lists","epoch":1634057867,"epoch_utc":null},{"commit":"c5c1e170d1f502de5c76e9e481a23b26ffcaf237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 11 21:33:18 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 11 21:33:18 2021 -0700","stats":{"files_changed":1,"insertions":111,"deletions":76,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":187}]},"message":"interface descriptors working","epoch":1634013198,"epoch_utc":null},{"commit":"9c1bb66452838e704ef2277f313bb51a42dc03b9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 11 07:48:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 11 07:48:23 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":18}]},"message":"fix remove _state field during schema_populate","epoch":1633963703,"epoch_utc":null},{"commit":"a4f3306bae90fbc807fdd9ff2ce71e25d36a663f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 10 22:18:13 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Oct 10 22:18:13 2021 -0700","stats":{"files_changed":1,"insertions":69,"deletions":28,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":97}]},"message":"initial schema build. need to figure out why deleting _state from output_line causes exceptions","epoch":1633929493,"epoch_utc":null},{"commit":"1bc638b6ee7a820406ba4b84d3408f7cd4fe779d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 10 10:03:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Oct 10 10:03:39 2021 -0700","stats":{"files_changed":1,"insertions":36,"deletions":32,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":68}]},"message":"add bus_list and add all device_list data to the list","epoch":1633885419,"epoch_utc":null},{"commit":"9ad0cd9dae8822235c37159541ce72471eb4263e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 9 20:05:55 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 9 20:05:55 2021 -0700","stats":{"files_changed":1,"insertions":116,"deletions":211,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":327}]},"message":"now storing state within the objects to make building the schema (later) easier.","epoch":1633835155,"epoch_utc":null},{"commit":"6d4a4691276d8659253b2ac8f8bdbd71a1fece7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 6 22:03:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 6 22:03:16 2021 -0700","stats":{"files_changed":1,"insertions":356,"deletions":333,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":689}]},"message":"use class for state","epoch":1633582996,"epoch_utc":null},{"commit":"ed6997e3ff2e575a6d4daa7d7a2cbe7dddacdd4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 5 16:47:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 5 16:47:23 2021 -0700","stats":{"files_changed":2,"insertions":170,"deletions":34,"files":["jc/parsers/lsusb.py","tests/fixtures/centos-7.7/lsusb-v-single.out"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":104},{"name":"tests/fixtures/centos-7.7/lsusb-v-single.out","lines_changed":100}]},"message":"add interface_association section","epoch":1633477643,"epoch_utc":null},{"commit":"eb788fca6e25eea1fa8a43b22360c852ecf5af35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 5 14:59:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 5 14:59:49 2021 -0700","stats":{"files_changed":4,"insertions":919,"deletions":0,"files":["jc/cli.py","jc/parsers/lsusb.py","tests/fixtures/centos-7.7/lsusb-v.out","tests/fixtures/centos-7.7/lsusb.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/lsusb.py","lines_changed":404},{"name":"tests/fixtures/centos-7.7/lsusb-v.out","lines_changed":509},{"name":"tests/fixtures/centos-7.7/lsusb.out","lines_changed":5}]},"message":"somewhat working lsusb parser. needs a lot more TLC","epoch":1633471189,"epoch_utc":null},{"commit":"9186f5f37739012b8c04c776310a20ef55b1469f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 2 14:53:07 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 2 14:53:07 2021 -0700","stats":{"files_changed":7,"insertions":99,"deletions":4,"files":["CHANGELOG","jc/__init__.py","jc/parsers/file.py","setup.py","tests/fixtures/osx-10.14.6/file3.json","tests/fixtures/osx-10.14.6/file3.out","tests/test_file.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":11},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/file3.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/file3.out","lines_changed":72},{"name":"tests/test_file.py","lines_changed":12}]},"message":"fix file parser for gzip cases (has ': ' in the description, which is the delimiter)","epoch":1633211587,"epoch_utc":null},{"commit":"30cff5f28140a5b20a617c8145c13e43b7b6685b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 27 10:35:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 27 10:35:08 2021 -0700","stats":{"files_changed":8,"insertions":17,"deletions":3,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":4},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":4},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"add note that the streaming parser outputs JSON Lines","epoch":1632764108,"epoch_utc":null},{"commit":"b724e0969a0d6b22bed0c77eb8d629381179ea3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 20:22:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 26 20:22:16 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2}]},"message":"-qq instead of -q","epoch":1632712936,"epoch_utc":null},{"commit":"a62c49e8715873b068a96da5021ea24a783acd6b","merge":"77dcbc5 9b160f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 16:35:29 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Sep 26 16:35:29 2021 -0700","message":"Merge pull request #172 from kellyjonbrazil/master\n\nsync master to dev","epoch":1632699329,"epoch_utc":null},{"commit":"9b160f6279bbbf0c15413c98922eef137ba2f3f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 16:29:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 26 16:29:36 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]},"message":"link update","epoch":1632698976,"epoch_utc":null},{"commit":"338a4e2612f70bb3e2af31f61a7db75f647293fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 16:27:15 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 26 16:27:15 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]},"message":"formatting","epoch":1632698835,"epoch_utc":null},{"commit":"0140688750be61dd752059ee66734ab1c7a8f30e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 16:24:18 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 26 16:24:18 2021 -0700","stats":{"files_changed":6,"insertions":8,"deletions":4,"files":["README.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"link updates","epoch":1632698658,"epoch_utc":null},{"commit":"73e5ea98c1ca2b9299085e3832791162eca3b9ff","merge":"528aac7 77dcbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 14:55:18 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Sep 26 14:55:18 2021 -0700","message":"Merge pull request #170 from kellyjonbrazil/dev\n\njc v1.17.0 from dev","epoch":1632693318,"epoch_utc":null},{"commit":"77dcbc544da271edab5de5ad209117e98c846f9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 14:50:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 26 14:50:02 2021 -0700","stats":{"files_changed":3,"insertions":2,"deletions":3,"files":["CHANGELOG","jc/__init__.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"final doc update","epoch":1632693002,"epoch_utc":null},{"commit":"c7bcb0947ae32acc9cdba7a6975d2f2557f10a39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 13:20:42 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 26 13:20:42 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":4}]},"message":"indent subsequent error and warning lines","epoch":1632687642,"epoch_utc":null},{"commit":"5cd3f7f71d38b560a88dd6057e9c7a94991a3d71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 13:15:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 26 13:15:35 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":6}]},"message":"Add example to raise ParseError if there is no output data to yield","epoch":1632687335,"epoch_utc":null},{"commit":"5044388ab2e8d7d8b427fd51b0ab875611bd127f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 13:04:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 26 13:04:27 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":3,"files":["jc/parsers/vmstat_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":6},{"name":"tests/test_vmstat_s.py","lines_changed":3}]},"message":"raise if line data is unrecognized","epoch":1632686667,"epoch_utc":null},{"commit":"ee075db59819d80e4dcb60ddbd9cfe2fd529dfe9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 12:00:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 26 12:00:30 2021 -0700","stats":{"files_changed":4,"insertions":5,"deletions":7,"files":["jc/cli.py","jc/parsers/foo_s.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":5},{"name":"jc/parsers/vmstat_s.py","lines_changed":3}]},"message":"linting","epoch":1632682830,"epoch_utc":null},{"commit":"9904e0be61e7c81b907bf3770f111346daeff481","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Sep 25 08:28:57 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Sep 25 08:28:57 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":2},{"name":"jc/utils.py","lines_changed":2}]},"message":"formatting","epoch":1632583737,"epoch_utc":null},{"commit":"31b69b3242eeca2c02f87c31d58193dd3f06fe49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Sep 25 08:23:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Sep 25 08:23:46 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":6},{"name":"jc/utils.py","lines_changed":6}]},"message":"formatting","epoch":1632583426,"epoch_utc":null},{"commit":"e6a80fea3228122dd84e17672c835c0460ad1342","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Sep 25 08:19:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Sep 25 08:19:34 2021 -0700","stats":{"files_changed":3,"insertions":7,"deletions":7,"files":["docs/utils.md","jc/utils.py","man/jc.1"],"file_stats":[{"name":"docs/utils.md","lines_changed":6},{"name":"jc/utils.py","lines_changed":6},{"name":"man/jc.1","lines_changed":2}]},"message":"formatting","epoch":1632583174,"epoch_utc":null},{"commit":"d6aec00e038d1ecfe43c13a6909d50630455b372","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 16:45:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 24 16:45:38 2021 -0700","stats":{"files_changed":4,"insertions":27,"deletions":1,"files":["tests/fixtures/ubuntu-18.04/vmstat-1-long-streaming.json","tests/fixtures/ubuntu-18.04/vmstat-1-long.json","tests/test_vmstat.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"tests/fixtures/ubuntu-18.04/vmstat-1-long-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/vmstat-1-long.json","lines_changed":1},{"name":"tests/test_vmstat.py","lines_changed":12},{"name":"tests/test_vmstat_s.py","lines_changed":14}]},"message":"add vmstat-1-long tests","epoch":1632527138,"epoch_utc":null},{"commit":"4aa7d81e11ea7fcfbb5c9d74337cde617b1a0d5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 16:27:11 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 24 16:27:11 2021 -0700","stats":{"files_changed":3,"insertions":50,"deletions":2,"files":["jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","tests/fixtures/ubuntu-18.04/vmstat-1-long.out"],"file_stats":[{"name":"jc/parsers/vmstat.py","lines_changed":3},{"name":"jc/parsers/vmstat_s.py","lines_changed":7},{"name":"tests/fixtures/ubuntu-18.04/vmstat-1-long.out","lines_changed":42}]},"message":"ignore re-printed header rows in output","epoch":1632526031,"epoch_utc":null},{"commit":"48cdabc3b0862d6291e1ec59ab385e0e146c31eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 10:11:15 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 24 10:11:15 2021 -0700","stats":{"files_changed":4,"insertions":16,"deletions":0,"files":["docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/vmstat.md","lines_changed":4},{"name":"docs/parsers/vmstat_s.md","lines_changed":4},{"name":"jc/parsers/vmstat.py","lines_changed":4},{"name":"jc/parsers/vmstat_s.py","lines_changed":4}]},"message":"document timestamps","epoch":1632503475,"epoch_utc":null},{"commit":"a1791ef5479749692c79bbe98fc7687d70cd6cda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 10:01:13 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 24 10:01:13 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2}]},"message":"linting","epoch":1632502873,"epoch_utc":null},{"commit":"7bc87f6c2d4cfcfa656a1c1b8973a4c0414c85d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 09:24:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 24 09:24:30 2021 -0700","stats":{"files_changed":8,"insertions":8,"deletions":8,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"change _meta to _jc_meta","epoch":1632500670,"epoch_utc":null},{"commit":"bbed9e274b8252ba0518140fe7fc97029310771f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 09:16:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 24 09:16:44 2021 -0700","stats":{"files_changed":1,"insertions":154,"deletions":159,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":313}]},"message":"linting","epoch":1632500204,"epoch_utc":null},{"commit":"486282b9856f5e56cf43ee1399d8e7cb78353b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 08:52:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 24 08:52:39 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":10}]},"message":"linting","epoch":1632498759,"epoch_utc":null},{"commit":"a4d45b653f794033978940da14910f5d607a8254","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 08:49:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 24 08:49:37 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["jc/parsers/foo_s.py","jc/parsers/vmstat.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":8}]},"message":"linting","epoch":1632498577,"epoch_utc":null},{"commit":"22e151b01c0f97c141d912c9646e46df0320d622","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 08:43:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 24 08:43:09 2021 -0700","stats":{"files_changed":2,"insertions":56,"deletions":60,"files":["jc/cli.py","jc/utils.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":88},{"name":"jc/utils.py","lines_changed":28}]},"message":"linting","epoch":1632498189,"epoch_utc":null},{"commit":"7a4ebcd1ecdb4929aae70e44b4f9b6b5ab52b393","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 21:22:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 21:22:01 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":4}]},"message":"language hints","epoch":1632457321,"epoch_utc":null},{"commit":"651cbfe02fbb354c4caf8e0d022655642e7caed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 21:20:25 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 21:20:25 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"add streaming foo parser","epoch":1632457225,"epoch_utc":null},{"commit":"8c3e764516e1c28961b09380b638a57ce98b1261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 21:17:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 21:17:17 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add streaming parser to contrib guidelines","epoch":1632457037,"epoch_utc":null},{"commit":"b4e75da7e3f23502723ce8b2a7261b376f296864","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 21:14:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 21:14:47 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"templates/readme_template","lines_changed":4}]},"message":"formatting","epoch":1632456887,"epoch_utc":null},{"commit":"37223f086cabc8db5962415bd161fed151dafb9d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 21:13:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 21:13:21 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":5},{"name":"templates/readme_template","lines_changed":5}]},"message":"formatting","epoch":1632456801,"epoch_utc":null},{"commit":"a404033735c2c8075a8e08194197eae59db70afd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 20:54:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 20:54:44 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add error and warning message wrap info","epoch":1632455684,"epoch_utc":null},{"commit":"b7433ed085c0ba22ea0d49330871a651a8d83fb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 20:53:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 20:53:31 2021 -0700","stats":{"files_changed":6,"insertions":80,"deletions":41,"files":["docs/utils.md","jc/cli.py","jc/parsers/file.py","jc/parsers/ls.py","jc/parsers/traceroute.py","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":16},{"name":"jc/cli.py","lines_changed":39},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":60}]},"message":"auto wrap warning and error messages","epoch":1632455611,"epoch_utc":null},{"commit":"224d3d65ada4216e28e142d411b0c2c3358517b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 13:15:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 13:15:38 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"Add exception class name to error message","epoch":1632428138,"epoch_utc":null},{"commit":"a349fb0bdabaf74503831f22c4efbd02254f809d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 13:08:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 13:08:31 2021 -0700","stats":{"files_changed":3,"insertions":10,"deletions":8,"files":["README.md","docs/utils.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"docs/utils.md","lines_changed":6},{"name":"man/jc.1","lines_changed":6}]},"message":"change _meta to _jc_meta","epoch":1632427711,"epoch_utc":null},{"commit":"e7ddcfb83fb295034db44ade407476ff3a962cd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 13:07:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 13:07:10 2021 -0700","stats":{"files_changed":5,"insertions":14,"deletions":12,"files":["jc/utils.py","templates/manpage_template","templates/readme_template",".../centos-7.7/ping-ip-O-streaming-ignore-exceptions.json","tests/test_ping_s.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":10},{"name":"templates/manpage_template","lines_changed":6},{"name":"templates/readme_template","lines_changed":6},{"name":".../centos-7.7/ping-ip-O-streaming-ignore-exceptions.json","lines_changed":2},{"name":"tests/test_ping_s.py","lines_changed":2}]},"message":"change _meta to _jc_meta","epoch":1632427630,"epoch_utc":null},{"commit":"abd20dfe3662f65373ac582c70aa740e53b52f68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 12:58:24 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 12:58:24 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"templates/manpage_template","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting","epoch":1632427104,"epoch_utc":null},{"commit":"dc1fd3ef1be41aee349b159059f1febff76f6caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 11:54:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 11:54:58 2021 -0700","stats":{"files_changed":4,"insertions":12,"deletions":12,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"man/jc.1","lines_changed":6},{"name":"templates/manpage_template","lines_changed":6},{"name":"templates/readme_template","lines_changed":6}]},"message":"fix -qq docs","epoch":1632423298,"epoch_utc":null},{"commit":"98a7686db46fbd3ed98382867976249f307d0015","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 11:48:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 11:48:39 2021 -0700","stats":{"files_changed":18,"insertions":160,"deletions":152,"files":["README.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","docs/utils.md","jc/cli.py","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","jc/utils.py","man/jc.1","templates/manpage_template","templates/readme_template","... => ping-ip-O-streaming-ignore-exceptions.json}","tests/test_ls_s.py","tests/test_ping_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":9},{"name":"docs/parsers/ping_s.md","lines_changed":9},{"name":"docs/parsers/vmstat_s.md","lines_changed":9},{"name":"docs/utils.md","lines_changed":6},{"name":"jc/cli.py","lines_changed":23},{"name":"jc/parsers/foo_s.py","lines_changed":13},{"name":"jc/parsers/ls_s.py","lines_changed":13},{"name":"jc/parsers/ping_s.py","lines_changed":13},{"name":"jc/parsers/vmstat_s.py","lines_changed":13},{"name":"jc/utils.py","lines_changed":12},{"name":"man/jc.1","lines_changed":4},{"name":"templates/manpage_template","lines_changed":4},{"name":"templates/readme_template","lines_changed":2},{"name":"... => ping-ip-O-streaming-ignore-exceptions.json}","lines_changed":0},{"name":"tests/test_ls_s.py","lines_changed":24},{"name":"tests/test_ping_s.py","lines_changed":140},{"name":"tests/test_vmstat_s.py","lines_changed":16}]},"message":"use -qq to ignore streaming exceptions","epoch":1632422919,"epoch_utc":null},{"commit":"9c6c6c4330fc68115be012de254161f36e3a8328","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 09:04:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 09:04:37 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add next() info","epoch":1632413077,"epoch_utc":null},{"commit":"f9be5651daa891e06ad0acd8980ffc0fe51fd29d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:59:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 08:59:26 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":6,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":5},{"name":"templates/readme_template","lines_changed":5}]},"message":"add language hints","epoch":1632412766,"epoch_utc":null},{"commit":"df9835a3e62bb2b3b6ec8b55f06a25a00a799d92","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:57:14 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 08:57:14 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting","epoch":1632412634,"epoch_utc":null},{"commit":"92363be2dd633bdd3c2dd07c72ebd281d2cb4565","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:56:14 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 08:56:14 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"templates/readme_template","lines_changed":3}]},"message":"fix streaming python module example","epoch":1632412574,"epoch_utc":null},{"commit":"31b62030156f9c826fe5c7d127e9dd0ace582dd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:54:15 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 08:54:15 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"templates/readme_template","lines_changed":6}]},"message":"formatting","epoch":1632412455,"epoch_utc":null},{"commit":"18805858d685d456f9a38540bbaedbaa1a411546","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:53:25 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 08:53:25 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":4},{"name":"templates/manpage_template","lines_changed":2}]},"message":"formatting","epoch":1632412405,"epoch_utc":null},{"commit":"e676f0e20fb6e96a536c4d182b0d287cdc1ad0f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:53:14 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 08:53:14 2021 -0700","stats":{"files_changed":2,"insertions":36,"deletions":6,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":21},{"name":"templates/readme_template","lines_changed":21}]},"message":"add streaming parser info for python module use","epoch":1632412394,"epoch_utc":null},{"commit":"20652edefaa7705b8ba756bae3944ff362a295a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 20:11:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 20:11:26 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":7}]},"message":"update changelog","epoch":1632366686,"epoch_utc":null},{"commit":"98c29d07478093e78f53ec633f2dd08cafc3e3ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 19:54:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 19:54:12 2021 -0700","stats":{"files_changed":8,"insertions":120,"deletions":0,"files":["tests/fixtures/centos-7.7/vmstat-a.json","tests/fixtures/centos-7.7/vmstat-at-5-10.json","tests/fixtures/centos-7.7/vmstat-awt.json","tests/fixtures/centos-7.7/vmstat-d.json","tests/fixtures/centos-7.7/vmstat-dt.json","tests/fixtures/centos-7.7/vmstat-w.json","tests/fixtures/centos-7.7/vmstat.json","tests/test_vmstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/vmstat-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-at-5-10.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-awt.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-d.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-dt.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-w.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat.json","lines_changed":1},{"name":"tests/test_vmstat.py","lines_changed":113}]},"message":"add vmstat tests","epoch":1632365652,"epoch_utc":null},{"commit":"41a6311f6b3ed2cc94919d042aed51c46cdf3e2f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 19:34:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 19:34:44 2021 -0700","stats":{"files_changed":9,"insertions":132,"deletions":1,"files":["tests/fixtures/centos-7.7/vmstat-a-streaming.json",".../centos-7.7/vmstat-at-5-10-streaming.json",".../fixtures/centos-7.7/vmstat-awt-streaming.json","tests/fixtures/centos-7.7/vmstat-d-streaming.json","tests/fixtures/centos-7.7/vmstat-dt-streaming.json","tests/fixtures/centos-7.7/vmstat-streaming.json","tests/fixtures/centos-7.7/vmstat-w-streaming.json","tests/test_ping_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/vmstat-a-streaming.json","lines_changed":1},{"name":".../centos-7.7/vmstat-at-5-10-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/vmstat-awt-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-d-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-dt-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-w-streaming.json","lines_changed":1},{"name":"tests/test_ping_s.py","lines_changed":2},{"name":"tests/test_vmstat_s.py","lines_changed":124}]},"message":"add streaming parser tests","epoch":1632364484,"epoch_utc":null},{"commit":"978760ec57e04e3ec347c8764bfad015b6dddbff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 19:32:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 19:32:20 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"add exception class name to error string","epoch":1632364340,"epoch_utc":null},{"commit":"d410425537817964ceb7b61e0fdff6c03fdf8766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:43:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 14:43:26 2021 -0700","stats":{"files_changed":4,"insertions":136,"deletions":136,"files":["docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/vmstat.md","lines_changed":68},{"name":"docs/parsers/vmstat_s.md","lines_changed":68},{"name":"jc/parsers/vmstat.py","lines_changed":68},{"name":"jc/parsers/vmstat_s.py","lines_changed":68}]},"message":"replace single quotes with double quotes in doc","epoch":1632347006,"epoch_utc":null},{"commit":"6b7430329cbe1bfb95b47bcfe031906641c127e1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:38:13 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 14:38:13 2021 -0700","stats":{"files_changed":5,"insertions":269,"deletions":1,"files":["README.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat_s.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":145},{"name":"docs/parsers/vmstat_s.md","lines_changed":105},{"name":"jc/parsers/vmstat_s.py","lines_changed":6},{"name":"man/jc.1","lines_changed":12}]},"message":"doc update","epoch":1632346693,"epoch_utc":null},{"commit":"40fe0d4a6081a1233bf5c3eb51a01da1f12bc4dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:34:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 14:34:46 2021 -0700","stats":{"files_changed":1,"insertions":141,"deletions":22,"files":["jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":163}]},"message":"working parser","epoch":1632346486,"epoch_utc":null},{"commit":"365c5354a0349e470558d15243217a064e73da38","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:34:32 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 14:34:32 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/vmstat.py"],"file_stats":[{"name":"jc/parsers/vmstat.py","lines_changed":1}]},"message":"remove debug print statement","epoch":1632346472,"epoch_utc":null},{"commit":"b246a05cbb4c1c564f81b3e72cecb62edbe6ced6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:34:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 14:34:19 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"fix vmstat-s name","epoch":1632346459,"epoch_utc":null},{"commit":"9e5a7a4abb8668d043625951a05eb5733cbbd56f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:07:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 14:07:09 2021 -0700","stats":{"files_changed":7,"insertions":37,"deletions":0,"files":["tests/fixtures/centos-7.7/vmstat-a.out","tests/fixtures/centos-7.7/vmstat-at-5-10.out","tests/fixtures/centos-7.7/vmstat-awt.out","tests/fixtures/centos-7.7/vmstat-d.out","tests/fixtures/centos-7.7/vmstat-dt.out","tests/fixtures/centos-7.7/vmstat-w.out","tests/fixtures/centos-7.7/vmstat.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/vmstat-a.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/vmstat-at-5-10.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/vmstat-awt.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/vmstat-d.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/vmstat-dt.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/vmstat-w.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/vmstat.out","lines_changed":4}]},"message":"add vmstat sample output","epoch":1632344829,"epoch_utc":null},{"commit":"f266acbccafc040c375723147b8e5d7fddb1e697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:06:51 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 14:06:51 2021 -0700","stats":{"files_changed":1,"insertions":106,"deletions":14,"files":["jc/parsers/vmstat.py"],"file_stats":[{"name":"jc/parsers/vmstat.py","lines_changed":120}]},"message":"add processing logic","epoch":1632344811,"epoch_utc":null},{"commit":"4e3b471f1801f1b9006b18cae2a3d816f361262e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:06:28 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 14:06:28 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"add format for vmstat","epoch":1632344788,"epoch_utc":null},{"commit":"5e28736c2e0c951e71e6531e03a9619279d95d3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 12:08:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 12:08:20 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add vmstat and vmstat_s","epoch":1632337700,"epoch_utc":null},{"commit":"a91913a3b517ea0dbb25d6e4cc92850eb2fde5ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 12:07:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 12:07:27 2021 -0700","stats":{"files_changed":1,"insertions":106,"deletions":0,"files":["jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":106}]},"message":"streaming parser template","epoch":1632337647,"epoch_utc":null},{"commit":"90c64f0ae0d97d025adee40970d89baca79ee4ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 12:07:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 12:07:09 2021 -0700","stats":{"files_changed":1,"insertions":182,"deletions":0,"files":["jc/parsers/vmstat.py"],"file_stats":[{"name":"jc/parsers/vmstat.py","lines_changed":182}]},"message":"initial working parser","epoch":1632337629,"epoch_utc":null},{"commit":"7cc642ed1a476abda709ac9b79900a1de12e1ef7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 12:06:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 12:06:56 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":4}]},"message":"formatting","epoch":1632337616,"epoch_utc":null},{"commit":"809f64d35a92bb3d7380fa9d78ac1421a10b81fc","merge":"ff0fda4 a6f859a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 22:58:18 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Sep 21 22:58:18 2021 -0700","message":"Merge pull request #169 from kellyjonbrazil/streaming\n\nStreaming to dev","epoch":1632290298,"epoch_utc":null},{"commit":"a6f859a55edae50fcc185948736218404cfaa929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 22:47:48 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 22:47:48 2021 -0700","stats":{"files_changed":18,"insertions":168,"deletions":153,"files":[".../osx-10.14.6/ping-hostname-p-streaming.json",".../osx-10.14.6/ping-hostname-s-streaming.json",".../osx-10.14.6/ping-hostname-streaming.json",".../osx-10.14.6/ping-ip-dup-streaming.json",".../fixtures/osx-10.14.6/ping-ip-p-streaming.json",".../fixtures/osx-10.14.6/ping-ip-s-streaming.json","tests/fixtures/osx-10.14.6/ping-ip-streaming.json",".../osx-10.14.6/ping-ip-unreachable-streaming.json",".../osx-10.14.6/ping6-hostname-p-streaming.json",".../osx-10.14.6/ping6-hostname-s-streaming.json",".../osx-10.14.6/ping6-hostname-streaming.json",".../osx-10.14.6/ping6-ip-dup-streaming.json",".../fixtures/osx-10.14.6/ping6-ip-p-streaming.json",".../fixtures/osx-10.14.6/ping6-ip-s-streaming.json","tests/fixtures/osx-10.14.6/ping6-ip-streaming.json","tests/fixtures/pi/ping-ip-O-D-streaming.json","tests/fixtures/pi/ping-ip-O-streaming.json","tests/test_ping_s.py"],"file_stats":[{"name":".../osx-10.14.6/ping-hostname-p-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping-hostname-s-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping-hostname-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping-ip-dup-streaming.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/ping-ip-p-streaming.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/ping-ip-s-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping-ip-unreachable-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping6-hostname-p-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping6-hostname-s-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping6-hostname-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping6-ip-dup-streaming.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/ping6-ip-p-streaming.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/ping6-ip-s-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-streaming.json","lines_changed":1},{"name":"tests/fixtures/pi/ping-ip-O-D-streaming.json","lines_changed":1},{"name":"tests/fixtures/pi/ping-ip-O-streaming.json","lines_changed":1},{"name":"tests/test_ping_s.py","lines_changed":304}]},"message":"add final ping_s tests","epoch":1632289668,"epoch_utc":null},{"commit":"39ef88078f43708e470d3c1b2fd95e76b5cbeb08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 22:47:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 22:47:02 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":1}]},"message":"add destination_ip to error lines","epoch":1632289622,"epoch_utc":null},{"commit":"aeea5e8d2eab2fef3e14637f512aed7b117c4a3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 22:00:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 22:00:05 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/test_ls_s.py"],"file_stats":[{"name":"tests/test_ls_s.py","lines_changed":2}]},"message":"formatting","epoch":1632286805,"epoch_utc":null},{"commit":"1a0700bff4bdebbd9f1f92f2fc7a56c4d5ed6925","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 21:58:59 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 21:58:59 2021 -0700","stats":{"files_changed":31,"insertions":240,"deletions":213,"files":[".../fedora32/ping-hostname-O-D-p-s-streaming.json",".../fedora32/ping-hostname-O-p-streaming.json",".../fedora32/ping-hostname-O-streaming.json","tests/fixtures/fedora32/ping-ip-O-D-streaming.json","tests/fixtures/fedora32/ping-ip-O-streaming.json",".../fedora32/ping6-hostname-O-D-p-s-streaming.json",".../fedora32/ping6-hostname-O-p-streaming.json",".../fedora32/ping6-ip-O-D-p-streaming.json",".../fixtures/fedora32/ping6-ip-O-p-streaming.json",".../freebsd12/ping-hostname-p-streaming.json",".../freebsd12/ping-hostname-s-streaming.json",".../freebsd12/ping-hostname-streaming.json","tests/fixtures/freebsd12/ping-ip-p-streaming.json","tests/fixtures/freebsd12/ping-ip-s-streaming.json","tests/fixtures/freebsd12/ping-ip-streaming.json",".../freebsd12/ping6-hostname-p-streaming.json",".../freebsd12/ping6-hostname-s-streaming.json",".../freebsd12/ping6-hostname-streaming.json","tests/fixtures/freebsd12/ping6-ip-p-streaming.json","tests/fixtures/freebsd12/ping6-ip-s-streaming.json","tests/fixtures/freebsd12/ping6-ip-streaming.json",".../ping-hostname-O-D-p-s-streaming.json",".../ubuntu-18.04/ping-hostname-O-p-streaming.json",".../ubuntu-18.04/ping-hostname-O-streaming.json",".../ubuntu-18.04/ping-ip-O-D-streaming.json",".../fixtures/ubuntu-18.04/ping-ip-O-streaming.json",".../ping6-hostname-O-D-p-s-streaming.json",".../ubuntu-18.04/ping6-hostname-O-p-streaming.json",".../ubuntu-18.04/ping6-ip-O-D-p-streaming.json",".../ubuntu-18.04/ping6-ip-O-p-streaming.json","tests/test_ping_s.py"],"file_stats":[{"name":".../fedora32/ping-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../fedora32/ping-hostname-O-p-streaming.json","lines_changed":1},{"name":".../fedora32/ping-hostname-O-streaming.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-ip-O-D-streaming.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-ip-O-streaming.json","lines_changed":1},{"name":".../fedora32/ping6-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../fedora32/ping6-hostname-O-p-streaming.json","lines_changed":1},{"name":".../fedora32/ping6-ip-O-D-p-streaming.json","lines_changed":1},{"name":".../fixtures/fedora32/ping6-ip-O-p-streaming.json","lines_changed":1},{"name":".../freebsd12/ping-hostname-p-streaming.json","lines_changed":1},{"name":".../freebsd12/ping-hostname-s-streaming.json","lines_changed":1},{"name":".../freebsd12/ping-hostname-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-p-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-s-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-streaming.json","lines_changed":1},{"name":".../freebsd12/ping6-hostname-p-streaming.json","lines_changed":1},{"name":".../freebsd12/ping6-hostname-s-streaming.json","lines_changed":1},{"name":".../freebsd12/ping6-hostname-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-p-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-s-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-streaming.json","lines_changed":1},{"name":".../ping-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping-hostname-O-p-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping-hostname-O-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping-ip-O-D-streaming.json","lines_changed":1},{"name":".../fixtures/ubuntu-18.04/ping-ip-O-streaming.json","lines_changed":1},{"name":".../ping6-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-hostname-O-p-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-ip-O-D-p-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-ip-O-p-streaming.json","lines_changed":1},{"name":"tests/test_ping_s.py","lines_changed":423}]},"message":"add more ping-s tests","epoch":1632286739,"epoch_utc":null},{"commit":"b5fa6d068f240671eb948b055cd4f7bf127e0ec0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 16:03:00 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 16:03:00 2021 -0700","stats":{"files_changed":5,"insertions":25,"deletions":5,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":6},{"name":"docs/parsers/ping_s.md","lines_changed":6},{"name":"jc/parsers/foo_s.py","lines_changed":6},{"name":"jc/parsers/ls_s.py","lines_changed":6},{"name":"jc/parsers/ping_s.py","lines_changed":6}]},"message":"update docs","epoch":1632265380,"epoch_utc":null},{"commit":"1baec0b420feff068f2dc1e35499f78aa7d0a6e0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 15:43:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 15:43:02 2021 -0700","stats":{"files_changed":13,"insertions":815,"deletions":0,"files":[".../ping-hostname-O-D-p-s-streaming.json",".../centos-7.7/ping-hostname-O-p-streaming.json",".../centos-7.7/ping-hostname-O-streaming.json",".../fixtures/centos-7.7/ping-ip-O-D-streaming.json",".../centos-7.7/ping-ip-O-streaming-quiet.json","tests/fixtures/centos-7.7/ping-ip-O-streaming.json",".../fixtures/centos-7.7/ping-ip-dup-streaming.json",".../ping6-hostname-O-D-p-s-streaming.json",".../centos-7.7/ping6-hostname-O-p-streaming.json",".../centos-7.7/ping6-ip-O-D-p-streaming.json",".../centos-7.7/ping6-ip-O-p-streaming.json",".../centos-7.7/ping6-ip-dup-streaming.json","tests/test_ping_s.py"],"file_stats":[{"name":".../ping-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping-hostname-O-p-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping-hostname-O-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/ping-ip-O-D-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping-ip-O-streaming-quiet.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-ip-O-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/ping-ip-dup-streaming.json","lines_changed":1},{"name":".../ping6-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping6-hostname-O-p-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping6-ip-O-D-p-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping6-ip-O-p-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping6-ip-dup-streaming.json","lines_changed":1},{"name":"tests/test_ping_s.py","lines_changed":803}]},"message":"add some streaming tests","epoch":1632264182,"epoch_utc":null},{"commit":"4f2a4e1dee9d722d2aa5ddf2c082a358c88cf640","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 15:42:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 15:42:45 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":8}]},"message":"skip blank lines and warning lines","epoch":1632264165,"epoch_utc":null},{"commit":"758d617668d1f9d0f27b52d46749e5b67a570cf1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 13:29:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 13:29:50 2021 -0700","stats":{"files_changed":5,"insertions":5,"deletions":5,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2}]},"message":"doc update","epoch":1632256190,"epoch_utc":null},{"commit":"55322c37f57a9c8e28641a61928fad2329f5e50d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 12:36:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 12:36:36 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":4}]},"message":"formatting","epoch":1632252996,"epoch_utc":null},{"commit":"d19ea5552bb3a379f7f92bcb58794c557ecc6647","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 12:33:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 12:33:05 2021 -0700","stats":{"files_changed":12,"insertions":193,"deletions":0,"files":["tests/fixtures/centos-7.7/ls-al-streaming.json","tests/fixtures/centos-7.7/ls-alR-streaming.json","tests/fixtures/centos-7.7/ls-alh-streaming.json","tests/fixtures/osx-10.14.6/ls-al-streaming.json","tests/fixtures/osx-10.14.6/ls-alR-streaming.json","tests/fixtures/osx-10.14.6/ls-alh-streaming.json",".../osx-10.14.6/ls-lR-empty-folder-streaming.json","tests/fixtures/ubuntu-18.04/ls-al-streaming.json","tests/fixtures/ubuntu-18.04/ls-alR-streaming.json","tests/fixtures/ubuntu-18.04/ls-alh-streaming.json",".../fixtures/ubuntu-18.04/ls-l-iso-streaming.json","tests/test_ls_s.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ls-al-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-alR-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-alh-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-al-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-alR-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-alh-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ls-lR-empty-folder-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-al-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-alR-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-alh-streaming.json","lines_changed":1},{"name":".../fixtures/ubuntu-18.04/ls-l-iso-streaming.json","lines_changed":1},{"name":"tests/test_ls_s.py","lines_changed":182}]},"message":"add streaming ls parser tests","epoch":1632252785,"epoch_utc":null},{"commit":"130c3527c1083d399deef00ee8fcaa75f609b485","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 12:32:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 12:32:34 2021 -0700","stats":{"files_changed":6,"insertions":25,"deletions":25,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":8},{"name":"docs/parsers/ping_s.md","lines_changed":12},{"name":"jc/parsers/foo_s.py","lines_changed":6},{"name":"jc/parsers/ls_s.py","lines_changed":10},{"name":"jc/parsers/ping_s.py","lines_changed":12},{"name":"man/jc.1","lines_changed":2}]},"message":"update docstrings","epoch":1632252754,"epoch_utc":null},{"commit":"3f221f471416766a860bd19850afda4899ee5eb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 13:21:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 20 13:21:20 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":6},{"name":"jc/parsers/ping_s.py","lines_changed":6}]},"message":"doc update","epoch":1632169280,"epoch_utc":null},{"commit":"d64c4cb39056bb869fc117477612ae5ae2ef3d85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 13:04:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 20 13:04:26 2021 -0700","stats":{"files_changed":2,"insertions":141,"deletions":1,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":72},{"name":"templates/manpage_template","lines_changed":70}]},"message":"add streaming parsers section","epoch":1632168266,"epoch_utc":null},{"commit":"448c56aa46b72438e4a4c83b10a7eb889e3f50e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 13:04:14 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 20 13:04:14 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting","epoch":1632168254,"epoch_utc":null},{"commit":"9fbea15b6d031baa8c90f2602e39de7cf51408e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 11:59:54 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 20 11:59:54 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":8,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":6},{"name":"jc/parsers/ping_s.py","lines_changed":4}]},"message":"rename state class to _state","epoch":1632164394,"epoch_utc":null},{"commit":"932060314b3c1ce518b9f57532e124285cb3ad0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 11:51:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 20 11:51:27 2021 -0700","stats":{"files_changed":2,"insertions":41,"deletions":11,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":50},{"name":"jc/parsers/ping_s.py","lines_changed":2}]},"message":"doc update","epoch":1632163887,"epoch_utc":null},{"commit":"5e68ae50097cb339f3390449db7e3f189a716320","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 11:42:15 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 20 11:42:15 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":7}]},"message":"import exception. tighten up os detection","epoch":1632163335,"epoch_utc":null},{"commit":"d03541beae44a4571a7d0481af01a5c19506207f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 11:24:59 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 20 11:24:59 2021 -0700","stats":{"files_changed":1,"insertions":12,"deletions":5,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":17}]},"message":"add docstring examples. add exception raise when OS cannot be detected.","epoch":1632162299,"epoch_utc":null},{"commit":"516fa571d90a0c93134c953c15ce84dd31b96b4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 19 21:41:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 19 21:41:35 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":3}]},"message":"remove unused variable. use elif instead of if for linux vs. bsd detection","epoch":1632112895,"epoch_utc":null},{"commit":"a19c12096a8e8de02a6ff761cc9c13ec249d416e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 19 13:18:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 19 13:18:23 2021 -0700","stats":{"files_changed":1,"insertions":373,"deletions":143,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":516}]},"message":"initial working parser for both linux and bsd","epoch":1632082703,"epoch_utc":null},{"commit":"758f27945de4f0897405eba02c7908d815ce6e9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 15:09:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 17 15:09:56 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":18}]},"message":"change data_bytes and bytes to sent_bytes and response_bytes","epoch":1631916596,"epoch_utc":null},{"commit":"8b1e8d58df22f8542ccaf7bf3e1eabe6132e7a42","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 14:44:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 17 14:44:49 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":1}]},"message":"remove unneeded line","epoch":1631915089,"epoch_utc":null},{"commit":"b967489d085319facee077958deaa04956a98343","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 14:42:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 17 14:42:30 2021 -0700","stats":{"files_changed":1,"insertions":81,"deletions":40,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":121}]},"message":"complete linux coverage including summary","epoch":1631914950,"epoch_utc":null},{"commit":"870d0218be2641e3eddb114c23d54deb23155f25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 10:34:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 17 10:34:05 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2}]},"message":"add unbuffer note","epoch":1631900045,"epoch_utc":null},{"commit":"84020bc2af294cb065105f1399453aefc98eb180","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 10:26:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 17 10:26:47 2021 -0700","stats":{"files_changed":7,"insertions":12,"deletions":6,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/utils.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":6},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"change error_msg to error in -q result docs","epoch":1631899607,"epoch_utc":null},{"commit":"4efe5344e069ed921f208bcbbd097705be2d3b4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 10:20:22 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 17 10:20:22 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add links to HN and Reddit","epoch":1631899222,"epoch_utc":null},{"commit":"9182c545134b3d56d27d2c1d9bda678532bdc3fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 08:24:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 17 08:24:56 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":8,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":11}]},"message":"formatting","epoch":1631892296,"epoch_utc":null},{"commit":"28f0ab0b02d21fc060f1ac7181f85552798dc4bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 08:21:13 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 17 08:21:13 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/ls_s.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":2}]},"message":"update streaming error messages","epoch":1631892073,"epoch_utc":null},{"commit":"90d1a30696b2cbfbb06a55cc0cf920cf8ecd89aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 08:05:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 17 08:05:23 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting","epoch":1631891123,"epoch_utc":null},{"commit":"130b3738cc57fe261e8ef881a57b7836acd7e7e9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 22:32:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 22:32:46 2021 -0700","stats":{"files_changed":4,"insertions":21,"deletions":26,"files":["jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":8},{"name":"jc/parsers/ls_s.py","lines_changed":8},{"name":"jc/parsers/ping_s.py","lines_changed":14},{"name":"jc/utils.py","lines_changed":17}]},"message":"shorten successful yield to a single line","epoch":1631856766,"epoch_utc":null},{"commit":"92c7357615af7689db273aa78d666b35a2ec7a70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 22:04:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 22:04:44 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":2}]},"message":"formatting","epoch":1631855084,"epoch_utc":null},{"commit":"c80f8633349c00ea461b8927f9949fe19b2f46ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 22:04:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 22:04:31 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/foo.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":10}]},"message":"simplify return condition formatting","epoch":1631855071,"epoch_utc":null},{"commit":"4642c20179d4643e0cf1970b264da7d9d91628de","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 21:55:40 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 21:55:40 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"templates/readme_template","lines_changed":4}]},"message":"formatting","epoch":1631854540,"epoch_utc":null},{"commit":"5288eb22aadbbc1005b16428b94d2b07e9a75e3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 21:43:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 21:43:36 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add info about streaming parser performance characteristics","epoch":1631853816,"epoch_utc":null},{"commit":"df8387a1a99df69eac5005662aaf56d506fa0efd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 21:37:54 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 21:37:54 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"streaming parsers cannot be used with the magic syntax","epoch":1631853474,"epoch_utc":null},{"commit":"cc38c27f44d3f088609b878304cab8eed75fc8f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 21:33:57 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 21:33:57 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"templates/readme_template","lines_changed":3}]},"message":"formatting","epoch":1631853237,"epoch_utc":null},{"commit":"64f5357d69fe88b45d710d38948969699e1ca12f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 21:31:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 21:31:45 2021 -0700","stats":{"files_changed":2,"insertions":84,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":42},{"name":"templates/readme_template","lines_changed":42}]},"message":"add streaming parsers section","epoch":1631853105,"epoch_utc":null},{"commit":"51debb5649bef431e51e543f1c9270e2810aa58f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 20:45:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 20:45:01 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"add vmstat parser and change from linebuffer to unbuffer","epoch":1631850301,"epoch_utc":null},{"commit":"b48d05a4313b27cf5e69d3e4259542e0b131b60f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 20:41:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 20:41:56 2021 -0700","stats":{"files_changed":5,"insertions":15,"deletions":15,"files":["README.md","jc/cli.py","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":8},{"name":"man/jc.1","lines_changed":10},{"name":"templates/manpage_template","lines_changed":8},{"name":"templates/readme_template","lines_changed":2}]},"message":"change from line buffer output to unbuffer output","epoch":1631850116,"epoch_utc":null},{"commit":"4e7f6b337db61b8a106cf958f6b874157909c87a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 20:26:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 20:26:56 2021 -0700","stats":{"files_changed":3,"insertions":17,"deletions":25,"files":["jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":15},{"name":"jc/parsers/ls_s.py","lines_changed":9},{"name":"jc/parsers/ping_s.py","lines_changed":18}]},"message":"simplify yield statements","epoch":1631849216,"epoch_utc":null},{"commit":"a509d99cafd80862721595ee59ccc4a471b5e5a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 20:25:28 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 20:25:28 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":8}]},"message":"add stream_success dictionary","epoch":1631849128,"epoch_utc":null},{"commit":"481e45fb644ac88fa77ef35643b793f179fe6859","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 14 06:02:55 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 14 06:02:55 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2}]},"message":"limit parse error msg lenght","epoch":1631624575,"epoch_utc":null},{"commit":"e9038e1720e1c0e520e2f29b718aa8505cbbb9a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 21:15:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 21:15:26 2021 -0700","stats":{"files_changed":1,"insertions":66,"deletions":0,"files":["docs/parsers/ping_s.md"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":66}]},"message":"initial streaming ping docs","epoch":1631592926,"epoch_utc":null},{"commit":"8fd9e582bf29275c4daaa3be88ea8d196411b34a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 21:15:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 21:15:08 2021 -0700","stats":{"files_changed":1,"insertions":15,"deletions":17,"files":["docs/parsers/ls_s.md"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":32}]},"message":"doc update","epoch":1631592908,"epoch_utc":null},{"commit":"c1fd6f48a5a3501499c9fca7239673b8555cc7c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 21:14:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 21:14:56 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["docs/utils.md"],"file_stats":[{"name":"docs/utils.md","lines_changed":6}]},"message":"add stream_error docs","epoch":1631592896,"epoch_utc":null},{"commit":"af615c7f4b3f589ffc1b37cf9834062a04c013cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 21:14:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 21:14:38 2021 -0700","stats":{"files_changed":6,"insertions":26,"deletions":5,"files":["CHANGELOG","README.md","jc/cli.py","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"README.md","lines_changed":4},{"name":"jc/cli.py","lines_changed":7},{"name":"man/jc.1","lines_changed":11},{"name":"templates/manpage_template","lines_changed":4},{"name":"templates/readme_template","lines_changed":3}]},"message":"add line buffer output option","epoch":1631592878,"epoch_utc":null},{"commit":"bf0bc32d7ae6cabe07906207f4f08c2e81802c80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 20:51:24 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 20:51:24 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"flush streamed text for better piping experience","epoch":1631591484,"epoch_utc":null},{"commit":"2d6b53e012181a4c33bab441880c47c0fc0b0601","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 19:50:51 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 19:50:51 2021 -0700","stats":{"files_changed":1,"insertions":36,"deletions":42,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":78}]},"message":"add pattern support. move unparsable line detection to standard streaming parser style","epoch":1631587851,"epoch_utc":null},{"commit":"51271fea0fbd7bd63863ba05c399b4675dc5b4bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 19:27:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 19:27:34 2021 -0700","stats":{"files_changed":1,"insertions":139,"deletions":149,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":288}]},"message":"somewhat working parser","epoch":1631586454,"epoch_utc":null},{"commit":"2deb473e0bc96c0e39ec4074a6df4b941ba2172b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:36:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 18:36:36 2021 -0700","stats":{"files_changed":1,"insertions":262,"deletions":0,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":262}]},"message":"initial streaming ping parser","epoch":1631583396,"epoch_utc":null},{"commit":"23eeb33b3da43a679c3bf3f3643cfa552a1164e1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:36:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 18:36:19 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"modify stream_error message","epoch":1631583379,"epoch_utc":null},{"commit":"f50dfaef45632241f8f6972fa19bb17c54a457ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:31:52 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 18:31:52 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":13,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":19}]},"message":"use stream_error function for exceptions. raise on non -l ls output","epoch":1631583112,"epoch_utc":null},{"commit":"55bb71e9d466cc9ee5f7fd8eca1101c941cbcb35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:30:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 18:30:20 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"add streaming ping parser. update streaming exception message","epoch":1631583020,"epoch_utc":null},{"commit":"dab9357d286962b70224d6fafbf90a4c0cbc9980","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:29:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 18:29:49 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":12,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":13}]},"message":"use stream_error function for exceptions","epoch":1631582989,"epoch_utc":null},{"commit":"27eb427245b5126335cef0adb5e57522272474b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:29:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 18:29:10 2021 -0700","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":16}]},"message":"add stream_error function","epoch":1631582950,"epoch_utc":null},{"commit":"260f3685d944ded84396ae3395773d6898803fb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 15:06:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 15:06:02 2021 -0700","stats":{"files_changed":1,"insertions":112,"deletions":0,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":112}]},"message":"add streaming parser template","epoch":1631570762,"epoch_utc":null},{"commit":"76e78fc0c34b88a90fef876eebef92bd71cd772c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 15:05:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 15:05:49 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":11,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":20}]},"message":"doc updates","epoch":1631570749,"epoch_utc":null},{"commit":"1ac944fa028a400ae7b39b811fcf368c9bf5e259","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 12:13:14 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 12:13:14 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2}]},"message":"add -q option info to docstring","epoch":1631560394,"epoch_utc":null},{"commit":"986bc9b042a940f8dd34f0541bcb9b5840df579e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 12:10:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 12:10:02 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":43,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":52}]},"message":"cleanup unused code","epoch":1631560202,"epoch_utc":null},{"commit":"5a7942069b1f3ef3b45992b482bfb6bb973f7e8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 10:56:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 10:56:05 2021 -0700","stats":{"files_changed":1,"insertions":28,"deletions":28,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":56}]},"message":"add support for parent field","epoch":1631555765,"epoch_utc":null},{"commit":"f6c6fc13ac4c779667807df12444a41ef28a8011","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 08:55:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 08:55:19 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"enhance error msg when streaming parser is used","epoch":1631548519,"epoch_utc":null},{"commit":"1d8cfae89f24192b6fab087f59c9b8988ef363dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 12 17:30:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 12 17:30:56 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":11}]},"message":"only print _meta object if -q or quiet flag is used. Also, add message to the end of exceptions informing of the -q option to ignore errors","epoch":1631493056,"epoch_utc":null},{"commit":"787df51239ffa8260b48d6a3a58e6ff07d5e0f64","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 12 16:42:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 12 16:42:47 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2}]},"message":"remove `\\n` from end of line in exception message","epoch":1631490167,"epoch_utc":null},{"commit":"5e7f302a9c45343c36e81944db38a435e6c8a20c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 12 16:35:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 12 16:35:46 2021 -0700","stats":{"files_changed":1,"insertions":12,"deletions":10,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":22}]},"message":"Raise exceptions unless the -q or quiet flag are used","epoch":1631489746,"epoch_utc":null},{"commit":"3d10fd40b56264836874da19aa72351e6d5cfbf7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 12 16:27:00 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 12 16:27:00 2021 -0700","stats":{"files_changed":1,"insertions":14,"deletions":13,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":27}]},"message":"remove print flush for better performance. Roll json.JSONDecodeError into the parse try/except block","epoch":1631489220,"epoch_utc":null},{"commit":"57e3bf239cc76d3b0ee0eddc618171eb90c28dec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 10 15:02:15 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 10 15:02:15 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":6},{"name":"jc/parsers/ls_s.py","lines_changed":6}]},"message":"formatting for docs","epoch":1631311335,"epoch_utc":null},{"commit":"ccb09861e82044e17ec51277b3c8875e5ba9d87d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 10 15:01:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 10 15:01:02 2021 -0700","stats":{"files_changed":2,"insertions":20,"deletions":20,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":20},{"name":"jc/parsers/ls_s.py","lines_changed":20}]},"message":"formatting for docs","epoch":1631311262,"epoch_utc":null},{"commit":"94551d75dd926c7f558e5cab47ba9483a20c6b3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 10 14:27:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 10 14:27:50 2021 -0700","stats":{"files_changed":10,"insertions":116,"deletions":49,"files":["CHANGELOG","README.md","docs/parsers/ls_s.md","docs/readme.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz","mangen.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":6},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/ls_s.md","lines_changed":89},{"name":"docs/readme.md","lines_changed":25},{"name":"jc/__init__.py","lines_changed":27},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":7},{"name":"man/jc.1.gz","lines_changed":null},{"name":"mangen.py","lines_changed":8},{"name":"setup.py","lines_changed":2}]},"message":"doc update","epoch":1631309270,"epoch_utc":null},{"commit":"6e21218425359210591827e936b8d48d9644df92","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 10 14:14:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 10 14:14:10 2021 -0700","stats":{"files_changed":2,"insertions":234,"deletions":3,"files":["jc/cli.py","jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":23},{"name":"jc/parsers/ls_s.py","lines_changed":214}]},"message":"working prototype of streaming ls parser","epoch":1631308450,"epoch_utc":null},{"commit":"ff0fda48fc48760a7293528155d222c6456f84c4","merge":"e08b61f 528aac7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 10 08:08:45 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Sep 10 08:08:45 2021 -0700","message":"Merge pull request #168 from kellyjonbrazil/master\n\nSync master to dev","epoch":1631286525,"epoch_utc":null},{"commit":"528aac7ad87feae2093aba563c83a29ebf75e5f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 8 07:00:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 8 07:00:50 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":38,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":23},{"name":"templates/readme_template","lines_changed":23}]},"message":"use subprocess in python example","epoch":1631109650,"epoch_utc":null},{"commit":"ab482e521d4cecfffa5393805b1d7de4389db49a","merge":"9c1ad92 e08b61f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 31 09:50:38 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Aug 31 09:50:38 2021 -0700","message":"Merge pull request #163 from kellyjonbrazil/dev\n\nDev v1.16.2","epoch":1630428638,"epoch_utc":null},{"commit":"e08b61fa81b1bd2304d04db5cdc8b809fe9c6032","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 31 08:54:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Aug 31 08:54:23 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add schema note to sfdisk","epoch":1630425263,"epoch_utc":null},{"commit":"ce61bd1d2b4323d9c2d0454c4f646521913ae20d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 31 08:50:42 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Aug 31 08:50:42 2021 -0700","stats":{"files_changed":7,"insertions":73,"deletions":7,"files":["tests/fixtures/debian10/sfdisk-F2.json","tests/fixtures/debian10/sfdisk-F2.out","tests/fixtures/debian10/sfdisk-l2.json","tests/fixtures/debian10/sfdisk-l2.out","tests/fixtures/debian10/sfdisk-l3.json","tests/fixtures/debian10/sfdisk-l3.out","tests/test_sfdisk.py"],"file_stats":[{"name":"tests/fixtures/debian10/sfdisk-F2.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-F2.out","lines_changed":6},{"name":"tests/fixtures/debian10/sfdisk-l2.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-l2.out","lines_changed":15},{"name":"tests/fixtures/debian10/sfdisk-l3.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-l3.out","lines_changed":13},{"name":"tests/test_sfdisk.py","lines_changed":43}]},"message":"add tests for -F fixes","epoch":1630425042,"epoch_utc":null},{"commit":"7b708f75182bf3ed33478a7de62e9c2496f0b994","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 31 08:39:54 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Aug 31 08:39:54 2021 -0700","stats":{"files_changed":3,"insertions":11,"deletions":5,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-l.json","tests/fixtures/debian10/sfdisk-l.json"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":12},{"name":"tests/fixtures/centos-8/sfdisk-l.json","lines_changed":2},{"name":"tests/fixtures/debian10/sfdisk-l.json","lines_changed":2}]},"message":"Don't convert 'size' to int, except for legacy -d support. Change partition table detection logic to fix -F output","epoch":1630424394,"epoch_utc":null},{"commit":"89ca50c7fc1bf64f34c915e65031d0bc520e6466","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 21:56:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 30 21:56:36 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/sfdisk.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add -l to sfdisk raw example","epoch":1630385796,"epoch_utc":null},{"commit":"fb54899dcc2160450448e0d6111557cebdeb0d4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 21:53:40 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 30 21:53:40 2021 -0700","stats":{"files_changed":4,"insertions":38,"deletions":23,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":59},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update","epoch":1630385620,"epoch_utc":null},{"commit":"0a625ad7ddd9c804052d98930165cd22049546bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 21:52:55 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 30 21:52:55 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/sfdisk.py"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":2}]},"message":"remove unneeded lines","epoch":1630385575,"epoch_utc":null},{"commit":"d32e45efbe0d71a9a132abfb2855f1f4ccee9916","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 21:49:07 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 30 21:49:07 2021 -0700","stats":{"files_changed":6,"insertions":69,"deletions":1,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-F.json","tests/fixtures/centos-8/sfdisk-l.json","tests/fixtures/debian10/sfdisk-F.json","tests/fixtures/debian10/sfdisk-l.json","tests/test_sfdisk.py"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":9},{"name":"tests/fixtures/centos-8/sfdisk-F.json","lines_changed":1},{"name":"tests/fixtures/centos-8/sfdisk-l.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-F.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-l.json","lines_changed":1},{"name":"tests/test_sfdisk.py","lines_changed":57}]},"message":"add sfdisk tests","epoch":1630385347,"epoch_utc":null},{"commit":"c77696bc789cdfd286a7479c3d9f67d23149d0ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 20:55:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 30 20:55:26 2021 -0700","stats":{"files_changed":3,"insertions":6,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":4},{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1630382126,"epoch_utc":null},{"commit":"736fde9e784587cb2ef344bbf31d876eafea7741","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 20:51:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 30 20:51:19 2021 -0700","stats":{"files_changed":5,"insertions":147,"deletions":28,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-F.out","tests/fixtures/centos-8/sfdisk-l.out","tests/fixtures/debian10/sfdisk-F.out","tests/fixtures/debian10/sfdisk-l.out"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":127},{"name":"tests/fixtures/centos-8/sfdisk-F.out","lines_changed":9},{"name":"tests/fixtures/centos-8/sfdisk-l.out","lines_changed":24},{"name":"tests/fixtures/debian10/sfdisk-F.out","lines_changed":3},{"name":"tests/fixtures/debian10/sfdisk-l.out","lines_changed":12}]},"message":"add support for newer versions of sfdisk","epoch":1630381879,"epoch_utc":null},{"commit":"9c1ad92fed9a4b3a0da66d6b71deec8d608edfa9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:31:51 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 26 10:31:51 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":12}]},"message":"fix examples","epoch":1629999111,"epoch_utc":null},{"commit":"1a9fd2139d156a51bf2d25db951e47e96da77f7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:29:13 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 26 10:29:13 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"add \"For new parsers:\"","epoch":1629998953,"epoch_utc":null},{"commit":"7661e7f27a4e5c379ea37c7f95496aca2c1e2910","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:27:11 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 26 10:27:11 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"formatting","epoch":1629998831,"epoch_utc":null},{"commit":"f857b7fbf7862ddd7eb5ab20470f5dbaacc62119","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:25:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 26 10:25:37 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"add custom parser folder info","epoch":1629998737,"epoch_utc":null},{"commit":"d94d12dbc5fb3e3712b2f1aea949013cb8213e28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:20:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 26 10:20:53 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":11}]},"message":"add foo parser template info","epoch":1629998453,"epoch_utc":null},{"commit":"700916276ae8b0a106410e3dd2ea3e00248ee37a","merge":"473f706 834e523","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:01:08 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Aug 26 10:01:08 2021 -0700","message":"Merge pull request #159 from kellyjonbrazil/master\n\nSync Master to dev","epoch":1629997268,"epoch_utc":null},{"commit":"834e52369ceb479776ddc8fc2931790af53b9c18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 16 10:33:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 16 10:33:26 2021 -0700","stats":{"files_changed":3,"insertions":1,"deletions":5,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":6},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update man page","epoch":1629135206,"epoch_utc":null},{"commit":"1ce53365de61421c8bd43e04590038083894153b","merge":"2689697 473f706","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 16 10:32:03 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Aug 16 10:32:03 2021 -0700","message":"Merge pull request #156 from kellyjonbrazil/dev\n\nDev v1.16.1","epoch":1629135123,"epoch_utc":null},{"commit":"473f70668f04a38765559c5dbf0468af24d625c9","merge":"0dbd270 2689697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 16 10:28:11 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 16 10:28:11 2021 -0700","message":"Merge branch 'master' into dev\n\n# Conflicts:\n# jc/man/jc.1.gz\n# man/jc.1\n# man/jc.1.gz","epoch":1629134891,"epoch_utc":null},{"commit":"0dbd2702f6ab2640b2ccdea92411ac0789673e66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 17:17:51 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Aug 13 17:17:51 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]},"message":"reformat doc_text for nicer indentation","epoch":1628900271,"epoch_utc":null},{"commit":"01e3764a9b6ba902aea522bf6b7005fd37b3acbb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 16:03:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Aug 13 16:03:46 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"fix join syntax","epoch":1628895826,"epoch_utc":null},{"commit":"ff9c81722ae7221364e9bcb83d98b16b4263334e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 16:01:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Aug 13 16:01:45 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"try/except for shlex.join since only available in python 3.8","epoch":1628895705,"epoch_utc":null},{"commit":"166aef7a022ed29862ab2e0702d53c591bb5cc77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 15:22:33 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Aug 13 15:22:33 2021 -0700","stats":{"files_changed":6,"insertions":4,"deletions":4,"files":["docs/parsers/stat.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz","setup.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1628893353,"epoch_utc":null},{"commit":"78caf7646baf5d35602fd76771443cd64bd783af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 15:19:41 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Aug 13 15:19:41 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add stat fix","epoch":1628893181,"epoch_utc":null},{"commit":"1f99d40cecc5d88a246f3558f71db376ebd885c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 15:19:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Aug 13 15:19:31 2021 -0700","stats":{"files_changed":4,"insertions":17,"deletions":2,"files":["jc/parsers/stat.py","tests/fixtures/osx-10.14.6/stat-filename-with-spaces.json","tests/fixtures/osx-10.14.6/stat-filename-with-spaces.out","tests/test_stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"tests/fixtures/osx-10.14.6/stat-filename-with-spaces.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/stat-filename-with-spaces.out","lines_changed":2},{"name":"tests/test_stat.py","lines_changed":12}]},"message":"fix filename with spaces for osx/bsd","epoch":1628893171,"epoch_utc":null},{"commit":"4c2912d3d5ec1fd2d5d891f2b3c58a33dd8572be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 15:19:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Aug 13 15:19:17 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"use shlex.join to quote run_command_str for better error messages","epoch":1628893157,"epoch_utc":null},{"commit":"45e6e06be581f787f707e3f5645129c713478d16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 14:19:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Aug 13 14:19:45 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"add glob and process substitution fixes","epoch":1628889585,"epoch_utc":null},{"commit":"fdbe3e05f323c95687a1137983f9623911008ca2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 14:19:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Aug 13 14:19:26 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"fix issue with globs not including filenames with spaces with magic syntax (introduced during switch to use subprocess to grab process exit code). No longer need to shlex quote arguments.","epoch":1628889566,"epoch_utc":null},{"commit":"7cc168f6409af13fda815d0d2a6db25b7c9ba367","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 12 16:55:07 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 12 16:55:07 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add comment","epoch":1628812507,"epoch_utc":null},{"commit":"ff2d609c9b5f5f57f3331e5593e8fe87c01654dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 12 16:36:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 12 16:36:35 2021 -0700","stats":{"files_changed":1,"insertions":12,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":13}]},"message":"add close_fds=False in subprocess.Popen() to allow process substitution in magic syntax. Also check for too many open files exception","epoch":1628811395,"epoch_utc":null},{"commit":"2689697b4c21758903e5f74ec069e89be585aba2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 22 17:03:00 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 22 17:03:00 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting","epoch":1626998580,"epoch_utc":null},{"commit":"f90a0ea8ab15629b7786e4431e9c968c3a896ee0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 22 12:20:48 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 22 12:20:48 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":4}]},"message":"formatting","epoch":1626981648,"epoch_utc":null},{"commit":"caabe60f849fb2422e47b8f10e0ff35beb706dcd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 22 12:20:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 22 12:20:31 2021 -0700","stats":{"files_changed":5,"insertions":3,"deletions":3,"files":["docs/parsers/kv.md","jc/man/jc.1.gz","jc/parsers/kv.py","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/kv.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/kv.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"fix kv example","epoch":1626981631,"epoch_utc":null},{"commit":"2bef4ed6038201f54339e750a833260dc1998591","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 21 08:47:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 21 08:47:16 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","README.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"README.md","lines_changed":4}]},"message":"package updates","epoch":1626882436,"epoch_utc":null},{"commit":"ee57be533b12593a33a2abbb2892697f0bd40c65","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 20 12:35:02 2021 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 20 12:35:02 2021 -0500","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2}]},"message":"fix sfdisk example","epoch":1626809702,"epoch_utc":null},{"commit":"c5b7aaca25d6b66d3e44256c2c6760a4cf2956ec","merge":"3b22ce4 7a1be90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 20 10:19:14 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Jul 20 10:19:14 2021 -0700","message":"Merge pull request #149 from kellyjonbrazil/dev\n\nDev v1.16.0","epoch":1626801554,"epoch_utc":null},{"commit":"7a1be905bb8654558afb5979b0bd78d4a8488874","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 20 12:15:29 2021 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 20 12:15:29 2021 -0500","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"version bump","epoch":1626808529,"epoch_utc":null},{"commit":"5798495a11afa2f72ce6f79be785d46240fcbeb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 20 12:13:33 2021 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 20 12:13:33 2021 -0500","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":6}]},"message":"add 1.15.7 to 1.16.0 changes","epoch":1626808413,"epoch_utc":null},{"commit":"46171e220252ec92d18e744d2a57c1d6a6dc19f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 20 12:13:14 2021 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 20 12:13:14 2021 -0500","stats":{"files_changed":1,"insertions":69,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":69}]},"message":"add sfdisk example","epoch":1626808394,"epoch_utc":null},{"commit":"dd5c924ff505dcc2a9c851d2425677bdf16ea462","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 19 12:13:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 19 12:13:46 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add man page location change","epoch":1626722026,"epoch_utc":null},{"commit":"30c4ab297658228a07ef9b1585516719af3febb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 19 12:08:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 19 12:08:50 2021 -0700","stats":{"files_changed":3,"insertions":515,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":515},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"new man page location","epoch":1626721730,"epoch_utc":null},{"commit":"26ea4d47b33277efb0ddafe8f421791696277c07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 19 12:04:25 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 19 12:04:25 2021 -0700","stats":{"files_changed":5,"insertions":14,"deletions":3,"files":["CHANGELOG","MANIFEST.in","jc/__init__.py","mangen.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":10},{"name":"MANIFEST.in","lines_changed":1},{"name":"jc/__init__.py","lines_changed":2},{"name":"mangen.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump and deprecate /man/jc.1.gz and /jc/man/jc.1.gz","epoch":1626721465,"epoch_utc":null},{"commit":"2732cd175c1e878210707162de3928f33fb2f201","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 12 08:10:18 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 12 08:10:18 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["CHANGELOG","MANIFEST.in"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"MANIFEST.in","lines_changed":1}]},"message":"include CHANGELOG in source distribution","epoch":1626102618,"epoch_utc":null},{"commit":"3e54b597be88b0e342e4361b7f2c1af447f9482b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 7 09:00:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 7 09:00:19 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add timezone change for unit tests","epoch":1625673619,"epoch_utc":null},{"commit":"f10ebea20962084833e5c1ebd9bc90a251bf3ff4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 7 08:53:52 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 7 08:53:52 2021 -0700","stats":{"files_changed":11,"insertions":78,"deletions":0,"files":["tests/test_date.py","tests/test_dig.py","tests/test_dir.py","tests/test_last.py","tests/test_ls.py","tests/test_rpm_qai.py","tests/test_stat.py","tests/test_systeminfo.py","tests/test_upower.py","tests/test_utils.py","tests/test_who.py"],"file_stats":[{"name":"tests/test_date.py","lines_changed":7},{"name":"tests/test_dig.py","lines_changed":7},{"name":"tests/test_dir.py","lines_changed":7},{"name":"tests/test_last.py","lines_changed":7},{"name":"tests/test_ls.py","lines_changed":7},{"name":"tests/test_rpm_qai.py","lines_changed":7},{"name":"tests/test_stat.py","lines_changed":7},{"name":"tests/test_systeminfo.py","lines_changed":7},{"name":"tests/test_upower.py","lines_changed":7},{"name":"tests/test_utils.py","lines_changed":8},{"name":"tests/test_who.py","lines_changed":7}]},"message":"update tests to set correct timezone on POSIX systems","epoch":1625673232,"epoch_utc":null},{"commit":"2c6f3993cb4c5e559dbac7a479ec889aa2cba752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 1 15:53:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 1 15:53:10 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/route.md","jc/man/jc.1.gz","jc/parsers/route.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/route.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"remove extra comma","epoch":1625179990,"epoch_utc":null},{"commit":"708a696920b52c2614edcdba264912527b2dfbef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 1 15:51:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 1 15:51:38 2021 -0700","stats":{"files_changed":3,"insertions":0,"deletions":2,"files":["docs/parsers/route.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/route.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"remove extra lines","epoch":1625179898,"epoch_utc":null},{"commit":"20bbb5d331575c8fc33ba63643882a62650c97b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 1 15:50:55 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 1 15:50:55 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":2}]},"message":"remove extra lines","epoch":1625179855,"epoch_utc":null},{"commit":"223e785b547d9376174efa15321d60a533847c57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 17:07:43 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 30 17:07:43 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/sfdisk.py"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":8}]},"message":"rename variable","epoch":1625098063,"epoch_utc":null},{"commit":"3d78692c59980e4d70361d3a9f74bacc3f21376e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 16:54:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 30 16:54:34 2021 -0700","stats":{"files_changed":11,"insertions":150,"deletions":1,"files":["tests/fixtures/centos-7.7/sfdisk-d-multi.json","tests/fixtures/centos-7.7/sfdisk-d-multi.out","tests/fixtures/centos-7.7/sfdisk-d.json","tests/fixtures/centos-7.7/sfdisk-d.out","tests/fixtures/centos-7.7/sfdisk-l-multi.json","tests/fixtures/centos-7.7/sfdisk-l-multi.out","tests/fixtures/centos-7.7/sfdisk-l.json","tests/fixtures/centos-7.7/sfdisk-luB.json","tests/fixtures/centos-7.7/sfdisk-luM.json","tests/fixtures/centos-7.7/sfdisk-luS.json","tests/test_sfdisk.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/sfdisk-d-multi.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-d-multi.out","lines_changed":16},{"name":"tests/fixtures/centos-7.7/sfdisk-d.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-d.out","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-l-multi.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-l-multi.out","lines_changed":21},{"name":"tests/fixtures/centos-7.7/sfdisk-l.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-luB.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-luM.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-luS.json","lines_changed":1},{"name":"tests/test_sfdisk.py","lines_changed":106}]},"message":"add sfdisk tests","epoch":1625097274,"epoch_utc":null},{"commit":"5321a15dcf13cf14efe578d0f66b651078c3d8a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 14:30:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 30 14:30:35 2021 -0700","stats":{"files_changed":4,"insertions":8,"deletions":8,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":8},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/sfdisk.py","lines_changed":8},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update examples","epoch":1625088635,"epoch_utc":null},{"commit":"a452f8252a593f7914ebece53af9d73f4fd11a19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 14:27:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 30 14:27:12 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":4},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/sfdisk.py","lines_changed":4},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"fix integer conversion","epoch":1625088432,"epoch_utc":null},{"commit":"49267f09ac01fead3b20b2d481bb5e0d07af1439","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 14:06:15 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 30 14:06:15 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/sfdisk.py"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":4}]},"message":"change to root prompt in examples","epoch":1625087175,"epoch_utc":null},{"commit":"db47f35783e46a8299533c22146d851509f6ceb2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 12:38:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 30 12:38:36 2021 -0700","stats":{"files_changed":15,"insertions":610,"deletions":3,"files":["CHANGELOG","README.md","docs/parsers/sfdisk.md","jc/__init__.py","jc/cli.py","jc/man/jc.1.gz","jc/parsers/sfdisk.py","jc/utils.py","man/jc.1.gz","setup.py","tests/fixtures/centos-7.7/sfdisk-d.out","tests/fixtures/centos-7.7/sfdisk-l.out","tests/fixtures/centos-7.7/sfdisk-luB.out","tests/fixtures/centos-7.7/sfdisk-luM.out","tests/fixtures/centos-7.7/sfdisk-luS.out"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/sfdisk.md","lines_changed":213},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/sfdisk.py","lines_changed":325},{"name":"jc/utils.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/sfdisk-d.out","lines_changed":8},{"name":"tests/fixtures/centos-7.7/sfdisk-l.out","lines_changed":14},{"name":"tests/fixtures/centos-7.7/sfdisk-luB.out","lines_changed":14},{"name":"tests/fixtures/centos-7.7/sfdisk-luM.out","lines_changed":14},{"name":"tests/fixtures/centos-7.7/sfdisk-luS.out","lines_changed":14}]},"message":"add working sfdisk parser","epoch":1625081916,"epoch_utc":null},{"commit":"d48abf312c1f55ab31aa11da2b6cf6bc8166733b","merge":"ff7ab0a 3b22ce4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 10:10:59 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Jun 30 10:10:59 2021 -0700","message":"Merge pull request #147 from kellyjonbrazil/master\n\nsync to dev","epoch":1625073059,"epoch_utc":null},{"commit":"3b22ce41105387e7f46a410460cf04759feef197","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 28 08:04:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jun 28 08:04:46 2021 -0700","stats":{"files_changed":6,"insertions":6,"deletions":3,"files":["CHANGELOG","jc/__init__.py","jc/cli.py","jc/man/jc.1.gz","man/jc.1.gz","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"setup.py","lines_changed":2}]},"message":"fix local plugin parser issue where parser has .py in the name but it is not at the end","epoch":1624892686,"epoch_utc":null},{"commit":"c521ca5bc9e2b035cfef6ff65f6b303b3ec44296","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 11 11:41:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jun 11 11:41:16 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"change possible to available","epoch":1623436876,"epoch_utc":null},{"commit":"3ddc1c665990e1e732314330db214a81ab810fe9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 11 11:39:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jun 11 11:39:38 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add jello","epoch":1623436778,"epoch_utc":null},{"commit":"a8e19402b7d1f9f06bc40b81a15dec401154180c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 9 08:33:48 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 9 08:33:48 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["ADVANCED_USAGE.md"],"file_stats":[{"name":"ADVANCED_USAGE.md","lines_changed":4}]},"message":"remove temporary fix","epoch":1623252828,"epoch_utc":null},{"commit":"0927902b30654274743ab9092e90e768709a9937","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 8 16:51:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jun 8 16:51:03 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["ADVANCED_USAGE.md"],"file_stats":[{"name":"ADVANCED_USAGE.md","lines_changed":4}]},"message":"temp fix for wrong url","epoch":1623196263,"epoch_utc":null},{"commit":"572548b42fb6ed9d32a392503d44fac1a8f146d3","merge":"95aec9c ff7ab0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 27 17:00:54 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu May 27 17:00:54 2021 -0700","message":"Merge pull request #141 from kellyjonbrazil/dev\n\nDev v1.15.5","epoch":1622160054,"epoch_utc":null},{"commit":"ff7ab0a1ed7f468d0e84eb3bf0636f53913c490d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 27 16:58:14 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 27 16:58:14 2021 -0700","stats":{"files_changed":3,"insertions":0,"deletions":1,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc updates for v1.15.5","epoch":1622159894,"epoch_utc":null},{"commit":"5db71b05cb28691bbbaa5d668bcd4a4ac7e68b85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 25 09:47:24 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 25 09:47:24 2021 -0700","stats":{"files_changed":5,"insertions":3,"deletions":3,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/manpage_template","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add en_US.UTF-8 to LANG info","epoch":1621961244,"epoch_utc":null},{"commit":"f9b952885aa7f2b450786a08c3879d9e358886da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 21 10:21:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 21 10:21:21 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add python 3.9.5 packaged info","epoch":1621617681,"epoch_utc":null},{"commit":"e7983bc0b29abaca2147038dfad018cba1e67cdf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 21 10:16:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 21 10:16:19 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xml.md","docs/parsers/yaml.md"],"file_stats":[{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2}]},"message":"version bump","epoch":1621617379,"epoch_utc":null},{"commit":"473a6431425fc24a4cc83939ff592e0d49535b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 21 10:16:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 21 10:16:08 2021 -0700","stats":{"files_changed":4,"insertions":10,"deletions":3,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":11},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/readme_template","lines_changed":2}]},"message":"add windows msi info","epoch":1621617368,"epoch_utc":null},{"commit":"14f3d442cb86250b8f2cdfd7977938634b8abd6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 21 09:46:51 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 21 09:46:51 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"formatting","epoch":1621615611,"epoch_utc":null},{"commit":"d6f4ed9ab55fe9b7c2766fb437172af62a1d5c87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 21 09:46:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 21 09:46:34 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":2}]},"message":"add long-form UTC test","epoch":1621615594,"epoch_utc":null},{"commit":"1b8d654444ff8c8b8171c7ac63e2736447a36c09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 20 15:49:18 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 20 15:49:18 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add error message info","epoch":1621550958,"epoch_utc":null},{"commit":"6002af0dca334c0affaff3e9acdca416238c7d82","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 20 15:46:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 20 15:46:31 2021 -0700","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":11}]},"message":"add more error message detail to the user for ParseError and LibraryNotFound exceptions","epoch":1621550791,"epoch_utc":null},{"commit":"0924d822a30c8806f65574c010561cd6f7c8e181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 20 15:36:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 20 15:36:27 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":1,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":9}]},"message":"add windows example","epoch":1621550187,"epoch_utc":null},{"commit":"72a37b928924c3edde3a4edb952f98c94aa05f0b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 19 16:23:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 19 16:23:34 2021 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1621466614,"epoch_utc":null},{"commit":"5eef7bd769f8ffb03ba396833d1b33484041a99f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 19 16:14:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 19 16:14:26 2021 -0700","stats":{"files_changed":2,"insertions":16,"deletions":16,"files":["jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/xml.py","lines_changed":16},{"name":"jc/parsers/yaml.py","lines_changed":16}]},"message":"use LibraryNotInstalled exception instead of exiting via sys.exit","epoch":1621466066,"epoch_utc":null},{"commit":"c6893e1bd5283d982a7ecd6f84bdfdd0054ce7a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 19 16:13:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 19 16:13:05 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/exceptions.py"],"file_stats":[{"name":"jc/exceptions.py","lines_changed":4}]},"message":"add LibraryNotInstalled exception","epoch":1621465985,"epoch_utc":null},{"commit":"039f6612e491c6f821c001252e122e9b0a781104","merge":"9c57c09 95aec9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 18 10:29:02 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue May 18 10:29:02 2021 -0700","message":"Merge pull request #139 from kellyjonbrazil/master\n\nsync branches","epoch":1621358942,"epoch_utc":null},{"commit":"95aec9c6f9aa8fb4d0dae227410a1346d550f47f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 18 10:27:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 18 10:27:36 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["templates/manpage_template"],"file_stats":[{"name":"templates/manpage_template","lines_changed":6}]},"message":"add info about Magic syntax not supporting shell builtins","epoch":1621358856,"epoch_utc":null},{"commit":"4e9652a8ec2482a64dc029b0ce0e1047a3e49867","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 17 14:36:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 17 14:36:20 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"spelling","epoch":1621287380,"epoch_utc":null},{"commit":"773b7f4b1f23e04c90e602aab05bc1a7e5aae37b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 17 08:38:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 17 08:38:09 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"templates/readme_template","lines_changed":1}]},"message":"add space before exit code table","epoch":1621265889,"epoch_utc":null},{"commit":"d17ffde9cdc35392ae25d8e9de5328e46067df2a","merge":"efb1d3e 9c57c09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 17 08:35:13 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon May 17 08:35:13 2021 -0700","message":"Merge pull request #138 from kellyjonbrazil/dev\n\nDev v1.15.4","epoch":1621265713,"epoch_utc":null},{"commit":"9c57c09c00e64a9031391b9b70083ad6ecf0bc0b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 17 08:24:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 17 08:24:31 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update for release","epoch":1621265071,"epoch_utc":null},{"commit":"4d730a9de5a0d7c064a9a59e3add86e58d9ec492","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 20:57:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 20:57:17 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add UTC fix","epoch":1621223837,"epoch_utc":null},{"commit":"fc57bcfce24af23f077d6a73f1db4591d8f99c13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 20:51:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 20:51:39 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":3}]},"message":"fix for when UTC is referenced as \"Coordinated Universal Time\"","epoch":1621223499,"epoch_utc":null},{"commit":"fa5571486c3c19bb7e836f043545ea4f2509ed4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 20:33:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 20:33:03 2021 -0700","stats":{"files_changed":1,"insertions":10,"deletions":10,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":20}]},"message":"simplify json_out function","epoch":1621222383,"epoch_utc":null},{"commit":"9996c4fe23564dfb52e3c7dbdbd8bd67edfb1e95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:55:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 19:55:53 2021 -0700","stats":{"files_changed":7,"insertions":10,"deletions":10,"files":["EXAMPLES.md","docs/parsers/history.md","docs/parsers/jobs.md","jc/man/jc.1.gz","jc/parsers/history.py","jc/parsers/jobs.py","man/jc.1.gz"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":6},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":6},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update docs for shell builtins","epoch":1621220153,"epoch_utc":null},{"commit":"038d4290248e6bb94762bb51f69e9958f7c1fecb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:44:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 19:44:10 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":6,"files":["docs/parsers/dig.md","docs/parsers/dir.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":8},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc updates","epoch":1621219450,"epoch_utc":null},{"commit":"9bf6facb0d7d76583802309253e7d13ba5148997","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:43:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 19:43:10 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":6,"files":["jc/parsers/dir.py"],"file_stats":[{"name":"jc/parsers/dir.py","lines_changed":9}]},"message":"remove magic command capability since dir is a shell builtin","epoch":1621219390,"epoch_utc":null},{"commit":"965717886e4ebaa6a4a494f189d9fdd01e33eb21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:30:00 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 19:30:00 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add exceptions module info","epoch":1621218600,"epoch_utc":null},{"commit":"e9bfc3dd29f914fd91e937f06d7f59c0f91b8449","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:21:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 19:21:37 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"add time format, dig compatibility, windows colors fix","epoch":1621218097,"epoch_utc":null},{"commit":"f46b33eacf070b4dc72c8d8a66aae49abd149e5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:20:13 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 19:20:13 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2},{"name":"tests/test_utils.py","lines_changed":2}]},"message":"add windows time format","epoch":1621218013,"epoch_utc":null},{"commit":"f475fe44df2fb2661c5bce4d1e602a4bba7e87c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:09:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 19:09:53 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":3}]},"message":"add new time format for systeminfo","epoch":1621217393,"epoch_utc":null},{"commit":"5fdbe2962d84dad89de23f103d97b76b90450206","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 17:48:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 17:48:56 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":2}]},"message":"make dig compatible with all platforms","epoch":1621212536,"epoch_utc":null},{"commit":"ab291b9eef6ed5c8ab59b5652f676178941d5ce5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 17:48:40 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 17:48:40 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"only force enable colors when running on windows","epoch":1621212520,"epoch_utc":null},{"commit":"fd411fd77273cb7cf872c03ed6a258ccdee4d261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 17:43:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 17:43:05 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"attempt to get colors working on windows","epoch":1621212185,"epoch_utc":null},{"commit":"b1e95a60a2461dc401ffc299ef6338b65ef12691","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 13 08:42:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 13 08:42:27 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"remove unnecessary comment","epoch":1620920547,"epoch_utc":null},{"commit":"bb1439f0d53e87f636fba05fbd30c3c79fb16002","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 13 08:20:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 13 08:20:58 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":5}]},"message":"use ParseError exception from jc.exceptions module","epoch":1620919258,"epoch_utc":null},{"commit":"ba963d98a0a2b3a0dfca6b211096d802253da5fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 13 08:20:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 13 08:20:35 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/exceptions.py"],"file_stats":[{"name":"jc/exceptions.py","lines_changed":5}]},"message":"add exceptions module including ParseError","epoch":1620919235,"epoch_utc":null},{"commit":"83440ccb55d0db15b112b8b7d7352493ff516112","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 13 08:02:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 13 08:02:38 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"error message capitalization","epoch":1620918158,"epoch_utc":null},{"commit":"796f61bfa417afdc6ab48fddbb5502cd0659b840","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 17:01:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 12 17:01:09 2021 -0700","stats":{"files_changed":1,"insertions":10,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":13}]},"message":"handle case where the user pipes data and uses magic syntax simultaneously","epoch":1620864069,"epoch_utc":null},{"commit":"070cac4ae12282458a1e1fc8618ebc473d23cacf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 15:36:06 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 12 15:36:06 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"remove commented line","epoch":1620858966,"epoch_utc":null},{"commit":"3ed84f9f42e4e883ddaac28ab49d675600b49424","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 15:19:11 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 12 15:19:11 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":18}]},"message":"reorganize main function. remove pass condition.","epoch":1620857951,"epoch_utc":null},{"commit":"a205afb6f355edbb4b98200a980b9601ed0f0658","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 13:44:15 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 12 13:44:15 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"set run_command_str if run_command is set","epoch":1620852255,"epoch_utc":null},{"commit":"a6d983dd8f3871cbc2391c313340167829a575d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 13:38:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 12 13:38:08 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"move run_command_str variable","epoch":1620851888,"epoch_utc":null},{"commit":"b6c8d6d01d740827273265dbb0cfbaf7875ac7f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 13:18:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 12 13:18:58 2021 -0700","stats":{"files_changed":1,"insertions":45,"deletions":17,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":62}]},"message":"add exception handling for filenotfound or other subprocess.popen and json.dumps exceptions","epoch":1620850738,"epoch_utc":null},{"commit":"b5a5d5b133f1c0df8023776e59697b7579f8c18a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 11:36:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 12 11:36:27 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"set parser_name for magic syntax use","epoch":1620844587,"epoch_utc":null},{"commit":"da528e7814b0cf25a359c3556d0e286e7bf004b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 09:40:22 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 12 09:40:22 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"move separators to a variable","epoch":1620837622,"epoch_utc":null},{"commit":"4acebf4f621ac564f82e3a97e6810fbb08a9dbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 08:48:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 12 08:48:49 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"move variables","epoch":1620834529,"epoch_utc":null},{"commit":"4d40808d2b70b7543eadcfd2d35c16ebe91f2f9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 08:27:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 12 08:27:39 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":7}]},"message":"update comments","epoch":1620833259,"epoch_utc":null},{"commit":"c543f00bd3c737f73144bb2980d12793042459b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 14:30:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 11 14:30:46 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"simplify piped_output function","epoch":1620768646,"epoch_utc":null},{"commit":"947cf41dfab5811c0e76e371231c59a2d6372752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 12:42:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 11 12:42:21 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add exit code info","epoch":1620762141,"epoch_utc":null},{"commit":"8d8c58742e5106c3387a627cd1b1323a76cc9623","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 11:32:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 11 11:32:08 2021 -0700","stats":{"files_changed":5,"insertions":21,"deletions":15,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":13},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/manpage_template","lines_changed":10},{"name":"templates/readme_template","lines_changed":13}]},"message":"formatting","epoch":1620757928,"epoch_utc":null},{"commit":"995ecc9bfb0425b0ee9e4250395b0200b46c1e89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 11:11:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 11 11:11:17 2021 -0700","stats":{"files_changed":3,"insertions":15,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/manpage_template","lines_changed":15}]},"message":"add exit codes section","epoch":1620756677,"epoch_utc":null},{"commit":"21a15225ebff645439b12d6249dc3e28d7bc09ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 10:59:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 11 10:59:26 2021 -0700","stats":{"files_changed":2,"insertions":18,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":9},{"name":"templates/readme_template","lines_changed":9}]},"message":"add exit codes section","epoch":1620755966,"epoch_utc":null},{"commit":"48921d4584068fadb0f776ed7e81c21d89172e2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 10:50:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 11 10:50:35 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"ensure exit code never exceeds 255","epoch":1620755435,"epoch_utc":null},{"commit":"342db45edc94ab1c3b3ae70e7cf4ca4076e2c7eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 10:36:55 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 11 10:36:55 2021 -0700","stats":{"files_changed":1,"insertions":18,"deletions":10,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":28}]},"message":"fix combined exit codes","epoch":1620754615,"epoch_utc":null},{"commit":"5f88ecf8443bc6e9a7cda5bc60858f37cc09f4f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 21:23:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 21:23:23 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]},"message":"add comments to magic_parser return","epoch":1620707003,"epoch_utc":null},{"commit":"a56aebfe7024914d2c602278964b99d1443de335","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 21:09:00 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 21:09:00 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"remove side-effect comment since it is no longer relevant","epoch":1620706140,"epoch_utc":null},{"commit":"422bb744a82472546d62c72ba05eaa1d18d5068a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 21:03:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 21:03:30 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update man pages","epoch":1620705810,"epoch_utc":null},{"commit":"c3b814a15f571ac84a8ce0719d7fd88acf814caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 21:02:28 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 21:02:28 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":7}]},"message":"move imports to the top","epoch":1620705748,"epoch_utc":null},{"commit":"e4574047a0ef6fcd4a47142421a1d05795c7925a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 20:49:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 20:49:44 2021 -0700","stats":{"files_changed":1,"insertions":21,"deletions":21,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":42}]},"message":"update tests for magic_parser function","epoch":1620704984,"epoch_utc":null},{"commit":"0d7d7951f82627d1fb1e20d1398bd7f88c5ce1be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 18:58:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 18:58:45 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":12}]},"message":"don't reset sys.argv anymore. check for 'valid_command' instead","epoch":1620698325,"epoch_utc":null},{"commit":"da904e4770a20ae85fc67476ae4a529564d0a3ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 18:50:59 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 18:50:59 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"remove final \\n from stderr string when printing","epoch":1620697859,"epoch_utc":null},{"commit":"19b540041add64fe6650c3634ec869421ffbc769","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 18:31:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 18:31:30 2021 -0700","stats":{"files_changed":1,"insertions":82,"deletions":51,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":133}]},"message":"proof of concept for passing command exit codes when using magic syntax. Needs more testing","epoch":1620696690,"epoch_utc":null},{"commit":"f2ffb93eeaf4c8b5aa93f3e8808bdc044582e8a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 10:43:40 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 10:43:40 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":10,"files":["tests/test_ping.py"],"file_stats":[{"name":"tests/test_ping.py","lines_changed":10}]},"message":"formatting","epoch":1620668620,"epoch_utc":null},{"commit":"c0c0e05642e0f473cde34178d815978fff8fe1ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 10:40:13 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 10:40:13 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add dig `+noall +answer` support","epoch":1620668413,"epoch_utc":null},{"commit":"966978f17e40a338f982628825f30a19d4b84e4c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 10:39:51 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 10:39:51 2021 -0700","stats":{"files_changed":5,"insertions":72,"deletions":0,"files":[".../centos-7.7/ping6-ip-O-p-unparsable.json",".../centos-7.7/ping6-ip-O-p-unparsable.out",".../fixtures/osx-10.14.6/ping6-ip-unparsable.json","tests/fixtures/osx-10.14.6/ping6-ip-unparsable.out","tests/test_ping.py"],"file_stats":[{"name":".../centos-7.7/ping6-ip-O-p-unparsable.json","lines_changed":1},{"name":".../centos-7.7/ping6-ip-O-p-unparsable.out","lines_changed":27},{"name":".../fixtures/osx-10.14.6/ping6-ip-unparsable.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-unparsable.out","lines_changed":9},{"name":"tests/test_ping.py","lines_changed":34}]},"message":"add more unparsable line ping tests","epoch":1620668391,"epoch_utc":null},{"commit":"8ab08a5231e082940a62fcde4be218b7ba94be31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 10:13:52 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 10:13:52 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":4}]},"message":"doc update","epoch":1620666832,"epoch_utc":null},{"commit":"48e534fa03b92b2583c5c6269c76651f3aa420cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 7 16:55:18 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 7 16:55:18 2021 -0700","stats":{"files_changed":3,"insertions":17,"deletions":2,"files":["tests/fixtures/osx-10.14.6/dig-noall-answer.json","tests/fixtures/osx-10.14.6/dig-noall-answer.out","tests/test_dig.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/dig-noall-answer.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig-noall-answer.out","lines_changed":4},{"name":"tests/test_dig.py","lines_changed":14}]},"message":"add +noall +answer test","epoch":1620431718,"epoch_utc":null},{"commit":"61851c1bd02aa82d5d82e68595e45630ead13d34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 7 16:42:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 7 16:42:09 2021 -0700","stats":{"files_changed":2,"insertions":85,"deletions":3,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":40},{"name":"jc/parsers/dig.py","lines_changed":48}]},"message":"add support for +noall +answer","epoch":1620430929,"epoch_utc":null},{"commit":"3c51b2d83d301b4072bbb12fdba4f60b900573da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 7 13:50:28 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 7 13:50:28 2021 -0700","stats":{"files_changed":3,"insertions":40,"deletions":0,"files":[".../centos-7.7/ping-ip-O-unparsedlines.json",".../centos-7.7/ping-ip-O-unparsedlines.out","tests/test_ping.py"],"file_stats":[{"name":".../centos-7.7/ping-ip-O-unparsedlines.json","lines_changed":1},{"name":".../centos-7.7/ping-ip-O-unparsedlines.out","lines_changed":27},{"name":"tests/test_ping.py","lines_changed":12}]},"message":"add tests for unparsable lines on linux","epoch":1620420628,"epoch_utc":null},{"commit":"ee3a28528e152c61f05bdf71f264fe38274b4190","merge":"fe1f101 916bcda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 10:03:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 5 10:03:58 2021 -0700","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev\n\n# Conflicts:\n# templates/readme_template","epoch":1620234238,"epoch_utc":null},{"commit":"916bcdae3881fc9c9f9a91c8c901a714cff3e1da","merge":"fb14f54 efb1d3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 10:02:25 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed May 5 10:02:25 2021 -0700","message":"Merge pull request #136 from kellyjonbrazil/master\n\nmerge changes from master","epoch":1620234145,"epoch_utc":null},{"commit":"efb1d3e6b2db920423511a9dcf4c5e5fd9d6af43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 09:23:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 5 09:23:21 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"templates/readme_template","lines_changed":4}]},"message":"add blog title and minor formatting","epoch":1620231801,"epoch_utc":null},{"commit":"4e6ae66bacc014e49c4a9229d10dcc8e95de436c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 09:20:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 5 09:20:47 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting","epoch":1620231647,"epoch_utc":null},{"commit":"5ee88e7b679bc163a1916d560be6ff29f51699e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 09:18:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 5 09:18:45 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":10}]},"message":"add use cases section","epoch":1620231525,"epoch_utc":null},{"commit":"c3b68903cbd898f80438af342195eec7575aafd3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 09:17:11 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 5 09:17:11 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":10}]},"message":"add use cases section","epoch":1620231431,"epoch_utc":null},{"commit":"fe1f1013a74bdf6b4284f11dd59db8ea17e5e5d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 09:16:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 5 09:16:05 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":10}]},"message":"add use cases section","epoch":1620231365,"epoch_utc":null},{"commit":"fb14f5439f00d5eaf08651c552189fd4be7358d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 08:03:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 5 08:03:27 2021 -0700","stats":{"files_changed":4,"insertions":52,"deletions":3,"files":["jc/parsers/ping.py",".../osx-10.14.6/ping-ip-unknown-errors.json",".../osx-10.14.6/ping-ip-unknown-errors.out","tests/test_ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":7},{"name":".../osx-10.14.6/ping-ip-unknown-errors.json","lines_changed":1},{"name":".../osx-10.14.6/ping-ip-unknown-errors.out","lines_changed":35},{"name":"tests/test_ping.py","lines_changed":12}]},"message":"fix and tests for unknown or unparsable errors","epoch":1620227007,"epoch_utc":null},{"commit":"5ca0fc364eb22d583bee5633cdd7183c1d70bb6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 4 19:05:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 4 19:05:20 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/parsers/ping.md"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":1}]},"message":"add unparsed_line to docs","epoch":1620180320,"epoch_utc":null},{"commit":"a1fe7037e5267ec4aced719eff3715085eb35bca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 4 19:04:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 4 19:04:16 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":10}]},"message":"add unparsed_line field if line cannot be parsed","epoch":1620180256,"epoch_utc":null},{"commit":"c2af7d113ed8e8cf9af985c969cf29858a3c26a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 4 15:35:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 4 15:35:47 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["CHANGELOG","docs/parsers/ping.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"docs/parsers/ping.md","lines_changed":2}]},"message":"add ping updates","epoch":1620167747,"epoch_utc":null},{"commit":"ff034e401d5c33efbc3c4bc2f0e386d81eaae7fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 4 15:34:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 4 15:34:45 2021 -0700","stats":{"files_changed":1,"insertions":59,"deletions":43,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":102}]},"message":"use try/except to make parser more resilient against unknown error types","epoch":1620167685,"epoch_utc":null},{"commit":"5abe095beb4b668e5f55fe8c9588677547e4c2a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 3 15:26:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 3 15:26:16 2021 -0700","stats":{"files_changed":1,"insertions":14,"deletions":3,"files":["docs/parsers/ping.md"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":17}]},"message":"update ping docs","epoch":1620080776,"epoch_utc":null},{"commit":"33de5f01e638953c83bb0960dc3550ca4547849b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 3 15:16:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 3 15:16:47 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["jc/__init__.py","setup.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":4},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1620080207,"epoch_utc":null},{"commit":"8ce155d843806be4ad23491b4401e4eda02e2a1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 3 15:16:33 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 3 15:16:33 2021 -0700","stats":{"files_changed":5,"insertions":86,"deletions":23,"files":["CHANGELOG","jc/parsers/ping.py",".../fixtures/osx-10.14.6/ping-ip-unreachable.json","tests/fixtures/osx-10.14.6/ping-ip-unreachable.out","tests/test_ping.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/ping.py","lines_changed":56},{"name":".../fixtures/osx-10.14.6/ping-ip-unreachable.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-unreachable.out","lines_changed":35},{"name":"tests/test_ping.py","lines_changed":14}]},"message":"add support for error replies in v4 ping on osx and bsd","epoch":1620080193,"epoch_utc":null},{"commit":"b921d5ec9583c8f8e992613ae2eaf62165722054","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 30 16:53:52 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 30 16:53:52 2021 -0700","stats":{"files_changed":1,"insertions":105,"deletions":6,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":111}]},"message":"initial support for error replies in bsd/osx","epoch":1619826832,"epoch_utc":null},{"commit":"e21542aaa2aa5f2f287ddc227df41ae47d761332","merge":"d24f9a8 6150aae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 30 10:31:55 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Apr 30 10:31:55 2021 -0700","message":"Merge pull request #135 from kellyjonbrazil/dev\n\nDev clarify packaged binaries in readme","epoch":1619803915,"epoch_utc":null},{"commit":"6150aae0aeabafba26d9f119406b0660d9221cb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 30 10:31:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 30 10:31:02 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"clarify packaged binaries","epoch":1619803862,"epoch_utc":null},{"commit":"f27b35f37104ad2012c3bddde0bd94941af06894","merge":"bd428a9 d24f9a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 15:28:35 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Apr 28 15:28:35 2021 -0700","message":"Merge pull request #131 from kellyjonbrazil/master\n\nsync branches","epoch":1619648915,"epoch_utc":null},{"commit":"d24f9a885d3954035a98a488671486408f509dca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 15:26:52 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 28 15:26:52 2021 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["CONTRIBUTING.md","README.md","templates/readme_template"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2},{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"fix contributing link","epoch":1619648812,"epoch_utc":null},{"commit":"48dd82c8d1b756c4e08d49b8234b8060080dc035","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 15:15:41 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 28 15:15:41 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"trigger page build on github pages","epoch":1619648141,"epoch_utc":null},{"commit":"e57167ad1f240de6ec5fc86c51cfb780535cd783","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 12:23:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 28 12:23:31 2021 -0700","message":"empty commit","epoch":1619637811,"epoch_utc":null},{"commit":"ada91376426ff359c495fb31081404a2cce72b5f","merge":"0c209db bd428a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 11:53:15 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Apr 28 11:53:15 2021 -0700","message":"Merge pull request #130 from kellyjonbrazil/dev\n\nDev link updates","epoch":1619635995,"epoch_utc":null},{"commit":"bd428a9fd75327710dce96f3c95f74ab9d1beaad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 11:52:24 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 28 11:52:24 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"fix link","epoch":1619635944,"epoch_utc":null},{"commit":"934941332f91d9e2cc4e691b154bb5427166ed30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 11:50:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 28 11:50:10 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"templates/readme_template","lines_changed":6}]},"message":"minor link updates","epoch":1619635810,"epoch_utc":null},{"commit":"0c209dbd108638f89a43801126a332379be9ae8b","merge":"92e2252 56e041a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 11:36:05 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Apr 28 11:36:05 2021 -0700","message":"Merge pull request #129 from kellyjonbrazil/dev\n\nDev update readme","epoch":1619634965,"epoch_utc":null},{"commit":"56e041aa260b2daf2f5662fae98645a93137adb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 11:34:51 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 28 11:34:51 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add Practical JSON at the Command Line blog link","epoch":1619634891,"epoch_utc":null},{"commit":"cf9d48582e4e5df6c8498b916a2f9cf036869f3d","merge":"35464bb 92e2252","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 13:17:20 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Apr 26 13:17:20 2021 -0700","message":"Merge pull request #128 from kellyjonbrazil/master\n\nsync branches","epoch":1619468240,"epoch_utc":null},{"commit":"92e2252bee00482bb0eeae3074b107d4c8553e4c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 12:18:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 26 12:18:21 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"fix typo","epoch":1619464701,"epoch_utc":null},{"commit":"fd7861db11e5aaa17c4e7bbce942c0c096116e30","merge":"fcc7e52 35464bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 12:12:02 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Apr 26 12:12:02 2021 -0700","message":"Merge pull request #127 from kellyjonbrazil/dev\n\nDev v1.15.3","epoch":1619464322,"epoch_utc":null},{"commit":"35464bbbfb6b424ef3ee1c855557ada1bf3769fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 12:08:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 26 12:08:10 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"date update","epoch":1619464090,"epoch_utc":null},{"commit":"db8ddd7f0e0c2a8bd3e545619e81d3d3972a4d7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 12:04:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 26 12:04:03 2021 -0700","stats":{"files_changed":5,"insertions":11,"deletions":17,"files":["jc/man/jc.1.gz","jc/parsers/ufw.py","man/jc.1.gz","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/ufw.py","lines_changed":24},{"name":"man/jc.1.gz","lines_changed":null},{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.json","lines_changed":2}]},"message":"fix for scenarios where the default port range didn't always display, or overrode existing port ranges.","epoch":1619463843,"epoch_utc":null},{"commit":"72207c54ee5734e3d2d3d1a063c8daf1edaa8815","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 10:02:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 26 10:02:02 2021 -0700","stats":{"files_changed":3,"insertions":102,"deletions":94,"files":["docs/parsers/ufw_appinfo.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/ufw_appinfo.md","lines_changed":196},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update ufw app info docs to support multiple apps (ufw app info all)","epoch":1619456522,"epoch_utc":null},{"commit":"a683f68003ea64dd5e2c4f06b53a1561ad774f12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 10:00:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 26 10:00:44 2021 -0700","stats":{"files_changed":9,"insertions":285,"deletions":202,"files":["EXAMPLES.md","jc/parsers/ufw_appinfo.py","tests/fixtures/generic/ufw-appinfo-msn.json","tests/fixtures/generic/ufw-appinfo-test.json","tests/fixtures/generic/ufw-appinfo-test2.json","tests/fixtures/generic/ufw-appinfo-test3.json","tests/fixtures/ubuntu-18.04/ufw-appinfo-all.json","tests/fixtures/ubuntu-18.04/ufw-appinfo-all.out","tests/test_ufw_appinfo.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":68},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":345},{"name":"tests/fixtures/generic/ufw-appinfo-msn.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw-appinfo-test.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw-appinfo-test2.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw-appinfo-test3.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-appinfo-all.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ufw-appinfo-all.out","lines_changed":51},{"name":"tests/test_ufw_appinfo.py","lines_changed":14}]},"message":"change schema to a list of dictionaries to support `ufw app info all` use case","epoch":1619456444,"epoch_utc":null},{"commit":"8d2d3db3fa969456342181a226bf54a3f1613542","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 21:10:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 25 21:10:21 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":0,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting","epoch":1619410221,"epoch_utc":null},{"commit":"eca785450d1c72687817d09259fa7cd33376fafc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 21:06:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 25 21:06:47 2021 -0700","stats":{"files_changed":5,"insertions":34,"deletions":13,"files":["CHANGELOG","README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":22},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/readme_template","lines_changed":22}]},"message":"add caveats to readme and manpage","epoch":1619410007,"epoch_utc":null},{"commit":"5b40a97ce417687b4e37f320b8a3f07dd7fd169c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 20:55:43 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 25 20:55:43 2021 -0700","stats":{"files_changed":3,"insertions":13,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/manpage_template","lines_changed":13}]},"message":"add caveats to man page","epoch":1619409343,"epoch_utc":null},{"commit":"66cb4e9bde81b9290c1addaf851de5d80a1b0702","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 20:49:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 25 20:49:35 2021 -0700","stats":{"files_changed":5,"insertions":216,"deletions":234,"files":["EXAMPLES.md","docs/parsers/ufw.md","jc/man/jc.1.gz","jc/parsers/ufw.py","man/jc.1.gz"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":96},{"name":"docs/parsers/ufw.md","lines_changed":226},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/ufw.py","lines_changed":128},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update ufw parser docs","epoch":1619408975,"epoch_utc":null},{"commit":"d1f33645caccdb3a55576081c4d355f997ac033c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 20:40:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 25 20:40:38 2021 -0700","stats":{"files_changed":7,"insertions":26,"deletions":10,"files":["tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw-numbered2.json","tests/fixtures/generic/ufw.json","tests/fixtures/ubuntu-18.04/ufw-numbered.json","tests/fixtures/ubuntu-18.04/ufw-numbered.out","tests/fixtures/ubuntu-18.04/ufw-verbose.json","tests/fixtures/ubuntu-18.04/ufw-verbose.out"],"file_stats":[{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw-numbered2.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-numbered.out","lines_changed":16},{"name":"tests/fixtures/ubuntu-18.04/ufw-verbose.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-verbose.out","lines_changed":10}]},"message":"update ufw tests","epoch":1619408438,"epoch_utc":null},{"commit":"5eff65c326675a449afd05a2af0a6c9bcf7b5e23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 20:10:52 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 25 20:10:52 2021 -0700","stats":{"files_changed":1,"insertions":85,"deletions":268,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":353}]},"message":"update schema to support port lists and port range lists. Also support other transports than tcp and udp","epoch":1619406652,"epoch_utc":null},{"commit":"929c38715d87bf9dd689507d319c22b90871ae1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 12:53:29 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 24 12:53:29 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"formatting","epoch":1619294009,"epoch_utc":null},{"commit":"8c91a7b7601a967cd9d8096433ffd4ad62b65ceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 12:52:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 24 12:52:26 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":4}]},"message":"formatting","epoch":1619293946,"epoch_utc":null},{"commit":"14289ecd6c022ad204444dff5b5e48f6024a5d0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 12:50:40 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 24 12:50:40 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":4}]},"message":"more timezone info","epoch":1619293840,"epoch_utc":null},{"commit":"b833c44783eb32f2fad24ca205b5b7eab854750f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 12:47:24 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 24 12:47:24 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add ufw-appinfo parser","epoch":1619293644,"epoch_utc":null},{"commit":"e23aa818eaa6d1a389ddef7dd2ad8f62b9f6ff25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 12:47:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 24 12:47:12 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":5}]},"message":"add tests section and timezone info","epoch":1619293632,"epoch_utc":null},{"commit":"473d919c1350a8dc34d233033a5a7d12c928e42d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 10:58:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 24 10:58:31 2021 -0700","stats":{"files_changed":4,"insertions":32,"deletions":0,"files":["runtests.sh","tests/fixtures/generic/ufw-numbered2.json","tests/fixtures/generic/ufw-numbered2.out","tests/test_ufw.py"],"file_stats":[{"name":"runtests.sh","lines_changed":1},{"name":"tests/fixtures/generic/ufw-numbered2.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-numbered2.out","lines_changed":18},{"name":"tests/test_ufw.py","lines_changed":12}]},"message":"add another ufw test sample","epoch":1619287111,"epoch_utc":null},{"commit":"9f925d6ac989a4f21a8c00c84fcf97dfb141e8c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 10:22:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 24 10:22:37 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update","epoch":1619284957,"epoch_utc":null},{"commit":"f6ca32b3a31f314fa0b31d9e8b5494491b928f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 10:22:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 24 10:22:19 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/ufw.md","jc/parsers/ufw.py"],"file_stats":[{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"jc/parsers/ufw.py","lines_changed":2}]},"message":"update ufw docs with a note on lists of ports","epoch":1619284939,"epoch_utc":null},{"commit":"4cbe84c3d6ac8a3b594feb525460f2a68f5d62b2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 16:15:04 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 23 16:15:04 2021 -0700","stats":{"files_changed":9,"insertions":110,"deletions":0,"files":["tests/fixtures/generic/ufw-appinfo-msn.json","tests/fixtures/generic/ufw-appinfo-msn.out","tests/fixtures/generic/ufw-appinfo-test.json","tests/fixtures/generic/ufw-appinfo-test.out","tests/fixtures/generic/ufw-appinfo-test2.json","tests/fixtures/generic/ufw-appinfo-test2.out","tests/fixtures/generic/ufw-appinfo-test3.json","tests/fixtures/generic/ufw-appinfo-test3.out","tests/test_ufw_appinfo.py"],"file_stats":[{"name":"tests/fixtures/generic/ufw-appinfo-msn.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-appinfo-msn.out","lines_changed":9},{"name":"tests/fixtures/generic/ufw-appinfo-test.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-appinfo-test.out","lines_changed":9},{"name":"tests/fixtures/generic/ufw-appinfo-test2.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-appinfo-test2.out","lines_changed":9},{"name":"tests/fixtures/generic/ufw-appinfo-test3.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-appinfo-test3.out","lines_changed":9},{"name":"tests/test_ufw_appinfo.py","lines_changed":70}]},"message":"add ufw-appinfo tests","epoch":1619219704,"epoch_utc":null},{"commit":"ffac5bf9d381305daa86e546f8570be092e5ff34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 16:14:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 23 16:14:53 2021 -0700","stats":{"files_changed":3,"insertions":12,"deletions":12,"files":["docs/parsers/ufw.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/ufw.md","lines_changed":24},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update","epoch":1619219693,"epoch_utc":null},{"commit":"9aa424f9f8c7e4e0dc29e2c58dac481098beba7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 16:14:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 23 16:14:39 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":12}]},"message":"fix ufw example","epoch":1619219679,"epoch_utc":null},{"commit":"0a8495c68e427e39bbda957dd933fa2a461092e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 16:14:25 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 23 16:14:25 2021 -0700","stats":{"files_changed":1,"insertions":12,"deletions":15,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":27}]},"message":"update docs","epoch":1619219665,"epoch_utc":null},{"commit":"6aea066cf024f92adf4b94eebc7d51430c22332c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 16:14:11 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 23 16:14:11 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/parsers/ufw_appinfo.py","lines_changed":6}]},"message":"make normalized list appear only when data exists. set magic commands","epoch":1619219651,"epoch_utc":null},{"commit":"ff3c2d809ec3ea6e556c302909a228ee670578c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 09:57:41 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 23 09:57:41 2021 -0700","stats":{"files_changed":6,"insertions":176,"deletions":25,"files":["EXAMPLES.md","README.md","docs/parsers/ufw_appinfo.md","jc/man/jc.1.gz","jc/parsers/ufw_appinfo.py","man/jc.1.gz"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":39},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":58},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":103},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add ufw-appinfo to docs","epoch":1619197061,"epoch_utc":null},{"commit":"145059fc8946b7026184139baea143c2869bc4e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 09:04:11 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 23 09:04:11 2021 -0700","stats":{"files_changed":1,"insertions":20,"deletions":8,"files":["jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/parsers/ufw_appinfo.py","lines_changed":28}]},"message":"clean up output if sections are blank","epoch":1619193851,"epoch_utc":null},{"commit":"20e5c19de448c1b979497817c887d8d2d6487839","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 08:30:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 23 08:30:34 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/parsers/ufw_appinfo.py","lines_changed":3}]},"message":"fix key error if tcp or udp don't exist","epoch":1619191834,"epoch_utc":null},{"commit":"4c98fd4b877c54e1cf7d285a29e178321be12f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 08:26:00 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 23 08:26:00 2021 -0700","stats":{"files_changed":2,"insertions":101,"deletions":1,"files":["docs/parsers/ufw_appinfo.md","jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"docs/parsers/ufw_appinfo.md","lines_changed":100},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":2}]},"message":"doc update","epoch":1619191560,"epoch_utc":null},{"commit":"125e54213e8d4dcfe2e3271456af80b3f79c0544","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 08:13:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 23 08:13:53 2021 -0700","stats":{"files_changed":1,"insertions":105,"deletions":48,"files":["jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/parsers/ufw_appinfo.py","lines_changed":153}]},"message":"update schema and add normalized fields","epoch":1619190833,"epoch_utc":null},{"commit":"0152e0665f87833250561d743144af35416992f8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 22 16:52:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 22 16:52:01 2021 -0700","stats":{"files_changed":2,"insertions":215,"deletions":0,"files":["jc/cli.py","jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":214}]},"message":"initial working ufw-appinfo parser","epoch":1619135521,"epoch_utc":null},{"commit":"0679bcbc560ea3575555d8546afdd4e2474d05d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 22 08:33:57 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 22 08:33:57 2021 -0700","stats":{"files_changed":5,"insertions":31,"deletions":5,"files":["tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json","tests/fixtures/ubuntu-18.04/ufw-numbered.json","tests/fixtures/ubuntu-18.04/ufw-verbose.json","tests/test_ufw.py"],"file_stats":[{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-numbered.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ufw-verbose.json","lines_changed":1},{"name":"tests/test_ufw.py","lines_changed":30}]},"message":"fix ufw tests","epoch":1619105637,"epoch_utc":null},{"commit":"5500648aa0886ea5089856e5b33d7c8ebd78d5b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 22 08:33:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 22 08:33:45 2021 -0700","stats":{"files_changed":3,"insertions":46,"deletions":46,"files":["EXAMPLES.md","docs/parsers/ufw.md","jc/parsers/ufw.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":20},{"name":"docs/parsers/ufw.md","lines_changed":36},{"name":"jc/parsers/ufw.py","lines_changed":36}]},"message":"fix ufw docs for int conversions and service behavior","epoch":1619105625,"epoch_utc":null},{"commit":"bb50caad4dfaefa309e747fd05b650186c5a80f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 22 08:16:42 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 22 08:16:42 2021 -0700","stats":{"files_changed":3,"insertions":31,"deletions":4,"files":["jc/parsers/ufw.py","tests/fixtures/ubuntu-18.04/ufw-numbered.out","tests/fixtures/ubuntu-18.04/ufw-verbose.out"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":10},{"name":"tests/fixtures/ubuntu-18.04/ufw-numbered.out","lines_changed":11},{"name":"tests/fixtures/ubuntu-18.04/ufw-verbose.out","lines_changed":14}]},"message":"fix prefix int conversions. don't reset _transport if service is really a list of ports","epoch":1619104602,"epoch_utc":null},{"commit":"7eef5d94d591a3f70f6638b1b30f952a3bf35f9d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 16:55:25 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 21 16:55:25 2021 -0700","stats":{"files_changed":3,"insertions":5,"deletions":0,"files":["EXAMPLES.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":5},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"ufw doc update","epoch":1619049325,"epoch_utc":null},{"commit":"74f623f8d607c050db8f62ea4996c4e6aae43268","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 16:55:14 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 21 16:55:14 2021 -0700","stats":{"files_changed":5,"insertions":43,"deletions":11,"files":["docs/parsers/ufw.md","jc/parsers/ufw.py","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json","tests/fixtures/generic/ufw.out"],"file_stats":[{"name":"docs/parsers/ufw.md","lines_changed":13},{"name":"jc/parsers/ufw.py","lines_changed":25},{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.out","lines_changed":12}]},"message":"add support for rule comments and LIMIT and REJECT actions","epoch":1619049314,"epoch_utc":null},{"commit":"f638aca092475bbae14fed765e90435c093fcb8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 10:10:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 21 10:10:36 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add deb package name fix","epoch":1619025036,"epoch_utc":null},{"commit":"da35eaf80ad4f11e7482fc4734db4b2265e50548","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 09:10:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 21 09:10:10 2021 -0700","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["docs/parsers/ufw.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"formatting","epoch":1619021410,"epoch_utc":null},{"commit":"ade0e8e8fc18ff9a0dd406206a85238f1f5a739d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 09:09:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 21 09:09:23 2021 -0700","stats":{"files_changed":7,"insertions":107,"deletions":0,"files":["tests/fixtures/generic/ufw-inactive.json","tests/fixtures/generic/ufw-inactive.out","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw-numbered.out","tests/fixtures/generic/ufw.json","tests/fixtures/generic/ufw.out","tests/test_ufw.py"],"file_stats":[{"name":"tests/fixtures/generic/ufw-inactive.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-inactive.out","lines_changed":1},{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-numbered.out","lines_changed":23},{"name":"tests/fixtures/generic/ufw.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw.out","lines_changed":22},{"name":"tests/test_ufw.py","lines_changed":58}]},"message":"add ufw tests","epoch":1619021363,"epoch_utc":null},{"commit":"90076090f05a1f03e2fbff307418ee18d7d046ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 09:09:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 21 09:09:09 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":5,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":12}]},"message":"fix int conversions if 'rules' key does not exist","epoch":1619021349,"epoch_utc":null},{"commit":"23635def8b654097178f73ed1b57fc50965142d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 07:51:32 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 21 07:51:32 2021 -0700","stats":{"files_changed":6,"insertions":306,"deletions":4,"files":["README.md","docs/parsers/ping.md","docs/parsers/ufw.md","docs/utils.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"docs/parsers/ping.md","lines_changed":1},{"name":"docs/parsers/ufw.md","lines_changed":302},{"name":"docs/utils.md","lines_changed":4},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add ufw to docs","epoch":1619016692,"epoch_utc":null},{"commit":"4eeec087bde98f90ab8425473d1fbeee6834852e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 07:49:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 21 07:49:49 2021 -0700","stats":{"files_changed":1,"insertions":115,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":115}]},"message":"add ufw example","epoch":1619016589,"epoch_utc":null},{"commit":"733196103897a1d84d242324ddcf96e783320329","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 07:41:32 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 21 07:41:32 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":4}]},"message":"update docs with new examples that have `to_service` always existing.","epoch":1619016092,"epoch_utc":null},{"commit":"e4acb3d5b70a7d75741ef3e35cd6750d1362a80f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 07:08:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 21 07:08:50 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":4}]},"message":"always make to/from_service None if ports are assigned","epoch":1619014130,"epoch_utc":null},{"commit":"c60549a9947d5684bbfa58223bfbcfc40a3ed479","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 22:08:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 20 22:08:12 2021 -0700","stats":{"files_changed":1,"insertions":29,"deletions":29,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":58}]},"message":"change field name from to/from_subnet to to/from_ip_prefix","epoch":1618981692,"epoch_utc":null},{"commit":"d46fc8bbfa15a80a1af6c64f70230f858c215223","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 21:58:52 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 20 21:58:52 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":9}]},"message":"set to/from_transport to None if to/from_service is set","epoch":1618981132,"epoch_utc":null},{"commit":"b133d1f90d49362594508d8c475663754f0e7675","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 21:52:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 20 21:52:39 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":6}]},"message":"strip interface value","epoch":1618980759,"epoch_utc":null},{"commit":"5be615a97e7c145c8351764234ac591028560c34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 21:45:13 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 20 21:45:13 2021 -0700","stats":{"files_changed":1,"insertions":219,"deletions":9,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":228}]},"message":"add examples for docs","epoch":1618980313,"epoch_utc":null},{"commit":"ea1d820f96321ddf4084b54ee2fdf397295beb21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 21:29:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 20 21:29:49 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":11}]},"message":"convert integer fields","epoch":1618979389,"epoch_utc":null},{"commit":"47e262cf7200b02ff0af97a70ffa6bec286c8f39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 21:21:42 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 20 21:21:42 2021 -0700","stats":{"files_changed":1,"insertions":59,"deletions":14,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":73}]},"message":"clean up fields","epoch":1618978902,"epoch_utc":null},{"commit":"eec673be9092e382694aa02682564510ce4e7f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 20:32:59 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 20 20:32:59 2021 -0700","stats":{"files_changed":1,"insertions":88,"deletions":3,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":91}]},"message":"working raw parser","epoch":1618975979,"epoch_utc":null},{"commit":"9a0fb2a7c87e6fde0cc0d84fa8a1f131e28ea732","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 14:17:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 20 14:17:01 2021 -0700","stats":{"files_changed":1,"insertions":157,"deletions":0,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":157}]},"message":"parse major sections","epoch":1618953421,"epoch_utc":null},{"commit":"b5145d6c14d7a51e7cfdebe126c9689dc90f7b27","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 13:39:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 20 13:39:12 2021 -0700","stats":{"files_changed":4,"insertions":8,"deletions":4,"files":["CHANGELOG","jc/__init__.py","jc/cli.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":6},{"name":"jc/cli.py","lines_changed":1},{"name":"setup.py","lines_changed":2}]},"message":"version bump to v1.15.3","epoch":1618951152,"epoch_utc":null},{"commit":"9747ca414dfb8218389c7b2199a080edabc2a184","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 10:50:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 20 10:50:20 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":11}]},"message":"minor optimization to convert_to_int(). No longer runs through convert_to_float(), but uses standard float() function.","epoch":1618941020,"epoch_utc":null},{"commit":"312d465b61a15592cc70d3734ad747b9a2be10ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 19 14:18:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 19 14:18:12 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":2}]},"message":"update link","epoch":1618867092,"epoch_utc":null},{"commit":"7dcf87d24ad40eba6ba98de2b4b2bf177a76cd71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 19 13:12:55 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 19 13:12:55 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":1}]},"message":"formatting","epoch":1618863175,"epoch_utc":null},{"commit":"cf3cfd16a9de05f30303b5952fbe609cde842d2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 19 09:59:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 19 09:59:58 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":6}]},"message":"rename tests","epoch":1618851598,"epoch_utc":null},{"commit":"fcc7e5294973d1a18943fa2ce2e836b0fe757d95","merge":"6c83846 3ab9d48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 17:28:27 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Apr 18 17:28:27 2021 -0700","message":"Merge pull request #123 from kellyjonbrazil/dev\n\nDev v1.15.2","epoch":1618792107,"epoch_utc":null},{"commit":"3ab9d480149a692510ab9e0ac8e745b674683e3d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 17:24:42 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 18 17:24:42 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"update changelog","epoch":1618791882,"epoch_utc":null},{"commit":"7eddf41c5f6310264359cd6d78bdfa4b65af7d06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 17:21:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 18 17:21:08 2021 -0700","stats":{"files_changed":11,"insertions":96,"deletions":9,"files":["jc/man/jc.1.gz","jc/utils.py","man/jc.1.gz","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/df.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/free-h.json","tests/test_utils.py"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/utils.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null},{"name":"tests/fixtures/centos-7.7/df-h.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/df.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/free-h.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/df-h.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/df-h.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/free-h.json","lines_changed":2},{"name":"tests/test_utils.py","lines_changed":89}]},"message":"dont round up int conversions and fix tests","epoch":1618791668,"epoch_utc":null},{"commit":"27a196c93862bd737603cfe402b35529eb412954","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 16:42:42 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 18 16:42:42 2021 -0700","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update","epoch":1618789362,"epoch_utc":null},{"commit":"e4324f05fb6f89c34fa1567e70d8636457623edb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 16:42:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 18 16:42:34 2021 -0700","stats":{"files_changed":2,"insertions":14,"deletions":14,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":14},{"name":"jc/parsers/dig.py","lines_changed":14}]},"message":"fix indentation in doc","epoch":1618789354,"epoch_utc":null},{"commit":"d36b332bd78b5bf5979cdc59b31da08d8e4104d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 16:33:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 18 16:33:47 2021 -0700","stats":{"files_changed":53,"insertions":196,"deletions":274,"files":["docs/parsers/systemctl_lj.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/wc.md","docs/parsers/who.md","docs/utils.md","jc/parsers/acpi.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/hash.py","jc/parsers/hciconfig.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl_lj.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/utils.py"],"file_stats":[{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":2},{"name":"jc/parsers/acpi.py","lines_changed":21},{"name":"jc/parsers/airport_s.py","lines_changed":9},{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/blkid.py","lines_changed":4},{"name":"jc/parsers/cksum.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":4},{"name":"jc/parsers/dir.py","lines_changed":4},{"name":"jc/parsers/dmidecode.py","lines_changed":4},{"name":"jc/parsers/du.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":4},{"name":"jc/parsers/fstab.py","lines_changed":4},{"name":"jc/parsers/group.py","lines_changed":4},{"name":"jc/parsers/hash.py","lines_changed":4},{"name":"jc/parsers/hciconfig.py","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":4},{"name":"jc/parsers/iptables.py","lines_changed":4},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4},{"name":"jc/parsers/lsblk.py","lines_changed":13},{"name":"jc/parsers/lsmod.py","lines_changed":4},{"name":"jc/parsers/lsof.py","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":16},{"name":"jc/parsers/ntpq.py","lines_changed":10},{"name":"jc/parsers/passwd.py","lines_changed":4},{"name":"jc/parsers/ps.py","lines_changed":13},{"name":"jc/parsers/route.py","lines_changed":4},{"name":"jc/parsers/rpm_qi.py","lines_changed":4},{"name":"jc/parsers/shadow.py","lines_changed":4},{"name":"jc/parsers/ss.py","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"jc/parsers/systemctl_lj.py","lines_changed":13},{"name":"jc/parsers/systeminfo.py","lines_changed":6},{"name":"jc/parsers/time.py","lines_changed":32},{"name":"jc/parsers/timedatectl.py","lines_changed":8},{"name":"jc/parsers/tracepath.py","lines_changed":42},{"name":"jc/parsers/traceroute.py","lines_changed":40},{"name":"jc/parsers/upower.py","lines_changed":24},{"name":"jc/parsers/uptime.py","lines_changed":39},{"name":"jc/parsers/w.py","lines_changed":4},{"name":"jc/parsers/wc.py","lines_changed":12},{"name":"jc/parsers/who.py","lines_changed":12},{"name":"jc/utils.py","lines_changed":36}]},"message":"use jc.utils for conversions","epoch":1618788827,"epoch_utc":null},{"commit":"1f034826f69c461495f7a302cc8fe35e3052e72f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 13:01:25 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 18 13:01:25 2021 -0700","stats":{"files_changed":42,"insertions":94,"deletions":185,"files":["docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","tests/fixtures/centos-7.7/ls-alh.json","tests/fixtures/centos-7.7/lsof-sudo.json","tests/fixtures/centos-7.7/lsof.json","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/ubuntu-18.04/ls-alh.json","tests/fixtures/ubuntu-18.04/lsof-sudo.json","tests/fixtures/ubuntu-18.04/lsof.json"],"file_stats":[{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":3},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":10},{"name":"jc/parsers/jobs.py","lines_changed":8},{"name":"jc/parsers/last.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":9},{"name":"jc/parsers/lsblk.py","lines_changed":14},{"name":"jc/parsers/lsmod.py","lines_changed":9},{"name":"jc/parsers/lsof.py","lines_changed":10},{"name":"jc/parsers/netstat.py","lines_changed":37},{"name":"jc/parsers/ntpq.py","lines_changed":12},{"name":"jc/parsers/passwd.py","lines_changed":8},{"name":"jc/parsers/ping.py","lines_changed":34},{"name":"jc/parsers/ps.py","lines_changed":15},{"name":"jc/parsers/route.py","lines_changed":8},{"name":"jc/parsers/rpm_qi.py","lines_changed":9},{"name":"jc/parsers/shadow.py","lines_changed":8},{"name":"jc/parsers/ss.py","lines_changed":22},{"name":"jc/parsers/stat.py","lines_changed":11},{"name":"tests/fixtures/centos-7.7/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/lsof-sudo.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/lsof.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/lsof-sudo.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/lsof.json","lines_changed":2}]},"message":"use jc.utils for conversions","epoch":1618776085,"epoch_utc":null},{"commit":"246c707c98d3128b4e38f5c4b23a1e0ceedc0b0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 11:46:42 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 18 11:46:42 2021 -0700","stats":{"files_changed":46,"insertions":190,"deletions":196,"files":["CHANGELOG","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/df.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/hash.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/utils.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/hash.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/utils.py","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/osx-10.11.6/df-h.json","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/free-h.json"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":48},{"name":"jc/parsers/acpi.py","lines_changed":22},{"name":"jc/parsers/airport.py","lines_changed":7},{"name":"jc/parsers/airport_s.py","lines_changed":12},{"name":"jc/parsers/arp.py","lines_changed":5},{"name":"jc/parsers/blkid.py","lines_changed":7},{"name":"jc/parsers/cksum.py","lines_changed":8},{"name":"jc/parsers/df.py","lines_changed":14},{"name":"jc/parsers/dig.py","lines_changed":50},{"name":"jc/parsers/dir.py","lines_changed":11},{"name":"jc/parsers/dmidecode.py","lines_changed":8},{"name":"jc/parsers/du.py","lines_changed":8},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":8},{"name":"jc/parsers/fstab.py","lines_changed":8},{"name":"jc/parsers/group.py","lines_changed":8},{"name":"jc/parsers/hash.py","lines_changed":9},{"name":"jc/parsers/hciconfig.py","lines_changed":8},{"name":"jc/parsers/history.py","lines_changed":6},{"name":"jc/parsers/id.py","lines_changed":17},{"name":"jc/parsers/ifconfig.py","lines_changed":11},{"name":"jc/utils.py","lines_changed":62},{"name":"tests/fixtures/centos-7.7/df-h.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/free-h.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/df-h.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/df-h.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/df-h.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/free-h.json","lines_changed":2}]},"message":"use jc.utils conversions","epoch":1618771602,"epoch_utc":null},{"commit":"b5d8968144e76090870f8563dc1bce910fba668c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 17 17:22:59 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 17 17:22:59 2021 -0700","stats":{"files_changed":1,"insertions":19,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":19}]},"message":"add convert_to_int function","epoch":1618705379,"epoch_utc":null},{"commit":"f7b9fbefdde6973077573fec02342eb9946789c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 17 17:22:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 17 17:22:44 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add query_size info for dig","epoch":1618705364,"epoch_utc":null},{"commit":"b1fc4533833ca25f59869bfec8ac114bf49c7847","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 17 17:22:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 17 17:22:30 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2}]},"message":"fix _IfconfigParser name","epoch":1618705350,"epoch_utc":null},{"commit":"7581c8d0f4262fc6a05240bb21ffe533b153f6e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 17 17:07:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 17 17:07:20 2021 -0700","stats":{"files_changed":3,"insertions":45,"deletions":32,"files":["docs/parsers/dig.md","jc/parsers/dig.py","tests/fixtures/generic/dig-edns3.json"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":74},{"name":"tests/fixtures/generic/dig-edns3.json","lines_changed":2}]},"message":"add query_size field. handle user-specified dig output better - especially when querying dnssec","epoch":1618704440,"epoch_utc":null},{"commit":"32bf8ad6f4fff83fdfd83d66c1ba8f1af5a65a90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 17 15:02:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 17 15:02:45 2021 -0700","stats":{"files_changed":4,"insertions":52,"deletions":24,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"EXAMPLES.md","lines_changed":10},{"name":"docs/parsers/dig.md","lines_changed":32},{"name":"jc/parsers/dig.py","lines_changed":32}]},"message":"update dig docs","epoch":1618696965,"epoch_utc":null},{"commit":"b083bcc10fa1105fc09ce8d2c3297aa5575c9d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:30:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 16 16:30:17 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update man page","epoch":1618615817,"epoch_utc":null},{"commit":"4f6fdd120d23468270c1d7111e4ef71b87759a1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:30:04 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 16 16:30:04 2021 -0700","stats":{"files_changed":2,"insertions":134,"deletions":100,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":117},{"name":"jc/__init__.py","lines_changed":117}]},"message":"use dig as example","epoch":1618615804,"epoch_utc":null},{"commit":"eb0038be2490053d32803d30e1c3d4d34509d130","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:29:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 16 16:29:44 2021 -0700","stats":{"files_changed":1,"insertions":40,"deletions":19,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":59}]},"message":"update dig examples","epoch":1618615784,"epoch_utc":null},{"commit":"7ecdf819fa37c38ae6159ad8e7bc973ee4f34559","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:29:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 16 16:29:27 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":84,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":42},{"name":"templates/readme_template","lines_changed":42}]},"message":"remove dig example from readme,","epoch":1618615767,"epoch_utc":null},{"commit":"c6aa4d083550d25bcb621cad524047cfd6a08217","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:19:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 16 16:19:20 2021 -0700","stats":{"files_changed":6,"insertions":252,"deletions":317,"files":["README.md","docs/parsers/dig.md","jc/man/jc.1.gz","jc/parsers/dig.py","man/jc.1.gz","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":84},{"name":"docs/parsers/dig.md","lines_changed":313},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/dig.py","lines_changed":88},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/readme_template","lines_changed":84}]},"message":"update docs with new dig parser examples","epoch":1618615160,"epoch_utc":null},{"commit":"7c584b89a6e6b924d53d50103b97f0c2405c33b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:04:06 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 16 16:04:06 2021 -0700","stats":{"files_changed":15,"insertions":352,"deletions":52,"files":["jc/parsers/dig.py","tests/fixtures/generic/dig-additional.json","tests/fixtures/generic/dig-additional.out","tests/fixtures/generic/dig-additional2.json","tests/fixtures/generic/dig-additional2.out","tests/fixtures/generic/dig-additional3.json","tests/fixtures/generic/dig-additional3.out","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/generic/dig-edns.json","tests/fixtures/generic/dig-edns.out","tests/fixtures/generic/dig-edns2.json","tests/fixtures/generic/dig-edns2.out","tests/fixtures/generic/dig-edns3.json","tests/fixtures/generic/dig-edns3.out","tests/test_dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":123},{"name":"tests/fixtures/generic/dig-additional.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-additional.out","lines_changed":32},{"name":"tests/fixtures/generic/dig-additional2.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-additional2.out","lines_changed":34},{"name":"tests/fixtures/generic/dig-additional3.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-additional3.out","lines_changed":41},{"name":"tests/fixtures/generic/dig-answer-spaces.json","lines_changed":2},{"name":"tests/fixtures/generic/dig-edns.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-edns.out","lines_changed":20},{"name":"tests/fixtures/generic/dig-edns2.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-edns2.out","lines_changed":38},{"name":"tests/fixtures/generic/dig-edns3.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-edns3.out","lines_changed":34},{"name":"tests/test_dig.py","lines_changed":74}]},"message":"add additional section","epoch":1618614246,"epoch_utc":null},{"commit":"c166c0bfdafa922f57f021fa4d16e467fca02d58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 15:22:22 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 16 15:22:22 2021 -0700","stats":{"files_changed":14,"insertions":55,"deletions":21,"files":["jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":50},{"name":"tests/fixtures/centos-7.7/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig-x.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig.json","lines_changed":2},{"name":"tests/fixtures/generic/dig-answer-spaces.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-x.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig.json","lines_changed":2}]},"message":"add opt_pseudosection section to output and fix existing tests","epoch":1618611742,"epoch_utc":null},{"commit":"a8dd3f7802bfe8fd3ffbedf89af45ddc580ee78d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 13:11:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 16 13:11:02 2021 -0700","stats":{"files_changed":5,"insertions":54,"deletions":281,"files":["CHANGELOG","jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-axfr.json"],"file_stats":[{"name":"CHANGELOG","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":325},{"name":"tests/fixtures/centos-7.7/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-axfr.json","lines_changed":2}]},"message":"working dig axfr fixes","epoch":1618603862,"epoch_utc":null},{"commit":"3b0e2f03f3b11398ff57b1daed542faaf0b80a62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 08:46:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 16 08:46:20 2021 -0700","stats":{"files_changed":2,"insertions":24,"deletions":23,"files":["jc/cli.py","templates/manpage_template"],"file_stats":[{"name":"jc/cli.py","lines_changed":21},{"name":"templates/manpage_template","lines_changed":26}]},"message":"clean up examples","epoch":1618587980,"epoch_utc":null},{"commit":"8390ae48c88ab1c7d5acbf40c0e60606953817bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 15 16:53:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 15 16:53:03 2021 -0700","stats":{"files_changed":7,"insertions":8,"deletions":8,"files":["jc/parsers/dig.py","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":4},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig.json","lines_changed":2}]},"message":"fix server entry when IPv6 address is in value (maxsplit on colons)","epoch":1618530783,"epoch_utc":null},{"commit":"2db82c0a7e19d596c876ede8a8ff106aaa733ee5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 20:43:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 14 20:43:58 2021 -0700","stats":{"files_changed":1,"insertions":66,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":66}]},"message":"add systeminfo example","epoch":1618458238,"epoch_utc":null},{"commit":"61479540756704f10853233300ceae8f954a8a95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 20:39:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 14 20:39:35 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":0,"files":["tests/test_systeminfo.py","tests/test_utils.py"],"file_stats":[{"name":"tests/test_systeminfo.py","lines_changed":1},{"name":"tests/test_utils.py","lines_changed":4}]},"message":"update tests","epoch":1618457975,"epoch_utc":null},{"commit":"691df271fcfe057ae4b75ad40869e23deb37b886","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 20:30:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 14 20:30:31 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":1,"files":["docs/parsers/systeminfo.md","jc/man/jc.1.gz","jc/parsers/systeminfo.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/systeminfo.py","lines_changed":1},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add info docstring","epoch":1618457431,"epoch_utc":null},{"commit":"89f52b95f7055da9d7b5fa8dce0923d4c3435bd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 20:20:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 14 20:20:46 2021 -0700","stats":{"files_changed":13,"insertions":467,"deletions":821,"files":["README.md","docs/parsers/systeminfo.md","jc/man/jc.1.gz","jc/parsers/systeminfo.py","jc/utils.py","man/jc.1.gz",".../windows/windows-10/systeminfo-hyperv-utc.json",".../windows/windows-10/systeminfo-hyperv-utc.out",".../windows/windows-10/systeminfo-hyperv.json","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-10/systeminfo.out",".../windows/windows-2012r2/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/systeminfo.md","lines_changed":290},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/systeminfo.py","lines_changed":361},{"name":"jc/utils.py","lines_changed":5},{"name":"man/jc.1.gz","lines_changed":null},{"name":".../windows/windows-10/systeminfo-hyperv-utc.json","lines_changed":1},{"name":".../windows/windows-10/systeminfo-hyperv-utc.out","lines_changed":79},{"name":".../windows/windows-10/systeminfo-hyperv.json","lines_changed":112},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":57},{"name":"tests/fixtures/windows/windows-10/systeminfo.out","lines_changed":1},{"name":".../windows/windows-2012r2/systeminfo.json","lines_changed":55},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":326}]},"message":"update systeminfo parser with updated timestamps, normalized blank fields, and new doc style","epoch":1618456846,"epoch_utc":null},{"commit":"146acc1bf69c402e38c2f1bc842b84e6cff7e2cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 16:46:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 14 16:46:16 2021 -0700","stats":{"files_changed":1,"insertions":23,"deletions":29,"files":["jc/parsers/systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":52}]},"message":"rename functions to make them private","epoch":1618443976,"epoch_utc":null},{"commit":"c4a345f59aa090336b4e80f181493cd5bc2c17c5","merge":"dfd2703 325fab2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 16:39:44 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Apr 14 16:39:44 2021 -0700","message":"Merge pull request #106 from jon-rd/j/systeminfo\n\nAdd windows systeminfo command parser","epoch":1618443584,"epoch_utc":null},{"commit":"dfd2703f75b907ba865fff266d0742d8931bc2d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 16:39:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 14 16:39:05 2021 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"bump dev to v1.15.2","epoch":1618443545,"epoch_utc":null},{"commit":"325fab2de7b8a4bfc452ab8d3cf333d47fdf4989","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Wed Apr 14 11:52:13 2021 -0500","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","commit_by_date":"Wed Apr 14 11:52:13 2021 -0500","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":10}]},"message":"update documentation for parsed structures","epoch":1618426333,"epoch_utc":null},{"commit":"f3d00cf38ad15aeda7eaa5644ebc30ff33de6a29","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Wed Apr 14 09:06:14 2021 -0500","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","commit_by_date":"Wed Apr 14 11:38:50 2021 -0500","stats":{"files_changed":5,"insertions":56,"deletions":48,"files":["jc/parsers/systeminfo.py",".../windows/windows-10/systeminfo-hyperv.json","tests/fixtures/windows/windows-10/systeminfo.json",".../windows/windows-2012r2/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":48},{"name":".../windows/windows-10/systeminfo-hyperv.json","lines_changed":14},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":14},{"name":".../windows/windows-2012r2/systeminfo.json","lines_changed":14},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":14}]},"message":"append mb to memory key names; adjust expected timestamps to utc tz","epoch":1618416374,"epoch_utc":null},{"commit":"14838f7f5d780896f1318cac2c3f34d249a158d4","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Wed Apr 14 08:59:17 2021 -0500","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","commit_by_date":"Wed Apr 14 11:38:50 2021 -0500","stats":{"files_changed":9,"insertions":956,"deletions":116,"files":["jc/parsers/systeminfo.py","jc/utils.py",".../windows/windows-10/systeminfo-hyperv.json",".../windows/windows-10/systeminfo-hyperv.out","tests/fixtures/windows/windows-10/systeminfo.json",".../windows/windows-2012r2/systeminfo.json",".../fixtures/windows/windows-2012r2/systeminfo.out","tests/fixtures/windows/windows-7/systeminfo.json","tests/test_systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":357},{"name":"jc/utils.py","lines_changed":1},{"name":".../windows/windows-10/systeminfo-hyperv.json","lines_changed":111},{"name":".../windows/windows-10/systeminfo-hyperv.out","lines_changed":79},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":43},{"name":".../windows/windows-2012r2/systeminfo.json","lines_changed":54},{"name":".../fixtures/windows/windows-2012r2/systeminfo.out","lines_changed":45},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":311},{"name":"tests/test_systeminfo.py","lines_changed":71}]},"message":"update schema with nic, hyperv, and process changes","epoch":1618415957,"epoch_utc":null},{"commit":"af74047b81776c2ea32d82f9145ab60c346c8203","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Mon Apr 5 09:32:04 2021 -0500","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","commit_by_date":"Wed Apr 14 11:38:50 2021 -0500","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":8}]},"message":"update schema based on processor/hotfix changes","epoch":1617640324,"epoch_utc":null},{"commit":"660c59129cf4ba7889fb3c6fbafd9dd9b479ccd9","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Mon Apr 5 09:29:42 2021 -0500","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","commit_by_date":"Wed Apr 14 11:38:50 2021 -0500","stats":{"files_changed":3,"insertions":41,"deletions":9,"files":["jc/parsers/systeminfo.py","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":42},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":4},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":4}]},"message":"Add parsing of processors/hotfixs","epoch":1617640182,"epoch_utc":null},{"commit":"89a88e186ed71d84ea802cf08ab756b49cee3225","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Thu Mar 25 16:58:54 2021 -0500","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","commit_by_date":"Wed Apr 14 11:38:50 2021 -0500","stats":{"files_changed":1,"insertions":152,"deletions":0,"files":["docs/parsers/systeminfo.md"],"file_stats":[{"name":"docs/parsers/systeminfo.md","lines_changed":152}]},"message":"Add systeminfo.md file","epoch":1616716734,"epoch_utc":null},{"commit":"f861cf95b96a224a0a11f2cdc3261b94c02415ef","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Thu Mar 25 16:18:14 2021 -0500","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","commit_by_date":"Wed Apr 14 11:38:50 2021 -0500","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["jc/cli.py","jc/parsers/systeminfo.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/systeminfo.py","lines_changed":2}]},"message":"Change to v0.5; add parser to cli.py; add to docgen","epoch":1616714294,"epoch_utc":null},{"commit":"ee8f06cbdb03f8254bb6a3c56fa5b8a64ff9ca77","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Wed Mar 24 14:13:22 2021 -0500","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","commit_by_date":"Wed Apr 14 11:38:49 2021 -0500","stats":{"files_changed":6,"insertions":688,"deletions":0,"files":["jc/parsers/systeminfo.py","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-10/systeminfo.out","tests/fixtures/windows/windows-7/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.out","tests/test_systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":209},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":35},{"name":"tests/fixtures/windows/windows-10/systeminfo.out","lines_changed":47},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":34},{"name":"tests/fixtures/windows/windows-7/systeminfo.out","lines_changed":298},{"name":"tests/test_systeminfo.py","lines_changed":65}]},"message":"Add windows systeminfo command parser","epoch":1616620402,"epoch_utc":null},{"commit":"a2e8b3c7b681605916b8950d035ee19889a125a5","merge":"e0681ee 6c83846","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 16:40:43 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Apr 13 16:40:43 2021 -0700","message":"Merge pull request #121 from kellyjonbrazil/master\n\nMerge pull request #120 from kellyjonbrazil/dev","epoch":1618357243,"epoch_utc":null},{"commit":"6c838460752c7131f75cdab2da07266fee492060","merge":"10292f7 e0681ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:59:17 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Apr 13 14:59:17 2021 -0700","message":"Merge pull request #120 from kellyjonbrazil/dev\n\nDev v1.15.1","epoch":1618351157,"epoch_utc":null},{"commit":"e0681eebb9881dc0ffddb478224455f434919104","merge":"e5732d1 10292f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:57:44 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Apr 13 14:57:44 2021 -0700","message":"Merge branch 'master' into dev","epoch":1618351064,"epoch_utc":null},{"commit":"e5732d1cea1c882f6486cf288e45edb993989ea0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:54:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 13 14:54:38 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"update changelog","epoch":1618350878,"epoch_utc":null},{"commit":"6e7ae3cd3f003fe9e1e587b7f8ebd16ba0895014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:51:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 13 14:51:46 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/timedatectl.md","jc/man/jc.1.gz","jc/parsers/timedatectl.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"formatting of timedatectl docs","epoch":1618350706,"epoch_utc":null},{"commit":"f95632d1aaee545ae0ce081ca0617be135c09220","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:49:57 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 13 14:49:57 2021 -0700","stats":{"files_changed":7,"insertions":83,"deletions":62,"files":["EXAMPLES.md","docs/parsers/rpm_qi.md","jc/man/jc.1.gz","jc/parsers/rpm_qi.py","man/jc.1.gz","tests/fixtures/centos-7.7/rpm-qai.json","tests/fixtures/centos-7.7/rpm-qi-package.json"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":12},{"name":"docs/parsers/rpm_qi.md","lines_changed":62},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/rpm_qi.py","lines_changed":67},{"name":"man/jc.1.gz","lines_changed":null},{"name":"tests/fixtures/centos-7.7/rpm-qai.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rpm-qi-package.json","lines_changed":2}]},"message":"add install_date calculated fields","epoch":1618350597,"epoch_utc":null},{"commit":"2f8b7b26e59bcd745fa1fcadb373455c7d404286","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:35:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 13 14:35:17 2021 -0700","stats":{"files_changed":3,"insertions":1,"deletions":2,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update docs for v1.15.1","epoch":1618349717,"epoch_utc":null},{"commit":"10292f7502e4cb1c53b53ed39fed9288044c2ef8","merge":"37a3565 aef5470","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:15:40 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Apr 12 13:15:40 2021 -0700","message":"Merge pull request #119 from kellyjonbrazil/dpkg_l-fix\n\nadd _l to module name","epoch":1618258540,"epoch_utc":null},{"commit":"aef54705f5267c633e0778e8dce0065978083139","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:15:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 12 13:15:12 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["docs/parsers/dpkg_l.md"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":4}]},"message":"add _l to module name","epoch":1618258512,"epoch_utc":null},{"commit":"bba5980fa53767716bc35d8c904e7a2341346eeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:13:18 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 12 13:13:18 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"man page update","epoch":1618258398,"epoch_utc":null},{"commit":"977425abfb05a63ee372df36124ac6ba6a5a0aaa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:12:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 12 13:12:08 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"jc/parsers/dpkg_l.py","lines_changed":4}]},"message":"add _l to package name in docs","epoch":1618258328,"epoch_utc":null},{"commit":"37a3565a1bbd3d01663602673fed651509e69d8c","merge":"bdcdaee 13deb8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:06:30 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Apr 12 13:06:30 2021 -0700","message":"Merge pull request #118 from kellyjonbrazil/rpm-qi-doc-fix\n\nfix rpm-qi docs","epoch":1618257990,"epoch_utc":null},{"commit":"13deb8bfb6e77aaf86942f0be87b59d06ee2a97c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:05:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 12 13:05:34 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":194,"files":["docs/parsers/rpm_qai.md","docs/parsers/rpm_qi.md"],"file_stats":[{"name":"docs/parsers/rpm_qai.md","lines_changed":191},{"name":"docs/parsers/rpm_qi.md","lines_changed":6}]},"message":"fix rpm-qi docs","epoch":1618257934,"epoch_utc":null},{"commit":"a3ed9d075aff41599452c3094f7d057c25fc8f89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:04:22 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 12 13:04:22 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":191,"files":["docs/parsers/rpm_qai.md"],"file_stats":[{"name":"docs/parsers/rpm_qai.md","lines_changed":191}]},"message":"remove old parser doc","epoch":1618257862,"epoch_utc":null},{"commit":"fb0ced549e021916dee7da39859e8f85c8216e16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:01:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 12 13:01:17 2021 -0700","stats":{"files_changed":4,"insertions":6,"deletions":6,"files":["docs/parsers/rpm_qi.md","jc/man/jc.1.gz","jc/parsers/rpm_qi.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/rpm_qi.md","lines_changed":6},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/rpm_qi.py","lines_changed":6},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"fix rpm-qi docs (used underscore instead of dash in name)","epoch":1618257677,"epoch_utc":null},{"commit":"7eb31bc7d290fcd09e53524ebbb11e59110df6a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 19:55:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 19:55:03 2021 -0700","stats":{"files_changed":4,"insertions":39,"deletions":48,"files":["docs/parsers/airport_s.md","jc/man/jc.1.gz","jc/parsers/airport_s.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/airport_s.md","lines_changed":49},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/airport_s.py","lines_changed":38},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update airport_s docs","epoch":1618023303,"epoch_utc":null},{"commit":"6a06a3914273853742ac57433398968ccf7d9897","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 16:36:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 16:36:20 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":12}]},"message":"use herestring instead of echo -e into jq","epoch":1618011380,"epoch_utc":null},{"commit":"bdcdaee6c5299ea0750512e0943c7f58f56f2e35","merge":"5d8f836 605353f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 15:11:05 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Apr 9 15:11:05 2021 -0700","message":"Merge pull request #117 from kellyjonbrazil/doc_update\n\nadd new docs","epoch":1618006265,"epoch_utc":null},{"commit":"605353fdce3b8b5986d20a35d05f7210a6df0730","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 15:10:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 15:10:38 2021 -0700","stats":{"files_changed":70,"insertions":1710,"deletions":2656,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":99},{"name":"docs/parsers/airport.md","lines_changed":61},{"name":"docs/parsers/airport_s.md","lines_changed":9},{"name":"docs/parsers/arp.md","lines_changed":51},{"name":"docs/parsers/blkid.md","lines_changed":93},{"name":"docs/parsers/cksum.md","lines_changed":41},{"name":"docs/parsers/crontab.md","lines_changed":84},{"name":"docs/parsers/crontab_u.md","lines_changed":88},{"name":"docs/parsers/csv.md","lines_changed":41},{"name":"docs/parsers/date.md","lines_changed":68},{"name":"docs/parsers/df.md","lines_changed":59},{"name":"docs/parsers/dig.md","lines_changed":133},{"name":"docs/parsers/dir.md","lines_changed":49},{"name":"docs/parsers/dmidecode.md","lines_changed":55},{"name":"docs/parsers/dpkg_l.md","lines_changed":51},{"name":"docs/parsers/du.md","lines_changed":39},{"name":"docs/parsers/env.md","lines_changed":39},{"name":"docs/parsers/file.md","lines_changed":39},{"name":"docs/parsers/finger.md","lines_changed":57},{"name":"docs/parsers/free.md","lines_changed":49},{"name":"docs/parsers/fstab.md","lines_changed":47},{"name":"docs/parsers/group.md","lines_changed":47},{"name":"docs/parsers/gshadow.md","lines_changed":51},{"name":"docs/parsers/hash.md","lines_changed":39},{"name":"docs/parsers/hashsum.md","lines_changed":39},{"name":"docs/parsers/hciconfig.md","lines_changed":123},{"name":"docs/parsers/history.md","lines_changed":39},{"name":"docs/parsers/hosts.md","lines_changed":43},{"name":"docs/parsers/id.md","lines_changed":79},{"name":"docs/parsers/ifconfig.md","lines_changed":97},{"name":"docs/parsers/ini.md","lines_changed":44},{"name":"docs/parsers/iptables.md","lines_changed":67},{"name":"docs/parsers/iw_scan.md","lines_changed":40},{"name":"docs/parsers/jobs.md","lines_changed":45},{"name":"docs/parsers/kv.md","lines_changed":17},{"name":"docs/parsers/last.md","lines_changed":53},{"name":"docs/parsers/ls.md","lines_changed":118},{"name":"docs/parsers/lsblk.md","lines_changed":115},{"name":"docs/parsers/lsmod.md","lines_changed":47},{"name":"docs/parsers/lsof.md","lines_changed":55},{"name":"docs/parsers/mount.md","lines_changed":47},{"name":"docs/parsers/netstat.md","lines_changed":223},{"name":"docs/parsers/ntpq.md","lines_changed":58},{"name":"docs/parsers/passwd.md","lines_changed":49},{"name":"docs/parsers/ping.md","lines_changed":81},{"name":"docs/parsers/pip_list.md","lines_changed":41},{"name":"docs/parsers/pip_show.md","lines_changed":56},{"name":"docs/parsers/ps.md","lines_changed":69},{"name":"docs/parsers/route.md","lines_changed":63},{"name":"docs/parsers/rpm_qi.md","lines_changed":77},{"name":"docs/parsers/shadow.md","lines_changed":51},{"name":"docs/parsers/ss.md","lines_changed":73},{"name":"docs/parsers/stat.md","lines_changed":97},{"name":"docs/parsers/sysctl.md","lines_changed":37},{"name":"docs/parsers/systemctl.md","lines_changed":45},{"name":"docs/parsers/systemctl_lj.md","lines_changed":44},{"name":"docs/parsers/systemctl_ls.md","lines_changed":41},{"name":"docs/parsers/systemctl_luf.md","lines_changed":39},{"name":"docs/parsers/time.md","lines_changed":105},{"name":"docs/parsers/timedatectl.md","lines_changed":53},{"name":"docs/parsers/tracepath.md","lines_changed":60},{"name":"docs/parsers/traceroute.md","lines_changed":69},{"name":"docs/parsers/uname.md","lines_changed":47},{"name":"docs/parsers/upower.md","lines_changed":145},{"name":"docs/parsers/uptime.md","lines_changed":57},{"name":"docs/parsers/w.md","lines_changed":51},{"name":"docs/parsers/wc.md","lines_changed":43},{"name":"docs/parsers/who.md","lines_changed":55},{"name":"docs/parsers/xml.md","lines_changed":38},{"name":"docs/parsers/yaml.md","lines_changed":42}]},"message":"add new docs","epoch":1618006238,"epoch_utc":null},{"commit":"490c9e17699e8e4f70dcc1612e1a808f86e24b0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 11:38:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 11:38:17 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":8}]},"message":"add more cli tests for magic command","epoch":1617993497,"epoch_utc":null},{"commit":"6ebebb659dc93daeaa869752ad135f6e1d2cb1ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 11:10:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 11:10:08 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"update changelog","epoch":1617991808,"epoch_utc":null},{"commit":"0e70c5ee12e96f04a89de05153a2da9cd39f98ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 11:04:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 11:04:17 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update documentation link","epoch":1617991457,"epoch_utc":null},{"commit":"cd531acf6045660e022c932f62a01d4084433ad4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 11:02:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 11:02:19 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":1}]},"message":"clean up comment","epoch":1617991339,"epoch_utc":null},{"commit":"908ac1f61c5cc011d05d550f933940dfed4431f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 10:56:43 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 10:56:43 2021 -0700","stats":{"files_changed":143,"insertions":0,"deletions":690,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/man/jc.1.gz","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":4},{"name":"docs/parsers/airport.md","lines_changed":4},{"name":"docs/parsers/airport_s.md","lines_changed":4},{"name":"docs/parsers/arp.md","lines_changed":4},{"name":"docs/parsers/blkid.md","lines_changed":4},{"name":"docs/parsers/cksum.md","lines_changed":4},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"docs/parsers/crontab_u.md","lines_changed":4},{"name":"docs/parsers/csv.md","lines_changed":4},{"name":"docs/parsers/date.md","lines_changed":4},{"name":"docs/parsers/df.md","lines_changed":4},{"name":"docs/parsers/dig.md","lines_changed":4},{"name":"docs/parsers/dir.md","lines_changed":4},{"name":"docs/parsers/dmidecode.md","lines_changed":4},{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"docs/parsers/du.md","lines_changed":4},{"name":"docs/parsers/env.md","lines_changed":4},{"name":"docs/parsers/file.md","lines_changed":4},{"name":"docs/parsers/finger.md","lines_changed":4},{"name":"docs/parsers/free.md","lines_changed":4},{"name":"docs/parsers/fstab.md","lines_changed":4},{"name":"docs/parsers/group.md","lines_changed":4},{"name":"docs/parsers/gshadow.md","lines_changed":4},{"name":"docs/parsers/hash.md","lines_changed":4},{"name":"docs/parsers/hashsum.md","lines_changed":4},{"name":"docs/parsers/hciconfig.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":4},{"name":"docs/parsers/hosts.md","lines_changed":4},{"name":"docs/parsers/id.md","lines_changed":4},{"name":"docs/parsers/ifconfig.md","lines_changed":4},{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"docs/parsers/iptables.md","lines_changed":4},{"name":"docs/parsers/iw_scan.md","lines_changed":4},{"name":"docs/parsers/jobs.md","lines_changed":4},{"name":"docs/parsers/kv.md","lines_changed":4},{"name":"docs/parsers/last.md","lines_changed":4},{"name":"docs/parsers/ls.md","lines_changed":67},{"name":"docs/parsers/lsblk.md","lines_changed":4},{"name":"docs/parsers/lsmod.md","lines_changed":4},{"name":"docs/parsers/lsof.md","lines_changed":4},{"name":"docs/parsers/mount.md","lines_changed":4},{"name":"docs/parsers/netstat.md","lines_changed":4},{"name":"docs/parsers/ntpq.md","lines_changed":4},{"name":"docs/parsers/passwd.md","lines_changed":4},{"name":"docs/parsers/ping.md","lines_changed":4},{"name":"docs/parsers/pip_list.md","lines_changed":4},{"name":"docs/parsers/pip_show.md","lines_changed":4},{"name":"docs/parsers/ps.md","lines_changed":4},{"name":"docs/parsers/route.md","lines_changed":4},{"name":"docs/parsers/rpm_qi.md","lines_changed":4},{"name":"docs/parsers/shadow.md","lines_changed":4},{"name":"docs/parsers/ss.md","lines_changed":4},{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"docs/parsers/sysctl.md","lines_changed":4},{"name":"docs/parsers/systemctl.md","lines_changed":4},{"name":"docs/parsers/systemctl_lj.md","lines_changed":4},{"name":"docs/parsers/systemctl_ls.md","lines_changed":4},{"name":"docs/parsers/systemctl_luf.md","lines_changed":4},{"name":"docs/parsers/time.md","lines_changed":4},{"name":"docs/parsers/timedatectl.md","lines_changed":4},{"name":"docs/parsers/tracepath.md","lines_changed":4},{"name":"docs/parsers/traceroute.md","lines_changed":4},{"name":"docs/parsers/uname.md","lines_changed":4},{"name":"docs/parsers/upower.md","lines_changed":4},{"name":"docs/parsers/uptime.md","lines_changed":4},{"name":"docs/parsers/w.md","lines_changed":4},{"name":"docs/parsers/wc.md","lines_changed":4},{"name":"docs/parsers/who.md","lines_changed":4},{"name":"docs/parsers/xml.md","lines_changed":4},{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/acpi.py","lines_changed":4},{"name":"jc/parsers/airport.py","lines_changed":4},{"name":"jc/parsers/airport_s.py","lines_changed":4},{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/blkid.py","lines_changed":4},{"name":"jc/parsers/cksum.py","lines_changed":4},{"name":"jc/parsers/crontab.py","lines_changed":4},{"name":"jc/parsers/crontab_u.py","lines_changed":4},{"name":"jc/parsers/csv.py","lines_changed":4},{"name":"jc/parsers/date.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":4},{"name":"jc/parsers/dir.py","lines_changed":4},{"name":"jc/parsers/dmidecode.py","lines_changed":4},{"name":"jc/parsers/dpkg_l.py","lines_changed":4},{"name":"jc/parsers/du.py","lines_changed":4},{"name":"jc/parsers/env.py","lines_changed":4},{"name":"jc/parsers/file.py","lines_changed":4},{"name":"jc/parsers/finger.py","lines_changed":4},{"name":"jc/parsers/foo.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":4},{"name":"jc/parsers/fstab.py","lines_changed":4},{"name":"jc/parsers/group.py","lines_changed":4},{"name":"jc/parsers/gshadow.py","lines_changed":4},{"name":"jc/parsers/hash.py","lines_changed":4},{"name":"jc/parsers/hashsum.py","lines_changed":4},{"name":"jc/parsers/hciconfig.py","lines_changed":4},{"name":"jc/parsers/history.py","lines_changed":4},{"name":"jc/parsers/hosts.py","lines_changed":4},{"name":"jc/parsers/id.py","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":4},{"name":"jc/parsers/ini.py","lines_changed":4},{"name":"jc/parsers/iptables.py","lines_changed":4},{"name":"jc/parsers/iw_scan.py","lines_changed":4},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/kv.py","lines_changed":4},{"name":"jc/parsers/last.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":67},{"name":"jc/parsers/lsblk.py","lines_changed":4},{"name":"jc/parsers/lsmod.py","lines_changed":4},{"name":"jc/parsers/lsof.py","lines_changed":4},{"name":"jc/parsers/mount.py","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":4},{"name":"jc/parsers/ntpq.py","lines_changed":4},{"name":"jc/parsers/passwd.py","lines_changed":4},{"name":"jc/parsers/ping.py","lines_changed":4},{"name":"jc/parsers/pip_list.py","lines_changed":4},{"name":"jc/parsers/pip_show.py","lines_changed":4},{"name":"jc/parsers/ps.py","lines_changed":4},{"name":"jc/parsers/route.py","lines_changed":4},{"name":"jc/parsers/rpm_qi.py","lines_changed":4},{"name":"jc/parsers/shadow.py","lines_changed":4},{"name":"jc/parsers/ss.py","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"jc/parsers/sysctl.py","lines_changed":4},{"name":"jc/parsers/systemctl.py","lines_changed":4},{"name":"jc/parsers/systemctl_lj.py","lines_changed":4},{"name":"jc/parsers/systemctl_ls.py","lines_changed":4},{"name":"jc/parsers/systemctl_luf.py","lines_changed":4},{"name":"jc/parsers/time.py","lines_changed":4},{"name":"jc/parsers/timedatectl.py","lines_changed":4},{"name":"jc/parsers/tracepath.py","lines_changed":4},{"name":"jc/parsers/traceroute.py","lines_changed":4},{"name":"jc/parsers/uname.py","lines_changed":4},{"name":"jc/parsers/upower.py","lines_changed":4},{"name":"jc/parsers/uptime.py","lines_changed":4},{"name":"jc/parsers/w.py","lines_changed":4},{"name":"jc/parsers/wc.py","lines_changed":4},{"name":"jc/parsers/who.py","lines_changed":4},{"name":"jc/parsers/xml.py","lines_changed":4},{"name":"jc/parsers/yaml.py","lines_changed":4},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update docs - remove compatibility section since it is now automatically generated from info()","epoch":1617991003,"epoch_utc":null},{"commit":"f5c7e7e4046bc57b4fcad99390e31b121a7106ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 10:36:42 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 10:36:42 2021 -0700","stats":{"files_changed":70,"insertions":350,"deletions":0,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":5},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5}]},"message":"add updated docs with home link and parser info at the bottom","epoch":1617989802,"epoch_utc":null},{"commit":"001c700b5bd280cb1cb9e54169ae5f1b7918c257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 10:36:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 10:36:03 2021 -0700","stats":{"files_changed":3,"insertions":2,"deletions":1,"files":["docgen.sh","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docgen.sh","lines_changed":3},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add home link to the top of the md file","epoch":1617989763,"epoch_utc":null},{"commit":"9b41e9bef0ff099e70f37fddc8fe2c6bd8457b19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 10:32:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 10:32:58 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":1}]},"message":"Add parser information header","epoch":1617989578,"epoch_utc":null},{"commit":"34bd6e32dc0c0bf7dfeedaadbf04115f43e9d060","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 10:26:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 10:26:34 2021 -0700","stats":{"files_changed":1,"insertions":20,"deletions":4,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":24}]},"message":"pull each parser as a json object into a bash array and iterate on it to add supplementary information like version, author, and compatibility","epoch":1617989194,"epoch_utc":null},{"commit":"c5d058490beaa8f59875a8acfd7a400764768639","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 09:12:41 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 09:12:41 2021 -0700","stats":{"files_changed":1,"insertions":22,"deletions":13,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":35}]},"message":"move parser doc printing to its own function","epoch":1617984761,"epoch_utc":null},{"commit":"dd1ae6d9a7de5421830232deb42d933b9a652672","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 08:09:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 08:09:37 2021 -0700","stats":{"files_changed":4,"insertions":3,"deletions":1,"files":["MANIFEST.in","jc/man/jc.1.gz","man/jc.1.gz","mangen.py"],"file_stats":[{"name":"MANIFEST.in","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"mangen.py","lines_changed":2}]},"message":"add man page inside the pypi package for easier packaging in homebrew","epoch":1617980977,"epoch_utc":null},{"commit":"d8ea9bde823a7f5c146741150c3211737345c7dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 16:42:57 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 16:42:57 2021 -0700","stats":{"files_changed":3,"insertions":16,"deletions":16,"files":["docs/parsers/w.md","jc/parsers/w.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/w.md","lines_changed":16},{"name":"jc/parsers/w.py","lines_changed":16},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update","epoch":1617925377,"epoch_utc":null},{"commit":"125edc9c906dc3650b6a683ed13830075acb7ab6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 16:42:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 16:42:45 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"bail out for -h, -a, and -v in magic()","epoch":1617925365,"epoch_utc":null},{"commit":"15ea43e394a9004f8ccec208b3a066c76e241866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 16:28:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 16:28:05 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["MANIFEST.in"],"file_stats":[{"name":"MANIFEST.in","lines_changed":1}]},"message":"add man file to package for easier packaging in homebrew","epoch":1617924485,"epoch_utc":null},{"commit":"b55b02687c00d1c50e30f30c9b9a7f36f783eb0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 16:14:11 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 16:14:11 2021 -0700","stats":{"files_changed":19,"insertions":371,"deletions":441,"files":["CHANGELOG","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","man/jc.1.gz","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":6},{"name":"docs/parsers/uname.md","lines_changed":42},{"name":"docs/parsers/upower.md","lines_changed":140},{"name":"docs/parsers/uptime.md","lines_changed":52},{"name":"docs/parsers/w.md","lines_changed":46},{"name":"docs/parsers/wc.md","lines_changed":38},{"name":"docs/parsers/who.md","lines_changed":50},{"name":"docs/parsers/xml.md","lines_changed":33},{"name":"docs/parsers/yaml.md","lines_changed":37},{"name":"jc/parsers/uname.py","lines_changed":33},{"name":"jc/parsers/upower.py","lines_changed":131},{"name":"jc/parsers/uptime.py","lines_changed":43},{"name":"jc/parsers/w.py","lines_changed":37},{"name":"jc/parsers/wc.py","lines_changed":29},{"name":"jc/parsers/who.py","lines_changed":41},{"name":"jc/parsers/xml.py","lines_changed":24},{"name":"jc/parsers/yaml.py","lines_changed":28},{"name":"man/jc.1.gz","lines_changed":null},{"name":"setup.py","lines_changed":2}]},"message":"doc update","epoch":1617923651,"epoch_utc":null},{"commit":"da611f0ac6321f7f52fdbc419f8b155c74393c28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 15:53:06 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 15:53:06 2021 -0700","stats":{"files_changed":4,"insertions":63,"deletions":50,"files":["jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","man/jc.1.gz"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":30},{"name":"jc/parsers/iptables.py","lines_changed":53},{"name":"jc/parsers/iw_scan.py","lines_changed":30},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update docs","epoch":1617922386,"epoch_utc":null},{"commit":"b8b8dfead4fdc4285585c44c2ebce3bdd42b2e7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 15:52:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 15:52:49 2021 -0700","stats":{"files_changed":61,"insertions":1501,"deletions":1848,"files":["docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":39},{"name":"docs/parsers/iptables.md","lines_changed":62},{"name":"docs/parsers/iw_scan.md","lines_changed":35},{"name":"docs/parsers/jobs.md","lines_changed":40},{"name":"docs/parsers/kv.md","lines_changed":12},{"name":"docs/parsers/last.md","lines_changed":48},{"name":"docs/parsers/ls.md","lines_changed":50},{"name":"docs/parsers/lsblk.md","lines_changed":110},{"name":"docs/parsers/lsmod.md","lines_changed":42},{"name":"docs/parsers/lsof.md","lines_changed":50},{"name":"docs/parsers/mount.md","lines_changed":42},{"name":"docs/parsers/netstat.md","lines_changed":218},{"name":"docs/parsers/ntpq.md","lines_changed":53},{"name":"docs/parsers/passwd.md","lines_changed":44},{"name":"docs/parsers/ping.md","lines_changed":76},{"name":"docs/parsers/pip_list.md","lines_changed":36},{"name":"docs/parsers/pip_show.md","lines_changed":51},{"name":"docs/parsers/ps.md","lines_changed":64},{"name":"docs/parsers/route.md","lines_changed":58},{"name":"docs/parsers/rpm_qi.md","lines_changed":72},{"name":"docs/parsers/shadow.md","lines_changed":46},{"name":"docs/parsers/ss.md","lines_changed":66},{"name":"docs/parsers/stat.md","lines_changed":92},{"name":"docs/parsers/sysctl.md","lines_changed":32},{"name":"docs/parsers/systemctl.md","lines_changed":40},{"name":"docs/parsers/systemctl_lj.md","lines_changed":39},{"name":"docs/parsers/systemctl_ls.md","lines_changed":36},{"name":"docs/parsers/systemctl_luf.md","lines_changed":34},{"name":"docs/parsers/time.md","lines_changed":100},{"name":"docs/parsers/timedatectl.md","lines_changed":48},{"name":"docs/parsers/tracepath.md","lines_changed":55},{"name":"docs/parsers/traceroute.md","lines_changed":64},{"name":"jc/parsers/jobs.py","lines_changed":31},{"name":"jc/parsers/kv.py","lines_changed":13},{"name":"jc/parsers/last.py","lines_changed":39},{"name":"jc/parsers/ls.py","lines_changed":41},{"name":"jc/parsers/lsblk.py","lines_changed":101},{"name":"jc/parsers/lsmod.py","lines_changed":33},{"name":"jc/parsers/lsof.py","lines_changed":41},{"name":"jc/parsers/mount.py","lines_changed":41},{"name":"jc/parsers/netstat.py","lines_changed":209},{"name":"jc/parsers/ntpq.py","lines_changed":44},{"name":"jc/parsers/passwd.py","lines_changed":35},{"name":"jc/parsers/ping.py","lines_changed":75},{"name":"jc/parsers/pip_list.py","lines_changed":27},{"name":"jc/parsers/pip_show.py","lines_changed":42},{"name":"jc/parsers/ps.py","lines_changed":55},{"name":"jc/parsers/route.py","lines_changed":49},{"name":"jc/parsers/rpm_qi.py","lines_changed":63},{"name":"jc/parsers/shadow.py","lines_changed":37},{"name":"jc/parsers/ss.py","lines_changed":59},{"name":"jc/parsers/stat.py","lines_changed":83},{"name":"jc/parsers/sysctl.py","lines_changed":23},{"name":"jc/parsers/systemctl.py","lines_changed":31},{"name":"jc/parsers/systemctl_lj.py","lines_changed":30},{"name":"jc/parsers/systemctl_ls.py","lines_changed":27},{"name":"jc/parsers/systemctl_luf.py","lines_changed":25},{"name":"jc/parsers/time.py","lines_changed":91},{"name":"jc/parsers/timedatectl.py","lines_changed":39},{"name":"jc/parsers/tracepath.py","lines_changed":46},{"name":"jc/parsers/traceroute.py","lines_changed":65}]},"message":"update docs","epoch":1617922369,"epoch_utc":null},{"commit":"4290a3cbd135cacbf63664dc30768017ebbed28d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 14:00:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 14:00:56 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":9,"files":["docs/parsers/ifconfig.md","jc/parsers/ifconfig.py"],"file_stats":[{"name":"docs/parsers/ifconfig.md","lines_changed":6},{"name":"jc/parsers/ifconfig.py","lines_changed":6}]},"message":"make IfconfigParser class private","epoch":1617915656,"epoch_utc":null},{"commit":"a5e2203cee6a7bc398cf280f57d37638eeb1d2d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 12:45:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 12:45:08 2021 -0700","stats":{"files_changed":3,"insertions":2,"deletions":1,"files":["docs/parsers/ifconfig.md","jc/parsers/ifconfig.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":1},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update ifconfig doc","epoch":1617911108,"epoch_utc":null},{"commit":"e28c08b1361161cfd123b9ebc11fa1ffa87d658f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 12:42:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 12:42:01 2021 -0700","stats":{"files_changed":46,"insertions":976,"deletions":1209,"files":["docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/csv.md","lines_changed":36},{"name":"docs/parsers/date.md","lines_changed":63},{"name":"docs/parsers/df.md","lines_changed":54},{"name":"docs/parsers/dig.md","lines_changed":128},{"name":"docs/parsers/dir.md","lines_changed":44},{"name":"docs/parsers/dmidecode.md","lines_changed":50},{"name":"docs/parsers/dpkg_l.md","lines_changed":46},{"name":"docs/parsers/du.md","lines_changed":34},{"name":"docs/parsers/env.md","lines_changed":34},{"name":"docs/parsers/file.md","lines_changed":34},{"name":"docs/parsers/finger.md","lines_changed":52},{"name":"docs/parsers/free.md","lines_changed":44},{"name":"docs/parsers/fstab.md","lines_changed":42},{"name":"docs/parsers/group.md","lines_changed":42},{"name":"docs/parsers/gshadow.md","lines_changed":46},{"name":"docs/parsers/hash.md","lines_changed":34},{"name":"docs/parsers/hashsum.md","lines_changed":34},{"name":"docs/parsers/hciconfig.md","lines_changed":118},{"name":"docs/parsers/history.md","lines_changed":34},{"name":"docs/parsers/hosts.md","lines_changed":38},{"name":"docs/parsers/id.md","lines_changed":74},{"name":"docs/parsers/ifconfig.md","lines_changed":86},{"name":"jc/parsers/csv.py","lines_changed":27},{"name":"jc/parsers/date.py","lines_changed":54},{"name":"jc/parsers/df.py","lines_changed":45},{"name":"jc/parsers/dig.py","lines_changed":143},{"name":"jc/parsers/dir.py","lines_changed":35},{"name":"jc/parsers/dmidecode.py","lines_changed":41},{"name":"jc/parsers/dpkg_l.py","lines_changed":37},{"name":"jc/parsers/du.py","lines_changed":25},{"name":"jc/parsers/env.py","lines_changed":25},{"name":"jc/parsers/file.py","lines_changed":25},{"name":"jc/parsers/finger.py","lines_changed":43},{"name":"jc/parsers/foo.py","lines_changed":25},{"name":"jc/parsers/free.py","lines_changed":35},{"name":"jc/parsers/fstab.py","lines_changed":33},{"name":"jc/parsers/group.py","lines_changed":33},{"name":"jc/parsers/gshadow.py","lines_changed":37},{"name":"jc/parsers/hash.py","lines_changed":25},{"name":"jc/parsers/hashsum.py","lines_changed":25},{"name":"jc/parsers/hciconfig.py","lines_changed":109},{"name":"jc/parsers/history.py","lines_changed":25},{"name":"jc/parsers/hosts.py","lines_changed":29},{"name":"jc/parsers/id.py","lines_changed":65},{"name":"jc/parsers/ifconfig.py","lines_changed":77},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update documentation","epoch":1617910921,"epoch_utc":null},{"commit":"a4b6846f63b43168085275d73940265940badf46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 11:37:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 11:37:39 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":467,"files":["man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"man/jc.1","lines_changed":467},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"man update","epoch":1617907059,"epoch_utc":null},{"commit":"2bc830786114fd57619f34b936dcf6e0bed7a109","merge":"9b39917 5d8f836","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 11:33:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 11:33:50 2021 -0700","message":"Merge branch 'master' into dev\n\n# Conflicts:\n# man/jc.1","epoch":1617906830,"epoch_utc":null},{"commit":"9b39917c798ed0310c9b82d87172cbf6d24ba111","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 11:24:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 11:24:02 2021 -0700","stats":{"files_changed":17,"insertions":391,"deletions":453,"files":["README.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","jc/cli.py","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/acpi.md","lines_changed":94},{"name":"docs/parsers/airport.md","lines_changed":56},{"name":"docs/parsers/blkid.md","lines_changed":88},{"name":"docs/parsers/cksum.md","lines_changed":36},{"name":"docs/parsers/crontab.md","lines_changed":79},{"name":"docs/parsers/crontab_u.md","lines_changed":83},{"name":"jc/cli.py","lines_changed":6},{"name":"jc/parsers/acpi.py","lines_changed":85},{"name":"jc/parsers/airport.py","lines_changed":47},{"name":"jc/parsers/blkid.py","lines_changed":79},{"name":"jc/parsers/cksum.py","lines_changed":27},{"name":"jc/parsers/crontab.py","lines_changed":70},{"name":"jc/parsers/crontab_u.py","lines_changed":74},{"name":"man/jc.1","lines_changed":8},{"name":"templates/manpage_template","lines_changed":8},{"name":"templates/readme_template","lines_changed":2}]},"message":"update docstrings for new help functionality","epoch":1617906242,"epoch_utc":null},{"commit":"57c13cc0a38ad89fda8b0e362bd6487257d0a26a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 10:54:15 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 10:54:15 2021 -0700","stats":{"files_changed":1,"insertions":23,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":26}]},"message":"add support for parser help","epoch":1617904455,"epoch_utc":null},{"commit":"b7355fd30d992a1bcc90227f5a1b02be073829e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 10:20:24 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 10:20:24 2021 -0700","stats":{"files_changed":2,"insertions":37,"deletions":48,"files":["docs/parsers/arp.md","jc/parsers/arp.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":46},{"name":"jc/parsers/arp.py","lines_changed":39}]},"message":"new docstring format for improved documentation","epoch":1617902424,"epoch_utc":null},{"commit":"93ae309e407b26820b9f05b5b331d05fc77df57f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 10:20:00 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 10:20:00 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/__init__.py","man/jc.1"],"file_stats":[{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"bump version to 1.15.1","epoch":1617902400,"epoch_utc":null},{"commit":"5d8f8365e24a7c3a587d4e71ebba4876de08203b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 14:27:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 7 14:27:34 2021 -0700","stats":{"files_changed":3,"insertions":9,"deletions":461,"files":["man/jc.1","man/jc.1.gz","mangen.py"],"file_stats":[{"name":"man/jc.1","lines_changed":461},{"name":"man/jc.1.gz","lines_changed":null},{"name":"mangen.py","lines_changed":9}]},"message":"gzip man page","epoch":1617830854,"epoch_utc":null},{"commit":"f26909eefb236e9ebf63be53cd86ae13cc3d9ea3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 11:18:33 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 7 11:18:33 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["docs/parsers/dir.md"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":8}]},"message":"formatting","epoch":1617819513,"epoch_utc":null},{"commit":"55bfbb2797ede3aefbb14ecab950b108b1895ccc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 11:13:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 7 11:13:27 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":6,"files":["EXAMPLES.md","jc/parsers/dir.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":3},{"name":"jc/parsers/dir.py","lines_changed":8}]},"message":"formatting","epoch":1617819207,"epoch_utc":null},{"commit":"8970b8342a855203aef649b60dad3e49a1d7fd2a","merge":"a73fdb7 5285e69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 09:34:45 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Apr 7 09:34:45 2021 -0700","message":"Merge pull request #115 from kellyjonbrazil/master\n\nSync master and dev","epoch":1617813285,"epoch_utc":null},{"commit":"5285e699c30fdeaf56068f5a03ef1d1d33fa673c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 08:07:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 7 08:07:50 2021 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","jc/cli.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"fix rpm-qi parser name","epoch":1617808070,"epoch_utc":null},{"commit":"275f3860d5870303235b651d42650256e4db8ada","merge":"577811f a73fdb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 07:54:41 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Apr 7 07:54:41 2021 -0700","message":"Merge pull request #114 from kellyjonbrazil/dev\n\nDev v1.15.0","epoch":1617807281,"epoch_utc":null},{"commit":"a73fdb7478965f0f2c841ac01b2762db80ad0786","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 07:50:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 7 07:50:17 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["CHANGELOG","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"update dates","epoch":1617807017,"epoch_utc":null},{"commit":"f2d746403a0ed764f931ae9e14d180bab107dcca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 20:30:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 20:30:56 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/rpm_qi.md","jc/parsers/rpm_qi.py"],"file_stats":[{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"jc/parsers/rpm_qi.py","lines_changed":2}]},"message":"typo fix","epoch":1617766256,"epoch_utc":null},{"commit":"b7dbf2c49be4beb793495a0aaee7f05dbea5a3a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 18:53:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 18:53:50 2021 -0700","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":26}]},"message":"doc formatting","epoch":1617760430,"epoch_utc":null},{"commit":"21f3c97788826e79b0c387f877c5adf269318e97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 18:38:04 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 18:38:04 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2}]},"message":"rename rpm_qai to rpm_qi","epoch":1617759484,"epoch_utc":null},{"commit":"14b727cc717d04fefba1cc31b6f29b549ced986f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 18:34:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 18:34:08 2021 -0700","stats":{"files_changed":3,"insertions":73,"deletions":0,"files":["tests/fixtures/centos-7.7/rpm-qi-package.json","tests/fixtures/centos-7.7/rpm-qi-package.out","tests/test_rpm_qai.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/rpm-qi-package.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rpm-qi-package.out","lines_changed":26},{"name":"tests/test_rpm_qai.py","lines_changed":46}]},"message":"add rpm_qi tests","epoch":1617759248,"epoch_utc":null},{"commit":"abee226591ed4ae37351efc995017d28b27827d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 18:32:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 18:32:47 2021 -0700","stats":{"files_changed":5,"insertions":205,"deletions":14,"files":["README.md","docs/parsers/rpm_qi.md","jc/cli.py","jc/parsers/{rpm_qai.py => rpm_qi.py}","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":191},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/{rpm_qai.py => rpm_qi.py}","lines_changed":20},{"name":"man/jc.1","lines_changed":4}]},"message":"rename rpm_qia to rpm_qi","epoch":1617759167,"epoch_utc":null},{"commit":"293ad39f4bcf326186dd917d8bc58d3964e5e4d6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 16:48:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 16:48:31 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"typo fix","epoch":1617752911,"epoch_utc":null},{"commit":"92443025811019f616f596abb60a2889f604c122","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 15:07:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 15:07:39 2021 -0700","stats":{"files_changed":4,"insertions":7,"deletions":6,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/rpm_qai.md","jc/parsers/rpm_qai.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":4},{"name":"docs/parsers/rpm_qai.md","lines_changed":4},{"name":"jc/parsers/rpm_qai.py","lines_changed":4}]},"message":"rpm parser doc update","epoch":1617746859,"epoch_utc":null},{"commit":"753cac25fb1e7e6cd2c742afa8d45ced068ea91d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 14:46:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 14:46:27 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":3,"files":["jc/parsers/rpm_qai.py"],"file_stats":[{"name":"jc/parsers/rpm_qai.py","lines_changed":9}]},"message":"only add description if it exists","epoch":1617745587,"epoch_utc":null},{"commit":"0548263e898bf14f93d2fa423c0f0a9d9f2ff567","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 14:39:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 14:39:39 2021 -0700","stats":{"files_changed":8,"insertions":10468,"deletions":0,"files":["EXAMPLES.md","README.md","docs/parsers/rpm_qai.md","jc/cli.py","jc/parsers/rpm_qai.py","man/jc.1","tests/fixtures/centos-7.7/rpm-qai.json","tests/fixtures/centos-7.7/rpm-qai.out"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":53},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/rpm_qai.md","lines_changed":191},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/rpm_qai.py","lines_changed":255},{"name":"man/jc.1","lines_changed":5},{"name":"tests/fixtures/centos-7.7/rpm-qai.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rpm-qai.out","lines_changed":9961}]},"message":"add rpm -qai parser","epoch":1617745179,"epoch_utc":null},{"commit":"53776a9bf894988d6ef9221a62ab8b816c89560c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 11:36:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 11:36:10 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":2},{"name":"templates/manpage_template","lines_changed":2}]},"message":"note -a output is JSON","epoch":1617734170,"epoch_utc":null},{"commit":"cc7def9b76a7fa6de1e11b584676820f3acb0257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 11:29:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 11:29:30 2021 -0700","stats":{"files_changed":3,"insertions":18,"deletions":0,"files":["tests/fixtures/osx-10.14.6/finger.json","tests/fixtures/osx-10.14.6/finger.out","tests/test_finger.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/finger.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/finger.out","lines_changed":5},{"name":"tests/test_finger.py","lines_changed":12}]},"message":"add OSX finger tests","epoch":1617733770,"epoch_utc":null},{"commit":"11a4422c25ed905f33475677bcc2f59f49c62a23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 11:23:29 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 11:23:29 2021 -0700","stats":{"files_changed":3,"insertions":51,"deletions":0,"files":["tests/fixtures/centos-7.7/finger.json","tests/fixtures/centos-7.7/finger.out","tests/test_finger.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/finger.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/finger.out","lines_changed":3},{"name":"tests/test_finger.py","lines_changed":47}]},"message":"add centos 7.7 finger tests","epoch":1617733409,"epoch_utc":null},{"commit":"3a44785260514227b541530baf3e14b6c7ebe86a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 11:23:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 11:23:09 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/finger.py"],"file_stats":[{"name":"jc/parsers/finger.py","lines_changed":4}]},"message":"del details key if details are blank","epoch":1617733389,"epoch_utc":null},{"commit":"e0d430c26c38db8de5a32741e05df412cffe45b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 11:00:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 11:00:46 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"update -r raw option info","epoch":1617732046,"epoch_utc":null},{"commit":"417b70020accfa4910016e9d3d12690a5488f6f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 10:51:41 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 10:51:41 2021 -0700","stats":{"files_changed":5,"insertions":129,"deletions":22,"files":["EXAMPLES.md","docs/parsers/finger.md","jc/parsers/finger.py","tests/fixtures/ubuntu-18.04/finger.json","tests/fixtures/ubuntu-18.04/finger.out"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":18},{"name":"docs/parsers/finger.md","lines_changed":53},{"name":"jc/parsers/finger.py","lines_changed":71},{"name":"tests/fixtures/ubuntu-18.04/finger.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/finger.out","lines_changed":8}]},"message":"add idle time fields to finger parser","epoch":1617731501,"epoch_utc":null},{"commit":"7b29c464b72ef9a79bd872dab92cf65016490bcc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 10:04:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 10:04:02 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"date updated","epoch":1617728642,"epoch_utc":null},{"commit":"26d5529d86e4e459ad94226465c3697a050af0ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 10:03:51 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 10:03:51 2021 -0700","stats":{"files_changed":1,"insertions":10,"deletions":7,"files":["docs/parsers/finger.md"],"file_stats":[{"name":"docs/parsers/finger.md","lines_changed":17}]},"message":"remove aix support, add note for -s support. schema update","epoch":1617728631,"epoch_utc":null},{"commit":"852103c478321b84ffbbc0a876d5ece0c0881e1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 10:02:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 10:02:46 2021 -0700","stats":{"files_changed":1,"insertions":27,"deletions":14,"files":["jc/parsers/finger.py"],"file_stats":[{"name":"jc/parsers/finger.py","lines_changed":41}]},"message":"tweak regex to support arbitrary 'detail' data","epoch":1617728566,"epoch_utc":null},{"commit":"26a115421b0888e23f4348f1124e2ef7b39df4cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 17:16:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 17:16:38 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":11}]},"message":"add finger parser","epoch":1617668198,"epoch_utc":null},{"commit":"755b941a9aa602d95d9bc599f5c64e05f9e6216d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 17:14:33 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 17:14:33 2021 -0700","stats":{"files_changed":3,"insertions":35,"deletions":30,"files":["EXAMPLES.md","docs/parsers/finger.md","jc/parsers/finger.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":23},{"name":"docs/parsers/finger.md","lines_changed":21},{"name":"jc/parsers/finger.py","lines_changed":21}]},"message":"doc update","epoch":1617668073,"epoch_utc":null},{"commit":"fd1ca82d86649adeb84968142665e5e4fae3fa0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 17:09:22 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 17:09:22 2021 -0700","stats":{"files_changed":5,"insertions":263,"deletions":0,"files":["README.md","docs/parsers/finger.md","jc/cli.py","jc/parsers/finger.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/finger.md","lines_changed":102},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/finger.py","lines_changed":154},{"name":"man/jc.1","lines_changed":5}]},"message":"add finger parser","epoch":1617667762,"epoch_utc":null},{"commit":"6fe175344fc61d4996a9ea20f6c5d429efb1fac7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 13:38:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 13:38:09 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"change examples link to github.io","epoch":1617655089,"epoch_utc":null},{"commit":"3590cda13a68616ee7eb8c85c5554ffb3fef036d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 12:07:52 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 12:07:52 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/last.md","jc/parsers/last.py"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":2}]},"message":"docs formatting","epoch":1617649672,"epoch_utc":null},{"commit":"2f1011dd85ec9b3550138ac4a4e1729fa5b4fe17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 12:03:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 12:03:35 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"readme update","epoch":1617649415,"epoch_utc":null},{"commit":"2b155261b3f6e4879b592f5bc052649ded5e3d69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 12:01:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 12:01:53 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":2}]},"message":"use new github.io links for documentation","epoch":1617649313,"epoch_utc":null},{"commit":"02f4d606d0a446c7cc74aedac6035ee79805950d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 11:49:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 11:49:30 2021 -0700","stats":{"files_changed":2,"insertions":69,"deletions":69,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":136},{"name":"templates/readme_template","lines_changed":2}]},"message":"add documentation links to README.md","epoch":1617648570,"epoch_utc":null},{"commit":"577811f00b7fcd0396bb0e26a2985709bd2c65a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 11:42:59 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 11:42:59 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/_config.yml"],"file_stats":[{"name":"docs/_config.yml","lines_changed":1}]},"message":"Set theme jekyll-theme-cayman","epoch":1617648179,"epoch_utc":null},{"commit":"b4098d67a3a4a617d42c1389e0a88833c77b89b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 09:42:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 09:42:35 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"latest","epoch":1617640955,"epoch_utc":null},{"commit":"88bd7554aeb511c19e55dc3dde9c9376efb0485b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 09:42:25 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 09:42:25 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":3,"files":["docgen.sh","updatedocs.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":2},{"name":"updatedocs.sh","lines_changed":9}]},"message":"add status messages","epoch":1617640945,"epoch_utc":null},{"commit":"b5ec16c5cafb78db093861cc30d9646207f2227a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 09:23:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 09:23:20 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":8,"files":["mangen.py","readmegen.py"],"file_stats":[{"name":"mangen.py","lines_changed":4},{"name":"readmegen.py","lines_changed":4}]},"message":"formatting","epoch":1617639800,"epoch_utc":null},{"commit":"68fcb60a1460a35500180ec05a8cf5ba5706ff17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 20:56:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 4 20:56:10 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["updatedocs.sh"],"file_stats":[{"name":"updatedocs.sh","lines_changed":6}]},"message":"add updatedocs script","epoch":1617594970,"epoch_utc":null},{"commit":"e4781d60ce251f6d47f19bbe042e97f8aa9e2f18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 20:52:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 4 20:52:34 2021 -0700","stats":{"files_changed":65,"insertions":188,"deletions":189,"files":["README.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":124},{"name":"jc/parsers/acpi.py","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/blkid.py","lines_changed":2},{"name":"jc/parsers/cksum.py","lines_changed":3},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/dir.py","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":2},{"name":"jc/parsers/dpkg_l.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/group.py","lines_changed":2},{"name":"jc/parsers/gshadow.py","lines_changed":2},{"name":"jc/parsers/hash.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":2},{"name":"jc/parsers/hciconfig.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/ntpq.py","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":2},{"name":"jc/parsers/ping.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/shadow.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/sysctl.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/time.py","lines_changed":2},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/parsers/wc.py","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":2},{"name":"man/jc.1","lines_changed":126}]},"message":"update parser descriptions with backticks surrounding command names","epoch":1617594754,"epoch_utc":null},{"commit":"6201fb346a66ba762651624cdaf03f08e08579a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 20:31:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 4 20:31:58 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"test backticks in description","epoch":1617593518,"epoch_utc":null},{"commit":"f88c8343f9dec5e0190df94a5109e6c749bda286","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 20:30:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 4 20:30:53 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"update iw-scan description for documentation","epoch":1617593453,"epoch_utc":null},{"commit":"25410d33168ee7142bd8f8c739ef22a62a47eb6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 20:28:54 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 4 20:28:54 2021 -0700","stats":{"files_changed":5,"insertions":973,"deletions":70,"files":["README.md","mangen.py","readmegen.py","{man/template => templates}/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":139},{"name":"mangen.py","lines_changed":2},{"name":"readmegen.py","lines_changed":16},{"name":"{man/template => templates}/manpage_template","lines_changed":0},{"name":"templates/readme_template","lines_changed":886}]},"message":"create readmegen.py script. move jinja2 templates to templates folder","epoch":1617593334,"epoch_utc":null},{"commit":"4ff9952938d0654376efc94ca7d8a12f6df171af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 15:57:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 4 15:57:44 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":10}]},"message":"change OSX to macOS","epoch":1617577064,"epoch_utc":null},{"commit":"5e3f63a412c5b23e7515337521ebba6273b5c11f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 15:53:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 4 15:53:23 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["man/jc.1","man/template/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":4},{"name":"man/template/manpage_template","lines_changed":8}]},"message":"add license and copyright info. use variables instead of hard-coded values","epoch":1617576803,"epoch_utc":null},{"commit":"e1f57be69efdfd7facd07df6ef0955a36c4fc18b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 15:52:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 4 15:52:50 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add license info","epoch":1617576770,"epoch_utc":null},{"commit":"2c65d5eeccdc95d2de00ac6575a9e8d8458486bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 14:40:22 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 4 14:40:22 2021 -0700","stats":{"files_changed":2,"insertions":32,"deletions":8,"files":["man/jc.1","man/template/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":20},{"name":"man/template/manpage_template","lines_changed":20}]},"message":"man page updates","epoch":1617572422,"epoch_utc":null},{"commit":"aa621f2f1ee043611c440683dfb63e6577d8fac4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 14:29:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 4 14:29:37 2021 -0700","stats":{"files_changed":3,"insertions":74,"deletions":9,"files":["CHANGELOG","man/jc.1","man/template/manpage_template"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"man/jc.1","lines_changed":42},{"name":"man/template/manpage_template","lines_changed":40}]},"message":"enhance man page","epoch":1617571777,"epoch_utc":null},{"commit":"ac932c6e59ad80115962d0ea91e6aaabc70c211e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 3 14:48:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 3 14:48:30 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":2},{"name":"jc/utils.py","lines_changed":2}]},"message":"update timestamp docs","epoch":1617486510,"epoch_utc":null},{"commit":"029f79da1647e53f97ca83ba92b1f36a131f3128","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 21:52:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 21:52:08 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"added info regarding updated dev scripts for automating doc generation","epoch":1617425528,"epoch_utc":null},{"commit":"153b2b4a7a216caae5b03f6d50d43980c13a705f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 21:50:04 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 21:50:04 2021 -0700","stats":{"files_changed":1,"insertions":11,"deletions":68,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":79}]},"message":"use jc to help automate the generation of its own docs","epoch":1617425404,"epoch_utc":null},{"commit":"709b2fe4eead06090f903718deeb06ec774fc26e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 18:08:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 18:08:46 2021 -0700","stats":{"files_changed":2,"insertions":16,"deletions":0,"files":["man/jc.1","man/template/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":8},{"name":"man/template/manpage_template","lines_changed":8}]},"message":"add -h and -v options","epoch":1617412126,"epoch_utc":null},{"commit":"09c1fccc584e3d0582e19b520586419085ea8d04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 18:04:55 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 18:04:55 2021 -0700","stats":{"files_changed":3,"insertions":4,"deletions":6,"files":["man/jc.1","man/template/manpage_template","mangen.py"],"file_stats":[{"name":"man/jc.1","lines_changed":2},{"name":"man/template/manpage_template","lines_changed":2},{"name":"mangen.py","lines_changed":6}]},"message":"manpage updates","epoch":1617411895,"epoch_utc":null},{"commit":"fd254d99b782888fe7646e42a61f28aa99e7cba7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 17:40:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 17:40:09 2021 -0700","stats":{"files_changed":3,"insertions":193,"deletions":15,"files":["man/jc.1","man/template/manpage_template","mangen.py"],"file_stats":[{"name":"man/jc.1","lines_changed":124},{"name":"man/template/manpage_template","lines_changed":64},{"name":"mangen.py","lines_changed":20}]},"message":"add manpage generator","epoch":1617410409,"epoch_utc":null},{"commit":"88bd2c172217c498431e8904e74313bc27978785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 16:31:22 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 16:31:22 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"fix typo","epoch":1617406282,"epoch_utc":null},{"commit":"d03e2f0fc1d0310cd94702f4d3c959d71b0eb622","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 15:01:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 15:01:21 2021 -0700","stats":{"files_changed":1,"insertions":40,"deletions":0,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":40}]},"message":"add parser schema guidelines","epoch":1617400881,"epoch_utc":null},{"commit":"3f12a393bd37062cd1412128be495235b0c7351f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 13:25:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 13:25:23 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"formatting","epoch":1617395123,"epoch_utc":null},{"commit":"8c21284c5038bdc2e52ff4211fac747f33f52091","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 13:23:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 13:23:26 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":3}]},"message":"remove redundant license info","epoch":1617395006,"epoch_utc":null},{"commit":"e7d396c2157a77500017967dfc68ffaf32507c2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 13:21:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 13:21:56 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"update issues link","epoch":1617394916,"epoch_utc":null},{"commit":"f238fac0eb0c8e5133c6c9abf9ca709f5df7a925","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 13:19:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 13:19:47 2021 -0700","stats":{"files_changed":3,"insertions":49,"deletions":0,"files":["CHANGELOG","CONTRIBUTING.md","README.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"CONTRIBUTING.md","lines_changed":46},{"name":"README.md","lines_changed":2}]},"message":"add contributing guidelines","epoch":1617394787,"epoch_utc":null},{"commit":"017228f80d9a65ad7715f31c539d9fca1615296f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:14:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 12:14:26 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add tested on Windows 10","epoch":1617390866,"epoch_utc":null},{"commit":"286c5fa9434e25434ee8f4825621f68464296469","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:12:43 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 12:12:43 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add dir parser","epoch":1617390763,"epoch_utc":null},{"commit":"74cfc13abe4cd09ca5470714caeaedd24c099770","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:10:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 12:10:05 2021 -0700","stats":{"files_changed":9,"insertions":12,"deletions":21,"files":["tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-S.json","tests/fixtures/windows-10/dir-dirs.json","tests/fixtures/windows-10/dir-files.json","tests/fixtures/windows-10/dir-mix.json","tests/fixtures/windows-10/dir-raw.json","tests/fixtures/windows-10/dir.json","tests/test_dir.py"],"file_stats":[{"name":"tests/fixtures/windows-10/dir-C.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-ODTC.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-S.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-dirs.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-files.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-mix.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-raw.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir.json","lines_changed":2},{"name":"tests/test_dir.py","lines_changed":18}]},"message":"fixup dir parser tests","epoch":1617390605,"epoch_utc":null},{"commit":"0ee4a6c377321cf6ff67ced38e9a07a8f6313943","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:01:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 12:01:39 2021 -0700","stats":{"files_changed":2,"insertions":207,"deletions":460,"files":["docs/parsers/dir.md","jc/parsers/dir.py"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":316},{"name":"jc/parsers/dir.py","lines_changed":351}]},"message":"update schema and add epoch naive timestamp","epoch":1617390099,"epoch_utc":null},{"commit":"283433578dfc3f132ef35727ce5bafb3e390896c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:01:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 12:01:23 2021 -0700","stats":{"files_changed":2,"insertions":46,"deletions":0,"files":["EXAMPLES.md","README.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":45},{"name":"README.md","lines_changed":1}]},"message":"add dir parser","epoch":1617390083,"epoch_utc":null},{"commit":"9559c85057308e8815d4654bbe0062a5858c0b2b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:01:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 12:01:05 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":0,"files":["jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":1},{"name":"tests/test_utils.py","lines_changed":2}]},"message":"add windows dir format","epoch":1617390065,"epoch_utc":null},{"commit":"c5c020f5654038dacba542be3784a35d7333cbcc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 11:16:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 11:16:03 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/parsers/dir.md"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":1}]},"message":"add /S option","epoch":1617387363,"epoch_utc":null},{"commit":"95ec79bceb3d0c4245e36b7b16cfda6e16b01197","merge":"8f8be8a 5b60c74","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 11:14:26 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Apr 2 11:14:26 2021 -0700","message":"Merge pull request #107 from rasheed-rd/add-dir-parser\n\nAdd windows dir command parser","epoch":1617387266,"epoch_utc":null},{"commit":"8f8be8aa33f0b708ebd9a35c6b288572443d7181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 11:14:06 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 11:14:06 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4}]},"message":"add -1 option info","epoch":1617387246,"epoch_utc":null},{"commit":"5b60c7445a3f8bd2ae1587aa0ffaeaf093966f9a","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","date":"Fri Apr 2 13:43:06 2021 -0400","commit_by":"Rasheed Elsaleh","commit_by_email":"rasheed@rebelliondefense.com","commit_by_date":"Fri Apr 2 13:43:06 2021 -0400","stats":{"files_changed":5,"insertions":469,"deletions":400,"files":["docs/parsers/dir.md","jc/parsers/dir.py","tests/fixtures/windows-10/dir-S.json","tests/fixtures/windows-10/dir-S.out","tests/test_dir.py"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":404},{"name":"jc/parsers/dir.py","lines_changed":405},{"name":"tests/fixtures/windows-10/dir-S.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-S.out","lines_changed":47},{"name":"tests/test_dir.py","lines_changed":12}]},"message":"Add support for /S and update documentation","epoch":1617396186,"epoch_utc":null},{"commit":"d9dbcc8b526c8de9c6d12ac580880fd606dc68cf","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","date":"Fri Apr 2 13:13:05 2021 -0400","commit_by":"Rasheed Elsaleh","commit_by_email":"rasheed@rebelliondefense.com","commit_by_date":"Fri Apr 2 13:13:05 2021 -0400","stats":{"files_changed":15,"insertions":149,"deletions":73,"files":["docs/parsers/dir.md","jc/parsers/dir.py","tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-Q.json","tests/fixtures/windows-10/dir-Q.out","tests/fixtures/windows-10/dir-dirs.json","tests/fixtures/windows-10/dir-dirs.out","tests/fixtures/windows-10/dir-files.json","tests/fixtures/windows-10/dir-files.out","tests/fixtures/windows-10/dir-mix.json","tests/fixtures/windows-10/dir-mix.out","tests/fixtures/windows-10/dir-raw.json","tests/fixtures/windows-10/dir.json","tests/test_dir.py"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":24},{"name":"jc/parsers/dir.py","lines_changed":59},{"name":"tests/fixtures/windows-10/dir-C.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-ODTC.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-Q.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-Q.out","lines_changed":21},{"name":"tests/fixtures/windows-10/dir-dirs.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-dirs.out","lines_changed":19},{"name":"tests/fixtures/windows-10/dir-files.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-files.out","lines_changed":16},{"name":"tests/fixtures/windows-10/dir-mix.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-mix.out","lines_changed":22},{"name":"tests/fixtures/windows-10/dir-raw.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir.json","lines_changed":2},{"name":"tests/test_dir.py","lines_changed":50}]},"message":"Add parent dir to structure. Add test cases. Remove support for /Q","epoch":1617394385,"epoch_utc":null},{"commit":"79bc525970b38dea68b4859ac5dd32fc681e5994","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:42:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 20:42:36 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":1},{"name":"jc/parsers/dpkg_l.py","lines_changed":1}]},"message":"add codes field to schema","epoch":1617334956,"epoch_utc":null},{"commit":"9dae1091ddc6141694ebfdc5ae649582cb879ccd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:41:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 20:41:05 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":6},{"name":"jc/parsers/dpkg_l.py","lines_changed":4}]},"message":"typo fix","epoch":1617334865,"epoch_utc":null},{"commit":"74d3ac686a69518c1048260e37a0245ff254ff57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:37:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 20:37:12 2021 -0700","stats":{"files_changed":4,"insertions":61,"deletions":0,"files":["tests/fixtures/ubuntu-18.04/dpkg-l-codes.json","tests/fixtures/ubuntu-18.04/dpkg-l-columns500.json","tests/fixtures/ubuntu-18.04/dpkg-l.json","tests/test_dpkg_l.py"],"file_stats":[{"name":"tests/fixtures/ubuntu-18.04/dpkg-l-codes.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l-columns500.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l.json","lines_changed":1},{"name":"tests/test_dpkg_l.py","lines_changed":58}]},"message":"add dpkg-l tests","epoch":1617334632,"epoch_utc":null},{"commit":"cf3cc636badcf4ae6db1e5ee5e57ca0331ee5b0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:25:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 20:25:56 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add dpkg-l parser info","epoch":1617333956,"epoch_utc":null},{"commit":"a720441e1d34771c5a54876cb7dd63fb8c9f408e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:24:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 20:24:19 2021 -0700","stats":{"files_changed":1,"insertions":54,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":54}]},"message":"add dpkg -l example","epoch":1617333859,"epoch_utc":null},{"commit":"0a7ed0959df07e2f36d9ec3ca8c294cfdaf10396","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:17:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 20:17:21 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"jc/parsers/dpkg_l.py","lines_changed":6}]},"message":"rename err to error","epoch":1617333441,"epoch_utc":null},{"commit":"eb83c9b86dc6d1ff15efed30993071834b65a7d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:13:40 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 20:13:40 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":21,"files":["docs/utils.md"],"file_stats":[{"name":"docs/utils.md","lines_changed":29}]},"message":"replace parse_datetime_to_timestamp with timestamp class","epoch":1617333220,"epoch_utc":null},{"commit":"5c0142dd19eee14f4f1c287f0543e29824f9ae70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:12:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 20:12:58 2021 -0700","stats":{"files_changed":9,"insertions":1797,"deletions":2,"files":["CHANGELOG","docgen.sh","docs/parsers/dpkg_l.md","jc/cli.py","jc/parsers/dpkg_l.py","jc/parsers/universal.py","tests/fixtures/ubuntu-18.04/dpkg-l-codes.out","tests/fixtures/ubuntu-18.04/dpkg-l-columns500.out","tests/fixtures/ubuntu-18.04/dpkg-l.out"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/dpkg_l.md","lines_changed":170},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/dpkg_l.py","lines_changed":247},{"name":"jc/parsers/universal.py","lines_changed":4},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l-codes.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l-columns500.out","lines_changed":677},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l.out","lines_changed":677}]},"message":"add dpkg-l parser","epoch":1617333178,"epoch_utc":null},{"commit":"c326c8dc8356b55bba13864156adf30607205ece","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 12:52:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 12:52:10 2021 -0700","stats":{"files_changed":18,"insertions":194,"deletions":1,"files":["jc/parsers/time.py","tests/fixtures/osx-10.14.6/time-l.json","tests/fixtures/osx-10.14.6/time-l.out","tests/fixtures/osx-10.14.6/time-lp.json","tests/fixtures/osx-10.14.6/time-lp.out","tests/fixtures/osx-10.14.6/time-p.json","tests/fixtures/osx-10.14.6/time-p.out","tests/fixtures/osx-10.14.6/time.json","tests/fixtures/osx-10.14.6/time.out","tests/fixtures/ubuntu-18.04/time-p.json","tests/fixtures/ubuntu-18.04/time-p.out","tests/fixtures/ubuntu-18.04/time-verbose.json","tests/fixtures/ubuntu-18.04/time-verbose.out","tests/fixtures/ubuntu-18.04/time.json","tests/fixtures/ubuntu-18.04/time.out","tests/fixtures/ubuntu-18.04/time2.json","tests/fixtures/ubuntu-18.04/time2.out","tests/test_time.py"],"file_stats":[{"name":"jc/parsers/time.py","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/time-l.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/time-l.out","lines_changed":15},{"name":"tests/fixtures/osx-10.14.6/time-lp.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/time-lp.out","lines_changed":17},{"name":"tests/fixtures/osx-10.14.6/time-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/time-p.out","lines_changed":3},{"name":"tests/fixtures/osx-10.14.6/time.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/time.out","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time-p.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/time-verbose.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time-verbose.out","lines_changed":23},{"name":"tests/fixtures/ubuntu-18.04/time.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/time2.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time2.out","lines_changed":2},{"name":"tests/test_time.py","lines_changed":118}]},"message":"add TypeError to except block. add /usr/bin/time tests","epoch":1617306730,"epoch_utc":null},{"commit":"fc4082a03feb5645a1ad687908782a2584a58956","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:26:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 11:26:02 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":131,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":131}]},"message":"remove old parse_datetime_to_timestamp function","epoch":1617301562,"epoch_utc":null},{"commit":"c8655565ff8718f0f14d41696b81e6539529dde1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:23:24 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 11:23:24 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"use new timestamp class","epoch":1617301404,"epoch_utc":null},{"commit":"638f879f16c9e87edb60953f4fd0b1c7ad92f277","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:21:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 11:21:27 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":5}]},"message":"use new timestamp class","epoch":1617301287,"epoch_utc":null},{"commit":"1d221bf7e6128d57bd769c0fe8f37f7a94da8cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:19:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 11:19:49 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/who.py","lines_changed":3}]},"message":"use new timestamp class","epoch":1617301189,"epoch_utc":null},{"commit":"60ea71f0ef931dccf09e6eb0cb737ddad0b47f0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:18:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 11:18:03 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/timedatectl.py"],"file_stats":[{"name":"jc/parsers/timedatectl.py","lines_changed":3}]},"message":"use new timestamp class","epoch":1617301083,"epoch_utc":null},{"commit":"d8bdd35a3f462efcdc871426309299e8aefb0a79","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:17:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 11:17:53 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":5}]},"message":"use new timestamp class","epoch":1617301073,"epoch_utc":null},{"commit":"7463891c53f3670710dfa72ed1422431c274fe4a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:13:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 11:13:02 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":6}]},"message":"use new timestamp class","epoch":1617300782,"epoch_utc":null},{"commit":"7537aec76fa07384c4439f34c50d4e3f001c0dfa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:08:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 11:08:27 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":8,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":16}]},"message":"use jc.utils.timestamp instead of jc.utils.parse_datetime_to_timestamp()","epoch":1617300507,"epoch_utc":null},{"commit":"62234e39a8533362a20f106c64326ed69f430006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:08:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 11:08:20 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":8,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":13}]},"message":"use jc.utils.timestamp instead of jc.utils.parse_datetime_to_timestamp()","epoch":1617300500,"epoch_utc":null},{"commit":"be004b7b3fe9217160c6418907e7d8aad10e5fae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:07:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 11:07:37 2021 -0700","stats":{"files_changed":2,"insertions":172,"deletions":15,"files":["jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":155},{"name":"tests/test_utils.py","lines_changed":32}]},"message":"make parse_datetime_to_timestamp function a class called timestamp for easier use","epoch":1617300457,"epoch_utc":null},{"commit":"82539444b24169b2eb762485ed032fc968a81f71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 31 20:48:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 31 20:48:44 2021 -0700","stats":{"files_changed":2,"insertions":23,"deletions":21,"files":["docs/parsers/time.md","jc/parsers/time.py"],"file_stats":[{"name":"docs/parsers/time.md","lines_changed":1},{"name":"jc/parsers/time.py","lines_changed":43}]},"message":"fix indentation for int and float conversions. add real_time field to schema","epoch":1617248924,"epoch_utc":null},{"commit":"a571d3cbafd5048d1d59070e1791398ae410197f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 31 20:41:04 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 31 20:41:04 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/time.md","jc/parsers/time.py"],"file_stats":[{"name":"docs/parsers/time.md","lines_changed":2},{"name":"jc/parsers/time.py","lines_changed":2}]},"message":"fix typo","epoch":1617248464,"epoch_utc":null},{"commit":"a038c14c23ea27264df61a38e0301de8d1fa1b9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 31 20:39:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 31 20:39:03 2021 -0700","stats":{"files_changed":3,"insertions":8,"deletions":8,"files":["EXAMPLES.md","docs/parsers/time.md","jc/parsers/time.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":4},{"name":"jc/parsers/time.py","lines_changed":10}]},"message":"change microseconds to centiseconds","epoch":1617248343,"epoch_utc":null},{"commit":"25a85d874cd2b57a7700b0c2dca61132127732b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 31 20:21:29 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 31 20:21:29 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"update docs","epoch":1617247289,"epoch_utc":null},{"commit":"884c36ff42df4f580c8e2b4705def8e4c1182e39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 31 20:19:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 31 20:19:46 2021 -0700","stats":{"files_changed":8,"insertions":536,"deletions":1,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","docs/parsers/iw_scan.md","docs/parsers/time.md","jc/cli.py","jc/parsers/time.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":36},{"name":"README.md","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":163},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/time.py","lines_changed":332}]},"message":"add /usr/bin/time parser","epoch":1617247186,"epoch_utc":null},{"commit":"b98e72b8b4eda0ab5ede7725226e61634af572eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 21:33:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 30 21:33:23 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add ls parser info","epoch":1617165203,"epoch_utc":null},{"commit":"05885c0096b5ee142ecff2d17e37c446518998a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 21:29:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 30 21:29:34 2021 -0700","stats":{"files_changed":5,"insertions":931,"deletions":18,"files":["docs/parsers/ls.md","jc/parsers/ls.py","tests/fixtures/ubuntu-18.04/ls-l-iso.json","tests/fixtures/ubuntu-18.04/ls-l-iso.out","tests/test_ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":22},{"name":"jc/parsers/ls.py","lines_changed":31},{"name":"tests/fixtures/ubuntu-18.04/ls-l-iso.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-l-iso.out","lines_changed":883},{"name":"tests/test_ls.py","lines_changed":12}]},"message":"add epoch and epoch_utc timestamps","epoch":1617164974,"epoch_utc":null},{"commit":"4c9761231af897658c3a2c0abcc476aa8b43d1b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 20:41:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 30 20:41:10 2021 -0700","stats":{"files_changed":21,"insertions":118,"deletions":81,"files":["CHANGELOG","EXAMPLES.md","README.md","docs/parsers/dig.md","jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":46},{"name":"README.md","lines_changed":14},{"name":"docs/parsers/dig.md","lines_changed":50},{"name":"jc/parsers/dig.py","lines_changed":56},{"name":"tests/fixtures/centos-7.7/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig-x.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig.json","lines_changed":2},{"name":"tests/fixtures/generic/dig-answer-spaces.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-x.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig.json","lines_changed":2}]},"message":"add when_epoch and when_epoch_utc fields","epoch":1617162070,"epoch_utc":null},{"commit":"656eaa150861948091ef9d6323805c2698039bc6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 16:43:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 30 16:43:53 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1617147833,"epoch_utc":null},{"commit":"1560dcddcf82f55fffce22d1b46d372b25a9d0fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 16:43:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 30 16:43:02 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"add acpi, upower parsers and -v version option","epoch":1617147782,"epoch_utc":null},{"commit":"08d4cd4870c7acaf3a453d1400b64d77d462437b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 16:34:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 30 16:34:01 2021 -0700","stats":{"files_changed":7,"insertions":114,"deletions":43,"files":["EXAMPLES.md","docs/parsers/acpi.md","jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.json","tests/fixtures/generic/acpi-V2.json","tests/fixtures/generic/acpi-V3.json","tests/fixtures/generic/acpi-V4.json"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":34},{"name":"docs/parsers/acpi.md","lines_changed":50},{"name":"jc/parsers/acpi.py","lines_changed":65},{"name":"tests/fixtures/generic/acpi-V.json","lines_changed":2},{"name":"tests/fixtures/generic/acpi-V2.json","lines_changed":2},{"name":"tests/fixtures/generic/acpi-V3.json","lines_changed":2},{"name":"tests/fixtures/generic/acpi-V4.json","lines_changed":2}]},"message":"add time calculations to acpi parser","epoch":1617147241,"epoch_utc":null},{"commit":"9767a50cededb140575e195abf79ce49c4f53789","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 11:59:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 30 11:59:44 2021 -0700","stats":{"files_changed":12,"insertions":48,"deletions":46,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/who.md","jc/parsers/who.py","jc/utils.py","tests/fixtures/centos-7.7/who-a.json","tests/fixtures/centos-7.7/who.json","tests/fixtures/osx-10.14.6/who-a.json","tests/fixtures/osx-10.14.6/who.json","tests/fixtures/ubuntu-18.04/who-a.json","tests/fixtures/ubuntu-18.04/who.json","tests/test_utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":37},{"name":"docs/parsers/who.md","lines_changed":18},{"name":"jc/parsers/who.py","lines_changed":23},{"name":"jc/utils.py","lines_changed":1},{"name":"tests/fixtures/centos-7.7/who-a.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/who.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/who-a.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/who.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/who-a.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/who.json","lines_changed":2},{"name":"tests/test_utils.py","lines_changed":2}]},"message":"update who parser to add epoch naive timestamp","epoch":1617130784,"epoch_utc":null},{"commit":"cd86890ed1493644e391e52e33561e9a77631a51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 08:05:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 30 08:05:26 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"add website to info and use variables for version info","epoch":1617116726,"epoch_utc":null},{"commit":"ba0dd3b9ca98a042c772898302fcfe5fdc84f79a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 21:25:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 21:25:19 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":4}]},"message":"add parse_timedate_to_timestamp test for format 7300","epoch":1617078319,"epoch_utc":null},{"commit":"8d7fa07ffd50f38336a448eb506a76d9d4849a6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 21:20:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 21:20:19 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":11,"files":["tests/fixtures/centos-7.7/timedatectl.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/timedatectl.json","lines_changed":12}]},"message":"unformat json","epoch":1617078019,"epoch_utc":null},{"commit":"cade1bfe6e56b5926898b7204e911885efebd5a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 21:19:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 21:19:12 2021 -0700","stats":{"files_changed":2,"insertions":12,"deletions":2,"files":["tests/fixtures/centos-7.7/timedatectl.json","tests/fixtures/ubuntu-18.04/timedatectl.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/timedatectl.json","lines_changed":12},{"name":"tests/fixtures/ubuntu-18.04/timedatectl.json","lines_changed":2}]},"message":"update timedatectl tests for new epoch_utc field","epoch":1617077952,"epoch_utc":null},{"commit":"daec4ab0a7f572e872b27b043d51f68e5e06300f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 21:16:40 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 21:16:40 2021 -0700","stats":{"files_changed":5,"insertions":20,"deletions":4,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/timedatectl.md","jc/parsers/timedatectl.py","jc/utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"EXAMPLES.md","lines_changed":3},{"name":"docs/parsers/timedatectl.md","lines_changed":6},{"name":"jc/parsers/timedatectl.py","lines_changed":11},{"name":"jc/utils.py","lines_changed":1}]},"message":"add epoch_utc field to timedatectl parser","epoch":1617077800,"epoch_utc":null},{"commit":"3c96bc319615c824a06c388e9e3c1d68a9bf4084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:57:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 20:57:58 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":2}]},"message":"version bump","epoch":1617076678,"epoch_utc":null},{"commit":"7f7d8d4bd6f37015b11bac60a7bd99e8d3eca108","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:36:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 20:36:10 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":0,"files":["docs/parsers/stat.md","jc/parsers/stat.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":4}]},"message":"update stat docs","epoch":1617075370,"epoch_utc":null},{"commit":"47263661a41987f334fd484e866e0aa8859cde5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:30:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 20:30:20 2021 -0700","stats":{"files_changed":1,"insertions":18,"deletions":2,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":20}]},"message":"update stat example","epoch":1617075020,"epoch_utc":null},{"commit":"4c42a086d206919dfe4f1c0801fe4fb1027cb1cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:25:54 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 20:25:54 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":6,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":7}]},"message":"clean up debug code","epoch":1617074754,"epoch_utc":null},{"commit":"5d2541a5c4bc93f3943a491c76df7f8d4e2cf44b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:22:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 20:22:35 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":5}]},"message":"remove auto c locale and use a manual format rule for windows and linux compatibility","epoch":1617074555,"epoch_utc":null},{"commit":"d91d170b49bfc88c0b2fb54475705c038172f1c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:16:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 20:16:05 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"try manual c locale format for windows","epoch":1617074165,"epoch_utc":null},{"commit":"6d1f4584a9ccd0f0f7ed4fdf408576a9e7f5046b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:05:42 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 20:05:42 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":4}]},"message":"try manually setting time format for windows compatibility","epoch":1617073542,"epoch_utc":null},{"commit":"1d76d96bcf4185cffb7066bec637913099399db5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 16:58:57 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 16:58:57 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":4}]},"message":"debug windows issue","epoch":1617062337,"epoch_utc":null},{"commit":"e8847c998c91131acf5ee0f6485e9976c0fce3ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 16:35:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 16:35:26 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["tests/fixtures/centos-7.7/stat.json","tests/fixtures/freebsd12/stat.json","tests/fixtures/osx-10.14.6/stat.json","tests/fixtures/ubuntu-18.04/stat.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/stat.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/stat.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/stat.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/stat.json","lines_changed":2}]},"message":"update stat tests","epoch":1617060926,"epoch_utc":null},{"commit":"da88e49bae2f3fecff623f52c20bf994b653583e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 15:36:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 15:36:16 2021 -0700","stats":{"files_changed":2,"insertions":69,"deletions":29,"files":["docs/parsers/stat.md","jc/parsers/stat.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":76},{"name":"jc/parsers/stat.py","lines_changed":22}]},"message":"add new examples","epoch":1617057376,"epoch_utc":null},{"commit":"65c3a12e5422782df40489c3c431677f5657dbf5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 15:32:04 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 15:32:04 2021 -0700","stats":{"files_changed":2,"insertions":35,"deletions":24,"files":["jc/parsers/stat.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":58},{"name":"jc/utils.py","lines_changed":1}]},"message":"simplify None data scenario","epoch":1617057124,"epoch_utc":null},{"commit":"d8d600cc36bde4e6216b935f87a765599e896714","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 14:51:48 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 14:51:48 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add reference to -h for help","epoch":1617054708,"epoch_utc":null},{"commit":"507999b117b024fed1ccf067bd5dc411dbeb268c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 14:45:13 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 14:45:13 2021 -0700","stats":{"files_changed":3,"insertions":34,"deletions":19,"files":["docs/utils.md","jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":32},{"name":"jc/utils.py","lines_changed":13},{"name":"tests/test_utils.py","lines_changed":8}]},"message":"add stat command timestamp detection","epoch":1617054313,"epoch_utc":null},{"commit":"8ad164eb340e135eeeb10b721172916182f37e30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 12:33:54 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 12:33:54 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":6}]},"message":"fix tests for compact output","epoch":1617046434,"epoch_utc":null},{"commit":"a507df140b245b83b1c46e8462b44e1145c42f2a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 12:25:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 12:25:58 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add compact json info","epoch":1617045958,"epoch_utc":null},{"commit":"8912a99986a977ee6ca7bbe2368f5033644577b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 12:25:48 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 12:25:48 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"make default json output more compact","epoch":1617045948,"epoch_utc":null},{"commit":"1953f9882890cd0e8c515d43ce28c96f918b0ab4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 11:44:43 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 11:44:43 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"add version info. add json now supports unicode output","epoch":1617043483,"epoch_utc":null},{"commit":"7515218ddd2cdcfcebd67850140e842f2f121226","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 11:42:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 11:42:01 2021 -0700","stats":{"files_changed":2,"insertions":10,"deletions":14,"files":["jc/cli.py","jc/utils.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8},{"name":"jc/utils.py","lines_changed":16}]},"message":"use jc.utils for all warning and error messages. simply error and warning formatting.","epoch":1617043321,"epoch_utc":null},{"commit":"36c11201366cefedee4244fb71a4a9cc6507e6ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 10:59:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 10:59:56 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"formatting","epoch":1617040796,"epoch_utc":null},{"commit":"8fa0fe64d8418093c7f28cdc70a7f409956aeb04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 10:52:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 10:52:02 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":10}]},"message":"add -v to helptext. minor formatting","epoch":1617040322,"epoch_utc":null},{"commit":"c1a8201b140c65579ff9f8427322b67653bf3006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 10:24:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 10:24:58 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":4}]},"message":"add copyright","epoch":1617038698,"epoch_utc":null},{"commit":"398bbac48c8a716b1872843d671aa6ceaeba6a78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 10:23:52 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 10:23:52 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"simplify return value for parse_datetime_to_timestamp()","epoch":1617038632,"epoch_utc":null},{"commit":"ea71a42bbdd9b09a457727cfe763054625f7901a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 09:43:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 09:43:19 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"formatting","epoch":1617036199,"epoch_utc":null},{"commit":"1c16d25b17a7282a62a5ebd9755df5569c57435f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 09:41:15 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 09:41:15 2021 -0700","stats":{"files_changed":2,"insertions":30,"deletions":9,"files":["README.md","jc/cli.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"jc/cli.py","lines_changed":35}]},"message":"add version option (-v) and copyright information. add 'ensure_ascii=False' to json dumps to properly show UTF-8 copyright character","epoch":1617036075,"epoch_utc":null},{"commit":"9d12ded889f656656267cbf7a91d71267201f736","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 16:32:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 16:32:17 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"help description change","epoch":1616801537,"epoch_utc":null},{"commit":"5312701515ecb3a10598bb9dcf2f73b7eae71b93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 16:29:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 16:29:10 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add - make all external python requirements optional","epoch":1616801350,"epoch_utc":null},{"commit":"808c7bc0a94ecfd160ee2b257e5feec347829a5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 16:14:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 16:14:35 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/xml.py"],"file_stats":[{"name":"jc/parsers/xml.py","lines_changed":10}]},"message":"make xmltodict library optional","epoch":1616800475,"epoch_utc":null},{"commit":"4d394015f458f284d052ce2c1a0c8492916c5b3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 16:10:28 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 16:10:28 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":10}]},"message":"make ruamel.yaml library optional","epoch":1616800228,"epoch_utc":null},{"commit":"3638298af8ebc01d54aa3ab5668d0adedca957e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 15:54:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 15:54:45 2021 -0700","stats":{"files_changed":1,"insertions":53,"deletions":44,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":97}]},"message":"make pygments library optional","epoch":1616799285,"epoch_utc":null},{"commit":"5f00973e400629bd68c0ab60ed9005410278f855","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 15:38:57 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 15:38:57 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":2}]},"message":"remove parenthesis to normalize text for naive timezone detection","epoch":1616798337,"epoch_utc":null},{"commit":"0f6e2c14fcb69f664c29083ec5207326f842dfdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 14:57:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 14:57:19 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":9}]},"message":"simplify timestamp failure logic","epoch":1616795839,"epoch_utc":null},{"commit":"51813da61994226ba40478825d47f80c23413349","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 14:56:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 14:56:45 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":4,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":13}]},"message":"add offset timezones. fix timestamp logic on conversion failure","epoch":1616795805,"epoch_utc":null},{"commit":"e7751322ea195cac7f1921ba8e0364c442065d20","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 14:55:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 14:55:47 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":10}]},"message":"formatting","epoch":1616795747,"epoch_utc":null},{"commit":"26ef29843784ade3d55410be13300dd6f4c06890","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 14:55:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 14:55:16 2021 -0700","stats":{"files_changed":1,"insertions":10,"deletions":6,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":16}]},"message":"change return to always include the entire object but all keys may be None if conversion fails","epoch":1616795716,"epoch_utc":null},{"commit":"badaf8ce73d7deb0ec2be244e27b4bf8cddbea19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 14:00:33 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 14:00:33 2021 -0700","stats":{"files_changed":1,"insertions":14,"deletions":14,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":28}]},"message":"comment formatting","epoch":1616792433,"epoch_utc":null},{"commit":"b123a622039f3cc32643a3bfc0766154d660f8bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 13:11:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 13:11:34 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":9}]},"message":"move locale change formats to the end of the list","epoch":1616789494,"epoch_utc":null},{"commit":"cfd77e42522aa2ebeada9f45ac99bd1d3414f782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 13:01:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 13:01:12 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":1}]},"message":"reset locale to None on exception","epoch":1616788872,"epoch_utc":null},{"commit":"38f814072eac5370059f1b4203316eee41cf535b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 11:55:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 11:55:12 2021 -0700","stats":{"files_changed":1,"insertions":26,"deletions":8,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":34}]},"message":"better normalization of datetime string. better UTC detection. More formats supported with detected locale.","epoch":1616784912,"epoch_utc":null},{"commit":"a0db7754e384a0c95f2099bf894f3a22bd33c002","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 09:32:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 09:32:49 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add nixos install info","epoch":1616776369,"epoch_utc":null},{"commit":"f07620afc7dc0d0d605eb483ef36c5979b33cdfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 09:28:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 09:28:03 2021 -0700","stats":{"files_changed":3,"insertions":18,"deletions":7,"files":["README.md","jc/__init__.py","jc/cli.py"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"jc/__init__.py","lines_changed":3},{"name":"jc/cli.py","lines_changed":21}]},"message":"move version to jc.__init__.py\nadd -h option for help instead of always showing on error\nuse jc.utils.error_message for the following errors: missing/incorrect arguments, parser not found, missing piped data","epoch":1616776083,"epoch_utc":null},{"commit":"c1b0d27752726989c6051f683a1194941bee598c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 20:45:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 20:45:38 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":10,"files":["runtests.sh"],"file_stats":[{"name":"runtests.sh","lines_changed":10}]},"message":"remove old commented commands","epoch":1616730338,"epoch_utc":null},{"commit":"430a5108aa265d4df0e4584eade54759da864c61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 20:42:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 20:42:58 2021 -0700","stats":{"files_changed":3,"insertions":19,"deletions":60,"files":["runtests.sh","tests/test_last.py","tests/test_last2.py"],"file_stats":[{"name":"runtests.sh","lines_changed":16},{"name":"tests/test_last.py","lines_changed":23},{"name":"tests/test_last2.py","lines_changed":40}]},"message":"move all tests to github actions","epoch":1616730178,"epoch_utc":null},{"commit":"111ce92fc9c33b82c7d1a1664dda046ea5993f6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 20:37:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 20:37:35 2021 -0700","stats":{"files_changed":4,"insertions":0,"deletions":1,"files":["tests/{localtest_date.py => test_date.py}","tests/{localtest_last.py => test_last2.py}","tests/{localtest_upower.py => test_upower.py}","tests/test_utils.py"],"file_stats":[{"name":"tests/{localtest_date.py => test_date.py}","lines_changed":0},{"name":"tests/{localtest_last.py => test_last2.py}","lines_changed":0},{"name":"tests/{localtest_upower.py => test_upower.py}","lines_changed":0},{"name":"tests/test_utils.py","lines_changed":1}]},"message":"attempt all tests in github actions with timezone correction","epoch":1616729855,"epoch_utc":null},{"commit":"c851e8a58d98b2a4907cf1e7cf7c7d8d8dc04dc6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 20:33:25 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 20:33:25 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":1}]},"message":"force github action","epoch":1616729605,"epoch_utc":null},{"commit":"39f4bcd9b41450068903ea2843508586eccdf709","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 20:30:13 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Mar 25 20:30:13 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"Change Windows timezone\n\nuse \"Pacific Standard Time\"","epoch":1616729413,"epoch_utc":null},{"commit":"4a610c4c81493788b8351e8c74aabe819c981c02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:57:32 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 19:57:32 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":1}]},"message":"force github action","epoch":1616727452,"epoch_utc":null},{"commit":"89ee11945d4e2db107a33ef0d61e0c6015ac8ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:55:21 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Mar 25 19:55:21 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"Change timezone provider\n\nuses: szenius/set-timezone@v1.0","epoch":1616727321,"epoch_utc":null},{"commit":"dadb09b74a69d1852f8433e0e32ccdd67bd91181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:52:43 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 19:52:43 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":1}]},"message":"force github action","epoch":1616727163,"epoch_utc":null},{"commit":"1b1f638b97dc5e6f2767183eb363b79ae3c9b3c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:49:03 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Mar 25 19:49:03 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":8}]},"message":"Change timezone change provider\n\nchange to actions/set-timezone-action","epoch":1616726943,"epoch_utc":null},{"commit":"794fc4ed44d1565514303090403d68ba5d639cb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:43:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 19:43:16 2021 -0700","stats":{"files_changed":2,"insertions":36,"deletions":8,"files":["jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":16},{"name":"tests/test_utils.py","lines_changed":28}]},"message":"add parse_datetime_to_timestamp() tests","epoch":1616726596,"epoch_utc":null},{"commit":"72f735bf9211d7beddcf58819fe465722f5d7c5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:42:02 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Mar 25 19:42:02 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":4}]},"message":"Set Timezone to America/Los_Angeles\n\nUsing zcong1993/setup-timezone","epoch":1616726522,"epoch_utc":null},{"commit":"912877f25ad562ed4cafe7b2d7446bd48b477ea2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 15:34:54 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 15:34:54 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"additional timezone info","epoch":1616711694,"epoch_utc":null},{"commit":"2772c5ae436ea437d833003372d53a3d3f955ea0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 15:10:07 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 15:10:07 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"formatting","epoch":1616710207,"epoch_utc":null},{"commit":"a7ad24d2cb61d84cf2846f8fa43af31f0597043e","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","date":"Thu Mar 25 16:45:30 2021 -0400","commit_by":"Rasheed Elsaleh","commit_by_email":"rasheed@rebelliondefense.com","commit_by_date":"Thu Mar 25 18:09:47 2021 -0400","stats":{"files_changed":13,"insertions":772,"deletions":0,"files":["docgen.sh","docs/parsers/dir.md","jc/cli.py","jc/parsers/dir.py","tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-C.out","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-ODTC.out","tests/fixtures/windows-10/dir-Q.json","tests/fixtures/windows-10/dir-Q.out","tests/fixtures/windows-10/dir.json","tests/fixtures/windows-10/dir.out","tests/test_dir.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/dir.md","lines_changed":286},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/dir.py","lines_changed":332},{"name":"tests/fixtures/windows-10/dir-C.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-C.out","lines_changed":21},{"name":"tests/fixtures/windows-10/dir-ODTC.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-ODTC.out","lines_changed":21},{"name":"tests/fixtures/windows-10/dir-Q.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-Q.out","lines_changed":21},{"name":"tests/fixtures/windows-10/dir.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir.out","lines_changed":21},{"name":"tests/test_dir.py","lines_changed":64}]},"message":"Add dir parser\n\nAdd usage commands\n\nFix example options\n\nupdate dir.md","epoch":1616715930,"epoch_utc":null},{"commit":"a364a6a9faeb6aa290b790f3dec74e92b8670534","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 15:08:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 15:08:23 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"add note regarding calculated timestamps","epoch":1616710103,"epoch_utc":null},{"commit":"7b2dc86a8d974e7984fe2540f56a66c2b9386acd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 12:07:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 12:07:36 2021 -0700","stats":{"files_changed":1,"insertions":23,"deletions":19,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":42}]},"message":"update last example with new timestamp fields","epoch":1616699256,"epoch_utc":null},{"commit":"ad645636d07d0423253f19068a22b2a28251b05f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 11:43:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 11:43:30 2021 -0700","stats":{"files_changed":5,"insertions":86,"deletions":50,"files":["CHANGELOG","EXAMPLES.md","README.md","docs/parsers/uptime.md","jc/parsers/uptime.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":9},{"name":"EXAMPLES.md","lines_changed":19},{"name":"README.md","lines_changed":19},{"name":"docs/parsers/uptime.md","lines_changed":50},{"name":"jc/parsers/uptime.py","lines_changed":39}]},"message":"update uptime docs","epoch":1616697810,"epoch_utc":null},{"commit":"2f2f297b29fbe3172647a81db084b3564a441d40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 11:35:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 11:35:21 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["tests/fixtures/centos-7.7/uptime.json","tests/fixtures/osx-10.11.6/uptime.json","tests/fixtures/osx-10.14.6/uptime.json","tests/fixtures/ubuntu-18.04/uptime.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/uptime.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/uptime.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/uptime.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/uptime.json","lines_changed":2}]},"message":"update uptime fixtures with new fields","epoch":1616697321,"epoch_utc":null},{"commit":"099ae3fde03f8157298f6b412bdddb8bd56da09a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 11:17:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 11:17:44 2021 -0700","stats":{"files_changed":1,"insertions":26,"deletions":22,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":48}]},"message":"fix issue when there is no data","epoch":1616696264,"epoch_utc":null},{"commit":"e9febe98ac5ec0e03791c5b6794446a2c3312fb1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 11:17:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 11:17:01 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["runtests.sh"],"file_stats":[{"name":"runtests.sh","lines_changed":2}]},"message":"add localtest partition lines for readability","epoch":1616696221,"epoch_utc":null},{"commit":"5fbd07cccf9fb697b996dcc3949eef5b1c09e655","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 10:31:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 10:31:12 2021 -0700","stats":{"files_changed":1,"insertions":59,"deletions":26,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":85}]},"message":"rewrite of uptime parser including new fields","epoch":1616693472,"epoch_utc":null},{"commit":"5fed4698c2c1f1b7e05c5b4c51639f818e049b53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:57:04 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 21:57:04 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":6,"files":["docs/parsers/last.md","jc/parsers/last.py"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":4},{"name":"jc/parsers/last.py","lines_changed":7}]},"message":"update docs and version number","epoch":1616648224,"epoch_utc":null},{"commit":"ed7eb0983a4dfcc1d66a2957be3e10b2203d909e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:51:43 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 21:51:43 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":8}]},"message":"use parse_datetime_to_timestamp function instead of custom format string","epoch":1616647903,"epoch_utc":null},{"commit":"90c7e18e5fc5ea9fcf6157cc2656f47193d78411","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:50:32 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 21:50:32 2021 -0700","stats":{"files_changed":1,"insertions":16,"deletions":11,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":27}]},"message":"update date example","epoch":1616647832,"epoch_utc":null},{"commit":"953ab5c3bd0c8b6eef29b717edaf1aa2380c2b93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:29:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 21:29:30 2021 -0700","stats":{"files_changed":2,"insertions":1,"deletions":0,"files":["runtests.sh","tests/{test_upower.py => localtest_upower.py}"],"file_stats":[{"name":"runtests.sh","lines_changed":1},{"name":"tests/{test_upower.py => localtest_upower.py}","lines_changed":0}]},"message":"make upower tests local only","epoch":1616646570,"epoch_utc":null},{"commit":"699c97d8a07f7575454746159ac4d19981cd1a5c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:24:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 21:24:47 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add last parser info","epoch":1616646287,"epoch_utc":null},{"commit":"e4ca0de92a689ce93b91d86106a5da590226855a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:24:25 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 21:24:25 2021 -0700","stats":{"files_changed":8,"insertions":100,"deletions":0,"files":["tests/fixtures/generic/upower-i-c-locale.json","tests/fixtures/generic/upower-i-non-utc.json","tests/fixtures/generic/upower-i-utc.json",".../{upower-i-utc.out2 => upower-i-utc.out}","tests/fixtures/ubuntu-18.04/upower-d-clocale.json","tests/fixtures/ubuntu-18.04/upower-d.json","tests/fixtures/ubuntu-18.04/upower-i.json","tests/test_upower.py"],"file_stats":[{"name":"tests/fixtures/generic/upower-i-c-locale.json","lines_changed":1},{"name":"tests/fixtures/generic/upower-i-non-utc.json","lines_changed":1},{"name":"tests/fixtures/generic/upower-i-utc.json","lines_changed":1},{"name":".../{upower-i-utc.out2 => upower-i-utc.out}","lines_changed":0},{"name":"tests/fixtures/ubuntu-18.04/upower-d-clocale.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/upower-d.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/upower-i.json","lines_changed":1},{"name":"tests/test_upower.py","lines_changed":94}]},"message":"add upower tests","epoch":1616646265,"epoch_utc":null},{"commit":"04745a36b84cc79e56bde2a0e92a4ee9ab4a1538","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 20:21:06 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 20:21:06 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":5,"files":["CHANGELOG","jc/utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":12},{"name":"jc/utils.py","lines_changed":1}]},"message":"doc update","epoch":1616642466,"epoch_utc":null},{"commit":"5936940532b8b753e67c9f5cd9287f34cc84ae9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 20:20:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 20:20:53 2021 -0700","stats":{"files_changed":7,"insertions":136,"deletions":186,"files":["docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date-after-midnight.json","tests/fixtures/generic/date-before-midnight.json","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/fixtures/ubuntu-20.04/date2.json"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":74},{"name":"jc/parsers/date.py","lines_changed":238},{"name":"tests/fixtures/generic/date-after-midnight.json","lines_changed":2},{"name":"tests/fixtures/generic/date-before-midnight.json","lines_changed":2},{"name":"tests/fixtures/generic/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date2.json","lines_changed":2}]},"message":"rewrite of date parser using datetime library","epoch":1616642453,"epoch_utc":null},{"commit":"b3eb064b6753d6e894884e1c16054630c2396fe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 17:13:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 17:13:01 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":4}]},"message":"clarify format definition comments","epoch":1616631181,"epoch_utc":null},{"commit":"e4b41057e302074ac2a81ad8c36b6f95cd6b7db2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 17:02:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 17:02:17 2021 -0700","stats":{"files_changed":3,"insertions":24,"deletions":0,"files":[".../{upower-i.out => upower-i-c-locale.out}","tests/fixtures/generic/upower-i-non-utc.out",".../generic/{upower-i2.out => upower-i-utc.out2}"],"file_stats":[{"name":".../{upower-i.out => upower-i-c-locale.out}","lines_changed":0},{"name":"tests/fixtures/generic/upower-i-non-utc.out","lines_changed":24},{"name":".../generic/{upower-i2.out => upower-i-utc.out2}","lines_changed":0}]},"message":"update upower fixture names","epoch":1616630537,"epoch_utc":null},{"commit":"1d41c46cc762ab0c78b819e56db7df39f1111d5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 17:01:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 17:01:56 2021 -0700","stats":{"files_changed":1,"insertions":34,"deletions":5,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":39}]},"message":"normalize datetime string to remove all timezones except UTC","epoch":1616630516,"epoch_utc":null},{"commit":"a5c444587b3f0874fcc2833dc4e759c2dc1c7834","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 15:13:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 15:13:10 2021 -0700","stats":{"files_changed":5,"insertions":28,"deletions":0,"files":["tests/fixtures/generic/date-after-midnight.json","tests/fixtures/generic/date-after-midnight.out","tests/fixtures/generic/date-before-midnight.json","tests/fixtures/generic/date-before-midnight.out","tests/localtest_date.py"],"file_stats":[{"name":"tests/fixtures/generic/date-after-midnight.json","lines_changed":1},{"name":"tests/fixtures/generic/date-after-midnight.out","lines_changed":1},{"name":"tests/fixtures/generic/date-before-midnight.json","lines_changed":1},{"name":"tests/fixtures/generic/date-before-midnight.out","lines_changed":1},{"name":"tests/localtest_date.py","lines_changed":24}]},"message":"add before and after midnight date tests","epoch":1616623990,"epoch_utc":null},{"commit":"a56f471be980be16e73d3a91e2b12aad26c6d38c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 15:05:22 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 15:05:22 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/fixtures/generic/upower-i2.out"],"file_stats":[{"name":"tests/fixtures/generic/upower-i2.out","lines_changed":2}]},"message":"update fixture to use UTC for better testing","epoch":1616623522,"epoch_utc":null},{"commit":"6a6b26ed8d97014c2a5c7d91a4cd9b23f49530fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 15:04:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 15:04:39 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":5}]},"message":"fix 12 to 24 hour conversion for midnight cases","epoch":1616623479,"epoch_utc":null},{"commit":"f62446c152d89f2d37b22ffe9d9de5b5c9fa7049","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 15:04:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 15:04:09 2021 -0700","stats":{"files_changed":1,"insertions":11,"deletions":10,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":21}]},"message":"rename variables. add another european time format","epoch":1616623449,"epoch_utc":null},{"commit":"56011f1f172344cab2a8e869e7a6df6e45c45874","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 14:14:22 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 14:14:22 2021 -0700","stats":{"files_changed":3,"insertions":73,"deletions":6,"files":["EXAMPLES.md","docs/parsers/upower.md","jc/parsers/upower.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":63},{"name":"docs/parsers/upower.md","lines_changed":8},{"name":"jc/parsers/upower.py","lines_changed":8}]},"message":"updated upower examples","epoch":1616620462,"epoch_utc":null},{"commit":"6d44091c80318fde6c09cd850e6dc5afde7fe799","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 14:01:06 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 14:01:06 2021 -0700","stats":{"files_changed":1,"insertions":13,"deletions":53,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":66}]},"message":"refactor parse_datetime_to_timestamp()","epoch":1616619666,"epoch_utc":null},{"commit":"440c458eb42925dffe2d7b026279468fa2fa1bb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 12:57:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 12:57:19 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"no need for ternary clause","epoch":1616615839,"epoch_utc":null},{"commit":"798250af6116441385339806c8f26bc9720ad302","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 12:49:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 12:49:53 2021 -0700","stats":{"files_changed":2,"insertions":18,"deletions":24,"files":["docs/parsers/upower.md","jc/parsers/upower.py"],"file_stats":[{"name":"docs/parsers/upower.md","lines_changed":7},{"name":"jc/parsers/upower.py","lines_changed":35}]},"message":"use jc.utils.parse_datetime_to_timestamp() function for timestamp creation","epoch":1616615393,"epoch_utc":null},{"commit":"c762de29c6491790908451aa20f6aa12fdfa9722","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 12:47:57 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 12:47:57 2021 -0700","stats":{"files_changed":2,"insertions":32,"deletions":2,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":30},{"name":"jc/utils.py","lines_changed":4}]},"message":"doc updates","epoch":1616615277,"epoch_utc":null},{"commit":"0701e65e97165efd40ab2ae5087897de3588ea32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 12:36:54 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 12:36:54 2021 -0700","stats":{"files_changed":1,"insertions":106,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":106}]},"message":"add parse_datetime_to_timestamp() function","epoch":1616614614,"epoch_utc":null},{"commit":"209d54e8b5be6476d896cee1a5274bd2b46219e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 07:39:11 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 07:39:11 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":5},{"name":"jc/parsers/date.py","lines_changed":5}]},"message":"add hour_24 to schema docs","epoch":1616596751,"epoch_utc":null},{"commit":"2b38462de7d2fa61dd5d2a184e853279f1a9c84b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 23 14:59:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 23 14:59:03 2021 -0700","stats":{"files_changed":3,"insertions":33,"deletions":27,"files":["EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":20},{"name":"docs/parsers/date.md","lines_changed":20},{"name":"jc/parsers/date.py","lines_changed":20}]},"message":"update examples","epoch":1616536743,"epoch_utc":null},{"commit":"1e8e5533162cb01053ee25e9dbc709a429e58070","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 23 14:47:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 23 14:47:44 2021 -0700","stats":{"files_changed":6,"insertions":31,"deletions":14,"files":["CHANGELOG","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/fixtures/ubuntu-20.04/date2.json","tests/localtest_date.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/date.py","lines_changed":21},{"name":"tests/fixtures/generic/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date2.json","lines_changed":1},{"name":"tests/localtest_date.py","lines_changed":16}]},"message":"add hour_24 field","epoch":1616536064,"epoch_utc":null},{"commit":"ab42e6bb15026d6c46e15197c62bc3e8ef95c80d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 23 14:10:42 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 23 14:10:42 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":1},{"name":"jc/parsers/date.py","lines_changed":1}]},"message":"formatting","epoch":1616533842,"epoch_utc":null},{"commit":"680288454090f3c48c7f0580cdcb919c0b5a883e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 23 14:04:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 23 14:04:36 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":4}]},"message":"ensure period is always uppercase in dict value. update period documentation","epoch":1616533476,"epoch_utc":null},{"commit":"7cb8577b9655f258f2910e7e7bcf3266d4cbece0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 23 13:55:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 23 13:55:23 2021 -0700","stats":{"files_changed":3,"insertions":70,"deletions":48,"files":["docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/ubuntu-20.04/date2.out"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":36},{"name":"jc/parsers/date.py","lines_changed":81},{"name":"tests/fixtures/ubuntu-20.04/date2.out","lines_changed":1}]},"message":"correct epoch_utc calculation. Fix for 12 hour vs. 24 hour representation","epoch":1616532923,"epoch_utc":null},{"commit":"55810ccd1f17ef6a4b1cb72fc21f6cf990ef8bb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 22:10:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 22:10:35 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":1}]},"message":"set epoch_dt conversion again if not C locale","epoch":1616476235,"epoch_utc":null},{"commit":"f9921720cd0b9b0d76d66e6eb5bfe43481f5f52b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 22:01:07 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 22:01:07 2021 -0700","stats":{"files_changed":3,"insertions":4,"deletions":94,"files":["runtests.sh","tests/test_date.py","tests/test_last2.py"],"file_stats":[{"name":"runtests.sh","lines_changed":8},{"name":"tests/test_date.py","lines_changed":48},{"name":"tests/test_last2.py","lines_changed":42}]},"message":"revert to local testing for naive datetime objects","epoch":1616475667,"epoch_utc":null},{"commit":"cda1ebd271aa8fd1b716054a2149f876d8087230","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 21:53:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 21:53:50 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["tests/test_date.py","tests/test_last2.py"],"file_stats":[{"name":"tests/test_date.py","lines_changed":2},{"name":"tests/test_last2.py","lines_changed":2}]},"message":"try tzset()","epoch":1616475230,"epoch_utc":null},{"commit":"6901e4a23aad0b58cbbfac86c61917115d115dfe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 21:49:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 21:49:26 2021 -0700","stats":{"files_changed":3,"insertions":89,"deletions":3,"files":["runtests.sh","tests/test_date.py","tests/test_last2.py"],"file_stats":[{"name":"runtests.sh","lines_changed":6},{"name":"tests/test_date.py","lines_changed":46},{"name":"tests/test_last2.py","lines_changed":40}]},"message":"try setting timezone env variable before tests to ensure it is the same on all test systems","epoch":1616474966,"epoch_utc":null},{"commit":"6bc21d3c735edc7897e49afd2a5ea9e3aa56d7fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 21:05:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 21:05:39 2021 -0700","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["runtests.sh","tests/{test_date.py => localtest_date.py}","tests/localtest_last.py"],"file_stats":[{"name":"runtests.sh","lines_changed":1},{"name":"tests/{test_date.py => localtest_date.py}","lines_changed":0},{"name":"tests/localtest_last.py","lines_changed":1}]},"message":"fix date parser tests - local tests only since timezones may not match on github actions VMs","epoch":1616472339,"epoch_utc":null},{"commit":"1ef231e26a2898d2a01f341fb92014df92703f72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:57:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 20:57:36 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"add date parser updates","epoch":1616471856,"epoch_utc":null},{"commit":"3cd43f0f985a3b8a4e74bf5632bd8dac92d751c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:57:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 20:57:16 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/upower.md","jc/parsers/upower.py"],"file_stats":[{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":2}]},"message":"formatting","epoch":1616471836,"epoch_utc":null},{"commit":"156501996688e62dd61a8456206218582a6cbe1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:56:57 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 20:56:57 2021 -0700","stats":{"files_changed":5,"insertions":85,"deletions":63,"files":["EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":21},{"name":"docs/parsers/date.md","lines_changed":41},{"name":"jc/parsers/date.py","lines_changed":82},{"name":"tests/fixtures/generic/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date.json","lines_changed":2}]},"message":"fix weekday numbering to be ISO 8601 compliant. Add naive calculated epoch timestamp field","epoch":1616471817,"epoch_utc":null},{"commit":"0a4de2d3a1c235d1ac2d6e59346e77761fe51885","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:22:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 20:22:35 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":2,"files":["docs/parsers/last.md","docs/parsers/upower.md"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":5}]},"message":"add naive datetime calculation info to docs","epoch":1616469755,"epoch_utc":null},{"commit":"a058f6c174e31f5e6040883bb544b83abd88c749","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:21:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 20:21:46 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":2}]},"message":"added naive epoch calculation info to docs","epoch":1616469706,"epoch_utc":null},{"commit":"d8e5d03b01a87704424f5259cf6bd977274fd6ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:21:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 20:21:12 2021 -0700","stats":{"files_changed":1,"insertions":20,"deletions":33,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":53}]},"message":"naive updated_epoch timestamp calculation added","epoch":1616469672,"epoch_utc":null},{"commit":"9dc62eff2eaaafec89c5b8797d8ca8e4c77a07d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 21 15:43:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 21 15:43:37 2021 -0700","stats":{"files_changed":1,"insertions":34,"deletions":21,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":55}]},"message":"remove epoch conversions","epoch":1616366617,"epoch_utc":null},{"commit":"d4fea17c57a97d6914624b06208b9439bf2eb05f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 21 14:03:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 21 14:03:36 2021 -0700","stats":{"files_changed":3,"insertions":13,"deletions":6,"files":["docgen.sh","docs/parsers/upower.md","jc/parsers/upower.py"],"file_stats":[{"name":"docgen.sh","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":15}]},"message":"use UTC when calculating epoch timestamp. reset time locale to default after changing","epoch":1616360616,"epoch_utc":null},{"commit":"3dd7a5b77ea708047bc12be9f2caddd9078723f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 19 11:00:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 19 11:00:50 2021 -0700","stats":{"files_changed":2,"insertions":230,"deletions":0,"files":["docgen.sh","docs/parsers/upower.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/upower.md","lines_changed":229}]},"message":"add upower docs","epoch":1616176850,"epoch_utc":null},{"commit":"d77c90a3ba2036b216f4a612876ace988eafd217","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 19 10:43:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 19 10:43:20 2021 -0700","stats":{"files_changed":1,"insertions":114,"deletions":6,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":120}]},"message":"fix quoted values in detail level. Add examples","epoch":1616175800,"epoch_utc":null},{"commit":"01f0c20df09fd4aa12bd108928b97376b51ef31a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 18 16:59:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 18 16:59:46 2021 -0700","stats":{"files_changed":1,"insertions":27,"deletions":0,"files":["tests/fixtures/ubuntu-18.04/upower-d-clocale.out"],"file_stats":[{"name":"tests/fixtures/ubuntu-18.04/upower-d-clocale.out","lines_changed":27}]},"message":"add sample using C locale timestamp","epoch":1616111986,"epoch_utc":null},{"commit":"aafbe576b3b754de91591d9ec2dae9e9f827dee4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 18 16:59:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 18 16:59:19 2021 -0700","stats":{"files_changed":1,"insertions":137,"deletions":36,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":173}]},"message":"working parser and processor","epoch":1616111959,"epoch_utc":null},{"commit":"bd68ad40345fb1f69be0e0f87dc67134f826cd06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 14:31:51 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 17 14:31:51 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":4}]},"message":"don't modify detail_type value since it is no longer a key","epoch":1616016711,"epoch_utc":null},{"commit":"bfee017c138bb30ec6af836685013b7124028974","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 14:21:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 17 14:21:19 2021 -0700","stats":{"files_changed":1,"insertions":61,"deletions":20,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":81}]},"message":"made the schema more explicit by hardcoding more items. still working on the schema","epoch":1616016079,"epoch_utc":null},{"commit":"61f532cfd0b7fbf14a58a0fd638bcbfb03fbde72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 13:30:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 17 13:30:47 2021 -0700","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":12}]},"message":"working history list","epoch":1616013047,"epoch_utc":null},{"commit":"58dbbb75b607d0b29be185c3b8c3f0d8af21ecad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 13:10:52 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 17 13:10:52 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":21,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":30}]},"message":"simplified logic","epoch":1616011852,"epoch_utc":null},{"commit":"8d88b91fcf5060d7d54f687efec3e3a606bab767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 12:49:48 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 17 12:49:48 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":17}]},"message":"move if statements and generalize the history detail detection","epoch":1616010588,"epoch_utc":null},{"commit":"ad39fc60299089f56f37baac71820e50cbe87ed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 11:26:06 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 17 11:26:06 2021 -0700","stats":{"files_changed":6,"insertions":268,"deletions":0,"files":["jc/cli.py","jc/parsers/upower.py","tests/fixtures/generic/upower-i.out","tests/fixtures/generic/upower-i2.out","tests/fixtures/ubuntu-18.04/upower-d.out","tests/fixtures/ubuntu-18.04/upower-i.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/upower.py","lines_changed":173},{"name":"tests/fixtures/generic/upower-i.out","lines_changed":32},{"name":"tests/fixtures/generic/upower-i2.out","lines_changed":24},{"name":"tests/fixtures/ubuntu-18.04/upower-d.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-18.04/upower-i.out","lines_changed":11}]},"message":"working upower parser. history lines are ignored","epoch":1616005566,"epoch_utc":null},{"commit":"89f1fd96e6b7aa0acf6272e4f3469005d4f7c6bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 16 12:12:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 16 12:12:01 2021 -0700","stats":{"files_changed":6,"insertions":87,"deletions":0,"files":["tests/fixtures/generic/acpi-V.json","tests/fixtures/generic/acpi-V2.json","tests/fixtures/generic/acpi-V3.json","tests/fixtures/generic/acpi-V4.json","tests/fixtures/ubuntu-18.04/acpi-V.json","tests/test_acpi.py"],"file_stats":[{"name":"tests/fixtures/generic/acpi-V.json","lines_changed":1},{"name":"tests/fixtures/generic/acpi-V2.json","lines_changed":1},{"name":"tests/fixtures/generic/acpi-V3.json","lines_changed":1},{"name":"tests/fixtures/generic/acpi-V4.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/acpi-V.json","lines_changed":1},{"name":"tests/test_acpi.py","lines_changed":82}]},"message":"add acpi tests","epoch":1615921921,"epoch_utc":null},{"commit":"bd425f2493b68949c1fa02cd1d3289ec882d9b0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 16 11:45:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 16 11:45:56 2021 -0700","stats":{"files_changed":6,"insertions":321,"deletions":2,"files":["CHANGELOG","EXAMPLES.md","docgen.sh","docs/parsers/acpi.md","jc/cli.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":4},{"name":"EXAMPLES.md","lines_changed":58},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/acpi.md","lines_changed":256},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to v1.15.0. Add acpi docs","epoch":1615920356,"epoch_utc":null},{"commit":"46962ff02a0630766a927babc92e11ec91b1f789","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 12 16:45:15 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 12 16:45:15 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":11,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":12}]},"message":"remove redundant lines","epoch":1615596315,"epoch_utc":null},{"commit":"e4cb88b05166815e8ad03b646bd3f2b1da7f0d4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 12 12:47:59 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 12 12:47:59 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":1}]},"message":"remove unneeded line-state assignment","epoch":1615582079,"epoch_utc":null},{"commit":"32840703dc1d88412712b08db1c9bdaebbc34450","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 12 08:55:04 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 12 08:55:04 2021 -0800","stats":{"files_changed":1,"insertions":8,"deletions":39,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":47}]},"message":"remove redundant code","epoch":1615568104,"epoch_utc":null},{"commit":"1f7aafd0415a79e0547cc6f1c008c1918f8fb460","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 12 08:45:32 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 12 08:45:32 2021 -0800","stats":{"files_changed":3,"insertions":19,"deletions":9,"files":["jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out","tests/fixtures/generic/acpi-V4.out"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":15},{"name":"tests/fixtures/generic/acpi-V.out","lines_changed":1},{"name":"tests/fixtures/generic/acpi-V4.out","lines_changed":12}]},"message":"fix for full charge batter case. Clean up battery object logic","epoch":1615567532,"epoch_utc":null},{"commit":"7378d5dce43f75440cb57903e8ae0c1c615b0782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 11 21:06:24 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 11 21:06:24 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":1}]},"message":"remove comment","epoch":1615525584,"epoch_utc":null},{"commit":"84f76866cdf76f67b34de999fd987de8a02f0306","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 11 21:05:29 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 11 21:05:29 2021 -0800","stats":{"files_changed":1,"insertions":197,"deletions":3,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":200}]},"message":"working process function","epoch":1615525529,"epoch_utc":null},{"commit":"322da9ea6a1ceea1152d720797adb8f3a7dc1199","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 11 20:43:31 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 11 20:43:31 2021 -0800","stats":{"files_changed":2,"insertions":59,"deletions":12,"files":["jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":67},{"name":"tests/fixtures/generic/acpi-V.out","lines_changed":4}]},"message":"working parser","epoch":1615524211,"epoch_utc":null},{"commit":"58645301ec111bfeb2a618f5f169cc734042dc5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 11 19:55:47 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 11 19:55:47 2021 -0800","stats":{"files_changed":6,"insertions":236,"deletions":1,"files":["jc/cli.py","jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out","tests/fixtures/generic/acpi-V2.out","tests/fixtures/generic/acpi-V3.out","tests/fixtures/ubuntu-18.04/acpi-V.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/acpi.py","lines_changed":191},{"name":"tests/fixtures/generic/acpi-V.out","lines_changed":16},{"name":"tests/fixtures/generic/acpi-V2.out","lines_changed":12},{"name":"tests/fixtures/generic/acpi-V3.out","lines_changed":13},{"name":"tests/fixtures/ubuntu-18.04/acpi-V.out","lines_changed":2}]},"message":"add acpi command parser","epoch":1615521347,"epoch_utc":null},{"commit":"1e18dd30a824b0463f0cad86e0da7094c47d34f9","merge":"20f9b7f cc6a19a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 5 11:50:37 2021 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Mar 5 11:50:37 2021 -0800","message":"Merge pull request #102 from kellyjonbrazil/dev\n\nDev v1.14.4","epoch":1614973837,"epoch_utc":null},{"commit":"cc6a19adccea3e10243a166b87d852b6f95414b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 5 09:41:17 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 5 09:41:17 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"fix typo in comments","epoch":1614966077,"epoch_utc":null},{"commit":"2a5588b177a24d5b78a4b5a515aba515804b7baa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 5 09:38:22 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 5 09:38:22 2021 -0800","stats":{"files_changed":4,"insertions":13,"deletions":3,"files":["CHANGELOG","jc/cli.py","jc/parsers/yaml.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":5},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":7},{"name":"setup.py","lines_changed":2}]},"message":"packaging fix for yaml parser and pyoxidizer","epoch":1614965902,"epoch_utc":null},{"commit":"20f9b7f88b97ed68aba46e102b8c7b72443b9c85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 25 11:09:56 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 25 11:09:56 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"fix typo","epoch":1614280196,"epoch_utc":null},{"commit":"d7e32313cd9776b4a6af38cc2819d6e4ef8c0d55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 25 11:09:14 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 25 11:09:14 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"fix typo","epoch":1614280154,"epoch_utc":null},{"commit":"fb5654d3c4549e84940e2518f2d214debdd42d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 11 11:27:54 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 11 11:27:54 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1613071674,"epoch_utc":null},{"commit":"258f1433b36a7ee117ac43953edb4fe964603e7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 11 11:27:01 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 11 11:27:01 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add locale info to readme","epoch":1613071621,"epoch_utc":null},{"commit":"fb723ae8bd7bb51f9a4bab380ec1bc54cda0445b","merge":"87b506d 283b89e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 10 11:01:57 2021 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Feb 10 11:01:57 2021 -0800","message":"Merge pull request #101 from kellyjonbrazil/dev\n\nDev v1.14.3","epoch":1612983717,"epoch_utc":null},{"commit":"283b89e37c38a3082203e43e38569c8b0bb11e12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 10 10:55:53 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 10 10:55:53 2021 -0800","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["CHANGELOG","jc/parsers/dig.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/dig.py","lines_changed":6}]},"message":"simplify answer data logic","epoch":1612983353,"epoch_utc":null},{"commit":"f450f9eb8b7d382af316e88301e72af01a018be9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 10 10:47:56 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 10 10:47:56 2021 -0800","stats":{"files_changed":5,"insertions":74,"deletions":0,"files":["tests/fixtures/centos-7.7/hciconfig-a.json","tests/fixtures/centos-7.7/hciconfig.json","tests/fixtures/ubuntu-20.04/hciconfig-a.json","tests/fixtures/ubuntu-20.04/hciconfig.json","tests/test_hciconfig.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/hciconfig-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/hciconfig.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.04/hciconfig-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.04/hciconfig.json","lines_changed":1},{"name":"tests/test_hciconfig.py","lines_changed":70}]},"message":"add hciconfig tests","epoch":1612982876,"epoch_utc":null},{"commit":"b3f8cf99a4874335c6b43e105e0c1562c08256dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 10 08:03:36 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 10 08:03:36 2021 -0800","stats":{"files_changed":1,"insertions":15,"deletions":15,"files":["jc/parsers/hciconfig.py"],"file_stats":[{"name":"jc/parsers/hciconfig.py","lines_changed":30}]},"message":"work for both tabs and spaces","epoch":1612973016,"epoch_utc":null},{"commit":"4301ea8caea7c14f59bcddf09668d0198e1115a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 9 16:12:36 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 9 16:12:36 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/hciconfig.py"],"file_stats":[{"name":"jc/parsers/hciconfig.py","lines_changed":1}]},"message":"remove debug line","epoch":1612915956,"epoch_utc":null},{"commit":"c672d1c174a42ce44544dfaec0ebcf3c30fd7acf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 9 16:03:00 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 9 16:03:00 2021 -0800","stats":{"files_changed":7,"insertions":903,"deletions":22,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","docs/parsers/hciconfig.md","jc/parsers/hciconfig.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"EXAMPLES.md","lines_changed":126},{"name":"README.md","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/hciconfig.md","lines_changed":358},{"name":"jc/parsers/hciconfig.py","lines_changed":414},{"name":"man/jc.1","lines_changed":22}]},"message":"initial working hciconfig parser","epoch":1612915380,"epoch_utc":null},{"commit":"229e953a38471cdd41af0810577d324329840a4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 9 13:26:24 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 9 13:26:24 2021 -0800","stats":{"files_changed":7,"insertions":205,"deletions":2,"files":["jc/cli.py","jc/parsers/hciconfig.py","setup.py","tests/fixtures/centos-7.7/hciconfig-a.out","tests/fixtures/centos-7.7/hciconfig.out","tests/fixtures/ubuntu-20.04/hciconfig-a.out","tests/fixtures/ubuntu-20.04/hciconfig.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/hciconfig.py","lines_changed":142},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/hciconfig-a.out","lines_changed":10},{"name":"tests/fixtures/centos-7.7/hciconfig.out","lines_changed":6},{"name":"tests/fixtures/ubuntu-20.04/hciconfig-a.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-20.04/hciconfig.out","lines_changed":17}]},"message":"initial add of hciconfig parser","epoch":1612905984,"epoch_utc":null},{"commit":"87b506dc9b4831d11b4fd04fd6849532db074f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 5 06:55:06 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 5 06:55:06 2021 -0800","stats":{"files_changed":7,"insertions":47,"deletions":4,"files":["CHANGELOG","jc/cli.py","jc/parsers/dig.py","setup.py","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/generic/dig-answer-spaces.out","tests/test_dig.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":8},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/generic/dig-answer-spaces.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-answer-spaces.out","lines_changed":23},{"name":"tests/test_dig.py","lines_changed":12}]},"message":"fix for spaces in dig answer data","epoch":1612536906,"epoch_utc":null},{"commit":"15c9002d9eff0f52d873fb3ab35dfafd03a8e919","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 8 11:56:56 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 8 11:56:56 2021 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"simplify logic by taking out 'not' in JC_COLORS parsing","epoch":1610135816,"epoch_utc":null},{"commit":"042aaa61b96fc8472a8a460c49bde4cbbc359094","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 8 08:23:29 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 8 08:23:29 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"minor updates","epoch":1610123009,"epoch_utc":null},{"commit":"ef856c6ba5774cd8ec23acd71496846e794e3872","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 7 12:09:41 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 7 12:09:41 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"clarify -q option","epoch":1610050181,"epoch_utc":null},{"commit":"9cf5be73e3f975132d1ffbef412638b941a5664f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 16:19:47 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 6 16:19:47 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"typo fix","epoch":1609978787,"epoch_utc":null},{"commit":"63fc149e2a097cbde60c2ce1aeb102d9becabd9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 16:17:25 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 6 16:17:25 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"typo fix","epoch":1609978645,"epoch_utc":null},{"commit":"3c25839350800c7e7d2c48fc032bb21efa0ac213","merge":"03c0295 58246e3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 14:37:24 2021 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Jan 6 14:37:24 2021 -0800","message":"Merge pull request #98 from kellyjonbrazil/dev\n\nDev v1.14.1","epoch":1609972644,"epoch_utc":null},{"commit":"58246e33b71bae0ca4a42ad5bdf31134948b1014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 14:33:38 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 6 14:33:38 2021 -0800","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","README.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"README.md","lines_changed":3}]},"message":"update compatibility info and changelog date","epoch":1609972418,"epoch_utc":null},{"commit":"8b1407c7068e2105a83992bbb026138ea67bc07c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 14:22:26 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 6 14:22:26 2021 -0800","stats":{"files_changed":3,"insertions":59,"deletions":10,"files":["runtests.sh","tests/localtest_last.py","tests/test_last.py"],"file_stats":[{"name":"runtests.sh","lines_changed":6},{"name":"tests/localtest_last.py","lines_changed":41},{"name":"tests/test_last.py","lines_changed":22}]},"message":"pull env-specific tests from CI/CD and run locally only","epoch":1609971746,"epoch_utc":null},{"commit":"2fde4a4e2299b98a9958e3a55849c6791e4b17dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 12:07:58 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 6 12:07:58 2021 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["EXAMPLES.md","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"doc updates","epoch":1609963678,"epoch_utc":null},{"commit":"60b9e9798286121399d0f8b75d63ab0f3312c9bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 12:02:47 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 6 12:02:47 2021 -0800","stats":{"files_changed":12,"insertions":80,"deletions":38,"files":["docs/parsers/last.md","jc/parsers/last.py","tests/fixtures/centos-7.7/last-crash.json","tests/fixtures/centos-7.7/last-w.json","tests/fixtures/centos-7.7/last-wF.json","tests/fixtures/centos-7.7/last-wF.out","tests/fixtures/centos-7.7/last.json","tests/fixtures/fedora32/last.json","tests/fixtures/osx-10.14.6/last.json","tests/fixtures/ubuntu-18.04/last-w.json","tests/fixtures/ubuntu-18.04/last.json","tests/fixtures/ubuntu-20.04/last-F.json"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":37},{"name":"jc/parsers/last.py","lines_changed":57},{"name":"tests/fixtures/centos-7.7/last-crash.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/last-w.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/last-wF.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/last-wF.out","lines_changed":6},{"name":"tests/fixtures/centos-7.7/last.json","lines_changed":2},{"name":"tests/fixtures/fedora32/last.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/last.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/last-w.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/last.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/last-F.json","lines_changed":2}]},"message":"last parser enhancements: augment hostname with CONSOLE for GUI login, add convenience fields when -F is used: login_epoch, logout_epoch, duration_seconds, calculate duration to hours:minutes","epoch":1609963367,"epoch_utc":null},{"commit":"0adac79c0f2a22b31dfef1432a029af06132467b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 11:09:59 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 6 11:09:59 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"Add last parser enhancements","epoch":1609960199,"epoch_utc":null},{"commit":"9f485b5981a2ce49ac699b9dad39993c5605ae18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 11:09:37 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 6 11:09:37 2021 -0800","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["jc/parsers/iw_scan.py","tests/fixtures/centos-7.7/iw-scan0.json","tests/fixtures/centos-7.7/iw-scan1.json"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":6},{"name":"tests/fixtures/centos-7.7/iw-scan0.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iw-scan1.json","lines_changed":2}]},"message":"change mac_address fieldname to bssid. Add credit to Phillip","epoch":1609960177,"epoch_utc":null},{"commit":"db17d21b8f9b2f899760e648f1483d33d0bcf47a","merge":"5885b96 996d394","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 10:42:30 2021 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Jan 6 10:42:30 2021 -0800","message":"Merge pull request #97 from pschmitt/iw_scan_fix_space_detection\n\niw_scan: Improve detection of lines starting with spaces","epoch":1609958550,"epoch_utc":null},{"commit":"996d394e89c732f327323ca340fce405bd5fb2e4","author":"Philipp Schmitt","author_email":"philipp@schmitt.co","date":"Wed Jan 6 10:32:17 2021 +0100","commit_by":"Philipp Schmitt","commit_by_email":"philipp@schmitt.co","commit_by_date":"Wed Jan 6 10:32:17 2021 +0100","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":3}]},"message":"iw_scan: Improve detection of lines starting with spaces","epoch":1609957937,"epoch_utc":null},{"commit":"5885b960f9b33a95ecec9f4a33233c2f8682fbc4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 22:12:13 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 22:12:13 2021 -0800","stats":{"files_changed":3,"insertions":7,"deletions":2,"files":["CHANGELOG","README.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":2},{"name":"man/jc.1","lines_changed":4}]},"message":"doc updates","epoch":1609913533,"epoch_utc":null},{"commit":"79987b35f332e287567e103f25cf91cb50e040c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 22:07:22 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 22:07:22 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2}]},"message":"formatting","epoch":1609913242,"epoch_utc":null},{"commit":"661b3ef311ad26678030c70c11f2f955667311a4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 22:04:44 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 22:04:44 2021 -0800","stats":{"files_changed":4,"insertions":94,"deletions":2,"files":["EXAMPLES.md","README.md","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":91},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"doc updates","epoch":1609913084,"epoch_utc":null},{"commit":"fb422726a8366c7133f0712d3b05a26620eea785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 21:55:06 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 21:55:06 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["tests/fixtures/ubuntu-20.04/last-F.json","tests/fixtures/ubuntu-20.04/last-F.out"],"file_stats":[{"name":"tests/fixtures/ubuntu-20.04/last-F.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/last-F.out","lines_changed":1}]},"message":"update test to add 'down' condition","epoch":1609912506,"epoch_utc":null},{"commit":"4fb6f3ea59c52515926a51a006e65a1c18e57720","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 21:51:30 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 21:51:30 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":4}]},"message":"add support for down in addition to crash","epoch":1609912290,"epoch_utc":null},{"commit":"f78fe771e1c2fb4691858fa7f27b1febe5f8c6c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 21:38:51 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 21:38:51 2021 -0800","stats":{"files_changed":3,"insertions":48,"deletions":0,"files":["tests/fixtures/centos-7.7/iw-scan0.json","tests/fixtures/centos-7.7/iw-scan1.json","tests/test_iw_scan.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/iw-scan0.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iw-scan1.json","lines_changed":1},{"name":"tests/test_iw_scan.py","lines_changed":46}]},"message":"add iw-scan tests","epoch":1609911531,"epoch_utc":null},{"commit":"567b8872538ac9f6b384b98741acd9794229d513","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 21:26:43 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 21:26:43 2021 -0800","stats":{"files_changed":3,"insertions":252,"deletions":12,"files":["docgen.sh","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/iw_scan.md","lines_changed":160},{"name":"jc/parsers/iw_scan.py","lines_changed":103}]},"message":"doc updates","epoch":1609910803,"epoch_utc":null},{"commit":"e516e6b9466b29d40ec10070dd61551180eeef90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 21:17:40 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 21:17:40 2021 -0800","stats":{"files_changed":1,"insertions":29,"deletions":1,"files":["jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":30}]},"message":"fix country/environment fields and process int/float conversions","epoch":1609910260,"epoch_utc":null},{"commit":"62748676aae3d5955191ed267215df33a5bd3a4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 20:44:22 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 20:44:22 2021 -0800","stats":{"files_changed":2,"insertions":225,"deletions":0,"files":["jc/cli.py","jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/iw_scan.py","lines_changed":224}]},"message":"initial iw-scan parser","epoch":1609908262,"epoch_utc":null},{"commit":"7351c72e45242b9eb08c51dea7b6fccf12366dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 15:16:40 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 15:16:40 2021 -0800","stats":{"files_changed":6,"insertions":402,"deletions":1,"files":["jc/parsers/last.py","tests/fixtures/centos-7.7/last-crash.json","tests/fixtures/centos-7.7/last-crash.out","tests/fixtures/centos-7.7/last-wF.json","tests/fixtures/centos-7.7/last-wF.out","tests/test_last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":10},{"name":"tests/fixtures/centos-7.7/last-crash.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/last-crash.out","lines_changed":184},{"name":"tests/fixtures/centos-7.7/last-wF.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/last-wF.out","lines_changed":184},{"name":"tests/test_last.py","lines_changed":23}]},"message":"add fixes and tests for entries that contain 'crash'","epoch":1609888600,"epoch_utc":null},{"commit":"2b7405c5e21db2488fc48b58f6c65cff947ca95d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 13:58:38 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 13:58:38 2021 -0800","stats":{"files_changed":5,"insertions":23,"deletions":16,"files":["CHANGELOG","README.md","docs/parsers/last.md","jc/parsers/last.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":6},{"name":"jc/parsers/last.py","lines_changed":6},{"name":"man/jc.1","lines_changed":22}]},"message":"doc updates","epoch":1609883918,"epoch_utc":null},{"commit":"e2c77cb935a5bd95dbe930d424e5a02e88e1fa76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 13:00:38 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 13:00:38 2021 -0800","stats":{"files_changed":3,"insertions":15,"deletions":1,"files":["jc/parsers/last.py","tests/fixtures/ubuntu-20.04/last-F.json","tests/test_last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":3},{"name":"tests/fixtures/ubuntu-20.04/last-F.json","lines_changed":1},{"name":"tests/test_last.py","lines_changed":12}]},"message":"add test for last -F output","epoch":1609880438,"epoch_utc":null},{"commit":"7ac621e4c916373a03f379425033cb2d81a03578","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 12:29:29 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 12:29:29 2021 -0800","stats":{"files_changed":3,"insertions":36,"deletions":6,"files":["docs/parsers/last.md","jc/parsers/last.py","tests/fixtures/ubuntu-20.04/last-F.out"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":6},{"name":"jc/parsers/last.py","lines_changed":30},{"name":"tests/fixtures/ubuntu-20.04/last-F.out","lines_changed":6}]},"message":"add -F support","epoch":1609878569,"epoch_utc":null},{"commit":"d8b5d6c66ced19dc16f2b4975d2293a903732ffe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 09:45:37 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 09:45:37 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/cli.py","setup.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to 1.14.1","epoch":1609868737,"epoch_utc":null},{"commit":"22b461eb4b1ca86ea9e8c1fde8a2c312d1526b5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 09:42:05 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 09:42:05 2021 -0800","stats":{"files_changed":7,"insertions":47,"deletions":12,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/test_date.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":1},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":40},{"name":"tests/fixtures/generic/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date.json","lines_changed":1},{"name":"tests/test_date.py","lines_changed":12}]},"message":"Add period field for en_US.UTF-8 locale","epoch":1609868525,"epoch_utc":null},{"commit":"b37ee8555a2a108625a834a7990bc3320e79b08d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 4 18:02:07 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 4 18:02:07 2021 -0800","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":6}]},"message":"changelog update","epoch":1609812127,"epoch_utc":null},{"commit":"1d0ad2f045733c5c690738d49951fdb9bcd3d66d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 4 18:01:16 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 4 18:01:16 2021 -0800","stats":{"files_changed":123,"insertions":312,"deletions":312,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat_freebsd_osx.py","jc/parsers/netstat_linux.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":6},{"name":"docs/parsers/arp.md","lines_changed":6},{"name":"docs/parsers/blkid.md","lines_changed":6},{"name":"docs/parsers/cksum.md","lines_changed":6},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":6},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":6},{"name":"docs/parsers/dig.md","lines_changed":6},{"name":"docs/parsers/dmidecode.md","lines_changed":6},{"name":"docs/parsers/du.md","lines_changed":6},{"name":"docs/parsers/env.md","lines_changed":6},{"name":"docs/parsers/file.md","lines_changed":6},{"name":"docs/parsers/free.md","lines_changed":6},{"name":"docs/parsers/fstab.md","lines_changed":6},{"name":"docs/parsers/group.md","lines_changed":6},{"name":"docs/parsers/gshadow.md","lines_changed":6},{"name":"docs/parsers/hash.md","lines_changed":6},{"name":"docs/parsers/hashsum.md","lines_changed":6},{"name":"docs/parsers/history.md","lines_changed":6},{"name":"docs/parsers/hosts.md","lines_changed":6},{"name":"docs/parsers/id.md","lines_changed":4},{"name":"docs/parsers/ifconfig.md","lines_changed":6},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":6},{"name":"docs/parsers/jobs.md","lines_changed":6},{"name":"docs/parsers/last.md","lines_changed":6},{"name":"docs/parsers/ls.md","lines_changed":6},{"name":"docs/parsers/lsblk.md","lines_changed":6},{"name":"docs/parsers/lsmod.md","lines_changed":6},{"name":"docs/parsers/lsof.md","lines_changed":6},{"name":"docs/parsers/mount.md","lines_changed":6},{"name":"docs/parsers/netstat.md","lines_changed":6},{"name":"docs/parsers/ntpq.md","lines_changed":6},{"name":"docs/parsers/passwd.md","lines_changed":6},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":6},{"name":"docs/parsers/pip_show.md","lines_changed":6},{"name":"docs/parsers/ps.md","lines_changed":6},{"name":"docs/parsers/route.md","lines_changed":6},{"name":"docs/parsers/shadow.md","lines_changed":6},{"name":"docs/parsers/ss.md","lines_changed":6},{"name":"docs/parsers/stat.md","lines_changed":6},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":6},{"name":"docs/parsers/systemctl_lj.md","lines_changed":6},{"name":"docs/parsers/systemctl_ls.md","lines_changed":6},{"name":"docs/parsers/systemctl_luf.md","lines_changed":6},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":6},{"name":"docs/parsers/wc.md","lines_changed":6},{"name":"docs/parsers/who.md","lines_changed":6},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":6},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":6},{"name":"jc/parsers/arp.py","lines_changed":6},{"name":"jc/parsers/blkid.py","lines_changed":6},{"name":"jc/parsers/cksum.py","lines_changed":6},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"jc/parsers/csv.py","lines_changed":6},{"name":"jc/parsers/date.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":6},{"name":"jc/parsers/dig.py","lines_changed":6},{"name":"jc/parsers/dmidecode.py","lines_changed":6},{"name":"jc/parsers/du.py","lines_changed":6},{"name":"jc/parsers/env.py","lines_changed":6},{"name":"jc/parsers/file.py","lines_changed":6},{"name":"jc/parsers/foo.py","lines_changed":6},{"name":"jc/parsers/free.py","lines_changed":6},{"name":"jc/parsers/fstab.py","lines_changed":6},{"name":"jc/parsers/group.py","lines_changed":6},{"name":"jc/parsers/gshadow.py","lines_changed":6},{"name":"jc/parsers/hash.py","lines_changed":6},{"name":"jc/parsers/hashsum.py","lines_changed":6},{"name":"jc/parsers/history.py","lines_changed":6},{"name":"jc/parsers/hosts.py","lines_changed":6},{"name":"jc/parsers/id.py","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":6},{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":6},{"name":"jc/parsers/jobs.py","lines_changed":6},{"name":"jc/parsers/last.py","lines_changed":6},{"name":"jc/parsers/ls.py","lines_changed":6},{"name":"jc/parsers/lsblk.py","lines_changed":6},{"name":"jc/parsers/lsmod.py","lines_changed":6},{"name":"jc/parsers/lsof.py","lines_changed":6},{"name":"jc/parsers/mount.py","lines_changed":6},{"name":"jc/parsers/netstat.py","lines_changed":6},{"name":"jc/parsers/netstat_freebsd_osx.py","lines_changed":2},{"name":"jc/parsers/netstat_linux.py","lines_changed":2},{"name":"jc/parsers/ntpq.py","lines_changed":6},{"name":"jc/parsers/passwd.py","lines_changed":6},{"name":"jc/parsers/ping.py","lines_changed":4},{"name":"jc/parsers/pip_list.py","lines_changed":6},{"name":"jc/parsers/pip_show.py","lines_changed":6},{"name":"jc/parsers/ps.py","lines_changed":6},{"name":"jc/parsers/route.py","lines_changed":6},{"name":"jc/parsers/shadow.py","lines_changed":6},{"name":"jc/parsers/ss.py","lines_changed":6},{"name":"jc/parsers/stat.py","lines_changed":6},{"name":"jc/parsers/sysctl.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":6},{"name":"jc/parsers/systemctl_lj.py","lines_changed":6},{"name":"jc/parsers/systemctl_ls.py","lines_changed":6},{"name":"jc/parsers/systemctl_luf.py","lines_changed":6},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":6},{"name":"jc/parsers/wc.py","lines_changed":6},{"name":"jc/parsers/who.py","lines_changed":6},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":6}]},"message":"doc fixes","epoch":1609812076,"epoch_utc":null},{"commit":"ceccfb2c815f57f1b6fd81f891d8b495de23f9f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 4 17:05:26 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 4 17:05:26 2021 -0800","stats":{"files_changed":3,"insertions":2036,"deletions":0,"files":["tests/fixtures/centos-7.7/iw-scan0.out","tests/fixtures/centos-7.7/iw-scan1.out","tests/fixtures/ubuntu-20.04/date.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/iw-scan0.out","lines_changed":36},{"name":"tests/fixtures/centos-7.7/iw-scan1.out","lines_changed":1999},{"name":"tests/fixtures/ubuntu-20.04/date.out","lines_changed":1}]},"message":"add test output for iw-scan and date on ubuntu 20.04","epoch":1609808726,"epoch_utc":null},{"commit":"03c02953cd7e3327b391f799c37a2990eb2cb24c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 1 12:01:56 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 1 12:01:56 2021 -0800","stats":{"files_changed":2,"insertions":96,"deletions":0,"files":["docgen.sh","docs/parsers/wc.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/wc.md","lines_changed":95}]},"message":"add wc doc","epoch":1609531316,"epoch_utc":null},{"commit":"f254a0eaa16fcda316f7a75424ee359058204b03","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 16:45:10 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 31 16:45:10 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1609461910,"epoch_utc":null},{"commit":"9e3b88727cd439e15f235dddb9dd5796e010797a","merge":"439871e b122174","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 16:40:36 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Dec 31 16:40:36 2020 -0800","message":"Merge pull request #91 from kellyjonbrazil/dev\n\nDev v1.14.0","epoch":1609461636,"epoch_utc":null},{"commit":"b12217466e906829d19be4cfd80dfe7cf4008e57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 16:37:47 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 31 16:37:47 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"spelling","epoch":1609461467,"epoch_utc":null},{"commit":"8b9c932f9b05295e63b3e7d0073f243458fd4dd9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 16:37:14 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 31 16:37:14 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"update date","epoch":1609461434,"epoch_utc":null},{"commit":"5986ce03db6fcd1aa0f7b064eaa96c2120c06d2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 16:36:27 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 31 16:36:27 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add printenv info","epoch":1609461387,"epoch_utc":null},{"commit":"a7b0e936e400d2f9e55629e2d722cc002e035e9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 14:21:24 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 31 14:21:24 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"add vdir and printenv info","epoch":1609453284,"epoch_utc":null},{"commit":"cb0221142455a6bcb904fbe9ade657be45815b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 14:19:45 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 31 14:19:45 2020 -0800","stats":{"files_changed":4,"insertions":61,"deletions":2,"files":["jc/parsers/wc.py","tests/fixtures/osx-10.14.6/wc-stdin.json","tests/fixtures/osx-10.14.6/wc-stdin.out","tests/test_wc.py"],"file_stats":[{"name":"jc/parsers/wc.py","lines_changed":3},{"name":"tests/fixtures/osx-10.14.6/wc-stdin.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/wc-stdin.out","lines_changed":1},{"name":"tests/test_wc.py","lines_changed":58}]},"message":"add wc tests","epoch":1609453185,"epoch_utc":null},{"commit":"bd443bf39227515ae5f8df65d07b30268dcc90a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 14:11:25 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 31 14:11:25 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/env.py"],"file_stats":[{"name":"jc/parsers/env.py","lines_changed":4}]},"message":"add printenv to env docs","epoch":1609452685,"epoch_utc":null},{"commit":"1f547edd361e66b19ccbcb59f6ba0ae78f6080ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 14:10:56 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 31 14:10:56 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/env.md"],"file_stats":[{"name":"docs/parsers/env.md","lines_changed":2}]},"message":"add printenv to env docs","epoch":1609452656,"epoch_utc":null},{"commit":"e4bac3a493705b09e301ddc90dd1b0cee7467c3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 14:10:37 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 31 14:10:37 2020 -0800","stats":{"files_changed":9,"insertions":378,"deletions":0,"files":["CHANGELOG","EXAMPLES.md","README.md","jc/cli.py","jc/parsers/wc.py","tests/fixtures/centos-7.7/wc.json","tests/fixtures/centos-7.7/wc.out","tests/fixtures/osx-10.14.6/wc.json","tests/fixtures/osx-10.14.6/wc.out"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":26},{"name":"README.md","lines_changed":1},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/wc.py","lines_changed":130},{"name":"tests/fixtures/centos-7.7/wc.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/wc.out","lines_changed":67},{"name":"tests/fixtures/osx-10.14.6/wc.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/wc.out","lines_changed":150}]},"message":"add wc parser","epoch":1609452637,"epoch_utc":null},{"commit":"5e6bfa681aff03fbd683f81a9f4daa56b49d1344","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 13:18:53 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 31 13:18:53 2020 -0800","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["README.md","docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":6}]},"message":"add vdir info","epoch":1609449533,"epoch_utc":null},{"commit":"276160125e01553c75eaad68530177bcf4f9004d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 14:04:49 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 30 14:04:49 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"add new commands to README","epoch":1609365889,"epoch_utc":null},{"commit":"d4ae5543f2d5f28a0db5b8e2e19993c21c5d960c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 13:11:13 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 30 13:11:13 2020 -0800","stats":{"files_changed":3,"insertions":39,"deletions":0,"files":["tests/fixtures/centos-7.7/hash.json","tests/fixtures/centos-7.7/hash.out","tests/test_hash.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/hash.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/hash.out","lines_changed":4},{"name":"tests/test_hash.py","lines_changed":34}]},"message":"add hash tests","epoch":1609362673,"epoch_utc":null},{"commit":"55f360e267fdfcfef0c124ed6b88535cc181a8b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 12:58:52 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 30 12:58:52 2020 -0800","stats":{"files_changed":6,"insertions":260,"deletions":0,"files":["CHANGELOG","EXAMPLES.md","docgen.sh","docs/parsers/hash.md","jc/cli.py","jc/parsers/hash.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":71},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/hash.md","lines_changed":78},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/hash.py","lines_changed":108}]},"message":"add hash command parser","epoch":1609361932,"epoch_utc":null},{"commit":"fdedab2a0cf5af15df5803d87302397dd6d71741","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 11:33:29 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 30 11:33:29 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/cksum.py","jc/parsers/hashsum.py"],"file_stats":[{"name":"jc/parsers/cksum.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":2}]},"message":"description updates","epoch":1609356809,"epoch_utc":null},{"commit":"a9be42e3031ab0d697cff67a9e384caa2265a3ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 11:28:42 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 30 11:28:42 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"specify parser warnings for quiet option","epoch":1609356522,"epoch_utc":null},{"commit":"6da9510e46e84ec1cb93384825184d2996cf0e08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 11:22:17 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 30 11:22:17 2020 -0800","stats":{"files_changed":9,"insertions":482,"deletions":0,"files":["tests/fixtures/centos-7.7/cksum.json","tests/fixtures/centos-7.7/cksum.out","tests/fixtures/centos-7.7/sum.json","tests/fixtures/centos-7.7/sum.out","tests/fixtures/osx-10.14.6/cksum.json","tests/fixtures/osx-10.14.6/cksum.out","tests/fixtures/osx-10.14.6/sum.json","tests/fixtures/osx-10.14.6/sum.out","tests/test_cksum.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/cksum.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/cksum.out","lines_changed":59},{"name":"tests/fixtures/centos-7.7/sum.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sum.out","lines_changed":58},{"name":"tests/fixtures/osx-10.14.6/cksum.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/cksum.out","lines_changed":145},{"name":"tests/fixtures/osx-10.14.6/sum.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/sum.out","lines_changed":146},{"name":"tests/test_cksum.py","lines_changed":70}]},"message":"add cksum tests","epoch":1609356137,"epoch_utc":null},{"commit":"0431798178740b03cdefececc6df958e5adf62fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 11:02:02 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 30 11:02:02 2020 -0800","stats":{"files_changed":7,"insertions":229,"deletions":3,"files":["CHANGELOG","docgen.sh","docs/parsers/cksum.md","docs/parsers/hashsum.md","jc/cli.py","jc/parsers/cksum.py","jc/parsers/hashsum.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/cksum.md","lines_changed":95},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/cksum.py","lines_changed":128},{"name":"jc/parsers/hashsum.py","lines_changed":2}]},"message":"add cksum parser","epoch":1609354922,"epoch_utc":null},{"commit":"62432f3c484e74acb2b2dfd15d448b3f1b5d53c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 09:59:54 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 30 09:59:54 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/hashsum.py"],"file_stats":[{"name":"jc/parsers/hashsum.py","lines_changed":2}]},"message":"update hashsum description","epoch":1609351194,"epoch_utc":null},{"commit":"9fbbc30906b597e6afaf2030015a7a694d85f79e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 13:09:03 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 29 13:09:03 2020 -0800","stats":{"files_changed":2,"insertions":20,"deletions":0,"files":["docs/parsers/hashsum.md","jc/parsers/hashsum.py"],"file_stats":[{"name":"docs/parsers/hashsum.md","lines_changed":10},{"name":"jc/parsers/hashsum.py","lines_changed":10}]},"message":"add supported commands to docs","epoch":1609276143,"epoch_utc":null},{"commit":"d1567d1f622902053f3df58645b4e39532e0c30a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 13:05:04 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 29 13:05:04 2020 -0800","stats":{"files_changed":3,"insertions":104,"deletions":0,"files":["CHANGELOG","docgen.sh","docs/parsers/hashsum.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":4},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/hashsum.md","lines_changed":99}]},"message":"add hashsum documentation","epoch":1609275904,"epoch_utc":null},{"commit":"6ca1f5970b3a518615a54ee7fcbc1bddab2db331","merge":"1c880b9 3b7d54c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 12:59:02 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 29 12:59:02 2020 -0800","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev","epoch":1609275542,"epoch_utc":null},{"commit":"1c880b9e24ca53cd592cec1dbc52301308290fb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 12:58:04 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 29 12:58:04 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_hashsum.py"],"file_stats":[{"name":"tests/test_hashsum.py","lines_changed":2}]},"message":"force git tests","epoch":1609275484,"epoch_utc":null},{"commit":"3b7d54c720dfc93637328cf06eb10a85447c8793","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 12:55:30 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Dec 29 12:55:30 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"add python 3.9","epoch":1609275330,"epoch_utc":null},{"commit":"44a740605705bd0ecfde2a6bcc7a826e1010dcf0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 12:51:43 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 29 12:51:43 2020 -0800","stats":{"files_changed":6,"insertions":87,"deletions":0,"files":["tests/fixtures/centos-7.7/md5sum.json","tests/fixtures/centos-7.7/sha256sum.json","tests/fixtures/centos-7.7/sha384sum.json","tests/fixtures/osx-10.14.6/md5.json","tests/fixtures/osx-10.14.6/shasum.json","tests/test_hashsum.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/md5sum.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sha256sum.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sha384sum.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/md5.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/shasum.json","lines_changed":1},{"name":"tests/test_hashsum.py","lines_changed":82}]},"message":"add hashsum tests","epoch":1609275103,"epoch_utc":null},{"commit":"8157dcfdb1868548b7c8ca692e6be25f80bb2c2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 12:25:20 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 29 12:25:20 2020 -0800","stats":{"files_changed":1,"insertions":36,"deletions":11,"files":["jc/parsers/hashsum.py"],"file_stats":[{"name":"jc/parsers/hashsum.py","lines_changed":47}]},"message":"fix for files with spaces in the name","epoch":1609273520,"epoch_utc":null},{"commit":"28762aea15cabc9cd8293d725e7f1f0550f8e15d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 11:36:20 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 29 11:36:20 2020 -0800","stats":{"files_changed":7,"insertions":524,"deletions":0,"files":["jc/cli.py","jc/parsers/hashsum.py","tests/fixtures/centos-7.7/md5sum.out","tests/fixtures/centos-7.7/sha256sum.out","tests/fixtures/centos-7.7/sha384sum.out","tests/fixtures/osx-10.14.6/md5.out","tests/fixtures/osx-10.14.6/shasum.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/hashsum.py","lines_changed":110},{"name":"tests/fixtures/centos-7.7/md5sum.out","lines_changed":56},{"name":"tests/fixtures/centos-7.7/sha256sum.out","lines_changed":55},{"name":"tests/fixtures/centos-7.7/sha384sum.out","lines_changed":56},{"name":"tests/fixtures/osx-10.14.6/md5.out","lines_changed":104},{"name":"tests/fixtures/osx-10.14.6/shasum.out","lines_changed":142}]},"message":"add hashsum parser","epoch":1609270580,"epoch_utc":null},{"commit":"439871ea9f6b055a407e1faaf47e4f56d1829501","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 19 07:07:30 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 19 07:07:30 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add ubuntu","epoch":1605798450,"epoch_utc":null},{"commit":"c9180b005c0547c8cbfe4809e66894f1123b0809","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Aug 30 11:58:42 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Aug 30 11:58:42 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1598813922,"epoch_utc":null},{"commit":"b14e0725f86853f0113116b1c06f54aaa563f365","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Aug 30 11:57:55 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Aug 30 11:57:55 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add ansible plugin blog post link","epoch":1598813875,"epoch_utc":null},{"commit":"70fe3dcb4d5b97aba1d6c6dcd5088fecb27af181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 26 15:21:45 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 26 15:21:45 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1598480505,"epoch_utc":null},{"commit":"8c554604a42a3ea7ca9131b65c64fd3ceb95f906","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 26 14:41:01 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 26 14:41:01 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"formatting","epoch":1598478061,"epoch_utc":null},{"commit":"a0a35454bd2831c116cb598c686150b883412f94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 26 14:39:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 26 14:39:40 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add link to the web demo","epoch":1598477980,"epoch_utc":null},{"commit":"e8467e2af5b0c3f14832a9e6d4a96f219c27f3f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 20 10:57:13 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 20 10:57:13 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"remove extra space","epoch":1597946233,"epoch_utc":null},{"commit":"7515deb5669ef04623e9cbf58653b30c99a96430","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 20 10:39:34 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 20 10:39:34 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add ansible install command","epoch":1597945174,"epoch_utc":null},{"commit":"ed9e52af241b609ee7f5d1b835c9f6c5306cd3c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 20 10:37:15 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 20 10:37:15 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"spelling","epoch":1597945035,"epoch_utc":null},{"commit":"592a3804104628c790997747a778b3b39d076dfe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 20 10:35:49 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 20 10:35:49 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add Ansible note","epoch":1597944949,"epoch_utc":null},{"commit":"1a458d2d5b4c16c0ad90671727ae9b19939e7f23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 11 07:00:07 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Aug 11 07:00:07 2020 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2}]},"message":"update link","epoch":1597154407,"epoch_utc":null},{"commit":"0e4cf53b92ff951a6390a4dacf8833c272473583","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 11 06:36:30 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Aug 11 06:36:30 2020 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2}]},"message":"add parser docs link","epoch":1597152990,"epoch_utc":null},{"commit":"e2f06ccb33177173d984bc0cdda1aae1a3f4c681","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 6 13:00:33 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 6 13:00:33 2020 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"formatting","epoch":1596744033,"epoch_utc":null},{"commit":"8abff004cd8e09529e5d94be4883308152e11565","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 6 12:59:30 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 6 12:59:30 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/yaml.md"],"file_stats":[{"name":"docs/parsers/yaml.md","lines_changed":2}]},"message":"indentation fix","epoch":1596743970,"epoch_utc":null},{"commit":"c4a0e2e3feb2e51eaaaa202064f352229017bcc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 6 12:58:53 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 6 12:58:53 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"fix indentation","epoch":1596743933,"epoch_utc":null},{"commit":"4f10f79c73f8b3d6edc2c83e6a12d0ddc1a78555","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 6 12:55:24 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 6 12:55:24 2020 -0700","stats":{"files_changed":2,"insertions":4,"deletions":8,"files":["docs/parsers/uname.md","jc/parsers/uname.py"],"file_stats":[{"name":"docs/parsers/uname.md","lines_changed":6},{"name":"jc/parsers/uname.py","lines_changed":6}]},"message":"standardize doc","epoch":1596743724,"epoch_utc":null},{"commit":"69e7a560fd82337570c4bb4aa4780f513c18bd94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 6 07:48:08 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 6 07:48:08 2020 -0700","stats":{"files_changed":4,"insertions":8,"deletions":0,"files":["docs/parsers/env.md","docs/parsers/history.md","jc/parsers/env.py","jc/parsers/history.py"],"file_stats":[{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2}]},"message":"add output info to docs","epoch":1596725288,"epoch_utc":null},{"commit":"59b105580805d78516abe1c1069d52a6f0a8131a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 16:51:58 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 16:51:58 2020 -0700","stats":{"files_changed":97,"insertions":564,"deletions":269,"files":["docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":12},{"name":"docs/parsers/blkid.md","lines_changed":8},{"name":"docs/parsers/crontab.md","lines_changed":10},{"name":"docs/parsers/crontab_u.md","lines_changed":6},{"name":"docs/parsers/csv.md","lines_changed":9},{"name":"docs/parsers/date.md","lines_changed":8},{"name":"docs/parsers/df.md","lines_changed":8},{"name":"docs/parsers/dig.md","lines_changed":8},{"name":"docs/parsers/dmidecode.md","lines_changed":8},{"name":"docs/parsers/du.md","lines_changed":8},{"name":"docs/parsers/env.md","lines_changed":8},{"name":"docs/parsers/file.md","lines_changed":8},{"name":"docs/parsers/free.md","lines_changed":8},{"name":"docs/parsers/fstab.md","lines_changed":4},{"name":"docs/parsers/group.md","lines_changed":4},{"name":"docs/parsers/gshadow.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":4},{"name":"docs/parsers/hosts.md","lines_changed":4},{"name":"docs/parsers/id.md","lines_changed":8},{"name":"docs/parsers/ifconfig.md","lines_changed":10},{"name":"docs/parsers/ini.md","lines_changed":10},{"name":"docs/parsers/iptables.md","lines_changed":10},{"name":"docs/parsers/jobs.md","lines_changed":10},{"name":"docs/parsers/kv.md","lines_changed":11},{"name":"docs/parsers/last.md","lines_changed":8},{"name":"docs/parsers/ls.md","lines_changed":21},{"name":"docs/parsers/lsblk.md","lines_changed":8},{"name":"docs/parsers/lsmod.md","lines_changed":8},{"name":"docs/parsers/lsof.md","lines_changed":8},{"name":"docs/parsers/mount.md","lines_changed":8},{"name":"docs/parsers/netstat.md","lines_changed":17},{"name":"docs/parsers/ntpq.md","lines_changed":8},{"name":"docs/parsers/passwd.md","lines_changed":4},{"name":"docs/parsers/ping.md","lines_changed":12},{"name":"docs/parsers/pip_list.md","lines_changed":8},{"name":"docs/parsers/pip_show.md","lines_changed":8},{"name":"docs/parsers/ps.md","lines_changed":14},{"name":"docs/parsers/route.md","lines_changed":8},{"name":"docs/parsers/shadow.md","lines_changed":4},{"name":"docs/parsers/ss.md","lines_changed":8},{"name":"docs/parsers/stat.md","lines_changed":8},{"name":"docs/parsers/sysctl.md","lines_changed":16},{"name":"docs/parsers/systemctl.md","lines_changed":8},{"name":"docs/parsers/systemctl_lj.md","lines_changed":8},{"name":"docs/parsers/systemctl_ls.md","lines_changed":8},{"name":"docs/parsers/systemctl_luf.md","lines_changed":8},{"name":"docs/parsers/timedatectl.md","lines_changed":8},{"name":"docs/parsers/tracepath.md","lines_changed":10},{"name":"docs/parsers/traceroute.md","lines_changed":16},{"name":"docs/parsers/uname.md","lines_changed":8},{"name":"docs/parsers/uptime.md","lines_changed":8},{"name":"docs/parsers/w.md","lines_changed":8},{"name":"docs/parsers/who.md","lines_changed":10},{"name":"docs/parsers/xml.md","lines_changed":4},{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"jc/parsers/group.py","lines_changed":4},{"name":"jc/parsers/gshadow.py","lines_changed":4},{"name":"jc/parsers/history.py","lines_changed":4},{"name":"jc/parsers/hosts.py","lines_changed":4},{"name":"jc/parsers/id.py","lines_changed":8},{"name":"jc/parsers/ifconfig.py","lines_changed":10},{"name":"jc/parsers/ini.py","lines_changed":10},{"name":"jc/parsers/iptables.py","lines_changed":10},{"name":"jc/parsers/jobs.py","lines_changed":10},{"name":"jc/parsers/kv.py","lines_changed":11},{"name":"jc/parsers/last.py","lines_changed":8},{"name":"jc/parsers/ls.py","lines_changed":21},{"name":"jc/parsers/lsblk.py","lines_changed":8},{"name":"jc/parsers/lsmod.py","lines_changed":8},{"name":"jc/parsers/lsof.py","lines_changed":8},{"name":"jc/parsers/mount.py","lines_changed":8},{"name":"jc/parsers/netstat.py","lines_changed":17},{"name":"jc/parsers/ntpq.py","lines_changed":8},{"name":"jc/parsers/passwd.py","lines_changed":4},{"name":"jc/parsers/ping.py","lines_changed":12},{"name":"jc/parsers/pip_list.py","lines_changed":8},{"name":"jc/parsers/pip_show.py","lines_changed":8},{"name":"jc/parsers/ps.py","lines_changed":14},{"name":"jc/parsers/route.py","lines_changed":8},{"name":"jc/parsers/shadow.py","lines_changed":4},{"name":"jc/parsers/ss.py","lines_changed":8},{"name":"jc/parsers/stat.py","lines_changed":8},{"name":"jc/parsers/sysctl.py","lines_changed":16},{"name":"jc/parsers/systemctl.py","lines_changed":8},{"name":"jc/parsers/systemctl_lj.py","lines_changed":8},{"name":"jc/parsers/systemctl_ls.py","lines_changed":8},{"name":"jc/parsers/systemctl_luf.py","lines_changed":8},{"name":"jc/parsers/timedatectl.py","lines_changed":8},{"name":"jc/parsers/tracepath.py","lines_changed":10},{"name":"jc/parsers/traceroute.py","lines_changed":16},{"name":"jc/parsers/uname.py","lines_changed":8},{"name":"jc/parsers/uptime.py","lines_changed":8},{"name":"jc/parsers/w.py","lines_changed":8},{"name":"jc/parsers/who.py","lines_changed":10},{"name":"jc/parsers/xml.py","lines_changed":4},{"name":"jc/parsers/yaml.py","lines_changed":4}]},"message":"enhance docs","epoch":1596671518,"epoch_utc":null},{"commit":"6ed48c6289214fe5114971c80772efdf9ac1b8c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 15:34:17 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 15:34:17 2020 -0700","stats":{"files_changed":16,"insertions":88,"deletions":37,"files":["jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py"],"file_stats":[{"name":"jc/parsers/airport_s.py","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":12},{"name":"jc/parsers/blkid.py","lines_changed":8},{"name":"jc/parsers/crontab.py","lines_changed":10},{"name":"jc/parsers/crontab_u.py","lines_changed":6},{"name":"jc/parsers/csv.py","lines_changed":9},{"name":"jc/parsers/date.py","lines_changed":8},{"name":"jc/parsers/df.py","lines_changed":8},{"name":"jc/parsers/dig.py","lines_changed":8},{"name":"jc/parsers/dmidecode.py","lines_changed":8},{"name":"jc/parsers/du.py","lines_changed":8},{"name":"jc/parsers/env.py","lines_changed":8},{"name":"jc/parsers/file.py","lines_changed":8},{"name":"jc/parsers/foo.py","lines_changed":10},{"name":"jc/parsers/free.py","lines_changed":8},{"name":"jc/parsers/fstab.py","lines_changed":4}]},"message":"enhance docs","epoch":1596666857,"epoch_utc":null},{"commit":"f2fb4d3f415fbc1c09eec6dedcf70fba78406b3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 15:10:48 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 15:10:48 2020 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","jc/parsers/airport.py","jc/parsers/airport_s.py"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":2}]},"message":"improve docs","epoch":1596665448,"epoch_utc":null},{"commit":"6aeea59ea84e56434e87ddf89cd5d4435b99e140","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 15:08:42 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 15:08:42 2020 -0700","stats":{"files_changed":2,"insertions":14,"deletions":8,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":11},{"name":"docs/parsers/airport_s.md","lines_changed":11}]},"message":"doc updates","epoch":1596665322,"epoch_utc":null},{"commit":"d016f3bbb307f85bd0f93a508323941a8bb9d872","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 15:07:33 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 15:07:33 2020 -0700","stats":{"files_changed":2,"insertions":14,"deletions":8,"files":["jc/parsers/airport.py","jc/parsers/airport_s.py"],"file_stats":[{"name":"jc/parsers/airport.py","lines_changed":11},{"name":"jc/parsers/airport_s.py","lines_changed":11}]},"message":"improve documentation","epoch":1596665253,"epoch_utc":null},{"commit":"7131c297180bfa195d0209d46fc70ab8e67efe2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 13:32:59 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 13:32:59 2020 -0700","stats":{"files_changed":114,"insertions":686,"deletions":116,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":7},{"name":"docs/parsers/airport_s.md","lines_changed":7},{"name":"docs/parsers/arp.md","lines_changed":7},{"name":"docs/parsers/crontab.md","lines_changed":7},{"name":"docs/parsers/crontab_u.md","lines_changed":7},{"name":"docs/parsers/csv.md","lines_changed":7},{"name":"docs/parsers/date.md","lines_changed":7},{"name":"docs/parsers/df.md","lines_changed":7},{"name":"docs/parsers/dig.md","lines_changed":7},{"name":"docs/parsers/dmidecode.md","lines_changed":7},{"name":"docs/parsers/du.md","lines_changed":7},{"name":"docs/parsers/env.md","lines_changed":7},{"name":"docs/parsers/file.md","lines_changed":7},{"name":"docs/parsers/free.md","lines_changed":7},{"name":"docs/parsers/fstab.md","lines_changed":7},{"name":"docs/parsers/group.md","lines_changed":7},{"name":"docs/parsers/gshadow.md","lines_changed":7},{"name":"docs/parsers/history.md","lines_changed":7},{"name":"docs/parsers/hosts.md","lines_changed":7},{"name":"docs/parsers/id.md","lines_changed":7},{"name":"docs/parsers/ifconfig.md","lines_changed":7},{"name":"docs/parsers/ini.md","lines_changed":7},{"name":"docs/parsers/iptables.md","lines_changed":7},{"name":"docs/parsers/jobs.md","lines_changed":7},{"name":"docs/parsers/kv.md","lines_changed":7},{"name":"docs/parsers/last.md","lines_changed":7},{"name":"docs/parsers/ls.md","lines_changed":7},{"name":"docs/parsers/lsblk.md","lines_changed":7},{"name":"docs/parsers/lsmod.md","lines_changed":7},{"name":"docs/parsers/lsof.md","lines_changed":7},{"name":"docs/parsers/mount.md","lines_changed":7},{"name":"docs/parsers/netstat.md","lines_changed":7},{"name":"docs/parsers/ntpq.md","lines_changed":7},{"name":"docs/parsers/passwd.md","lines_changed":7},{"name":"docs/parsers/ping.md","lines_changed":7},{"name":"docs/parsers/pip_list.md","lines_changed":7},{"name":"docs/parsers/pip_show.md","lines_changed":7},{"name":"docs/parsers/ps.md","lines_changed":7},{"name":"docs/parsers/route.md","lines_changed":7},{"name":"docs/parsers/shadow.md","lines_changed":7},{"name":"docs/parsers/ss.md","lines_changed":7},{"name":"docs/parsers/stat.md","lines_changed":7},{"name":"docs/parsers/sysctl.md","lines_changed":7},{"name":"docs/parsers/systemctl.md","lines_changed":7},{"name":"docs/parsers/systemctl_lj.md","lines_changed":7},{"name":"docs/parsers/systemctl_ls.md","lines_changed":7},{"name":"docs/parsers/systemctl_luf.md","lines_changed":7},{"name":"docs/parsers/timedatectl.md","lines_changed":7},{"name":"docs/parsers/tracepath.md","lines_changed":7},{"name":"docs/parsers/traceroute.md","lines_changed":7},{"name":"docs/parsers/uname.md","lines_changed":9},{"name":"docs/parsers/uptime.md","lines_changed":7},{"name":"docs/parsers/w.md","lines_changed":7},{"name":"docs/parsers/who.md","lines_changed":7},{"name":"docs/parsers/xml.md","lines_changed":7},{"name":"docs/parsers/yaml.md","lines_changed":7},{"name":"jc/parsers/airport.py","lines_changed":7},{"name":"jc/parsers/airport_s.py","lines_changed":7},{"name":"jc/parsers/arp.py","lines_changed":7},{"name":"jc/parsers/blkid.py","lines_changed":7},{"name":"jc/parsers/crontab.py","lines_changed":7},{"name":"jc/parsers/crontab_u.py","lines_changed":7},{"name":"jc/parsers/csv.py","lines_changed":7},{"name":"jc/parsers/date.py","lines_changed":7},{"name":"jc/parsers/df.py","lines_changed":7},{"name":"jc/parsers/dig.py","lines_changed":7},{"name":"jc/parsers/dmidecode.py","lines_changed":7},{"name":"jc/parsers/du.py","lines_changed":7},{"name":"jc/parsers/env.py","lines_changed":7},{"name":"jc/parsers/file.py","lines_changed":7},{"name":"jc/parsers/foo.py","lines_changed":7},{"name":"jc/parsers/free.py","lines_changed":7},{"name":"jc/parsers/fstab.py","lines_changed":7},{"name":"jc/parsers/group.py","lines_changed":7},{"name":"jc/parsers/gshadow.py","lines_changed":7},{"name":"jc/parsers/history.py","lines_changed":7},{"name":"jc/parsers/hosts.py","lines_changed":7},{"name":"jc/parsers/id.py","lines_changed":7},{"name":"jc/parsers/ifconfig.py","lines_changed":7},{"name":"jc/parsers/ini.py","lines_changed":7},{"name":"jc/parsers/iptables.py","lines_changed":7},{"name":"jc/parsers/jobs.py","lines_changed":7},{"name":"jc/parsers/kv.py","lines_changed":7},{"name":"jc/parsers/last.py","lines_changed":7},{"name":"jc/parsers/ls.py","lines_changed":7},{"name":"jc/parsers/lsblk.py","lines_changed":7},{"name":"jc/parsers/lsmod.py","lines_changed":7},{"name":"jc/parsers/lsof.py","lines_changed":7},{"name":"jc/parsers/mount.py","lines_changed":7},{"name":"jc/parsers/netstat.py","lines_changed":7},{"name":"jc/parsers/ntpq.py","lines_changed":7},{"name":"jc/parsers/passwd.py","lines_changed":7},{"name":"jc/parsers/ping.py","lines_changed":7},{"name":"jc/parsers/pip_list.py","lines_changed":7},{"name":"jc/parsers/pip_show.py","lines_changed":7},{"name":"jc/parsers/ps.py","lines_changed":7},{"name":"jc/parsers/route.py","lines_changed":7},{"name":"jc/parsers/shadow.py","lines_changed":7},{"name":"jc/parsers/ss.py","lines_changed":7},{"name":"jc/parsers/stat.py","lines_changed":7},{"name":"jc/parsers/sysctl.py","lines_changed":7},{"name":"jc/parsers/systemctl.py","lines_changed":7},{"name":"jc/parsers/systemctl_lj.py","lines_changed":7},{"name":"jc/parsers/systemctl_ls.py","lines_changed":7},{"name":"jc/parsers/systemctl_luf.py","lines_changed":7},{"name":"jc/parsers/timedatectl.py","lines_changed":7},{"name":"jc/parsers/tracepath.py","lines_changed":7},{"name":"jc/parsers/traceroute.py","lines_changed":7},{"name":"jc/parsers/uname.py","lines_changed":9},{"name":"jc/parsers/uptime.py","lines_changed":7},{"name":"jc/parsers/w.py","lines_changed":7},{"name":"jc/parsers/who.py","lines_changed":7},{"name":"jc/parsers/xml.py","lines_changed":7},{"name":"jc/parsers/yaml.py","lines_changed":7}]},"message":"add module usage info to docs","epoch":1596659579,"epoch_utc":null},{"commit":"7432442983841b42c8d3d2459b55596c05d1e100","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 13:31:52 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 13:31:52 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["docs/parsers/blkid.md"],"file_stats":[{"name":"docs/parsers/blkid.md","lines_changed":7}]},"message":"add usage","epoch":1596659512,"epoch_utc":null},{"commit":"5344883394a0662ee16bb5edd68df8e4410025f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 11:35:52 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 11:35:52 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"spelling/add ping parser update","epoch":1596652552,"epoch_utc":null},{"commit":"3fcd2f6c2e015b0e65e7261c8e591ccd8a7d0e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 11:34:29 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 11:34:29 2020 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/cli.py","setup.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1596652469,"epoch_utc":null},{"commit":"f3d84bd5bf06349b681e9b72d904676e9f6bca19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 11:28:37 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 11:28:37 2020 -0700","stats":{"files_changed":6,"insertions":21,"deletions":3,"files":["CHANGELOG","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/fixtures/debian10/crontab-u.json","tests/fixtures/debian10/crontab-u.out","tests/test_crontab_u.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":4},{"name":"tests/fixtures/debian10/crontab-u.json","lines_changed":1},{"name":"tests/fixtures/debian10/crontab-u.out","lines_changed":2},{"name":"tests/test_crontab_u.py","lines_changed":12}]},"message":"tighten crontab and crontab-u parser variable detection","epoch":1596652117,"epoch_utc":null},{"commit":"549780c23220bca3bcab58d7329ba8d44d1be55d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 11:04:07 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 11:04:07 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"add debian/apt-get info","epoch":1596650647,"epoch_utc":null},{"commit":"2a6da69b82aa9ade6c01d490a32b57b415c62a9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 09:58:01 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 09:58:01 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":4}]},"message":"improve linux/bsd check","epoch":1596646681,"epoch_utc":null},{"commit":"5c538816cf76686bac1a86a7c06e24664d25a2dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 4 17:36:35 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Aug 4 17:36:35 2020 -0700","stats":{"files_changed":9,"insertions":55,"deletions":4,"files":["CHANGELOG","jc/cli.py","jc/parsers/ping.py","setup.py","tests/fixtures/pi/ping-ip-O-D.json","tests/fixtures/pi/ping-ip-O-D.out","tests/fixtures/pi/ping-ip-O.json","tests/fixtures/pi/ping-ip-O.out","tests/test_ping.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/ping.py","lines_changed":4},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/pi/ping-ip-O-D.json","lines_changed":1},{"name":"tests/fixtures/pi/ping-ip-O-D.out","lines_changed":10},{"name":"tests/fixtures/pi/ping-ip-O.json","lines_changed":1},{"name":"tests/fixtures/pi/ping-ip-O.out","lines_changed":10},{"name":"tests/test_ping.py","lines_changed":26}]},"message":"ping parser fix for raspberry pi","epoch":1596587795,"epoch_utc":null},{"commit":"7b8b378a7df397c488fc54fbd6e77f5f3f23c10c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 3 12:39:18 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 3 12:39:18 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":1}]},"message":"add pydoc-markdown version requirement","epoch":1596483558,"epoch_utc":null},{"commit":"e30a75e25c4b43969bf9f874f89e18512a5e3a34","merge":"dda517a 85ad5cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 3 10:18:39 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Aug 3 10:18:39 2020 -0700","message":"Merge pull request #76 from kellyjonbrazil/dev\n\nDev v1.13.2","epoch":1596475119,"epoch_utc":null},{"commit":"85ad5cfd0bfb903ce35e37b343244fed88dbd979","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 3 10:14:13 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 3 10:14:13 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"date change","epoch":1596474853,"epoch_utc":null},{"commit":"88b9d5068c5bac0691fedb543114300d6afc7131","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 3 09:26:37 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 3 09:26:37 2020 -0700","stats":{"files_changed":6,"insertions":74,"deletions":15,"files":["EXAMPLES.md","README.md","docs/parsers/date.md","tests/fixtures/generic/date.json","tests/fixtures/generic/date.out","tests/test_date.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":18},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/date.md","lines_changed":34},{"name":"tests/fixtures/generic/date.json","lines_changed":1},{"name":"tests/fixtures/generic/date.out","lines_changed":1},{"name":"tests/test_date.py","lines_changed":34}]},"message":"finish date parser","epoch":1596471997,"epoch_utc":null},{"commit":"f8c4948a090642db595eda2ba2ea0773e560ba67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 16:52:48 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 16:52:48 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":1}]},"message":"remove comment","epoch":1596239568,"epoch_utc":null},{"commit":"412322447f019aec0b64888631bc965e9f21186d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 16:51:05 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 16:51:05 2020 -0700","stats":{"files_changed":1,"insertions":48,"deletions":17,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":65}]},"message":"add month_num and weekday_num fields","epoch":1596239465,"epoch_utc":null},{"commit":"d4f289e40fae621b87f0d49451fca4c3dde216b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 14:47:06 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 14:47:06 2020 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":4},{"name":"jc/parsers/date.py","lines_changed":4}]},"message":"documentation fixup","epoch":1596232026,"epoch_utc":null},{"commit":"e1f3feb8f529172ae26ce4c7a66a4a1c21b722ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 14:45:30 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 14:45:30 2020 -0700","stats":{"files_changed":1,"insertions":13,"deletions":10,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":23}]},"message":"cover empty data case in process","epoch":1596231930,"epoch_utc":null},{"commit":"37d3bc699c7be16955be06840d242980f05f1074","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 14:39:02 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 14:39:02 2020 -0700","stats":{"files_changed":6,"insertions":224,"deletions":1,"files":["CHANGELOG","docgen.sh","docs/parsers/date.md","jc/cli.py","jc/parsers/date.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/date.md","lines_changed":89},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/date.py","lines_changed":127},{"name":"man/jc.1","lines_changed":4}]},"message":"add date parser","epoch":1596231542,"epoch_utc":null},{"commit":"672fd18016b8122510b6ab246b5675b7fd399b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 12:59:44 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 12:59:44 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"date bump","epoch":1596225584,"epoch_utc":null},{"commit":"bc2c23a2a09b96d34bb80f69fdc7751fb5ac3ed4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 12:58:58 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 12:58:58 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"version bump","epoch":1596225538,"epoch_utc":null},{"commit":"865f7e78124e382c6d315702fa6e48f2104cee46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 12:58:11 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 12:58:11 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":6}]},"message":"add kv parser to man page","epoch":1596225491,"epoch_utc":null},{"commit":"720212b552e1bd2b9196dd5f06e4b3f85d463531","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 11:02:24 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 11:02:24 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":9,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":10}]},"message":"fixup traceroute example with new behavior","epoch":1596218544,"epoch_utc":null},{"commit":"d3be61f60837801d5a505dc2520cc80c874a6092","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 10:59:46 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 10:59:46 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]},"message":"version bump","epoch":1596218386,"epoch_utc":null},{"commit":"13418b16b8fd78fdd97ac045ec3fe9aa59d46080","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 10:56:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 10:56:51 2020 -0700","stats":{"files_changed":2,"insertions":8,"deletions":2,"files":["docs/parsers/traceroute.md","jc/parsers/traceroute.py"],"file_stats":[{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"jc/parsers/traceroute.py","lines_changed":5}]},"message":"doc update","epoch":1596218211,"epoch_utc":null},{"commit":"42d2017cd6f5ee1d1a92bd4958cd63366c1e715d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 10:53:47 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 10:53:47 2020 -0700","stats":{"files_changed":18,"insertions":41,"deletions":24,"files":["CHANGELOG","jc/parsers/traceroute.py","tests/fixtures/centos-7.7/traceroute.json","tests/fixtures/freebsd12/traceroute.json","tests/fixtures/freebsd12/traceroute6.json","tests/fixtures/generic/traceroute1.json","tests/fixtures/generic/traceroute2.json","tests/fixtures/generic/traceroute3.json","tests/fixtures/generic/traceroute5.json","tests/fixtures/generic/traceroute6.json","tests/fixtures/generic/traceroute7.json","tests/fixtures/osx-10.14.6/traceroute-asn.json",".../fixtures/osx-10.14.6/traceroute-no-header.json","tests/fixtures/osx-10.14.6/traceroute-q.json","tests/fixtures/osx-10.14.6/traceroute.json",".../osx-10.14.6/traceroute6-mult-addresses.json","tests/fixtures/osx-10.14.6/traceroute6.json","tests/test_traceroute.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/traceroute.py","lines_changed":26},{"name":"tests/fixtures/centos-7.7/traceroute.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/traceroute.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/traceroute6.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute1.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute2.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute3.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute5.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute6.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute7.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/traceroute-asn.json","lines_changed":2},{"name":".../fixtures/osx-10.14.6/traceroute-no-header.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/traceroute-q.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/traceroute.json","lines_changed":2},{"name":".../osx-10.14.6/traceroute6-mult-addresses.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/traceroute6.json","lines_changed":2},{"name":"tests/test_traceroute.py","lines_changed":7}]},"message":"traceroute updates: handle missing header row, add annotations, don't print timeouts as probes","epoch":1596218027,"epoch_utc":null},{"commit":"4345e76ead2a49ae0691077e9fbd2b6c5fdfd129","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 30 16:49:38 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 30 16:49:38 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2}]},"message":"change to use --kv for key/value files","epoch":1596152978,"epoch_utc":null},{"commit":"741431322ba2677355c361fcd6095ed8cd0a4349","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 30 16:45:36 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 30 16:45:36 2020 -0700","stats":{"files_changed":2,"insertions":46,"deletions":24,"files":["tests/test_ini.py","tests/test_kv.py"],"file_stats":[{"name":"tests/test_ini.py","lines_changed":24},{"name":"tests/test_kv.py","lines_changed":46}]},"message":"update tests for kv parser","epoch":1596152736,"epoch_utc":null},{"commit":"980beaaf41a04891f7c2f5daeb1e3a23d3c7ec19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 30 16:21:03 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 30 16:21:03 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2}]},"message":"fix docgen issue","epoch":1596151263,"epoch_utc":null},{"commit":"2205034e0906b333c259648f7a0e5392945f12ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 30 16:20:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 30 16:20:51 2020 -0700","stats":{"files_changed":8,"insertions":105,"deletions":31,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","jc/cli.py","jc/parsers/ini.py","jc/parsers/kv.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"EXAMPLES.md","lines_changed":53},{"name":"README.md","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/ini.py","lines_changed":4},{"name":"jc/parsers/kv.py","lines_changed":67},{"name":"setup.py","lines_changed":2}]},"message":"add kv parser","epoch":1596151251,"epoch_utc":null},{"commit":"82b9c87a66fce5d8626c56858a8c6f1f3326e7fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 30 16:20:24 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 30 16:20:24 2020 -0700","stats":{"files_changed":58,"insertions":345,"deletions":62,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/readme.md","docs/utils.md"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":6},{"name":"docs/parsers/airport_s.md","lines_changed":6},{"name":"docs/parsers/arp.md","lines_changed":6},{"name":"docs/parsers/blkid.md","lines_changed":6},{"name":"docs/parsers/crontab.md","lines_changed":6},{"name":"docs/parsers/crontab_u.md","lines_changed":6},{"name":"docs/parsers/csv.md","lines_changed":6},{"name":"docs/parsers/df.md","lines_changed":6},{"name":"docs/parsers/dig.md","lines_changed":6},{"name":"docs/parsers/dmidecode.md","lines_changed":6},{"name":"docs/parsers/du.md","lines_changed":6},{"name":"docs/parsers/env.md","lines_changed":6},{"name":"docs/parsers/file.md","lines_changed":6},{"name":"docs/parsers/free.md","lines_changed":6},{"name":"docs/parsers/fstab.md","lines_changed":6},{"name":"docs/parsers/group.md","lines_changed":6},{"name":"docs/parsers/gshadow.md","lines_changed":6},{"name":"docs/parsers/history.md","lines_changed":6},{"name":"docs/parsers/hosts.md","lines_changed":6},{"name":"docs/parsers/id.md","lines_changed":6},{"name":"docs/parsers/ifconfig.md","lines_changed":13},{"name":"docs/parsers/ini.md","lines_changed":6},{"name":"docs/parsers/iptables.md","lines_changed":6},{"name":"docs/parsers/jobs.md","lines_changed":6},{"name":"docs/parsers/kv.md","lines_changed":61},{"name":"docs/parsers/last.md","lines_changed":6},{"name":"docs/parsers/ls.md","lines_changed":6},{"name":"docs/parsers/lsblk.md","lines_changed":6},{"name":"docs/parsers/lsmod.md","lines_changed":6},{"name":"docs/parsers/lsof.md","lines_changed":6},{"name":"docs/parsers/mount.md","lines_changed":6},{"name":"docs/parsers/netstat.md","lines_changed":6},{"name":"docs/parsers/ntpq.md","lines_changed":6},{"name":"docs/parsers/passwd.md","lines_changed":6},{"name":"docs/parsers/ping.md","lines_changed":6},{"name":"docs/parsers/pip_list.md","lines_changed":6},{"name":"docs/parsers/pip_show.md","lines_changed":6},{"name":"docs/parsers/ps.md","lines_changed":6},{"name":"docs/parsers/route.md","lines_changed":6},{"name":"docs/parsers/shadow.md","lines_changed":6},{"name":"docs/parsers/ss.md","lines_changed":6},{"name":"docs/parsers/stat.md","lines_changed":6},{"name":"docs/parsers/sysctl.md","lines_changed":6},{"name":"docs/parsers/systemctl.md","lines_changed":6},{"name":"docs/parsers/systemctl_lj.md","lines_changed":6},{"name":"docs/parsers/systemctl_ls.md","lines_changed":6},{"name":"docs/parsers/systemctl_luf.md","lines_changed":6},{"name":"docs/parsers/timedatectl.md","lines_changed":6},{"name":"docs/parsers/tracepath.md","lines_changed":6},{"name":"docs/parsers/traceroute.md","lines_changed":9},{"name":"docs/parsers/uname.md","lines_changed":6},{"name":"docs/parsers/uptime.md","lines_changed":6},{"name":"docs/parsers/w.md","lines_changed":6},{"name":"docs/parsers/who.md","lines_changed":6},{"name":"docs/parsers/xml.md","lines_changed":6},{"name":"docs/parsers/yaml.md","lines_changed":6},{"name":"docs/readme.md","lines_changed":1},{"name":"docs/utils.md","lines_changed":5}]},"message":"update docs","epoch":1596151224,"epoch_utc":null},{"commit":"dda517a937323b9888e081aea1032a9d63c4a6bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 14:36:20 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 29 14:36:20 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":163,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":166}]},"message":"shorten more examples","epoch":1596058580,"epoch_utc":null},{"commit":"4e6d283b9eddf7759b4dd37bd643394ff73febd4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 14:27:13 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 29 14:27:13 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":65,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":65}]},"message":"shorten netstat example","epoch":1596058033,"epoch_utc":null},{"commit":"55acab05aa740dfd7534304f2678b60942cad116","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:55:16 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 29 11:55:16 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["changelog.txt => CHANGELOG"],"file_stats":[{"name":"changelog.txt => CHANGELOG","lines_changed":0}]},"message":"change name to CHANGELOG","epoch":1596048916,"epoch_utc":null},{"commit":"ed38a18d236cdb991779f4f148e42359c139e61c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:49:00 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 29 11:49:00 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":86,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":87}]},"message":"remove more examples","epoch":1596048540,"epoch_utc":null},{"commit":"95b3c11203d3dd0627c5eeca39fe1d145bf2d733","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:43:22 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 29 11:43:22 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":124,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":124}]},"message":"remove more examples","epoch":1596048202,"epoch_utc":null},{"commit":"dce318f4fd44b9c4013211bf233020e84566ddb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:40:47 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 29 11:40:47 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1537,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1540}]},"message":"remove examples to reduce file size","epoch":1596048047,"epoch_utc":null},{"commit":"85127f0fb8096192b19fca1f4ffe38ee391351be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:34:43 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 29 11:34:43 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["jc/examples.md => EXAMPLES.md"],"file_stats":[{"name":"jc/examples.md => EXAMPLES.md","lines_changed":0}]},"message":"move examples to root","epoch":1596047683,"epoch_utc":null},{"commit":"fb45058244ce879f12bbb5b7267b0fd63fef1d63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:32:18 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 29 11:32:18 2020 -0700","stats":{"files_changed":1,"insertions":2640,"deletions":0,"files":["jc/examples.md"],"file_stats":[{"name":"jc/examples.md","lines_changed":2640}]},"message":"add examples file","epoch":1596047538,"epoch_utc":null},{"commit":"45bb5ae389a00ed6a132a65c69ce76c7e5976858","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 28 11:03:41 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 28 11:03:41 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"spelling","epoch":1595959421,"epoch_utc":null},{"commit":"339238ab364d8735892a11cb16a62a651edae169","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 20:37:33 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 20:37:33 2020 -0700","stats":{"files_changed":8,"insertions":79,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py","tests/fixtures/centos-7.7/route-6-n.json","tests/fixtures/centos-7.7/route-6-n.out","tests/fixtures/centos-7.7/route-6.json","tests/fixtures/centos-7.7/route-6.out","tests/test_route.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/route-6-n.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/route-6-n.out","lines_changed":24},{"name":"tests/fixtures/centos-7.7/route-6.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/route-6.out","lines_changed":24},{"name":"tests/test_route.py","lines_changed":24}]},"message":"version bump and add route -6 tests","epoch":1595907453,"epoch_utc":null},{"commit":"032cda8b3db096b690d2557e3b918c50c716c543","merge":"690ac52 6badd3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 19:12:21 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Jul 27 19:12:21 2020 -0700","message":"Merge pull request #74 from kellyjonbrazil/dev\n\nDev v1.13.0","epoch":1595902341,"epoch_utc":null},{"commit":"6badd3fb1e1cf6d1ee99614fadc20d54be8039aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 19:02:23 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 19:02:23 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":3}]},"message":"add parser count test","epoch":1595901743,"epoch_utc":null},{"commit":"724d825745b6f1692eb3b068c3fb59d14892e690","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 19:02:11 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 19:02:11 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":4}]},"message":"add tracepath parser","epoch":1595901731,"epoch_utc":null},{"commit":"ff1e32ad2ee156f105f5069c6b14a65b22784dfa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 16:49:34 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 16:49:34 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1595893774,"epoch_utc":null},{"commit":"a5f97febd3066b9e95a18d6b73162a7d206c5845","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 16:47:41 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 16:47:41 2020 -0700","stats":{"files_changed":10,"insertions":132,"deletions":0,"files":["tests/fixtures/centos-7.7/tracepath.json","tests/fixtures/centos-7.7/tracepath6.json","tests/fixtures/freebsd12/traceroute.json","tests/fixtures/freebsd12/traceroute.out","tests/fixtures/freebsd12/traceroute6.json","tests/fixtures/freebsd12/traceroute6.out","tests/fixtures/osx-10.14.6/uname.out","tests/test_tracepath.py","tests/test_traceroute.py","tests/test_uname.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/tracepath.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/tracepath6.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/traceroute.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/traceroute.out","lines_changed":14},{"name":"tests/fixtures/freebsd12/traceroute6.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/traceroute6.out","lines_changed":34},{"name":"tests/fixtures/osx-10.14.6/uname.out","lines_changed":1},{"name":"tests/test_tracepath.py","lines_changed":46},{"name":"tests/test_traceroute.py","lines_changed":24},{"name":"tests/test_uname.py","lines_changed":9}]},"message":"update traceroute, tracepath, and uname tests","epoch":1595893661,"epoch_utc":null},{"commit":"5baa6cc865634142690e78596c640db35e110b29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:44:13 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 15:44:13 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add route parser update","epoch":1595889853,"epoch_utc":null},{"commit":"7a4f30b843d8f11711abbb8f9bb263f945ff87ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:37:44 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 15:37:44 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":6}]},"message":"fix for iface issue","epoch":1595889464,"epoch_utc":null},{"commit":"b2c385dc4f63e3e15f47e986deac0524967214a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:30:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 15:30:09 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":2}]},"message":"change 'if' to 'iface'","epoch":1595889009,"epoch_utc":null},{"commit":"5d5da8d33fa6ab77c745d338d1a2e2e8f2e4c697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:27:11 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 15:27:11 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":6}]},"message":"more fixes for ipv6 fix","epoch":1595888831,"epoch_utc":null},{"commit":"e60457157839daba385202906997dec48c9c4950","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:20:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 15:20:51 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":2}]},"message":"fix next_hop fix","epoch":1595888451,"epoch_utc":null},{"commit":"f9dacc3f95b32e1431914ae0b0dc5c8e8840d5a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:18:13 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 15:18:13 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":4}]},"message":"fixup for ipv6","epoch":1595888293,"epoch_utc":null},{"commit":"6086920332575cd7db1b38262a3b4ba8fbfae7ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:13:32 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 15:13:32 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]},"message":"update ParseError message","epoch":1595888012,"epoch_utc":null},{"commit":"f52f3163bcaf8d7e784f02505e81456e8240295b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 13:57:58 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 13:57:58 2020 -0700","stats":{"files_changed":1,"insertions":49,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":49}]},"message":"add tracepath example","epoch":1595883478,"epoch_utc":null},{"commit":"d18ff73e880c7d34957f2713857cc83094f914cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 13:51:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 13:51:51 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/tracepath.py"],"file_stats":[{"name":"jc/parsers/tracepath.py","lines_changed":4}]},"message":"update author info","epoch":1595883111,"epoch_utc":null},{"commit":"1e5d602caecd96c9056ad77f9fc50cf25bf6fdfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 13:48:46 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 13:48:46 2020 -0700","stats":{"files_changed":2,"insertions":288,"deletions":32,"files":["docs/parsers/tracepath.md","jc/parsers/tracepath.py"],"file_stats":[{"name":"docs/parsers/tracepath.md","lines_changed":122},{"name":"jc/parsers/tracepath.py","lines_changed":198}]},"message":"working tracepath parser","epoch":1595882926,"epoch_utc":null},{"commit":"12912521ecb376c36dfdd743b3c4195598fb9aac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 11:04:27 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 11:04:27 2020 -0700","stats":{"files_changed":2,"insertions":0,"deletions":11,"files":["docs/parsers/traceroute.md","jc/parsers/traceroute.py"],"file_stats":[{"name":"docs/parsers/traceroute.md","lines_changed":7},{"name":"jc/parsers/traceroute.py","lines_changed":4}]},"message":"doc update","epoch":1595873067,"epoch_utc":null},{"commit":"842ea3a94bec3fcab76257fdde5514d1de3d57fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 11:02:13 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 11:02:13 2020 -0700","stats":{"files_changed":2,"insertions":153,"deletions":0,"files":["docs/parsers/tracepath.md","jc/parsers/tracepath.py"],"file_stats":[{"name":"docs/parsers/tracepath.md","lines_changed":64},{"name":"jc/parsers/tracepath.py","lines_changed":89}]},"message":"add tracepath parser skeleton","epoch":1595872933,"epoch_utc":null},{"commit":"a8560dbc1598fa97de87594228b4cc10282d4197","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 11:01:57 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 11:01:57 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add tracepath","epoch":1595872917,"epoch_utc":null},{"commit":"a65e27540a8c5c7123d2fdf79fcbefa1e2f8afdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 11:01:45 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 11:01:45 2020 -0700","stats":{"files_changed":3,"insertions":1,"deletions":24,"files":["docgen.sh","docs/parsers/traceroute.md","jc/parsers/traceroute.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/traceroute.md","lines_changed":14},{"name":"jc/parsers/traceroute.py","lines_changed":10}]},"message":"update docs","epoch":1595872905,"epoch_utc":null},{"commit":"c3c5ed11e68938e35920144406d37ea3b21d63dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 10:33:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 10:33:40 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]},"message":"change name from tr to trparse","epoch":1595871220,"epoch_utc":null},{"commit":"ce24149335cd8ed1e8513a2cf040432fe42d86b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 10:33:25 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 10:33:25 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":1}]},"message":"formatting","epoch":1595871205,"epoch_utc":null},{"commit":"0314ca8c4831d24c169a0e4948421ecd638fd699","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 10:33:15 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 10:33:15 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add trparse acknowledgement","epoch":1595871195,"epoch_utc":null},{"commit":"ebd8ee49a9f43063850e30c745c8cae46ee13de1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 10:28:15 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 10:28:15 2020 -0700","stats":{"files_changed":1,"insertions":26,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":27}]},"message":"add key/value info to ini example","epoch":1595870895,"epoch_utc":null},{"commit":"38d10c97814ec69586c3b447c182f339772d6e22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 09:29:30 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 09:29:30 2020 -0700","stats":{"files_changed":1,"insertions":130,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":131}]},"message":"add ping and traceroute examples","epoch":1595867370,"epoch_utc":null},{"commit":"360106c24d24e6a9697c00a158a14aaa334a4b1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 09:23:01 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 09:23:01 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add tracepath","epoch":1595866981,"epoch_utc":null},{"commit":"ca470a5d02fd9fbaf05d8b3b3bb1ffe9f4cf5af3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 09:20:00 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 09:20:00 2020 -0700","stats":{"files_changed":2,"insertions":39,"deletions":0,"files":["tests/fixtures/centos-7.7/tracepath.out","tests/fixtures/centos-7.7/tracepath6.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/tracepath.out","lines_changed":34},{"name":"tests/fixtures/centos-7.7/tracepath6.out","lines_changed":5}]},"message":"add tracepath fixtures","epoch":1595866800,"epoch_utc":null},{"commit":"57f66e6b1d554ff20b72959f5ebb9e7b2feffed2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 09:19:48 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 09:19:48 2020 -0700","stats":{"files_changed":2,"insertions":14,"deletions":2,"files":["changelog.txt","jc/parsers/uname.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":14}]},"message":"add exception with hint to use \"uname -a\"","epoch":1595866788,"epoch_utc":null},{"commit":"e774f67924c0e6195f79829b2ac75ce95f76fbaa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:53:17 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 16:53:17 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["jc/parsers/ini.py"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":10}]},"message":"turn off interpolation and coerce None to ''","epoch":1595634797,"epoch_utc":null},{"commit":"ac10e576c167d20de259e47a6aa5b23fc998b4c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:29:27 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 16:29:27 2020 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/ini.md","jc/parsers/ini.py"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"jc/parsers/ini.py","lines_changed":4}]},"message":"spelling","epoch":1595633367,"epoch_utc":null},{"commit":"bcae0a99cd0ccce4ec8a67929f7c83a1095a5b88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:23:45 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 16:23:45 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"add key/value to ini description","epoch":1595633025,"epoch_utc":null},{"commit":"c73c2ff879b3ed7a3e6f04e53e0a729e4f00ed21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:23:30 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 16:23:30 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":8}]},"message":"add ping, traceroute, and ini update","epoch":1595633010,"epoch_utc":null},{"commit":"c39b1a3356881a11a8f6fe9432897e6d67162f07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:17:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 16:17:51 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"add ping, traceroute and update ini description","epoch":1595632671,"epoch_utc":null},{"commit":"125dc2d9e051a82a4a438afe2e520212338353f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:17:16 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 16:17:16 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":3,"files":["docs/parsers/ini.md"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":11}]},"message":"add info about key/value files to doc","epoch":1595632636,"epoch_utc":null},{"commit":"b7d4ddc7ced2c3aabf3a857b53a0bf1b62eb6a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:16:54 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 16:16:54 2020 -0700","stats":{"files_changed":5,"insertions":50,"deletions":0,"files":["tests/fixtures/generic/keyvalue-ifcfg.json","tests/fixtures/generic/keyvalue-ifcfg.txt","tests/fixtures/generic/keyvalue.json","tests/fixtures/generic/keyvalue.txt","tests/test_ini.py"],"file_stats":[{"name":"tests/fixtures/generic/keyvalue-ifcfg.json","lines_changed":1},{"name":"tests/fixtures/generic/keyvalue-ifcfg.txt","lines_changed":19},{"name":"tests/fixtures/generic/keyvalue.json","lines_changed":1},{"name":"tests/fixtures/generic/keyvalue.txt","lines_changed":5},{"name":"tests/test_ini.py","lines_changed":24}]},"message":"add tests for key/value files","epoch":1595632614,"epoch_utc":null},{"commit":"f5e546c6fa7cba166284a0976887d6b82451d3e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:16:24 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 16:16:24 2020 -0700","stats":{"files_changed":1,"insertions":33,"deletions":9,"files":["jc/parsers/ini.py"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":42}]},"message":"add support for simple key/value pairs","epoch":1595632584,"epoch_utc":null},{"commit":"928e39cd103b96b8c3ccc8d85c930ffb419296c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 14:16:41 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 14:16:41 2020 -0700","stats":{"files_changed":9,"insertions":104,"deletions":0,"files":["tests/fixtures/generic/traceroute1.json","tests/fixtures/generic/traceroute2.json","tests/fixtures/generic/traceroute3.json","tests/fixtures/generic/traceroute4.json","tests/fixtures/generic/traceroute5.json","tests/fixtures/generic/traceroute6.json","tests/fixtures/generic/traceroute7.json","tests/fixtures/generic/traceroute8.json","tests/test_traceroute.py"],"file_stats":[{"name":"tests/fixtures/generic/traceroute1.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute2.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute3.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute4.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute5.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute6.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute7.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute8.json","lines_changed":1},{"name":"tests/test_traceroute.py","lines_changed":96}]},"message":"add generic traceroute tests","epoch":1595625401,"epoch_utc":null},{"commit":"d0b7ea68a005daff313e44808b256656313a78a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 13:47:47 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 13:47:47 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":4}]},"message":"check for key in dictionary","epoch":1595623667,"epoch_utc":null},{"commit":"8444690133b6a7522822ab279e97ede6ded17ba9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 13:47:29 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 13:47:29 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":4}]},"message":"add traceroute","epoch":1595623649,"epoch_utc":null},{"commit":"c03c42d76703ff8f423cf3c10ea6254a27a685cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 13:47:23 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 13:47:23 2020 -0700","stats":{"files_changed":9,"insertions":76,"deletions":9,"files":["tests/fixtures/centos-7.7/traceroute.json","tests/fixtures/osx-10.14.6/traceroute-asn.json",".../osx-10.14.6/traceroute-mult-addresses.json","tests/fixtures/osx-10.14.6/traceroute-q.json","tests/fixtures/osx-10.14.6/traceroute.json",".../osx-10.14.6/traceroute6-mult-addresses.json","...-address.out => traceroute6-mult-addresses.out}","tests/fixtures/osx-10.14.6/traceroute6.json","tests/test_traceroute.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/traceroute.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/traceroute-asn.json","lines_changed":1},{"name":".../osx-10.14.6/traceroute-mult-addresses.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/traceroute-q.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/traceroute.json","lines_changed":1},{"name":".../osx-10.14.6/traceroute6-mult-addresses.json","lines_changed":1},{"name":"...-address.out => traceroute6-mult-addresses.out}","lines_changed":0},{"name":"tests/fixtures/osx-10.14.6/traceroute6.json","lines_changed":1},{"name":"tests/test_traceroute.py","lines_changed":78}]},"message":"add traceroute tests","epoch":1595623643,"epoch_utc":null},{"commit":"ab67688a00ac335d2a5603e9cadef8b565957911","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 16:45:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 16:45:09 2020 -0700","stats":{"files_changed":1,"insertions":55,"deletions":0,"files":["tests/test_traceroute.py"],"file_stats":[{"name":"tests/test_traceroute.py","lines_changed":55}]},"message":"add test skeleton","epoch":1595547909,"epoch_utc":null},{"commit":"5dcb7166daef3c53da65bba0d591672e64d3a90b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 16:44:57 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 16:44:57 2020 -0700","stats":{"files_changed":2,"insertions":169,"deletions":0,"files":["docgen.sh","docs/parsers/traceroute.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/traceroute.md","lines_changed":168}]},"message":"add traceroute doc","epoch":1595547897,"epoch_utc":null},{"commit":"14697b86d7fc1cfebb41e0fd2d9a9b9b60071d3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 15:48:08 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 15:48:08 2020 -0700","stats":{"files_changed":1,"insertions":24,"deletions":2,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":26}]},"message":"add MIT license","epoch":1595544488,"epoch_utc":null},{"commit":"4f4b6276d4bf798b17d996f39742bd0428fc2f19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 15:46:22 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 15:46:22 2020 -0700","stats":{"files_changed":1,"insertions":38,"deletions":33,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":71}]},"message":"update docstring","epoch":1595544382,"epoch_utc":null},{"commit":"7bc497e1291059ae7858c9d2bd2d9a1b4c030dd1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 15:42:33 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 15:42:33 2020 -0700","stats":{"files_changed":1,"insertions":117,"deletions":14,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":131}]},"message":"updated process() function to set integers and floats","epoch":1595544153,"epoch_utc":null},{"commit":"68a37a6a5a3f0ad0fa24c84d363050af9fa11f97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 12:48:33 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 12:48:33 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":4}]},"message":"remove unused function load()","epoch":1595533713,"epoch_utc":null},{"commit":"6f5cd1d7c5f76d7d4da42171fdc30daf9fe3996e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 12:03:21 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 12:03:21 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]},"message":"change to use f-string","epoch":1595531001,"epoch_utc":null},{"commit":"126b1b121ca10183dc7e9dece83b42907becad39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 11:31:56 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 11:31:56 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":0,"files":["tests/fixtures/generic/traceroute8.out"],"file_stats":[{"name":"tests/fixtures/generic/traceroute8.out","lines_changed":10}]},"message":"add traceroute6 example","epoch":1595529116,"epoch_utc":null},{"commit":"2341e456a012564f86d533d2748a5887d79995e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 11:31:35 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 11:31:35 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]},"message":"use ParseError instead of generic Exception","epoch":1595529095,"epoch_utc":null},{"commit":"72d80e95bb50ae2a7432082e65aba15235ba0955","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 10:52:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 10:52:40 2020 -0700","stats":{"files_changed":8,"insertions":115,"deletions":8,"files":["jc/parsers/traceroute.py","tests/fixtures/generic/traceroute1.out","tests/fixtures/generic/traceroute2.out","tests/fixtures/generic/traceroute3.out","tests/fixtures/generic/traceroute4.out","tests/fixtures/generic/traceroute5.out","tests/fixtures/generic/traceroute6.out","tests/fixtures/generic/traceroute7.out"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":9},{"name":"tests/fixtures/generic/traceroute1.out","lines_changed":16},{"name":"tests/fixtures/generic/traceroute2.out","lines_changed":13},{"name":"tests/fixtures/generic/traceroute3.out","lines_changed":20},{"name":"tests/fixtures/generic/traceroute4.out","lines_changed":7},{"name":"tests/fixtures/generic/traceroute5.out","lines_changed":10},{"name":"tests/fixtures/generic/traceroute6.out","lines_changed":31},{"name":"tests/fixtures/generic/traceroute7.out","lines_changed":17}]},"message":"remove unused regex patterns","epoch":1595526760,"epoch_utc":null},{"commit":"f5ec82440cd1c1b5ac9011d3517298d0cdcd8766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 10:19:56 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 10:19:56 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":11}]},"message":"simplify regex patterns","epoch":1595524796,"epoch_utc":null},{"commit":"c8e526ead35b868733f57b4c114062a48b78a817","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 22 17:23:24 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 22 17:23:24 2020 -0700","stats":{"files_changed":2,"insertions":12,"deletions":3,"files":["jc/parsers/traceroute.py","tests/fixtures/osx-10.14.6/traceroute-q.out"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":11},{"name":"tests/fixtures/osx-10.14.6/traceroute-q.out","lines_changed":4}]},"message":"fixes for bsd-style ipv6 output","epoch":1595463804,"epoch_utc":null},{"commit":"066adfb76479df7042bfb12bbb83b5dbd8a6d54c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 22 15:02:02 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 22 15:02:02 2020 -0700","stats":{"files_changed":7,"insertions":83,"deletions":7,"files":["jc/parsers/traceroute.py","tests/fixtures/centos-7.7/traceroute.out","tests/fixtures/osx-10.14.6/traceroute-asn.out",".../osx-10.14.6/traceroute-mult-addresses.out",".../fixtures/osx-10.14.6/traceroute-no-header.out",".../osx-10.14.6/traceroute6-multi-address.out","tests/fixtures/osx-10.14.6/traceroute6.out"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":30},{"name":"tests/fixtures/centos-7.7/traceroute.out","lines_changed":32},{"name":"tests/fixtures/osx-10.14.6/traceroute-asn.out","lines_changed":5},{"name":".../osx-10.14.6/traceroute-mult-addresses.out","lines_changed":5},{"name":".../fixtures/osx-10.14.6/traceroute-no-header.out","lines_changed":3},{"name":".../osx-10.14.6/traceroute6-multi-address.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/traceroute6.out","lines_changed":7}]},"message":"handle warning lines in the traceroute output","epoch":1595455322,"epoch_utc":null},{"commit":"5b444d4717b0b8528647e17e71d699907def3e18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 22 12:19:27 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 22 12:19:27 2020 -0700","stats":{"files_changed":3,"insertions":307,"deletions":0,"files":["jc/cli.py","jc/parsers/traceroute.py","tests/fixtures/osx-10.14.6/traceroute.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/traceroute.py","lines_changed":295},{"name":"tests/fixtures/osx-10.14.6/traceroute.out","lines_changed":11}]},"message":"add traceroute parser","epoch":1595445567,"epoch_utc":null},{"commit":"69c95adc8d59927c1c00b7e766ca5003b7b6454c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 22 09:06:11 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 22 09:06:11 2020 -0700","stats":{"files_changed":3,"insertions":81,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ping6-ip-dup.json","tests/fixtures/osx-10.14.6/ping6-ip-dup.out","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ping6-ip-dup.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-dup.out","lines_changed":68},{"name":"tests/test_ping.py","lines_changed":12}]},"message":"add osx ipv6 ping dup test","epoch":1595433971,"epoch_utc":null},{"commit":"2b0e0d8f5c1a6a5450e362971f9ad5892093b2ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 17:34:30 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 21 17:34:30 2020 -0700","stats":{"files_changed":3,"insertions":27,"deletions":0,"files":["tests/fixtures/centos-7.7/ping6-ip-dup.json","tests/fixtures/centos-7.7/ping6-ip-dup.out","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ping6-ip-dup.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-ip-dup.out","lines_changed":14},{"name":"tests/test_ping.py","lines_changed":12}]},"message":"add ipv6 dup test","epoch":1595378070,"epoch_utc":null},{"commit":"778d1bacbf8df523d434b22f5e1517955e4c15ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 15:16:39 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 21 15:16:39 2020 -0700","stats":{"files_changed":2,"insertions":28,"deletions":12,"files":["docs/parsers/ping.md","jc/parsers/ping.py"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":20},{"name":"jc/parsers/ping.py","lines_changed":20}]},"message":"update docs to add \"duplicates\" fields","epoch":1595369799,"epoch_utc":null},{"commit":"7e1b0410166c584775ebcd681a280ec7321560c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 15:12:43 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 21 15:12:43 2020 -0700","stats":{"files_changed":1,"insertions":24,"deletions":0,"files":["tests/test_ping.py"],"file_stats":[{"name":"tests/test_ping.py","lines_changed":24}]},"message":"add duplicate replies tests","epoch":1595369563,"epoch_utc":null},{"commit":"313b9b329ca6b674069718839f55a4bd7834db80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 15:05:54 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 21 15:05:54 2020 -0700","stats":{"files_changed":55,"insertions":55,"deletions":53,"files":["tests/fixtures/centos-7.7/ping-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping-hostname-O-p.json","tests/fixtures/centos-7.7/ping-hostname-O.json","tests/fixtures/centos-7.7/ping-ip-O-D.json","tests/fixtures/centos-7.7/ping-ip-O.json","tests/fixtures/centos-7.7/ping-ip-dup.json","tests/fixtures/centos-7.7/ping6-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping6-hostname-O-p.json","tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","tests/fixtures/centos-7.7/ping6-ip-O-p.json","tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping-hostname-O-p.json","tests/fixtures/fedora32/ping-hostname-O.json","tests/fixtures/fedora32/ping-ip-O-D.json","tests/fixtures/fedora32/ping-ip-O.json","tests/fixtures/fedora32/ping6-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping6-hostname-O-D-p.json","tests/fixtures/fedora32/ping6-hostname-O-p.json","tests/fixtures/fedora32/ping6-ip-O-D-p.json","tests/fixtures/fedora32/ping6-ip-O-p.json","tests/fixtures/freebsd12/ping-hostname-p.json","tests/fixtures/freebsd12/ping-hostname-s.json","tests/fixtures/freebsd12/ping-hostname.json","tests/fixtures/freebsd12/ping-ip-p.json","tests/fixtures/freebsd12/ping-ip-s.json","tests/fixtures/freebsd12/ping-ip.json","tests/fixtures/freebsd12/ping6-hostname-p.json","tests/fixtures/freebsd12/ping6-hostname-s.json","tests/fixtures/freebsd12/ping6-hostname.json","tests/fixtures/freebsd12/ping6-ip-p.json","tests/fixtures/freebsd12/ping6-ip-s.json","tests/fixtures/freebsd12/ping6-ip.json","tests/fixtures/osx-10.14.6/ping-hostname-p.json","tests/fixtures/osx-10.14.6/ping-hostname-s.json","tests/fixtures/osx-10.14.6/ping-hostname.json","tests/fixtures/osx-10.14.6/ping-ip-dup.json","tests/fixtures/osx-10.14.6/ping-ip-p.json","tests/fixtures/osx-10.14.6/ping-ip-s.json","tests/fixtures/osx-10.14.6/ping-ip.json","tests/fixtures/osx-10.14.6/ping6-hostname-p.json","tests/fixtures/osx-10.14.6/ping6-hostname-s.json","tests/fixtures/osx-10.14.6/ping6-hostname.json","tests/fixtures/osx-10.14.6/ping6-ip-p.json","tests/fixtures/osx-10.14.6/ping6-ip-s.json","tests/fixtures/osx-10.14.6/ping6-ip.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping-hostname-O.json","tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","tests/fixtures/ubuntu-18.04/ping-ip-O.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ping-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-hostname-O.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-ip-O-D.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-ip-O.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-ip-dup.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping6-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-hostname-O.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-ip-O-D.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-ip-O.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-ip-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-ip-O-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-hostname-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-hostname-s.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-hostname.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-ip-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-ip-s.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-ip.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-hostname-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-hostname-s.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-hostname.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-ip-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-ip-s.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-ip.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-hostname-p.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-hostname-s.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-hostname.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-ip-dup.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-p.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-ip-s.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-ip.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-p.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-s.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-p.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-s.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-ip.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json","lines_changed":2}]},"message":"update fixtures for added 'duplicate' fields","epoch":1595369154,"epoch_utc":null},{"commit":"6830062256fbc453f87224f7ab8c10e4494b5a83","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 14:47:25 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 21 14:47:25 2020 -0700","stats":{"files_changed":4,"insertions":112,"deletions":24,"files":["docs/parsers/ping.md","jc/parsers/ping.py","tests/fixtures/centos-7.7/ping-ip-dup.out","tests/fixtures/osx-10.14.6/ping-ip-dup.out"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":6},{"name":"jc/parsers/ping.py","lines_changed":83},{"name":"tests/fixtures/centos-7.7/ping-ip-dup.out","lines_changed":27},{"name":"tests/fixtures/osx-10.14.6/ping-ip-dup.out","lines_changed":20}]},"message":"add support for duplicate replies","epoch":1595368045,"epoch_utc":null},{"commit":"323072c9827c41c5d74433504b5efceb846cfe09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 09:02:44 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 21 09:02:44 2020 -0700","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/ping.md","jc/parsers/ping.py"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":1},{"name":"jc/parsers/ping.py","lines_changed":1}]},"message":"add source_ip to schema doc","epoch":1595347364,"epoch_utc":null},{"commit":"8719d96bddec80187e7ba3286ba93bfec8465744","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 16:54:43 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 20 16:54:43 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"change description","epoch":1595289283,"epoch_utc":null},{"commit":"dd5d318ab5bbb1027dd600fd3b0b6ec9b8adfdc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 16:25:20 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 20 16:25:20 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":6}]},"message":"version bump and add ping command","epoch":1595287520,"epoch_utc":null},{"commit":"d6dc7f5e65c097895c19000e59e8803a3b350fdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 16:11:18 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 20 16:11:18 2020 -0700","stats":{"files_changed":13,"insertions":135,"deletions":29,"files":["tests/fixtures/osx-10.14.6/ping-hostname-p.json","tests/fixtures/osx-10.14.6/ping-hostname-s.json","tests/fixtures/osx-10.14.6/ping-hostname.json","tests/fixtures/osx-10.14.6/ping-ip-p.json","tests/fixtures/osx-10.14.6/ping-ip-s.json","tests/fixtures/osx-10.14.6/ping-ip.json","tests/fixtures/osx-10.14.6/ping6-hostname-p.json","tests/fixtures/osx-10.14.6/ping6-hostname-s.json","tests/fixtures/osx-10.14.6/ping6-hostname.json","tests/fixtures/osx-10.14.6/ping6-ip-p.json","tests/fixtures/osx-10.14.6/ping6-ip-s.json","tests/fixtures/osx-10.14.6/ping6-ip.json","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ping-hostname-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-hostname-s.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-hostname.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-s.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-s.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-s.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":152}]},"message":"add osx ping tests","epoch":1595286678,"epoch_utc":null},{"commit":"c203664eb5aafa0afa3101b79e3fd13b3e009ec5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 15:46:27 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 20 15:46:27 2020 -0700","stats":{"files_changed":13,"insertions":171,"deletions":9,"files":["tests/fixtures/freebsd12/ping-hostname-p.json","tests/fixtures/freebsd12/ping-hostname-s.json","tests/fixtures/freebsd12/ping-hostname.json","tests/fixtures/freebsd12/ping-ip-p.json","tests/fixtures/freebsd12/ping-ip-s.json","tests/fixtures/freebsd12/ping-ip.json","tests/fixtures/freebsd12/ping6-hostname-p.json","tests/fixtures/freebsd12/ping6-hostname-s.json","tests/fixtures/freebsd12/ping6-hostname.json","tests/fixtures/freebsd12/ping6-ip-p.json","tests/fixtures/freebsd12/ping6-ip-s.json","tests/fixtures/freebsd12/ping6-ip.json","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/ping-hostname-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-hostname-s.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-hostname.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-s.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-hostname-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-hostname-s.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-hostname.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-s.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":168}]},"message":"freebsd ping tests","epoch":1595285187,"epoch_utc":null},{"commit":"19ecf1fa19e9fa0873002baf07fa670b71ed7752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 14:35:41 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 20 14:35:41 2020 -0700","stats":{"files_changed":11,"insertions":118,"deletions":0,"files":["tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping-hostname-O-p.json","tests/fixtures/fedora32/ping-hostname-O.json","tests/fixtures/fedora32/ping-ip-O-D.json","tests/fixtures/fedora32/ping-ip-O.json",".../fixtures/fedora32/ping6-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping6-hostname-O-D-p.json","tests/fixtures/fedora32/ping6-hostname-O-p.json","tests/fixtures/fedora32/ping6-ip-O-D-p.json","tests/fixtures/fedora32/ping6-ip-O-p.json","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-hostname-O.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-ip-O-D.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-ip-O.json","lines_changed":1},{"name":".../fixtures/fedora32/ping6-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping6-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping6-ip-O-D-p.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping6-ip-O-p.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":108}]},"message":"add Fedora32 tests","epoch":1595280941,"epoch_utc":null},{"commit":"b8deb0426cc23333c0e0a9dc3776d9761d99abb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 13:51:39 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 20 13:51:39 2020 -0700","stats":{"files_changed":11,"insertions":119,"deletions":8,"files":[".../ubuntu-18.04/ping-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping-hostname-O.json","tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","tests/fixtures/ubuntu-18.04/ping-ip-O.json",".../ubuntu-18.04/ping6-hostname-O-D-p-s.json",".../ubuntu-18.04/ping6-hostname-O-D-p.json",".../fixtures/ubuntu-18.04/ping6-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json","tests/test_ping.py"],"file_stats":[{"name":".../ubuntu-18.04/ping-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-hostname-O-D-p-s.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-hostname-O-D-p.json","lines_changed":1},{"name":".../fixtures/ubuntu-18.04/ping6-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":117}]},"message":"add ubuntu ping tests","epoch":1595278299,"epoch_utc":null},{"commit":"3b8371f0208a097cb8a1c026348d3842e6702b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 12:49:05 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 20 12:49:05 2020 -0700","stats":{"files_changed":10,"insertions":202,"deletions":0,"files":[".../fixtures/centos-7.7/ping-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping-hostname-O-p.json","tests/fixtures/centos-7.7/ping-hostname-O.json","tests/fixtures/centos-7.7/ping-ip-O-D.json","tests/fixtures/centos-7.7/ping-ip-O.json",".../centos-7.7/ping6-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping6-hostname-O-p.json","tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","tests/fixtures/centos-7.7/ping6-ip-O-p.json","tests/test_ping.py"],"file_stats":[{"name":".../fixtures/centos-7.7/ping-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-hostname-O.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-ip-O-D.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-ip-O.json","lines_changed":1},{"name":".../centos-7.7/ping6-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-p.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":193}]},"message":"add centos ping tests","epoch":1595274545,"epoch_utc":null},{"commit":"20bb1cdf396abdb3707b34fa146cbe913f9bbd6f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 11:53:06 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 20 11:53:06 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":8}]},"message":"add TypeError to except for None values","epoch":1595271186,"epoch_utc":null},{"commit":"301daa48d0bfc28f97c8e46f028f8c6b875bf34e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 15:30:54 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 15:30:54 2020 -0700","stats":{"files_changed":2,"insertions":114,"deletions":16,"files":["docs/parsers/ping.md","jc/parsers/ping.py"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":128},{"name":"jc/parsers/ping.py","lines_changed":2}]},"message":"update documentation","epoch":1595197854,"epoch_utc":null},{"commit":"8421ec88033e02f472e4961d87551a0352663a16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 15:19:47 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 15:19:47 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":4}]},"message":"remove cygwin compatibility","epoch":1595197187,"epoch_utc":null},{"commit":"74211eb0129f6aa655a38ba4d4d8844d81441107","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 15:16:04 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 15:16:04 2020 -0700","stats":{"files_changed":1,"insertions":82,"deletions":5,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":87}]},"message":"add examples","epoch":1595196964,"epoch_utc":null},{"commit":"60bd42f298f309cbec6d24c9543ea3d51bd73b18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 15:13:52 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 15:13:52 2020 -0700","stats":{"files_changed":1,"insertions":59,"deletions":11,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":70}]},"message":"add process() logic","epoch":1595196832,"epoch_utc":null},{"commit":"14bdd74526e400997c5bc247ea35ed40799e83ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 14:46:02 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 14:46:02 2020 -0700","stats":{"files_changed":12,"insertions":100,"deletions":0,"files":["tests/fixtures/freebsd12/ping-hostname-p.out","tests/fixtures/freebsd12/ping-hostname-s.out","tests/fixtures/freebsd12/ping-hostname.out","tests/fixtures/freebsd12/ping-ip-p.out","tests/fixtures/freebsd12/ping-ip-s.out","tests/fixtures/freebsd12/ping-ip.out","tests/fixtures/freebsd12/ping6-hostname-p.out","tests/fixtures/freebsd12/ping6-hostname-s.out","tests/fixtures/freebsd12/ping6-hostname.out","tests/fixtures/freebsd12/ping6-ip-p.out","tests/fixtures/freebsd12/ping6-ip-s.out","tests/fixtures/freebsd12/ping6-ip.out"],"file_stats":[{"name":"tests/fixtures/freebsd12/ping-hostname-p.out","lines_changed":9},{"name":"tests/fixtures/freebsd12/ping-hostname-s.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping-hostname.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping-ip-p.out","lines_changed":9},{"name":"tests/fixtures/freebsd12/ping-ip-s.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping-ip.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping6-hostname-p.out","lines_changed":9},{"name":"tests/fixtures/freebsd12/ping6-hostname-s.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping6-hostname.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping6-ip-p.out","lines_changed":9},{"name":"tests/fixtures/freebsd12/ping6-ip-s.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping6-ip.out","lines_changed":8}]},"message":"add ping test fixtures","epoch":1595195162,"epoch_utc":null},{"commit":"fb0f3eda04a4b1dbb81da7d5791cbfe746bfd617","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 14:45:50 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 14:45:50 2020 -0700","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["tests/fixtures/create_fixtures.sh"],"file_stats":[{"name":"tests/fixtures/create_fixtures.sh","lines_changed":16}]},"message":"add ping commands","epoch":1595195150,"epoch_utc":null},{"commit":"91ee6e6701307363336a39f9e16641465ddd05c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 14:18:56 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 14:18:56 2020 -0700","stats":{"files_changed":12,"insertions":100,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ping-hostname-p.out","tests/fixtures/osx-10.14.6/ping-hostname-s.out","tests/fixtures/osx-10.14.6/ping-hostname.out","tests/fixtures/osx-10.14.6/ping-ip-p.out","tests/fixtures/osx-10.14.6/ping-ip-s.out","tests/fixtures/osx-10.14.6/ping-ip.out","tests/fixtures/osx-10.14.6/ping6-hostname-p.out","tests/fixtures/osx-10.14.6/ping6-hostname-s.out","tests/fixtures/osx-10.14.6/ping6-hostname.out","tests/fixtures/osx-10.14.6/ping6-ip-p.out","tests/fixtures/osx-10.14.6/ping6-ip-s.out","tests/fixtures/osx-10.14.6/ping6-ip.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ping-hostname-p.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/ping-hostname-s.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping-hostname.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping-ip-p.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/ping-ip-s.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping-ip.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-p.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-s.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-p.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-s.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping6-ip.out","lines_changed":8}]},"message":"add osx ping test fixtures","epoch":1595193536,"epoch_utc":null},{"commit":"51f4e6927c68a7e2a26954f564d10d316b98a984","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 14:18:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 14:18:40 2020 -0700","stats":{"files_changed":1,"insertions":12,"deletions":3,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":15}]},"message":"add support for pattern in osx/bsd","epoch":1595193520,"epoch_utc":null},{"commit":"94988d86674293faddc6f7e7c82575738d2dc791","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 13:50:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 13:50:40 2020 -0700","stats":{"files_changed":10,"insertions":257,"deletions":0,"files":["tests/fixtures/fedora32/ping-hostname-O-D-p-s.out","tests/fixtures/fedora32/ping-hostname-O-p.out","tests/fixtures/fedora32/ping-hostname-O.out","tests/fixtures/fedora32/ping-ip-O-D.out","tests/fixtures/fedora32/ping-ip-O.out","tests/fixtures/fedora32/ping6-hostname-O-D-p-s.out","tests/fixtures/fedora32/ping6-hostname-O-D-p.out","tests/fixtures/fedora32/ping6-hostname-O-p.out","tests/fixtures/fedora32/ping6-ip-O-D-p.out","tests/fixtures/fedora32/ping6-ip-O-p.out"],"file_stats":[{"name":"tests/fixtures/fedora32/ping-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping-hostname-O.out","lines_changed":25},{"name":"tests/fixtures/fedora32/ping-ip-O-D.out","lines_changed":25},{"name":"tests/fixtures/fedora32/ping-ip-O.out","lines_changed":25},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping6-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping6-ip-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping6-ip-O-p.out","lines_changed":26}]},"message":"add fedora ping fixtures","epoch":1595191840,"epoch_utc":null},{"commit":"fe36f5a98cd3ee7753e250b6553e4453d971f929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 12:56:53 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 12:56:53 2020 -0700","stats":{"files_changed":13,"insertions":318,"deletions":0,"files":["tests/fixtures/centos-7.7/ping-ip-O-D.out","tests/fixtures/centos-7.7/ping-ip-O.out","tests/fixtures/create_fixtures.sh",".../ubuntu-18.04/ping-hostname-O-D-p-s.out","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.out","tests/fixtures/ubuntu-18.04/ping-hostname-O.out","tests/fixtures/ubuntu-18.04/ping-ip-O-D.out","tests/fixtures/ubuntu-18.04/ping-ip-O.out",".../ubuntu-18.04/ping6-hostname-O-D-p-s.out",".../fixtures/ubuntu-18.04/ping6-hostname-O-D-p.out","tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.out","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.out","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ping-ip-O-D.out","lines_changed":25},{"name":"tests/fixtures/centos-7.7/ping-ip-O.out","lines_changed":25},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":12},{"name":".../ubuntu-18.04/ping-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O.out","lines_changed":25},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O-D.out","lines_changed":25},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O.out","lines_changed":25},{"name":".../ubuntu-18.04/ping6-hostname-O-D-p-s.out","lines_changed":26},{"name":".../fixtures/ubuntu-18.04/ping6-hostname-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-p.out","lines_changed":25}]},"message":"add fixtures for ping","epoch":1595188613,"epoch_utc":null},{"commit":"f9eb18b9271b2428dd82f2dc26d3fa0435dad81d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 12:56:34 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 12:56:34 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":17}]},"message":"change 'request_timeout' field to 'type', fix compatibility, other formatting fixes","epoch":1595188594,"epoch_utc":null},{"commit":"cc60f3674822c644933f286a0364b09d7e2a60b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jul 18 12:35:46 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Jul 18 12:35:46 2020 -0700","stats":{"files_changed":3,"insertions":67,"deletions":1,"files":["docgen.sh","docs/parsers/ping.md","jc/cli.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ping.md","lines_changed":64},{"name":"jc/cli.py","lines_changed":3}]},"message":"add ping parser","epoch":1595100946,"epoch_utc":null},{"commit":"604ade791f7bd33b37f64916befba27a2ea08b5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 17 15:57:07 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 17 15:57:07 2020 -0700","stats":{"files_changed":8,"insertions":506,"deletions":0,"files":["jc/parsers/ping.py",".../fixtures/centos-7.7/ping-hostname-O-D-p-s.out","tests/fixtures/centos-7.7/ping-hostname-O-p.out","tests/fixtures/centos-7.7/ping-hostname-O.out",".../fixtures/centos-7.7/ping6-hostname-O-D-p-s.out","tests/fixtures/centos-7.7/ping6-hostname-O-p.out","tests/fixtures/centos-7.7/ping6-ip-O-D-p.out","tests/fixtures/centos-7.7/ping6-ip-O-p.out"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":325},{"name":".../fixtures/centos-7.7/ping-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping-hostname-O.out","lines_changed":25},{"name":".../fixtures/centos-7.7/ping6-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping6-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-p.out","lines_changed":26}]},"message":"add ping parser","epoch":1595026627,"epoch_utc":null},{"commit":"690ac52a917200e46eac2feafc9f504f2734301c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 13 07:18:48 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 13 07:18:48 2020 -0700","stats":{"files_changed":1,"insertions":261,"deletions":0,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":261}]},"message":"add man page","epoch":1594649928,"epoch_utc":null},{"commit":"34ed772775f1f02ed148f24a3bfff532bc811607","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jul 11 09:46:47 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Jul 11 09:46:47 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1594486007,"epoch_utc":null},{"commit":"d5ab95571f64f55d8194e9e5592ac538bb535229","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jul 11 09:44:08 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Jul 11 09:44:08 2020 -0700","stats":{"files_changed":1,"insertions":26,"deletions":11,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":37}]},"message":"fix tests when using older versions of pygments","epoch":1594485848,"epoch_utc":null},{"commit":"ffb3a0ee5fb30a3f61d6cbedf877ab04acdbf624","merge":"fde0bc8 94b12b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 16:34:56 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Jul 10 16:34:56 2020 -0700","message":"Merge pull request #73 from kellyjonbrazil/dev\n\nDev v1.12.0","epoch":1594424096,"epoch_utc":null},{"commit":"94b12b57aaa56170d1f31f4910fd1239f88de137","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 16:30:08 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 16:30:08 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"spelling","epoch":1594423808,"epoch_utc":null},{"commit":"6d149e84571d5d6dd1d8a1f219ba299de5173779","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 16:25:03 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 16:25:03 2020 -0700","stats":{"files_changed":2,"insertions":8,"deletions":1,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":7},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1594423503,"epoch_utc":null},{"commit":"1ad89c90d890039b817f65b2635db1b5e849a9e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 15:58:02 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 15:58:02 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add pacman","epoch":1594421882,"epoch_utc":null},{"commit":"fb71c7b020bc1eda9484595f30b0200a4f59aa45","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 15:49:35 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 15:49:35 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":2}]},"message":"function name spelling","epoch":1594421375,"epoch_utc":null},{"commit":"28ed17ad3bce866e5dc0179ef5de43380ac6ace1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 15:45:21 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 15:45:21 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":1}]},"message":"add parser_count test to test_cli_about_jc","epoch":1594421121,"epoch_utc":null},{"commit":"0c2a4e2bf71dca50d4a9bb27ca99944909c022ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 15:35:05 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 15:35:05 2020 -0700","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":37}]},"message":"add cli tests","epoch":1594420505,"epoch_utc":null},{"commit":"62bec30de2f1a303f2ec411d89f7f9f9c6d1abaf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 14:44:50 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 14:44:50 2020 -0700","stats":{"files_changed":1,"insertions":20,"deletions":0,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":20}]},"message":"add json_out tests","epoch":1594417490,"epoch_utc":null},{"commit":"3fced77e4e258dbf7db94a313e599c830a597b49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 12:23:48 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 12:23:48 2020 -0700","stats":{"files_changed":1,"insertions":98,"deletions":1,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":99}]},"message":"add set_env_colors tests","epoch":1594409028,"epoch_utc":null},{"commit":"a09d1d8b7687912610598c88d172733d5e29b1ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 12:23:25 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 12:23:25 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":13}]},"message":"move environment variable assignment to main() to simplify tests","epoch":1594409005,"epoch_utc":null},{"commit":"8f4243fbd8d70ca9fd019e984c564e37c81e07db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 10:54:34 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 10:54:34 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"formatting","epoch":1594403674,"epoch_utc":null},{"commit":"47aaf20549ea238443427e69d5841d6996b7afab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 10:50:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 10:50:51 2020 -0700","stats":{"files_changed":1,"insertions":17,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":17}]},"message":"add sysctl command parser","epoch":1594403451,"epoch_utc":null},{"commit":"0c5289ea50e4d3d35e80147b4cad32434c19a2a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 10:47:23 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 10:47:23 2020 -0700","stats":{"files_changed":3,"insertions":72,"deletions":2,"files":["tests/fixtures/freebsd12/sysctl-a.json","tests/fixtures/osx-10.14.6/sysctl-a.json","tests/test_sysctl.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/sysctl-a.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/sysctl-a.json","lines_changed":2},{"name":"tests/test_sysctl.py","lines_changed":70}]},"message":"add sysctl tests","epoch":1594403243,"epoch_utc":null},{"commit":"3e53323514906fb84abfaeed0c2ee1fd9090ad8d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 09:58:56 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 09:58:56 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":2}]},"message":"don't filter out empty lines","epoch":1594400336,"epoch_utc":null},{"commit":"a5ee9861b9b9b479aee59ea5b1d75f20d7c3c8e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 09:28:32 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 09:28:32 2020 -0700","stats":{"files_changed":3,"insertions":3785,"deletions":1,"files":["tests/fixtures/freebsd12/sysctl-a.json","tests/fixtures/freebsd12/sysctl-a.out","tests/fixtures/osx-10.14.6/sysctl-a.json"],"file_stats":[{"name":"tests/fixtures/freebsd12/sysctl-a.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/sysctl-a.out","lines_changed":3783},{"name":"tests/fixtures/osx-10.14.6/sysctl-a.json","lines_changed":2}]},"message":"update fixtures","epoch":1594398512,"epoch_utc":null},{"commit":"feb8ca76545cba4fd0927273ddf90a77df994006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 09:28:20 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 09:28:20 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/sysctl.md"],"file_stats":[{"name":"docs/parsers/sysctl.md","lines_changed":2}]},"message":"spelling","epoch":1594398500,"epoch_utc":null},{"commit":"a7abe4473b90c512466db9ae98cfac585689fe2a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 09:03:04 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 09:03:04 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":2}]},"message":"spelling","epoch":1594396984,"epoch_utc":null},{"commit":"780b9b61dec3e142e46c9a82146d2af4e1144123","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 08:30:31 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 08:30:31 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":6}]},"message":"specify IndexError exception in try/except block","epoch":1594395031,"epoch_utc":null},{"commit":"19ace36ffa659bedf0ba2e43572c9e253592b2e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 08:21:30 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 08:21:30 2020 -0700","stats":{"files_changed":4,"insertions":2167,"deletions":0,"files":["tests/fixtures/osx-10.14.6/sysctl-a.json","tests/fixtures/osx-10.14.6/sysctl-a.out","tests/fixtures/ubuntu-18.04/sysctl-a.json","tests/fixtures/ubuntu-18.04/sysctl-a.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/sysctl-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/sysctl-a.out","lines_changed":1287},{"name":"tests/fixtures/ubuntu-18.04/sysctl-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/sysctl-a.out","lines_changed":878}]},"message":"add fixtures","epoch":1594394490,"epoch_utc":null},{"commit":"5fff8afc9f47f8cc6db8ed3613b90b5cdc683b43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 08:21:15 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 08:21:15 2020 -0700","stats":{"files_changed":1,"insertions":33,"deletions":11,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":44}]},"message":"add fixes for freebsd where values can be on separate lines under the key","epoch":1594394475,"epoch_utc":null},{"commit":"4ad230c9279c5eb6c8ed6baf7254b8e9328e5af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 16:35:36 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 9 16:35:36 2020 -0700","stats":{"files_changed":4,"insertions":929,"deletions":14,"files":["docs/parsers/sysctl.md","jc/parsers/sysctl.py","tests/fixtures/centos-7.7/sysctl-a.json","tests/fixtures/centos-7.7/sysctl-a.out"],"file_stats":[{"name":"docs/parsers/sysctl.md","lines_changed":12},{"name":"jc/parsers/sysctl.py","lines_changed":12},{"name":"tests/fixtures/centos-7.7/sysctl-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sysctl-a.out","lines_changed":918}]},"message":"doc update and add test fixtures","epoch":1594337736,"epoch_utc":null},{"commit":"dd98eb1ec8f451eb87a5094e76a7f758dee3fc69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 16:25:41 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 9 16:25:41 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":7,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":11}]},"message":"append duplicate key values to original key instead of adding unique keys","epoch":1594337141,"epoch_utc":null},{"commit":"c6baf42e72b4f41ed511e7db943297d03a39c0d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 16:18:33 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 9 16:18:33 2020 -0700","stats":{"files_changed":3,"insertions":94,"deletions":7,"files":["docgen.sh","docs/parsers/sysctl.md","jc/parsers/sysctl.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/sysctl.md","lines_changed":86},{"name":"jc/parsers/sysctl.py","lines_changed":14}]},"message":"doc updates","epoch":1594336713,"epoch_utc":null},{"commit":"e2bac97d563e5ef771ccd8ed1e5c42cbf588b120","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 14:51:15 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 9 14:51:15 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":12}]},"message":"fix for multiple identical keys in sysctl output","epoch":1594331475,"epoch_utc":null},{"commit":"d112ee94d0ec534828c8508d0fb833b768975990","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 14:26:35 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 9 14:26:35 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":4,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":12}]},"message":"use try/except and add support for floats in process()","epoch":1594329995,"epoch_utc":null},{"commit":"27b21b2fafab912f21b88b66c7f817cbce155765","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 11:11:29 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 9 11:11:29 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":7,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":15}]},"message":"formatting and docstring updates","epoch":1594318289,"epoch_utc":null},{"commit":"8c96d5cd20448a4f7f9736c4d489d6ecc3068ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 10:59:36 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 9 10:59:36 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["requirements.txt"],"file_stats":[{"name":"requirements.txt","lines_changed":2}]},"message":"reduce pygments version requirement","epoch":1594317576,"epoch_utc":null},{"commit":"c29ed3fd695f725005333db5e6e2cd844bb4ca14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 10:54:49 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 9 10:54:49 2020 -0700","stats":{"files_changed":1,"insertions":14,"deletions":13,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":27}]},"message":"formatting of quotation marks and docstrings","epoch":1594317289,"epoch_utc":null},{"commit":"cedf603f121636bdfa95432059c3c275c3ea3e9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 09:59:00 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 9 09:59:00 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]},"message":"minor formatting","epoch":1594313940,"epoch_utc":null},{"commit":"279161c36f288c27a9789054ae372fe8ceb58a94","merge":"bc7116c ce0b43d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 09:48:58 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Jul 9 09:48:58 2020 -0700","message":"Merge pull request #72 from duelafn/pygments-2.3\n\nSupport older pygments","epoch":1594313338,"epoch_utc":null},{"commit":"ce0b43d919f07d96d1b94e9d14d03e935e80011d","author":"Dean Serenevy","author_email":"dean@serenevy.net","date":"Thu Jul 9 12:44:41 2020 -0400","commit_by":"Dean Serenevy","commit_by_email":"dean@serenevy.net","commit_by_date":"Thu Jul 9 12:44:41 2020 -0400","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"Remove dependency on 3rd party packaging library","epoch":1594323881,"epoch_utc":null},{"commit":"ddafa5bf06066bab8e9587be902d6752fcf51605","author":"Dean Serenevy","author_email":"dean@serenevy.net","date":"Thu Jul 9 11:27:01 2020 -0400","commit_by":"Dean Serenevy","commit_by_email":"dean@serenevy.net","commit_by_date":"Thu Jul 9 11:39:34 2020 -0400","stats":{"files_changed":2,"insertions":47,"deletions":7,"files":["jc/cli.py","setup.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":52},{"name":"setup.py","lines_changed":2}]},"message":"Support older pygments","epoch":1594319221,"epoch_utc":null},{"commit":"bc7116c31bacf3159aef775fd0e615187420b010","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 08:30:10 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 9 08:30:10 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":8,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":15}]},"message":"fix JC_COLORS env bug and simplify set_env_colors()","epoch":1594308610,"epoch_utc":null},{"commit":"53b709272115e769dac905296fa3b000c1cdd66a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 8 16:40:28 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 8 16:40:28 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":11,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":22}]},"message":"remove side-effects from functions and print in main()","epoch":1594251628,"epoch_utc":null},{"commit":"beb9174b1b35937ae1fb99778369ae643a8f1005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 8 15:42:06 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 8 15:42:06 2020 -0700","stats":{"files_changed":1,"insertions":123,"deletions":0,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":123}]},"message":"add sysctl parser","epoch":1594248126,"epoch_utc":null},{"commit":"aea41ed341c8d53cc07c35e8044e8f816ddd2fed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 8 15:41:46 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 8 15:41:46 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":11}]},"message":"move verbose_debug enable earlier in code to catch more issues. add sysctl and version bump","epoch":1594248106,"epoch_utc":null},{"commit":"d789494cb1f691aa352419aaefc692f654477177","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 8 05:59:19 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 8 05:59:19 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/tracebackplus.py"],"file_stats":[{"name":"jc/tracebackplus.py","lines_changed":2}]},"message":"change type check to use isinstance","epoch":1594213159,"epoch_utc":null},{"commit":"608e7b4cff081f92177e4151ffa1a91a4a6895ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 6 10:52:12 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 6 10:52:12 2020 -0700","stats":{"files_changed":1,"insertions":61,"deletions":0,"files":["jc/tracebackplus.py"],"file_stats":[{"name":"jc/tracebackplus.py","lines_changed":61}]},"message":"add license info","epoch":1594057932,"epoch_utc":null},{"commit":"4ee199c02a78c2707c5d1427d7c8fae56df5671c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 6 10:41:01 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 6 10:41:01 2020 -0700","stats":{"files_changed":2,"insertions":189,"deletions":3,"files":["jc/cli.py","jc/tracebackplus.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6},{"name":"jc/tracebackplus.py","lines_changed":186}]},"message":"use tracebackplus instead of cgitb since cgitb is depricated","epoch":1594057261,"epoch_utc":null},{"commit":"fbf47d408501dadda4671fb530f5e11859e85d53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 1 13:28:58 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 1 13:28:58 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add arch linux","epoch":1593635338,"epoch_utc":null},{"commit":"5a238e4b4204f0552327534ef798c28d3ad4f578","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 1 09:11:32 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 1 09:11:32 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"remove updates-testing from fedora command","epoch":1593619892,"epoch_utc":null},{"commit":"f852b8246a8f9e5f7d9144fed3a0daa4eddfe035","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 11:50:37 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jun 30 11:50:37 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":3}]},"message":"wrap warning message","epoch":1593543037,"epoch_utc":null},{"commit":"88140d929a500ee78f807862c4912c399df2a460","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 11:37:33 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jun 30 11:37:33 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"wrap error message in code","epoch":1593542253,"epoch_utc":null},{"commit":"45f726824027af49c437b6e81e4700f7098af320","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 11:34:08 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jun 30 11:34:08 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add -dd to error message","epoch":1593542048,"epoch_utc":null},{"commit":"3a3c8e4d4a77135eaee5cb30c3107a4531c300ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 11:31:08 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jun 30 11:31:08 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]},"message":"move verbose_debug under debug check","epoch":1593541868,"epoch_utc":null},{"commit":"c1ac183a0472e93226c9ee1905f56c5183e3721f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 11:26:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jun 30 11:26:09 2020 -0700","stats":{"files_changed":1,"insertions":15,"deletions":22,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":37}]},"message":"simplify debug option","epoch":1593541569,"epoch_utc":null},{"commit":"18bb779ee5cd5821764b03173f16e922f753c64d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 09:39:05 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jun 30 09:39:05 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"formatting: double quotes to single quotes","epoch":1593535145,"epoch_utc":null},{"commit":"8b6612fe7911ab9e0bf8d29be60865d3b8aa3fd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 07:56:34 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jun 30 07:56:34 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"move JC_COLORS parsing error message","epoch":1593528994,"epoch_utc":null},{"commit":"fde0bc853415418e01616861ace5048770bd97f8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jun 27 18:53:19 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Jun 27 18:53:19 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":34,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":43}]},"message":"improve package install info","epoch":1593309199,"epoch_utc":null},{"commit":"e661a78939ff067b8a61f08301c178dd10a344ab","merge":"b969751 847e346","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jun 27 18:43:02 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sat Jun 27 18:43:02 2020 -0700","message":"Merge pull request #71 from wigust/guix\n\nadd guix package info","epoch":1593308582,"epoch_utc":null},{"commit":"847e346602789bf58e3515319e9d080dfb897fc9","author":"Oleg Pykhalov","author_email":"go.wigust@gmail.com","date":"Sat Jun 27 12:58:59 2020 +0300","commit_by":"Oleg Pykhalov","commit_by_email":"go.wigust@gmail.com","commit_by_date":"Sat Jun 27 13:01:56 2020 +0300","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"add guix package info","epoch":1593287939,"epoch_utc":null},{"commit":"b9697516887c61f08d8d7b1dc9130350e5bdba9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 26 09:53:57 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jun 26 09:53:57 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"add other references","epoch":1593190437,"epoch_utc":null},{"commit":"ad6f2ba03a293a7f55e456fa5f5b55ee3cbcd4ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 21:16:52 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 25 21:16:52 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1593145012,"epoch_utc":null},{"commit":"63c6a5edc0e9001b143595fd8b96f1b4a1377a3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 21:12:30 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 25 21:12:30 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"formatting","epoch":1593144750,"epoch_utc":null},{"commit":"9f4cf9dd5efe94adfff0961fdb73097ca27c5463","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 21:11:21 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 25 21:11:21 2020 -0700","stats":{"files_changed":1,"insertions":197,"deletions":67,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":264}]},"message":"formatting","epoch":1593144681,"epoch_utc":null},{"commit":"51331b6dc01eee00847fa4be549ffde365373a01","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 13:01:10 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 25 13:01:10 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":5}]},"message":"formatting","epoch":1593115270,"epoch_utc":null},{"commit":"efb6761033319644bf9cdae6288ff5609f6482ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 12:59:56 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 25 12:59:56 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1593115196,"epoch_utc":null},{"commit":"6a4f737a0f1c322bebccf69809d9816fc770c5ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 12:56:06 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 25 12:56:06 2020 -0700","stats":{"files_changed":1,"insertions":88,"deletions":115,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":203}]},"message":"update json syntax highlighting","epoch":1593114966,"epoch_utc":null},{"commit":"be6864b778ab721bcba5fc3221576153be7b2ed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 12:28:23 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 25 12:28:23 2020 -0700","stats":{"files_changed":1,"insertions":26,"deletions":26,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":52}]},"message":"add syntax highlighting tags","epoch":1593113303,"epoch_utc":null},{"commit":"de3b91a36cfcaf565b26b1da42f1e87835da4dc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 07:38:39 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 25 07:38:39 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add -dd option","epoch":1593095919,"epoch_utc":null},{"commit":"ef5482c3b5afa0ee8e85851bebab1c104cb59936","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 07:29:28 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 25 07:29:28 2020 -0700","stats":{"files_changed":3,"insertions":15,"deletions":7,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":17},{"name":"setup.py","lines_changed":2}]},"message":"add verbose debug option","epoch":1593095368,"epoch_utc":null},{"commit":"d20b795137036f8b889eb231cb4f14b756ec6479","merge":"69018cd 8a13406","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 11:28:23 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Jun 22 11:28:23 2020 -0700","message":"Merge pull request #70 from kellyjonbrazil/dev\n\nDev v1.11.7","epoch":1592850503,"epoch_utc":null},{"commit":"8a134065dff429551449c1ea16a36d745fdab580","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 11:23:37 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jun 22 11:23:37 2020 -0700","stats":{"files_changed":12,"insertions":12,"deletions":12,"files":["tests/fixtures/centos-7.7/iptables-filter-line-numbers.json","tests/fixtures/centos-7.7/iptables-filter-nv.json","tests/fixtures/centos-7.7/iptables-filter.json","tests/fixtures/centos-7.7/iptables-mangle.json","tests/fixtures/centos-7.7/iptables-nat.json","tests/fixtures/centos-7.7/iptables-raw.json","tests/fixtures/ubuntu-18.04/iptables-filter-line-numbers.json","tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","tests/fixtures/ubuntu-18.04/iptables-filter.json","tests/fixtures/ubuntu-18.04/iptables-mangle.json","tests/fixtures/ubuntu-18.04/iptables-nat.json","tests/fixtures/ubuntu-18.04/iptables-raw.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/iptables-filter-line-numbers.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-filter-nv.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-filter.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-mangle.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-nat.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-raw.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter-line-numbers.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-mangle.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-nat.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-raw.json","lines_changed":2}]},"message":"update fixtures for last chain fix","epoch":1592850217,"epoch_utc":null},{"commit":"22aee1bfa40ed1d3c4df28cd934ef0edfc5c458c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 11:23:15 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jun 22 11:23:15 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1592850195,"epoch_utc":null},{"commit":"b282820fd67dcc96c058198f97b066e7b402d1f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 11:09:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jun 22 11:09:09 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":3}]},"message":"fix to include the final chain in output","epoch":1592849349,"epoch_utc":null},{"commit":"3ee098306daf903687cb0febf92773a81e216111","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 10:48:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jun 22 10:48:51 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":2}]},"message":"version bump","epoch":1592848131,"epoch_utc":null},{"commit":"09e8f379a64b3b37bb99b4291c10aa4a5cdedea4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 10:47:34 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jun 22 10:47:34 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":11,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":20}]},"message":"iptables code optimizations","epoch":1592848054,"epoch_utc":null},{"commit":"69018cdb3a77fcdcb5648e3b89933148c55a6412","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 14 17:39:14 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jun 14 17:39:14 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"fix date","epoch":1592181554,"epoch_utc":null},{"commit":"d0d7254c6acc7be4341618d231a5b166f640b287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 14 17:23:10 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jun 14 17:23:10 2020 -0700","stats":{"files_changed":2,"insertions":26,"deletions":0,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":15},{"name":"jc/utils.py","lines_changed":11}]},"message":"add docstring","epoch":1592180590,"epoch_utc":null},{"commit":"cc0f0971d76b6f3dec8d989e83f5676db8f2c6d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 14 17:17:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jun 14 17:17:40 2020 -0700","stats":{"files_changed":56,"insertions":476,"deletions":439,"files":["changelog.txt","jc/cli.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/utils.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":10},{"name":"jc/parsers/airport_s.py","lines_changed":4},{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/blkid.py","lines_changed":5},{"name":"jc/parsers/crontab.py","lines_changed":5},{"name":"jc/parsers/crontab_u.py","lines_changed":5},{"name":"jc/parsers/csv.py","lines_changed":5},{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":193},{"name":"jc/parsers/dmidecode.py","lines_changed":264},{"name":"jc/parsers/du.py","lines_changed":8},{"name":"jc/parsers/env.py","lines_changed":8},{"name":"jc/parsers/file.py","lines_changed":39},{"name":"jc/parsers/foo.py","lines_changed":8},{"name":"jc/parsers/free.py","lines_changed":5},{"name":"jc/parsers/fstab.py","lines_changed":5},{"name":"jc/parsers/group.py","lines_changed":5},{"name":"jc/parsers/gshadow.py","lines_changed":5},{"name":"jc/parsers/history.py","lines_changed":26},{"name":"jc/parsers/hosts.py","lines_changed":8},{"name":"jc/parsers/id.py","lines_changed":8},{"name":"jc/parsers/ifconfig.py","lines_changed":18},{"name":"jc/parsers/ini.py","lines_changed":5},{"name":"jc/parsers/iptables.py","lines_changed":44},{"name":"jc/parsers/jobs.py","lines_changed":8},{"name":"jc/parsers/last.py","lines_changed":8},{"name":"jc/parsers/ls.py","lines_changed":5},{"name":"jc/parsers/lsblk.py","lines_changed":8},{"name":"jc/parsers/lsmod.py","lines_changed":5},{"name":"jc/parsers/lsof.py","lines_changed":9},{"name":"jc/parsers/mount.py","lines_changed":9},{"name":"jc/parsers/netstat.py","lines_changed":8},{"name":"jc/parsers/ntpq.py","lines_changed":5},{"name":"jc/parsers/passwd.py","lines_changed":8},{"name":"jc/parsers/pip_list.py","lines_changed":9},{"name":"jc/parsers/pip_show.py","lines_changed":9},{"name":"jc/parsers/ps.py","lines_changed":6},{"name":"jc/parsers/route.py","lines_changed":6},{"name":"jc/parsers/shadow.py","lines_changed":8},{"name":"jc/parsers/ss.py","lines_changed":8},{"name":"jc/parsers/stat.py","lines_changed":7},{"name":"jc/parsers/systemctl.py","lines_changed":8},{"name":"jc/parsers/systemctl_lj.py","lines_changed":8},{"name":"jc/parsers/systemctl_ls.py","lines_changed":8},{"name":"jc/parsers/systemctl_luf.py","lines_changed":8},{"name":"jc/parsers/timedatectl.py","lines_changed":14},{"name":"jc/parsers/uname.py","lines_changed":6},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/w.py","lines_changed":5},{"name":"jc/parsers/who.py","lines_changed":8},{"name":"jc/parsers/xml.py","lines_changed":5},{"name":"jc/parsers/yaml.py","lines_changed":11},{"name":"jc/utils.py","lines_changed":4},{"name":"setup.py","lines_changed":2}]},"message":"Improve and standardize empty data check for all parsers","epoch":1592180260,"epoch_utc":null},{"commit":"2af61730f0f5b9bc6f1f4c5d9d808ff6ccb0faeb","merge":"07b179c 83f41b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 12 12:34:34 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Jun 12 12:34:34 2020 -0700","message":"Merge pull request #68 from kellyjonbrazil/dev\n\nDev v1.11.5","epoch":1591990474,"epoch_utc":null},{"commit":"83f41b83dc01c462c6a2295e9fc56ad42a3b62f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 12 12:30:19 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jun 12 12:30:19 2020 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1591990219,"epoch_utc":null},{"commit":"1fb84fce88e0306c26a5771fa4c6dc14a21409a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 12 12:25:07 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jun 12 12:25:07 2020 -0700","stats":{"files_changed":16,"insertions":137,"deletions":67,"files":["changelog.txt","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/xml.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py","tests/test_timedatectl.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py","tests/test_who.py","tests/test_xml.py","tests/test_yaml.py"],"file_stats":[{"name":"changelog.txt","lines_changed":5},{"name":"jc/parsers/systemctl_lj.py","lines_changed":3},{"name":"jc/parsers/systemctl_ls.py","lines_changed":33},{"name":"jc/parsers/systemctl_luf.py","lines_changed":35},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/w.py","lines_changed":63},{"name":"jc/parsers/xml.py","lines_changed":6},{"name":"tests/test_systemctl_ls.py","lines_changed":6},{"name":"tests/test_systemctl_luf.py","lines_changed":6},{"name":"tests/test_timedatectl.py","lines_changed":6},{"name":"tests/test_uname.py","lines_changed":6},{"name":"tests/test_uptime.py","lines_changed":6},{"name":"tests/test_w.py","lines_changed":6},{"name":"tests/test_who.py","lines_changed":6},{"name":"tests/test_xml.py","lines_changed":6},{"name":"tests/test_yaml.py","lines_changed":6}]},"message":"fix for no data","epoch":1591989907,"epoch_utc":null},{"commit":"a8837e12447c52dbe438b19c07777b9b4a22081c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 12 07:57:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jun 12 07:57:40 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"remove --upgrade from pip install","epoch":1591973860,"epoch_utc":null},{"commit":"04d2eec5581998d1a80e762b670af76c92111065","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 11 17:59:06 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 11 17:59:06 2020 -0700","stats":{"files_changed":6,"insertions":56,"deletions":30,"files":["changelog.txt","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","tests/test_stat.py","tests/test_systemctl.py","tests/test_systemctl_lj.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":33},{"name":"jc/parsers/systemctl_lj.py","lines_changed":33},{"name":"tests/test_stat.py","lines_changed":6},{"name":"tests/test_systemctl.py","lines_changed":6},{"name":"tests/test_systemctl_lj.py","lines_changed":6}]},"message":"fix for no data","epoch":1591923546,"epoch_utc":null},{"commit":"1b57ec92f052ddc8959540511512190a539262b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 11 17:52:03 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 11 17:52:03 2020 -0700","stats":{"files_changed":21,"insertions":152,"deletions":68,"files":["changelog.txt","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/pip_list.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","tests/fixtures/centos-7.7/ss-sudo-a.json","tests/fixtures/ubuntu-18.04/ss-sudo-a.json","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_ntpq.py","tests/test_passwd.py","tests/test_pip_list.py","tests/test_pip_show.py","tests/test_ps.py","tests/test_route.py","tests/test_shadow.py","tests/test_ss.py"],"file_stats":[{"name":"changelog.txt","lines_changed":8},{"name":"jc/parsers/mount.py","lines_changed":3},{"name":"jc/parsers/netstat.py","lines_changed":41},{"name":"jc/parsers/ntpq.py","lines_changed":35},{"name":"jc/parsers/pip_list.py","lines_changed":31},{"name":"jc/parsers/ps.py","lines_changed":9},{"name":"jc/parsers/route.py","lines_changed":9},{"name":"jc/parsers/ss.py","lines_changed":14},{"name":"tests/fixtures/centos-7.7/ss-sudo-a.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ss-sudo-a.json","lines_changed":2},{"name":"tests/test_lsof.py","lines_changed":6},{"name":"tests/test_mount.py","lines_changed":6},{"name":"tests/test_netstat.py","lines_changed":6},{"name":"tests/test_ntpq.py","lines_changed":6},{"name":"tests/test_passwd.py","lines_changed":6},{"name":"tests/test_pip_list.py","lines_changed":6},{"name":"tests/test_pip_show.py","lines_changed":6},{"name":"tests/test_ps.py","lines_changed":6},{"name":"tests/test_route.py","lines_changed":6},{"name":"tests/test_shadow.py","lines_changed":6},{"name":"tests/test_ss.py","lines_changed":6}]},"message":"fix for no data","epoch":1591923123,"epoch_utc":null},{"commit":"4d8859540417e99e273fda2cea959240f3c37ea3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 11 17:16:11 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 11 17:16:11 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":2}]},"message":"enhance empty data check","epoch":1591920971,"epoch_utc":null},{"commit":"52b1272a3aab09b5a8c4a277fbf9975a1b8b6921","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 11 17:13:45 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 11 17:13:45 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":2}]},"message":"enhance empty data check","epoch":1591920825,"epoch_utc":null},{"commit":"d2ccad6a83138fbf6eb863634fd354dc6c3fa238","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 11 17:09:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 11 17:09:51 2020 -0700","stats":{"files_changed":4,"insertions":33,"deletions":15,"files":["jc/parsers/lsblk.py","jc/parsers/lsmod.py","tests/test_lsblk.py","tests/test_lsmod.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":21},{"name":"jc/parsers/lsmod.py","lines_changed":15},{"name":"tests/test_lsblk.py","lines_changed":6},{"name":"tests/test_lsmod.py","lines_changed":6}]},"message":"fix for no data","epoch":1591920591,"epoch_utc":null},{"commit":"cad6dde4ac66cf970a7f52d8e7958ea35c083629","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:54:06 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:54:06 2020 -0700","stats":{"files_changed":10,"insertions":60,"deletions":0,"files":["tests/test_group.py","tests/test_gshadow.py","tests/test_history.py","tests/test_hosts.py","tests/test_id.py","tests/test_ifconfig.py","tests/test_ini.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_last.py"],"file_stats":[{"name":"tests/test_group.py","lines_changed":6},{"name":"tests/test_gshadow.py","lines_changed":6},{"name":"tests/test_history.py","lines_changed":6},{"name":"tests/test_hosts.py","lines_changed":6},{"name":"tests/test_id.py","lines_changed":6},{"name":"tests/test_ifconfig.py","lines_changed":6},{"name":"tests/test_ini.py","lines_changed":6},{"name":"tests/test_iptables.py","lines_changed":6},{"name":"tests/test_jobs.py","lines_changed":6},{"name":"tests/test_last.py","lines_changed":6}]},"message":"fix for no data","epoch":1591836846,"epoch_utc":null},{"commit":"06811c3539b0d871e13e9b8d3b51f731d06fd2ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:41:54 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:41:54 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_fstab.py"],"file_stats":[{"name":"tests/test_fstab.py","lines_changed":6}]},"message":"add test for no data","epoch":1591836114,"epoch_utc":null},{"commit":"0cb23c2b21f464082609409261de8e95eb1b0d55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:40:18 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:40:18 2020 -0700","stats":{"files_changed":3,"insertions":17,"deletions":7,"files":["changelog.txt","jc/parsers/free.py","tests/test_free.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/free.py","lines_changed":17},{"name":"tests/test_free.py","lines_changed":6}]},"message":"add fix for no data","epoch":1591836018,"epoch_utc":null},{"commit":"ac4688dca22334385ec2c87027f2f14f9ca93ce4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:35:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:35:40 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_file.py"],"file_stats":[{"name":"tests/test_file.py","lines_changed":6}]},"message":"add test for no data","epoch":1591835740,"epoch_utc":null},{"commit":"326c3b4670a0e47cbe2988b38fb1c1b26a4db890","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:34:22 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:34:22 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_env.py"],"file_stats":[{"name":"tests/test_env.py","lines_changed":6}]},"message":"add test for no data","epoch":1591835662,"epoch_utc":null},{"commit":"9b29d0c2688eda2e4707aeba693ed14fa433a706","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:32:39 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:32:39 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_du.py"],"file_stats":[{"name":"tests/test_du.py","lines_changed":6}]},"message":"add test for no data","epoch":1591835559,"epoch_utc":null},{"commit":"e0013c38710b4ecf3a588a16d1d908effc23b485","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:31:14 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:31:14 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["tests/test_dmidecode.py"],"file_stats":[{"name":"tests/test_dmidecode.py","lines_changed":5}]},"message":"add test for no data","epoch":1591835474,"epoch_utc":null},{"commit":"a75744075b0628bdb711d8a929a759b4b4067edb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:29:41 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:29:41 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_dig.py"],"file_stats":[{"name":"tests/test_dig.py","lines_changed":6}]},"message":"add no data test","epoch":1591835381,"epoch_utc":null},{"commit":"525aec1a02380f17ab7827434616f981f7457bd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:27:46 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:27:46 2020 -0700","stats":{"files_changed":3,"insertions":16,"deletions":7,"files":["changelog.txt","jc/parsers/df.py","tests/test_df.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":16},{"name":"tests/test_df.py","lines_changed":6}]},"message":"fix for no data","epoch":1591835266,"epoch_utc":null},{"commit":"0bf9a7a072a80e10a29c6bb3943b107352dc1d45","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:22:59 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:22:59 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_csv.py"],"file_stats":[{"name":"tests/test_csv.py","lines_changed":6}]},"message":"add test for no data","epoch":1591834979,"epoch_utc":null},{"commit":"d8f2f4c95bc699386b9fe93d10e13637875a1dcf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:20:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:20:09 2020 -0700","stats":{"files_changed":5,"insertions":96,"deletions":80,"files":["changelog.txt","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/test_crontab.py","tests/test_crontab_u.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":79},{"name":"jc/parsers/crontab_u.py","lines_changed":83},{"name":"tests/test_crontab.py","lines_changed":6},{"name":"tests/test_crontab_u.py","lines_changed":6}]},"message":"fix for no data","epoch":1591834809,"epoch_utc":null},{"commit":"35d733b44f3705bed3dd8ce340379470f199f772","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:10:53 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:10:53 2020 -0700","stats":{"files_changed":5,"insertions":70,"deletions":60,"files":["changelog.txt","jc/parsers/arp.py","jc/parsers/blkid.py","tests/test_arp.py","tests/test_blkid.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":112},{"name":"jc/parsers/blkid.py","lines_changed":4},{"name":"tests/test_arp.py","lines_changed":6},{"name":"tests/test_blkid.py","lines_changed":6}]},"message":"fix for no data","epoch":1591834253,"epoch_utc":null},{"commit":"9179b4175c5063bed14ecb96ba24c517920c0d94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 16:40:11 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 16:40:11 2020 -0700","stats":{"files_changed":3,"insertions":16,"deletions":0,"files":["changelog.txt","tests/test_airport.py","tests/test_airport_s.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"tests/test_airport.py","lines_changed":6},{"name":"tests/test_airport_s.py","lines_changed":6}]},"message":"add nodata tests","epoch":1591832411,"epoch_utc":null},{"commit":"bb07d78c78ff5c5b2ee4d2086ffc6dd5ebedf0fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 16:39:49 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 16:39:49 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":8,"files":["jc/parsers/airport_s.py"],"file_stats":[{"name":"jc/parsers/airport_s.py","lines_changed":18}]},"message":"add nodata fix","epoch":1591832389,"epoch_utc":null},{"commit":"07b179cd7f8853ff6aca0b27a703e198c158ca72","merge":"12a80e7 054422d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 06:07:42 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Jun 10 06:07:42 2020 -0700","message":"Merge pull request #67 from kellyjonbrazil/Dev\n\nDev v1.11.4","epoch":1591794462,"epoch_utc":null},{"commit":"054422d8373e7b8def18ddabd447062cb9cc3137","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 06:04:50 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 06:04:50 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_ls.py"],"file_stats":[{"name":"tests/test_ls.py","lines_changed":6}]},"message":"add test for empty directory","epoch":1591794290,"epoch_utc":null},{"commit":"3e052d18102e98a09cbba21866855691eaccc216","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 05:53:20 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 05:53:20 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1591793600,"epoch_utc":null},{"commit":"c8e72805cf9def478b56c925f4afcc0ece1daac0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 05:51:12 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 05:51:12 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":10,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":19}]},"message":"fix error on empty directory","epoch":1591793472,"epoch_utc":null},{"commit":"12a80e7db0f6c7d536674ad8d34e26bba9a1f1f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 9 15:13:53 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jun 9 15:13:53 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":12}]},"message":"add fedora package info","epoch":1591740833,"epoch_utc":null},{"commit":"ee7ff9a09d3373f60ae1645376ccc0057803147e","merge":"346a14c f6478fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 9 11:22:39 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Jun 9 11:22:39 2020 -0700","message":"Merge pull request #66 from kellyjonbrazil/dev\n\nDev v1.11.3","epoch":1591726959,"epoch_utc":null},{"commit":"f6478fb636ead8d1e53e4a88d59e55222df37a8f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 9 11:18:47 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jun 9 11:18:47 2020 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1591726727,"epoch_utc":null},{"commit":"811a0b0495819925199d70db266066197cc6824e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 8 10:54:42 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jun 8 10:54:42 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add info regarding the local parser plugin files","epoch":1591638882,"epoch_utc":null},{"commit":"aeb48edf727f23cc4f8fd9b760cfb69f03098278","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 8 10:48:58 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jun 8 10:48:58 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"use $LOCALAPPDATA variable for windows","epoch":1591638538,"epoch_utc":null},{"commit":"b1e94f0df7041bcae97455508f423178aef9d61d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 8 10:44:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jun 8 10:44:09 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"heading formatting","epoch":1591638249,"epoch_utc":null},{"commit":"60050e3c0fe34980f7db5b8bd46430f953f0c3a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 8 10:42:45 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jun 8 10:42:45 2020 -0700","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":26}]},"message":"fix linux/unix directory and add note about the XDG specification followed","epoch":1591638165,"epoch_utc":null},{"commit":"39ef09aa5b0d43b5128299511afe80336aa38203","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 13:30:22 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jun 7 13:30:22 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add local parser plugin feature","epoch":1591561822,"epoch_utc":null},{"commit":"8377d4311611c242e16eaebe66dafac9529150d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 13:26:03 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jun 7 13:26:03 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1591561563,"epoch_utc":null},{"commit":"54e4c447ab34ae54c73c92df40f1b4ca6ffb2277","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:52:16 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jun 7 12:52:16 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":10}]},"message":"clean up formatting","epoch":1591559536,"epoch_utc":null},{"commit":"937a9fa9cf2ede8e686ba853989f33e4a483a0ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:41:50 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jun 7 12:41:50 2020 -0700","stats":{"files_changed":4,"insertions":613,"deletions":3,"files":["jc/appdirs.py","jc/cli.py","requirements.txt","setup.py"],"file_stats":[{"name":"jc/appdirs.py","lines_changed":611},{"name":"jc/cli.py","lines_changed":3},{"name":"requirements.txt","lines_changed":1},{"name":"setup.py","lines_changed":1}]},"message":"vendorize appdirs module","epoch":1591558910,"epoch_utc":null},{"commit":"808ff6cf0e784cf0c2d523ff2e01197cb6e88c82","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:29:10 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jun 7 12:29:10 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":12}]},"message":"more acknowledgments updates","epoch":1591558150,"epoch_utc":null},{"commit":"7f5c649a95a871c3cd8d48731a6d26dcba6f725b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:23:28 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jun 7 12:23:28 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update acknowledgments","epoch":1591557808,"epoch_utc":null},{"commit":"b72727dec995de1ca5f68ee17a710b086c87d612","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:13:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jun 7 12:13:40 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":11}]},"message":"update custom parsers info","epoch":1591557220,"epoch_utc":null},{"commit":"3fc88bfb334143b68a9cb78d4034f33e7c0bcf76","merge":"346a14c 9f2279d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:04:44 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Jun 7 12:04:44 2020 -0700","message":"Merge pull request #65 from duelafn/local-parsers\n\nLoad custom parsers from /jc/jcparsers","epoch":1591556684,"epoch_utc":null},{"commit":"9f2279d5867eb89d4b4b7b4ffca290166ec97c48","author":"Dean Serenevy","author_email":"dean@serenevy.net","date":"Sat Jun 6 14:30:40 2020 -0400","commit_by":"Dean Serenevy","commit_by_email":"dean@serenevy.net","commit_by_date":"Sat Jun 6 14:42:27 2020 -0400","stats":{"files_changed":4,"insertions":29,"deletions":2,"files":["README.md","jc/cli.py","requirements.txt","setup.py"],"file_stats":[{"name":"README.md","lines_changed":7},{"name":"jc/cli.py","lines_changed":22},{"name":"requirements.txt","lines_changed":1},{"name":"setup.py","lines_changed":1}]},"message":"Load custom parsers from /jc/jcparsers","epoch":1591479040,"epoch_utc":null},{"commit":"346a14cb9bb0d762fc3fa366ad97e5ff85f3992a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:44:14 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 20:44:14 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"change osx_device to unix_device","epoch":1590896654,"epoch_utc":null},{"commit":"dac00d17ff9f3d2bb959697b6e567015bfc2702b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:33:50 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 20:33:50 2020 -0700","stats":{"files_changed":3,"insertions":17,"deletions":0,"files":["tests/fixtures/nixos/route-ee.json","tests/fixtures/nixos/route-ee.out","tests/test_route.py"],"file_stats":[{"name":"tests/fixtures/nixos/route-ee.json","lines_changed":1},{"name":"tests/fixtures/nixos/route-ee.out","lines_changed":4},{"name":"tests/test_route.py","lines_changed":12}]},"message":"add nixos test","epoch":1590896030,"epoch_utc":null},{"commit":"9ca7cd40601b97829e8f88071fdfb928d939f7e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:33:39 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 20:33:39 2020 -0700","stats":{"files_changed":1,"insertions":17,"deletions":34,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":51}]},"message":"update docs","epoch":1590896019,"epoch_utc":null},{"commit":"aa31628970b12295a41dff20e829fcce9f8a4d07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:33:00 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 20:33:00 2020 -0700","stats":{"files_changed":5,"insertions":70,"deletions":63,"files":["README.md","docs/parsers/netstat.md","docs/parsers/route.md","docs/parsers/stat.md","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":46},{"name":"docs/parsers/netstat.md","lines_changed":16},{"name":"docs/parsers/route.md","lines_changed":51},{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":16}]},"message":"update docs","epoch":1590895980,"epoch_utc":null},{"commit":"bed694fcf5c8c31bbd4f3e88759fe7ab82382d24","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:13:21 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 20:13:21 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1590894801,"epoch_utc":null},{"commit":"4b4af69fa184896ec15b5be7dc8416f36f921d5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:12:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 20:12:51 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"fix date","epoch":1590894771,"epoch_utc":null},{"commit":"9d96190a5b19e8d71c3ac66eb0303d269dd4ce5d","merge":"96df396 fa44d48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:08:32 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sat May 30 20:08:32 2020 -0700","message":"Merge pull request #64 from kellyjonbrazil/dev\n\nDev v1.11.2","epoch":1590894512,"epoch_utc":null},{"commit":"fa44d48c094a55e499c2c780d109bf277736b42e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 19:50:38 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 19:50:38 2020 -0700","stats":{"files_changed":6,"insertions":129,"deletions":7,"files":["changelog.txt","jc/parsers/stat.py","tests/fixtures/freebsd12/stat.json","tests/fixtures/freebsd12/stat.out","tests/fixtures/osx-10.14.6/stat.json","tests/test_stat.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":12},{"name":"tests/fixtures/freebsd12/stat.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/stat.out","lines_changed":107},{"name":"tests/fixtures/osx-10.14.6/stat.json","lines_changed":2},{"name":"tests/test_stat.py","lines_changed":12}]},"message":"freebsd fixes, tests, and fixtures","epoch":1590893438,"epoch_utc":null},{"commit":"4ef961c2788c935b1fea1c9777b976e7b89e7367","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 19:18:01 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 19:18:01 2020 -0700","stats":{"files_changed":3,"insertions":20,"deletions":0,"files":["tests/fixtures/freebsd12/ntpq-p.json","tests/fixtures/freebsd12/ntpq-p.out","tests/test_ntpq.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/ntpq-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ntpq-p.out","lines_changed":7},{"name":"tests/test_ntpq.py","lines_changed":12}]},"message":"add freebsd test and fixtures","epoch":1590891481,"epoch_utc":null},{"commit":"292a837d5c47165ccb155f079b0a114b5c17a98e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 18:54:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 18:54:09 2020 -0700","stats":{"files_changed":3,"insertions":22,"deletions":0,"files":["tests/fixtures/freebsd12/last.json","tests/fixtures/freebsd12/last.out","tests/test_last.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/last.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/last.out","lines_changed":9},{"name":"tests/test_last.py","lines_changed":12}]},"message":"add tests and fixtures for freebsd12","epoch":1590890049,"epoch_utc":null},{"commit":"aa7b915d847dbd29d2c09b2cc40b847e37174ffb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 18:53:46 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 18:53:46 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":2}]},"message":"version bump","epoch":1590890026,"epoch_utc":null},{"commit":"c46fe73236b912d2ee89dfb36ff259fe95fd0479","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 18:53:35 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 18:53:35 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"add last fixes for freebsd","epoch":1590890015,"epoch_utc":null},{"commit":"039b2c129cbe79d2d23b1194b043d8b730609956","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 18:42:26 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 18:42:26 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":1,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":11}]},"message":"freebsd fixes","epoch":1590889346,"epoch_utc":null},{"commit":"8f2e5e4808b30c658a4cb87125639e4d7d6c15d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 17:46:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 17:46:09 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"fix compatible logic","epoch":1590885969,"epoch_utc":null},{"commit":"c4da8e4f78e6b4aaa4aff76ae042be9aaec832a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 17:05:41 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 17:05:41 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":12}]},"message":"add nixos and freebsd to tested. update new arp fields","epoch":1590883541,"epoch_utc":null},{"commit":"bcab9078a4c2bfd6ae4dca9448b577d9ed0fc01c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 17:02:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 17:02:09 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"add w parser fix","epoch":1590883329,"epoch_utc":null},{"commit":"b3c6c1ea925bf7cd76368f5074fb8af52a844522","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 17:01:59 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 17:01:59 2020 -0700","stats":{"files_changed":4,"insertions":29,"deletions":5,"files":["jc/parsers/w.py","tests/fixtures/nixos/w.json","tests/fixtures/nixos/w.out","tests/test_w.py"],"file_stats":[{"name":"jc/parsers/w.py","lines_changed":8},{"name":"tests/fixtures/nixos/w.json","lines_changed":1},{"name":"tests/fixtures/nixos/w.out","lines_changed":5},{"name":"tests/test_w.py","lines_changed":20}]},"message":"strip whitespace in string fields and add tests","epoch":1590883319,"epoch_utc":null},{"commit":"a3af8662bd491e344c93d24afabd23e90efd8086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 16:26:07 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 16:26:07 2020 -0700","stats":{"files_changed":3,"insertions":205,"deletions":3,"files":["tests/fixtures/osx-10.11.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a2.json"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/arp-a.json","lines_changed":107},{"name":"tests/fixtures/osx-10.14.6/arp-a.json","lines_changed":99},{"name":"tests/fixtures/osx-10.14.6/arp-a2.json","lines_changed":2}]},"message":"add permanent field","epoch":1590881167,"epoch_utc":null},{"commit":"35940d0bc80bf61b11f40b1e1043835f26eb391c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 16:25:53 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 16:25:53 2020 -0700","stats":{"files_changed":6,"insertions":59,"deletions":4,"files":["changelog.txt","docs/parsers/arp.md","jc/parsers/arp.py","tests/fixtures/freebsd12/arp-a.json","tests/fixtures/freebsd12/arp-a.out","tests/test_arp.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":12},{"name":"jc/parsers/arp.py","lines_changed":33},{"name":"tests/fixtures/freebsd12/arp-a.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/arp-a.out","lines_changed":3},{"name":"tests/test_arp.py","lines_changed":12}]},"message":"add freebsd permanent and expires fields","epoch":1590881153,"epoch_utc":null},{"commit":"26994cdcb7148d2c9d1701bca9541d247356260b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:51:54 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 15:51:54 2020 -0700","stats":{"files_changed":8,"insertions":115,"deletions":85,"files":["docs/parsers/df.md","docs/parsers/fstab.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/route.md","docs/parsers/stat.md","docs/parsers/uname.md"],"file_stats":[{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":163},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":25},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2}]},"message":"add freebsd compatibility info","epoch":1590879114,"epoch_utc":null},{"commit":"017159a829691cb6a7174f123d024eb252179b75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:51:06 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 15:51:06 2020 -0700","stats":{"files_changed":15,"insertions":221,"deletions":0,"files":["tests/fixtures/freebsd12/netstat-Aa.json","tests/fixtures/freebsd12/netstat-AaT.json","tests/fixtures/freebsd12/netstat-AaT.out","tests/fixtures/freebsd12/netstat-AanP.json","tests/fixtures/freebsd12/netstat-AanP.out","tests/fixtures/freebsd12/netstat-Aax.json","tests/fixtures/freebsd12/netstat-Aax.out","tests/fixtures/freebsd12/netstat-aT.json","tests/fixtures/freebsd12/netstat-aT.out","tests/fixtures/freebsd12/netstat-an.json","tests/fixtures/freebsd12/netstat-i.json","tests/fixtures/freebsd12/netstat-ib.json","tests/fixtures/freebsd12/netstat-ib.out","tests/fixtures/freebsd12/netstat-r.json","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/netstat-Aa.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-AaT.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-AaT.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-AanP.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-AanP.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-Aax.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-Aax.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-aT.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-aT.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-an.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-i.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-ib.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-ib.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/netstat-r.json","lines_changed":1},{"name":"tests/test_netstat.py","lines_changed":108}]},"message":"add freebsd nestat tests and fixtures","epoch":1590879066,"epoch_utc":null},{"commit":"b4e9c85e08d199dad67f03c7603194278a022696","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:50:45 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 15:50:45 2020 -0700","stats":{"files_changed":1,"insertions":12,"deletions":0,"files":["jc/parsers/netstat_freebsd_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_freebsd_osx.py","lines_changed":12}]},"message":"fixup -T freebsd output and add whitespace stripping to parse_post","epoch":1590879045,"epoch_utc":null},{"commit":"189146cd84cfad262f2b2601bb0cb4b9dde2587e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:50:07 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 15:50:07 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":10}]},"message":"add more ints. remove whitespace strip code and move to freebsd_osx module","epoch":1590879007,"epoch_utc":null},{"commit":"af34153ffab10ca1ad7f44736d379d91ae43c813","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:48:56 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 15:48:56 2020 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["changelog.txt","jc/cli.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2}]},"message":"version bump","epoch":1590878936,"epoch_utc":null},{"commit":"bf2ff3ffbb639446779b1f04f2997707d99c0a1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:48:29 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 15:48:29 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":9}]},"message":"fix compatibility search for platform names that append the version number (e.g. freebsd12)","epoch":1590878909,"epoch_utc":null},{"commit":"6423c9efd69e938af38934a97ca6b65009e8f07e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 15:48:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 15:48:51 2020 -0700","stats":{"files_changed":1,"insertions":34,"deletions":5,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":39}]},"message":"integer and float updates","epoch":1590792531,"epoch_utc":null},{"commit":"58ab0d4ece7f006ce9431afb9e0fecbe60930be7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 15:14:44 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 15:14:44 2020 -0700","stats":{"files_changed":4,"insertions":12,"deletions":4,"files":["changelog.txt","jc/parsers/netstat.py","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":11},{"name":"tests/fixtures/osx-10.14.6/netstat-An.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat.json","lines_changed":2}]},"message":"strip whitespace from string fields","epoch":1590790484,"epoch_utc":null},{"commit":"83a738bf4d756036d6269b9153220d7f1018ac9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 14:16:11 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 14:16:11 2020 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/netstat-Abn.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-An.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat.json","lines_changed":2}]},"message":"update fixtures for osx_flags and osx_inode name change to unix_flags and unix_inode","epoch":1590786971,"epoch_utc":null},{"commit":"3640671fc6a67c9628fd47e19e9fe0a0738439ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 14:15:28 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 14:15:28 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/{netstat_osx.py => netstat_freebsd_osx.py}"],"file_stats":[{"name":"jc/parsers/{netstat_osx.py => netstat_freebsd_osx.py}","lines_changed":10}]},"message":"rename module","epoch":1590786928,"epoch_utc":null},{"commit":"1da623b30ef6f9b12ac231518d2d4e7dadcf717b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 14:14:48 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 14:14:48 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":9}]},"message":"add items","epoch":1590786888,"epoch_utc":null},{"commit":"b10ca64646e93d9797182ea046f4956a17b37627","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 14:14:37 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 14:14:37 2020 -0700","stats":{"files_changed":1,"insertions":71,"deletions":71,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":142}]},"message":"change osx_inode and osx_flags to unix_inode and unix_flags. Also rename netstat_osx module to netstat_freebsd_osx","epoch":1590786877,"epoch_utc":null},{"commit":"2128763ee67a07da6ebf123abeec39794bc1f4e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 13:25:19 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 13:25:19 2020 -0700","stats":{"files_changed":1,"insertions":12,"deletions":12,"files":["tests/test_netstat.py"],"file_stats":[{"name":"tests/test_netstat.py","lines_changed":24}]},"message":"fix osx version from 16.4 to 14.6","epoch":1590783919,"epoch_utc":null},{"commit":"a27e7ed39c63c04cfa78caceaada42f7a9496a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 13:24:52 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 13:24:52 2020 -0700","stats":{"files_changed":12,"insertions":12,"deletions":12,"files":["tests/fixtures/centos-7.7/netstat-r.json","tests/fixtures/centos-7.7/netstat-rne.json","tests/fixtures/centos-7.7/netstat-rnee.json","tests/fixtures/centos-7.7/route-vn.json","tests/fixtures/centos-7.7/route.json","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-rnl.json","tests/fixtures/ubuntu-18.04/netstat-r.json","tests/fixtures/ubuntu-18.04/netstat-rne.json","tests/fixtures/ubuntu-18.04/netstat-rnee.json","tests/fixtures/ubuntu-18.04/route-vn.json","tests/fixtures/ubuntu-18.04/route.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/netstat-r.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/netstat-rne.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/netstat-rnee.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/route-vn.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/route.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-r.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-rnl.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/netstat-r.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/netstat-rne.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/netstat-rnee.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/route-vn.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/route.json","lines_changed":2}]},"message":"test updates for added route_flags_pretty and flags_pretty fields","epoch":1590783892,"epoch_utc":null},{"commit":"f07b7eaa474eb87dbdbc7fbe41b9386feff7bee2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 12:55:16 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 12:55:16 2020 -0700","stats":{"files_changed":1,"insertions":38,"deletions":12,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":50}]},"message":"add flags_pretty","epoch":1590782116,"epoch_utc":null},{"commit":"6ce18de84ce16a926f9cd97c3210ef209c3352da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 12:51:04 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 12:51:04 2020 -0700","stats":{"files_changed":3,"insertions":130,"deletions":69,"files":["jc/parsers/netstat.py","jc/parsers/netstat_linux.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":139},{"name":"jc/parsers/netstat_linux.py","lines_changed":23},{"name":"jc/parsers/netstat_osx.py","lines_changed":37}]},"message":"add route_flags_pretty","epoch":1590781864,"epoch_utc":null},{"commit":"8631b756e7ab8cd71c2a3eb288e2d1823cec5782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 12:05:46 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 12:05:46 2020 -0700","stats":{"files_changed":4,"insertions":76,"deletions":0,"files":["tests/fixtures/freebsd12/netstat-Aa.out","tests/fixtures/freebsd12/netstat-an.out","tests/fixtures/freebsd12/netstat-i.out","tests/fixtures/freebsd12/netstat-r.out"],"file_stats":[{"name":"tests/fixtures/freebsd12/netstat-Aa.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-an.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-i.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/netstat-r.out","lines_changed":20}]},"message":"add freebsd test files","epoch":1590779146,"epoch_utc":null},{"commit":"7414d984125300164a5b6156d7a80128d4d6cb15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 12:05:34 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 12:05:34 2020 -0700","stats":{"files_changed":6,"insertions":18,"deletions":18,"files":["jc/parsers/df.py","jc/parsers/fstab.py","jc/parsers/mount.py","jc/parsers/ntpq.py","jc/parsers/stat.py","jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":6},{"name":"jc/parsers/fstab.py","lines_changed":6},{"name":"jc/parsers/mount.py","lines_changed":6},{"name":"jc/parsers/ntpq.py","lines_changed":6},{"name":"jc/parsers/stat.py","lines_changed":6},{"name":"jc/parsers/uname.py","lines_changed":6}]},"message":"add freebsd compatibility","epoch":1590779134,"epoch_utc":null},{"commit":"d7b19892e8fb11e17fcbadcdbb08d49897d7754f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 12:04:58 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 12:04:58 2020 -0700","stats":{"files_changed":2,"insertions":10,"deletions":7,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":13},{"name":"jc/parsers/netstat_osx.py","lines_changed":4}]},"message":"add freebsd support for netstat -i","epoch":1590779098,"epoch_utc":null},{"commit":"96df396eaf4e030113005a95e525d644c394dfe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 07:35:25 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 07:35:25 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1590762925,"epoch_utc":null},{"commit":"2f6f640317da5af894f34f187c4243ef0c599d07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 27 17:11:20 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 27 17:11:20 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"spelling","epoch":1590624680,"epoch_utc":null},{"commit":"c4a0a50f3a3ac5833ab5d2f8a0cb3f18da335812","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 27 17:08:54 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 27 17:08:54 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"add nix-env","epoch":1590624534,"epoch_utc":null},{"commit":"658f8a3842273cea049689b3aea15d89a7294b24","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 27 14:58:16 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 27 14:58:16 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":13}]},"message":"add zypper and ports info","epoch":1590616696,"epoch_utc":null},{"commit":"bfb876a1e394ff63c6773965ba0b65da4e109c1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 27 09:52:13 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 27 09:52:13 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"formatting","epoch":1590598333,"epoch_utc":null},{"commit":"90c34b1f4ee2d9ec8125346bb90b227f76ada2ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 26 17:31:56 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 26 17:31:56 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"fix dmidecode example","epoch":1590539516,"epoch_utc":null},{"commit":"3f9164ea77ec41e1b0671d0a642900d8e36faf9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 23 21:11:17 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 23 21:11:17 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"bold formatting","epoch":1590293477,"epoch_utc":null},{"commit":"7fd6fecbf5a08b1f13aa7e906e94be9bc126780a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 23 21:09:49 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 23 21:09:49 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1590293389,"epoch_utc":null},{"commit":"8029f72363a4d19938df07603f03a0147f6246a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 23 21:09:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 23 21:09:40 2020 -0700","stats":{"files_changed":6,"insertions":10,"deletions":7,"files":["changelog.txt","docs/parsers/stat.md","jc/cli.py","jc/parsers/stat.py","setup.py","tests/fixtures/osx-10.14.6/stat.json"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":6},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/stat.json","lines_changed":2}]},"message":"change osx_flags from integer to string","epoch":1590293380,"epoch_utc":null},{"commit":"c7fdce5d3b7566a7d290627767c47d9c196e02ad","merge":"f5627a4 84f48aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 16:37:50 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri May 22 16:37:50 2020 -0700","message":"Merge pull request #62 from kellyjonbrazil/dev\n\nDev v1.11.0","epoch":1590190670,"epoch_utc":null},{"commit":"84f48aa369a458f534523ecc1e3aaaf403d06f1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 16:30:22 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 16:30:22 2020 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1590190222,"epoch_utc":null},{"commit":"2e9a0a9c1221dd01bd683ecbc4871d03738da671","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 16:21:55 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 16:21:55 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]},"message":"add features","epoch":1590189715,"epoch_utc":null},{"commit":"c1f6f2b9508e558ab88b4a0a61e93a6cf5460bea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 16:21:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 16:21:40 2020 -0700","stats":{"files_changed":5,"insertions":116,"deletions":4,"files":["docs/parsers/stat.md","jc/parsers/stat.py","tests/fixtures/osx-10.14.6/stat.json","tests/fixtures/osx-10.14.6/stat.out","tests/test_stat.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":8},{"name":"jc/parsers/stat.py","lines_changed":5},{"name":"tests/fixtures/osx-10.14.6/stat.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/stat.out","lines_changed":94},{"name":"tests/test_stat.py","lines_changed":12}]},"message":"osx fixes and tests","epoch":1590189700,"epoch_utc":null},{"commit":"ede21bca13c4b46899721f01d979c8b063f861a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 16:05:04 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 16:05:04 2020 -0700","stats":{"files_changed":1,"insertions":110,"deletions":78,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":188}]},"message":"add OSX support for stat","epoch":1590188704,"epoch_utc":null},{"commit":"8dd9a9f9cbc70a19176f909f6ac76b2bcf670736","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 15:12:10 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 15:12:10 2020 -0700","stats":{"files_changed":5,"insertions":45,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-i.json","tests/fixtures/osx-10.14.6/netstat-i.json","tests/fixtures/ubuntu-18.04/netstat-i.json","tests/fixtures/ubuntu-18.04/netstat-i.out","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/netstat-i.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-i.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-i.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-i.out","lines_changed":4},{"name":"tests/test_netstat.py","lines_changed":38}]},"message":"add netstat -i tests","epoch":1590185530,"epoch_utc":null},{"commit":"04f92cd1330759e4bad1c0304b9e1c28e8d32d59","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 14:04:11 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 14:04:11 2020 -0700","stats":{"files_changed":5,"insertions":166,"deletions":4,"files":["README.md","docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_linux.py","tests/fixtures/centos-7.7/netstat-i.out"],"file_stats":[{"name":"README.md","lines_changed":32},{"name":"docs/parsers/netstat.md","lines_changed":50},{"name":"jc/parsers/netstat.py","lines_changed":44},{"name":"jc/parsers/netstat_linux.py","lines_changed":39},{"name":"tests/fixtures/centos-7.7/netstat-i.out","lines_changed":5}]},"message":"add linux support for netstat -i","epoch":1590181451,"epoch_utc":null},{"commit":"8be8d2393b276a9249e1c573ce19cf630f0942fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 13:38:25 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 13:38:25 2020 -0700","stats":{"files_changed":3,"insertions":99,"deletions":3,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-i.out"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":19},{"name":"jc/parsers/netstat_osx.py","lines_changed":40},{"name":"tests/fixtures/osx-10.14.6/netstat-i.out","lines_changed":43}]},"message":"add netstat -i support for OSX","epoch":1590179905,"epoch_utc":null},{"commit":"0a879681be68fe2e6e5c013ab0fe18de99b04f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 12:56:27 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 12:56:27 2020 -0700","stats":{"files_changed":3,"insertions":97,"deletions":282,"files":["README.md","docs/parsers/netstat.md","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":37},{"name":"docs/parsers/netstat.md","lines_changed":171},{"name":"jc/parsers/netstat.py","lines_changed":171}]},"message":"add netstat -r to docs","epoch":1590177387,"epoch_utc":null},{"commit":"2ca1587a49511899bf719e0b0c7de32158fc491d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 12:44:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 12:44:51 2020 -0700","stats":{"files_changed":10,"insertions":102,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-r.json","tests/fixtures/centos-7.7/netstat-rne.json","tests/fixtures/centos-7.7/netstat-rnee.json","tests/fixtures/ubuntu-18.04/netstat-r.json","tests/fixtures/ubuntu-18.04/netstat-r.out","tests/fixtures/ubuntu-18.04/netstat-rne.json","tests/fixtures/ubuntu-18.04/netstat-rne.out","tests/fixtures/ubuntu-18.04/netstat-rnee.json","tests/fixtures/ubuntu-18.04/netstat-rnee.out","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/netstat-r.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-rne.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-rnee.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-r.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-r.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/netstat-rne.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-rne.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/netstat-rnee.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-rnee.out","lines_changed":5},{"name":"tests/test_netstat.py","lines_changed":81}]},"message":"add linux netstat -r tests","epoch":1590176691,"epoch_utc":null},{"commit":"ec2cd2d708a57c0458657416bedcb4340cb40901","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 12:00:26 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 12:00:26 2020 -0700","stats":{"files_changed":9,"insertions":70,"deletions":11,"files":["docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_linux.py","jc/parsers/netstat_osx.py","tests/fixtures/centos-7.7/netstat-r.out","tests/fixtures/centos-7.7/netstat-rne.out","tests/fixtures/centos-7.7/netstat-rnee.out","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-rnl.json"],"file_stats":[{"name":"docs/parsers/netstat.md","lines_changed":11},{"name":"jc/parsers/netstat.py","lines_changed":13},{"name":"jc/parsers/netstat_linux.py","lines_changed":37},{"name":"jc/parsers/netstat_osx.py","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-r.out","lines_changed":5},{"name":"tests/fixtures/centos-7.7/netstat-rne.out","lines_changed":5},{"name":"tests/fixtures/centos-7.7/netstat-rnee.out","lines_changed":5},{"name":"tests/fixtures/osx-10.14.6/netstat-r.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-rnl.json","lines_changed":2}]},"message":"add netstat -r support for linux","epoch":1590174026,"epoch_utc":null},{"commit":"5d0dbece9317e84a47d9f4b2d18a9ffa33fbee6e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 11:09:41 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 11:09:41 2020 -0700","stats":{"files_changed":8,"insertions":288,"deletions":5,"files":["docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-r.out","tests/fixtures/osx-10.14.6/netstat-rnl.json","tests/fixtures/osx-10.14.6/netstat-rnl.out","tests/test_netstat.py"],"file_stats":[{"name":"docs/parsers/netstat.md","lines_changed":17},{"name":"jc/parsers/netstat.py","lines_changed":23},{"name":"jc/parsers/netstat_osx.py","lines_changed":37},{"name":"tests/fixtures/osx-10.14.6/netstat-r.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-r.out","lines_changed":93},{"name":"tests/fixtures/osx-10.14.6/netstat-rnl.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-rnl.out","lines_changed":96},{"name":"tests/test_netstat.py","lines_changed":25}]},"message":"add netstat -r functionality for OSX","epoch":1590170981,"epoch_utc":null},{"commit":"df1e4b414b2bda5be3153767cd854b2483ba600b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 08:00:18 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 08:00:18 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":[".gitignore"],"file_stats":[{"name":".gitignore","lines_changed":1}]},"message":"remove unused folder","epoch":1590159618,"epoch_utc":null},{"commit":"40760991e7dae43cd15134310f7bbb5ce0f58dae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 07:51:47 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 07:51:47 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["LICENSE.md"],"file_stats":[{"name":"LICENSE.md","lines_changed":2}]},"message":"update copyright date","epoch":1590159107,"epoch_utc":null},{"commit":"464f5f86cf2c8fe6a1a857b0ad4d221a3edf3d88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 07:50:22 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 07:50:22 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"update description","epoch":1590159022,"epoch_utc":null},{"commit":"7b09e9fccdd4f09218a500b54c898ada1b9843c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 21 17:01:17 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 21 17:01:17 2020 -0700","stats":{"files_changed":5,"insertions":8,"deletions":5,"files":["docs/parsers/dmidecode.md","jc/parsers/dmidecode.py","tests/fixtures/centos-7.7/dmidecode.json","tests/fixtures/fedora32/dmidecode.json","tests/fixtures/ubuntu-18.04/dmidecode.json"],"file_stats":[{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":5},{"name":"tests/fixtures/centos-7.7/dmidecode.json","lines_changed":2},{"name":"tests/fixtures/fedora32/dmidecode.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dmidecode.json","lines_changed":2}]},"message":"set empty values to Null and update fixtures","epoch":1590105677,"epoch_utc":null},{"commit":"6cba7d429898d331c674c778f8bd85ba75a8dca9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 21 11:10:00 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 21 11:10:00 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"remove linux from description","epoch":1590084600,"epoch_utc":null},{"commit":"9730f62e4970b5a4490f8dc24b6cfb9cacd0cbf2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 21 09:44:28 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 21 09:44:28 2020 -0700","stats":{"files_changed":5,"insertions":151,"deletions":133,"files":["jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json","tests/fixtures/osx-10.14.6/netstat.out"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":7},{"name":"tests/fixtures/osx-10.14.6/netstat-Abn.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-An.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat.out","lines_changed":271}]},"message":"fixup name field and update test fixtures","epoch":1590079468,"epoch_utc":null},{"commit":"e0c1c87f549eee000b93b5f5a3e8d0b052eb7d32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 21 09:07:01 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 21 09:07:01 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":8}]},"message":"formatting","epoch":1590077221,"epoch_utc":null},{"commit":"931b3d2b836b251590497f4cfa65f106762086c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 19:56:28 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 19:56:28 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1590029788,"epoch_utc":null},{"commit":"e5d561baeecf1fd83a884b3cd9d322762f750dfb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 17:31:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 17:31:51 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":1}]},"message":"add multipath condition for osx detection","epoch":1590021111,"epoch_utc":null},{"commit":"2867593e7aa12299686e2c6aa0f2a79a9b550b53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 17:28:44 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 17:28:44 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":6}]},"message":"changelog update","epoch":1590020924,"epoch_utc":null},{"commit":"dd52fee5635c977d5c77046ab9fe78d2ed10deef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 17:25:25 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 17:25:25 2020 -0700","stats":{"files_changed":7,"insertions":2141,"deletions":0,"files":["tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-Abn.out","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat-An.out","tests/fixtures/osx-10.14.6/netstat.json","tests/fixtures/osx-10.14.6/netstat.out","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/netstat-Abn.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-Abn.out","lines_changed":689},{"name":"tests/fixtures/osx-10.14.6/netstat-An.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-An.out","lines_changed":689},{"name":"tests/fixtures/osx-10.14.6/netstat.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat.out","lines_changed":724},{"name":"tests/test_netstat.py","lines_changed":36}]},"message":"osx netstat tests and fixtures","epoch":1590020725,"epoch_utc":null},{"commit":"8e1f8858273e671a882a07eae1c35b38f5298c94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 16:43:53 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 16:43:53 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":7}]},"message":"fix filtered netstat views","epoch":1590018233,"epoch_utc":null},{"commit":"2d39a58f902e6af77f8f96ffcd1d68b7cbadd56c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 16:14:03 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 16:14:03 2020 -0700","stats":{"files_changed":4,"insertions":81,"deletions":14,"files":["README.md","docs/parsers/dmidecode.md","docs/parsers/netstat.md","jc/parsers/dmidecode.py"],"file_stats":[{"name":"README.md","lines_changed":67},{"name":"docs/parsers/dmidecode.md","lines_changed":4},{"name":"docs/parsers/netstat.md","lines_changed":20},{"name":"jc/parsers/dmidecode.py","lines_changed":4}]},"message":"doc update","epoch":1590016443,"epoch_utc":null},{"commit":"9c4fa2ae2601ca4880c0b078fa917f01f1392e0e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 15:39:47 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 15:39:47 2020 -0700","stats":{"files_changed":2,"insertions":22,"deletions":2,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":21},{"name":"jc/parsers/netstat_osx.py","lines_changed":3}]},"message":"integer conversions and icmp fix","epoch":1590014387,"epoch_utc":null},{"commit":"de52d84e82df6d8c5e2416c6bc44e59c41c685da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 12:02:32 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 12:02:32 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":17}]},"message":"fix udp state and udp46 entries","epoch":1590001352,"epoch_utc":null},{"commit":"ce9b55059a28d363b8b0ae4f3ccbdbdc4bf4b58e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 11:24:38 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 11:24:38 2020 -0700","stats":{"files_changed":2,"insertions":185,"deletions":167,"files":["jc/parsers/netstat.py","jc/parsers/netstat_linux.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":171},{"name":"jc/parsers/netstat_linux.py","lines_changed":181}]},"message":"organize files","epoch":1589999078,"epoch_utc":null},{"commit":"bcd370a6a01a115d470776f5690f8571d68d3930","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 08:19:45 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 08:19:45 2020 -0700","stats":{"files_changed":2,"insertions":5,"deletions":15,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":16},{"name":"jc/parsers/netstat_osx.py","lines_changed":4}]},"message":"code cleanup","epoch":1589987985,"epoch_utc":null},{"commit":"c8216850abd2d0b8cc6761453f853f296e8a28f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 07:19:24 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 07:19:24 2020 -0700","stats":{"files_changed":1,"insertions":19,"deletions":55,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":74}]},"message":"code cleanup","epoch":1589984364,"epoch_utc":null},{"commit":"f5feedb90b39e5c3f4564615482d47ccd145844f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 17:38:14 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 19 17:38:14 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":10,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":11}]},"message":"fix comments","epoch":1589935094,"epoch_utc":null},{"commit":"a4371cd187fe5077018edbfeee77eb17c6a90ad3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 17:36:16 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 19 17:36:16 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":6}]},"message":"support netstat -A","epoch":1589934976,"epoch_utc":null},{"commit":"9d5ba4c83404e4fab5c0f40c30b4735685499a31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 17:14:04 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 19 17:14:04 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":2}]},"message":"formatting","epoch":1589933644,"epoch_utc":null},{"commit":"1639dee1bb93f6f89e8bb7b37134dc1f561c479c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 17:13:03 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 19 17:13:03 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":35,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":45}]},"message":"fix parse_post","epoch":1589933583,"epoch_utc":null},{"commit":"9363f430f20951e6fa739f06c85c5b6b3421b60d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 16:26:41 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 19 16:26:41 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":3}]},"message":"use list extend method to simplify code","epoch":1589930801,"epoch_utc":null},{"commit":"9192a0907364c772558380be1373b8dcea972a6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 16:26:04 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 19 16:26:04 2020 -0700","stats":{"files_changed":1,"insertions":124,"deletions":34,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":158}]},"message":"parse all sections","epoch":1589930764,"epoch_utc":null},{"commit":"b915eb97556ccc5fc60e8d23f7298ffec2d8e3b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 15:15:08 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 19 15:15:08 2020 -0700","stats":{"files_changed":2,"insertions":237,"deletions":55,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":118},{"name":"jc/parsers/netstat_osx.py","lines_changed":174}]},"message":"initial osx parser","epoch":1589926508,"epoch_utc":null},{"commit":"1cfcc2b592f682d2b50a0c4188fa3ae832a6c682","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 14 09:58:16 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 14 09:58:16 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":2}]},"message":"tighten up line test logic when counting tabs","epoch":1589475496,"epoch_utc":null},{"commit":"7138dd02b73073441a52c9b574bf0d6e02f0d7d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 14 09:51:10 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 14 09:51:10 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":11}]},"message":"cleanup variables after adding to item","epoch":1589475070,"epoch_utc":null},{"commit":"b4276643b70f7820f8f53df22b32fffb54e30ca2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 14 09:43:13 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 14 09:43:13 2020 -0700","stats":{"files_changed":4,"insertions":56,"deletions":0,"files":["tests/fixtures/centos-7.7/dmidecode.json","tests/fixtures/fedora32/dmidecode.json","tests/fixtures/ubuntu-18.04/dmidecode.json","tests/test_dmidecode.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/dmidecode.json","lines_changed":1},{"name":"tests/fixtures/fedora32/dmidecode.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dmidecode.json","lines_changed":1},{"name":"tests/test_dmidecode.py","lines_changed":53}]},"message":"add dmidecode tests and fixtures","epoch":1589474593,"epoch_utc":null},{"commit":"2ef00763bfe7c4348f30026759941efe39861a0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 14 09:33:45 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 14 09:33:45 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":4}]},"message":"fix first item","epoch":1589474025,"epoch_utc":null},{"commit":"54364928fc826ead7774a4cec1bcb73a5cb9ee0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 14 08:57:23 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 14 08:57:23 2020 -0700","stats":{"files_changed":2,"insertions":74,"deletions":81,"files":["docs/parsers/dmidecode.md","jc/parsers/dmidecode.py"],"file_stats":[{"name":"docs/parsers/dmidecode.md","lines_changed":37},{"name":"jc/parsers/dmidecode.py","lines_changed":118}]},"message":"fix oddities like hybrid single/multiline data and items containing multiple records","epoch":1589471843,"epoch_utc":null},{"commit":"09b3b4932b0fa4a2b18c88a8465c15a194b727e6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 10:51:38 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 10:51:38 2020 -0700","stats":{"files_changed":3,"insertions":35430,"deletions":0,"files":["tests/fixtures/centos-7.7/dmidecode.out","tests/fixtures/fedora32/dmidecode.out","tests/fixtures/ubuntu-18.04/dmidecode.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/dmidecode.out","lines_changed":11810},{"name":"tests/fixtures/fedora32/dmidecode.out","lines_changed":11810},{"name":"tests/fixtures/ubuntu-18.04/dmidecode.out","lines_changed":11810}]},"message":"add dmidecode output fixtures","epoch":1589392298,"epoch_utc":null},{"commit":"29d6670119d8fcd0344e90f01bfb6260aa936e50","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 10:18:49 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 10:18:49 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":10}]},"message":"convert integers","epoch":1589390329,"epoch_utc":null},{"commit":"2f654b5f1acda01192294f4c18a5a31363e7f387","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 10:13:27 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 10:13:27 2020 -0700","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["docs/parsers/dmidecode.md"],"file_stats":[{"name":"docs/parsers/dmidecode.md","lines_changed":37}]},"message":"doc update","epoch":1589390007,"epoch_utc":null},{"commit":"e53b9f5992450b53efc886b4fa9ca16f3dd07530","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 10:12:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 10:12:40 2020 -0700","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":37}]},"message":"add caveats to documentation","epoch":1589389960,"epoch_utc":null},{"commit":"addb234e6162c58750cb67947bc4776635bf54fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:44:20 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 09:44:20 2020 -0700","stats":{"files_changed":1,"insertions":153,"deletions":0,"files":["docs/parsers/dmidecode.md"],"file_stats":[{"name":"docs/parsers/dmidecode.md","lines_changed":153}]},"message":"add dmidecode doc","epoch":1589388260,"epoch_utc":null},{"commit":"76eca3b65911a0a340d3d94322a8145ee89c50da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:43:35 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 09:43:35 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":1}]},"message":"add dmidecode","epoch":1589388215,"epoch_utc":null},{"commit":"f90dec4c0ecf88623fb22273b7527ec8884826c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:43:23 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 09:43:23 2020 -0700","stats":{"files_changed":1,"insertions":94,"deletions":5,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":99}]},"message":"add examples to documentation","epoch":1589388203,"epoch_utc":null},{"commit":"8900a59d4cb424ff58d1eb27f8fda7ea0a668a5c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:31:12 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 09:31:12 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":19,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":20}]},"message":"simplify logic by removing redundant block","epoch":1589387472,"epoch_utc":null},{"commit":"6685138200d5955115707d04aad0293ea8af5b15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:25:02 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 09:25:02 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":2}]},"message":"fix for missing multi-line values that come immediately after a previous multi-line value","epoch":1589387102,"epoch_utc":null},{"commit":"4d3e65b980d50164b8220e59560822b9871580ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:00:32 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 09:00:32 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":5}]},"message":"fix missing values","epoch":1589385632,"epoch_utc":null},{"commit":"e9282bb546f560da6396f44e2ce9e04136348e2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 08:22:52 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 08:22:52 2020 -0700","stats":{"files_changed":2,"insertions":175,"deletions":0,"files":["jc/cli.py","jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/dmidecode.py","lines_changed":174}]},"message":"add dmidecode parser","epoch":1589383372,"epoch_utc":null},{"commit":"f5627a45947e5e76e5f3e64d9b30099fe0b962a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 11 11:03:02 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 11 11:03:02 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1589220182,"epoch_utc":null},{"commit":"81ffdb25105c681c8ed12336d220a102b7f4215e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 11 10:54:26 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 11 10:54:26 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"remove shebang for Fedora packaging","epoch":1589219666,"epoch_utc":null},{"commit":"4c00a99850cb6f69713be7c6ad9ffba11924d9b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 11 10:37:14 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 11 10:37:14 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1589218634,"epoch_utc":null},{"commit":"2bfcb45b28e2174a8bbc27237e619b5c232ccae8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 11 10:32:42 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 11 10:32:42 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":0}]},"message":"make cli.py executable","epoch":1589218362,"epoch_utc":null},{"commit":"ab0c10e791283affb227d0d5306701ba7fd29d13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 11 10:27:16 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 11 10:27:16 2020 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["LICENSE.md","README.md"],"file_stats":[{"name":"LICENSE.md","lines_changed":0},{"name":"README.md","lines_changed":0}]},"message":"remove execute permissions","epoch":1589218036,"epoch_utc":null},{"commit":"2c1935115de03a28fe92674b04b2542b0eccb8fe","merge":"99070fa d98e43d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:47:05 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sat May 9 11:47:05 2020 -0700","message":"Merge pull request #61 from kellyjonbrazil/dev\n\nDev v1.10.10","epoch":1589050025,"epoch_utc":null},{"commit":"d98e43dc78205d3224bfc1e67de2da3c5fb7ea9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:42:56 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 9 11:42:56 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"add netstat item","epoch":1589049776,"epoch_utc":null},{"commit":"9348988d646d9b9c9970c19e84f311554ae38e7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:41:30 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 9 11:41:30 2020 -0700","stats":{"files_changed":1,"insertions":12,"deletions":0,"files":["tests/test_netstat.py"],"file_stats":[{"name":"tests/test_netstat.py","lines_changed":12}]},"message":"add netstat test for Fedora32","epoch":1589049690,"epoch_utc":null},{"commit":"1285c664679c40b18327c89b85921a80b01f0191","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:36:23 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 9 11:36:23 2020 -0700","stats":{"files_changed":2,"insertions":140,"deletions":0,"files":["tests/fixtures/fedora32/netstat.json","tests/fixtures/fedora32/netstat.out"],"file_stats":[{"name":"tests/fixtures/fedora32/netstat.json","lines_changed":1},{"name":"tests/fixtures/fedora32/netstat.out","lines_changed":139}]},"message":"netstat with bluetooth section","epoch":1589049383,"epoch_utc":null},{"commit":"b7191bbc130e0f33d02c0a4819fa91ffff1599d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:36:03 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 9 11:36:03 2020 -0700","stats":{"files_changed":1,"insertions":14,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":15}]},"message":"handle bluetooth section (ignore for now)","epoch":1589049363,"epoch_utc":null},{"commit":"98b97509f7893cb95e9651ce9706db5c961aa997","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:25:13 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 9 11:25:13 2020 -0700","stats":{"files_changed":3,"insertions":6,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1589048713,"epoch_utc":null},{"commit":"2b2b570490f3834367a598579473001f45738e8a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:22:26 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 9 11:22:26 2020 -0700","stats":{"files_changed":3,"insertions":21,"deletions":0,"files":["tests/fixtures/fedora32/last.json","tests/fixtures/fedora32/last.out","tests/test_last.py"],"file_stats":[{"name":"tests/fixtures/fedora32/last.json","lines_changed":1},{"name":"tests/fixtures/fedora32/last.out","lines_changed":8},{"name":"tests/test_last.py","lines_changed":12}]},"message":"add tests for 'gone - no logout'","epoch":1589048546,"epoch_utc":null},{"commit":"cce2d1ff298f2284c43c4534144329f3533a81ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:22:01 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 9 11:22:01 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":6}]},"message":"add condition for 'gone - no logout'","epoch":1589048521,"epoch_utc":null},{"commit":"b79600c57249cbb65805caad2524cc2492342be6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:01:48 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 9 11:01:48 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"version bump","epoch":1589047308,"epoch_utc":null},{"commit":"140f1a85437745296b56976bef1b46514e323a4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:00:04 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 9 11:00:04 2020 -0700","stats":{"files_changed":7,"insertions":7,"deletions":7,"files":["tests/fixtures/centos-7.7/ls-R-newlines.json","tests/fixtures/centos-7.7/ls-R.json","tests/fixtures/centos-7.7/ls-glob.json","tests/fixtures/osx-10.14.6/ls-glob.json","tests/fixtures/ubuntu-18.04/ls-R-newlines.json","tests/fixtures/ubuntu-18.04/ls-R.json","tests/fixtures/ubuntu-18.04/ls-glob.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ls-R-newlines.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ls-R.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ls-glob.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-glob.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ls-R-newlines.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ls-R.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ls-glob.json","lines_changed":2}]},"message":"test fixes for issue #60","epoch":1589047204,"epoch_utc":null},{"commit":"e34657cfde6816ab7a7415d83580df0a1d98a5a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 15:26:11 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 8 15:26:11 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"fix issue #60 that was skipping the first file in some instances using -R without -l","epoch":1588976771,"epoch_utc":null},{"commit":"99070fa6073c4415a6faf8ca69dd6aa089af4062","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 10:51:13 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 8 10:51:13 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1588960273,"epoch_utc":null},{"commit":"2b46785b1f1281ee63df9159e36068f4607ad9b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 10:49:30 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 8 10:49:30 2020 -0700","stats":{"files_changed":1,"insertions":25,"deletions":3,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":28}]},"message":"add MIT license to vendorized IfconfigParser class","epoch":1588960170,"epoch_utc":null},{"commit":"c72562524b2b9aaca0be372bb24343158829ba5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 09:30:31 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 8 09:30:31 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"fully remove tests from packaging","epoch":1588955431,"epoch_utc":null},{"commit":"b7dd6441c7e3f54f8a260fceef49aae6816c7151","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 08:20:33 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 8 08:20:33 2020 -0700","stats":{"files_changed":2,"insertions":5,"deletions":1,"files":["changelog.txt","jc/cli.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/cli.py","lines_changed":2}]},"message":"version bump","epoch":1588951233,"epoch_utc":null},{"commit":"31fcc2f755ad86622cf51a75879b14d44f246300","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 08:20:21 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 8 08:20:21 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["MANIFEST.in"],"file_stats":[{"name":"MANIFEST.in","lines_changed":1}]},"message":"remove manifest.in - no longer needed due to removing tests","epoch":1588951221,"epoch_utc":null},{"commit":"b391aa14bceffedb5a9c13f3f908923790edefc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 08:19:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 8 08:19:51 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["setup.cfg"],"file_stats":[{"name":"setup.cfg","lines_changed":2}]},"message":"add license_file to metadata","epoch":1588951191,"epoch_utc":null},{"commit":"d3c45debbb6690acd341fbcc9b99d1ae4cf0a43c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 08:19:31 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 8 08:19:31 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":5}]},"message":"remove tests and add license file","epoch":1588951171,"epoch_utc":null},{"commit":"5b08469b874553744bd5c5b1fa6581f4dcffacd0","merge":"8cf00a2 4a77ec6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 1 15:55:50 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri May 1 15:55:50 2020 -0700","message":"Merge pull request #57 from kellyjonbrazil/dev\n\nDev v1.10.7","epoch":1588373750,"epoch_utc":null},{"commit":"4a77ec63a46554c84e646d31564230774ed87431","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 1 14:57:50 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 1 14:57:50 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["docs/parsers/ifconfig.md"],"file_stats":[{"name":"docs/parsers/ifconfig.md","lines_changed":11}]},"message":"add IfconfigParser class","epoch":1588370270,"epoch_utc":null},{"commit":"d13606b6dc2c207be6dea89a2c3e713c18a574b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 1 14:37:23 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 1 14:37:23 2020 -0700","stats":{"files_changed":4,"insertions":7,"deletions":6,"files":["changelog.txt","jc/cli.py","requirements.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"requirements.txt","lines_changed":3},{"name":"setup.py","lines_changed":5}]},"message":"modify dependencies for easier packaging into Fedora","epoch":1588369043,"epoch_utc":null},{"commit":"05291c93bba1aa364ba1ac7f2508e24bb362a814","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 1 14:36:54 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 1 14:36:54 2020 -0700","stats":{"files_changed":1,"insertions":198,"deletions":3,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":201}]},"message":"vendorize ifconfig-parser module for easier packaging in Fedora","epoch":1588369014,"epoch_utc":null},{"commit":"8cf00a208eb8493300331e7361b72e4f9e3f140e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 29 15:57:55 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 29 15:57:55 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"change text to strings","epoch":1588201075,"epoch_utc":null},{"commit":"06d73c88767a5b4d6003231c897c447ee5e1faa5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 23 07:06:44 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 23 07:06:44 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1587650804,"epoch_utc":null},{"commit":"649c646ea25ac7f89900cffa8919df01671bd32d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 22 16:08:34 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 22 16:08:34 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"add brew install option","epoch":1587596914,"epoch_utc":null},{"commit":"b7756d92501a7b8ba8e77d77d9d3718a58425beb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 20 16:33:26 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 20 16:33:26 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1587425606,"epoch_utc":null},{"commit":"1cd2cd954c21e5caec333507bd81819c82d45b49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 20 16:31:22 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 20 16:31:22 2020 -0700","stats":{"files_changed":4,"insertions":2,"deletions":16,"files":["tests/fixtures/osx-10.11.6/du.json","tests/fixtures/osx-10.11.6/du.out","tests/fixtures/osx-10.14.6/du.json","tests/fixtures/osx-10.14.6/du.out"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/du.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/du.out","lines_changed":7},{"name":"tests/fixtures/osx-10.14.6/du.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/du.out","lines_changed":7}]},"message":"remove references to homebrew/shim to allow tests to pass in homebrew packaging ci/cd","epoch":1587425482,"epoch_utc":null},{"commit":"72020b8da999ddca6f9ba82da235c9f42e4f4273","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 17 10:20:25 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 17 10:20:25 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":22,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":24}]},"message":"move packages info to jc-packages github page","epoch":1587144025,"epoch_utc":null},{"commit":"cf9720b749e7fc8caed0d2f1f2b1727a22a156b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 16 14:03:31 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 16 14:03:31 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"update install info","epoch":1587071011,"epoch_utc":null},{"commit":"967b9db7f90a3c3a0352edde7f4455c5f5d45b18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 15 21:27:22 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 15 21:27:22 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":6}]},"message":"spelling","epoch":1587011242,"epoch_utc":null},{"commit":"bb3acb1182f4d509f9ddc7dfcffa4578e0a2bd5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 15 21:25:06 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 15 21:25:06 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1587011106,"epoch_utc":null},{"commit":"560c7f7e6d1f8a69ab026ddbff753d232ca1d00b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 15 21:23:55 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 15 21:23:55 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1587011035,"epoch_utc":null},{"commit":"79b28417644e00b933f531374d2f7fe8051e61be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 15 21:22:43 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 15 21:22:43 2020 -0700","stats":{"files_changed":1,"insertions":26,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":26}]},"message":"add new binary package install info","epoch":1587010963,"epoch_utc":null},{"commit":"a06a89cbd11026aa3910fadd1eff7fe388d02507","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 14 11:15:24 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 14 11:15:24 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1586888124,"epoch_utc":null},{"commit":"431bd969eb4809424fe99a02a7decb98bce9ea51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 14 11:10:31 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 14 11:10:31 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"use sys.exit(0) instead of exit()","epoch":1586887831,"epoch_utc":null},{"commit":"c87b722aec6e6964c516bbb8e80667ad7d9c6bc7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:23:58 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 12 13:23:58 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"spelling","epoch":1586723038,"epoch_utc":null},{"commit":"3688b8b014a1cf753b2207fbf3ebf0292c3fd672","merge":"99f7842 07b8d9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:21:38 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Apr 12 13:21:38 2020 -0700","message":"Merge pull request #56 from kellyjonbrazil/dev\n\nDev v1.10.4","epoch":1586722898,"epoch_utc":null},{"commit":"07b8d9e0c0d723d93e6c652f5b6156c467c451c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:18:28 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 12 13:18:28 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1586722708,"epoch_utc":null},{"commit":"7454b53e395e9122c00d4cf06b1c2af109913d7a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:13:28 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 12 13:13:28 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"formatting","epoch":1586722408,"epoch_utc":null},{"commit":"3d6a76024de0f9dcf91a4ab49cabe461074114fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:10:57 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 12 13:10:57 2020 -0700","stats":{"files_changed":1,"insertions":18,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":18}]},"message":"update with JC_COLORS info","epoch":1586722257,"epoch_utc":null},{"commit":"421b9809575a8de00229af4b851739889638ac74","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:03:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 12 13:03:09 2020 -0700","stats":{"files_changed":1,"insertions":18,"deletions":37,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":55}]},"message":"JC_COLORS working","epoch":1586721789,"epoch_utc":null},{"commit":"4a22e27d6a80a988f4de17bce421110d6abb8867","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 12:43:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 12 12:43:51 2020 -0700","stats":{"files_changed":1,"insertions":64,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":64}]},"message":"add set_env_colors function","epoch":1586720631,"epoch_utc":null},{"commit":"99f7842dee0f79cf933fae185cf8b0ed7c8b210f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 9 13:38:33 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 9 13:38:33 2020 -0700","stats":{"files_changed":3,"insertions":11,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":8},{"name":"setup.py","lines_changed":2}]},"message":"fix brek on pipe error","epoch":1586464713,"epoch_utc":null},{"commit":"7f869b4b187d70752207a7e74c13b858446f898f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 9 07:31:21 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 9 07:31:21 2020 -0700","stats":{"files_changed":3,"insertions":9,"deletions":11,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":15},{"name":"setup.py","lines_changed":2}]},"message":"change colors to ansi and match jello style","epoch":1586442681,"epoch_utc":null},{"commit":"9665f4ee84680f3a8154b8a43ea668af2907782c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 7 08:44:15 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 7 08:44:15 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add pypi badge","epoch":1586274255,"epoch_utc":null},{"commit":"606904d48b1c7e0c19a940b5be0b564d1b5be6c8","merge":"302f05c 3f5279b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:28:21 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sat Apr 4 17:28:21 2020 -0700","message":"Merge pull request #53 from kellyjonbrazil/dev\n\nDev v1.10.1","epoch":1586046501,"epoch_utc":null},{"commit":"3f5279b97c386c736e0e2faa5c39d68ef89c46aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:25:55 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:25:55 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to 1.10.1","epoch":1586046355,"epoch_utc":null},{"commit":"f5ec21e6ac612566af93158fc3968b901322d04a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:19:32 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:19:32 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_luf.py"],"file_stats":[{"name":"jc/parsers/systemctl_luf.py","lines_changed":4}]},"message":"use in instead of find()","epoch":1586045972,"epoch_utc":null},{"commit":"578a284465f014fe71ad6ac00bd41dc24ab2ced9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:18:39 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:18:39 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_ls.py"],"file_stats":[{"name":"jc/parsers/systemctl_ls.py","lines_changed":4}]},"message":"use in instead of find()","epoch":1586045919,"epoch_utc":null},{"commit":"422e392d9d98a7864312fc7fbd7f45537b71acbe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:17:43 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:17:43 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_lj.py"],"file_stats":[{"name":"jc/parsers/systemctl_lj.py","lines_changed":4}]},"message":"use in instead of find()","epoch":1586045863,"epoch_utc":null},{"commit":"54dfffd34a17d1194690142ac403391fc65bb85f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:16:25 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:16:25 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl.py"],"file_stats":[{"name":"jc/parsers/systemctl.py","lines_changed":4}]},"message":"use in instead of find()","epoch":1586045785,"epoch_utc":null},{"commit":"cffba64d2b9165b44a8856665807111a2ad3a190","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:15:03 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:15:03 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":14}]},"message":"use in and startswith() instead of find()","epoch":1586045703,"epoch_utc":null},{"commit":"56a0c12a59bb252d3b7d0929f9fb19b4d96a8437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:12:22 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:12:22 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/pip_list.py"],"file_stats":[{"name":"jc/parsers/pip_list.py","lines_changed":6}]},"message":"use in instead of find()","epoch":1586045542,"epoch_utc":null},{"commit":"c174d3de18923b2b03befb5a7dfcbd977a8e147e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:10:46 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:10:46 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":14}]},"message":"use in and startswith() instead of find()","epoch":1586045446,"epoch_utc":null},{"commit":"a9c59ef9fc1bb68c9d0d7beffbeb670baf5b1e3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:07:38 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:07:38 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/mount.py"],"file_stats":[{"name":"jc/parsers/mount.py","lines_changed":2}]},"message":"fix logic to not for ' type ' in cleandata[0]","epoch":1586045258,"epoch_utc":null},{"commit":"abdb9b26732a6a71f5938d665b2ca43a381e1b33","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:05:17 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:05:17 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/mount.py"],"file_stats":[{"name":"jc/parsers/mount.py","lines_changed":4}]},"message":"use in instead of find()","epoch":1586045117,"epoch_utc":null},{"commit":"548aaab6262878d21f8b9539950cfad48638e35c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:04:20 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:04:20 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":42,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":43}]},"message":"remove old commented code","epoch":1586045060,"epoch_utc":null},{"commit":"20571c87ae9e1ca8a1f3120511910751420a35ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:01:56 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:01:56 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":6}]},"message":"us in instead of find()","epoch":1586044916,"epoch_utc":null},{"commit":"19e49200de5c731f76b42e80388c5223e8097e39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:59:48 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 16:59:48 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":2}]},"message":"version bump","epoch":1586044788,"epoch_utc":null},{"commit":"d32f5c67a91ede572c88e431b2ad0ce4d6c87dec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:59:03 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 16:59:03 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":4}]},"message":"use startswith() instead of find()","epoch":1586044743,"epoch_utc":null},{"commit":"b83b626435c55d2aa63e56dd8f22603da59e7626","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:57:23 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 16:57:23 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":4}]},"message":"use startswith() instead of find()","epoch":1586044643,"epoch_utc":null},{"commit":"ab2c1b25ec5da5f2ba238868c4dfca95a44da30e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:56:11 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 16:56:11 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/hosts.py"],"file_stats":[{"name":"jc/parsers/hosts.py","lines_changed":6}]},"message":"use startswith() and in instead of find()","epoch":1586044571,"epoch_utc":null},{"commit":"f2d46313a4508f13656cdb360f83fdf4116cc7d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:53:55 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 16:53:55 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/fstab.py"],"file_stats":[{"name":"jc/parsers/fstab.py","lines_changed":4}]},"message":"use startswith() instead of find()","epoch":1586044435,"epoch_utc":null},{"commit":"87e4796a6c936793e2784346819c7033d59b91e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:52:45 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 16:52:45 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":4}]},"message":"use in instead of .find()","epoch":1586044365,"epoch_utc":null},{"commit":"0014a5c2f4c056c2683d6614a65d778b1f527932","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:51:36 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 16:51:36 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab_u.py"],"file_stats":[{"name":"jc/parsers/crontab_u.py","lines_changed":6}]},"message":"us startswith() and in instead of .find()","epoch":1586044296,"epoch_utc":null},{"commit":"7af56e0dadab7d8b9538f3b7a550ad6dd1ac217d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:50:05 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 16:50:05 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":6}]},"message":"use startswith() and in instead of find()","epoch":1586044205,"epoch_utc":null},{"commit":"a5ae6e3c017b041f9079ff12455b7551ad204cb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:48:16 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 16:48:16 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":6}]},"message":"use startswith() instead of find()","epoch":1586044096,"epoch_utc":null},{"commit":"fe1a0d1faf46f55ed2888ed0065f3f3144691ed8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:46:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 16:46:09 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":9,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":19}]},"message":"use in instead of .find()","epoch":1586043969,"epoch_utc":null},{"commit":"302f05cdda305e46e69b74d5b0096f64c17da637","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 3 14:50:20 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 3 14:50:20 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"prettify style block","epoch":1585950620,"epoch_utc":null},{"commit":"c0044be7b0b6dadcffb64cb88ad92bf653dd2b6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 3 14:48:19 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 3 14:48:19 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"rename color grey to gray","epoch":1585950499,"epoch_utc":null},{"commit":"01100788070b82b4b827ef356972fa9b8f737eeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 3 14:47:08 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 3 14:47:08 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update badge","epoch":1585950428,"epoch_utc":null},{"commit":"42eacb45f8fdf8085c6231bf5297629c2ec97c22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 3 14:45:04 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Apr 3 14:45:04 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"rename to Tests","epoch":1585950304,"epoch_utc":null},{"commit":"a43e2e19916662d509883457c160d7f95f97ae12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 2 17:40:06 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 2 17:40:06 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add -m option info","epoch":1585874406,"epoch_utc":null},{"commit":"c8b721d4f6e46a2db77e1140b9caeb3b403fef72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 2 17:35:35 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 2 17:35:35 2020 -0700","stats":{"files_changed":4,"insertions":9,"deletions":3,"files":["changelog.txt","jc/cli.py","requirements.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/cli.py","lines_changed":2},{"name":"requirements.txt","lines_changed":1},{"name":"setup.py","lines_changed":5}]},"message":"version bump to 1.10.0","epoch":1585874135,"epoch_utc":null},{"commit":"d0bfddc3d9989444757d6668726c916e5363620b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 2 17:29:25 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 2 17:29:25 2020 -0700","stats":{"files_changed":1,"insertions":41,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":47}]},"message":"add color and -m monochrome option","epoch":1585873765,"epoch_utc":null},{"commit":"6b925a16c87cf75bb30edfda38511e8f84a4f6d6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 2 10:55:32 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 2 10:55:32 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add tests badge","epoch":1585850132,"epoch_utc":null},{"commit":"89ebd9fc2271d2c76353d5707bfd4afb7dedc278","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 27 07:31:08 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 27 07:31:08 2020 -0700","stats":{"files_changed":2,"insertions":20,"deletions":0,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":10},{"name":"jc/parsers/dig.py","lines_changed":10}]},"message":"add axfr info to schema","epoch":1585319468,"epoch_utc":null},{"commit":"6b4ba662317629839aa62fbcfefb8ed3337c37ef","merge":"8ec8cd6 5b697dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 17:15:13 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Mar 26 17:15:13 2020 -0700","message":"Merge pull request #52 from kellyjonbrazil/dev\n\nDev v1.9.3","epoch":1585268113,"epoch_utc":null},{"commit":"5b697dc38141cdd47fcdd63bf295a80a7da86697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 17:09:29 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 26 17:09:29 2020 -0700","stats":{"files_changed":1,"insertions":72,"deletions":0,"files":["tests/test_dig.py"],"file_stats":[{"name":"tests/test_dig.py","lines_changed":72}]},"message":"add more dig tests","epoch":1585267769,"epoch_utc":null},{"commit":"9ba73c95d1a528a9a92be4068805bb5aa027901e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 16:45:29 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 26 16:45:29 2020 -0700","stats":{"files_changed":7,"insertions":215,"deletions":0,"files":["tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/centos-7.7/dig-axfr.out","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-axfr.out","tests/fixtures/ubuntu-18.04/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-axfr.out","tests/test_dig.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/dig-axfr.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/dig-axfr.out","lines_changed":60},{"name":"tests/fixtures/osx-10.14.6/dig-axfr.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig-axfr.out","lines_changed":59},{"name":"tests/fixtures/ubuntu-18.04/dig-axfr.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dig-axfr.out","lines_changed":57},{"name":"tests/test_dig.py","lines_changed":36}]},"message":"add tests","epoch":1585266329,"epoch_utc":null},{"commit":"93aa39044749c4c0ed749f62fb00fc1c76dc5af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 16:30:17 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 26 16:30:17 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to v1.9.3","epoch":1585265417,"epoch_utc":null},{"commit":"3cfb8945ddd83c00a720c44e2c1d97da0d8bad25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 16:29:59 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 26 16:29:59 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":18}]},"message":"use startswith() instead of find","epoch":1585265399,"epoch_utc":null},{"commit":"cd8d38f2a136c4f35efc020b3476d09e965b71f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 16:22:53 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 26 16:22:53 2020 -0700","stats":{"files_changed":1,"insertions":50,"deletions":1,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":51}]},"message":"add axfr support","epoch":1585264973,"epoch_utc":null},{"commit":"8ec8cd62944c59c462ab9f520c1dcfd14218b1ed","merge":"e5bea9a c028113","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 17:09:04 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Mar 12 17:09:04 2020 -0700","message":"Merge pull request #50 from kellyjonbrazil/dev\n\nDev v1.9.2","epoch":1584058144,"epoch_utc":null},{"commit":"c02811356153c2b4f8b2d7efb7f48bf8f7748068","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 17:06:55 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 12 17:06:55 2020 -0700","stats":{"files_changed":3,"insertions":6,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":5},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to v1.9.2","epoch":1584058015,"epoch_utc":null},{"commit":"5f22e1c8031b808ef02ffe078408bd58cc76e570","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 17:02:26 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 12 17:02:26 2020 -0700","stats":{"files_changed":3,"insertions":33,"deletions":0,"files":["tests/fixtures/osx-10.14.6/arp-a2.json","tests/fixtures/osx-10.14.6/arp-a2.out","tests/test_arp.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/arp-a2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/arp-a2.out","lines_changed":20},{"name":"tests/test_arp.py","lines_changed":12}]},"message":"fix and test for osx arp entries without ifscope","epoch":1584057746,"epoch_utc":null},{"commit":"d3351787e5cabd064c19e6617e9535e501686404","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 16:52:33 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 12 16:52:33 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":9,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":19}]},"message":"change osx detection","epoch":1584057153,"epoch_utc":null},{"commit":"e5bea9ae3b0a70b38f7da7dd9184343dbbd18887","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 08:52:01 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 12 08:52:01 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/file.py"],"file_stats":[{"name":"jc/parsers/file.py","lines_changed":2}]},"message":"version bump","epoch":1584028321,"epoch_utc":null},{"commit":"93c710abe9171568f61f65c4f84c040ffc24870c","merge":"400f5a4 c29e7cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 08:23:10 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Mar 12 08:23:10 2020 -0700","message":"Merge pull request #49 from kellyjonbrazil/dev\n\nDev v1.9.1","epoch":1584026590,"epoch_utc":null},{"commit":"c29e7cfe5cc4b2151912c6f618137d1b6c39c7be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 08:17:28 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 12 08:17:28 2020 -0700","stats":{"files_changed":4,"insertions":9,"deletions":6,"files":["README.md","changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to 1.9.1","epoch":1584026248,"epoch_utc":null},{"commit":"cb5c1ba00dc0e02bf6ad6c40096d99e319fa6171","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 17:04:48 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 11 17:04:48 2020 -0700","stats":{"files_changed":3,"insertions":101,"deletions":0,"files":["tests/fixtures/osx-10.14.6/file2.json","tests/fixtures/osx-10.14.6/file2.out","tests/test_file.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/file2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/file2.out","lines_changed":88},{"name":"tests/test_file.py","lines_changed":12}]},"message":"add tests for fix to make the file parser splitting more robust","epoch":1583971488,"epoch_utc":null},{"commit":"9a012b94e1942a14bc6dae3fb967ef618819c77b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 15:40:34 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 11 15:40:34 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/file.py"],"file_stats":[{"name":"jc/parsers/file.py","lines_changed":2}]},"message":"make splitting more robust","epoch":1583966434,"epoch_utc":null},{"commit":"400f5a44ece280cb0097d806b78a9490d2905600","merge":"c7cd2b6 a2ab5ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 13:37:22 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 11 13:37:22 2020 -0700","message":"Merge pull request #48 from kellyjonbrazil/dev\n\nDev v1.9.0","epoch":1583959042,"epoch_utc":null},{"commit":"a2ab5bab91ea980399df1afb9d8071fa3282d04e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 13:32:58 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 11 13:32:58 2020 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to v1.9.0","epoch":1583958778,"epoch_utc":null},{"commit":"fc8ab27361df3359b706125531b2643612d6996a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 13:24:55 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 11 13:24:55 2020 -0700","stats":{"files_changed":6,"insertions":93,"deletions":51,"files":["README.md","docs/parsers/ntpq.md","jc/parsers/ntpq.py","tests/fixtures/ubuntu-18.04/ntpq-p2.json","tests/fixtures/ubuntu-18.04/ntpq-p2.out","tests/test_ntpq.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"docs/parsers/ntpq.md","lines_changed":40},{"name":"jc/parsers/ntpq.py","lines_changed":59},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p2.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p2.out","lines_changed":24},{"name":"tests/test_ntpq.py","lines_changed":12}]},"message":"bugfix for misaligned columns and additional test for ntpq #31","epoch":1583958295,"epoch_utc":null},{"commit":"59f19d33a5c6677ea756a9424fdb032b430511a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 12:39:59 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 11 12:39:59 2020 -0700","stats":{"files_changed":7,"insertions":153,"deletions":0,"files":["tests/fixtures/centos-7.7/file.json","tests/fixtures/centos-7.7/file.out","tests/fixtures/osx-10.14.6/file.json","tests/fixtures/osx-10.14.6/file.out","tests/fixtures/ubuntu-18.04/file.json","tests/fixtures/ubuntu-18.04/file.out","tests/test_file.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/file.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/file.out","lines_changed":25},{"name":"tests/fixtures/osx-10.14.6/file.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/file.out","lines_changed":53},{"name":"tests/fixtures/ubuntu-18.04/file.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/file.out","lines_changed":20},{"name":"tests/test_file.py","lines_changed":52}]},"message":"add file command tests for #41","epoch":1583955599,"epoch_utc":null},{"commit":"dfc96181159748d019419a2cba7aa9cb3b7a2a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 12:20:58 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 11 12:20:58 2020 -0700","stats":{"files_changed":6,"insertions":260,"deletions":1,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/file.md","jc/cli.py","jc/parsers/file.py"],"file_stats":[{"name":"README.md","lines_changed":36},{"name":"changelog.txt","lines_changed":5},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/file.md","lines_changed":90},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/file.py","lines_changed":128}]},"message":"add file parser for issue #41","epoch":1583954458,"epoch_utc":null},{"commit":"8e02e5c75a11cf205299ee6f87b67f9b787cf55e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 09:21:14 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 11 09:21:14 2020 -0700","stats":{"files_changed":2,"insertions":6,"deletions":5,"files":["jc/cli.py","tests/test_cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8},{"name":"tests/test_cli.py","lines_changed":3}]},"message":"fix issue with getting options with some commands #47","epoch":1583943674,"epoch_utc":null},{"commit":"970493ab9346a344b21be7614903ad81bc65a6e9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 06:22:54 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 11 06:22:54 2020 -0700","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["jc/parsers/airport.py","jc/parsers/airport_s.py"],"file_stats":[{"name":"jc/parsers/airport.py","lines_changed":1},{"name":"jc/parsers/airport_s.py","lines_changed":1}]},"message":"add magic commands","epoch":1583932974,"epoch_utc":null},{"commit":"64d78956eb33ca0a2564fded3d12729ee036a915","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 22:18:26 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 22:18:26 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"update acknowledgment","epoch":1583903906,"epoch_utc":null},{"commit":"40c05346f4098f8eea14c42da07df3faa143587a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 22:16:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 22:16:40 2020 -0700","stats":{"files_changed":1,"insertions":12,"deletions":25,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":37}]},"message":"re-adding optimizations from https://github.com/philippeitis","epoch":1583903800,"epoch_utc":null},{"commit":"e9b0bc1409a824a82dabd2479892b7d18bad8c3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 22:03:54 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 22:03:54 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/airport.py"],"file_stats":[{"name":"jc/parsers/airport.py","lines_changed":2}]},"message":"doc update","epoch":1583903034,"epoch_utc":null},{"commit":"798e6bb7d939176bb36771a6d41bd55403d583be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 22:03:44 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 22:03:44 2020 -0700","stats":{"files_changed":2,"insertions":29,"deletions":0,"files":["tests/fixtures/osx-10.14.6/airport-s.json","tests/test_airport_s.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/airport-s.json","lines_changed":1},{"name":"tests/test_airport_s.py","lines_changed":28}]},"message":"tests passing for airport -s. issue #46","epoch":1583903024,"epoch_utc":null},{"commit":"12a370deed03ba42d7b7ebb410195ce5f32bb9c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 21:51:02 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 21:51:02 2020 -0700","stats":{"files_changed":8,"insertions":372,"deletions":9,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/airport.md","docs/parsers/airport_s.md","jc/cli.py","jc/parsers/airport.py","jc/parsers/airport_s.py"],"file_stats":[{"name":"README.md","lines_changed":47},{"name":"changelog.txt","lines_changed":2},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/airport.md","lines_changed":4},{"name":"docs/parsers/airport_s.md","lines_changed":136},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/airport.py","lines_changed":5},{"name":"jc/parsers/airport_s.py","lines_changed":185}]},"message":"add airport -s parser for issue #46","epoch":1583902262,"epoch_utc":null},{"commit":"553bfbe1a0dd866851ba7eca66e9295c2097ad86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 21:02:17 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 21:02:17 2020 -0700","stats":{"files_changed":3,"insertions":40,"deletions":6,"files":["docs/parsers/airport.md","jc/parsers/airport.py","tests/test_airport.py"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":9},{"name":"jc/parsers/airport.py","lines_changed":9},{"name":"tests/test_airport.py","lines_changed":28}]},"message":"tests passing for airport -I. Issue #46","epoch":1583899337,"epoch_utc":null},{"commit":"52494321fcfe0dc7ee71d8d78210b3c10372a237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 20:55:07 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 20:55:07 2020 -0700","stats":{"files_changed":5,"insertions":120,"deletions":15,"files":["README.md","docs/parsers/airport.md","jc/parsers/airport.py","tests/fixtures/osx-10.14.6/airport-I.json","tests/fixtures/osx-10.14.6/airport-I.out"],"file_stats":[{"name":"README.md","lines_changed":22},{"name":"docs/parsers/airport.md","lines_changed":48},{"name":"jc/parsers/airport.py","lines_changed":62},{"name":"tests/fixtures/osx-10.14.6/airport-I.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/airport-I.out","lines_changed":2}]},"message":"fixes and docs for airport parser issue #46","epoch":1583898907,"epoch_utc":null},{"commit":"c6c9e06496683d2dd3586d17085801c7e698d960","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 20:35:52 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 20:35:52 2020 -0700","stats":{"files_changed":7,"insertions":196,"deletions":1,"files":["changelog.txt","docgen.sh","docs/parsers/airport.md","jc/cli.py","jc/parsers/airport.py","tests/fixtures/osx-10.14.6/airport-I.out","tests/fixtures/osx-10.14.6/airport-s.out"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/airport.md","lines_changed":64},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/airport.py","lines_changed":98},{"name":"tests/fixtures/osx-10.14.6/airport-I.out","lines_changed":15},{"name":"tests/fixtures/osx-10.14.6/airport-s.out","lines_changed":15}]},"message":"added airport command parser","epoch":1583897752,"epoch_utc":null},{"commit":"e3a6c05a58a2451e70975d8fabf644c56603c73d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 20:26:53 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 20:26:53 2020 -0700","stats":{"files_changed":5,"insertions":64,"deletions":17,"files":["docs/parsers/timedatectl.md","jc/parsers/timedatectl.py","tests/fixtures/centos-7.7/timedatectl.json","tests/fixtures/ubuntu-18.04/timedatectl.json","tests/test_timedatectl.py"],"file_stats":[{"name":"docs/parsers/timedatectl.md","lines_changed":18},{"name":"jc/parsers/timedatectl.py","lines_changed":21},{"name":"tests/fixtures/centos-7.7/timedatectl.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/timedatectl.json","lines_changed":1},{"name":"tests/test_timedatectl.py","lines_changed":40}]},"message":"timedatectl fixes, tests, and fixtures for issue #42","epoch":1583897213,"epoch_utc":null},{"commit":"391d06f68d1f45d33590d5407d3a5e4f723af717","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 20:16:41 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 20:16:41 2020 -0700","stats":{"files_changed":7,"insertions":35,"deletions":35,"files":["README.md","docs/parsers/ntpq.md","jc/parsers/ntpq.py","tests/fixtures/centos-7.7/ntpq-p.json","tests/fixtures/centos-7.7/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-p.json","tests/fixtures/ubuntu-18.04/ntpq-pn.json"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docs/parsers/ntpq.md","lines_changed":26},{"name":"jc/parsers/ntpq.py","lines_changed":32},{"name":"tests/fixtures/centos-7.7/ntpq-p.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ntpq-pn.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ntpq-pn.json","lines_changed":2}]},"message":"change selection_state to state","epoch":1583896601,"epoch_utc":null},{"commit":"99804ea06e0c70e3a82ddc7f9c7a42343374d700","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 18:37:55 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 18:37:55 2020 -0700","stats":{"files_changed":6,"insertions":222,"deletions":0,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/timedatectl.md","jc/cli.py","jc/parsers/timedatectl.py"],"file_stats":[{"name":"README.md","lines_changed":15},{"name":"changelog.txt","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/timedatectl.md","lines_changed":85},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/timedatectl.py","lines_changed":119}]},"message":"added timedatectl status parser","epoch":1583890675,"epoch_utc":null},{"commit":"51935deb2ad18e4ea3ca16954ce810354f6095a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 18:00:47 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 18:00:47 2020 -0700","stats":{"files_changed":2,"insertions":21,"deletions":0,"files":["tests/fixtures/centos-7.7/timedatectl.out","tests/fixtures/ubuntu-18.04/timedatectl.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/timedatectl.out","lines_changed":14},{"name":"tests/fixtures/ubuntu-18.04/timedatectl.out","lines_changed":7}]},"message":"timedatectl test fixtures","epoch":1583888447,"epoch_utc":null},{"commit":"b24d0c3a475b88d9ccf1a8fe29715ee60972fcad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 18:00:26 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 18:00:26 2020 -0700","stats":{"files_changed":2,"insertions":34,"deletions":2,"files":["README.md","jc/parsers/ntpq.py"],"file_stats":[{"name":"README.md","lines_changed":33},{"name":"jc/parsers/ntpq.py","lines_changed":3}]},"message":"ntpq docs","epoch":1583888426,"epoch_utc":null},{"commit":"762a886d6fdf5c2ad21d81868d138fb32621ed1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 15:17:25 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 15:17:25 2020 -0700","stats":{"files_changed":8,"insertions":133,"deletions":0,"files":["tests/fixtures/centos-7.7/ntpq-p.json","tests/fixtures/centos-7.7/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-p.json","tests/fixtures/ubuntu-18.04/ntpq-p.out","tests/fixtures/ubuntu-18.04/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-pn.out","tests/fixtures/ubuntu-18.04/ntqp-p.out","tests/test_ntpq.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ntpq-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ntpq-pn.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-18.04/ntpq-pn.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ntpq-pn.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-18.04/ntqp-p.out","lines_changed":21},{"name":"tests/test_ntpq.py","lines_changed":66}]},"message":"add ntpq tests","epoch":1583878645,"epoch_utc":null},{"commit":"2c3e9ddfe47f56cd7edc2fdf6317f7ecec0b7918","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 14:18:55 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 14:18:55 2020 -0700","stats":{"files_changed":7,"insertions":543,"deletions":0,"files":["changelog.txt","docgen.sh","docs/parsers/ntpq.md","jc/cli.py","jc/parsers/ntpq.py","tests/fixtures/centos-7.7/ntpq-p.out","tests/fixtures/centos-7.7/ntpq-pn.out"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ntpq.md","lines_changed":235},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/ntpq.py","lines_changed":291},{"name":"tests/fixtures/centos-7.7/ntpq-p.out","lines_changed":6},{"name":"tests/fixtures/centos-7.7/ntpq-pn.out","lines_changed":6}]},"message":"add ntpq parser for issue #31","epoch":1583875135,"epoch_utc":null},{"commit":"c7cd2b63c8f24e9d17c458880fe401d8032395ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 9 11:46:17 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 9 11:46:17 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":91,"files":["tests/fixtures/generic/oscar_age_male.csv"],"file_stats":[{"name":"tests/fixtures/generic/oscar_age_male.csv","lines_changed":91}]},"message":"delete unused test file","epoch":1583779577,"epoch_utc":null},{"commit":"f0528ea83112e71ff51c89be27fc9bbdfbbf1951","merge":"b5eaff2 5bc5596","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:54:13 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Mar 8 14:54:13 2020 -0700","message":"Merge pull request #45 from kellyjonbrazil/dev\n\nDev v1.8.1","epoch":1583704453,"epoch_utc":null},{"commit":"5bc5596f604fb87dffbfdf44ce2395b16bf01297","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:49:23 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 8 14:49:23 2020 -0700","stats":{"files_changed":4,"insertions":17,"deletions":4,"files":["changelog.txt","jc/cli.py","setup.py","tests/test_ls.py"],"file_stats":[{"name":"changelog.txt","lines_changed":5},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2},{"name":"tests/test_ls.py","lines_changed":12}]},"message":"version bump to 1.8.1","epoch":1583704163,"epoch_utc":null},{"commit":"2c27ac46be803b583caf82c1765bd0c35cee8bc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:43:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 8 14:43:51 2020 -0700","stats":{"files_changed":2,"insertions":2454,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-lR-empty-folder.json","tests/fixtures/osx-10.14.6/ls-lR-empty-folder.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ls-lR-empty-folder.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-lR-empty-folder.out","lines_changed":2453}]},"message":"add ls test fixtures","epoch":1583703831,"epoch_utc":null},{"commit":"caad840153e40dc660a2d5e06a96f3451fef25f9","merge":"aff86ae 65bd7e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:19:37 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Mar 8 14:19:37 2020 -0700","message":"Merge pull request #44 from philippeitis/patch-5\n\nMove core magic() logic into seperate function for testability, minor tweaks","epoch":1583702377,"epoch_utc":null},{"commit":"65bd7e2904016141c1ed53cdd437865c66d7628e","merge":"17b6efe c3d7d7d","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Sun Mar 8 14:10:35 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Mar 8 14:10:35 2020 -0700","message":"Merge pull request #1 from kellyjonbrazil/pr/44\n\nMerge changes","epoch":1583701835,"epoch_utc":null},{"commit":"c3d7d7db12d4870fc4499e0e3445d85ae89f2aea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:03:08 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 8 14:03:08 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"removed whitespace","epoch":1583701388,"epoch_utc":null},{"commit":"56053103625af6fb7fa749fc5bc3dbdc62fc223c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:02:54 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 8 14:02:54 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":4,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":15}]},"message":"added tests, removed os import, changed to 'assertEqual'","epoch":1583701374,"epoch_utc":null},{"commit":"17b6efe82e6a558353b011c543489eaaf3a6d3ac","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Sun Mar 8 13:35:01 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Mar 8 13:35:01 2020 -0700","stats":{"files_changed":1,"insertions":14,"deletions":0,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":14}]},"message":"Create basic tests for generate_magic_commands()","epoch":1583699701,"epoch_utc":null},{"commit":"a032ae56ae7d247e00415267b65b2a8b80a3302e","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Sun Mar 8 13:26:15 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Mar 8 13:26:15 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"Pass args to generate_magic_command() to allow testing.","epoch":1583699175,"epoch_utc":null},{"commit":"eab2f4b0566b4c76db661cbfa99a56a6bf8d6541","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Sun Mar 8 13:20:38 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Mar 8 13:20:38 2020 -0700","stats":{"files_changed":1,"insertions":33,"deletions":19,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":52}]},"message":"Move core magic() logic into seperate function for testability, minor tweaks.\n\nWe only care about the command when testing magic() - by moving that out, we can easily test the command. I modified the code to return a boolean signalling that the command is valid, and the command itself to maintain the original functionality.\n\nI also made some small tweaks (removed a list() call, fixed a possible bug with no arguments., moved magic_dict instantiation past the fast path checks to avoid making a dict if not needed.)","epoch":1583698838,"epoch_utc":null},{"commit":"aff86ae6c71abfe1cbdba5c574a5f3707292ec19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 12:58:26 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 8 12:58:26 2020 -0700","stats":{"files_changed":1,"insertions":29,"deletions":39,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":68}]},"message":"reimpliment magic() based on the dictionary approach suggested by philippeitis","epoch":1583697506,"epoch_utc":null},{"commit":"7ece9ddc1a37551cdaaac50f37a48e6d98b18bf4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 7 17:26:42 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Mar 7 17:26:42 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"version bump ls","epoch":1583630802,"epoch_utc":null},{"commit":"7cd048e839a7cc8404fd5abc153a3d315c207819","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 7 17:25:10 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Mar 7 17:25:10 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update","epoch":1583630710,"epoch_utc":null},{"commit":"1e22f610a33903e8525d35a18b1dcf760a93791e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 7 17:22:08 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Mar 7 17:22:08 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"fix for osx - doesn't print 'total xx' line if empty directory (issue #40)","epoch":1583630528,"epoch_utc":null},{"commit":"5249c972ae25e9b289a2667bf471aad5e58c70a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 6 12:09:20 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 6 12:09:20 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":4}]},"message":"add to changelog","epoch":1583525360,"epoch_utc":null},{"commit":"fd45f856a050f6c56a7a6b50b97b3d8c4de28af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 6 12:09:09 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 6 12:09:09 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":2}]},"message":"import jc.utils instead of jc","epoch":1583525349,"epoch_utc":null},{"commit":"c8ab40cd33b14a3a1937ecf64bb23e282f5bb921","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 5 09:19:58 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 5 09:19:58 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"],"file_stats":[{"name":".gitignore","lines_changed":1}]},"message":"ignore .github folder","epoch":1583428798,"epoch_utc":null},{"commit":"b2c872925b37254dac74578c1803b4127f8411c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 19:47:03 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 4 19:47:03 2020 -0800","stats":{"files_changed":20,"insertions":208,"deletions":220,"files":["tests/test_ls.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_passwd.py","tests/test_pip_list.py","tests/test_ps.py","tests/test_route.py","tests/test_shadow.py","tests/test_ss.py","tests/test_systemctl_lj.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py","tests/test_who.py","tests/test_xml.py","tests/test_yaml.py"],"file_stats":[{"name":"tests/test_ls.py","lines_changed":132},{"name":"tests/test_lsmod.py","lines_changed":8},{"name":"tests/test_lsof.py","lines_changed":16},{"name":"tests/test_mount.py","lines_changed":16},{"name":"tests/test_netstat.py","lines_changed":40},{"name":"tests/test_passwd.py","lines_changed":12},{"name":"tests/test_pip_list.py","lines_changed":20},{"name":"tests/test_ps.py","lines_changed":32},{"name":"tests/test_route.py","lines_changed":16},{"name":"tests/test_shadow.py","lines_changed":8},{"name":"tests/test_ss.py","lines_changed":8},{"name":"tests/test_systemctl_lj.py","lines_changed":16},{"name":"tests/test_systemctl_ls.py","lines_changed":8},{"name":"tests/test_systemctl_luf.py","lines_changed":8},{"name":"tests/test_uname.py","lines_changed":16},{"name":"tests/test_uptime.py","lines_changed":16},{"name":"tests/test_w.py","lines_changed":16},{"name":"tests/test_who.py","lines_changed":24},{"name":"tests/test_xml.py","lines_changed":8},{"name":"tests/test_yaml.py","lines_changed":8}]},"message":"add utf-8 encoding for testing on Windows","epoch":1583380023,"epoch_utc":null},{"commit":"f48e229202f8ab1ebfa502ca57bb31cf673c7a62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 19:40:32 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 4 19:40:32 2020 -0800","stats":{"files_changed":21,"insertions":192,"deletions":192,"files":["tests/test_arp.py","tests/test_blkid.py","tests/test_crontab.py","tests/test_crontab_u.py","tests/test_csv.py","tests/test_df.py","tests/test_dig.py","tests/test_du.py","tests/test_env.py","tests/test_free.py","tests/test_fstab.py","tests/test_group.py","tests/test_gshadow.py","tests/test_history.py","tests/test_hosts.py","tests/test_id.py","tests/test_ifconfig.py","tests/test_ini.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_last.py"],"file_stats":[{"name":"tests/test_arp.py","lines_changed":32},{"name":"tests/test_blkid.py","lines_changed":40},{"name":"tests/test_crontab.py","lines_changed":4},{"name":"tests/test_crontab_u.py","lines_changed":8},{"name":"tests/test_csv.py","lines_changed":36},{"name":"tests/test_df.py","lines_changed":32},{"name":"tests/test_dig.py","lines_changed":24},{"name":"tests/test_du.py","lines_changed":16},{"name":"tests/test_env.py","lines_changed":8},{"name":"tests/test_free.py","lines_changed":16},{"name":"tests/test_fstab.py","lines_changed":8},{"name":"tests/test_group.py","lines_changed":12},{"name":"tests/test_gshadow.py","lines_changed":8},{"name":"tests/test_history.py","lines_changed":8},{"name":"tests/test_hosts.py","lines_changed":8},{"name":"tests/test_id.py","lines_changed":8},{"name":"tests/test_ifconfig.py","lines_changed":24},{"name":"tests/test_ini.py","lines_changed":8},{"name":"tests/test_iptables.py","lines_changed":48},{"name":"tests/test_jobs.py","lines_changed":8},{"name":"tests/test_last.py","lines_changed":28}]},"message":"utf-8 open for windows tests","epoch":1583379632,"epoch_utc":null},{"commit":"799fec92c39b1ff0696c6ebb182c4bef66b86e56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 19:33:45 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 4 19:33:45 2020 -0800","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["tests/test_pip_show.py","tests/test_systemctl.py"],"file_stats":[{"name":"tests/test_pip_show.py","lines_changed":16},{"name":"tests/test_systemctl.py","lines_changed":8}]},"message":"utf-8 for windows support","epoch":1583379225,"epoch_utc":null},{"commit":"87a41c2fcaa395f108b5a5126ed77f7cc7fe5d6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 19:30:30 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 4 19:30:30 2020 -0800","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["tests/test_lsblk.py","tests/test_stat.py"],"file_stats":[{"name":"tests/test_lsblk.py","lines_changed":16},{"name":"tests/test_stat.py","lines_changed":8}]},"message":"add utf-8 to open function","epoch":1583379030,"epoch_utc":null},{"commit":"7f85de0c46cda95d57b9677ba0ca3ea59690e502","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 19:28:21 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 19:28:21 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"add windows-latest","epoch":1583378901,"epoch_utc":null},{"commit":"13661b19934a74417713e98e3e1e4df6bb0f29ad","merge":"5f798d6 51d5c38","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 16:54:26 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 16:54:26 2020 -0800","message":"Merge pull request #37 from philippeitis/continuous_integration\n\nEnable Continuous Integration with GitHub Actions.","epoch":1583369666,"epoch_utc":null},{"commit":"51d5c3892d6ff1e2e6ac7c4f3e496e7d9ed4b6a7","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 16:21:06 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 16:21:06 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"Remove Windows tests, due to lack of support.","epoch":1583367666,"epoch_utc":null},{"commit":"e4eab4641ac15220f2787c5d27b443ab8c718b86","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 16:17:58 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 16:17:58 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":3}]},"message":"Change line in blkid.py to trigger CI","epoch":1583367478,"epoch_utc":null},{"commit":"9b148e0ba37e18749d95608e1bac6c090ab83ee2","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 16:16:19 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 16:16:19 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["requirements.txt"],"file_stats":[{"name":"requirements.txt","lines_changed":3}]},"message":"Add requirements.txt","epoch":1583367379,"epoch_utc":null},{"commit":"de28932650d5027e2781011f1243b89f053b241d","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 16:14:03 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 16:14:03 2020 -0800","stats":{"files_changed":1,"insertions":7,"deletions":6,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":13}]},"message":"Consolidate dictionary into creation, trigger CI","epoch":1583367243,"epoch_utc":null},{"commit":"5f798d603e461d2de5adf74662ba4d4b121f28f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 16:11:14 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 4 16:11:14 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":3}]},"message":"version bump and ack to philippeitis","epoch":1583367074,"epoch_utc":null},{"commit":"a0757b2dd3fc0f3e26622941d93bd909dae0a1f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 16:07:53 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 4 16:07:53 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":5,"files":["jc/parsers/foo.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":6}]},"message":"optimize line parsing","epoch":1583366873,"epoch_utc":null},{"commit":"498d51b4e802cb40cac58aae1eff1f723bbbd896","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 16:07:32 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 16:07:32 2020 -0800","stats":{"files_changed":1,"insertions":31,"deletions":0,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":31}]},"message":"Enable Continuous Integration with GitHub Actions.\n\nThis automatically runs unit tests on various operating systems and Python versions when Python files are modified to ensure that functionality remains correct.","epoch":1583366852,"epoch_utc":null},{"commit":"b06b6bae3f64f591c9075812dc1b632ef6d2da37","merge":"6aa2d5a 0652768","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 16:04:05 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 16:04:05 2020 -0800","message":"Merge pull request #36 from philippeitis/patch-3\n\nSimplify process() in history.py, avoid list allocation in parse()","epoch":1583366645,"epoch_utc":null},{"commit":"b5eaff21372a58aefb66e5afc5e863db8355fee1","merge":"d75c406 c01bcd3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 15:33:13 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 15:33:13 2020 -0800","message":"Merge pull request #35 from kellyjonbrazil/revert-34-patch-3\n\nRevert \"Simplify process() in history.py, avoid list allocation in parse()\"","epoch":1583364793,"epoch_utc":null},{"commit":"c01bcd3734382a0c388d9f4041fc888171ca7675","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 15:32:23 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 15:32:23 2020 -0800","stats":{"files_changed":1,"insertions":25,"deletions":12,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":37}]},"message":"Revert \"Simplify process() in history.py, avoid list allocation in parse()\"","epoch":1583364743,"epoch_utc":null},{"commit":"d75c4068caaf4adbe9a39fa452ae867421053673","merge":"d96b3a6 0652768","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 15:31:55 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 15:31:55 2020 -0800","message":"Merge pull request #34 from philippeitis/patch-3\n\nSimplify process() in history.py, avoid list allocation in parse()","epoch":1583364715,"epoch_utc":null},{"commit":"6aa2d5a3d26f9f00c3334928f6f0e501860433da","merge":"69576f6 a63408c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 15:28:09 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 15:28:09 2020 -0800","message":"Merge pull request #33 from philippeitis/patch-2\n\nHandle case where only options are passed.","epoch":1583364489,"epoch_utc":null},{"commit":"065276805f0f2dd23a6382f0120ca07e9eae116f","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 13:35:31 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 13:35:31 2020 -0800","stats":{"files_changed":1,"insertions":12,"deletions":25,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":37}]},"message":"Simplify process() in history.py, avoid list allocation in parse()","epoch":1583357731,"epoch_utc":null},{"commit":"a63408c8cf3f99646be2b375f651d6cf417f7ae0","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 13:16:35 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 13:16:35 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"Handle case where only options are passed.","epoch":1583356595,"epoch_utc":null},{"commit":"69576f6bfae073196627a0a39b5ececb8666d25c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 12:03:40 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 4 12:03:40 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6}]},"message":"minor sytax fixes","epoch":1583352220,"epoch_utc":null},{"commit":"19845624e2996da4653efc2f312aceb514feaf5c","merge":"d96b3a6 22ff296","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 11:59:29 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 11:59:29 2020 -0800","message":"Merge pull request #32 from philippeitis/patch-1\n\nSimplify main(), magic() methods.","epoch":1583351969,"epoch_utc":null},{"commit":"22ff2964e9889587711e779ac24f8f8034212f5e","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 10:33:42 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 10:33:42 2020 -0800","stats":{"files_changed":1,"insertions":62,"deletions":75,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":137}]},"message":"Simplify main(), magic() methods.","epoch":1583346822,"epoch_utc":null},{"commit":"d96b3a65a98bc135d21d4feafc0a43317b5a11fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 08:30:52 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 4 08:30:52 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1583339452,"epoch_utc":null},{"commit":"4989445ef4bb8919d9b3b95e2fcee77ca7692aec","merge":"53ee2c3 6770892","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 11:46:09 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Mar 3 11:46:09 2020 -0800","message":"Merge pull request #30 from kellyjonbrazil/dev\n\nDev v1.8.0","epoch":1583264769,"epoch_utc":null},{"commit":"6770892acd49aced225dbccf39290f33522c9001","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 11:37:59 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 3 11:37:59 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add release notes link","epoch":1583264279,"epoch_utc":null},{"commit":"d4eba8740fc325756f3db96ab37a5383540cbeff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 11:08:52 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 3 11:08:52 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"release date 3/3","epoch":1583262532,"epoch_utc":null},{"commit":"9f607605605e47990f97ccfd48fde19a14e036e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 10:54:27 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 3 10:54:27 2020 -0800","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["tests/test_group.py","tests/test_gshadow.py"],"file_stats":[{"name":"tests/test_group.py","lines_changed":52},{"name":"tests/test_gshadow.py","lines_changed":40}]},"message":"add group and gshadow tests","epoch":1583261667,"epoch_utc":null},{"commit":"0a8f8ac934f040141e6a4eec8cf7170e1ca73294","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:55:43 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 3 09:55:43 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"add group and gshadow parsers","epoch":1583258143,"epoch_utc":null},{"commit":"6ae24c82447bcff606e7027dd01b916293b49584","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:55:17 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 3 09:55:17 2020 -0800","stats":{"files_changed":10,"insertions":274,"deletions":0,"files":["tests/fixtures/centos-7.7/group.json","tests/fixtures/centos-7.7/group.out","tests/fixtures/centos-7.7/gshadow.json","tests/fixtures/centos-7.7/gshadow.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/group.json","tests/fixtures/osx-10.14.6/group.out","tests/fixtures/ubuntu-18.04/group.json","tests/fixtures/ubuntu-18.04/group.out","tests/fixtures/ubuntu-18.04/gshadow.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/group.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/group.out","lines_changed":39},{"name":"tests/fixtures/centos-7.7/gshadow.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/gshadow.out","lines_changed":39},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":3},{"name":"tests/fixtures/osx-10.14.6/group.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/group.out","lines_changed":135},{"name":"tests/fixtures/ubuntu-18.04/group.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/group.out","lines_changed":53},{"name":"tests/fixtures/ubuntu-18.04/gshadow.json","lines_changed":1}]},"message":"add group and gshadow test fixtures","epoch":1583258117,"epoch_utc":null},{"commit":"d3679082a8c5cff76eb7de67c33fe716a1402182","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:36:16 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 3 09:36:16 2020 -0800","stats":{"files_changed":1,"insertions":64,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":64}]},"message":"add group and gshadow parsers","epoch":1583256976,"epoch_utc":null},{"commit":"fb08b42dca135705a3759435335d95c898d47f60","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:32:56 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 3 09:32:56 2020 -0800","stats":{"files_changed":2,"insertions":21,"deletions":21,"files":["docs/parsers/group.md","jc/parsers/group.py"],"file_stats":[{"name":"docs/parsers/group.md","lines_changed":18},{"name":"jc/parsers/group.py","lines_changed":24}]},"message":"change 'group_list' to 'members'","epoch":1583256776,"epoch_utc":null},{"commit":"4aeaa9f42a88bf4e05c8780a35cc8c4d83c9b842","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:32:25 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 3 09:32:25 2020 -0800","stats":{"files_changed":5,"insertions":316,"deletions":0,"files":["docgen.sh","docs/parsers/gshadow.md","jc/cli.py","jc/parsers/gshadow.py","tests/fixtures/ubuntu-18.04/gshadow.out"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/gshadow.md","lines_changed":109},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/gshadow.py","lines_changed":152},{"name":"tests/fixtures/ubuntu-18.04/gshadow.out","lines_changed":53}]},"message":"add /etc/gshadow parser","epoch":1583256745,"epoch_utc":null},{"commit":"5f5693da048cb4739dc56500c672dc8fbccaaf32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:07:28 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 3 09:07:28 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["docs/parsers/csv.md"],"file_stats":[{"name":"docs/parsers/csv.md","lines_changed":3}]},"message":"spelling fix","epoch":1583255248,"epoch_utc":null},{"commit":"5eb0f61727f92a84fb3620e13db072167ef552ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:07:09 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 3 09:07:09 2020 -0800","stats":{"files_changed":4,"insertions":333,"deletions":0,"files":["docgen.sh","docs/parsers/group.md","jc/cli.py","jc/parsers/group.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/group.md","lines_changed":141},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/group.py","lines_changed":190}]},"message":"add /etc/group file parser","epoch":1583255229,"epoch_utc":null},{"commit":"958e998991b1cc61dc1dc341b90cd53f4691cd43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 17:15:05 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 2 17:15:05 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/csv.py"],"file_stats":[{"name":"jc/parsers/csv.py","lines_changed":4}]},"message":"formatting","epoch":1583198105,"epoch_utc":null},{"commit":"b78c1509f67fb76d17ac97193a2851d8d9e17f62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 15:06:25 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 2 15:06:25 2020 -0800","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/csv.py"],"file_stats":[{"name":"jc/parsers/csv.py","lines_changed":10}]},"message":"try/except dialect detection","epoch":1583190385,"epoch_utc":null},{"commit":"ce184d4d57faa3f1bca5bcaa02da7a5a5d995eb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 15:05:56 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 2 15:05:56 2020 -0800","stats":{"files_changed":20,"insertions":24054,"deletions":0,"files":["tests/fixtures/generic/csv-biostats.csv","tests/fixtures/generic/csv-biostats.json","tests/fixtures/generic/csv-cities.csv","tests/fixtures/generic/csv-cities.json","tests/fixtures/generic/csv-deniro.csv","tests/fixtures/generic/csv-deniro.json","tests/fixtures/generic/csv-example.csv","tests/fixtures/generic/csv-example.json","tests/fixtures/generic/csv-flyrna.json","tests/fixtures/generic/csv-flyrna.tsv","tests/fixtures/generic/csv-flyrna2.json","tests/fixtures/generic/csv-flyrna2.tsv","tests/fixtures/generic/csv-homes-pipe.csv","tests/fixtures/generic/csv-homes-pipe.json","tests/fixtures/generic/csv-homes.csv","tests/fixtures/generic/csv-homes.json","tests/fixtures/generic/csv-insurance.csv","tests/fixtures/generic/csv-insurance.json","tests/fixtures/generic/oscar_age_male.csv","tests/test_csv.py"],"file_stats":[{"name":"tests/fixtures/generic/csv-biostats.csv","lines_changed":20},{"name":"tests/fixtures/generic/csv-biostats.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-cities.csv","lines_changed":130},{"name":"tests/fixtures/generic/csv-cities.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-deniro.csv","lines_changed":89},{"name":"tests/fixtures/generic/csv-deniro.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-example.csv","lines_changed":2},{"name":"tests/fixtures/generic/csv-example.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna.tsv","lines_changed":11767},{"name":"tests/fixtures/generic/csv-flyrna2.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna2.tsv","lines_changed":11767},{"name":"tests/fixtures/generic/csv-homes-pipe.csv","lines_changed":3},{"name":"tests/fixtures/generic/csv-homes-pipe.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-homes.csv","lines_changed":51},{"name":"tests/fixtures/generic/csv-homes.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-insurance.csv","lines_changed":1},{"name":"tests/fixtures/generic/csv-insurance.json","lines_changed":1},{"name":"tests/fixtures/generic/oscar_age_male.csv","lines_changed":91},{"name":"tests/test_csv.py","lines_changed":124}]},"message":"add csv parser tests","epoch":1583190356,"epoch_utc":null},{"commit":"b4c3714ced9ee5cc6a7ef0c59a43cf85e1cb9824","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 14:10:15 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 2 14:10:15 2020 -0800","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"removed [OPTIONS] PARSER syntax. still works but prefer the PARSER [OPTIONS] syntax for better performance","epoch":1583187015,"epoch_utc":null},{"commit":"5b7dfa043864f1a3f34aa4ef5c6554a2dfe185f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 14:07:56 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 2 14:07:56 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"formatting","epoch":1583186876,"epoch_utc":null},{"commit":"391a3884765780497dc34e0e9938ff5032c81291","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 14:07:29 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 2 14:07:29 2020 -0800","stats":{"files_changed":2,"insertions":49,"deletions":0,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":48},{"name":"changelog.txt","lines_changed":1}]},"message":"doc update","epoch":1583186849,"epoch_utc":null},{"commit":"d9c4e2ed4c0f908f4b63c2376b53ddfd32a0fae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 14:03:58 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 2 14:03:58 2020 -0800","stats":{"files_changed":4,"insertions":241,"deletions":0,"files":["docgen.sh","docs/parsers/csv.md","jc/cli.py","jc/parsers/csv.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/csv.md","lines_changed":104},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/csv.py","lines_changed":135}]},"message":"add csv file parser","epoch":1583186638,"epoch_utc":null},{"commit":"0c42db38b102987629e40cee2716b826161e6e94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 10:30:12 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 2 10:30:12 2020 -0800","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/who.md","jc/parsers/who.py"],"file_stats":[{"name":"docs/parsers/who.md","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":2}]},"message":"doc update","epoch":1583173812,"epoch_utc":null},{"commit":"2f9be8bf33f8be5651d06da9d316f7894606df19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 08:32:42 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 2 08:32:42 2020 -0800","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"simplify usage","epoch":1583166762,"epoch_utc":null},{"commit":"e8c00155e861b9eedfdf37a22912271bec581d62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 07:43:45 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 2 07:43:45 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"add -b to warning message","epoch":1583163825,"epoch_utc":null},{"commit":"cc88fdd9ee3951d7ef2aa881cc12f0b7f96aef86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 21:17:50 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 21:17:50 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"update example","epoch":1583126270,"epoch_utc":null},{"commit":"d9de11ef1d846a9625dad0adb962b864404c90c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 21:16:57 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 21:16:57 2020 -0800","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":16}]},"message":"add another who example","epoch":1583126217,"epoch_utc":null},{"commit":"0ceda97d0968b67b70cdbb68f7a62657e79c9935","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 19:03:27 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 19:03:27 2020 -0800","stats":{"files_changed":1,"insertions":88,"deletions":0,"files":["tests/test_who.py"],"file_stats":[{"name":"tests/test_who.py","lines_changed":88}]},"message":"who parser tests","epoch":1583118207,"epoch_utc":null},{"commit":"d0dec92ba84640ddc40da7c6faa6568b76757e04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 18:57:51 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 18:57:51 2020 -0800","stats":{"files_changed":12,"insertions":36,"deletions":0,"files":["tests/fixtures/centos-7.7/who-a.json","tests/fixtures/centos-7.7/who-a.out","tests/fixtures/centos-7.7/who.json","tests/fixtures/centos-7.7/who.out","tests/fixtures/osx-10.14.6/who-a.json","tests/fixtures/osx-10.14.6/who-a.out","tests/fixtures/osx-10.14.6/who.json","tests/fixtures/osx-10.14.6/who.out","tests/fixtures/ubuntu-18.04/who-a.json","tests/fixtures/ubuntu-18.04/who-a.out","tests/fixtures/ubuntu-18.04/who.json","tests/fixtures/ubuntu-18.04/who.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/who-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/who-a.out","lines_changed":6},{"name":"tests/fixtures/centos-7.7/who.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/who.out","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/who-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/who-a.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/who.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/who.out","lines_changed":4},{"name":"tests/fixtures/ubuntu-18.04/who-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/who-a.out","lines_changed":6},{"name":"tests/fixtures/ubuntu-18.04/who.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/who.out","lines_changed":3}]},"message":"add who test fixtures","epoch":1583117871,"epoch_utc":null},{"commit":"d420c008d8aaa0879fa5a3f236d81acb506376c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 17:52:14 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 17:52:14 2020 -0800","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/who.py","lines_changed":9}]},"message":"fix for pts lines with no user info","epoch":1583113934,"epoch_utc":null},{"commit":"f0b32db4333477e22cc40de62cf026a6a7aa2eb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 17:39:02 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 17:39:02 2020 -0800","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","docs/parsers/who.md"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docs/parsers/who.md","lines_changed":8}]},"message":"who doc update","epoch":1583113142,"epoch_utc":null},{"commit":"bc838eda591473d32b11a885e60ef653925739d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 17:38:51 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 17:38:51 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/who.py","lines_changed":9}]},"message":"fix output for non-extended","epoch":1583113131,"epoch_utc":null},{"commit":"afe55b6af07b74816d33d9555ffaa1c1921dd27a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 17:07:28 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 17:07:28 2020 -0800","stats":{"files_changed":1,"insertions":46,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":46}]},"message":"add who parser","epoch":1583111248,"epoch_utc":null},{"commit":"dd3a3ac302d7b35beef1181e74aed0faf96fd3e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 17:04:06 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 17:04:06 2020 -0800","stats":{"files_changed":4,"insertions":255,"deletions":9,"files":["changelog.txt","docgen.sh","docs/parsers/who.md","jc/parsers/who.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/who.md","lines_changed":150},{"name":"jc/parsers/who.py","lines_changed":112}]},"message":"doc update and process pid integers","epoch":1583111046,"epoch_utc":null},{"commit":"f9982a79474c1838f37fc0ff88437980b228d7a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 16:49:52 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 16:49:52 2020 -0800","stats":{"files_changed":1,"insertions":11,"deletions":2,"files":["jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/who.py","lines_changed":13}]},"message":"fixes for from and comment fields","epoch":1583110192,"epoch_utc":null},{"commit":"07c1be9e9ad9f62cf76c23788152de8f3530ee16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 16:30:04 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 16:30:04 2020 -0800","stats":{"files_changed":2,"insertions":170,"deletions":0,"files":["jc/cli.py","jc/parsers/who.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/who.py","lines_changed":169}]},"message":"add who command parser","epoch":1583109004,"epoch_utc":null},{"commit":"f832b88755bfbd3878ec402e603180e6825279be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 10:17:47 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 10:17:47 2020 -0800","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["tests/test_passwd.py","tests/test_shadow.py"],"file_stats":[{"name":"tests/test_passwd.py","lines_changed":52},{"name":"tests/test_shadow.py","lines_changed":40}]},"message":"add passwd and shadow tests","epoch":1583086667,"epoch_utc":null},{"commit":"0fac757efca41db062b2f65acc727963c5fb353c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 12:25:41 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Feb 29 12:25:41 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"add passwd and shadow parsers","epoch":1583007941,"epoch_utc":null},{"commit":"fc15742065531152f3d5895042eeb806e33a192a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 12:25:22 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Feb 29 12:25:22 2020 -0800","stats":{"files_changed":10,"insertions":215,"deletions":0,"files":["tests/fixtures/centos-7.7/passwd.json","tests/fixtures/centos-7.7/passwd.out","tests/fixtures/centos-7.7/shadow.json","tests/fixtures/centos-7.7/shadow.out","tests/fixtures/osx-10.14.6/passwd.json","tests/fixtures/osx-10.14.6/passwd.out","tests/fixtures/ubuntu-18.04/passwd.json","tests/fixtures/ubuntu-18.04/passwd.out","tests/fixtures/ubuntu-18.04/shadow.json","tests/fixtures/ubuntu-18.04/shadow.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/passwd.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/passwd.out","lines_changed":21},{"name":"tests/fixtures/centos-7.7/shadow.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/shadow.out","lines_changed":21},{"name":"tests/fixtures/osx-10.14.6/passwd.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/passwd.out","lines_changed":108},{"name":"tests/fixtures/ubuntu-18.04/passwd.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/passwd.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/shadow.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/shadow.out","lines_changed":30}]},"message":"passwd and shadow test fixtures","epoch":1583007922,"epoch_utc":null},{"commit":"6f2466a1319eaa4256ae7a2a0f23b3ff37882d37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 11:56:12 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Feb 29 11:56:12 2020 -0800","stats":{"files_changed":1,"insertions":73,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":73}]},"message":"update readme with /etc/passwd and /etc/shadow file parsers","epoch":1583006172,"epoch_utc":null},{"commit":"4b90e22f0a9c6790bca62c8314945a7ffc6e267b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 11:50:46 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Feb 29 11:50:46 2020 -0800","stats":{"files_changed":2,"insertions":137,"deletions":9,"files":["docs/parsers/shadow.md","jc/parsers/shadow.py"],"file_stats":[{"name":"docs/parsers/shadow.md","lines_changed":72},{"name":"jc/parsers/shadow.py","lines_changed":74}]},"message":"doc update","epoch":1583005846,"epoch_utc":null},{"commit":"c4935687853fb3b079ae42614793cdafe68e124e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 11:46:38 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Feb 29 11:46:38 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/passwd.md","jc/parsers/passwd.py"],"file_stats":[{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":2}]},"message":"doc fix","epoch":1583005598,"epoch_utc":null},{"commit":"1cdf004b7728901dc137e57b0c8994edfdd6d417","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 11:46:24 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Feb 29 11:46:24 2020 -0800","stats":{"files_changed":4,"insertions":190,"deletions":0,"files":["docgen.sh","docs/parsers/shadow.md","jc/cli.py","jc/parsers/shadow.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/shadow.md","lines_changed":69},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/shadow.py","lines_changed":119}]},"message":"add /etc/shadow parser","epoch":1583005584,"epoch_utc":null},{"commit":"a4ea50426184d30cbe849a8f80bfd5c975075c9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 11:33:14 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Feb 29 11:33:14 2020 -0800","stats":{"files_changed":4,"insertions":303,"deletions":0,"files":["docgen.sh","docs/parsers/passwd.md","jc/cli.py","jc/parsers/passwd.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/passwd.md","lines_changed":126},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/passwd.py","lines_changed":175}]},"message":"add /etc/passwd parser","epoch":1583004794,"epoch_utc":null},{"commit":"4c2c234c3bf68d1aac66bd4d1f22b9f97e99128d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 15:15:24 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 28 15:15:24 2020 -0800","stats":{"files_changed":16,"insertions":673,"deletions":0,"files":["tests/fixtures/centos-7.7/last-w.json","tests/fixtures/centos-7.7/last-w.out","tests/fixtures/centos-7.7/last.json","tests/fixtures/centos-7.7/last.out","tests/fixtures/centos-7.7/lastb.json","tests/fixtures/centos-7.7/lastb.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/last.json","tests/fixtures/osx-10.14.6/last.out","tests/fixtures/ubuntu-18.04/last-w.json","tests/fixtures/ubuntu-18.04/last-w.out","tests/fixtures/ubuntu-18.04/last.json","tests/fixtures/ubuntu-18.04/last.out","tests/fixtures/ubuntu-18.04/lastb.json","tests/fixtures/ubuntu-18.04/lastb.out","tests/test_last.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/last-w.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/last-w.out","lines_changed":69},{"name":"tests/fixtures/centos-7.7/last.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/last.out","lines_changed":69},{"name":"tests/fixtures/centos-7.7/lastb.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lastb.out","lines_changed":6},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":4},{"name":"tests/fixtures/osx-10.14.6/last.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/last.out","lines_changed":383},{"name":"tests/fixtures/ubuntu-18.04/last-w.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/last-w.out","lines_changed":16},{"name":"tests/fixtures/ubuntu-18.04/last.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/last.out","lines_changed":16},{"name":"tests/fixtures/ubuntu-18.04/lastb.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lastb.out","lines_changed":3},{"name":"tests/test_last.py","lines_changed":100}]},"message":"add last and lastb tests","epoch":1582931724,"epoch_utc":null},{"commit":"3d4c0f3e89dab6496ff74df350e3238d6625933c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 14:50:29 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 28 14:50:29 2020 -0800","stats":{"files_changed":22,"insertions":285,"deletions":0,"files":["tests/fixtures/centos-7.7/blkid-ip-multi.json","tests/fixtures/centos-7.7/blkid-ip-multi.out","tests/fixtures/centos-7.7/blkid-ip-udev-multi.json","tests/fixtures/centos-7.7/blkid-ip-udev-multi.out","tests/fixtures/centos-7.7/blkid-ip-udev.json","tests/fixtures/centos-7.7/blkid-ip-udev.out","tests/fixtures/centos-7.7/blkid-sda2.json","tests/fixtures/centos-7.7/blkid-sda2.out","tests/fixtures/centos-7.7/blkid.json","tests/fixtures/centos-7.7/blkid.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/blkid-ip-multi.json","tests/fixtures/ubuntu-18.04/blkid-ip-multi.out",".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.json",".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.out","tests/fixtures/ubuntu-18.04/blkid-ip-udev.json","tests/fixtures/ubuntu-18.04/blkid-ip-udev.out","tests/fixtures/ubuntu-18.04/blkid-sda2.json","tests/fixtures/ubuntu-18.04/blkid-sda2.out","tests/fixtures/ubuntu-18.04/blkid.json","tests/fixtures/ubuntu-18.04/blkid.out","tests/test_blkid.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/blkid-ip-multi.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid-ip-multi.out","lines_changed":29},{"name":"tests/fixtures/centos-7.7/blkid-ip-udev-multi.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid-ip-udev-multi.out","lines_changed":29},{"name":"tests/fixtures/centos-7.7/blkid-ip-udev.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid-ip-udev.out","lines_changed":14},{"name":"tests/fixtures/centos-7.7/blkid-sda2.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid-sda2.out","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid.out","lines_changed":4},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":6},{"name":"tests/fixtures/ubuntu-18.04/blkid-ip-multi.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid-ip-multi.out","lines_changed":2},{"name":".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.json","lines_changed":1},{"name":".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/blkid-ip-udev.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid-ip-udev.out","lines_changed":12},{"name":"tests/fixtures/ubuntu-18.04/blkid-sda2.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid-sda2.out","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid.out","lines_changed":15},{"name":"tests/test_blkid.py","lines_changed":136}]},"message":"add blkid tests","epoch":1582930229,"epoch_utc":null},{"commit":"52fad02903468c05d2422a340ad8dbcdf18ed475","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 13:31:38 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 28 13:31:38 2020 -0800","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":12},{"name":"jc/parsers/ls.py","lines_changed":12}]},"message":"doc update","epoch":1582925498,"epoch_utc":null},{"commit":"9dcabc057c40e345971a08474b5b886e6b60a8de","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 10:57:14 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 28 10:57:14 2020 -0800","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":10}]},"message":"support multi device udev output","epoch":1582916234,"epoch_utc":null},{"commit":"db8c1079ddc25922ab6a20d0f71fb19af38f8092","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 09:54:07 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 28 09:54:07 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":8}]},"message":"use maxsplit=1 in case there are multiple '=' delimiters","epoch":1582912447,"epoch_utc":null},{"commit":"8f954673abdbbd4d9b9da3eacc61b335b4909f89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 09:07:36 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 28 09:07:36 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":5}]},"message":"use shlex split for values within quotations that have spaces","epoch":1582909656,"epoch_utc":null},{"commit":"79522d1c7dd4dec15b75b06dda002752f7d97e36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 08:51:48 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 28 08:51:48 2020 -0800","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"doc fixes","epoch":1582908708,"epoch_utc":null},{"commit":"a18bf030794efef125c70a32fe82855e47649b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 08:50:35 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 28 08:50:35 2020 -0800","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/parsers/last.py","jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":12}]},"message":"use raw strings for regular expressions","epoch":1582908635,"epoch_utc":null},{"commit":"c02b6b5d827d26b43db0a3457124714aa2dbbc98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 21:21:19 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 21:21:19 2020 -0800","stats":{"files_changed":3,"insertions":81,"deletions":1,"files":["README.md","changelog.txt","setup.py"],"file_stats":[{"name":"README.md","lines_changed":79},{"name":"changelog.txt","lines_changed":1},{"name":"setup.py","lines_changed":2}]},"message":"doc updates","epoch":1582867279,"epoch_utc":null},{"commit":"f99b4232848b0d868804acc4125836bfcf475bba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 21:04:24 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 21:04:24 2020 -0800","stats":{"files_changed":2,"insertions":134,"deletions":29,"files":["docs/parsers/blkid.md","jc/parsers/blkid.py"],"file_stats":[{"name":"docs/parsers/blkid.md","lines_changed":115},{"name":"jc/parsers/blkid.py","lines_changed":48}]},"message":"doc update","epoch":1582866264,"epoch_utc":null},{"commit":"d7d9d45d4fba89e74f7490c463eb26bf20a5d127","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:59:09 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 20:59:09 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":2}]},"message":"add missing comma","epoch":1582865949,"epoch_utc":null},{"commit":"90065ec0cdc8c5abc13bc0027f63658dacf3cfb2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:57:22 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 20:57:22 2020 -0800","stats":{"files_changed":1,"insertions":31,"deletions":26,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":57}]},"message":"add more integers","epoch":1582865842,"epoch_utc":null},{"commit":"51157ebb867a48332c768bf3086614944aebdb62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:49:14 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 20:49:14 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":4}]},"message":"another devname fix","epoch":1582865354,"epoch_utc":null},{"commit":"96d95c79ca0938e326f55f858f8153df9cb49e44","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:47:07 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 20:47:07 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":6}]},"message":"devname fix","epoch":1582865227,"epoch_utc":null},{"commit":"e5da34c23306463e8707b15676db0ca53bf66757","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:41:06 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 20:41:06 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":3}]},"message":"check if devname key exists before renaming","epoch":1582864866,"epoch_utc":null},{"commit":"f09d657f7728242947db3dc63ff6779d08c37866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:36:19 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 20:36:19 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":5}]},"message":"rename devname to device","epoch":1582864579,"epoch_utc":null},{"commit":"0f4b0189f54dc0b3622cd407c5565e53ea111379","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:31:17 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 20:31:17 2020 -0800","stats":{"files_changed":1,"insertions":35,"deletions":3,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":38}]},"message":"process integer values","epoch":1582864277,"epoch_utc":null},{"commit":"4666042abb3142e2cfb518db9ffe22d9e608e090","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:21:02 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 20:21:02 2020 -0800","stats":{"files_changed":4,"insertions":216,"deletions":0,"files":["docgen.sh","docs/parsers/blkid.md","jc/cli.py","jc/parsers/blkid.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/blkid.md","lines_changed":83},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/blkid.py","lines_changed":131}]},"message":"add blkid parser","epoch":1582863662,"epoch_utc":null},{"commit":"027d544c2bb778adc0ee9463832f19b10e099a0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 16:08:56 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 16:08:56 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add last and lastb parser","epoch":1582848536,"epoch_utc":null},{"commit":"f1967d0138d27bde864c2400aa75baa8a39bbfde","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 16:08:39 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 16:08:39 2020 -0800","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":3}]},"message":"system_boot fix","epoch":1582848519,"epoch_utc":null},{"commit":"c1d896027dd1ce021e048b3e77eab24ff59d08bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 15:58:12 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 15:58:12 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":3}]},"message":"fix system_boot tty","epoch":1582847892,"epoch_utc":null},{"commit":"5c2d2a66187d32d62b31b7c7f13e502fdb7f9635","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 15:44:36 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 15:44:36 2020 -0800","stats":{"files_changed":3,"insertions":190,"deletions":6,"files":["docgen.sh","docs/parsers/last.md","jc/parsers/last.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/last.md","lines_changed":118},{"name":"jc/parsers/last.py","lines_changed":77}]},"message":"process function and docs","epoch":1582847076,"epoch_utc":null},{"commit":"997b269b0b7e53a456e2a0bd997ead6c2ae843bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 15:26:09 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 15:26:09 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":3}]},"message":"btmp fix","epoch":1582845969,"epoch_utc":null},{"commit":"61257e7525c25827cb8057ed5c612e54ea9b9637","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 15:14:43 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 15:14:43 2020 -0800","stats":{"files_changed":2,"insertions":119,"deletions":1,"files":["jc/cli.py","jc/parsers/last.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/last.py","lines_changed":117}]},"message":"add last and lastb parser","epoch":1582845283,"epoch_utc":null},{"commit":"53ee2c36310cb84390ef96644aee6871769151c9","merge":"2ad3167 8bfa0bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 10:59:14 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Feb 27 10:59:14 2020 -0800","message":"Merge pull request #29 from kellyjonbrazil/dev\n\nDev v1.7.5","epoch":1582829954,"epoch_utc":null},{"commit":"8bfa0bddec9ff1c21972019467dcf5738ab3afd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 10:50:05 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 10:50:05 2020 -0800","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to 1.7.5","epoch":1582829405,"epoch_utc":null},{"commit":"ad61e6bc81177a2add7d052bf1ddec5f1b3f2976","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 10:48:09 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 10:48:09 2020 -0800","stats":{"files_changed":26,"insertions":598,"deletions":133,"files":["tests/fixtures/centos-7.7/ls-R-newlines.json","tests/fixtures/centos-7.7/ls-R-newlines.out","tests/fixtures/centos-7.7/ls-l-newlines.json","tests/fixtures/centos-7.7/ls-l-newlines.out","tests/fixtures/centos-7.7/ls-lR-newlines.json","tests/fixtures/centos-7.7/ls-lR-newlines.out","tests/fixtures/centos-7.7/ls-newlines.json","tests/fixtures/centos-7.7/ls-newlines.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/ls-R-newlines.json","tests/fixtures/osx-10.14.6/ls-R-newlines.out","tests/fixtures/osx-10.14.6/ls-l-newlines.json","tests/fixtures/osx-10.14.6/ls-l-newlines.out","tests/fixtures/osx-10.14.6/ls-lR-newlines.json","tests/fixtures/osx-10.14.6/ls-lR-newlines.out","tests/fixtures/osx-10.14.6/ls-newlines.json","tests/fixtures/osx-10.14.6/ls-newlines.out","tests/fixtures/ubuntu-18.04/ls-R-newlines.json","tests/fixtures/ubuntu-18.04/ls-R-newlines.out","tests/fixtures/ubuntu-18.04/ls-l-newlines.json","tests/fixtures/ubuntu-18.04/ls-l-newlines.out","tests/fixtures/ubuntu-18.04/ls-lR-newlines.json","tests/fixtures/ubuntu-18.04/ls-lR-newlines.out","tests/fixtures/ubuntu-18.04/ls-newlines.json","tests/fixtures/ubuntu-18.04/ls-newlines.out","tests/test_ls.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ls-R-newlines.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-R-newlines.out","lines_changed":43},{"name":"tests/fixtures/centos-7.7/ls-l-newlines.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-l-newlines.out","lines_changed":34},{"name":"tests/fixtures/centos-7.7/ls-lR-newlines.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-lR-newlines.out","lines_changed":45},{"name":"tests/fixtures/centos-7.7/ls-newlines.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-newlines.out","lines_changed":33},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":15},{"name":"tests/fixtures/osx-10.14.6/ls-R-newlines.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-R-newlines.out","lines_changed":36},{"name":"tests/fixtures/osx-10.14.6/ls-l-newlines.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-l-newlines.out","lines_changed":34},{"name":"tests/fixtures/osx-10.14.6/ls-lR-newlines.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-lR-newlines.out","lines_changed":38},{"name":"tests/fixtures/osx-10.14.6/ls-newlines.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-newlines.out","lines_changed":148},{"name":"tests/fixtures/ubuntu-18.04/ls-R-newlines.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-R-newlines.out","lines_changed":40},{"name":"tests/fixtures/ubuntu-18.04/ls-l-newlines.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-l-newlines.out","lines_changed":34},{"name":"tests/fixtures/ubuntu-18.04/ls-lR-newlines.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-lR-newlines.out","lines_changed":42},{"name":"tests/fixtures/ubuntu-18.04/ls-newlines.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-newlines.out","lines_changed":33},{"name":"tests/test_ls.py","lines_changed":144}]},"message":"add ls tests for filenames with newline characters","epoch":1582829289,"epoch_utc":null},{"commit":"873b5ba8acf599d083d6031b818d5fca83cbca9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 09:36:57 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 09:36:57 2020 -0800","stats":{"files_changed":1,"insertions":27,"deletions":31,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":58}]},"message":"move examples to bottom","epoch":1582825017,"epoch_utc":null},{"commit":"6ae50054e2e8c7ca730013b43062eedc230c0ad4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 20:30:44 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 24 20:30:44 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"readme update","epoch":1582605044,"epoch_utc":null},{"commit":"22a35f41bf9c404d3532611f5929143d04b10010","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 17:50:56 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 24 17:50:56 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":10}]},"message":"move variables to top","epoch":1582595456,"epoch_utc":null},{"commit":"961696c963215a9dab56113ff89f21a6e9739df6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 17:47:31 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 24 17:47:31 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"add a warning if newlines are detected in naked ls","epoch":1582595251,"epoch_utc":null},{"commit":"c7b7f1a5dcf77a1f4c23ef6bbf5683fd1a055f72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 17:24:56 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 24 17:24:56 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"fix for files with newlines in naked ls","epoch":1582593896,"epoch_utc":null},{"commit":"b5a0d650b128d8af81bb14dd5d007349529cb66f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 17:01:33 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 24 17:01:33 2020 -0800","stats":{"files_changed":1,"insertions":151,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-newlines.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ls-newlines.out","lines_changed":151}]},"message":"ls output with newlines","epoch":1582592493,"epoch_utc":null},{"commit":"573b27946474276592ee7494689ce9a88f5a05f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 17:01:12 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 24 17:01:12 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":6}]},"message":"fixup for filenames that start with a newline character","epoch":1582592472,"epoch_utc":null},{"commit":"116e07f1614b4a45eb58ffcfe20b5efa71c473a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 16:38:29 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 24 16:38:29 2020 -0800","stats":{"files_changed":1,"insertions":6,"deletions":7,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":13}]},"message":"fixes for multiple consecutive newlines and trailing newlines in filenames","epoch":1582591109,"epoch_utc":null},{"commit":"964868c8aff99edf37b0db41c7d16f8b84ac4704","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 15:19:43 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 24 15:19:43 2020 -0800","stats":{"files_changed":2,"insertions":21,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":20}]},"message":"add support for newlines in filenames (only with ls -l)","epoch":1582586383,"epoch_utc":null},{"commit":"c8dac32df8102c2b782e87d55bb95ca2d9490185","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 13:05:35 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 24 13:05:35 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"readme update","epoch":1582578335,"epoch_utc":null},{"commit":"72a0016bd833699c3819baa899f335f75b8c1943","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 20 15:38:45 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 20 15:38:45 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"use link to anchor for Parsers","epoch":1582241925,"epoch_utc":null},{"commit":"2ad316743460bb6620e7ede251e1dc2739b073fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 19 07:12:43 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 19 07:12:43 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update doc url","epoch":1582125163,"epoch_utc":null},{"commit":"ddabfaa05c63f886b17e5b4d37cd83fcfdb9b221","merge":"873771d f857523","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 19 07:05:29 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Feb 19 07:05:29 2020 -0800","message":"Merge pull request #25 from kellyjonbrazil/dev\n\nDev v1.7.4","epoch":1582124729,"epoch_utc":null},{"commit":"f857523ca756864211b6b18af5a8886e5db200bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 19 07:02:50 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 19 07:02:50 2020 -0800","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"bump to version 1.7.4","epoch":1582124570,"epoch_utc":null},{"commit":"00d53858e820f00ba015bc25629100c8e5495221","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 22:57:15 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 22:57:15 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add note about aliases not being supported","epoch":1582009035,"epoch_utc":null},{"commit":"c008167e660929a91606bb96498cdc113e815f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 22:48:44 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 22:48:44 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":1},{"name":"jc/parsers/ls.py","lines_changed":1}]},"message":"add time-style=full-iso option to doc","epoch":1582008524,"epoch_utc":null},{"commit":"102344a041e9e0aff8b6d9db1873ba1064f7e895","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 22:32:07 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 22:32:07 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"formatting","epoch":1582007527,"epoch_utc":null},{"commit":"c865298ef3613fe6ce17f41c15209a69940af1ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 22:29:39 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 22:29:39 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":3}]},"message":"remove unnecessary enumerate in for loop","epoch":1582007379,"epoch_utc":null},{"commit":"6ac03faf939bcda8930a48a5e832b557813e2129","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 18:58:07 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 18:58:07 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"Revert \"add ubuntu and centos default ls aliases to magic_commands\"\n\nThis reverts commit 49c2701743706b6cbf0e52b2c7f275e301315189.","epoch":1581994687,"epoch_utc":null},{"commit":"49c2701743706b6cbf0e52b2c7f275e301315189","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 18:55:03 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 18:55:03 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"add ubuntu and centos default ls aliases to magic_commands","epoch":1581994503,"epoch_utc":null},{"commit":"d1a271b08e64b42be8cec11377b0e18435a0caec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 18:33:55 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 18:33:55 2020 -0800","stats":{"files_changed":21,"insertions":35333,"deletions":1374,"files":["tests/fixtures/centos-7.7/ls-R.json","tests/fixtures/centos-7.7/ls-R.out","tests/fixtures/centos-7.7/ls-alR.json","tests/fixtures/centos-7.7/ls-alR.out","tests/fixtures/centos-7.7/ls-glob.json","tests/fixtures/centos-7.7/ls-glob.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/ls-R.json","tests/fixtures/osx-10.14.6/ls-R.out","tests/fixtures/osx-10.14.6/ls-alR.json","tests/fixtures/osx-10.14.6/ls-alR.out","tests/fixtures/osx-10.14.6/ls-glob.json","tests/fixtures/osx-10.14.6/ls-glob.out","tests/fixtures/ubuntu-18.04/ls-R.json","tests/fixtures/ubuntu-18.04/ls-R.out","tests/fixtures/ubuntu-18.04/ls-alR.json","tests/fixtures/ubuntu-18.04/ls-alR.out","tests/fixtures/ubuntu-18.04/ls-glob.json","tests/fixtures/ubuntu-18.04/ls-glob.out","tests/fixtures/ubuntu-18.04/ls-lR.out","tests/test_ls.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ls-R.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-R.out","lines_changed":5089},{"name":"tests/fixtures/centos-7.7/ls-alR.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-alR.out","lines_changed":4997},{"name":"tests/fixtures/centos-7.7/ls-glob.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-glob.out","lines_changed":1919},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":5},{"name":"tests/fixtures/osx-10.14.6/ls-R.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-R.out","lines_changed":5018},{"name":"tests/fixtures/osx-10.14.6/ls-alR.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-alR.out","lines_changed":4997},{"name":"tests/fixtures/osx-10.14.6/ls-glob.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-glob.out","lines_changed":1831},{"name":"tests/fixtures/ubuntu-18.04/ls-R.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-R.out","lines_changed":5639},{"name":"tests/fixtures/ubuntu-18.04/ls-alR.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-alR.out","lines_changed":5026},{"name":"tests/fixtures/ubuntu-18.04/ls-glob.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-glob.out","lines_changed":1357},{"name":"tests/fixtures/ubuntu-18.04/ls-lR.out","lines_changed":712},{"name":"tests/test_ls.py","lines_changed":108}]},"message":"add new ls tests for recursive and multiple directories with glob","epoch":1581993235,"epoch_utc":null},{"commit":"7388ad19b9d252d3e66659e4bc37171cef2a9748","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 17:31:15 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 17:31:15 2020 -0800","stats":{"files_changed":4,"insertions":6,"deletions":4,"files":["docs/parsers/ls.md","jc/cli.py","jc/parsers/ls.py","setup.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"setup.py","lines_changed":2}]},"message":"bump to v1.8.0","epoch":1581989475,"epoch_utc":null},{"commit":"2e63cb5fadd032c7cb54a618e8b374ee853abcca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 17:16:34 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 17:16:34 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"version bump ls to 1.1","epoch":1581988594,"epoch_utc":null},{"commit":"e7f14d02b12c7dcba309f2d28a0f171769d1ba37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 17:14:27 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 17:14:27 2020 -0800","stats":{"files_changed":3,"insertions":1438,"deletions":8,"files":["jc/parsers/ls.py","tests/fixtures/ubuntu-18.04/ls-R.out","tests/fixtures/ubuntu-18.04/ls-lR.out"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":48},{"name":"tests/fixtures/ubuntu-18.04/ls-R.out","lines_changed":686},{"name":"tests/fixtures/ubuntu-18.04/ls-lR.out","lines_changed":712}]},"message":"update ls to allow multi directory (glob and -R). Adds 'parent' key if found","epoch":1581988467,"epoch_utc":null},{"commit":"873771d05ab0b77163c95d2c37e11edf38451832","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 09:16:32 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 09:16:32 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1581959792,"epoch_utc":null},{"commit":"d7de122e36e0698e00f321fbac8dc0b543cf9e8a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 14 09:44:24 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 14 09:44:24 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"prettify link","epoch":1581702264,"epoch_utc":null},{"commit":"4ef0434f536c6658ddc2b48a3db113df2fd26000","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 14 09:43:02 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 14 09:43:02 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":6}]},"message":"formatting update","epoch":1581702182,"epoch_utc":null},{"commit":"1aa2c9925996f2358b6272547db755ec3098a8a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 22:10:22 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 22:10:22 2020 -0800","stats":{"files_changed":2,"insertions":1,"deletions":2,"files":["README.md","jc/parsers/history.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":1}]},"message":"removed history from magic syntax","epoch":1581660622,"epoch_utc":null},{"commit":"c2450b27b079b02ed3f4ece9e36547f01cd4b139","merge":"028e136 14d6d8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 21:26:18 2020 -0500","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Feb 13 21:26:18 2020 -0500","message":"Merge pull request #22 from kellyjonbrazil/dev\n\nDev 1.7.3","epoch":1581657978,"epoch_utc":null},{"commit":"14d6d8b84f0ddeff984aff486e2e697a91ac6fb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 18:24:53 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 18:24:53 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump to 1.7.3","epoch":1581647093,"epoch_utc":null},{"commit":"f0e3846c038ec5507cd4a19980d83ee0fb969ef5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 18:20:22 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 18:20:22 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":5}]},"message":"formatting","epoch":1581646822,"epoch_utc":null},{"commit":"6ba64f1128373843b068226424a3af545ac9d22c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 18:19:19 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 18:19:19 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"usage update","epoch":1581646759,"epoch_utc":null},{"commit":"13bcdbc6c9a81bc5d52fe7a84e6a0a34908db8bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 17:50:51 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 17:50:51 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"doc update","epoch":1581645051,"epoch_utc":null},{"commit":"cfba62db20674d788601354211a10e2b1675a0c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 17:48:21 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 17:48:21 2020 -0800","stats":{"files_changed":1,"insertions":13,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":19}]},"message":"correct parser search in magic()","epoch":1581644901,"epoch_utc":null},{"commit":"18fb69e36e303a3f9530dcb80354b25bfdbb931d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 17:29:45 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 17:29:45 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"docs/parsers link","epoch":1581643785,"epoch_utc":null},{"commit":"474eb0f3fdeaa612e189d745b12a5ed9c6e0a31b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 17:24:10 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 17:24:10 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"doc updates","epoch":1581643450,"epoch_utc":null},{"commit":"7f47b533701e60449351d5da03cd5960e0dec9ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 17:20:00 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 17:20:00 2020 -0800","stats":{"files_changed":1,"insertions":90,"deletions":68,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":158}]},"message":"add alternate magic syntax","epoch":1581643200,"epoch_utc":null},{"commit":"dc2907d3ce101043b30bcce71abb4bb02897f43a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 16:58:25 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 16:58:25 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["docs/parsers/crontab.md"],"file_stats":[{"name":"docs/parsers/crontab.md","lines_changed":6}]},"message":"doc update","epoch":1581641905,"epoch_utc":null},{"commit":"1af85811e06c489051c456918284a746ce12c692","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 16:57:57 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 16:57:57 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/fstab.py"],"file_stats":[{"name":"jc/parsers/fstab.py","lines_changed":3}]},"message":"remove magic_command info","epoch":1581641877,"epoch_utc":null},{"commit":"1c1b19a478fe5c356a93cd165518429e77fcbdf0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 16:57:30 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 16:57:30 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":6}]},"message":"doc update","epoch":1581641850,"epoch_utc":null},{"commit":"66942d64babf932faeb887eb4ec0cab32829321a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 16:56:48 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 16:56:48 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":4}]},"message":"changelog update","epoch":1581641808,"epoch_utc":null},{"commit":"2fb6ae08d76e7a5727b2fcdd5def3e3822e0cf72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 12:17:41 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 12:17:41 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"fix shlex usage","epoch":1581625061,"epoch_utc":null},{"commit":"bf8811e03e2a5b736f4c084f42400fcde400ff3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 10:25:41 2020 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 10:25:41 2020 -0500","stats":{"files_changed":1,"insertions":6,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]},"message":"add comments","epoch":1581618341,"epoch_utc":null},{"commit":"c8b502c571d3081ca3086e349a426ca252a3bb84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 10:14:32 2020 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 10:14:32 2020 -0500","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6}]},"message":"remove unnecessary join and add comments","epoch":1581617672,"epoch_utc":null},{"commit":"81c11a975c6ee66a1f83350df8b065a6b07dcc9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 10:08:43 2020 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 10:08:43 2020 -0500","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"added docstrings","epoch":1581617323,"epoch_utc":null},{"commit":"0d370eb403ab4d9ed11e36776efc08bdd3505c1a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 10:03:11 2020 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 10:03:11 2020 -0500","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"doc update","epoch":1581616991,"epoch_utc":null},{"commit":"7492c3f1e312cdb0c58c2077db0d60d2cab1e58f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 09:48:42 2020 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 09:48:42 2020 -0500","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"changelog update","epoch":1581616122,"epoch_utc":null},{"commit":"515a8a84b79c9bf6f3001d3c52faa82a6709b8d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 09:47:40 2020 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 09:47:40 2020 -0500","stats":{"files_changed":33,"insertions":33,"deletions":33,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2}]},"message":"add \"command\" to description","epoch":1581616060,"epoch_utc":null},{"commit":"dd6680efb2b15bb8ed676016aae1c65193dfe147","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 09:47:16 2020 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 09:47:16 2020 -0500","stats":{"files_changed":2,"insertions":29,"deletions":14,"files":["changelog.txt","jc/cli.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":40}]},"message":"allow condensed options (-prdq is equivalent to -p -r -d -q)","epoch":1581616036,"epoch_utc":null},{"commit":"a7158373cd225685f5c398fa36b8d5208e20521c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 12 00:16:17 2020 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 12 00:16:17 2020 -0500","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"comment update","epoch":1581495377,"epoch_utc":null},{"commit":"6d50ec71997cac9c898737de93b8a945f0351e53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 12 00:11:48 2020 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 12 00:11:48 2020 -0500","stats":{"files_changed":1,"insertions":9,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":15}]},"message":"add try/except to fix bare jc command condition","epoch":1581495108,"epoch_utc":null},{"commit":"95dbf98e8e03486f74d986683f52699f4f9c9577","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 11 19:14:51 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 11 19:14:51 2020 -0800","stats":{"files_changed":1,"insertions":26,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":32}]},"message":"allow options in magic syntax","epoch":1581477291,"epoch_utc":null},{"commit":"d49323e4ebf2a8aebd1d8ea65ef0854ee8bcb29f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 11 18:09:21 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 11 18:09:21 2020 -0800","stats":{"files_changed":33,"insertions":33,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":1},{"name":"jc/parsers/crontab.py","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":1},{"name":"jc/parsers/du.py","lines_changed":1},{"name":"jc/parsers/env.py","lines_changed":1},{"name":"jc/parsers/foo.py","lines_changed":1},{"name":"jc/parsers/free.py","lines_changed":1},{"name":"jc/parsers/fstab.py","lines_changed":1},{"name":"jc/parsers/history.py","lines_changed":1},{"name":"jc/parsers/id.py","lines_changed":1},{"name":"jc/parsers/ifconfig.py","lines_changed":1},{"name":"jc/parsers/iptables.py","lines_changed":1},{"name":"jc/parsers/jobs.py","lines_changed":1},{"name":"jc/parsers/ls.py","lines_changed":1},{"name":"jc/parsers/lsblk.py","lines_changed":1},{"name":"jc/parsers/lsmod.py","lines_changed":1},{"name":"jc/parsers/lsof.py","lines_changed":1},{"name":"jc/parsers/mount.py","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":1},{"name":"jc/parsers/pip_list.py","lines_changed":1},{"name":"jc/parsers/pip_show.py","lines_changed":1},{"name":"jc/parsers/ps.py","lines_changed":1},{"name":"jc/parsers/route.py","lines_changed":1},{"name":"jc/parsers/ss.py","lines_changed":1},{"name":"jc/parsers/stat.py","lines_changed":1},{"name":"jc/parsers/systemctl.py","lines_changed":1},{"name":"jc/parsers/systemctl_lj.py","lines_changed":1},{"name":"jc/parsers/systemctl_ls.py","lines_changed":1},{"name":"jc/parsers/systemctl_luf.py","lines_changed":1},{"name":"jc/parsers/uname.py","lines_changed":1},{"name":"jc/parsers/uptime.py","lines_changed":1},{"name":"jc/parsers/w.py","lines_changed":1}]},"message":"add magic_commands list to info","epoch":1581473361,"epoch_utc":null},{"commit":"08c1e2aec9d6bb68653dc12ba2272535fb7cef09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 11 18:08:59 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 11 18:08:59 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add magic syntax","epoch":1581473339,"epoch_utc":null},{"commit":"a2c137df2e6d3b133df5df0bb3f9b1ca69990557","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 11 18:08:37 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 11 18:08:37 2020 -0800","stats":{"files_changed":2,"insertions":66,"deletions":299,"files":["jc/cli.py","jc/cli.py.old"],"file_stats":[{"name":"jc/cli.py","lines_changed":135},{"name":"jc/cli.py.old","lines_changed":230}]},"message":"better magic command syntax logic using introspection information from parser modules","epoch":1581473317,"epoch_utc":null},{"commit":"fe27dcdb8f72b5a288f978b87be2eb930099543e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 11 12:16:23 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 11 12:16:23 2020 -0800","stats":{"files_changed":2,"insertions":319,"deletions":45,"files":["jc/cli.py","jc/cli.py.old"],"file_stats":[{"name":"jc/cli.py","lines_changed":134},{"name":"jc/cli.py.old","lines_changed":230}]},"message":"proof of concept for magic syntax (e.g. jc ls -al)","epoch":1581452183,"epoch_utc":null},{"commit":"028e136161ac15f588845f87907b4565a6ee7be2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 8 12:46:42 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Feb 8 12:46:42 2020 -0800","stats":{"files_changed":4,"insertions":7,"deletions":2,"files":["MANIFEST.in","changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"MANIFEST.in","lines_changed":1},{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":3}]},"message":"bump to 1.7.2: add test fixtures to package","epoch":1581194802,"epoch_utc":null},{"commit":"9a85a0a4d504447b32fb622bb17cebc5e47f687f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 8 12:46:14 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Feb 8 12:46:14 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/crontab_u.md","jc/parsers/crontab_u.py"],"file_stats":[{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2}]},"message":"fix doc","epoch":1581194774,"epoch_utc":null},{"commit":"3a1cbc4d5063344c3e3a4bf510d651a36beedfb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 22:26:47 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 22:26:47 2020 -0800","stats":{"files_changed":1,"insertions":14,"deletions":14,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":28}]},"message":"move info class to top","epoch":1580970407,"epoch_utc":null},{"commit":"77d334f7f386f79ec0571325500054fdab207f31","merge":"4de8f42 53cdf86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:59:52 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Feb 5 16:59:52 2020 -0800","message":"Merge pull request #19 from kellyjonbrazil/dev-1.7.1\n\nDev v1.7.1","epoch":1580950792,"epoch_utc":null},{"commit":"53cdf863acc72dbdb671773e30277f42e9eadc0e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:53:17 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 16:53:17 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":4}]},"message":"changelog update","epoch":1580950397,"epoch_utc":null},{"commit":"7b7e7fe0fe92edef1e559bd7ae8272530d7ed5c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:50:55 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 16:50:55 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"changelog update","epoch":1580950255,"epoch_utc":null},{"commit":"0c03132847a3d2bcbdb0b743e1472865916cced4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:18:58 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 16:18:58 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"fix error codes using sys.exit()","epoch":1580948338,"epoch_utc":null},{"commit":"3b81f7e2a1381958b33962d4531f3fa223c6a83e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:12:09 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 16:12:09 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"exit code on ctrl-c exit","epoch":1580947929,"epoch_utc":null},{"commit":"3d76437b435660e92633c604c4ad32ee0500a28b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:00:23 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 16:00:23 2020 -0800","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ini.md","docs/parsers/xml.md","jc/parsers/ini.py","jc/parsers/xml.py"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/xml.py","lines_changed":2}]},"message":"doc fix","epoch":1580947223,"epoch_utc":null},{"commit":"4bc54c78cea48682ed0432ea56460a26a0e52f83","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:00:10 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 16:00:10 2020 -0800","stats":{"files_changed":4,"insertions":7,"deletions":7,"files":["docs/parsers/du.md","docs/parsers/history.md","jc/parsers/du.py","jc/parsers/history.py"],"file_stats":[{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":6},{"name":"jc/parsers/history.py","lines_changed":4}]},"message":"fix compatibility list","epoch":1580947210,"epoch_utc":null},{"commit":"3d303a96b9f6d582b1e99a632da539c3bee4df7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 15:52:39 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 15:52:39 2020 -0800","stats":{"files_changed":5,"insertions":16,"deletions":2,"files":["tests/fixtures/centos-7.7/crontab-u.json","tests/fixtures/centos-7.7/{crontab2.out => crontab-u.out}","tests/fixtures/centos-7.7/crontab.json","tests/fixtures/ubuntu-18.04/crontab-u.json","tests/test_crontab_u.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/crontab-u.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/{crontab2.out => crontab-u.out}","lines_changed":1},{"name":"tests/fixtures/centos-7.7/crontab.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/crontab-u.json","lines_changed":2},{"name":"tests/test_crontab_u.py","lines_changed":12}]},"message":"crontab bug fix and tests","epoch":1580946759,"epoch_utc":null},{"commit":"33c99d031d18e52a8ca85dfc1a8cba0acebfc3bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 15:12:59 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 15:12:59 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":2}]},"message":"fix line clobbering bug","epoch":1580944379,"epoch_utc":null},{"commit":"caf7e9f69a22f3c9b3d4624fd2238d6e54d932ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 15:11:51 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 15:11:51 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/crontab_u.py"],"file_stats":[{"name":"jc/parsers/crontab_u.py","lines_changed":6}]},"message":"fix line clobbering bug and add user field to shortcuts","epoch":1580944311,"epoch_utc":null},{"commit":"9449f1f5d5e7bc075549549758af5cc3a6c4524f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 14:44:49 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 14:44:49 2020 -0800","stats":{"files_changed":4,"insertions":9,"deletions":3,"files":["changelog.txt","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/fixtures/centos-7.7/crontab2.out"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/crontab.py","lines_changed":4},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/crontab2.out","lines_changed":5}]},"message":"crontab bugfix: inserting header row was clobbering the first data row","epoch":1580942689,"epoch_utc":null},{"commit":"6bad164b5e2a5b7c7ce82c69b6c091fc079ab2fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 14:10:22 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 14:10:22 2020 -0800","stats":{"files_changed":1,"insertions":7,"deletions":9,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":16}]},"message":"simplify by removing unnecessary getattr calls","epoch":1580940622,"epoch_utc":null},{"commit":"bb5ba7ddb146821db2efe095b6de5ae5b72bb335","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 13:57:34 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 13:57:34 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":7}]},"message":"add indent variable to helptext","epoch":1580939854,"epoch_utc":null},{"commit":"8b2e01d5404649e8f94c81ca3b5fa05fe8962220","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 13:50:12 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 13:50:12 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"doc update","epoch":1580939412,"epoch_utc":null},{"commit":"ff1159b1deb9b870382a6066166961902679b569","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 11:45:17 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 11:45:17 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"exit codes on error","epoch":1580931917,"epoch_utc":null},{"commit":"a2fd3202a0a3df336792f167c546ea3e53ea2332","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 11:34:33 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 11:34:33 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/pip_list.py","jc/parsers/pip_show.py"],"file_stats":[{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2}]},"message":"description formatting change","epoch":1580931273,"epoch_utc":null},{"commit":"7b53715b91787a8885d61ddc0079c7ee8f9348a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 11:08:58 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 11:08:58 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/crontab_u.py"],"file_stats":[{"name":"jc/parsers/crontab_u.py","lines_changed":2}]},"message":"change description","epoch":1580929738,"epoch_utc":null},{"commit":"e05fc0a5107b348af14ff4bea39d274939fab7dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 11:08:47 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 11:08:47 2020 -0800","stats":{"files_changed":1,"insertions":8,"deletions":8,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":16}]},"message":"change padding of helptext","epoch":1580929727,"epoch_utc":null},{"commit":"43604c33f654b8c19e8cce387ebbf31bd598b73b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 10:59:51 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 10:59:51 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"doc update","epoch":1580929191,"epoch_utc":null},{"commit":"eb67c484ff2a9530b434cd6a90c160f6936e1de7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 10:58:26 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 10:58:26 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"add crontab-u to parsers list","epoch":1580929106,"epoch_utc":null},{"commit":"a7b7bdd46781d07e6e70d74a41a3944855fde5fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 10:55:08 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 10:55:08 2020 -0800","stats":{"files_changed":1,"insertions":94,"deletions":92,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":186}]},"message":"load parser modules 'just in time' so we don't need to load all modules at startup","epoch":1580928908,"epoch_utc":null},{"commit":"ab06989a18faf5378f1e73c7016ea02e1218ff9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:46:52 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 21:46:52 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":10}]},"message":"description updates","epoch":1580881612,"epoch_utc":null},{"commit":"657b722f947b6a0aa7e52a786e4c84f177e9a5c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:44:10 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 21:44:10 2020 -0800","stats":{"files_changed":4,"insertions":8,"deletions":8,"files":["README.md","changelog.txt","docs/parsers/ini.md","jc/parsers/ini.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"changelog.txt","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"jc/parsers/ini.py","lines_changed":6}]},"message":"ini to INI","epoch":1580881450,"epoch_utc":null},{"commit":"dd2aecad2787186b3962723086bb7e13eff4874f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:37:07 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 21:37:07 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"description update","epoch":1580881027,"epoch_utc":null},{"commit":"c82c5c5c648384eb5a54205ba8590624a3ab4375","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:34:57 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 21:34:57 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":6}]},"message":"changelog update","epoch":1580880897,"epoch_utc":null},{"commit":"a1761cd68f91e2668d8d7e2fa7774f6496408be6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:25:33 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 21:25:33 2020 -0800","stats":{"files_changed":3,"insertions":42,"deletions":0,"files":["tests/fixtures/centos-7.7/id.json","tests/fixtures/osx-10.14.6/id.json","tests/test_id.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/id.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/id.json","lines_changed":1},{"name":"tests/test_id.py","lines_changed":40}]},"message":"id tests","epoch":1580880333,"epoch_utc":null},{"commit":"d618a7f583629bb7a7fc0854e7349cab07e3e003","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:17:03 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 21:17:03 2020 -0800","stats":{"files_changed":4,"insertions":143,"deletions":9,"files":["README.md","docgen.sh","docs/parsers/id.md","jc/parsers/id.py"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/id.md","lines_changed":133},{"name":"jc/parsers/id.py","lines_changed":12}]},"message":"doc update","epoch":1580879823,"epoch_utc":null},{"commit":"831a42f66096f5efbbf0f6882970c328120f9c9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:12:32 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 21:12:32 2020 -0800","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":48}]},"message":"id formatting","epoch":1580879552,"epoch_utc":null},{"commit":"3b36022e5a1056a28a83494b1ab8fab209399c2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:09:42 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 21:09:42 2020 -0800","stats":{"files_changed":5,"insertions":250,"deletions":1,"files":["README.md","jc/cli.py","jc/parsers/id.py","tests/fixtures/centos-7.7/id.out","tests/fixtures/osx-10.14.6/id.out"],"file_stats":[{"name":"README.md","lines_changed":33},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":214},{"name":"tests/fixtures/centos-7.7/id.out","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/id.out","lines_changed":1}]},"message":"add id parser","epoch":1580879382,"epoch_utc":null},{"commit":"d01dfa25f10f82cd201ae7b4c9cc18313773f8d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 15:22:36 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 15:22:36 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]},"message":"changelog updates","epoch":1580858556,"epoch_utc":null},{"commit":"395a99037b4816eb800b289f90372a9b8d7d36cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:36:03 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 14:36:03 2020 -0800","stats":{"files_changed":3,"insertions":89,"deletions":13,"files":["README.md","docs/parsers/history.md","jc/parsers/history.py"],"file_stats":[{"name":"README.md","lines_changed":84},{"name":"docs/parsers/history.md","lines_changed":10},{"name":"jc/parsers/history.py","lines_changed":8}]},"message":"crontab-u and history doc updates","epoch":1580855763,"epoch_utc":null},{"commit":"025986c51d2d4869b17de63a7dd96efa2988e3c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:31:28 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 14:31:28 2020 -0800","stats":{"files_changed":3,"insertions":13,"deletions":3,"files":["jc/parsers/history.py","tests/fixtures/centos-7.7/history.json","tests/fixtures/ubuntu-18.04/history.json"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":12},{"name":"tests/fixtures/centos-7.7/history.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/history.json","lines_changed":2}]},"message":"change history 'line' to integer","epoch":1580855488,"epoch_utc":null},{"commit":"c56b83093ff05f55ef4643c1731cff61d4b9e8ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:19:33 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 14:19:33 2020 -0800","stats":{"files_changed":3,"insertions":202,"deletions":2,"files":["docgen.sh","docs/parsers/crontab.md","docs/parsers/crontab_u.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"docs/parsers/crontab_u.md","lines_changed":199}]},"message":"doc update","epoch":1580854773,"epoch_utc":null},{"commit":"7c712a4133abd843d4da926e4c8d548abd1d6fa3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:18:14 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 14:18:14 2020 -0800","stats":{"files_changed":1,"insertions":52,"deletions":50,"files":["jc/parsers/crontab_u.py"],"file_stats":[{"name":"jc/parsers/crontab_u.py","lines_changed":102}]},"message":"doc update","epoch":1580854694,"epoch_utc":null},{"commit":"9a0cfe6dfa4888f435d35bd2d35126d031a556d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:18:01 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 14:18:01 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":4}]},"message":"minor formatting","epoch":1580854681,"epoch_utc":null},{"commit":"a116cdbcec1b27192dd0f9f4707629353edb3caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:11:34 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 14:11:34 2020 -0800","stats":{"files_changed":5,"insertions":29,"deletions":13,"files":["tests/fixtures/ubuntu-18.04/crontab-u.json",".../ubuntu-18.04/{crontab.out => crontab-u.out}","tests/fixtures/ubuntu-18.04/crontab.json","tests/test_crontab.py","tests/test_crontab_u.py"],"file_stats":[{"name":"tests/fixtures/ubuntu-18.04/crontab-u.json","lines_changed":1},{"name":".../ubuntu-18.04/{crontab.out => crontab-u.out}","lines_changed":0},{"name":"tests/fixtures/ubuntu-18.04/crontab.json","lines_changed":1},{"name":"tests/test_crontab.py","lines_changed":12},{"name":"tests/test_crontab_u.py","lines_changed":28}]},"message":"tests for crontab-u","epoch":1580854294,"epoch_utc":null},{"commit":"f2d616c98e049cdac5d667e63723f92110419a1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:02:27 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 14:02:27 2020 -0800","stats":{"files_changed":3,"insertions":272,"deletions":0,"files":["changelog.txt","jc/cli.py","jc/parsers/crontab_u.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":269}]},"message":"add crontab with user parser","epoch":1580853747,"epoch_utc":null},{"commit":"42cbd1777dbacc614d75f67f3f9156f72be46532","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 13:53:45 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 13:53:45 2020 -0800","stats":{"files_changed":2,"insertions":80,"deletions":0,"files":["tests/test_xml.py","tests/test_yaml.py"],"file_stats":[{"name":"tests/test_xml.py","lines_changed":40},{"name":"tests/test_yaml.py","lines_changed":40}]},"message":"add xml and yaml tests","epoch":1580853225,"epoch_utc":null},{"commit":"ebf375aac0473249cfd212068f6e6e33cc42449a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 12:18:31 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 12:18:31 2020 -0800","stats":{"files_changed":1,"insertions":40,"deletions":0,"files":["tests/test_ini.py"],"file_stats":[{"name":"tests/test_ini.py","lines_changed":40}]},"message":"add ini tests","epoch":1580847511,"epoch_utc":null},{"commit":"1f9050267eeb870c4c0f50000fc32985c4d8535b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 12:02:18 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 12:02:18 2020 -0800","stats":{"files_changed":12,"insertions":586,"deletions":0,"files":["tests/fixtures/generic/ini-iptelserver.ini","tests/fixtures/generic/ini-iptelserver.json","tests/fixtures/generic/ini-test.ini","tests/fixtures/generic/ini-test.json","tests/fixtures/generic/xml-cd_catalog.json","tests/fixtures/generic/xml-cd_catalog.xml","tests/fixtures/generic/xml-foodmenu.json","tests/fixtures/generic/xml-foodmenu.xml","tests/fixtures/generic/yaml-istio-sc.json","tests/fixtures/generic/yaml-istio-sc.yaml","tests/fixtures/generic/yaml-istio-sidecar.json","tests/fixtures/generic/yaml-istio-sidecar.yaml"],"file_stats":[{"name":"tests/fixtures/generic/ini-iptelserver.ini","lines_changed":133},{"name":"tests/fixtures/generic/ini-iptelserver.json","lines_changed":1},{"name":"tests/fixtures/generic/ini-test.ini","lines_changed":12},{"name":"tests/fixtures/generic/ini-test.json","lines_changed":1},{"name":"tests/fixtures/generic/xml-cd_catalog.json","lines_changed":1},{"name":"tests/fixtures/generic/xml-cd_catalog.xml","lines_changed":211},{"name":"tests/fixtures/generic/xml-foodmenu.json","lines_changed":1},{"name":"tests/fixtures/generic/xml-foodmenu.xml","lines_changed":33},{"name":"tests/fixtures/generic/yaml-istio-sc.json","lines_changed":1},{"name":"tests/fixtures/generic/yaml-istio-sc.yaml","lines_changed":17},{"name":"tests/fixtures/generic/yaml-istio-sidecar.json","lines_changed":1},{"name":"tests/fixtures/generic/yaml-istio-sidecar.yaml","lines_changed":174}]},"message":"add ini, xml, and yaml test files","epoch":1580846538,"epoch_utc":null},{"commit":"d7f9707a1521719ce051140b1a0b4ced7c5114c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 11:18:32 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 11:18:32 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/ini.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"minor formatting","epoch":1580843912,"epoch_utc":null},{"commit":"ab589ee3ed09b9d5e09d8c046f3a64cd2bd14c98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 11:18:15 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 11:18:15 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"add __version__ variable","epoch":1580843895,"epoch_utc":null},{"commit":"c84ec0361fc4c877c698378b28ff9e8b502793b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 22:25:30 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 22:25:30 2020 -0800","stats":{"files_changed":4,"insertions":105,"deletions":3,"files":["README.md","docgen.sh","docs/parsers/xml.md","jc/parsers/xml.py"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/xml.md","lines_changed":99},{"name":"jc/parsers/xml.py","lines_changed":5}]},"message":"xml example update","epoch":1580797530,"epoch_utc":null},{"commit":"47d2f8968a8a9b68fc9fff45985f5e69f1a5cc40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 22:21:40 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 22:21:40 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"changelog.txt","lines_changed":1}]},"message":"doc update","epoch":1580797300,"epoch_utc":null},{"commit":"019c480bcce7fe3821b75906fc673ce7bb1ffadc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 22:17:13 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 22:17:13 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"update acknowledgments","epoch":1580797033,"epoch_utc":null},{"commit":"547c6d3d5956984d3c4fb5c2a1b76a595752b467","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 22:13:06 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 22:13:06 2020 -0800","stats":{"files_changed":5,"insertions":172,"deletions":2,"files":["README.md","changelog.txt","jc/cli.py","jc/parsers/xml.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":46},{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/xml.py","lines_changed":119},{"name":"setup.py","lines_changed":3}]},"message":"add xml parser","epoch":1580796786,"epoch_utc":null},{"commit":"b5ebf8b76afcd0e0190994048fe1f5b53f654451","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 21:41:53 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 21:41:53 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add ruamel.yaml ack","epoch":1580794913,"epoch_utc":null},{"commit":"c690e328f23a69f592dfaaa949b74ba2190ad376","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 21:38:21 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 21:38:21 2020 -0800","stats":{"files_changed":2,"insertions":102,"deletions":14,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/yaml.md","lines_changed":58},{"name":"jc/parsers/yaml.py","lines_changed":58}]},"message":"add examples","epoch":1580794701,"epoch_utc":null},{"commit":"cbb92c1a9517234806f1c54398a69645b6f43669","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 21:38:08 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 21:38:08 2020 -0800","stats":{"files_changed":1,"insertions":94,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":94}]},"message":"add ini and yaml","epoch":1580794688,"epoch_utc":null},{"commit":"beb41997c9b3797e73a678ec1bcddcfb83b5ef0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 21:28:11 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 21:28:11 2020 -0800","stats":{"files_changed":3,"insertions":91,"deletions":2,"files":["docgen.sh","docs/parsers/ini.md","jc/parsers/ini.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ini.md","lines_changed":87},{"name":"jc/parsers/ini.py","lines_changed":5}]},"message":"doc update","epoch":1580794091,"epoch_utc":null},{"commit":"755a6faf1110f150fe2261b81439b7d17a9b424e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 21:22:30 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 21:22:30 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":8,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":12}]},"message":"clean up multi-document support","epoch":1580793750,"epoch_utc":null},{"commit":"021f8350a31a49ecc539f02576303600b222b49d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 19:11:36 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 19:11:36 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":4}]},"message":"update doc","epoch":1580785896,"epoch_utc":null},{"commit":"76583dcd2f5ef32e58ca87149154563b07e061cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 19:07:31 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 19:07:31 2020 -0800","stats":{"files_changed":2,"insertions":113,"deletions":0,"files":["jc/cli.py","jc/parsers/ini.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/ini.py","lines_changed":111}]},"message":"add ini file parser","epoch":1580785651,"epoch_utc":null},{"commit":"bf033239a706c42be3d7508c58a51c542f8a69b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 16:20:38 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 16:20:38 2020 -0800","stats":{"files_changed":2,"insertions":82,"deletions":7,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/yaml.md","lines_changed":69},{"name":"jc/parsers/yaml.py","lines_changed":20}]},"message":"doc update","epoch":1580775638,"epoch_utc":null},{"commit":"eb37fccd37fd625f701a14b6cfcf30e9f0bbff4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 16:17:29 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 16:17:29 2020 -0800","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":11}]},"message":"doc update","epoch":1580775449,"epoch_utc":null},{"commit":"d04ad453319fe45e302da87f970d2ac0806fae1a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 16:12:45 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 16:12:45 2020 -0800","stats":{"files_changed":3,"insertions":7,"deletions":2,"files":["changelog.txt","docgen.sh","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"setup.py","lines_changed":5}]},"message":"setup for 1.7.1","epoch":1580775165,"epoch_utc":null},{"commit":"db157b8ca7f7fa935676bafeaafdfd9818a89e6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 16:12:32 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 16:12:32 2020 -0800","stats":{"files_changed":2,"insertions":94,"deletions":2,"files":["jc/cli.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6},{"name":"jc/parsers/yaml.py","lines_changed":90}]},"message":"add yaml file parser","epoch":1580775152,"epoch_utc":null},{"commit":"68f277bb2081eb2cba14ffe7f0ee1ee0a982335b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 16:11:58 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 16:11:58 2020 -0800","stats":{"files_changed":33,"insertions":99,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/crontab.py","lines_changed":3},{"name":"jc/parsers/df.py","lines_changed":3},{"name":"jc/parsers/dig.py","lines_changed":3},{"name":"jc/parsers/du.py","lines_changed":3},{"name":"jc/parsers/env.py","lines_changed":3},{"name":"jc/parsers/foo.py","lines_changed":3},{"name":"jc/parsers/free.py","lines_changed":3},{"name":"jc/parsers/fstab.py","lines_changed":3},{"name":"jc/parsers/history.py","lines_changed":3},{"name":"jc/parsers/hosts.py","lines_changed":3},{"name":"jc/parsers/ifconfig.py","lines_changed":3},{"name":"jc/parsers/iptables.py","lines_changed":3},{"name":"jc/parsers/jobs.py","lines_changed":3},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"jc/parsers/lsblk.py","lines_changed":3},{"name":"jc/parsers/lsmod.py","lines_changed":3},{"name":"jc/parsers/lsof.py","lines_changed":3},{"name":"jc/parsers/mount.py","lines_changed":3},{"name":"jc/parsers/netstat.py","lines_changed":3},{"name":"jc/parsers/pip_list.py","lines_changed":3},{"name":"jc/parsers/pip_show.py","lines_changed":3},{"name":"jc/parsers/ps.py","lines_changed":3},{"name":"jc/parsers/route.py","lines_changed":3},{"name":"jc/parsers/ss.py","lines_changed":3},{"name":"jc/parsers/stat.py","lines_changed":3},{"name":"jc/parsers/systemctl.py","lines_changed":3},{"name":"jc/parsers/systemctl_lj.py","lines_changed":3},{"name":"jc/parsers/systemctl_ls.py","lines_changed":3},{"name":"jc/parsers/systemctl_luf.py","lines_changed":3},{"name":"jc/parsers/uname.py","lines_changed":3},{"name":"jc/parsers/uptime.py","lines_changed":3},{"name":"jc/parsers/w.py","lines_changed":3}]},"message":"add __version__","epoch":1580775118,"epoch_utc":null},{"commit":"4de8f42664379570392552796e34324abb39fdc2","merge":"6633d92 4f11855","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 12:11:13 2019 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Dec 17 12:11:13 2019 -0800","message":"Merge pull request #17 from kellyjonbrazil/dev\n\nDev v1.6.1","epoch":1576613473,"epoch_utc":null},{"commit":"4f118559356edc1da866e1bec80830e7a75a0b26","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 12:09:24 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 17 12:09:24 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]},"message":"update version info","epoch":1576613364,"epoch_utc":null},{"commit":"2b9a5fcc32f85295faa55410efcaf142c42bd167","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 12:05:40 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 17 12:05:40 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":4}]},"message":"update version","epoch":1576613140,"epoch_utc":null},{"commit":"224948d1f23e01b7cd968820529579792f862f0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 11:44:43 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 17 11:44:43 2019 -0800","stats":{"files_changed":21,"insertions":428,"deletions":0,"files":["tests/fixtures/centos-7.7/pip-list.json","tests/fixtures/centos-7.7/pip-list.out","tests/fixtures/centos-7.7/pip-show.json","tests/fixtures/centos-7.7/pip-show.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.11.6/pip-list.json","tests/fixtures/osx-10.11.6/pip-list.out","tests/fixtures/osx-10.11.6/pip-show.json","tests/fixtures/osx-10.11.6/pip-show.out","tests/fixtures/osx-10.14.6/pip-list.json","tests/fixtures/osx-10.14.6/pip-list.out","tests/fixtures/osx-10.14.6/pip-show.json","tests/fixtures/osx-10.14.6/pip-show.out","tests/fixtures/ubuntu-18.04/pip-list-legacy.json","tests/fixtures/ubuntu-18.04/pip-list-legacy.out","tests/fixtures/ubuntu-18.04/pip-list.json","tests/fixtures/ubuntu-18.04/pip-list.out","tests/fixtures/ubuntu-18.04/pip-show.json","tests/fixtures/ubuntu-18.04/pip-show.out","tests/test_pip_list.py","tests/test_pip_show.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/pip-list.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/pip-list.out","lines_changed":22},{"name":"tests/fixtures/centos-7.7/pip-show.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/pip-show.out","lines_changed":32},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/pip-list.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/pip-list.out","lines_changed":7},{"name":"tests/fixtures/osx-10.11.6/pip-show.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/pip-show.out","lines_changed":32},{"name":"tests/fixtures/osx-10.14.6/pip-list.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/pip-list.out","lines_changed":7},{"name":"tests/fixtures/osx-10.14.6/pip-show.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/pip-show.out","lines_changed":32},{"name":"tests/fixtures/ubuntu-18.04/pip-list-legacy.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/pip-list-legacy.out","lines_changed":57},{"name":"tests/fixtures/ubuntu-18.04/pip-list.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/pip-list.out","lines_changed":59},{"name":"tests/fixtures/ubuntu-18.04/pip-show.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/pip-show.out","lines_changed":29},{"name":"tests/test_pip_list.py","lines_changed":76},{"name":"tests/test_pip_show.py","lines_changed":64}]},"message":"pip list and pip show tests","epoch":1576611883,"epoch_utc":null},{"commit":"36f2812d5a7a94c412e098233c026d99d5205b60","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 10:58:00 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 17 10:58:00 2019 -0800","stats":{"files_changed":1,"insertions":15,"deletions":7,"files":["jc/parsers/pip_list.py"],"file_stats":[{"name":"jc/parsers/pip_list.py","lines_changed":22}]},"message":"add support for legacy output","epoch":1576609080,"epoch_utc":null},{"commit":"be06aa2b31c057c56229e75c7fa70052b83053ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 10:09:19 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 17 10:09:19 2019 -0800","stats":{"files_changed":65,"insertions":70,"deletions":66,"files":["docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":3},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":3},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":3},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":3},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2}]},"message":"update parse() Return info","epoch":1576606159,"epoch_utc":null},{"commit":"41f8e3aba268ca0cd09931a04368615425c1aec8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 09:56:09 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 17 09:56:09 2019 -0800","stats":{"files_changed":65,"insertions":67,"deletions":65,"files":["docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":3},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":3},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2}]},"message":"update Return info","epoch":1576605369,"epoch_utc":null},{"commit":"093c0df8978ace842af5258f9aff72c63c6f843d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 09:38:50 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 17 09:38:50 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"schema info","epoch":1576604330,"epoch_utc":null},{"commit":"37afc7dc8ae30342d01f3f72e73646fa60bb5294","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 09:35:27 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 17 09:35:27 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"updte todo and compatibility","epoch":1576604127,"epoch_utc":null},{"commit":"efbf3549606fc77f8c16587ff04a0c316dfe5c00","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 09:24:08 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 17 09:24:08 2019 -0800","stats":{"files_changed":4,"insertions":126,"deletions":12,"files":["README.md","docgen.sh","docs/parsers/pip_show.md","jc/parsers/pip_show.py"],"file_stats":[{"name":"README.md","lines_changed":31},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/pip_show.md","lines_changed":94},{"name":"jc/parsers/pip_show.py","lines_changed":12}]},"message":"doc update for pip show","epoch":1576603448,"epoch_utc":null},{"commit":"5e39fe0d8044787389d8f206f3c863d4bdf1e2ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 09:20:26 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 17 09:20:26 2019 -0800","stats":{"files_changed":1,"insertions":64,"deletions":5,"files":["jc/parsers/pip_show.py"],"file_stats":[{"name":"jc/parsers/pip_show.py","lines_changed":69}]},"message":"pip show parser working","epoch":1576603226,"epoch_utc":null},{"commit":"47328dc65969f149c8f027286774ff0847c18add","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 19:09:14 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 19:09:14 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add pip-show parser","epoch":1576552154,"epoch_utc":null},{"commit":"addeef50ba54f536855544937a6c98135ae5cd51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 19:07:51 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 19:07:51 2019 -0800","stats":{"files_changed":1,"insertions":84,"deletions":0,"files":["jc/parsers/pip_show.py"],"file_stats":[{"name":"jc/parsers/pip_show.py","lines_changed":84}]},"message":"initial pip show parser add","epoch":1576552071,"epoch_utc":null},{"commit":"ad338cc5b50a178091c47cbea9a1db135a7fb678","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:58:33 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 18:58:33 2019 -0800","stats":{"files_changed":2,"insertions":56,"deletions":42,"files":["docs/parsers/crontab.md","jc/parsers/crontab.py"],"file_stats":[{"name":"docs/parsers/crontab.md","lines_changed":49},{"name":"jc/parsers/crontab.py","lines_changed":49}]},"message":"schema doc update","epoch":1576551513,"epoch_utc":null},{"commit":"202bc8201e31fd453c682265347b4e2ac2d41718","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:54:19 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 18:54:19 2019 -0800","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["README.md","docs/parsers/crontab.md","jc/parsers/crontab.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"jc/parsers/crontab.py","lines_changed":4}]},"message":"doc update","epoch":1576551259,"epoch_utc":null},{"commit":"5ff99de405fbd8f79f9c2e301ac27184e0aba6fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:40:08 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 18:40:08 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add argument to parser info","epoch":1576550408,"epoch_utc":null},{"commit":"86ebe2cf9c6b336eacf217393c3c3c324ee29ec0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:36:13 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 18:36:13 2019 -0800","stats":{"files_changed":6,"insertions":205,"deletions":1,"files":["README.md","docgen.sh","docs/parsers/crontab.md","docs/parsers/pip_list.md","jc/cli.py","jc/parsers/pip_list.py"],"file_stats":[{"name":"README.md","lines_changed":21},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":75},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":105}]},"message":"initial add of pip list parser","epoch":1576550173,"epoch_utc":null},{"commit":"facf0b399c608d33f6a454ee24fd49fc62471742","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:09:29 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 18:09:29 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":4}]},"message":"add osx to campatible","epoch":1576548569,"epoch_utc":null},{"commit":"33db7b0bcb0f24979cad6e173737d75c8ed301af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:09:00 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 18:09:00 2019 -0800","stats":{"files_changed":4,"insertions":57,"deletions":0,"files":["tests/fixtures/centos-7.7/crontab.json","tests/fixtures/ubuntu-18.04/crontab.json","tests/fixtures/ubuntu-18.04/crontab.out","tests/test_crontab.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/crontab.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/crontab.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/crontab.out","lines_changed":15},{"name":"tests/test_crontab.py","lines_changed":40}]},"message":"add crontab tests","epoch":1576548540,"epoch_utc":null},{"commit":"663d07bca1181024d9d08b940237c52197c91729","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 17:52:09 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 17:52:09 2019 -0800","stats":{"files_changed":2,"insertions":191,"deletions":0,"files":["docgen.sh","docs/parsers/crontab.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/crontab.md","lines_changed":190}]},"message":"add crontab","epoch":1576547529,"epoch_utc":null},{"commit":"ba04e4997fcb28adbee446f633c121f1585b9f2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 17:51:11 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 17:51:11 2019 -0800","stats":{"files_changed":1,"insertions":113,"deletions":4,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":117}]},"message":"update docs","epoch":1576547471,"epoch_utc":null},{"commit":"c4fee1b658c91afa2abdd746af6c1b4697c44b35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 17:50:52 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 17:50:52 2019 -0800","stats":{"files_changed":1,"insertions":72,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":73}]},"message":"add crontab parser","epoch":1576547452,"epoch_utc":null},{"commit":"99b92a15bbebc5568f4455f388f945613c4a2759","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 17:45:34 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 17:45:34 2019 -0800","stats":{"files_changed":2,"insertions":37,"deletions":14,"files":["jc/parsers/crontab.py","tests/fixtures/centos-7.7/crontab.out"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":40},{"name":"tests/fixtures/centos-7.7/crontab.out","lines_changed":11}]},"message":"support shortcut schedules","epoch":1576547134,"epoch_utc":null},{"commit":"b076ab5b57a6a59db096485e5ff4eb9f91bae8be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 17:01:53 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 17:01:53 2019 -0800","stats":{"files_changed":3,"insertions":177,"deletions":0,"files":["jc/cli.py","jc/parsers/crontab.py","tests/fixtures/centos-7.7/crontab.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":132},{"name":"tests/fixtures/centos-7.7/crontab.out","lines_changed":43}]},"message":"initial crontab parser","epoch":1576544513,"epoch_utc":null},{"commit":"687759f75d0e80e81746a84f051e55cfdc870447","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 14:31:21 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 14:31:21 2019 -0800","stats":{"files_changed":1,"insertions":31,"deletions":31,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":62}]},"message":"alphabetize du entry","epoch":1576535481,"epoch_utc":null},{"commit":"9eaac7f3af0e0851c2d091d94c9920faa8a0fdfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 14:30:06 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 14:30:06 2019 -0800","stats":{"files_changed":1,"insertions":32,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":32}]},"message":"add du","epoch":1576535406,"epoch_utc":null},{"commit":"4c24e00cfc0748d98e220d08820b88fc156148db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 14:27:55 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 14:27:55 2019 -0800","stats":{"files_changed":5,"insertions":21738,"deletions":9,"files":["tests/fixtures/osx-10.11.6/du.json","tests/fixtures/osx-10.11.6/du.out","tests/fixtures/ubuntu-18.04/du.json","tests/fixtures/ubuntu-18.04/du.out","tests/test_du.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/du.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/du.out","lines_changed":2471},{"name":"tests/fixtures/ubuntu-18.04/du.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/du.out","lines_changed":19244},{"name":"tests/test_du.py","lines_changed":30}]},"message":"add osx-11 and ubuntu tests","epoch":1576535275,"epoch_utc":null},{"commit":"beb17011b03e720078b0752e79a6a0f6123d1d3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 13:57:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 13:57:42 2019 -0800","stats":{"files_changed":6,"insertions":131,"deletions":2,"files":["changelog.txt","docgen.sh","docs/parsers/du.md","docs/parsers/uname.md","tests/fixtures/osx-10.14.6/du.json","tests/test_du.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/du.md","lines_changed":115},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/du.json","lines_changed":1},{"name":"tests/test_du.py","lines_changed":12}]},"message":"du tests and docs","epoch":1576533462,"epoch_utc":null},{"commit":"e882bf55bcd1d3526423ed1ccc61fb4819395cce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 13:52:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 13:52:42 2019 -0800","stats":{"files_changed":7,"insertions":8755,"deletions":0,"files":["changelog.txt","jc/cli.py","jc/parsers/du.py","tests/fixtures/centos-7.7/du.json","tests/fixtures/centos-7.7/du.out","tests/fixtures/osx-10.14.6/du.out","tests/test_du.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":148},{"name":"tests/fixtures/centos-7.7/du.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/du.out","lines_changed":5199},{"name":"tests/fixtures/osx-10.14.6/du.out","lines_changed":3364},{"name":"tests/test_du.py","lines_changed":40}]},"message":"initial add du parser","epoch":1576533162,"epoch_utc":null},{"commit":"3a3016adb6d5b9e35f8a39908bfcdc65997cc5c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 11:52:18 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 11:52:18 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add parser_count to about","epoch":1576525938,"epoch_utc":null},{"commit":"1e8b68153ade8a1e3d2b4db36e0c402bbc887079","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 11:12:45 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 11:12:45 2019 -0800","stats":{"files_changed":4,"insertions":27,"deletions":1,"files":["tests/fixtures/osx-10.11.6/uname-a.json","tests/fixtures/osx-10.14.6/uname-a.json","tests/fixtures/osx-10.14.6/uname-a.out","tests/test_uname.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/uname-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/uname-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/uname-a.out","lines_changed":2},{"name":"tests/test_uname.py","lines_changed":24}]},"message":"add osx uname tests","epoch":1576523565,"epoch_utc":null},{"commit":"9335cf65fbb87e3a0a7da0c4e9bcd251cb829de2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 11:02:02 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 11:02:02 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"add uname osx support","epoch":1576522922,"epoch_utc":null},{"commit":"83f35256aee71f2619ddf880e2b8f2d6c63280bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 11:01:43 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 11:01:43 2019 -0800","stats":{"files_changed":1,"insertions":30,"deletions":19,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":49}]},"message":"add OSX support","epoch":1576522903,"epoch_utc":null},{"commit":"428333394817e4461a4eb095f4d6d128305a5f98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 10:03:47 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 10:03:47 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":2}]},"message":"version bump","epoch":1576519427,"epoch_utc":null},{"commit":"b8f902796b7fb23a41355b23f7ce235bd18edc58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 10:03:34 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 10:03:34 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]},"message":"shorten changelog","epoch":1576519414,"epoch_utc":null},{"commit":"8f99ab295cd15718b98781707def97539ad41920","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 09:08:47 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 09:08:47 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"info update","epoch":1576516127,"epoch_utc":null},{"commit":"882310e268e2022f0cd6da75f80f5356529cd05c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 09:04:52 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 09:04:52 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add name to about parser info","epoch":1576515892,"epoch_utc":null},{"commit":"56bce9521409d1850f75a3ae2be1363e765dd9dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 09:00:16 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 09:00:16 2019 -0800","stats":{"files_changed":1,"insertions":6,"deletions":10,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":16}]},"message":"about code cleanup","epoch":1576515616,"epoch_utc":null},{"commit":"c13ecbec2952c5d6765397f645e90653a4fd9d05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 08:59:41 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 08:59:41 2019 -0800","stats":{"files_changed":28,"insertions":2,"deletions":28,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":1},{"name":"jc/parsers/env.py","lines_changed":1},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":1},{"name":"jc/parsers/fstab.py","lines_changed":1},{"name":"jc/parsers/history.py","lines_changed":1},{"name":"jc/parsers/hosts.py","lines_changed":1},{"name":"jc/parsers/iptables.py","lines_changed":1},{"name":"jc/parsers/jobs.py","lines_changed":1},{"name":"jc/parsers/ls.py","lines_changed":1},{"name":"jc/parsers/lsblk.py","lines_changed":1},{"name":"jc/parsers/lsmod.py","lines_changed":1},{"name":"jc/parsers/lsof.py","lines_changed":1},{"name":"jc/parsers/mount.py","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":1},{"name":"jc/parsers/ps.py","lines_changed":1},{"name":"jc/parsers/route.py","lines_changed":1},{"name":"jc/parsers/ss.py","lines_changed":1},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":1},{"name":"jc/parsers/systemctl_lj.py","lines_changed":1},{"name":"jc/parsers/systemctl_ls.py","lines_changed":1},{"name":"jc/parsers/systemctl_luf.py","lines_changed":1},{"name":"jc/parsers/uname.py","lines_changed":1},{"name":"jc/parsers/uptime.py","lines_changed":1},{"name":"jc/parsers/w.py","lines_changed":1}]},"message":"clean up parser info","epoch":1576515581,"epoch_utc":null},{"commit":"0ffaaa6e73649d1f657af569ac0b912f166e8493","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 08:18:37 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 08:18:37 2019 -0800","stats":{"files_changed":1,"insertions":7,"deletions":9,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":16}]},"message":"clean up about code","epoch":1576513117,"epoch_utc":null},{"commit":"75eff3adea097157c005b2201e353a741241ce8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:56:40 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Dec 14 23:56:40 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":8}]},"message":"remove whitespace","epoch":1576396600,"epoch_utc":null},{"commit":"bf5f80476cff642ae672187ea59d40bdb602101e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:56:22 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Dec 14 23:56:22 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6}]},"message":"use real parser name in error message","epoch":1576396582,"epoch_utc":null},{"commit":"9aaf0fbb2f838c0af1e7f18fdb19104f9f5d3d39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:35:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Dec 14 23:35:42 2019 -0800","stats":{"files_changed":29,"insertions":146,"deletions":1,"files":["changelog.txt","docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"docs/parsers/arp.md","lines_changed":11},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5}]},"message":"doc updates","epoch":1576395342,"epoch_utc":null},{"commit":"8f01ef79532743573632d716ceea41d5ea752c88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:27:56 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Dec 14 23:27:56 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add -a option info","epoch":1576394876,"epoch_utc":null},{"commit":"da1d087452da02631296b1b3dc9ee10d4b7f764b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:21:47 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Dec 14 23:21:47 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add parser version info","epoch":1576394507,"epoch_utc":null},{"commit":"e16bc7e882a27a1d5a4bd7cf9972208e6997f96f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:15:15 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Dec 14 23:15:15 2019 -0800","stats":{"files_changed":29,"insertions":82,"deletions":17,"files":["jc/cli.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":71},{"name":"jc/parsers/arp.py","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":1},{"name":"jc/parsers/env.py","lines_changed":1},{"name":"jc/parsers/foo.py","lines_changed":1},{"name":"jc/parsers/free.py","lines_changed":1},{"name":"jc/parsers/fstab.py","lines_changed":1},{"name":"jc/parsers/history.py","lines_changed":1},{"name":"jc/parsers/hosts.py","lines_changed":1},{"name":"jc/parsers/iptables.py","lines_changed":1},{"name":"jc/parsers/jobs.py","lines_changed":1},{"name":"jc/parsers/ls.py","lines_changed":1},{"name":"jc/parsers/lsblk.py","lines_changed":1},{"name":"jc/parsers/lsmod.py","lines_changed":1},{"name":"jc/parsers/lsof.py","lines_changed":1},{"name":"jc/parsers/mount.py","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":1},{"name":"jc/parsers/ps.py","lines_changed":1},{"name":"jc/parsers/route.py","lines_changed":1},{"name":"jc/parsers/ss.py","lines_changed":1},{"name":"jc/parsers/stat.py","lines_changed":1},{"name":"jc/parsers/systemctl.py","lines_changed":1},{"name":"jc/parsers/systemctl_lj.py","lines_changed":1},{"name":"jc/parsers/systemctl_ls.py","lines_changed":1},{"name":"jc/parsers/systemctl_luf.py","lines_changed":1},{"name":"jc/parsers/uname.py","lines_changed":1},{"name":"jc/parsers/uptime.py","lines_changed":1},{"name":"jc/parsers/w.py","lines_changed":1}]},"message":"add about information to parsers","epoch":1576394115,"epoch_utc":null},{"commit":"fe9bdd4811216257c05b16d6d61897929669d434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 13 20:01:51 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 13 20:01:51 2019 -0800","stats":{"files_changed":31,"insertions":384,"deletions":219,"files":["changelog.txt","jc/cli.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/cli.py","lines_changed":127},{"name":"jc/parsers/arp.py","lines_changed":25},{"name":"jc/parsers/df.py","lines_changed":15},{"name":"jc/parsers/dig.py","lines_changed":15},{"name":"jc/parsers/env.py","lines_changed":16},{"name":"jc/parsers/foo.py","lines_changed":16},{"name":"jc/parsers/free.py","lines_changed":16},{"name":"jc/parsers/fstab.py","lines_changed":16},{"name":"jc/parsers/history.py","lines_changed":16},{"name":"jc/parsers/hosts.py","lines_changed":16},{"name":"jc/parsers/ifconfig.py","lines_changed":17},{"name":"jc/parsers/iptables.py","lines_changed":16},{"name":"jc/parsers/jobs.py","lines_changed":16},{"name":"jc/parsers/ls.py","lines_changed":16},{"name":"jc/parsers/lsblk.py","lines_changed":17},{"name":"jc/parsers/lsmod.py","lines_changed":16},{"name":"jc/parsers/lsof.py","lines_changed":16},{"name":"jc/parsers/mount.py","lines_changed":16},{"name":"jc/parsers/netstat.py","lines_changed":16},{"name":"jc/parsers/ps.py","lines_changed":16},{"name":"jc/parsers/route.py","lines_changed":16},{"name":"jc/parsers/ss.py","lines_changed":16},{"name":"jc/parsers/stat.py","lines_changed":15},{"name":"jc/parsers/systemctl.py","lines_changed":16},{"name":"jc/parsers/systemctl_lj.py","lines_changed":16},{"name":"jc/parsers/systemctl_ls.py","lines_changed":16},{"name":"jc/parsers/systemctl_luf.py","lines_changed":16},{"name":"jc/parsers/uname.py","lines_changed":16},{"name":"jc/parsers/uptime.py","lines_changed":16},{"name":"jc/parsers/w.py","lines_changed":16}]},"message":"add info class","epoch":1576296111,"epoch_utc":null},{"commit":"17b6f3f6d6c398a52166849088a793d0e3b328b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 13 14:36:21 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 13 14:36:21 2019 -0800","stats":{"files_changed":3,"insertions":26,"deletions":0,"files":["tests/fixtures/osx-10.11.6/uptime.json","tests/fixtures/osx-10.14.6/uptime.json","tests/test_uptime.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/uptime.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/uptime.json","lines_changed":1},{"name":"tests/test_uptime.py","lines_changed":24}]},"message":"add osx tests","epoch":1576276581,"epoch_utc":null},{"commit":"90a6baf0ee3b8b27476badada4e590e22144f810","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 13 14:30:12 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 13 14:30:12 2019 -0800","stats":{"files_changed":6,"insertions":52,"deletions":0,"files":["tests/fixtures/osx-10.11.6/ps-axu.json","tests/fixtures/osx-10.11.6/ps-ef.json","tests/fixtures/osx-10.11.6/w.json","tests/fixtures/osx-10.14.6/w.json","tests/test_ps.py","tests/test_w.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/ps-axu.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ps-ef.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/w.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/w.json","lines_changed":1},{"name":"tests/test_ps.py","lines_changed":24},{"name":"tests/test_w.py","lines_changed":24}]},"message":"add osx tests","epoch":1576276212,"epoch_utc":null},{"commit":"f0e73d0e72d540292f41fff51652932c4e8b0315","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 13 10:50:01 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 13 10:50:01 2019 -0800","stats":{"files_changed":8,"insertions":444,"deletions":0,"files":["tests/fixtures/osx-10.11.6/ps-axu.out","tests/fixtures/osx-10.11.6/ps-ef.out","tests/fixtures/osx-10.11.6/uname-a.out","tests/fixtures/osx-10.11.6/uptime.out","tests/fixtures/osx-10.11.6/w.out","tests/fixtures/osx-10.14.6/uname-a.out","tests/fixtures/osx-10.14.6/uptime.out","tests/fixtures/osx-10.14.6/w.out"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/ps-axu.out","lines_changed":211},{"name":"tests/fixtures/osx-10.11.6/ps-ef.out","lines_changed":211},{"name":"tests/fixtures/osx-10.11.6/uname-a.out","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/uptime.out","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/w.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/uname-a.out","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/uptime.out","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/w.out","lines_changed":10}]},"message":"add osx tests","epoch":1576263001,"epoch_utc":null},{"commit":"a762882f1ccea6789ce7813b313f3242175b5bd6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 13 08:58:23 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 13 08:58:23 2019 -0800","stats":{"files_changed":4,"insertions":2,"deletions":88,"files":["tests/fixtures/osx-10.14.6/ps-axu.json","tests/fixtures/osx-10.14.6/ps-axu.out","tests/fixtures/osx-10.14.6/ps-ef.json","tests/fixtures/osx-10.14.6/ps-ef.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ps-axu.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ps-axu.out","lines_changed":43},{"name":"tests/fixtures/osx-10.14.6/ps-ef.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ps-ef.out","lines_changed":43}]},"message":"fixture updates","epoch":1576256303,"epoch_utc":null},{"commit":"4c1bc5923658bf463805ea33ec8d170a817909ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 17:05:40 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 17:05:40 2019 -0800","stats":{"files_changed":3,"insertions":4,"deletions":3,"files":["docs/parsers/mount.md","docs/parsers/ps.md","docs/parsers/stat.md"],"file_stats":[{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":3},{"name":"docs/parsers/stat.md","lines_changed":2}]},"message":"doc updates","epoch":1576199140,"epoch_utc":null},{"commit":"f2962083f80503f82c3eddf470674c776e616b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 17:04:40 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 17:04:40 2019 -0800","stats":{"files_changed":7,"insertions":93,"deletions":17,"files":["changelog.txt","jc/parsers/mount.py","tests/fixtures/osx-10.14.6/mount.json","tests/fixtures/osx-10.14.6/mount.out","tests/fixtures/osx-10.14.6/mount2.json","tests/fixtures/osx-10.14.6/mount2.out","tests/test_mount.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/parsers/mount.py","lines_changed":68},{"name":"tests/fixtures/osx-10.14.6/mount.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/mount.out","lines_changed":6},{"name":"tests/fixtures/osx-10.14.6/mount2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/mount2.out","lines_changed":7},{"name":"tests/test_mount.py","lines_changed":24}]},"message":"add osx support for mount parser","epoch":1576199080,"epoch_utc":null},{"commit":"a0b22a5bcfa0777895243088b2c0f3bb5b758775","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 16:14:46 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 16:14:46 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"help text formatting","epoch":1576196086,"epoch_utc":null},{"commit":"dcf393354cd57683aaeecbed7b884d19b0fe94d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 16:10:30 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 16:10:30 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":2}]},"message":"doc fix","epoch":1576195830,"epoch_utc":null},{"commit":"5f771656e3fdd703d449b2817faa4faeff1cd879","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 16:07:52 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 16:07:52 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":10}]},"message":"use universal parser","epoch":1576195672,"epoch_utc":null},{"commit":"f376aab79328a211a127f4f818e7007232f1fae3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:59:36 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 15:59:36 2019 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":3}]},"message":"doc update","epoch":1576195176,"epoch_utc":null},{"commit":"3c96464217a740571e16c74ad41c1d92f7585547","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:59:24 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 15:59:24 2019 -0800","stats":{"files_changed":6,"insertions":886,"deletions":13,"files":["jc/parsers/ps.py","tests/fixtures/osx-10.14.6/ps-axu.json","tests/fixtures/osx-10.14.6/ps-axu.out","tests/fixtures/osx-10.14.6/ps-ef.json","tests/fixtures/osx-10.14.6/ps-ef.out","tests/test_ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":31},{"name":"tests/fixtures/osx-10.14.6/ps-axu.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ps-axu.out","lines_changed":421},{"name":"tests/fixtures/osx-10.14.6/ps-ef.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ps-ef.out","lines_changed":421},{"name":"tests/test_ps.py","lines_changed":24}]},"message":"osx fixes and tests","epoch":1576195164,"epoch_utc":null},{"commit":"c9892833a16bb63f78537717be65670eb65a87b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:58:40 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 15:58:40 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/mount.py"],"file_stats":[{"name":"jc/parsers/mount.py","lines_changed":2}]},"message":"formatting change","epoch":1576195120,"epoch_utc":null},{"commit":"127c98affc7b122f0ced13852850214b9e07677e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:58:24 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 15:58:24 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update","epoch":1576195104,"epoch_utc":null},{"commit":"8687a772f53ecaf1a20464429060b94bbf660fe7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:33:34 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 15:33:34 2019 -0800","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":8}]},"message":"use universal parser","epoch":1576193614,"epoch_utc":null},{"commit":"b1162b14d42643fd53dbbe3f89ba042f030d9254","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:22:21 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 15:22:21 2019 -0800","stats":{"files_changed":1,"insertions":3,"deletions":6,"files":["jc/parsers/lsmod.py"],"file_stats":[{"name":"jc/parsers/lsmod.py","lines_changed":9}]},"message":"use universal parser","epoch":1576192941,"epoch_utc":null},{"commit":"8a8ee3570733c0c06b8cf53eb005e53ac2f9170f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:01:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 15:01:42 2019 -0800","stats":{"files_changed":1,"insertions":8,"deletions":60,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":68}]},"message":"use universal parser","epoch":1576191702,"epoch_utc":null},{"commit":"5e109a3665cf0c286ac9dcbe2a452348a14b90ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 14:12:36 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 14:12:36 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/fixtures/create_fixtures.sh"],"file_stats":[{"name":"tests/fixtures/create_fixtures.sh","lines_changed":2}]},"message":"add du","epoch":1576188756,"epoch_utc":null},{"commit":"11db478430515ef3e1020482792f23d1c40ca32b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 14:12:21 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 14:12:21 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"update changelog","epoch":1576188741,"epoch_utc":null},{"commit":"a85377014d9f93fcb9840715129b0e09d48d8584","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 14:11:59 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 14:11:59 2019 -0800","stats":{"files_changed":1,"insertions":5,"deletions":11,"files":["jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/free.py","lines_changed":16}]},"message":"use universal parser","epoch":1576188719,"epoch_utc":null},{"commit":"3aea86234d33160f5b3139cbfc2f4f032f655f3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 11:23:49 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 11:23:49 2019 -0800","stats":{"files_changed":6,"insertions":70,"deletions":61,"files":["tests/fixtures/osx-10.11.6/ls-al.json","tests/fixtures/osx-10.11.6/ls-al.out","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.11.6/ls-alh.out","tests/fixtures/osx-10.11.6/ls.json","tests/fixtures/osx-10.11.6/ls.out"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/ls-al.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ls-al.out","lines_changed":61},{"name":"tests/fixtures/osx-10.11.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ls-alh.out","lines_changed":61},{"name":"tests/fixtures/osx-10.11.6/ls.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ls.out","lines_changed":3}]},"message":"fix osx-10.11.6 tests","epoch":1576178629,"epoch_utc":null},{"commit":"916ec6ed6b858a8a496e4026b9bab5505abca2ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 10:11:24 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 10:11:24 2019 -0800","stats":{"files_changed":13,"insertions":193,"deletions":61,"files":["tests/fixtures/osx-10.11.6/ls-al.json","tests/fixtures/osx-10.11.6/ls-al.out","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.11.6/ls-alh.out","tests/fixtures/osx-10.11.6/ls.json","tests/fixtures/osx-10.11.6/ls.out","tests/fixtures/osx-10.14.6/ls-al.json","tests/fixtures/osx-10.14.6/ls-al.out","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.out","tests/fixtures/osx-10.14.6/ls.json","tests/fixtures/osx-10.14.6/ls.out","tests/test_ls.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/ls-al.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ls-al.out","lines_changed":29},{"name":"tests/fixtures/osx-10.11.6/ls-alh.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ls-alh.out","lines_changed":29},{"name":"tests/fixtures/osx-10.11.6/ls.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ls.out","lines_changed":18},{"name":"tests/fixtures/osx-10.14.6/ls-al.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-al.out","lines_changed":64},{"name":"tests/fixtures/osx-10.14.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-alh.out","lines_changed":64},{"name":"tests/fixtures/osx-10.14.6/ls.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls.out","lines_changed":5},{"name":"tests/test_ls.py","lines_changed":36}]},"message":"fix osx ls tests","epoch":1576174284,"epoch_utc":null},{"commit":"9dca6ba5393d8840ad7fc9509273715a71955bd1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:47:14 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 09:47:14 2019 -0800","stats":{"files_changed":55,"insertions":120,"deletions":6,"files":["docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":8},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":3},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":3},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":8},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":3},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":3},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2}]},"message":"doc formatting change","epoch":1576172834,"epoch_utc":null},{"commit":"0ebb89f561e1ced2e7f61ae19290e176c8a98bf2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:41:56 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 09:41:56 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["docs/parsers/arp.md"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2}]},"message":"doc update","epoch":1576172516,"epoch_utc":null},{"commit":"e237867e242211ba37206911ebf1b35c97b417fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:41:25 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 09:41:25 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":2}]},"message":"doc formatting","epoch":1576172485,"epoch_utc":null},{"commit":"78fa44fd9ac9790313de6f461eb46d9b8d6159d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:35:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 09:35:42 2019 -0800","stats":{"files_changed":24,"insertions":75,"deletions":3,"files":["docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/netstat.md","lines_changed":3},{"name":"docs/parsers/ps.md","lines_changed":3},{"name":"docs/parsers/route.md","lines_changed":3},{"name":"docs/parsers/ss.md","lines_changed":3},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":3},{"name":"docs/parsers/systemctl_lj.md","lines_changed":3},{"name":"docs/parsers/systemctl_ls.md","lines_changed":3},{"name":"docs/parsers/systemctl_luf.md","lines_changed":3},{"name":"docs/parsers/uname.md","lines_changed":3},{"name":"docs/parsers/uptime.md","lines_changed":3},{"name":"docs/parsers/w.md","lines_changed":3},{"name":"jc/parsers/netstat.py","lines_changed":3},{"name":"jc/parsers/ps.py","lines_changed":3},{"name":"jc/parsers/route.py","lines_changed":5},{"name":"jc/parsers/ss.py","lines_changed":3},{"name":"jc/parsers/stat.py","lines_changed":5},{"name":"jc/parsers/systemctl.py","lines_changed":3},{"name":"jc/parsers/systemctl_lj.py","lines_changed":3},{"name":"jc/parsers/systemctl_ls.py","lines_changed":3},{"name":"jc/parsers/systemctl_luf.py","lines_changed":3},{"name":"jc/parsers/uname.py","lines_changed":3},{"name":"jc/parsers/uptime.py","lines_changed":3},{"name":"jc/parsers/w.py","lines_changed":3}]},"message":"add compatibility to docs","epoch":1576172142,"epoch_utc":null},{"commit":"d615fa3b933ccd284bd8ee92baf5dfa6264507c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:21:20 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 09:21:20 2019 -0800","stats":{"files_changed":30,"insertions":91,"deletions":1,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":3},{"name":"docs/parsers/df.md","lines_changed":3},{"name":"docs/parsers/dig.md","lines_changed":3},{"name":"docs/parsers/env.md","lines_changed":3},{"name":"docs/parsers/free.md","lines_changed":3},{"name":"docs/parsers/fstab.md","lines_changed":3},{"name":"docs/parsers/history.md","lines_changed":3},{"name":"docs/parsers/hosts.md","lines_changed":3},{"name":"docs/parsers/ifconfig.md","lines_changed":3},{"name":"docs/parsers/iptables.md","lines_changed":3},{"name":"docs/parsers/jobs.md","lines_changed":3},{"name":"docs/parsers/ls.md","lines_changed":3},{"name":"docs/parsers/lsblk.md","lines_changed":3},{"name":"docs/parsers/lsmod.md","lines_changed":3},{"name":"docs/parsers/lsof.md","lines_changed":3},{"name":"docs/parsers/mount.md","lines_changed":3},{"name":"jc/parsers/env.py","lines_changed":3},{"name":"jc/parsers/foo.py","lines_changed":3},{"name":"jc/parsers/free.py","lines_changed":3},{"name":"jc/parsers/fstab.py","lines_changed":3},{"name":"jc/parsers/history.py","lines_changed":3},{"name":"jc/parsers/hosts.py","lines_changed":3},{"name":"jc/parsers/ifconfig.py","lines_changed":3},{"name":"jc/parsers/iptables.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":3},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"jc/parsers/lsblk.py","lines_changed":3},{"name":"jc/parsers/lsmod.py","lines_changed":3},{"name":"jc/parsers/lsof.py","lines_changed":3},{"name":"jc/parsers/mount.py","lines_changed":3}]},"message":"add compatibility to docs","epoch":1576171280,"epoch_utc":null},{"commit":"ce134dc332dd9175e0d1823a4959bed427a3ddce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:09:57 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 09:09:57 2019 -0800","stats":{"files_changed":7,"insertions":115,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-al.json","tests/fixtures/osx-10.14.6/ls-al.out","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.out","tests/fixtures/osx-10.14.6/ls.json","tests/fixtures/osx-10.14.6/ls.out","tests/test_ls.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ls-al.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-al.out","lines_changed":29},{"name":"tests/fixtures/osx-10.14.6/ls-alh.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-alh.out","lines_changed":29},{"name":"tests/fixtures/osx-10.14.6/ls.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls.out","lines_changed":18},{"name":"tests/test_ls.py","lines_changed":36}]},"message":"Add OSX tests for ls","epoch":1576170597,"epoch_utc":null},{"commit":"a56e4dc752a01635fbd9fc31e21d390bbd629084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 17:27:48 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 11 17:27:48 2019 -0800","stats":{"files_changed":3,"insertions":28,"deletions":3,"files":["changelog.txt","jc/parsers/arp.py","jc/parsers/universal.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/arp.py","lines_changed":6},{"name":"jc/parsers/universal.py","lines_changed":24}]},"message":"use universal simple table parser","epoch":1576114068,"epoch_utc":null},{"commit":"d221b4aa29e80dda2b591059f4d64c416bff0a17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 17:19:38 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 11 17:19:38 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update","epoch":1576113578,"epoch_utc":null},{"commit":"d2cba6ad2f1f1cd35aa174239584a0291abb8e37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 17:18:21 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 11 17:18:21 2019 -0800","stats":{"files_changed":3,"insertions":9,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/df.py","lines_changed":3},{"name":"jc/parsers/dig.py","lines_changed":3}]},"message":"add compatibility info","epoch":1576113501,"epoch_utc":null},{"commit":"84b3c30b525ddf1f74eb7fd833050a0ec69621dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 17:18:04 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 11 17:18:04 2019 -0800","stats":{"files_changed":21,"insertions":254,"deletions":2,"files":["tests/fixtures/osx-10.11.6/df-h.json","tests/fixtures/osx-10.11.6/df-h.out","tests/fixtures/osx-10.11.6/df.json","tests/fixtures/osx-10.11.6/df.out","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-aaaa.out","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig-x.out","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.11.6/dig.out","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/osx-10.14.6/df-h.out","tests/fixtures/osx-10.14.6/df.json","tests/fixtures/osx-10.14.6/df.out","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-aaaa.out","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig-x.out","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/osx-10.14.6/dig.out","tests/test_df.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/df-h.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/df-h.out","lines_changed":7},{"name":"tests/fixtures/osx-10.11.6/df.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/df.out","lines_changed":7},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.out","lines_changed":20},{"name":"tests/fixtures/osx-10.11.6/dig-x.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/dig-x.out","lines_changed":20},{"name":"tests/fixtures/osx-10.11.6/dig.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/dig.out","lines_changed":41},{"name":"tests/fixtures/osx-10.14.6/df-h.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/df-h.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/df.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/df.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.out","lines_changed":20},{"name":"tests/fixtures/osx-10.14.6/dig-x.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig-x.out","lines_changed":20},{"name":"tests/fixtures/osx-10.14.6/dig.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig.out","lines_changed":41},{"name":"tests/test_df.py","lines_changed":52}]},"message":"add osx tests","epoch":1576113484,"epoch_utc":null},{"commit":"68eeec19a812b735627763bb7d7e2a58b72f7504","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 16:39:30 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 11 16:39:30 2019 -0800","stats":{"files_changed":3,"insertions":30,"deletions":25,"files":["README.md","docs/parsers/df.md","jc/parsers/df.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docs/parsers/df.md","lines_changed":31},{"name":"jc/parsers/df.py","lines_changed":20}]},"message":"doc update","epoch":1576111170,"epoch_utc":null},{"commit":"c6d1528a2ed302ea82828b733a98db415be83708","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 16:37:13 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 11 16:37:13 2019 -0800","stats":{"files_changed":4,"insertions":19,"deletions":8,"files":["jc/parsers/df.py","jc/parsers/universal.py","tests/fixtures/centos-7.7/df.json","tests/fixtures/ubuntu-18.04/df.json"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":21},{"name":"jc/parsers/universal.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/df.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/df.json","lines_changed":2}]},"message":"use _ instead of -","epoch":1576111033,"epoch_utc":null},{"commit":"50a6b256b8a0936299f562c208ede6187feeb9a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 9 14:01:47 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 9 14:01:47 2019 -0800","stats":{"files_changed":1,"insertions":83,"deletions":0,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":83}]},"message":"new universal parsers to limit code duplication","epoch":1575928907,"epoch_utc":null},{"commit":"bbba1fe477014d0b7f370ce46ed821121be81a8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 9 14:01:29 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 9 14:01:29 2019 -0800","stats":{"files_changed":1,"insertions":38,"deletions":19,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":57}]},"message":"update df to use universal sparse table parser for osx compatibility","epoch":1575928889,"epoch_utc":null},{"commit":"46b827da6b438be73fab168c3f05298483b141e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 13:22:51 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 6 13:22:51 2019 -0800","stats":{"files_changed":7,"insertions":75,"deletions":4,"files":["changelog.txt","jc/parsers/arp.py","tests/fixtures/osx-10.11.6/arp-a.json","tests/fixtures/osx-10.11.6/arp-a.out","tests/fixtures/osx-10.14.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a.out","tests/test_arp.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/arp.py","lines_changed":27},{"name":"tests/fixtures/osx-10.11.6/arp-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/arp-a.out","lines_changed":13},{"name":"tests/fixtures/osx-10.14.6/arp-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/arp-a.out","lines_changed":12},{"name":"tests/test_arp.py","lines_changed":24}]},"message":"add osx compatibility","epoch":1575667371,"epoch_utc":null},{"commit":"5e8c28a30a283b6ef525e9e78d3ef2a0e1526927","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 11:47:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 6 11:47:42 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2}]},"message":"comment fix","epoch":1575661662,"epoch_utc":null},{"commit":"e5d39031645ac897e0c0297f514ee62efe02f5f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 11:46:09 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 6 11:46:09 2019 -0800","stats":{"files_changed":1,"insertions":38,"deletions":17,"files":["docs/parsers/ifconfig.md"],"file_stats":[{"name":"docs/parsers/ifconfig.md","lines_changed":55}]},"message":"update ifconfig doc","epoch":1575661569,"epoch_utc":null},{"commit":"23975c9c9e1dd9d3e9fd7c05d231a86d646be048","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 11:44:57 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 6 11:44:57 2019 -0800","stats":{"files_changed":10,"insertions":132,"deletions":45,"files":["README.md","changelog.txt","jc/parsers/ifconfig.py","tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig2.json","tests/fixtures/osx-10.14.6/ifconfig.json","tests/fixtures/osx-10.14.6/ifconfig2.json","tests/fixtures/ubuntu-18.04/ifconfig.json","tests/test_ifconfig.py"],"file_stats":[{"name":"README.md","lines_changed":35},{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":80},{"name":"tests/fixtures/centos-7.7/ifconfig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ifconfig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ifconfig2.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ifconfig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ifconfig2.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ifconfig.json","lines_changed":2},{"name":"tests/test_ifconfig.py","lines_changed":48}]},"message":"fixup osx subnet mask and convert state to an array","epoch":1575661497,"epoch_utc":null},{"commit":"1e0dab8355e6fcb0ecde85270d4daac6ad93875b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 10:53:49 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 6 10:53:49 2019 -0800","stats":{"files_changed":10,"insertions":272,"deletions":2,"files":["tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.out","tests/fixtures/osx-10.11.6/ifconfig2.json","tests/fixtures/osx-10.11.6/ifconfig2.out","tests/fixtures/osx-10.14.6/ifconfig.json","tests/fixtures/osx-10.14.6/ifconfig.out","tests/fixtures/osx-10.14.6/ifconfig2.json","tests/fixtures/osx-10.14.6/ifconfig2.out","tests/fixtures/ubuntu-18.04/ifconfig.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ifconfig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ifconfig.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ifconfig.out","lines_changed":40},{"name":"tests/fixtures/osx-10.11.6/ifconfig2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ifconfig2.out","lines_changed":40},{"name":"tests/fixtures/osx-10.14.6/ifconfig.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ifconfig.out","lines_changed":91},{"name":"tests/fixtures/osx-10.14.6/ifconfig2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ifconfig2.out","lines_changed":95},{"name":"tests/fixtures/ubuntu-18.04/ifconfig.json","lines_changed":2}]},"message":"ifconfig fixture updates","epoch":1575658429,"epoch_utc":null},{"commit":"5f4c10ffd5a9cbe4e5e3d2b9adc34f36492eaf46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 10:39:11 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 6 10:39:11 2019 -0800","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"changelog.txt","lines_changed":4}]},"message":"doc update","epoch":1575657551,"epoch_utc":null},{"commit":"6f3d2b4b566b963fbf38572c587e8bd4e18881dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 10:30:01 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 6 10:30:01 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"require ifconfig-parser v0.0.5 for mac and bytes support","epoch":1575657001,"epoch_utc":null},{"commit":"fea8ace8446b64abe9e61a028951bc4e6df9f9c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 10:27:11 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 6 10:27:11 2019 -0800","stats":{"files_changed":2,"insertions":20,"deletions":6,"files":["README.md","jc/parsers/ifconfig.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":22}]},"message":"add OSX compatibility","epoch":1575656831,"epoch_utc":null},{"commit":"6633d9262c936217d8e90e64505c66b006cdab56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Nov 30 13:52:24 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Nov 30 13:52:24 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["_config.yml"],"file_stats":[{"name":"_config.yml","lines_changed":1}]},"message":"Set theme jekyll-theme-cayman","epoch":1575150744,"epoch_utc":null},{"commit":"7d54137140e6d0515bc23c131a097af5c70c3379","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 28 11:51:54 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 28 11:51:54 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"link update","epoch":1574970714,"epoch_utc":null},{"commit":"2fcda6f2480ae6bd5428a0147c19f9af527391b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 25 18:34:21 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 25 18:34:21 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add motivation to readme","epoch":1574735661,"epoch_utc":null},{"commit":"9c1b8bacf9a59a86feb2a91eb44919e800491d1e","merge":"d192745 4867655","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 11:55:06 2019 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Nov 17 11:55:06 2019 -0800","message":"Merge pull request #16 from kellyjonbrazil/dev\n\nDev v1.5.1","epoch":1574020506,"epoch_utc":null},{"commit":"4867655eb297b1da7a55e0d3a24c7ed7c8af55c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 11:49:36 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Nov 17 11:49:36 2019 -0800","stats":{"files_changed":6,"insertions":172,"deletions":0,"files":[".../centos-7.7/iptables-filter-line-numbers.json",".../centos-7.7/iptables-filter-line-numbers.out","tests/fixtures/create_fixtures.sh",".../ubuntu-18.04/iptables-filter-line-numbers.json",".../ubuntu-18.04/iptables-filter-line-numbers.out","tests/test_iptables.py"],"file_stats":[{"name":".../centos-7.7/iptables-filter-line-numbers.json","lines_changed":1},{"name":".../centos-7.7/iptables-filter-line-numbers.out","lines_changed":128},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":1},{"name":".../ubuntu-18.04/iptables-filter-line-numbers.json","lines_changed":1},{"name":".../ubuntu-18.04/iptables-filter-line-numbers.out","lines_changed":17},{"name":"tests/test_iptables.py","lines_changed":24}]},"message":"add line-numbers tests","epoch":1574020176,"epoch_utc":null},{"commit":"47410d1a95406b0960aac705e7cfe925fea3172c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 11:05:46 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Nov 17 11:05:46 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1574017546,"epoch_utc":null},{"commit":"5fa49f5e672fc6f8dc18fb4b1761c98b81362649","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 11:00:16 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Nov 17 11:00:16 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update","epoch":1574017216,"epoch_utc":null},{"commit":"36c53827fab6ac38c0010250ec387db40fdeecfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 10:56:55 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Nov 17 10:56:55 2019 -0800","stats":{"files_changed":19,"insertions":1316,"deletions":308,"files":["tests/fixtures/centos-7.7/systemctl-ls.json","tests/fixtures/centos-7.7/systemctl-ls.out","tests/fixtures/centos-7.7/systemctl-luf.json","tests/fixtures/centos-7.7/systemctl-luf.out","tests/fixtures/centos-7.7/systemctl.json","tests/fixtures/centos-7.7/systemctl.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/systemctl-lj.json","tests/fixtures/ubuntu-18.04/systemctl-lj.out","tests/fixtures/ubuntu-18.04/systemctl-ls.json","tests/fixtures/ubuntu-18.04/systemctl-ls.out","tests/fixtures/ubuntu-18.04/systemctl-luf.json","tests/fixtures/ubuntu-18.04/systemctl-luf.out","tests/fixtures/ubuntu-18.04/systemctl.json","tests/fixtures/ubuntu-18.04/systemctl.out","tests/test_systemctl.py","tests/test_systemctl_lj.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/systemctl-ls.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/systemctl-ls.out","lines_changed":17},{"name":"tests/fixtures/centos-7.7/systemctl-luf.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/systemctl-luf.out","lines_changed":247},{"name":"tests/fixtures/centos-7.7/systemctl.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/systemctl.out","lines_changed":334},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":8},{"name":"tests/fixtures/ubuntu-18.04/systemctl-lj.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/systemctl-lj.out","lines_changed":6},{"name":"tests/fixtures/ubuntu-18.04/systemctl-ls.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/systemctl-ls.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-18.04/systemctl-luf.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/systemctl-luf.out","lines_changed":324},{"name":"tests/fixtures/ubuntu-18.04/systemctl.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/systemctl.out","lines_changed":528},{"name":"tests/test_systemctl.py","lines_changed":4},{"name":"tests/test_systemctl_lj.py","lines_changed":40},{"name":"tests/test_systemctl_ls.py","lines_changed":40},{"name":"tests/test_systemctl_luf.py","lines_changed":40}]},"message":"add systemctl tests","epoch":1574017015,"epoch_utc":null},{"commit":"51631aef5b1b6fdeff4ab543510a9f9e15a0c2c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 10:31:58 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Nov 17 10:31:58 2019 -0800","stats":{"files_changed":5,"insertions":358,"deletions":0,"files":["tests/fixtures/centos-7.7/systemctl.json","tests/fixtures/centos-7.7/systemctl.out","tests/fixtures/ubuntu-18.04/systemctl.json","tests/fixtures/ubuntu-18.04/systemctl.out","tests/test_systemctl.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/systemctl.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/systemctl.out","lines_changed":118},{"name":"tests/fixtures/ubuntu-18.04/systemctl.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/systemctl.out","lines_changed":198},{"name":"tests/test_systemctl.py","lines_changed":40}]},"message":"add systemctl tests","epoch":1574015518,"epoch_utc":null},{"commit":"a0298ac8a39093620b6859c909a78d11ab4a8e56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 10:26:48 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Nov 17 10:26:48 2019 -0800","stats":{"files_changed":5,"insertions":55,"deletions":0,"files":["tests/fixtures/centos-7.7/fstab.json","tests/fixtures/centos-7.7/fstab.out","tests/fixtures/ubuntu-18.04/fstab.json","tests/fixtures/ubuntu-18.04/fstab.out","tests/test_fstab.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/fstab.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/fstab.out","lines_changed":11},{"name":"tests/fixtures/ubuntu-18.04/fstab.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/fstab.out","lines_changed":2},{"name":"tests/test_fstab.py","lines_changed":40}]},"message":"add fstab tests","epoch":1574015208,"epoch_utc":null},{"commit":"98c0188821ebaa71c5661f2e095cf464bec695f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:27:51 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 19:27:51 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/systemctl_ls.md","jc/parsers/systemctl_ls.py"],"file_stats":[{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2}]},"message":"formatting fix","epoch":1573874871,"epoch_utc":null},{"commit":"ab1dabe3e42997825707006b63cc0c03d28470d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:26:22 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 19:26:22 2019 -0800","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py"],"file_stats":[{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2}]},"message":"doc update","epoch":1573874782,"epoch_utc":null},{"commit":"94bdb11fdf0e16d89769046d317643334ef1acdd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:24:32 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 19:24:32 2019 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"remove systemctl from TODO","epoch":1573874672,"epoch_utc":null},{"commit":"b6727d68bab66164a3834b240ae868062aad9371","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:18:31 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 19:18:31 2019 -0800","stats":{"files_changed":1,"insertions":68,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":68}]},"message":"add systemctl parsers","epoch":1573874311,"epoch_utc":null},{"commit":"89bad7fc2b4023b10b6eeb7ff1f8f18b71731cb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:13:53 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 19:13:53 2019 -0800","stats":{"files_changed":5,"insertions":1,"deletions":191,"files":["changelog.txt","docgen.sh","docs/parsers/systemctl_lm.md","jc/cli.py","jc/parsers/systemctl_lm.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/systemctl_lm.md","lines_changed":76},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/systemctl_lm.py","lines_changed":110}]},"message":"remove systemctl list-machines parser","epoch":1573874033,"epoch_utc":null},{"commit":"c0b8b810a2616e77973c1223f9c39329112337ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:07:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 19:07:42 2019 -0800","stats":{"files_changed":5,"insertions":306,"deletions":0,"files":["docgen.sh","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_lm.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md"],"file_stats":[{"name":"docgen.sh","lines_changed":4},{"name":"docs/parsers/systemctl_lj.md","lines_changed":94},{"name":"docs/parsers/systemctl_lm.md","lines_changed":76},{"name":"docs/parsers/systemctl_ls.md","lines_changed":68},{"name":"docs/parsers/systemctl_luf.md","lines_changed":64}]},"message":"add systemctl list parsers","epoch":1573873662,"epoch_utc":null},{"commit":"31eb65acd18b6d9163de900dbe48807a41a23785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:05:49 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 19:05:49 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_lm.py"],"file_stats":[{"name":"jc/parsers/systemctl_lm.py","lines_changed":4}]},"message":"doc fix","epoch":1573873549,"epoch_utc":null},{"commit":"513bbeb4649c011476930e1d1bf739ff06c2d66f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:02:57 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 19:02:57 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/systemctl_lj.py"],"file_stats":[{"name":"jc/parsers/systemctl_lj.py","lines_changed":2}]},"message":"add break on footer condition","epoch":1573873377,"epoch_utc":null},{"commit":"3a52fb725a0e56b52a0ea430266400b268360737","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 18:58:17 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 18:58:17 2019 -0800","stats":{"files_changed":2,"insertions":55,"deletions":29,"files":["jc/cli.py","jc/parsers/systemctl_lj.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4},{"name":"jc/parsers/systemctl_lj.py","lines_changed":80}]},"message":"add systemctl list-jobs parser","epoch":1573873097,"epoch_utc":null},{"commit":"5affd444999de88b9bff7b49d790913540f97cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 18:36:12 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 18:36:12 2019 -0800","stats":{"files_changed":6,"insertions":342,"deletions":24,"files":["jc/cli.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_lm.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":11},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":110},{"name":"jc/parsers/systemctl_lm.py","lines_changed":110},{"name":"jc/parsers/systemctl_ls.py","lines_changed":101},{"name":"jc/parsers/systemctl_luf.py","lines_changed":32}]},"message":"add systemctl_lj, lm, ls, and luf","epoch":1573871772,"epoch_utc":null},{"commit":"5dbc6e806c5d05bfa1f7e2156ed2573341eb23c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 12:28:28 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 12:28:28 2019 -0800","stats":{"files_changed":2,"insertions":142,"deletions":29,"files":["jc/cli.py","jc/parsers/systemctl_luf.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":61},{"name":"jc/parsers/systemctl_luf.py","lines_changed":110}]},"message":"add systemctl_luf parser","epoch":1573849708,"epoch_utc":null},{"commit":"59ae31f3f342c9337037aac4630310c9b9eb8287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 11:58:17 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 11:58:17 2019 -0800","stats":{"files_changed":6,"insertions":219,"deletions":0,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/systemctl.md","jc/cli.py","jc/parsers/systemctl.py"],"file_stats":[{"name":"README.md","lines_changed":29},{"name":"changelog.txt","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/systemctl.md","lines_changed":76},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/systemctl.py","lines_changed":109}]},"message":"add systemctl parser","epoch":1573847897,"epoch_utc":null},{"commit":"230e921c2e8d931ea8a6abdf81215dbfc968b41c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 10:36:58 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 10:36:58 2019 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"remove fstab from TODO","epoch":1573843018,"epoch_utc":null},{"commit":"a7c3d88b08ab90b719035cb15d78afe708235742","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 10:01:29 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 10:01:29 2019 -0800","stats":{"files_changed":3,"insertions":136,"deletions":0,"files":["docgen.sh","docs/parsers/fstab.md","jc/parsers/fstab.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/fstab.md","lines_changed":107},{"name":"jc/parsers/fstab.py","lines_changed":28}]},"message":"update example and docs","epoch":1573840889,"epoch_utc":null},{"commit":"9b453bcb84dd9f2f566955eda1ab35c863b3e8a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 09:57:25 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 09:57:25 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":13,"files":["jc/parsers/fstab.py"],"file_stats":[{"name":"jc/parsers/fstab.py","lines_changed":14}]},"message":"remove commented code block","epoch":1573840645,"epoch_utc":null},{"commit":"ce43c782f601fc12267fa22279e8e0142ecc3a7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 09:32:12 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 09:32:12 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"fstab update","epoch":1573839132,"epoch_utc":null},{"commit":"cb16faaf4d1700379d53053fe06824fd03404f87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 09:31:28 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 09:31:28 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"helptext update","epoch":1573839088,"epoch_utc":null},{"commit":"3f1d3ff6d85422536e0adfb6433fd3ec0399ebe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 09:29:54 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 09:29:54 2019 -0800","stats":{"files_changed":2,"insertions":73,"deletions":6,"files":["README.md","jc/parsers/fstab.py"],"file_stats":[{"name":"README.md","lines_changed":31},{"name":"jc/parsers/fstab.py","lines_changed":48}]},"message":"add examples","epoch":1573838994,"epoch_utc":null},{"commit":"6f67eecd5ed46f8a692ff5dd607a2395a5c838ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 09:22:07 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 09:22:07 2019 -0800","stats":{"files_changed":2,"insertions":108,"deletions":0,"files":["jc/cli.py","jc/parsers/fstab.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/fstab.py","lines_changed":105}]},"message":"add fstab parser","epoch":1573838527,"epoch_utc":null},{"commit":"e75c819190634f0a9048942b39eda691831829ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 08:51:53 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 08:51:53 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"changelog update","epoch":1573836713,"epoch_utc":null},{"commit":"601e68d104dd43940acadaa574dfd9b5117b0476","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 08:40:13 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 08:40:13 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/hosts.md","jc/parsers/hosts.py"],"file_stats":[{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2}]},"message":"doc update","epoch":1573836013,"epoch_utc":null},{"commit":"8285ecfd1e7810102cdbc399398a16f999c841ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 08:40:01 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 08:40:01 2019 -0800","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["tests/fixtures/centos-7.7/hosts.out","tests/fixtures/ubuntu-18.04/hosts.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/hosts.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/hosts.out","lines_changed":3}]},"message":"enhance test file with comments","epoch":1573836001,"epoch_utc":null},{"commit":"8726de902e527b95a12afd79a53d533cc176703d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 22:04:59 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 22:04:59 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"add hosts parser","epoch":1573797899,"epoch_utc":null},{"commit":"4133585274b0e7faa0255a911468248eb390d673","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 22:04:48 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 22:04:48 2019 -0800","stats":{"files_changed":5,"insertions":53,"deletions":0,"files":["tests/fixtures/centos-7.7/hosts.json","tests/fixtures/centos-7.7/hosts.out","tests/fixtures/ubuntu-18.04/hosts.json","tests/fixtures/ubuntu-18.04/hosts.out","tests/test_hosts.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/hosts.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/hosts.out","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/hosts.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/hosts.out","lines_changed":9},{"name":"tests/test_hosts.py","lines_changed":40}]},"message":"add hosts tests","epoch":1573797888,"epoch_utc":null},{"commit":"ad913b141721655a72a7b2a6ad60037e5acd5f9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:59:06 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 21:59:06 2019 -0800","stats":{"files_changed":4,"insertions":148,"deletions":2,"files":["README.md","docgen.sh","docs/parsers/hosts.md","jc/parsers/hosts.py"],"file_stats":[{"name":"README.md","lines_changed":51},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/hosts.md","lines_changed":96},{"name":"jc/parsers/hosts.py","lines_changed":2}]},"message":"add hosts docs","epoch":1573797546,"epoch_utc":null},{"commit":"7113e5a844fc0304f62f4afe65b5cbc816f75372","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:55:08 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 21:55:08 2019 -0800","stats":{"files_changed":1,"insertions":10,"deletions":0,"files":["jc/parsers/hosts.py"],"file_stats":[{"name":"jc/parsers/hosts.py","lines_changed":10}]},"message":"filter out comments at the end of the line","epoch":1573797308,"epoch_utc":null},{"commit":"a3a8369dc0e7227072f595cef1e57d471eff4d2f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:36:02 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 21:36:02 2019 -0800","stats":{"files_changed":1,"insertions":51,"deletions":9,"files":["jc/parsers/hosts.py"],"file_stats":[{"name":"jc/parsers/hosts.py","lines_changed":60}]},"message":"add docs","epoch":1573796162,"epoch_utc":null},{"commit":"64016b8ef049d5d4f02b4371f5cc9632c19bcaa2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:31:25 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 21:31:25 2019 -0800","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["jc/cli.py","jc/parsers/hosts.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/hosts.py","lines_changed":89}]},"message":"add hosts parser","epoch":1573795885,"epoch_utc":null},{"commit":"1cb49d60c84054b0446f299f6b4bab7d102101c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:21:15 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 21:21:15 2019 -0800","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"remove sar and sadf","epoch":1573795275,"epoch_utc":null},{"commit":"c858adfd12144569d0b990a217c5bcd75bd23828","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:11:05 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 21:11:05 2019 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"remove stat from todo","epoch":1573794665,"epoch_utc":null},{"commit":"08d68327c777dd740d93a1b5fff8cf62f58904c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:08:09 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 21:08:09 2019 -0800","stats":{"files_changed":5,"insertions":8080,"deletions":0,"files":["tests/fixtures/centos-7.7/stat.json","tests/fixtures/centos-7.7/stat.out","tests/fixtures/ubuntu-18.04/stat.json","tests/fixtures/ubuntu-18.04/stat.out","tests/test_stat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/stat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/stat.out","lines_changed":6678},{"name":"tests/fixtures/ubuntu-18.04/stat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/stat.out","lines_changed":1360},{"name":"tests/test_stat.py","lines_changed":40}]},"message":"add stat tests","epoch":1573794489,"epoch_utc":null},{"commit":"0d7c6c5664911af7a41149d51dd6ae05b39d7648","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 20:57:49 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 20:57:49 2019 -0800","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/parsers/stat.md","jc/parsers/stat.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":8}]},"message":"doc fix and add continue lines","epoch":1573793869,"epoch_utc":null},{"commit":"8bfa41dbf485cb06c928bc00a68727d2ceac21fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 17:36:29 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 17:36:29 2019 -0800","stats":{"files_changed":3,"insertions":22,"deletions":14,"files":["README.md","docs/parsers/stat.md","jc/parsers/stat.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docs/parsers/stat.md","lines_changed":12},{"name":"jc/parsers/stat.py","lines_changed":20}]},"message":"change values to null if -","epoch":1573781789,"epoch_utc":null},{"commit":"7e2fa48ed4f3fd452082ce06e7306efd38b2d508","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 17:24:51 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 17:24:51 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"update changelog","epoch":1573781091,"epoch_utc":null},{"commit":"340635cad5224f2c715bf961956f4b9b6119d80b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 17:23:44 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 17:23:44 2019 -0800","stats":{"files_changed":3,"insertions":408,"deletions":111,"files":["docgen.sh","docs/parsers/ss.md","docs/parsers/stat.md"],"file_stats":[{"name":"docgen.sh","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":363},{"name":"docs/parsers/stat.md","lines_changed":154}]},"message":"fix stats doc","epoch":1573781024,"epoch_utc":null},{"commit":"8f77d1de098f035767d73a6965a695b95b75e161","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 17:21:56 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 17:21:56 2019 -0800","stats":{"files_changed":2,"insertions":111,"deletions":253,"files":["docgen.sh","docs/parsers/ss.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ss.md","lines_changed":363}]},"message":"add stat docs","epoch":1573780916,"epoch_utc":null},{"commit":"7dcf1b25ffb801375f0bf4263f34713ded904de9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 17:20:13 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 17:20:13 2019 -0800","stats":{"files_changed":1,"insertions":13,"deletions":0,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":13}]},"message":"add link_to field","epoch":1573780813,"epoch_utc":null},{"commit":"9b735381063a1167a6a74864a43b81aefd98009f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 16:44:12 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 16:44:12 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":2}]},"message":"set compatibility to linux only","epoch":1573778652,"epoch_utc":null},{"commit":"3bf8c8c6dbdf7e03e26b4581e35c3274084c07ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 16:40:52 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 16:40:52 2019 -0800","stats":{"files_changed":7,"insertions":27,"deletions":27,"files":["jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/mount.py","lines_changed":6},{"name":"jc/parsers/netstat.py","lines_changed":8},{"name":"jc/parsers/ps.py","lines_changed":8},{"name":"jc/parsers/route.py","lines_changed":8},{"name":"jc/parsers/uname.py","lines_changed":8},{"name":"jc/parsers/uptime.py","lines_changed":8},{"name":"jc/parsers/w.py","lines_changed":8}]},"message":"pep8 fixes","epoch":1573778452,"epoch_utc":null},{"commit":"04a1ff2ca7873d55cdbc831e521f3d4892074d98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 16:36:00 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 16:36:00 2019 -0800","stats":{"files_changed":8,"insertions":28,"deletions":28,"files":["jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":8},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":6},{"name":"jc/parsers/jobs.py","lines_changed":6},{"name":"jc/parsers/ls.py","lines_changed":8},{"name":"jc/parsers/lsblk.py","lines_changed":10},{"name":"jc/parsers/lsmod.py","lines_changed":8},{"name":"jc/parsers/lsof.py","lines_changed":8}]},"message":"pep8 fixes","epoch":1573778160,"epoch_utc":null},{"commit":"64647d230ac936cb43864481ae0f45d13707d7b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 16:32:11 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 16:32:11 2019 -0800","stats":{"files_changed":6,"insertions":21,"deletions":21,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":8},{"name":"jc/parsers/dig.py","lines_changed":8},{"name":"jc/parsers/env.py","lines_changed":8},{"name":"jc/parsers/foo.py","lines_changed":8},{"name":"jc/parsers/free.py","lines_changed":6}]},"message":"pep8 cleanup","epoch":1573777931,"epoch_utc":null},{"commit":"c2a67e1b70f33044aecabd8b46018117cb38cb9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 16:31:52 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 16:31:52 2019 -0800","stats":{"files_changed":2,"insertions":213,"deletions":16,"files":["README.md","jc/parsers/stat.py"],"file_stats":[{"name":"README.md","lines_changed":48},{"name":"jc/parsers/stat.py","lines_changed":181}]},"message":"add stat parser","epoch":1573777912,"epoch_utc":null},{"commit":"edb9a7c76e1fedaf37b6a226ad4e1cfc08a9a5ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 15:26:36 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 15:26:36 2019 -0800","stats":{"files_changed":2,"insertions":94,"deletions":0,"files":["jc/cli.py","jc/parsers/stat.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/stat.py","lines_changed":91}]},"message":"add stat parser","epoch":1573773996,"epoch_utc":null},{"commit":"a407f5b67833cc5f8dda9fe8265cd34e62f28d14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 14:01:04 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 14:01:04 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"minor update","epoch":1573768864,"epoch_utc":null},{"commit":"e5b4987acb70e854d9996350235c5535b4a46b69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 14:00:06 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 14:00:06 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"doc update","epoch":1573768806,"epoch_utc":null},{"commit":"ba8cc18eebe779742cff0ba4c8bebe376e787c8c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 13:56:09 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 13:56:09 2019 -0800","stats":{"files_changed":5,"insertions":405,"deletions":0,"files":["tests/fixtures/centos-7.7/ss-sudo-a.json","tests/fixtures/centos-7.7/ss-sudo-a.out","tests/fixtures/ubuntu-18.04/ss-sudo-a.json","tests/fixtures/ubuntu-18.04/ss-sudo-a.out","tests/test_ss.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ss-sudo-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ss-sudo-a.out","lines_changed":204},{"name":"tests/fixtures/ubuntu-18.04/ss-sudo-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ss-sudo-a.out","lines_changed":159},{"name":"tests/test_ss.py","lines_changed":40}]},"message":"add ss tests","epoch":1573768569,"epoch_utc":null},{"commit":"d2c7316e00b9aaf19231c05351821041458baf98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 13:43:07 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 13:43:07 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"update command options info","epoch":1573767787,"epoch_utc":null},{"commit":"609aa14d243206e81ed31f8438c3f42e8263e140","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 13:38:52 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 13:38:52 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/ss.md","jc/parsers/ss.py"],"file_stats":[{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2}]},"message":"spelling fix","epoch":1573767532,"epoch_utc":null},{"commit":"ef1ad4c700fcb740b5fbe1e12205b9a30ae427ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 13:37:55 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 13:37:55 2019 -0800","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["docs/parsers/ss.md","jc/parsers/ss.py"],"file_stats":[{"name":"docs/parsers/ss.md","lines_changed":3},{"name":"jc/parsers/ss.py","lines_changed":3}]},"message":"doc update","epoch":1573767475,"epoch_utc":null},{"commit":"a0e2732152dc3005914b9a3e4f03e937a113c67f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 09:46:10 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 09:46:10 2019 -0800","stats":{"files_changed":1,"insertions":64,"deletions":12,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":76}]},"message":"add ss example","epoch":1573753570,"epoch_utc":null},{"commit":"9b5d3e3be1ac07813e716f8426fe89cced478221","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 09:42:44 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 09:42:44 2019 -0800","stats":{"files_changed":1,"insertions":135,"deletions":25,"files":["docs/parsers/ss.md"],"file_stats":[{"name":"docs/parsers/ss.md","lines_changed":160}]},"message":"update doc","epoch":1573753364,"epoch_utc":null},{"commit":"2663ef31fbc1b69b89b8032640a25065cc953866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 09:38:19 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 09:38:19 2019 -0800","stats":{"files_changed":1,"insertions":159,"deletions":30,"files":["jc/parsers/ss.py"],"file_stats":[{"name":"jc/parsers/ss.py","lines_changed":189}]},"message":"fix field names per ss documentation","epoch":1573753099,"epoch_utc":null},{"commit":"a4cdd3378e6a031f16dd371ed5cd60ff018feb32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 13 08:17:41 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 13 08:17:41 2019 -0800","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":6}]},"message":"add compatibility info","epoch":1573661861,"epoch_utc":null},{"commit":"2f805da24d0e833e3d2a1f3a5ec34031fa911c05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 13 08:04:40 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 13 08:04:40 2019 -0800","stats":{"files_changed":45,"insertions":51,"deletions":51,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/utils.md","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/utils.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":8},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":8}]},"message":"add colon to parameter in docs","epoch":1573661080,"epoch_utc":null},{"commit":"79152a946d93e4facf9711bfa0f421e1978e0f1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 13 07:46:14 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 13 07:46:14 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":3}]},"message":"initialize network_list and socket_list variables","epoch":1573659974,"epoch_utc":null},{"commit":"de37bb37d01b397df2b5992b4acd64817380401d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 13 07:45:37 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 13 07:45:37 2019 -0800","stats":{"files_changed":3,"insertions":187,"deletions":1,"files":["docgen.sh","docs/parsers/ss.md","jc/parsers/ss.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ss.md","lines_changed":184},{"name":"jc/parsers/ss.py","lines_changed":3}]},"message":"add ss docs","epoch":1573659937,"epoch_utc":null},{"commit":"f783e44e5c0cd05733da5d24573f06d05760f993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 18:58:58 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 18:58:58 2019 -0800","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"changelog.txt","lines_changed":1}]},"message":"doc fix","epoch":1573613938,"epoch_utc":null},{"commit":"af82f2c991ac0668485e75ae78a26b9553ec8b13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 18:56:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 18:56:42 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update raw format note","epoch":1573613802,"epoch_utc":null},{"commit":"46774daf9d3e0612df8f79d4b6b724e612ceb725","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 18:51:21 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 18:51:21 2019 -0800","stats":{"files_changed":2,"insertions":194,"deletions":4,"files":["README.md","jc/parsers/ss.py"],"file_stats":[{"name":"README.md","lines_changed":68},{"name":"jc/parsers/ss.py","lines_changed":130}]},"message":"doc update","epoch":1573613481,"epoch_utc":null},{"commit":"648306b7856fe2e296ce463ff4c9c2a8632c92d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 18:04:40 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 18:04:40 2019 -0800","stats":{"files_changed":1,"insertions":44,"deletions":22,"files":["jc/parsers/ss.py"],"file_stats":[{"name":"jc/parsers/ss.py","lines_changed":66}]},"message":"process ss data","epoch":1573610680,"epoch_utc":null},{"commit":"b7a4f205b80c0a6a41aaabf59703525ac526c295","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 17:10:06 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 17:10:06 2019 -0800","stats":{"files_changed":1,"insertions":17,"deletions":14,"files":["jc/parsers/ss.py"],"file_stats":[{"name":"jc/parsers/ss.py","lines_changed":31}]},"message":"parser fixes","epoch":1573607406,"epoch_utc":null},{"commit":"fdb168b43a69358a97bf43b71a0adbc7b1ef56f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 16:34:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 16:34:42 2019 -0800","stats":{"files_changed":2,"insertions":120,"deletions":0,"files":["jc/cli.py","jc/parsers/ss.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/ss.py","lines_changed":117}]},"message":"add ss parser","epoch":1573605282,"epoch_utc":null},{"commit":"b6f65c93c462856f26201df0cbfe804b29a65169","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 15:05:21 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 15:05:21 2019 -0800","stats":{"files_changed":3,"insertions":43,"deletions":69,"files":["README.md","docs/parsers/ps.md","jc/parsers/ps.py"],"file_stats":[{"name":"README.md","lines_changed":26},{"name":"docs/parsers/ps.md","lines_changed":43},{"name":"jc/parsers/ps.py","lines_changed":43}]},"message":"ps doc update","epoch":1573599921,"epoch_utc":null},{"commit":"3f4838f17a81969718d9e5b6bafa21e0b92e1d95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 14:22:49 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 14:22:49 2019 -0800","stats":{"files_changed":2,"insertions":0,"deletions":6,"files":["docgen.sh","docs/cli.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/cli.md","lines_changed":5}]},"message":"remove cli.md","epoch":1573597369,"epoch_utc":null},{"commit":"eef0dee2aa206716d9cf011bec58a06c46bbee15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 14:20:59 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 14:20:59 2019 -0800","stats":{"files_changed":2,"insertions":8,"deletions":0,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":4},{"name":"jc/utils.py","lines_changed":4}]},"message":"doc update","epoch":1573597259,"epoch_utc":null},{"commit":"e17388d3b2d1521d963bf9dd9e7a4ba5ba9bb09d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 14:19:40 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 14:19:40 2019 -0800","stats":{"files_changed":2,"insertions":44,"deletions":4,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":22},{"name":"jc/utils.py","lines_changed":26}]},"message":"doc update","epoch":1573597180,"epoch_utc":null},{"commit":"7e6a1bc719b7160ba70cd326ff6aa182993a7380","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 14:15:22 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 14:15:22 2019 -0800","stats":{"files_changed":2,"insertions":41,"deletions":63,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":51},{"name":"jc/__init__.py","lines_changed":53}]},"message":"doc update","epoch":1573596922,"epoch_utc":null},{"commit":"37738a2ea2f15af847e4b8383aba911e2020a3e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 14:10:26 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 14:10:26 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update contributions","epoch":1573596626,"epoch_utc":null},{"commit":"c5834a57db8957723a1425b9db46c433e28a3af1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 13:35:32 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 13:35:32 2019 -0800","stats":{"files_changed":1,"insertions":14,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":14}]},"message":"add todo section","epoch":1573594532,"epoch_utc":null},{"commit":"91b9373f380e06f91888811edbfb21747ff08810","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 13:05:19 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 13:05:19 2019 -0800","stats":{"files_changed":1,"insertions":417,"deletions":673,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1090}]},"message":"new examples","epoch":1573592719,"epoch_utc":null},{"commit":"ce0bb5b816eed0c75542ead474c3dcb8401be2d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:52:16 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 11:52:16 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting fix","epoch":1573588336,"epoch_utc":null},{"commit":"f330ff0eff00586f46d18497f2441e94b6430e91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:49:14 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 11:49:14 2019 -0800","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":12}]},"message":"wrap example text","epoch":1573588154,"epoch_utc":null},{"commit":"4b02700414660b90518311485761870402368625","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:46:52 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 11:46:52 2019 -0800","stats":{"files_changed":1,"insertions":9,"deletions":20,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":29}]},"message":"update simple examples","epoch":1573588012,"epoch_utc":null},{"commit":"ee30180376b7acec46314bbc483866bff41c362a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:39:33 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 11:39:33 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"fix note","epoch":1573587573,"epoch_utc":null},{"commit":"338e0ff15c7fac84475c1ed107e6a23e7a009b1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:38:50 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 11:38:50 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add schema note","epoch":1573587530,"epoch_utc":null},{"commit":"3ac75305dfa33429646bb5d415567034cccfeee3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:28:10 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 11:28:10 2019 -0800","stats":{"files_changed":39,"insertions":351,"deletions":39,"files":["docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/df.md","lines_changed":10},{"name":"docs/parsers/dig.md","lines_changed":10},{"name":"docs/parsers/env.md","lines_changed":10},{"name":"docs/parsers/free.md","lines_changed":10},{"name":"docs/parsers/history.md","lines_changed":10},{"name":"docs/parsers/ifconfig.md","lines_changed":10},{"name":"docs/parsers/iptables.md","lines_changed":10},{"name":"docs/parsers/jobs.md","lines_changed":10},{"name":"docs/parsers/ls.md","lines_changed":10},{"name":"docs/parsers/lsblk.md","lines_changed":10},{"name":"docs/parsers/lsmod.md","lines_changed":10},{"name":"docs/parsers/lsof.md","lines_changed":10},{"name":"docs/parsers/mount.md","lines_changed":10},{"name":"docs/parsers/netstat.md","lines_changed":10},{"name":"docs/parsers/ps.md","lines_changed":10},{"name":"docs/parsers/route.md","lines_changed":10},{"name":"docs/parsers/uname.md","lines_changed":10},{"name":"docs/parsers/uptime.md","lines_changed":10},{"name":"docs/parsers/w.md","lines_changed":10},{"name":"jc/parsers/df.py","lines_changed":10},{"name":"jc/parsers/dig.py","lines_changed":10},{"name":"jc/parsers/env.py","lines_changed":10},{"name":"jc/parsers/foo.py","lines_changed":10},{"name":"jc/parsers/free.py","lines_changed":10},{"name":"jc/parsers/history.py","lines_changed":10},{"name":"jc/parsers/ifconfig.py","lines_changed":10},{"name":"jc/parsers/iptables.py","lines_changed":10},{"name":"jc/parsers/jobs.py","lines_changed":10},{"name":"jc/parsers/ls.py","lines_changed":10},{"name":"jc/parsers/lsblk.py","lines_changed":10},{"name":"jc/parsers/lsmod.py","lines_changed":10},{"name":"jc/parsers/lsof.py","lines_changed":10},{"name":"jc/parsers/mount.py","lines_changed":10},{"name":"jc/parsers/netstat.py","lines_changed":10},{"name":"jc/parsers/ps.py","lines_changed":10},{"name":"jc/parsers/route.py","lines_changed":10},{"name":"jc/parsers/uname.py","lines_changed":10},{"name":"jc/parsers/uptime.py","lines_changed":10},{"name":"jc/parsers/w.py","lines_changed":10}]},"message":"update process() doc","epoch":1573586890,"epoch_utc":null},{"commit":"3bdcf44afb708cf6a716a0847b119f895602c23e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:22:17 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 11:22:17 2019 -0800","stats":{"files_changed":2,"insertions":18,"deletions":2,"files":["docs/parsers/arp.md","jc/parsers/arp.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":10},{"name":"jc/parsers/arp.py","lines_changed":10}]},"message":"doc update","epoch":1573586537,"epoch_utc":null},{"commit":"e3f4ffede56fe48c0a282a021ac5cdfd7a8abee9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:18:00 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 11:18:00 2019 -0800","stats":{"files_changed":20,"insertions":172,"deletions":77,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":13},{"name":"docs/parsers/dig.md","lines_changed":13},{"name":"docs/parsers/env.md","lines_changed":13},{"name":"docs/parsers/free.md","lines_changed":13},{"name":"docs/parsers/history.md","lines_changed":13},{"name":"docs/parsers/ifconfig.md","lines_changed":13},{"name":"docs/parsers/iptables.md","lines_changed":13},{"name":"docs/parsers/jobs.md","lines_changed":13},{"name":"docs/parsers/ls.md","lines_changed":13},{"name":"docs/parsers/lsblk.md","lines_changed":13},{"name":"docs/parsers/lsmod.md","lines_changed":13},{"name":"docs/parsers/lsof.md","lines_changed":13},{"name":"docs/parsers/mount.md","lines_changed":13},{"name":"docs/parsers/netstat.md","lines_changed":13},{"name":"docs/parsers/ps.md","lines_changed":13},{"name":"docs/parsers/route.md","lines_changed":13},{"name":"docs/parsers/uname.md","lines_changed":13},{"name":"docs/parsers/uptime.md","lines_changed":13},{"name":"docs/parsers/w.md","lines_changed":13}]},"message":"doc update","epoch":1573586280,"epoch_utc":null},{"commit":"f0c8725d4355113f7690f20bb99078e488084ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:17:33 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 11:17:33 2019 -0800","stats":{"files_changed":21,"insertions":181,"deletions":81,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":13},{"name":"jc/parsers/dig.py","lines_changed":13},{"name":"jc/parsers/env.py","lines_changed":13},{"name":"jc/parsers/foo.py","lines_changed":13},{"name":"jc/parsers/free.py","lines_changed":13},{"name":"jc/parsers/history.py","lines_changed":13},{"name":"jc/parsers/ifconfig.py","lines_changed":13},{"name":"jc/parsers/iptables.py","lines_changed":13},{"name":"jc/parsers/jobs.py","lines_changed":13},{"name":"jc/parsers/ls.py","lines_changed":13},{"name":"jc/parsers/lsblk.py","lines_changed":13},{"name":"jc/parsers/lsmod.py","lines_changed":13},{"name":"jc/parsers/lsof.py","lines_changed":13},{"name":"jc/parsers/mount.py","lines_changed":13},{"name":"jc/parsers/netstat.py","lines_changed":13},{"name":"jc/parsers/ps.py","lines_changed":13},{"name":"jc/parsers/route.py","lines_changed":13},{"name":"jc/parsers/uname.py","lines_changed":13},{"name":"jc/parsers/uptime.py","lines_changed":13},{"name":"jc/parsers/w.py","lines_changed":13}]},"message":"doc update","epoch":1573586253,"epoch_utc":null},{"commit":"5473bc4eb697d00bd26a038287e1137e438cacb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:12:41 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 11:12:41 2019 -0800","stats":{"files_changed":2,"insertions":16,"deletions":6,"files":["docs/parsers/arp.md","jc/parsers/arp.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":11},{"name":"jc/parsers/arp.py","lines_changed":11}]},"message":"doc update","epoch":1573585961,"epoch_utc":null},{"commit":"b9bd9422bfa46144416fa65add2e041d4124357b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:19:01 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 07:19:01 2019 -0800","stats":{"files_changed":2,"insertions":380,"deletions":46,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":213},{"name":"jc/parsers/dig.py","lines_changed":213}]},"message":"doc update","epoch":1573571941,"epoch_utc":null},{"commit":"cb5729a070925a7fa29f762bd4b074532f5cba55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:18:27 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 07:18:27 2019 -0800","stats":{"files_changed":1,"insertions":62,"deletions":44,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":106}]},"message":"add options to docs","epoch":1573571907,"epoch_utc":null},{"commit":"f0b1ab42337746afd37365abdf44729d530d5410","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:08:35 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 07:08:35 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":1},{"name":"jc/utils.py","lines_changed":1}]},"message":"doc update","epoch":1573571315,"epoch_utc":null},{"commit":"b15386e849b9fea347e7b17307eedf779d8022fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:07:43 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 07:07:43 2019 -0800","stats":{"files_changed":2,"insertions":11,"deletions":5,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":7},{"name":"jc/utils.py","lines_changed":9}]},"message":"doc update","epoch":1573571263,"epoch_utc":null},{"commit":"d2a2c8da35ee44e9a7572885609548eb809bcdda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:03:02 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 07:03:02 2019 -0800","stats":{"files_changed":3,"insertions":1,"deletions":5,"files":["docs/parsers/iptables.md","docs/parsers/mount.md","docs/parsers/uname.md"],"file_stats":[{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2}]},"message":"doc updates","epoch":1573570982,"epoch_utc":null},{"commit":"7251548cbb09beae6971385a56036e9649bd9b2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:01:36 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 07:01:36 2019 -0800","stats":{"files_changed":3,"insertions":3,"deletions":5,"files":["jc/parsers/iptables.py","jc/parsers/mount.py","jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":3},{"name":"jc/parsers/uname.py","lines_changed":3}]},"message":"documentation updates","epoch":1573570896,"epoch_utc":null},{"commit":"146e29f7cbc0f396be67dbd7ae971a4ef4dafb7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 18:30:46 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 18:30:46 2019 -0800","stats":{"files_changed":47,"insertions":5386,"deletions":2249,"files":["docgen.sh","docs/cli.md","docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/readme.md","docs/utils.md","jc/__init__.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/utils.py"],"file_stats":[{"name":"docgen.sh","lines_changed":27},{"name":"docs/cli.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":110},{"name":"docs/parsers/df.md","lines_changed":97},{"name":"docs/parsers/dig.md","lines_changed":212},{"name":"docs/parsers/env.md","lines_changed":72},{"name":"docs/parsers/free.md","lines_changed":77},{"name":"docs/parsers/history.md","lines_changed":64},{"name":"docs/parsers/ifconfig.md","lines_changed":170},{"name":"docs/parsers/iptables.md","lines_changed":168},{"name":"docs/parsers/jobs.md","lines_changed":98},{"name":"docs/parsers/ls.md","lines_changed":168},{"name":"docs/parsers/lsblk.md","lines_changed":273},{"name":"docs/parsers/lsmod.md","lines_changed":130},{"name":"docs/parsers/lsof.md","lines_changed":124},{"name":"docs/parsers/mount.md","lines_changed":82},{"name":"docs/parsers/netstat.md","lines_changed":352},{"name":"docs/parsers/ps.md","lines_changed":223},{"name":"docs/parsers/route.md","lines_changed":129},{"name":"docs/parsers/uname.md","lines_changed":55},{"name":"docs/parsers/uptime.md","lines_changed":56},{"name":"docs/parsers/w.md","lines_changed":108},{"name":"docs/readme.md","lines_changed":79},{"name":"docs/utils.md","lines_changed":22},{"name":"jc/__init__.py","lines_changed":135},{"name":"jc/parsers/arp.py","lines_changed":176},{"name":"jc/parsers/df.py","lines_changed":129},{"name":"jc/parsers/dig.py","lines_changed":362},{"name":"jc/parsers/env.py","lines_changed":101},{"name":"jc/parsers/foo.py","lines_changed":37},{"name":"jc/parsers/free.py","lines_changed":111},{"name":"jc/parsers/history.py","lines_changed":85},{"name":"jc/parsers/ifconfig.py","lines_changed":294},{"name":"jc/parsers/iptables.py","lines_changed":271},{"name":"jc/parsers/jobs.py","lines_changed":150},{"name":"jc/parsers/ls.py","lines_changed":280},{"name":"jc/parsers/lsblk.py","lines_changed":499},{"name":"jc/parsers/lsmod.py","lines_changed":211},{"name":"jc/parsers/lsof.py","lines_changed":205},{"name":"jc/parsers/mount.py","lines_changed":115},{"name":"jc/parsers/netstat.py","lines_changed":661},{"name":"jc/parsers/ps.py","lines_changed":389},{"name":"jc/parsers/route.py","lines_changed":213},{"name":"jc/parsers/uname.py","lines_changed":57},{"name":"jc/parsers/uptime.py","lines_changed":69},{"name":"jc/parsers/w.py","lines_changed":173},{"name":"jc/utils.py","lines_changed":11}]},"message":"update docs","epoch":1573525846,"epoch_utc":null},{"commit":"363fd3eab409351121dab8a11c6b565829ccd84a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 16:27:28 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 16:27:28 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"move parser_name to except block","epoch":1573518448,"epoch_utc":null},{"commit":"4083dd4260ff3a8bb6649e1661cf3e058fdbad59","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 16:16:41 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 16:16:41 2019 -0800","stats":{"files_changed":2,"insertions":24,"deletions":5,"files":["changelog.txt","jc/cli.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/cli.py","lines_changed":28}]},"message":"add -d option","epoch":1573517801,"epoch_utc":null},{"commit":"b2b74547baaf33058d74fc08cb665777b19bd05a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 15:53:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 15:53:42 2019 -0800","stats":{"files_changed":6,"insertions":317,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-sudo-aeep.json","tests/fixtures/centos-7.7/netstat-sudo-aeep.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.json","tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.out","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/netstat-sudo-aeep.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-sudo-aeep.out","lines_changed":164},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.out","lines_changed":126},{"name":"tests/test_netstat.py","lines_changed":24}]},"message":"add netstat-sudo-aeep tests","epoch":1573516422,"epoch_utc":null},{"commit":"dddb0baabf8a78261ac80380b97e7c92c7ce4d89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 15:53:22 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 15:53:22 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":8}]},"message":"use \\u2063 instead of \\u2026","epoch":1573516402,"epoch_utc":null},{"commit":"84b4f67ef9d4bb0db201a095d74400a56394589d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 14:34:36 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 14:34:36 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["tests/fixtures/centos-7.7/ps-axu.json","tests/fixtures/ubuntu-18.04/ps-axu.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ps-axu.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ps-axu.json","lines_changed":2}]},"message":"new json output","epoch":1573511676,"epoch_utc":null},{"commit":"3a089138b8c269ba3c5f7aec87ae3f8ec368c3ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 14:31:27 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 14:31:27 2019 -0800","stats":{"files_changed":1,"insertions":129,"deletions":9,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":138}]},"message":"add int and float changes","epoch":1573511487,"epoch_utc":null},{"commit":"3ff0305c8e62ce3b5a8f3f9174c5a9da3bc22766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 13:00:17 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 13:00:17 2019 -0800","stats":{"files_changed":8,"insertions":54,"deletions":2,"files":["tests/fixtures/centos-7.7/lsblk-allcols.json","tests/fixtures/centos-7.7/lsblk-allcols.out","tests/fixtures/centos-7.7/lsblk.json","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/lsblk-allcols.json","tests/fixtures/ubuntu-18.04/lsblk-allcols.out","tests/fixtures/ubuntu-18.04/lsblk.json","tests/test_lsblk.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/lsblk-allcols.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsblk-allcols.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/lsblk.json","lines_changed":2},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsblk-allcols.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsblk-allcols.out","lines_changed":18},{"name":"tests/fixtures/ubuntu-18.04/lsblk.json","lines_changed":2},{"name":"tests/test_lsblk.py","lines_changed":24}]},"message":"add lsblk tests","epoch":1573506017,"epoch_utc":null},{"commit":"761edc3c6cfc215fe45c65ee2bb5462cb460b6a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 12:43:27 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 12:43:27 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":6,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":7}]},"message":"remove unused parse_pairs function","epoch":1573505007,"epoch_utc":null},{"commit":"3351c81f647ac97a5038cc0c14adb31e55832a77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 12:40:16 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 12:40:16 2019 -0800","stats":{"files_changed":1,"insertions":200,"deletions":2,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":202}]},"message":"add documentation","epoch":1573504816,"epoch_utc":null},{"commit":"3dfc6f67d770c59804bdeb371d5c78e3f3668f9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 12:00:23 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 12:00:23 2019 -0800","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":6}]},"message":"change empty values to Null","epoch":1573502423,"epoch_utc":null},{"commit":"1546ec3bd139ef687282f60786388b5207541c98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 11:53:16 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 11:53:16 2019 -0800","stats":{"files_changed":1,"insertions":17,"deletions":13,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":30}]},"message":"fixes for right justified columns","epoch":1573501996,"epoch_utc":null},{"commit":"2a953011f72e922c89b9af6dfebd1983da7c338d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 10 15:18:53 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Nov 10 15:18:53 2019 -0800","stats":{"files_changed":2,"insertions":50,"deletions":155,"files":["changelog.txt","jc/parsers/lsblk.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":203}]},"message":"rewrite of lsblk parser to use a custom delimiter","epoch":1573427933,"epoch_utc":null},{"commit":"d2f755de9d2be7b0af5f010042e1f4ca589c5464","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 17:08:41 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 17:08:41 2019 -0800","stats":{"files_changed":14,"insertions":250,"deletions":566,"files":["tests/test_ifconfig.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_ls.py","tests/test_lsblk.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_ps.py","tests/test_route.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py"],"file_stats":[{"name":"tests/test_ifconfig.py","lines_changed":59},{"name":"tests/test_iptables.py","lines_changed":249},{"name":"tests/test_jobs.py","lines_changed":19},{"name":"tests/test_ls.py","lines_changed":58},{"name":"tests/test_lsblk.py","lines_changed":25},{"name":"tests/test_lsmod.py","lines_changed":22},{"name":"tests/test_lsof.py","lines_changed":59},{"name":"tests/test_mount.py","lines_changed":30},{"name":"tests/test_netstat.py","lines_changed":110},{"name":"tests/test_ps.py","lines_changed":57},{"name":"tests/test_route.py","lines_changed":51},{"name":"tests/test_uname.py","lines_changed":27},{"name":"tests/test_uptime.py","lines_changed":23},{"name":"tests/test_w.py","lines_changed":27}]},"message":"updates tests","epoch":1573261721,"epoch_utc":null},{"commit":"f363334639c5fa3a43889794ea52409056a2d886","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 16:21:09 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 16:21:09 2019 -0800","stats":{"files_changed":5,"insertions":87,"deletions":219,"files":["tests/test_df.py","tests/test_dig.py","tests/test_env.py","tests/test_free.py","tests/test_history.py"],"file_stats":[{"name":"tests/test_df.py","lines_changed":43},{"name":"tests/test_dig.py","lines_changed":196},{"name":"tests/test_env.py","lines_changed":13},{"name":"tests/test_free.py","lines_changed":41},{"name":"tests/test_history.py","lines_changed":13}]},"message":"update tests","epoch":1573258869,"epoch_utc":null},{"commit":"750197e48596ad96804477053d3ff3c8063ea68a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 16:04:19 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 16:04:19 2019 -0800","stats":{"files_changed":1,"insertions":27,"deletions":70,"files":["tests/test_arp.py"],"file_stats":[{"name":"tests/test_arp.py","lines_changed":97}]},"message":"new tests","epoch":1573257859,"epoch_utc":null},{"commit":"36b349e4ed39fe611c7d87a47c378cc4d4627ad2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 16:03:41 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 16:03:41 2019 -0800","stats":{"files_changed":76,"insertions":76,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-a.json","tests/fixtures/centos-7.7/arp-v.json","tests/fixtures/centos-7.7/arp.json","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/df.json","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/centos-7.7/env.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/centos-7.7/free.json","tests/fixtures/centos-7.7/history.json","tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/centos-7.7/iptables-filter-nv.json","tests/fixtures/centos-7.7/iptables-filter.json","tests/fixtures/centos-7.7/iptables-mangle.json","tests/fixtures/centos-7.7/iptables-nat.json","tests/fixtures/centos-7.7/iptables-raw.json","tests/fixtures/centos-7.7/jobs.json","tests/fixtures/centos-7.7/ls-al.json","tests/fixtures/centos-7.7/ls-alh.json","tests/fixtures/centos-7.7/ls.json","tests/fixtures/centos-7.7/lsblk.json","tests/fixtures/centos-7.7/lsmod.json","tests/fixtures/centos-7.7/lsof-sudo.json","tests/fixtures/centos-7.7/lsof.json","tests/fixtures/centos-7.7/mount.json","tests/fixtures/centos-7.7/netstat-l.json","tests/fixtures/centos-7.7/netstat-p.json","tests/fixtures/centos-7.7/netstat-sudo-lnp.json","tests/fixtures/centos-7.7/netstat.json","tests/fixtures/centos-7.7/ps-axu.json","tests/fixtures/centos-7.7/ps-ef.json","tests/fixtures/centos-7.7/route-vn.json","tests/fixtures/centos-7.7/route.json","tests/fixtures/centos-7.7/uname-a.json","tests/fixtures/centos-7.7/uptime.json","tests/fixtures/centos-7.7/w.json","tests/fixtures/ubuntu-18.04/arp-a.json","tests/fixtures/ubuntu-18.04/arp-v.json","tests/fixtures/ubuntu-18.04/arp.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/df.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json","tests/fixtures/ubuntu-18.04/env.json","tests/fixtures/ubuntu-18.04/free-h.json","tests/fixtures/ubuntu-18.04/free.json","tests/fixtures/ubuntu-18.04/history.json","tests/fixtures/ubuntu-18.04/ifconfig.json","tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","tests/fixtures/ubuntu-18.04/iptables-filter.json","tests/fixtures/ubuntu-18.04/iptables-mangle.json","tests/fixtures/ubuntu-18.04/iptables-nat.json","tests/fixtures/ubuntu-18.04/iptables-raw.json","tests/fixtures/ubuntu-18.04/jobs.json","tests/fixtures/ubuntu-18.04/ls-al.json","tests/fixtures/ubuntu-18.04/ls-alh.json","tests/fixtures/ubuntu-18.04/ls.json","tests/fixtures/ubuntu-18.04/lsblk.json","tests/fixtures/ubuntu-18.04/lsmod.json","tests/fixtures/ubuntu-18.04/lsof-sudo.json","tests/fixtures/ubuntu-18.04/lsof.json","tests/fixtures/ubuntu-18.04/mount.json","tests/fixtures/ubuntu-18.04/netstat-l.json","tests/fixtures/ubuntu-18.04/netstat-p.json","tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.json","tests/fixtures/ubuntu-18.04/netstat.json","tests/fixtures/ubuntu-18.04/ps-axu.json","tests/fixtures/ubuntu-18.04/ps-ef.json","tests/fixtures/ubuntu-18.04/route-vn.json","tests/fixtures/ubuntu-18.04/route.json","tests/fixtures/ubuntu-18.04/uname-a.json","tests/fixtures/ubuntu-18.04/uptime.json","tests/fixtures/ubuntu-18.04/w.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/arp-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/arp-v.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/arp.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/df-h.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/df.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/dig-aaaa.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/dig-x.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/dig.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/env.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/free-h.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/free.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/history.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ifconfig.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-filter-nv.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-filter.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-mangle.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-nat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-raw.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/jobs.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-al.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-alh.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsblk.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsmod.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsof-sudo.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsof.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mount.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-l.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-sudo-lnp.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ps-axu.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ps-ef.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/route-vn.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/route.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/uname-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/uptime.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/w.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/arp-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/arp-v.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/arp.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/df-h.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/df.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dig-aaaa.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dig-x.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dig.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/env.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/free-h.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/free.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/history.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ifconfig.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-mangle.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-nat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-raw.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/jobs.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-al.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-alh.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsblk.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsmod.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsof-sudo.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsof.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/mount.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-l.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ps-axu.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ps-ef.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/route-vn.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/route.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/uname-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/uptime.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/w.json","lines_changed":1}]},"message":"json output files","epoch":1573257821,"epoch_utc":null},{"commit":"b5f1e94fe2859c4fbcf126f8f8fb20d71a9b6433","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 16:03:14 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 16:03:14 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":1}]},"message":"fix for space before '-' in program_name","epoch":1573257794,"epoch_utc":null},{"commit":"6a504fb0e10b1ef551ed9fe780926fe5ca02d267","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 16:02:44 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 16:02:44 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2}]},"message":"add exception type","epoch":1573257764,"epoch_utc":null},{"commit":"e02bad2240bacbc31097d931a902a34217d559db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 12:22:41 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 12:22:41 2019 -0800","stats":{"files_changed":1,"insertions":123,"deletions":175,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":298}]},"message":"update documentation","epoch":1573244561,"epoch_utc":null},{"commit":"1d4043a3b64c38a20a0db065c3bdc3c6a2d068bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 12:14:09 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 12:14:09 2019 -0800","stats":{"files_changed":1,"insertions":52,"deletions":0,"files":["jc/parsers/foo.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":52}]},"message":"add template parser","epoch":1573244049,"epoch_utc":null},{"commit":"039e034829789ca314a00abd4f1d9ad06f1a6eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 11:47:58 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 11:47:58 2019 -0800","stats":{"files_changed":1,"insertions":19,"deletions":6,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":25}]},"message":"fix parsing issues in program_name when spaces are in the name","epoch":1573242478,"epoch_utc":null},{"commit":"d828de4f4f2f4c3d582fddee79830d12511c3299","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 09:07:05 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 09:07:05 2019 -0800","stats":{"files_changed":1,"insertions":53,"deletions":9,"files":["jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/w.py","lines_changed":62}]},"message":"update documentation","epoch":1573232825,"epoch_utc":null},{"commit":"098000bb10a3f5ed33d285c6ba4f0dfb9a013fdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 09:04:03 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 09:04:03 2019 -0800","stats":{"files_changed":2,"insertions":24,"deletions":9,"files":["changelog.txt","jc/parsers/w.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/w.py","lines_changed":32}]},"message":"fix blank 'from' column issue","epoch":1573232643,"epoch_utc":null},{"commit":"b41165eff5cd7371e852cd33e084a919524ead9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 19:13:15 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 19:13:15 2019 -0800","stats":{"files_changed":1,"insertions":31,"deletions":1,"files":["jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/w.py","lines_changed":32}]},"message":"process w data","epoch":1573182795,"epoch_utc":null},{"commit":"6ad7891b2b34fae1a366568e4eba86e886a6dd84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 18:54:52 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 18:54:52 2019 -0800","stats":{"files_changed":1,"insertions":59,"deletions":14,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":73}]},"message":"process uptime data","epoch":1573181692,"epoch_utc":null},{"commit":"72138315598cd405bc0508b554108bf3f730dcb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 18:47:01 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 18:47:01 2019 -0800","stats":{"files_changed":1,"insertions":31,"deletions":10,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":41}]},"message":"add process boilerplate","epoch":1573181221,"epoch_utc":null},{"commit":"10eedd82e4c4678fbf989fe599d7ca75deced5a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 18:34:06 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 18:34:06 2019 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]},"message":"changelog update","epoch":1573180446,"epoch_utc":null},{"commit":"a55493da0f1457a46f29511e0835adfa9d748f7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 18:33:51 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 18:33:51 2019 -0800","stats":{"files_changed":1,"insertions":93,"deletions":6,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":99}]},"message":"process route data","epoch":1573180431,"epoch_utc":null},{"commit":"89973f4162317693b0d094a64115ee87d8479d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 15:33:12 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 15:33:12 2019 -0800","stats":{"files_changed":1,"insertions":45,"deletions":27,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":72}]},"message":"doc updates and tty fix","epoch":1573169592,"epoch_utc":null},{"commit":"4802222ad50d55372f2b883d83a61181086b0619","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 15:24:03 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 15:24:03 2019 -0800","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":11}]},"message":"process ps data","epoch":1573169043,"epoch_utc":null},{"commit":"bcd28f06f87a4260d1787399d723817afd6aee90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 15:09:57 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 15:09:57 2019 -0800","stats":{"files_changed":1,"insertions":23,"deletions":1,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":24}]},"message":"prep ps for process","epoch":1573168197,"epoch_utc":null},{"commit":"e17a47a7fa7f4c1bb4c4b55fb004963fc1b61434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 14:51:05 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 14:51:05 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":2}]},"message":"fix typo","epoch":1573167065,"epoch_utc":null},{"commit":"cad2e16c7aa54a70f476bf4268ff8e5985cff468","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 14:49:21 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 14:49:21 2019 -0800","stats":{"files_changed":1,"insertions":353,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":354}]},"message":"document examples","epoch":1573166961,"epoch_utc":null},{"commit":"5da5d278dac77bd4aa21819194e7f9e178bd1887","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 14:43:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 14:43:42 2019 -0800","stats":{"files_changed":1,"insertions":23,"deletions":0,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":23}]},"message":"process netstat data","epoch":1573166622,"epoch_utc":null},{"commit":"81b6776e57c113cbfb8346d1cfd83532a440c257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 13:58:55 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 13:58:55 2019 -0800","stats":{"files_changed":1,"insertions":0,"deletions":177,"files":["jc/parsers/netstat.py.old"],"file_stats":[{"name":"jc/parsers/netstat.py.old","lines_changed":177}]},"message":"remove old netstat parser","epoch":1573163935,"epoch_utc":null},{"commit":"5ecb6bd58b4ed91f63e4a0b5939378bd9925b7b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 13:58:37 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 13:58:37 2019 -0800","stats":{"files_changed":2,"insertions":4,"deletions":3,"files":["changelog.txt","jc/parsers/netstat.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":3}]},"message":"doc updates","epoch":1573163917,"epoch_utc":null},{"commit":"21b56096c57cfcf5c55fdf5f9bab88b6d5c7dd73","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 13:53:23 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 13:53:23 2019 -0800","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":37}]},"message":"finalize parse_post","epoch":1573163603,"epoch_utc":null},{"commit":"8c78f959731a25a05ee6361a14853c92f8fce69b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 12:13:25 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 12:13:25 2019 -0800","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":8}]},"message":"clean up trailing spaces on entries","epoch":1573157605,"epoch_utc":null},{"commit":"94a88bb5669d9a9a5dff085a4c4111bdd39df8f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 10:52:02 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 10:52:02 2019 -0800","stats":{"files_changed":1,"insertions":35,"deletions":17,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":52}]},"message":"post_parse flags and program_name","epoch":1573152722,"epoch_utc":null},{"commit":"579124475b0b517b36ddbe5bdb13be14807dea1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 09:02:27 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 09:02:27 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"simplify parser_map code","epoch":1573146147,"epoch_utc":null},{"commit":"5da83e020015eb5559d216bc3f39b3854e76adf3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:23:11 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 08:23:11 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"fix found variable error","epoch":1573143791,"epoch_utc":null},{"commit":"a90a76d004b923edece07a52a3aa400a9ef4b005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:15:19 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 08:15:19 2019 -0800","stats":{"files_changed":2,"insertions":177,"deletions":140,"files":["jc/parsers/netstat.py.old","jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/netstat.py.old","lines_changed":177},{"name":"jc/parsers/netstat2.py","lines_changed":140}]},"message":"move out old netstat parser","epoch":1573143319,"epoch_utc":null},{"commit":"bdfa95912398b2630fcb13e866f4013747fd0975","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:07:43 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 08:07:43 2019 -0800","stats":{"files_changed":20,"insertions":209,"deletions":212,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":10},{"name":"jc/parsers/env.py","lines_changed":10},{"name":"jc/parsers/free.py","lines_changed":10},{"name":"jc/parsers/history.py","lines_changed":8},{"name":"jc/parsers/ifconfig.py","lines_changed":10},{"name":"jc/parsers/iptables.py","lines_changed":10},{"name":"jc/parsers/jobs.py","lines_changed":10},{"name":"jc/parsers/ls.py","lines_changed":10},{"name":"jc/parsers/lsblk.py","lines_changed":10},{"name":"jc/parsers/lsmod.py","lines_changed":10},{"name":"jc/parsers/lsof.py","lines_changed":10},{"name":"jc/parsers/mount.py","lines_changed":10},{"name":"jc/parsers/netstat.py","lines_changed":245},{"name":"jc/parsers/ps.py","lines_changed":10},{"name":"jc/parsers/route.py","lines_changed":10},{"name":"jc/parsers/uname.py","lines_changed":10},{"name":"jc/parsers/uptime.py","lines_changed":10},{"name":"jc/parsers/w.py","lines_changed":10}]},"message":"fix compatibility code","epoch":1573142863,"epoch_utc":null},{"commit":"4380594275bc863e81839a6a7b032a6ff0cbb9b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:04:32 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 08:04:32 2019 -0800","stats":{"files_changed":1,"insertions":8,"deletions":46,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":54}]},"message":"remove cli functions from utils","epoch":1573142672,"epoch_utc":null},{"commit":"88bf252c0df3c583640286880d7992e4399e23f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:04:07 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 08:04:07 2019 -0800","stats":{"files_changed":2,"insertions":139,"deletions":128,"files":["jc/cli.py","jc/jc.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":139},{"name":"jc/jc.py","lines_changed":128}]},"message":"rename jc.py to cli.py","epoch":1573142647,"epoch_utc":null},{"commit":"a5efd8adce77fca7e3343f8f518c7bad578fdb4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:03:45 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 08:03:45 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"rename jc.py to cli.py","epoch":1573142625,"epoch_utc":null},{"commit":"2ee392eefffde77ebdf83f5e4e0c43cf8c1a7d6e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 21:09:09 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 6 21:09:09 2019 -0800","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/netstat2.py","lines_changed":10}]},"message":"add quiet mode","epoch":1573103349,"epoch_utc":null},{"commit":"9c1d893e16ea17b16bec5fd0ec8839c4fe6f0590","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 21:07:25 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 6 21:07:25 2019 -0800","stats":{"files_changed":4,"insertions":102,"deletions":90,"files":["jc/jc.py","jc/parsers/arp.py","jc/parsers/df.py","jc/utils.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":107},{"name":"jc/parsers/arp.py","lines_changed":10},{"name":"jc/parsers/df.py","lines_changed":10},{"name":"jc/utils.py","lines_changed":65}]},"message":"move utils to own module and add quiet mode","epoch":1573103245,"epoch_utc":null},{"commit":"88dcb90c83b757285661c72429c5b60bb1ead94a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 21:05:25 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 6 21:05:25 2019 -0800","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":6}]},"message":"changelog update","epoch":1573103125,"epoch_utc":null},{"commit":"a3bcabc89c1f74d067da0046492dbc56e50b1005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 20:35:10 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 6 20:35:10 2019 -0800","stats":{"files_changed":1,"insertions":9,"deletions":62,"files":["jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/netstat2.py","lines_changed":71}]},"message":"mvp of netstat raw_data parser","epoch":1573101310,"epoch_utc":null},{"commit":"dafbf9fdcf53a8abbd006baef0be6697f860d2a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 19:17:01 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 6 19:17:01 2019 -0800","stats":{"files_changed":4,"insertions":247,"deletions":53,"files":["jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/lsmod.py","lines_changed":85},{"name":"jc/parsers/lsof.py","lines_changed":106},{"name":"jc/parsers/mount.py","lines_changed":31},{"name":"jc/parsers/netstat2.py","lines_changed":78}]},"message":"process lsmod data","epoch":1573096621,"epoch_utc":null},{"commit":"680cb2b2caa82e1e2c3225b3c44cae2ba03ba02c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 09:56:59 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 6 09:56:59 2019 -0600","stats":{"files_changed":1,"insertions":76,"deletions":7,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":83}]},"message":"doc update","epoch":1573063019,"epoch_utc":null},{"commit":"54818a06e0e0b981810f6aec45c308da81a9e2ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 09:21:55 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 6 09:21:55 2019 -0600","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":8}]},"message":"change bool variable names","epoch":1573060915,"epoch_utc":null},{"commit":"88f4c5b5a93da3938b84f97abfc54539ee19ac48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 08:47:54 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 6 08:47:54 2019 -0600","stats":{"files_changed":6,"insertions":10,"deletions":10,"files":["jc/parsers/dig.py","jc/parsers/free.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":8},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":4},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"remove TypeError from exception check","epoch":1573058874,"epoch_utc":null},{"commit":"2bb7409887e8b7659613189daf58d02cb26bd6ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 23:10:49 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 23:10:49 2019 -0600","stats":{"files_changed":2,"insertions":36,"deletions":11,"files":["jc/parsers/df.py","jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/lsblk.py","lines_changed":42}]},"message":"process lsblk data","epoch":1573024249,"epoch_utc":null},{"commit":"c780aac3aba02cc042c6a3c984af198069956370","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 22:42:48 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 22:42:48 2019 -0600","stats":{"files_changed":22,"insertions":91,"deletions":5,"files":["jc/jc.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat2.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":8},{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/df.py","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":5},{"name":"jc/parsers/env.py","lines_changed":5},{"name":"jc/parsers/free.py","lines_changed":4},{"name":"jc/parsers/history.py","lines_changed":5},{"name":"jc/parsers/ifconfig.py","lines_changed":5},{"name":"jc/parsers/iptables.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"jc/parsers/lsblk.py","lines_changed":1},{"name":"jc/parsers/lsmod.py","lines_changed":4},{"name":"jc/parsers/lsof.py","lines_changed":5},{"name":"jc/parsers/mount.py","lines_changed":5},{"name":"jc/parsers/netstat.py","lines_changed":5},{"name":"jc/parsers/netstat2.py","lines_changed":5},{"name":"jc/parsers/ps.py","lines_changed":4},{"name":"jc/parsers/route.py","lines_changed":4},{"name":"jc/parsers/uname.py","lines_changed":5},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/w.py","lines_changed":4}]},"message":"add compatibility function","epoch":1573022568,"epoch_utc":null},{"commit":"5010aaec285e26ae9dbfdb3fcdc38a3bd36cd236","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:25:20 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 17:25:20 2019 -0600","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":2}]},"message":"put exit() back","epoch":1573003520,"epoch_utc":null},{"commit":"066e93cb075021ac94a0e2e6a36a34bc173ee6c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:23:46 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 17:23:46 2019 -0600","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":2}]},"message":"move exit() to errormessage()","epoch":1573003426,"epoch_utc":null},{"commit":"0bd2faa7f71a128babc68afea053159ccb91b702","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:17:07 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 17:17:07 2019 -0600","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":3}]},"message":"beautify compatibility list","epoch":1573003027,"epoch_utc":null},{"commit":"e2f926453ba386736204e358f8306dfc731b5005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:08:41 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 17:08:41 2019 -0600","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["install.sh"],"file_stats":[{"name":"install.sh","lines_changed":2}]},"message":"add install script","epoch":1573002521,"epoch_utc":null},{"commit":"b953b79f9c46d8c5398a6c1c2769167b5aed2805","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:04:18 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 17:04:18 2019 -0600","stats":{"files_changed":3,"insertions":11,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4}]},"message":"add compatibility","epoch":1573002258,"epoch_utc":null},{"commit":"7f9967780692bec2fcbe992eee0c392ab92efb7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:00:36 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 17:00:36 2019 -0600","stats":{"files_changed":2,"insertions":19,"deletions":1,"files":["jc/jc.py","jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":16},{"name":"jc/parsers/lsblk.py","lines_changed":4}]},"message":"compatibility function call","epoch":1573002036,"epoch_utc":null},{"commit":"721b54665924ad1657ee83cd5fca601e03700962","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 15:14:52 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 15:14:52 2019 -0600","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":8}]},"message":"finish schema","epoch":1572995692,"epoch_utc":null},{"commit":"2de5e41269421c73e07d4abd6ca99b38be736261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 15:07:40 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 15:07:40 2019 -0600","stats":{"files_changed":1,"insertions":95,"deletions":12,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":107}]},"message":"fix for more columns and build schema","epoch":1572995260,"epoch_utc":null},{"commit":"dfe0f6e99b6174734661fc43d9ad4b1d0dfd96e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 08:30:32 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 08:30:32 2019 -0800","stats":{"files_changed":1,"insertions":75,"deletions":9,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":84}]},"message":"process ls data","epoch":1572971432,"epoch_utc":null},{"commit":"8873b1bc697c8f9409fa676c88b5ebe109dc8717","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 08:07:39 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 08:07:39 2019 -0800","stats":{"files_changed":1,"insertions":24,"deletions":46,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":70}]},"message":"clean up process code","epoch":1572970059,"epoch_utc":null},{"commit":"9ff94707004fefed475603436fc0a7ffb19e6fee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 07:21:58 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 07:21:58 2019 -0800","stats":{"files_changed":1,"insertions":9,"deletions":4,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":13}]},"message":"refactor helptext() function","epoch":1572967318,"epoch_utc":null},{"commit":"2c58fca53044892e15ceb5e8bcae1afb09fa3269","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 17:07:11 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 17:07:11 2019 -0800","stats":{"files_changed":1,"insertions":62,"deletions":4,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":66}]},"message":"process jobs data","epoch":1572916031,"epoch_utc":null},{"commit":"9e5cd90da7d92bbadbc0d25071d087a3dbd90a5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 16:59:14 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 16:59:14 2019 -0800","stats":{"files_changed":1,"insertions":131,"deletions":261,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":392}]},"message":"process iptables data","epoch":1572915554,"epoch_utc":null},{"commit":"7ee0d49424bba5274975d6c33e0721977660692f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 15:54:34 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 15:54:34 2019 -0800","stats":{"files_changed":1,"insertions":107,"deletions":28,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":135}]},"message":"process ifconfig data","epoch":1572911674,"epoch_utc":null},{"commit":"a9058ee21e87454aa423112239c4f4df7daca8c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 15:19:50 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 15:19:50 2019 -0800","stats":{"files_changed":3,"insertions":4,"deletions":1,"files":["jc/parsers/arp.py","jc/parsers/dig.py","jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/dig.py","lines_changed":1},{"name":"jc/parsers/free.py","lines_changed":1}]},"message":"doc formatting","epoch":1572909590,"epoch_utc":null},{"commit":"fcf0aac87dccac2ce28e6f55e66e2f0b8f6fbd36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 15:19:35 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 15:19:35 2019 -0800","stats":{"files_changed":1,"insertions":54,"deletions":10,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":64}]},"message":"add history processing","epoch":1572909575,"epoch_utc":null},{"commit":"daec5f068103aae547509ddacc2be56c84f39f17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 15:11:18 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 15:11:18 2019 -0800","stats":{"files_changed":1,"insertions":55,"deletions":6,"files":["jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/free.py","lines_changed":61}]},"message":"process free data","epoch":1572909078,"epoch_utc":null},{"commit":"5b2491d5ae72705758944e247fbca83367c0365f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 15:03:16 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 15:03:16 2019 -0800","stats":{"files_changed":1,"insertions":54,"deletions":5,"files":["jc/parsers/env.py"],"file_stats":[{"name":"jc/parsers/env.py","lines_changed":59}]},"message":"process env data","epoch":1572908596,"epoch_utc":null},{"commit":"d9b41ac73b234f5bf7ff3abfee198092424a1bbd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 13:52:45 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 13:52:45 2019 -0800","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":4}]},"message":"doc formatting","epoch":1572904365,"epoch_utc":null},{"commit":"7168ffddf8a8dfcdd5bcabd8bf943d6417de407d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 13:47:27 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 13:47:27 2019 -0800","stats":{"files_changed":1,"insertions":87,"deletions":5,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":92}]},"message":"process dig output","epoch":1572904047,"epoch_utc":null},{"commit":"a855344bec9f60d852de326953436ec76f25cffb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 13:05:56 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 13:05:56 2019 -0800","stats":{"files_changed":1,"insertions":13,"deletions":0,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":13}]},"message":"document schema","epoch":1572901556,"epoch_utc":null},{"commit":"d8b3b59fae924494fbcdfbdf6ad790f5234b0c69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 13:02:54 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 13:02:54 2019 -0800","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":16}]},"message":"add schema and rename 'avail' to 'available'","epoch":1572901374,"epoch_utc":null},{"commit":"4b7d7840d37be47c1c98c38a6d712e7090e5b68c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 12:50:37 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 12:50:37 2019 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"changelog.txt","lines_changed":2}]},"message":"add -r option","epoch":1572900637,"epoch_utc":null},{"commit":"58a094a9b4cab0fcb99581f37a21a450fc3a1aed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 12:40:19 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 12:40:19 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update","epoch":1572900019,"epoch_utc":null},{"commit":"65adbb4189ac66de3283adb2af93a1251103f057","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 12:40:05 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 12:40:05 2019 -0800","stats":{"files_changed":1,"insertions":29,"deletions":7,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":36}]},"message":"doc update","epoch":1572900005,"epoch_utc":null},{"commit":"f7350959c9706486a3aed19a999e5ee756a1240c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 12:39:43 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 12:39:43 2019 -0800","stats":{"files_changed":1,"insertions":47,"deletions":24,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":71}]},"message":"df fix for changing header names when -h used","epoch":1572899983,"epoch_utc":null},{"commit":"8934a7d832b8e1375f0bbdd71031f37ae42f3929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 11:10:58 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 11:10:58 2019 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["jc/parsers/arp.py","jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":6}]},"message":"fix dictionary iteration","epoch":1572894658,"epoch_utc":null},{"commit":"669a424fd6508db91bf5cfa2607033fac85f442c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 11:02:02 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 11:02:02 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":4}]},"message":"fix process function","epoch":1572894122,"epoch_utc":null},{"commit":"591a65c2bda26efcdd570a5f147f98a5be0473d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 10:56:33 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 10:56:33 2019 -0800","stats":{"files_changed":1,"insertions":46,"deletions":2,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":48}]},"message":"process df data","epoch":1572893793,"epoch_utc":null},{"commit":"a78fb890782a64b20c0c1b60afbd915ebdd88535","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 09:32:29 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 09:32:29 2019 -0800","stats":{"files_changed":1,"insertions":21,"deletions":5,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":26}]},"message":"add raw and processed output","epoch":1572888749,"epoch_utc":null},{"commit":"8979dab2a5371fce3a773004c2309e7483e4cd31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 09:32:09 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 09:32:09 2019 -0800","stats":{"files_changed":1,"insertions":25,"deletions":20,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":45}]},"message":"add raw mode","epoch":1572888729,"epoch_utc":null},{"commit":"0a891f0adda7f2f3233222a0cb5c1f737913ad6f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 08:09:19 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 08:09:19 2019 -0800","stats":{"files_changed":2,"insertions":4,"deletions":1,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"setup.py","lines_changed":2}]},"message":"bump python required version","epoch":1572883759,"epoch_utc":null},{"commit":"c220e35b14237c2cfc38aa661413af83ea13e393","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 08:06:50 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 08:06:50 2019 -0800","stats":{"files_changed":1,"insertions":34,"deletions":33,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":67}]},"message":"cleanup helptext","epoch":1572883610,"epoch_utc":null},{"commit":"f26c5818bd958c18f4ecc22611b9c058f6213a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 07:57:47 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 07:57:47 2019 -0800","stats":{"files_changed":1,"insertions":36,"deletions":33,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":69}]},"message":"refactor helptext","epoch":1572883067,"epoch_utc":null},{"commit":"e712cd3fc4cec1b3137c73e199b2d89fd42fb3bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 1 22:29:08 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 1 22:29:08 2019 -0700","stats":{"files_changed":1,"insertions":138,"deletions":0,"files":["jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/netstat2.py","lines_changed":138}]},"message":"netstat2 skeleton","epoch":1572672548,"epoch_utc":null},{"commit":"0309c9ac67c5f65e0a584fd01e8104ef1990fa7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 1 08:55:52 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 1 08:55:52 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"setup cleanup","epoch":1572623752,"epoch_utc":null},{"commit":"9a9eb4120af7696cd3727ac0f0a014663e62b993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 1 08:53:53 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 1 08:53:53 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":3}]},"message":"setup updates","epoch":1572623633,"epoch_utc":null},{"commit":"d1927456b02e6c2a6e6395cd6ce873b6565ec37d","merge":"0691cfc a3d9213","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 31 08:06:01 2019 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Oct 31 08:06:01 2019 -0700","message":"Merge pull request #6 from kellyjonbrazil/dev\n\nDev v1.1.1","epoch":1572534361,"epoch_utc":null},{"commit":"a3d9213a1e2fd52ba2cbc863d4d01d3ffeebe230","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 31 07:59:03 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 31 07:59:03 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add date","epoch":1572533943,"epoch_utc":null},{"commit":"3365c03a1e709835b4bd6bca023afbcb46912982","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 31 07:58:44 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 31 07:58:44 2019 -0700","stats":{"files_changed":2,"insertions":361,"deletions":0,"files":["tests/test_arp.py","tests/test_dig.py"],"file_stats":[{"name":"tests/test_arp.py","lines_changed":131},{"name":"tests/test_dig.py","lines_changed":230}]},"message":"add tests","epoch":1572533924,"epoch_utc":null},{"commit":"4f6c87389b313b368d9e833feef55fe6daf7aac9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 31 07:27:31 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 31 07:27:31 2019 -0700","stats":{"files_changed":7,"insertions":164,"deletions":1,"files":["tests/fixtures/centos-7.7/dig-aaaa.out","tests/fixtures/centos-7.7/dig-x.out","tests/fixtures/centos-7.7/dig.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/dig-aaaa.out","tests/fixtures/ubuntu-18.04/dig-x.out","tests/fixtures/ubuntu-18.04/dig.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/dig-aaaa.out","lines_changed":20},{"name":"tests/fixtures/centos-7.7/dig-x.out","lines_changed":20},{"name":"tests/fixtures/centos-7.7/dig.out","lines_changed":38},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":6},{"name":"tests/fixtures/ubuntu-18.04/dig-aaaa.out","lines_changed":20},{"name":"tests/fixtures/ubuntu-18.04/dig-x.out","lines_changed":20},{"name":"tests/fixtures/ubuntu-18.04/dig.out","lines_changed":41}]},"message":"add dig test files","epoch":1572532051,"epoch_utc":null},{"commit":"41a2a9adac7d3c29dfa11292f08b0877c69b1a5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 31 07:27:12 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 31 07:27:12 2019 -0700","stats":{"files_changed":2,"insertions":147,"deletions":3,"files":["README.md","jc/parsers/dig.py"],"file_stats":[{"name":"README.md","lines_changed":147},{"name":"jc/parsers/dig.py","lines_changed":3}]},"message":"remove unnecessary if statement","epoch":1572532032,"epoch_utc":null},{"commit":"74dae2905b2b0916f0be9fee2a4a343962760ff6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 17:23:35 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 17:23:35 2019 -0700","stats":{"files_changed":1,"insertions":143,"deletions":30,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":173}]},"message":"dig parser mvp","epoch":1572481415,"epoch_utc":null},{"commit":"d1f64214de00090c3faae0bf544c6c2602ab8c31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 17:18:14 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 17:18:14 2019 -0700","stats":{"files_changed":1,"insertions":19,"deletions":3,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":22}]},"message":"add authority parsing","epoch":1572481094,"epoch_utc":null},{"commit":"d3e1aa20a815d1d1d6ae82776ae18e3416f0966f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 17:03:35 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 17:03:35 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":2}]},"message":"fix when line","epoch":1572480215,"epoch_utc":null},{"commit":"72cae9577756c4355211a19f4dd77aaeb6f8e905","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 16:59:56 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 16:59:56 2019 -0700","stats":{"files_changed":1,"insertions":47,"deletions":9,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":56}]},"message":"dig fixes","epoch":1572479996,"epoch_utc":null},{"commit":"219bc8130f55f23e3be3abbe56104aefc2f84e86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 15:36:13 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 15:36:13 2019 -0700","stats":{"files_changed":2,"insertions":155,"deletions":0,"files":["jc/jc.py","jc/parsers/dig.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":150}]},"message":"dig parser skeleton","epoch":1572474973,"epoch_utc":null},{"commit":"e8c1a554c040ad8f9c6b518db5fd58e8345d2181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:52:53 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 13:52:53 2019 -0700","stats":{"files_changed":3,"insertions":7,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-a.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/arp-a.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/arp-a.out","lines_changed":3},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/arp-a.out","lines_changed":3}]},"message":"testfile updates","epoch":1572468773,"epoch_utc":null},{"commit":"087a60bc2adf64bfcedc1f264fef328f993b530c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:52:31 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 13:52:31 2019 -0700","stats":{"files_changed":2,"insertions":87,"deletions":5,"files":["README.md","jc/parsers/arp.py"],"file_stats":[{"name":"README.md","lines_changed":33},{"name":"jc/parsers/arp.py","lines_changed":59}]},"message":"documentation updates","epoch":1572468751,"epoch_utc":null},{"commit":"9c9823c3b8737b5de08af6278ca74414138e9263","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:29:06 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 13:29:06 2019 -0700","stats":{"files_changed":5,"insertions":16,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-v.out","tests/fixtures/centos-7.7/arp.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/arp-v.out","tests/fixtures/ubuntu-18.04/arp.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/arp-v.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/arp.out","lines_changed":3},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/arp-v.out","lines_changed":4},{"name":"tests/fixtures/ubuntu-18.04/arp.out","lines_changed":3}]},"message":"add arp testfiles","epoch":1572467346,"epoch_utc":null},{"commit":"cf8d13030bf67261a986c0f80fa20ec0e37a743a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:22:12 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 13:22:12 2019 -0700","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":21}]},"message":"add arp","epoch":1572466932,"epoch_utc":null},{"commit":"1eff69c187ca410ffaec7909bc2532553be1d80c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:21:05 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 13:21:05 2019 -0700","stats":{"files_changed":2,"insertions":17,"deletions":1,"files":["changelog.txt","jc/parsers/arp.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/arp.py","lines_changed":17}]},"message":"add documentation","epoch":1572466865,"epoch_utc":null},{"commit":"b10fb77d714b73a10a9bf28b45269b3530e01cee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:12:53 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 13:12:53 2019 -0700","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":10}]},"message":"fixup arp parser","epoch":1572466373,"epoch_utc":null},{"commit":"87cee8b230a06fa270b2e36afb56f337da814c80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:00:05 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 13:00:05 2019 -0700","stats":{"files_changed":2,"insertions":28,"deletions":1,"files":["jc/jc.py","jc/parsers/arp.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":7},{"name":"jc/parsers/arp.py","lines_changed":22}]},"message":"add arp parser","epoch":1572465605,"epoch_utc":null},{"commit":"83ab10d6282e26391bbf6bae5d0d29e040b209f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 12:50:05 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 12:50:05 2019 -0700","stats":{"files_changed":1,"insertions":44,"deletions":34,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":78}]},"message":"documentation update","epoch":1572465005,"epoch_utc":null},{"commit":"d58a6e1d1dc93155255922b65b0af1325439b033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 14:19:04 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 29 14:19:04 2019 -0700","stats":{"files_changed":1,"insertions":13,"deletions":15,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":28}]},"message":"readme update","epoch":1572383944,"epoch_utc":null},{"commit":"cb46ca5c2776a13c673a44d3e0fbd0661b32af9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 10:27:42 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 29 10:27:42 2019 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"readme update","epoch":1572370062,"epoch_utc":null},{"commit":"5528d979f0b45787d68ab79b962371df9acc527b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 09:16:03 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 29 09:16:03 2019 -0700","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":6},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1572365763,"epoch_utc":null},{"commit":"ee94a038a61d60db72046d5bcceec58009decb39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 08:58:52 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 29 08:58:52 2019 -0700","stats":{"files_changed":3,"insertions":131,"deletions":0,"files":["tests/test_uname.py","tests/test_uptime.py","tests/test_w.py"],"file_stats":[{"name":"tests/test_uname.py","lines_changed":45},{"name":"tests/test_uptime.py","lines_changed":41},{"name":"tests/test_w.py","lines_changed":45}]},"message":"add tests","epoch":1572364732,"epoch_utc":null},{"commit":"1d658f7a9fc50873f76985b2fb9de92ada9d5547","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 08:45:11 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 29 08:45:11 2019 -0700","stats":{"files_changed":3,"insertions":265,"deletions":0,"files":["tests/test_netstat.py","tests/test_ps.py","tests/test_route.py"],"file_stats":[{"name":"tests/test_netstat.py","lines_changed":105},{"name":"tests/test_ps.py","lines_changed":83},{"name":"tests/test_route.py","lines_changed":77}]},"message":"add tests","epoch":1572363911,"epoch_utc":null},{"commit":"392cb44f9b19829a5ceba055e24c7af4d8ac5b3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 07:55:26 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 29 07:55:26 2019 -0700","stats":{"files_changed":80,"insertions":12667,"deletions":0,"files":["runtests.sh","tests/__init__.py","tests/fixtures/centos-7.7/df-h.out","tests/fixtures/centos-7.7/df.out","tests/fixtures/centos-7.7/env.out","tests/fixtures/centos-7.7/free-h.out","tests/fixtures/centos-7.7/free.out","tests/fixtures/centos-7.7/history.out","tests/fixtures/centos-7.7/ifconfig.out","tests/fixtures/centos-7.7/iptables-filter-nv.out","tests/fixtures/centos-7.7/iptables-filter.out","tests/fixtures/centos-7.7/iptables-mangle.out","tests/fixtures/centos-7.7/iptables-nat.out","tests/fixtures/centos-7.7/iptables-raw.out","tests/fixtures/centos-7.7/jobs.out","tests/fixtures/centos-7.7/ls-al.out","tests/fixtures/centos-7.7/ls-alh.out","tests/fixtures/centos-7.7/ls.out","tests/fixtures/centos-7.7/lsblk.out","tests/fixtures/centos-7.7/lsmod.out","tests/fixtures/centos-7.7/lsof-sudo.out","tests/fixtures/centos-7.7/lsof.out","tests/fixtures/centos-7.7/mount.out","tests/fixtures/centos-7.7/netstat-l.out","tests/fixtures/centos-7.7/netstat-p.out","tests/fixtures/centos-7.7/netstat-sudo-lnp.out","tests/fixtures/centos-7.7/netstat.out","tests/fixtures/centos-7.7/ps-axu.out","tests/fixtures/centos-7.7/ps-ef.out","tests/fixtures/centos-7.7/route-vn.out","tests/fixtures/centos-7.7/route.out","tests/fixtures/centos-7.7/uname-a.out","tests/fixtures/centos-7.7/uptime.out","tests/fixtures/centos-7.7/w.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/df-h.out","tests/fixtures/ubuntu-18.04/df.out","tests/fixtures/ubuntu-18.04/env.out","tests/fixtures/ubuntu-18.04/free-h.out","tests/fixtures/ubuntu-18.04/free.out","tests/fixtures/ubuntu-18.04/history.out","tests/fixtures/ubuntu-18.04/ifconfig.out","tests/fixtures/ubuntu-18.04/iptables-filter-nv.out","tests/fixtures/ubuntu-18.04/iptables-filter.out","tests/fixtures/ubuntu-18.04/iptables-mangle.out","tests/fixtures/ubuntu-18.04/iptables-nat.out","tests/fixtures/ubuntu-18.04/iptables-raw.out","tests/fixtures/ubuntu-18.04/jobs.out","tests/fixtures/ubuntu-18.04/ls-al.out","tests/fixtures/ubuntu-18.04/ls-alh.out","tests/fixtures/ubuntu-18.04/ls.out","tests/fixtures/ubuntu-18.04/lsblk.out","tests/fixtures/ubuntu-18.04/lsmod.out","tests/fixtures/ubuntu-18.04/lsof-sudo.out","tests/fixtures/ubuntu-18.04/lsof.out","tests/fixtures/ubuntu-18.04/mount.out","tests/fixtures/ubuntu-18.04/netstat-l.out","tests/fixtures/ubuntu-18.04/netstat-p.out","tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.out","tests/fixtures/ubuntu-18.04/netstat.out","tests/fixtures/ubuntu-18.04/ps-axu.out","tests/fixtures/ubuntu-18.04/ps-ef.out","tests/fixtures/ubuntu-18.04/route-vn.out","tests/fixtures/ubuntu-18.04/route.out","tests/fixtures/ubuntu-18.04/uname-a.out","tests/fixtures/ubuntu-18.04/uptime.out","tests/fixtures/ubuntu-18.04/w.out","tests/test_df.py","tests/test_env.py","tests/test_free.py","tests/test_history.py","tests/test_ifconfig.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_ls.py","tests/test_lsblk.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py"],"file_stats":[{"name":"runtests.sh","lines_changed":3},{"name":"tests/__init__.py","lines_changed":0},{"name":"tests/fixtures/centos-7.7/df-h.out","lines_changed":8},{"name":"tests/fixtures/centos-7.7/df.out","lines_changed":8},{"name":"tests/fixtures/centos-7.7/env.out","lines_changed":24},{"name":"tests/fixtures/centos-7.7/free-h.out","lines_changed":3},{"name":"tests/fixtures/centos-7.7/free.out","lines_changed":3},{"name":"tests/fixtures/centos-7.7/history.out","lines_changed":1000},{"name":"tests/fixtures/centos-7.7/ifconfig.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/iptables-filter-nv.out","lines_changed":134},{"name":"tests/fixtures/centos-7.7/iptables-filter.out","lines_changed":134},{"name":"tests/fixtures/centos-7.7/iptables-mangle.out","lines_changed":59},{"name":"tests/fixtures/centos-7.7/iptables-nat.out","lines_changed":80},{"name":"tests/fixtures/centos-7.7/iptables-raw.out","lines_changed":38},{"name":"tests/fixtures/centos-7.7/jobs.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/ls-al.out","lines_changed":22},{"name":"tests/fixtures/centos-7.7/ls-alh.out","lines_changed":22},{"name":"tests/fixtures/centos-7.7/ls.out","lines_changed":19},{"name":"tests/fixtures/centos-7.7/lsblk.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/lsmod.out","lines_changed":99},{"name":"tests/fixtures/centos-7.7/lsof-sudo.out","lines_changed":3390},{"name":"tests/fixtures/centos-7.7/lsof.out","lines_changed":639},{"name":"tests/fixtures/centos-7.7/mount.out","lines_changed":31},{"name":"tests/fixtures/centos-7.7/netstat-l.out","lines_changed":45},{"name":"tests/fixtures/centos-7.7/netstat-p.out","lines_changed":121},{"name":"tests/fixtures/centos-7.7/netstat-sudo-lnp.out","lines_changed":45},{"name":"tests/fixtures/centos-7.7/netstat.out","lines_changed":123},{"name":"tests/fixtures/centos-7.7/ps-axu.out","lines_changed":110},{"name":"tests/fixtures/centos-7.7/ps-ef.out","lines_changed":110},{"name":"tests/fixtures/centos-7.7/route-vn.out","lines_changed":5},{"name":"tests/fixtures/centos-7.7/route.out","lines_changed":5},{"name":"tests/fixtures/centos-7.7/uname-a.out","lines_changed":1},{"name":"tests/fixtures/centos-7.7/uptime.out","lines_changed":1},{"name":"tests/fixtures/centos-7.7/w.out","lines_changed":4},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":48},{"name":"tests/fixtures/ubuntu-18.04/df-h.out","lines_changed":19},{"name":"tests/fixtures/ubuntu-18.04/df.out","lines_changed":19},{"name":"tests/fixtures/ubuntu-18.04/env.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-18.04/free-h.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/free.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/history.out","lines_changed":453},{"name":"tests/fixtures/ubuntu-18.04/ifconfig.out","lines_changed":18},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter-nv.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/iptables-mangle.out","lines_changed":14},{"name":"tests/fixtures/ubuntu-18.04/iptables-nat.out","lines_changed":11},{"name":"tests/fixtures/ubuntu-18.04/iptables-raw.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/jobs.out","lines_changed":4},{"name":"tests/fixtures/ubuntu-18.04/ls-al.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/ls-alh.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/ls.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-18.04/lsblk.out","lines_changed":18},{"name":"tests/fixtures/ubuntu-18.04/lsmod.out","lines_changed":102},{"name":"tests/fixtures/ubuntu-18.04/lsof-sudo.out","lines_changed":2854},{"name":"tests/fixtures/ubuntu-18.04/lsof.out","lines_changed":976},{"name":"tests/fixtures/ubuntu-18.04/mount.out","lines_changed":43},{"name":"tests/fixtures/ubuntu-18.04/netstat-l.out","lines_changed":32},{"name":"tests/fixtures/ubuntu-18.04/netstat-p.out","lines_changed":97},{"name":"tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.out","lines_changed":32},{"name":"tests/fixtures/ubuntu-18.04/netstat.out","lines_changed":97},{"name":"tests/fixtures/ubuntu-18.04/ps-axu.out","lines_changed":173},{"name":"tests/fixtures/ubuntu-18.04/ps-ef.out","lines_changed":173},{"name":"tests/fixtures/ubuntu-18.04/route-vn.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/route.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/uname-a.out","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/uptime.out","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/w.out","lines_changed":4},{"name":"tests/test_df.py","lines_changed":69},{"name":"tests/test_env.py","lines_changed":31},{"name":"tests/test_free.py","lines_changed":67},{"name":"tests/test_history.py","lines_changed":31},{"name":"tests/test_ifconfig.py","lines_changed":77},{"name":"tests/test_iptables.py","lines_changed":299},{"name":"tests/test_jobs.py","lines_changed":37},{"name":"tests/test_ls.py","lines_changed":92},{"name":"tests/test_lsblk.py","lines_changed":43},{"name":"tests/test_lsmod.py","lines_changed":40},{"name":"tests/test_lsof.py","lines_changed":85},{"name":"tests/test_mount.py","lines_changed":48},{"name":"tests/test_netstat.py","lines_changed":47}]},"message":"initial add of tests and fixtures","epoch":1572360926,"epoch_utc":null},{"commit":"579bef079cdd7cfa298bc20e052b8eb75b586f5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 07:54:59 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 29 07:54:59 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":3}]},"message":"move global output variable inside function","epoch":1572360899,"epoch_utc":null},{"commit":"0691cfcab3f5f91908e06ec906d57e548d4e7a1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 26 18:49:43 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 26 18:49:43 2019 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog fix","epoch":1572140983,"epoch_utc":null},{"commit":"db29c7c186601fd4596d3eb121b37100601af907","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 26 18:49:13 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 26 18:49:13 2019 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":4}]},"message":"documentation fixes","epoch":1572140953,"epoch_utc":null},{"commit":"fb1e03637514b5ab02fd4c5df1db8b3cbacdd531","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 20:27:03 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 20:27:03 2019 -0700","stats":{"files_changed":1,"insertions":14,"deletions":10,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":24}]},"message":"formatting","epoch":1572060423,"epoch_utc":null},{"commit":"c3eaf59836538f4ab4c745e87b70115b4a4c5421","merge":"ea0cf0a c9849ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 19:43:24 2019 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Oct 25 19:43:24 2019 -0700","message":"Merge pull request #5 from kellyjonbrazil/dev\n\nDev v1.0.1","epoch":1572057804,"epoch_utc":null},{"commit":"c9849ce0db1f864d33739f8f6f942bf5672bc3b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 19:41:35 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 19:41:35 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"changelog update","epoch":1572057695,"epoch_utc":null},{"commit":"d3c89a3092973a7a8765463fff41c2469ed675cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 19:27:02 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 19:27:02 2019 -0700","stats":{"files_changed":1,"insertions":11,"deletions":9,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":20}]},"message":"check for enough info to parse","epoch":1572056822,"epoch_utc":null},{"commit":"a3d43f27f7bb0835b3593b7c303fe0ee8d896a58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 18:25:33 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 18:25:33 2019 -0700","stats":{"files_changed":1,"insertions":12,"deletions":10,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":22}]},"message":"fix odd uptime text parsing","epoch":1572053133,"epoch_utc":null},{"commit":"f4d9c1b699fa30bd297a40ccf3d5f6e7ba3d4253","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 17:16:02 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 17:16:02 2019 -0700","stats":{"files_changed":1,"insertions":8,"deletions":4,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":12}]},"message":"fix uptime for minutes and hours long uptime","epoch":1572048962,"epoch_utc":null},{"commit":"de647bba4aff84f7b513cf7f6fec8d3933b0d9da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 16:14:32 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 16:14:32 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"documentation update","epoch":1572045272,"epoch_utc":null},{"commit":"d7913070315e5e0c89006942250aaf37e9e3e18e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 16:12:45 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 16:12:45 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"documentation update","epoch":1572045165,"epoch_utc":null},{"commit":"1a4fc204e21f1555ae67c3147322c8d73fab630b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 16:09:31 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 16:09:31 2019 -0700","stats":{"files_changed":2,"insertions":10,"deletions":1,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":10},{"name":"changelog.txt","lines_changed":1}]},"message":"Documentation update","epoch":1572044971,"epoch_utc":null},{"commit":"0328e14c7c65a330093faa52fe48dae6cb173e42","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 16:05:34 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 16:05:34 2019 -0700","stats":{"files_changed":1,"insertions":7,"deletions":0,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":7}]},"message":"handle ctrl-c gracefully","epoch":1572044734,"epoch_utc":null},{"commit":"1acc4d6c29d136e286f82d607c4a3a59e2680b68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 15:52:53 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 15:52:53 2019 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":4}]},"message":"fix uptime parsing for short uptimes","epoch":1572043973,"epoch_utc":null},{"commit":"27245590ce28be933f1a55db4ee6b24783f4b63d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 15:40:53 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 15:40:53 2019 -0700","stats":{"files_changed":1,"insertions":12,"deletions":20,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":32}]},"message":"remove integers","epoch":1572043253,"epoch_utc":null},{"commit":"7ca2a4bdb939293e8d7364f8901ad1fd6d3ee808","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 15:39:48 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 15:39:48 2019 -0700","stats":{"files_changed":5,"insertions":182,"deletions":201,"files":["README.md","changelog.txt","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":199},{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":95},{"name":"jc/parsers/netstat.py","lines_changed":84}]},"message":"remove integer values","epoch":1572043188,"epoch_utc":null},{"commit":"5f1ec6734874651bee595961edf1fafaf5acf001","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 14:58:15 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 14:58:15 2019 -0700","stats":{"files_changed":10,"insertions":473,"deletions":456,"files":["README.md","jc/parsers/df.py","jc/parsers/history.py","jc/parsers/iptables.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/w.py"],"file_stats":[{"name":"README.md","lines_changed":453},{"name":"jc/parsers/df.py","lines_changed":52},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":73},{"name":"jc/parsers/lsmod.py","lines_changed":61},{"name":"jc/parsers/lsof.py","lines_changed":113},{"name":"jc/parsers/ps.py","lines_changed":81},{"name":"jc/parsers/route.py","lines_changed":60},{"name":"jc/parsers/w.py","lines_changed":32}]},"message":"lower() headers","epoch":1572040695,"epoch_utc":null},{"commit":"7e44c4278a75c7223d99200023160e8d77fde54d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:55:38 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 10:55:38 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":2}]},"message":"formatting","epoch":1572026138,"epoch_utc":null},{"commit":"eda726c4a3864008e2f700374b679ae68a965ef8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:55:26 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 10:55:26 2019 -0700","stats":{"files_changed":1,"insertions":80,"deletions":1,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":81}]},"message":"documentation update","epoch":1572026126,"epoch_utc":null},{"commit":"5f8e70d73054f1a106c0e75eee621bc0cefd1c6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:55:09 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 10:55:09 2019 -0700","stats":{"files_changed":9,"insertions":20,"deletions":22,"files":["changelog.txt","jc/parsers/df.py","jc/parsers/free.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/w.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":8},{"name":"jc/parsers/lsmod.py","lines_changed":9},{"name":"jc/parsers/lsof.py","lines_changed":8},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":6}]},"message":"convert headers to lowercase","epoch":1572026109,"epoch_utc":null},{"commit":"25b90546c652cafa9409f02bae1654cb523add88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:39:05 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 10:39:05 2019 -0700","stats":{"files_changed":3,"insertions":14,"deletions":9,"files":["README.md","changelog.txt","jc/parsers/df.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":13}]},"message":"change 'Use%' to 'Use_percent'","epoch":1572025145,"epoch_utc":null},{"commit":"75c084153845757e22c149ea4ae7909d42ec7118","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:32:54 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 10:32:54 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"changelog update","epoch":1572024774,"epoch_utc":null},{"commit":"5b532b9b71fdb9de575da0af9b7989ac537877c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:31:03 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 10:31:03 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":5}]},"message":"minor cleanup","epoch":1572024663,"epoch_utc":null},{"commit":"8c7b3193d131411f8766508fc27b2a6589bba1f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:28:19 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 10:28:19 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":2}]},"message":"documentation change","epoch":1572024499,"epoch_utc":null},{"commit":"0897c96ef3c180a1707e8f56c545f59b3a4e0672","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:22:23 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 10:22:23 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":2}]},"message":"formatting","epoch":1572024143,"epoch_utc":null},{"commit":"57d0ab2ed7f444862546da17cbbe8f8ce67bca8c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:22:10 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 10:22:10 2019 -0700","stats":{"files_changed":2,"insertions":9,"deletions":4,"files":["README.md","jc/parsers/w.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"jc/parsers/w.py","lines_changed":9}]},"message":"change LOGIN@ to LOGIN_AT","epoch":1572024130,"epoch_utc":null},{"commit":"a07d9a0e4bb76d369b4a9bf0d77c7590dc3c2861","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:04:29 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 10:04:29 2019 -0700","stats":{"files_changed":2,"insertions":22,"deletions":13,"files":["README.md","jc/parsers/lsof.py"],"file_stats":[{"name":"README.md","lines_changed":10},{"name":"jc/parsers/lsof.py","lines_changed":25}]},"message":"change SIZE/OFF key to SIZE_OFF","epoch":1572023069,"epoch_utc":null},{"commit":"b3996cb4dfed908d71b292dc0b0136c6675351e6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 09:54:42 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 09:54:42 2019 -0700","stats":{"files_changed":2,"insertions":14,"deletions":10,"files":["README.md","jc/parsers/lsblk.py"],"file_stats":[{"name":"README.md","lines_changed":10},{"name":"jc/parsers/lsblk.py","lines_changed":14}]},"message":"change MAJ:MIN key to MAJ_MIN","epoch":1572022482,"epoch_utc":null},{"commit":"4fa88c1ba38b34f9750625458c465d66f6531bc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 09:53:44 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 09:53:44 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":3}]},"message":"clear out non-ascii chars from data","epoch":1572022424,"epoch_utc":null},{"commit":"c8c5564b29588094721949b96bff1e623437835d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 09:46:03 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 09:46:03 2019 -0700","stats":{"files_changed":2,"insertions":6,"deletions":3,"files":["README.md","jc/parsers/free.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":7}]},"message":"change buff/cache key to buff_cache","epoch":1572021963,"epoch_utc":null},{"commit":"6d047486d9f577bc04d79af839f5eef9657a9d43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:53:56 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 24 17:53:56 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"doc fix","epoch":1571964836,"epoch_utc":null},{"commit":"42bdc058141c4a3ac6f2c8211f9c990590b1b5cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:41:51 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 24 17:41:51 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"changelog fix","epoch":1571964111,"epoch_utc":null},{"commit":"85bfb688862e78d5879df6973b88ba8023fa6086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:33:42 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 24 17:33:42 2019 -0700","stats":{"files_changed":2,"insertions":15,"deletions":10,"files":["README.md","jc/parsers/history.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"jc/parsers/history.py","lines_changed":17}]},"message":"history parser fixes","epoch":1571963622,"epoch_utc":null},{"commit":"08ec21556b553cd7e64932d68e01ba8ff3b0f210","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:12:27 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 24 17:12:27 2019 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/w.py","lines_changed":1}]},"message":"formatting","epoch":1571962347,"epoch_utc":null},{"commit":"320929bf2595026d32b80b80c3e4878db9cf083f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:11:17 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 24 17:11:17 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/env.py"],"file_stats":[{"name":"jc/parsers/env.py","lines_changed":2}]},"message":"documentation update","epoch":1571962277,"epoch_utc":null},{"commit":"41cd489c34502c42602bf64086670ba3b2b8e14b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:09:32 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 24 17:09:32 2019 -0700","stats":{"files_changed":5,"insertions":126,"deletions":0,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/history.py","jc/parsers/uptime.py"],"file_stats":[{"name":"README.md","lines_changed":46},{"name":"changelog.txt","lines_changed":3},{"name":"jc/jc.py","lines_changed":10},{"name":"jc/parsers/history.py","lines_changed":32},{"name":"jc/parsers/uptime.py","lines_changed":35}]},"message":"add history and uptime parsers","epoch":1571962172,"epoch_utc":null},{"commit":"f101d881a16e662e883818749d48e96858fba853","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 16:06:55 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 24 16:06:55 2019 -0700","stats":{"files_changed":4,"insertions":78,"deletions":3,"files":["README.md","jc/jc.py","jc/parsers/w.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":27},{"name":"jc/jc.py","lines_changed":9},{"name":"jc/parsers/w.py","lines_changed":43},{"name":"setup.py","lines_changed":2}]},"message":"add w parser","epoch":1571958415,"epoch_utc":null},{"commit":"fa7466022bb8947c1bbf9f7b01aa4d92300a8992","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 15:54:31 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 24 15:54:31 2019 -0700","stats":{"files_changed":3,"insertions":28,"deletions":56,"files":["README.md","changelog.txt","jc/parsers/env.py"],"file_stats":[{"name":"README.md","lines_changed":37},{"name":"changelog.txt","lines_changed":3},{"name":"jc/parsers/env.py","lines_changed":44}]},"message":"fix env parser","epoch":1571957671,"epoch_utc":null},{"commit":"ea0cf0acf22585fbf8828841cf50155636eae82f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 09:48:35 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 24 09:48:35 2019 -0700","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":3}]},"message":"documentation update","epoch":1571935715,"epoch_utc":null},{"commit":"e7921b65f5a250c10b08f78939f74968047af430","merge":"393e8bc 2cc1b1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 18:41:55 2019 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Oct 23 18:41:55 2019 -0700","message":"Merge pull request #4 from kellyjonbrazil/dev\n\nDev v0.9.1","epoch":1571881315,"epoch_utc":null},{"commit":"2cc1b1bd5451f31d71b0e2236bdee0ce2b25b5d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 18:39:24 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 18:39:24 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"version bump","epoch":1571881164,"epoch_utc":null},{"commit":"58ae976db0165730a75dd7450c698d2727a354ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 18:30:55 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 18:30:55 2019 -0700","stats":{"files_changed":3,"insertions":113,"deletions":4,"files":["README.md","jc/parsers/lsmod.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":55},{"name":"jc/parsers/lsmod.py","lines_changed":60},{"name":"setup.py","lines_changed":2}]},"message":"documentation update","epoch":1571880655,"epoch_utc":null},{"commit":"66772392ae78ef394e22070b127416b1d5b01332","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 18:04:54 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 18:04:54 2019 -0700","stats":{"files_changed":3,"insertions":32,"deletions":0,"files":["changelog.txt","jc/jc.py","jc/parsers/lsmod.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/lsmod.py","lines_changed":26}]},"message":"add lsmod parser","epoch":1571879094,"epoch_utc":null},{"commit":"29c47c03a64f9c6b0f44d34be5449396654849b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 17:37:25 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 17:37:25 2019 -0700","stats":{"files_changed":3,"insertions":134,"deletions":2,"files":["README.md","changelog.txt","jc/parsers/lsof.py"],"file_stats":[{"name":"README.md","lines_changed":68},{"name":"changelog.txt","lines_changed":3},{"name":"jc/parsers/lsof.py","lines_changed":65}]},"message":"documentation update","epoch":1571877445,"epoch_utc":null},{"commit":"91eb9a4d13e9254bd5bbde931196904c1947a28e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 17:27:23 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 17:27:23 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":4}]},"message":"use None instead of --","epoch":1571876843,"epoch_utc":null},{"commit":"a1a3de32ec14d6ef433e334b9694856698c26d41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 17:22:25 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 17:22:25 2019 -0700","stats":{"files_changed":2,"insertions":59,"deletions":0,"files":["jc/jc.py","jc/parsers/lsof.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/lsof.py","lines_changed":54}]},"message":"add lsof parser","epoch":1571876545,"epoch_utc":null},{"commit":"9c47fd05bf716c2e18ebf4da41b1a46b972b2518","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 14:11:13 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 14:11:13 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":2}]},"message":"doco fix","epoch":1571865073,"epoch_utc":null},{"commit":"649c0aa7c157f87691cc8eeac64c747e81f63594","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 14:10:10 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 14:10:10 2019 -0700","stats":{"files_changed":2,"insertions":76,"deletions":1,"files":["README.md","jc/parsers/jobs.py"],"file_stats":[{"name":"README.md","lines_changed":39},{"name":"jc/parsers/jobs.py","lines_changed":38}]},"message":"add documentation","epoch":1571865010,"epoch_utc":null},{"commit":"3db758764e50666e5ae40de8d89180de2ef5bc28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 14:05:47 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 14:05:47 2019 -0700","stats":{"files_changed":3,"insertions":83,"deletions":0,"files":["changelog.txt","jc/jc.py","jc/parsers/jobs.py"],"file_stats":[{"name":"changelog.txt","lines_changed":6},{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":72}]},"message":"add jobs parser","epoch":1571864747,"epoch_utc":null},{"commit":"802f1510eb6d621f9c760f28b83f16a4781b8d93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 10:27:05 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 10:27:05 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":2}]},"message":"tighten if statements","epoch":1571851625,"epoch_utc":null},{"commit":"56901788dee154890e70269ad48d4b22bb8c5437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 09:51:29 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 09:51:29 2019 -0700","stats":{"files_changed":1,"insertions":30,"deletions":19,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":49}]},"message":"stop blocking when no pipe and enhance help text","epoch":1571849489,"epoch_utc":null},{"commit":"679ae6d5dc7af26240dc00d8bc6499950f81d457","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 09:20:11 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 09:20:11 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1571847611,"epoch_utc":null},{"commit":"b15c8c352a87a9b3b1dece28af0287ef71ca02d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 08:46:54 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 08:46:54 2019 -0700","stats":{"files_changed":1,"insertions":14,"deletions":16,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":30}]},"message":"simplify state variables","epoch":1571845614,"epoch_utc":null},{"commit":"393e8bc56041a4be01b6c0b2f98895aa330afd04","merge":"e3750b4 976fd7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 17:26:40 2019 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Oct 22 17:26:40 2019 -0700","message":"Merge pull request #3 from kellyjonbrazil/dev\n\nDev v0.8.1","epoch":1571790400,"epoch_utc":null},{"commit":"976fd7d9bd49190a8b28ea5acf5af8979cdec537","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 17:24:56 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 17:24:56 2019 -0700","stats":{"files_changed":1,"insertions":27,"deletions":28,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":55}]},"message":"readme update","epoch":1571790296,"epoch_utc":null},{"commit":"d8337870cad042cdcc6a4ff3c61f756c3430fa96","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 17:21:00 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 17:21:00 2019 -0700","stats":{"files_changed":1,"insertions":27,"deletions":28,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":55}]},"message":"update documentation","epoch":1571790060,"epoch_utc":null},{"commit":"39a8aec77f5134b5b958e3f679910a1c3512e13a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 17:15:02 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 17:15:02 2019 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/parsers/ls.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"v0.8.1 build","epoch":1571789702,"epoch_utc":null},{"commit":"306d539b6bbfb272c7b955e4847adc3a6b4afa5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 16:50:01 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 16:50:01 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"readme update","epoch":1571788201,"epoch_utc":null},{"commit":"f3087b8a8ede88834285bb5d0655fc96341c174c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 16:40:27 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 16:40:27 2019 -0700","stats":{"files_changed":3,"insertions":635,"deletions":1,"files":["README.md","changelog.txt","jc/parsers/iptables.py"],"file_stats":[{"name":"README.md","lines_changed":319},{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/iptables.py","lines_changed":316}]},"message":"update readme and formatting","epoch":1571787627,"epoch_utc":null},{"commit":"414c2ecef88af2d2c098e6acfb507a5fd7bb8eda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 16:32:55 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 16:32:55 2019 -0700","stats":{"files_changed":1,"insertions":6,"deletions":10,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":16}]},"message":"fix iptables parser","epoch":1571787175,"epoch_utc":null},{"commit":"776ef2d1be81180b8b295fbc587446a326f2f7a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 15:42:29 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 15:42:29 2019 -0700","stats":{"files_changed":2,"insertions":61,"deletions":0,"files":["jc/jc.py","jc/parsers/iptables.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/iptables.py","lines_changed":56}]},"message":"add iptables parser","epoch":1571784149,"epoch_utc":null},{"commit":"9ac57469967443b195be09d580beaa76ce0e1095","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 13:28:15 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 13:28:15 2019 -0700","stats":{"files_changed":4,"insertions":64,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/uname.py"],"file_stats":[{"name":"README.md","lines_changed":15},{"name":"changelog.txt","lines_changed":1},{"name":"jc/jc.py","lines_changed":7},{"name":"jc/parsers/uname.py","lines_changed":42}]},"message":"add uname parser","epoch":1571776095,"epoch_utc":null},{"commit":"a3e55d97c0fd4397b42e9146afb0ba9558274fdb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 12:54:41 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 12:54:41 2019 -0700","stats":{"files_changed":4,"insertions":127,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/mount.py"],"file_stats":[{"name":"README.md","lines_changed":45},{"name":"changelog.txt","lines_changed":1},{"name":"jc/jc.py","lines_changed":7},{"name":"jc/parsers/mount.py","lines_changed":75}]},"message":"add mount parser","epoch":1571774081,"epoch_utc":null},{"commit":"b15227e7ba5377e5fb6799d1b9e4ed5a11c6d92f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:55:11 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 11:55:11 2019 -0700","stats":{"files_changed":4,"insertions":125,"deletions":0,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/lsblk.py"],"file_stats":[{"name":"README.md","lines_changed":49},{"name":"changelog.txt","lines_changed":1},{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/lsblk.py","lines_changed":70}]},"message":"add lsblk parser","epoch":1571770511,"epoch_utc":null},{"commit":"ec3d1f84ceccb492b4c968938714fafa2e6a6321","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:26:58 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 11:26:58 2019 -0700","stats":{"files_changed":1,"insertions":24,"deletions":2,"files":["jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/free.py","lines_changed":26}]},"message":"fix free parser","epoch":1571768818,"epoch_utc":null},{"commit":"753d5fd9fe5a8e4b67b1a0ec018a9f811e27f8bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:17:21 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 11:17:21 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"readme update","epoch":1571768241,"epoch_utc":null},{"commit":"73a0d70c9294ad392792e690a7bfbcc4f51b0a5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:15:44 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 11:15:44 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"readme update","epoch":1571768144,"epoch_utc":null},{"commit":"c2c189f3e6e900e5f3d35df9a9b9d033448baff6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:14:19 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 11:14:19 2019 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":5}]},"message":"readme update","epoch":1571768059,"epoch_utc":null},{"commit":"36bc55a3109278d663b675a09829200f5474c3d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:11:41 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 11:11:41 2019 -0700","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"fix df","epoch":1571767901,"epoch_utc":null},{"commit":"a023001cd350e320ce30f47af214ed7a9bb43185","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:10:11 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 11:10:11 2019 -0700","stats":{"files_changed":6,"insertions":226,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/df.py","jc/parsers/env.py","jc/parsers/free.py"],"file_stats":[{"name":"README.md","lines_changed":73},{"name":"changelog.txt","lines_changed":5},{"name":"jc/jc.py","lines_changed":17},{"name":"jc/parsers/df.py","lines_changed":56},{"name":"jc/parsers/env.py","lines_changed":53},{"name":"jc/parsers/free.py","lines_changed":23}]},"message":"add df, env, and free parsers","epoch":1571767811,"epoch_utc":null},{"commit":"e3750b49628794fd4d563013b1f3a7471c27ce68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 07:40:42 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 07:40:42 2019 -0700","stats":{"files_changed":2,"insertions":83,"deletions":51,"files":["README.md","jc/__init__.py"],"file_stats":[{"name":"README.md","lines_changed":30},{"name":"jc/__init__.py","lines_changed":104}]},"message":"documentation enhancements","epoch":1571755242,"epoch_utc":null},{"commit":"b5ea08e55bfd22c9da5ba73c124791012df119a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 18:22:51 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 18:22:51 2019 -0700","stats":{"files_changed":4,"insertions":20,"deletions":20,"files":["README.md","changelog.txt","jc/parsers/netstat.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":16},{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":20},{"name":"setup.py","lines_changed":2}]},"message":"fix transport protocol","epoch":1571707371,"epoch_utc":null},{"commit":"8e71b8e3522b9b1af4d869a0854223eb5c300b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 18:11:51 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 18:11:51 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"fix jq example","epoch":1571706711,"epoch_utc":null},{"commit":"4c8610c54ff4b643237d8f0e4c5781c277fc39f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:59:32 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 17:59:32 2019 -0700","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"setup.py","lines_changed":2}]},"message":"fixed build","epoch":1571705972,"epoch_utc":null},{"commit":"c8f886dc8fcdc58f8471d68c3d583200d0ea2f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:56:53 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 17:56:53 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":2}]},"message":"fix example","epoch":1571705813,"epoch_utc":null},{"commit":"4cfc2d22b3f9fd6f0cde8ad206edd7fe260b3071","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:38:40 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 17:38:40 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"update changelog","epoch":1571704720,"epoch_utc":null},{"commit":"59238c85408117748e78c5e87157381a828f3782","merge":"d54d906 30080c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:36:33 2019 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Oct 21 17:36:33 2019 -0700","message":"Merge pull request #2 from kellyjonbrazil/dev\n\nDev v0.6.2","epoch":1571704593,"epoch_utc":null},{"commit":"30080c01659cf611666876b7b063b7b329822352","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:26:00 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 17:26:00 2019 -0700","stats":{"files_changed":1,"insertions":35,"deletions":35,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":70}]},"message":"reorder parsers","epoch":1571703960,"epoch_utc":null},{"commit":"fab80bb3b4a1897da29d818e98e9b80ce45443dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:20:12 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 17:20:12 2019 -0700","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["README.md","setup.py"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"setup.py","lines_changed":2}]},"message":"readme update","epoch":1571703612,"epoch_utc":null},{"commit":"a9f2df805421754afb8e8adbcac7f2d3bd06c9ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 14:27:26 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 14:27:26 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":3}]},"message":"move parsed_line var lower","epoch":1571693246,"epoch_utc":null},{"commit":"1d110be6cb25d169ae0dde6532cbcdf05d93d42f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 14:13:31 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 14:13:31 2019 -0700","stats":{"files_changed":3,"insertions":13,"deletions":1,"files":["README.md","changelog.txt","setup.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"changelog.txt","lines_changed":4},{"name":"setup.py","lines_changed":2}]},"message":"update doco","epoch":1571692411,"epoch_utc":null},{"commit":"be81b5e1ed93eb65e5dbed4f52905439cde86f62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 13:47:22 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 13:47:22 2019 -0700","stats":{"files_changed":1,"insertions":112,"deletions":121,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":233}]},"message":"readme update","epoch":1571690842,"epoch_utc":null},{"commit":"5f88f7d8a071306be92cbfb65d6d62c5a68159f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 13:41:53 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 13:41:53 2019 -0700","stats":{"files_changed":1,"insertions":110,"deletions":137,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":247}]},"message":"netstat cleanup","epoch":1571690513,"epoch_utc":null},{"commit":"e57c7cc8ef3102cc41dee4ea5fd33d40ba666491","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 13:23:29 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 13:23:29 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":2}]},"message":"change output from dict to list","epoch":1571689409,"epoch_utc":null},{"commit":"b216627c1073ea645029e341b4d3376601e5468e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 13:19:00 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 13:19:00 2019 -0700","stats":{"files_changed":1,"insertions":19,"deletions":116,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":135}]},"message":"flatten netstat output","epoch":1571689140,"epoch_utc":null},{"commit":"6e925eab131024b5746d870cbd47e2791acf18bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 13:07:30 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 13:07:30 2019 -0700","stats":{"files_changed":1,"insertions":27,"deletions":18,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":45}]},"message":"clean up arg parsing","epoch":1571688450,"epoch_utc":null},{"commit":"d54d906c571b4683f01cab2eca63ae5f0725a87b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 19:03:11 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 19:03:11 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update readme","epoch":1571450591,"epoch_utc":null},{"commit":"0040febbf099ed8ab35f6ee343750fcf89f2e739","merge":"8073d15 e416c77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 18:57:32 2019 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Oct 18 18:57:32 2019 -0700","message":"Merge pull request #1 from kellyjonbrazil/dev\n\nDev v0.5.5","epoch":1571450252,"epoch_utc":null},{"commit":"e416c77bed1267254da972b0f95b7ff1d43fccef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 18:56:26 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 18:56:26 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"version bump","epoch":1571450186,"epoch_utc":null},{"commit":"9181d242aaed5219bb35fde01d672be88949cceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 18:47:20 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 18:47:20 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"bump version","epoch":1571449640,"epoch_utc":null},{"commit":"d6f94c53a4df84fb75554605477e49536a809dc2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 18:46:25 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 18:46:25 2019 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"fix blank output case in ls","epoch":1571449585,"epoch_utc":null},{"commit":"a9294f32a00709737d0b82ff434a311e75ad0bed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 18:40:56 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 18:40:56 2019 -0700","stats":{"files_changed":3,"insertions":39,"deletions":42,"files":["changelog.txt","jc/parsers/ls.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":7},{"name":"jc/parsers/ls.py","lines_changed":72},{"name":"setup.py","lines_changed":2}]},"message":"ls fixes","epoch":1571449256,"epoch_utc":null},{"commit":"4d93b38fe47329e3175025878e87f7c963061f98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 14:18:34 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 14:18:34 2019 -0700","stats":{"files_changed":2,"insertions":90,"deletions":1,"files":["README.md","jc/parsers/route.py"],"file_stats":[{"name":"README.md","lines_changed":47},{"name":"jc/parsers/route.py","lines_changed":44}]},"message":"add route documentation","epoch":1571433514,"epoch_utc":null},{"commit":"77b74c550795f96b808e48a9b0bfd1a8af9866f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:59:30 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 13:59:30 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"add route parser","epoch":1571432370,"epoch_utc":null},{"commit":"51a1d3e6f48cf7084267be4092f0dd3f778dcef3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:51:36 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 13:51:36 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1571431896,"epoch_utc":null},{"commit":"2eba30422b44f648c7356a44cbff7416c6648f19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:43:49 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 13:43:49 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":2}]},"message":"skip first line","epoch":1571431429,"epoch_utc":null},{"commit":"43ed09ce5ba53261dfd7ef50a2e187cb524c416c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:38:11 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 13:38:11 2019 -0700","stats":{"files_changed":3,"insertions":25,"deletions":1,"files":["jc/jc.py","jc/parsers/route.py","setup.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":3},{"name":"jc/parsers/route.py","lines_changed":21},{"name":"setup.py","lines_changed":2}]},"message":"add route parser","epoch":1571431091,"epoch_utc":null},{"commit":"367ab54f94bf7f456377ec9d20f8daf99dbdc1ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:34:28 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 13:34:28 2019 -0700","stats":{"files_changed":3,"insertions":99,"deletions":2,"files":["README.md","changelog.txt","jc/parsers/ps.py"],"file_stats":[{"name":"README.md","lines_changed":53},{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":46}]},"message":"formatting","epoch":1571430868,"epoch_utc":null},{"commit":"4f552e370e656cc1882a7dae231475a016f8aa14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:26:24 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 13:26:24 2019 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":4}]},"message":"acknowledgment","epoch":1571430384,"epoch_utc":null},{"commit":"7571139f7980f6e74c29d46971881e82ab0f04bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:20:38 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 13:20:38 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"bump version","epoch":1571430038,"epoch_utc":null},{"commit":"8ec1bec31711d2ef487da3e4a29a842d98d77626","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:19:39 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 13:19:39 2019 -0700","stats":{"files_changed":4,"insertions":29,"deletions":7,"files":["changelog.txt","jc/__init__.py","jc/jc.py","jc/parsers/ps.py"],"file_stats":[{"name":"changelog.txt","lines_changed":10},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/jc.py","lines_changed":3},{"name":"jc/parsers/ps.py","lines_changed":21}]},"message":"add ps parser","epoch":1571429979,"epoch_utc":null},{"commit":"c04895407f203aa0a3a080d5242faf8f6889ae41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 12:57:02 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 12:57:02 2019 -0700","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["changelog.txt","jc/parsers/netstat.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":9}]},"message":"ubuntu fixes","epoch":1571428622,"epoch_utc":null},{"commit":"cec73d61310591e4890605f61dc5c1bef5808ec4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 09:57:22 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 09:57:22 2019 -0700","stats":{"files_changed":4,"insertions":24,"deletions":16,"files":["jc/jc.py","jc/parsers/ifconfig.py","jc/parsers/ls.py","jc/parsers/netstat.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":7},{"name":"jc/parsers/ifconfig.py","lines_changed":7},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"jc/parsers/netstat.py","lines_changed":23}]},"message":"linting","epoch":1571417842,"epoch_utc":null},{"commit":"756c2bc9acd60111281b76085a40778e51ca06cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 09:57:10 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 09:57:10 2019 -0700","stats":{"files_changed":1,"insertions":20,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":23}]},"message":"add acknowledgments","epoch":1571417830,"epoch_utc":null},{"commit":"084048987c7afc6516f69e68d37d73b2402dc7f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 17:59:46 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 17:59:46 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"changelog update","epoch":1571360386,"epoch_utc":null},{"commit":"02d97394dd76a8782e6e7d3f8a85e1aed05e796b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 17:28:14 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 17:28:14 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update","epoch":1571358494,"epoch_utc":null},{"commit":"177f948f9740e3e33449b04b9136a346c9a2c265","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 16:11:55 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 16:11:55 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version update","epoch":1571353915,"epoch_utc":null},{"commit":"c2b013150ec1f1b1ab7d416f1aa8a62165a5bb95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 15:51:39 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 15:51:39 2019 -0700","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":9}]},"message":"add changelog","epoch":1571352699,"epoch_utc":null},{"commit":"0bec67c29ce5d965271440da41a0c4b4c2a1f0fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 15:39:12 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 15:39:12 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":4}]},"message":"double quotes to single quotes","epoch":1571351952,"epoch_utc":null},{"commit":"8073d15fe11546a17cacd81409e255bb8aecd602","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 15:03:32 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 15:03:32 2019 -0700","stats":{"files_changed":1,"insertions":12,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":16}]},"message":"readme update","epoch":1571349812,"epoch_utc":null},{"commit":"3b74afc39e58f801e75b7105e521c1469d30f991","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 15:00:42 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 15:00:42 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["pypi-upload.sh"],"file_stats":[{"name":"pypi-upload.sh","lines_changed":2}]},"message":"upload script","epoch":1571349642,"epoch_utc":null},{"commit":"ed320cf0f4bb11cee1e69e9dc9176ba109df1b86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 13:04:34 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 13:04:34 2019 -0700","stats":{"files_changed":3,"insertions":22,"deletions":22,"files":["README.md","jc/parsers/netstat.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":20},{"name":"jc/parsers/netstat.py","lines_changed":22},{"name":"setup.py","lines_changed":2}]},"message":"change netstat pid field to integer","epoch":1571342674,"epoch_utc":null},{"commit":"021b6924e24e1cf0f971246244b174cd3181c0a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 12:15:27 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 12:15:27 2019 -0700","stats":{"files_changed":2,"insertions":254,"deletions":5,"files":["README.md","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":124},{"name":"jc/parsers/netstat.py","lines_changed":135}]},"message":"documentation updates","epoch":1571339727,"epoch_utc":null},{"commit":"5fb21b077662f1cb172741945ba5036e5a280638","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 12:09:05 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 12:09:05 2019 -0700","stats":{"files_changed":1,"insertions":0,"deletions":8,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":8}]},"message":"remove debug print statements","epoch":1571339345,"epoch_utc":null},{"commit":"7b8540ae2a60f2400fe672a022ee00d1415a3500","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 12:07:01 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 12:07:01 2019 -0700","stats":{"files_changed":1,"insertions":19,"deletions":7,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":26}]},"message":"netstat fixes","epoch":1571339221,"epoch_utc":null},{"commit":"a5e039d4c2e07d52a0797833685c562ab285b49b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 10:54:37 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 10:54:37 2019 -0700","stats":{"files_changed":1,"insertions":17,"deletions":7,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":24}]},"message":"netstat debugging","epoch":1571334877,"epoch_utc":null},{"commit":"7071f60a302b7aefb8fb312699b0abec25548986","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 09:05:49 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 09:05:49 2019 -0700","stats":{"files_changed":1,"insertions":66,"deletions":18,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":84}]},"message":"netstat mvp","epoch":1571328349,"epoch_utc":null},{"commit":"0de1dff0253eb46b7336103f62f888940406ccc0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 08:09:19 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 08:09:19 2019 -0700","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":48}]},"message":"fix ands","epoch":1571324959,"epoch_utc":null},{"commit":"b3c52eb1ccf82e899dda62c332c0b217d80eb4c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 08:03:56 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 08:03:56 2019 -0700","stats":{"files_changed":2,"insertions":112,"deletions":40,"files":["jc/parsers/ifconfig.py","jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":150}]},"message":"add netstat parser","epoch":1571324636,"epoch_utc":null},{"commit":"366c5dbc010869bdb1d3b9d852e10510bd5c266f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 17:36:50 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 17:36:50 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":4}]},"message":"fix help message","epoch":1571272610,"epoch_utc":null},{"commit":"a3ee02514b5fbd43a38ddf515a4aad49bb4e161a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 17:23:18 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 17:23:18 2019 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":12}]},"message":"fix imports and module names","epoch":1571271798,"epoch_utc":null},{"commit":"46ad1269cb58dc6f064d17eb0b04da62d8fd5fce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 17:15:43 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 17:15:43 2019 -0700","stats":{"files_changed":2,"insertions":4,"deletions":3,"files":["jc/jc.py","setup.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":6},{"name":"setup.py","lines_changed":1}]},"message":"packaging fixes","epoch":1571271343,"epoch_utc":null},{"commit":"7234afe568818678585ac423649a0ccce0f45d68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 16:22:52 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 16:22:52 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"entrypoint fix","epoch":1571268172,"epoch_utc":null},{"commit":"caf480c63aacb518805d48fba0fd454959d11023","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 16:01:34 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 16:01:34 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"module fix","epoch":1571266894,"epoch_utc":null},{"commit":"62851b48d5e5cd673e630a28996e1c24cc45aa58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 15:54:20 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 15:54:20 2019 -0700","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/jc.py","setup.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":12},{"name":"setup.py","lines_changed":2}]},"message":"fix modules","epoch":1571266460,"epoch_utc":null},{"commit":"46d6da92f0e196e150ab9dd44b1ba290c950905b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 15:08:06 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 15:08:06 2019 -0700","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["jc/{jc => jc.py}","setup.py"],"file_stats":[{"name":"jc/{jc => jc.py}","lines_changed":0},{"name":"setup.py","lines_changed":2}]},"message":"fix entry_points","epoch":1571263686,"epoch_utc":null},{"commit":"e572b2edfa993c5049ef3caeda7a8e4797f0c751","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 15:03:34 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 15:03:34 2019 -0700","stats":{"files_changed":2,"insertions":37,"deletions":29,"files":["jc/jc","setup.py"],"file_stats":[{"name":"jc/jc","lines_changed":58},{"name":"setup.py","lines_changed":8}]},"message":"use entry_points instead of scripts","epoch":1571263414,"epoch_utc":null},{"commit":"72c69e7de59029d623c9819dda6aa8cae91bc419","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 09:39:04 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 09:39:04 2019 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/jc"],"file_stats":[{"name":"jc/jc","lines_changed":12}]},"message":"fix package paths","epoch":1571243944,"epoch_utc":null},{"commit":"4d1565071e5cf7c38e026e08db8f4d2e79969691","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 09:03:05 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 09:03:05 2019 -0700","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["jc/{jc.py => jc}","setup.py"],"file_stats":[{"name":"jc/{jc.py => jc}","lines_changed":0},{"name":"setup.py","lines_changed":2}]},"message":"rename jc.py to jc","epoch":1571241785,"epoch_utc":null},{"commit":"3652e51693d7ba829f4699fd80de20856941d82f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 08:27:24 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 08:27:24 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"fix requirements","epoch":1571239644,"epoch_utc":null},{"commit":"49ce9f13e817266659400a8c19f5b078a48589df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 15 18:03:51 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 15 18:03:51 2019 -0700","stats":{"files_changed":3,"insertions":17,"deletions":20,"files":["jc/jc.py","jc/parsers/__init__.py","setup.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/__init__.py","lines_changed":5},{"name":"setup.py","lines_changed":27}]},"message":"setup updates","epoch":1571187831,"epoch_utc":null},{"commit":"e83170b7ec7ed2123bfde69be263b6034c7afa53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 15 16:28:42 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 15 16:28:42 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"readme update","epoch":1571182122,"epoch_utc":null},{"commit":"ffb6eb754a87baad5fb0558e30a5bca1a9b9e0a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 15 16:10:24 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 15 16:10:24 2019 -0700","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/parsers/__init__.py","setup.py"],"file_stats":[{"name":"jc/parsers/__init__.py","lines_changed":8},{"name":"setup.py","lines_changed":6}]},"message":"setup fixes","epoch":1571181024,"epoch_utc":null},{"commit":"2597a18d95d01109d2250487b7550a501edaf77b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 15 15:32:23 2019 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Oct 15 15:32:23 2019 -0700","stats":{"files_changed":1,"insertions":82,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":82}]},"message":"readme update","epoch":1571178743,"epoch_utc":null},{"commit":"3e576250b1bfe1c62c556f2fa0425103b0ede1f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 15 15:06:09 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 15 15:06:09 2019 -0700","stats":{"files_changed":11,"insertions":429,"deletions":0,"files":[".gitignore","LICENSE.md","README.md","build-package.sh","jc/__init__.py","jc/jc.py","jc/parsers/__init__.py","jc/parsers/ifconfig.py","jc/parsers/ls.py","jc/parsers/netstat.py","setup.py"],"file_stats":[{"name":".gitignore","lines_changed":6},{"name":"LICENSE.md","lines_changed":21},{"name":"README.md","lines_changed":53},{"name":"build-package.sh","lines_changed":5},{"name":"jc/__init__.py","lines_changed":61},{"name":"jc/jc.py","lines_changed":38},{"name":"jc/parsers/__init__.py","lines_changed":3},{"name":"jc/parsers/ifconfig.py","lines_changed":30},{"name":"jc/parsers/ls.py","lines_changed":130},{"name":"jc/parsers/netstat.py","lines_changed":55},{"name":"setup.py","lines_changed":27}]},"message":"First commit","epoch":1571177169,"epoch_utc":null}] diff --git a/tests/fixtures/generic/git-log-fuller-stat.json b/tests/fixtures/generic/git-log-fuller-stat.json index 87c924dd..6f41169b 100644 --- a/tests/fixtures/generic/git-log-fuller-stat.json +++ b/tests/fixtures/generic/git-log-fuller-stat.json @@ -1 +1 @@ -[{"commit":"096fffdb79807d34b99985b38df0a3df7f6a86c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 20 10:03:36 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 20 10:03:36 2022 -0400","stats":{"files_changed":2,"insertions":120,"deletions":36,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"]},"message":"use stat examples","epoch":1650474216,"epoch_utc":null},{"commit":"728d882ed007b3c8b785018874a0eb06e1143b66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 20 09:50:19 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 20 09:50:19 2022 -0400","stats":{"files_changed":2,"insertions":90,"deletions":12,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"]},"message":"add timestamp docs and examples","epoch":1650473419,"epoch_utc":null},{"commit":"b53e42aca623181aa9bc72194e6eeef1e9a3a237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 20 09:44:42 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 20 09:44:42 2022 -0400","stats":{"files_changed":5,"insertions":29,"deletions":6,"files":["docs/parsers/git_log.md","docs/utils.md","jc/parsers/git_log.py","jc/utils.py","man/jc.1"]},"message":"add calculated timestamp","epoch":1650473082,"epoch_utc":null},{"commit":"477329ce5b8f5c2a8e4384ba3f59289fc18c957d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 20 08:26:26 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 20 08:26:26 2022 -0400","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add linefeed to version text","epoch":1650468386,"epoch_utc":null},{"commit":"283dc4efd55030188f17c7e1dfbc5315103494b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 17:44:15 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 17:44:15 2022 -0400","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["CHANGELOG","jc/cli.py"]},"message":"add python interpreter version and path to -v and -a output","epoch":1650415455,"epoch_utc":null},{"commit":"d490bbcaa0291a691b95fa5b61807eebb0b088eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 15:26:31 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 15:26:31 2022 -0400","stats":{"files_changed":1,"insertions":26,"deletions":26,"files":["CHANGELOG"]},"message":"normalize add/update","epoch":1650407191,"epoch_utc":null},{"commit":"f49ddf8e5c5009702155fc62d83c63e3c08c594d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 15:18:04 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 15:18:04 2022 -0400","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"]},"message":"doc update","epoch":1650406684,"epoch_utc":null},{"commit":"e1e341652b51b823844e76ef7e68f9373a323435","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 15:10:40 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 15:10:40 2022 -0400","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"doc update","epoch":1650406240,"epoch_utc":null},{"commit":"ecda667549137bed5622cca69f2022e7a75ea833","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 15:10:35 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 15:10:35 2022 -0400","stats":{"files_changed":2,"insertions":12,"deletions":8,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"]},"message":"process integers","epoch":1650406235,"epoch_utc":null},{"commit":"a0d96a188a9f875b2d59625aa97d4f80bba290f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 14:45:20 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 14:45:20 2022 -0400","stats":{"files_changed":2,"insertions":5,"deletions":1,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"]},"message":"doc update","epoch":1650404720,"epoch_utc":null},{"commit":"6c0f0cddfe4dd2d5169f7c55416c6725912557f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 14:43:47 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 14:43:47 2022 -0400","stats":{"files_changed":2,"insertions":14,"deletions":1,"files":["jc/parsers/yaml.py","tests/test_yaml.py"]},"message":"fix for datetime objects in yaml files","epoch":1650404627,"epoch_utc":null},{"commit":"c7173ecd89742c8cf8a7bc4a8021baac5c3cd483","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 14:34:53 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 14:34:53 2022 -0400","stats":{"files_changed":1,"insertions":8,"deletions":6,"files":["jc/parsers/git_log.py"]},"message":"fix mypy issues","epoch":1650404093,"epoch_utc":null},{"commit":"e98240c905394e3ebd6a45fa31b6d432c150afc4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 14:20:44 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 14:20:44 2022 -0400","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/git_log.py"]},"message":"extend instead of append list","epoch":1650403244,"epoch_utc":null},{"commit":"6cb7e25974b11afe57d7d0e8550b3b1a56b14c67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 13:17:24 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 13:17:24 2022 -0400","stats":{"files_changed":3,"insertions":93,"deletions":1,"files":["README.md","docs/parsers/git_log.md","man/jc.1"]},"message":"add docs","epoch":1650399444,"epoch_utc":null},{"commit":"c37980c05c7fbd4f811ce5fcfcfddaf5f3ab5414","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 13:17:16 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 13:17:16 2022 -0400","stats":{"files_changed":1,"insertions":41,"deletions":7,"files":["jc/parsers/git_log.py"]},"message":"add stat support","epoch":1650399436,"epoch_utc":null},{"commit":"b5943bd39d776fc4c3b3dea03c0f3d4b6f4bb260","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 10:32:55 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 10:32:55 2022 -0400","stats":{"files_changed":1,"insertions":23,"deletions":10,"files":["jc/parsers/git_log.py"]},"message":"initial docstring","epoch":1650389575,"epoch_utc":null},{"commit":"49a3a7db3b2b0b292489a41691c9dcbce816cfed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 09:30:38 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 09:30:38 2022 -0400","stats":{"files_changed":2,"insertions":175,"deletions":0,"files":["jc/lib.py","jc/parsers/git_log.py"]},"message":"initial git-log parser","epoch":1650385838,"epoch_utc":null},{"commit":"0c55240e9da30ac4293cc324f1094de2abd3da91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 13 10:54:28 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 13 10:54:28 2022 -0700","stats":{"files_changed":3,"insertions":1,"deletions":0,"files":["CHANGELOG","tests/{ => templates}/_test_foo.py","tests/{ => templates}/_test_foo_s.py"]},"message":"move test templates to fix test failures on some systems","epoch":1649872468,"epoch_utc":null},{"commit":"f91988aed5499d25acf7a7e87b2b0d0cd37b62af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 12 14:22:06 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 12 14:22:06 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/lib.md"]},"message":"iterator -> iterable","epoch":1649798526,"epoch_utc":null},{"commit":"3c3ad9fc6adf865b3814a1f03814d0bc17d1c6bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 12 14:20:58 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 12 14:20:58 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"iterator -> iterable in doc","epoch":1649798458,"epoch_utc":null},{"commit":"291ab79e22a59cb31814e7a5af9dbc9f2ec863e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 12 11:07:34 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 12 11:07:34 2022 -0700","stats":{"files_changed":3,"insertions":24,"deletions":24,"files":["README.md","man/jc.1","templates/readme_template"]},"message":"fix arch linux command","epoch":1649786854,"epoch_utc":null},{"commit":"e6d5892c146762cd41a966adadb77db333d98ace","merge":"c0414e7 dcca7a5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 12 11:02:37 2022 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Apr 12 11:02:37 2022 -0700","message":"Merge pull request #226 from kellyjonbrazil/master\n\nsync to dev","epoch":1649786557,"epoch_utc":null},{"commit":"dcca7a57d558721a61fbba44f07b1d53116827e1","merge":"7138eef 4ee8a69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 12 11:00:51 2022 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Apr 12 11:00:51 2022 -0700","message":"Merge pull request #225 from adrianteri/patch-1\n\nUpdate README","epoch":1649786451,"epoch_utc":null},{"commit":"4ee8a69337b24e199983fe657643abcb0a56a8e6","author":"003","author_email":"adriateri@gmail.com","date":"Tue Apr 12 20:53:39 2022 +0300","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Apr 12 20:53:39 2022 +0300","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"Update README\n\nSpecify the Arch package is in the AUR and NOT in the standard Archlinux repositories.","epoch":1649822019,"epoch_utc":null},{"commit":"c0414e7db7f5d785b72ad616517f2ec63af151a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 17:18:20 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 10 17:18:20 2022 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["docgen.sh"]},"message":"clean up background tasks","epoch":1649636300,"epoch_utc":null},{"commit":"a419175fe6dffe9c5fd20cfbd82ee552bc82a993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 17:14:34 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 10 17:14:34 2022 -0700","stats":{"files_changed":2,"insertions":34,"deletions":17,"files":["docgen.sh","updatedocs.sh"]},"message":"enhance parallelization","epoch":1649636074,"epoch_utc":null},{"commit":"cd6dead034f3c72aebd22afeb2aea6591ae6d94d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 16:54:34 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 10 16:54:34 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"man page update","epoch":1649634874,"epoch_utc":null},{"commit":"45342ea9fea29947d8d90260c7665ffbca612cce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 16:54:22 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 10 16:54:22 2022 -0700","stats":{"files_changed":2,"insertions":16,"deletions":9,"files":["docgen.sh","updatedocs.sh"]},"message":"parallelize doc gneration","epoch":1649634862,"epoch_utc":null},{"commit":"585bf0e159c7839869cf3e458938dcc5fa2ceb81","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 10:32:51 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 10 10:32:51 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"xrandr update","epoch":1649611971,"epoch_utc":null},{"commit":"3a860b9babe93d455f68ef21436edf7470d375af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 10:31:13 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 10 10:31:13 2022 -0700","stats":{"files_changed":2,"insertions":7,"deletions":5,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"add rotation field","epoch":1649611873,"epoch_utc":null},{"commit":"269180df77f9ff953b07222e8ae790c7e7a8298e","merge":"e85f11c a1afed8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 10:19:50 2022 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Apr 10 10:19:50 2022 -0700","message":"Merge pull request #223 from anekos/fix/support-rotated-devices\n\nFix/support rotated devices","epoch":1649611190,"epoch_utc":null},{"commit":"a1afed8d95e33fbbc618c7b5778a9faeea2f628f","author":"anekos","author_email":"anekos@snca.net","date":"Sun Apr 10 18:19:29 2022 +0900","commit_by":"anekos","commit_by_email":"anekos@snca.net","commit_by_date":"Sun Apr 10 19:53:37 2022 +0900","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["docs/parsers/xrandr.md"]},"message":"doc update","epoch":1649639969,"epoch_utc":null},{"commit":"e39f150a216e4e184444dfc88a63e0f303e51631","author":"anekos","author_email":"anekos@snca.net","date":"Sun Apr 10 18:12:28 2022 +0900","commit_by":"anekos","commit_by_email":"anekos@snca.net","commit_by_date":"Sun Apr 10 19:53:37 2022 +0900","stats":{"files_changed":3,"insertions":9,"deletions":4,"files":["jc/parsers/xrandr.py","tests/fixtures/generic/xrandr_simple.json","tests/test_xrandr.py"]},"message":"Support rotated devices","epoch":1649639548,"epoch_utc":null},{"commit":"e85f11c6fcad5461bae612dd5a945c20d300e59a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 4 12:00:41 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 4 12:00:41 2022 -0700","stats":{"files_changed":4,"insertions":12,"deletions":12,"files":["docs/parsers/ini.md","docs/parsers/kv.md","jc/parsers/ini.py","jc/parsers/kv.py"]},"message":"doc formatting","epoch":1649098841,"epoch_utc":null},{"commit":"49a9d7b07e89696f2e022655d7256b7d6ad4bf7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 4 11:42:16 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 4 11:42:16 2022 -0700","stats":{"files_changed":3,"insertions":12,"deletions":8,"files":["docs/parsers/ini.md","docs/parsers/kv.md","man/jc.1"]},"message":"doc update","epoch":1649097736,"epoch_utc":null},{"commit":"a2ef9c429e4bb9f70d033511dce77ccdb9013971","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 4 11:38:52 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 4 11:38:52 2022 -0700","stats":{"files_changed":4,"insertions":38,"deletions":8,"files":["jc/parsers/ini.py","jc/parsers/kv.py","tests/test_ini.py","tests/test_kv.py"]},"message":"allow duplicate keys","epoch":1649097532,"epoch_utc":null},{"commit":"d5e9074f1c8facb3f15b8c41a008917178626978","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 4 11:38:04 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 4 11:38:04 2022 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/lib.py","setup.py"]},"message":"version bump","epoch":1649097484,"epoch_utc":null},{"commit":"774699f085d97f22ae2dab0cf64d72aa1e1709f7","merge":"789f073 7138eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 4 18:21:15 2022 +0000","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Apr 4 18:21:15 2022 +0000","message":"Merge pull request #220 from kellyjonbrazil/master\n\nsync to dev","epoch":1649121675,"epoch_utc":1649096475},{"commit":"7138eef3d137bc64286d4af453d8d4e7b3f4408d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 30 14:39:56 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 30 14:39:56 2022 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py"]},"message":"fix newline chars in doc","epoch":1648676396,"epoch_utc":null},{"commit":"fad5e544aa9e57d31473190e196f59c616901207","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 29 09:58:44 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 29 09:58:44 2022 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"]},"message":"formatting","epoch":1648573124,"epoch_utc":null},{"commit":"64757e2cf55448bccfbbd60d31930ab3f59af21b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 29 09:35:54 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 29 09:35:54 2022 -0700","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"]},"message":"doc formatting","epoch":1648571754,"epoch_utc":null},{"commit":"e05be3f08beae1b600fc55a3a7b4e28163e15bc0","merge":"ac61e9a 789f073","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 25 22:36:05 2022 +0000","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Mar 25 22:36:05 2022 +0000","message":"Merge pull request #213 from kellyjonbrazil/dev\n\nDev v1.18.6","epoch":1648272965,"epoch_utc":1648247765},{"commit":"789f0735dfd63e728b8716d97cf0c6045ede5011","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 25 15:32:37 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 25 15:32:37 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"doc update","epoch":1648247557,"epoch_utc":null},{"commit":"34bc7753174be28d6c1a00dadc662bc374e554c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 25 15:32:11 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 25 15:32:11 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"doc update","epoch":1648247531,"epoch_utc":null},{"commit":"38de059a1bc285c8681086d9fb43d0d23ac01d49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 16:58:45 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 24 16:58:45 2022 -0700","stats":{"files_changed":3,"insertions":9,"deletions":3,"files":["docs/parsers/asciitable.md","docs/parsers/universal.md","man/jc.1"]},"message":"doc update","epoch":1648166325,"epoch_utc":null},{"commit":"304ae6268f4dff6e6f901628e7ff89db1d6e0767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 16:58:39 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 24 16:58:39 2022 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/parsers/asciitable_m.py"]},"message":"minor optimization by changing the expression order","epoch":1648166319,"epoch_utc":null},{"commit":"978caf45221188a29c0e67147804f20f317c066d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 12:37:46 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 24 12:37:46 2022 -0700","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["jc/parsers/asciitable.py"]},"message":"minor optimization by reordering expressions","epoch":1648150666,"epoch_utc":null},{"commit":"17df5bfcfc25f226a2976aa7ab8a80e4aaa915c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 11:58:13 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 24 11:58:13 2022 -0700","stats":{"files_changed":2,"insertions":12,"deletions":2,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"cache _is_separator function","epoch":1648148293,"epoch_utc":null},{"commit":"5e6a5068cff71b3b30525d0a12868bdf6551456c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 11:57:01 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 24 11:57:01 2022 -0700","stats":{"files_changed":1,"insertions":6,"deletions":2,"files":["jc/parsers/universal.py"]},"message":"allow iterables for simple table parser","epoch":1648148221,"epoch_utc":null},{"commit":"619de68a61be0117e635032347dde417d77c748c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 09:39:53 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 24 09:39:53 2022 -0700","stats":{"files_changed":2,"insertions":8,"deletions":9,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"formatting","epoch":1648139993,"epoch_utc":null},{"commit":"6748c3cc91f90bddea3d07b8b30a049ee55eaf35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 09:31:12 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 24 09:31:12 2022 -0700","stats":{"files_changed":2,"insertions":65,"deletions":61,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"remove lines from corner detection and add rounded corners","epoch":1648139472,"epoch_utc":null},{"commit":"0a462978b731770d1290187a502706c2322f5f91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 23 15:08:33 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 23 15:08:33 2022 -0700","stats":{"files_changed":4,"insertions":101,"deletions":3,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py","tests/test_asciitable.py","tests/test_asciitable_m.py"]},"message":"fix for special characters in headers","epoch":1648073313,"epoch_utc":null},{"commit":"e66a82ff49b40a674f9ef373a12d59fc71bfa730","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 23 10:50:34 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 23 10:50:34 2022 -0700","stats":{"files_changed":3,"insertions":6,"deletions":5,"files":["CHANGELOG","jc/parsers/asciitable_m.py","man/jc.1"]},"message":"doc update","epoch":1648057834,"epoch_utc":null},{"commit":"f3aa797d96c8e2cef2124dbb2f49d1fadaee3fa2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 17:47:19 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 17:47:19 2022 -0700","stats":{"files_changed":2,"insertions":69,"deletions":9,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"add more pretty table separators","epoch":1647996439,"epoch_utc":null},{"commit":"e5b478218c4ba3781afd085056dba888c3f6ae02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 16:05:07 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 16:05:07 2022 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_xrandr.py"]},"message":"add quiet=True to parse tests","epoch":1647990307,"epoch_utc":null},{"commit":"35e0e9c32afbc5450c661bcb3a23904d135358ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 15:57:43 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 15:57:43 2022 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable.py"]},"message":"remove print statement","epoch":1647989863,"epoch_utc":null},{"commit":"17c3c2f029a0a47eb02d681567619d471b99949c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 15:55:59 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 15:55:59 2022 -0700","stats":{"files_changed":4,"insertions":58,"deletions":2,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py","tests/test_asciitable.py","tests/test_asciitable_m.py"]},"message":"add bold bar seperator and ANSI code tests","epoch":1647989759,"epoch_utc":null},{"commit":"cf83e6398b3314b233581eb313510872177de20a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 15:13:07 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 15:13:07 2022 -0700","stats":{"files_changed":2,"insertions":7,"deletions":0,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"add fancy separators","epoch":1647987187,"epoch_utc":null},{"commit":"94e061b881e2ed28d2b462ad038e5ba77182b6c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 14:53:34 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 14:53:34 2022 -0700","stats":{"files_changed":1,"insertions":275,"deletions":0,"files":["tests/test_asciitable.py"]},"message":"add asciitable parser tests","epoch":1647986014,"epoch_utc":null},{"commit":"720480e39ce3cc2079d7f4f5bcff2725081fec34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 13:21:10 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 13:21:10 2022 -0700","stats":{"files_changed":4,"insertions":10,"deletions":2,"files":["docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"doc update","epoch":1647980470,"epoch_utc":null},{"commit":"82a63fe15922456853aa4597aa10a5a02b20bdef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 12:42:07 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 12:42:07 2022 -0700","stats":{"files_changed":2,"insertions":6,"deletions":8,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"]},"message":"doc update","epoch":1647978127,"epoch_utc":null},{"commit":"9c1ec9940e68ce9848da20e81b8c0b7e35a215df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 12:35:56 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 12:35:56 2022 -0700","stats":{"files_changed":4,"insertions":82,"deletions":14,"files":["docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"doc update","epoch":1647977756,"epoch_utc":null},{"commit":"f23f19da453a0f7bcf70e417a10f87e27571aa43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 12:25:59 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 12:25:59 2022 -0700","stats":{"files_changed":5,"insertions":122,"deletions":9,"files":["README.md","docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py","man/jc.1"]},"message":"doc update","epoch":1647977159,"epoch_utc":null},{"commit":"aea2e1b0a9c6bb2a02a6e73889bb04e8f4f22588","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 12:25:51 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 12:25:51 2022 -0700","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["tests/test_asciitable_m.py"]},"message":"fix tests so blank strings are now None","epoch":1647977151,"epoch_utc":null},{"commit":"7d95d679bf4093ea77f30a1be55384b6dbf08341","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 12:25:24 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 12:25:24 2022 -0700","stats":{"files_changed":2,"insertions":212,"deletions":1,"files":["jc/lib.py","jc/parsers/asciitable.py"]},"message":"add asciitable parser","epoch":1647977124,"epoch_utc":null},{"commit":"b3b140066b74ee31dd1c460502caf2f26df321b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 07:21:19 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 07:21:19 2022 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py"]},"message":"doc update","epoch":1647958879,"epoch_utc":null},{"commit":"b204c423c1b947c17cb251a5dd3c444cd71dd2c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 07:05:14 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 07:05:14 2022 -0700","stats":{"files_changed":4,"insertions":193,"deletions":15,"files":["README.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py","man/jc.1"]},"message":"doc update","epoch":1647957914,"epoch_utc":null},{"commit":"d451c309bb0d8889dc09a698212bf01c2154a582","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 06:30:07 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 06:30:07 2022 -0700","stats":{"files_changed":1,"insertions":11,"deletions":8,"files":["jc/parsers/asciitable_m.py"]},"message":"change multiple or statements to any()","epoch":1647955807,"epoch_utc":null},{"commit":"01d53da68ed04b736934851137c59216ad02d8c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 19:11:27 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 21 19:11:27 2022 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable_m.py"]},"message":"remove debug print","epoch":1647915087,"epoch_utc":null},{"commit":"53dd05e52c329a15c30a756a36a165ac59ef8a14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 19:10:02 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 21 19:10:02 2022 -0700","stats":{"files_changed":2,"insertions":29,"deletions":1,"files":["jc/parsers/asciitable_m.py","tests/test_asciitable_m.py"]},"message":"fix rstrip and add tests","epoch":1647915002,"epoch_utc":null},{"commit":"ab564f5be8282f1c7ee2d602bcef398fdfd4570f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 17:57:14 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 21 17:57:14 2022 -0700","stats":{"files_changed":2,"insertions":237,"deletions":1,"files":["jc/parsers/asciitable_m.py","tests/test_asciitable_m.py"]},"message":"add tests","epoch":1647910634,"epoch_utc":null},{"commit":"00c39450f9878527b60545ad61c04cfb98f418dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 13:36:54 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 21 13:36:54 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"]},"message":"enhance type annotation","epoch":1647895014,"epoch_utc":null},{"commit":"f611d08b50219f4e573c1d1f0beae27583e76432","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 13:33:35 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 21 13:33:35 2022 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/asciitable_m.py"]},"message":"formatting","epoch":1647894815,"epoch_utc":null},{"commit":"90e79b7df3a4d5b37835fdf1c2debc1bad0a40b9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 13:27:44 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 21 13:27:44 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"]},"message":"formatting","epoch":1647894464,"epoch_utc":null},{"commit":"4eb2d725d5fe6f2cc7935c7dc891912cf7b8e940","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 13:09:50 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 21 13:09:50 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"]},"message":"formatting","epoch":1647893390,"epoch_utc":null},{"commit":"51ae5ebcac7263ef2571c11975b275eff352bbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 13:06:34 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 21 13:06:34 2022 -0700","stats":{"files_changed":1,"insertions":148,"deletions":175,"files":["jc/parsers/asciitable_m.py"]},"message":"new streamlined parser","epoch":1647893194,"epoch_utc":null},{"commit":"9ecbdb09162da4d563799aa93d422db85b2c324b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 20 10:16:29 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 20 10:16:29 2022 -0700","stats":{"files_changed":8,"insertions":35,"deletions":30,"files":["docs/parsers/mpstat_s.md","docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","docs/parsers/universal.md","jc/parsers/foo_s.py","jc/parsers/mpstat_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"]},"message":"use generator instead of iterable in function return annotation","epoch":1647796589,"epoch_utc":null},{"commit":"b3a2886fd0af0cd06890f37f1edfc6890bb83e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 20 10:12:29 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 20 10:12:29 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["docs/lib.md"]},"message":"formatting","epoch":1647796349,"epoch_utc":null},{"commit":"ceacec0f462bd7c2d9e92ddb9029ccd71aef481c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 18 16:57:47 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 18 16:57:47 2022 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable_m.py"]},"message":"remove errant os sep import","epoch":1647647867,"epoch_utc":null},{"commit":"ff0f794b01395ed9b65fac75a6b07f0772d45a2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 18 16:53:23 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 18 16:53:23 2022 -0700","stats":{"files_changed":1,"insertions":32,"deletions":10,"files":["jc/parsers/asciitable_m.py"]},"message":"working","epoch":1647647603,"epoch_utc":null},{"commit":"70fafbf3f80f35c5db2c306978b2a488adad40bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 18 14:19:00 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 18 14:19:00 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"remove asciitable so tests pass for now","epoch":1647638340,"epoch_utc":null},{"commit":"5a248a8fc58952a5eab3d4aac025d7422ba82d08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 18 13:05:57 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 18 13:05:57 2022 -0700","stats":{"files_changed":1,"insertions":344,"deletions":0,"files":["jc/parsers/asciitable_m.py"]},"message":"add multiline asciitable parser","epoch":1647633957,"epoch_utc":null},{"commit":"4a3a4e10df8a552a4db3510640695f02b166dc40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 18 13:03:43 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 18 13:03:43 2022 -0700","stats":{"files_changed":1,"insertions":3,"deletions":4,"files":["jc/lib.py"]},"message":"add asciitable and asciitable-m parsers","epoch":1647633823,"epoch_utc":null},{"commit":"c27bd5ff39f21c6377e661d4d7de1200d2fdd72f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 17 16:24:18 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 17 16:24:18 2022 -0700","stats":{"files_changed":1,"insertions":23,"deletions":16,"files":["jc/parsers/universal.py"]},"message":"pad lines in sparse_table_parse and use str.isspace()","epoch":1647559458,"epoch_utc":null},{"commit":"f804c9627fb71341429ca80aec2887e23e0277db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 15 16:04:58 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 15 16:04:58 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/universal.py"]},"message":"copy input list so we don't mutate the caller's data","epoch":1647385498,"epoch_utc":null},{"commit":"3ab25d02f9dc248706aa1105e1766b2a84bc55a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 12:30:09 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 14 12:30:09 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"use _parser_is_streaming from lib","epoch":1647286209,"epoch_utc":null},{"commit":"9e80fd2b97b9bfe38fdaa6acdf2e8ed26d34b49d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 12:17:18 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 14 12:17:18 2022 -0700","stats":{"files_changed":2,"insertions":15,"deletions":11,"files":["jc/cli.py","jc/lib.py"]},"message":"fallback if info and doc items don't exist","epoch":1647285438,"epoch_utc":null},{"commit":"ff9527a098a94c996641fb3fe2f905c8ae5e3063","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 11:35:57 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 14 11:35:57 2022 -0700","stats":{"files_changed":1,"insertions":9,"deletions":13,"files":["jc/cli.py"]},"message":"import cleanup and use all_parser_info in parsers_text","epoch":1647282957,"epoch_utc":null},{"commit":"7dac2f8dc3baf619105e3c6ca4d3e45300b86287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 10:50:10 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 14 10:50:10 2022 -0700","stats":{"files_changed":3,"insertions":23,"deletions":9,"files":["docs/lib.md","docs/readme.md","man/jc.1"]},"message":"doc update","epoch":1647280210,"epoch_utc":null},{"commit":"32e4d55e86c3e7d94488ec69f13a4f6400c4cef3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 10:46:54 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 14 10:46:54 2022 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"]},"message":"use parser_info for help_doc","epoch":1647280014,"epoch_utc":null},{"commit":"f9a9062147256d0949457cc7fde838f87202524d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 10:46:23 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 14 10:46:23 2022 -0700","stats":{"files_changed":3,"insertions":27,"deletions":10,"files":["CHANGELOG","jc/__init__.py","jc/lib.py"]},"message":"add documentation argument to parser_info and all_parser_info","epoch":1647279983,"epoch_utc":null},{"commit":"89e5919796f7da585285901dca461aae21336415","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 09:56:50 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 14 09:56:50 2022 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/mpstat_s.md","jc/parsers/mpstat_s.py"]},"message":"add -A to second example","epoch":1647277010,"epoch_utc":null},{"commit":"e5f5b2591d8ac3abeb9571688c7fb8de34d647f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 09:45:17 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 14 09:45:17 2022 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update","epoch":1647276317,"epoch_utc":null},{"commit":"77c667eec045daff5cbd062fe9d6e83f237727e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 09:43:18 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 14 09:43:18 2022 -0700","stats":{"files_changed":9,"insertions":67,"deletions":6,"files":["docs/parsers/mpstat.md","docs/parsers/mpstat_s.md","jc/parsers/mpstat.py","jc/parsers/mpstat_s.py","tests/fixtures/ubuntu-18.04/mpstat-A-streaming.json","tests/fixtures/ubuntu-18.04/mpstat-A.json","tests/fixtures/ubuntu-18.04/mpstat-A.out","tests/test_mpstat.py","tests/test_mpstat_s.py"]},"message":"ubuntu fixes","epoch":1647276198,"epoch_utc":null},{"commit":"b257ce8c2fe6825fe435b4d04b4184091030db10","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 13 12:25:50 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 13 12:25:50 2022 -0700","stats":{"files_changed":4,"insertions":65,"deletions":0,"files":[".../centos-7.7/mpstat-A-2-5-streaming.json","tests/fixtures/centos-7.7/mpstat-A-streaming.json","tests/fixtures/centos-7.7/mpstat-streaming.json","tests/test_mpstat_s.py"]},"message":"add mpstat_s tests","epoch":1647199550,"epoch_utc":null},{"commit":"c693c868cacbcd81f44fd383719723dd7a137c87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 15:59:38 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 11 15:59:38 2022 -0800","stats":{"files_changed":7,"insertions":352,"deletions":0,"files":["README.md","docs/parsers/mpstat.md","docs/parsers/mpstat_s.md","jc/lib.py","jc/parsers/mpstat.py","jc/parsers/mpstat_s.py","man/jc.1"]},"message":"add mpstat streaming parser","epoch":1647043178,"epoch_utc":null},{"commit":"6f98b27a05d6e1f7571a97316b193f096521b959","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 15:33:31 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 11 15:33:31 2022 -0800","stats":{"files_changed":7,"insertions":168,"deletions":0,"files":["tests/fixtures/centos-7.7/mpstat-A-2-5.json","tests/fixtures/centos-7.7/mpstat-A-2-5.out","tests/fixtures/centos-7.7/mpstat-A.json","tests/fixtures/centos-7.7/mpstat-A.out","tests/fixtures/centos-7.7/mpstat.json","tests/fixtures/centos-7.7/mpstat.out","tests/test_mpstat.py"]},"message":"add mpstat tests","epoch":1647041611,"epoch_utc":null},{"commit":"d7efd25d88a8f489564ce48223845a16e4ab1cc7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 14:54:06 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 11 14:54:06 2022 -0800","stats":{"files_changed":4,"insertions":207,"deletions":1,"files":["EXAMPLES.md","README.md","docs/parsers/mpstat.md","man/jc.1"]},"message":"add mpstat to docs","epoch":1647039246,"epoch_utc":null},{"commit":"2cddb1f0bb497be0be071cdcb56bf49d2dafc920","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 14:00:19 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 11 14:00:19 2022 -0800","stats":{"files_changed":1,"insertions":94,"deletions":15,"files":["jc/parsers/mpstat.py"]},"message":"working mpstat","epoch":1647036019,"epoch_utc":null},{"commit":"ae1c331595dd857d8ae7f8cf93daee1b26be2c3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 13:15:39 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 11 13:15:39 2022 -0800","stats":{"files_changed":1,"insertions":30,"deletions":5,"files":["jc/parsers/mpstat.py"]},"message":"initial working version","epoch":1647033339,"epoch_utc":null},{"commit":"bc97052ed4ee3bf3f25127968139f2e89a659fe3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 12:37:17 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 11 12:37:17 2022 -0800","stats":{"files_changed":3,"insertions":109,"deletions":0,"files":["CHANGELOG","jc/lib.py","jc/parsers/mpstat.py"]},"message":"initial add mpstat parser","epoch":1647031037,"epoch_utc":null},{"commit":"6c3e0e2aa0e8cc375d9f7473930b18957d33f1aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 12:37:01 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 11 12:37:01 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"formatting","epoch":1647031021,"epoch_utc":null},{"commit":"dd052e01469e9e3328f7326d3591365a8e7322eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 10:25:24 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 11 10:25:24 2022 -0800","stats":{"files_changed":2,"insertions":26,"deletions":24,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"add underscores to column examples","epoch":1647023124,"epoch_utc":null},{"commit":"54e8f58145f6c4332fbd375d112259ea7abb2d72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 16:50:55 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 16:50:55 2022 -0800","stats":{"files_changed":2,"insertions":28,"deletions":2,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"add table result examples","epoch":1646959855,"epoch_utc":null},{"commit":"def7aa5764e69cd0cf2c5b70aa62c62023f76c9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 15:36:11 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 15:36:11 2022 -0800","stats":{"files_changed":2,"insertions":16,"deletions":16,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"formatting","epoch":1646955371,"epoch_utc":null},{"commit":"6986c74f6dceca907ea2e469a332deeb093a122c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 15:18:27 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 15:18:27 2022 -0800","stats":{"files_changed":169,"insertions":34,"deletions":837,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/pidstat.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/nmcli.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/pidstat.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/xrandr.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py"]},"message":"remove direct parser module example from doc","epoch":1646954307,"epoch_utc":null},{"commit":"b784db404d0569a4c630eb124b37b0b1d0846453","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 13:32:26 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 13:32:26 2022 -0800","stats":{"files_changed":17,"insertions":87,"deletions":166,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/pidstat_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/pidstat_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"]},"message":"streaming doc formatting update","epoch":1646947946,"epoch_utc":null},{"commit":"8aee4517bb4c2eebdd9873f7eb0827cd33b85519","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 13:02:50 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 13:02:50 2022 -0800","stats":{"files_changed":2,"insertions":12,"deletions":26,"files":["docs/parsers/pidstat_s.md","jc/parsers/pidstat_s.py"]},"message":"doc formatting","epoch":1646946170,"epoch_utc":null},{"commit":"a5fb8fbf94b3b80bef82f078ad6582260b13e374","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 10:10:57 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 10:10:57 2022 -0800","stats":{"files_changed":17,"insertions":164,"deletions":148,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/pidstat_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/pidstat_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"]},"message":"streaming doc update","epoch":1646935857,"epoch_utc":null},{"commit":"b9365e2ac28c3eacf53bc101857f7f1d7286ec20","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 09:23:36 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 09:23:36 2022 -0800","stats":{"files_changed":4,"insertions":74,"deletions":0,"files":[".../centos-7.7/pidstat-hdlrsuw-2-5-streaming.json",".../centos-7.7/pidstat-hdlrsuw-streaming.json",".../fixtures/centos-7.7/pidstat-hl-streaming.json","tests/test_pidstat_s.py"]},"message":"add pidstat-s tests","epoch":1646933016,"epoch_utc":null},{"commit":"696338c1a3d462afbe677a6f2ebe08d06ef4046a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 09:04:12 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 09:04:12 2022 -0800","stats":{"files_changed":1,"insertions":38,"deletions":0,"files":["tests/_test_foo_s.py"]},"message":"add streaming test template","epoch":1646931852,"epoch_utc":null},{"commit":"4f0616190bb842411353d65650b78a65d8cbdc28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 08:14:58 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 08:14:58 2022 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","man/jc.1"]},"message":"doc update","epoch":1646928898,"epoch_utc":null},{"commit":"3278cb0de301ee542b1fe8245a6c359193373b6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 08:14:46 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 08:14:46 2022 -0800","stats":{"files_changed":2,"insertions":15,"deletions":10,"files":["docs/parsers/arp.md","jc/parsers/arp.py"]},"message":"add type hints","epoch":1646928886,"epoch_utc":null},{"commit":"4fc04256a567c502a88ac8a1bd189746387c93f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 08:00:37 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 08:00:37 2022 -0800","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["jc/parsers/foo_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"]},"message":"rollback noReturn to tuple","epoch":1646928037,"epoch_utc":null},{"commit":"e4ae0fea63c0386c1b3239607fd6a58738d23633","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 16:28:55 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 16:28:55 2022 -0800","stats":{"files_changed":5,"insertions":8,"deletions":8,"files":["docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","jc/parsers/foo_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"]},"message":"fix type annotation","epoch":1646872135,"epoch_utc":null},{"commit":"d3727ea0906d6167aa48c340519242b010469d98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 16:09:35 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 16:09:35 2022 -0800","stats":{"files_changed":4,"insertions":99,"deletions":1,"files":["CHANGELOG","README.md","docs/parsers/pidstat_s.md","man/jc.1"]},"message":"doc update","epoch":1646870975,"epoch_utc":null},{"commit":"0d13909cf63d14008607c5640d074ab4073115e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 16:07:29 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 16:07:29 2022 -0800","stats":{"files_changed":2,"insertions":168,"deletions":0,"files":["jc/lib.py","jc/parsers/pidstat_s.py"]},"message":"add pidstat-s parser","epoch":1646870849,"epoch_utc":null},{"commit":"c52ca20e285895d2afb685a2a5ca275de7901033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 16:07:17 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 16:07:17 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/pidstat.py"]},"message":"fix comment","epoch":1646870837,"epoch_utc":null},{"commit":"21f27f26c81c75234221a5193c7d3903323e2032","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 15:37:10 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 15:37:10 2022 -0800","stats":{"files_changed":4,"insertions":72,"deletions":0,"files":["tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.json","tests/fixtures/centos-7.7/pidstat-hdlrsuw.json","tests/fixtures/centos-7.7/pidstat-hl.json","tests/test_pidstat.py"]},"message":"add pidstat tests","epoch":1646869030,"epoch_utc":null},{"commit":"5e7a87f39782d12070a895440ff541800df91b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 15:37:04 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 15:37:04 2022 -0800","stats":{"files_changed":1,"insertions":35,"deletions":0,"files":["tests/_test_foo.py"]},"message":"add test template","epoch":1646869024,"epoch_utc":null},{"commit":"845d763829acd03fff1d2fad6e9691f04bd1a2aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 15:09:22 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 15:09:22 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/pidstat.md","jc/parsers/pidstat.py"]},"message":"format docs to fit 80 columns","epoch":1646867362,"epoch_utc":null},{"commit":"f5c7d52ec72f5ff4b77d5ac4491f330575b9f10f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 14:43:56 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 14:43:56 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":10,"files":["man/jc.1","templates/manpage_template"]},"message":"formatting","epoch":1646865836,"epoch_utc":null},{"commit":"c3198a58744803f52113f80967c7259d781e2328","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 14:17:48 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 14:17:48 2022 -0800","stats":{"files_changed":2,"insertions":22,"deletions":12,"files":["man/jc.1","templates/manpage_template"]},"message":"formatting","epoch":1646864268,"epoch_utc":null},{"commit":"bbd4afa73542ba6596aed77426bb494fbcf23196","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 14:09:58 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 14:09:58 2022 -0800","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["README.md","man/jc.1"]},"message":"add pidstat to docs","epoch":1646863798,"epoch_utc":null},{"commit":"ae754a84bf5fc35b248bbc5f7b0fa8e871765819","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 14:06:34 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 14:06:34 2022 -0800","stats":{"files_changed":3,"insertions":263,"deletions":33,"files":["docs/parsers/arp.md","docs/parsers/pidstat.md","jc/parsers/pidstat.py"]},"message":"doc update","epoch":1646863594,"epoch_utc":null},{"commit":"3389eb5debe0f0ba01ece01e20048608bf357e70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 13:18:04 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 13:18:04 2022 -0800","stats":{"files_changed":4,"insertions":219,"deletions":9,"files":["jc/parsers/pidstat.py","tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.out","tests/fixtures/centos-7.7/pidstat-hdlrsuw.out","tests/fixtures/centos-7.7/pidstat-hl.out"]},"message":"initial working parser","epoch":1646860684,"epoch_utc":null},{"commit":"01f2c1e71f87ab401d487be4d6d150cb67c91437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 12:13:32 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 12:13:32 2022 -0800","stats":{"files_changed":5,"insertions":162,"deletions":2,"files":["CHANGELOG","jc/lib.py","jc/parsers/pidstat.py","setup.py","tests/fixtures/centos-7.7/pidstat.out"]},"message":"add pidstat parser","epoch":1646856812,"epoch_utc":null},{"commit":"8bfbf8f1bcd233a8ecd34012e140eb29164ca5fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 12:13:07 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 12:13:07 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"simplify error message","epoch":1646856787,"epoch_utc":null},{"commit":"f4242669bac3af5eb196c46d4146823aacec40ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 10:52:40 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 10:52:40 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":10,"files":["jc/parsers/arp.py"]},"message":"minor cleanup","epoch":1646851960,"epoch_utc":null},{"commit":"bebd9331f1fb9b80f8cb4a5cfacd68461743004e","merge":"9861983 ac61e9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 18:49:01 2022 +0000","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 9 18:49:01 2022 +0000","message":"Merge pull request #211 from kellyjonbrazil/master\n\nsync to dev","epoch":1646880541,"epoch_utc":1646851741},{"commit":"ac61e9ad2c9c4e864db02db04cbf907fb0efd99b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 8 13:21:05 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 8 13:21:05 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add pypi link","epoch":1646774465,"epoch_utc":null},{"commit":"648ef4d8a9c33a36d4bb2c135fe59b031de8f24c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 8 13:19:20 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 8 13:19:20 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"update badge links","epoch":1646774360,"epoch_utc":null},{"commit":"727fc9a701e9aae75d3d2b708010da1d0dc8781a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 15:19:25 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Mar 5 15:19:25 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/date.md","man/jc.1"]},"message":"doc update","epoch":1646522365,"epoch_utc":null},{"commit":"306512d6bb53af18516fc10b15c7ec79cb02cc98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 15:13:47 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Mar 5 15:13:47 2022 -0800","stats":{"files_changed":4,"insertions":7,"deletions":4,"files":["CHANGELOG","jc/lib.py","jc/parsers/date.py","setup.py"]},"message":"force AM/PM to uppercase in date parser","epoch":1646522027,"epoch_utc":null},{"commit":"6afb1d389ca9dfd7880386d380fee032b7eb92e2","merge":"961968a 9861983","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 21:49:36 2022 +0000","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sat Mar 5 21:49:36 2022 +0000","message":"Merge pull request #209 from kellyjonbrazil/dev\n\nDev v1.18.4","epoch":1646545776,"epoch_utc":1646516976},{"commit":"98619834818c181cb50a9605fe166b6153c46095","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 13:45:28 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Mar 5 13:45:28 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"doc update","epoch":1646516728,"epoch_utc":null},{"commit":"ca79053db08542849136ae13fdb4d1d90b79a7e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 12:15:47 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Mar 5 12:15:47 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docgen.sh"]},"message":"document pydoc version","epoch":1646511347,"epoch_utc":null},{"commit":"29c263f87810f8566ebdad2358e99896391adfd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 12:15:14 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Mar 5 12:15:14 2022 -0800","stats":{"files_changed":93,"insertions":115,"deletions":115,"files":["docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/streaming.md","docs/utils.md"]},"message":"pydoc formatting fixes","epoch":1646511314,"epoch_utc":null},{"commit":"128c3c170abc6a702ae044b073fb9d992d4262b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 16:38:49 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 4 16:38:49 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"doc update","epoch":1646440729,"epoch_utc":null},{"commit":"a531ab8864fca27b55d83b55055eaef1c36128cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 16:35:06 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 4 16:35:06 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting","epoch":1646440506,"epoch_utc":null},{"commit":"0c1be7cc11ec75a5738483d68d053e702eb34fc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 16:29:36 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 4 16:29:36 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":18,"files":["README.md","templates/readme_template"]},"message":"reduce dig example size","epoch":1646440176,"epoch_utc":null},{"commit":"e4222b45f54e6179e22d7924c083e4642b9974ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 16:24:13 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 4 16:24:13 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/lib.py"]},"message":"fix names to mod names","epoch":1646439853,"epoch_utc":null},{"commit":"ac32c69c31e8eff22252d7aded08f6cb14622086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 13:35:16 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 4 13:35:16 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"formatting","epoch":1646429716,"epoch_utc":null},{"commit":"cb2dfeac8d44b733ad9d364e8c6d233a381bfae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 13:27:39 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 4 13:27:39 2022 -0800","stats":{"files_changed":199,"insertions":334,"deletions":326,"files":["README.md","docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/streaming.md","docs/utils.md","jc/__init__.py","jc/cli.py","jc/exceptions.py","jc/lib.py","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat_freebsd_osx.py","jc/parsers/netstat_linux.py","jc/parsers/nmcli.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/xrandr.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py","jc/streaming.py","jc/utils.py","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"change name to JSON Convert","epoch":1646429259,"epoch_utc":null},{"commit":"9a3602e70b865a3015bd700b30d1076e17511a9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 08:57:11 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 4 08:57:11 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/lib.md","jc/lib.py"]},"message":"doc update","epoch":1646413031,"epoch_utc":null},{"commit":"a9f53ee258e18bc90934e263d8dc96feee84e939","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 3 17:50:19 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 3 17:50:19 2022 -0800","stats":{"files_changed":2,"insertions":15,"deletions":4,"files":["jc/cli.py","jc/lib.py"]},"message":"optimize streaming parser detection in cli","epoch":1646358619,"epoch_utc":null},{"commit":"6be3d3d98222a262c5138bb09f2951ccfab96110","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 3 17:38:47 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 3 17:38:47 2022 -0800","stats":{"files_changed":3,"insertions":43,"deletions":1,"files":["CHANGELOG","docs/lib.md","docs/readme.md"]},"message":"doc update","epoch":1646357927,"epoch_utc":null},{"commit":"e49df7208377ab34a74240a06f35f17fee4b8203","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 3 17:37:01 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 3 17:37:01 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"use streaming parser list to find streaming parsers","epoch":1646357821,"epoch_utc":null},{"commit":"7ede7be7bf7b1a7d29d158b3b21c20fff4990e72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 3 17:36:40 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 3 17:36:40 2022 -0800","stats":{"files_changed":2,"insertions":42,"deletions":0,"files":["jc/__init__.py","jc/lib.py"]},"message":"add standard and streaming list functions","epoch":1646357800,"epoch_utc":null},{"commit":"4758e28a36e2a55497e4f722d386a6b5cc30dc4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 2 15:24:18 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 2 15:24:18 2022 -0800","stats":{"files_changed":2,"insertions":20,"deletions":16,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting","epoch":1646263458,"epoch_utc":null},{"commit":"4a1ee151b3cb054d84cd964fd62f5855f765751d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 2 10:57:09 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 2 10:57:09 2022 -0800","stats":{"files_changed":2,"insertions":9,"deletions":11,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py"]},"message":"add dhcp6 options to docs","epoch":1646247429,"epoch_utc":null},{"commit":"8c8afc1a922e3c30fcf501d169b33a68b65cd3e0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 2 10:15:01 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 2 10:15:01 2022 -0800","stats":{"files_changed":2,"insertions":60,"deletions":24,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting","epoch":1646244901,"epoch_utc":null},{"commit":"ed205f7720d98c225c917c252ed7a6c9e6e8c2b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 28 12:55:05 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 28 12:55:05 2022 -0800","stats":{"files_changed":3,"insertions":9,"deletions":9,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py","man/jc.1"]},"message":"doc update","epoch":1646081705,"epoch_utc":null},{"commit":"d65f7ae992abc33140c00714d442290103661757","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 28 12:26:06 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 28 12:26:06 2022 -0800","stats":{"files_changed":1,"insertions":41,"deletions":0,"files":["EXAMPLES.md"]},"message":"add nmcli","epoch":1646079966,"epoch_utc":null},{"commit":"e2ffef57b9a474048fe72cf42aebfa6bfaf2e42b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 28 12:20:39 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 28 12:20:39 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_nmcli.py"]},"message":"fix test","epoch":1646079639,"epoch_utc":null},{"commit":"002caa9fb3b65f1ae64df25cc39c3de130403e76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 28 12:19:02 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 28 12:19:02 2022 -0800","stats":{"files_changed":7,"insertions":252,"deletions":0,"files":[".../fedora32/nmcli-connection-show-ens33.json",".../fedora32/nmcli-connection-show-ens33.out",".../fixtures/fedora32/nmcli-device-show-ens33.json",".../fixtures/fedora32/nmcli-device-show-ens33.out","tests/fixtures/fedora32/nmcli-device-show.json","tests/fixtures/fedora32/nmcli-device-show.out","tests/test_nmcli.py"]},"message":"add fedora tests","epoch":1646079542,"epoch_utc":null},{"commit":"b7c6faf3daf8eb0c42a222778baa440c5a018c75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 25 11:23:20 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 25 11:23:20 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"enhance error message","epoch":1645817000,"epoch_utc":null},{"commit":"554ca61d1764b81dea06b6b013d0444072f0662a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 25 11:19:20 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 25 11:19:20 2022 -0800","stats":{"files_changed":11,"insertions":165,"deletions":0,"files":[".../fixtures/centos-7.7/nmcli-connection-all.json",".../centos-7.7/nmcli-connection-show-ens33.json","tests/fixtures/centos-7.7/nmcli-connection.json","tests/fixtures/centos-7.7/nmcli-device-all.json",".../centos-7.7/nmcli-device-show-ens33.json",".../fixtures/centos-7.7/nmcli-device-show-lo.json","tests/fixtures/centos-7.7/nmcli-device-show.json","tests/fixtures/centos-7.7/nmcli-device.json","tests/fixtures/centos-7.7/nmcli-general-all.json",".../centos-7.7/nmcli-general-permissions.json","tests/test_nmcli.py"]},"message":"add tests","epoch":1645816760,"epoch_utc":null},{"commit":"7b9722d255a16981099dc803beda7abe0d46106a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 21:21:02 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 21:21:02 2022 -0800","stats":{"files_changed":2,"insertions":26,"deletions":34,"files":["man/jc.1","templates/manpage_template"]},"message":"fix formatting","epoch":1645766462,"epoch_utc":null},{"commit":"5505bde8ef77db0885f08d8d04160cbc4418dd67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:53:54 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 20:53:54 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/zipinfo.md"]},"message":"doc update","epoch":1645764834,"epoch_utc":null},{"commit":"dbcd9a4060647be24bca2a8d577f11925a9ac210","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:52:28 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 20:52:28 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/zipinfo.py"]},"message":"bump version to 1.0","epoch":1645764748,"epoch_utc":null},{"commit":"4bdeb2b3aa063c2772f5c44e52acbe16e915cc3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:52:18 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 20:52:18 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/xrandr.py"]},"message":"simplify warning message","epoch":1645764738,"epoch_utc":null},{"commit":"6ae1d03187c6d4b669f6f74db1be7c9cf07adaed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:47:15 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 20:47:15 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py"]},"message":"doc fix","epoch":1645764435,"epoch_utc":null},{"commit":"f75b06abe4af152be094f8bc1ba5ce66b25e35e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:43:20 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 20:43:20 2022 -0800","stats":{"files_changed":4,"insertions":180,"deletions":3,"files":["README.md","docs/parsers/nmcli.md","jc/parsers/nmcli.py","man/jc.1"]},"message":"doc update","epoch":1645764200,"epoch_utc":null},{"commit":"1923925710dadc4116202855ae884ef18394d428","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:35:00 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 20:35:00 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["CHANGELOG"]},"message":"update changelog","epoch":1645763700,"epoch_utc":null},{"commit":"2c5c57ae04df3b7abfb1c3423c3350c7c2ab5dcd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:33:10 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 20:33:10 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/lib.py","setup.py"]},"message":"version bump","epoch":1645763590,"epoch_utc":null},{"commit":"f4d11d697e000135720a971edf84dcad31a1bec8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:31:58 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 20:31:58 2022 -0800","stats":{"files_changed":1,"insertions":155,"deletions":15,"files":["jc/parsers/nmcli.py"]},"message":"finish use cases and doc","epoch":1645763518,"epoch_utc":null},{"commit":"7f409b7082aa9525cc9280e3c5c92bc82089cf14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:31:09 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 20:31:09 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"enhance ParseError cli message","epoch":1645763469,"epoch_utc":null},{"commit":"937fa5aad2519f588c6d0feb8f08211f6b99872f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 18:22:19 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 18:22:19 2022 -0800","stats":{"files_changed":1,"insertions":20,"deletions":0,"files":["jc/parsers/nmcli.py"]},"message":"split dhcp options","epoch":1645755739,"epoch_utc":null},{"commit":"19dcef513565c34a31f6d735577da5e25f9bd2cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 17:10:39 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 17:10:39 2022 -0800","stats":{"files_changed":1,"insertions":69,"deletions":2,"files":["jc/parsers/nmcli.py"]},"message":"firm up flow. add/remove text. parse routes","epoch":1645751439,"epoch_utc":null},{"commit":"3d01356461eb2790f859968da7f5cb4fd2ee9898","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 14:53:26 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 14:53:26 2022 -0800","stats":{"files_changed":1,"insertions":27,"deletions":3,"files":["jc/parsers/nmcli.py"]},"message":"add text_kv function","epoch":1645743206,"epoch_utc":null},{"commit":"2d6f666fa4c791e7995f6b0c1490dac73ce224c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 12:21:13 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 12:21:13 2022 -0800","stats":{"files_changed":1,"insertions":61,"deletions":16,"files":["jc/parsers/nmcli.py"]},"message":"add dev show and conn show parsers","epoch":1645734073,"epoch_utc":null},{"commit":"4dda895f122ecc19b267ed1485cf656bae76ff07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 11:25:14 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 11:25:14 2022 -0800","stats":{"files_changed":13,"insertions":404,"deletions":0,"files":["jc/lib.py","jc/parsers/nmcli.py","tests/fixtures/centos-7.7/nmcli-connection-all.out",".../centos-7.7/nmcli-connection-show-ens33.out","tests/fixtures/centos-7.7/nmcli-connection.out","tests/fixtures/centos-7.7/nmcli-device-all.out",".../centos-7.7/nmcli-device-show-ens33.out","tests/fixtures/centos-7.7/nmcli-device-show-lo.out","tests/fixtures/centos-7.7/nmcli-device-show.out","tests/fixtures/centos-7.7/nmcli-device.out","tests/fixtures/centos-7.7/nmcli-general-all.out",".../centos-7.7/nmcli-general-permissions.out","tests/fixtures/centos-7.7/nmcli.out"]},"message":"initial nmcli parser","epoch":1645730714,"epoch_utc":null},{"commit":"52617b1722ba2f089716b069f78f70a865430d61","merge":"3afaa48 961968a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 21 16:35:12 2022 +0000","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Feb 21 16:35:12 2022 +0000","message":"Merge pull request #208 from kellyjonbrazil/master\n\nsync to dev","epoch":1645490112,"epoch_utc":1645461312},{"commit":"961968a0fcaf37b64bc850c4945ba4b805a1fe54","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 15:14:22 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 14 15:14:22 2022 -0800","stats":{"files_changed":2,"insertions":26,"deletions":23,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"fix schema","epoch":1644880462,"epoch_utc":null},{"commit":"f026a788e5ca1231927e71fdbb1dadb2365a6518","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 11:30:03 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 14 11:30:03 2022 -0800","stats":{"files_changed":1,"insertions":62,"deletions":0,"files":["EXAMPLES.md"]},"message":"add xrandr example","epoch":1644867003,"epoch_utc":null},{"commit":"2f7c03eb35520be916c28a687031f8c6425839ba","merge":"681176e 3afaa48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 10:36:08 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Feb 14 10:36:08 2022 -0800","message":"Merge pull request #207 from kellyjonbrazil/dev\n\nDev v1.18.3","epoch":1644863768,"epoch_utc":null},{"commit":"3afaa48eee081e28262d1762c5ec23d318012822","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 10:31:41 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 14 10:31:41 2022 -0800","stats":{"files_changed":15,"insertions":15,"deletions":15,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"]},"message":"doc update","epoch":1644863501,"epoch_utc":null},{"commit":"3201452564fb0fb44ef9cc32217339370bd2521e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 10:06:09 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 14 10:06:09 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"add -p to example","epoch":1644861969,"epoch_utc":null},{"commit":"7ee1e34fc71c0dbc08ba482b787d560fd5125f64","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 10:03:52 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 14 10:03:52 2022 -0800","stats":{"files_changed":2,"insertions":116,"deletions":4,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"doc update","epoch":1644861832,"epoch_utc":null},{"commit":"67dbf050161201f5016899591e81ab6253ac2322","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 09:58:31 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 14 09:58:31 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"add type annotations","epoch":1644861511,"epoch_utc":null},{"commit":"4ac9f2e3dad4e7bd270bf5a8e61b729838b2c89c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 09:37:37 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 14 09:37:37 2022 -0800","stats":{"files_changed":5,"insertions":10,"deletions":17,"files":["CHANGELOG","docs/parsers/rsync.md","docs/parsers/rsync_s.md","jc/parsers/rsync.py","jc/parsers/rsync_s.py"]},"message":"doc update","epoch":1644860257,"epoch_utc":null},{"commit":"3f5f6e39a777ef524cb3a06a01321bb8c31d930d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 09:20:16 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 14 09:20:16 2022 -0800","stats":{"files_changed":2,"insertions":100,"deletions":98,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"formatting","epoch":1644859216,"epoch_utc":null},{"commit":"4723db8e3cc4946b14c83b25d6e8c6d2309aa72e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 09:14:46 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 14 09:14:46 2022 -0800","stats":{"files_changed":8,"insertions":195,"deletions":77,"files":["README.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/xrandr.md","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/xrandr.py","man/jc.1"]},"message":"doc updates","epoch":1644858886,"epoch_utc":null},{"commit":"ca914ec77d1fc77e42860189e62ac2fb203d4931","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 09:14:38 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 14 09:14:38 2022 -0800","stats":{"files_changed":1,"insertions":11,"deletions":2,"files":["tests/test_xrandr.py"]},"message":"add nodata test","epoch":1644858878,"epoch_utc":null},{"commit":"dcc7f3f357ef016b4583fc1320fd2394788f271f","merge":"184ef3a cbdc666","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Feb 13 17:45:53 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Feb 13 17:45:53 2022 -0800","message":"Merge pull request #204 from lyterk/xrandr\n\nNew parser: xrandr","epoch":1644803153,"epoch_utc":null},{"commit":"cbdc66623671da335eafe132b7af79f884856f1d","author":"Kevin Lyter","author_email":"lyterk@sent.com","date":"Wed Feb 9 21:50:07 2022 -0800","commit_by":"Kevin Lyter","commit_by_email":"lyterk@sent.com","commit_by_date":"Wed Feb 9 22:06:23 2022 -0800","stats":{"files_changed":3,"insertions":2,"deletions":30,"files":["jc/parsers/xrandr.py",".../{simple_xrandr.json => xrandr_simple.json}",".../{simple_xrandr.out => xrandr_simple.out}"]},"message":"Return empty object if no results and filenames\n\n- If no results are returned, return {} instead of {\"screens\": [],\n\"unassociated_devices\": []}\n- simple_xrandr -> xrandr_simple","epoch":1644472207,"epoch_utc":null},{"commit":"184ef3a1faeb406ce62076cff637ee86d61541fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 8 14:45:33 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 8 14:45:33 2022 -0800","stats":{"files_changed":3,"insertions":11,"deletions":3,"files":["docs/parsers/rsync.md","docs/parsers/rsync_s.md","man/jc.1"]},"message":"doc update","epoch":1644360333,"epoch_utc":null},{"commit":"c732f759445e335fe36586859b6fde7e27bb8901","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 8 14:43:14 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 8 14:43:14 2022 -0800","stats":{"files_changed":2,"insertions":10,"deletions":2,"files":["jc/parsers/rsync.py","jc/parsers/rsync_s.py"]},"message":"doc update","epoch":1644360194,"epoch_utc":null},{"commit":"7a1ae4f5fc5328c32bf77235cfbd9f83ec995053","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 8 13:32:22 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 8 13:32:22 2022 -0800","stats":{"files_changed":3,"insertions":105,"deletions":0,"files":["tests/{test_lib.py => test_jc_lib.py}","tests/test_jc_streaming.py","tests/{test_utils.py => test_jc_utils.py}"]},"message":"add library tests","epoch":1644355942,"epoch_utc":null},{"commit":"d04bc3757c482ec9062b2da91ded76c5dd6d106b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 8 07:33:26 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 8 07:33:26 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add xrandr","epoch":1644334406,"epoch_utc":null},{"commit":"73e8391653145412cd852aca349466018c8b9084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 16:58:06 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 7 16:58:06 2022 -0800","stats":{"files_changed":1,"insertions":8,"deletions":3,"files":["jc/utils.py"]},"message":"formatting","epoch":1644281886,"epoch_utc":null},{"commit":"f6c1463c1578db264ccb3d4c2677857ed906e965","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 16:31:43 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 7 16:31:43 2022 -0800","stats":{"files_changed":1,"insertions":44,"deletions":24,"files":["jc/cli.py"]},"message":"formatting","epoch":1644280303,"epoch_utc":null},{"commit":"d392c7f901a9d7c57617fbd03bd3f88ee0bf4132","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 15:44:54 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 7 15:44:54 2022 -0800","stats":{"files_changed":12,"insertions":20,"deletions":13,"files":["docs/parsers/date.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/ls.md","docs/parsers/rpm_qi.md","docs/parsers/stat.md","docs/parsers/systeminfo.md","docs/parsers/timedatectl.md","docs/parsers/upower.md","docs/parsers/vmstat.md","docs/parsers/who.md","docs/utils.md"]},"message":"doc update","epoch":1644277494,"epoch_utc":null},{"commit":"d0387f58205b2fd9b9860ce9656bb29ceec54340","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 15:44:46 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 7 15:44:46 2022 -0800","stats":{"files_changed":16,"insertions":34,"deletions":29,"files":["jc/parsers/date.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/systeminfo.py","jc/parsers/timedatectl.py","jc/parsers/upower.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/who.py"]},"message":"add timestamp format hints for better performance","epoch":1644277486,"epoch_utc":null},{"commit":"76f92908a3ba9cbadcc8e972afa8b1c4a69509bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 15:43:24 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 7 15:43:24 2022 -0800","stats":{"files_changed":1,"insertions":44,"deletions":9,"files":["jc/utils.py"]},"message":"add format hints for performance optimization","epoch":1644277404,"epoch_utc":null},{"commit":"1a115da67bdce9acfefbfb71fbac37e234b1babd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 08:34:34 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 7 08:34:34 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"add lru_cache maxsize for python 3.7 support","epoch":1644251674,"epoch_utc":null},{"commit":"f0a37ccf301eee5133a83b5dd96986fef0c38e7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 08:30:11 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 7 08:30:11 2022 -0800","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/utils.py"]},"message":"use lru_cache for significant performance boost to timestamp","epoch":1644251411,"epoch_utc":null},{"commit":"f331f53a531169520a4d8ea15d277560a49aedb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 08:06:48 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 7 08:06:48 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["CHANGELOG","jc/utils.py"]},"message":"use !r formatting instead of quotes","epoch":1644250008,"epoch_utc":null},{"commit":"8611aff06b18212b7292d564beb27a2062fc3f41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 06:42:35 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 7 06:42:35 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/parsers/rsync_s.md","jc/parsers/rsync_s.py"]},"message":"add examples","epoch":1644244955,"epoch_utc":null},{"commit":"2f3f78e8d35a0ccccde0f84417400acdfe7fe0aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 06:29:17 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 7 06:29:17 2022 -0800","stats":{"files_changed":16,"insertions":194,"deletions":185,"files":["docgen.sh","docs/parsers/rsync_s.md","docs/readme.md","docs/streaming.md","docs/utils.md","jc/__init__.py","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/streaming.py","man/jc.1"]},"message":"refine streaming parsers","epoch":1644244157,"epoch_utc":null},{"commit":"d1e0ee6123dfecd48d074cb7a40e98a15b6adcb9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Feb 6 08:56:18 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Feb 6 08:56:18 2022 -0800","stats":{"files_changed":1,"insertions":6,"deletions":8,"files":["jc/parsers/ping_s.py"]},"message":"use new streaming functions","epoch":1644166578,"epoch_utc":null},{"commit":"45314c98083067f1f6fae9c477c99fabec223f29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Feb 6 08:55:42 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Feb 6 08:55:42 2022 -0800","stats":{"files_changed":2,"insertions":112,"deletions":102,"files":["jc/streaming.py","jc/utils.py"]},"message":"move some functions to streaming","epoch":1644166542,"epoch_utc":null},{"commit":"df00945b46e27e10107f48d186eedf80b55bd40e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 4 16:03:44 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 4 16:03:44 2022 -0800","stats":{"files_changed":6,"insertions":59,"deletions":49,"files":["jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py"]},"message":"move try/except inside for loop","epoch":1644019424,"epoch_utc":null},{"commit":"fda0050d867bcbe4f1d7e024b08e9881d0f57735","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 4 14:39:45 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 4 14:39:45 2022 -0800","stats":{"files_changed":13,"insertions":191,"deletions":0,"files":[".../centos-7.7/rsync-i-logfile-streaming.json","tests/fixtures/centos-7.7/rsync-i-streaming.json",".../centos-7.7/rsync-i-v-logfile-streaming.json",".../centos-7.7/rsync-i-vv-logfile-streaming.json",".../rsync-i-vvv-logfile-nochange-streaming.json",".../centos-7.7/rsync-i-vvv-logfile-streaming.json",".../centos-7.7/rsync-ivvv-nochange-streaming.json",".../fixtures/centos-7.7/rsync-ivvv-streaming.json","tests/fixtures/generic/rsync-i-streaming.json",".../rsync-i-vvv-logfile-nochange-streaming.json",".../rsync-i-vvv-nochange-streaming.json",".../osx-10.14.6/rsync-i-vvv-streaming.json","tests/test_rsync_s.py"]},"message":"add rsync-s tests","epoch":1644014385,"epoch_utc":null},{"commit":"a76d46f9ecb1eff4d6cc7ad633c97cec0e99001a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 4 12:14:16 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 4 12:14:16 2022 -0800","stats":{"files_changed":19,"insertions":110,"deletions":109,"files":["CHANGELOG","docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","docs/utils.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/utils.py","man/jc.1"]},"message":"refactor ignore_exceptions","epoch":1644005656,"epoch_utc":null},{"commit":"6b069a82d0fa19c8d83b19b934bace556cb758d7","author":"Kevin Lyter","author_email":"lyterk@sent.com","date":"Thu Feb 3 18:13:58 2022 -0800","commit_by":"Kevin Lyter","commit_by_email":"lyterk@sent.com","commit_by_date":"Thu Feb 3 22:40:40 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/lib.py"]},"message":"Add xrandr to lib.py","epoch":1643940838,"epoch_utc":null},{"commit":"6b793d052147406f388c4d5dc04f506a3456f409","author":"Kevin Lyter","author_email":"lyterk@sent.com","date":"Thu Feb 3 18:13:11 2022 -0800","commit_by":"Kevin Lyter","commit_by_email":"lyterk@sent.com","commit_by_date":"Thu Feb 3 22:40:35 2022 -0800","stats":{"files_changed":1,"insertions":6,"deletions":11,"files":["jc/parsers/xrandr.py"]},"message":"Clean up types\n\n* | operator => Union[]\n* Remove unused import Iterator\n* Remove comment","epoch":1643940791,"epoch_utc":null},{"commit":"ce9103f7cc666895dc7840d32797d8c7274cf1b8","author":"Kevin Lyter","author_email":"lyterk@sent.com","date":"Thu Feb 3 18:12:46 2022 -0800","commit_by":"Kevin Lyter","commit_by_email":"lyterk@sent.com","commit_by_date":"Thu Feb 3 18:12:46 2022 -0800","stats":{"files_changed":2,"insertions":0,"deletions":287,"files":["templates/xrandr_sample.txt","templates/xrandr_sample_verbose.txt"]},"message":"Delete old files in template folder","epoch":1643940766,"epoch_utc":null},{"commit":"671d6dee36a37317257e09a080849205d301bceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 3 15:47:46 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 3 15:47:46 2022 -0800","stats":{"files_changed":8,"insertions":83,"deletions":15,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","docs/utils.md"]},"message":"doc update","epoch":1643932066,"epoch_utc":null},{"commit":"49929c714c2d71a310b1dd95138dbd02f8704138","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 3 15:44:18 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 3 15:44:18 2022 -0800","stats":{"files_changed":9,"insertions":139,"deletions":52,"files":["jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/utils.py"]},"message":"add add_jc_meta decorator","epoch":1643931858,"epoch_utc":null},{"commit":"2986771f07de87bfee44dd3bbb4f285e249aad76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 3 09:21:20 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 3 09:21:20 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"require python v3.7 and above since v3.6 is now deprecated","epoch":1643908880,"epoch_utc":null},{"commit":"520082d963b93d2bafeff921da3899686b22cadf","author":"Kevin Lyter","author_email":"lyterk@sent.com","date":"Wed Feb 2 18:25:55 2022 -0800","commit_by":"Kevin Lyter","commit_by_email":"lyterk@sent.com","commit_by_date":"Wed Feb 2 20:33:25 2022 -0800","stats":{"files_changed":9,"insertions":968,"deletions":0,"files":["jc/parsers/xrandr.py","templates/xrandr_sample.txt","templates/xrandr_sample_verbose.txt","tests/fixtures/generic/simple_xrandr.json","tests/fixtures/generic/simple_xrandr.out","tests/fixtures/generic/xrandr.out","tests/fixtures/generic/xrandr_2.out","tests/fixtures/generic/xrandr_device.out","tests/test_xrandr.py"]},"message":"New parser: xrandr\n\nTests passing, working as intended in plugin directory","epoch":1643855155,"epoch_utc":null},{"commit":"021e296d457140c32b5256c2b0acf66efc458896","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 17:06:20 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 2 17:06:20 2022 -0800","stats":{"files_changed":1,"insertions":104,"deletions":100,"files":["jc/parsers/rsync_s.py"]},"message":"move variable inits and regexes up","epoch":1643850380,"epoch_utc":null},{"commit":"42e56fbcea6db64ea7f7045e7755af492c95aec2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 17:05:53 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 2 17:05:53 2022 -0800","stats":{"files_changed":1,"insertions":11,"deletions":12,"files":["jc/parsers/rsync.py"]},"message":"move regex up","epoch":1643850353,"epoch_utc":null},{"commit":"a5b62a4055df37b84751a7cdc14eb6f1ed907cd9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 16:03:14 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 2 16:03:14 2022 -0800","stats":{"files_changed":2,"insertions":230,"deletions":18,"files":["docs/parsers/rsync_s.md","jc/parsers/rsync_s.py"]},"message":"add processing and docs","epoch":1643846594,"epoch_utc":null},{"commit":"be98c9b7f6c67e23ea101223934d67bba512e645","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 15:59:12 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 2 15:59:12 2022 -0800","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/foo_s.py"]},"message":"simplify try/except by moving outside for loop","epoch":1643846352,"epoch_utc":null},{"commit":"aceeb8450796ae748a4d4abf75643f309d0a42e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 15:58:29 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 2 15:58:29 2022 -0800","stats":{"files_changed":3,"insertions":12,"deletions":1,"files":["CHANGELOG","README.md","man/jc.1"]},"message":"doc update","epoch":1643846309,"epoch_utc":null},{"commit":"13910632173e7c815ff1161cf52fd1d17153c4a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 11:49:39 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 2 11:49:39 2022 -0800","stats":{"files_changed":2,"insertions":367,"deletions":0,"files":["jc/lib.py","jc/parsers/rsync_s.py"]},"message":"first draft rsync streaming parser","epoch":1643831379,"epoch_utc":null},{"commit":"52157addd0d6dff3bdb34f179ec14b07c8c27ccc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 11:49:24 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 2 11:49:24 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/foo_s.py"]},"message":"fix compatible list","epoch":1643831364,"epoch_utc":null},{"commit":"ec0bc6615e22fdc536623e290d88b9725cb6a0ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 19:20:19 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 19:20:19 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/utils.md","jc/utils.py"]},"message":"formatting","epoch":1643772019,"epoch_utc":null},{"commit":"2f80800e38256b363a4122195ec4aaffebe67d87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 19:06:41 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 19:06:41 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"simplify all_parser_info comprehension","epoch":1643771201,"epoch_utc":null},{"commit":"3959d3347c8d3e838f8c3158c4db74e2fa2eb856","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 18:33:07 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 18:33:07 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["docs/lib.md"]},"message":"doc update","epoch":1643769187,"epoch_utc":null},{"commit":"b57d25c69a193d3866ea86a3a34edd67049b198d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 18:30:37 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 18:30:37 2022 -0800","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/lib.py"]},"message":"clean up return type for parser_info","epoch":1643769037,"epoch_utc":null},{"commit":"63e43a7cabb51c624c962cdcc92a1199f18c77e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 17:57:12 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 17:57:12 2022 -0800","stats":{"files_changed":7,"insertions":188,"deletions":21,"files":["README.md","docs/lib.md","docs/parsers/rsync.md","docs/parsers/universal.md","docs/parsers/zipinfo.md","docs/utils.md","man/jc.1"]},"message":"doc updates","epoch":1643767032,"epoch_utc":null},{"commit":"21719f9a26c25d896b0a5d49c9d7814175835e16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 17:54:22 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 17:54:22 2022 -0800","stats":{"files_changed":2,"insertions":18,"deletions":20,"files":["jc/lib.py","jc/utils.py"]},"message":"type annotation updates","epoch":1643766862,"epoch_utc":null},{"commit":"96ec70de4f6178b0669fd9ab47cb303dc45e55c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 17:18:55 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 17:18:55 2022 -0800","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["jc/parsers/universal.py","jc/utils.py"]},"message":"remove unneeded optional","epoch":1643764735,"epoch_utc":null},{"commit":"a15a1967dc06169ceeda0fd5b4857ce1a351f3d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 17:18:39 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 17:18:39 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"fix typo","epoch":1643764719,"epoch_utc":null},{"commit":"a10d7566294fe5246e68a16e355ce56dd3557ac5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:49:31 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 16:49:31 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/universal.py"]},"message":"fixy mypy issues","epoch":1643762971,"epoch_utc":null},{"commit":"0700dc7a64b121cf0243416e2cbb82fcef15f5a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:42:51 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 16:42:51 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/rsync.py"]},"message":"remove cygwin from compatible","epoch":1643762571,"epoch_utc":null},{"commit":"ca654b214057e19839b89e0d9a66f1110f679c1e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:42:10 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 16:42:10 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"fix parser order","epoch":1643762530,"epoch_utc":null},{"commit":"4ff3b87c1c96d720f4e7fd39e613944e322cb388","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:18:38 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 16:18:38 2022 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/rsync.py"]},"message":"remove future field from docstring","epoch":1643761118,"epoch_utc":null},{"commit":"ea244fb7a91f1d1f8ffe0ea6dc10dfe5ab836878","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:17:03 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 16:17:03 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_rsync.py"]},"message":"formatting","epoch":1643761023,"epoch_utc":null},{"commit":"8061f30e6fa58d22ed1a52e02c4d9c7f0bf132cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:16:33 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 16:16:33 2022 -0800","stats":{"files_changed":3,"insertions":236,"deletions":6,"files":["tests/fixtures/centos-7.7/rsync-ivvv-nochange.json","tests/fixtures/centos-7.7/rsync-ivvv-nochange.out","tests/test_rsync.py"]},"message":"add centos -i nochange test","epoch":1643760993,"epoch_utc":null},{"commit":"8f3b12e81e1b4f0d4394c33db5b3a352f4cfb391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 14:52:51 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 14:52:51 2022 -0800","stats":{"files_changed":6,"insertions":299,"deletions":0,"files":["jc/parsers/rsync.py",".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.json",".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.out","tests/fixtures/osx-10.14.6/rsync-i-vvv.json","tests/fixtures/osx-10.14.6/rsync-i-vvv.out","tests/test_rsync.py"]},"message":"add fixes for mac -i output","epoch":1643755971,"epoch_utc":null},{"commit":"d0694ce0db5ea2d06b5787429adf23095c4c2df0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 14:20:53 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 14:20:53 2022 -0800","stats":{"files_changed":3,"insertions":245,"deletions":6,"files":[".../osx-10.14.6/rsync-i-vvv-logfile-nochange.json",".../osx-10.14.6/rsync-i-vvv-logfile-nochange.out","tests/test_rsync.py"]},"message":"add nochange log test for mac","epoch":1643754053,"epoch_utc":null},{"commit":"0cd4c4bc7f3ffe13cb2f1920187e25636b88af61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 13:58:51 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 13:58:51 2022 -0800","stats":{"files_changed":2,"insertions":658,"deletions":0,"files":[".../centos-7.7/rsync-i-vvv-logfile-nochange.json",".../centos-7.7/rsync-i-vvv-logfile-nochange.out"]},"message":"add nochange tests","epoch":1643752731,"epoch_utc":null},{"commit":"12f90c349c903634def4225ce87924b475be46d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 13:54:25 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 13:54:25 2022 -0800","stats":{"files_changed":2,"insertions":68,"deletions":20,"files":["jc/parsers/rsync.py","tests/test_rsync.py"]},"message":"update regexes for unchanged files","epoch":1643752465,"epoch_utc":null},{"commit":"26b8a1f167c4b1ec3f9fb4077254a27ed8548933","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 09:58:18 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 09:58:18 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"]},"message":"remove packages from binaries and packages header","epoch":1643738298,"epoch_utc":null},{"commit":"3abe382c064f605d915912f9b726d76784eba8a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 16:01:42 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 31 16:01:42 2022 -0800","stats":{"files_changed":2,"insertions":90,"deletions":3,"files":["EXAMPLES.md","jc/parsers/rsync.py"]},"message":"add examples","epoch":1643673702,"epoch_utc":null},{"commit":"1e2edc2c7b5dc104a9efe4da7df9be61b9e1be32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 15:54:05 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 31 15:54:05 2022 -0800","stats":{"files_changed":5,"insertions":53,"deletions":29,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-logfile.json","tests/fixtures/centos-7.7/rsync-i-v-logfile.json","tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json"]},"message":"add timestamp","epoch":1643673245,"epoch_utc":null},{"commit":"5fe032a6741b7b6586c60eb28be74bd0e56277a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 13:44:44 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 31 13:44:44 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/zipinfo.py"]},"message":"fix typo","epoch":1643665484,"epoch_utc":null},{"commit":"e825c02df1cdae67c7f335fe3c675685eb1a8d02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 13:23:31 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 31 13:23:31 2022 -0800","stats":{"files_changed":11,"insertions":605,"deletions":0,"files":["tests/fixtures/centos-7.7/rsync-i-logfile.json","tests/fixtures/centos-7.7/rsync-i-v-logfile.json","tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out","tests/fixtures/centos-7.7/rsync-i.json","tests/fixtures/centos-7.7/rsync-i.out","tests/fixtures/centos-7.7/rsync-ivvv.json","tests/fixtures/generic/rsync-i.json","tests/fixtures/generic/rsync-i.out","tests/test_rsync.py"]},"message":"add rsync tests","epoch":1643664211,"epoch_utc":null},{"commit":"a4a4d170b5ae8c189de982adea5bdc9bf1f26e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 13:23:22 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 31 13:23:22 2022 -0800","stats":{"files_changed":1,"insertions":10,"deletions":5,"files":["jc/parsers/rsync.py"]},"message":"update docstring","epoch":1643664202,"epoch_utc":null},{"commit":"d0fcd523cb2cbb59d0f90369721749b54222961d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 11:13:23 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 31 11:13:23 2022 -0800","stats":{"files_changed":1,"insertions":19,"deletions":17,"files":["jc/parsers/rsync.py"]},"message":"fix process conversions","epoch":1643656403,"epoch_utc":null},{"commit":"f72b7dc75dbd1c3f5daee3ecee28487258a04873","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 30 16:37:45 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 30 16:37:45 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":8,"files":["jc/parsers/rsync.py"]},"message":"change keyname to files and remove future key","epoch":1643589465,"epoch_utc":null},{"commit":"4101dc6bf7bab7d00899426e2f6271a7480d558f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 30 16:21:03 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 30 16:21:03 2022 -0800","stats":{"files_changed":4,"insertions":1008,"deletions":19,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-v-logfile.out","tests/fixtures/centos-7.7/rsync-i-vv-logfile.out","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out"]},"message":"add log-file support","epoch":1643588463,"epoch_utc":null},{"commit":"ea5011b616365b5c10c04416d43035d84e3dacba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jan 29 17:24:43 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Jan 29 17:24:43 2022 -0800","stats":{"files_changed":2,"insertions":175,"deletions":41,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-logfile.out"]},"message":"updated schema. add log-file option support","epoch":1643505883,"epoch_utc":null},{"commit":"d6de81747fd92642dbd5cb1fb097e375aa38be35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 28 15:00:05 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 28 15:00:05 2022 -0800","stats":{"files_changed":1,"insertions":11,"deletions":3,"files":["jc/parsers/rsync.py"]},"message":"add int/float conversions","epoch":1643410805,"epoch_utc":null},{"commit":"38f04b1c9699246d85332b20df5b6a91ae0c48d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 28 14:45:01 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 28 14:45:01 2022 -0800","stats":{"files_changed":1,"insertions":32,"deletions":7,"files":["jc/parsers/rsync.py"]},"message":"add summary","epoch":1643409901,"epoch_utc":null},{"commit":"84169e1a913d035744f71472be81fe3a7d774b97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 28 14:08:43 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 28 14:08:43 2022 -0800","stats":{"files_changed":4,"insertions":637,"deletions":2,"files":["jc/lib.py","jc/parsers/rsync.py","setup.py","tests/fixtures/centos-7.7/rsync-ivvv.out"]},"message":"add rsync parser","epoch":1643407723,"epoch_utc":null},{"commit":"1f96586a5e883709f436526de6dcb21ff44bf97b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 28 14:08:21 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 28 14:08:21 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/foo.py"]},"message":"reorder imports","epoch":1643407701,"epoch_utc":null},{"commit":"681176e4c958157ef1f2151b3e57963a6ba48e09","merge":"b389665 8bb2663","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 16:53:37 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Jan 27 16:53:37 2022 -0800","message":"Merge pull request #203 from kellyjonbrazil/dev\n\nDev v1.18.2","epoch":1643331217,"epoch_utc":null},{"commit":"8bb266352207f95040b72750e5b3ae3b8ceb2b98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 16:49:46 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 27 16:49:46 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"date update","epoch":1643330986,"epoch_utc":null},{"commit":"663abf313931b49fad64b425ece6a5a257dc7938","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 16:14:14 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 27 16:14:14 2022 -0800","stats":{"files_changed":4,"insertions":3,"deletions":4,"files":["MANIFEST.in","mangen.py","runtests.sh","updatedocs.sh"]},"message":"clean up scripts","epoch":1643328854,"epoch_utc":null},{"commit":"f7ac41db95c16fd21d83fbce678c5dec28ab40f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 13:27:50 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 27 13:27:50 2022 -0800","stats":{"files_changed":2,"insertions":1,"deletions":13,"files":["README.md","man/jc.1"]},"message":"final doc update","epoch":1643318870,"epoch_utc":null},{"commit":"5502cda9e591b531d6b452b02d8ec322c3287800","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 13:03:02 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 27 13:03:02 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["tests/test_lib.py"]},"message":"add additional test for dict inside list for all_parser_info()","epoch":1643317382,"epoch_utc":null},{"commit":"a2b165565f54d91489bf38577a0785e78a4523d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 12:54:44 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 27 12:54:44 2022 -0800","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["tests/test_lib.py"]},"message":"add lib tests for new functions","epoch":1643316884,"epoch_utc":null},{"commit":"b426369815984bd2aae8bcb14e306ba73b8cd4ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 07:45:20 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 27 07:45:20 2022 -0800","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/cli.py"]},"message":"use all_parser_info() from lib in about function","epoch":1643298320,"epoch_utc":null},{"commit":"ac0840cc0afb4aeee2c99076710c987e09cfa5f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 20:51:18 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 20:51:18 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"fix typo","epoch":1643259078,"epoch_utc":null},{"commit":"ee98ab0a4a7671ae34ee79f7b0b97c061a8c2944","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 20:42:20 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 20:42:20 2022 -0800","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/lib.md","docs/utils.md"]},"message":"doc update","epoch":1643258540,"epoch_utc":null},{"commit":"2adec2c0035b84ca0242f2494b6c2651b9898ca5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 20:40:03 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 20:40:03 2022 -0800","stats":{"files_changed":4,"insertions":21,"deletions":19,"files":["jc/lib.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/utils.py"]},"message":"update type hints with mypy help","epoch":1643258403,"epoch_utc":null},{"commit":"f19c9c71bf4f592f55a5176458acd478b462fdbe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 18:39:14 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 18:39:14 2022 -0800","stats":{"files_changed":2,"insertions":15,"deletions":4,"files":["jc/parsers/foo.py","jc/parsers/foo_s.py"]},"message":"add type hints","epoch":1643251154,"epoch_utc":null},{"commit":"e93adf1884c0006a64123513070a5fd96a940da2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 18:09:30 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 18:09:30 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"fix doc","epoch":1643249370,"epoch_utc":null},{"commit":"254c4fc507842ca72064c0196418a7b939d54d06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 18:05:00 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 18:05:00 2022 -0800","stats":{"files_changed":2,"insertions":20,"deletions":6,"files":["docs/readme.md","jc/__init__.py"]},"message":"add new functions","epoch":1643249100,"epoch_utc":null},{"commit":"74d5f60d14fc42cfd5768c7ffd6efc890a65d442","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 17:17:40 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 17:17:40 2022 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"]},"message":"update console interview description","epoch":1643246260,"epoch_utc":null},{"commit":"db7dc0634bc17b4daadc8bc21bba5975c093efe5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 17:12:35 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 17:12:35 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/lib.md","jc/lib.py"]},"message":"make **kwargs optional","epoch":1643245955,"epoch_utc":null},{"commit":"e156b0db453e99fb0f74b618fd343218f978ff68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 17:08:03 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 17:08:03 2022 -0800","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"add type hints","epoch":1643245683,"epoch_utc":null},{"commit":"50adc05fbd6a0dcd9e4fb38aa41917bb57332f36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 16:58:48 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 16:58:48 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/utils.md","jc/utils.py"]},"message":"formatting","epoch":1643245128,"epoch_utc":null},{"commit":"446cac7c217103eb66cfdee97e3a208b7144b644","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 16:55:39 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 16:55:39 2022 -0800","stats":{"files_changed":2,"insertions":15,"deletions":11,"files":["docs/utils.md","jc/utils.py"]},"message":"doc update","epoch":1643244939,"epoch_utc":null},{"commit":"28ffe3076bb5f23aeaf2624344856dbd02b4c0e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 16:34:23 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 16:34:23 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":9,"files":["docs/lib.md","jc/lib.py"]},"message":"formatting","epoch":1643243663,"epoch_utc":null},{"commit":"d4d5e206cae14acd25445952f820810818b3fdce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 15:54:36 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 15:54:36 2022 -0800","stats":{"files_changed":3,"insertions":40,"deletions":28,"files":["docs/lib.md","docs/utils.md","jc/utils.py"]},"message":"type hints update","epoch":1643241276,"epoch_utc":null},{"commit":"42fbe40a4ae02b9d09acdbf9b22573844959d2ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 15:54:18 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 15:54:18 2022 -0800","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/lib.py"]},"message":"simplify type hints","epoch":1643241258,"epoch_utc":null},{"commit":"27e4a120e21dcbb3eadc6c4cf224ddb33859328d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 15:31:18 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 15:31:18 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/lib.md","jc/lib.py"]},"message":"remove trailing comma","epoch":1643239878,"epoch_utc":null},{"commit":"b5d5b7c73a96d4335b178ccfac60af90913e6f0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 15:01:42 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 15:01:42 2022 -0800","stats":{"files_changed":3,"insertions":29,"deletions":148,"files":["docgen.sh","docs/parsers/ifconfig.md","docs/parsers/traceroute.md"]},"message":"remove private classes","epoch":1643238102,"epoch_utc":null},{"commit":"e7471556ba5fb0586ac5b0d7404cabd98a58db2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 14:39:11 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 14:39:11 2022 -0800","stats":{"files_changed":1,"insertions":0,"deletions":5,"files":["docgen.sh"]},"message":"remove sed lines","epoch":1643236751,"epoch_utc":null},{"commit":"640a21341bb1c562cb2124155b511dfc74277fc0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 14:38:57 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 14:38:57 2022 -0800","stats":{"files_changed":2,"insertions":47,"deletions":42,"files":["docs/utils.md","jc/utils.py"]},"message":"fix indentation","epoch":1643236737,"epoch_utc":null},{"commit":"f5befad3e41ba2864abc795a2fdf63e0f1d37c21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 14:21:06 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 14:21:06 2022 -0800","stats":{"files_changed":2,"insertions":33,"deletions":25,"files":["docs/utils.md","jc/utils.py"]},"message":"move docstring under __init__","epoch":1643235666,"epoch_utc":null},{"commit":"f8223023c31093c1a34130b4e4cfc23b1d80a30c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 14:16:04 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 14:16:04 2022 -0800","stats":{"files_changed":4,"insertions":24,"deletions":10,"files":["docgen.sh","docs/parsers/ifconfig.md","docs/parsers/traceroute.md","docs/utils.md"]},"message":"change header depth","epoch":1643235364,"epoch_utc":null},{"commit":"7028e87f9b411c0cfb92eee7fc0667cdcb9a54ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 13:03:51 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 13:03:51 2022 -0800","stats":{"files_changed":87,"insertions":22,"deletions":445,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md"]},"message":"remove TOC for parsers","epoch":1643231031,"epoch_utc":null},{"commit":"590728f9c1ccfdc078e600d1f35ad4ba51f70d36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 11:50:25 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 11:50:25 2022 -0800","stats":{"files_changed":91,"insertions":506,"deletions":17,"files":["docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/utils.md","jc/lib.py"]},"message":"try new pydoc-markdown formatting options","epoch":1643226625,"epoch_utc":null},{"commit":"7cc147fe2d7b278bcab905bc4c3b70b5265e1510","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 19:28:37 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 19:28:37 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":44,"files":["docgen.sh","docgen.sh.old"]},"message":"increase heading size","epoch":1643167717,"epoch_utc":null},{"commit":"3cfb3965bb25024a7b03870b71f02194e278919b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 19:28:04 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 19:28:04 2022 -0800","stats":{"files_changed":3,"insertions":19,"deletions":19,"files":["docs/lib.md","docs/parsers/universal.md","docs/utils.md"]},"message":"formatting","epoch":1643167684,"epoch_utc":null},{"commit":"155d4213225fe4fcf4a059fb63c1ab9fc493177e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 19:18:54 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 19:18:54 2022 -0800","stats":{"files_changed":86,"insertions":182,"deletions":181,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"]},"message":"formatting","epoch":1643167134,"epoch_utc":null},{"commit":"d3e10bb87bdb32396bce95f74e62a023f4efaf99","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:59:40 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 18:59:40 2022 -0800","stats":{"files_changed":1,"insertions":291,"deletions":0,"files":["docs/parsers/lsusb.md"]},"message":"add lsusb docs","epoch":1643165980,"epoch_utc":null},{"commit":"fd5433ee6220357e59633c78b689aa432d056b43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:58:09 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 18:58:09 2022 -0800","stats":{"files_changed":3,"insertions":6,"deletions":293,"files":["docs/lib.md","docs/parsers/lsusb.md","jc/lib.py"]},"message":"parse docstring formatting","epoch":1643165889,"epoch_utc":null},{"commit":"4568f2d06e8fc1c465c86c318d925586481af062","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:51:56 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 18:51:56 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/lib.md","jc/lib.py"]},"message":"formatting for parse docstring","epoch":1643165516,"epoch_utc":null},{"commit":"c36e513d1bcc07cd8f01ff59199950e5396da51b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:42:55 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 18:42:55 2022 -0800","stats":{"files_changed":86,"insertions":88,"deletions":91,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"]},"message":"formatting","epoch":1643164975,"epoch_utc":null},{"commit":"8e089baf3fe30fed80e1c5cdde7c3046bb70ca5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:38:26 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 18:38:26 2022 -0800","stats":{"files_changed":86,"insertions":8,"deletions":855,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"]},"message":"remove info class from docs","epoch":1643164706,"epoch_utc":null},{"commit":"386f6c317e104e797c2b55e3d21c8b064a83ac78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:03:34 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 18:03:34 2022 -0800","stats":{"files_changed":89,"insertions":9552,"deletions":9939,"files":["docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/utils.md"]},"message":"update markdown processor settings","epoch":1643162614,"epoch_utc":null},{"commit":"75cd84ce8a86b3357c6cf5fe4fbc62d0f298a29a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 17:07:47 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 17:07:47 2022 -0800","stats":{"files_changed":94,"insertions":11423,"deletions":10081,"files":["README.md","docgen.sh","docgen.sh.old","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/utils.md","jc/cli.py","man/jc.1"]},"message":"try new markdown conversion","epoch":1643159267,"epoch_utc":null},{"commit":"6fad44e35df5d0e33e716d0fcb84ed309e6fd30b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 16:28:29 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 16:28:29 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"fix type hint","epoch":1643156909,"epoch_utc":null},{"commit":"1caac750daa25a5abeb1289964e918ec06289bfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 16:27:29 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 16:27:29 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/lib.py"]},"message":"Update type hints","epoch":1643156849,"epoch_utc":null},{"commit":"16370dcb3d5cf1304c2340ef2253ef2987a982b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 15:49:48 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 15:49:48 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"update type hints","epoch":1643154588,"epoch_utc":null},{"commit":"c1302f2573993a6908001d6df0697486f54a9e7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 15:49:31 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 15:49:31 2022 -0800","stats":{"files_changed":1,"insertions":19,"deletions":8,"files":["jc/lib.py"]},"message":"add type-hints to public api","epoch":1643154571,"epoch_utc":null},{"commit":"6f0ffe0955e4d9d6cc82552cf4e4f419e3ff3756","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 15:48:00 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 15:48:00 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"docu update","epoch":1643154480,"epoch_utc":null},{"commit":"1f89745fe7cca3a0ac27445942098b717675a481","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 11:17:18 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 11:17:18 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump","epoch":1643138238,"epoch_utc":null},{"commit":"a46ac18ef775bb2c52675e61e11c5d92f33cbe81","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 10:47:05 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 10:47:05 2022 -0800","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["CHANGELOG"]},"message":"doc update","epoch":1643136425,"epoch_utc":null},{"commit":"1a05f1c575b57456481e41baaf551cef30115966","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 10:46:58 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 10:46:58 2022 -0800","stats":{"files_changed":3,"insertions":64,"deletions":54,"files":["jc/__init__.py","jc/cli.py","jc/lib.py"]},"message":"add parser info functions. move _get_parser functionality from cli to lib","epoch":1643136418,"epoch_utc":null},{"commit":"08f818aa42ca68050a79ec387c42bff265257fd5","merge":"027c231 b389665","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 00:45:53 2022 +0000","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Jan 25 00:45:53 2022 +0000","message":"Merge pull request #199 from kellyjonbrazil/master\n\nsync to dev","epoch":1643100353,"epoch_utc":1643071553},{"commit":"b3896650c230b4acc73704a50c93ee74e4034eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 23 13:40:50 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 23 13:40:50 2022 -0800","stats":{"files_changed":2,"insertions":62,"deletions":104,"files":["README.md","templates/readme_template"]},"message":"revert column formatting","epoch":1642974050,"epoch_utc":null},{"commit":"f285539526998a5097943c71dcecb2979036b2b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 23 13:36:22 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 23 13:36:22 2022 -0800","stats":{"files_changed":2,"insertions":104,"deletions":62,"files":["README.md","templates/readme_template"]},"message":"conform to 80 columns","epoch":1642973782,"epoch_utc":null},{"commit":"a896dcdf3b31b60582ebb1b3bca5d1103f998dd6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 23 13:14:00 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 23 13:14:00 2022 -0800","stats":{"files_changed":2,"insertions":338,"deletions":120,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1642972440,"epoch_utc":null},{"commit":"0a187d4ed08173ec360a006ae2367bb1f2f96c52","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 23 10:04:19 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 23 10:04:19 2022 -0800","stats":{"files_changed":3,"insertions":7,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"]},"message":"add console interview links","epoch":1642961059,"epoch_utc":null},{"commit":"2d65bc57d5a396e6683f970194de29494b5c1272","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 16:58:45 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 16:58:45 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/readme.md","jc/__init__.py"]},"message":"add quotes","epoch":1642813125,"epoch_utc":null},{"commit":"ab63809fde0cefe1f0401d957a3736fdb760f0cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 16:13:00 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 16:13:00 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"update description","epoch":1642810380,"epoch_utc":null},{"commit":"6f04707dc63936efd0e533ae36e1b39ead10c466","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 15:33:43 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 15:33:43 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add python package doc info to top of page","epoch":1642808023,"epoch_utc":null},{"commit":"d14a86a9b58bdc3cb0c8df1dfa495aefdaab8033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 15:29:46 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 15:29:46 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py"]},"message":"fix typo","epoch":1642807786,"epoch_utc":null},{"commit":"8e6a31d3da19926ac46744e02b27a899ca5fbd7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 14:08:19 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 14:08:19 2022 -0800","stats":{"files_changed":6,"insertions":14,"deletions":8,"files":["CHANGELOG","docs/readme.md","jc/__init__.py","jc/lib.py","man/jc.1","setup.py"]},"message":"minor fix for macOS binary","epoch":1642802899,"epoch_utc":null},{"commit":"6e7b6afe87355e96422bb2560ffcbd5e79d28f04","merge":"70cb445 027c231","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 13:52:16 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Jan 21 13:52:16 2022 -0800","message":"Merge pull request #198 from kellyjonbrazil/dev\n\nDev v1.18.0","epoch":1642801936,"epoch_utc":null},{"commit":"027c231097a002526350a93322407582a85db0cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 13:48:38 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 13:48:38 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"formatting","epoch":1642801718,"epoch_utc":null},{"commit":"f1cf7d1f953586dd44a4463d924f1a1f52717c37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:51:26 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 12:51:26 2022 -0800","stats":{"files_changed":2,"insertions":7,"deletions":5,"files":["jc/parsers/foo.py","jc/parsers/foo_s.py"]},"message":"add helper function info","epoch":1642798286,"epoch_utc":null},{"commit":"df611cc263f50285e74ceb3381f55b43a74870a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:41:52 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 12:41:52 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting","epoch":1642797712,"epoch_utc":null},{"commit":"0f3143bbbb593340190e66729580146410012e14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:39:22 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 12:39:22 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting","epoch":1642797562,"epoch_utc":null},{"commit":"c280757b7624a46543e481ca47a6e084d2d6f519","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:35:48 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 12:35:48 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting","epoch":1642797348,"epoch_utc":null},{"commit":"d30b9d84ef5ec3a2a504f7ea251c932b8c9ea878","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:33:23 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 12:33:23 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting","epoch":1642797203,"epoch_utc":null},{"commit":"50ded1dbd97d26cf01d7e1a98b40e0f0f7d02202","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:31:03 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 12:31:03 2022 -0800","stats":{"files_changed":1,"insertions":10,"deletions":4,"files":["docs/readme.md"]},"message":"doc update","epoch":1642797063,"epoch_utc":null},{"commit":"e319aea5a45c598a44f35b4e58131d977509e4f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:29:36 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 12:29:36 2022 -0800","stats":{"files_changed":1,"insertions":10,"deletions":4,"files":["jc/__init__.py"]},"message":"add doc version info","epoch":1642796976,"epoch_utc":null},{"commit":"ba86509c1d8700a50fe14e9d931ee57261306c5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:15:34 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 12:15:34 2022 -0800","stats":{"files_changed":1,"insertions":3,"deletions":9,"files":["jc/cli.py"]},"message":"simplify OSError exception handling","epoch":1642796134,"epoch_utc":null},{"commit":"0a9279ae6bfdd1aa59f5e9b31ce0af3bfec19f96","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:15:16 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 12:15:16 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["CHANGELOG","tests/test_lib.py"]},"message":"doc update","epoch":1642796116,"epoch_utc":null},{"commit":"a13dde12af01b4473aa9a34b8a0d7387fb48500a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 07:42:03 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 07:42:03 2022 -0800","stats":{"files_changed":173,"insertions":173,"deletions":173,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py","man/jc.1"]},"message":"change raw output wording","epoch":1642779723,"epoch_utc":null},{"commit":"e2ed358de1abefd737c187a324cbe4734d6975e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 15:31:24 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 20 15:31:24 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["CHANGELOG"]},"message":"changelog update","epoch":1642721484,"epoch_utc":null},{"commit":"a2cd3666210be3727a00c3405972f32fbd421046","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 15:01:49 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Jan 20 15:01:49 2022 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["docs/_config.yml"]},"message":"Delete _config.yml","epoch":1642719709,"epoch_utc":null},{"commit":"15addd9bfc18a0e87beb97040b431c872b783662","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 09:59:23 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 20 09:59:23 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":8,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"doc fix","epoch":1642701563,"epoch_utc":null},{"commit":"a4e34b0053ec0c032f4783caaa3e07fc2c685a98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 09:46:24 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 20 09:46:24 2022 -0800","stats":{"files_changed":2,"insertions":63,"deletions":0,"files":["docgen.sh","docs/parsers/universal.md"]},"message":"add universal parser docs","epoch":1642700784,"epoch_utc":null},{"commit":"d09529ac302fbcc156d58cf836f8397c98121a76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 09:40:34 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 20 09:40:34 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update","epoch":1642700434,"epoch_utc":null},{"commit":"553097b5050dc02fbdaeec2e2e138e01bc6811d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 09:40:08 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 20 09:40:08 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/universal.py"]},"message":"docstring update","epoch":1642700408,"epoch_utc":null},{"commit":"49c556857708307f617b2b516f2d281398681b5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 07:49:45 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 20 07:49:45 2022 -0800","stats":{"files_changed":7,"insertions":35,"deletions":15,"files":["README.md","docs/lib.md","docs/readme.md","jc/__init__.py","jc/lib.py","man/jc.1","templates/readme_template"]},"message":"module doc update","epoch":1642693785,"epoch_utc":null},{"commit":"6962b9ee8a52c924dc2de6b79ddeea3636e80fe4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 22:24:59 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 22:24:59 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":6,"files":["docs/lib.md","jc/lib.py"]},"message":"formatting","epoch":1642659899,"epoch_utc":null},{"commit":"b4575a3f780f9aa2751c8b4789f67aaca32dd1cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 22:20:36 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 22:20:36 2022 -0800","stats":{"files_changed":3,"insertions":91,"deletions":1,"files":["docgen.sh","docs/lib.md","jc/lib.py"]},"message":"add lib docs","epoch":1642659636,"epoch_utc":null},{"commit":"35b54d235d73b2ce658223be3d6095906f142d89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 21:53:13 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 21:53:13 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add python package doc info","epoch":1642657993,"epoch_utc":null},{"commit":"583a5757e454a4e36b331057d1266279b55ee16a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 21:32:21 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 21:32:21 2022 -0800","stats":{"files_changed":18,"insertions":34,"deletions":30,"files":["docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/file.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/traceroute.md","docs/parsers/ufw_appinfo.md","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/file.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/traceroute.py","jc/parsers/ufw_appinfo.py"]},"message":"formatting","epoch":1642656741,"epoch_utc":null},{"commit":"f355333eeed3c4afba844dc7bed5224356552adc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 19:27:46 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 19:27:46 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting","epoch":1642649266,"epoch_utc":null},{"commit":"4d7df109604e4f8367904968602acfc05217a7fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 19:24:37 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 19:24:37 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting","epoch":1642649077,"epoch_utc":null},{"commit":"66b2c28f4bc75fb76800f9fb7ea485eee194a9a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 19:22:08 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 19:22:08 2022 -0800","stats":{"files_changed":2,"insertions":24,"deletions":24,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting","epoch":1642648928,"epoch_utc":null},{"commit":"299a9c6d88fdf1fede447b4057d8f4263daef733","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 19:19:25 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 19:19:25 2022 -0800","stats":{"files_changed":2,"insertions":25,"deletions":57,"files":["docs/parsers/csv.md","docs/readme.md"]},"message":"formatting","epoch":1642648765,"epoch_utc":null},{"commit":"bd391d979ce98b126dab0f012a56b3fcb1f73439","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 19:18:03 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 19:18:03 2022 -0800","stats":{"files_changed":1,"insertions":23,"deletions":55,"files":["jc/__init__.py"]},"message":"add lib function docs","epoch":1642648683,"epoch_utc":null},{"commit":"7309bd2282445f6daef0b1491ff60b8104500abb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 18:47:44 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 18:47:44 2022 -0800","stats":{"files_changed":3,"insertions":19,"deletions":10,"files":["jc/lib.py","jc/parsers/csv.py","jc/parsers/universal.py"]},"message":"add get_help","epoch":1642646864,"epoch_utc":null},{"commit":"ce84c09d3394b598f19a3e012ef27ce4154e3b3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 18:44:26 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 18:44:26 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/__init__.py"]},"message":"add get_help()","epoch":1642646666,"epoch_utc":null},{"commit":"b4fffbb6476daf78fbdf19dbf31bbeeab950d2dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 17:30:14 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 17:30:14 2022 -0800","stats":{"files_changed":46,"insertions":501,"deletions":304,"files":["docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/history.md","docs/parsers/ini.md","docs/parsers/iostat_s.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsusb.md","docs/parsers/netstat.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/ps.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/upower.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/who.md"]},"message":"formatting","epoch":1642642214,"epoch_utc":null},{"commit":"3701b4198aad1826ad6da571fbcaa530b057cc48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 17:29:22 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 17:29:22 2022 -0800","stats":{"files_changed":86,"insertions":710,"deletions":606,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"formatting","epoch":1642642162,"epoch_utc":null},{"commit":"d4c34098fa7ad2098076f0fa0564467e5d06f916","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 11:31:29 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 11:31:29 2022 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/lib.py"]},"message":"formatting","epoch":1642620689,"epoch_utc":null},{"commit":"b3c531193b3fc53697e7d7823576f481f9462d53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 11:08:59 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 11:08:59 2022 -0800","stats":{"files_changed":3,"insertions":125,"deletions":71,"files":["CHANGELOG","docs/utils.md","jc/utils.py"]},"message":"formatting","epoch":1642619339,"epoch_utc":null},{"commit":"1d0e07c77bab5c48405323e52873c7952dd0a587","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 10:31:46 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 10:31:46 2022 -0800","stats":{"files_changed":3,"insertions":57,"deletions":55,"files":["docs/readme.md","jc/__init__.py","jc/lib.py"]},"message":"formatting","epoch":1642617106,"epoch_utc":null},{"commit":"06a322cf9c7468dc7e8ba05914e1d07bbc51f63a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 10:31:36 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 10:31:36 2022 -0800","stats":{"files_changed":1,"insertions":14,"deletions":8,"files":["tests/test_lib.py"]},"message":"rename tests and add conversion function tests","epoch":1642617096,"epoch_utc":null},{"commit":"623d148712f93eacf9b7b5803140603f0af67acb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 09:30:53 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 09:30:53 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"doc update","epoch":1642613453,"epoch_utc":null},{"commit":"647e83d0439a0937db14a2cc97929e38a6b6a43b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 09:29:09 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 09:29:09 2022 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["tests/test_lib.py"]},"message":"add test to ensure there are zero plugin parsers installed during tests","epoch":1642613349,"epoch_utc":null},{"commit":"91a554464444da0cc3ed3b4d212539232411f6cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 09:28:35 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 09:28:35 2022 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/lib.py"]},"message":"doc update","epoch":1642613315,"epoch_utc":null},{"commit":"a1190998aef1bf403ee34c38c1a0fbd6291ac38b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 09:15:24 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 09:15:24 2022 -0800","stats":{"files_changed":2,"insertions":82,"deletions":0,"files":["tests/test_jc.py","tests/test_lib.py"]},"message":"add jc and jc.lib tests","epoch":1642612524,"epoch_utc":null},{"commit":"097d7a1850f6f6df73a5761c657b73ef9dbd3e29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 09:15:11 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 09:15:11 2022 -0800","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/__init__.py"]},"message":"simplify __init__","epoch":1642612511,"epoch_utc":null},{"commit":"302bf72e720b3a67fbf1300eaff4f99fc343abeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 15:38:03 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 18 15:38:03 2022 -0800","stats":{"files_changed":138,"insertions":718,"deletions":6,"files":["docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py"]},"message":"Update high-level API docs","epoch":1642549083,"epoch_utc":null},{"commit":"2c42baf3a4dd6733c078f31a1becd708a05f2c36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 14:18:12 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 18 14:18:12 2022 -0800","stats":{"files_changed":34,"insertions":174,"deletions":0,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py"]},"message":"add new high-level api info","epoch":1642544292,"epoch_utc":null},{"commit":"03feb89c84096c0ea1d6ae3a0634ae7b8b507e8f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 13:46:11 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 18 13:46:11 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/readme.md","jc/__init__.py"]},"message":"add module list info","epoch":1642542371,"epoch_utc":null},{"commit":"9dd553192fbca3037b3afe5df6bae88f7a8a9365","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 13:40:09 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 18 13:40:09 2022 -0800","stats":{"files_changed":5,"insertions":29,"deletions":12,"files":["CHANGELOG","README.md","docs/readme.md","man/jc.1","templates/readme_template"]},"message":"doc update","epoch":1642542009,"epoch_utc":null},{"commit":"fa3f02e9d1ac7867e3465c2d214f4e4229ff4c66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 13:39:51 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 18 13:39:51 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump","epoch":1642541991,"epoch_utc":null},{"commit":"0a9dde58c5235f78c4c9ae9c013f7454482c6067","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 13:10:14 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 18 13:10:14 2022 -0800","stats":{"files_changed":3,"insertions":228,"deletions":134,"files":["jc/__init__.py","jc/cli.py","jc/lib.py"]},"message":"add jc.parse() high-level API","epoch":1642540214,"epoch_utc":null},{"commit":"70cb4453bebb235130e2c287633ecb1de6c2b0aa","merge":"e6900e2 830674c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 14 11:54:29 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Jan 14 11:54:29 2022 -0800","message":"Merge pull request #195 from kellyjonbrazil/dev\n\nDev v1.17.7","epoch":1642190069,"epoch_utc":null},{"commit":"830674cc6f19e107347a743baff7bbaab7f80b75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 14 11:47:25 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 14 11:47:25 2022 -0800","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["CHANGELOG","jc/__init__.py","man/jc.1","setup.py"]},"message":"version bump","epoch":1642189645,"epoch_utc":null},{"commit":"fb406b58a12fdfe81bcff76671661af77e7f2fe5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jan 8 20:22:53 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Jan 8 20:22:53 2022 -0800","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["docs/parsers/stat_s.md","jc/parsers/stat_s.py","man/jc.1"]},"message":"formatting","epoch":1641702173,"epoch_utc":null},{"commit":"55b272e41259ddc835cf4eb513fb67e7b2cf1573","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 6 11:13:14 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 6 11:13:14 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat_s.py"]},"message":"tighten stat data detection","epoch":1641496394,"epoch_utc":null},{"commit":"94f62a9bf36242310790a0f37c66b2e6c6fdc078","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 6 11:03:49 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 6 11:03:49 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/stat_s.md","jc/parsers/stat_s.py"]},"message":"formatting","epoch":1641495829,"epoch_utc":null},{"commit":"8d19e4cb7b45e3b6cb8c404c959949b7593c9386","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 6 11:00:53 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 6 11:00:53 2022 -0800","stats":{"files_changed":4,"insertions":115,"deletions":1,"files":["CHANGELOG","README.md","docs/parsers/stat_s.md","man/jc.1"]},"message":"doc update","epoch":1641495653,"epoch_utc":null},{"commit":"7e510d48e0f8426a67cf8d70d06d0331c274d358","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 6 10:36:33 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 6 10:36:33 2022 -0800","stats":{"files_changed":7,"insertions":106,"deletions":2,"files":["jc/parsers/stat_s.py","tests/fixtures/centos-7.7/stat-streaming.json","tests/fixtures/freebsd12/stat-streaming.json",".../stat-filename-with-spaces-streaming.json","tests/fixtures/osx-10.14.6/stat-streaming.json","tests/fixtures/ubuntu-18.04/stat-streaming.json","tests/test_stat_s.py"]},"message":"simplify non-stat parse error logic","epoch":1641494193,"epoch_utc":null},{"commit":"7b20cffb143447f4497bc4e895eac2426e8a519f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 5 11:44:00 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 5 11:44:00 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/stat_s.py"]},"message":"simplify last item logic","epoch":1641411840,"epoch_utc":null},{"commit":"5c934c43c13b69183561da8a77280feb3363e950","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 5 11:39:00 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 5 11:39:00 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/stat_s.py"]},"message":"add continue to simplify logic","epoch":1641411540,"epoch_utc":null},{"commit":"8609298449e997ba4804d818f4fc23cb393ded7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 5 11:25:58 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 5 11:25:58 2022 -0800","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/parsers/stat_s.py"]},"message":"update docstring","epoch":1641410758,"epoch_utc":null},{"commit":"72cb0dc10b2dac486d3e2a52cf44baf0d7496034","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 5 11:22:01 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 5 11:22:01 2022 -0800","stats":{"files_changed":1,"insertions":14,"deletions":10,"files":["jc/parsers/stat_s.py"]},"message":"fixup for first and last items","epoch":1641410521,"epoch_utc":null},{"commit":"7b22fa81ded0f6f59e250ffea63c5d2a0f928b25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 5 07:46:58 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 5 07:46:58 2022 -0800","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/parsers/stat_s.py"]},"message":"raise for non-stat data","epoch":1641397618,"epoch_utc":null},{"commit":"0b6a1307790e0793917bc2781e4873aa9dd67225","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 16:43:38 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 4 16:43:38 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/stat_s.py"]},"message":"ignore blank lines","epoch":1641343418,"epoch_utc":null},{"commit":"fdcf4338e0f099699f8d48df6382be1cc97dba84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 15:31:00 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 4 15:31:00 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["jc/parsers/stat_s.py"]},"message":"add examples to docstring","epoch":1641339060,"epoch_utc":null},{"commit":"ee43037f481286a34a766390568965fdd53af132","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 15:13:42 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 4 15:13:42 2022 -0800","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/stat_s.py"]},"message":"remove unused continue lines","epoch":1641338022,"epoch_utc":null},{"commit":"26e365563c314e694915c7a3feae490ea99a112c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 15:07:45 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 4 15:07:45 2022 -0800","stats":{"files_changed":1,"insertions":50,"deletions":11,"files":["jc/parsers/stat_s.py"]},"message":"add schema and _process logic","epoch":1641337665,"epoch_utc":null},{"commit":"1b39586bb1b62aee8ae709512c2e3f79cefdb3d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 15:01:42 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 4 15:01:42 2022 -0800","stats":{"files_changed":2,"insertions":227,"deletions":0,"files":["jc/cli.py","jc/parsers/stat_s.py"]},"message":"add stat streaming parser","epoch":1641337302,"epoch_utc":null},{"commit":"8bb3a6bea34d60d49039f1ed72fd7e413edc05da","merge":"78672bd e6900e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 13:33:35 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Jan 4 13:33:35 2022 -0800","message":"Merge pull request #194 from kellyjonbrazil/master\n\nsync to dev","epoch":1641332015,"epoch_utc":null},{"commit":"e6900e2000bf265dfcfc09ffbfda39e9238661af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:41:16 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 3 09:41:16 2022 -0800","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["EXAMPLES.md"]},"message":"add jar-manifest","epoch":1641231676,"epoch_utc":null},{"commit":"0ee244756bf39123e4873eb231156edbe7f0e0ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:22:35 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 3 09:22:35 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/jar_manifest.md","jc/parsers/jar_manifest.py"]},"message":"spelling","epoch":1641230555,"epoch_utc":null},{"commit":"6d5ac9abe6712e01887ce0d96c278a568319f405","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:19:40 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 3 09:19:40 2022 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["docs/parsers/csv.md","docs/parsers/csv_s.md","man/jc.1"]},"message":"update docs","epoch":1641230380,"epoch_utc":null},{"commit":"44f6d9e1321459be8196aeebf6db088cc5120e61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:18:43 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 3 09:18:43 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"changelog update","epoch":1641230323,"epoch_utc":null},{"commit":"360154559c5dee6affa55bbdd5d2f473248b9168","merge":"241d53a 78672bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:12:50 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Jan 3 09:12:50 2022 -0800","message":"Merge pull request #193 from kellyjonbrazil/dev\n\nDev add csv doublequote fix","epoch":1641229970,"epoch_utc":null},{"commit":"78672bd7ad66c418e0ecf31add73f887b0946d29","merge":"bc7973a 65d96e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:08:57 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Jan 3 09:08:57 2022 -0800","message":"Merge pull request #190 from shaikustin/csv-doubleqouted\n\nfix doubleqoute in csv","epoch":1641229737,"epoch_utc":null},{"commit":"65d96e26b59e231c77c1dbba1dc91708c33de30c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:06:00 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 3 09:06:00 2022 -0800","stats":{"files_changed":2,"insertions":13,"deletions":0,"files":["tests/fixtures/generic/csv-doubleqouted-streaming.json","tests/test_csv_s.py"]},"message":"add streaming tests","epoch":1641229560,"epoch_utc":null},{"commit":"241d53af9a5c9bba70e28835e22c52c0060269ba","merge":"f733100 bc7973a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 08:49:15 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Jan 3 08:49:15 2022 -0800","message":"Merge pull request #192 from kellyjonbrazil/dev\n\nDev v1.17.6","epoch":1641228555,"epoch_utc":null},{"commit":"5563829df2849a899df2e9211d6c92bddc695f9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 08:48:23 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 3 08:48:23 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/csv_s.py"]},"message":"make dialect sniff behavior match non-streaming parser","epoch":1641228503,"epoch_utc":null},{"commit":"3a4a27e1f94ee07352c7616c57ec655c1aea04f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 11:44:25 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 2 11:44:25 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/csv.py"]},"message":"version bump","epoch":1641152665,"epoch_utc":null},{"commit":"9c887a36a804d817c3f669a55b9b1566d09d645d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 11:44:18 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 2 11:44:18 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/csv_s.py"]},"message":"update csv_s parser with csv changes","epoch":1641152658,"epoch_utc":null},{"commit":"bc7973af36e13006230b5faa9e201e300d468912","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 11:07:15 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 2 11:07:15 2022 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","jc/cli.py","man/jc.1"]},"message":"update copyright","epoch":1641150435,"epoch_utc":null},{"commit":"32972d8fdbdc71923978fd5c2a87fd6cfa4b7f8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 11:00:52 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 2 11:00:52 2022 -0800","stats":{"files_changed":7,"insertions":122,"deletions":9,"files":["CHANGELOG","README.md","docs/parsers/jar_manifest.md","jc/__init__.py","jc/parsers/jar_manifest.py","man/jc.1","setup.py"]},"message":"doc update","epoch":1641150052,"epoch_utc":null},{"commit":"b128d9109cbdb1176f2473d450023bb0be02531b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 10:51:02 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 2 10:51:02 2022 -0800","stats":{"files_changed":1,"insertions":46,"deletions":0,"files":["tests/test_jar_manifest.py"]},"message":"add MANIFEST.MF tests","epoch":1641149462,"epoch_utc":null},{"commit":"929d7273a422c2bd5b83e5e19d32630f1a027f75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 10:29:56 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 2 10:29:56 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/jar_manifest.py"]},"message":"doc updates","epoch":1641148196,"epoch_utc":null},{"commit":"2a40f842743a8745d651b4b6cae645045e6c6aab","author":"shaik","author_email":"shai.kustin@torq.io","date":"Sun Jan 2 17:11:20 2022 +0200","commit_by":"shaik","commit_by_email":"shai.kustin@torq.io","commit_by_date":"Sun Jan 2 17:30:25 2022 +0200","stats":{"files_changed":4,"insertions":22,"deletions":1,"files":["jc/parsers/csv.py","tests/fixtures/generic/csv-doubleqouted.csv","tests/fixtures/generic/csv-doubleqouted.json","tests/test_csv.py"]},"message":"fix doubleqoute in csv","epoch":1641172280,"epoch_utc":null},{"commit":"9ff6fa818f0857321e4b3b089d288997f2ae27af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jan 1 10:08:40 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Jan 1 10:08:40 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add jar-manifest","epoch":1641060520,"epoch_utc":null},{"commit":"dac73a4bfe24e36474fdf6ff60c23e784ca409bd","merge":"d789554 f733100","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jan 1 10:06:46 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sat Jan 1 10:06:46 2022 -0800","message":"Merge pull request #189 from kellyjonbrazil/master\n\nuse github releases instead of packaging site","epoch":1641060406,"epoch_utc":null},{"commit":"d7895547f74744e82317eabe4c870115701872be","merge":"f8e09ae b7d439c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jan 1 10:04:47 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sat Jan 1 10:04:47 2022 -0800","message":"Merge pull request #188 from listuser/new_branch\n\nCreate key value pairs from a MANIFEST.MF file, to include key multiline value pairs.","epoch":1641060287,"epoch_utc":null},{"commit":"b7d439cb870e443e4f4e4a2137ab170835e77eff","author":"listuser","author_email":null,"date":"Fri Dec 31 12:15:50 2021 -0800","commit_by":"listuser","commit_by_email":null,"commit_by_date":"Fri Dec 31 12:15:50 2021 -0800","stats":{"files_changed":3,"insertions":2220,"deletions":9,"files":["jc/parsers/{jar-manifest.py => jar_manifest.py}","tests/fixtures/rhel-8/MANIFEST.MF.MULTI.json","tests/fixtures/rhel-8/MANIFEST.MF.MULTI.out"]},"message":"Renamed jar-manifest.py to jar_manifest.py, added multi manifest outputs to tests...","epoch":1640981750,"epoch_utc":null},{"commit":"7cc903a5f5ca368be97babadc72689375567a901","author":"listuser","author_email":null,"date":"Thu Dec 30 15:10:53 2021 -0800","commit_by":"listuser","commit_by_email":null,"commit_by_date":"Thu Dec 30 15:10:53 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/jar-manifest.py"]},"message":"Removed inflating from examples in jar-manifest.py","epoch":1640905853,"epoch_utc":null},{"commit":"c495a8291bd3e1fd070ee2e018b9b550f9c86314","author":"listuser","author_email":null,"date":"Thu Dec 30 15:06:06 2021 -0800","commit_by":"listuser","commit_by_email":null,"commit_by_date":"Thu Dec 30 15:06:06 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":292,"files":["tests/fixtures/rhel-8/MANIFEST.MF.json"]},"message":"Updated test output in MANIFEST.MF.json","epoch":1640905566,"epoch_utc":null},{"commit":"5e1d7d777c627fb17feda6e51d9640bbd0f03302","author":"listuser","author_email":null,"date":"Thu Dec 30 15:02:48 2021 -0800","commit_by":"listuser","commit_by_email":null,"commit_by_date":"Thu Dec 30 15:02:48 2021 -0800","stats":{"files_changed":8,"insertions":304,"deletions":2544,"files":["jc/parsers/{metamf.py => jar-manifest.py}","tests/fixtures/rhel-8/MANIFEST.MF.json",".../rhel-8/{MANIFEST.MF => MANIFEST.MF.out}",".../rhel-8/cmds_used_to_generate_test_data.txt",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out"]},"message":"Renamed metamf.py to jar-manifest.py, plus other changes","epoch":1640905368,"epoch_utc":null},{"commit":"7edad3f676fe5560017ca9cb05ede6f46787e78f","author":"listuser","author_email":null,"date":"Wed Dec 29 12:15:15 2021 -0800","commit_by":"listuser","commit_by_email":null,"commit_by_date":"Wed Dec 29 12:15:15 2021 -0800","stats":{"files_changed":8,"insertions":3042,"deletions":0,"files":["jc/parsers/metamf.py","tests/fixtures/rhel-8/MANIFEST.MF","tests/fixtures/rhel-8/MANIFEST.MF.json",".../rhel-8/cmds_used_to_generate_test_data.txt",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out"]},"message":"Create key value pairs from a MANIFEST.MF file, to include key multiline value pairs.","epoch":1640808915,"epoch_utc":null},{"commit":"f7331001d4ab976e311458a16b6e5337da2e3aab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 23 11:35:39 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 23 11:35:39 2021 -0800","stats":{"files_changed":3,"insertions":9,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"]},"message":"use github releases instead of packaging site","epoch":1640288139,"epoch_utc":null},{"commit":"f8e09ae2ffe185d21305d566fad20f510df9890f","merge":"2e4f5a5 433c7cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 15:46:39 2021 -0600","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Dec 21 15:46:39 2021 -0600","message":"Merge pull request #187 from kellyjonbrazil/master\n\nsync to dev","epoch":1640130399,"epoch_utc":null},{"commit":"433c7cc0f05e321ffe024845a908f3e856d4cd2b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 13:42:24 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 21 13:42:24 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/zipinfo.md","jc/parsers/zipinfo.py"]},"message":"formatting","epoch":1640122944,"epoch_utc":null},{"commit":"d753e71a7452310d45fa605a2e4c70320ed60dbb","merge":"3ac8d03 2e4f5a5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 15:21:18 2021 -0600","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Dec 21 15:21:18 2021 -0600","message":"Merge pull request #186 from kellyjonbrazil/dev\n\nDev v1.17.5","epoch":1640128878,"epoch_utc":null},{"commit":"2e4f5a508b6c90f9e03dcbcf64efc0e2fc446666","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 12:19:17 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 21 12:19:17 2021 -0800","stats":{"files_changed":4,"insertions":6,"deletions":3,"files":["CHANGELOG","jc/__init__.py","man/jc.1","setup.py"]},"message":"version bump","epoch":1640117957,"epoch_utc":null},{"commit":"88b960eff6cb3739d0d243c8d8b3e8ad5b8eb97c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 12:14:20 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 21 12:14:20 2021 -0800","stats":{"files_changed":4,"insertions":144,"deletions":1,"files":["EXAMPLES.md","README.md","docs/parsers/zipinfo.md","man/jc.1"]},"message":"doc update","epoch":1640117660,"epoch_utc":null},{"commit":"88c77bd89e2c2a5f023e6638816c9153b6276d35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 12:08:16 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 21 12:08:16 2021 -0800","stats":{"files_changed":2,"insertions":47,"deletions":0,"files":["tests/fixtures/osx-10.14.6/zipinfo-multi.json","tests/test_zipinfo.py"]},"message":"add zipinfo tests","epoch":1640117296,"epoch_utc":null},{"commit":"51a7a4251fff518d8da78ffa41e7ba2e2cb47f12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 11:11:56 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 21 11:11:56 2021 -0800","stats":{"files_changed":1,"insertions":24,"deletions":0,"files":["tests/fixtures/osx-10.14.6/zipinfo-multi.out"]},"message":"add multi-archive test output","epoch":1640113916,"epoch_utc":null},{"commit":"51d2f316f388d962c26aeb4f42affebec339e5a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 11:11:44 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 21 11:11:44 2021 -0800","stats":{"files_changed":1,"insertions":97,"deletions":72,"files":["jc/parsers/zipinfo.py"]},"message":"add multi-archive support","epoch":1640113904,"epoch_utc":null},{"commit":"ff78a46c4854339a097992701351ef471aff1671","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 08:13:17 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 21 08:13:17 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"add zipinfo parser","epoch":1640103197,"epoch_utc":null},{"commit":"ed4a9dc1d470f64bcc9de35b2d98568ffd50257d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 08:13:00 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 21 08:13:00 2021 -0800","stats":{"files_changed":1,"insertions":21,"deletions":23,"files":["jc/parsers/zipinfo.py"]},"message":"formatting","epoch":1640103180,"epoch_utc":null},{"commit":"63182dba26040974cb8cada6f5910bb29b1fa3ed","merge":"b450697 9c1eaa9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 10:08:46 2021 -0600","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Dec 21 10:08:46 2021 -0600","message":"Merge pull request #185 from listuser/new_branch\n\ncontributed zipinfo parser","epoch":1640110126,"epoch_utc":null},{"commit":"9c1eaa938934269fe4179da798acf5f119cde0cf","author":"Matt J","author_email":"none","date":"Mon Dec 20 21:53:34 2021 -0800","commit_by":"Matt J","commit_by_email":"none","commit_by_date":"Mon Dec 20 21:53:34 2021 -0800","stats":{"files_changed":2,"insertions":68,"deletions":61,"files":["jc/parsers/zipinfo.py","tests/fixtures/rhel-8/zipinfo.json"]},"message":"revised zipinfo.py nested version","epoch":1640066014,"epoch_utc":null},{"commit":"bc520fcbcdfad6a53e51944391fd24512bed8128","author":"Matt J","author_email":"none","date":"Mon Dec 20 14:29:50 2021 -0800","commit_by":"Matt J","commit_by_email":"none","commit_by_date":"Mon Dec 20 14:29:50 2021 -0800","stats":{"files_changed":2,"insertions":63,"deletions":53,"files":["jc/parsers/zipinfo.py","tests/fixtures/rhel-8/zipinfo.json"]},"message":"added zipinfo.py nested version","epoch":1640039390,"epoch_utc":null},{"commit":"46faac1a12a5b39d6a25427f6e8fdcca1204dbcd","author":"Matt J","author_email":"none","date":"Sun Dec 19 17:44:56 2021 -0800","commit_by":"Matt J","commit_by_email":"none","commit_by_date":"Sun Dec 19 18:08:11 2021 -0800","stats":{"files_changed":2,"insertions":1222,"deletions":0,"files":["tests/fixtures/rhel-8/zipinfo.json","tests/fixtures/rhel-8/zipinfo.out"]},"message":"add test data zipinfo.json and zipinfo.out","epoch":1639964696,"epoch_utc":null},{"commit":"3c424c0cb3cff462a963183585b57bea004e974f","author":"Matt J","author_email":"none","date":"Sun Dec 19 14:05:48 2021 -0800","commit_by":"Matt J","commit_by_email":"none","commit_by_date":"Sun Dec 19 14:05:48 2021 -0800","stats":{"files_changed":1,"insertions":165,"deletions":0,"files":["jc/parsers/zipinfo.py"]},"message":"initial commit zipinfo.py to new_branch","epoch":1639951548,"epoch_utc":null},{"commit":"3ac8d0362b4fb9999fc55a60a9cb20ac80d114f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 16 07:04:35 2021 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Dec 16 07:04:35 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"use quotes around python versions","epoch":1639667075,"epoch_utc":null},{"commit":"d88b998e6c7826a9ecae18663328e2d2915030fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 9 10:58:06 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 9 10:58:06 2021 -0800","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"]},"message":"formatting","epoch":1639076286,"epoch_utc":null},{"commit":"a9ed55c00652a563391a7930c7a4649967131ae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 9 10:54:04 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 9 10:54:04 2021 -0800","stats":{"files_changed":11,"insertions":11,"deletions":11,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]},"message":"fix spelling","epoch":1639076044,"epoch_utc":null},{"commit":"ea614341232e5272ee0c7fd46ba0f313033c761f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 9 10:21:37 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 9 10:21:37 2021 -0800","stats":{"files_changed":4,"insertions":16,"deletions":8,"files":["docs/parsers/crontab.md","docs/parsers/crontab_u.md","jc/parsers/crontab.py","jc/parsers/crontab_u.py"]},"message":"fix schema docs","epoch":1639074097,"epoch_utc":null},{"commit":"a73d0d26cbe2860b8374661068e09e0717a3bab2","merge":"a7de911 b450697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 20:49:01 2021 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Dec 8 20:49:01 2021 -0800","message":"Merge pull request #184 from kellyjonbrazil/dev\n\nDev 1.17.4","epoch":1639025341,"epoch_utc":null},{"commit":"b4506976e3c865397bc657183d49c484d8bcfd7a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 11:21:12 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 8 11:21:12 2021 -0800","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["man/jc.1","templates/manpage_template"]},"message":"formatting","epoch":1638991272,"epoch_utc":null},{"commit":"34cb75a09697a06c3878f2f9a84eb3bd2a90ae62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:46:00 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 8 08:46:00 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/__init__.py","setup.py"]},"message":"version bump","epoch":1638981960,"epoch_utc":null},{"commit":"34df643f60712ae25645cb7cddff80e43c12262b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:35:09 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 8 08:35:09 2021 -0800","stats":{"files_changed":4,"insertions":18,"deletions":0,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"add disable colors section","epoch":1638981309,"epoch_utc":null},{"commit":"ac7c13fcc013d386f34db51d634298fa3e97eccd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:22:28 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 8 08:22:28 2021 -0800","stats":{"files_changed":4,"insertions":11,"deletions":1,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"add -C option to docs","epoch":1638980548,"epoch_utc":null},{"commit":"4fdb34c7d5fcaa65e2ccab814c3acf2f0f70c442","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:19:43 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 8 08:19:43 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"add no-color.org","epoch":1638980383,"epoch_utc":null},{"commit":"7ac468e35aac1a63c4e22f33aead74a6e41a22a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:14:36 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 8 08:14:36 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update","epoch":1638980076,"epoch_utc":null},{"commit":"df190aa299f1669d1fe09380026ae086839abc02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:14:28 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 8 08:14:28 2021 -0800","stats":{"files_changed":1,"insertions":15,"deletions":7,"files":["jc/cli.py"]},"message":"add -C option to force color even with pipes","epoch":1638980068,"epoch_utc":null},{"commit":"9621475e86fe20fcdc2902b6ce7860a833ae2ca0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 7 15:46:02 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 7 15:46:02 2021 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update","epoch":1638920762,"epoch_utc":null},{"commit":"82e0160de820ad2ed6143f58458711d600b929a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 7 15:45:11 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 7 15:45:11 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"refactor NO_COLOR test","epoch":1638920711,"epoch_utc":null},{"commit":"d03fb8b626a97e81006d0b108c8f400fe4e2ce3b","merge":"b300dfb 7933dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 7 15:34:23 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 7 15:34:23 2021 -0800","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev","epoch":1638920063,"epoch_utc":null},{"commit":"b300dfb3d75fe76e2ddbb087ff742dd0b5e6155b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 7 15:34:20 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 7 15:34:20 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"Add support for NO_COLOR env variable","epoch":1638920060,"epoch_utc":null},{"commit":"a7de9111d97e687cafbc0709ec3ff7453d658a80","merge":"21e69a7 7933dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 16:37:46 2021 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Dec 2 16:37:46 2021 -0800","message":"Merge pull request #183 from kellyjonbrazil/dev\n\nDev v1.17.3","epoch":1638491866,"epoch_utc":null},{"commit":"7933dfdbe7bf400833d6f6b771362dfc518b9a8d","merge":"f7cb5f7 21e69a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 16:34:06 2021 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Dec 2 16:34:06 2021 -0800","message":"Merge branch 'master' into dev","epoch":1638491646,"epoch_utc":null},{"commit":"f7cb5f7d01ac01538bee4da816408072b585768e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 16:30:47 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 2 16:30:47 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"update date","epoch":1638491447,"epoch_utc":null},{"commit":"a26a298f1a3c141171e7d7ce459a27a297cec031","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 11:42:56 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 2 11:42:56 2021 -0800","stats":{"files_changed":4,"insertions":148,"deletions":1,"files":["README.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","man/jc.1"]},"message":"doc update","epoch":1638474176,"epoch_utc":null},{"commit":"dbd134d0dac2fc152183480958fd9e65919ac98d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 11:40:47 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 2 11:40:47 2021 -0800","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/iostat_s.py"]},"message":"add examples to docs","epoch":1638474047,"epoch_utc":null},{"commit":"11aa01b0d9d6913059f98f9bd7591d7cad9037cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 11:38:00 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 2 11:38:00 2021 -0800","stats":{"files_changed":15,"insertions":15,"deletions":1,"files":["jc/parsers/iostat_s.py","tests/fixtures/centos-7.7/iostat-1-streaming.json","tests/fixtures/centos-7.7/iostat-m-streaming.json","tests/fixtures/centos-7.7/iostat-mx-streaming.json","tests/fixtures/centos-7.7/iostat-streaming.json","tests/fixtures/centos-7.7/iostat-x-streaming.json","tests/fixtures/ubuntu-18.04/iostat-1-streaming.json","tests/fixtures/ubuntu-18.04/iostat-m-streaming.json","tests/fixtures/ubuntu-18.04/iostat-mx-streaming.json","tests/fixtures/ubuntu-18.04/iostat-streaming.json","tests/fixtures/ubuntu-18.04/iostat-x-streaming.json","tests/fixtures/ubuntu-20.10/iostat-m-streaming.json","tests/fixtures/ubuntu-20.10/iostat-mx-streaming.json","tests/fixtures/ubuntu-20.10/iostat-streaming.json","tests/fixtures/ubuntu-20.10/iostat-x-streaming.json"]},"message":"iostat-s tests","epoch":1638473880,"epoch_utc":null},{"commit":"6f18e5344356684e845ec63158c570d82156254f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 11:37:52 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 2 11:37:52 2021 -0800","stats":{"files_changed":1,"insertions":203,"deletions":0,"files":["tests/test_iostat_s.py"]},"message":"fix for null lines","epoch":1638473872,"epoch_utc":null},{"commit":"7b467c466568ad4e7986d4d7cf3ec606681b6d46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 09:30:16 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 2 09:30:16 2021 -0800","stats":{"files_changed":9,"insertions":137,"deletions":0,"files":["tests/fixtures/ubuntu-20.10/iostat-m.json","tests/fixtures/ubuntu-20.10/iostat-m.out","tests/fixtures/ubuntu-20.10/iostat-mx.json","tests/fixtures/ubuntu-20.10/iostat-mx.out","tests/fixtures/ubuntu-20.10/iostat-x.json","tests/fixtures/ubuntu-20.10/iostat-x.out","tests/fixtures/ubuntu-20.10/iostat.json","tests/fixtures/ubuntu-20.10/iostat.out","tests/test_iostat.py"]},"message":"add ubuntu 20.10 tests","epoch":1638466216,"epoch_utc":null},{"commit":"537b8f263087894c02b5b7c121765cf96182a370","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 09:14:43 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 2 09:14:43 2021 -0800","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"]},"message":"add more int conversions","epoch":1638465283,"epoch_utc":null},{"commit":"4d823575e791999e200dedd491511c4fde64fc2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 08:47:25 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 2 08:47:25 2021 -0800","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"]},"message":"add more float fields","epoch":1638463645,"epoch_utc":null},{"commit":"541aa1d09f20ff6979eabaa66790decb3895f18d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 08:41:36 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 2 08:41:36 2021 -0800","stats":{"files_changed":2,"insertions":68,"deletions":8,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"]},"message":"Add new field float conversions for iostat v11","epoch":1638463296,"epoch_utc":null},{"commit":"8f02021014b7b19acf1a8bbd777161aa82c65d66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 05:54:38 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 2 05:54:38 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/iostat_s.py"]},"message":"formatting","epoch":1638453278,"epoch_utc":null},{"commit":"158a15157c7e5dde95dc21766d0696bd82486688","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:47:17 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 1 16:47:17 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update","epoch":1638406037,"epoch_utc":null},{"commit":"2752e0d66a9ba0b57ac86913fd302ada23c280c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:47:09 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 1 16:47:09 2021 -0800","stats":{"files_changed":2,"insertions":166,"deletions":0,"files":["jc/cli.py","jc/parsers/iostat_s.py"]},"message":"add iostat streaming parser","epoch":1638406029,"epoch_utc":null},{"commit":"6c11e912afe3c4d16da9199b5c2fc10461928ac3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:14:22 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 1 16:14:22 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"update changelog","epoch":1638404062,"epoch_utc":null},{"commit":"43d34461e27e3e4ac5f985786831c170b348c7c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:12:51 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 1 16:12:51 2021 -0800","stats":{"files_changed":83,"insertions":279,"deletions":81,"files":["README.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/utils.md","man/jc.1"]},"message":"update docs","epoch":1638403971,"epoch_utc":null},{"commit":"4dfdc9b0f65d8c950ed74545d0cc3f95c8abec6c","merge":"e2311cb 6665ffa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:02:10 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 1 16:02:10 2021 -0800","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev","epoch":1638403330,"epoch_utc":null},{"commit":"e2311cbb03f407414df953c8d1c07d0cf1a549ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:02:06 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 1 16:02:06 2021 -0800","stats":{"files_changed":21,"insertions":400,"deletions":0,"files":["tests/fixtures/centos-7.7/iostat-1.json","tests/fixtures/centos-7.7/iostat-1.out","tests/fixtures/centos-7.7/iostat-m.json","tests/fixtures/centos-7.7/iostat-m.out","tests/fixtures/centos-7.7/iostat-mx.json","tests/fixtures/centos-7.7/iostat-mx.out","tests/fixtures/centos-7.7/iostat-x.json","tests/fixtures/centos-7.7/iostat-x.out","tests/fixtures/centos-7.7/iostat.json","tests/fixtures/centos-7.7/iostat.out","tests/fixtures/ubuntu-18.04/iostat-1.json","tests/fixtures/ubuntu-18.04/iostat-1.out","tests/fixtures/ubuntu-18.04/iostat-m.json","tests/fixtures/ubuntu-18.04/iostat-m.out","tests/fixtures/ubuntu-18.04/iostat-mx.json","tests/fixtures/ubuntu-18.04/iostat-mx.out","tests/fixtures/ubuntu-18.04/iostat-x.json","tests/fixtures/ubuntu-18.04/iostat-x.out","tests/fixtures/ubuntu-18.04/iostat.json","tests/fixtures/ubuntu-18.04/iostat.out","tests/test_iostat.py"]},"message":"add iostat tests","epoch":1638403326,"epoch_utc":null},{"commit":"bf15575e90985cfec5c57dd11dfa2b86d53a41be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:01:52 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 1 16:01:52 2021 -0800","stats":{"files_changed":1,"insertions":14,"deletions":7,"files":["jc/parsers/iostat.py"]},"message":"fixes for ubunut","epoch":1638403312,"epoch_utc":null},{"commit":"406336c7185b539b5e00532b58146d5b1b73f259","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 13:53:31 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 1 13:53:31 2021 -0800","stats":{"files_changed":1,"insertions":44,"deletions":0,"files":["EXAMPLES.md"]},"message":"add iostat example","epoch":1638395611,"epoch_utc":null},{"commit":"6665ffaeb8107e9db3b917db0663beaf44024533","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 10:59:07 2021 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Dec 1 10:59:07 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"remove python 3.6 from tests","epoch":1638385147,"epoch_utc":null},{"commit":"dcf552ca0c69aa5f0309a83dc33dee7c5ed81292","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 10:34:55 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 1 10:34:55 2021 -0800","stats":{"files_changed":1,"insertions":138,"deletions":47,"files":["jc/parsers/iostat.py"]},"message":"add _process and cleanup","epoch":1638383695,"epoch_utc":null},{"commit":"7a6ebf3c9555dd82df7dc0b71981cdd32ce0061d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 16:54:32 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 16:54:32 2021 -0800","stats":{"files_changed":2,"insertions":171,"deletions":0,"files":["jc/cli.py","jc/parsers/iostat.py"]},"message":"add iostat parser","epoch":1638320072,"epoch_utc":null},{"commit":"d2dc4a983c86c538e13e568b908072de4ca0daaf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 11:59:26 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 11:59:26 2021 -0800","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"]},"message":"changelog update","epoch":1638302366,"epoch_utc":null},{"commit":"1168259bc23862f671326d41f5282a3575205214","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 11:57:04 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 11:57:04 2021 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"]},"message":"add doc strings","epoch":1638302224,"epoch_utc":null},{"commit":"e8e4b46021557fbf5776c32dff46de022817fb6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 11:49:40 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 11:49:40 2021 -0800","stats":{"files_changed":5,"insertions":14,"deletions":19,"files":["jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]},"message":"use jc.utils type checks","epoch":1638301780,"epoch_utc":null},{"commit":"12d2de22821fd8f57f4d412e62f53db3d89d5e30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 11:43:06 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 11:43:06 2021 -0800","stats":{"files_changed":77,"insertions":181,"deletions":165,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/utils.py"]},"message":"use jc.utils.input_type_check() and simplify compatibility check","epoch":1638301386,"epoch_utc":null},{"commit":"0e2fe401e1c49a9f947d7d17b72cfc4e90787f47","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 10:08:27 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 10:08:27 2021 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]},"message":"version bump","epoch":1638295707,"epoch_utc":null},{"commit":"14247adb0ae007924ca551a706eb0cfdbae97a41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 10:03:59 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 10:03:59 2021 -0800","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["jc/parsers/csv_s.py","tests/test_csv_s.py"]},"message":"add input type checks","epoch":1638295439,"epoch_utc":null},{"commit":"3a9f0934c41c85ea7fa87165b9559f08814645cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 09:56:33 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 09:56:33 2021 -0800","stats":{"files_changed":2,"insertions":5,"deletions":3,"files":["jc/parsers/ls_s.py","tests/test_ls_s.py"]},"message":"add input type checks","epoch":1638294993,"epoch_utc":null},{"commit":"caf0a5c8713bf0d72951a2c6fd5a2c62c9eb59d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 09:51:27 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 09:51:27 2021 -0800","stats":{"files_changed":2,"insertions":7,"deletions":4,"files":["jc/parsers/vmstat_s.py","tests/test_vmstat_s.py"]},"message":"add input type checking","epoch":1638294687,"epoch_utc":null},{"commit":"cfb58b1cf3e3028f8e03fdd93f0165cf8d230e1e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 09:41:16 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 09:41:16 2021 -0800","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/parsers/foo_s.py"]},"message":"add input type checks","epoch":1638294076,"epoch_utc":null},{"commit":"975cf195cc02774f50460ca479d9ebb7b73c7870","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 09:40:49 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 09:40:49 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping_s.py"]},"message":"formatting","epoch":1638294049,"epoch_utc":null},{"commit":"8a46a259a36efc55bb0b2141acb9dd5ae52b7725","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 09:19:51 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 09:19:51 2021 -0800","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["jc/parsers/ping_s.py","tests/test_ping_s.py"]},"message":"add input type checks","epoch":1638292791,"epoch_utc":null},{"commit":"e395142e599aa78b4a7ec80dcc3f8ccf279f97b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 29 16:45:22 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 29 16:45:22 2021 -0800","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"]},"message":"version bump","epoch":1638233122,"epoch_utc":null},{"commit":"caaeaf0d67cf44f8d2651cc53a7528d3ef0c74d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 29 16:29:23 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 29 16:29:23 2021 -0800","stats":{"files_changed":76,"insertions":227,"deletions":227,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"add 'str' type check on input","epoch":1638232163,"epoch_utc":null},{"commit":"21e69a7cbf62240238f6fb78e874dda6ce2e922a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 24 19:33:07 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 24 19:33:07 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"]},"message":"ignore _config.yml","epoch":1637811187,"epoch_utc":null},{"commit":"603964935b58e02cf0614cf67ffacc6d94755e05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 24 19:30:10 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 24 19:30:10 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CHANGELOG"]},"message":"remove trailing whitespace","epoch":1637811010,"epoch_utc":null},{"commit":"47eb83ae55b9892716fff712bd2be21b6191b552","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 24 13:32:51 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 24 13:32:51 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"]},"message":"add .vscode","epoch":1637789571,"epoch_utc":null},{"commit":"fc0ce6c95923ab124961e695a26c0b68dd0f359f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 22 09:45:14 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 22 09:45:14 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"add streaming parser to custom parsers info","epoch":1637603114,"epoch_utc":null},{"commit":"077a29fb4eedcfccb026498c5c3a64b7b7601363","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 22 09:36:58 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 22 09:36:58 2021 -0800","stats":{"files_changed":2,"insertions":14,"deletions":2,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"]},"message":"add _jc_meta field info","epoch":1637602618,"epoch_utc":null},{"commit":"8568d0d328706a7a5b1476452e078d8cbe7b7391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 22 09:10:11 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 22 09:10:11 2021 -0800","stats":{"files_changed":3,"insertions":7,"deletions":3,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py","man/jc.1"]},"message":"fix csv_s documentation","epoch":1637601011,"epoch_utc":null},{"commit":"597d39c28ea0c0fe3b072413e9d91ab5e27b62bd","merge":"b59e38c eb888dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 18 06:52:01 2021 -1000","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Nov 18 06:52:01 2021 -1000","message":"Merge pull request #180 from kellyjonbrazil/dev\n\nDev v1.17.2","epoch":1637247121,"epoch_utc":null},{"commit":"eb888dcbbcf83c9197bd59aab72f65ea6eb622ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 18 08:48:03 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 18 08:48:03 2021 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["jc/__init__.py","man/jc.1","setup.py"]},"message":"version bump","epoch":1637254083,"epoch_utc":null},{"commit":"d1b9ac0841b15ee15690c4066453a322618320ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 18 08:41:52 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 18 08:41:52 2021 -0800","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/df.md","docs/parsers/netstat.md","docs/parsers/ping.md","man/jc.1"]},"message":"doc update","epoch":1637253712,"epoch_utc":null},{"commit":"89a6d9c5c39b74f1b040f410659bfd7ae1a902d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 17 12:03:40 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 17 12:03:40 2021 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/df.py"]},"message":"add key-check to restore previous behavior even with non-df data","epoch":1637179420,"epoch_utc":null},{"commit":"85d983761637129cb85abfb0bbdde7c507061cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 17 11:41:54 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 17 11:41:54 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add df info","epoch":1637178114,"epoch_utc":null},{"commit":"cd7731484d826d84d835ecd460d746e78cadc5fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 17 11:26:42 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 17 11:26:42 2021 -0800","stats":{"files_changed":4,"insertions":62,"deletions":2,"files":["jc/parsers/df.py","tests/fixtures/generic/df-long-filesystem.json","tests/fixtures/generic/df-long-filesystem.out","tests/test_df.py"]},"message":"fix for cases where the Filesystem data overflows the column length (happens on older versions of df)","epoch":1637177202,"epoch_utc":null},{"commit":"086da16b1743c16a5ccdd102f889fb31f99e3caa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 15 13:05:53 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 15 13:05:53 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"version bump","epoch":1637010353,"epoch_utc":null},{"commit":"20830528f04a5ecbe78420d8008249b089667767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 15 12:52:43 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 15 12:52:43 2021 -0800","stats":{"files_changed":4,"insertions":28,"deletions":0,"files":["CHANGELOG","tests/fixtures/generic/netstat-old.json","tests/fixtures/generic/netstat-old.out","tests/test_netstat.py"]},"message":"add test for older netstat version fix","epoch":1637009563,"epoch_utc":null},{"commit":"83371edd8fe3d23dfa92fc707604086522c85ab9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 15 12:25:22 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 15 12:25:22 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat_linux.py"]},"message":"add space before inode to compensate for removed dash","epoch":1637007922,"epoch_utc":null},{"commit":"364a81decc16742e3caa070d90b1d605d96fe2c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 4 10:25:51 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 4 10:25:51 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ping.py"]},"message":"version bump","epoch":1636046751,"epoch_utc":null},{"commit":"ef09592ad3e5c9a77c1bdebe8f876fc4dde54834","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 4 10:21:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 4 10:21:38 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["CHANGELOG"]},"message":"update for 1.17.2","epoch":1636046498,"epoch_utc":null},{"commit":"4a86e109ccb254d5195b782f84f3967c96ef726c","merge":"5ba22da 7fa5391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 4 10:18:47 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Nov 4 10:18:47 2021 -0700","message":"Merge pull request #179 from shaikustin/ping-alpine-linux\n\nsupport alpine linux ping","epoch":1636046327,"epoch_utc":null},{"commit":"7fa5391b6613e62689c624041e03f9750c9c7972","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 4 10:13:44 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Nov 4 10:13:44 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_ping.py"]},"message":"change alpine ping6 to ping","epoch":1636046024,"epoch_utc":null},{"commit":"9b53ba5714819ff760f2d4546f5d2ee4d521c080","author":"shaik","author_email":"shai.kustin@torq.io","date":"Thu Nov 4 13:42:48 2021 +0200","commit_by":"shaik","commit_by_email":"shai.kustin@torq.io","commit_by_date":"Thu Nov 4 13:42:48 2021 +0200","stats":{"files_changed":6,"insertions":45,"deletions":1,"files":["jc/parsers/ping.py",".../fixtures/alpine-linux-3.13/ping-hostname.json","tests/fixtures/alpine-linux-3.13/ping-hostname.out","tests/fixtures/alpine-linux-3.13/ping-ip.json","tests/fixtures/alpine-linux-3.13/ping-ip.out","tests/test_ping.py"]},"message":"support alpine linux ping","epoch":1636058568,"epoch_utc":null},{"commit":"b59e38cfd2c8a7f5868e05d5562557b1c27e5e56","merge":"30cff5f 5ba22da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 30 14:02:25 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sat Oct 30 14:02:25 2021 -0700","message":"Merge pull request #176 from kellyjonbrazil/dev\n\nDev v1.17.1","epoch":1635627745,"epoch_utc":null},{"commit":"5ba22dae597b9d154ca0a82f71cfbd8d8a6325db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 30 13:57:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 30 13:57:36 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"]},"message":"add JSON lines info","epoch":1635627456,"epoch_utc":null},{"commit":"4232e523acc523e510b4881d2a57a95b88ec8c8b","merge":"bee80b3 30cff5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 30 13:49:45 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sat Oct 30 13:49:45 2021 -0700","message":"Merge branch 'master' into dev","epoch":1635626985,"epoch_utc":null},{"commit":"bee80b35d2b8c15e6233f2798e9c02a11e9e1e9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 30 13:47:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 30 13:47:21 2021 -0700","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["CHANGELOG","docs/parsers/csv_s.md","man/jc.1"]},"message":"update for version bump","epoch":1635626841,"epoch_utc":null},{"commit":"c32395f6950d6294770ee93e8bf4d79c7d275ac3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 27 12:54:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 27 12:54:20 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_utils.py"]},"message":"linting","epoch":1635364460,"epoch_utc":null},{"commit":"735c5e1078cc27b5cba03b8ebbae15aeca6b8fbd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 12:26:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 26 12:26:23 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["tests/test_csv_s.py"]},"message":"update comments for ParseError test: https://bugs.python.org/issue45617","epoch":1635276383,"epoch_utc":null},{"commit":"d09c94b292ca3beec92a00f8a51b7259dd30a1e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 12:24:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 26 12:24:49 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add python 3.10 testing info","epoch":1635276289,"epoch_utc":null},{"commit":"4d04866f48f72b9ea0d213dc1533729d3b68a503","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 12:24:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 26 12:24:37 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/csv_s.py"]},"message":"add python bug https://bugs.python.org/issue45617 info","epoch":1635276277,"epoch_utc":null},{"commit":"a2d90f4dfcdc2cb00c6c0fa957493c95a21e256b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 10:04:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 26 10:04:39 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_csv_s.py"]},"message":"force test","epoch":1635267879,"epoch_utc":null},{"commit":"93a5002c8b530bd6f5f81e5d8595cde1f836ae41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 10:01:02 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Oct 26 10:01:02 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"fix 3.10.0 version number","epoch":1635267662,"epoch_utc":null},{"commit":"23bf5227a4c39ea017e55fc21150331e1af6fdb7","merge":"77c96fa 3f5a1f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 07:44:04 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 26 07:44:04 2021 -0700","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev","epoch":1635259444,"epoch_utc":null},{"commit":"77c96fa2a96148221bde7d2274e0dfb5386a166f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 07:43:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 26 07:43:47 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["tests/test_csv_s.py"]},"message":"try tests on python 3.10","epoch":1635259427,"epoch_utc":null},{"commit":"3f5a1f015e9c0807e227b9f7300592e25502e014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 07:42:37 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Oct 26 07:42:37 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"add python 3.10","epoch":1635259357,"epoch_utc":null},{"commit":"b280c4fc18e60a85ab212b09aa5bf3a05a0eceff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 07:36:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 26 07:36:44 2021 -0700","stats":{"files_changed":2,"insertions":11,"deletions":19,"files":[".../fixtures/generic/csv-insurance-streaming.json","tests/test_csv_s.py"]},"message":"add ParseError test to streaming csv parser","epoch":1635259004,"epoch_utc":null},{"commit":"3ab9b43a2eebf535be98c94810ac474bf32ec515","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 07:36:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 26 07:36:23 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/csv_s.py"]},"message":"raise ParseError on newline bug","epoch":1635258983,"epoch_utc":null},{"commit":"46f568414a5c8d2f135486e86d0ada48cfcefeb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 25 11:35:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 25 11:35:01 2021 -0700","stats":{"files_changed":3,"insertions":96,"deletions":89,"files":["tests/test_ls_s.py","tests/test_ping_s.py","tests/test_vmstat_s.py"]},"message":"change streaming parser test names","epoch":1635186901,"epoch_utc":null},{"commit":"cba2fd299fff09a551b780e064a6e22bdf7e539a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 25 11:03:32 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 25 11:03:32 2021 -0700","stats":{"files_changed":9,"insertions":75,"deletions":61,"files":[".../generic/csv-10k-sales-records-streaming.json","tests/fixtures/generic/csv-deniro-streaming.json","tests/fixtures/generic/csv-example-streaming.json","tests/fixtures/generic/csv-flyrna-streaming.json","tests/fixtures/generic/csv-flyrna2-streaming.json",".../fixtures/generic/csv-homes-pipe-streaming.json","tests/fixtures/generic/csv-homes-streaming.json",".../fixtures/generic/csv-insurance-streaming.json","tests/test_csv_s.py"]},"message":"add tests","epoch":1635185012,"epoch_utc":null},{"commit":"1e6e44f656f1bbb277eb38fb485f7b48e3b9e40b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 25 11:03:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 25 11:03:21 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/csv_s.py"]},"message":"fix for piping data with non-platform newlines (e.g. windows csv files on unix)","epoch":1635185001,"epoch_utc":null},{"commit":"acac0399946d9781193e9350dd7109f1dd3999fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 25 10:06:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 25 10:06:01 2021 -0700","stats":{"files_changed":3,"insertions":149,"deletions":0,"files":["tests/fixtures/generic/csv-biostats-streaming.json","tests/fixtures/generic/csv-cities-streaming.json","tests/test_csv_s.py"]},"message":"working tests","epoch":1635181561,"epoch_utc":null},{"commit":"50a3b340164b3139f04f67a2bee16e5343c8a2da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 25 10:05:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 25 10:05:39 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":8,"files":["jc/parsers/csv_s.py"]},"message":"optimizations and use iter() so we can exhaust data coming from list objects","epoch":1635181539,"epoch_utc":null},{"commit":"b45396070cf28fa36ecb44acd7be3e3bb81a712d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 24 13:14:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Oct 24 13:14:05 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_vmstat_s.py"]},"message":"update comment","epoch":1635106445,"epoch_utc":null},{"commit":"218b9aec8ac397e26e6cd4ff407f3d10ef88ea9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 24 13:10:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Oct 24 13:10:47 2021 -0700","stats":{"files_changed":4,"insertions":87,"deletions":48,"files":["README.md","docs/parsers/csv_s.md","jc/parsers/csv_s.py","man/jc.1"]},"message":"doc update for streaming CSV parser","epoch":1635106247,"epoch_utc":null},{"commit":"2b887debc647bd533040e392465967d12869cb02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 24 12:24:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Oct 24 12:24:44 2021 -0700","stats":{"files_changed":4,"insertions":10172,"deletions":1,"files":["CHANGELOG","jc/cli.py","jc/parsers/csv_s.py","tests/fixtures/generic/csv-10k-sales-records.csv"]},"message":"add csv streaming parser","epoch":1635103484,"epoch_utc":null},{"commit":"0313e3f8ca0e22e1575192d765d5afedf48e94df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 24 11:21:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Oct 24 11:21:47 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":6,"files":["jc/parsers/lsusb.py"]},"message":"linting","epoch":1635099707,"epoch_utc":null},{"commit":"1669e6e20c3af3d28968558b76d0901a56775ac0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 24 10:58:13 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Oct 24 10:58:13 2021 -0700","stats":{"files_changed":1,"insertions":23,"deletions":28,"files":["jc/parsers/lsusb.py"]},"message":"linting","epoch":1635098293,"epoch_utc":null},{"commit":"ef6de75dda90c7221d53e0e0a942f0cac2247354","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 13:11:22 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 13:11:22 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["tests/test_utils.py"]},"message":"add vmstat timestamp tests to utils","epoch":1635019882,"epoch_utc":null},{"commit":"a6bcec425a3f44ba3c7cd06b5ebaf522b66df109","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:55:14 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 12:55:14 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"]},"message":"comment update","epoch":1635018914,"epoch_utc":null},{"commit":"596ad9a64d002ced212b08512126e52707fe73d2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:47:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 12:47:44 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"]},"message":"update comment","epoch":1635018464,"epoch_utc":null},{"commit":"7a91c93319f75c37ba6bf268d8270947f0bf8b22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:40:24 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 12:40:24 2021 -0700","stats":{"files_changed":1,"insertions":122,"deletions":0,"files":["EXAMPLES.md"]},"message":"add lsusb","epoch":1635018024,"epoch_utc":null},{"commit":"b5f7b35f89197879a9f13bd8fa5d2a0c77cc059a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:30:18 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 12:30:18 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"]},"message":"comment update","epoch":1635017418,"epoch_utc":null},{"commit":"2f47fb7f14c4ff0e1c835897d94ee81d14590aba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:24:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 12:24:35 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["tests/test_uname.py"]},"message":"fix ParseError tests","epoch":1635017075,"epoch_utc":null},{"commit":"1b214c403657a50689f2a04892ce836dea669a1d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:24:11 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 12:24:11 2021 -0700","stats":{"files_changed":3,"insertions":30,"deletions":0,"files":["jc/parsers/lsusb.py","tests/fixtures/generic/lsusb-t.out","tests/test_lsusb.py"]},"message":"raise ParseError if -t option is detected. add test","epoch":1635017051,"epoch_utc":null},{"commit":"8f94f8acc6bb53bbb19ba150551c7df2183a8863","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 11:56:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 11:56:12 2021 -0700","stats":{"files_changed":11,"insertions":384,"deletions":3,"files":["README.md","docs/parsers/file.md","docs/parsers/lsusb.md","docs/parsers/uname.md","man/jc.1","tests/fixtures/centos-7.7/lsusb-v-single.json","tests/fixtures/centos-7.7/lsusb-v.json","tests/fixtures/centos-7.7/lsusb.json","tests/fixtures/generic/lsusb-test-attributes.json","tests/fixtures/generic/lsusb-test-attributes2.json","tests/test_lsusb.py"]},"message":"add tests and update docs","epoch":1635015372,"epoch_utc":null},{"commit":"3a2a69cfa55e2f40d7536d923170a5cfc986998e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 11:39:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 11:39:08 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/parsers/lsusb.py"]},"message":"formatting","epoch":1635014348,"epoch_utc":null},{"commit":"f599c659881248b79c6dbc86d85a61311c9d3434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 11:08:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 11:08:26 2021 -0700","stats":{"files_changed":2,"insertions":464,"deletions":0,"files":["tests/fixtures/generic/lsusb-test-attributes.out","tests/fixtures/generic/lsusb-test-attributes2.out"]},"message":"add stress test examples","epoch":1635012506,"epoch_utc":null},{"commit":"ad12849fd9fc2177afb30740acc63cf284dc394b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 11:08:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 11:08:05 2021 -0700","stats":{"files_changed":1,"insertions":138,"deletions":26,"files":["jc/parsers/lsusb.py"]},"message":"update docs example and","epoch":1635012485,"epoch_utc":null},{"commit":"f36b3789e8df6673207d6c2d3d0796acfdfe011d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:39:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 22 15:39:02 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsusb.py"]},"message":"formatting","epoch":1634942342,"epoch_utc":null},{"commit":"6d18c0ba61cd188dbff736f1be47b7362c841687","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:37:40 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 22 15:37:40 2021 -0700","stats":{"files_changed":1,"insertions":47,"deletions":47,"files":["jc/parsers/lsusb.py"]},"message":"change variable name last_attribute and last_attr to last_item","epoch":1634942260,"epoch_utc":null},{"commit":"17097abec9567a58b5a5f7bbed11ecfd69cbd28c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:28:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 22 15:28:44 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":6,"files":["jc/parsers/lsusb.py"]},"message":"formatting","epoch":1634941724,"epoch_utc":null},{"commit":"b7ddd3b285f205211394edc70b611171cf72a4c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:23:04 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 22 15:23:04 2021 -0700","stats":{"files_changed":1,"insertions":22,"deletions":22,"files":["jc/parsers/lsusb.py"]},"message":"change variable names","epoch":1634941384,"epoch_utc":null},{"commit":"75b23f62c9d7b33907af92964d1a6234332fbc78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:18:55 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 22 15:18:55 2021 -0700","stats":{"files_changed":1,"insertions":35,"deletions":7,"files":["jc/parsers/lsusb.py"]},"message":"working configuration_descriptor and device_descriptor attributes","epoch":1634941135,"epoch_utc":null},{"commit":"f88967b2a59d79e053554d1e141f71e9d2d87456","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:02:04 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 22 15:02:04 2021 -0700","stats":{"files_changed":1,"insertions":126,"deletions":21,"files":["jc/parsers/lsusb.py"]},"message":"add attribute lists up to interface_association","epoch":1634940124,"epoch_utc":null},{"commit":"ba2846664b35b2e94aa905431c55c029b24a64e3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 13:40:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 22 13:40:01 2021 -0700","stats":{"files_changed":1,"insertions":22,"deletions":2,"files":["jc/parsers/lsusb.py"]},"message":"edpoint_descriptors attributes working","epoch":1634935201,"epoch_utc":null},{"commit":"10dba37ca2624e05eff246ef49df8ebd3f275d86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 12:49:57 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 22 12:49:57 2021 -0700","stats":{"files_changed":1,"insertions":28,"deletions":1,"files":["jc/parsers/lsusb.py"]},"message":"hub_descriptor attributes working","epoch":1634932197,"epoch_utc":null},{"commit":"0e6f938514965503f1d86d56c047f9f8fc03ac65","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 10:31:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 22 10:31:26 2021 -0700","stats":{"files_changed":1,"insertions":36,"deletions":45,"files":["jc/parsers/lsusb.py"]},"message":"working hub_port_status section","epoch":1634923886,"epoch_utc":null},{"commit":"159d87c1126f4d79d5e34837bc2c353a5445803b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 07:14:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 22 07:14:21 2021 -0700","stats":{"files_changed":3,"insertions":18,"deletions":7,"files":["jc/parsers/uname.py","tests/fixtures/centos-7.7/uname.out","tests/test_uname.py"]},"message":"add length guard and test for uname with no -a on linux","epoch":1634912061,"epoch_utc":null},{"commit":"9e7b1621cf232e9859bdf018737e536820f380a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 21 16:59:28 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 21 16:59:28 2021 -0700","stats":{"files_changed":1,"insertions":18,"deletions":18,"files":["jc/parsers/lsusb.py"]},"message":"device_status working","epoch":1634860768,"epoch_utc":null},{"commit":"2057817ef8fec85b2a978b682e7fe8bc16def828","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 20 15:59:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 20 15:59:27 2021 -0700","stats":{"files_changed":11,"insertions":89,"deletions":0,"files":["tests/fixtures/debian10/uname-a.json","tests/fixtures/debian10/uname-a.out","tests/fixtures/freebsd12/uname-a.json","tests/fixtures/freebsd12/uname-a.out","tests/fixtures/freebsd12/uname-a2.json","tests/fixtures/freebsd12/uname-a2.out","tests/fixtures/generic/uname-a-different-proc.json","tests/fixtures/generic/uname-a-different-proc.out","tests/fixtures/generic/uname-a.json","tests/fixtures/generic/uname-a.out","tests/test_uname.py"]},"message":"add uname tests","epoch":1634770767,"epoch_utc":null},{"commit":"a1eabad2d37bb0d0e9407edf7305e223eba67da2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 20 15:58:43 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 20 15:58:43 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/uname.py"]},"message":"add comments","epoch":1634770723,"epoch_utc":null},{"commit":"92bf2b1ca2a172d3977d6e3c36b5ca1a8c2bab63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 20 15:27:14 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 20 15:27:14 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":20,"files":["CHANGELOG","jc/parsers/uname.py"]},"message":"simplify fixup logic for uname","epoch":1634768834,"epoch_utc":null},{"commit":"2b2123a4ba9b77d2089d367fe85dcb5d2857a295","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 20 07:34:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 20 07:34:37 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","jc/parsers/uname.py"]},"message":"add FreeBSD support","epoch":1634740477,"epoch_utc":null},{"commit":"908b2f9200ddcce4beb531a3c90908786b6a5b02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 19 16:16:25 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 19 16:16:25 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"]},"message":"add items","epoch":1634685385,"epoch_utc":null},{"commit":"deff0c7bfdf942b8d7e7bd140219e08bf80a50cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 19 16:05:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 19 16:05:10 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":5,"files":["jc/parsers/uname.py"]},"message":"remove print debug","epoch":1634684710,"epoch_utc":null},{"commit":"7cd01efa64029775042a2c145997ce30ef6b4f6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 19 16:01:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 19 16:01:56 2021 -0700","stats":{"files_changed":1,"insertions":25,"deletions":1,"files":["jc/parsers/uname.py"]},"message":"fixup for cases where the 'process' and/or 'machine' fields are blank on linux","epoch":1634684516,"epoch_utc":null},{"commit":"2dbe56456bbea2bdfce7eacbf8b9f10a1b249f55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 15 11:43:15 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 15 11:43:15 2021 -0700","stats":{"files_changed":1,"insertions":49,"deletions":39,"files":["jc/parsers/lsusb.py"]},"message":"add nested_dict. start work on hub_port_status and device_status","epoch":1634323395,"epoch_utc":null},{"commit":"6078a411ef612be8bad012aa404f34ebd74a1fd7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 13 11:07:09 2021 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 13 11:07:09 2021 -0600","stats":{"files_changed":1,"insertions":79,"deletions":4,"files":["jc/parsers/lsusb.py"]},"message":"add initial schema doc","epoch":1634148429,"epoch_utc":null},{"commit":"4a3656562f161a51f5cb6f0e9ccd271859b78d62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 13 07:26:31 2021 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 13 07:26:31 2021 -0600","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["jc/parsers/lsusb.py"]},"message":"del null keys","epoch":1634135191,"epoch_utc":null},{"commit":"ba75989a24839907723ed7c3d7a497473d489a34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 22:51:45 2021 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 12 22:51:45 2021 -0600","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/lsusb.py"]},"message":"update comments","epoch":1634104305,"epoch_utc":null},{"commit":"9e9e2c362894f0072ab839565829881d750c8912","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 22:40:39 2021 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 12 22:40:39 2021 -0600","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsusb.py"]},"message":"move state instantiation before has_data test","epoch":1634103639,"epoch_utc":null},{"commit":"9a2a8c6b61a46a9bfb5a4492b86774a4a78672ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 22:38:03 2021 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 12 22:38:03 2021 -0600","stats":{"files_changed":1,"insertions":20,"deletions":52,"files":["jc/parsers/lsusb.py"]},"message":"shorten set_sections","epoch":1634103483,"epoch_utc":null},{"commit":"dae42ef1619441637672d634f9e5d7ab26115f09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 15:55:09 2021 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 12 15:55:09 2021 -0600","stats":{"files_changed":1,"insertions":18,"deletions":1,"files":["jc/parsers/lsusb.py"]},"message":"add hub_port_status and device_status","epoch":1634079309,"epoch_utc":null},{"commit":"931f2cab78bda180443535c04b532d04c6e88dd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 12:38:40 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 12 12:38:40 2021 -0700","stats":{"files_changed":1,"insertions":14,"deletions":11,"files":["jc/parsers/lsusb.py"]},"message":"add hub_descriptor","epoch":1634067520,"epoch_utc":null},{"commit":"72b061bed4453686d264ccf8977cba6c2a4794ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 12:29:59 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 12 12:29:59 2021 -0700","stats":{"files_changed":1,"insertions":32,"deletions":8,"files":["jc/parsers/lsusb.py"]},"message":"add endpoint_descriptors","epoch":1634066999,"epoch_utc":null},{"commit":"29a7c73990d9620b15a4010d17fc9a9a859f44b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 11:24:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 12 11:24:49 2021 -0700","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/parsers/lsusb.py"]},"message":"add hid_device_descriptor and report_descriptors","epoch":1634063089,"epoch_utc":null},{"commit":"2d1d68e3007f76d4c34ac07ae822935ab6021e79","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 09:57:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 12 09:57:47 2021 -0700","stats":{"files_changed":1,"insertions":87,"deletions":88,"files":["jc/parsers/lsusb.py"]},"message":"simplify populate_lists. Add CDC lists","epoch":1634057867,"epoch_utc":null},{"commit":"c5c1e170d1f502de5c76e9e481a23b26ffcaf237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 11 21:33:18 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 11 21:33:18 2021 -0700","stats":{"files_changed":1,"insertions":111,"deletions":76,"files":["jc/parsers/lsusb.py"]},"message":"interface descriptors working","epoch":1634013198,"epoch_utc":null},{"commit":"9c1bb66452838e704ef2277f313bb51a42dc03b9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 11 07:48:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 11 07:48:23 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/lsusb.py"]},"message":"fix remove _state field during schema_populate","epoch":1633963703,"epoch_utc":null},{"commit":"a4f3306bae90fbc807fdd9ff2ce71e25d36a663f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 10 22:18:13 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Oct 10 22:18:13 2021 -0700","stats":{"files_changed":1,"insertions":69,"deletions":28,"files":["jc/parsers/lsusb.py"]},"message":"initial schema build. need to figure out why deleting _state from output_line causes exceptions","epoch":1633929493,"epoch_utc":null},{"commit":"1bc638b6ee7a820406ba4b84d3408f7cd4fe779d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 10 10:03:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Oct 10 10:03:39 2021 -0700","stats":{"files_changed":1,"insertions":36,"deletions":32,"files":["jc/parsers/lsusb.py"]},"message":"add bus_list and add all device_list data to the list","epoch":1633885419,"epoch_utc":null},{"commit":"9ad0cd9dae8822235c37159541ce72471eb4263e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 9 20:05:55 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 9 20:05:55 2021 -0700","stats":{"files_changed":1,"insertions":116,"deletions":211,"files":["jc/parsers/lsusb.py"]},"message":"now storing state within the objects to make building the schema (later) easier.","epoch":1633835155,"epoch_utc":null},{"commit":"6d4a4691276d8659253b2ac8f8bdbd71a1fece7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 6 22:03:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 6 22:03:16 2021 -0700","stats":{"files_changed":1,"insertions":356,"deletions":333,"files":["jc/parsers/lsusb.py"]},"message":"use class for state","epoch":1633582996,"epoch_utc":null},{"commit":"ed6997e3ff2e575a6d4daa7d7a2cbe7dddacdd4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 5 16:47:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 5 16:47:23 2021 -0700","stats":{"files_changed":2,"insertions":170,"deletions":34,"files":["jc/parsers/lsusb.py","tests/fixtures/centos-7.7/lsusb-v-single.out"]},"message":"add interface_association section","epoch":1633477643,"epoch_utc":null},{"commit":"eb788fca6e25eea1fa8a43b22360c852ecf5af35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 5 14:59:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 5 14:59:49 2021 -0700","stats":{"files_changed":4,"insertions":919,"deletions":0,"files":["jc/cli.py","jc/parsers/lsusb.py","tests/fixtures/centos-7.7/lsusb-v.out","tests/fixtures/centos-7.7/lsusb.out"]},"message":"somewhat working lsusb parser. needs a lot more TLC","epoch":1633471189,"epoch_utc":null},{"commit":"9186f5f37739012b8c04c776310a20ef55b1469f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 2 14:53:07 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 2 14:53:07 2021 -0700","stats":{"files_changed":7,"insertions":99,"deletions":4,"files":["CHANGELOG","jc/__init__.py","jc/parsers/file.py","setup.py","tests/fixtures/osx-10.14.6/file3.json","tests/fixtures/osx-10.14.6/file3.out","tests/test_file.py"]},"message":"fix file parser for gzip cases (has ': ' in the description, which is the delimiter)","epoch":1633211587,"epoch_utc":null},{"commit":"30cff5f28140a5b20a617c8145c13e43b7b6685b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 27 10:35:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 27 10:35:08 2021 -0700","stats":{"files_changed":8,"insertions":17,"deletions":3,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","man/jc.1"]},"message":"add note that the streaming parser outputs JSON Lines","epoch":1632764108,"epoch_utc":null},{"commit":"b724e0969a0d6b22bed0c77eb8d629381179ea3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 20:22:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 26 20:22:16 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"]},"message":"-qq instead of -q","epoch":1632712936,"epoch_utc":null},{"commit":"a62c49e8715873b068a96da5021ea24a783acd6b","merge":"77dcbc5 9b160f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 16:35:29 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Sep 26 16:35:29 2021 -0700","message":"Merge pull request #172 from kellyjonbrazil/master\n\nsync master to dev","epoch":1632699329,"epoch_utc":null},{"commit":"9b160f6279bbbf0c15413c98922eef137ba2f3f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 16:29:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 26 16:29:36 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]},"message":"link update","epoch":1632698976,"epoch_utc":null},{"commit":"338a4e2612f70bb3e2af31f61a7db75f647293fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 16:27:15 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 26 16:27:15 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]},"message":"formatting","epoch":1632698835,"epoch_utc":null},{"commit":"0140688750be61dd752059ee66734ab1c7a8f30e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 16:24:18 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 26 16:24:18 2021 -0700","stats":{"files_changed":6,"insertions":8,"deletions":4,"files":["README.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","templates/readme_template"]},"message":"link updates","epoch":1632698658,"epoch_utc":null},{"commit":"73e5ea98c1ca2b9299085e3832791162eca3b9ff","merge":"528aac7 77dcbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 14:55:18 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Sep 26 14:55:18 2021 -0700","message":"Merge pull request #170 from kellyjonbrazil/dev\n\njc v1.17.0 from dev","epoch":1632693318,"epoch_utc":null},{"commit":"77dcbc544da271edab5de5ad209117e98c846f9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 14:50:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 26 14:50:02 2021 -0700","stats":{"files_changed":3,"insertions":2,"deletions":3,"files":["CHANGELOG","jc/__init__.py","man/jc.1"]},"message":"final doc update","epoch":1632693002,"epoch_utc":null},{"commit":"c7bcb0947ae32acc9cdba7a6975d2f2557f10a39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 13:20:42 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 26 13:20:42 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"]},"message":"indent subsequent error and warning lines","epoch":1632687642,"epoch_utc":null},{"commit":"5cd3f7f71d38b560a88dd6057e9c7a94991a3d71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 13:15:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 26 13:15:35 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/foo_s.py"]},"message":"Add example to raise ParseError if there is no output data to yield","epoch":1632687335,"epoch_utc":null},{"commit":"5044388ab2e8d7d8b427fd51b0ab875611bd127f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 13:04:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 26 13:04:27 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":3,"files":["jc/parsers/vmstat_s.py","tests/test_vmstat_s.py"]},"message":"raise if line data is unrecognized","epoch":1632686667,"epoch_utc":null},{"commit":"ee075db59819d80e4dcb60ddbd9cfe2fd529dfe9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 12:00:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 26 12:00:30 2021 -0700","stats":{"files_changed":4,"insertions":5,"deletions":7,"files":["jc/cli.py","jc/parsers/foo_s.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"]},"message":"linting","epoch":1632682830,"epoch_utc":null},{"commit":"9904e0be61e7c81b907bf3770f111346daeff481","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Sep 25 08:28:57 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Sep 25 08:28:57 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/utils.md","jc/utils.py"]},"message":"formatting","epoch":1632583737,"epoch_utc":null},{"commit":"31b69b3242eeca2c02f87c31d58193dd3f06fe49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Sep 25 08:23:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Sep 25 08:23:46 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/utils.md","jc/utils.py"]},"message":"formatting","epoch":1632583426,"epoch_utc":null},{"commit":"e6a80fea3228122dd84e17672c835c0460ad1342","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Sep 25 08:19:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Sep 25 08:19:34 2021 -0700","stats":{"files_changed":3,"insertions":7,"deletions":7,"files":["docs/utils.md","jc/utils.py","man/jc.1"]},"message":"formatting","epoch":1632583174,"epoch_utc":null},{"commit":"d6aec00e038d1ecfe43c13a6909d50630455b372","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 16:45:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 24 16:45:38 2021 -0700","stats":{"files_changed":4,"insertions":27,"deletions":1,"files":["tests/fixtures/ubuntu-18.04/vmstat-1-long-streaming.json","tests/fixtures/ubuntu-18.04/vmstat-1-long.json","tests/test_vmstat.py","tests/test_vmstat_s.py"]},"message":"add vmstat-1-long tests","epoch":1632527138,"epoch_utc":null},{"commit":"4aa7d81e11ea7fcfbb5c9d74337cde617b1a0d5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 16:27:11 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 24 16:27:11 2021 -0700","stats":{"files_changed":3,"insertions":50,"deletions":2,"files":["jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","tests/fixtures/ubuntu-18.04/vmstat-1-long.out"]},"message":"ignore re-printed header rows in output","epoch":1632526031,"epoch_utc":null},{"commit":"48cdabc3b0862d6291e1ec59ab385e0e146c31eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 10:11:15 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 24 10:11:15 2021 -0700","stats":{"files_changed":4,"insertions":16,"deletions":0,"files":["docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"]},"message":"document timestamps","epoch":1632503475,"epoch_utc":null},{"commit":"a1791ef5479749692c79bbe98fc7687d70cd6cda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 10:01:13 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 24 10:01:13 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"]},"message":"linting","epoch":1632502873,"epoch_utc":null},{"commit":"7bc87f6c2d4cfcfa656a1c1b8973a4c0414c85d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 09:24:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 24 09:24:30 2021 -0700","stats":{"files_changed":8,"insertions":8,"deletions":8,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","man/jc.1"]},"message":"change _meta to _jc_meta","epoch":1632500670,"epoch_utc":null},{"commit":"bbed9e274b8252ba0518140fe7fc97029310771f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 09:16:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 24 09:16:44 2021 -0700","stats":{"files_changed":1,"insertions":154,"deletions":159,"files":["jc/parsers/ping_s.py"]},"message":"linting","epoch":1632500204,"epoch_utc":null},{"commit":"486282b9856f5e56cf43ee1399d8e7cb78353b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 08:52:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 24 08:52:39 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/vmstat_s.py"]},"message":"linting","epoch":1632498759,"epoch_utc":null},{"commit":"a4d45b653f794033978940da14910f5d607a8254","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 08:49:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 24 08:49:37 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["jc/parsers/foo_s.py","jc/parsers/vmstat.py"]},"message":"linting","epoch":1632498577,"epoch_utc":null},{"commit":"22e151b01c0f97c141d912c9646e46df0320d622","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 08:43:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 24 08:43:09 2021 -0700","stats":{"files_changed":2,"insertions":56,"deletions":60,"files":["jc/cli.py","jc/utils.py"]},"message":"linting","epoch":1632498189,"epoch_utc":null},{"commit":"7a4ebcd1ecdb4929aae70e44b4f9b6b5ab52b393","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 21:22:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 21:22:01 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CONTRIBUTING.md"]},"message":"language hints","epoch":1632457321,"epoch_utc":null},{"commit":"651cbfe02fbb354c4caf8e0d022655642e7caed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 21:20:25 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 21:20:25 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"add streaming foo parser","epoch":1632457225,"epoch_utc":null},{"commit":"8c3e764516e1c28961b09380b638a57ce98b1261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 21:17:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 21:17:17 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"add streaming parser to contrib guidelines","epoch":1632457037,"epoch_utc":null},{"commit":"b4e75da7e3f23502723ce8b2a7261b376f296864","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 21:14:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 21:14:47 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1632456887,"epoch_utc":null},{"commit":"37223f086cabc8db5962415bd161fed151dafb9d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 21:13:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 21:13:21 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1632456801,"epoch_utc":null},{"commit":"a404033735c2c8075a8e08194197eae59db70afd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 20:54:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 20:54:44 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add error and warning message wrap info","epoch":1632455684,"epoch_utc":null},{"commit":"b7433ed085c0ba22ea0d49330871a651a8d83fb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 20:53:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 20:53:31 2021 -0700","stats":{"files_changed":6,"insertions":80,"deletions":41,"files":["docs/utils.md","jc/cli.py","jc/parsers/file.py","jc/parsers/ls.py","jc/parsers/traceroute.py","jc/utils.py"]},"message":"auto wrap warning and error messages","epoch":1632455611,"epoch_utc":null},{"commit":"224d3d65ada4216e28e142d411b0c2c3358517b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 13:15:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 13:15:38 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"Add exception class name to error message","epoch":1632428138,"epoch_utc":null},{"commit":"a349fb0bdabaf74503831f22c4efbd02254f809d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 13:08:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 13:08:31 2021 -0700","stats":{"files_changed":3,"insertions":10,"deletions":8,"files":["README.md","docs/utils.md","man/jc.1"]},"message":"change _meta to _jc_meta","epoch":1632427711,"epoch_utc":null},{"commit":"e7ddcfb83fb295034db44ade407476ff3a962cd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 13:07:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 13:07:10 2021 -0700","stats":{"files_changed":5,"insertions":14,"deletions":12,"files":["jc/utils.py","templates/manpage_template","templates/readme_template",".../centos-7.7/ping-ip-O-streaming-ignore-exceptions.json","tests/test_ping_s.py"]},"message":"change _meta to _jc_meta","epoch":1632427630,"epoch_utc":null},{"commit":"abd20dfe3662f65373ac582c70aa740e53b52f68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 12:58:24 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 12:58:24 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"formatting","epoch":1632427104,"epoch_utc":null},{"commit":"dc1fd3ef1be41aee349b159059f1febff76f6caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 11:54:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 11:54:58 2021 -0700","stats":{"files_changed":4,"insertions":12,"deletions":12,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"fix -qq docs","epoch":1632423298,"epoch_utc":null},{"commit":"98a7686db46fbd3ed98382867976249f307d0015","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 11:48:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 11:48:39 2021 -0700","stats":{"files_changed":18,"insertions":160,"deletions":152,"files":["README.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","docs/utils.md","jc/cli.py","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","jc/utils.py","man/jc.1","templates/manpage_template","templates/readme_template","... => ping-ip-O-streaming-ignore-exceptions.json}","tests/test_ls_s.py","tests/test_ping_s.py","tests/test_vmstat_s.py"]},"message":"use -qq to ignore streaming exceptions","epoch":1632422919,"epoch_utc":null},{"commit":"9c6c6c4330fc68115be012de254161f36e3a8328","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 09:04:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 09:04:37 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"add next() info","epoch":1632413077,"epoch_utc":null},{"commit":"f9be5651daa891e06ad0acd8980ffc0fe51fd29d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:59:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 08:59:26 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":6,"files":["README.md","templates/readme_template"]},"message":"add language hints","epoch":1632412766,"epoch_utc":null},{"commit":"df9835a3e62bb2b3b6ec8b55f06a25a00a799d92","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:57:14 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 08:57:14 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1632412634,"epoch_utc":null},{"commit":"92363be2dd633bdd3c2dd07c72ebd281d2cb4565","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:56:14 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 08:56:14 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"fix streaming python module example","epoch":1632412574,"epoch_utc":null},{"commit":"31b62030156f9c826fe5c7d127e9dd0ace582dd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:54:15 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 08:54:15 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1632412455,"epoch_utc":null},{"commit":"18805858d685d456f9a38540bbaedbaa1a411546","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:53:25 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 08:53:25 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["man/jc.1","templates/manpage_template"]},"message":"formatting","epoch":1632412405,"epoch_utc":null},{"commit":"e676f0e20fb6e96a536c4d182b0d287cdc1ad0f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:53:14 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 08:53:14 2021 -0700","stats":{"files_changed":2,"insertions":36,"deletions":6,"files":["README.md","templates/readme_template"]},"message":"add streaming parser info for python module use","epoch":1632412394,"epoch_utc":null},{"commit":"20652edefaa7705b8ba756bae3944ff362a295a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 20:11:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 20:11:26 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["CHANGELOG"]},"message":"update changelog","epoch":1632366686,"epoch_utc":null},{"commit":"98c29d07478093e78f53ec633f2dd08cafc3e3ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 19:54:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 19:54:12 2021 -0700","stats":{"files_changed":8,"insertions":120,"deletions":0,"files":["tests/fixtures/centos-7.7/vmstat-a.json","tests/fixtures/centos-7.7/vmstat-at-5-10.json","tests/fixtures/centos-7.7/vmstat-awt.json","tests/fixtures/centos-7.7/vmstat-d.json","tests/fixtures/centos-7.7/vmstat-dt.json","tests/fixtures/centos-7.7/vmstat-w.json","tests/fixtures/centos-7.7/vmstat.json","tests/test_vmstat.py"]},"message":"add vmstat tests","epoch":1632365652,"epoch_utc":null},{"commit":"41a6311f6b3ed2cc94919d042aed51c46cdf3e2f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 19:34:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 19:34:44 2021 -0700","stats":{"files_changed":9,"insertions":132,"deletions":1,"files":["tests/fixtures/centos-7.7/vmstat-a-streaming.json",".../centos-7.7/vmstat-at-5-10-streaming.json",".../fixtures/centos-7.7/vmstat-awt-streaming.json","tests/fixtures/centos-7.7/vmstat-d-streaming.json","tests/fixtures/centos-7.7/vmstat-dt-streaming.json","tests/fixtures/centos-7.7/vmstat-streaming.json","tests/fixtures/centos-7.7/vmstat-w-streaming.json","tests/test_ping_s.py","tests/test_vmstat_s.py"]},"message":"add streaming parser tests","epoch":1632364484,"epoch_utc":null},{"commit":"978760ec57e04e3ec347c8764bfad015b6dddbff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 19:32:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 19:32:20 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"add exception class name to error string","epoch":1632364340,"epoch_utc":null},{"commit":"d410425537817964ceb7b61e0fdff6c03fdf8766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:43:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 14:43:26 2021 -0700","stats":{"files_changed":4,"insertions":136,"deletions":136,"files":["docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"]},"message":"replace single quotes with double quotes in doc","epoch":1632347006,"epoch_utc":null},{"commit":"6b7430329cbe1bfb95b47bcfe031906641c127e1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:38:13 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 14:38:13 2021 -0700","stats":{"files_changed":5,"insertions":269,"deletions":1,"files":["README.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat_s.py","man/jc.1"]},"message":"doc update","epoch":1632346693,"epoch_utc":null},{"commit":"40fe0d4a6081a1233bf5c3eb51a01da1f12bc4dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:34:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 14:34:46 2021 -0700","stats":{"files_changed":1,"insertions":141,"deletions":22,"files":["jc/parsers/vmstat_s.py"]},"message":"working parser","epoch":1632346486,"epoch_utc":null},{"commit":"365c5354a0349e470558d15243217a064e73da38","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:34:32 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 14:34:32 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/vmstat.py"]},"message":"remove debug print statement","epoch":1632346472,"epoch_utc":null},{"commit":"b246a05cbb4c1c564f81b3e72cecb62edbe6ced6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:34:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 14:34:19 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"fix vmstat-s name","epoch":1632346459,"epoch_utc":null},{"commit":"9e5a7a4abb8668d043625951a05eb5733cbbd56f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:07:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 14:07:09 2021 -0700","stats":{"files_changed":7,"insertions":37,"deletions":0,"files":["tests/fixtures/centos-7.7/vmstat-a.out","tests/fixtures/centos-7.7/vmstat-at-5-10.out","tests/fixtures/centos-7.7/vmstat-awt.out","tests/fixtures/centos-7.7/vmstat-d.out","tests/fixtures/centos-7.7/vmstat-dt.out","tests/fixtures/centos-7.7/vmstat-w.out","tests/fixtures/centos-7.7/vmstat.out"]},"message":"add vmstat sample output","epoch":1632344829,"epoch_utc":null},{"commit":"f266acbccafc040c375723147b8e5d7fddb1e697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:06:51 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 14:06:51 2021 -0700","stats":{"files_changed":1,"insertions":106,"deletions":14,"files":["jc/parsers/vmstat.py"]},"message":"add processing logic","epoch":1632344811,"epoch_utc":null},{"commit":"4e3b471f1801f1b9006b18cae2a3d816f361262e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:06:28 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 14:06:28 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/utils.py"]},"message":"add format for vmstat","epoch":1632344788,"epoch_utc":null},{"commit":"5e28736c2e0c951e71e6531e03a9619279d95d3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 12:08:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 12:08:20 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"]},"message":"add vmstat and vmstat_s","epoch":1632337700,"epoch_utc":null},{"commit":"a91913a3b517ea0dbb25d6e4cc92850eb2fde5ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 12:07:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 12:07:27 2021 -0700","stats":{"files_changed":1,"insertions":106,"deletions":0,"files":["jc/parsers/vmstat_s.py"]},"message":"streaming parser template","epoch":1632337647,"epoch_utc":null},{"commit":"90c64f0ae0d97d025adee40970d89baca79ee4ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 12:07:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 12:07:09 2021 -0700","stats":{"files_changed":1,"insertions":182,"deletions":0,"files":["jc/parsers/vmstat.py"]},"message":"initial working parser","epoch":1632337629,"epoch_utc":null},{"commit":"7cc642ed1a476abda709ac9b79900a1de12e1ef7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 12:06:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 12:06:56 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/foo_s.py"]},"message":"formatting","epoch":1632337616,"epoch_utc":null},{"commit":"809f64d35a92bb3d7380fa9d78ac1421a10b81fc","merge":"ff0fda4 a6f859a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 22:58:18 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Sep 21 22:58:18 2021 -0700","message":"Merge pull request #169 from kellyjonbrazil/streaming\n\nStreaming to dev","epoch":1632290298,"epoch_utc":null},{"commit":"a6f859a55edae50fcc185948736218404cfaa929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 22:47:48 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 22:47:48 2021 -0700","stats":{"files_changed":18,"insertions":168,"deletions":153,"files":[".../osx-10.14.6/ping-hostname-p-streaming.json",".../osx-10.14.6/ping-hostname-s-streaming.json",".../osx-10.14.6/ping-hostname-streaming.json",".../osx-10.14.6/ping-ip-dup-streaming.json",".../fixtures/osx-10.14.6/ping-ip-p-streaming.json",".../fixtures/osx-10.14.6/ping-ip-s-streaming.json","tests/fixtures/osx-10.14.6/ping-ip-streaming.json",".../osx-10.14.6/ping-ip-unreachable-streaming.json",".../osx-10.14.6/ping6-hostname-p-streaming.json",".../osx-10.14.6/ping6-hostname-s-streaming.json",".../osx-10.14.6/ping6-hostname-streaming.json",".../osx-10.14.6/ping6-ip-dup-streaming.json",".../fixtures/osx-10.14.6/ping6-ip-p-streaming.json",".../fixtures/osx-10.14.6/ping6-ip-s-streaming.json","tests/fixtures/osx-10.14.6/ping6-ip-streaming.json","tests/fixtures/pi/ping-ip-O-D-streaming.json","tests/fixtures/pi/ping-ip-O-streaming.json","tests/test_ping_s.py"]},"message":"add final ping_s tests","epoch":1632289668,"epoch_utc":null},{"commit":"39ef88078f43708e470d3c1b2fd95e76b5cbeb08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 22:47:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 22:47:02 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/ping_s.py"]},"message":"add destination_ip to error lines","epoch":1632289622,"epoch_utc":null},{"commit":"aeea5e8d2eab2fef3e14637f512aed7b117c4a3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 22:00:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 22:00:05 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/test_ls_s.py"]},"message":"formatting","epoch":1632286805,"epoch_utc":null},{"commit":"1a0700bff4bdebbd9f1f92f2fc7a56c4d5ed6925","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 21:58:59 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 21:58:59 2021 -0700","stats":{"files_changed":31,"insertions":240,"deletions":213,"files":[".../fedora32/ping-hostname-O-D-p-s-streaming.json",".../fedora32/ping-hostname-O-p-streaming.json",".../fedora32/ping-hostname-O-streaming.json","tests/fixtures/fedora32/ping-ip-O-D-streaming.json","tests/fixtures/fedora32/ping-ip-O-streaming.json",".../fedora32/ping6-hostname-O-D-p-s-streaming.json",".../fedora32/ping6-hostname-O-p-streaming.json",".../fedora32/ping6-ip-O-D-p-streaming.json",".../fixtures/fedora32/ping6-ip-O-p-streaming.json",".../freebsd12/ping-hostname-p-streaming.json",".../freebsd12/ping-hostname-s-streaming.json",".../freebsd12/ping-hostname-streaming.json","tests/fixtures/freebsd12/ping-ip-p-streaming.json","tests/fixtures/freebsd12/ping-ip-s-streaming.json","tests/fixtures/freebsd12/ping-ip-streaming.json",".../freebsd12/ping6-hostname-p-streaming.json",".../freebsd12/ping6-hostname-s-streaming.json",".../freebsd12/ping6-hostname-streaming.json","tests/fixtures/freebsd12/ping6-ip-p-streaming.json","tests/fixtures/freebsd12/ping6-ip-s-streaming.json","tests/fixtures/freebsd12/ping6-ip-streaming.json",".../ping-hostname-O-D-p-s-streaming.json",".../ubuntu-18.04/ping-hostname-O-p-streaming.json",".../ubuntu-18.04/ping-hostname-O-streaming.json",".../ubuntu-18.04/ping-ip-O-D-streaming.json",".../fixtures/ubuntu-18.04/ping-ip-O-streaming.json",".../ping6-hostname-O-D-p-s-streaming.json",".../ubuntu-18.04/ping6-hostname-O-p-streaming.json",".../ubuntu-18.04/ping6-ip-O-D-p-streaming.json",".../ubuntu-18.04/ping6-ip-O-p-streaming.json","tests/test_ping_s.py"]},"message":"add more ping-s tests","epoch":1632286739,"epoch_utc":null},{"commit":"b5fa6d068f240671eb948b055cd4f7bf127e0ec0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 16:03:00 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 16:03:00 2021 -0700","stats":{"files_changed":5,"insertions":25,"deletions":5,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"]},"message":"update docs","epoch":1632265380,"epoch_utc":null},{"commit":"1baec0b420feff068f2dc1e35499f78aa7d0a6e0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 15:43:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 15:43:02 2021 -0700","stats":{"files_changed":13,"insertions":815,"deletions":0,"files":[".../ping-hostname-O-D-p-s-streaming.json",".../centos-7.7/ping-hostname-O-p-streaming.json",".../centos-7.7/ping-hostname-O-streaming.json",".../fixtures/centos-7.7/ping-ip-O-D-streaming.json",".../centos-7.7/ping-ip-O-streaming-quiet.json","tests/fixtures/centos-7.7/ping-ip-O-streaming.json",".../fixtures/centos-7.7/ping-ip-dup-streaming.json",".../ping6-hostname-O-D-p-s-streaming.json",".../centos-7.7/ping6-hostname-O-p-streaming.json",".../centos-7.7/ping6-ip-O-D-p-streaming.json",".../centos-7.7/ping6-ip-O-p-streaming.json",".../centos-7.7/ping6-ip-dup-streaming.json","tests/test_ping_s.py"]},"message":"add some streaming tests","epoch":1632264182,"epoch_utc":null},{"commit":"4f2a4e1dee9d722d2aa5ddf2c082a358c88cf640","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 15:42:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 15:42:45 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/parsers/ping_s.py"]},"message":"skip blank lines and warning lines","epoch":1632264165,"epoch_utc":null},{"commit":"758d617668d1f9d0f27b52d46749e5b67a570cf1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 13:29:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 13:29:50 2021 -0700","stats":{"files_changed":5,"insertions":5,"deletions":5,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"]},"message":"doc update","epoch":1632256190,"epoch_utc":null},{"commit":"55322c37f57a9c8e28641a61928fad2329f5e50d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 12:36:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 12:36:36 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/foo_s.py"]},"message":"formatting","epoch":1632252996,"epoch_utc":null},{"commit":"d19ea5552bb3a379f7f92bcb58794c557ecc6647","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 12:33:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 12:33:05 2021 -0700","stats":{"files_changed":12,"insertions":193,"deletions":0,"files":["tests/fixtures/centos-7.7/ls-al-streaming.json","tests/fixtures/centos-7.7/ls-alR-streaming.json","tests/fixtures/centos-7.7/ls-alh-streaming.json","tests/fixtures/osx-10.14.6/ls-al-streaming.json","tests/fixtures/osx-10.14.6/ls-alR-streaming.json","tests/fixtures/osx-10.14.6/ls-alh-streaming.json",".../osx-10.14.6/ls-lR-empty-folder-streaming.json","tests/fixtures/ubuntu-18.04/ls-al-streaming.json","tests/fixtures/ubuntu-18.04/ls-alR-streaming.json","tests/fixtures/ubuntu-18.04/ls-alh-streaming.json",".../fixtures/ubuntu-18.04/ls-l-iso-streaming.json","tests/test_ls_s.py"]},"message":"add streaming ls parser tests","epoch":1632252785,"epoch_utc":null},{"commit":"130c3527c1083d399deef00ee8fcaa75f609b485","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 12:32:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 12:32:34 2021 -0700","stats":{"files_changed":6,"insertions":25,"deletions":25,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","man/jc.1"]},"message":"update docstrings","epoch":1632252754,"epoch_utc":null},{"commit":"3f221f471416766a860bd19850afda4899ee5eb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 13:21:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 20 13:21:20 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"]},"message":"doc update","epoch":1632169280,"epoch_utc":null},{"commit":"d64c4cb39056bb869fc117477612ae5ae2ef3d85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 13:04:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 20 13:04:26 2021 -0700","stats":{"files_changed":2,"insertions":141,"deletions":1,"files":["man/jc.1","templates/manpage_template"]},"message":"add streaming parsers section","epoch":1632168266,"epoch_utc":null},{"commit":"448c56aa46b72438e4a4c83b10a7eb889e3f50e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 13:04:14 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 20 13:04:14 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1632168254,"epoch_utc":null},{"commit":"9fbea15b6d031baa8c90f2602e39de7cf51408e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 11:59:54 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 20 11:59:54 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":8,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"]},"message":"rename state class to _state","epoch":1632164394,"epoch_utc":null},{"commit":"932060314b3c1ce518b9f57532e124285cb3ad0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 11:51:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 20 11:51:27 2021 -0700","stats":{"files_changed":2,"insertions":41,"deletions":11,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"]},"message":"doc update","epoch":1632163887,"epoch_utc":null},{"commit":"5e68ae50097cb339f3390449db7e3f189a716320","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 11:42:15 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 20 11:42:15 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/parsers/ping_s.py"]},"message":"import exception. tighten up os detection","epoch":1632163335,"epoch_utc":null},{"commit":"d03541beae44a4571a7d0481af01a5c19506207f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 11:24:59 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 20 11:24:59 2021 -0700","stats":{"files_changed":1,"insertions":12,"deletions":5,"files":["jc/parsers/ping_s.py"]},"message":"add docstring examples. add exception raise when OS cannot be detected.","epoch":1632162299,"epoch_utc":null},{"commit":"516fa571d90a0c93134c953c15ce84dd31b96b4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 19 21:41:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 19 21:41:35 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/ping_s.py"]},"message":"remove unused variable. use elif instead of if for linux vs. bsd detection","epoch":1632112895,"epoch_utc":null},{"commit":"a19c12096a8e8de02a6ff761cc9c13ec249d416e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 19 13:18:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 19 13:18:23 2021 -0700","stats":{"files_changed":1,"insertions":373,"deletions":143,"files":["jc/parsers/ping_s.py"]},"message":"initial working parser for both linux and bsd","epoch":1632082703,"epoch_utc":null},{"commit":"758f27945de4f0897405eba02c7908d815ce6e9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 15:09:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 17 15:09:56 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/ping_s.py"]},"message":"change data_bytes and bytes to sent_bytes and response_bytes","epoch":1631916596,"epoch_utc":null},{"commit":"8b1e8d58df22f8542ccaf7bf3e1eabe6132e7a42","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 14:44:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 17 14:44:49 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping_s.py"]},"message":"remove unneeded line","epoch":1631915089,"epoch_utc":null},{"commit":"b967489d085319facee077958deaa04956a98343","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 14:42:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 17 14:42:30 2021 -0700","stats":{"files_changed":1,"insertions":81,"deletions":40,"files":["jc/parsers/ping_s.py"]},"message":"complete linux coverage including summary","epoch":1631914950,"epoch_utc":null},{"commit":"870d0218be2641e3eddb114c23d54deb23155f25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 10:34:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 17 10:34:05 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"]},"message":"add unbuffer note","epoch":1631900045,"epoch_utc":null},{"commit":"84020bc2af294cb065105f1399453aefc98eb180","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 10:26:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 17 10:26:47 2021 -0700","stats":{"files_changed":7,"insertions":12,"deletions":6,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/utils.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","man/jc.1"]},"message":"change error_msg to error in -q result docs","epoch":1631899607,"epoch_utc":null},{"commit":"4efe5344e069ed921f208bcbbd097705be2d3b4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 10:20:22 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 17 10:20:22 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add links to HN and Reddit","epoch":1631899222,"epoch_utc":null},{"commit":"9182c545134b3d56d27d2c1d9bda678532bdc3fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 08:24:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 17 08:24:56 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":8,"files":["jc/utils.py"]},"message":"formatting","epoch":1631892296,"epoch_utc":null},{"commit":"28f0ab0b02d21fc060f1ac7181f85552798dc4bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 08:21:13 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 17 08:21:13 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/ls_s.py","jc/utils.py"]},"message":"update streaming error messages","epoch":1631892073,"epoch_utc":null},{"commit":"90d1a30696b2cbfbb06a55cc0cf920cf8ecd89aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 08:05:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 17 08:05:23 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1631891123,"epoch_utc":null},{"commit":"130b3738cc57fe261e8ef881a57b7836acd7e7e9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 22:32:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 22:32:46 2021 -0700","stats":{"files_changed":4,"insertions":21,"deletions":26,"files":["jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/utils.py"]},"message":"shorten successful yield to a single line","epoch":1631856766,"epoch_utc":null},{"commit":"92c7357615af7689db273aa78d666b35a2ec7a70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 22:04:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 22:04:44 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/foo_s.py"]},"message":"formatting","epoch":1631855084,"epoch_utc":null},{"commit":"c80f8633349c00ea461b8927f9949fe19b2f46ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 22:04:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 22:04:31 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/foo.py"]},"message":"simplify return condition formatting","epoch":1631855071,"epoch_utc":null},{"commit":"4642c20179d4643e0cf1970b264da7d9d91628de","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 21:55:40 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 21:55:40 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1631854540,"epoch_utc":null},{"commit":"5288eb22aadbbc1005b16428b94d2b07e9a75e3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 21:43:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 21:43:36 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"add info about streaming parser performance characteristics","epoch":1631853816,"epoch_utc":null},{"commit":"df8387a1a99df69eac5005662aaf56d506fa0efd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 21:37:54 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 21:37:54 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"streaming parsers cannot be used with the magic syntax","epoch":1631853474,"epoch_utc":null},{"commit":"cc38c27f44d3f088609b878304cab8eed75fc8f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 21:33:57 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 21:33:57 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1631853237,"epoch_utc":null},{"commit":"64f5357d69fe88b45d710d38948969699e1ca12f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 21:31:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 21:31:45 2021 -0700","stats":{"files_changed":2,"insertions":84,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add streaming parsers section","epoch":1631853105,"epoch_utc":null},{"commit":"51debb5649bef431e51e543f1c9270e2810aa58f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 20:45:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 20:45:01 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"]},"message":"add vmstat parser and change from linebuffer to unbuffer","epoch":1631850301,"epoch_utc":null},{"commit":"b48d05a4313b27cf5e69d3e4259542e0b131b60f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 20:41:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 20:41:56 2021 -0700","stats":{"files_changed":5,"insertions":15,"deletions":15,"files":["README.md","jc/cli.py","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"change from line buffer output to unbuffer output","epoch":1631850116,"epoch_utc":null},{"commit":"4e7f6b337db61b8a106cf958f6b874157909c87a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 20:26:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 20:26:56 2021 -0700","stats":{"files_changed":3,"insertions":17,"deletions":25,"files":["jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"]},"message":"simplify yield statements","epoch":1631849216,"epoch_utc":null},{"commit":"a509d99cafd80862721595ee59ccc4a471b5e5a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 20:25:28 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 20:25:28 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/utils.py"]},"message":"add stream_success dictionary","epoch":1631849128,"epoch_utc":null},{"commit":"481e45fb644ac88fa77ef35643b793f179fe6859","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 14 06:02:55 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 14 06:02:55 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"]},"message":"limit parse error msg lenght","epoch":1631624575,"epoch_utc":null},{"commit":"e9038e1720e1c0e520e2f29b718aa8505cbbb9a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 21:15:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 21:15:26 2021 -0700","stats":{"files_changed":1,"insertions":66,"deletions":0,"files":["docs/parsers/ping_s.md"]},"message":"initial streaming ping docs","epoch":1631592926,"epoch_utc":null},{"commit":"8fd9e582bf29275c4daaa3be88ea8d196411b34a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 21:15:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 21:15:08 2021 -0700","stats":{"files_changed":1,"insertions":15,"deletions":17,"files":["docs/parsers/ls_s.md"]},"message":"doc update","epoch":1631592908,"epoch_utc":null},{"commit":"c1fd6f48a5a3501499c9fca7239673b8555cc7c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 21:14:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 21:14:56 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["docs/utils.md"]},"message":"add stream_error docs","epoch":1631592896,"epoch_utc":null},{"commit":"af615c7f4b3f589ffc1b37cf9834062a04c013cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 21:14:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 21:14:38 2021 -0700","stats":{"files_changed":6,"insertions":26,"deletions":5,"files":["CHANGELOG","README.md","jc/cli.py","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"add line buffer output option","epoch":1631592878,"epoch_utc":null},{"commit":"bf0bc32d7ae6cabe07906207f4f08c2e81802c80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 20:51:24 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 20:51:24 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"flush streamed text for better piping experience","epoch":1631591484,"epoch_utc":null},{"commit":"2d6b53e012181a4c33bab441880c47c0fc0b0601","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 19:50:51 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 19:50:51 2021 -0700","stats":{"files_changed":1,"insertions":36,"deletions":42,"files":["jc/parsers/ping_s.py"]},"message":"add pattern support. move unparsable line detection to standard streaming parser style","epoch":1631587851,"epoch_utc":null},{"commit":"51271fea0fbd7bd63863ba05c399b4675dc5b4bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 19:27:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 19:27:34 2021 -0700","stats":{"files_changed":1,"insertions":139,"deletions":149,"files":["jc/parsers/ping_s.py"]},"message":"somewhat working parser","epoch":1631586454,"epoch_utc":null},{"commit":"2deb473e0bc96c0e39ec4074a6df4b941ba2172b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:36:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 18:36:36 2021 -0700","stats":{"files_changed":1,"insertions":262,"deletions":0,"files":["jc/parsers/ping_s.py"]},"message":"initial streaming ping parser","epoch":1631583396,"epoch_utc":null},{"commit":"23eeb33b3da43a679c3bf3f3643cfa552a1164e1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:36:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 18:36:19 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"modify stream_error message","epoch":1631583379,"epoch_utc":null},{"commit":"f50dfaef45632241f8f6972fa19bb17c54a457ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:31:52 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 18:31:52 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":13,"files":["jc/parsers/ls_s.py"]},"message":"use stream_error function for exceptions. raise on non -l ls output","epoch":1631583112,"epoch_utc":null},{"commit":"55bb71e9d466cc9ee5f7fd8eca1101c941cbcb35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:30:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 18:30:20 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"add streaming ping parser. update streaming exception message","epoch":1631583020,"epoch_utc":null},{"commit":"dab9357d286962b70224d6fafbf90a4c0cbc9980","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:29:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 18:29:49 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":12,"files":["jc/parsers/foo_s.py"]},"message":"use stream_error function for exceptions","epoch":1631582989,"epoch_utc":null},{"commit":"27eb427245b5126335cef0adb5e57522272474b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:29:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 18:29:10 2021 -0700","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/utils.py"]},"message":"add stream_error function","epoch":1631582950,"epoch_utc":null},{"commit":"260f3685d944ded84396ae3395773d6898803fb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 15:06:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 15:06:02 2021 -0700","stats":{"files_changed":1,"insertions":112,"deletions":0,"files":["jc/parsers/foo_s.py"]},"message":"add streaming parser template","epoch":1631570762,"epoch_utc":null},{"commit":"76e78fc0c34b88a90fef876eebef92bd71cd772c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 15:05:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 15:05:49 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":11,"files":["jc/parsers/ls_s.py"]},"message":"doc updates","epoch":1631570749,"epoch_utc":null},{"commit":"1ac944fa028a400ae7b39b811fcf368c9bf5e259","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 12:13:14 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 12:13:14 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/ls_s.py"]},"message":"add -q option info to docstring","epoch":1631560394,"epoch_utc":null},{"commit":"986bc9b042a940f8dd34f0541bcb9b5840df579e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 12:10:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 12:10:02 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":43,"files":["jc/parsers/ls_s.py"]},"message":"cleanup unused code","epoch":1631560202,"epoch_utc":null},{"commit":"5a7942069b1f3ef3b45992b482bfb6bb973f7e8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 10:56:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 10:56:05 2021 -0700","stats":{"files_changed":1,"insertions":28,"deletions":28,"files":["jc/parsers/ls_s.py"]},"message":"add support for parent field","epoch":1631555765,"epoch_utc":null},{"commit":"f6c6fc13ac4c779667807df12444a41ef28a8011","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 08:55:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 08:55:19 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/cli.py"]},"message":"enhance error msg when streaming parser is used","epoch":1631548519,"epoch_utc":null},{"commit":"1d8cfae89f24192b6fab087f59c9b8988ef363dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 12 17:30:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 12 17:30:56 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/parsers/ls_s.py"]},"message":"only print _meta object if -q or quiet flag is used. Also, add message to the end of exceptions informing of the -q option to ignore errors","epoch":1631493056,"epoch_utc":null},{"commit":"787df51239ffa8260b48d6a3a58e6ff07d5e0f64","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 12 16:42:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 12 16:42:47 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"]},"message":"remove `\\n` from end of line in exception message","epoch":1631490167,"epoch_utc":null},{"commit":"5e7f302a9c45343c36e81944db38a435e6c8a20c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 12 16:35:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 12 16:35:46 2021 -0700","stats":{"files_changed":1,"insertions":12,"deletions":10,"files":["jc/parsers/ls_s.py"]},"message":"Raise exceptions unless the -q or quiet flag are used","epoch":1631489746,"epoch_utc":null},{"commit":"3d10fd40b56264836874da19aa72351e6d5cfbf7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 12 16:27:00 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 12 16:27:00 2021 -0700","stats":{"files_changed":1,"insertions":14,"deletions":13,"files":["jc/cli.py"]},"message":"remove print flush for better performance. Roll json.JSONDecodeError into the parse try/except block","epoch":1631489220,"epoch_utc":null},{"commit":"57e3bf239cc76d3b0ee0eddc618171eb90c28dec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 10 15:02:15 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 10 15:02:15 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"]},"message":"formatting for docs","epoch":1631311335,"epoch_utc":null},{"commit":"ccb09861e82044e17ec51277b3c8875e5ba9d87d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 10 15:01:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 10 15:01:02 2021 -0700","stats":{"files_changed":2,"insertions":20,"deletions":20,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"]},"message":"formatting for docs","epoch":1631311262,"epoch_utc":null},{"commit":"94551d75dd926c7f558e5cab47ba9483a20c6b3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 10 14:27:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 10 14:27:50 2021 -0700","stats":{"files_changed":10,"insertions":116,"deletions":49,"files":["CHANGELOG","README.md","docs/parsers/ls_s.md","docs/readme.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz","mangen.py","setup.py"]},"message":"doc update","epoch":1631309270,"epoch_utc":null},{"commit":"6e21218425359210591827e936b8d48d9644df92","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 10 14:14:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 10 14:14:10 2021 -0700","stats":{"files_changed":2,"insertions":234,"deletions":3,"files":["jc/cli.py","jc/parsers/ls_s.py"]},"message":"working prototype of streaming ls parser","epoch":1631308450,"epoch_utc":null},{"commit":"ff0fda48fc48760a7293528155d222c6456f84c4","merge":"e08b61f 528aac7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 10 08:08:45 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Sep 10 08:08:45 2021 -0700","message":"Merge pull request #168 from kellyjonbrazil/master\n\nSync master to dev","epoch":1631286525,"epoch_utc":null},{"commit":"528aac7ad87feae2093aba563c83a29ebf75e5f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 8 07:00:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 8 07:00:50 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":38,"files":["README.md","templates/readme_template"]},"message":"use subprocess in python example","epoch":1631109650,"epoch_utc":null},{"commit":"ab482e521d4cecfffa5393805b1d7de4389db49a","merge":"9c1ad92 e08b61f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 31 09:50:38 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Aug 31 09:50:38 2021 -0700","message":"Merge pull request #163 from kellyjonbrazil/dev\n\nDev v1.16.2","epoch":1630428638,"epoch_utc":null},{"commit":"e08b61fa81b1bd2304d04db5cdc8b809fe9c6032","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 31 08:54:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Aug 31 08:54:23 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]},"message":"add schema note to sfdisk","epoch":1630425263,"epoch_utc":null},{"commit":"ce61bd1d2b4323d9c2d0454c4f646521913ae20d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 31 08:50:42 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Aug 31 08:50:42 2021 -0700","stats":{"files_changed":7,"insertions":73,"deletions":7,"files":["tests/fixtures/debian10/sfdisk-F2.json","tests/fixtures/debian10/sfdisk-F2.out","tests/fixtures/debian10/sfdisk-l2.json","tests/fixtures/debian10/sfdisk-l2.out","tests/fixtures/debian10/sfdisk-l3.json","tests/fixtures/debian10/sfdisk-l3.out","tests/test_sfdisk.py"]},"message":"add tests for -F fixes","epoch":1630425042,"epoch_utc":null},{"commit":"7b708f75182bf3ed33478a7de62e9c2496f0b994","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 31 08:39:54 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Aug 31 08:39:54 2021 -0700","stats":{"files_changed":3,"insertions":11,"deletions":5,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-l.json","tests/fixtures/debian10/sfdisk-l.json"]},"message":"Don't convert 'size' to int, except for legacy -d support. Change partition table detection logic to fix -F output","epoch":1630424394,"epoch_utc":null},{"commit":"89ca50c7fc1bf64f34c915e65031d0bc520e6466","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 21:56:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 30 21:56:36 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"]},"message":"add -l to sfdisk raw example","epoch":1630385796,"epoch_utc":null},{"commit":"fb54899dcc2160450448e0d6111557cebdeb0d4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 21:53:40 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 30 21:53:40 2021 -0700","stats":{"files_changed":4,"insertions":38,"deletions":23,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]},"message":"doc update","epoch":1630385620,"epoch_utc":null},{"commit":"0a625ad7ddd9c804052d98930165cd22049546bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 21:52:55 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 30 21:52:55 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/sfdisk.py"]},"message":"remove unneeded lines","epoch":1630385575,"epoch_utc":null},{"commit":"d32e45efbe0d71a9a132abfb2855f1f4ccee9916","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 21:49:07 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 30 21:49:07 2021 -0700","stats":{"files_changed":6,"insertions":69,"deletions":1,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-F.json","tests/fixtures/centos-8/sfdisk-l.json","tests/fixtures/debian10/sfdisk-F.json","tests/fixtures/debian10/sfdisk-l.json","tests/test_sfdisk.py"]},"message":"add sfdisk tests","epoch":1630385347,"epoch_utc":null},{"commit":"c77696bc789cdfd286a7479c3d9f67d23149d0ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 20:55:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 30 20:55:26 2021 -0700","stats":{"files_changed":3,"insertions":6,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"]},"message":"version bump","epoch":1630382126,"epoch_utc":null},{"commit":"736fde9e784587cb2ef344bbf31d876eafea7741","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 20:51:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 30 20:51:19 2021 -0700","stats":{"files_changed":5,"insertions":147,"deletions":28,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-F.out","tests/fixtures/centos-8/sfdisk-l.out","tests/fixtures/debian10/sfdisk-F.out","tests/fixtures/debian10/sfdisk-l.out"]},"message":"add support for newer versions of sfdisk","epoch":1630381879,"epoch_utc":null},{"commit":"9c1ad92fed9a4b3a0da66d6b71deec8d608edfa9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:31:51 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 26 10:31:51 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["CONTRIBUTING.md"]},"message":"fix examples","epoch":1629999111,"epoch_utc":null},{"commit":"1a9fd2139d156a51bf2d25db951e47e96da77f7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:29:13 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 26 10:29:13 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"add \"For new parsers:\"","epoch":1629998953,"epoch_utc":null},{"commit":"7661e7f27a4e5c379ea37c7f95496aca2c1e2910","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:27:11 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 26 10:27:11 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"formatting","epoch":1629998831,"epoch_utc":null},{"commit":"f857b7fbf7862ddd7eb5ab20470f5dbaacc62119","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:25:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 26 10:25:37 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"add custom parser folder info","epoch":1629998737,"epoch_utc":null},{"commit":"d94d12dbc5fb3e3712b2f1aea949013cb8213e28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:20:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 26 10:20:53 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["CONTRIBUTING.md"]},"message":"add foo parser template info","epoch":1629998453,"epoch_utc":null},{"commit":"700916276ae8b0a106410e3dd2ea3e00248ee37a","merge":"473f706 834e523","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:01:08 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Aug 26 10:01:08 2021 -0700","message":"Merge pull request #159 from kellyjonbrazil/master\n\nSync Master to dev","epoch":1629997268,"epoch_utc":null},{"commit":"834e52369ceb479776ddc8fc2931790af53b9c18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 16 10:33:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 16 10:33:26 2021 -0700","stats":{"files_changed":3,"insertions":1,"deletions":5,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]},"message":"update man page","epoch":1629135206,"epoch_utc":null},{"commit":"1ce53365de61421c8bd43e04590038083894153b","merge":"2689697 473f706","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 16 10:32:03 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Aug 16 10:32:03 2021 -0700","message":"Merge pull request #156 from kellyjonbrazil/dev\n\nDev v1.16.1","epoch":1629135123,"epoch_utc":null},{"commit":"473f70668f04a38765559c5dbf0468af24d625c9","merge":"0dbd270 2689697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 16 10:28:11 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 16 10:28:11 2021 -0700","message":"Merge branch 'master' into dev\n\n# Conflicts:\n# jc/man/jc.1.gz\n# man/jc.1\n# man/jc.1.gz","epoch":1629134891,"epoch_utc":null},{"commit":"0dbd2702f6ab2640b2ccdea92411ac0789673e66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 17:17:51 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Aug 13 17:17:51 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/cli.py"]},"message":"reformat doc_text for nicer indentation","epoch":1628900271,"epoch_utc":null},{"commit":"01e3764a9b6ba902aea522bf6b7005fd37b3acbb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 16:03:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Aug 13 16:03:46 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"fix join syntax","epoch":1628895826,"epoch_utc":null},{"commit":"ff9c81722ae7221364e9bcb83d98b16b4263334e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 16:01:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Aug 13 16:01:45 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"]},"message":"try/except for shlex.join since only available in python 3.8","epoch":1628895705,"epoch_utc":null},{"commit":"166aef7a022ed29862ab2e0702d53c591bb5cc77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 15:22:33 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Aug 13 15:22:33 2021 -0700","stats":{"files_changed":6,"insertions":4,"deletions":4,"files":["docs/parsers/stat.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz","setup.py"]},"message":"version bump","epoch":1628893353,"epoch_utc":null},{"commit":"78caf7646baf5d35602fd76771443cd64bd783af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 15:19:41 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Aug 13 15:19:41 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add stat fix","epoch":1628893181,"epoch_utc":null},{"commit":"1f99d40cecc5d88a246f3558f71db376ebd885c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 15:19:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Aug 13 15:19:31 2021 -0700","stats":{"files_changed":4,"insertions":17,"deletions":2,"files":["jc/parsers/stat.py","tests/fixtures/osx-10.14.6/stat-filename-with-spaces.json","tests/fixtures/osx-10.14.6/stat-filename-with-spaces.out","tests/test_stat.py"]},"message":"fix filename with spaces for osx/bsd","epoch":1628893171,"epoch_utc":null},{"commit":"4c2912d3d5ec1fd2d5d891f2b3c58a33dd8572be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 15:19:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Aug 13 15:19:17 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"use shlex.join to quote run_command_str for better error messages","epoch":1628893157,"epoch_utc":null},{"commit":"45e6e06be581f787f707e3f5645129c713478d16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 14:19:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Aug 13 14:19:45 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["CHANGELOG"]},"message":"add glob and process substitution fixes","epoch":1628889585,"epoch_utc":null},{"commit":"fdbe3e05f323c95687a1137983f9623911008ca2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 14:19:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Aug 13 14:19:26 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["jc/cli.py"]},"message":"fix issue with globs not including filenames with spaces with magic syntax (introduced during switch to use subprocess to grab process exit code). No longer need to shlex quote arguments.","epoch":1628889566,"epoch_utc":null},{"commit":"7cc168f6409af13fda815d0d2a6db25b7c9ba367","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 12 16:55:07 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 12 16:55:07 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"add comment","epoch":1628812507,"epoch_utc":null},{"commit":"ff2d609c9b5f5f57f3331e5593e8fe87c01654dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 12 16:36:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 12 16:36:35 2021 -0700","stats":{"files_changed":1,"insertions":12,"deletions":1,"files":["jc/cli.py"]},"message":"add close_fds=False in subprocess.Popen() to allow process substitution in magic syntax. Also check for too many open files exception","epoch":1628811395,"epoch_utc":null},{"commit":"2689697b4c21758903e5f74ec069e89be585aba2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 22 17:03:00 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 22 17:03:00 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1626998580,"epoch_utc":null},{"commit":"f90a0ea8ab15629b7786e4431e9c968c3a896ee0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 22 12:20:48 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 22 12:20:48 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["templates/readme_template"]},"message":"formatting","epoch":1626981648,"epoch_utc":null},{"commit":"caabe60f849fb2422e47b8f10e0ff35beb706dcd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 22 12:20:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 22 12:20:31 2021 -0700","stats":{"files_changed":5,"insertions":3,"deletions":3,"files":["docs/parsers/kv.md","jc/man/jc.1.gz","jc/parsers/kv.py","man/jc.1","man/jc.1.gz"]},"message":"fix kv example","epoch":1626981631,"epoch_utc":null},{"commit":"2bef4ed6038201f54339e750a833260dc1998591","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 21 08:47:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 21 08:47:16 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","README.md"]},"message":"package updates","epoch":1626882436,"epoch_utc":null},{"commit":"ee57be533b12593a33a2abbb2892697f0bd40c65","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 20 12:35:02 2021 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 20 12:35:02 2021 -0500","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"]},"message":"fix sfdisk example","epoch":1626809702,"epoch_utc":null},{"commit":"c5b7aaca25d6b66d3e44256c2c6760a4cf2956ec","merge":"3b22ce4 7a1be90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 20 10:19:14 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Jul 20 10:19:14 2021 -0700","message":"Merge pull request #149 from kellyjonbrazil/dev\n\nDev v1.16.0","epoch":1626801554,"epoch_utc":null},{"commit":"7a1be905bb8654558afb5979b0bd78d4a8488874","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 20 12:15:29 2021 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 20 12:15:29 2021 -0500","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]},"message":"version bump","epoch":1626808529,"epoch_utc":null},{"commit":"5798495a11afa2f72ce6f79be785d46240fcbeb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 20 12:13:33 2021 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 20 12:13:33 2021 -0500","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["CHANGELOG"]},"message":"add 1.15.7 to 1.16.0 changes","epoch":1626808413,"epoch_utc":null},{"commit":"46171e220252ec92d18e744d2a57c1d6a6dc19f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 20 12:13:14 2021 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 20 12:13:14 2021 -0500","stats":{"files_changed":1,"insertions":69,"deletions":0,"files":["EXAMPLES.md"]},"message":"add sfdisk example","epoch":1626808394,"epoch_utc":null},{"commit":"dd5c924ff505dcc2a9c851d2425677bdf16ea462","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 19 12:13:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 19 12:13:46 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add man page location change","epoch":1626722026,"epoch_utc":null},{"commit":"30c4ab297658228a07ef9b1585516719af3febb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 19 12:08:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 19 12:08:50 2021 -0700","stats":{"files_changed":3,"insertions":515,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]},"message":"new man page location","epoch":1626721730,"epoch_utc":null},{"commit":"26ea4d47b33277efb0ddafe8f421791696277c07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 19 12:04:25 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 19 12:04:25 2021 -0700","stats":{"files_changed":5,"insertions":14,"deletions":3,"files":["CHANGELOG","MANIFEST.in","jc/__init__.py","mangen.py","setup.py"]},"message":"version bump and deprecate /man/jc.1.gz and /jc/man/jc.1.gz","epoch":1626721465,"epoch_utc":null},{"commit":"2732cd175c1e878210707162de3928f33fb2f201","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 12 08:10:18 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 12 08:10:18 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["CHANGELOG","MANIFEST.in"]},"message":"include CHANGELOG in source distribution","epoch":1626102618,"epoch_utc":null},{"commit":"3e54b597be88b0e342e4361b7f2c1af447f9482b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 7 09:00:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 7 09:00:19 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add timezone change for unit tests","epoch":1625673619,"epoch_utc":null},{"commit":"f10ebea20962084833e5c1ebd9bc90a251bf3ff4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 7 08:53:52 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 7 08:53:52 2021 -0700","stats":{"files_changed":11,"insertions":78,"deletions":0,"files":["tests/test_date.py","tests/test_dig.py","tests/test_dir.py","tests/test_last.py","tests/test_ls.py","tests/test_rpm_qai.py","tests/test_stat.py","tests/test_systeminfo.py","tests/test_upower.py","tests/test_utils.py","tests/test_who.py"]},"message":"update tests to set correct timezone on POSIX systems","epoch":1625673232,"epoch_utc":null},{"commit":"2c6f3993cb4c5e559dbac7a479ec889aa2cba752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 1 15:53:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 1 15:53:10 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/route.md","jc/man/jc.1.gz","jc/parsers/route.py","man/jc.1.gz"]},"message":"remove extra comma","epoch":1625179990,"epoch_utc":null},{"commit":"708a696920b52c2614edcdba264912527b2dfbef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 1 15:51:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 1 15:51:38 2021 -0700","stats":{"files_changed":3,"insertions":0,"deletions":2,"files":["docs/parsers/route.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"remove extra lines","epoch":1625179898,"epoch_utc":null},{"commit":"20bbb5d331575c8fc33ba63643882a62650c97b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 1 15:50:55 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 1 15:50:55 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/route.py"]},"message":"remove extra lines","epoch":1625179855,"epoch_utc":null},{"commit":"223e785b547d9376174efa15321d60a533847c57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 17:07:43 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 30 17:07:43 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/sfdisk.py"]},"message":"rename variable","epoch":1625098063,"epoch_utc":null},{"commit":"3d78692c59980e4d70361d3a9f74bacc3f21376e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 16:54:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 30 16:54:34 2021 -0700","stats":{"files_changed":11,"insertions":150,"deletions":1,"files":["tests/fixtures/centos-7.7/sfdisk-d-multi.json","tests/fixtures/centos-7.7/sfdisk-d-multi.out","tests/fixtures/centos-7.7/sfdisk-d.json","tests/fixtures/centos-7.7/sfdisk-d.out","tests/fixtures/centos-7.7/sfdisk-l-multi.json","tests/fixtures/centos-7.7/sfdisk-l-multi.out","tests/fixtures/centos-7.7/sfdisk-l.json","tests/fixtures/centos-7.7/sfdisk-luB.json","tests/fixtures/centos-7.7/sfdisk-luM.json","tests/fixtures/centos-7.7/sfdisk-luS.json","tests/test_sfdisk.py"]},"message":"add sfdisk tests","epoch":1625097274,"epoch_utc":null},{"commit":"5321a15dcf13cf14efe578d0f66b651078c3d8a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 14:30:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 30 14:30:35 2021 -0700","stats":{"files_changed":4,"insertions":8,"deletions":8,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"]},"message":"update examples","epoch":1625088635,"epoch_utc":null},{"commit":"a452f8252a593f7914ebece53af9d73f4fd11a19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 14:27:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 30 14:27:12 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"]},"message":"fix integer conversion","epoch":1625088432,"epoch_utc":null},{"commit":"49267f09ac01fead3b20b2d481bb5e0d07af1439","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 14:06:15 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 30 14:06:15 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/sfdisk.py"]},"message":"change to root prompt in examples","epoch":1625087175,"epoch_utc":null},{"commit":"db47f35783e46a8299533c22146d851509f6ceb2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 12:38:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 30 12:38:36 2021 -0700","stats":{"files_changed":15,"insertions":610,"deletions":3,"files":["CHANGELOG","README.md","docs/parsers/sfdisk.md","jc/__init__.py","jc/cli.py","jc/man/jc.1.gz","jc/parsers/sfdisk.py","jc/utils.py","man/jc.1.gz","setup.py","tests/fixtures/centos-7.7/sfdisk-d.out","tests/fixtures/centos-7.7/sfdisk-l.out","tests/fixtures/centos-7.7/sfdisk-luB.out","tests/fixtures/centos-7.7/sfdisk-luM.out","tests/fixtures/centos-7.7/sfdisk-luS.out"]},"message":"add working sfdisk parser","epoch":1625081916,"epoch_utc":null},{"commit":"d48abf312c1f55ab31aa11da2b6cf6bc8166733b","merge":"ff7ab0a 3b22ce4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 10:10:59 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Jun 30 10:10:59 2021 -0700","message":"Merge pull request #147 from kellyjonbrazil/master\n\nsync to dev","epoch":1625073059,"epoch_utc":null},{"commit":"3b22ce41105387e7f46a410460cf04759feef197","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 28 08:04:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jun 28 08:04:46 2021 -0700","stats":{"files_changed":6,"insertions":6,"deletions":3,"files":["CHANGELOG","jc/__init__.py","jc/cli.py","jc/man/jc.1.gz","man/jc.1.gz","setup.py"]},"message":"fix local plugin parser issue where parser has .py in the name but it is not at the end","epoch":1624892686,"epoch_utc":null},{"commit":"c521ca5bc9e2b035cfef6ff65f6b303b3ec44296","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 11 11:41:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jun 11 11:41:16 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"change possible to available","epoch":1623436876,"epoch_utc":null},{"commit":"3ddc1c665990e1e732314330db214a81ab810fe9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 11 11:39:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jun 11 11:39:38 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"add jello","epoch":1623436778,"epoch_utc":null},{"commit":"a8e19402b7d1f9f06bc40b81a15dec401154180c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 9 08:33:48 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 9 08:33:48 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["ADVANCED_USAGE.md"]},"message":"remove temporary fix","epoch":1623252828,"epoch_utc":null},{"commit":"0927902b30654274743ab9092e90e768709a9937","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 8 16:51:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jun 8 16:51:03 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["ADVANCED_USAGE.md"]},"message":"temp fix for wrong url","epoch":1623196263,"epoch_utc":null},{"commit":"572548b42fb6ed9d32a392503d44fac1a8f146d3","merge":"95aec9c ff7ab0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 27 17:00:54 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu May 27 17:00:54 2021 -0700","message":"Merge pull request #141 from kellyjonbrazil/dev\n\nDev v1.15.5","epoch":1622160054,"epoch_utc":null},{"commit":"ff7ab0a1ed7f468d0e84eb3bf0636f53913c490d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 27 16:58:14 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 27 16:58:14 2021 -0700","stats":{"files_changed":3,"insertions":0,"deletions":1,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc updates for v1.15.5","epoch":1622159894,"epoch_utc":null},{"commit":"5db71b05cb28691bbbaa5d668bcd4a4ac7e68b85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 25 09:47:24 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 25 09:47:24 2021 -0700","stats":{"files_changed":5,"insertions":3,"deletions":3,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template","templates/readme_template"]},"message":"add en_US.UTF-8 to LANG info","epoch":1621961244,"epoch_utc":null},{"commit":"f9b952885aa7f2b450786a08c3879d9e358886da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 21 10:21:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 21 10:21:21 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add python 3.9.5 packaged info","epoch":1621617681,"epoch_utc":null},{"commit":"e7983bc0b29abaca2147038dfad018cba1e67cdf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 21 10:16:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 21 10:16:19 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xml.md","docs/parsers/yaml.md"]},"message":"version bump","epoch":1621617379,"epoch_utc":null},{"commit":"473a6431425fc24a4cc83939ff592e0d49535b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 21 10:16:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 21 10:16:08 2021 -0700","stats":{"files_changed":4,"insertions":10,"deletions":3,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"]},"message":"add windows msi info","epoch":1621617368,"epoch_utc":null},{"commit":"14f3d442cb86250b8f2cdfd7977938634b8abd6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 21 09:46:51 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 21 09:46:51 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"formatting","epoch":1621615611,"epoch_utc":null},{"commit":"d6f4ed9ab55fe9b7c2766fb437172af62a1d5c87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 21 09:46:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 21 09:46:34 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/test_utils.py"]},"message":"add long-form UTC test","epoch":1621615594,"epoch_utc":null},{"commit":"1b8d654444ff8c8b8171c7ac63e2736447a36c09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 20 15:49:18 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 20 15:49:18 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add error message info","epoch":1621550958,"epoch_utc":null},{"commit":"6002af0dca334c0affaff3e9acdca416238c7d82","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 20 15:46:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 20 15:46:31 2021 -0700","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/cli.py"]},"message":"add more error message detail to the user for ParseError and LibraryNotFound exceptions","epoch":1621550791,"epoch_utc":null},{"commit":"0924d822a30c8806f65574c010561cd6f7c8e181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 20 15:36:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 20 15:36:27 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":1,"files":["templates/readme_template"]},"message":"add windows example","epoch":1621550187,"epoch_utc":null},{"commit":"72a37b928924c3edde3a4edb952f98c94aa05f0b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 19 16:23:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 19 16:23:34 2021 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"]},"message":"version bump","epoch":1621466614,"epoch_utc":null},{"commit":"5eef7bd769f8ffb03ba396833d1b33484041a99f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 19 16:14:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 19 16:14:26 2021 -0700","stats":{"files_changed":2,"insertions":16,"deletions":16,"files":["jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"use LibraryNotInstalled exception instead of exiting via sys.exit","epoch":1621466066,"epoch_utc":null},{"commit":"c6893e1bd5283d982a7ecd6f84bdfdd0054ce7a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 19 16:13:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 19 16:13:05 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/exceptions.py"]},"message":"add LibraryNotInstalled exception","epoch":1621465985,"epoch_utc":null},{"commit":"039f6612e491c6f821c001252e122e9b0a781104","merge":"9c57c09 95aec9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 18 10:29:02 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue May 18 10:29:02 2021 -0700","message":"Merge pull request #139 from kellyjonbrazil/master\n\nsync branches","epoch":1621358942,"epoch_utc":null},{"commit":"95aec9c6f9aa8fb4d0dae227410a1346d550f47f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 18 10:27:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 18 10:27:36 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["templates/manpage_template"]},"message":"add info about Magic syntax not supporting shell builtins","epoch":1621358856,"epoch_utc":null},{"commit":"4e9652a8ec2482a64dc029b0ce0e1047a3e49867","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 17 14:36:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 17 14:36:20 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"spelling","epoch":1621287380,"epoch_utc":null},{"commit":"773b7f4b1f23e04c90e602aab05bc1a7e5aae37b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 17 08:38:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 17 08:38:09 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add space before exit code table","epoch":1621265889,"epoch_utc":null},{"commit":"d17ffde9cdc35392ae25d8e9de5328e46067df2a","merge":"efb1d3e 9c57c09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 17 08:35:13 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon May 17 08:35:13 2021 -0700","message":"Merge pull request #138 from kellyjonbrazil/dev\n\nDev v1.15.4","epoch":1621265713,"epoch_utc":null},{"commit":"9c57c09c00e64a9031391b9b70083ad6ecf0bc0b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 17 08:24:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 17 08:24:31 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc update for release","epoch":1621265071,"epoch_utc":null},{"commit":"4d730a9de5a0d7c064a9a59e3add86e58d9ec492","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 20:57:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 20:57:17 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add UTC fix","epoch":1621223837,"epoch_utc":null},{"commit":"fc57bcfce24af23f077d6a73f1db4591d8f99c13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 20:51:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 20:51:39 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"]},"message":"fix for when UTC is referenced as \"Coordinated Universal Time\"","epoch":1621223499,"epoch_utc":null},{"commit":"fa5571486c3c19bb7e836f043545ea4f2509ed4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 20:33:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 20:33:03 2021 -0700","stats":{"files_changed":1,"insertions":10,"deletions":10,"files":["jc/cli.py"]},"message":"simplify json_out function","epoch":1621222383,"epoch_utc":null},{"commit":"9996c4fe23564dfb52e3c7dbdbd8bd67edfb1e95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:55:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 19:55:53 2021 -0700","stats":{"files_changed":7,"insertions":10,"deletions":10,"files":["EXAMPLES.md","docs/parsers/history.md","docs/parsers/jobs.md","jc/man/jc.1.gz","jc/parsers/history.py","jc/parsers/jobs.py","man/jc.1.gz"]},"message":"update docs for shell builtins","epoch":1621220153,"epoch_utc":null},{"commit":"038d4290248e6bb94762bb51f69e9958f7c1fecb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:44:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 19:44:10 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":6,"files":["docs/parsers/dig.md","docs/parsers/dir.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc updates","epoch":1621219450,"epoch_utc":null},{"commit":"9bf6facb0d7d76583802309253e7d13ba5148997","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:43:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 19:43:10 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":6,"files":["jc/parsers/dir.py"]},"message":"remove magic command capability since dir is a shell builtin","epoch":1621219390,"epoch_utc":null},{"commit":"965717886e4ebaa6a4a494f189d9fdd01e33eb21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:30:00 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 19:30:00 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add exceptions module info","epoch":1621218600,"epoch_utc":null},{"commit":"e9bfc3dd29f914fd91e937f06d7f59c0f91b8449","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:21:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 19:21:37 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["CHANGELOG"]},"message":"add time format, dig compatibility, windows colors fix","epoch":1621218097,"epoch_utc":null},{"commit":"f46b33eacf070b4dc72c8d8a66aae49abd149e5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:20:13 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 19:20:13 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/utils.py","tests/test_utils.py"]},"message":"add windows time format","epoch":1621218013,"epoch_utc":null},{"commit":"f475fe44df2fb2661c5bce4d1e602a4bba7e87c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:09:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 19:09:53 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"]},"message":"add new time format for systeminfo","epoch":1621217393,"epoch_utc":null},{"commit":"5fdbe2962d84dad89de23f103d97b76b90450206","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 17:48:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 17:48:56 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dig.py"]},"message":"make dig compatible with all platforms","epoch":1621212536,"epoch_utc":null},{"commit":"ab291b9eef6ed5c8ab59b5652f676178941d5ce5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 17:48:40 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 17:48:40 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"only force enable colors when running on windows","epoch":1621212520,"epoch_utc":null},{"commit":"fd411fd77273cb7cf872c03ed6a258ccdee4d261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 17:43:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 17:43:05 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"]},"message":"attempt to get colors working on windows","epoch":1621212185,"epoch_utc":null},{"commit":"b1e95a60a2461dc401ffc299ef6338b65ef12691","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 13 08:42:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 13 08:42:27 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/cli.py"]},"message":"remove unnecessary comment","epoch":1620920547,"epoch_utc":null},{"commit":"bb1439f0d53e87f636fba05fbd30c3c79fb16002","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 13 08:20:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 13 08:20:58 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["jc/parsers/uname.py"]},"message":"use ParseError exception from jc.exceptions module","epoch":1620919258,"epoch_utc":null},{"commit":"ba963d98a0a2b3a0dfca6b211096d802253da5fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 13 08:20:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 13 08:20:35 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/exceptions.py"]},"message":"add exceptions module including ParseError","epoch":1620919235,"epoch_utc":null},{"commit":"83440ccb55d0db15b112b8b7d7352493ff516112","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 13 08:02:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 13 08:02:38 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"error message capitalization","epoch":1620918158,"epoch_utc":null},{"commit":"796f61bfa417afdc6ab48fddbb5502cd0659b840","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 17:01:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 12 17:01:09 2021 -0700","stats":{"files_changed":1,"insertions":10,"deletions":3,"files":["jc/cli.py"]},"message":"handle case where the user pipes data and uses magic syntax simultaneously","epoch":1620864069,"epoch_utc":null},{"commit":"070cac4ae12282458a1e1fc8618ebc473d23cacf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 15:36:06 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 12 15:36:06 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/cli.py"]},"message":"remove commented line","epoch":1620858966,"epoch_utc":null},{"commit":"3ed84f9f42e4e883ddaac28ab49d675600b49424","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 15:19:11 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 12 15:19:11 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/cli.py"]},"message":"reorganize main function. remove pass condition.","epoch":1620857951,"epoch_utc":null},{"commit":"a205afb6f355edbb4b98200a980b9601ed0f0658","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 13:44:15 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 12 13:44:15 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"set run_command_str if run_command is set","epoch":1620852255,"epoch_utc":null},{"commit":"a6d983dd8f3871cbc2391c313340167829a575d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 13:38:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 12 13:38:08 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"move run_command_str variable","epoch":1620851888,"epoch_utc":null},{"commit":"b6c8d6d01d740827273265dbb0cfbaf7875ac7f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 13:18:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 12 13:18:58 2021 -0700","stats":{"files_changed":1,"insertions":45,"deletions":17,"files":["jc/cli.py"]},"message":"add exception handling for filenotfound or other subprocess.popen and json.dumps exceptions","epoch":1620850738,"epoch_utc":null},{"commit":"b5a5d5b133f1c0df8023776e59697b7579f8c18a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 11:36:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 12 11:36:27 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"set parser_name for magic syntax use","epoch":1620844587,"epoch_utc":null},{"commit":"da528e7814b0cf25a359c3556d0e286e7bf004b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 09:40:22 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 12 09:40:22 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"]},"message":"move separators to a variable","epoch":1620837622,"epoch_utc":null},{"commit":"4acebf4f621ac564f82e3a97e6810fbb08a9dbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 08:48:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 12 08:48:49 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/cli.py"]},"message":"move variables","epoch":1620834529,"epoch_utc":null},{"commit":"4d40808d2b70b7543eadcfd2d35c16ebe91f2f9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 08:27:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 12 08:27:39 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/cli.py"]},"message":"update comments","epoch":1620833259,"epoch_utc":null},{"commit":"c543f00bd3c737f73144bb2980d12793042459b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 14:30:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 11 14:30:46 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["jc/cli.py"]},"message":"simplify piped_output function","epoch":1620768646,"epoch_utc":null},{"commit":"947cf41dfab5811c0e76e371231c59a2d6372752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 12:42:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 11 12:42:21 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add exit code info","epoch":1620762141,"epoch_utc":null},{"commit":"8d8c58742e5106c3387a627cd1b1323a76cc9623","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 11:32:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 11 11:32:08 2021 -0700","stats":{"files_changed":5,"insertions":21,"deletions":15,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template","templates/readme_template"]},"message":"formatting","epoch":1620757928,"epoch_utc":null},{"commit":"995ecc9bfb0425b0ee9e4250395b0200b46c1e89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 11:11:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 11 11:11:17 2021 -0700","stats":{"files_changed":3,"insertions":15,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template"]},"message":"add exit codes section","epoch":1620756677,"epoch_utc":null},{"commit":"21a15225ebff645439b12d6249dc3e28d7bc09ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 10:59:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 11 10:59:26 2021 -0700","stats":{"files_changed":2,"insertions":18,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add exit codes section","epoch":1620755966,"epoch_utc":null},{"commit":"48921d4584068fadb0f776ed7e81c21d89172e2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 10:50:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 11 10:50:35 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"]},"message":"ensure exit code never exceeds 255","epoch":1620755435,"epoch_utc":null},{"commit":"342db45edc94ab1c3b3ae70e7cf4ca4076e2c7eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 10:36:55 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 11 10:36:55 2021 -0700","stats":{"files_changed":1,"insertions":18,"deletions":10,"files":["jc/cli.py"]},"message":"fix combined exit codes","epoch":1620754615,"epoch_utc":null},{"commit":"5f88ecf8443bc6e9a7cda5bc60858f37cc09f4f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 21:23:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 21:23:23 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/cli.py"]},"message":"add comments to magic_parser return","epoch":1620707003,"epoch_utc":null},{"commit":"a56aebfe7024914d2c602278964b99d1443de335","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 21:09:00 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 21:09:00 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/cli.py"]},"message":"remove side-effect comment since it is no longer relevant","epoch":1620706140,"epoch_utc":null},{"commit":"422bb744a82472546d62c72ba05eaa1d18d5068a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 21:03:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 21:03:30 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]},"message":"update man pages","epoch":1620705810,"epoch_utc":null},{"commit":"c3b814a15f571ac84a8ce0719d7fd88acf814caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 21:02:28 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 21:02:28 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":4,"files":["jc/cli.py"]},"message":"move imports to the top","epoch":1620705748,"epoch_utc":null},{"commit":"e4574047a0ef6fcd4a47142421a1d05795c7925a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 20:49:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 20:49:44 2021 -0700","stats":{"files_changed":1,"insertions":21,"deletions":21,"files":["tests/test_cli.py"]},"message":"update tests for magic_parser function","epoch":1620704984,"epoch_utc":null},{"commit":"0d7d7951f82627d1fb1e20d1398bd7f88c5ce1be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 18:58:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 18:58:45 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/cli.py"]},"message":"don't reset sys.argv anymore. check for 'valid_command' instead","epoch":1620698325,"epoch_utc":null},{"commit":"da904e4770a20ae85fc67476ae4a529564d0a3ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 18:50:59 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 18:50:59 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"remove final \\n from stderr string when printing","epoch":1620697859,"epoch_utc":null},{"commit":"19b540041add64fe6650c3634ec869421ffbc769","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 18:31:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 18:31:30 2021 -0700","stats":{"files_changed":1,"insertions":82,"deletions":51,"files":["jc/cli.py"]},"message":"proof of concept for passing command exit codes when using magic syntax. Needs more testing","epoch":1620696690,"epoch_utc":null},{"commit":"f2ffb93eeaf4c8b5aa93f3e8808bdc044582e8a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 10:43:40 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 10:43:40 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":10,"files":["tests/test_ping.py"]},"message":"formatting","epoch":1620668620,"epoch_utc":null},{"commit":"c0c0e05642e0f473cde34178d815978fff8fe1ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 10:40:13 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 10:40:13 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add dig `+noall +answer` support","epoch":1620668413,"epoch_utc":null},{"commit":"966978f17e40a338f982628825f30a19d4b84e4c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 10:39:51 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 10:39:51 2021 -0700","stats":{"files_changed":5,"insertions":72,"deletions":0,"files":[".../centos-7.7/ping6-ip-O-p-unparsable.json",".../centos-7.7/ping6-ip-O-p-unparsable.out",".../fixtures/osx-10.14.6/ping6-ip-unparsable.json","tests/fixtures/osx-10.14.6/ping6-ip-unparsable.out","tests/test_ping.py"]},"message":"add more unparsable line ping tests","epoch":1620668391,"epoch_utc":null},{"commit":"8ab08a5231e082940a62fcde4be218b7ba94be31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 10:13:52 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 10:13:52 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"doc update","epoch":1620666832,"epoch_utc":null},{"commit":"48e534fa03b92b2583c5c6269c76651f3aa420cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 7 16:55:18 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 7 16:55:18 2021 -0700","stats":{"files_changed":3,"insertions":17,"deletions":2,"files":["tests/fixtures/osx-10.14.6/dig-noall-answer.json","tests/fixtures/osx-10.14.6/dig-noall-answer.out","tests/test_dig.py"]},"message":"add +noall +answer test","epoch":1620431718,"epoch_utc":null},{"commit":"61851c1bd02aa82d5d82e68595e45630ead13d34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 7 16:42:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 7 16:42:09 2021 -0700","stats":{"files_changed":2,"insertions":85,"deletions":3,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"add support for +noall +answer","epoch":1620430929,"epoch_utc":null},{"commit":"3c51b2d83d301b4072bbb12fdba4f60b900573da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 7 13:50:28 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 7 13:50:28 2021 -0700","stats":{"files_changed":3,"insertions":40,"deletions":0,"files":[".../centos-7.7/ping-ip-O-unparsedlines.json",".../centos-7.7/ping-ip-O-unparsedlines.out","tests/test_ping.py"]},"message":"add tests for unparsable lines on linux","epoch":1620420628,"epoch_utc":null},{"commit":"ee3a28528e152c61f05bdf71f264fe38274b4190","merge":"fe1f101 916bcda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 10:03:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 5 10:03:58 2021 -0700","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev\n\n# Conflicts:\n# templates/readme_template","epoch":1620234238,"epoch_utc":null},{"commit":"916bcdae3881fc9c9f9a91c8c901a714cff3e1da","merge":"fb14f54 efb1d3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 10:02:25 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed May 5 10:02:25 2021 -0700","message":"Merge pull request #136 from kellyjonbrazil/master\n\nmerge changes from master","epoch":1620234145,"epoch_utc":null},{"commit":"efb1d3e6b2db920423511a9dcf4c5e5fd9d6af43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 09:23:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 5 09:23:21 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"add blog title and minor formatting","epoch":1620231801,"epoch_utc":null},{"commit":"4e6ae66bacc014e49c4a9229d10dcc8e95de436c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 09:20:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 5 09:20:47 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1620231647,"epoch_utc":null},{"commit":"5ee88e7b679bc163a1916d560be6ff29f51699e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 09:18:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 5 09:18:45 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["README.md"]},"message":"add use cases section","epoch":1620231525,"epoch_utc":null},{"commit":"c3b68903cbd898f80438af342195eec7575aafd3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 09:17:11 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 5 09:17:11 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["templates/readme_template"]},"message":"add use cases section","epoch":1620231431,"epoch_utc":null},{"commit":"fe1f1013a74bdf6b4284f11dd59db8ea17e5e5d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 09:16:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 5 09:16:05 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["templates/readme_template"]},"message":"add use cases section","epoch":1620231365,"epoch_utc":null},{"commit":"fb14f5439f00d5eaf08651c552189fd4be7358d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 08:03:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 5 08:03:27 2021 -0700","stats":{"files_changed":4,"insertions":52,"deletions":3,"files":["jc/parsers/ping.py",".../osx-10.14.6/ping-ip-unknown-errors.json",".../osx-10.14.6/ping-ip-unknown-errors.out","tests/test_ping.py"]},"message":"fix and tests for unknown or unparsable errors","epoch":1620227007,"epoch_utc":null},{"commit":"5ca0fc364eb22d583bee5633cdd7183c1d70bb6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 4 19:05:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 4 19:05:20 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/parsers/ping.md"]},"message":"add unparsed_line to docs","epoch":1620180320,"epoch_utc":null},{"commit":"a1fe7037e5267ec4aced719eff3715085eb35bca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 4 19:04:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 4 19:04:16 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["jc/parsers/ping.py"]},"message":"add unparsed_line field if line cannot be parsed","epoch":1620180256,"epoch_utc":null},{"commit":"c2af7d113ed8e8cf9af985c969cf29858a3c26a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 4 15:35:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 4 15:35:47 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["CHANGELOG","docs/parsers/ping.md"]},"message":"add ping updates","epoch":1620167747,"epoch_utc":null},{"commit":"ff034e401d5c33efbc3c4bc2f0e386d81eaae7fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 4 15:34:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 4 15:34:45 2021 -0700","stats":{"files_changed":1,"insertions":59,"deletions":43,"files":["jc/parsers/ping.py"]},"message":"use try/except to make parser more resilient against unknown error types","epoch":1620167685,"epoch_utc":null},{"commit":"5abe095beb4b668e5f55fe8c9588677547e4c2a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 3 15:26:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 3 15:26:16 2021 -0700","stats":{"files_changed":1,"insertions":14,"deletions":3,"files":["docs/parsers/ping.md"]},"message":"update ping docs","epoch":1620080776,"epoch_utc":null},{"commit":"33de5f01e638953c83bb0960dc3550ca4547849b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 3 15:16:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 3 15:16:47 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["jc/__init__.py","setup.py"]},"message":"version bump","epoch":1620080207,"epoch_utc":null},{"commit":"8ce155d843806be4ad23491b4401e4eda02e2a1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 3 15:16:33 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 3 15:16:33 2021 -0700","stats":{"files_changed":5,"insertions":86,"deletions":23,"files":["CHANGELOG","jc/parsers/ping.py",".../fixtures/osx-10.14.6/ping-ip-unreachable.json","tests/fixtures/osx-10.14.6/ping-ip-unreachable.out","tests/test_ping.py"]},"message":"add support for error replies in v4 ping on osx and bsd","epoch":1620080193,"epoch_utc":null},{"commit":"b921d5ec9583c8f8e992613ae2eaf62165722054","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 30 16:53:52 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 30 16:53:52 2021 -0700","stats":{"files_changed":1,"insertions":105,"deletions":6,"files":["jc/parsers/ping.py"]},"message":"initial support for error replies in bsd/osx","epoch":1619826832,"epoch_utc":null},{"commit":"e21542aaa2aa5f2f287ddc227df41ae47d761332","merge":"d24f9a8 6150aae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 30 10:31:55 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Apr 30 10:31:55 2021 -0700","message":"Merge pull request #135 from kellyjonbrazil/dev\n\nDev clarify packaged binaries in readme","epoch":1619803915,"epoch_utc":null},{"commit":"6150aae0aeabafba26d9f119406b0660d9221cb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 30 10:31:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 30 10:31:02 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"clarify packaged binaries","epoch":1619803862,"epoch_utc":null},{"commit":"f27b35f37104ad2012c3bddde0bd94941af06894","merge":"bd428a9 d24f9a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 15:28:35 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Apr 28 15:28:35 2021 -0700","message":"Merge pull request #131 from kellyjonbrazil/master\n\nsync branches","epoch":1619648915,"epoch_utc":null},{"commit":"d24f9a885d3954035a98a488671486408f509dca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 15:26:52 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 28 15:26:52 2021 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["CONTRIBUTING.md","README.md","templates/readme_template"]},"message":"fix contributing link","epoch":1619648812,"epoch_utc":null},{"commit":"48dd82c8d1b756c4e08d49b8234b8060080dc035","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 15:15:41 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 28 15:15:41 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"trigger page build on github pages","epoch":1619648141,"epoch_utc":null},{"commit":"e57167ad1f240de6ec5fc86c51cfb780535cd783","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 12:23:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 28 12:23:31 2021 -0700","message":"empty commit","epoch":1619637811,"epoch_utc":null},{"commit":"ada91376426ff359c495fb31081404a2cce72b5f","merge":"0c209db bd428a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 11:53:15 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Apr 28 11:53:15 2021 -0700","message":"Merge pull request #130 from kellyjonbrazil/dev\n\nDev link updates","epoch":1619635995,"epoch_utc":null},{"commit":"bd428a9fd75327710dce96f3c95f74ab9d1beaad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 11:52:24 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 28 11:52:24 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"fix link","epoch":1619635944,"epoch_utc":null},{"commit":"934941332f91d9e2cc4e691b154bb5427166ed30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 11:50:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 28 11:50:10 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","templates/readme_template"]},"message":"minor link updates","epoch":1619635810,"epoch_utc":null},{"commit":"0c209dbd108638f89a43801126a332379be9ae8b","merge":"92e2252 56e041a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 11:36:05 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Apr 28 11:36:05 2021 -0700","message":"Merge pull request #129 from kellyjonbrazil/dev\n\nDev update readme","epoch":1619634965,"epoch_utc":null},{"commit":"56e041aa260b2daf2f5662fae98645a93137adb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 11:34:51 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 28 11:34:51 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add Practical JSON at the Command Line blog link","epoch":1619634891,"epoch_utc":null},{"commit":"cf9d48582e4e5df6c8498b916a2f9cf036869f3d","merge":"35464bb 92e2252","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 13:17:20 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Apr 26 13:17:20 2021 -0700","message":"Merge pull request #128 from kellyjonbrazil/master\n\nsync branches","epoch":1619468240,"epoch_utc":null},{"commit":"92e2252bee00482bb0eeae3074b107d4c8553e4c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 12:18:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 26 12:18:21 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"fix typo","epoch":1619464701,"epoch_utc":null},{"commit":"fd7861db11e5aaa17c4e7bbce942c0c096116e30","merge":"fcc7e52 35464bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 12:12:02 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Apr 26 12:12:02 2021 -0700","message":"Merge pull request #127 from kellyjonbrazil/dev\n\nDev v1.15.3","epoch":1619464322,"epoch_utc":null},{"commit":"35464bbbfb6b424ef3ee1c855557ada1bf3769fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 12:08:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 26 12:08:10 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"date update","epoch":1619464090,"epoch_utc":null},{"commit":"db8ddd7f0e0c2a8bd3e545619e81d3d3972a4d7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 12:04:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 26 12:04:03 2021 -0700","stats":{"files_changed":5,"insertions":11,"deletions":17,"files":["jc/man/jc.1.gz","jc/parsers/ufw.py","man/jc.1.gz","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json"]},"message":"fix for scenarios where the default port range didn't always display, or overrode existing port ranges.","epoch":1619463843,"epoch_utc":null},{"commit":"72207c54ee5734e3d2d3d1a063c8daf1edaa8815","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 10:02:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 26 10:02:02 2021 -0700","stats":{"files_changed":3,"insertions":102,"deletions":94,"files":["docs/parsers/ufw_appinfo.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"update ufw app info docs to support multiple apps (ufw app info all)","epoch":1619456522,"epoch_utc":null},{"commit":"a683f68003ea64dd5e2c4f06b53a1561ad774f12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 10:00:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 26 10:00:44 2021 -0700","stats":{"files_changed":9,"insertions":285,"deletions":202,"files":["EXAMPLES.md","jc/parsers/ufw_appinfo.py","tests/fixtures/generic/ufw-appinfo-msn.json","tests/fixtures/generic/ufw-appinfo-test.json","tests/fixtures/generic/ufw-appinfo-test2.json","tests/fixtures/generic/ufw-appinfo-test3.json","tests/fixtures/ubuntu-18.04/ufw-appinfo-all.json","tests/fixtures/ubuntu-18.04/ufw-appinfo-all.out","tests/test_ufw_appinfo.py"]},"message":"change schema to a list of dictionaries to support `ufw app info all` use case","epoch":1619456444,"epoch_utc":null},{"commit":"8d2d3db3fa969456342181a226bf54a3f1613542","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 21:10:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 25 21:10:21 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":0,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"]},"message":"formatting","epoch":1619410221,"epoch_utc":null},{"commit":"eca785450d1c72687817d09259fa7cd33376fafc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 21:06:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 25 21:06:47 2021 -0700","stats":{"files_changed":5,"insertions":34,"deletions":13,"files":["CHANGELOG","README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"]},"message":"add caveats to readme and manpage","epoch":1619410007,"epoch_utc":null},{"commit":"5b40a97ce417687b4e37f320b8a3f07dd7fd169c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 20:55:43 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 25 20:55:43 2021 -0700","stats":{"files_changed":3,"insertions":13,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template"]},"message":"add caveats to man page","epoch":1619409343,"epoch_utc":null},{"commit":"66cb4e9bde81b9290c1addaf851de5d80a1b0702","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 20:49:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 25 20:49:35 2021 -0700","stats":{"files_changed":5,"insertions":216,"deletions":234,"files":["EXAMPLES.md","docs/parsers/ufw.md","jc/man/jc.1.gz","jc/parsers/ufw.py","man/jc.1.gz"]},"message":"update ufw parser docs","epoch":1619408975,"epoch_utc":null},{"commit":"d1f33645caccdb3a55576081c4d355f997ac033c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 20:40:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 25 20:40:38 2021 -0700","stats":{"files_changed":7,"insertions":26,"deletions":10,"files":["tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw-numbered2.json","tests/fixtures/generic/ufw.json","tests/fixtures/ubuntu-18.04/ufw-numbered.json","tests/fixtures/ubuntu-18.04/ufw-numbered.out","tests/fixtures/ubuntu-18.04/ufw-verbose.json","tests/fixtures/ubuntu-18.04/ufw-verbose.out"]},"message":"update ufw tests","epoch":1619408438,"epoch_utc":null},{"commit":"5eff65c326675a449afd05a2af0a6c9bcf7b5e23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 20:10:52 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 25 20:10:52 2021 -0700","stats":{"files_changed":1,"insertions":85,"deletions":268,"files":["jc/parsers/ufw.py"]},"message":"update schema to support port lists and port range lists. Also support other transports than tcp and udp","epoch":1619406652,"epoch_utc":null},{"commit":"929c38715d87bf9dd689507d319c22b90871ae1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 12:53:29 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 24 12:53:29 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"formatting","epoch":1619294009,"epoch_utc":null},{"commit":"8c91a7b7601a967cd9d8096433ffd4ad62b65ceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 12:52:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 24 12:52:26 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CONTRIBUTING.md"]},"message":"formatting","epoch":1619293946,"epoch_utc":null},{"commit":"14289ecd6c022ad204444dff5b5e48f6024a5d0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 12:50:40 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 24 12:50:40 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"more timezone info","epoch":1619293840,"epoch_utc":null},{"commit":"b833c44783eb32f2fad24ca205b5b7eab854750f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 12:47:24 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 24 12:47:24 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add ufw-appinfo parser","epoch":1619293644,"epoch_utc":null},{"commit":"e23aa818eaa6d1a389ddef7dd2ad8f62b9f6ff25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 12:47:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 24 12:47:12 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"add tests section and timezone info","epoch":1619293632,"epoch_utc":null},{"commit":"473d919c1350a8dc34d233033a5a7d12c928e42d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 10:58:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 24 10:58:31 2021 -0700","stats":{"files_changed":4,"insertions":32,"deletions":0,"files":["runtests.sh","tests/fixtures/generic/ufw-numbered2.json","tests/fixtures/generic/ufw-numbered2.out","tests/test_ufw.py"]},"message":"add another ufw test sample","epoch":1619287111,"epoch_utc":null},{"commit":"9f925d6ac989a4f21a8c00c84fcf97dfb141e8c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 10:22:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 24 10:22:37 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc update","epoch":1619284957,"epoch_utc":null},{"commit":"f6ca32b3a31f314fa0b31d9e8b5494491b928f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 10:22:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 24 10:22:19 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/ufw.md","jc/parsers/ufw.py"]},"message":"update ufw docs with a note on lists of ports","epoch":1619284939,"epoch_utc":null},{"commit":"4cbe84c3d6ac8a3b594feb525460f2a68f5d62b2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 16:15:04 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 23 16:15:04 2021 -0700","stats":{"files_changed":9,"insertions":110,"deletions":0,"files":["tests/fixtures/generic/ufw-appinfo-msn.json","tests/fixtures/generic/ufw-appinfo-msn.out","tests/fixtures/generic/ufw-appinfo-test.json","tests/fixtures/generic/ufw-appinfo-test.out","tests/fixtures/generic/ufw-appinfo-test2.json","tests/fixtures/generic/ufw-appinfo-test2.out","tests/fixtures/generic/ufw-appinfo-test3.json","tests/fixtures/generic/ufw-appinfo-test3.out","tests/test_ufw_appinfo.py"]},"message":"add ufw-appinfo tests","epoch":1619219704,"epoch_utc":null},{"commit":"ffac5bf9d381305daa86e546f8570be092e5ff34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 16:14:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 23 16:14:53 2021 -0700","stats":{"files_changed":3,"insertions":12,"deletions":12,"files":["docs/parsers/ufw.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc update","epoch":1619219693,"epoch_utc":null},{"commit":"9aa424f9f8c7e4e0dc29e2c58dac481098beba7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 16:14:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 23 16:14:39 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["EXAMPLES.md"]},"message":"fix ufw example","epoch":1619219679,"epoch_utc":null},{"commit":"0a8495c68e427e39bbda957dd933fa2a461092e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 16:14:25 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 23 16:14:25 2021 -0700","stats":{"files_changed":1,"insertions":12,"deletions":15,"files":["jc/parsers/ufw.py"]},"message":"update docs","epoch":1619219665,"epoch_utc":null},{"commit":"6aea066cf024f92adf4b94eebc7d51430c22332c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 16:14:11 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 23 16:14:11 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/ufw_appinfo.py"]},"message":"make normalized list appear only when data exists. set magic commands","epoch":1619219651,"epoch_utc":null},{"commit":"ff3c2d809ec3ea6e556c302909a228ee670578c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 09:57:41 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 23 09:57:41 2021 -0700","stats":{"files_changed":6,"insertions":176,"deletions":25,"files":["EXAMPLES.md","README.md","docs/parsers/ufw_appinfo.md","jc/man/jc.1.gz","jc/parsers/ufw_appinfo.py","man/jc.1.gz"]},"message":"add ufw-appinfo to docs","epoch":1619197061,"epoch_utc":null},{"commit":"145059fc8946b7026184139baea143c2869bc4e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 09:04:11 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 23 09:04:11 2021 -0700","stats":{"files_changed":1,"insertions":20,"deletions":8,"files":["jc/parsers/ufw_appinfo.py"]},"message":"clean up output if sections are blank","epoch":1619193851,"epoch_utc":null},{"commit":"20e5c19de448c1b979497817c887d8d2d6487839","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 08:30:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 23 08:30:34 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/ufw_appinfo.py"]},"message":"fix key error if tcp or udp don't exist","epoch":1619191834,"epoch_utc":null},{"commit":"4c98fd4b877c54e1cf7d285a29e178321be12f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 08:26:00 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 23 08:26:00 2021 -0700","stats":{"files_changed":2,"insertions":101,"deletions":1,"files":["docs/parsers/ufw_appinfo.md","jc/parsers/ufw_appinfo.py"]},"message":"doc update","epoch":1619191560,"epoch_utc":null},{"commit":"125e54213e8d4dcfe2e3271456af80b3f79c0544","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 08:13:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 23 08:13:53 2021 -0700","stats":{"files_changed":1,"insertions":105,"deletions":48,"files":["jc/parsers/ufw_appinfo.py"]},"message":"update schema and add normalized fields","epoch":1619190833,"epoch_utc":null},{"commit":"0152e0665f87833250561d743144af35416992f8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 22 16:52:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 22 16:52:01 2021 -0700","stats":{"files_changed":2,"insertions":215,"deletions":0,"files":["jc/cli.py","jc/parsers/ufw_appinfo.py"]},"message":"initial working ufw-appinfo parser","epoch":1619135521,"epoch_utc":null},{"commit":"0679bcbc560ea3575555d8546afdd4e2474d05d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 22 08:33:57 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 22 08:33:57 2021 -0700","stats":{"files_changed":5,"insertions":31,"deletions":5,"files":["tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json","tests/fixtures/ubuntu-18.04/ufw-numbered.json","tests/fixtures/ubuntu-18.04/ufw-verbose.json","tests/test_ufw.py"]},"message":"fix ufw tests","epoch":1619105637,"epoch_utc":null},{"commit":"5500648aa0886ea5089856e5b33d7c8ebd78d5b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 22 08:33:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 22 08:33:45 2021 -0700","stats":{"files_changed":3,"insertions":46,"deletions":46,"files":["EXAMPLES.md","docs/parsers/ufw.md","jc/parsers/ufw.py"]},"message":"fix ufw docs for int conversions and service behavior","epoch":1619105625,"epoch_utc":null},{"commit":"bb50caad4dfaefa309e747fd05b650186c5a80f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 22 08:16:42 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 22 08:16:42 2021 -0700","stats":{"files_changed":3,"insertions":31,"deletions":4,"files":["jc/parsers/ufw.py","tests/fixtures/ubuntu-18.04/ufw-numbered.out","tests/fixtures/ubuntu-18.04/ufw-verbose.out"]},"message":"fix prefix int conversions. don't reset _transport if service is really a list of ports","epoch":1619104602,"epoch_utc":null},{"commit":"7eef5d94d591a3f70f6638b1b30f952a3bf35f9d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 16:55:25 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 21 16:55:25 2021 -0700","stats":{"files_changed":3,"insertions":5,"deletions":0,"files":["EXAMPLES.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"ufw doc update","epoch":1619049325,"epoch_utc":null},{"commit":"74f623f8d607c050db8f62ea4996c4e6aae43268","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 16:55:14 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 21 16:55:14 2021 -0700","stats":{"files_changed":5,"insertions":43,"deletions":11,"files":["docs/parsers/ufw.md","jc/parsers/ufw.py","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json","tests/fixtures/generic/ufw.out"]},"message":"add support for rule comments and LIMIT and REJECT actions","epoch":1619049314,"epoch_utc":null},{"commit":"f638aca092475bbae14fed765e90435c093fcb8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 10:10:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 21 10:10:36 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add deb package name fix","epoch":1619025036,"epoch_utc":null},{"commit":"da35eaf80ad4f11e7482fc4734db4b2265e50548","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 09:10:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 21 09:10:10 2021 -0700","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["docs/parsers/ufw.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"formatting","epoch":1619021410,"epoch_utc":null},{"commit":"ade0e8e8fc18ff9a0dd406206a85238f1f5a739d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 09:09:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 21 09:09:23 2021 -0700","stats":{"files_changed":7,"insertions":107,"deletions":0,"files":["tests/fixtures/generic/ufw-inactive.json","tests/fixtures/generic/ufw-inactive.out","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw-numbered.out","tests/fixtures/generic/ufw.json","tests/fixtures/generic/ufw.out","tests/test_ufw.py"]},"message":"add ufw tests","epoch":1619021363,"epoch_utc":null},{"commit":"90076090f05a1f03e2fbff307418ee18d7d046ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 09:09:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 21 09:09:09 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":5,"files":["jc/parsers/ufw.py"]},"message":"fix int conversions if 'rules' key does not exist","epoch":1619021349,"epoch_utc":null},{"commit":"23635def8b654097178f73ed1b57fc50965142d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 07:51:32 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 21 07:51:32 2021 -0700","stats":{"files_changed":6,"insertions":306,"deletions":4,"files":["README.md","docs/parsers/ping.md","docs/parsers/ufw.md","docs/utils.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"add ufw to docs","epoch":1619016692,"epoch_utc":null},{"commit":"4eeec087bde98f90ab8425473d1fbeee6834852e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 07:49:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 21 07:49:49 2021 -0700","stats":{"files_changed":1,"insertions":115,"deletions":0,"files":["EXAMPLES.md"]},"message":"add ufw example","epoch":1619016589,"epoch_utc":null},{"commit":"733196103897a1d84d242324ddcf96e783320329","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 07:41:32 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 21 07:41:32 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/ufw.py"]},"message":"update docs with new examples that have `to_service` always existing.","epoch":1619016092,"epoch_utc":null},{"commit":"e4acb3d5b70a7d75741ef3e35cd6750d1362a80f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 07:08:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 21 07:08:50 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/ufw.py"]},"message":"always make to/from_service None if ports are assigned","epoch":1619014130,"epoch_utc":null},{"commit":"c60549a9947d5684bbfa58223bfbcfc40a3ed479","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 22:08:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 20 22:08:12 2021 -0700","stats":{"files_changed":1,"insertions":29,"deletions":29,"files":["jc/parsers/ufw.py"]},"message":"change field name from to/from_subnet to to/from_ip_prefix","epoch":1618981692,"epoch_utc":null},{"commit":"d46fc8bbfa15a80a1af6c64f70230f858c215223","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 21:58:52 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 20 21:58:52 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/parsers/ufw.py"]},"message":"set to/from_transport to None if to/from_service is set","epoch":1618981132,"epoch_utc":null},{"commit":"b133d1f90d49362594508d8c475663754f0e7675","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 21:52:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 20 21:52:39 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/ufw.py"]},"message":"strip interface value","epoch":1618980759,"epoch_utc":null},{"commit":"5be615a97e7c145c8351764234ac591028560c34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 21:45:13 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 20 21:45:13 2021 -0700","stats":{"files_changed":1,"insertions":219,"deletions":9,"files":["jc/parsers/ufw.py"]},"message":"add examples for docs","epoch":1618980313,"epoch_utc":null},{"commit":"ea1d820f96321ddf4084b54ee2fdf397295beb21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 21:29:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 20 21:29:49 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/parsers/ufw.py"]},"message":"convert integer fields","epoch":1618979389,"epoch_utc":null},{"commit":"47e262cf7200b02ff0af97a70ffa6bec286c8f39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 21:21:42 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 20 21:21:42 2021 -0700","stats":{"files_changed":1,"insertions":59,"deletions":14,"files":["jc/parsers/ufw.py"]},"message":"clean up fields","epoch":1618978902,"epoch_utc":null},{"commit":"eec673be9092e382694aa02682564510ce4e7f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 20:32:59 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 20 20:32:59 2021 -0700","stats":{"files_changed":1,"insertions":88,"deletions":3,"files":["jc/parsers/ufw.py"]},"message":"working raw parser","epoch":1618975979,"epoch_utc":null},{"commit":"9a0fb2a7c87e6fde0cc0d84fa8a1f131e28ea732","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 14:17:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 20 14:17:01 2021 -0700","stats":{"files_changed":1,"insertions":157,"deletions":0,"files":["jc/parsers/ufw.py"]},"message":"parse major sections","epoch":1618953421,"epoch_utc":null},{"commit":"b5145d6c14d7a51e7cfdebe126c9689dc90f7b27","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 13:39:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 20 13:39:12 2021 -0700","stats":{"files_changed":4,"insertions":8,"deletions":4,"files":["CHANGELOG","jc/__init__.py","jc/cli.py","setup.py"]},"message":"version bump to v1.15.3","epoch":1618951152,"epoch_utc":null},{"commit":"9747ca414dfb8218389c7b2199a080edabc2a184","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 10:50:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 20 10:50:20 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/utils.py"]},"message":"minor optimization to convert_to_int(). No longer runs through convert_to_float(), but uses standard float() function.","epoch":1618941020,"epoch_utc":null},{"commit":"312d465b61a15592cc70d3734ad747b9a2be10ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 19 14:18:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 19 14:18:12 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"]},"message":"update link","epoch":1618867092,"epoch_utc":null},{"commit":"7dcf87d24ad40eba6ba98de2b4b2bf177a76cd71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 19 13:12:55 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 19 13:12:55 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping.py"]},"message":"formatting","epoch":1618863175,"epoch_utc":null},{"commit":"cf3cfd16a9de05f30303b5952fbe609cde842d2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 19 09:59:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 19 09:59:58 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_utils.py"]},"message":"rename tests","epoch":1618851598,"epoch_utc":null},{"commit":"fcc7e5294973d1a18943fa2ce2e836b0fe757d95","merge":"6c83846 3ab9d48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 17:28:27 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Apr 18 17:28:27 2021 -0700","message":"Merge pull request #123 from kellyjonbrazil/dev\n\nDev v1.15.2","epoch":1618792107,"epoch_utc":null},{"commit":"3ab9d480149a692510ab9e0ac8e745b674683e3d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 17:24:42 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 18 17:24:42 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CHANGELOG"]},"message":"update changelog","epoch":1618791882,"epoch_utc":null},{"commit":"7eddf41c5f6310264359cd6d78bdfa4b65af7d06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 17:21:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 18 17:21:08 2021 -0700","stats":{"files_changed":11,"insertions":96,"deletions":9,"files":["jc/man/jc.1.gz","jc/utils.py","man/jc.1.gz","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/df.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/free-h.json","tests/test_utils.py"]},"message":"dont round up int conversions and fix tests","epoch":1618791668,"epoch_utc":null},{"commit":"27a196c93862bd737603cfe402b35529eb412954","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 16:42:42 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 18 16:42:42 2021 -0700","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc update","epoch":1618789362,"epoch_utc":null},{"commit":"e4324f05fb6f89c34fa1567e70d8636457623edb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 16:42:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 18 16:42:34 2021 -0700","stats":{"files_changed":2,"insertions":14,"deletions":14,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"fix indentation in doc","epoch":1618789354,"epoch_utc":null},{"commit":"d36b332bd78b5bf5979cdc59b31da08d8e4104d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 16:33:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 18 16:33:47 2021 -0700","stats":{"files_changed":53,"insertions":196,"deletions":274,"files":["docs/parsers/systemctl_lj.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/wc.md","docs/parsers/who.md","docs/utils.md","jc/parsers/acpi.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/hash.py","jc/parsers/hciconfig.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl_lj.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/utils.py"]},"message":"use jc.utils for conversions","epoch":1618788827,"epoch_utc":null},{"commit":"1f034826f69c461495f7a302cc8fe35e3052e72f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 13:01:25 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 18 13:01:25 2021 -0700","stats":{"files_changed":42,"insertions":94,"deletions":185,"files":["docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","tests/fixtures/centos-7.7/ls-alh.json","tests/fixtures/centos-7.7/lsof-sudo.json","tests/fixtures/centos-7.7/lsof.json","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/ubuntu-18.04/ls-alh.json","tests/fixtures/ubuntu-18.04/lsof-sudo.json","tests/fixtures/ubuntu-18.04/lsof.json"]},"message":"use jc.utils for conversions","epoch":1618776085,"epoch_utc":null},{"commit":"246c707c98d3128b4e38f5c4b23a1e0ceedc0b0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 11:46:42 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 18 11:46:42 2021 -0700","stats":{"files_changed":46,"insertions":190,"deletions":196,"files":["CHANGELOG","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/df.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/hash.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/utils.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/hash.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/utils.py","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/osx-10.11.6/df-h.json","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/free-h.json"]},"message":"use jc.utils conversions","epoch":1618771602,"epoch_utc":null},{"commit":"b5d8968144e76090870f8563dc1bce910fba668c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 17 17:22:59 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 17 17:22:59 2021 -0700","stats":{"files_changed":1,"insertions":19,"deletions":0,"files":["jc/utils.py"]},"message":"add convert_to_int function","epoch":1618705379,"epoch_utc":null},{"commit":"f7b9fbefdde6973077573fec02342eb9946789c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 17 17:22:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 17 17:22:44 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add query_size info for dig","epoch":1618705364,"epoch_utc":null},{"commit":"b1fc4533833ca25f59869bfec8ac114bf49c7847","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 17 17:22:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 17 17:22:30 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"]},"message":"fix _IfconfigParser name","epoch":1618705350,"epoch_utc":null},{"commit":"7581c8d0f4262fc6a05240bb21ffe533b153f6e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 17 17:07:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 17 17:07:20 2021 -0700","stats":{"files_changed":3,"insertions":45,"deletions":32,"files":["docs/parsers/dig.md","jc/parsers/dig.py","tests/fixtures/generic/dig-edns3.json"]},"message":"add query_size field. handle user-specified dig output better - especially when querying dnssec","epoch":1618704440,"epoch_utc":null},{"commit":"32bf8ad6f4fff83fdfd83d66c1ba8f1af5a65a90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 17 15:02:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 17 15:02:45 2021 -0700","stats":{"files_changed":4,"insertions":52,"deletions":24,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"update dig docs","epoch":1618696965,"epoch_utc":null},{"commit":"b083bcc10fa1105fc09ce8d2c3297aa5575c9d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:30:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 16 16:30:17 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]},"message":"update man page","epoch":1618615817,"epoch_utc":null},{"commit":"4f6fdd120d23468270c1d7111e4ef71b87759a1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:30:04 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 16 16:30:04 2021 -0700","stats":{"files_changed":2,"insertions":134,"deletions":100,"files":["docs/readme.md","jc/__init__.py"]},"message":"use dig as example","epoch":1618615804,"epoch_utc":null},{"commit":"eb0038be2490053d32803d30e1c3d4d34509d130","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:29:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 16 16:29:44 2021 -0700","stats":{"files_changed":1,"insertions":40,"deletions":19,"files":["EXAMPLES.md"]},"message":"update dig examples","epoch":1618615784,"epoch_utc":null},{"commit":"7ecdf819fa37c38ae6159ad8e7bc973ee4f34559","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:29:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 16 16:29:27 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":84,"files":["README.md","templates/readme_template"]},"message":"remove dig example from readme,","epoch":1618615767,"epoch_utc":null},{"commit":"c6aa4d083550d25bcb621cad524047cfd6a08217","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:19:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 16 16:19:20 2021 -0700","stats":{"files_changed":6,"insertions":252,"deletions":317,"files":["README.md","docs/parsers/dig.md","jc/man/jc.1.gz","jc/parsers/dig.py","man/jc.1.gz","templates/readme_template"]},"message":"update docs with new dig parser examples","epoch":1618615160,"epoch_utc":null},{"commit":"7c584b89a6e6b924d53d50103b97f0c2405c33b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:04:06 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 16 16:04:06 2021 -0700","stats":{"files_changed":15,"insertions":352,"deletions":52,"files":["jc/parsers/dig.py","tests/fixtures/generic/dig-additional.json","tests/fixtures/generic/dig-additional.out","tests/fixtures/generic/dig-additional2.json","tests/fixtures/generic/dig-additional2.out","tests/fixtures/generic/dig-additional3.json","tests/fixtures/generic/dig-additional3.out","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/generic/dig-edns.json","tests/fixtures/generic/dig-edns.out","tests/fixtures/generic/dig-edns2.json","tests/fixtures/generic/dig-edns2.out","tests/fixtures/generic/dig-edns3.json","tests/fixtures/generic/dig-edns3.out","tests/test_dig.py"]},"message":"add additional section","epoch":1618614246,"epoch_utc":null},{"commit":"c166c0bfdafa922f57f021fa4d16e467fca02d58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 15:22:22 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 16 15:22:22 2021 -0700","stats":{"files_changed":14,"insertions":55,"deletions":21,"files":["jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json"]},"message":"add opt_pseudosection section to output and fix existing tests","epoch":1618611742,"epoch_utc":null},{"commit":"a8dd3f7802bfe8fd3ffbedf89af45ddc580ee78d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 13:11:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 16 13:11:02 2021 -0700","stats":{"files_changed":5,"insertions":54,"deletions":281,"files":["CHANGELOG","jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-axfr.json"]},"message":"working dig axfr fixes","epoch":1618603862,"epoch_utc":null},{"commit":"3b0e2f03f3b11398ff57b1daed542faaf0b80a62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 08:46:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 16 08:46:20 2021 -0700","stats":{"files_changed":2,"insertions":24,"deletions":23,"files":["jc/cli.py","templates/manpage_template"]},"message":"clean up examples","epoch":1618587980,"epoch_utc":null},{"commit":"8390ae48c88ab1c7d5acbf40c0e60606953817bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 15 16:53:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 15 16:53:03 2021 -0700","stats":{"files_changed":7,"insertions":8,"deletions":8,"files":["jc/parsers/dig.py","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json"]},"message":"fix server entry when IPv6 address is in value (maxsplit on colons)","epoch":1618530783,"epoch_utc":null},{"commit":"2db82c0a7e19d596c876ede8a8ff106aaa733ee5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 20:43:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 14 20:43:58 2021 -0700","stats":{"files_changed":1,"insertions":66,"deletions":0,"files":["EXAMPLES.md"]},"message":"add systeminfo example","epoch":1618458238,"epoch_utc":null},{"commit":"61479540756704f10853233300ceae8f954a8a95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 20:39:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 14 20:39:35 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":0,"files":["tests/test_systeminfo.py","tests/test_utils.py"]},"message":"update tests","epoch":1618457975,"epoch_utc":null},{"commit":"691df271fcfe057ae4b75ad40869e23deb37b886","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 20:30:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 14 20:30:31 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":1,"files":["docs/parsers/systeminfo.md","jc/man/jc.1.gz","jc/parsers/systeminfo.py","man/jc.1.gz"]},"message":"add info docstring","epoch":1618457431,"epoch_utc":null},{"commit":"89f52b95f7055da9d7b5fa8dce0923d4c3435bd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 20:20:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 14 20:20:46 2021 -0700","stats":{"files_changed":13,"insertions":467,"deletions":821,"files":["README.md","docs/parsers/systeminfo.md","jc/man/jc.1.gz","jc/parsers/systeminfo.py","jc/utils.py","man/jc.1.gz",".../windows/windows-10/systeminfo-hyperv-utc.json",".../windows/windows-10/systeminfo-hyperv-utc.out",".../windows/windows-10/systeminfo-hyperv.json","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-10/systeminfo.out",".../windows/windows-2012r2/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"]},"message":"update systeminfo parser with updated timestamps, normalized blank fields, and new doc style","epoch":1618456846,"epoch_utc":null},{"commit":"146acc1bf69c402e38c2f1bc842b84e6cff7e2cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 16:46:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 14 16:46:16 2021 -0700","stats":{"files_changed":1,"insertions":23,"deletions":29,"files":["jc/parsers/systeminfo.py"]},"message":"rename functions to make them private","epoch":1618443976,"epoch_utc":null},{"commit":"c4a345f59aa090336b4e80f181493cd5bc2c17c5","merge":"dfd2703 325fab2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 16:39:44 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Apr 14 16:39:44 2021 -0700","message":"Merge pull request #106 from jon-rd/j/systeminfo\n\nAdd windows systeminfo command parser","epoch":1618443584,"epoch_utc":null},{"commit":"dfd2703f75b907ba865fff266d0742d8931bc2d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 16:39:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 14 16:39:05 2021 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"]},"message":"bump dev to v1.15.2","epoch":1618443545,"epoch_utc":null},{"commit":"325fab2de7b8a4bfc452ab8d3cf333d47fdf4989","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Wed Apr 14 11:52:13 2021 -0500","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","commit_by_date":"Wed Apr 14 11:52:13 2021 -0500","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/systeminfo.py"]},"message":"update documentation for parsed structures","epoch":1618426333,"epoch_utc":null},{"commit":"f3d00cf38ad15aeda7eaa5644ebc30ff33de6a29","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Wed Apr 14 09:06:14 2021 -0500","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","commit_by_date":"Wed Apr 14 11:38:50 2021 -0500","stats":{"files_changed":5,"insertions":56,"deletions":48,"files":["jc/parsers/systeminfo.py",".../windows/windows-10/systeminfo-hyperv.json","tests/fixtures/windows/windows-10/systeminfo.json",".../windows/windows-2012r2/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"]},"message":"append mb to memory key names; adjust expected timestamps to utc tz","epoch":1618416374,"epoch_utc":null},{"commit":"14838f7f5d780896f1318cac2c3f34d249a158d4","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Wed Apr 14 08:59:17 2021 -0500","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","commit_by_date":"Wed Apr 14 11:38:50 2021 -0500","stats":{"files_changed":9,"insertions":956,"deletions":116,"files":["jc/parsers/systeminfo.py","jc/utils.py",".../windows/windows-10/systeminfo-hyperv.json",".../windows/windows-10/systeminfo-hyperv.out","tests/fixtures/windows/windows-10/systeminfo.json",".../windows/windows-2012r2/systeminfo.json",".../fixtures/windows/windows-2012r2/systeminfo.out","tests/fixtures/windows/windows-7/systeminfo.json","tests/test_systeminfo.py"]},"message":"update schema with nic, hyperv, and process changes","epoch":1618415957,"epoch_utc":null},{"commit":"af74047b81776c2ea32d82f9145ab60c346c8203","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Mon Apr 5 09:32:04 2021 -0500","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","commit_by_date":"Wed Apr 14 11:38:50 2021 -0500","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/systeminfo.py"]},"message":"update schema based on processor/hotfix changes","epoch":1617640324,"epoch_utc":null},{"commit":"660c59129cf4ba7889fb3c6fbafd9dd9b479ccd9","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Mon Apr 5 09:29:42 2021 -0500","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","commit_by_date":"Wed Apr 14 11:38:50 2021 -0500","stats":{"files_changed":3,"insertions":41,"deletions":9,"files":["jc/parsers/systeminfo.py","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"]},"message":"Add parsing of processors/hotfixs","epoch":1617640182,"epoch_utc":null},{"commit":"89a88e186ed71d84ea802cf08ab756b49cee3225","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Thu Mar 25 16:58:54 2021 -0500","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","commit_by_date":"Wed Apr 14 11:38:50 2021 -0500","stats":{"files_changed":1,"insertions":152,"deletions":0,"files":["docs/parsers/systeminfo.md"]},"message":"Add systeminfo.md file","epoch":1616716734,"epoch_utc":null},{"commit":"f861cf95b96a224a0a11f2cdc3261b94c02415ef","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Thu Mar 25 16:18:14 2021 -0500","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","commit_by_date":"Wed Apr 14 11:38:50 2021 -0500","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["jc/cli.py","jc/parsers/systeminfo.py"]},"message":"Change to v0.5; add parser to cli.py; add to docgen","epoch":1616714294,"epoch_utc":null},{"commit":"ee8f06cbdb03f8254bb6a3c56fa5b8a64ff9ca77","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Wed Mar 24 14:13:22 2021 -0500","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","commit_by_date":"Wed Apr 14 11:38:49 2021 -0500","stats":{"files_changed":6,"insertions":688,"deletions":0,"files":["jc/parsers/systeminfo.py","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-10/systeminfo.out","tests/fixtures/windows/windows-7/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.out","tests/test_systeminfo.py"]},"message":"Add windows systeminfo command parser","epoch":1616620402,"epoch_utc":null},{"commit":"a2e8b3c7b681605916b8950d035ee19889a125a5","merge":"e0681ee 6c83846","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 16:40:43 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Apr 13 16:40:43 2021 -0700","message":"Merge pull request #121 from kellyjonbrazil/master\n\nMerge pull request #120 from kellyjonbrazil/dev","epoch":1618357243,"epoch_utc":null},{"commit":"6c838460752c7131f75cdab2da07266fee492060","merge":"10292f7 e0681ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:59:17 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Apr 13 14:59:17 2021 -0700","message":"Merge pull request #120 from kellyjonbrazil/dev\n\nDev v1.15.1","epoch":1618351157,"epoch_utc":null},{"commit":"e0681eebb9881dc0ffddb478224455f434919104","merge":"e5732d1 10292f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:57:44 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Apr 13 14:57:44 2021 -0700","message":"Merge branch 'master' into dev","epoch":1618351064,"epoch_utc":null},{"commit":"e5732d1cea1c882f6486cf288e45edb993989ea0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:54:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 13 14:54:38 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"update changelog","epoch":1618350878,"epoch_utc":null},{"commit":"6e7ae3cd3f003fe9e1e587b7f8ebd16ba0895014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:51:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 13 14:51:46 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/timedatectl.md","jc/man/jc.1.gz","jc/parsers/timedatectl.py","man/jc.1.gz"]},"message":"formatting of timedatectl docs","epoch":1618350706,"epoch_utc":null},{"commit":"f95632d1aaee545ae0ce081ca0617be135c09220","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:49:57 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 13 14:49:57 2021 -0700","stats":{"files_changed":7,"insertions":83,"deletions":62,"files":["EXAMPLES.md","docs/parsers/rpm_qi.md","jc/man/jc.1.gz","jc/parsers/rpm_qi.py","man/jc.1.gz","tests/fixtures/centos-7.7/rpm-qai.json","tests/fixtures/centos-7.7/rpm-qi-package.json"]},"message":"add install_date calculated fields","epoch":1618350597,"epoch_utc":null},{"commit":"2f8b7b26e59bcd745fa1fcadb373455c7d404286","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:35:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 13 14:35:17 2021 -0700","stats":{"files_changed":3,"insertions":1,"deletions":2,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"update docs for v1.15.1","epoch":1618349717,"epoch_utc":null},{"commit":"10292f7502e4cb1c53b53ed39fed9288044c2ef8","merge":"37a3565 aef5470","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:15:40 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Apr 12 13:15:40 2021 -0700","message":"Merge pull request #119 from kellyjonbrazil/dpkg_l-fix\n\nadd _l to module name","epoch":1618258540,"epoch_utc":null},{"commit":"aef54705f5267c633e0778e8dce0065978083139","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:15:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 12 13:15:12 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["docs/parsers/dpkg_l.md"]},"message":"add _l to module name","epoch":1618258512,"epoch_utc":null},{"commit":"bba5980fa53767716bc35d8c904e7a2341346eeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:13:18 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 12 13:13:18 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]},"message":"man page update","epoch":1618258398,"epoch_utc":null},{"commit":"977425abfb05a63ee372df36124ac6ba6a5a0aaa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:12:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 12 13:12:08 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"]},"message":"add _l to package name in docs","epoch":1618258328,"epoch_utc":null},{"commit":"37a3565a1bbd3d01663602673fed651509e69d8c","merge":"bdcdaee 13deb8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:06:30 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Apr 12 13:06:30 2021 -0700","message":"Merge pull request #118 from kellyjonbrazil/rpm-qi-doc-fix\n\nfix rpm-qi docs","epoch":1618257990,"epoch_utc":null},{"commit":"13deb8bfb6e77aaf86942f0be87b59d06ee2a97c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:05:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 12 13:05:34 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":194,"files":["docs/parsers/rpm_qai.md","docs/parsers/rpm_qi.md"]},"message":"fix rpm-qi docs","epoch":1618257934,"epoch_utc":null},{"commit":"a3ed9d075aff41599452c3094f7d057c25fc8f89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:04:22 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 12 13:04:22 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":191,"files":["docs/parsers/rpm_qai.md"]},"message":"remove old parser doc","epoch":1618257862,"epoch_utc":null},{"commit":"fb0ced549e021916dee7da39859e8f85c8216e16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:01:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 12 13:01:17 2021 -0700","stats":{"files_changed":4,"insertions":6,"deletions":6,"files":["docs/parsers/rpm_qi.md","jc/man/jc.1.gz","jc/parsers/rpm_qi.py","man/jc.1.gz"]},"message":"fix rpm-qi docs (used underscore instead of dash in name)","epoch":1618257677,"epoch_utc":null},{"commit":"7eb31bc7d290fcd09e53524ebbb11e59110df6a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 19:55:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 19:55:03 2021 -0700","stats":{"files_changed":4,"insertions":39,"deletions":48,"files":["docs/parsers/airport_s.md","jc/man/jc.1.gz","jc/parsers/airport_s.py","man/jc.1.gz"]},"message":"update airport_s docs","epoch":1618023303,"epoch_utc":null},{"commit":"6a06a3914273853742ac57433398968ccf7d9897","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 16:36:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 16:36:20 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["docgen.sh"]},"message":"use herestring instead of echo -e into jq","epoch":1618011380,"epoch_utc":null},{"commit":"bdcdaee6c5299ea0750512e0943c7f58f56f2e35","merge":"5d8f836 605353f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 15:11:05 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Apr 9 15:11:05 2021 -0700","message":"Merge pull request #117 from kellyjonbrazil/doc_update\n\nadd new docs","epoch":1618006265,"epoch_utc":null},{"commit":"605353fdce3b8b5986d20a35d05f7210a6df0730","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 15:10:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 15:10:38 2021 -0700","stats":{"files_changed":70,"insertions":1710,"deletions":2656,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md"]},"message":"add new docs","epoch":1618006238,"epoch_utc":null},{"commit":"490c9e17699e8e4f70dcc1612e1a808f86e24b0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 11:38:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 11:38:17 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["tests/test_cli.py"]},"message":"add more cli tests for magic command","epoch":1617993497,"epoch_utc":null},{"commit":"6ebebb659dc93daeaa869752ad135f6e1d2cb1ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 11:10:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 11:10:08 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"]},"message":"update changelog","epoch":1617991808,"epoch_utc":null},{"commit":"0e70c5ee12e96f04a89de05153a2da9cd39f98ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 11:04:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 11:04:17 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"update documentation link","epoch":1617991457,"epoch_utc":null},{"commit":"cd531acf6045660e022c932f62a01d4084433ad4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 11:02:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 11:02:19 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["docgen.sh"]},"message":"clean up comment","epoch":1617991339,"epoch_utc":null},{"commit":"908ac1f61c5cc011d05d550f933940dfed4431f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 10:56:43 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 10:56:43 2021 -0700","stats":{"files_changed":143,"insertions":0,"deletions":690,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/man/jc.1.gz","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","man/jc.1.gz"]},"message":"update docs - remove compatibility section since it is now automatically generated from info()","epoch":1617991003,"epoch_utc":null},{"commit":"f5c7e7e4046bc57b4fcad99390e31b121a7106ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 10:36:42 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 10:36:42 2021 -0700","stats":{"files_changed":70,"insertions":350,"deletions":0,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md"]},"message":"add updated docs with home link and parser info at the bottom","epoch":1617989802,"epoch_utc":null},{"commit":"001c700b5bd280cb1cb9e54169ae5f1b7918c257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 10:36:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 10:36:03 2021 -0700","stats":{"files_changed":3,"insertions":2,"deletions":1,"files":["docgen.sh","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"add home link to the top of the md file","epoch":1617989763,"epoch_utc":null},{"commit":"9b41e9bef0ff099e70f37fddc8fe2c6bd8457b19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 10:32:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 10:32:58 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"]},"message":"Add parser information header","epoch":1617989578,"epoch_utc":null},{"commit":"34bd6e32dc0c0bf7dfeedaadbf04115f43e9d060","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 10:26:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 10:26:34 2021 -0700","stats":{"files_changed":1,"insertions":20,"deletions":4,"files":["docgen.sh"]},"message":"pull each parser as a json object into a bash array and iterate on it to add supplementary information like version, author, and compatibility","epoch":1617989194,"epoch_utc":null},{"commit":"c5d058490beaa8f59875a8acfd7a400764768639","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 09:12:41 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 09:12:41 2021 -0700","stats":{"files_changed":1,"insertions":22,"deletions":13,"files":["jc/cli.py"]},"message":"move parser doc printing to its own function","epoch":1617984761,"epoch_utc":null},{"commit":"dd1ae6d9a7de5421830232deb42d933b9a652672","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 08:09:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 08:09:37 2021 -0700","stats":{"files_changed":4,"insertions":3,"deletions":1,"files":["MANIFEST.in","jc/man/jc.1.gz","man/jc.1.gz","mangen.py"]},"message":"add man page inside the pypi package for easier packaging in homebrew","epoch":1617980977,"epoch_utc":null},{"commit":"d8ea9bde823a7f5c146741150c3211737345c7dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 16:42:57 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 16:42:57 2021 -0700","stats":{"files_changed":3,"insertions":16,"deletions":16,"files":["docs/parsers/w.md","jc/parsers/w.py","man/jc.1.gz"]},"message":"doc update","epoch":1617925377,"epoch_utc":null},{"commit":"125edc9c906dc3650b6a683ed13830075acb7ab6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 16:42:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 16:42:45 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"bail out for -h, -a, and -v in magic()","epoch":1617925365,"epoch_utc":null},{"commit":"15ea43e394a9004f8ccec208b3a066c76e241866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 16:28:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 16:28:05 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["MANIFEST.in"]},"message":"add man file to package for easier packaging in homebrew","epoch":1617924485,"epoch_utc":null},{"commit":"b55b02687c00d1c50e30f30c9b9a7f36f783eb0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 16:14:11 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 16:14:11 2021 -0700","stats":{"files_changed":19,"insertions":371,"deletions":441,"files":["CHANGELOG","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","man/jc.1.gz","setup.py"]},"message":"doc update","epoch":1617923651,"epoch_utc":null},{"commit":"da611f0ac6321f7f52fdbc419f8b155c74393c28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 15:53:06 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 15:53:06 2021 -0700","stats":{"files_changed":4,"insertions":63,"deletions":50,"files":["jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","man/jc.1.gz"]},"message":"update docs","epoch":1617922386,"epoch_utc":null},{"commit":"b8b8dfead4fdc4285585c44c2ebce3bdd42b2e7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 15:52:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 15:52:49 2021 -0700","stats":{"files_changed":61,"insertions":1501,"deletions":1848,"files":["docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py"]},"message":"update docs","epoch":1617922369,"epoch_utc":null},{"commit":"4290a3cbd135cacbf63664dc30768017ebbed28d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 14:00:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 14:00:56 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":9,"files":["docs/parsers/ifconfig.md","jc/parsers/ifconfig.py"]},"message":"make IfconfigParser class private","epoch":1617915656,"epoch_utc":null},{"commit":"a5e2203cee6a7bc398cf280f57d37638eeb1d2d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 12:45:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 12:45:08 2021 -0700","stats":{"files_changed":3,"insertions":2,"deletions":1,"files":["docs/parsers/ifconfig.md","jc/parsers/ifconfig.py","man/jc.1.gz"]},"message":"update ifconfig doc","epoch":1617911108,"epoch_utc":null},{"commit":"e28c08b1361161cfd123b9ebc11fa1ffa87d658f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 12:42:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 12:42:01 2021 -0700","stats":{"files_changed":46,"insertions":976,"deletions":1209,"files":["docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","man/jc.1.gz"]},"message":"update documentation","epoch":1617910921,"epoch_utc":null},{"commit":"a4b6846f63b43168085275d73940265940badf46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 11:37:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 11:37:39 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":467,"files":["man/jc.1","man/jc.1.gz"]},"message":"man update","epoch":1617907059,"epoch_utc":null},{"commit":"2bc830786114fd57619f34b936dcf6e0bed7a109","merge":"9b39917 5d8f836","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 11:33:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 11:33:50 2021 -0700","message":"Merge branch 'master' into dev\n\n# Conflicts:\n# man/jc.1","epoch":1617906830,"epoch_utc":null},{"commit":"9b39917c798ed0310c9b82d87172cbf6d24ba111","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 11:24:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 11:24:02 2021 -0700","stats":{"files_changed":17,"insertions":391,"deletions":453,"files":["README.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","jc/cli.py","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"update docstrings for new help functionality","epoch":1617906242,"epoch_utc":null},{"commit":"57c13cc0a38ad89fda8b0e362bd6487257d0a26a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 10:54:15 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 10:54:15 2021 -0700","stats":{"files_changed":1,"insertions":23,"deletions":3,"files":["jc/cli.py"]},"message":"add support for parser help","epoch":1617904455,"epoch_utc":null},{"commit":"b7355fd30d992a1bcc90227f5a1b02be073829e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 10:20:24 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 10:20:24 2021 -0700","stats":{"files_changed":2,"insertions":37,"deletions":48,"files":["docs/parsers/arp.md","jc/parsers/arp.py"]},"message":"new docstring format for improved documentation","epoch":1617902424,"epoch_utc":null},{"commit":"93ae309e407b26820b9f05b5b331d05fc77df57f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 10:20:00 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 10:20:00 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/__init__.py","man/jc.1"]},"message":"bump version to 1.15.1","epoch":1617902400,"epoch_utc":null},{"commit":"5d8f8365e24a7c3a587d4e71ebba4876de08203b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 14:27:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 7 14:27:34 2021 -0700","stats":{"files_changed":3,"insertions":9,"deletions":461,"files":["man/jc.1","man/jc.1.gz","mangen.py"]},"message":"gzip man page","epoch":1617830854,"epoch_utc":null},{"commit":"f26909eefb236e9ebf63be53cd86ae13cc3d9ea3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 11:18:33 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 7 11:18:33 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["docs/parsers/dir.md"]},"message":"formatting","epoch":1617819513,"epoch_utc":null},{"commit":"55bfbb2797ede3aefbb14ecab950b108b1895ccc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 11:13:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 7 11:13:27 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":6,"files":["EXAMPLES.md","jc/parsers/dir.py"]},"message":"formatting","epoch":1617819207,"epoch_utc":null},{"commit":"8970b8342a855203aef649b60dad3e49a1d7fd2a","merge":"a73fdb7 5285e69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 09:34:45 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Apr 7 09:34:45 2021 -0700","message":"Merge pull request #115 from kellyjonbrazil/master\n\nSync master and dev","epoch":1617813285,"epoch_utc":null},{"commit":"5285e699c30fdeaf56068f5a03ef1d1d33fa673c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 08:07:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 7 08:07:50 2021 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","jc/cli.py","man/jc.1"]},"message":"fix rpm-qi parser name","epoch":1617808070,"epoch_utc":null},{"commit":"275f3860d5870303235b651d42650256e4db8ada","merge":"577811f a73fdb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 07:54:41 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Apr 7 07:54:41 2021 -0700","message":"Merge pull request #114 from kellyjonbrazil/dev\n\nDev v1.15.0","epoch":1617807281,"epoch_utc":null},{"commit":"a73fdb7478965f0f2c841ac01b2762db80ad0786","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 07:50:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 7 07:50:17 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["CHANGELOG","man/jc.1"]},"message":"update dates","epoch":1617807017,"epoch_utc":null},{"commit":"f2d746403a0ed764f931ae9e14d180bab107dcca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 20:30:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 20:30:56 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/rpm_qi.md","jc/parsers/rpm_qi.py"]},"message":"typo fix","epoch":1617766256,"epoch_utc":null},{"commit":"b7dbf2c49be4beb793495a0aaee7f05dbea5a3a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 18:53:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 18:53:50 2021 -0700","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["jc/utils.py"]},"message":"doc formatting","epoch":1617760430,"epoch_utc":null},{"commit":"21f3c97788826e79b0c387f877c5adf269318e97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 18:38:04 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 18:38:04 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"]},"message":"rename rpm_qai to rpm_qi","epoch":1617759484,"epoch_utc":null},{"commit":"14b727cc717d04fefba1cc31b6f29b549ced986f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 18:34:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 18:34:08 2021 -0700","stats":{"files_changed":3,"insertions":73,"deletions":0,"files":["tests/fixtures/centos-7.7/rpm-qi-package.json","tests/fixtures/centos-7.7/rpm-qi-package.out","tests/test_rpm_qai.py"]},"message":"add rpm_qi tests","epoch":1617759248,"epoch_utc":null},{"commit":"abee226591ed4ae37351efc995017d28b27827d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 18:32:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 18:32:47 2021 -0700","stats":{"files_changed":5,"insertions":205,"deletions":14,"files":["README.md","docs/parsers/rpm_qi.md","jc/cli.py","jc/parsers/{rpm_qai.py => rpm_qi.py}","man/jc.1"]},"message":"rename rpm_qia to rpm_qi","epoch":1617759167,"epoch_utc":null},{"commit":"293ad39f4bcf326186dd917d8bc58d3964e5e4d6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 16:48:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 16:48:31 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"typo fix","epoch":1617752911,"epoch_utc":null},{"commit":"92443025811019f616f596abb60a2889f604c122","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 15:07:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 15:07:39 2021 -0700","stats":{"files_changed":4,"insertions":7,"deletions":6,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/rpm_qai.md","jc/parsers/rpm_qai.py"]},"message":"rpm parser doc update","epoch":1617746859,"epoch_utc":null},{"commit":"753cac25fb1e7e6cd2c742afa8d45ced068ea91d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 14:46:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 14:46:27 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":3,"files":["jc/parsers/rpm_qai.py"]},"message":"only add description if it exists","epoch":1617745587,"epoch_utc":null},{"commit":"0548263e898bf14f93d2fa423c0f0a9d9f2ff567","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 14:39:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 14:39:39 2021 -0700","stats":{"files_changed":8,"insertions":10468,"deletions":0,"files":["EXAMPLES.md","README.md","docs/parsers/rpm_qai.md","jc/cli.py","jc/parsers/rpm_qai.py","man/jc.1","tests/fixtures/centos-7.7/rpm-qai.json","tests/fixtures/centos-7.7/rpm-qai.out"]},"message":"add rpm -qai parser","epoch":1617745179,"epoch_utc":null},{"commit":"53776a9bf894988d6ef9221a62ab8b816c89560c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 11:36:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 11:36:10 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["man/jc.1","templates/manpage_template"]},"message":"note -a output is JSON","epoch":1617734170,"epoch_utc":null},{"commit":"cc7def9b76a7fa6de1e11b584676820f3acb0257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 11:29:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 11:29:30 2021 -0700","stats":{"files_changed":3,"insertions":18,"deletions":0,"files":["tests/fixtures/osx-10.14.6/finger.json","tests/fixtures/osx-10.14.6/finger.out","tests/test_finger.py"]},"message":"add OSX finger tests","epoch":1617733770,"epoch_utc":null},{"commit":"11a4422c25ed905f33475677bcc2f59f49c62a23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 11:23:29 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 11:23:29 2021 -0700","stats":{"files_changed":3,"insertions":51,"deletions":0,"files":["tests/fixtures/centos-7.7/finger.json","tests/fixtures/centos-7.7/finger.out","tests/test_finger.py"]},"message":"add centos 7.7 finger tests","epoch":1617733409,"epoch_utc":null},{"commit":"3a44785260514227b541530baf3e14b6c7ebe86a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 11:23:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 11:23:09 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/finger.py"]},"message":"del details key if details are blank","epoch":1617733389,"epoch_utc":null},{"commit":"e0d430c26c38db8de5a32741e05df412cffe45b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 11:00:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 11:00:46 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"update -r raw option info","epoch":1617732046,"epoch_utc":null},{"commit":"417b70020accfa4910016e9d3d12690a5488f6f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 10:51:41 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 10:51:41 2021 -0700","stats":{"files_changed":5,"insertions":129,"deletions":22,"files":["EXAMPLES.md","docs/parsers/finger.md","jc/parsers/finger.py","tests/fixtures/ubuntu-18.04/finger.json","tests/fixtures/ubuntu-18.04/finger.out"]},"message":"add idle time fields to finger parser","epoch":1617731501,"epoch_utc":null},{"commit":"7b29c464b72ef9a79bd872dab92cf65016490bcc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 10:04:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 10:04:02 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"date updated","epoch":1617728642,"epoch_utc":null},{"commit":"26d5529d86e4e459ad94226465c3697a050af0ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 10:03:51 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 10:03:51 2021 -0700","stats":{"files_changed":1,"insertions":10,"deletions":7,"files":["docs/parsers/finger.md"]},"message":"remove aix support, add note for -s support. schema update","epoch":1617728631,"epoch_utc":null},{"commit":"852103c478321b84ffbbc0a876d5ece0c0881e1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 10:02:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 10:02:46 2021 -0700","stats":{"files_changed":1,"insertions":27,"deletions":14,"files":["jc/parsers/finger.py"]},"message":"tweak regex to support arbitrary 'detail' data","epoch":1617728566,"epoch_utc":null},{"commit":"26a115421b0888e23f4348f1124e2ef7b39df4cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 17:16:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 17:16:38 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["CHANGELOG"]},"message":"add finger parser","epoch":1617668198,"epoch_utc":null},{"commit":"755b941a9aa602d95d9bc599f5c64e05f9e6216d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 17:14:33 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 17:14:33 2021 -0700","stats":{"files_changed":3,"insertions":35,"deletions":30,"files":["EXAMPLES.md","docs/parsers/finger.md","jc/parsers/finger.py"]},"message":"doc update","epoch":1617668073,"epoch_utc":null},{"commit":"fd1ca82d86649adeb84968142665e5e4fae3fa0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 17:09:22 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 17:09:22 2021 -0700","stats":{"files_changed":5,"insertions":263,"deletions":0,"files":["README.md","docs/parsers/finger.md","jc/cli.py","jc/parsers/finger.py","man/jc.1"]},"message":"add finger parser","epoch":1617667762,"epoch_utc":null},{"commit":"6fe175344fc61d4996a9ea20f6c5d429efb1fac7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 13:38:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 13:38:09 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"change examples link to github.io","epoch":1617655089,"epoch_utc":null},{"commit":"3590cda13a68616ee7eb8c85c5554ffb3fef036d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 12:07:52 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 12:07:52 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/last.md","jc/parsers/last.py"]},"message":"docs formatting","epoch":1617649672,"epoch_utc":null},{"commit":"2f1011dd85ec9b3550138ac4a4e1729fa5b4fe17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 12:03:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 12:03:35 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"readme update","epoch":1617649415,"epoch_utc":null},{"commit":"2b155261b3f6e4879b592f5bc052649ded5e3d69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 12:01:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 12:01:53 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"]},"message":"use new github.io links for documentation","epoch":1617649313,"epoch_utc":null},{"commit":"02f4d606d0a446c7cc74aedac6035ee79805950d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 11:49:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 11:49:30 2021 -0700","stats":{"files_changed":2,"insertions":69,"deletions":69,"files":["README.md","templates/readme_template"]},"message":"add documentation links to README.md","epoch":1617648570,"epoch_utc":null},{"commit":"577811f00b7fcd0396bb0e26a2985709bd2c65a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 11:42:59 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 11:42:59 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/_config.yml"]},"message":"Set theme jekyll-theme-cayman","epoch":1617648179,"epoch_utc":null},{"commit":"b4098d67a3a4a617d42c1389e0a88833c77b89b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 09:42:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 09:42:35 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"latest","epoch":1617640955,"epoch_utc":null},{"commit":"88bd7554aeb511c19e55dc3dde9c9376efb0485b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 09:42:25 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 09:42:25 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":3,"files":["docgen.sh","updatedocs.sh"]},"message":"add status messages","epoch":1617640945,"epoch_utc":null},{"commit":"b5ec16c5cafb78db093861cc30d9646207f2227a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 09:23:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 09:23:20 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":8,"files":["mangen.py","readmegen.py"]},"message":"formatting","epoch":1617639800,"epoch_utc":null},{"commit":"68fcb60a1460a35500180ec05a8cf5ba5706ff17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 20:56:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 4 20:56:10 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["updatedocs.sh"]},"message":"add updatedocs script","epoch":1617594970,"epoch_utc":null},{"commit":"e4781d60ce251f6d47f19bbe042e97f8aa9e2f18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 20:52:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 4 20:52:34 2021 -0700","stats":{"files_changed":65,"insertions":188,"deletions":189,"files":["README.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","man/jc.1"]},"message":"update parser descriptions with backticks surrounding command names","epoch":1617594754,"epoch_utc":null},{"commit":"6201fb346a66ba762651624cdaf03f08e08579a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 20:31:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 4 20:31:58 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","jc/parsers/iw_scan.py"]},"message":"test backticks in description","epoch":1617593518,"epoch_utc":null},{"commit":"f88c8343f9dec5e0190df94a5109e6c749bda286","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 20:30:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 4 20:30:53 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","jc/parsers/iw_scan.py"]},"message":"update iw-scan description for documentation","epoch":1617593453,"epoch_utc":null},{"commit":"25410d33168ee7142bd8f8c739ef22a62a47eb6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 20:28:54 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 4 20:28:54 2021 -0700","stats":{"files_changed":5,"insertions":973,"deletions":70,"files":["README.md","mangen.py","readmegen.py","{man/template => templates}/manpage_template","templates/readme_template"]},"message":"create readmegen.py script. move jinja2 templates to templates folder","epoch":1617593334,"epoch_utc":null},{"commit":"4ff9952938d0654376efc94ca7d8a12f6df171af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 15:57:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 4 15:57:44 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["README.md"]},"message":"change OSX to macOS","epoch":1617577064,"epoch_utc":null},{"commit":"5e3f63a412c5b23e7515337521ebba6273b5c11f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 15:53:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 4 15:53:23 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["man/jc.1","man/template/manpage_template"]},"message":"add license and copyright info. use variables instead of hard-coded values","epoch":1617576803,"epoch_utc":null},{"commit":"e1f57be69efdfd7facd07df6ef0955a36c4fc18b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 15:52:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 4 15:52:50 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"]},"message":"add license info","epoch":1617576770,"epoch_utc":null},{"commit":"2c65d5eeccdc95d2de00ac6575a9e8d8458486bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 14:40:22 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 4 14:40:22 2021 -0700","stats":{"files_changed":2,"insertions":32,"deletions":8,"files":["man/jc.1","man/template/manpage_template"]},"message":"man page updates","epoch":1617572422,"epoch_utc":null},{"commit":"aa621f2f1ee043611c440683dfb63e6577d8fac4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 14:29:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 4 14:29:37 2021 -0700","stats":{"files_changed":3,"insertions":74,"deletions":9,"files":["CHANGELOG","man/jc.1","man/template/manpage_template"]},"message":"enhance man page","epoch":1617571777,"epoch_utc":null},{"commit":"ac932c6e59ad80115962d0ea91e6aaabc70c211e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 3 14:48:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 3 14:48:30 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/utils.md","jc/utils.py"]},"message":"update timestamp docs","epoch":1617486510,"epoch_utc":null},{"commit":"029f79da1647e53f97ca83ba92b1f36a131f3128","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 21:52:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 21:52:08 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"added info regarding updated dev scripts for automating doc generation","epoch":1617425528,"epoch_utc":null},{"commit":"153b2b4a7a216caae5b03f6d50d43980c13a705f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 21:50:04 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 21:50:04 2021 -0700","stats":{"files_changed":1,"insertions":11,"deletions":68,"files":["docgen.sh"]},"message":"use jc to help automate the generation of its own docs","epoch":1617425404,"epoch_utc":null},{"commit":"709b2fe4eead06090f903718deeb06ec774fc26e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 18:08:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 18:08:46 2021 -0700","stats":{"files_changed":2,"insertions":16,"deletions":0,"files":["man/jc.1","man/template/manpage_template"]},"message":"add -h and -v options","epoch":1617412126,"epoch_utc":null},{"commit":"09c1fccc584e3d0582e19b520586419085ea8d04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 18:04:55 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 18:04:55 2021 -0700","stats":{"files_changed":3,"insertions":4,"deletions":6,"files":["man/jc.1","man/template/manpage_template","mangen.py"]},"message":"manpage updates","epoch":1617411895,"epoch_utc":null},{"commit":"fd254d99b782888fe7646e42a61f28aa99e7cba7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 17:40:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 17:40:09 2021 -0700","stats":{"files_changed":3,"insertions":193,"deletions":15,"files":["man/jc.1","man/template/manpage_template","mangen.py"]},"message":"add manpage generator","epoch":1617410409,"epoch_utc":null},{"commit":"88bd2c172217c498431e8904e74313bc27978785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 16:31:22 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 16:31:22 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"fix typo","epoch":1617406282,"epoch_utc":null},{"commit":"d03e2f0fc1d0310cd94702f4d3c959d71b0eb622","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 15:01:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 15:01:21 2021 -0700","stats":{"files_changed":1,"insertions":40,"deletions":0,"files":["CONTRIBUTING.md"]},"message":"add parser schema guidelines","epoch":1617400881,"epoch_utc":null},{"commit":"3f12a393bd37062cd1412128be495235b0c7351f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 13:25:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 13:25:23 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"formatting","epoch":1617395123,"epoch_utc":null},{"commit":"8c21284c5038bdc2e52ff4211fac747f33f52091","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 13:23:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 13:23:26 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["CONTRIBUTING.md"]},"message":"remove redundant license info","epoch":1617395006,"epoch_utc":null},{"commit":"e7d396c2157a77500017967dfc68ffaf32507c2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 13:21:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 13:21:56 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"update issues link","epoch":1617394916,"epoch_utc":null},{"commit":"f238fac0eb0c8e5133c6c9abf9ca709f5df7a925","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 13:19:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 13:19:47 2021 -0700","stats":{"files_changed":3,"insertions":49,"deletions":0,"files":["CHANGELOG","CONTRIBUTING.md","README.md"]},"message":"add contributing guidelines","epoch":1617394787,"epoch_utc":null},{"commit":"017228f80d9a65ad7715f31c539d9fca1615296f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:14:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 12:14:26 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add tested on Windows 10","epoch":1617390866,"epoch_utc":null},{"commit":"286c5fa9434e25434ee8f4825621f68464296469","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:12:43 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 12:12:43 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add dir parser","epoch":1617390763,"epoch_utc":null},{"commit":"74cfc13abe4cd09ca5470714caeaedd24c099770","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:10:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 12:10:05 2021 -0700","stats":{"files_changed":9,"insertions":12,"deletions":21,"files":["tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-S.json","tests/fixtures/windows-10/dir-dirs.json","tests/fixtures/windows-10/dir-files.json","tests/fixtures/windows-10/dir-mix.json","tests/fixtures/windows-10/dir-raw.json","tests/fixtures/windows-10/dir.json","tests/test_dir.py"]},"message":"fixup dir parser tests","epoch":1617390605,"epoch_utc":null},{"commit":"0ee4a6c377321cf6ff67ced38e9a07a8f6313943","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:01:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 12:01:39 2021 -0700","stats":{"files_changed":2,"insertions":207,"deletions":460,"files":["docs/parsers/dir.md","jc/parsers/dir.py"]},"message":"update schema and add epoch naive timestamp","epoch":1617390099,"epoch_utc":null},{"commit":"283433578dfc3f132ef35727ce5bafb3e390896c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:01:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 12:01:23 2021 -0700","stats":{"files_changed":2,"insertions":46,"deletions":0,"files":["EXAMPLES.md","README.md"]},"message":"add dir parser","epoch":1617390083,"epoch_utc":null},{"commit":"9559c85057308e8815d4654bbe0062a5858c0b2b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:01:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 12:01:05 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":0,"files":["jc/utils.py","tests/test_utils.py"]},"message":"add windows dir format","epoch":1617390065,"epoch_utc":null},{"commit":"c5c020f5654038dacba542be3784a35d7333cbcc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 11:16:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 11:16:03 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/parsers/dir.md"]},"message":"add /S option","epoch":1617387363,"epoch_utc":null},{"commit":"95ec79bceb3d0c4245e36b7b16cfda6e16b01197","merge":"8f8be8a 5b60c74","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 11:14:26 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Apr 2 11:14:26 2021 -0700","message":"Merge pull request #107 from rasheed-rd/add-dir-parser\n\nAdd windows dir command parser","epoch":1617387266,"epoch_utc":null},{"commit":"8f8be8aa33f0b708ebd9a35c6b288572443d7181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 11:14:06 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 11:14:06 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"add -1 option info","epoch":1617387246,"epoch_utc":null},{"commit":"5b60c7445a3f8bd2ae1587aa0ffaeaf093966f9a","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","date":"Fri Apr 2 13:43:06 2021 -0400","commit_by":"Rasheed Elsaleh","commit_by_email":"rasheed@rebelliondefense.com","commit_by_date":"Fri Apr 2 13:43:06 2021 -0400","stats":{"files_changed":5,"insertions":469,"deletions":400,"files":["docs/parsers/dir.md","jc/parsers/dir.py","tests/fixtures/windows-10/dir-S.json","tests/fixtures/windows-10/dir-S.out","tests/test_dir.py"]},"message":"Add support for /S and update documentation","epoch":1617396186,"epoch_utc":null},{"commit":"d9dbcc8b526c8de9c6d12ac580880fd606dc68cf","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","date":"Fri Apr 2 13:13:05 2021 -0400","commit_by":"Rasheed Elsaleh","commit_by_email":"rasheed@rebelliondefense.com","commit_by_date":"Fri Apr 2 13:13:05 2021 -0400","stats":{"files_changed":15,"insertions":149,"deletions":73,"files":["docs/parsers/dir.md","jc/parsers/dir.py","tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-Q.json","tests/fixtures/windows-10/dir-Q.out","tests/fixtures/windows-10/dir-dirs.json","tests/fixtures/windows-10/dir-dirs.out","tests/fixtures/windows-10/dir-files.json","tests/fixtures/windows-10/dir-files.out","tests/fixtures/windows-10/dir-mix.json","tests/fixtures/windows-10/dir-mix.out","tests/fixtures/windows-10/dir-raw.json","tests/fixtures/windows-10/dir.json","tests/test_dir.py"]},"message":"Add parent dir to structure. Add test cases. Remove support for /Q","epoch":1617394385,"epoch_utc":null},{"commit":"79bc525970b38dea68b4859ac5dd32fc681e5994","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:42:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 20:42:36 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"]},"message":"add codes field to schema","epoch":1617334956,"epoch_utc":null},{"commit":"9dae1091ddc6141694ebfdc5ae649582cb879ccd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:41:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 20:41:05 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"]},"message":"typo fix","epoch":1617334865,"epoch_utc":null},{"commit":"74d3ac686a69518c1048260e37a0245ff254ff57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:37:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 20:37:12 2021 -0700","stats":{"files_changed":4,"insertions":61,"deletions":0,"files":["tests/fixtures/ubuntu-18.04/dpkg-l-codes.json","tests/fixtures/ubuntu-18.04/dpkg-l-columns500.json","tests/fixtures/ubuntu-18.04/dpkg-l.json","tests/test_dpkg_l.py"]},"message":"add dpkg-l tests","epoch":1617334632,"epoch_utc":null},{"commit":"cf3cc636badcf4ae6db1e5ee5e57ca0331ee5b0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:25:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 20:25:56 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add dpkg-l parser info","epoch":1617333956,"epoch_utc":null},{"commit":"a720441e1d34771c5a54876cb7dd63fb8c9f408e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:24:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 20:24:19 2021 -0700","stats":{"files_changed":1,"insertions":54,"deletions":0,"files":["EXAMPLES.md"]},"message":"add dpkg -l example","epoch":1617333859,"epoch_utc":null},{"commit":"0a7ed0959df07e2f36d9ec3ca8c294cfdaf10396","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:17:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 20:17:21 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"]},"message":"rename err to error","epoch":1617333441,"epoch_utc":null},{"commit":"eb83c9b86dc6d1ff15efed30993071834b65a7d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:13:40 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 20:13:40 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":21,"files":["docs/utils.md"]},"message":"replace parse_datetime_to_timestamp with timestamp class","epoch":1617333220,"epoch_utc":null},{"commit":"5c0142dd19eee14f4f1c287f0543e29824f9ae70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:12:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 20:12:58 2021 -0700","stats":{"files_changed":9,"insertions":1797,"deletions":2,"files":["CHANGELOG","docgen.sh","docs/parsers/dpkg_l.md","jc/cli.py","jc/parsers/dpkg_l.py","jc/parsers/universal.py","tests/fixtures/ubuntu-18.04/dpkg-l-codes.out","tests/fixtures/ubuntu-18.04/dpkg-l-columns500.out","tests/fixtures/ubuntu-18.04/dpkg-l.out"]},"message":"add dpkg-l parser","epoch":1617333178,"epoch_utc":null},{"commit":"c326c8dc8356b55bba13864156adf30607205ece","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 12:52:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 12:52:10 2021 -0700","stats":{"files_changed":18,"insertions":194,"deletions":1,"files":["jc/parsers/time.py","tests/fixtures/osx-10.14.6/time-l.json","tests/fixtures/osx-10.14.6/time-l.out","tests/fixtures/osx-10.14.6/time-lp.json","tests/fixtures/osx-10.14.6/time-lp.out","tests/fixtures/osx-10.14.6/time-p.json","tests/fixtures/osx-10.14.6/time-p.out","tests/fixtures/osx-10.14.6/time.json","tests/fixtures/osx-10.14.6/time.out","tests/fixtures/ubuntu-18.04/time-p.json","tests/fixtures/ubuntu-18.04/time-p.out","tests/fixtures/ubuntu-18.04/time-verbose.json","tests/fixtures/ubuntu-18.04/time-verbose.out","tests/fixtures/ubuntu-18.04/time.json","tests/fixtures/ubuntu-18.04/time.out","tests/fixtures/ubuntu-18.04/time2.json","tests/fixtures/ubuntu-18.04/time2.out","tests/test_time.py"]},"message":"add TypeError to except block. add /usr/bin/time tests","epoch":1617306730,"epoch_utc":null},{"commit":"fc4082a03feb5645a1ad687908782a2584a58956","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:26:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 11:26:02 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":131,"files":["jc/utils.py"]},"message":"remove old parse_datetime_to_timestamp function","epoch":1617301562,"epoch_utc":null},{"commit":"c8655565ff8718f0f14d41696b81e6539529dde1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:23:24 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 11:23:24 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"]},"message":"use new timestamp class","epoch":1617301404,"epoch_utc":null},{"commit":"638f879f16c9e87edb60953f4fd0b1c7ad92f277","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:21:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 11:21:27 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/dig.py"]},"message":"use new timestamp class","epoch":1617301287,"epoch_utc":null},{"commit":"1d221bf7e6128d57bd769c0fe8f37f7a94da8cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:19:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 11:19:49 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/who.py"]},"message":"use new timestamp class","epoch":1617301189,"epoch_utc":null},{"commit":"60ea71f0ef931dccf09e6eb0cb737ddad0b47f0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:18:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 11:18:03 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/timedatectl.py"]},"message":"use new timestamp class","epoch":1617301083,"epoch_utc":null},{"commit":"d8bdd35a3f462efcdc871426309299e8aefb0a79","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:17:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 11:17:53 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/stat.py"]},"message":"use new timestamp class","epoch":1617301073,"epoch_utc":null},{"commit":"7463891c53f3670710dfa72ed1422431c274fe4a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:13:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 11:13:02 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/last.py"]},"message":"use new timestamp class","epoch":1617300782,"epoch_utc":null},{"commit":"7537aec76fa07384c4439f34c50d4e3f001c0dfa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:08:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 11:08:27 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":8,"files":["jc/parsers/date.py"]},"message":"use jc.utils.timestamp instead of jc.utils.parse_datetime_to_timestamp()","epoch":1617300507,"epoch_utc":null},{"commit":"62234e39a8533362a20f106c64326ed69f430006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:08:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 11:08:20 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":8,"files":["jc/parsers/upower.py"]},"message":"use jc.utils.timestamp instead of jc.utils.parse_datetime_to_timestamp()","epoch":1617300500,"epoch_utc":null},{"commit":"be004b7b3fe9217160c6418907e7d8aad10e5fae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:07:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 11:07:37 2021 -0700","stats":{"files_changed":2,"insertions":172,"deletions":15,"files":["jc/utils.py","tests/test_utils.py"]},"message":"make parse_datetime_to_timestamp function a class called timestamp for easier use","epoch":1617300457,"epoch_utc":null},{"commit":"82539444b24169b2eb762485ed032fc968a81f71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 31 20:48:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 31 20:48:44 2021 -0700","stats":{"files_changed":2,"insertions":23,"deletions":21,"files":["docs/parsers/time.md","jc/parsers/time.py"]},"message":"fix indentation for int and float conversions. add real_time field to schema","epoch":1617248924,"epoch_utc":null},{"commit":"a571d3cbafd5048d1d59070e1791398ae410197f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 31 20:41:04 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 31 20:41:04 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/time.md","jc/parsers/time.py"]},"message":"fix typo","epoch":1617248464,"epoch_utc":null},{"commit":"a038c14c23ea27264df61a38e0301de8d1fa1b9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 31 20:39:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 31 20:39:03 2021 -0700","stats":{"files_changed":3,"insertions":8,"deletions":8,"files":["EXAMPLES.md","docs/parsers/time.md","jc/parsers/time.py"]},"message":"change microseconds to centiseconds","epoch":1617248343,"epoch_utc":null},{"commit":"25a85d874cd2b57a7700b0c2dca61132127732b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 31 20:21:29 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 31 20:21:29 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iw_scan.py"]},"message":"update docs","epoch":1617247289,"epoch_utc":null},{"commit":"884c36ff42df4f580c8e2b4705def8e4c1182e39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 31 20:19:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 31 20:19:46 2021 -0700","stats":{"files_changed":8,"insertions":536,"deletions":1,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","docs/parsers/iw_scan.md","docs/parsers/time.md","jc/cli.py","jc/parsers/time.py"]},"message":"add /usr/bin/time parser","epoch":1617247186,"epoch_utc":null},{"commit":"b98e72b8b4eda0ab5ede7725226e61634af572eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 21:33:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 30 21:33:23 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add ls parser info","epoch":1617165203,"epoch_utc":null},{"commit":"05885c0096b5ee142ecff2d17e37c446518998a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 21:29:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 30 21:29:34 2021 -0700","stats":{"files_changed":5,"insertions":931,"deletions":18,"files":["docs/parsers/ls.md","jc/parsers/ls.py","tests/fixtures/ubuntu-18.04/ls-l-iso.json","tests/fixtures/ubuntu-18.04/ls-l-iso.out","tests/test_ls.py"]},"message":"add epoch and epoch_utc timestamps","epoch":1617164974,"epoch_utc":null},{"commit":"4c9761231af897658c3a2c0abcc476aa8b43d1b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 20:41:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 30 20:41:10 2021 -0700","stats":{"files_changed":21,"insertions":118,"deletions":81,"files":["CHANGELOG","EXAMPLES.md","README.md","docs/parsers/dig.md","jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json"]},"message":"add when_epoch and when_epoch_utc fields","epoch":1617162070,"epoch_utc":null},{"commit":"656eaa150861948091ef9d6323805c2698039bc6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 16:43:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 30 16:43:53 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1617147833,"epoch_utc":null},{"commit":"1560dcddcf82f55fffce22d1b46d372b25a9d0fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 16:43:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 30 16:43:02 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"]},"message":"add acpi, upower parsers and -v version option","epoch":1617147782,"epoch_utc":null},{"commit":"08d4cd4870c7acaf3a453d1400b64d77d462437b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 16:34:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 30 16:34:01 2021 -0700","stats":{"files_changed":7,"insertions":114,"deletions":43,"files":["EXAMPLES.md","docs/parsers/acpi.md","jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.json","tests/fixtures/generic/acpi-V2.json","tests/fixtures/generic/acpi-V3.json","tests/fixtures/generic/acpi-V4.json"]},"message":"add time calculations to acpi parser","epoch":1617147241,"epoch_utc":null},{"commit":"9767a50cededb140575e195abf79ce49c4f53789","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 11:59:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 30 11:59:44 2021 -0700","stats":{"files_changed":12,"insertions":48,"deletions":46,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/who.md","jc/parsers/who.py","jc/utils.py","tests/fixtures/centos-7.7/who-a.json","tests/fixtures/centos-7.7/who.json","tests/fixtures/osx-10.14.6/who-a.json","tests/fixtures/osx-10.14.6/who.json","tests/fixtures/ubuntu-18.04/who-a.json","tests/fixtures/ubuntu-18.04/who.json","tests/test_utils.py"]},"message":"update who parser to add epoch naive timestamp","epoch":1617130784,"epoch_utc":null},{"commit":"cd86890ed1493644e391e52e33561e9a77631a51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 08:05:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 30 08:05:26 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"]},"message":"add website to info and use variables for version info","epoch":1617116726,"epoch_utc":null},{"commit":"ba0dd3b9ca98a042c772898302fcfe5fdc84f79a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 21:25:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 21:25:19 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["tests/test_utils.py"]},"message":"add parse_timedate_to_timestamp test for format 7300","epoch":1617078319,"epoch_utc":null},{"commit":"8d7fa07ffd50f38336a448eb506a76d9d4849a6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 21:20:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 21:20:19 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":11,"files":["tests/fixtures/centos-7.7/timedatectl.json"]},"message":"unformat json","epoch":1617078019,"epoch_utc":null},{"commit":"cade1bfe6e56b5926898b7204e911885efebd5a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 21:19:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 21:19:12 2021 -0700","stats":{"files_changed":2,"insertions":12,"deletions":2,"files":["tests/fixtures/centos-7.7/timedatectl.json","tests/fixtures/ubuntu-18.04/timedatectl.json"]},"message":"update timedatectl tests for new epoch_utc field","epoch":1617077952,"epoch_utc":null},{"commit":"daec4ab0a7f572e872b27b043d51f68e5e06300f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 21:16:40 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 21:16:40 2021 -0700","stats":{"files_changed":5,"insertions":20,"deletions":4,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/timedatectl.md","jc/parsers/timedatectl.py","jc/utils.py"]},"message":"add epoch_utc field to timedatectl parser","epoch":1617077800,"epoch_utc":null},{"commit":"3c96bc319615c824a06c388e9e3c1d68a9bf4084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:57:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 20:57:58 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"]},"message":"version bump","epoch":1617076678,"epoch_utc":null},{"commit":"7f7d8d4bd6f37015b11bac60a7bd99e8d3eca108","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:36:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 20:36:10 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":0,"files":["docs/parsers/stat.md","jc/parsers/stat.py"]},"message":"update stat docs","epoch":1617075370,"epoch_utc":null},{"commit":"47263661a41987f334fd484e866e0aa8859cde5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:30:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 20:30:20 2021 -0700","stats":{"files_changed":1,"insertions":18,"deletions":2,"files":["EXAMPLES.md"]},"message":"update stat example","epoch":1617075020,"epoch_utc":null},{"commit":"4c42a086d206919dfe4f1c0801fe4fb1027cb1cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:25:54 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 20:25:54 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":6,"files":["jc/utils.py"]},"message":"clean up debug code","epoch":1617074754,"epoch_utc":null},{"commit":"5d2541a5c4bc93f3943a491c76df7f8d4e2cf44b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:22:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 20:22:35 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/utils.py"]},"message":"remove auto c locale and use a manual format rule for windows and linux compatibility","epoch":1617074555,"epoch_utc":null},{"commit":"d91d170b49bfc88c0b2fb54475705c038172f1c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:16:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 20:16:05 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/utils.py"]},"message":"try manual c locale format for windows","epoch":1617074165,"epoch_utc":null},{"commit":"6d1f4584a9ccd0f0f7ed4fdf408576a9e7f5046b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:05:42 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 20:05:42 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"]},"message":"try manually setting time format for windows compatibility","epoch":1617073542,"epoch_utc":null},{"commit":"1d76d96bcf4185cffb7066bec637913099399db5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 16:58:57 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 16:58:57 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/utils.py"]},"message":"debug windows issue","epoch":1617062337,"epoch_utc":null},{"commit":"e8847c998c91131acf5ee0f6485e9976c0fce3ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 16:35:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 16:35:26 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["tests/fixtures/centos-7.7/stat.json","tests/fixtures/freebsd12/stat.json","tests/fixtures/osx-10.14.6/stat.json","tests/fixtures/ubuntu-18.04/stat.json"]},"message":"update stat tests","epoch":1617060926,"epoch_utc":null},{"commit":"da88e49bae2f3fecff623f52c20bf994b653583e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 15:36:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 15:36:16 2021 -0700","stats":{"files_changed":2,"insertions":69,"deletions":29,"files":["docs/parsers/stat.md","jc/parsers/stat.py"]},"message":"add new examples","epoch":1617057376,"epoch_utc":null},{"commit":"65c3a12e5422782df40489c3c431677f5657dbf5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 15:32:04 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 15:32:04 2021 -0700","stats":{"files_changed":2,"insertions":35,"deletions":24,"files":["jc/parsers/stat.py","jc/utils.py"]},"message":"simplify None data scenario","epoch":1617057124,"epoch_utc":null},{"commit":"d8d600cc36bde4e6216b935f87a765599e896714","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 14:51:48 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 14:51:48 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"add reference to -h for help","epoch":1617054708,"epoch_utc":null},{"commit":"507999b117b024fed1ccf067bd5dc411dbeb268c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 14:45:13 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 14:45:13 2021 -0700","stats":{"files_changed":3,"insertions":34,"deletions":19,"files":["docs/utils.md","jc/utils.py","tests/test_utils.py"]},"message":"add stat command timestamp detection","epoch":1617054313,"epoch_utc":null},{"commit":"8ad164eb340e135eeeb10b721172916182f37e30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 12:33:54 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 12:33:54 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_cli.py"]},"message":"fix tests for compact output","epoch":1617046434,"epoch_utc":null},{"commit":"a507df140b245b83b1c46e8462b44e1145c42f2a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 12:25:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 12:25:58 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add compact json info","epoch":1617045958,"epoch_utc":null},{"commit":"8912a99986a977ee6ca7bbe2368f5033644577b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 12:25:48 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 12:25:48 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/cli.py"]},"message":"make default json output more compact","epoch":1617045948,"epoch_utc":null},{"commit":"1953f9882890cd0e8c515d43ce28c96f918b0ab4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 11:44:43 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 11:44:43 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"]},"message":"add version info. add json now supports unicode output","epoch":1617043483,"epoch_utc":null},{"commit":"7515218ddd2cdcfcebd67850140e842f2f121226","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 11:42:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 11:42:01 2021 -0700","stats":{"files_changed":2,"insertions":10,"deletions":14,"files":["jc/cli.py","jc/utils.py"]},"message":"use jc.utils for all warning and error messages. simply error and warning formatting.","epoch":1617043321,"epoch_utc":null},{"commit":"36c11201366cefedee4244fb71a4a9cc6507e6ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 10:59:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 10:59:56 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"formatting","epoch":1617040796,"epoch_utc":null},{"commit":"8fa0fe64d8418093c7f28cdc70a7f409956aeb04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 10:52:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 10:52:02 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"]},"message":"add -v to helptext. minor formatting","epoch":1617040322,"epoch_utc":null},{"commit":"c1a8201b140c65579ff9f8427322b67653bf3006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 10:24:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 10:24:58 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["EXAMPLES.md"]},"message":"add copyright","epoch":1617038698,"epoch_utc":null},{"commit":"398bbac48c8a716b1872843d671aa6ceaeba6a78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 10:23:52 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 10:23:52 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"simplify return value for parse_datetime_to_timestamp()","epoch":1617038632,"epoch_utc":null},{"commit":"ea71a42bbdd9b09a457727cfe763054625f7901a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 09:43:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 09:43:19 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/cli.py"]},"message":"formatting","epoch":1617036199,"epoch_utc":null},{"commit":"1c16d25b17a7282a62a5ebd9755df5569c57435f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 09:41:15 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 09:41:15 2021 -0700","stats":{"files_changed":2,"insertions":30,"deletions":9,"files":["README.md","jc/cli.py"]},"message":"add version option (-v) and copyright information. add 'ensure_ascii=False' to json dumps to properly show UTF-8 copyright character","epoch":1617036075,"epoch_utc":null},{"commit":"9d12ded889f656656267cbf7a91d71267201f736","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 16:32:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 16:32:17 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"help description change","epoch":1616801537,"epoch_utc":null},{"commit":"5312701515ecb3a10598bb9dcf2f73b7eae71b93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 16:29:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 16:29:10 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add - make all external python requirements optional","epoch":1616801350,"epoch_utc":null},{"commit":"808c7bc0a94ecfd160ee2b257e5feec347829a5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 16:14:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 16:14:35 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/xml.py"]},"message":"make xmltodict library optional","epoch":1616800475,"epoch_utc":null},{"commit":"4d394015f458f284d052ce2c1a0c8492916c5b3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 16:10:28 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 16:10:28 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/yaml.py"]},"message":"make ruamel.yaml library optional","epoch":1616800228,"epoch_utc":null},{"commit":"3638298af8ebc01d54aa3ab5668d0adedca957e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 15:54:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 15:54:45 2021 -0700","stats":{"files_changed":1,"insertions":53,"deletions":44,"files":["jc/cli.py"]},"message":"make pygments library optional","epoch":1616799285,"epoch_utc":null},{"commit":"5f00973e400629bd68c0ab60ed9005410278f855","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 15:38:57 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 15:38:57 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/date.py"]},"message":"remove parenthesis to normalize text for naive timezone detection","epoch":1616798337,"epoch_utc":null},{"commit":"0f6e2c14fcb69f664c29083ec5207326f842dfdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 14:57:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 14:57:19 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/parsers/upower.py"]},"message":"simplify timestamp failure logic","epoch":1616795839,"epoch_utc":null},{"commit":"51813da61994226ba40478825d47f80c23413349","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 14:56:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 14:56:45 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":4,"files":["jc/parsers/date.py"]},"message":"add offset timezones. fix timestamp logic on conversion failure","epoch":1616795805,"epoch_utc":null},{"commit":"e7751322ea195cac7f1921ba8e0364c442065d20","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 14:55:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 14:55:47 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/iw_scan.py"]},"message":"formatting","epoch":1616795747,"epoch_utc":null},{"commit":"26ef29843784ade3d55410be13300dd6f4c06890","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 14:55:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 14:55:16 2021 -0700","stats":{"files_changed":1,"insertions":10,"deletions":6,"files":["jc/utils.py"]},"message":"change return to always include the entire object but all keys may be None if conversion fails","epoch":1616795716,"epoch_utc":null},{"commit":"badaf8ce73d7deb0ec2be244e27b4bf8cddbea19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 14:00:33 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 14:00:33 2021 -0700","stats":{"files_changed":1,"insertions":14,"deletions":14,"files":["jc/utils.py"]},"message":"comment formatting","epoch":1616792433,"epoch_utc":null},{"commit":"b123a622039f3cc32643a3bfc0766154d660f8bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 13:11:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 13:11:34 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/utils.py"]},"message":"move locale change formats to the end of the list","epoch":1616789494,"epoch_utc":null},{"commit":"cfd77e42522aa2ebeada9f45ac99bd1d3414f782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 13:01:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 13:01:12 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/utils.py"]},"message":"reset locale to None on exception","epoch":1616788872,"epoch_utc":null},{"commit":"38f814072eac5370059f1b4203316eee41cf535b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 11:55:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 11:55:12 2021 -0700","stats":{"files_changed":1,"insertions":26,"deletions":8,"files":["jc/utils.py"]},"message":"better normalization of datetime string. better UTC detection. More formats supported with detected locale.","epoch":1616784912,"epoch_utc":null},{"commit":"a0db7754e384a0c95f2099bf894f3a22bd33c002","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 09:32:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 09:32:49 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add nixos install info","epoch":1616776369,"epoch_utc":null},{"commit":"f07620afc7dc0d0d605eb483ef36c5979b33cdfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 09:28:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 09:28:03 2021 -0700","stats":{"files_changed":3,"insertions":18,"deletions":7,"files":["README.md","jc/__init__.py","jc/cli.py"]},"message":"move version to jc.__init__.py\nadd -h option for help instead of always showing on error\nuse jc.utils.error_message for the following errors: missing/incorrect arguments, parser not found, missing piped data","epoch":1616776083,"epoch_utc":null},{"commit":"c1b0d27752726989c6051f683a1194941bee598c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 20:45:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 20:45:38 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":10,"files":["runtests.sh"]},"message":"remove old commented commands","epoch":1616730338,"epoch_utc":null},{"commit":"430a5108aa265d4df0e4584eade54759da864c61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 20:42:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 20:42:58 2021 -0700","stats":{"files_changed":3,"insertions":19,"deletions":60,"files":["runtests.sh","tests/test_last.py","tests/test_last2.py"]},"message":"move all tests to github actions","epoch":1616730178,"epoch_utc":null},{"commit":"111ce92fc9c33b82c7d1a1664dda046ea5993f6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 20:37:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 20:37:35 2021 -0700","stats":{"files_changed":4,"insertions":0,"deletions":1,"files":["tests/{localtest_date.py => test_date.py}","tests/{localtest_last.py => test_last2.py}","tests/{localtest_upower.py => test_upower.py}","tests/test_utils.py"]},"message":"attempt all tests in github actions with timezone correction","epoch":1616729855,"epoch_utc":null},{"commit":"c851e8a58d98b2a4907cf1e7cf7c7d8d8dc04dc6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 20:33:25 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 20:33:25 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_utils.py"]},"message":"force github action","epoch":1616729605,"epoch_utc":null},{"commit":"39f4bcd9b41450068903ea2843508586eccdf709","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 20:30:13 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Mar 25 20:30:13 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"Change Windows timezone\n\nuse \"Pacific Standard Time\"","epoch":1616729413,"epoch_utc":null},{"commit":"4a610c4c81493788b8351e8c74aabe819c981c02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:57:32 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 19:57:32 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["tests/test_utils.py"]},"message":"force github action","epoch":1616727452,"epoch_utc":null},{"commit":"89ee11945d4e2db107a33ef0d61e0c6015ac8ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:55:21 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Mar 25 19:55:21 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"Change timezone provider\n\nuses: szenius/set-timezone@v1.0","epoch":1616727321,"epoch_utc":null},{"commit":"dadb09b74a69d1852f8433e0e32ccdd67bd91181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:52:43 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 19:52:43 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_utils.py"]},"message":"force github action","epoch":1616727163,"epoch_utc":null},{"commit":"1b1f638b97dc5e6f2767183eb363b79ae3c9b3c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:49:03 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Mar 25 19:49:03 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":[".github/workflows/pythonapp.yml"]},"message":"Change timezone change provider\n\nchange to actions/set-timezone-action","epoch":1616726943,"epoch_utc":null},{"commit":"794fc4ed44d1565514303090403d68ba5d639cb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:43:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 19:43:16 2021 -0700","stats":{"files_changed":2,"insertions":36,"deletions":8,"files":["jc/utils.py","tests/test_utils.py"]},"message":"add parse_datetime_to_timestamp() tests","epoch":1616726596,"epoch_utc":null},{"commit":"72f735bf9211d7beddcf58819fe465722f5d7c5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:42:02 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Mar 25 19:42:02 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":[".github/workflows/pythonapp.yml"]},"message":"Set Timezone to America/Los_Angeles\n\nUsing zcong1993/setup-timezone","epoch":1616726522,"epoch_utc":null},{"commit":"912877f25ad562ed4cafe7b2d7446bd48b477ea2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 15:34:54 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 15:34:54 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"additional timezone info","epoch":1616711694,"epoch_utc":null},{"commit":"2772c5ae436ea437d833003372d53a3d3f955ea0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 15:10:07 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 15:10:07 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1616710207,"epoch_utc":null},{"commit":"a7ad24d2cb61d84cf2846f8fa43af31f0597043e","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","date":"Thu Mar 25 16:45:30 2021 -0400","commit_by":"Rasheed Elsaleh","commit_by_email":"rasheed@rebelliondefense.com","commit_by_date":"Thu Mar 25 18:09:47 2021 -0400","stats":{"files_changed":13,"insertions":772,"deletions":0,"files":["docgen.sh","docs/parsers/dir.md","jc/cli.py","jc/parsers/dir.py","tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-C.out","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-ODTC.out","tests/fixtures/windows-10/dir-Q.json","tests/fixtures/windows-10/dir-Q.out","tests/fixtures/windows-10/dir.json","tests/fixtures/windows-10/dir.out","tests/test_dir.py"]},"message":"Add dir parser\n\nAdd usage commands\n\nFix example options\n\nupdate dir.md","epoch":1616715930,"epoch_utc":null},{"commit":"a364a6a9faeb6aa290b790f3dec74e92b8670534","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 15:08:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 15:08:23 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"]},"message":"add note regarding calculated timestamps","epoch":1616710103,"epoch_utc":null},{"commit":"7b2dc86a8d974e7984fe2540f56a66c2b9386acd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 12:07:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 12:07:36 2021 -0700","stats":{"files_changed":1,"insertions":23,"deletions":19,"files":["EXAMPLES.md"]},"message":"update last example with new timestamp fields","epoch":1616699256,"epoch_utc":null},{"commit":"ad645636d07d0423253f19068a22b2a28251b05f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 11:43:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 11:43:30 2021 -0700","stats":{"files_changed":5,"insertions":86,"deletions":50,"files":["CHANGELOG","EXAMPLES.md","README.md","docs/parsers/uptime.md","jc/parsers/uptime.py"]},"message":"update uptime docs","epoch":1616697810,"epoch_utc":null},{"commit":"2f2f297b29fbe3172647a81db084b3564a441d40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 11:35:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 11:35:21 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["tests/fixtures/centos-7.7/uptime.json","tests/fixtures/osx-10.11.6/uptime.json","tests/fixtures/osx-10.14.6/uptime.json","tests/fixtures/ubuntu-18.04/uptime.json"]},"message":"update uptime fixtures with new fields","epoch":1616697321,"epoch_utc":null},{"commit":"099ae3fde03f8157298f6b412bdddb8bd56da09a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 11:17:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 11:17:44 2021 -0700","stats":{"files_changed":1,"insertions":26,"deletions":22,"files":["jc/parsers/uptime.py"]},"message":"fix issue when there is no data","epoch":1616696264,"epoch_utc":null},{"commit":"e9febe98ac5ec0e03791c5b6794446a2c3312fb1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 11:17:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 11:17:01 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["runtests.sh"]},"message":"add localtest partition lines for readability","epoch":1616696221,"epoch_utc":null},{"commit":"5fbd07cccf9fb697b996dcc3949eef5b1c09e655","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 10:31:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 10:31:12 2021 -0700","stats":{"files_changed":1,"insertions":59,"deletions":26,"files":["jc/parsers/uptime.py"]},"message":"rewrite of uptime parser including new fields","epoch":1616693472,"epoch_utc":null},{"commit":"5fed4698c2c1f1b7e05c5b4c51639f818e049b53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:57:04 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 21:57:04 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":6,"files":["docs/parsers/last.md","jc/parsers/last.py"]},"message":"update docs and version number","epoch":1616648224,"epoch_utc":null},{"commit":"ed7eb0983a4dfcc1d66a2957be3e10b2203d909e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:51:43 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 21:51:43 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/last.py"]},"message":"use parse_datetime_to_timestamp function instead of custom format string","epoch":1616647903,"epoch_utc":null},{"commit":"90c7e18e5fc5ea9fcf6157cc2656f47193d78411","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:50:32 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 21:50:32 2021 -0700","stats":{"files_changed":1,"insertions":16,"deletions":11,"files":["EXAMPLES.md"]},"message":"update date example","epoch":1616647832,"epoch_utc":null},{"commit":"953ab5c3bd0c8b6eef29b717edaf1aa2380c2b93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:29:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 21:29:30 2021 -0700","stats":{"files_changed":2,"insertions":1,"deletions":0,"files":["runtests.sh","tests/{test_upower.py => localtest_upower.py}"]},"message":"make upower tests local only","epoch":1616646570,"epoch_utc":null},{"commit":"699c97d8a07f7575454746159ac4d19981cd1a5c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:24:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 21:24:47 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add last parser info","epoch":1616646287,"epoch_utc":null},{"commit":"e4ca0de92a689ce93b91d86106a5da590226855a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:24:25 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 21:24:25 2021 -0700","stats":{"files_changed":8,"insertions":100,"deletions":0,"files":["tests/fixtures/generic/upower-i-c-locale.json","tests/fixtures/generic/upower-i-non-utc.json","tests/fixtures/generic/upower-i-utc.json",".../{upower-i-utc.out2 => upower-i-utc.out}","tests/fixtures/ubuntu-18.04/upower-d-clocale.json","tests/fixtures/ubuntu-18.04/upower-d.json","tests/fixtures/ubuntu-18.04/upower-i.json","tests/test_upower.py"]},"message":"add upower tests","epoch":1616646265,"epoch_utc":null},{"commit":"04745a36b84cc79e56bde2a0e92a4ee9ab4a1538","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 20:21:06 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 20:21:06 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":5,"files":["CHANGELOG","jc/utils.py"]},"message":"doc update","epoch":1616642466,"epoch_utc":null},{"commit":"5936940532b8b753e67c9f5cd9287f34cc84ae9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 20:20:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 20:20:53 2021 -0700","stats":{"files_changed":7,"insertions":136,"deletions":186,"files":["docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date-after-midnight.json","tests/fixtures/generic/date-before-midnight.json","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/fixtures/ubuntu-20.04/date2.json"]},"message":"rewrite of date parser using datetime library","epoch":1616642453,"epoch_utc":null},{"commit":"b3eb064b6753d6e894884e1c16054630c2396fe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 17:13:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 17:13:01 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"]},"message":"clarify format definition comments","epoch":1616631181,"epoch_utc":null},{"commit":"e4b41057e302074ac2a81ad8c36b6f95cd6b7db2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 17:02:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 17:02:17 2021 -0700","stats":{"files_changed":3,"insertions":24,"deletions":0,"files":[".../{upower-i.out => upower-i-c-locale.out}","tests/fixtures/generic/upower-i-non-utc.out",".../generic/{upower-i2.out => upower-i-utc.out2}"]},"message":"update upower fixture names","epoch":1616630537,"epoch_utc":null},{"commit":"1d41c46cc762ab0c78b819e56db7df39f1111d5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 17:01:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 17:01:56 2021 -0700","stats":{"files_changed":1,"insertions":34,"deletions":5,"files":["jc/utils.py"]},"message":"normalize datetime string to remove all timezones except UTC","epoch":1616630516,"epoch_utc":null},{"commit":"a5c444587b3f0874fcc2833dc4e759c2dc1c7834","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 15:13:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 15:13:10 2021 -0700","stats":{"files_changed":5,"insertions":28,"deletions":0,"files":["tests/fixtures/generic/date-after-midnight.json","tests/fixtures/generic/date-after-midnight.out","tests/fixtures/generic/date-before-midnight.json","tests/fixtures/generic/date-before-midnight.out","tests/localtest_date.py"]},"message":"add before and after midnight date tests","epoch":1616623990,"epoch_utc":null},{"commit":"a56f471be980be16e73d3a91e2b12aad26c6d38c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 15:05:22 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 15:05:22 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/fixtures/generic/upower-i2.out"]},"message":"update fixture to use UTC for better testing","epoch":1616623522,"epoch_utc":null},{"commit":"6a6b26ed8d97014c2a5c7d91a4cd9b23f49530fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 15:04:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 15:04:39 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/date.py"]},"message":"fix 12 to 24 hour conversion for midnight cases","epoch":1616623479,"epoch_utc":null},{"commit":"f62446c152d89f2d37b22ffe9d9de5b5c9fa7049","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 15:04:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 15:04:09 2021 -0700","stats":{"files_changed":1,"insertions":11,"deletions":10,"files":["jc/utils.py"]},"message":"rename variables. add another european time format","epoch":1616623449,"epoch_utc":null},{"commit":"56011f1f172344cab2a8e869e7a6df6e45c45874","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 14:14:22 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 14:14:22 2021 -0700","stats":{"files_changed":3,"insertions":73,"deletions":6,"files":["EXAMPLES.md","docs/parsers/upower.md","jc/parsers/upower.py"]},"message":"updated upower examples","epoch":1616620462,"epoch_utc":null},{"commit":"6d44091c80318fde6c09cd850e6dc5afde7fe799","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 14:01:06 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 14:01:06 2021 -0700","stats":{"files_changed":1,"insertions":13,"deletions":53,"files":["jc/utils.py"]},"message":"refactor parse_datetime_to_timestamp()","epoch":1616619666,"epoch_utc":null},{"commit":"440c458eb42925dffe2d7b026279468fa2fa1bb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 12:57:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 12:57:19 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"no need for ternary clause","epoch":1616615839,"epoch_utc":null},{"commit":"798250af6116441385339806c8f26bc9720ad302","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 12:49:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 12:49:53 2021 -0700","stats":{"files_changed":2,"insertions":18,"deletions":24,"files":["docs/parsers/upower.md","jc/parsers/upower.py"]},"message":"use jc.utils.parse_datetime_to_timestamp() function for timestamp creation","epoch":1616615393,"epoch_utc":null},{"commit":"c762de29c6491790908451aa20f6aa12fdfa9722","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 12:47:57 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 12:47:57 2021 -0700","stats":{"files_changed":2,"insertions":32,"deletions":2,"files":["docs/utils.md","jc/utils.py"]},"message":"doc updates","epoch":1616615277,"epoch_utc":null},{"commit":"0701e65e97165efd40ab2ae5087897de3588ea32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 12:36:54 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 12:36:54 2021 -0700","stats":{"files_changed":1,"insertions":106,"deletions":0,"files":["jc/utils.py"]},"message":"add parse_datetime_to_timestamp() function","epoch":1616614614,"epoch_utc":null},{"commit":"209d54e8b5be6476d896cee1a5274bd2b46219e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 07:39:11 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 07:39:11 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/parsers/date.md","jc/parsers/date.py"]},"message":"add hour_24 to schema docs","epoch":1616596751,"epoch_utc":null},{"commit":"2b38462de7d2fa61dd5d2a184e853279f1a9c84b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 23 14:59:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 23 14:59:03 2021 -0700","stats":{"files_changed":3,"insertions":33,"deletions":27,"files":["EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py"]},"message":"update examples","epoch":1616536743,"epoch_utc":null},{"commit":"1e8e5533162cb01053ee25e9dbc709a429e58070","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 23 14:47:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 23 14:47:44 2021 -0700","stats":{"files_changed":6,"insertions":31,"deletions":14,"files":["CHANGELOG","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/fixtures/ubuntu-20.04/date2.json","tests/localtest_date.py"]},"message":"add hour_24 field","epoch":1616536064,"epoch_utc":null},{"commit":"ab42e6bb15026d6c46e15197c62bc3e8ef95c80d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 23 14:10:42 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 23 14:10:42 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/date.md","jc/parsers/date.py"]},"message":"formatting","epoch":1616533842,"epoch_utc":null},{"commit":"680288454090f3c48c7f0580cdcb919c0b5a883e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 23 14:04:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 23 14:04:36 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["docs/parsers/date.md","jc/parsers/date.py"]},"message":"ensure period is always uppercase in dict value. update period documentation","epoch":1616533476,"epoch_utc":null},{"commit":"7cb8577b9655f258f2910e7e7bcf3266d4cbece0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 23 13:55:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 23 13:55:23 2021 -0700","stats":{"files_changed":3,"insertions":70,"deletions":48,"files":["docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/ubuntu-20.04/date2.out"]},"message":"correct epoch_utc calculation. Fix for 12 hour vs. 24 hour representation","epoch":1616532923,"epoch_utc":null},{"commit":"55810ccd1f17ef6a4b1cb72fc21f6cf990ef8bb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 22:10:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 22:10:35 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/upower.py"]},"message":"set epoch_dt conversion again if not C locale","epoch":1616476235,"epoch_utc":null},{"commit":"f9921720cd0b9b0d76d66e6eb5bfe43481f5f52b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 22:01:07 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 22:01:07 2021 -0700","stats":{"files_changed":3,"insertions":4,"deletions":94,"files":["runtests.sh","tests/test_date.py","tests/test_last2.py"]},"message":"revert to local testing for naive datetime objects","epoch":1616475667,"epoch_utc":null},{"commit":"cda1ebd271aa8fd1b716054a2149f876d8087230","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 21:53:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 21:53:50 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["tests/test_date.py","tests/test_last2.py"]},"message":"try tzset()","epoch":1616475230,"epoch_utc":null},{"commit":"6901e4a23aad0b58cbbfac86c61917115d115dfe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 21:49:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 21:49:26 2021 -0700","stats":{"files_changed":3,"insertions":89,"deletions":3,"files":["runtests.sh","tests/test_date.py","tests/test_last2.py"]},"message":"try setting timezone env variable before tests to ensure it is the same on all test systems","epoch":1616474966,"epoch_utc":null},{"commit":"6bc21d3c735edc7897e49afd2a5ea9e3aa56d7fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 21:05:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 21:05:39 2021 -0700","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["runtests.sh","tests/{test_date.py => localtest_date.py}","tests/localtest_last.py"]},"message":"fix date parser tests - local tests only since timezones may not match on github actions VMs","epoch":1616472339,"epoch_utc":null},{"commit":"1ef231e26a2898d2a01f341fb92014df92703f72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:57:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 20:57:36 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"add date parser updates","epoch":1616471856,"epoch_utc":null},{"commit":"3cd43f0f985a3b8a4e74bf5632bd8dac92d751c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:57:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 20:57:16 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/upower.md","jc/parsers/upower.py"]},"message":"formatting","epoch":1616471836,"epoch_utc":null},{"commit":"156501996688e62dd61a8456206218582a6cbe1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:56:57 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 20:56:57 2021 -0700","stats":{"files_changed":5,"insertions":85,"deletions":63,"files":["EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json"]},"message":"fix weekday numbering to be ISO 8601 compliant. Add naive calculated epoch timestamp field","epoch":1616471817,"epoch_utc":null},{"commit":"0a4de2d3a1c235d1ac2d6e59346e77761fe51885","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:22:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 20:22:35 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":2,"files":["docs/parsers/last.md","docs/parsers/upower.md"]},"message":"add naive datetime calculation info to docs","epoch":1616469755,"epoch_utc":null},{"commit":"a058f6c174e31f5e6040883bb544b83abd88c749","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:21:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 20:21:46 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/last.py"]},"message":"added naive epoch calculation info to docs","epoch":1616469706,"epoch_utc":null},{"commit":"d8e5d03b01a87704424f5259cf6bd977274fd6ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:21:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 20:21:12 2021 -0700","stats":{"files_changed":1,"insertions":20,"deletions":33,"files":["jc/parsers/upower.py"]},"message":"naive updated_epoch timestamp calculation added","epoch":1616469672,"epoch_utc":null},{"commit":"9dc62eff2eaaafec89c5b8797d8ca8e4c77a07d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 21 15:43:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 21 15:43:37 2021 -0700","stats":{"files_changed":1,"insertions":34,"deletions":21,"files":["jc/parsers/upower.py"]},"message":"remove epoch conversions","epoch":1616366617,"epoch_utc":null},{"commit":"d4fea17c57a97d6914624b06208b9439bf2eb05f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 21 14:03:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 21 14:03:36 2021 -0700","stats":{"files_changed":3,"insertions":13,"deletions":6,"files":["docgen.sh","docs/parsers/upower.md","jc/parsers/upower.py"]},"message":"use UTC when calculating epoch timestamp. reset time locale to default after changing","epoch":1616360616,"epoch_utc":null},{"commit":"3dd7a5b77ea708047bc12be9f2caddd9078723f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 19 11:00:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 19 11:00:50 2021 -0700","stats":{"files_changed":2,"insertions":230,"deletions":0,"files":["docgen.sh","docs/parsers/upower.md"]},"message":"add upower docs","epoch":1616176850,"epoch_utc":null},{"commit":"d77c90a3ba2036b216f4a612876ace988eafd217","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 19 10:43:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 19 10:43:20 2021 -0700","stats":{"files_changed":1,"insertions":114,"deletions":6,"files":["jc/parsers/upower.py"]},"message":"fix quoted values in detail level. Add examples","epoch":1616175800,"epoch_utc":null},{"commit":"01f0c20df09fd4aa12bd108928b97376b51ef31a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 18 16:59:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 18 16:59:46 2021 -0700","stats":{"files_changed":1,"insertions":27,"deletions":0,"files":["tests/fixtures/ubuntu-18.04/upower-d-clocale.out"]},"message":"add sample using C locale timestamp","epoch":1616111986,"epoch_utc":null},{"commit":"aafbe576b3b754de91591d9ec2dae9e9f827dee4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 18 16:59:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 18 16:59:19 2021 -0700","stats":{"files_changed":1,"insertions":137,"deletions":36,"files":["jc/parsers/upower.py"]},"message":"working parser and processor","epoch":1616111959,"epoch_utc":null},{"commit":"bd68ad40345fb1f69be0e0f87dc67134f826cd06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 14:31:51 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 17 14:31:51 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/upower.py"]},"message":"don't modify detail_type value since it is no longer a key","epoch":1616016711,"epoch_utc":null},{"commit":"bfee017c138bb30ec6af836685013b7124028974","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 14:21:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 17 14:21:19 2021 -0700","stats":{"files_changed":1,"insertions":61,"deletions":20,"files":["jc/parsers/upower.py"]},"message":"made the schema more explicit by hardcoding more items. still working on the schema","epoch":1616016079,"epoch_utc":null},{"commit":"61f532cfd0b7fbf14a58a0fd638bcbfb03fbde72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 13:30:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 17 13:30:47 2021 -0700","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["jc/parsers/upower.py"]},"message":"working history list","epoch":1616013047,"epoch_utc":null},{"commit":"58dbbb75b607d0b29be185c3b8c3f0d8af21ecad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 13:10:52 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 17 13:10:52 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":21,"files":["jc/parsers/upower.py"]},"message":"simplified logic","epoch":1616011852,"epoch_utc":null},{"commit":"8d88b91fcf5060d7d54f687efec3e3a606bab767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 12:49:48 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 17 12:49:48 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/upower.py"]},"message":"move if statements and generalize the history detail detection","epoch":1616010588,"epoch_utc":null},{"commit":"ad39fc60299089f56f37baac71820e50cbe87ed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 11:26:06 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 17 11:26:06 2021 -0700","stats":{"files_changed":6,"insertions":268,"deletions":0,"files":["jc/cli.py","jc/parsers/upower.py","tests/fixtures/generic/upower-i.out","tests/fixtures/generic/upower-i2.out","tests/fixtures/ubuntu-18.04/upower-d.out","tests/fixtures/ubuntu-18.04/upower-i.out"]},"message":"working upower parser. history lines are ignored","epoch":1616005566,"epoch_utc":null},{"commit":"89f1fd96e6b7aa0acf6272e4f3469005d4f7c6bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 16 12:12:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 16 12:12:01 2021 -0700","stats":{"files_changed":6,"insertions":87,"deletions":0,"files":["tests/fixtures/generic/acpi-V.json","tests/fixtures/generic/acpi-V2.json","tests/fixtures/generic/acpi-V3.json","tests/fixtures/generic/acpi-V4.json","tests/fixtures/ubuntu-18.04/acpi-V.json","tests/test_acpi.py"]},"message":"add acpi tests","epoch":1615921921,"epoch_utc":null},{"commit":"bd425f2493b68949c1fa02cd1d3289ec882d9b0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 16 11:45:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 16 11:45:56 2021 -0700","stats":{"files_changed":6,"insertions":321,"deletions":2,"files":["CHANGELOG","EXAMPLES.md","docgen.sh","docs/parsers/acpi.md","jc/cli.py","setup.py"]},"message":"version bump to v1.15.0. Add acpi docs","epoch":1615920356,"epoch_utc":null},{"commit":"46962ff02a0630766a927babc92e11ec91b1f789","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 12 16:45:15 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 12 16:45:15 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":11,"files":["jc/parsers/acpi.py"]},"message":"remove redundant lines","epoch":1615596315,"epoch_utc":null},{"commit":"e4cb88b05166815e8ad03b646bd3f2b1da7f0d4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 12 12:47:59 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 12 12:47:59 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/acpi.py"]},"message":"remove unneeded line-state assignment","epoch":1615582079,"epoch_utc":null},{"commit":"32840703dc1d88412712b08db1c9bdaebbc34450","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 12 08:55:04 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 12 08:55:04 2021 -0800","stats":{"files_changed":1,"insertions":8,"deletions":39,"files":["jc/parsers/acpi.py"]},"message":"remove redundant code","epoch":1615568104,"epoch_utc":null},{"commit":"1f7aafd0415a79e0547cc6f1c008c1918f8fb460","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 12 08:45:32 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 12 08:45:32 2021 -0800","stats":{"files_changed":3,"insertions":19,"deletions":9,"files":["jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out","tests/fixtures/generic/acpi-V4.out"]},"message":"fix for full charge batter case. Clean up battery object logic","epoch":1615567532,"epoch_utc":null},{"commit":"7378d5dce43f75440cb57903e8ae0c1c615b0782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 11 21:06:24 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 11 21:06:24 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/acpi.py"]},"message":"remove comment","epoch":1615525584,"epoch_utc":null},{"commit":"84f76866cdf76f67b34de999fd987de8a02f0306","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 11 21:05:29 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 11 21:05:29 2021 -0800","stats":{"files_changed":1,"insertions":197,"deletions":3,"files":["jc/parsers/acpi.py"]},"message":"working process function","epoch":1615525529,"epoch_utc":null},{"commit":"322da9ea6a1ceea1152d720797adb8f3a7dc1199","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 11 20:43:31 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 11 20:43:31 2021 -0800","stats":{"files_changed":2,"insertions":59,"deletions":12,"files":["jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out"]},"message":"working parser","epoch":1615524211,"epoch_utc":null},{"commit":"58645301ec111bfeb2a618f5f169cc734042dc5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 11 19:55:47 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 11 19:55:47 2021 -0800","stats":{"files_changed":6,"insertions":236,"deletions":1,"files":["jc/cli.py","jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out","tests/fixtures/generic/acpi-V2.out","tests/fixtures/generic/acpi-V3.out","tests/fixtures/ubuntu-18.04/acpi-V.out"]},"message":"add acpi command parser","epoch":1615521347,"epoch_utc":null},{"commit":"1e18dd30a824b0463f0cad86e0da7094c47d34f9","merge":"20f9b7f cc6a19a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 5 11:50:37 2021 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Mar 5 11:50:37 2021 -0800","message":"Merge pull request #102 from kellyjonbrazil/dev\n\nDev v1.14.4","epoch":1614973837,"epoch_utc":null},{"commit":"cc6a19adccea3e10243a166b87d852b6f95414b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 5 09:41:17 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 5 09:41:17 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/yaml.py"]},"message":"fix typo in comments","epoch":1614966077,"epoch_utc":null},{"commit":"2a5588b177a24d5b78a4b5a515aba515804b7baa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 5 09:38:22 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 5 09:38:22 2021 -0800","stats":{"files_changed":4,"insertions":13,"deletions":3,"files":["CHANGELOG","jc/cli.py","jc/parsers/yaml.py","setup.py"]},"message":"packaging fix for yaml parser and pyoxidizer","epoch":1614965902,"epoch_utc":null},{"commit":"20f9b7f88b97ed68aba46e102b8c7b72443b9c85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 25 11:09:56 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 25 11:09:56 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"fix typo","epoch":1614280196,"epoch_utc":null},{"commit":"d7e32313cd9776b4a6af38cc2819d6e4ef8c0d55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 25 11:09:14 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 25 11:09:14 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"fix typo","epoch":1614280154,"epoch_utc":null},{"commit":"fb5654d3c4549e84940e2518f2d214debdd42d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 11 11:27:54 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 11 11:27:54 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1613071674,"epoch_utc":null},{"commit":"258f1433b36a7ee117ac43953edb4fe964603e7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 11 11:27:01 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 11 11:27:01 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]},"message":"add locale info to readme","epoch":1613071621,"epoch_utc":null},{"commit":"fb723ae8bd7bb51f9a4bab380ec1bc54cda0445b","merge":"87b506d 283b89e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 10 11:01:57 2021 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Feb 10 11:01:57 2021 -0800","message":"Merge pull request #101 from kellyjonbrazil/dev\n\nDev v1.14.3","epoch":1612983717,"epoch_utc":null},{"commit":"283b89e37c38a3082203e43e38569c8b0bb11e12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 10 10:55:53 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 10 10:55:53 2021 -0800","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["CHANGELOG","jc/parsers/dig.py"]},"message":"simplify answer data logic","epoch":1612983353,"epoch_utc":null},{"commit":"f450f9eb8b7d382af316e88301e72af01a018be9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 10 10:47:56 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 10 10:47:56 2021 -0800","stats":{"files_changed":5,"insertions":74,"deletions":0,"files":["tests/fixtures/centos-7.7/hciconfig-a.json","tests/fixtures/centos-7.7/hciconfig.json","tests/fixtures/ubuntu-20.04/hciconfig-a.json","tests/fixtures/ubuntu-20.04/hciconfig.json","tests/test_hciconfig.py"]},"message":"add hciconfig tests","epoch":1612982876,"epoch_utc":null},{"commit":"b3f8cf99a4874335c6b43e105e0c1562c08256dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 10 08:03:36 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 10 08:03:36 2021 -0800","stats":{"files_changed":1,"insertions":15,"deletions":15,"files":["jc/parsers/hciconfig.py"]},"message":"work for both tabs and spaces","epoch":1612973016,"epoch_utc":null},{"commit":"4301ea8caea7c14f59bcddf09668d0198e1115a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 9 16:12:36 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 9 16:12:36 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/hciconfig.py"]},"message":"remove debug line","epoch":1612915956,"epoch_utc":null},{"commit":"c672d1c174a42ce44544dfaec0ebcf3c30fd7acf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 9 16:03:00 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 9 16:03:00 2021 -0800","stats":{"files_changed":7,"insertions":903,"deletions":22,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","docs/parsers/hciconfig.md","jc/parsers/hciconfig.py","man/jc.1"]},"message":"initial working hciconfig parser","epoch":1612915380,"epoch_utc":null},{"commit":"229e953a38471cdd41af0810577d324329840a4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 9 13:26:24 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 9 13:26:24 2021 -0800","stats":{"files_changed":7,"insertions":205,"deletions":2,"files":["jc/cli.py","jc/parsers/hciconfig.py","setup.py","tests/fixtures/centos-7.7/hciconfig-a.out","tests/fixtures/centos-7.7/hciconfig.out","tests/fixtures/ubuntu-20.04/hciconfig-a.out","tests/fixtures/ubuntu-20.04/hciconfig.out"]},"message":"initial add of hciconfig parser","epoch":1612905984,"epoch_utc":null},{"commit":"87b506dc9b4831d11b4fd04fd6849532db074f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 5 06:55:06 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 5 06:55:06 2021 -0800","stats":{"files_changed":7,"insertions":47,"deletions":4,"files":["CHANGELOG","jc/cli.py","jc/parsers/dig.py","setup.py","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/generic/dig-answer-spaces.out","tests/test_dig.py"]},"message":"fix for spaces in dig answer data","epoch":1612536906,"epoch_utc":null},{"commit":"15c9002d9eff0f52d873fb3ab35dfafd03a8e919","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 8 11:56:56 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 8 11:56:56 2021 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"simplify logic by taking out 'not' in JC_COLORS parsing","epoch":1610135816,"epoch_utc":null},{"commit":"042aaa61b96fc8472a8a460c49bde4cbbc359094","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 8 08:23:29 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 8 08:23:29 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"minor updates","epoch":1610123009,"epoch_utc":null},{"commit":"ef856c6ba5774cd8ec23acd71496846e794e3872","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 7 12:09:41 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 7 12:09:41 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"clarify -q option","epoch":1610050181,"epoch_utc":null},{"commit":"9cf5be73e3f975132d1ffbef412638b941a5664f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 16:19:47 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 6 16:19:47 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]},"message":"typo fix","epoch":1609978787,"epoch_utc":null},{"commit":"63fc149e2a097cbde60c2ce1aeb102d9becabd9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 16:17:25 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 6 16:17:25 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]},"message":"typo fix","epoch":1609978645,"epoch_utc":null},{"commit":"3c25839350800c7e7d2c48fc032bb21efa0ac213","merge":"03c0295 58246e3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 14:37:24 2021 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Jan 6 14:37:24 2021 -0800","message":"Merge pull request #98 from kellyjonbrazil/dev\n\nDev v1.14.1","epoch":1609972644,"epoch_utc":null},{"commit":"58246e33b71bae0ca4a42ad5bdf31134948b1014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 14:33:38 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 6 14:33:38 2021 -0800","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","README.md"]},"message":"update compatibility info and changelog date","epoch":1609972418,"epoch_utc":null},{"commit":"8b1407c7068e2105a83992bbb026138ea67bc07c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 14:22:26 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 6 14:22:26 2021 -0800","stats":{"files_changed":3,"insertions":59,"deletions":10,"files":["runtests.sh","tests/localtest_last.py","tests/test_last.py"]},"message":"pull env-specific tests from CI/CD and run locally only","epoch":1609971746,"epoch_utc":null},{"commit":"2fde4a4e2299b98a9958e3a55849c6791e4b17dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 12:07:58 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 6 12:07:58 2021 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["EXAMPLES.md","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]},"message":"doc updates","epoch":1609963678,"epoch_utc":null},{"commit":"60b9e9798286121399d0f8b75d63ab0f3312c9bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 12:02:47 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 6 12:02:47 2021 -0800","stats":{"files_changed":12,"insertions":80,"deletions":38,"files":["docs/parsers/last.md","jc/parsers/last.py","tests/fixtures/centos-7.7/last-crash.json","tests/fixtures/centos-7.7/last-w.json","tests/fixtures/centos-7.7/last-wF.json","tests/fixtures/centos-7.7/last-wF.out","tests/fixtures/centos-7.7/last.json","tests/fixtures/fedora32/last.json","tests/fixtures/osx-10.14.6/last.json","tests/fixtures/ubuntu-18.04/last-w.json","tests/fixtures/ubuntu-18.04/last.json","tests/fixtures/ubuntu-20.04/last-F.json"]},"message":"last parser enhancements: augment hostname with CONSOLE for GUI login, add convenience fields when -F is used: login_epoch, logout_epoch, duration_seconds, calculate duration to hours:minutes","epoch":1609963367,"epoch_utc":null},{"commit":"0adac79c0f2a22b31dfef1432a029af06132467b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 11:09:59 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 6 11:09:59 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"Add last parser enhancements","epoch":1609960199,"epoch_utc":null},{"commit":"9f485b5981a2ce49ac699b9dad39993c5605ae18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 11:09:37 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 6 11:09:37 2021 -0800","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["jc/parsers/iw_scan.py","tests/fixtures/centos-7.7/iw-scan0.json","tests/fixtures/centos-7.7/iw-scan1.json"]},"message":"change mac_address fieldname to bssid. Add credit to Phillip","epoch":1609960177,"epoch_utc":null},{"commit":"db17d21b8f9b2f899760e648f1483d33d0bcf47a","merge":"5885b96 996d394","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 10:42:30 2021 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Jan 6 10:42:30 2021 -0800","message":"Merge pull request #97 from pschmitt/iw_scan_fix_space_detection\n\niw_scan: Improve detection of lines starting with spaces","epoch":1609958550,"epoch_utc":null},{"commit":"996d394e89c732f327323ca340fce405bd5fb2e4","author":"Philipp Schmitt","author_email":"philipp@schmitt.co","date":"Wed Jan 6 10:32:17 2021 +0100","commit_by":"Philipp Schmitt","commit_by_email":"philipp@schmitt.co","commit_by_date":"Wed Jan 6 10:32:17 2021 +0100","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/iw_scan.py"]},"message":"iw_scan: Improve detection of lines starting with spaces","epoch":1609957937,"epoch_utc":null},{"commit":"5885b960f9b33a95ecec9f4a33233c2f8682fbc4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 22:12:13 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 22:12:13 2021 -0800","stats":{"files_changed":3,"insertions":7,"deletions":2,"files":["CHANGELOG","README.md","man/jc.1"]},"message":"doc updates","epoch":1609913533,"epoch_utc":null},{"commit":"79987b35f332e287567e103f25cf91cb50e040c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 22:07:22 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 22:07:22 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"]},"message":"formatting","epoch":1609913242,"epoch_utc":null},{"commit":"661b3ef311ad26678030c70c11f2f955667311a4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 22:04:44 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 22:04:44 2021 -0800","stats":{"files_changed":4,"insertions":94,"deletions":2,"files":["EXAMPLES.md","README.md","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]},"message":"doc updates","epoch":1609913084,"epoch_utc":null},{"commit":"fb422726a8366c7133f0712d3b05a26620eea785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 21:55:06 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 21:55:06 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["tests/fixtures/ubuntu-20.04/last-F.json","tests/fixtures/ubuntu-20.04/last-F.out"]},"message":"update test to add 'down' condition","epoch":1609912506,"epoch_utc":null},{"commit":"4fb6f3ea59c52515926a51a006e65a1c18e57720","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 21:51:30 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 21:51:30 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/last.py"]},"message":"add support for down in addition to crash","epoch":1609912290,"epoch_utc":null},{"commit":"f78fe771e1c2fb4691858fa7f27b1febe5f8c6c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 21:38:51 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 21:38:51 2021 -0800","stats":{"files_changed":3,"insertions":48,"deletions":0,"files":["tests/fixtures/centos-7.7/iw-scan0.json","tests/fixtures/centos-7.7/iw-scan1.json","tests/test_iw_scan.py"]},"message":"add iw-scan tests","epoch":1609911531,"epoch_utc":null},{"commit":"567b8872538ac9f6b384b98741acd9794229d513","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 21:26:43 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 21:26:43 2021 -0800","stats":{"files_changed":3,"insertions":252,"deletions":12,"files":["docgen.sh","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]},"message":"doc updates","epoch":1609910803,"epoch_utc":null},{"commit":"e516e6b9466b29d40ec10070dd61551180eeef90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 21:17:40 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 21:17:40 2021 -0800","stats":{"files_changed":1,"insertions":29,"deletions":1,"files":["jc/parsers/iw_scan.py"]},"message":"fix country/environment fields and process int/float conversions","epoch":1609910260,"epoch_utc":null},{"commit":"62748676aae3d5955191ed267215df33a5bd3a4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 20:44:22 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 20:44:22 2021 -0800","stats":{"files_changed":2,"insertions":225,"deletions":0,"files":["jc/cli.py","jc/parsers/iw_scan.py"]},"message":"initial iw-scan parser","epoch":1609908262,"epoch_utc":null},{"commit":"7351c72e45242b9eb08c51dea7b6fccf12366dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 15:16:40 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 15:16:40 2021 -0800","stats":{"files_changed":6,"insertions":402,"deletions":1,"files":["jc/parsers/last.py","tests/fixtures/centos-7.7/last-crash.json","tests/fixtures/centos-7.7/last-crash.out","tests/fixtures/centos-7.7/last-wF.json","tests/fixtures/centos-7.7/last-wF.out","tests/test_last.py"]},"message":"add fixes and tests for entries that contain 'crash'","epoch":1609888600,"epoch_utc":null},{"commit":"2b7405c5e21db2488fc48b58f6c65cff947ca95d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 13:58:38 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 13:58:38 2021 -0800","stats":{"files_changed":5,"insertions":23,"deletions":16,"files":["CHANGELOG","README.md","docs/parsers/last.md","jc/parsers/last.py","man/jc.1"]},"message":"doc updates","epoch":1609883918,"epoch_utc":null},{"commit":"e2c77cb935a5bd95dbe930d424e5a02e88e1fa76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 13:00:38 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 13:00:38 2021 -0800","stats":{"files_changed":3,"insertions":15,"deletions":1,"files":["jc/parsers/last.py","tests/fixtures/ubuntu-20.04/last-F.json","tests/test_last.py"]},"message":"add test for last -F output","epoch":1609880438,"epoch_utc":null},{"commit":"7ac621e4c916373a03f379425033cb2d81a03578","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 12:29:29 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 12:29:29 2021 -0800","stats":{"files_changed":3,"insertions":36,"deletions":6,"files":["docs/parsers/last.md","jc/parsers/last.py","tests/fixtures/ubuntu-20.04/last-F.out"]},"message":"add -F support","epoch":1609878569,"epoch_utc":null},{"commit":"d8b5d6c66ced19dc16f2b4975d2293a903732ffe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 09:45:37 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 09:45:37 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/cli.py","setup.py"]},"message":"version bump to 1.14.1","epoch":1609868737,"epoch_utc":null},{"commit":"22b461eb4b1ca86ea9e8c1fde8a2c312d1526b5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 09:42:05 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 09:42:05 2021 -0800","stats":{"files_changed":7,"insertions":47,"deletions":12,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/test_date.py"]},"message":"Add period field for en_US.UTF-8 locale","epoch":1609868525,"epoch_utc":null},{"commit":"b37ee8555a2a108625a834a7990bc3320e79b08d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 4 18:02:07 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 4 18:02:07 2021 -0800","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update","epoch":1609812127,"epoch_utc":null},{"commit":"1d0ad2f045733c5c690738d49951fdb9bcd3d66d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 4 18:01:16 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 4 18:01:16 2021 -0800","stats":{"files_changed":123,"insertions":312,"deletions":312,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat_freebsd_osx.py","jc/parsers/netstat_linux.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"doc fixes","epoch":1609812076,"epoch_utc":null},{"commit":"ceccfb2c815f57f1b6fd81f891d8b495de23f9f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 4 17:05:26 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 4 17:05:26 2021 -0800","stats":{"files_changed":3,"insertions":2036,"deletions":0,"files":["tests/fixtures/centos-7.7/iw-scan0.out","tests/fixtures/centos-7.7/iw-scan1.out","tests/fixtures/ubuntu-20.04/date.out"]},"message":"add test output for iw-scan and date on ubuntu 20.04","epoch":1609808726,"epoch_utc":null},{"commit":"03c02953cd7e3327b391f799c37a2990eb2cb24c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 1 12:01:56 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 1 12:01:56 2021 -0800","stats":{"files_changed":2,"insertions":96,"deletions":0,"files":["docgen.sh","docs/parsers/wc.md"]},"message":"add wc doc","epoch":1609531316,"epoch_utc":null},{"commit":"f254a0eaa16fcda316f7a75424ee359058204b03","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 16:45:10 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 31 16:45:10 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump","epoch":1609461910,"epoch_utc":null},{"commit":"9e3b88727cd439e15f235dddb9dd5796e010797a","merge":"439871e b122174","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 16:40:36 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Dec 31 16:40:36 2020 -0800","message":"Merge pull request #91 from kellyjonbrazil/dev\n\nDev v1.14.0","epoch":1609461636,"epoch_utc":null},{"commit":"b12217466e906829d19be4cfd80dfe7cf4008e57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 16:37:47 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 31 16:37:47 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"spelling","epoch":1609461467,"epoch_utc":null},{"commit":"8b9c932f9b05295e63b3e7d0073f243458fd4dd9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 16:37:14 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 31 16:37:14 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"update date","epoch":1609461434,"epoch_utc":null},{"commit":"5986ce03db6fcd1aa0f7b064eaa96c2120c06d2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 16:36:27 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 31 16:36:27 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add printenv info","epoch":1609461387,"epoch_utc":null},{"commit":"a7b0e936e400d2f9e55629e2d722cc002e035e9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 14:21:24 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 31 14:21:24 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"add vdir and printenv info","epoch":1609453284,"epoch_utc":null},{"commit":"cb0221142455a6bcb904fbe9ade657be45815b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 14:19:45 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 31 14:19:45 2020 -0800","stats":{"files_changed":4,"insertions":61,"deletions":2,"files":["jc/parsers/wc.py","tests/fixtures/osx-10.14.6/wc-stdin.json","tests/fixtures/osx-10.14.6/wc-stdin.out","tests/test_wc.py"]},"message":"add wc tests","epoch":1609453185,"epoch_utc":null},{"commit":"bd443bf39227515ae5f8df65d07b30268dcc90a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 14:11:25 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 31 14:11:25 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/env.py"]},"message":"add printenv to env docs","epoch":1609452685,"epoch_utc":null},{"commit":"1f547edd361e66b19ccbcb59f6ba0ae78f6080ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 14:10:56 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 31 14:10:56 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/env.md"]},"message":"add printenv to env docs","epoch":1609452656,"epoch_utc":null},{"commit":"e4bac3a493705b09e301ddc90dd1b0cee7467c3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 14:10:37 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 31 14:10:37 2020 -0800","stats":{"files_changed":9,"insertions":378,"deletions":0,"files":["CHANGELOG","EXAMPLES.md","README.md","jc/cli.py","jc/parsers/wc.py","tests/fixtures/centos-7.7/wc.json","tests/fixtures/centos-7.7/wc.out","tests/fixtures/osx-10.14.6/wc.json","tests/fixtures/osx-10.14.6/wc.out"]},"message":"add wc parser","epoch":1609452637,"epoch_utc":null},{"commit":"5e6bfa681aff03fbd683f81a9f4daa56b49d1344","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 13:18:53 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 31 13:18:53 2020 -0800","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["README.md","docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"add vdir info","epoch":1609449533,"epoch_utc":null},{"commit":"276160125e01553c75eaad68530177bcf4f9004d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 14:04:49 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 30 14:04:49 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"]},"message":"add new commands to README","epoch":1609365889,"epoch_utc":null},{"commit":"d4ae5543f2d5f28a0db5b8e2e19993c21c5d960c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 13:11:13 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 30 13:11:13 2020 -0800","stats":{"files_changed":3,"insertions":39,"deletions":0,"files":["tests/fixtures/centos-7.7/hash.json","tests/fixtures/centos-7.7/hash.out","tests/test_hash.py"]},"message":"add hash tests","epoch":1609362673,"epoch_utc":null},{"commit":"55f360e267fdfcfef0c124ed6b88535cc181a8b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 12:58:52 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 30 12:58:52 2020 -0800","stats":{"files_changed":6,"insertions":260,"deletions":0,"files":["CHANGELOG","EXAMPLES.md","docgen.sh","docs/parsers/hash.md","jc/cli.py","jc/parsers/hash.py"]},"message":"add hash command parser","epoch":1609361932,"epoch_utc":null},{"commit":"fdedab2a0cf5af15df5803d87302397dd6d71741","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 11:33:29 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 30 11:33:29 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/cksum.py","jc/parsers/hashsum.py"]},"message":"description updates","epoch":1609356809,"epoch_utc":null},{"commit":"a9be42e3031ab0d697cff67a9e384caa2265a3ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 11:28:42 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 30 11:28:42 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"specify parser warnings for quiet option","epoch":1609356522,"epoch_utc":null},{"commit":"6da9510e46e84ec1cb93384825184d2996cf0e08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 11:22:17 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 30 11:22:17 2020 -0800","stats":{"files_changed":9,"insertions":482,"deletions":0,"files":["tests/fixtures/centos-7.7/cksum.json","tests/fixtures/centos-7.7/cksum.out","tests/fixtures/centos-7.7/sum.json","tests/fixtures/centos-7.7/sum.out","tests/fixtures/osx-10.14.6/cksum.json","tests/fixtures/osx-10.14.6/cksum.out","tests/fixtures/osx-10.14.6/sum.json","tests/fixtures/osx-10.14.6/sum.out","tests/test_cksum.py"]},"message":"add cksum tests","epoch":1609356137,"epoch_utc":null},{"commit":"0431798178740b03cdefececc6df958e5adf62fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 11:02:02 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 30 11:02:02 2020 -0800","stats":{"files_changed":7,"insertions":229,"deletions":3,"files":["CHANGELOG","docgen.sh","docs/parsers/cksum.md","docs/parsers/hashsum.md","jc/cli.py","jc/parsers/cksum.py","jc/parsers/hashsum.py"]},"message":"add cksum parser","epoch":1609354922,"epoch_utc":null},{"commit":"62432f3c484e74acb2b2dfd15d448b3f1b5d53c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 09:59:54 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 30 09:59:54 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/hashsum.py"]},"message":"update hashsum description","epoch":1609351194,"epoch_utc":null},{"commit":"9fbbc30906b597e6afaf2030015a7a694d85f79e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 13:09:03 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 29 13:09:03 2020 -0800","stats":{"files_changed":2,"insertions":20,"deletions":0,"files":["docs/parsers/hashsum.md","jc/parsers/hashsum.py"]},"message":"add supported commands to docs","epoch":1609276143,"epoch_utc":null},{"commit":"d1567d1f622902053f3df58645b4e39532e0c30a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 13:05:04 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 29 13:05:04 2020 -0800","stats":{"files_changed":3,"insertions":104,"deletions":0,"files":["CHANGELOG","docgen.sh","docs/parsers/hashsum.md"]},"message":"add hashsum documentation","epoch":1609275904,"epoch_utc":null},{"commit":"6ca1f5970b3a518615a54ee7fcbc1bddab2db331","merge":"1c880b9 3b7d54c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 12:59:02 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 29 12:59:02 2020 -0800","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev","epoch":1609275542,"epoch_utc":null},{"commit":"1c880b9e24ca53cd592cec1dbc52301308290fb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 12:58:04 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 29 12:58:04 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_hashsum.py"]},"message":"force git tests","epoch":1609275484,"epoch_utc":null},{"commit":"3b7d54c720dfc93637328cf06eb10a85447c8793","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 12:55:30 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Dec 29 12:55:30 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"add python 3.9","epoch":1609275330,"epoch_utc":null},{"commit":"44a740605705bd0ecfde2a6bcc7a826e1010dcf0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 12:51:43 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 29 12:51:43 2020 -0800","stats":{"files_changed":6,"insertions":87,"deletions":0,"files":["tests/fixtures/centos-7.7/md5sum.json","tests/fixtures/centos-7.7/sha256sum.json","tests/fixtures/centos-7.7/sha384sum.json","tests/fixtures/osx-10.14.6/md5.json","tests/fixtures/osx-10.14.6/shasum.json","tests/test_hashsum.py"]},"message":"add hashsum tests","epoch":1609275103,"epoch_utc":null},{"commit":"8157dcfdb1868548b7c8ca692e6be25f80bb2c2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 12:25:20 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 29 12:25:20 2020 -0800","stats":{"files_changed":1,"insertions":36,"deletions":11,"files":["jc/parsers/hashsum.py"]},"message":"fix for files with spaces in the name","epoch":1609273520,"epoch_utc":null},{"commit":"28762aea15cabc9cd8293d725e7f1f0550f8e15d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 11:36:20 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 29 11:36:20 2020 -0800","stats":{"files_changed":7,"insertions":524,"deletions":0,"files":["jc/cli.py","jc/parsers/hashsum.py","tests/fixtures/centos-7.7/md5sum.out","tests/fixtures/centos-7.7/sha256sum.out","tests/fixtures/centos-7.7/sha384sum.out","tests/fixtures/osx-10.14.6/md5.out","tests/fixtures/osx-10.14.6/shasum.out"]},"message":"add hashsum parser","epoch":1609270580,"epoch_utc":null},{"commit":"439871ea9f6b055a407e1faaf47e4f56d1829501","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 19 07:07:30 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 19 07:07:30 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add ubuntu","epoch":1605798450,"epoch_utc":null},{"commit":"c9180b005c0547c8cbfe4809e66894f1123b0809","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Aug 30 11:58:42 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Aug 30 11:58:42 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1598813922,"epoch_utc":null},{"commit":"b14e0725f86853f0113116b1c06f54aaa563f365","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Aug 30 11:57:55 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Aug 30 11:57:55 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add ansible plugin blog post link","epoch":1598813875,"epoch_utc":null},{"commit":"70fe3dcb4d5b97aba1d6c6dcd5088fecb27af181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 26 15:21:45 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 26 15:21:45 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1598480505,"epoch_utc":null},{"commit":"8c554604a42a3ea7ca9131b65c64fd3ceb95f906","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 26 14:41:01 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 26 14:41:01 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"formatting","epoch":1598478061,"epoch_utc":null},{"commit":"a0a35454bd2831c116cb598c686150b883412f94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 26 14:39:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 26 14:39:40 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add link to the web demo","epoch":1598477980,"epoch_utc":null},{"commit":"e8467e2af5b0c3f14832a9e6d4a96f219c27f3f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 20 10:57:13 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 20 10:57:13 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"remove extra space","epoch":1597946233,"epoch_utc":null},{"commit":"7515deb5669ef04623e9cbf58653b30c99a96430","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 20 10:39:34 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 20 10:39:34 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add ansible install command","epoch":1597945174,"epoch_utc":null},{"commit":"ed9e52af241b609ee7f5d1b835c9f6c5306cd3c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 20 10:37:15 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 20 10:37:15 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"spelling","epoch":1597945035,"epoch_utc":null},{"commit":"592a3804104628c790997747a778b3b39d076dfe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 20 10:35:49 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 20 10:35:49 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]},"message":"add Ansible note","epoch":1597944949,"epoch_utc":null},{"commit":"1a458d2d5b4c16c0ad90671727ae9b19939e7f23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 11 07:00:07 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Aug 11 07:00:07 2020 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py"]},"message":"update link","epoch":1597154407,"epoch_utc":null},{"commit":"0e4cf53b92ff951a6390a4dacf8833c272473583","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 11 06:36:30 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Aug 11 06:36:30 2020 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/readme.md","jc/__init__.py"]},"message":"add parser docs link","epoch":1597152990,"epoch_utc":null},{"commit":"e2f06ccb33177173d984bc0cdda1aae1a3f4c681","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 6 13:00:33 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 6 13:00:33 2020 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"formatting","epoch":1596744033,"epoch_utc":null},{"commit":"8abff004cd8e09529e5d94be4883308152e11565","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 6 12:59:30 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 6 12:59:30 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/yaml.md"]},"message":"indentation fix","epoch":1596743970,"epoch_utc":null},{"commit":"c4a0e2e3feb2e51eaaaa202064f352229017bcc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 6 12:58:53 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 6 12:58:53 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/yaml.py"]},"message":"fix indentation","epoch":1596743933,"epoch_utc":null},{"commit":"4f10f79c73f8b3d6edc2c83e6a12d0ddc1a78555","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 6 12:55:24 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 6 12:55:24 2020 -0700","stats":{"files_changed":2,"insertions":4,"deletions":8,"files":["docs/parsers/uname.md","jc/parsers/uname.py"]},"message":"standardize doc","epoch":1596743724,"epoch_utc":null},{"commit":"69e7a560fd82337570c4bb4aa4780f513c18bd94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 6 07:48:08 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 6 07:48:08 2020 -0700","stats":{"files_changed":4,"insertions":8,"deletions":0,"files":["docs/parsers/env.md","docs/parsers/history.md","jc/parsers/env.py","jc/parsers/history.py"]},"message":"add output info to docs","epoch":1596725288,"epoch_utc":null},{"commit":"59b105580805d78516abe1c1069d52a6f0a8131a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 16:51:58 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 16:51:58 2020 -0700","stats":{"files_changed":97,"insertions":564,"deletions":269,"files":["docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"enhance docs","epoch":1596671518,"epoch_utc":null},{"commit":"6ed48c6289214fe5114971c80772efdf9ac1b8c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 15:34:17 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 15:34:17 2020 -0700","stats":{"files_changed":16,"insertions":88,"deletions":37,"files":["jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py"]},"message":"enhance docs","epoch":1596666857,"epoch_utc":null},{"commit":"f2fb4d3f415fbc1c09eec6dedcf70fba78406b3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 15:10:48 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 15:10:48 2020 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","jc/parsers/airport.py","jc/parsers/airport_s.py"]},"message":"improve docs","epoch":1596665448,"epoch_utc":null},{"commit":"6aeea59ea84e56434e87ddf89cd5d4435b99e140","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 15:08:42 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 15:08:42 2020 -0700","stats":{"files_changed":2,"insertions":14,"deletions":8,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md"]},"message":"doc updates","epoch":1596665322,"epoch_utc":null},{"commit":"d016f3bbb307f85bd0f93a508323941a8bb9d872","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 15:07:33 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 15:07:33 2020 -0700","stats":{"files_changed":2,"insertions":14,"deletions":8,"files":["jc/parsers/airport.py","jc/parsers/airport_s.py"]},"message":"improve documentation","epoch":1596665253,"epoch_utc":null},{"commit":"7131c297180bfa195d0209d46fc70ab8e67efe2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 13:32:59 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 13:32:59 2020 -0700","stats":{"files_changed":114,"insertions":686,"deletions":116,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"add module usage info to docs","epoch":1596659579,"epoch_utc":null},{"commit":"7432442983841b42c8d3d2459b55596c05d1e100","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 13:31:52 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 13:31:52 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["docs/parsers/blkid.md"]},"message":"add usage","epoch":1596659512,"epoch_utc":null},{"commit":"5344883394a0662ee16bb5edd68df8e4410025f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 11:35:52 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 11:35:52 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"]},"message":"spelling/add ping parser update","epoch":1596652552,"epoch_utc":null},{"commit":"3fcd2f6c2e015b0e65e7261c8e591ccd8a7d0e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 11:34:29 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 11:34:29 2020 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/cli.py","setup.py"]},"message":"version bump","epoch":1596652469,"epoch_utc":null},{"commit":"f3d84bd5bf06349b681e9b72d904676e9f6bca19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 11:28:37 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 11:28:37 2020 -0700","stats":{"files_changed":6,"insertions":21,"deletions":3,"files":["CHANGELOG","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/fixtures/debian10/crontab-u.json","tests/fixtures/debian10/crontab-u.out","tests/test_crontab_u.py"]},"message":"tighten crontab and crontab-u parser variable detection","epoch":1596652117,"epoch_utc":null},{"commit":"549780c23220bca3bcab58d7329ba8d44d1be55d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 11:04:07 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 11:04:07 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"add debian/apt-get info","epoch":1596650647,"epoch_utc":null},{"commit":"2a6da69b82aa9ade6c01d490a32b57b415c62a9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 09:58:01 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 09:58:01 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ping.py"]},"message":"improve linux/bsd check","epoch":1596646681,"epoch_utc":null},{"commit":"5c538816cf76686bac1a86a7c06e24664d25a2dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 4 17:36:35 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Aug 4 17:36:35 2020 -0700","stats":{"files_changed":9,"insertions":55,"deletions":4,"files":["CHANGELOG","jc/cli.py","jc/parsers/ping.py","setup.py","tests/fixtures/pi/ping-ip-O-D.json","tests/fixtures/pi/ping-ip-O-D.out","tests/fixtures/pi/ping-ip-O.json","tests/fixtures/pi/ping-ip-O.out","tests/test_ping.py"]},"message":"ping parser fix for raspberry pi","epoch":1596587795,"epoch_utc":null},{"commit":"7b8b378a7df397c488fc54fbd6e77f5f3f23c10c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 3 12:39:18 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 3 12:39:18 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"]},"message":"add pydoc-markdown version requirement","epoch":1596483558,"epoch_utc":null},{"commit":"e30a75e25c4b43969bf9f874f89e18512a5e3a34","merge":"dda517a 85ad5cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 3 10:18:39 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Aug 3 10:18:39 2020 -0700","message":"Merge pull request #76 from kellyjonbrazil/dev\n\nDev v1.13.2","epoch":1596475119,"epoch_utc":null},{"commit":"85ad5cfd0bfb903ce35e37b343244fed88dbd979","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 3 10:14:13 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 3 10:14:13 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"date change","epoch":1596474853,"epoch_utc":null},{"commit":"88b9d5068c5bac0691fedb543114300d6afc7131","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 3 09:26:37 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 3 09:26:37 2020 -0700","stats":{"files_changed":6,"insertions":74,"deletions":15,"files":["EXAMPLES.md","README.md","docs/parsers/date.md","tests/fixtures/generic/date.json","tests/fixtures/generic/date.out","tests/test_date.py"]},"message":"finish date parser","epoch":1596471997,"epoch_utc":null},{"commit":"f8c4948a090642db595eda2ba2ea0773e560ba67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 16:52:48 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 16:52:48 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/date.py"]},"message":"remove comment","epoch":1596239568,"epoch_utc":null},{"commit":"412322447f019aec0b64888631bc965e9f21186d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 16:51:05 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 16:51:05 2020 -0700","stats":{"files_changed":1,"insertions":48,"deletions":17,"files":["jc/parsers/date.py"]},"message":"add month_num and weekday_num fields","epoch":1596239465,"epoch_utc":null},{"commit":"d4f289e40fae621b87f0d49451fca4c3dde216b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 14:47:06 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 14:47:06 2020 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/date.md","jc/parsers/date.py"]},"message":"documentation fixup","epoch":1596232026,"epoch_utc":null},{"commit":"e1f3feb8f529172ae26ce4c7a66a4a1c21b722ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 14:45:30 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 14:45:30 2020 -0700","stats":{"files_changed":1,"insertions":13,"deletions":10,"files":["jc/parsers/date.py"]},"message":"cover empty data case in process","epoch":1596231930,"epoch_utc":null},{"commit":"37d3bc699c7be16955be06840d242980f05f1074","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 14:39:02 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 14:39:02 2020 -0700","stats":{"files_changed":6,"insertions":224,"deletions":1,"files":["CHANGELOG","docgen.sh","docs/parsers/date.md","jc/cli.py","jc/parsers/date.py","man/jc.1"]},"message":"add date parser","epoch":1596231542,"epoch_utc":null},{"commit":"672fd18016b8122510b6ab246b5675b7fd399b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 12:59:44 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 12:59:44 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"date bump","epoch":1596225584,"epoch_utc":null},{"commit":"bc2c23a2a09b96d34bb80f69fdc7751fb5ac3ed4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 12:58:58 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 12:58:58 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"version bump","epoch":1596225538,"epoch_utc":null},{"commit":"865f7e78124e382c6d315702fa6e48f2104cee46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 12:58:11 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 12:58:11 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["man/jc.1"]},"message":"add kv parser to man page","epoch":1596225491,"epoch_utc":null},{"commit":"720212b552e1bd2b9196dd5f06e4b3f85d463531","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 11:02:24 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 11:02:24 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":9,"files":["EXAMPLES.md"]},"message":"fixup traceroute example with new behavior","epoch":1596218544,"epoch_utc":null},{"commit":"d3be61f60837801d5a505dc2520cc80c874a6092","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 10:59:46 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 10:59:46 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]},"message":"version bump","epoch":1596218386,"epoch_utc":null},{"commit":"13418b16b8fd78fdd97ac045ec3fe9aa59d46080","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 10:56:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 10:56:51 2020 -0700","stats":{"files_changed":2,"insertions":8,"deletions":2,"files":["docs/parsers/traceroute.md","jc/parsers/traceroute.py"]},"message":"doc update","epoch":1596218211,"epoch_utc":null},{"commit":"42d2017cd6f5ee1d1a92bd4958cd63366c1e715d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 10:53:47 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 10:53:47 2020 -0700","stats":{"files_changed":18,"insertions":41,"deletions":24,"files":["CHANGELOG","jc/parsers/traceroute.py","tests/fixtures/centos-7.7/traceroute.json","tests/fixtures/freebsd12/traceroute.json","tests/fixtures/freebsd12/traceroute6.json","tests/fixtures/generic/traceroute1.json","tests/fixtures/generic/traceroute2.json","tests/fixtures/generic/traceroute3.json","tests/fixtures/generic/traceroute5.json","tests/fixtures/generic/traceroute6.json","tests/fixtures/generic/traceroute7.json","tests/fixtures/osx-10.14.6/traceroute-asn.json",".../fixtures/osx-10.14.6/traceroute-no-header.json","tests/fixtures/osx-10.14.6/traceroute-q.json","tests/fixtures/osx-10.14.6/traceroute.json",".../osx-10.14.6/traceroute6-mult-addresses.json","tests/fixtures/osx-10.14.6/traceroute6.json","tests/test_traceroute.py"]},"message":"traceroute updates: handle missing header row, add annotations, don't print timeouts as probes","epoch":1596218027,"epoch_utc":null},{"commit":"4345e76ead2a49ae0691077e9fbd2b6c5fdfd129","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 30 16:49:38 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 30 16:49:38 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"]},"message":"change to use --kv for key/value files","epoch":1596152978,"epoch_utc":null},{"commit":"741431322ba2677355c361fcd6095ed8cd0a4349","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 30 16:45:36 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 30 16:45:36 2020 -0700","stats":{"files_changed":2,"insertions":46,"deletions":24,"files":["tests/test_ini.py","tests/test_kv.py"]},"message":"update tests for kv parser","epoch":1596152736,"epoch_utc":null},{"commit":"980beaaf41a04891f7c2f5daeb1e3a23d3c7ec19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 30 16:21:03 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 30 16:21:03 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/ifconfig.py"]},"message":"fix docgen issue","epoch":1596151263,"epoch_utc":null},{"commit":"2205034e0906b333c259648f7a0e5392945f12ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 30 16:20:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 30 16:20:51 2020 -0700","stats":{"files_changed":8,"insertions":105,"deletions":31,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","jc/cli.py","jc/parsers/ini.py","jc/parsers/kv.py","setup.py"]},"message":"add kv parser","epoch":1596151251,"epoch_utc":null},{"commit":"82b9c87a66fce5d8626c56858a8c6f1f3326e7fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 30 16:20:24 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 30 16:20:24 2020 -0700","stats":{"files_changed":58,"insertions":345,"deletions":62,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/readme.md","docs/utils.md"]},"message":"update docs","epoch":1596151224,"epoch_utc":null},{"commit":"dda517a937323b9888e081aea1032a9d63c4a6bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 14:36:20 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 29 14:36:20 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":163,"files":["README.md"]},"message":"shorten more examples","epoch":1596058580,"epoch_utc":null},{"commit":"4e6d283b9eddf7759b4dd37bd643394ff73febd4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 14:27:13 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 29 14:27:13 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":65,"files":["README.md"]},"message":"shorten netstat example","epoch":1596058033,"epoch_utc":null},{"commit":"55acab05aa740dfd7534304f2678b60942cad116","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:55:16 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 29 11:55:16 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["changelog.txt => CHANGELOG"]},"message":"change name to CHANGELOG","epoch":1596048916,"epoch_utc":null},{"commit":"ed38a18d236cdb991779f4f148e42359c139e61c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:49:00 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 29 11:49:00 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":86,"files":["README.md"]},"message":"remove more examples","epoch":1596048540,"epoch_utc":null},{"commit":"95b3c11203d3dd0627c5eeca39fe1d145bf2d733","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:43:22 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 29 11:43:22 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":124,"files":["README.md"]},"message":"remove more examples","epoch":1596048202,"epoch_utc":null},{"commit":"dce318f4fd44b9c4013211bf233020e84566ddb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:40:47 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 29 11:40:47 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1537,"files":["README.md"]},"message":"remove examples to reduce file size","epoch":1596048047,"epoch_utc":null},{"commit":"85127f0fb8096192b19fca1f4ffe38ee391351be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:34:43 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 29 11:34:43 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["jc/examples.md => EXAMPLES.md"]},"message":"move examples to root","epoch":1596047683,"epoch_utc":null},{"commit":"fb45058244ce879f12bbb5b7267b0fd63fef1d63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:32:18 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 29 11:32:18 2020 -0700","stats":{"files_changed":1,"insertions":2640,"deletions":0,"files":["jc/examples.md"]},"message":"add examples file","epoch":1596047538,"epoch_utc":null},{"commit":"45bb5ae389a00ed6a132a65c69ce76c7e5976858","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 28 11:03:41 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 28 11:03:41 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"spelling","epoch":1595959421,"epoch_utc":null},{"commit":"339238ab364d8735892a11cb16a62a651edae169","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 20:37:33 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 20:37:33 2020 -0700","stats":{"files_changed":8,"insertions":79,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py","tests/fixtures/centos-7.7/route-6-n.json","tests/fixtures/centos-7.7/route-6-n.out","tests/fixtures/centos-7.7/route-6.json","tests/fixtures/centos-7.7/route-6.out","tests/test_route.py"]},"message":"version bump and add route -6 tests","epoch":1595907453,"epoch_utc":null},{"commit":"032cda8b3db096b690d2557e3b918c50c716c543","merge":"690ac52 6badd3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 19:12:21 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Jul 27 19:12:21 2020 -0700","message":"Merge pull request #74 from kellyjonbrazil/dev\n\nDev v1.13.0","epoch":1595902341,"epoch_utc":null},{"commit":"6badd3fb1e1cf6d1ee99614fadc20d54be8039aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 19:02:23 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 19:02:23 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["tests/test_cli.py"]},"message":"add parser count test","epoch":1595901743,"epoch_utc":null},{"commit":"724d825745b6f1692eb3b068c3fb59d14892e690","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 19:02:11 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 19:02:11 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["man/jc.1"]},"message":"add tracepath parser","epoch":1595901731,"epoch_utc":null},{"commit":"ff1e32ad2ee156f105f5069c6b14a65b22784dfa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 16:49:34 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 16:49:34 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump","epoch":1595893774,"epoch_utc":null},{"commit":"a5f97febd3066b9e95a18d6b73162a7d206c5845","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 16:47:41 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 16:47:41 2020 -0700","stats":{"files_changed":10,"insertions":132,"deletions":0,"files":["tests/fixtures/centos-7.7/tracepath.json","tests/fixtures/centos-7.7/tracepath6.json","tests/fixtures/freebsd12/traceroute.json","tests/fixtures/freebsd12/traceroute.out","tests/fixtures/freebsd12/traceroute6.json","tests/fixtures/freebsd12/traceroute6.out","tests/fixtures/osx-10.14.6/uname.out","tests/test_tracepath.py","tests/test_traceroute.py","tests/test_uname.py"]},"message":"update traceroute, tracepath, and uname tests","epoch":1595893661,"epoch_utc":null},{"commit":"5baa6cc865634142690e78596c640db35e110b29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:44:13 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 15:44:13 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]},"message":"add route parser update","epoch":1595889853,"epoch_utc":null},{"commit":"7a4f30b843d8f11711abbb8f9bb263f945ff87ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:37:44 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 15:37:44 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/route.py"]},"message":"fix for iface issue","epoch":1595889464,"epoch_utc":null},{"commit":"b2c385dc4f63e3e15f47e986deac0524967214a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:30:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 15:30:09 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"]},"message":"change 'if' to 'iface'","epoch":1595889009,"epoch_utc":null},{"commit":"5d5da8d33fa6ab77c745d338d1a2e2e8f2e4c697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:27:11 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 15:27:11 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/route.py"]},"message":"more fixes for ipv6 fix","epoch":1595888831,"epoch_utc":null},{"commit":"e60457157839daba385202906997dec48c9c4950","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:20:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 15:20:51 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"]},"message":"fix next_hop fix","epoch":1595888451,"epoch_utc":null},{"commit":"f9dacc3f95b32e1431914ae0b0dc5c8e8840d5a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:18:13 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 15:18:13 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/route.py"]},"message":"fixup for ipv6","epoch":1595888293,"epoch_utc":null},{"commit":"6086920332575cd7db1b38262a3b4ba8fbfae7ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:13:32 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 15:13:32 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]},"message":"update ParseError message","epoch":1595888012,"epoch_utc":null},{"commit":"f52f3163bcaf8d7e784f02505e81456e8240295b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 13:57:58 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 13:57:58 2020 -0700","stats":{"files_changed":1,"insertions":49,"deletions":0,"files":["README.md"]},"message":"add tracepath example","epoch":1595883478,"epoch_utc":null},{"commit":"d18ff73e880c7d34957f2713857cc83094f914cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 13:51:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 13:51:51 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/tracepath.py"]},"message":"update author info","epoch":1595883111,"epoch_utc":null},{"commit":"1e5d602caecd96c9056ad77f9fc50cf25bf6fdfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 13:48:46 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 13:48:46 2020 -0700","stats":{"files_changed":2,"insertions":288,"deletions":32,"files":["docs/parsers/tracepath.md","jc/parsers/tracepath.py"]},"message":"working tracepath parser","epoch":1595882926,"epoch_utc":null},{"commit":"12912521ecb376c36dfdd743b3c4195598fb9aac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 11:04:27 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 11:04:27 2020 -0700","stats":{"files_changed":2,"insertions":0,"deletions":11,"files":["docs/parsers/traceroute.md","jc/parsers/traceroute.py"]},"message":"doc update","epoch":1595873067,"epoch_utc":null},{"commit":"842ea3a94bec3fcab76257fdde5514d1de3d57fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 11:02:13 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 11:02:13 2020 -0700","stats":{"files_changed":2,"insertions":153,"deletions":0,"files":["docs/parsers/tracepath.md","jc/parsers/tracepath.py"]},"message":"add tracepath parser skeleton","epoch":1595872933,"epoch_utc":null},{"commit":"a8560dbc1598fa97de87594228b4cc10282d4197","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 11:01:57 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 11:01:57 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add tracepath","epoch":1595872917,"epoch_utc":null},{"commit":"a65e27540a8c5c7123d2fdf79fcbefa1e2f8afdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 11:01:45 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 11:01:45 2020 -0700","stats":{"files_changed":3,"insertions":1,"deletions":24,"files":["docgen.sh","docs/parsers/traceroute.md","jc/parsers/traceroute.py"]},"message":"update docs","epoch":1595872905,"epoch_utc":null},{"commit":"c3c5ed11e68938e35920144406d37ea3b21d63dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 10:33:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 10:33:40 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]},"message":"change name from tr to trparse","epoch":1595871220,"epoch_utc":null},{"commit":"ce24149335cd8ed1e8513a2cf040432fe42d86b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 10:33:25 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 10:33:25 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping.py"]},"message":"formatting","epoch":1595871205,"epoch_utc":null},{"commit":"0314ca8c4831d24c169a0e4948421ecd638fd699","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 10:33:15 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 10:33:15 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add trparse acknowledgement","epoch":1595871195,"epoch_utc":null},{"commit":"ebd8ee49a9f43063850e30c745c8cae46ee13de1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 10:28:15 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 10:28:15 2020 -0700","stats":{"files_changed":1,"insertions":26,"deletions":1,"files":["README.md"]},"message":"add key/value info to ini example","epoch":1595870895,"epoch_utc":null},{"commit":"38d10c97814ec69586c3b447c182f339772d6e22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 09:29:30 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 09:29:30 2020 -0700","stats":{"files_changed":1,"insertions":130,"deletions":1,"files":["README.md"]},"message":"add ping and traceroute examples","epoch":1595867370,"epoch_utc":null},{"commit":"360106c24d24e6a9697c00a158a14aaa334a4b1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 09:23:01 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 09:23:01 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]},"message":"add tracepath","epoch":1595866981,"epoch_utc":null},{"commit":"ca470a5d02fd9fbaf05d8b3b3bb1ffe9f4cf5af3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 09:20:00 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 09:20:00 2020 -0700","stats":{"files_changed":2,"insertions":39,"deletions":0,"files":["tests/fixtures/centos-7.7/tracepath.out","tests/fixtures/centos-7.7/tracepath6.out"]},"message":"add tracepath fixtures","epoch":1595866800,"epoch_utc":null},{"commit":"57f66e6b1d554ff20b72959f5ebb9e7b2feffed2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 09:19:48 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 09:19:48 2020 -0700","stats":{"files_changed":2,"insertions":14,"deletions":2,"files":["changelog.txt","jc/parsers/uname.py"]},"message":"add exception with hint to use \"uname -a\"","epoch":1595866788,"epoch_utc":null},{"commit":"e774f67924c0e6195f79829b2ac75ce95f76fbaa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:53:17 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 16:53:17 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["jc/parsers/ini.py"]},"message":"turn off interpolation and coerce None to ''","epoch":1595634797,"epoch_utc":null},{"commit":"ac10e576c167d20de259e47a6aa5b23fc998b4c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:29:27 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 16:29:27 2020 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/ini.md","jc/parsers/ini.py"]},"message":"spelling","epoch":1595633367,"epoch_utc":null},{"commit":"bcae0a99cd0ccce4ec8a67929f7c83a1095a5b88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:23:45 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 16:23:45 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"add key/value to ini description","epoch":1595633025,"epoch_utc":null},{"commit":"c73c2ff879b3ed7a3e6f04e53e0a729e4f00ed21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:23:30 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 16:23:30 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["changelog.txt"]},"message":"add ping, traceroute, and ini update","epoch":1595633010,"epoch_utc":null},{"commit":"c39b1a3356881a11a8f6fe9432897e6d67162f07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:17:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 16:17:51 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["README.md"]},"message":"add ping, traceroute and update ini description","epoch":1595632671,"epoch_utc":null},{"commit":"125dc2d9e051a82a4a438afe2e520212338353f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:17:16 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 16:17:16 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":3,"files":["docs/parsers/ini.md"]},"message":"add info about key/value files to doc","epoch":1595632636,"epoch_utc":null},{"commit":"b7d4ddc7ced2c3aabf3a857b53a0bf1b62eb6a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:16:54 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 16:16:54 2020 -0700","stats":{"files_changed":5,"insertions":50,"deletions":0,"files":["tests/fixtures/generic/keyvalue-ifcfg.json","tests/fixtures/generic/keyvalue-ifcfg.txt","tests/fixtures/generic/keyvalue.json","tests/fixtures/generic/keyvalue.txt","tests/test_ini.py"]},"message":"add tests for key/value files","epoch":1595632614,"epoch_utc":null},{"commit":"f5e546c6fa7cba166284a0976887d6b82451d3e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:16:24 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 16:16:24 2020 -0700","stats":{"files_changed":1,"insertions":33,"deletions":9,"files":["jc/parsers/ini.py"]},"message":"add support for simple key/value pairs","epoch":1595632584,"epoch_utc":null},{"commit":"928e39cd103b96b8c3ccc8d85c930ffb419296c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 14:16:41 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 14:16:41 2020 -0700","stats":{"files_changed":9,"insertions":104,"deletions":0,"files":["tests/fixtures/generic/traceroute1.json","tests/fixtures/generic/traceroute2.json","tests/fixtures/generic/traceroute3.json","tests/fixtures/generic/traceroute4.json","tests/fixtures/generic/traceroute5.json","tests/fixtures/generic/traceroute6.json","tests/fixtures/generic/traceroute7.json","tests/fixtures/generic/traceroute8.json","tests/test_traceroute.py"]},"message":"add generic traceroute tests","epoch":1595625401,"epoch_utc":null},{"commit":"d0b7ea68a005daff313e44808b256656313a78a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 13:47:47 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 13:47:47 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/traceroute.py"]},"message":"check for key in dictionary","epoch":1595623667,"epoch_utc":null},{"commit":"8444690133b6a7522822ab279e97ede6ded17ba9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 13:47:29 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 13:47:29 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["man/jc.1"]},"message":"add traceroute","epoch":1595623649,"epoch_utc":null},{"commit":"c03c42d76703ff8f423cf3c10ea6254a27a685cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 13:47:23 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 13:47:23 2020 -0700","stats":{"files_changed":9,"insertions":76,"deletions":9,"files":["tests/fixtures/centos-7.7/traceroute.json","tests/fixtures/osx-10.14.6/traceroute-asn.json",".../osx-10.14.6/traceroute-mult-addresses.json","tests/fixtures/osx-10.14.6/traceroute-q.json","tests/fixtures/osx-10.14.6/traceroute.json",".../osx-10.14.6/traceroute6-mult-addresses.json","...-address.out => traceroute6-mult-addresses.out}","tests/fixtures/osx-10.14.6/traceroute6.json","tests/test_traceroute.py"]},"message":"add traceroute tests","epoch":1595623643,"epoch_utc":null},{"commit":"ab67688a00ac335d2a5603e9cadef8b565957911","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 16:45:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 16:45:09 2020 -0700","stats":{"files_changed":1,"insertions":55,"deletions":0,"files":["tests/test_traceroute.py"]},"message":"add test skeleton","epoch":1595547909,"epoch_utc":null},{"commit":"5dcb7166daef3c53da65bba0d591672e64d3a90b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 16:44:57 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 16:44:57 2020 -0700","stats":{"files_changed":2,"insertions":169,"deletions":0,"files":["docgen.sh","docs/parsers/traceroute.md"]},"message":"add traceroute doc","epoch":1595547897,"epoch_utc":null},{"commit":"14697b86d7fc1cfebb41e0fd2d9a9b9b60071d3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 15:48:08 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 15:48:08 2020 -0700","stats":{"files_changed":1,"insertions":24,"deletions":2,"files":["jc/parsers/traceroute.py"]},"message":"add MIT license","epoch":1595544488,"epoch_utc":null},{"commit":"4f4b6276d4bf798b17d996f39742bd0428fc2f19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 15:46:22 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 15:46:22 2020 -0700","stats":{"files_changed":1,"insertions":38,"deletions":33,"files":["jc/parsers/traceroute.py"]},"message":"update docstring","epoch":1595544382,"epoch_utc":null},{"commit":"7bc497e1291059ae7858c9d2bd2d9a1b4c030dd1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 15:42:33 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 15:42:33 2020 -0700","stats":{"files_changed":1,"insertions":117,"deletions":14,"files":["jc/parsers/traceroute.py"]},"message":"updated process() function to set integers and floats","epoch":1595544153,"epoch_utc":null},{"commit":"68a37a6a5a3f0ad0fa24c84d363050af9fa11f97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 12:48:33 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 12:48:33 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/parsers/traceroute.py"]},"message":"remove unused function load()","epoch":1595533713,"epoch_utc":null},{"commit":"6f5cd1d7c5f76d7d4da42171fdc30daf9fe3996e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 12:03:21 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 12:03:21 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]},"message":"change to use f-string","epoch":1595531001,"epoch_utc":null},{"commit":"126b1b121ca10183dc7e9dece83b42907becad39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 11:31:56 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 11:31:56 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":0,"files":["tests/fixtures/generic/traceroute8.out"]},"message":"add traceroute6 example","epoch":1595529116,"epoch_utc":null},{"commit":"2341e456a012564f86d533d2748a5887d79995e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 11:31:35 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 11:31:35 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]},"message":"use ParseError instead of generic Exception","epoch":1595529095,"epoch_utc":null},{"commit":"72d80e95bb50ae2a7432082e65aba15235ba0955","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 10:52:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 10:52:40 2020 -0700","stats":{"files_changed":8,"insertions":115,"deletions":8,"files":["jc/parsers/traceroute.py","tests/fixtures/generic/traceroute1.out","tests/fixtures/generic/traceroute2.out","tests/fixtures/generic/traceroute3.out","tests/fixtures/generic/traceroute4.out","tests/fixtures/generic/traceroute5.out","tests/fixtures/generic/traceroute6.out","tests/fixtures/generic/traceroute7.out"]},"message":"remove unused regex patterns","epoch":1595526760,"epoch_utc":null},{"commit":"f5ec82440cd1c1b5ac9011d3517298d0cdcd8766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 10:19:56 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 10:19:56 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/traceroute.py"]},"message":"simplify regex patterns","epoch":1595524796,"epoch_utc":null},{"commit":"c8e526ead35b868733f57b4c114062a48b78a817","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 22 17:23:24 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 22 17:23:24 2020 -0700","stats":{"files_changed":2,"insertions":12,"deletions":3,"files":["jc/parsers/traceroute.py","tests/fixtures/osx-10.14.6/traceroute-q.out"]},"message":"fixes for bsd-style ipv6 output","epoch":1595463804,"epoch_utc":null},{"commit":"066adfb76479df7042bfb12bbb83b5dbd8a6d54c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 22 15:02:02 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 22 15:02:02 2020 -0700","stats":{"files_changed":7,"insertions":83,"deletions":7,"files":["jc/parsers/traceroute.py","tests/fixtures/centos-7.7/traceroute.out","tests/fixtures/osx-10.14.6/traceroute-asn.out",".../osx-10.14.6/traceroute-mult-addresses.out",".../fixtures/osx-10.14.6/traceroute-no-header.out",".../osx-10.14.6/traceroute6-multi-address.out","tests/fixtures/osx-10.14.6/traceroute6.out"]},"message":"handle warning lines in the traceroute output","epoch":1595455322,"epoch_utc":null},{"commit":"5b444d4717b0b8528647e17e71d699907def3e18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 22 12:19:27 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 22 12:19:27 2020 -0700","stats":{"files_changed":3,"insertions":307,"deletions":0,"files":["jc/cli.py","jc/parsers/traceroute.py","tests/fixtures/osx-10.14.6/traceroute.out"]},"message":"add traceroute parser","epoch":1595445567,"epoch_utc":null},{"commit":"69c95adc8d59927c1c00b7e766ca5003b7b6454c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 22 09:06:11 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 22 09:06:11 2020 -0700","stats":{"files_changed":3,"insertions":81,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ping6-ip-dup.json","tests/fixtures/osx-10.14.6/ping6-ip-dup.out","tests/test_ping.py"]},"message":"add osx ipv6 ping dup test","epoch":1595433971,"epoch_utc":null},{"commit":"2b0e0d8f5c1a6a5450e362971f9ad5892093b2ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 17:34:30 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 21 17:34:30 2020 -0700","stats":{"files_changed":3,"insertions":27,"deletions":0,"files":["tests/fixtures/centos-7.7/ping6-ip-dup.json","tests/fixtures/centos-7.7/ping6-ip-dup.out","tests/test_ping.py"]},"message":"add ipv6 dup test","epoch":1595378070,"epoch_utc":null},{"commit":"778d1bacbf8df523d434b22f5e1517955e4c15ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 15:16:39 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 21 15:16:39 2020 -0700","stats":{"files_changed":2,"insertions":28,"deletions":12,"files":["docs/parsers/ping.md","jc/parsers/ping.py"]},"message":"update docs to add \"duplicates\" fields","epoch":1595369799,"epoch_utc":null},{"commit":"7e1b0410166c584775ebcd681a280ec7321560c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 15:12:43 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 21 15:12:43 2020 -0700","stats":{"files_changed":1,"insertions":24,"deletions":0,"files":["tests/test_ping.py"]},"message":"add duplicate replies tests","epoch":1595369563,"epoch_utc":null},{"commit":"313b9b329ca6b674069718839f55a4bd7834db80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 15:05:54 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 21 15:05:54 2020 -0700","stats":{"files_changed":55,"insertions":55,"deletions":53,"files":["tests/fixtures/centos-7.7/ping-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping-hostname-O-p.json","tests/fixtures/centos-7.7/ping-hostname-O.json","tests/fixtures/centos-7.7/ping-ip-O-D.json","tests/fixtures/centos-7.7/ping-ip-O.json","tests/fixtures/centos-7.7/ping-ip-dup.json","tests/fixtures/centos-7.7/ping6-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping6-hostname-O-p.json","tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","tests/fixtures/centos-7.7/ping6-ip-O-p.json","tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping-hostname-O-p.json","tests/fixtures/fedora32/ping-hostname-O.json","tests/fixtures/fedora32/ping-ip-O-D.json","tests/fixtures/fedora32/ping-ip-O.json","tests/fixtures/fedora32/ping6-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping6-hostname-O-D-p.json","tests/fixtures/fedora32/ping6-hostname-O-p.json","tests/fixtures/fedora32/ping6-ip-O-D-p.json","tests/fixtures/fedora32/ping6-ip-O-p.json","tests/fixtures/freebsd12/ping-hostname-p.json","tests/fixtures/freebsd12/ping-hostname-s.json","tests/fixtures/freebsd12/ping-hostname.json","tests/fixtures/freebsd12/ping-ip-p.json","tests/fixtures/freebsd12/ping-ip-s.json","tests/fixtures/freebsd12/ping-ip.json","tests/fixtures/freebsd12/ping6-hostname-p.json","tests/fixtures/freebsd12/ping6-hostname-s.json","tests/fixtures/freebsd12/ping6-hostname.json","tests/fixtures/freebsd12/ping6-ip-p.json","tests/fixtures/freebsd12/ping6-ip-s.json","tests/fixtures/freebsd12/ping6-ip.json","tests/fixtures/osx-10.14.6/ping-hostname-p.json","tests/fixtures/osx-10.14.6/ping-hostname-s.json","tests/fixtures/osx-10.14.6/ping-hostname.json","tests/fixtures/osx-10.14.6/ping-ip-dup.json","tests/fixtures/osx-10.14.6/ping-ip-p.json","tests/fixtures/osx-10.14.6/ping-ip-s.json","tests/fixtures/osx-10.14.6/ping-ip.json","tests/fixtures/osx-10.14.6/ping6-hostname-p.json","tests/fixtures/osx-10.14.6/ping6-hostname-s.json","tests/fixtures/osx-10.14.6/ping6-hostname.json","tests/fixtures/osx-10.14.6/ping6-ip-p.json","tests/fixtures/osx-10.14.6/ping6-ip-s.json","tests/fixtures/osx-10.14.6/ping6-ip.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping-hostname-O.json","tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","tests/fixtures/ubuntu-18.04/ping-ip-O.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json"]},"message":"update fixtures for added 'duplicate' fields","epoch":1595369154,"epoch_utc":null},{"commit":"6830062256fbc453f87224f7ab8c10e4494b5a83","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 14:47:25 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 21 14:47:25 2020 -0700","stats":{"files_changed":4,"insertions":112,"deletions":24,"files":["docs/parsers/ping.md","jc/parsers/ping.py","tests/fixtures/centos-7.7/ping-ip-dup.out","tests/fixtures/osx-10.14.6/ping-ip-dup.out"]},"message":"add support for duplicate replies","epoch":1595368045,"epoch_utc":null},{"commit":"323072c9827c41c5d74433504b5efceb846cfe09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 09:02:44 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 21 09:02:44 2020 -0700","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/ping.md","jc/parsers/ping.py"]},"message":"add source_ip to schema doc","epoch":1595347364,"epoch_utc":null},{"commit":"8719d96bddec80187e7ba3286ba93bfec8465744","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 16:54:43 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 20 16:54:43 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"change description","epoch":1595289283,"epoch_utc":null},{"commit":"dd5d318ab5bbb1027dd600fd3b0b6ec9b8adfdc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 16:25:20 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 20 16:25:20 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["man/jc.1"]},"message":"version bump and add ping command","epoch":1595287520,"epoch_utc":null},{"commit":"d6dc7f5e65c097895c19000e59e8803a3b350fdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 16:11:18 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 20 16:11:18 2020 -0700","stats":{"files_changed":13,"insertions":135,"deletions":29,"files":["tests/fixtures/osx-10.14.6/ping-hostname-p.json","tests/fixtures/osx-10.14.6/ping-hostname-s.json","tests/fixtures/osx-10.14.6/ping-hostname.json","tests/fixtures/osx-10.14.6/ping-ip-p.json","tests/fixtures/osx-10.14.6/ping-ip-s.json","tests/fixtures/osx-10.14.6/ping-ip.json","tests/fixtures/osx-10.14.6/ping6-hostname-p.json","tests/fixtures/osx-10.14.6/ping6-hostname-s.json","tests/fixtures/osx-10.14.6/ping6-hostname.json","tests/fixtures/osx-10.14.6/ping6-ip-p.json","tests/fixtures/osx-10.14.6/ping6-ip-s.json","tests/fixtures/osx-10.14.6/ping6-ip.json","tests/test_ping.py"]},"message":"add osx ping tests","epoch":1595286678,"epoch_utc":null},{"commit":"c203664eb5aafa0afa3101b79e3fd13b3e009ec5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 15:46:27 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 20 15:46:27 2020 -0700","stats":{"files_changed":13,"insertions":171,"deletions":9,"files":["tests/fixtures/freebsd12/ping-hostname-p.json","tests/fixtures/freebsd12/ping-hostname-s.json","tests/fixtures/freebsd12/ping-hostname.json","tests/fixtures/freebsd12/ping-ip-p.json","tests/fixtures/freebsd12/ping-ip-s.json","tests/fixtures/freebsd12/ping-ip.json","tests/fixtures/freebsd12/ping6-hostname-p.json","tests/fixtures/freebsd12/ping6-hostname-s.json","tests/fixtures/freebsd12/ping6-hostname.json","tests/fixtures/freebsd12/ping6-ip-p.json","tests/fixtures/freebsd12/ping6-ip-s.json","tests/fixtures/freebsd12/ping6-ip.json","tests/test_ping.py"]},"message":"freebsd ping tests","epoch":1595285187,"epoch_utc":null},{"commit":"19ecf1fa19e9fa0873002baf07fa670b71ed7752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 14:35:41 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 20 14:35:41 2020 -0700","stats":{"files_changed":11,"insertions":118,"deletions":0,"files":["tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping-hostname-O-p.json","tests/fixtures/fedora32/ping-hostname-O.json","tests/fixtures/fedora32/ping-ip-O-D.json","tests/fixtures/fedora32/ping-ip-O.json",".../fixtures/fedora32/ping6-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping6-hostname-O-D-p.json","tests/fixtures/fedora32/ping6-hostname-O-p.json","tests/fixtures/fedora32/ping6-ip-O-D-p.json","tests/fixtures/fedora32/ping6-ip-O-p.json","tests/test_ping.py"]},"message":"add Fedora32 tests","epoch":1595280941,"epoch_utc":null},{"commit":"b8deb0426cc23333c0e0a9dc3776d9761d99abb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 13:51:39 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 20 13:51:39 2020 -0700","stats":{"files_changed":11,"insertions":119,"deletions":8,"files":[".../ubuntu-18.04/ping-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping-hostname-O.json","tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","tests/fixtures/ubuntu-18.04/ping-ip-O.json",".../ubuntu-18.04/ping6-hostname-O-D-p-s.json",".../ubuntu-18.04/ping6-hostname-O-D-p.json",".../fixtures/ubuntu-18.04/ping6-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json","tests/test_ping.py"]},"message":"add ubuntu ping tests","epoch":1595278299,"epoch_utc":null},{"commit":"3b8371f0208a097cb8a1c026348d3842e6702b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 12:49:05 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 20 12:49:05 2020 -0700","stats":{"files_changed":10,"insertions":202,"deletions":0,"files":[".../fixtures/centos-7.7/ping-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping-hostname-O-p.json","tests/fixtures/centos-7.7/ping-hostname-O.json","tests/fixtures/centos-7.7/ping-ip-O-D.json","tests/fixtures/centos-7.7/ping-ip-O.json",".../centos-7.7/ping6-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping6-hostname-O-p.json","tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","tests/fixtures/centos-7.7/ping6-ip-O-p.json","tests/test_ping.py"]},"message":"add centos ping tests","epoch":1595274545,"epoch_utc":null},{"commit":"20bb1cdf396abdb3707b34fa146cbe913f9bbd6f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 11:53:06 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 20 11:53:06 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/ping.py"]},"message":"add TypeError to except for None values","epoch":1595271186,"epoch_utc":null},{"commit":"301daa48d0bfc28f97c8e46f028f8c6b875bf34e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 15:30:54 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 15:30:54 2020 -0700","stats":{"files_changed":2,"insertions":114,"deletions":16,"files":["docs/parsers/ping.md","jc/parsers/ping.py"]},"message":"update documentation","epoch":1595197854,"epoch_utc":null},{"commit":"8421ec88033e02f472e4961d87551a0352663a16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 15:19:47 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 15:19:47 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ping.py"]},"message":"remove cygwin compatibility","epoch":1595197187,"epoch_utc":null},{"commit":"74211eb0129f6aa655a38ba4d4d8844d81441107","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 15:16:04 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 15:16:04 2020 -0700","stats":{"files_changed":1,"insertions":82,"deletions":5,"files":["jc/parsers/ping.py"]},"message":"add examples","epoch":1595196964,"epoch_utc":null},{"commit":"60bd42f298f309cbec6d24c9543ea3d51bd73b18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 15:13:52 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 15:13:52 2020 -0700","stats":{"files_changed":1,"insertions":59,"deletions":11,"files":["jc/parsers/ping.py"]},"message":"add process() logic","epoch":1595196832,"epoch_utc":null},{"commit":"14bdd74526e400997c5bc247ea35ed40799e83ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 14:46:02 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 14:46:02 2020 -0700","stats":{"files_changed":12,"insertions":100,"deletions":0,"files":["tests/fixtures/freebsd12/ping-hostname-p.out","tests/fixtures/freebsd12/ping-hostname-s.out","tests/fixtures/freebsd12/ping-hostname.out","tests/fixtures/freebsd12/ping-ip-p.out","tests/fixtures/freebsd12/ping-ip-s.out","tests/fixtures/freebsd12/ping-ip.out","tests/fixtures/freebsd12/ping6-hostname-p.out","tests/fixtures/freebsd12/ping6-hostname-s.out","tests/fixtures/freebsd12/ping6-hostname.out","tests/fixtures/freebsd12/ping6-ip-p.out","tests/fixtures/freebsd12/ping6-ip-s.out","tests/fixtures/freebsd12/ping6-ip.out"]},"message":"add ping test fixtures","epoch":1595195162,"epoch_utc":null},{"commit":"fb0f3eda04a4b1dbb81da7d5791cbfe746bfd617","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 14:45:50 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 14:45:50 2020 -0700","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["tests/fixtures/create_fixtures.sh"]},"message":"add ping commands","epoch":1595195150,"epoch_utc":null},{"commit":"91ee6e6701307363336a39f9e16641465ddd05c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 14:18:56 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 14:18:56 2020 -0700","stats":{"files_changed":12,"insertions":100,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ping-hostname-p.out","tests/fixtures/osx-10.14.6/ping-hostname-s.out","tests/fixtures/osx-10.14.6/ping-hostname.out","tests/fixtures/osx-10.14.6/ping-ip-p.out","tests/fixtures/osx-10.14.6/ping-ip-s.out","tests/fixtures/osx-10.14.6/ping-ip.out","tests/fixtures/osx-10.14.6/ping6-hostname-p.out","tests/fixtures/osx-10.14.6/ping6-hostname-s.out","tests/fixtures/osx-10.14.6/ping6-hostname.out","tests/fixtures/osx-10.14.6/ping6-ip-p.out","tests/fixtures/osx-10.14.6/ping6-ip-s.out","tests/fixtures/osx-10.14.6/ping6-ip.out"]},"message":"add osx ping test fixtures","epoch":1595193536,"epoch_utc":null},{"commit":"51f4e6927c68a7e2a26954f564d10d316b98a984","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 14:18:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 14:18:40 2020 -0700","stats":{"files_changed":1,"insertions":12,"deletions":3,"files":["jc/parsers/ping.py"]},"message":"add support for pattern in osx/bsd","epoch":1595193520,"epoch_utc":null},{"commit":"94988d86674293faddc6f7e7c82575738d2dc791","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 13:50:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 13:50:40 2020 -0700","stats":{"files_changed":10,"insertions":257,"deletions":0,"files":["tests/fixtures/fedora32/ping-hostname-O-D-p-s.out","tests/fixtures/fedora32/ping-hostname-O-p.out","tests/fixtures/fedora32/ping-hostname-O.out","tests/fixtures/fedora32/ping-ip-O-D.out","tests/fixtures/fedora32/ping-ip-O.out","tests/fixtures/fedora32/ping6-hostname-O-D-p-s.out","tests/fixtures/fedora32/ping6-hostname-O-D-p.out","tests/fixtures/fedora32/ping6-hostname-O-p.out","tests/fixtures/fedora32/ping6-ip-O-D-p.out","tests/fixtures/fedora32/ping6-ip-O-p.out"]},"message":"add fedora ping fixtures","epoch":1595191840,"epoch_utc":null},{"commit":"fe36f5a98cd3ee7753e250b6553e4453d971f929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 12:56:53 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 12:56:53 2020 -0700","stats":{"files_changed":13,"insertions":318,"deletions":0,"files":["tests/fixtures/centos-7.7/ping-ip-O-D.out","tests/fixtures/centos-7.7/ping-ip-O.out","tests/fixtures/create_fixtures.sh",".../ubuntu-18.04/ping-hostname-O-D-p-s.out","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.out","tests/fixtures/ubuntu-18.04/ping-hostname-O.out","tests/fixtures/ubuntu-18.04/ping-ip-O-D.out","tests/fixtures/ubuntu-18.04/ping-ip-O.out",".../ubuntu-18.04/ping6-hostname-O-D-p-s.out",".../fixtures/ubuntu-18.04/ping6-hostname-O-D-p.out","tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.out","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.out","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.out"]},"message":"add fixtures for ping","epoch":1595188613,"epoch_utc":null},{"commit":"f9eb18b9271b2428dd82f2dc26d3fa0435dad81d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 12:56:34 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 12:56:34 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/ping.py"]},"message":"change 'request_timeout' field to 'type', fix compatibility, other formatting fixes","epoch":1595188594,"epoch_utc":null},{"commit":"cc60f3674822c644933f286a0364b09d7e2a60b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jul 18 12:35:46 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Jul 18 12:35:46 2020 -0700","stats":{"files_changed":3,"insertions":67,"deletions":1,"files":["docgen.sh","docs/parsers/ping.md","jc/cli.py"]},"message":"add ping parser","epoch":1595100946,"epoch_utc":null},{"commit":"604ade791f7bd33b37f64916befba27a2ea08b5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 17 15:57:07 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 17 15:57:07 2020 -0700","stats":{"files_changed":8,"insertions":506,"deletions":0,"files":["jc/parsers/ping.py",".../fixtures/centos-7.7/ping-hostname-O-D-p-s.out","tests/fixtures/centos-7.7/ping-hostname-O-p.out","tests/fixtures/centos-7.7/ping-hostname-O.out",".../fixtures/centos-7.7/ping6-hostname-O-D-p-s.out","tests/fixtures/centos-7.7/ping6-hostname-O-p.out","tests/fixtures/centos-7.7/ping6-ip-O-D-p.out","tests/fixtures/centos-7.7/ping6-ip-O-p.out"]},"message":"add ping parser","epoch":1595026627,"epoch_utc":null},{"commit":"690ac52a917200e46eac2feafc9f504f2734301c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 13 07:18:48 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 13 07:18:48 2020 -0700","stats":{"files_changed":1,"insertions":261,"deletions":0,"files":["man/jc.1"]},"message":"add man page","epoch":1594649928,"epoch_utc":null},{"commit":"34ed772775f1f02ed148f24a3bfff532bc811607","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jul 11 09:46:47 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Jul 11 09:46:47 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1594486007,"epoch_utc":null},{"commit":"d5ab95571f64f55d8194e9e5592ac538bb535229","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jul 11 09:44:08 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Jul 11 09:44:08 2020 -0700","stats":{"files_changed":1,"insertions":26,"deletions":11,"files":["tests/test_cli.py"]},"message":"fix tests when using older versions of pygments","epoch":1594485848,"epoch_utc":null},{"commit":"ffb3a0ee5fb30a3f61d6cbedf877ab04acdbf624","merge":"fde0bc8 94b12b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 16:34:56 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Jul 10 16:34:56 2020 -0700","message":"Merge pull request #73 from kellyjonbrazil/dev\n\nDev v1.12.0","epoch":1594424096,"epoch_utc":null},{"commit":"94b12b57aaa56170d1f31f4910fd1239f88de137","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 16:30:08 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 16:30:08 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"spelling","epoch":1594423808,"epoch_utc":null},{"commit":"6d149e84571d5d6dd1d8a1f219ba299de5173779","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 16:25:03 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 16:25:03 2020 -0700","stats":{"files_changed":2,"insertions":8,"deletions":1,"files":["changelog.txt","setup.py"]},"message":"version bump","epoch":1594423503,"epoch_utc":null},{"commit":"1ad89c90d890039b817f65b2635db1b5e849a9e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 15:58:02 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 15:58:02 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add pacman","epoch":1594421882,"epoch_utc":null},{"commit":"fb71c7b020bc1eda9484595f30b0200a4f59aa45","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 15:49:35 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 15:49:35 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_cli.py"]},"message":"function name spelling","epoch":1594421375,"epoch_utc":null},{"commit":"28ed17ad3bce866e5dc0179ef5de43380ac6ace1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 15:45:21 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 15:45:21 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_cli.py"]},"message":"add parser_count test to test_cli_about_jc","epoch":1594421121,"epoch_utc":null},{"commit":"0c2a4e2bf71dca50d4a9bb27ca99944909c022ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 15:35:05 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 15:35:05 2020 -0700","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["tests/test_cli.py"]},"message":"add cli tests","epoch":1594420505,"epoch_utc":null},{"commit":"62bec30de2f1a303f2ec411d89f7f9f9c6d1abaf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 14:44:50 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 14:44:50 2020 -0700","stats":{"files_changed":1,"insertions":20,"deletions":0,"files":["tests/test_cli.py"]},"message":"add json_out tests","epoch":1594417490,"epoch_utc":null},{"commit":"3fced77e4e258dbf7db94a313e599c830a597b49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 12:23:48 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 12:23:48 2020 -0700","stats":{"files_changed":1,"insertions":98,"deletions":1,"files":["tests/test_cli.py"]},"message":"add set_env_colors tests","epoch":1594409028,"epoch_utc":null},{"commit":"a09d1d8b7687912610598c88d172733d5e29b1ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 12:23:25 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 12:23:25 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":6,"files":["jc/cli.py"]},"message":"move environment variable assignment to main() to simplify tests","epoch":1594409005,"epoch_utc":null},{"commit":"8f4243fbd8d70ca9fd019e984c564e37c81e07db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 10:54:34 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 10:54:34 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1594403674,"epoch_utc":null},{"commit":"47aaf20549ea238443427e69d5841d6996b7afab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 10:50:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 10:50:51 2020 -0700","stats":{"files_changed":1,"insertions":17,"deletions":0,"files":["README.md"]},"message":"add sysctl command parser","epoch":1594403451,"epoch_utc":null},{"commit":"0c5289ea50e4d3d35e80147b4cad32434c19a2a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 10:47:23 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 10:47:23 2020 -0700","stats":{"files_changed":3,"insertions":72,"deletions":2,"files":["tests/fixtures/freebsd12/sysctl-a.json","tests/fixtures/osx-10.14.6/sysctl-a.json","tests/test_sysctl.py"]},"message":"add sysctl tests","epoch":1594403243,"epoch_utc":null},{"commit":"3e53323514906fb84abfaeed0c2ee1fd9090ad8d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 09:58:56 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 09:58:56 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/sysctl.py"]},"message":"don't filter out empty lines","epoch":1594400336,"epoch_utc":null},{"commit":"a5ee9861b9b9b479aee59ea5b1d75f20d7c3c8e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 09:28:32 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 09:28:32 2020 -0700","stats":{"files_changed":3,"insertions":3785,"deletions":1,"files":["tests/fixtures/freebsd12/sysctl-a.json","tests/fixtures/freebsd12/sysctl-a.out","tests/fixtures/osx-10.14.6/sysctl-a.json"]},"message":"update fixtures","epoch":1594398512,"epoch_utc":null},{"commit":"feb8ca76545cba4fd0927273ddf90a77df994006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 09:28:20 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 09:28:20 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/sysctl.md"]},"message":"spelling","epoch":1594398500,"epoch_utc":null},{"commit":"a7abe4473b90c512466db9ae98cfac585689fe2a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 09:03:04 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 09:03:04 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/sysctl.py"]},"message":"spelling","epoch":1594396984,"epoch_utc":null},{"commit":"780b9b61dec3e142e46c9a82146d2af4e1144123","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 08:30:31 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 08:30:31 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/sysctl.py"]},"message":"specify IndexError exception in try/except block","epoch":1594395031,"epoch_utc":null},{"commit":"19ace36ffa659bedf0ba2e43572c9e253592b2e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 08:21:30 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 08:21:30 2020 -0700","stats":{"files_changed":4,"insertions":2167,"deletions":0,"files":["tests/fixtures/osx-10.14.6/sysctl-a.json","tests/fixtures/osx-10.14.6/sysctl-a.out","tests/fixtures/ubuntu-18.04/sysctl-a.json","tests/fixtures/ubuntu-18.04/sysctl-a.out"]},"message":"add fixtures","epoch":1594394490,"epoch_utc":null},{"commit":"5fff8afc9f47f8cc6db8ed3613b90b5cdc683b43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 08:21:15 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 08:21:15 2020 -0700","stats":{"files_changed":1,"insertions":33,"deletions":11,"files":["jc/parsers/sysctl.py"]},"message":"add fixes for freebsd where values can be on separate lines under the key","epoch":1594394475,"epoch_utc":null},{"commit":"4ad230c9279c5eb6c8ed6baf7254b8e9328e5af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 16:35:36 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 9 16:35:36 2020 -0700","stats":{"files_changed":4,"insertions":929,"deletions":14,"files":["docs/parsers/sysctl.md","jc/parsers/sysctl.py","tests/fixtures/centos-7.7/sysctl-a.json","tests/fixtures/centos-7.7/sysctl-a.out"]},"message":"doc update and add test fixtures","epoch":1594337736,"epoch_utc":null},{"commit":"dd98eb1ec8f451eb87a5094e76a7f758dee3fc69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 16:25:41 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 9 16:25:41 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":7,"files":["jc/parsers/sysctl.py"]},"message":"append duplicate key values to original key instead of adding unique keys","epoch":1594337141,"epoch_utc":null},{"commit":"c6baf42e72b4f41ed511e7db943297d03a39c0d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 16:18:33 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 9 16:18:33 2020 -0700","stats":{"files_changed":3,"insertions":94,"deletions":7,"files":["docgen.sh","docs/parsers/sysctl.md","jc/parsers/sysctl.py"]},"message":"doc updates","epoch":1594336713,"epoch_utc":null},{"commit":"e2bac97d563e5ef771ccd8ed1e5c42cbf588b120","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 14:51:15 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 9 14:51:15 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["jc/parsers/sysctl.py"]},"message":"fix for multiple identical keys in sysctl output","epoch":1594331475,"epoch_utc":null},{"commit":"d112ee94d0ec534828c8508d0fb833b768975990","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 14:26:35 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 9 14:26:35 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":4,"files":["jc/parsers/sysctl.py"]},"message":"use try/except and add support for floats in process()","epoch":1594329995,"epoch_utc":null},{"commit":"27b21b2fafab912f21b88b66c7f817cbce155765","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 11:11:29 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 9 11:11:29 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":7,"files":["jc/cli.py"]},"message":"formatting and docstring updates","epoch":1594318289,"epoch_utc":null},{"commit":"8c96d5cd20448a4f7f9736c4d489d6ecc3068ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 10:59:36 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 9 10:59:36 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["requirements.txt"]},"message":"reduce pygments version requirement","epoch":1594317576,"epoch_utc":null},{"commit":"c29ed3fd695f725005333db5e6e2cd844bb4ca14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 10:54:49 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 9 10:54:49 2020 -0700","stats":{"files_changed":1,"insertions":14,"deletions":13,"files":["jc/cli.py"]},"message":"formatting of quotation marks and docstrings","epoch":1594317289,"epoch_utc":null},{"commit":"cedf603f121636bdfa95432059c3c275c3ea3e9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 09:59:00 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 9 09:59:00 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/cli.py"]},"message":"minor formatting","epoch":1594313940,"epoch_utc":null},{"commit":"279161c36f288c27a9789054ae372fe8ceb58a94","merge":"bc7116c ce0b43d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 09:48:58 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Jul 9 09:48:58 2020 -0700","message":"Merge pull request #72 from duelafn/pygments-2.3\n\nSupport older pygments","epoch":1594313338,"epoch_utc":null},{"commit":"ce0b43d919f07d96d1b94e9d14d03e935e80011d","author":"Dean Serenevy","author_email":"dean@serenevy.net","date":"Thu Jul 9 12:44:41 2020 -0400","commit_by":"Dean Serenevy","commit_by_email":"dean@serenevy.net","commit_by_date":"Thu Jul 9 12:44:41 2020 -0400","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"]},"message":"Remove dependency on 3rd party packaging library","epoch":1594323881,"epoch_utc":null},{"commit":"ddafa5bf06066bab8e9587be902d6752fcf51605","author":"Dean Serenevy","author_email":"dean@serenevy.net","date":"Thu Jul 9 11:27:01 2020 -0400","commit_by":"Dean Serenevy","commit_by_email":"dean@serenevy.net","commit_by_date":"Thu Jul 9 11:39:34 2020 -0400","stats":{"files_changed":2,"insertions":47,"deletions":7,"files":["jc/cli.py","setup.py"]},"message":"Support older pygments","epoch":1594319221,"epoch_utc":null},{"commit":"bc7116c31bacf3159aef775fd0e615187420b010","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 08:30:10 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 9 08:30:10 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":8,"files":["jc/cli.py"]},"message":"fix JC_COLORS env bug and simplify set_env_colors()","epoch":1594308610,"epoch_utc":null},{"commit":"53b709272115e769dac905296fa3b000c1cdd66a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 8 16:40:28 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 8 16:40:28 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":11,"files":["jc/cli.py"]},"message":"remove side-effects from functions and print in main()","epoch":1594251628,"epoch_utc":null},{"commit":"beb9174b1b35937ae1fb99778369ae643a8f1005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 8 15:42:06 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 8 15:42:06 2020 -0700","stats":{"files_changed":1,"insertions":123,"deletions":0,"files":["jc/parsers/sysctl.py"]},"message":"add sysctl parser","epoch":1594248126,"epoch_utc":null},{"commit":"aea41ed341c8d53cc07c35e8044e8f816ddd2fed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 8 15:41:46 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 8 15:41:46 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/cli.py"]},"message":"move verbose_debug enable earlier in code to catch more issues. add sysctl and version bump","epoch":1594248106,"epoch_utc":null},{"commit":"d789494cb1f691aa352419aaefc692f654477177","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 8 05:59:19 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 8 05:59:19 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/tracebackplus.py"]},"message":"change type check to use isinstance","epoch":1594213159,"epoch_utc":null},{"commit":"608e7b4cff081f92177e4151ffa1a91a4a6895ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 6 10:52:12 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 6 10:52:12 2020 -0700","stats":{"files_changed":1,"insertions":61,"deletions":0,"files":["jc/tracebackplus.py"]},"message":"add license info","epoch":1594057932,"epoch_utc":null},{"commit":"4ee199c02a78c2707c5d1427d7c8fae56df5671c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 6 10:41:01 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 6 10:41:01 2020 -0700","stats":{"files_changed":2,"insertions":189,"deletions":3,"files":["jc/cli.py","jc/tracebackplus.py"]},"message":"use tracebackplus instead of cgitb since cgitb is depricated","epoch":1594057261,"epoch_utc":null},{"commit":"fbf47d408501dadda4671fb530f5e11859e85d53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 1 13:28:58 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 1 13:28:58 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add arch linux","epoch":1593635338,"epoch_utc":null},{"commit":"5a238e4b4204f0552327534ef798c28d3ad4f578","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 1 09:11:32 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 1 09:11:32 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"remove updates-testing from fedora command","epoch":1593619892,"epoch_utc":null},{"commit":"f852b8246a8f9e5f7d9144fed3a0daa4eddfe035","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 11:50:37 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jun 30 11:50:37 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/utils.py"]},"message":"wrap warning message","epoch":1593543037,"epoch_utc":null},{"commit":"88140d929a500ee78f807862c4912c399df2a460","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 11:37:33 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jun 30 11:37:33 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"wrap error message in code","epoch":1593542253,"epoch_utc":null},{"commit":"45f726824027af49c437b6e81e4700f7098af320","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 11:34:08 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jun 30 11:34:08 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"add -dd to error message","epoch":1593542048,"epoch_utc":null},{"commit":"3a3c8e4d4a77135eaee5cb30c3107a4531c300ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 11:31:08 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jun 30 11:31:08 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/cli.py"]},"message":"move verbose_debug under debug check","epoch":1593541868,"epoch_utc":null},{"commit":"c1ac183a0472e93226c9ee1905f56c5183e3721f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 11:26:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jun 30 11:26:09 2020 -0700","stats":{"files_changed":1,"insertions":15,"deletions":22,"files":["jc/cli.py"]},"message":"simplify debug option","epoch":1593541569,"epoch_utc":null},{"commit":"18bb779ee5cd5821764b03173f16e922f753c64d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 09:39:05 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jun 30 09:39:05 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"formatting: double quotes to single quotes","epoch":1593535145,"epoch_utc":null},{"commit":"8b6612fe7911ab9e0bf8d29be60865d3b8aa3fd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 07:56:34 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jun 30 07:56:34 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/cli.py"]},"message":"move JC_COLORS parsing error message","epoch":1593528994,"epoch_utc":null},{"commit":"fde0bc853415418e01616861ace5048770bd97f8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jun 27 18:53:19 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Jun 27 18:53:19 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":34,"files":["README.md"]},"message":"improve package install info","epoch":1593309199,"epoch_utc":null},{"commit":"e661a78939ff067b8a61f08301c178dd10a344ab","merge":"b969751 847e346","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jun 27 18:43:02 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sat Jun 27 18:43:02 2020 -0700","message":"Merge pull request #71 from wigust/guix\n\nadd guix package info","epoch":1593308582,"epoch_utc":null},{"commit":"847e346602789bf58e3515319e9d080dfb897fc9","author":"Oleg Pykhalov","author_email":"go.wigust@gmail.com","date":"Sat Jun 27 12:58:59 2020 +0300","commit_by":"Oleg Pykhalov","commit_by_email":"go.wigust@gmail.com","commit_by_date":"Sat Jun 27 13:01:56 2020 +0300","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]},"message":"add guix package info","epoch":1593287939,"epoch_utc":null},{"commit":"b9697516887c61f08d8d7b1dc9130350e5bdba9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 26 09:53:57 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jun 26 09:53:57 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]},"message":"add other references","epoch":1593190437,"epoch_utc":null},{"commit":"ad6f2ba03a293a7f55e456fa5f5b55ee3cbcd4ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 21:16:52 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 25 21:16:52 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1593145012,"epoch_utc":null},{"commit":"63c6a5edc0e9001b143595fd8b96f1b4a1377a3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 21:12:30 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 25 21:12:30 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"formatting","epoch":1593144750,"epoch_utc":null},{"commit":"9f4cf9dd5efe94adfff0961fdb73097ca27c5463","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 21:11:21 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 25 21:11:21 2020 -0700","stats":{"files_changed":1,"insertions":197,"deletions":67,"files":["README.md"]},"message":"formatting","epoch":1593144681,"epoch_utc":null},{"commit":"51331b6dc01eee00847fa4be549ffde365373a01","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 13:01:10 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 25 13:01:10 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["README.md"]},"message":"formatting","epoch":1593115270,"epoch_utc":null},{"commit":"efb6761033319644bf9cdae6288ff5609f6482ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 12:59:56 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 25 12:59:56 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1593115196,"epoch_utc":null},{"commit":"6a4f737a0f1c322bebccf69809d9816fc770c5ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 12:56:06 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 25 12:56:06 2020 -0700","stats":{"files_changed":1,"insertions":88,"deletions":115,"files":["README.md"]},"message":"update json syntax highlighting","epoch":1593114966,"epoch_utc":null},{"commit":"be6864b778ab721bcba5fc3221576153be7b2ed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 12:28:23 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 25 12:28:23 2020 -0700","stats":{"files_changed":1,"insertions":26,"deletions":26,"files":["README.md"]},"message":"add syntax highlighting tags","epoch":1593113303,"epoch_utc":null},{"commit":"de3b91a36cfcaf565b26b1da42f1e87835da4dc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 07:38:39 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 25 07:38:39 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add -dd option","epoch":1593095919,"epoch_utc":null},{"commit":"ef5482c3b5afa0ee8e85851bebab1c104cb59936","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 07:29:28 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 25 07:29:28 2020 -0700","stats":{"files_changed":3,"insertions":15,"deletions":7,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"add verbose debug option","epoch":1593095368,"epoch_utc":null},{"commit":"d20b795137036f8b889eb231cb4f14b756ec6479","merge":"69018cd 8a13406","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 11:28:23 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Jun 22 11:28:23 2020 -0700","message":"Merge pull request #70 from kellyjonbrazil/dev\n\nDev v1.11.7","epoch":1592850503,"epoch_utc":null},{"commit":"8a134065dff429551449c1ea16a36d745fdab580","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 11:23:37 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jun 22 11:23:37 2020 -0700","stats":{"files_changed":12,"insertions":12,"deletions":12,"files":["tests/fixtures/centos-7.7/iptables-filter-line-numbers.json","tests/fixtures/centos-7.7/iptables-filter-nv.json","tests/fixtures/centos-7.7/iptables-filter.json","tests/fixtures/centos-7.7/iptables-mangle.json","tests/fixtures/centos-7.7/iptables-nat.json","tests/fixtures/centos-7.7/iptables-raw.json","tests/fixtures/ubuntu-18.04/iptables-filter-line-numbers.json","tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","tests/fixtures/ubuntu-18.04/iptables-filter.json","tests/fixtures/ubuntu-18.04/iptables-mangle.json","tests/fixtures/ubuntu-18.04/iptables-nat.json","tests/fixtures/ubuntu-18.04/iptables-raw.json"]},"message":"update fixtures for last chain fix","epoch":1592850217,"epoch_utc":null},{"commit":"22aee1bfa40ed1d3c4df28cd934ef0edfc5c458c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 11:23:15 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jun 22 11:23:15 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1592850195,"epoch_utc":null},{"commit":"b282820fd67dcc96c058198f97b066e7b402d1f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 11:09:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jun 22 11:09:09 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/iptables.py"]},"message":"fix to include the final chain in output","epoch":1592849349,"epoch_utc":null},{"commit":"3ee098306daf903687cb0febf92773a81e216111","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 10:48:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jun 22 10:48:51 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"]},"message":"version bump","epoch":1592848131,"epoch_utc":null},{"commit":"09e8f379a64b3b37bb99b4291c10aa4a5cdedea4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 10:47:34 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jun 22 10:47:34 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":11,"files":["jc/parsers/iptables.py"]},"message":"iptables code optimizations","epoch":1592848054,"epoch_utc":null},{"commit":"69018cdb3a77fcdcb5648e3b89933148c55a6412","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 14 17:39:14 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jun 14 17:39:14 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"fix date","epoch":1592181554,"epoch_utc":null},{"commit":"d0d7254c6acc7be4341618d231a5b166f640b287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 14 17:23:10 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jun 14 17:23:10 2020 -0700","stats":{"files_changed":2,"insertions":26,"deletions":0,"files":["docs/utils.md","jc/utils.py"]},"message":"add docstring","epoch":1592180590,"epoch_utc":null},{"commit":"cc0f0971d76b6f3dec8d989e83f5676db8f2c6d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 14 17:17:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jun 14 17:17:40 2020 -0700","stats":{"files_changed":56,"insertions":476,"deletions":439,"files":["changelog.txt","jc/cli.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/utils.py","setup.py"]},"message":"Improve and standardize empty data check for all parsers","epoch":1592180260,"epoch_utc":null},{"commit":"2af61730f0f5b9bc6f1f4c5d9d808ff6ccb0faeb","merge":"07b179c 83f41b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 12 12:34:34 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Jun 12 12:34:34 2020 -0700","message":"Merge pull request #68 from kellyjonbrazil/dev\n\nDev v1.11.5","epoch":1591990474,"epoch_utc":null},{"commit":"83f41b83dc01c462c6a2295e9fc56ad42a3b62f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 12 12:30:19 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jun 12 12:30:19 2020 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1591990219,"epoch_utc":null},{"commit":"1fb84fce88e0306c26a5771fa4c6dc14a21409a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 12 12:25:07 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jun 12 12:25:07 2020 -0700","stats":{"files_changed":16,"insertions":137,"deletions":67,"files":["changelog.txt","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/xml.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py","tests/test_timedatectl.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py","tests/test_who.py","tests/test_xml.py","tests/test_yaml.py"]},"message":"fix for no data","epoch":1591989907,"epoch_utc":null},{"commit":"a8837e12447c52dbe438b19c07777b9b4a22081c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 12 07:57:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jun 12 07:57:40 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"remove --upgrade from pip install","epoch":1591973860,"epoch_utc":null},{"commit":"04d2eec5581998d1a80e762b670af76c92111065","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 11 17:59:06 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 11 17:59:06 2020 -0700","stats":{"files_changed":6,"insertions":56,"deletions":30,"files":["changelog.txt","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","tests/test_stat.py","tests/test_systemctl.py","tests/test_systemctl_lj.py"]},"message":"fix for no data","epoch":1591923546,"epoch_utc":null},{"commit":"1b57ec92f052ddc8959540511512190a539262b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 11 17:52:03 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 11 17:52:03 2020 -0700","stats":{"files_changed":21,"insertions":152,"deletions":68,"files":["changelog.txt","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/pip_list.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","tests/fixtures/centos-7.7/ss-sudo-a.json","tests/fixtures/ubuntu-18.04/ss-sudo-a.json","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_ntpq.py","tests/test_passwd.py","tests/test_pip_list.py","tests/test_pip_show.py","tests/test_ps.py","tests/test_route.py","tests/test_shadow.py","tests/test_ss.py"]},"message":"fix for no data","epoch":1591923123,"epoch_utc":null},{"commit":"4d8859540417e99e273fda2cea959240f3c37ea3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 11 17:16:11 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 11 17:16:11 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/df.py"]},"message":"enhance empty data check","epoch":1591920971,"epoch_utc":null},{"commit":"52b1272a3aab09b5a8c4a277fbf9975a1b8b6921","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 11 17:13:45 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 11 17:13:45 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/blkid.py"]},"message":"enhance empty data check","epoch":1591920825,"epoch_utc":null},{"commit":"d2ccad6a83138fbf6eb863634fd354dc6c3fa238","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 11 17:09:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 11 17:09:51 2020 -0700","stats":{"files_changed":4,"insertions":33,"deletions":15,"files":["jc/parsers/lsblk.py","jc/parsers/lsmod.py","tests/test_lsblk.py","tests/test_lsmod.py"]},"message":"fix for no data","epoch":1591920591,"epoch_utc":null},{"commit":"cad6dde4ac66cf970a7f52d8e7958ea35c083629","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:54:06 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:54:06 2020 -0700","stats":{"files_changed":10,"insertions":60,"deletions":0,"files":["tests/test_group.py","tests/test_gshadow.py","tests/test_history.py","tests/test_hosts.py","tests/test_id.py","tests/test_ifconfig.py","tests/test_ini.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_last.py"]},"message":"fix for no data","epoch":1591836846,"epoch_utc":null},{"commit":"06811c3539b0d871e13e9b8d3b51f731d06fd2ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:41:54 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:41:54 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_fstab.py"]},"message":"add test for no data","epoch":1591836114,"epoch_utc":null},{"commit":"0cb23c2b21f464082609409261de8e95eb1b0d55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:40:18 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:40:18 2020 -0700","stats":{"files_changed":3,"insertions":17,"deletions":7,"files":["changelog.txt","jc/parsers/free.py","tests/test_free.py"]},"message":"add fix for no data","epoch":1591836018,"epoch_utc":null},{"commit":"ac4688dca22334385ec2c87027f2f14f9ca93ce4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:35:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:35:40 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_file.py"]},"message":"add test for no data","epoch":1591835740,"epoch_utc":null},{"commit":"326c3b4670a0e47cbe2988b38fb1c1b26a4db890","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:34:22 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:34:22 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_env.py"]},"message":"add test for no data","epoch":1591835662,"epoch_utc":null},{"commit":"9b29d0c2688eda2e4707aeba693ed14fa433a706","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:32:39 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:32:39 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_du.py"]},"message":"add test for no data","epoch":1591835559,"epoch_utc":null},{"commit":"e0013c38710b4ecf3a588a16d1d908effc23b485","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:31:14 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:31:14 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["tests/test_dmidecode.py"]},"message":"add test for no data","epoch":1591835474,"epoch_utc":null},{"commit":"a75744075b0628bdb711d8a929a759b4b4067edb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:29:41 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:29:41 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_dig.py"]},"message":"add no data test","epoch":1591835381,"epoch_utc":null},{"commit":"525aec1a02380f17ab7827434616f981f7457bd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:27:46 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:27:46 2020 -0700","stats":{"files_changed":3,"insertions":16,"deletions":7,"files":["changelog.txt","jc/parsers/df.py","tests/test_df.py"]},"message":"fix for no data","epoch":1591835266,"epoch_utc":null},{"commit":"0bf9a7a072a80e10a29c6bb3943b107352dc1d45","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:22:59 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:22:59 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_csv.py"]},"message":"add test for no data","epoch":1591834979,"epoch_utc":null},{"commit":"d8f2f4c95bc699386b9fe93d10e13637875a1dcf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:20:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:20:09 2020 -0700","stats":{"files_changed":5,"insertions":96,"deletions":80,"files":["changelog.txt","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/test_crontab.py","tests/test_crontab_u.py"]},"message":"fix for no data","epoch":1591834809,"epoch_utc":null},{"commit":"35d733b44f3705bed3dd8ce340379470f199f772","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:10:53 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:10:53 2020 -0700","stats":{"files_changed":5,"insertions":70,"deletions":60,"files":["changelog.txt","jc/parsers/arp.py","jc/parsers/blkid.py","tests/test_arp.py","tests/test_blkid.py"]},"message":"fix for no data","epoch":1591834253,"epoch_utc":null},{"commit":"9179b4175c5063bed14ecb96ba24c517920c0d94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 16:40:11 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 16:40:11 2020 -0700","stats":{"files_changed":3,"insertions":16,"deletions":0,"files":["changelog.txt","tests/test_airport.py","tests/test_airport_s.py"]},"message":"add nodata tests","epoch":1591832411,"epoch_utc":null},{"commit":"bb07d78c78ff5c5b2ee4d2086ffc6dd5ebedf0fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 16:39:49 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 16:39:49 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":8,"files":["jc/parsers/airport_s.py"]},"message":"add nodata fix","epoch":1591832389,"epoch_utc":null},{"commit":"07b179cd7f8853ff6aca0b27a703e198c158ca72","merge":"12a80e7 054422d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 06:07:42 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Jun 10 06:07:42 2020 -0700","message":"Merge pull request #67 from kellyjonbrazil/Dev\n\nDev v1.11.4","epoch":1591794462,"epoch_utc":null},{"commit":"054422d8373e7b8def18ddabd447062cb9cc3137","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 06:04:50 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 06:04:50 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_ls.py"]},"message":"add test for empty directory","epoch":1591794290,"epoch_utc":null},{"commit":"3e052d18102e98a09cbba21866855691eaccc216","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 05:53:20 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 05:53:20 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1591793600,"epoch_utc":null},{"commit":"c8e72805cf9def478b56c925f4afcc0ece1daac0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 05:51:12 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 05:51:12 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":10,"files":["jc/parsers/ls.py"]},"message":"fix error on empty directory","epoch":1591793472,"epoch_utc":null},{"commit":"12a80e7db0f6c7d536674ad8d34e26bba9a1f1f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 9 15:13:53 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jun 9 15:13:53 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":2,"files":["README.md"]},"message":"add fedora package info","epoch":1591740833,"epoch_utc":null},{"commit":"ee7ff9a09d3373f60ae1645376ccc0057803147e","merge":"346a14c f6478fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 9 11:22:39 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Jun 9 11:22:39 2020 -0700","message":"Merge pull request #66 from kellyjonbrazil/dev\n\nDev v1.11.3","epoch":1591726959,"epoch_utc":null},{"commit":"f6478fb636ead8d1e53e4a88d59e55222df37a8f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 9 11:18:47 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jun 9 11:18:47 2020 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1591726727,"epoch_utc":null},{"commit":"811a0b0495819925199d70db266066197cc6824e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 8 10:54:42 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jun 8 10:54:42 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add info regarding the local parser plugin files","epoch":1591638882,"epoch_utc":null},{"commit":"aeb48edf727f23cc4f8fd9b760cfb69f03098278","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 8 10:48:58 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jun 8 10:48:58 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"use $LOCALAPPDATA variable for windows","epoch":1591638538,"epoch_utc":null},{"commit":"b1e94f0df7041bcae97455508f423178aef9d61d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 8 10:44:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jun 8 10:44:09 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"heading formatting","epoch":1591638249,"epoch_utc":null},{"commit":"60050e3c0fe34980f7db5b8bd46430f953f0c3a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 8 10:42:45 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jun 8 10:42:45 2020 -0700","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["README.md"]},"message":"fix linux/unix directory and add note about the XDG specification followed","epoch":1591638165,"epoch_utc":null},{"commit":"39ef09aa5b0d43b5128299511afe80336aa38203","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 13:30:22 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jun 7 13:30:22 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"]},"message":"add local parser plugin feature","epoch":1591561822,"epoch_utc":null},{"commit":"8377d4311611c242e16eaebe66dafac9529150d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 13:26:03 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jun 7 13:26:03 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1591561563,"epoch_utc":null},{"commit":"54e4c447ab34ae54c73c92df40f1b4ca6ffb2277","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:52:16 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jun 7 12:52:16 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"]},"message":"clean up formatting","epoch":1591559536,"epoch_utc":null},{"commit":"937a9fa9cf2ede8e686ba853989f33e4a483a0ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:41:50 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jun 7 12:41:50 2020 -0700","stats":{"files_changed":4,"insertions":613,"deletions":3,"files":["jc/appdirs.py","jc/cli.py","requirements.txt","setup.py"]},"message":"vendorize appdirs module","epoch":1591558910,"epoch_utc":null},{"commit":"808ff6cf0e784cf0c2d523ff2e01197cb6e88c82","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:29:10 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jun 7 12:29:10 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["README.md"]},"message":"more acknowledgments updates","epoch":1591558150,"epoch_utc":null},{"commit":"7f5c649a95a871c3cd8d48731a6d26dcba6f725b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:23:28 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jun 7 12:23:28 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update acknowledgments","epoch":1591557808,"epoch_utc":null},{"commit":"b72727dec995de1ca5f68ee17a710b086c87d612","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:13:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jun 7 12:13:40 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":2,"files":["README.md"]},"message":"update custom parsers info","epoch":1591557220,"epoch_utc":null},{"commit":"3fc88bfb334143b68a9cb78d4034f33e7c0bcf76","merge":"346a14c 9f2279d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:04:44 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Jun 7 12:04:44 2020 -0700","message":"Merge pull request #65 from duelafn/local-parsers\n\nLoad custom parsers from /jc/jcparsers","epoch":1591556684,"epoch_utc":null},{"commit":"9f2279d5867eb89d4b4b7b4ffca290166ec97c48","author":"Dean Serenevy","author_email":"dean@serenevy.net","date":"Sat Jun 6 14:30:40 2020 -0400","commit_by":"Dean Serenevy","commit_by_email":"dean@serenevy.net","commit_by_date":"Sat Jun 6 14:42:27 2020 -0400","stats":{"files_changed":4,"insertions":29,"deletions":2,"files":["README.md","jc/cli.py","requirements.txt","setup.py"]},"message":"Load custom parsers from /jc/jcparsers","epoch":1591479040,"epoch_utc":null},{"commit":"346a14cb9bb0d762fc3fa366ad97e5ff85f3992a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:44:14 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 20:44:14 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"change osx_device to unix_device","epoch":1590896654,"epoch_utc":null},{"commit":"dac00d17ff9f3d2bb959697b6e567015bfc2702b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:33:50 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 20:33:50 2020 -0700","stats":{"files_changed":3,"insertions":17,"deletions":0,"files":["tests/fixtures/nixos/route-ee.json","tests/fixtures/nixos/route-ee.out","tests/test_route.py"]},"message":"add nixos test","epoch":1590896030,"epoch_utc":null},{"commit":"9ca7cd40601b97829e8f88071fdfb928d939f7e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:33:39 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 20:33:39 2020 -0700","stats":{"files_changed":1,"insertions":17,"deletions":34,"files":["jc/parsers/route.py"]},"message":"update docs","epoch":1590896019,"epoch_utc":null},{"commit":"aa31628970b12295a41dff20e829fcce9f8a4d07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:33:00 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 20:33:00 2020 -0700","stats":{"files_changed":5,"insertions":70,"deletions":63,"files":["README.md","docs/parsers/netstat.md","docs/parsers/route.md","docs/parsers/stat.md","jc/parsers/netstat.py"]},"message":"update docs","epoch":1590895980,"epoch_utc":null},{"commit":"bed694fcf5c8c31bbd4f3e88759fe7ab82382d24","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:13:21 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 20:13:21 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump","epoch":1590894801,"epoch_utc":null},{"commit":"4b4af69fa184896ec15b5be7dc8416f36f921d5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:12:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 20:12:51 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"fix date","epoch":1590894771,"epoch_utc":null},{"commit":"9d96190a5b19e8d71c3ac66eb0303d269dd4ce5d","merge":"96df396 fa44d48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:08:32 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sat May 30 20:08:32 2020 -0700","message":"Merge pull request #64 from kellyjonbrazil/dev\n\nDev v1.11.2","epoch":1590894512,"epoch_utc":null},{"commit":"fa44d48c094a55e499c2c780d109bf277736b42e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 19:50:38 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 19:50:38 2020 -0700","stats":{"files_changed":6,"insertions":129,"deletions":7,"files":["changelog.txt","jc/parsers/stat.py","tests/fixtures/freebsd12/stat.json","tests/fixtures/freebsd12/stat.out","tests/fixtures/osx-10.14.6/stat.json","tests/test_stat.py"]},"message":"freebsd fixes, tests, and fixtures","epoch":1590893438,"epoch_utc":null},{"commit":"4ef961c2788c935b1fea1c9777b976e7b89e7367","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 19:18:01 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 19:18:01 2020 -0700","stats":{"files_changed":3,"insertions":20,"deletions":0,"files":["tests/fixtures/freebsd12/ntpq-p.json","tests/fixtures/freebsd12/ntpq-p.out","tests/test_ntpq.py"]},"message":"add freebsd test and fixtures","epoch":1590891481,"epoch_utc":null},{"commit":"292a837d5c47165ccb155f079b0a114b5c17a98e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 18:54:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 18:54:09 2020 -0700","stats":{"files_changed":3,"insertions":22,"deletions":0,"files":["tests/fixtures/freebsd12/last.json","tests/fixtures/freebsd12/last.out","tests/test_last.py"]},"message":"add tests and fixtures for freebsd12","epoch":1590890049,"epoch_utc":null},{"commit":"aa7b915d847dbd29d2c09b2cc40b847e37174ffb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 18:53:46 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 18:53:46 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/last.py"]},"message":"version bump","epoch":1590890026,"epoch_utc":null},{"commit":"c46fe73236b912d2ee89dfb36ff259fe95fd0479","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 18:53:35 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 18:53:35 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"add last fixes for freebsd","epoch":1590890015,"epoch_utc":null},{"commit":"039b2c129cbe79d2d23b1194b043d8b730609956","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 18:42:26 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 18:42:26 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":1,"files":["jc/parsers/last.py"]},"message":"freebsd fixes","epoch":1590889346,"epoch_utc":null},{"commit":"8f2e5e4808b30c658a4cb87125639e4d7d6c15d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 17:46:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 17:46:09 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"fix compatible logic","epoch":1590885969,"epoch_utc":null},{"commit":"c4da8e4f78e6b4aaa4aff76ae042be9aaec832a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 17:05:41 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 17:05:41 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":3,"files":["README.md"]},"message":"add nixos and freebsd to tested. update new arp fields","epoch":1590883541,"epoch_utc":null},{"commit":"bcab9078a4c2bfd6ae4dca9448b577d9ed0fc01c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 17:02:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 17:02:09 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"add w parser fix","epoch":1590883329,"epoch_utc":null},{"commit":"b3c6c1ea925bf7cd76368f5074fb8af52a844522","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 17:01:59 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 17:01:59 2020 -0700","stats":{"files_changed":4,"insertions":29,"deletions":5,"files":["jc/parsers/w.py","tests/fixtures/nixos/w.json","tests/fixtures/nixos/w.out","tests/test_w.py"]},"message":"strip whitespace in string fields and add tests","epoch":1590883319,"epoch_utc":null},{"commit":"a3af8662bd491e344c93d24afabd23e90efd8086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 16:26:07 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 16:26:07 2020 -0700","stats":{"files_changed":3,"insertions":205,"deletions":3,"files":["tests/fixtures/osx-10.11.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a2.json"]},"message":"add permanent field","epoch":1590881167,"epoch_utc":null},{"commit":"35940d0bc80bf61b11f40b1e1043835f26eb391c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 16:25:53 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 16:25:53 2020 -0700","stats":{"files_changed":6,"insertions":59,"deletions":4,"files":["changelog.txt","docs/parsers/arp.md","jc/parsers/arp.py","tests/fixtures/freebsd12/arp-a.json","tests/fixtures/freebsd12/arp-a.out","tests/test_arp.py"]},"message":"add freebsd permanent and expires fields","epoch":1590881153,"epoch_utc":null},{"commit":"26994cdcb7148d2c9d1701bca9541d247356260b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:51:54 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 15:51:54 2020 -0700","stats":{"files_changed":8,"insertions":115,"deletions":85,"files":["docs/parsers/df.md","docs/parsers/fstab.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/route.md","docs/parsers/stat.md","docs/parsers/uname.md"]},"message":"add freebsd compatibility info","epoch":1590879114,"epoch_utc":null},{"commit":"017159a829691cb6a7174f123d024eb252179b75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:51:06 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 15:51:06 2020 -0700","stats":{"files_changed":15,"insertions":221,"deletions":0,"files":["tests/fixtures/freebsd12/netstat-Aa.json","tests/fixtures/freebsd12/netstat-AaT.json","tests/fixtures/freebsd12/netstat-AaT.out","tests/fixtures/freebsd12/netstat-AanP.json","tests/fixtures/freebsd12/netstat-AanP.out","tests/fixtures/freebsd12/netstat-Aax.json","tests/fixtures/freebsd12/netstat-Aax.out","tests/fixtures/freebsd12/netstat-aT.json","tests/fixtures/freebsd12/netstat-aT.out","tests/fixtures/freebsd12/netstat-an.json","tests/fixtures/freebsd12/netstat-i.json","tests/fixtures/freebsd12/netstat-ib.json","tests/fixtures/freebsd12/netstat-ib.out","tests/fixtures/freebsd12/netstat-r.json","tests/test_netstat.py"]},"message":"add freebsd nestat tests and fixtures","epoch":1590879066,"epoch_utc":null},{"commit":"b4e9c85e08d199dad67f03c7603194278a022696","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:50:45 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 15:50:45 2020 -0700","stats":{"files_changed":1,"insertions":12,"deletions":0,"files":["jc/parsers/netstat_freebsd_osx.py"]},"message":"fixup -T freebsd output and add whitespace stripping to parse_post","epoch":1590879045,"epoch_utc":null},{"commit":"189146cd84cfad262f2b2601bb0cb4b9dde2587e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:50:07 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 15:50:07 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/netstat.py"]},"message":"add more ints. remove whitespace strip code and move to freebsd_osx module","epoch":1590879007,"epoch_utc":null},{"commit":"af34153ffab10ca1ad7f44736d379d91ae43c813","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:48:56 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 15:48:56 2020 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["changelog.txt","jc/cli.py"]},"message":"version bump","epoch":1590878936,"epoch_utc":null},{"commit":"bf2ff3ffbb639446779b1f04f2997707d99c0a1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:48:29 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 15:48:29 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":1,"files":["jc/utils.py"]},"message":"fix compatibility search for platform names that append the version number (e.g. freebsd12)","epoch":1590878909,"epoch_utc":null},{"commit":"6423c9efd69e938af38934a97ca6b65009e8f07e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 15:48:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 15:48:51 2020 -0700","stats":{"files_changed":1,"insertions":34,"deletions":5,"files":["jc/parsers/netstat.py"]},"message":"integer and float updates","epoch":1590792531,"epoch_utc":null},{"commit":"58ab0d4ece7f006ce9431afb9e0fecbe60930be7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 15:14:44 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 15:14:44 2020 -0700","stats":{"files_changed":4,"insertions":12,"deletions":4,"files":["changelog.txt","jc/parsers/netstat.py","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json"]},"message":"strip whitespace from string fields","epoch":1590790484,"epoch_utc":null},{"commit":"83a738bf4d756036d6269b9153220d7f1018ac9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 14:16:11 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 14:16:11 2020 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json"]},"message":"update fixtures for osx_flags and osx_inode name change to unix_flags and unix_inode","epoch":1590786971,"epoch_utc":null},{"commit":"3640671fc6a67c9628fd47e19e9fe0a0738439ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 14:15:28 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 14:15:28 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/{netstat_osx.py => netstat_freebsd_osx.py}"]},"message":"rename module","epoch":1590786928,"epoch_utc":null},{"commit":"1da623b30ef6f9b12ac231518d2d4e7dadcf717b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 14:14:48 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 14:14:48 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["changelog.txt"]},"message":"add items","epoch":1590786888,"epoch_utc":null},{"commit":"b10ca64646e93d9797182ea046f4956a17b37627","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 14:14:37 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 14:14:37 2020 -0700","stats":{"files_changed":1,"insertions":71,"deletions":71,"files":["jc/parsers/netstat.py"]},"message":"change osx_inode and osx_flags to unix_inode and unix_flags. Also rename netstat_osx module to netstat_freebsd_osx","epoch":1590786877,"epoch_utc":null},{"commit":"2128763ee67a07da6ebf123abeec39794bc1f4e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 13:25:19 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 13:25:19 2020 -0700","stats":{"files_changed":1,"insertions":12,"deletions":12,"files":["tests/test_netstat.py"]},"message":"fix osx version from 16.4 to 14.6","epoch":1590783919,"epoch_utc":null},{"commit":"a27e7ed39c63c04cfa78caceaada42f7a9496a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 13:24:52 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 13:24:52 2020 -0700","stats":{"files_changed":12,"insertions":12,"deletions":12,"files":["tests/fixtures/centos-7.7/netstat-r.json","tests/fixtures/centos-7.7/netstat-rne.json","tests/fixtures/centos-7.7/netstat-rnee.json","tests/fixtures/centos-7.7/route-vn.json","tests/fixtures/centos-7.7/route.json","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-rnl.json","tests/fixtures/ubuntu-18.04/netstat-r.json","tests/fixtures/ubuntu-18.04/netstat-rne.json","tests/fixtures/ubuntu-18.04/netstat-rnee.json","tests/fixtures/ubuntu-18.04/route-vn.json","tests/fixtures/ubuntu-18.04/route.json"]},"message":"test updates for added route_flags_pretty and flags_pretty fields","epoch":1590783892,"epoch_utc":null},{"commit":"f07b7eaa474eb87dbdbc7fbe41b9386feff7bee2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 12:55:16 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 12:55:16 2020 -0700","stats":{"files_changed":1,"insertions":38,"deletions":12,"files":["jc/parsers/route.py"]},"message":"add flags_pretty","epoch":1590782116,"epoch_utc":null},{"commit":"6ce18de84ce16a926f9cd97c3210ef209c3352da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 12:51:04 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 12:51:04 2020 -0700","stats":{"files_changed":3,"insertions":130,"deletions":69,"files":["jc/parsers/netstat.py","jc/parsers/netstat_linux.py","jc/parsers/netstat_osx.py"]},"message":"add route_flags_pretty","epoch":1590781864,"epoch_utc":null},{"commit":"8631b756e7ab8cd71c2a3eb288e2d1823cec5782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 12:05:46 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 12:05:46 2020 -0700","stats":{"files_changed":4,"insertions":76,"deletions":0,"files":["tests/fixtures/freebsd12/netstat-Aa.out","tests/fixtures/freebsd12/netstat-an.out","tests/fixtures/freebsd12/netstat-i.out","tests/fixtures/freebsd12/netstat-r.out"]},"message":"add freebsd test files","epoch":1590779146,"epoch_utc":null},{"commit":"7414d984125300164a5b6156d7a80128d4d6cb15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 12:05:34 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 12:05:34 2020 -0700","stats":{"files_changed":6,"insertions":18,"deletions":18,"files":["jc/parsers/df.py","jc/parsers/fstab.py","jc/parsers/mount.py","jc/parsers/ntpq.py","jc/parsers/stat.py","jc/parsers/uname.py"]},"message":"add freebsd compatibility","epoch":1590779134,"epoch_utc":null},{"commit":"d7b19892e8fb11e17fcbadcdbb08d49897d7754f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 12:04:58 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 12:04:58 2020 -0700","stats":{"files_changed":2,"insertions":10,"deletions":7,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"]},"message":"add freebsd support for netstat -i","epoch":1590779098,"epoch_utc":null},{"commit":"96df396eaf4e030113005a95e525d644c394dfe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 07:35:25 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 07:35:25 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1590762925,"epoch_utc":null},{"commit":"2f6f640317da5af894f34f187c4243ef0c599d07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 27 17:11:20 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 27 17:11:20 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"spelling","epoch":1590624680,"epoch_utc":null},{"commit":"c4a0a50f3a3ac5833ab5d2f8a0cb3f18da335812","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 27 17:08:54 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 27 17:08:54 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]},"message":"add nix-env","epoch":1590624534,"epoch_utc":null},{"commit":"658f8a3842273cea049689b3aea15d89a7294b24","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 27 14:58:16 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 27 14:58:16 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":3,"files":["README.md"]},"message":"add zypper and ports info","epoch":1590616696,"epoch_utc":null},{"commit":"bfb876a1e394ff63c6773965ba0b65da4e109c1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 27 09:52:13 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 27 09:52:13 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1590598333,"epoch_utc":null},{"commit":"90c34b1f4ee2d9ec8125346bb90b227f76ada2ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 26 17:31:56 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 26 17:31:56 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"fix dmidecode example","epoch":1590539516,"epoch_utc":null},{"commit":"3f9164ea77ec41e1b0671d0a642900d8e36faf9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 23 21:11:17 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 23 21:11:17 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"bold formatting","epoch":1590293477,"epoch_utc":null},{"commit":"7fd6fecbf5a08b1f13aa7e906e94be9bc126780a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 23 21:09:49 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 23 21:09:49 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1590293389,"epoch_utc":null},{"commit":"8029f72363a4d19938df07603f03a0147f6246a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 23 21:09:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 23 21:09:40 2020 -0700","stats":{"files_changed":6,"insertions":10,"deletions":7,"files":["changelog.txt","docs/parsers/stat.md","jc/cli.py","jc/parsers/stat.py","setup.py","tests/fixtures/osx-10.14.6/stat.json"]},"message":"change osx_flags from integer to string","epoch":1590293380,"epoch_utc":null},{"commit":"c7fdce5d3b7566a7d290627767c47d9c196e02ad","merge":"f5627a4 84f48aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 16:37:50 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri May 22 16:37:50 2020 -0700","message":"Merge pull request #62 from kellyjonbrazil/dev\n\nDev v1.11.0","epoch":1590190670,"epoch_utc":null},{"commit":"84f48aa369a458f534523ecc1e3aaaf403d06f1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 16:30:22 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 16:30:22 2020 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1590190222,"epoch_utc":null},{"commit":"2e9a0a9c1221dd01bd683ecbc4871d03738da671","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 16:21:55 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 16:21:55 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["changelog.txt"]},"message":"add features","epoch":1590189715,"epoch_utc":null},{"commit":"c1f6f2b9508e558ab88b4a0a61e93a6cf5460bea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 16:21:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 16:21:40 2020 -0700","stats":{"files_changed":5,"insertions":116,"deletions":4,"files":["docs/parsers/stat.md","jc/parsers/stat.py","tests/fixtures/osx-10.14.6/stat.json","tests/fixtures/osx-10.14.6/stat.out","tests/test_stat.py"]},"message":"osx fixes and tests","epoch":1590189700,"epoch_utc":null},{"commit":"ede21bca13c4b46899721f01d979c8b063f861a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 16:05:04 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 16:05:04 2020 -0700","stats":{"files_changed":1,"insertions":110,"deletions":78,"files":["jc/parsers/stat.py"]},"message":"add OSX support for stat","epoch":1590188704,"epoch_utc":null},{"commit":"8dd9a9f9cbc70a19176f909f6ac76b2bcf670736","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 15:12:10 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 15:12:10 2020 -0700","stats":{"files_changed":5,"insertions":45,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-i.json","tests/fixtures/osx-10.14.6/netstat-i.json","tests/fixtures/ubuntu-18.04/netstat-i.json","tests/fixtures/ubuntu-18.04/netstat-i.out","tests/test_netstat.py"]},"message":"add netstat -i tests","epoch":1590185530,"epoch_utc":null},{"commit":"04f92cd1330759e4bad1c0304b9e1c28e8d32d59","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 14:04:11 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 14:04:11 2020 -0700","stats":{"files_changed":5,"insertions":166,"deletions":4,"files":["README.md","docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_linux.py","tests/fixtures/centos-7.7/netstat-i.out"]},"message":"add linux support for netstat -i","epoch":1590181451,"epoch_utc":null},{"commit":"8be8d2393b276a9249e1c573ce19cf630f0942fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 13:38:25 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 13:38:25 2020 -0700","stats":{"files_changed":3,"insertions":99,"deletions":3,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-i.out"]},"message":"add netstat -i support for OSX","epoch":1590179905,"epoch_utc":null},{"commit":"0a879681be68fe2e6e5c013ab0fe18de99b04f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 12:56:27 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 12:56:27 2020 -0700","stats":{"files_changed":3,"insertions":97,"deletions":282,"files":["README.md","docs/parsers/netstat.md","jc/parsers/netstat.py"]},"message":"add netstat -r to docs","epoch":1590177387,"epoch_utc":null},{"commit":"2ca1587a49511899bf719e0b0c7de32158fc491d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 12:44:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 12:44:51 2020 -0700","stats":{"files_changed":10,"insertions":102,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-r.json","tests/fixtures/centos-7.7/netstat-rne.json","tests/fixtures/centos-7.7/netstat-rnee.json","tests/fixtures/ubuntu-18.04/netstat-r.json","tests/fixtures/ubuntu-18.04/netstat-r.out","tests/fixtures/ubuntu-18.04/netstat-rne.json","tests/fixtures/ubuntu-18.04/netstat-rne.out","tests/fixtures/ubuntu-18.04/netstat-rnee.json","tests/fixtures/ubuntu-18.04/netstat-rnee.out","tests/test_netstat.py"]},"message":"add linux netstat -r tests","epoch":1590176691,"epoch_utc":null},{"commit":"ec2cd2d708a57c0458657416bedcb4340cb40901","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 12:00:26 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 12:00:26 2020 -0700","stats":{"files_changed":9,"insertions":70,"deletions":11,"files":["docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_linux.py","jc/parsers/netstat_osx.py","tests/fixtures/centos-7.7/netstat-r.out","tests/fixtures/centos-7.7/netstat-rne.out","tests/fixtures/centos-7.7/netstat-rnee.out","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-rnl.json"]},"message":"add netstat -r support for linux","epoch":1590174026,"epoch_utc":null},{"commit":"5d0dbece9317e84a47d9f4b2d18a9ffa33fbee6e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 11:09:41 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 11:09:41 2020 -0700","stats":{"files_changed":8,"insertions":288,"deletions":5,"files":["docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-r.out","tests/fixtures/osx-10.14.6/netstat-rnl.json","tests/fixtures/osx-10.14.6/netstat-rnl.out","tests/test_netstat.py"]},"message":"add netstat -r functionality for OSX","epoch":1590170981,"epoch_utc":null},{"commit":"df1e4b414b2bda5be3153767cd854b2483ba600b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 08:00:18 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 08:00:18 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":[".gitignore"]},"message":"remove unused folder","epoch":1590159618,"epoch_utc":null},{"commit":"40760991e7dae43cd15134310f7bbb5ce0f58dae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 07:51:47 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 07:51:47 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["LICENSE.md"]},"message":"update copyright date","epoch":1590159107,"epoch_utc":null},{"commit":"464f5f86cf2c8fe6a1a857b0ad4d221a3edf3d88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 07:50:22 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 07:50:22 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"update description","epoch":1590159022,"epoch_utc":null},{"commit":"7b09e9fccdd4f09218a500b54c898ada1b9843c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 21 17:01:17 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 21 17:01:17 2020 -0700","stats":{"files_changed":5,"insertions":8,"deletions":5,"files":["docs/parsers/dmidecode.md","jc/parsers/dmidecode.py","tests/fixtures/centos-7.7/dmidecode.json","tests/fixtures/fedora32/dmidecode.json","tests/fixtures/ubuntu-18.04/dmidecode.json"]},"message":"set empty values to Null and update fixtures","epoch":1590105677,"epoch_utc":null},{"commit":"6cba7d429898d331c674c778f8bd85ba75a8dca9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 21 11:10:00 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 21 11:10:00 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"remove linux from description","epoch":1590084600,"epoch_utc":null},{"commit":"9730f62e4970b5a4490f8dc24b6cfb9cacd0cbf2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 21 09:44:28 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 21 09:44:28 2020 -0700","stats":{"files_changed":5,"insertions":151,"deletions":133,"files":["jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json","tests/fixtures/osx-10.14.6/netstat.out"]},"message":"fixup name field and update test fixtures","epoch":1590079468,"epoch_utc":null},{"commit":"e0c1c87f549eee000b93b5f5a3e8d0b052eb7d32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 21 09:07:01 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 21 09:07:01 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["README.md"]},"message":"formatting","epoch":1590077221,"epoch_utc":null},{"commit":"931b3d2b836b251590497f4cfa65f106762086c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 19:56:28 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 19:56:28 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1590029788,"epoch_utc":null},{"commit":"e5d561baeecf1fd83a884b3cd9d322762f750dfb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 17:31:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 17:31:51 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/netstat.py"]},"message":"add multipath condition for osx detection","epoch":1590021111,"epoch_utc":null},{"commit":"2867593e7aa12299686e2c6aa0f2a79a9b550b53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 17:28:44 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 17:28:44 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["changelog.txt"]},"message":"changelog update","epoch":1590020924,"epoch_utc":null},{"commit":"dd52fee5635c977d5c77046ab9fe78d2ed10deef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 17:25:25 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 17:25:25 2020 -0700","stats":{"files_changed":7,"insertions":2141,"deletions":0,"files":["tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-Abn.out","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat-An.out","tests/fixtures/osx-10.14.6/netstat.json","tests/fixtures/osx-10.14.6/netstat.out","tests/test_netstat.py"]},"message":"osx netstat tests and fixtures","epoch":1590020725,"epoch_utc":null},{"commit":"8e1f8858273e671a882a07eae1c35b38f5298c94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 16:43:53 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 16:43:53 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"fix filtered netstat views","epoch":1590018233,"epoch_utc":null},{"commit":"2d39a58f902e6af77f8f96ffcd1d68b7cbadd56c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 16:14:03 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 16:14:03 2020 -0700","stats":{"files_changed":4,"insertions":81,"deletions":14,"files":["README.md","docs/parsers/dmidecode.md","docs/parsers/netstat.md","jc/parsers/dmidecode.py"]},"message":"doc update","epoch":1590016443,"epoch_utc":null},{"commit":"9c4fa2ae2601ca4880c0b078fa917f01f1392e0e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 15:39:47 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 15:39:47 2020 -0700","stats":{"files_changed":2,"insertions":22,"deletions":2,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"]},"message":"integer conversions and icmp fix","epoch":1590014387,"epoch_utc":null},{"commit":"de52d84e82df6d8c5e2416c6bc44e59c41c685da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 12:02:32 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 12:02:32 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/netstat_osx.py"]},"message":"fix udp state and udp46 entries","epoch":1590001352,"epoch_utc":null},{"commit":"ce9b55059a28d363b8b0ae4f3ccbdbdc4bf4b58e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 11:24:38 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 11:24:38 2020 -0700","stats":{"files_changed":2,"insertions":185,"deletions":167,"files":["jc/parsers/netstat.py","jc/parsers/netstat_linux.py"]},"message":"organize files","epoch":1589999078,"epoch_utc":null},{"commit":"bcd370a6a01a115d470776f5690f8571d68d3930","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 08:19:45 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 08:19:45 2020 -0700","stats":{"files_changed":2,"insertions":5,"deletions":15,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"]},"message":"code cleanup","epoch":1589987985,"epoch_utc":null},{"commit":"c8216850abd2d0b8cc6761453f853f296e8a28f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 07:19:24 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 07:19:24 2020 -0700","stats":{"files_changed":1,"insertions":19,"deletions":55,"files":["jc/parsers/netstat_osx.py"]},"message":"code cleanup","epoch":1589984364,"epoch_utc":null},{"commit":"f5feedb90b39e5c3f4564615482d47ccd145844f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 17:38:14 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 19 17:38:14 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":10,"files":["jc/parsers/netstat_osx.py"]},"message":"fix comments","epoch":1589935094,"epoch_utc":null},{"commit":"a4371cd187fe5077018edbfeee77eb17c6a90ad3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 17:36:16 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 19 17:36:16 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/netstat_osx.py"]},"message":"support netstat -A","epoch":1589934976,"epoch_utc":null},{"commit":"9d5ba4c83404e4fab5c0f40c30b4735685499a31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 17:14:04 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 19 17:14:04 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/netstat_osx.py"]},"message":"formatting","epoch":1589933644,"epoch_utc":null},{"commit":"1639dee1bb93f6f89e8bb7b37134dc1f561c479c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 17:13:03 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 19 17:13:03 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":35,"files":["jc/parsers/netstat_osx.py"]},"message":"fix parse_post","epoch":1589933583,"epoch_utc":null},{"commit":"9363f430f20951e6fa739f06c85c5b6b3421b60d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 16:26:41 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 19 16:26:41 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/netstat.py"]},"message":"use list extend method to simplify code","epoch":1589930801,"epoch_utc":null},{"commit":"9192a0907364c772558380be1373b8dcea972a6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 16:26:04 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 19 16:26:04 2020 -0700","stats":{"files_changed":1,"insertions":124,"deletions":34,"files":["jc/parsers/netstat_osx.py"]},"message":"parse all sections","epoch":1589930764,"epoch_utc":null},{"commit":"b915eb97556ccc5fc60e8d23f7298ffec2d8e3b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 15:15:08 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 19 15:15:08 2020 -0700","stats":{"files_changed":2,"insertions":237,"deletions":55,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"]},"message":"initial osx parser","epoch":1589926508,"epoch_utc":null},{"commit":"1cfcc2b592f682d2b50a0c4188fa3ae832a6c682","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 14 09:58:16 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 14 09:58:16 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/dmidecode.py"]},"message":"tighten up line test logic when counting tabs","epoch":1589475496,"epoch_utc":null},{"commit":"7138dd02b73073441a52c9b574bf0d6e02f0d7d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 14 09:51:10 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 14 09:51:10 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/parsers/dmidecode.py"]},"message":"cleanup variables after adding to item","epoch":1589475070,"epoch_utc":null},{"commit":"b4276643b70f7820f8f53df22b32fffb54e30ca2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 14 09:43:13 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 14 09:43:13 2020 -0700","stats":{"files_changed":4,"insertions":56,"deletions":0,"files":["tests/fixtures/centos-7.7/dmidecode.json","tests/fixtures/fedora32/dmidecode.json","tests/fixtures/ubuntu-18.04/dmidecode.json","tests/test_dmidecode.py"]},"message":"add dmidecode tests and fixtures","epoch":1589474593,"epoch_utc":null},{"commit":"2ef00763bfe7c4348f30026759941efe39861a0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 14 09:33:45 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 14 09:33:45 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/dmidecode.py"]},"message":"fix first item","epoch":1589474025,"epoch_utc":null},{"commit":"54364928fc826ead7774a4cec1bcb73a5cb9ee0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 14 08:57:23 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 14 08:57:23 2020 -0700","stats":{"files_changed":2,"insertions":74,"deletions":81,"files":["docs/parsers/dmidecode.md","jc/parsers/dmidecode.py"]},"message":"fix oddities like hybrid single/multiline data and items containing multiple records","epoch":1589471843,"epoch_utc":null},{"commit":"09b3b4932b0fa4a2b18c88a8465c15a194b727e6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 10:51:38 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 10:51:38 2020 -0700","stats":{"files_changed":3,"insertions":35430,"deletions":0,"files":["tests/fixtures/centos-7.7/dmidecode.out","tests/fixtures/fedora32/dmidecode.out","tests/fixtures/ubuntu-18.04/dmidecode.out"]},"message":"add dmidecode output fixtures","epoch":1589392298,"epoch_utc":null},{"commit":"29d6670119d8fcd0344e90f01bfb6260aa936e50","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 10:18:49 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 10:18:49 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/dmidecode.py"]},"message":"convert integers","epoch":1589390329,"epoch_utc":null},{"commit":"2f654b5f1acda01192294f4c18a5a31363e7f387","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 10:13:27 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 10:13:27 2020 -0700","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["docs/parsers/dmidecode.md"]},"message":"doc update","epoch":1589390007,"epoch_utc":null},{"commit":"e53b9f5992450b53efc886b4fa9ca16f3dd07530","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 10:12:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 10:12:40 2020 -0700","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["jc/parsers/dmidecode.py"]},"message":"add caveats to documentation","epoch":1589389960,"epoch_utc":null},{"commit":"addb234e6162c58750cb67947bc4776635bf54fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:44:20 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 09:44:20 2020 -0700","stats":{"files_changed":1,"insertions":153,"deletions":0,"files":["docs/parsers/dmidecode.md"]},"message":"add dmidecode doc","epoch":1589388260,"epoch_utc":null},{"commit":"76eca3b65911a0a340d3d94322a8145ee89c50da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:43:35 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 09:43:35 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"]},"message":"add dmidecode","epoch":1589388215,"epoch_utc":null},{"commit":"f90dec4c0ecf88623fb22273b7527ec8884826c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:43:23 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 09:43:23 2020 -0700","stats":{"files_changed":1,"insertions":94,"deletions":5,"files":["jc/parsers/dmidecode.py"]},"message":"add examples to documentation","epoch":1589388203,"epoch_utc":null},{"commit":"8900a59d4cb424ff58d1eb27f8fda7ea0a668a5c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:31:12 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 09:31:12 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":19,"files":["jc/parsers/dmidecode.py"]},"message":"simplify logic by removing redundant block","epoch":1589387472,"epoch_utc":null},{"commit":"6685138200d5955115707d04aad0293ea8af5b15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:25:02 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 09:25:02 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dmidecode.py"]},"message":"fix for missing multi-line values that come immediately after a previous multi-line value","epoch":1589387102,"epoch_utc":null},{"commit":"4d3e65b980d50164b8220e59560822b9871580ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:00:32 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 09:00:32 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/parsers/dmidecode.py"]},"message":"fix missing values","epoch":1589385632,"epoch_utc":null},{"commit":"e9282bb546f560da6396f44e2ce9e04136348e2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 08:22:52 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 08:22:52 2020 -0700","stats":{"files_changed":2,"insertions":175,"deletions":0,"files":["jc/cli.py","jc/parsers/dmidecode.py"]},"message":"add dmidecode parser","epoch":1589383372,"epoch_utc":null},{"commit":"f5627a45947e5e76e5f3e64d9b30099fe0b962a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 11 11:03:02 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 11 11:03:02 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1589220182,"epoch_utc":null},{"commit":"81ffdb25105c681c8ed12336d220a102b7f4215e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 11 10:54:26 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 11 10:54:26 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/cli.py"]},"message":"remove shebang for Fedora packaging","epoch":1589219666,"epoch_utc":null},{"commit":"4c00a99850cb6f69713be7c6ad9ffba11924d9b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 11 10:37:14 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 11 10:37:14 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1589218634,"epoch_utc":null},{"commit":"2bfcb45b28e2174a8bbc27237e619b5c232ccae8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 11 10:32:42 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 11 10:32:42 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["jc/cli.py"]},"message":"make cli.py executable","epoch":1589218362,"epoch_utc":null},{"commit":"ab0c10e791283affb227d0d5306701ba7fd29d13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 11 10:27:16 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 11 10:27:16 2020 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["LICENSE.md","README.md"]},"message":"remove execute permissions","epoch":1589218036,"epoch_utc":null},{"commit":"2c1935115de03a28fe92674b04b2542b0eccb8fe","merge":"99070fa d98e43d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:47:05 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sat May 9 11:47:05 2020 -0700","message":"Merge pull request #61 from kellyjonbrazil/dev\n\nDev v1.10.10","epoch":1589050025,"epoch_utc":null},{"commit":"d98e43dc78205d3224bfc1e67de2da3c5fb7ea9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:42:56 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 9 11:42:56 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"add netstat item","epoch":1589049776,"epoch_utc":null},{"commit":"9348988d646d9b9c9970c19e84f311554ae38e7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:41:30 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 9 11:41:30 2020 -0700","stats":{"files_changed":1,"insertions":12,"deletions":0,"files":["tests/test_netstat.py"]},"message":"add netstat test for Fedora32","epoch":1589049690,"epoch_utc":null},{"commit":"1285c664679c40b18327c89b85921a80b01f0191","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:36:23 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 9 11:36:23 2020 -0700","stats":{"files_changed":2,"insertions":140,"deletions":0,"files":["tests/fixtures/fedora32/netstat.json","tests/fixtures/fedora32/netstat.out"]},"message":"netstat with bluetooth section","epoch":1589049383,"epoch_utc":null},{"commit":"b7191bbc130e0f33d02c0a4819fa91ffff1599d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:36:03 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 9 11:36:03 2020 -0700","stats":{"files_changed":1,"insertions":14,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"handle bluetooth section (ignore for now)","epoch":1589049363,"epoch_utc":null},{"commit":"98b97509f7893cb95e9651ce9706db5c961aa997","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:25:13 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 9 11:25:13 2020 -0700","stats":{"files_changed":3,"insertions":6,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1589048713,"epoch_utc":null},{"commit":"2b2b570490f3834367a598579473001f45738e8a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:22:26 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 9 11:22:26 2020 -0700","stats":{"files_changed":3,"insertions":21,"deletions":0,"files":["tests/fixtures/fedora32/last.json","tests/fixtures/fedora32/last.out","tests/test_last.py"]},"message":"add tests for 'gone - no logout'","epoch":1589048546,"epoch_utc":null},{"commit":"cce2d1ff298f2284c43c4534144329f3533a81ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:22:01 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 9 11:22:01 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/last.py"]},"message":"add condition for 'gone - no logout'","epoch":1589048521,"epoch_utc":null},{"commit":"b79600c57249cbb65805caad2524cc2492342be6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:01:48 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 9 11:01:48 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"version bump","epoch":1589047308,"epoch_utc":null},{"commit":"140f1a85437745296b56976bef1b46514e323a4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:00:04 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 9 11:00:04 2020 -0700","stats":{"files_changed":7,"insertions":7,"deletions":7,"files":["tests/fixtures/centos-7.7/ls-R-newlines.json","tests/fixtures/centos-7.7/ls-R.json","tests/fixtures/centos-7.7/ls-glob.json","tests/fixtures/osx-10.14.6/ls-glob.json","tests/fixtures/ubuntu-18.04/ls-R-newlines.json","tests/fixtures/ubuntu-18.04/ls-R.json","tests/fixtures/ubuntu-18.04/ls-glob.json"]},"message":"test fixes for issue #60","epoch":1589047204,"epoch_utc":null},{"commit":"e34657cfde6816ab7a7415d83580df0a1d98a5a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 15:26:11 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 8 15:26:11 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"]},"message":"fix issue #60 that was skipping the first file in some instances using -R without -l","epoch":1588976771,"epoch_utc":null},{"commit":"99070fa6073c4415a6faf8ca69dd6aa089af4062","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 10:51:13 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 8 10:51:13 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1588960273,"epoch_utc":null},{"commit":"2b46785b1f1281ee63df9159e36068f4607ad9b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 10:49:30 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 8 10:49:30 2020 -0700","stats":{"files_changed":1,"insertions":25,"deletions":3,"files":["jc/parsers/ifconfig.py"]},"message":"add MIT license to vendorized IfconfigParser class","epoch":1588960170,"epoch_utc":null},{"commit":"c72562524b2b9aaca0be372bb24343158829ba5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 09:30:31 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 8 09:30:31 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"fully remove tests from packaging","epoch":1588955431,"epoch_utc":null},{"commit":"b7dd6441c7e3f54f8a260fceef49aae6816c7151","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 08:20:33 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 8 08:20:33 2020 -0700","stats":{"files_changed":2,"insertions":5,"deletions":1,"files":["changelog.txt","jc/cli.py"]},"message":"version bump","epoch":1588951233,"epoch_utc":null},{"commit":"31fcc2f755ad86622cf51a75879b14d44f246300","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 08:20:21 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 8 08:20:21 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["MANIFEST.in"]},"message":"remove manifest.in - no longer needed due to removing tests","epoch":1588951221,"epoch_utc":null},{"commit":"b391aa14bceffedb5a9c13f3f908923790edefc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 08:19:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 8 08:19:51 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["setup.cfg"]},"message":"add license_file to metadata","epoch":1588951191,"epoch_utc":null},{"commit":"d3c45debbb6690acd341fbcc9b99d1ae4cf0a43c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 08:19:31 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 8 08:19:31 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["setup.py"]},"message":"remove tests and add license file","epoch":1588951171,"epoch_utc":null},{"commit":"5b08469b874553744bd5c5b1fa6581f4dcffacd0","merge":"8cf00a2 4a77ec6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 1 15:55:50 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri May 1 15:55:50 2020 -0700","message":"Merge pull request #57 from kellyjonbrazil/dev\n\nDev v1.10.7","epoch":1588373750,"epoch_utc":null},{"commit":"4a77ec63a46554c84e646d31564230774ed87431","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 1 14:57:50 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 1 14:57:50 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["docs/parsers/ifconfig.md"]},"message":"add IfconfigParser class","epoch":1588370270,"epoch_utc":null},{"commit":"d13606b6dc2c207be6dea89a2c3e713c18a574b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 1 14:37:23 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 1 14:37:23 2020 -0700","stats":{"files_changed":4,"insertions":7,"deletions":6,"files":["changelog.txt","jc/cli.py","requirements.txt","setup.py"]},"message":"modify dependencies for easier packaging into Fedora","epoch":1588369043,"epoch_utc":null},{"commit":"05291c93bba1aa364ba1ac7f2508e24bb362a814","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 1 14:36:54 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 1 14:36:54 2020 -0700","stats":{"files_changed":1,"insertions":198,"deletions":3,"files":["jc/parsers/ifconfig.py"]},"message":"vendorize ifconfig-parser module for easier packaging in Fedora","epoch":1588369014,"epoch_utc":null},{"commit":"8cf00a208eb8493300331e7361b72e4f9e3f140e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 29 15:57:55 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 29 15:57:55 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"change text to strings","epoch":1588201075,"epoch_utc":null},{"commit":"06d73c88767a5b4d6003231c897c447ee5e1faa5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 23 07:06:44 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 23 07:06:44 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1587650804,"epoch_utc":null},{"commit":"649c646ea25ac7f89900cffa8919df01671bd32d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 22 16:08:34 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 22 16:08:34 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]},"message":"add brew install option","epoch":1587596914,"epoch_utc":null},{"commit":"b7756d92501a7b8ba8e77d77d9d3718a58425beb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 20 16:33:26 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 20 16:33:26 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1587425606,"epoch_utc":null},{"commit":"1cd2cd954c21e5caec333507bd81819c82d45b49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 20 16:31:22 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 20 16:31:22 2020 -0700","stats":{"files_changed":4,"insertions":2,"deletions":16,"files":["tests/fixtures/osx-10.11.6/du.json","tests/fixtures/osx-10.11.6/du.out","tests/fixtures/osx-10.14.6/du.json","tests/fixtures/osx-10.14.6/du.out"]},"message":"remove references to homebrew/shim to allow tests to pass in homebrew packaging ci/cd","epoch":1587425482,"epoch_utc":null},{"commit":"72020b8da999ddca6f9ba82da235c9f42e4f4273","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 17 10:20:25 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 17 10:20:25 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":22,"files":["README.md"]},"message":"move packages info to jc-packages github page","epoch":1587144025,"epoch_utc":null},{"commit":"cf9720b749e7fc8caed0d2f1f2b1727a22a156b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 16 14:03:31 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 16 14:03:31 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"update install info","epoch":1587071011,"epoch_utc":null},{"commit":"967b9db7f90a3c3a0352edde7f4455c5f5d45b18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 15 21:27:22 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 15 21:27:22 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["README.md"]},"message":"spelling","epoch":1587011242,"epoch_utc":null},{"commit":"bb3acb1182f4d509f9ddc7dfcffa4578e0a2bd5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 15 21:25:06 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 15 21:25:06 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1587011106,"epoch_utc":null},{"commit":"560c7f7e6d1f8a69ab026ddbff753d232ca1d00b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 15 21:23:55 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 15 21:23:55 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1587011035,"epoch_utc":null},{"commit":"79b28417644e00b933f531374d2f7fe8051e61be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 15 21:22:43 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 15 21:22:43 2020 -0700","stats":{"files_changed":1,"insertions":26,"deletions":0,"files":["README.md"]},"message":"add new binary package install info","epoch":1587010963,"epoch_utc":null},{"commit":"a06a89cbd11026aa3910fadd1eff7fe388d02507","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 14 11:15:24 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 14 11:15:24 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1586888124,"epoch_utc":null},{"commit":"431bd969eb4809424fe99a02a7decb98bce9ea51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 14 11:10:31 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 14 11:10:31 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"use sys.exit(0) instead of exit()","epoch":1586887831,"epoch_utc":null},{"commit":"c87b722aec6e6964c516bbb8e80667ad7d9c6bc7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:23:58 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 12 13:23:58 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"spelling","epoch":1586723038,"epoch_utc":null},{"commit":"3688b8b014a1cf753b2207fbf3ebf0292c3fd672","merge":"99f7842 07b8d9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:21:38 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Apr 12 13:21:38 2020 -0700","message":"Merge pull request #56 from kellyjonbrazil/dev\n\nDev v1.10.4","epoch":1586722898,"epoch_utc":null},{"commit":"07b8d9e0c0d723d93e6c652f5b6156c467c451c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:18:28 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 12 13:18:28 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1586722708,"epoch_utc":null},{"commit":"7454b53e395e9122c00d4cf06b1c2af109913d7a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:13:28 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 12 13:13:28 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["README.md"]},"message":"formatting","epoch":1586722408,"epoch_utc":null},{"commit":"3d6a76024de0f9dcf91a4ab49cabe461074114fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:10:57 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 12 13:10:57 2020 -0700","stats":{"files_changed":1,"insertions":18,"deletions":0,"files":["README.md"]},"message":"update with JC_COLORS info","epoch":1586722257,"epoch_utc":null},{"commit":"421b9809575a8de00229af4b851739889638ac74","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:03:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 12 13:03:09 2020 -0700","stats":{"files_changed":1,"insertions":18,"deletions":37,"files":["jc/cli.py"]},"message":"JC_COLORS working","epoch":1586721789,"epoch_utc":null},{"commit":"4a22e27d6a80a988f4de17bce421110d6abb8867","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 12:43:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 12 12:43:51 2020 -0700","stats":{"files_changed":1,"insertions":64,"deletions":0,"files":["jc/cli.py"]},"message":"add set_env_colors function","epoch":1586720631,"epoch_utc":null},{"commit":"99f7842dee0f79cf933fae185cf8b0ed7c8b210f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 9 13:38:33 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 9 13:38:33 2020 -0700","stats":{"files_changed":3,"insertions":11,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"fix brek on pipe error","epoch":1586464713,"epoch_utc":null},{"commit":"7f869b4b187d70752207a7e74c13b858446f898f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 9 07:31:21 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 9 07:31:21 2020 -0700","stats":{"files_changed":3,"insertions":9,"deletions":11,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"change colors to ansi and match jello style","epoch":1586442681,"epoch_utc":null},{"commit":"9665f4ee84680f3a8154b8a43ea668af2907782c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 7 08:44:15 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 7 08:44:15 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add pypi badge","epoch":1586274255,"epoch_utc":null},{"commit":"606904d48b1c7e0c19a940b5be0b564d1b5be6c8","merge":"302f05c 3f5279b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:28:21 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sat Apr 4 17:28:21 2020 -0700","message":"Merge pull request #53 from kellyjonbrazil/dev\n\nDev v1.10.1","epoch":1586046501,"epoch_utc":null},{"commit":"3f5279b97c386c736e0e2faa5c39d68ef89c46aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:25:55 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:25:55 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to 1.10.1","epoch":1586046355,"epoch_utc":null},{"commit":"f5ec21e6ac612566af93158fc3968b901322d04a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:19:32 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:19:32 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_luf.py"]},"message":"use in instead of find()","epoch":1586045972,"epoch_utc":null},{"commit":"578a284465f014fe71ad6ac00bd41dc24ab2ced9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:18:39 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:18:39 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_ls.py"]},"message":"use in instead of find()","epoch":1586045919,"epoch_utc":null},{"commit":"422e392d9d98a7864312fc7fbd7f45537b71acbe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:17:43 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:17:43 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_lj.py"]},"message":"use in instead of find()","epoch":1586045863,"epoch_utc":null},{"commit":"54dfffd34a17d1194690142ac403391fc65bb85f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:16:25 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:16:25 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl.py"]},"message":"use in instead of find()","epoch":1586045785,"epoch_utc":null},{"commit":"cffba64d2b9165b44a8856665807111a2ad3a190","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:15:03 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:15:03 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/stat.py"]},"message":"use in and startswith() instead of find()","epoch":1586045703,"epoch_utc":null},{"commit":"56a0c12a59bb252d3b7d0929f9fb19b4d96a8437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:12:22 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:12:22 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/pip_list.py"]},"message":"use in instead of find()","epoch":1586045542,"epoch_utc":null},{"commit":"c174d3de18923b2b03befb5a7dfcbd977a8e147e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:10:46 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:10:46 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/netstat.py"]},"message":"use in and startswith() instead of find()","epoch":1586045446,"epoch_utc":null},{"commit":"a9c59ef9fc1bb68c9d0d7beffbeb670baf5b1e3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:07:38 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:07:38 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/mount.py"]},"message":"fix logic to not for ' type ' in cleandata[0]","epoch":1586045258,"epoch_utc":null},{"commit":"abdb9b26732a6a71f5938d665b2ca43a381e1b33","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:05:17 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:05:17 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/mount.py"]},"message":"use in instead of find()","epoch":1586045117,"epoch_utc":null},{"commit":"548aaab6262878d21f8b9539950cfad48638e35c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:04:20 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:04:20 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":42,"files":["jc/parsers/lsof.py"]},"message":"remove old commented code","epoch":1586045060,"epoch_utc":null},{"commit":"20571c87ae9e1ca8a1f3120511910751420a35ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:01:56 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:01:56 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/jobs.py"]},"message":"us in instead of find()","epoch":1586044916,"epoch_utc":null},{"commit":"19e49200de5c731f76b42e80388c5223e8097e39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:59:48 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 16:59:48 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"]},"message":"version bump","epoch":1586044788,"epoch_utc":null},{"commit":"d32f5c67a91ede572c88e431b2ad0ce4d6c87dec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:59:03 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 16:59:03 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/iptables.py"]},"message":"use startswith() instead of find()","epoch":1586044743,"epoch_utc":null},{"commit":"b83b626435c55d2aa63e56dd8f22603da59e7626","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:57:23 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 16:57:23 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ifconfig.py"]},"message":"use startswith() instead of find()","epoch":1586044643,"epoch_utc":null},{"commit":"ab2c1b25ec5da5f2ba238868c4dfca95a44da30e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:56:11 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 16:56:11 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/hosts.py"]},"message":"use startswith() and in instead of find()","epoch":1586044571,"epoch_utc":null},{"commit":"f2d46313a4508f13656cdb360f83fdf4116cc7d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:53:55 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 16:53:55 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/fstab.py"]},"message":"use startswith() instead of find()","epoch":1586044435,"epoch_utc":null},{"commit":"87e4796a6c936793e2784346819c7033d59b91e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:52:45 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 16:52:45 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/df.py"]},"message":"use in instead of .find()","epoch":1586044365,"epoch_utc":null},{"commit":"0014a5c2f4c056c2683d6614a65d778b1f527932","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:51:36 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 16:51:36 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab_u.py"]},"message":"us startswith() and in instead of .find()","epoch":1586044296,"epoch_utc":null},{"commit":"7af56e0dadab7d8b9538f3b7a550ad6dd1ac217d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:50:05 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 16:50:05 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab.py"]},"message":"use startswith() and in instead of find()","epoch":1586044205,"epoch_utc":null},{"commit":"a5ae6e3c017b041f9079ff12455b7551ad204cb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:48:16 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 16:48:16 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/arp.py"]},"message":"use startswith() instead of find()","epoch":1586044096,"epoch_utc":null},{"commit":"fe1a0d1faf46f55ed2888ed0065f3f3144691ed8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:46:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 16:46:09 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":9,"files":["jc/parsers/dig.py"]},"message":"use in instead of .find()","epoch":1586043969,"epoch_utc":null},{"commit":"302f05cdda305e46e69b74d5b0096f64c17da637","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 3 14:50:20 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 3 14:50:20 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"prettify style block","epoch":1585950620,"epoch_utc":null},{"commit":"c0044be7b0b6dadcffb64cb88ad92bf653dd2b6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 3 14:48:19 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 3 14:48:19 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"rename color grey to gray","epoch":1585950499,"epoch_utc":null},{"commit":"01100788070b82b4b827ef356972fa9b8f737eeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 3 14:47:08 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 3 14:47:08 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update badge","epoch":1585950428,"epoch_utc":null},{"commit":"42eacb45f8fdf8085c6231bf5297629c2ec97c22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 3 14:45:04 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Apr 3 14:45:04 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"rename to Tests","epoch":1585950304,"epoch_utc":null},{"commit":"a43e2e19916662d509883457c160d7f95f97ae12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 2 17:40:06 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 2 17:40:06 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add -m option info","epoch":1585874406,"epoch_utc":null},{"commit":"c8b721d4f6e46a2db77e1140b9caeb3b403fef72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 2 17:35:35 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 2 17:35:35 2020 -0700","stats":{"files_changed":4,"insertions":9,"deletions":3,"files":["changelog.txt","jc/cli.py","requirements.txt","setup.py"]},"message":"version bump to 1.10.0","epoch":1585874135,"epoch_utc":null},{"commit":"d0bfddc3d9989444757d6668726c916e5363620b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 2 17:29:25 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 2 17:29:25 2020 -0700","stats":{"files_changed":1,"insertions":41,"deletions":6,"files":["jc/cli.py"]},"message":"add color and -m monochrome option","epoch":1585873765,"epoch_utc":null},{"commit":"6b925a16c87cf75bb30edfda38511e8f84a4f6d6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 2 10:55:32 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 2 10:55:32 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]},"message":"add tests badge","epoch":1585850132,"epoch_utc":null},{"commit":"89ebd9fc2271d2c76353d5707bfd4afb7dedc278","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 27 07:31:08 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 27 07:31:08 2020 -0700","stats":{"files_changed":2,"insertions":20,"deletions":0,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"add axfr info to schema","epoch":1585319468,"epoch_utc":null},{"commit":"6b4ba662317629839aa62fbcfefb8ed3337c37ef","merge":"8ec8cd6 5b697dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 17:15:13 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Mar 26 17:15:13 2020 -0700","message":"Merge pull request #52 from kellyjonbrazil/dev\n\nDev v1.9.3","epoch":1585268113,"epoch_utc":null},{"commit":"5b697dc38141cdd47fcdd63bf295a80a7da86697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 17:09:29 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 26 17:09:29 2020 -0700","stats":{"files_changed":1,"insertions":72,"deletions":0,"files":["tests/test_dig.py"]},"message":"add more dig tests","epoch":1585267769,"epoch_utc":null},{"commit":"9ba73c95d1a528a9a92be4068805bb5aa027901e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 16:45:29 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 26 16:45:29 2020 -0700","stats":{"files_changed":7,"insertions":215,"deletions":0,"files":["tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/centos-7.7/dig-axfr.out","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-axfr.out","tests/fixtures/ubuntu-18.04/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-axfr.out","tests/test_dig.py"]},"message":"add tests","epoch":1585266329,"epoch_utc":null},{"commit":"93aa39044749c4c0ed749f62fb00fc1c76dc5af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 16:30:17 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 26 16:30:17 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to v1.9.3","epoch":1585265417,"epoch_utc":null},{"commit":"3cfb8945ddd83c00a720c44e2c1d97da0d8bad25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 16:29:59 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 26 16:29:59 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/dig.py"]},"message":"use startswith() instead of find","epoch":1585265399,"epoch_utc":null},{"commit":"cd8d38f2a136c4f35efc020b3476d09e965b71f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 16:22:53 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 26 16:22:53 2020 -0700","stats":{"files_changed":1,"insertions":50,"deletions":1,"files":["jc/parsers/dig.py"]},"message":"add axfr support","epoch":1585264973,"epoch_utc":null},{"commit":"8ec8cd62944c59c462ab9f520c1dcfd14218b1ed","merge":"e5bea9a c028113","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 17:09:04 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Mar 12 17:09:04 2020 -0700","message":"Merge pull request #50 from kellyjonbrazil/dev\n\nDev v1.9.2","epoch":1584058144,"epoch_utc":null},{"commit":"c02811356153c2b4f8b2d7efb7f48bf8f7748068","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 17:06:55 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 12 17:06:55 2020 -0700","stats":{"files_changed":3,"insertions":6,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to v1.9.2","epoch":1584058015,"epoch_utc":null},{"commit":"5f22e1c8031b808ef02ffe078408bd58cc76e570","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 17:02:26 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 12 17:02:26 2020 -0700","stats":{"files_changed":3,"insertions":33,"deletions":0,"files":["tests/fixtures/osx-10.14.6/arp-a2.json","tests/fixtures/osx-10.14.6/arp-a2.out","tests/test_arp.py"]},"message":"fix and test for osx arp entries without ifscope","epoch":1584057746,"epoch_utc":null},{"commit":"d3351787e5cabd064c19e6617e9535e501686404","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 16:52:33 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 12 16:52:33 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":9,"files":["jc/parsers/arp.py"]},"message":"change osx detection","epoch":1584057153,"epoch_utc":null},{"commit":"e5bea9ae3b0a70b38f7da7dd9184343dbbd18887","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 08:52:01 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 12 08:52:01 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/file.py"]},"message":"version bump","epoch":1584028321,"epoch_utc":null},{"commit":"93c710abe9171568f61f65c4f84c040ffc24870c","merge":"400f5a4 c29e7cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 08:23:10 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Mar 12 08:23:10 2020 -0700","message":"Merge pull request #49 from kellyjonbrazil/dev\n\nDev v1.9.1","epoch":1584026590,"epoch_utc":null},{"commit":"c29e7cfe5cc4b2151912c6f618137d1b6c39c7be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 08:17:28 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 12 08:17:28 2020 -0700","stats":{"files_changed":4,"insertions":9,"deletions":6,"files":["README.md","changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to 1.9.1","epoch":1584026248,"epoch_utc":null},{"commit":"cb5c1ba00dc0e02bf6ad6c40096d99e319fa6171","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 17:04:48 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 11 17:04:48 2020 -0700","stats":{"files_changed":3,"insertions":101,"deletions":0,"files":["tests/fixtures/osx-10.14.6/file2.json","tests/fixtures/osx-10.14.6/file2.out","tests/test_file.py"]},"message":"add tests for fix to make the file parser splitting more robust","epoch":1583971488,"epoch_utc":null},{"commit":"9a012b94e1942a14bc6dae3fb967ef618819c77b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 15:40:34 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 11 15:40:34 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/file.py"]},"message":"make splitting more robust","epoch":1583966434,"epoch_utc":null},{"commit":"400f5a44ece280cb0097d806b78a9490d2905600","merge":"c7cd2b6 a2ab5ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 13:37:22 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 11 13:37:22 2020 -0700","message":"Merge pull request #48 from kellyjonbrazil/dev\n\nDev v1.9.0","epoch":1583959042,"epoch_utc":null},{"commit":"a2ab5bab91ea980399df1afb9d8071fa3282d04e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 13:32:58 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 11 13:32:58 2020 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to v1.9.0","epoch":1583958778,"epoch_utc":null},{"commit":"fc8ab27361df3359b706125531b2643612d6996a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 13:24:55 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 11 13:24:55 2020 -0700","stats":{"files_changed":6,"insertions":93,"deletions":51,"files":["README.md","docs/parsers/ntpq.md","jc/parsers/ntpq.py","tests/fixtures/ubuntu-18.04/ntpq-p2.json","tests/fixtures/ubuntu-18.04/ntpq-p2.out","tests/test_ntpq.py"]},"message":"bugfix for misaligned columns and additional test for ntpq #31","epoch":1583958295,"epoch_utc":null},{"commit":"59f19d33a5c6677ea756a9424fdb032b430511a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 12:39:59 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 11 12:39:59 2020 -0700","stats":{"files_changed":7,"insertions":153,"deletions":0,"files":["tests/fixtures/centos-7.7/file.json","tests/fixtures/centos-7.7/file.out","tests/fixtures/osx-10.14.6/file.json","tests/fixtures/osx-10.14.6/file.out","tests/fixtures/ubuntu-18.04/file.json","tests/fixtures/ubuntu-18.04/file.out","tests/test_file.py"]},"message":"add file command tests for #41","epoch":1583955599,"epoch_utc":null},{"commit":"dfc96181159748d019419a2cba7aa9cb3b7a2a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 12:20:58 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 11 12:20:58 2020 -0700","stats":{"files_changed":6,"insertions":260,"deletions":1,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/file.md","jc/cli.py","jc/parsers/file.py"]},"message":"add file parser for issue #41","epoch":1583954458,"epoch_utc":null},{"commit":"8e02e5c75a11cf205299ee6f87b67f9b787cf55e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 09:21:14 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 11 09:21:14 2020 -0700","stats":{"files_changed":2,"insertions":6,"deletions":5,"files":["jc/cli.py","tests/test_cli.py"]},"message":"fix issue with getting options with some commands #47","epoch":1583943674,"epoch_utc":null},{"commit":"970493ab9346a344b21be7614903ad81bc65a6e9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 06:22:54 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 11 06:22:54 2020 -0700","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["jc/parsers/airport.py","jc/parsers/airport_s.py"]},"message":"add magic commands","epoch":1583932974,"epoch_utc":null},{"commit":"64d78956eb33ca0a2564fded3d12729ee036a915","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 22:18:26 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 22:18:26 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"update acknowledgment","epoch":1583903906,"epoch_utc":null},{"commit":"40c05346f4098f8eea14c42da07df3faa143587a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 22:16:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 22:16:40 2020 -0700","stats":{"files_changed":1,"insertions":12,"deletions":25,"files":["jc/parsers/history.py"]},"message":"re-adding optimizations from https://github.com/philippeitis","epoch":1583903800,"epoch_utc":null},{"commit":"e9b0bc1409a824a82dabd2479892b7d18bad8c3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 22:03:54 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 22:03:54 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/airport.py"]},"message":"doc update","epoch":1583903034,"epoch_utc":null},{"commit":"798e6bb7d939176bb36771a6d41bd55403d583be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 22:03:44 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 22:03:44 2020 -0700","stats":{"files_changed":2,"insertions":29,"deletions":0,"files":["tests/fixtures/osx-10.14.6/airport-s.json","tests/test_airport_s.py"]},"message":"tests passing for airport -s. issue #46","epoch":1583903024,"epoch_utc":null},{"commit":"12a370deed03ba42d7b7ebb410195ce5f32bb9c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 21:51:02 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 21:51:02 2020 -0700","stats":{"files_changed":8,"insertions":372,"deletions":9,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/airport.md","docs/parsers/airport_s.md","jc/cli.py","jc/parsers/airport.py","jc/parsers/airport_s.py"]},"message":"add airport -s parser for issue #46","epoch":1583902262,"epoch_utc":null},{"commit":"553bfbe1a0dd866851ba7eca66e9295c2097ad86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 21:02:17 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 21:02:17 2020 -0700","stats":{"files_changed":3,"insertions":40,"deletions":6,"files":["docs/parsers/airport.md","jc/parsers/airport.py","tests/test_airport.py"]},"message":"tests passing for airport -I. Issue #46","epoch":1583899337,"epoch_utc":null},{"commit":"52494321fcfe0dc7ee71d8d78210b3c10372a237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 20:55:07 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 20:55:07 2020 -0700","stats":{"files_changed":5,"insertions":120,"deletions":15,"files":["README.md","docs/parsers/airport.md","jc/parsers/airport.py","tests/fixtures/osx-10.14.6/airport-I.json","tests/fixtures/osx-10.14.6/airport-I.out"]},"message":"fixes and docs for airport parser issue #46","epoch":1583898907,"epoch_utc":null},{"commit":"c6c9e06496683d2dd3586d17085801c7e698d960","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 20:35:52 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 20:35:52 2020 -0700","stats":{"files_changed":7,"insertions":196,"deletions":1,"files":["changelog.txt","docgen.sh","docs/parsers/airport.md","jc/cli.py","jc/parsers/airport.py","tests/fixtures/osx-10.14.6/airport-I.out","tests/fixtures/osx-10.14.6/airport-s.out"]},"message":"added airport command parser","epoch":1583897752,"epoch_utc":null},{"commit":"e3a6c05a58a2451e70975d8fabf644c56603c73d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 20:26:53 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 20:26:53 2020 -0700","stats":{"files_changed":5,"insertions":64,"deletions":17,"files":["docs/parsers/timedatectl.md","jc/parsers/timedatectl.py","tests/fixtures/centos-7.7/timedatectl.json","tests/fixtures/ubuntu-18.04/timedatectl.json","tests/test_timedatectl.py"]},"message":"timedatectl fixes, tests, and fixtures for issue #42","epoch":1583897213,"epoch_utc":null},{"commit":"391d06f68d1f45d33590d5407d3a5e4f723af717","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 20:16:41 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 20:16:41 2020 -0700","stats":{"files_changed":7,"insertions":35,"deletions":35,"files":["README.md","docs/parsers/ntpq.md","jc/parsers/ntpq.py","tests/fixtures/centos-7.7/ntpq-p.json","tests/fixtures/centos-7.7/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-p.json","tests/fixtures/ubuntu-18.04/ntpq-pn.json"]},"message":"change selection_state to state","epoch":1583896601,"epoch_utc":null},{"commit":"99804ea06e0c70e3a82ddc7f9c7a42343374d700","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 18:37:55 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 18:37:55 2020 -0700","stats":{"files_changed":6,"insertions":222,"deletions":0,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/timedatectl.md","jc/cli.py","jc/parsers/timedatectl.py"]},"message":"added timedatectl status parser","epoch":1583890675,"epoch_utc":null},{"commit":"51935deb2ad18e4ea3ca16954ce810354f6095a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 18:00:47 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 18:00:47 2020 -0700","stats":{"files_changed":2,"insertions":21,"deletions":0,"files":["tests/fixtures/centos-7.7/timedatectl.out","tests/fixtures/ubuntu-18.04/timedatectl.out"]},"message":"timedatectl test fixtures","epoch":1583888447,"epoch_utc":null},{"commit":"b24d0c3a475b88d9ccf1a8fe29715ee60972fcad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 18:00:26 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 18:00:26 2020 -0700","stats":{"files_changed":2,"insertions":34,"deletions":2,"files":["README.md","jc/parsers/ntpq.py"]},"message":"ntpq docs","epoch":1583888426,"epoch_utc":null},{"commit":"762a886d6fdf5c2ad21d81868d138fb32621ed1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 15:17:25 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 15:17:25 2020 -0700","stats":{"files_changed":8,"insertions":133,"deletions":0,"files":["tests/fixtures/centos-7.7/ntpq-p.json","tests/fixtures/centos-7.7/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-p.json","tests/fixtures/ubuntu-18.04/ntpq-p.out","tests/fixtures/ubuntu-18.04/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-pn.out","tests/fixtures/ubuntu-18.04/ntqp-p.out","tests/test_ntpq.py"]},"message":"add ntpq tests","epoch":1583878645,"epoch_utc":null},{"commit":"2c3e9ddfe47f56cd7edc2fdf6317f7ecec0b7918","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 14:18:55 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 14:18:55 2020 -0700","stats":{"files_changed":7,"insertions":543,"deletions":0,"files":["changelog.txt","docgen.sh","docs/parsers/ntpq.md","jc/cli.py","jc/parsers/ntpq.py","tests/fixtures/centos-7.7/ntpq-p.out","tests/fixtures/centos-7.7/ntpq-pn.out"]},"message":"add ntpq parser for issue #31","epoch":1583875135,"epoch_utc":null},{"commit":"c7cd2b63c8f24e9d17c458880fe401d8032395ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 9 11:46:17 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 9 11:46:17 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":91,"files":["tests/fixtures/generic/oscar_age_male.csv"]},"message":"delete unused test file","epoch":1583779577,"epoch_utc":null},{"commit":"f0528ea83112e71ff51c89be27fc9bbdfbbf1951","merge":"b5eaff2 5bc5596","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:54:13 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Mar 8 14:54:13 2020 -0700","message":"Merge pull request #45 from kellyjonbrazil/dev\n\nDev v1.8.1","epoch":1583704453,"epoch_utc":null},{"commit":"5bc5596f604fb87dffbfdf44ce2395b16bf01297","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:49:23 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 8 14:49:23 2020 -0700","stats":{"files_changed":4,"insertions":17,"deletions":4,"files":["changelog.txt","jc/cli.py","setup.py","tests/test_ls.py"]},"message":"version bump to 1.8.1","epoch":1583704163,"epoch_utc":null},{"commit":"2c27ac46be803b583caf82c1765bd0c35cee8bc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:43:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 8 14:43:51 2020 -0700","stats":{"files_changed":2,"insertions":2454,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-lR-empty-folder.json","tests/fixtures/osx-10.14.6/ls-lR-empty-folder.out"]},"message":"add ls test fixtures","epoch":1583703831,"epoch_utc":null},{"commit":"caad840153e40dc660a2d5e06a96f3451fef25f9","merge":"aff86ae 65bd7e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:19:37 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Mar 8 14:19:37 2020 -0700","message":"Merge pull request #44 from philippeitis/patch-5\n\nMove core magic() logic into seperate function for testability, minor tweaks","epoch":1583702377,"epoch_utc":null},{"commit":"65bd7e2904016141c1ed53cdd437865c66d7628e","merge":"17b6efe c3d7d7d","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Sun Mar 8 14:10:35 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Mar 8 14:10:35 2020 -0700","message":"Merge pull request #1 from kellyjonbrazil/pr/44\n\nMerge changes","epoch":1583701835,"epoch_utc":null},{"commit":"c3d7d7db12d4870fc4499e0e3445d85ae89f2aea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:03:08 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 8 14:03:08 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"removed whitespace","epoch":1583701388,"epoch_utc":null},{"commit":"56053103625af6fb7fa749fc5bc3dbdc62fc223c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:02:54 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 8 14:02:54 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":4,"files":["tests/test_cli.py"]},"message":"added tests, removed os import, changed to 'assertEqual'","epoch":1583701374,"epoch_utc":null},{"commit":"17b6efe82e6a558353b011c543489eaaf3a6d3ac","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Sun Mar 8 13:35:01 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Mar 8 13:35:01 2020 -0700","stats":{"files_changed":1,"insertions":14,"deletions":0,"files":["tests/test_cli.py"]},"message":"Create basic tests for generate_magic_commands()","epoch":1583699701,"epoch_utc":null},{"commit":"a032ae56ae7d247e00415267b65b2a8b80a3302e","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Sun Mar 8 13:26:15 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Mar 8 13:26:15 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"Pass args to generate_magic_command() to allow testing.","epoch":1583699175,"epoch_utc":null},{"commit":"eab2f4b0566b4c76db661cbfa99a56a6bf8d6541","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Sun Mar 8 13:20:38 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Mar 8 13:20:38 2020 -0700","stats":{"files_changed":1,"insertions":33,"deletions":19,"files":["jc/cli.py"]},"message":"Move core magic() logic into seperate function for testability, minor tweaks.\n\nWe only care about the command when testing magic() - by moving that out, we can easily test the command. I modified the code to return a boolean signalling that the command is valid, and the command itself to maintain the original functionality.\n\nI also made some small tweaks (removed a list() call, fixed a possible bug with no arguments., moved magic_dict instantiation past the fast path checks to avoid making a dict if not needed.)","epoch":1583698838,"epoch_utc":null},{"commit":"aff86ae6c71abfe1cbdba5c574a5f3707292ec19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 12:58:26 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 8 12:58:26 2020 -0700","stats":{"files_changed":1,"insertions":29,"deletions":39,"files":["jc/cli.py"]},"message":"reimpliment magic() based on the dictionary approach suggested by philippeitis","epoch":1583697506,"epoch_utc":null},{"commit":"7ece9ddc1a37551cdaaac50f37a48e6d98b18bf4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 7 17:26:42 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Mar 7 17:26:42 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"version bump ls","epoch":1583630802,"epoch_utc":null},{"commit":"7cd048e839a7cc8404fd5abc153a3d315c207819","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 7 17:25:10 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Mar 7 17:25:10 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update","epoch":1583630710,"epoch_utc":null},{"commit":"1e22f610a33903e8525d35a18b1dcf760a93791e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 7 17:22:08 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Mar 7 17:22:08 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/ls.py"]},"message":"fix for osx - doesn't print 'total xx' line if empty directory (issue #40)","epoch":1583630528,"epoch_utc":null},{"commit":"5249c972ae25e9b289a2667bf471aad5e58c70a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 6 12:09:20 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 6 12:09:20 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["changelog.txt"]},"message":"add to changelog","epoch":1583525360,"epoch_utc":null},{"commit":"fd45f856a050f6c56a7a6b50b97b3d8c4de28af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 6 12:09:09 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 6 12:09:09 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/history.py"]},"message":"import jc.utils instead of jc","epoch":1583525349,"epoch_utc":null},{"commit":"c8ab40cd33b14a3a1937ecf64bb23e282f5bb921","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 5 09:19:58 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 5 09:19:58 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"]},"message":"ignore .github folder","epoch":1583428798,"epoch_utc":null},{"commit":"b2c872925b37254dac74578c1803b4127f8411c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 19:47:03 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 4 19:47:03 2020 -0800","stats":{"files_changed":20,"insertions":208,"deletions":220,"files":["tests/test_ls.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_passwd.py","tests/test_pip_list.py","tests/test_ps.py","tests/test_route.py","tests/test_shadow.py","tests/test_ss.py","tests/test_systemctl_lj.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py","tests/test_who.py","tests/test_xml.py","tests/test_yaml.py"]},"message":"add utf-8 encoding for testing on Windows","epoch":1583380023,"epoch_utc":null},{"commit":"f48e229202f8ab1ebfa502ca57bb31cf673c7a62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 19:40:32 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 4 19:40:32 2020 -0800","stats":{"files_changed":21,"insertions":192,"deletions":192,"files":["tests/test_arp.py","tests/test_blkid.py","tests/test_crontab.py","tests/test_crontab_u.py","tests/test_csv.py","tests/test_df.py","tests/test_dig.py","tests/test_du.py","tests/test_env.py","tests/test_free.py","tests/test_fstab.py","tests/test_group.py","tests/test_gshadow.py","tests/test_history.py","tests/test_hosts.py","tests/test_id.py","tests/test_ifconfig.py","tests/test_ini.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_last.py"]},"message":"utf-8 open for windows tests","epoch":1583379632,"epoch_utc":null},{"commit":"799fec92c39b1ff0696c6ebb182c4bef66b86e56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 19:33:45 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 4 19:33:45 2020 -0800","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["tests/test_pip_show.py","tests/test_systemctl.py"]},"message":"utf-8 for windows support","epoch":1583379225,"epoch_utc":null},{"commit":"87a41c2fcaa395f108b5a5126ed77f7cc7fe5d6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 19:30:30 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 4 19:30:30 2020 -0800","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["tests/test_lsblk.py","tests/test_stat.py"]},"message":"add utf-8 to open function","epoch":1583379030,"epoch_utc":null},{"commit":"7f85de0c46cda95d57b9677ba0ca3ea59690e502","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 19:28:21 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 19:28:21 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"add windows-latest","epoch":1583378901,"epoch_utc":null},{"commit":"13661b19934a74417713e98e3e1e4df6bb0f29ad","merge":"5f798d6 51d5c38","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 16:54:26 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 16:54:26 2020 -0800","message":"Merge pull request #37 from philippeitis/continuous_integration\n\nEnable Continuous Integration with GitHub Actions.","epoch":1583369666,"epoch_utc":null},{"commit":"51d5c3892d6ff1e2e6ac7c4f3e496e7d9ed4b6a7","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 16:21:06 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 16:21:06 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"Remove Windows tests, due to lack of support.","epoch":1583367666,"epoch_utc":null},{"commit":"e4eab4641ac15220f2787c5d27b443ab8c718b86","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 16:17:58 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 16:17:58 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/blkid.py"]},"message":"Change line in blkid.py to trigger CI","epoch":1583367478,"epoch_utc":null},{"commit":"9b148e0ba37e18749d95608e1bac6c090ab83ee2","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 16:16:19 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 16:16:19 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["requirements.txt"]},"message":"Add requirements.txt","epoch":1583367379,"epoch_utc":null},{"commit":"de28932650d5027e2781011f1243b89f053b241d","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 16:14:03 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 16:14:03 2020 -0800","stats":{"files_changed":1,"insertions":7,"deletions":6,"files":["jc/parsers/arp.py"]},"message":"Consolidate dictionary into creation, trigger CI","epoch":1583367243,"epoch_utc":null},{"commit":"5f798d603e461d2de5adf74662ba4d4b121f28f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 16:11:14 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 4 16:11:14 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/history.py"]},"message":"version bump and ack to philippeitis","epoch":1583367074,"epoch_utc":null},{"commit":"a0757b2dd3fc0f3e26622941d93bd909dae0a1f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 16:07:53 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 4 16:07:53 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":5,"files":["jc/parsers/foo.py"]},"message":"optimize line parsing","epoch":1583366873,"epoch_utc":null},{"commit":"498d51b4e802cb40cac58aae1eff1f723bbbd896","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 16:07:32 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 16:07:32 2020 -0800","stats":{"files_changed":1,"insertions":31,"deletions":0,"files":[".github/workflows/pythonapp.yml"]},"message":"Enable Continuous Integration with GitHub Actions.\n\nThis automatically runs unit tests on various operating systems and Python versions when Python files are modified to ensure that functionality remains correct.","epoch":1583366852,"epoch_utc":null},{"commit":"b06b6bae3f64f591c9075812dc1b632ef6d2da37","merge":"6aa2d5a 0652768","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 16:04:05 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 16:04:05 2020 -0800","message":"Merge pull request #36 from philippeitis/patch-3\n\nSimplify process() in history.py, avoid list allocation in parse()","epoch":1583366645,"epoch_utc":null},{"commit":"b5eaff21372a58aefb66e5afc5e863db8355fee1","merge":"d75c406 c01bcd3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 15:33:13 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 15:33:13 2020 -0800","message":"Merge pull request #35 from kellyjonbrazil/revert-34-patch-3\n\nRevert \"Simplify process() in history.py, avoid list allocation in parse()\"","epoch":1583364793,"epoch_utc":null},{"commit":"c01bcd3734382a0c388d9f4041fc888171ca7675","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 15:32:23 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 15:32:23 2020 -0800","stats":{"files_changed":1,"insertions":25,"deletions":12,"files":["jc/parsers/history.py"]},"message":"Revert \"Simplify process() in history.py, avoid list allocation in parse()\"","epoch":1583364743,"epoch_utc":null},{"commit":"d75c4068caaf4adbe9a39fa452ae867421053673","merge":"d96b3a6 0652768","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 15:31:55 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 15:31:55 2020 -0800","message":"Merge pull request #34 from philippeitis/patch-3\n\nSimplify process() in history.py, avoid list allocation in parse()","epoch":1583364715,"epoch_utc":null},{"commit":"6aa2d5a3d26f9f00c3334928f6f0e501860433da","merge":"69576f6 a63408c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 15:28:09 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 15:28:09 2020 -0800","message":"Merge pull request #33 from philippeitis/patch-2\n\nHandle case where only options are passed.","epoch":1583364489,"epoch_utc":null},{"commit":"065276805f0f2dd23a6382f0120ca07e9eae116f","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 13:35:31 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 13:35:31 2020 -0800","stats":{"files_changed":1,"insertions":12,"deletions":25,"files":["jc/parsers/history.py"]},"message":"Simplify process() in history.py, avoid list allocation in parse()","epoch":1583357731,"epoch_utc":null},{"commit":"a63408c8cf3f99646be2b375f651d6cf417f7ae0","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 13:16:35 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 13:16:35 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/cli.py"]},"message":"Handle case where only options are passed.","epoch":1583356595,"epoch_utc":null},{"commit":"69576f6bfae073196627a0a39b5ececb8666d25c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 12:03:40 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 4 12:03:40 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/cli.py"]},"message":"minor sytax fixes","epoch":1583352220,"epoch_utc":null},{"commit":"19845624e2996da4653efc2f312aceb514feaf5c","merge":"d96b3a6 22ff296","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 11:59:29 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 11:59:29 2020 -0800","message":"Merge pull request #32 from philippeitis/patch-1\n\nSimplify main(), magic() methods.","epoch":1583351969,"epoch_utc":null},{"commit":"22ff2964e9889587711e779ac24f8f8034212f5e","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 10:33:42 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 10:33:42 2020 -0800","stats":{"files_changed":1,"insertions":62,"deletions":75,"files":["jc/cli.py"]},"message":"Simplify main(), magic() methods.","epoch":1583346822,"epoch_utc":null},{"commit":"d96b3a65a98bc135d21d4feafc0a43317b5a11fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 08:30:52 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 4 08:30:52 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1583339452,"epoch_utc":null},{"commit":"4989445ef4bb8919d9b3b95e2fcee77ca7692aec","merge":"53ee2c3 6770892","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 11:46:09 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Mar 3 11:46:09 2020 -0800","message":"Merge pull request #30 from kellyjonbrazil/dev\n\nDev v1.8.0","epoch":1583264769,"epoch_utc":null},{"commit":"6770892acd49aced225dbccf39290f33522c9001","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 11:37:59 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 3 11:37:59 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]},"message":"add release notes link","epoch":1583264279,"epoch_utc":null},{"commit":"d4eba8740fc325756f3db96ab37a5383540cbeff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 11:08:52 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 3 11:08:52 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"release date 3/3","epoch":1583262532,"epoch_utc":null},{"commit":"9f607605605e47990f97ccfd48fde19a14e036e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 10:54:27 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 3 10:54:27 2020 -0800","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["tests/test_group.py","tests/test_gshadow.py"]},"message":"add group and gshadow tests","epoch":1583261667,"epoch_utc":null},{"commit":"0a8f8ac934f040141e6a4eec8cf7170e1ca73294","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:55:43 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 3 09:55:43 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"add group and gshadow parsers","epoch":1583258143,"epoch_utc":null},{"commit":"6ae24c82447bcff606e7027dd01b916293b49584","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:55:17 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 3 09:55:17 2020 -0800","stats":{"files_changed":10,"insertions":274,"deletions":0,"files":["tests/fixtures/centos-7.7/group.json","tests/fixtures/centos-7.7/group.out","tests/fixtures/centos-7.7/gshadow.json","tests/fixtures/centos-7.7/gshadow.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/group.json","tests/fixtures/osx-10.14.6/group.out","tests/fixtures/ubuntu-18.04/group.json","tests/fixtures/ubuntu-18.04/group.out","tests/fixtures/ubuntu-18.04/gshadow.json"]},"message":"add group and gshadow test fixtures","epoch":1583258117,"epoch_utc":null},{"commit":"d3679082a8c5cff76eb7de67c33fe716a1402182","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:36:16 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 3 09:36:16 2020 -0800","stats":{"files_changed":1,"insertions":64,"deletions":0,"files":["README.md"]},"message":"add group and gshadow parsers","epoch":1583256976,"epoch_utc":null},{"commit":"fb08b42dca135705a3759435335d95c898d47f60","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:32:56 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 3 09:32:56 2020 -0800","stats":{"files_changed":2,"insertions":21,"deletions":21,"files":["docs/parsers/group.md","jc/parsers/group.py"]},"message":"change 'group_list' to 'members'","epoch":1583256776,"epoch_utc":null},{"commit":"4aeaa9f42a88bf4e05c8780a35cc8c4d83c9b842","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:32:25 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 3 09:32:25 2020 -0800","stats":{"files_changed":5,"insertions":316,"deletions":0,"files":["docgen.sh","docs/parsers/gshadow.md","jc/cli.py","jc/parsers/gshadow.py","tests/fixtures/ubuntu-18.04/gshadow.out"]},"message":"add /etc/gshadow parser","epoch":1583256745,"epoch_utc":null},{"commit":"5f5693da048cb4739dc56500c672dc8fbccaaf32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:07:28 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 3 09:07:28 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["docs/parsers/csv.md"]},"message":"spelling fix","epoch":1583255248,"epoch_utc":null},{"commit":"5eb0f61727f92a84fb3620e13db072167ef552ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:07:09 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 3 09:07:09 2020 -0800","stats":{"files_changed":4,"insertions":333,"deletions":0,"files":["docgen.sh","docs/parsers/group.md","jc/cli.py","jc/parsers/group.py"]},"message":"add /etc/group file parser","epoch":1583255229,"epoch_utc":null},{"commit":"958e998991b1cc61dc1dc341b90cd53f4691cd43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 17:15:05 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 2 17:15:05 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/csv.py"]},"message":"formatting","epoch":1583198105,"epoch_utc":null},{"commit":"b78c1509f67fb76d17ac97193a2851d8d9e17f62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 15:06:25 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 2 15:06:25 2020 -0800","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/csv.py"]},"message":"try/except dialect detection","epoch":1583190385,"epoch_utc":null},{"commit":"ce184d4d57faa3f1bca5bcaa02da7a5a5d995eb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 15:05:56 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 2 15:05:56 2020 -0800","stats":{"files_changed":20,"insertions":24054,"deletions":0,"files":["tests/fixtures/generic/csv-biostats.csv","tests/fixtures/generic/csv-biostats.json","tests/fixtures/generic/csv-cities.csv","tests/fixtures/generic/csv-cities.json","tests/fixtures/generic/csv-deniro.csv","tests/fixtures/generic/csv-deniro.json","tests/fixtures/generic/csv-example.csv","tests/fixtures/generic/csv-example.json","tests/fixtures/generic/csv-flyrna.json","tests/fixtures/generic/csv-flyrna.tsv","tests/fixtures/generic/csv-flyrna2.json","tests/fixtures/generic/csv-flyrna2.tsv","tests/fixtures/generic/csv-homes-pipe.csv","tests/fixtures/generic/csv-homes-pipe.json","tests/fixtures/generic/csv-homes.csv","tests/fixtures/generic/csv-homes.json","tests/fixtures/generic/csv-insurance.csv","tests/fixtures/generic/csv-insurance.json","tests/fixtures/generic/oscar_age_male.csv","tests/test_csv.py"]},"message":"add csv parser tests","epoch":1583190356,"epoch_utc":null},{"commit":"b4c3714ced9ee5cc6a7ef0c59a43cf85e1cb9824","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 14:10:15 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 2 14:10:15 2020 -0800","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["README.md"]},"message":"removed [OPTIONS] PARSER syntax. still works but prefer the PARSER [OPTIONS] syntax for better performance","epoch":1583187015,"epoch_utc":null},{"commit":"5b7dfa043864f1a3f34aa4ef5c6554a2dfe185f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 14:07:56 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 2 14:07:56 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"formatting","epoch":1583186876,"epoch_utc":null},{"commit":"391a3884765780497dc34e0e9938ff5032c81291","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 14:07:29 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 2 14:07:29 2020 -0800","stats":{"files_changed":2,"insertions":49,"deletions":0,"files":["README.md","changelog.txt"]},"message":"doc update","epoch":1583186849,"epoch_utc":null},{"commit":"d9c4e2ed4c0f908f4b63c2376b53ddfd32a0fae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 14:03:58 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 2 14:03:58 2020 -0800","stats":{"files_changed":4,"insertions":241,"deletions":0,"files":["docgen.sh","docs/parsers/csv.md","jc/cli.py","jc/parsers/csv.py"]},"message":"add csv file parser","epoch":1583186638,"epoch_utc":null},{"commit":"0c42db38b102987629e40cee2716b826161e6e94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 10:30:12 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 2 10:30:12 2020 -0800","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/who.md","jc/parsers/who.py"]},"message":"doc update","epoch":1583173812,"epoch_utc":null},{"commit":"2f9be8bf33f8be5651d06da9d316f7894606df19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 08:32:42 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 2 08:32:42 2020 -0800","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/cli.py"]},"message":"simplify usage","epoch":1583166762,"epoch_utc":null},{"commit":"e8c00155e861b9eedfdf37a22912271bec581d62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 07:43:45 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 2 07:43:45 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"add -b to warning message","epoch":1583163825,"epoch_utc":null},{"commit":"cc88fdd9ee3951d7ef2aa881cc12f0b7f96aef86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 21:17:50 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 21:17:50 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"update example","epoch":1583126270,"epoch_utc":null},{"commit":"d9de11ef1d846a9625dad0adb962b864404c90c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 21:16:57 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 21:16:57 2020 -0800","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["README.md"]},"message":"add another who example","epoch":1583126217,"epoch_utc":null},{"commit":"0ceda97d0968b67b70cdbb68f7a62657e79c9935","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 19:03:27 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 19:03:27 2020 -0800","stats":{"files_changed":1,"insertions":88,"deletions":0,"files":["tests/test_who.py"]},"message":"who parser tests","epoch":1583118207,"epoch_utc":null},{"commit":"d0dec92ba84640ddc40da7c6faa6568b76757e04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 18:57:51 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 18:57:51 2020 -0800","stats":{"files_changed":12,"insertions":36,"deletions":0,"files":["tests/fixtures/centos-7.7/who-a.json","tests/fixtures/centos-7.7/who-a.out","tests/fixtures/centos-7.7/who.json","tests/fixtures/centos-7.7/who.out","tests/fixtures/osx-10.14.6/who-a.json","tests/fixtures/osx-10.14.6/who-a.out","tests/fixtures/osx-10.14.6/who.json","tests/fixtures/osx-10.14.6/who.out","tests/fixtures/ubuntu-18.04/who-a.json","tests/fixtures/ubuntu-18.04/who-a.out","tests/fixtures/ubuntu-18.04/who.json","tests/fixtures/ubuntu-18.04/who.out"]},"message":"add who test fixtures","epoch":1583117871,"epoch_utc":null},{"commit":"d420c008d8aaa0879fa5a3f236d81acb506376c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 17:52:14 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 17:52:14 2020 -0800","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["jc/parsers/who.py"]},"message":"fix for pts lines with no user info","epoch":1583113934,"epoch_utc":null},{"commit":"f0b32db4333477e22cc40de62cf026a6a7aa2eb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 17:39:02 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 17:39:02 2020 -0800","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","docs/parsers/who.md"]},"message":"who doc update","epoch":1583113142,"epoch_utc":null},{"commit":"bc838eda591473d32b11a885e60ef653925739d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 17:38:51 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 17:38:51 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/parsers/who.py"]},"message":"fix output for non-extended","epoch":1583113131,"epoch_utc":null},{"commit":"afe55b6af07b74816d33d9555ffaa1c1921dd27a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 17:07:28 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 17:07:28 2020 -0800","stats":{"files_changed":1,"insertions":46,"deletions":0,"files":["README.md"]},"message":"add who parser","epoch":1583111248,"epoch_utc":null},{"commit":"dd3a3ac302d7b35beef1181e74aed0faf96fd3e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 17:04:06 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 17:04:06 2020 -0800","stats":{"files_changed":4,"insertions":255,"deletions":9,"files":["changelog.txt","docgen.sh","docs/parsers/who.md","jc/parsers/who.py"]},"message":"doc update and process pid integers","epoch":1583111046,"epoch_utc":null},{"commit":"f9982a79474c1838f37fc0ff88437980b228d7a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 16:49:52 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 16:49:52 2020 -0800","stats":{"files_changed":1,"insertions":11,"deletions":2,"files":["jc/parsers/who.py"]},"message":"fixes for from and comment fields","epoch":1583110192,"epoch_utc":null},{"commit":"07c1be9e9ad9f62cf76c23788152de8f3530ee16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 16:30:04 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 16:30:04 2020 -0800","stats":{"files_changed":2,"insertions":170,"deletions":0,"files":["jc/cli.py","jc/parsers/who.py"]},"message":"add who command parser","epoch":1583109004,"epoch_utc":null},{"commit":"f832b88755bfbd3878ec402e603180e6825279be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 10:17:47 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 10:17:47 2020 -0800","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["tests/test_passwd.py","tests/test_shadow.py"]},"message":"add passwd and shadow tests","epoch":1583086667,"epoch_utc":null},{"commit":"0fac757efca41db062b2f65acc727963c5fb353c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 12:25:41 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Feb 29 12:25:41 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"add passwd and shadow parsers","epoch":1583007941,"epoch_utc":null},{"commit":"fc15742065531152f3d5895042eeb806e33a192a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 12:25:22 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Feb 29 12:25:22 2020 -0800","stats":{"files_changed":10,"insertions":215,"deletions":0,"files":["tests/fixtures/centos-7.7/passwd.json","tests/fixtures/centos-7.7/passwd.out","tests/fixtures/centos-7.7/shadow.json","tests/fixtures/centos-7.7/shadow.out","tests/fixtures/osx-10.14.6/passwd.json","tests/fixtures/osx-10.14.6/passwd.out","tests/fixtures/ubuntu-18.04/passwd.json","tests/fixtures/ubuntu-18.04/passwd.out","tests/fixtures/ubuntu-18.04/shadow.json","tests/fixtures/ubuntu-18.04/shadow.out"]},"message":"passwd and shadow test fixtures","epoch":1583007922,"epoch_utc":null},{"commit":"6f2466a1319eaa4256ae7a2a0f23b3ff37882d37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 11:56:12 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Feb 29 11:56:12 2020 -0800","stats":{"files_changed":1,"insertions":73,"deletions":0,"files":["README.md"]},"message":"update readme with /etc/passwd and /etc/shadow file parsers","epoch":1583006172,"epoch_utc":null},{"commit":"4b90e22f0a9c6790bca62c8314945a7ffc6e267b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 11:50:46 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Feb 29 11:50:46 2020 -0800","stats":{"files_changed":2,"insertions":137,"deletions":9,"files":["docs/parsers/shadow.md","jc/parsers/shadow.py"]},"message":"doc update","epoch":1583005846,"epoch_utc":null},{"commit":"c4935687853fb3b079ae42614793cdafe68e124e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 11:46:38 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Feb 29 11:46:38 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/passwd.md","jc/parsers/passwd.py"]},"message":"doc fix","epoch":1583005598,"epoch_utc":null},{"commit":"1cdf004b7728901dc137e57b0c8994edfdd6d417","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 11:46:24 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Feb 29 11:46:24 2020 -0800","stats":{"files_changed":4,"insertions":190,"deletions":0,"files":["docgen.sh","docs/parsers/shadow.md","jc/cli.py","jc/parsers/shadow.py"]},"message":"add /etc/shadow parser","epoch":1583005584,"epoch_utc":null},{"commit":"a4ea50426184d30cbe849a8f80bfd5c975075c9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 11:33:14 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Feb 29 11:33:14 2020 -0800","stats":{"files_changed":4,"insertions":303,"deletions":0,"files":["docgen.sh","docs/parsers/passwd.md","jc/cli.py","jc/parsers/passwd.py"]},"message":"add /etc/passwd parser","epoch":1583004794,"epoch_utc":null},{"commit":"4c2c234c3bf68d1aac66bd4d1f22b9f97e99128d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 15:15:24 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 28 15:15:24 2020 -0800","stats":{"files_changed":16,"insertions":673,"deletions":0,"files":["tests/fixtures/centos-7.7/last-w.json","tests/fixtures/centos-7.7/last-w.out","tests/fixtures/centos-7.7/last.json","tests/fixtures/centos-7.7/last.out","tests/fixtures/centos-7.7/lastb.json","tests/fixtures/centos-7.7/lastb.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/last.json","tests/fixtures/osx-10.14.6/last.out","tests/fixtures/ubuntu-18.04/last-w.json","tests/fixtures/ubuntu-18.04/last-w.out","tests/fixtures/ubuntu-18.04/last.json","tests/fixtures/ubuntu-18.04/last.out","tests/fixtures/ubuntu-18.04/lastb.json","tests/fixtures/ubuntu-18.04/lastb.out","tests/test_last.py"]},"message":"add last and lastb tests","epoch":1582931724,"epoch_utc":null},{"commit":"3d4c0f3e89dab6496ff74df350e3238d6625933c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 14:50:29 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 28 14:50:29 2020 -0800","stats":{"files_changed":22,"insertions":285,"deletions":0,"files":["tests/fixtures/centos-7.7/blkid-ip-multi.json","tests/fixtures/centos-7.7/blkid-ip-multi.out","tests/fixtures/centos-7.7/blkid-ip-udev-multi.json","tests/fixtures/centos-7.7/blkid-ip-udev-multi.out","tests/fixtures/centos-7.7/blkid-ip-udev.json","tests/fixtures/centos-7.7/blkid-ip-udev.out","tests/fixtures/centos-7.7/blkid-sda2.json","tests/fixtures/centos-7.7/blkid-sda2.out","tests/fixtures/centos-7.7/blkid.json","tests/fixtures/centos-7.7/blkid.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/blkid-ip-multi.json","tests/fixtures/ubuntu-18.04/blkid-ip-multi.out",".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.json",".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.out","tests/fixtures/ubuntu-18.04/blkid-ip-udev.json","tests/fixtures/ubuntu-18.04/blkid-ip-udev.out","tests/fixtures/ubuntu-18.04/blkid-sda2.json","tests/fixtures/ubuntu-18.04/blkid-sda2.out","tests/fixtures/ubuntu-18.04/blkid.json","tests/fixtures/ubuntu-18.04/blkid.out","tests/test_blkid.py"]},"message":"add blkid tests","epoch":1582930229,"epoch_utc":null},{"commit":"52fad02903468c05d2422a340ad8dbcdf18ed475","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 13:31:38 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 28 13:31:38 2020 -0800","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"doc update","epoch":1582925498,"epoch_utc":null},{"commit":"9dcabc057c40e345971a08474b5b886e6b60a8de","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 10:57:14 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 28 10:57:14 2020 -0800","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/blkid.py"]},"message":"support multi device udev output","epoch":1582916234,"epoch_utc":null},{"commit":"db8c1079ddc25922ab6a20d0f71fb19af38f8092","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 09:54:07 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 28 09:54:07 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/blkid.py"]},"message":"use maxsplit=1 in case there are multiple '=' delimiters","epoch":1582912447,"epoch_utc":null},{"commit":"8f954673abdbbd4d9b9da3eacc61b335b4909f89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 09:07:36 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 28 09:07:36 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/blkid.py"]},"message":"use shlex split for values within quotations that have spaces","epoch":1582909656,"epoch_utc":null},{"commit":"79522d1c7dd4dec15b75b06dda002752f7d97e36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 08:51:48 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 28 08:51:48 2020 -0800","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"doc fixes","epoch":1582908708,"epoch_utc":null},{"commit":"a18bf030794efef125c70a32fe82855e47649b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 08:50:35 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 28 08:50:35 2020 -0800","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/parsers/last.py","jc/parsers/ls.py"]},"message":"use raw strings for regular expressions","epoch":1582908635,"epoch_utc":null},{"commit":"c02b6b5d827d26b43db0a3457124714aa2dbbc98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 21:21:19 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 21:21:19 2020 -0800","stats":{"files_changed":3,"insertions":81,"deletions":1,"files":["README.md","changelog.txt","setup.py"]},"message":"doc updates","epoch":1582867279,"epoch_utc":null},{"commit":"f99b4232848b0d868804acc4125836bfcf475bba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 21:04:24 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 21:04:24 2020 -0800","stats":{"files_changed":2,"insertions":134,"deletions":29,"files":["docs/parsers/blkid.md","jc/parsers/blkid.py"]},"message":"doc update","epoch":1582866264,"epoch_utc":null},{"commit":"d7d9d45d4fba89e74f7490c463eb26bf20a5d127","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:59:09 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 20:59:09 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/blkid.py"]},"message":"add missing comma","epoch":1582865949,"epoch_utc":null},{"commit":"90065ec0cdc8c5abc13bc0027f63658dacf3cfb2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:57:22 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 20:57:22 2020 -0800","stats":{"files_changed":1,"insertions":31,"deletions":26,"files":["jc/parsers/blkid.py"]},"message":"add more integers","epoch":1582865842,"epoch_utc":null},{"commit":"51157ebb867a48332c768bf3086614944aebdb62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:49:14 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 20:49:14 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/blkid.py"]},"message":"another devname fix","epoch":1582865354,"epoch_utc":null},{"commit":"96d95c79ca0938e326f55f858f8153df9cb49e44","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:47:07 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 20:47:07 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/blkid.py"]},"message":"devname fix","epoch":1582865227,"epoch_utc":null},{"commit":"e5da34c23306463e8707b15676db0ca53bf66757","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:41:06 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 20:41:06 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/blkid.py"]},"message":"check if devname key exists before renaming","epoch":1582864866,"epoch_utc":null},{"commit":"f09d657f7728242947db3dc63ff6779d08c37866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:36:19 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 20:36:19 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/blkid.py"]},"message":"rename devname to device","epoch":1582864579,"epoch_utc":null},{"commit":"0f4b0189f54dc0b3622cd407c5565e53ea111379","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:31:17 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 20:31:17 2020 -0800","stats":{"files_changed":1,"insertions":35,"deletions":3,"files":["jc/parsers/blkid.py"]},"message":"process integer values","epoch":1582864277,"epoch_utc":null},{"commit":"4666042abb3142e2cfb518db9ffe22d9e608e090","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:21:02 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 20:21:02 2020 -0800","stats":{"files_changed":4,"insertions":216,"deletions":0,"files":["docgen.sh","docs/parsers/blkid.md","jc/cli.py","jc/parsers/blkid.py"]},"message":"add blkid parser","epoch":1582863662,"epoch_utc":null},{"commit":"027d544c2bb778adc0ee9463832f19b10e099a0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 16:08:56 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 16:08:56 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"]},"message":"add last and lastb parser","epoch":1582848536,"epoch_utc":null},{"commit":"f1967d0138d27bde864c2400aa75baa8a39bbfde","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 16:08:39 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 16:08:39 2020 -0800","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/last.py"]},"message":"system_boot fix","epoch":1582848519,"epoch_utc":null},{"commit":"c1d896027dd1ce021e048b3e77eab24ff59d08bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 15:58:12 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 15:58:12 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/last.py"]},"message":"fix system_boot tty","epoch":1582847892,"epoch_utc":null},{"commit":"5c2d2a66187d32d62b31b7c7f13e502fdb7f9635","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 15:44:36 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 15:44:36 2020 -0800","stats":{"files_changed":3,"insertions":190,"deletions":6,"files":["docgen.sh","docs/parsers/last.md","jc/parsers/last.py"]},"message":"process function and docs","epoch":1582847076,"epoch_utc":null},{"commit":"997b269b0b7e53a456e2a0bd997ead6c2ae843bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 15:26:09 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 15:26:09 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/last.py"]},"message":"btmp fix","epoch":1582845969,"epoch_utc":null},{"commit":"61257e7525c25827cb8057ed5c612e54ea9b9637","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 15:14:43 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 15:14:43 2020 -0800","stats":{"files_changed":2,"insertions":119,"deletions":1,"files":["jc/cli.py","jc/parsers/last.py"]},"message":"add last and lastb parser","epoch":1582845283,"epoch_utc":null},{"commit":"53ee2c36310cb84390ef96644aee6871769151c9","merge":"2ad3167 8bfa0bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 10:59:14 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Feb 27 10:59:14 2020 -0800","message":"Merge pull request #29 from kellyjonbrazil/dev\n\nDev v1.7.5","epoch":1582829954,"epoch_utc":null},{"commit":"8bfa0bddec9ff1c21972019467dcf5738ab3afd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 10:50:05 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 10:50:05 2020 -0800","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to 1.7.5","epoch":1582829405,"epoch_utc":null},{"commit":"ad61e6bc81177a2add7d052bf1ddec5f1b3f2976","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 10:48:09 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 10:48:09 2020 -0800","stats":{"files_changed":26,"insertions":598,"deletions":133,"files":["tests/fixtures/centos-7.7/ls-R-newlines.json","tests/fixtures/centos-7.7/ls-R-newlines.out","tests/fixtures/centos-7.7/ls-l-newlines.json","tests/fixtures/centos-7.7/ls-l-newlines.out","tests/fixtures/centos-7.7/ls-lR-newlines.json","tests/fixtures/centos-7.7/ls-lR-newlines.out","tests/fixtures/centos-7.7/ls-newlines.json","tests/fixtures/centos-7.7/ls-newlines.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/ls-R-newlines.json","tests/fixtures/osx-10.14.6/ls-R-newlines.out","tests/fixtures/osx-10.14.6/ls-l-newlines.json","tests/fixtures/osx-10.14.6/ls-l-newlines.out","tests/fixtures/osx-10.14.6/ls-lR-newlines.json","tests/fixtures/osx-10.14.6/ls-lR-newlines.out","tests/fixtures/osx-10.14.6/ls-newlines.json","tests/fixtures/osx-10.14.6/ls-newlines.out","tests/fixtures/ubuntu-18.04/ls-R-newlines.json","tests/fixtures/ubuntu-18.04/ls-R-newlines.out","tests/fixtures/ubuntu-18.04/ls-l-newlines.json","tests/fixtures/ubuntu-18.04/ls-l-newlines.out","tests/fixtures/ubuntu-18.04/ls-lR-newlines.json","tests/fixtures/ubuntu-18.04/ls-lR-newlines.out","tests/fixtures/ubuntu-18.04/ls-newlines.json","tests/fixtures/ubuntu-18.04/ls-newlines.out","tests/test_ls.py"]},"message":"add ls tests for filenames with newline characters","epoch":1582829289,"epoch_utc":null},{"commit":"873b5ba8acf599d083d6031b818d5fca83cbca9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 09:36:57 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 09:36:57 2020 -0800","stats":{"files_changed":1,"insertions":27,"deletions":31,"files":["README.md"]},"message":"move examples to bottom","epoch":1582825017,"epoch_utc":null},{"commit":"6ae50054e2e8c7ca730013b43062eedc230c0ad4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 20:30:44 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 24 20:30:44 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"readme update","epoch":1582605044,"epoch_utc":null},{"commit":"22a35f41bf9c404d3532611f5929143d04b10010","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 17:50:56 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 24 17:50:56 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/ls.py"]},"message":"move variables to top","epoch":1582595456,"epoch_utc":null},{"commit":"961696c963215a9dab56113ff89f21a6e9739df6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 17:47:31 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 24 17:47:31 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/ls.py"]},"message":"add a warning if newlines are detected in naked ls","epoch":1582595251,"epoch_utc":null},{"commit":"c7b7f1a5dcf77a1f4c23ef6bbf5683fd1a055f72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 17:24:56 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 24 17:24:56 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"fix for files with newlines in naked ls","epoch":1582593896,"epoch_utc":null},{"commit":"b5a0d650b128d8af81bb14dd5d007349529cb66f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 17:01:33 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 24 17:01:33 2020 -0800","stats":{"files_changed":1,"insertions":151,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-newlines.out"]},"message":"ls output with newlines","epoch":1582592493,"epoch_utc":null},{"commit":"573b27946474276592ee7494689ce9a88f5a05f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 17:01:12 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 24 17:01:12 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"fixup for filenames that start with a newline character","epoch":1582592472,"epoch_utc":null},{"commit":"116e07f1614b4a45eb58ffcfe20b5efa71c473a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 16:38:29 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 24 16:38:29 2020 -0800","stats":{"files_changed":1,"insertions":6,"deletions":7,"files":["jc/parsers/ls.py"]},"message":"fixes for multiple consecutive newlines and trailing newlines in filenames","epoch":1582591109,"epoch_utc":null},{"commit":"964868c8aff99edf37b0db41c7d16f8b84ac4704","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 15:19:43 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 24 15:19:43 2020 -0800","stats":{"files_changed":2,"insertions":21,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"add support for newlines in filenames (only with ls -l)","epoch":1582586383,"epoch_utc":null},{"commit":"c8dac32df8102c2b782e87d55bb95ca2d9490185","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 13:05:35 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 24 13:05:35 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"readme update","epoch":1582578335,"epoch_utc":null},{"commit":"72a0016bd833699c3819baa899f335f75b8c1943","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 20 15:38:45 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 20 15:38:45 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"use link to anchor for Parsers","epoch":1582241925,"epoch_utc":null},{"commit":"2ad316743460bb6620e7ede251e1dc2739b073fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 19 07:12:43 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 19 07:12:43 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update doc url","epoch":1582125163,"epoch_utc":null},{"commit":"ddabfaa05c63f886b17e5b4d37cd83fcfdb9b221","merge":"873771d f857523","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 19 07:05:29 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Feb 19 07:05:29 2020 -0800","message":"Merge pull request #25 from kellyjonbrazil/dev\n\nDev v1.7.4","epoch":1582124729,"epoch_utc":null},{"commit":"f857523ca756864211b6b18af5a8886e5db200bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 19 07:02:50 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 19 07:02:50 2020 -0800","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"bump to version 1.7.4","epoch":1582124570,"epoch_utc":null},{"commit":"00d53858e820f00ba015bc25629100c8e5495221","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 22:57:15 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 22:57:15 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add note about aliases not being supported","epoch":1582009035,"epoch_utc":null},{"commit":"c008167e660929a91606bb96498cdc113e815f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 22:48:44 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 22:48:44 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"add time-style=full-iso option to doc","epoch":1582008524,"epoch_utc":null},{"commit":"102344a041e9e0aff8b6d9db1873ba1064f7e895","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 22:32:07 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 22:32:07 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/ls.py"]},"message":"formatting","epoch":1582007527,"epoch_utc":null},{"commit":"c865298ef3613fe6ce17f41c15209a69940af1ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 22:29:39 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 22:29:39 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"remove unnecessary enumerate in for loop","epoch":1582007379,"epoch_utc":null},{"commit":"6ac03faf939bcda8930a48a5e832b557813e2129","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 18:58:07 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 18:58:07 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"Revert \"add ubuntu and centos default ls aliases to magic_commands\"\n\nThis reverts commit 49c2701743706b6cbf0e52b2c7f275e301315189.","epoch":1581994687,"epoch_utc":null},{"commit":"49c2701743706b6cbf0e52b2c7f275e301315189","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 18:55:03 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 18:55:03 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"add ubuntu and centos default ls aliases to magic_commands","epoch":1581994503,"epoch_utc":null},{"commit":"d1a271b08e64b42be8cec11377b0e18435a0caec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 18:33:55 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 18:33:55 2020 -0800","stats":{"files_changed":21,"insertions":35333,"deletions":1374,"files":["tests/fixtures/centos-7.7/ls-R.json","tests/fixtures/centos-7.7/ls-R.out","tests/fixtures/centos-7.7/ls-alR.json","tests/fixtures/centos-7.7/ls-alR.out","tests/fixtures/centos-7.7/ls-glob.json","tests/fixtures/centos-7.7/ls-glob.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/ls-R.json","tests/fixtures/osx-10.14.6/ls-R.out","tests/fixtures/osx-10.14.6/ls-alR.json","tests/fixtures/osx-10.14.6/ls-alR.out","tests/fixtures/osx-10.14.6/ls-glob.json","tests/fixtures/osx-10.14.6/ls-glob.out","tests/fixtures/ubuntu-18.04/ls-R.json","tests/fixtures/ubuntu-18.04/ls-R.out","tests/fixtures/ubuntu-18.04/ls-alR.json","tests/fixtures/ubuntu-18.04/ls-alR.out","tests/fixtures/ubuntu-18.04/ls-glob.json","tests/fixtures/ubuntu-18.04/ls-glob.out","tests/fixtures/ubuntu-18.04/ls-lR.out","tests/test_ls.py"]},"message":"add new ls tests for recursive and multiple directories with glob","epoch":1581993235,"epoch_utc":null},{"commit":"7388ad19b9d252d3e66659e4bc37171cef2a9748","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 17:31:15 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 17:31:15 2020 -0800","stats":{"files_changed":4,"insertions":6,"deletions":4,"files":["docs/parsers/ls.md","jc/cli.py","jc/parsers/ls.py","setup.py"]},"message":"bump to v1.8.0","epoch":1581989475,"epoch_utc":null},{"commit":"2e63cb5fadd032c7cb54a618e8b374ee853abcca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 17:16:34 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 17:16:34 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"version bump ls to 1.1","epoch":1581988594,"epoch_utc":null},{"commit":"e7f14d02b12c7dcba309f2d28a0f171769d1ba37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 17:14:27 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 17:14:27 2020 -0800","stats":{"files_changed":3,"insertions":1438,"deletions":8,"files":["jc/parsers/ls.py","tests/fixtures/ubuntu-18.04/ls-R.out","tests/fixtures/ubuntu-18.04/ls-lR.out"]},"message":"update ls to allow multi directory (glob and -R). Adds 'parent' key if found","epoch":1581988467,"epoch_utc":null},{"commit":"873771d05ab0b77163c95d2c37e11edf38451832","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 09:16:32 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 09:16:32 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1581959792,"epoch_utc":null},{"commit":"d7de122e36e0698e00f321fbac8dc0b543cf9e8a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 14 09:44:24 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 14 09:44:24 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"prettify link","epoch":1581702264,"epoch_utc":null},{"commit":"4ef0434f536c6658ddc2b48a3db113df2fd26000","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 14 09:43:02 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 14 09:43:02 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["README.md"]},"message":"formatting update","epoch":1581702182,"epoch_utc":null},{"commit":"1aa2c9925996f2358b6272547db755ec3098a8a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 22:10:22 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 22:10:22 2020 -0800","stats":{"files_changed":2,"insertions":1,"deletions":2,"files":["README.md","jc/parsers/history.py"]},"message":"removed history from magic syntax","epoch":1581660622,"epoch_utc":null},{"commit":"c2450b27b079b02ed3f4ece9e36547f01cd4b139","merge":"028e136 14d6d8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 21:26:18 2020 -0500","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Feb 13 21:26:18 2020 -0500","message":"Merge pull request #22 from kellyjonbrazil/dev\n\nDev 1.7.3","epoch":1581657978,"epoch_utc":null},{"commit":"14d6d8b84f0ddeff984aff486e2e697a91ac6fb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 18:24:53 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 18:24:53 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump to 1.7.3","epoch":1581647093,"epoch_utc":null},{"commit":"f0e3846c038ec5507cd4a19980d83ee0fb969ef5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 18:20:22 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 18:20:22 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["README.md"]},"message":"formatting","epoch":1581646822,"epoch_utc":null},{"commit":"6ba64f1128373843b068226424a3af545ac9d22c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 18:19:19 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 18:19:19 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":2,"files":["README.md"]},"message":"usage update","epoch":1581646759,"epoch_utc":null},{"commit":"13bcdbc6c9a81bc5d52fe7a84e6a0a34908db8bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 17:50:51 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 17:50:51 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"doc update","epoch":1581645051,"epoch_utc":null},{"commit":"cfba62db20674d788601354211a10e2b1675a0c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 17:48:21 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 17:48:21 2020 -0800","stats":{"files_changed":1,"insertions":13,"deletions":6,"files":["jc/cli.py"]},"message":"correct parser search in magic()","epoch":1581644901,"epoch_utc":null},{"commit":"18fb69e36e303a3f9530dcb80354b25bfdbb931d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 17:29:45 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 17:29:45 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"docs/parsers link","epoch":1581643785,"epoch_utc":null},{"commit":"474eb0f3fdeaa612e189d745b12a5ed9c6e0a31b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 17:24:10 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 17:24:10 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"doc updates","epoch":1581643450,"epoch_utc":null},{"commit":"7f47b533701e60449351d5da03cd5960e0dec9ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 17:20:00 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 17:20:00 2020 -0800","stats":{"files_changed":1,"insertions":90,"deletions":68,"files":["README.md"]},"message":"add alternate magic syntax","epoch":1581643200,"epoch_utc":null},{"commit":"dc2907d3ce101043b30bcce71abb4bb02897f43a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 16:58:25 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 16:58:25 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["docs/parsers/crontab.md"]},"message":"doc update","epoch":1581641905,"epoch_utc":null},{"commit":"1af85811e06c489051c456918284a746ce12c692","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 16:57:57 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 16:57:57 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/fstab.py"]},"message":"remove magic_command info","epoch":1581641877,"epoch_utc":null},{"commit":"1c1b19a478fe5c356a93cd165518429e77fcbdf0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 16:57:30 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 16:57:30 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab.py"]},"message":"doc update","epoch":1581641850,"epoch_utc":null},{"commit":"66942d64babf932faeb887eb4ec0cab32829321a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 16:56:48 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 16:56:48 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["changelog.txt"]},"message":"changelog update","epoch":1581641808,"epoch_utc":null},{"commit":"2fb6ae08d76e7a5727b2fcdd5def3e3822e0cf72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 12:17:41 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 12:17:41 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"]},"message":"fix shlex usage","epoch":1581625061,"epoch_utc":null},{"commit":"bf8811e03e2a5b736f4c084f42400fcde400ff3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 10:25:41 2020 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 10:25:41 2020 -0500","stats":{"files_changed":1,"insertions":6,"deletions":3,"files":["jc/cli.py"]},"message":"add comments","epoch":1581618341,"epoch_utc":null},{"commit":"c8b502c571d3081ca3086e349a426ca252a3bb84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 10:14:32 2020 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 10:14:32 2020 -0500","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/cli.py"]},"message":"remove unnecessary join and add comments","epoch":1581617672,"epoch_utc":null},{"commit":"81c11a975c6ee66a1f83350df8b065a6b07dcc9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 10:08:43 2020 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 10:08:43 2020 -0500","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/cli.py"]},"message":"added docstrings","epoch":1581617323,"epoch_utc":null},{"commit":"0d370eb403ab4d9ed11e36776efc08bdd3505c1a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 10:03:11 2020 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 10:03:11 2020 -0500","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"doc update","epoch":1581616991,"epoch_utc":null},{"commit":"7492c3f1e312cdb0c58c2077db0d60d2cab1e58f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 09:48:42 2020 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 09:48:42 2020 -0500","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"changelog update","epoch":1581616122,"epoch_utc":null},{"commit":"515a8a84b79c9bf6f3001d3c52faa82a6709b8d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 09:47:40 2020 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 09:47:40 2020 -0500","stats":{"files_changed":33,"insertions":33,"deletions":33,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add \"command\" to description","epoch":1581616060,"epoch_utc":null},{"commit":"dd6680efb2b15bb8ed676016aae1c65193dfe147","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 09:47:16 2020 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 09:47:16 2020 -0500","stats":{"files_changed":2,"insertions":29,"deletions":14,"files":["changelog.txt","jc/cli.py"]},"message":"allow condensed options (-prdq is equivalent to -p -r -d -q)","epoch":1581616036,"epoch_utc":null},{"commit":"a7158373cd225685f5c398fa36b8d5208e20521c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 12 00:16:17 2020 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 12 00:16:17 2020 -0500","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"comment update","epoch":1581495377,"epoch_utc":null},{"commit":"6d50ec71997cac9c898737de93b8a945f0351e53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 12 00:11:48 2020 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 12 00:11:48 2020 -0500","stats":{"files_changed":1,"insertions":9,"deletions":6,"files":["jc/cli.py"]},"message":"add try/except to fix bare jc command condition","epoch":1581495108,"epoch_utc":null},{"commit":"95dbf98e8e03486f74d986683f52699f4f9c9577","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 11 19:14:51 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 11 19:14:51 2020 -0800","stats":{"files_changed":1,"insertions":26,"deletions":6,"files":["jc/cli.py"]},"message":"allow options in magic syntax","epoch":1581477291,"epoch_utc":null},{"commit":"d49323e4ebf2a8aebd1d8ea65ef0854ee8bcb29f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 11 18:09:21 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 11 18:09:21 2020 -0800","stats":{"files_changed":33,"insertions":33,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add magic_commands list to info","epoch":1581473361,"epoch_utc":null},{"commit":"08c1e2aec9d6bb68653dc12ba2272535fb7cef09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 11 18:08:59 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 11 18:08:59 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"]},"message":"add magic syntax","epoch":1581473339,"epoch_utc":null},{"commit":"a2c137df2e6d3b133df5df0bb3f9b1ca69990557","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 11 18:08:37 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 11 18:08:37 2020 -0800","stats":{"files_changed":2,"insertions":66,"deletions":299,"files":["jc/cli.py","jc/cli.py.old"]},"message":"better magic command syntax logic using introspection information from parser modules","epoch":1581473317,"epoch_utc":null},{"commit":"fe27dcdb8f72b5a288f978b87be2eb930099543e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 11 12:16:23 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 11 12:16:23 2020 -0800","stats":{"files_changed":2,"insertions":319,"deletions":45,"files":["jc/cli.py","jc/cli.py.old"]},"message":"proof of concept for magic syntax (e.g. jc ls -al)","epoch":1581452183,"epoch_utc":null},{"commit":"028e136161ac15f588845f87907b4565a6ee7be2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 8 12:46:42 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Feb 8 12:46:42 2020 -0800","stats":{"files_changed":4,"insertions":7,"deletions":2,"files":["MANIFEST.in","changelog.txt","jc/cli.py","setup.py"]},"message":"bump to 1.7.2: add test fixtures to package","epoch":1581194802,"epoch_utc":null},{"commit":"9a85a0a4d504447b32fb622bb17cebc5e47f687f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 8 12:46:14 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Feb 8 12:46:14 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/crontab_u.md","jc/parsers/crontab_u.py"]},"message":"fix doc","epoch":1581194774,"epoch_utc":null},{"commit":"3a1cbc4d5063344c3e3a4bf510d651a36beedfb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 22:26:47 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 22:26:47 2020 -0800","stats":{"files_changed":1,"insertions":14,"deletions":14,"files":["jc/cli.py"]},"message":"move info class to top","epoch":1580970407,"epoch_utc":null},{"commit":"77d334f7f386f79ec0571325500054fdab207f31","merge":"4de8f42 53cdf86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:59:52 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Feb 5 16:59:52 2020 -0800","message":"Merge pull request #19 from kellyjonbrazil/dev-1.7.1\n\nDev v1.7.1","epoch":1580950792,"epoch_utc":null},{"commit":"53cdf863acc72dbdb671773e30277f42e9eadc0e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:53:17 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 16:53:17 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["changelog.txt"]},"message":"changelog update","epoch":1580950397,"epoch_utc":null},{"commit":"7b7e7fe0fe92edef1e559bd7ae8272530d7ed5c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:50:55 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 16:50:55 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"changelog update","epoch":1580950255,"epoch_utc":null},{"commit":"0c03132847a3d2bcbdb0b743e1472865916cced4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:18:58 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 16:18:58 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"fix error codes using sys.exit()","epoch":1580948338,"epoch_utc":null},{"commit":"3b81f7e2a1381958b33962d4531f3fa223c6a83e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:12:09 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 16:12:09 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"exit code on ctrl-c exit","epoch":1580947929,"epoch_utc":null},{"commit":"3d76437b435660e92633c604c4ad32ee0500a28b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:00:23 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 16:00:23 2020 -0800","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ini.md","docs/parsers/xml.md","jc/parsers/ini.py","jc/parsers/xml.py"]},"message":"doc fix","epoch":1580947223,"epoch_utc":null},{"commit":"4bc54c78cea48682ed0432ea56460a26a0e52f83","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:00:10 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 16:00:10 2020 -0800","stats":{"files_changed":4,"insertions":7,"deletions":7,"files":["docs/parsers/du.md","docs/parsers/history.md","jc/parsers/du.py","jc/parsers/history.py"]},"message":"fix compatibility list","epoch":1580947210,"epoch_utc":null},{"commit":"3d303a96b9f6d582b1e99a632da539c3bee4df7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 15:52:39 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 15:52:39 2020 -0800","stats":{"files_changed":5,"insertions":16,"deletions":2,"files":["tests/fixtures/centos-7.7/crontab-u.json","tests/fixtures/centos-7.7/{crontab2.out => crontab-u.out}","tests/fixtures/centos-7.7/crontab.json","tests/fixtures/ubuntu-18.04/crontab-u.json","tests/test_crontab_u.py"]},"message":"crontab bug fix and tests","epoch":1580946759,"epoch_utc":null},{"commit":"33c99d031d18e52a8ca85dfc1a8cba0acebfc3bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 15:12:59 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 15:12:59 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/crontab.py"]},"message":"fix line clobbering bug","epoch":1580944379,"epoch_utc":null},{"commit":"caf7e9f69a22f3c9b3d4624fd2238d6e54d932ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 15:11:51 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 15:11:51 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/crontab_u.py"]},"message":"fix line clobbering bug and add user field to shortcuts","epoch":1580944311,"epoch_utc":null},{"commit":"9449f1f5d5e7bc075549549758af5cc3a6c4524f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 14:44:49 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 14:44:49 2020 -0800","stats":{"files_changed":4,"insertions":9,"deletions":3,"files":["changelog.txt","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/fixtures/centos-7.7/crontab2.out"]},"message":"crontab bugfix: inserting header row was clobbering the first data row","epoch":1580942689,"epoch_utc":null},{"commit":"6bad164b5e2a5b7c7ce82c69b6c091fc079ab2fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 14:10:22 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 14:10:22 2020 -0800","stats":{"files_changed":1,"insertions":7,"deletions":9,"files":["jc/cli.py"]},"message":"simplify by removing unnecessary getattr calls","epoch":1580940622,"epoch_utc":null},{"commit":"bb5ba7ddb146821db2efe095b6de5ae5b72bb335","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 13:57:34 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 13:57:34 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/cli.py"]},"message":"add indent variable to helptext","epoch":1580939854,"epoch_utc":null},{"commit":"8b2e01d5404649e8f94c81ca3b5fa05fe8962220","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 13:50:12 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 13:50:12 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"doc update","epoch":1580939412,"epoch_utc":null},{"commit":"ff1159b1deb9b870382a6066166961902679b569","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 11:45:17 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 11:45:17 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"exit codes on error","epoch":1580931917,"epoch_utc":null},{"commit":"a2fd3202a0a3df336792f167c546ea3e53ea2332","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 11:34:33 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 11:34:33 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/pip_list.py","jc/parsers/pip_show.py"]},"message":"description formatting change","epoch":1580931273,"epoch_utc":null},{"commit":"7b53715b91787a8885d61ddc0079c7ee8f9348a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 11:08:58 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 11:08:58 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/crontab_u.py"]},"message":"change description","epoch":1580929738,"epoch_utc":null},{"commit":"e05fc0a5107b348af14ff4bea39d274939fab7dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 11:08:47 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 11:08:47 2020 -0800","stats":{"files_changed":1,"insertions":8,"deletions":8,"files":["jc/cli.py"]},"message":"change padding of helptext","epoch":1580929727,"epoch_utc":null},{"commit":"43604c33f654b8c19e8cce387ebbf31bd598b73b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 10:59:51 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 10:59:51 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]},"message":"doc update","epoch":1580929191,"epoch_utc":null},{"commit":"eb67c484ff2a9530b434cd6a90c160f6936e1de7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 10:58:26 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 10:58:26 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"add crontab-u to parsers list","epoch":1580929106,"epoch_utc":null},{"commit":"a7b7bdd46781d07e6e70d74a41a3944855fde5fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 10:55:08 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 10:55:08 2020 -0800","stats":{"files_changed":1,"insertions":94,"deletions":92,"files":["jc/cli.py"]},"message":"load parser modules 'just in time' so we don't need to load all modules at startup","epoch":1580928908,"epoch_utc":null},{"commit":"ab06989a18faf5378f1e73c7016ea02e1218ff9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:46:52 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 21:46:52 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["README.md"]},"message":"description updates","epoch":1580881612,"epoch_utc":null},{"commit":"657b722f947b6a0aa7e52a786e4c84f177e9a5c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:44:10 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 21:44:10 2020 -0800","stats":{"files_changed":4,"insertions":8,"deletions":8,"files":["README.md","changelog.txt","docs/parsers/ini.md","jc/parsers/ini.py"]},"message":"ini to INI","epoch":1580881450,"epoch_utc":null},{"commit":"dd2aecad2787186b3962723086bb7e13eff4874f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:37:07 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 21:37:07 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"description update","epoch":1580881027,"epoch_utc":null},{"commit":"c82c5c5c648384eb5a54205ba8590624a3ab4375","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:34:57 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 21:34:57 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["changelog.txt"]},"message":"changelog update","epoch":1580880897,"epoch_utc":null},{"commit":"a1761cd68f91e2668d8d7e2fa7774f6496408be6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:25:33 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 21:25:33 2020 -0800","stats":{"files_changed":3,"insertions":42,"deletions":0,"files":["tests/fixtures/centos-7.7/id.json","tests/fixtures/osx-10.14.6/id.json","tests/test_id.py"]},"message":"id tests","epoch":1580880333,"epoch_utc":null},{"commit":"d618a7f583629bb7a7fc0854e7349cab07e3e003","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:17:03 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 21:17:03 2020 -0800","stats":{"files_changed":4,"insertions":143,"deletions":9,"files":["README.md","docgen.sh","docs/parsers/id.md","jc/parsers/id.py"]},"message":"doc update","epoch":1580879823,"epoch_utc":null},{"commit":"831a42f66096f5efbbf0f6882970c328120f9c9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:12:32 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 21:12:32 2020 -0800","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["README.md"]},"message":"id formatting","epoch":1580879552,"epoch_utc":null},{"commit":"3b36022e5a1056a28a83494b1ab8fab209399c2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:09:42 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 21:09:42 2020 -0800","stats":{"files_changed":5,"insertions":250,"deletions":1,"files":["README.md","jc/cli.py","jc/parsers/id.py","tests/fixtures/centos-7.7/id.out","tests/fixtures/osx-10.14.6/id.out"]},"message":"add id parser","epoch":1580879382,"epoch_utc":null},{"commit":"d01dfa25f10f82cd201ae7b4c9cc18313773f8d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 15:22:36 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 15:22:36 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["changelog.txt"]},"message":"changelog updates","epoch":1580858556,"epoch_utc":null},{"commit":"395a99037b4816eb800b289f90372a9b8d7d36cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:36:03 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 14:36:03 2020 -0800","stats":{"files_changed":3,"insertions":89,"deletions":13,"files":["README.md","docs/parsers/history.md","jc/parsers/history.py"]},"message":"crontab-u and history doc updates","epoch":1580855763,"epoch_utc":null},{"commit":"025986c51d2d4869b17de63a7dd96efa2988e3c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:31:28 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 14:31:28 2020 -0800","stats":{"files_changed":3,"insertions":13,"deletions":3,"files":["jc/parsers/history.py","tests/fixtures/centos-7.7/history.json","tests/fixtures/ubuntu-18.04/history.json"]},"message":"change history 'line' to integer","epoch":1580855488,"epoch_utc":null},{"commit":"c56b83093ff05f55ef4643c1731cff61d4b9e8ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:19:33 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 14:19:33 2020 -0800","stats":{"files_changed":3,"insertions":202,"deletions":2,"files":["docgen.sh","docs/parsers/crontab.md","docs/parsers/crontab_u.md"]},"message":"doc update","epoch":1580854773,"epoch_utc":null},{"commit":"7c712a4133abd843d4da926e4c8d548abd1d6fa3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:18:14 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 14:18:14 2020 -0800","stats":{"files_changed":1,"insertions":52,"deletions":50,"files":["jc/parsers/crontab_u.py"]},"message":"doc update","epoch":1580854694,"epoch_utc":null},{"commit":"9a0cfe6dfa4888f435d35bd2d35126d031a556d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:18:01 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 14:18:01 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/crontab.py"]},"message":"minor formatting","epoch":1580854681,"epoch_utc":null},{"commit":"a116cdbcec1b27192dd0f9f4707629353edb3caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:11:34 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 14:11:34 2020 -0800","stats":{"files_changed":5,"insertions":29,"deletions":13,"files":["tests/fixtures/ubuntu-18.04/crontab-u.json",".../ubuntu-18.04/{crontab.out => crontab-u.out}","tests/fixtures/ubuntu-18.04/crontab.json","tests/test_crontab.py","tests/test_crontab_u.py"]},"message":"tests for crontab-u","epoch":1580854294,"epoch_utc":null},{"commit":"f2d616c98e049cdac5d667e63723f92110419a1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:02:27 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 14:02:27 2020 -0800","stats":{"files_changed":3,"insertions":272,"deletions":0,"files":["changelog.txt","jc/cli.py","jc/parsers/crontab_u.py"]},"message":"add crontab with user parser","epoch":1580853747,"epoch_utc":null},{"commit":"42cbd1777dbacc614d75f67f3f9156f72be46532","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 13:53:45 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 13:53:45 2020 -0800","stats":{"files_changed":2,"insertions":80,"deletions":0,"files":["tests/test_xml.py","tests/test_yaml.py"]},"message":"add xml and yaml tests","epoch":1580853225,"epoch_utc":null},{"commit":"ebf375aac0473249cfd212068f6e6e33cc42449a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 12:18:31 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 12:18:31 2020 -0800","stats":{"files_changed":1,"insertions":40,"deletions":0,"files":["tests/test_ini.py"]},"message":"add ini tests","epoch":1580847511,"epoch_utc":null},{"commit":"1f9050267eeb870c4c0f50000fc32985c4d8535b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 12:02:18 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 12:02:18 2020 -0800","stats":{"files_changed":12,"insertions":586,"deletions":0,"files":["tests/fixtures/generic/ini-iptelserver.ini","tests/fixtures/generic/ini-iptelserver.json","tests/fixtures/generic/ini-test.ini","tests/fixtures/generic/ini-test.json","tests/fixtures/generic/xml-cd_catalog.json","tests/fixtures/generic/xml-cd_catalog.xml","tests/fixtures/generic/xml-foodmenu.json","tests/fixtures/generic/xml-foodmenu.xml","tests/fixtures/generic/yaml-istio-sc.json","tests/fixtures/generic/yaml-istio-sc.yaml","tests/fixtures/generic/yaml-istio-sidecar.json","tests/fixtures/generic/yaml-istio-sidecar.yaml"]},"message":"add ini, xml, and yaml test files","epoch":1580846538,"epoch_utc":null},{"commit":"d7f9707a1521719ce051140b1a0b4ced7c5114c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 11:18:32 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 11:18:32 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/ini.py","jc/parsers/yaml.py"]},"message":"minor formatting","epoch":1580843912,"epoch_utc":null},{"commit":"ab589ee3ed09b9d5e09d8c046f3a64cd2bd14c98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 11:18:15 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 11:18:15 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/cli.py"]},"message":"add __version__ variable","epoch":1580843895,"epoch_utc":null},{"commit":"c84ec0361fc4c877c698378b28ff9e8b502793b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 22:25:30 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 22:25:30 2020 -0800","stats":{"files_changed":4,"insertions":105,"deletions":3,"files":["README.md","docgen.sh","docs/parsers/xml.md","jc/parsers/xml.py"]},"message":"xml example update","epoch":1580797530,"epoch_utc":null},{"commit":"47d2f8968a8a9b68fc9fff45985f5e69f1a5cc40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 22:21:40 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 22:21:40 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","changelog.txt"]},"message":"doc update","epoch":1580797300,"epoch_utc":null},{"commit":"019c480bcce7fe3821b75906fc673ce7bb1ffadc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 22:17:13 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 22:17:13 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"update acknowledgments","epoch":1580797033,"epoch_utc":null},{"commit":"547c6d3d5956984d3c4fb5c2a1b76a595752b467","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 22:13:06 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 22:13:06 2020 -0800","stats":{"files_changed":5,"insertions":172,"deletions":2,"files":["README.md","changelog.txt","jc/cli.py","jc/parsers/xml.py","setup.py"]},"message":"add xml parser","epoch":1580796786,"epoch_utc":null},{"commit":"b5ebf8b76afcd0e0190994048fe1f5b53f654451","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 21:41:53 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 21:41:53 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add ruamel.yaml ack","epoch":1580794913,"epoch_utc":null},{"commit":"c690e328f23a69f592dfaaa949b74ba2190ad376","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 21:38:21 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 21:38:21 2020 -0800","stats":{"files_changed":2,"insertions":102,"deletions":14,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"]},"message":"add examples","epoch":1580794701,"epoch_utc":null},{"commit":"cbb92c1a9517234806f1c54398a69645b6f43669","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 21:38:08 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 21:38:08 2020 -0800","stats":{"files_changed":1,"insertions":94,"deletions":0,"files":["README.md"]},"message":"add ini and yaml","epoch":1580794688,"epoch_utc":null},{"commit":"beb41997c9b3797e73a678ec1bcddcfb83b5ef0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 21:28:11 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 21:28:11 2020 -0800","stats":{"files_changed":3,"insertions":91,"deletions":2,"files":["docgen.sh","docs/parsers/ini.md","jc/parsers/ini.py"]},"message":"doc update","epoch":1580794091,"epoch_utc":null},{"commit":"755a6faf1110f150fe2261b81439b7d17a9b424e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 21:22:30 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 21:22:30 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":8,"files":["jc/parsers/yaml.py"]},"message":"clean up multi-document support","epoch":1580793750,"epoch_utc":null},{"commit":"021f8350a31a49ecc539f02576303600b222b49d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 19:11:36 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 19:11:36 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["changelog.txt"]},"message":"update doc","epoch":1580785896,"epoch_utc":null},{"commit":"76583dcd2f5ef32e58ca87149154563b07e061cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 19:07:31 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 19:07:31 2020 -0800","stats":{"files_changed":2,"insertions":113,"deletions":0,"files":["jc/cli.py","jc/parsers/ini.py"]},"message":"add ini file parser","epoch":1580785651,"epoch_utc":null},{"commit":"bf033239a706c42be3d7508c58a51c542f8a69b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 16:20:38 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 16:20:38 2020 -0800","stats":{"files_changed":2,"insertions":82,"deletions":7,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"]},"message":"doc update","epoch":1580775638,"epoch_utc":null},{"commit":"eb37fccd37fd625f701a14b6cfcf30e9f0bbff4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 16:17:29 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 16:17:29 2020 -0800","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/yaml.py"]},"message":"doc update","epoch":1580775449,"epoch_utc":null},{"commit":"d04ad453319fe45e302da87f970d2ac0806fae1a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 16:12:45 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 16:12:45 2020 -0800","stats":{"files_changed":3,"insertions":7,"deletions":2,"files":["changelog.txt","docgen.sh","setup.py"]},"message":"setup for 1.7.1","epoch":1580775165,"epoch_utc":null},{"commit":"db157b8ca7f7fa935676bafeaafdfd9818a89e6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 16:12:32 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 16:12:32 2020 -0800","stats":{"files_changed":2,"insertions":94,"deletions":2,"files":["jc/cli.py","jc/parsers/yaml.py"]},"message":"add yaml file parser","epoch":1580775152,"epoch_utc":null},{"commit":"68f277bb2081eb2cba14ffe7f0ee1ee0a982335b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 16:11:58 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 16:11:58 2020 -0800","stats":{"files_changed":33,"insertions":99,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add __version__","epoch":1580775118,"epoch_utc":null},{"commit":"4de8f42664379570392552796e34324abb39fdc2","merge":"6633d92 4f11855","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 12:11:13 2019 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Dec 17 12:11:13 2019 -0800","message":"Merge pull request #17 from kellyjonbrazil/dev\n\nDev v1.6.1","epoch":1576613473,"epoch_utc":null},{"commit":"4f118559356edc1da866e1bec80830e7a75a0b26","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 12:09:24 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 17 12:09:24 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["changelog.txt"]},"message":"update version info","epoch":1576613364,"epoch_utc":null},{"commit":"2b9a5fcc32f85295faa55410efcaf142c42bd167","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 12:05:40 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 17 12:05:40 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["setup.py"]},"message":"update version","epoch":1576613140,"epoch_utc":null},{"commit":"224948d1f23e01b7cd968820529579792f862f0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 11:44:43 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 17 11:44:43 2019 -0800","stats":{"files_changed":21,"insertions":428,"deletions":0,"files":["tests/fixtures/centos-7.7/pip-list.json","tests/fixtures/centos-7.7/pip-list.out","tests/fixtures/centos-7.7/pip-show.json","tests/fixtures/centos-7.7/pip-show.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.11.6/pip-list.json","tests/fixtures/osx-10.11.6/pip-list.out","tests/fixtures/osx-10.11.6/pip-show.json","tests/fixtures/osx-10.11.6/pip-show.out","tests/fixtures/osx-10.14.6/pip-list.json","tests/fixtures/osx-10.14.6/pip-list.out","tests/fixtures/osx-10.14.6/pip-show.json","tests/fixtures/osx-10.14.6/pip-show.out","tests/fixtures/ubuntu-18.04/pip-list-legacy.json","tests/fixtures/ubuntu-18.04/pip-list-legacy.out","tests/fixtures/ubuntu-18.04/pip-list.json","tests/fixtures/ubuntu-18.04/pip-list.out","tests/fixtures/ubuntu-18.04/pip-show.json","tests/fixtures/ubuntu-18.04/pip-show.out","tests/test_pip_list.py","tests/test_pip_show.py"]},"message":"pip list and pip show tests","epoch":1576611883,"epoch_utc":null},{"commit":"36f2812d5a7a94c412e098233c026d99d5205b60","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 10:58:00 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 17 10:58:00 2019 -0800","stats":{"files_changed":1,"insertions":15,"deletions":7,"files":["jc/parsers/pip_list.py"]},"message":"add support for legacy output","epoch":1576609080,"epoch_utc":null},{"commit":"be06aa2b31c057c56229e75c7fa70052b83053ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 10:09:19 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 17 10:09:19 2019 -0800","stats":{"files_changed":65,"insertions":70,"deletions":66,"files":["docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"update parse() Return info","epoch":1576606159,"epoch_utc":null},{"commit":"41f8e3aba268ca0cd09931a04368615425c1aec8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 09:56:09 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 17 09:56:09 2019 -0800","stats":{"files_changed":65,"insertions":67,"deletions":65,"files":["docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"update Return info","epoch":1576605369,"epoch_utc":null},{"commit":"093c0df8978ace842af5258f9aff72c63c6f843d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 09:38:50 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 17 09:38:50 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["README.md"]},"message":"schema info","epoch":1576604330,"epoch_utc":null},{"commit":"37afc7dc8ae30342d01f3f72e73646fa60bb5294","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 09:35:27 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 17 09:35:27 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["README.md"]},"message":"updte todo and compatibility","epoch":1576604127,"epoch_utc":null},{"commit":"efbf3549606fc77f8c16587ff04a0c316dfe5c00","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 09:24:08 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 17 09:24:08 2019 -0800","stats":{"files_changed":4,"insertions":126,"deletions":12,"files":["README.md","docgen.sh","docs/parsers/pip_show.md","jc/parsers/pip_show.py"]},"message":"doc update for pip show","epoch":1576603448,"epoch_utc":null},{"commit":"5e39fe0d8044787389d8f206f3c863d4bdf1e2ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 09:20:26 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 17 09:20:26 2019 -0800","stats":{"files_changed":1,"insertions":64,"deletions":5,"files":["jc/parsers/pip_show.py"]},"message":"pip show parser working","epoch":1576603226,"epoch_utc":null},{"commit":"47328dc65969f149c8f027286774ff0847c18add","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 19:09:14 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 19:09:14 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"]},"message":"add pip-show parser","epoch":1576552154,"epoch_utc":null},{"commit":"addeef50ba54f536855544937a6c98135ae5cd51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 19:07:51 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 19:07:51 2019 -0800","stats":{"files_changed":1,"insertions":84,"deletions":0,"files":["jc/parsers/pip_show.py"]},"message":"initial pip show parser add","epoch":1576552071,"epoch_utc":null},{"commit":"ad338cc5b50a178091c47cbea9a1db135a7fb678","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:58:33 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 18:58:33 2019 -0800","stats":{"files_changed":2,"insertions":56,"deletions":42,"files":["docs/parsers/crontab.md","jc/parsers/crontab.py"]},"message":"schema doc update","epoch":1576551513,"epoch_utc":null},{"commit":"202bc8201e31fd453c682265347b4e2ac2d41718","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:54:19 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 18:54:19 2019 -0800","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["README.md","docs/parsers/crontab.md","jc/parsers/crontab.py"]},"message":"doc update","epoch":1576551259,"epoch_utc":null},{"commit":"5ff99de405fbd8f79f9c2e301ac27184e0aba6fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:40:08 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 18:40:08 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add argument to parser info","epoch":1576550408,"epoch_utc":null},{"commit":"86ebe2cf9c6b336eacf217393c3c3c324ee29ec0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:36:13 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 18:36:13 2019 -0800","stats":{"files_changed":6,"insertions":205,"deletions":1,"files":["README.md","docgen.sh","docs/parsers/crontab.md","docs/parsers/pip_list.md","jc/cli.py","jc/parsers/pip_list.py"]},"message":"initial add of pip list parser","epoch":1576550173,"epoch_utc":null},{"commit":"facf0b399c608d33f6a454ee24fd49fc62471742","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:09:29 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 18:09:29 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/crontab.py"]},"message":"add osx to campatible","epoch":1576548569,"epoch_utc":null},{"commit":"33db7b0bcb0f24979cad6e173737d75c8ed301af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:09:00 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 18:09:00 2019 -0800","stats":{"files_changed":4,"insertions":57,"deletions":0,"files":["tests/fixtures/centos-7.7/crontab.json","tests/fixtures/ubuntu-18.04/crontab.json","tests/fixtures/ubuntu-18.04/crontab.out","tests/test_crontab.py"]},"message":"add crontab tests","epoch":1576548540,"epoch_utc":null},{"commit":"663d07bca1181024d9d08b940237c52197c91729","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 17:52:09 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 17:52:09 2019 -0800","stats":{"files_changed":2,"insertions":191,"deletions":0,"files":["docgen.sh","docs/parsers/crontab.md"]},"message":"add crontab","epoch":1576547529,"epoch_utc":null},{"commit":"ba04e4997fcb28adbee446f633c121f1585b9f2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 17:51:11 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 17:51:11 2019 -0800","stats":{"files_changed":1,"insertions":113,"deletions":4,"files":["jc/parsers/crontab.py"]},"message":"update docs","epoch":1576547471,"epoch_utc":null},{"commit":"c4fee1b658c91afa2abdd746af6c1b4697c44b35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 17:50:52 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 17:50:52 2019 -0800","stats":{"files_changed":1,"insertions":72,"deletions":1,"files":["README.md"]},"message":"add crontab parser","epoch":1576547452,"epoch_utc":null},{"commit":"99b92a15bbebc5568f4455f388f945613c4a2759","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 17:45:34 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 17:45:34 2019 -0800","stats":{"files_changed":2,"insertions":37,"deletions":14,"files":["jc/parsers/crontab.py","tests/fixtures/centos-7.7/crontab.out"]},"message":"support shortcut schedules","epoch":1576547134,"epoch_utc":null},{"commit":"b076ab5b57a6a59db096485e5ff4eb9f91bae8be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 17:01:53 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 17:01:53 2019 -0800","stats":{"files_changed":3,"insertions":177,"deletions":0,"files":["jc/cli.py","jc/parsers/crontab.py","tests/fixtures/centos-7.7/crontab.out"]},"message":"initial crontab parser","epoch":1576544513,"epoch_utc":null},{"commit":"687759f75d0e80e81746a84f051e55cfdc870447","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 14:31:21 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 14:31:21 2019 -0800","stats":{"files_changed":1,"insertions":31,"deletions":31,"files":["README.md"]},"message":"alphabetize du entry","epoch":1576535481,"epoch_utc":null},{"commit":"9eaac7f3af0e0851c2d091d94c9920faa8a0fdfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 14:30:06 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 14:30:06 2019 -0800","stats":{"files_changed":1,"insertions":32,"deletions":0,"files":["README.md"]},"message":"add du","epoch":1576535406,"epoch_utc":null},{"commit":"4c24e00cfc0748d98e220d08820b88fc156148db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 14:27:55 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 14:27:55 2019 -0800","stats":{"files_changed":5,"insertions":21738,"deletions":9,"files":["tests/fixtures/osx-10.11.6/du.json","tests/fixtures/osx-10.11.6/du.out","tests/fixtures/ubuntu-18.04/du.json","tests/fixtures/ubuntu-18.04/du.out","tests/test_du.py"]},"message":"add osx-11 and ubuntu tests","epoch":1576535275,"epoch_utc":null},{"commit":"beb17011b03e720078b0752e79a6a0f6123d1d3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 13:57:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 13:57:42 2019 -0800","stats":{"files_changed":6,"insertions":131,"deletions":2,"files":["changelog.txt","docgen.sh","docs/parsers/du.md","docs/parsers/uname.md","tests/fixtures/osx-10.14.6/du.json","tests/test_du.py"]},"message":"du tests and docs","epoch":1576533462,"epoch_utc":null},{"commit":"e882bf55bcd1d3526423ed1ccc61fb4819395cce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 13:52:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 13:52:42 2019 -0800","stats":{"files_changed":7,"insertions":8755,"deletions":0,"files":["changelog.txt","jc/cli.py","jc/parsers/du.py","tests/fixtures/centos-7.7/du.json","tests/fixtures/centos-7.7/du.out","tests/fixtures/osx-10.14.6/du.out","tests/test_du.py"]},"message":"initial add du parser","epoch":1576533162,"epoch_utc":null},{"commit":"3a3016adb6d5b9e35f8a39908bfcdc65997cc5c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 11:52:18 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 11:52:18 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add parser_count to about","epoch":1576525938,"epoch_utc":null},{"commit":"1e8b68153ade8a1e3d2b4db36e0c402bbc887079","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 11:12:45 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 11:12:45 2019 -0800","stats":{"files_changed":4,"insertions":27,"deletions":1,"files":["tests/fixtures/osx-10.11.6/uname-a.json","tests/fixtures/osx-10.14.6/uname-a.json","tests/fixtures/osx-10.14.6/uname-a.out","tests/test_uname.py"]},"message":"add osx uname tests","epoch":1576523565,"epoch_utc":null},{"commit":"9335cf65fbb87e3a0a7da0c4e9bcd251cb829de2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 11:02:02 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 11:02:02 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"add uname osx support","epoch":1576522922,"epoch_utc":null},{"commit":"83f35256aee71f2619ddf880e2b8f2d6c63280bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 11:01:43 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 11:01:43 2019 -0800","stats":{"files_changed":1,"insertions":30,"deletions":19,"files":["jc/parsers/uname.py"]},"message":"add OSX support","epoch":1576522903,"epoch_utc":null},{"commit":"428333394817e4461a4eb095f4d6d128305a5f98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 10:03:47 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 10:03:47 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"version bump","epoch":1576519427,"epoch_utc":null},{"commit":"b8f902796b7fb23a41355b23f7ce235bd18edc58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 10:03:34 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 10:03:34 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["changelog.txt"]},"message":"shorten changelog","epoch":1576519414,"epoch_utc":null},{"commit":"8f99ab295cd15718b98781707def97539ad41920","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 09:08:47 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 09:08:47 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"info update","epoch":1576516127,"epoch_utc":null},{"commit":"882310e268e2022f0cd6da75f80f5356529cd05c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 09:04:52 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 09:04:52 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add name to about parser info","epoch":1576515892,"epoch_utc":null},{"commit":"56bce9521409d1850f75a3ae2be1363e765dd9dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 09:00:16 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 09:00:16 2019 -0800","stats":{"files_changed":1,"insertions":6,"deletions":10,"files":["jc/cli.py"]},"message":"about code cleanup","epoch":1576515616,"epoch_utc":null},{"commit":"c13ecbec2952c5d6765397f645e90653a4fd9d05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 08:59:41 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 08:59:41 2019 -0800","stats":{"files_changed":28,"insertions":2,"deletions":28,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"clean up parser info","epoch":1576515581,"epoch_utc":null},{"commit":"0ffaaa6e73649d1f657af569ac0b912f166e8493","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 08:18:37 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 08:18:37 2019 -0800","stats":{"files_changed":1,"insertions":7,"deletions":9,"files":["jc/cli.py"]},"message":"clean up about code","epoch":1576513117,"epoch_utc":null},{"commit":"75eff3adea097157c005b2201e353a741241ce8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:56:40 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Dec 14 23:56:40 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/utils.py"]},"message":"remove whitespace","epoch":1576396600,"epoch_utc":null},{"commit":"bf5f80476cff642ae672187ea59d40bdb602101e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:56:22 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Dec 14 23:56:22 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["jc/cli.py"]},"message":"use real parser name in error message","epoch":1576396582,"epoch_utc":null},{"commit":"9aaf0fbb2f838c0af1e7f18fdb19104f9f5d3d39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:35:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Dec 14 23:35:42 2019 -0800","stats":{"files_changed":29,"insertions":146,"deletions":1,"files":["changelog.txt","docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md"]},"message":"doc updates","epoch":1576395342,"epoch_utc":null},{"commit":"8f01ef79532743573632d716ceea41d5ea752c88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:27:56 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Dec 14 23:27:56 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add -a option info","epoch":1576394876,"epoch_utc":null},{"commit":"da1d087452da02631296b1b3dc9ee10d4b7f764b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:21:47 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Dec 14 23:21:47 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add parser version info","epoch":1576394507,"epoch_utc":null},{"commit":"e16bc7e882a27a1d5a4bd7cf9972208e6997f96f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:15:15 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Dec 14 23:15:15 2019 -0800","stats":{"files_changed":29,"insertions":82,"deletions":17,"files":["jc/cli.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add about information to parsers","epoch":1576394115,"epoch_utc":null},{"commit":"fe9bdd4811216257c05b16d6d61897929669d434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 13 20:01:51 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 13 20:01:51 2019 -0800","stats":{"files_changed":31,"insertions":384,"deletions":219,"files":["changelog.txt","jc/cli.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add info class","epoch":1576296111,"epoch_utc":null},{"commit":"17b6f3f6d6c398a52166849088a793d0e3b328b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 13 14:36:21 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 13 14:36:21 2019 -0800","stats":{"files_changed":3,"insertions":26,"deletions":0,"files":["tests/fixtures/osx-10.11.6/uptime.json","tests/fixtures/osx-10.14.6/uptime.json","tests/test_uptime.py"]},"message":"add osx tests","epoch":1576276581,"epoch_utc":null},{"commit":"90a6baf0ee3b8b27476badada4e590e22144f810","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 13 14:30:12 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 13 14:30:12 2019 -0800","stats":{"files_changed":6,"insertions":52,"deletions":0,"files":["tests/fixtures/osx-10.11.6/ps-axu.json","tests/fixtures/osx-10.11.6/ps-ef.json","tests/fixtures/osx-10.11.6/w.json","tests/fixtures/osx-10.14.6/w.json","tests/test_ps.py","tests/test_w.py"]},"message":"add osx tests","epoch":1576276212,"epoch_utc":null},{"commit":"f0e73d0e72d540292f41fff51652932c4e8b0315","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 13 10:50:01 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 13 10:50:01 2019 -0800","stats":{"files_changed":8,"insertions":444,"deletions":0,"files":["tests/fixtures/osx-10.11.6/ps-axu.out","tests/fixtures/osx-10.11.6/ps-ef.out","tests/fixtures/osx-10.11.6/uname-a.out","tests/fixtures/osx-10.11.6/uptime.out","tests/fixtures/osx-10.11.6/w.out","tests/fixtures/osx-10.14.6/uname-a.out","tests/fixtures/osx-10.14.6/uptime.out","tests/fixtures/osx-10.14.6/w.out"]},"message":"add osx tests","epoch":1576263001,"epoch_utc":null},{"commit":"a762882f1ccea6789ce7813b313f3242175b5bd6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 13 08:58:23 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 13 08:58:23 2019 -0800","stats":{"files_changed":4,"insertions":2,"deletions":88,"files":["tests/fixtures/osx-10.14.6/ps-axu.json","tests/fixtures/osx-10.14.6/ps-axu.out","tests/fixtures/osx-10.14.6/ps-ef.json","tests/fixtures/osx-10.14.6/ps-ef.out"]},"message":"fixture updates","epoch":1576256303,"epoch_utc":null},{"commit":"4c1bc5923658bf463805ea33ec8d170a817909ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 17:05:40 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 17:05:40 2019 -0800","stats":{"files_changed":3,"insertions":4,"deletions":3,"files":["docs/parsers/mount.md","docs/parsers/ps.md","docs/parsers/stat.md"]},"message":"doc updates","epoch":1576199140,"epoch_utc":null},{"commit":"f2962083f80503f82c3eddf470674c776e616b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 17:04:40 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 17:04:40 2019 -0800","stats":{"files_changed":7,"insertions":93,"deletions":17,"files":["changelog.txt","jc/parsers/mount.py","tests/fixtures/osx-10.14.6/mount.json","tests/fixtures/osx-10.14.6/mount.out","tests/fixtures/osx-10.14.6/mount2.json","tests/fixtures/osx-10.14.6/mount2.out","tests/test_mount.py"]},"message":"add osx support for mount parser","epoch":1576199080,"epoch_utc":null},{"commit":"a0b22a5bcfa0777895243088b2c0f3bb5b758775","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 16:14:46 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 16:14:46 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"help text formatting","epoch":1576196086,"epoch_utc":null},{"commit":"dcf393354cd57683aaeecbed7b884d19b0fe94d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 16:10:30 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 16:10:30 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"]},"message":"doc fix","epoch":1576195830,"epoch_utc":null},{"commit":"5f771656e3fdd703d449b2817faa4faeff1cd879","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 16:07:52 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 16:07:52 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/route.py"]},"message":"use universal parser","epoch":1576195672,"epoch_utc":null},{"commit":"f376aab79328a211a127f4f818e7007232f1fae3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:59:36 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 15:59:36 2019 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/universal.py"]},"message":"doc update","epoch":1576195176,"epoch_utc":null},{"commit":"3c96464217a740571e16c74ad41c1d92f7585547","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:59:24 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 15:59:24 2019 -0800","stats":{"files_changed":6,"insertions":886,"deletions":13,"files":["jc/parsers/ps.py","tests/fixtures/osx-10.14.6/ps-axu.json","tests/fixtures/osx-10.14.6/ps-axu.out","tests/fixtures/osx-10.14.6/ps-ef.json","tests/fixtures/osx-10.14.6/ps-ef.out","tests/test_ps.py"]},"message":"osx fixes and tests","epoch":1576195164,"epoch_utc":null},{"commit":"c9892833a16bb63f78537717be65670eb65a87b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:58:40 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 15:58:40 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/mount.py"]},"message":"formatting change","epoch":1576195120,"epoch_utc":null},{"commit":"127c98affc7b122f0ced13852850214b9e07677e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:58:24 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 15:58:24 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update","epoch":1576195104,"epoch_utc":null},{"commit":"8687a772f53ecaf1a20464429060b94bbf660fe7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:33:34 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 15:33:34 2019 -0800","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["jc/parsers/lsof.py"]},"message":"use universal parser","epoch":1576193614,"epoch_utc":null},{"commit":"b1162b14d42643fd53dbbe3f89ba042f030d9254","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:22:21 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 15:22:21 2019 -0800","stats":{"files_changed":1,"insertions":3,"deletions":6,"files":["jc/parsers/lsmod.py"]},"message":"use universal parser","epoch":1576192941,"epoch_utc":null},{"commit":"8a8ee3570733c0c06b8cf53eb005e53ac2f9170f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:01:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 15:01:42 2019 -0800","stats":{"files_changed":1,"insertions":8,"deletions":60,"files":["jc/parsers/lsblk.py"]},"message":"use universal parser","epoch":1576191702,"epoch_utc":null},{"commit":"5e109a3665cf0c286ac9dcbe2a452348a14b90ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 14:12:36 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 14:12:36 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/fixtures/create_fixtures.sh"]},"message":"add du","epoch":1576188756,"epoch_utc":null},{"commit":"11db478430515ef3e1020482792f23d1c40ca32b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 14:12:21 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 14:12:21 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"update changelog","epoch":1576188741,"epoch_utc":null},{"commit":"a85377014d9f93fcb9840715129b0e09d48d8584","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 14:11:59 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 14:11:59 2019 -0800","stats":{"files_changed":1,"insertions":5,"deletions":11,"files":["jc/parsers/free.py"]},"message":"use universal parser","epoch":1576188719,"epoch_utc":null},{"commit":"3aea86234d33160f5b3139cbfc2f4f032f655f3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 11:23:49 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 11:23:49 2019 -0800","stats":{"files_changed":6,"insertions":70,"deletions":61,"files":["tests/fixtures/osx-10.11.6/ls-al.json","tests/fixtures/osx-10.11.6/ls-al.out","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.11.6/ls-alh.out","tests/fixtures/osx-10.11.6/ls.json","tests/fixtures/osx-10.11.6/ls.out"]},"message":"fix osx-10.11.6 tests","epoch":1576178629,"epoch_utc":null},{"commit":"916ec6ed6b858a8a496e4026b9bab5505abca2ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 10:11:24 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 10:11:24 2019 -0800","stats":{"files_changed":13,"insertions":193,"deletions":61,"files":["tests/fixtures/osx-10.11.6/ls-al.json","tests/fixtures/osx-10.11.6/ls-al.out","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.11.6/ls-alh.out","tests/fixtures/osx-10.11.6/ls.json","tests/fixtures/osx-10.11.6/ls.out","tests/fixtures/osx-10.14.6/ls-al.json","tests/fixtures/osx-10.14.6/ls-al.out","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.out","tests/fixtures/osx-10.14.6/ls.json","tests/fixtures/osx-10.14.6/ls.out","tests/test_ls.py"]},"message":"fix osx ls tests","epoch":1576174284,"epoch_utc":null},{"commit":"9dca6ba5393d8840ad7fc9509273715a71955bd1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:47:14 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 09:47:14 2019 -0800","stats":{"files_changed":55,"insertions":120,"deletions":6,"files":["docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"doc formatting change","epoch":1576172834,"epoch_utc":null},{"commit":"0ebb89f561e1ced2e7f61ae19290e176c8a98bf2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:41:56 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 09:41:56 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["docs/parsers/arp.md"]},"message":"doc update","epoch":1576172516,"epoch_utc":null},{"commit":"e237867e242211ba37206911ebf1b35c97b417fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:41:25 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 09:41:25 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/arp.py"]},"message":"doc formatting","epoch":1576172485,"epoch_utc":null},{"commit":"78fa44fd9ac9790313de6f461eb46d9b8d6159d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:35:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 09:35:42 2019 -0800","stats":{"files_changed":24,"insertions":75,"deletions":3,"files":["docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add compatibility to docs","epoch":1576172142,"epoch_utc":null},{"commit":"d615fa3b933ccd284bd8ee92baf5dfa6264507c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:21:20 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 09:21:20 2019 -0800","stats":{"files_changed":30,"insertions":91,"deletions":1,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py"]},"message":"add compatibility to docs","epoch":1576171280,"epoch_utc":null},{"commit":"ce134dc332dd9175e0d1823a4959bed427a3ddce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:09:57 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 09:09:57 2019 -0800","stats":{"files_changed":7,"insertions":115,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-al.json","tests/fixtures/osx-10.14.6/ls-al.out","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.out","tests/fixtures/osx-10.14.6/ls.json","tests/fixtures/osx-10.14.6/ls.out","tests/test_ls.py"]},"message":"Add OSX tests for ls","epoch":1576170597,"epoch_utc":null},{"commit":"a56e4dc752a01635fbd9fc31e21d390bbd629084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 17:27:48 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 11 17:27:48 2019 -0800","stats":{"files_changed":3,"insertions":28,"deletions":3,"files":["changelog.txt","jc/parsers/arp.py","jc/parsers/universal.py"]},"message":"use universal simple table parser","epoch":1576114068,"epoch_utc":null},{"commit":"d221b4aa29e80dda2b591059f4d64c416bff0a17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 17:19:38 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 11 17:19:38 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update","epoch":1576113578,"epoch_utc":null},{"commit":"d2cba6ad2f1f1cd35aa174239584a0291abb8e37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 17:18:21 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 11 17:18:21 2019 -0800","stats":{"files_changed":3,"insertions":9,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py"]},"message":"add compatibility info","epoch":1576113501,"epoch_utc":null},{"commit":"84b3c30b525ddf1f74eb7fd833050a0ec69621dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 17:18:04 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 11 17:18:04 2019 -0800","stats":{"files_changed":21,"insertions":254,"deletions":2,"files":["tests/fixtures/osx-10.11.6/df-h.json","tests/fixtures/osx-10.11.6/df-h.out","tests/fixtures/osx-10.11.6/df.json","tests/fixtures/osx-10.11.6/df.out","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-aaaa.out","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig-x.out","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.11.6/dig.out","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/osx-10.14.6/df-h.out","tests/fixtures/osx-10.14.6/df.json","tests/fixtures/osx-10.14.6/df.out","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-aaaa.out","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig-x.out","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/osx-10.14.6/dig.out","tests/test_df.py"]},"message":"add osx tests","epoch":1576113484,"epoch_utc":null},{"commit":"68eeec19a812b735627763bb7d7e2a58b72f7504","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 16:39:30 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 11 16:39:30 2019 -0800","stats":{"files_changed":3,"insertions":30,"deletions":25,"files":["README.md","docs/parsers/df.md","jc/parsers/df.py"]},"message":"doc update","epoch":1576111170,"epoch_utc":null},{"commit":"c6d1528a2ed302ea82828b733a98db415be83708","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 16:37:13 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 11 16:37:13 2019 -0800","stats":{"files_changed":4,"insertions":19,"deletions":8,"files":["jc/parsers/df.py","jc/parsers/universal.py","tests/fixtures/centos-7.7/df.json","tests/fixtures/ubuntu-18.04/df.json"]},"message":"use _ instead of -","epoch":1576111033,"epoch_utc":null},{"commit":"50a6b256b8a0936299f562c208ede6187feeb9a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 9 14:01:47 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 9 14:01:47 2019 -0800","stats":{"files_changed":1,"insertions":83,"deletions":0,"files":["jc/parsers/universal.py"]},"message":"new universal parsers to limit code duplication","epoch":1575928907,"epoch_utc":null},{"commit":"bbba1fe477014d0b7f370ce46ed821121be81a8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 9 14:01:29 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 9 14:01:29 2019 -0800","stats":{"files_changed":1,"insertions":38,"deletions":19,"files":["jc/parsers/df.py"]},"message":"update df to use universal sparse table parser for osx compatibility","epoch":1575928889,"epoch_utc":null},{"commit":"46b827da6b438be73fab168c3f05298483b141e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 13:22:51 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 6 13:22:51 2019 -0800","stats":{"files_changed":7,"insertions":75,"deletions":4,"files":["changelog.txt","jc/parsers/arp.py","tests/fixtures/osx-10.11.6/arp-a.json","tests/fixtures/osx-10.11.6/arp-a.out","tests/fixtures/osx-10.14.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a.out","tests/test_arp.py"]},"message":"add osx compatibility","epoch":1575667371,"epoch_utc":null},{"commit":"5e8c28a30a283b6ef525e9e78d3ef2a0e1526927","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 11:47:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 6 11:47:42 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"]},"message":"comment fix","epoch":1575661662,"epoch_utc":null},{"commit":"e5d39031645ac897e0c0297f514ee62efe02f5f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 11:46:09 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 6 11:46:09 2019 -0800","stats":{"files_changed":1,"insertions":38,"deletions":17,"files":["docs/parsers/ifconfig.md"]},"message":"update ifconfig doc","epoch":1575661569,"epoch_utc":null},{"commit":"23975c9c9e1dd9d3e9fd7c05d231a86d646be048","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 11:44:57 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 6 11:44:57 2019 -0800","stats":{"files_changed":10,"insertions":132,"deletions":45,"files":["README.md","changelog.txt","jc/parsers/ifconfig.py","tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig2.json","tests/fixtures/osx-10.14.6/ifconfig.json","tests/fixtures/osx-10.14.6/ifconfig2.json","tests/fixtures/ubuntu-18.04/ifconfig.json","tests/test_ifconfig.py"]},"message":"fixup osx subnet mask and convert state to an array","epoch":1575661497,"epoch_utc":null},{"commit":"1e0dab8355e6fcb0ecde85270d4daac6ad93875b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 10:53:49 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 6 10:53:49 2019 -0800","stats":{"files_changed":10,"insertions":272,"deletions":2,"files":["tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.out","tests/fixtures/osx-10.11.6/ifconfig2.json","tests/fixtures/osx-10.11.6/ifconfig2.out","tests/fixtures/osx-10.14.6/ifconfig.json","tests/fixtures/osx-10.14.6/ifconfig.out","tests/fixtures/osx-10.14.6/ifconfig2.json","tests/fixtures/osx-10.14.6/ifconfig2.out","tests/fixtures/ubuntu-18.04/ifconfig.json"]},"message":"ifconfig fixture updates","epoch":1575658429,"epoch_utc":null},{"commit":"5f4c10ffd5a9cbe4e5e3d2b9adc34f36492eaf46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 10:39:11 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 6 10:39:11 2019 -0800","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["README.md","changelog.txt"]},"message":"doc update","epoch":1575657551,"epoch_utc":null},{"commit":"6f3d2b4b566b963fbf38572c587e8bd4e18881dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 10:30:01 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 6 10:30:01 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"require ifconfig-parser v0.0.5 for mac and bytes support","epoch":1575657001,"epoch_utc":null},{"commit":"fea8ace8446b64abe9e61a028951bc4e6df9f9c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 10:27:11 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 6 10:27:11 2019 -0800","stats":{"files_changed":2,"insertions":20,"deletions":6,"files":["README.md","jc/parsers/ifconfig.py"]},"message":"add OSX compatibility","epoch":1575656831,"epoch_utc":null},{"commit":"6633d9262c936217d8e90e64505c66b006cdab56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Nov 30 13:52:24 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Nov 30 13:52:24 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["_config.yml"]},"message":"Set theme jekyll-theme-cayman","epoch":1575150744,"epoch_utc":null},{"commit":"7d54137140e6d0515bc23c131a097af5c70c3379","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 28 11:51:54 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 28 11:51:54 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"link update","epoch":1574970714,"epoch_utc":null},{"commit":"2fcda6f2480ae6bd5428a0147c19f9af527391b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 25 18:34:21 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 25 18:34:21 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add motivation to readme","epoch":1574735661,"epoch_utc":null},{"commit":"9c1b8bacf9a59a86feb2a91eb44919e800491d1e","merge":"d192745 4867655","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 11:55:06 2019 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Nov 17 11:55:06 2019 -0800","message":"Merge pull request #16 from kellyjonbrazil/dev\n\nDev v1.5.1","epoch":1574020506,"epoch_utc":null},{"commit":"4867655eb297b1da7a55e0d3a24c7ed7c8af55c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 11:49:36 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Nov 17 11:49:36 2019 -0800","stats":{"files_changed":6,"insertions":172,"deletions":0,"files":[".../centos-7.7/iptables-filter-line-numbers.json",".../centos-7.7/iptables-filter-line-numbers.out","tests/fixtures/create_fixtures.sh",".../ubuntu-18.04/iptables-filter-line-numbers.json",".../ubuntu-18.04/iptables-filter-line-numbers.out","tests/test_iptables.py"]},"message":"add line-numbers tests","epoch":1574020176,"epoch_utc":null},{"commit":"47410d1a95406b0960aac705e7cfe925fea3172c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 11:05:46 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Nov 17 11:05:46 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["changelog.txt","setup.py"]},"message":"version bump","epoch":1574017546,"epoch_utc":null},{"commit":"5fa49f5e672fc6f8dc18fb4b1761c98b81362649","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 11:00:16 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Nov 17 11:00:16 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update","epoch":1574017216,"epoch_utc":null},{"commit":"36c53827fab6ac38c0010250ec387db40fdeecfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 10:56:55 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Nov 17 10:56:55 2019 -0800","stats":{"files_changed":19,"insertions":1316,"deletions":308,"files":["tests/fixtures/centos-7.7/systemctl-ls.json","tests/fixtures/centos-7.7/systemctl-ls.out","tests/fixtures/centos-7.7/systemctl-luf.json","tests/fixtures/centos-7.7/systemctl-luf.out","tests/fixtures/centos-7.7/systemctl.json","tests/fixtures/centos-7.7/systemctl.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/systemctl-lj.json","tests/fixtures/ubuntu-18.04/systemctl-lj.out","tests/fixtures/ubuntu-18.04/systemctl-ls.json","tests/fixtures/ubuntu-18.04/systemctl-ls.out","tests/fixtures/ubuntu-18.04/systemctl-luf.json","tests/fixtures/ubuntu-18.04/systemctl-luf.out","tests/fixtures/ubuntu-18.04/systemctl.json","tests/fixtures/ubuntu-18.04/systemctl.out","tests/test_systemctl.py","tests/test_systemctl_lj.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py"]},"message":"add systemctl tests","epoch":1574017015,"epoch_utc":null},{"commit":"51631aef5b1b6fdeff4ab543510a9f9e15a0c2c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 10:31:58 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Nov 17 10:31:58 2019 -0800","stats":{"files_changed":5,"insertions":358,"deletions":0,"files":["tests/fixtures/centos-7.7/systemctl.json","tests/fixtures/centos-7.7/systemctl.out","tests/fixtures/ubuntu-18.04/systemctl.json","tests/fixtures/ubuntu-18.04/systemctl.out","tests/test_systemctl.py"]},"message":"add systemctl tests","epoch":1574015518,"epoch_utc":null},{"commit":"a0298ac8a39093620b6859c909a78d11ab4a8e56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 10:26:48 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Nov 17 10:26:48 2019 -0800","stats":{"files_changed":5,"insertions":55,"deletions":0,"files":["tests/fixtures/centos-7.7/fstab.json","tests/fixtures/centos-7.7/fstab.out","tests/fixtures/ubuntu-18.04/fstab.json","tests/fixtures/ubuntu-18.04/fstab.out","tests/test_fstab.py"]},"message":"add fstab tests","epoch":1574015208,"epoch_utc":null},{"commit":"98c0188821ebaa71c5661f2e095cf464bec695f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:27:51 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 19:27:51 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/systemctl_ls.md","jc/parsers/systemctl_ls.py"]},"message":"formatting fix","epoch":1573874871,"epoch_utc":null},{"commit":"ab1dabe3e42997825707006b63cc0c03d28470d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:26:22 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 19:26:22 2019 -0800","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py"]},"message":"doc update","epoch":1573874782,"epoch_utc":null},{"commit":"94bdb11fdf0e16d89769046d317643334ef1acdd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:24:32 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 19:24:32 2019 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"]},"message":"remove systemctl from TODO","epoch":1573874672,"epoch_utc":null},{"commit":"b6727d68bab66164a3834b240ae868062aad9371","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:18:31 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 19:18:31 2019 -0800","stats":{"files_changed":1,"insertions":68,"deletions":0,"files":["README.md"]},"message":"add systemctl parsers","epoch":1573874311,"epoch_utc":null},{"commit":"89bad7fc2b4023b10b6eeb7ff1f8f18b71731cb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:13:53 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 19:13:53 2019 -0800","stats":{"files_changed":5,"insertions":1,"deletions":191,"files":["changelog.txt","docgen.sh","docs/parsers/systemctl_lm.md","jc/cli.py","jc/parsers/systemctl_lm.py"]},"message":"remove systemctl list-machines parser","epoch":1573874033,"epoch_utc":null},{"commit":"c0b8b810a2616e77973c1223f9c39329112337ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:07:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 19:07:42 2019 -0800","stats":{"files_changed":5,"insertions":306,"deletions":0,"files":["docgen.sh","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_lm.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md"]},"message":"add systemctl list parsers","epoch":1573873662,"epoch_utc":null},{"commit":"31eb65acd18b6d9163de900dbe48807a41a23785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:05:49 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 19:05:49 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_lm.py"]},"message":"doc fix","epoch":1573873549,"epoch_utc":null},{"commit":"513bbeb4649c011476930e1d1bf739ff06c2d66f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:02:57 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 19:02:57 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/systemctl_lj.py"]},"message":"add break on footer condition","epoch":1573873377,"epoch_utc":null},{"commit":"3a52fb725a0e56b52a0ea430266400b268360737","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 18:58:17 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 18:58:17 2019 -0800","stats":{"files_changed":2,"insertions":55,"deletions":29,"files":["jc/cli.py","jc/parsers/systemctl_lj.py"]},"message":"add systemctl list-jobs parser","epoch":1573873097,"epoch_utc":null},{"commit":"5affd444999de88b9bff7b49d790913540f97cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 18:36:12 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 18:36:12 2019 -0800","stats":{"files_changed":6,"insertions":342,"deletions":24,"files":["jc/cli.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_lm.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py"]},"message":"add systemctl_lj, lm, ls, and luf","epoch":1573871772,"epoch_utc":null},{"commit":"5dbc6e806c5d05bfa1f7e2156ed2573341eb23c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 12:28:28 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 12:28:28 2019 -0800","stats":{"files_changed":2,"insertions":142,"deletions":29,"files":["jc/cli.py","jc/parsers/systemctl_luf.py"]},"message":"add systemctl_luf parser","epoch":1573849708,"epoch_utc":null},{"commit":"59ae31f3f342c9337037aac4630310c9b9eb8287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 11:58:17 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 11:58:17 2019 -0800","stats":{"files_changed":6,"insertions":219,"deletions":0,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/systemctl.md","jc/cli.py","jc/parsers/systemctl.py"]},"message":"add systemctl parser","epoch":1573847897,"epoch_utc":null},{"commit":"230e921c2e8d931ea8a6abdf81215dbfc968b41c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 10:36:58 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 10:36:58 2019 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"]},"message":"remove fstab from TODO","epoch":1573843018,"epoch_utc":null},{"commit":"a7c3d88b08ab90b719035cb15d78afe708235742","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 10:01:29 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 10:01:29 2019 -0800","stats":{"files_changed":3,"insertions":136,"deletions":0,"files":["docgen.sh","docs/parsers/fstab.md","jc/parsers/fstab.py"]},"message":"update example and docs","epoch":1573840889,"epoch_utc":null},{"commit":"9b453bcb84dd9f2f566955eda1ab35c863b3e8a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 09:57:25 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 09:57:25 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":13,"files":["jc/parsers/fstab.py"]},"message":"remove commented code block","epoch":1573840645,"epoch_utc":null},{"commit":"ce43c782f601fc12267fa22279e8e0142ecc3a7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 09:32:12 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 09:32:12 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"fstab update","epoch":1573839132,"epoch_utc":null},{"commit":"cb16faaf4d1700379d53053fe06824fd03404f87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 09:31:28 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 09:31:28 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"helptext update","epoch":1573839088,"epoch_utc":null},{"commit":"3f1d3ff6d85422536e0adfb6433fd3ec0399ebe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 09:29:54 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 09:29:54 2019 -0800","stats":{"files_changed":2,"insertions":73,"deletions":6,"files":["README.md","jc/parsers/fstab.py"]},"message":"add examples","epoch":1573838994,"epoch_utc":null},{"commit":"6f67eecd5ed46f8a692ff5dd607a2395a5c838ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 09:22:07 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 09:22:07 2019 -0800","stats":{"files_changed":2,"insertions":108,"deletions":0,"files":["jc/cli.py","jc/parsers/fstab.py"]},"message":"add fstab parser","epoch":1573838527,"epoch_utc":null},{"commit":"e75c819190634f0a9048942b39eda691831829ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 08:51:53 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 08:51:53 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"changelog update","epoch":1573836713,"epoch_utc":null},{"commit":"601e68d104dd43940acadaa574dfd9b5117b0476","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 08:40:13 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 08:40:13 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/hosts.md","jc/parsers/hosts.py"]},"message":"doc update","epoch":1573836013,"epoch_utc":null},{"commit":"8285ecfd1e7810102cdbc399398a16f999c841ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 08:40:01 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 08:40:01 2019 -0800","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["tests/fixtures/centos-7.7/hosts.out","tests/fixtures/ubuntu-18.04/hosts.out"]},"message":"enhance test file with comments","epoch":1573836001,"epoch_utc":null},{"commit":"8726de902e527b95a12afd79a53d533cc176703d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 22:04:59 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 22:04:59 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"add hosts parser","epoch":1573797899,"epoch_utc":null},{"commit":"4133585274b0e7faa0255a911468248eb390d673","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 22:04:48 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 22:04:48 2019 -0800","stats":{"files_changed":5,"insertions":53,"deletions":0,"files":["tests/fixtures/centos-7.7/hosts.json","tests/fixtures/centos-7.7/hosts.out","tests/fixtures/ubuntu-18.04/hosts.json","tests/fixtures/ubuntu-18.04/hosts.out","tests/test_hosts.py"]},"message":"add hosts tests","epoch":1573797888,"epoch_utc":null},{"commit":"ad913b141721655a72a7b2a6ad60037e5acd5f9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:59:06 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 21:59:06 2019 -0800","stats":{"files_changed":4,"insertions":148,"deletions":2,"files":["README.md","docgen.sh","docs/parsers/hosts.md","jc/parsers/hosts.py"]},"message":"add hosts docs","epoch":1573797546,"epoch_utc":null},{"commit":"7113e5a844fc0304f62f4afe65b5cbc816f75372","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:55:08 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 21:55:08 2019 -0800","stats":{"files_changed":1,"insertions":10,"deletions":0,"files":["jc/parsers/hosts.py"]},"message":"filter out comments at the end of the line","epoch":1573797308,"epoch_utc":null},{"commit":"a3a8369dc0e7227072f595cef1e57d471eff4d2f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:36:02 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 21:36:02 2019 -0800","stats":{"files_changed":1,"insertions":51,"deletions":9,"files":["jc/parsers/hosts.py"]},"message":"add docs","epoch":1573796162,"epoch_utc":null},{"commit":"64016b8ef049d5d4f02b4371f5cc9632c19bcaa2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:31:25 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 21:31:25 2019 -0800","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["jc/cli.py","jc/parsers/hosts.py"]},"message":"add hosts parser","epoch":1573795885,"epoch_utc":null},{"commit":"1cb49d60c84054b0446f299f6b4bab7d102101c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:21:15 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 21:21:15 2019 -0800","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["README.md"]},"message":"remove sar and sadf","epoch":1573795275,"epoch_utc":null},{"commit":"c858adfd12144569d0b990a217c5bcd75bd23828","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:11:05 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 21:11:05 2019 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"]},"message":"remove stat from todo","epoch":1573794665,"epoch_utc":null},{"commit":"08d68327c777dd740d93a1b5fff8cf62f58904c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:08:09 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 21:08:09 2019 -0800","stats":{"files_changed":5,"insertions":8080,"deletions":0,"files":["tests/fixtures/centos-7.7/stat.json","tests/fixtures/centos-7.7/stat.out","tests/fixtures/ubuntu-18.04/stat.json","tests/fixtures/ubuntu-18.04/stat.out","tests/test_stat.py"]},"message":"add stat tests","epoch":1573794489,"epoch_utc":null},{"commit":"0d7c6c5664911af7a41149d51dd6ae05b39d7648","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 20:57:49 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 20:57:49 2019 -0800","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/parsers/stat.md","jc/parsers/stat.py"]},"message":"doc fix and add continue lines","epoch":1573793869,"epoch_utc":null},{"commit":"8bfa41dbf485cb06c928bc00a68727d2ceac21fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 17:36:29 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 17:36:29 2019 -0800","stats":{"files_changed":3,"insertions":22,"deletions":14,"files":["README.md","docs/parsers/stat.md","jc/parsers/stat.py"]},"message":"change values to null if -","epoch":1573781789,"epoch_utc":null},{"commit":"7e2fa48ed4f3fd452082ce06e7306efd38b2d508","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 17:24:51 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 17:24:51 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"update changelog","epoch":1573781091,"epoch_utc":null},{"commit":"340635cad5224f2c715bf961956f4b9b6119d80b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 17:23:44 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 17:23:44 2019 -0800","stats":{"files_changed":3,"insertions":408,"deletions":111,"files":["docgen.sh","docs/parsers/ss.md","docs/parsers/stat.md"]},"message":"fix stats doc","epoch":1573781024,"epoch_utc":null},{"commit":"8f77d1de098f035767d73a6965a695b95b75e161","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 17:21:56 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 17:21:56 2019 -0800","stats":{"files_changed":2,"insertions":111,"deletions":253,"files":["docgen.sh","docs/parsers/ss.md"]},"message":"add stat docs","epoch":1573780916,"epoch_utc":null},{"commit":"7dcf1b25ffb801375f0bf4263f34713ded904de9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 17:20:13 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 17:20:13 2019 -0800","stats":{"files_changed":1,"insertions":13,"deletions":0,"files":["jc/parsers/stat.py"]},"message":"add link_to field","epoch":1573780813,"epoch_utc":null},{"commit":"9b735381063a1167a6a74864a43b81aefd98009f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 16:44:12 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 16:44:12 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"]},"message":"set compatibility to linux only","epoch":1573778652,"epoch_utc":null},{"commit":"3bf8c8c6dbdf7e03e26b4581e35c3274084c07ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 16:40:52 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 16:40:52 2019 -0800","stats":{"files_changed":7,"insertions":27,"deletions":27,"files":["jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"pep8 fixes","epoch":1573778452,"epoch_utc":null},{"commit":"04a1ff2ca7873d55cdbc831e521f3d4892074d98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 16:36:00 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 16:36:00 2019 -0800","stats":{"files_changed":8,"insertions":28,"deletions":28,"files":["jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py"]},"message":"pep8 fixes","epoch":1573778160,"epoch_utc":null},{"commit":"64647d230ac936cb43864481ae0f45d13707d7b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 16:32:11 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 16:32:11 2019 -0800","stats":{"files_changed":6,"insertions":21,"deletions":21,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py"]},"message":"pep8 cleanup","epoch":1573777931,"epoch_utc":null},{"commit":"c2a67e1b70f33044aecabd8b46018117cb38cb9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 16:31:52 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 16:31:52 2019 -0800","stats":{"files_changed":2,"insertions":213,"deletions":16,"files":["README.md","jc/parsers/stat.py"]},"message":"add stat parser","epoch":1573777912,"epoch_utc":null},{"commit":"edb9a7c76e1fedaf37b6a226ad4e1cfc08a9a5ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 15:26:36 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 15:26:36 2019 -0800","stats":{"files_changed":2,"insertions":94,"deletions":0,"files":["jc/cli.py","jc/parsers/stat.py"]},"message":"add stat parser","epoch":1573773996,"epoch_utc":null},{"commit":"a407f5b67833cc5f8dda9fe8265cd34e62f28d14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 14:01:04 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 14:01:04 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"minor update","epoch":1573768864,"epoch_utc":null},{"commit":"e5b4987acb70e854d9996350235c5535b4a46b69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 14:00:06 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 14:00:06 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"doc update","epoch":1573768806,"epoch_utc":null},{"commit":"ba8cc18eebe779742cff0ba4c8bebe376e787c8c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 13:56:09 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 13:56:09 2019 -0800","stats":{"files_changed":5,"insertions":405,"deletions":0,"files":["tests/fixtures/centos-7.7/ss-sudo-a.json","tests/fixtures/centos-7.7/ss-sudo-a.out","tests/fixtures/ubuntu-18.04/ss-sudo-a.json","tests/fixtures/ubuntu-18.04/ss-sudo-a.out","tests/test_ss.py"]},"message":"add ss tests","epoch":1573768569,"epoch_utc":null},{"commit":"d2c7316e00b9aaf19231c05351821041458baf98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 13:43:07 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 13:43:07 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"update command options info","epoch":1573767787,"epoch_utc":null},{"commit":"609aa14d243206e81ed31f8438c3f42e8263e140","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 13:38:52 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 13:38:52 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/ss.md","jc/parsers/ss.py"]},"message":"spelling fix","epoch":1573767532,"epoch_utc":null},{"commit":"ef1ad4c700fcb740b5fbe1e12205b9a30ae427ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 13:37:55 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 13:37:55 2019 -0800","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["docs/parsers/ss.md","jc/parsers/ss.py"]},"message":"doc update","epoch":1573767475,"epoch_utc":null},{"commit":"a0e2732152dc3005914b9a3e4f03e937a113c67f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 09:46:10 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 09:46:10 2019 -0800","stats":{"files_changed":1,"insertions":64,"deletions":12,"files":["README.md"]},"message":"add ss example","epoch":1573753570,"epoch_utc":null},{"commit":"9b5d3e3be1ac07813e716f8426fe89cced478221","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 09:42:44 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 09:42:44 2019 -0800","stats":{"files_changed":1,"insertions":135,"deletions":25,"files":["docs/parsers/ss.md"]},"message":"update doc","epoch":1573753364,"epoch_utc":null},{"commit":"2663ef31fbc1b69b89b8032640a25065cc953866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 09:38:19 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 09:38:19 2019 -0800","stats":{"files_changed":1,"insertions":159,"deletions":30,"files":["jc/parsers/ss.py"]},"message":"fix field names per ss documentation","epoch":1573753099,"epoch_utc":null},{"commit":"a4cdd3378e6a031f16dd371ed5cd60ff018feb32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 13 08:17:41 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 13 08:17:41 2019 -0800","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["README.md"]},"message":"add compatibility info","epoch":1573661861,"epoch_utc":null},{"commit":"2f805da24d0e833e3d2a1f3a5ec34031fa911c05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 13 08:04:40 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 13 08:04:40 2019 -0800","stats":{"files_changed":45,"insertions":51,"deletions":51,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/utils.md","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/utils.py"]},"message":"add colon to parameter in docs","epoch":1573661080,"epoch_utc":null},{"commit":"79152a946d93e4facf9711bfa0f421e1978e0f1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 13 07:46:14 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 13 07:46:14 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"initialize network_list and socket_list variables","epoch":1573659974,"epoch_utc":null},{"commit":"de37bb37d01b397df2b5992b4acd64817380401d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 13 07:45:37 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 13 07:45:37 2019 -0800","stats":{"files_changed":3,"insertions":187,"deletions":1,"files":["docgen.sh","docs/parsers/ss.md","jc/parsers/ss.py"]},"message":"add ss docs","epoch":1573659937,"epoch_utc":null},{"commit":"f783e44e5c0cd05733da5d24573f06d05760f993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 18:58:58 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 18:58:58 2019 -0800","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["README.md","changelog.txt"]},"message":"doc fix","epoch":1573613938,"epoch_utc":null},{"commit":"af82f2c991ac0668485e75ae78a26b9553ec8b13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 18:56:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 18:56:42 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update raw format note","epoch":1573613802,"epoch_utc":null},{"commit":"46774daf9d3e0612df8f79d4b6b724e612ceb725","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 18:51:21 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 18:51:21 2019 -0800","stats":{"files_changed":2,"insertions":194,"deletions":4,"files":["README.md","jc/parsers/ss.py"]},"message":"doc update","epoch":1573613481,"epoch_utc":null},{"commit":"648306b7856fe2e296ce463ff4c9c2a8632c92d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 18:04:40 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 18:04:40 2019 -0800","stats":{"files_changed":1,"insertions":44,"deletions":22,"files":["jc/parsers/ss.py"]},"message":"process ss data","epoch":1573610680,"epoch_utc":null},{"commit":"b7a4f205b80c0a6a41aaabf59703525ac526c295","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 17:10:06 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 17:10:06 2019 -0800","stats":{"files_changed":1,"insertions":17,"deletions":14,"files":["jc/parsers/ss.py"]},"message":"parser fixes","epoch":1573607406,"epoch_utc":null},{"commit":"fdb168b43a69358a97bf43b71a0adbc7b1ef56f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 16:34:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 16:34:42 2019 -0800","stats":{"files_changed":2,"insertions":120,"deletions":0,"files":["jc/cli.py","jc/parsers/ss.py"]},"message":"add ss parser","epoch":1573605282,"epoch_utc":null},{"commit":"b6f65c93c462856f26201df0cbfe804b29a65169","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 15:05:21 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 15:05:21 2019 -0800","stats":{"files_changed":3,"insertions":43,"deletions":69,"files":["README.md","docs/parsers/ps.md","jc/parsers/ps.py"]},"message":"ps doc update","epoch":1573599921,"epoch_utc":null},{"commit":"3f4838f17a81969718d9e5b6bafa21e0b92e1d95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 14:22:49 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 14:22:49 2019 -0800","stats":{"files_changed":2,"insertions":0,"deletions":6,"files":["docgen.sh","docs/cli.md"]},"message":"remove cli.md","epoch":1573597369,"epoch_utc":null},{"commit":"eef0dee2aa206716d9cf011bec58a06c46bbee15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 14:20:59 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 14:20:59 2019 -0800","stats":{"files_changed":2,"insertions":8,"deletions":0,"files":["docs/utils.md","jc/utils.py"]},"message":"doc update","epoch":1573597259,"epoch_utc":null},{"commit":"e17388d3b2d1521d963bf9dd9e7a4ba5ba9bb09d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 14:19:40 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 14:19:40 2019 -0800","stats":{"files_changed":2,"insertions":44,"deletions":4,"files":["docs/utils.md","jc/utils.py"]},"message":"doc update","epoch":1573597180,"epoch_utc":null},{"commit":"7e6a1bc719b7160ba70cd326ff6aa182993a7380","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 14:15:22 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 14:15:22 2019 -0800","stats":{"files_changed":2,"insertions":41,"deletions":63,"files":["docs/readme.md","jc/__init__.py"]},"message":"doc update","epoch":1573596922,"epoch_utc":null},{"commit":"37738a2ea2f15af847e4b8383aba911e2020a3e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 14:10:26 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 14:10:26 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update contributions","epoch":1573596626,"epoch_utc":null},{"commit":"c5834a57db8957723a1425b9db46c433e28a3af1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 13:35:32 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 13:35:32 2019 -0800","stats":{"files_changed":1,"insertions":14,"deletions":0,"files":["README.md"]},"message":"add todo section","epoch":1573594532,"epoch_utc":null},{"commit":"91b9373f380e06f91888811edbfb21747ff08810","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 13:05:19 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 13:05:19 2019 -0800","stats":{"files_changed":1,"insertions":417,"deletions":673,"files":["README.md"]},"message":"new examples","epoch":1573592719,"epoch_utc":null},{"commit":"ce0bb5b816eed0c75542ead474c3dcb8401be2d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:52:16 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 11:52:16 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting fix","epoch":1573588336,"epoch_utc":null},{"commit":"f330ff0eff00586f46d18497f2441e94b6430e91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:49:14 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 11:49:14 2019 -0800","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["README.md"]},"message":"wrap example text","epoch":1573588154,"epoch_utc":null},{"commit":"4b02700414660b90518311485761870402368625","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:46:52 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 11:46:52 2019 -0800","stats":{"files_changed":1,"insertions":9,"deletions":20,"files":["README.md"]},"message":"update simple examples","epoch":1573588012,"epoch_utc":null},{"commit":"ee30180376b7acec46314bbc483866bff41c362a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:39:33 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 11:39:33 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"fix note","epoch":1573587573,"epoch_utc":null},{"commit":"338e0ff15c7fac84475c1ed107e6a23e7a009b1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:38:50 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 11:38:50 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]},"message":"add schema note","epoch":1573587530,"epoch_utc":null},{"commit":"3ac75305dfa33429646bb5d415567034cccfeee3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:28:10 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 11:28:10 2019 -0800","stats":{"files_changed":39,"insertions":351,"deletions":39,"files":["docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"update process() doc","epoch":1573586890,"epoch_utc":null},{"commit":"3bdcf44afb708cf6a716a0847b119f895602c23e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:22:17 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 11:22:17 2019 -0800","stats":{"files_changed":2,"insertions":18,"deletions":2,"files":["docs/parsers/arp.md","jc/parsers/arp.py"]},"message":"doc update","epoch":1573586537,"epoch_utc":null},{"commit":"e3f4ffede56fe48c0a282a021ac5cdfd7a8abee9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:18:00 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 11:18:00 2019 -0800","stats":{"files_changed":20,"insertions":172,"deletions":77,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md"]},"message":"doc update","epoch":1573586280,"epoch_utc":null},{"commit":"f0c8725d4355113f7690f20bb99078e488084ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:17:33 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 11:17:33 2019 -0800","stats":{"files_changed":21,"insertions":181,"deletions":81,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"doc update","epoch":1573586253,"epoch_utc":null},{"commit":"5473bc4eb697d00bd26a038287e1137e438cacb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:12:41 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 11:12:41 2019 -0800","stats":{"files_changed":2,"insertions":16,"deletions":6,"files":["docs/parsers/arp.md","jc/parsers/arp.py"]},"message":"doc update","epoch":1573585961,"epoch_utc":null},{"commit":"b9bd9422bfa46144416fa65add2e041d4124357b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:19:01 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 07:19:01 2019 -0800","stats":{"files_changed":2,"insertions":380,"deletions":46,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"doc update","epoch":1573571941,"epoch_utc":null},{"commit":"cb5729a070925a7fa29f762bd4b074532f5cba55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:18:27 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 07:18:27 2019 -0800","stats":{"files_changed":1,"insertions":62,"deletions":44,"files":["README.md"]},"message":"add options to docs","epoch":1573571907,"epoch_utc":null},{"commit":"f0b1ab42337746afd37365abdf44729d530d5410","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:08:35 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 07:08:35 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/utils.md","jc/utils.py"]},"message":"doc update","epoch":1573571315,"epoch_utc":null},{"commit":"b15386e849b9fea347e7b17307eedf779d8022fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:07:43 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 07:07:43 2019 -0800","stats":{"files_changed":2,"insertions":11,"deletions":5,"files":["docs/utils.md","jc/utils.py"]},"message":"doc update","epoch":1573571263,"epoch_utc":null},{"commit":"d2a2c8da35ee44e9a7572885609548eb809bcdda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:03:02 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 07:03:02 2019 -0800","stats":{"files_changed":3,"insertions":1,"deletions":5,"files":["docs/parsers/iptables.md","docs/parsers/mount.md","docs/parsers/uname.md"]},"message":"doc updates","epoch":1573570982,"epoch_utc":null},{"commit":"7251548cbb09beae6971385a56036e9649bd9b2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:01:36 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 07:01:36 2019 -0800","stats":{"files_changed":3,"insertions":3,"deletions":5,"files":["jc/parsers/iptables.py","jc/parsers/mount.py","jc/parsers/uname.py"]},"message":"documentation updates","epoch":1573570896,"epoch_utc":null},{"commit":"146e29f7cbc0f396be67dbd7ae971a4ef4dafb7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 18:30:46 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 18:30:46 2019 -0800","stats":{"files_changed":47,"insertions":5386,"deletions":2249,"files":["docgen.sh","docs/cli.md","docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/readme.md","docs/utils.md","jc/__init__.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/utils.py"]},"message":"update docs","epoch":1573525846,"epoch_utc":null},{"commit":"363fd3eab409351121dab8a11c6b565829ccd84a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 16:27:28 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 16:27:28 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"move parser_name to except block","epoch":1573518448,"epoch_utc":null},{"commit":"4083dd4260ff3a8bb6649e1661cf3e058fdbad59","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 16:16:41 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 16:16:41 2019 -0800","stats":{"files_changed":2,"insertions":24,"deletions":5,"files":["changelog.txt","jc/cli.py"]},"message":"add -d option","epoch":1573517801,"epoch_utc":null},{"commit":"b2b74547baaf33058d74fc08cb665777b19bd05a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 15:53:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 15:53:42 2019 -0800","stats":{"files_changed":6,"insertions":317,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-sudo-aeep.json","tests/fixtures/centos-7.7/netstat-sudo-aeep.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.json","tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.out","tests/test_netstat.py"]},"message":"add netstat-sudo-aeep tests","epoch":1573516422,"epoch_utc":null},{"commit":"dddb0baabf8a78261ac80380b97e7c92c7ce4d89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 15:53:22 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 15:53:22 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/netstat.py"]},"message":"use \\u2063 instead of \\u2026","epoch":1573516402,"epoch_utc":null},{"commit":"84b4f67ef9d4bb0db201a095d74400a56394589d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 14:34:36 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 14:34:36 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["tests/fixtures/centos-7.7/ps-axu.json","tests/fixtures/ubuntu-18.04/ps-axu.json"]},"message":"new json output","epoch":1573511676,"epoch_utc":null},{"commit":"3a089138b8c269ba3c5f7aec87ae3f8ec368c3ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 14:31:27 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 14:31:27 2019 -0800","stats":{"files_changed":1,"insertions":129,"deletions":9,"files":["jc/parsers/ps.py"]},"message":"add int and float changes","epoch":1573511487,"epoch_utc":null},{"commit":"3ff0305c8e62ce3b5a8f3f9174c5a9da3bc22766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 13:00:17 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 13:00:17 2019 -0800","stats":{"files_changed":8,"insertions":54,"deletions":2,"files":["tests/fixtures/centos-7.7/lsblk-allcols.json","tests/fixtures/centos-7.7/lsblk-allcols.out","tests/fixtures/centos-7.7/lsblk.json","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/lsblk-allcols.json","tests/fixtures/ubuntu-18.04/lsblk-allcols.out","tests/fixtures/ubuntu-18.04/lsblk.json","tests/test_lsblk.py"]},"message":"add lsblk tests","epoch":1573506017,"epoch_utc":null},{"commit":"761edc3c6cfc215fe45c65ee2bb5462cb460b6a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 12:43:27 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 12:43:27 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":6,"files":["jc/parsers/lsblk.py"]},"message":"remove unused parse_pairs function","epoch":1573505007,"epoch_utc":null},{"commit":"3351c81f647ac97a5038cc0c14adb31e55832a77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 12:40:16 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 12:40:16 2019 -0800","stats":{"files_changed":1,"insertions":200,"deletions":2,"files":["jc/parsers/lsblk.py"]},"message":"add documentation","epoch":1573504816,"epoch_utc":null},{"commit":"3dfc6f67d770c59804bdeb371d5c78e3f3668f9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 12:00:23 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 12:00:23 2019 -0800","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/lsblk.py"]},"message":"change empty values to Null","epoch":1573502423,"epoch_utc":null},{"commit":"1546ec3bd139ef687282f60786388b5207541c98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 11:53:16 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 11:53:16 2019 -0800","stats":{"files_changed":1,"insertions":17,"deletions":13,"files":["jc/parsers/lsblk.py"]},"message":"fixes for right justified columns","epoch":1573501996,"epoch_utc":null},{"commit":"2a953011f72e922c89b9af6dfebd1983da7c338d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 10 15:18:53 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Nov 10 15:18:53 2019 -0800","stats":{"files_changed":2,"insertions":50,"deletions":155,"files":["changelog.txt","jc/parsers/lsblk.py"]},"message":"rewrite of lsblk parser to use a custom delimiter","epoch":1573427933,"epoch_utc":null},{"commit":"d2f755de9d2be7b0af5f010042e1f4ca589c5464","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 17:08:41 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 17:08:41 2019 -0800","stats":{"files_changed":14,"insertions":250,"deletions":566,"files":["tests/test_ifconfig.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_ls.py","tests/test_lsblk.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_ps.py","tests/test_route.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py"]},"message":"updates tests","epoch":1573261721,"epoch_utc":null},{"commit":"f363334639c5fa3a43889794ea52409056a2d886","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 16:21:09 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 16:21:09 2019 -0800","stats":{"files_changed":5,"insertions":87,"deletions":219,"files":["tests/test_df.py","tests/test_dig.py","tests/test_env.py","tests/test_free.py","tests/test_history.py"]},"message":"update tests","epoch":1573258869,"epoch_utc":null},{"commit":"750197e48596ad96804477053d3ff3c8063ea68a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 16:04:19 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 16:04:19 2019 -0800","stats":{"files_changed":1,"insertions":27,"deletions":70,"files":["tests/test_arp.py"]},"message":"new tests","epoch":1573257859,"epoch_utc":null},{"commit":"36b349e4ed39fe611c7d87a47c378cc4d4627ad2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 16:03:41 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 16:03:41 2019 -0800","stats":{"files_changed":76,"insertions":76,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-a.json","tests/fixtures/centos-7.7/arp-v.json","tests/fixtures/centos-7.7/arp.json","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/df.json","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/centos-7.7/env.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/centos-7.7/free.json","tests/fixtures/centos-7.7/history.json","tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/centos-7.7/iptables-filter-nv.json","tests/fixtures/centos-7.7/iptables-filter.json","tests/fixtures/centos-7.7/iptables-mangle.json","tests/fixtures/centos-7.7/iptables-nat.json","tests/fixtures/centos-7.7/iptables-raw.json","tests/fixtures/centos-7.7/jobs.json","tests/fixtures/centos-7.7/ls-al.json","tests/fixtures/centos-7.7/ls-alh.json","tests/fixtures/centos-7.7/ls.json","tests/fixtures/centos-7.7/lsblk.json","tests/fixtures/centos-7.7/lsmod.json","tests/fixtures/centos-7.7/lsof-sudo.json","tests/fixtures/centos-7.7/lsof.json","tests/fixtures/centos-7.7/mount.json","tests/fixtures/centos-7.7/netstat-l.json","tests/fixtures/centos-7.7/netstat-p.json","tests/fixtures/centos-7.7/netstat-sudo-lnp.json","tests/fixtures/centos-7.7/netstat.json","tests/fixtures/centos-7.7/ps-axu.json","tests/fixtures/centos-7.7/ps-ef.json","tests/fixtures/centos-7.7/route-vn.json","tests/fixtures/centos-7.7/route.json","tests/fixtures/centos-7.7/uname-a.json","tests/fixtures/centos-7.7/uptime.json","tests/fixtures/centos-7.7/w.json","tests/fixtures/ubuntu-18.04/arp-a.json","tests/fixtures/ubuntu-18.04/arp-v.json","tests/fixtures/ubuntu-18.04/arp.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/df.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json","tests/fixtures/ubuntu-18.04/env.json","tests/fixtures/ubuntu-18.04/free-h.json","tests/fixtures/ubuntu-18.04/free.json","tests/fixtures/ubuntu-18.04/history.json","tests/fixtures/ubuntu-18.04/ifconfig.json","tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","tests/fixtures/ubuntu-18.04/iptables-filter.json","tests/fixtures/ubuntu-18.04/iptables-mangle.json","tests/fixtures/ubuntu-18.04/iptables-nat.json","tests/fixtures/ubuntu-18.04/iptables-raw.json","tests/fixtures/ubuntu-18.04/jobs.json","tests/fixtures/ubuntu-18.04/ls-al.json","tests/fixtures/ubuntu-18.04/ls-alh.json","tests/fixtures/ubuntu-18.04/ls.json","tests/fixtures/ubuntu-18.04/lsblk.json","tests/fixtures/ubuntu-18.04/lsmod.json","tests/fixtures/ubuntu-18.04/lsof-sudo.json","tests/fixtures/ubuntu-18.04/lsof.json","tests/fixtures/ubuntu-18.04/mount.json","tests/fixtures/ubuntu-18.04/netstat-l.json","tests/fixtures/ubuntu-18.04/netstat-p.json","tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.json","tests/fixtures/ubuntu-18.04/netstat.json","tests/fixtures/ubuntu-18.04/ps-axu.json","tests/fixtures/ubuntu-18.04/ps-ef.json","tests/fixtures/ubuntu-18.04/route-vn.json","tests/fixtures/ubuntu-18.04/route.json","tests/fixtures/ubuntu-18.04/uname-a.json","tests/fixtures/ubuntu-18.04/uptime.json","tests/fixtures/ubuntu-18.04/w.json"]},"message":"json output files","epoch":1573257821,"epoch_utc":null},{"commit":"b5f1e94fe2859c4fbcf126f8f8fb20d71a9b6433","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 16:03:14 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 16:03:14 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/netstat.py"]},"message":"fix for space before '-' in program_name","epoch":1573257794,"epoch_utc":null},{"commit":"6a504fb0e10b1ef551ed9fe780926fe5ca02d267","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 16:02:44 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 16:02:44 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"]},"message":"add exception type","epoch":1573257764,"epoch_utc":null},{"commit":"e02bad2240bacbc31097d931a902a34217d559db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 12:22:41 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 12:22:41 2019 -0800","stats":{"files_changed":1,"insertions":123,"deletions":175,"files":["jc/parsers/netstat.py"]},"message":"update documentation","epoch":1573244561,"epoch_utc":null},{"commit":"1d4043a3b64c38a20a0db065c3bdc3c6a2d068bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 12:14:09 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 12:14:09 2019 -0800","stats":{"files_changed":1,"insertions":52,"deletions":0,"files":["jc/parsers/foo.py"]},"message":"add template parser","epoch":1573244049,"epoch_utc":null},{"commit":"039e034829789ca314a00abd4f1d9ad06f1a6eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 11:47:58 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 11:47:58 2019 -0800","stats":{"files_changed":1,"insertions":19,"deletions":6,"files":["jc/parsers/netstat.py"]},"message":"fix parsing issues in program_name when spaces are in the name","epoch":1573242478,"epoch_utc":null},{"commit":"d828de4f4f2f4c3d582fddee79830d12511c3299","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 09:07:05 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 09:07:05 2019 -0800","stats":{"files_changed":1,"insertions":53,"deletions":9,"files":["jc/parsers/w.py"]},"message":"update documentation","epoch":1573232825,"epoch_utc":null},{"commit":"098000bb10a3f5ed33d285c6ba4f0dfb9a013fdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 09:04:03 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 09:04:03 2019 -0800","stats":{"files_changed":2,"insertions":24,"deletions":9,"files":["changelog.txt","jc/parsers/w.py"]},"message":"fix blank 'from' column issue","epoch":1573232643,"epoch_utc":null},{"commit":"b41165eff5cd7371e852cd33e084a919524ead9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 19:13:15 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 19:13:15 2019 -0800","stats":{"files_changed":1,"insertions":31,"deletions":1,"files":["jc/parsers/w.py"]},"message":"process w data","epoch":1573182795,"epoch_utc":null},{"commit":"6ad7891b2b34fae1a366568e4eba86e886a6dd84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 18:54:52 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 18:54:52 2019 -0800","stats":{"files_changed":1,"insertions":59,"deletions":14,"files":["jc/parsers/uptime.py"]},"message":"process uptime data","epoch":1573181692,"epoch_utc":null},{"commit":"72138315598cd405bc0508b554108bf3f730dcb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 18:47:01 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 18:47:01 2019 -0800","stats":{"files_changed":1,"insertions":31,"deletions":10,"files":["jc/parsers/uname.py"]},"message":"add process boilerplate","epoch":1573181221,"epoch_utc":null},{"commit":"10eedd82e4c4678fbf989fe599d7ca75deced5a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 18:34:06 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 18:34:06 2019 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["changelog.txt"]},"message":"changelog update","epoch":1573180446,"epoch_utc":null},{"commit":"a55493da0f1457a46f29511e0835adfa9d748f7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 18:33:51 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 18:33:51 2019 -0800","stats":{"files_changed":1,"insertions":93,"deletions":6,"files":["jc/parsers/route.py"]},"message":"process route data","epoch":1573180431,"epoch_utc":null},{"commit":"89973f4162317693b0d094a64115ee87d8479d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 15:33:12 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 15:33:12 2019 -0800","stats":{"files_changed":1,"insertions":45,"deletions":27,"files":["jc/parsers/ps.py"]},"message":"doc updates and tty fix","epoch":1573169592,"epoch_utc":null},{"commit":"4802222ad50d55372f2b883d83a61181086b0619","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 15:24:03 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 15:24:03 2019 -0800","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/parsers/ps.py"]},"message":"process ps data","epoch":1573169043,"epoch_utc":null},{"commit":"bcd28f06f87a4260d1787399d723817afd6aee90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 15:09:57 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 15:09:57 2019 -0800","stats":{"files_changed":1,"insertions":23,"deletions":1,"files":["jc/parsers/ps.py"]},"message":"prep ps for process","epoch":1573168197,"epoch_utc":null},{"commit":"e17a47a7fa7f4c1bb4c4b55fb004963fc1b61434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 14:51:05 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 14:51:05 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"fix typo","epoch":1573167065,"epoch_utc":null},{"commit":"cad2e16c7aa54a70f476bf4268ff8e5985cff468","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 14:49:21 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 14:49:21 2019 -0800","stats":{"files_changed":1,"insertions":353,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"document examples","epoch":1573166961,"epoch_utc":null},{"commit":"5da5d278dac77bd4aa21819194e7f9e178bd1887","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 14:43:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 14:43:42 2019 -0800","stats":{"files_changed":1,"insertions":23,"deletions":0,"files":["jc/parsers/netstat.py"]},"message":"process netstat data","epoch":1573166622,"epoch_utc":null},{"commit":"81b6776e57c113cbfb8346d1cfd83532a440c257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 13:58:55 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 13:58:55 2019 -0800","stats":{"files_changed":1,"insertions":0,"deletions":177,"files":["jc/parsers/netstat.py.old"]},"message":"remove old netstat parser","epoch":1573163935,"epoch_utc":null},{"commit":"5ecb6bd58b4ed91f63e4a0b5939378bd9925b7b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 13:58:37 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 13:58:37 2019 -0800","stats":{"files_changed":2,"insertions":4,"deletions":3,"files":["changelog.txt","jc/parsers/netstat.py"]},"message":"doc updates","epoch":1573163917,"epoch_utc":null},{"commit":"21b56096c57cfcf5c55fdf5f9bab88b6d5c7dd73","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 13:53:23 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 13:53:23 2019 -0800","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["jc/parsers/netstat.py"]},"message":"finalize parse_post","epoch":1573163603,"epoch_utc":null},{"commit":"8c78f959731a25a05ee6361a14853c92f8fce69b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 12:13:25 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 12:13:25 2019 -0800","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"clean up trailing spaces on entries","epoch":1573157605,"epoch_utc":null},{"commit":"94a88bb5669d9a9a5dff085a4c4111bdd39df8f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 10:52:02 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 10:52:02 2019 -0800","stats":{"files_changed":1,"insertions":35,"deletions":17,"files":["jc/parsers/netstat.py"]},"message":"post_parse flags and program_name","epoch":1573152722,"epoch_utc":null},{"commit":"579124475b0b517b36ddbe5bdb13be14807dea1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 09:02:27 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 09:02:27 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"simplify parser_map code","epoch":1573146147,"epoch_utc":null},{"commit":"5da83e020015eb5559d216bc3f39b3854e76adf3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:23:11 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 08:23:11 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"]},"message":"fix found variable error","epoch":1573143791,"epoch_utc":null},{"commit":"a90a76d004b923edece07a52a3aa400a9ef4b005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:15:19 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 08:15:19 2019 -0800","stats":{"files_changed":2,"insertions":177,"deletions":140,"files":["jc/parsers/netstat.py.old","jc/parsers/netstat2.py"]},"message":"move out old netstat parser","epoch":1573143319,"epoch_utc":null},{"commit":"bdfa95912398b2630fcb13e866f4013747fd0975","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:07:43 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 08:07:43 2019 -0800","stats":{"files_changed":20,"insertions":209,"deletions":212,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"fix compatibility code","epoch":1573142863,"epoch_utc":null},{"commit":"4380594275bc863e81839a6a7b032a6ff0cbb9b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:04:32 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 08:04:32 2019 -0800","stats":{"files_changed":1,"insertions":8,"deletions":46,"files":["jc/utils.py"]},"message":"remove cli functions from utils","epoch":1573142672,"epoch_utc":null},{"commit":"88bf252c0df3c583640286880d7992e4399e23f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:04:07 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 08:04:07 2019 -0800","stats":{"files_changed":2,"insertions":139,"deletions":128,"files":["jc/cli.py","jc/jc.py"]},"message":"rename jc.py to cli.py","epoch":1573142647,"epoch_utc":null},{"commit":"a5efd8adce77fca7e3343f8f518c7bad578fdb4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:03:45 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 08:03:45 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"rename jc.py to cli.py","epoch":1573142625,"epoch_utc":null},{"commit":"2ee392eefffde77ebdf83f5e4e0c43cf8c1a7d6e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 21:09:09 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 6 21:09:09 2019 -0800","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/netstat2.py"]},"message":"add quiet mode","epoch":1573103349,"epoch_utc":null},{"commit":"9c1d893e16ea17b16bec5fd0ec8839c4fe6f0590","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 21:07:25 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 6 21:07:25 2019 -0800","stats":{"files_changed":4,"insertions":102,"deletions":90,"files":["jc/jc.py","jc/parsers/arp.py","jc/parsers/df.py","jc/utils.py"]},"message":"move utils to own module and add quiet mode","epoch":1573103245,"epoch_utc":null},{"commit":"88dcb90c83b757285661c72429c5b60bb1ead94a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 21:05:25 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 6 21:05:25 2019 -0800","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["changelog.txt"]},"message":"changelog update","epoch":1573103125,"epoch_utc":null},{"commit":"a3bcabc89c1f74d067da0046492dbc56e50b1005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 20:35:10 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 6 20:35:10 2019 -0800","stats":{"files_changed":1,"insertions":9,"deletions":62,"files":["jc/parsers/netstat2.py"]},"message":"mvp of netstat raw_data parser","epoch":1573101310,"epoch_utc":null},{"commit":"dafbf9fdcf53a8abbd006baef0be6697f860d2a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 19:17:01 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 6 19:17:01 2019 -0800","stats":{"files_changed":4,"insertions":247,"deletions":53,"files":["jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat2.py"]},"message":"process lsmod data","epoch":1573096621,"epoch_utc":null},{"commit":"680cb2b2caa82e1e2c3225b3c44cae2ba03ba02c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 09:56:59 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 6 09:56:59 2019 -0600","stats":{"files_changed":1,"insertions":76,"deletions":7,"files":["jc/parsers/lsblk.py"]},"message":"doc update","epoch":1573063019,"epoch_utc":null},{"commit":"54818a06e0e0b981810f6aec45c308da81a9e2ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 09:21:55 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 6 09:21:55 2019 -0600","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/lsblk.py"]},"message":"change bool variable names","epoch":1573060915,"epoch_utc":null},{"commit":"88f4c5b5a93da3938b84f97abfc54539ee19ac48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 08:47:54 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 6 08:47:54 2019 -0600","stats":{"files_changed":6,"insertions":10,"deletions":10,"files":["jc/parsers/dig.py","jc/parsers/free.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py"]},"message":"remove TypeError from exception check","epoch":1573058874,"epoch_utc":null},{"commit":"2bb7409887e8b7659613189daf58d02cb26bd6ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 23:10:49 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 23:10:49 2019 -0600","stats":{"files_changed":2,"insertions":36,"deletions":11,"files":["jc/parsers/df.py","jc/parsers/lsblk.py"]},"message":"process lsblk data","epoch":1573024249,"epoch_utc":null},{"commit":"c780aac3aba02cc042c6a3c984af198069956370","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 22:42:48 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 22:42:48 2019 -0600","stats":{"files_changed":22,"insertions":91,"deletions":5,"files":["jc/jc.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat2.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add compatibility function","epoch":1573022568,"epoch_utc":null},{"commit":"5010aaec285e26ae9dbfdb3fcdc38a3bd36cd236","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:25:20 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 17:25:20 2019 -0600","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"]},"message":"put exit() back","epoch":1573003520,"epoch_utc":null},{"commit":"066e93cb075021ac94a0e2e6a36a34bc173ee6c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:23:46 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 17:23:46 2019 -0600","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"]},"message":"move exit() to errormessage()","epoch":1573003426,"epoch_utc":null},{"commit":"0bd2faa7f71a128babc68afea053159ccb91b702","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:17:07 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 17:17:07 2019 -0600","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/jc.py"]},"message":"beautify compatibility list","epoch":1573003027,"epoch_utc":null},{"commit":"e2f926453ba386736204e358f8306dfc731b5005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:08:41 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 17:08:41 2019 -0600","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["install.sh"]},"message":"add install script","epoch":1573002521,"epoch_utc":null},{"commit":"b953b79f9c46d8c5398a6c1c2769167b5aed2805","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:04:18 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 17:04:18 2019 -0600","stats":{"files_changed":3,"insertions":11,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/ls.py"]},"message":"add compatibility","epoch":1573002258,"epoch_utc":null},{"commit":"7f9967780692bec2fcbe992eee0c392ab92efb7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:00:36 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 17:00:36 2019 -0600","stats":{"files_changed":2,"insertions":19,"deletions":1,"files":["jc/jc.py","jc/parsers/lsblk.py"]},"message":"compatibility function call","epoch":1573002036,"epoch_utc":null},{"commit":"721b54665924ad1657ee83cd5fca601e03700962","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 15:14:52 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 15:14:52 2019 -0600","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/lsblk.py"]},"message":"finish schema","epoch":1572995692,"epoch_utc":null},{"commit":"2de5e41269421c73e07d4abd6ca99b38be736261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 15:07:40 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 15:07:40 2019 -0600","stats":{"files_changed":1,"insertions":95,"deletions":12,"files":["jc/parsers/lsblk.py"]},"message":"fix for more columns and build schema","epoch":1572995260,"epoch_utc":null},{"commit":"dfe0f6e99b6174734661fc43d9ad4b1d0dfd96e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 08:30:32 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 08:30:32 2019 -0800","stats":{"files_changed":1,"insertions":75,"deletions":9,"files":["jc/parsers/ls.py"]},"message":"process ls data","epoch":1572971432,"epoch_utc":null},{"commit":"8873b1bc697c8f9409fa676c88b5ebe109dc8717","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 08:07:39 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 08:07:39 2019 -0800","stats":{"files_changed":1,"insertions":24,"deletions":46,"files":["jc/parsers/df.py"]},"message":"clean up process code","epoch":1572970059,"epoch_utc":null},{"commit":"9ff94707004fefed475603436fc0a7ffb19e6fee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 07:21:58 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 07:21:58 2019 -0800","stats":{"files_changed":1,"insertions":9,"deletions":4,"files":["jc/jc.py"]},"message":"refactor helptext() function","epoch":1572967318,"epoch_utc":null},{"commit":"2c58fca53044892e15ceb5e8bcae1afb09fa3269","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 17:07:11 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 17:07:11 2019 -0800","stats":{"files_changed":1,"insertions":62,"deletions":4,"files":["jc/parsers/jobs.py"]},"message":"process jobs data","epoch":1572916031,"epoch_utc":null},{"commit":"9e5cd90da7d92bbadbc0d25071d087a3dbd90a5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 16:59:14 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 16:59:14 2019 -0800","stats":{"files_changed":1,"insertions":131,"deletions":261,"files":["jc/parsers/iptables.py"]},"message":"process iptables data","epoch":1572915554,"epoch_utc":null},{"commit":"7ee0d49424bba5274975d6c33e0721977660692f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 15:54:34 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 15:54:34 2019 -0800","stats":{"files_changed":1,"insertions":107,"deletions":28,"files":["jc/parsers/ifconfig.py"]},"message":"process ifconfig data","epoch":1572911674,"epoch_utc":null},{"commit":"a9058ee21e87454aa423112239c4f4df7daca8c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 15:19:50 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 15:19:50 2019 -0800","stats":{"files_changed":3,"insertions":4,"deletions":1,"files":["jc/parsers/arp.py","jc/parsers/dig.py","jc/parsers/free.py"]},"message":"doc formatting","epoch":1572909590,"epoch_utc":null},{"commit":"fcf0aac87dccac2ce28e6f55e66e2f0b8f6fbd36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 15:19:35 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 15:19:35 2019 -0800","stats":{"files_changed":1,"insertions":54,"deletions":10,"files":["jc/parsers/history.py"]},"message":"add history processing","epoch":1572909575,"epoch_utc":null},{"commit":"daec5f068103aae547509ddacc2be56c84f39f17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 15:11:18 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 15:11:18 2019 -0800","stats":{"files_changed":1,"insertions":55,"deletions":6,"files":["jc/parsers/free.py"]},"message":"process free data","epoch":1572909078,"epoch_utc":null},{"commit":"5b2491d5ae72705758944e247fbca83367c0365f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 15:03:16 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 15:03:16 2019 -0800","stats":{"files_changed":1,"insertions":54,"deletions":5,"files":["jc/parsers/env.py"]},"message":"process env data","epoch":1572908596,"epoch_utc":null},{"commit":"d9b41ac73b234f5bf7ff3abfee198092424a1bbd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 13:52:45 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 13:52:45 2019 -0800","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/dig.py"]},"message":"doc formatting","epoch":1572904365,"epoch_utc":null},{"commit":"7168ffddf8a8dfcdd5bcabd8bf943d6417de407d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 13:47:27 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 13:47:27 2019 -0800","stats":{"files_changed":1,"insertions":87,"deletions":5,"files":["jc/parsers/dig.py"]},"message":"process dig output","epoch":1572904047,"epoch_utc":null},{"commit":"a855344bec9f60d852de326953436ec76f25cffb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 13:05:56 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 13:05:56 2019 -0800","stats":{"files_changed":1,"insertions":13,"deletions":0,"files":["jc/parsers/arp.py"]},"message":"document schema","epoch":1572901556,"epoch_utc":null},{"commit":"d8b3b59fae924494fbcdfbdf6ad790f5234b0c69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 13:02:54 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 13:02:54 2019 -0800","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/parsers/df.py"]},"message":"add schema and rename 'avail' to 'available'","epoch":1572901374,"epoch_utc":null},{"commit":"4b7d7840d37be47c1c98c38a6d712e7090e5b68c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 12:50:37 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 12:50:37 2019 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","changelog.txt"]},"message":"add -r option","epoch":1572900637,"epoch_utc":null},{"commit":"58a094a9b4cab0fcb99581f37a21a450fc3a1aed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 12:40:19 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 12:40:19 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update","epoch":1572900019,"epoch_utc":null},{"commit":"65adbb4189ac66de3283adb2af93a1251103f057","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 12:40:05 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 12:40:05 2019 -0800","stats":{"files_changed":1,"insertions":29,"deletions":7,"files":["jc/parsers/arp.py"]},"message":"doc update","epoch":1572900005,"epoch_utc":null},{"commit":"f7350959c9706486a3aed19a999e5ee756a1240c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 12:39:43 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 12:39:43 2019 -0800","stats":{"files_changed":1,"insertions":47,"deletions":24,"files":["jc/parsers/df.py"]},"message":"df fix for changing header names when -h used","epoch":1572899983,"epoch_utc":null},{"commit":"8934a7d832b8e1375f0bbdd71031f37ae42f3929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 11:10:58 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 11:10:58 2019 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["jc/parsers/arp.py","jc/parsers/df.py"]},"message":"fix dictionary iteration","epoch":1572894658,"epoch_utc":null},{"commit":"669a424fd6508db91bf5cfa2607033fac85f442c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 11:02:02 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 11:02:02 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/df.py"]},"message":"fix process function","epoch":1572894122,"epoch_utc":null},{"commit":"591a65c2bda26efcdd570a5f147f98a5be0473d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 10:56:33 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 10:56:33 2019 -0800","stats":{"files_changed":1,"insertions":46,"deletions":2,"files":["jc/parsers/df.py"]},"message":"process df data","epoch":1572893793,"epoch_utc":null},{"commit":"a78fb890782a64b20c0c1b60afbd915ebdd88535","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 09:32:29 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 09:32:29 2019 -0800","stats":{"files_changed":1,"insertions":21,"deletions":5,"files":["jc/parsers/arp.py"]},"message":"add raw and processed output","epoch":1572888749,"epoch_utc":null},{"commit":"8979dab2a5371fce3a773004c2309e7483e4cd31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 09:32:09 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 09:32:09 2019 -0800","stats":{"files_changed":1,"insertions":25,"deletions":20,"files":["jc/jc.py"]},"message":"add raw mode","epoch":1572888729,"epoch_utc":null},{"commit":"0a891f0adda7f2f3233222a0cb5c1f737913ad6f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 08:09:19 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 08:09:19 2019 -0800","stats":{"files_changed":2,"insertions":4,"deletions":1,"files":["changelog.txt","setup.py"]},"message":"bump python required version","epoch":1572883759,"epoch_utc":null},{"commit":"c220e35b14237c2cfc38aa661413af83ea13e393","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 08:06:50 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 08:06:50 2019 -0800","stats":{"files_changed":1,"insertions":34,"deletions":33,"files":["jc/jc.py"]},"message":"cleanup helptext","epoch":1572883610,"epoch_utc":null},{"commit":"f26c5818bd958c18f4ecc22611b9c058f6213a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 07:57:47 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 07:57:47 2019 -0800","stats":{"files_changed":1,"insertions":36,"deletions":33,"files":["jc/jc.py"]},"message":"refactor helptext","epoch":1572883067,"epoch_utc":null},{"commit":"e712cd3fc4cec1b3137c73e199b2d89fd42fb3bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 1 22:29:08 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 1 22:29:08 2019 -0700","stats":{"files_changed":1,"insertions":138,"deletions":0,"files":["jc/parsers/netstat2.py"]},"message":"netstat2 skeleton","epoch":1572672548,"epoch_utc":null},{"commit":"0309c9ac67c5f65e0a584fd01e8104ef1990fa7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 1 08:55:52 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 1 08:55:52 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"setup cleanup","epoch":1572623752,"epoch_utc":null},{"commit":"9a9eb4120af7696cd3727ac0f0a014663e62b993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 1 08:53:53 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 1 08:53:53 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["setup.py"]},"message":"setup updates","epoch":1572623633,"epoch_utc":null},{"commit":"d1927456b02e6c2a6e6395cd6ce873b6565ec37d","merge":"0691cfc a3d9213","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 31 08:06:01 2019 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Oct 31 08:06:01 2019 -0700","message":"Merge pull request #6 from kellyjonbrazil/dev\n\nDev v1.1.1","epoch":1572534361,"epoch_utc":null},{"commit":"a3d9213a1e2fd52ba2cbc863d4d01d3ffeebe230","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 31 07:59:03 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 31 07:59:03 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["changelog.txt"]},"message":"add date","epoch":1572533943,"epoch_utc":null},{"commit":"3365c03a1e709835b4bd6bca023afbcb46912982","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 31 07:58:44 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 31 07:58:44 2019 -0700","stats":{"files_changed":2,"insertions":361,"deletions":0,"files":["tests/test_arp.py","tests/test_dig.py"]},"message":"add tests","epoch":1572533924,"epoch_utc":null},{"commit":"4f6c87389b313b368d9e833feef55fe6daf7aac9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 31 07:27:31 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 31 07:27:31 2019 -0700","stats":{"files_changed":7,"insertions":164,"deletions":1,"files":["tests/fixtures/centos-7.7/dig-aaaa.out","tests/fixtures/centos-7.7/dig-x.out","tests/fixtures/centos-7.7/dig.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/dig-aaaa.out","tests/fixtures/ubuntu-18.04/dig-x.out","tests/fixtures/ubuntu-18.04/dig.out"]},"message":"add dig test files","epoch":1572532051,"epoch_utc":null},{"commit":"41a2a9adac7d3c29dfa11292f08b0877c69b1a5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 31 07:27:12 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 31 07:27:12 2019 -0700","stats":{"files_changed":2,"insertions":147,"deletions":3,"files":["README.md","jc/parsers/dig.py"]},"message":"remove unnecessary if statement","epoch":1572532032,"epoch_utc":null},{"commit":"74dae2905b2b0916f0be9fee2a4a343962760ff6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 17:23:35 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 17:23:35 2019 -0700","stats":{"files_changed":1,"insertions":143,"deletions":30,"files":["jc/parsers/dig.py"]},"message":"dig parser mvp","epoch":1572481415,"epoch_utc":null},{"commit":"d1f64214de00090c3faae0bf544c6c2602ab8c31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 17:18:14 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 17:18:14 2019 -0700","stats":{"files_changed":1,"insertions":19,"deletions":3,"files":["jc/parsers/dig.py"]},"message":"add authority parsing","epoch":1572481094,"epoch_utc":null},{"commit":"d3e1aa20a815d1d1d6ae82776ae18e3416f0966f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 17:03:35 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 17:03:35 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dig.py"]},"message":"fix when line","epoch":1572480215,"epoch_utc":null},{"commit":"72cae9577756c4355211a19f4dd77aaeb6f8e905","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 16:59:56 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 16:59:56 2019 -0700","stats":{"files_changed":1,"insertions":47,"deletions":9,"files":["jc/parsers/dig.py"]},"message":"dig fixes","epoch":1572479996,"epoch_utc":null},{"commit":"219bc8130f55f23e3be3abbe56104aefc2f84e86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 15:36:13 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 15:36:13 2019 -0700","stats":{"files_changed":2,"insertions":155,"deletions":0,"files":["jc/jc.py","jc/parsers/dig.py"]},"message":"dig parser skeleton","epoch":1572474973,"epoch_utc":null},{"commit":"e8c1a554c040ad8f9c6b518db5fd58e8345d2181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:52:53 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 13:52:53 2019 -0700","stats":{"files_changed":3,"insertions":7,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-a.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/arp-a.out"]},"message":"testfile updates","epoch":1572468773,"epoch_utc":null},{"commit":"087a60bc2adf64bfcedc1f264fef328f993b530c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:52:31 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 13:52:31 2019 -0700","stats":{"files_changed":2,"insertions":87,"deletions":5,"files":["README.md","jc/parsers/arp.py"]},"message":"documentation updates","epoch":1572468751,"epoch_utc":null},{"commit":"9c9823c3b8737b5de08af6278ca74414138e9263","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:29:06 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 13:29:06 2019 -0700","stats":{"files_changed":5,"insertions":16,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-v.out","tests/fixtures/centos-7.7/arp.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/arp-v.out","tests/fixtures/ubuntu-18.04/arp.out"]},"message":"add arp testfiles","epoch":1572467346,"epoch_utc":null},{"commit":"cf8d13030bf67261a986c0f80fa20ec0e37a743a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:22:12 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 13:22:12 2019 -0700","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["README.md"]},"message":"add arp","epoch":1572466932,"epoch_utc":null},{"commit":"1eff69c187ca410ffaec7909bc2532553be1d80c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:21:05 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 13:21:05 2019 -0700","stats":{"files_changed":2,"insertions":17,"deletions":1,"files":["changelog.txt","jc/parsers/arp.py"]},"message":"add documentation","epoch":1572466865,"epoch_utc":null},{"commit":"b10fb77d714b73a10a9bf28b45269b3530e01cee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:12:53 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 13:12:53 2019 -0700","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/arp.py"]},"message":"fixup arp parser","epoch":1572466373,"epoch_utc":null},{"commit":"87cee8b230a06fa270b2e36afb56f337da814c80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:00:05 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 13:00:05 2019 -0700","stats":{"files_changed":2,"insertions":28,"deletions":1,"files":["jc/jc.py","jc/parsers/arp.py"]},"message":"add arp parser","epoch":1572465605,"epoch_utc":null},{"commit":"83ab10d6282e26391bbf6bae5d0d29e040b209f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 12:50:05 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 12:50:05 2019 -0700","stats":{"files_changed":1,"insertions":44,"deletions":34,"files":["jc/__init__.py"]},"message":"documentation update","epoch":1572465005,"epoch_utc":null},{"commit":"d58a6e1d1dc93155255922b65b0af1325439b033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 14:19:04 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 29 14:19:04 2019 -0700","stats":{"files_changed":1,"insertions":13,"deletions":15,"files":["README.md"]},"message":"readme update","epoch":1572383944,"epoch_utc":null},{"commit":"cb46ca5c2776a13c673a44d3e0fbd0661b32af9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 10:27:42 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 29 10:27:42 2019 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]},"message":"readme update","epoch":1572370062,"epoch_utc":null},{"commit":"5528d979f0b45787d68ab79b962371df9acc527b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 09:16:03 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 29 09:16:03 2019 -0700","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["changelog.txt","setup.py"]},"message":"version bump","epoch":1572365763,"epoch_utc":null},{"commit":"ee94a038a61d60db72046d5bcceec58009decb39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 08:58:52 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 29 08:58:52 2019 -0700","stats":{"files_changed":3,"insertions":131,"deletions":0,"files":["tests/test_uname.py","tests/test_uptime.py","tests/test_w.py"]},"message":"add tests","epoch":1572364732,"epoch_utc":null},{"commit":"1d658f7a9fc50873f76985b2fb9de92ada9d5547","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 08:45:11 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 29 08:45:11 2019 -0700","stats":{"files_changed":3,"insertions":265,"deletions":0,"files":["tests/test_netstat.py","tests/test_ps.py","tests/test_route.py"]},"message":"add tests","epoch":1572363911,"epoch_utc":null},{"commit":"392cb44f9b19829a5ceba055e24c7af4d8ac5b3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 07:55:26 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 29 07:55:26 2019 -0700","stats":{"files_changed":80,"insertions":12667,"deletions":0,"files":["runtests.sh","tests/__init__.py","tests/fixtures/centos-7.7/df-h.out","tests/fixtures/centos-7.7/df.out","tests/fixtures/centos-7.7/env.out","tests/fixtures/centos-7.7/free-h.out","tests/fixtures/centos-7.7/free.out","tests/fixtures/centos-7.7/history.out","tests/fixtures/centos-7.7/ifconfig.out","tests/fixtures/centos-7.7/iptables-filter-nv.out","tests/fixtures/centos-7.7/iptables-filter.out","tests/fixtures/centos-7.7/iptables-mangle.out","tests/fixtures/centos-7.7/iptables-nat.out","tests/fixtures/centos-7.7/iptables-raw.out","tests/fixtures/centos-7.7/jobs.out","tests/fixtures/centos-7.7/ls-al.out","tests/fixtures/centos-7.7/ls-alh.out","tests/fixtures/centos-7.7/ls.out","tests/fixtures/centos-7.7/lsblk.out","tests/fixtures/centos-7.7/lsmod.out","tests/fixtures/centos-7.7/lsof-sudo.out","tests/fixtures/centos-7.7/lsof.out","tests/fixtures/centos-7.7/mount.out","tests/fixtures/centos-7.7/netstat-l.out","tests/fixtures/centos-7.7/netstat-p.out","tests/fixtures/centos-7.7/netstat-sudo-lnp.out","tests/fixtures/centos-7.7/netstat.out","tests/fixtures/centos-7.7/ps-axu.out","tests/fixtures/centos-7.7/ps-ef.out","tests/fixtures/centos-7.7/route-vn.out","tests/fixtures/centos-7.7/route.out","tests/fixtures/centos-7.7/uname-a.out","tests/fixtures/centos-7.7/uptime.out","tests/fixtures/centos-7.7/w.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/df-h.out","tests/fixtures/ubuntu-18.04/df.out","tests/fixtures/ubuntu-18.04/env.out","tests/fixtures/ubuntu-18.04/free-h.out","tests/fixtures/ubuntu-18.04/free.out","tests/fixtures/ubuntu-18.04/history.out","tests/fixtures/ubuntu-18.04/ifconfig.out","tests/fixtures/ubuntu-18.04/iptables-filter-nv.out","tests/fixtures/ubuntu-18.04/iptables-filter.out","tests/fixtures/ubuntu-18.04/iptables-mangle.out","tests/fixtures/ubuntu-18.04/iptables-nat.out","tests/fixtures/ubuntu-18.04/iptables-raw.out","tests/fixtures/ubuntu-18.04/jobs.out","tests/fixtures/ubuntu-18.04/ls-al.out","tests/fixtures/ubuntu-18.04/ls-alh.out","tests/fixtures/ubuntu-18.04/ls.out","tests/fixtures/ubuntu-18.04/lsblk.out","tests/fixtures/ubuntu-18.04/lsmod.out","tests/fixtures/ubuntu-18.04/lsof-sudo.out","tests/fixtures/ubuntu-18.04/lsof.out","tests/fixtures/ubuntu-18.04/mount.out","tests/fixtures/ubuntu-18.04/netstat-l.out","tests/fixtures/ubuntu-18.04/netstat-p.out","tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.out","tests/fixtures/ubuntu-18.04/netstat.out","tests/fixtures/ubuntu-18.04/ps-axu.out","tests/fixtures/ubuntu-18.04/ps-ef.out","tests/fixtures/ubuntu-18.04/route-vn.out","tests/fixtures/ubuntu-18.04/route.out","tests/fixtures/ubuntu-18.04/uname-a.out","tests/fixtures/ubuntu-18.04/uptime.out","tests/fixtures/ubuntu-18.04/w.out","tests/test_df.py","tests/test_env.py","tests/test_free.py","tests/test_history.py","tests/test_ifconfig.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_ls.py","tests/test_lsblk.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py"]},"message":"initial add of tests and fixtures","epoch":1572360926,"epoch_utc":null},{"commit":"579bef079cdd7cfa298bc20e052b8eb75b586f5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 07:54:59 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 29 07:54:59 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/netstat.py"]},"message":"move global output variable inside function","epoch":1572360899,"epoch_utc":null},{"commit":"0691cfcab3f5f91908e06ec906d57e548d4e7a1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 26 18:49:43 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 26 18:49:43 2019 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["changelog.txt"]},"message":"changelog fix","epoch":1572140983,"epoch_utc":null},{"commit":"db29c7c186601fd4596d3eb121b37100601af907","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 26 18:49:13 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 26 18:49:13 2019 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","jc/parsers/netstat.py"]},"message":"documentation fixes","epoch":1572140953,"epoch_utc":null},{"commit":"fb1e03637514b5ab02fd4c5df1db8b3cbacdd531","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 20:27:03 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 20:27:03 2019 -0700","stats":{"files_changed":1,"insertions":14,"deletions":10,"files":["README.md"]},"message":"formatting","epoch":1572060423,"epoch_utc":null},{"commit":"c3eaf59836538f4ab4c745e87b70115b4a4c5421","merge":"ea0cf0a c9849ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 19:43:24 2019 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Oct 25 19:43:24 2019 -0700","message":"Merge pull request #5 from kellyjonbrazil/dev\n\nDev v1.0.1","epoch":1572057804,"epoch_utc":null},{"commit":"c9849ce0db1f864d33739f8f6f942bf5672bc3b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 19:41:35 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 19:41:35 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]},"message":"changelog update","epoch":1572057695,"epoch_utc":null},{"commit":"d3c89a3092973a7a8765463fff41c2469ed675cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 19:27:02 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 19:27:02 2019 -0700","stats":{"files_changed":1,"insertions":11,"deletions":9,"files":["jc/parsers/uname.py"]},"message":"check for enough info to parse","epoch":1572056822,"epoch_utc":null},{"commit":"a3d43f27f7bb0835b3593b7c303fe0ee8d896a58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 18:25:33 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 18:25:33 2019 -0700","stats":{"files_changed":1,"insertions":12,"deletions":10,"files":["jc/parsers/uptime.py"]},"message":"fix odd uptime text parsing","epoch":1572053133,"epoch_utc":null},{"commit":"f4d9c1b699fa30bd297a40ccf3d5f6e7ba3d4253","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 17:16:02 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 17:16:02 2019 -0700","stats":{"files_changed":1,"insertions":8,"deletions":4,"files":["jc/parsers/uptime.py"]},"message":"fix uptime for minutes and hours long uptime","epoch":1572048962,"epoch_utc":null},{"commit":"de647bba4aff84f7b513cf7f6fec8d3933b0d9da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 16:14:32 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 16:14:32 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"documentation update","epoch":1572045272,"epoch_utc":null},{"commit":"d7913070315e5e0c89006942250aaf37e9e3e18e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 16:12:45 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 16:12:45 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"documentation update","epoch":1572045165,"epoch_utc":null},{"commit":"1a4fc204e21f1555ae67c3147322c8d73fab630b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 16:09:31 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 16:09:31 2019 -0700","stats":{"files_changed":2,"insertions":10,"deletions":1,"files":["README.md","changelog.txt"]},"message":"Documentation update","epoch":1572044971,"epoch_utc":null},{"commit":"0328e14c7c65a330093faa52fe48dae6cb173e42","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 16:05:34 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 16:05:34 2019 -0700","stats":{"files_changed":1,"insertions":7,"deletions":0,"files":["jc/jc.py"]},"message":"handle ctrl-c gracefully","epoch":1572044734,"epoch_utc":null},{"commit":"1acc4d6c29d136e286f82d607c4a3a59e2680b68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 15:52:53 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 15:52:53 2019 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/uptime.py"]},"message":"fix uptime parsing for short uptimes","epoch":1572043973,"epoch_utc":null},{"commit":"27245590ce28be933f1a55db4ee6b24783f4b63d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 15:40:53 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 15:40:53 2019 -0700","stats":{"files_changed":1,"insertions":12,"deletions":20,"files":["jc/parsers/jobs.py"]},"message":"remove integers","epoch":1572043253,"epoch_utc":null},{"commit":"7ca2a4bdb939293e8d7364f8901ad1fd6d3ee808","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 15:39:48 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 15:39:48 2019 -0700","stats":{"files_changed":5,"insertions":182,"deletions":201,"files":["README.md","changelog.txt","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/netstat.py"]},"message":"remove integer values","epoch":1572043188,"epoch_utc":null},{"commit":"5f1ec6734874651bee595961edf1fafaf5acf001","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 14:58:15 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 14:58:15 2019 -0700","stats":{"files_changed":10,"insertions":473,"deletions":456,"files":["README.md","jc/parsers/df.py","jc/parsers/history.py","jc/parsers/iptables.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/w.py"]},"message":"lower() headers","epoch":1572040695,"epoch_utc":null},{"commit":"7e44c4278a75c7223d99200023160e8d77fde54d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:55:38 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 10:55:38 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/jobs.py"]},"message":"formatting","epoch":1572026138,"epoch_utc":null},{"commit":"eda726c4a3864008e2f700374b679ae68a965ef8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:55:26 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 10:55:26 2019 -0700","stats":{"files_changed":1,"insertions":80,"deletions":1,"files":["jc/parsers/ifconfig.py"]},"message":"documentation update","epoch":1572026126,"epoch_utc":null},{"commit":"5f8e70d73054f1a106c0e75eee621bc0cefd1c6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:55:09 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 10:55:09 2019 -0700","stats":{"files_changed":9,"insertions":20,"deletions":22,"files":["changelog.txt","jc/parsers/df.py","jc/parsers/free.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/w.py"]},"message":"convert headers to lowercase","epoch":1572026109,"epoch_utc":null},{"commit":"25b90546c652cafa9409f02bae1654cb523add88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:39:05 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 10:39:05 2019 -0700","stats":{"files_changed":3,"insertions":14,"deletions":9,"files":["README.md","changelog.txt","jc/parsers/df.py"]},"message":"change 'Use%' to 'Use_percent'","epoch":1572025145,"epoch_utc":null},{"commit":"75c084153845757e22c149ea4ae7909d42ec7118","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:32:54 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 10:32:54 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]},"message":"changelog update","epoch":1572024774,"epoch_utc":null},{"commit":"5b532b9b71fdb9de575da0af9b7989ac537877c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:31:03 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 10:31:03 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/parsers/lsof.py"]},"message":"minor cleanup","epoch":1572024663,"epoch_utc":null},{"commit":"8c7b3193d131411f8766508fc27b2a6589bba1f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:28:19 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 10:28:19 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/history.py"]},"message":"documentation change","epoch":1572024499,"epoch_utc":null},{"commit":"0897c96ef3c180a1707e8f56c545f59b3a4e0672","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:22:23 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 10:22:23 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/lsof.py"]},"message":"formatting","epoch":1572024143,"epoch_utc":null},{"commit":"57d0ab2ed7f444862546da17cbbe8f8ce67bca8c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:22:10 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 10:22:10 2019 -0700","stats":{"files_changed":2,"insertions":9,"deletions":4,"files":["README.md","jc/parsers/w.py"]},"message":"change LOGIN@ to LOGIN_AT","epoch":1572024130,"epoch_utc":null},{"commit":"a07d9a0e4bb76d369b4a9bf0d77c7590dc3c2861","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:04:29 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 10:04:29 2019 -0700","stats":{"files_changed":2,"insertions":22,"deletions":13,"files":["README.md","jc/parsers/lsof.py"]},"message":"change SIZE/OFF key to SIZE_OFF","epoch":1572023069,"epoch_utc":null},{"commit":"b3996cb4dfed908d71b292dc0b0136c6675351e6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 09:54:42 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 09:54:42 2019 -0700","stats":{"files_changed":2,"insertions":14,"deletions":10,"files":["README.md","jc/parsers/lsblk.py"]},"message":"change MAJ:MIN key to MAJ_MIN","epoch":1572022482,"epoch_utc":null},{"commit":"4fa88c1ba38b34f9750625458c465d66f6531bc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 09:53:44 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 09:53:44 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/history.py"]},"message":"clear out non-ascii chars from data","epoch":1572022424,"epoch_utc":null},{"commit":"c8c5564b29588094721949b96bff1e623437835d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 09:46:03 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 09:46:03 2019 -0700","stats":{"files_changed":2,"insertions":6,"deletions":3,"files":["README.md","jc/parsers/free.py"]},"message":"change buff/cache key to buff_cache","epoch":1572021963,"epoch_utc":null},{"commit":"6d047486d9f577bc04d79af839f5eef9657a9d43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:53:56 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 24 17:53:56 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"doc fix","epoch":1571964836,"epoch_utc":null},{"commit":"42bdc058141c4a3ac6f2c8211f9c990590b1b5cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:41:51 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 24 17:41:51 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"changelog fix","epoch":1571964111,"epoch_utc":null},{"commit":"85bfb688862e78d5879df6973b88ba8023fa6086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:33:42 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 24 17:33:42 2019 -0700","stats":{"files_changed":2,"insertions":15,"deletions":10,"files":["README.md","jc/parsers/history.py"]},"message":"history parser fixes","epoch":1571963622,"epoch_utc":null},{"commit":"08ec21556b553cd7e64932d68e01ba8ff3b0f210","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:12:27 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 24 17:12:27 2019 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/w.py"]},"message":"formatting","epoch":1571962347,"epoch_utc":null},{"commit":"320929bf2595026d32b80b80c3e4878db9cf083f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:11:17 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 24 17:11:17 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/env.py"]},"message":"documentation update","epoch":1571962277,"epoch_utc":null},{"commit":"41cd489c34502c42602bf64086670ba3b2b8e14b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:09:32 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 24 17:09:32 2019 -0700","stats":{"files_changed":5,"insertions":126,"deletions":0,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/history.py","jc/parsers/uptime.py"]},"message":"add history and uptime parsers","epoch":1571962172,"epoch_utc":null},{"commit":"f101d881a16e662e883818749d48e96858fba853","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 16:06:55 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 24 16:06:55 2019 -0700","stats":{"files_changed":4,"insertions":78,"deletions":3,"files":["README.md","jc/jc.py","jc/parsers/w.py","setup.py"]},"message":"add w parser","epoch":1571958415,"epoch_utc":null},{"commit":"fa7466022bb8947c1bbf9f7b01aa4d92300a8992","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 15:54:31 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 24 15:54:31 2019 -0700","stats":{"files_changed":3,"insertions":28,"deletions":56,"files":["README.md","changelog.txt","jc/parsers/env.py"]},"message":"fix env parser","epoch":1571957671,"epoch_utc":null},{"commit":"ea0cf0acf22585fbf8828841cf50155636eae82f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 09:48:35 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 24 09:48:35 2019 -0700","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/lsof.py"]},"message":"documentation update","epoch":1571935715,"epoch_utc":null},{"commit":"e7921b65f5a250c10b08f78939f74968047af430","merge":"393e8bc 2cc1b1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 18:41:55 2019 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Oct 23 18:41:55 2019 -0700","message":"Merge pull request #4 from kellyjonbrazil/dev\n\nDev v0.9.1","epoch":1571881315,"epoch_utc":null},{"commit":"2cc1b1bd5451f31d71b0e2236bdee0ce2b25b5d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 18:39:24 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 18:39:24 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"version bump","epoch":1571881164,"epoch_utc":null},{"commit":"58ae976db0165730a75dd7450c698d2727a354ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 18:30:55 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 18:30:55 2019 -0700","stats":{"files_changed":3,"insertions":113,"deletions":4,"files":["README.md","jc/parsers/lsmod.py","setup.py"]},"message":"documentation update","epoch":1571880655,"epoch_utc":null},{"commit":"66772392ae78ef394e22070b127416b1d5b01332","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 18:04:54 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 18:04:54 2019 -0700","stats":{"files_changed":3,"insertions":32,"deletions":0,"files":["changelog.txt","jc/jc.py","jc/parsers/lsmod.py"]},"message":"add lsmod parser","epoch":1571879094,"epoch_utc":null},{"commit":"29c47c03a64f9c6b0f44d34be5449396654849b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 17:37:25 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 17:37:25 2019 -0700","stats":{"files_changed":3,"insertions":134,"deletions":2,"files":["README.md","changelog.txt","jc/parsers/lsof.py"]},"message":"documentation update","epoch":1571877445,"epoch_utc":null},{"commit":"91eb9a4d13e9254bd5bbde931196904c1947a28e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 17:27:23 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 17:27:23 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsof.py"]},"message":"use None instead of --","epoch":1571876843,"epoch_utc":null},{"commit":"a1a3de32ec14d6ef433e334b9694856698c26d41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 17:22:25 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 17:22:25 2019 -0700","stats":{"files_changed":2,"insertions":59,"deletions":0,"files":["jc/jc.py","jc/parsers/lsof.py"]},"message":"add lsof parser","epoch":1571876545,"epoch_utc":null},{"commit":"9c47fd05bf716c2e18ebf4da41b1a46b972b2518","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 14:11:13 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 14:11:13 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/jobs.py"]},"message":"doco fix","epoch":1571865073,"epoch_utc":null},{"commit":"649c0aa7c157f87691cc8eeac64c747e81f63594","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 14:10:10 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 14:10:10 2019 -0700","stats":{"files_changed":2,"insertions":76,"deletions":1,"files":["README.md","jc/parsers/jobs.py"]},"message":"add documentation","epoch":1571865010,"epoch_utc":null},{"commit":"3db758764e50666e5ae40de8d89180de2ef5bc28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 14:05:47 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 14:05:47 2019 -0700","stats":{"files_changed":3,"insertions":83,"deletions":0,"files":["changelog.txt","jc/jc.py","jc/parsers/jobs.py"]},"message":"add jobs parser","epoch":1571864747,"epoch_utc":null},{"commit":"802f1510eb6d621f9c760f28b83f16a4781b8d93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 10:27:05 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 10:27:05 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"]},"message":"tighten if statements","epoch":1571851625,"epoch_utc":null},{"commit":"56901788dee154890e70269ad48d4b22bb8c5437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 09:51:29 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 09:51:29 2019 -0700","stats":{"files_changed":1,"insertions":30,"deletions":19,"files":["jc/jc.py"]},"message":"stop blocking when no pipe and enhance help text","epoch":1571849489,"epoch_utc":null},{"commit":"679ae6d5dc7af26240dc00d8bc6499950f81d457","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 09:20:11 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 09:20:11 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump","epoch":1571847611,"epoch_utc":null},{"commit":"b15c8c352a87a9b3b1dece28af0287ef71ca02d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 08:46:54 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 08:46:54 2019 -0700","stats":{"files_changed":1,"insertions":14,"deletions":16,"files":["jc/parsers/iptables.py"]},"message":"simplify state variables","epoch":1571845614,"epoch_utc":null},{"commit":"393e8bc56041a4be01b6c0b2f98895aa330afd04","merge":"e3750b4 976fd7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 17:26:40 2019 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Oct 22 17:26:40 2019 -0700","message":"Merge pull request #3 from kellyjonbrazil/dev\n\nDev v0.8.1","epoch":1571790400,"epoch_utc":null},{"commit":"976fd7d9bd49190a8b28ea5acf5af8979cdec537","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 17:24:56 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 17:24:56 2019 -0700","stats":{"files_changed":1,"insertions":27,"deletions":28,"files":["README.md"]},"message":"readme update","epoch":1571790296,"epoch_utc":null},{"commit":"d8337870cad042cdcc6a4ff3c61f756c3430fa96","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 17:21:00 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 17:21:00 2019 -0700","stats":{"files_changed":1,"insertions":27,"deletions":28,"files":["jc/parsers/df.py"]},"message":"update documentation","epoch":1571790060,"epoch_utc":null},{"commit":"39a8aec77f5134b5b958e3f679910a1c3512e13a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 17:15:02 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 17:15:02 2019 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/parsers/ls.py","setup.py"]},"message":"v0.8.1 build","epoch":1571789702,"epoch_utc":null},{"commit":"306d539b6bbfb272c7b955e4847adc3a6b4afa5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 16:50:01 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 16:50:01 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"readme update","epoch":1571788201,"epoch_utc":null},{"commit":"f3087b8a8ede88834285bb5d0655fc96341c174c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 16:40:27 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 16:40:27 2019 -0700","stats":{"files_changed":3,"insertions":635,"deletions":1,"files":["README.md","changelog.txt","jc/parsers/iptables.py"]},"message":"update readme and formatting","epoch":1571787627,"epoch_utc":null},{"commit":"414c2ecef88af2d2c098e6acfb507a5fd7bb8eda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 16:32:55 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 16:32:55 2019 -0700","stats":{"files_changed":1,"insertions":6,"deletions":10,"files":["jc/parsers/iptables.py"]},"message":"fix iptables parser","epoch":1571787175,"epoch_utc":null},{"commit":"776ef2d1be81180b8b295fbc587446a326f2f7a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 15:42:29 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 15:42:29 2019 -0700","stats":{"files_changed":2,"insertions":61,"deletions":0,"files":["jc/jc.py","jc/parsers/iptables.py"]},"message":"add iptables parser","epoch":1571784149,"epoch_utc":null},{"commit":"9ac57469967443b195be09d580beaa76ce0e1095","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 13:28:15 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 13:28:15 2019 -0700","stats":{"files_changed":4,"insertions":64,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/uname.py"]},"message":"add uname parser","epoch":1571776095,"epoch_utc":null},{"commit":"a3e55d97c0fd4397b42e9146afb0ba9558274fdb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 12:54:41 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 12:54:41 2019 -0700","stats":{"files_changed":4,"insertions":127,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/mount.py"]},"message":"add mount parser","epoch":1571774081,"epoch_utc":null},{"commit":"b15227e7ba5377e5fb6799d1b9e4ed5a11c6d92f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:55:11 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 11:55:11 2019 -0700","stats":{"files_changed":4,"insertions":125,"deletions":0,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/lsblk.py"]},"message":"add lsblk parser","epoch":1571770511,"epoch_utc":null},{"commit":"ec3d1f84ceccb492b4c968938714fafa2e6a6321","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:26:58 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 11:26:58 2019 -0700","stats":{"files_changed":1,"insertions":24,"deletions":2,"files":["jc/parsers/free.py"]},"message":"fix free parser","epoch":1571768818,"epoch_utc":null},{"commit":"753d5fd9fe5a8e4b67b1a0ec018a9f811e27f8bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:17:21 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 11:17:21 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"readme update","epoch":1571768241,"epoch_utc":null},{"commit":"73a0d70c9294ad392792e690a7bfbcc4f51b0a5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:15:44 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 11:15:44 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"readme update","epoch":1571768144,"epoch_utc":null},{"commit":"c2c189f3e6e900e5f3d35df9a9b9d033448baff6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:14:19 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 11:14:19 2019 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["README.md"]},"message":"readme update","epoch":1571768059,"epoch_utc":null},{"commit":"36bc55a3109278d663b675a09829200f5474c3d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:11:41 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 11:11:41 2019 -0700","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["README.md"]},"message":"fix df","epoch":1571767901,"epoch_utc":null},{"commit":"a023001cd350e320ce30f47af214ed7a9bb43185","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:10:11 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 11:10:11 2019 -0700","stats":{"files_changed":6,"insertions":226,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/df.py","jc/parsers/env.py","jc/parsers/free.py"]},"message":"add df, env, and free parsers","epoch":1571767811,"epoch_utc":null},{"commit":"e3750b49628794fd4d563013b1f3a7471c27ce68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 07:40:42 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 07:40:42 2019 -0700","stats":{"files_changed":2,"insertions":83,"deletions":51,"files":["README.md","jc/__init__.py"]},"message":"documentation enhancements","epoch":1571755242,"epoch_utc":null},{"commit":"b5ea08e55bfd22c9da5ba73c124791012df119a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 18:22:51 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 18:22:51 2019 -0700","stats":{"files_changed":4,"insertions":20,"deletions":20,"files":["README.md","changelog.txt","jc/parsers/netstat.py","setup.py"]},"message":"fix transport protocol","epoch":1571707371,"epoch_utc":null},{"commit":"8e71b8e3522b9b1af4d869a0854223eb5c300b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 18:11:51 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 18:11:51 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"fix jq example","epoch":1571706711,"epoch_utc":null},{"commit":"4c8610c54ff4b643237d8f0e4c5781c277fc39f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:59:32 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 17:59:32 2019 -0700","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["changelog.txt","setup.py"]},"message":"fixed build","epoch":1571705972,"epoch_utc":null},{"commit":"c8f886dc8fcdc58f8471d68c3d583200d0ea2f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:56:53 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 17:56:53 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"]},"message":"fix example","epoch":1571705813,"epoch_utc":null},{"commit":"4cfc2d22b3f9fd6f0cde8ad206edd7fe260b3071","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:38:40 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 17:38:40 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"update changelog","epoch":1571704720,"epoch_utc":null},{"commit":"59238c85408117748e78c5e87157381a828f3782","merge":"d54d906 30080c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:36:33 2019 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Oct 21 17:36:33 2019 -0700","message":"Merge pull request #2 from kellyjonbrazil/dev\n\nDev v0.6.2","epoch":1571704593,"epoch_utc":null},{"commit":"30080c01659cf611666876b7b063b7b329822352","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:26:00 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 17:26:00 2019 -0700","stats":{"files_changed":1,"insertions":35,"deletions":35,"files":["README.md"]},"message":"reorder parsers","epoch":1571703960,"epoch_utc":null},{"commit":"fab80bb3b4a1897da29d818e98e9b80ce45443dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:20:12 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 17:20:12 2019 -0700","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["README.md","setup.py"]},"message":"readme update","epoch":1571703612,"epoch_utc":null},{"commit":"a9f2df805421754afb8e8adbcac7f2d3bd06c9ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 14:27:26 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 14:27:26 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"move parsed_line var lower","epoch":1571693246,"epoch_utc":null},{"commit":"1d110be6cb25d169ae0dde6532cbcdf05d93d42f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 14:13:31 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 14:13:31 2019 -0700","stats":{"files_changed":3,"insertions":13,"deletions":1,"files":["README.md","changelog.txt","setup.py"]},"message":"update doco","epoch":1571692411,"epoch_utc":null},{"commit":"be81b5e1ed93eb65e5dbed4f52905439cde86f62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 13:47:22 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 13:47:22 2019 -0700","stats":{"files_changed":1,"insertions":112,"deletions":121,"files":["README.md"]},"message":"readme update","epoch":1571690842,"epoch_utc":null},{"commit":"5f88f7d8a071306be92cbfb65d6d62c5a68159f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 13:41:53 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 13:41:53 2019 -0700","stats":{"files_changed":1,"insertions":110,"deletions":137,"files":["jc/parsers/netstat.py"]},"message":"netstat cleanup","epoch":1571690513,"epoch_utc":null},{"commit":"e57c7cc8ef3102cc41dee4ea5fd33d40ba666491","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 13:23:29 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 13:23:29 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"change output from dict to list","epoch":1571689409,"epoch_utc":null},{"commit":"b216627c1073ea645029e341b4d3376601e5468e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 13:19:00 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 13:19:00 2019 -0700","stats":{"files_changed":1,"insertions":19,"deletions":116,"files":["jc/parsers/netstat.py"]},"message":"flatten netstat output","epoch":1571689140,"epoch_utc":null},{"commit":"6e925eab131024b5746d870cbd47e2791acf18bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 13:07:30 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 13:07:30 2019 -0700","stats":{"files_changed":1,"insertions":27,"deletions":18,"files":["jc/jc.py"]},"message":"clean up arg parsing","epoch":1571688450,"epoch_utc":null},{"commit":"d54d906c571b4683f01cab2eca63ae5f0725a87b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 19:03:11 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 19:03:11 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update readme","epoch":1571450591,"epoch_utc":null},{"commit":"0040febbf099ed8ab35f6ee343750fcf89f2e739","merge":"8073d15 e416c77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 18:57:32 2019 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Oct 18 18:57:32 2019 -0700","message":"Merge pull request #1 from kellyjonbrazil/dev\n\nDev v0.5.5","epoch":1571450252,"epoch_utc":null},{"commit":"e416c77bed1267254da972b0f95b7ff1d43fccef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 18:56:26 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 18:56:26 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"version bump","epoch":1571450186,"epoch_utc":null},{"commit":"9181d242aaed5219bb35fde01d672be88949cceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 18:47:20 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 18:47:20 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"bump version","epoch":1571449640,"epoch_utc":null},{"commit":"d6f94c53a4df84fb75554605477e49536a809dc2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 18:46:25 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 18:46:25 2019 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"]},"message":"fix blank output case in ls","epoch":1571449585,"epoch_utc":null},{"commit":"a9294f32a00709737d0b82ff434a311e75ad0bed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 18:40:56 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 18:40:56 2019 -0700","stats":{"files_changed":3,"insertions":39,"deletions":42,"files":["changelog.txt","jc/parsers/ls.py","setup.py"]},"message":"ls fixes","epoch":1571449256,"epoch_utc":null},{"commit":"4d93b38fe47329e3175025878e87f7c963061f98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 14:18:34 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 14:18:34 2019 -0700","stats":{"files_changed":2,"insertions":90,"deletions":1,"files":["README.md","jc/parsers/route.py"]},"message":"add route documentation","epoch":1571433514,"epoch_utc":null},{"commit":"77b74c550795f96b808e48a9b0bfd1a8af9866f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:59:30 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 13:59:30 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"add route parser","epoch":1571432370,"epoch_utc":null},{"commit":"51a1d3e6f48cf7084267be4092f0dd3f778dcef3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:51:36 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 13:51:36 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump","epoch":1571431896,"epoch_utc":null},{"commit":"2eba30422b44f648c7356a44cbff7416c6648f19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:43:49 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 13:43:49 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"]},"message":"skip first line","epoch":1571431429,"epoch_utc":null},{"commit":"43ed09ce5ba53261dfd7ef50a2e187cb524c416c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:38:11 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 13:38:11 2019 -0700","stats":{"files_changed":3,"insertions":25,"deletions":1,"files":["jc/jc.py","jc/parsers/route.py","setup.py"]},"message":"add route parser","epoch":1571431091,"epoch_utc":null},{"commit":"367ab54f94bf7f456377ec9d20f8daf99dbdc1ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:34:28 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 13:34:28 2019 -0700","stats":{"files_changed":3,"insertions":99,"deletions":2,"files":["README.md","changelog.txt","jc/parsers/ps.py"]},"message":"formatting","epoch":1571430868,"epoch_utc":null},{"commit":"4f552e370e656cc1882a7dae231475a016f8aa14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:26:24 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 13:26:24 2019 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/ps.py"]},"message":"acknowledgment","epoch":1571430384,"epoch_utc":null},{"commit":"7571139f7980f6e74c29d46971881e82ab0f04bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:20:38 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 13:20:38 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"bump version","epoch":1571430038,"epoch_utc":null},{"commit":"8ec1bec31711d2ef487da3e4a29a842d98d77626","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:19:39 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 13:19:39 2019 -0700","stats":{"files_changed":4,"insertions":29,"deletions":7,"files":["changelog.txt","jc/__init__.py","jc/jc.py","jc/parsers/ps.py"]},"message":"add ps parser","epoch":1571429979,"epoch_utc":null},{"commit":"c04895407f203aa0a3a080d5242faf8f6889ae41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 12:57:02 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 12:57:02 2019 -0700","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["changelog.txt","jc/parsers/netstat.py"]},"message":"ubuntu fixes","epoch":1571428622,"epoch_utc":null},{"commit":"cec73d61310591e4890605f61dc5c1bef5808ec4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 09:57:22 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 09:57:22 2019 -0700","stats":{"files_changed":4,"insertions":24,"deletions":16,"files":["jc/jc.py","jc/parsers/ifconfig.py","jc/parsers/ls.py","jc/parsers/netstat.py"]},"message":"linting","epoch":1571417842,"epoch_utc":null},{"commit":"756c2bc9acd60111281b76085a40778e51ca06cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 09:57:10 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 09:57:10 2019 -0700","stats":{"files_changed":1,"insertions":20,"deletions":3,"files":["README.md"]},"message":"add acknowledgments","epoch":1571417830,"epoch_utc":null},{"commit":"084048987c7afc6516f69e68d37d73b2402dc7f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 17:59:46 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 17:59:46 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"changelog update","epoch":1571360386,"epoch_utc":null},{"commit":"02d97394dd76a8782e6e7d3f8a85e1aed05e796b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 17:28:14 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 17:28:14 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update","epoch":1571358494,"epoch_utc":null},{"commit":"177f948f9740e3e33449b04b9136a346c9a2c265","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 16:11:55 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 16:11:55 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version update","epoch":1571353915,"epoch_utc":null},{"commit":"c2b013150ec1f1b1ab7d416f1aa8a62165a5bb95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 15:51:39 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 15:51:39 2019 -0700","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["changelog.txt"]},"message":"add changelog","epoch":1571352699,"epoch_utc":null},{"commit":"0bec67c29ce5d965271440da41a0c4b4c2a1f0fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 15:39:12 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 15:39:12 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/netstat.py"]},"message":"double quotes to single quotes","epoch":1571351952,"epoch_utc":null},{"commit":"8073d15fe11546a17cacd81409e255bb8aecd602","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 15:03:32 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 15:03:32 2019 -0700","stats":{"files_changed":1,"insertions":12,"deletions":4,"files":["README.md"]},"message":"readme update","epoch":1571349812,"epoch_utc":null},{"commit":"3b74afc39e58f801e75b7105e521c1469d30f991","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 15:00:42 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 15:00:42 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["pypi-upload.sh"]},"message":"upload script","epoch":1571349642,"epoch_utc":null},{"commit":"ed320cf0f4bb11cee1e69e9dc9176ba109df1b86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 13:04:34 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 13:04:34 2019 -0700","stats":{"files_changed":3,"insertions":22,"deletions":22,"files":["README.md","jc/parsers/netstat.py","setup.py"]},"message":"change netstat pid field to integer","epoch":1571342674,"epoch_utc":null},{"commit":"021b6924e24e1cf0f971246244b174cd3181c0a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 12:15:27 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 12:15:27 2019 -0700","stats":{"files_changed":2,"insertions":254,"deletions":5,"files":["README.md","jc/parsers/netstat.py"]},"message":"documentation updates","epoch":1571339727,"epoch_utc":null},{"commit":"5fb21b077662f1cb172741945ba5036e5a280638","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 12:09:05 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 12:09:05 2019 -0700","stats":{"files_changed":1,"insertions":0,"deletions":8,"files":["jc/parsers/netstat.py"]},"message":"remove debug print statements","epoch":1571339345,"epoch_utc":null},{"commit":"7b8540ae2a60f2400fe672a022ee00d1415a3500","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 12:07:01 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 12:07:01 2019 -0700","stats":{"files_changed":1,"insertions":19,"deletions":7,"files":["jc/parsers/netstat.py"]},"message":"netstat fixes","epoch":1571339221,"epoch_utc":null},{"commit":"a5e039d4c2e07d52a0797833685c562ab285b49b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 10:54:37 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 10:54:37 2019 -0700","stats":{"files_changed":1,"insertions":17,"deletions":7,"files":["jc/parsers/netstat.py"]},"message":"netstat debugging","epoch":1571334877,"epoch_utc":null},{"commit":"7071f60a302b7aefb8fb312699b0abec25548986","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 09:05:49 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 09:05:49 2019 -0700","stats":{"files_changed":1,"insertions":66,"deletions":18,"files":["jc/parsers/netstat.py"]},"message":"netstat mvp","epoch":1571328349,"epoch_utc":null},{"commit":"0de1dff0253eb46b7336103f62f888940406ccc0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 08:09:19 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 08:09:19 2019 -0700","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["jc/parsers/netstat.py"]},"message":"fix ands","epoch":1571324959,"epoch_utc":null},{"commit":"b3c52eb1ccf82e899dda62c332c0b217d80eb4c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 08:03:56 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 08:03:56 2019 -0700","stats":{"files_changed":2,"insertions":112,"deletions":40,"files":["jc/parsers/ifconfig.py","jc/parsers/netstat.py"]},"message":"add netstat parser","epoch":1571324636,"epoch_utc":null},{"commit":"366c5dbc010869bdb1d3b9d852e10510bd5c266f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 17:36:50 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 17:36:50 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/jc.py"]},"message":"fix help message","epoch":1571272610,"epoch_utc":null},{"commit":"a3ee02514b5fbd43a38ddf515a4aad49bb4e161a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 17:23:18 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 17:23:18 2019 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/jc.py"]},"message":"fix imports and module names","epoch":1571271798,"epoch_utc":null},{"commit":"46ad1269cb58dc6f064d17eb0b04da62d8fd5fce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 17:15:43 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 17:15:43 2019 -0700","stats":{"files_changed":2,"insertions":4,"deletions":3,"files":["jc/jc.py","setup.py"]},"message":"packaging fixes","epoch":1571271343,"epoch_utc":null},{"commit":"7234afe568818678585ac423649a0ccce0f45d68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 16:22:52 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 16:22:52 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"entrypoint fix","epoch":1571268172,"epoch_utc":null},{"commit":"caf480c63aacb518805d48fba0fd454959d11023","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 16:01:34 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 16:01:34 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"module fix","epoch":1571266894,"epoch_utc":null},{"commit":"62851b48d5e5cd673e630a28996e1c24cc45aa58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 15:54:20 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 15:54:20 2019 -0700","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/jc.py","setup.py"]},"message":"fix modules","epoch":1571266460,"epoch_utc":null},{"commit":"46d6da92f0e196e150ab9dd44b1ba290c950905b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 15:08:06 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 15:08:06 2019 -0700","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["jc/{jc => jc.py}","setup.py"]},"message":"fix entry_points","epoch":1571263686,"epoch_utc":null},{"commit":"e572b2edfa993c5049ef3caeda7a8e4797f0c751","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 15:03:34 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 15:03:34 2019 -0700","stats":{"files_changed":2,"insertions":37,"deletions":29,"files":["jc/jc","setup.py"]},"message":"use entry_points instead of scripts","epoch":1571263414,"epoch_utc":null},{"commit":"72c69e7de59029d623c9819dda6aa8cae91bc419","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 09:39:04 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 09:39:04 2019 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/jc"]},"message":"fix package paths","epoch":1571243944,"epoch_utc":null},{"commit":"4d1565071e5cf7c38e026e08db8f4d2e79969691","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 09:03:05 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 09:03:05 2019 -0700","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["jc/{jc.py => jc}","setup.py"]},"message":"rename jc.py to jc","epoch":1571241785,"epoch_utc":null},{"commit":"3652e51693d7ba829f4699fd80de20856941d82f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 08:27:24 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 08:27:24 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"fix requirements","epoch":1571239644,"epoch_utc":null},{"commit":"49ce9f13e817266659400a8c19f5b078a48589df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 15 18:03:51 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 15 18:03:51 2019 -0700","stats":{"files_changed":3,"insertions":17,"deletions":20,"files":["jc/jc.py","jc/parsers/__init__.py","setup.py"]},"message":"setup updates","epoch":1571187831,"epoch_utc":null},{"commit":"e83170b7ec7ed2123bfde69be263b6034c7afa53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 15 16:28:42 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 15 16:28:42 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["README.md"]},"message":"readme update","epoch":1571182122,"epoch_utc":null},{"commit":"ffb6eb754a87baad5fb0558e30a5bca1a9b9e0a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 15 16:10:24 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 15 16:10:24 2019 -0700","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/parsers/__init__.py","setup.py"]},"message":"setup fixes","epoch":1571181024,"epoch_utc":null},{"commit":"2597a18d95d01109d2250487b7550a501edaf77b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 15 15:32:23 2019 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Oct 15 15:32:23 2019 -0700","stats":{"files_changed":1,"insertions":82,"deletions":0,"files":["README.md"]},"message":"readme update","epoch":1571178743,"epoch_utc":null},{"commit":"3e576250b1bfe1c62c556f2fa0425103b0ede1f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 15 15:06:09 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 15 15:06:09 2019 -0700","stats":{"files_changed":11,"insertions":429,"deletions":0,"files":[".gitignore","LICENSE.md","README.md","build-package.sh","jc/__init__.py","jc/jc.py","jc/parsers/__init__.py","jc/parsers/ifconfig.py","jc/parsers/ls.py","jc/parsers/netstat.py","setup.py"]},"message":"First commit","epoch":1571177169,"epoch_utc":null}] +[{"commit":"096fffdb79807d34b99985b38df0a3df7f6a86c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 20 10:03:36 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 20 10:03:36 2022 -0400","stats":{"files_changed":2,"insertions":120,"deletions":36,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":78},{"name":"jc/parsers/git_log.py","lines_changed":78}]},"message":"use stat examples","epoch":1650474216,"epoch_utc":null},{"commit":"728d882ed007b3c8b785018874a0eb06e1143b66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 20 09:50:19 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 20 09:50:19 2022 -0400","stats":{"files_changed":2,"insertions":90,"deletions":12,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":51},{"name":"jc/parsers/git_log.py","lines_changed":51}]},"message":"add timestamp docs and examples","epoch":1650473419,"epoch_utc":null},{"commit":"b53e42aca623181aa9bc72194e6eeef1e9a3a237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 20 09:44:42 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 20 09:44:42 2022 -0400","stats":{"files_changed":5,"insertions":29,"deletions":6,"files":["docs/parsers/git_log.md","docs/utils.md","jc/parsers/git_log.py","jc/utils.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":8},{"name":"docs/utils.md","lines_changed":4},{"name":"jc/parsers/git_log.py","lines_changed":14},{"name":"jc/utils.py","lines_changed":7},{"name":"man/jc.1","lines_changed":2}]},"message":"add calculated timestamp","epoch":1650473082,"epoch_utc":null},{"commit":"477329ce5b8f5c2a8e4384ba3f59289fc18c957d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 20 08:26:26 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 20 08:26:26 2022 -0400","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add linefeed to version text","epoch":1650468386,"epoch_utc":null},{"commit":"283dc4efd55030188f17c7e1dfbc5315103494b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 17:44:15 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 17:44:15 2022 -0400","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["CHANGELOG","jc/cli.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/cli.py","lines_changed":7}]},"message":"add python interpreter version and path to -v and -a output","epoch":1650415455,"epoch_utc":null},{"commit":"d490bbcaa0291a691b95fa5b61807eebb0b088eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 15:26:31 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 15:26:31 2022 -0400","stats":{"files_changed":1,"insertions":26,"deletions":26,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":52}]},"message":"normalize add/update","epoch":1650407191,"epoch_utc":null},{"commit":"f49ddf8e5c5009702155fc62d83c63e3c08c594d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 15:18:04 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 15:18:04 2022 -0400","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":4},{"name":"jc/parsers/git_log.py","lines_changed":4}]},"message":"doc update","epoch":1650406684,"epoch_utc":null},{"commit":"e1e341652b51b823844e76ef7e68f9373a323435","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 15:10:40 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 15:10:40 2022 -0400","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"doc update","epoch":1650406240,"epoch_utc":null},{"commit":"ecda667549137bed5622cca69f2022e7a75ea833","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 15:10:35 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 15:10:35 2022 -0400","stats":{"files_changed":2,"insertions":12,"deletions":8,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":2},{"name":"jc/parsers/git_log.py","lines_changed":18}]},"message":"process integers","epoch":1650406235,"epoch_utc":null},{"commit":"a0d96a188a9f875b2d59625aa97d4f80bba290f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 14:45:20 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 14:45:20 2022 -0400","stats":{"files_changed":2,"insertions":5,"deletions":1,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"doc update","epoch":1650404720,"epoch_utc":null},{"commit":"6c0f0cddfe4dd2d5169f7c55416c6725912557f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 14:43:47 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 14:43:47 2022 -0400","stats":{"files_changed":2,"insertions":14,"deletions":1,"files":["jc/parsers/yaml.py","tests/test_yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":7},{"name":"tests/test_yaml.py","lines_changed":8}]},"message":"fix for datetime objects in yaml files","epoch":1650404627,"epoch_utc":null},{"commit":"c7173ecd89742c8cf8a7bc4a8021baac5c3cd483","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 14:34:53 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 14:34:53 2022 -0400","stats":{"files_changed":1,"insertions":8,"deletions":6,"files":["jc/parsers/git_log.py"],"file_stats":[{"name":"jc/parsers/git_log.py","lines_changed":14}]},"message":"fix mypy issues","epoch":1650404093,"epoch_utc":null},{"commit":"e98240c905394e3ebd6a45fa31b6d432c150afc4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 14:20:44 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 14:20:44 2022 -0400","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/git_log.py"],"file_stats":[{"name":"jc/parsers/git_log.py","lines_changed":8}]},"message":"extend instead of append list","epoch":1650403244,"epoch_utc":null},{"commit":"6cb7e25974b11afe57d7d0e8550b3b1a56b14c67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 13:17:24 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 13:17:24 2022 -0400","stats":{"files_changed":3,"insertions":93,"deletions":1,"files":["README.md","docs/parsers/git_log.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/git_log.md","lines_changed":86},{"name":"man/jc.1","lines_changed":7}]},"message":"add docs","epoch":1650399444,"epoch_utc":null},{"commit":"c37980c05c7fbd4f811ce5fcfcfddaf5f3ab5414","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 13:17:16 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 13:17:16 2022 -0400","stats":{"files_changed":1,"insertions":41,"deletions":7,"files":["jc/parsers/git_log.py"],"file_stats":[{"name":"jc/parsers/git_log.py","lines_changed":48}]},"message":"add stat support","epoch":1650399436,"epoch_utc":null},{"commit":"b5943bd39d776fc4c3b3dea03c0f3d4b6f4bb260","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 10:32:55 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 10:32:55 2022 -0400","stats":{"files_changed":1,"insertions":23,"deletions":10,"files":["jc/parsers/git_log.py"],"file_stats":[{"name":"jc/parsers/git_log.py","lines_changed":33}]},"message":"initial docstring","epoch":1650389575,"epoch_utc":null},{"commit":"49a3a7db3b2b0b292489a41691c9dcbce816cfed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 09:30:38 2022 -0400","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 19 09:30:38 2022 -0400","stats":{"files_changed":2,"insertions":175,"deletions":0,"files":["jc/lib.py","jc/parsers/git_log.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/git_log.py","lines_changed":174}]},"message":"initial git-log parser","epoch":1650385838,"epoch_utc":null},{"commit":"0c55240e9da30ac4293cc324f1094de2abd3da91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 13 10:54:28 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 13 10:54:28 2022 -0700","stats":{"files_changed":3,"insertions":1,"deletions":0,"files":["CHANGELOG","tests/{ => templates}/_test_foo.py","tests/{ => templates}/_test_foo_s.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"tests/{ => templates}/_test_foo.py","lines_changed":0},{"name":"tests/{ => templates}/_test_foo_s.py","lines_changed":0}]},"message":"move test templates to fix test failures on some systems","epoch":1649872468,"epoch_utc":null},{"commit":"f91988aed5499d25acf7a7e87b2b0d0cd37b62af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 12 14:22:06 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 12 14:22:06 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/lib.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":2}]},"message":"iterator -> iterable","epoch":1649798526,"epoch_utc":null},{"commit":"3c3ad9fc6adf865b3814a1f03814d0bc17d1c6bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 12 14:20:58 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 12 14:20:58 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"iterator -> iterable in doc","epoch":1649798458,"epoch_utc":null},{"commit":"291ab79e22a59cb31814e7a5af9dbc9f2ec863e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 12 11:07:34 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 12 11:07:34 2022 -0700","stats":{"files_changed":3,"insertions":24,"deletions":24,"files":["README.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":24},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":22}]},"message":"fix arch linux command","epoch":1649786854,"epoch_utc":null},{"commit":"e6d5892c146762cd41a966adadb77db333d98ace","merge":"c0414e7 dcca7a5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 12 11:02:37 2022 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Apr 12 11:02:37 2022 -0700","message":"Merge pull request #226 from kellyjonbrazil/master\n\nsync to dev","epoch":1649786557,"epoch_utc":null},{"commit":"dcca7a57d558721a61fbba44f07b1d53116827e1","merge":"7138eef 4ee8a69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 12 11:00:51 2022 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Apr 12 11:00:51 2022 -0700","message":"Merge pull request #225 from adrianteri/patch-1\n\nUpdate README","epoch":1649786451,"epoch_utc":null},{"commit":"4ee8a69337b24e199983fe657643abcb0a56a8e6","author":"003","author_email":"adriateri@gmail.com","date":"Tue Apr 12 20:53:39 2022 +0300","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Apr 12 20:53:39 2022 +0300","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"Update README\n\nSpecify the Arch package is in the AUR and NOT in the standard Archlinux repositories.","epoch":1649822019,"epoch_utc":null},{"commit":"c0414e7db7f5d785b72ad616517f2ec63af151a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 17:18:20 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 10 17:18:20 2022 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":8}]},"message":"clean up background tasks","epoch":1649636300,"epoch_utc":null},{"commit":"a419175fe6dffe9c5fd20cfbd82ee552bc82a993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 17:14:34 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 10 17:14:34 2022 -0700","stats":{"files_changed":2,"insertions":34,"deletions":17,"files":["docgen.sh","updatedocs.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":30},{"name":"updatedocs.sh","lines_changed":21}]},"message":"enhance parallelization","epoch":1649636074,"epoch_utc":null},{"commit":"cd6dead034f3c72aebd22afeb2aea6591ae6d94d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 16:54:34 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 10 16:54:34 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"man page update","epoch":1649634874,"epoch_utc":null},{"commit":"45342ea9fea29947d8d90260c7665ffbca612cce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 16:54:22 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 10 16:54:22 2022 -0700","stats":{"files_changed":2,"insertions":16,"deletions":9,"files":["docgen.sh","updatedocs.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":16},{"name":"updatedocs.sh","lines_changed":9}]},"message":"parallelize doc gneration","epoch":1649634862,"epoch_utc":null},{"commit":"585bf0e159c7839869cf3e458938dcc5fa2ceb81","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 10:32:51 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 10 10:32:51 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"xrandr update","epoch":1649611971,"epoch_utc":null},{"commit":"3a860b9babe93d455f68ef21436edf7470d375af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 10:31:13 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 10 10:31:13 2022 -0700","stats":{"files_changed":2,"insertions":7,"deletions":5,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":4},{"name":"jc/parsers/xrandr.py","lines_changed":8}]},"message":"add rotation field","epoch":1649611873,"epoch_utc":null},{"commit":"269180df77f9ff953b07222e8ae790c7e7a8298e","merge":"e85f11c a1afed8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 10:19:50 2022 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Apr 10 10:19:50 2022 -0700","message":"Merge pull request #223 from anekos/fix/support-rotated-devices\n\nFix/support rotated devices","epoch":1649611190,"epoch_utc":null},{"commit":"a1afed8d95e33fbbc618c7b5778a9faeea2f628f","author":"anekos","author_email":"anekos@snca.net","date":"Sun Apr 10 18:19:29 2022 +0900","commit_by":"anekos","commit_by_email":"anekos@snca.net","commit_by_date":"Sun Apr 10 19:53:37 2022 +0900","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["docs/parsers/xrandr.md"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":4}]},"message":"doc update","epoch":1649639969,"epoch_utc":null},{"commit":"e39f150a216e4e184444dfc88a63e0f303e51631","author":"anekos","author_email":"anekos@snca.net","date":"Sun Apr 10 18:12:28 2022 +0900","commit_by":"anekos","commit_by_email":"anekos@snca.net","commit_by_date":"Sun Apr 10 19:53:37 2022 +0900","stats":{"files_changed":3,"insertions":9,"deletions":4,"files":["jc/parsers/xrandr.py","tests/fixtures/generic/xrandr_simple.json","tests/test_xrandr.py"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":4},{"name":"tests/fixtures/generic/xrandr_simple.json","lines_changed":1},{"name":"tests/test_xrandr.py","lines_changed":8}]},"message":"Support rotated devices","epoch":1649639548,"epoch_utc":null},{"commit":"e85f11c6fcad5461bae612dd5a945c20d300e59a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 4 12:00:41 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 4 12:00:41 2022 -0700","stats":{"files_changed":4,"insertions":12,"deletions":12,"files":["docs/parsers/ini.md","docs/parsers/kv.md","jc/parsers/ini.py","jc/parsers/kv.py"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":6},{"name":"docs/parsers/kv.md","lines_changed":6},{"name":"jc/parsers/ini.py","lines_changed":6},{"name":"jc/parsers/kv.py","lines_changed":6}]},"message":"doc formatting","epoch":1649098841,"epoch_utc":null},{"commit":"49a9d7b07e89696f2e022655d7256b7d6ad4bf7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 4 11:42:16 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 4 11:42:16 2022 -0700","stats":{"files_changed":3,"insertions":12,"deletions":8,"files":["docs/parsers/ini.md","docs/parsers/kv.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":8},{"name":"docs/parsers/kv.md","lines_changed":10},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1649097736,"epoch_utc":null},{"commit":"a2ef9c429e4bb9f70d033511dce77ccdb9013971","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 4 11:38:52 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 4 11:38:52 2022 -0700","stats":{"files_changed":4,"insertions":38,"deletions":8,"files":["jc/parsers/ini.py","jc/parsers/kv.py","tests/test_ini.py","tests/test_kv.py"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":12},{"name":"jc/parsers/kv.py","lines_changed":10},{"name":"tests/test_ini.py","lines_changed":12},{"name":"tests/test_kv.py","lines_changed":12}]},"message":"allow duplicate keys","epoch":1649097532,"epoch_utc":null},{"commit":"d5e9074f1c8facb3f15b8c41a008917178626978","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 4 11:38:04 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 4 11:38:04 2022 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/lib.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/lib.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1649097484,"epoch_utc":null},{"commit":"774699f085d97f22ae2dab0cf64d72aa1e1709f7","merge":"789f073 7138eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 4 18:21:15 2022 +0000","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Apr 4 18:21:15 2022 +0000","message":"Merge pull request #220 from kellyjonbrazil/master\n\nsync to dev","epoch":1649121675,"epoch_utc":1649096475},{"commit":"7138eef3d137bc64286d4af453d8d4e7b3f4408d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 30 14:39:56 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 30 14:39:56 2022 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"docs/parsers/asciitable_m.md","lines_changed":6},{"name":"jc/parsers/asciitable_m.py","lines_changed":6}]},"message":"fix newline chars in doc","epoch":1648676396,"epoch_utc":null},{"commit":"fad5e544aa9e57d31473190e196f59c616901207","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 29 09:58:44 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 29 09:58:44 2022 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":2},{"name":"jc/parsers/asciitable.py","lines_changed":2}]},"message":"formatting","epoch":1648573124,"epoch_utc":null},{"commit":"64757e2cf55448bccfbbd60d31930ab3f59af21b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 29 09:35:54 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 29 09:35:54 2022 -0700","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":12},{"name":"jc/parsers/asciitable.py","lines_changed":12}]},"message":"doc formatting","epoch":1648571754,"epoch_utc":null},{"commit":"e05be3f08beae1b600fc55a3a7b4e28163e15bc0","merge":"ac61e9a 789f073","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 25 22:36:05 2022 +0000","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Mar 25 22:36:05 2022 +0000","message":"Merge pull request #213 from kellyjonbrazil/dev\n\nDev v1.18.6","epoch":1648272965,"epoch_utc":1648247765},{"commit":"789f0735dfd63e728b8716d97cf0c6045ede5011","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 25 15:32:37 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 25 15:32:37 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"doc update","epoch":1648247557,"epoch_utc":null},{"commit":"34bc7753174be28d6c1a00dadc662bc374e554c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 25 15:32:11 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 25 15:32:11 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1648247531,"epoch_utc":null},{"commit":"38de059a1bc285c8681086d9fb43d0d23ac01d49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 16:58:45 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 24 16:58:45 2022 -0700","stats":{"files_changed":3,"insertions":9,"deletions":3,"files":["docs/parsers/asciitable.md","docs/parsers/universal.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":6},{"name":"docs/parsers/universal.md","lines_changed":4},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1648166325,"epoch_utc":null},{"commit":"304ae6268f4dff6e6f901628e7ff89db1d6e0767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 16:58:39 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 24 16:58:39 2022 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":12}]},"message":"minor optimization by changing the expression order","epoch":1648166319,"epoch_utc":null},{"commit":"978caf45221188a29c0e67147804f20f317c066d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 12:37:46 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 24 12:37:46 2022 -0700","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["jc/parsers/asciitable.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":26}]},"message":"minor optimization by reordering expressions","epoch":1648150666,"epoch_utc":null},{"commit":"17df5bfcfc25f226a2976aa7ab8a80e4aaa915c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 11:58:13 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 24 11:58:13 2022 -0700","stats":{"files_changed":2,"insertions":12,"deletions":2,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":10},{"name":"jc/parsers/asciitable_m.py","lines_changed":4}]},"message":"cache _is_separator function","epoch":1648148293,"epoch_utc":null},{"commit":"5e6a5068cff71b3b30525d0a12868bdf6551456c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 11:57:01 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 24 11:57:01 2022 -0700","stats":{"files_changed":1,"insertions":6,"deletions":2,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":8}]},"message":"allow iterables for simple table parser","epoch":1648148221,"epoch_utc":null},{"commit":"619de68a61be0117e635032347dde417d77c748c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 09:39:53 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 24 09:39:53 2022 -0700","stats":{"files_changed":2,"insertions":8,"deletions":9,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":7},{"name":"jc/parsers/asciitable_m.py","lines_changed":10}]},"message":"formatting","epoch":1648139993,"epoch_utc":null},{"commit":"6748c3cc91f90bddea3d07b8b30a049ee55eaf35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 09:31:12 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 24 09:31:12 2022 -0700","stats":{"files_changed":2,"insertions":65,"deletions":61,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":52},{"name":"jc/parsers/asciitable_m.py","lines_changed":74}]},"message":"remove lines from corner detection and add rounded corners","epoch":1648139472,"epoch_utc":null},{"commit":"0a462978b731770d1290187a502706c2322f5f91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 23 15:08:33 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 23 15:08:33 2022 -0700","stats":{"files_changed":4,"insertions":101,"deletions":3,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py","tests/test_asciitable.py","tests/test_asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":25},{"name":"jc/parsers/asciitable_m.py","lines_changed":8},{"name":"tests/test_asciitable.py","lines_changed":43},{"name":"tests/test_asciitable_m.py","lines_changed":28}]},"message":"fix for special characters in headers","epoch":1648073313,"epoch_utc":null},{"commit":"e66a82ff49b40a674f9ef373a12d59fc71bfa730","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 23 10:50:34 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 23 10:50:34 2022 -0700","stats":{"files_changed":3,"insertions":6,"deletions":5,"files":["CHANGELOG","jc/parsers/asciitable_m.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":5},{"name":"jc/parsers/asciitable_m.py","lines_changed":4},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1648057834,"epoch_utc":null},{"commit":"f3aa797d96c8e2cef2124dbb2f49d1fadaee3fa2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 17:47:19 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 17:47:19 2022 -0700","stats":{"files_changed":2,"insertions":69,"deletions":9,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":43},{"name":"jc/parsers/asciitable_m.py","lines_changed":35}]},"message":"add more pretty table separators","epoch":1647996439,"epoch_utc":null},{"commit":"e5b478218c4ba3781afd085056dba888c3f6ae02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 16:05:07 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 16:05:07 2022 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_xrandr.py"],"file_stats":[{"name":"tests/test_xrandr.py","lines_changed":6}]},"message":"add quiet=True to parse tests","epoch":1647990307,"epoch_utc":null},{"commit":"35e0e9c32afbc5450c661bcb3a23904d135358ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 15:57:43 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 15:57:43 2022 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":1}]},"message":"remove print statement","epoch":1647989863,"epoch_utc":null},{"commit":"17c3c2f029a0a47eb02d681567619d471b99949c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 15:55:59 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 15:55:59 2022 -0700","stats":{"files_changed":4,"insertions":58,"deletions":2,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py","tests/test_asciitable.py","tests/test_asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":3},{"name":"jc/parsers/asciitable_m.py","lines_changed":2},{"name":"tests/test_asciitable.py","lines_changed":31},{"name":"tests/test_asciitable_m.py","lines_changed":24}]},"message":"add bold bar seperator and ANSI code tests","epoch":1647989759,"epoch_utc":null},{"commit":"cf83e6398b3314b233581eb313510872177de20a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 15:13:07 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 15:13:07 2022 -0700","stats":{"files_changed":2,"insertions":7,"deletions":0,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":4},{"name":"jc/parsers/asciitable_m.py","lines_changed":3}]},"message":"add fancy separators","epoch":1647987187,"epoch_utc":null},{"commit":"94e061b881e2ed28d2b462ad038e5ba77182b6c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 14:53:34 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 14:53:34 2022 -0700","stats":{"files_changed":1,"insertions":275,"deletions":0,"files":["tests/test_asciitable.py"],"file_stats":[{"name":"tests/test_asciitable.py","lines_changed":275}]},"message":"add asciitable parser tests","epoch":1647986014,"epoch_utc":null},{"commit":"720480e39ce3cc2079d7f4f5bcff2725081fec34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 13:21:10 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 13:21:10 2022 -0700","stats":{"files_changed":4,"insertions":10,"deletions":2,"files":["docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":3},{"name":"docs/parsers/asciitable_m.md","lines_changed":3},{"name":"jc/parsers/asciitable.py","lines_changed":3},{"name":"jc/parsers/asciitable_m.py","lines_changed":3}]},"message":"doc update","epoch":1647980470,"epoch_utc":null},{"commit":"82a63fe15922456853aa4597aa10a5a02b20bdef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 12:42:07 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 12:42:07 2022 -0700","stats":{"files_changed":2,"insertions":6,"deletions":8,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":7},{"name":"jc/parsers/asciitable.py","lines_changed":7}]},"message":"doc update","epoch":1647978127,"epoch_utc":null},{"commit":"9c1ec9940e68ce9848da20e81b8c0b7e35a215df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 12:35:56 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 12:35:56 2022 -0700","stats":{"files_changed":4,"insertions":82,"deletions":14,"files":["docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":44},{"name":"docs/parsers/asciitable_m.md","lines_changed":4},{"name":"jc/parsers/asciitable.py","lines_changed":44},{"name":"jc/parsers/asciitable_m.py","lines_changed":4}]},"message":"doc update","epoch":1647977756,"epoch_utc":null},{"commit":"f23f19da453a0f7bcf70e417a10f87e27571aa43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 12:25:59 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 12:25:59 2022 -0700","stats":{"files_changed":5,"insertions":122,"deletions":9,"files":["README.md","docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/asciitable.md","lines_changed":97},{"name":"docs/parsers/asciitable_m.md","lines_changed":4},{"name":"jc/parsers/asciitable_m.py","lines_changed":24},{"name":"man/jc.1","lines_changed":5}]},"message":"doc update","epoch":1647977159,"epoch_utc":null},{"commit":"aea2e1b0a9c6bb2a02a6e73889bb04e8f4f22588","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 12:25:51 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 12:25:51 2022 -0700","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["tests/test_asciitable_m.py"],"file_stats":[{"name":"tests/test_asciitable_m.py","lines_changed":48}]},"message":"fix tests so blank strings are now None","epoch":1647977151,"epoch_utc":null},{"commit":"7d95d679bf4093ea77f30a1be55384b6dbf08341","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 12:25:24 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 12:25:24 2022 -0700","stats":{"files_changed":2,"insertions":212,"deletions":1,"files":["jc/lib.py","jc/parsers/asciitable.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2},{"name":"jc/parsers/asciitable.py","lines_changed":211}]},"message":"add asciitable parser","epoch":1647977124,"epoch_utc":null},{"commit":"b3b140066b74ee31dd1c460502caf2f26df321b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 07:21:19 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 07:21:19 2022 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"docs/parsers/asciitable_m.md","lines_changed":4},{"name":"jc/parsers/asciitable_m.py","lines_changed":4}]},"message":"doc update","epoch":1647958879,"epoch_utc":null},{"commit":"b204c423c1b947c17cb251a5dd3c444cd71dd2c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 07:05:14 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 07:05:14 2022 -0700","stats":{"files_changed":4,"insertions":193,"deletions":15,"files":["README.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/asciitable_m.md","lines_changed":122},{"name":"jc/parsers/asciitable_m.py","lines_changed":78},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update","epoch":1647957914,"epoch_utc":null},{"commit":"d451c309bb0d8889dc09a698212bf01c2154a582","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 06:30:07 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 22 06:30:07 2022 -0700","stats":{"files_changed":1,"insertions":11,"deletions":8,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":19}]},"message":"change multiple or statements to any()","epoch":1647955807,"epoch_utc":null},{"commit":"01d53da68ed04b736934851137c59216ad02d8c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 19:11:27 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 21 19:11:27 2022 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":1}]},"message":"remove debug print","epoch":1647915087,"epoch_utc":null},{"commit":"53dd05e52c329a15c30a756a36a165ac59ef8a14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 19:10:02 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 21 19:10:02 2022 -0700","stats":{"files_changed":2,"insertions":29,"deletions":1,"files":["jc/parsers/asciitable_m.py","tests/test_asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":3},{"name":"tests/test_asciitable_m.py","lines_changed":27}]},"message":"fix rstrip and add tests","epoch":1647915002,"epoch_utc":null},{"commit":"ab564f5be8282f1c7ee2d602bcef398fdfd4570f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 17:57:14 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 21 17:57:14 2022 -0700","stats":{"files_changed":2,"insertions":237,"deletions":1,"files":["jc/parsers/asciitable_m.py","tests/test_asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":16},{"name":"tests/test_asciitable_m.py","lines_changed":222}]},"message":"add tests","epoch":1647910634,"epoch_utc":null},{"commit":"00c39450f9878527b60545ad61c04cfb98f418dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 13:36:54 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 21 13:36:54 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":2}]},"message":"enhance type annotation","epoch":1647895014,"epoch_utc":null},{"commit":"f611d08b50219f4e573c1d1f0beae27583e76432","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 13:33:35 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 21 13:33:35 2022 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":5}]},"message":"formatting","epoch":1647894815,"epoch_utc":null},{"commit":"90e79b7df3a4d5b37835fdf1c2debc1bad0a40b9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 13:27:44 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 21 13:27:44 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":2}]},"message":"formatting","epoch":1647894464,"epoch_utc":null},{"commit":"4eb2d725d5fe6f2cc7935c7dc891912cf7b8e940","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 13:09:50 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 21 13:09:50 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":2}]},"message":"formatting","epoch":1647893390,"epoch_utc":null},{"commit":"51ae5ebcac7263ef2571c11975b275eff352bbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 13:06:34 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 21 13:06:34 2022 -0700","stats":{"files_changed":1,"insertions":148,"deletions":175,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":323}]},"message":"new streamlined parser","epoch":1647893194,"epoch_utc":null},{"commit":"9ecbdb09162da4d563799aa93d422db85b2c324b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 20 10:16:29 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 20 10:16:29 2022 -0700","stats":{"files_changed":8,"insertions":35,"deletions":30,"files":["docs/parsers/mpstat_s.md","docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","docs/parsers/universal.md","jc/parsers/foo_s.py","jc/parsers/mpstat_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"docs/parsers/mpstat_s.md","lines_changed":10},{"name":"docs/parsers/pidstat_s.md","lines_changed":10},{"name":"docs/parsers/rsync_s.md","lines_changed":10},{"name":"docs/parsers/universal.md","lines_changed":19},{"name":"jc/parsers/foo_s.py","lines_changed":4},{"name":"jc/parsers/mpstat_s.py","lines_changed":4},{"name":"jc/parsers/pidstat_s.py","lines_changed":4},{"name":"jc/parsers/rsync_s.py","lines_changed":4}]},"message":"use generator instead of iterable in function return annotation","epoch":1647796589,"epoch_utc":null},{"commit":"b3a2886fd0af0cd06890f37f1edfc6890bb83e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 20 10:12:29 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 20 10:12:29 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["docs/lib.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":3}]},"message":"formatting","epoch":1647796349,"epoch_utc":null},{"commit":"ceacec0f462bd7c2d9e92ddb9029ccd71aef481c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 18 16:57:47 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 18 16:57:47 2022 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":1}]},"message":"remove errant os sep import","epoch":1647647867,"epoch_utc":null},{"commit":"ff0f794b01395ed9b65fac75a6b07f0772d45a2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 18 16:53:23 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 18 16:53:23 2022 -0700","stats":{"files_changed":1,"insertions":32,"deletions":10,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":42}]},"message":"working","epoch":1647647603,"epoch_utc":null},{"commit":"70fafbf3f80f35c5db2c306978b2a488adad40bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 18 14:19:00 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 18 14:19:00 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"remove asciitable so tests pass for now","epoch":1647638340,"epoch_utc":null},{"commit":"5a248a8fc58952a5eab3d4aac025d7422ba82d08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 18 13:05:57 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 18 13:05:57 2022 -0700","stats":{"files_changed":1,"insertions":344,"deletions":0,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":344}]},"message":"add multiline asciitable parser","epoch":1647633957,"epoch_utc":null},{"commit":"4a3a4e10df8a552a4db3510640695f02b166dc40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 18 13:03:43 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 18 13:03:43 2022 -0700","stats":{"files_changed":1,"insertions":3,"deletions":4,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":7}]},"message":"add asciitable and asciitable-m parsers","epoch":1647633823,"epoch_utc":null},{"commit":"c27bd5ff39f21c6377e661d4d7de1200d2fdd72f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 17 16:24:18 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 17 16:24:18 2022 -0700","stats":{"files_changed":1,"insertions":23,"deletions":16,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":39}]},"message":"pad lines in sparse_table_parse and use str.isspace()","epoch":1647559458,"epoch_utc":null},{"commit":"f804c9627fb71341429ca80aec2887e23e0277db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 15 16:04:58 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 15 16:04:58 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":1}]},"message":"copy input list so we don't mutate the caller's data","epoch":1647385498,"epoch_utc":null},{"commit":"3ab25d02f9dc248706aa1105e1766b2a84bc55a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 12:30:09 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 14 12:30:09 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"use _parser_is_streaming from lib","epoch":1647286209,"epoch_utc":null},{"commit":"9e80fd2b97b9bfe38fdaa6acdf2e8ed26d34b49d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 12:17:18 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 14 12:17:18 2022 -0700","stats":{"files_changed":2,"insertions":15,"deletions":11,"files":["jc/cli.py","jc/lib.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":21},{"name":"jc/lib.py","lines_changed":5}]},"message":"fallback if info and doc items don't exist","epoch":1647285438,"epoch_utc":null},{"commit":"ff9527a098a94c996641fb3fe2f905c8ae5e3063","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 11:35:57 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 14 11:35:57 2022 -0700","stats":{"files_changed":1,"insertions":9,"deletions":13,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":22}]},"message":"import cleanup and use all_parser_info in parsers_text","epoch":1647282957,"epoch_utc":null},{"commit":"7dac2f8dc3baf619105e3c6ca4d3e45300b86287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 10:50:10 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 14 10:50:10 2022 -0700","stats":{"files_changed":3,"insertions":23,"deletions":9,"files":["docs/lib.md","docs/readme.md","man/jc.1"],"file_stats":[{"name":"docs/lib.md","lines_changed":23},{"name":"docs/readme.md","lines_changed":7},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1647280210,"epoch_utc":null},{"commit":"32e4d55e86c3e7d94488ec69f13a4f6400c4cef3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 10:46:54 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 14 10:46:54 2022 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":10}]},"message":"use parser_info for help_doc","epoch":1647280014,"epoch_utc":null},{"commit":"f9a9062147256d0949457cc7fde838f87202524d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 10:46:23 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 14 10:46:23 2022 -0700","stats":{"files_changed":3,"insertions":27,"deletions":10,"files":["CHANGELOG","jc/__init__.py","jc/lib.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/__init__.py","lines_changed":7},{"name":"jc/lib.py","lines_changed":29}]},"message":"add documentation argument to parser_info and all_parser_info","epoch":1647279983,"epoch_utc":null},{"commit":"89e5919796f7da585285901dca461aae21336415","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 09:56:50 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 14 09:56:50 2022 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/mpstat_s.md","jc/parsers/mpstat_s.py"],"file_stats":[{"name":"docs/parsers/mpstat_s.md","lines_changed":2},{"name":"jc/parsers/mpstat_s.py","lines_changed":2}]},"message":"add -A to second example","epoch":1647277010,"epoch_utc":null},{"commit":"e5f5b2591d8ac3abeb9571688c7fb8de34d647f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 09:45:17 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 14 09:45:17 2022 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"changelog update","epoch":1647276317,"epoch_utc":null},{"commit":"77c667eec045daff5cbd062fe9d6e83f237727e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 09:43:18 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 14 09:43:18 2022 -0700","stats":{"files_changed":9,"insertions":67,"deletions":6,"files":["docs/parsers/mpstat.md","docs/parsers/mpstat_s.md","jc/parsers/mpstat.py","jc/parsers/mpstat_s.py","tests/fixtures/ubuntu-18.04/mpstat-A-streaming.json","tests/fixtures/ubuntu-18.04/mpstat-A.json","tests/fixtures/ubuntu-18.04/mpstat-A.out","tests/test_mpstat.py","tests/test_mpstat_s.py"],"file_stats":[{"name":"docs/parsers/mpstat.md","lines_changed":2},{"name":"docs/parsers/mpstat_s.md","lines_changed":2},{"name":"jc/parsers/mpstat.py","lines_changed":12},{"name":"jc/parsers/mpstat_s.py","lines_changed":12},{"name":"tests/fixtures/ubuntu-18.04/mpstat-A-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/mpstat-A.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/mpstat-A.out","lines_changed":19},{"name":"tests/test_mpstat.py","lines_changed":12},{"name":"tests/test_mpstat_s.py","lines_changed":12}]},"message":"ubuntu fixes","epoch":1647276198,"epoch_utc":null},{"commit":"b257ce8c2fe6825fe435b4d04b4184091030db10","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 13 12:25:50 2022 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 13 12:25:50 2022 -0700","stats":{"files_changed":4,"insertions":65,"deletions":0,"files":[".../centos-7.7/mpstat-A-2-5-streaming.json","tests/fixtures/centos-7.7/mpstat-A-streaming.json","tests/fixtures/centos-7.7/mpstat-streaming.json","tests/test_mpstat_s.py"],"file_stats":[{"name":".../centos-7.7/mpstat-A-2-5-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat-A-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat-streaming.json","lines_changed":1},{"name":"tests/test_mpstat_s.py","lines_changed":62}]},"message":"add mpstat_s tests","epoch":1647199550,"epoch_utc":null},{"commit":"c693c868cacbcd81f44fd383719723dd7a137c87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 15:59:38 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 11 15:59:38 2022 -0800","stats":{"files_changed":7,"insertions":352,"deletions":0,"files":["README.md","docs/parsers/mpstat.md","docs/parsers/mpstat_s.md","jc/lib.py","jc/parsers/mpstat.py","jc/parsers/mpstat_s.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/mpstat.md","lines_changed":2},{"name":"docs/parsers/mpstat_s.md","lines_changed":130},{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/mpstat.py","lines_changed":2},{"name":"jc/parsers/mpstat_s.py","lines_changed":211},{"name":"man/jc.1","lines_changed":5}]},"message":"add mpstat streaming parser","epoch":1647043178,"epoch_utc":null},{"commit":"6f98b27a05d6e1f7571a97316b193f096521b959","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 15:33:31 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 11 15:33:31 2022 -0800","stats":{"files_changed":7,"insertions":168,"deletions":0,"files":["tests/fixtures/centos-7.7/mpstat-A-2-5.json","tests/fixtures/centos-7.7/mpstat-A-2-5.out","tests/fixtures/centos-7.7/mpstat-A.json","tests/fixtures/centos-7.7/mpstat-A.out","tests/fixtures/centos-7.7/mpstat.json","tests/fixtures/centos-7.7/mpstat.out","tests/test_mpstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/mpstat-A-2-5.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat-A-2-5.out","lines_changed":86},{"name":"tests/fixtures/centos-7.7/mpstat-A.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat-A.out","lines_changed":15},{"name":"tests/fixtures/centos-7.7/mpstat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat.out","lines_changed":5},{"name":"tests/test_mpstat.py","lines_changed":59}]},"message":"add mpstat tests","epoch":1647041611,"epoch_utc":null},{"commit":"d7efd25d88a8f489564ce48223845a16e4ab1cc7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 14:54:06 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 11 14:54:06 2022 -0800","stats":{"files_changed":4,"insertions":207,"deletions":1,"files":["EXAMPLES.md","README.md","docs/parsers/mpstat.md","man/jc.1"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":64},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/mpstat.md","lines_changed":136},{"name":"man/jc.1","lines_changed":7}]},"message":"add mpstat to docs","epoch":1647039246,"epoch_utc":null},{"commit":"2cddb1f0bb497be0be071cdcb56bf49d2dafc920","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 14:00:19 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 11 14:00:19 2022 -0800","stats":{"files_changed":1,"insertions":94,"deletions":15,"files":["jc/parsers/mpstat.py"],"file_stats":[{"name":"jc/parsers/mpstat.py","lines_changed":109}]},"message":"working mpstat","epoch":1647036019,"epoch_utc":null},{"commit":"ae1c331595dd857d8ae7f8cf93daee1b26be2c3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 13:15:39 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 11 13:15:39 2022 -0800","stats":{"files_changed":1,"insertions":30,"deletions":5,"files":["jc/parsers/mpstat.py"],"file_stats":[{"name":"jc/parsers/mpstat.py","lines_changed":35}]},"message":"initial working version","epoch":1647033339,"epoch_utc":null},{"commit":"bc97052ed4ee3bf3f25127968139f2e89a659fe3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 12:37:17 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 11 12:37:17 2022 -0800","stats":{"files_changed":3,"insertions":109,"deletions":0,"files":["CHANGELOG","jc/lib.py","jc/parsers/mpstat.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/mpstat.py","lines_changed":107}]},"message":"initial add mpstat parser","epoch":1647031037,"epoch_utc":null},{"commit":"6c3e0e2aa0e8cc375d9f7473930b18957d33f1aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 12:37:01 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 11 12:37:01 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"formatting","epoch":1647031021,"epoch_utc":null},{"commit":"dd052e01469e9e3328f7326d3591365a8e7322eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 10:25:24 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 11 10:25:24 2022 -0800","stats":{"files_changed":2,"insertions":26,"deletions":24,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":25},{"name":"jc/parsers/universal.py","lines_changed":25}]},"message":"add underscores to column examples","epoch":1647023124,"epoch_utc":null},{"commit":"54e8f58145f6c4332fbd375d112259ea7abb2d72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 16:50:55 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 16:50:55 2022 -0800","stats":{"files_changed":2,"insertions":28,"deletions":2,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":15},{"name":"jc/parsers/universal.py","lines_changed":15}]},"message":"add table result examples","epoch":1646959855,"epoch_utc":null},{"commit":"def7aa5764e69cd0cf2c5b70aa62c62023f76c9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 15:36:11 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 15:36:11 2022 -0800","stats":{"files_changed":2,"insertions":16,"deletions":16,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":16},{"name":"jc/parsers/universal.py","lines_changed":16}]},"message":"formatting","epoch":1646955371,"epoch_utc":null},{"commit":"6986c74f6dceca907ea2e469a332deeb093a122c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 15:18:27 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 15:18:27 2022 -0800","stats":{"files_changed":169,"insertions":34,"deletions":837,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/pidstat.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/nmcli.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/pidstat.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/xrandr.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":5},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iostat.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jar_manifest.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/nmcli.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/pidstat.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/rsync.md","lines_changed":5},{"name":"docs/parsers/sfdisk.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/systeminfo.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"docs/parsers/ufw.md","lines_changed":5},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/universal.md","lines_changed":18},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/vmstat.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/xrandr.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5},{"name":"docs/parsers/zipinfo.md","lines_changed":5},{"name":"jc/parsers/acpi.py","lines_changed":5},{"name":"jc/parsers/airport.py","lines_changed":5},{"name":"jc/parsers/airport_s.py","lines_changed":5},{"name":"jc/parsers/arp.py","lines_changed":5},{"name":"jc/parsers/blkid.py","lines_changed":5},{"name":"jc/parsers/cksum.py","lines_changed":5},{"name":"jc/parsers/crontab.py","lines_changed":5},{"name":"jc/parsers/crontab_u.py","lines_changed":5},{"name":"jc/parsers/csv.py","lines_changed":5},{"name":"jc/parsers/date.py","lines_changed":5},{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":5},{"name":"jc/parsers/dir.py","lines_changed":5},{"name":"jc/parsers/dmidecode.py","lines_changed":5},{"name":"jc/parsers/dpkg_l.py","lines_changed":5},{"name":"jc/parsers/du.py","lines_changed":5},{"name":"jc/parsers/env.py","lines_changed":5},{"name":"jc/parsers/file.py","lines_changed":5},{"name":"jc/parsers/finger.py","lines_changed":5},{"name":"jc/parsers/foo.py","lines_changed":5},{"name":"jc/parsers/free.py","lines_changed":5},{"name":"jc/parsers/fstab.py","lines_changed":5},{"name":"jc/parsers/group.py","lines_changed":5},{"name":"jc/parsers/gshadow.py","lines_changed":5},{"name":"jc/parsers/hash.py","lines_changed":5},{"name":"jc/parsers/hashsum.py","lines_changed":5},{"name":"jc/parsers/hciconfig.py","lines_changed":5},{"name":"jc/parsers/history.py","lines_changed":5},{"name":"jc/parsers/hosts.py","lines_changed":5},{"name":"jc/parsers/id.py","lines_changed":5},{"name":"jc/parsers/ifconfig.py","lines_changed":5},{"name":"jc/parsers/ini.py","lines_changed":5},{"name":"jc/parsers/iostat.py","lines_changed":5},{"name":"jc/parsers/iptables.py","lines_changed":5},{"name":"jc/parsers/iw_scan.py","lines_changed":5},{"name":"jc/parsers/jar_manifest.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":5},{"name":"jc/parsers/kv.py","lines_changed":5},{"name":"jc/parsers/last.py","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":5},{"name":"jc/parsers/lsblk.py","lines_changed":5},{"name":"jc/parsers/lsmod.py","lines_changed":5},{"name":"jc/parsers/lsof.py","lines_changed":5},{"name":"jc/parsers/lsusb.py","lines_changed":5},{"name":"jc/parsers/mount.py","lines_changed":5},{"name":"jc/parsers/netstat.py","lines_changed":5},{"name":"jc/parsers/nmcli.py","lines_changed":5},{"name":"jc/parsers/ntpq.py","lines_changed":5},{"name":"jc/parsers/passwd.py","lines_changed":5},{"name":"jc/parsers/pidstat.py","lines_changed":5},{"name":"jc/parsers/ping.py","lines_changed":5},{"name":"jc/parsers/pip_list.py","lines_changed":5},{"name":"jc/parsers/pip_show.py","lines_changed":5},{"name":"jc/parsers/ps.py","lines_changed":5},{"name":"jc/parsers/route.py","lines_changed":5},{"name":"jc/parsers/rpm_qi.py","lines_changed":5},{"name":"jc/parsers/rsync.py","lines_changed":5},{"name":"jc/parsers/sfdisk.py","lines_changed":5},{"name":"jc/parsers/shadow.py","lines_changed":5},{"name":"jc/parsers/ss.py","lines_changed":5},{"name":"jc/parsers/stat.py","lines_changed":5},{"name":"jc/parsers/sysctl.py","lines_changed":5},{"name":"jc/parsers/systemctl.py","lines_changed":5},{"name":"jc/parsers/systemctl_lj.py","lines_changed":5},{"name":"jc/parsers/systemctl_ls.py","lines_changed":5},{"name":"jc/parsers/systemctl_luf.py","lines_changed":5},{"name":"jc/parsers/systeminfo.py","lines_changed":5},{"name":"jc/parsers/time.py","lines_changed":5},{"name":"jc/parsers/timedatectl.py","lines_changed":5},{"name":"jc/parsers/tracepath.py","lines_changed":5},{"name":"jc/parsers/traceroute.py","lines_changed":5},{"name":"jc/parsers/ufw.py","lines_changed":5},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":5},{"name":"jc/parsers/uname.py","lines_changed":5},{"name":"jc/parsers/universal.py","lines_changed":18},{"name":"jc/parsers/upower.py","lines_changed":5},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/vmstat.py","lines_changed":5},{"name":"jc/parsers/w.py","lines_changed":5},{"name":"jc/parsers/wc.py","lines_changed":5},{"name":"jc/parsers/who.py","lines_changed":5},{"name":"jc/parsers/xml.py","lines_changed":5},{"name":"jc/parsers/xrandr.py","lines_changed":5},{"name":"jc/parsers/yaml.py","lines_changed":5},{"name":"jc/parsers/zipinfo.py","lines_changed":5}]},"message":"remove direct parser module example from doc","epoch":1646954307,"epoch_utc":null},{"commit":"b784db404d0569a4c630eb124b37b0b1d0846453","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 13:32:26 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 13:32:26 2022 -0800","stats":{"files_changed":17,"insertions":87,"deletions":166,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/pidstat_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/pidstat_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":13},{"name":"docs/parsers/iostat_s.md","lines_changed":20},{"name":"docs/parsers/ls_s.md","lines_changed":16},{"name":"docs/parsers/pidstat_s.md","lines_changed":9},{"name":"docs/parsers/ping_s.md","lines_changed":13},{"name":"docs/parsers/rsync_s.md","lines_changed":13},{"name":"docs/parsers/stat_s.md","lines_changed":13},{"name":"docs/parsers/vmstat_s.md","lines_changed":23},{"name":"jc/parsers/csv_s.py","lines_changed":13},{"name":"jc/parsers/foo_s.py","lines_changed":13},{"name":"jc/parsers/iostat_s.py","lines_changed":20},{"name":"jc/parsers/ls_s.py","lines_changed":16},{"name":"jc/parsers/pidstat_s.py","lines_changed":9},{"name":"jc/parsers/ping_s.py","lines_changed":13},{"name":"jc/parsers/rsync_s.py","lines_changed":13},{"name":"jc/parsers/stat_s.py","lines_changed":13},{"name":"jc/parsers/vmstat_s.py","lines_changed":23}]},"message":"streaming doc formatting update","epoch":1646947946,"epoch_utc":null},{"commit":"8aee4517bb4c2eebdd9873f7eb0827cd33b85519","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 13:02:50 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 13:02:50 2022 -0800","stats":{"files_changed":2,"insertions":12,"deletions":26,"files":["docs/parsers/pidstat_s.md","jc/parsers/pidstat_s.py"],"file_stats":[{"name":"docs/parsers/pidstat_s.md","lines_changed":19},{"name":"jc/parsers/pidstat_s.py","lines_changed":19}]},"message":"doc formatting","epoch":1646946170,"epoch_utc":null},{"commit":"a5fb8fbf94b3b80bef82f078ad6582260b13e374","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 10:10:57 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 10:10:57 2022 -0800","stats":{"files_changed":17,"insertions":164,"deletions":148,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/pidstat_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/pidstat_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":12},{"name":"docs/parsers/iostat_s.md","lines_changed":14},{"name":"docs/parsers/ls_s.md","lines_changed":14},{"name":"docs/parsers/pidstat_s.md","lines_changed":53},{"name":"docs/parsers/ping_s.md","lines_changed":14},{"name":"docs/parsers/rsync_s.md","lines_changed":14},{"name":"docs/parsers/stat_s.md","lines_changed":14},{"name":"docs/parsers/vmstat_s.md","lines_changed":14},{"name":"jc/parsers/csv_s.py","lines_changed":12},{"name":"jc/parsers/foo_s.py","lines_changed":14},{"name":"jc/parsers/iostat_s.py","lines_changed":14},{"name":"jc/parsers/ls_s.py","lines_changed":14},{"name":"jc/parsers/pidstat_s.py","lines_changed":53},{"name":"jc/parsers/ping_s.py","lines_changed":14},{"name":"jc/parsers/rsync_s.py","lines_changed":14},{"name":"jc/parsers/stat_s.py","lines_changed":14},{"name":"jc/parsers/vmstat_s.py","lines_changed":14}]},"message":"streaming doc update","epoch":1646935857,"epoch_utc":null},{"commit":"b9365e2ac28c3eacf53bc101857f7f1d7286ec20","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 09:23:36 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 09:23:36 2022 -0800","stats":{"files_changed":4,"insertions":74,"deletions":0,"files":[".../centos-7.7/pidstat-hdlrsuw-2-5-streaming.json",".../centos-7.7/pidstat-hdlrsuw-streaming.json",".../fixtures/centos-7.7/pidstat-hl-streaming.json","tests/test_pidstat_s.py"],"file_stats":[{"name":".../centos-7.7/pidstat-hdlrsuw-2-5-streaming.json","lines_changed":1},{"name":".../centos-7.7/pidstat-hdlrsuw-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/pidstat-hl-streaming.json","lines_changed":1},{"name":"tests/test_pidstat_s.py","lines_changed":71}]},"message":"add pidstat-s tests","epoch":1646933016,"epoch_utc":null},{"commit":"696338c1a3d462afbe677a6f2ebe08d06ef4046a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 09:04:12 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 09:04:12 2022 -0800","stats":{"files_changed":1,"insertions":38,"deletions":0,"files":["tests/_test_foo_s.py"],"file_stats":[{"name":"tests/_test_foo_s.py","lines_changed":38}]},"message":"add streaming test template","epoch":1646931852,"epoch_utc":null},{"commit":"4f0616190bb842411353d65650b78a65d8cbdc28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 08:14:58 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 08:14:58 2022 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/pidstat_s.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1646928898,"epoch_utc":null},{"commit":"3278cb0de301ee542b1fe8245a6c359193373b6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 08:14:46 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 08:14:46 2022 -0800","stats":{"files_changed":2,"insertions":15,"deletions":10,"files":["docs/parsers/arp.md","jc/parsers/arp.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":23}]},"message":"add type hints","epoch":1646928886,"epoch_utc":null},{"commit":"4fc04256a567c502a88ac8a1bd189746387c93f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 08:00:37 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 10 08:00:37 2022 -0800","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["jc/parsers/foo_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":4},{"name":"jc/parsers/pidstat_s.py","lines_changed":4},{"name":"jc/parsers/rsync_s.py","lines_changed":4}]},"message":"rollback noReturn to tuple","epoch":1646928037,"epoch_utc":null},{"commit":"e4ae0fea63c0386c1b3239607fd6a58738d23633","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 16:28:55 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 16:28:55 2022 -0800","stats":{"files_changed":5,"insertions":8,"deletions":8,"files":["docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","jc/parsers/foo_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"docs/parsers/pidstat_s.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":4},{"name":"jc/parsers/pidstat_s.py","lines_changed":4},{"name":"jc/parsers/rsync_s.py","lines_changed":4}]},"message":"fix type annotation","epoch":1646872135,"epoch_utc":null},{"commit":"d3727ea0906d6167aa48c340519242b010469d98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 16:09:35 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 16:09:35 2022 -0800","stats":{"files_changed":4,"insertions":99,"deletions":1,"files":["CHANGELOG","README.md","docs/parsers/pidstat_s.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/pidstat_s.md","lines_changed":91},{"name":"man/jc.1","lines_changed":5}]},"message":"doc update","epoch":1646870975,"epoch_utc":null},{"commit":"0d13909cf63d14008607c5640d074ab4073115e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 16:07:29 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 16:07:29 2022 -0800","stats":{"files_changed":2,"insertions":168,"deletions":0,"files":["jc/lib.py","jc/parsers/pidstat_s.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/pidstat_s.py","lines_changed":167}]},"message":"add pidstat-s parser","epoch":1646870849,"epoch_utc":null},{"commit":"c52ca20e285895d2afb685a2a5ca275de7901033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 16:07:17 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 16:07:17 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/pidstat.py"],"file_stats":[{"name":"jc/parsers/pidstat.py","lines_changed":2}]},"message":"fix comment","epoch":1646870837,"epoch_utc":null},{"commit":"21f27f26c81c75234221a5193c7d3903323e2032","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 15:37:10 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 15:37:10 2022 -0800","stats":{"files_changed":4,"insertions":72,"deletions":0,"files":["tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.json","tests/fixtures/centos-7.7/pidstat-hdlrsuw.json","tests/fixtures/centos-7.7/pidstat-hl.json","tests/test_pidstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/pidstat-hdlrsuw.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/pidstat-hl.json","lines_changed":1},{"name":"tests/test_pidstat.py","lines_changed":69}]},"message":"add pidstat tests","epoch":1646869030,"epoch_utc":null},{"commit":"5e7a87f39782d12070a895440ff541800df91b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 15:37:04 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 15:37:04 2022 -0800","stats":{"files_changed":1,"insertions":35,"deletions":0,"files":["tests/_test_foo.py"],"file_stats":[{"name":"tests/_test_foo.py","lines_changed":35}]},"message":"add test template","epoch":1646869024,"epoch_utc":null},{"commit":"845d763829acd03fff1d2fad6e9691f04bd1a2aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 15:09:22 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 15:09:22 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/pidstat.md","jc/parsers/pidstat.py"],"file_stats":[{"name":"docs/parsers/pidstat.md","lines_changed":4},{"name":"jc/parsers/pidstat.py","lines_changed":4}]},"message":"format docs to fit 80 columns","epoch":1646867362,"epoch_utc":null},{"commit":"f5c7d52ec72f5ff4b77d5ac4491f330575b9f10f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 14:43:56 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 14:43:56 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":10,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":6},{"name":"templates/manpage_template","lines_changed":6}]},"message":"formatting","epoch":1646865836,"epoch_utc":null},{"commit":"c3198a58744803f52113f80967c7259d781e2328","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 14:17:48 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 14:17:48 2022 -0800","stats":{"files_changed":2,"insertions":22,"deletions":12,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":17},{"name":"templates/manpage_template","lines_changed":17}]},"message":"formatting","epoch":1646864268,"epoch_utc":null},{"commit":"bbd4afa73542ba6596aed77426bb494fbcf23196","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 14:09:58 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 14:09:58 2022 -0800","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["README.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"man/jc.1","lines_changed":7}]},"message":"add pidstat to docs","epoch":1646863798,"epoch_utc":null},{"commit":"ae754a84bf5fc35b248bbc5f7b0fa8e871765819","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 14:06:34 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 14:06:34 2022 -0800","stats":{"files_changed":3,"insertions":263,"deletions":33,"files":["docs/parsers/arp.md","docs/parsers/pidstat.md","jc/parsers/pidstat.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/pidstat.md","lines_changed":156},{"name":"jc/parsers/pidstat.py","lines_changed":138}]},"message":"doc update","epoch":1646863594,"epoch_utc":null},{"commit":"3389eb5debe0f0ba01ece01e20048608bf357e70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 13:18:04 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 13:18:04 2022 -0800","stats":{"files_changed":4,"insertions":219,"deletions":9,"files":["jc/parsers/pidstat.py","tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.out","tests/fixtures/centos-7.7/pidstat-hdlrsuw.out","tests/fixtures/centos-7.7/pidstat-hl.out"],"file_stats":[{"name":"jc/parsers/pidstat.py","lines_changed":52},{"name":"tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.out","lines_changed":47},{"name":"tests/fixtures/centos-7.7/pidstat-hdlrsuw.out","lines_changed":83},{"name":"tests/fixtures/centos-7.7/pidstat-hl.out","lines_changed":46}]},"message":"initial working parser","epoch":1646860684,"epoch_utc":null},{"commit":"01f2c1e71f87ab401d487be4d6d150cb67c91437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 12:13:32 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 12:13:32 2022 -0800","stats":{"files_changed":5,"insertions":162,"deletions":2,"files":["CHANGELOG","jc/lib.py","jc/parsers/pidstat.py","setup.py","tests/fixtures/centos-7.7/pidstat.out"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/lib.py","lines_changed":3},{"name":"jc/parsers/pidstat.py","lines_changed":112},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/pidstat.out","lines_changed":44}]},"message":"add pidstat parser","epoch":1646856812,"epoch_utc":null},{"commit":"8bfbf8f1bcd233a8ecd34012e140eb29164ca5fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 12:13:07 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 12:13:07 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"simplify error message","epoch":1646856787,"epoch_utc":null},{"commit":"f4242669bac3af5eb196c46d4146823aacec40ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 10:52:40 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 9 10:52:40 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":10,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":12}]},"message":"minor cleanup","epoch":1646851960,"epoch_utc":null},{"commit":"bebd9331f1fb9b80f8cb4a5cfacd68461743004e","merge":"9861983 ac61e9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 18:49:01 2022 +0000","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 9 18:49:01 2022 +0000","message":"Merge pull request #211 from kellyjonbrazil/master\n\nsync to dev","epoch":1646880541,"epoch_utc":1646851741},{"commit":"ac61e9ad2c9c4e864db02db04cbf907fb0efd99b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 8 13:21:05 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 8 13:21:05 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"templates/readme_template","lines_changed":1}]},"message":"add pypi link","epoch":1646774465,"epoch_utc":null},{"commit":"648ef4d8a9c33a36d4bb2c135fe59b031de8f24c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 8 13:19:20 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 8 13:19:20 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"templates/readme_template","lines_changed":4}]},"message":"update badge links","epoch":1646774360,"epoch_utc":null},{"commit":"727fc9a701e9aae75d3d2b708010da1d0dc8781a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 15:19:25 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Mar 5 15:19:25 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/date.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1646522365,"epoch_utc":null},{"commit":"306512d6bb53af18516fc10b15c7ec79cb02cc98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 15:13:47 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Mar 5 15:13:47 2022 -0800","stats":{"files_changed":4,"insertions":7,"deletions":4,"files":["CHANGELOG","jc/lib.py","jc/parsers/date.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/lib.py","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":4},{"name":"setup.py","lines_changed":2}]},"message":"force AM/PM to uppercase in date parser","epoch":1646522027,"epoch_utc":null},{"commit":"6afb1d389ca9dfd7880386d380fee032b7eb92e2","merge":"961968a 9861983","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 21:49:36 2022 +0000","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sat Mar 5 21:49:36 2022 +0000","message":"Merge pull request #209 from kellyjonbrazil/dev\n\nDev v1.18.4","epoch":1646545776,"epoch_utc":1646516976},{"commit":"98619834818c181cb50a9605fe166b6153c46095","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 13:45:28 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Mar 5 13:45:28 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1646516728,"epoch_utc":null},{"commit":"ca79053db08542849136ae13fdb4d1d90b79a7e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 12:15:47 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Mar 5 12:15:47 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":2}]},"message":"document pydoc version","epoch":1646511347,"epoch_utc":null},{"commit":"29c263f87810f8566ebdad2358e99896391adfd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 12:15:14 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Mar 5 12:15:14 2022 -0800","stats":{"files_changed":93,"insertions":115,"deletions":115,"files":["docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/streaming.md","docs/utils.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":16},{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/dpkg_l.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/finger.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/gshadow.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iostat.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/jar_manifest.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/kv.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/nmcli.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/rsync.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/stat_s.md","lines_changed":2},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/universal.md","lines_changed":4},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/xrandr.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"docs/parsers/zipinfo.md","lines_changed":2},{"name":"docs/streaming.md","lines_changed":12},{"name":"docs/utils.md","lines_changed":20}]},"message":"pydoc formatting fixes","epoch":1646511314,"epoch_utc":null},{"commit":"128c3c170abc6a702ae044b073fb9d992d4262b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 16:38:49 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 4 16:38:49 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"doc update","epoch":1646440729,"epoch_utc":null},{"commit":"a531ab8864fca27b55d83b55055eaef1c36128cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 16:35:06 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 4 16:35:06 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"formatting","epoch":1646440506,"epoch_utc":null},{"commit":"0c1be7cc11ec75a5738483d68d053e702eb34fc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 16:29:36 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 4 16:29:36 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":18,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":11},{"name":"templates/readme_template","lines_changed":11}]},"message":"reduce dig example size","epoch":1646440176,"epoch_utc":null},{"commit":"e4222b45f54e6179e22d7924c083e4642b9974ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 16:24:13 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 4 16:24:13 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":4}]},"message":"fix names to mod names","epoch":1646439853,"epoch_utc":null},{"commit":"ac32c69c31e8eff22252d7aded08f6cb14622086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 13:35:16 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 4 13:35:16 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":2},{"name":"jc/parsers/universal.py","lines_changed":2}]},"message":"formatting","epoch":1646429716,"epoch_utc":null},{"commit":"cb2dfeac8d44b733ad9d364e8c6d233a381bfae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 13:27:39 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 4 13:27:39 2022 -0800","stats":{"files_changed":199,"insertions":334,"deletions":326,"files":["README.md","docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/streaming.md","docs/utils.md","jc/__init__.py","jc/cli.py","jc/exceptions.py","jc/lib.py","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat_freebsd_osx.py","jc/parsers/netstat_linux.py","jc/parsers/nmcli.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/xrandr.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py","jc/streaming.py","jc/utils.py","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docgen.sh","lines_changed":6},{"name":"docs/lib.md","lines_changed":25},{"name":"docs/parsers/acpi.md","lines_changed":4},{"name":"docs/parsers/airport.md","lines_changed":4},{"name":"docs/parsers/airport_s.md","lines_changed":4},{"name":"docs/parsers/arp.md","lines_changed":4},{"name":"docs/parsers/blkid.md","lines_changed":4},{"name":"docs/parsers/cksum.md","lines_changed":4},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"docs/parsers/crontab_u.md","lines_changed":4},{"name":"docs/parsers/csv.md","lines_changed":4},{"name":"docs/parsers/csv_s.md","lines_changed":4},{"name":"docs/parsers/date.md","lines_changed":4},{"name":"docs/parsers/df.md","lines_changed":4},{"name":"docs/parsers/dig.md","lines_changed":4},{"name":"docs/parsers/dir.md","lines_changed":4},{"name":"docs/parsers/dmidecode.md","lines_changed":4},{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"docs/parsers/du.md","lines_changed":4},{"name":"docs/parsers/env.md","lines_changed":4},{"name":"docs/parsers/file.md","lines_changed":4},{"name":"docs/parsers/finger.md","lines_changed":4},{"name":"docs/parsers/free.md","lines_changed":4},{"name":"docs/parsers/fstab.md","lines_changed":4},{"name":"docs/parsers/group.md","lines_changed":4},{"name":"docs/parsers/gshadow.md","lines_changed":4},{"name":"docs/parsers/hash.md","lines_changed":4},{"name":"docs/parsers/hashsum.md","lines_changed":4},{"name":"docs/parsers/hciconfig.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":4},{"name":"docs/parsers/hosts.md","lines_changed":4},{"name":"docs/parsers/id.md","lines_changed":4},{"name":"docs/parsers/ifconfig.md","lines_changed":4},{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"docs/parsers/iostat.md","lines_changed":4},{"name":"docs/parsers/iostat_s.md","lines_changed":4},{"name":"docs/parsers/iptables.md","lines_changed":4},{"name":"docs/parsers/iw_scan.md","lines_changed":4},{"name":"docs/parsers/jar_manifest.md","lines_changed":4},{"name":"docs/parsers/jobs.md","lines_changed":4},{"name":"docs/parsers/kv.md","lines_changed":4},{"name":"docs/parsers/last.md","lines_changed":4},{"name":"docs/parsers/ls.md","lines_changed":4},{"name":"docs/parsers/ls_s.md","lines_changed":4},{"name":"docs/parsers/lsblk.md","lines_changed":4},{"name":"docs/parsers/lsmod.md","lines_changed":4},{"name":"docs/parsers/lsof.md","lines_changed":4},{"name":"docs/parsers/lsusb.md","lines_changed":4},{"name":"docs/parsers/mount.md","lines_changed":4},{"name":"docs/parsers/netstat.md","lines_changed":4},{"name":"docs/parsers/nmcli.md","lines_changed":4},{"name":"docs/parsers/ntpq.md","lines_changed":4},{"name":"docs/parsers/passwd.md","lines_changed":4},{"name":"docs/parsers/ping.md","lines_changed":4},{"name":"docs/parsers/ping_s.md","lines_changed":4},{"name":"docs/parsers/pip_list.md","lines_changed":4},{"name":"docs/parsers/pip_show.md","lines_changed":4},{"name":"docs/parsers/ps.md","lines_changed":4},{"name":"docs/parsers/route.md","lines_changed":4},{"name":"docs/parsers/rpm_qi.md","lines_changed":4},{"name":"docs/parsers/rsync.md","lines_changed":4},{"name":"docs/parsers/rsync_s.md","lines_changed":9},{"name":"docs/parsers/sfdisk.md","lines_changed":4},{"name":"docs/parsers/shadow.md","lines_changed":4},{"name":"docs/parsers/ss.md","lines_changed":4},{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"docs/parsers/stat_s.md","lines_changed":4},{"name":"docs/parsers/sysctl.md","lines_changed":4},{"name":"docs/parsers/systemctl.md","lines_changed":4},{"name":"docs/parsers/systemctl_lj.md","lines_changed":4},{"name":"docs/parsers/systemctl_ls.md","lines_changed":4},{"name":"docs/parsers/systemctl_luf.md","lines_changed":4},{"name":"docs/parsers/systeminfo.md","lines_changed":4},{"name":"docs/parsers/time.md","lines_changed":4},{"name":"docs/parsers/timedatectl.md","lines_changed":4},{"name":"docs/parsers/tracepath.md","lines_changed":4},{"name":"docs/parsers/traceroute.md","lines_changed":4},{"name":"docs/parsers/ufw.md","lines_changed":4},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":4},{"name":"docs/parsers/uname.md","lines_changed":4},{"name":"docs/parsers/universal.md","lines_changed":6},{"name":"docs/parsers/upower.md","lines_changed":4},{"name":"docs/parsers/uptime.md","lines_changed":4},{"name":"docs/parsers/vmstat.md","lines_changed":4},{"name":"docs/parsers/vmstat_s.md","lines_changed":4},{"name":"docs/parsers/w.md","lines_changed":4},{"name":"docs/parsers/wc.md","lines_changed":4},{"name":"docs/parsers/who.md","lines_changed":4},{"name":"docs/parsers/xml.md","lines_changed":4},{"name":"docs/parsers/xrandr.md","lines_changed":4},{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"docs/parsers/zipinfo.md","lines_changed":4},{"name":"docs/readme.md","lines_changed":2},{"name":"docs/streaming.md","lines_changed":17},{"name":"docs/utils.md","lines_changed":29},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/cli.py","lines_changed":4},{"name":"jc/exceptions.py","lines_changed":2},{"name":"jc/lib.py","lines_changed":2},{"name":"jc/parsers/acpi.py","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/blkid.py","lines_changed":2},{"name":"jc/parsers/cksum.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"jc/parsers/csv.py","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/dir.py","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":2},{"name":"jc/parsers/dpkg_l.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/finger.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/group.py","lines_changed":2},{"name":"jc/parsers/gshadow.py","lines_changed":2},{"name":"jc/parsers/hash.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":2},{"name":"jc/parsers/hciconfig.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/iostat.py","lines_changed":2},{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2},{"name":"jc/parsers/jar_manifest.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/kv.py","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/lsusb.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/netstat_freebsd_osx.py","lines_changed":2},{"name":"jc/parsers/netstat_linux.py","lines_changed":2},{"name":"jc/parsers/nmcli.py","lines_changed":2},{"name":"jc/parsers/ntpq.py","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":2},{"name":"jc/parsers/ping.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/rpm_qi.py","lines_changed":2},{"name":"jc/parsers/rsync.py","lines_changed":2},{"name":"jc/parsers/rsync_s.py","lines_changed":2},{"name":"jc/parsers/sfdisk.py","lines_changed":2},{"name":"jc/parsers/shadow.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/stat_s.py","lines_changed":2},{"name":"jc/parsers/sysctl.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/systeminfo.py","lines_changed":2},{"name":"jc/parsers/time.py","lines_changed":2},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/ufw.py","lines_changed":2},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/universal.py","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/parsers/wc.py","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":2},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/xrandr.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2},{"name":"jc/parsers/zipinfo.py","lines_changed":2},{"name":"jc/streaming.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"templates/manpage_template","lines_changed":2},{"name":"templates/readme_template","lines_changed":4}]},"message":"change name to JSON Convert","epoch":1646429259,"epoch_utc":null},{"commit":"9a3602e70b865a3015bd700b30d1076e17511a9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 08:57:11 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 4 08:57:11 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":4},{"name":"jc/lib.py","lines_changed":4}]},"message":"doc update","epoch":1646413031,"epoch_utc":null},{"commit":"a9f53ee258e18bc90934e263d8dc96feee84e939","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 3 17:50:19 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 3 17:50:19 2022 -0800","stats":{"files_changed":2,"insertions":15,"deletions":4,"files":["jc/cli.py","jc/lib.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4},{"name":"jc/lib.py","lines_changed":15}]},"message":"optimize streaming parser detection in cli","epoch":1646358619,"epoch_utc":null},{"commit":"6be3d3d98222a262c5138bb09f2951ccfab96110","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 3 17:38:47 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 3 17:38:47 2022 -0800","stats":{"files_changed":3,"insertions":43,"deletions":1,"files":["CHANGELOG","docs/lib.md","docs/readme.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docs/lib.md","lines_changed":25},{"name":"docs/readme.md","lines_changed":16}]},"message":"doc update","epoch":1646357927,"epoch_utc":null},{"commit":"e49df7208377ab34a74240a06f35f17fee4b8203","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 3 17:37:01 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 3 17:37:01 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"use streaming parser list to find streaming parsers","epoch":1646357821,"epoch_utc":null},{"commit":"7ede7be7bf7b1a7d29d158b3b21c20fff4990e72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 3 17:36:40 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 3 17:36:40 2022 -0800","stats":{"files_changed":2,"insertions":42,"deletions":0,"files":["jc/__init__.py","jc/lib.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":17},{"name":"jc/lib.py","lines_changed":25}]},"message":"add standard and streaming list functions","epoch":1646357800,"epoch_utc":null},{"commit":"4758e28a36e2a55497e4f722d386a6b5cc30dc4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 2 15:24:18 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 2 15:24:18 2022 -0800","stats":{"files_changed":2,"insertions":20,"deletions":16,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":18},{"name":"jc/__init__.py","lines_changed":18}]},"message":"formatting","epoch":1646263458,"epoch_utc":null},{"commit":"4a1ee151b3cb054d84cd964fd62f5855f765751d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 2 10:57:09 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 2 10:57:09 2022 -0800","stats":{"files_changed":2,"insertions":9,"deletions":11,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py"],"file_stats":[{"name":"docs/parsers/nmcli.md","lines_changed":4},{"name":"jc/parsers/nmcli.py","lines_changed":16}]},"message":"add dhcp6 options to docs","epoch":1646247429,"epoch_utc":null},{"commit":"8c8afc1a922e3c30fcf501d169b33a68b65cd3e0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 2 10:15:01 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 2 10:15:01 2022 -0800","stats":{"files_changed":2,"insertions":60,"deletions":24,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":42},{"name":"jc/__init__.py","lines_changed":42}]},"message":"formatting","epoch":1646244901,"epoch_utc":null},{"commit":"ed205f7720d98c225c917c252ed7a6c9e6e8c2b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 28 12:55:05 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 28 12:55:05 2022 -0800","stats":{"files_changed":3,"insertions":9,"deletions":9,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/nmcli.md","lines_changed":8},{"name":"jc/parsers/nmcli.py","lines_changed":8},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1646081705,"epoch_utc":null},{"commit":"d65f7ae992abc33140c00714d442290103661757","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 28 12:26:06 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 28 12:26:06 2022 -0800","stats":{"files_changed":1,"insertions":41,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":41}]},"message":"add nmcli","epoch":1646079966,"epoch_utc":null},{"commit":"e2ffef57b9a474048fe72cf42aebfa6bfaf2e42b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 28 12:20:39 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 28 12:20:39 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_nmcli.py"],"file_stats":[{"name":"tests/test_nmcli.py","lines_changed":2}]},"message":"fix test","epoch":1646079639,"epoch_utc":null},{"commit":"002caa9fb3b65f1ae64df25cc39c3de130403e76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 28 12:19:02 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 28 12:19:02 2022 -0800","stats":{"files_changed":7,"insertions":252,"deletions":0,"files":[".../fedora32/nmcli-connection-show-ens33.json",".../fedora32/nmcli-connection-show-ens33.out",".../fixtures/fedora32/nmcli-device-show-ens33.json",".../fixtures/fedora32/nmcli-device-show-ens33.out","tests/fixtures/fedora32/nmcli-device-show.json","tests/fixtures/fedora32/nmcli-device-show.out","tests/test_nmcli.py"],"file_stats":[{"name":".../fedora32/nmcli-connection-show-ens33.json","lines_changed":1},{"name":".../fedora32/nmcli-connection-show-ens33.out","lines_changed":148},{"name":".../fixtures/fedora32/nmcli-device-show-ens33.json","lines_changed":1},{"name":".../fixtures/fedora32/nmcli-device-show-ens33.out","lines_changed":26},{"name":"tests/fixtures/fedora32/nmcli-device-show.json","lines_changed":1},{"name":"tests/fixtures/fedora32/nmcli-device-show.out","lines_changed":39},{"name":"tests/test_nmcli.py","lines_changed":36}]},"message":"add fedora tests","epoch":1646079542,"epoch_utc":null},{"commit":"b7c6faf3daf8eb0c42a222778baa440c5a018c75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 25 11:23:20 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 25 11:23:20 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"enhance error message","epoch":1645817000,"epoch_utc":null},{"commit":"554ca61d1764b81dea06b6b013d0444072f0662a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 25 11:19:20 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 25 11:19:20 2022 -0800","stats":{"files_changed":11,"insertions":165,"deletions":0,"files":[".../fixtures/centos-7.7/nmcli-connection-all.json",".../centos-7.7/nmcli-connection-show-ens33.json","tests/fixtures/centos-7.7/nmcli-connection.json","tests/fixtures/centos-7.7/nmcli-device-all.json",".../centos-7.7/nmcli-device-show-ens33.json",".../fixtures/centos-7.7/nmcli-device-show-lo.json","tests/fixtures/centos-7.7/nmcli-device-show.json","tests/fixtures/centos-7.7/nmcli-device.json","tests/fixtures/centos-7.7/nmcli-general-all.json",".../centos-7.7/nmcli-general-permissions.json","tests/test_nmcli.py"],"file_stats":[{"name":".../fixtures/centos-7.7/nmcli-connection-all.json","lines_changed":1},{"name":".../centos-7.7/nmcli-connection-show-ens33.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-connection.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-device-all.json","lines_changed":1},{"name":".../centos-7.7/nmcli-device-show-ens33.json","lines_changed":1},{"name":".../fixtures/centos-7.7/nmcli-device-show-lo.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-device-show.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-device.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-general-all.json","lines_changed":1},{"name":".../centos-7.7/nmcli-general-permissions.json","lines_changed":1},{"name":"tests/test_nmcli.py","lines_changed":155}]},"message":"add tests","epoch":1645816760,"epoch_utc":null},{"commit":"7b9722d255a16981099dc803beda7abe0d46106a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 21:21:02 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 21:21:02 2022 -0800","stats":{"files_changed":2,"insertions":26,"deletions":34,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":30},{"name":"templates/manpage_template","lines_changed":30}]},"message":"fix formatting","epoch":1645766462,"epoch_utc":null},{"commit":"5505bde8ef77db0885f08d8d04160cbc4418dd67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:53:54 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 20:53:54 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/zipinfo.md"],"file_stats":[{"name":"docs/parsers/zipinfo.md","lines_changed":2}]},"message":"doc update","epoch":1645764834,"epoch_utc":null},{"commit":"dbcd9a4060647be24bca2a8d577f11925a9ac210","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:52:28 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 20:52:28 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":2}]},"message":"bump version to 1.0","epoch":1645764748,"epoch_utc":null},{"commit":"4bdeb2b3aa063c2772f5c44e52acbe16e915cc3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:52:18 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 20:52:18 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/xrandr.py"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":2}]},"message":"simplify warning message","epoch":1645764738,"epoch_utc":null},{"commit":"6ae1d03187c6d4b669f6f74db1be7c9cf07adaed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:47:15 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 20:47:15 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py"],"file_stats":[{"name":"docs/parsers/nmcli.md","lines_changed":2},{"name":"jc/parsers/nmcli.py","lines_changed":2}]},"message":"doc fix","epoch":1645764435,"epoch_utc":null},{"commit":"f75b06abe4af152be094f8bc1ba5ce66b25e35e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:43:20 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 20:43:20 2022 -0800","stats":{"files_changed":4,"insertions":180,"deletions":3,"files":["README.md","docs/parsers/nmcli.md","jc/parsers/nmcli.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/nmcli.md","lines_changed":172},{"name":"jc/parsers/nmcli.py","lines_changed":3},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update","epoch":1645764200,"epoch_utc":null},{"commit":"1923925710dadc4116202855ae884ef18394d428","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:35:00 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 20:35:00 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"update changelog","epoch":1645763700,"epoch_utc":null},{"commit":"2c5c57ae04df3b7abfb1c3423c3350c7c2ab5dcd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:33:10 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 20:33:10 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/lib.py","setup.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1645763590,"epoch_utc":null},{"commit":"f4d11d697e000135720a971edf84dcad31a1bec8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:31:58 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 20:31:58 2022 -0800","stats":{"files_changed":1,"insertions":155,"deletions":15,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":170}]},"message":"finish use cases and doc","epoch":1645763518,"epoch_utc":null},{"commit":"7f409b7082aa9525cc9280e3c5c92bc82089cf14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:31:09 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 20:31:09 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"enhance ParseError cli message","epoch":1645763469,"epoch_utc":null},{"commit":"937fa5aad2519f588c6d0feb8f08211f6b99872f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 18:22:19 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 18:22:19 2022 -0800","stats":{"files_changed":1,"insertions":20,"deletions":0,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":20}]},"message":"split dhcp options","epoch":1645755739,"epoch_utc":null},{"commit":"19dcef513565c34a31f6d735577da5e25f9bd2cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 17:10:39 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 17:10:39 2022 -0800","stats":{"files_changed":1,"insertions":69,"deletions":2,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":71}]},"message":"firm up flow. add/remove text. parse routes","epoch":1645751439,"epoch_utc":null},{"commit":"3d01356461eb2790f859968da7f5cb4fd2ee9898","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 14:53:26 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 14:53:26 2022 -0800","stats":{"files_changed":1,"insertions":27,"deletions":3,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":30}]},"message":"add text_kv function","epoch":1645743206,"epoch_utc":null},{"commit":"2d6f666fa4c791e7995f6b0c1490dac73ce224c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 12:21:13 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 12:21:13 2022 -0800","stats":{"files_changed":1,"insertions":61,"deletions":16,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":77}]},"message":"add dev show and conn show parsers","epoch":1645734073,"epoch_utc":null},{"commit":"4dda895f122ecc19b267ed1485cf656bae76ff07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 11:25:14 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 24 11:25:14 2022 -0800","stats":{"files_changed":13,"insertions":404,"deletions":0,"files":["jc/lib.py","jc/parsers/nmcli.py","tests/fixtures/centos-7.7/nmcli-connection-all.out",".../centos-7.7/nmcli-connection-show-ens33.out","tests/fixtures/centos-7.7/nmcli-connection.out","tests/fixtures/centos-7.7/nmcli-device-all.out",".../centos-7.7/nmcli-device-show-ens33.out","tests/fixtures/centos-7.7/nmcli-device-show-lo.out","tests/fixtures/centos-7.7/nmcli-device-show.out","tests/fixtures/centos-7.7/nmcli-device.out","tests/fixtures/centos-7.7/nmcli-general-all.out",".../centos-7.7/nmcli-general-permissions.out","tests/fixtures/centos-7.7/nmcli.out"],"file_stats":[{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/nmcli.py","lines_changed":130},{"name":"tests/fixtures/centos-7.7/nmcli-connection-all.out","lines_changed":3},{"name":".../centos-7.7/nmcli-connection-show-ens33.out","lines_changed":136},{"name":"tests/fixtures/centos-7.7/nmcli-connection.out","lines_changed":3},{"name":"tests/fixtures/centos-7.7/nmcli-device-all.out","lines_changed":5},{"name":".../centos-7.7/nmcli-device-show-ens33.out","lines_changed":18},{"name":"tests/fixtures/centos-7.7/nmcli-device-show-lo.out","lines_changed":12},{"name":"tests/fixtures/centos-7.7/nmcli-device-show.out","lines_changed":42},{"name":"tests/fixtures/centos-7.7/nmcli-device.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/nmcli-general-all.out","lines_changed":3},{"name":".../centos-7.7/nmcli-general-permissions.out","lines_changed":18},{"name":"tests/fixtures/centos-7.7/nmcli.out","lines_changed":29}]},"message":"initial nmcli parser","epoch":1645730714,"epoch_utc":null},{"commit":"52617b1722ba2f089716b069f78f70a865430d61","merge":"3afaa48 961968a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 21 16:35:12 2022 +0000","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Feb 21 16:35:12 2022 +0000","message":"Merge pull request #208 from kellyjonbrazil/master\n\nsync to dev","epoch":1645490112,"epoch_utc":1645461312},{"commit":"961968a0fcaf37b64bc850c4945ba4b805a1fe54","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 15:14:22 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 14 15:14:22 2022 -0800","stats":{"files_changed":2,"insertions":26,"deletions":23,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":24},{"name":"jc/parsers/xrandr.py","lines_changed":25}]},"message":"fix schema","epoch":1644880462,"epoch_utc":null},{"commit":"f026a788e5ca1231927e71fdbb1dadb2365a6518","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 11:30:03 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 14 11:30:03 2022 -0800","stats":{"files_changed":1,"insertions":62,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":62}]},"message":"add xrandr example","epoch":1644867003,"epoch_utc":null},{"commit":"2f7c03eb35520be916c28a687031f8c6425839ba","merge":"681176e 3afaa48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 10:36:08 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Feb 14 10:36:08 2022 -0800","message":"Merge pull request #207 from kellyjonbrazil/dev\n\nDev v1.18.3","epoch":1644863768,"epoch_utc":null},{"commit":"3afaa48eee081e28262d1762c5ec23d318012822","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 10:31:41 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 14 10:31:41 2022 -0800","stats":{"files_changed":15,"insertions":15,"deletions":15,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"docs/parsers/stat_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/rsync_s.py","lines_changed":2},{"name":"jc/parsers/stat_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]},"message":"doc update","epoch":1644863501,"epoch_utc":null},{"commit":"3201452564fb0fb44ef9cc32217339370bd2521e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 10:06:09 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 14 10:06:09 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":2},{"name":"jc/parsers/xrandr.py","lines_changed":2}]},"message":"add -p to example","epoch":1644861969,"epoch_utc":null},{"commit":"7ee1e34fc71c0dbc08ba482b787d560fd5125f64","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 10:03:52 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 14 10:03:52 2022 -0800","stats":{"files_changed":2,"insertions":116,"deletions":4,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":60},{"name":"jc/parsers/xrandr.py","lines_changed":60}]},"message":"doc update","epoch":1644861832,"epoch_utc":null},{"commit":"67dbf050161201f5016899591e81ab6253ac2322","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 09:58:31 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 14 09:58:31 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":2},{"name":"jc/parsers/xrandr.py","lines_changed":2}]},"message":"add type annotations","epoch":1644861511,"epoch_utc":null},{"commit":"4ac9f2e3dad4e7bd270bf5a8e61b729838b2c89c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 09:37:37 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 14 09:37:37 2022 -0800","stats":{"files_changed":5,"insertions":10,"deletions":17,"files":["CHANGELOG","docs/parsers/rsync.md","docs/parsers/rsync_s.md","jc/parsers/rsync.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docs/parsers/rsync.md","lines_changed":6},{"name":"docs/parsers/rsync_s.md","lines_changed":6},{"name":"jc/parsers/rsync.py","lines_changed":6},{"name":"jc/parsers/rsync_s.py","lines_changed":6}]},"message":"doc update","epoch":1644860257,"epoch_utc":null},{"commit":"3f5f6e39a777ef524cb3a06a01321bb8c31d930d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 09:20:16 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 14 09:20:16 2022 -0800","stats":{"files_changed":2,"insertions":100,"deletions":98,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":99},{"name":"jc/parsers/xrandr.py","lines_changed":99}]},"message":"formatting","epoch":1644859216,"epoch_utc":null},{"commit":"4723db8e3cc4946b14c83b25d6e8c6d2309aa72e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 09:14:46 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 14 09:14:46 2022 -0800","stats":{"files_changed":8,"insertions":195,"deletions":77,"files":["README.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/xrandr.md","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/xrandr.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/rsync.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"docs/parsers/xrandr.md","lines_changed":109},{"name":"jc/parsers/rsync.py","lines_changed":2},{"name":"jc/parsers/rsync_s.py","lines_changed":2},{"name":"jc/parsers/xrandr.py","lines_changed":147},{"name":"man/jc.1","lines_changed":7}]},"message":"doc updates","epoch":1644858886,"epoch_utc":null},{"commit":"ca914ec77d1fc77e42860189e62ac2fb203d4931","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 09:14:38 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 14 09:14:38 2022 -0800","stats":{"files_changed":1,"insertions":11,"deletions":2,"files":["tests/test_xrandr.py"],"file_stats":[{"name":"tests/test_xrandr.py","lines_changed":13}]},"message":"add nodata test","epoch":1644858878,"epoch_utc":null},{"commit":"dcc7f3f357ef016b4583fc1320fd2394788f271f","merge":"184ef3a cbdc666","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Feb 13 17:45:53 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Feb 13 17:45:53 2022 -0800","message":"Merge pull request #204 from lyterk/xrandr\n\nNew parser: xrandr","epoch":1644803153,"epoch_utc":null},{"commit":"cbdc66623671da335eafe132b7af79f884856f1d","author":"Kevin Lyter","author_email":"lyterk@sent.com","date":"Wed Feb 9 21:50:07 2022 -0800","commit_by":"Kevin Lyter","commit_by_email":"lyterk@sent.com","commit_by_date":"Wed Feb 9 22:06:23 2022 -0800","stats":{"files_changed":3,"insertions":2,"deletions":30,"files":["jc/parsers/xrandr.py",".../{simple_xrandr.json => xrandr_simple.json}",".../{simple_xrandr.out => xrandr_simple.out}"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":32},{"name":".../{simple_xrandr.json => xrandr_simple.json}","lines_changed":0},{"name":".../{simple_xrandr.out => xrandr_simple.out}","lines_changed":0}]},"message":"Return empty object if no results and filenames\n\n- If no results are returned, return {} instead of {\"screens\": [],\n\"unassociated_devices\": []}\n- simple_xrandr -> xrandr_simple","epoch":1644472207,"epoch_utc":null},{"commit":"184ef3a1faeb406ce62076cff637ee86d61541fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 8 14:45:33 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 8 14:45:33 2022 -0800","stats":{"files_changed":3,"insertions":11,"deletions":3,"files":["docs/parsers/rsync.md","docs/parsers/rsync_s.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/rsync.md","lines_changed":6},{"name":"docs/parsers/rsync_s.md","lines_changed":6},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1644360333,"epoch_utc":null},{"commit":"c732f759445e335fe36586859b6fde7e27bb8901","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 8 14:43:14 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 8 14:43:14 2022 -0800","stats":{"files_changed":2,"insertions":10,"deletions":2,"files":["jc/parsers/rsync.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":6},{"name":"jc/parsers/rsync_s.py","lines_changed":6}]},"message":"doc update","epoch":1644360194,"epoch_utc":null},{"commit":"7a1ae4f5fc5328c32bf77235cfbd9f83ec995053","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 8 13:32:22 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 8 13:32:22 2022 -0800","stats":{"files_changed":3,"insertions":105,"deletions":0,"files":["tests/{test_lib.py => test_jc_lib.py}","tests/test_jc_streaming.py","tests/{test_utils.py => test_jc_utils.py}"],"file_stats":[{"name":"tests/{test_lib.py => test_jc_lib.py}","lines_changed":0},{"name":"tests/test_jc_streaming.py","lines_changed":61},{"name":"tests/{test_utils.py => test_jc_utils.py}","lines_changed":44}]},"message":"add library tests","epoch":1644355942,"epoch_utc":null},{"commit":"d04bc3757c482ec9062b2da91ded76c5dd6d106b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 8 07:33:26 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 8 07:33:26 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add xrandr","epoch":1644334406,"epoch_utc":null},{"commit":"73e8391653145412cd852aca349466018c8b9084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 16:58:06 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 7 16:58:06 2022 -0800","stats":{"files_changed":1,"insertions":8,"deletions":3,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":11}]},"message":"formatting","epoch":1644281886,"epoch_utc":null},{"commit":"f6c1463c1578db264ccb3d4c2677857ed906e965","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 16:31:43 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 7 16:31:43 2022 -0800","stats":{"files_changed":1,"insertions":44,"deletions":24,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":68}]},"message":"formatting","epoch":1644280303,"epoch_utc":null},{"commit":"d392c7f901a9d7c57617fbd03bd3f88ee0bf4132","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 15:44:54 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 7 15:44:54 2022 -0800","stats":{"files_changed":12,"insertions":20,"deletions":13,"files":["docs/parsers/date.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/ls.md","docs/parsers/rpm_qi.md","docs/parsers/stat.md","docs/parsers/systeminfo.md","docs/parsers/timedatectl.md","docs/parsers/upower.md","docs/parsers/vmstat.md","docs/parsers/who.md","docs/utils.md"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":11}]},"message":"doc update","epoch":1644277494,"epoch_utc":null},{"commit":"d0387f58205b2fd9b9860ce9656bb29ceec54340","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 15:44:46 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 7 15:44:46 2022 -0800","stats":{"files_changed":16,"insertions":34,"deletions":29,"files":["jc/parsers/date.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/systeminfo.py","jc/parsers/timedatectl.py","jc/parsers/upower.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":4},{"name":"jc/parsers/dir.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/rpm_qi.py","lines_changed":6},{"name":"jc/parsers/rsync.py","lines_changed":2},{"name":"jc/parsers/rsync_s.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"jc/parsers/stat_s.py","lines_changed":2},{"name":"jc/parsers/systeminfo.py","lines_changed":8},{"name":"jc/parsers/timedatectl.py","lines_changed":4},{"name":"jc/parsers/upower.py","lines_changed":5},{"name":"jc/parsers/vmstat.py","lines_changed":5},{"name":"jc/parsers/vmstat_s.py","lines_changed":3},{"name":"jc/parsers/who.py","lines_changed":4}]},"message":"add timestamp format hints for better performance","epoch":1644277486,"epoch_utc":null},{"commit":"76f92908a3ba9cbadcc8e972afa8b1c4a69509bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 15:43:24 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 7 15:43:24 2022 -0800","stats":{"files_changed":1,"insertions":44,"deletions":9,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":53}]},"message":"add format hints for performance optimization","epoch":1644277404,"epoch_utc":null},{"commit":"1a115da67bdce9acfefbfb71fbac37e234b1babd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 08:34:34 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 7 08:34:34 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"add lru_cache maxsize for python 3.7 support","epoch":1644251674,"epoch_utc":null},{"commit":"f0a37ccf301eee5133a83b5dd96986fef0c38e7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 08:30:11 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 7 08:30:11 2022 -0800","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":11}]},"message":"use lru_cache for significant performance boost to timestamp","epoch":1644251411,"epoch_utc":null},{"commit":"f331f53a531169520a4d8ea15d277560a49aedb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 08:06:48 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 7 08:06:48 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["CHANGELOG","jc/utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/utils.py","lines_changed":2}]},"message":"use !r formatting instead of quotes","epoch":1644250008,"epoch_utc":null},{"commit":"8611aff06b18212b7292d564beb27a2062fc3f41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 06:42:35 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 7 06:42:35 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/parsers/rsync_s.md","jc/parsers/rsync_s.py"],"file_stats":[{"name":"docs/parsers/rsync_s.md","lines_changed":8},{"name":"jc/parsers/rsync_s.py","lines_changed":8}]},"message":"add examples","epoch":1644244955,"epoch_utc":null},{"commit":"2f3f78e8d35a0ccccde0f84417400acdfe7fe0aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 06:29:17 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 7 06:29:17 2022 -0800","stats":{"files_changed":16,"insertions":194,"deletions":185,"files":["docgen.sh","docs/parsers/rsync_s.md","docs/readme.md","docs/streaming.md","docs/utils.md","jc/__init__.py","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/streaming.py","man/jc.1"],"file_stats":[{"name":"docgen.sh","lines_changed":3},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"docs/readme.md","lines_changed":2},{"name":"docs/streaming.md","lines_changed":114},{"name":"docs/utils.md","lines_changed":93},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":10},{"name":"jc/parsers/foo_s.py","lines_changed":14},{"name":"jc/parsers/iostat_s.py","lines_changed":15},{"name":"jc/parsers/ls_s.py","lines_changed":14},{"name":"jc/parsers/ping_s.py","lines_changed":4},{"name":"jc/parsers/rsync_s.py","lines_changed":25},{"name":"jc/parsers/stat_s.py","lines_changed":22},{"name":"jc/parsers/vmstat_s.py","lines_changed":16},{"name":"jc/streaming.py","lines_changed":41},{"name":"man/jc.1","lines_changed":2}]},"message":"refine streaming parsers","epoch":1644244157,"epoch_utc":null},{"commit":"d1e0ee6123dfecd48d074cb7a40e98a15b6adcb9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Feb 6 08:56:18 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Feb 6 08:56:18 2022 -0800","stats":{"files_changed":1,"insertions":6,"deletions":8,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":14}]},"message":"use new streaming functions","epoch":1644166578,"epoch_utc":null},{"commit":"45314c98083067f1f6fae9c477c99fabec223f29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Feb 6 08:55:42 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Feb 6 08:55:42 2022 -0800","stats":{"files_changed":2,"insertions":112,"deletions":102,"files":["jc/streaming.py","jc/utils.py"],"file_stats":[{"name":"jc/streaming.py","lines_changed":111},{"name":"jc/utils.py","lines_changed":103}]},"message":"move some functions to streaming","epoch":1644166542,"epoch_utc":null},{"commit":"df00945b46e27e10107f48d186eedf80b55bd40e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 4 16:03:44 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 4 16:03:44 2022 -0800","stats":{"files_changed":6,"insertions":59,"deletions":49,"files":["jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":15},{"name":"jc/parsers/iostat_s.py","lines_changed":15},{"name":"jc/parsers/ls_s.py","lines_changed":17},{"name":"jc/parsers/ping_s.py","lines_changed":19},{"name":"jc/parsers/rsync_s.py","lines_changed":21},{"name":"jc/parsers/stat_s.py","lines_changed":21}]},"message":"move try/except inside for loop","epoch":1644019424,"epoch_utc":null},{"commit":"fda0050d867bcbe4f1d7e024b08e9881d0f57735","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 4 14:39:45 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 4 14:39:45 2022 -0800","stats":{"files_changed":13,"insertions":191,"deletions":0,"files":[".../centos-7.7/rsync-i-logfile-streaming.json","tests/fixtures/centos-7.7/rsync-i-streaming.json",".../centos-7.7/rsync-i-v-logfile-streaming.json",".../centos-7.7/rsync-i-vv-logfile-streaming.json",".../rsync-i-vvv-logfile-nochange-streaming.json",".../centos-7.7/rsync-i-vvv-logfile-streaming.json",".../centos-7.7/rsync-ivvv-nochange-streaming.json",".../fixtures/centos-7.7/rsync-ivvv-streaming.json","tests/fixtures/generic/rsync-i-streaming.json",".../rsync-i-vvv-logfile-nochange-streaming.json",".../rsync-i-vvv-nochange-streaming.json",".../osx-10.14.6/rsync-i-vvv-streaming.json","tests/test_rsync_s.py"],"file_stats":[{"name":".../centos-7.7/rsync-i-logfile-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-streaming.json","lines_changed":1},{"name":".../centos-7.7/rsync-i-v-logfile-streaming.json","lines_changed":1},{"name":".../centos-7.7/rsync-i-vv-logfile-streaming.json","lines_changed":1},{"name":".../rsync-i-vvv-logfile-nochange-streaming.json","lines_changed":1},{"name":".../centos-7.7/rsync-i-vvv-logfile-streaming.json","lines_changed":1},{"name":".../centos-7.7/rsync-ivvv-nochange-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/rsync-ivvv-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/rsync-i-streaming.json","lines_changed":1},{"name":".../rsync-i-vvv-logfile-nochange-streaming.json","lines_changed":1},{"name":".../rsync-i-vvv-nochange-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/rsync-i-vvv-streaming.json","lines_changed":1},{"name":"tests/test_rsync_s.py","lines_changed":179}]},"message":"add rsync-s tests","epoch":1644014385,"epoch_utc":null},{"commit":"a76d46f9ecb1eff4d6cc7ad633c97cec0e99001a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 4 12:14:16 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 4 12:14:16 2022 -0800","stats":{"files_changed":19,"insertions":110,"deletions":109,"files":["CHANGELOG","docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","docs/utils.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/utils.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":5},{"name":"docs/parsers/iostat_s.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":5},{"name":"docs/parsers/ping_s.md","lines_changed":5},{"name":"docs/parsers/rsync_s.md","lines_changed":5},{"name":"docs/parsers/stat_s.md","lines_changed":5},{"name":"docs/parsers/vmstat_s.md","lines_changed":5},{"name":"docs/utils.md","lines_changed":15},{"name":"jc/parsers/csv_s.py","lines_changed":13},{"name":"jc/parsers/foo_s.py","lines_changed":11},{"name":"jc/parsers/iostat_s.py","lines_changed":23},{"name":"jc/parsers/ls_s.py","lines_changed":20},{"name":"jc/parsers/ping_s.py","lines_changed":22},{"name":"jc/parsers/rsync_s.py","lines_changed":11},{"name":"jc/parsers/stat_s.py","lines_changed":30},{"name":"jc/parsers/vmstat_s.py","lines_changed":11},{"name":"jc/utils.py","lines_changed":24},{"name":"man/jc.1","lines_changed":2}]},"message":"refactor ignore_exceptions","epoch":1644005656,"epoch_utc":null},{"commit":"6b069a82d0fa19c8d83b19b934bace556cb758d7","author":"Kevin Lyter","author_email":"lyterk@sent.com","date":"Thu Feb 3 18:13:58 2022 -0800","commit_by":"Kevin Lyter","commit_by_email":"lyterk@sent.com","commit_by_date":"Thu Feb 3 22:40:40 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":1}]},"message":"Add xrandr to lib.py","epoch":1643940838,"epoch_utc":null},{"commit":"6b793d052147406f388c4d5dc04f506a3456f409","author":"Kevin Lyter","author_email":"lyterk@sent.com","date":"Thu Feb 3 18:13:11 2022 -0800","commit_by":"Kevin Lyter","commit_by_email":"lyterk@sent.com","commit_by_date":"Thu Feb 3 22:40:35 2022 -0800","stats":{"files_changed":1,"insertions":6,"deletions":11,"files":["jc/parsers/xrandr.py"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":17}]},"message":"Clean up types\n\n* | operator => Union[]\n* Remove unused import Iterator\n* Remove comment","epoch":1643940791,"epoch_utc":null},{"commit":"ce9103f7cc666895dc7840d32797d8c7274cf1b8","author":"Kevin Lyter","author_email":"lyterk@sent.com","date":"Thu Feb 3 18:12:46 2022 -0800","commit_by":"Kevin Lyter","commit_by_email":"lyterk@sent.com","commit_by_date":"Thu Feb 3 18:12:46 2022 -0800","stats":{"files_changed":2,"insertions":0,"deletions":287,"files":["templates/xrandr_sample.txt","templates/xrandr_sample_verbose.txt"],"file_stats":[{"name":"templates/xrandr_sample.txt","lines_changed":38},{"name":"templates/xrandr_sample_verbose.txt","lines_changed":249}]},"message":"Delete old files in template folder","epoch":1643940766,"epoch_utc":null},{"commit":"671d6dee36a37317257e09a080849205d301bceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 3 15:47:46 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 3 15:47:46 2022 -0800","stats":{"files_changed":8,"insertions":83,"deletions":15,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","docs/utils.md"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":8},{"name":"docs/parsers/iostat_s.md","lines_changed":8},{"name":"docs/parsers/ls_s.md","lines_changed":8},{"name":"docs/parsers/ping_s.md","lines_changed":8},{"name":"docs/parsers/rsync_s.md","lines_changed":10},{"name":"docs/parsers/stat_s.md","lines_changed":8},{"name":"docs/parsers/vmstat_s.md","lines_changed":8},{"name":"docs/utils.md","lines_changed":40}]},"message":"doc update","epoch":1643932066,"epoch_utc":null},{"commit":"49929c714c2d71a310b1dd95138dbd02f8704138","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 3 15:44:18 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 3 15:44:18 2022 -0800","stats":{"files_changed":9,"insertions":139,"deletions":52,"files":["jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":14},{"name":"jc/parsers/foo_s.py","lines_changed":16},{"name":"jc/parsers/iostat_s.py","lines_changed":15},{"name":"jc/parsers/ls_s.py","lines_changed":14},{"name":"jc/parsers/ping_s.py","lines_changed":14},{"name":"jc/parsers/rsync_s.py","lines_changed":30},{"name":"jc/parsers/stat_s.py","lines_changed":21},{"name":"jc/parsers/vmstat_s.py","lines_changed":14},{"name":"jc/utils.py","lines_changed":53}]},"message":"add add_jc_meta decorator","epoch":1643931858,"epoch_utc":null},{"commit":"2986771f07de87bfee44dd3bbb4f285e249aad76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 3 09:21:20 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 3 09:21:20 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"require python v3.7 and above since v3.6 is now deprecated","epoch":1643908880,"epoch_utc":null},{"commit":"520082d963b93d2bafeff921da3899686b22cadf","author":"Kevin Lyter","author_email":"lyterk@sent.com","date":"Wed Feb 2 18:25:55 2022 -0800","commit_by":"Kevin Lyter","commit_by_email":"lyterk@sent.com","commit_by_date":"Wed Feb 2 20:33:25 2022 -0800","stats":{"files_changed":9,"insertions":968,"deletions":0,"files":["jc/parsers/xrandr.py","templates/xrandr_sample.txt","templates/xrandr_sample_verbose.txt","tests/fixtures/generic/simple_xrandr.json","tests/fixtures/generic/simple_xrandr.out","tests/fixtures/generic/xrandr.out","tests/fixtures/generic/xrandr_2.out","tests/fixtures/generic/xrandr_device.out","tests/test_xrandr.py"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":353},{"name":"templates/xrandr_sample.txt","lines_changed":38},{"name":"templates/xrandr_sample_verbose.txt","lines_changed":249},{"name":"tests/fixtures/generic/simple_xrandr.json","lines_changed":56},{"name":"tests/fixtures/generic/simple_xrandr.out","lines_changed":4},{"name":"tests/fixtures/generic/xrandr.out","lines_changed":38},{"name":"tests/fixtures/generic/xrandr_2.out","lines_changed":43},{"name":"tests/fixtures/generic/xrandr_device.out","lines_changed":15},{"name":"tests/test_xrandr.py","lines_changed":172}]},"message":"New parser: xrandr\n\nTests passing, working as intended in plugin directory","epoch":1643855155,"epoch_utc":null},{"commit":"021e296d457140c32b5256c2b0acf66efc458896","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 17:06:20 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 2 17:06:20 2022 -0800","stats":{"files_changed":1,"insertions":104,"deletions":100,"files":["jc/parsers/rsync_s.py"],"file_stats":[{"name":"jc/parsers/rsync_s.py","lines_changed":204}]},"message":"move variable inits and regexes up","epoch":1643850380,"epoch_utc":null},{"commit":"42e56fbcea6db64ea7f7045e7755af492c95aec2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 17:05:53 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 2 17:05:53 2022 -0800","stats":{"files_changed":1,"insertions":11,"deletions":12,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":23}]},"message":"move regex up","epoch":1643850353,"epoch_utc":null},{"commit":"a5b62a4055df37b84751a7cdc14eb6f1ed907cd9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 16:03:14 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 2 16:03:14 2022 -0800","stats":{"files_changed":2,"insertions":230,"deletions":18,"files":["docs/parsers/rsync_s.md","jc/parsers/rsync_s.py"],"file_stats":[{"name":"docs/parsers/rsync_s.md","lines_changed":124},{"name":"jc/parsers/rsync_s.py","lines_changed":124}]},"message":"add processing and docs","epoch":1643846594,"epoch_utc":null},{"commit":"be98c9b7f6c67e23ea101223934d67bba512e645","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 15:59:12 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 2 15:59:12 2022 -0800","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":11}]},"message":"simplify try/except by moving outside for loop","epoch":1643846352,"epoch_utc":null},{"commit":"aceeb8450796ae748a4d4abf75643f309d0a42e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 15:58:29 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 2 15:58:29 2022 -0800","stats":{"files_changed":3,"insertions":12,"deletions":1,"files":["CHANGELOG","README.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":5},{"name":"README.md","lines_changed":1},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update","epoch":1643846309,"epoch_utc":null},{"commit":"13910632173e7c815ff1161cf52fd1d17153c4a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 11:49:39 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 2 11:49:39 2022 -0800","stats":{"files_changed":2,"insertions":367,"deletions":0,"files":["jc/lib.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/rsync_s.py","lines_changed":366}]},"message":"first draft rsync streaming parser","epoch":1643831379,"epoch_utc":null},{"commit":"52157addd0d6dff3bdb34f179ec14b07c8c27ccc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 11:49:24 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 2 11:49:24 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":2}]},"message":"fix compatible list","epoch":1643831364,"epoch_utc":null},{"commit":"ec0bc6615e22fdc536623e290d88b9725cb6a0ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 19:20:19 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 19:20:19 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":2},{"name":"jc/utils.py","lines_changed":2}]},"message":"formatting","epoch":1643772019,"epoch_utc":null},{"commit":"2f80800e38256b363a4122195ec4aaffebe67d87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 19:06:41 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 19:06:41 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"simplify all_parser_info comprehension","epoch":1643771201,"epoch_utc":null},{"commit":"3959d3347c8d3e838f8c3158c4db74e2fa2eb856","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 18:33:07 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 18:33:07 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["docs/lib.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":4}]},"message":"doc update","epoch":1643769187,"epoch_utc":null},{"commit":"b57d25c69a193d3866ea86a3a34edd67049b198d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 18:30:37 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 18:30:37 2022 -0800","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":12}]},"message":"clean up return type for parser_info","epoch":1643769037,"epoch_utc":null},{"commit":"63e43a7cabb51c624c962cdcc92a1199f18c77e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 17:57:12 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 17:57:12 2022 -0800","stats":{"files_changed":7,"insertions":188,"deletions":21,"files":["README.md","docs/lib.md","docs/parsers/rsync.md","docs/parsers/universal.md","docs/parsers/zipinfo.md","docs/utils.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"docs/lib.md","lines_changed":4},{"name":"docs/parsers/rsync.md","lines_changed":163},{"name":"docs/parsers/universal.md","lines_changed":2},{"name":"docs/parsers/zipinfo.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":28},{"name":"man/jc.1","lines_changed":7}]},"message":"doc updates","epoch":1643767032,"epoch_utc":null},{"commit":"21719f9a26c25d896b0a5d49c9d7814175835e16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 17:54:22 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 17:54:22 2022 -0800","stats":{"files_changed":2,"insertions":18,"deletions":20,"files":["jc/lib.py","jc/utils.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":36}]},"message":"type annotation updates","epoch":1643766862,"epoch_utc":null},{"commit":"96ec70de4f6178b0669fd9ab47cb303dc45e55c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 17:18:55 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 17:18:55 2022 -0800","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["jc/parsers/universal.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":6},{"name":"jc/utils.py","lines_changed":4}]},"message":"remove unneeded optional","epoch":1643764735,"epoch_utc":null},{"commit":"a15a1967dc06169ceeda0fd5b4857ce1a351f3d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 17:18:39 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 17:18:39 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"fix typo","epoch":1643764719,"epoch_utc":null},{"commit":"a10d7566294fe5246e68a16e355ce56dd3557ac5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:49:31 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 16:49:31 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":8}]},"message":"fixy mypy issues","epoch":1643762971,"epoch_utc":null},{"commit":"0700dc7a64b121cf0243416e2cbb82fcef15f5a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:42:51 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 16:42:51 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":2}]},"message":"remove cygwin from compatible","epoch":1643762571,"epoch_utc":null},{"commit":"ca654b214057e19839b89e0d9a66f1110f679c1e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:42:10 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 16:42:10 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"fix parser order","epoch":1643762530,"epoch_utc":null},{"commit":"4ff3b87c1c96d720f4e7fd39e613944e322cb388","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:18:38 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 16:18:38 2022 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":1}]},"message":"remove future field from docstring","epoch":1643761118,"epoch_utc":null},{"commit":"ea244fb7a91f1d1f8ffe0ea6dc10dfe5ab836878","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:17:03 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 16:17:03 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_rsync.py"],"file_stats":[{"name":"tests/test_rsync.py","lines_changed":2}]},"message":"formatting","epoch":1643761023,"epoch_utc":null},{"commit":"8061f30e6fa58d22ed1a52e02c4d9c7f0bf132cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:16:33 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 16:16:33 2022 -0800","stats":{"files_changed":3,"insertions":236,"deletions":6,"files":["tests/fixtures/centos-7.7/rsync-ivvv-nochange.json","tests/fixtures/centos-7.7/rsync-ivvv-nochange.out","tests/test_rsync.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/rsync-ivvv-nochange.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-ivvv-nochange.out","lines_changed":224},{"name":"tests/test_rsync.py","lines_changed":17}]},"message":"add centos -i nochange test","epoch":1643760993,"epoch_utc":null},{"commit":"8f3b12e81e1b4f0d4394c33db5b3a352f4cfb391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 14:52:51 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 14:52:51 2022 -0800","stats":{"files_changed":6,"insertions":299,"deletions":0,"files":["jc/parsers/rsync.py",".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.json",".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.out","tests/fixtures/osx-10.14.6/rsync-i-vvv.json","tests/fixtures/osx-10.14.6/rsync-i-vvv.out","tests/test_rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":22},{"name":".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.out","lines_changed":88},{"name":"tests/fixtures/osx-10.14.6/rsync-i-vvv.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/rsync-i-vvv.out","lines_changed":156},{"name":"tests/test_rsync.py","lines_changed":31}]},"message":"add fixes for mac -i output","epoch":1643755971,"epoch_utc":null},{"commit":"d0694ce0db5ea2d06b5787429adf23095c4c2df0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 14:20:53 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 14:20:53 2022 -0800","stats":{"files_changed":3,"insertions":245,"deletions":6,"files":[".../osx-10.14.6/rsync-i-vvv-logfile-nochange.json",".../osx-10.14.6/rsync-i-vvv-logfile-nochange.out","tests/test_rsync.py"],"file_stats":[{"name":".../osx-10.14.6/rsync-i-vvv-logfile-nochange.json","lines_changed":1},{"name":".../osx-10.14.6/rsync-i-vvv-logfile-nochange.out","lines_changed":233},{"name":"tests/test_rsync.py","lines_changed":17}]},"message":"add nochange log test for mac","epoch":1643754053,"epoch_utc":null},{"commit":"0cd4c4bc7f3ffe13cb2f1920187e25636b88af61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 13:58:51 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 13:58:51 2022 -0800","stats":{"files_changed":2,"insertions":658,"deletions":0,"files":[".../centos-7.7/rsync-i-vvv-logfile-nochange.json",".../centos-7.7/rsync-i-vvv-logfile-nochange.out"],"file_stats":[{"name":".../centos-7.7/rsync-i-vvv-logfile-nochange.json","lines_changed":1},{"name":".../centos-7.7/rsync-i-vvv-logfile-nochange.out","lines_changed":657}]},"message":"add nochange tests","epoch":1643752731,"epoch_utc":null},{"commit":"12f90c349c903634def4225ce87924b475be46d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 13:54:25 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 13:54:25 2022 -0800","stats":{"files_changed":2,"insertions":68,"deletions":20,"files":["jc/parsers/rsync.py","tests/test_rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":68},{"name":"tests/test_rsync.py","lines_changed":20}]},"message":"update regexes for unchanged files","epoch":1643752465,"epoch_utc":null},{"commit":"26b8a1f167c4b1ec3f9fb4077254a27ed8548933","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 09:58:18 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 1 09:58:18 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":2}]},"message":"remove packages from binaries and packages header","epoch":1643738298,"epoch_utc":null},{"commit":"3abe382c064f605d915912f9b726d76784eba8a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 16:01:42 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 31 16:01:42 2022 -0800","stats":{"files_changed":2,"insertions":90,"deletions":3,"files":["EXAMPLES.md","jc/parsers/rsync.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":33},{"name":"jc/parsers/rsync.py","lines_changed":60}]},"message":"add examples","epoch":1643673702,"epoch_utc":null},{"commit":"1e2edc2c7b5dc104a9efe4da7df9be61b9e1be32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 15:54:05 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 31 15:54:05 2022 -0800","stats":{"files_changed":5,"insertions":53,"deletions":29,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-logfile.json","tests/fixtures/centos-7.7/rsync-i-v-logfile.json","tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":74},{"name":"tests/fixtures/centos-7.7/rsync-i-logfile.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rsync-i-v-logfile.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json","lines_changed":2}]},"message":"add timestamp","epoch":1643673245,"epoch_utc":null},{"commit":"5fe032a6741b7b6586c60eb28be74bd0e56277a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 13:44:44 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 31 13:44:44 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":2}]},"message":"fix typo","epoch":1643665484,"epoch_utc":null},{"commit":"e825c02df1cdae67c7f335fe3c675685eb1a8d02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 13:23:31 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 31 13:23:31 2022 -0800","stats":{"files_changed":11,"insertions":605,"deletions":0,"files":["tests/fixtures/centos-7.7/rsync-i-logfile.json","tests/fixtures/centos-7.7/rsync-i-v-logfile.json","tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out","tests/fixtures/centos-7.7/rsync-i.json","tests/fixtures/centos-7.7/rsync-i.out","tests/fixtures/centos-7.7/rsync-ivvv.json","tests/fixtures/generic/rsync-i.json","tests/fixtures/generic/rsync-i.out","tests/test_rsync.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/rsync-i-logfile.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-v-logfile.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out","lines_changed":434},{"name":"tests/fixtures/centos-7.7/rsync-i.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i.out","lines_changed":28},{"name":"tests/fixtures/centos-7.7/rsync-ivvv.json","lines_changed":1},{"name":"tests/fixtures/generic/rsync-i.json","lines_changed":1},{"name":"tests/fixtures/generic/rsync-i.out","lines_changed":11},{"name":"tests/test_rsync.py","lines_changed":125}]},"message":"add rsync tests","epoch":1643664211,"epoch_utc":null},{"commit":"a4a4d170b5ae8c189de982adea5bdc9bf1f26e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 13:23:22 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 31 13:23:22 2022 -0800","stats":{"files_changed":1,"insertions":10,"deletions":5,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":15}]},"message":"update docstring","epoch":1643664202,"epoch_utc":null},{"commit":"d0fcd523cb2cbb59d0f90369721749b54222961d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 11:13:23 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 31 11:13:23 2022 -0800","stats":{"files_changed":1,"insertions":19,"deletions":17,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":36}]},"message":"fix process conversions","epoch":1643656403,"epoch_utc":null},{"commit":"f72b7dc75dbd1c3f5daee3ecee28487258a04873","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 30 16:37:45 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 30 16:37:45 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":8,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":12}]},"message":"change keyname to files and remove future key","epoch":1643589465,"epoch_utc":null},{"commit":"4101dc6bf7bab7d00899426e2f6271a7480d558f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 30 16:21:03 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 30 16:21:03 2022 -0800","stats":{"files_changed":4,"insertions":1008,"deletions":19,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-v-logfile.out","tests/fixtures/centos-7.7/rsync-i-vv-logfile.out","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":60},{"name":"tests/fixtures/centos-7.7/rsync-i-v-logfile.out","lines_changed":61},{"name":"tests/fixtures/centos-7.7/rsync-i-vv-logfile.out","lines_changed":65},{"name":"tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out","lines_changed":841}]},"message":"add log-file support","epoch":1643588463,"epoch_utc":null},{"commit":"ea5011b616365b5c10c04416d43035d84e3dacba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jan 29 17:24:43 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Jan 29 17:24:43 2022 -0800","stats":{"files_changed":2,"insertions":175,"deletions":41,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-logfile.out"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":157},{"name":"tests/fixtures/centos-7.7/rsync-i-logfile.out","lines_changed":59}]},"message":"updated schema. add log-file option support","epoch":1643505883,"epoch_utc":null},{"commit":"d6de81747fd92642dbd5cb1fb097e375aa38be35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 28 15:00:05 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 28 15:00:05 2022 -0800","stats":{"files_changed":1,"insertions":11,"deletions":3,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":14}]},"message":"add int/float conversions","epoch":1643410805,"epoch_utc":null},{"commit":"38f04b1c9699246d85332b20df5b6a91ae0c48d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 28 14:45:01 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 28 14:45:01 2022 -0800","stats":{"files_changed":1,"insertions":32,"deletions":7,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":39}]},"message":"add summary","epoch":1643409901,"epoch_utc":null},{"commit":"84169e1a913d035744f71472be81fe3a7d774b97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 28 14:08:43 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 28 14:08:43 2022 -0800","stats":{"files_changed":4,"insertions":637,"deletions":2,"files":["jc/lib.py","jc/parsers/rsync.py","setup.py","tests/fixtures/centos-7.7/rsync-ivvv.out"],"file_stats":[{"name":"jc/lib.py","lines_changed":3},{"name":"jc/parsers/rsync.py","lines_changed":212},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rsync-ivvv.out","lines_changed":422}]},"message":"add rsync parser","epoch":1643407723,"epoch_utc":null},{"commit":"1f96586a5e883709f436526de6dcb21ff44bf97b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 28 14:08:21 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 28 14:08:21 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/foo.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":2}]},"message":"reorder imports","epoch":1643407701,"epoch_utc":null},{"commit":"681176e4c958157ef1f2151b3e57963a6ba48e09","merge":"b389665 8bb2663","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 16:53:37 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Jan 27 16:53:37 2022 -0800","message":"Merge pull request #203 from kellyjonbrazil/dev\n\nDev v1.18.2","epoch":1643331217,"epoch_utc":null},{"commit":"8bb266352207f95040b72750e5b3ae3b8ceb2b98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 16:49:46 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 27 16:49:46 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"date update","epoch":1643330986,"epoch_utc":null},{"commit":"663abf313931b49fad64b425ece6a5a257dc7938","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 16:14:14 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 27 16:14:14 2022 -0800","stats":{"files_changed":4,"insertions":3,"deletions":4,"files":["MANIFEST.in","mangen.py","runtests.sh","updatedocs.sh"],"file_stats":[{"name":"MANIFEST.in","lines_changed":1},{"name":"mangen.py","lines_changed":3},{"name":"runtests.sh","lines_changed":1},{"name":"updatedocs.sh","lines_changed":2}]},"message":"clean up scripts","epoch":1643328854,"epoch_utc":null},{"commit":"f7ac41db95c16fd21d83fbce678c5dec28ab40f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 13:27:50 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 27 13:27:50 2022 -0800","stats":{"files_changed":2,"insertions":1,"deletions":13,"files":["README.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"man/jc.1","lines_changed":12}]},"message":"final doc update","epoch":1643318870,"epoch_utc":null},{"commit":"5502cda9e591b531d6b452b02d8ec322c3287800","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 13:03:02 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 27 13:03:02 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["tests/test_lib.py"],"file_stats":[{"name":"tests/test_lib.py","lines_changed":3}]},"message":"add additional test for dict inside list for all_parser_info()","epoch":1643317382,"epoch_utc":null},{"commit":"a2b165565f54d91489bf38577a0785e78a4523d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 12:54:44 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 27 12:54:44 2022 -0800","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["tests/test_lib.py"],"file_stats":[{"name":"tests/test_lib.py","lines_changed":21}]},"message":"add lib tests for new functions","epoch":1643316884,"epoch_utc":null},{"commit":"b426369815984bd2aae8bcb14e306ba73b8cd4ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 07:45:20 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 27 07:45:20 2022 -0800","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":12}]},"message":"use all_parser_info() from lib in about function","epoch":1643298320,"epoch_utc":null},{"commit":"ac0840cc0afb4aeee2c99076710c987e09cfa5f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 20:51:18 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 20:51:18 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"fix typo","epoch":1643259078,"epoch_utc":null},{"commit":"ee98ab0a4a7671ae34ee79f7b0b97c061a8c2944","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 20:42:20 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 20:42:20 2022 -0800","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/lib.md","docs/utils.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":6},{"name":"docs/utils.md","lines_changed":4}]},"message":"doc update","epoch":1643258540,"epoch_utc":null},{"commit":"2adec2c0035b84ca0242f2494b6c2651b9898ca5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 20:40:03 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 20:40:03 2022 -0800","stats":{"files_changed":4,"insertions":21,"deletions":19,"files":["jc/lib.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/utils.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":18},{"name":"jc/parsers/foo.py","lines_changed":8},{"name":"jc/parsers/foo_s.py","lines_changed":10},{"name":"jc/utils.py","lines_changed":4}]},"message":"update type hints with mypy help","epoch":1643258403,"epoch_utc":null},{"commit":"f19c9c71bf4f592f55a5176458acd478b462fdbe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 18:39:14 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 18:39:14 2022 -0800","stats":{"files_changed":2,"insertions":15,"deletions":4,"files":["jc/parsers/foo.py","jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":9},{"name":"jc/parsers/foo_s.py","lines_changed":10}]},"message":"add type hints","epoch":1643251154,"epoch_utc":null},{"commit":"e93adf1884c0006a64123513070a5fd96a940da2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 18:09:30 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 18:09:30 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":5},{"name":"jc/__init__.py","lines_changed":5}]},"message":"fix doc","epoch":1643249370,"epoch_utc":null},{"commit":"254c4fc507842ca72064c0196418a7b939d54d06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 18:05:00 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 18:05:00 2022 -0800","stats":{"files_changed":2,"insertions":20,"deletions":6,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":13},{"name":"jc/__init__.py","lines_changed":13}]},"message":"add new functions","epoch":1643249100,"epoch_utc":null},{"commit":"74d5f60d14fc42cfd5768c7ffd6efc890a65d442","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 17:17:40 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 17:17:40 2022 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"update console interview description","epoch":1643246260,"epoch_utc":null},{"commit":"db7dc0634bc17b4daadc8bc21bba5975c093efe5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 17:12:35 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 17:12:35 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":2},{"name":"jc/lib.py","lines_changed":2}]},"message":"make **kwargs optional","epoch":1643245955,"epoch_utc":null},{"commit":"e156b0db453e99fb0f74b618fd343218f978ff68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 17:08:03 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 17:08:03 2022 -0800","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":4},{"name":"jc/parsers/universal.py","lines_changed":5}]},"message":"add type hints","epoch":1643245683,"epoch_utc":null},{"commit":"50adc05fbd6a0dcd9e4fb38aa41917bb57332f36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 16:58:48 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 16:58:48 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":6},{"name":"jc/utils.py","lines_changed":6}]},"message":"formatting","epoch":1643245128,"epoch_utc":null},{"commit":"446cac7c217103eb66cfdee97e3a208b7144b644","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 16:55:39 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 16:55:39 2022 -0800","stats":{"files_changed":2,"insertions":15,"deletions":11,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":11},{"name":"jc/utils.py","lines_changed":15}]},"message":"doc update","epoch":1643244939,"epoch_utc":null},{"commit":"28ffe3076bb5f23aeaf2624344856dbd02b4c0e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 16:34:23 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 16:34:23 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":9,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":8},{"name":"jc/lib.py","lines_changed":9}]},"message":"formatting","epoch":1643243663,"epoch_utc":null},{"commit":"d4d5e206cae14acd25445952f820810818b3fdce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 15:54:36 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 15:54:36 2022 -0800","stats":{"files_changed":3,"insertions":40,"deletions":28,"files":["docs/lib.md","docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":15},{"name":"docs/utils.md","lines_changed":26},{"name":"jc/utils.py","lines_changed":27}]},"message":"type hints update","epoch":1643241276,"epoch_utc":null},{"commit":"42fbe40a4ae02b9d09acdbf9b22573844959d2ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 15:54:18 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 15:54:18 2022 -0800","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":11}]},"message":"simplify type hints","epoch":1643241258,"epoch_utc":null},{"commit":"27e4a120e21dcbb3eadc6c4cf224ddb33859328d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 15:31:18 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 15:31:18 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":2},{"name":"jc/lib.py","lines_changed":2}]},"message":"remove trailing comma","epoch":1643239878,"epoch_utc":null},{"commit":"b5d5b7c73a96d4335b178ccfac60af90913e6f0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 15:01:42 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 15:01:42 2022 -0800","stats":{"files_changed":3,"insertions":29,"deletions":148,"files":["docgen.sh","docs/parsers/ifconfig.md","docs/parsers/traceroute.md"],"file_stats":[{"name":"docgen.sh","lines_changed":35},{"name":"docs/parsers/ifconfig.md","lines_changed":94},{"name":"docs/parsers/traceroute.md","lines_changed":48}]},"message":"remove private classes","epoch":1643238102,"epoch_utc":null},{"commit":"e7471556ba5fb0586ac5b0d7404cabd98a58db2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 14:39:11 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 14:39:11 2022 -0800","stats":{"files_changed":1,"insertions":0,"deletions":5,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":5}]},"message":"remove sed lines","epoch":1643236751,"epoch_utc":null},{"commit":"640a21341bb1c562cb2124155b511dfc74277fc0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 14:38:57 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 14:38:57 2022 -0800","stats":{"files_changed":2,"insertions":47,"deletions":42,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":20},{"name":"jc/utils.py","lines_changed":69}]},"message":"fix indentation","epoch":1643236737,"epoch_utc":null},{"commit":"f5befad3e41ba2864abc795a2fdf63e0f1d37c21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 14:21:06 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 14:21:06 2022 -0800","stats":{"files_changed":2,"insertions":33,"deletions":25,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":21},{"name":"jc/utils.py","lines_changed":37}]},"message":"move docstring under __init__","epoch":1643235666,"epoch_utc":null},{"commit":"f8223023c31093c1a34130b4e4cfc23b1d80a30c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 14:16:04 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 14:16:04 2022 -0800","stats":{"files_changed":4,"insertions":24,"deletions":10,"files":["docgen.sh","docs/parsers/ifconfig.md","docs/parsers/traceroute.md","docs/utils.md"],"file_stats":[{"name":"docgen.sh","lines_changed":28},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":2}]},"message":"change header depth","epoch":1643235364,"epoch_utc":null},{"commit":"7028e87f9b411c0cfb92eee7fc0667cdcb9a54ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 13:03:51 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 13:03:51 2022 -0800","stats":{"files_changed":87,"insertions":22,"deletions":445,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md"],"file_stats":[{"name":"docgen.sh","lines_changed":26},{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/csv_s.md","lines_changed":5},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":14},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iostat.md","lines_changed":5},{"name":"docs/parsers/iostat_s.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jar_manifest.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/ping_s.md","lines_changed":5},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/sfdisk.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/stat_s.md","lines_changed":5},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/systeminfo.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":8},{"name":"docs/parsers/ufw.md","lines_changed":5},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/vmstat.md","lines_changed":5},{"name":"docs/parsers/vmstat_s.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5},{"name":"docs/parsers/zipinfo.md","lines_changed":5},{"name":"docs/readme.md","lines_changed":4}]},"message":"remove TOC for parsers","epoch":1643231031,"epoch_utc":null},{"commit":"590728f9c1ccfdc078e600d1f35ad4ba51f70d36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 11:50:25 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 26 11:50:25 2022 -0800","stats":{"files_changed":91,"insertions":506,"deletions":17,"files":["docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/utils.md","jc/lib.py"],"file_stats":[{"name":"docgen.sh","lines_changed":28},{"name":"docs/lib.md","lines_changed":13},{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/csv_s.md","lines_changed":5},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":14},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iostat.md","lines_changed":5},{"name":"docs/parsers/iostat_s.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jar_manifest.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/ping_s.md","lines_changed":5},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/sfdisk.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/stat_s.md","lines_changed":5},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/systeminfo.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":8},{"name":"docs/parsers/ufw.md","lines_changed":5},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/universal.md","lines_changed":6},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/vmstat.md","lines_changed":5},{"name":"docs/parsers/vmstat_s.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5},{"name":"docs/parsers/zipinfo.md","lines_changed":5},{"name":"docs/readme.md","lines_changed":4},{"name":"docs/utils.md","lines_changed":17},{"name":"jc/lib.py","lines_changed":18}]},"message":"try new pydoc-markdown formatting options","epoch":1643226625,"epoch_utc":null},{"commit":"7cc147fe2d7b278bcab905bc4c3b70b5265e1510","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 19:28:37 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 19:28:37 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":44,"files":["docgen.sh","docgen.sh.old"],"file_stats":[{"name":"docgen.sh","lines_changed":4},{"name":"docgen.sh.old","lines_changed":44}]},"message":"increase heading size","epoch":1643167717,"epoch_utc":null},{"commit":"3cfb3965bb25024a7b03870b71f02194e278919b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 19:28:04 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 19:28:04 2022 -0800","stats":{"files_changed":3,"insertions":19,"deletions":19,"files":["docs/lib.md","docs/parsers/universal.md","docs/utils.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":10},{"name":"docs/parsers/universal.md","lines_changed":4},{"name":"docs/utils.md","lines_changed":24}]},"message":"formatting","epoch":1643167684,"epoch_utc":null},{"commit":"155d4213225fe4fcf4a059fb63c1ab9fc493177e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 19:18:54 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 19:18:54 2022 -0800","stats":{"files_changed":86,"insertions":182,"deletions":181,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"],"file_stats":[{"name":"docgen.sh","lines_changed":3},{"name":"docs/parsers/acpi.md","lines_changed":4},{"name":"docs/parsers/airport.md","lines_changed":4},{"name":"docs/parsers/airport_s.md","lines_changed":4},{"name":"docs/parsers/arp.md","lines_changed":4},{"name":"docs/parsers/blkid.md","lines_changed":4},{"name":"docs/parsers/cksum.md","lines_changed":4},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"docs/parsers/crontab_u.md","lines_changed":4},{"name":"docs/parsers/csv.md","lines_changed":4},{"name":"docs/parsers/csv_s.md","lines_changed":4},{"name":"docs/parsers/date.md","lines_changed":4},{"name":"docs/parsers/df.md","lines_changed":4},{"name":"docs/parsers/dig.md","lines_changed":4},{"name":"docs/parsers/dir.md","lines_changed":4},{"name":"docs/parsers/dmidecode.md","lines_changed":4},{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"docs/parsers/du.md","lines_changed":4},{"name":"docs/parsers/env.md","lines_changed":4},{"name":"docs/parsers/file.md","lines_changed":4},{"name":"docs/parsers/finger.md","lines_changed":4},{"name":"docs/parsers/free.md","lines_changed":4},{"name":"docs/parsers/fstab.md","lines_changed":4},{"name":"docs/parsers/group.md","lines_changed":4},{"name":"docs/parsers/gshadow.md","lines_changed":4},{"name":"docs/parsers/hash.md","lines_changed":4},{"name":"docs/parsers/hashsum.md","lines_changed":4},{"name":"docs/parsers/hciconfig.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":4},{"name":"docs/parsers/hosts.md","lines_changed":4},{"name":"docs/parsers/id.md","lines_changed":4},{"name":"docs/parsers/ifconfig.md","lines_changed":20},{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"docs/parsers/iostat.md","lines_changed":4},{"name":"docs/parsers/iostat_s.md","lines_changed":4},{"name":"docs/parsers/iptables.md","lines_changed":4},{"name":"docs/parsers/iw_scan.md","lines_changed":4},{"name":"docs/parsers/jar_manifest.md","lines_changed":4},{"name":"docs/parsers/jobs.md","lines_changed":4},{"name":"docs/parsers/kv.md","lines_changed":4},{"name":"docs/parsers/last.md","lines_changed":4},{"name":"docs/parsers/ls.md","lines_changed":4},{"name":"docs/parsers/ls_s.md","lines_changed":4},{"name":"docs/parsers/lsblk.md","lines_changed":4},{"name":"docs/parsers/lsmod.md","lines_changed":4},{"name":"docs/parsers/lsof.md","lines_changed":4},{"name":"docs/parsers/lsusb.md","lines_changed":4},{"name":"docs/parsers/mount.md","lines_changed":4},{"name":"docs/parsers/netstat.md","lines_changed":4},{"name":"docs/parsers/ntpq.md","lines_changed":4},{"name":"docs/parsers/passwd.md","lines_changed":4},{"name":"docs/parsers/ping.md","lines_changed":4},{"name":"docs/parsers/ping_s.md","lines_changed":4},{"name":"docs/parsers/pip_list.md","lines_changed":4},{"name":"docs/parsers/pip_show.md","lines_changed":4},{"name":"docs/parsers/ps.md","lines_changed":4},{"name":"docs/parsers/route.md","lines_changed":4},{"name":"docs/parsers/rpm_qi.md","lines_changed":4},{"name":"docs/parsers/sfdisk.md","lines_changed":4},{"name":"docs/parsers/shadow.md","lines_changed":4},{"name":"docs/parsers/ss.md","lines_changed":4},{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"docs/parsers/stat_s.md","lines_changed":4},{"name":"docs/parsers/sysctl.md","lines_changed":4},{"name":"docs/parsers/systemctl.md","lines_changed":4},{"name":"docs/parsers/systemctl_lj.md","lines_changed":4},{"name":"docs/parsers/systemctl_ls.md","lines_changed":4},{"name":"docs/parsers/systemctl_luf.md","lines_changed":4},{"name":"docs/parsers/systeminfo.md","lines_changed":4},{"name":"docs/parsers/time.md","lines_changed":4},{"name":"docs/parsers/timedatectl.md","lines_changed":4},{"name":"docs/parsers/tracepath.md","lines_changed":4},{"name":"docs/parsers/traceroute.md","lines_changed":8},{"name":"docs/parsers/ufw.md","lines_changed":4},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":4},{"name":"docs/parsers/uname.md","lines_changed":4},{"name":"docs/parsers/upower.md","lines_changed":4},{"name":"docs/parsers/uptime.md","lines_changed":4},{"name":"docs/parsers/vmstat.md","lines_changed":4},{"name":"docs/parsers/vmstat_s.md","lines_changed":4},{"name":"docs/parsers/w.md","lines_changed":4},{"name":"docs/parsers/wc.md","lines_changed":4},{"name":"docs/parsers/who.md","lines_changed":4},{"name":"docs/parsers/xml.md","lines_changed":4},{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"docs/parsers/zipinfo.md","lines_changed":4}]},"message":"formatting","epoch":1643167134,"epoch_utc":null},{"commit":"d3e10bb87bdb32396bce95f74e62a023f4efaf99","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:59:40 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 18:59:40 2022 -0800","stats":{"files_changed":1,"insertions":291,"deletions":0,"files":["docs/parsers/lsusb.md"],"file_stats":[{"name":"docs/parsers/lsusb.md","lines_changed":291}]},"message":"add lsusb docs","epoch":1643165980,"epoch_utc":null},{"commit":"fd5433ee6220357e59633c78b689aa432d056b43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:58:09 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 18:58:09 2022 -0800","stats":{"files_changed":3,"insertions":6,"deletions":293,"files":["docs/lib.md","docs/parsers/lsusb.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":4},{"name":"docs/parsers/lsusb.md","lines_changed":291},{"name":"jc/lib.py","lines_changed":4}]},"message":"parse docstring formatting","epoch":1643165889,"epoch_utc":null},{"commit":"4568f2d06e8fc1c465c86c318d925586481af062","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:51:56 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 18:51:56 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":4},{"name":"jc/lib.py","lines_changed":4}]},"message":"formatting for parse docstring","epoch":1643165516,"epoch_utc":null},{"commit":"c36e513d1bcc07cd8f01ff59199950e5396da51b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:42:55 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 18:42:55 2022 -0800","stats":{"files_changed":86,"insertions":88,"deletions":91,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"],"file_stats":[{"name":"docgen.sh","lines_changed":9},{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/dpkg_l.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/finger.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/gshadow.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iostat.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/jar_manifest.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/kv.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/stat_s.md","lines_changed":2},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"docs/parsers/zipinfo.md","lines_changed":2}]},"message":"formatting","epoch":1643164975,"epoch_utc":null},{"commit":"8e089baf3fe30fed80e1c5cdde7c3046bb70ca5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:38:26 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 18:38:26 2022 -0800","stats":{"files_changed":86,"insertions":8,"deletions":855,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"],"file_stats":[{"name":"docgen.sh","lines_changed":13},{"name":"docs/parsers/acpi.md","lines_changed":10},{"name":"docs/parsers/airport.md","lines_changed":10},{"name":"docs/parsers/airport_s.md","lines_changed":10},{"name":"docs/parsers/arp.md","lines_changed":10},{"name":"docs/parsers/blkid.md","lines_changed":10},{"name":"docs/parsers/cksum.md","lines_changed":10},{"name":"docs/parsers/crontab.md","lines_changed":10},{"name":"docs/parsers/crontab_u.md","lines_changed":10},{"name":"docs/parsers/csv.md","lines_changed":10},{"name":"docs/parsers/csv_s.md","lines_changed":10},{"name":"docs/parsers/date.md","lines_changed":10},{"name":"docs/parsers/df.md","lines_changed":10},{"name":"docs/parsers/dig.md","lines_changed":10},{"name":"docs/parsers/dir.md","lines_changed":10},{"name":"docs/parsers/dmidecode.md","lines_changed":10},{"name":"docs/parsers/dpkg_l.md","lines_changed":10},{"name":"docs/parsers/du.md","lines_changed":10},{"name":"docs/parsers/env.md","lines_changed":10},{"name":"docs/parsers/file.md","lines_changed":10},{"name":"docs/parsers/finger.md","lines_changed":10},{"name":"docs/parsers/free.md","lines_changed":10},{"name":"docs/parsers/fstab.md","lines_changed":10},{"name":"docs/parsers/group.md","lines_changed":10},{"name":"docs/parsers/gshadow.md","lines_changed":10},{"name":"docs/parsers/hash.md","lines_changed":10},{"name":"docs/parsers/hashsum.md","lines_changed":10},{"name":"docs/parsers/hciconfig.md","lines_changed":10},{"name":"docs/parsers/history.md","lines_changed":10},{"name":"docs/parsers/hosts.md","lines_changed":10},{"name":"docs/parsers/id.md","lines_changed":10},{"name":"docs/parsers/ifconfig.md","lines_changed":10},{"name":"docs/parsers/ini.md","lines_changed":10},{"name":"docs/parsers/iostat.md","lines_changed":10},{"name":"docs/parsers/iostat_s.md","lines_changed":10},{"name":"docs/parsers/iptables.md","lines_changed":10},{"name":"docs/parsers/iw_scan.md","lines_changed":10},{"name":"docs/parsers/jar_manifest.md","lines_changed":10},{"name":"docs/parsers/jobs.md","lines_changed":10},{"name":"docs/parsers/kv.md","lines_changed":10},{"name":"docs/parsers/last.md","lines_changed":10},{"name":"docs/parsers/ls.md","lines_changed":10},{"name":"docs/parsers/ls_s.md","lines_changed":10},{"name":"docs/parsers/lsblk.md","lines_changed":10},{"name":"docs/parsers/lsmod.md","lines_changed":10},{"name":"docs/parsers/lsof.md","lines_changed":10},{"name":"docs/parsers/lsusb.md","lines_changed":10},{"name":"docs/parsers/mount.md","lines_changed":10},{"name":"docs/parsers/netstat.md","lines_changed":10},{"name":"docs/parsers/ntpq.md","lines_changed":10},{"name":"docs/parsers/passwd.md","lines_changed":10},{"name":"docs/parsers/ping.md","lines_changed":10},{"name":"docs/parsers/ping_s.md","lines_changed":10},{"name":"docs/parsers/pip_list.md","lines_changed":10},{"name":"docs/parsers/pip_show.md","lines_changed":10},{"name":"docs/parsers/ps.md","lines_changed":10},{"name":"docs/parsers/route.md","lines_changed":10},{"name":"docs/parsers/rpm_qi.md","lines_changed":10},{"name":"docs/parsers/sfdisk.md","lines_changed":10},{"name":"docs/parsers/shadow.md","lines_changed":10},{"name":"docs/parsers/ss.md","lines_changed":10},{"name":"docs/parsers/stat.md","lines_changed":10},{"name":"docs/parsers/stat_s.md","lines_changed":10},{"name":"docs/parsers/sysctl.md","lines_changed":10},{"name":"docs/parsers/systemctl.md","lines_changed":10},{"name":"docs/parsers/systemctl_lj.md","lines_changed":10},{"name":"docs/parsers/systemctl_ls.md","lines_changed":10},{"name":"docs/parsers/systemctl_luf.md","lines_changed":10},{"name":"docs/parsers/systeminfo.md","lines_changed":10},{"name":"docs/parsers/time.md","lines_changed":10},{"name":"docs/parsers/timedatectl.md","lines_changed":10},{"name":"docs/parsers/tracepath.md","lines_changed":10},{"name":"docs/parsers/traceroute.md","lines_changed":10},{"name":"docs/parsers/ufw.md","lines_changed":10},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":10},{"name":"docs/parsers/uname.md","lines_changed":10},{"name":"docs/parsers/upower.md","lines_changed":10},{"name":"docs/parsers/uptime.md","lines_changed":10},{"name":"docs/parsers/vmstat.md","lines_changed":10},{"name":"docs/parsers/vmstat_s.md","lines_changed":10},{"name":"docs/parsers/w.md","lines_changed":10},{"name":"docs/parsers/wc.md","lines_changed":10},{"name":"docs/parsers/who.md","lines_changed":10},{"name":"docs/parsers/xml.md","lines_changed":10},{"name":"docs/parsers/yaml.md","lines_changed":10},{"name":"docs/parsers/zipinfo.md","lines_changed":10}]},"message":"remove info class from docs","epoch":1643164706,"epoch_utc":null},{"commit":"386f6c317e104e797c2b55e3d21c8b064a83ac78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:03:34 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 18:03:34 2022 -0800","stats":{"files_changed":89,"insertions":9552,"deletions":9939,"files":["docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/utils.md"],"file_stats":[{"name":"docgen.sh","lines_changed":10},{"name":"docs/lib.md","lines_changed":105},{"name":"docs/parsers/acpi.md","lines_changed":440},{"name":"docs/parsers/airport.md","lines_changed":146},{"name":"docs/parsers/airport_s.md","lines_changed":202},{"name":"docs/parsers/arp.md","lines_changed":220},{"name":"docs/parsers/blkid.md","lines_changed":230},{"name":"docs/parsers/cksum.md","lines_changed":90},{"name":"docs/parsers/crontab.md","lines_changed":330},{"name":"docs/parsers/crontab_u.md","lines_changed":326},{"name":"docs/parsers/csv.md","lines_changed":140},{"name":"docs/parsers/csv_s.md","lines_changed":114},{"name":"docs/parsers/date.md","lines_changed":132},{"name":"docs/parsers/df.md","lines_changed":184},{"name":"docs/parsers/dig.md","lines_changed":614},{"name":"docs/parsers/dir.md","lines_changed":210},{"name":"docs/parsers/dmidecode.md","lines_changed":240},{"name":"docs/parsers/dpkg_l.md","lines_changed":244},{"name":"docs/parsers/du.md","lines_changed":164},{"name":"docs/parsers/env.md","lines_changed":126},{"name":"docs/parsers/file.md","lines_changed":114},{"name":"docs/parsers/finger.md","lines_changed":166},{"name":"docs/parsers/free.md","lines_changed":134},{"name":"docs/parsers/fstab.md","lines_changed":164},{"name":"docs/parsers/group.md","lines_changed":212},{"name":"docs/parsers/gshadow.md","lines_changed":148},{"name":"docs/parsers/hash.md","lines_changed":68},{"name":"docs/parsers/hashsum.md","lines_changed":106},{"name":"docs/parsers/hciconfig.md","lines_changed":620},{"name":"docs/parsers/history.md","lines_changed":106},{"name":"docs/parsers/hosts.md","lines_changed":142},{"name":"docs/parsers/id.md","lines_changed":200},{"name":"docs/parsers/ifconfig.md","lines_changed":388},{"name":"docs/parsers/ini.md","lines_changed":110},{"name":"docs/parsers/iostat.md","lines_changed":304},{"name":"docs/parsers/iostat_s.md","lines_changed":198},{"name":"docs/parsers/iptables.md","lines_changed":312},{"name":"docs/parsers/iw_scan.md","lines_changed":226},{"name":"docs/parsers/jar_manifest.md","lines_changed":148},{"name":"docs/parsers/jobs.md","lines_changed":170},{"name":"docs/parsers/kv.md","lines_changed":86},{"name":"docs/parsers/last.md","lines_changed":186},{"name":"docs/parsers/ls.md","lines_changed":190},{"name":"docs/parsers/ls_s.md","lines_changed":130},{"name":"docs/parsers/lsblk.md","lines_changed":534},{"name":"docs/parsers/lsmod.md","lines_changed":240},{"name":"docs/parsers/lsof.md","lines_changed":228},{"name":"docs/parsers/lsusb.md","lines_changed":502},{"name":"docs/parsers/mount.md","lines_changed":140},{"name":"docs/parsers/netstat.md","lines_changed":688},{"name":"docs/parsers/ntpq.md","lines_changed":402},{"name":"docs/parsers/passwd.md","lines_changed":182},{"name":"docs/parsers/ping.md","lines_changed":308},{"name":"docs/parsers/ping_s.md","lines_changed":160},{"name":"docs/parsers/pip_list.md","lines_changed":84},{"name":"docs/parsers/pip_show.md","lines_changed":120},{"name":"docs/parsers/ps.md","lines_changed":394},{"name":"docs/parsers/route.md","lines_changed":206},{"name":"docs/parsers/rpm_qi.md","lines_changed":296},{"name":"docs/parsers/sfdisk.md","lines_changed":376},{"name":"docs/parsers/shadow.md","lines_changed":196},{"name":"docs/parsers/ss.md","lines_changed":538},{"name":"docs/parsers/stat.md","lines_changed":318},{"name":"docs/parsers/stat_s.md","lines_changed":152},{"name":"docs/parsers/sysctl.md","lines_changed":100},{"name":"docs/parsers/systemctl.md","lines_changed":106},{"name":"docs/parsers/systemctl_lj.md","lines_changed":140},{"name":"docs/parsers/systemctl_ls.md","lines_changed":90},{"name":"docs/parsers/systemctl_luf.md","lines_changed":82},{"name":"docs/parsers/systeminfo.md","lines_changed":396},{"name":"docs/parsers/time.md","lines_changed":242},{"name":"docs/parsers/timedatectl.md","lines_changed":112},{"name":"docs/parsers/tracepath.md","lines_changed":248},{"name":"docs/parsers/traceroute.md","lines_changed":220},{"name":"docs/parsers/ufw.md","lines_changed":390},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":250},{"name":"docs/parsers/uname.md","lines_changed":80},{"name":"docs/parsers/universal.md","lines_changed":72},{"name":"docs/parsers/upower.md","lines_changed":374},{"name":"docs/parsers/uptime.md","lines_changed":120},{"name":"docs/parsers/vmstat.md","lines_changed":226},{"name":"docs/parsers/vmstat_s.md","lines_changed":172},{"name":"docs/parsers/w.md","lines_changed":196},{"name":"docs/parsers/wc.md","lines_changed":98},{"name":"docs/parsers/who.md","lines_changed":250},{"name":"docs/parsers/xml.md","lines_changed":134},{"name":"docs/parsers/yaml.md","lines_changed":162},{"name":"docs/parsers/zipinfo.md","lines_changed":138},{"name":"docs/utils.md","lines_changed":134}]},"message":"update markdown processor settings","epoch":1643162614,"epoch_utc":null},{"commit":"75cd84ce8a86b3357c6cf5fe4fbc62d0f298a29a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 17:07:47 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 17:07:47 2022 -0800","stats":{"files_changed":94,"insertions":11423,"deletions":10081,"files":["README.md","docgen.sh","docgen.sh.old","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/utils.md","jc/cli.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docgen.sh","lines_changed":12},{"name":"docgen.sh.old","lines_changed":44},{"name":"docs/lib.md","lines_changed":151},{"name":"docs/parsers/acpi.md","lines_changed":454},{"name":"docs/parsers/airport.md","lines_changed":166},{"name":"docs/parsers/airport_s.md","lines_changed":224},{"name":"docs/parsers/arp.md","lines_changed":240},{"name":"docs/parsers/blkid.md","lines_changed":250},{"name":"docs/parsers/cksum.md","lines_changed":110},{"name":"docs/parsers/crontab.md","lines_changed":350},{"name":"docs/parsers/crontab_u.md","lines_changed":348},{"name":"docs/parsers/csv.md","lines_changed":160},{"name":"docs/parsers/csv_s.md","lines_changed":120},{"name":"docs/parsers/date.md","lines_changed":152},{"name":"docs/parsers/df.md","lines_changed":204},{"name":"docs/parsers/dig.md","lines_changed":634},{"name":"docs/parsers/dir.md","lines_changed":230},{"name":"docs/parsers/dmidecode.md","lines_changed":260},{"name":"docs/parsers/dpkg_l.md","lines_changed":266},{"name":"docs/parsers/du.md","lines_changed":184},{"name":"docs/parsers/env.md","lines_changed":146},{"name":"docs/parsers/file.md","lines_changed":134},{"name":"docs/parsers/finger.md","lines_changed":186},{"name":"docs/parsers/free.md","lines_changed":154},{"name":"docs/parsers/fstab.md","lines_changed":184},{"name":"docs/parsers/group.md","lines_changed":232},{"name":"docs/parsers/gshadow.md","lines_changed":168},{"name":"docs/parsers/hash.md","lines_changed":88},{"name":"docs/parsers/hashsum.md","lines_changed":126},{"name":"docs/parsers/hciconfig.md","lines_changed":634},{"name":"docs/parsers/history.md","lines_changed":126},{"name":"docs/parsers/hosts.md","lines_changed":162},{"name":"docs/parsers/id.md","lines_changed":220},{"name":"docs/parsers/ifconfig.md","lines_changed":472},{"name":"docs/parsers/ini.md","lines_changed":130},{"name":"docs/parsers/iostat.md","lines_changed":324},{"name":"docs/parsers/iostat_s.md","lines_changed":220},{"name":"docs/parsers/iptables.md","lines_changed":332},{"name":"docs/parsers/iw_scan.md","lines_changed":248},{"name":"docs/parsers/jar_manifest.md","lines_changed":170},{"name":"docs/parsers/jobs.md","lines_changed":190},{"name":"docs/parsers/kv.md","lines_changed":106},{"name":"docs/parsers/last.md","lines_changed":207},{"name":"docs/parsers/ls.md","lines_changed":210},{"name":"docs/parsers/ls_s.md","lines_changed":152},{"name":"docs/parsers/lsblk.md","lines_changed":548},{"name":"docs/parsers/lsmod.md","lines_changed":260},{"name":"docs/parsers/lsof.md","lines_changed":248},{"name":"docs/parsers/lsusb.md","lines_changed":518},{"name":"docs/parsers/mount.md","lines_changed":160},{"name":"docs/parsers/netstat.md","lines_changed":702},{"name":"docs/parsers/ntpq.md","lines_changed":422},{"name":"docs/parsers/passwd.md","lines_changed":202},{"name":"docs/parsers/ping.md","lines_changed":328},{"name":"docs/parsers/ping_s.md","lines_changed":182},{"name":"docs/parsers/pip_list.md","lines_changed":106},{"name":"docs/parsers/pip_show.md","lines_changed":142},{"name":"docs/parsers/ps.md","lines_changed":414},{"name":"docs/parsers/route.md","lines_changed":226},{"name":"docs/parsers/rpm_qi.md","lines_changed":318},{"name":"docs/parsers/sfdisk.md","lines_changed":396},{"name":"docs/parsers/shadow.md","lines_changed":216},{"name":"docs/parsers/ss.md","lines_changed":552},{"name":"docs/parsers/stat.md","lines_changed":338},{"name":"docs/parsers/stat_s.md","lines_changed":174},{"name":"docs/parsers/sysctl.md","lines_changed":120},{"name":"docs/parsers/systemctl.md","lines_changed":126},{"name":"docs/parsers/systemctl_lj.md","lines_changed":162},{"name":"docs/parsers/systemctl_ls.md","lines_changed":112},{"name":"docs/parsers/systemctl_luf.md","lines_changed":104},{"name":"docs/parsers/systeminfo.md","lines_changed":416},{"name":"docs/parsers/time.md","lines_changed":262},{"name":"docs/parsers/timedatectl.md","lines_changed":132},{"name":"docs/parsers/tracepath.md","lines_changed":268},{"name":"docs/parsers/traceroute.md","lines_changed":288},{"name":"docs/parsers/ufw.md","lines_changed":410},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":272},{"name":"docs/parsers/uname.md","lines_changed":100},{"name":"docs/parsers/universal.md","lines_changed":85},{"name":"docs/parsers/upower.md","lines_changed":394},{"name":"docs/parsers/uptime.md","lines_changed":140},{"name":"docs/parsers/vmstat.md","lines_changed":246},{"name":"docs/parsers/vmstat_s.md","lines_changed":194},{"name":"docs/parsers/w.md","lines_changed":216},{"name":"docs/parsers/wc.md","lines_changed":118},{"name":"docs/parsers/who.md","lines_changed":270},{"name":"docs/parsers/xml.md","lines_changed":154},{"name":"docs/parsers/yaml.md","lines_changed":182},{"name":"docs/parsers/zipinfo.md","lines_changed":158},{"name":"docs/readme.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":223},{"name":"jc/cli.py","lines_changed":4},{"name":"man/jc.1","lines_changed":12}]},"message":"try new markdown conversion","epoch":1643159267,"epoch_utc":null},{"commit":"6fad44e35df5d0e33e716d0fcb84ed309e6fd30b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 16:28:29 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 16:28:29 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"fix type hint","epoch":1643156909,"epoch_utc":null},{"commit":"1caac750daa25a5abeb1289964e918ec06289bfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 16:27:29 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 16:27:29 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":4}]},"message":"Update type hints","epoch":1643156849,"epoch_utc":null},{"commit":"16370dcb3d5cf1304c2340ef2253ef2987a982b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 15:49:48 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 15:49:48 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"update type hints","epoch":1643154588,"epoch_utc":null},{"commit":"c1302f2573993a6908001d6df0697486f54a9e7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 15:49:31 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 15:49:31 2022 -0800","stats":{"files_changed":1,"insertions":19,"deletions":8,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":27}]},"message":"add type-hints to public api","epoch":1643154571,"epoch_utc":null},{"commit":"6f0ffe0955e4d9d6cc82552cf4e4f419e3ff3756","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 15:48:00 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 15:48:00 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"docu update","epoch":1643154480,"epoch_utc":null},{"commit":"1f89745fe7cca3a0ac27445942098b717675a481","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 11:17:18 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 11:17:18 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1643138238,"epoch_utc":null},{"commit":"a46ac18ef775bb2c52675e61e11c5d92f33cbe81","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 10:47:05 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 10:47:05 2022 -0800","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"doc update","epoch":1643136425,"epoch_utc":null},{"commit":"1a05f1c575b57456481e41baaf551cef30115966","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 10:46:58 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 25 10:46:58 2022 -0800","stats":{"files_changed":3,"insertions":64,"deletions":54,"files":["jc/__init__.py","jc/cli.py","jc/lib.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":4},{"name":"jc/cli.py","lines_changed":48},{"name":"jc/lib.py","lines_changed":66}]},"message":"add parser info functions. move _get_parser functionality from cli to lib","epoch":1643136418,"epoch_utc":null},{"commit":"08f818aa42ca68050a79ec387c42bff265257fd5","merge":"027c231 b389665","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 00:45:53 2022 +0000","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Jan 25 00:45:53 2022 +0000","message":"Merge pull request #199 from kellyjonbrazil/master\n\nsync to dev","epoch":1643100353,"epoch_utc":1643071553},{"commit":"b3896650c230b4acc73704a50c93ee74e4034eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 23 13:40:50 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 23 13:40:50 2022 -0800","stats":{"files_changed":2,"insertions":62,"deletions":104,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":83},{"name":"templates/readme_template","lines_changed":83}]},"message":"revert column formatting","epoch":1642974050,"epoch_utc":null},{"commit":"f285539526998a5097943c71dcecb2979036b2b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 23 13:36:22 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 23 13:36:22 2022 -0800","stats":{"files_changed":2,"insertions":104,"deletions":62,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":83},{"name":"templates/readme_template","lines_changed":83}]},"message":"conform to 80 columns","epoch":1642973782,"epoch_utc":null},{"commit":"a896dcdf3b31b60582ebb1b3bca5d1103f998dd6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 23 13:14:00 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 23 13:14:00 2022 -0800","stats":{"files_changed":2,"insertions":338,"deletions":120,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":229},{"name":"templates/readme_template","lines_changed":229}]},"message":"formatting","epoch":1642972440,"epoch_utc":null},{"commit":"0a187d4ed08173ec360a006ae2367bb1f2f96c52","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 23 10:04:19 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 23 10:04:19 2022 -0800","stats":{"files_changed":3,"insertions":7,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":4}]},"message":"add console interview links","epoch":1642961059,"epoch_utc":null},{"commit":"2d65bc57d5a396e6683f970194de29494b5c1272","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 16:58:45 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 16:58:45 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":6},{"name":"jc/__init__.py","lines_changed":6}]},"message":"add quotes","epoch":1642813125,"epoch_utc":null},{"commit":"ab63809fde0cefe1f0401d957a3736fdb760f0cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 16:13:00 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 16:13:00 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"update description","epoch":1642810380,"epoch_utc":null},{"commit":"6f04707dc63936efd0e533ae36e1b39ead10c466","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 15:33:43 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 15:33:43 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add python package doc info to top of page","epoch":1642808023,"epoch_utc":null},{"commit":"d14a86a9b58bdc3cb0c8df1dfa495aefdaab8033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 15:29:46 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 15:29:46 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2}]},"message":"fix typo","epoch":1642807786,"epoch_utc":null},{"commit":"8e6a31d3da19926ac46744e02b27a899ca5fbd7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 14:08:19 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 14:08:19 2022 -0800","stats":{"files_changed":6,"insertions":14,"deletions":8,"files":["CHANGELOG","docs/readme.md","jc/__init__.py","jc/lib.py","man/jc.1","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4},{"name":"jc/lib.py","lines_changed":7},{"name":"man/jc.1","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"minor fix for macOS binary","epoch":1642802899,"epoch_utc":null},{"commit":"6e7b6afe87355e96422bb2560ffcbd5e79d28f04","merge":"70cb445 027c231","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 13:52:16 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Jan 21 13:52:16 2022 -0800","message":"Merge pull request #198 from kellyjonbrazil/dev\n\nDev v1.18.0","epoch":1642801936,"epoch_utc":null},{"commit":"027c231097a002526350a93322407582a85db0cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 13:48:38 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 13:48:38 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"formatting","epoch":1642801718,"epoch_utc":null},{"commit":"f1cf7d1f953586dd44a4463d924f1a1f52717c37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:51:26 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 12:51:26 2022 -0800","stats":{"files_changed":2,"insertions":7,"deletions":5,"files":["jc/parsers/foo.py","jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":6},{"name":"jc/parsers/foo_s.py","lines_changed":6}]},"message":"add helper function info","epoch":1642798286,"epoch_utc":null},{"commit":"df611cc263f50285e74ceb3381f55b43a74870a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:41:52 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 12:41:52 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":6},{"name":"jc/__init__.py","lines_changed":6}]},"message":"formatting","epoch":1642797712,"epoch_utc":null},{"commit":"0f3143bbbb593340190e66729580146410012e14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:39:22 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 12:39:22 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":6},{"name":"jc/__init__.py","lines_changed":6}]},"message":"formatting","epoch":1642797562,"epoch_utc":null},{"commit":"c280757b7624a46543e481ca47a6e084d2d6f519","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:35:48 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 12:35:48 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"formatting","epoch":1642797348,"epoch_utc":null},{"commit":"d30b9d84ef5ec3a2a504f7ea251c932b8c9ea878","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:33:23 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 12:33:23 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"formatting","epoch":1642797203,"epoch_utc":null},{"commit":"50ded1dbd97d26cf01d7e1a98b40e0f0f7d02202","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:31:03 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 12:31:03 2022 -0800","stats":{"files_changed":1,"insertions":10,"deletions":4,"files":["docs/readme.md"],"file_stats":[{"name":"docs/readme.md","lines_changed":14}]},"message":"doc update","epoch":1642797063,"epoch_utc":null},{"commit":"e319aea5a45c598a44f35b4e58131d977509e4f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:29:36 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 12:29:36 2022 -0800","stats":{"files_changed":1,"insertions":10,"deletions":4,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":14}]},"message":"add doc version info","epoch":1642796976,"epoch_utc":null},{"commit":"ba86509c1d8700a50fe14e9d931ee57261306c5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:15:34 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 12:15:34 2022 -0800","stats":{"files_changed":1,"insertions":3,"deletions":9,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":12}]},"message":"simplify OSError exception handling","epoch":1642796134,"epoch_utc":null},{"commit":"0a9279ae6bfdd1aa59f5e9b31ce0af3bfec19f96","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:15:16 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 12:15:16 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["CHANGELOG","tests/test_lib.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":5},{"name":"tests/test_lib.py","lines_changed":1}]},"message":"doc update","epoch":1642796116,"epoch_utc":null},{"commit":"a13dde12af01b4473aa9a34b8a0d7387fb48500a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 07:42:03 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 21 07:42:03 2022 -0800","stats":{"files_changed":173,"insertions":173,"deletions":173,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/dpkg_l.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/finger.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/gshadow.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iostat.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/jar_manifest.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/kv.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/stat_s.md","lines_changed":2},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"docs/parsers/zipinfo.md","lines_changed":2},{"name":"jc/parsers/acpi.py","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/blkid.py","lines_changed":2},{"name":"jc/parsers/cksum.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"jc/parsers/csv.py","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/dir.py","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":2},{"name":"jc/parsers/dpkg_l.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/finger.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/group.py","lines_changed":2},{"name":"jc/parsers/gshadow.py","lines_changed":2},{"name":"jc/parsers/hash.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":2},{"name":"jc/parsers/hciconfig.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/iostat.py","lines_changed":2},{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2},{"name":"jc/parsers/jar_manifest.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/kv.py","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/lsusb.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/ntpq.py","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":2},{"name":"jc/parsers/ping.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/rpm_qi.py","lines_changed":2},{"name":"jc/parsers/sfdisk.py","lines_changed":2},{"name":"jc/parsers/shadow.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/stat_s.py","lines_changed":2},{"name":"jc/parsers/sysctl.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/systeminfo.py","lines_changed":2},{"name":"jc/parsers/time.py","lines_changed":2},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/ufw.py","lines_changed":2},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/parsers/wc.py","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":2},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2},{"name":"jc/parsers/zipinfo.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"change raw output wording","epoch":1642779723,"epoch_utc":null},{"commit":"e2ed358de1abefd737c187a324cbe4734d6975e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 15:31:24 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 20 15:31:24 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"changelog update","epoch":1642721484,"epoch_utc":null},{"commit":"a2cd3666210be3727a00c3405972f32fbd421046","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 15:01:49 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Jan 20 15:01:49 2022 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["docs/_config.yml"],"file_stats":[{"name":"docs/_config.yml","lines_changed":1}]},"message":"Delete _config.yml","epoch":1642719709,"epoch_utc":null},{"commit":"15addd9bfc18a0e87beb97040b431c872b783662","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 09:59:23 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 20 09:59:23 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":8,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":5},{"name":"jc/parsers/universal.py","lines_changed":7}]},"message":"doc fix","epoch":1642701563,"epoch_utc":null},{"commit":"a4e34b0053ec0c032f4783caaa3e07fc2c685a98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 09:46:24 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 20 09:46:24 2022 -0800","stats":{"files_changed":2,"insertions":63,"deletions":0,"files":["docgen.sh","docs/parsers/universal.md"],"file_stats":[{"name":"docgen.sh","lines_changed":3},{"name":"docs/parsers/universal.md","lines_changed":60}]},"message":"add universal parser docs","epoch":1642700784,"epoch_utc":null},{"commit":"d09529ac302fbcc156d58cf836f8397c98121a76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 09:40:34 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 20 09:40:34 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"changelog update","epoch":1642700434,"epoch_utc":null},{"commit":"553097b5050dc02fbdaeec2e2e138e01bc6811d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 09:40:08 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 20 09:40:08 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":2}]},"message":"docstring update","epoch":1642700408,"epoch_utc":null},{"commit":"49c556857708307f617b2b516f2d281398681b5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 07:49:45 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 20 07:49:45 2022 -0800","stats":{"files_changed":7,"insertions":35,"deletions":15,"files":["README.md","docs/lib.md","docs/readme.md","jc/__init__.py","jc/lib.py","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/lib.md","lines_changed":9},{"name":"docs/readme.md","lines_changed":13},{"name":"jc/__init__.py","lines_changed":13},{"name":"jc/lib.py","lines_changed":9},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"module doc update","epoch":1642693785,"epoch_utc":null},{"commit":"6962b9ee8a52c924dc2de6b79ddeea3636e80fe4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 22:24:59 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 22:24:59 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":6,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":7},{"name":"jc/lib.py","lines_changed":7}]},"message":"formatting","epoch":1642659899,"epoch_utc":null},{"commit":"b4575a3f780f9aa2751c8b4789f67aaca32dd1cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 22:20:36 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 22:20:36 2022 -0800","stats":{"files_changed":3,"insertions":91,"deletions":1,"files":["docgen.sh","docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docgen.sh","lines_changed":4},{"name":"docs/lib.md","lines_changed":86},{"name":"jc/lib.py","lines_changed":2}]},"message":"add lib docs","epoch":1642659636,"epoch_utc":null},{"commit":"35b54d235d73b2ce658223be3d6095906f142d89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 21:53:13 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 21:53:13 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"templates/readme_template","lines_changed":3}]},"message":"add python package doc info","epoch":1642657993,"epoch_utc":null},{"commit":"583a5757e454a4e36b331057d1266279b55ee16a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 21:32:21 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 21:32:21 2022 -0800","stats":{"files_changed":18,"insertions":34,"deletions":30,"files":["docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/file.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/traceroute.md","docs/parsers/ufw_appinfo.md","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/file.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/traceroute.py","jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":6},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":9},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":6},{"name":"jc/parsers/ls.py","lines_changed":5},{"name":"jc/parsers/ls_s.py","lines_changed":9},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":2}]},"message":"formatting","epoch":1642656741,"epoch_utc":null},{"commit":"f355333eeed3c4afba844dc7bed5224356552adc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 19:27:46 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 19:27:46 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":8},{"name":"jc/__init__.py","lines_changed":8}]},"message":"formatting","epoch":1642649266,"epoch_utc":null},{"commit":"4d7df109604e4f8367904968602acfc05217a7fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 19:24:37 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 19:24:37 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"formatting","epoch":1642649077,"epoch_utc":null},{"commit":"66b2c28f4bc75fb76800f9fb7ea485eee194a9a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 19:22:08 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 19:22:08 2022 -0800","stats":{"files_changed":2,"insertions":24,"deletions":24,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":24},{"name":"jc/__init__.py","lines_changed":24}]},"message":"formatting","epoch":1642648928,"epoch_utc":null},{"commit":"299a9c6d88fdf1fede447b4057d8f4263daef733","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 19:19:25 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 19:19:25 2022 -0800","stats":{"files_changed":2,"insertions":25,"deletions":57,"files":["docs/parsers/csv.md","docs/readme.md"],"file_stats":[{"name":"docs/parsers/csv.md","lines_changed":4},{"name":"docs/readme.md","lines_changed":78}]},"message":"formatting","epoch":1642648765,"epoch_utc":null},{"commit":"bd391d979ce98b126dab0f012a56b3fcb1f73439","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 19:18:03 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 19:18:03 2022 -0800","stats":{"files_changed":1,"insertions":23,"deletions":55,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":78}]},"message":"add lib function docs","epoch":1642648683,"epoch_utc":null},{"commit":"7309bd2282445f6daef0b1491ff60b8104500abb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 18:47:44 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 18:47:44 2022 -0800","stats":{"files_changed":3,"insertions":19,"deletions":10,"files":["jc/lib.py","jc/parsers/csv.py","jc/parsers/universal.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":15},{"name":"jc/parsers/csv.py","lines_changed":4},{"name":"jc/parsers/universal.py","lines_changed":10}]},"message":"add get_help","epoch":1642646864,"epoch_utc":null},{"commit":"ce84c09d3394b598f19a3e012ef27ce4154e3b3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 18:44:26 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 18:44:26 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":3}]},"message":"add get_help()","epoch":1642646666,"epoch_utc":null},{"commit":"b4fffbb6476daf78fbdf19dbf31bbeeab950d2dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 17:30:14 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 17:30:14 2022 -0800","stats":{"files_changed":46,"insertions":501,"deletions":304,"files":["docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/history.md","docs/parsers/ini.md","docs/parsers/iostat_s.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsusb.md","docs/parsers/netstat.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/ps.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/upower.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/who.md"],"file_stats":[{"name":"docs/parsers/crontab.md","lines_changed":3},{"name":"docs/parsers/crontab_u.md","lines_changed":22},{"name":"docs/parsers/csv.md","lines_changed":9},{"name":"docs/parsers/csv_s.md","lines_changed":35},{"name":"docs/parsers/date.md","lines_changed":18},{"name":"docs/parsers/dig.md","lines_changed":16},{"name":"docs/parsers/dir.md","lines_changed":6},{"name":"docs/parsers/dpkg_l.md","lines_changed":7},{"name":"docs/parsers/du.md","lines_changed":20},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":8},{"name":"docs/parsers/ini.md","lines_changed":15},{"name":"docs/parsers/iostat_s.md","lines_changed":25},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jar_manifest.md","lines_changed":25},{"name":"docs/parsers/jobs.md","lines_changed":3},{"name":"docs/parsers/kv.md","lines_changed":11},{"name":"docs/parsers/last.md","lines_changed":10},{"name":"docs/parsers/ls.md","lines_changed":19},{"name":"docs/parsers/ls_s.md","lines_changed":51},{"name":"docs/parsers/lsblk.md","lines_changed":10},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":3},{"name":"docs/parsers/ping.md","lines_changed":32},{"name":"docs/parsers/ping_s.md","lines_changed":85},{"name":"docs/parsers/ps.md","lines_changed":8},{"name":"docs/parsers/rpm_qi.md","lines_changed":37},{"name":"docs/parsers/sfdisk.md","lines_changed":8},{"name":"docs/parsers/ss.md","lines_changed":6},{"name":"docs/parsers/stat.md","lines_changed":6},{"name":"docs/parsers/stat_s.md","lines_changed":27},{"name":"docs/parsers/sysctl.md","lines_changed":7},{"name":"docs/parsers/systemctl.md","lines_changed":4},{"name":"docs/parsers/systemctl_ls.md","lines_changed":3},{"name":"docs/parsers/systemctl_luf.md","lines_changed":3},{"name":"docs/parsers/systeminfo.md","lines_changed":19},{"name":"docs/parsers/time.md","lines_changed":33},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"docs/parsers/ufw.md","lines_changed":7},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":28},{"name":"docs/parsers/upower.md","lines_changed":16},{"name":"docs/parsers/vmstat.md","lines_changed":13},{"name":"docs/parsers/vmstat_s.md","lines_changed":111},{"name":"docs/parsers/who.md","lines_changed":7}]},"message":"formatting","epoch":1642642214,"epoch_utc":null},{"commit":"3701b4198aad1826ad6da571fbcaa530b057cc48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 17:29:22 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 17:29:22 2022 -0800","stats":{"files_changed":86,"insertions":710,"deletions":606,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":5},{"name":"jc/parsers/airport.py","lines_changed":7},{"name":"jc/parsers/airport_s.py","lines_changed":3},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/blkid.py","lines_changed":10},{"name":"jc/parsers/cksum.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":6},{"name":"jc/parsers/crontab_u.py","lines_changed":25},{"name":"jc/parsers/csv.py","lines_changed":14},{"name":"jc/parsers/csv_s.py","lines_changed":38},{"name":"jc/parsers/date.py","lines_changed":69},{"name":"jc/parsers/df.py","lines_changed":13},{"name":"jc/parsers/dig.py","lines_changed":28},{"name":"jc/parsers/dir.py","lines_changed":8},{"name":"jc/parsers/dmidecode.py","lines_changed":3},{"name":"jc/parsers/dpkg_l.py","lines_changed":10},{"name":"jc/parsers/du.py","lines_changed":23},{"name":"jc/parsers/env.py","lines_changed":7},{"name":"jc/parsers/file.py","lines_changed":6},{"name":"jc/parsers/finger.py","lines_changed":14},{"name":"jc/parsers/foo.py","lines_changed":3},{"name":"jc/parsers/foo_s.py","lines_changed":23},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/group.py","lines_changed":3},{"name":"jc/parsers/gshadow.py","lines_changed":3},{"name":"jc/parsers/hash.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":5},{"name":"jc/parsers/hciconfig.py","lines_changed":13},{"name":"jc/parsers/history.py","lines_changed":10},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":3},{"name":"jc/parsers/ifconfig.py","lines_changed":20},{"name":"jc/parsers/ini.py","lines_changed":23},{"name":"jc/parsers/iostat_s.py","lines_changed":25},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":11},{"name":"jc/parsers/jar_manifest.py","lines_changed":25},{"name":"jc/parsers/jobs.py","lines_changed":5},{"name":"jc/parsers/kv.py","lines_changed":13},{"name":"jc/parsers/last.py","lines_changed":17},{"name":"jc/parsers/ls.py","lines_changed":21},{"name":"jc/parsers/ls_s.py","lines_changed":53},{"name":"jc/parsers/lsblk.py","lines_changed":15},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/lsusb.py","lines_changed":5},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":20},{"name":"jc/parsers/ntpq.py","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":3},{"name":"jc/parsers/ping.py","lines_changed":46},{"name":"jc/parsers/ping_s.py","lines_changed":99},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":10},{"name":"jc/parsers/route.py","lines_changed":6},{"name":"jc/parsers/rpm_qi.py","lines_changed":40},{"name":"jc/parsers/sfdisk.py","lines_changed":16},{"name":"jc/parsers/shadow.py","lines_changed":3},{"name":"jc/parsers/ss.py","lines_changed":8},{"name":"jc/parsers/stat.py","lines_changed":12},{"name":"jc/parsers/stat_s.py","lines_changed":31},{"name":"jc/parsers/sysctl.py","lines_changed":10},{"name":"jc/parsers/systemctl.py","lines_changed":6},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":5},{"name":"jc/parsers/systemctl_luf.py","lines_changed":5},{"name":"jc/parsers/systeminfo.py","lines_changed":31},{"name":"jc/parsers/time.py","lines_changed":51},{"name":"jc/parsers/timedatectl.py","lines_changed":8},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":7},{"name":"jc/parsers/ufw.py","lines_changed":7},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":28},{"name":"jc/parsers/uname.py","lines_changed":4},{"name":"jc/parsers/universal.py","lines_changed":40},{"name":"jc/parsers/upower.py","lines_changed":32},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":28},{"name":"jc/parsers/vmstat_s.py","lines_changed":125},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/parsers/wc.py","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":10},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"formatting","epoch":1642642162,"epoch_utc":null},{"commit":"d4c34098fa7ad2098076f0fa0564467e5d06f916","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 11:31:29 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 11:31:29 2022 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":5}]},"message":"formatting","epoch":1642620689,"epoch_utc":null},{"commit":"b3c531193b3fc53697e7d7823576f481f9462d53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 11:08:59 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 11:08:59 2022 -0800","stats":{"files_changed":3,"insertions":125,"deletions":71,"files":["CHANGELOG","docs/utils.md","jc/utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docs/utils.md","lines_changed":79},{"name":"jc/utils.py","lines_changed":114}]},"message":"formatting","epoch":1642619339,"epoch_utc":null},{"commit":"1d0e07c77bab5c48405323e52873c7952dd0a587","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 10:31:46 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 10:31:46 2022 -0800","stats":{"files_changed":3,"insertions":57,"deletions":55,"files":["docs/readme.md","jc/__init__.py","jc/lib.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":33},{"name":"jc/__init__.py","lines_changed":33},{"name":"jc/lib.py","lines_changed":46}]},"message":"formatting","epoch":1642617106,"epoch_utc":null},{"commit":"06a322cf9c7468dc7e8ba05914e1d07bbc51f63a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 10:31:36 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 10:31:36 2022 -0800","stats":{"files_changed":1,"insertions":14,"deletions":8,"files":["tests/test_lib.py"],"file_stats":[{"name":"tests/test_lib.py","lines_changed":22}]},"message":"rename tests and add conversion function tests","epoch":1642617096,"epoch_utc":null},{"commit":"623d148712f93eacf9b7b5803140603f0af67acb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 09:30:53 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 09:30:53 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1642613453,"epoch_utc":null},{"commit":"647e83d0439a0937db14a2cc97929e38a6b6a43b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 09:29:09 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 09:29:09 2022 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["tests/test_lib.py"],"file_stats":[{"name":"tests/test_lib.py","lines_changed":3}]},"message":"add test to ensure there are zero plugin parsers installed during tests","epoch":1642613349,"epoch_utc":null},{"commit":"91a554464444da0cc3ed3b4d212539232411f6cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 09:28:35 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 09:28:35 2022 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":5}]},"message":"doc update","epoch":1642613315,"epoch_utc":null},{"commit":"a1190998aef1bf403ee34c38c1a0fbd6291ac38b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 09:15:24 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 09:15:24 2022 -0800","stats":{"files_changed":2,"insertions":82,"deletions":0,"files":["tests/test_jc.py","tests/test_lib.py"],"file_stats":[{"name":"tests/test_jc.py","lines_changed":41},{"name":"tests/test_lib.py","lines_changed":41}]},"message":"add jc and jc.lib tests","epoch":1642612524,"epoch_utc":null},{"commit":"097d7a1850f6f6df73a5761c657b73ef9dbd3e29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 09:15:11 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 19 09:15:11 2022 -0800","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":4}]},"message":"simplify __init__","epoch":1642612511,"epoch_utc":null},{"commit":"302bf72e720b3a67fbf1300eaff4f99fc343abeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 15:38:03 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 18 15:38:03 2022 -0800","stats":{"files_changed":138,"insertions":718,"deletions":6,"files":["docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py"],"file_stats":[{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":5},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iostat.md","lines_changed":5},{"name":"docs/parsers/iostat_s.md","lines_changed":7},{"name":"docs/parsers/iptables.md","lines_changed":7},{"name":"docs/parsers/iw_scan.md","lines_changed":9},{"name":"docs/parsers/jar_manifest.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":7},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/ping_s.md","lines_changed":7},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/sfdisk.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/stat_s.md","lines_changed":7},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/systeminfo.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"docs/parsers/ufw.md","lines_changed":5},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/vmstat.md","lines_changed":5},{"name":"docs/parsers/vmstat_s.md","lines_changed":7},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5},{"name":"docs/parsers/zipinfo.md","lines_changed":5},{"name":"jc/parsers/env.py","lines_changed":5},{"name":"jc/parsers/file.py","lines_changed":5},{"name":"jc/parsers/finger.py","lines_changed":5},{"name":"jc/parsers/foo.py","lines_changed":5},{"name":"jc/parsers/foo_s.py","lines_changed":7},{"name":"jc/parsers/free.py","lines_changed":5},{"name":"jc/parsers/fstab.py","lines_changed":5},{"name":"jc/parsers/group.py","lines_changed":5},{"name":"jc/parsers/gshadow.py","lines_changed":5},{"name":"jc/parsers/hash.py","lines_changed":5},{"name":"jc/parsers/hashsum.py","lines_changed":5},{"name":"jc/parsers/hciconfig.py","lines_changed":5},{"name":"jc/parsers/history.py","lines_changed":5},{"name":"jc/parsers/hosts.py","lines_changed":5},{"name":"jc/parsers/id.py","lines_changed":5},{"name":"jc/parsers/ifconfig.py","lines_changed":5},{"name":"jc/parsers/ini.py","lines_changed":5},{"name":"jc/parsers/iostat.py","lines_changed":5},{"name":"jc/parsers/iostat_s.py","lines_changed":7},{"name":"jc/parsers/iptables.py","lines_changed":7},{"name":"jc/parsers/iw_scan.py","lines_changed":9},{"name":"jc/parsers/jar_manifest.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":5},{"name":"jc/parsers/kv.py","lines_changed":5},{"name":"jc/parsers/last.py","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":5},{"name":"jc/parsers/ls_s.py","lines_changed":7},{"name":"jc/parsers/lsblk.py","lines_changed":5},{"name":"jc/parsers/lsmod.py","lines_changed":5},{"name":"jc/parsers/lsof.py","lines_changed":5},{"name":"jc/parsers/lsusb.py","lines_changed":5},{"name":"jc/parsers/mount.py","lines_changed":5},{"name":"jc/parsers/netstat.py","lines_changed":5},{"name":"jc/parsers/ntpq.py","lines_changed":5},{"name":"jc/parsers/passwd.py","lines_changed":5},{"name":"jc/parsers/ping.py","lines_changed":5},{"name":"jc/parsers/ping_s.py","lines_changed":7},{"name":"jc/parsers/pip_list.py","lines_changed":5},{"name":"jc/parsers/pip_show.py","lines_changed":5},{"name":"jc/parsers/ps.py","lines_changed":5},{"name":"jc/parsers/route.py","lines_changed":5},{"name":"jc/parsers/rpm_qi.py","lines_changed":5},{"name":"jc/parsers/sfdisk.py","lines_changed":5},{"name":"jc/parsers/shadow.py","lines_changed":5},{"name":"jc/parsers/ss.py","lines_changed":5},{"name":"jc/parsers/stat.py","lines_changed":5},{"name":"jc/parsers/stat_s.py","lines_changed":7},{"name":"jc/parsers/sysctl.py","lines_changed":5},{"name":"jc/parsers/systemctl.py","lines_changed":5},{"name":"jc/parsers/systemctl_lj.py","lines_changed":5},{"name":"jc/parsers/systemctl_ls.py","lines_changed":5},{"name":"jc/parsers/systemctl_luf.py","lines_changed":5},{"name":"jc/parsers/systeminfo.py","lines_changed":5},{"name":"jc/parsers/time.py","lines_changed":5},{"name":"jc/parsers/timedatectl.py","lines_changed":5},{"name":"jc/parsers/tracepath.py","lines_changed":5},{"name":"jc/parsers/traceroute.py","lines_changed":5},{"name":"jc/parsers/ufw.py","lines_changed":5},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":5},{"name":"jc/parsers/uname.py","lines_changed":5},{"name":"jc/parsers/upower.py","lines_changed":5},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/vmstat.py","lines_changed":5},{"name":"jc/parsers/vmstat_s.py","lines_changed":7},{"name":"jc/parsers/w.py","lines_changed":5},{"name":"jc/parsers/wc.py","lines_changed":5},{"name":"jc/parsers/who.py","lines_changed":5},{"name":"jc/parsers/xml.py","lines_changed":5},{"name":"jc/parsers/yaml.py","lines_changed":5},{"name":"jc/parsers/zipinfo.py","lines_changed":5}]},"message":"Update high-level API docs","epoch":1642549083,"epoch_utc":null},{"commit":"2c42baf3a4dd6733c078f31a1becd708a05f2c36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 14:18:12 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 18 14:18:12 2022 -0800","stats":{"files_changed":34,"insertions":174,"deletions":0,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/csv_s.md","lines_changed":7},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"jc/parsers/acpi.py","lines_changed":5},{"name":"jc/parsers/airport.py","lines_changed":5},{"name":"jc/parsers/airport_s.py","lines_changed":5},{"name":"jc/parsers/arp.py","lines_changed":5},{"name":"jc/parsers/blkid.py","lines_changed":5},{"name":"jc/parsers/cksum.py","lines_changed":5},{"name":"jc/parsers/crontab.py","lines_changed":5},{"name":"jc/parsers/crontab_u.py","lines_changed":5},{"name":"jc/parsers/csv.py","lines_changed":5},{"name":"jc/parsers/csv_s.py","lines_changed":7},{"name":"jc/parsers/date.py","lines_changed":5},{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":5},{"name":"jc/parsers/dir.py","lines_changed":5},{"name":"jc/parsers/dmidecode.py","lines_changed":5},{"name":"jc/parsers/dpkg_l.py","lines_changed":5},{"name":"jc/parsers/du.py","lines_changed":5}]},"message":"add new high-level api info","epoch":1642544292,"epoch_utc":null},{"commit":"03feb89c84096c0ea1d6ae3a0634ae7b8b507e8f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 13:46:11 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 18 13:46:11 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2}]},"message":"add module list info","epoch":1642542371,"epoch_utc":null},{"commit":"9dd553192fbca3037b3afe5df6bae88f7a8a9365","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 13:40:09 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 18 13:40:09 2022 -0800","stats":{"files_changed":5,"insertions":29,"deletions":12,"files":["CHANGELOG","README.md","docs/readme.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":10},{"name":"docs/readme.md","lines_changed":16},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":10}]},"message":"doc update","epoch":1642542009,"epoch_utc":null},{"commit":"fa3f02e9d1ac7867e3465c2d214f4e4229ff4c66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 13:39:51 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 18 13:39:51 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1642541991,"epoch_utc":null},{"commit":"0a9dde58c5235f78c4c9ae9c013f7454482c6067","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 13:10:14 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 18 13:10:14 2022 -0800","stats":{"files_changed":3,"insertions":228,"deletions":134,"files":["jc/__init__.py","jc/cli.py","jc/lib.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":22},{"name":"jc/cli.py","lines_changed":154},{"name":"jc/lib.py","lines_changed":186}]},"message":"add jc.parse() high-level API","epoch":1642540214,"epoch_utc":null},{"commit":"70cb4453bebb235130e2c287633ecb1de6c2b0aa","merge":"e6900e2 830674c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 14 11:54:29 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Jan 14 11:54:29 2022 -0800","message":"Merge pull request #195 from kellyjonbrazil/dev\n\nDev v1.17.7","epoch":1642190069,"epoch_utc":null},{"commit":"830674cc6f19e107347a743baff7bbaab7f80b75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 14 11:47:25 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 14 11:47:25 2022 -0800","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["CHANGELOG","jc/__init__.py","man/jc.1","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1642189645,"epoch_utc":null},{"commit":"fb406b58a12fdfe81bcff76671661af77e7f2fe5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jan 8 20:22:53 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Jan 8 20:22:53 2022 -0800","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["docs/parsers/stat_s.md","jc/parsers/stat_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/stat_s.md","lines_changed":4},{"name":"jc/parsers/stat_s.py","lines_changed":4},{"name":"man/jc.1","lines_changed":2}]},"message":"formatting","epoch":1641702173,"epoch_utc":null},{"commit":"55b272e41259ddc835cf4eb513fb67e7b2cf1573","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 6 11:13:14 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 6 11:13:14 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":2}]},"message":"tighten stat data detection","epoch":1641496394,"epoch_utc":null},{"commit":"94f62a9bf36242310790a0f37c66b2e6c6fdc078","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 6 11:03:49 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 6 11:03:49 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/stat_s.md","jc/parsers/stat_s.py"],"file_stats":[{"name":"docs/parsers/stat_s.md","lines_changed":6},{"name":"jc/parsers/stat_s.py","lines_changed":6}]},"message":"formatting","epoch":1641495829,"epoch_utc":null},{"commit":"8d19e4cb7b45e3b6cb8c404c959949b7593c9386","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 6 11:00:53 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 6 11:00:53 2022 -0800","stats":{"files_changed":4,"insertions":115,"deletions":1,"files":["CHANGELOG","README.md","docs/parsers/stat_s.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/stat_s.md","lines_changed":105},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update","epoch":1641495653,"epoch_utc":null},{"commit":"7e510d48e0f8426a67cf8d70d06d0331c274d358","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 6 10:36:33 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 6 10:36:33 2022 -0800","stats":{"files_changed":7,"insertions":106,"deletions":2,"files":["jc/parsers/stat_s.py","tests/fixtures/centos-7.7/stat-streaming.json","tests/fixtures/freebsd12/stat-streaming.json",".../stat-filename-with-spaces-streaming.json","tests/fixtures/osx-10.14.6/stat-streaming.json","tests/fixtures/ubuntu-18.04/stat-streaming.json","tests/test_stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":3},{"name":"tests/fixtures/centos-7.7/stat-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/stat-streaming.json","lines_changed":1},{"name":".../stat-filename-with-spaces-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/stat-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/stat-streaming.json","lines_changed":1},{"name":"tests/test_stat_s.py","lines_changed":100}]},"message":"simplify non-stat parse error logic","epoch":1641494193,"epoch_utc":null},{"commit":"7b20cffb143447f4497bc4e895eac2426e8a519f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 5 11:44:00 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 5 11:44:00 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":8}]},"message":"simplify last item logic","epoch":1641411840,"epoch_utc":null},{"commit":"5c934c43c13b69183561da8a77280feb3363e950","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 5 11:39:00 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 5 11:39:00 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":2}]},"message":"add continue to simplify logic","epoch":1641411540,"epoch_utc":null},{"commit":"8609298449e997ba4804d818f4fc23cb393ded7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 5 11:25:58 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 5 11:25:58 2022 -0800","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":8}]},"message":"update docstring","epoch":1641410758,"epoch_utc":null},{"commit":"72cb0dc10b2dac486d3e2a52cf44baf0d7496034","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 5 11:22:01 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 5 11:22:01 2022 -0800","stats":{"files_changed":1,"insertions":14,"deletions":10,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":24}]},"message":"fixup for first and last items","epoch":1641410521,"epoch_utc":null},{"commit":"7b22fa81ded0f6f59e250ffea63c5d2a0f928b25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 5 07:46:58 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 5 07:46:58 2022 -0800","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":8}]},"message":"raise for non-stat data","epoch":1641397618,"epoch_utc":null},{"commit":"0b6a1307790e0793917bc2781e4873aa9dd67225","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 16:43:38 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 4 16:43:38 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":4}]},"message":"ignore blank lines","epoch":1641343418,"epoch_utc":null},{"commit":"fdcf4338e0f099699f8d48df6382be1cc97dba84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 15:31:00 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 4 15:31:00 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":6}]},"message":"add examples to docstring","epoch":1641339060,"epoch_utc":null},{"commit":"ee43037f481286a34a766390568965fdd53af132","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 15:13:42 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 4 15:13:42 2022 -0800","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":2}]},"message":"remove unused continue lines","epoch":1641338022,"epoch_utc":null},{"commit":"26e365563c314e694915c7a3feae490ea99a112c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 15:07:45 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 4 15:07:45 2022 -0800","stats":{"files_changed":1,"insertions":50,"deletions":11,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":61}]},"message":"add schema and _process logic","epoch":1641337665,"epoch_utc":null},{"commit":"1b39586bb1b62aee8ae709512c2e3f79cefdb3d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 15:01:42 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 4 15:01:42 2022 -0800","stats":{"files_changed":2,"insertions":227,"deletions":0,"files":["jc/cli.py","jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/stat_s.py","lines_changed":226}]},"message":"add stat streaming parser","epoch":1641337302,"epoch_utc":null},{"commit":"8bb3a6bea34d60d49039f1ed72fd7e413edc05da","merge":"78672bd e6900e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 13:33:35 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Jan 4 13:33:35 2022 -0800","message":"Merge pull request #194 from kellyjonbrazil/master\n\nsync to dev","epoch":1641332015,"epoch_utc":null},{"commit":"e6900e2000bf265dfcfc09ffbfda39e9238661af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:41:16 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 3 09:41:16 2022 -0800","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":21}]},"message":"add jar-manifest","epoch":1641231676,"epoch_utc":null},{"commit":"0ee244756bf39123e4873eb231156edbe7f0e0ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:22:35 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 3 09:22:35 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/jar_manifest.md","jc/parsers/jar_manifest.py"],"file_stats":[{"name":"docs/parsers/jar_manifest.md","lines_changed":2},{"name":"jc/parsers/jar_manifest.py","lines_changed":2}]},"message":"spelling","epoch":1641230555,"epoch_utc":null},{"commit":"6d5ac9abe6712e01887ce0d96c278a568319f405","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:19:40 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 3 09:19:40 2022 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["docs/parsers/csv.md","docs/parsers/csv_s.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"update docs","epoch":1641230380,"epoch_utc":null},{"commit":"44f6d9e1321459be8196aeebf6db088cc5120e61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:18:43 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 3 09:18:43 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"changelog update","epoch":1641230323,"epoch_utc":null},{"commit":"360154559c5dee6affa55bbdd5d2f473248b9168","merge":"241d53a 78672bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:12:50 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Jan 3 09:12:50 2022 -0800","message":"Merge pull request #193 from kellyjonbrazil/dev\n\nDev add csv doublequote fix","epoch":1641229970,"epoch_utc":null},{"commit":"78672bd7ad66c418e0ecf31add73f887b0946d29","merge":"bc7973a 65d96e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:08:57 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Jan 3 09:08:57 2022 -0800","message":"Merge pull request #190 from shaikustin/csv-doubleqouted\n\nfix doubleqoute in csv","epoch":1641229737,"epoch_utc":null},{"commit":"65d96e26b59e231c77c1dbba1dc91708c33de30c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:06:00 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 3 09:06:00 2022 -0800","stats":{"files_changed":2,"insertions":13,"deletions":0,"files":["tests/fixtures/generic/csv-doubleqouted-streaming.json","tests/test_csv_s.py"],"file_stats":[{"name":"tests/fixtures/generic/csv-doubleqouted-streaming.json","lines_changed":1},{"name":"tests/test_csv_s.py","lines_changed":12}]},"message":"add streaming tests","epoch":1641229560,"epoch_utc":null},{"commit":"241d53af9a5c9bba70e28835e22c52c0060269ba","merge":"f733100 bc7973a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 08:49:15 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Jan 3 08:49:15 2022 -0800","message":"Merge pull request #192 from kellyjonbrazil/dev\n\nDev v1.17.6","epoch":1641228555,"epoch_utc":null},{"commit":"5563829df2849a899df2e9211d6c92bddc695f9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 08:48:23 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 3 08:48:23 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":8}]},"message":"make dialect sniff behavior match non-streaming parser","epoch":1641228503,"epoch_utc":null},{"commit":"3a4a27e1f94ee07352c7616c57ec655c1aea04f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 11:44:25 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 2 11:44:25 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/csv.py"],"file_stats":[{"name":"jc/parsers/csv.py","lines_changed":4}]},"message":"version bump","epoch":1641152665,"epoch_utc":null},{"commit":"9c887a36a804d817c3f669a55b9b1566d09d645d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 11:44:18 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 2 11:44:18 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":6}]},"message":"update csv_s parser with csv changes","epoch":1641152658,"epoch_utc":null},{"commit":"bc7973af36e13006230b5faa9e201e300d468912","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 11:07:15 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 2 11:07:15 2022 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","jc/cli.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"update copyright","epoch":1641150435,"epoch_utc":null},{"commit":"32972d8fdbdc71923978fd5c2a87fd6cfa4b7f8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 11:00:52 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 2 11:00:52 2022 -0800","stats":{"files_changed":7,"insertions":122,"deletions":9,"files":["CHANGELOG","README.md","docs/parsers/jar_manifest.md","jc/__init__.py","jc/parsers/jar_manifest.py","man/jc.1","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/jar_manifest.md","lines_changed":104},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/parsers/jar_manifest.py","lines_changed":12},{"name":"man/jc.1","lines_changed":7},{"name":"setup.py","lines_changed":2}]},"message":"doc update","epoch":1641150052,"epoch_utc":null},{"commit":"b128d9109cbdb1176f2473d450023bb0be02531b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 10:51:02 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 2 10:51:02 2022 -0800","stats":{"files_changed":1,"insertions":46,"deletions":0,"files":["tests/test_jar_manifest.py"],"file_stats":[{"name":"tests/test_jar_manifest.py","lines_changed":46}]},"message":"add MANIFEST.MF tests","epoch":1641149462,"epoch_utc":null},{"commit":"929d7273a422c2bd5b83e5e19d32630f1a027f75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 10:29:56 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jan 2 10:29:56 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/jar_manifest.py"],"file_stats":[{"name":"jc/parsers/jar_manifest.py","lines_changed":8}]},"message":"doc updates","epoch":1641148196,"epoch_utc":null},{"commit":"2a40f842743a8745d651b4b6cae645045e6c6aab","author":"shaik","author_email":"shai.kustin@torq.io","date":"Sun Jan 2 17:11:20 2022 +0200","commit_by":"shaik","commit_by_email":"shai.kustin@torq.io","commit_by_date":"Sun Jan 2 17:30:25 2022 +0200","stats":{"files_changed":4,"insertions":22,"deletions":1,"files":["jc/parsers/csv.py","tests/fixtures/generic/csv-doubleqouted.csv","tests/fixtures/generic/csv-doubleqouted.json","tests/test_csv.py"],"file_stats":[{"name":"jc/parsers/csv.py","lines_changed":4},{"name":"tests/fixtures/generic/csv-doubleqouted.csv","lines_changed":3},{"name":"tests/fixtures/generic/csv-doubleqouted.json","lines_changed":4},{"name":"tests/test_csv.py","lines_changed":12}]},"message":"fix doubleqoute in csv","epoch":1641172280,"epoch_utc":null},{"commit":"9ff6fa818f0857321e4b3b089d288997f2ae27af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jan 1 10:08:40 2022 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Jan 1 10:08:40 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add jar-manifest","epoch":1641060520,"epoch_utc":null},{"commit":"dac73a4bfe24e36474fdf6ff60c23e784ca409bd","merge":"d789554 f733100","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jan 1 10:06:46 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sat Jan 1 10:06:46 2022 -0800","message":"Merge pull request #189 from kellyjonbrazil/master\n\nuse github releases instead of packaging site","epoch":1641060406,"epoch_utc":null},{"commit":"d7895547f74744e82317eabe4c870115701872be","merge":"f8e09ae b7d439c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jan 1 10:04:47 2022 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sat Jan 1 10:04:47 2022 -0800","message":"Merge pull request #188 from listuser/new_branch\n\nCreate key value pairs from a MANIFEST.MF file, to include key multiline value pairs.","epoch":1641060287,"epoch_utc":null},{"commit":"b7d439cb870e443e4f4e4a2137ab170835e77eff","author":"listuser","author_email":null,"date":"Fri Dec 31 12:15:50 2021 -0800","commit_by":"listuser","commit_by_email":null,"commit_by_date":"Fri Dec 31 12:15:50 2021 -0800","stats":{"files_changed":3,"insertions":2220,"deletions":9,"files":["jc/parsers/{jar-manifest.py => jar_manifest.py}","tests/fixtures/rhel-8/MANIFEST.MF.MULTI.json","tests/fixtures/rhel-8/MANIFEST.MF.MULTI.out"],"file_stats":[{"name":"jc/parsers/{jar-manifest.py => jar_manifest.py}","lines_changed":18},{"name":"tests/fixtures/rhel-8/MANIFEST.MF.MULTI.json","lines_changed":1},{"name":"tests/fixtures/rhel-8/MANIFEST.MF.MULTI.out","lines_changed":2210}]},"message":"Renamed jar-manifest.py to jar_manifest.py, added multi manifest outputs to tests...","epoch":1640981750,"epoch_utc":null},{"commit":"7cc903a5f5ca368be97babadc72689375567a901","author":"listuser","author_email":null,"date":"Thu Dec 30 15:10:53 2021 -0800","commit_by":"listuser","commit_by_email":null,"commit_by_date":"Thu Dec 30 15:10:53 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/jar-manifest.py"],"file_stats":[{"name":"jc/parsers/jar-manifest.py","lines_changed":3}]},"message":"Removed inflating from examples in jar-manifest.py","epoch":1640905853,"epoch_utc":null},{"commit":"c495a8291bd3e1fd070ee2e018b9b550f9c86314","author":"listuser","author_email":null,"date":"Thu Dec 30 15:06:06 2021 -0800","commit_by":"listuser","commit_by_email":null,"commit_by_date":"Thu Dec 30 15:06:06 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":292,"files":["tests/fixtures/rhel-8/MANIFEST.MF.json"],"file_stats":[{"name":"tests/fixtures/rhel-8/MANIFEST.MF.json","lines_changed":293}]},"message":"Updated test output in MANIFEST.MF.json","epoch":1640905566,"epoch_utc":null},{"commit":"5e1d7d777c627fb17feda6e51d9640bbd0f03302","author":"listuser","author_email":null,"date":"Thu Dec 30 15:02:48 2021 -0800","commit_by":"listuser","commit_by_email":null,"commit_by_date":"Thu Dec 30 15:02:48 2021 -0800","stats":{"files_changed":8,"insertions":304,"deletions":2544,"files":["jc/parsers/{metamf.py => jar-manifest.py}","tests/fixtures/rhel-8/MANIFEST.MF.json",".../rhel-8/{MANIFEST.MF => MANIFEST.MF.out}",".../rhel-8/cmds_used_to_generate_test_data.txt",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out"],"file_stats":[{"name":"jc/parsers/{metamf.py => jar-manifest.py}","lines_changed":34},{"name":"tests/fixtures/rhel-8/MANIFEST.MF.json","lines_changed":293},{"name":".../rhel-8/{MANIFEST.MF => MANIFEST.MF.out}","lines_changed":0},{"name":".../rhel-8/cmds_used_to_generate_test_data.txt","lines_changed":14},{"name":".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json","lines_changed":1},{"name":".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out","lines_changed":2210},{"name":".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json","lines_changed":1},{"name":".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out","lines_changed":295}]},"message":"Renamed metamf.py to jar-manifest.py, plus other changes","epoch":1640905368,"epoch_utc":null},{"commit":"7edad3f676fe5560017ca9cb05ede6f46787e78f","author":"listuser","author_email":null,"date":"Wed Dec 29 12:15:15 2021 -0800","commit_by":"listuser","commit_by_email":null,"commit_by_date":"Wed Dec 29 12:15:15 2021 -0800","stats":{"files_changed":8,"insertions":3042,"deletions":0,"files":["jc/parsers/metamf.py","tests/fixtures/rhel-8/MANIFEST.MF","tests/fixtures/rhel-8/MANIFEST.MF.json",".../rhel-8/cmds_used_to_generate_test_data.txt",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out"],"file_stats":[{"name":"jc/parsers/metamf.py","lines_changed":228},{"name":"tests/fixtures/rhel-8/MANIFEST.MF","lines_changed":292},{"name":"tests/fixtures/rhel-8/MANIFEST.MF.json","lines_changed":1},{"name":".../rhel-8/cmds_used_to_generate_test_data.txt","lines_changed":14},{"name":".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json","lines_changed":1},{"name":".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out","lines_changed":2210},{"name":".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json","lines_changed":1},{"name":".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out","lines_changed":295}]},"message":"Create key value pairs from a MANIFEST.MF file, to include key multiline value pairs.","epoch":1640808915,"epoch_utc":null},{"commit":"f7331001d4ab976e311458a16b6e5337da2e3aab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 23 11:35:39 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 23 11:35:39 2021 -0800","stats":{"files_changed":3,"insertions":9,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":5},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":5}]},"message":"use github releases instead of packaging site","epoch":1640288139,"epoch_utc":null},{"commit":"f8e09ae2ffe185d21305d566fad20f510df9890f","merge":"2e4f5a5 433c7cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 15:46:39 2021 -0600","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Dec 21 15:46:39 2021 -0600","message":"Merge pull request #187 from kellyjonbrazil/master\n\nsync to dev","epoch":1640130399,"epoch_utc":null},{"commit":"433c7cc0f05e321ffe024845a908f3e856d4cd2b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 13:42:24 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 21 13:42:24 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/zipinfo.md","jc/parsers/zipinfo.py"],"file_stats":[{"name":"docs/parsers/zipinfo.md","lines_changed":1},{"name":"jc/parsers/zipinfo.py","lines_changed":1}]},"message":"formatting","epoch":1640122944,"epoch_utc":null},{"commit":"d753e71a7452310d45fa605a2e4c70320ed60dbb","merge":"3ac8d03 2e4f5a5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 15:21:18 2021 -0600","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Dec 21 15:21:18 2021 -0600","message":"Merge pull request #186 from kellyjonbrazil/dev\n\nDev v1.17.5","epoch":1640128878,"epoch_utc":null},{"commit":"2e4f5a508b6c90f9e03dcbcf64efc0e2fc446666","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 12:19:17 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 21 12:19:17 2021 -0800","stats":{"files_changed":4,"insertions":6,"deletions":3,"files":["CHANGELOG","jc/__init__.py","man/jc.1","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1640117957,"epoch_utc":null},{"commit":"88b960eff6cb3739d0d243c8d8b3e8ad5b8eb97c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 12:14:20 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 21 12:14:20 2021 -0800","stats":{"files_changed":4,"insertions":144,"deletions":1,"files":["EXAMPLES.md","README.md","docs/parsers/zipinfo.md","man/jc.1"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":31},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/zipinfo.md","lines_changed":106},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update","epoch":1640117660,"epoch_utc":null},{"commit":"88c77bd89e2c2a5f023e6638816c9153b6276d35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 12:08:16 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 21 12:08:16 2021 -0800","stats":{"files_changed":2,"insertions":47,"deletions":0,"files":["tests/fixtures/osx-10.14.6/zipinfo-multi.json","tests/test_zipinfo.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/zipinfo-multi.json","lines_changed":1},{"name":"tests/test_zipinfo.py","lines_changed":46}]},"message":"add zipinfo tests","epoch":1640117296,"epoch_utc":null},{"commit":"51a7a4251fff518d8da78ffa41e7ba2e2cb47f12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 11:11:56 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 21 11:11:56 2021 -0800","stats":{"files_changed":1,"insertions":24,"deletions":0,"files":["tests/fixtures/osx-10.14.6/zipinfo-multi.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/zipinfo-multi.out","lines_changed":24}]},"message":"add multi-archive test output","epoch":1640113916,"epoch_utc":null},{"commit":"51d2f316f388d962c26aeb4f42affebec339e5a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 11:11:44 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 21 11:11:44 2021 -0800","stats":{"files_changed":1,"insertions":97,"deletions":72,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":169}]},"message":"add multi-archive support","epoch":1640113904,"epoch_utc":null},{"commit":"ff78a46c4854339a097992701351ef471aff1671","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 08:13:17 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 21 08:13:17 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"add zipinfo parser","epoch":1640103197,"epoch_utc":null},{"commit":"ed4a9dc1d470f64bcc9de35b2d98568ffd50257d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 08:13:00 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 21 08:13:00 2021 -0800","stats":{"files_changed":1,"insertions":21,"deletions":23,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":44}]},"message":"formatting","epoch":1640103180,"epoch_utc":null},{"commit":"63182dba26040974cb8cada6f5910bb29b1fa3ed","merge":"b450697 9c1eaa9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 10:08:46 2021 -0600","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Dec 21 10:08:46 2021 -0600","message":"Merge pull request #185 from listuser/new_branch\n\ncontributed zipinfo parser","epoch":1640110126,"epoch_utc":null},{"commit":"9c1eaa938934269fe4179da798acf5f119cde0cf","author":"Matt J","author_email":"none","date":"Mon Dec 20 21:53:34 2021 -0800","commit_by":"Matt J","commit_by_email":"none","commit_by_date":"Mon Dec 20 21:53:34 2021 -0800","stats":{"files_changed":2,"insertions":68,"deletions":61,"files":["jc/parsers/zipinfo.py","tests/fixtures/rhel-8/zipinfo.json"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":127},{"name":"tests/fixtures/rhel-8/zipinfo.json","lines_changed":2}]},"message":"revised zipinfo.py nested version","epoch":1640066014,"epoch_utc":null},{"commit":"bc520fcbcdfad6a53e51944391fd24512bed8128","author":"Matt J","author_email":"none","date":"Mon Dec 20 14:29:50 2021 -0800","commit_by":"Matt J","commit_by_email":"none","commit_by_date":"Mon Dec 20 14:29:50 2021 -0800","stats":{"files_changed":2,"insertions":63,"deletions":53,"files":["jc/parsers/zipinfo.py","tests/fixtures/rhel-8/zipinfo.json"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":114},{"name":"tests/fixtures/rhel-8/zipinfo.json","lines_changed":2}]},"message":"added zipinfo.py nested version","epoch":1640039390,"epoch_utc":null},{"commit":"46faac1a12a5b39d6a25427f6e8fdcca1204dbcd","author":"Matt J","author_email":"none","date":"Sun Dec 19 17:44:56 2021 -0800","commit_by":"Matt J","commit_by_email":"none","commit_by_date":"Sun Dec 19 18:08:11 2021 -0800","stats":{"files_changed":2,"insertions":1222,"deletions":0,"files":["tests/fixtures/rhel-8/zipinfo.json","tests/fixtures/rhel-8/zipinfo.out"],"file_stats":[{"name":"tests/fixtures/rhel-8/zipinfo.json","lines_changed":1},{"name":"tests/fixtures/rhel-8/zipinfo.out","lines_changed":1221}]},"message":"add test data zipinfo.json and zipinfo.out","epoch":1639964696,"epoch_utc":null},{"commit":"3c424c0cb3cff462a963183585b57bea004e974f","author":"Matt J","author_email":"none","date":"Sun Dec 19 14:05:48 2021 -0800","commit_by":"Matt J","commit_by_email":"none","commit_by_date":"Sun Dec 19 14:05:48 2021 -0800","stats":{"files_changed":1,"insertions":165,"deletions":0,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":165}]},"message":"initial commit zipinfo.py to new_branch","epoch":1639951548,"epoch_utc":null},{"commit":"3ac8d0362b4fb9999fc55a60a9cb20ac80d114f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 16 07:04:35 2021 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Dec 16 07:04:35 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"use quotes around python versions","epoch":1639667075,"epoch_utc":null},{"commit":"d88b998e6c7826a9ecae18663328e2d2915030fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 9 10:58:06 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 9 10:58:06 2021 -0800","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":8},{"name":"jc/parsers/csv_s.py","lines_changed":8}]},"message":"formatting","epoch":1639076286,"epoch_utc":null},{"commit":"a9ed55c00652a563391a7930c7a4649967131ae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 9 10:54:04 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 9 10:54:04 2021 -0800","stats":{"files_changed":11,"insertions":11,"deletions":11,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]},"message":"fix spelling","epoch":1639076044,"epoch_utc":null},{"commit":"ea614341232e5272ee0c7fd46ba0f313033c761f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 9 10:21:37 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 9 10:21:37 2021 -0800","stats":{"files_changed":4,"insertions":16,"deletions":8,"files":["docs/parsers/crontab.md","docs/parsers/crontab_u.md","jc/parsers/crontab.py","jc/parsers/crontab_u.py"],"file_stats":[{"name":"docs/parsers/crontab.md","lines_changed":6},{"name":"docs/parsers/crontab_u.md","lines_changed":6},{"name":"jc/parsers/crontab.py","lines_changed":6},{"name":"jc/parsers/crontab_u.py","lines_changed":6}]},"message":"fix schema docs","epoch":1639074097,"epoch_utc":null},{"commit":"a73d0d26cbe2860b8374661068e09e0717a3bab2","merge":"a7de911 b450697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 20:49:01 2021 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Dec 8 20:49:01 2021 -0800","message":"Merge pull request #184 from kellyjonbrazil/dev\n\nDev 1.17.4","epoch":1639025341,"epoch_utc":null},{"commit":"b4506976e3c865397bc657183d49c484d8bcfd7a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 11:21:12 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 8 11:21:12 2021 -0800","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":8},{"name":"templates/manpage_template","lines_changed":6}]},"message":"formatting","epoch":1638991272,"epoch_utc":null},{"commit":"34cb75a09697a06c3878f2f9a84eb3bd2a90ae62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:46:00 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 8 08:46:00 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/__init__.py","setup.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1638981960,"epoch_utc":null},{"commit":"34df643f60712ae25645cb7cddff80e43c12262b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:35:09 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 8 08:35:09 2021 -0800","stats":{"files_changed":4,"insertions":18,"deletions":0,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"man/jc.1","lines_changed":6},{"name":"templates/manpage_template","lines_changed":6},{"name":"templates/readme_template","lines_changed":3}]},"message":"add disable colors section","epoch":1638981309,"epoch_utc":null},{"commit":"ac7c13fcc013d386f34db51d634298fa3e97eccd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:22:28 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 8 08:22:28 2021 -0800","stats":{"files_changed":4,"insertions":11,"deletions":1,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"man/jc.1","lines_changed":6},{"name":"templates/manpage_template","lines_changed":4},{"name":"templates/readme_template","lines_changed":1}]},"message":"add -C option to docs","epoch":1638980548,"epoch_utc":null},{"commit":"4fdb34c7d5fcaa65e2ccab814c3acf2f0f70c442","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:19:43 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 8 08:19:43 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"add no-color.org","epoch":1638980383,"epoch_utc":null},{"commit":"7ac468e35aac1a63c4e22f33aead74a6e41a22a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:14:36 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 8 08:14:36 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"changelog update","epoch":1638980076,"epoch_utc":null},{"commit":"df190aa299f1669d1fe09380026ae086839abc02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:14:28 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 8 08:14:28 2021 -0800","stats":{"files_changed":1,"insertions":15,"deletions":7,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":22}]},"message":"add -C option to force color even with pipes","epoch":1638980068,"epoch_utc":null},{"commit":"9621475e86fe20fcdc2902b6ce7860a833ae2ca0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 7 15:46:02 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 7 15:46:02 2021 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"changelog update","epoch":1638920762,"epoch_utc":null},{"commit":"82e0160de820ad2ed6143f58458711d600b929a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 7 15:45:11 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 7 15:45:11 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"refactor NO_COLOR test","epoch":1638920711,"epoch_utc":null},{"commit":"d03fb8b626a97e81006d0b108c8f400fe4e2ce3b","merge":"b300dfb 7933dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 7 15:34:23 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 7 15:34:23 2021 -0800","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev","epoch":1638920063,"epoch_utc":null},{"commit":"b300dfb3d75fe76e2ddbb087ff742dd0b5e6155b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 7 15:34:20 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 7 15:34:20 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"Add support for NO_COLOR env variable","epoch":1638920060,"epoch_utc":null},{"commit":"a7de9111d97e687cafbc0709ec3ff7453d658a80","merge":"21e69a7 7933dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 16:37:46 2021 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Dec 2 16:37:46 2021 -0800","message":"Merge pull request #183 from kellyjonbrazil/dev\n\nDev v1.17.3","epoch":1638491866,"epoch_utc":null},{"commit":"7933dfdbe7bf400833d6f6b771362dfc518b9a8d","merge":"f7cb5f7 21e69a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 16:34:06 2021 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Dec 2 16:34:06 2021 -0800","message":"Merge branch 'master' into dev","epoch":1638491646,"epoch_utc":null},{"commit":"f7cb5f7d01ac01538bee4da816408072b585768e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 16:30:47 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 2 16:30:47 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"update date","epoch":1638491447,"epoch_utc":null},{"commit":"a26a298f1a3c141171e7d7ce459a27a297cec031","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 11:42:56 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 2 11:42:56 2021 -0800","stats":{"files_changed":4,"insertions":148,"deletions":1,"files":["README.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/iostat.md","lines_changed":15},{"name":"docs/parsers/iostat_s.md","lines_changed":126},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update","epoch":1638474176,"epoch_utc":null},{"commit":"dbd134d0dac2fc152183480958fd9e65919ac98d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 11:40:47 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 2 11:40:47 2021 -0800","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat_s.py","lines_changed":6}]},"message":"add examples to docs","epoch":1638474047,"epoch_utc":null},{"commit":"11aa01b0d9d6913059f98f9bd7591d7cad9037cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 11:38:00 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 2 11:38:00 2021 -0800","stats":{"files_changed":15,"insertions":15,"deletions":1,"files":["jc/parsers/iostat_s.py","tests/fixtures/centos-7.7/iostat-1-streaming.json","tests/fixtures/centos-7.7/iostat-m-streaming.json","tests/fixtures/centos-7.7/iostat-mx-streaming.json","tests/fixtures/centos-7.7/iostat-streaming.json","tests/fixtures/centos-7.7/iostat-x-streaming.json","tests/fixtures/ubuntu-18.04/iostat-1-streaming.json","tests/fixtures/ubuntu-18.04/iostat-m-streaming.json","tests/fixtures/ubuntu-18.04/iostat-mx-streaming.json","tests/fixtures/ubuntu-18.04/iostat-streaming.json","tests/fixtures/ubuntu-18.04/iostat-x-streaming.json","tests/fixtures/ubuntu-20.10/iostat-m-streaming.json","tests/fixtures/ubuntu-20.10/iostat-mx-streaming.json","tests/fixtures/ubuntu-20.10/iostat-streaming.json","tests/fixtures/ubuntu-20.10/iostat-x-streaming.json"],"file_stats":[{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iostat-1-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-m-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-mx-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-x-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-1-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-m-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-mx-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-x-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-m-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-mx-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-x-streaming.json","lines_changed":1}]},"message":"iostat-s tests","epoch":1638473880,"epoch_utc":null},{"commit":"6f18e5344356684e845ec63158c570d82156254f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 11:37:52 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 2 11:37:52 2021 -0800","stats":{"files_changed":1,"insertions":203,"deletions":0,"files":["tests/test_iostat_s.py"],"file_stats":[{"name":"tests/test_iostat_s.py","lines_changed":203}]},"message":"fix for null lines","epoch":1638473872,"epoch_utc":null},{"commit":"7b467c466568ad4e7986d4d7cf3ec606681b6d46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 09:30:16 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 2 09:30:16 2021 -0800","stats":{"files_changed":9,"insertions":137,"deletions":0,"files":["tests/fixtures/ubuntu-20.10/iostat-m.json","tests/fixtures/ubuntu-20.10/iostat-m.out","tests/fixtures/ubuntu-20.10/iostat-mx.json","tests/fixtures/ubuntu-20.10/iostat-mx.out","tests/fixtures/ubuntu-20.10/iostat-x.json","tests/fixtures/ubuntu-20.10/iostat-x.out","tests/fixtures/ubuntu-20.10/iostat.json","tests/fixtures/ubuntu-20.10/iostat.out","tests/test_iostat.py"],"file_stats":[{"name":"tests/fixtures/ubuntu-20.10/iostat-m.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-m.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-20.10/iostat-mx.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-mx.out","lines_changed":22},{"name":"tests/fixtures/ubuntu-20.10/iostat-x.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-x.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-20.10/iostat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat.out","lines_changed":22},{"name":"tests/test_iostat.py","lines_changed":47}]},"message":"add ubuntu 20.10 tests","epoch":1638466216,"epoch_utc":null},{"commit":"537b8f263087894c02b5b7c121765cf96182a370","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 09:14:43 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 2 09:14:43 2021 -0800","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":4},{"name":"jc/parsers/iostat_s.py","lines_changed":4}]},"message":"add more int conversions","epoch":1638465283,"epoch_utc":null},{"commit":"4d823575e791999e200dedd491511c4fde64fc2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 08:47:25 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 2 08:47:25 2021 -0800","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":4},{"name":"jc/parsers/iostat_s.py","lines_changed":4}]},"message":"add more float fields","epoch":1638463645,"epoch_utc":null},{"commit":"541aa1d09f20ff6979eabaa66790decb3895f18d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 08:41:36 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 2 08:41:36 2021 -0800","stats":{"files_changed":2,"insertions":68,"deletions":8,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":15},{"name":"jc/parsers/iostat_s.py","lines_changed":61}]},"message":"Add new field float conversions for iostat v11","epoch":1638463296,"epoch_utc":null},{"commit":"8f02021014b7b19acf1a8bbd777161aa82c65d66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 05:54:38 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 2 05:54:38 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat_s.py","lines_changed":1}]},"message":"formatting","epoch":1638453278,"epoch_utc":null},{"commit":"158a15157c7e5dde95dc21766d0696bd82486688","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:47:17 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 1 16:47:17 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"changelog update","epoch":1638406037,"epoch_utc":null},{"commit":"2752e0d66a9ba0b57ac86913fd302ada23c280c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:47:09 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 1 16:47:09 2021 -0800","stats":{"files_changed":2,"insertions":166,"deletions":0,"files":["jc/cli.py","jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/iostat_s.py","lines_changed":165}]},"message":"add iostat streaming parser","epoch":1638406029,"epoch_utc":null},{"commit":"6c11e912afe3c4d16da9199b5c2fc10461928ac3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:14:22 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 1 16:14:22 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"update changelog","epoch":1638404062,"epoch_utc":null},{"commit":"43d34461e27e3e4ac5f985786831c170b348c7c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:12:51 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 1 16:12:51 2021 -0800","stats":{"files_changed":83,"insertions":279,"deletions":81,"files":["README.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/utils.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/dpkg_l.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/finger.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/gshadow.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iostat.md","lines_changed":172},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":22},{"name":"man/jc.1","lines_changed":7}]},"message":"update docs","epoch":1638403971,"epoch_utc":null},{"commit":"4dfdc9b0f65d8c950ed74545d0cc3f95c8abec6c","merge":"e2311cb 6665ffa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:02:10 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 1 16:02:10 2021 -0800","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev","epoch":1638403330,"epoch_utc":null},{"commit":"e2311cbb03f407414df953c8d1c07d0cf1a549ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:02:06 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 1 16:02:06 2021 -0800","stats":{"files_changed":21,"insertions":400,"deletions":0,"files":["tests/fixtures/centos-7.7/iostat-1.json","tests/fixtures/centos-7.7/iostat-1.out","tests/fixtures/centos-7.7/iostat-m.json","tests/fixtures/centos-7.7/iostat-m.out","tests/fixtures/centos-7.7/iostat-mx.json","tests/fixtures/centos-7.7/iostat-mx.out","tests/fixtures/centos-7.7/iostat-x.json","tests/fixtures/centos-7.7/iostat-x.out","tests/fixtures/centos-7.7/iostat.json","tests/fixtures/centos-7.7/iostat.out","tests/fixtures/ubuntu-18.04/iostat-1.json","tests/fixtures/ubuntu-18.04/iostat-1.out","tests/fixtures/ubuntu-18.04/iostat-m.json","tests/fixtures/ubuntu-18.04/iostat-m.out","tests/fixtures/ubuntu-18.04/iostat-mx.json","tests/fixtures/ubuntu-18.04/iostat-mx.out","tests/fixtures/ubuntu-18.04/iostat-x.json","tests/fixtures/ubuntu-18.04/iostat-x.out","tests/fixtures/ubuntu-18.04/iostat.json","tests/fixtures/ubuntu-18.04/iostat.out","tests/test_iostat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/iostat-1.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-1.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/iostat-m.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-m.out","lines_changed":10},{"name":"tests/fixtures/centos-7.7/iostat-mx.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-mx.out","lines_changed":9},{"name":"tests/fixtures/centos-7.7/iostat-x.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-x.out","lines_changed":10},{"name":"tests/fixtures/centos-7.7/iostat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat.out","lines_changed":9},{"name":"tests/fixtures/ubuntu-18.04/iostat-1.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-1.out","lines_changed":77},{"name":"tests/fixtures/ubuntu-18.04/iostat-m.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-m.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-18.04/iostat-mx.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-mx.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/iostat-x.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-x.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/iostat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat.out","lines_changed":27},{"name":"tests/test_iostat.py","lines_changed":143}]},"message":"add iostat tests","epoch":1638403326,"epoch_utc":null},{"commit":"bf15575e90985cfec5c57dd11dfa2b86d53a41be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:01:52 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 1 16:01:52 2021 -0800","stats":{"files_changed":1,"insertions":14,"deletions":7,"files":["jc/parsers/iostat.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":21}]},"message":"fixes for ubunut","epoch":1638403312,"epoch_utc":null},{"commit":"406336c7185b539b5e00532b58146d5b1b73f259","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 13:53:31 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 1 13:53:31 2021 -0800","stats":{"files_changed":1,"insertions":44,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":44}]},"message":"add iostat example","epoch":1638395611,"epoch_utc":null},{"commit":"6665ffaeb8107e9db3b917db0663beaf44024533","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 10:59:07 2021 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Dec 1 10:59:07 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"remove python 3.6 from tests","epoch":1638385147,"epoch_utc":null},{"commit":"dcf552ca0c69aa5f0309a83dc33dee7c5ed81292","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 10:34:55 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 1 10:34:55 2021 -0800","stats":{"files_changed":1,"insertions":138,"deletions":47,"files":["jc/parsers/iostat.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":185}]},"message":"add _process and cleanup","epoch":1638383695,"epoch_utc":null},{"commit":"7a6ebf3c9555dd82df7dc0b71981cdd32ce0061d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 16:54:32 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 16:54:32 2021 -0800","stats":{"files_changed":2,"insertions":171,"deletions":0,"files":["jc/cli.py","jc/parsers/iostat.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/iostat.py","lines_changed":170}]},"message":"add iostat parser","epoch":1638320072,"epoch_utc":null},{"commit":"d2dc4a983c86c538e13e568b908072de4ca0daaf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 11:59:26 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 11:59:26 2021 -0800","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"changelog update","epoch":1638302366,"epoch_utc":null},{"commit":"1168259bc23862f671326d41f5282a3575205214","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 11:57:04 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 11:57:04 2021 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":3}]},"message":"add doc strings","epoch":1638302224,"epoch_utc":null},{"commit":"e8e4b46021557fbf5776c32dff46de022817fb6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 11:49:40 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 11:49:40 2021 -0800","stats":{"files_changed":5,"insertions":14,"deletions":19,"files":["jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":5},{"name":"jc/parsers/foo_s.py","lines_changed":7},{"name":"jc/parsers/ls_s.py","lines_changed":7},{"name":"jc/parsers/ping_s.py","lines_changed":7},{"name":"jc/parsers/vmstat_s.py","lines_changed":7}]},"message":"use jc.utils type checks","epoch":1638301780,"epoch_utc":null},{"commit":"12d2de22821fd8f57f4d412e62f53db3d89d5e30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 11:43:06 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 11:43:06 2021 -0800","stats":{"files_changed":77,"insertions":181,"deletions":165,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":4},{"name":"jc/parsers/airport.py","lines_changed":4},{"name":"jc/parsers/airport_s.py","lines_changed":4},{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/blkid.py","lines_changed":4},{"name":"jc/parsers/cksum.py","lines_changed":4},{"name":"jc/parsers/crontab.py","lines_changed":4},{"name":"jc/parsers/crontab_u.py","lines_changed":4},{"name":"jc/parsers/csv.py","lines_changed":4},{"name":"jc/parsers/date.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":5},{"name":"jc/parsers/dir.py","lines_changed":4},{"name":"jc/parsers/dmidecode.py","lines_changed":4},{"name":"jc/parsers/dpkg_l.py","lines_changed":4},{"name":"jc/parsers/du.py","lines_changed":4},{"name":"jc/parsers/env.py","lines_changed":4},{"name":"jc/parsers/file.py","lines_changed":4},{"name":"jc/parsers/finger.py","lines_changed":4},{"name":"jc/parsers/foo.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":4},{"name":"jc/parsers/fstab.py","lines_changed":4},{"name":"jc/parsers/group.py","lines_changed":4},{"name":"jc/parsers/gshadow.py","lines_changed":4},{"name":"jc/parsers/hash.py","lines_changed":4},{"name":"jc/parsers/hashsum.py","lines_changed":4},{"name":"jc/parsers/hciconfig.py","lines_changed":4},{"name":"jc/parsers/history.py","lines_changed":4},{"name":"jc/parsers/hosts.py","lines_changed":4},{"name":"jc/parsers/id.py","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":4},{"name":"jc/parsers/ini.py","lines_changed":4},{"name":"jc/parsers/iptables.py","lines_changed":4},{"name":"jc/parsers/iw_scan.py","lines_changed":4},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/last.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4},{"name":"jc/parsers/lsblk.py","lines_changed":4},{"name":"jc/parsers/lsmod.py","lines_changed":4},{"name":"jc/parsers/lsof.py","lines_changed":4},{"name":"jc/parsers/lsusb.py","lines_changed":4},{"name":"jc/parsers/mount.py","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":4},{"name":"jc/parsers/ntpq.py","lines_changed":4},{"name":"jc/parsers/passwd.py","lines_changed":4},{"name":"jc/parsers/ping.py","lines_changed":4},{"name":"jc/parsers/pip_list.py","lines_changed":4},{"name":"jc/parsers/pip_show.py","lines_changed":4},{"name":"jc/parsers/ps.py","lines_changed":4},{"name":"jc/parsers/route.py","lines_changed":4},{"name":"jc/parsers/rpm_qi.py","lines_changed":4},{"name":"jc/parsers/sfdisk.py","lines_changed":4},{"name":"jc/parsers/shadow.py","lines_changed":4},{"name":"jc/parsers/ss.py","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"jc/parsers/sysctl.py","lines_changed":4},{"name":"jc/parsers/systemctl.py","lines_changed":4},{"name":"jc/parsers/systemctl_lj.py","lines_changed":4},{"name":"jc/parsers/systemctl_ls.py","lines_changed":4},{"name":"jc/parsers/systemctl_luf.py","lines_changed":4},{"name":"jc/parsers/systeminfo.py","lines_changed":4},{"name":"jc/parsers/time.py","lines_changed":4},{"name":"jc/parsers/timedatectl.py","lines_changed":4},{"name":"jc/parsers/tracepath.py","lines_changed":4},{"name":"jc/parsers/traceroute.py","lines_changed":4},{"name":"jc/parsers/ufw.py","lines_changed":4},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":4},{"name":"jc/parsers/uname.py","lines_changed":4},{"name":"jc/parsers/upower.py","lines_changed":4},{"name":"jc/parsers/uptime.py","lines_changed":4},{"name":"jc/parsers/vmstat.py","lines_changed":4},{"name":"jc/parsers/w.py","lines_changed":4},{"name":"jc/parsers/wc.py","lines_changed":4},{"name":"jc/parsers/who.py","lines_changed":4},{"name":"jc/parsers/xml.py","lines_changed":4},{"name":"jc/parsers/yaml.py","lines_changed":4},{"name":"jc/utils.py","lines_changed":40}]},"message":"use jc.utils.input_type_check() and simplify compatibility check","epoch":1638301386,"epoch_utc":null},{"commit":"0e2fe401e1c49a9f947d7d17b72cfc4e90787f47","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 10:08:27 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 10:08:27 2021 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]},"message":"version bump","epoch":1638295707,"epoch_utc":null},{"commit":"14247adb0ae007924ca551a706eb0cfdbae97a41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 10:03:59 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 10:03:59 2021 -0800","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["jc/parsers/csv_s.py","tests/test_csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":7},{"name":"tests/test_csv_s.py","lines_changed":2}]},"message":"add input type checks","epoch":1638295439,"epoch_utc":null},{"commit":"3a9f0934c41c85ea7fa87165b9559f08814645cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 09:56:33 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 09:56:33 2021 -0800","stats":{"files_changed":2,"insertions":5,"deletions":3,"files":["jc/parsers/ls_s.py","tests/test_ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":6},{"name":"tests/test_ls_s.py","lines_changed":2}]},"message":"add input type checks","epoch":1638294993,"epoch_utc":null},{"commit":"caf0a5c8713bf0d72951a2c6fd5a2c62c9eb59d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 09:51:27 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 09:51:27 2021 -0800","stats":{"files_changed":2,"insertions":7,"deletions":4,"files":["jc/parsers/vmstat_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":9},{"name":"tests/test_vmstat_s.py","lines_changed":2}]},"message":"add input type checking","epoch":1638294687,"epoch_utc":null},{"commit":"cfb58b1cf3e3028f8e03fdd93f0165cf8d230e1e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 09:41:16 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 09:41:16 2021 -0800","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":8}]},"message":"add input type checks","epoch":1638294076,"epoch_utc":null},{"commit":"975cf195cc02774f50460ca479d9ebb7b73c7870","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 09:40:49 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 09:40:49 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":1}]},"message":"formatting","epoch":1638294049,"epoch_utc":null},{"commit":"8a46a259a36efc55bb0b2141acb9dd5ae52b7725","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 09:19:51 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 30 09:19:51 2021 -0800","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["jc/parsers/ping_s.py","tests/test_ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":8},{"name":"tests/test_ping_s.py","lines_changed":2}]},"message":"add input type checks","epoch":1638292791,"epoch_utc":null},{"commit":"e395142e599aa78b4a7ec80dcc3f8ccf279f97b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 29 16:45:22 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 29 16:45:22 2021 -0800","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1638233122,"epoch_utc":null},{"commit":"caaeaf0d67cf44f8d2651cc53a7528d3ef0c74d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 29 16:29:23 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 29 16:29:23 2021 -0800","stats":{"files_changed":76,"insertions":227,"deletions":227,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":6},{"name":"jc/parsers/airport.py","lines_changed":6},{"name":"jc/parsers/airport_s.py","lines_changed":6},{"name":"jc/parsers/arp.py","lines_changed":6},{"name":"jc/parsers/blkid.py","lines_changed":6},{"name":"jc/parsers/cksum.py","lines_changed":6},{"name":"jc/parsers/crontab.py","lines_changed":6},{"name":"jc/parsers/crontab_u.py","lines_changed":6},{"name":"jc/parsers/csv.py","lines_changed":6},{"name":"jc/parsers/date.py","lines_changed":6},{"name":"jc/parsers/df.py","lines_changed":6},{"name":"jc/parsers/dig.py","lines_changed":6},{"name":"jc/parsers/dir.py","lines_changed":6},{"name":"jc/parsers/dmidecode.py","lines_changed":6},{"name":"jc/parsers/dpkg_l.py","lines_changed":6},{"name":"jc/parsers/du.py","lines_changed":6},{"name":"jc/parsers/env.py","lines_changed":6},{"name":"jc/parsers/file.py","lines_changed":6},{"name":"jc/parsers/finger.py","lines_changed":6},{"name":"jc/parsers/foo.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":6},{"name":"jc/parsers/fstab.py","lines_changed":6},{"name":"jc/parsers/group.py","lines_changed":6},{"name":"jc/parsers/gshadow.py","lines_changed":6},{"name":"jc/parsers/hash.py","lines_changed":6},{"name":"jc/parsers/hashsum.py","lines_changed":6},{"name":"jc/parsers/hciconfig.py","lines_changed":6},{"name":"jc/parsers/history.py","lines_changed":6},{"name":"jc/parsers/hosts.py","lines_changed":6},{"name":"jc/parsers/id.py","lines_changed":6},{"name":"jc/parsers/ifconfig.py","lines_changed":6},{"name":"jc/parsers/ini.py","lines_changed":6},{"name":"jc/parsers/iptables.py","lines_changed":6},{"name":"jc/parsers/iw_scan.py","lines_changed":6},{"name":"jc/parsers/jobs.py","lines_changed":6},{"name":"jc/parsers/last.py","lines_changed":6},{"name":"jc/parsers/ls.py","lines_changed":6},{"name":"jc/parsers/lsblk.py","lines_changed":6},{"name":"jc/parsers/lsmod.py","lines_changed":6},{"name":"jc/parsers/lsof.py","lines_changed":6},{"name":"jc/parsers/lsusb.py","lines_changed":6},{"name":"jc/parsers/mount.py","lines_changed":6},{"name":"jc/parsers/netstat.py","lines_changed":6},{"name":"jc/parsers/ntpq.py","lines_changed":6},{"name":"jc/parsers/passwd.py","lines_changed":6},{"name":"jc/parsers/ping.py","lines_changed":6},{"name":"jc/parsers/pip_list.py","lines_changed":6},{"name":"jc/parsers/pip_show.py","lines_changed":6},{"name":"jc/parsers/ps.py","lines_changed":6},{"name":"jc/parsers/route.py","lines_changed":6},{"name":"jc/parsers/rpm_qi.py","lines_changed":6},{"name":"jc/parsers/sfdisk.py","lines_changed":6},{"name":"jc/parsers/shadow.py","lines_changed":6},{"name":"jc/parsers/ss.py","lines_changed":6},{"name":"jc/parsers/stat.py","lines_changed":6},{"name":"jc/parsers/sysctl.py","lines_changed":6},{"name":"jc/parsers/systemctl.py","lines_changed":6},{"name":"jc/parsers/systemctl_lj.py","lines_changed":6},{"name":"jc/parsers/systemctl_ls.py","lines_changed":6},{"name":"jc/parsers/systemctl_luf.py","lines_changed":6},{"name":"jc/parsers/systeminfo.py","lines_changed":6},{"name":"jc/parsers/time.py","lines_changed":6},{"name":"jc/parsers/timedatectl.py","lines_changed":6},{"name":"jc/parsers/tracepath.py","lines_changed":6},{"name":"jc/parsers/traceroute.py","lines_changed":6},{"name":"jc/parsers/ufw.py","lines_changed":6},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":6},{"name":"jc/parsers/uname.py","lines_changed":6},{"name":"jc/parsers/upower.py","lines_changed":6},{"name":"jc/parsers/uptime.py","lines_changed":6},{"name":"jc/parsers/vmstat.py","lines_changed":6},{"name":"jc/parsers/w.py","lines_changed":6},{"name":"jc/parsers/wc.py","lines_changed":6},{"name":"jc/parsers/who.py","lines_changed":6},{"name":"jc/parsers/xml.py","lines_changed":6},{"name":"jc/parsers/yaml.py","lines_changed":6}]},"message":"add 'str' type check on input","epoch":1638232163,"epoch_utc":null},{"commit":"21e69a7cbf62240238f6fb78e874dda6ce2e922a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 24 19:33:07 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 24 19:33:07 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"],"file_stats":[{"name":".gitignore","lines_changed":1}]},"message":"ignore _config.yml","epoch":1637811187,"epoch_utc":null},{"commit":"603964935b58e02cf0614cf67ffacc6d94755e05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 24 19:30:10 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 24 19:30:10 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"remove trailing whitespace","epoch":1637811010,"epoch_utc":null},{"commit":"47eb83ae55b9892716fff712bd2be21b6191b552","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 24 13:32:51 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 24 13:32:51 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"],"file_stats":[{"name":".gitignore","lines_changed":1}]},"message":"add .vscode","epoch":1637789571,"epoch_utc":null},{"commit":"fc0ce6c95923ab124961e695a26c0b68dd0f359f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 22 09:45:14 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 22 09:45:14 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add streaming parser to custom parsers info","epoch":1637603114,"epoch_utc":null},{"commit":"077a29fb4eedcfccb026498c5c3a64b7b7601363","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 22 09:36:58 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 22 09:36:58 2021 -0800","stats":{"files_changed":2,"insertions":14,"deletions":2,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":8},{"name":"jc/parsers/csv_s.py","lines_changed":8}]},"message":"add _jc_meta field info","epoch":1637602618,"epoch_utc":null},{"commit":"8568d0d328706a7a5b1476452e078d8cbe7b7391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 22 09:10:11 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 22 09:10:11 2021 -0800","stats":{"files_changed":3,"insertions":7,"deletions":3,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":4},{"name":"jc/parsers/csv_s.py","lines_changed":4},{"name":"man/jc.1","lines_changed":2}]},"message":"fix csv_s documentation","epoch":1637601011,"epoch_utc":null},{"commit":"597d39c28ea0c0fe3b072413e9d91ab5e27b62bd","merge":"b59e38c eb888dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 18 06:52:01 2021 -1000","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Nov 18 06:52:01 2021 -1000","message":"Merge pull request #180 from kellyjonbrazil/dev\n\nDev v1.17.2","epoch":1637247121,"epoch_utc":null},{"commit":"eb888dcbbcf83c9197bd59aab72f65ea6eb622ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 18 08:48:03 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 18 08:48:03 2021 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["jc/__init__.py","man/jc.1","setup.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1637254083,"epoch_utc":null},{"commit":"d1b9ac0841b15ee15690c4066453a322618320ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 18 08:41:52 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 18 08:41:52 2021 -0800","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/df.md","docs/parsers/netstat.md","docs/parsers/ping.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1637253712,"epoch_utc":null},{"commit":"89a6d9c5c39b74f1b040f410659bfd7ae1a902d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 17 12:03:40 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 17 12:03:40 2021 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":5}]},"message":"add key-check to restore previous behavior even with non-df data","epoch":1637179420,"epoch_utc":null},{"commit":"85d983761637129cb85abfb0bbdde7c507061cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 17 11:41:54 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 17 11:41:54 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add df info","epoch":1637178114,"epoch_utc":null},{"commit":"cd7731484d826d84d835ecd460d746e78cadc5fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 17 11:26:42 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 17 11:26:42 2021 -0800","stats":{"files_changed":4,"insertions":62,"deletions":2,"files":["jc/parsers/df.py","tests/fixtures/generic/df-long-filesystem.json","tests/fixtures/generic/df-long-filesystem.out","tests/test_df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":47},{"name":"tests/fixtures/generic/df-long-filesystem.json","lines_changed":1},{"name":"tests/fixtures/generic/df-long-filesystem.out","lines_changed":4},{"name":"tests/test_df.py","lines_changed":12}]},"message":"fix for cases where the Filesystem data overflows the column length (happens on older versions of df)","epoch":1637177202,"epoch_utc":null},{"commit":"086da16b1743c16a5ccdd102f889fb31f99e3caa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 15 13:05:53 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 15 13:05:53 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":2}]},"message":"version bump","epoch":1637010353,"epoch_utc":null},{"commit":"20830528f04a5ecbe78420d8008249b089667767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 15 12:52:43 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 15 12:52:43 2021 -0800","stats":{"files_changed":4,"insertions":28,"deletions":0,"files":["CHANGELOG","tests/fixtures/generic/netstat-old.json","tests/fixtures/generic/netstat-old.out","tests/test_netstat.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"tests/fixtures/generic/netstat-old.json","lines_changed":1},{"name":"tests/fixtures/generic/netstat-old.out","lines_changed":14},{"name":"tests/test_netstat.py","lines_changed":12}]},"message":"add test for older netstat version fix","epoch":1637009563,"epoch_utc":null},{"commit":"83371edd8fe3d23dfa92fc707604086522c85ab9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 15 12:25:22 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 15 12:25:22 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat_linux.py"],"file_stats":[{"name":"jc/parsers/netstat_linux.py","lines_changed":2}]},"message":"add space before inode to compensate for removed dash","epoch":1637007922,"epoch_utc":null},{"commit":"364a81decc16742e3caa070d90b1d605d96fe2c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 4 10:25:51 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 4 10:25:51 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":2}]},"message":"version bump","epoch":1636046751,"epoch_utc":null},{"commit":"ef09592ad3e5c9a77c1bdebe8f876fc4dde54834","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 4 10:21:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 4 10:21:38 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"update for 1.17.2","epoch":1636046498,"epoch_utc":null},{"commit":"4a86e109ccb254d5195b782f84f3967c96ef726c","merge":"5ba22da 7fa5391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 4 10:18:47 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Nov 4 10:18:47 2021 -0700","message":"Merge pull request #179 from shaikustin/ping-alpine-linux\n\nsupport alpine linux ping","epoch":1636046327,"epoch_utc":null},{"commit":"7fa5391b6613e62689c624041e03f9750c9c7972","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 4 10:13:44 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Nov 4 10:13:44 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_ping.py"],"file_stats":[{"name":"tests/test_ping.py","lines_changed":2}]},"message":"change alpine ping6 to ping","epoch":1636046024,"epoch_utc":null},{"commit":"9b53ba5714819ff760f2d4546f5d2ee4d521c080","author":"shaik","author_email":"shai.kustin@torq.io","date":"Thu Nov 4 13:42:48 2021 +0200","commit_by":"shaik","commit_by_email":"shai.kustin@torq.io","commit_by_date":"Thu Nov 4 13:42:48 2021 +0200","stats":{"files_changed":6,"insertions":45,"deletions":1,"files":["jc/parsers/ping.py",".../fixtures/alpine-linux-3.13/ping-hostname.json","tests/fixtures/alpine-linux-3.13/ping-hostname.out","tests/fixtures/alpine-linux-3.13/ping-ip.json","tests/fixtures/alpine-linux-3.13/ping-ip.out","tests/test_ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":2},{"name":".../fixtures/alpine-linux-3.13/ping-hostname.json","lines_changed":1},{"name":"tests/fixtures/alpine-linux-3.13/ping-hostname.out","lines_changed":9},{"name":"tests/fixtures/alpine-linux-3.13/ping-ip.json","lines_changed":1},{"name":"tests/fixtures/alpine-linux-3.13/ping-ip.out","lines_changed":6},{"name":"tests/test_ping.py","lines_changed":27}]},"message":"support alpine linux ping","epoch":1636058568,"epoch_utc":null},{"commit":"b59e38cfd2c8a7f5868e05d5562557b1c27e5e56","merge":"30cff5f 5ba22da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 30 14:02:25 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sat Oct 30 14:02:25 2021 -0700","message":"Merge pull request #176 from kellyjonbrazil/dev\n\nDev v1.17.1","epoch":1635627745,"epoch_utc":null},{"commit":"5ba22dae597b9d154ca0a82f71cfbd8d8a6325db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 30 13:57:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 30 13:57:36 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2}]},"message":"add JSON lines info","epoch":1635627456,"epoch_utc":null},{"commit":"4232e523acc523e510b4881d2a57a95b88ec8c8b","merge":"bee80b3 30cff5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 30 13:49:45 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sat Oct 30 13:49:45 2021 -0700","message":"Merge branch 'master' into dev","epoch":1635626985,"epoch_utc":null},{"commit":"bee80b35d2b8c15e6233f2798e9c02a11e9e1e9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 30 13:47:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 30 13:47:21 2021 -0700","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["CHANGELOG","docs/parsers/csv_s.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":8},{"name":"man/jc.1","lines_changed":2}]},"message":"update for version bump","epoch":1635626841,"epoch_utc":null},{"commit":"c32395f6950d6294770ee93e8bf4d79c7d275ac3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 27 12:54:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 27 12:54:20 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":2}]},"message":"linting","epoch":1635364460,"epoch_utc":null},{"commit":"735c5e1078cc27b5cba03b8ebbae15aeca6b8fbd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 12:26:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 26 12:26:23 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["tests/test_csv_s.py"],"file_stats":[{"name":"tests/test_csv_s.py","lines_changed":5}]},"message":"update comments for ParseError test: https://bugs.python.org/issue45617","epoch":1635276383,"epoch_utc":null},{"commit":"d09c94b292ca3beec92a00f8a51b7259dd30a1e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 12:24:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 26 12:24:49 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add python 3.10 testing info","epoch":1635276289,"epoch_utc":null},{"commit":"4d04866f48f72b9ea0d213dc1533729d3b68a503","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 12:24:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 26 12:24:37 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":1}]},"message":"add python bug https://bugs.python.org/issue45617 info","epoch":1635276277,"epoch_utc":null},{"commit":"a2d90f4dfcdc2cb00c6c0fa957493c95a21e256b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 10:04:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 26 10:04:39 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_csv_s.py"],"file_stats":[{"name":"tests/test_csv_s.py","lines_changed":2}]},"message":"force test","epoch":1635267879,"epoch_utc":null},{"commit":"93a5002c8b530bd6f5f81e5d8595cde1f836ae41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 10:01:02 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Oct 26 10:01:02 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"fix 3.10.0 version number","epoch":1635267662,"epoch_utc":null},{"commit":"23bf5227a4c39ea017e55fc21150331e1af6fdb7","merge":"77c96fa 3f5a1f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 07:44:04 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 26 07:44:04 2021 -0700","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev","epoch":1635259444,"epoch_utc":null},{"commit":"77c96fa2a96148221bde7d2274e0dfb5386a166f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 07:43:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 26 07:43:47 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["tests/test_csv_s.py"],"file_stats":[{"name":"tests/test_csv_s.py","lines_changed":3}]},"message":"try tests on python 3.10","epoch":1635259427,"epoch_utc":null},{"commit":"3f5a1f015e9c0807e227b9f7300592e25502e014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 07:42:37 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Oct 26 07:42:37 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"add python 3.10","epoch":1635259357,"epoch_utc":null},{"commit":"b280c4fc18e60a85ab212b09aa5bf3a05a0eceff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 07:36:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 26 07:36:44 2021 -0700","stats":{"files_changed":2,"insertions":11,"deletions":19,"files":[".../fixtures/generic/csv-insurance-streaming.json","tests/test_csv_s.py"],"file_stats":[{"name":".../fixtures/generic/csv-insurance-streaming.json","lines_changed":1},{"name":"tests/test_csv_s.py","lines_changed":29}]},"message":"add ParseError test to streaming csv parser","epoch":1635259004,"epoch_utc":null},{"commit":"3ab9b43a2eebf535be98c94810ac474bf32ec515","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 07:36:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 26 07:36:23 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":14}]},"message":"raise ParseError on newline bug","epoch":1635258983,"epoch_utc":null},{"commit":"46f568414a5c8d2f135486e86d0ada48cfcefeb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 25 11:35:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 25 11:35:01 2021 -0700","stats":{"files_changed":3,"insertions":96,"deletions":89,"files":["tests/test_ls_s.py","tests/test_ping_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"tests/test_ls_s.py","lines_changed":26},{"name":"tests/test_ping_s.py","lines_changed":138},{"name":"tests/test_vmstat_s.py","lines_changed":21}]},"message":"change streaming parser test names","epoch":1635186901,"epoch_utc":null},{"commit":"cba2fd299fff09a551b780e064a6e22bdf7e539a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 25 11:03:32 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 25 11:03:32 2021 -0700","stats":{"files_changed":9,"insertions":75,"deletions":61,"files":[".../generic/csv-10k-sales-records-streaming.json","tests/fixtures/generic/csv-deniro-streaming.json","tests/fixtures/generic/csv-example-streaming.json","tests/fixtures/generic/csv-flyrna-streaming.json","tests/fixtures/generic/csv-flyrna2-streaming.json",".../fixtures/generic/csv-homes-pipe-streaming.json","tests/fixtures/generic/csv-homes-streaming.json",".../fixtures/generic/csv-insurance-streaming.json","tests/test_csv_s.py"],"file_stats":[{"name":".../generic/csv-10k-sales-records-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-deniro-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-example-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna2-streaming.json","lines_changed":1},{"name":".../fixtures/generic/csv-homes-pipe-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-homes-streaming.json","lines_changed":1},{"name":".../fixtures/generic/csv-insurance-streaming.json","lines_changed":1},{"name":"tests/test_csv_s.py","lines_changed":128}]},"message":"add tests","epoch":1635185012,"epoch_utc":null},{"commit":"1e6e44f656f1bbb277eb38fb485f7b48e3b9e40b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 25 11:03:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 25 11:03:21 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":5}]},"message":"fix for piping data with non-platform newlines (e.g. windows csv files on unix)","epoch":1635185001,"epoch_utc":null},{"commit":"acac0399946d9781193e9350dd7109f1dd3999fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 25 10:06:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 25 10:06:01 2021 -0700","stats":{"files_changed":3,"insertions":149,"deletions":0,"files":["tests/fixtures/generic/csv-biostats-streaming.json","tests/fixtures/generic/csv-cities-streaming.json","tests/test_csv_s.py"],"file_stats":[{"name":"tests/fixtures/generic/csv-biostats-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-cities-streaming.json","lines_changed":1},{"name":"tests/test_csv_s.py","lines_changed":147}]},"message":"working tests","epoch":1635181561,"epoch_utc":null},{"commit":"50a3b340164b3139f04f67a2bee16e5343c8a2da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 25 10:05:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 25 10:05:39 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":8,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":13}]},"message":"optimizations and use iter() so we can exhaust data coming from list objects","epoch":1635181539,"epoch_utc":null},{"commit":"b45396070cf28fa36ecb44acd7be3e3bb81a712d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 24 13:14:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Oct 24 13:14:05 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_vmstat_s.py"],"file_stats":[{"name":"tests/test_vmstat_s.py","lines_changed":2}]},"message":"update comment","epoch":1635106445,"epoch_utc":null},{"commit":"218b9aec8ac397e26e6cd4ff407f3d10ef88ea9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 24 13:10:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Oct 24 13:10:47 2021 -0700","stats":{"files_changed":4,"insertions":87,"deletions":48,"files":["README.md","docs/parsers/csv_s.md","jc/parsers/csv_s.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/csv_s.md","lines_changed":75},{"name":"jc/parsers/csv_s.py","lines_changed":52},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update for streaming CSV parser","epoch":1635106247,"epoch_utc":null},{"commit":"2b887debc647bd533040e392465967d12869cb02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 24 12:24:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Oct 24 12:24:44 2021 -0700","stats":{"files_changed":4,"insertions":10172,"deletions":1,"files":["CHANGELOG","jc/cli.py","jc/parsers/csv_s.py","tests/fixtures/generic/csv-10k-sales-records.csv"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/csv_s.py","lines_changed":168},{"name":"tests/fixtures/generic/csv-10k-sales-records.csv","lines_changed":10001}]},"message":"add csv streaming parser","epoch":1635103484,"epoch_utc":null},{"commit":"0313e3f8ca0e22e1575192d765d5afedf48e94df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 24 11:21:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Oct 24 11:21:47 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":6,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":15}]},"message":"linting","epoch":1635099707,"epoch_utc":null},{"commit":"1669e6e20c3af3d28968558b76d0901a56775ac0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 24 10:58:13 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Oct 24 10:58:13 2021 -0700","stats":{"files_changed":1,"insertions":23,"deletions":28,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":51}]},"message":"linting","epoch":1635098293,"epoch_utc":null},{"commit":"ef6de75dda90c7221d53e0e0a942f0cac2247354","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 13:11:22 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 13:11:22 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":4}]},"message":"add vmstat timestamp tests to utils","epoch":1635019882,"epoch_utc":null},{"commit":"a6bcec425a3f44ba3c7cd06b5ebaf522b66df109","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:55:14 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 12:55:14 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":2}]},"message":"comment update","epoch":1635018914,"epoch_utc":null},{"commit":"596ad9a64d002ced212b08512126e52707fe73d2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:47:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 12:47:44 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":2}]},"message":"update comment","epoch":1635018464,"epoch_utc":null},{"commit":"7a91c93319f75c37ba6bf268d8270947f0bf8b22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:40:24 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 12:40:24 2021 -0700","stats":{"files_changed":1,"insertions":122,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":122}]},"message":"add lsusb","epoch":1635018024,"epoch_utc":null},{"commit":"b5f7b35f89197879a9f13bd8fa5d2a0c77cc059a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:30:18 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 12:30:18 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":2}]},"message":"comment update","epoch":1635017418,"epoch_utc":null},{"commit":"2f47fb7f14c4ff0e1c835897d94ee81d14590aba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:24:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 12:24:35 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["tests/test_uname.py"],"file_stats":[{"name":"tests/test_uname.py","lines_changed":5}]},"message":"fix ParseError tests","epoch":1635017075,"epoch_utc":null},{"commit":"1b214c403657a50689f2a04892ce836dea669a1d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:24:11 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 12:24:11 2021 -0700","stats":{"files_changed":3,"insertions":30,"deletions":0,"files":["jc/parsers/lsusb.py","tests/fixtures/generic/lsusb-t.out","tests/test_lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":5},{"name":"tests/fixtures/generic/lsusb-t.out","lines_changed":15},{"name":"tests/test_lsusb.py","lines_changed":10}]},"message":"raise ParseError if -t option is detected. add test","epoch":1635017051,"epoch_utc":null},{"commit":"8f94f8acc6bb53bbb19ba150551c7df2183a8863","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 11:56:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 11:56:12 2021 -0700","stats":{"files_changed":11,"insertions":384,"deletions":3,"files":["README.md","docs/parsers/file.md","docs/parsers/lsusb.md","docs/parsers/uname.md","man/jc.1","tests/fixtures/centos-7.7/lsusb-v-single.json","tests/fixtures/centos-7.7/lsusb-v.json","tests/fixtures/centos-7.7/lsusb.json","tests/fixtures/generic/lsusb-test-attributes.json","tests/fixtures/generic/lsusb-test-attributes2.json","tests/test_lsusb.py"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":288},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"man/jc.1","lines_changed":7},{"name":"tests/fixtures/centos-7.7/lsusb-v-single.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsusb-v.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsusb.json","lines_changed":1},{"name":"tests/fixtures/generic/lsusb-test-attributes.json","lines_changed":1},{"name":"tests/fixtures/generic/lsusb-test-attributes2.json","lines_changed":1},{"name":"tests/test_lsusb.py","lines_changed":82}]},"message":"add tests and update docs","epoch":1635015372,"epoch_utc":null},{"commit":"3a2a69cfa55e2f40d7536d923170a5cfc986998e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 11:39:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 11:39:08 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":4}]},"message":"formatting","epoch":1635014348,"epoch_utc":null},{"commit":"f599c659881248b79c6dbc86d85a61311c9d3434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 11:08:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 11:08:26 2021 -0700","stats":{"files_changed":2,"insertions":464,"deletions":0,"files":["tests/fixtures/generic/lsusb-test-attributes.out","tests/fixtures/generic/lsusb-test-attributes2.out"],"file_stats":[{"name":"tests/fixtures/generic/lsusb-test-attributes.out","lines_changed":116},{"name":"tests/fixtures/generic/lsusb-test-attributes2.out","lines_changed":348}]},"message":"add stress test examples","epoch":1635012506,"epoch_utc":null},{"commit":"ad12849fd9fc2177afb30740acc63cf284dc394b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 11:08:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 23 11:08:05 2021 -0700","stats":{"files_changed":1,"insertions":138,"deletions":26,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":164}]},"message":"update docs example and","epoch":1635012485,"epoch_utc":null},{"commit":"f36b3789e8df6673207d6c2d3d0796acfdfe011d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:39:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 22 15:39:02 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":4}]},"message":"formatting","epoch":1634942342,"epoch_utc":null},{"commit":"6d18c0ba61cd188dbff736f1be47b7362c841687","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:37:40 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 22 15:37:40 2021 -0700","stats":{"files_changed":1,"insertions":47,"deletions":47,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":94}]},"message":"change variable name last_attribute and last_attr to last_item","epoch":1634942260,"epoch_utc":null},{"commit":"17097abec9567a58b5a5f7bbed11ecfd69cbd28c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:28:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 22 15:28:44 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":6,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":8}]},"message":"formatting","epoch":1634941724,"epoch_utc":null},{"commit":"b7ddd3b285f205211394edc70b611171cf72a4c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:23:04 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 22 15:23:04 2021 -0700","stats":{"files_changed":1,"insertions":22,"deletions":22,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":44}]},"message":"change variable names","epoch":1634941384,"epoch_utc":null},{"commit":"75b23f62c9d7b33907af92964d1a6234332fbc78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:18:55 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 22 15:18:55 2021 -0700","stats":{"files_changed":1,"insertions":35,"deletions":7,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":42}]},"message":"working configuration_descriptor and device_descriptor attributes","epoch":1634941135,"epoch_utc":null},{"commit":"f88967b2a59d79e053554d1e141f71e9d2d87456","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:02:04 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 22 15:02:04 2021 -0700","stats":{"files_changed":1,"insertions":126,"deletions":21,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":147}]},"message":"add attribute lists up to interface_association","epoch":1634940124,"epoch_utc":null},{"commit":"ba2846664b35b2e94aa905431c55c029b24a64e3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 13:40:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 22 13:40:01 2021 -0700","stats":{"files_changed":1,"insertions":22,"deletions":2,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":24}]},"message":"edpoint_descriptors attributes working","epoch":1634935201,"epoch_utc":null},{"commit":"10dba37ca2624e05eff246ef49df8ebd3f275d86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 12:49:57 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 22 12:49:57 2021 -0700","stats":{"files_changed":1,"insertions":28,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":29}]},"message":"hub_descriptor attributes working","epoch":1634932197,"epoch_utc":null},{"commit":"0e6f938514965503f1d86d56c047f9f8fc03ac65","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 10:31:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 22 10:31:26 2021 -0700","stats":{"files_changed":1,"insertions":36,"deletions":45,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":81}]},"message":"working hub_port_status section","epoch":1634923886,"epoch_utc":null},{"commit":"159d87c1126f4d79d5e34837bc2c353a5445803b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 07:14:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 22 07:14:21 2021 -0700","stats":{"files_changed":3,"insertions":18,"deletions":7,"files":["jc/parsers/uname.py","tests/fixtures/centos-7.7/uname.out","tests/test_uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":11},{"name":"tests/fixtures/centos-7.7/uname.out","lines_changed":1},{"name":"tests/test_uname.py","lines_changed":13}]},"message":"add length guard and test for uname with no -a on linux","epoch":1634912061,"epoch_utc":null},{"commit":"9e7b1621cf232e9859bdf018737e536820f380a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 21 16:59:28 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 21 16:59:28 2021 -0700","stats":{"files_changed":1,"insertions":18,"deletions":18,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":36}]},"message":"device_status working","epoch":1634860768,"epoch_utc":null},{"commit":"2057817ef8fec85b2a978b682e7fe8bc16def828","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 20 15:59:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 20 15:59:27 2021 -0700","stats":{"files_changed":11,"insertions":89,"deletions":0,"files":["tests/fixtures/debian10/uname-a.json","tests/fixtures/debian10/uname-a.out","tests/fixtures/freebsd12/uname-a.json","tests/fixtures/freebsd12/uname-a.out","tests/fixtures/freebsd12/uname-a2.json","tests/fixtures/freebsd12/uname-a2.out","tests/fixtures/generic/uname-a-different-proc.json","tests/fixtures/generic/uname-a-different-proc.out","tests/fixtures/generic/uname-a.json","tests/fixtures/generic/uname-a.out","tests/test_uname.py"],"file_stats":[{"name":"tests/fixtures/debian10/uname-a.json","lines_changed":10},{"name":"tests/fixtures/debian10/uname-a.out","lines_changed":2},{"name":"tests/fixtures/freebsd12/uname-a.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/uname-a.out","lines_changed":2},{"name":"tests/fixtures/freebsd12/uname-a2.json","lines_changed":7},{"name":"tests/fixtures/freebsd12/uname-a2.out","lines_changed":2},{"name":"tests/fixtures/generic/uname-a-different-proc.json","lines_changed":1},{"name":"tests/fixtures/generic/uname-a-different-proc.out","lines_changed":1},{"name":"tests/fixtures/generic/uname-a.json","lines_changed":1},{"name":"tests/fixtures/generic/uname-a.out","lines_changed":2},{"name":"tests/test_uname.py","lines_changed":60}]},"message":"add uname tests","epoch":1634770767,"epoch_utc":null},{"commit":"a1eabad2d37bb0d0e9407edf7305e223eba67da2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 20 15:58:43 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 20 15:58:43 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":6}]},"message":"add comments","epoch":1634770723,"epoch_utc":null},{"commit":"92bf2b1ca2a172d3977d6e3c36b5ca1a8c2bab63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 20 15:27:14 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 20 15:27:14 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":20,"files":["CHANGELOG","jc/parsers/uname.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":26}]},"message":"simplify fixup logic for uname","epoch":1634768834,"epoch_utc":null},{"commit":"2b2123a4ba9b77d2089d367fe85dcb5d2857a295","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 20 07:34:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 20 07:34:37 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","jc/parsers/uname.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/parsers/uname.py","lines_changed":4}]},"message":"add FreeBSD support","epoch":1634740477,"epoch_utc":null},{"commit":"908b2f9200ddcce4beb531a3c90908786b6a5b02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 19 16:16:25 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 19 16:16:25 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"add items","epoch":1634685385,"epoch_utc":null},{"commit":"deff0c7bfdf942b8d7e7bd140219e08bf80a50cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 19 16:05:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 19 16:05:10 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":5,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":6}]},"message":"remove print debug","epoch":1634684710,"epoch_utc":null},{"commit":"7cd01efa64029775042a2c145997ce30ef6b4f6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 19 16:01:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 19 16:01:56 2021 -0700","stats":{"files_changed":1,"insertions":25,"deletions":1,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":26}]},"message":"fixup for cases where the 'process' and/or 'machine' fields are blank on linux","epoch":1634684516,"epoch_utc":null},{"commit":"2dbe56456bbea2bdfce7eacbf8b9f10a1b249f55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 15 11:43:15 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 15 11:43:15 2021 -0700","stats":{"files_changed":1,"insertions":49,"deletions":39,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":88}]},"message":"add nested_dict. start work on hub_port_status and device_status","epoch":1634323395,"epoch_utc":null},{"commit":"6078a411ef612be8bad012aa404f34ebd74a1fd7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 13 11:07:09 2021 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 13 11:07:09 2021 -0600","stats":{"files_changed":1,"insertions":79,"deletions":4,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":83}]},"message":"add initial schema doc","epoch":1634148429,"epoch_utc":null},{"commit":"4a3656562f161a51f5cb6f0e9ccd271859b78d62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 13 07:26:31 2021 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 13 07:26:31 2021 -0600","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":6}]},"message":"del null keys","epoch":1634135191,"epoch_utc":null},{"commit":"ba75989a24839907723ed7c3d7a497473d489a34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 22:51:45 2021 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 12 22:51:45 2021 -0600","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":10}]},"message":"update comments","epoch":1634104305,"epoch_utc":null},{"commit":"9e9e2c362894f0072ab839565829881d750c8912","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 22:40:39 2021 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 12 22:40:39 2021 -0600","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":4}]},"message":"move state instantiation before has_data test","epoch":1634103639,"epoch_utc":null},{"commit":"9a2a8c6b61a46a9bfb5a4492b86774a4a78672ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 22:38:03 2021 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 12 22:38:03 2021 -0600","stats":{"files_changed":1,"insertions":20,"deletions":52,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":72}]},"message":"shorten set_sections","epoch":1634103483,"epoch_utc":null},{"commit":"dae42ef1619441637672d634f9e5d7ab26115f09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 15:55:09 2021 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 12 15:55:09 2021 -0600","stats":{"files_changed":1,"insertions":18,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":19}]},"message":"add hub_port_status and device_status","epoch":1634079309,"epoch_utc":null},{"commit":"931f2cab78bda180443535c04b532d04c6e88dd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 12:38:40 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 12 12:38:40 2021 -0700","stats":{"files_changed":1,"insertions":14,"deletions":11,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":25}]},"message":"add hub_descriptor","epoch":1634067520,"epoch_utc":null},{"commit":"72b061bed4453686d264ccf8977cba6c2a4794ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 12:29:59 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 12 12:29:59 2021 -0700","stats":{"files_changed":1,"insertions":32,"deletions":8,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":40}]},"message":"add endpoint_descriptors","epoch":1634066999,"epoch_utc":null},{"commit":"29a7c73990d9620b15a4010d17fc9a9a859f44b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 11:24:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 12 11:24:49 2021 -0700","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":16}]},"message":"add hid_device_descriptor and report_descriptors","epoch":1634063089,"epoch_utc":null},{"commit":"2d1d68e3007f76d4c34ac07ae822935ab6021e79","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 09:57:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 12 09:57:47 2021 -0700","stats":{"files_changed":1,"insertions":87,"deletions":88,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":175}]},"message":"simplify populate_lists. Add CDC lists","epoch":1634057867,"epoch_utc":null},{"commit":"c5c1e170d1f502de5c76e9e481a23b26ffcaf237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 11 21:33:18 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 11 21:33:18 2021 -0700","stats":{"files_changed":1,"insertions":111,"deletions":76,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":187}]},"message":"interface descriptors working","epoch":1634013198,"epoch_utc":null},{"commit":"9c1bb66452838e704ef2277f313bb51a42dc03b9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 11 07:48:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 11 07:48:23 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":18}]},"message":"fix remove _state field during schema_populate","epoch":1633963703,"epoch_utc":null},{"commit":"a4f3306bae90fbc807fdd9ff2ce71e25d36a663f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 10 22:18:13 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Oct 10 22:18:13 2021 -0700","stats":{"files_changed":1,"insertions":69,"deletions":28,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":97}]},"message":"initial schema build. need to figure out why deleting _state from output_line causes exceptions","epoch":1633929493,"epoch_utc":null},{"commit":"1bc638b6ee7a820406ba4b84d3408f7cd4fe779d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 10 10:03:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Oct 10 10:03:39 2021 -0700","stats":{"files_changed":1,"insertions":36,"deletions":32,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":68}]},"message":"add bus_list and add all device_list data to the list","epoch":1633885419,"epoch_utc":null},{"commit":"9ad0cd9dae8822235c37159541ce72471eb4263e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 9 20:05:55 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 9 20:05:55 2021 -0700","stats":{"files_changed":1,"insertions":116,"deletions":211,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":327}]},"message":"now storing state within the objects to make building the schema (later) easier.","epoch":1633835155,"epoch_utc":null},{"commit":"6d4a4691276d8659253b2ac8f8bdbd71a1fece7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 6 22:03:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 6 22:03:16 2021 -0700","stats":{"files_changed":1,"insertions":356,"deletions":333,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":689}]},"message":"use class for state","epoch":1633582996,"epoch_utc":null},{"commit":"ed6997e3ff2e575a6d4daa7d7a2cbe7dddacdd4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 5 16:47:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 5 16:47:23 2021 -0700","stats":{"files_changed":2,"insertions":170,"deletions":34,"files":["jc/parsers/lsusb.py","tests/fixtures/centos-7.7/lsusb-v-single.out"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":104},{"name":"tests/fixtures/centos-7.7/lsusb-v-single.out","lines_changed":100}]},"message":"add interface_association section","epoch":1633477643,"epoch_utc":null},{"commit":"eb788fca6e25eea1fa8a43b22360c852ecf5af35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 5 14:59:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 5 14:59:49 2021 -0700","stats":{"files_changed":4,"insertions":919,"deletions":0,"files":["jc/cli.py","jc/parsers/lsusb.py","tests/fixtures/centos-7.7/lsusb-v.out","tests/fixtures/centos-7.7/lsusb.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/lsusb.py","lines_changed":404},{"name":"tests/fixtures/centos-7.7/lsusb-v.out","lines_changed":509},{"name":"tests/fixtures/centos-7.7/lsusb.out","lines_changed":5}]},"message":"somewhat working lsusb parser. needs a lot more TLC","epoch":1633471189,"epoch_utc":null},{"commit":"9186f5f37739012b8c04c776310a20ef55b1469f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 2 14:53:07 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 2 14:53:07 2021 -0700","stats":{"files_changed":7,"insertions":99,"deletions":4,"files":["CHANGELOG","jc/__init__.py","jc/parsers/file.py","setup.py","tests/fixtures/osx-10.14.6/file3.json","tests/fixtures/osx-10.14.6/file3.out","tests/test_file.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":11},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/file3.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/file3.out","lines_changed":72},{"name":"tests/test_file.py","lines_changed":12}]},"message":"fix file parser for gzip cases (has ': ' in the description, which is the delimiter)","epoch":1633211587,"epoch_utc":null},{"commit":"30cff5f28140a5b20a617c8145c13e43b7b6685b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 27 10:35:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 27 10:35:08 2021 -0700","stats":{"files_changed":8,"insertions":17,"deletions":3,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":4},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":4},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"add note that the streaming parser outputs JSON Lines","epoch":1632764108,"epoch_utc":null},{"commit":"b724e0969a0d6b22bed0c77eb8d629381179ea3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 20:22:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 26 20:22:16 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2}]},"message":"-qq instead of -q","epoch":1632712936,"epoch_utc":null},{"commit":"a62c49e8715873b068a96da5021ea24a783acd6b","merge":"77dcbc5 9b160f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 16:35:29 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Sep 26 16:35:29 2021 -0700","message":"Merge pull request #172 from kellyjonbrazil/master\n\nsync master to dev","epoch":1632699329,"epoch_utc":null},{"commit":"9b160f6279bbbf0c15413c98922eef137ba2f3f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 16:29:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 26 16:29:36 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]},"message":"link update","epoch":1632698976,"epoch_utc":null},{"commit":"338a4e2612f70bb3e2af31f61a7db75f647293fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 16:27:15 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 26 16:27:15 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]},"message":"formatting","epoch":1632698835,"epoch_utc":null},{"commit":"0140688750be61dd752059ee66734ab1c7a8f30e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 16:24:18 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 26 16:24:18 2021 -0700","stats":{"files_changed":6,"insertions":8,"deletions":4,"files":["README.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"link updates","epoch":1632698658,"epoch_utc":null},{"commit":"73e5ea98c1ca2b9299085e3832791162eca3b9ff","merge":"528aac7 77dcbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 14:55:18 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Sep 26 14:55:18 2021 -0700","message":"Merge pull request #170 from kellyjonbrazil/dev\n\njc v1.17.0 from dev","epoch":1632693318,"epoch_utc":null},{"commit":"77dcbc544da271edab5de5ad209117e98c846f9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 14:50:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 26 14:50:02 2021 -0700","stats":{"files_changed":3,"insertions":2,"deletions":3,"files":["CHANGELOG","jc/__init__.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"final doc update","epoch":1632693002,"epoch_utc":null},{"commit":"c7bcb0947ae32acc9cdba7a6975d2f2557f10a39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 13:20:42 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 26 13:20:42 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":4}]},"message":"indent subsequent error and warning lines","epoch":1632687642,"epoch_utc":null},{"commit":"5cd3f7f71d38b560a88dd6057e9c7a94991a3d71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 13:15:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 26 13:15:35 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":6}]},"message":"Add example to raise ParseError if there is no output data to yield","epoch":1632687335,"epoch_utc":null},{"commit":"5044388ab2e8d7d8b427fd51b0ab875611bd127f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 13:04:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 26 13:04:27 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":3,"files":["jc/parsers/vmstat_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":6},{"name":"tests/test_vmstat_s.py","lines_changed":3}]},"message":"raise if line data is unrecognized","epoch":1632686667,"epoch_utc":null},{"commit":"ee075db59819d80e4dcb60ddbd9cfe2fd529dfe9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 12:00:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 26 12:00:30 2021 -0700","stats":{"files_changed":4,"insertions":5,"deletions":7,"files":["jc/cli.py","jc/parsers/foo_s.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":5},{"name":"jc/parsers/vmstat_s.py","lines_changed":3}]},"message":"linting","epoch":1632682830,"epoch_utc":null},{"commit":"9904e0be61e7c81b907bf3770f111346daeff481","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Sep 25 08:28:57 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Sep 25 08:28:57 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":2},{"name":"jc/utils.py","lines_changed":2}]},"message":"formatting","epoch":1632583737,"epoch_utc":null},{"commit":"31b69b3242eeca2c02f87c31d58193dd3f06fe49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Sep 25 08:23:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Sep 25 08:23:46 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":6},{"name":"jc/utils.py","lines_changed":6}]},"message":"formatting","epoch":1632583426,"epoch_utc":null},{"commit":"e6a80fea3228122dd84e17672c835c0460ad1342","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Sep 25 08:19:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Sep 25 08:19:34 2021 -0700","stats":{"files_changed":3,"insertions":7,"deletions":7,"files":["docs/utils.md","jc/utils.py","man/jc.1"],"file_stats":[{"name":"docs/utils.md","lines_changed":6},{"name":"jc/utils.py","lines_changed":6},{"name":"man/jc.1","lines_changed":2}]},"message":"formatting","epoch":1632583174,"epoch_utc":null},{"commit":"d6aec00e038d1ecfe43c13a6909d50630455b372","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 16:45:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 24 16:45:38 2021 -0700","stats":{"files_changed":4,"insertions":27,"deletions":1,"files":["tests/fixtures/ubuntu-18.04/vmstat-1-long-streaming.json","tests/fixtures/ubuntu-18.04/vmstat-1-long.json","tests/test_vmstat.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"tests/fixtures/ubuntu-18.04/vmstat-1-long-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/vmstat-1-long.json","lines_changed":1},{"name":"tests/test_vmstat.py","lines_changed":12},{"name":"tests/test_vmstat_s.py","lines_changed":14}]},"message":"add vmstat-1-long tests","epoch":1632527138,"epoch_utc":null},{"commit":"4aa7d81e11ea7fcfbb5c9d74337cde617b1a0d5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 16:27:11 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 24 16:27:11 2021 -0700","stats":{"files_changed":3,"insertions":50,"deletions":2,"files":["jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","tests/fixtures/ubuntu-18.04/vmstat-1-long.out"],"file_stats":[{"name":"jc/parsers/vmstat.py","lines_changed":3},{"name":"jc/parsers/vmstat_s.py","lines_changed":7},{"name":"tests/fixtures/ubuntu-18.04/vmstat-1-long.out","lines_changed":42}]},"message":"ignore re-printed header rows in output","epoch":1632526031,"epoch_utc":null},{"commit":"48cdabc3b0862d6291e1ec59ab385e0e146c31eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 10:11:15 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 24 10:11:15 2021 -0700","stats":{"files_changed":4,"insertions":16,"deletions":0,"files":["docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/vmstat.md","lines_changed":4},{"name":"docs/parsers/vmstat_s.md","lines_changed":4},{"name":"jc/parsers/vmstat.py","lines_changed":4},{"name":"jc/parsers/vmstat_s.py","lines_changed":4}]},"message":"document timestamps","epoch":1632503475,"epoch_utc":null},{"commit":"a1791ef5479749692c79bbe98fc7687d70cd6cda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 10:01:13 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 24 10:01:13 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2}]},"message":"linting","epoch":1632502873,"epoch_utc":null},{"commit":"7bc87f6c2d4cfcfa656a1c1b8973a4c0414c85d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 09:24:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 24 09:24:30 2021 -0700","stats":{"files_changed":8,"insertions":8,"deletions":8,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"change _meta to _jc_meta","epoch":1632500670,"epoch_utc":null},{"commit":"bbed9e274b8252ba0518140fe7fc97029310771f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 09:16:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 24 09:16:44 2021 -0700","stats":{"files_changed":1,"insertions":154,"deletions":159,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":313}]},"message":"linting","epoch":1632500204,"epoch_utc":null},{"commit":"486282b9856f5e56cf43ee1399d8e7cb78353b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 08:52:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 24 08:52:39 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":10}]},"message":"linting","epoch":1632498759,"epoch_utc":null},{"commit":"a4d45b653f794033978940da14910f5d607a8254","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 08:49:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 24 08:49:37 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["jc/parsers/foo_s.py","jc/parsers/vmstat.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":8}]},"message":"linting","epoch":1632498577,"epoch_utc":null},{"commit":"22e151b01c0f97c141d912c9646e46df0320d622","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 08:43:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 24 08:43:09 2021 -0700","stats":{"files_changed":2,"insertions":56,"deletions":60,"files":["jc/cli.py","jc/utils.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":88},{"name":"jc/utils.py","lines_changed":28}]},"message":"linting","epoch":1632498189,"epoch_utc":null},{"commit":"7a4ebcd1ecdb4929aae70e44b4f9b6b5ab52b393","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 21:22:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 21:22:01 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":4}]},"message":"language hints","epoch":1632457321,"epoch_utc":null},{"commit":"651cbfe02fbb354c4caf8e0d022655642e7caed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 21:20:25 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 21:20:25 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"add streaming foo parser","epoch":1632457225,"epoch_utc":null},{"commit":"8c3e764516e1c28961b09380b638a57ce98b1261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 21:17:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 21:17:17 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add streaming parser to contrib guidelines","epoch":1632457037,"epoch_utc":null},{"commit":"b4e75da7e3f23502723ce8b2a7261b376f296864","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 21:14:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 21:14:47 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"templates/readme_template","lines_changed":4}]},"message":"formatting","epoch":1632456887,"epoch_utc":null},{"commit":"37223f086cabc8db5962415bd161fed151dafb9d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 21:13:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 21:13:21 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":5},{"name":"templates/readme_template","lines_changed":5}]},"message":"formatting","epoch":1632456801,"epoch_utc":null},{"commit":"a404033735c2c8075a8e08194197eae59db70afd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 20:54:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 20:54:44 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add error and warning message wrap info","epoch":1632455684,"epoch_utc":null},{"commit":"b7433ed085c0ba22ea0d49330871a651a8d83fb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 20:53:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 20:53:31 2021 -0700","stats":{"files_changed":6,"insertions":80,"deletions":41,"files":["docs/utils.md","jc/cli.py","jc/parsers/file.py","jc/parsers/ls.py","jc/parsers/traceroute.py","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":16},{"name":"jc/cli.py","lines_changed":39},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":60}]},"message":"auto wrap warning and error messages","epoch":1632455611,"epoch_utc":null},{"commit":"224d3d65ada4216e28e142d411b0c2c3358517b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 13:15:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 13:15:38 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"Add exception class name to error message","epoch":1632428138,"epoch_utc":null},{"commit":"a349fb0bdabaf74503831f22c4efbd02254f809d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 13:08:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 13:08:31 2021 -0700","stats":{"files_changed":3,"insertions":10,"deletions":8,"files":["README.md","docs/utils.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"docs/utils.md","lines_changed":6},{"name":"man/jc.1","lines_changed":6}]},"message":"change _meta to _jc_meta","epoch":1632427711,"epoch_utc":null},{"commit":"e7ddcfb83fb295034db44ade407476ff3a962cd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 13:07:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 13:07:10 2021 -0700","stats":{"files_changed":5,"insertions":14,"deletions":12,"files":["jc/utils.py","templates/manpage_template","templates/readme_template",".../centos-7.7/ping-ip-O-streaming-ignore-exceptions.json","tests/test_ping_s.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":10},{"name":"templates/manpage_template","lines_changed":6},{"name":"templates/readme_template","lines_changed":6},{"name":".../centos-7.7/ping-ip-O-streaming-ignore-exceptions.json","lines_changed":2},{"name":"tests/test_ping_s.py","lines_changed":2}]},"message":"change _meta to _jc_meta","epoch":1632427630,"epoch_utc":null},{"commit":"abd20dfe3662f65373ac582c70aa740e53b52f68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 12:58:24 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 12:58:24 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"templates/manpage_template","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting","epoch":1632427104,"epoch_utc":null},{"commit":"dc1fd3ef1be41aee349b159059f1febff76f6caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 11:54:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 11:54:58 2021 -0700","stats":{"files_changed":4,"insertions":12,"deletions":12,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"man/jc.1","lines_changed":6},{"name":"templates/manpage_template","lines_changed":6},{"name":"templates/readme_template","lines_changed":6}]},"message":"fix -qq docs","epoch":1632423298,"epoch_utc":null},{"commit":"98a7686db46fbd3ed98382867976249f307d0015","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 11:48:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 11:48:39 2021 -0700","stats":{"files_changed":18,"insertions":160,"deletions":152,"files":["README.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","docs/utils.md","jc/cli.py","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","jc/utils.py","man/jc.1","templates/manpage_template","templates/readme_template","... => ping-ip-O-streaming-ignore-exceptions.json}","tests/test_ls_s.py","tests/test_ping_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":9},{"name":"docs/parsers/ping_s.md","lines_changed":9},{"name":"docs/parsers/vmstat_s.md","lines_changed":9},{"name":"docs/utils.md","lines_changed":6},{"name":"jc/cli.py","lines_changed":23},{"name":"jc/parsers/foo_s.py","lines_changed":13},{"name":"jc/parsers/ls_s.py","lines_changed":13},{"name":"jc/parsers/ping_s.py","lines_changed":13},{"name":"jc/parsers/vmstat_s.py","lines_changed":13},{"name":"jc/utils.py","lines_changed":12},{"name":"man/jc.1","lines_changed":4},{"name":"templates/manpage_template","lines_changed":4},{"name":"templates/readme_template","lines_changed":2},{"name":"... => ping-ip-O-streaming-ignore-exceptions.json}","lines_changed":0},{"name":"tests/test_ls_s.py","lines_changed":24},{"name":"tests/test_ping_s.py","lines_changed":140},{"name":"tests/test_vmstat_s.py","lines_changed":16}]},"message":"use -qq to ignore streaming exceptions","epoch":1632422919,"epoch_utc":null},{"commit":"9c6c6c4330fc68115be012de254161f36e3a8328","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 09:04:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 09:04:37 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add next() info","epoch":1632413077,"epoch_utc":null},{"commit":"f9be5651daa891e06ad0acd8980ffc0fe51fd29d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:59:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 08:59:26 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":6,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":5},{"name":"templates/readme_template","lines_changed":5}]},"message":"add language hints","epoch":1632412766,"epoch_utc":null},{"commit":"df9835a3e62bb2b3b6ec8b55f06a25a00a799d92","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:57:14 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 08:57:14 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting","epoch":1632412634,"epoch_utc":null},{"commit":"92363be2dd633bdd3c2dd07c72ebd281d2cb4565","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:56:14 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 08:56:14 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"templates/readme_template","lines_changed":3}]},"message":"fix streaming python module example","epoch":1632412574,"epoch_utc":null},{"commit":"31b62030156f9c826fe5c7d127e9dd0ace582dd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:54:15 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 08:54:15 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"templates/readme_template","lines_changed":6}]},"message":"formatting","epoch":1632412455,"epoch_utc":null},{"commit":"18805858d685d456f9a38540bbaedbaa1a411546","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:53:25 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 08:53:25 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":4},{"name":"templates/manpage_template","lines_changed":2}]},"message":"formatting","epoch":1632412405,"epoch_utc":null},{"commit":"e676f0e20fb6e96a536c4d182b0d287cdc1ad0f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:53:14 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 23 08:53:14 2021 -0700","stats":{"files_changed":2,"insertions":36,"deletions":6,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":21},{"name":"templates/readme_template","lines_changed":21}]},"message":"add streaming parser info for python module use","epoch":1632412394,"epoch_utc":null},{"commit":"20652edefaa7705b8ba756bae3944ff362a295a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 20:11:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 20:11:26 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":7}]},"message":"update changelog","epoch":1632366686,"epoch_utc":null},{"commit":"98c29d07478093e78f53ec633f2dd08cafc3e3ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 19:54:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 19:54:12 2021 -0700","stats":{"files_changed":8,"insertions":120,"deletions":0,"files":["tests/fixtures/centos-7.7/vmstat-a.json","tests/fixtures/centos-7.7/vmstat-at-5-10.json","tests/fixtures/centos-7.7/vmstat-awt.json","tests/fixtures/centos-7.7/vmstat-d.json","tests/fixtures/centos-7.7/vmstat-dt.json","tests/fixtures/centos-7.7/vmstat-w.json","tests/fixtures/centos-7.7/vmstat.json","tests/test_vmstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/vmstat-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-at-5-10.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-awt.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-d.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-dt.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-w.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat.json","lines_changed":1},{"name":"tests/test_vmstat.py","lines_changed":113}]},"message":"add vmstat tests","epoch":1632365652,"epoch_utc":null},{"commit":"41a6311f6b3ed2cc94919d042aed51c46cdf3e2f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 19:34:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 19:34:44 2021 -0700","stats":{"files_changed":9,"insertions":132,"deletions":1,"files":["tests/fixtures/centos-7.7/vmstat-a-streaming.json",".../centos-7.7/vmstat-at-5-10-streaming.json",".../fixtures/centos-7.7/vmstat-awt-streaming.json","tests/fixtures/centos-7.7/vmstat-d-streaming.json","tests/fixtures/centos-7.7/vmstat-dt-streaming.json","tests/fixtures/centos-7.7/vmstat-streaming.json","tests/fixtures/centos-7.7/vmstat-w-streaming.json","tests/test_ping_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/vmstat-a-streaming.json","lines_changed":1},{"name":".../centos-7.7/vmstat-at-5-10-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/vmstat-awt-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-d-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-dt-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-w-streaming.json","lines_changed":1},{"name":"tests/test_ping_s.py","lines_changed":2},{"name":"tests/test_vmstat_s.py","lines_changed":124}]},"message":"add streaming parser tests","epoch":1632364484,"epoch_utc":null},{"commit":"978760ec57e04e3ec347c8764bfad015b6dddbff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 19:32:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 19:32:20 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"add exception class name to error string","epoch":1632364340,"epoch_utc":null},{"commit":"d410425537817964ceb7b61e0fdff6c03fdf8766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:43:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 14:43:26 2021 -0700","stats":{"files_changed":4,"insertions":136,"deletions":136,"files":["docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/vmstat.md","lines_changed":68},{"name":"docs/parsers/vmstat_s.md","lines_changed":68},{"name":"jc/parsers/vmstat.py","lines_changed":68},{"name":"jc/parsers/vmstat_s.py","lines_changed":68}]},"message":"replace single quotes with double quotes in doc","epoch":1632347006,"epoch_utc":null},{"commit":"6b7430329cbe1bfb95b47bcfe031906641c127e1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:38:13 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 14:38:13 2021 -0700","stats":{"files_changed":5,"insertions":269,"deletions":1,"files":["README.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat_s.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":145},{"name":"docs/parsers/vmstat_s.md","lines_changed":105},{"name":"jc/parsers/vmstat_s.py","lines_changed":6},{"name":"man/jc.1","lines_changed":12}]},"message":"doc update","epoch":1632346693,"epoch_utc":null},{"commit":"40fe0d4a6081a1233bf5c3eb51a01da1f12bc4dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:34:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 14:34:46 2021 -0700","stats":{"files_changed":1,"insertions":141,"deletions":22,"files":["jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":163}]},"message":"working parser","epoch":1632346486,"epoch_utc":null},{"commit":"365c5354a0349e470558d15243217a064e73da38","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:34:32 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 14:34:32 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/vmstat.py"],"file_stats":[{"name":"jc/parsers/vmstat.py","lines_changed":1}]},"message":"remove debug print statement","epoch":1632346472,"epoch_utc":null},{"commit":"b246a05cbb4c1c564f81b3e72cecb62edbe6ced6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:34:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 14:34:19 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"fix vmstat-s name","epoch":1632346459,"epoch_utc":null},{"commit":"9e5a7a4abb8668d043625951a05eb5733cbbd56f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:07:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 14:07:09 2021 -0700","stats":{"files_changed":7,"insertions":37,"deletions":0,"files":["tests/fixtures/centos-7.7/vmstat-a.out","tests/fixtures/centos-7.7/vmstat-at-5-10.out","tests/fixtures/centos-7.7/vmstat-awt.out","tests/fixtures/centos-7.7/vmstat-d.out","tests/fixtures/centos-7.7/vmstat-dt.out","tests/fixtures/centos-7.7/vmstat-w.out","tests/fixtures/centos-7.7/vmstat.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/vmstat-a.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/vmstat-at-5-10.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/vmstat-awt.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/vmstat-d.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/vmstat-dt.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/vmstat-w.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/vmstat.out","lines_changed":4}]},"message":"add vmstat sample output","epoch":1632344829,"epoch_utc":null},{"commit":"f266acbccafc040c375723147b8e5d7fddb1e697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:06:51 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 14:06:51 2021 -0700","stats":{"files_changed":1,"insertions":106,"deletions":14,"files":["jc/parsers/vmstat.py"],"file_stats":[{"name":"jc/parsers/vmstat.py","lines_changed":120}]},"message":"add processing logic","epoch":1632344811,"epoch_utc":null},{"commit":"4e3b471f1801f1b9006b18cae2a3d816f361262e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:06:28 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 14:06:28 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"add format for vmstat","epoch":1632344788,"epoch_utc":null},{"commit":"5e28736c2e0c951e71e6531e03a9619279d95d3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 12:08:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 12:08:20 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add vmstat and vmstat_s","epoch":1632337700,"epoch_utc":null},{"commit":"a91913a3b517ea0dbb25d6e4cc92850eb2fde5ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 12:07:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 12:07:27 2021 -0700","stats":{"files_changed":1,"insertions":106,"deletions":0,"files":["jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":106}]},"message":"streaming parser template","epoch":1632337647,"epoch_utc":null},{"commit":"90c64f0ae0d97d025adee40970d89baca79ee4ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 12:07:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 12:07:09 2021 -0700","stats":{"files_changed":1,"insertions":182,"deletions":0,"files":["jc/parsers/vmstat.py"],"file_stats":[{"name":"jc/parsers/vmstat.py","lines_changed":182}]},"message":"initial working parser","epoch":1632337629,"epoch_utc":null},{"commit":"7cc642ed1a476abda709ac9b79900a1de12e1ef7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 12:06:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 22 12:06:56 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":4}]},"message":"formatting","epoch":1632337616,"epoch_utc":null},{"commit":"809f64d35a92bb3d7380fa9d78ac1421a10b81fc","merge":"ff0fda4 a6f859a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 22:58:18 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Sep 21 22:58:18 2021 -0700","message":"Merge pull request #169 from kellyjonbrazil/streaming\n\nStreaming to dev","epoch":1632290298,"epoch_utc":null},{"commit":"a6f859a55edae50fcc185948736218404cfaa929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 22:47:48 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 22:47:48 2021 -0700","stats":{"files_changed":18,"insertions":168,"deletions":153,"files":[".../osx-10.14.6/ping-hostname-p-streaming.json",".../osx-10.14.6/ping-hostname-s-streaming.json",".../osx-10.14.6/ping-hostname-streaming.json",".../osx-10.14.6/ping-ip-dup-streaming.json",".../fixtures/osx-10.14.6/ping-ip-p-streaming.json",".../fixtures/osx-10.14.6/ping-ip-s-streaming.json","tests/fixtures/osx-10.14.6/ping-ip-streaming.json",".../osx-10.14.6/ping-ip-unreachable-streaming.json",".../osx-10.14.6/ping6-hostname-p-streaming.json",".../osx-10.14.6/ping6-hostname-s-streaming.json",".../osx-10.14.6/ping6-hostname-streaming.json",".../osx-10.14.6/ping6-ip-dup-streaming.json",".../fixtures/osx-10.14.6/ping6-ip-p-streaming.json",".../fixtures/osx-10.14.6/ping6-ip-s-streaming.json","tests/fixtures/osx-10.14.6/ping6-ip-streaming.json","tests/fixtures/pi/ping-ip-O-D-streaming.json","tests/fixtures/pi/ping-ip-O-streaming.json","tests/test_ping_s.py"],"file_stats":[{"name":".../osx-10.14.6/ping-hostname-p-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping-hostname-s-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping-hostname-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping-ip-dup-streaming.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/ping-ip-p-streaming.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/ping-ip-s-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping-ip-unreachable-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping6-hostname-p-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping6-hostname-s-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping6-hostname-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping6-ip-dup-streaming.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/ping6-ip-p-streaming.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/ping6-ip-s-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-streaming.json","lines_changed":1},{"name":"tests/fixtures/pi/ping-ip-O-D-streaming.json","lines_changed":1},{"name":"tests/fixtures/pi/ping-ip-O-streaming.json","lines_changed":1},{"name":"tests/test_ping_s.py","lines_changed":304}]},"message":"add final ping_s tests","epoch":1632289668,"epoch_utc":null},{"commit":"39ef88078f43708e470d3c1b2fd95e76b5cbeb08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 22:47:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 22:47:02 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":1}]},"message":"add destination_ip to error lines","epoch":1632289622,"epoch_utc":null},{"commit":"aeea5e8d2eab2fef3e14637f512aed7b117c4a3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 22:00:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 22:00:05 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/test_ls_s.py"],"file_stats":[{"name":"tests/test_ls_s.py","lines_changed":2}]},"message":"formatting","epoch":1632286805,"epoch_utc":null},{"commit":"1a0700bff4bdebbd9f1f92f2fc7a56c4d5ed6925","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 21:58:59 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 21:58:59 2021 -0700","stats":{"files_changed":31,"insertions":240,"deletions":213,"files":[".../fedora32/ping-hostname-O-D-p-s-streaming.json",".../fedora32/ping-hostname-O-p-streaming.json",".../fedora32/ping-hostname-O-streaming.json","tests/fixtures/fedora32/ping-ip-O-D-streaming.json","tests/fixtures/fedora32/ping-ip-O-streaming.json",".../fedora32/ping6-hostname-O-D-p-s-streaming.json",".../fedora32/ping6-hostname-O-p-streaming.json",".../fedora32/ping6-ip-O-D-p-streaming.json",".../fixtures/fedora32/ping6-ip-O-p-streaming.json",".../freebsd12/ping-hostname-p-streaming.json",".../freebsd12/ping-hostname-s-streaming.json",".../freebsd12/ping-hostname-streaming.json","tests/fixtures/freebsd12/ping-ip-p-streaming.json","tests/fixtures/freebsd12/ping-ip-s-streaming.json","tests/fixtures/freebsd12/ping-ip-streaming.json",".../freebsd12/ping6-hostname-p-streaming.json",".../freebsd12/ping6-hostname-s-streaming.json",".../freebsd12/ping6-hostname-streaming.json","tests/fixtures/freebsd12/ping6-ip-p-streaming.json","tests/fixtures/freebsd12/ping6-ip-s-streaming.json","tests/fixtures/freebsd12/ping6-ip-streaming.json",".../ping-hostname-O-D-p-s-streaming.json",".../ubuntu-18.04/ping-hostname-O-p-streaming.json",".../ubuntu-18.04/ping-hostname-O-streaming.json",".../ubuntu-18.04/ping-ip-O-D-streaming.json",".../fixtures/ubuntu-18.04/ping-ip-O-streaming.json",".../ping6-hostname-O-D-p-s-streaming.json",".../ubuntu-18.04/ping6-hostname-O-p-streaming.json",".../ubuntu-18.04/ping6-ip-O-D-p-streaming.json",".../ubuntu-18.04/ping6-ip-O-p-streaming.json","tests/test_ping_s.py"],"file_stats":[{"name":".../fedora32/ping-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../fedora32/ping-hostname-O-p-streaming.json","lines_changed":1},{"name":".../fedora32/ping-hostname-O-streaming.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-ip-O-D-streaming.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-ip-O-streaming.json","lines_changed":1},{"name":".../fedora32/ping6-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../fedora32/ping6-hostname-O-p-streaming.json","lines_changed":1},{"name":".../fedora32/ping6-ip-O-D-p-streaming.json","lines_changed":1},{"name":".../fixtures/fedora32/ping6-ip-O-p-streaming.json","lines_changed":1},{"name":".../freebsd12/ping-hostname-p-streaming.json","lines_changed":1},{"name":".../freebsd12/ping-hostname-s-streaming.json","lines_changed":1},{"name":".../freebsd12/ping-hostname-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-p-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-s-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-streaming.json","lines_changed":1},{"name":".../freebsd12/ping6-hostname-p-streaming.json","lines_changed":1},{"name":".../freebsd12/ping6-hostname-s-streaming.json","lines_changed":1},{"name":".../freebsd12/ping6-hostname-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-p-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-s-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-streaming.json","lines_changed":1},{"name":".../ping-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping-hostname-O-p-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping-hostname-O-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping-ip-O-D-streaming.json","lines_changed":1},{"name":".../fixtures/ubuntu-18.04/ping-ip-O-streaming.json","lines_changed":1},{"name":".../ping6-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-hostname-O-p-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-ip-O-D-p-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-ip-O-p-streaming.json","lines_changed":1},{"name":"tests/test_ping_s.py","lines_changed":423}]},"message":"add more ping-s tests","epoch":1632286739,"epoch_utc":null},{"commit":"b5fa6d068f240671eb948b055cd4f7bf127e0ec0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 16:03:00 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 16:03:00 2021 -0700","stats":{"files_changed":5,"insertions":25,"deletions":5,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":6},{"name":"docs/parsers/ping_s.md","lines_changed":6},{"name":"jc/parsers/foo_s.py","lines_changed":6},{"name":"jc/parsers/ls_s.py","lines_changed":6},{"name":"jc/parsers/ping_s.py","lines_changed":6}]},"message":"update docs","epoch":1632265380,"epoch_utc":null},{"commit":"1baec0b420feff068f2dc1e35499f78aa7d0a6e0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 15:43:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 15:43:02 2021 -0700","stats":{"files_changed":13,"insertions":815,"deletions":0,"files":[".../ping-hostname-O-D-p-s-streaming.json",".../centos-7.7/ping-hostname-O-p-streaming.json",".../centos-7.7/ping-hostname-O-streaming.json",".../fixtures/centos-7.7/ping-ip-O-D-streaming.json",".../centos-7.7/ping-ip-O-streaming-quiet.json","tests/fixtures/centos-7.7/ping-ip-O-streaming.json",".../fixtures/centos-7.7/ping-ip-dup-streaming.json",".../ping6-hostname-O-D-p-s-streaming.json",".../centos-7.7/ping6-hostname-O-p-streaming.json",".../centos-7.7/ping6-ip-O-D-p-streaming.json",".../centos-7.7/ping6-ip-O-p-streaming.json",".../centos-7.7/ping6-ip-dup-streaming.json","tests/test_ping_s.py"],"file_stats":[{"name":".../ping-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping-hostname-O-p-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping-hostname-O-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/ping-ip-O-D-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping-ip-O-streaming-quiet.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-ip-O-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/ping-ip-dup-streaming.json","lines_changed":1},{"name":".../ping6-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping6-hostname-O-p-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping6-ip-O-D-p-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping6-ip-O-p-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping6-ip-dup-streaming.json","lines_changed":1},{"name":"tests/test_ping_s.py","lines_changed":803}]},"message":"add some streaming tests","epoch":1632264182,"epoch_utc":null},{"commit":"4f2a4e1dee9d722d2aa5ddf2c082a358c88cf640","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 15:42:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 15:42:45 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":8}]},"message":"skip blank lines and warning lines","epoch":1632264165,"epoch_utc":null},{"commit":"758d617668d1f9d0f27b52d46749e5b67a570cf1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 13:29:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 13:29:50 2021 -0700","stats":{"files_changed":5,"insertions":5,"deletions":5,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2}]},"message":"doc update","epoch":1632256190,"epoch_utc":null},{"commit":"55322c37f57a9c8e28641a61928fad2329f5e50d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 12:36:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 12:36:36 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":4}]},"message":"formatting","epoch":1632252996,"epoch_utc":null},{"commit":"d19ea5552bb3a379f7f92bcb58794c557ecc6647","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 12:33:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 12:33:05 2021 -0700","stats":{"files_changed":12,"insertions":193,"deletions":0,"files":["tests/fixtures/centos-7.7/ls-al-streaming.json","tests/fixtures/centos-7.7/ls-alR-streaming.json","tests/fixtures/centos-7.7/ls-alh-streaming.json","tests/fixtures/osx-10.14.6/ls-al-streaming.json","tests/fixtures/osx-10.14.6/ls-alR-streaming.json","tests/fixtures/osx-10.14.6/ls-alh-streaming.json",".../osx-10.14.6/ls-lR-empty-folder-streaming.json","tests/fixtures/ubuntu-18.04/ls-al-streaming.json","tests/fixtures/ubuntu-18.04/ls-alR-streaming.json","tests/fixtures/ubuntu-18.04/ls-alh-streaming.json",".../fixtures/ubuntu-18.04/ls-l-iso-streaming.json","tests/test_ls_s.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ls-al-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-alR-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-alh-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-al-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-alR-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-alh-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ls-lR-empty-folder-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-al-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-alR-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-alh-streaming.json","lines_changed":1},{"name":".../fixtures/ubuntu-18.04/ls-l-iso-streaming.json","lines_changed":1},{"name":"tests/test_ls_s.py","lines_changed":182}]},"message":"add streaming ls parser tests","epoch":1632252785,"epoch_utc":null},{"commit":"130c3527c1083d399deef00ee8fcaa75f609b485","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 12:32:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 21 12:32:34 2021 -0700","stats":{"files_changed":6,"insertions":25,"deletions":25,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":8},{"name":"docs/parsers/ping_s.md","lines_changed":12},{"name":"jc/parsers/foo_s.py","lines_changed":6},{"name":"jc/parsers/ls_s.py","lines_changed":10},{"name":"jc/parsers/ping_s.py","lines_changed":12},{"name":"man/jc.1","lines_changed":2}]},"message":"update docstrings","epoch":1632252754,"epoch_utc":null},{"commit":"3f221f471416766a860bd19850afda4899ee5eb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 13:21:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 20 13:21:20 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":6},{"name":"jc/parsers/ping_s.py","lines_changed":6}]},"message":"doc update","epoch":1632169280,"epoch_utc":null},{"commit":"d64c4cb39056bb869fc117477612ae5ae2ef3d85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 13:04:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 20 13:04:26 2021 -0700","stats":{"files_changed":2,"insertions":141,"deletions":1,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":72},{"name":"templates/manpage_template","lines_changed":70}]},"message":"add streaming parsers section","epoch":1632168266,"epoch_utc":null},{"commit":"448c56aa46b72438e4a4c83b10a7eb889e3f50e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 13:04:14 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 20 13:04:14 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting","epoch":1632168254,"epoch_utc":null},{"commit":"9fbea15b6d031baa8c90f2602e39de7cf51408e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 11:59:54 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 20 11:59:54 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":8,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":6},{"name":"jc/parsers/ping_s.py","lines_changed":4}]},"message":"rename state class to _state","epoch":1632164394,"epoch_utc":null},{"commit":"932060314b3c1ce518b9f57532e124285cb3ad0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 11:51:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 20 11:51:27 2021 -0700","stats":{"files_changed":2,"insertions":41,"deletions":11,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":50},{"name":"jc/parsers/ping_s.py","lines_changed":2}]},"message":"doc update","epoch":1632163887,"epoch_utc":null},{"commit":"5e68ae50097cb339f3390449db7e3f189a716320","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 11:42:15 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 20 11:42:15 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":7}]},"message":"import exception. tighten up os detection","epoch":1632163335,"epoch_utc":null},{"commit":"d03541beae44a4571a7d0481af01a5c19506207f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 11:24:59 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 20 11:24:59 2021 -0700","stats":{"files_changed":1,"insertions":12,"deletions":5,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":17}]},"message":"add docstring examples. add exception raise when OS cannot be detected.","epoch":1632162299,"epoch_utc":null},{"commit":"516fa571d90a0c93134c953c15ce84dd31b96b4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 19 21:41:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 19 21:41:35 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":3}]},"message":"remove unused variable. use elif instead of if for linux vs. bsd detection","epoch":1632112895,"epoch_utc":null},{"commit":"a19c12096a8e8de02a6ff761cc9c13ec249d416e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 19 13:18:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 19 13:18:23 2021 -0700","stats":{"files_changed":1,"insertions":373,"deletions":143,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":516}]},"message":"initial working parser for both linux and bsd","epoch":1632082703,"epoch_utc":null},{"commit":"758f27945de4f0897405eba02c7908d815ce6e9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 15:09:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 17 15:09:56 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":18}]},"message":"change data_bytes and bytes to sent_bytes and response_bytes","epoch":1631916596,"epoch_utc":null},{"commit":"8b1e8d58df22f8542ccaf7bf3e1eabe6132e7a42","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 14:44:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 17 14:44:49 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":1}]},"message":"remove unneeded line","epoch":1631915089,"epoch_utc":null},{"commit":"b967489d085319facee077958deaa04956a98343","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 14:42:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 17 14:42:30 2021 -0700","stats":{"files_changed":1,"insertions":81,"deletions":40,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":121}]},"message":"complete linux coverage including summary","epoch":1631914950,"epoch_utc":null},{"commit":"870d0218be2641e3eddb114c23d54deb23155f25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 10:34:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 17 10:34:05 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2}]},"message":"add unbuffer note","epoch":1631900045,"epoch_utc":null},{"commit":"84020bc2af294cb065105f1399453aefc98eb180","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 10:26:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 17 10:26:47 2021 -0700","stats":{"files_changed":7,"insertions":12,"deletions":6,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/utils.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":6},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"change error_msg to error in -q result docs","epoch":1631899607,"epoch_utc":null},{"commit":"4efe5344e069ed921f208bcbbd097705be2d3b4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 10:20:22 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 17 10:20:22 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add links to HN and Reddit","epoch":1631899222,"epoch_utc":null},{"commit":"9182c545134b3d56d27d2c1d9bda678532bdc3fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 08:24:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 17 08:24:56 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":8,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":11}]},"message":"formatting","epoch":1631892296,"epoch_utc":null},{"commit":"28f0ab0b02d21fc060f1ac7181f85552798dc4bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 08:21:13 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 17 08:21:13 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/ls_s.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":2}]},"message":"update streaming error messages","epoch":1631892073,"epoch_utc":null},{"commit":"90d1a30696b2cbfbb06a55cc0cf920cf8ecd89aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 08:05:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 17 08:05:23 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting","epoch":1631891123,"epoch_utc":null},{"commit":"130b3738cc57fe261e8ef881a57b7836acd7e7e9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 22:32:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 22:32:46 2021 -0700","stats":{"files_changed":4,"insertions":21,"deletions":26,"files":["jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":8},{"name":"jc/parsers/ls_s.py","lines_changed":8},{"name":"jc/parsers/ping_s.py","lines_changed":14},{"name":"jc/utils.py","lines_changed":17}]},"message":"shorten successful yield to a single line","epoch":1631856766,"epoch_utc":null},{"commit":"92c7357615af7689db273aa78d666b35a2ec7a70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 22:04:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 22:04:44 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":2}]},"message":"formatting","epoch":1631855084,"epoch_utc":null},{"commit":"c80f8633349c00ea461b8927f9949fe19b2f46ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 22:04:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 22:04:31 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/foo.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":10}]},"message":"simplify return condition formatting","epoch":1631855071,"epoch_utc":null},{"commit":"4642c20179d4643e0cf1970b264da7d9d91628de","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 21:55:40 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 21:55:40 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"templates/readme_template","lines_changed":4}]},"message":"formatting","epoch":1631854540,"epoch_utc":null},{"commit":"5288eb22aadbbc1005b16428b94d2b07e9a75e3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 21:43:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 21:43:36 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add info about streaming parser performance characteristics","epoch":1631853816,"epoch_utc":null},{"commit":"df8387a1a99df69eac5005662aaf56d506fa0efd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 21:37:54 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 21:37:54 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"streaming parsers cannot be used with the magic syntax","epoch":1631853474,"epoch_utc":null},{"commit":"cc38c27f44d3f088609b878304cab8eed75fc8f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 21:33:57 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 21:33:57 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"templates/readme_template","lines_changed":3}]},"message":"formatting","epoch":1631853237,"epoch_utc":null},{"commit":"64f5357d69fe88b45d710d38948969699e1ca12f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 21:31:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 21:31:45 2021 -0700","stats":{"files_changed":2,"insertions":84,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":42},{"name":"templates/readme_template","lines_changed":42}]},"message":"add streaming parsers section","epoch":1631853105,"epoch_utc":null},{"commit":"51debb5649bef431e51e543f1c9270e2810aa58f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 20:45:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 20:45:01 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"add vmstat parser and change from linebuffer to unbuffer","epoch":1631850301,"epoch_utc":null},{"commit":"b48d05a4313b27cf5e69d3e4259542e0b131b60f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 20:41:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 20:41:56 2021 -0700","stats":{"files_changed":5,"insertions":15,"deletions":15,"files":["README.md","jc/cli.py","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":8},{"name":"man/jc.1","lines_changed":10},{"name":"templates/manpage_template","lines_changed":8},{"name":"templates/readme_template","lines_changed":2}]},"message":"change from line buffer output to unbuffer output","epoch":1631850116,"epoch_utc":null},{"commit":"4e7f6b337db61b8a106cf958f6b874157909c87a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 20:26:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 20:26:56 2021 -0700","stats":{"files_changed":3,"insertions":17,"deletions":25,"files":["jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":15},{"name":"jc/parsers/ls_s.py","lines_changed":9},{"name":"jc/parsers/ping_s.py","lines_changed":18}]},"message":"simplify yield statements","epoch":1631849216,"epoch_utc":null},{"commit":"a509d99cafd80862721595ee59ccc4a471b5e5a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 20:25:28 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Sep 16 20:25:28 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":8}]},"message":"add stream_success dictionary","epoch":1631849128,"epoch_utc":null},{"commit":"481e45fb644ac88fa77ef35643b793f179fe6859","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 14 06:02:55 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Sep 14 06:02:55 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2}]},"message":"limit parse error msg lenght","epoch":1631624575,"epoch_utc":null},{"commit":"e9038e1720e1c0e520e2f29b718aa8505cbbb9a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 21:15:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 21:15:26 2021 -0700","stats":{"files_changed":1,"insertions":66,"deletions":0,"files":["docs/parsers/ping_s.md"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":66}]},"message":"initial streaming ping docs","epoch":1631592926,"epoch_utc":null},{"commit":"8fd9e582bf29275c4daaa3be88ea8d196411b34a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 21:15:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 21:15:08 2021 -0700","stats":{"files_changed":1,"insertions":15,"deletions":17,"files":["docs/parsers/ls_s.md"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":32}]},"message":"doc update","epoch":1631592908,"epoch_utc":null},{"commit":"c1fd6f48a5a3501499c9fca7239673b8555cc7c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 21:14:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 21:14:56 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["docs/utils.md"],"file_stats":[{"name":"docs/utils.md","lines_changed":6}]},"message":"add stream_error docs","epoch":1631592896,"epoch_utc":null},{"commit":"af615c7f4b3f589ffc1b37cf9834062a04c013cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 21:14:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 21:14:38 2021 -0700","stats":{"files_changed":6,"insertions":26,"deletions":5,"files":["CHANGELOG","README.md","jc/cli.py","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"README.md","lines_changed":4},{"name":"jc/cli.py","lines_changed":7},{"name":"man/jc.1","lines_changed":11},{"name":"templates/manpage_template","lines_changed":4},{"name":"templates/readme_template","lines_changed":3}]},"message":"add line buffer output option","epoch":1631592878,"epoch_utc":null},{"commit":"bf0bc32d7ae6cabe07906207f4f08c2e81802c80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 20:51:24 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 20:51:24 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"flush streamed text for better piping experience","epoch":1631591484,"epoch_utc":null},{"commit":"2d6b53e012181a4c33bab441880c47c0fc0b0601","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 19:50:51 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 19:50:51 2021 -0700","stats":{"files_changed":1,"insertions":36,"deletions":42,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":78}]},"message":"add pattern support. move unparsable line detection to standard streaming parser style","epoch":1631587851,"epoch_utc":null},{"commit":"51271fea0fbd7bd63863ba05c399b4675dc5b4bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 19:27:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 19:27:34 2021 -0700","stats":{"files_changed":1,"insertions":139,"deletions":149,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":288}]},"message":"somewhat working parser","epoch":1631586454,"epoch_utc":null},{"commit":"2deb473e0bc96c0e39ec4074a6df4b941ba2172b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:36:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 18:36:36 2021 -0700","stats":{"files_changed":1,"insertions":262,"deletions":0,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":262}]},"message":"initial streaming ping parser","epoch":1631583396,"epoch_utc":null},{"commit":"23eeb33b3da43a679c3bf3f3643cfa552a1164e1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:36:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 18:36:19 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"modify stream_error message","epoch":1631583379,"epoch_utc":null},{"commit":"f50dfaef45632241f8f6972fa19bb17c54a457ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:31:52 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 18:31:52 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":13,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":19}]},"message":"use stream_error function for exceptions. raise on non -l ls output","epoch":1631583112,"epoch_utc":null},{"commit":"55bb71e9d466cc9ee5f7fd8eca1101c941cbcb35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:30:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 18:30:20 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"add streaming ping parser. update streaming exception message","epoch":1631583020,"epoch_utc":null},{"commit":"dab9357d286962b70224d6fafbf90a4c0cbc9980","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:29:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 18:29:49 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":12,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":13}]},"message":"use stream_error function for exceptions","epoch":1631582989,"epoch_utc":null},{"commit":"27eb427245b5126335cef0adb5e57522272474b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:29:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 18:29:10 2021 -0700","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":16}]},"message":"add stream_error function","epoch":1631582950,"epoch_utc":null},{"commit":"260f3685d944ded84396ae3395773d6898803fb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 15:06:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 15:06:02 2021 -0700","stats":{"files_changed":1,"insertions":112,"deletions":0,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":112}]},"message":"add streaming parser template","epoch":1631570762,"epoch_utc":null},{"commit":"76e78fc0c34b88a90fef876eebef92bd71cd772c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 15:05:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 15:05:49 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":11,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":20}]},"message":"doc updates","epoch":1631570749,"epoch_utc":null},{"commit":"1ac944fa028a400ae7b39b811fcf368c9bf5e259","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 12:13:14 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 12:13:14 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2}]},"message":"add -q option info to docstring","epoch":1631560394,"epoch_utc":null},{"commit":"986bc9b042a940f8dd34f0541bcb9b5840df579e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 12:10:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 12:10:02 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":43,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":52}]},"message":"cleanup unused code","epoch":1631560202,"epoch_utc":null},{"commit":"5a7942069b1f3ef3b45992b482bfb6bb973f7e8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 10:56:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 10:56:05 2021 -0700","stats":{"files_changed":1,"insertions":28,"deletions":28,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":56}]},"message":"add support for parent field","epoch":1631555765,"epoch_utc":null},{"commit":"f6c6fc13ac4c779667807df12444a41ef28a8011","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 08:55:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Sep 13 08:55:19 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"enhance error msg when streaming parser is used","epoch":1631548519,"epoch_utc":null},{"commit":"1d8cfae89f24192b6fab087f59c9b8988ef363dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 12 17:30:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 12 17:30:56 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":11}]},"message":"only print _meta object if -q or quiet flag is used. Also, add message to the end of exceptions informing of the -q option to ignore errors","epoch":1631493056,"epoch_utc":null},{"commit":"787df51239ffa8260b48d6a3a58e6ff07d5e0f64","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 12 16:42:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 12 16:42:47 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2}]},"message":"remove `\\n` from end of line in exception message","epoch":1631490167,"epoch_utc":null},{"commit":"5e7f302a9c45343c36e81944db38a435e6c8a20c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 12 16:35:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 12 16:35:46 2021 -0700","stats":{"files_changed":1,"insertions":12,"deletions":10,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":22}]},"message":"Raise exceptions unless the -q or quiet flag are used","epoch":1631489746,"epoch_utc":null},{"commit":"3d10fd40b56264836874da19aa72351e6d5cfbf7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 12 16:27:00 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Sep 12 16:27:00 2021 -0700","stats":{"files_changed":1,"insertions":14,"deletions":13,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":27}]},"message":"remove print flush for better performance. Roll json.JSONDecodeError into the parse try/except block","epoch":1631489220,"epoch_utc":null},{"commit":"57e3bf239cc76d3b0ee0eddc618171eb90c28dec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 10 15:02:15 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 10 15:02:15 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":6},{"name":"jc/parsers/ls_s.py","lines_changed":6}]},"message":"formatting for docs","epoch":1631311335,"epoch_utc":null},{"commit":"ccb09861e82044e17ec51277b3c8875e5ba9d87d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 10 15:01:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 10 15:01:02 2021 -0700","stats":{"files_changed":2,"insertions":20,"deletions":20,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":20},{"name":"jc/parsers/ls_s.py","lines_changed":20}]},"message":"formatting for docs","epoch":1631311262,"epoch_utc":null},{"commit":"94551d75dd926c7f558e5cab47ba9483a20c6b3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 10 14:27:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 10 14:27:50 2021 -0700","stats":{"files_changed":10,"insertions":116,"deletions":49,"files":["CHANGELOG","README.md","docs/parsers/ls_s.md","docs/readme.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz","mangen.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":6},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/ls_s.md","lines_changed":89},{"name":"docs/readme.md","lines_changed":25},{"name":"jc/__init__.py","lines_changed":27},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":7},{"name":"man/jc.1.gz","lines_changed":null},{"name":"mangen.py","lines_changed":8},{"name":"setup.py","lines_changed":2}]},"message":"doc update","epoch":1631309270,"epoch_utc":null},{"commit":"6e21218425359210591827e936b8d48d9644df92","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 10 14:14:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Sep 10 14:14:10 2021 -0700","stats":{"files_changed":2,"insertions":234,"deletions":3,"files":["jc/cli.py","jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":23},{"name":"jc/parsers/ls_s.py","lines_changed":214}]},"message":"working prototype of streaming ls parser","epoch":1631308450,"epoch_utc":null},{"commit":"ff0fda48fc48760a7293528155d222c6456f84c4","merge":"e08b61f 528aac7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 10 08:08:45 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Sep 10 08:08:45 2021 -0700","message":"Merge pull request #168 from kellyjonbrazil/master\n\nSync master to dev","epoch":1631286525,"epoch_utc":null},{"commit":"528aac7ad87feae2093aba563c83a29ebf75e5f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 8 07:00:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Sep 8 07:00:50 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":38,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":23},{"name":"templates/readme_template","lines_changed":23}]},"message":"use subprocess in python example","epoch":1631109650,"epoch_utc":null},{"commit":"ab482e521d4cecfffa5393805b1d7de4389db49a","merge":"9c1ad92 e08b61f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 31 09:50:38 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Aug 31 09:50:38 2021 -0700","message":"Merge pull request #163 from kellyjonbrazil/dev\n\nDev v1.16.2","epoch":1630428638,"epoch_utc":null},{"commit":"e08b61fa81b1bd2304d04db5cdc8b809fe9c6032","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 31 08:54:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Aug 31 08:54:23 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add schema note to sfdisk","epoch":1630425263,"epoch_utc":null},{"commit":"ce61bd1d2b4323d9c2d0454c4f646521913ae20d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 31 08:50:42 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Aug 31 08:50:42 2021 -0700","stats":{"files_changed":7,"insertions":73,"deletions":7,"files":["tests/fixtures/debian10/sfdisk-F2.json","tests/fixtures/debian10/sfdisk-F2.out","tests/fixtures/debian10/sfdisk-l2.json","tests/fixtures/debian10/sfdisk-l2.out","tests/fixtures/debian10/sfdisk-l3.json","tests/fixtures/debian10/sfdisk-l3.out","tests/test_sfdisk.py"],"file_stats":[{"name":"tests/fixtures/debian10/sfdisk-F2.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-F2.out","lines_changed":6},{"name":"tests/fixtures/debian10/sfdisk-l2.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-l2.out","lines_changed":15},{"name":"tests/fixtures/debian10/sfdisk-l3.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-l3.out","lines_changed":13},{"name":"tests/test_sfdisk.py","lines_changed":43}]},"message":"add tests for -F fixes","epoch":1630425042,"epoch_utc":null},{"commit":"7b708f75182bf3ed33478a7de62e9c2496f0b994","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 31 08:39:54 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Aug 31 08:39:54 2021 -0700","stats":{"files_changed":3,"insertions":11,"deletions":5,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-l.json","tests/fixtures/debian10/sfdisk-l.json"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":12},{"name":"tests/fixtures/centos-8/sfdisk-l.json","lines_changed":2},{"name":"tests/fixtures/debian10/sfdisk-l.json","lines_changed":2}]},"message":"Don't convert 'size' to int, except for legacy -d support. Change partition table detection logic to fix -F output","epoch":1630424394,"epoch_utc":null},{"commit":"89ca50c7fc1bf64f34c915e65031d0bc520e6466","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 21:56:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 30 21:56:36 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/sfdisk.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add -l to sfdisk raw example","epoch":1630385796,"epoch_utc":null},{"commit":"fb54899dcc2160450448e0d6111557cebdeb0d4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 21:53:40 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 30 21:53:40 2021 -0700","stats":{"files_changed":4,"insertions":38,"deletions":23,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":59},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update","epoch":1630385620,"epoch_utc":null},{"commit":"0a625ad7ddd9c804052d98930165cd22049546bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 21:52:55 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 30 21:52:55 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/sfdisk.py"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":2}]},"message":"remove unneeded lines","epoch":1630385575,"epoch_utc":null},{"commit":"d32e45efbe0d71a9a132abfb2855f1f4ccee9916","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 21:49:07 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 30 21:49:07 2021 -0700","stats":{"files_changed":6,"insertions":69,"deletions":1,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-F.json","tests/fixtures/centos-8/sfdisk-l.json","tests/fixtures/debian10/sfdisk-F.json","tests/fixtures/debian10/sfdisk-l.json","tests/test_sfdisk.py"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":9},{"name":"tests/fixtures/centos-8/sfdisk-F.json","lines_changed":1},{"name":"tests/fixtures/centos-8/sfdisk-l.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-F.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-l.json","lines_changed":1},{"name":"tests/test_sfdisk.py","lines_changed":57}]},"message":"add sfdisk tests","epoch":1630385347,"epoch_utc":null},{"commit":"c77696bc789cdfd286a7479c3d9f67d23149d0ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 20:55:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 30 20:55:26 2021 -0700","stats":{"files_changed":3,"insertions":6,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":4},{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1630382126,"epoch_utc":null},{"commit":"736fde9e784587cb2ef344bbf31d876eafea7741","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 20:51:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 30 20:51:19 2021 -0700","stats":{"files_changed":5,"insertions":147,"deletions":28,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-F.out","tests/fixtures/centos-8/sfdisk-l.out","tests/fixtures/debian10/sfdisk-F.out","tests/fixtures/debian10/sfdisk-l.out"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":127},{"name":"tests/fixtures/centos-8/sfdisk-F.out","lines_changed":9},{"name":"tests/fixtures/centos-8/sfdisk-l.out","lines_changed":24},{"name":"tests/fixtures/debian10/sfdisk-F.out","lines_changed":3},{"name":"tests/fixtures/debian10/sfdisk-l.out","lines_changed":12}]},"message":"add support for newer versions of sfdisk","epoch":1630381879,"epoch_utc":null},{"commit":"9c1ad92fed9a4b3a0da66d6b71deec8d608edfa9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:31:51 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 26 10:31:51 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":12}]},"message":"fix examples","epoch":1629999111,"epoch_utc":null},{"commit":"1a9fd2139d156a51bf2d25db951e47e96da77f7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:29:13 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 26 10:29:13 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"add \"For new parsers:\"","epoch":1629998953,"epoch_utc":null},{"commit":"7661e7f27a4e5c379ea37c7f95496aca2c1e2910","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:27:11 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 26 10:27:11 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"formatting","epoch":1629998831,"epoch_utc":null},{"commit":"f857b7fbf7862ddd7eb5ab20470f5dbaacc62119","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:25:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 26 10:25:37 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"add custom parser folder info","epoch":1629998737,"epoch_utc":null},{"commit":"d94d12dbc5fb3e3712b2f1aea949013cb8213e28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:20:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 26 10:20:53 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":11}]},"message":"add foo parser template info","epoch":1629998453,"epoch_utc":null},{"commit":"700916276ae8b0a106410e3dd2ea3e00248ee37a","merge":"473f706 834e523","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:01:08 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Aug 26 10:01:08 2021 -0700","message":"Merge pull request #159 from kellyjonbrazil/master\n\nSync Master to dev","epoch":1629997268,"epoch_utc":null},{"commit":"834e52369ceb479776ddc8fc2931790af53b9c18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 16 10:33:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 16 10:33:26 2021 -0700","stats":{"files_changed":3,"insertions":1,"deletions":5,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":6},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update man page","epoch":1629135206,"epoch_utc":null},{"commit":"1ce53365de61421c8bd43e04590038083894153b","merge":"2689697 473f706","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 16 10:32:03 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Aug 16 10:32:03 2021 -0700","message":"Merge pull request #156 from kellyjonbrazil/dev\n\nDev v1.16.1","epoch":1629135123,"epoch_utc":null},{"commit":"473f70668f04a38765559c5dbf0468af24d625c9","merge":"0dbd270 2689697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 16 10:28:11 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 16 10:28:11 2021 -0700","message":"Merge branch 'master' into dev\n\n# Conflicts:\n# jc/man/jc.1.gz\n# man/jc.1\n# man/jc.1.gz","epoch":1629134891,"epoch_utc":null},{"commit":"0dbd2702f6ab2640b2ccdea92411ac0789673e66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 17:17:51 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Aug 13 17:17:51 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]},"message":"reformat doc_text for nicer indentation","epoch":1628900271,"epoch_utc":null},{"commit":"01e3764a9b6ba902aea522bf6b7005fd37b3acbb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 16:03:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Aug 13 16:03:46 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"fix join syntax","epoch":1628895826,"epoch_utc":null},{"commit":"ff9c81722ae7221364e9bcb83d98b16b4263334e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 16:01:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Aug 13 16:01:45 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"try/except for shlex.join since only available in python 3.8","epoch":1628895705,"epoch_utc":null},{"commit":"166aef7a022ed29862ab2e0702d53c591bb5cc77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 15:22:33 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Aug 13 15:22:33 2021 -0700","stats":{"files_changed":6,"insertions":4,"deletions":4,"files":["docs/parsers/stat.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz","setup.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1628893353,"epoch_utc":null},{"commit":"78caf7646baf5d35602fd76771443cd64bd783af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 15:19:41 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Aug 13 15:19:41 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add stat fix","epoch":1628893181,"epoch_utc":null},{"commit":"1f99d40cecc5d88a246f3558f71db376ebd885c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 15:19:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Aug 13 15:19:31 2021 -0700","stats":{"files_changed":4,"insertions":17,"deletions":2,"files":["jc/parsers/stat.py","tests/fixtures/osx-10.14.6/stat-filename-with-spaces.json","tests/fixtures/osx-10.14.6/stat-filename-with-spaces.out","tests/test_stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"tests/fixtures/osx-10.14.6/stat-filename-with-spaces.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/stat-filename-with-spaces.out","lines_changed":2},{"name":"tests/test_stat.py","lines_changed":12}]},"message":"fix filename with spaces for osx/bsd","epoch":1628893171,"epoch_utc":null},{"commit":"4c2912d3d5ec1fd2d5d891f2b3c58a33dd8572be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 15:19:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Aug 13 15:19:17 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"use shlex.join to quote run_command_str for better error messages","epoch":1628893157,"epoch_utc":null},{"commit":"45e6e06be581f787f707e3f5645129c713478d16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 14:19:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Aug 13 14:19:45 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"add glob and process substitution fixes","epoch":1628889585,"epoch_utc":null},{"commit":"fdbe3e05f323c95687a1137983f9623911008ca2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 14:19:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Aug 13 14:19:26 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"fix issue with globs not including filenames with spaces with magic syntax (introduced during switch to use subprocess to grab process exit code). No longer need to shlex quote arguments.","epoch":1628889566,"epoch_utc":null},{"commit":"7cc168f6409af13fda815d0d2a6db25b7c9ba367","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 12 16:55:07 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 12 16:55:07 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add comment","epoch":1628812507,"epoch_utc":null},{"commit":"ff2d609c9b5f5f57f3331e5593e8fe87c01654dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 12 16:36:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 12 16:36:35 2021 -0700","stats":{"files_changed":1,"insertions":12,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":13}]},"message":"add close_fds=False in subprocess.Popen() to allow process substitution in magic syntax. Also check for too many open files exception","epoch":1628811395,"epoch_utc":null},{"commit":"2689697b4c21758903e5f74ec069e89be585aba2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 22 17:03:00 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 22 17:03:00 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting","epoch":1626998580,"epoch_utc":null},{"commit":"f90a0ea8ab15629b7786e4431e9c968c3a896ee0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 22 12:20:48 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 22 12:20:48 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":4}]},"message":"formatting","epoch":1626981648,"epoch_utc":null},{"commit":"caabe60f849fb2422e47b8f10e0ff35beb706dcd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 22 12:20:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 22 12:20:31 2021 -0700","stats":{"files_changed":5,"insertions":3,"deletions":3,"files":["docs/parsers/kv.md","jc/man/jc.1.gz","jc/parsers/kv.py","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/kv.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/kv.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"fix kv example","epoch":1626981631,"epoch_utc":null},{"commit":"2bef4ed6038201f54339e750a833260dc1998591","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 21 08:47:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 21 08:47:16 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","README.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"README.md","lines_changed":4}]},"message":"package updates","epoch":1626882436,"epoch_utc":null},{"commit":"ee57be533b12593a33a2abbb2892697f0bd40c65","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 20 12:35:02 2021 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 20 12:35:02 2021 -0500","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2}]},"message":"fix sfdisk example","epoch":1626809702,"epoch_utc":null},{"commit":"c5b7aaca25d6b66d3e44256c2c6760a4cf2956ec","merge":"3b22ce4 7a1be90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 20 10:19:14 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Jul 20 10:19:14 2021 -0700","message":"Merge pull request #149 from kellyjonbrazil/dev\n\nDev v1.16.0","epoch":1626801554,"epoch_utc":null},{"commit":"7a1be905bb8654558afb5979b0bd78d4a8488874","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 20 12:15:29 2021 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 20 12:15:29 2021 -0500","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"version bump","epoch":1626808529,"epoch_utc":null},{"commit":"5798495a11afa2f72ce6f79be785d46240fcbeb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 20 12:13:33 2021 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 20 12:13:33 2021 -0500","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":6}]},"message":"add 1.15.7 to 1.16.0 changes","epoch":1626808413,"epoch_utc":null},{"commit":"46171e220252ec92d18e744d2a57c1d6a6dc19f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 20 12:13:14 2021 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 20 12:13:14 2021 -0500","stats":{"files_changed":1,"insertions":69,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":69}]},"message":"add sfdisk example","epoch":1626808394,"epoch_utc":null},{"commit":"dd5c924ff505dcc2a9c851d2425677bdf16ea462","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 19 12:13:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 19 12:13:46 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add man page location change","epoch":1626722026,"epoch_utc":null},{"commit":"30c4ab297658228a07ef9b1585516719af3febb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 19 12:08:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 19 12:08:50 2021 -0700","stats":{"files_changed":3,"insertions":515,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":515},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"new man page location","epoch":1626721730,"epoch_utc":null},{"commit":"26ea4d47b33277efb0ddafe8f421791696277c07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 19 12:04:25 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 19 12:04:25 2021 -0700","stats":{"files_changed":5,"insertions":14,"deletions":3,"files":["CHANGELOG","MANIFEST.in","jc/__init__.py","mangen.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":10},{"name":"MANIFEST.in","lines_changed":1},{"name":"jc/__init__.py","lines_changed":2},{"name":"mangen.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump and deprecate /man/jc.1.gz and /jc/man/jc.1.gz","epoch":1626721465,"epoch_utc":null},{"commit":"2732cd175c1e878210707162de3928f33fb2f201","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 12 08:10:18 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 12 08:10:18 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["CHANGELOG","MANIFEST.in"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"MANIFEST.in","lines_changed":1}]},"message":"include CHANGELOG in source distribution","epoch":1626102618,"epoch_utc":null},{"commit":"3e54b597be88b0e342e4361b7f2c1af447f9482b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 7 09:00:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 7 09:00:19 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add timezone change for unit tests","epoch":1625673619,"epoch_utc":null},{"commit":"f10ebea20962084833e5c1ebd9bc90a251bf3ff4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 7 08:53:52 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 7 08:53:52 2021 -0700","stats":{"files_changed":11,"insertions":78,"deletions":0,"files":["tests/test_date.py","tests/test_dig.py","tests/test_dir.py","tests/test_last.py","tests/test_ls.py","tests/test_rpm_qai.py","tests/test_stat.py","tests/test_systeminfo.py","tests/test_upower.py","tests/test_utils.py","tests/test_who.py"],"file_stats":[{"name":"tests/test_date.py","lines_changed":7},{"name":"tests/test_dig.py","lines_changed":7},{"name":"tests/test_dir.py","lines_changed":7},{"name":"tests/test_last.py","lines_changed":7},{"name":"tests/test_ls.py","lines_changed":7},{"name":"tests/test_rpm_qai.py","lines_changed":7},{"name":"tests/test_stat.py","lines_changed":7},{"name":"tests/test_systeminfo.py","lines_changed":7},{"name":"tests/test_upower.py","lines_changed":7},{"name":"tests/test_utils.py","lines_changed":8},{"name":"tests/test_who.py","lines_changed":7}]},"message":"update tests to set correct timezone on POSIX systems","epoch":1625673232,"epoch_utc":null},{"commit":"2c6f3993cb4c5e559dbac7a479ec889aa2cba752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 1 15:53:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 1 15:53:10 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/route.md","jc/man/jc.1.gz","jc/parsers/route.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/route.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"remove extra comma","epoch":1625179990,"epoch_utc":null},{"commit":"708a696920b52c2614edcdba264912527b2dfbef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 1 15:51:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 1 15:51:38 2021 -0700","stats":{"files_changed":3,"insertions":0,"deletions":2,"files":["docs/parsers/route.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/route.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"remove extra lines","epoch":1625179898,"epoch_utc":null},{"commit":"20bbb5d331575c8fc33ba63643882a62650c97b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 1 15:50:55 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 1 15:50:55 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":2}]},"message":"remove extra lines","epoch":1625179855,"epoch_utc":null},{"commit":"223e785b547d9376174efa15321d60a533847c57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 17:07:43 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 30 17:07:43 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/sfdisk.py"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":8}]},"message":"rename variable","epoch":1625098063,"epoch_utc":null},{"commit":"3d78692c59980e4d70361d3a9f74bacc3f21376e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 16:54:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 30 16:54:34 2021 -0700","stats":{"files_changed":11,"insertions":150,"deletions":1,"files":["tests/fixtures/centos-7.7/sfdisk-d-multi.json","tests/fixtures/centos-7.7/sfdisk-d-multi.out","tests/fixtures/centos-7.7/sfdisk-d.json","tests/fixtures/centos-7.7/sfdisk-d.out","tests/fixtures/centos-7.7/sfdisk-l-multi.json","tests/fixtures/centos-7.7/sfdisk-l-multi.out","tests/fixtures/centos-7.7/sfdisk-l.json","tests/fixtures/centos-7.7/sfdisk-luB.json","tests/fixtures/centos-7.7/sfdisk-luM.json","tests/fixtures/centos-7.7/sfdisk-luS.json","tests/test_sfdisk.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/sfdisk-d-multi.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-d-multi.out","lines_changed":16},{"name":"tests/fixtures/centos-7.7/sfdisk-d.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-d.out","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-l-multi.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-l-multi.out","lines_changed":21},{"name":"tests/fixtures/centos-7.7/sfdisk-l.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-luB.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-luM.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-luS.json","lines_changed":1},{"name":"tests/test_sfdisk.py","lines_changed":106}]},"message":"add sfdisk tests","epoch":1625097274,"epoch_utc":null},{"commit":"5321a15dcf13cf14efe578d0f66b651078c3d8a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 14:30:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 30 14:30:35 2021 -0700","stats":{"files_changed":4,"insertions":8,"deletions":8,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":8},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/sfdisk.py","lines_changed":8},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update examples","epoch":1625088635,"epoch_utc":null},{"commit":"a452f8252a593f7914ebece53af9d73f4fd11a19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 14:27:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 30 14:27:12 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":4},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/sfdisk.py","lines_changed":4},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"fix integer conversion","epoch":1625088432,"epoch_utc":null},{"commit":"49267f09ac01fead3b20b2d481bb5e0d07af1439","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 14:06:15 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 30 14:06:15 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/sfdisk.py"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":4}]},"message":"change to root prompt in examples","epoch":1625087175,"epoch_utc":null},{"commit":"db47f35783e46a8299533c22146d851509f6ceb2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 12:38:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 30 12:38:36 2021 -0700","stats":{"files_changed":15,"insertions":610,"deletions":3,"files":["CHANGELOG","README.md","docs/parsers/sfdisk.md","jc/__init__.py","jc/cli.py","jc/man/jc.1.gz","jc/parsers/sfdisk.py","jc/utils.py","man/jc.1.gz","setup.py","tests/fixtures/centos-7.7/sfdisk-d.out","tests/fixtures/centos-7.7/sfdisk-l.out","tests/fixtures/centos-7.7/sfdisk-luB.out","tests/fixtures/centos-7.7/sfdisk-luM.out","tests/fixtures/centos-7.7/sfdisk-luS.out"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/sfdisk.md","lines_changed":213},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/sfdisk.py","lines_changed":325},{"name":"jc/utils.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/sfdisk-d.out","lines_changed":8},{"name":"tests/fixtures/centos-7.7/sfdisk-l.out","lines_changed":14},{"name":"tests/fixtures/centos-7.7/sfdisk-luB.out","lines_changed":14},{"name":"tests/fixtures/centos-7.7/sfdisk-luM.out","lines_changed":14},{"name":"tests/fixtures/centos-7.7/sfdisk-luS.out","lines_changed":14}]},"message":"add working sfdisk parser","epoch":1625081916,"epoch_utc":null},{"commit":"d48abf312c1f55ab31aa11da2b6cf6bc8166733b","merge":"ff7ab0a 3b22ce4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 10:10:59 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Jun 30 10:10:59 2021 -0700","message":"Merge pull request #147 from kellyjonbrazil/master\n\nsync to dev","epoch":1625073059,"epoch_utc":null},{"commit":"3b22ce41105387e7f46a410460cf04759feef197","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 28 08:04:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jun 28 08:04:46 2021 -0700","stats":{"files_changed":6,"insertions":6,"deletions":3,"files":["CHANGELOG","jc/__init__.py","jc/cli.py","jc/man/jc.1.gz","man/jc.1.gz","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"setup.py","lines_changed":2}]},"message":"fix local plugin parser issue where parser has .py in the name but it is not at the end","epoch":1624892686,"epoch_utc":null},{"commit":"c521ca5bc9e2b035cfef6ff65f6b303b3ec44296","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 11 11:41:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jun 11 11:41:16 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"change possible to available","epoch":1623436876,"epoch_utc":null},{"commit":"3ddc1c665990e1e732314330db214a81ab810fe9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 11 11:39:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jun 11 11:39:38 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add jello","epoch":1623436778,"epoch_utc":null},{"commit":"a8e19402b7d1f9f06bc40b81a15dec401154180c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 9 08:33:48 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 9 08:33:48 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["ADVANCED_USAGE.md"],"file_stats":[{"name":"ADVANCED_USAGE.md","lines_changed":4}]},"message":"remove temporary fix","epoch":1623252828,"epoch_utc":null},{"commit":"0927902b30654274743ab9092e90e768709a9937","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 8 16:51:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jun 8 16:51:03 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["ADVANCED_USAGE.md"],"file_stats":[{"name":"ADVANCED_USAGE.md","lines_changed":4}]},"message":"temp fix for wrong url","epoch":1623196263,"epoch_utc":null},{"commit":"572548b42fb6ed9d32a392503d44fac1a8f146d3","merge":"95aec9c ff7ab0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 27 17:00:54 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu May 27 17:00:54 2021 -0700","message":"Merge pull request #141 from kellyjonbrazil/dev\n\nDev v1.15.5","epoch":1622160054,"epoch_utc":null},{"commit":"ff7ab0a1ed7f468d0e84eb3bf0636f53913c490d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 27 16:58:14 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 27 16:58:14 2021 -0700","stats":{"files_changed":3,"insertions":0,"deletions":1,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc updates for v1.15.5","epoch":1622159894,"epoch_utc":null},{"commit":"5db71b05cb28691bbbaa5d668bcd4a4ac7e68b85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 25 09:47:24 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 25 09:47:24 2021 -0700","stats":{"files_changed":5,"insertions":3,"deletions":3,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/manpage_template","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add en_US.UTF-8 to LANG info","epoch":1621961244,"epoch_utc":null},{"commit":"f9b952885aa7f2b450786a08c3879d9e358886da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 21 10:21:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 21 10:21:21 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add python 3.9.5 packaged info","epoch":1621617681,"epoch_utc":null},{"commit":"e7983bc0b29abaca2147038dfad018cba1e67cdf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 21 10:16:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 21 10:16:19 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xml.md","docs/parsers/yaml.md"],"file_stats":[{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2}]},"message":"version bump","epoch":1621617379,"epoch_utc":null},{"commit":"473a6431425fc24a4cc83939ff592e0d49535b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 21 10:16:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 21 10:16:08 2021 -0700","stats":{"files_changed":4,"insertions":10,"deletions":3,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":11},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/readme_template","lines_changed":2}]},"message":"add windows msi info","epoch":1621617368,"epoch_utc":null},{"commit":"14f3d442cb86250b8f2cdfd7977938634b8abd6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 21 09:46:51 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 21 09:46:51 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"formatting","epoch":1621615611,"epoch_utc":null},{"commit":"d6f4ed9ab55fe9b7c2766fb437172af62a1d5c87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 21 09:46:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 21 09:46:34 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":2}]},"message":"add long-form UTC test","epoch":1621615594,"epoch_utc":null},{"commit":"1b8d654444ff8c8b8171c7ac63e2736447a36c09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 20 15:49:18 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 20 15:49:18 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add error message info","epoch":1621550958,"epoch_utc":null},{"commit":"6002af0dca334c0affaff3e9acdca416238c7d82","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 20 15:46:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 20 15:46:31 2021 -0700","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":11}]},"message":"add more error message detail to the user for ParseError and LibraryNotFound exceptions","epoch":1621550791,"epoch_utc":null},{"commit":"0924d822a30c8806f65574c010561cd6f7c8e181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 20 15:36:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 20 15:36:27 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":1,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":9}]},"message":"add windows example","epoch":1621550187,"epoch_utc":null},{"commit":"72a37b928924c3edde3a4edb952f98c94aa05f0b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 19 16:23:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 19 16:23:34 2021 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1621466614,"epoch_utc":null},{"commit":"5eef7bd769f8ffb03ba396833d1b33484041a99f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 19 16:14:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 19 16:14:26 2021 -0700","stats":{"files_changed":2,"insertions":16,"deletions":16,"files":["jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/xml.py","lines_changed":16},{"name":"jc/parsers/yaml.py","lines_changed":16}]},"message":"use LibraryNotInstalled exception instead of exiting via sys.exit","epoch":1621466066,"epoch_utc":null},{"commit":"c6893e1bd5283d982a7ecd6f84bdfdd0054ce7a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 19 16:13:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 19 16:13:05 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/exceptions.py"],"file_stats":[{"name":"jc/exceptions.py","lines_changed":4}]},"message":"add LibraryNotInstalled exception","epoch":1621465985,"epoch_utc":null},{"commit":"039f6612e491c6f821c001252e122e9b0a781104","merge":"9c57c09 95aec9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 18 10:29:02 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue May 18 10:29:02 2021 -0700","message":"Merge pull request #139 from kellyjonbrazil/master\n\nsync branches","epoch":1621358942,"epoch_utc":null},{"commit":"95aec9c6f9aa8fb4d0dae227410a1346d550f47f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 18 10:27:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 18 10:27:36 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["templates/manpage_template"],"file_stats":[{"name":"templates/manpage_template","lines_changed":6}]},"message":"add info about Magic syntax not supporting shell builtins","epoch":1621358856,"epoch_utc":null},{"commit":"4e9652a8ec2482a64dc029b0ce0e1047a3e49867","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 17 14:36:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 17 14:36:20 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"spelling","epoch":1621287380,"epoch_utc":null},{"commit":"773b7f4b1f23e04c90e602aab05bc1a7e5aae37b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 17 08:38:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 17 08:38:09 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"templates/readme_template","lines_changed":1}]},"message":"add space before exit code table","epoch":1621265889,"epoch_utc":null},{"commit":"d17ffde9cdc35392ae25d8e9de5328e46067df2a","merge":"efb1d3e 9c57c09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 17 08:35:13 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon May 17 08:35:13 2021 -0700","message":"Merge pull request #138 from kellyjonbrazil/dev\n\nDev v1.15.4","epoch":1621265713,"epoch_utc":null},{"commit":"9c57c09c00e64a9031391b9b70083ad6ecf0bc0b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 17 08:24:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 17 08:24:31 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update for release","epoch":1621265071,"epoch_utc":null},{"commit":"4d730a9de5a0d7c064a9a59e3add86e58d9ec492","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 20:57:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 20:57:17 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add UTC fix","epoch":1621223837,"epoch_utc":null},{"commit":"fc57bcfce24af23f077d6a73f1db4591d8f99c13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 20:51:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 20:51:39 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":3}]},"message":"fix for when UTC is referenced as \"Coordinated Universal Time\"","epoch":1621223499,"epoch_utc":null},{"commit":"fa5571486c3c19bb7e836f043545ea4f2509ed4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 20:33:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 20:33:03 2021 -0700","stats":{"files_changed":1,"insertions":10,"deletions":10,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":20}]},"message":"simplify json_out function","epoch":1621222383,"epoch_utc":null},{"commit":"9996c4fe23564dfb52e3c7dbdbd8bd67edfb1e95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:55:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 19:55:53 2021 -0700","stats":{"files_changed":7,"insertions":10,"deletions":10,"files":["EXAMPLES.md","docs/parsers/history.md","docs/parsers/jobs.md","jc/man/jc.1.gz","jc/parsers/history.py","jc/parsers/jobs.py","man/jc.1.gz"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":6},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":6},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update docs for shell builtins","epoch":1621220153,"epoch_utc":null},{"commit":"038d4290248e6bb94762bb51f69e9958f7c1fecb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:44:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 19:44:10 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":6,"files":["docs/parsers/dig.md","docs/parsers/dir.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":8},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc updates","epoch":1621219450,"epoch_utc":null},{"commit":"9bf6facb0d7d76583802309253e7d13ba5148997","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:43:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 19:43:10 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":6,"files":["jc/parsers/dir.py"],"file_stats":[{"name":"jc/parsers/dir.py","lines_changed":9}]},"message":"remove magic command capability since dir is a shell builtin","epoch":1621219390,"epoch_utc":null},{"commit":"965717886e4ebaa6a4a494f189d9fdd01e33eb21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:30:00 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 19:30:00 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add exceptions module info","epoch":1621218600,"epoch_utc":null},{"commit":"e9bfc3dd29f914fd91e937f06d7f59c0f91b8449","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:21:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 19:21:37 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"add time format, dig compatibility, windows colors fix","epoch":1621218097,"epoch_utc":null},{"commit":"f46b33eacf070b4dc72c8d8a66aae49abd149e5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:20:13 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 19:20:13 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2},{"name":"tests/test_utils.py","lines_changed":2}]},"message":"add windows time format","epoch":1621218013,"epoch_utc":null},{"commit":"f475fe44df2fb2661c5bce4d1e602a4bba7e87c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:09:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 19:09:53 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":3}]},"message":"add new time format for systeminfo","epoch":1621217393,"epoch_utc":null},{"commit":"5fdbe2962d84dad89de23f103d97b76b90450206","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 17:48:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 17:48:56 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":2}]},"message":"make dig compatible with all platforms","epoch":1621212536,"epoch_utc":null},{"commit":"ab291b9eef6ed5c8ab59b5652f676178941d5ce5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 17:48:40 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 17:48:40 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"only force enable colors when running on windows","epoch":1621212520,"epoch_utc":null},{"commit":"fd411fd77273cb7cf872c03ed6a258ccdee4d261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 17:43:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun May 16 17:43:05 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"attempt to get colors working on windows","epoch":1621212185,"epoch_utc":null},{"commit":"b1e95a60a2461dc401ffc299ef6338b65ef12691","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 13 08:42:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 13 08:42:27 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"remove unnecessary comment","epoch":1620920547,"epoch_utc":null},{"commit":"bb1439f0d53e87f636fba05fbd30c3c79fb16002","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 13 08:20:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 13 08:20:58 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":5}]},"message":"use ParseError exception from jc.exceptions module","epoch":1620919258,"epoch_utc":null},{"commit":"ba963d98a0a2b3a0dfca6b211096d802253da5fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 13 08:20:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 13 08:20:35 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/exceptions.py"],"file_stats":[{"name":"jc/exceptions.py","lines_changed":5}]},"message":"add exceptions module including ParseError","epoch":1620919235,"epoch_utc":null},{"commit":"83440ccb55d0db15b112b8b7d7352493ff516112","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 13 08:02:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 13 08:02:38 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"error message capitalization","epoch":1620918158,"epoch_utc":null},{"commit":"796f61bfa417afdc6ab48fddbb5502cd0659b840","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 17:01:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 12 17:01:09 2021 -0700","stats":{"files_changed":1,"insertions":10,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":13}]},"message":"handle case where the user pipes data and uses magic syntax simultaneously","epoch":1620864069,"epoch_utc":null},{"commit":"070cac4ae12282458a1e1fc8618ebc473d23cacf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 15:36:06 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 12 15:36:06 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"remove commented line","epoch":1620858966,"epoch_utc":null},{"commit":"3ed84f9f42e4e883ddaac28ab49d675600b49424","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 15:19:11 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 12 15:19:11 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":18}]},"message":"reorganize main function. remove pass condition.","epoch":1620857951,"epoch_utc":null},{"commit":"a205afb6f355edbb4b98200a980b9601ed0f0658","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 13:44:15 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 12 13:44:15 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"set run_command_str if run_command is set","epoch":1620852255,"epoch_utc":null},{"commit":"a6d983dd8f3871cbc2391c313340167829a575d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 13:38:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 12 13:38:08 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"move run_command_str variable","epoch":1620851888,"epoch_utc":null},{"commit":"b6c8d6d01d740827273265dbb0cfbaf7875ac7f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 13:18:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 12 13:18:58 2021 -0700","stats":{"files_changed":1,"insertions":45,"deletions":17,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":62}]},"message":"add exception handling for filenotfound or other subprocess.popen and json.dumps exceptions","epoch":1620850738,"epoch_utc":null},{"commit":"b5a5d5b133f1c0df8023776e59697b7579f8c18a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 11:36:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 12 11:36:27 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"set parser_name for magic syntax use","epoch":1620844587,"epoch_utc":null},{"commit":"da528e7814b0cf25a359c3556d0e286e7bf004b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 09:40:22 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 12 09:40:22 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"move separators to a variable","epoch":1620837622,"epoch_utc":null},{"commit":"4acebf4f621ac564f82e3a97e6810fbb08a9dbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 08:48:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 12 08:48:49 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"move variables","epoch":1620834529,"epoch_utc":null},{"commit":"4d40808d2b70b7543eadcfd2d35c16ebe91f2f9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 08:27:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 12 08:27:39 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":7}]},"message":"update comments","epoch":1620833259,"epoch_utc":null},{"commit":"c543f00bd3c737f73144bb2980d12793042459b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 14:30:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 11 14:30:46 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"simplify piped_output function","epoch":1620768646,"epoch_utc":null},{"commit":"947cf41dfab5811c0e76e371231c59a2d6372752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 12:42:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 11 12:42:21 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add exit code info","epoch":1620762141,"epoch_utc":null},{"commit":"8d8c58742e5106c3387a627cd1b1323a76cc9623","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 11:32:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 11 11:32:08 2021 -0700","stats":{"files_changed":5,"insertions":21,"deletions":15,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":13},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/manpage_template","lines_changed":10},{"name":"templates/readme_template","lines_changed":13}]},"message":"formatting","epoch":1620757928,"epoch_utc":null},{"commit":"995ecc9bfb0425b0ee9e4250395b0200b46c1e89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 11:11:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 11 11:11:17 2021 -0700","stats":{"files_changed":3,"insertions":15,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/manpage_template","lines_changed":15}]},"message":"add exit codes section","epoch":1620756677,"epoch_utc":null},{"commit":"21a15225ebff645439b12d6249dc3e28d7bc09ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 10:59:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 11 10:59:26 2021 -0700","stats":{"files_changed":2,"insertions":18,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":9},{"name":"templates/readme_template","lines_changed":9}]},"message":"add exit codes section","epoch":1620755966,"epoch_utc":null},{"commit":"48921d4584068fadb0f776ed7e81c21d89172e2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 10:50:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 11 10:50:35 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"ensure exit code never exceeds 255","epoch":1620755435,"epoch_utc":null},{"commit":"342db45edc94ab1c3b3ae70e7cf4ca4076e2c7eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 10:36:55 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 11 10:36:55 2021 -0700","stats":{"files_changed":1,"insertions":18,"deletions":10,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":28}]},"message":"fix combined exit codes","epoch":1620754615,"epoch_utc":null},{"commit":"5f88ecf8443bc6e9a7cda5bc60858f37cc09f4f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 21:23:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 21:23:23 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]},"message":"add comments to magic_parser return","epoch":1620707003,"epoch_utc":null},{"commit":"a56aebfe7024914d2c602278964b99d1443de335","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 21:09:00 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 21:09:00 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"remove side-effect comment since it is no longer relevant","epoch":1620706140,"epoch_utc":null},{"commit":"422bb744a82472546d62c72ba05eaa1d18d5068a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 21:03:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 21:03:30 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update man pages","epoch":1620705810,"epoch_utc":null},{"commit":"c3b814a15f571ac84a8ce0719d7fd88acf814caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 21:02:28 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 21:02:28 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":7}]},"message":"move imports to the top","epoch":1620705748,"epoch_utc":null},{"commit":"e4574047a0ef6fcd4a47142421a1d05795c7925a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 20:49:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 20:49:44 2021 -0700","stats":{"files_changed":1,"insertions":21,"deletions":21,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":42}]},"message":"update tests for magic_parser function","epoch":1620704984,"epoch_utc":null},{"commit":"0d7d7951f82627d1fb1e20d1398bd7f88c5ce1be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 18:58:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 18:58:45 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":12}]},"message":"don't reset sys.argv anymore. check for 'valid_command' instead","epoch":1620698325,"epoch_utc":null},{"commit":"da904e4770a20ae85fc67476ae4a529564d0a3ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 18:50:59 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 18:50:59 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"remove final \\n from stderr string when printing","epoch":1620697859,"epoch_utc":null},{"commit":"19b540041add64fe6650c3634ec869421ffbc769","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 18:31:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 18:31:30 2021 -0700","stats":{"files_changed":1,"insertions":82,"deletions":51,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":133}]},"message":"proof of concept for passing command exit codes when using magic syntax. Needs more testing","epoch":1620696690,"epoch_utc":null},{"commit":"f2ffb93eeaf4c8b5aa93f3e8808bdc044582e8a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 10:43:40 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 10:43:40 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":10,"files":["tests/test_ping.py"],"file_stats":[{"name":"tests/test_ping.py","lines_changed":10}]},"message":"formatting","epoch":1620668620,"epoch_utc":null},{"commit":"c0c0e05642e0f473cde34178d815978fff8fe1ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 10:40:13 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 10:40:13 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add dig `+noall +answer` support","epoch":1620668413,"epoch_utc":null},{"commit":"966978f17e40a338f982628825f30a19d4b84e4c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 10:39:51 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 10:39:51 2021 -0700","stats":{"files_changed":5,"insertions":72,"deletions":0,"files":[".../centos-7.7/ping6-ip-O-p-unparsable.json",".../centos-7.7/ping6-ip-O-p-unparsable.out",".../fixtures/osx-10.14.6/ping6-ip-unparsable.json","tests/fixtures/osx-10.14.6/ping6-ip-unparsable.out","tests/test_ping.py"],"file_stats":[{"name":".../centos-7.7/ping6-ip-O-p-unparsable.json","lines_changed":1},{"name":".../centos-7.7/ping6-ip-O-p-unparsable.out","lines_changed":27},{"name":".../fixtures/osx-10.14.6/ping6-ip-unparsable.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-unparsable.out","lines_changed":9},{"name":"tests/test_ping.py","lines_changed":34}]},"message":"add more unparsable line ping tests","epoch":1620668391,"epoch_utc":null},{"commit":"8ab08a5231e082940a62fcde4be218b7ba94be31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 10:13:52 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 10 10:13:52 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":4}]},"message":"doc update","epoch":1620666832,"epoch_utc":null},{"commit":"48e534fa03b92b2583c5c6269c76651f3aa420cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 7 16:55:18 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 7 16:55:18 2021 -0700","stats":{"files_changed":3,"insertions":17,"deletions":2,"files":["tests/fixtures/osx-10.14.6/dig-noall-answer.json","tests/fixtures/osx-10.14.6/dig-noall-answer.out","tests/test_dig.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/dig-noall-answer.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig-noall-answer.out","lines_changed":4},{"name":"tests/test_dig.py","lines_changed":14}]},"message":"add +noall +answer test","epoch":1620431718,"epoch_utc":null},{"commit":"61851c1bd02aa82d5d82e68595e45630ead13d34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 7 16:42:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 7 16:42:09 2021 -0700","stats":{"files_changed":2,"insertions":85,"deletions":3,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":40},{"name":"jc/parsers/dig.py","lines_changed":48}]},"message":"add support for +noall +answer","epoch":1620430929,"epoch_utc":null},{"commit":"3c51b2d83d301b4072bbb12fdba4f60b900573da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 7 13:50:28 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 7 13:50:28 2021 -0700","stats":{"files_changed":3,"insertions":40,"deletions":0,"files":[".../centos-7.7/ping-ip-O-unparsedlines.json",".../centos-7.7/ping-ip-O-unparsedlines.out","tests/test_ping.py"],"file_stats":[{"name":".../centos-7.7/ping-ip-O-unparsedlines.json","lines_changed":1},{"name":".../centos-7.7/ping-ip-O-unparsedlines.out","lines_changed":27},{"name":"tests/test_ping.py","lines_changed":12}]},"message":"add tests for unparsable lines on linux","epoch":1620420628,"epoch_utc":null},{"commit":"ee3a28528e152c61f05bdf71f264fe38274b4190","merge":"fe1f101 916bcda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 10:03:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 5 10:03:58 2021 -0700","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev\n\n# Conflicts:\n# templates/readme_template","epoch":1620234238,"epoch_utc":null},{"commit":"916bcdae3881fc9c9f9a91c8c901a714cff3e1da","merge":"fb14f54 efb1d3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 10:02:25 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed May 5 10:02:25 2021 -0700","message":"Merge pull request #136 from kellyjonbrazil/master\n\nmerge changes from master","epoch":1620234145,"epoch_utc":null},{"commit":"efb1d3e6b2db920423511a9dcf4c5e5fd9d6af43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 09:23:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 5 09:23:21 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"templates/readme_template","lines_changed":4}]},"message":"add blog title and minor formatting","epoch":1620231801,"epoch_utc":null},{"commit":"4e6ae66bacc014e49c4a9229d10dcc8e95de436c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 09:20:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 5 09:20:47 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting","epoch":1620231647,"epoch_utc":null},{"commit":"5ee88e7b679bc163a1916d560be6ff29f51699e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 09:18:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 5 09:18:45 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":10}]},"message":"add use cases section","epoch":1620231525,"epoch_utc":null},{"commit":"c3b68903cbd898f80438af342195eec7575aafd3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 09:17:11 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 5 09:17:11 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":10}]},"message":"add use cases section","epoch":1620231431,"epoch_utc":null},{"commit":"fe1f1013a74bdf6b4284f11dd59db8ea17e5e5d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 09:16:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 5 09:16:05 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":10}]},"message":"add use cases section","epoch":1620231365,"epoch_utc":null},{"commit":"fb14f5439f00d5eaf08651c552189fd4be7358d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 08:03:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 5 08:03:27 2021 -0700","stats":{"files_changed":4,"insertions":52,"deletions":3,"files":["jc/parsers/ping.py",".../osx-10.14.6/ping-ip-unknown-errors.json",".../osx-10.14.6/ping-ip-unknown-errors.out","tests/test_ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":7},{"name":".../osx-10.14.6/ping-ip-unknown-errors.json","lines_changed":1},{"name":".../osx-10.14.6/ping-ip-unknown-errors.out","lines_changed":35},{"name":"tests/test_ping.py","lines_changed":12}]},"message":"fix and tests for unknown or unparsable errors","epoch":1620227007,"epoch_utc":null},{"commit":"5ca0fc364eb22d583bee5633cdd7183c1d70bb6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 4 19:05:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 4 19:05:20 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/parsers/ping.md"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":1}]},"message":"add unparsed_line to docs","epoch":1620180320,"epoch_utc":null},{"commit":"a1fe7037e5267ec4aced719eff3715085eb35bca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 4 19:04:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 4 19:04:16 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":10}]},"message":"add unparsed_line field if line cannot be parsed","epoch":1620180256,"epoch_utc":null},{"commit":"c2af7d113ed8e8cf9af985c969cf29858a3c26a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 4 15:35:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 4 15:35:47 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["CHANGELOG","docs/parsers/ping.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"docs/parsers/ping.md","lines_changed":2}]},"message":"add ping updates","epoch":1620167747,"epoch_utc":null},{"commit":"ff034e401d5c33efbc3c4bc2f0e386d81eaae7fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 4 15:34:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 4 15:34:45 2021 -0700","stats":{"files_changed":1,"insertions":59,"deletions":43,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":102}]},"message":"use try/except to make parser more resilient against unknown error types","epoch":1620167685,"epoch_utc":null},{"commit":"5abe095beb4b668e5f55fe8c9588677547e4c2a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 3 15:26:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 3 15:26:16 2021 -0700","stats":{"files_changed":1,"insertions":14,"deletions":3,"files":["docs/parsers/ping.md"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":17}]},"message":"update ping docs","epoch":1620080776,"epoch_utc":null},{"commit":"33de5f01e638953c83bb0960dc3550ca4547849b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 3 15:16:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 3 15:16:47 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["jc/__init__.py","setup.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":4},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1620080207,"epoch_utc":null},{"commit":"8ce155d843806be4ad23491b4401e4eda02e2a1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 3 15:16:33 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 3 15:16:33 2021 -0700","stats":{"files_changed":5,"insertions":86,"deletions":23,"files":["CHANGELOG","jc/parsers/ping.py",".../fixtures/osx-10.14.6/ping-ip-unreachable.json","tests/fixtures/osx-10.14.6/ping-ip-unreachable.out","tests/test_ping.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/ping.py","lines_changed":56},{"name":".../fixtures/osx-10.14.6/ping-ip-unreachable.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-unreachable.out","lines_changed":35},{"name":"tests/test_ping.py","lines_changed":14}]},"message":"add support for error replies in v4 ping on osx and bsd","epoch":1620080193,"epoch_utc":null},{"commit":"b921d5ec9583c8f8e992613ae2eaf62165722054","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 30 16:53:52 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 30 16:53:52 2021 -0700","stats":{"files_changed":1,"insertions":105,"deletions":6,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":111}]},"message":"initial support for error replies in bsd/osx","epoch":1619826832,"epoch_utc":null},{"commit":"e21542aaa2aa5f2f287ddc227df41ae47d761332","merge":"d24f9a8 6150aae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 30 10:31:55 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Apr 30 10:31:55 2021 -0700","message":"Merge pull request #135 from kellyjonbrazil/dev\n\nDev clarify packaged binaries in readme","epoch":1619803915,"epoch_utc":null},{"commit":"6150aae0aeabafba26d9f119406b0660d9221cb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 30 10:31:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 30 10:31:02 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"clarify packaged binaries","epoch":1619803862,"epoch_utc":null},{"commit":"f27b35f37104ad2012c3bddde0bd94941af06894","merge":"bd428a9 d24f9a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 15:28:35 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Apr 28 15:28:35 2021 -0700","message":"Merge pull request #131 from kellyjonbrazil/master\n\nsync branches","epoch":1619648915,"epoch_utc":null},{"commit":"d24f9a885d3954035a98a488671486408f509dca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 15:26:52 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 28 15:26:52 2021 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["CONTRIBUTING.md","README.md","templates/readme_template"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2},{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"fix contributing link","epoch":1619648812,"epoch_utc":null},{"commit":"48dd82c8d1b756c4e08d49b8234b8060080dc035","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 15:15:41 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 28 15:15:41 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"trigger page build on github pages","epoch":1619648141,"epoch_utc":null},{"commit":"e57167ad1f240de6ec5fc86c51cfb780535cd783","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 12:23:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 28 12:23:31 2021 -0700","message":"empty commit","epoch":1619637811,"epoch_utc":null},{"commit":"ada91376426ff359c495fb31081404a2cce72b5f","merge":"0c209db bd428a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 11:53:15 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Apr 28 11:53:15 2021 -0700","message":"Merge pull request #130 from kellyjonbrazil/dev\n\nDev link updates","epoch":1619635995,"epoch_utc":null},{"commit":"bd428a9fd75327710dce96f3c95f74ab9d1beaad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 11:52:24 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 28 11:52:24 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"fix link","epoch":1619635944,"epoch_utc":null},{"commit":"934941332f91d9e2cc4e691b154bb5427166ed30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 11:50:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 28 11:50:10 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"templates/readme_template","lines_changed":6}]},"message":"minor link updates","epoch":1619635810,"epoch_utc":null},{"commit":"0c209dbd108638f89a43801126a332379be9ae8b","merge":"92e2252 56e041a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 11:36:05 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Apr 28 11:36:05 2021 -0700","message":"Merge pull request #129 from kellyjonbrazil/dev\n\nDev update readme","epoch":1619634965,"epoch_utc":null},{"commit":"56e041aa260b2daf2f5662fae98645a93137adb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 11:34:51 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 28 11:34:51 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add Practical JSON at the Command Line blog link","epoch":1619634891,"epoch_utc":null},{"commit":"cf9d48582e4e5df6c8498b916a2f9cf036869f3d","merge":"35464bb 92e2252","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 13:17:20 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Apr 26 13:17:20 2021 -0700","message":"Merge pull request #128 from kellyjonbrazil/master\n\nsync branches","epoch":1619468240,"epoch_utc":null},{"commit":"92e2252bee00482bb0eeae3074b107d4c8553e4c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 12:18:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 26 12:18:21 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"fix typo","epoch":1619464701,"epoch_utc":null},{"commit":"fd7861db11e5aaa17c4e7bbce942c0c096116e30","merge":"fcc7e52 35464bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 12:12:02 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Apr 26 12:12:02 2021 -0700","message":"Merge pull request #127 from kellyjonbrazil/dev\n\nDev v1.15.3","epoch":1619464322,"epoch_utc":null},{"commit":"35464bbbfb6b424ef3ee1c855557ada1bf3769fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 12:08:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 26 12:08:10 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"date update","epoch":1619464090,"epoch_utc":null},{"commit":"db8ddd7f0e0c2a8bd3e545619e81d3d3972a4d7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 12:04:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 26 12:04:03 2021 -0700","stats":{"files_changed":5,"insertions":11,"deletions":17,"files":["jc/man/jc.1.gz","jc/parsers/ufw.py","man/jc.1.gz","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/ufw.py","lines_changed":24},{"name":"man/jc.1.gz","lines_changed":null},{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.json","lines_changed":2}]},"message":"fix for scenarios where the default port range didn't always display, or overrode existing port ranges.","epoch":1619463843,"epoch_utc":null},{"commit":"72207c54ee5734e3d2d3d1a063c8daf1edaa8815","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 10:02:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 26 10:02:02 2021 -0700","stats":{"files_changed":3,"insertions":102,"deletions":94,"files":["docs/parsers/ufw_appinfo.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/ufw_appinfo.md","lines_changed":196},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update ufw app info docs to support multiple apps (ufw app info all)","epoch":1619456522,"epoch_utc":null},{"commit":"a683f68003ea64dd5e2c4f06b53a1561ad774f12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 10:00:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 26 10:00:44 2021 -0700","stats":{"files_changed":9,"insertions":285,"deletions":202,"files":["EXAMPLES.md","jc/parsers/ufw_appinfo.py","tests/fixtures/generic/ufw-appinfo-msn.json","tests/fixtures/generic/ufw-appinfo-test.json","tests/fixtures/generic/ufw-appinfo-test2.json","tests/fixtures/generic/ufw-appinfo-test3.json","tests/fixtures/ubuntu-18.04/ufw-appinfo-all.json","tests/fixtures/ubuntu-18.04/ufw-appinfo-all.out","tests/test_ufw_appinfo.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":68},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":345},{"name":"tests/fixtures/generic/ufw-appinfo-msn.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw-appinfo-test.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw-appinfo-test2.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw-appinfo-test3.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-appinfo-all.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ufw-appinfo-all.out","lines_changed":51},{"name":"tests/test_ufw_appinfo.py","lines_changed":14}]},"message":"change schema to a list of dictionaries to support `ufw app info all` use case","epoch":1619456444,"epoch_utc":null},{"commit":"8d2d3db3fa969456342181a226bf54a3f1613542","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 21:10:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 25 21:10:21 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":0,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting","epoch":1619410221,"epoch_utc":null},{"commit":"eca785450d1c72687817d09259fa7cd33376fafc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 21:06:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 25 21:06:47 2021 -0700","stats":{"files_changed":5,"insertions":34,"deletions":13,"files":["CHANGELOG","README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":22},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/readme_template","lines_changed":22}]},"message":"add caveats to readme and manpage","epoch":1619410007,"epoch_utc":null},{"commit":"5b40a97ce417687b4e37f320b8a3f07dd7fd169c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 20:55:43 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 25 20:55:43 2021 -0700","stats":{"files_changed":3,"insertions":13,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/manpage_template","lines_changed":13}]},"message":"add caveats to man page","epoch":1619409343,"epoch_utc":null},{"commit":"66cb4e9bde81b9290c1addaf851de5d80a1b0702","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 20:49:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 25 20:49:35 2021 -0700","stats":{"files_changed":5,"insertions":216,"deletions":234,"files":["EXAMPLES.md","docs/parsers/ufw.md","jc/man/jc.1.gz","jc/parsers/ufw.py","man/jc.1.gz"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":96},{"name":"docs/parsers/ufw.md","lines_changed":226},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/ufw.py","lines_changed":128},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update ufw parser docs","epoch":1619408975,"epoch_utc":null},{"commit":"d1f33645caccdb3a55576081c4d355f997ac033c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 20:40:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 25 20:40:38 2021 -0700","stats":{"files_changed":7,"insertions":26,"deletions":10,"files":["tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw-numbered2.json","tests/fixtures/generic/ufw.json","tests/fixtures/ubuntu-18.04/ufw-numbered.json","tests/fixtures/ubuntu-18.04/ufw-numbered.out","tests/fixtures/ubuntu-18.04/ufw-verbose.json","tests/fixtures/ubuntu-18.04/ufw-verbose.out"],"file_stats":[{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw-numbered2.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-numbered.out","lines_changed":16},{"name":"tests/fixtures/ubuntu-18.04/ufw-verbose.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-verbose.out","lines_changed":10}]},"message":"update ufw tests","epoch":1619408438,"epoch_utc":null},{"commit":"5eff65c326675a449afd05a2af0a6c9bcf7b5e23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 20:10:52 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 25 20:10:52 2021 -0700","stats":{"files_changed":1,"insertions":85,"deletions":268,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":353}]},"message":"update schema to support port lists and port range lists. Also support other transports than tcp and udp","epoch":1619406652,"epoch_utc":null},{"commit":"929c38715d87bf9dd689507d319c22b90871ae1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 12:53:29 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 24 12:53:29 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"formatting","epoch":1619294009,"epoch_utc":null},{"commit":"8c91a7b7601a967cd9d8096433ffd4ad62b65ceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 12:52:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 24 12:52:26 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":4}]},"message":"formatting","epoch":1619293946,"epoch_utc":null},{"commit":"14289ecd6c022ad204444dff5b5e48f6024a5d0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 12:50:40 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 24 12:50:40 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":4}]},"message":"more timezone info","epoch":1619293840,"epoch_utc":null},{"commit":"b833c44783eb32f2fad24ca205b5b7eab854750f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 12:47:24 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 24 12:47:24 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add ufw-appinfo parser","epoch":1619293644,"epoch_utc":null},{"commit":"e23aa818eaa6d1a389ddef7dd2ad8f62b9f6ff25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 12:47:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 24 12:47:12 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":5}]},"message":"add tests section and timezone info","epoch":1619293632,"epoch_utc":null},{"commit":"473d919c1350a8dc34d233033a5a7d12c928e42d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 10:58:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 24 10:58:31 2021 -0700","stats":{"files_changed":4,"insertions":32,"deletions":0,"files":["runtests.sh","tests/fixtures/generic/ufw-numbered2.json","tests/fixtures/generic/ufw-numbered2.out","tests/test_ufw.py"],"file_stats":[{"name":"runtests.sh","lines_changed":1},{"name":"tests/fixtures/generic/ufw-numbered2.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-numbered2.out","lines_changed":18},{"name":"tests/test_ufw.py","lines_changed":12}]},"message":"add another ufw test sample","epoch":1619287111,"epoch_utc":null},{"commit":"9f925d6ac989a4f21a8c00c84fcf97dfb141e8c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 10:22:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 24 10:22:37 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update","epoch":1619284957,"epoch_utc":null},{"commit":"f6ca32b3a31f314fa0b31d9e8b5494491b928f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 10:22:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 24 10:22:19 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/ufw.md","jc/parsers/ufw.py"],"file_stats":[{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"jc/parsers/ufw.py","lines_changed":2}]},"message":"update ufw docs with a note on lists of ports","epoch":1619284939,"epoch_utc":null},{"commit":"4cbe84c3d6ac8a3b594feb525460f2a68f5d62b2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 16:15:04 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 23 16:15:04 2021 -0700","stats":{"files_changed":9,"insertions":110,"deletions":0,"files":["tests/fixtures/generic/ufw-appinfo-msn.json","tests/fixtures/generic/ufw-appinfo-msn.out","tests/fixtures/generic/ufw-appinfo-test.json","tests/fixtures/generic/ufw-appinfo-test.out","tests/fixtures/generic/ufw-appinfo-test2.json","tests/fixtures/generic/ufw-appinfo-test2.out","tests/fixtures/generic/ufw-appinfo-test3.json","tests/fixtures/generic/ufw-appinfo-test3.out","tests/test_ufw_appinfo.py"],"file_stats":[{"name":"tests/fixtures/generic/ufw-appinfo-msn.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-appinfo-msn.out","lines_changed":9},{"name":"tests/fixtures/generic/ufw-appinfo-test.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-appinfo-test.out","lines_changed":9},{"name":"tests/fixtures/generic/ufw-appinfo-test2.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-appinfo-test2.out","lines_changed":9},{"name":"tests/fixtures/generic/ufw-appinfo-test3.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-appinfo-test3.out","lines_changed":9},{"name":"tests/test_ufw_appinfo.py","lines_changed":70}]},"message":"add ufw-appinfo tests","epoch":1619219704,"epoch_utc":null},{"commit":"ffac5bf9d381305daa86e546f8570be092e5ff34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 16:14:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 23 16:14:53 2021 -0700","stats":{"files_changed":3,"insertions":12,"deletions":12,"files":["docs/parsers/ufw.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/ufw.md","lines_changed":24},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update","epoch":1619219693,"epoch_utc":null},{"commit":"9aa424f9f8c7e4e0dc29e2c58dac481098beba7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 16:14:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 23 16:14:39 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":12}]},"message":"fix ufw example","epoch":1619219679,"epoch_utc":null},{"commit":"0a8495c68e427e39bbda957dd933fa2a461092e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 16:14:25 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 23 16:14:25 2021 -0700","stats":{"files_changed":1,"insertions":12,"deletions":15,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":27}]},"message":"update docs","epoch":1619219665,"epoch_utc":null},{"commit":"6aea066cf024f92adf4b94eebc7d51430c22332c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 16:14:11 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 23 16:14:11 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/parsers/ufw_appinfo.py","lines_changed":6}]},"message":"make normalized list appear only when data exists. set magic commands","epoch":1619219651,"epoch_utc":null},{"commit":"ff3c2d809ec3ea6e556c302909a228ee670578c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 09:57:41 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 23 09:57:41 2021 -0700","stats":{"files_changed":6,"insertions":176,"deletions":25,"files":["EXAMPLES.md","README.md","docs/parsers/ufw_appinfo.md","jc/man/jc.1.gz","jc/parsers/ufw_appinfo.py","man/jc.1.gz"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":39},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":58},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":103},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add ufw-appinfo to docs","epoch":1619197061,"epoch_utc":null},{"commit":"145059fc8946b7026184139baea143c2869bc4e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 09:04:11 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 23 09:04:11 2021 -0700","stats":{"files_changed":1,"insertions":20,"deletions":8,"files":["jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/parsers/ufw_appinfo.py","lines_changed":28}]},"message":"clean up output if sections are blank","epoch":1619193851,"epoch_utc":null},{"commit":"20e5c19de448c1b979497817c887d8d2d6487839","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 08:30:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 23 08:30:34 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/parsers/ufw_appinfo.py","lines_changed":3}]},"message":"fix key error if tcp or udp don't exist","epoch":1619191834,"epoch_utc":null},{"commit":"4c98fd4b877c54e1cf7d285a29e178321be12f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 08:26:00 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 23 08:26:00 2021 -0700","stats":{"files_changed":2,"insertions":101,"deletions":1,"files":["docs/parsers/ufw_appinfo.md","jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"docs/parsers/ufw_appinfo.md","lines_changed":100},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":2}]},"message":"doc update","epoch":1619191560,"epoch_utc":null},{"commit":"125e54213e8d4dcfe2e3271456af80b3f79c0544","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 08:13:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 23 08:13:53 2021 -0700","stats":{"files_changed":1,"insertions":105,"deletions":48,"files":["jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/parsers/ufw_appinfo.py","lines_changed":153}]},"message":"update schema and add normalized fields","epoch":1619190833,"epoch_utc":null},{"commit":"0152e0665f87833250561d743144af35416992f8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 22 16:52:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 22 16:52:01 2021 -0700","stats":{"files_changed":2,"insertions":215,"deletions":0,"files":["jc/cli.py","jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":214}]},"message":"initial working ufw-appinfo parser","epoch":1619135521,"epoch_utc":null},{"commit":"0679bcbc560ea3575555d8546afdd4e2474d05d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 22 08:33:57 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 22 08:33:57 2021 -0700","stats":{"files_changed":5,"insertions":31,"deletions":5,"files":["tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json","tests/fixtures/ubuntu-18.04/ufw-numbered.json","tests/fixtures/ubuntu-18.04/ufw-verbose.json","tests/test_ufw.py"],"file_stats":[{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-numbered.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ufw-verbose.json","lines_changed":1},{"name":"tests/test_ufw.py","lines_changed":30}]},"message":"fix ufw tests","epoch":1619105637,"epoch_utc":null},{"commit":"5500648aa0886ea5089856e5b33d7c8ebd78d5b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 22 08:33:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 22 08:33:45 2021 -0700","stats":{"files_changed":3,"insertions":46,"deletions":46,"files":["EXAMPLES.md","docs/parsers/ufw.md","jc/parsers/ufw.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":20},{"name":"docs/parsers/ufw.md","lines_changed":36},{"name":"jc/parsers/ufw.py","lines_changed":36}]},"message":"fix ufw docs for int conversions and service behavior","epoch":1619105625,"epoch_utc":null},{"commit":"bb50caad4dfaefa309e747fd05b650186c5a80f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 22 08:16:42 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 22 08:16:42 2021 -0700","stats":{"files_changed":3,"insertions":31,"deletions":4,"files":["jc/parsers/ufw.py","tests/fixtures/ubuntu-18.04/ufw-numbered.out","tests/fixtures/ubuntu-18.04/ufw-verbose.out"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":10},{"name":"tests/fixtures/ubuntu-18.04/ufw-numbered.out","lines_changed":11},{"name":"tests/fixtures/ubuntu-18.04/ufw-verbose.out","lines_changed":14}]},"message":"fix prefix int conversions. don't reset _transport if service is really a list of ports","epoch":1619104602,"epoch_utc":null},{"commit":"7eef5d94d591a3f70f6638b1b30f952a3bf35f9d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 16:55:25 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 21 16:55:25 2021 -0700","stats":{"files_changed":3,"insertions":5,"deletions":0,"files":["EXAMPLES.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":5},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"ufw doc update","epoch":1619049325,"epoch_utc":null},{"commit":"74f623f8d607c050db8f62ea4996c4e6aae43268","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 16:55:14 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 21 16:55:14 2021 -0700","stats":{"files_changed":5,"insertions":43,"deletions":11,"files":["docs/parsers/ufw.md","jc/parsers/ufw.py","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json","tests/fixtures/generic/ufw.out"],"file_stats":[{"name":"docs/parsers/ufw.md","lines_changed":13},{"name":"jc/parsers/ufw.py","lines_changed":25},{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.out","lines_changed":12}]},"message":"add support for rule comments and LIMIT and REJECT actions","epoch":1619049314,"epoch_utc":null},{"commit":"f638aca092475bbae14fed765e90435c093fcb8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 10:10:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 21 10:10:36 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add deb package name fix","epoch":1619025036,"epoch_utc":null},{"commit":"da35eaf80ad4f11e7482fc4734db4b2265e50548","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 09:10:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 21 09:10:10 2021 -0700","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["docs/parsers/ufw.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"formatting","epoch":1619021410,"epoch_utc":null},{"commit":"ade0e8e8fc18ff9a0dd406206a85238f1f5a739d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 09:09:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 21 09:09:23 2021 -0700","stats":{"files_changed":7,"insertions":107,"deletions":0,"files":["tests/fixtures/generic/ufw-inactive.json","tests/fixtures/generic/ufw-inactive.out","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw-numbered.out","tests/fixtures/generic/ufw.json","tests/fixtures/generic/ufw.out","tests/test_ufw.py"],"file_stats":[{"name":"tests/fixtures/generic/ufw-inactive.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-inactive.out","lines_changed":1},{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-numbered.out","lines_changed":23},{"name":"tests/fixtures/generic/ufw.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw.out","lines_changed":22},{"name":"tests/test_ufw.py","lines_changed":58}]},"message":"add ufw tests","epoch":1619021363,"epoch_utc":null},{"commit":"90076090f05a1f03e2fbff307418ee18d7d046ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 09:09:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 21 09:09:09 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":5,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":12}]},"message":"fix int conversions if 'rules' key does not exist","epoch":1619021349,"epoch_utc":null},{"commit":"23635def8b654097178f73ed1b57fc50965142d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 07:51:32 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 21 07:51:32 2021 -0700","stats":{"files_changed":6,"insertions":306,"deletions":4,"files":["README.md","docs/parsers/ping.md","docs/parsers/ufw.md","docs/utils.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"docs/parsers/ping.md","lines_changed":1},{"name":"docs/parsers/ufw.md","lines_changed":302},{"name":"docs/utils.md","lines_changed":4},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add ufw to docs","epoch":1619016692,"epoch_utc":null},{"commit":"4eeec087bde98f90ab8425473d1fbeee6834852e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 07:49:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 21 07:49:49 2021 -0700","stats":{"files_changed":1,"insertions":115,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":115}]},"message":"add ufw example","epoch":1619016589,"epoch_utc":null},{"commit":"733196103897a1d84d242324ddcf96e783320329","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 07:41:32 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 21 07:41:32 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":4}]},"message":"update docs with new examples that have `to_service` always existing.","epoch":1619016092,"epoch_utc":null},{"commit":"e4acb3d5b70a7d75741ef3e35cd6750d1362a80f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 07:08:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 21 07:08:50 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":4}]},"message":"always make to/from_service None if ports are assigned","epoch":1619014130,"epoch_utc":null},{"commit":"c60549a9947d5684bbfa58223bfbcfc40a3ed479","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 22:08:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 20 22:08:12 2021 -0700","stats":{"files_changed":1,"insertions":29,"deletions":29,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":58}]},"message":"change field name from to/from_subnet to to/from_ip_prefix","epoch":1618981692,"epoch_utc":null},{"commit":"d46fc8bbfa15a80a1af6c64f70230f858c215223","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 21:58:52 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 20 21:58:52 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":9}]},"message":"set to/from_transport to None if to/from_service is set","epoch":1618981132,"epoch_utc":null},{"commit":"b133d1f90d49362594508d8c475663754f0e7675","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 21:52:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 20 21:52:39 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":6}]},"message":"strip interface value","epoch":1618980759,"epoch_utc":null},{"commit":"5be615a97e7c145c8351764234ac591028560c34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 21:45:13 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 20 21:45:13 2021 -0700","stats":{"files_changed":1,"insertions":219,"deletions":9,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":228}]},"message":"add examples for docs","epoch":1618980313,"epoch_utc":null},{"commit":"ea1d820f96321ddf4084b54ee2fdf397295beb21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 21:29:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 20 21:29:49 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":11}]},"message":"convert integer fields","epoch":1618979389,"epoch_utc":null},{"commit":"47e262cf7200b02ff0af97a70ffa6bec286c8f39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 21:21:42 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 20 21:21:42 2021 -0700","stats":{"files_changed":1,"insertions":59,"deletions":14,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":73}]},"message":"clean up fields","epoch":1618978902,"epoch_utc":null},{"commit":"eec673be9092e382694aa02682564510ce4e7f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 20:32:59 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 20 20:32:59 2021 -0700","stats":{"files_changed":1,"insertions":88,"deletions":3,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":91}]},"message":"working raw parser","epoch":1618975979,"epoch_utc":null},{"commit":"9a0fb2a7c87e6fde0cc0d84fa8a1f131e28ea732","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 14:17:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 20 14:17:01 2021 -0700","stats":{"files_changed":1,"insertions":157,"deletions":0,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":157}]},"message":"parse major sections","epoch":1618953421,"epoch_utc":null},{"commit":"b5145d6c14d7a51e7cfdebe126c9689dc90f7b27","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 13:39:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 20 13:39:12 2021 -0700","stats":{"files_changed":4,"insertions":8,"deletions":4,"files":["CHANGELOG","jc/__init__.py","jc/cli.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":6},{"name":"jc/cli.py","lines_changed":1},{"name":"setup.py","lines_changed":2}]},"message":"version bump to v1.15.3","epoch":1618951152,"epoch_utc":null},{"commit":"9747ca414dfb8218389c7b2199a080edabc2a184","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 10:50:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 20 10:50:20 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":11}]},"message":"minor optimization to convert_to_int(). No longer runs through convert_to_float(), but uses standard float() function.","epoch":1618941020,"epoch_utc":null},{"commit":"312d465b61a15592cc70d3734ad747b9a2be10ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 19 14:18:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 19 14:18:12 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":2}]},"message":"update link","epoch":1618867092,"epoch_utc":null},{"commit":"7dcf87d24ad40eba6ba98de2b4b2bf177a76cd71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 19 13:12:55 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 19 13:12:55 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":1}]},"message":"formatting","epoch":1618863175,"epoch_utc":null},{"commit":"cf3cfd16a9de05f30303b5952fbe609cde842d2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 19 09:59:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 19 09:59:58 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":6}]},"message":"rename tests","epoch":1618851598,"epoch_utc":null},{"commit":"fcc7e5294973d1a18943fa2ce2e836b0fe757d95","merge":"6c83846 3ab9d48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 17:28:27 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Apr 18 17:28:27 2021 -0700","message":"Merge pull request #123 from kellyjonbrazil/dev\n\nDev v1.15.2","epoch":1618792107,"epoch_utc":null},{"commit":"3ab9d480149a692510ab9e0ac8e745b674683e3d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 17:24:42 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 18 17:24:42 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"update changelog","epoch":1618791882,"epoch_utc":null},{"commit":"7eddf41c5f6310264359cd6d78bdfa4b65af7d06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 17:21:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 18 17:21:08 2021 -0700","stats":{"files_changed":11,"insertions":96,"deletions":9,"files":["jc/man/jc.1.gz","jc/utils.py","man/jc.1.gz","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/df.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/free-h.json","tests/test_utils.py"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/utils.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null},{"name":"tests/fixtures/centos-7.7/df-h.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/df.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/free-h.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/df-h.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/df-h.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/free-h.json","lines_changed":2},{"name":"tests/test_utils.py","lines_changed":89}]},"message":"dont round up int conversions and fix tests","epoch":1618791668,"epoch_utc":null},{"commit":"27a196c93862bd737603cfe402b35529eb412954","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 16:42:42 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 18 16:42:42 2021 -0700","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update","epoch":1618789362,"epoch_utc":null},{"commit":"e4324f05fb6f89c34fa1567e70d8636457623edb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 16:42:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 18 16:42:34 2021 -0700","stats":{"files_changed":2,"insertions":14,"deletions":14,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":14},{"name":"jc/parsers/dig.py","lines_changed":14}]},"message":"fix indentation in doc","epoch":1618789354,"epoch_utc":null},{"commit":"d36b332bd78b5bf5979cdc59b31da08d8e4104d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 16:33:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 18 16:33:47 2021 -0700","stats":{"files_changed":53,"insertions":196,"deletions":274,"files":["docs/parsers/systemctl_lj.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/wc.md","docs/parsers/who.md","docs/utils.md","jc/parsers/acpi.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/hash.py","jc/parsers/hciconfig.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl_lj.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/utils.py"],"file_stats":[{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":2},{"name":"jc/parsers/acpi.py","lines_changed":21},{"name":"jc/parsers/airport_s.py","lines_changed":9},{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/blkid.py","lines_changed":4},{"name":"jc/parsers/cksum.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":4},{"name":"jc/parsers/dir.py","lines_changed":4},{"name":"jc/parsers/dmidecode.py","lines_changed":4},{"name":"jc/parsers/du.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":4},{"name":"jc/parsers/fstab.py","lines_changed":4},{"name":"jc/parsers/group.py","lines_changed":4},{"name":"jc/parsers/hash.py","lines_changed":4},{"name":"jc/parsers/hciconfig.py","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":4},{"name":"jc/parsers/iptables.py","lines_changed":4},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4},{"name":"jc/parsers/lsblk.py","lines_changed":13},{"name":"jc/parsers/lsmod.py","lines_changed":4},{"name":"jc/parsers/lsof.py","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":16},{"name":"jc/parsers/ntpq.py","lines_changed":10},{"name":"jc/parsers/passwd.py","lines_changed":4},{"name":"jc/parsers/ps.py","lines_changed":13},{"name":"jc/parsers/route.py","lines_changed":4},{"name":"jc/parsers/rpm_qi.py","lines_changed":4},{"name":"jc/parsers/shadow.py","lines_changed":4},{"name":"jc/parsers/ss.py","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"jc/parsers/systemctl_lj.py","lines_changed":13},{"name":"jc/parsers/systeminfo.py","lines_changed":6},{"name":"jc/parsers/time.py","lines_changed":32},{"name":"jc/parsers/timedatectl.py","lines_changed":8},{"name":"jc/parsers/tracepath.py","lines_changed":42},{"name":"jc/parsers/traceroute.py","lines_changed":40},{"name":"jc/parsers/upower.py","lines_changed":24},{"name":"jc/parsers/uptime.py","lines_changed":39},{"name":"jc/parsers/w.py","lines_changed":4},{"name":"jc/parsers/wc.py","lines_changed":12},{"name":"jc/parsers/who.py","lines_changed":12},{"name":"jc/utils.py","lines_changed":36}]},"message":"use jc.utils for conversions","epoch":1618788827,"epoch_utc":null},{"commit":"1f034826f69c461495f7a302cc8fe35e3052e72f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 13:01:25 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 18 13:01:25 2021 -0700","stats":{"files_changed":42,"insertions":94,"deletions":185,"files":["docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","tests/fixtures/centos-7.7/ls-alh.json","tests/fixtures/centos-7.7/lsof-sudo.json","tests/fixtures/centos-7.7/lsof.json","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/ubuntu-18.04/ls-alh.json","tests/fixtures/ubuntu-18.04/lsof-sudo.json","tests/fixtures/ubuntu-18.04/lsof.json"],"file_stats":[{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":3},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":10},{"name":"jc/parsers/jobs.py","lines_changed":8},{"name":"jc/parsers/last.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":9},{"name":"jc/parsers/lsblk.py","lines_changed":14},{"name":"jc/parsers/lsmod.py","lines_changed":9},{"name":"jc/parsers/lsof.py","lines_changed":10},{"name":"jc/parsers/netstat.py","lines_changed":37},{"name":"jc/parsers/ntpq.py","lines_changed":12},{"name":"jc/parsers/passwd.py","lines_changed":8},{"name":"jc/parsers/ping.py","lines_changed":34},{"name":"jc/parsers/ps.py","lines_changed":15},{"name":"jc/parsers/route.py","lines_changed":8},{"name":"jc/parsers/rpm_qi.py","lines_changed":9},{"name":"jc/parsers/shadow.py","lines_changed":8},{"name":"jc/parsers/ss.py","lines_changed":22},{"name":"jc/parsers/stat.py","lines_changed":11},{"name":"tests/fixtures/centos-7.7/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/lsof-sudo.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/lsof.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/lsof-sudo.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/lsof.json","lines_changed":2}]},"message":"use jc.utils for conversions","epoch":1618776085,"epoch_utc":null},{"commit":"246c707c98d3128b4e38f5c4b23a1e0ceedc0b0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 11:46:42 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 18 11:46:42 2021 -0700","stats":{"files_changed":46,"insertions":190,"deletions":196,"files":["CHANGELOG","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/df.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/hash.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/utils.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/hash.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/utils.py","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/osx-10.11.6/df-h.json","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/free-h.json"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":48},{"name":"jc/parsers/acpi.py","lines_changed":22},{"name":"jc/parsers/airport.py","lines_changed":7},{"name":"jc/parsers/airport_s.py","lines_changed":12},{"name":"jc/parsers/arp.py","lines_changed":5},{"name":"jc/parsers/blkid.py","lines_changed":7},{"name":"jc/parsers/cksum.py","lines_changed":8},{"name":"jc/parsers/df.py","lines_changed":14},{"name":"jc/parsers/dig.py","lines_changed":50},{"name":"jc/parsers/dir.py","lines_changed":11},{"name":"jc/parsers/dmidecode.py","lines_changed":8},{"name":"jc/parsers/du.py","lines_changed":8},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":8},{"name":"jc/parsers/fstab.py","lines_changed":8},{"name":"jc/parsers/group.py","lines_changed":8},{"name":"jc/parsers/hash.py","lines_changed":9},{"name":"jc/parsers/hciconfig.py","lines_changed":8},{"name":"jc/parsers/history.py","lines_changed":6},{"name":"jc/parsers/id.py","lines_changed":17},{"name":"jc/parsers/ifconfig.py","lines_changed":11},{"name":"jc/utils.py","lines_changed":62},{"name":"tests/fixtures/centos-7.7/df-h.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/free-h.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/df-h.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/df-h.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/df-h.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/free-h.json","lines_changed":2}]},"message":"use jc.utils conversions","epoch":1618771602,"epoch_utc":null},{"commit":"b5d8968144e76090870f8563dc1bce910fba668c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 17 17:22:59 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 17 17:22:59 2021 -0700","stats":{"files_changed":1,"insertions":19,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":19}]},"message":"add convert_to_int function","epoch":1618705379,"epoch_utc":null},{"commit":"f7b9fbefdde6973077573fec02342eb9946789c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 17 17:22:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 17 17:22:44 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add query_size info for dig","epoch":1618705364,"epoch_utc":null},{"commit":"b1fc4533833ca25f59869bfec8ac114bf49c7847","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 17 17:22:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 17 17:22:30 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2}]},"message":"fix _IfconfigParser name","epoch":1618705350,"epoch_utc":null},{"commit":"7581c8d0f4262fc6a05240bb21ffe533b153f6e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 17 17:07:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 17 17:07:20 2021 -0700","stats":{"files_changed":3,"insertions":45,"deletions":32,"files":["docs/parsers/dig.md","jc/parsers/dig.py","tests/fixtures/generic/dig-edns3.json"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":74},{"name":"tests/fixtures/generic/dig-edns3.json","lines_changed":2}]},"message":"add query_size field. handle user-specified dig output better - especially when querying dnssec","epoch":1618704440,"epoch_utc":null},{"commit":"32bf8ad6f4fff83fdfd83d66c1ba8f1af5a65a90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 17 15:02:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 17 15:02:45 2021 -0700","stats":{"files_changed":4,"insertions":52,"deletions":24,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"EXAMPLES.md","lines_changed":10},{"name":"docs/parsers/dig.md","lines_changed":32},{"name":"jc/parsers/dig.py","lines_changed":32}]},"message":"update dig docs","epoch":1618696965,"epoch_utc":null},{"commit":"b083bcc10fa1105fc09ce8d2c3297aa5575c9d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:30:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 16 16:30:17 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update man page","epoch":1618615817,"epoch_utc":null},{"commit":"4f6fdd120d23468270c1d7111e4ef71b87759a1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:30:04 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 16 16:30:04 2021 -0700","stats":{"files_changed":2,"insertions":134,"deletions":100,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":117},{"name":"jc/__init__.py","lines_changed":117}]},"message":"use dig as example","epoch":1618615804,"epoch_utc":null},{"commit":"eb0038be2490053d32803d30e1c3d4d34509d130","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:29:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 16 16:29:44 2021 -0700","stats":{"files_changed":1,"insertions":40,"deletions":19,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":59}]},"message":"update dig examples","epoch":1618615784,"epoch_utc":null},{"commit":"7ecdf819fa37c38ae6159ad8e7bc973ee4f34559","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:29:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 16 16:29:27 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":84,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":42},{"name":"templates/readme_template","lines_changed":42}]},"message":"remove dig example from readme,","epoch":1618615767,"epoch_utc":null},{"commit":"c6aa4d083550d25bcb621cad524047cfd6a08217","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:19:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 16 16:19:20 2021 -0700","stats":{"files_changed":6,"insertions":252,"deletions":317,"files":["README.md","docs/parsers/dig.md","jc/man/jc.1.gz","jc/parsers/dig.py","man/jc.1.gz","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":84},{"name":"docs/parsers/dig.md","lines_changed":313},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/dig.py","lines_changed":88},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/readme_template","lines_changed":84}]},"message":"update docs with new dig parser examples","epoch":1618615160,"epoch_utc":null},{"commit":"7c584b89a6e6b924d53d50103b97f0c2405c33b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:04:06 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 16 16:04:06 2021 -0700","stats":{"files_changed":15,"insertions":352,"deletions":52,"files":["jc/parsers/dig.py","tests/fixtures/generic/dig-additional.json","tests/fixtures/generic/dig-additional.out","tests/fixtures/generic/dig-additional2.json","tests/fixtures/generic/dig-additional2.out","tests/fixtures/generic/dig-additional3.json","tests/fixtures/generic/dig-additional3.out","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/generic/dig-edns.json","tests/fixtures/generic/dig-edns.out","tests/fixtures/generic/dig-edns2.json","tests/fixtures/generic/dig-edns2.out","tests/fixtures/generic/dig-edns3.json","tests/fixtures/generic/dig-edns3.out","tests/test_dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":123},{"name":"tests/fixtures/generic/dig-additional.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-additional.out","lines_changed":32},{"name":"tests/fixtures/generic/dig-additional2.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-additional2.out","lines_changed":34},{"name":"tests/fixtures/generic/dig-additional3.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-additional3.out","lines_changed":41},{"name":"tests/fixtures/generic/dig-answer-spaces.json","lines_changed":2},{"name":"tests/fixtures/generic/dig-edns.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-edns.out","lines_changed":20},{"name":"tests/fixtures/generic/dig-edns2.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-edns2.out","lines_changed":38},{"name":"tests/fixtures/generic/dig-edns3.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-edns3.out","lines_changed":34},{"name":"tests/test_dig.py","lines_changed":74}]},"message":"add additional section","epoch":1618614246,"epoch_utc":null},{"commit":"c166c0bfdafa922f57f021fa4d16e467fca02d58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 15:22:22 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 16 15:22:22 2021 -0700","stats":{"files_changed":14,"insertions":55,"deletions":21,"files":["jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":50},{"name":"tests/fixtures/centos-7.7/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig-x.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig.json","lines_changed":2},{"name":"tests/fixtures/generic/dig-answer-spaces.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-x.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig.json","lines_changed":2}]},"message":"add opt_pseudosection section to output and fix existing tests","epoch":1618611742,"epoch_utc":null},{"commit":"a8dd3f7802bfe8fd3ffbedf89af45ddc580ee78d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 13:11:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 16 13:11:02 2021 -0700","stats":{"files_changed":5,"insertions":54,"deletions":281,"files":["CHANGELOG","jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-axfr.json"],"file_stats":[{"name":"CHANGELOG","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":325},{"name":"tests/fixtures/centos-7.7/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-axfr.json","lines_changed":2}]},"message":"working dig axfr fixes","epoch":1618603862,"epoch_utc":null},{"commit":"3b0e2f03f3b11398ff57b1daed542faaf0b80a62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 08:46:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 16 08:46:20 2021 -0700","stats":{"files_changed":2,"insertions":24,"deletions":23,"files":["jc/cli.py","templates/manpage_template"],"file_stats":[{"name":"jc/cli.py","lines_changed":21},{"name":"templates/manpage_template","lines_changed":26}]},"message":"clean up examples","epoch":1618587980,"epoch_utc":null},{"commit":"8390ae48c88ab1c7d5acbf40c0e60606953817bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 15 16:53:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 15 16:53:03 2021 -0700","stats":{"files_changed":7,"insertions":8,"deletions":8,"files":["jc/parsers/dig.py","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":4},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig.json","lines_changed":2}]},"message":"fix server entry when IPv6 address is in value (maxsplit on colons)","epoch":1618530783,"epoch_utc":null},{"commit":"2db82c0a7e19d596c876ede8a8ff106aaa733ee5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 20:43:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 14 20:43:58 2021 -0700","stats":{"files_changed":1,"insertions":66,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":66}]},"message":"add systeminfo example","epoch":1618458238,"epoch_utc":null},{"commit":"61479540756704f10853233300ceae8f954a8a95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 20:39:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 14 20:39:35 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":0,"files":["tests/test_systeminfo.py","tests/test_utils.py"],"file_stats":[{"name":"tests/test_systeminfo.py","lines_changed":1},{"name":"tests/test_utils.py","lines_changed":4}]},"message":"update tests","epoch":1618457975,"epoch_utc":null},{"commit":"691df271fcfe057ae4b75ad40869e23deb37b886","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 20:30:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 14 20:30:31 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":1,"files":["docs/parsers/systeminfo.md","jc/man/jc.1.gz","jc/parsers/systeminfo.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/systeminfo.py","lines_changed":1},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add info docstring","epoch":1618457431,"epoch_utc":null},{"commit":"89f52b95f7055da9d7b5fa8dce0923d4c3435bd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 20:20:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 14 20:20:46 2021 -0700","stats":{"files_changed":13,"insertions":467,"deletions":821,"files":["README.md","docs/parsers/systeminfo.md","jc/man/jc.1.gz","jc/parsers/systeminfo.py","jc/utils.py","man/jc.1.gz",".../windows/windows-10/systeminfo-hyperv-utc.json",".../windows/windows-10/systeminfo-hyperv-utc.out",".../windows/windows-10/systeminfo-hyperv.json","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-10/systeminfo.out",".../windows/windows-2012r2/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/systeminfo.md","lines_changed":290},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/systeminfo.py","lines_changed":361},{"name":"jc/utils.py","lines_changed":5},{"name":"man/jc.1.gz","lines_changed":null},{"name":".../windows/windows-10/systeminfo-hyperv-utc.json","lines_changed":1},{"name":".../windows/windows-10/systeminfo-hyperv-utc.out","lines_changed":79},{"name":".../windows/windows-10/systeminfo-hyperv.json","lines_changed":112},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":57},{"name":"tests/fixtures/windows/windows-10/systeminfo.out","lines_changed":1},{"name":".../windows/windows-2012r2/systeminfo.json","lines_changed":55},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":326}]},"message":"update systeminfo parser with updated timestamps, normalized blank fields, and new doc style","epoch":1618456846,"epoch_utc":null},{"commit":"146acc1bf69c402e38c2f1bc842b84e6cff7e2cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 16:46:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 14 16:46:16 2021 -0700","stats":{"files_changed":1,"insertions":23,"deletions":29,"files":["jc/parsers/systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":52}]},"message":"rename functions to make them private","epoch":1618443976,"epoch_utc":null},{"commit":"c4a345f59aa090336b4e80f181493cd5bc2c17c5","merge":"dfd2703 325fab2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 16:39:44 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Apr 14 16:39:44 2021 -0700","message":"Merge pull request #106 from jon-rd/j/systeminfo\n\nAdd windows systeminfo command parser","epoch":1618443584,"epoch_utc":null},{"commit":"dfd2703f75b907ba865fff266d0742d8931bc2d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 16:39:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 14 16:39:05 2021 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"bump dev to v1.15.2","epoch":1618443545,"epoch_utc":null},{"commit":"325fab2de7b8a4bfc452ab8d3cf333d47fdf4989","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Wed Apr 14 11:52:13 2021 -0500","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","commit_by_date":"Wed Apr 14 11:52:13 2021 -0500","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":10}]},"message":"update documentation for parsed structures","epoch":1618426333,"epoch_utc":null},{"commit":"f3d00cf38ad15aeda7eaa5644ebc30ff33de6a29","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Wed Apr 14 09:06:14 2021 -0500","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","commit_by_date":"Wed Apr 14 11:38:50 2021 -0500","stats":{"files_changed":5,"insertions":56,"deletions":48,"files":["jc/parsers/systeminfo.py",".../windows/windows-10/systeminfo-hyperv.json","tests/fixtures/windows/windows-10/systeminfo.json",".../windows/windows-2012r2/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":48},{"name":".../windows/windows-10/systeminfo-hyperv.json","lines_changed":14},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":14},{"name":".../windows/windows-2012r2/systeminfo.json","lines_changed":14},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":14}]},"message":"append mb to memory key names; adjust expected timestamps to utc tz","epoch":1618416374,"epoch_utc":null},{"commit":"14838f7f5d780896f1318cac2c3f34d249a158d4","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Wed Apr 14 08:59:17 2021 -0500","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","commit_by_date":"Wed Apr 14 11:38:50 2021 -0500","stats":{"files_changed":9,"insertions":956,"deletions":116,"files":["jc/parsers/systeminfo.py","jc/utils.py",".../windows/windows-10/systeminfo-hyperv.json",".../windows/windows-10/systeminfo-hyperv.out","tests/fixtures/windows/windows-10/systeminfo.json",".../windows/windows-2012r2/systeminfo.json",".../fixtures/windows/windows-2012r2/systeminfo.out","tests/fixtures/windows/windows-7/systeminfo.json","tests/test_systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":357},{"name":"jc/utils.py","lines_changed":1},{"name":".../windows/windows-10/systeminfo-hyperv.json","lines_changed":111},{"name":".../windows/windows-10/systeminfo-hyperv.out","lines_changed":79},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":43},{"name":".../windows/windows-2012r2/systeminfo.json","lines_changed":54},{"name":".../fixtures/windows/windows-2012r2/systeminfo.out","lines_changed":45},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":311},{"name":"tests/test_systeminfo.py","lines_changed":71}]},"message":"update schema with nic, hyperv, and process changes","epoch":1618415957,"epoch_utc":null},{"commit":"af74047b81776c2ea32d82f9145ab60c346c8203","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Mon Apr 5 09:32:04 2021 -0500","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","commit_by_date":"Wed Apr 14 11:38:50 2021 -0500","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":8}]},"message":"update schema based on processor/hotfix changes","epoch":1617640324,"epoch_utc":null},{"commit":"660c59129cf4ba7889fb3c6fbafd9dd9b479ccd9","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Mon Apr 5 09:29:42 2021 -0500","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","commit_by_date":"Wed Apr 14 11:38:50 2021 -0500","stats":{"files_changed":3,"insertions":41,"deletions":9,"files":["jc/parsers/systeminfo.py","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":42},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":4},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":4}]},"message":"Add parsing of processors/hotfixs","epoch":1617640182,"epoch_utc":null},{"commit":"89a88e186ed71d84ea802cf08ab756b49cee3225","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Thu Mar 25 16:58:54 2021 -0500","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","commit_by_date":"Wed Apr 14 11:38:50 2021 -0500","stats":{"files_changed":1,"insertions":152,"deletions":0,"files":["docs/parsers/systeminfo.md"],"file_stats":[{"name":"docs/parsers/systeminfo.md","lines_changed":152}]},"message":"Add systeminfo.md file","epoch":1616716734,"epoch_utc":null},{"commit":"f861cf95b96a224a0a11f2cdc3261b94c02415ef","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Thu Mar 25 16:18:14 2021 -0500","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","commit_by_date":"Wed Apr 14 11:38:50 2021 -0500","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["jc/cli.py","jc/parsers/systeminfo.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/systeminfo.py","lines_changed":2}]},"message":"Change to v0.5; add parser to cli.py; add to docgen","epoch":1616714294,"epoch_utc":null},{"commit":"ee8f06cbdb03f8254bb6a3c56fa5b8a64ff9ca77","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Wed Mar 24 14:13:22 2021 -0500","commit_by":"Jon Smith","commit_by_email":"jon@rebelliondefense.com","commit_by_date":"Wed Apr 14 11:38:49 2021 -0500","stats":{"files_changed":6,"insertions":688,"deletions":0,"files":["jc/parsers/systeminfo.py","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-10/systeminfo.out","tests/fixtures/windows/windows-7/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.out","tests/test_systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":209},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":35},{"name":"tests/fixtures/windows/windows-10/systeminfo.out","lines_changed":47},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":34},{"name":"tests/fixtures/windows/windows-7/systeminfo.out","lines_changed":298},{"name":"tests/test_systeminfo.py","lines_changed":65}]},"message":"Add windows systeminfo command parser","epoch":1616620402,"epoch_utc":null},{"commit":"a2e8b3c7b681605916b8950d035ee19889a125a5","merge":"e0681ee 6c83846","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 16:40:43 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Apr 13 16:40:43 2021 -0700","message":"Merge pull request #121 from kellyjonbrazil/master\n\nMerge pull request #120 from kellyjonbrazil/dev","epoch":1618357243,"epoch_utc":null},{"commit":"6c838460752c7131f75cdab2da07266fee492060","merge":"10292f7 e0681ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:59:17 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Apr 13 14:59:17 2021 -0700","message":"Merge pull request #120 from kellyjonbrazil/dev\n\nDev v1.15.1","epoch":1618351157,"epoch_utc":null},{"commit":"e0681eebb9881dc0ffddb478224455f434919104","merge":"e5732d1 10292f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:57:44 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Apr 13 14:57:44 2021 -0700","message":"Merge branch 'master' into dev","epoch":1618351064,"epoch_utc":null},{"commit":"e5732d1cea1c882f6486cf288e45edb993989ea0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:54:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 13 14:54:38 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"update changelog","epoch":1618350878,"epoch_utc":null},{"commit":"6e7ae3cd3f003fe9e1e587b7f8ebd16ba0895014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:51:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 13 14:51:46 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/timedatectl.md","jc/man/jc.1.gz","jc/parsers/timedatectl.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"formatting of timedatectl docs","epoch":1618350706,"epoch_utc":null},{"commit":"f95632d1aaee545ae0ce081ca0617be135c09220","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:49:57 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 13 14:49:57 2021 -0700","stats":{"files_changed":7,"insertions":83,"deletions":62,"files":["EXAMPLES.md","docs/parsers/rpm_qi.md","jc/man/jc.1.gz","jc/parsers/rpm_qi.py","man/jc.1.gz","tests/fixtures/centos-7.7/rpm-qai.json","tests/fixtures/centos-7.7/rpm-qi-package.json"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":12},{"name":"docs/parsers/rpm_qi.md","lines_changed":62},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/rpm_qi.py","lines_changed":67},{"name":"man/jc.1.gz","lines_changed":null},{"name":"tests/fixtures/centos-7.7/rpm-qai.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rpm-qi-package.json","lines_changed":2}]},"message":"add install_date calculated fields","epoch":1618350597,"epoch_utc":null},{"commit":"2f8b7b26e59bcd745fa1fcadb373455c7d404286","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:35:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 13 14:35:17 2021 -0700","stats":{"files_changed":3,"insertions":1,"deletions":2,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update docs for v1.15.1","epoch":1618349717,"epoch_utc":null},{"commit":"10292f7502e4cb1c53b53ed39fed9288044c2ef8","merge":"37a3565 aef5470","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:15:40 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Apr 12 13:15:40 2021 -0700","message":"Merge pull request #119 from kellyjonbrazil/dpkg_l-fix\n\nadd _l to module name","epoch":1618258540,"epoch_utc":null},{"commit":"aef54705f5267c633e0778e8dce0065978083139","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:15:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 12 13:15:12 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["docs/parsers/dpkg_l.md"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":4}]},"message":"add _l to module name","epoch":1618258512,"epoch_utc":null},{"commit":"bba5980fa53767716bc35d8c904e7a2341346eeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:13:18 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 12 13:13:18 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"man page update","epoch":1618258398,"epoch_utc":null},{"commit":"977425abfb05a63ee372df36124ac6ba6a5a0aaa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:12:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 12 13:12:08 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"jc/parsers/dpkg_l.py","lines_changed":4}]},"message":"add _l to package name in docs","epoch":1618258328,"epoch_utc":null},{"commit":"37a3565a1bbd3d01663602673fed651509e69d8c","merge":"bdcdaee 13deb8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:06:30 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Apr 12 13:06:30 2021 -0700","message":"Merge pull request #118 from kellyjonbrazil/rpm-qi-doc-fix\n\nfix rpm-qi docs","epoch":1618257990,"epoch_utc":null},{"commit":"13deb8bfb6e77aaf86942f0be87b59d06ee2a97c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:05:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 12 13:05:34 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":194,"files":["docs/parsers/rpm_qai.md","docs/parsers/rpm_qi.md"],"file_stats":[{"name":"docs/parsers/rpm_qai.md","lines_changed":191},{"name":"docs/parsers/rpm_qi.md","lines_changed":6}]},"message":"fix rpm-qi docs","epoch":1618257934,"epoch_utc":null},{"commit":"a3ed9d075aff41599452c3094f7d057c25fc8f89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:04:22 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 12 13:04:22 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":191,"files":["docs/parsers/rpm_qai.md"],"file_stats":[{"name":"docs/parsers/rpm_qai.md","lines_changed":191}]},"message":"remove old parser doc","epoch":1618257862,"epoch_utc":null},{"commit":"fb0ced549e021916dee7da39859e8f85c8216e16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:01:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 12 13:01:17 2021 -0700","stats":{"files_changed":4,"insertions":6,"deletions":6,"files":["docs/parsers/rpm_qi.md","jc/man/jc.1.gz","jc/parsers/rpm_qi.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/rpm_qi.md","lines_changed":6},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/rpm_qi.py","lines_changed":6},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"fix rpm-qi docs (used underscore instead of dash in name)","epoch":1618257677,"epoch_utc":null},{"commit":"7eb31bc7d290fcd09e53524ebbb11e59110df6a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 19:55:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 19:55:03 2021 -0700","stats":{"files_changed":4,"insertions":39,"deletions":48,"files":["docs/parsers/airport_s.md","jc/man/jc.1.gz","jc/parsers/airport_s.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/airport_s.md","lines_changed":49},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/airport_s.py","lines_changed":38},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update airport_s docs","epoch":1618023303,"epoch_utc":null},{"commit":"6a06a3914273853742ac57433398968ccf7d9897","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 16:36:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 16:36:20 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":12}]},"message":"use herestring instead of echo -e into jq","epoch":1618011380,"epoch_utc":null},{"commit":"bdcdaee6c5299ea0750512e0943c7f58f56f2e35","merge":"5d8f836 605353f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 15:11:05 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Apr 9 15:11:05 2021 -0700","message":"Merge pull request #117 from kellyjonbrazil/doc_update\n\nadd new docs","epoch":1618006265,"epoch_utc":null},{"commit":"605353fdce3b8b5986d20a35d05f7210a6df0730","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 15:10:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 15:10:38 2021 -0700","stats":{"files_changed":70,"insertions":1710,"deletions":2656,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":99},{"name":"docs/parsers/airport.md","lines_changed":61},{"name":"docs/parsers/airport_s.md","lines_changed":9},{"name":"docs/parsers/arp.md","lines_changed":51},{"name":"docs/parsers/blkid.md","lines_changed":93},{"name":"docs/parsers/cksum.md","lines_changed":41},{"name":"docs/parsers/crontab.md","lines_changed":84},{"name":"docs/parsers/crontab_u.md","lines_changed":88},{"name":"docs/parsers/csv.md","lines_changed":41},{"name":"docs/parsers/date.md","lines_changed":68},{"name":"docs/parsers/df.md","lines_changed":59},{"name":"docs/parsers/dig.md","lines_changed":133},{"name":"docs/parsers/dir.md","lines_changed":49},{"name":"docs/parsers/dmidecode.md","lines_changed":55},{"name":"docs/parsers/dpkg_l.md","lines_changed":51},{"name":"docs/parsers/du.md","lines_changed":39},{"name":"docs/parsers/env.md","lines_changed":39},{"name":"docs/parsers/file.md","lines_changed":39},{"name":"docs/parsers/finger.md","lines_changed":57},{"name":"docs/parsers/free.md","lines_changed":49},{"name":"docs/parsers/fstab.md","lines_changed":47},{"name":"docs/parsers/group.md","lines_changed":47},{"name":"docs/parsers/gshadow.md","lines_changed":51},{"name":"docs/parsers/hash.md","lines_changed":39},{"name":"docs/parsers/hashsum.md","lines_changed":39},{"name":"docs/parsers/hciconfig.md","lines_changed":123},{"name":"docs/parsers/history.md","lines_changed":39},{"name":"docs/parsers/hosts.md","lines_changed":43},{"name":"docs/parsers/id.md","lines_changed":79},{"name":"docs/parsers/ifconfig.md","lines_changed":97},{"name":"docs/parsers/ini.md","lines_changed":44},{"name":"docs/parsers/iptables.md","lines_changed":67},{"name":"docs/parsers/iw_scan.md","lines_changed":40},{"name":"docs/parsers/jobs.md","lines_changed":45},{"name":"docs/parsers/kv.md","lines_changed":17},{"name":"docs/parsers/last.md","lines_changed":53},{"name":"docs/parsers/ls.md","lines_changed":118},{"name":"docs/parsers/lsblk.md","lines_changed":115},{"name":"docs/parsers/lsmod.md","lines_changed":47},{"name":"docs/parsers/lsof.md","lines_changed":55},{"name":"docs/parsers/mount.md","lines_changed":47},{"name":"docs/parsers/netstat.md","lines_changed":223},{"name":"docs/parsers/ntpq.md","lines_changed":58},{"name":"docs/parsers/passwd.md","lines_changed":49},{"name":"docs/parsers/ping.md","lines_changed":81},{"name":"docs/parsers/pip_list.md","lines_changed":41},{"name":"docs/parsers/pip_show.md","lines_changed":56},{"name":"docs/parsers/ps.md","lines_changed":69},{"name":"docs/parsers/route.md","lines_changed":63},{"name":"docs/parsers/rpm_qi.md","lines_changed":77},{"name":"docs/parsers/shadow.md","lines_changed":51},{"name":"docs/parsers/ss.md","lines_changed":73},{"name":"docs/parsers/stat.md","lines_changed":97},{"name":"docs/parsers/sysctl.md","lines_changed":37},{"name":"docs/parsers/systemctl.md","lines_changed":45},{"name":"docs/parsers/systemctl_lj.md","lines_changed":44},{"name":"docs/parsers/systemctl_ls.md","lines_changed":41},{"name":"docs/parsers/systemctl_luf.md","lines_changed":39},{"name":"docs/parsers/time.md","lines_changed":105},{"name":"docs/parsers/timedatectl.md","lines_changed":53},{"name":"docs/parsers/tracepath.md","lines_changed":60},{"name":"docs/parsers/traceroute.md","lines_changed":69},{"name":"docs/parsers/uname.md","lines_changed":47},{"name":"docs/parsers/upower.md","lines_changed":145},{"name":"docs/parsers/uptime.md","lines_changed":57},{"name":"docs/parsers/w.md","lines_changed":51},{"name":"docs/parsers/wc.md","lines_changed":43},{"name":"docs/parsers/who.md","lines_changed":55},{"name":"docs/parsers/xml.md","lines_changed":38},{"name":"docs/parsers/yaml.md","lines_changed":42}]},"message":"add new docs","epoch":1618006238,"epoch_utc":null},{"commit":"490c9e17699e8e4f70dcc1612e1a808f86e24b0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 11:38:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 11:38:17 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":8}]},"message":"add more cli tests for magic command","epoch":1617993497,"epoch_utc":null},{"commit":"6ebebb659dc93daeaa869752ad135f6e1d2cb1ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 11:10:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 11:10:08 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"update changelog","epoch":1617991808,"epoch_utc":null},{"commit":"0e70c5ee12e96f04a89de05153a2da9cd39f98ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 11:04:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 11:04:17 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update documentation link","epoch":1617991457,"epoch_utc":null},{"commit":"cd531acf6045660e022c932f62a01d4084433ad4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 11:02:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 11:02:19 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":1}]},"message":"clean up comment","epoch":1617991339,"epoch_utc":null},{"commit":"908ac1f61c5cc011d05d550f933940dfed4431f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 10:56:43 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 10:56:43 2021 -0700","stats":{"files_changed":143,"insertions":0,"deletions":690,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/man/jc.1.gz","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":4},{"name":"docs/parsers/airport.md","lines_changed":4},{"name":"docs/parsers/airport_s.md","lines_changed":4},{"name":"docs/parsers/arp.md","lines_changed":4},{"name":"docs/parsers/blkid.md","lines_changed":4},{"name":"docs/parsers/cksum.md","lines_changed":4},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"docs/parsers/crontab_u.md","lines_changed":4},{"name":"docs/parsers/csv.md","lines_changed":4},{"name":"docs/parsers/date.md","lines_changed":4},{"name":"docs/parsers/df.md","lines_changed":4},{"name":"docs/parsers/dig.md","lines_changed":4},{"name":"docs/parsers/dir.md","lines_changed":4},{"name":"docs/parsers/dmidecode.md","lines_changed":4},{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"docs/parsers/du.md","lines_changed":4},{"name":"docs/parsers/env.md","lines_changed":4},{"name":"docs/parsers/file.md","lines_changed":4},{"name":"docs/parsers/finger.md","lines_changed":4},{"name":"docs/parsers/free.md","lines_changed":4},{"name":"docs/parsers/fstab.md","lines_changed":4},{"name":"docs/parsers/group.md","lines_changed":4},{"name":"docs/parsers/gshadow.md","lines_changed":4},{"name":"docs/parsers/hash.md","lines_changed":4},{"name":"docs/parsers/hashsum.md","lines_changed":4},{"name":"docs/parsers/hciconfig.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":4},{"name":"docs/parsers/hosts.md","lines_changed":4},{"name":"docs/parsers/id.md","lines_changed":4},{"name":"docs/parsers/ifconfig.md","lines_changed":4},{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"docs/parsers/iptables.md","lines_changed":4},{"name":"docs/parsers/iw_scan.md","lines_changed":4},{"name":"docs/parsers/jobs.md","lines_changed":4},{"name":"docs/parsers/kv.md","lines_changed":4},{"name":"docs/parsers/last.md","lines_changed":4},{"name":"docs/parsers/ls.md","lines_changed":67},{"name":"docs/parsers/lsblk.md","lines_changed":4},{"name":"docs/parsers/lsmod.md","lines_changed":4},{"name":"docs/parsers/lsof.md","lines_changed":4},{"name":"docs/parsers/mount.md","lines_changed":4},{"name":"docs/parsers/netstat.md","lines_changed":4},{"name":"docs/parsers/ntpq.md","lines_changed":4},{"name":"docs/parsers/passwd.md","lines_changed":4},{"name":"docs/parsers/ping.md","lines_changed":4},{"name":"docs/parsers/pip_list.md","lines_changed":4},{"name":"docs/parsers/pip_show.md","lines_changed":4},{"name":"docs/parsers/ps.md","lines_changed":4},{"name":"docs/parsers/route.md","lines_changed":4},{"name":"docs/parsers/rpm_qi.md","lines_changed":4},{"name":"docs/parsers/shadow.md","lines_changed":4},{"name":"docs/parsers/ss.md","lines_changed":4},{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"docs/parsers/sysctl.md","lines_changed":4},{"name":"docs/parsers/systemctl.md","lines_changed":4},{"name":"docs/parsers/systemctl_lj.md","lines_changed":4},{"name":"docs/parsers/systemctl_ls.md","lines_changed":4},{"name":"docs/parsers/systemctl_luf.md","lines_changed":4},{"name":"docs/parsers/time.md","lines_changed":4},{"name":"docs/parsers/timedatectl.md","lines_changed":4},{"name":"docs/parsers/tracepath.md","lines_changed":4},{"name":"docs/parsers/traceroute.md","lines_changed":4},{"name":"docs/parsers/uname.md","lines_changed":4},{"name":"docs/parsers/upower.md","lines_changed":4},{"name":"docs/parsers/uptime.md","lines_changed":4},{"name":"docs/parsers/w.md","lines_changed":4},{"name":"docs/parsers/wc.md","lines_changed":4},{"name":"docs/parsers/who.md","lines_changed":4},{"name":"docs/parsers/xml.md","lines_changed":4},{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/acpi.py","lines_changed":4},{"name":"jc/parsers/airport.py","lines_changed":4},{"name":"jc/parsers/airport_s.py","lines_changed":4},{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/blkid.py","lines_changed":4},{"name":"jc/parsers/cksum.py","lines_changed":4},{"name":"jc/parsers/crontab.py","lines_changed":4},{"name":"jc/parsers/crontab_u.py","lines_changed":4},{"name":"jc/parsers/csv.py","lines_changed":4},{"name":"jc/parsers/date.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":4},{"name":"jc/parsers/dir.py","lines_changed":4},{"name":"jc/parsers/dmidecode.py","lines_changed":4},{"name":"jc/parsers/dpkg_l.py","lines_changed":4},{"name":"jc/parsers/du.py","lines_changed":4},{"name":"jc/parsers/env.py","lines_changed":4},{"name":"jc/parsers/file.py","lines_changed":4},{"name":"jc/parsers/finger.py","lines_changed":4},{"name":"jc/parsers/foo.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":4},{"name":"jc/parsers/fstab.py","lines_changed":4},{"name":"jc/parsers/group.py","lines_changed":4},{"name":"jc/parsers/gshadow.py","lines_changed":4},{"name":"jc/parsers/hash.py","lines_changed":4},{"name":"jc/parsers/hashsum.py","lines_changed":4},{"name":"jc/parsers/hciconfig.py","lines_changed":4},{"name":"jc/parsers/history.py","lines_changed":4},{"name":"jc/parsers/hosts.py","lines_changed":4},{"name":"jc/parsers/id.py","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":4},{"name":"jc/parsers/ini.py","lines_changed":4},{"name":"jc/parsers/iptables.py","lines_changed":4},{"name":"jc/parsers/iw_scan.py","lines_changed":4},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/kv.py","lines_changed":4},{"name":"jc/parsers/last.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":67},{"name":"jc/parsers/lsblk.py","lines_changed":4},{"name":"jc/parsers/lsmod.py","lines_changed":4},{"name":"jc/parsers/lsof.py","lines_changed":4},{"name":"jc/parsers/mount.py","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":4},{"name":"jc/parsers/ntpq.py","lines_changed":4},{"name":"jc/parsers/passwd.py","lines_changed":4},{"name":"jc/parsers/ping.py","lines_changed":4},{"name":"jc/parsers/pip_list.py","lines_changed":4},{"name":"jc/parsers/pip_show.py","lines_changed":4},{"name":"jc/parsers/ps.py","lines_changed":4},{"name":"jc/parsers/route.py","lines_changed":4},{"name":"jc/parsers/rpm_qi.py","lines_changed":4},{"name":"jc/parsers/shadow.py","lines_changed":4},{"name":"jc/parsers/ss.py","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"jc/parsers/sysctl.py","lines_changed":4},{"name":"jc/parsers/systemctl.py","lines_changed":4},{"name":"jc/parsers/systemctl_lj.py","lines_changed":4},{"name":"jc/parsers/systemctl_ls.py","lines_changed":4},{"name":"jc/parsers/systemctl_luf.py","lines_changed":4},{"name":"jc/parsers/time.py","lines_changed":4},{"name":"jc/parsers/timedatectl.py","lines_changed":4},{"name":"jc/parsers/tracepath.py","lines_changed":4},{"name":"jc/parsers/traceroute.py","lines_changed":4},{"name":"jc/parsers/uname.py","lines_changed":4},{"name":"jc/parsers/upower.py","lines_changed":4},{"name":"jc/parsers/uptime.py","lines_changed":4},{"name":"jc/parsers/w.py","lines_changed":4},{"name":"jc/parsers/wc.py","lines_changed":4},{"name":"jc/parsers/who.py","lines_changed":4},{"name":"jc/parsers/xml.py","lines_changed":4},{"name":"jc/parsers/yaml.py","lines_changed":4},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update docs - remove compatibility section since it is now automatically generated from info()","epoch":1617991003,"epoch_utc":null},{"commit":"f5c7e7e4046bc57b4fcad99390e31b121a7106ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 10:36:42 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 10:36:42 2021 -0700","stats":{"files_changed":70,"insertions":350,"deletions":0,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":5},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5}]},"message":"add updated docs with home link and parser info at the bottom","epoch":1617989802,"epoch_utc":null},{"commit":"001c700b5bd280cb1cb9e54169ae5f1b7918c257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 10:36:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 10:36:03 2021 -0700","stats":{"files_changed":3,"insertions":2,"deletions":1,"files":["docgen.sh","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docgen.sh","lines_changed":3},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add home link to the top of the md file","epoch":1617989763,"epoch_utc":null},{"commit":"9b41e9bef0ff099e70f37fddc8fe2c6bd8457b19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 10:32:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 10:32:58 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":1}]},"message":"Add parser information header","epoch":1617989578,"epoch_utc":null},{"commit":"34bd6e32dc0c0bf7dfeedaadbf04115f43e9d060","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 10:26:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 10:26:34 2021 -0700","stats":{"files_changed":1,"insertions":20,"deletions":4,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":24}]},"message":"pull each parser as a json object into a bash array and iterate on it to add supplementary information like version, author, and compatibility","epoch":1617989194,"epoch_utc":null},{"commit":"c5d058490beaa8f59875a8acfd7a400764768639","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 09:12:41 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 09:12:41 2021 -0700","stats":{"files_changed":1,"insertions":22,"deletions":13,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":35}]},"message":"move parser doc printing to its own function","epoch":1617984761,"epoch_utc":null},{"commit":"dd1ae6d9a7de5421830232deb42d933b9a652672","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 08:09:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 9 08:09:37 2021 -0700","stats":{"files_changed":4,"insertions":3,"deletions":1,"files":["MANIFEST.in","jc/man/jc.1.gz","man/jc.1.gz","mangen.py"],"file_stats":[{"name":"MANIFEST.in","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"mangen.py","lines_changed":2}]},"message":"add man page inside the pypi package for easier packaging in homebrew","epoch":1617980977,"epoch_utc":null},{"commit":"d8ea9bde823a7f5c146741150c3211737345c7dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 16:42:57 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 16:42:57 2021 -0700","stats":{"files_changed":3,"insertions":16,"deletions":16,"files":["docs/parsers/w.md","jc/parsers/w.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/w.md","lines_changed":16},{"name":"jc/parsers/w.py","lines_changed":16},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update","epoch":1617925377,"epoch_utc":null},{"commit":"125edc9c906dc3650b6a683ed13830075acb7ab6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 16:42:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 16:42:45 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"bail out for -h, -a, and -v in magic()","epoch":1617925365,"epoch_utc":null},{"commit":"15ea43e394a9004f8ccec208b3a066c76e241866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 16:28:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 16:28:05 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["MANIFEST.in"],"file_stats":[{"name":"MANIFEST.in","lines_changed":1}]},"message":"add man file to package for easier packaging in homebrew","epoch":1617924485,"epoch_utc":null},{"commit":"b55b02687c00d1c50e30f30c9b9a7f36f783eb0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 16:14:11 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 16:14:11 2021 -0700","stats":{"files_changed":19,"insertions":371,"deletions":441,"files":["CHANGELOG","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","man/jc.1.gz","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":6},{"name":"docs/parsers/uname.md","lines_changed":42},{"name":"docs/parsers/upower.md","lines_changed":140},{"name":"docs/parsers/uptime.md","lines_changed":52},{"name":"docs/parsers/w.md","lines_changed":46},{"name":"docs/parsers/wc.md","lines_changed":38},{"name":"docs/parsers/who.md","lines_changed":50},{"name":"docs/parsers/xml.md","lines_changed":33},{"name":"docs/parsers/yaml.md","lines_changed":37},{"name":"jc/parsers/uname.py","lines_changed":33},{"name":"jc/parsers/upower.py","lines_changed":131},{"name":"jc/parsers/uptime.py","lines_changed":43},{"name":"jc/parsers/w.py","lines_changed":37},{"name":"jc/parsers/wc.py","lines_changed":29},{"name":"jc/parsers/who.py","lines_changed":41},{"name":"jc/parsers/xml.py","lines_changed":24},{"name":"jc/parsers/yaml.py","lines_changed":28},{"name":"man/jc.1.gz","lines_changed":null},{"name":"setup.py","lines_changed":2}]},"message":"doc update","epoch":1617923651,"epoch_utc":null},{"commit":"da611f0ac6321f7f52fdbc419f8b155c74393c28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 15:53:06 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 15:53:06 2021 -0700","stats":{"files_changed":4,"insertions":63,"deletions":50,"files":["jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","man/jc.1.gz"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":30},{"name":"jc/parsers/iptables.py","lines_changed":53},{"name":"jc/parsers/iw_scan.py","lines_changed":30},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update docs","epoch":1617922386,"epoch_utc":null},{"commit":"b8b8dfead4fdc4285585c44c2ebce3bdd42b2e7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 15:52:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 15:52:49 2021 -0700","stats":{"files_changed":61,"insertions":1501,"deletions":1848,"files":["docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":39},{"name":"docs/parsers/iptables.md","lines_changed":62},{"name":"docs/parsers/iw_scan.md","lines_changed":35},{"name":"docs/parsers/jobs.md","lines_changed":40},{"name":"docs/parsers/kv.md","lines_changed":12},{"name":"docs/parsers/last.md","lines_changed":48},{"name":"docs/parsers/ls.md","lines_changed":50},{"name":"docs/parsers/lsblk.md","lines_changed":110},{"name":"docs/parsers/lsmod.md","lines_changed":42},{"name":"docs/parsers/lsof.md","lines_changed":50},{"name":"docs/parsers/mount.md","lines_changed":42},{"name":"docs/parsers/netstat.md","lines_changed":218},{"name":"docs/parsers/ntpq.md","lines_changed":53},{"name":"docs/parsers/passwd.md","lines_changed":44},{"name":"docs/parsers/ping.md","lines_changed":76},{"name":"docs/parsers/pip_list.md","lines_changed":36},{"name":"docs/parsers/pip_show.md","lines_changed":51},{"name":"docs/parsers/ps.md","lines_changed":64},{"name":"docs/parsers/route.md","lines_changed":58},{"name":"docs/parsers/rpm_qi.md","lines_changed":72},{"name":"docs/parsers/shadow.md","lines_changed":46},{"name":"docs/parsers/ss.md","lines_changed":66},{"name":"docs/parsers/stat.md","lines_changed":92},{"name":"docs/parsers/sysctl.md","lines_changed":32},{"name":"docs/parsers/systemctl.md","lines_changed":40},{"name":"docs/parsers/systemctl_lj.md","lines_changed":39},{"name":"docs/parsers/systemctl_ls.md","lines_changed":36},{"name":"docs/parsers/systemctl_luf.md","lines_changed":34},{"name":"docs/parsers/time.md","lines_changed":100},{"name":"docs/parsers/timedatectl.md","lines_changed":48},{"name":"docs/parsers/tracepath.md","lines_changed":55},{"name":"docs/parsers/traceroute.md","lines_changed":64},{"name":"jc/parsers/jobs.py","lines_changed":31},{"name":"jc/parsers/kv.py","lines_changed":13},{"name":"jc/parsers/last.py","lines_changed":39},{"name":"jc/parsers/ls.py","lines_changed":41},{"name":"jc/parsers/lsblk.py","lines_changed":101},{"name":"jc/parsers/lsmod.py","lines_changed":33},{"name":"jc/parsers/lsof.py","lines_changed":41},{"name":"jc/parsers/mount.py","lines_changed":41},{"name":"jc/parsers/netstat.py","lines_changed":209},{"name":"jc/parsers/ntpq.py","lines_changed":44},{"name":"jc/parsers/passwd.py","lines_changed":35},{"name":"jc/parsers/ping.py","lines_changed":75},{"name":"jc/parsers/pip_list.py","lines_changed":27},{"name":"jc/parsers/pip_show.py","lines_changed":42},{"name":"jc/parsers/ps.py","lines_changed":55},{"name":"jc/parsers/route.py","lines_changed":49},{"name":"jc/parsers/rpm_qi.py","lines_changed":63},{"name":"jc/parsers/shadow.py","lines_changed":37},{"name":"jc/parsers/ss.py","lines_changed":59},{"name":"jc/parsers/stat.py","lines_changed":83},{"name":"jc/parsers/sysctl.py","lines_changed":23},{"name":"jc/parsers/systemctl.py","lines_changed":31},{"name":"jc/parsers/systemctl_lj.py","lines_changed":30},{"name":"jc/parsers/systemctl_ls.py","lines_changed":27},{"name":"jc/parsers/systemctl_luf.py","lines_changed":25},{"name":"jc/parsers/time.py","lines_changed":91},{"name":"jc/parsers/timedatectl.py","lines_changed":39},{"name":"jc/parsers/tracepath.py","lines_changed":46},{"name":"jc/parsers/traceroute.py","lines_changed":65}]},"message":"update docs","epoch":1617922369,"epoch_utc":null},{"commit":"4290a3cbd135cacbf63664dc30768017ebbed28d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 14:00:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 14:00:56 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":9,"files":["docs/parsers/ifconfig.md","jc/parsers/ifconfig.py"],"file_stats":[{"name":"docs/parsers/ifconfig.md","lines_changed":6},{"name":"jc/parsers/ifconfig.py","lines_changed":6}]},"message":"make IfconfigParser class private","epoch":1617915656,"epoch_utc":null},{"commit":"a5e2203cee6a7bc398cf280f57d37638eeb1d2d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 12:45:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 12:45:08 2021 -0700","stats":{"files_changed":3,"insertions":2,"deletions":1,"files":["docs/parsers/ifconfig.md","jc/parsers/ifconfig.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":1},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update ifconfig doc","epoch":1617911108,"epoch_utc":null},{"commit":"e28c08b1361161cfd123b9ebc11fa1ffa87d658f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 12:42:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 12:42:01 2021 -0700","stats":{"files_changed":46,"insertions":976,"deletions":1209,"files":["docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/csv.md","lines_changed":36},{"name":"docs/parsers/date.md","lines_changed":63},{"name":"docs/parsers/df.md","lines_changed":54},{"name":"docs/parsers/dig.md","lines_changed":128},{"name":"docs/parsers/dir.md","lines_changed":44},{"name":"docs/parsers/dmidecode.md","lines_changed":50},{"name":"docs/parsers/dpkg_l.md","lines_changed":46},{"name":"docs/parsers/du.md","lines_changed":34},{"name":"docs/parsers/env.md","lines_changed":34},{"name":"docs/parsers/file.md","lines_changed":34},{"name":"docs/parsers/finger.md","lines_changed":52},{"name":"docs/parsers/free.md","lines_changed":44},{"name":"docs/parsers/fstab.md","lines_changed":42},{"name":"docs/parsers/group.md","lines_changed":42},{"name":"docs/parsers/gshadow.md","lines_changed":46},{"name":"docs/parsers/hash.md","lines_changed":34},{"name":"docs/parsers/hashsum.md","lines_changed":34},{"name":"docs/parsers/hciconfig.md","lines_changed":118},{"name":"docs/parsers/history.md","lines_changed":34},{"name":"docs/parsers/hosts.md","lines_changed":38},{"name":"docs/parsers/id.md","lines_changed":74},{"name":"docs/parsers/ifconfig.md","lines_changed":86},{"name":"jc/parsers/csv.py","lines_changed":27},{"name":"jc/parsers/date.py","lines_changed":54},{"name":"jc/parsers/df.py","lines_changed":45},{"name":"jc/parsers/dig.py","lines_changed":143},{"name":"jc/parsers/dir.py","lines_changed":35},{"name":"jc/parsers/dmidecode.py","lines_changed":41},{"name":"jc/parsers/dpkg_l.py","lines_changed":37},{"name":"jc/parsers/du.py","lines_changed":25},{"name":"jc/parsers/env.py","lines_changed":25},{"name":"jc/parsers/file.py","lines_changed":25},{"name":"jc/parsers/finger.py","lines_changed":43},{"name":"jc/parsers/foo.py","lines_changed":25},{"name":"jc/parsers/free.py","lines_changed":35},{"name":"jc/parsers/fstab.py","lines_changed":33},{"name":"jc/parsers/group.py","lines_changed":33},{"name":"jc/parsers/gshadow.py","lines_changed":37},{"name":"jc/parsers/hash.py","lines_changed":25},{"name":"jc/parsers/hashsum.py","lines_changed":25},{"name":"jc/parsers/hciconfig.py","lines_changed":109},{"name":"jc/parsers/history.py","lines_changed":25},{"name":"jc/parsers/hosts.py","lines_changed":29},{"name":"jc/parsers/id.py","lines_changed":65},{"name":"jc/parsers/ifconfig.py","lines_changed":77},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update documentation","epoch":1617910921,"epoch_utc":null},{"commit":"a4b6846f63b43168085275d73940265940badf46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 11:37:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 11:37:39 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":467,"files":["man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"man/jc.1","lines_changed":467},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"man update","epoch":1617907059,"epoch_utc":null},{"commit":"2bc830786114fd57619f34b936dcf6e0bed7a109","merge":"9b39917 5d8f836","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 11:33:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 11:33:50 2021 -0700","message":"Merge branch 'master' into dev\n\n# Conflicts:\n# man/jc.1","epoch":1617906830,"epoch_utc":null},{"commit":"9b39917c798ed0310c9b82d87172cbf6d24ba111","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 11:24:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 11:24:02 2021 -0700","stats":{"files_changed":17,"insertions":391,"deletions":453,"files":["README.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","jc/cli.py","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/acpi.md","lines_changed":94},{"name":"docs/parsers/airport.md","lines_changed":56},{"name":"docs/parsers/blkid.md","lines_changed":88},{"name":"docs/parsers/cksum.md","lines_changed":36},{"name":"docs/parsers/crontab.md","lines_changed":79},{"name":"docs/parsers/crontab_u.md","lines_changed":83},{"name":"jc/cli.py","lines_changed":6},{"name":"jc/parsers/acpi.py","lines_changed":85},{"name":"jc/parsers/airport.py","lines_changed":47},{"name":"jc/parsers/blkid.py","lines_changed":79},{"name":"jc/parsers/cksum.py","lines_changed":27},{"name":"jc/parsers/crontab.py","lines_changed":70},{"name":"jc/parsers/crontab_u.py","lines_changed":74},{"name":"man/jc.1","lines_changed":8},{"name":"templates/manpage_template","lines_changed":8},{"name":"templates/readme_template","lines_changed":2}]},"message":"update docstrings for new help functionality","epoch":1617906242,"epoch_utc":null},{"commit":"57c13cc0a38ad89fda8b0e362bd6487257d0a26a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 10:54:15 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 10:54:15 2021 -0700","stats":{"files_changed":1,"insertions":23,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":26}]},"message":"add support for parser help","epoch":1617904455,"epoch_utc":null},{"commit":"b7355fd30d992a1bcc90227f5a1b02be073829e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 10:20:24 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 10:20:24 2021 -0700","stats":{"files_changed":2,"insertions":37,"deletions":48,"files":["docs/parsers/arp.md","jc/parsers/arp.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":46},{"name":"jc/parsers/arp.py","lines_changed":39}]},"message":"new docstring format for improved documentation","epoch":1617902424,"epoch_utc":null},{"commit":"93ae309e407b26820b9f05b5b331d05fc77df57f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 10:20:00 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 8 10:20:00 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/__init__.py","man/jc.1"],"file_stats":[{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"bump version to 1.15.1","epoch":1617902400,"epoch_utc":null},{"commit":"5d8f8365e24a7c3a587d4e71ebba4876de08203b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 14:27:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 7 14:27:34 2021 -0700","stats":{"files_changed":3,"insertions":9,"deletions":461,"files":["man/jc.1","man/jc.1.gz","mangen.py"],"file_stats":[{"name":"man/jc.1","lines_changed":461},{"name":"man/jc.1.gz","lines_changed":null},{"name":"mangen.py","lines_changed":9}]},"message":"gzip man page","epoch":1617830854,"epoch_utc":null},{"commit":"f26909eefb236e9ebf63be53cd86ae13cc3d9ea3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 11:18:33 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 7 11:18:33 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["docs/parsers/dir.md"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":8}]},"message":"formatting","epoch":1617819513,"epoch_utc":null},{"commit":"55bfbb2797ede3aefbb14ecab950b108b1895ccc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 11:13:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 7 11:13:27 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":6,"files":["EXAMPLES.md","jc/parsers/dir.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":3},{"name":"jc/parsers/dir.py","lines_changed":8}]},"message":"formatting","epoch":1617819207,"epoch_utc":null},{"commit":"8970b8342a855203aef649b60dad3e49a1d7fd2a","merge":"a73fdb7 5285e69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 09:34:45 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Apr 7 09:34:45 2021 -0700","message":"Merge pull request #115 from kellyjonbrazil/master\n\nSync master and dev","epoch":1617813285,"epoch_utc":null},{"commit":"5285e699c30fdeaf56068f5a03ef1d1d33fa673c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 08:07:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 7 08:07:50 2021 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","jc/cli.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"fix rpm-qi parser name","epoch":1617808070,"epoch_utc":null},{"commit":"275f3860d5870303235b651d42650256e4db8ada","merge":"577811f a73fdb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 07:54:41 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Apr 7 07:54:41 2021 -0700","message":"Merge pull request #114 from kellyjonbrazil/dev\n\nDev v1.15.0","epoch":1617807281,"epoch_utc":null},{"commit":"a73fdb7478965f0f2c841ac01b2762db80ad0786","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 07:50:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 7 07:50:17 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["CHANGELOG","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"update dates","epoch":1617807017,"epoch_utc":null},{"commit":"f2d746403a0ed764f931ae9e14d180bab107dcca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 20:30:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 20:30:56 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/rpm_qi.md","jc/parsers/rpm_qi.py"],"file_stats":[{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"jc/parsers/rpm_qi.py","lines_changed":2}]},"message":"typo fix","epoch":1617766256,"epoch_utc":null},{"commit":"b7dbf2c49be4beb793495a0aaee7f05dbea5a3a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 18:53:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 18:53:50 2021 -0700","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":26}]},"message":"doc formatting","epoch":1617760430,"epoch_utc":null},{"commit":"21f3c97788826e79b0c387f877c5adf269318e97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 18:38:04 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 18:38:04 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2}]},"message":"rename rpm_qai to rpm_qi","epoch":1617759484,"epoch_utc":null},{"commit":"14b727cc717d04fefba1cc31b6f29b549ced986f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 18:34:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 18:34:08 2021 -0700","stats":{"files_changed":3,"insertions":73,"deletions":0,"files":["tests/fixtures/centos-7.7/rpm-qi-package.json","tests/fixtures/centos-7.7/rpm-qi-package.out","tests/test_rpm_qai.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/rpm-qi-package.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rpm-qi-package.out","lines_changed":26},{"name":"tests/test_rpm_qai.py","lines_changed":46}]},"message":"add rpm_qi tests","epoch":1617759248,"epoch_utc":null},{"commit":"abee226591ed4ae37351efc995017d28b27827d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 18:32:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 18:32:47 2021 -0700","stats":{"files_changed":5,"insertions":205,"deletions":14,"files":["README.md","docs/parsers/rpm_qi.md","jc/cli.py","jc/parsers/{rpm_qai.py => rpm_qi.py}","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":191},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/{rpm_qai.py => rpm_qi.py}","lines_changed":20},{"name":"man/jc.1","lines_changed":4}]},"message":"rename rpm_qia to rpm_qi","epoch":1617759167,"epoch_utc":null},{"commit":"293ad39f4bcf326186dd917d8bc58d3964e5e4d6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 16:48:31 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 16:48:31 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"typo fix","epoch":1617752911,"epoch_utc":null},{"commit":"92443025811019f616f596abb60a2889f604c122","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 15:07:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 15:07:39 2021 -0700","stats":{"files_changed":4,"insertions":7,"deletions":6,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/rpm_qai.md","jc/parsers/rpm_qai.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":4},{"name":"docs/parsers/rpm_qai.md","lines_changed":4},{"name":"jc/parsers/rpm_qai.py","lines_changed":4}]},"message":"rpm parser doc update","epoch":1617746859,"epoch_utc":null},{"commit":"753cac25fb1e7e6cd2c742afa8d45ced068ea91d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 14:46:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 14:46:27 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":3,"files":["jc/parsers/rpm_qai.py"],"file_stats":[{"name":"jc/parsers/rpm_qai.py","lines_changed":9}]},"message":"only add description if it exists","epoch":1617745587,"epoch_utc":null},{"commit":"0548263e898bf14f93d2fa423c0f0a9d9f2ff567","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 14:39:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 14:39:39 2021 -0700","stats":{"files_changed":8,"insertions":10468,"deletions":0,"files":["EXAMPLES.md","README.md","docs/parsers/rpm_qai.md","jc/cli.py","jc/parsers/rpm_qai.py","man/jc.1","tests/fixtures/centos-7.7/rpm-qai.json","tests/fixtures/centos-7.7/rpm-qai.out"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":53},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/rpm_qai.md","lines_changed":191},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/rpm_qai.py","lines_changed":255},{"name":"man/jc.1","lines_changed":5},{"name":"tests/fixtures/centos-7.7/rpm-qai.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rpm-qai.out","lines_changed":9961}]},"message":"add rpm -qai parser","epoch":1617745179,"epoch_utc":null},{"commit":"53776a9bf894988d6ef9221a62ab8b816c89560c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 11:36:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 11:36:10 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":2},{"name":"templates/manpage_template","lines_changed":2}]},"message":"note -a output is JSON","epoch":1617734170,"epoch_utc":null},{"commit":"cc7def9b76a7fa6de1e11b584676820f3acb0257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 11:29:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 11:29:30 2021 -0700","stats":{"files_changed":3,"insertions":18,"deletions":0,"files":["tests/fixtures/osx-10.14.6/finger.json","tests/fixtures/osx-10.14.6/finger.out","tests/test_finger.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/finger.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/finger.out","lines_changed":5},{"name":"tests/test_finger.py","lines_changed":12}]},"message":"add OSX finger tests","epoch":1617733770,"epoch_utc":null},{"commit":"11a4422c25ed905f33475677bcc2f59f49c62a23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 11:23:29 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 11:23:29 2021 -0700","stats":{"files_changed":3,"insertions":51,"deletions":0,"files":["tests/fixtures/centos-7.7/finger.json","tests/fixtures/centos-7.7/finger.out","tests/test_finger.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/finger.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/finger.out","lines_changed":3},{"name":"tests/test_finger.py","lines_changed":47}]},"message":"add centos 7.7 finger tests","epoch":1617733409,"epoch_utc":null},{"commit":"3a44785260514227b541530baf3e14b6c7ebe86a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 11:23:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 11:23:09 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/finger.py"],"file_stats":[{"name":"jc/parsers/finger.py","lines_changed":4}]},"message":"del details key if details are blank","epoch":1617733389,"epoch_utc":null},{"commit":"e0d430c26c38db8de5a32741e05df412cffe45b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 11:00:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 11:00:46 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"update -r raw option info","epoch":1617732046,"epoch_utc":null},{"commit":"417b70020accfa4910016e9d3d12690a5488f6f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 10:51:41 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 10:51:41 2021 -0700","stats":{"files_changed":5,"insertions":129,"deletions":22,"files":["EXAMPLES.md","docs/parsers/finger.md","jc/parsers/finger.py","tests/fixtures/ubuntu-18.04/finger.json","tests/fixtures/ubuntu-18.04/finger.out"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":18},{"name":"docs/parsers/finger.md","lines_changed":53},{"name":"jc/parsers/finger.py","lines_changed":71},{"name":"tests/fixtures/ubuntu-18.04/finger.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/finger.out","lines_changed":8}]},"message":"add idle time fields to finger parser","epoch":1617731501,"epoch_utc":null},{"commit":"7b29c464b72ef9a79bd872dab92cf65016490bcc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 10:04:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 10:04:02 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"date updated","epoch":1617728642,"epoch_utc":null},{"commit":"26d5529d86e4e459ad94226465c3697a050af0ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 10:03:51 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 10:03:51 2021 -0700","stats":{"files_changed":1,"insertions":10,"deletions":7,"files":["docs/parsers/finger.md"],"file_stats":[{"name":"docs/parsers/finger.md","lines_changed":17}]},"message":"remove aix support, add note for -s support. schema update","epoch":1617728631,"epoch_utc":null},{"commit":"852103c478321b84ffbbc0a876d5ece0c0881e1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 10:02:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 6 10:02:46 2021 -0700","stats":{"files_changed":1,"insertions":27,"deletions":14,"files":["jc/parsers/finger.py"],"file_stats":[{"name":"jc/parsers/finger.py","lines_changed":41}]},"message":"tweak regex to support arbitrary 'detail' data","epoch":1617728566,"epoch_utc":null},{"commit":"26a115421b0888e23f4348f1124e2ef7b39df4cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 17:16:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 17:16:38 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":11}]},"message":"add finger parser","epoch":1617668198,"epoch_utc":null},{"commit":"755b941a9aa602d95d9bc599f5c64e05f9e6216d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 17:14:33 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 17:14:33 2021 -0700","stats":{"files_changed":3,"insertions":35,"deletions":30,"files":["EXAMPLES.md","docs/parsers/finger.md","jc/parsers/finger.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":23},{"name":"docs/parsers/finger.md","lines_changed":21},{"name":"jc/parsers/finger.py","lines_changed":21}]},"message":"doc update","epoch":1617668073,"epoch_utc":null},{"commit":"fd1ca82d86649adeb84968142665e5e4fae3fa0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 17:09:22 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 17:09:22 2021 -0700","stats":{"files_changed":5,"insertions":263,"deletions":0,"files":["README.md","docs/parsers/finger.md","jc/cli.py","jc/parsers/finger.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/finger.md","lines_changed":102},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/finger.py","lines_changed":154},{"name":"man/jc.1","lines_changed":5}]},"message":"add finger parser","epoch":1617667762,"epoch_utc":null},{"commit":"6fe175344fc61d4996a9ea20f6c5d429efb1fac7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 13:38:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 13:38:09 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"change examples link to github.io","epoch":1617655089,"epoch_utc":null},{"commit":"3590cda13a68616ee7eb8c85c5554ffb3fef036d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 12:07:52 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 12:07:52 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/last.md","jc/parsers/last.py"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":2}]},"message":"docs formatting","epoch":1617649672,"epoch_utc":null},{"commit":"2f1011dd85ec9b3550138ac4a4e1729fa5b4fe17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 12:03:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 12:03:35 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"readme update","epoch":1617649415,"epoch_utc":null},{"commit":"2b155261b3f6e4879b592f5bc052649ded5e3d69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 12:01:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 12:01:53 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":2}]},"message":"use new github.io links for documentation","epoch":1617649313,"epoch_utc":null},{"commit":"02f4d606d0a446c7cc74aedac6035ee79805950d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 11:49:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 11:49:30 2021 -0700","stats":{"files_changed":2,"insertions":69,"deletions":69,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":136},{"name":"templates/readme_template","lines_changed":2}]},"message":"add documentation links to README.md","epoch":1617648570,"epoch_utc":null},{"commit":"577811f00b7fcd0396bb0e26a2985709bd2c65a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 11:42:59 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 11:42:59 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/_config.yml"],"file_stats":[{"name":"docs/_config.yml","lines_changed":1}]},"message":"Set theme jekyll-theme-cayman","epoch":1617648179,"epoch_utc":null},{"commit":"b4098d67a3a4a617d42c1389e0a88833c77b89b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 09:42:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 09:42:35 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"latest","epoch":1617640955,"epoch_utc":null},{"commit":"88bd7554aeb511c19e55dc3dde9c9376efb0485b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 09:42:25 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 09:42:25 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":3,"files":["docgen.sh","updatedocs.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":2},{"name":"updatedocs.sh","lines_changed":9}]},"message":"add status messages","epoch":1617640945,"epoch_utc":null},{"commit":"b5ec16c5cafb78db093861cc30d9646207f2227a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 09:23:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 5 09:23:20 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":8,"files":["mangen.py","readmegen.py"],"file_stats":[{"name":"mangen.py","lines_changed":4},{"name":"readmegen.py","lines_changed":4}]},"message":"formatting","epoch":1617639800,"epoch_utc":null},{"commit":"68fcb60a1460a35500180ec05a8cf5ba5706ff17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 20:56:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 4 20:56:10 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["updatedocs.sh"],"file_stats":[{"name":"updatedocs.sh","lines_changed":6}]},"message":"add updatedocs script","epoch":1617594970,"epoch_utc":null},{"commit":"e4781d60ce251f6d47f19bbe042e97f8aa9e2f18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 20:52:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 4 20:52:34 2021 -0700","stats":{"files_changed":65,"insertions":188,"deletions":189,"files":["README.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":124},{"name":"jc/parsers/acpi.py","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/blkid.py","lines_changed":2},{"name":"jc/parsers/cksum.py","lines_changed":3},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/dir.py","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":2},{"name":"jc/parsers/dpkg_l.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/group.py","lines_changed":2},{"name":"jc/parsers/gshadow.py","lines_changed":2},{"name":"jc/parsers/hash.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":2},{"name":"jc/parsers/hciconfig.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/ntpq.py","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":2},{"name":"jc/parsers/ping.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/shadow.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/sysctl.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/time.py","lines_changed":2},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/parsers/wc.py","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":2},{"name":"man/jc.1","lines_changed":126}]},"message":"update parser descriptions with backticks surrounding command names","epoch":1617594754,"epoch_utc":null},{"commit":"6201fb346a66ba762651624cdaf03f08e08579a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 20:31:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 4 20:31:58 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"test backticks in description","epoch":1617593518,"epoch_utc":null},{"commit":"f88c8343f9dec5e0190df94a5109e6c749bda286","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 20:30:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 4 20:30:53 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"update iw-scan description for documentation","epoch":1617593453,"epoch_utc":null},{"commit":"25410d33168ee7142bd8f8c739ef22a62a47eb6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 20:28:54 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 4 20:28:54 2021 -0700","stats":{"files_changed":5,"insertions":973,"deletions":70,"files":["README.md","mangen.py","readmegen.py","{man/template => templates}/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":139},{"name":"mangen.py","lines_changed":2},{"name":"readmegen.py","lines_changed":16},{"name":"{man/template => templates}/manpage_template","lines_changed":0},{"name":"templates/readme_template","lines_changed":886}]},"message":"create readmegen.py script. move jinja2 templates to templates folder","epoch":1617593334,"epoch_utc":null},{"commit":"4ff9952938d0654376efc94ca7d8a12f6df171af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 15:57:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 4 15:57:44 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":10}]},"message":"change OSX to macOS","epoch":1617577064,"epoch_utc":null},{"commit":"5e3f63a412c5b23e7515337521ebba6273b5c11f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 15:53:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 4 15:53:23 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["man/jc.1","man/template/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":4},{"name":"man/template/manpage_template","lines_changed":8}]},"message":"add license and copyright info. use variables instead of hard-coded values","epoch":1617576803,"epoch_utc":null},{"commit":"e1f57be69efdfd7facd07df6ef0955a36c4fc18b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 15:52:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 4 15:52:50 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add license info","epoch":1617576770,"epoch_utc":null},{"commit":"2c65d5eeccdc95d2de00ac6575a9e8d8458486bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 14:40:22 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 4 14:40:22 2021 -0700","stats":{"files_changed":2,"insertions":32,"deletions":8,"files":["man/jc.1","man/template/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":20},{"name":"man/template/manpage_template","lines_changed":20}]},"message":"man page updates","epoch":1617572422,"epoch_utc":null},{"commit":"aa621f2f1ee043611c440683dfb63e6577d8fac4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 14:29:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 4 14:29:37 2021 -0700","stats":{"files_changed":3,"insertions":74,"deletions":9,"files":["CHANGELOG","man/jc.1","man/template/manpage_template"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"man/jc.1","lines_changed":42},{"name":"man/template/manpage_template","lines_changed":40}]},"message":"enhance man page","epoch":1617571777,"epoch_utc":null},{"commit":"ac932c6e59ad80115962d0ea91e6aaabc70c211e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 3 14:48:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 3 14:48:30 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":2},{"name":"jc/utils.py","lines_changed":2}]},"message":"update timestamp docs","epoch":1617486510,"epoch_utc":null},{"commit":"029f79da1647e53f97ca83ba92b1f36a131f3128","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 21:52:08 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 21:52:08 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"added info regarding updated dev scripts for automating doc generation","epoch":1617425528,"epoch_utc":null},{"commit":"153b2b4a7a216caae5b03f6d50d43980c13a705f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 21:50:04 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 21:50:04 2021 -0700","stats":{"files_changed":1,"insertions":11,"deletions":68,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":79}]},"message":"use jc to help automate the generation of its own docs","epoch":1617425404,"epoch_utc":null},{"commit":"709b2fe4eead06090f903718deeb06ec774fc26e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 18:08:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 18:08:46 2021 -0700","stats":{"files_changed":2,"insertions":16,"deletions":0,"files":["man/jc.1","man/template/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":8},{"name":"man/template/manpage_template","lines_changed":8}]},"message":"add -h and -v options","epoch":1617412126,"epoch_utc":null},{"commit":"09c1fccc584e3d0582e19b520586419085ea8d04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 18:04:55 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 18:04:55 2021 -0700","stats":{"files_changed":3,"insertions":4,"deletions":6,"files":["man/jc.1","man/template/manpage_template","mangen.py"],"file_stats":[{"name":"man/jc.1","lines_changed":2},{"name":"man/template/manpage_template","lines_changed":2},{"name":"mangen.py","lines_changed":6}]},"message":"manpage updates","epoch":1617411895,"epoch_utc":null},{"commit":"fd254d99b782888fe7646e42a61f28aa99e7cba7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 17:40:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 17:40:09 2021 -0700","stats":{"files_changed":3,"insertions":193,"deletions":15,"files":["man/jc.1","man/template/manpage_template","mangen.py"],"file_stats":[{"name":"man/jc.1","lines_changed":124},{"name":"man/template/manpage_template","lines_changed":64},{"name":"mangen.py","lines_changed":20}]},"message":"add manpage generator","epoch":1617410409,"epoch_utc":null},{"commit":"88bd2c172217c498431e8904e74313bc27978785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 16:31:22 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 16:31:22 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"fix typo","epoch":1617406282,"epoch_utc":null},{"commit":"d03e2f0fc1d0310cd94702f4d3c959d71b0eb622","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 15:01:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 15:01:21 2021 -0700","stats":{"files_changed":1,"insertions":40,"deletions":0,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":40}]},"message":"add parser schema guidelines","epoch":1617400881,"epoch_utc":null},{"commit":"3f12a393bd37062cd1412128be495235b0c7351f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 13:25:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 13:25:23 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"formatting","epoch":1617395123,"epoch_utc":null},{"commit":"8c21284c5038bdc2e52ff4211fac747f33f52091","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 13:23:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 13:23:26 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":3}]},"message":"remove redundant license info","epoch":1617395006,"epoch_utc":null},{"commit":"e7d396c2157a77500017967dfc68ffaf32507c2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 13:21:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 13:21:56 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"update issues link","epoch":1617394916,"epoch_utc":null},{"commit":"f238fac0eb0c8e5133c6c9abf9ca709f5df7a925","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 13:19:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 13:19:47 2021 -0700","stats":{"files_changed":3,"insertions":49,"deletions":0,"files":["CHANGELOG","CONTRIBUTING.md","README.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"CONTRIBUTING.md","lines_changed":46},{"name":"README.md","lines_changed":2}]},"message":"add contributing guidelines","epoch":1617394787,"epoch_utc":null},{"commit":"017228f80d9a65ad7715f31c539d9fca1615296f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:14:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 12:14:26 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add tested on Windows 10","epoch":1617390866,"epoch_utc":null},{"commit":"286c5fa9434e25434ee8f4825621f68464296469","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:12:43 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 12:12:43 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add dir parser","epoch":1617390763,"epoch_utc":null},{"commit":"74cfc13abe4cd09ca5470714caeaedd24c099770","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:10:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 12:10:05 2021 -0700","stats":{"files_changed":9,"insertions":12,"deletions":21,"files":["tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-S.json","tests/fixtures/windows-10/dir-dirs.json","tests/fixtures/windows-10/dir-files.json","tests/fixtures/windows-10/dir-mix.json","tests/fixtures/windows-10/dir-raw.json","tests/fixtures/windows-10/dir.json","tests/test_dir.py"],"file_stats":[{"name":"tests/fixtures/windows-10/dir-C.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-ODTC.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-S.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-dirs.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-files.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-mix.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-raw.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir.json","lines_changed":2},{"name":"tests/test_dir.py","lines_changed":18}]},"message":"fixup dir parser tests","epoch":1617390605,"epoch_utc":null},{"commit":"0ee4a6c377321cf6ff67ced38e9a07a8f6313943","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:01:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 12:01:39 2021 -0700","stats":{"files_changed":2,"insertions":207,"deletions":460,"files":["docs/parsers/dir.md","jc/parsers/dir.py"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":316},{"name":"jc/parsers/dir.py","lines_changed":351}]},"message":"update schema and add epoch naive timestamp","epoch":1617390099,"epoch_utc":null},{"commit":"283433578dfc3f132ef35727ce5bafb3e390896c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:01:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 12:01:23 2021 -0700","stats":{"files_changed":2,"insertions":46,"deletions":0,"files":["EXAMPLES.md","README.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":45},{"name":"README.md","lines_changed":1}]},"message":"add dir parser","epoch":1617390083,"epoch_utc":null},{"commit":"9559c85057308e8815d4654bbe0062a5858c0b2b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:01:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 12:01:05 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":0,"files":["jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":1},{"name":"tests/test_utils.py","lines_changed":2}]},"message":"add windows dir format","epoch":1617390065,"epoch_utc":null},{"commit":"c5c020f5654038dacba542be3784a35d7333cbcc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 11:16:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 11:16:03 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/parsers/dir.md"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":1}]},"message":"add /S option","epoch":1617387363,"epoch_utc":null},{"commit":"95ec79bceb3d0c4245e36b7b16cfda6e16b01197","merge":"8f8be8a 5b60c74","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 11:14:26 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Apr 2 11:14:26 2021 -0700","message":"Merge pull request #107 from rasheed-rd/add-dir-parser\n\nAdd windows dir command parser","epoch":1617387266,"epoch_utc":null},{"commit":"8f8be8aa33f0b708ebd9a35c6b288572443d7181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 11:14:06 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 2 11:14:06 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4}]},"message":"add -1 option info","epoch":1617387246,"epoch_utc":null},{"commit":"5b60c7445a3f8bd2ae1587aa0ffaeaf093966f9a","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","date":"Fri Apr 2 13:43:06 2021 -0400","commit_by":"Rasheed Elsaleh","commit_by_email":"rasheed@rebelliondefense.com","commit_by_date":"Fri Apr 2 13:43:06 2021 -0400","stats":{"files_changed":5,"insertions":469,"deletions":400,"files":["docs/parsers/dir.md","jc/parsers/dir.py","tests/fixtures/windows-10/dir-S.json","tests/fixtures/windows-10/dir-S.out","tests/test_dir.py"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":404},{"name":"jc/parsers/dir.py","lines_changed":405},{"name":"tests/fixtures/windows-10/dir-S.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-S.out","lines_changed":47},{"name":"tests/test_dir.py","lines_changed":12}]},"message":"Add support for /S and update documentation","epoch":1617396186,"epoch_utc":null},{"commit":"d9dbcc8b526c8de9c6d12ac580880fd606dc68cf","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","date":"Fri Apr 2 13:13:05 2021 -0400","commit_by":"Rasheed Elsaleh","commit_by_email":"rasheed@rebelliondefense.com","commit_by_date":"Fri Apr 2 13:13:05 2021 -0400","stats":{"files_changed":15,"insertions":149,"deletions":73,"files":["docs/parsers/dir.md","jc/parsers/dir.py","tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-Q.json","tests/fixtures/windows-10/dir-Q.out","tests/fixtures/windows-10/dir-dirs.json","tests/fixtures/windows-10/dir-dirs.out","tests/fixtures/windows-10/dir-files.json","tests/fixtures/windows-10/dir-files.out","tests/fixtures/windows-10/dir-mix.json","tests/fixtures/windows-10/dir-mix.out","tests/fixtures/windows-10/dir-raw.json","tests/fixtures/windows-10/dir.json","tests/test_dir.py"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":24},{"name":"jc/parsers/dir.py","lines_changed":59},{"name":"tests/fixtures/windows-10/dir-C.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-ODTC.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-Q.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-Q.out","lines_changed":21},{"name":"tests/fixtures/windows-10/dir-dirs.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-dirs.out","lines_changed":19},{"name":"tests/fixtures/windows-10/dir-files.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-files.out","lines_changed":16},{"name":"tests/fixtures/windows-10/dir-mix.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-mix.out","lines_changed":22},{"name":"tests/fixtures/windows-10/dir-raw.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir.json","lines_changed":2},{"name":"tests/test_dir.py","lines_changed":50}]},"message":"Add parent dir to structure. Add test cases. Remove support for /Q","epoch":1617394385,"epoch_utc":null},{"commit":"79bc525970b38dea68b4859ac5dd32fc681e5994","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:42:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 20:42:36 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":1},{"name":"jc/parsers/dpkg_l.py","lines_changed":1}]},"message":"add codes field to schema","epoch":1617334956,"epoch_utc":null},{"commit":"9dae1091ddc6141694ebfdc5ae649582cb879ccd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:41:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 20:41:05 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":6},{"name":"jc/parsers/dpkg_l.py","lines_changed":4}]},"message":"typo fix","epoch":1617334865,"epoch_utc":null},{"commit":"74d3ac686a69518c1048260e37a0245ff254ff57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:37:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 20:37:12 2021 -0700","stats":{"files_changed":4,"insertions":61,"deletions":0,"files":["tests/fixtures/ubuntu-18.04/dpkg-l-codes.json","tests/fixtures/ubuntu-18.04/dpkg-l-columns500.json","tests/fixtures/ubuntu-18.04/dpkg-l.json","tests/test_dpkg_l.py"],"file_stats":[{"name":"tests/fixtures/ubuntu-18.04/dpkg-l-codes.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l-columns500.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l.json","lines_changed":1},{"name":"tests/test_dpkg_l.py","lines_changed":58}]},"message":"add dpkg-l tests","epoch":1617334632,"epoch_utc":null},{"commit":"cf3cc636badcf4ae6db1e5ee5e57ca0331ee5b0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:25:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 20:25:56 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add dpkg-l parser info","epoch":1617333956,"epoch_utc":null},{"commit":"a720441e1d34771c5a54876cb7dd63fb8c9f408e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:24:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 20:24:19 2021 -0700","stats":{"files_changed":1,"insertions":54,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":54}]},"message":"add dpkg -l example","epoch":1617333859,"epoch_utc":null},{"commit":"0a7ed0959df07e2f36d9ec3ca8c294cfdaf10396","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:17:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 20:17:21 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"jc/parsers/dpkg_l.py","lines_changed":6}]},"message":"rename err to error","epoch":1617333441,"epoch_utc":null},{"commit":"eb83c9b86dc6d1ff15efed30993071834b65a7d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:13:40 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 20:13:40 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":21,"files":["docs/utils.md"],"file_stats":[{"name":"docs/utils.md","lines_changed":29}]},"message":"replace parse_datetime_to_timestamp with timestamp class","epoch":1617333220,"epoch_utc":null},{"commit":"5c0142dd19eee14f4f1c287f0543e29824f9ae70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:12:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 20:12:58 2021 -0700","stats":{"files_changed":9,"insertions":1797,"deletions":2,"files":["CHANGELOG","docgen.sh","docs/parsers/dpkg_l.md","jc/cli.py","jc/parsers/dpkg_l.py","jc/parsers/universal.py","tests/fixtures/ubuntu-18.04/dpkg-l-codes.out","tests/fixtures/ubuntu-18.04/dpkg-l-columns500.out","tests/fixtures/ubuntu-18.04/dpkg-l.out"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/dpkg_l.md","lines_changed":170},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/dpkg_l.py","lines_changed":247},{"name":"jc/parsers/universal.py","lines_changed":4},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l-codes.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l-columns500.out","lines_changed":677},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l.out","lines_changed":677}]},"message":"add dpkg-l parser","epoch":1617333178,"epoch_utc":null},{"commit":"c326c8dc8356b55bba13864156adf30607205ece","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 12:52:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 12:52:10 2021 -0700","stats":{"files_changed":18,"insertions":194,"deletions":1,"files":["jc/parsers/time.py","tests/fixtures/osx-10.14.6/time-l.json","tests/fixtures/osx-10.14.6/time-l.out","tests/fixtures/osx-10.14.6/time-lp.json","tests/fixtures/osx-10.14.6/time-lp.out","tests/fixtures/osx-10.14.6/time-p.json","tests/fixtures/osx-10.14.6/time-p.out","tests/fixtures/osx-10.14.6/time.json","tests/fixtures/osx-10.14.6/time.out","tests/fixtures/ubuntu-18.04/time-p.json","tests/fixtures/ubuntu-18.04/time-p.out","tests/fixtures/ubuntu-18.04/time-verbose.json","tests/fixtures/ubuntu-18.04/time-verbose.out","tests/fixtures/ubuntu-18.04/time.json","tests/fixtures/ubuntu-18.04/time.out","tests/fixtures/ubuntu-18.04/time2.json","tests/fixtures/ubuntu-18.04/time2.out","tests/test_time.py"],"file_stats":[{"name":"jc/parsers/time.py","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/time-l.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/time-l.out","lines_changed":15},{"name":"tests/fixtures/osx-10.14.6/time-lp.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/time-lp.out","lines_changed":17},{"name":"tests/fixtures/osx-10.14.6/time-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/time-p.out","lines_changed":3},{"name":"tests/fixtures/osx-10.14.6/time.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/time.out","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time-p.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/time-verbose.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time-verbose.out","lines_changed":23},{"name":"tests/fixtures/ubuntu-18.04/time.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/time2.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time2.out","lines_changed":2},{"name":"tests/test_time.py","lines_changed":118}]},"message":"add TypeError to except block. add /usr/bin/time tests","epoch":1617306730,"epoch_utc":null},{"commit":"fc4082a03feb5645a1ad687908782a2584a58956","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:26:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 11:26:02 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":131,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":131}]},"message":"remove old parse_datetime_to_timestamp function","epoch":1617301562,"epoch_utc":null},{"commit":"c8655565ff8718f0f14d41696b81e6539529dde1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:23:24 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 11:23:24 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"use new timestamp class","epoch":1617301404,"epoch_utc":null},{"commit":"638f879f16c9e87edb60953f4fd0b1c7ad92f277","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:21:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 11:21:27 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":5}]},"message":"use new timestamp class","epoch":1617301287,"epoch_utc":null},{"commit":"1d221bf7e6128d57bd769c0fe8f37f7a94da8cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:19:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 11:19:49 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/who.py","lines_changed":3}]},"message":"use new timestamp class","epoch":1617301189,"epoch_utc":null},{"commit":"60ea71f0ef931dccf09e6eb0cb737ddad0b47f0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:18:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 11:18:03 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/timedatectl.py"],"file_stats":[{"name":"jc/parsers/timedatectl.py","lines_changed":3}]},"message":"use new timestamp class","epoch":1617301083,"epoch_utc":null},{"commit":"d8bdd35a3f462efcdc871426309299e8aefb0a79","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:17:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 11:17:53 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":5}]},"message":"use new timestamp class","epoch":1617301073,"epoch_utc":null},{"commit":"7463891c53f3670710dfa72ed1422431c274fe4a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:13:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 11:13:02 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":6}]},"message":"use new timestamp class","epoch":1617300782,"epoch_utc":null},{"commit":"7537aec76fa07384c4439f34c50d4e3f001c0dfa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:08:27 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 11:08:27 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":8,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":16}]},"message":"use jc.utils.timestamp instead of jc.utils.parse_datetime_to_timestamp()","epoch":1617300507,"epoch_utc":null},{"commit":"62234e39a8533362a20f106c64326ed69f430006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:08:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 11:08:20 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":8,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":13}]},"message":"use jc.utils.timestamp instead of jc.utils.parse_datetime_to_timestamp()","epoch":1617300500,"epoch_utc":null},{"commit":"be004b7b3fe9217160c6418907e7d8aad10e5fae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:07:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 1 11:07:37 2021 -0700","stats":{"files_changed":2,"insertions":172,"deletions":15,"files":["jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":155},{"name":"tests/test_utils.py","lines_changed":32}]},"message":"make parse_datetime_to_timestamp function a class called timestamp for easier use","epoch":1617300457,"epoch_utc":null},{"commit":"82539444b24169b2eb762485ed032fc968a81f71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 31 20:48:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 31 20:48:44 2021 -0700","stats":{"files_changed":2,"insertions":23,"deletions":21,"files":["docs/parsers/time.md","jc/parsers/time.py"],"file_stats":[{"name":"docs/parsers/time.md","lines_changed":1},{"name":"jc/parsers/time.py","lines_changed":43}]},"message":"fix indentation for int and float conversions. add real_time field to schema","epoch":1617248924,"epoch_utc":null},{"commit":"a571d3cbafd5048d1d59070e1791398ae410197f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 31 20:41:04 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 31 20:41:04 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/time.md","jc/parsers/time.py"],"file_stats":[{"name":"docs/parsers/time.md","lines_changed":2},{"name":"jc/parsers/time.py","lines_changed":2}]},"message":"fix typo","epoch":1617248464,"epoch_utc":null},{"commit":"a038c14c23ea27264df61a38e0301de8d1fa1b9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 31 20:39:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 31 20:39:03 2021 -0700","stats":{"files_changed":3,"insertions":8,"deletions":8,"files":["EXAMPLES.md","docs/parsers/time.md","jc/parsers/time.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":4},{"name":"jc/parsers/time.py","lines_changed":10}]},"message":"change microseconds to centiseconds","epoch":1617248343,"epoch_utc":null},{"commit":"25a85d874cd2b57a7700b0c2dca61132127732b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 31 20:21:29 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 31 20:21:29 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"update docs","epoch":1617247289,"epoch_utc":null},{"commit":"884c36ff42df4f580c8e2b4705def8e4c1182e39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 31 20:19:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 31 20:19:46 2021 -0700","stats":{"files_changed":8,"insertions":536,"deletions":1,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","docs/parsers/iw_scan.md","docs/parsers/time.md","jc/cli.py","jc/parsers/time.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":36},{"name":"README.md","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":163},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/time.py","lines_changed":332}]},"message":"add /usr/bin/time parser","epoch":1617247186,"epoch_utc":null},{"commit":"b98e72b8b4eda0ab5ede7725226e61634af572eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 21:33:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 30 21:33:23 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add ls parser info","epoch":1617165203,"epoch_utc":null},{"commit":"05885c0096b5ee142ecff2d17e37c446518998a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 21:29:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 30 21:29:34 2021 -0700","stats":{"files_changed":5,"insertions":931,"deletions":18,"files":["docs/parsers/ls.md","jc/parsers/ls.py","tests/fixtures/ubuntu-18.04/ls-l-iso.json","tests/fixtures/ubuntu-18.04/ls-l-iso.out","tests/test_ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":22},{"name":"jc/parsers/ls.py","lines_changed":31},{"name":"tests/fixtures/ubuntu-18.04/ls-l-iso.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-l-iso.out","lines_changed":883},{"name":"tests/test_ls.py","lines_changed":12}]},"message":"add epoch and epoch_utc timestamps","epoch":1617164974,"epoch_utc":null},{"commit":"4c9761231af897658c3a2c0abcc476aa8b43d1b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 20:41:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 30 20:41:10 2021 -0700","stats":{"files_changed":21,"insertions":118,"deletions":81,"files":["CHANGELOG","EXAMPLES.md","README.md","docs/parsers/dig.md","jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":46},{"name":"README.md","lines_changed":14},{"name":"docs/parsers/dig.md","lines_changed":50},{"name":"jc/parsers/dig.py","lines_changed":56},{"name":"tests/fixtures/centos-7.7/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig-x.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig.json","lines_changed":2},{"name":"tests/fixtures/generic/dig-answer-spaces.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-x.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig.json","lines_changed":2}]},"message":"add when_epoch and when_epoch_utc fields","epoch":1617162070,"epoch_utc":null},{"commit":"656eaa150861948091ef9d6323805c2698039bc6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 16:43:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 30 16:43:53 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1617147833,"epoch_utc":null},{"commit":"1560dcddcf82f55fffce22d1b46d372b25a9d0fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 16:43:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 30 16:43:02 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"add acpi, upower parsers and -v version option","epoch":1617147782,"epoch_utc":null},{"commit":"08d4cd4870c7acaf3a453d1400b64d77d462437b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 16:34:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 30 16:34:01 2021 -0700","stats":{"files_changed":7,"insertions":114,"deletions":43,"files":["EXAMPLES.md","docs/parsers/acpi.md","jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.json","tests/fixtures/generic/acpi-V2.json","tests/fixtures/generic/acpi-V3.json","tests/fixtures/generic/acpi-V4.json"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":34},{"name":"docs/parsers/acpi.md","lines_changed":50},{"name":"jc/parsers/acpi.py","lines_changed":65},{"name":"tests/fixtures/generic/acpi-V.json","lines_changed":2},{"name":"tests/fixtures/generic/acpi-V2.json","lines_changed":2},{"name":"tests/fixtures/generic/acpi-V3.json","lines_changed":2},{"name":"tests/fixtures/generic/acpi-V4.json","lines_changed":2}]},"message":"add time calculations to acpi parser","epoch":1617147241,"epoch_utc":null},{"commit":"9767a50cededb140575e195abf79ce49c4f53789","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 11:59:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 30 11:59:44 2021 -0700","stats":{"files_changed":12,"insertions":48,"deletions":46,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/who.md","jc/parsers/who.py","jc/utils.py","tests/fixtures/centos-7.7/who-a.json","tests/fixtures/centos-7.7/who.json","tests/fixtures/osx-10.14.6/who-a.json","tests/fixtures/osx-10.14.6/who.json","tests/fixtures/ubuntu-18.04/who-a.json","tests/fixtures/ubuntu-18.04/who.json","tests/test_utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":37},{"name":"docs/parsers/who.md","lines_changed":18},{"name":"jc/parsers/who.py","lines_changed":23},{"name":"jc/utils.py","lines_changed":1},{"name":"tests/fixtures/centos-7.7/who-a.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/who.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/who-a.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/who.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/who-a.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/who.json","lines_changed":2},{"name":"tests/test_utils.py","lines_changed":2}]},"message":"update who parser to add epoch naive timestamp","epoch":1617130784,"epoch_utc":null},{"commit":"cd86890ed1493644e391e52e33561e9a77631a51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 08:05:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 30 08:05:26 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"add website to info and use variables for version info","epoch":1617116726,"epoch_utc":null},{"commit":"ba0dd3b9ca98a042c772898302fcfe5fdc84f79a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 21:25:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 21:25:19 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":4}]},"message":"add parse_timedate_to_timestamp test for format 7300","epoch":1617078319,"epoch_utc":null},{"commit":"8d7fa07ffd50f38336a448eb506a76d9d4849a6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 21:20:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 21:20:19 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":11,"files":["tests/fixtures/centos-7.7/timedatectl.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/timedatectl.json","lines_changed":12}]},"message":"unformat json","epoch":1617078019,"epoch_utc":null},{"commit":"cade1bfe6e56b5926898b7204e911885efebd5a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 21:19:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 21:19:12 2021 -0700","stats":{"files_changed":2,"insertions":12,"deletions":2,"files":["tests/fixtures/centos-7.7/timedatectl.json","tests/fixtures/ubuntu-18.04/timedatectl.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/timedatectl.json","lines_changed":12},{"name":"tests/fixtures/ubuntu-18.04/timedatectl.json","lines_changed":2}]},"message":"update timedatectl tests for new epoch_utc field","epoch":1617077952,"epoch_utc":null},{"commit":"daec4ab0a7f572e872b27b043d51f68e5e06300f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 21:16:40 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 21:16:40 2021 -0700","stats":{"files_changed":5,"insertions":20,"deletions":4,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/timedatectl.md","jc/parsers/timedatectl.py","jc/utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"EXAMPLES.md","lines_changed":3},{"name":"docs/parsers/timedatectl.md","lines_changed":6},{"name":"jc/parsers/timedatectl.py","lines_changed":11},{"name":"jc/utils.py","lines_changed":1}]},"message":"add epoch_utc field to timedatectl parser","epoch":1617077800,"epoch_utc":null},{"commit":"3c96bc319615c824a06c388e9e3c1d68a9bf4084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:57:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 20:57:58 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":2}]},"message":"version bump","epoch":1617076678,"epoch_utc":null},{"commit":"7f7d8d4bd6f37015b11bac60a7bd99e8d3eca108","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:36:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 20:36:10 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":0,"files":["docs/parsers/stat.md","jc/parsers/stat.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":4}]},"message":"update stat docs","epoch":1617075370,"epoch_utc":null},{"commit":"47263661a41987f334fd484e866e0aa8859cde5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:30:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 20:30:20 2021 -0700","stats":{"files_changed":1,"insertions":18,"deletions":2,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":20}]},"message":"update stat example","epoch":1617075020,"epoch_utc":null},{"commit":"4c42a086d206919dfe4f1c0801fe4fb1027cb1cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:25:54 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 20:25:54 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":6,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":7}]},"message":"clean up debug code","epoch":1617074754,"epoch_utc":null},{"commit":"5d2541a5c4bc93f3943a491c76df7f8d4e2cf44b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:22:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 20:22:35 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":5}]},"message":"remove auto c locale and use a manual format rule for windows and linux compatibility","epoch":1617074555,"epoch_utc":null},{"commit":"d91d170b49bfc88c0b2fb54475705c038172f1c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:16:05 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 20:16:05 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"try manual c locale format for windows","epoch":1617074165,"epoch_utc":null},{"commit":"6d1f4584a9ccd0f0f7ed4fdf408576a9e7f5046b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:05:42 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 20:05:42 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":4}]},"message":"try manually setting time format for windows compatibility","epoch":1617073542,"epoch_utc":null},{"commit":"1d76d96bcf4185cffb7066bec637913099399db5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 16:58:57 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 16:58:57 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":4}]},"message":"debug windows issue","epoch":1617062337,"epoch_utc":null},{"commit":"e8847c998c91131acf5ee0f6485e9976c0fce3ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 16:35:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 16:35:26 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["tests/fixtures/centos-7.7/stat.json","tests/fixtures/freebsd12/stat.json","tests/fixtures/osx-10.14.6/stat.json","tests/fixtures/ubuntu-18.04/stat.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/stat.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/stat.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/stat.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/stat.json","lines_changed":2}]},"message":"update stat tests","epoch":1617060926,"epoch_utc":null},{"commit":"da88e49bae2f3fecff623f52c20bf994b653583e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 15:36:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 15:36:16 2021 -0700","stats":{"files_changed":2,"insertions":69,"deletions":29,"files":["docs/parsers/stat.md","jc/parsers/stat.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":76},{"name":"jc/parsers/stat.py","lines_changed":22}]},"message":"add new examples","epoch":1617057376,"epoch_utc":null},{"commit":"65c3a12e5422782df40489c3c431677f5657dbf5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 15:32:04 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 15:32:04 2021 -0700","stats":{"files_changed":2,"insertions":35,"deletions":24,"files":["jc/parsers/stat.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":58},{"name":"jc/utils.py","lines_changed":1}]},"message":"simplify None data scenario","epoch":1617057124,"epoch_utc":null},{"commit":"d8d600cc36bde4e6216b935f87a765599e896714","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 14:51:48 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 14:51:48 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add reference to -h for help","epoch":1617054708,"epoch_utc":null},{"commit":"507999b117b024fed1ccf067bd5dc411dbeb268c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 14:45:13 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 14:45:13 2021 -0700","stats":{"files_changed":3,"insertions":34,"deletions":19,"files":["docs/utils.md","jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":32},{"name":"jc/utils.py","lines_changed":13},{"name":"tests/test_utils.py","lines_changed":8}]},"message":"add stat command timestamp detection","epoch":1617054313,"epoch_utc":null},{"commit":"8ad164eb340e135eeeb10b721172916182f37e30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 12:33:54 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 12:33:54 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":6}]},"message":"fix tests for compact output","epoch":1617046434,"epoch_utc":null},{"commit":"a507df140b245b83b1c46e8462b44e1145c42f2a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 12:25:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 12:25:58 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add compact json info","epoch":1617045958,"epoch_utc":null},{"commit":"8912a99986a977ee6ca7bbe2368f5033644577b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 12:25:48 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 12:25:48 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"make default json output more compact","epoch":1617045948,"epoch_utc":null},{"commit":"1953f9882890cd0e8c515d43ce28c96f918b0ab4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 11:44:43 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 11:44:43 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"add version info. add json now supports unicode output","epoch":1617043483,"epoch_utc":null},{"commit":"7515218ddd2cdcfcebd67850140e842f2f121226","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 11:42:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 11:42:01 2021 -0700","stats":{"files_changed":2,"insertions":10,"deletions":14,"files":["jc/cli.py","jc/utils.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8},{"name":"jc/utils.py","lines_changed":16}]},"message":"use jc.utils for all warning and error messages. simply error and warning formatting.","epoch":1617043321,"epoch_utc":null},{"commit":"36c11201366cefedee4244fb71a4a9cc6507e6ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 10:59:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 10:59:56 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"formatting","epoch":1617040796,"epoch_utc":null},{"commit":"8fa0fe64d8418093c7f28cdc70a7f409956aeb04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 10:52:02 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 10:52:02 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":10}]},"message":"add -v to helptext. minor formatting","epoch":1617040322,"epoch_utc":null},{"commit":"c1a8201b140c65579ff9f8427322b67653bf3006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 10:24:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 10:24:58 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":4}]},"message":"add copyright","epoch":1617038698,"epoch_utc":null},{"commit":"398bbac48c8a716b1872843d671aa6ceaeba6a78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 10:23:52 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 10:23:52 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"simplify return value for parse_datetime_to_timestamp()","epoch":1617038632,"epoch_utc":null},{"commit":"ea71a42bbdd9b09a457727cfe763054625f7901a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 09:43:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 09:43:19 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"formatting","epoch":1617036199,"epoch_utc":null},{"commit":"1c16d25b17a7282a62a5ebd9755df5569c57435f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 09:41:15 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 29 09:41:15 2021 -0700","stats":{"files_changed":2,"insertions":30,"deletions":9,"files":["README.md","jc/cli.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"jc/cli.py","lines_changed":35}]},"message":"add version option (-v) and copyright information. add 'ensure_ascii=False' to json dumps to properly show UTF-8 copyright character","epoch":1617036075,"epoch_utc":null},{"commit":"9d12ded889f656656267cbf7a91d71267201f736","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 16:32:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 16:32:17 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"help description change","epoch":1616801537,"epoch_utc":null},{"commit":"5312701515ecb3a10598bb9dcf2f73b7eae71b93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 16:29:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 16:29:10 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add - make all external python requirements optional","epoch":1616801350,"epoch_utc":null},{"commit":"808c7bc0a94ecfd160ee2b257e5feec347829a5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 16:14:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 16:14:35 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/xml.py"],"file_stats":[{"name":"jc/parsers/xml.py","lines_changed":10}]},"message":"make xmltodict library optional","epoch":1616800475,"epoch_utc":null},{"commit":"4d394015f458f284d052ce2c1a0c8492916c5b3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 16:10:28 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 16:10:28 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":10}]},"message":"make ruamel.yaml library optional","epoch":1616800228,"epoch_utc":null},{"commit":"3638298af8ebc01d54aa3ab5668d0adedca957e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 15:54:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 15:54:45 2021 -0700","stats":{"files_changed":1,"insertions":53,"deletions":44,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":97}]},"message":"make pygments library optional","epoch":1616799285,"epoch_utc":null},{"commit":"5f00973e400629bd68c0ab60ed9005410278f855","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 15:38:57 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 15:38:57 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":2}]},"message":"remove parenthesis to normalize text for naive timezone detection","epoch":1616798337,"epoch_utc":null},{"commit":"0f6e2c14fcb69f664c29083ec5207326f842dfdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 14:57:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 14:57:19 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":9}]},"message":"simplify timestamp failure logic","epoch":1616795839,"epoch_utc":null},{"commit":"51813da61994226ba40478825d47f80c23413349","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 14:56:45 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 14:56:45 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":4,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":13}]},"message":"add offset timezones. fix timestamp logic on conversion failure","epoch":1616795805,"epoch_utc":null},{"commit":"e7751322ea195cac7f1921ba8e0364c442065d20","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 14:55:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 14:55:47 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":10}]},"message":"formatting","epoch":1616795747,"epoch_utc":null},{"commit":"26ef29843784ade3d55410be13300dd6f4c06890","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 14:55:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 14:55:16 2021 -0700","stats":{"files_changed":1,"insertions":10,"deletions":6,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":16}]},"message":"change return to always include the entire object but all keys may be None if conversion fails","epoch":1616795716,"epoch_utc":null},{"commit":"badaf8ce73d7deb0ec2be244e27b4bf8cddbea19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 14:00:33 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 14:00:33 2021 -0700","stats":{"files_changed":1,"insertions":14,"deletions":14,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":28}]},"message":"comment formatting","epoch":1616792433,"epoch_utc":null},{"commit":"b123a622039f3cc32643a3bfc0766154d660f8bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 13:11:34 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 13:11:34 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":9}]},"message":"move locale change formats to the end of the list","epoch":1616789494,"epoch_utc":null},{"commit":"cfd77e42522aa2ebeada9f45ac99bd1d3414f782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 13:01:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 13:01:12 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":1}]},"message":"reset locale to None on exception","epoch":1616788872,"epoch_utc":null},{"commit":"38f814072eac5370059f1b4203316eee41cf535b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 11:55:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 11:55:12 2021 -0700","stats":{"files_changed":1,"insertions":26,"deletions":8,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":34}]},"message":"better normalization of datetime string. better UTC detection. More formats supported with detected locale.","epoch":1616784912,"epoch_utc":null},{"commit":"a0db7754e384a0c95f2099bf894f3a22bd33c002","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 09:32:49 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 09:32:49 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add nixos install info","epoch":1616776369,"epoch_utc":null},{"commit":"f07620afc7dc0d0d605eb483ef36c5979b33cdfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 09:28:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 26 09:28:03 2021 -0700","stats":{"files_changed":3,"insertions":18,"deletions":7,"files":["README.md","jc/__init__.py","jc/cli.py"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"jc/__init__.py","lines_changed":3},{"name":"jc/cli.py","lines_changed":21}]},"message":"move version to jc.__init__.py\nadd -h option for help instead of always showing on error\nuse jc.utils.error_message for the following errors: missing/incorrect arguments, parser not found, missing piped data","epoch":1616776083,"epoch_utc":null},{"commit":"c1b0d27752726989c6051f683a1194941bee598c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 20:45:38 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 20:45:38 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":10,"files":["runtests.sh"],"file_stats":[{"name":"runtests.sh","lines_changed":10}]},"message":"remove old commented commands","epoch":1616730338,"epoch_utc":null},{"commit":"430a5108aa265d4df0e4584eade54759da864c61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 20:42:58 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 20:42:58 2021 -0700","stats":{"files_changed":3,"insertions":19,"deletions":60,"files":["runtests.sh","tests/test_last.py","tests/test_last2.py"],"file_stats":[{"name":"runtests.sh","lines_changed":16},{"name":"tests/test_last.py","lines_changed":23},{"name":"tests/test_last2.py","lines_changed":40}]},"message":"move all tests to github actions","epoch":1616730178,"epoch_utc":null},{"commit":"111ce92fc9c33b82c7d1a1664dda046ea5993f6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 20:37:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 20:37:35 2021 -0700","stats":{"files_changed":4,"insertions":0,"deletions":1,"files":["tests/{localtest_date.py => test_date.py}","tests/{localtest_last.py => test_last2.py}","tests/{localtest_upower.py => test_upower.py}","tests/test_utils.py"],"file_stats":[{"name":"tests/{localtest_date.py => test_date.py}","lines_changed":0},{"name":"tests/{localtest_last.py => test_last2.py}","lines_changed":0},{"name":"tests/{localtest_upower.py => test_upower.py}","lines_changed":0},{"name":"tests/test_utils.py","lines_changed":1}]},"message":"attempt all tests in github actions with timezone correction","epoch":1616729855,"epoch_utc":null},{"commit":"c851e8a58d98b2a4907cf1e7cf7c7d8d8dc04dc6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 20:33:25 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 20:33:25 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":1}]},"message":"force github action","epoch":1616729605,"epoch_utc":null},{"commit":"39f4bcd9b41450068903ea2843508586eccdf709","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 20:30:13 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Mar 25 20:30:13 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"Change Windows timezone\n\nuse \"Pacific Standard Time\"","epoch":1616729413,"epoch_utc":null},{"commit":"4a610c4c81493788b8351e8c74aabe819c981c02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:57:32 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 19:57:32 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":1}]},"message":"force github action","epoch":1616727452,"epoch_utc":null},{"commit":"89ee11945d4e2db107a33ef0d61e0c6015ac8ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:55:21 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Mar 25 19:55:21 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"Change timezone provider\n\nuses: szenius/set-timezone@v1.0","epoch":1616727321,"epoch_utc":null},{"commit":"dadb09b74a69d1852f8433e0e32ccdd67bd91181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:52:43 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 19:52:43 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":1}]},"message":"force github action","epoch":1616727163,"epoch_utc":null},{"commit":"1b1f638b97dc5e6f2767183eb363b79ae3c9b3c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:49:03 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Mar 25 19:49:03 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":8}]},"message":"Change timezone change provider\n\nchange to actions/set-timezone-action","epoch":1616726943,"epoch_utc":null},{"commit":"794fc4ed44d1565514303090403d68ba5d639cb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:43:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 19:43:16 2021 -0700","stats":{"files_changed":2,"insertions":36,"deletions":8,"files":["jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":16},{"name":"tests/test_utils.py","lines_changed":28}]},"message":"add parse_datetime_to_timestamp() tests","epoch":1616726596,"epoch_utc":null},{"commit":"72f735bf9211d7beddcf58819fe465722f5d7c5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:42:02 2021 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Mar 25 19:42:02 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":4}]},"message":"Set Timezone to America/Los_Angeles\n\nUsing zcong1993/setup-timezone","epoch":1616726522,"epoch_utc":null},{"commit":"912877f25ad562ed4cafe7b2d7446bd48b477ea2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 15:34:54 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 15:34:54 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"additional timezone info","epoch":1616711694,"epoch_utc":null},{"commit":"2772c5ae436ea437d833003372d53a3d3f955ea0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 15:10:07 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 15:10:07 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"formatting","epoch":1616710207,"epoch_utc":null},{"commit":"a7ad24d2cb61d84cf2846f8fa43af31f0597043e","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","date":"Thu Mar 25 16:45:30 2021 -0400","commit_by":"Rasheed Elsaleh","commit_by_email":"rasheed@rebelliondefense.com","commit_by_date":"Thu Mar 25 18:09:47 2021 -0400","stats":{"files_changed":13,"insertions":772,"deletions":0,"files":["docgen.sh","docs/parsers/dir.md","jc/cli.py","jc/parsers/dir.py","tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-C.out","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-ODTC.out","tests/fixtures/windows-10/dir-Q.json","tests/fixtures/windows-10/dir-Q.out","tests/fixtures/windows-10/dir.json","tests/fixtures/windows-10/dir.out","tests/test_dir.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/dir.md","lines_changed":286},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/dir.py","lines_changed":332},{"name":"tests/fixtures/windows-10/dir-C.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-C.out","lines_changed":21},{"name":"tests/fixtures/windows-10/dir-ODTC.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-ODTC.out","lines_changed":21},{"name":"tests/fixtures/windows-10/dir-Q.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-Q.out","lines_changed":21},{"name":"tests/fixtures/windows-10/dir.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir.out","lines_changed":21},{"name":"tests/test_dir.py","lines_changed":64}]},"message":"Add dir parser\n\nAdd usage commands\n\nFix example options\n\nupdate dir.md","epoch":1616715930,"epoch_utc":null},{"commit":"a364a6a9faeb6aa290b790f3dec74e92b8670534","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 15:08:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 15:08:23 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"add note regarding calculated timestamps","epoch":1616710103,"epoch_utc":null},{"commit":"7b2dc86a8d974e7984fe2540f56a66c2b9386acd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 12:07:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 12:07:36 2021 -0700","stats":{"files_changed":1,"insertions":23,"deletions":19,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":42}]},"message":"update last example with new timestamp fields","epoch":1616699256,"epoch_utc":null},{"commit":"ad645636d07d0423253f19068a22b2a28251b05f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 11:43:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 11:43:30 2021 -0700","stats":{"files_changed":5,"insertions":86,"deletions":50,"files":["CHANGELOG","EXAMPLES.md","README.md","docs/parsers/uptime.md","jc/parsers/uptime.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":9},{"name":"EXAMPLES.md","lines_changed":19},{"name":"README.md","lines_changed":19},{"name":"docs/parsers/uptime.md","lines_changed":50},{"name":"jc/parsers/uptime.py","lines_changed":39}]},"message":"update uptime docs","epoch":1616697810,"epoch_utc":null},{"commit":"2f2f297b29fbe3172647a81db084b3564a441d40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 11:35:21 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 11:35:21 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["tests/fixtures/centos-7.7/uptime.json","tests/fixtures/osx-10.11.6/uptime.json","tests/fixtures/osx-10.14.6/uptime.json","tests/fixtures/ubuntu-18.04/uptime.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/uptime.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/uptime.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/uptime.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/uptime.json","lines_changed":2}]},"message":"update uptime fixtures with new fields","epoch":1616697321,"epoch_utc":null},{"commit":"099ae3fde03f8157298f6b412bdddb8bd56da09a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 11:17:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 11:17:44 2021 -0700","stats":{"files_changed":1,"insertions":26,"deletions":22,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":48}]},"message":"fix issue when there is no data","epoch":1616696264,"epoch_utc":null},{"commit":"e9febe98ac5ec0e03791c5b6794446a2c3312fb1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 11:17:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 11:17:01 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["runtests.sh"],"file_stats":[{"name":"runtests.sh","lines_changed":2}]},"message":"add localtest partition lines for readability","epoch":1616696221,"epoch_utc":null},{"commit":"5fbd07cccf9fb697b996dcc3949eef5b1c09e655","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 10:31:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 25 10:31:12 2021 -0700","stats":{"files_changed":1,"insertions":59,"deletions":26,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":85}]},"message":"rewrite of uptime parser including new fields","epoch":1616693472,"epoch_utc":null},{"commit":"5fed4698c2c1f1b7e05c5b4c51639f818e049b53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:57:04 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 21:57:04 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":6,"files":["docs/parsers/last.md","jc/parsers/last.py"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":4},{"name":"jc/parsers/last.py","lines_changed":7}]},"message":"update docs and version number","epoch":1616648224,"epoch_utc":null},{"commit":"ed7eb0983a4dfcc1d66a2957be3e10b2203d909e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:51:43 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 21:51:43 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":8}]},"message":"use parse_datetime_to_timestamp function instead of custom format string","epoch":1616647903,"epoch_utc":null},{"commit":"90c7e18e5fc5ea9fcf6157cc2656f47193d78411","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:50:32 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 21:50:32 2021 -0700","stats":{"files_changed":1,"insertions":16,"deletions":11,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":27}]},"message":"update date example","epoch":1616647832,"epoch_utc":null},{"commit":"953ab5c3bd0c8b6eef29b717edaf1aa2380c2b93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:29:30 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 21:29:30 2021 -0700","stats":{"files_changed":2,"insertions":1,"deletions":0,"files":["runtests.sh","tests/{test_upower.py => localtest_upower.py}"],"file_stats":[{"name":"runtests.sh","lines_changed":1},{"name":"tests/{test_upower.py => localtest_upower.py}","lines_changed":0}]},"message":"make upower tests local only","epoch":1616646570,"epoch_utc":null},{"commit":"699c97d8a07f7575454746159ac4d19981cd1a5c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:24:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 21:24:47 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add last parser info","epoch":1616646287,"epoch_utc":null},{"commit":"e4ca0de92a689ce93b91d86106a5da590226855a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:24:25 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 21:24:25 2021 -0700","stats":{"files_changed":8,"insertions":100,"deletions":0,"files":["tests/fixtures/generic/upower-i-c-locale.json","tests/fixtures/generic/upower-i-non-utc.json","tests/fixtures/generic/upower-i-utc.json",".../{upower-i-utc.out2 => upower-i-utc.out}","tests/fixtures/ubuntu-18.04/upower-d-clocale.json","tests/fixtures/ubuntu-18.04/upower-d.json","tests/fixtures/ubuntu-18.04/upower-i.json","tests/test_upower.py"],"file_stats":[{"name":"tests/fixtures/generic/upower-i-c-locale.json","lines_changed":1},{"name":"tests/fixtures/generic/upower-i-non-utc.json","lines_changed":1},{"name":"tests/fixtures/generic/upower-i-utc.json","lines_changed":1},{"name":".../{upower-i-utc.out2 => upower-i-utc.out}","lines_changed":0},{"name":"tests/fixtures/ubuntu-18.04/upower-d-clocale.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/upower-d.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/upower-i.json","lines_changed":1},{"name":"tests/test_upower.py","lines_changed":94}]},"message":"add upower tests","epoch":1616646265,"epoch_utc":null},{"commit":"04745a36b84cc79e56bde2a0e92a4ee9ab4a1538","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 20:21:06 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 20:21:06 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":5,"files":["CHANGELOG","jc/utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":12},{"name":"jc/utils.py","lines_changed":1}]},"message":"doc update","epoch":1616642466,"epoch_utc":null},{"commit":"5936940532b8b753e67c9f5cd9287f34cc84ae9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 20:20:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 20:20:53 2021 -0700","stats":{"files_changed":7,"insertions":136,"deletions":186,"files":["docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date-after-midnight.json","tests/fixtures/generic/date-before-midnight.json","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/fixtures/ubuntu-20.04/date2.json"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":74},{"name":"jc/parsers/date.py","lines_changed":238},{"name":"tests/fixtures/generic/date-after-midnight.json","lines_changed":2},{"name":"tests/fixtures/generic/date-before-midnight.json","lines_changed":2},{"name":"tests/fixtures/generic/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date2.json","lines_changed":2}]},"message":"rewrite of date parser using datetime library","epoch":1616642453,"epoch_utc":null},{"commit":"b3eb064b6753d6e894884e1c16054630c2396fe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 17:13:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 17:13:01 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":4}]},"message":"clarify format definition comments","epoch":1616631181,"epoch_utc":null},{"commit":"e4b41057e302074ac2a81ad8c36b6f95cd6b7db2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 17:02:17 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 17:02:17 2021 -0700","stats":{"files_changed":3,"insertions":24,"deletions":0,"files":[".../{upower-i.out => upower-i-c-locale.out}","tests/fixtures/generic/upower-i-non-utc.out",".../generic/{upower-i2.out => upower-i-utc.out2}"],"file_stats":[{"name":".../{upower-i.out => upower-i-c-locale.out}","lines_changed":0},{"name":"tests/fixtures/generic/upower-i-non-utc.out","lines_changed":24},{"name":".../generic/{upower-i2.out => upower-i-utc.out2}","lines_changed":0}]},"message":"update upower fixture names","epoch":1616630537,"epoch_utc":null},{"commit":"1d41c46cc762ab0c78b819e56db7df39f1111d5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 17:01:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 17:01:56 2021 -0700","stats":{"files_changed":1,"insertions":34,"deletions":5,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":39}]},"message":"normalize datetime string to remove all timezones except UTC","epoch":1616630516,"epoch_utc":null},{"commit":"a5c444587b3f0874fcc2833dc4e759c2dc1c7834","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 15:13:10 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 15:13:10 2021 -0700","stats":{"files_changed":5,"insertions":28,"deletions":0,"files":["tests/fixtures/generic/date-after-midnight.json","tests/fixtures/generic/date-after-midnight.out","tests/fixtures/generic/date-before-midnight.json","tests/fixtures/generic/date-before-midnight.out","tests/localtest_date.py"],"file_stats":[{"name":"tests/fixtures/generic/date-after-midnight.json","lines_changed":1},{"name":"tests/fixtures/generic/date-after-midnight.out","lines_changed":1},{"name":"tests/fixtures/generic/date-before-midnight.json","lines_changed":1},{"name":"tests/fixtures/generic/date-before-midnight.out","lines_changed":1},{"name":"tests/localtest_date.py","lines_changed":24}]},"message":"add before and after midnight date tests","epoch":1616623990,"epoch_utc":null},{"commit":"a56f471be980be16e73d3a91e2b12aad26c6d38c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 15:05:22 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 15:05:22 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/fixtures/generic/upower-i2.out"],"file_stats":[{"name":"tests/fixtures/generic/upower-i2.out","lines_changed":2}]},"message":"update fixture to use UTC for better testing","epoch":1616623522,"epoch_utc":null},{"commit":"6a6b26ed8d97014c2a5c7d91a4cd9b23f49530fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 15:04:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 15:04:39 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":5}]},"message":"fix 12 to 24 hour conversion for midnight cases","epoch":1616623479,"epoch_utc":null},{"commit":"f62446c152d89f2d37b22ffe9d9de5b5c9fa7049","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 15:04:09 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 15:04:09 2021 -0700","stats":{"files_changed":1,"insertions":11,"deletions":10,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":21}]},"message":"rename variables. add another european time format","epoch":1616623449,"epoch_utc":null},{"commit":"56011f1f172344cab2a8e869e7a6df6e45c45874","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 14:14:22 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 14:14:22 2021 -0700","stats":{"files_changed":3,"insertions":73,"deletions":6,"files":["EXAMPLES.md","docs/parsers/upower.md","jc/parsers/upower.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":63},{"name":"docs/parsers/upower.md","lines_changed":8},{"name":"jc/parsers/upower.py","lines_changed":8}]},"message":"updated upower examples","epoch":1616620462,"epoch_utc":null},{"commit":"6d44091c80318fde6c09cd850e6dc5afde7fe799","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 14:01:06 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 14:01:06 2021 -0700","stats":{"files_changed":1,"insertions":13,"deletions":53,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":66}]},"message":"refactor parse_datetime_to_timestamp()","epoch":1616619666,"epoch_utc":null},{"commit":"440c458eb42925dffe2d7b026279468fa2fa1bb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 12:57:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 12:57:19 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"no need for ternary clause","epoch":1616615839,"epoch_utc":null},{"commit":"798250af6116441385339806c8f26bc9720ad302","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 12:49:53 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 12:49:53 2021 -0700","stats":{"files_changed":2,"insertions":18,"deletions":24,"files":["docs/parsers/upower.md","jc/parsers/upower.py"],"file_stats":[{"name":"docs/parsers/upower.md","lines_changed":7},{"name":"jc/parsers/upower.py","lines_changed":35}]},"message":"use jc.utils.parse_datetime_to_timestamp() function for timestamp creation","epoch":1616615393,"epoch_utc":null},{"commit":"c762de29c6491790908451aa20f6aa12fdfa9722","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 12:47:57 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 12:47:57 2021 -0700","stats":{"files_changed":2,"insertions":32,"deletions":2,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":30},{"name":"jc/utils.py","lines_changed":4}]},"message":"doc updates","epoch":1616615277,"epoch_utc":null},{"commit":"0701e65e97165efd40ab2ae5087897de3588ea32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 12:36:54 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 12:36:54 2021 -0700","stats":{"files_changed":1,"insertions":106,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":106}]},"message":"add parse_datetime_to_timestamp() function","epoch":1616614614,"epoch_utc":null},{"commit":"209d54e8b5be6476d896cee1a5274bd2b46219e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 07:39:11 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 24 07:39:11 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":5},{"name":"jc/parsers/date.py","lines_changed":5}]},"message":"add hour_24 to schema docs","epoch":1616596751,"epoch_utc":null},{"commit":"2b38462de7d2fa61dd5d2a184e853279f1a9c84b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 23 14:59:03 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 23 14:59:03 2021 -0700","stats":{"files_changed":3,"insertions":33,"deletions":27,"files":["EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":20},{"name":"docs/parsers/date.md","lines_changed":20},{"name":"jc/parsers/date.py","lines_changed":20}]},"message":"update examples","epoch":1616536743,"epoch_utc":null},{"commit":"1e8e5533162cb01053ee25e9dbc709a429e58070","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 23 14:47:44 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 23 14:47:44 2021 -0700","stats":{"files_changed":6,"insertions":31,"deletions":14,"files":["CHANGELOG","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/fixtures/ubuntu-20.04/date2.json","tests/localtest_date.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/date.py","lines_changed":21},{"name":"tests/fixtures/generic/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date2.json","lines_changed":1},{"name":"tests/localtest_date.py","lines_changed":16}]},"message":"add hour_24 field","epoch":1616536064,"epoch_utc":null},{"commit":"ab42e6bb15026d6c46e15197c62bc3e8ef95c80d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 23 14:10:42 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 23 14:10:42 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":1},{"name":"jc/parsers/date.py","lines_changed":1}]},"message":"formatting","epoch":1616533842,"epoch_utc":null},{"commit":"680288454090f3c48c7f0580cdcb919c0b5a883e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 23 14:04:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 23 14:04:36 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":4}]},"message":"ensure period is always uppercase in dict value. update period documentation","epoch":1616533476,"epoch_utc":null},{"commit":"7cb8577b9655f258f2910e7e7bcf3266d4cbece0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 23 13:55:23 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 23 13:55:23 2021 -0700","stats":{"files_changed":3,"insertions":70,"deletions":48,"files":["docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/ubuntu-20.04/date2.out"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":36},{"name":"jc/parsers/date.py","lines_changed":81},{"name":"tests/fixtures/ubuntu-20.04/date2.out","lines_changed":1}]},"message":"correct epoch_utc calculation. Fix for 12 hour vs. 24 hour representation","epoch":1616532923,"epoch_utc":null},{"commit":"55810ccd1f17ef6a4b1cb72fc21f6cf990ef8bb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 22:10:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 22:10:35 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":1}]},"message":"set epoch_dt conversion again if not C locale","epoch":1616476235,"epoch_utc":null},{"commit":"f9921720cd0b9b0d76d66e6eb5bfe43481f5f52b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 22:01:07 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 22:01:07 2021 -0700","stats":{"files_changed":3,"insertions":4,"deletions":94,"files":["runtests.sh","tests/test_date.py","tests/test_last2.py"],"file_stats":[{"name":"runtests.sh","lines_changed":8},{"name":"tests/test_date.py","lines_changed":48},{"name":"tests/test_last2.py","lines_changed":42}]},"message":"revert to local testing for naive datetime objects","epoch":1616475667,"epoch_utc":null},{"commit":"cda1ebd271aa8fd1b716054a2149f876d8087230","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 21:53:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 21:53:50 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["tests/test_date.py","tests/test_last2.py"],"file_stats":[{"name":"tests/test_date.py","lines_changed":2},{"name":"tests/test_last2.py","lines_changed":2}]},"message":"try tzset()","epoch":1616475230,"epoch_utc":null},{"commit":"6901e4a23aad0b58cbbfac86c61917115d115dfe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 21:49:26 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 21:49:26 2021 -0700","stats":{"files_changed":3,"insertions":89,"deletions":3,"files":["runtests.sh","tests/test_date.py","tests/test_last2.py"],"file_stats":[{"name":"runtests.sh","lines_changed":6},{"name":"tests/test_date.py","lines_changed":46},{"name":"tests/test_last2.py","lines_changed":40}]},"message":"try setting timezone env variable before tests to ensure it is the same on all test systems","epoch":1616474966,"epoch_utc":null},{"commit":"6bc21d3c735edc7897e49afd2a5ea9e3aa56d7fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 21:05:39 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 21:05:39 2021 -0700","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["runtests.sh","tests/{test_date.py => localtest_date.py}","tests/localtest_last.py"],"file_stats":[{"name":"runtests.sh","lines_changed":1},{"name":"tests/{test_date.py => localtest_date.py}","lines_changed":0},{"name":"tests/localtest_last.py","lines_changed":1}]},"message":"fix date parser tests - local tests only since timezones may not match on github actions VMs","epoch":1616472339,"epoch_utc":null},{"commit":"1ef231e26a2898d2a01f341fb92014df92703f72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:57:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 20:57:36 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"add date parser updates","epoch":1616471856,"epoch_utc":null},{"commit":"3cd43f0f985a3b8a4e74bf5632bd8dac92d751c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:57:16 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 20:57:16 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/upower.md","jc/parsers/upower.py"],"file_stats":[{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":2}]},"message":"formatting","epoch":1616471836,"epoch_utc":null},{"commit":"156501996688e62dd61a8456206218582a6cbe1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:56:57 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 20:56:57 2021 -0700","stats":{"files_changed":5,"insertions":85,"deletions":63,"files":["EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":21},{"name":"docs/parsers/date.md","lines_changed":41},{"name":"jc/parsers/date.py","lines_changed":82},{"name":"tests/fixtures/generic/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date.json","lines_changed":2}]},"message":"fix weekday numbering to be ISO 8601 compliant. Add naive calculated epoch timestamp field","epoch":1616471817,"epoch_utc":null},{"commit":"0a4de2d3a1c235d1ac2d6e59346e77761fe51885","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:22:35 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 20:22:35 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":2,"files":["docs/parsers/last.md","docs/parsers/upower.md"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":5}]},"message":"add naive datetime calculation info to docs","epoch":1616469755,"epoch_utc":null},{"commit":"a058f6c174e31f5e6040883bb544b83abd88c749","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:21:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 20:21:46 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":2}]},"message":"added naive epoch calculation info to docs","epoch":1616469706,"epoch_utc":null},{"commit":"d8e5d03b01a87704424f5259cf6bd977274fd6ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:21:12 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 22 20:21:12 2021 -0700","stats":{"files_changed":1,"insertions":20,"deletions":33,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":53}]},"message":"naive updated_epoch timestamp calculation added","epoch":1616469672,"epoch_utc":null},{"commit":"9dc62eff2eaaafec89c5b8797d8ca8e4c77a07d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 21 15:43:37 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 21 15:43:37 2021 -0700","stats":{"files_changed":1,"insertions":34,"deletions":21,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":55}]},"message":"remove epoch conversions","epoch":1616366617,"epoch_utc":null},{"commit":"d4fea17c57a97d6914624b06208b9439bf2eb05f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 21 14:03:36 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 21 14:03:36 2021 -0700","stats":{"files_changed":3,"insertions":13,"deletions":6,"files":["docgen.sh","docs/parsers/upower.md","jc/parsers/upower.py"],"file_stats":[{"name":"docgen.sh","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":15}]},"message":"use UTC when calculating epoch timestamp. reset time locale to default after changing","epoch":1616360616,"epoch_utc":null},{"commit":"3dd7a5b77ea708047bc12be9f2caddd9078723f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 19 11:00:50 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 19 11:00:50 2021 -0700","stats":{"files_changed":2,"insertions":230,"deletions":0,"files":["docgen.sh","docs/parsers/upower.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/upower.md","lines_changed":229}]},"message":"add upower docs","epoch":1616176850,"epoch_utc":null},{"commit":"d77c90a3ba2036b216f4a612876ace988eafd217","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 19 10:43:20 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 19 10:43:20 2021 -0700","stats":{"files_changed":1,"insertions":114,"deletions":6,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":120}]},"message":"fix quoted values in detail level. Add examples","epoch":1616175800,"epoch_utc":null},{"commit":"01f0c20df09fd4aa12bd108928b97376b51ef31a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 18 16:59:46 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 18 16:59:46 2021 -0700","stats":{"files_changed":1,"insertions":27,"deletions":0,"files":["tests/fixtures/ubuntu-18.04/upower-d-clocale.out"],"file_stats":[{"name":"tests/fixtures/ubuntu-18.04/upower-d-clocale.out","lines_changed":27}]},"message":"add sample using C locale timestamp","epoch":1616111986,"epoch_utc":null},{"commit":"aafbe576b3b754de91591d9ec2dae9e9f827dee4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 18 16:59:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 18 16:59:19 2021 -0700","stats":{"files_changed":1,"insertions":137,"deletions":36,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":173}]},"message":"working parser and processor","epoch":1616111959,"epoch_utc":null},{"commit":"bd68ad40345fb1f69be0e0f87dc67134f826cd06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 14:31:51 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 17 14:31:51 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":4}]},"message":"don't modify detail_type value since it is no longer a key","epoch":1616016711,"epoch_utc":null},{"commit":"bfee017c138bb30ec6af836685013b7124028974","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 14:21:19 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 17 14:21:19 2021 -0700","stats":{"files_changed":1,"insertions":61,"deletions":20,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":81}]},"message":"made the schema more explicit by hardcoding more items. still working on the schema","epoch":1616016079,"epoch_utc":null},{"commit":"61f532cfd0b7fbf14a58a0fd638bcbfb03fbde72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 13:30:47 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 17 13:30:47 2021 -0700","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":12}]},"message":"working history list","epoch":1616013047,"epoch_utc":null},{"commit":"58dbbb75b607d0b29be185c3b8c3f0d8af21ecad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 13:10:52 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 17 13:10:52 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":21,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":30}]},"message":"simplified logic","epoch":1616011852,"epoch_utc":null},{"commit":"8d88b91fcf5060d7d54f687efec3e3a606bab767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 12:49:48 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 17 12:49:48 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":17}]},"message":"move if statements and generalize the history detail detection","epoch":1616010588,"epoch_utc":null},{"commit":"ad39fc60299089f56f37baac71820e50cbe87ed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 11:26:06 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 17 11:26:06 2021 -0700","stats":{"files_changed":6,"insertions":268,"deletions":0,"files":["jc/cli.py","jc/parsers/upower.py","tests/fixtures/generic/upower-i.out","tests/fixtures/generic/upower-i2.out","tests/fixtures/ubuntu-18.04/upower-d.out","tests/fixtures/ubuntu-18.04/upower-i.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/upower.py","lines_changed":173},{"name":"tests/fixtures/generic/upower-i.out","lines_changed":32},{"name":"tests/fixtures/generic/upower-i2.out","lines_changed":24},{"name":"tests/fixtures/ubuntu-18.04/upower-d.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-18.04/upower-i.out","lines_changed":11}]},"message":"working upower parser. history lines are ignored","epoch":1616005566,"epoch_utc":null},{"commit":"89f1fd96e6b7aa0acf6272e4f3469005d4f7c6bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 16 12:12:01 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 16 12:12:01 2021 -0700","stats":{"files_changed":6,"insertions":87,"deletions":0,"files":["tests/fixtures/generic/acpi-V.json","tests/fixtures/generic/acpi-V2.json","tests/fixtures/generic/acpi-V3.json","tests/fixtures/generic/acpi-V4.json","tests/fixtures/ubuntu-18.04/acpi-V.json","tests/test_acpi.py"],"file_stats":[{"name":"tests/fixtures/generic/acpi-V.json","lines_changed":1},{"name":"tests/fixtures/generic/acpi-V2.json","lines_changed":1},{"name":"tests/fixtures/generic/acpi-V3.json","lines_changed":1},{"name":"tests/fixtures/generic/acpi-V4.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/acpi-V.json","lines_changed":1},{"name":"tests/test_acpi.py","lines_changed":82}]},"message":"add acpi tests","epoch":1615921921,"epoch_utc":null},{"commit":"bd425f2493b68949c1fa02cd1d3289ec882d9b0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 16 11:45:56 2021 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 16 11:45:56 2021 -0700","stats":{"files_changed":6,"insertions":321,"deletions":2,"files":["CHANGELOG","EXAMPLES.md","docgen.sh","docs/parsers/acpi.md","jc/cli.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":4},{"name":"EXAMPLES.md","lines_changed":58},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/acpi.md","lines_changed":256},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to v1.15.0. Add acpi docs","epoch":1615920356,"epoch_utc":null},{"commit":"46962ff02a0630766a927babc92e11ec91b1f789","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 12 16:45:15 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 12 16:45:15 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":11,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":12}]},"message":"remove redundant lines","epoch":1615596315,"epoch_utc":null},{"commit":"e4cb88b05166815e8ad03b646bd3f2b1da7f0d4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 12 12:47:59 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 12 12:47:59 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":1}]},"message":"remove unneeded line-state assignment","epoch":1615582079,"epoch_utc":null},{"commit":"32840703dc1d88412712b08db1c9bdaebbc34450","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 12 08:55:04 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 12 08:55:04 2021 -0800","stats":{"files_changed":1,"insertions":8,"deletions":39,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":47}]},"message":"remove redundant code","epoch":1615568104,"epoch_utc":null},{"commit":"1f7aafd0415a79e0547cc6f1c008c1918f8fb460","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 12 08:45:32 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 12 08:45:32 2021 -0800","stats":{"files_changed":3,"insertions":19,"deletions":9,"files":["jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out","tests/fixtures/generic/acpi-V4.out"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":15},{"name":"tests/fixtures/generic/acpi-V.out","lines_changed":1},{"name":"tests/fixtures/generic/acpi-V4.out","lines_changed":12}]},"message":"fix for full charge batter case. Clean up battery object logic","epoch":1615567532,"epoch_utc":null},{"commit":"7378d5dce43f75440cb57903e8ae0c1c615b0782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 11 21:06:24 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 11 21:06:24 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":1}]},"message":"remove comment","epoch":1615525584,"epoch_utc":null},{"commit":"84f76866cdf76f67b34de999fd987de8a02f0306","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 11 21:05:29 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 11 21:05:29 2021 -0800","stats":{"files_changed":1,"insertions":197,"deletions":3,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":200}]},"message":"working process function","epoch":1615525529,"epoch_utc":null},{"commit":"322da9ea6a1ceea1152d720797adb8f3a7dc1199","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 11 20:43:31 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 11 20:43:31 2021 -0800","stats":{"files_changed":2,"insertions":59,"deletions":12,"files":["jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":67},{"name":"tests/fixtures/generic/acpi-V.out","lines_changed":4}]},"message":"working parser","epoch":1615524211,"epoch_utc":null},{"commit":"58645301ec111bfeb2a618f5f169cc734042dc5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 11 19:55:47 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 11 19:55:47 2021 -0800","stats":{"files_changed":6,"insertions":236,"deletions":1,"files":["jc/cli.py","jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out","tests/fixtures/generic/acpi-V2.out","tests/fixtures/generic/acpi-V3.out","tests/fixtures/ubuntu-18.04/acpi-V.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/acpi.py","lines_changed":191},{"name":"tests/fixtures/generic/acpi-V.out","lines_changed":16},{"name":"tests/fixtures/generic/acpi-V2.out","lines_changed":12},{"name":"tests/fixtures/generic/acpi-V3.out","lines_changed":13},{"name":"tests/fixtures/ubuntu-18.04/acpi-V.out","lines_changed":2}]},"message":"add acpi command parser","epoch":1615521347,"epoch_utc":null},{"commit":"1e18dd30a824b0463f0cad86e0da7094c47d34f9","merge":"20f9b7f cc6a19a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 5 11:50:37 2021 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Mar 5 11:50:37 2021 -0800","message":"Merge pull request #102 from kellyjonbrazil/dev\n\nDev v1.14.4","epoch":1614973837,"epoch_utc":null},{"commit":"cc6a19adccea3e10243a166b87d852b6f95414b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 5 09:41:17 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 5 09:41:17 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"fix typo in comments","epoch":1614966077,"epoch_utc":null},{"commit":"2a5588b177a24d5b78a4b5a515aba515804b7baa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 5 09:38:22 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 5 09:38:22 2021 -0800","stats":{"files_changed":4,"insertions":13,"deletions":3,"files":["CHANGELOG","jc/cli.py","jc/parsers/yaml.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":5},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":7},{"name":"setup.py","lines_changed":2}]},"message":"packaging fix for yaml parser and pyoxidizer","epoch":1614965902,"epoch_utc":null},{"commit":"20f9b7f88b97ed68aba46e102b8c7b72443b9c85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 25 11:09:56 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 25 11:09:56 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"fix typo","epoch":1614280196,"epoch_utc":null},{"commit":"d7e32313cd9776b4a6af38cc2819d6e4ef8c0d55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 25 11:09:14 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 25 11:09:14 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"fix typo","epoch":1614280154,"epoch_utc":null},{"commit":"fb5654d3c4549e84940e2518f2d214debdd42d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 11 11:27:54 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 11 11:27:54 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1613071674,"epoch_utc":null},{"commit":"258f1433b36a7ee117ac43953edb4fe964603e7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 11 11:27:01 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 11 11:27:01 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add locale info to readme","epoch":1613071621,"epoch_utc":null},{"commit":"fb723ae8bd7bb51f9a4bab380ec1bc54cda0445b","merge":"87b506d 283b89e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 10 11:01:57 2021 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Feb 10 11:01:57 2021 -0800","message":"Merge pull request #101 from kellyjonbrazil/dev\n\nDev v1.14.3","epoch":1612983717,"epoch_utc":null},{"commit":"283b89e37c38a3082203e43e38569c8b0bb11e12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 10 10:55:53 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 10 10:55:53 2021 -0800","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["CHANGELOG","jc/parsers/dig.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/dig.py","lines_changed":6}]},"message":"simplify answer data logic","epoch":1612983353,"epoch_utc":null},{"commit":"f450f9eb8b7d382af316e88301e72af01a018be9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 10 10:47:56 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 10 10:47:56 2021 -0800","stats":{"files_changed":5,"insertions":74,"deletions":0,"files":["tests/fixtures/centos-7.7/hciconfig-a.json","tests/fixtures/centos-7.7/hciconfig.json","tests/fixtures/ubuntu-20.04/hciconfig-a.json","tests/fixtures/ubuntu-20.04/hciconfig.json","tests/test_hciconfig.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/hciconfig-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/hciconfig.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.04/hciconfig-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.04/hciconfig.json","lines_changed":1},{"name":"tests/test_hciconfig.py","lines_changed":70}]},"message":"add hciconfig tests","epoch":1612982876,"epoch_utc":null},{"commit":"b3f8cf99a4874335c6b43e105e0c1562c08256dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 10 08:03:36 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 10 08:03:36 2021 -0800","stats":{"files_changed":1,"insertions":15,"deletions":15,"files":["jc/parsers/hciconfig.py"],"file_stats":[{"name":"jc/parsers/hciconfig.py","lines_changed":30}]},"message":"work for both tabs and spaces","epoch":1612973016,"epoch_utc":null},{"commit":"4301ea8caea7c14f59bcddf09668d0198e1115a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 9 16:12:36 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 9 16:12:36 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/hciconfig.py"],"file_stats":[{"name":"jc/parsers/hciconfig.py","lines_changed":1}]},"message":"remove debug line","epoch":1612915956,"epoch_utc":null},{"commit":"c672d1c174a42ce44544dfaec0ebcf3c30fd7acf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 9 16:03:00 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 9 16:03:00 2021 -0800","stats":{"files_changed":7,"insertions":903,"deletions":22,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","docs/parsers/hciconfig.md","jc/parsers/hciconfig.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"EXAMPLES.md","lines_changed":126},{"name":"README.md","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/hciconfig.md","lines_changed":358},{"name":"jc/parsers/hciconfig.py","lines_changed":414},{"name":"man/jc.1","lines_changed":22}]},"message":"initial working hciconfig parser","epoch":1612915380,"epoch_utc":null},{"commit":"229e953a38471cdd41af0810577d324329840a4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 9 13:26:24 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 9 13:26:24 2021 -0800","stats":{"files_changed":7,"insertions":205,"deletions":2,"files":["jc/cli.py","jc/parsers/hciconfig.py","setup.py","tests/fixtures/centos-7.7/hciconfig-a.out","tests/fixtures/centos-7.7/hciconfig.out","tests/fixtures/ubuntu-20.04/hciconfig-a.out","tests/fixtures/ubuntu-20.04/hciconfig.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/hciconfig.py","lines_changed":142},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/hciconfig-a.out","lines_changed":10},{"name":"tests/fixtures/centos-7.7/hciconfig.out","lines_changed":6},{"name":"tests/fixtures/ubuntu-20.04/hciconfig-a.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-20.04/hciconfig.out","lines_changed":17}]},"message":"initial add of hciconfig parser","epoch":1612905984,"epoch_utc":null},{"commit":"87b506dc9b4831d11b4fd04fd6849532db074f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 5 06:55:06 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 5 06:55:06 2021 -0800","stats":{"files_changed":7,"insertions":47,"deletions":4,"files":["CHANGELOG","jc/cli.py","jc/parsers/dig.py","setup.py","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/generic/dig-answer-spaces.out","tests/test_dig.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":8},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/generic/dig-answer-spaces.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-answer-spaces.out","lines_changed":23},{"name":"tests/test_dig.py","lines_changed":12}]},"message":"fix for spaces in dig answer data","epoch":1612536906,"epoch_utc":null},{"commit":"15c9002d9eff0f52d873fb3ab35dfafd03a8e919","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 8 11:56:56 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 8 11:56:56 2021 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"simplify logic by taking out 'not' in JC_COLORS parsing","epoch":1610135816,"epoch_utc":null},{"commit":"042aaa61b96fc8472a8a460c49bde4cbbc359094","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 8 08:23:29 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 8 08:23:29 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"minor updates","epoch":1610123009,"epoch_utc":null},{"commit":"ef856c6ba5774cd8ec23acd71496846e794e3872","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 7 12:09:41 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jan 7 12:09:41 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"clarify -q option","epoch":1610050181,"epoch_utc":null},{"commit":"9cf5be73e3f975132d1ffbef412638b941a5664f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 16:19:47 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 6 16:19:47 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"typo fix","epoch":1609978787,"epoch_utc":null},{"commit":"63fc149e2a097cbde60c2ce1aeb102d9becabd9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 16:17:25 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 6 16:17:25 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"typo fix","epoch":1609978645,"epoch_utc":null},{"commit":"3c25839350800c7e7d2c48fc032bb21efa0ac213","merge":"03c0295 58246e3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 14:37:24 2021 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Jan 6 14:37:24 2021 -0800","message":"Merge pull request #98 from kellyjonbrazil/dev\n\nDev v1.14.1","epoch":1609972644,"epoch_utc":null},{"commit":"58246e33b71bae0ca4a42ad5bdf31134948b1014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 14:33:38 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 6 14:33:38 2021 -0800","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","README.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"README.md","lines_changed":3}]},"message":"update compatibility info and changelog date","epoch":1609972418,"epoch_utc":null},{"commit":"8b1407c7068e2105a83992bbb026138ea67bc07c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 14:22:26 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 6 14:22:26 2021 -0800","stats":{"files_changed":3,"insertions":59,"deletions":10,"files":["runtests.sh","tests/localtest_last.py","tests/test_last.py"],"file_stats":[{"name":"runtests.sh","lines_changed":6},{"name":"tests/localtest_last.py","lines_changed":41},{"name":"tests/test_last.py","lines_changed":22}]},"message":"pull env-specific tests from CI/CD and run locally only","epoch":1609971746,"epoch_utc":null},{"commit":"2fde4a4e2299b98a9958e3a55849c6791e4b17dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 12:07:58 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 6 12:07:58 2021 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["EXAMPLES.md","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"doc updates","epoch":1609963678,"epoch_utc":null},{"commit":"60b9e9798286121399d0f8b75d63ab0f3312c9bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 12:02:47 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 6 12:02:47 2021 -0800","stats":{"files_changed":12,"insertions":80,"deletions":38,"files":["docs/parsers/last.md","jc/parsers/last.py","tests/fixtures/centos-7.7/last-crash.json","tests/fixtures/centos-7.7/last-w.json","tests/fixtures/centos-7.7/last-wF.json","tests/fixtures/centos-7.7/last-wF.out","tests/fixtures/centos-7.7/last.json","tests/fixtures/fedora32/last.json","tests/fixtures/osx-10.14.6/last.json","tests/fixtures/ubuntu-18.04/last-w.json","tests/fixtures/ubuntu-18.04/last.json","tests/fixtures/ubuntu-20.04/last-F.json"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":37},{"name":"jc/parsers/last.py","lines_changed":57},{"name":"tests/fixtures/centos-7.7/last-crash.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/last-w.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/last-wF.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/last-wF.out","lines_changed":6},{"name":"tests/fixtures/centos-7.7/last.json","lines_changed":2},{"name":"tests/fixtures/fedora32/last.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/last.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/last-w.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/last.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/last-F.json","lines_changed":2}]},"message":"last parser enhancements: augment hostname with CONSOLE for GUI login, add convenience fields when -F is used: login_epoch, logout_epoch, duration_seconds, calculate duration to hours:minutes","epoch":1609963367,"epoch_utc":null},{"commit":"0adac79c0f2a22b31dfef1432a029af06132467b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 11:09:59 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 6 11:09:59 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"Add last parser enhancements","epoch":1609960199,"epoch_utc":null},{"commit":"9f485b5981a2ce49ac699b9dad39993c5605ae18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 11:09:37 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jan 6 11:09:37 2021 -0800","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["jc/parsers/iw_scan.py","tests/fixtures/centos-7.7/iw-scan0.json","tests/fixtures/centos-7.7/iw-scan1.json"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":6},{"name":"tests/fixtures/centos-7.7/iw-scan0.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iw-scan1.json","lines_changed":2}]},"message":"change mac_address fieldname to bssid. Add credit to Phillip","epoch":1609960177,"epoch_utc":null},{"commit":"db17d21b8f9b2f899760e648f1483d33d0bcf47a","merge":"5885b96 996d394","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 10:42:30 2021 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Jan 6 10:42:30 2021 -0800","message":"Merge pull request #97 from pschmitt/iw_scan_fix_space_detection\n\niw_scan: Improve detection of lines starting with spaces","epoch":1609958550,"epoch_utc":null},{"commit":"996d394e89c732f327323ca340fce405bd5fb2e4","author":"Philipp Schmitt","author_email":"philipp@schmitt.co","date":"Wed Jan 6 10:32:17 2021 +0100","commit_by":"Philipp Schmitt","commit_by_email":"philipp@schmitt.co","commit_by_date":"Wed Jan 6 10:32:17 2021 +0100","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":3}]},"message":"iw_scan: Improve detection of lines starting with spaces","epoch":1609957937,"epoch_utc":null},{"commit":"5885b960f9b33a95ecec9f4a33233c2f8682fbc4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 22:12:13 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 22:12:13 2021 -0800","stats":{"files_changed":3,"insertions":7,"deletions":2,"files":["CHANGELOG","README.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":2},{"name":"man/jc.1","lines_changed":4}]},"message":"doc updates","epoch":1609913533,"epoch_utc":null},{"commit":"79987b35f332e287567e103f25cf91cb50e040c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 22:07:22 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 22:07:22 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2}]},"message":"formatting","epoch":1609913242,"epoch_utc":null},{"commit":"661b3ef311ad26678030c70c11f2f955667311a4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 22:04:44 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 22:04:44 2021 -0800","stats":{"files_changed":4,"insertions":94,"deletions":2,"files":["EXAMPLES.md","README.md","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":91},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"doc updates","epoch":1609913084,"epoch_utc":null},{"commit":"fb422726a8366c7133f0712d3b05a26620eea785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 21:55:06 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 21:55:06 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["tests/fixtures/ubuntu-20.04/last-F.json","tests/fixtures/ubuntu-20.04/last-F.out"],"file_stats":[{"name":"tests/fixtures/ubuntu-20.04/last-F.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/last-F.out","lines_changed":1}]},"message":"update test to add 'down' condition","epoch":1609912506,"epoch_utc":null},{"commit":"4fb6f3ea59c52515926a51a006e65a1c18e57720","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 21:51:30 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 21:51:30 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":4}]},"message":"add support for down in addition to crash","epoch":1609912290,"epoch_utc":null},{"commit":"f78fe771e1c2fb4691858fa7f27b1febe5f8c6c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 21:38:51 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 21:38:51 2021 -0800","stats":{"files_changed":3,"insertions":48,"deletions":0,"files":["tests/fixtures/centos-7.7/iw-scan0.json","tests/fixtures/centos-7.7/iw-scan1.json","tests/test_iw_scan.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/iw-scan0.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iw-scan1.json","lines_changed":1},{"name":"tests/test_iw_scan.py","lines_changed":46}]},"message":"add iw-scan tests","epoch":1609911531,"epoch_utc":null},{"commit":"567b8872538ac9f6b384b98741acd9794229d513","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 21:26:43 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 21:26:43 2021 -0800","stats":{"files_changed":3,"insertions":252,"deletions":12,"files":["docgen.sh","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/iw_scan.md","lines_changed":160},{"name":"jc/parsers/iw_scan.py","lines_changed":103}]},"message":"doc updates","epoch":1609910803,"epoch_utc":null},{"commit":"e516e6b9466b29d40ec10070dd61551180eeef90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 21:17:40 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 21:17:40 2021 -0800","stats":{"files_changed":1,"insertions":29,"deletions":1,"files":["jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":30}]},"message":"fix country/environment fields and process int/float conversions","epoch":1609910260,"epoch_utc":null},{"commit":"62748676aae3d5955191ed267215df33a5bd3a4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 20:44:22 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 20:44:22 2021 -0800","stats":{"files_changed":2,"insertions":225,"deletions":0,"files":["jc/cli.py","jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/iw_scan.py","lines_changed":224}]},"message":"initial iw-scan parser","epoch":1609908262,"epoch_utc":null},{"commit":"7351c72e45242b9eb08c51dea7b6fccf12366dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 15:16:40 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 15:16:40 2021 -0800","stats":{"files_changed":6,"insertions":402,"deletions":1,"files":["jc/parsers/last.py","tests/fixtures/centos-7.7/last-crash.json","tests/fixtures/centos-7.7/last-crash.out","tests/fixtures/centos-7.7/last-wF.json","tests/fixtures/centos-7.7/last-wF.out","tests/test_last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":10},{"name":"tests/fixtures/centos-7.7/last-crash.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/last-crash.out","lines_changed":184},{"name":"tests/fixtures/centos-7.7/last-wF.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/last-wF.out","lines_changed":184},{"name":"tests/test_last.py","lines_changed":23}]},"message":"add fixes and tests for entries that contain 'crash'","epoch":1609888600,"epoch_utc":null},{"commit":"2b7405c5e21db2488fc48b58f6c65cff947ca95d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 13:58:38 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 13:58:38 2021 -0800","stats":{"files_changed":5,"insertions":23,"deletions":16,"files":["CHANGELOG","README.md","docs/parsers/last.md","jc/parsers/last.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":6},{"name":"jc/parsers/last.py","lines_changed":6},{"name":"man/jc.1","lines_changed":22}]},"message":"doc updates","epoch":1609883918,"epoch_utc":null},{"commit":"e2c77cb935a5bd95dbe930d424e5a02e88e1fa76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 13:00:38 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 13:00:38 2021 -0800","stats":{"files_changed":3,"insertions":15,"deletions":1,"files":["jc/parsers/last.py","tests/fixtures/ubuntu-20.04/last-F.json","tests/test_last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":3},{"name":"tests/fixtures/ubuntu-20.04/last-F.json","lines_changed":1},{"name":"tests/test_last.py","lines_changed":12}]},"message":"add test for last -F output","epoch":1609880438,"epoch_utc":null},{"commit":"7ac621e4c916373a03f379425033cb2d81a03578","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 12:29:29 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 12:29:29 2021 -0800","stats":{"files_changed":3,"insertions":36,"deletions":6,"files":["docs/parsers/last.md","jc/parsers/last.py","tests/fixtures/ubuntu-20.04/last-F.out"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":6},{"name":"jc/parsers/last.py","lines_changed":30},{"name":"tests/fixtures/ubuntu-20.04/last-F.out","lines_changed":6}]},"message":"add -F support","epoch":1609878569,"epoch_utc":null},{"commit":"d8b5d6c66ced19dc16f2b4975d2293a903732ffe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 09:45:37 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 09:45:37 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/cli.py","setup.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to 1.14.1","epoch":1609868737,"epoch_utc":null},{"commit":"22b461eb4b1ca86ea9e8c1fde8a2c312d1526b5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 09:42:05 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jan 5 09:42:05 2021 -0800","stats":{"files_changed":7,"insertions":47,"deletions":12,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/test_date.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":1},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":40},{"name":"tests/fixtures/generic/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date.json","lines_changed":1},{"name":"tests/test_date.py","lines_changed":12}]},"message":"Add period field for en_US.UTF-8 locale","epoch":1609868525,"epoch_utc":null},{"commit":"b37ee8555a2a108625a834a7990bc3320e79b08d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 4 18:02:07 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 4 18:02:07 2021 -0800","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":6}]},"message":"changelog update","epoch":1609812127,"epoch_utc":null},{"commit":"1d0ad2f045733c5c690738d49951fdb9bcd3d66d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 4 18:01:16 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 4 18:01:16 2021 -0800","stats":{"files_changed":123,"insertions":312,"deletions":312,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat_freebsd_osx.py","jc/parsers/netstat_linux.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":6},{"name":"docs/parsers/arp.md","lines_changed":6},{"name":"docs/parsers/blkid.md","lines_changed":6},{"name":"docs/parsers/cksum.md","lines_changed":6},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":6},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":6},{"name":"docs/parsers/dig.md","lines_changed":6},{"name":"docs/parsers/dmidecode.md","lines_changed":6},{"name":"docs/parsers/du.md","lines_changed":6},{"name":"docs/parsers/env.md","lines_changed":6},{"name":"docs/parsers/file.md","lines_changed":6},{"name":"docs/parsers/free.md","lines_changed":6},{"name":"docs/parsers/fstab.md","lines_changed":6},{"name":"docs/parsers/group.md","lines_changed":6},{"name":"docs/parsers/gshadow.md","lines_changed":6},{"name":"docs/parsers/hash.md","lines_changed":6},{"name":"docs/parsers/hashsum.md","lines_changed":6},{"name":"docs/parsers/history.md","lines_changed":6},{"name":"docs/parsers/hosts.md","lines_changed":6},{"name":"docs/parsers/id.md","lines_changed":4},{"name":"docs/parsers/ifconfig.md","lines_changed":6},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":6},{"name":"docs/parsers/jobs.md","lines_changed":6},{"name":"docs/parsers/last.md","lines_changed":6},{"name":"docs/parsers/ls.md","lines_changed":6},{"name":"docs/parsers/lsblk.md","lines_changed":6},{"name":"docs/parsers/lsmod.md","lines_changed":6},{"name":"docs/parsers/lsof.md","lines_changed":6},{"name":"docs/parsers/mount.md","lines_changed":6},{"name":"docs/parsers/netstat.md","lines_changed":6},{"name":"docs/parsers/ntpq.md","lines_changed":6},{"name":"docs/parsers/passwd.md","lines_changed":6},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":6},{"name":"docs/parsers/pip_show.md","lines_changed":6},{"name":"docs/parsers/ps.md","lines_changed":6},{"name":"docs/parsers/route.md","lines_changed":6},{"name":"docs/parsers/shadow.md","lines_changed":6},{"name":"docs/parsers/ss.md","lines_changed":6},{"name":"docs/parsers/stat.md","lines_changed":6},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":6},{"name":"docs/parsers/systemctl_lj.md","lines_changed":6},{"name":"docs/parsers/systemctl_ls.md","lines_changed":6},{"name":"docs/parsers/systemctl_luf.md","lines_changed":6},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":6},{"name":"docs/parsers/wc.md","lines_changed":6},{"name":"docs/parsers/who.md","lines_changed":6},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":6},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":6},{"name":"jc/parsers/arp.py","lines_changed":6},{"name":"jc/parsers/blkid.py","lines_changed":6},{"name":"jc/parsers/cksum.py","lines_changed":6},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"jc/parsers/csv.py","lines_changed":6},{"name":"jc/parsers/date.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":6},{"name":"jc/parsers/dig.py","lines_changed":6},{"name":"jc/parsers/dmidecode.py","lines_changed":6},{"name":"jc/parsers/du.py","lines_changed":6},{"name":"jc/parsers/env.py","lines_changed":6},{"name":"jc/parsers/file.py","lines_changed":6},{"name":"jc/parsers/foo.py","lines_changed":6},{"name":"jc/parsers/free.py","lines_changed":6},{"name":"jc/parsers/fstab.py","lines_changed":6},{"name":"jc/parsers/group.py","lines_changed":6},{"name":"jc/parsers/gshadow.py","lines_changed":6},{"name":"jc/parsers/hash.py","lines_changed":6},{"name":"jc/parsers/hashsum.py","lines_changed":6},{"name":"jc/parsers/history.py","lines_changed":6},{"name":"jc/parsers/hosts.py","lines_changed":6},{"name":"jc/parsers/id.py","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":6},{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":6},{"name":"jc/parsers/jobs.py","lines_changed":6},{"name":"jc/parsers/last.py","lines_changed":6},{"name":"jc/parsers/ls.py","lines_changed":6},{"name":"jc/parsers/lsblk.py","lines_changed":6},{"name":"jc/parsers/lsmod.py","lines_changed":6},{"name":"jc/parsers/lsof.py","lines_changed":6},{"name":"jc/parsers/mount.py","lines_changed":6},{"name":"jc/parsers/netstat.py","lines_changed":6},{"name":"jc/parsers/netstat_freebsd_osx.py","lines_changed":2},{"name":"jc/parsers/netstat_linux.py","lines_changed":2},{"name":"jc/parsers/ntpq.py","lines_changed":6},{"name":"jc/parsers/passwd.py","lines_changed":6},{"name":"jc/parsers/ping.py","lines_changed":4},{"name":"jc/parsers/pip_list.py","lines_changed":6},{"name":"jc/parsers/pip_show.py","lines_changed":6},{"name":"jc/parsers/ps.py","lines_changed":6},{"name":"jc/parsers/route.py","lines_changed":6},{"name":"jc/parsers/shadow.py","lines_changed":6},{"name":"jc/parsers/ss.py","lines_changed":6},{"name":"jc/parsers/stat.py","lines_changed":6},{"name":"jc/parsers/sysctl.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":6},{"name":"jc/parsers/systemctl_lj.py","lines_changed":6},{"name":"jc/parsers/systemctl_ls.py","lines_changed":6},{"name":"jc/parsers/systemctl_luf.py","lines_changed":6},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":6},{"name":"jc/parsers/wc.py","lines_changed":6},{"name":"jc/parsers/who.py","lines_changed":6},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":6}]},"message":"doc fixes","epoch":1609812076,"epoch_utc":null},{"commit":"ceccfb2c815f57f1b6fd81f891d8b495de23f9f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 4 17:05:26 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jan 4 17:05:26 2021 -0800","stats":{"files_changed":3,"insertions":2036,"deletions":0,"files":["tests/fixtures/centos-7.7/iw-scan0.out","tests/fixtures/centos-7.7/iw-scan1.out","tests/fixtures/ubuntu-20.04/date.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/iw-scan0.out","lines_changed":36},{"name":"tests/fixtures/centos-7.7/iw-scan1.out","lines_changed":1999},{"name":"tests/fixtures/ubuntu-20.04/date.out","lines_changed":1}]},"message":"add test output for iw-scan and date on ubuntu 20.04","epoch":1609808726,"epoch_utc":null},{"commit":"03c02953cd7e3327b391f799c37a2990eb2cb24c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 1 12:01:56 2021 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jan 1 12:01:56 2021 -0800","stats":{"files_changed":2,"insertions":96,"deletions":0,"files":["docgen.sh","docs/parsers/wc.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/wc.md","lines_changed":95}]},"message":"add wc doc","epoch":1609531316,"epoch_utc":null},{"commit":"f254a0eaa16fcda316f7a75424ee359058204b03","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 16:45:10 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 31 16:45:10 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1609461910,"epoch_utc":null},{"commit":"9e3b88727cd439e15f235dddb9dd5796e010797a","merge":"439871e b122174","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 16:40:36 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Dec 31 16:40:36 2020 -0800","message":"Merge pull request #91 from kellyjonbrazil/dev\n\nDev v1.14.0","epoch":1609461636,"epoch_utc":null},{"commit":"b12217466e906829d19be4cfd80dfe7cf4008e57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 16:37:47 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 31 16:37:47 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"spelling","epoch":1609461467,"epoch_utc":null},{"commit":"8b9c932f9b05295e63b3e7d0073f243458fd4dd9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 16:37:14 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 31 16:37:14 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"update date","epoch":1609461434,"epoch_utc":null},{"commit":"5986ce03db6fcd1aa0f7b064eaa96c2120c06d2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 16:36:27 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 31 16:36:27 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add printenv info","epoch":1609461387,"epoch_utc":null},{"commit":"a7b0e936e400d2f9e55629e2d722cc002e035e9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 14:21:24 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 31 14:21:24 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"add vdir and printenv info","epoch":1609453284,"epoch_utc":null},{"commit":"cb0221142455a6bcb904fbe9ade657be45815b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 14:19:45 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 31 14:19:45 2020 -0800","stats":{"files_changed":4,"insertions":61,"deletions":2,"files":["jc/parsers/wc.py","tests/fixtures/osx-10.14.6/wc-stdin.json","tests/fixtures/osx-10.14.6/wc-stdin.out","tests/test_wc.py"],"file_stats":[{"name":"jc/parsers/wc.py","lines_changed":3},{"name":"tests/fixtures/osx-10.14.6/wc-stdin.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/wc-stdin.out","lines_changed":1},{"name":"tests/test_wc.py","lines_changed":58}]},"message":"add wc tests","epoch":1609453185,"epoch_utc":null},{"commit":"bd443bf39227515ae5f8df65d07b30268dcc90a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 14:11:25 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 31 14:11:25 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/env.py"],"file_stats":[{"name":"jc/parsers/env.py","lines_changed":4}]},"message":"add printenv to env docs","epoch":1609452685,"epoch_utc":null},{"commit":"1f547edd361e66b19ccbcb59f6ba0ae78f6080ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 14:10:56 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 31 14:10:56 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/env.md"],"file_stats":[{"name":"docs/parsers/env.md","lines_changed":2}]},"message":"add printenv to env docs","epoch":1609452656,"epoch_utc":null},{"commit":"e4bac3a493705b09e301ddc90dd1b0cee7467c3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 14:10:37 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 31 14:10:37 2020 -0800","stats":{"files_changed":9,"insertions":378,"deletions":0,"files":["CHANGELOG","EXAMPLES.md","README.md","jc/cli.py","jc/parsers/wc.py","tests/fixtures/centos-7.7/wc.json","tests/fixtures/centos-7.7/wc.out","tests/fixtures/osx-10.14.6/wc.json","tests/fixtures/osx-10.14.6/wc.out"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":26},{"name":"README.md","lines_changed":1},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/wc.py","lines_changed":130},{"name":"tests/fixtures/centos-7.7/wc.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/wc.out","lines_changed":67},{"name":"tests/fixtures/osx-10.14.6/wc.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/wc.out","lines_changed":150}]},"message":"add wc parser","epoch":1609452637,"epoch_utc":null},{"commit":"5e6bfa681aff03fbd683f81a9f4daa56b49d1344","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 13:18:53 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 31 13:18:53 2020 -0800","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["README.md","docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":6}]},"message":"add vdir info","epoch":1609449533,"epoch_utc":null},{"commit":"276160125e01553c75eaad68530177bcf4f9004d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 14:04:49 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 30 14:04:49 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"add new commands to README","epoch":1609365889,"epoch_utc":null},{"commit":"d4ae5543f2d5f28a0db5b8e2e19993c21c5d960c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 13:11:13 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 30 13:11:13 2020 -0800","stats":{"files_changed":3,"insertions":39,"deletions":0,"files":["tests/fixtures/centos-7.7/hash.json","tests/fixtures/centos-7.7/hash.out","tests/test_hash.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/hash.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/hash.out","lines_changed":4},{"name":"tests/test_hash.py","lines_changed":34}]},"message":"add hash tests","epoch":1609362673,"epoch_utc":null},{"commit":"55f360e267fdfcfef0c124ed6b88535cc181a8b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 12:58:52 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 30 12:58:52 2020 -0800","stats":{"files_changed":6,"insertions":260,"deletions":0,"files":["CHANGELOG","EXAMPLES.md","docgen.sh","docs/parsers/hash.md","jc/cli.py","jc/parsers/hash.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":71},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/hash.md","lines_changed":78},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/hash.py","lines_changed":108}]},"message":"add hash command parser","epoch":1609361932,"epoch_utc":null},{"commit":"fdedab2a0cf5af15df5803d87302397dd6d71741","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 11:33:29 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 30 11:33:29 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/cksum.py","jc/parsers/hashsum.py"],"file_stats":[{"name":"jc/parsers/cksum.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":2}]},"message":"description updates","epoch":1609356809,"epoch_utc":null},{"commit":"a9be42e3031ab0d697cff67a9e384caa2265a3ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 11:28:42 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 30 11:28:42 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"specify parser warnings for quiet option","epoch":1609356522,"epoch_utc":null},{"commit":"6da9510e46e84ec1cb93384825184d2996cf0e08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 11:22:17 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 30 11:22:17 2020 -0800","stats":{"files_changed":9,"insertions":482,"deletions":0,"files":["tests/fixtures/centos-7.7/cksum.json","tests/fixtures/centos-7.7/cksum.out","tests/fixtures/centos-7.7/sum.json","tests/fixtures/centos-7.7/sum.out","tests/fixtures/osx-10.14.6/cksum.json","tests/fixtures/osx-10.14.6/cksum.out","tests/fixtures/osx-10.14.6/sum.json","tests/fixtures/osx-10.14.6/sum.out","tests/test_cksum.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/cksum.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/cksum.out","lines_changed":59},{"name":"tests/fixtures/centos-7.7/sum.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sum.out","lines_changed":58},{"name":"tests/fixtures/osx-10.14.6/cksum.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/cksum.out","lines_changed":145},{"name":"tests/fixtures/osx-10.14.6/sum.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/sum.out","lines_changed":146},{"name":"tests/test_cksum.py","lines_changed":70}]},"message":"add cksum tests","epoch":1609356137,"epoch_utc":null},{"commit":"0431798178740b03cdefececc6df958e5adf62fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 11:02:02 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 30 11:02:02 2020 -0800","stats":{"files_changed":7,"insertions":229,"deletions":3,"files":["CHANGELOG","docgen.sh","docs/parsers/cksum.md","docs/parsers/hashsum.md","jc/cli.py","jc/parsers/cksum.py","jc/parsers/hashsum.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/cksum.md","lines_changed":95},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/cksum.py","lines_changed":128},{"name":"jc/parsers/hashsum.py","lines_changed":2}]},"message":"add cksum parser","epoch":1609354922,"epoch_utc":null},{"commit":"62432f3c484e74acb2b2dfd15d448b3f1b5d53c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 09:59:54 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 30 09:59:54 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/hashsum.py"],"file_stats":[{"name":"jc/parsers/hashsum.py","lines_changed":2}]},"message":"update hashsum description","epoch":1609351194,"epoch_utc":null},{"commit":"9fbbc30906b597e6afaf2030015a7a694d85f79e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 13:09:03 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 29 13:09:03 2020 -0800","stats":{"files_changed":2,"insertions":20,"deletions":0,"files":["docs/parsers/hashsum.md","jc/parsers/hashsum.py"],"file_stats":[{"name":"docs/parsers/hashsum.md","lines_changed":10},{"name":"jc/parsers/hashsum.py","lines_changed":10}]},"message":"add supported commands to docs","epoch":1609276143,"epoch_utc":null},{"commit":"d1567d1f622902053f3df58645b4e39532e0c30a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 13:05:04 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 29 13:05:04 2020 -0800","stats":{"files_changed":3,"insertions":104,"deletions":0,"files":["CHANGELOG","docgen.sh","docs/parsers/hashsum.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":4},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/hashsum.md","lines_changed":99}]},"message":"add hashsum documentation","epoch":1609275904,"epoch_utc":null},{"commit":"6ca1f5970b3a518615a54ee7fcbc1bddab2db331","merge":"1c880b9 3b7d54c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 12:59:02 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 29 12:59:02 2020 -0800","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev","epoch":1609275542,"epoch_utc":null},{"commit":"1c880b9e24ca53cd592cec1dbc52301308290fb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 12:58:04 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 29 12:58:04 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_hashsum.py"],"file_stats":[{"name":"tests/test_hashsum.py","lines_changed":2}]},"message":"force git tests","epoch":1609275484,"epoch_utc":null},{"commit":"3b7d54c720dfc93637328cf06eb10a85447c8793","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 12:55:30 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Dec 29 12:55:30 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"add python 3.9","epoch":1609275330,"epoch_utc":null},{"commit":"44a740605705bd0ecfde2a6bcc7a826e1010dcf0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 12:51:43 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 29 12:51:43 2020 -0800","stats":{"files_changed":6,"insertions":87,"deletions":0,"files":["tests/fixtures/centos-7.7/md5sum.json","tests/fixtures/centos-7.7/sha256sum.json","tests/fixtures/centos-7.7/sha384sum.json","tests/fixtures/osx-10.14.6/md5.json","tests/fixtures/osx-10.14.6/shasum.json","tests/test_hashsum.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/md5sum.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sha256sum.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sha384sum.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/md5.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/shasum.json","lines_changed":1},{"name":"tests/test_hashsum.py","lines_changed":82}]},"message":"add hashsum tests","epoch":1609275103,"epoch_utc":null},{"commit":"8157dcfdb1868548b7c8ca692e6be25f80bb2c2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 12:25:20 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 29 12:25:20 2020 -0800","stats":{"files_changed":1,"insertions":36,"deletions":11,"files":["jc/parsers/hashsum.py"],"file_stats":[{"name":"jc/parsers/hashsum.py","lines_changed":47}]},"message":"fix for files with spaces in the name","epoch":1609273520,"epoch_utc":null},{"commit":"28762aea15cabc9cd8293d725e7f1f0550f8e15d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 11:36:20 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 29 11:36:20 2020 -0800","stats":{"files_changed":7,"insertions":524,"deletions":0,"files":["jc/cli.py","jc/parsers/hashsum.py","tests/fixtures/centos-7.7/md5sum.out","tests/fixtures/centos-7.7/sha256sum.out","tests/fixtures/centos-7.7/sha384sum.out","tests/fixtures/osx-10.14.6/md5.out","tests/fixtures/osx-10.14.6/shasum.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/hashsum.py","lines_changed":110},{"name":"tests/fixtures/centos-7.7/md5sum.out","lines_changed":56},{"name":"tests/fixtures/centos-7.7/sha256sum.out","lines_changed":55},{"name":"tests/fixtures/centos-7.7/sha384sum.out","lines_changed":56},{"name":"tests/fixtures/osx-10.14.6/md5.out","lines_changed":104},{"name":"tests/fixtures/osx-10.14.6/shasum.out","lines_changed":142}]},"message":"add hashsum parser","epoch":1609270580,"epoch_utc":null},{"commit":"439871ea9f6b055a407e1faaf47e4f56d1829501","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 19 07:07:30 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 19 07:07:30 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add ubuntu","epoch":1605798450,"epoch_utc":null},{"commit":"c9180b005c0547c8cbfe4809e66894f1123b0809","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Aug 30 11:58:42 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Aug 30 11:58:42 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1598813922,"epoch_utc":null},{"commit":"b14e0725f86853f0113116b1c06f54aaa563f365","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Aug 30 11:57:55 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Aug 30 11:57:55 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add ansible plugin blog post link","epoch":1598813875,"epoch_utc":null},{"commit":"70fe3dcb4d5b97aba1d6c6dcd5088fecb27af181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 26 15:21:45 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 26 15:21:45 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1598480505,"epoch_utc":null},{"commit":"8c554604a42a3ea7ca9131b65c64fd3ceb95f906","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 26 14:41:01 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 26 14:41:01 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"formatting","epoch":1598478061,"epoch_utc":null},{"commit":"a0a35454bd2831c116cb598c686150b883412f94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 26 14:39:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 26 14:39:40 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add link to the web demo","epoch":1598477980,"epoch_utc":null},{"commit":"e8467e2af5b0c3f14832a9e6d4a96f219c27f3f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 20 10:57:13 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 20 10:57:13 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"remove extra space","epoch":1597946233,"epoch_utc":null},{"commit":"7515deb5669ef04623e9cbf58653b30c99a96430","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 20 10:39:34 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 20 10:39:34 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add ansible install command","epoch":1597945174,"epoch_utc":null},{"commit":"ed9e52af241b609ee7f5d1b835c9f6c5306cd3c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 20 10:37:15 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 20 10:37:15 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"spelling","epoch":1597945035,"epoch_utc":null},{"commit":"592a3804104628c790997747a778b3b39d076dfe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 20 10:35:49 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 20 10:35:49 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add Ansible note","epoch":1597944949,"epoch_utc":null},{"commit":"1a458d2d5b4c16c0ad90671727ae9b19939e7f23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 11 07:00:07 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Aug 11 07:00:07 2020 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2}]},"message":"update link","epoch":1597154407,"epoch_utc":null},{"commit":"0e4cf53b92ff951a6390a4dacf8833c272473583","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 11 06:36:30 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Aug 11 06:36:30 2020 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2}]},"message":"add parser docs link","epoch":1597152990,"epoch_utc":null},{"commit":"e2f06ccb33177173d984bc0cdda1aae1a3f4c681","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 6 13:00:33 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 6 13:00:33 2020 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"formatting","epoch":1596744033,"epoch_utc":null},{"commit":"8abff004cd8e09529e5d94be4883308152e11565","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 6 12:59:30 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 6 12:59:30 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/yaml.md"],"file_stats":[{"name":"docs/parsers/yaml.md","lines_changed":2}]},"message":"indentation fix","epoch":1596743970,"epoch_utc":null},{"commit":"c4a0e2e3feb2e51eaaaa202064f352229017bcc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 6 12:58:53 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 6 12:58:53 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"fix indentation","epoch":1596743933,"epoch_utc":null},{"commit":"4f10f79c73f8b3d6edc2c83e6a12d0ddc1a78555","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 6 12:55:24 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 6 12:55:24 2020 -0700","stats":{"files_changed":2,"insertions":4,"deletions":8,"files":["docs/parsers/uname.md","jc/parsers/uname.py"],"file_stats":[{"name":"docs/parsers/uname.md","lines_changed":6},{"name":"jc/parsers/uname.py","lines_changed":6}]},"message":"standardize doc","epoch":1596743724,"epoch_utc":null},{"commit":"69e7a560fd82337570c4bb4aa4780f513c18bd94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 6 07:48:08 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Aug 6 07:48:08 2020 -0700","stats":{"files_changed":4,"insertions":8,"deletions":0,"files":["docs/parsers/env.md","docs/parsers/history.md","jc/parsers/env.py","jc/parsers/history.py"],"file_stats":[{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2}]},"message":"add output info to docs","epoch":1596725288,"epoch_utc":null},{"commit":"59b105580805d78516abe1c1069d52a6f0a8131a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 16:51:58 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 16:51:58 2020 -0700","stats":{"files_changed":97,"insertions":564,"deletions":269,"files":["docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":12},{"name":"docs/parsers/blkid.md","lines_changed":8},{"name":"docs/parsers/crontab.md","lines_changed":10},{"name":"docs/parsers/crontab_u.md","lines_changed":6},{"name":"docs/parsers/csv.md","lines_changed":9},{"name":"docs/parsers/date.md","lines_changed":8},{"name":"docs/parsers/df.md","lines_changed":8},{"name":"docs/parsers/dig.md","lines_changed":8},{"name":"docs/parsers/dmidecode.md","lines_changed":8},{"name":"docs/parsers/du.md","lines_changed":8},{"name":"docs/parsers/env.md","lines_changed":8},{"name":"docs/parsers/file.md","lines_changed":8},{"name":"docs/parsers/free.md","lines_changed":8},{"name":"docs/parsers/fstab.md","lines_changed":4},{"name":"docs/parsers/group.md","lines_changed":4},{"name":"docs/parsers/gshadow.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":4},{"name":"docs/parsers/hosts.md","lines_changed":4},{"name":"docs/parsers/id.md","lines_changed":8},{"name":"docs/parsers/ifconfig.md","lines_changed":10},{"name":"docs/parsers/ini.md","lines_changed":10},{"name":"docs/parsers/iptables.md","lines_changed":10},{"name":"docs/parsers/jobs.md","lines_changed":10},{"name":"docs/parsers/kv.md","lines_changed":11},{"name":"docs/parsers/last.md","lines_changed":8},{"name":"docs/parsers/ls.md","lines_changed":21},{"name":"docs/parsers/lsblk.md","lines_changed":8},{"name":"docs/parsers/lsmod.md","lines_changed":8},{"name":"docs/parsers/lsof.md","lines_changed":8},{"name":"docs/parsers/mount.md","lines_changed":8},{"name":"docs/parsers/netstat.md","lines_changed":17},{"name":"docs/parsers/ntpq.md","lines_changed":8},{"name":"docs/parsers/passwd.md","lines_changed":4},{"name":"docs/parsers/ping.md","lines_changed":12},{"name":"docs/parsers/pip_list.md","lines_changed":8},{"name":"docs/parsers/pip_show.md","lines_changed":8},{"name":"docs/parsers/ps.md","lines_changed":14},{"name":"docs/parsers/route.md","lines_changed":8},{"name":"docs/parsers/shadow.md","lines_changed":4},{"name":"docs/parsers/ss.md","lines_changed":8},{"name":"docs/parsers/stat.md","lines_changed":8},{"name":"docs/parsers/sysctl.md","lines_changed":16},{"name":"docs/parsers/systemctl.md","lines_changed":8},{"name":"docs/parsers/systemctl_lj.md","lines_changed":8},{"name":"docs/parsers/systemctl_ls.md","lines_changed":8},{"name":"docs/parsers/systemctl_luf.md","lines_changed":8},{"name":"docs/parsers/timedatectl.md","lines_changed":8},{"name":"docs/parsers/tracepath.md","lines_changed":10},{"name":"docs/parsers/traceroute.md","lines_changed":16},{"name":"docs/parsers/uname.md","lines_changed":8},{"name":"docs/parsers/uptime.md","lines_changed":8},{"name":"docs/parsers/w.md","lines_changed":8},{"name":"docs/parsers/who.md","lines_changed":10},{"name":"docs/parsers/xml.md","lines_changed":4},{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"jc/parsers/group.py","lines_changed":4},{"name":"jc/parsers/gshadow.py","lines_changed":4},{"name":"jc/parsers/history.py","lines_changed":4},{"name":"jc/parsers/hosts.py","lines_changed":4},{"name":"jc/parsers/id.py","lines_changed":8},{"name":"jc/parsers/ifconfig.py","lines_changed":10},{"name":"jc/parsers/ini.py","lines_changed":10},{"name":"jc/parsers/iptables.py","lines_changed":10},{"name":"jc/parsers/jobs.py","lines_changed":10},{"name":"jc/parsers/kv.py","lines_changed":11},{"name":"jc/parsers/last.py","lines_changed":8},{"name":"jc/parsers/ls.py","lines_changed":21},{"name":"jc/parsers/lsblk.py","lines_changed":8},{"name":"jc/parsers/lsmod.py","lines_changed":8},{"name":"jc/parsers/lsof.py","lines_changed":8},{"name":"jc/parsers/mount.py","lines_changed":8},{"name":"jc/parsers/netstat.py","lines_changed":17},{"name":"jc/parsers/ntpq.py","lines_changed":8},{"name":"jc/parsers/passwd.py","lines_changed":4},{"name":"jc/parsers/ping.py","lines_changed":12},{"name":"jc/parsers/pip_list.py","lines_changed":8},{"name":"jc/parsers/pip_show.py","lines_changed":8},{"name":"jc/parsers/ps.py","lines_changed":14},{"name":"jc/parsers/route.py","lines_changed":8},{"name":"jc/parsers/shadow.py","lines_changed":4},{"name":"jc/parsers/ss.py","lines_changed":8},{"name":"jc/parsers/stat.py","lines_changed":8},{"name":"jc/parsers/sysctl.py","lines_changed":16},{"name":"jc/parsers/systemctl.py","lines_changed":8},{"name":"jc/parsers/systemctl_lj.py","lines_changed":8},{"name":"jc/parsers/systemctl_ls.py","lines_changed":8},{"name":"jc/parsers/systemctl_luf.py","lines_changed":8},{"name":"jc/parsers/timedatectl.py","lines_changed":8},{"name":"jc/parsers/tracepath.py","lines_changed":10},{"name":"jc/parsers/traceroute.py","lines_changed":16},{"name":"jc/parsers/uname.py","lines_changed":8},{"name":"jc/parsers/uptime.py","lines_changed":8},{"name":"jc/parsers/w.py","lines_changed":8},{"name":"jc/parsers/who.py","lines_changed":10},{"name":"jc/parsers/xml.py","lines_changed":4},{"name":"jc/parsers/yaml.py","lines_changed":4}]},"message":"enhance docs","epoch":1596671518,"epoch_utc":null},{"commit":"6ed48c6289214fe5114971c80772efdf9ac1b8c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 15:34:17 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 15:34:17 2020 -0700","stats":{"files_changed":16,"insertions":88,"deletions":37,"files":["jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py"],"file_stats":[{"name":"jc/parsers/airport_s.py","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":12},{"name":"jc/parsers/blkid.py","lines_changed":8},{"name":"jc/parsers/crontab.py","lines_changed":10},{"name":"jc/parsers/crontab_u.py","lines_changed":6},{"name":"jc/parsers/csv.py","lines_changed":9},{"name":"jc/parsers/date.py","lines_changed":8},{"name":"jc/parsers/df.py","lines_changed":8},{"name":"jc/parsers/dig.py","lines_changed":8},{"name":"jc/parsers/dmidecode.py","lines_changed":8},{"name":"jc/parsers/du.py","lines_changed":8},{"name":"jc/parsers/env.py","lines_changed":8},{"name":"jc/parsers/file.py","lines_changed":8},{"name":"jc/parsers/foo.py","lines_changed":10},{"name":"jc/parsers/free.py","lines_changed":8},{"name":"jc/parsers/fstab.py","lines_changed":4}]},"message":"enhance docs","epoch":1596666857,"epoch_utc":null},{"commit":"f2fb4d3f415fbc1c09eec6dedcf70fba78406b3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 15:10:48 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 15:10:48 2020 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","jc/parsers/airport.py","jc/parsers/airport_s.py"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":2}]},"message":"improve docs","epoch":1596665448,"epoch_utc":null},{"commit":"6aeea59ea84e56434e87ddf89cd5d4435b99e140","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 15:08:42 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 15:08:42 2020 -0700","stats":{"files_changed":2,"insertions":14,"deletions":8,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":11},{"name":"docs/parsers/airport_s.md","lines_changed":11}]},"message":"doc updates","epoch":1596665322,"epoch_utc":null},{"commit":"d016f3bbb307f85bd0f93a508323941a8bb9d872","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 15:07:33 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 15:07:33 2020 -0700","stats":{"files_changed":2,"insertions":14,"deletions":8,"files":["jc/parsers/airport.py","jc/parsers/airport_s.py"],"file_stats":[{"name":"jc/parsers/airport.py","lines_changed":11},{"name":"jc/parsers/airport_s.py","lines_changed":11}]},"message":"improve documentation","epoch":1596665253,"epoch_utc":null},{"commit":"7131c297180bfa195d0209d46fc70ab8e67efe2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 13:32:59 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 13:32:59 2020 -0700","stats":{"files_changed":114,"insertions":686,"deletions":116,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":7},{"name":"docs/parsers/airport_s.md","lines_changed":7},{"name":"docs/parsers/arp.md","lines_changed":7},{"name":"docs/parsers/crontab.md","lines_changed":7},{"name":"docs/parsers/crontab_u.md","lines_changed":7},{"name":"docs/parsers/csv.md","lines_changed":7},{"name":"docs/parsers/date.md","lines_changed":7},{"name":"docs/parsers/df.md","lines_changed":7},{"name":"docs/parsers/dig.md","lines_changed":7},{"name":"docs/parsers/dmidecode.md","lines_changed":7},{"name":"docs/parsers/du.md","lines_changed":7},{"name":"docs/parsers/env.md","lines_changed":7},{"name":"docs/parsers/file.md","lines_changed":7},{"name":"docs/parsers/free.md","lines_changed":7},{"name":"docs/parsers/fstab.md","lines_changed":7},{"name":"docs/parsers/group.md","lines_changed":7},{"name":"docs/parsers/gshadow.md","lines_changed":7},{"name":"docs/parsers/history.md","lines_changed":7},{"name":"docs/parsers/hosts.md","lines_changed":7},{"name":"docs/parsers/id.md","lines_changed":7},{"name":"docs/parsers/ifconfig.md","lines_changed":7},{"name":"docs/parsers/ini.md","lines_changed":7},{"name":"docs/parsers/iptables.md","lines_changed":7},{"name":"docs/parsers/jobs.md","lines_changed":7},{"name":"docs/parsers/kv.md","lines_changed":7},{"name":"docs/parsers/last.md","lines_changed":7},{"name":"docs/parsers/ls.md","lines_changed":7},{"name":"docs/parsers/lsblk.md","lines_changed":7},{"name":"docs/parsers/lsmod.md","lines_changed":7},{"name":"docs/parsers/lsof.md","lines_changed":7},{"name":"docs/parsers/mount.md","lines_changed":7},{"name":"docs/parsers/netstat.md","lines_changed":7},{"name":"docs/parsers/ntpq.md","lines_changed":7},{"name":"docs/parsers/passwd.md","lines_changed":7},{"name":"docs/parsers/ping.md","lines_changed":7},{"name":"docs/parsers/pip_list.md","lines_changed":7},{"name":"docs/parsers/pip_show.md","lines_changed":7},{"name":"docs/parsers/ps.md","lines_changed":7},{"name":"docs/parsers/route.md","lines_changed":7},{"name":"docs/parsers/shadow.md","lines_changed":7},{"name":"docs/parsers/ss.md","lines_changed":7},{"name":"docs/parsers/stat.md","lines_changed":7},{"name":"docs/parsers/sysctl.md","lines_changed":7},{"name":"docs/parsers/systemctl.md","lines_changed":7},{"name":"docs/parsers/systemctl_lj.md","lines_changed":7},{"name":"docs/parsers/systemctl_ls.md","lines_changed":7},{"name":"docs/parsers/systemctl_luf.md","lines_changed":7},{"name":"docs/parsers/timedatectl.md","lines_changed":7},{"name":"docs/parsers/tracepath.md","lines_changed":7},{"name":"docs/parsers/traceroute.md","lines_changed":7},{"name":"docs/parsers/uname.md","lines_changed":9},{"name":"docs/parsers/uptime.md","lines_changed":7},{"name":"docs/parsers/w.md","lines_changed":7},{"name":"docs/parsers/who.md","lines_changed":7},{"name":"docs/parsers/xml.md","lines_changed":7},{"name":"docs/parsers/yaml.md","lines_changed":7},{"name":"jc/parsers/airport.py","lines_changed":7},{"name":"jc/parsers/airport_s.py","lines_changed":7},{"name":"jc/parsers/arp.py","lines_changed":7},{"name":"jc/parsers/blkid.py","lines_changed":7},{"name":"jc/parsers/crontab.py","lines_changed":7},{"name":"jc/parsers/crontab_u.py","lines_changed":7},{"name":"jc/parsers/csv.py","lines_changed":7},{"name":"jc/parsers/date.py","lines_changed":7},{"name":"jc/parsers/df.py","lines_changed":7},{"name":"jc/parsers/dig.py","lines_changed":7},{"name":"jc/parsers/dmidecode.py","lines_changed":7},{"name":"jc/parsers/du.py","lines_changed":7},{"name":"jc/parsers/env.py","lines_changed":7},{"name":"jc/parsers/file.py","lines_changed":7},{"name":"jc/parsers/foo.py","lines_changed":7},{"name":"jc/parsers/free.py","lines_changed":7},{"name":"jc/parsers/fstab.py","lines_changed":7},{"name":"jc/parsers/group.py","lines_changed":7},{"name":"jc/parsers/gshadow.py","lines_changed":7},{"name":"jc/parsers/history.py","lines_changed":7},{"name":"jc/parsers/hosts.py","lines_changed":7},{"name":"jc/parsers/id.py","lines_changed":7},{"name":"jc/parsers/ifconfig.py","lines_changed":7},{"name":"jc/parsers/ini.py","lines_changed":7},{"name":"jc/parsers/iptables.py","lines_changed":7},{"name":"jc/parsers/jobs.py","lines_changed":7},{"name":"jc/parsers/kv.py","lines_changed":7},{"name":"jc/parsers/last.py","lines_changed":7},{"name":"jc/parsers/ls.py","lines_changed":7},{"name":"jc/parsers/lsblk.py","lines_changed":7},{"name":"jc/parsers/lsmod.py","lines_changed":7},{"name":"jc/parsers/lsof.py","lines_changed":7},{"name":"jc/parsers/mount.py","lines_changed":7},{"name":"jc/parsers/netstat.py","lines_changed":7},{"name":"jc/parsers/ntpq.py","lines_changed":7},{"name":"jc/parsers/passwd.py","lines_changed":7},{"name":"jc/parsers/ping.py","lines_changed":7},{"name":"jc/parsers/pip_list.py","lines_changed":7},{"name":"jc/parsers/pip_show.py","lines_changed":7},{"name":"jc/parsers/ps.py","lines_changed":7},{"name":"jc/parsers/route.py","lines_changed":7},{"name":"jc/parsers/shadow.py","lines_changed":7},{"name":"jc/parsers/ss.py","lines_changed":7},{"name":"jc/parsers/stat.py","lines_changed":7},{"name":"jc/parsers/sysctl.py","lines_changed":7},{"name":"jc/parsers/systemctl.py","lines_changed":7},{"name":"jc/parsers/systemctl_lj.py","lines_changed":7},{"name":"jc/parsers/systemctl_ls.py","lines_changed":7},{"name":"jc/parsers/systemctl_luf.py","lines_changed":7},{"name":"jc/parsers/timedatectl.py","lines_changed":7},{"name":"jc/parsers/tracepath.py","lines_changed":7},{"name":"jc/parsers/traceroute.py","lines_changed":7},{"name":"jc/parsers/uname.py","lines_changed":9},{"name":"jc/parsers/uptime.py","lines_changed":7},{"name":"jc/parsers/w.py","lines_changed":7},{"name":"jc/parsers/who.py","lines_changed":7},{"name":"jc/parsers/xml.py","lines_changed":7},{"name":"jc/parsers/yaml.py","lines_changed":7}]},"message":"add module usage info to docs","epoch":1596659579,"epoch_utc":null},{"commit":"7432442983841b42c8d3d2459b55596c05d1e100","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 13:31:52 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 13:31:52 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["docs/parsers/blkid.md"],"file_stats":[{"name":"docs/parsers/blkid.md","lines_changed":7}]},"message":"add usage","epoch":1596659512,"epoch_utc":null},{"commit":"5344883394a0662ee16bb5edd68df8e4410025f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 11:35:52 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 11:35:52 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"spelling/add ping parser update","epoch":1596652552,"epoch_utc":null},{"commit":"3fcd2f6c2e015b0e65e7261c8e591ccd8a7d0e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 11:34:29 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 11:34:29 2020 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/cli.py","setup.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1596652469,"epoch_utc":null},{"commit":"f3d84bd5bf06349b681e9b72d904676e9f6bca19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 11:28:37 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 11:28:37 2020 -0700","stats":{"files_changed":6,"insertions":21,"deletions":3,"files":["CHANGELOG","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/fixtures/debian10/crontab-u.json","tests/fixtures/debian10/crontab-u.out","tests/test_crontab_u.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":4},{"name":"tests/fixtures/debian10/crontab-u.json","lines_changed":1},{"name":"tests/fixtures/debian10/crontab-u.out","lines_changed":2},{"name":"tests/test_crontab_u.py","lines_changed":12}]},"message":"tighten crontab and crontab-u parser variable detection","epoch":1596652117,"epoch_utc":null},{"commit":"549780c23220bca3bcab58d7329ba8d44d1be55d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 11:04:07 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 11:04:07 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"add debian/apt-get info","epoch":1596650647,"epoch_utc":null},{"commit":"2a6da69b82aa9ade6c01d490a32b57b415c62a9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 09:58:01 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Aug 5 09:58:01 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":4}]},"message":"improve linux/bsd check","epoch":1596646681,"epoch_utc":null},{"commit":"5c538816cf76686bac1a86a7c06e24664d25a2dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 4 17:36:35 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Aug 4 17:36:35 2020 -0700","stats":{"files_changed":9,"insertions":55,"deletions":4,"files":["CHANGELOG","jc/cli.py","jc/parsers/ping.py","setup.py","tests/fixtures/pi/ping-ip-O-D.json","tests/fixtures/pi/ping-ip-O-D.out","tests/fixtures/pi/ping-ip-O.json","tests/fixtures/pi/ping-ip-O.out","tests/test_ping.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/ping.py","lines_changed":4},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/pi/ping-ip-O-D.json","lines_changed":1},{"name":"tests/fixtures/pi/ping-ip-O-D.out","lines_changed":10},{"name":"tests/fixtures/pi/ping-ip-O.json","lines_changed":1},{"name":"tests/fixtures/pi/ping-ip-O.out","lines_changed":10},{"name":"tests/test_ping.py","lines_changed":26}]},"message":"ping parser fix for raspberry pi","epoch":1596587795,"epoch_utc":null},{"commit":"7b8b378a7df397c488fc54fbd6e77f5f3f23c10c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 3 12:39:18 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 3 12:39:18 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":1}]},"message":"add pydoc-markdown version requirement","epoch":1596483558,"epoch_utc":null},{"commit":"e30a75e25c4b43969bf9f874f89e18512a5e3a34","merge":"dda517a 85ad5cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 3 10:18:39 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Aug 3 10:18:39 2020 -0700","message":"Merge pull request #76 from kellyjonbrazil/dev\n\nDev v1.13.2","epoch":1596475119,"epoch_utc":null},{"commit":"85ad5cfd0bfb903ce35e37b343244fed88dbd979","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 3 10:14:13 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 3 10:14:13 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"date change","epoch":1596474853,"epoch_utc":null},{"commit":"88b9d5068c5bac0691fedb543114300d6afc7131","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 3 09:26:37 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Aug 3 09:26:37 2020 -0700","stats":{"files_changed":6,"insertions":74,"deletions":15,"files":["EXAMPLES.md","README.md","docs/parsers/date.md","tests/fixtures/generic/date.json","tests/fixtures/generic/date.out","tests/test_date.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":18},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/date.md","lines_changed":34},{"name":"tests/fixtures/generic/date.json","lines_changed":1},{"name":"tests/fixtures/generic/date.out","lines_changed":1},{"name":"tests/test_date.py","lines_changed":34}]},"message":"finish date parser","epoch":1596471997,"epoch_utc":null},{"commit":"f8c4948a090642db595eda2ba2ea0773e560ba67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 16:52:48 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 16:52:48 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":1}]},"message":"remove comment","epoch":1596239568,"epoch_utc":null},{"commit":"412322447f019aec0b64888631bc965e9f21186d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 16:51:05 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 16:51:05 2020 -0700","stats":{"files_changed":1,"insertions":48,"deletions":17,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":65}]},"message":"add month_num and weekday_num fields","epoch":1596239465,"epoch_utc":null},{"commit":"d4f289e40fae621b87f0d49451fca4c3dde216b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 14:47:06 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 14:47:06 2020 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":4},{"name":"jc/parsers/date.py","lines_changed":4}]},"message":"documentation fixup","epoch":1596232026,"epoch_utc":null},{"commit":"e1f3feb8f529172ae26ce4c7a66a4a1c21b722ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 14:45:30 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 14:45:30 2020 -0700","stats":{"files_changed":1,"insertions":13,"deletions":10,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":23}]},"message":"cover empty data case in process","epoch":1596231930,"epoch_utc":null},{"commit":"37d3bc699c7be16955be06840d242980f05f1074","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 14:39:02 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 14:39:02 2020 -0700","stats":{"files_changed":6,"insertions":224,"deletions":1,"files":["CHANGELOG","docgen.sh","docs/parsers/date.md","jc/cli.py","jc/parsers/date.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/date.md","lines_changed":89},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/date.py","lines_changed":127},{"name":"man/jc.1","lines_changed":4}]},"message":"add date parser","epoch":1596231542,"epoch_utc":null},{"commit":"672fd18016b8122510b6ab246b5675b7fd399b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 12:59:44 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 12:59:44 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"date bump","epoch":1596225584,"epoch_utc":null},{"commit":"bc2c23a2a09b96d34bb80f69fdc7751fb5ac3ed4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 12:58:58 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 12:58:58 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"version bump","epoch":1596225538,"epoch_utc":null},{"commit":"865f7e78124e382c6d315702fa6e48f2104cee46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 12:58:11 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 12:58:11 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":6}]},"message":"add kv parser to man page","epoch":1596225491,"epoch_utc":null},{"commit":"720212b552e1bd2b9196dd5f06e4b3f85d463531","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 11:02:24 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 11:02:24 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":9,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":10}]},"message":"fixup traceroute example with new behavior","epoch":1596218544,"epoch_utc":null},{"commit":"d3be61f60837801d5a505dc2520cc80c874a6092","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 10:59:46 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 10:59:46 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]},"message":"version bump","epoch":1596218386,"epoch_utc":null},{"commit":"13418b16b8fd78fdd97ac045ec3fe9aa59d46080","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 10:56:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 10:56:51 2020 -0700","stats":{"files_changed":2,"insertions":8,"deletions":2,"files":["docs/parsers/traceroute.md","jc/parsers/traceroute.py"],"file_stats":[{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"jc/parsers/traceroute.py","lines_changed":5}]},"message":"doc update","epoch":1596218211,"epoch_utc":null},{"commit":"42d2017cd6f5ee1d1a92bd4958cd63366c1e715d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 10:53:47 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 31 10:53:47 2020 -0700","stats":{"files_changed":18,"insertions":41,"deletions":24,"files":["CHANGELOG","jc/parsers/traceroute.py","tests/fixtures/centos-7.7/traceroute.json","tests/fixtures/freebsd12/traceroute.json","tests/fixtures/freebsd12/traceroute6.json","tests/fixtures/generic/traceroute1.json","tests/fixtures/generic/traceroute2.json","tests/fixtures/generic/traceroute3.json","tests/fixtures/generic/traceroute5.json","tests/fixtures/generic/traceroute6.json","tests/fixtures/generic/traceroute7.json","tests/fixtures/osx-10.14.6/traceroute-asn.json",".../fixtures/osx-10.14.6/traceroute-no-header.json","tests/fixtures/osx-10.14.6/traceroute-q.json","tests/fixtures/osx-10.14.6/traceroute.json",".../osx-10.14.6/traceroute6-mult-addresses.json","tests/fixtures/osx-10.14.6/traceroute6.json","tests/test_traceroute.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/traceroute.py","lines_changed":26},{"name":"tests/fixtures/centos-7.7/traceroute.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/traceroute.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/traceroute6.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute1.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute2.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute3.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute5.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute6.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute7.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/traceroute-asn.json","lines_changed":2},{"name":".../fixtures/osx-10.14.6/traceroute-no-header.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/traceroute-q.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/traceroute.json","lines_changed":2},{"name":".../osx-10.14.6/traceroute6-mult-addresses.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/traceroute6.json","lines_changed":2},{"name":"tests/test_traceroute.py","lines_changed":7}]},"message":"traceroute updates: handle missing header row, add annotations, don't print timeouts as probes","epoch":1596218027,"epoch_utc":null},{"commit":"4345e76ead2a49ae0691077e9fbd2b6c5fdfd129","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 30 16:49:38 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 30 16:49:38 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2}]},"message":"change to use --kv for key/value files","epoch":1596152978,"epoch_utc":null},{"commit":"741431322ba2677355c361fcd6095ed8cd0a4349","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 30 16:45:36 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 30 16:45:36 2020 -0700","stats":{"files_changed":2,"insertions":46,"deletions":24,"files":["tests/test_ini.py","tests/test_kv.py"],"file_stats":[{"name":"tests/test_ini.py","lines_changed":24},{"name":"tests/test_kv.py","lines_changed":46}]},"message":"update tests for kv parser","epoch":1596152736,"epoch_utc":null},{"commit":"980beaaf41a04891f7c2f5daeb1e3a23d3c7ec19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 30 16:21:03 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 30 16:21:03 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2}]},"message":"fix docgen issue","epoch":1596151263,"epoch_utc":null},{"commit":"2205034e0906b333c259648f7a0e5392945f12ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 30 16:20:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 30 16:20:51 2020 -0700","stats":{"files_changed":8,"insertions":105,"deletions":31,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","jc/cli.py","jc/parsers/ini.py","jc/parsers/kv.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"EXAMPLES.md","lines_changed":53},{"name":"README.md","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/ini.py","lines_changed":4},{"name":"jc/parsers/kv.py","lines_changed":67},{"name":"setup.py","lines_changed":2}]},"message":"add kv parser","epoch":1596151251,"epoch_utc":null},{"commit":"82b9c87a66fce5d8626c56858a8c6f1f3326e7fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 30 16:20:24 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 30 16:20:24 2020 -0700","stats":{"files_changed":58,"insertions":345,"deletions":62,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/readme.md","docs/utils.md"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":6},{"name":"docs/parsers/airport_s.md","lines_changed":6},{"name":"docs/parsers/arp.md","lines_changed":6},{"name":"docs/parsers/blkid.md","lines_changed":6},{"name":"docs/parsers/crontab.md","lines_changed":6},{"name":"docs/parsers/crontab_u.md","lines_changed":6},{"name":"docs/parsers/csv.md","lines_changed":6},{"name":"docs/parsers/df.md","lines_changed":6},{"name":"docs/parsers/dig.md","lines_changed":6},{"name":"docs/parsers/dmidecode.md","lines_changed":6},{"name":"docs/parsers/du.md","lines_changed":6},{"name":"docs/parsers/env.md","lines_changed":6},{"name":"docs/parsers/file.md","lines_changed":6},{"name":"docs/parsers/free.md","lines_changed":6},{"name":"docs/parsers/fstab.md","lines_changed":6},{"name":"docs/parsers/group.md","lines_changed":6},{"name":"docs/parsers/gshadow.md","lines_changed":6},{"name":"docs/parsers/history.md","lines_changed":6},{"name":"docs/parsers/hosts.md","lines_changed":6},{"name":"docs/parsers/id.md","lines_changed":6},{"name":"docs/parsers/ifconfig.md","lines_changed":13},{"name":"docs/parsers/ini.md","lines_changed":6},{"name":"docs/parsers/iptables.md","lines_changed":6},{"name":"docs/parsers/jobs.md","lines_changed":6},{"name":"docs/parsers/kv.md","lines_changed":61},{"name":"docs/parsers/last.md","lines_changed":6},{"name":"docs/parsers/ls.md","lines_changed":6},{"name":"docs/parsers/lsblk.md","lines_changed":6},{"name":"docs/parsers/lsmod.md","lines_changed":6},{"name":"docs/parsers/lsof.md","lines_changed":6},{"name":"docs/parsers/mount.md","lines_changed":6},{"name":"docs/parsers/netstat.md","lines_changed":6},{"name":"docs/parsers/ntpq.md","lines_changed":6},{"name":"docs/parsers/passwd.md","lines_changed":6},{"name":"docs/parsers/ping.md","lines_changed":6},{"name":"docs/parsers/pip_list.md","lines_changed":6},{"name":"docs/parsers/pip_show.md","lines_changed":6},{"name":"docs/parsers/ps.md","lines_changed":6},{"name":"docs/parsers/route.md","lines_changed":6},{"name":"docs/parsers/shadow.md","lines_changed":6},{"name":"docs/parsers/ss.md","lines_changed":6},{"name":"docs/parsers/stat.md","lines_changed":6},{"name":"docs/parsers/sysctl.md","lines_changed":6},{"name":"docs/parsers/systemctl.md","lines_changed":6},{"name":"docs/parsers/systemctl_lj.md","lines_changed":6},{"name":"docs/parsers/systemctl_ls.md","lines_changed":6},{"name":"docs/parsers/systemctl_luf.md","lines_changed":6},{"name":"docs/parsers/timedatectl.md","lines_changed":6},{"name":"docs/parsers/tracepath.md","lines_changed":6},{"name":"docs/parsers/traceroute.md","lines_changed":9},{"name":"docs/parsers/uname.md","lines_changed":6},{"name":"docs/parsers/uptime.md","lines_changed":6},{"name":"docs/parsers/w.md","lines_changed":6},{"name":"docs/parsers/who.md","lines_changed":6},{"name":"docs/parsers/xml.md","lines_changed":6},{"name":"docs/parsers/yaml.md","lines_changed":6},{"name":"docs/readme.md","lines_changed":1},{"name":"docs/utils.md","lines_changed":5}]},"message":"update docs","epoch":1596151224,"epoch_utc":null},{"commit":"dda517a937323b9888e081aea1032a9d63c4a6bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 14:36:20 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 29 14:36:20 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":163,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":166}]},"message":"shorten more examples","epoch":1596058580,"epoch_utc":null},{"commit":"4e6d283b9eddf7759b4dd37bd643394ff73febd4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 14:27:13 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 29 14:27:13 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":65,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":65}]},"message":"shorten netstat example","epoch":1596058033,"epoch_utc":null},{"commit":"55acab05aa740dfd7534304f2678b60942cad116","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:55:16 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 29 11:55:16 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["changelog.txt => CHANGELOG"],"file_stats":[{"name":"changelog.txt => CHANGELOG","lines_changed":0}]},"message":"change name to CHANGELOG","epoch":1596048916,"epoch_utc":null},{"commit":"ed38a18d236cdb991779f4f148e42359c139e61c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:49:00 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 29 11:49:00 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":86,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":87}]},"message":"remove more examples","epoch":1596048540,"epoch_utc":null},{"commit":"95b3c11203d3dd0627c5eeca39fe1d145bf2d733","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:43:22 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 29 11:43:22 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":124,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":124}]},"message":"remove more examples","epoch":1596048202,"epoch_utc":null},{"commit":"dce318f4fd44b9c4013211bf233020e84566ddb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:40:47 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 29 11:40:47 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1537,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1540}]},"message":"remove examples to reduce file size","epoch":1596048047,"epoch_utc":null},{"commit":"85127f0fb8096192b19fca1f4ffe38ee391351be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:34:43 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 29 11:34:43 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["jc/examples.md => EXAMPLES.md"],"file_stats":[{"name":"jc/examples.md => EXAMPLES.md","lines_changed":0}]},"message":"move examples to root","epoch":1596047683,"epoch_utc":null},{"commit":"fb45058244ce879f12bbb5b7267b0fd63fef1d63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:32:18 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 29 11:32:18 2020 -0700","stats":{"files_changed":1,"insertions":2640,"deletions":0,"files":["jc/examples.md"],"file_stats":[{"name":"jc/examples.md","lines_changed":2640}]},"message":"add examples file","epoch":1596047538,"epoch_utc":null},{"commit":"45bb5ae389a00ed6a132a65c69ce76c7e5976858","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 28 11:03:41 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 28 11:03:41 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"spelling","epoch":1595959421,"epoch_utc":null},{"commit":"339238ab364d8735892a11cb16a62a651edae169","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 20:37:33 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 20:37:33 2020 -0700","stats":{"files_changed":8,"insertions":79,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py","tests/fixtures/centos-7.7/route-6-n.json","tests/fixtures/centos-7.7/route-6-n.out","tests/fixtures/centos-7.7/route-6.json","tests/fixtures/centos-7.7/route-6.out","tests/test_route.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/route-6-n.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/route-6-n.out","lines_changed":24},{"name":"tests/fixtures/centos-7.7/route-6.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/route-6.out","lines_changed":24},{"name":"tests/test_route.py","lines_changed":24}]},"message":"version bump and add route -6 tests","epoch":1595907453,"epoch_utc":null},{"commit":"032cda8b3db096b690d2557e3b918c50c716c543","merge":"690ac52 6badd3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 19:12:21 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Jul 27 19:12:21 2020 -0700","message":"Merge pull request #74 from kellyjonbrazil/dev\n\nDev v1.13.0","epoch":1595902341,"epoch_utc":null},{"commit":"6badd3fb1e1cf6d1ee99614fadc20d54be8039aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 19:02:23 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 19:02:23 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":3}]},"message":"add parser count test","epoch":1595901743,"epoch_utc":null},{"commit":"724d825745b6f1692eb3b068c3fb59d14892e690","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 19:02:11 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 19:02:11 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":4}]},"message":"add tracepath parser","epoch":1595901731,"epoch_utc":null},{"commit":"ff1e32ad2ee156f105f5069c6b14a65b22784dfa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 16:49:34 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 16:49:34 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1595893774,"epoch_utc":null},{"commit":"a5f97febd3066b9e95a18d6b73162a7d206c5845","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 16:47:41 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 16:47:41 2020 -0700","stats":{"files_changed":10,"insertions":132,"deletions":0,"files":["tests/fixtures/centos-7.7/tracepath.json","tests/fixtures/centos-7.7/tracepath6.json","tests/fixtures/freebsd12/traceroute.json","tests/fixtures/freebsd12/traceroute.out","tests/fixtures/freebsd12/traceroute6.json","tests/fixtures/freebsd12/traceroute6.out","tests/fixtures/osx-10.14.6/uname.out","tests/test_tracepath.py","tests/test_traceroute.py","tests/test_uname.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/tracepath.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/tracepath6.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/traceroute.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/traceroute.out","lines_changed":14},{"name":"tests/fixtures/freebsd12/traceroute6.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/traceroute6.out","lines_changed":34},{"name":"tests/fixtures/osx-10.14.6/uname.out","lines_changed":1},{"name":"tests/test_tracepath.py","lines_changed":46},{"name":"tests/test_traceroute.py","lines_changed":24},{"name":"tests/test_uname.py","lines_changed":9}]},"message":"update traceroute, tracepath, and uname tests","epoch":1595893661,"epoch_utc":null},{"commit":"5baa6cc865634142690e78596c640db35e110b29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:44:13 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 15:44:13 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add route parser update","epoch":1595889853,"epoch_utc":null},{"commit":"7a4f30b843d8f11711abbb8f9bb263f945ff87ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:37:44 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 15:37:44 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":6}]},"message":"fix for iface issue","epoch":1595889464,"epoch_utc":null},{"commit":"b2c385dc4f63e3e15f47e986deac0524967214a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:30:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 15:30:09 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":2}]},"message":"change 'if' to 'iface'","epoch":1595889009,"epoch_utc":null},{"commit":"5d5da8d33fa6ab77c745d338d1a2e2e8f2e4c697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:27:11 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 15:27:11 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":6}]},"message":"more fixes for ipv6 fix","epoch":1595888831,"epoch_utc":null},{"commit":"e60457157839daba385202906997dec48c9c4950","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:20:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 15:20:51 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":2}]},"message":"fix next_hop fix","epoch":1595888451,"epoch_utc":null},{"commit":"f9dacc3f95b32e1431914ae0b0dc5c8e8840d5a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:18:13 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 15:18:13 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":4}]},"message":"fixup for ipv6","epoch":1595888293,"epoch_utc":null},{"commit":"6086920332575cd7db1b38262a3b4ba8fbfae7ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:13:32 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 15:13:32 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]},"message":"update ParseError message","epoch":1595888012,"epoch_utc":null},{"commit":"f52f3163bcaf8d7e784f02505e81456e8240295b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 13:57:58 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 13:57:58 2020 -0700","stats":{"files_changed":1,"insertions":49,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":49}]},"message":"add tracepath example","epoch":1595883478,"epoch_utc":null},{"commit":"d18ff73e880c7d34957f2713857cc83094f914cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 13:51:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 13:51:51 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/tracepath.py"],"file_stats":[{"name":"jc/parsers/tracepath.py","lines_changed":4}]},"message":"update author info","epoch":1595883111,"epoch_utc":null},{"commit":"1e5d602caecd96c9056ad77f9fc50cf25bf6fdfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 13:48:46 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 13:48:46 2020 -0700","stats":{"files_changed":2,"insertions":288,"deletions":32,"files":["docs/parsers/tracepath.md","jc/parsers/tracepath.py"],"file_stats":[{"name":"docs/parsers/tracepath.md","lines_changed":122},{"name":"jc/parsers/tracepath.py","lines_changed":198}]},"message":"working tracepath parser","epoch":1595882926,"epoch_utc":null},{"commit":"12912521ecb376c36dfdd743b3c4195598fb9aac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 11:04:27 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 11:04:27 2020 -0700","stats":{"files_changed":2,"insertions":0,"deletions":11,"files":["docs/parsers/traceroute.md","jc/parsers/traceroute.py"],"file_stats":[{"name":"docs/parsers/traceroute.md","lines_changed":7},{"name":"jc/parsers/traceroute.py","lines_changed":4}]},"message":"doc update","epoch":1595873067,"epoch_utc":null},{"commit":"842ea3a94bec3fcab76257fdde5514d1de3d57fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 11:02:13 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 11:02:13 2020 -0700","stats":{"files_changed":2,"insertions":153,"deletions":0,"files":["docs/parsers/tracepath.md","jc/parsers/tracepath.py"],"file_stats":[{"name":"docs/parsers/tracepath.md","lines_changed":64},{"name":"jc/parsers/tracepath.py","lines_changed":89}]},"message":"add tracepath parser skeleton","epoch":1595872933,"epoch_utc":null},{"commit":"a8560dbc1598fa97de87594228b4cc10282d4197","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 11:01:57 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 11:01:57 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add tracepath","epoch":1595872917,"epoch_utc":null},{"commit":"a65e27540a8c5c7123d2fdf79fcbefa1e2f8afdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 11:01:45 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 11:01:45 2020 -0700","stats":{"files_changed":3,"insertions":1,"deletions":24,"files":["docgen.sh","docs/parsers/traceroute.md","jc/parsers/traceroute.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/traceroute.md","lines_changed":14},{"name":"jc/parsers/traceroute.py","lines_changed":10}]},"message":"update docs","epoch":1595872905,"epoch_utc":null},{"commit":"c3c5ed11e68938e35920144406d37ea3b21d63dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 10:33:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 10:33:40 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]},"message":"change name from tr to trparse","epoch":1595871220,"epoch_utc":null},{"commit":"ce24149335cd8ed1e8513a2cf040432fe42d86b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 10:33:25 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 10:33:25 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":1}]},"message":"formatting","epoch":1595871205,"epoch_utc":null},{"commit":"0314ca8c4831d24c169a0e4948421ecd638fd699","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 10:33:15 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 10:33:15 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add trparse acknowledgement","epoch":1595871195,"epoch_utc":null},{"commit":"ebd8ee49a9f43063850e30c745c8cae46ee13de1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 10:28:15 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 10:28:15 2020 -0700","stats":{"files_changed":1,"insertions":26,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":27}]},"message":"add key/value info to ini example","epoch":1595870895,"epoch_utc":null},{"commit":"38d10c97814ec69586c3b447c182f339772d6e22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 09:29:30 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 09:29:30 2020 -0700","stats":{"files_changed":1,"insertions":130,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":131}]},"message":"add ping and traceroute examples","epoch":1595867370,"epoch_utc":null},{"commit":"360106c24d24e6a9697c00a158a14aaa334a4b1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 09:23:01 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 09:23:01 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add tracepath","epoch":1595866981,"epoch_utc":null},{"commit":"ca470a5d02fd9fbaf05d8b3b3bb1ffe9f4cf5af3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 09:20:00 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 09:20:00 2020 -0700","stats":{"files_changed":2,"insertions":39,"deletions":0,"files":["tests/fixtures/centos-7.7/tracepath.out","tests/fixtures/centos-7.7/tracepath6.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/tracepath.out","lines_changed":34},{"name":"tests/fixtures/centos-7.7/tracepath6.out","lines_changed":5}]},"message":"add tracepath fixtures","epoch":1595866800,"epoch_utc":null},{"commit":"57f66e6b1d554ff20b72959f5ebb9e7b2feffed2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 09:19:48 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 27 09:19:48 2020 -0700","stats":{"files_changed":2,"insertions":14,"deletions":2,"files":["changelog.txt","jc/parsers/uname.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":14}]},"message":"add exception with hint to use \"uname -a\"","epoch":1595866788,"epoch_utc":null},{"commit":"e774f67924c0e6195f79829b2ac75ce95f76fbaa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:53:17 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 16:53:17 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["jc/parsers/ini.py"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":10}]},"message":"turn off interpolation and coerce None to ''","epoch":1595634797,"epoch_utc":null},{"commit":"ac10e576c167d20de259e47a6aa5b23fc998b4c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:29:27 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 16:29:27 2020 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/ini.md","jc/parsers/ini.py"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"jc/parsers/ini.py","lines_changed":4}]},"message":"spelling","epoch":1595633367,"epoch_utc":null},{"commit":"bcae0a99cd0ccce4ec8a67929f7c83a1095a5b88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:23:45 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 16:23:45 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"add key/value to ini description","epoch":1595633025,"epoch_utc":null},{"commit":"c73c2ff879b3ed7a3e6f04e53e0a729e4f00ed21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:23:30 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 16:23:30 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":8}]},"message":"add ping, traceroute, and ini update","epoch":1595633010,"epoch_utc":null},{"commit":"c39b1a3356881a11a8f6fe9432897e6d67162f07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:17:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 16:17:51 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"add ping, traceroute and update ini description","epoch":1595632671,"epoch_utc":null},{"commit":"125dc2d9e051a82a4a438afe2e520212338353f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:17:16 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 16:17:16 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":3,"files":["docs/parsers/ini.md"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":11}]},"message":"add info about key/value files to doc","epoch":1595632636,"epoch_utc":null},{"commit":"b7d4ddc7ced2c3aabf3a857b53a0bf1b62eb6a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:16:54 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 16:16:54 2020 -0700","stats":{"files_changed":5,"insertions":50,"deletions":0,"files":["tests/fixtures/generic/keyvalue-ifcfg.json","tests/fixtures/generic/keyvalue-ifcfg.txt","tests/fixtures/generic/keyvalue.json","tests/fixtures/generic/keyvalue.txt","tests/test_ini.py"],"file_stats":[{"name":"tests/fixtures/generic/keyvalue-ifcfg.json","lines_changed":1},{"name":"tests/fixtures/generic/keyvalue-ifcfg.txt","lines_changed":19},{"name":"tests/fixtures/generic/keyvalue.json","lines_changed":1},{"name":"tests/fixtures/generic/keyvalue.txt","lines_changed":5},{"name":"tests/test_ini.py","lines_changed":24}]},"message":"add tests for key/value files","epoch":1595632614,"epoch_utc":null},{"commit":"f5e546c6fa7cba166284a0976887d6b82451d3e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:16:24 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 16:16:24 2020 -0700","stats":{"files_changed":1,"insertions":33,"deletions":9,"files":["jc/parsers/ini.py"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":42}]},"message":"add support for simple key/value pairs","epoch":1595632584,"epoch_utc":null},{"commit":"928e39cd103b96b8c3ccc8d85c930ffb419296c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 14:16:41 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 14:16:41 2020 -0700","stats":{"files_changed":9,"insertions":104,"deletions":0,"files":["tests/fixtures/generic/traceroute1.json","tests/fixtures/generic/traceroute2.json","tests/fixtures/generic/traceroute3.json","tests/fixtures/generic/traceroute4.json","tests/fixtures/generic/traceroute5.json","tests/fixtures/generic/traceroute6.json","tests/fixtures/generic/traceroute7.json","tests/fixtures/generic/traceroute8.json","tests/test_traceroute.py"],"file_stats":[{"name":"tests/fixtures/generic/traceroute1.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute2.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute3.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute4.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute5.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute6.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute7.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute8.json","lines_changed":1},{"name":"tests/test_traceroute.py","lines_changed":96}]},"message":"add generic traceroute tests","epoch":1595625401,"epoch_utc":null},{"commit":"d0b7ea68a005daff313e44808b256656313a78a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 13:47:47 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 13:47:47 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":4}]},"message":"check for key in dictionary","epoch":1595623667,"epoch_utc":null},{"commit":"8444690133b6a7522822ab279e97ede6ded17ba9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 13:47:29 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 13:47:29 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":4}]},"message":"add traceroute","epoch":1595623649,"epoch_utc":null},{"commit":"c03c42d76703ff8f423cf3c10ea6254a27a685cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 13:47:23 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 24 13:47:23 2020 -0700","stats":{"files_changed":9,"insertions":76,"deletions":9,"files":["tests/fixtures/centos-7.7/traceroute.json","tests/fixtures/osx-10.14.6/traceroute-asn.json",".../osx-10.14.6/traceroute-mult-addresses.json","tests/fixtures/osx-10.14.6/traceroute-q.json","tests/fixtures/osx-10.14.6/traceroute.json",".../osx-10.14.6/traceroute6-mult-addresses.json","...-address.out => traceroute6-mult-addresses.out}","tests/fixtures/osx-10.14.6/traceroute6.json","tests/test_traceroute.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/traceroute.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/traceroute-asn.json","lines_changed":1},{"name":".../osx-10.14.6/traceroute-mult-addresses.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/traceroute-q.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/traceroute.json","lines_changed":1},{"name":".../osx-10.14.6/traceroute6-mult-addresses.json","lines_changed":1},{"name":"...-address.out => traceroute6-mult-addresses.out}","lines_changed":0},{"name":"tests/fixtures/osx-10.14.6/traceroute6.json","lines_changed":1},{"name":"tests/test_traceroute.py","lines_changed":78}]},"message":"add traceroute tests","epoch":1595623643,"epoch_utc":null},{"commit":"ab67688a00ac335d2a5603e9cadef8b565957911","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 16:45:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 16:45:09 2020 -0700","stats":{"files_changed":1,"insertions":55,"deletions":0,"files":["tests/test_traceroute.py"],"file_stats":[{"name":"tests/test_traceroute.py","lines_changed":55}]},"message":"add test skeleton","epoch":1595547909,"epoch_utc":null},{"commit":"5dcb7166daef3c53da65bba0d591672e64d3a90b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 16:44:57 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 16:44:57 2020 -0700","stats":{"files_changed":2,"insertions":169,"deletions":0,"files":["docgen.sh","docs/parsers/traceroute.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/traceroute.md","lines_changed":168}]},"message":"add traceroute doc","epoch":1595547897,"epoch_utc":null},{"commit":"14697b86d7fc1cfebb41e0fd2d9a9b9b60071d3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 15:48:08 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 15:48:08 2020 -0700","stats":{"files_changed":1,"insertions":24,"deletions":2,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":26}]},"message":"add MIT license","epoch":1595544488,"epoch_utc":null},{"commit":"4f4b6276d4bf798b17d996f39742bd0428fc2f19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 15:46:22 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 15:46:22 2020 -0700","stats":{"files_changed":1,"insertions":38,"deletions":33,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":71}]},"message":"update docstring","epoch":1595544382,"epoch_utc":null},{"commit":"7bc497e1291059ae7858c9d2bd2d9a1b4c030dd1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 15:42:33 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 15:42:33 2020 -0700","stats":{"files_changed":1,"insertions":117,"deletions":14,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":131}]},"message":"updated process() function to set integers and floats","epoch":1595544153,"epoch_utc":null},{"commit":"68a37a6a5a3f0ad0fa24c84d363050af9fa11f97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 12:48:33 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 12:48:33 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":4}]},"message":"remove unused function load()","epoch":1595533713,"epoch_utc":null},{"commit":"6f5cd1d7c5f76d7d4da42171fdc30daf9fe3996e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 12:03:21 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 12:03:21 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]},"message":"change to use f-string","epoch":1595531001,"epoch_utc":null},{"commit":"126b1b121ca10183dc7e9dece83b42907becad39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 11:31:56 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 11:31:56 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":0,"files":["tests/fixtures/generic/traceroute8.out"],"file_stats":[{"name":"tests/fixtures/generic/traceroute8.out","lines_changed":10}]},"message":"add traceroute6 example","epoch":1595529116,"epoch_utc":null},{"commit":"2341e456a012564f86d533d2748a5887d79995e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 11:31:35 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 11:31:35 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]},"message":"use ParseError instead of generic Exception","epoch":1595529095,"epoch_utc":null},{"commit":"72d80e95bb50ae2a7432082e65aba15235ba0955","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 10:52:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 10:52:40 2020 -0700","stats":{"files_changed":8,"insertions":115,"deletions":8,"files":["jc/parsers/traceroute.py","tests/fixtures/generic/traceroute1.out","tests/fixtures/generic/traceroute2.out","tests/fixtures/generic/traceroute3.out","tests/fixtures/generic/traceroute4.out","tests/fixtures/generic/traceroute5.out","tests/fixtures/generic/traceroute6.out","tests/fixtures/generic/traceroute7.out"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":9},{"name":"tests/fixtures/generic/traceroute1.out","lines_changed":16},{"name":"tests/fixtures/generic/traceroute2.out","lines_changed":13},{"name":"tests/fixtures/generic/traceroute3.out","lines_changed":20},{"name":"tests/fixtures/generic/traceroute4.out","lines_changed":7},{"name":"tests/fixtures/generic/traceroute5.out","lines_changed":10},{"name":"tests/fixtures/generic/traceroute6.out","lines_changed":31},{"name":"tests/fixtures/generic/traceroute7.out","lines_changed":17}]},"message":"remove unused regex patterns","epoch":1595526760,"epoch_utc":null},{"commit":"f5ec82440cd1c1b5ac9011d3517298d0cdcd8766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 10:19:56 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 23 10:19:56 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":11}]},"message":"simplify regex patterns","epoch":1595524796,"epoch_utc":null},{"commit":"c8e526ead35b868733f57b4c114062a48b78a817","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 22 17:23:24 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 22 17:23:24 2020 -0700","stats":{"files_changed":2,"insertions":12,"deletions":3,"files":["jc/parsers/traceroute.py","tests/fixtures/osx-10.14.6/traceroute-q.out"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":11},{"name":"tests/fixtures/osx-10.14.6/traceroute-q.out","lines_changed":4}]},"message":"fixes for bsd-style ipv6 output","epoch":1595463804,"epoch_utc":null},{"commit":"066adfb76479df7042bfb12bbb83b5dbd8a6d54c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 22 15:02:02 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 22 15:02:02 2020 -0700","stats":{"files_changed":7,"insertions":83,"deletions":7,"files":["jc/parsers/traceroute.py","tests/fixtures/centos-7.7/traceroute.out","tests/fixtures/osx-10.14.6/traceroute-asn.out",".../osx-10.14.6/traceroute-mult-addresses.out",".../fixtures/osx-10.14.6/traceroute-no-header.out",".../osx-10.14.6/traceroute6-multi-address.out","tests/fixtures/osx-10.14.6/traceroute6.out"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":30},{"name":"tests/fixtures/centos-7.7/traceroute.out","lines_changed":32},{"name":"tests/fixtures/osx-10.14.6/traceroute-asn.out","lines_changed":5},{"name":".../osx-10.14.6/traceroute-mult-addresses.out","lines_changed":5},{"name":".../fixtures/osx-10.14.6/traceroute-no-header.out","lines_changed":3},{"name":".../osx-10.14.6/traceroute6-multi-address.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/traceroute6.out","lines_changed":7}]},"message":"handle warning lines in the traceroute output","epoch":1595455322,"epoch_utc":null},{"commit":"5b444d4717b0b8528647e17e71d699907def3e18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 22 12:19:27 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 22 12:19:27 2020 -0700","stats":{"files_changed":3,"insertions":307,"deletions":0,"files":["jc/cli.py","jc/parsers/traceroute.py","tests/fixtures/osx-10.14.6/traceroute.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/traceroute.py","lines_changed":295},{"name":"tests/fixtures/osx-10.14.6/traceroute.out","lines_changed":11}]},"message":"add traceroute parser","epoch":1595445567,"epoch_utc":null},{"commit":"69c95adc8d59927c1c00b7e766ca5003b7b6454c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 22 09:06:11 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 22 09:06:11 2020 -0700","stats":{"files_changed":3,"insertions":81,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ping6-ip-dup.json","tests/fixtures/osx-10.14.6/ping6-ip-dup.out","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ping6-ip-dup.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-dup.out","lines_changed":68},{"name":"tests/test_ping.py","lines_changed":12}]},"message":"add osx ipv6 ping dup test","epoch":1595433971,"epoch_utc":null},{"commit":"2b0e0d8f5c1a6a5450e362971f9ad5892093b2ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 17:34:30 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 21 17:34:30 2020 -0700","stats":{"files_changed":3,"insertions":27,"deletions":0,"files":["tests/fixtures/centos-7.7/ping6-ip-dup.json","tests/fixtures/centos-7.7/ping6-ip-dup.out","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ping6-ip-dup.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-ip-dup.out","lines_changed":14},{"name":"tests/test_ping.py","lines_changed":12}]},"message":"add ipv6 dup test","epoch":1595378070,"epoch_utc":null},{"commit":"778d1bacbf8df523d434b22f5e1517955e4c15ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 15:16:39 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 21 15:16:39 2020 -0700","stats":{"files_changed":2,"insertions":28,"deletions":12,"files":["docs/parsers/ping.md","jc/parsers/ping.py"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":20},{"name":"jc/parsers/ping.py","lines_changed":20}]},"message":"update docs to add \"duplicates\" fields","epoch":1595369799,"epoch_utc":null},{"commit":"7e1b0410166c584775ebcd681a280ec7321560c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 15:12:43 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 21 15:12:43 2020 -0700","stats":{"files_changed":1,"insertions":24,"deletions":0,"files":["tests/test_ping.py"],"file_stats":[{"name":"tests/test_ping.py","lines_changed":24}]},"message":"add duplicate replies tests","epoch":1595369563,"epoch_utc":null},{"commit":"313b9b329ca6b674069718839f55a4bd7834db80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 15:05:54 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 21 15:05:54 2020 -0700","stats":{"files_changed":55,"insertions":55,"deletions":53,"files":["tests/fixtures/centos-7.7/ping-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping-hostname-O-p.json","tests/fixtures/centos-7.7/ping-hostname-O.json","tests/fixtures/centos-7.7/ping-ip-O-D.json","tests/fixtures/centos-7.7/ping-ip-O.json","tests/fixtures/centos-7.7/ping-ip-dup.json","tests/fixtures/centos-7.7/ping6-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping6-hostname-O-p.json","tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","tests/fixtures/centos-7.7/ping6-ip-O-p.json","tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping-hostname-O-p.json","tests/fixtures/fedora32/ping-hostname-O.json","tests/fixtures/fedora32/ping-ip-O-D.json","tests/fixtures/fedora32/ping-ip-O.json","tests/fixtures/fedora32/ping6-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping6-hostname-O-D-p.json","tests/fixtures/fedora32/ping6-hostname-O-p.json","tests/fixtures/fedora32/ping6-ip-O-D-p.json","tests/fixtures/fedora32/ping6-ip-O-p.json","tests/fixtures/freebsd12/ping-hostname-p.json","tests/fixtures/freebsd12/ping-hostname-s.json","tests/fixtures/freebsd12/ping-hostname.json","tests/fixtures/freebsd12/ping-ip-p.json","tests/fixtures/freebsd12/ping-ip-s.json","tests/fixtures/freebsd12/ping-ip.json","tests/fixtures/freebsd12/ping6-hostname-p.json","tests/fixtures/freebsd12/ping6-hostname-s.json","tests/fixtures/freebsd12/ping6-hostname.json","tests/fixtures/freebsd12/ping6-ip-p.json","tests/fixtures/freebsd12/ping6-ip-s.json","tests/fixtures/freebsd12/ping6-ip.json","tests/fixtures/osx-10.14.6/ping-hostname-p.json","tests/fixtures/osx-10.14.6/ping-hostname-s.json","tests/fixtures/osx-10.14.6/ping-hostname.json","tests/fixtures/osx-10.14.6/ping-ip-dup.json","tests/fixtures/osx-10.14.6/ping-ip-p.json","tests/fixtures/osx-10.14.6/ping-ip-s.json","tests/fixtures/osx-10.14.6/ping-ip.json","tests/fixtures/osx-10.14.6/ping6-hostname-p.json","tests/fixtures/osx-10.14.6/ping6-hostname-s.json","tests/fixtures/osx-10.14.6/ping6-hostname.json","tests/fixtures/osx-10.14.6/ping6-ip-p.json","tests/fixtures/osx-10.14.6/ping6-ip-s.json","tests/fixtures/osx-10.14.6/ping6-ip.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping-hostname-O.json","tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","tests/fixtures/ubuntu-18.04/ping-ip-O.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ping-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-hostname-O.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-ip-O-D.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-ip-O.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-ip-dup.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping6-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-hostname-O.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-ip-O-D.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-ip-O.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-ip-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-ip-O-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-hostname-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-hostname-s.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-hostname.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-ip-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-ip-s.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-ip.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-hostname-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-hostname-s.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-hostname.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-ip-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-ip-s.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-ip.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-hostname-p.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-hostname-s.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-hostname.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-ip-dup.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-p.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-ip-s.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-ip.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-p.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-s.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-p.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-s.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-ip.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json","lines_changed":2}]},"message":"update fixtures for added 'duplicate' fields","epoch":1595369154,"epoch_utc":null},{"commit":"6830062256fbc453f87224f7ab8c10e4494b5a83","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 14:47:25 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 21 14:47:25 2020 -0700","stats":{"files_changed":4,"insertions":112,"deletions":24,"files":["docs/parsers/ping.md","jc/parsers/ping.py","tests/fixtures/centos-7.7/ping-ip-dup.out","tests/fixtures/osx-10.14.6/ping-ip-dup.out"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":6},{"name":"jc/parsers/ping.py","lines_changed":83},{"name":"tests/fixtures/centos-7.7/ping-ip-dup.out","lines_changed":27},{"name":"tests/fixtures/osx-10.14.6/ping-ip-dup.out","lines_changed":20}]},"message":"add support for duplicate replies","epoch":1595368045,"epoch_utc":null},{"commit":"323072c9827c41c5d74433504b5efceb846cfe09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 09:02:44 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jul 21 09:02:44 2020 -0700","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/ping.md","jc/parsers/ping.py"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":1},{"name":"jc/parsers/ping.py","lines_changed":1}]},"message":"add source_ip to schema doc","epoch":1595347364,"epoch_utc":null},{"commit":"8719d96bddec80187e7ba3286ba93bfec8465744","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 16:54:43 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 20 16:54:43 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"change description","epoch":1595289283,"epoch_utc":null},{"commit":"dd5d318ab5bbb1027dd600fd3b0b6ec9b8adfdc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 16:25:20 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 20 16:25:20 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":6}]},"message":"version bump and add ping command","epoch":1595287520,"epoch_utc":null},{"commit":"d6dc7f5e65c097895c19000e59e8803a3b350fdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 16:11:18 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 20 16:11:18 2020 -0700","stats":{"files_changed":13,"insertions":135,"deletions":29,"files":["tests/fixtures/osx-10.14.6/ping-hostname-p.json","tests/fixtures/osx-10.14.6/ping-hostname-s.json","tests/fixtures/osx-10.14.6/ping-hostname.json","tests/fixtures/osx-10.14.6/ping-ip-p.json","tests/fixtures/osx-10.14.6/ping-ip-s.json","tests/fixtures/osx-10.14.6/ping-ip.json","tests/fixtures/osx-10.14.6/ping6-hostname-p.json","tests/fixtures/osx-10.14.6/ping6-hostname-s.json","tests/fixtures/osx-10.14.6/ping6-hostname.json","tests/fixtures/osx-10.14.6/ping6-ip-p.json","tests/fixtures/osx-10.14.6/ping6-ip-s.json","tests/fixtures/osx-10.14.6/ping6-ip.json","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ping-hostname-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-hostname-s.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-hostname.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-s.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-s.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-s.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":152}]},"message":"add osx ping tests","epoch":1595286678,"epoch_utc":null},{"commit":"c203664eb5aafa0afa3101b79e3fd13b3e009ec5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 15:46:27 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 20 15:46:27 2020 -0700","stats":{"files_changed":13,"insertions":171,"deletions":9,"files":["tests/fixtures/freebsd12/ping-hostname-p.json","tests/fixtures/freebsd12/ping-hostname-s.json","tests/fixtures/freebsd12/ping-hostname.json","tests/fixtures/freebsd12/ping-ip-p.json","tests/fixtures/freebsd12/ping-ip-s.json","tests/fixtures/freebsd12/ping-ip.json","tests/fixtures/freebsd12/ping6-hostname-p.json","tests/fixtures/freebsd12/ping6-hostname-s.json","tests/fixtures/freebsd12/ping6-hostname.json","tests/fixtures/freebsd12/ping6-ip-p.json","tests/fixtures/freebsd12/ping6-ip-s.json","tests/fixtures/freebsd12/ping6-ip.json","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/ping-hostname-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-hostname-s.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-hostname.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-s.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-hostname-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-hostname-s.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-hostname.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-s.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":168}]},"message":"freebsd ping tests","epoch":1595285187,"epoch_utc":null},{"commit":"19ecf1fa19e9fa0873002baf07fa670b71ed7752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 14:35:41 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 20 14:35:41 2020 -0700","stats":{"files_changed":11,"insertions":118,"deletions":0,"files":["tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping-hostname-O-p.json","tests/fixtures/fedora32/ping-hostname-O.json","tests/fixtures/fedora32/ping-ip-O-D.json","tests/fixtures/fedora32/ping-ip-O.json",".../fixtures/fedora32/ping6-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping6-hostname-O-D-p.json","tests/fixtures/fedora32/ping6-hostname-O-p.json","tests/fixtures/fedora32/ping6-ip-O-D-p.json","tests/fixtures/fedora32/ping6-ip-O-p.json","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-hostname-O.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-ip-O-D.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-ip-O.json","lines_changed":1},{"name":".../fixtures/fedora32/ping6-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping6-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping6-ip-O-D-p.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping6-ip-O-p.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":108}]},"message":"add Fedora32 tests","epoch":1595280941,"epoch_utc":null},{"commit":"b8deb0426cc23333c0e0a9dc3776d9761d99abb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 13:51:39 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 20 13:51:39 2020 -0700","stats":{"files_changed":11,"insertions":119,"deletions":8,"files":[".../ubuntu-18.04/ping-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping-hostname-O.json","tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","tests/fixtures/ubuntu-18.04/ping-ip-O.json",".../ubuntu-18.04/ping6-hostname-O-D-p-s.json",".../ubuntu-18.04/ping6-hostname-O-D-p.json",".../fixtures/ubuntu-18.04/ping6-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json","tests/test_ping.py"],"file_stats":[{"name":".../ubuntu-18.04/ping-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-hostname-O-D-p-s.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-hostname-O-D-p.json","lines_changed":1},{"name":".../fixtures/ubuntu-18.04/ping6-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":117}]},"message":"add ubuntu ping tests","epoch":1595278299,"epoch_utc":null},{"commit":"3b8371f0208a097cb8a1c026348d3842e6702b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 12:49:05 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 20 12:49:05 2020 -0700","stats":{"files_changed":10,"insertions":202,"deletions":0,"files":[".../fixtures/centos-7.7/ping-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping-hostname-O-p.json","tests/fixtures/centos-7.7/ping-hostname-O.json","tests/fixtures/centos-7.7/ping-ip-O-D.json","tests/fixtures/centos-7.7/ping-ip-O.json",".../centos-7.7/ping6-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping6-hostname-O-p.json","tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","tests/fixtures/centos-7.7/ping6-ip-O-p.json","tests/test_ping.py"],"file_stats":[{"name":".../fixtures/centos-7.7/ping-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-hostname-O.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-ip-O-D.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-ip-O.json","lines_changed":1},{"name":".../centos-7.7/ping6-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-p.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":193}]},"message":"add centos ping tests","epoch":1595274545,"epoch_utc":null},{"commit":"20bb1cdf396abdb3707b34fa146cbe913f9bbd6f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 11:53:06 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 20 11:53:06 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":8}]},"message":"add TypeError to except for None values","epoch":1595271186,"epoch_utc":null},{"commit":"301daa48d0bfc28f97c8e46f028f8c6b875bf34e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 15:30:54 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 15:30:54 2020 -0700","stats":{"files_changed":2,"insertions":114,"deletions":16,"files":["docs/parsers/ping.md","jc/parsers/ping.py"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":128},{"name":"jc/parsers/ping.py","lines_changed":2}]},"message":"update documentation","epoch":1595197854,"epoch_utc":null},{"commit":"8421ec88033e02f472e4961d87551a0352663a16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 15:19:47 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 15:19:47 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":4}]},"message":"remove cygwin compatibility","epoch":1595197187,"epoch_utc":null},{"commit":"74211eb0129f6aa655a38ba4d4d8844d81441107","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 15:16:04 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 15:16:04 2020 -0700","stats":{"files_changed":1,"insertions":82,"deletions":5,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":87}]},"message":"add examples","epoch":1595196964,"epoch_utc":null},{"commit":"60bd42f298f309cbec6d24c9543ea3d51bd73b18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 15:13:52 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 15:13:52 2020 -0700","stats":{"files_changed":1,"insertions":59,"deletions":11,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":70}]},"message":"add process() logic","epoch":1595196832,"epoch_utc":null},{"commit":"14bdd74526e400997c5bc247ea35ed40799e83ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 14:46:02 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 14:46:02 2020 -0700","stats":{"files_changed":12,"insertions":100,"deletions":0,"files":["tests/fixtures/freebsd12/ping-hostname-p.out","tests/fixtures/freebsd12/ping-hostname-s.out","tests/fixtures/freebsd12/ping-hostname.out","tests/fixtures/freebsd12/ping-ip-p.out","tests/fixtures/freebsd12/ping-ip-s.out","tests/fixtures/freebsd12/ping-ip.out","tests/fixtures/freebsd12/ping6-hostname-p.out","tests/fixtures/freebsd12/ping6-hostname-s.out","tests/fixtures/freebsd12/ping6-hostname.out","tests/fixtures/freebsd12/ping6-ip-p.out","tests/fixtures/freebsd12/ping6-ip-s.out","tests/fixtures/freebsd12/ping6-ip.out"],"file_stats":[{"name":"tests/fixtures/freebsd12/ping-hostname-p.out","lines_changed":9},{"name":"tests/fixtures/freebsd12/ping-hostname-s.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping-hostname.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping-ip-p.out","lines_changed":9},{"name":"tests/fixtures/freebsd12/ping-ip-s.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping-ip.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping6-hostname-p.out","lines_changed":9},{"name":"tests/fixtures/freebsd12/ping6-hostname-s.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping6-hostname.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping6-ip-p.out","lines_changed":9},{"name":"tests/fixtures/freebsd12/ping6-ip-s.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping6-ip.out","lines_changed":8}]},"message":"add ping test fixtures","epoch":1595195162,"epoch_utc":null},{"commit":"fb0f3eda04a4b1dbb81da7d5791cbfe746bfd617","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 14:45:50 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 14:45:50 2020 -0700","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["tests/fixtures/create_fixtures.sh"],"file_stats":[{"name":"tests/fixtures/create_fixtures.sh","lines_changed":16}]},"message":"add ping commands","epoch":1595195150,"epoch_utc":null},{"commit":"91ee6e6701307363336a39f9e16641465ddd05c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 14:18:56 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 14:18:56 2020 -0700","stats":{"files_changed":12,"insertions":100,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ping-hostname-p.out","tests/fixtures/osx-10.14.6/ping-hostname-s.out","tests/fixtures/osx-10.14.6/ping-hostname.out","tests/fixtures/osx-10.14.6/ping-ip-p.out","tests/fixtures/osx-10.14.6/ping-ip-s.out","tests/fixtures/osx-10.14.6/ping-ip.out","tests/fixtures/osx-10.14.6/ping6-hostname-p.out","tests/fixtures/osx-10.14.6/ping6-hostname-s.out","tests/fixtures/osx-10.14.6/ping6-hostname.out","tests/fixtures/osx-10.14.6/ping6-ip-p.out","tests/fixtures/osx-10.14.6/ping6-ip-s.out","tests/fixtures/osx-10.14.6/ping6-ip.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ping-hostname-p.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/ping-hostname-s.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping-hostname.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping-ip-p.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/ping-ip-s.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping-ip.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-p.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-s.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-p.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-s.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping6-ip.out","lines_changed":8}]},"message":"add osx ping test fixtures","epoch":1595193536,"epoch_utc":null},{"commit":"51f4e6927c68a7e2a26954f564d10d316b98a984","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 14:18:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 14:18:40 2020 -0700","stats":{"files_changed":1,"insertions":12,"deletions":3,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":15}]},"message":"add support for pattern in osx/bsd","epoch":1595193520,"epoch_utc":null},{"commit":"94988d86674293faddc6f7e7c82575738d2dc791","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 13:50:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 13:50:40 2020 -0700","stats":{"files_changed":10,"insertions":257,"deletions":0,"files":["tests/fixtures/fedora32/ping-hostname-O-D-p-s.out","tests/fixtures/fedora32/ping-hostname-O-p.out","tests/fixtures/fedora32/ping-hostname-O.out","tests/fixtures/fedora32/ping-ip-O-D.out","tests/fixtures/fedora32/ping-ip-O.out","tests/fixtures/fedora32/ping6-hostname-O-D-p-s.out","tests/fixtures/fedora32/ping6-hostname-O-D-p.out","tests/fixtures/fedora32/ping6-hostname-O-p.out","tests/fixtures/fedora32/ping6-ip-O-D-p.out","tests/fixtures/fedora32/ping6-ip-O-p.out"],"file_stats":[{"name":"tests/fixtures/fedora32/ping-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping-hostname-O.out","lines_changed":25},{"name":"tests/fixtures/fedora32/ping-ip-O-D.out","lines_changed":25},{"name":"tests/fixtures/fedora32/ping-ip-O.out","lines_changed":25},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping6-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping6-ip-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping6-ip-O-p.out","lines_changed":26}]},"message":"add fedora ping fixtures","epoch":1595191840,"epoch_utc":null},{"commit":"fe36f5a98cd3ee7753e250b6553e4453d971f929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 12:56:53 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 12:56:53 2020 -0700","stats":{"files_changed":13,"insertions":318,"deletions":0,"files":["tests/fixtures/centos-7.7/ping-ip-O-D.out","tests/fixtures/centos-7.7/ping-ip-O.out","tests/fixtures/create_fixtures.sh",".../ubuntu-18.04/ping-hostname-O-D-p-s.out","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.out","tests/fixtures/ubuntu-18.04/ping-hostname-O.out","tests/fixtures/ubuntu-18.04/ping-ip-O-D.out","tests/fixtures/ubuntu-18.04/ping-ip-O.out",".../ubuntu-18.04/ping6-hostname-O-D-p-s.out",".../fixtures/ubuntu-18.04/ping6-hostname-O-D-p.out","tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.out","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.out","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ping-ip-O-D.out","lines_changed":25},{"name":"tests/fixtures/centos-7.7/ping-ip-O.out","lines_changed":25},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":12},{"name":".../ubuntu-18.04/ping-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O.out","lines_changed":25},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O-D.out","lines_changed":25},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O.out","lines_changed":25},{"name":".../ubuntu-18.04/ping6-hostname-O-D-p-s.out","lines_changed":26},{"name":".../fixtures/ubuntu-18.04/ping6-hostname-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-p.out","lines_changed":25}]},"message":"add fixtures for ping","epoch":1595188613,"epoch_utc":null},{"commit":"f9eb18b9271b2428dd82f2dc26d3fa0435dad81d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 12:56:34 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jul 19 12:56:34 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":17}]},"message":"change 'request_timeout' field to 'type', fix compatibility, other formatting fixes","epoch":1595188594,"epoch_utc":null},{"commit":"cc60f3674822c644933f286a0364b09d7e2a60b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jul 18 12:35:46 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Jul 18 12:35:46 2020 -0700","stats":{"files_changed":3,"insertions":67,"deletions":1,"files":["docgen.sh","docs/parsers/ping.md","jc/cli.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ping.md","lines_changed":64},{"name":"jc/cli.py","lines_changed":3}]},"message":"add ping parser","epoch":1595100946,"epoch_utc":null},{"commit":"604ade791f7bd33b37f64916befba27a2ea08b5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 17 15:57:07 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 17 15:57:07 2020 -0700","stats":{"files_changed":8,"insertions":506,"deletions":0,"files":["jc/parsers/ping.py",".../fixtures/centos-7.7/ping-hostname-O-D-p-s.out","tests/fixtures/centos-7.7/ping-hostname-O-p.out","tests/fixtures/centos-7.7/ping-hostname-O.out",".../fixtures/centos-7.7/ping6-hostname-O-D-p-s.out","tests/fixtures/centos-7.7/ping6-hostname-O-p.out","tests/fixtures/centos-7.7/ping6-ip-O-D-p.out","tests/fixtures/centos-7.7/ping6-ip-O-p.out"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":325},{"name":".../fixtures/centos-7.7/ping-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping-hostname-O.out","lines_changed":25},{"name":".../fixtures/centos-7.7/ping6-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping6-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-p.out","lines_changed":26}]},"message":"add ping parser","epoch":1595026627,"epoch_utc":null},{"commit":"690ac52a917200e46eac2feafc9f504f2734301c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 13 07:18:48 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 13 07:18:48 2020 -0700","stats":{"files_changed":1,"insertions":261,"deletions":0,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":261}]},"message":"add man page","epoch":1594649928,"epoch_utc":null},{"commit":"34ed772775f1f02ed148f24a3bfff532bc811607","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jul 11 09:46:47 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Jul 11 09:46:47 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1594486007,"epoch_utc":null},{"commit":"d5ab95571f64f55d8194e9e5592ac538bb535229","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jul 11 09:44:08 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Jul 11 09:44:08 2020 -0700","stats":{"files_changed":1,"insertions":26,"deletions":11,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":37}]},"message":"fix tests when using older versions of pygments","epoch":1594485848,"epoch_utc":null},{"commit":"ffb3a0ee5fb30a3f61d6cbedf877ab04acdbf624","merge":"fde0bc8 94b12b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 16:34:56 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Jul 10 16:34:56 2020 -0700","message":"Merge pull request #73 from kellyjonbrazil/dev\n\nDev v1.12.0","epoch":1594424096,"epoch_utc":null},{"commit":"94b12b57aaa56170d1f31f4910fd1239f88de137","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 16:30:08 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 16:30:08 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"spelling","epoch":1594423808,"epoch_utc":null},{"commit":"6d149e84571d5d6dd1d8a1f219ba299de5173779","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 16:25:03 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 16:25:03 2020 -0700","stats":{"files_changed":2,"insertions":8,"deletions":1,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":7},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1594423503,"epoch_utc":null},{"commit":"1ad89c90d890039b817f65b2635db1b5e849a9e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 15:58:02 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 15:58:02 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add pacman","epoch":1594421882,"epoch_utc":null},{"commit":"fb71c7b020bc1eda9484595f30b0200a4f59aa45","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 15:49:35 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 15:49:35 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":2}]},"message":"function name spelling","epoch":1594421375,"epoch_utc":null},{"commit":"28ed17ad3bce866e5dc0179ef5de43380ac6ace1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 15:45:21 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 15:45:21 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":1}]},"message":"add parser_count test to test_cli_about_jc","epoch":1594421121,"epoch_utc":null},{"commit":"0c2a4e2bf71dca50d4a9bb27ca99944909c022ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 15:35:05 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 15:35:05 2020 -0700","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":37}]},"message":"add cli tests","epoch":1594420505,"epoch_utc":null},{"commit":"62bec30de2f1a303f2ec411d89f7f9f9c6d1abaf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 14:44:50 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 14:44:50 2020 -0700","stats":{"files_changed":1,"insertions":20,"deletions":0,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":20}]},"message":"add json_out tests","epoch":1594417490,"epoch_utc":null},{"commit":"3fced77e4e258dbf7db94a313e599c830a597b49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 12:23:48 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 12:23:48 2020 -0700","stats":{"files_changed":1,"insertions":98,"deletions":1,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":99}]},"message":"add set_env_colors tests","epoch":1594409028,"epoch_utc":null},{"commit":"a09d1d8b7687912610598c88d172733d5e29b1ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 12:23:25 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 12:23:25 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":13}]},"message":"move environment variable assignment to main() to simplify tests","epoch":1594409005,"epoch_utc":null},{"commit":"8f4243fbd8d70ca9fd019e984c564e37c81e07db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 10:54:34 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 10:54:34 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"formatting","epoch":1594403674,"epoch_utc":null},{"commit":"47aaf20549ea238443427e69d5841d6996b7afab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 10:50:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 10:50:51 2020 -0700","stats":{"files_changed":1,"insertions":17,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":17}]},"message":"add sysctl command parser","epoch":1594403451,"epoch_utc":null},{"commit":"0c5289ea50e4d3d35e80147b4cad32434c19a2a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 10:47:23 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 10:47:23 2020 -0700","stats":{"files_changed":3,"insertions":72,"deletions":2,"files":["tests/fixtures/freebsd12/sysctl-a.json","tests/fixtures/osx-10.14.6/sysctl-a.json","tests/test_sysctl.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/sysctl-a.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/sysctl-a.json","lines_changed":2},{"name":"tests/test_sysctl.py","lines_changed":70}]},"message":"add sysctl tests","epoch":1594403243,"epoch_utc":null},{"commit":"3e53323514906fb84abfaeed0c2ee1fd9090ad8d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 09:58:56 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 09:58:56 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":2}]},"message":"don't filter out empty lines","epoch":1594400336,"epoch_utc":null},{"commit":"a5ee9861b9b9b479aee59ea5b1d75f20d7c3c8e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 09:28:32 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 09:28:32 2020 -0700","stats":{"files_changed":3,"insertions":3785,"deletions":1,"files":["tests/fixtures/freebsd12/sysctl-a.json","tests/fixtures/freebsd12/sysctl-a.out","tests/fixtures/osx-10.14.6/sysctl-a.json"],"file_stats":[{"name":"tests/fixtures/freebsd12/sysctl-a.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/sysctl-a.out","lines_changed":3783},{"name":"tests/fixtures/osx-10.14.6/sysctl-a.json","lines_changed":2}]},"message":"update fixtures","epoch":1594398512,"epoch_utc":null},{"commit":"feb8ca76545cba4fd0927273ddf90a77df994006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 09:28:20 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 09:28:20 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/sysctl.md"],"file_stats":[{"name":"docs/parsers/sysctl.md","lines_changed":2}]},"message":"spelling","epoch":1594398500,"epoch_utc":null},{"commit":"a7abe4473b90c512466db9ae98cfac585689fe2a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 09:03:04 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 09:03:04 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":2}]},"message":"spelling","epoch":1594396984,"epoch_utc":null},{"commit":"780b9b61dec3e142e46c9a82146d2af4e1144123","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 08:30:31 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 08:30:31 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":6}]},"message":"specify IndexError exception in try/except block","epoch":1594395031,"epoch_utc":null},{"commit":"19ace36ffa659bedf0ba2e43572c9e253592b2e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 08:21:30 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 08:21:30 2020 -0700","stats":{"files_changed":4,"insertions":2167,"deletions":0,"files":["tests/fixtures/osx-10.14.6/sysctl-a.json","tests/fixtures/osx-10.14.6/sysctl-a.out","tests/fixtures/ubuntu-18.04/sysctl-a.json","tests/fixtures/ubuntu-18.04/sysctl-a.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/sysctl-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/sysctl-a.out","lines_changed":1287},{"name":"tests/fixtures/ubuntu-18.04/sysctl-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/sysctl-a.out","lines_changed":878}]},"message":"add fixtures","epoch":1594394490,"epoch_utc":null},{"commit":"5fff8afc9f47f8cc6db8ed3613b90b5cdc683b43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 08:21:15 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jul 10 08:21:15 2020 -0700","stats":{"files_changed":1,"insertions":33,"deletions":11,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":44}]},"message":"add fixes for freebsd where values can be on separate lines under the key","epoch":1594394475,"epoch_utc":null},{"commit":"4ad230c9279c5eb6c8ed6baf7254b8e9328e5af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 16:35:36 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 9 16:35:36 2020 -0700","stats":{"files_changed":4,"insertions":929,"deletions":14,"files":["docs/parsers/sysctl.md","jc/parsers/sysctl.py","tests/fixtures/centos-7.7/sysctl-a.json","tests/fixtures/centos-7.7/sysctl-a.out"],"file_stats":[{"name":"docs/parsers/sysctl.md","lines_changed":12},{"name":"jc/parsers/sysctl.py","lines_changed":12},{"name":"tests/fixtures/centos-7.7/sysctl-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sysctl-a.out","lines_changed":918}]},"message":"doc update and add test fixtures","epoch":1594337736,"epoch_utc":null},{"commit":"dd98eb1ec8f451eb87a5094e76a7f758dee3fc69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 16:25:41 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 9 16:25:41 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":7,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":11}]},"message":"append duplicate key values to original key instead of adding unique keys","epoch":1594337141,"epoch_utc":null},{"commit":"c6baf42e72b4f41ed511e7db943297d03a39c0d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 16:18:33 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 9 16:18:33 2020 -0700","stats":{"files_changed":3,"insertions":94,"deletions":7,"files":["docgen.sh","docs/parsers/sysctl.md","jc/parsers/sysctl.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/sysctl.md","lines_changed":86},{"name":"jc/parsers/sysctl.py","lines_changed":14}]},"message":"doc updates","epoch":1594336713,"epoch_utc":null},{"commit":"e2bac97d563e5ef771ccd8ed1e5c42cbf588b120","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 14:51:15 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 9 14:51:15 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":12}]},"message":"fix for multiple identical keys in sysctl output","epoch":1594331475,"epoch_utc":null},{"commit":"d112ee94d0ec534828c8508d0fb833b768975990","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 14:26:35 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 9 14:26:35 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":4,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":12}]},"message":"use try/except and add support for floats in process()","epoch":1594329995,"epoch_utc":null},{"commit":"27b21b2fafab912f21b88b66c7f817cbce155765","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 11:11:29 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 9 11:11:29 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":7,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":15}]},"message":"formatting and docstring updates","epoch":1594318289,"epoch_utc":null},{"commit":"8c96d5cd20448a4f7f9736c4d489d6ecc3068ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 10:59:36 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 9 10:59:36 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["requirements.txt"],"file_stats":[{"name":"requirements.txt","lines_changed":2}]},"message":"reduce pygments version requirement","epoch":1594317576,"epoch_utc":null},{"commit":"c29ed3fd695f725005333db5e6e2cd844bb4ca14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 10:54:49 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 9 10:54:49 2020 -0700","stats":{"files_changed":1,"insertions":14,"deletions":13,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":27}]},"message":"formatting of quotation marks and docstrings","epoch":1594317289,"epoch_utc":null},{"commit":"cedf603f121636bdfa95432059c3c275c3ea3e9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 09:59:00 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 9 09:59:00 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]},"message":"minor formatting","epoch":1594313940,"epoch_utc":null},{"commit":"279161c36f288c27a9789054ae372fe8ceb58a94","merge":"bc7116c ce0b43d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 09:48:58 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Jul 9 09:48:58 2020 -0700","message":"Merge pull request #72 from duelafn/pygments-2.3\n\nSupport older pygments","epoch":1594313338,"epoch_utc":null},{"commit":"ce0b43d919f07d96d1b94e9d14d03e935e80011d","author":"Dean Serenevy","author_email":"dean@serenevy.net","date":"Thu Jul 9 12:44:41 2020 -0400","commit_by":"Dean Serenevy","commit_by_email":"dean@serenevy.net","commit_by_date":"Thu Jul 9 12:44:41 2020 -0400","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"Remove dependency on 3rd party packaging library","epoch":1594323881,"epoch_utc":null},{"commit":"ddafa5bf06066bab8e9587be902d6752fcf51605","author":"Dean Serenevy","author_email":"dean@serenevy.net","date":"Thu Jul 9 11:27:01 2020 -0400","commit_by":"Dean Serenevy","commit_by_email":"dean@serenevy.net","commit_by_date":"Thu Jul 9 11:39:34 2020 -0400","stats":{"files_changed":2,"insertions":47,"deletions":7,"files":["jc/cli.py","setup.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":52},{"name":"setup.py","lines_changed":2}]},"message":"Support older pygments","epoch":1594319221,"epoch_utc":null},{"commit":"bc7116c31bacf3159aef775fd0e615187420b010","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 08:30:10 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jul 9 08:30:10 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":8,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":15}]},"message":"fix JC_COLORS env bug and simplify set_env_colors()","epoch":1594308610,"epoch_utc":null},{"commit":"53b709272115e769dac905296fa3b000c1cdd66a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 8 16:40:28 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 8 16:40:28 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":11,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":22}]},"message":"remove side-effects from functions and print in main()","epoch":1594251628,"epoch_utc":null},{"commit":"beb9174b1b35937ae1fb99778369ae643a8f1005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 8 15:42:06 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 8 15:42:06 2020 -0700","stats":{"files_changed":1,"insertions":123,"deletions":0,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":123}]},"message":"add sysctl parser","epoch":1594248126,"epoch_utc":null},{"commit":"aea41ed341c8d53cc07c35e8044e8f816ddd2fed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 8 15:41:46 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 8 15:41:46 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":11}]},"message":"move verbose_debug enable earlier in code to catch more issues. add sysctl and version bump","epoch":1594248106,"epoch_utc":null},{"commit":"d789494cb1f691aa352419aaefc692f654477177","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 8 05:59:19 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 8 05:59:19 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/tracebackplus.py"],"file_stats":[{"name":"jc/tracebackplus.py","lines_changed":2}]},"message":"change type check to use isinstance","epoch":1594213159,"epoch_utc":null},{"commit":"608e7b4cff081f92177e4151ffa1a91a4a6895ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 6 10:52:12 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 6 10:52:12 2020 -0700","stats":{"files_changed":1,"insertions":61,"deletions":0,"files":["jc/tracebackplus.py"],"file_stats":[{"name":"jc/tracebackplus.py","lines_changed":61}]},"message":"add license info","epoch":1594057932,"epoch_utc":null},{"commit":"4ee199c02a78c2707c5d1427d7c8fae56df5671c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 6 10:41:01 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jul 6 10:41:01 2020 -0700","stats":{"files_changed":2,"insertions":189,"deletions":3,"files":["jc/cli.py","jc/tracebackplus.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6},{"name":"jc/tracebackplus.py","lines_changed":186}]},"message":"use tracebackplus instead of cgitb since cgitb is depricated","epoch":1594057261,"epoch_utc":null},{"commit":"fbf47d408501dadda4671fb530f5e11859e85d53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 1 13:28:58 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 1 13:28:58 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add arch linux","epoch":1593635338,"epoch_utc":null},{"commit":"5a238e4b4204f0552327534ef798c28d3ad4f578","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 1 09:11:32 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jul 1 09:11:32 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"remove updates-testing from fedora command","epoch":1593619892,"epoch_utc":null},{"commit":"f852b8246a8f9e5f7d9144fed3a0daa4eddfe035","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 11:50:37 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jun 30 11:50:37 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":3}]},"message":"wrap warning message","epoch":1593543037,"epoch_utc":null},{"commit":"88140d929a500ee78f807862c4912c399df2a460","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 11:37:33 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jun 30 11:37:33 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"wrap error message in code","epoch":1593542253,"epoch_utc":null},{"commit":"45f726824027af49c437b6e81e4700f7098af320","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 11:34:08 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jun 30 11:34:08 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add -dd to error message","epoch":1593542048,"epoch_utc":null},{"commit":"3a3c8e4d4a77135eaee5cb30c3107a4531c300ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 11:31:08 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jun 30 11:31:08 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]},"message":"move verbose_debug under debug check","epoch":1593541868,"epoch_utc":null},{"commit":"c1ac183a0472e93226c9ee1905f56c5183e3721f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 11:26:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jun 30 11:26:09 2020 -0700","stats":{"files_changed":1,"insertions":15,"deletions":22,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":37}]},"message":"simplify debug option","epoch":1593541569,"epoch_utc":null},{"commit":"18bb779ee5cd5821764b03173f16e922f753c64d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 09:39:05 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jun 30 09:39:05 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"formatting: double quotes to single quotes","epoch":1593535145,"epoch_utc":null},{"commit":"8b6612fe7911ab9e0bf8d29be60865d3b8aa3fd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 07:56:34 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jun 30 07:56:34 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"move JC_COLORS parsing error message","epoch":1593528994,"epoch_utc":null},{"commit":"fde0bc853415418e01616861ace5048770bd97f8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jun 27 18:53:19 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Jun 27 18:53:19 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":34,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":43}]},"message":"improve package install info","epoch":1593309199,"epoch_utc":null},{"commit":"e661a78939ff067b8a61f08301c178dd10a344ab","merge":"b969751 847e346","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jun 27 18:43:02 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sat Jun 27 18:43:02 2020 -0700","message":"Merge pull request #71 from wigust/guix\n\nadd guix package info","epoch":1593308582,"epoch_utc":null},{"commit":"847e346602789bf58e3515319e9d080dfb897fc9","author":"Oleg Pykhalov","author_email":"go.wigust@gmail.com","date":"Sat Jun 27 12:58:59 2020 +0300","commit_by":"Oleg Pykhalov","commit_by_email":"go.wigust@gmail.com","commit_by_date":"Sat Jun 27 13:01:56 2020 +0300","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"add guix package info","epoch":1593287939,"epoch_utc":null},{"commit":"b9697516887c61f08d8d7b1dc9130350e5bdba9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 26 09:53:57 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jun 26 09:53:57 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"add other references","epoch":1593190437,"epoch_utc":null},{"commit":"ad6f2ba03a293a7f55e456fa5f5b55ee3cbcd4ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 21:16:52 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 25 21:16:52 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1593145012,"epoch_utc":null},{"commit":"63c6a5edc0e9001b143595fd8b96f1b4a1377a3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 21:12:30 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 25 21:12:30 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"formatting","epoch":1593144750,"epoch_utc":null},{"commit":"9f4cf9dd5efe94adfff0961fdb73097ca27c5463","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 21:11:21 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 25 21:11:21 2020 -0700","stats":{"files_changed":1,"insertions":197,"deletions":67,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":264}]},"message":"formatting","epoch":1593144681,"epoch_utc":null},{"commit":"51331b6dc01eee00847fa4be549ffde365373a01","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 13:01:10 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 25 13:01:10 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":5}]},"message":"formatting","epoch":1593115270,"epoch_utc":null},{"commit":"efb6761033319644bf9cdae6288ff5609f6482ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 12:59:56 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 25 12:59:56 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1593115196,"epoch_utc":null},{"commit":"6a4f737a0f1c322bebccf69809d9816fc770c5ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 12:56:06 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 25 12:56:06 2020 -0700","stats":{"files_changed":1,"insertions":88,"deletions":115,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":203}]},"message":"update json syntax highlighting","epoch":1593114966,"epoch_utc":null},{"commit":"be6864b778ab721bcba5fc3221576153be7b2ed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 12:28:23 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 25 12:28:23 2020 -0700","stats":{"files_changed":1,"insertions":26,"deletions":26,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":52}]},"message":"add syntax highlighting tags","epoch":1593113303,"epoch_utc":null},{"commit":"de3b91a36cfcaf565b26b1da42f1e87835da4dc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 07:38:39 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 25 07:38:39 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add -dd option","epoch":1593095919,"epoch_utc":null},{"commit":"ef5482c3b5afa0ee8e85851bebab1c104cb59936","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 07:29:28 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 25 07:29:28 2020 -0700","stats":{"files_changed":3,"insertions":15,"deletions":7,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":17},{"name":"setup.py","lines_changed":2}]},"message":"add verbose debug option","epoch":1593095368,"epoch_utc":null},{"commit":"d20b795137036f8b889eb231cb4f14b756ec6479","merge":"69018cd 8a13406","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 11:28:23 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Jun 22 11:28:23 2020 -0700","message":"Merge pull request #70 from kellyjonbrazil/dev\n\nDev v1.11.7","epoch":1592850503,"epoch_utc":null},{"commit":"8a134065dff429551449c1ea16a36d745fdab580","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 11:23:37 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jun 22 11:23:37 2020 -0700","stats":{"files_changed":12,"insertions":12,"deletions":12,"files":["tests/fixtures/centos-7.7/iptables-filter-line-numbers.json","tests/fixtures/centos-7.7/iptables-filter-nv.json","tests/fixtures/centos-7.7/iptables-filter.json","tests/fixtures/centos-7.7/iptables-mangle.json","tests/fixtures/centos-7.7/iptables-nat.json","tests/fixtures/centos-7.7/iptables-raw.json","tests/fixtures/ubuntu-18.04/iptables-filter-line-numbers.json","tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","tests/fixtures/ubuntu-18.04/iptables-filter.json","tests/fixtures/ubuntu-18.04/iptables-mangle.json","tests/fixtures/ubuntu-18.04/iptables-nat.json","tests/fixtures/ubuntu-18.04/iptables-raw.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/iptables-filter-line-numbers.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-filter-nv.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-filter.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-mangle.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-nat.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-raw.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter-line-numbers.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-mangle.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-nat.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-raw.json","lines_changed":2}]},"message":"update fixtures for last chain fix","epoch":1592850217,"epoch_utc":null},{"commit":"22aee1bfa40ed1d3c4df28cd934ef0edfc5c458c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 11:23:15 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jun 22 11:23:15 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1592850195,"epoch_utc":null},{"commit":"b282820fd67dcc96c058198f97b066e7b402d1f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 11:09:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jun 22 11:09:09 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":3}]},"message":"fix to include the final chain in output","epoch":1592849349,"epoch_utc":null},{"commit":"3ee098306daf903687cb0febf92773a81e216111","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 10:48:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jun 22 10:48:51 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":2}]},"message":"version bump","epoch":1592848131,"epoch_utc":null},{"commit":"09e8f379a64b3b37bb99b4291c10aa4a5cdedea4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 10:47:34 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jun 22 10:47:34 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":11,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":20}]},"message":"iptables code optimizations","epoch":1592848054,"epoch_utc":null},{"commit":"69018cdb3a77fcdcb5648e3b89933148c55a6412","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 14 17:39:14 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jun 14 17:39:14 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"fix date","epoch":1592181554,"epoch_utc":null},{"commit":"d0d7254c6acc7be4341618d231a5b166f640b287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 14 17:23:10 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jun 14 17:23:10 2020 -0700","stats":{"files_changed":2,"insertions":26,"deletions":0,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":15},{"name":"jc/utils.py","lines_changed":11}]},"message":"add docstring","epoch":1592180590,"epoch_utc":null},{"commit":"cc0f0971d76b6f3dec8d989e83f5676db8f2c6d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 14 17:17:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jun 14 17:17:40 2020 -0700","stats":{"files_changed":56,"insertions":476,"deletions":439,"files":["changelog.txt","jc/cli.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/utils.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":10},{"name":"jc/parsers/airport_s.py","lines_changed":4},{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/blkid.py","lines_changed":5},{"name":"jc/parsers/crontab.py","lines_changed":5},{"name":"jc/parsers/crontab_u.py","lines_changed":5},{"name":"jc/parsers/csv.py","lines_changed":5},{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":193},{"name":"jc/parsers/dmidecode.py","lines_changed":264},{"name":"jc/parsers/du.py","lines_changed":8},{"name":"jc/parsers/env.py","lines_changed":8},{"name":"jc/parsers/file.py","lines_changed":39},{"name":"jc/parsers/foo.py","lines_changed":8},{"name":"jc/parsers/free.py","lines_changed":5},{"name":"jc/parsers/fstab.py","lines_changed":5},{"name":"jc/parsers/group.py","lines_changed":5},{"name":"jc/parsers/gshadow.py","lines_changed":5},{"name":"jc/parsers/history.py","lines_changed":26},{"name":"jc/parsers/hosts.py","lines_changed":8},{"name":"jc/parsers/id.py","lines_changed":8},{"name":"jc/parsers/ifconfig.py","lines_changed":18},{"name":"jc/parsers/ini.py","lines_changed":5},{"name":"jc/parsers/iptables.py","lines_changed":44},{"name":"jc/parsers/jobs.py","lines_changed":8},{"name":"jc/parsers/last.py","lines_changed":8},{"name":"jc/parsers/ls.py","lines_changed":5},{"name":"jc/parsers/lsblk.py","lines_changed":8},{"name":"jc/parsers/lsmod.py","lines_changed":5},{"name":"jc/parsers/lsof.py","lines_changed":9},{"name":"jc/parsers/mount.py","lines_changed":9},{"name":"jc/parsers/netstat.py","lines_changed":8},{"name":"jc/parsers/ntpq.py","lines_changed":5},{"name":"jc/parsers/passwd.py","lines_changed":8},{"name":"jc/parsers/pip_list.py","lines_changed":9},{"name":"jc/parsers/pip_show.py","lines_changed":9},{"name":"jc/parsers/ps.py","lines_changed":6},{"name":"jc/parsers/route.py","lines_changed":6},{"name":"jc/parsers/shadow.py","lines_changed":8},{"name":"jc/parsers/ss.py","lines_changed":8},{"name":"jc/parsers/stat.py","lines_changed":7},{"name":"jc/parsers/systemctl.py","lines_changed":8},{"name":"jc/parsers/systemctl_lj.py","lines_changed":8},{"name":"jc/parsers/systemctl_ls.py","lines_changed":8},{"name":"jc/parsers/systemctl_luf.py","lines_changed":8},{"name":"jc/parsers/timedatectl.py","lines_changed":14},{"name":"jc/parsers/uname.py","lines_changed":6},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/w.py","lines_changed":5},{"name":"jc/parsers/who.py","lines_changed":8},{"name":"jc/parsers/xml.py","lines_changed":5},{"name":"jc/parsers/yaml.py","lines_changed":11},{"name":"jc/utils.py","lines_changed":4},{"name":"setup.py","lines_changed":2}]},"message":"Improve and standardize empty data check for all parsers","epoch":1592180260,"epoch_utc":null},{"commit":"2af61730f0f5b9bc6f1f4c5d9d808ff6ccb0faeb","merge":"07b179c 83f41b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 12 12:34:34 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Jun 12 12:34:34 2020 -0700","message":"Merge pull request #68 from kellyjonbrazil/dev\n\nDev v1.11.5","epoch":1591990474,"epoch_utc":null},{"commit":"83f41b83dc01c462c6a2295e9fc56ad42a3b62f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 12 12:30:19 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jun 12 12:30:19 2020 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1591990219,"epoch_utc":null},{"commit":"1fb84fce88e0306c26a5771fa4c6dc14a21409a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 12 12:25:07 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jun 12 12:25:07 2020 -0700","stats":{"files_changed":16,"insertions":137,"deletions":67,"files":["changelog.txt","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/xml.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py","tests/test_timedatectl.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py","tests/test_who.py","tests/test_xml.py","tests/test_yaml.py"],"file_stats":[{"name":"changelog.txt","lines_changed":5},{"name":"jc/parsers/systemctl_lj.py","lines_changed":3},{"name":"jc/parsers/systemctl_ls.py","lines_changed":33},{"name":"jc/parsers/systemctl_luf.py","lines_changed":35},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/w.py","lines_changed":63},{"name":"jc/parsers/xml.py","lines_changed":6},{"name":"tests/test_systemctl_ls.py","lines_changed":6},{"name":"tests/test_systemctl_luf.py","lines_changed":6},{"name":"tests/test_timedatectl.py","lines_changed":6},{"name":"tests/test_uname.py","lines_changed":6},{"name":"tests/test_uptime.py","lines_changed":6},{"name":"tests/test_w.py","lines_changed":6},{"name":"tests/test_who.py","lines_changed":6},{"name":"tests/test_xml.py","lines_changed":6},{"name":"tests/test_yaml.py","lines_changed":6}]},"message":"fix for no data","epoch":1591989907,"epoch_utc":null},{"commit":"a8837e12447c52dbe438b19c07777b9b4a22081c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 12 07:57:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Jun 12 07:57:40 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"remove --upgrade from pip install","epoch":1591973860,"epoch_utc":null},{"commit":"04d2eec5581998d1a80e762b670af76c92111065","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 11 17:59:06 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 11 17:59:06 2020 -0700","stats":{"files_changed":6,"insertions":56,"deletions":30,"files":["changelog.txt","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","tests/test_stat.py","tests/test_systemctl.py","tests/test_systemctl_lj.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":33},{"name":"jc/parsers/systemctl_lj.py","lines_changed":33},{"name":"tests/test_stat.py","lines_changed":6},{"name":"tests/test_systemctl.py","lines_changed":6},{"name":"tests/test_systemctl_lj.py","lines_changed":6}]},"message":"fix for no data","epoch":1591923546,"epoch_utc":null},{"commit":"1b57ec92f052ddc8959540511512190a539262b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 11 17:52:03 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 11 17:52:03 2020 -0700","stats":{"files_changed":21,"insertions":152,"deletions":68,"files":["changelog.txt","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/pip_list.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","tests/fixtures/centos-7.7/ss-sudo-a.json","tests/fixtures/ubuntu-18.04/ss-sudo-a.json","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_ntpq.py","tests/test_passwd.py","tests/test_pip_list.py","tests/test_pip_show.py","tests/test_ps.py","tests/test_route.py","tests/test_shadow.py","tests/test_ss.py"],"file_stats":[{"name":"changelog.txt","lines_changed":8},{"name":"jc/parsers/mount.py","lines_changed":3},{"name":"jc/parsers/netstat.py","lines_changed":41},{"name":"jc/parsers/ntpq.py","lines_changed":35},{"name":"jc/parsers/pip_list.py","lines_changed":31},{"name":"jc/parsers/ps.py","lines_changed":9},{"name":"jc/parsers/route.py","lines_changed":9},{"name":"jc/parsers/ss.py","lines_changed":14},{"name":"tests/fixtures/centos-7.7/ss-sudo-a.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ss-sudo-a.json","lines_changed":2},{"name":"tests/test_lsof.py","lines_changed":6},{"name":"tests/test_mount.py","lines_changed":6},{"name":"tests/test_netstat.py","lines_changed":6},{"name":"tests/test_ntpq.py","lines_changed":6},{"name":"tests/test_passwd.py","lines_changed":6},{"name":"tests/test_pip_list.py","lines_changed":6},{"name":"tests/test_pip_show.py","lines_changed":6},{"name":"tests/test_ps.py","lines_changed":6},{"name":"tests/test_route.py","lines_changed":6},{"name":"tests/test_shadow.py","lines_changed":6},{"name":"tests/test_ss.py","lines_changed":6}]},"message":"fix for no data","epoch":1591923123,"epoch_utc":null},{"commit":"4d8859540417e99e273fda2cea959240f3c37ea3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 11 17:16:11 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 11 17:16:11 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":2}]},"message":"enhance empty data check","epoch":1591920971,"epoch_utc":null},{"commit":"52b1272a3aab09b5a8c4a277fbf9975a1b8b6921","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 11 17:13:45 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 11 17:13:45 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":2}]},"message":"enhance empty data check","epoch":1591920825,"epoch_utc":null},{"commit":"d2ccad6a83138fbf6eb863634fd354dc6c3fa238","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 11 17:09:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Jun 11 17:09:51 2020 -0700","stats":{"files_changed":4,"insertions":33,"deletions":15,"files":["jc/parsers/lsblk.py","jc/parsers/lsmod.py","tests/test_lsblk.py","tests/test_lsmod.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":21},{"name":"jc/parsers/lsmod.py","lines_changed":15},{"name":"tests/test_lsblk.py","lines_changed":6},{"name":"tests/test_lsmod.py","lines_changed":6}]},"message":"fix for no data","epoch":1591920591,"epoch_utc":null},{"commit":"cad6dde4ac66cf970a7f52d8e7958ea35c083629","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:54:06 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:54:06 2020 -0700","stats":{"files_changed":10,"insertions":60,"deletions":0,"files":["tests/test_group.py","tests/test_gshadow.py","tests/test_history.py","tests/test_hosts.py","tests/test_id.py","tests/test_ifconfig.py","tests/test_ini.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_last.py"],"file_stats":[{"name":"tests/test_group.py","lines_changed":6},{"name":"tests/test_gshadow.py","lines_changed":6},{"name":"tests/test_history.py","lines_changed":6},{"name":"tests/test_hosts.py","lines_changed":6},{"name":"tests/test_id.py","lines_changed":6},{"name":"tests/test_ifconfig.py","lines_changed":6},{"name":"tests/test_ini.py","lines_changed":6},{"name":"tests/test_iptables.py","lines_changed":6},{"name":"tests/test_jobs.py","lines_changed":6},{"name":"tests/test_last.py","lines_changed":6}]},"message":"fix for no data","epoch":1591836846,"epoch_utc":null},{"commit":"06811c3539b0d871e13e9b8d3b51f731d06fd2ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:41:54 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:41:54 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_fstab.py"],"file_stats":[{"name":"tests/test_fstab.py","lines_changed":6}]},"message":"add test for no data","epoch":1591836114,"epoch_utc":null},{"commit":"0cb23c2b21f464082609409261de8e95eb1b0d55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:40:18 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:40:18 2020 -0700","stats":{"files_changed":3,"insertions":17,"deletions":7,"files":["changelog.txt","jc/parsers/free.py","tests/test_free.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/free.py","lines_changed":17},{"name":"tests/test_free.py","lines_changed":6}]},"message":"add fix for no data","epoch":1591836018,"epoch_utc":null},{"commit":"ac4688dca22334385ec2c87027f2f14f9ca93ce4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:35:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:35:40 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_file.py"],"file_stats":[{"name":"tests/test_file.py","lines_changed":6}]},"message":"add test for no data","epoch":1591835740,"epoch_utc":null},{"commit":"326c3b4670a0e47cbe2988b38fb1c1b26a4db890","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:34:22 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:34:22 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_env.py"],"file_stats":[{"name":"tests/test_env.py","lines_changed":6}]},"message":"add test for no data","epoch":1591835662,"epoch_utc":null},{"commit":"9b29d0c2688eda2e4707aeba693ed14fa433a706","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:32:39 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:32:39 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_du.py"],"file_stats":[{"name":"tests/test_du.py","lines_changed":6}]},"message":"add test for no data","epoch":1591835559,"epoch_utc":null},{"commit":"e0013c38710b4ecf3a588a16d1d908effc23b485","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:31:14 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:31:14 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["tests/test_dmidecode.py"],"file_stats":[{"name":"tests/test_dmidecode.py","lines_changed":5}]},"message":"add test for no data","epoch":1591835474,"epoch_utc":null},{"commit":"a75744075b0628bdb711d8a929a759b4b4067edb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:29:41 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:29:41 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_dig.py"],"file_stats":[{"name":"tests/test_dig.py","lines_changed":6}]},"message":"add no data test","epoch":1591835381,"epoch_utc":null},{"commit":"525aec1a02380f17ab7827434616f981f7457bd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:27:46 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:27:46 2020 -0700","stats":{"files_changed":3,"insertions":16,"deletions":7,"files":["changelog.txt","jc/parsers/df.py","tests/test_df.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":16},{"name":"tests/test_df.py","lines_changed":6}]},"message":"fix for no data","epoch":1591835266,"epoch_utc":null},{"commit":"0bf9a7a072a80e10a29c6bb3943b107352dc1d45","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:22:59 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:22:59 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_csv.py"],"file_stats":[{"name":"tests/test_csv.py","lines_changed":6}]},"message":"add test for no data","epoch":1591834979,"epoch_utc":null},{"commit":"d8f2f4c95bc699386b9fe93d10e13637875a1dcf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:20:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:20:09 2020 -0700","stats":{"files_changed":5,"insertions":96,"deletions":80,"files":["changelog.txt","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/test_crontab.py","tests/test_crontab_u.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":79},{"name":"jc/parsers/crontab_u.py","lines_changed":83},{"name":"tests/test_crontab.py","lines_changed":6},{"name":"tests/test_crontab_u.py","lines_changed":6}]},"message":"fix for no data","epoch":1591834809,"epoch_utc":null},{"commit":"35d733b44f3705bed3dd8ce340379470f199f772","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:10:53 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 17:10:53 2020 -0700","stats":{"files_changed":5,"insertions":70,"deletions":60,"files":["changelog.txt","jc/parsers/arp.py","jc/parsers/blkid.py","tests/test_arp.py","tests/test_blkid.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":112},{"name":"jc/parsers/blkid.py","lines_changed":4},{"name":"tests/test_arp.py","lines_changed":6},{"name":"tests/test_blkid.py","lines_changed":6}]},"message":"fix for no data","epoch":1591834253,"epoch_utc":null},{"commit":"9179b4175c5063bed14ecb96ba24c517920c0d94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 16:40:11 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 16:40:11 2020 -0700","stats":{"files_changed":3,"insertions":16,"deletions":0,"files":["changelog.txt","tests/test_airport.py","tests/test_airport_s.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"tests/test_airport.py","lines_changed":6},{"name":"tests/test_airport_s.py","lines_changed":6}]},"message":"add nodata tests","epoch":1591832411,"epoch_utc":null},{"commit":"bb07d78c78ff5c5b2ee4d2086ffc6dd5ebedf0fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 16:39:49 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 16:39:49 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":8,"files":["jc/parsers/airport_s.py"],"file_stats":[{"name":"jc/parsers/airport_s.py","lines_changed":18}]},"message":"add nodata fix","epoch":1591832389,"epoch_utc":null},{"commit":"07b179cd7f8853ff6aca0b27a703e198c158ca72","merge":"12a80e7 054422d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 06:07:42 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Jun 10 06:07:42 2020 -0700","message":"Merge pull request #67 from kellyjonbrazil/Dev\n\nDev v1.11.4","epoch":1591794462,"epoch_utc":null},{"commit":"054422d8373e7b8def18ddabd447062cb9cc3137","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 06:04:50 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 06:04:50 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_ls.py"],"file_stats":[{"name":"tests/test_ls.py","lines_changed":6}]},"message":"add test for empty directory","epoch":1591794290,"epoch_utc":null},{"commit":"3e052d18102e98a09cbba21866855691eaccc216","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 05:53:20 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 05:53:20 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1591793600,"epoch_utc":null},{"commit":"c8e72805cf9def478b56c925f4afcc0ece1daac0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 05:51:12 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Jun 10 05:51:12 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":10,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":19}]},"message":"fix error on empty directory","epoch":1591793472,"epoch_utc":null},{"commit":"12a80e7db0f6c7d536674ad8d34e26bba9a1f1f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 9 15:13:53 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jun 9 15:13:53 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":12}]},"message":"add fedora package info","epoch":1591740833,"epoch_utc":null},{"commit":"ee7ff9a09d3373f60ae1645376ccc0057803147e","merge":"346a14c f6478fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 9 11:22:39 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Jun 9 11:22:39 2020 -0700","message":"Merge pull request #66 from kellyjonbrazil/dev\n\nDev v1.11.3","epoch":1591726959,"epoch_utc":null},{"commit":"f6478fb636ead8d1e53e4a88d59e55222df37a8f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 9 11:18:47 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Jun 9 11:18:47 2020 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1591726727,"epoch_utc":null},{"commit":"811a0b0495819925199d70db266066197cc6824e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 8 10:54:42 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jun 8 10:54:42 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add info regarding the local parser plugin files","epoch":1591638882,"epoch_utc":null},{"commit":"aeb48edf727f23cc4f8fd9b760cfb69f03098278","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 8 10:48:58 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jun 8 10:48:58 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"use $LOCALAPPDATA variable for windows","epoch":1591638538,"epoch_utc":null},{"commit":"b1e94f0df7041bcae97455508f423178aef9d61d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 8 10:44:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jun 8 10:44:09 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"heading formatting","epoch":1591638249,"epoch_utc":null},{"commit":"60050e3c0fe34980f7db5b8bd46430f953f0c3a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 8 10:42:45 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Jun 8 10:42:45 2020 -0700","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":26}]},"message":"fix linux/unix directory and add note about the XDG specification followed","epoch":1591638165,"epoch_utc":null},{"commit":"39ef09aa5b0d43b5128299511afe80336aa38203","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 13:30:22 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jun 7 13:30:22 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add local parser plugin feature","epoch":1591561822,"epoch_utc":null},{"commit":"8377d4311611c242e16eaebe66dafac9529150d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 13:26:03 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jun 7 13:26:03 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1591561563,"epoch_utc":null},{"commit":"54e4c447ab34ae54c73c92df40f1b4ca6ffb2277","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:52:16 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jun 7 12:52:16 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":10}]},"message":"clean up formatting","epoch":1591559536,"epoch_utc":null},{"commit":"937a9fa9cf2ede8e686ba853989f33e4a483a0ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:41:50 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jun 7 12:41:50 2020 -0700","stats":{"files_changed":4,"insertions":613,"deletions":3,"files":["jc/appdirs.py","jc/cli.py","requirements.txt","setup.py"],"file_stats":[{"name":"jc/appdirs.py","lines_changed":611},{"name":"jc/cli.py","lines_changed":3},{"name":"requirements.txt","lines_changed":1},{"name":"setup.py","lines_changed":1}]},"message":"vendorize appdirs module","epoch":1591558910,"epoch_utc":null},{"commit":"808ff6cf0e784cf0c2d523ff2e01197cb6e88c82","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:29:10 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jun 7 12:29:10 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":12}]},"message":"more acknowledgments updates","epoch":1591558150,"epoch_utc":null},{"commit":"7f5c649a95a871c3cd8d48731a6d26dcba6f725b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:23:28 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jun 7 12:23:28 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update acknowledgments","epoch":1591557808,"epoch_utc":null},{"commit":"b72727dec995de1ca5f68ee17a710b086c87d612","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:13:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Jun 7 12:13:40 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":11}]},"message":"update custom parsers info","epoch":1591557220,"epoch_utc":null},{"commit":"3fc88bfb334143b68a9cb78d4034f33e7c0bcf76","merge":"346a14c 9f2279d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:04:44 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Jun 7 12:04:44 2020 -0700","message":"Merge pull request #65 from duelafn/local-parsers\n\nLoad custom parsers from /jc/jcparsers","epoch":1591556684,"epoch_utc":null},{"commit":"9f2279d5867eb89d4b4b7b4ffca290166ec97c48","author":"Dean Serenevy","author_email":"dean@serenevy.net","date":"Sat Jun 6 14:30:40 2020 -0400","commit_by":"Dean Serenevy","commit_by_email":"dean@serenevy.net","commit_by_date":"Sat Jun 6 14:42:27 2020 -0400","stats":{"files_changed":4,"insertions":29,"deletions":2,"files":["README.md","jc/cli.py","requirements.txt","setup.py"],"file_stats":[{"name":"README.md","lines_changed":7},{"name":"jc/cli.py","lines_changed":22},{"name":"requirements.txt","lines_changed":1},{"name":"setup.py","lines_changed":1}]},"message":"Load custom parsers from /jc/jcparsers","epoch":1591479040,"epoch_utc":null},{"commit":"346a14cb9bb0d762fc3fa366ad97e5ff85f3992a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:44:14 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 20:44:14 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"change osx_device to unix_device","epoch":1590896654,"epoch_utc":null},{"commit":"dac00d17ff9f3d2bb959697b6e567015bfc2702b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:33:50 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 20:33:50 2020 -0700","stats":{"files_changed":3,"insertions":17,"deletions":0,"files":["tests/fixtures/nixos/route-ee.json","tests/fixtures/nixos/route-ee.out","tests/test_route.py"],"file_stats":[{"name":"tests/fixtures/nixos/route-ee.json","lines_changed":1},{"name":"tests/fixtures/nixos/route-ee.out","lines_changed":4},{"name":"tests/test_route.py","lines_changed":12}]},"message":"add nixos test","epoch":1590896030,"epoch_utc":null},{"commit":"9ca7cd40601b97829e8f88071fdfb928d939f7e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:33:39 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 20:33:39 2020 -0700","stats":{"files_changed":1,"insertions":17,"deletions":34,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":51}]},"message":"update docs","epoch":1590896019,"epoch_utc":null},{"commit":"aa31628970b12295a41dff20e829fcce9f8a4d07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:33:00 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 20:33:00 2020 -0700","stats":{"files_changed":5,"insertions":70,"deletions":63,"files":["README.md","docs/parsers/netstat.md","docs/parsers/route.md","docs/parsers/stat.md","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":46},{"name":"docs/parsers/netstat.md","lines_changed":16},{"name":"docs/parsers/route.md","lines_changed":51},{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":16}]},"message":"update docs","epoch":1590895980,"epoch_utc":null},{"commit":"bed694fcf5c8c31bbd4f3e88759fe7ab82382d24","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:13:21 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 20:13:21 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1590894801,"epoch_utc":null},{"commit":"4b4af69fa184896ec15b5be7dc8416f36f921d5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:12:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 20:12:51 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"fix date","epoch":1590894771,"epoch_utc":null},{"commit":"9d96190a5b19e8d71c3ac66eb0303d269dd4ce5d","merge":"96df396 fa44d48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:08:32 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sat May 30 20:08:32 2020 -0700","message":"Merge pull request #64 from kellyjonbrazil/dev\n\nDev v1.11.2","epoch":1590894512,"epoch_utc":null},{"commit":"fa44d48c094a55e499c2c780d109bf277736b42e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 19:50:38 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 19:50:38 2020 -0700","stats":{"files_changed":6,"insertions":129,"deletions":7,"files":["changelog.txt","jc/parsers/stat.py","tests/fixtures/freebsd12/stat.json","tests/fixtures/freebsd12/stat.out","tests/fixtures/osx-10.14.6/stat.json","tests/test_stat.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":12},{"name":"tests/fixtures/freebsd12/stat.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/stat.out","lines_changed":107},{"name":"tests/fixtures/osx-10.14.6/stat.json","lines_changed":2},{"name":"tests/test_stat.py","lines_changed":12}]},"message":"freebsd fixes, tests, and fixtures","epoch":1590893438,"epoch_utc":null},{"commit":"4ef961c2788c935b1fea1c9777b976e7b89e7367","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 19:18:01 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 19:18:01 2020 -0700","stats":{"files_changed":3,"insertions":20,"deletions":0,"files":["tests/fixtures/freebsd12/ntpq-p.json","tests/fixtures/freebsd12/ntpq-p.out","tests/test_ntpq.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/ntpq-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ntpq-p.out","lines_changed":7},{"name":"tests/test_ntpq.py","lines_changed":12}]},"message":"add freebsd test and fixtures","epoch":1590891481,"epoch_utc":null},{"commit":"292a837d5c47165ccb155f079b0a114b5c17a98e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 18:54:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 18:54:09 2020 -0700","stats":{"files_changed":3,"insertions":22,"deletions":0,"files":["tests/fixtures/freebsd12/last.json","tests/fixtures/freebsd12/last.out","tests/test_last.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/last.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/last.out","lines_changed":9},{"name":"tests/test_last.py","lines_changed":12}]},"message":"add tests and fixtures for freebsd12","epoch":1590890049,"epoch_utc":null},{"commit":"aa7b915d847dbd29d2c09b2cc40b847e37174ffb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 18:53:46 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 18:53:46 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":2}]},"message":"version bump","epoch":1590890026,"epoch_utc":null},{"commit":"c46fe73236b912d2ee89dfb36ff259fe95fd0479","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 18:53:35 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 18:53:35 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"add last fixes for freebsd","epoch":1590890015,"epoch_utc":null},{"commit":"039b2c129cbe79d2d23b1194b043d8b730609956","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 18:42:26 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 18:42:26 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":1,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":11}]},"message":"freebsd fixes","epoch":1590889346,"epoch_utc":null},{"commit":"8f2e5e4808b30c658a4cb87125639e4d7d6c15d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 17:46:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 17:46:09 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"fix compatible logic","epoch":1590885969,"epoch_utc":null},{"commit":"c4da8e4f78e6b4aaa4aff76ae042be9aaec832a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 17:05:41 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 17:05:41 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":12}]},"message":"add nixos and freebsd to tested. update new arp fields","epoch":1590883541,"epoch_utc":null},{"commit":"bcab9078a4c2bfd6ae4dca9448b577d9ed0fc01c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 17:02:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 17:02:09 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"add w parser fix","epoch":1590883329,"epoch_utc":null},{"commit":"b3c6c1ea925bf7cd76368f5074fb8af52a844522","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 17:01:59 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 17:01:59 2020 -0700","stats":{"files_changed":4,"insertions":29,"deletions":5,"files":["jc/parsers/w.py","tests/fixtures/nixos/w.json","tests/fixtures/nixos/w.out","tests/test_w.py"],"file_stats":[{"name":"jc/parsers/w.py","lines_changed":8},{"name":"tests/fixtures/nixos/w.json","lines_changed":1},{"name":"tests/fixtures/nixos/w.out","lines_changed":5},{"name":"tests/test_w.py","lines_changed":20}]},"message":"strip whitespace in string fields and add tests","epoch":1590883319,"epoch_utc":null},{"commit":"a3af8662bd491e344c93d24afabd23e90efd8086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 16:26:07 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 16:26:07 2020 -0700","stats":{"files_changed":3,"insertions":205,"deletions":3,"files":["tests/fixtures/osx-10.11.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a2.json"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/arp-a.json","lines_changed":107},{"name":"tests/fixtures/osx-10.14.6/arp-a.json","lines_changed":99},{"name":"tests/fixtures/osx-10.14.6/arp-a2.json","lines_changed":2}]},"message":"add permanent field","epoch":1590881167,"epoch_utc":null},{"commit":"35940d0bc80bf61b11f40b1e1043835f26eb391c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 16:25:53 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 16:25:53 2020 -0700","stats":{"files_changed":6,"insertions":59,"deletions":4,"files":["changelog.txt","docs/parsers/arp.md","jc/parsers/arp.py","tests/fixtures/freebsd12/arp-a.json","tests/fixtures/freebsd12/arp-a.out","tests/test_arp.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":12},{"name":"jc/parsers/arp.py","lines_changed":33},{"name":"tests/fixtures/freebsd12/arp-a.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/arp-a.out","lines_changed":3},{"name":"tests/test_arp.py","lines_changed":12}]},"message":"add freebsd permanent and expires fields","epoch":1590881153,"epoch_utc":null},{"commit":"26994cdcb7148d2c9d1701bca9541d247356260b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:51:54 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 15:51:54 2020 -0700","stats":{"files_changed":8,"insertions":115,"deletions":85,"files":["docs/parsers/df.md","docs/parsers/fstab.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/route.md","docs/parsers/stat.md","docs/parsers/uname.md"],"file_stats":[{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":163},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":25},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2}]},"message":"add freebsd compatibility info","epoch":1590879114,"epoch_utc":null},{"commit":"017159a829691cb6a7174f123d024eb252179b75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:51:06 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 15:51:06 2020 -0700","stats":{"files_changed":15,"insertions":221,"deletions":0,"files":["tests/fixtures/freebsd12/netstat-Aa.json","tests/fixtures/freebsd12/netstat-AaT.json","tests/fixtures/freebsd12/netstat-AaT.out","tests/fixtures/freebsd12/netstat-AanP.json","tests/fixtures/freebsd12/netstat-AanP.out","tests/fixtures/freebsd12/netstat-Aax.json","tests/fixtures/freebsd12/netstat-Aax.out","tests/fixtures/freebsd12/netstat-aT.json","tests/fixtures/freebsd12/netstat-aT.out","tests/fixtures/freebsd12/netstat-an.json","tests/fixtures/freebsd12/netstat-i.json","tests/fixtures/freebsd12/netstat-ib.json","tests/fixtures/freebsd12/netstat-ib.out","tests/fixtures/freebsd12/netstat-r.json","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/netstat-Aa.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-AaT.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-AaT.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-AanP.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-AanP.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-Aax.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-Aax.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-aT.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-aT.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-an.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-i.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-ib.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-ib.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/netstat-r.json","lines_changed":1},{"name":"tests/test_netstat.py","lines_changed":108}]},"message":"add freebsd nestat tests and fixtures","epoch":1590879066,"epoch_utc":null},{"commit":"b4e9c85e08d199dad67f03c7603194278a022696","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:50:45 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 15:50:45 2020 -0700","stats":{"files_changed":1,"insertions":12,"deletions":0,"files":["jc/parsers/netstat_freebsd_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_freebsd_osx.py","lines_changed":12}]},"message":"fixup -T freebsd output and add whitespace stripping to parse_post","epoch":1590879045,"epoch_utc":null},{"commit":"189146cd84cfad262f2b2601bb0cb4b9dde2587e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:50:07 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 15:50:07 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":10}]},"message":"add more ints. remove whitespace strip code and move to freebsd_osx module","epoch":1590879007,"epoch_utc":null},{"commit":"af34153ffab10ca1ad7f44736d379d91ae43c813","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:48:56 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 15:48:56 2020 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["changelog.txt","jc/cli.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2}]},"message":"version bump","epoch":1590878936,"epoch_utc":null},{"commit":"bf2ff3ffbb639446779b1f04f2997707d99c0a1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:48:29 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 30 15:48:29 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":9}]},"message":"fix compatibility search for platform names that append the version number (e.g. freebsd12)","epoch":1590878909,"epoch_utc":null},{"commit":"6423c9efd69e938af38934a97ca6b65009e8f07e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 15:48:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 15:48:51 2020 -0700","stats":{"files_changed":1,"insertions":34,"deletions":5,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":39}]},"message":"integer and float updates","epoch":1590792531,"epoch_utc":null},{"commit":"58ab0d4ece7f006ce9431afb9e0fecbe60930be7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 15:14:44 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 15:14:44 2020 -0700","stats":{"files_changed":4,"insertions":12,"deletions":4,"files":["changelog.txt","jc/parsers/netstat.py","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":11},{"name":"tests/fixtures/osx-10.14.6/netstat-An.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat.json","lines_changed":2}]},"message":"strip whitespace from string fields","epoch":1590790484,"epoch_utc":null},{"commit":"83a738bf4d756036d6269b9153220d7f1018ac9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 14:16:11 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 14:16:11 2020 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/netstat-Abn.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-An.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat.json","lines_changed":2}]},"message":"update fixtures for osx_flags and osx_inode name change to unix_flags and unix_inode","epoch":1590786971,"epoch_utc":null},{"commit":"3640671fc6a67c9628fd47e19e9fe0a0738439ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 14:15:28 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 14:15:28 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/{netstat_osx.py => netstat_freebsd_osx.py}"],"file_stats":[{"name":"jc/parsers/{netstat_osx.py => netstat_freebsd_osx.py}","lines_changed":10}]},"message":"rename module","epoch":1590786928,"epoch_utc":null},{"commit":"1da623b30ef6f9b12ac231518d2d4e7dadcf717b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 14:14:48 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 14:14:48 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":9}]},"message":"add items","epoch":1590786888,"epoch_utc":null},{"commit":"b10ca64646e93d9797182ea046f4956a17b37627","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 14:14:37 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 14:14:37 2020 -0700","stats":{"files_changed":1,"insertions":71,"deletions":71,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":142}]},"message":"change osx_inode and osx_flags to unix_inode and unix_flags. Also rename netstat_osx module to netstat_freebsd_osx","epoch":1590786877,"epoch_utc":null},{"commit":"2128763ee67a07da6ebf123abeec39794bc1f4e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 13:25:19 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 13:25:19 2020 -0700","stats":{"files_changed":1,"insertions":12,"deletions":12,"files":["tests/test_netstat.py"],"file_stats":[{"name":"tests/test_netstat.py","lines_changed":24}]},"message":"fix osx version from 16.4 to 14.6","epoch":1590783919,"epoch_utc":null},{"commit":"a27e7ed39c63c04cfa78caceaada42f7a9496a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 13:24:52 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 13:24:52 2020 -0700","stats":{"files_changed":12,"insertions":12,"deletions":12,"files":["tests/fixtures/centos-7.7/netstat-r.json","tests/fixtures/centos-7.7/netstat-rne.json","tests/fixtures/centos-7.7/netstat-rnee.json","tests/fixtures/centos-7.7/route-vn.json","tests/fixtures/centos-7.7/route.json","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-rnl.json","tests/fixtures/ubuntu-18.04/netstat-r.json","tests/fixtures/ubuntu-18.04/netstat-rne.json","tests/fixtures/ubuntu-18.04/netstat-rnee.json","tests/fixtures/ubuntu-18.04/route-vn.json","tests/fixtures/ubuntu-18.04/route.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/netstat-r.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/netstat-rne.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/netstat-rnee.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/route-vn.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/route.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-r.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-rnl.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/netstat-r.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/netstat-rne.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/netstat-rnee.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/route-vn.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/route.json","lines_changed":2}]},"message":"test updates for added route_flags_pretty and flags_pretty fields","epoch":1590783892,"epoch_utc":null},{"commit":"f07b7eaa474eb87dbdbc7fbe41b9386feff7bee2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 12:55:16 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 12:55:16 2020 -0700","stats":{"files_changed":1,"insertions":38,"deletions":12,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":50}]},"message":"add flags_pretty","epoch":1590782116,"epoch_utc":null},{"commit":"6ce18de84ce16a926f9cd97c3210ef209c3352da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 12:51:04 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 12:51:04 2020 -0700","stats":{"files_changed":3,"insertions":130,"deletions":69,"files":["jc/parsers/netstat.py","jc/parsers/netstat_linux.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":139},{"name":"jc/parsers/netstat_linux.py","lines_changed":23},{"name":"jc/parsers/netstat_osx.py","lines_changed":37}]},"message":"add route_flags_pretty","epoch":1590781864,"epoch_utc":null},{"commit":"8631b756e7ab8cd71c2a3eb288e2d1823cec5782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 12:05:46 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 12:05:46 2020 -0700","stats":{"files_changed":4,"insertions":76,"deletions":0,"files":["tests/fixtures/freebsd12/netstat-Aa.out","tests/fixtures/freebsd12/netstat-an.out","tests/fixtures/freebsd12/netstat-i.out","tests/fixtures/freebsd12/netstat-r.out"],"file_stats":[{"name":"tests/fixtures/freebsd12/netstat-Aa.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-an.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-i.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/netstat-r.out","lines_changed":20}]},"message":"add freebsd test files","epoch":1590779146,"epoch_utc":null},{"commit":"7414d984125300164a5b6156d7a80128d4d6cb15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 12:05:34 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 12:05:34 2020 -0700","stats":{"files_changed":6,"insertions":18,"deletions":18,"files":["jc/parsers/df.py","jc/parsers/fstab.py","jc/parsers/mount.py","jc/parsers/ntpq.py","jc/parsers/stat.py","jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":6},{"name":"jc/parsers/fstab.py","lines_changed":6},{"name":"jc/parsers/mount.py","lines_changed":6},{"name":"jc/parsers/ntpq.py","lines_changed":6},{"name":"jc/parsers/stat.py","lines_changed":6},{"name":"jc/parsers/uname.py","lines_changed":6}]},"message":"add freebsd compatibility","epoch":1590779134,"epoch_utc":null},{"commit":"d7b19892e8fb11e17fcbadcdbb08d49897d7754f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 12:04:58 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 12:04:58 2020 -0700","stats":{"files_changed":2,"insertions":10,"deletions":7,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":13},{"name":"jc/parsers/netstat_osx.py","lines_changed":4}]},"message":"add freebsd support for netstat -i","epoch":1590779098,"epoch_utc":null},{"commit":"96df396eaf4e030113005a95e525d644c394dfe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 07:35:25 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 29 07:35:25 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1590762925,"epoch_utc":null},{"commit":"2f6f640317da5af894f34f187c4243ef0c599d07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 27 17:11:20 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 27 17:11:20 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"spelling","epoch":1590624680,"epoch_utc":null},{"commit":"c4a0a50f3a3ac5833ab5d2f8a0cb3f18da335812","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 27 17:08:54 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 27 17:08:54 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"add nix-env","epoch":1590624534,"epoch_utc":null},{"commit":"658f8a3842273cea049689b3aea15d89a7294b24","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 27 14:58:16 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 27 14:58:16 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":13}]},"message":"add zypper and ports info","epoch":1590616696,"epoch_utc":null},{"commit":"bfb876a1e394ff63c6773965ba0b65da4e109c1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 27 09:52:13 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 27 09:52:13 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"formatting","epoch":1590598333,"epoch_utc":null},{"commit":"90c34b1f4ee2d9ec8125346bb90b227f76ada2ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 26 17:31:56 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 26 17:31:56 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"fix dmidecode example","epoch":1590539516,"epoch_utc":null},{"commit":"3f9164ea77ec41e1b0671d0a642900d8e36faf9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 23 21:11:17 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 23 21:11:17 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"bold formatting","epoch":1590293477,"epoch_utc":null},{"commit":"7fd6fecbf5a08b1f13aa7e906e94be9bc126780a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 23 21:09:49 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 23 21:09:49 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1590293389,"epoch_utc":null},{"commit":"8029f72363a4d19938df07603f03a0147f6246a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 23 21:09:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 23 21:09:40 2020 -0700","stats":{"files_changed":6,"insertions":10,"deletions":7,"files":["changelog.txt","docs/parsers/stat.md","jc/cli.py","jc/parsers/stat.py","setup.py","tests/fixtures/osx-10.14.6/stat.json"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":6},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/stat.json","lines_changed":2}]},"message":"change osx_flags from integer to string","epoch":1590293380,"epoch_utc":null},{"commit":"c7fdce5d3b7566a7d290627767c47d9c196e02ad","merge":"f5627a4 84f48aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 16:37:50 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri May 22 16:37:50 2020 -0700","message":"Merge pull request #62 from kellyjonbrazil/dev\n\nDev v1.11.0","epoch":1590190670,"epoch_utc":null},{"commit":"84f48aa369a458f534523ecc1e3aaaf403d06f1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 16:30:22 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 16:30:22 2020 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1590190222,"epoch_utc":null},{"commit":"2e9a0a9c1221dd01bd683ecbc4871d03738da671","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 16:21:55 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 16:21:55 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]},"message":"add features","epoch":1590189715,"epoch_utc":null},{"commit":"c1f6f2b9508e558ab88b4a0a61e93a6cf5460bea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 16:21:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 16:21:40 2020 -0700","stats":{"files_changed":5,"insertions":116,"deletions":4,"files":["docs/parsers/stat.md","jc/parsers/stat.py","tests/fixtures/osx-10.14.6/stat.json","tests/fixtures/osx-10.14.6/stat.out","tests/test_stat.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":8},{"name":"jc/parsers/stat.py","lines_changed":5},{"name":"tests/fixtures/osx-10.14.6/stat.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/stat.out","lines_changed":94},{"name":"tests/test_stat.py","lines_changed":12}]},"message":"osx fixes and tests","epoch":1590189700,"epoch_utc":null},{"commit":"ede21bca13c4b46899721f01d979c8b063f861a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 16:05:04 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 16:05:04 2020 -0700","stats":{"files_changed":1,"insertions":110,"deletions":78,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":188}]},"message":"add OSX support for stat","epoch":1590188704,"epoch_utc":null},{"commit":"8dd9a9f9cbc70a19176f909f6ac76b2bcf670736","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 15:12:10 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 15:12:10 2020 -0700","stats":{"files_changed":5,"insertions":45,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-i.json","tests/fixtures/osx-10.14.6/netstat-i.json","tests/fixtures/ubuntu-18.04/netstat-i.json","tests/fixtures/ubuntu-18.04/netstat-i.out","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/netstat-i.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-i.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-i.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-i.out","lines_changed":4},{"name":"tests/test_netstat.py","lines_changed":38}]},"message":"add netstat -i tests","epoch":1590185530,"epoch_utc":null},{"commit":"04f92cd1330759e4bad1c0304b9e1c28e8d32d59","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 14:04:11 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 14:04:11 2020 -0700","stats":{"files_changed":5,"insertions":166,"deletions":4,"files":["README.md","docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_linux.py","tests/fixtures/centos-7.7/netstat-i.out"],"file_stats":[{"name":"README.md","lines_changed":32},{"name":"docs/parsers/netstat.md","lines_changed":50},{"name":"jc/parsers/netstat.py","lines_changed":44},{"name":"jc/parsers/netstat_linux.py","lines_changed":39},{"name":"tests/fixtures/centos-7.7/netstat-i.out","lines_changed":5}]},"message":"add linux support for netstat -i","epoch":1590181451,"epoch_utc":null},{"commit":"8be8d2393b276a9249e1c573ce19cf630f0942fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 13:38:25 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 13:38:25 2020 -0700","stats":{"files_changed":3,"insertions":99,"deletions":3,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-i.out"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":19},{"name":"jc/parsers/netstat_osx.py","lines_changed":40},{"name":"tests/fixtures/osx-10.14.6/netstat-i.out","lines_changed":43}]},"message":"add netstat -i support for OSX","epoch":1590179905,"epoch_utc":null},{"commit":"0a879681be68fe2e6e5c013ab0fe18de99b04f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 12:56:27 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 12:56:27 2020 -0700","stats":{"files_changed":3,"insertions":97,"deletions":282,"files":["README.md","docs/parsers/netstat.md","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":37},{"name":"docs/parsers/netstat.md","lines_changed":171},{"name":"jc/parsers/netstat.py","lines_changed":171}]},"message":"add netstat -r to docs","epoch":1590177387,"epoch_utc":null},{"commit":"2ca1587a49511899bf719e0b0c7de32158fc491d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 12:44:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 12:44:51 2020 -0700","stats":{"files_changed":10,"insertions":102,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-r.json","tests/fixtures/centos-7.7/netstat-rne.json","tests/fixtures/centos-7.7/netstat-rnee.json","tests/fixtures/ubuntu-18.04/netstat-r.json","tests/fixtures/ubuntu-18.04/netstat-r.out","tests/fixtures/ubuntu-18.04/netstat-rne.json","tests/fixtures/ubuntu-18.04/netstat-rne.out","tests/fixtures/ubuntu-18.04/netstat-rnee.json","tests/fixtures/ubuntu-18.04/netstat-rnee.out","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/netstat-r.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-rne.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-rnee.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-r.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-r.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/netstat-rne.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-rne.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/netstat-rnee.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-rnee.out","lines_changed":5},{"name":"tests/test_netstat.py","lines_changed":81}]},"message":"add linux netstat -r tests","epoch":1590176691,"epoch_utc":null},{"commit":"ec2cd2d708a57c0458657416bedcb4340cb40901","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 12:00:26 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 12:00:26 2020 -0700","stats":{"files_changed":9,"insertions":70,"deletions":11,"files":["docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_linux.py","jc/parsers/netstat_osx.py","tests/fixtures/centos-7.7/netstat-r.out","tests/fixtures/centos-7.7/netstat-rne.out","tests/fixtures/centos-7.7/netstat-rnee.out","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-rnl.json"],"file_stats":[{"name":"docs/parsers/netstat.md","lines_changed":11},{"name":"jc/parsers/netstat.py","lines_changed":13},{"name":"jc/parsers/netstat_linux.py","lines_changed":37},{"name":"jc/parsers/netstat_osx.py","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-r.out","lines_changed":5},{"name":"tests/fixtures/centos-7.7/netstat-rne.out","lines_changed":5},{"name":"tests/fixtures/centos-7.7/netstat-rnee.out","lines_changed":5},{"name":"tests/fixtures/osx-10.14.6/netstat-r.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-rnl.json","lines_changed":2}]},"message":"add netstat -r support for linux","epoch":1590174026,"epoch_utc":null},{"commit":"5d0dbece9317e84a47d9f4b2d18a9ffa33fbee6e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 11:09:41 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 11:09:41 2020 -0700","stats":{"files_changed":8,"insertions":288,"deletions":5,"files":["docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-r.out","tests/fixtures/osx-10.14.6/netstat-rnl.json","tests/fixtures/osx-10.14.6/netstat-rnl.out","tests/test_netstat.py"],"file_stats":[{"name":"docs/parsers/netstat.md","lines_changed":17},{"name":"jc/parsers/netstat.py","lines_changed":23},{"name":"jc/parsers/netstat_osx.py","lines_changed":37},{"name":"tests/fixtures/osx-10.14.6/netstat-r.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-r.out","lines_changed":93},{"name":"tests/fixtures/osx-10.14.6/netstat-rnl.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-rnl.out","lines_changed":96},{"name":"tests/test_netstat.py","lines_changed":25}]},"message":"add netstat -r functionality for OSX","epoch":1590170981,"epoch_utc":null},{"commit":"df1e4b414b2bda5be3153767cd854b2483ba600b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 08:00:18 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 08:00:18 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":[".gitignore"],"file_stats":[{"name":".gitignore","lines_changed":1}]},"message":"remove unused folder","epoch":1590159618,"epoch_utc":null},{"commit":"40760991e7dae43cd15134310f7bbb5ce0f58dae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 07:51:47 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 07:51:47 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["LICENSE.md"],"file_stats":[{"name":"LICENSE.md","lines_changed":2}]},"message":"update copyright date","epoch":1590159107,"epoch_utc":null},{"commit":"464f5f86cf2c8fe6a1a857b0ad4d221a3edf3d88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 07:50:22 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 22 07:50:22 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"update description","epoch":1590159022,"epoch_utc":null},{"commit":"7b09e9fccdd4f09218a500b54c898ada1b9843c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 21 17:01:17 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 21 17:01:17 2020 -0700","stats":{"files_changed":5,"insertions":8,"deletions":5,"files":["docs/parsers/dmidecode.md","jc/parsers/dmidecode.py","tests/fixtures/centos-7.7/dmidecode.json","tests/fixtures/fedora32/dmidecode.json","tests/fixtures/ubuntu-18.04/dmidecode.json"],"file_stats":[{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":5},{"name":"tests/fixtures/centos-7.7/dmidecode.json","lines_changed":2},{"name":"tests/fixtures/fedora32/dmidecode.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dmidecode.json","lines_changed":2}]},"message":"set empty values to Null and update fixtures","epoch":1590105677,"epoch_utc":null},{"commit":"6cba7d429898d331c674c778f8bd85ba75a8dca9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 21 11:10:00 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 21 11:10:00 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"remove linux from description","epoch":1590084600,"epoch_utc":null},{"commit":"9730f62e4970b5a4490f8dc24b6cfb9cacd0cbf2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 21 09:44:28 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 21 09:44:28 2020 -0700","stats":{"files_changed":5,"insertions":151,"deletions":133,"files":["jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json","tests/fixtures/osx-10.14.6/netstat.out"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":7},{"name":"tests/fixtures/osx-10.14.6/netstat-Abn.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-An.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat.out","lines_changed":271}]},"message":"fixup name field and update test fixtures","epoch":1590079468,"epoch_utc":null},{"commit":"e0c1c87f549eee000b93b5f5a3e8d0b052eb7d32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 21 09:07:01 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 21 09:07:01 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":8}]},"message":"formatting","epoch":1590077221,"epoch_utc":null},{"commit":"931b3d2b836b251590497f4cfa65f106762086c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 19:56:28 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 19:56:28 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1590029788,"epoch_utc":null},{"commit":"e5d561baeecf1fd83a884b3cd9d322762f750dfb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 17:31:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 17:31:51 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":1}]},"message":"add multipath condition for osx detection","epoch":1590021111,"epoch_utc":null},{"commit":"2867593e7aa12299686e2c6aa0f2a79a9b550b53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 17:28:44 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 17:28:44 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":6}]},"message":"changelog update","epoch":1590020924,"epoch_utc":null},{"commit":"dd52fee5635c977d5c77046ab9fe78d2ed10deef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 17:25:25 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 17:25:25 2020 -0700","stats":{"files_changed":7,"insertions":2141,"deletions":0,"files":["tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-Abn.out","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat-An.out","tests/fixtures/osx-10.14.6/netstat.json","tests/fixtures/osx-10.14.6/netstat.out","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/netstat-Abn.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-Abn.out","lines_changed":689},{"name":"tests/fixtures/osx-10.14.6/netstat-An.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-An.out","lines_changed":689},{"name":"tests/fixtures/osx-10.14.6/netstat.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat.out","lines_changed":724},{"name":"tests/test_netstat.py","lines_changed":36}]},"message":"osx netstat tests and fixtures","epoch":1590020725,"epoch_utc":null},{"commit":"8e1f8858273e671a882a07eae1c35b38f5298c94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 16:43:53 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 16:43:53 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":7}]},"message":"fix filtered netstat views","epoch":1590018233,"epoch_utc":null},{"commit":"2d39a58f902e6af77f8f96ffcd1d68b7cbadd56c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 16:14:03 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 16:14:03 2020 -0700","stats":{"files_changed":4,"insertions":81,"deletions":14,"files":["README.md","docs/parsers/dmidecode.md","docs/parsers/netstat.md","jc/parsers/dmidecode.py"],"file_stats":[{"name":"README.md","lines_changed":67},{"name":"docs/parsers/dmidecode.md","lines_changed":4},{"name":"docs/parsers/netstat.md","lines_changed":20},{"name":"jc/parsers/dmidecode.py","lines_changed":4}]},"message":"doc update","epoch":1590016443,"epoch_utc":null},{"commit":"9c4fa2ae2601ca4880c0b078fa917f01f1392e0e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 15:39:47 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 15:39:47 2020 -0700","stats":{"files_changed":2,"insertions":22,"deletions":2,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":21},{"name":"jc/parsers/netstat_osx.py","lines_changed":3}]},"message":"integer conversions and icmp fix","epoch":1590014387,"epoch_utc":null},{"commit":"de52d84e82df6d8c5e2416c6bc44e59c41c685da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 12:02:32 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 12:02:32 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":17}]},"message":"fix udp state and udp46 entries","epoch":1590001352,"epoch_utc":null},{"commit":"ce9b55059a28d363b8b0ae4f3ccbdbdc4bf4b58e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 11:24:38 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 11:24:38 2020 -0700","stats":{"files_changed":2,"insertions":185,"deletions":167,"files":["jc/parsers/netstat.py","jc/parsers/netstat_linux.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":171},{"name":"jc/parsers/netstat_linux.py","lines_changed":181}]},"message":"organize files","epoch":1589999078,"epoch_utc":null},{"commit":"bcd370a6a01a115d470776f5690f8571d68d3930","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 08:19:45 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 08:19:45 2020 -0700","stats":{"files_changed":2,"insertions":5,"deletions":15,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":16},{"name":"jc/parsers/netstat_osx.py","lines_changed":4}]},"message":"code cleanup","epoch":1589987985,"epoch_utc":null},{"commit":"c8216850abd2d0b8cc6761453f853f296e8a28f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 07:19:24 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 20 07:19:24 2020 -0700","stats":{"files_changed":1,"insertions":19,"deletions":55,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":74}]},"message":"code cleanup","epoch":1589984364,"epoch_utc":null},{"commit":"f5feedb90b39e5c3f4564615482d47ccd145844f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 17:38:14 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 19 17:38:14 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":10,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":11}]},"message":"fix comments","epoch":1589935094,"epoch_utc":null},{"commit":"a4371cd187fe5077018edbfeee77eb17c6a90ad3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 17:36:16 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 19 17:36:16 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":6}]},"message":"support netstat -A","epoch":1589934976,"epoch_utc":null},{"commit":"9d5ba4c83404e4fab5c0f40c30b4735685499a31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 17:14:04 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 19 17:14:04 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":2}]},"message":"formatting","epoch":1589933644,"epoch_utc":null},{"commit":"1639dee1bb93f6f89e8bb7b37134dc1f561c479c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 17:13:03 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 19 17:13:03 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":35,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":45}]},"message":"fix parse_post","epoch":1589933583,"epoch_utc":null},{"commit":"9363f430f20951e6fa739f06c85c5b6b3421b60d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 16:26:41 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 19 16:26:41 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":3}]},"message":"use list extend method to simplify code","epoch":1589930801,"epoch_utc":null},{"commit":"9192a0907364c772558380be1373b8dcea972a6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 16:26:04 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 19 16:26:04 2020 -0700","stats":{"files_changed":1,"insertions":124,"deletions":34,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":158}]},"message":"parse all sections","epoch":1589930764,"epoch_utc":null},{"commit":"b915eb97556ccc5fc60e8d23f7298ffec2d8e3b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 15:15:08 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue May 19 15:15:08 2020 -0700","stats":{"files_changed":2,"insertions":237,"deletions":55,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":118},{"name":"jc/parsers/netstat_osx.py","lines_changed":174}]},"message":"initial osx parser","epoch":1589926508,"epoch_utc":null},{"commit":"1cfcc2b592f682d2b50a0c4188fa3ae832a6c682","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 14 09:58:16 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 14 09:58:16 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":2}]},"message":"tighten up line test logic when counting tabs","epoch":1589475496,"epoch_utc":null},{"commit":"7138dd02b73073441a52c9b574bf0d6e02f0d7d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 14 09:51:10 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 14 09:51:10 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":11}]},"message":"cleanup variables after adding to item","epoch":1589475070,"epoch_utc":null},{"commit":"b4276643b70f7820f8f53df22b32fffb54e30ca2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 14 09:43:13 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 14 09:43:13 2020 -0700","stats":{"files_changed":4,"insertions":56,"deletions":0,"files":["tests/fixtures/centos-7.7/dmidecode.json","tests/fixtures/fedora32/dmidecode.json","tests/fixtures/ubuntu-18.04/dmidecode.json","tests/test_dmidecode.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/dmidecode.json","lines_changed":1},{"name":"tests/fixtures/fedora32/dmidecode.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dmidecode.json","lines_changed":1},{"name":"tests/test_dmidecode.py","lines_changed":53}]},"message":"add dmidecode tests and fixtures","epoch":1589474593,"epoch_utc":null},{"commit":"2ef00763bfe7c4348f30026759941efe39861a0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 14 09:33:45 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 14 09:33:45 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":4}]},"message":"fix first item","epoch":1589474025,"epoch_utc":null},{"commit":"54364928fc826ead7774a4cec1bcb73a5cb9ee0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 14 08:57:23 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu May 14 08:57:23 2020 -0700","stats":{"files_changed":2,"insertions":74,"deletions":81,"files":["docs/parsers/dmidecode.md","jc/parsers/dmidecode.py"],"file_stats":[{"name":"docs/parsers/dmidecode.md","lines_changed":37},{"name":"jc/parsers/dmidecode.py","lines_changed":118}]},"message":"fix oddities like hybrid single/multiline data and items containing multiple records","epoch":1589471843,"epoch_utc":null},{"commit":"09b3b4932b0fa4a2b18c88a8465c15a194b727e6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 10:51:38 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 10:51:38 2020 -0700","stats":{"files_changed":3,"insertions":35430,"deletions":0,"files":["tests/fixtures/centos-7.7/dmidecode.out","tests/fixtures/fedora32/dmidecode.out","tests/fixtures/ubuntu-18.04/dmidecode.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/dmidecode.out","lines_changed":11810},{"name":"tests/fixtures/fedora32/dmidecode.out","lines_changed":11810},{"name":"tests/fixtures/ubuntu-18.04/dmidecode.out","lines_changed":11810}]},"message":"add dmidecode output fixtures","epoch":1589392298,"epoch_utc":null},{"commit":"29d6670119d8fcd0344e90f01bfb6260aa936e50","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 10:18:49 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 10:18:49 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":10}]},"message":"convert integers","epoch":1589390329,"epoch_utc":null},{"commit":"2f654b5f1acda01192294f4c18a5a31363e7f387","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 10:13:27 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 10:13:27 2020 -0700","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["docs/parsers/dmidecode.md"],"file_stats":[{"name":"docs/parsers/dmidecode.md","lines_changed":37}]},"message":"doc update","epoch":1589390007,"epoch_utc":null},{"commit":"e53b9f5992450b53efc886b4fa9ca16f3dd07530","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 10:12:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 10:12:40 2020 -0700","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":37}]},"message":"add caveats to documentation","epoch":1589389960,"epoch_utc":null},{"commit":"addb234e6162c58750cb67947bc4776635bf54fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:44:20 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 09:44:20 2020 -0700","stats":{"files_changed":1,"insertions":153,"deletions":0,"files":["docs/parsers/dmidecode.md"],"file_stats":[{"name":"docs/parsers/dmidecode.md","lines_changed":153}]},"message":"add dmidecode doc","epoch":1589388260,"epoch_utc":null},{"commit":"76eca3b65911a0a340d3d94322a8145ee89c50da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:43:35 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 09:43:35 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":1}]},"message":"add dmidecode","epoch":1589388215,"epoch_utc":null},{"commit":"f90dec4c0ecf88623fb22273b7527ec8884826c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:43:23 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 09:43:23 2020 -0700","stats":{"files_changed":1,"insertions":94,"deletions":5,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":99}]},"message":"add examples to documentation","epoch":1589388203,"epoch_utc":null},{"commit":"8900a59d4cb424ff58d1eb27f8fda7ea0a668a5c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:31:12 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 09:31:12 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":19,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":20}]},"message":"simplify logic by removing redundant block","epoch":1589387472,"epoch_utc":null},{"commit":"6685138200d5955115707d04aad0293ea8af5b15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:25:02 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 09:25:02 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":2}]},"message":"fix for missing multi-line values that come immediately after a previous multi-line value","epoch":1589387102,"epoch_utc":null},{"commit":"4d3e65b980d50164b8220e59560822b9871580ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:00:32 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 09:00:32 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":5}]},"message":"fix missing values","epoch":1589385632,"epoch_utc":null},{"commit":"e9282bb546f560da6396f44e2ce9e04136348e2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 08:22:52 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed May 13 08:22:52 2020 -0700","stats":{"files_changed":2,"insertions":175,"deletions":0,"files":["jc/cli.py","jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/dmidecode.py","lines_changed":174}]},"message":"add dmidecode parser","epoch":1589383372,"epoch_utc":null},{"commit":"f5627a45947e5e76e5f3e64d9b30099fe0b962a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 11 11:03:02 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 11 11:03:02 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1589220182,"epoch_utc":null},{"commit":"81ffdb25105c681c8ed12336d220a102b7f4215e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 11 10:54:26 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 11 10:54:26 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"remove shebang for Fedora packaging","epoch":1589219666,"epoch_utc":null},{"commit":"4c00a99850cb6f69713be7c6ad9ffba11924d9b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 11 10:37:14 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 11 10:37:14 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1589218634,"epoch_utc":null},{"commit":"2bfcb45b28e2174a8bbc27237e619b5c232ccae8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 11 10:32:42 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 11 10:32:42 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":0}]},"message":"make cli.py executable","epoch":1589218362,"epoch_utc":null},{"commit":"ab0c10e791283affb227d0d5306701ba7fd29d13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 11 10:27:16 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon May 11 10:27:16 2020 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["LICENSE.md","README.md"],"file_stats":[{"name":"LICENSE.md","lines_changed":0},{"name":"README.md","lines_changed":0}]},"message":"remove execute permissions","epoch":1589218036,"epoch_utc":null},{"commit":"2c1935115de03a28fe92674b04b2542b0eccb8fe","merge":"99070fa d98e43d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:47:05 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sat May 9 11:47:05 2020 -0700","message":"Merge pull request #61 from kellyjonbrazil/dev\n\nDev v1.10.10","epoch":1589050025,"epoch_utc":null},{"commit":"d98e43dc78205d3224bfc1e67de2da3c5fb7ea9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:42:56 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 9 11:42:56 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"add netstat item","epoch":1589049776,"epoch_utc":null},{"commit":"9348988d646d9b9c9970c19e84f311554ae38e7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:41:30 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 9 11:41:30 2020 -0700","stats":{"files_changed":1,"insertions":12,"deletions":0,"files":["tests/test_netstat.py"],"file_stats":[{"name":"tests/test_netstat.py","lines_changed":12}]},"message":"add netstat test for Fedora32","epoch":1589049690,"epoch_utc":null},{"commit":"1285c664679c40b18327c89b85921a80b01f0191","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:36:23 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 9 11:36:23 2020 -0700","stats":{"files_changed":2,"insertions":140,"deletions":0,"files":["tests/fixtures/fedora32/netstat.json","tests/fixtures/fedora32/netstat.out"],"file_stats":[{"name":"tests/fixtures/fedora32/netstat.json","lines_changed":1},{"name":"tests/fixtures/fedora32/netstat.out","lines_changed":139}]},"message":"netstat with bluetooth section","epoch":1589049383,"epoch_utc":null},{"commit":"b7191bbc130e0f33d02c0a4819fa91ffff1599d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:36:03 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 9 11:36:03 2020 -0700","stats":{"files_changed":1,"insertions":14,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":15}]},"message":"handle bluetooth section (ignore for now)","epoch":1589049363,"epoch_utc":null},{"commit":"98b97509f7893cb95e9651ce9706db5c961aa997","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:25:13 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 9 11:25:13 2020 -0700","stats":{"files_changed":3,"insertions":6,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1589048713,"epoch_utc":null},{"commit":"2b2b570490f3834367a598579473001f45738e8a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:22:26 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 9 11:22:26 2020 -0700","stats":{"files_changed":3,"insertions":21,"deletions":0,"files":["tests/fixtures/fedora32/last.json","tests/fixtures/fedora32/last.out","tests/test_last.py"],"file_stats":[{"name":"tests/fixtures/fedora32/last.json","lines_changed":1},{"name":"tests/fixtures/fedora32/last.out","lines_changed":8},{"name":"tests/test_last.py","lines_changed":12}]},"message":"add tests for 'gone - no logout'","epoch":1589048546,"epoch_utc":null},{"commit":"cce2d1ff298f2284c43c4534144329f3533a81ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:22:01 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 9 11:22:01 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":6}]},"message":"add condition for 'gone - no logout'","epoch":1589048521,"epoch_utc":null},{"commit":"b79600c57249cbb65805caad2524cc2492342be6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:01:48 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 9 11:01:48 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"version bump","epoch":1589047308,"epoch_utc":null},{"commit":"140f1a85437745296b56976bef1b46514e323a4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:00:04 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat May 9 11:00:04 2020 -0700","stats":{"files_changed":7,"insertions":7,"deletions":7,"files":["tests/fixtures/centos-7.7/ls-R-newlines.json","tests/fixtures/centos-7.7/ls-R.json","tests/fixtures/centos-7.7/ls-glob.json","tests/fixtures/osx-10.14.6/ls-glob.json","tests/fixtures/ubuntu-18.04/ls-R-newlines.json","tests/fixtures/ubuntu-18.04/ls-R.json","tests/fixtures/ubuntu-18.04/ls-glob.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ls-R-newlines.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ls-R.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ls-glob.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-glob.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ls-R-newlines.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ls-R.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ls-glob.json","lines_changed":2}]},"message":"test fixes for issue #60","epoch":1589047204,"epoch_utc":null},{"commit":"e34657cfde6816ab7a7415d83580df0a1d98a5a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 15:26:11 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 8 15:26:11 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"fix issue #60 that was skipping the first file in some instances using -R without -l","epoch":1588976771,"epoch_utc":null},{"commit":"99070fa6073c4415a6faf8ca69dd6aa089af4062","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 10:51:13 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 8 10:51:13 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1588960273,"epoch_utc":null},{"commit":"2b46785b1f1281ee63df9159e36068f4607ad9b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 10:49:30 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 8 10:49:30 2020 -0700","stats":{"files_changed":1,"insertions":25,"deletions":3,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":28}]},"message":"add MIT license to vendorized IfconfigParser class","epoch":1588960170,"epoch_utc":null},{"commit":"c72562524b2b9aaca0be372bb24343158829ba5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 09:30:31 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 8 09:30:31 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"fully remove tests from packaging","epoch":1588955431,"epoch_utc":null},{"commit":"b7dd6441c7e3f54f8a260fceef49aae6816c7151","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 08:20:33 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 8 08:20:33 2020 -0700","stats":{"files_changed":2,"insertions":5,"deletions":1,"files":["changelog.txt","jc/cli.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/cli.py","lines_changed":2}]},"message":"version bump","epoch":1588951233,"epoch_utc":null},{"commit":"31fcc2f755ad86622cf51a75879b14d44f246300","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 08:20:21 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 8 08:20:21 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["MANIFEST.in"],"file_stats":[{"name":"MANIFEST.in","lines_changed":1}]},"message":"remove manifest.in - no longer needed due to removing tests","epoch":1588951221,"epoch_utc":null},{"commit":"b391aa14bceffedb5a9c13f3f908923790edefc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 08:19:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 8 08:19:51 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["setup.cfg"],"file_stats":[{"name":"setup.cfg","lines_changed":2}]},"message":"add license_file to metadata","epoch":1588951191,"epoch_utc":null},{"commit":"d3c45debbb6690acd341fbcc9b99d1ae4cf0a43c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 08:19:31 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 8 08:19:31 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":5}]},"message":"remove tests and add license file","epoch":1588951171,"epoch_utc":null},{"commit":"5b08469b874553744bd5c5b1fa6581f4dcffacd0","merge":"8cf00a2 4a77ec6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 1 15:55:50 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri May 1 15:55:50 2020 -0700","message":"Merge pull request #57 from kellyjonbrazil/dev\n\nDev v1.10.7","epoch":1588373750,"epoch_utc":null},{"commit":"4a77ec63a46554c84e646d31564230774ed87431","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 1 14:57:50 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 1 14:57:50 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["docs/parsers/ifconfig.md"],"file_stats":[{"name":"docs/parsers/ifconfig.md","lines_changed":11}]},"message":"add IfconfigParser class","epoch":1588370270,"epoch_utc":null},{"commit":"d13606b6dc2c207be6dea89a2c3e713c18a574b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 1 14:37:23 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 1 14:37:23 2020 -0700","stats":{"files_changed":4,"insertions":7,"deletions":6,"files":["changelog.txt","jc/cli.py","requirements.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"requirements.txt","lines_changed":3},{"name":"setup.py","lines_changed":5}]},"message":"modify dependencies for easier packaging into Fedora","epoch":1588369043,"epoch_utc":null},{"commit":"05291c93bba1aa364ba1ac7f2508e24bb362a814","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 1 14:36:54 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri May 1 14:36:54 2020 -0700","stats":{"files_changed":1,"insertions":198,"deletions":3,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":201}]},"message":"vendorize ifconfig-parser module for easier packaging in Fedora","epoch":1588369014,"epoch_utc":null},{"commit":"8cf00a208eb8493300331e7361b72e4f9e3f140e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 29 15:57:55 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 29 15:57:55 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"change text to strings","epoch":1588201075,"epoch_utc":null},{"commit":"06d73c88767a5b4d6003231c897c447ee5e1faa5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 23 07:06:44 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 23 07:06:44 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1587650804,"epoch_utc":null},{"commit":"649c646ea25ac7f89900cffa8919df01671bd32d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 22 16:08:34 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 22 16:08:34 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"add brew install option","epoch":1587596914,"epoch_utc":null},{"commit":"b7756d92501a7b8ba8e77d77d9d3718a58425beb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 20 16:33:26 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 20 16:33:26 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1587425606,"epoch_utc":null},{"commit":"1cd2cd954c21e5caec333507bd81819c82d45b49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 20 16:31:22 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Apr 20 16:31:22 2020 -0700","stats":{"files_changed":4,"insertions":2,"deletions":16,"files":["tests/fixtures/osx-10.11.6/du.json","tests/fixtures/osx-10.11.6/du.out","tests/fixtures/osx-10.14.6/du.json","tests/fixtures/osx-10.14.6/du.out"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/du.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/du.out","lines_changed":7},{"name":"tests/fixtures/osx-10.14.6/du.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/du.out","lines_changed":7}]},"message":"remove references to homebrew/shim to allow tests to pass in homebrew packaging ci/cd","epoch":1587425482,"epoch_utc":null},{"commit":"72020b8da999ddca6f9ba82da235c9f42e4f4273","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 17 10:20:25 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 17 10:20:25 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":22,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":24}]},"message":"move packages info to jc-packages github page","epoch":1587144025,"epoch_utc":null},{"commit":"cf9720b749e7fc8caed0d2f1f2b1727a22a156b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 16 14:03:31 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 16 14:03:31 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"update install info","epoch":1587071011,"epoch_utc":null},{"commit":"967b9db7f90a3c3a0352edde7f4455c5f5d45b18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 15 21:27:22 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 15 21:27:22 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":6}]},"message":"spelling","epoch":1587011242,"epoch_utc":null},{"commit":"bb3acb1182f4d509f9ddc7dfcffa4578e0a2bd5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 15 21:25:06 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 15 21:25:06 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1587011106,"epoch_utc":null},{"commit":"560c7f7e6d1f8a69ab026ddbff753d232ca1d00b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 15 21:23:55 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 15 21:23:55 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1587011035,"epoch_utc":null},{"commit":"79b28417644e00b933f531374d2f7fe8051e61be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 15 21:22:43 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Apr 15 21:22:43 2020 -0700","stats":{"files_changed":1,"insertions":26,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":26}]},"message":"add new binary package install info","epoch":1587010963,"epoch_utc":null},{"commit":"a06a89cbd11026aa3910fadd1eff7fe388d02507","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 14 11:15:24 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 14 11:15:24 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1586888124,"epoch_utc":null},{"commit":"431bd969eb4809424fe99a02a7decb98bce9ea51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 14 11:10:31 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 14 11:10:31 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"use sys.exit(0) instead of exit()","epoch":1586887831,"epoch_utc":null},{"commit":"c87b722aec6e6964c516bbb8e80667ad7d9c6bc7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:23:58 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 12 13:23:58 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"spelling","epoch":1586723038,"epoch_utc":null},{"commit":"3688b8b014a1cf753b2207fbf3ebf0292c3fd672","merge":"99f7842 07b8d9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:21:38 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Apr 12 13:21:38 2020 -0700","message":"Merge pull request #56 from kellyjonbrazil/dev\n\nDev v1.10.4","epoch":1586722898,"epoch_utc":null},{"commit":"07b8d9e0c0d723d93e6c652f5b6156c467c451c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:18:28 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 12 13:18:28 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1586722708,"epoch_utc":null},{"commit":"7454b53e395e9122c00d4cf06b1c2af109913d7a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:13:28 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 12 13:13:28 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"formatting","epoch":1586722408,"epoch_utc":null},{"commit":"3d6a76024de0f9dcf91a4ab49cabe461074114fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:10:57 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 12 13:10:57 2020 -0700","stats":{"files_changed":1,"insertions":18,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":18}]},"message":"update with JC_COLORS info","epoch":1586722257,"epoch_utc":null},{"commit":"421b9809575a8de00229af4b851739889638ac74","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:03:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 12 13:03:09 2020 -0700","stats":{"files_changed":1,"insertions":18,"deletions":37,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":55}]},"message":"JC_COLORS working","epoch":1586721789,"epoch_utc":null},{"commit":"4a22e27d6a80a988f4de17bce421110d6abb8867","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 12:43:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Apr 12 12:43:51 2020 -0700","stats":{"files_changed":1,"insertions":64,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":64}]},"message":"add set_env_colors function","epoch":1586720631,"epoch_utc":null},{"commit":"99f7842dee0f79cf933fae185cf8b0ed7c8b210f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 9 13:38:33 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 9 13:38:33 2020 -0700","stats":{"files_changed":3,"insertions":11,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":8},{"name":"setup.py","lines_changed":2}]},"message":"fix brek on pipe error","epoch":1586464713,"epoch_utc":null},{"commit":"7f869b4b187d70752207a7e74c13b858446f898f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 9 07:31:21 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 9 07:31:21 2020 -0700","stats":{"files_changed":3,"insertions":9,"deletions":11,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":15},{"name":"setup.py","lines_changed":2}]},"message":"change colors to ansi and match jello style","epoch":1586442681,"epoch_utc":null},{"commit":"9665f4ee84680f3a8154b8a43ea668af2907782c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 7 08:44:15 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Apr 7 08:44:15 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add pypi badge","epoch":1586274255,"epoch_utc":null},{"commit":"606904d48b1c7e0c19a940b5be0b564d1b5be6c8","merge":"302f05c 3f5279b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:28:21 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sat Apr 4 17:28:21 2020 -0700","message":"Merge pull request #53 from kellyjonbrazil/dev\n\nDev v1.10.1","epoch":1586046501,"epoch_utc":null},{"commit":"3f5279b97c386c736e0e2faa5c39d68ef89c46aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:25:55 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:25:55 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to 1.10.1","epoch":1586046355,"epoch_utc":null},{"commit":"f5ec21e6ac612566af93158fc3968b901322d04a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:19:32 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:19:32 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_luf.py"],"file_stats":[{"name":"jc/parsers/systemctl_luf.py","lines_changed":4}]},"message":"use in instead of find()","epoch":1586045972,"epoch_utc":null},{"commit":"578a284465f014fe71ad6ac00bd41dc24ab2ced9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:18:39 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:18:39 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_ls.py"],"file_stats":[{"name":"jc/parsers/systemctl_ls.py","lines_changed":4}]},"message":"use in instead of find()","epoch":1586045919,"epoch_utc":null},{"commit":"422e392d9d98a7864312fc7fbd7f45537b71acbe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:17:43 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:17:43 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_lj.py"],"file_stats":[{"name":"jc/parsers/systemctl_lj.py","lines_changed":4}]},"message":"use in instead of find()","epoch":1586045863,"epoch_utc":null},{"commit":"54dfffd34a17d1194690142ac403391fc65bb85f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:16:25 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:16:25 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl.py"],"file_stats":[{"name":"jc/parsers/systemctl.py","lines_changed":4}]},"message":"use in instead of find()","epoch":1586045785,"epoch_utc":null},{"commit":"cffba64d2b9165b44a8856665807111a2ad3a190","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:15:03 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:15:03 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":14}]},"message":"use in and startswith() instead of find()","epoch":1586045703,"epoch_utc":null},{"commit":"56a0c12a59bb252d3b7d0929f9fb19b4d96a8437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:12:22 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:12:22 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/pip_list.py"],"file_stats":[{"name":"jc/parsers/pip_list.py","lines_changed":6}]},"message":"use in instead of find()","epoch":1586045542,"epoch_utc":null},{"commit":"c174d3de18923b2b03befb5a7dfcbd977a8e147e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:10:46 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:10:46 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":14}]},"message":"use in and startswith() instead of find()","epoch":1586045446,"epoch_utc":null},{"commit":"a9c59ef9fc1bb68c9d0d7beffbeb670baf5b1e3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:07:38 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:07:38 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/mount.py"],"file_stats":[{"name":"jc/parsers/mount.py","lines_changed":2}]},"message":"fix logic to not for ' type ' in cleandata[0]","epoch":1586045258,"epoch_utc":null},{"commit":"abdb9b26732a6a71f5938d665b2ca43a381e1b33","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:05:17 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:05:17 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/mount.py"],"file_stats":[{"name":"jc/parsers/mount.py","lines_changed":4}]},"message":"use in instead of find()","epoch":1586045117,"epoch_utc":null},{"commit":"548aaab6262878d21f8b9539950cfad48638e35c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:04:20 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:04:20 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":42,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":43}]},"message":"remove old commented code","epoch":1586045060,"epoch_utc":null},{"commit":"20571c87ae9e1ca8a1f3120511910751420a35ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:01:56 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 17:01:56 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":6}]},"message":"us in instead of find()","epoch":1586044916,"epoch_utc":null},{"commit":"19e49200de5c731f76b42e80388c5223e8097e39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:59:48 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 16:59:48 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":2}]},"message":"version bump","epoch":1586044788,"epoch_utc":null},{"commit":"d32f5c67a91ede572c88e431b2ad0ce4d6c87dec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:59:03 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 16:59:03 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":4}]},"message":"use startswith() instead of find()","epoch":1586044743,"epoch_utc":null},{"commit":"b83b626435c55d2aa63e56dd8f22603da59e7626","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:57:23 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 16:57:23 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":4}]},"message":"use startswith() instead of find()","epoch":1586044643,"epoch_utc":null},{"commit":"ab2c1b25ec5da5f2ba238868c4dfca95a44da30e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:56:11 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 16:56:11 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/hosts.py"],"file_stats":[{"name":"jc/parsers/hosts.py","lines_changed":6}]},"message":"use startswith() and in instead of find()","epoch":1586044571,"epoch_utc":null},{"commit":"f2d46313a4508f13656cdb360f83fdf4116cc7d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:53:55 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 16:53:55 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/fstab.py"],"file_stats":[{"name":"jc/parsers/fstab.py","lines_changed":4}]},"message":"use startswith() instead of find()","epoch":1586044435,"epoch_utc":null},{"commit":"87e4796a6c936793e2784346819c7033d59b91e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:52:45 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 16:52:45 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":4}]},"message":"use in instead of .find()","epoch":1586044365,"epoch_utc":null},{"commit":"0014a5c2f4c056c2683d6614a65d778b1f527932","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:51:36 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 16:51:36 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab_u.py"],"file_stats":[{"name":"jc/parsers/crontab_u.py","lines_changed":6}]},"message":"us startswith() and in instead of .find()","epoch":1586044296,"epoch_utc":null},{"commit":"7af56e0dadab7d8b9538f3b7a550ad6dd1ac217d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:50:05 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 16:50:05 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":6}]},"message":"use startswith() and in instead of find()","epoch":1586044205,"epoch_utc":null},{"commit":"a5ae6e3c017b041f9079ff12455b7551ad204cb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:48:16 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 16:48:16 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":6}]},"message":"use startswith() instead of find()","epoch":1586044096,"epoch_utc":null},{"commit":"fe1a0d1faf46f55ed2888ed0065f3f3144691ed8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:46:09 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Apr 4 16:46:09 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":9,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":19}]},"message":"use in instead of .find()","epoch":1586043969,"epoch_utc":null},{"commit":"302f05cdda305e46e69b74d5b0096f64c17da637","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 3 14:50:20 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 3 14:50:20 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"prettify style block","epoch":1585950620,"epoch_utc":null},{"commit":"c0044be7b0b6dadcffb64cb88ad92bf653dd2b6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 3 14:48:19 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 3 14:48:19 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"rename color grey to gray","epoch":1585950499,"epoch_utc":null},{"commit":"01100788070b82b4b827ef356972fa9b8f737eeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 3 14:47:08 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Apr 3 14:47:08 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update badge","epoch":1585950428,"epoch_utc":null},{"commit":"42eacb45f8fdf8085c6231bf5297629c2ec97c22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 3 14:45:04 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Apr 3 14:45:04 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"rename to Tests","epoch":1585950304,"epoch_utc":null},{"commit":"a43e2e19916662d509883457c160d7f95f97ae12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 2 17:40:06 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 2 17:40:06 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add -m option info","epoch":1585874406,"epoch_utc":null},{"commit":"c8b721d4f6e46a2db77e1140b9caeb3b403fef72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 2 17:35:35 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 2 17:35:35 2020 -0700","stats":{"files_changed":4,"insertions":9,"deletions":3,"files":["changelog.txt","jc/cli.py","requirements.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/cli.py","lines_changed":2},{"name":"requirements.txt","lines_changed":1},{"name":"setup.py","lines_changed":5}]},"message":"version bump to 1.10.0","epoch":1585874135,"epoch_utc":null},{"commit":"d0bfddc3d9989444757d6668726c916e5363620b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 2 17:29:25 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 2 17:29:25 2020 -0700","stats":{"files_changed":1,"insertions":41,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":47}]},"message":"add color and -m monochrome option","epoch":1585873765,"epoch_utc":null},{"commit":"6b925a16c87cf75bb30edfda38511e8f84a4f6d6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 2 10:55:32 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Apr 2 10:55:32 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add tests badge","epoch":1585850132,"epoch_utc":null},{"commit":"89ebd9fc2271d2c76353d5707bfd4afb7dedc278","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 27 07:31:08 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 27 07:31:08 2020 -0700","stats":{"files_changed":2,"insertions":20,"deletions":0,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":10},{"name":"jc/parsers/dig.py","lines_changed":10}]},"message":"add axfr info to schema","epoch":1585319468,"epoch_utc":null},{"commit":"6b4ba662317629839aa62fbcfefb8ed3337c37ef","merge":"8ec8cd6 5b697dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 17:15:13 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Mar 26 17:15:13 2020 -0700","message":"Merge pull request #52 from kellyjonbrazil/dev\n\nDev v1.9.3","epoch":1585268113,"epoch_utc":null},{"commit":"5b697dc38141cdd47fcdd63bf295a80a7da86697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 17:09:29 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 26 17:09:29 2020 -0700","stats":{"files_changed":1,"insertions":72,"deletions":0,"files":["tests/test_dig.py"],"file_stats":[{"name":"tests/test_dig.py","lines_changed":72}]},"message":"add more dig tests","epoch":1585267769,"epoch_utc":null},{"commit":"9ba73c95d1a528a9a92be4068805bb5aa027901e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 16:45:29 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 26 16:45:29 2020 -0700","stats":{"files_changed":7,"insertions":215,"deletions":0,"files":["tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/centos-7.7/dig-axfr.out","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-axfr.out","tests/fixtures/ubuntu-18.04/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-axfr.out","tests/test_dig.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/dig-axfr.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/dig-axfr.out","lines_changed":60},{"name":"tests/fixtures/osx-10.14.6/dig-axfr.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig-axfr.out","lines_changed":59},{"name":"tests/fixtures/ubuntu-18.04/dig-axfr.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dig-axfr.out","lines_changed":57},{"name":"tests/test_dig.py","lines_changed":36}]},"message":"add tests","epoch":1585266329,"epoch_utc":null},{"commit":"93aa39044749c4c0ed749f62fb00fc1c76dc5af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 16:30:17 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 26 16:30:17 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to v1.9.3","epoch":1585265417,"epoch_utc":null},{"commit":"3cfb8945ddd83c00a720c44e2c1d97da0d8bad25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 16:29:59 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 26 16:29:59 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":18}]},"message":"use startswith() instead of find","epoch":1585265399,"epoch_utc":null},{"commit":"cd8d38f2a136c4f35efc020b3476d09e965b71f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 16:22:53 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 26 16:22:53 2020 -0700","stats":{"files_changed":1,"insertions":50,"deletions":1,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":51}]},"message":"add axfr support","epoch":1585264973,"epoch_utc":null},{"commit":"8ec8cd62944c59c462ab9f520c1dcfd14218b1ed","merge":"e5bea9a c028113","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 17:09:04 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Mar 12 17:09:04 2020 -0700","message":"Merge pull request #50 from kellyjonbrazil/dev\n\nDev v1.9.2","epoch":1584058144,"epoch_utc":null},{"commit":"c02811356153c2b4f8b2d7efb7f48bf8f7748068","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 17:06:55 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 12 17:06:55 2020 -0700","stats":{"files_changed":3,"insertions":6,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":5},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to v1.9.2","epoch":1584058015,"epoch_utc":null},{"commit":"5f22e1c8031b808ef02ffe078408bd58cc76e570","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 17:02:26 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 12 17:02:26 2020 -0700","stats":{"files_changed":3,"insertions":33,"deletions":0,"files":["tests/fixtures/osx-10.14.6/arp-a2.json","tests/fixtures/osx-10.14.6/arp-a2.out","tests/test_arp.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/arp-a2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/arp-a2.out","lines_changed":20},{"name":"tests/test_arp.py","lines_changed":12}]},"message":"fix and test for osx arp entries without ifscope","epoch":1584057746,"epoch_utc":null},{"commit":"d3351787e5cabd064c19e6617e9535e501686404","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 16:52:33 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 12 16:52:33 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":9,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":19}]},"message":"change osx detection","epoch":1584057153,"epoch_utc":null},{"commit":"e5bea9ae3b0a70b38f7da7dd9184343dbbd18887","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 08:52:01 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 12 08:52:01 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/file.py"],"file_stats":[{"name":"jc/parsers/file.py","lines_changed":2}]},"message":"version bump","epoch":1584028321,"epoch_utc":null},{"commit":"93c710abe9171568f61f65c4f84c040ffc24870c","merge":"400f5a4 c29e7cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 08:23:10 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Mar 12 08:23:10 2020 -0700","message":"Merge pull request #49 from kellyjonbrazil/dev\n\nDev v1.9.1","epoch":1584026590,"epoch_utc":null},{"commit":"c29e7cfe5cc4b2151912c6f618137d1b6c39c7be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 08:17:28 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 12 08:17:28 2020 -0700","stats":{"files_changed":4,"insertions":9,"deletions":6,"files":["README.md","changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to 1.9.1","epoch":1584026248,"epoch_utc":null},{"commit":"cb5c1ba00dc0e02bf6ad6c40096d99e319fa6171","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 17:04:48 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 11 17:04:48 2020 -0700","stats":{"files_changed":3,"insertions":101,"deletions":0,"files":["tests/fixtures/osx-10.14.6/file2.json","tests/fixtures/osx-10.14.6/file2.out","tests/test_file.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/file2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/file2.out","lines_changed":88},{"name":"tests/test_file.py","lines_changed":12}]},"message":"add tests for fix to make the file parser splitting more robust","epoch":1583971488,"epoch_utc":null},{"commit":"9a012b94e1942a14bc6dae3fb967ef618819c77b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 15:40:34 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 11 15:40:34 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/file.py"],"file_stats":[{"name":"jc/parsers/file.py","lines_changed":2}]},"message":"make splitting more robust","epoch":1583966434,"epoch_utc":null},{"commit":"400f5a44ece280cb0097d806b78a9490d2905600","merge":"c7cd2b6 a2ab5ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 13:37:22 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 11 13:37:22 2020 -0700","message":"Merge pull request #48 from kellyjonbrazil/dev\n\nDev v1.9.0","epoch":1583959042,"epoch_utc":null},{"commit":"a2ab5bab91ea980399df1afb9d8071fa3282d04e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 13:32:58 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 11 13:32:58 2020 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to v1.9.0","epoch":1583958778,"epoch_utc":null},{"commit":"fc8ab27361df3359b706125531b2643612d6996a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 13:24:55 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 11 13:24:55 2020 -0700","stats":{"files_changed":6,"insertions":93,"deletions":51,"files":["README.md","docs/parsers/ntpq.md","jc/parsers/ntpq.py","tests/fixtures/ubuntu-18.04/ntpq-p2.json","tests/fixtures/ubuntu-18.04/ntpq-p2.out","tests/test_ntpq.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"docs/parsers/ntpq.md","lines_changed":40},{"name":"jc/parsers/ntpq.py","lines_changed":59},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p2.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p2.out","lines_changed":24},{"name":"tests/test_ntpq.py","lines_changed":12}]},"message":"bugfix for misaligned columns and additional test for ntpq #31","epoch":1583958295,"epoch_utc":null},{"commit":"59f19d33a5c6677ea756a9424fdb032b430511a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 12:39:59 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 11 12:39:59 2020 -0700","stats":{"files_changed":7,"insertions":153,"deletions":0,"files":["tests/fixtures/centos-7.7/file.json","tests/fixtures/centos-7.7/file.out","tests/fixtures/osx-10.14.6/file.json","tests/fixtures/osx-10.14.6/file.out","tests/fixtures/ubuntu-18.04/file.json","tests/fixtures/ubuntu-18.04/file.out","tests/test_file.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/file.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/file.out","lines_changed":25},{"name":"tests/fixtures/osx-10.14.6/file.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/file.out","lines_changed":53},{"name":"tests/fixtures/ubuntu-18.04/file.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/file.out","lines_changed":20},{"name":"tests/test_file.py","lines_changed":52}]},"message":"add file command tests for #41","epoch":1583955599,"epoch_utc":null},{"commit":"dfc96181159748d019419a2cba7aa9cb3b7a2a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 12:20:58 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 11 12:20:58 2020 -0700","stats":{"files_changed":6,"insertions":260,"deletions":1,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/file.md","jc/cli.py","jc/parsers/file.py"],"file_stats":[{"name":"README.md","lines_changed":36},{"name":"changelog.txt","lines_changed":5},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/file.md","lines_changed":90},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/file.py","lines_changed":128}]},"message":"add file parser for issue #41","epoch":1583954458,"epoch_utc":null},{"commit":"8e02e5c75a11cf205299ee6f87b67f9b787cf55e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 09:21:14 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 11 09:21:14 2020 -0700","stats":{"files_changed":2,"insertions":6,"deletions":5,"files":["jc/cli.py","tests/test_cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8},{"name":"tests/test_cli.py","lines_changed":3}]},"message":"fix issue with getting options with some commands #47","epoch":1583943674,"epoch_utc":null},{"commit":"970493ab9346a344b21be7614903ad81bc65a6e9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 06:22:54 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 11 06:22:54 2020 -0700","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["jc/parsers/airport.py","jc/parsers/airport_s.py"],"file_stats":[{"name":"jc/parsers/airport.py","lines_changed":1},{"name":"jc/parsers/airport_s.py","lines_changed":1}]},"message":"add magic commands","epoch":1583932974,"epoch_utc":null},{"commit":"64d78956eb33ca0a2564fded3d12729ee036a915","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 22:18:26 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 22:18:26 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"update acknowledgment","epoch":1583903906,"epoch_utc":null},{"commit":"40c05346f4098f8eea14c42da07df3faa143587a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 22:16:40 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 22:16:40 2020 -0700","stats":{"files_changed":1,"insertions":12,"deletions":25,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":37}]},"message":"re-adding optimizations from https://github.com/philippeitis","epoch":1583903800,"epoch_utc":null},{"commit":"e9b0bc1409a824a82dabd2479892b7d18bad8c3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 22:03:54 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 22:03:54 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/airport.py"],"file_stats":[{"name":"jc/parsers/airport.py","lines_changed":2}]},"message":"doc update","epoch":1583903034,"epoch_utc":null},{"commit":"798e6bb7d939176bb36771a6d41bd55403d583be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 22:03:44 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 22:03:44 2020 -0700","stats":{"files_changed":2,"insertions":29,"deletions":0,"files":["tests/fixtures/osx-10.14.6/airport-s.json","tests/test_airport_s.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/airport-s.json","lines_changed":1},{"name":"tests/test_airport_s.py","lines_changed":28}]},"message":"tests passing for airport -s. issue #46","epoch":1583903024,"epoch_utc":null},{"commit":"12a370deed03ba42d7b7ebb410195ce5f32bb9c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 21:51:02 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 21:51:02 2020 -0700","stats":{"files_changed":8,"insertions":372,"deletions":9,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/airport.md","docs/parsers/airport_s.md","jc/cli.py","jc/parsers/airport.py","jc/parsers/airport_s.py"],"file_stats":[{"name":"README.md","lines_changed":47},{"name":"changelog.txt","lines_changed":2},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/airport.md","lines_changed":4},{"name":"docs/parsers/airport_s.md","lines_changed":136},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/airport.py","lines_changed":5},{"name":"jc/parsers/airport_s.py","lines_changed":185}]},"message":"add airport -s parser for issue #46","epoch":1583902262,"epoch_utc":null},{"commit":"553bfbe1a0dd866851ba7eca66e9295c2097ad86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 21:02:17 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 21:02:17 2020 -0700","stats":{"files_changed":3,"insertions":40,"deletions":6,"files":["docs/parsers/airport.md","jc/parsers/airport.py","tests/test_airport.py"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":9},{"name":"jc/parsers/airport.py","lines_changed":9},{"name":"tests/test_airport.py","lines_changed":28}]},"message":"tests passing for airport -I. Issue #46","epoch":1583899337,"epoch_utc":null},{"commit":"52494321fcfe0dc7ee71d8d78210b3c10372a237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 20:55:07 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 20:55:07 2020 -0700","stats":{"files_changed":5,"insertions":120,"deletions":15,"files":["README.md","docs/parsers/airport.md","jc/parsers/airport.py","tests/fixtures/osx-10.14.6/airport-I.json","tests/fixtures/osx-10.14.6/airport-I.out"],"file_stats":[{"name":"README.md","lines_changed":22},{"name":"docs/parsers/airport.md","lines_changed":48},{"name":"jc/parsers/airport.py","lines_changed":62},{"name":"tests/fixtures/osx-10.14.6/airport-I.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/airport-I.out","lines_changed":2}]},"message":"fixes and docs for airport parser issue #46","epoch":1583898907,"epoch_utc":null},{"commit":"c6c9e06496683d2dd3586d17085801c7e698d960","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 20:35:52 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 20:35:52 2020 -0700","stats":{"files_changed":7,"insertions":196,"deletions":1,"files":["changelog.txt","docgen.sh","docs/parsers/airport.md","jc/cli.py","jc/parsers/airport.py","tests/fixtures/osx-10.14.6/airport-I.out","tests/fixtures/osx-10.14.6/airport-s.out"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/airport.md","lines_changed":64},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/airport.py","lines_changed":98},{"name":"tests/fixtures/osx-10.14.6/airport-I.out","lines_changed":15},{"name":"tests/fixtures/osx-10.14.6/airport-s.out","lines_changed":15}]},"message":"added airport command parser","epoch":1583897752,"epoch_utc":null},{"commit":"e3a6c05a58a2451e70975d8fabf644c56603c73d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 20:26:53 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 20:26:53 2020 -0700","stats":{"files_changed":5,"insertions":64,"deletions":17,"files":["docs/parsers/timedatectl.md","jc/parsers/timedatectl.py","tests/fixtures/centos-7.7/timedatectl.json","tests/fixtures/ubuntu-18.04/timedatectl.json","tests/test_timedatectl.py"],"file_stats":[{"name":"docs/parsers/timedatectl.md","lines_changed":18},{"name":"jc/parsers/timedatectl.py","lines_changed":21},{"name":"tests/fixtures/centos-7.7/timedatectl.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/timedatectl.json","lines_changed":1},{"name":"tests/test_timedatectl.py","lines_changed":40}]},"message":"timedatectl fixes, tests, and fixtures for issue #42","epoch":1583897213,"epoch_utc":null},{"commit":"391d06f68d1f45d33590d5407d3a5e4f723af717","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 20:16:41 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 20:16:41 2020 -0700","stats":{"files_changed":7,"insertions":35,"deletions":35,"files":["README.md","docs/parsers/ntpq.md","jc/parsers/ntpq.py","tests/fixtures/centos-7.7/ntpq-p.json","tests/fixtures/centos-7.7/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-p.json","tests/fixtures/ubuntu-18.04/ntpq-pn.json"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docs/parsers/ntpq.md","lines_changed":26},{"name":"jc/parsers/ntpq.py","lines_changed":32},{"name":"tests/fixtures/centos-7.7/ntpq-p.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ntpq-pn.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ntpq-pn.json","lines_changed":2}]},"message":"change selection_state to state","epoch":1583896601,"epoch_utc":null},{"commit":"99804ea06e0c70e3a82ddc7f9c7a42343374d700","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 18:37:55 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 18:37:55 2020 -0700","stats":{"files_changed":6,"insertions":222,"deletions":0,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/timedatectl.md","jc/cli.py","jc/parsers/timedatectl.py"],"file_stats":[{"name":"README.md","lines_changed":15},{"name":"changelog.txt","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/timedatectl.md","lines_changed":85},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/timedatectl.py","lines_changed":119}]},"message":"added timedatectl status parser","epoch":1583890675,"epoch_utc":null},{"commit":"51935deb2ad18e4ea3ca16954ce810354f6095a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 18:00:47 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 18:00:47 2020 -0700","stats":{"files_changed":2,"insertions":21,"deletions":0,"files":["tests/fixtures/centos-7.7/timedatectl.out","tests/fixtures/ubuntu-18.04/timedatectl.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/timedatectl.out","lines_changed":14},{"name":"tests/fixtures/ubuntu-18.04/timedatectl.out","lines_changed":7}]},"message":"timedatectl test fixtures","epoch":1583888447,"epoch_utc":null},{"commit":"b24d0c3a475b88d9ccf1a8fe29715ee60972fcad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 18:00:26 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 18:00:26 2020 -0700","stats":{"files_changed":2,"insertions":34,"deletions":2,"files":["README.md","jc/parsers/ntpq.py"],"file_stats":[{"name":"README.md","lines_changed":33},{"name":"jc/parsers/ntpq.py","lines_changed":3}]},"message":"ntpq docs","epoch":1583888426,"epoch_utc":null},{"commit":"762a886d6fdf5c2ad21d81868d138fb32621ed1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 15:17:25 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 15:17:25 2020 -0700","stats":{"files_changed":8,"insertions":133,"deletions":0,"files":["tests/fixtures/centos-7.7/ntpq-p.json","tests/fixtures/centos-7.7/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-p.json","tests/fixtures/ubuntu-18.04/ntpq-p.out","tests/fixtures/ubuntu-18.04/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-pn.out","tests/fixtures/ubuntu-18.04/ntqp-p.out","tests/test_ntpq.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ntpq-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ntpq-pn.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-18.04/ntpq-pn.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ntpq-pn.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-18.04/ntqp-p.out","lines_changed":21},{"name":"tests/test_ntpq.py","lines_changed":66}]},"message":"add ntpq tests","epoch":1583878645,"epoch_utc":null},{"commit":"2c3e9ddfe47f56cd7edc2fdf6317f7ecec0b7918","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 14:18:55 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 10 14:18:55 2020 -0700","stats":{"files_changed":7,"insertions":543,"deletions":0,"files":["changelog.txt","docgen.sh","docs/parsers/ntpq.md","jc/cli.py","jc/parsers/ntpq.py","tests/fixtures/centos-7.7/ntpq-p.out","tests/fixtures/centos-7.7/ntpq-pn.out"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ntpq.md","lines_changed":235},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/ntpq.py","lines_changed":291},{"name":"tests/fixtures/centos-7.7/ntpq-p.out","lines_changed":6},{"name":"tests/fixtures/centos-7.7/ntpq-pn.out","lines_changed":6}]},"message":"add ntpq parser for issue #31","epoch":1583875135,"epoch_utc":null},{"commit":"c7cd2b63c8f24e9d17c458880fe401d8032395ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 9 11:46:17 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 9 11:46:17 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":91,"files":["tests/fixtures/generic/oscar_age_male.csv"],"file_stats":[{"name":"tests/fixtures/generic/oscar_age_male.csv","lines_changed":91}]},"message":"delete unused test file","epoch":1583779577,"epoch_utc":null},{"commit":"f0528ea83112e71ff51c89be27fc9bbdfbbf1951","merge":"b5eaff2 5bc5596","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:54:13 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Mar 8 14:54:13 2020 -0700","message":"Merge pull request #45 from kellyjonbrazil/dev\n\nDev v1.8.1","epoch":1583704453,"epoch_utc":null},{"commit":"5bc5596f604fb87dffbfdf44ce2395b16bf01297","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:49:23 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 8 14:49:23 2020 -0700","stats":{"files_changed":4,"insertions":17,"deletions":4,"files":["changelog.txt","jc/cli.py","setup.py","tests/test_ls.py"],"file_stats":[{"name":"changelog.txt","lines_changed":5},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2},{"name":"tests/test_ls.py","lines_changed":12}]},"message":"version bump to 1.8.1","epoch":1583704163,"epoch_utc":null},{"commit":"2c27ac46be803b583caf82c1765bd0c35cee8bc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:43:51 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 8 14:43:51 2020 -0700","stats":{"files_changed":2,"insertions":2454,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-lR-empty-folder.json","tests/fixtures/osx-10.14.6/ls-lR-empty-folder.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ls-lR-empty-folder.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-lR-empty-folder.out","lines_changed":2453}]},"message":"add ls test fixtures","epoch":1583703831,"epoch_utc":null},{"commit":"caad840153e40dc660a2d5e06a96f3451fef25f9","merge":"aff86ae 65bd7e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:19:37 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Mar 8 14:19:37 2020 -0700","message":"Merge pull request #44 from philippeitis/patch-5\n\nMove core magic() logic into seperate function for testability, minor tweaks","epoch":1583702377,"epoch_utc":null},{"commit":"65bd7e2904016141c1ed53cdd437865c66d7628e","merge":"17b6efe c3d7d7d","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Sun Mar 8 14:10:35 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Mar 8 14:10:35 2020 -0700","message":"Merge pull request #1 from kellyjonbrazil/pr/44\n\nMerge changes","epoch":1583701835,"epoch_utc":null},{"commit":"c3d7d7db12d4870fc4499e0e3445d85ae89f2aea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:03:08 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 8 14:03:08 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"removed whitespace","epoch":1583701388,"epoch_utc":null},{"commit":"56053103625af6fb7fa749fc5bc3dbdc62fc223c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:02:54 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 8 14:02:54 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":4,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":15}]},"message":"added tests, removed os import, changed to 'assertEqual'","epoch":1583701374,"epoch_utc":null},{"commit":"17b6efe82e6a558353b011c543489eaaf3a6d3ac","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Sun Mar 8 13:35:01 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Mar 8 13:35:01 2020 -0700","stats":{"files_changed":1,"insertions":14,"deletions":0,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":14}]},"message":"Create basic tests for generate_magic_commands()","epoch":1583699701,"epoch_utc":null},{"commit":"a032ae56ae7d247e00415267b65b2a8b80a3302e","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Sun Mar 8 13:26:15 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Mar 8 13:26:15 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"Pass args to generate_magic_command() to allow testing.","epoch":1583699175,"epoch_utc":null},{"commit":"eab2f4b0566b4c76db661cbfa99a56a6bf8d6541","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Sun Mar 8 13:20:38 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Mar 8 13:20:38 2020 -0700","stats":{"files_changed":1,"insertions":33,"deletions":19,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":52}]},"message":"Move core magic() logic into seperate function for testability, minor tweaks.\n\nWe only care about the command when testing magic() - by moving that out, we can easily test the command. I modified the code to return a boolean signalling that the command is valid, and the command itself to maintain the original functionality.\n\nI also made some small tweaks (removed a list() call, fixed a possible bug with no arguments., moved magic_dict instantiation past the fast path checks to avoid making a dict if not needed.)","epoch":1583698838,"epoch_utc":null},{"commit":"aff86ae6c71abfe1cbdba5c574a5f3707292ec19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 12:58:26 2020 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 8 12:58:26 2020 -0700","stats":{"files_changed":1,"insertions":29,"deletions":39,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":68}]},"message":"reimpliment magic() based on the dictionary approach suggested by philippeitis","epoch":1583697506,"epoch_utc":null},{"commit":"7ece9ddc1a37551cdaaac50f37a48e6d98b18bf4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 7 17:26:42 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Mar 7 17:26:42 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"version bump ls","epoch":1583630802,"epoch_utc":null},{"commit":"7cd048e839a7cc8404fd5abc153a3d315c207819","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 7 17:25:10 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Mar 7 17:25:10 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update","epoch":1583630710,"epoch_utc":null},{"commit":"1e22f610a33903e8525d35a18b1dcf760a93791e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 7 17:22:08 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Mar 7 17:22:08 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"fix for osx - doesn't print 'total xx' line if empty directory (issue #40)","epoch":1583630528,"epoch_utc":null},{"commit":"5249c972ae25e9b289a2667bf471aad5e58c70a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 6 12:09:20 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 6 12:09:20 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":4}]},"message":"add to changelog","epoch":1583525360,"epoch_utc":null},{"commit":"fd45f856a050f6c56a7a6b50b97b3d8c4de28af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 6 12:09:09 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Mar 6 12:09:09 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":2}]},"message":"import jc.utils instead of jc","epoch":1583525349,"epoch_utc":null},{"commit":"c8ab40cd33b14a3a1937ecf64bb23e282f5bb921","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 5 09:19:58 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Mar 5 09:19:58 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"],"file_stats":[{"name":".gitignore","lines_changed":1}]},"message":"ignore .github folder","epoch":1583428798,"epoch_utc":null},{"commit":"b2c872925b37254dac74578c1803b4127f8411c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 19:47:03 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 4 19:47:03 2020 -0800","stats":{"files_changed":20,"insertions":208,"deletions":220,"files":["tests/test_ls.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_passwd.py","tests/test_pip_list.py","tests/test_ps.py","tests/test_route.py","tests/test_shadow.py","tests/test_ss.py","tests/test_systemctl_lj.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py","tests/test_who.py","tests/test_xml.py","tests/test_yaml.py"],"file_stats":[{"name":"tests/test_ls.py","lines_changed":132},{"name":"tests/test_lsmod.py","lines_changed":8},{"name":"tests/test_lsof.py","lines_changed":16},{"name":"tests/test_mount.py","lines_changed":16},{"name":"tests/test_netstat.py","lines_changed":40},{"name":"tests/test_passwd.py","lines_changed":12},{"name":"tests/test_pip_list.py","lines_changed":20},{"name":"tests/test_ps.py","lines_changed":32},{"name":"tests/test_route.py","lines_changed":16},{"name":"tests/test_shadow.py","lines_changed":8},{"name":"tests/test_ss.py","lines_changed":8},{"name":"tests/test_systemctl_lj.py","lines_changed":16},{"name":"tests/test_systemctl_ls.py","lines_changed":8},{"name":"tests/test_systemctl_luf.py","lines_changed":8},{"name":"tests/test_uname.py","lines_changed":16},{"name":"tests/test_uptime.py","lines_changed":16},{"name":"tests/test_w.py","lines_changed":16},{"name":"tests/test_who.py","lines_changed":24},{"name":"tests/test_xml.py","lines_changed":8},{"name":"tests/test_yaml.py","lines_changed":8}]},"message":"add utf-8 encoding for testing on Windows","epoch":1583380023,"epoch_utc":null},{"commit":"f48e229202f8ab1ebfa502ca57bb31cf673c7a62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 19:40:32 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 4 19:40:32 2020 -0800","stats":{"files_changed":21,"insertions":192,"deletions":192,"files":["tests/test_arp.py","tests/test_blkid.py","tests/test_crontab.py","tests/test_crontab_u.py","tests/test_csv.py","tests/test_df.py","tests/test_dig.py","tests/test_du.py","tests/test_env.py","tests/test_free.py","tests/test_fstab.py","tests/test_group.py","tests/test_gshadow.py","tests/test_history.py","tests/test_hosts.py","tests/test_id.py","tests/test_ifconfig.py","tests/test_ini.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_last.py"],"file_stats":[{"name":"tests/test_arp.py","lines_changed":32},{"name":"tests/test_blkid.py","lines_changed":40},{"name":"tests/test_crontab.py","lines_changed":4},{"name":"tests/test_crontab_u.py","lines_changed":8},{"name":"tests/test_csv.py","lines_changed":36},{"name":"tests/test_df.py","lines_changed":32},{"name":"tests/test_dig.py","lines_changed":24},{"name":"tests/test_du.py","lines_changed":16},{"name":"tests/test_env.py","lines_changed":8},{"name":"tests/test_free.py","lines_changed":16},{"name":"tests/test_fstab.py","lines_changed":8},{"name":"tests/test_group.py","lines_changed":12},{"name":"tests/test_gshadow.py","lines_changed":8},{"name":"tests/test_history.py","lines_changed":8},{"name":"tests/test_hosts.py","lines_changed":8},{"name":"tests/test_id.py","lines_changed":8},{"name":"tests/test_ifconfig.py","lines_changed":24},{"name":"tests/test_ini.py","lines_changed":8},{"name":"tests/test_iptables.py","lines_changed":48},{"name":"tests/test_jobs.py","lines_changed":8},{"name":"tests/test_last.py","lines_changed":28}]},"message":"utf-8 open for windows tests","epoch":1583379632,"epoch_utc":null},{"commit":"799fec92c39b1ff0696c6ebb182c4bef66b86e56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 19:33:45 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 4 19:33:45 2020 -0800","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["tests/test_pip_show.py","tests/test_systemctl.py"],"file_stats":[{"name":"tests/test_pip_show.py","lines_changed":16},{"name":"tests/test_systemctl.py","lines_changed":8}]},"message":"utf-8 for windows support","epoch":1583379225,"epoch_utc":null},{"commit":"87a41c2fcaa395f108b5a5126ed77f7cc7fe5d6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 19:30:30 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 4 19:30:30 2020 -0800","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["tests/test_lsblk.py","tests/test_stat.py"],"file_stats":[{"name":"tests/test_lsblk.py","lines_changed":16},{"name":"tests/test_stat.py","lines_changed":8}]},"message":"add utf-8 to open function","epoch":1583379030,"epoch_utc":null},{"commit":"7f85de0c46cda95d57b9677ba0ca3ea59690e502","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 19:28:21 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 19:28:21 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"add windows-latest","epoch":1583378901,"epoch_utc":null},{"commit":"13661b19934a74417713e98e3e1e4df6bb0f29ad","merge":"5f798d6 51d5c38","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 16:54:26 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 16:54:26 2020 -0800","message":"Merge pull request #37 from philippeitis/continuous_integration\n\nEnable Continuous Integration with GitHub Actions.","epoch":1583369666,"epoch_utc":null},{"commit":"51d5c3892d6ff1e2e6ac7c4f3e496e7d9ed4b6a7","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 16:21:06 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 16:21:06 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"Remove Windows tests, due to lack of support.","epoch":1583367666,"epoch_utc":null},{"commit":"e4eab4641ac15220f2787c5d27b443ab8c718b86","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 16:17:58 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 16:17:58 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":3}]},"message":"Change line in blkid.py to trigger CI","epoch":1583367478,"epoch_utc":null},{"commit":"9b148e0ba37e18749d95608e1bac6c090ab83ee2","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 16:16:19 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 16:16:19 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["requirements.txt"],"file_stats":[{"name":"requirements.txt","lines_changed":3}]},"message":"Add requirements.txt","epoch":1583367379,"epoch_utc":null},{"commit":"de28932650d5027e2781011f1243b89f053b241d","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 16:14:03 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 16:14:03 2020 -0800","stats":{"files_changed":1,"insertions":7,"deletions":6,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":13}]},"message":"Consolidate dictionary into creation, trigger CI","epoch":1583367243,"epoch_utc":null},{"commit":"5f798d603e461d2de5adf74662ba4d4b121f28f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 16:11:14 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 4 16:11:14 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":3}]},"message":"version bump and ack to philippeitis","epoch":1583367074,"epoch_utc":null},{"commit":"a0757b2dd3fc0f3e26622941d93bd909dae0a1f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 16:07:53 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 4 16:07:53 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":5,"files":["jc/parsers/foo.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":6}]},"message":"optimize line parsing","epoch":1583366873,"epoch_utc":null},{"commit":"498d51b4e802cb40cac58aae1eff1f723bbbd896","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 16:07:32 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 16:07:32 2020 -0800","stats":{"files_changed":1,"insertions":31,"deletions":0,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":31}]},"message":"Enable Continuous Integration with GitHub Actions.\n\nThis automatically runs unit tests on various operating systems and Python versions when Python files are modified to ensure that functionality remains correct.","epoch":1583366852,"epoch_utc":null},{"commit":"b06b6bae3f64f591c9075812dc1b632ef6d2da37","merge":"6aa2d5a 0652768","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 16:04:05 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 16:04:05 2020 -0800","message":"Merge pull request #36 from philippeitis/patch-3\n\nSimplify process() in history.py, avoid list allocation in parse()","epoch":1583366645,"epoch_utc":null},{"commit":"b5eaff21372a58aefb66e5afc5e863db8355fee1","merge":"d75c406 c01bcd3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 15:33:13 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 15:33:13 2020 -0800","message":"Merge pull request #35 from kellyjonbrazil/revert-34-patch-3\n\nRevert \"Simplify process() in history.py, avoid list allocation in parse()\"","epoch":1583364793,"epoch_utc":null},{"commit":"c01bcd3734382a0c388d9f4041fc888171ca7675","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 15:32:23 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 15:32:23 2020 -0800","stats":{"files_changed":1,"insertions":25,"deletions":12,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":37}]},"message":"Revert \"Simplify process() in history.py, avoid list allocation in parse()\"","epoch":1583364743,"epoch_utc":null},{"commit":"d75c4068caaf4adbe9a39fa452ae867421053673","merge":"d96b3a6 0652768","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 15:31:55 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 15:31:55 2020 -0800","message":"Merge pull request #34 from philippeitis/patch-3\n\nSimplify process() in history.py, avoid list allocation in parse()","epoch":1583364715,"epoch_utc":null},{"commit":"6aa2d5a3d26f9f00c3334928f6f0e501860433da","merge":"69576f6 a63408c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 15:28:09 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 15:28:09 2020 -0800","message":"Merge pull request #33 from philippeitis/patch-2\n\nHandle case where only options are passed.","epoch":1583364489,"epoch_utc":null},{"commit":"065276805f0f2dd23a6382f0120ca07e9eae116f","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 13:35:31 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 13:35:31 2020 -0800","stats":{"files_changed":1,"insertions":12,"deletions":25,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":37}]},"message":"Simplify process() in history.py, avoid list allocation in parse()","epoch":1583357731,"epoch_utc":null},{"commit":"a63408c8cf3f99646be2b375f651d6cf417f7ae0","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 13:16:35 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 13:16:35 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"Handle case where only options are passed.","epoch":1583356595,"epoch_utc":null},{"commit":"69576f6bfae073196627a0a39b5ececb8666d25c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 12:03:40 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 4 12:03:40 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6}]},"message":"minor sytax fixes","epoch":1583352220,"epoch_utc":null},{"commit":"19845624e2996da4653efc2f312aceb514feaf5c","merge":"d96b3a6 22ff296","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 11:59:29 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 11:59:29 2020 -0800","message":"Merge pull request #32 from philippeitis/patch-1\n\nSimplify main(), magic() methods.","epoch":1583351969,"epoch_utc":null},{"commit":"22ff2964e9889587711e779ac24f8f8034212f5e","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 10:33:42 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Mar 4 10:33:42 2020 -0800","stats":{"files_changed":1,"insertions":62,"deletions":75,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":137}]},"message":"Simplify main(), magic() methods.","epoch":1583346822,"epoch_utc":null},{"commit":"d96b3a65a98bc135d21d4feafc0a43317b5a11fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 08:30:52 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Mar 4 08:30:52 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1583339452,"epoch_utc":null},{"commit":"4989445ef4bb8919d9b3b95e2fcee77ca7692aec","merge":"53ee2c3 6770892","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 11:46:09 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Mar 3 11:46:09 2020 -0800","message":"Merge pull request #30 from kellyjonbrazil/dev\n\nDev v1.8.0","epoch":1583264769,"epoch_utc":null},{"commit":"6770892acd49aced225dbccf39290f33522c9001","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 11:37:59 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 3 11:37:59 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add release notes link","epoch":1583264279,"epoch_utc":null},{"commit":"d4eba8740fc325756f3db96ab37a5383540cbeff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 11:08:52 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 3 11:08:52 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"release date 3/3","epoch":1583262532,"epoch_utc":null},{"commit":"9f607605605e47990f97ccfd48fde19a14e036e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 10:54:27 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 3 10:54:27 2020 -0800","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["tests/test_group.py","tests/test_gshadow.py"],"file_stats":[{"name":"tests/test_group.py","lines_changed":52},{"name":"tests/test_gshadow.py","lines_changed":40}]},"message":"add group and gshadow tests","epoch":1583261667,"epoch_utc":null},{"commit":"0a8f8ac934f040141e6a4eec8cf7170e1ca73294","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:55:43 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 3 09:55:43 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"add group and gshadow parsers","epoch":1583258143,"epoch_utc":null},{"commit":"6ae24c82447bcff606e7027dd01b916293b49584","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:55:17 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 3 09:55:17 2020 -0800","stats":{"files_changed":10,"insertions":274,"deletions":0,"files":["tests/fixtures/centos-7.7/group.json","tests/fixtures/centos-7.7/group.out","tests/fixtures/centos-7.7/gshadow.json","tests/fixtures/centos-7.7/gshadow.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/group.json","tests/fixtures/osx-10.14.6/group.out","tests/fixtures/ubuntu-18.04/group.json","tests/fixtures/ubuntu-18.04/group.out","tests/fixtures/ubuntu-18.04/gshadow.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/group.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/group.out","lines_changed":39},{"name":"tests/fixtures/centos-7.7/gshadow.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/gshadow.out","lines_changed":39},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":3},{"name":"tests/fixtures/osx-10.14.6/group.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/group.out","lines_changed":135},{"name":"tests/fixtures/ubuntu-18.04/group.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/group.out","lines_changed":53},{"name":"tests/fixtures/ubuntu-18.04/gshadow.json","lines_changed":1}]},"message":"add group and gshadow test fixtures","epoch":1583258117,"epoch_utc":null},{"commit":"d3679082a8c5cff76eb7de67c33fe716a1402182","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:36:16 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 3 09:36:16 2020 -0800","stats":{"files_changed":1,"insertions":64,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":64}]},"message":"add group and gshadow parsers","epoch":1583256976,"epoch_utc":null},{"commit":"fb08b42dca135705a3759435335d95c898d47f60","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:32:56 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 3 09:32:56 2020 -0800","stats":{"files_changed":2,"insertions":21,"deletions":21,"files":["docs/parsers/group.md","jc/parsers/group.py"],"file_stats":[{"name":"docs/parsers/group.md","lines_changed":18},{"name":"jc/parsers/group.py","lines_changed":24}]},"message":"change 'group_list' to 'members'","epoch":1583256776,"epoch_utc":null},{"commit":"4aeaa9f42a88bf4e05c8780a35cc8c4d83c9b842","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:32:25 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 3 09:32:25 2020 -0800","stats":{"files_changed":5,"insertions":316,"deletions":0,"files":["docgen.sh","docs/parsers/gshadow.md","jc/cli.py","jc/parsers/gshadow.py","tests/fixtures/ubuntu-18.04/gshadow.out"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/gshadow.md","lines_changed":109},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/gshadow.py","lines_changed":152},{"name":"tests/fixtures/ubuntu-18.04/gshadow.out","lines_changed":53}]},"message":"add /etc/gshadow parser","epoch":1583256745,"epoch_utc":null},{"commit":"5f5693da048cb4739dc56500c672dc8fbccaaf32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:07:28 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 3 09:07:28 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["docs/parsers/csv.md"],"file_stats":[{"name":"docs/parsers/csv.md","lines_changed":3}]},"message":"spelling fix","epoch":1583255248,"epoch_utc":null},{"commit":"5eb0f61727f92a84fb3620e13db072167ef552ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:07:09 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Mar 3 09:07:09 2020 -0800","stats":{"files_changed":4,"insertions":333,"deletions":0,"files":["docgen.sh","docs/parsers/group.md","jc/cli.py","jc/parsers/group.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/group.md","lines_changed":141},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/group.py","lines_changed":190}]},"message":"add /etc/group file parser","epoch":1583255229,"epoch_utc":null},{"commit":"958e998991b1cc61dc1dc341b90cd53f4691cd43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 17:15:05 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 2 17:15:05 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/csv.py"],"file_stats":[{"name":"jc/parsers/csv.py","lines_changed":4}]},"message":"formatting","epoch":1583198105,"epoch_utc":null},{"commit":"b78c1509f67fb76d17ac97193a2851d8d9e17f62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 15:06:25 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 2 15:06:25 2020 -0800","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/csv.py"],"file_stats":[{"name":"jc/parsers/csv.py","lines_changed":10}]},"message":"try/except dialect detection","epoch":1583190385,"epoch_utc":null},{"commit":"ce184d4d57faa3f1bca5bcaa02da7a5a5d995eb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 15:05:56 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 2 15:05:56 2020 -0800","stats":{"files_changed":20,"insertions":24054,"deletions":0,"files":["tests/fixtures/generic/csv-biostats.csv","tests/fixtures/generic/csv-biostats.json","tests/fixtures/generic/csv-cities.csv","tests/fixtures/generic/csv-cities.json","tests/fixtures/generic/csv-deniro.csv","tests/fixtures/generic/csv-deniro.json","tests/fixtures/generic/csv-example.csv","tests/fixtures/generic/csv-example.json","tests/fixtures/generic/csv-flyrna.json","tests/fixtures/generic/csv-flyrna.tsv","tests/fixtures/generic/csv-flyrna2.json","tests/fixtures/generic/csv-flyrna2.tsv","tests/fixtures/generic/csv-homes-pipe.csv","tests/fixtures/generic/csv-homes-pipe.json","tests/fixtures/generic/csv-homes.csv","tests/fixtures/generic/csv-homes.json","tests/fixtures/generic/csv-insurance.csv","tests/fixtures/generic/csv-insurance.json","tests/fixtures/generic/oscar_age_male.csv","tests/test_csv.py"],"file_stats":[{"name":"tests/fixtures/generic/csv-biostats.csv","lines_changed":20},{"name":"tests/fixtures/generic/csv-biostats.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-cities.csv","lines_changed":130},{"name":"tests/fixtures/generic/csv-cities.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-deniro.csv","lines_changed":89},{"name":"tests/fixtures/generic/csv-deniro.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-example.csv","lines_changed":2},{"name":"tests/fixtures/generic/csv-example.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna.tsv","lines_changed":11767},{"name":"tests/fixtures/generic/csv-flyrna2.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna2.tsv","lines_changed":11767},{"name":"tests/fixtures/generic/csv-homes-pipe.csv","lines_changed":3},{"name":"tests/fixtures/generic/csv-homes-pipe.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-homes.csv","lines_changed":51},{"name":"tests/fixtures/generic/csv-homes.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-insurance.csv","lines_changed":1},{"name":"tests/fixtures/generic/csv-insurance.json","lines_changed":1},{"name":"tests/fixtures/generic/oscar_age_male.csv","lines_changed":91},{"name":"tests/test_csv.py","lines_changed":124}]},"message":"add csv parser tests","epoch":1583190356,"epoch_utc":null},{"commit":"b4c3714ced9ee5cc6a7ef0c59a43cf85e1cb9824","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 14:10:15 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 2 14:10:15 2020 -0800","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"removed [OPTIONS] PARSER syntax. still works but prefer the PARSER [OPTIONS] syntax for better performance","epoch":1583187015,"epoch_utc":null},{"commit":"5b7dfa043864f1a3f34aa4ef5c6554a2dfe185f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 14:07:56 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 2 14:07:56 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"formatting","epoch":1583186876,"epoch_utc":null},{"commit":"391a3884765780497dc34e0e9938ff5032c81291","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 14:07:29 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 2 14:07:29 2020 -0800","stats":{"files_changed":2,"insertions":49,"deletions":0,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":48},{"name":"changelog.txt","lines_changed":1}]},"message":"doc update","epoch":1583186849,"epoch_utc":null},{"commit":"d9c4e2ed4c0f908f4b63c2376b53ddfd32a0fae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 14:03:58 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 2 14:03:58 2020 -0800","stats":{"files_changed":4,"insertions":241,"deletions":0,"files":["docgen.sh","docs/parsers/csv.md","jc/cli.py","jc/parsers/csv.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/csv.md","lines_changed":104},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/csv.py","lines_changed":135}]},"message":"add csv file parser","epoch":1583186638,"epoch_utc":null},{"commit":"0c42db38b102987629e40cee2716b826161e6e94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 10:30:12 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 2 10:30:12 2020 -0800","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/who.md","jc/parsers/who.py"],"file_stats":[{"name":"docs/parsers/who.md","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":2}]},"message":"doc update","epoch":1583173812,"epoch_utc":null},{"commit":"2f9be8bf33f8be5651d06da9d316f7894606df19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 08:32:42 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 2 08:32:42 2020 -0800","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"simplify usage","epoch":1583166762,"epoch_utc":null},{"commit":"e8c00155e861b9eedfdf37a22912271bec581d62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 07:43:45 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Mar 2 07:43:45 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"add -b to warning message","epoch":1583163825,"epoch_utc":null},{"commit":"cc88fdd9ee3951d7ef2aa881cc12f0b7f96aef86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 21:17:50 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 21:17:50 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"update example","epoch":1583126270,"epoch_utc":null},{"commit":"d9de11ef1d846a9625dad0adb962b864404c90c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 21:16:57 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 21:16:57 2020 -0800","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":16}]},"message":"add another who example","epoch":1583126217,"epoch_utc":null},{"commit":"0ceda97d0968b67b70cdbb68f7a62657e79c9935","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 19:03:27 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 19:03:27 2020 -0800","stats":{"files_changed":1,"insertions":88,"deletions":0,"files":["tests/test_who.py"],"file_stats":[{"name":"tests/test_who.py","lines_changed":88}]},"message":"who parser tests","epoch":1583118207,"epoch_utc":null},{"commit":"d0dec92ba84640ddc40da7c6faa6568b76757e04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 18:57:51 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 18:57:51 2020 -0800","stats":{"files_changed":12,"insertions":36,"deletions":0,"files":["tests/fixtures/centos-7.7/who-a.json","tests/fixtures/centos-7.7/who-a.out","tests/fixtures/centos-7.7/who.json","tests/fixtures/centos-7.7/who.out","tests/fixtures/osx-10.14.6/who-a.json","tests/fixtures/osx-10.14.6/who-a.out","tests/fixtures/osx-10.14.6/who.json","tests/fixtures/osx-10.14.6/who.out","tests/fixtures/ubuntu-18.04/who-a.json","tests/fixtures/ubuntu-18.04/who-a.out","tests/fixtures/ubuntu-18.04/who.json","tests/fixtures/ubuntu-18.04/who.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/who-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/who-a.out","lines_changed":6},{"name":"tests/fixtures/centos-7.7/who.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/who.out","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/who-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/who-a.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/who.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/who.out","lines_changed":4},{"name":"tests/fixtures/ubuntu-18.04/who-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/who-a.out","lines_changed":6},{"name":"tests/fixtures/ubuntu-18.04/who.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/who.out","lines_changed":3}]},"message":"add who test fixtures","epoch":1583117871,"epoch_utc":null},{"commit":"d420c008d8aaa0879fa5a3f236d81acb506376c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 17:52:14 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 17:52:14 2020 -0800","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/who.py","lines_changed":9}]},"message":"fix for pts lines with no user info","epoch":1583113934,"epoch_utc":null},{"commit":"f0b32db4333477e22cc40de62cf026a6a7aa2eb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 17:39:02 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 17:39:02 2020 -0800","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","docs/parsers/who.md"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docs/parsers/who.md","lines_changed":8}]},"message":"who doc update","epoch":1583113142,"epoch_utc":null},{"commit":"bc838eda591473d32b11a885e60ef653925739d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 17:38:51 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 17:38:51 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/who.py","lines_changed":9}]},"message":"fix output for non-extended","epoch":1583113131,"epoch_utc":null},{"commit":"afe55b6af07b74816d33d9555ffaa1c1921dd27a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 17:07:28 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 17:07:28 2020 -0800","stats":{"files_changed":1,"insertions":46,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":46}]},"message":"add who parser","epoch":1583111248,"epoch_utc":null},{"commit":"dd3a3ac302d7b35beef1181e74aed0faf96fd3e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 17:04:06 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 17:04:06 2020 -0800","stats":{"files_changed":4,"insertions":255,"deletions":9,"files":["changelog.txt","docgen.sh","docs/parsers/who.md","jc/parsers/who.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/who.md","lines_changed":150},{"name":"jc/parsers/who.py","lines_changed":112}]},"message":"doc update and process pid integers","epoch":1583111046,"epoch_utc":null},{"commit":"f9982a79474c1838f37fc0ff88437980b228d7a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 16:49:52 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 16:49:52 2020 -0800","stats":{"files_changed":1,"insertions":11,"deletions":2,"files":["jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/who.py","lines_changed":13}]},"message":"fixes for from and comment fields","epoch":1583110192,"epoch_utc":null},{"commit":"07c1be9e9ad9f62cf76c23788152de8f3530ee16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 16:30:04 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 16:30:04 2020 -0800","stats":{"files_changed":2,"insertions":170,"deletions":0,"files":["jc/cli.py","jc/parsers/who.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/who.py","lines_changed":169}]},"message":"add who command parser","epoch":1583109004,"epoch_utc":null},{"commit":"f832b88755bfbd3878ec402e603180e6825279be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 10:17:47 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Mar 1 10:17:47 2020 -0800","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["tests/test_passwd.py","tests/test_shadow.py"],"file_stats":[{"name":"tests/test_passwd.py","lines_changed":52},{"name":"tests/test_shadow.py","lines_changed":40}]},"message":"add passwd and shadow tests","epoch":1583086667,"epoch_utc":null},{"commit":"0fac757efca41db062b2f65acc727963c5fb353c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 12:25:41 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Feb 29 12:25:41 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"add passwd and shadow parsers","epoch":1583007941,"epoch_utc":null},{"commit":"fc15742065531152f3d5895042eeb806e33a192a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 12:25:22 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Feb 29 12:25:22 2020 -0800","stats":{"files_changed":10,"insertions":215,"deletions":0,"files":["tests/fixtures/centos-7.7/passwd.json","tests/fixtures/centos-7.7/passwd.out","tests/fixtures/centos-7.7/shadow.json","tests/fixtures/centos-7.7/shadow.out","tests/fixtures/osx-10.14.6/passwd.json","tests/fixtures/osx-10.14.6/passwd.out","tests/fixtures/ubuntu-18.04/passwd.json","tests/fixtures/ubuntu-18.04/passwd.out","tests/fixtures/ubuntu-18.04/shadow.json","tests/fixtures/ubuntu-18.04/shadow.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/passwd.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/passwd.out","lines_changed":21},{"name":"tests/fixtures/centos-7.7/shadow.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/shadow.out","lines_changed":21},{"name":"tests/fixtures/osx-10.14.6/passwd.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/passwd.out","lines_changed":108},{"name":"tests/fixtures/ubuntu-18.04/passwd.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/passwd.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/shadow.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/shadow.out","lines_changed":30}]},"message":"passwd and shadow test fixtures","epoch":1583007922,"epoch_utc":null},{"commit":"6f2466a1319eaa4256ae7a2a0f23b3ff37882d37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 11:56:12 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Feb 29 11:56:12 2020 -0800","stats":{"files_changed":1,"insertions":73,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":73}]},"message":"update readme with /etc/passwd and /etc/shadow file parsers","epoch":1583006172,"epoch_utc":null},{"commit":"4b90e22f0a9c6790bca62c8314945a7ffc6e267b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 11:50:46 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Feb 29 11:50:46 2020 -0800","stats":{"files_changed":2,"insertions":137,"deletions":9,"files":["docs/parsers/shadow.md","jc/parsers/shadow.py"],"file_stats":[{"name":"docs/parsers/shadow.md","lines_changed":72},{"name":"jc/parsers/shadow.py","lines_changed":74}]},"message":"doc update","epoch":1583005846,"epoch_utc":null},{"commit":"c4935687853fb3b079ae42614793cdafe68e124e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 11:46:38 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Feb 29 11:46:38 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/passwd.md","jc/parsers/passwd.py"],"file_stats":[{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":2}]},"message":"doc fix","epoch":1583005598,"epoch_utc":null},{"commit":"1cdf004b7728901dc137e57b0c8994edfdd6d417","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 11:46:24 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Feb 29 11:46:24 2020 -0800","stats":{"files_changed":4,"insertions":190,"deletions":0,"files":["docgen.sh","docs/parsers/shadow.md","jc/cli.py","jc/parsers/shadow.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/shadow.md","lines_changed":69},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/shadow.py","lines_changed":119}]},"message":"add /etc/shadow parser","epoch":1583005584,"epoch_utc":null},{"commit":"a4ea50426184d30cbe849a8f80bfd5c975075c9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 11:33:14 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Feb 29 11:33:14 2020 -0800","stats":{"files_changed":4,"insertions":303,"deletions":0,"files":["docgen.sh","docs/parsers/passwd.md","jc/cli.py","jc/parsers/passwd.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/passwd.md","lines_changed":126},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/passwd.py","lines_changed":175}]},"message":"add /etc/passwd parser","epoch":1583004794,"epoch_utc":null},{"commit":"4c2c234c3bf68d1aac66bd4d1f22b9f97e99128d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 15:15:24 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 28 15:15:24 2020 -0800","stats":{"files_changed":16,"insertions":673,"deletions":0,"files":["tests/fixtures/centos-7.7/last-w.json","tests/fixtures/centos-7.7/last-w.out","tests/fixtures/centos-7.7/last.json","tests/fixtures/centos-7.7/last.out","tests/fixtures/centos-7.7/lastb.json","tests/fixtures/centos-7.7/lastb.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/last.json","tests/fixtures/osx-10.14.6/last.out","tests/fixtures/ubuntu-18.04/last-w.json","tests/fixtures/ubuntu-18.04/last-w.out","tests/fixtures/ubuntu-18.04/last.json","tests/fixtures/ubuntu-18.04/last.out","tests/fixtures/ubuntu-18.04/lastb.json","tests/fixtures/ubuntu-18.04/lastb.out","tests/test_last.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/last-w.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/last-w.out","lines_changed":69},{"name":"tests/fixtures/centos-7.7/last.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/last.out","lines_changed":69},{"name":"tests/fixtures/centos-7.7/lastb.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lastb.out","lines_changed":6},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":4},{"name":"tests/fixtures/osx-10.14.6/last.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/last.out","lines_changed":383},{"name":"tests/fixtures/ubuntu-18.04/last-w.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/last-w.out","lines_changed":16},{"name":"tests/fixtures/ubuntu-18.04/last.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/last.out","lines_changed":16},{"name":"tests/fixtures/ubuntu-18.04/lastb.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lastb.out","lines_changed":3},{"name":"tests/test_last.py","lines_changed":100}]},"message":"add last and lastb tests","epoch":1582931724,"epoch_utc":null},{"commit":"3d4c0f3e89dab6496ff74df350e3238d6625933c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 14:50:29 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 28 14:50:29 2020 -0800","stats":{"files_changed":22,"insertions":285,"deletions":0,"files":["tests/fixtures/centos-7.7/blkid-ip-multi.json","tests/fixtures/centos-7.7/blkid-ip-multi.out","tests/fixtures/centos-7.7/blkid-ip-udev-multi.json","tests/fixtures/centos-7.7/blkid-ip-udev-multi.out","tests/fixtures/centos-7.7/blkid-ip-udev.json","tests/fixtures/centos-7.7/blkid-ip-udev.out","tests/fixtures/centos-7.7/blkid-sda2.json","tests/fixtures/centos-7.7/blkid-sda2.out","tests/fixtures/centos-7.7/blkid.json","tests/fixtures/centos-7.7/blkid.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/blkid-ip-multi.json","tests/fixtures/ubuntu-18.04/blkid-ip-multi.out",".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.json",".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.out","tests/fixtures/ubuntu-18.04/blkid-ip-udev.json","tests/fixtures/ubuntu-18.04/blkid-ip-udev.out","tests/fixtures/ubuntu-18.04/blkid-sda2.json","tests/fixtures/ubuntu-18.04/blkid-sda2.out","tests/fixtures/ubuntu-18.04/blkid.json","tests/fixtures/ubuntu-18.04/blkid.out","tests/test_blkid.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/blkid-ip-multi.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid-ip-multi.out","lines_changed":29},{"name":"tests/fixtures/centos-7.7/blkid-ip-udev-multi.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid-ip-udev-multi.out","lines_changed":29},{"name":"tests/fixtures/centos-7.7/blkid-ip-udev.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid-ip-udev.out","lines_changed":14},{"name":"tests/fixtures/centos-7.7/blkid-sda2.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid-sda2.out","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid.out","lines_changed":4},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":6},{"name":"tests/fixtures/ubuntu-18.04/blkid-ip-multi.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid-ip-multi.out","lines_changed":2},{"name":".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.json","lines_changed":1},{"name":".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/blkid-ip-udev.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid-ip-udev.out","lines_changed":12},{"name":"tests/fixtures/ubuntu-18.04/blkid-sda2.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid-sda2.out","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid.out","lines_changed":15},{"name":"tests/test_blkid.py","lines_changed":136}]},"message":"add blkid tests","epoch":1582930229,"epoch_utc":null},{"commit":"52fad02903468c05d2422a340ad8dbcdf18ed475","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 13:31:38 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 28 13:31:38 2020 -0800","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":12},{"name":"jc/parsers/ls.py","lines_changed":12}]},"message":"doc update","epoch":1582925498,"epoch_utc":null},{"commit":"9dcabc057c40e345971a08474b5b886e6b60a8de","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 10:57:14 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 28 10:57:14 2020 -0800","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":10}]},"message":"support multi device udev output","epoch":1582916234,"epoch_utc":null},{"commit":"db8c1079ddc25922ab6a20d0f71fb19af38f8092","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 09:54:07 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 28 09:54:07 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":8}]},"message":"use maxsplit=1 in case there are multiple '=' delimiters","epoch":1582912447,"epoch_utc":null},{"commit":"8f954673abdbbd4d9b9da3eacc61b335b4909f89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 09:07:36 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 28 09:07:36 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":5}]},"message":"use shlex split for values within quotations that have spaces","epoch":1582909656,"epoch_utc":null},{"commit":"79522d1c7dd4dec15b75b06dda002752f7d97e36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 08:51:48 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 28 08:51:48 2020 -0800","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"doc fixes","epoch":1582908708,"epoch_utc":null},{"commit":"a18bf030794efef125c70a32fe82855e47649b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 08:50:35 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 28 08:50:35 2020 -0800","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/parsers/last.py","jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":12}]},"message":"use raw strings for regular expressions","epoch":1582908635,"epoch_utc":null},{"commit":"c02b6b5d827d26b43db0a3457124714aa2dbbc98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 21:21:19 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 21:21:19 2020 -0800","stats":{"files_changed":3,"insertions":81,"deletions":1,"files":["README.md","changelog.txt","setup.py"],"file_stats":[{"name":"README.md","lines_changed":79},{"name":"changelog.txt","lines_changed":1},{"name":"setup.py","lines_changed":2}]},"message":"doc updates","epoch":1582867279,"epoch_utc":null},{"commit":"f99b4232848b0d868804acc4125836bfcf475bba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 21:04:24 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 21:04:24 2020 -0800","stats":{"files_changed":2,"insertions":134,"deletions":29,"files":["docs/parsers/blkid.md","jc/parsers/blkid.py"],"file_stats":[{"name":"docs/parsers/blkid.md","lines_changed":115},{"name":"jc/parsers/blkid.py","lines_changed":48}]},"message":"doc update","epoch":1582866264,"epoch_utc":null},{"commit":"d7d9d45d4fba89e74f7490c463eb26bf20a5d127","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:59:09 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 20:59:09 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":2}]},"message":"add missing comma","epoch":1582865949,"epoch_utc":null},{"commit":"90065ec0cdc8c5abc13bc0027f63658dacf3cfb2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:57:22 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 20:57:22 2020 -0800","stats":{"files_changed":1,"insertions":31,"deletions":26,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":57}]},"message":"add more integers","epoch":1582865842,"epoch_utc":null},{"commit":"51157ebb867a48332c768bf3086614944aebdb62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:49:14 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 20:49:14 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":4}]},"message":"another devname fix","epoch":1582865354,"epoch_utc":null},{"commit":"96d95c79ca0938e326f55f858f8153df9cb49e44","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:47:07 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 20:47:07 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":6}]},"message":"devname fix","epoch":1582865227,"epoch_utc":null},{"commit":"e5da34c23306463e8707b15676db0ca53bf66757","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:41:06 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 20:41:06 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":3}]},"message":"check if devname key exists before renaming","epoch":1582864866,"epoch_utc":null},{"commit":"f09d657f7728242947db3dc63ff6779d08c37866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:36:19 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 20:36:19 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":5}]},"message":"rename devname to device","epoch":1582864579,"epoch_utc":null},{"commit":"0f4b0189f54dc0b3622cd407c5565e53ea111379","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:31:17 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 20:31:17 2020 -0800","stats":{"files_changed":1,"insertions":35,"deletions":3,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":38}]},"message":"process integer values","epoch":1582864277,"epoch_utc":null},{"commit":"4666042abb3142e2cfb518db9ffe22d9e608e090","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:21:02 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 20:21:02 2020 -0800","stats":{"files_changed":4,"insertions":216,"deletions":0,"files":["docgen.sh","docs/parsers/blkid.md","jc/cli.py","jc/parsers/blkid.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/blkid.md","lines_changed":83},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/blkid.py","lines_changed":131}]},"message":"add blkid parser","epoch":1582863662,"epoch_utc":null},{"commit":"027d544c2bb778adc0ee9463832f19b10e099a0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 16:08:56 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 16:08:56 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add last and lastb parser","epoch":1582848536,"epoch_utc":null},{"commit":"f1967d0138d27bde864c2400aa75baa8a39bbfde","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 16:08:39 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 16:08:39 2020 -0800","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":3}]},"message":"system_boot fix","epoch":1582848519,"epoch_utc":null},{"commit":"c1d896027dd1ce021e048b3e77eab24ff59d08bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 15:58:12 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 15:58:12 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":3}]},"message":"fix system_boot tty","epoch":1582847892,"epoch_utc":null},{"commit":"5c2d2a66187d32d62b31b7c7f13e502fdb7f9635","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 15:44:36 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 15:44:36 2020 -0800","stats":{"files_changed":3,"insertions":190,"deletions":6,"files":["docgen.sh","docs/parsers/last.md","jc/parsers/last.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/last.md","lines_changed":118},{"name":"jc/parsers/last.py","lines_changed":77}]},"message":"process function and docs","epoch":1582847076,"epoch_utc":null},{"commit":"997b269b0b7e53a456e2a0bd997ead6c2ae843bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 15:26:09 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 15:26:09 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":3}]},"message":"btmp fix","epoch":1582845969,"epoch_utc":null},{"commit":"61257e7525c25827cb8057ed5c612e54ea9b9637","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 15:14:43 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 15:14:43 2020 -0800","stats":{"files_changed":2,"insertions":119,"deletions":1,"files":["jc/cli.py","jc/parsers/last.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/last.py","lines_changed":117}]},"message":"add last and lastb parser","epoch":1582845283,"epoch_utc":null},{"commit":"53ee2c36310cb84390ef96644aee6871769151c9","merge":"2ad3167 8bfa0bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 10:59:14 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Feb 27 10:59:14 2020 -0800","message":"Merge pull request #29 from kellyjonbrazil/dev\n\nDev v1.7.5","epoch":1582829954,"epoch_utc":null},{"commit":"8bfa0bddec9ff1c21972019467dcf5738ab3afd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 10:50:05 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 10:50:05 2020 -0800","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to 1.7.5","epoch":1582829405,"epoch_utc":null},{"commit":"ad61e6bc81177a2add7d052bf1ddec5f1b3f2976","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 10:48:09 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 10:48:09 2020 -0800","stats":{"files_changed":26,"insertions":598,"deletions":133,"files":["tests/fixtures/centos-7.7/ls-R-newlines.json","tests/fixtures/centos-7.7/ls-R-newlines.out","tests/fixtures/centos-7.7/ls-l-newlines.json","tests/fixtures/centos-7.7/ls-l-newlines.out","tests/fixtures/centos-7.7/ls-lR-newlines.json","tests/fixtures/centos-7.7/ls-lR-newlines.out","tests/fixtures/centos-7.7/ls-newlines.json","tests/fixtures/centos-7.7/ls-newlines.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/ls-R-newlines.json","tests/fixtures/osx-10.14.6/ls-R-newlines.out","tests/fixtures/osx-10.14.6/ls-l-newlines.json","tests/fixtures/osx-10.14.6/ls-l-newlines.out","tests/fixtures/osx-10.14.6/ls-lR-newlines.json","tests/fixtures/osx-10.14.6/ls-lR-newlines.out","tests/fixtures/osx-10.14.6/ls-newlines.json","tests/fixtures/osx-10.14.6/ls-newlines.out","tests/fixtures/ubuntu-18.04/ls-R-newlines.json","tests/fixtures/ubuntu-18.04/ls-R-newlines.out","tests/fixtures/ubuntu-18.04/ls-l-newlines.json","tests/fixtures/ubuntu-18.04/ls-l-newlines.out","tests/fixtures/ubuntu-18.04/ls-lR-newlines.json","tests/fixtures/ubuntu-18.04/ls-lR-newlines.out","tests/fixtures/ubuntu-18.04/ls-newlines.json","tests/fixtures/ubuntu-18.04/ls-newlines.out","tests/test_ls.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ls-R-newlines.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-R-newlines.out","lines_changed":43},{"name":"tests/fixtures/centos-7.7/ls-l-newlines.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-l-newlines.out","lines_changed":34},{"name":"tests/fixtures/centos-7.7/ls-lR-newlines.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-lR-newlines.out","lines_changed":45},{"name":"tests/fixtures/centos-7.7/ls-newlines.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-newlines.out","lines_changed":33},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":15},{"name":"tests/fixtures/osx-10.14.6/ls-R-newlines.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-R-newlines.out","lines_changed":36},{"name":"tests/fixtures/osx-10.14.6/ls-l-newlines.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-l-newlines.out","lines_changed":34},{"name":"tests/fixtures/osx-10.14.6/ls-lR-newlines.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-lR-newlines.out","lines_changed":38},{"name":"tests/fixtures/osx-10.14.6/ls-newlines.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-newlines.out","lines_changed":148},{"name":"tests/fixtures/ubuntu-18.04/ls-R-newlines.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-R-newlines.out","lines_changed":40},{"name":"tests/fixtures/ubuntu-18.04/ls-l-newlines.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-l-newlines.out","lines_changed":34},{"name":"tests/fixtures/ubuntu-18.04/ls-lR-newlines.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-lR-newlines.out","lines_changed":42},{"name":"tests/fixtures/ubuntu-18.04/ls-newlines.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-newlines.out","lines_changed":33},{"name":"tests/test_ls.py","lines_changed":144}]},"message":"add ls tests for filenames with newline characters","epoch":1582829289,"epoch_utc":null},{"commit":"873b5ba8acf599d083d6031b818d5fca83cbca9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 09:36:57 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 27 09:36:57 2020 -0800","stats":{"files_changed":1,"insertions":27,"deletions":31,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":58}]},"message":"move examples to bottom","epoch":1582825017,"epoch_utc":null},{"commit":"6ae50054e2e8c7ca730013b43062eedc230c0ad4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 20:30:44 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 24 20:30:44 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"readme update","epoch":1582605044,"epoch_utc":null},{"commit":"22a35f41bf9c404d3532611f5929143d04b10010","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 17:50:56 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 24 17:50:56 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":10}]},"message":"move variables to top","epoch":1582595456,"epoch_utc":null},{"commit":"961696c963215a9dab56113ff89f21a6e9739df6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 17:47:31 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 24 17:47:31 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"add a warning if newlines are detected in naked ls","epoch":1582595251,"epoch_utc":null},{"commit":"c7b7f1a5dcf77a1f4c23ef6bbf5683fd1a055f72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 17:24:56 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 24 17:24:56 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"fix for files with newlines in naked ls","epoch":1582593896,"epoch_utc":null},{"commit":"b5a0d650b128d8af81bb14dd5d007349529cb66f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 17:01:33 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 24 17:01:33 2020 -0800","stats":{"files_changed":1,"insertions":151,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-newlines.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ls-newlines.out","lines_changed":151}]},"message":"ls output with newlines","epoch":1582592493,"epoch_utc":null},{"commit":"573b27946474276592ee7494689ce9a88f5a05f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 17:01:12 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 24 17:01:12 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":6}]},"message":"fixup for filenames that start with a newline character","epoch":1582592472,"epoch_utc":null},{"commit":"116e07f1614b4a45eb58ffcfe20b5efa71c473a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 16:38:29 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 24 16:38:29 2020 -0800","stats":{"files_changed":1,"insertions":6,"deletions":7,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":13}]},"message":"fixes for multiple consecutive newlines and trailing newlines in filenames","epoch":1582591109,"epoch_utc":null},{"commit":"964868c8aff99edf37b0db41c7d16f8b84ac4704","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 15:19:43 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 24 15:19:43 2020 -0800","stats":{"files_changed":2,"insertions":21,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":20}]},"message":"add support for newlines in filenames (only with ls -l)","epoch":1582586383,"epoch_utc":null},{"commit":"c8dac32df8102c2b782e87d55bb95ca2d9490185","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 13:05:35 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 24 13:05:35 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"readme update","epoch":1582578335,"epoch_utc":null},{"commit":"72a0016bd833699c3819baa899f335f75b8c1943","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 20 15:38:45 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 20 15:38:45 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"use link to anchor for Parsers","epoch":1582241925,"epoch_utc":null},{"commit":"2ad316743460bb6620e7ede251e1dc2739b073fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 19 07:12:43 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 19 07:12:43 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update doc url","epoch":1582125163,"epoch_utc":null},{"commit":"ddabfaa05c63f886b17e5b4d37cd83fcfdb9b221","merge":"873771d f857523","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 19 07:05:29 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Feb 19 07:05:29 2020 -0800","message":"Merge pull request #25 from kellyjonbrazil/dev\n\nDev v1.7.4","epoch":1582124729,"epoch_utc":null},{"commit":"f857523ca756864211b6b18af5a8886e5db200bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 19 07:02:50 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 19 07:02:50 2020 -0800","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"bump to version 1.7.4","epoch":1582124570,"epoch_utc":null},{"commit":"00d53858e820f00ba015bc25629100c8e5495221","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 22:57:15 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 22:57:15 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add note about aliases not being supported","epoch":1582009035,"epoch_utc":null},{"commit":"c008167e660929a91606bb96498cdc113e815f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 22:48:44 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 22:48:44 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":1},{"name":"jc/parsers/ls.py","lines_changed":1}]},"message":"add time-style=full-iso option to doc","epoch":1582008524,"epoch_utc":null},{"commit":"102344a041e9e0aff8b6d9db1873ba1064f7e895","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 22:32:07 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 22:32:07 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"formatting","epoch":1582007527,"epoch_utc":null},{"commit":"c865298ef3613fe6ce17f41c15209a69940af1ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 22:29:39 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 22:29:39 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":3}]},"message":"remove unnecessary enumerate in for loop","epoch":1582007379,"epoch_utc":null},{"commit":"6ac03faf939bcda8930a48a5e832b557813e2129","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 18:58:07 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 18:58:07 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"Revert \"add ubuntu and centos default ls aliases to magic_commands\"\n\nThis reverts commit 49c2701743706b6cbf0e52b2c7f275e301315189.","epoch":1581994687,"epoch_utc":null},{"commit":"49c2701743706b6cbf0e52b2c7f275e301315189","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 18:55:03 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 18:55:03 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"add ubuntu and centos default ls aliases to magic_commands","epoch":1581994503,"epoch_utc":null},{"commit":"d1a271b08e64b42be8cec11377b0e18435a0caec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 18:33:55 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 18:33:55 2020 -0800","stats":{"files_changed":21,"insertions":35333,"deletions":1374,"files":["tests/fixtures/centos-7.7/ls-R.json","tests/fixtures/centos-7.7/ls-R.out","tests/fixtures/centos-7.7/ls-alR.json","tests/fixtures/centos-7.7/ls-alR.out","tests/fixtures/centos-7.7/ls-glob.json","tests/fixtures/centos-7.7/ls-glob.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/ls-R.json","tests/fixtures/osx-10.14.6/ls-R.out","tests/fixtures/osx-10.14.6/ls-alR.json","tests/fixtures/osx-10.14.6/ls-alR.out","tests/fixtures/osx-10.14.6/ls-glob.json","tests/fixtures/osx-10.14.6/ls-glob.out","tests/fixtures/ubuntu-18.04/ls-R.json","tests/fixtures/ubuntu-18.04/ls-R.out","tests/fixtures/ubuntu-18.04/ls-alR.json","tests/fixtures/ubuntu-18.04/ls-alR.out","tests/fixtures/ubuntu-18.04/ls-glob.json","tests/fixtures/ubuntu-18.04/ls-glob.out","tests/fixtures/ubuntu-18.04/ls-lR.out","tests/test_ls.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ls-R.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-R.out","lines_changed":5089},{"name":"tests/fixtures/centos-7.7/ls-alR.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-alR.out","lines_changed":4997},{"name":"tests/fixtures/centos-7.7/ls-glob.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-glob.out","lines_changed":1919},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":5},{"name":"tests/fixtures/osx-10.14.6/ls-R.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-R.out","lines_changed":5018},{"name":"tests/fixtures/osx-10.14.6/ls-alR.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-alR.out","lines_changed":4997},{"name":"tests/fixtures/osx-10.14.6/ls-glob.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-glob.out","lines_changed":1831},{"name":"tests/fixtures/ubuntu-18.04/ls-R.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-R.out","lines_changed":5639},{"name":"tests/fixtures/ubuntu-18.04/ls-alR.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-alR.out","lines_changed":5026},{"name":"tests/fixtures/ubuntu-18.04/ls-glob.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-glob.out","lines_changed":1357},{"name":"tests/fixtures/ubuntu-18.04/ls-lR.out","lines_changed":712},{"name":"tests/test_ls.py","lines_changed":108}]},"message":"add new ls tests for recursive and multiple directories with glob","epoch":1581993235,"epoch_utc":null},{"commit":"7388ad19b9d252d3e66659e4bc37171cef2a9748","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 17:31:15 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 17:31:15 2020 -0800","stats":{"files_changed":4,"insertions":6,"deletions":4,"files":["docs/parsers/ls.md","jc/cli.py","jc/parsers/ls.py","setup.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"setup.py","lines_changed":2}]},"message":"bump to v1.8.0","epoch":1581989475,"epoch_utc":null},{"commit":"2e63cb5fadd032c7cb54a618e8b374ee853abcca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 17:16:34 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 17:16:34 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"version bump ls to 1.1","epoch":1581988594,"epoch_utc":null},{"commit":"e7f14d02b12c7dcba309f2d28a0f171769d1ba37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 17:14:27 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 17:14:27 2020 -0800","stats":{"files_changed":3,"insertions":1438,"deletions":8,"files":["jc/parsers/ls.py","tests/fixtures/ubuntu-18.04/ls-R.out","tests/fixtures/ubuntu-18.04/ls-lR.out"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":48},{"name":"tests/fixtures/ubuntu-18.04/ls-R.out","lines_changed":686},{"name":"tests/fixtures/ubuntu-18.04/ls-lR.out","lines_changed":712}]},"message":"update ls to allow multi directory (glob and -R). Adds 'parent' key if found","epoch":1581988467,"epoch_utc":null},{"commit":"873771d05ab0b77163c95d2c37e11edf38451832","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 09:16:32 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 17 09:16:32 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1581959792,"epoch_utc":null},{"commit":"d7de122e36e0698e00f321fbac8dc0b543cf9e8a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 14 09:44:24 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 14 09:44:24 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"prettify link","epoch":1581702264,"epoch_utc":null},{"commit":"4ef0434f536c6658ddc2b48a3db113df2fd26000","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 14 09:43:02 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Feb 14 09:43:02 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":6}]},"message":"formatting update","epoch":1581702182,"epoch_utc":null},{"commit":"1aa2c9925996f2358b6272547db755ec3098a8a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 22:10:22 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 22:10:22 2020 -0800","stats":{"files_changed":2,"insertions":1,"deletions":2,"files":["README.md","jc/parsers/history.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":1}]},"message":"removed history from magic syntax","epoch":1581660622,"epoch_utc":null},{"commit":"c2450b27b079b02ed3f4ece9e36547f01cd4b139","merge":"028e136 14d6d8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 21:26:18 2020 -0500","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Feb 13 21:26:18 2020 -0500","message":"Merge pull request #22 from kellyjonbrazil/dev\n\nDev 1.7.3","epoch":1581657978,"epoch_utc":null},{"commit":"14d6d8b84f0ddeff984aff486e2e697a91ac6fb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 18:24:53 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 18:24:53 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump to 1.7.3","epoch":1581647093,"epoch_utc":null},{"commit":"f0e3846c038ec5507cd4a19980d83ee0fb969ef5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 18:20:22 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 18:20:22 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":5}]},"message":"formatting","epoch":1581646822,"epoch_utc":null},{"commit":"6ba64f1128373843b068226424a3af545ac9d22c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 18:19:19 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 18:19:19 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"usage update","epoch":1581646759,"epoch_utc":null},{"commit":"13bcdbc6c9a81bc5d52fe7a84e6a0a34908db8bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 17:50:51 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 17:50:51 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"doc update","epoch":1581645051,"epoch_utc":null},{"commit":"cfba62db20674d788601354211a10e2b1675a0c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 17:48:21 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 17:48:21 2020 -0800","stats":{"files_changed":1,"insertions":13,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":19}]},"message":"correct parser search in magic()","epoch":1581644901,"epoch_utc":null},{"commit":"18fb69e36e303a3f9530dcb80354b25bfdbb931d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 17:29:45 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 17:29:45 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"docs/parsers link","epoch":1581643785,"epoch_utc":null},{"commit":"474eb0f3fdeaa612e189d745b12a5ed9c6e0a31b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 17:24:10 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 17:24:10 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"doc updates","epoch":1581643450,"epoch_utc":null},{"commit":"7f47b533701e60449351d5da03cd5960e0dec9ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 17:20:00 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 17:20:00 2020 -0800","stats":{"files_changed":1,"insertions":90,"deletions":68,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":158}]},"message":"add alternate magic syntax","epoch":1581643200,"epoch_utc":null},{"commit":"dc2907d3ce101043b30bcce71abb4bb02897f43a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 16:58:25 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 16:58:25 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["docs/parsers/crontab.md"],"file_stats":[{"name":"docs/parsers/crontab.md","lines_changed":6}]},"message":"doc update","epoch":1581641905,"epoch_utc":null},{"commit":"1af85811e06c489051c456918284a746ce12c692","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 16:57:57 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 16:57:57 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/fstab.py"],"file_stats":[{"name":"jc/parsers/fstab.py","lines_changed":3}]},"message":"remove magic_command info","epoch":1581641877,"epoch_utc":null},{"commit":"1c1b19a478fe5c356a93cd165518429e77fcbdf0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 16:57:30 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 16:57:30 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":6}]},"message":"doc update","epoch":1581641850,"epoch_utc":null},{"commit":"66942d64babf932faeb887eb4ec0cab32829321a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 16:56:48 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 16:56:48 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":4}]},"message":"changelog update","epoch":1581641808,"epoch_utc":null},{"commit":"2fb6ae08d76e7a5727b2fcdd5def3e3822e0cf72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 12:17:41 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 12:17:41 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"fix shlex usage","epoch":1581625061,"epoch_utc":null},{"commit":"bf8811e03e2a5b736f4c084f42400fcde400ff3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 10:25:41 2020 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 10:25:41 2020 -0500","stats":{"files_changed":1,"insertions":6,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]},"message":"add comments","epoch":1581618341,"epoch_utc":null},{"commit":"c8b502c571d3081ca3086e349a426ca252a3bb84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 10:14:32 2020 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 10:14:32 2020 -0500","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6}]},"message":"remove unnecessary join and add comments","epoch":1581617672,"epoch_utc":null},{"commit":"81c11a975c6ee66a1f83350df8b065a6b07dcc9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 10:08:43 2020 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 10:08:43 2020 -0500","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"added docstrings","epoch":1581617323,"epoch_utc":null},{"commit":"0d370eb403ab4d9ed11e36776efc08bdd3505c1a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 10:03:11 2020 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 10:03:11 2020 -0500","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"doc update","epoch":1581616991,"epoch_utc":null},{"commit":"7492c3f1e312cdb0c58c2077db0d60d2cab1e58f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 09:48:42 2020 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 09:48:42 2020 -0500","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"changelog update","epoch":1581616122,"epoch_utc":null},{"commit":"515a8a84b79c9bf6f3001d3c52faa82a6709b8d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 09:47:40 2020 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 09:47:40 2020 -0500","stats":{"files_changed":33,"insertions":33,"deletions":33,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2}]},"message":"add \"command\" to description","epoch":1581616060,"epoch_utc":null},{"commit":"dd6680efb2b15bb8ed676016aae1c65193dfe147","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 09:47:16 2020 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Feb 13 09:47:16 2020 -0500","stats":{"files_changed":2,"insertions":29,"deletions":14,"files":["changelog.txt","jc/cli.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":40}]},"message":"allow condensed options (-prdq is equivalent to -p -r -d -q)","epoch":1581616036,"epoch_utc":null},{"commit":"a7158373cd225685f5c398fa36b8d5208e20521c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 12 00:16:17 2020 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 12 00:16:17 2020 -0500","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"comment update","epoch":1581495377,"epoch_utc":null},{"commit":"6d50ec71997cac9c898737de93b8a945f0351e53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 12 00:11:48 2020 -0500","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 12 00:11:48 2020 -0500","stats":{"files_changed":1,"insertions":9,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":15}]},"message":"add try/except to fix bare jc command condition","epoch":1581495108,"epoch_utc":null},{"commit":"95dbf98e8e03486f74d986683f52699f4f9c9577","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 11 19:14:51 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 11 19:14:51 2020 -0800","stats":{"files_changed":1,"insertions":26,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":32}]},"message":"allow options in magic syntax","epoch":1581477291,"epoch_utc":null},{"commit":"d49323e4ebf2a8aebd1d8ea65ef0854ee8bcb29f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 11 18:09:21 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 11 18:09:21 2020 -0800","stats":{"files_changed":33,"insertions":33,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":1},{"name":"jc/parsers/crontab.py","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":1},{"name":"jc/parsers/du.py","lines_changed":1},{"name":"jc/parsers/env.py","lines_changed":1},{"name":"jc/parsers/foo.py","lines_changed":1},{"name":"jc/parsers/free.py","lines_changed":1},{"name":"jc/parsers/fstab.py","lines_changed":1},{"name":"jc/parsers/history.py","lines_changed":1},{"name":"jc/parsers/id.py","lines_changed":1},{"name":"jc/parsers/ifconfig.py","lines_changed":1},{"name":"jc/parsers/iptables.py","lines_changed":1},{"name":"jc/parsers/jobs.py","lines_changed":1},{"name":"jc/parsers/ls.py","lines_changed":1},{"name":"jc/parsers/lsblk.py","lines_changed":1},{"name":"jc/parsers/lsmod.py","lines_changed":1},{"name":"jc/parsers/lsof.py","lines_changed":1},{"name":"jc/parsers/mount.py","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":1},{"name":"jc/parsers/pip_list.py","lines_changed":1},{"name":"jc/parsers/pip_show.py","lines_changed":1},{"name":"jc/parsers/ps.py","lines_changed":1},{"name":"jc/parsers/route.py","lines_changed":1},{"name":"jc/parsers/ss.py","lines_changed":1},{"name":"jc/parsers/stat.py","lines_changed":1},{"name":"jc/parsers/systemctl.py","lines_changed":1},{"name":"jc/parsers/systemctl_lj.py","lines_changed":1},{"name":"jc/parsers/systemctl_ls.py","lines_changed":1},{"name":"jc/parsers/systemctl_luf.py","lines_changed":1},{"name":"jc/parsers/uname.py","lines_changed":1},{"name":"jc/parsers/uptime.py","lines_changed":1},{"name":"jc/parsers/w.py","lines_changed":1}]},"message":"add magic_commands list to info","epoch":1581473361,"epoch_utc":null},{"commit":"08c1e2aec9d6bb68653dc12ba2272535fb7cef09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 11 18:08:59 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 11 18:08:59 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add magic syntax","epoch":1581473339,"epoch_utc":null},{"commit":"a2c137df2e6d3b133df5df0bb3f9b1ca69990557","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 11 18:08:37 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 11 18:08:37 2020 -0800","stats":{"files_changed":2,"insertions":66,"deletions":299,"files":["jc/cli.py","jc/cli.py.old"],"file_stats":[{"name":"jc/cli.py","lines_changed":135},{"name":"jc/cli.py.old","lines_changed":230}]},"message":"better magic command syntax logic using introspection information from parser modules","epoch":1581473317,"epoch_utc":null},{"commit":"fe27dcdb8f72b5a288f978b87be2eb930099543e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 11 12:16:23 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 11 12:16:23 2020 -0800","stats":{"files_changed":2,"insertions":319,"deletions":45,"files":["jc/cli.py","jc/cli.py.old"],"file_stats":[{"name":"jc/cli.py","lines_changed":134},{"name":"jc/cli.py.old","lines_changed":230}]},"message":"proof of concept for magic syntax (e.g. jc ls -al)","epoch":1581452183,"epoch_utc":null},{"commit":"028e136161ac15f588845f87907b4565a6ee7be2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 8 12:46:42 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Feb 8 12:46:42 2020 -0800","stats":{"files_changed":4,"insertions":7,"deletions":2,"files":["MANIFEST.in","changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"MANIFEST.in","lines_changed":1},{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":3}]},"message":"bump to 1.7.2: add test fixtures to package","epoch":1581194802,"epoch_utc":null},{"commit":"9a85a0a4d504447b32fb622bb17cebc5e47f687f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 8 12:46:14 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Feb 8 12:46:14 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/crontab_u.md","jc/parsers/crontab_u.py"],"file_stats":[{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2}]},"message":"fix doc","epoch":1581194774,"epoch_utc":null},{"commit":"3a1cbc4d5063344c3e3a4bf510d651a36beedfb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 22:26:47 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 22:26:47 2020 -0800","stats":{"files_changed":1,"insertions":14,"deletions":14,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":28}]},"message":"move info class to top","epoch":1580970407,"epoch_utc":null},{"commit":"77d334f7f386f79ec0571325500054fdab207f31","merge":"4de8f42 53cdf86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:59:52 2020 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Feb 5 16:59:52 2020 -0800","message":"Merge pull request #19 from kellyjonbrazil/dev-1.7.1\n\nDev v1.7.1","epoch":1580950792,"epoch_utc":null},{"commit":"53cdf863acc72dbdb671773e30277f42e9eadc0e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:53:17 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 16:53:17 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":4}]},"message":"changelog update","epoch":1580950397,"epoch_utc":null},{"commit":"7b7e7fe0fe92edef1e559bd7ae8272530d7ed5c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:50:55 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 16:50:55 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"changelog update","epoch":1580950255,"epoch_utc":null},{"commit":"0c03132847a3d2bcbdb0b743e1472865916cced4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:18:58 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 16:18:58 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"fix error codes using sys.exit()","epoch":1580948338,"epoch_utc":null},{"commit":"3b81f7e2a1381958b33962d4531f3fa223c6a83e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:12:09 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 16:12:09 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"exit code on ctrl-c exit","epoch":1580947929,"epoch_utc":null},{"commit":"3d76437b435660e92633c604c4ad32ee0500a28b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:00:23 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 16:00:23 2020 -0800","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ini.md","docs/parsers/xml.md","jc/parsers/ini.py","jc/parsers/xml.py"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/xml.py","lines_changed":2}]},"message":"doc fix","epoch":1580947223,"epoch_utc":null},{"commit":"4bc54c78cea48682ed0432ea56460a26a0e52f83","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:00:10 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 16:00:10 2020 -0800","stats":{"files_changed":4,"insertions":7,"deletions":7,"files":["docs/parsers/du.md","docs/parsers/history.md","jc/parsers/du.py","jc/parsers/history.py"],"file_stats":[{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":6},{"name":"jc/parsers/history.py","lines_changed":4}]},"message":"fix compatibility list","epoch":1580947210,"epoch_utc":null},{"commit":"3d303a96b9f6d582b1e99a632da539c3bee4df7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 15:52:39 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 15:52:39 2020 -0800","stats":{"files_changed":5,"insertions":16,"deletions":2,"files":["tests/fixtures/centos-7.7/crontab-u.json","tests/fixtures/centos-7.7/{crontab2.out => crontab-u.out}","tests/fixtures/centos-7.7/crontab.json","tests/fixtures/ubuntu-18.04/crontab-u.json","tests/test_crontab_u.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/crontab-u.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/{crontab2.out => crontab-u.out}","lines_changed":1},{"name":"tests/fixtures/centos-7.7/crontab.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/crontab-u.json","lines_changed":2},{"name":"tests/test_crontab_u.py","lines_changed":12}]},"message":"crontab bug fix and tests","epoch":1580946759,"epoch_utc":null},{"commit":"33c99d031d18e52a8ca85dfc1a8cba0acebfc3bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 15:12:59 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 15:12:59 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":2}]},"message":"fix line clobbering bug","epoch":1580944379,"epoch_utc":null},{"commit":"caf7e9f69a22f3c9b3d4624fd2238d6e54d932ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 15:11:51 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 15:11:51 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/crontab_u.py"],"file_stats":[{"name":"jc/parsers/crontab_u.py","lines_changed":6}]},"message":"fix line clobbering bug and add user field to shortcuts","epoch":1580944311,"epoch_utc":null},{"commit":"9449f1f5d5e7bc075549549758af5cc3a6c4524f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 14:44:49 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 14:44:49 2020 -0800","stats":{"files_changed":4,"insertions":9,"deletions":3,"files":["changelog.txt","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/fixtures/centos-7.7/crontab2.out"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/crontab.py","lines_changed":4},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/crontab2.out","lines_changed":5}]},"message":"crontab bugfix: inserting header row was clobbering the first data row","epoch":1580942689,"epoch_utc":null},{"commit":"6bad164b5e2a5b7c7ce82c69b6c091fc079ab2fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 14:10:22 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 14:10:22 2020 -0800","stats":{"files_changed":1,"insertions":7,"deletions":9,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":16}]},"message":"simplify by removing unnecessary getattr calls","epoch":1580940622,"epoch_utc":null},{"commit":"bb5ba7ddb146821db2efe095b6de5ae5b72bb335","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 13:57:34 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 13:57:34 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":7}]},"message":"add indent variable to helptext","epoch":1580939854,"epoch_utc":null},{"commit":"8b2e01d5404649e8f94c81ca3b5fa05fe8962220","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 13:50:12 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 13:50:12 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"doc update","epoch":1580939412,"epoch_utc":null},{"commit":"ff1159b1deb9b870382a6066166961902679b569","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 11:45:17 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 11:45:17 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"exit codes on error","epoch":1580931917,"epoch_utc":null},{"commit":"a2fd3202a0a3df336792f167c546ea3e53ea2332","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 11:34:33 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 11:34:33 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/pip_list.py","jc/parsers/pip_show.py"],"file_stats":[{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2}]},"message":"description formatting change","epoch":1580931273,"epoch_utc":null},{"commit":"7b53715b91787a8885d61ddc0079c7ee8f9348a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 11:08:58 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 11:08:58 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/crontab_u.py"],"file_stats":[{"name":"jc/parsers/crontab_u.py","lines_changed":2}]},"message":"change description","epoch":1580929738,"epoch_utc":null},{"commit":"e05fc0a5107b348af14ff4bea39d274939fab7dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 11:08:47 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 11:08:47 2020 -0800","stats":{"files_changed":1,"insertions":8,"deletions":8,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":16}]},"message":"change padding of helptext","epoch":1580929727,"epoch_utc":null},{"commit":"43604c33f654b8c19e8cce387ebbf31bd598b73b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 10:59:51 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 10:59:51 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"doc update","epoch":1580929191,"epoch_utc":null},{"commit":"eb67c484ff2a9530b434cd6a90c160f6936e1de7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 10:58:26 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 10:58:26 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"add crontab-u to parsers list","epoch":1580929106,"epoch_utc":null},{"commit":"a7b7bdd46781d07e6e70d74a41a3944855fde5fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 10:55:08 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Feb 5 10:55:08 2020 -0800","stats":{"files_changed":1,"insertions":94,"deletions":92,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":186}]},"message":"load parser modules 'just in time' so we don't need to load all modules at startup","epoch":1580928908,"epoch_utc":null},{"commit":"ab06989a18faf5378f1e73c7016ea02e1218ff9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:46:52 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 21:46:52 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":10}]},"message":"description updates","epoch":1580881612,"epoch_utc":null},{"commit":"657b722f947b6a0aa7e52a786e4c84f177e9a5c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:44:10 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 21:44:10 2020 -0800","stats":{"files_changed":4,"insertions":8,"deletions":8,"files":["README.md","changelog.txt","docs/parsers/ini.md","jc/parsers/ini.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"changelog.txt","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"jc/parsers/ini.py","lines_changed":6}]},"message":"ini to INI","epoch":1580881450,"epoch_utc":null},{"commit":"dd2aecad2787186b3962723086bb7e13eff4874f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:37:07 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 21:37:07 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"description update","epoch":1580881027,"epoch_utc":null},{"commit":"c82c5c5c648384eb5a54205ba8590624a3ab4375","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:34:57 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 21:34:57 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":6}]},"message":"changelog update","epoch":1580880897,"epoch_utc":null},{"commit":"a1761cd68f91e2668d8d7e2fa7774f6496408be6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:25:33 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 21:25:33 2020 -0800","stats":{"files_changed":3,"insertions":42,"deletions":0,"files":["tests/fixtures/centos-7.7/id.json","tests/fixtures/osx-10.14.6/id.json","tests/test_id.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/id.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/id.json","lines_changed":1},{"name":"tests/test_id.py","lines_changed":40}]},"message":"id tests","epoch":1580880333,"epoch_utc":null},{"commit":"d618a7f583629bb7a7fc0854e7349cab07e3e003","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:17:03 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 21:17:03 2020 -0800","stats":{"files_changed":4,"insertions":143,"deletions":9,"files":["README.md","docgen.sh","docs/parsers/id.md","jc/parsers/id.py"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/id.md","lines_changed":133},{"name":"jc/parsers/id.py","lines_changed":12}]},"message":"doc update","epoch":1580879823,"epoch_utc":null},{"commit":"831a42f66096f5efbbf0f6882970c328120f9c9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:12:32 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 21:12:32 2020 -0800","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":48}]},"message":"id formatting","epoch":1580879552,"epoch_utc":null},{"commit":"3b36022e5a1056a28a83494b1ab8fab209399c2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:09:42 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 21:09:42 2020 -0800","stats":{"files_changed":5,"insertions":250,"deletions":1,"files":["README.md","jc/cli.py","jc/parsers/id.py","tests/fixtures/centos-7.7/id.out","tests/fixtures/osx-10.14.6/id.out"],"file_stats":[{"name":"README.md","lines_changed":33},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":214},{"name":"tests/fixtures/centos-7.7/id.out","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/id.out","lines_changed":1}]},"message":"add id parser","epoch":1580879382,"epoch_utc":null},{"commit":"d01dfa25f10f82cd201ae7b4c9cc18313773f8d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 15:22:36 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 15:22:36 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]},"message":"changelog updates","epoch":1580858556,"epoch_utc":null},{"commit":"395a99037b4816eb800b289f90372a9b8d7d36cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:36:03 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 14:36:03 2020 -0800","stats":{"files_changed":3,"insertions":89,"deletions":13,"files":["README.md","docs/parsers/history.md","jc/parsers/history.py"],"file_stats":[{"name":"README.md","lines_changed":84},{"name":"docs/parsers/history.md","lines_changed":10},{"name":"jc/parsers/history.py","lines_changed":8}]},"message":"crontab-u and history doc updates","epoch":1580855763,"epoch_utc":null},{"commit":"025986c51d2d4869b17de63a7dd96efa2988e3c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:31:28 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 14:31:28 2020 -0800","stats":{"files_changed":3,"insertions":13,"deletions":3,"files":["jc/parsers/history.py","tests/fixtures/centos-7.7/history.json","tests/fixtures/ubuntu-18.04/history.json"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":12},{"name":"tests/fixtures/centos-7.7/history.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/history.json","lines_changed":2}]},"message":"change history 'line' to integer","epoch":1580855488,"epoch_utc":null},{"commit":"c56b83093ff05f55ef4643c1731cff61d4b9e8ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:19:33 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 14:19:33 2020 -0800","stats":{"files_changed":3,"insertions":202,"deletions":2,"files":["docgen.sh","docs/parsers/crontab.md","docs/parsers/crontab_u.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"docs/parsers/crontab_u.md","lines_changed":199}]},"message":"doc update","epoch":1580854773,"epoch_utc":null},{"commit":"7c712a4133abd843d4da926e4c8d548abd1d6fa3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:18:14 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 14:18:14 2020 -0800","stats":{"files_changed":1,"insertions":52,"deletions":50,"files":["jc/parsers/crontab_u.py"],"file_stats":[{"name":"jc/parsers/crontab_u.py","lines_changed":102}]},"message":"doc update","epoch":1580854694,"epoch_utc":null},{"commit":"9a0cfe6dfa4888f435d35bd2d35126d031a556d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:18:01 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 14:18:01 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":4}]},"message":"minor formatting","epoch":1580854681,"epoch_utc":null},{"commit":"a116cdbcec1b27192dd0f9f4707629353edb3caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:11:34 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 14:11:34 2020 -0800","stats":{"files_changed":5,"insertions":29,"deletions":13,"files":["tests/fixtures/ubuntu-18.04/crontab-u.json",".../ubuntu-18.04/{crontab.out => crontab-u.out}","tests/fixtures/ubuntu-18.04/crontab.json","tests/test_crontab.py","tests/test_crontab_u.py"],"file_stats":[{"name":"tests/fixtures/ubuntu-18.04/crontab-u.json","lines_changed":1},{"name":".../ubuntu-18.04/{crontab.out => crontab-u.out}","lines_changed":0},{"name":"tests/fixtures/ubuntu-18.04/crontab.json","lines_changed":1},{"name":"tests/test_crontab.py","lines_changed":12},{"name":"tests/test_crontab_u.py","lines_changed":28}]},"message":"tests for crontab-u","epoch":1580854294,"epoch_utc":null},{"commit":"f2d616c98e049cdac5d667e63723f92110419a1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:02:27 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 14:02:27 2020 -0800","stats":{"files_changed":3,"insertions":272,"deletions":0,"files":["changelog.txt","jc/cli.py","jc/parsers/crontab_u.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":269}]},"message":"add crontab with user parser","epoch":1580853747,"epoch_utc":null},{"commit":"42cbd1777dbacc614d75f67f3f9156f72be46532","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 13:53:45 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 13:53:45 2020 -0800","stats":{"files_changed":2,"insertions":80,"deletions":0,"files":["tests/test_xml.py","tests/test_yaml.py"],"file_stats":[{"name":"tests/test_xml.py","lines_changed":40},{"name":"tests/test_yaml.py","lines_changed":40}]},"message":"add xml and yaml tests","epoch":1580853225,"epoch_utc":null},{"commit":"ebf375aac0473249cfd212068f6e6e33cc42449a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 12:18:31 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 12:18:31 2020 -0800","stats":{"files_changed":1,"insertions":40,"deletions":0,"files":["tests/test_ini.py"],"file_stats":[{"name":"tests/test_ini.py","lines_changed":40}]},"message":"add ini tests","epoch":1580847511,"epoch_utc":null},{"commit":"1f9050267eeb870c4c0f50000fc32985c4d8535b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 12:02:18 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 12:02:18 2020 -0800","stats":{"files_changed":12,"insertions":586,"deletions":0,"files":["tests/fixtures/generic/ini-iptelserver.ini","tests/fixtures/generic/ini-iptelserver.json","tests/fixtures/generic/ini-test.ini","tests/fixtures/generic/ini-test.json","tests/fixtures/generic/xml-cd_catalog.json","tests/fixtures/generic/xml-cd_catalog.xml","tests/fixtures/generic/xml-foodmenu.json","tests/fixtures/generic/xml-foodmenu.xml","tests/fixtures/generic/yaml-istio-sc.json","tests/fixtures/generic/yaml-istio-sc.yaml","tests/fixtures/generic/yaml-istio-sidecar.json","tests/fixtures/generic/yaml-istio-sidecar.yaml"],"file_stats":[{"name":"tests/fixtures/generic/ini-iptelserver.ini","lines_changed":133},{"name":"tests/fixtures/generic/ini-iptelserver.json","lines_changed":1},{"name":"tests/fixtures/generic/ini-test.ini","lines_changed":12},{"name":"tests/fixtures/generic/ini-test.json","lines_changed":1},{"name":"tests/fixtures/generic/xml-cd_catalog.json","lines_changed":1},{"name":"tests/fixtures/generic/xml-cd_catalog.xml","lines_changed":211},{"name":"tests/fixtures/generic/xml-foodmenu.json","lines_changed":1},{"name":"tests/fixtures/generic/xml-foodmenu.xml","lines_changed":33},{"name":"tests/fixtures/generic/yaml-istio-sc.json","lines_changed":1},{"name":"tests/fixtures/generic/yaml-istio-sc.yaml","lines_changed":17},{"name":"tests/fixtures/generic/yaml-istio-sidecar.json","lines_changed":1},{"name":"tests/fixtures/generic/yaml-istio-sidecar.yaml","lines_changed":174}]},"message":"add ini, xml, and yaml test files","epoch":1580846538,"epoch_utc":null},{"commit":"d7f9707a1521719ce051140b1a0b4ced7c5114c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 11:18:32 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 11:18:32 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/ini.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"minor formatting","epoch":1580843912,"epoch_utc":null},{"commit":"ab589ee3ed09b9d5e09d8c046f3a64cd2bd14c98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 11:18:15 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Feb 4 11:18:15 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"add __version__ variable","epoch":1580843895,"epoch_utc":null},{"commit":"c84ec0361fc4c877c698378b28ff9e8b502793b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 22:25:30 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 22:25:30 2020 -0800","stats":{"files_changed":4,"insertions":105,"deletions":3,"files":["README.md","docgen.sh","docs/parsers/xml.md","jc/parsers/xml.py"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/xml.md","lines_changed":99},{"name":"jc/parsers/xml.py","lines_changed":5}]},"message":"xml example update","epoch":1580797530,"epoch_utc":null},{"commit":"47d2f8968a8a9b68fc9fff45985f5e69f1a5cc40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 22:21:40 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 22:21:40 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"changelog.txt","lines_changed":1}]},"message":"doc update","epoch":1580797300,"epoch_utc":null},{"commit":"019c480bcce7fe3821b75906fc673ce7bb1ffadc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 22:17:13 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 22:17:13 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"update acknowledgments","epoch":1580797033,"epoch_utc":null},{"commit":"547c6d3d5956984d3c4fb5c2a1b76a595752b467","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 22:13:06 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 22:13:06 2020 -0800","stats":{"files_changed":5,"insertions":172,"deletions":2,"files":["README.md","changelog.txt","jc/cli.py","jc/parsers/xml.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":46},{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/xml.py","lines_changed":119},{"name":"setup.py","lines_changed":3}]},"message":"add xml parser","epoch":1580796786,"epoch_utc":null},{"commit":"b5ebf8b76afcd0e0190994048fe1f5b53f654451","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 21:41:53 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 21:41:53 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add ruamel.yaml ack","epoch":1580794913,"epoch_utc":null},{"commit":"c690e328f23a69f592dfaaa949b74ba2190ad376","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 21:38:21 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 21:38:21 2020 -0800","stats":{"files_changed":2,"insertions":102,"deletions":14,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/yaml.md","lines_changed":58},{"name":"jc/parsers/yaml.py","lines_changed":58}]},"message":"add examples","epoch":1580794701,"epoch_utc":null},{"commit":"cbb92c1a9517234806f1c54398a69645b6f43669","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 21:38:08 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 21:38:08 2020 -0800","stats":{"files_changed":1,"insertions":94,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":94}]},"message":"add ini and yaml","epoch":1580794688,"epoch_utc":null},{"commit":"beb41997c9b3797e73a678ec1bcddcfb83b5ef0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 21:28:11 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 21:28:11 2020 -0800","stats":{"files_changed":3,"insertions":91,"deletions":2,"files":["docgen.sh","docs/parsers/ini.md","jc/parsers/ini.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ini.md","lines_changed":87},{"name":"jc/parsers/ini.py","lines_changed":5}]},"message":"doc update","epoch":1580794091,"epoch_utc":null},{"commit":"755a6faf1110f150fe2261b81439b7d17a9b424e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 21:22:30 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 21:22:30 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":8,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":12}]},"message":"clean up multi-document support","epoch":1580793750,"epoch_utc":null},{"commit":"021f8350a31a49ecc539f02576303600b222b49d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 19:11:36 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 19:11:36 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":4}]},"message":"update doc","epoch":1580785896,"epoch_utc":null},{"commit":"76583dcd2f5ef32e58ca87149154563b07e061cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 19:07:31 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 19:07:31 2020 -0800","stats":{"files_changed":2,"insertions":113,"deletions":0,"files":["jc/cli.py","jc/parsers/ini.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/ini.py","lines_changed":111}]},"message":"add ini file parser","epoch":1580785651,"epoch_utc":null},{"commit":"bf033239a706c42be3d7508c58a51c542f8a69b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 16:20:38 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 16:20:38 2020 -0800","stats":{"files_changed":2,"insertions":82,"deletions":7,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/yaml.md","lines_changed":69},{"name":"jc/parsers/yaml.py","lines_changed":20}]},"message":"doc update","epoch":1580775638,"epoch_utc":null},{"commit":"eb37fccd37fd625f701a14b6cfcf30e9f0bbff4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 16:17:29 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 16:17:29 2020 -0800","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":11}]},"message":"doc update","epoch":1580775449,"epoch_utc":null},{"commit":"d04ad453319fe45e302da87f970d2ac0806fae1a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 16:12:45 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 16:12:45 2020 -0800","stats":{"files_changed":3,"insertions":7,"deletions":2,"files":["changelog.txt","docgen.sh","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"setup.py","lines_changed":5}]},"message":"setup for 1.7.1","epoch":1580775165,"epoch_utc":null},{"commit":"db157b8ca7f7fa935676bafeaafdfd9818a89e6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 16:12:32 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 16:12:32 2020 -0800","stats":{"files_changed":2,"insertions":94,"deletions":2,"files":["jc/cli.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6},{"name":"jc/parsers/yaml.py","lines_changed":90}]},"message":"add yaml file parser","epoch":1580775152,"epoch_utc":null},{"commit":"68f277bb2081eb2cba14ffe7f0ee1ee0a982335b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 16:11:58 2020 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Feb 3 16:11:58 2020 -0800","stats":{"files_changed":33,"insertions":99,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/crontab.py","lines_changed":3},{"name":"jc/parsers/df.py","lines_changed":3},{"name":"jc/parsers/dig.py","lines_changed":3},{"name":"jc/parsers/du.py","lines_changed":3},{"name":"jc/parsers/env.py","lines_changed":3},{"name":"jc/parsers/foo.py","lines_changed":3},{"name":"jc/parsers/free.py","lines_changed":3},{"name":"jc/parsers/fstab.py","lines_changed":3},{"name":"jc/parsers/history.py","lines_changed":3},{"name":"jc/parsers/hosts.py","lines_changed":3},{"name":"jc/parsers/ifconfig.py","lines_changed":3},{"name":"jc/parsers/iptables.py","lines_changed":3},{"name":"jc/parsers/jobs.py","lines_changed":3},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"jc/parsers/lsblk.py","lines_changed":3},{"name":"jc/parsers/lsmod.py","lines_changed":3},{"name":"jc/parsers/lsof.py","lines_changed":3},{"name":"jc/parsers/mount.py","lines_changed":3},{"name":"jc/parsers/netstat.py","lines_changed":3},{"name":"jc/parsers/pip_list.py","lines_changed":3},{"name":"jc/parsers/pip_show.py","lines_changed":3},{"name":"jc/parsers/ps.py","lines_changed":3},{"name":"jc/parsers/route.py","lines_changed":3},{"name":"jc/parsers/ss.py","lines_changed":3},{"name":"jc/parsers/stat.py","lines_changed":3},{"name":"jc/parsers/systemctl.py","lines_changed":3},{"name":"jc/parsers/systemctl_lj.py","lines_changed":3},{"name":"jc/parsers/systemctl_ls.py","lines_changed":3},{"name":"jc/parsers/systemctl_luf.py","lines_changed":3},{"name":"jc/parsers/uname.py","lines_changed":3},{"name":"jc/parsers/uptime.py","lines_changed":3},{"name":"jc/parsers/w.py","lines_changed":3}]},"message":"add __version__","epoch":1580775118,"epoch_utc":null},{"commit":"4de8f42664379570392552796e34324abb39fdc2","merge":"6633d92 4f11855","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 12:11:13 2019 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Dec 17 12:11:13 2019 -0800","message":"Merge pull request #17 from kellyjonbrazil/dev\n\nDev v1.6.1","epoch":1576613473,"epoch_utc":null},{"commit":"4f118559356edc1da866e1bec80830e7a75a0b26","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 12:09:24 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 17 12:09:24 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]},"message":"update version info","epoch":1576613364,"epoch_utc":null},{"commit":"2b9a5fcc32f85295faa55410efcaf142c42bd167","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 12:05:40 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 17 12:05:40 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":4}]},"message":"update version","epoch":1576613140,"epoch_utc":null},{"commit":"224948d1f23e01b7cd968820529579792f862f0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 11:44:43 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 17 11:44:43 2019 -0800","stats":{"files_changed":21,"insertions":428,"deletions":0,"files":["tests/fixtures/centos-7.7/pip-list.json","tests/fixtures/centos-7.7/pip-list.out","tests/fixtures/centos-7.7/pip-show.json","tests/fixtures/centos-7.7/pip-show.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.11.6/pip-list.json","tests/fixtures/osx-10.11.6/pip-list.out","tests/fixtures/osx-10.11.6/pip-show.json","tests/fixtures/osx-10.11.6/pip-show.out","tests/fixtures/osx-10.14.6/pip-list.json","tests/fixtures/osx-10.14.6/pip-list.out","tests/fixtures/osx-10.14.6/pip-show.json","tests/fixtures/osx-10.14.6/pip-show.out","tests/fixtures/ubuntu-18.04/pip-list-legacy.json","tests/fixtures/ubuntu-18.04/pip-list-legacy.out","tests/fixtures/ubuntu-18.04/pip-list.json","tests/fixtures/ubuntu-18.04/pip-list.out","tests/fixtures/ubuntu-18.04/pip-show.json","tests/fixtures/ubuntu-18.04/pip-show.out","tests/test_pip_list.py","tests/test_pip_show.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/pip-list.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/pip-list.out","lines_changed":22},{"name":"tests/fixtures/centos-7.7/pip-show.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/pip-show.out","lines_changed":32},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/pip-list.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/pip-list.out","lines_changed":7},{"name":"tests/fixtures/osx-10.11.6/pip-show.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/pip-show.out","lines_changed":32},{"name":"tests/fixtures/osx-10.14.6/pip-list.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/pip-list.out","lines_changed":7},{"name":"tests/fixtures/osx-10.14.6/pip-show.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/pip-show.out","lines_changed":32},{"name":"tests/fixtures/ubuntu-18.04/pip-list-legacy.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/pip-list-legacy.out","lines_changed":57},{"name":"tests/fixtures/ubuntu-18.04/pip-list.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/pip-list.out","lines_changed":59},{"name":"tests/fixtures/ubuntu-18.04/pip-show.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/pip-show.out","lines_changed":29},{"name":"tests/test_pip_list.py","lines_changed":76},{"name":"tests/test_pip_show.py","lines_changed":64}]},"message":"pip list and pip show tests","epoch":1576611883,"epoch_utc":null},{"commit":"36f2812d5a7a94c412e098233c026d99d5205b60","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 10:58:00 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 17 10:58:00 2019 -0800","stats":{"files_changed":1,"insertions":15,"deletions":7,"files":["jc/parsers/pip_list.py"],"file_stats":[{"name":"jc/parsers/pip_list.py","lines_changed":22}]},"message":"add support for legacy output","epoch":1576609080,"epoch_utc":null},{"commit":"be06aa2b31c057c56229e75c7fa70052b83053ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 10:09:19 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 17 10:09:19 2019 -0800","stats":{"files_changed":65,"insertions":70,"deletions":66,"files":["docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":3},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":3},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":3},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":3},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2}]},"message":"update parse() Return info","epoch":1576606159,"epoch_utc":null},{"commit":"41f8e3aba268ca0cd09931a04368615425c1aec8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 09:56:09 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 17 09:56:09 2019 -0800","stats":{"files_changed":65,"insertions":67,"deletions":65,"files":["docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":3},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":3},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2}]},"message":"update Return info","epoch":1576605369,"epoch_utc":null},{"commit":"093c0df8978ace842af5258f9aff72c63c6f843d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 09:38:50 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 17 09:38:50 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"schema info","epoch":1576604330,"epoch_utc":null},{"commit":"37afc7dc8ae30342d01f3f72e73646fa60bb5294","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 09:35:27 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 17 09:35:27 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"updte todo and compatibility","epoch":1576604127,"epoch_utc":null},{"commit":"efbf3549606fc77f8c16587ff04a0c316dfe5c00","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 09:24:08 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 17 09:24:08 2019 -0800","stats":{"files_changed":4,"insertions":126,"deletions":12,"files":["README.md","docgen.sh","docs/parsers/pip_show.md","jc/parsers/pip_show.py"],"file_stats":[{"name":"README.md","lines_changed":31},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/pip_show.md","lines_changed":94},{"name":"jc/parsers/pip_show.py","lines_changed":12}]},"message":"doc update for pip show","epoch":1576603448,"epoch_utc":null},{"commit":"5e39fe0d8044787389d8f206f3c863d4bdf1e2ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 09:20:26 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Dec 17 09:20:26 2019 -0800","stats":{"files_changed":1,"insertions":64,"deletions":5,"files":["jc/parsers/pip_show.py"],"file_stats":[{"name":"jc/parsers/pip_show.py","lines_changed":69}]},"message":"pip show parser working","epoch":1576603226,"epoch_utc":null},{"commit":"47328dc65969f149c8f027286774ff0847c18add","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 19:09:14 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 19:09:14 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add pip-show parser","epoch":1576552154,"epoch_utc":null},{"commit":"addeef50ba54f536855544937a6c98135ae5cd51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 19:07:51 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 19:07:51 2019 -0800","stats":{"files_changed":1,"insertions":84,"deletions":0,"files":["jc/parsers/pip_show.py"],"file_stats":[{"name":"jc/parsers/pip_show.py","lines_changed":84}]},"message":"initial pip show parser add","epoch":1576552071,"epoch_utc":null},{"commit":"ad338cc5b50a178091c47cbea9a1db135a7fb678","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:58:33 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 18:58:33 2019 -0800","stats":{"files_changed":2,"insertions":56,"deletions":42,"files":["docs/parsers/crontab.md","jc/parsers/crontab.py"],"file_stats":[{"name":"docs/parsers/crontab.md","lines_changed":49},{"name":"jc/parsers/crontab.py","lines_changed":49}]},"message":"schema doc update","epoch":1576551513,"epoch_utc":null},{"commit":"202bc8201e31fd453c682265347b4e2ac2d41718","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:54:19 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 18:54:19 2019 -0800","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["README.md","docs/parsers/crontab.md","jc/parsers/crontab.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"jc/parsers/crontab.py","lines_changed":4}]},"message":"doc update","epoch":1576551259,"epoch_utc":null},{"commit":"5ff99de405fbd8f79f9c2e301ac27184e0aba6fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:40:08 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 18:40:08 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add argument to parser info","epoch":1576550408,"epoch_utc":null},{"commit":"86ebe2cf9c6b336eacf217393c3c3c324ee29ec0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:36:13 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 18:36:13 2019 -0800","stats":{"files_changed":6,"insertions":205,"deletions":1,"files":["README.md","docgen.sh","docs/parsers/crontab.md","docs/parsers/pip_list.md","jc/cli.py","jc/parsers/pip_list.py"],"file_stats":[{"name":"README.md","lines_changed":21},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":75},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":105}]},"message":"initial add of pip list parser","epoch":1576550173,"epoch_utc":null},{"commit":"facf0b399c608d33f6a454ee24fd49fc62471742","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:09:29 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 18:09:29 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":4}]},"message":"add osx to campatible","epoch":1576548569,"epoch_utc":null},{"commit":"33db7b0bcb0f24979cad6e173737d75c8ed301af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:09:00 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 18:09:00 2019 -0800","stats":{"files_changed":4,"insertions":57,"deletions":0,"files":["tests/fixtures/centos-7.7/crontab.json","tests/fixtures/ubuntu-18.04/crontab.json","tests/fixtures/ubuntu-18.04/crontab.out","tests/test_crontab.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/crontab.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/crontab.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/crontab.out","lines_changed":15},{"name":"tests/test_crontab.py","lines_changed":40}]},"message":"add crontab tests","epoch":1576548540,"epoch_utc":null},{"commit":"663d07bca1181024d9d08b940237c52197c91729","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 17:52:09 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 17:52:09 2019 -0800","stats":{"files_changed":2,"insertions":191,"deletions":0,"files":["docgen.sh","docs/parsers/crontab.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/crontab.md","lines_changed":190}]},"message":"add crontab","epoch":1576547529,"epoch_utc":null},{"commit":"ba04e4997fcb28adbee446f633c121f1585b9f2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 17:51:11 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 17:51:11 2019 -0800","stats":{"files_changed":1,"insertions":113,"deletions":4,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":117}]},"message":"update docs","epoch":1576547471,"epoch_utc":null},{"commit":"c4fee1b658c91afa2abdd746af6c1b4697c44b35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 17:50:52 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 17:50:52 2019 -0800","stats":{"files_changed":1,"insertions":72,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":73}]},"message":"add crontab parser","epoch":1576547452,"epoch_utc":null},{"commit":"99b92a15bbebc5568f4455f388f945613c4a2759","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 17:45:34 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 17:45:34 2019 -0800","stats":{"files_changed":2,"insertions":37,"deletions":14,"files":["jc/parsers/crontab.py","tests/fixtures/centos-7.7/crontab.out"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":40},{"name":"tests/fixtures/centos-7.7/crontab.out","lines_changed":11}]},"message":"support shortcut schedules","epoch":1576547134,"epoch_utc":null},{"commit":"b076ab5b57a6a59db096485e5ff4eb9f91bae8be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 17:01:53 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 17:01:53 2019 -0800","stats":{"files_changed":3,"insertions":177,"deletions":0,"files":["jc/cli.py","jc/parsers/crontab.py","tests/fixtures/centos-7.7/crontab.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":132},{"name":"tests/fixtures/centos-7.7/crontab.out","lines_changed":43}]},"message":"initial crontab parser","epoch":1576544513,"epoch_utc":null},{"commit":"687759f75d0e80e81746a84f051e55cfdc870447","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 14:31:21 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 14:31:21 2019 -0800","stats":{"files_changed":1,"insertions":31,"deletions":31,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":62}]},"message":"alphabetize du entry","epoch":1576535481,"epoch_utc":null},{"commit":"9eaac7f3af0e0851c2d091d94c9920faa8a0fdfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 14:30:06 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 14:30:06 2019 -0800","stats":{"files_changed":1,"insertions":32,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":32}]},"message":"add du","epoch":1576535406,"epoch_utc":null},{"commit":"4c24e00cfc0748d98e220d08820b88fc156148db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 14:27:55 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 14:27:55 2019 -0800","stats":{"files_changed":5,"insertions":21738,"deletions":9,"files":["tests/fixtures/osx-10.11.6/du.json","tests/fixtures/osx-10.11.6/du.out","tests/fixtures/ubuntu-18.04/du.json","tests/fixtures/ubuntu-18.04/du.out","tests/test_du.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/du.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/du.out","lines_changed":2471},{"name":"tests/fixtures/ubuntu-18.04/du.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/du.out","lines_changed":19244},{"name":"tests/test_du.py","lines_changed":30}]},"message":"add osx-11 and ubuntu tests","epoch":1576535275,"epoch_utc":null},{"commit":"beb17011b03e720078b0752e79a6a0f6123d1d3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 13:57:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 13:57:42 2019 -0800","stats":{"files_changed":6,"insertions":131,"deletions":2,"files":["changelog.txt","docgen.sh","docs/parsers/du.md","docs/parsers/uname.md","tests/fixtures/osx-10.14.6/du.json","tests/test_du.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/du.md","lines_changed":115},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/du.json","lines_changed":1},{"name":"tests/test_du.py","lines_changed":12}]},"message":"du tests and docs","epoch":1576533462,"epoch_utc":null},{"commit":"e882bf55bcd1d3526423ed1ccc61fb4819395cce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 13:52:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 13:52:42 2019 -0800","stats":{"files_changed":7,"insertions":8755,"deletions":0,"files":["changelog.txt","jc/cli.py","jc/parsers/du.py","tests/fixtures/centos-7.7/du.json","tests/fixtures/centos-7.7/du.out","tests/fixtures/osx-10.14.6/du.out","tests/test_du.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":148},{"name":"tests/fixtures/centos-7.7/du.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/du.out","lines_changed":5199},{"name":"tests/fixtures/osx-10.14.6/du.out","lines_changed":3364},{"name":"tests/test_du.py","lines_changed":40}]},"message":"initial add du parser","epoch":1576533162,"epoch_utc":null},{"commit":"3a3016adb6d5b9e35f8a39908bfcdc65997cc5c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 11:52:18 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 11:52:18 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add parser_count to about","epoch":1576525938,"epoch_utc":null},{"commit":"1e8b68153ade8a1e3d2b4db36e0c402bbc887079","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 11:12:45 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 11:12:45 2019 -0800","stats":{"files_changed":4,"insertions":27,"deletions":1,"files":["tests/fixtures/osx-10.11.6/uname-a.json","tests/fixtures/osx-10.14.6/uname-a.json","tests/fixtures/osx-10.14.6/uname-a.out","tests/test_uname.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/uname-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/uname-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/uname-a.out","lines_changed":2},{"name":"tests/test_uname.py","lines_changed":24}]},"message":"add osx uname tests","epoch":1576523565,"epoch_utc":null},{"commit":"9335cf65fbb87e3a0a7da0c4e9bcd251cb829de2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 11:02:02 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 11:02:02 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"add uname osx support","epoch":1576522922,"epoch_utc":null},{"commit":"83f35256aee71f2619ddf880e2b8f2d6c63280bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 11:01:43 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 11:01:43 2019 -0800","stats":{"files_changed":1,"insertions":30,"deletions":19,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":49}]},"message":"add OSX support","epoch":1576522903,"epoch_utc":null},{"commit":"428333394817e4461a4eb095f4d6d128305a5f98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 10:03:47 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 10:03:47 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":2}]},"message":"version bump","epoch":1576519427,"epoch_utc":null},{"commit":"b8f902796b7fb23a41355b23f7ce235bd18edc58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 10:03:34 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 10:03:34 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]},"message":"shorten changelog","epoch":1576519414,"epoch_utc":null},{"commit":"8f99ab295cd15718b98781707def97539ad41920","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 09:08:47 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 09:08:47 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"info update","epoch":1576516127,"epoch_utc":null},{"commit":"882310e268e2022f0cd6da75f80f5356529cd05c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 09:04:52 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 09:04:52 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add name to about parser info","epoch":1576515892,"epoch_utc":null},{"commit":"56bce9521409d1850f75a3ae2be1363e765dd9dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 09:00:16 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 09:00:16 2019 -0800","stats":{"files_changed":1,"insertions":6,"deletions":10,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":16}]},"message":"about code cleanup","epoch":1576515616,"epoch_utc":null},{"commit":"c13ecbec2952c5d6765397f645e90653a4fd9d05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 08:59:41 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 08:59:41 2019 -0800","stats":{"files_changed":28,"insertions":2,"deletions":28,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":1},{"name":"jc/parsers/env.py","lines_changed":1},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":1},{"name":"jc/parsers/fstab.py","lines_changed":1},{"name":"jc/parsers/history.py","lines_changed":1},{"name":"jc/parsers/hosts.py","lines_changed":1},{"name":"jc/parsers/iptables.py","lines_changed":1},{"name":"jc/parsers/jobs.py","lines_changed":1},{"name":"jc/parsers/ls.py","lines_changed":1},{"name":"jc/parsers/lsblk.py","lines_changed":1},{"name":"jc/parsers/lsmod.py","lines_changed":1},{"name":"jc/parsers/lsof.py","lines_changed":1},{"name":"jc/parsers/mount.py","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":1},{"name":"jc/parsers/ps.py","lines_changed":1},{"name":"jc/parsers/route.py","lines_changed":1},{"name":"jc/parsers/ss.py","lines_changed":1},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":1},{"name":"jc/parsers/systemctl_lj.py","lines_changed":1},{"name":"jc/parsers/systemctl_ls.py","lines_changed":1},{"name":"jc/parsers/systemctl_luf.py","lines_changed":1},{"name":"jc/parsers/uname.py","lines_changed":1},{"name":"jc/parsers/uptime.py","lines_changed":1},{"name":"jc/parsers/w.py","lines_changed":1}]},"message":"clean up parser info","epoch":1576515581,"epoch_utc":null},{"commit":"0ffaaa6e73649d1f657af569ac0b912f166e8493","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 08:18:37 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 16 08:18:37 2019 -0800","stats":{"files_changed":1,"insertions":7,"deletions":9,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":16}]},"message":"clean up about code","epoch":1576513117,"epoch_utc":null},{"commit":"75eff3adea097157c005b2201e353a741241ce8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:56:40 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Dec 14 23:56:40 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":8}]},"message":"remove whitespace","epoch":1576396600,"epoch_utc":null},{"commit":"bf5f80476cff642ae672187ea59d40bdb602101e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:56:22 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Dec 14 23:56:22 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6}]},"message":"use real parser name in error message","epoch":1576396582,"epoch_utc":null},{"commit":"9aaf0fbb2f838c0af1e7f18fdb19104f9f5d3d39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:35:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Dec 14 23:35:42 2019 -0800","stats":{"files_changed":29,"insertions":146,"deletions":1,"files":["changelog.txt","docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"docs/parsers/arp.md","lines_changed":11},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5}]},"message":"doc updates","epoch":1576395342,"epoch_utc":null},{"commit":"8f01ef79532743573632d716ceea41d5ea752c88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:27:56 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Dec 14 23:27:56 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add -a option info","epoch":1576394876,"epoch_utc":null},{"commit":"da1d087452da02631296b1b3dc9ee10d4b7f764b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:21:47 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Dec 14 23:21:47 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add parser version info","epoch":1576394507,"epoch_utc":null},{"commit":"e16bc7e882a27a1d5a4bd7cf9972208e6997f96f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:15:15 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Dec 14 23:15:15 2019 -0800","stats":{"files_changed":29,"insertions":82,"deletions":17,"files":["jc/cli.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":71},{"name":"jc/parsers/arp.py","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":1},{"name":"jc/parsers/env.py","lines_changed":1},{"name":"jc/parsers/foo.py","lines_changed":1},{"name":"jc/parsers/free.py","lines_changed":1},{"name":"jc/parsers/fstab.py","lines_changed":1},{"name":"jc/parsers/history.py","lines_changed":1},{"name":"jc/parsers/hosts.py","lines_changed":1},{"name":"jc/parsers/iptables.py","lines_changed":1},{"name":"jc/parsers/jobs.py","lines_changed":1},{"name":"jc/parsers/ls.py","lines_changed":1},{"name":"jc/parsers/lsblk.py","lines_changed":1},{"name":"jc/parsers/lsmod.py","lines_changed":1},{"name":"jc/parsers/lsof.py","lines_changed":1},{"name":"jc/parsers/mount.py","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":1},{"name":"jc/parsers/ps.py","lines_changed":1},{"name":"jc/parsers/route.py","lines_changed":1},{"name":"jc/parsers/ss.py","lines_changed":1},{"name":"jc/parsers/stat.py","lines_changed":1},{"name":"jc/parsers/systemctl.py","lines_changed":1},{"name":"jc/parsers/systemctl_lj.py","lines_changed":1},{"name":"jc/parsers/systemctl_ls.py","lines_changed":1},{"name":"jc/parsers/systemctl_luf.py","lines_changed":1},{"name":"jc/parsers/uname.py","lines_changed":1},{"name":"jc/parsers/uptime.py","lines_changed":1},{"name":"jc/parsers/w.py","lines_changed":1}]},"message":"add about information to parsers","epoch":1576394115,"epoch_utc":null},{"commit":"fe9bdd4811216257c05b16d6d61897929669d434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 13 20:01:51 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 13 20:01:51 2019 -0800","stats":{"files_changed":31,"insertions":384,"deletions":219,"files":["changelog.txt","jc/cli.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/cli.py","lines_changed":127},{"name":"jc/parsers/arp.py","lines_changed":25},{"name":"jc/parsers/df.py","lines_changed":15},{"name":"jc/parsers/dig.py","lines_changed":15},{"name":"jc/parsers/env.py","lines_changed":16},{"name":"jc/parsers/foo.py","lines_changed":16},{"name":"jc/parsers/free.py","lines_changed":16},{"name":"jc/parsers/fstab.py","lines_changed":16},{"name":"jc/parsers/history.py","lines_changed":16},{"name":"jc/parsers/hosts.py","lines_changed":16},{"name":"jc/parsers/ifconfig.py","lines_changed":17},{"name":"jc/parsers/iptables.py","lines_changed":16},{"name":"jc/parsers/jobs.py","lines_changed":16},{"name":"jc/parsers/ls.py","lines_changed":16},{"name":"jc/parsers/lsblk.py","lines_changed":17},{"name":"jc/parsers/lsmod.py","lines_changed":16},{"name":"jc/parsers/lsof.py","lines_changed":16},{"name":"jc/parsers/mount.py","lines_changed":16},{"name":"jc/parsers/netstat.py","lines_changed":16},{"name":"jc/parsers/ps.py","lines_changed":16},{"name":"jc/parsers/route.py","lines_changed":16},{"name":"jc/parsers/ss.py","lines_changed":16},{"name":"jc/parsers/stat.py","lines_changed":15},{"name":"jc/parsers/systemctl.py","lines_changed":16},{"name":"jc/parsers/systemctl_lj.py","lines_changed":16},{"name":"jc/parsers/systemctl_ls.py","lines_changed":16},{"name":"jc/parsers/systemctl_luf.py","lines_changed":16},{"name":"jc/parsers/uname.py","lines_changed":16},{"name":"jc/parsers/uptime.py","lines_changed":16},{"name":"jc/parsers/w.py","lines_changed":16}]},"message":"add info class","epoch":1576296111,"epoch_utc":null},{"commit":"17b6f3f6d6c398a52166849088a793d0e3b328b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 13 14:36:21 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 13 14:36:21 2019 -0800","stats":{"files_changed":3,"insertions":26,"deletions":0,"files":["tests/fixtures/osx-10.11.6/uptime.json","tests/fixtures/osx-10.14.6/uptime.json","tests/test_uptime.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/uptime.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/uptime.json","lines_changed":1},{"name":"tests/test_uptime.py","lines_changed":24}]},"message":"add osx tests","epoch":1576276581,"epoch_utc":null},{"commit":"90a6baf0ee3b8b27476badada4e590e22144f810","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 13 14:30:12 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 13 14:30:12 2019 -0800","stats":{"files_changed":6,"insertions":52,"deletions":0,"files":["tests/fixtures/osx-10.11.6/ps-axu.json","tests/fixtures/osx-10.11.6/ps-ef.json","tests/fixtures/osx-10.11.6/w.json","tests/fixtures/osx-10.14.6/w.json","tests/test_ps.py","tests/test_w.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/ps-axu.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ps-ef.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/w.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/w.json","lines_changed":1},{"name":"tests/test_ps.py","lines_changed":24},{"name":"tests/test_w.py","lines_changed":24}]},"message":"add osx tests","epoch":1576276212,"epoch_utc":null},{"commit":"f0e73d0e72d540292f41fff51652932c4e8b0315","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 13 10:50:01 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 13 10:50:01 2019 -0800","stats":{"files_changed":8,"insertions":444,"deletions":0,"files":["tests/fixtures/osx-10.11.6/ps-axu.out","tests/fixtures/osx-10.11.6/ps-ef.out","tests/fixtures/osx-10.11.6/uname-a.out","tests/fixtures/osx-10.11.6/uptime.out","tests/fixtures/osx-10.11.6/w.out","tests/fixtures/osx-10.14.6/uname-a.out","tests/fixtures/osx-10.14.6/uptime.out","tests/fixtures/osx-10.14.6/w.out"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/ps-axu.out","lines_changed":211},{"name":"tests/fixtures/osx-10.11.6/ps-ef.out","lines_changed":211},{"name":"tests/fixtures/osx-10.11.6/uname-a.out","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/uptime.out","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/w.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/uname-a.out","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/uptime.out","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/w.out","lines_changed":10}]},"message":"add osx tests","epoch":1576263001,"epoch_utc":null},{"commit":"a762882f1ccea6789ce7813b313f3242175b5bd6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 13 08:58:23 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 13 08:58:23 2019 -0800","stats":{"files_changed":4,"insertions":2,"deletions":88,"files":["tests/fixtures/osx-10.14.6/ps-axu.json","tests/fixtures/osx-10.14.6/ps-axu.out","tests/fixtures/osx-10.14.6/ps-ef.json","tests/fixtures/osx-10.14.6/ps-ef.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ps-axu.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ps-axu.out","lines_changed":43},{"name":"tests/fixtures/osx-10.14.6/ps-ef.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ps-ef.out","lines_changed":43}]},"message":"fixture updates","epoch":1576256303,"epoch_utc":null},{"commit":"4c1bc5923658bf463805ea33ec8d170a817909ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 17:05:40 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 17:05:40 2019 -0800","stats":{"files_changed":3,"insertions":4,"deletions":3,"files":["docs/parsers/mount.md","docs/parsers/ps.md","docs/parsers/stat.md"],"file_stats":[{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":3},{"name":"docs/parsers/stat.md","lines_changed":2}]},"message":"doc updates","epoch":1576199140,"epoch_utc":null},{"commit":"f2962083f80503f82c3eddf470674c776e616b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 17:04:40 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 17:04:40 2019 -0800","stats":{"files_changed":7,"insertions":93,"deletions":17,"files":["changelog.txt","jc/parsers/mount.py","tests/fixtures/osx-10.14.6/mount.json","tests/fixtures/osx-10.14.6/mount.out","tests/fixtures/osx-10.14.6/mount2.json","tests/fixtures/osx-10.14.6/mount2.out","tests/test_mount.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/parsers/mount.py","lines_changed":68},{"name":"tests/fixtures/osx-10.14.6/mount.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/mount.out","lines_changed":6},{"name":"tests/fixtures/osx-10.14.6/mount2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/mount2.out","lines_changed":7},{"name":"tests/test_mount.py","lines_changed":24}]},"message":"add osx support for mount parser","epoch":1576199080,"epoch_utc":null},{"commit":"a0b22a5bcfa0777895243088b2c0f3bb5b758775","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 16:14:46 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 16:14:46 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"help text formatting","epoch":1576196086,"epoch_utc":null},{"commit":"dcf393354cd57683aaeecbed7b884d19b0fe94d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 16:10:30 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 16:10:30 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":2}]},"message":"doc fix","epoch":1576195830,"epoch_utc":null},{"commit":"5f771656e3fdd703d449b2817faa4faeff1cd879","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 16:07:52 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 16:07:52 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":10}]},"message":"use universal parser","epoch":1576195672,"epoch_utc":null},{"commit":"f376aab79328a211a127f4f818e7007232f1fae3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:59:36 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 15:59:36 2019 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":3}]},"message":"doc update","epoch":1576195176,"epoch_utc":null},{"commit":"3c96464217a740571e16c74ad41c1d92f7585547","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:59:24 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 15:59:24 2019 -0800","stats":{"files_changed":6,"insertions":886,"deletions":13,"files":["jc/parsers/ps.py","tests/fixtures/osx-10.14.6/ps-axu.json","tests/fixtures/osx-10.14.6/ps-axu.out","tests/fixtures/osx-10.14.6/ps-ef.json","tests/fixtures/osx-10.14.6/ps-ef.out","tests/test_ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":31},{"name":"tests/fixtures/osx-10.14.6/ps-axu.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ps-axu.out","lines_changed":421},{"name":"tests/fixtures/osx-10.14.6/ps-ef.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ps-ef.out","lines_changed":421},{"name":"tests/test_ps.py","lines_changed":24}]},"message":"osx fixes and tests","epoch":1576195164,"epoch_utc":null},{"commit":"c9892833a16bb63f78537717be65670eb65a87b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:58:40 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 15:58:40 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/mount.py"],"file_stats":[{"name":"jc/parsers/mount.py","lines_changed":2}]},"message":"formatting change","epoch":1576195120,"epoch_utc":null},{"commit":"127c98affc7b122f0ced13852850214b9e07677e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:58:24 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 15:58:24 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update","epoch":1576195104,"epoch_utc":null},{"commit":"8687a772f53ecaf1a20464429060b94bbf660fe7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:33:34 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 15:33:34 2019 -0800","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":8}]},"message":"use universal parser","epoch":1576193614,"epoch_utc":null},{"commit":"b1162b14d42643fd53dbbe3f89ba042f030d9254","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:22:21 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 15:22:21 2019 -0800","stats":{"files_changed":1,"insertions":3,"deletions":6,"files":["jc/parsers/lsmod.py"],"file_stats":[{"name":"jc/parsers/lsmod.py","lines_changed":9}]},"message":"use universal parser","epoch":1576192941,"epoch_utc":null},{"commit":"8a8ee3570733c0c06b8cf53eb005e53ac2f9170f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:01:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 15:01:42 2019 -0800","stats":{"files_changed":1,"insertions":8,"deletions":60,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":68}]},"message":"use universal parser","epoch":1576191702,"epoch_utc":null},{"commit":"5e109a3665cf0c286ac9dcbe2a452348a14b90ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 14:12:36 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 14:12:36 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/fixtures/create_fixtures.sh"],"file_stats":[{"name":"tests/fixtures/create_fixtures.sh","lines_changed":2}]},"message":"add du","epoch":1576188756,"epoch_utc":null},{"commit":"11db478430515ef3e1020482792f23d1c40ca32b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 14:12:21 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 14:12:21 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"update changelog","epoch":1576188741,"epoch_utc":null},{"commit":"a85377014d9f93fcb9840715129b0e09d48d8584","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 14:11:59 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 14:11:59 2019 -0800","stats":{"files_changed":1,"insertions":5,"deletions":11,"files":["jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/free.py","lines_changed":16}]},"message":"use universal parser","epoch":1576188719,"epoch_utc":null},{"commit":"3aea86234d33160f5b3139cbfc2f4f032f655f3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 11:23:49 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 11:23:49 2019 -0800","stats":{"files_changed":6,"insertions":70,"deletions":61,"files":["tests/fixtures/osx-10.11.6/ls-al.json","tests/fixtures/osx-10.11.6/ls-al.out","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.11.6/ls-alh.out","tests/fixtures/osx-10.11.6/ls.json","tests/fixtures/osx-10.11.6/ls.out"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/ls-al.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ls-al.out","lines_changed":61},{"name":"tests/fixtures/osx-10.11.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ls-alh.out","lines_changed":61},{"name":"tests/fixtures/osx-10.11.6/ls.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ls.out","lines_changed":3}]},"message":"fix osx-10.11.6 tests","epoch":1576178629,"epoch_utc":null},{"commit":"916ec6ed6b858a8a496e4026b9bab5505abca2ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 10:11:24 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 10:11:24 2019 -0800","stats":{"files_changed":13,"insertions":193,"deletions":61,"files":["tests/fixtures/osx-10.11.6/ls-al.json","tests/fixtures/osx-10.11.6/ls-al.out","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.11.6/ls-alh.out","tests/fixtures/osx-10.11.6/ls.json","tests/fixtures/osx-10.11.6/ls.out","tests/fixtures/osx-10.14.6/ls-al.json","tests/fixtures/osx-10.14.6/ls-al.out","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.out","tests/fixtures/osx-10.14.6/ls.json","tests/fixtures/osx-10.14.6/ls.out","tests/test_ls.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/ls-al.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ls-al.out","lines_changed":29},{"name":"tests/fixtures/osx-10.11.6/ls-alh.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ls-alh.out","lines_changed":29},{"name":"tests/fixtures/osx-10.11.6/ls.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ls.out","lines_changed":18},{"name":"tests/fixtures/osx-10.14.6/ls-al.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-al.out","lines_changed":64},{"name":"tests/fixtures/osx-10.14.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-alh.out","lines_changed":64},{"name":"tests/fixtures/osx-10.14.6/ls.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls.out","lines_changed":5},{"name":"tests/test_ls.py","lines_changed":36}]},"message":"fix osx ls tests","epoch":1576174284,"epoch_utc":null},{"commit":"9dca6ba5393d8840ad7fc9509273715a71955bd1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:47:14 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 09:47:14 2019 -0800","stats":{"files_changed":55,"insertions":120,"deletions":6,"files":["docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":8},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":3},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":3},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":8},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":3},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":3},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2}]},"message":"doc formatting change","epoch":1576172834,"epoch_utc":null},{"commit":"0ebb89f561e1ced2e7f61ae19290e176c8a98bf2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:41:56 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 09:41:56 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["docs/parsers/arp.md"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2}]},"message":"doc update","epoch":1576172516,"epoch_utc":null},{"commit":"e237867e242211ba37206911ebf1b35c97b417fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:41:25 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 09:41:25 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":2}]},"message":"doc formatting","epoch":1576172485,"epoch_utc":null},{"commit":"78fa44fd9ac9790313de6f461eb46d9b8d6159d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:35:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 09:35:42 2019 -0800","stats":{"files_changed":24,"insertions":75,"deletions":3,"files":["docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/netstat.md","lines_changed":3},{"name":"docs/parsers/ps.md","lines_changed":3},{"name":"docs/parsers/route.md","lines_changed":3},{"name":"docs/parsers/ss.md","lines_changed":3},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":3},{"name":"docs/parsers/systemctl_lj.md","lines_changed":3},{"name":"docs/parsers/systemctl_ls.md","lines_changed":3},{"name":"docs/parsers/systemctl_luf.md","lines_changed":3},{"name":"docs/parsers/uname.md","lines_changed":3},{"name":"docs/parsers/uptime.md","lines_changed":3},{"name":"docs/parsers/w.md","lines_changed":3},{"name":"jc/parsers/netstat.py","lines_changed":3},{"name":"jc/parsers/ps.py","lines_changed":3},{"name":"jc/parsers/route.py","lines_changed":5},{"name":"jc/parsers/ss.py","lines_changed":3},{"name":"jc/parsers/stat.py","lines_changed":5},{"name":"jc/parsers/systemctl.py","lines_changed":3},{"name":"jc/parsers/systemctl_lj.py","lines_changed":3},{"name":"jc/parsers/systemctl_ls.py","lines_changed":3},{"name":"jc/parsers/systemctl_luf.py","lines_changed":3},{"name":"jc/parsers/uname.py","lines_changed":3},{"name":"jc/parsers/uptime.py","lines_changed":3},{"name":"jc/parsers/w.py","lines_changed":3}]},"message":"add compatibility to docs","epoch":1576172142,"epoch_utc":null},{"commit":"d615fa3b933ccd284bd8ee92baf5dfa6264507c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:21:20 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 09:21:20 2019 -0800","stats":{"files_changed":30,"insertions":91,"deletions":1,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":3},{"name":"docs/parsers/df.md","lines_changed":3},{"name":"docs/parsers/dig.md","lines_changed":3},{"name":"docs/parsers/env.md","lines_changed":3},{"name":"docs/parsers/free.md","lines_changed":3},{"name":"docs/parsers/fstab.md","lines_changed":3},{"name":"docs/parsers/history.md","lines_changed":3},{"name":"docs/parsers/hosts.md","lines_changed":3},{"name":"docs/parsers/ifconfig.md","lines_changed":3},{"name":"docs/parsers/iptables.md","lines_changed":3},{"name":"docs/parsers/jobs.md","lines_changed":3},{"name":"docs/parsers/ls.md","lines_changed":3},{"name":"docs/parsers/lsblk.md","lines_changed":3},{"name":"docs/parsers/lsmod.md","lines_changed":3},{"name":"docs/parsers/lsof.md","lines_changed":3},{"name":"docs/parsers/mount.md","lines_changed":3},{"name":"jc/parsers/env.py","lines_changed":3},{"name":"jc/parsers/foo.py","lines_changed":3},{"name":"jc/parsers/free.py","lines_changed":3},{"name":"jc/parsers/fstab.py","lines_changed":3},{"name":"jc/parsers/history.py","lines_changed":3},{"name":"jc/parsers/hosts.py","lines_changed":3},{"name":"jc/parsers/ifconfig.py","lines_changed":3},{"name":"jc/parsers/iptables.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":3},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"jc/parsers/lsblk.py","lines_changed":3},{"name":"jc/parsers/lsmod.py","lines_changed":3},{"name":"jc/parsers/lsof.py","lines_changed":3},{"name":"jc/parsers/mount.py","lines_changed":3}]},"message":"add compatibility to docs","epoch":1576171280,"epoch_utc":null},{"commit":"ce134dc332dd9175e0d1823a4959bed427a3ddce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:09:57 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Dec 12 09:09:57 2019 -0800","stats":{"files_changed":7,"insertions":115,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-al.json","tests/fixtures/osx-10.14.6/ls-al.out","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.out","tests/fixtures/osx-10.14.6/ls.json","tests/fixtures/osx-10.14.6/ls.out","tests/test_ls.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ls-al.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-al.out","lines_changed":29},{"name":"tests/fixtures/osx-10.14.6/ls-alh.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-alh.out","lines_changed":29},{"name":"tests/fixtures/osx-10.14.6/ls.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls.out","lines_changed":18},{"name":"tests/test_ls.py","lines_changed":36}]},"message":"Add OSX tests for ls","epoch":1576170597,"epoch_utc":null},{"commit":"a56e4dc752a01635fbd9fc31e21d390bbd629084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 17:27:48 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 11 17:27:48 2019 -0800","stats":{"files_changed":3,"insertions":28,"deletions":3,"files":["changelog.txt","jc/parsers/arp.py","jc/parsers/universal.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/arp.py","lines_changed":6},{"name":"jc/parsers/universal.py","lines_changed":24}]},"message":"use universal simple table parser","epoch":1576114068,"epoch_utc":null},{"commit":"d221b4aa29e80dda2b591059f4d64c416bff0a17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 17:19:38 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 11 17:19:38 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update","epoch":1576113578,"epoch_utc":null},{"commit":"d2cba6ad2f1f1cd35aa174239584a0291abb8e37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 17:18:21 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 11 17:18:21 2019 -0800","stats":{"files_changed":3,"insertions":9,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/df.py","lines_changed":3},{"name":"jc/parsers/dig.py","lines_changed":3}]},"message":"add compatibility info","epoch":1576113501,"epoch_utc":null},{"commit":"84b3c30b525ddf1f74eb7fd833050a0ec69621dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 17:18:04 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 11 17:18:04 2019 -0800","stats":{"files_changed":21,"insertions":254,"deletions":2,"files":["tests/fixtures/osx-10.11.6/df-h.json","tests/fixtures/osx-10.11.6/df-h.out","tests/fixtures/osx-10.11.6/df.json","tests/fixtures/osx-10.11.6/df.out","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-aaaa.out","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig-x.out","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.11.6/dig.out","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/osx-10.14.6/df-h.out","tests/fixtures/osx-10.14.6/df.json","tests/fixtures/osx-10.14.6/df.out","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-aaaa.out","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig-x.out","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/osx-10.14.6/dig.out","tests/test_df.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/df-h.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/df-h.out","lines_changed":7},{"name":"tests/fixtures/osx-10.11.6/df.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/df.out","lines_changed":7},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.out","lines_changed":20},{"name":"tests/fixtures/osx-10.11.6/dig-x.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/dig-x.out","lines_changed":20},{"name":"tests/fixtures/osx-10.11.6/dig.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/dig.out","lines_changed":41},{"name":"tests/fixtures/osx-10.14.6/df-h.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/df-h.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/df.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/df.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.out","lines_changed":20},{"name":"tests/fixtures/osx-10.14.6/dig-x.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig-x.out","lines_changed":20},{"name":"tests/fixtures/osx-10.14.6/dig.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig.out","lines_changed":41},{"name":"tests/test_df.py","lines_changed":52}]},"message":"add osx tests","epoch":1576113484,"epoch_utc":null},{"commit":"68eeec19a812b735627763bb7d7e2a58b72f7504","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 16:39:30 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 11 16:39:30 2019 -0800","stats":{"files_changed":3,"insertions":30,"deletions":25,"files":["README.md","docs/parsers/df.md","jc/parsers/df.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docs/parsers/df.md","lines_changed":31},{"name":"jc/parsers/df.py","lines_changed":20}]},"message":"doc update","epoch":1576111170,"epoch_utc":null},{"commit":"c6d1528a2ed302ea82828b733a98db415be83708","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 16:37:13 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Dec 11 16:37:13 2019 -0800","stats":{"files_changed":4,"insertions":19,"deletions":8,"files":["jc/parsers/df.py","jc/parsers/universal.py","tests/fixtures/centos-7.7/df.json","tests/fixtures/ubuntu-18.04/df.json"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":21},{"name":"jc/parsers/universal.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/df.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/df.json","lines_changed":2}]},"message":"use _ instead of -","epoch":1576111033,"epoch_utc":null},{"commit":"50a6b256b8a0936299f562c208ede6187feeb9a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 9 14:01:47 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 9 14:01:47 2019 -0800","stats":{"files_changed":1,"insertions":83,"deletions":0,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":83}]},"message":"new universal parsers to limit code duplication","epoch":1575928907,"epoch_utc":null},{"commit":"bbba1fe477014d0b7f370ce46ed821121be81a8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 9 14:01:29 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Dec 9 14:01:29 2019 -0800","stats":{"files_changed":1,"insertions":38,"deletions":19,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":57}]},"message":"update df to use universal sparse table parser for osx compatibility","epoch":1575928889,"epoch_utc":null},{"commit":"46b827da6b438be73fab168c3f05298483b141e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 13:22:51 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 6 13:22:51 2019 -0800","stats":{"files_changed":7,"insertions":75,"deletions":4,"files":["changelog.txt","jc/parsers/arp.py","tests/fixtures/osx-10.11.6/arp-a.json","tests/fixtures/osx-10.11.6/arp-a.out","tests/fixtures/osx-10.14.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a.out","tests/test_arp.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/arp.py","lines_changed":27},{"name":"tests/fixtures/osx-10.11.6/arp-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/arp-a.out","lines_changed":13},{"name":"tests/fixtures/osx-10.14.6/arp-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/arp-a.out","lines_changed":12},{"name":"tests/test_arp.py","lines_changed":24}]},"message":"add osx compatibility","epoch":1575667371,"epoch_utc":null},{"commit":"5e8c28a30a283b6ef525e9e78d3ef2a0e1526927","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 11:47:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 6 11:47:42 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2}]},"message":"comment fix","epoch":1575661662,"epoch_utc":null},{"commit":"e5d39031645ac897e0c0297f514ee62efe02f5f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 11:46:09 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 6 11:46:09 2019 -0800","stats":{"files_changed":1,"insertions":38,"deletions":17,"files":["docs/parsers/ifconfig.md"],"file_stats":[{"name":"docs/parsers/ifconfig.md","lines_changed":55}]},"message":"update ifconfig doc","epoch":1575661569,"epoch_utc":null},{"commit":"23975c9c9e1dd9d3e9fd7c05d231a86d646be048","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 11:44:57 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 6 11:44:57 2019 -0800","stats":{"files_changed":10,"insertions":132,"deletions":45,"files":["README.md","changelog.txt","jc/parsers/ifconfig.py","tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig2.json","tests/fixtures/osx-10.14.6/ifconfig.json","tests/fixtures/osx-10.14.6/ifconfig2.json","tests/fixtures/ubuntu-18.04/ifconfig.json","tests/test_ifconfig.py"],"file_stats":[{"name":"README.md","lines_changed":35},{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":80},{"name":"tests/fixtures/centos-7.7/ifconfig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ifconfig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ifconfig2.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ifconfig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ifconfig2.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ifconfig.json","lines_changed":2},{"name":"tests/test_ifconfig.py","lines_changed":48}]},"message":"fixup osx subnet mask and convert state to an array","epoch":1575661497,"epoch_utc":null},{"commit":"1e0dab8355e6fcb0ecde85270d4daac6ad93875b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 10:53:49 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 6 10:53:49 2019 -0800","stats":{"files_changed":10,"insertions":272,"deletions":2,"files":["tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.out","tests/fixtures/osx-10.11.6/ifconfig2.json","tests/fixtures/osx-10.11.6/ifconfig2.out","tests/fixtures/osx-10.14.6/ifconfig.json","tests/fixtures/osx-10.14.6/ifconfig.out","tests/fixtures/osx-10.14.6/ifconfig2.json","tests/fixtures/osx-10.14.6/ifconfig2.out","tests/fixtures/ubuntu-18.04/ifconfig.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ifconfig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ifconfig.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ifconfig.out","lines_changed":40},{"name":"tests/fixtures/osx-10.11.6/ifconfig2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ifconfig2.out","lines_changed":40},{"name":"tests/fixtures/osx-10.14.6/ifconfig.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ifconfig.out","lines_changed":91},{"name":"tests/fixtures/osx-10.14.6/ifconfig2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ifconfig2.out","lines_changed":95},{"name":"tests/fixtures/ubuntu-18.04/ifconfig.json","lines_changed":2}]},"message":"ifconfig fixture updates","epoch":1575658429,"epoch_utc":null},{"commit":"5f4c10ffd5a9cbe4e5e3d2b9adc34f36492eaf46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 10:39:11 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 6 10:39:11 2019 -0800","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"changelog.txt","lines_changed":4}]},"message":"doc update","epoch":1575657551,"epoch_utc":null},{"commit":"6f3d2b4b566b963fbf38572c587e8bd4e18881dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 10:30:01 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 6 10:30:01 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"require ifconfig-parser v0.0.5 for mac and bytes support","epoch":1575657001,"epoch_utc":null},{"commit":"fea8ace8446b64abe9e61a028951bc4e6df9f9c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 10:27:11 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Dec 6 10:27:11 2019 -0800","stats":{"files_changed":2,"insertions":20,"deletions":6,"files":["README.md","jc/parsers/ifconfig.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":22}]},"message":"add OSX compatibility","epoch":1575656831,"epoch_utc":null},{"commit":"6633d9262c936217d8e90e64505c66b006cdab56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Nov 30 13:52:24 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Nov 30 13:52:24 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["_config.yml"],"file_stats":[{"name":"_config.yml","lines_changed":1}]},"message":"Set theme jekyll-theme-cayman","epoch":1575150744,"epoch_utc":null},{"commit":"7d54137140e6d0515bc23c131a097af5c70c3379","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 28 11:51:54 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 28 11:51:54 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"link update","epoch":1574970714,"epoch_utc":null},{"commit":"2fcda6f2480ae6bd5428a0147c19f9af527391b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 25 18:34:21 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 25 18:34:21 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add motivation to readme","epoch":1574735661,"epoch_utc":null},{"commit":"9c1b8bacf9a59a86feb2a91eb44919e800491d1e","merge":"d192745 4867655","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 11:55:06 2019 -0800","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Nov 17 11:55:06 2019 -0800","message":"Merge pull request #16 from kellyjonbrazil/dev\n\nDev v1.5.1","epoch":1574020506,"epoch_utc":null},{"commit":"4867655eb297b1da7a55e0d3a24c7ed7c8af55c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 11:49:36 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Nov 17 11:49:36 2019 -0800","stats":{"files_changed":6,"insertions":172,"deletions":0,"files":[".../centos-7.7/iptables-filter-line-numbers.json",".../centos-7.7/iptables-filter-line-numbers.out","tests/fixtures/create_fixtures.sh",".../ubuntu-18.04/iptables-filter-line-numbers.json",".../ubuntu-18.04/iptables-filter-line-numbers.out","tests/test_iptables.py"],"file_stats":[{"name":".../centos-7.7/iptables-filter-line-numbers.json","lines_changed":1},{"name":".../centos-7.7/iptables-filter-line-numbers.out","lines_changed":128},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":1},{"name":".../ubuntu-18.04/iptables-filter-line-numbers.json","lines_changed":1},{"name":".../ubuntu-18.04/iptables-filter-line-numbers.out","lines_changed":17},{"name":"tests/test_iptables.py","lines_changed":24}]},"message":"add line-numbers tests","epoch":1574020176,"epoch_utc":null},{"commit":"47410d1a95406b0960aac705e7cfe925fea3172c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 11:05:46 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Nov 17 11:05:46 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1574017546,"epoch_utc":null},{"commit":"5fa49f5e672fc6f8dc18fb4b1761c98b81362649","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 11:00:16 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Nov 17 11:00:16 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update","epoch":1574017216,"epoch_utc":null},{"commit":"36c53827fab6ac38c0010250ec387db40fdeecfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 10:56:55 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Nov 17 10:56:55 2019 -0800","stats":{"files_changed":19,"insertions":1316,"deletions":308,"files":["tests/fixtures/centos-7.7/systemctl-ls.json","tests/fixtures/centos-7.7/systemctl-ls.out","tests/fixtures/centos-7.7/systemctl-luf.json","tests/fixtures/centos-7.7/systemctl-luf.out","tests/fixtures/centos-7.7/systemctl.json","tests/fixtures/centos-7.7/systemctl.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/systemctl-lj.json","tests/fixtures/ubuntu-18.04/systemctl-lj.out","tests/fixtures/ubuntu-18.04/systemctl-ls.json","tests/fixtures/ubuntu-18.04/systemctl-ls.out","tests/fixtures/ubuntu-18.04/systemctl-luf.json","tests/fixtures/ubuntu-18.04/systemctl-luf.out","tests/fixtures/ubuntu-18.04/systemctl.json","tests/fixtures/ubuntu-18.04/systemctl.out","tests/test_systemctl.py","tests/test_systemctl_lj.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/systemctl-ls.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/systemctl-ls.out","lines_changed":17},{"name":"tests/fixtures/centos-7.7/systemctl-luf.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/systemctl-luf.out","lines_changed":247},{"name":"tests/fixtures/centos-7.7/systemctl.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/systemctl.out","lines_changed":334},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":8},{"name":"tests/fixtures/ubuntu-18.04/systemctl-lj.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/systemctl-lj.out","lines_changed":6},{"name":"tests/fixtures/ubuntu-18.04/systemctl-ls.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/systemctl-ls.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-18.04/systemctl-luf.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/systemctl-luf.out","lines_changed":324},{"name":"tests/fixtures/ubuntu-18.04/systemctl.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/systemctl.out","lines_changed":528},{"name":"tests/test_systemctl.py","lines_changed":4},{"name":"tests/test_systemctl_lj.py","lines_changed":40},{"name":"tests/test_systemctl_ls.py","lines_changed":40},{"name":"tests/test_systemctl_luf.py","lines_changed":40}]},"message":"add systemctl tests","epoch":1574017015,"epoch_utc":null},{"commit":"51631aef5b1b6fdeff4ab543510a9f9e15a0c2c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 10:31:58 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Nov 17 10:31:58 2019 -0800","stats":{"files_changed":5,"insertions":358,"deletions":0,"files":["tests/fixtures/centos-7.7/systemctl.json","tests/fixtures/centos-7.7/systemctl.out","tests/fixtures/ubuntu-18.04/systemctl.json","tests/fixtures/ubuntu-18.04/systemctl.out","tests/test_systemctl.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/systemctl.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/systemctl.out","lines_changed":118},{"name":"tests/fixtures/ubuntu-18.04/systemctl.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/systemctl.out","lines_changed":198},{"name":"tests/test_systemctl.py","lines_changed":40}]},"message":"add systemctl tests","epoch":1574015518,"epoch_utc":null},{"commit":"a0298ac8a39093620b6859c909a78d11ab4a8e56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 10:26:48 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Nov 17 10:26:48 2019 -0800","stats":{"files_changed":5,"insertions":55,"deletions":0,"files":["tests/fixtures/centos-7.7/fstab.json","tests/fixtures/centos-7.7/fstab.out","tests/fixtures/ubuntu-18.04/fstab.json","tests/fixtures/ubuntu-18.04/fstab.out","tests/test_fstab.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/fstab.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/fstab.out","lines_changed":11},{"name":"tests/fixtures/ubuntu-18.04/fstab.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/fstab.out","lines_changed":2},{"name":"tests/test_fstab.py","lines_changed":40}]},"message":"add fstab tests","epoch":1574015208,"epoch_utc":null},{"commit":"98c0188821ebaa71c5661f2e095cf464bec695f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:27:51 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 19:27:51 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/systemctl_ls.md","jc/parsers/systemctl_ls.py"],"file_stats":[{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2}]},"message":"formatting fix","epoch":1573874871,"epoch_utc":null},{"commit":"ab1dabe3e42997825707006b63cc0c03d28470d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:26:22 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 19:26:22 2019 -0800","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py"],"file_stats":[{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2}]},"message":"doc update","epoch":1573874782,"epoch_utc":null},{"commit":"94bdb11fdf0e16d89769046d317643334ef1acdd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:24:32 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 19:24:32 2019 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"remove systemctl from TODO","epoch":1573874672,"epoch_utc":null},{"commit":"b6727d68bab66164a3834b240ae868062aad9371","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:18:31 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 19:18:31 2019 -0800","stats":{"files_changed":1,"insertions":68,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":68}]},"message":"add systemctl parsers","epoch":1573874311,"epoch_utc":null},{"commit":"89bad7fc2b4023b10b6eeb7ff1f8f18b71731cb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:13:53 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 19:13:53 2019 -0800","stats":{"files_changed":5,"insertions":1,"deletions":191,"files":["changelog.txt","docgen.sh","docs/parsers/systemctl_lm.md","jc/cli.py","jc/parsers/systemctl_lm.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/systemctl_lm.md","lines_changed":76},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/systemctl_lm.py","lines_changed":110}]},"message":"remove systemctl list-machines parser","epoch":1573874033,"epoch_utc":null},{"commit":"c0b8b810a2616e77973c1223f9c39329112337ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:07:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 19:07:42 2019 -0800","stats":{"files_changed":5,"insertions":306,"deletions":0,"files":["docgen.sh","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_lm.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md"],"file_stats":[{"name":"docgen.sh","lines_changed":4},{"name":"docs/parsers/systemctl_lj.md","lines_changed":94},{"name":"docs/parsers/systemctl_lm.md","lines_changed":76},{"name":"docs/parsers/systemctl_ls.md","lines_changed":68},{"name":"docs/parsers/systemctl_luf.md","lines_changed":64}]},"message":"add systemctl list parsers","epoch":1573873662,"epoch_utc":null},{"commit":"31eb65acd18b6d9163de900dbe48807a41a23785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:05:49 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 19:05:49 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_lm.py"],"file_stats":[{"name":"jc/parsers/systemctl_lm.py","lines_changed":4}]},"message":"doc fix","epoch":1573873549,"epoch_utc":null},{"commit":"513bbeb4649c011476930e1d1bf739ff06c2d66f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:02:57 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 19:02:57 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/systemctl_lj.py"],"file_stats":[{"name":"jc/parsers/systemctl_lj.py","lines_changed":2}]},"message":"add break on footer condition","epoch":1573873377,"epoch_utc":null},{"commit":"3a52fb725a0e56b52a0ea430266400b268360737","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 18:58:17 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 18:58:17 2019 -0800","stats":{"files_changed":2,"insertions":55,"deletions":29,"files":["jc/cli.py","jc/parsers/systemctl_lj.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4},{"name":"jc/parsers/systemctl_lj.py","lines_changed":80}]},"message":"add systemctl list-jobs parser","epoch":1573873097,"epoch_utc":null},{"commit":"5affd444999de88b9bff7b49d790913540f97cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 18:36:12 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 18:36:12 2019 -0800","stats":{"files_changed":6,"insertions":342,"deletions":24,"files":["jc/cli.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_lm.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":11},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":110},{"name":"jc/parsers/systemctl_lm.py","lines_changed":110},{"name":"jc/parsers/systemctl_ls.py","lines_changed":101},{"name":"jc/parsers/systemctl_luf.py","lines_changed":32}]},"message":"add systemctl_lj, lm, ls, and luf","epoch":1573871772,"epoch_utc":null},{"commit":"5dbc6e806c5d05bfa1f7e2156ed2573341eb23c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 12:28:28 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 12:28:28 2019 -0800","stats":{"files_changed":2,"insertions":142,"deletions":29,"files":["jc/cli.py","jc/parsers/systemctl_luf.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":61},{"name":"jc/parsers/systemctl_luf.py","lines_changed":110}]},"message":"add systemctl_luf parser","epoch":1573849708,"epoch_utc":null},{"commit":"59ae31f3f342c9337037aac4630310c9b9eb8287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 11:58:17 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 11:58:17 2019 -0800","stats":{"files_changed":6,"insertions":219,"deletions":0,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/systemctl.md","jc/cli.py","jc/parsers/systemctl.py"],"file_stats":[{"name":"README.md","lines_changed":29},{"name":"changelog.txt","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/systemctl.md","lines_changed":76},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/systemctl.py","lines_changed":109}]},"message":"add systemctl parser","epoch":1573847897,"epoch_utc":null},{"commit":"230e921c2e8d931ea8a6abdf81215dbfc968b41c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 10:36:58 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 10:36:58 2019 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"remove fstab from TODO","epoch":1573843018,"epoch_utc":null},{"commit":"a7c3d88b08ab90b719035cb15d78afe708235742","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 10:01:29 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 10:01:29 2019 -0800","stats":{"files_changed":3,"insertions":136,"deletions":0,"files":["docgen.sh","docs/parsers/fstab.md","jc/parsers/fstab.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/fstab.md","lines_changed":107},{"name":"jc/parsers/fstab.py","lines_changed":28}]},"message":"update example and docs","epoch":1573840889,"epoch_utc":null},{"commit":"9b453bcb84dd9f2f566955eda1ab35c863b3e8a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 09:57:25 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 09:57:25 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":13,"files":["jc/parsers/fstab.py"],"file_stats":[{"name":"jc/parsers/fstab.py","lines_changed":14}]},"message":"remove commented code block","epoch":1573840645,"epoch_utc":null},{"commit":"ce43c782f601fc12267fa22279e8e0142ecc3a7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 09:32:12 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 09:32:12 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"fstab update","epoch":1573839132,"epoch_utc":null},{"commit":"cb16faaf4d1700379d53053fe06824fd03404f87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 09:31:28 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 09:31:28 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"helptext update","epoch":1573839088,"epoch_utc":null},{"commit":"3f1d3ff6d85422536e0adfb6433fd3ec0399ebe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 09:29:54 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 09:29:54 2019 -0800","stats":{"files_changed":2,"insertions":73,"deletions":6,"files":["README.md","jc/parsers/fstab.py"],"file_stats":[{"name":"README.md","lines_changed":31},{"name":"jc/parsers/fstab.py","lines_changed":48}]},"message":"add examples","epoch":1573838994,"epoch_utc":null},{"commit":"6f67eecd5ed46f8a692ff5dd607a2395a5c838ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 09:22:07 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 09:22:07 2019 -0800","stats":{"files_changed":2,"insertions":108,"deletions":0,"files":["jc/cli.py","jc/parsers/fstab.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/fstab.py","lines_changed":105}]},"message":"add fstab parser","epoch":1573838527,"epoch_utc":null},{"commit":"e75c819190634f0a9048942b39eda691831829ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 08:51:53 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 08:51:53 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"changelog update","epoch":1573836713,"epoch_utc":null},{"commit":"601e68d104dd43940acadaa574dfd9b5117b0476","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 08:40:13 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 08:40:13 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/hosts.md","jc/parsers/hosts.py"],"file_stats":[{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2}]},"message":"doc update","epoch":1573836013,"epoch_utc":null},{"commit":"8285ecfd1e7810102cdbc399398a16f999c841ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 08:40:01 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 15 08:40:01 2019 -0800","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["tests/fixtures/centos-7.7/hosts.out","tests/fixtures/ubuntu-18.04/hosts.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/hosts.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/hosts.out","lines_changed":3}]},"message":"enhance test file with comments","epoch":1573836001,"epoch_utc":null},{"commit":"8726de902e527b95a12afd79a53d533cc176703d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 22:04:59 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 22:04:59 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"add hosts parser","epoch":1573797899,"epoch_utc":null},{"commit":"4133585274b0e7faa0255a911468248eb390d673","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 22:04:48 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 22:04:48 2019 -0800","stats":{"files_changed":5,"insertions":53,"deletions":0,"files":["tests/fixtures/centos-7.7/hosts.json","tests/fixtures/centos-7.7/hosts.out","tests/fixtures/ubuntu-18.04/hosts.json","tests/fixtures/ubuntu-18.04/hosts.out","tests/test_hosts.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/hosts.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/hosts.out","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/hosts.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/hosts.out","lines_changed":9},{"name":"tests/test_hosts.py","lines_changed":40}]},"message":"add hosts tests","epoch":1573797888,"epoch_utc":null},{"commit":"ad913b141721655a72a7b2a6ad60037e5acd5f9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:59:06 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 21:59:06 2019 -0800","stats":{"files_changed":4,"insertions":148,"deletions":2,"files":["README.md","docgen.sh","docs/parsers/hosts.md","jc/parsers/hosts.py"],"file_stats":[{"name":"README.md","lines_changed":51},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/hosts.md","lines_changed":96},{"name":"jc/parsers/hosts.py","lines_changed":2}]},"message":"add hosts docs","epoch":1573797546,"epoch_utc":null},{"commit":"7113e5a844fc0304f62f4afe65b5cbc816f75372","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:55:08 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 21:55:08 2019 -0800","stats":{"files_changed":1,"insertions":10,"deletions":0,"files":["jc/parsers/hosts.py"],"file_stats":[{"name":"jc/parsers/hosts.py","lines_changed":10}]},"message":"filter out comments at the end of the line","epoch":1573797308,"epoch_utc":null},{"commit":"a3a8369dc0e7227072f595cef1e57d471eff4d2f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:36:02 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 21:36:02 2019 -0800","stats":{"files_changed":1,"insertions":51,"deletions":9,"files":["jc/parsers/hosts.py"],"file_stats":[{"name":"jc/parsers/hosts.py","lines_changed":60}]},"message":"add docs","epoch":1573796162,"epoch_utc":null},{"commit":"64016b8ef049d5d4f02b4371f5cc9632c19bcaa2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:31:25 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 21:31:25 2019 -0800","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["jc/cli.py","jc/parsers/hosts.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/hosts.py","lines_changed":89}]},"message":"add hosts parser","epoch":1573795885,"epoch_utc":null},{"commit":"1cb49d60c84054b0446f299f6b4bab7d102101c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:21:15 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 21:21:15 2019 -0800","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"remove sar and sadf","epoch":1573795275,"epoch_utc":null},{"commit":"c858adfd12144569d0b990a217c5bcd75bd23828","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:11:05 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 21:11:05 2019 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"remove stat from todo","epoch":1573794665,"epoch_utc":null},{"commit":"08d68327c777dd740d93a1b5fff8cf62f58904c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:08:09 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 21:08:09 2019 -0800","stats":{"files_changed":5,"insertions":8080,"deletions":0,"files":["tests/fixtures/centos-7.7/stat.json","tests/fixtures/centos-7.7/stat.out","tests/fixtures/ubuntu-18.04/stat.json","tests/fixtures/ubuntu-18.04/stat.out","tests/test_stat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/stat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/stat.out","lines_changed":6678},{"name":"tests/fixtures/ubuntu-18.04/stat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/stat.out","lines_changed":1360},{"name":"tests/test_stat.py","lines_changed":40}]},"message":"add stat tests","epoch":1573794489,"epoch_utc":null},{"commit":"0d7c6c5664911af7a41149d51dd6ae05b39d7648","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 20:57:49 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 20:57:49 2019 -0800","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/parsers/stat.md","jc/parsers/stat.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":8}]},"message":"doc fix and add continue lines","epoch":1573793869,"epoch_utc":null},{"commit":"8bfa41dbf485cb06c928bc00a68727d2ceac21fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 17:36:29 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 17:36:29 2019 -0800","stats":{"files_changed":3,"insertions":22,"deletions":14,"files":["README.md","docs/parsers/stat.md","jc/parsers/stat.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docs/parsers/stat.md","lines_changed":12},{"name":"jc/parsers/stat.py","lines_changed":20}]},"message":"change values to null if -","epoch":1573781789,"epoch_utc":null},{"commit":"7e2fa48ed4f3fd452082ce06e7306efd38b2d508","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 17:24:51 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 17:24:51 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"update changelog","epoch":1573781091,"epoch_utc":null},{"commit":"340635cad5224f2c715bf961956f4b9b6119d80b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 17:23:44 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 17:23:44 2019 -0800","stats":{"files_changed":3,"insertions":408,"deletions":111,"files":["docgen.sh","docs/parsers/ss.md","docs/parsers/stat.md"],"file_stats":[{"name":"docgen.sh","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":363},{"name":"docs/parsers/stat.md","lines_changed":154}]},"message":"fix stats doc","epoch":1573781024,"epoch_utc":null},{"commit":"8f77d1de098f035767d73a6965a695b95b75e161","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 17:21:56 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 17:21:56 2019 -0800","stats":{"files_changed":2,"insertions":111,"deletions":253,"files":["docgen.sh","docs/parsers/ss.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ss.md","lines_changed":363}]},"message":"add stat docs","epoch":1573780916,"epoch_utc":null},{"commit":"7dcf1b25ffb801375f0bf4263f34713ded904de9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 17:20:13 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 17:20:13 2019 -0800","stats":{"files_changed":1,"insertions":13,"deletions":0,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":13}]},"message":"add link_to field","epoch":1573780813,"epoch_utc":null},{"commit":"9b735381063a1167a6a74864a43b81aefd98009f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 16:44:12 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 16:44:12 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":2}]},"message":"set compatibility to linux only","epoch":1573778652,"epoch_utc":null},{"commit":"3bf8c8c6dbdf7e03e26b4581e35c3274084c07ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 16:40:52 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 16:40:52 2019 -0800","stats":{"files_changed":7,"insertions":27,"deletions":27,"files":["jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/mount.py","lines_changed":6},{"name":"jc/parsers/netstat.py","lines_changed":8},{"name":"jc/parsers/ps.py","lines_changed":8},{"name":"jc/parsers/route.py","lines_changed":8},{"name":"jc/parsers/uname.py","lines_changed":8},{"name":"jc/parsers/uptime.py","lines_changed":8},{"name":"jc/parsers/w.py","lines_changed":8}]},"message":"pep8 fixes","epoch":1573778452,"epoch_utc":null},{"commit":"04a1ff2ca7873d55cdbc831e521f3d4892074d98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 16:36:00 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 16:36:00 2019 -0800","stats":{"files_changed":8,"insertions":28,"deletions":28,"files":["jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":8},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":6},{"name":"jc/parsers/jobs.py","lines_changed":6},{"name":"jc/parsers/ls.py","lines_changed":8},{"name":"jc/parsers/lsblk.py","lines_changed":10},{"name":"jc/parsers/lsmod.py","lines_changed":8},{"name":"jc/parsers/lsof.py","lines_changed":8}]},"message":"pep8 fixes","epoch":1573778160,"epoch_utc":null},{"commit":"64647d230ac936cb43864481ae0f45d13707d7b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 16:32:11 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 16:32:11 2019 -0800","stats":{"files_changed":6,"insertions":21,"deletions":21,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":8},{"name":"jc/parsers/dig.py","lines_changed":8},{"name":"jc/parsers/env.py","lines_changed":8},{"name":"jc/parsers/foo.py","lines_changed":8},{"name":"jc/parsers/free.py","lines_changed":6}]},"message":"pep8 cleanup","epoch":1573777931,"epoch_utc":null},{"commit":"c2a67e1b70f33044aecabd8b46018117cb38cb9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 16:31:52 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 16:31:52 2019 -0800","stats":{"files_changed":2,"insertions":213,"deletions":16,"files":["README.md","jc/parsers/stat.py"],"file_stats":[{"name":"README.md","lines_changed":48},{"name":"jc/parsers/stat.py","lines_changed":181}]},"message":"add stat parser","epoch":1573777912,"epoch_utc":null},{"commit":"edb9a7c76e1fedaf37b6a226ad4e1cfc08a9a5ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 15:26:36 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 15:26:36 2019 -0800","stats":{"files_changed":2,"insertions":94,"deletions":0,"files":["jc/cli.py","jc/parsers/stat.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/stat.py","lines_changed":91}]},"message":"add stat parser","epoch":1573773996,"epoch_utc":null},{"commit":"a407f5b67833cc5f8dda9fe8265cd34e62f28d14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 14:01:04 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 14:01:04 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"minor update","epoch":1573768864,"epoch_utc":null},{"commit":"e5b4987acb70e854d9996350235c5535b4a46b69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 14:00:06 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 14:00:06 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"doc update","epoch":1573768806,"epoch_utc":null},{"commit":"ba8cc18eebe779742cff0ba4c8bebe376e787c8c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 13:56:09 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 13:56:09 2019 -0800","stats":{"files_changed":5,"insertions":405,"deletions":0,"files":["tests/fixtures/centos-7.7/ss-sudo-a.json","tests/fixtures/centos-7.7/ss-sudo-a.out","tests/fixtures/ubuntu-18.04/ss-sudo-a.json","tests/fixtures/ubuntu-18.04/ss-sudo-a.out","tests/test_ss.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ss-sudo-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ss-sudo-a.out","lines_changed":204},{"name":"tests/fixtures/ubuntu-18.04/ss-sudo-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ss-sudo-a.out","lines_changed":159},{"name":"tests/test_ss.py","lines_changed":40}]},"message":"add ss tests","epoch":1573768569,"epoch_utc":null},{"commit":"d2c7316e00b9aaf19231c05351821041458baf98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 13:43:07 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 13:43:07 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"update command options info","epoch":1573767787,"epoch_utc":null},{"commit":"609aa14d243206e81ed31f8438c3f42e8263e140","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 13:38:52 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 13:38:52 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/ss.md","jc/parsers/ss.py"],"file_stats":[{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2}]},"message":"spelling fix","epoch":1573767532,"epoch_utc":null},{"commit":"ef1ad4c700fcb740b5fbe1e12205b9a30ae427ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 13:37:55 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 13:37:55 2019 -0800","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["docs/parsers/ss.md","jc/parsers/ss.py"],"file_stats":[{"name":"docs/parsers/ss.md","lines_changed":3},{"name":"jc/parsers/ss.py","lines_changed":3}]},"message":"doc update","epoch":1573767475,"epoch_utc":null},{"commit":"a0e2732152dc3005914b9a3e4f03e937a113c67f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 09:46:10 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 09:46:10 2019 -0800","stats":{"files_changed":1,"insertions":64,"deletions":12,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":76}]},"message":"add ss example","epoch":1573753570,"epoch_utc":null},{"commit":"9b5d3e3be1ac07813e716f8426fe89cced478221","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 09:42:44 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 09:42:44 2019 -0800","stats":{"files_changed":1,"insertions":135,"deletions":25,"files":["docs/parsers/ss.md"],"file_stats":[{"name":"docs/parsers/ss.md","lines_changed":160}]},"message":"update doc","epoch":1573753364,"epoch_utc":null},{"commit":"2663ef31fbc1b69b89b8032640a25065cc953866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 09:38:19 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 14 09:38:19 2019 -0800","stats":{"files_changed":1,"insertions":159,"deletions":30,"files":["jc/parsers/ss.py"],"file_stats":[{"name":"jc/parsers/ss.py","lines_changed":189}]},"message":"fix field names per ss documentation","epoch":1573753099,"epoch_utc":null},{"commit":"a4cdd3378e6a031f16dd371ed5cd60ff018feb32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 13 08:17:41 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 13 08:17:41 2019 -0800","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":6}]},"message":"add compatibility info","epoch":1573661861,"epoch_utc":null},{"commit":"2f805da24d0e833e3d2a1f3a5ec34031fa911c05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 13 08:04:40 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 13 08:04:40 2019 -0800","stats":{"files_changed":45,"insertions":51,"deletions":51,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/utils.md","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/utils.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":8},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":8}]},"message":"add colon to parameter in docs","epoch":1573661080,"epoch_utc":null},{"commit":"79152a946d93e4facf9711bfa0f421e1978e0f1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 13 07:46:14 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 13 07:46:14 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":3}]},"message":"initialize network_list and socket_list variables","epoch":1573659974,"epoch_utc":null},{"commit":"de37bb37d01b397df2b5992b4acd64817380401d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 13 07:45:37 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 13 07:45:37 2019 -0800","stats":{"files_changed":3,"insertions":187,"deletions":1,"files":["docgen.sh","docs/parsers/ss.md","jc/parsers/ss.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ss.md","lines_changed":184},{"name":"jc/parsers/ss.py","lines_changed":3}]},"message":"add ss docs","epoch":1573659937,"epoch_utc":null},{"commit":"f783e44e5c0cd05733da5d24573f06d05760f993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 18:58:58 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 18:58:58 2019 -0800","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"changelog.txt","lines_changed":1}]},"message":"doc fix","epoch":1573613938,"epoch_utc":null},{"commit":"af82f2c991ac0668485e75ae78a26b9553ec8b13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 18:56:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 18:56:42 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update raw format note","epoch":1573613802,"epoch_utc":null},{"commit":"46774daf9d3e0612df8f79d4b6b724e612ceb725","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 18:51:21 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 18:51:21 2019 -0800","stats":{"files_changed":2,"insertions":194,"deletions":4,"files":["README.md","jc/parsers/ss.py"],"file_stats":[{"name":"README.md","lines_changed":68},{"name":"jc/parsers/ss.py","lines_changed":130}]},"message":"doc update","epoch":1573613481,"epoch_utc":null},{"commit":"648306b7856fe2e296ce463ff4c9c2a8632c92d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 18:04:40 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 18:04:40 2019 -0800","stats":{"files_changed":1,"insertions":44,"deletions":22,"files":["jc/parsers/ss.py"],"file_stats":[{"name":"jc/parsers/ss.py","lines_changed":66}]},"message":"process ss data","epoch":1573610680,"epoch_utc":null},{"commit":"b7a4f205b80c0a6a41aaabf59703525ac526c295","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 17:10:06 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 17:10:06 2019 -0800","stats":{"files_changed":1,"insertions":17,"deletions":14,"files":["jc/parsers/ss.py"],"file_stats":[{"name":"jc/parsers/ss.py","lines_changed":31}]},"message":"parser fixes","epoch":1573607406,"epoch_utc":null},{"commit":"fdb168b43a69358a97bf43b71a0adbc7b1ef56f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 16:34:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 16:34:42 2019 -0800","stats":{"files_changed":2,"insertions":120,"deletions":0,"files":["jc/cli.py","jc/parsers/ss.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/ss.py","lines_changed":117}]},"message":"add ss parser","epoch":1573605282,"epoch_utc":null},{"commit":"b6f65c93c462856f26201df0cbfe804b29a65169","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 15:05:21 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 15:05:21 2019 -0800","stats":{"files_changed":3,"insertions":43,"deletions":69,"files":["README.md","docs/parsers/ps.md","jc/parsers/ps.py"],"file_stats":[{"name":"README.md","lines_changed":26},{"name":"docs/parsers/ps.md","lines_changed":43},{"name":"jc/parsers/ps.py","lines_changed":43}]},"message":"ps doc update","epoch":1573599921,"epoch_utc":null},{"commit":"3f4838f17a81969718d9e5b6bafa21e0b92e1d95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 14:22:49 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 14:22:49 2019 -0800","stats":{"files_changed":2,"insertions":0,"deletions":6,"files":["docgen.sh","docs/cli.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/cli.md","lines_changed":5}]},"message":"remove cli.md","epoch":1573597369,"epoch_utc":null},{"commit":"eef0dee2aa206716d9cf011bec58a06c46bbee15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 14:20:59 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 14:20:59 2019 -0800","stats":{"files_changed":2,"insertions":8,"deletions":0,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":4},{"name":"jc/utils.py","lines_changed":4}]},"message":"doc update","epoch":1573597259,"epoch_utc":null},{"commit":"e17388d3b2d1521d963bf9dd9e7a4ba5ba9bb09d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 14:19:40 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 14:19:40 2019 -0800","stats":{"files_changed":2,"insertions":44,"deletions":4,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":22},{"name":"jc/utils.py","lines_changed":26}]},"message":"doc update","epoch":1573597180,"epoch_utc":null},{"commit":"7e6a1bc719b7160ba70cd326ff6aa182993a7380","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 14:15:22 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 14:15:22 2019 -0800","stats":{"files_changed":2,"insertions":41,"deletions":63,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":51},{"name":"jc/__init__.py","lines_changed":53}]},"message":"doc update","epoch":1573596922,"epoch_utc":null},{"commit":"37738a2ea2f15af847e4b8383aba911e2020a3e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 14:10:26 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 14:10:26 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update contributions","epoch":1573596626,"epoch_utc":null},{"commit":"c5834a57db8957723a1425b9db46c433e28a3af1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 13:35:32 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 13:35:32 2019 -0800","stats":{"files_changed":1,"insertions":14,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":14}]},"message":"add todo section","epoch":1573594532,"epoch_utc":null},{"commit":"91b9373f380e06f91888811edbfb21747ff08810","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 13:05:19 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 13:05:19 2019 -0800","stats":{"files_changed":1,"insertions":417,"deletions":673,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1090}]},"message":"new examples","epoch":1573592719,"epoch_utc":null},{"commit":"ce0bb5b816eed0c75542ead474c3dcb8401be2d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:52:16 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 11:52:16 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting fix","epoch":1573588336,"epoch_utc":null},{"commit":"f330ff0eff00586f46d18497f2441e94b6430e91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:49:14 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 11:49:14 2019 -0800","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":12}]},"message":"wrap example text","epoch":1573588154,"epoch_utc":null},{"commit":"4b02700414660b90518311485761870402368625","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:46:52 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 11:46:52 2019 -0800","stats":{"files_changed":1,"insertions":9,"deletions":20,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":29}]},"message":"update simple examples","epoch":1573588012,"epoch_utc":null},{"commit":"ee30180376b7acec46314bbc483866bff41c362a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:39:33 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 11:39:33 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"fix note","epoch":1573587573,"epoch_utc":null},{"commit":"338e0ff15c7fac84475c1ed107e6a23e7a009b1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:38:50 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 11:38:50 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add schema note","epoch":1573587530,"epoch_utc":null},{"commit":"3ac75305dfa33429646bb5d415567034cccfeee3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:28:10 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 11:28:10 2019 -0800","stats":{"files_changed":39,"insertions":351,"deletions":39,"files":["docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/df.md","lines_changed":10},{"name":"docs/parsers/dig.md","lines_changed":10},{"name":"docs/parsers/env.md","lines_changed":10},{"name":"docs/parsers/free.md","lines_changed":10},{"name":"docs/parsers/history.md","lines_changed":10},{"name":"docs/parsers/ifconfig.md","lines_changed":10},{"name":"docs/parsers/iptables.md","lines_changed":10},{"name":"docs/parsers/jobs.md","lines_changed":10},{"name":"docs/parsers/ls.md","lines_changed":10},{"name":"docs/parsers/lsblk.md","lines_changed":10},{"name":"docs/parsers/lsmod.md","lines_changed":10},{"name":"docs/parsers/lsof.md","lines_changed":10},{"name":"docs/parsers/mount.md","lines_changed":10},{"name":"docs/parsers/netstat.md","lines_changed":10},{"name":"docs/parsers/ps.md","lines_changed":10},{"name":"docs/parsers/route.md","lines_changed":10},{"name":"docs/parsers/uname.md","lines_changed":10},{"name":"docs/parsers/uptime.md","lines_changed":10},{"name":"docs/parsers/w.md","lines_changed":10},{"name":"jc/parsers/df.py","lines_changed":10},{"name":"jc/parsers/dig.py","lines_changed":10},{"name":"jc/parsers/env.py","lines_changed":10},{"name":"jc/parsers/foo.py","lines_changed":10},{"name":"jc/parsers/free.py","lines_changed":10},{"name":"jc/parsers/history.py","lines_changed":10},{"name":"jc/parsers/ifconfig.py","lines_changed":10},{"name":"jc/parsers/iptables.py","lines_changed":10},{"name":"jc/parsers/jobs.py","lines_changed":10},{"name":"jc/parsers/ls.py","lines_changed":10},{"name":"jc/parsers/lsblk.py","lines_changed":10},{"name":"jc/parsers/lsmod.py","lines_changed":10},{"name":"jc/parsers/lsof.py","lines_changed":10},{"name":"jc/parsers/mount.py","lines_changed":10},{"name":"jc/parsers/netstat.py","lines_changed":10},{"name":"jc/parsers/ps.py","lines_changed":10},{"name":"jc/parsers/route.py","lines_changed":10},{"name":"jc/parsers/uname.py","lines_changed":10},{"name":"jc/parsers/uptime.py","lines_changed":10},{"name":"jc/parsers/w.py","lines_changed":10}]},"message":"update process() doc","epoch":1573586890,"epoch_utc":null},{"commit":"3bdcf44afb708cf6a716a0847b119f895602c23e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:22:17 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 11:22:17 2019 -0800","stats":{"files_changed":2,"insertions":18,"deletions":2,"files":["docs/parsers/arp.md","jc/parsers/arp.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":10},{"name":"jc/parsers/arp.py","lines_changed":10}]},"message":"doc update","epoch":1573586537,"epoch_utc":null},{"commit":"e3f4ffede56fe48c0a282a021ac5cdfd7a8abee9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:18:00 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 11:18:00 2019 -0800","stats":{"files_changed":20,"insertions":172,"deletions":77,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":13},{"name":"docs/parsers/dig.md","lines_changed":13},{"name":"docs/parsers/env.md","lines_changed":13},{"name":"docs/parsers/free.md","lines_changed":13},{"name":"docs/parsers/history.md","lines_changed":13},{"name":"docs/parsers/ifconfig.md","lines_changed":13},{"name":"docs/parsers/iptables.md","lines_changed":13},{"name":"docs/parsers/jobs.md","lines_changed":13},{"name":"docs/parsers/ls.md","lines_changed":13},{"name":"docs/parsers/lsblk.md","lines_changed":13},{"name":"docs/parsers/lsmod.md","lines_changed":13},{"name":"docs/parsers/lsof.md","lines_changed":13},{"name":"docs/parsers/mount.md","lines_changed":13},{"name":"docs/parsers/netstat.md","lines_changed":13},{"name":"docs/parsers/ps.md","lines_changed":13},{"name":"docs/parsers/route.md","lines_changed":13},{"name":"docs/parsers/uname.md","lines_changed":13},{"name":"docs/parsers/uptime.md","lines_changed":13},{"name":"docs/parsers/w.md","lines_changed":13}]},"message":"doc update","epoch":1573586280,"epoch_utc":null},{"commit":"f0c8725d4355113f7690f20bb99078e488084ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:17:33 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 11:17:33 2019 -0800","stats":{"files_changed":21,"insertions":181,"deletions":81,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":13},{"name":"jc/parsers/dig.py","lines_changed":13},{"name":"jc/parsers/env.py","lines_changed":13},{"name":"jc/parsers/foo.py","lines_changed":13},{"name":"jc/parsers/free.py","lines_changed":13},{"name":"jc/parsers/history.py","lines_changed":13},{"name":"jc/parsers/ifconfig.py","lines_changed":13},{"name":"jc/parsers/iptables.py","lines_changed":13},{"name":"jc/parsers/jobs.py","lines_changed":13},{"name":"jc/parsers/ls.py","lines_changed":13},{"name":"jc/parsers/lsblk.py","lines_changed":13},{"name":"jc/parsers/lsmod.py","lines_changed":13},{"name":"jc/parsers/lsof.py","lines_changed":13},{"name":"jc/parsers/mount.py","lines_changed":13},{"name":"jc/parsers/netstat.py","lines_changed":13},{"name":"jc/parsers/ps.py","lines_changed":13},{"name":"jc/parsers/route.py","lines_changed":13},{"name":"jc/parsers/uname.py","lines_changed":13},{"name":"jc/parsers/uptime.py","lines_changed":13},{"name":"jc/parsers/w.py","lines_changed":13}]},"message":"doc update","epoch":1573586253,"epoch_utc":null},{"commit":"5473bc4eb697d00bd26a038287e1137e438cacb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:12:41 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 11:12:41 2019 -0800","stats":{"files_changed":2,"insertions":16,"deletions":6,"files":["docs/parsers/arp.md","jc/parsers/arp.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":11},{"name":"jc/parsers/arp.py","lines_changed":11}]},"message":"doc update","epoch":1573585961,"epoch_utc":null},{"commit":"b9bd9422bfa46144416fa65add2e041d4124357b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:19:01 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 07:19:01 2019 -0800","stats":{"files_changed":2,"insertions":380,"deletions":46,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":213},{"name":"jc/parsers/dig.py","lines_changed":213}]},"message":"doc update","epoch":1573571941,"epoch_utc":null},{"commit":"cb5729a070925a7fa29f762bd4b074532f5cba55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:18:27 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 07:18:27 2019 -0800","stats":{"files_changed":1,"insertions":62,"deletions":44,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":106}]},"message":"add options to docs","epoch":1573571907,"epoch_utc":null},{"commit":"f0b1ab42337746afd37365abdf44729d530d5410","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:08:35 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 07:08:35 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":1},{"name":"jc/utils.py","lines_changed":1}]},"message":"doc update","epoch":1573571315,"epoch_utc":null},{"commit":"b15386e849b9fea347e7b17307eedf779d8022fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:07:43 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 07:07:43 2019 -0800","stats":{"files_changed":2,"insertions":11,"deletions":5,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":7},{"name":"jc/utils.py","lines_changed":9}]},"message":"doc update","epoch":1573571263,"epoch_utc":null},{"commit":"d2a2c8da35ee44e9a7572885609548eb809bcdda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:03:02 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 07:03:02 2019 -0800","stats":{"files_changed":3,"insertions":1,"deletions":5,"files":["docs/parsers/iptables.md","docs/parsers/mount.md","docs/parsers/uname.md"],"file_stats":[{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2}]},"message":"doc updates","epoch":1573570982,"epoch_utc":null},{"commit":"7251548cbb09beae6971385a56036e9649bd9b2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:01:36 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 12 07:01:36 2019 -0800","stats":{"files_changed":3,"insertions":3,"deletions":5,"files":["jc/parsers/iptables.py","jc/parsers/mount.py","jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":3},{"name":"jc/parsers/uname.py","lines_changed":3}]},"message":"documentation updates","epoch":1573570896,"epoch_utc":null},{"commit":"146e29f7cbc0f396be67dbd7ae971a4ef4dafb7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 18:30:46 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 18:30:46 2019 -0800","stats":{"files_changed":47,"insertions":5386,"deletions":2249,"files":["docgen.sh","docs/cli.md","docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/readme.md","docs/utils.md","jc/__init__.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/utils.py"],"file_stats":[{"name":"docgen.sh","lines_changed":27},{"name":"docs/cli.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":110},{"name":"docs/parsers/df.md","lines_changed":97},{"name":"docs/parsers/dig.md","lines_changed":212},{"name":"docs/parsers/env.md","lines_changed":72},{"name":"docs/parsers/free.md","lines_changed":77},{"name":"docs/parsers/history.md","lines_changed":64},{"name":"docs/parsers/ifconfig.md","lines_changed":170},{"name":"docs/parsers/iptables.md","lines_changed":168},{"name":"docs/parsers/jobs.md","lines_changed":98},{"name":"docs/parsers/ls.md","lines_changed":168},{"name":"docs/parsers/lsblk.md","lines_changed":273},{"name":"docs/parsers/lsmod.md","lines_changed":130},{"name":"docs/parsers/lsof.md","lines_changed":124},{"name":"docs/parsers/mount.md","lines_changed":82},{"name":"docs/parsers/netstat.md","lines_changed":352},{"name":"docs/parsers/ps.md","lines_changed":223},{"name":"docs/parsers/route.md","lines_changed":129},{"name":"docs/parsers/uname.md","lines_changed":55},{"name":"docs/parsers/uptime.md","lines_changed":56},{"name":"docs/parsers/w.md","lines_changed":108},{"name":"docs/readme.md","lines_changed":79},{"name":"docs/utils.md","lines_changed":22},{"name":"jc/__init__.py","lines_changed":135},{"name":"jc/parsers/arp.py","lines_changed":176},{"name":"jc/parsers/df.py","lines_changed":129},{"name":"jc/parsers/dig.py","lines_changed":362},{"name":"jc/parsers/env.py","lines_changed":101},{"name":"jc/parsers/foo.py","lines_changed":37},{"name":"jc/parsers/free.py","lines_changed":111},{"name":"jc/parsers/history.py","lines_changed":85},{"name":"jc/parsers/ifconfig.py","lines_changed":294},{"name":"jc/parsers/iptables.py","lines_changed":271},{"name":"jc/parsers/jobs.py","lines_changed":150},{"name":"jc/parsers/ls.py","lines_changed":280},{"name":"jc/parsers/lsblk.py","lines_changed":499},{"name":"jc/parsers/lsmod.py","lines_changed":211},{"name":"jc/parsers/lsof.py","lines_changed":205},{"name":"jc/parsers/mount.py","lines_changed":115},{"name":"jc/parsers/netstat.py","lines_changed":661},{"name":"jc/parsers/ps.py","lines_changed":389},{"name":"jc/parsers/route.py","lines_changed":213},{"name":"jc/parsers/uname.py","lines_changed":57},{"name":"jc/parsers/uptime.py","lines_changed":69},{"name":"jc/parsers/w.py","lines_changed":173},{"name":"jc/utils.py","lines_changed":11}]},"message":"update docs","epoch":1573525846,"epoch_utc":null},{"commit":"363fd3eab409351121dab8a11c6b565829ccd84a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 16:27:28 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 16:27:28 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"move parser_name to except block","epoch":1573518448,"epoch_utc":null},{"commit":"4083dd4260ff3a8bb6649e1661cf3e058fdbad59","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 16:16:41 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 16:16:41 2019 -0800","stats":{"files_changed":2,"insertions":24,"deletions":5,"files":["changelog.txt","jc/cli.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/cli.py","lines_changed":28}]},"message":"add -d option","epoch":1573517801,"epoch_utc":null},{"commit":"b2b74547baaf33058d74fc08cb665777b19bd05a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 15:53:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 15:53:42 2019 -0800","stats":{"files_changed":6,"insertions":317,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-sudo-aeep.json","tests/fixtures/centos-7.7/netstat-sudo-aeep.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.json","tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.out","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/netstat-sudo-aeep.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-sudo-aeep.out","lines_changed":164},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.out","lines_changed":126},{"name":"tests/test_netstat.py","lines_changed":24}]},"message":"add netstat-sudo-aeep tests","epoch":1573516422,"epoch_utc":null},{"commit":"dddb0baabf8a78261ac80380b97e7c92c7ce4d89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 15:53:22 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 15:53:22 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":8}]},"message":"use \\u2063 instead of \\u2026","epoch":1573516402,"epoch_utc":null},{"commit":"84b4f67ef9d4bb0db201a095d74400a56394589d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 14:34:36 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 14:34:36 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["tests/fixtures/centos-7.7/ps-axu.json","tests/fixtures/ubuntu-18.04/ps-axu.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ps-axu.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ps-axu.json","lines_changed":2}]},"message":"new json output","epoch":1573511676,"epoch_utc":null},{"commit":"3a089138b8c269ba3c5f7aec87ae3f8ec368c3ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 14:31:27 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 14:31:27 2019 -0800","stats":{"files_changed":1,"insertions":129,"deletions":9,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":138}]},"message":"add int and float changes","epoch":1573511487,"epoch_utc":null},{"commit":"3ff0305c8e62ce3b5a8f3f9174c5a9da3bc22766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 13:00:17 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 13:00:17 2019 -0800","stats":{"files_changed":8,"insertions":54,"deletions":2,"files":["tests/fixtures/centos-7.7/lsblk-allcols.json","tests/fixtures/centos-7.7/lsblk-allcols.out","tests/fixtures/centos-7.7/lsblk.json","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/lsblk-allcols.json","tests/fixtures/ubuntu-18.04/lsblk-allcols.out","tests/fixtures/ubuntu-18.04/lsblk.json","tests/test_lsblk.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/lsblk-allcols.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsblk-allcols.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/lsblk.json","lines_changed":2},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsblk-allcols.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsblk-allcols.out","lines_changed":18},{"name":"tests/fixtures/ubuntu-18.04/lsblk.json","lines_changed":2},{"name":"tests/test_lsblk.py","lines_changed":24}]},"message":"add lsblk tests","epoch":1573506017,"epoch_utc":null},{"commit":"761edc3c6cfc215fe45c65ee2bb5462cb460b6a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 12:43:27 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 12:43:27 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":6,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":7}]},"message":"remove unused parse_pairs function","epoch":1573505007,"epoch_utc":null},{"commit":"3351c81f647ac97a5038cc0c14adb31e55832a77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 12:40:16 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 12:40:16 2019 -0800","stats":{"files_changed":1,"insertions":200,"deletions":2,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":202}]},"message":"add documentation","epoch":1573504816,"epoch_utc":null},{"commit":"3dfc6f67d770c59804bdeb371d5c78e3f3668f9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 12:00:23 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 12:00:23 2019 -0800","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":6}]},"message":"change empty values to Null","epoch":1573502423,"epoch_utc":null},{"commit":"1546ec3bd139ef687282f60786388b5207541c98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 11:53:16 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 11 11:53:16 2019 -0800","stats":{"files_changed":1,"insertions":17,"deletions":13,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":30}]},"message":"fixes for right justified columns","epoch":1573501996,"epoch_utc":null},{"commit":"2a953011f72e922c89b9af6dfebd1983da7c338d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 10 15:18:53 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sun Nov 10 15:18:53 2019 -0800","stats":{"files_changed":2,"insertions":50,"deletions":155,"files":["changelog.txt","jc/parsers/lsblk.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":203}]},"message":"rewrite of lsblk parser to use a custom delimiter","epoch":1573427933,"epoch_utc":null},{"commit":"d2f755de9d2be7b0af5f010042e1f4ca589c5464","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 17:08:41 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 17:08:41 2019 -0800","stats":{"files_changed":14,"insertions":250,"deletions":566,"files":["tests/test_ifconfig.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_ls.py","tests/test_lsblk.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_ps.py","tests/test_route.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py"],"file_stats":[{"name":"tests/test_ifconfig.py","lines_changed":59},{"name":"tests/test_iptables.py","lines_changed":249},{"name":"tests/test_jobs.py","lines_changed":19},{"name":"tests/test_ls.py","lines_changed":58},{"name":"tests/test_lsblk.py","lines_changed":25},{"name":"tests/test_lsmod.py","lines_changed":22},{"name":"tests/test_lsof.py","lines_changed":59},{"name":"tests/test_mount.py","lines_changed":30},{"name":"tests/test_netstat.py","lines_changed":110},{"name":"tests/test_ps.py","lines_changed":57},{"name":"tests/test_route.py","lines_changed":51},{"name":"tests/test_uname.py","lines_changed":27},{"name":"tests/test_uptime.py","lines_changed":23},{"name":"tests/test_w.py","lines_changed":27}]},"message":"updates tests","epoch":1573261721,"epoch_utc":null},{"commit":"f363334639c5fa3a43889794ea52409056a2d886","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 16:21:09 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 16:21:09 2019 -0800","stats":{"files_changed":5,"insertions":87,"deletions":219,"files":["tests/test_df.py","tests/test_dig.py","tests/test_env.py","tests/test_free.py","tests/test_history.py"],"file_stats":[{"name":"tests/test_df.py","lines_changed":43},{"name":"tests/test_dig.py","lines_changed":196},{"name":"tests/test_env.py","lines_changed":13},{"name":"tests/test_free.py","lines_changed":41},{"name":"tests/test_history.py","lines_changed":13}]},"message":"update tests","epoch":1573258869,"epoch_utc":null},{"commit":"750197e48596ad96804477053d3ff3c8063ea68a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 16:04:19 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 16:04:19 2019 -0800","stats":{"files_changed":1,"insertions":27,"deletions":70,"files":["tests/test_arp.py"],"file_stats":[{"name":"tests/test_arp.py","lines_changed":97}]},"message":"new tests","epoch":1573257859,"epoch_utc":null},{"commit":"36b349e4ed39fe611c7d87a47c378cc4d4627ad2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 16:03:41 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 16:03:41 2019 -0800","stats":{"files_changed":76,"insertions":76,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-a.json","tests/fixtures/centos-7.7/arp-v.json","tests/fixtures/centos-7.7/arp.json","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/df.json","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/centos-7.7/env.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/centos-7.7/free.json","tests/fixtures/centos-7.7/history.json","tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/centos-7.7/iptables-filter-nv.json","tests/fixtures/centos-7.7/iptables-filter.json","tests/fixtures/centos-7.7/iptables-mangle.json","tests/fixtures/centos-7.7/iptables-nat.json","tests/fixtures/centos-7.7/iptables-raw.json","tests/fixtures/centos-7.7/jobs.json","tests/fixtures/centos-7.7/ls-al.json","tests/fixtures/centos-7.7/ls-alh.json","tests/fixtures/centos-7.7/ls.json","tests/fixtures/centos-7.7/lsblk.json","tests/fixtures/centos-7.7/lsmod.json","tests/fixtures/centos-7.7/lsof-sudo.json","tests/fixtures/centos-7.7/lsof.json","tests/fixtures/centos-7.7/mount.json","tests/fixtures/centos-7.7/netstat-l.json","tests/fixtures/centos-7.7/netstat-p.json","tests/fixtures/centos-7.7/netstat-sudo-lnp.json","tests/fixtures/centos-7.7/netstat.json","tests/fixtures/centos-7.7/ps-axu.json","tests/fixtures/centos-7.7/ps-ef.json","tests/fixtures/centos-7.7/route-vn.json","tests/fixtures/centos-7.7/route.json","tests/fixtures/centos-7.7/uname-a.json","tests/fixtures/centos-7.7/uptime.json","tests/fixtures/centos-7.7/w.json","tests/fixtures/ubuntu-18.04/arp-a.json","tests/fixtures/ubuntu-18.04/arp-v.json","tests/fixtures/ubuntu-18.04/arp.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/df.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json","tests/fixtures/ubuntu-18.04/env.json","tests/fixtures/ubuntu-18.04/free-h.json","tests/fixtures/ubuntu-18.04/free.json","tests/fixtures/ubuntu-18.04/history.json","tests/fixtures/ubuntu-18.04/ifconfig.json","tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","tests/fixtures/ubuntu-18.04/iptables-filter.json","tests/fixtures/ubuntu-18.04/iptables-mangle.json","tests/fixtures/ubuntu-18.04/iptables-nat.json","tests/fixtures/ubuntu-18.04/iptables-raw.json","tests/fixtures/ubuntu-18.04/jobs.json","tests/fixtures/ubuntu-18.04/ls-al.json","tests/fixtures/ubuntu-18.04/ls-alh.json","tests/fixtures/ubuntu-18.04/ls.json","tests/fixtures/ubuntu-18.04/lsblk.json","tests/fixtures/ubuntu-18.04/lsmod.json","tests/fixtures/ubuntu-18.04/lsof-sudo.json","tests/fixtures/ubuntu-18.04/lsof.json","tests/fixtures/ubuntu-18.04/mount.json","tests/fixtures/ubuntu-18.04/netstat-l.json","tests/fixtures/ubuntu-18.04/netstat-p.json","tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.json","tests/fixtures/ubuntu-18.04/netstat.json","tests/fixtures/ubuntu-18.04/ps-axu.json","tests/fixtures/ubuntu-18.04/ps-ef.json","tests/fixtures/ubuntu-18.04/route-vn.json","tests/fixtures/ubuntu-18.04/route.json","tests/fixtures/ubuntu-18.04/uname-a.json","tests/fixtures/ubuntu-18.04/uptime.json","tests/fixtures/ubuntu-18.04/w.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/arp-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/arp-v.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/arp.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/df-h.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/df.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/dig-aaaa.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/dig-x.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/dig.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/env.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/free-h.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/free.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/history.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ifconfig.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-filter-nv.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-filter.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-mangle.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-nat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-raw.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/jobs.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-al.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-alh.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsblk.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsmod.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsof-sudo.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsof.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mount.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-l.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-sudo-lnp.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ps-axu.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ps-ef.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/route-vn.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/route.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/uname-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/uptime.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/w.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/arp-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/arp-v.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/arp.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/df-h.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/df.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dig-aaaa.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dig-x.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dig.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/env.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/free-h.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/free.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/history.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ifconfig.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-mangle.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-nat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-raw.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/jobs.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-al.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-alh.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsblk.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsmod.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsof-sudo.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsof.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/mount.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-l.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ps-axu.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ps-ef.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/route-vn.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/route.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/uname-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/uptime.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/w.json","lines_changed":1}]},"message":"json output files","epoch":1573257821,"epoch_utc":null},{"commit":"b5f1e94fe2859c4fbcf126f8f8fb20d71a9b6433","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 16:03:14 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 16:03:14 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":1}]},"message":"fix for space before '-' in program_name","epoch":1573257794,"epoch_utc":null},{"commit":"6a504fb0e10b1ef551ed9fe780926fe5ca02d267","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 16:02:44 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 16:02:44 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2}]},"message":"add exception type","epoch":1573257764,"epoch_utc":null},{"commit":"e02bad2240bacbc31097d931a902a34217d559db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 12:22:41 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 12:22:41 2019 -0800","stats":{"files_changed":1,"insertions":123,"deletions":175,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":298}]},"message":"update documentation","epoch":1573244561,"epoch_utc":null},{"commit":"1d4043a3b64c38a20a0db065c3bdc3c6a2d068bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 12:14:09 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 12:14:09 2019 -0800","stats":{"files_changed":1,"insertions":52,"deletions":0,"files":["jc/parsers/foo.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":52}]},"message":"add template parser","epoch":1573244049,"epoch_utc":null},{"commit":"039e034829789ca314a00abd4f1d9ad06f1a6eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 11:47:58 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 11:47:58 2019 -0800","stats":{"files_changed":1,"insertions":19,"deletions":6,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":25}]},"message":"fix parsing issues in program_name when spaces are in the name","epoch":1573242478,"epoch_utc":null},{"commit":"d828de4f4f2f4c3d582fddee79830d12511c3299","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 09:07:05 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 09:07:05 2019 -0800","stats":{"files_changed":1,"insertions":53,"deletions":9,"files":["jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/w.py","lines_changed":62}]},"message":"update documentation","epoch":1573232825,"epoch_utc":null},{"commit":"098000bb10a3f5ed33d285c6ba4f0dfb9a013fdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 09:04:03 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 8 09:04:03 2019 -0800","stats":{"files_changed":2,"insertions":24,"deletions":9,"files":["changelog.txt","jc/parsers/w.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/w.py","lines_changed":32}]},"message":"fix blank 'from' column issue","epoch":1573232643,"epoch_utc":null},{"commit":"b41165eff5cd7371e852cd33e084a919524ead9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 19:13:15 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 19:13:15 2019 -0800","stats":{"files_changed":1,"insertions":31,"deletions":1,"files":["jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/w.py","lines_changed":32}]},"message":"process w data","epoch":1573182795,"epoch_utc":null},{"commit":"6ad7891b2b34fae1a366568e4eba86e886a6dd84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 18:54:52 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 18:54:52 2019 -0800","stats":{"files_changed":1,"insertions":59,"deletions":14,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":73}]},"message":"process uptime data","epoch":1573181692,"epoch_utc":null},{"commit":"72138315598cd405bc0508b554108bf3f730dcb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 18:47:01 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 18:47:01 2019 -0800","stats":{"files_changed":1,"insertions":31,"deletions":10,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":41}]},"message":"add process boilerplate","epoch":1573181221,"epoch_utc":null},{"commit":"10eedd82e4c4678fbf989fe599d7ca75deced5a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 18:34:06 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 18:34:06 2019 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]},"message":"changelog update","epoch":1573180446,"epoch_utc":null},{"commit":"a55493da0f1457a46f29511e0835adfa9d748f7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 18:33:51 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 18:33:51 2019 -0800","stats":{"files_changed":1,"insertions":93,"deletions":6,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":99}]},"message":"process route data","epoch":1573180431,"epoch_utc":null},{"commit":"89973f4162317693b0d094a64115ee87d8479d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 15:33:12 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 15:33:12 2019 -0800","stats":{"files_changed":1,"insertions":45,"deletions":27,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":72}]},"message":"doc updates and tty fix","epoch":1573169592,"epoch_utc":null},{"commit":"4802222ad50d55372f2b883d83a61181086b0619","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 15:24:03 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 15:24:03 2019 -0800","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":11}]},"message":"process ps data","epoch":1573169043,"epoch_utc":null},{"commit":"bcd28f06f87a4260d1787399d723817afd6aee90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 15:09:57 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 15:09:57 2019 -0800","stats":{"files_changed":1,"insertions":23,"deletions":1,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":24}]},"message":"prep ps for process","epoch":1573168197,"epoch_utc":null},{"commit":"e17a47a7fa7f4c1bb4c4b55fb004963fc1b61434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 14:51:05 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 14:51:05 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":2}]},"message":"fix typo","epoch":1573167065,"epoch_utc":null},{"commit":"cad2e16c7aa54a70f476bf4268ff8e5985cff468","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 14:49:21 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 14:49:21 2019 -0800","stats":{"files_changed":1,"insertions":353,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":354}]},"message":"document examples","epoch":1573166961,"epoch_utc":null},{"commit":"5da5d278dac77bd4aa21819194e7f9e178bd1887","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 14:43:42 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 14:43:42 2019 -0800","stats":{"files_changed":1,"insertions":23,"deletions":0,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":23}]},"message":"process netstat data","epoch":1573166622,"epoch_utc":null},{"commit":"81b6776e57c113cbfb8346d1cfd83532a440c257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 13:58:55 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 13:58:55 2019 -0800","stats":{"files_changed":1,"insertions":0,"deletions":177,"files":["jc/parsers/netstat.py.old"],"file_stats":[{"name":"jc/parsers/netstat.py.old","lines_changed":177}]},"message":"remove old netstat parser","epoch":1573163935,"epoch_utc":null},{"commit":"5ecb6bd58b4ed91f63e4a0b5939378bd9925b7b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 13:58:37 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 13:58:37 2019 -0800","stats":{"files_changed":2,"insertions":4,"deletions":3,"files":["changelog.txt","jc/parsers/netstat.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":3}]},"message":"doc updates","epoch":1573163917,"epoch_utc":null},{"commit":"21b56096c57cfcf5c55fdf5f9bab88b6d5c7dd73","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 13:53:23 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 13:53:23 2019 -0800","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":37}]},"message":"finalize parse_post","epoch":1573163603,"epoch_utc":null},{"commit":"8c78f959731a25a05ee6361a14853c92f8fce69b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 12:13:25 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 12:13:25 2019 -0800","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":8}]},"message":"clean up trailing spaces on entries","epoch":1573157605,"epoch_utc":null},{"commit":"94a88bb5669d9a9a5dff085a4c4111bdd39df8f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 10:52:02 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 10:52:02 2019 -0800","stats":{"files_changed":1,"insertions":35,"deletions":17,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":52}]},"message":"post_parse flags and program_name","epoch":1573152722,"epoch_utc":null},{"commit":"579124475b0b517b36ddbe5bdb13be14807dea1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 09:02:27 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 09:02:27 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"simplify parser_map code","epoch":1573146147,"epoch_utc":null},{"commit":"5da83e020015eb5559d216bc3f39b3854e76adf3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:23:11 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 08:23:11 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"fix found variable error","epoch":1573143791,"epoch_utc":null},{"commit":"a90a76d004b923edece07a52a3aa400a9ef4b005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:15:19 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 08:15:19 2019 -0800","stats":{"files_changed":2,"insertions":177,"deletions":140,"files":["jc/parsers/netstat.py.old","jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/netstat.py.old","lines_changed":177},{"name":"jc/parsers/netstat2.py","lines_changed":140}]},"message":"move out old netstat parser","epoch":1573143319,"epoch_utc":null},{"commit":"bdfa95912398b2630fcb13e866f4013747fd0975","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:07:43 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 08:07:43 2019 -0800","stats":{"files_changed":20,"insertions":209,"deletions":212,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":10},{"name":"jc/parsers/env.py","lines_changed":10},{"name":"jc/parsers/free.py","lines_changed":10},{"name":"jc/parsers/history.py","lines_changed":8},{"name":"jc/parsers/ifconfig.py","lines_changed":10},{"name":"jc/parsers/iptables.py","lines_changed":10},{"name":"jc/parsers/jobs.py","lines_changed":10},{"name":"jc/parsers/ls.py","lines_changed":10},{"name":"jc/parsers/lsblk.py","lines_changed":10},{"name":"jc/parsers/lsmod.py","lines_changed":10},{"name":"jc/parsers/lsof.py","lines_changed":10},{"name":"jc/parsers/mount.py","lines_changed":10},{"name":"jc/parsers/netstat.py","lines_changed":245},{"name":"jc/parsers/ps.py","lines_changed":10},{"name":"jc/parsers/route.py","lines_changed":10},{"name":"jc/parsers/uname.py","lines_changed":10},{"name":"jc/parsers/uptime.py","lines_changed":10},{"name":"jc/parsers/w.py","lines_changed":10}]},"message":"fix compatibility code","epoch":1573142863,"epoch_utc":null},{"commit":"4380594275bc863e81839a6a7b032a6ff0cbb9b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:04:32 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 08:04:32 2019 -0800","stats":{"files_changed":1,"insertions":8,"deletions":46,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":54}]},"message":"remove cli functions from utils","epoch":1573142672,"epoch_utc":null},{"commit":"88bf252c0df3c583640286880d7992e4399e23f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:04:07 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 08:04:07 2019 -0800","stats":{"files_changed":2,"insertions":139,"deletions":128,"files":["jc/cli.py","jc/jc.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":139},{"name":"jc/jc.py","lines_changed":128}]},"message":"rename jc.py to cli.py","epoch":1573142647,"epoch_utc":null},{"commit":"a5efd8adce77fca7e3343f8f518c7bad578fdb4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:03:45 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Nov 7 08:03:45 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"rename jc.py to cli.py","epoch":1573142625,"epoch_utc":null},{"commit":"2ee392eefffde77ebdf83f5e4e0c43cf8c1a7d6e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 21:09:09 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 6 21:09:09 2019 -0800","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/netstat2.py","lines_changed":10}]},"message":"add quiet mode","epoch":1573103349,"epoch_utc":null},{"commit":"9c1d893e16ea17b16bec5fd0ec8839c4fe6f0590","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 21:07:25 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 6 21:07:25 2019 -0800","stats":{"files_changed":4,"insertions":102,"deletions":90,"files":["jc/jc.py","jc/parsers/arp.py","jc/parsers/df.py","jc/utils.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":107},{"name":"jc/parsers/arp.py","lines_changed":10},{"name":"jc/parsers/df.py","lines_changed":10},{"name":"jc/utils.py","lines_changed":65}]},"message":"move utils to own module and add quiet mode","epoch":1573103245,"epoch_utc":null},{"commit":"88dcb90c83b757285661c72429c5b60bb1ead94a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 21:05:25 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 6 21:05:25 2019 -0800","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":6}]},"message":"changelog update","epoch":1573103125,"epoch_utc":null},{"commit":"a3bcabc89c1f74d067da0046492dbc56e50b1005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 20:35:10 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 6 20:35:10 2019 -0800","stats":{"files_changed":1,"insertions":9,"deletions":62,"files":["jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/netstat2.py","lines_changed":71}]},"message":"mvp of netstat raw_data parser","epoch":1573101310,"epoch_utc":null},{"commit":"dafbf9fdcf53a8abbd006baef0be6697f860d2a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 19:17:01 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 6 19:17:01 2019 -0800","stats":{"files_changed":4,"insertions":247,"deletions":53,"files":["jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/lsmod.py","lines_changed":85},{"name":"jc/parsers/lsof.py","lines_changed":106},{"name":"jc/parsers/mount.py","lines_changed":31},{"name":"jc/parsers/netstat2.py","lines_changed":78}]},"message":"process lsmod data","epoch":1573096621,"epoch_utc":null},{"commit":"680cb2b2caa82e1e2c3225b3c44cae2ba03ba02c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 09:56:59 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 6 09:56:59 2019 -0600","stats":{"files_changed":1,"insertions":76,"deletions":7,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":83}]},"message":"doc update","epoch":1573063019,"epoch_utc":null},{"commit":"54818a06e0e0b981810f6aec45c308da81a9e2ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 09:21:55 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 6 09:21:55 2019 -0600","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":8}]},"message":"change bool variable names","epoch":1573060915,"epoch_utc":null},{"commit":"88f4c5b5a93da3938b84f97abfc54539ee19ac48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 08:47:54 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Nov 6 08:47:54 2019 -0600","stats":{"files_changed":6,"insertions":10,"deletions":10,"files":["jc/parsers/dig.py","jc/parsers/free.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":8},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":4},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"remove TypeError from exception check","epoch":1573058874,"epoch_utc":null},{"commit":"2bb7409887e8b7659613189daf58d02cb26bd6ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 23:10:49 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 23:10:49 2019 -0600","stats":{"files_changed":2,"insertions":36,"deletions":11,"files":["jc/parsers/df.py","jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/lsblk.py","lines_changed":42}]},"message":"process lsblk data","epoch":1573024249,"epoch_utc":null},{"commit":"c780aac3aba02cc042c6a3c984af198069956370","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 22:42:48 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 22:42:48 2019 -0600","stats":{"files_changed":22,"insertions":91,"deletions":5,"files":["jc/jc.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat2.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":8},{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/df.py","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":5},{"name":"jc/parsers/env.py","lines_changed":5},{"name":"jc/parsers/free.py","lines_changed":4},{"name":"jc/parsers/history.py","lines_changed":5},{"name":"jc/parsers/ifconfig.py","lines_changed":5},{"name":"jc/parsers/iptables.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"jc/parsers/lsblk.py","lines_changed":1},{"name":"jc/parsers/lsmod.py","lines_changed":4},{"name":"jc/parsers/lsof.py","lines_changed":5},{"name":"jc/parsers/mount.py","lines_changed":5},{"name":"jc/parsers/netstat.py","lines_changed":5},{"name":"jc/parsers/netstat2.py","lines_changed":5},{"name":"jc/parsers/ps.py","lines_changed":4},{"name":"jc/parsers/route.py","lines_changed":4},{"name":"jc/parsers/uname.py","lines_changed":5},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/w.py","lines_changed":4}]},"message":"add compatibility function","epoch":1573022568,"epoch_utc":null},{"commit":"5010aaec285e26ae9dbfdb3fcdc38a3bd36cd236","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:25:20 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 17:25:20 2019 -0600","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":2}]},"message":"put exit() back","epoch":1573003520,"epoch_utc":null},{"commit":"066e93cb075021ac94a0e2e6a36a34bc173ee6c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:23:46 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 17:23:46 2019 -0600","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":2}]},"message":"move exit() to errormessage()","epoch":1573003426,"epoch_utc":null},{"commit":"0bd2faa7f71a128babc68afea053159ccb91b702","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:17:07 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 17:17:07 2019 -0600","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":3}]},"message":"beautify compatibility list","epoch":1573003027,"epoch_utc":null},{"commit":"e2f926453ba386736204e358f8306dfc731b5005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:08:41 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 17:08:41 2019 -0600","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["install.sh"],"file_stats":[{"name":"install.sh","lines_changed":2}]},"message":"add install script","epoch":1573002521,"epoch_utc":null},{"commit":"b953b79f9c46d8c5398a6c1c2769167b5aed2805","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:04:18 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 17:04:18 2019 -0600","stats":{"files_changed":3,"insertions":11,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4}]},"message":"add compatibility","epoch":1573002258,"epoch_utc":null},{"commit":"7f9967780692bec2fcbe992eee0c392ab92efb7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:00:36 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 17:00:36 2019 -0600","stats":{"files_changed":2,"insertions":19,"deletions":1,"files":["jc/jc.py","jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":16},{"name":"jc/parsers/lsblk.py","lines_changed":4}]},"message":"compatibility function call","epoch":1573002036,"epoch_utc":null},{"commit":"721b54665924ad1657ee83cd5fca601e03700962","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 15:14:52 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 15:14:52 2019 -0600","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":8}]},"message":"finish schema","epoch":1572995692,"epoch_utc":null},{"commit":"2de5e41269421c73e07d4abd6ca99b38be736261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 15:07:40 2019 -0600","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 15:07:40 2019 -0600","stats":{"files_changed":1,"insertions":95,"deletions":12,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":107}]},"message":"fix for more columns and build schema","epoch":1572995260,"epoch_utc":null},{"commit":"dfe0f6e99b6174734661fc43d9ad4b1d0dfd96e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 08:30:32 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 08:30:32 2019 -0800","stats":{"files_changed":1,"insertions":75,"deletions":9,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":84}]},"message":"process ls data","epoch":1572971432,"epoch_utc":null},{"commit":"8873b1bc697c8f9409fa676c88b5ebe109dc8717","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 08:07:39 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 08:07:39 2019 -0800","stats":{"files_changed":1,"insertions":24,"deletions":46,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":70}]},"message":"clean up process code","epoch":1572970059,"epoch_utc":null},{"commit":"9ff94707004fefed475603436fc0a7ffb19e6fee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 07:21:58 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Nov 5 07:21:58 2019 -0800","stats":{"files_changed":1,"insertions":9,"deletions":4,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":13}]},"message":"refactor helptext() function","epoch":1572967318,"epoch_utc":null},{"commit":"2c58fca53044892e15ceb5e8bcae1afb09fa3269","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 17:07:11 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 17:07:11 2019 -0800","stats":{"files_changed":1,"insertions":62,"deletions":4,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":66}]},"message":"process jobs data","epoch":1572916031,"epoch_utc":null},{"commit":"9e5cd90da7d92bbadbc0d25071d087a3dbd90a5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 16:59:14 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 16:59:14 2019 -0800","stats":{"files_changed":1,"insertions":131,"deletions":261,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":392}]},"message":"process iptables data","epoch":1572915554,"epoch_utc":null},{"commit":"7ee0d49424bba5274975d6c33e0721977660692f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 15:54:34 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 15:54:34 2019 -0800","stats":{"files_changed":1,"insertions":107,"deletions":28,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":135}]},"message":"process ifconfig data","epoch":1572911674,"epoch_utc":null},{"commit":"a9058ee21e87454aa423112239c4f4df7daca8c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 15:19:50 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 15:19:50 2019 -0800","stats":{"files_changed":3,"insertions":4,"deletions":1,"files":["jc/parsers/arp.py","jc/parsers/dig.py","jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/dig.py","lines_changed":1},{"name":"jc/parsers/free.py","lines_changed":1}]},"message":"doc formatting","epoch":1572909590,"epoch_utc":null},{"commit":"fcf0aac87dccac2ce28e6f55e66e2f0b8f6fbd36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 15:19:35 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 15:19:35 2019 -0800","stats":{"files_changed":1,"insertions":54,"deletions":10,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":64}]},"message":"add history processing","epoch":1572909575,"epoch_utc":null},{"commit":"daec5f068103aae547509ddacc2be56c84f39f17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 15:11:18 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 15:11:18 2019 -0800","stats":{"files_changed":1,"insertions":55,"deletions":6,"files":["jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/free.py","lines_changed":61}]},"message":"process free data","epoch":1572909078,"epoch_utc":null},{"commit":"5b2491d5ae72705758944e247fbca83367c0365f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 15:03:16 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 15:03:16 2019 -0800","stats":{"files_changed":1,"insertions":54,"deletions":5,"files":["jc/parsers/env.py"],"file_stats":[{"name":"jc/parsers/env.py","lines_changed":59}]},"message":"process env data","epoch":1572908596,"epoch_utc":null},{"commit":"d9b41ac73b234f5bf7ff3abfee198092424a1bbd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 13:52:45 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 13:52:45 2019 -0800","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":4}]},"message":"doc formatting","epoch":1572904365,"epoch_utc":null},{"commit":"7168ffddf8a8dfcdd5bcabd8bf943d6417de407d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 13:47:27 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 13:47:27 2019 -0800","stats":{"files_changed":1,"insertions":87,"deletions":5,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":92}]},"message":"process dig output","epoch":1572904047,"epoch_utc":null},{"commit":"a855344bec9f60d852de326953436ec76f25cffb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 13:05:56 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 13:05:56 2019 -0800","stats":{"files_changed":1,"insertions":13,"deletions":0,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":13}]},"message":"document schema","epoch":1572901556,"epoch_utc":null},{"commit":"d8b3b59fae924494fbcdfbdf6ad790f5234b0c69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 13:02:54 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 13:02:54 2019 -0800","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":16}]},"message":"add schema and rename 'avail' to 'available'","epoch":1572901374,"epoch_utc":null},{"commit":"4b7d7840d37be47c1c98c38a6d712e7090e5b68c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 12:50:37 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 12:50:37 2019 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"changelog.txt","lines_changed":2}]},"message":"add -r option","epoch":1572900637,"epoch_utc":null},{"commit":"58a094a9b4cab0fcb99581f37a21a450fc3a1aed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 12:40:19 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 12:40:19 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update","epoch":1572900019,"epoch_utc":null},{"commit":"65adbb4189ac66de3283adb2af93a1251103f057","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 12:40:05 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 12:40:05 2019 -0800","stats":{"files_changed":1,"insertions":29,"deletions":7,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":36}]},"message":"doc update","epoch":1572900005,"epoch_utc":null},{"commit":"f7350959c9706486a3aed19a999e5ee756a1240c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 12:39:43 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 12:39:43 2019 -0800","stats":{"files_changed":1,"insertions":47,"deletions":24,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":71}]},"message":"df fix for changing header names when -h used","epoch":1572899983,"epoch_utc":null},{"commit":"8934a7d832b8e1375f0bbdd71031f37ae42f3929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 11:10:58 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 11:10:58 2019 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["jc/parsers/arp.py","jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":6}]},"message":"fix dictionary iteration","epoch":1572894658,"epoch_utc":null},{"commit":"669a424fd6508db91bf5cfa2607033fac85f442c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 11:02:02 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 11:02:02 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":4}]},"message":"fix process function","epoch":1572894122,"epoch_utc":null},{"commit":"591a65c2bda26efcdd570a5f147f98a5be0473d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 10:56:33 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 10:56:33 2019 -0800","stats":{"files_changed":1,"insertions":46,"deletions":2,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":48}]},"message":"process df data","epoch":1572893793,"epoch_utc":null},{"commit":"a78fb890782a64b20c0c1b60afbd915ebdd88535","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 09:32:29 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 09:32:29 2019 -0800","stats":{"files_changed":1,"insertions":21,"deletions":5,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":26}]},"message":"add raw and processed output","epoch":1572888749,"epoch_utc":null},{"commit":"8979dab2a5371fce3a773004c2309e7483e4cd31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 09:32:09 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 09:32:09 2019 -0800","stats":{"files_changed":1,"insertions":25,"deletions":20,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":45}]},"message":"add raw mode","epoch":1572888729,"epoch_utc":null},{"commit":"0a891f0adda7f2f3233222a0cb5c1f737913ad6f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 08:09:19 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 08:09:19 2019 -0800","stats":{"files_changed":2,"insertions":4,"deletions":1,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"setup.py","lines_changed":2}]},"message":"bump python required version","epoch":1572883759,"epoch_utc":null},{"commit":"c220e35b14237c2cfc38aa661413af83ea13e393","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 08:06:50 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 08:06:50 2019 -0800","stats":{"files_changed":1,"insertions":34,"deletions":33,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":67}]},"message":"cleanup helptext","epoch":1572883610,"epoch_utc":null},{"commit":"f26c5818bd958c18f4ecc22611b9c058f6213a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 07:57:47 2019 -0800","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Nov 4 07:57:47 2019 -0800","stats":{"files_changed":1,"insertions":36,"deletions":33,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":69}]},"message":"refactor helptext","epoch":1572883067,"epoch_utc":null},{"commit":"e712cd3fc4cec1b3137c73e199b2d89fd42fb3bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 1 22:29:08 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 1 22:29:08 2019 -0700","stats":{"files_changed":1,"insertions":138,"deletions":0,"files":["jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/netstat2.py","lines_changed":138}]},"message":"netstat2 skeleton","epoch":1572672548,"epoch_utc":null},{"commit":"0309c9ac67c5f65e0a584fd01e8104ef1990fa7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 1 08:55:52 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 1 08:55:52 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"setup cleanup","epoch":1572623752,"epoch_utc":null},{"commit":"9a9eb4120af7696cd3727ac0f0a014663e62b993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 1 08:53:53 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Nov 1 08:53:53 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":3}]},"message":"setup updates","epoch":1572623633,"epoch_utc":null},{"commit":"d1927456b02e6c2a6e6395cd6ce873b6565ec37d","merge":"0691cfc a3d9213","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 31 08:06:01 2019 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Thu Oct 31 08:06:01 2019 -0700","message":"Merge pull request #6 from kellyjonbrazil/dev\n\nDev v1.1.1","epoch":1572534361,"epoch_utc":null},{"commit":"a3d9213a1e2fd52ba2cbc863d4d01d3ffeebe230","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 31 07:59:03 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 31 07:59:03 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add date","epoch":1572533943,"epoch_utc":null},{"commit":"3365c03a1e709835b4bd6bca023afbcb46912982","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 31 07:58:44 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 31 07:58:44 2019 -0700","stats":{"files_changed":2,"insertions":361,"deletions":0,"files":["tests/test_arp.py","tests/test_dig.py"],"file_stats":[{"name":"tests/test_arp.py","lines_changed":131},{"name":"tests/test_dig.py","lines_changed":230}]},"message":"add tests","epoch":1572533924,"epoch_utc":null},{"commit":"4f6c87389b313b368d9e833feef55fe6daf7aac9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 31 07:27:31 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 31 07:27:31 2019 -0700","stats":{"files_changed":7,"insertions":164,"deletions":1,"files":["tests/fixtures/centos-7.7/dig-aaaa.out","tests/fixtures/centos-7.7/dig-x.out","tests/fixtures/centos-7.7/dig.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/dig-aaaa.out","tests/fixtures/ubuntu-18.04/dig-x.out","tests/fixtures/ubuntu-18.04/dig.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/dig-aaaa.out","lines_changed":20},{"name":"tests/fixtures/centos-7.7/dig-x.out","lines_changed":20},{"name":"tests/fixtures/centos-7.7/dig.out","lines_changed":38},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":6},{"name":"tests/fixtures/ubuntu-18.04/dig-aaaa.out","lines_changed":20},{"name":"tests/fixtures/ubuntu-18.04/dig-x.out","lines_changed":20},{"name":"tests/fixtures/ubuntu-18.04/dig.out","lines_changed":41}]},"message":"add dig test files","epoch":1572532051,"epoch_utc":null},{"commit":"41a2a9adac7d3c29dfa11292f08b0877c69b1a5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 31 07:27:12 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 31 07:27:12 2019 -0700","stats":{"files_changed":2,"insertions":147,"deletions":3,"files":["README.md","jc/parsers/dig.py"],"file_stats":[{"name":"README.md","lines_changed":147},{"name":"jc/parsers/dig.py","lines_changed":3}]},"message":"remove unnecessary if statement","epoch":1572532032,"epoch_utc":null},{"commit":"74dae2905b2b0916f0be9fee2a4a343962760ff6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 17:23:35 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 17:23:35 2019 -0700","stats":{"files_changed":1,"insertions":143,"deletions":30,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":173}]},"message":"dig parser mvp","epoch":1572481415,"epoch_utc":null},{"commit":"d1f64214de00090c3faae0bf544c6c2602ab8c31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 17:18:14 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 17:18:14 2019 -0700","stats":{"files_changed":1,"insertions":19,"deletions":3,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":22}]},"message":"add authority parsing","epoch":1572481094,"epoch_utc":null},{"commit":"d3e1aa20a815d1d1d6ae82776ae18e3416f0966f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 17:03:35 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 17:03:35 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":2}]},"message":"fix when line","epoch":1572480215,"epoch_utc":null},{"commit":"72cae9577756c4355211a19f4dd77aaeb6f8e905","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 16:59:56 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 16:59:56 2019 -0700","stats":{"files_changed":1,"insertions":47,"deletions":9,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":56}]},"message":"dig fixes","epoch":1572479996,"epoch_utc":null},{"commit":"219bc8130f55f23e3be3abbe56104aefc2f84e86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 15:36:13 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 15:36:13 2019 -0700","stats":{"files_changed":2,"insertions":155,"deletions":0,"files":["jc/jc.py","jc/parsers/dig.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":150}]},"message":"dig parser skeleton","epoch":1572474973,"epoch_utc":null},{"commit":"e8c1a554c040ad8f9c6b518db5fd58e8345d2181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:52:53 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 13:52:53 2019 -0700","stats":{"files_changed":3,"insertions":7,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-a.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/arp-a.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/arp-a.out","lines_changed":3},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/arp-a.out","lines_changed":3}]},"message":"testfile updates","epoch":1572468773,"epoch_utc":null},{"commit":"087a60bc2adf64bfcedc1f264fef328f993b530c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:52:31 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 13:52:31 2019 -0700","stats":{"files_changed":2,"insertions":87,"deletions":5,"files":["README.md","jc/parsers/arp.py"],"file_stats":[{"name":"README.md","lines_changed":33},{"name":"jc/parsers/arp.py","lines_changed":59}]},"message":"documentation updates","epoch":1572468751,"epoch_utc":null},{"commit":"9c9823c3b8737b5de08af6278ca74414138e9263","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:29:06 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 13:29:06 2019 -0700","stats":{"files_changed":5,"insertions":16,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-v.out","tests/fixtures/centos-7.7/arp.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/arp-v.out","tests/fixtures/ubuntu-18.04/arp.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/arp-v.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/arp.out","lines_changed":3},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/arp-v.out","lines_changed":4},{"name":"tests/fixtures/ubuntu-18.04/arp.out","lines_changed":3}]},"message":"add arp testfiles","epoch":1572467346,"epoch_utc":null},{"commit":"cf8d13030bf67261a986c0f80fa20ec0e37a743a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:22:12 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 13:22:12 2019 -0700","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":21}]},"message":"add arp","epoch":1572466932,"epoch_utc":null},{"commit":"1eff69c187ca410ffaec7909bc2532553be1d80c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:21:05 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 13:21:05 2019 -0700","stats":{"files_changed":2,"insertions":17,"deletions":1,"files":["changelog.txt","jc/parsers/arp.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/arp.py","lines_changed":17}]},"message":"add documentation","epoch":1572466865,"epoch_utc":null},{"commit":"b10fb77d714b73a10a9bf28b45269b3530e01cee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:12:53 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 13:12:53 2019 -0700","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":10}]},"message":"fixup arp parser","epoch":1572466373,"epoch_utc":null},{"commit":"87cee8b230a06fa270b2e36afb56f337da814c80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:00:05 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 13:00:05 2019 -0700","stats":{"files_changed":2,"insertions":28,"deletions":1,"files":["jc/jc.py","jc/parsers/arp.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":7},{"name":"jc/parsers/arp.py","lines_changed":22}]},"message":"add arp parser","epoch":1572465605,"epoch_utc":null},{"commit":"83ab10d6282e26391bbf6bae5d0d29e040b209f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 12:50:05 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 30 12:50:05 2019 -0700","stats":{"files_changed":1,"insertions":44,"deletions":34,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":78}]},"message":"documentation update","epoch":1572465005,"epoch_utc":null},{"commit":"d58a6e1d1dc93155255922b65b0af1325439b033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 14:19:04 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 29 14:19:04 2019 -0700","stats":{"files_changed":1,"insertions":13,"deletions":15,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":28}]},"message":"readme update","epoch":1572383944,"epoch_utc":null},{"commit":"cb46ca5c2776a13c673a44d3e0fbd0661b32af9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 10:27:42 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 29 10:27:42 2019 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"readme update","epoch":1572370062,"epoch_utc":null},{"commit":"5528d979f0b45787d68ab79b962371df9acc527b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 09:16:03 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 29 09:16:03 2019 -0700","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":6},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1572365763,"epoch_utc":null},{"commit":"ee94a038a61d60db72046d5bcceec58009decb39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 08:58:52 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 29 08:58:52 2019 -0700","stats":{"files_changed":3,"insertions":131,"deletions":0,"files":["tests/test_uname.py","tests/test_uptime.py","tests/test_w.py"],"file_stats":[{"name":"tests/test_uname.py","lines_changed":45},{"name":"tests/test_uptime.py","lines_changed":41},{"name":"tests/test_w.py","lines_changed":45}]},"message":"add tests","epoch":1572364732,"epoch_utc":null},{"commit":"1d658f7a9fc50873f76985b2fb9de92ada9d5547","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 08:45:11 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 29 08:45:11 2019 -0700","stats":{"files_changed":3,"insertions":265,"deletions":0,"files":["tests/test_netstat.py","tests/test_ps.py","tests/test_route.py"],"file_stats":[{"name":"tests/test_netstat.py","lines_changed":105},{"name":"tests/test_ps.py","lines_changed":83},{"name":"tests/test_route.py","lines_changed":77}]},"message":"add tests","epoch":1572363911,"epoch_utc":null},{"commit":"392cb44f9b19829a5ceba055e24c7af4d8ac5b3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 07:55:26 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 29 07:55:26 2019 -0700","stats":{"files_changed":80,"insertions":12667,"deletions":0,"files":["runtests.sh","tests/__init__.py","tests/fixtures/centos-7.7/df-h.out","tests/fixtures/centos-7.7/df.out","tests/fixtures/centos-7.7/env.out","tests/fixtures/centos-7.7/free-h.out","tests/fixtures/centos-7.7/free.out","tests/fixtures/centos-7.7/history.out","tests/fixtures/centos-7.7/ifconfig.out","tests/fixtures/centos-7.7/iptables-filter-nv.out","tests/fixtures/centos-7.7/iptables-filter.out","tests/fixtures/centos-7.7/iptables-mangle.out","tests/fixtures/centos-7.7/iptables-nat.out","tests/fixtures/centos-7.7/iptables-raw.out","tests/fixtures/centos-7.7/jobs.out","tests/fixtures/centos-7.7/ls-al.out","tests/fixtures/centos-7.7/ls-alh.out","tests/fixtures/centos-7.7/ls.out","tests/fixtures/centos-7.7/lsblk.out","tests/fixtures/centos-7.7/lsmod.out","tests/fixtures/centos-7.7/lsof-sudo.out","tests/fixtures/centos-7.7/lsof.out","tests/fixtures/centos-7.7/mount.out","tests/fixtures/centos-7.7/netstat-l.out","tests/fixtures/centos-7.7/netstat-p.out","tests/fixtures/centos-7.7/netstat-sudo-lnp.out","tests/fixtures/centos-7.7/netstat.out","tests/fixtures/centos-7.7/ps-axu.out","tests/fixtures/centos-7.7/ps-ef.out","tests/fixtures/centos-7.7/route-vn.out","tests/fixtures/centos-7.7/route.out","tests/fixtures/centos-7.7/uname-a.out","tests/fixtures/centos-7.7/uptime.out","tests/fixtures/centos-7.7/w.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/df-h.out","tests/fixtures/ubuntu-18.04/df.out","tests/fixtures/ubuntu-18.04/env.out","tests/fixtures/ubuntu-18.04/free-h.out","tests/fixtures/ubuntu-18.04/free.out","tests/fixtures/ubuntu-18.04/history.out","tests/fixtures/ubuntu-18.04/ifconfig.out","tests/fixtures/ubuntu-18.04/iptables-filter-nv.out","tests/fixtures/ubuntu-18.04/iptables-filter.out","tests/fixtures/ubuntu-18.04/iptables-mangle.out","tests/fixtures/ubuntu-18.04/iptables-nat.out","tests/fixtures/ubuntu-18.04/iptables-raw.out","tests/fixtures/ubuntu-18.04/jobs.out","tests/fixtures/ubuntu-18.04/ls-al.out","tests/fixtures/ubuntu-18.04/ls-alh.out","tests/fixtures/ubuntu-18.04/ls.out","tests/fixtures/ubuntu-18.04/lsblk.out","tests/fixtures/ubuntu-18.04/lsmod.out","tests/fixtures/ubuntu-18.04/lsof-sudo.out","tests/fixtures/ubuntu-18.04/lsof.out","tests/fixtures/ubuntu-18.04/mount.out","tests/fixtures/ubuntu-18.04/netstat-l.out","tests/fixtures/ubuntu-18.04/netstat-p.out","tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.out","tests/fixtures/ubuntu-18.04/netstat.out","tests/fixtures/ubuntu-18.04/ps-axu.out","tests/fixtures/ubuntu-18.04/ps-ef.out","tests/fixtures/ubuntu-18.04/route-vn.out","tests/fixtures/ubuntu-18.04/route.out","tests/fixtures/ubuntu-18.04/uname-a.out","tests/fixtures/ubuntu-18.04/uptime.out","tests/fixtures/ubuntu-18.04/w.out","tests/test_df.py","tests/test_env.py","tests/test_free.py","tests/test_history.py","tests/test_ifconfig.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_ls.py","tests/test_lsblk.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py"],"file_stats":[{"name":"runtests.sh","lines_changed":3},{"name":"tests/__init__.py","lines_changed":0},{"name":"tests/fixtures/centos-7.7/df-h.out","lines_changed":8},{"name":"tests/fixtures/centos-7.7/df.out","lines_changed":8},{"name":"tests/fixtures/centos-7.7/env.out","lines_changed":24},{"name":"tests/fixtures/centos-7.7/free-h.out","lines_changed":3},{"name":"tests/fixtures/centos-7.7/free.out","lines_changed":3},{"name":"tests/fixtures/centos-7.7/history.out","lines_changed":1000},{"name":"tests/fixtures/centos-7.7/ifconfig.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/iptables-filter-nv.out","lines_changed":134},{"name":"tests/fixtures/centos-7.7/iptables-filter.out","lines_changed":134},{"name":"tests/fixtures/centos-7.7/iptables-mangle.out","lines_changed":59},{"name":"tests/fixtures/centos-7.7/iptables-nat.out","lines_changed":80},{"name":"tests/fixtures/centos-7.7/iptables-raw.out","lines_changed":38},{"name":"tests/fixtures/centos-7.7/jobs.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/ls-al.out","lines_changed":22},{"name":"tests/fixtures/centos-7.7/ls-alh.out","lines_changed":22},{"name":"tests/fixtures/centos-7.7/ls.out","lines_changed":19},{"name":"tests/fixtures/centos-7.7/lsblk.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/lsmod.out","lines_changed":99},{"name":"tests/fixtures/centos-7.7/lsof-sudo.out","lines_changed":3390},{"name":"tests/fixtures/centos-7.7/lsof.out","lines_changed":639},{"name":"tests/fixtures/centos-7.7/mount.out","lines_changed":31},{"name":"tests/fixtures/centos-7.7/netstat-l.out","lines_changed":45},{"name":"tests/fixtures/centos-7.7/netstat-p.out","lines_changed":121},{"name":"tests/fixtures/centos-7.7/netstat-sudo-lnp.out","lines_changed":45},{"name":"tests/fixtures/centos-7.7/netstat.out","lines_changed":123},{"name":"tests/fixtures/centos-7.7/ps-axu.out","lines_changed":110},{"name":"tests/fixtures/centos-7.7/ps-ef.out","lines_changed":110},{"name":"tests/fixtures/centos-7.7/route-vn.out","lines_changed":5},{"name":"tests/fixtures/centos-7.7/route.out","lines_changed":5},{"name":"tests/fixtures/centos-7.7/uname-a.out","lines_changed":1},{"name":"tests/fixtures/centos-7.7/uptime.out","lines_changed":1},{"name":"tests/fixtures/centos-7.7/w.out","lines_changed":4},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":48},{"name":"tests/fixtures/ubuntu-18.04/df-h.out","lines_changed":19},{"name":"tests/fixtures/ubuntu-18.04/df.out","lines_changed":19},{"name":"tests/fixtures/ubuntu-18.04/env.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-18.04/free-h.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/free.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/history.out","lines_changed":453},{"name":"tests/fixtures/ubuntu-18.04/ifconfig.out","lines_changed":18},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter-nv.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/iptables-mangle.out","lines_changed":14},{"name":"tests/fixtures/ubuntu-18.04/iptables-nat.out","lines_changed":11},{"name":"tests/fixtures/ubuntu-18.04/iptables-raw.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/jobs.out","lines_changed":4},{"name":"tests/fixtures/ubuntu-18.04/ls-al.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/ls-alh.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/ls.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-18.04/lsblk.out","lines_changed":18},{"name":"tests/fixtures/ubuntu-18.04/lsmod.out","lines_changed":102},{"name":"tests/fixtures/ubuntu-18.04/lsof-sudo.out","lines_changed":2854},{"name":"tests/fixtures/ubuntu-18.04/lsof.out","lines_changed":976},{"name":"tests/fixtures/ubuntu-18.04/mount.out","lines_changed":43},{"name":"tests/fixtures/ubuntu-18.04/netstat-l.out","lines_changed":32},{"name":"tests/fixtures/ubuntu-18.04/netstat-p.out","lines_changed":97},{"name":"tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.out","lines_changed":32},{"name":"tests/fixtures/ubuntu-18.04/netstat.out","lines_changed":97},{"name":"tests/fixtures/ubuntu-18.04/ps-axu.out","lines_changed":173},{"name":"tests/fixtures/ubuntu-18.04/ps-ef.out","lines_changed":173},{"name":"tests/fixtures/ubuntu-18.04/route-vn.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/route.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/uname-a.out","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/uptime.out","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/w.out","lines_changed":4},{"name":"tests/test_df.py","lines_changed":69},{"name":"tests/test_env.py","lines_changed":31},{"name":"tests/test_free.py","lines_changed":67},{"name":"tests/test_history.py","lines_changed":31},{"name":"tests/test_ifconfig.py","lines_changed":77},{"name":"tests/test_iptables.py","lines_changed":299},{"name":"tests/test_jobs.py","lines_changed":37},{"name":"tests/test_ls.py","lines_changed":92},{"name":"tests/test_lsblk.py","lines_changed":43},{"name":"tests/test_lsmod.py","lines_changed":40},{"name":"tests/test_lsof.py","lines_changed":85},{"name":"tests/test_mount.py","lines_changed":48},{"name":"tests/test_netstat.py","lines_changed":47}]},"message":"initial add of tests and fixtures","epoch":1572360926,"epoch_utc":null},{"commit":"579bef079cdd7cfa298bc20e052b8eb75b586f5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 07:54:59 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 29 07:54:59 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":3}]},"message":"move global output variable inside function","epoch":1572360899,"epoch_utc":null},{"commit":"0691cfcab3f5f91908e06ec906d57e548d4e7a1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 26 18:49:43 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 26 18:49:43 2019 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog fix","epoch":1572140983,"epoch_utc":null},{"commit":"db29c7c186601fd4596d3eb121b37100601af907","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 26 18:49:13 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Sat Oct 26 18:49:13 2019 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":4}]},"message":"documentation fixes","epoch":1572140953,"epoch_utc":null},{"commit":"fb1e03637514b5ab02fd4c5df1db8b3cbacdd531","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 20:27:03 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 20:27:03 2019 -0700","stats":{"files_changed":1,"insertions":14,"deletions":10,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":24}]},"message":"formatting","epoch":1572060423,"epoch_utc":null},{"commit":"c3eaf59836538f4ab4c745e87b70115b4a4c5421","merge":"ea0cf0a c9849ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 19:43:24 2019 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Oct 25 19:43:24 2019 -0700","message":"Merge pull request #5 from kellyjonbrazil/dev\n\nDev v1.0.1","epoch":1572057804,"epoch_utc":null},{"commit":"c9849ce0db1f864d33739f8f6f942bf5672bc3b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 19:41:35 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 19:41:35 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"changelog update","epoch":1572057695,"epoch_utc":null},{"commit":"d3c89a3092973a7a8765463fff41c2469ed675cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 19:27:02 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 19:27:02 2019 -0700","stats":{"files_changed":1,"insertions":11,"deletions":9,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":20}]},"message":"check for enough info to parse","epoch":1572056822,"epoch_utc":null},{"commit":"a3d43f27f7bb0835b3593b7c303fe0ee8d896a58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 18:25:33 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 18:25:33 2019 -0700","stats":{"files_changed":1,"insertions":12,"deletions":10,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":22}]},"message":"fix odd uptime text parsing","epoch":1572053133,"epoch_utc":null},{"commit":"f4d9c1b699fa30bd297a40ccf3d5f6e7ba3d4253","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 17:16:02 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 17:16:02 2019 -0700","stats":{"files_changed":1,"insertions":8,"deletions":4,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":12}]},"message":"fix uptime for minutes and hours long uptime","epoch":1572048962,"epoch_utc":null},{"commit":"de647bba4aff84f7b513cf7f6fec8d3933b0d9da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 16:14:32 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 16:14:32 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"documentation update","epoch":1572045272,"epoch_utc":null},{"commit":"d7913070315e5e0c89006942250aaf37e9e3e18e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 16:12:45 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 16:12:45 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"documentation update","epoch":1572045165,"epoch_utc":null},{"commit":"1a4fc204e21f1555ae67c3147322c8d73fab630b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 16:09:31 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 16:09:31 2019 -0700","stats":{"files_changed":2,"insertions":10,"deletions":1,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":10},{"name":"changelog.txt","lines_changed":1}]},"message":"Documentation update","epoch":1572044971,"epoch_utc":null},{"commit":"0328e14c7c65a330093faa52fe48dae6cb173e42","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 16:05:34 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 16:05:34 2019 -0700","stats":{"files_changed":1,"insertions":7,"deletions":0,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":7}]},"message":"handle ctrl-c gracefully","epoch":1572044734,"epoch_utc":null},{"commit":"1acc4d6c29d136e286f82d607c4a3a59e2680b68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 15:52:53 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 15:52:53 2019 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":4}]},"message":"fix uptime parsing for short uptimes","epoch":1572043973,"epoch_utc":null},{"commit":"27245590ce28be933f1a55db4ee6b24783f4b63d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 15:40:53 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 15:40:53 2019 -0700","stats":{"files_changed":1,"insertions":12,"deletions":20,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":32}]},"message":"remove integers","epoch":1572043253,"epoch_utc":null},{"commit":"7ca2a4bdb939293e8d7364f8901ad1fd6d3ee808","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 15:39:48 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 15:39:48 2019 -0700","stats":{"files_changed":5,"insertions":182,"deletions":201,"files":["README.md","changelog.txt","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":199},{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":95},{"name":"jc/parsers/netstat.py","lines_changed":84}]},"message":"remove integer values","epoch":1572043188,"epoch_utc":null},{"commit":"5f1ec6734874651bee595961edf1fafaf5acf001","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 14:58:15 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 14:58:15 2019 -0700","stats":{"files_changed":10,"insertions":473,"deletions":456,"files":["README.md","jc/parsers/df.py","jc/parsers/history.py","jc/parsers/iptables.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/w.py"],"file_stats":[{"name":"README.md","lines_changed":453},{"name":"jc/parsers/df.py","lines_changed":52},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":73},{"name":"jc/parsers/lsmod.py","lines_changed":61},{"name":"jc/parsers/lsof.py","lines_changed":113},{"name":"jc/parsers/ps.py","lines_changed":81},{"name":"jc/parsers/route.py","lines_changed":60},{"name":"jc/parsers/w.py","lines_changed":32}]},"message":"lower() headers","epoch":1572040695,"epoch_utc":null},{"commit":"7e44c4278a75c7223d99200023160e8d77fde54d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:55:38 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 10:55:38 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":2}]},"message":"formatting","epoch":1572026138,"epoch_utc":null},{"commit":"eda726c4a3864008e2f700374b679ae68a965ef8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:55:26 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 10:55:26 2019 -0700","stats":{"files_changed":1,"insertions":80,"deletions":1,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":81}]},"message":"documentation update","epoch":1572026126,"epoch_utc":null},{"commit":"5f8e70d73054f1a106c0e75eee621bc0cefd1c6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:55:09 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 10:55:09 2019 -0700","stats":{"files_changed":9,"insertions":20,"deletions":22,"files":["changelog.txt","jc/parsers/df.py","jc/parsers/free.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/w.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":8},{"name":"jc/parsers/lsmod.py","lines_changed":9},{"name":"jc/parsers/lsof.py","lines_changed":8},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":6}]},"message":"convert headers to lowercase","epoch":1572026109,"epoch_utc":null},{"commit":"25b90546c652cafa9409f02bae1654cb523add88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:39:05 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 10:39:05 2019 -0700","stats":{"files_changed":3,"insertions":14,"deletions":9,"files":["README.md","changelog.txt","jc/parsers/df.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":13}]},"message":"change 'Use%' to 'Use_percent'","epoch":1572025145,"epoch_utc":null},{"commit":"75c084153845757e22c149ea4ae7909d42ec7118","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:32:54 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 10:32:54 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"changelog update","epoch":1572024774,"epoch_utc":null},{"commit":"5b532b9b71fdb9de575da0af9b7989ac537877c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:31:03 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 10:31:03 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":5}]},"message":"minor cleanup","epoch":1572024663,"epoch_utc":null},{"commit":"8c7b3193d131411f8766508fc27b2a6589bba1f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:28:19 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 10:28:19 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":2}]},"message":"documentation change","epoch":1572024499,"epoch_utc":null},{"commit":"0897c96ef3c180a1707e8f56c545f59b3a4e0672","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:22:23 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 10:22:23 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":2}]},"message":"formatting","epoch":1572024143,"epoch_utc":null},{"commit":"57d0ab2ed7f444862546da17cbbe8f8ce67bca8c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:22:10 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 10:22:10 2019 -0700","stats":{"files_changed":2,"insertions":9,"deletions":4,"files":["README.md","jc/parsers/w.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"jc/parsers/w.py","lines_changed":9}]},"message":"change LOGIN@ to LOGIN_AT","epoch":1572024130,"epoch_utc":null},{"commit":"a07d9a0e4bb76d369b4a9bf0d77c7590dc3c2861","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:04:29 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 10:04:29 2019 -0700","stats":{"files_changed":2,"insertions":22,"deletions":13,"files":["README.md","jc/parsers/lsof.py"],"file_stats":[{"name":"README.md","lines_changed":10},{"name":"jc/parsers/lsof.py","lines_changed":25}]},"message":"change SIZE/OFF key to SIZE_OFF","epoch":1572023069,"epoch_utc":null},{"commit":"b3996cb4dfed908d71b292dc0b0136c6675351e6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 09:54:42 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 09:54:42 2019 -0700","stats":{"files_changed":2,"insertions":14,"deletions":10,"files":["README.md","jc/parsers/lsblk.py"],"file_stats":[{"name":"README.md","lines_changed":10},{"name":"jc/parsers/lsblk.py","lines_changed":14}]},"message":"change MAJ:MIN key to MAJ_MIN","epoch":1572022482,"epoch_utc":null},{"commit":"4fa88c1ba38b34f9750625458c465d66f6531bc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 09:53:44 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 09:53:44 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":3}]},"message":"clear out non-ascii chars from data","epoch":1572022424,"epoch_utc":null},{"commit":"c8c5564b29588094721949b96bff1e623437835d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 09:46:03 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 25 09:46:03 2019 -0700","stats":{"files_changed":2,"insertions":6,"deletions":3,"files":["README.md","jc/parsers/free.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":7}]},"message":"change buff/cache key to buff_cache","epoch":1572021963,"epoch_utc":null},{"commit":"6d047486d9f577bc04d79af839f5eef9657a9d43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:53:56 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 24 17:53:56 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"doc fix","epoch":1571964836,"epoch_utc":null},{"commit":"42bdc058141c4a3ac6f2c8211f9c990590b1b5cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:41:51 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 24 17:41:51 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"changelog fix","epoch":1571964111,"epoch_utc":null},{"commit":"85bfb688862e78d5879df6973b88ba8023fa6086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:33:42 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 24 17:33:42 2019 -0700","stats":{"files_changed":2,"insertions":15,"deletions":10,"files":["README.md","jc/parsers/history.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"jc/parsers/history.py","lines_changed":17}]},"message":"history parser fixes","epoch":1571963622,"epoch_utc":null},{"commit":"08ec21556b553cd7e64932d68e01ba8ff3b0f210","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:12:27 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 24 17:12:27 2019 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/w.py","lines_changed":1}]},"message":"formatting","epoch":1571962347,"epoch_utc":null},{"commit":"320929bf2595026d32b80b80c3e4878db9cf083f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:11:17 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 24 17:11:17 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/env.py"],"file_stats":[{"name":"jc/parsers/env.py","lines_changed":2}]},"message":"documentation update","epoch":1571962277,"epoch_utc":null},{"commit":"41cd489c34502c42602bf64086670ba3b2b8e14b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:09:32 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 24 17:09:32 2019 -0700","stats":{"files_changed":5,"insertions":126,"deletions":0,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/history.py","jc/parsers/uptime.py"],"file_stats":[{"name":"README.md","lines_changed":46},{"name":"changelog.txt","lines_changed":3},{"name":"jc/jc.py","lines_changed":10},{"name":"jc/parsers/history.py","lines_changed":32},{"name":"jc/parsers/uptime.py","lines_changed":35}]},"message":"add history and uptime parsers","epoch":1571962172,"epoch_utc":null},{"commit":"f101d881a16e662e883818749d48e96858fba853","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 16:06:55 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 24 16:06:55 2019 -0700","stats":{"files_changed":4,"insertions":78,"deletions":3,"files":["README.md","jc/jc.py","jc/parsers/w.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":27},{"name":"jc/jc.py","lines_changed":9},{"name":"jc/parsers/w.py","lines_changed":43},{"name":"setup.py","lines_changed":2}]},"message":"add w parser","epoch":1571958415,"epoch_utc":null},{"commit":"fa7466022bb8947c1bbf9f7b01aa4d92300a8992","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 15:54:31 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 24 15:54:31 2019 -0700","stats":{"files_changed":3,"insertions":28,"deletions":56,"files":["README.md","changelog.txt","jc/parsers/env.py"],"file_stats":[{"name":"README.md","lines_changed":37},{"name":"changelog.txt","lines_changed":3},{"name":"jc/parsers/env.py","lines_changed":44}]},"message":"fix env parser","epoch":1571957671,"epoch_utc":null},{"commit":"ea0cf0acf22585fbf8828841cf50155636eae82f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 09:48:35 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 24 09:48:35 2019 -0700","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":3}]},"message":"documentation update","epoch":1571935715,"epoch_utc":null},{"commit":"e7921b65f5a250c10b08f78939f74968047af430","merge":"393e8bc 2cc1b1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 18:41:55 2019 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Wed Oct 23 18:41:55 2019 -0700","message":"Merge pull request #4 from kellyjonbrazil/dev\n\nDev v0.9.1","epoch":1571881315,"epoch_utc":null},{"commit":"2cc1b1bd5451f31d71b0e2236bdee0ce2b25b5d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 18:39:24 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 18:39:24 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"version bump","epoch":1571881164,"epoch_utc":null},{"commit":"58ae976db0165730a75dd7450c698d2727a354ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 18:30:55 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 18:30:55 2019 -0700","stats":{"files_changed":3,"insertions":113,"deletions":4,"files":["README.md","jc/parsers/lsmod.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":55},{"name":"jc/parsers/lsmod.py","lines_changed":60},{"name":"setup.py","lines_changed":2}]},"message":"documentation update","epoch":1571880655,"epoch_utc":null},{"commit":"66772392ae78ef394e22070b127416b1d5b01332","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 18:04:54 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 18:04:54 2019 -0700","stats":{"files_changed":3,"insertions":32,"deletions":0,"files":["changelog.txt","jc/jc.py","jc/parsers/lsmod.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/lsmod.py","lines_changed":26}]},"message":"add lsmod parser","epoch":1571879094,"epoch_utc":null},{"commit":"29c47c03a64f9c6b0f44d34be5449396654849b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 17:37:25 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 17:37:25 2019 -0700","stats":{"files_changed":3,"insertions":134,"deletions":2,"files":["README.md","changelog.txt","jc/parsers/lsof.py"],"file_stats":[{"name":"README.md","lines_changed":68},{"name":"changelog.txt","lines_changed":3},{"name":"jc/parsers/lsof.py","lines_changed":65}]},"message":"documentation update","epoch":1571877445,"epoch_utc":null},{"commit":"91eb9a4d13e9254bd5bbde931196904c1947a28e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 17:27:23 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 17:27:23 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":4}]},"message":"use None instead of --","epoch":1571876843,"epoch_utc":null},{"commit":"a1a3de32ec14d6ef433e334b9694856698c26d41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 17:22:25 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 17:22:25 2019 -0700","stats":{"files_changed":2,"insertions":59,"deletions":0,"files":["jc/jc.py","jc/parsers/lsof.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/lsof.py","lines_changed":54}]},"message":"add lsof parser","epoch":1571876545,"epoch_utc":null},{"commit":"9c47fd05bf716c2e18ebf4da41b1a46b972b2518","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 14:11:13 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 14:11:13 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":2}]},"message":"doco fix","epoch":1571865073,"epoch_utc":null},{"commit":"649c0aa7c157f87691cc8eeac64c747e81f63594","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 14:10:10 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 14:10:10 2019 -0700","stats":{"files_changed":2,"insertions":76,"deletions":1,"files":["README.md","jc/parsers/jobs.py"],"file_stats":[{"name":"README.md","lines_changed":39},{"name":"jc/parsers/jobs.py","lines_changed":38}]},"message":"add documentation","epoch":1571865010,"epoch_utc":null},{"commit":"3db758764e50666e5ae40de8d89180de2ef5bc28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 14:05:47 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 14:05:47 2019 -0700","stats":{"files_changed":3,"insertions":83,"deletions":0,"files":["changelog.txt","jc/jc.py","jc/parsers/jobs.py"],"file_stats":[{"name":"changelog.txt","lines_changed":6},{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":72}]},"message":"add jobs parser","epoch":1571864747,"epoch_utc":null},{"commit":"802f1510eb6d621f9c760f28b83f16a4781b8d93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 10:27:05 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 10:27:05 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":2}]},"message":"tighten if statements","epoch":1571851625,"epoch_utc":null},{"commit":"56901788dee154890e70269ad48d4b22bb8c5437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 09:51:29 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 09:51:29 2019 -0700","stats":{"files_changed":1,"insertions":30,"deletions":19,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":49}]},"message":"stop blocking when no pipe and enhance help text","epoch":1571849489,"epoch_utc":null},{"commit":"679ae6d5dc7af26240dc00d8bc6499950f81d457","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 09:20:11 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 09:20:11 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1571847611,"epoch_utc":null},{"commit":"b15c8c352a87a9b3b1dece28af0287ef71ca02d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 08:46:54 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 23 08:46:54 2019 -0700","stats":{"files_changed":1,"insertions":14,"deletions":16,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":30}]},"message":"simplify state variables","epoch":1571845614,"epoch_utc":null},{"commit":"393e8bc56041a4be01b6c0b2f98895aa330afd04","merge":"e3750b4 976fd7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 17:26:40 2019 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Oct 22 17:26:40 2019 -0700","message":"Merge pull request #3 from kellyjonbrazil/dev\n\nDev v0.8.1","epoch":1571790400,"epoch_utc":null},{"commit":"976fd7d9bd49190a8b28ea5acf5af8979cdec537","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 17:24:56 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 17:24:56 2019 -0700","stats":{"files_changed":1,"insertions":27,"deletions":28,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":55}]},"message":"readme update","epoch":1571790296,"epoch_utc":null},{"commit":"d8337870cad042cdcc6a4ff3c61f756c3430fa96","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 17:21:00 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 17:21:00 2019 -0700","stats":{"files_changed":1,"insertions":27,"deletions":28,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":55}]},"message":"update documentation","epoch":1571790060,"epoch_utc":null},{"commit":"39a8aec77f5134b5b958e3f679910a1c3512e13a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 17:15:02 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 17:15:02 2019 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/parsers/ls.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"v0.8.1 build","epoch":1571789702,"epoch_utc":null},{"commit":"306d539b6bbfb272c7b955e4847adc3a6b4afa5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 16:50:01 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 16:50:01 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"readme update","epoch":1571788201,"epoch_utc":null},{"commit":"f3087b8a8ede88834285bb5d0655fc96341c174c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 16:40:27 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 16:40:27 2019 -0700","stats":{"files_changed":3,"insertions":635,"deletions":1,"files":["README.md","changelog.txt","jc/parsers/iptables.py"],"file_stats":[{"name":"README.md","lines_changed":319},{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/iptables.py","lines_changed":316}]},"message":"update readme and formatting","epoch":1571787627,"epoch_utc":null},{"commit":"414c2ecef88af2d2c098e6acfb507a5fd7bb8eda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 16:32:55 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 16:32:55 2019 -0700","stats":{"files_changed":1,"insertions":6,"deletions":10,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":16}]},"message":"fix iptables parser","epoch":1571787175,"epoch_utc":null},{"commit":"776ef2d1be81180b8b295fbc587446a326f2f7a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 15:42:29 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 15:42:29 2019 -0700","stats":{"files_changed":2,"insertions":61,"deletions":0,"files":["jc/jc.py","jc/parsers/iptables.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/iptables.py","lines_changed":56}]},"message":"add iptables parser","epoch":1571784149,"epoch_utc":null},{"commit":"9ac57469967443b195be09d580beaa76ce0e1095","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 13:28:15 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 13:28:15 2019 -0700","stats":{"files_changed":4,"insertions":64,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/uname.py"],"file_stats":[{"name":"README.md","lines_changed":15},{"name":"changelog.txt","lines_changed":1},{"name":"jc/jc.py","lines_changed":7},{"name":"jc/parsers/uname.py","lines_changed":42}]},"message":"add uname parser","epoch":1571776095,"epoch_utc":null},{"commit":"a3e55d97c0fd4397b42e9146afb0ba9558274fdb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 12:54:41 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 12:54:41 2019 -0700","stats":{"files_changed":4,"insertions":127,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/mount.py"],"file_stats":[{"name":"README.md","lines_changed":45},{"name":"changelog.txt","lines_changed":1},{"name":"jc/jc.py","lines_changed":7},{"name":"jc/parsers/mount.py","lines_changed":75}]},"message":"add mount parser","epoch":1571774081,"epoch_utc":null},{"commit":"b15227e7ba5377e5fb6799d1b9e4ed5a11c6d92f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:55:11 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 11:55:11 2019 -0700","stats":{"files_changed":4,"insertions":125,"deletions":0,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/lsblk.py"],"file_stats":[{"name":"README.md","lines_changed":49},{"name":"changelog.txt","lines_changed":1},{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/lsblk.py","lines_changed":70}]},"message":"add lsblk parser","epoch":1571770511,"epoch_utc":null},{"commit":"ec3d1f84ceccb492b4c968938714fafa2e6a6321","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:26:58 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 11:26:58 2019 -0700","stats":{"files_changed":1,"insertions":24,"deletions":2,"files":["jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/free.py","lines_changed":26}]},"message":"fix free parser","epoch":1571768818,"epoch_utc":null},{"commit":"753d5fd9fe5a8e4b67b1a0ec018a9f811e27f8bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:17:21 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 11:17:21 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"readme update","epoch":1571768241,"epoch_utc":null},{"commit":"73a0d70c9294ad392792e690a7bfbcc4f51b0a5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:15:44 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 11:15:44 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"readme update","epoch":1571768144,"epoch_utc":null},{"commit":"c2c189f3e6e900e5f3d35df9a9b9d033448baff6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:14:19 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 11:14:19 2019 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":5}]},"message":"readme update","epoch":1571768059,"epoch_utc":null},{"commit":"36bc55a3109278d663b675a09829200f5474c3d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:11:41 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 11:11:41 2019 -0700","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"fix df","epoch":1571767901,"epoch_utc":null},{"commit":"a023001cd350e320ce30f47af214ed7a9bb43185","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:10:11 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 11:10:11 2019 -0700","stats":{"files_changed":6,"insertions":226,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/df.py","jc/parsers/env.py","jc/parsers/free.py"],"file_stats":[{"name":"README.md","lines_changed":73},{"name":"changelog.txt","lines_changed":5},{"name":"jc/jc.py","lines_changed":17},{"name":"jc/parsers/df.py","lines_changed":56},{"name":"jc/parsers/env.py","lines_changed":53},{"name":"jc/parsers/free.py","lines_changed":23}]},"message":"add df, env, and free parsers","epoch":1571767811,"epoch_utc":null},{"commit":"e3750b49628794fd4d563013b1f3a7471c27ce68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 07:40:42 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 22 07:40:42 2019 -0700","stats":{"files_changed":2,"insertions":83,"deletions":51,"files":["README.md","jc/__init__.py"],"file_stats":[{"name":"README.md","lines_changed":30},{"name":"jc/__init__.py","lines_changed":104}]},"message":"documentation enhancements","epoch":1571755242,"epoch_utc":null},{"commit":"b5ea08e55bfd22c9da5ba73c124791012df119a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 18:22:51 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 18:22:51 2019 -0700","stats":{"files_changed":4,"insertions":20,"deletions":20,"files":["README.md","changelog.txt","jc/parsers/netstat.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":16},{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":20},{"name":"setup.py","lines_changed":2}]},"message":"fix transport protocol","epoch":1571707371,"epoch_utc":null},{"commit":"8e71b8e3522b9b1af4d869a0854223eb5c300b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 18:11:51 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 18:11:51 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"fix jq example","epoch":1571706711,"epoch_utc":null},{"commit":"4c8610c54ff4b643237d8f0e4c5781c277fc39f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:59:32 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 17:59:32 2019 -0700","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"setup.py","lines_changed":2}]},"message":"fixed build","epoch":1571705972,"epoch_utc":null},{"commit":"c8f886dc8fcdc58f8471d68c3d583200d0ea2f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:56:53 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 17:56:53 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":2}]},"message":"fix example","epoch":1571705813,"epoch_utc":null},{"commit":"4cfc2d22b3f9fd6f0cde8ad206edd7fe260b3071","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:38:40 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 17:38:40 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"update changelog","epoch":1571704720,"epoch_utc":null},{"commit":"59238c85408117748e78c5e87157381a828f3782","merge":"d54d906 30080c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:36:33 2019 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Mon Oct 21 17:36:33 2019 -0700","message":"Merge pull request #2 from kellyjonbrazil/dev\n\nDev v0.6.2","epoch":1571704593,"epoch_utc":null},{"commit":"30080c01659cf611666876b7b063b7b329822352","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:26:00 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 17:26:00 2019 -0700","stats":{"files_changed":1,"insertions":35,"deletions":35,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":70}]},"message":"reorder parsers","epoch":1571703960,"epoch_utc":null},{"commit":"fab80bb3b4a1897da29d818e98e9b80ce45443dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:20:12 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 17:20:12 2019 -0700","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["README.md","setup.py"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"setup.py","lines_changed":2}]},"message":"readme update","epoch":1571703612,"epoch_utc":null},{"commit":"a9f2df805421754afb8e8adbcac7f2d3bd06c9ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 14:27:26 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 14:27:26 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":3}]},"message":"move parsed_line var lower","epoch":1571693246,"epoch_utc":null},{"commit":"1d110be6cb25d169ae0dde6532cbcdf05d93d42f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 14:13:31 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 14:13:31 2019 -0700","stats":{"files_changed":3,"insertions":13,"deletions":1,"files":["README.md","changelog.txt","setup.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"changelog.txt","lines_changed":4},{"name":"setup.py","lines_changed":2}]},"message":"update doco","epoch":1571692411,"epoch_utc":null},{"commit":"be81b5e1ed93eb65e5dbed4f52905439cde86f62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 13:47:22 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 13:47:22 2019 -0700","stats":{"files_changed":1,"insertions":112,"deletions":121,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":233}]},"message":"readme update","epoch":1571690842,"epoch_utc":null},{"commit":"5f88f7d8a071306be92cbfb65d6d62c5a68159f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 13:41:53 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 13:41:53 2019 -0700","stats":{"files_changed":1,"insertions":110,"deletions":137,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":247}]},"message":"netstat cleanup","epoch":1571690513,"epoch_utc":null},{"commit":"e57c7cc8ef3102cc41dee4ea5fd33d40ba666491","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 13:23:29 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 13:23:29 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":2}]},"message":"change output from dict to list","epoch":1571689409,"epoch_utc":null},{"commit":"b216627c1073ea645029e341b4d3376601e5468e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 13:19:00 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 13:19:00 2019 -0700","stats":{"files_changed":1,"insertions":19,"deletions":116,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":135}]},"message":"flatten netstat output","epoch":1571689140,"epoch_utc":null},{"commit":"6e925eab131024b5746d870cbd47e2791acf18bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 13:07:30 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Mon Oct 21 13:07:30 2019 -0700","stats":{"files_changed":1,"insertions":27,"deletions":18,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":45}]},"message":"clean up arg parsing","epoch":1571688450,"epoch_utc":null},{"commit":"d54d906c571b4683f01cab2eca63ae5f0725a87b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 19:03:11 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 19:03:11 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update readme","epoch":1571450591,"epoch_utc":null},{"commit":"0040febbf099ed8ab35f6ee343750fcf89f2e739","merge":"8073d15 e416c77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 18:57:32 2019 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Fri Oct 18 18:57:32 2019 -0700","message":"Merge pull request #1 from kellyjonbrazil/dev\n\nDev v0.5.5","epoch":1571450252,"epoch_utc":null},{"commit":"e416c77bed1267254da972b0f95b7ff1d43fccef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 18:56:26 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 18:56:26 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"version bump","epoch":1571450186,"epoch_utc":null},{"commit":"9181d242aaed5219bb35fde01d672be88949cceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 18:47:20 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 18:47:20 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"bump version","epoch":1571449640,"epoch_utc":null},{"commit":"d6f94c53a4df84fb75554605477e49536a809dc2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 18:46:25 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 18:46:25 2019 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"fix blank output case in ls","epoch":1571449585,"epoch_utc":null},{"commit":"a9294f32a00709737d0b82ff434a311e75ad0bed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 18:40:56 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 18:40:56 2019 -0700","stats":{"files_changed":3,"insertions":39,"deletions":42,"files":["changelog.txt","jc/parsers/ls.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":7},{"name":"jc/parsers/ls.py","lines_changed":72},{"name":"setup.py","lines_changed":2}]},"message":"ls fixes","epoch":1571449256,"epoch_utc":null},{"commit":"4d93b38fe47329e3175025878e87f7c963061f98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 14:18:34 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 14:18:34 2019 -0700","stats":{"files_changed":2,"insertions":90,"deletions":1,"files":["README.md","jc/parsers/route.py"],"file_stats":[{"name":"README.md","lines_changed":47},{"name":"jc/parsers/route.py","lines_changed":44}]},"message":"add route documentation","epoch":1571433514,"epoch_utc":null},{"commit":"77b74c550795f96b808e48a9b0bfd1a8af9866f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:59:30 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 13:59:30 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"add route parser","epoch":1571432370,"epoch_utc":null},{"commit":"51a1d3e6f48cf7084267be4092f0dd3f778dcef3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:51:36 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 13:51:36 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1571431896,"epoch_utc":null},{"commit":"2eba30422b44f648c7356a44cbff7416c6648f19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:43:49 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 13:43:49 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":2}]},"message":"skip first line","epoch":1571431429,"epoch_utc":null},{"commit":"43ed09ce5ba53261dfd7ef50a2e187cb524c416c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:38:11 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 13:38:11 2019 -0700","stats":{"files_changed":3,"insertions":25,"deletions":1,"files":["jc/jc.py","jc/parsers/route.py","setup.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":3},{"name":"jc/parsers/route.py","lines_changed":21},{"name":"setup.py","lines_changed":2}]},"message":"add route parser","epoch":1571431091,"epoch_utc":null},{"commit":"367ab54f94bf7f456377ec9d20f8daf99dbdc1ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:34:28 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 13:34:28 2019 -0700","stats":{"files_changed":3,"insertions":99,"deletions":2,"files":["README.md","changelog.txt","jc/parsers/ps.py"],"file_stats":[{"name":"README.md","lines_changed":53},{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":46}]},"message":"formatting","epoch":1571430868,"epoch_utc":null},{"commit":"4f552e370e656cc1882a7dae231475a016f8aa14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:26:24 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 13:26:24 2019 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":4}]},"message":"acknowledgment","epoch":1571430384,"epoch_utc":null},{"commit":"7571139f7980f6e74c29d46971881e82ab0f04bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:20:38 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 13:20:38 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"bump version","epoch":1571430038,"epoch_utc":null},{"commit":"8ec1bec31711d2ef487da3e4a29a842d98d77626","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:19:39 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 13:19:39 2019 -0700","stats":{"files_changed":4,"insertions":29,"deletions":7,"files":["changelog.txt","jc/__init__.py","jc/jc.py","jc/parsers/ps.py"],"file_stats":[{"name":"changelog.txt","lines_changed":10},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/jc.py","lines_changed":3},{"name":"jc/parsers/ps.py","lines_changed":21}]},"message":"add ps parser","epoch":1571429979,"epoch_utc":null},{"commit":"c04895407f203aa0a3a080d5242faf8f6889ae41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 12:57:02 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 12:57:02 2019 -0700","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["changelog.txt","jc/parsers/netstat.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":9}]},"message":"ubuntu fixes","epoch":1571428622,"epoch_utc":null},{"commit":"cec73d61310591e4890605f61dc5c1bef5808ec4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 09:57:22 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 09:57:22 2019 -0700","stats":{"files_changed":4,"insertions":24,"deletions":16,"files":["jc/jc.py","jc/parsers/ifconfig.py","jc/parsers/ls.py","jc/parsers/netstat.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":7},{"name":"jc/parsers/ifconfig.py","lines_changed":7},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"jc/parsers/netstat.py","lines_changed":23}]},"message":"linting","epoch":1571417842,"epoch_utc":null},{"commit":"756c2bc9acd60111281b76085a40778e51ca06cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 09:57:10 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Fri Oct 18 09:57:10 2019 -0700","stats":{"files_changed":1,"insertions":20,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":23}]},"message":"add acknowledgments","epoch":1571417830,"epoch_utc":null},{"commit":"084048987c7afc6516f69e68d37d73b2402dc7f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 17:59:46 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 17:59:46 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"changelog update","epoch":1571360386,"epoch_utc":null},{"commit":"02d97394dd76a8782e6e7d3f8a85e1aed05e796b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 17:28:14 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 17:28:14 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update","epoch":1571358494,"epoch_utc":null},{"commit":"177f948f9740e3e33449b04b9136a346c9a2c265","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 16:11:55 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 16:11:55 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version update","epoch":1571353915,"epoch_utc":null},{"commit":"c2b013150ec1f1b1ab7d416f1aa8a62165a5bb95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 15:51:39 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 15:51:39 2019 -0700","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":9}]},"message":"add changelog","epoch":1571352699,"epoch_utc":null},{"commit":"0bec67c29ce5d965271440da41a0c4b4c2a1f0fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 15:39:12 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 15:39:12 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":4}]},"message":"double quotes to single quotes","epoch":1571351952,"epoch_utc":null},{"commit":"8073d15fe11546a17cacd81409e255bb8aecd602","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 15:03:32 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 15:03:32 2019 -0700","stats":{"files_changed":1,"insertions":12,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":16}]},"message":"readme update","epoch":1571349812,"epoch_utc":null},{"commit":"3b74afc39e58f801e75b7105e521c1469d30f991","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 15:00:42 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 15:00:42 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["pypi-upload.sh"],"file_stats":[{"name":"pypi-upload.sh","lines_changed":2}]},"message":"upload script","epoch":1571349642,"epoch_utc":null},{"commit":"ed320cf0f4bb11cee1e69e9dc9176ba109df1b86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 13:04:34 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 13:04:34 2019 -0700","stats":{"files_changed":3,"insertions":22,"deletions":22,"files":["README.md","jc/parsers/netstat.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":20},{"name":"jc/parsers/netstat.py","lines_changed":22},{"name":"setup.py","lines_changed":2}]},"message":"change netstat pid field to integer","epoch":1571342674,"epoch_utc":null},{"commit":"021b6924e24e1cf0f971246244b174cd3181c0a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 12:15:27 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 12:15:27 2019 -0700","stats":{"files_changed":2,"insertions":254,"deletions":5,"files":["README.md","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":124},{"name":"jc/parsers/netstat.py","lines_changed":135}]},"message":"documentation updates","epoch":1571339727,"epoch_utc":null},{"commit":"5fb21b077662f1cb172741945ba5036e5a280638","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 12:09:05 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 12:09:05 2019 -0700","stats":{"files_changed":1,"insertions":0,"deletions":8,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":8}]},"message":"remove debug print statements","epoch":1571339345,"epoch_utc":null},{"commit":"7b8540ae2a60f2400fe672a022ee00d1415a3500","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 12:07:01 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 12:07:01 2019 -0700","stats":{"files_changed":1,"insertions":19,"deletions":7,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":26}]},"message":"netstat fixes","epoch":1571339221,"epoch_utc":null},{"commit":"a5e039d4c2e07d52a0797833685c562ab285b49b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 10:54:37 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 10:54:37 2019 -0700","stats":{"files_changed":1,"insertions":17,"deletions":7,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":24}]},"message":"netstat debugging","epoch":1571334877,"epoch_utc":null},{"commit":"7071f60a302b7aefb8fb312699b0abec25548986","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 09:05:49 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 09:05:49 2019 -0700","stats":{"files_changed":1,"insertions":66,"deletions":18,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":84}]},"message":"netstat mvp","epoch":1571328349,"epoch_utc":null},{"commit":"0de1dff0253eb46b7336103f62f888940406ccc0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 08:09:19 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 08:09:19 2019 -0700","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":48}]},"message":"fix ands","epoch":1571324959,"epoch_utc":null},{"commit":"b3c52eb1ccf82e899dda62c332c0b217d80eb4c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 08:03:56 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Thu Oct 17 08:03:56 2019 -0700","stats":{"files_changed":2,"insertions":112,"deletions":40,"files":["jc/parsers/ifconfig.py","jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":150}]},"message":"add netstat parser","epoch":1571324636,"epoch_utc":null},{"commit":"366c5dbc010869bdb1d3b9d852e10510bd5c266f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 17:36:50 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 17:36:50 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":4}]},"message":"fix help message","epoch":1571272610,"epoch_utc":null},{"commit":"a3ee02514b5fbd43a38ddf515a4aad49bb4e161a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 17:23:18 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 17:23:18 2019 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":12}]},"message":"fix imports and module names","epoch":1571271798,"epoch_utc":null},{"commit":"46ad1269cb58dc6f064d17eb0b04da62d8fd5fce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 17:15:43 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 17:15:43 2019 -0700","stats":{"files_changed":2,"insertions":4,"deletions":3,"files":["jc/jc.py","setup.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":6},{"name":"setup.py","lines_changed":1}]},"message":"packaging fixes","epoch":1571271343,"epoch_utc":null},{"commit":"7234afe568818678585ac423649a0ccce0f45d68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 16:22:52 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 16:22:52 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"entrypoint fix","epoch":1571268172,"epoch_utc":null},{"commit":"caf480c63aacb518805d48fba0fd454959d11023","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 16:01:34 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 16:01:34 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"module fix","epoch":1571266894,"epoch_utc":null},{"commit":"62851b48d5e5cd673e630a28996e1c24cc45aa58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 15:54:20 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 15:54:20 2019 -0700","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/jc.py","setup.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":12},{"name":"setup.py","lines_changed":2}]},"message":"fix modules","epoch":1571266460,"epoch_utc":null},{"commit":"46d6da92f0e196e150ab9dd44b1ba290c950905b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 15:08:06 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 15:08:06 2019 -0700","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["jc/{jc => jc.py}","setup.py"],"file_stats":[{"name":"jc/{jc => jc.py}","lines_changed":0},{"name":"setup.py","lines_changed":2}]},"message":"fix entry_points","epoch":1571263686,"epoch_utc":null},{"commit":"e572b2edfa993c5049ef3caeda7a8e4797f0c751","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 15:03:34 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 15:03:34 2019 -0700","stats":{"files_changed":2,"insertions":37,"deletions":29,"files":["jc/jc","setup.py"],"file_stats":[{"name":"jc/jc","lines_changed":58},{"name":"setup.py","lines_changed":8}]},"message":"use entry_points instead of scripts","epoch":1571263414,"epoch_utc":null},{"commit":"72c69e7de59029d623c9819dda6aa8cae91bc419","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 09:39:04 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 09:39:04 2019 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/jc"],"file_stats":[{"name":"jc/jc","lines_changed":12}]},"message":"fix package paths","epoch":1571243944,"epoch_utc":null},{"commit":"4d1565071e5cf7c38e026e08db8f4d2e79969691","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 09:03:05 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 09:03:05 2019 -0700","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["jc/{jc.py => jc}","setup.py"],"file_stats":[{"name":"jc/{jc.py => jc}","lines_changed":0},{"name":"setup.py","lines_changed":2}]},"message":"rename jc.py to jc","epoch":1571241785,"epoch_utc":null},{"commit":"3652e51693d7ba829f4699fd80de20856941d82f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 08:27:24 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Wed Oct 16 08:27:24 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"fix requirements","epoch":1571239644,"epoch_utc":null},{"commit":"49ce9f13e817266659400a8c19f5b078a48589df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 15 18:03:51 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 15 18:03:51 2019 -0700","stats":{"files_changed":3,"insertions":17,"deletions":20,"files":["jc/jc.py","jc/parsers/__init__.py","setup.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/__init__.py","lines_changed":5},{"name":"setup.py","lines_changed":27}]},"message":"setup updates","epoch":1571187831,"epoch_utc":null},{"commit":"e83170b7ec7ed2123bfde69be263b6034c7afa53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 15 16:28:42 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 15 16:28:42 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"readme update","epoch":1571182122,"epoch_utc":null},{"commit":"ffb6eb754a87baad5fb0558e30a5bca1a9b9e0a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 15 16:10:24 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 15 16:10:24 2019 -0700","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/parsers/__init__.py","setup.py"],"file_stats":[{"name":"jc/parsers/__init__.py","lines_changed":8},{"name":"setup.py","lines_changed":6}]},"message":"setup fixes","epoch":1571181024,"epoch_utc":null},{"commit":"2597a18d95d01109d2250487b7550a501edaf77b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 15 15:32:23 2019 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Tue Oct 15 15:32:23 2019 -0700","stats":{"files_changed":1,"insertions":82,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":82}]},"message":"readme update","epoch":1571178743,"epoch_utc":null},{"commit":"3e576250b1bfe1c62c556f2fa0425103b0ede1f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 15 15:06:09 2019 -0700","commit_by":"Kelly Brazil","commit_by_email":"kellyjonbrazil@gmail.com","commit_by_date":"Tue Oct 15 15:06:09 2019 -0700","stats":{"files_changed":11,"insertions":429,"deletions":0,"files":[".gitignore","LICENSE.md","README.md","build-package.sh","jc/__init__.py","jc/jc.py","jc/parsers/__init__.py","jc/parsers/ifconfig.py","jc/parsers/ls.py","jc/parsers/netstat.py","setup.py"],"file_stats":[{"name":".gitignore","lines_changed":6},{"name":"LICENSE.md","lines_changed":21},{"name":"README.md","lines_changed":53},{"name":"build-package.sh","lines_changed":5},{"name":"jc/__init__.py","lines_changed":61},{"name":"jc/jc.py","lines_changed":38},{"name":"jc/parsers/__init__.py","lines_changed":3},{"name":"jc/parsers/ifconfig.py","lines_changed":30},{"name":"jc/parsers/ls.py","lines_changed":130},{"name":"jc/parsers/netstat.py","lines_changed":55},{"name":"setup.py","lines_changed":27}]},"message":"First commit","epoch":1571177169,"epoch_utc":null}] diff --git a/tests/fixtures/generic/git-log-hash-in-message-fix-streaming.json b/tests/fixtures/generic/git-log-hash-in-message-fix-streaming.json index 64ce338e..29a75684 100644 --- a/tests/fixtures/generic/git-log-hash-in-message-fix-streaming.json +++ b/tests/fixtures/generic/git-log-hash-in-message-fix-streaming.json @@ -1 +1 @@ -[{"commit":"e05824a36ca62aa9f3a21854ec8b40a3e0f7a68d","author":"Benedikt Heine","author_email":"bebe@bebehei.de","date":"Mon Oct 28 12:42:22 2019 +0100","commit_by":"Benedikt Heine","commit_by_email":"bebe@bebehei.de","commit_by_date":"Sun Apr 12 17:27:16 2020 +0200","stats":{"files_changed":1,"insertions":13,"deletions":3,"files":["salt/modules/monit.py"]},"message":"Split monit status fields on monit version\n\nWith the commit [0] on monit, the field size changed. So splitting hard\nafter 35 chars, new versions of monit break when using monit.status.\n\n[0] https://bitbucket.org/tildeslash/monit/commits/\n471c4bbc388c1c536f07ce1dd26b811bd39a9467","epoch":1572291742,"epoch_utc":null},{"commit":"910a2ac4809bb05b886adfe75f4857eb53fdfbb1","merge":"6c3964ce30 f0a1e923e3","author":"Daniel Wozniak","author_email":"dwozniak@saltstack.com","date":"Sun Apr 12 00:09:37 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Apr 12 00:09:37 2020 -0700","message":"Merge pull request #53911 from terminalmage/squelch-log\n\nalternatives: Don't log error when running \"alternatives --display\" on nonexistant target","epoch":1586675377,"epoch_utc":null},{"commit":"6c3964ce30929e749c0965bc0d60527e9fe8dbb1","merge":"3026c25faf 2ac4da54e3","author":"Daniel Wozniak","author_email":"dwozniak@saltstack.com","date":"Sun Apr 12 00:09:16 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Apr 12 00:09:16 2020 -0700","message":"Merge pull request #54199 from driskell/patch-2\n\nFix broken sdb.get_or_set_hash for Hashicorp Vault","epoch":1586675356,"epoch_utc":null}] +[{"commit":"e05824a36ca62aa9f3a21854ec8b40a3e0f7a68d","author":"Benedikt Heine","author_email":"bebe@bebehei.de","date":"Mon Oct 28 12:42:22 2019 +0100","commit_by":"Benedikt Heine","commit_by_email":"bebe@bebehei.de","commit_by_date":"Sun Apr 12 17:27:16 2020 +0200","stats":{"files_changed":1,"insertions":13,"deletions":3,"files":["salt/modules/monit.py"],"file_stats":[{"name":"salt/modules/monit.py","lines_changed":16}]},"message":"Split monit status fields on monit version\n\nWith the commit [0] on monit, the field size changed. So splitting hard\nafter 35 chars, new versions of monit break when using monit.status.\n\n[0] https://bitbucket.org/tildeslash/monit/commits/\n471c4bbc388c1c536f07ce1dd26b811bd39a9467","epoch":1572291742,"epoch_utc":null},{"commit":"910a2ac4809bb05b886adfe75f4857eb53fdfbb1","merge":"6c3964ce30 f0a1e923e3","author":"Daniel Wozniak","author_email":"dwozniak@saltstack.com","date":"Sun Apr 12 00:09:37 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Apr 12 00:09:37 2020 -0700","message":"Merge pull request #53911 from terminalmage/squelch-log\n\nalternatives: Don't log error when running \"alternatives --display\" on nonexistant target","epoch":1586675377,"epoch_utc":null},{"commit":"6c3964ce30929e749c0965bc0d60527e9fe8dbb1","merge":"3026c25faf 2ac4da54e3","author":"Daniel Wozniak","author_email":"dwozniak@saltstack.com","date":"Sun Apr 12 00:09:16 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Apr 12 00:09:16 2020 -0700","message":"Merge pull request #54199 from driskell/patch-2\n\nFix broken sdb.get_or_set_hash for Hashicorp Vault","epoch":1586675356,"epoch_utc":null}] diff --git a/tests/fixtures/generic/git-log-hash-in-message-fix.json b/tests/fixtures/generic/git-log-hash-in-message-fix.json index 64ce338e..29a75684 100644 --- a/tests/fixtures/generic/git-log-hash-in-message-fix.json +++ b/tests/fixtures/generic/git-log-hash-in-message-fix.json @@ -1 +1 @@ -[{"commit":"e05824a36ca62aa9f3a21854ec8b40a3e0f7a68d","author":"Benedikt Heine","author_email":"bebe@bebehei.de","date":"Mon Oct 28 12:42:22 2019 +0100","commit_by":"Benedikt Heine","commit_by_email":"bebe@bebehei.de","commit_by_date":"Sun Apr 12 17:27:16 2020 +0200","stats":{"files_changed":1,"insertions":13,"deletions":3,"files":["salt/modules/monit.py"]},"message":"Split monit status fields on monit version\n\nWith the commit [0] on monit, the field size changed. So splitting hard\nafter 35 chars, new versions of monit break when using monit.status.\n\n[0] https://bitbucket.org/tildeslash/monit/commits/\n471c4bbc388c1c536f07ce1dd26b811bd39a9467","epoch":1572291742,"epoch_utc":null},{"commit":"910a2ac4809bb05b886adfe75f4857eb53fdfbb1","merge":"6c3964ce30 f0a1e923e3","author":"Daniel Wozniak","author_email":"dwozniak@saltstack.com","date":"Sun Apr 12 00:09:37 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Apr 12 00:09:37 2020 -0700","message":"Merge pull request #53911 from terminalmage/squelch-log\n\nalternatives: Don't log error when running \"alternatives --display\" on nonexistant target","epoch":1586675377,"epoch_utc":null},{"commit":"6c3964ce30929e749c0965bc0d60527e9fe8dbb1","merge":"3026c25faf 2ac4da54e3","author":"Daniel Wozniak","author_email":"dwozniak@saltstack.com","date":"Sun Apr 12 00:09:16 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Apr 12 00:09:16 2020 -0700","message":"Merge pull request #54199 from driskell/patch-2\n\nFix broken sdb.get_or_set_hash for Hashicorp Vault","epoch":1586675356,"epoch_utc":null}] +[{"commit":"e05824a36ca62aa9f3a21854ec8b40a3e0f7a68d","author":"Benedikt Heine","author_email":"bebe@bebehei.de","date":"Mon Oct 28 12:42:22 2019 +0100","commit_by":"Benedikt Heine","commit_by_email":"bebe@bebehei.de","commit_by_date":"Sun Apr 12 17:27:16 2020 +0200","stats":{"files_changed":1,"insertions":13,"deletions":3,"files":["salt/modules/monit.py"],"file_stats":[{"name":"salt/modules/monit.py","lines_changed":16}]},"message":"Split monit status fields on monit version\n\nWith the commit [0] on monit, the field size changed. So splitting hard\nafter 35 chars, new versions of monit break when using monit.status.\n\n[0] https://bitbucket.org/tildeslash/monit/commits/\n471c4bbc388c1c536f07ce1dd26b811bd39a9467","epoch":1572291742,"epoch_utc":null},{"commit":"910a2ac4809bb05b886adfe75f4857eb53fdfbb1","merge":"6c3964ce30 f0a1e923e3","author":"Daniel Wozniak","author_email":"dwozniak@saltstack.com","date":"Sun Apr 12 00:09:37 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Apr 12 00:09:37 2020 -0700","message":"Merge pull request #53911 from terminalmage/squelch-log\n\nalternatives: Don't log error when running \"alternatives --display\" on nonexistant target","epoch":1586675377,"epoch_utc":null},{"commit":"6c3964ce30929e749c0965bc0d60527e9fe8dbb1","merge":"3026c25faf 2ac4da54e3","author":"Daniel Wozniak","author_email":"dwozniak@saltstack.com","date":"Sun Apr 12 00:09:16 2020 -0700","commit_by":"GitHub","commit_by_email":"noreply@github.com","commit_by_date":"Sun Apr 12 00:09:16 2020 -0700","message":"Merge pull request #54199 from driskell/patch-2\n\nFix broken sdb.get_or_set_hash for Hashicorp Vault","epoch":1586675356,"epoch_utc":null}] diff --git a/tests/fixtures/generic/git-log-is-hash-regex-fix-streaming.json b/tests/fixtures/generic/git-log-is-hash-regex-fix-streaming.json index 63d03a3e..25ae98cd 100644 --- a/tests/fixtures/generic/git-log-is-hash-regex-fix-streaming.json +++ b/tests/fixtures/generic/git-log-is-hash-regex-fix-streaming.json @@ -1 +1 @@ -[{"commit":"6170eac439e590d774eb2e448c68eec90ea3fac0","author":"Jasper Lievisse Adriaanse","author_email":"j@jasper.la","date":"Fri Jul 3 15:19:49 2020 +0200","commit_by":"Daniel Wozniak","commit_by_email":"dan.woz@gmail.com","commit_by_date":"Fri Aug 28 12:16:13 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":12,"files":["doc/topics/installation/openbsd.rst"]},"message":"Sync OpenBSD installation documentation with reality\n\nOpenBSD's salt package moved to python3 a while ago and dependencies\nhave changed since this page was last updated.\n\nWhile here tweak a reference to the OpenBSD package, not pkg, repo.","epoch":1593814789,"epoch_utc":null},{"commit":"2d684bd506d473379670ff8905db689d051ff7db","author":"Bryce Larson","author_email":"blarson@saltstack.com","date":"Thu Aug 13 18:04:22 2020 +0000","commit_by":"Daniel Wozniak","commit_by_email":"dan.woz@gmail.com","commit_by_date":"Fri Aug 28 11:03:45 2020 -0700","stats":{"files_changed":88,"insertions":88,"deletions":0,"files":[".ci/kitchen-amazon2-py3",".ci/kitchen-amazon2-py3-pytest",".ci/kitchen-archlts-py3",".ci/kitchen-archlts-py3-pytest",".ci/kitchen-centos7-py3",".ci/kitchen-centos7-py3-cloud",".ci/kitchen-centos7-py3-cloud-pytest",".ci/kitchen-centos7-py3-m2crypto",".ci/kitchen-centos7-py3-m2crypto-pytest",".ci/kitchen-centos7-py3-proxy",".ci/kitchen-centos7-py3-pycryptodome",".ci/kitchen-centos7-py3-pycryptodome-pytest",".ci/kitchen-centos7-py3-pytest",".ci/kitchen-centos7-py3-tcp",".ci/kitchen-centos7-py3-tcp-pytest",".ci/kitchen-centos8-py3",".ci/kitchen-centos8-py3-pytest",".ci/kitchen-debian10-py3",".ci/kitchen-debian10-py3-pytest",".ci/kitchen-debian9-py3",".ci/kitchen-debian9-py3-pytest",".ci/kitchen-fedora31-py3",".ci/kitchen-fedora31-py3-pytest",".ci/kitchen-fedora32-py3",".ci/kitchen-fedora32-py3-pytest",".ci/kitchen-opensuse15-py3",".ci/kitchen-opensuse15-py3-pytest",".ci/kitchen-ubuntu1604-py3",".ci/kitchen-ubuntu1604-py3-m2crypto",".ci/kitchen-ubuntu1604-py3-m2crypto-pytest",".ci/kitchen-ubuntu1604-py3-proxy",".ci/kitchen-ubuntu1604-py3-pycryptodome",".ci/kitchen-ubuntu1604-py3-pycryptodome-pytest",".ci/kitchen-ubuntu1604-py3-pytest",".ci/kitchen-ubuntu1604-py3-tcp",".ci/kitchen-ubuntu1604-py3-tcp-pytest",".ci/kitchen-ubuntu1804-py3",".ci/kitchen-ubuntu1804-py3-pytest",".ci/kitchen-ubuntu2004-py3",".ci/kitchen-ubuntu2004-py3-pytest",".ci/kitchen-windows2016-py3",".ci/kitchen-windows2016-py3-pytest",".ci/kitchen-windows2019-py3",".ci/kitchen-windows2019-py3-pytest","cicd/jenkins/kitchen-amazon2-py3","cicd/jenkins/kitchen-amazon2-py3-pytest","cicd/jenkins/kitchen-archlts-py3","cicd/jenkins/kitchen-archlts-py3-pytest","cicd/jenkins/kitchen-centos7-py3","cicd/jenkins/kitchen-centos7-py3-cloud","cicd/jenkins/kitchen-centos7-py3-cloud-pytest","cicd/jenkins/kitchen-centos7-py3-m2crypto","cicd/jenkins/kitchen-centos7-py3-m2crypto-pytest","cicd/jenkins/kitchen-centos7-py3-proxy","cicd/jenkins/kitchen-centos7-py3-pycryptodome","cicd/jenkins/kitchen-centos7-py3-pycryptodome-pytest","cicd/jenkins/kitchen-centos7-py3-pytest","cicd/jenkins/kitchen-centos7-py3-tcp","cicd/jenkins/kitchen-centos7-py3-tcp-pytest","cicd/jenkins/kitchen-centos8-py3","cicd/jenkins/kitchen-centos8-py3-pytest","cicd/jenkins/kitchen-debian10-py3","cicd/jenkins/kitchen-debian10-py3-pytest","cicd/jenkins/kitchen-debian9-py3","cicd/jenkins/kitchen-debian9-py3-pytest","cicd/jenkins/kitchen-fedora31-py3","cicd/jenkins/kitchen-fedora31-py3-pytest","cicd/jenkins/kitchen-fedora32-py3","cicd/jenkins/kitchen-fedora32-py3-pytest","cicd/jenkins/kitchen-opensuse15-py3","cicd/jenkins/kitchen-opensuse15-py3-pytest","cicd/jenkins/kitchen-ubuntu1604-py3","cicd/jenkins/kitchen-ubuntu1604-py3-m2crypto","cicd/jenkins/kitchen-ubuntu1604-py3-m2crypto-pytest","cicd/jenkins/kitchen-ubuntu1604-py3-proxy","cicd/jenkins/kitchen-ubuntu1604-py3-pycryptodome","cicd/jenkins/kitchen-ubuntu1604-py3-pycryptodome-pytest","cicd/jenkins/kitchen-ubuntu1604-py3-pytest","cicd/jenkins/kitchen-ubuntu1604-py3-tcp","cicd/jenkins/kitchen-ubuntu1604-py3-tcp-pytest","cicd/jenkins/kitchen-ubuntu1804-py3","cicd/jenkins/kitchen-ubuntu1804-py3-pytest","cicd/jenkins/kitchen-ubuntu2004-py3","cicd/jenkins/kitchen-ubuntu2004-py3-pytest","cicd/jenkins/kitchen-windows2016-py3","cicd/jenkins/kitchen-windows2016-py3-pytest","cicd/jenkins/kitchen-windows2019-py3","cicd/jenkins/kitchen-windows2019-py3-pytest"]},"message":"hard-code ami ids","epoch":1597367062,"epoch_utc":1597341862},{"commit":"3332f5e131f223a9fd9fef22437c7830210d301f","author":"krionbsd","author_email":"krion@FreeBSD.org","date":"Thu Jul 30 14:50:44 2020 +0200","commit_by":"Daniel Wozniak","commit_by_email":"dan.woz@gmail.com","commit_by_date":"Thu Aug 27 13:04:37 2020 -0700","stats":{"files_changed":1,"insertions":31,"deletions":36,"files":["tests/unit/test_loader.py"]},"message":"[merge jam] port 53224","epoch":1596145844,"epoch_utc":null}] +[{"commit":"6170eac439e590d774eb2e448c68eec90ea3fac0","author":"Jasper Lievisse Adriaanse","author_email":"j@jasper.la","date":"Fri Jul 3 15:19:49 2020 +0200","commit_by":"Daniel Wozniak","commit_by_email":"dan.woz@gmail.com","commit_by_date":"Fri Aug 28 12:16:13 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":12,"files":["doc/topics/installation/openbsd.rst"],"file_stats":[{"name":"doc/topics/installation/openbsd.rst","lines_changed":23}]},"message":"Sync OpenBSD installation documentation with reality\n\nOpenBSD's salt package moved to python3 a while ago and dependencies\nhave changed since this page was last updated.\n\nWhile here tweak a reference to the OpenBSD package, not pkg, repo.","epoch":1593814789,"epoch_utc":null},{"commit":"2d684bd506d473379670ff8905db689d051ff7db","author":"Bryce Larson","author_email":"blarson@saltstack.com","date":"Thu Aug 13 18:04:22 2020 +0000","commit_by":"Daniel Wozniak","commit_by_email":"dan.woz@gmail.com","commit_by_date":"Fri Aug 28 11:03:45 2020 -0700","stats":{"files_changed":88,"insertions":88,"deletions":0,"files":[".ci/kitchen-amazon2-py3",".ci/kitchen-amazon2-py3-pytest",".ci/kitchen-archlts-py3",".ci/kitchen-archlts-py3-pytest",".ci/kitchen-centos7-py3",".ci/kitchen-centos7-py3-cloud",".ci/kitchen-centos7-py3-cloud-pytest",".ci/kitchen-centos7-py3-m2crypto",".ci/kitchen-centos7-py3-m2crypto-pytest",".ci/kitchen-centos7-py3-proxy",".ci/kitchen-centos7-py3-pycryptodome",".ci/kitchen-centos7-py3-pycryptodome-pytest",".ci/kitchen-centos7-py3-pytest",".ci/kitchen-centos7-py3-tcp",".ci/kitchen-centos7-py3-tcp-pytest",".ci/kitchen-centos8-py3",".ci/kitchen-centos8-py3-pytest",".ci/kitchen-debian10-py3",".ci/kitchen-debian10-py3-pytest",".ci/kitchen-debian9-py3",".ci/kitchen-debian9-py3-pytest",".ci/kitchen-fedora31-py3",".ci/kitchen-fedora31-py3-pytest",".ci/kitchen-fedora32-py3",".ci/kitchen-fedora32-py3-pytest",".ci/kitchen-opensuse15-py3",".ci/kitchen-opensuse15-py3-pytest",".ci/kitchen-ubuntu1604-py3",".ci/kitchen-ubuntu1604-py3-m2crypto",".ci/kitchen-ubuntu1604-py3-m2crypto-pytest",".ci/kitchen-ubuntu1604-py3-proxy",".ci/kitchen-ubuntu1604-py3-pycryptodome",".ci/kitchen-ubuntu1604-py3-pycryptodome-pytest",".ci/kitchen-ubuntu1604-py3-pytest",".ci/kitchen-ubuntu1604-py3-tcp",".ci/kitchen-ubuntu1604-py3-tcp-pytest",".ci/kitchen-ubuntu1804-py3",".ci/kitchen-ubuntu1804-py3-pytest",".ci/kitchen-ubuntu2004-py3",".ci/kitchen-ubuntu2004-py3-pytest",".ci/kitchen-windows2016-py3",".ci/kitchen-windows2016-py3-pytest",".ci/kitchen-windows2019-py3",".ci/kitchen-windows2019-py3-pytest","cicd/jenkins/kitchen-amazon2-py3","cicd/jenkins/kitchen-amazon2-py3-pytest","cicd/jenkins/kitchen-archlts-py3","cicd/jenkins/kitchen-archlts-py3-pytest","cicd/jenkins/kitchen-centos7-py3","cicd/jenkins/kitchen-centos7-py3-cloud","cicd/jenkins/kitchen-centos7-py3-cloud-pytest","cicd/jenkins/kitchen-centos7-py3-m2crypto","cicd/jenkins/kitchen-centos7-py3-m2crypto-pytest","cicd/jenkins/kitchen-centos7-py3-proxy","cicd/jenkins/kitchen-centos7-py3-pycryptodome","cicd/jenkins/kitchen-centos7-py3-pycryptodome-pytest","cicd/jenkins/kitchen-centos7-py3-pytest","cicd/jenkins/kitchen-centos7-py3-tcp","cicd/jenkins/kitchen-centos7-py3-tcp-pytest","cicd/jenkins/kitchen-centos8-py3","cicd/jenkins/kitchen-centos8-py3-pytest","cicd/jenkins/kitchen-debian10-py3","cicd/jenkins/kitchen-debian10-py3-pytest","cicd/jenkins/kitchen-debian9-py3","cicd/jenkins/kitchen-debian9-py3-pytest","cicd/jenkins/kitchen-fedora31-py3","cicd/jenkins/kitchen-fedora31-py3-pytest","cicd/jenkins/kitchen-fedora32-py3","cicd/jenkins/kitchen-fedora32-py3-pytest","cicd/jenkins/kitchen-opensuse15-py3","cicd/jenkins/kitchen-opensuse15-py3-pytest","cicd/jenkins/kitchen-ubuntu1604-py3","cicd/jenkins/kitchen-ubuntu1604-py3-m2crypto","cicd/jenkins/kitchen-ubuntu1604-py3-m2crypto-pytest","cicd/jenkins/kitchen-ubuntu1604-py3-proxy","cicd/jenkins/kitchen-ubuntu1604-py3-pycryptodome","cicd/jenkins/kitchen-ubuntu1604-py3-pycryptodome-pytest","cicd/jenkins/kitchen-ubuntu1604-py3-pytest","cicd/jenkins/kitchen-ubuntu1604-py3-tcp","cicd/jenkins/kitchen-ubuntu1604-py3-tcp-pytest","cicd/jenkins/kitchen-ubuntu1804-py3","cicd/jenkins/kitchen-ubuntu1804-py3-pytest","cicd/jenkins/kitchen-ubuntu2004-py3","cicd/jenkins/kitchen-ubuntu2004-py3-pytest","cicd/jenkins/kitchen-windows2016-py3","cicd/jenkins/kitchen-windows2016-py3-pytest","cicd/jenkins/kitchen-windows2019-py3","cicd/jenkins/kitchen-windows2019-py3-pytest"],"file_stats":[{"name":".ci/kitchen-amazon2-py3","lines_changed":1},{"name":".ci/kitchen-amazon2-py3-pytest","lines_changed":1},{"name":".ci/kitchen-archlts-py3","lines_changed":1},{"name":".ci/kitchen-archlts-py3-pytest","lines_changed":1},{"name":".ci/kitchen-centos7-py3","lines_changed":1},{"name":".ci/kitchen-centos7-py3-cloud","lines_changed":1},{"name":".ci/kitchen-centos7-py3-cloud-pytest","lines_changed":1},{"name":".ci/kitchen-centos7-py3-m2crypto","lines_changed":1},{"name":".ci/kitchen-centos7-py3-m2crypto-pytest","lines_changed":1},{"name":".ci/kitchen-centos7-py3-proxy","lines_changed":1},{"name":".ci/kitchen-centos7-py3-pycryptodome","lines_changed":1},{"name":".ci/kitchen-centos7-py3-pycryptodome-pytest","lines_changed":1},{"name":".ci/kitchen-centos7-py3-pytest","lines_changed":1},{"name":".ci/kitchen-centos7-py3-tcp","lines_changed":1},{"name":".ci/kitchen-centos7-py3-tcp-pytest","lines_changed":1},{"name":".ci/kitchen-centos8-py3","lines_changed":1},{"name":".ci/kitchen-centos8-py3-pytest","lines_changed":1},{"name":".ci/kitchen-debian10-py3","lines_changed":1},{"name":".ci/kitchen-debian10-py3-pytest","lines_changed":1},{"name":".ci/kitchen-debian9-py3","lines_changed":1},{"name":".ci/kitchen-debian9-py3-pytest","lines_changed":1},{"name":".ci/kitchen-fedora31-py3","lines_changed":1},{"name":".ci/kitchen-fedora31-py3-pytest","lines_changed":1},{"name":".ci/kitchen-fedora32-py3","lines_changed":1},{"name":".ci/kitchen-fedora32-py3-pytest","lines_changed":1},{"name":".ci/kitchen-opensuse15-py3","lines_changed":1},{"name":".ci/kitchen-opensuse15-py3-pytest","lines_changed":1},{"name":".ci/kitchen-ubuntu1604-py3","lines_changed":1},{"name":".ci/kitchen-ubuntu1604-py3-m2crypto","lines_changed":1},{"name":".ci/kitchen-ubuntu1604-py3-m2crypto-pytest","lines_changed":1},{"name":".ci/kitchen-ubuntu1604-py3-proxy","lines_changed":1},{"name":".ci/kitchen-ubuntu1604-py3-pycryptodome","lines_changed":1},{"name":".ci/kitchen-ubuntu1604-py3-pycryptodome-pytest","lines_changed":1},{"name":".ci/kitchen-ubuntu1604-py3-pytest","lines_changed":1},{"name":".ci/kitchen-ubuntu1604-py3-tcp","lines_changed":1},{"name":".ci/kitchen-ubuntu1604-py3-tcp-pytest","lines_changed":1},{"name":".ci/kitchen-ubuntu1804-py3","lines_changed":1},{"name":".ci/kitchen-ubuntu1804-py3-pytest","lines_changed":1},{"name":".ci/kitchen-ubuntu2004-py3","lines_changed":1},{"name":".ci/kitchen-ubuntu2004-py3-pytest","lines_changed":1},{"name":".ci/kitchen-windows2016-py3","lines_changed":1},{"name":".ci/kitchen-windows2016-py3-pytest","lines_changed":1},{"name":".ci/kitchen-windows2019-py3","lines_changed":1},{"name":".ci/kitchen-windows2019-py3-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-amazon2-py3","lines_changed":1},{"name":"cicd/jenkins/kitchen-amazon2-py3-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-archlts-py3","lines_changed":1},{"name":"cicd/jenkins/kitchen-archlts-py3-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-centos7-py3","lines_changed":1},{"name":"cicd/jenkins/kitchen-centos7-py3-cloud","lines_changed":1},{"name":"cicd/jenkins/kitchen-centos7-py3-cloud-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-centos7-py3-m2crypto","lines_changed":1},{"name":"cicd/jenkins/kitchen-centos7-py3-m2crypto-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-centos7-py3-proxy","lines_changed":1},{"name":"cicd/jenkins/kitchen-centos7-py3-pycryptodome","lines_changed":1},{"name":"cicd/jenkins/kitchen-centos7-py3-pycryptodome-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-centos7-py3-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-centos7-py3-tcp","lines_changed":1},{"name":"cicd/jenkins/kitchen-centos7-py3-tcp-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-centos8-py3","lines_changed":1},{"name":"cicd/jenkins/kitchen-centos8-py3-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-debian10-py3","lines_changed":1},{"name":"cicd/jenkins/kitchen-debian10-py3-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-debian9-py3","lines_changed":1},{"name":"cicd/jenkins/kitchen-debian9-py3-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-fedora31-py3","lines_changed":1},{"name":"cicd/jenkins/kitchen-fedora31-py3-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-fedora32-py3","lines_changed":1},{"name":"cicd/jenkins/kitchen-fedora32-py3-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-opensuse15-py3","lines_changed":1},{"name":"cicd/jenkins/kitchen-opensuse15-py3-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-ubuntu1604-py3","lines_changed":1},{"name":"cicd/jenkins/kitchen-ubuntu1604-py3-m2crypto","lines_changed":1},{"name":"cicd/jenkins/kitchen-ubuntu1604-py3-m2crypto-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-ubuntu1604-py3-proxy","lines_changed":1},{"name":"cicd/jenkins/kitchen-ubuntu1604-py3-pycryptodome","lines_changed":1},{"name":"cicd/jenkins/kitchen-ubuntu1604-py3-pycryptodome-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-ubuntu1604-py3-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-ubuntu1604-py3-tcp","lines_changed":1},{"name":"cicd/jenkins/kitchen-ubuntu1604-py3-tcp-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-ubuntu1804-py3","lines_changed":1},{"name":"cicd/jenkins/kitchen-ubuntu1804-py3-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-ubuntu2004-py3","lines_changed":1},{"name":"cicd/jenkins/kitchen-ubuntu2004-py3-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-windows2016-py3","lines_changed":1},{"name":"cicd/jenkins/kitchen-windows2016-py3-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-windows2019-py3","lines_changed":1},{"name":"cicd/jenkins/kitchen-windows2019-py3-pytest","lines_changed":1}]},"message":"hard-code ami ids","epoch":1597367062,"epoch_utc":1597341862},{"commit":"3332f5e131f223a9fd9fef22437c7830210d301f","author":"krionbsd","author_email":"krion@FreeBSD.org","date":"Thu Jul 30 14:50:44 2020 +0200","commit_by":"Daniel Wozniak","commit_by_email":"dan.woz@gmail.com","commit_by_date":"Thu Aug 27 13:04:37 2020 -0700","stats":{"files_changed":1,"insertions":31,"deletions":36,"files":["tests/unit/test_loader.py"],"file_stats":[{"name":"tests/unit/test_loader.py","lines_changed":67}]},"message":"[merge jam] port 53224","epoch":1596145844,"epoch_utc":null}] diff --git a/tests/fixtures/generic/git-log-is-hash-regex-fix.json b/tests/fixtures/generic/git-log-is-hash-regex-fix.json index 63d03a3e..25ae98cd 100644 --- a/tests/fixtures/generic/git-log-is-hash-regex-fix.json +++ b/tests/fixtures/generic/git-log-is-hash-regex-fix.json @@ -1 +1 @@ -[{"commit":"6170eac439e590d774eb2e448c68eec90ea3fac0","author":"Jasper Lievisse Adriaanse","author_email":"j@jasper.la","date":"Fri Jul 3 15:19:49 2020 +0200","commit_by":"Daniel Wozniak","commit_by_email":"dan.woz@gmail.com","commit_by_date":"Fri Aug 28 12:16:13 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":12,"files":["doc/topics/installation/openbsd.rst"]},"message":"Sync OpenBSD installation documentation with reality\n\nOpenBSD's salt package moved to python3 a while ago and dependencies\nhave changed since this page was last updated.\n\nWhile here tweak a reference to the OpenBSD package, not pkg, repo.","epoch":1593814789,"epoch_utc":null},{"commit":"2d684bd506d473379670ff8905db689d051ff7db","author":"Bryce Larson","author_email":"blarson@saltstack.com","date":"Thu Aug 13 18:04:22 2020 +0000","commit_by":"Daniel Wozniak","commit_by_email":"dan.woz@gmail.com","commit_by_date":"Fri Aug 28 11:03:45 2020 -0700","stats":{"files_changed":88,"insertions":88,"deletions":0,"files":[".ci/kitchen-amazon2-py3",".ci/kitchen-amazon2-py3-pytest",".ci/kitchen-archlts-py3",".ci/kitchen-archlts-py3-pytest",".ci/kitchen-centos7-py3",".ci/kitchen-centos7-py3-cloud",".ci/kitchen-centos7-py3-cloud-pytest",".ci/kitchen-centos7-py3-m2crypto",".ci/kitchen-centos7-py3-m2crypto-pytest",".ci/kitchen-centos7-py3-proxy",".ci/kitchen-centos7-py3-pycryptodome",".ci/kitchen-centos7-py3-pycryptodome-pytest",".ci/kitchen-centos7-py3-pytest",".ci/kitchen-centos7-py3-tcp",".ci/kitchen-centos7-py3-tcp-pytest",".ci/kitchen-centos8-py3",".ci/kitchen-centos8-py3-pytest",".ci/kitchen-debian10-py3",".ci/kitchen-debian10-py3-pytest",".ci/kitchen-debian9-py3",".ci/kitchen-debian9-py3-pytest",".ci/kitchen-fedora31-py3",".ci/kitchen-fedora31-py3-pytest",".ci/kitchen-fedora32-py3",".ci/kitchen-fedora32-py3-pytest",".ci/kitchen-opensuse15-py3",".ci/kitchen-opensuse15-py3-pytest",".ci/kitchen-ubuntu1604-py3",".ci/kitchen-ubuntu1604-py3-m2crypto",".ci/kitchen-ubuntu1604-py3-m2crypto-pytest",".ci/kitchen-ubuntu1604-py3-proxy",".ci/kitchen-ubuntu1604-py3-pycryptodome",".ci/kitchen-ubuntu1604-py3-pycryptodome-pytest",".ci/kitchen-ubuntu1604-py3-pytest",".ci/kitchen-ubuntu1604-py3-tcp",".ci/kitchen-ubuntu1604-py3-tcp-pytest",".ci/kitchen-ubuntu1804-py3",".ci/kitchen-ubuntu1804-py3-pytest",".ci/kitchen-ubuntu2004-py3",".ci/kitchen-ubuntu2004-py3-pytest",".ci/kitchen-windows2016-py3",".ci/kitchen-windows2016-py3-pytest",".ci/kitchen-windows2019-py3",".ci/kitchen-windows2019-py3-pytest","cicd/jenkins/kitchen-amazon2-py3","cicd/jenkins/kitchen-amazon2-py3-pytest","cicd/jenkins/kitchen-archlts-py3","cicd/jenkins/kitchen-archlts-py3-pytest","cicd/jenkins/kitchen-centos7-py3","cicd/jenkins/kitchen-centos7-py3-cloud","cicd/jenkins/kitchen-centos7-py3-cloud-pytest","cicd/jenkins/kitchen-centos7-py3-m2crypto","cicd/jenkins/kitchen-centos7-py3-m2crypto-pytest","cicd/jenkins/kitchen-centos7-py3-proxy","cicd/jenkins/kitchen-centos7-py3-pycryptodome","cicd/jenkins/kitchen-centos7-py3-pycryptodome-pytest","cicd/jenkins/kitchen-centos7-py3-pytest","cicd/jenkins/kitchen-centos7-py3-tcp","cicd/jenkins/kitchen-centos7-py3-tcp-pytest","cicd/jenkins/kitchen-centos8-py3","cicd/jenkins/kitchen-centos8-py3-pytest","cicd/jenkins/kitchen-debian10-py3","cicd/jenkins/kitchen-debian10-py3-pytest","cicd/jenkins/kitchen-debian9-py3","cicd/jenkins/kitchen-debian9-py3-pytest","cicd/jenkins/kitchen-fedora31-py3","cicd/jenkins/kitchen-fedora31-py3-pytest","cicd/jenkins/kitchen-fedora32-py3","cicd/jenkins/kitchen-fedora32-py3-pytest","cicd/jenkins/kitchen-opensuse15-py3","cicd/jenkins/kitchen-opensuse15-py3-pytest","cicd/jenkins/kitchen-ubuntu1604-py3","cicd/jenkins/kitchen-ubuntu1604-py3-m2crypto","cicd/jenkins/kitchen-ubuntu1604-py3-m2crypto-pytest","cicd/jenkins/kitchen-ubuntu1604-py3-proxy","cicd/jenkins/kitchen-ubuntu1604-py3-pycryptodome","cicd/jenkins/kitchen-ubuntu1604-py3-pycryptodome-pytest","cicd/jenkins/kitchen-ubuntu1604-py3-pytest","cicd/jenkins/kitchen-ubuntu1604-py3-tcp","cicd/jenkins/kitchen-ubuntu1604-py3-tcp-pytest","cicd/jenkins/kitchen-ubuntu1804-py3","cicd/jenkins/kitchen-ubuntu1804-py3-pytest","cicd/jenkins/kitchen-ubuntu2004-py3","cicd/jenkins/kitchen-ubuntu2004-py3-pytest","cicd/jenkins/kitchen-windows2016-py3","cicd/jenkins/kitchen-windows2016-py3-pytest","cicd/jenkins/kitchen-windows2019-py3","cicd/jenkins/kitchen-windows2019-py3-pytest"]},"message":"hard-code ami ids","epoch":1597367062,"epoch_utc":1597341862},{"commit":"3332f5e131f223a9fd9fef22437c7830210d301f","author":"krionbsd","author_email":"krion@FreeBSD.org","date":"Thu Jul 30 14:50:44 2020 +0200","commit_by":"Daniel Wozniak","commit_by_email":"dan.woz@gmail.com","commit_by_date":"Thu Aug 27 13:04:37 2020 -0700","stats":{"files_changed":1,"insertions":31,"deletions":36,"files":["tests/unit/test_loader.py"]},"message":"[merge jam] port 53224","epoch":1596145844,"epoch_utc":null}] +[{"commit":"6170eac439e590d774eb2e448c68eec90ea3fac0","author":"Jasper Lievisse Adriaanse","author_email":"j@jasper.la","date":"Fri Jul 3 15:19:49 2020 +0200","commit_by":"Daniel Wozniak","commit_by_email":"dan.woz@gmail.com","commit_by_date":"Fri Aug 28 12:16:13 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":12,"files":["doc/topics/installation/openbsd.rst"],"file_stats":[{"name":"doc/topics/installation/openbsd.rst","lines_changed":23}]},"message":"Sync OpenBSD installation documentation with reality\n\nOpenBSD's salt package moved to python3 a while ago and dependencies\nhave changed since this page was last updated.\n\nWhile here tweak a reference to the OpenBSD package, not pkg, repo.","epoch":1593814789,"epoch_utc":null},{"commit":"2d684bd506d473379670ff8905db689d051ff7db","author":"Bryce Larson","author_email":"blarson@saltstack.com","date":"Thu Aug 13 18:04:22 2020 +0000","commit_by":"Daniel Wozniak","commit_by_email":"dan.woz@gmail.com","commit_by_date":"Fri Aug 28 11:03:45 2020 -0700","stats":{"files_changed":88,"insertions":88,"deletions":0,"files":[".ci/kitchen-amazon2-py3",".ci/kitchen-amazon2-py3-pytest",".ci/kitchen-archlts-py3",".ci/kitchen-archlts-py3-pytest",".ci/kitchen-centos7-py3",".ci/kitchen-centos7-py3-cloud",".ci/kitchen-centos7-py3-cloud-pytest",".ci/kitchen-centos7-py3-m2crypto",".ci/kitchen-centos7-py3-m2crypto-pytest",".ci/kitchen-centos7-py3-proxy",".ci/kitchen-centos7-py3-pycryptodome",".ci/kitchen-centos7-py3-pycryptodome-pytest",".ci/kitchen-centos7-py3-pytest",".ci/kitchen-centos7-py3-tcp",".ci/kitchen-centos7-py3-tcp-pytest",".ci/kitchen-centos8-py3",".ci/kitchen-centos8-py3-pytest",".ci/kitchen-debian10-py3",".ci/kitchen-debian10-py3-pytest",".ci/kitchen-debian9-py3",".ci/kitchen-debian9-py3-pytest",".ci/kitchen-fedora31-py3",".ci/kitchen-fedora31-py3-pytest",".ci/kitchen-fedora32-py3",".ci/kitchen-fedora32-py3-pytest",".ci/kitchen-opensuse15-py3",".ci/kitchen-opensuse15-py3-pytest",".ci/kitchen-ubuntu1604-py3",".ci/kitchen-ubuntu1604-py3-m2crypto",".ci/kitchen-ubuntu1604-py3-m2crypto-pytest",".ci/kitchen-ubuntu1604-py3-proxy",".ci/kitchen-ubuntu1604-py3-pycryptodome",".ci/kitchen-ubuntu1604-py3-pycryptodome-pytest",".ci/kitchen-ubuntu1604-py3-pytest",".ci/kitchen-ubuntu1604-py3-tcp",".ci/kitchen-ubuntu1604-py3-tcp-pytest",".ci/kitchen-ubuntu1804-py3",".ci/kitchen-ubuntu1804-py3-pytest",".ci/kitchen-ubuntu2004-py3",".ci/kitchen-ubuntu2004-py3-pytest",".ci/kitchen-windows2016-py3",".ci/kitchen-windows2016-py3-pytest",".ci/kitchen-windows2019-py3",".ci/kitchen-windows2019-py3-pytest","cicd/jenkins/kitchen-amazon2-py3","cicd/jenkins/kitchen-amazon2-py3-pytest","cicd/jenkins/kitchen-archlts-py3","cicd/jenkins/kitchen-archlts-py3-pytest","cicd/jenkins/kitchen-centos7-py3","cicd/jenkins/kitchen-centos7-py3-cloud","cicd/jenkins/kitchen-centos7-py3-cloud-pytest","cicd/jenkins/kitchen-centos7-py3-m2crypto","cicd/jenkins/kitchen-centos7-py3-m2crypto-pytest","cicd/jenkins/kitchen-centos7-py3-proxy","cicd/jenkins/kitchen-centos7-py3-pycryptodome","cicd/jenkins/kitchen-centos7-py3-pycryptodome-pytest","cicd/jenkins/kitchen-centos7-py3-pytest","cicd/jenkins/kitchen-centos7-py3-tcp","cicd/jenkins/kitchen-centos7-py3-tcp-pytest","cicd/jenkins/kitchen-centos8-py3","cicd/jenkins/kitchen-centos8-py3-pytest","cicd/jenkins/kitchen-debian10-py3","cicd/jenkins/kitchen-debian10-py3-pytest","cicd/jenkins/kitchen-debian9-py3","cicd/jenkins/kitchen-debian9-py3-pytest","cicd/jenkins/kitchen-fedora31-py3","cicd/jenkins/kitchen-fedora31-py3-pytest","cicd/jenkins/kitchen-fedora32-py3","cicd/jenkins/kitchen-fedora32-py3-pytest","cicd/jenkins/kitchen-opensuse15-py3","cicd/jenkins/kitchen-opensuse15-py3-pytest","cicd/jenkins/kitchen-ubuntu1604-py3","cicd/jenkins/kitchen-ubuntu1604-py3-m2crypto","cicd/jenkins/kitchen-ubuntu1604-py3-m2crypto-pytest","cicd/jenkins/kitchen-ubuntu1604-py3-proxy","cicd/jenkins/kitchen-ubuntu1604-py3-pycryptodome","cicd/jenkins/kitchen-ubuntu1604-py3-pycryptodome-pytest","cicd/jenkins/kitchen-ubuntu1604-py3-pytest","cicd/jenkins/kitchen-ubuntu1604-py3-tcp","cicd/jenkins/kitchen-ubuntu1604-py3-tcp-pytest","cicd/jenkins/kitchen-ubuntu1804-py3","cicd/jenkins/kitchen-ubuntu1804-py3-pytest","cicd/jenkins/kitchen-ubuntu2004-py3","cicd/jenkins/kitchen-ubuntu2004-py3-pytest","cicd/jenkins/kitchen-windows2016-py3","cicd/jenkins/kitchen-windows2016-py3-pytest","cicd/jenkins/kitchen-windows2019-py3","cicd/jenkins/kitchen-windows2019-py3-pytest"],"file_stats":[{"name":".ci/kitchen-amazon2-py3","lines_changed":1},{"name":".ci/kitchen-amazon2-py3-pytest","lines_changed":1},{"name":".ci/kitchen-archlts-py3","lines_changed":1},{"name":".ci/kitchen-archlts-py3-pytest","lines_changed":1},{"name":".ci/kitchen-centos7-py3","lines_changed":1},{"name":".ci/kitchen-centos7-py3-cloud","lines_changed":1},{"name":".ci/kitchen-centos7-py3-cloud-pytest","lines_changed":1},{"name":".ci/kitchen-centos7-py3-m2crypto","lines_changed":1},{"name":".ci/kitchen-centos7-py3-m2crypto-pytest","lines_changed":1},{"name":".ci/kitchen-centos7-py3-proxy","lines_changed":1},{"name":".ci/kitchen-centos7-py3-pycryptodome","lines_changed":1},{"name":".ci/kitchen-centos7-py3-pycryptodome-pytest","lines_changed":1},{"name":".ci/kitchen-centos7-py3-pytest","lines_changed":1},{"name":".ci/kitchen-centos7-py3-tcp","lines_changed":1},{"name":".ci/kitchen-centos7-py3-tcp-pytest","lines_changed":1},{"name":".ci/kitchen-centos8-py3","lines_changed":1},{"name":".ci/kitchen-centos8-py3-pytest","lines_changed":1},{"name":".ci/kitchen-debian10-py3","lines_changed":1},{"name":".ci/kitchen-debian10-py3-pytest","lines_changed":1},{"name":".ci/kitchen-debian9-py3","lines_changed":1},{"name":".ci/kitchen-debian9-py3-pytest","lines_changed":1},{"name":".ci/kitchen-fedora31-py3","lines_changed":1},{"name":".ci/kitchen-fedora31-py3-pytest","lines_changed":1},{"name":".ci/kitchen-fedora32-py3","lines_changed":1},{"name":".ci/kitchen-fedora32-py3-pytest","lines_changed":1},{"name":".ci/kitchen-opensuse15-py3","lines_changed":1},{"name":".ci/kitchen-opensuse15-py3-pytest","lines_changed":1},{"name":".ci/kitchen-ubuntu1604-py3","lines_changed":1},{"name":".ci/kitchen-ubuntu1604-py3-m2crypto","lines_changed":1},{"name":".ci/kitchen-ubuntu1604-py3-m2crypto-pytest","lines_changed":1},{"name":".ci/kitchen-ubuntu1604-py3-proxy","lines_changed":1},{"name":".ci/kitchen-ubuntu1604-py3-pycryptodome","lines_changed":1},{"name":".ci/kitchen-ubuntu1604-py3-pycryptodome-pytest","lines_changed":1},{"name":".ci/kitchen-ubuntu1604-py3-pytest","lines_changed":1},{"name":".ci/kitchen-ubuntu1604-py3-tcp","lines_changed":1},{"name":".ci/kitchen-ubuntu1604-py3-tcp-pytest","lines_changed":1},{"name":".ci/kitchen-ubuntu1804-py3","lines_changed":1},{"name":".ci/kitchen-ubuntu1804-py3-pytest","lines_changed":1},{"name":".ci/kitchen-ubuntu2004-py3","lines_changed":1},{"name":".ci/kitchen-ubuntu2004-py3-pytest","lines_changed":1},{"name":".ci/kitchen-windows2016-py3","lines_changed":1},{"name":".ci/kitchen-windows2016-py3-pytest","lines_changed":1},{"name":".ci/kitchen-windows2019-py3","lines_changed":1},{"name":".ci/kitchen-windows2019-py3-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-amazon2-py3","lines_changed":1},{"name":"cicd/jenkins/kitchen-amazon2-py3-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-archlts-py3","lines_changed":1},{"name":"cicd/jenkins/kitchen-archlts-py3-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-centos7-py3","lines_changed":1},{"name":"cicd/jenkins/kitchen-centos7-py3-cloud","lines_changed":1},{"name":"cicd/jenkins/kitchen-centos7-py3-cloud-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-centos7-py3-m2crypto","lines_changed":1},{"name":"cicd/jenkins/kitchen-centos7-py3-m2crypto-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-centos7-py3-proxy","lines_changed":1},{"name":"cicd/jenkins/kitchen-centos7-py3-pycryptodome","lines_changed":1},{"name":"cicd/jenkins/kitchen-centos7-py3-pycryptodome-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-centos7-py3-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-centos7-py3-tcp","lines_changed":1},{"name":"cicd/jenkins/kitchen-centos7-py3-tcp-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-centos8-py3","lines_changed":1},{"name":"cicd/jenkins/kitchen-centos8-py3-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-debian10-py3","lines_changed":1},{"name":"cicd/jenkins/kitchen-debian10-py3-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-debian9-py3","lines_changed":1},{"name":"cicd/jenkins/kitchen-debian9-py3-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-fedora31-py3","lines_changed":1},{"name":"cicd/jenkins/kitchen-fedora31-py3-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-fedora32-py3","lines_changed":1},{"name":"cicd/jenkins/kitchen-fedora32-py3-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-opensuse15-py3","lines_changed":1},{"name":"cicd/jenkins/kitchen-opensuse15-py3-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-ubuntu1604-py3","lines_changed":1},{"name":"cicd/jenkins/kitchen-ubuntu1604-py3-m2crypto","lines_changed":1},{"name":"cicd/jenkins/kitchen-ubuntu1604-py3-m2crypto-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-ubuntu1604-py3-proxy","lines_changed":1},{"name":"cicd/jenkins/kitchen-ubuntu1604-py3-pycryptodome","lines_changed":1},{"name":"cicd/jenkins/kitchen-ubuntu1604-py3-pycryptodome-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-ubuntu1604-py3-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-ubuntu1604-py3-tcp","lines_changed":1},{"name":"cicd/jenkins/kitchen-ubuntu1604-py3-tcp-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-ubuntu1804-py3","lines_changed":1},{"name":"cicd/jenkins/kitchen-ubuntu1804-py3-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-ubuntu2004-py3","lines_changed":1},{"name":"cicd/jenkins/kitchen-ubuntu2004-py3-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-windows2016-py3","lines_changed":1},{"name":"cicd/jenkins/kitchen-windows2016-py3-pytest","lines_changed":1},{"name":"cicd/jenkins/kitchen-windows2019-py3","lines_changed":1},{"name":"cicd/jenkins/kitchen-windows2019-py3-pytest","lines_changed":1}]},"message":"hard-code ami ids","epoch":1597367062,"epoch_utc":1597341862},{"commit":"3332f5e131f223a9fd9fef22437c7830210d301f","author":"krionbsd","author_email":"krion@FreeBSD.org","date":"Thu Jul 30 14:50:44 2020 +0200","commit_by":"Daniel Wozniak","commit_by_email":"dan.woz@gmail.com","commit_by_date":"Thu Aug 27 13:04:37 2020 -0700","stats":{"files_changed":1,"insertions":31,"deletions":36,"files":["tests/unit/test_loader.py"],"file_stats":[{"name":"tests/unit/test_loader.py","lines_changed":67}]},"message":"[merge jam] port 53224","epoch":1596145844,"epoch_utc":null}] diff --git a/tests/fixtures/generic/git-log-medium-stat-streaming.json b/tests/fixtures/generic/git-log-medium-stat-streaming.json index 40556785..2bc19af8 100644 --- a/tests/fixtures/generic/git-log-medium-stat-streaming.json +++ b/tests/fixtures/generic/git-log-medium-stat-streaming.json @@ -1 +1 @@ -[{"commit":"096fffdb79807d34b99985b38df0a3df7f6a86c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 20 10:03:36 2022 -0400","stats":{"files_changed":2,"insertions":120,"deletions":36,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"]},"message":"use stat examples","epoch":1650474216,"epoch_utc":null},{"commit":"728d882ed007b3c8b785018874a0eb06e1143b66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 20 09:50:19 2022 -0400","stats":{"files_changed":2,"insertions":90,"deletions":12,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"]},"message":"add timestamp docs and examples","epoch":1650473419,"epoch_utc":null},{"commit":"b53e42aca623181aa9bc72194e6eeef1e9a3a237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 20 09:44:42 2022 -0400","stats":{"files_changed":5,"insertions":29,"deletions":6,"files":["docs/parsers/git_log.md","docs/utils.md","jc/parsers/git_log.py","jc/utils.py","man/jc.1"]},"message":"add calculated timestamp","epoch":1650473082,"epoch_utc":null},{"commit":"477329ce5b8f5c2a8e4384ba3f59289fc18c957d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 20 08:26:26 2022 -0400","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add linefeed to version text","epoch":1650468386,"epoch_utc":null},{"commit":"283dc4efd55030188f17c7e1dfbc5315103494b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 17:44:15 2022 -0400","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["CHANGELOG","jc/cli.py"]},"message":"add python interpreter version and path to -v and -a output","epoch":1650415455,"epoch_utc":null},{"commit":"d490bbcaa0291a691b95fa5b61807eebb0b088eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 15:26:31 2022 -0400","stats":{"files_changed":1,"insertions":26,"deletions":26,"files":["CHANGELOG"]},"message":"normalize add/update","epoch":1650407191,"epoch_utc":null},{"commit":"f49ddf8e5c5009702155fc62d83c63e3c08c594d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 15:18:04 2022 -0400","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"]},"message":"doc update","epoch":1650406684,"epoch_utc":null},{"commit":"e1e341652b51b823844e76ef7e68f9373a323435","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 15:10:40 2022 -0400","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"doc update","epoch":1650406240,"epoch_utc":null},{"commit":"ecda667549137bed5622cca69f2022e7a75ea833","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 15:10:35 2022 -0400","stats":{"files_changed":2,"insertions":12,"deletions":8,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"]},"message":"process integers","epoch":1650406235,"epoch_utc":null},{"commit":"a0d96a188a9f875b2d59625aa97d4f80bba290f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 14:45:20 2022 -0400","stats":{"files_changed":2,"insertions":5,"deletions":1,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"]},"message":"doc update","epoch":1650404720,"epoch_utc":null},{"commit":"6c0f0cddfe4dd2d5169f7c55416c6725912557f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 14:43:47 2022 -0400","stats":{"files_changed":2,"insertions":14,"deletions":1,"files":["jc/parsers/yaml.py","tests/test_yaml.py"]},"message":"fix for datetime objects in yaml files","epoch":1650404627,"epoch_utc":null},{"commit":"c7173ecd89742c8cf8a7bc4a8021baac5c3cd483","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 14:34:53 2022 -0400","stats":{"files_changed":1,"insertions":8,"deletions":6,"files":["jc/parsers/git_log.py"]},"message":"fix mypy issues","epoch":1650404093,"epoch_utc":null},{"commit":"e98240c905394e3ebd6a45fa31b6d432c150afc4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 14:20:44 2022 -0400","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/git_log.py"]},"message":"extend instead of append list","epoch":1650403244,"epoch_utc":null},{"commit":"6cb7e25974b11afe57d7d0e8550b3b1a56b14c67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 13:17:24 2022 -0400","stats":{"files_changed":3,"insertions":93,"deletions":1,"files":["README.md","docs/parsers/git_log.md","man/jc.1"]},"message":"add docs","epoch":1650399444,"epoch_utc":null},{"commit":"c37980c05c7fbd4f811ce5fcfcfddaf5f3ab5414","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 13:17:16 2022 -0400","stats":{"files_changed":1,"insertions":41,"deletions":7,"files":["jc/parsers/git_log.py"]},"message":"add stat support","epoch":1650399436,"epoch_utc":null},{"commit":"b5943bd39d776fc4c3b3dea03c0f3d4b6f4bb260","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 10:32:55 2022 -0400","stats":{"files_changed":1,"insertions":23,"deletions":10,"files":["jc/parsers/git_log.py"]},"message":"initial docstring","epoch":1650389575,"epoch_utc":null},{"commit":"49a3a7db3b2b0b292489a41691c9dcbce816cfed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 09:30:38 2022 -0400","stats":{"files_changed":2,"insertions":175,"deletions":0,"files":["jc/lib.py","jc/parsers/git_log.py"]},"message":"initial git-log parser","epoch":1650385838,"epoch_utc":null},{"commit":"0c55240e9da30ac4293cc324f1094de2abd3da91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 13 10:54:28 2022 -0700","stats":{"files_changed":3,"insertions":1,"deletions":0,"files":["CHANGELOG","tests/{ => templates}/_test_foo.py","tests/{ => templates}/_test_foo_s.py"]},"message":"move test templates to fix test failures on some systems","epoch":1649872468,"epoch_utc":null},{"commit":"f91988aed5499d25acf7a7e87b2b0d0cd37b62af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 12 14:22:06 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/lib.md"]},"message":"iterator -> iterable","epoch":1649798526,"epoch_utc":null},{"commit":"3c3ad9fc6adf865b3814a1f03814d0bc17d1c6bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 12 14:20:58 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"iterator -> iterable in doc","epoch":1649798458,"epoch_utc":null},{"commit":"291ab79e22a59cb31814e7a5af9dbc9f2ec863e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 12 11:07:34 2022 -0700","stats":{"files_changed":3,"insertions":24,"deletions":24,"files":["README.md","man/jc.1","templates/readme_template"]},"message":"fix arch linux command","epoch":1649786854,"epoch_utc":null},{"commit":"e6d5892c146762cd41a966adadb77db333d98ace","merge":"c0414e7 dcca7a5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 12 11:02:37 2022 -0700","message":"Merge pull request #226 from kellyjonbrazil/master\n\nsync to dev","epoch":1649786557,"epoch_utc":null},{"commit":"dcca7a57d558721a61fbba44f07b1d53116827e1","merge":"7138eef 4ee8a69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 12 11:00:51 2022 -0700","message":"Merge pull request #225 from adrianteri/patch-1\n\nUpdate README","epoch":1649786451,"epoch_utc":null},{"commit":"4ee8a69337b24e199983fe657643abcb0a56a8e6","author":"003","author_email":"adriateri@gmail.com","date":"Tue Apr 12 20:53:39 2022 +0300","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"Update README\n\nSpecify the Arch package is in the AUR and NOT in the standard Archlinux repositories.","epoch":1649822019,"epoch_utc":null},{"commit":"c0414e7db7f5d785b72ad616517f2ec63af151a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 17:18:20 2022 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["docgen.sh"]},"message":"clean up background tasks","epoch":1649636300,"epoch_utc":null},{"commit":"a419175fe6dffe9c5fd20cfbd82ee552bc82a993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 17:14:34 2022 -0700","stats":{"files_changed":2,"insertions":34,"deletions":17,"files":["docgen.sh","updatedocs.sh"]},"message":"enhance parallelization","epoch":1649636074,"epoch_utc":null},{"commit":"cd6dead034f3c72aebd22afeb2aea6591ae6d94d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 16:54:34 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"man page update","epoch":1649634874,"epoch_utc":null},{"commit":"45342ea9fea29947d8d90260c7665ffbca612cce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 16:54:22 2022 -0700","stats":{"files_changed":2,"insertions":16,"deletions":9,"files":["docgen.sh","updatedocs.sh"]},"message":"parallelize doc gneration","epoch":1649634862,"epoch_utc":null},{"commit":"585bf0e159c7839869cf3e458938dcc5fa2ceb81","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 10:32:51 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"xrandr update","epoch":1649611971,"epoch_utc":null},{"commit":"3a860b9babe93d455f68ef21436edf7470d375af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 10:31:13 2022 -0700","stats":{"files_changed":2,"insertions":7,"deletions":5,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"add rotation field","epoch":1649611873,"epoch_utc":null},{"commit":"269180df77f9ff953b07222e8ae790c7e7a8298e","merge":"e85f11c a1afed8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 10:19:50 2022 -0700","message":"Merge pull request #223 from anekos/fix/support-rotated-devices\n\nFix/support rotated devices","epoch":1649611190,"epoch_utc":null},{"commit":"a1afed8d95e33fbbc618c7b5778a9faeea2f628f","author":"anekos","author_email":"anekos@snca.net","date":"Sun Apr 10 18:19:29 2022 +0900","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["docs/parsers/xrandr.md"]},"message":"doc update","epoch":1649639969,"epoch_utc":null},{"commit":"e39f150a216e4e184444dfc88a63e0f303e51631","author":"anekos","author_email":"anekos@snca.net","date":"Sun Apr 10 18:12:28 2022 +0900","stats":{"files_changed":3,"insertions":9,"deletions":4,"files":["jc/parsers/xrandr.py","tests/fixtures/generic/xrandr_simple.json","tests/test_xrandr.py"]},"message":"Support rotated devices","epoch":1649639548,"epoch_utc":null},{"commit":"e85f11c6fcad5461bae612dd5a945c20d300e59a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 4 12:00:41 2022 -0700","stats":{"files_changed":4,"insertions":12,"deletions":12,"files":["docs/parsers/ini.md","docs/parsers/kv.md","jc/parsers/ini.py","jc/parsers/kv.py"]},"message":"doc formatting","epoch":1649098841,"epoch_utc":null},{"commit":"49a9d7b07e89696f2e022655d7256b7d6ad4bf7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 4 11:42:16 2022 -0700","stats":{"files_changed":3,"insertions":12,"deletions":8,"files":["docs/parsers/ini.md","docs/parsers/kv.md","man/jc.1"]},"message":"doc update","epoch":1649097736,"epoch_utc":null},{"commit":"a2ef9c429e4bb9f70d033511dce77ccdb9013971","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 4 11:38:52 2022 -0700","stats":{"files_changed":4,"insertions":38,"deletions":8,"files":["jc/parsers/ini.py","jc/parsers/kv.py","tests/test_ini.py","tests/test_kv.py"]},"message":"allow duplicate keys","epoch":1649097532,"epoch_utc":null},{"commit":"d5e9074f1c8facb3f15b8c41a008917178626978","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 4 11:38:04 2022 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/lib.py","setup.py"]},"message":"version bump","epoch":1649097484,"epoch_utc":null},{"commit":"774699f085d97f22ae2dab0cf64d72aa1e1709f7","merge":"789f073 7138eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 4 18:21:15 2022 +0000","message":"Merge pull request #220 from kellyjonbrazil/master\n\nsync to dev","epoch":1649121675,"epoch_utc":1649096475},{"commit":"7138eef3d137bc64286d4af453d8d4e7b3f4408d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 30 14:39:56 2022 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py"]},"message":"fix newline chars in doc","epoch":1648676396,"epoch_utc":null},{"commit":"fad5e544aa9e57d31473190e196f59c616901207","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 29 09:58:44 2022 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"]},"message":"formatting","epoch":1648573124,"epoch_utc":null},{"commit":"64757e2cf55448bccfbbd60d31930ab3f59af21b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 29 09:35:54 2022 -0700","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"]},"message":"doc formatting","epoch":1648571754,"epoch_utc":null},{"commit":"e05be3f08beae1b600fc55a3a7b4e28163e15bc0","merge":"ac61e9a 789f073","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 25 22:36:05 2022 +0000","message":"Merge pull request #213 from kellyjonbrazil/dev\n\nDev v1.18.6","epoch":1648272965,"epoch_utc":1648247765},{"commit":"789f0735dfd63e728b8716d97cf0c6045ede5011","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 25 15:32:37 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"doc update","epoch":1648247557,"epoch_utc":null},{"commit":"34bc7753174be28d6c1a00dadc662bc374e554c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 25 15:32:11 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"doc update","epoch":1648247531,"epoch_utc":null},{"commit":"38de059a1bc285c8681086d9fb43d0d23ac01d49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 16:58:45 2022 -0700","stats":{"files_changed":3,"insertions":9,"deletions":3,"files":["docs/parsers/asciitable.md","docs/parsers/universal.md","man/jc.1"]},"message":"doc update","epoch":1648166325,"epoch_utc":null},{"commit":"304ae6268f4dff6e6f901628e7ff89db1d6e0767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 16:58:39 2022 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/parsers/asciitable_m.py"]},"message":"minor optimization by changing the expression order","epoch":1648166319,"epoch_utc":null},{"commit":"978caf45221188a29c0e67147804f20f317c066d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 12:37:46 2022 -0700","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["jc/parsers/asciitable.py"]},"message":"minor optimization by reordering expressions","epoch":1648150666,"epoch_utc":null},{"commit":"17df5bfcfc25f226a2976aa7ab8a80e4aaa915c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 11:58:13 2022 -0700","stats":{"files_changed":2,"insertions":12,"deletions":2,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"cache _is_separator function","epoch":1648148293,"epoch_utc":null},{"commit":"5e6a5068cff71b3b30525d0a12868bdf6551456c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 11:57:01 2022 -0700","stats":{"files_changed":1,"insertions":6,"deletions":2,"files":["jc/parsers/universal.py"]},"message":"allow iterables for simple table parser","epoch":1648148221,"epoch_utc":null},{"commit":"619de68a61be0117e635032347dde417d77c748c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 09:39:53 2022 -0700","stats":{"files_changed":2,"insertions":8,"deletions":9,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"formatting","epoch":1648139993,"epoch_utc":null},{"commit":"6748c3cc91f90bddea3d07b8b30a049ee55eaf35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 09:31:12 2022 -0700","stats":{"files_changed":2,"insertions":65,"deletions":61,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"remove lines from corner detection and add rounded corners","epoch":1648139472,"epoch_utc":null},{"commit":"0a462978b731770d1290187a502706c2322f5f91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 23 15:08:33 2022 -0700","stats":{"files_changed":4,"insertions":101,"deletions":3,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py","tests/test_asciitable.py","tests/test_asciitable_m.py"]},"message":"fix for special characters in headers","epoch":1648073313,"epoch_utc":null},{"commit":"e66a82ff49b40a674f9ef373a12d59fc71bfa730","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 23 10:50:34 2022 -0700","stats":{"files_changed":3,"insertions":6,"deletions":5,"files":["CHANGELOG","jc/parsers/asciitable_m.py","man/jc.1"]},"message":"doc update","epoch":1648057834,"epoch_utc":null},{"commit":"f3aa797d96c8e2cef2124dbb2f49d1fadaee3fa2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 17:47:19 2022 -0700","stats":{"files_changed":2,"insertions":69,"deletions":9,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"add more pretty table separators","epoch":1647996439,"epoch_utc":null},{"commit":"e5b478218c4ba3781afd085056dba888c3f6ae02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 16:05:07 2022 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_xrandr.py"]},"message":"add quiet=True to parse tests","epoch":1647990307,"epoch_utc":null},{"commit":"35e0e9c32afbc5450c661bcb3a23904d135358ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 15:57:43 2022 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable.py"]},"message":"remove print statement","epoch":1647989863,"epoch_utc":null},{"commit":"17c3c2f029a0a47eb02d681567619d471b99949c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 15:55:59 2022 -0700","stats":{"files_changed":4,"insertions":58,"deletions":2,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py","tests/test_asciitable.py","tests/test_asciitable_m.py"]},"message":"add bold bar seperator and ANSI code tests","epoch":1647989759,"epoch_utc":null},{"commit":"cf83e6398b3314b233581eb313510872177de20a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 15:13:07 2022 -0700","stats":{"files_changed":2,"insertions":7,"deletions":0,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"add fancy separators","epoch":1647987187,"epoch_utc":null},{"commit":"94e061b881e2ed28d2b462ad038e5ba77182b6c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 14:53:34 2022 -0700","stats":{"files_changed":1,"insertions":275,"deletions":0,"files":["tests/test_asciitable.py"]},"message":"add asciitable parser tests","epoch":1647986014,"epoch_utc":null},{"commit":"720480e39ce3cc2079d7f4f5bcff2725081fec34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 13:21:10 2022 -0700","stats":{"files_changed":4,"insertions":10,"deletions":2,"files":["docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"doc update","epoch":1647980470,"epoch_utc":null},{"commit":"82a63fe15922456853aa4597aa10a5a02b20bdef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 12:42:07 2022 -0700","stats":{"files_changed":2,"insertions":6,"deletions":8,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"]},"message":"doc update","epoch":1647978127,"epoch_utc":null},{"commit":"9c1ec9940e68ce9848da20e81b8c0b7e35a215df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 12:35:56 2022 -0700","stats":{"files_changed":4,"insertions":82,"deletions":14,"files":["docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"doc update","epoch":1647977756,"epoch_utc":null},{"commit":"f23f19da453a0f7bcf70e417a10f87e27571aa43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 12:25:59 2022 -0700","stats":{"files_changed":5,"insertions":122,"deletions":9,"files":["README.md","docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py","man/jc.1"]},"message":"doc update","epoch":1647977159,"epoch_utc":null},{"commit":"aea2e1b0a9c6bb2a02a6e73889bb04e8f4f22588","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 12:25:51 2022 -0700","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["tests/test_asciitable_m.py"]},"message":"fix tests so blank strings are now None","epoch":1647977151,"epoch_utc":null},{"commit":"7d95d679bf4093ea77f30a1be55384b6dbf08341","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 12:25:24 2022 -0700","stats":{"files_changed":2,"insertions":212,"deletions":1,"files":["jc/lib.py","jc/parsers/asciitable.py"]},"message":"add asciitable parser","epoch":1647977124,"epoch_utc":null},{"commit":"b3b140066b74ee31dd1c460502caf2f26df321b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 07:21:19 2022 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py"]},"message":"doc update","epoch":1647958879,"epoch_utc":null},{"commit":"b204c423c1b947c17cb251a5dd3c444cd71dd2c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 07:05:14 2022 -0700","stats":{"files_changed":4,"insertions":193,"deletions":15,"files":["README.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py","man/jc.1"]},"message":"doc update","epoch":1647957914,"epoch_utc":null},{"commit":"d451c309bb0d8889dc09a698212bf01c2154a582","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 06:30:07 2022 -0700","stats":{"files_changed":1,"insertions":11,"deletions":8,"files":["jc/parsers/asciitable_m.py"]},"message":"change multiple or statements to any()","epoch":1647955807,"epoch_utc":null},{"commit":"01d53da68ed04b736934851137c59216ad02d8c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 19:11:27 2022 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable_m.py"]},"message":"remove debug print","epoch":1647915087,"epoch_utc":null},{"commit":"53dd05e52c329a15c30a756a36a165ac59ef8a14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 19:10:02 2022 -0700","stats":{"files_changed":2,"insertions":29,"deletions":1,"files":["jc/parsers/asciitable_m.py","tests/test_asciitable_m.py"]},"message":"fix rstrip and add tests","epoch":1647915002,"epoch_utc":null},{"commit":"ab564f5be8282f1c7ee2d602bcef398fdfd4570f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 17:57:14 2022 -0700","stats":{"files_changed":2,"insertions":237,"deletions":1,"files":["jc/parsers/asciitable_m.py","tests/test_asciitable_m.py"]},"message":"add tests","epoch":1647910634,"epoch_utc":null},{"commit":"00c39450f9878527b60545ad61c04cfb98f418dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 13:36:54 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"]},"message":"enhance type annotation","epoch":1647895014,"epoch_utc":null},{"commit":"f611d08b50219f4e573c1d1f0beae27583e76432","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 13:33:35 2022 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/asciitable_m.py"]},"message":"formatting","epoch":1647894815,"epoch_utc":null},{"commit":"90e79b7df3a4d5b37835fdf1c2debc1bad0a40b9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 13:27:44 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"]},"message":"formatting","epoch":1647894464,"epoch_utc":null},{"commit":"4eb2d725d5fe6f2cc7935c7dc891912cf7b8e940","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 13:09:50 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"]},"message":"formatting","epoch":1647893390,"epoch_utc":null},{"commit":"51ae5ebcac7263ef2571c11975b275eff352bbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 13:06:34 2022 -0700","stats":{"files_changed":1,"insertions":148,"deletions":175,"files":["jc/parsers/asciitable_m.py"]},"message":"new streamlined parser","epoch":1647893194,"epoch_utc":null},{"commit":"9ecbdb09162da4d563799aa93d422db85b2c324b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 20 10:16:29 2022 -0700","stats":{"files_changed":8,"insertions":35,"deletions":30,"files":["docs/parsers/mpstat_s.md","docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","docs/parsers/universal.md","jc/parsers/foo_s.py","jc/parsers/mpstat_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"]},"message":"use generator instead of iterable in function return annotation","epoch":1647796589,"epoch_utc":null},{"commit":"b3a2886fd0af0cd06890f37f1edfc6890bb83e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 20 10:12:29 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["docs/lib.md"]},"message":"formatting","epoch":1647796349,"epoch_utc":null},{"commit":"ceacec0f462bd7c2d9e92ddb9029ccd71aef481c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 18 16:57:47 2022 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable_m.py"]},"message":"remove errant os sep import","epoch":1647647867,"epoch_utc":null},{"commit":"ff0f794b01395ed9b65fac75a6b07f0772d45a2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 18 16:53:23 2022 -0700","stats":{"files_changed":1,"insertions":32,"deletions":10,"files":["jc/parsers/asciitable_m.py"]},"message":"working","epoch":1647647603,"epoch_utc":null},{"commit":"70fafbf3f80f35c5db2c306978b2a488adad40bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 18 14:19:00 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"remove asciitable so tests pass for now","epoch":1647638340,"epoch_utc":null},{"commit":"5a248a8fc58952a5eab3d4aac025d7422ba82d08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 18 13:05:57 2022 -0700","stats":{"files_changed":1,"insertions":344,"deletions":0,"files":["jc/parsers/asciitable_m.py"]},"message":"add multiline asciitable parser","epoch":1647633957,"epoch_utc":null},{"commit":"4a3a4e10df8a552a4db3510640695f02b166dc40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 18 13:03:43 2022 -0700","stats":{"files_changed":1,"insertions":3,"deletions":4,"files":["jc/lib.py"]},"message":"add asciitable and asciitable-m parsers","epoch":1647633823,"epoch_utc":null},{"commit":"c27bd5ff39f21c6377e661d4d7de1200d2fdd72f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 17 16:24:18 2022 -0700","stats":{"files_changed":1,"insertions":23,"deletions":16,"files":["jc/parsers/universal.py"]},"message":"pad lines in sparse_table_parse and use str.isspace()","epoch":1647559458,"epoch_utc":null},{"commit":"f804c9627fb71341429ca80aec2887e23e0277db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 15 16:04:58 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/universal.py"]},"message":"copy input list so we don't mutate the caller's data","epoch":1647385498,"epoch_utc":null},{"commit":"3ab25d02f9dc248706aa1105e1766b2a84bc55a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 12:30:09 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"use _parser_is_streaming from lib","epoch":1647286209,"epoch_utc":null},{"commit":"9e80fd2b97b9bfe38fdaa6acdf2e8ed26d34b49d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 12:17:18 2022 -0700","stats":{"files_changed":2,"insertions":15,"deletions":11,"files":["jc/cli.py","jc/lib.py"]},"message":"fallback if info and doc items don't exist","epoch":1647285438,"epoch_utc":null},{"commit":"ff9527a098a94c996641fb3fe2f905c8ae5e3063","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 11:35:57 2022 -0700","stats":{"files_changed":1,"insertions":9,"deletions":13,"files":["jc/cli.py"]},"message":"import cleanup and use all_parser_info in parsers_text","epoch":1647282957,"epoch_utc":null},{"commit":"7dac2f8dc3baf619105e3c6ca4d3e45300b86287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 10:50:10 2022 -0700","stats":{"files_changed":3,"insertions":23,"deletions":9,"files":["docs/lib.md","docs/readme.md","man/jc.1"]},"message":"doc update","epoch":1647280210,"epoch_utc":null},{"commit":"32e4d55e86c3e7d94488ec69f13a4f6400c4cef3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 10:46:54 2022 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"]},"message":"use parser_info for help_doc","epoch":1647280014,"epoch_utc":null},{"commit":"f9a9062147256d0949457cc7fde838f87202524d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 10:46:23 2022 -0700","stats":{"files_changed":3,"insertions":27,"deletions":10,"files":["CHANGELOG","jc/__init__.py","jc/lib.py"]},"message":"add documentation argument to parser_info and all_parser_info","epoch":1647279983,"epoch_utc":null},{"commit":"89e5919796f7da585285901dca461aae21336415","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 09:56:50 2022 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/mpstat_s.md","jc/parsers/mpstat_s.py"]},"message":"add -A to second example","epoch":1647277010,"epoch_utc":null},{"commit":"e5f5b2591d8ac3abeb9571688c7fb8de34d647f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 09:45:17 2022 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update","epoch":1647276317,"epoch_utc":null},{"commit":"77c667eec045daff5cbd062fe9d6e83f237727e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 09:43:18 2022 -0700","stats":{"files_changed":9,"insertions":67,"deletions":6,"files":["docs/parsers/mpstat.md","docs/parsers/mpstat_s.md","jc/parsers/mpstat.py","jc/parsers/mpstat_s.py","tests/fixtures/ubuntu-18.04/mpstat-A-streaming.json","tests/fixtures/ubuntu-18.04/mpstat-A.json","tests/fixtures/ubuntu-18.04/mpstat-A.out","tests/test_mpstat.py","tests/test_mpstat_s.py"]},"message":"ubuntu fixes","epoch":1647276198,"epoch_utc":null},{"commit":"b257ce8c2fe6825fe435b4d04b4184091030db10","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 13 12:25:50 2022 -0700","stats":{"files_changed":4,"insertions":65,"deletions":0,"files":[".../centos-7.7/mpstat-A-2-5-streaming.json","tests/fixtures/centos-7.7/mpstat-A-streaming.json","tests/fixtures/centos-7.7/mpstat-streaming.json","tests/test_mpstat_s.py"]},"message":"add mpstat_s tests","epoch":1647199550,"epoch_utc":null},{"commit":"c693c868cacbcd81f44fd383719723dd7a137c87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 15:59:38 2022 -0800","stats":{"files_changed":7,"insertions":352,"deletions":0,"files":["README.md","docs/parsers/mpstat.md","docs/parsers/mpstat_s.md","jc/lib.py","jc/parsers/mpstat.py","jc/parsers/mpstat_s.py","man/jc.1"]},"message":"add mpstat streaming parser","epoch":1647043178,"epoch_utc":null},{"commit":"6f98b27a05d6e1f7571a97316b193f096521b959","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 15:33:31 2022 -0800","stats":{"files_changed":7,"insertions":168,"deletions":0,"files":["tests/fixtures/centos-7.7/mpstat-A-2-5.json","tests/fixtures/centos-7.7/mpstat-A-2-5.out","tests/fixtures/centos-7.7/mpstat-A.json","tests/fixtures/centos-7.7/mpstat-A.out","tests/fixtures/centos-7.7/mpstat.json","tests/fixtures/centos-7.7/mpstat.out","tests/test_mpstat.py"]},"message":"add mpstat tests","epoch":1647041611,"epoch_utc":null},{"commit":"d7efd25d88a8f489564ce48223845a16e4ab1cc7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 14:54:06 2022 -0800","stats":{"files_changed":4,"insertions":207,"deletions":1,"files":["EXAMPLES.md","README.md","docs/parsers/mpstat.md","man/jc.1"]},"message":"add mpstat to docs","epoch":1647039246,"epoch_utc":null},{"commit":"2cddb1f0bb497be0be071cdcb56bf49d2dafc920","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 14:00:19 2022 -0800","stats":{"files_changed":1,"insertions":94,"deletions":15,"files":["jc/parsers/mpstat.py"]},"message":"working mpstat","epoch":1647036019,"epoch_utc":null},{"commit":"ae1c331595dd857d8ae7f8cf93daee1b26be2c3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 13:15:39 2022 -0800","stats":{"files_changed":1,"insertions":30,"deletions":5,"files":["jc/parsers/mpstat.py"]},"message":"initial working version","epoch":1647033339,"epoch_utc":null},{"commit":"bc97052ed4ee3bf3f25127968139f2e89a659fe3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 12:37:17 2022 -0800","stats":{"files_changed":3,"insertions":109,"deletions":0,"files":["CHANGELOG","jc/lib.py","jc/parsers/mpstat.py"]},"message":"initial add mpstat parser","epoch":1647031037,"epoch_utc":null},{"commit":"6c3e0e2aa0e8cc375d9f7473930b18957d33f1aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 12:37:01 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"formatting","epoch":1647031021,"epoch_utc":null},{"commit":"dd052e01469e9e3328f7326d3591365a8e7322eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 10:25:24 2022 -0800","stats":{"files_changed":2,"insertions":26,"deletions":24,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"add underscores to column examples","epoch":1647023124,"epoch_utc":null},{"commit":"54e8f58145f6c4332fbd375d112259ea7abb2d72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 16:50:55 2022 -0800","stats":{"files_changed":2,"insertions":28,"deletions":2,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"add table result examples","epoch":1646959855,"epoch_utc":null},{"commit":"def7aa5764e69cd0cf2c5b70aa62c62023f76c9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 15:36:11 2022 -0800","stats":{"files_changed":2,"insertions":16,"deletions":16,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"formatting","epoch":1646955371,"epoch_utc":null},{"commit":"6986c74f6dceca907ea2e469a332deeb093a122c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 15:18:27 2022 -0800","stats":{"files_changed":169,"insertions":34,"deletions":837,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/pidstat.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/nmcli.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/pidstat.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/xrandr.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py"]},"message":"remove direct parser module example from doc","epoch":1646954307,"epoch_utc":null},{"commit":"b784db404d0569a4c630eb124b37b0b1d0846453","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 13:32:26 2022 -0800","stats":{"files_changed":17,"insertions":87,"deletions":166,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/pidstat_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/pidstat_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"]},"message":"streaming doc formatting update","epoch":1646947946,"epoch_utc":null},{"commit":"8aee4517bb4c2eebdd9873f7eb0827cd33b85519","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 13:02:50 2022 -0800","stats":{"files_changed":2,"insertions":12,"deletions":26,"files":["docs/parsers/pidstat_s.md","jc/parsers/pidstat_s.py"]},"message":"doc formatting","epoch":1646946170,"epoch_utc":null},{"commit":"a5fb8fbf94b3b80bef82f078ad6582260b13e374","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 10:10:57 2022 -0800","stats":{"files_changed":17,"insertions":164,"deletions":148,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/pidstat_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/pidstat_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"]},"message":"streaming doc update","epoch":1646935857,"epoch_utc":null},{"commit":"b9365e2ac28c3eacf53bc101857f7f1d7286ec20","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 09:23:36 2022 -0800","stats":{"files_changed":4,"insertions":74,"deletions":0,"files":[".../centos-7.7/pidstat-hdlrsuw-2-5-streaming.json",".../centos-7.7/pidstat-hdlrsuw-streaming.json",".../fixtures/centos-7.7/pidstat-hl-streaming.json","tests/test_pidstat_s.py"]},"message":"add pidstat-s tests","epoch":1646933016,"epoch_utc":null},{"commit":"696338c1a3d462afbe677a6f2ebe08d06ef4046a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 09:04:12 2022 -0800","stats":{"files_changed":1,"insertions":38,"deletions":0,"files":["tests/_test_foo_s.py"]},"message":"add streaming test template","epoch":1646931852,"epoch_utc":null},{"commit":"4f0616190bb842411353d65650b78a65d8cbdc28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 08:14:58 2022 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","man/jc.1"]},"message":"doc update","epoch":1646928898,"epoch_utc":null},{"commit":"3278cb0de301ee542b1fe8245a6c359193373b6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 08:14:46 2022 -0800","stats":{"files_changed":2,"insertions":15,"deletions":10,"files":["docs/parsers/arp.md","jc/parsers/arp.py"]},"message":"add type hints","epoch":1646928886,"epoch_utc":null},{"commit":"4fc04256a567c502a88ac8a1bd189746387c93f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 08:00:37 2022 -0800","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["jc/parsers/foo_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"]},"message":"rollback noReturn to tuple","epoch":1646928037,"epoch_utc":null},{"commit":"e4ae0fea63c0386c1b3239607fd6a58738d23633","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 16:28:55 2022 -0800","stats":{"files_changed":5,"insertions":8,"deletions":8,"files":["docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","jc/parsers/foo_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"]},"message":"fix type annotation","epoch":1646872135,"epoch_utc":null},{"commit":"d3727ea0906d6167aa48c340519242b010469d98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 16:09:35 2022 -0800","stats":{"files_changed":4,"insertions":99,"deletions":1,"files":["CHANGELOG","README.md","docs/parsers/pidstat_s.md","man/jc.1"]},"message":"doc update","epoch":1646870975,"epoch_utc":null},{"commit":"0d13909cf63d14008607c5640d074ab4073115e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 16:07:29 2022 -0800","stats":{"files_changed":2,"insertions":168,"deletions":0,"files":["jc/lib.py","jc/parsers/pidstat_s.py"]},"message":"add pidstat-s parser","epoch":1646870849,"epoch_utc":null},{"commit":"c52ca20e285895d2afb685a2a5ca275de7901033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 16:07:17 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/pidstat.py"]},"message":"fix comment","epoch":1646870837,"epoch_utc":null},{"commit":"21f27f26c81c75234221a5193c7d3903323e2032","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 15:37:10 2022 -0800","stats":{"files_changed":4,"insertions":72,"deletions":0,"files":["tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.json","tests/fixtures/centos-7.7/pidstat-hdlrsuw.json","tests/fixtures/centos-7.7/pidstat-hl.json","tests/test_pidstat.py"]},"message":"add pidstat tests","epoch":1646869030,"epoch_utc":null},{"commit":"5e7a87f39782d12070a895440ff541800df91b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 15:37:04 2022 -0800","stats":{"files_changed":1,"insertions":35,"deletions":0,"files":["tests/_test_foo.py"]},"message":"add test template","epoch":1646869024,"epoch_utc":null},{"commit":"845d763829acd03fff1d2fad6e9691f04bd1a2aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 15:09:22 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/pidstat.md","jc/parsers/pidstat.py"]},"message":"format docs to fit 80 columns","epoch":1646867362,"epoch_utc":null},{"commit":"f5c7d52ec72f5ff4b77d5ac4491f330575b9f10f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 14:43:56 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":10,"files":["man/jc.1","templates/manpage_template"]},"message":"formatting","epoch":1646865836,"epoch_utc":null},{"commit":"c3198a58744803f52113f80967c7259d781e2328","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 14:17:48 2022 -0800","stats":{"files_changed":2,"insertions":22,"deletions":12,"files":["man/jc.1","templates/manpage_template"]},"message":"formatting","epoch":1646864268,"epoch_utc":null},{"commit":"bbd4afa73542ba6596aed77426bb494fbcf23196","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 14:09:58 2022 -0800","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["README.md","man/jc.1"]},"message":"add pidstat to docs","epoch":1646863798,"epoch_utc":null},{"commit":"ae754a84bf5fc35b248bbc5f7b0fa8e871765819","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 14:06:34 2022 -0800","stats":{"files_changed":3,"insertions":263,"deletions":33,"files":["docs/parsers/arp.md","docs/parsers/pidstat.md","jc/parsers/pidstat.py"]},"message":"doc update","epoch":1646863594,"epoch_utc":null},{"commit":"3389eb5debe0f0ba01ece01e20048608bf357e70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 13:18:04 2022 -0800","stats":{"files_changed":4,"insertions":219,"deletions":9,"files":["jc/parsers/pidstat.py","tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.out","tests/fixtures/centos-7.7/pidstat-hdlrsuw.out","tests/fixtures/centos-7.7/pidstat-hl.out"]},"message":"initial working parser","epoch":1646860684,"epoch_utc":null},{"commit":"01f2c1e71f87ab401d487be4d6d150cb67c91437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 12:13:32 2022 -0800","stats":{"files_changed":5,"insertions":162,"deletions":2,"files":["CHANGELOG","jc/lib.py","jc/parsers/pidstat.py","setup.py","tests/fixtures/centos-7.7/pidstat.out"]},"message":"add pidstat parser","epoch":1646856812,"epoch_utc":null},{"commit":"8bfbf8f1bcd233a8ecd34012e140eb29164ca5fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 12:13:07 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"simplify error message","epoch":1646856787,"epoch_utc":null},{"commit":"f4242669bac3af5eb196c46d4146823aacec40ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 10:52:40 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":10,"files":["jc/parsers/arp.py"]},"message":"minor cleanup","epoch":1646851960,"epoch_utc":null},{"commit":"bebd9331f1fb9b80f8cb4a5cfacd68461743004e","merge":"9861983 ac61e9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 18:49:01 2022 +0000","message":"Merge pull request #211 from kellyjonbrazil/master\n\nsync to dev","epoch":1646880541,"epoch_utc":1646851741},{"commit":"ac61e9ad2c9c4e864db02db04cbf907fb0efd99b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 8 13:21:05 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add pypi link","epoch":1646774465,"epoch_utc":null},{"commit":"648ef4d8a9c33a36d4bb2c135fe59b031de8f24c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 8 13:19:20 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"update badge links","epoch":1646774360,"epoch_utc":null},{"commit":"727fc9a701e9aae75d3d2b708010da1d0dc8781a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 15:19:25 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/date.md","man/jc.1"]},"message":"doc update","epoch":1646522365,"epoch_utc":null},{"commit":"306512d6bb53af18516fc10b15c7ec79cb02cc98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 15:13:47 2022 -0800","stats":{"files_changed":4,"insertions":7,"deletions":4,"files":["CHANGELOG","jc/lib.py","jc/parsers/date.py","setup.py"]},"message":"force AM/PM to uppercase in date parser","epoch":1646522027,"epoch_utc":null},{"commit":"6afb1d389ca9dfd7880386d380fee032b7eb92e2","merge":"961968a 9861983","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 21:49:36 2022 +0000","message":"Merge pull request #209 from kellyjonbrazil/dev\n\nDev v1.18.4","epoch":1646545776,"epoch_utc":1646516976},{"commit":"98619834818c181cb50a9605fe166b6153c46095","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 13:45:28 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"doc update","epoch":1646516728,"epoch_utc":null},{"commit":"ca79053db08542849136ae13fdb4d1d90b79a7e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 12:15:47 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docgen.sh"]},"message":"document pydoc version","epoch":1646511347,"epoch_utc":null},{"commit":"29c263f87810f8566ebdad2358e99896391adfd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 12:15:14 2022 -0800","stats":{"files_changed":93,"insertions":115,"deletions":115,"files":["docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/streaming.md","docs/utils.md"]},"message":"pydoc formatting fixes","epoch":1646511314,"epoch_utc":null},{"commit":"128c3c170abc6a702ae044b073fb9d992d4262b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 16:38:49 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"doc update","epoch":1646440729,"epoch_utc":null},{"commit":"a531ab8864fca27b55d83b55055eaef1c36128cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 16:35:06 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting","epoch":1646440506,"epoch_utc":null},{"commit":"0c1be7cc11ec75a5738483d68d053e702eb34fc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 16:29:36 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":18,"files":["README.md","templates/readme_template"]},"message":"reduce dig example size","epoch":1646440176,"epoch_utc":null},{"commit":"e4222b45f54e6179e22d7924c083e4642b9974ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 16:24:13 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/lib.py"]},"message":"fix names to mod names","epoch":1646439853,"epoch_utc":null},{"commit":"ac32c69c31e8eff22252d7aded08f6cb14622086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 13:35:16 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"formatting","epoch":1646429716,"epoch_utc":null},{"commit":"cb2dfeac8d44b733ad9d364e8c6d233a381bfae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 13:27:39 2022 -0800","stats":{"files_changed":199,"insertions":334,"deletions":326,"files":["README.md","docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/streaming.md","docs/utils.md","jc/__init__.py","jc/cli.py","jc/exceptions.py","jc/lib.py","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat_freebsd_osx.py","jc/parsers/netstat_linux.py","jc/parsers/nmcli.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/xrandr.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py","jc/streaming.py","jc/utils.py","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"change name to JSON Convert","epoch":1646429259,"epoch_utc":null},{"commit":"9a3602e70b865a3015bd700b30d1076e17511a9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 08:57:11 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/lib.md","jc/lib.py"]},"message":"doc update","epoch":1646413031,"epoch_utc":null},{"commit":"a9f53ee258e18bc90934e263d8dc96feee84e939","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 3 17:50:19 2022 -0800","stats":{"files_changed":2,"insertions":15,"deletions":4,"files":["jc/cli.py","jc/lib.py"]},"message":"optimize streaming parser detection in cli","epoch":1646358619,"epoch_utc":null},{"commit":"6be3d3d98222a262c5138bb09f2951ccfab96110","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 3 17:38:47 2022 -0800","stats":{"files_changed":3,"insertions":43,"deletions":1,"files":["CHANGELOG","docs/lib.md","docs/readme.md"]},"message":"doc update","epoch":1646357927,"epoch_utc":null},{"commit":"e49df7208377ab34a74240a06f35f17fee4b8203","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 3 17:37:01 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"use streaming parser list to find streaming parsers","epoch":1646357821,"epoch_utc":null},{"commit":"7ede7be7bf7b1a7d29d158b3b21c20fff4990e72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 3 17:36:40 2022 -0800","stats":{"files_changed":2,"insertions":42,"deletions":0,"files":["jc/__init__.py","jc/lib.py"]},"message":"add standard and streaming list functions","epoch":1646357800,"epoch_utc":null},{"commit":"4758e28a36e2a55497e4f722d386a6b5cc30dc4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 2 15:24:18 2022 -0800","stats":{"files_changed":2,"insertions":20,"deletions":16,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting","epoch":1646263458,"epoch_utc":null},{"commit":"4a1ee151b3cb054d84cd964fd62f5855f765751d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 2 10:57:09 2022 -0800","stats":{"files_changed":2,"insertions":9,"deletions":11,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py"]},"message":"add dhcp6 options to docs","epoch":1646247429,"epoch_utc":null},{"commit":"8c8afc1a922e3c30fcf501d169b33a68b65cd3e0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 2 10:15:01 2022 -0800","stats":{"files_changed":2,"insertions":60,"deletions":24,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting","epoch":1646244901,"epoch_utc":null},{"commit":"ed205f7720d98c225c917c252ed7a6c9e6e8c2b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 28 12:55:05 2022 -0800","stats":{"files_changed":3,"insertions":9,"deletions":9,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py","man/jc.1"]},"message":"doc update","epoch":1646081705,"epoch_utc":null},{"commit":"d65f7ae992abc33140c00714d442290103661757","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 28 12:26:06 2022 -0800","stats":{"files_changed":1,"insertions":41,"deletions":0,"files":["EXAMPLES.md"]},"message":"add nmcli","epoch":1646079966,"epoch_utc":null},{"commit":"e2ffef57b9a474048fe72cf42aebfa6bfaf2e42b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 28 12:20:39 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_nmcli.py"]},"message":"fix test","epoch":1646079639,"epoch_utc":null},{"commit":"002caa9fb3b65f1ae64df25cc39c3de130403e76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 28 12:19:02 2022 -0800","stats":{"files_changed":7,"insertions":252,"deletions":0,"files":[".../fedora32/nmcli-connection-show-ens33.json",".../fedora32/nmcli-connection-show-ens33.out",".../fixtures/fedora32/nmcli-device-show-ens33.json",".../fixtures/fedora32/nmcli-device-show-ens33.out","tests/fixtures/fedora32/nmcli-device-show.json","tests/fixtures/fedora32/nmcli-device-show.out","tests/test_nmcli.py"]},"message":"add fedora tests","epoch":1646079542,"epoch_utc":null},{"commit":"b7c6faf3daf8eb0c42a222778baa440c5a018c75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 25 11:23:20 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"enhance error message","epoch":1645817000,"epoch_utc":null},{"commit":"554ca61d1764b81dea06b6b013d0444072f0662a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 25 11:19:20 2022 -0800","stats":{"files_changed":11,"insertions":165,"deletions":0,"files":[".../fixtures/centos-7.7/nmcli-connection-all.json",".../centos-7.7/nmcli-connection-show-ens33.json","tests/fixtures/centos-7.7/nmcli-connection.json","tests/fixtures/centos-7.7/nmcli-device-all.json",".../centos-7.7/nmcli-device-show-ens33.json",".../fixtures/centos-7.7/nmcli-device-show-lo.json","tests/fixtures/centos-7.7/nmcli-device-show.json","tests/fixtures/centos-7.7/nmcli-device.json","tests/fixtures/centos-7.7/nmcli-general-all.json",".../centos-7.7/nmcli-general-permissions.json","tests/test_nmcli.py"]},"message":"add tests","epoch":1645816760,"epoch_utc":null},{"commit":"7b9722d255a16981099dc803beda7abe0d46106a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 21:21:02 2022 -0800","stats":{"files_changed":2,"insertions":26,"deletions":34,"files":["man/jc.1","templates/manpage_template"]},"message":"fix formatting","epoch":1645766462,"epoch_utc":null},{"commit":"5505bde8ef77db0885f08d8d04160cbc4418dd67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:53:54 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/zipinfo.md"]},"message":"doc update","epoch":1645764834,"epoch_utc":null},{"commit":"dbcd9a4060647be24bca2a8d577f11925a9ac210","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:52:28 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/zipinfo.py"]},"message":"bump version to 1.0","epoch":1645764748,"epoch_utc":null},{"commit":"4bdeb2b3aa063c2772f5c44e52acbe16e915cc3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:52:18 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/xrandr.py"]},"message":"simplify warning message","epoch":1645764738,"epoch_utc":null},{"commit":"6ae1d03187c6d4b669f6f74db1be7c9cf07adaed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:47:15 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py"]},"message":"doc fix","epoch":1645764435,"epoch_utc":null},{"commit":"f75b06abe4af152be094f8bc1ba5ce66b25e35e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:43:20 2022 -0800","stats":{"files_changed":4,"insertions":180,"deletions":3,"files":["README.md","docs/parsers/nmcli.md","jc/parsers/nmcli.py","man/jc.1"]},"message":"doc update","epoch":1645764200,"epoch_utc":null},{"commit":"1923925710dadc4116202855ae884ef18394d428","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:35:00 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["CHANGELOG"]},"message":"update changelog","epoch":1645763700,"epoch_utc":null},{"commit":"2c5c57ae04df3b7abfb1c3423c3350c7c2ab5dcd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:33:10 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/lib.py","setup.py"]},"message":"version bump","epoch":1645763590,"epoch_utc":null},{"commit":"f4d11d697e000135720a971edf84dcad31a1bec8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:31:58 2022 -0800","stats":{"files_changed":1,"insertions":155,"deletions":15,"files":["jc/parsers/nmcli.py"]},"message":"finish use cases and doc","epoch":1645763518,"epoch_utc":null},{"commit":"7f409b7082aa9525cc9280e3c5c92bc82089cf14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:31:09 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"enhance ParseError cli message","epoch":1645763469,"epoch_utc":null},{"commit":"937fa5aad2519f588c6d0feb8f08211f6b99872f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 18:22:19 2022 -0800","stats":{"files_changed":1,"insertions":20,"deletions":0,"files":["jc/parsers/nmcli.py"]},"message":"split dhcp options","epoch":1645755739,"epoch_utc":null},{"commit":"19dcef513565c34a31f6d735577da5e25f9bd2cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 17:10:39 2022 -0800","stats":{"files_changed":1,"insertions":69,"deletions":2,"files":["jc/parsers/nmcli.py"]},"message":"firm up flow. add/remove text. parse routes","epoch":1645751439,"epoch_utc":null},{"commit":"3d01356461eb2790f859968da7f5cb4fd2ee9898","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 14:53:26 2022 -0800","stats":{"files_changed":1,"insertions":27,"deletions":3,"files":["jc/parsers/nmcli.py"]},"message":"add text_kv function","epoch":1645743206,"epoch_utc":null},{"commit":"2d6f666fa4c791e7995f6b0c1490dac73ce224c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 12:21:13 2022 -0800","stats":{"files_changed":1,"insertions":61,"deletions":16,"files":["jc/parsers/nmcli.py"]},"message":"add dev show and conn show parsers","epoch":1645734073,"epoch_utc":null},{"commit":"4dda895f122ecc19b267ed1485cf656bae76ff07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 11:25:14 2022 -0800","stats":{"files_changed":13,"insertions":404,"deletions":0,"files":["jc/lib.py","jc/parsers/nmcli.py","tests/fixtures/centos-7.7/nmcli-connection-all.out",".../centos-7.7/nmcli-connection-show-ens33.out","tests/fixtures/centos-7.7/nmcli-connection.out","tests/fixtures/centos-7.7/nmcli-device-all.out",".../centos-7.7/nmcli-device-show-ens33.out","tests/fixtures/centos-7.7/nmcli-device-show-lo.out","tests/fixtures/centos-7.7/nmcli-device-show.out","tests/fixtures/centos-7.7/nmcli-device.out","tests/fixtures/centos-7.7/nmcli-general-all.out",".../centos-7.7/nmcli-general-permissions.out","tests/fixtures/centos-7.7/nmcli.out"]},"message":"initial nmcli parser","epoch":1645730714,"epoch_utc":null},{"commit":"52617b1722ba2f089716b069f78f70a865430d61","merge":"3afaa48 961968a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 21 16:35:12 2022 +0000","message":"Merge pull request #208 from kellyjonbrazil/master\n\nsync to dev","epoch":1645490112,"epoch_utc":1645461312},{"commit":"961968a0fcaf37b64bc850c4945ba4b805a1fe54","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 15:14:22 2022 -0800","stats":{"files_changed":2,"insertions":26,"deletions":23,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"fix schema","epoch":1644880462,"epoch_utc":null},{"commit":"f026a788e5ca1231927e71fdbb1dadb2365a6518","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 11:30:03 2022 -0800","stats":{"files_changed":1,"insertions":62,"deletions":0,"files":["EXAMPLES.md"]},"message":"add xrandr example","epoch":1644867003,"epoch_utc":null},{"commit":"2f7c03eb35520be916c28a687031f8c6425839ba","merge":"681176e 3afaa48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 10:36:08 2022 -0800","message":"Merge pull request #207 from kellyjonbrazil/dev\n\nDev v1.18.3","epoch":1644863768,"epoch_utc":null},{"commit":"3afaa48eee081e28262d1762c5ec23d318012822","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 10:31:41 2022 -0800","stats":{"files_changed":15,"insertions":15,"deletions":15,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"]},"message":"doc update","epoch":1644863501,"epoch_utc":null},{"commit":"3201452564fb0fb44ef9cc32217339370bd2521e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 10:06:09 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"add -p to example","epoch":1644861969,"epoch_utc":null},{"commit":"7ee1e34fc71c0dbc08ba482b787d560fd5125f64","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 10:03:52 2022 -0800","stats":{"files_changed":2,"insertions":116,"deletions":4,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"doc update","epoch":1644861832,"epoch_utc":null},{"commit":"67dbf050161201f5016899591e81ab6253ac2322","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 09:58:31 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"add type annotations","epoch":1644861511,"epoch_utc":null},{"commit":"4ac9f2e3dad4e7bd270bf5a8e61b729838b2c89c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 09:37:37 2022 -0800","stats":{"files_changed":5,"insertions":10,"deletions":17,"files":["CHANGELOG","docs/parsers/rsync.md","docs/parsers/rsync_s.md","jc/parsers/rsync.py","jc/parsers/rsync_s.py"]},"message":"doc update","epoch":1644860257,"epoch_utc":null},{"commit":"3f5f6e39a777ef524cb3a06a01321bb8c31d930d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 09:20:16 2022 -0800","stats":{"files_changed":2,"insertions":100,"deletions":98,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"formatting","epoch":1644859216,"epoch_utc":null},{"commit":"4723db8e3cc4946b14c83b25d6e8c6d2309aa72e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 09:14:46 2022 -0800","stats":{"files_changed":8,"insertions":195,"deletions":77,"files":["README.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/xrandr.md","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/xrandr.py","man/jc.1"]},"message":"doc updates","epoch":1644858886,"epoch_utc":null},{"commit":"ca914ec77d1fc77e42860189e62ac2fb203d4931","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 09:14:38 2022 -0800","stats":{"files_changed":1,"insertions":11,"deletions":2,"files":["tests/test_xrandr.py"]},"message":"add nodata test","epoch":1644858878,"epoch_utc":null},{"commit":"dcc7f3f357ef016b4583fc1320fd2394788f271f","merge":"184ef3a cbdc666","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Feb 13 17:45:53 2022 -0800","message":"Merge pull request #204 from lyterk/xrandr\n\nNew parser: xrandr","epoch":1644803153,"epoch_utc":null},{"commit":"cbdc66623671da335eafe132b7af79f884856f1d","author":"Kevin Lyter","author_email":"lyterk@sent.com","date":"Wed Feb 9 21:50:07 2022 -0800","stats":{"files_changed":3,"insertions":2,"deletions":30,"files":["jc/parsers/xrandr.py",".../{simple_xrandr.json => xrandr_simple.json}",".../{simple_xrandr.out => xrandr_simple.out}"]},"message":"Return empty object if no results and filenames\n\n- If no results are returned, return {} instead of {\"screens\": [],\n\"unassociated_devices\": []}\n- simple_xrandr -> xrandr_simple","epoch":1644472207,"epoch_utc":null},{"commit":"184ef3a1faeb406ce62076cff637ee86d61541fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 8 14:45:33 2022 -0800","stats":{"files_changed":3,"insertions":11,"deletions":3,"files":["docs/parsers/rsync.md","docs/parsers/rsync_s.md","man/jc.1"]},"message":"doc update","epoch":1644360333,"epoch_utc":null},{"commit":"c732f759445e335fe36586859b6fde7e27bb8901","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 8 14:43:14 2022 -0800","stats":{"files_changed":2,"insertions":10,"deletions":2,"files":["jc/parsers/rsync.py","jc/parsers/rsync_s.py"]},"message":"doc update","epoch":1644360194,"epoch_utc":null},{"commit":"7a1ae4f5fc5328c32bf77235cfbd9f83ec995053","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 8 13:32:22 2022 -0800","stats":{"files_changed":3,"insertions":105,"deletions":0,"files":["tests/{test_lib.py => test_jc_lib.py}","tests/test_jc_streaming.py","tests/{test_utils.py => test_jc_utils.py}"]},"message":"add library tests","epoch":1644355942,"epoch_utc":null},{"commit":"d04bc3757c482ec9062b2da91ded76c5dd6d106b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 8 07:33:26 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add xrandr","epoch":1644334406,"epoch_utc":null},{"commit":"73e8391653145412cd852aca349466018c8b9084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 16:58:06 2022 -0800","stats":{"files_changed":1,"insertions":8,"deletions":3,"files":["jc/utils.py"]},"message":"formatting","epoch":1644281886,"epoch_utc":null},{"commit":"f6c1463c1578db264ccb3d4c2677857ed906e965","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 16:31:43 2022 -0800","stats":{"files_changed":1,"insertions":44,"deletions":24,"files":["jc/cli.py"]},"message":"formatting","epoch":1644280303,"epoch_utc":null},{"commit":"d392c7f901a9d7c57617fbd03bd3f88ee0bf4132","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 15:44:54 2022 -0800","stats":{"files_changed":12,"insertions":20,"deletions":13,"files":["docs/parsers/date.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/ls.md","docs/parsers/rpm_qi.md","docs/parsers/stat.md","docs/parsers/systeminfo.md","docs/parsers/timedatectl.md","docs/parsers/upower.md","docs/parsers/vmstat.md","docs/parsers/who.md","docs/utils.md"]},"message":"doc update","epoch":1644277494,"epoch_utc":null},{"commit":"d0387f58205b2fd9b9860ce9656bb29ceec54340","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 15:44:46 2022 -0800","stats":{"files_changed":16,"insertions":34,"deletions":29,"files":["jc/parsers/date.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/systeminfo.py","jc/parsers/timedatectl.py","jc/parsers/upower.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/who.py"]},"message":"add timestamp format hints for better performance","epoch":1644277486,"epoch_utc":null},{"commit":"76f92908a3ba9cbadcc8e972afa8b1c4a69509bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 15:43:24 2022 -0800","stats":{"files_changed":1,"insertions":44,"deletions":9,"files":["jc/utils.py"]},"message":"add format hints for performance optimization","epoch":1644277404,"epoch_utc":null},{"commit":"1a115da67bdce9acfefbfb71fbac37e234b1babd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 08:34:34 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"add lru_cache maxsize for python 3.7 support","epoch":1644251674,"epoch_utc":null},{"commit":"f0a37ccf301eee5133a83b5dd96986fef0c38e7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 08:30:11 2022 -0800","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/utils.py"]},"message":"use lru_cache for significant performance boost to timestamp","epoch":1644251411,"epoch_utc":null},{"commit":"f331f53a531169520a4d8ea15d277560a49aedb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 08:06:48 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["CHANGELOG","jc/utils.py"]},"message":"use !r formatting instead of quotes","epoch":1644250008,"epoch_utc":null},{"commit":"8611aff06b18212b7292d564beb27a2062fc3f41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 06:42:35 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/parsers/rsync_s.md","jc/parsers/rsync_s.py"]},"message":"add examples","epoch":1644244955,"epoch_utc":null},{"commit":"2f3f78e8d35a0ccccde0f84417400acdfe7fe0aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 06:29:17 2022 -0800","stats":{"files_changed":16,"insertions":194,"deletions":185,"files":["docgen.sh","docs/parsers/rsync_s.md","docs/readme.md","docs/streaming.md","docs/utils.md","jc/__init__.py","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/streaming.py","man/jc.1"]},"message":"refine streaming parsers","epoch":1644244157,"epoch_utc":null},{"commit":"d1e0ee6123dfecd48d074cb7a40e98a15b6adcb9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Feb 6 08:56:18 2022 -0800","stats":{"files_changed":1,"insertions":6,"deletions":8,"files":["jc/parsers/ping_s.py"]},"message":"use new streaming functions","epoch":1644166578,"epoch_utc":null},{"commit":"45314c98083067f1f6fae9c477c99fabec223f29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Feb 6 08:55:42 2022 -0800","stats":{"files_changed":2,"insertions":112,"deletions":102,"files":["jc/streaming.py","jc/utils.py"]},"message":"move some functions to streaming","epoch":1644166542,"epoch_utc":null},{"commit":"df00945b46e27e10107f48d186eedf80b55bd40e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 4 16:03:44 2022 -0800","stats":{"files_changed":6,"insertions":59,"deletions":49,"files":["jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py"]},"message":"move try/except inside for loop","epoch":1644019424,"epoch_utc":null},{"commit":"fda0050d867bcbe4f1d7e024b08e9881d0f57735","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 4 14:39:45 2022 -0800","stats":{"files_changed":13,"insertions":191,"deletions":0,"files":[".../centos-7.7/rsync-i-logfile-streaming.json","tests/fixtures/centos-7.7/rsync-i-streaming.json",".../centos-7.7/rsync-i-v-logfile-streaming.json",".../centos-7.7/rsync-i-vv-logfile-streaming.json",".../rsync-i-vvv-logfile-nochange-streaming.json",".../centos-7.7/rsync-i-vvv-logfile-streaming.json",".../centos-7.7/rsync-ivvv-nochange-streaming.json",".../fixtures/centos-7.7/rsync-ivvv-streaming.json","tests/fixtures/generic/rsync-i-streaming.json",".../rsync-i-vvv-logfile-nochange-streaming.json",".../rsync-i-vvv-nochange-streaming.json",".../osx-10.14.6/rsync-i-vvv-streaming.json","tests/test_rsync_s.py"]},"message":"add rsync-s tests","epoch":1644014385,"epoch_utc":null},{"commit":"a76d46f9ecb1eff4d6cc7ad633c97cec0e99001a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 4 12:14:16 2022 -0800","stats":{"files_changed":19,"insertions":110,"deletions":109,"files":["CHANGELOG","docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","docs/utils.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/utils.py","man/jc.1"]},"message":"refactor ignore_exceptions","epoch":1644005656,"epoch_utc":null},{"commit":"6b069a82d0fa19c8d83b19b934bace556cb758d7","author":"Kevin Lyter","author_email":"lyterk@sent.com","date":"Thu Feb 3 18:13:58 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/lib.py"]},"message":"Add xrandr to lib.py","epoch":1643940838,"epoch_utc":null},{"commit":"6b793d052147406f388c4d5dc04f506a3456f409","author":"Kevin Lyter","author_email":"lyterk@sent.com","date":"Thu Feb 3 18:13:11 2022 -0800","stats":{"files_changed":1,"insertions":6,"deletions":11,"files":["jc/parsers/xrandr.py"]},"message":"Clean up types\n\n* | operator => Union[]\n* Remove unused import Iterator\n* Remove comment","epoch":1643940791,"epoch_utc":null},{"commit":"ce9103f7cc666895dc7840d32797d8c7274cf1b8","author":"Kevin Lyter","author_email":"lyterk@sent.com","date":"Thu Feb 3 18:12:46 2022 -0800","stats":{"files_changed":2,"insertions":0,"deletions":287,"files":["templates/xrandr_sample.txt","templates/xrandr_sample_verbose.txt"]},"message":"Delete old files in template folder","epoch":1643940766,"epoch_utc":null},{"commit":"671d6dee36a37317257e09a080849205d301bceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 3 15:47:46 2022 -0800","stats":{"files_changed":8,"insertions":83,"deletions":15,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","docs/utils.md"]},"message":"doc update","epoch":1643932066,"epoch_utc":null},{"commit":"49929c714c2d71a310b1dd95138dbd02f8704138","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 3 15:44:18 2022 -0800","stats":{"files_changed":9,"insertions":139,"deletions":52,"files":["jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/utils.py"]},"message":"add add_jc_meta decorator","epoch":1643931858,"epoch_utc":null},{"commit":"2986771f07de87bfee44dd3bbb4f285e249aad76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 3 09:21:20 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"require python v3.7 and above since v3.6 is now deprecated","epoch":1643908880,"epoch_utc":null},{"commit":"520082d963b93d2bafeff921da3899686b22cadf","author":"Kevin Lyter","author_email":"lyterk@sent.com","date":"Wed Feb 2 18:25:55 2022 -0800","stats":{"files_changed":9,"insertions":968,"deletions":0,"files":["jc/parsers/xrandr.py","templates/xrandr_sample.txt","templates/xrandr_sample_verbose.txt","tests/fixtures/generic/simple_xrandr.json","tests/fixtures/generic/simple_xrandr.out","tests/fixtures/generic/xrandr.out","tests/fixtures/generic/xrandr_2.out","tests/fixtures/generic/xrandr_device.out","tests/test_xrandr.py"]},"message":"New parser: xrandr\n\nTests passing, working as intended in plugin directory","epoch":1643855155,"epoch_utc":null},{"commit":"021e296d457140c32b5256c2b0acf66efc458896","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 17:06:20 2022 -0800","stats":{"files_changed":1,"insertions":104,"deletions":100,"files":["jc/parsers/rsync_s.py"]},"message":"move variable inits and regexes up","epoch":1643850380,"epoch_utc":null},{"commit":"42e56fbcea6db64ea7f7045e7755af492c95aec2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 17:05:53 2022 -0800","stats":{"files_changed":1,"insertions":11,"deletions":12,"files":["jc/parsers/rsync.py"]},"message":"move regex up","epoch":1643850353,"epoch_utc":null},{"commit":"a5b62a4055df37b84751a7cdc14eb6f1ed907cd9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 16:03:14 2022 -0800","stats":{"files_changed":2,"insertions":230,"deletions":18,"files":["docs/parsers/rsync_s.md","jc/parsers/rsync_s.py"]},"message":"add processing and docs","epoch":1643846594,"epoch_utc":null},{"commit":"be98c9b7f6c67e23ea101223934d67bba512e645","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 15:59:12 2022 -0800","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/foo_s.py"]},"message":"simplify try/except by moving outside for loop","epoch":1643846352,"epoch_utc":null},{"commit":"aceeb8450796ae748a4d4abf75643f309d0a42e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 15:58:29 2022 -0800","stats":{"files_changed":3,"insertions":12,"deletions":1,"files":["CHANGELOG","README.md","man/jc.1"]},"message":"doc update","epoch":1643846309,"epoch_utc":null},{"commit":"13910632173e7c815ff1161cf52fd1d17153c4a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 11:49:39 2022 -0800","stats":{"files_changed":2,"insertions":367,"deletions":0,"files":["jc/lib.py","jc/parsers/rsync_s.py"]},"message":"first draft rsync streaming parser","epoch":1643831379,"epoch_utc":null},{"commit":"52157addd0d6dff3bdb34f179ec14b07c8c27ccc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 11:49:24 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/foo_s.py"]},"message":"fix compatible list","epoch":1643831364,"epoch_utc":null},{"commit":"ec0bc6615e22fdc536623e290d88b9725cb6a0ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 19:20:19 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/utils.md","jc/utils.py"]},"message":"formatting","epoch":1643772019,"epoch_utc":null},{"commit":"2f80800e38256b363a4122195ec4aaffebe67d87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 19:06:41 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"simplify all_parser_info comprehension","epoch":1643771201,"epoch_utc":null},{"commit":"3959d3347c8d3e838f8c3158c4db74e2fa2eb856","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 18:33:07 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["docs/lib.md"]},"message":"doc update","epoch":1643769187,"epoch_utc":null},{"commit":"b57d25c69a193d3866ea86a3a34edd67049b198d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 18:30:37 2022 -0800","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/lib.py"]},"message":"clean up return type for parser_info","epoch":1643769037,"epoch_utc":null},{"commit":"63e43a7cabb51c624c962cdcc92a1199f18c77e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 17:57:12 2022 -0800","stats":{"files_changed":7,"insertions":188,"deletions":21,"files":["README.md","docs/lib.md","docs/parsers/rsync.md","docs/parsers/universal.md","docs/parsers/zipinfo.md","docs/utils.md","man/jc.1"]},"message":"doc updates","epoch":1643767032,"epoch_utc":null},{"commit":"21719f9a26c25d896b0a5d49c9d7814175835e16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 17:54:22 2022 -0800","stats":{"files_changed":2,"insertions":18,"deletions":20,"files":["jc/lib.py","jc/utils.py"]},"message":"type annotation updates","epoch":1643766862,"epoch_utc":null},{"commit":"96ec70de4f6178b0669fd9ab47cb303dc45e55c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 17:18:55 2022 -0800","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["jc/parsers/universal.py","jc/utils.py"]},"message":"remove unneeded optional","epoch":1643764735,"epoch_utc":null},{"commit":"a15a1967dc06169ceeda0fd5b4857ce1a351f3d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 17:18:39 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"fix typo","epoch":1643764719,"epoch_utc":null},{"commit":"a10d7566294fe5246e68a16e355ce56dd3557ac5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:49:31 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/universal.py"]},"message":"fixy mypy issues","epoch":1643762971,"epoch_utc":null},{"commit":"0700dc7a64b121cf0243416e2cbb82fcef15f5a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:42:51 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/rsync.py"]},"message":"remove cygwin from compatible","epoch":1643762571,"epoch_utc":null},{"commit":"ca654b214057e19839b89e0d9a66f1110f679c1e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:42:10 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"fix parser order","epoch":1643762530,"epoch_utc":null},{"commit":"4ff3b87c1c96d720f4e7fd39e613944e322cb388","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:18:38 2022 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/rsync.py"]},"message":"remove future field from docstring","epoch":1643761118,"epoch_utc":null},{"commit":"ea244fb7a91f1d1f8ffe0ea6dc10dfe5ab836878","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:17:03 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_rsync.py"]},"message":"formatting","epoch":1643761023,"epoch_utc":null},{"commit":"8061f30e6fa58d22ed1a52e02c4d9c7f0bf132cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:16:33 2022 -0800","stats":{"files_changed":3,"insertions":236,"deletions":6,"files":["tests/fixtures/centos-7.7/rsync-ivvv-nochange.json","tests/fixtures/centos-7.7/rsync-ivvv-nochange.out","tests/test_rsync.py"]},"message":"add centos -i nochange test","epoch":1643760993,"epoch_utc":null},{"commit":"8f3b12e81e1b4f0d4394c33db5b3a352f4cfb391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 14:52:51 2022 -0800","stats":{"files_changed":6,"insertions":299,"deletions":0,"files":["jc/parsers/rsync.py",".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.json",".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.out","tests/fixtures/osx-10.14.6/rsync-i-vvv.json","tests/fixtures/osx-10.14.6/rsync-i-vvv.out","tests/test_rsync.py"]},"message":"add fixes for mac -i output","epoch":1643755971,"epoch_utc":null},{"commit":"d0694ce0db5ea2d06b5787429adf23095c4c2df0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 14:20:53 2022 -0800","stats":{"files_changed":3,"insertions":245,"deletions":6,"files":[".../osx-10.14.6/rsync-i-vvv-logfile-nochange.json",".../osx-10.14.6/rsync-i-vvv-logfile-nochange.out","tests/test_rsync.py"]},"message":"add nochange log test for mac","epoch":1643754053,"epoch_utc":null},{"commit":"0cd4c4bc7f3ffe13cb2f1920187e25636b88af61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 13:58:51 2022 -0800","stats":{"files_changed":2,"insertions":658,"deletions":0,"files":[".../centos-7.7/rsync-i-vvv-logfile-nochange.json",".../centos-7.7/rsync-i-vvv-logfile-nochange.out"]},"message":"add nochange tests","epoch":1643752731,"epoch_utc":null},{"commit":"12f90c349c903634def4225ce87924b475be46d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 13:54:25 2022 -0800","stats":{"files_changed":2,"insertions":68,"deletions":20,"files":["jc/parsers/rsync.py","tests/test_rsync.py"]},"message":"update regexes for unchanged files","epoch":1643752465,"epoch_utc":null},{"commit":"26b8a1f167c4b1ec3f9fb4077254a27ed8548933","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 09:58:18 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"]},"message":"remove packages from binaries and packages header","epoch":1643738298,"epoch_utc":null},{"commit":"3abe382c064f605d915912f9b726d76784eba8a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 16:01:42 2022 -0800","stats":{"files_changed":2,"insertions":90,"deletions":3,"files":["EXAMPLES.md","jc/parsers/rsync.py"]},"message":"add examples","epoch":1643673702,"epoch_utc":null},{"commit":"1e2edc2c7b5dc104a9efe4da7df9be61b9e1be32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 15:54:05 2022 -0800","stats":{"files_changed":5,"insertions":53,"deletions":29,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-logfile.json","tests/fixtures/centos-7.7/rsync-i-v-logfile.json","tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json"]},"message":"add timestamp","epoch":1643673245,"epoch_utc":null},{"commit":"5fe032a6741b7b6586c60eb28be74bd0e56277a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 13:44:44 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/zipinfo.py"]},"message":"fix typo","epoch":1643665484,"epoch_utc":null},{"commit":"e825c02df1cdae67c7f335fe3c675685eb1a8d02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 13:23:31 2022 -0800","stats":{"files_changed":11,"insertions":605,"deletions":0,"files":["tests/fixtures/centos-7.7/rsync-i-logfile.json","tests/fixtures/centos-7.7/rsync-i-v-logfile.json","tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out","tests/fixtures/centos-7.7/rsync-i.json","tests/fixtures/centos-7.7/rsync-i.out","tests/fixtures/centos-7.7/rsync-ivvv.json","tests/fixtures/generic/rsync-i.json","tests/fixtures/generic/rsync-i.out","tests/test_rsync.py"]},"message":"add rsync tests","epoch":1643664211,"epoch_utc":null},{"commit":"a4a4d170b5ae8c189de982adea5bdc9bf1f26e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 13:23:22 2022 -0800","stats":{"files_changed":1,"insertions":10,"deletions":5,"files":["jc/parsers/rsync.py"]},"message":"update docstring","epoch":1643664202,"epoch_utc":null},{"commit":"d0fcd523cb2cbb59d0f90369721749b54222961d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 11:13:23 2022 -0800","stats":{"files_changed":1,"insertions":19,"deletions":17,"files":["jc/parsers/rsync.py"]},"message":"fix process conversions","epoch":1643656403,"epoch_utc":null},{"commit":"f72b7dc75dbd1c3f5daee3ecee28487258a04873","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 30 16:37:45 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":8,"files":["jc/parsers/rsync.py"]},"message":"change keyname to files and remove future key","epoch":1643589465,"epoch_utc":null},{"commit":"4101dc6bf7bab7d00899426e2f6271a7480d558f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 30 16:21:03 2022 -0800","stats":{"files_changed":4,"insertions":1008,"deletions":19,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-v-logfile.out","tests/fixtures/centos-7.7/rsync-i-vv-logfile.out","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out"]},"message":"add log-file support","epoch":1643588463,"epoch_utc":null},{"commit":"ea5011b616365b5c10c04416d43035d84e3dacba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jan 29 17:24:43 2022 -0800","stats":{"files_changed":2,"insertions":175,"deletions":41,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-logfile.out"]},"message":"updated schema. add log-file option support","epoch":1643505883,"epoch_utc":null},{"commit":"d6de81747fd92642dbd5cb1fb097e375aa38be35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 28 15:00:05 2022 -0800","stats":{"files_changed":1,"insertions":11,"deletions":3,"files":["jc/parsers/rsync.py"]},"message":"add int/float conversions","epoch":1643410805,"epoch_utc":null},{"commit":"38f04b1c9699246d85332b20df5b6a91ae0c48d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 28 14:45:01 2022 -0800","stats":{"files_changed":1,"insertions":32,"deletions":7,"files":["jc/parsers/rsync.py"]},"message":"add summary","epoch":1643409901,"epoch_utc":null},{"commit":"84169e1a913d035744f71472be81fe3a7d774b97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 28 14:08:43 2022 -0800","stats":{"files_changed":4,"insertions":637,"deletions":2,"files":["jc/lib.py","jc/parsers/rsync.py","setup.py","tests/fixtures/centos-7.7/rsync-ivvv.out"]},"message":"add rsync parser","epoch":1643407723,"epoch_utc":null},{"commit":"1f96586a5e883709f436526de6dcb21ff44bf97b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 28 14:08:21 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/foo.py"]},"message":"reorder imports","epoch":1643407701,"epoch_utc":null},{"commit":"681176e4c958157ef1f2151b3e57963a6ba48e09","merge":"b389665 8bb2663","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 16:53:37 2022 -0800","message":"Merge pull request #203 from kellyjonbrazil/dev\n\nDev v1.18.2","epoch":1643331217,"epoch_utc":null},{"commit":"8bb266352207f95040b72750e5b3ae3b8ceb2b98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 16:49:46 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"date update","epoch":1643330986,"epoch_utc":null},{"commit":"663abf313931b49fad64b425ece6a5a257dc7938","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 16:14:14 2022 -0800","stats":{"files_changed":4,"insertions":3,"deletions":4,"files":["MANIFEST.in","mangen.py","runtests.sh","updatedocs.sh"]},"message":"clean up scripts","epoch":1643328854,"epoch_utc":null},{"commit":"f7ac41db95c16fd21d83fbce678c5dec28ab40f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 13:27:50 2022 -0800","stats":{"files_changed":2,"insertions":1,"deletions":13,"files":["README.md","man/jc.1"]},"message":"final doc update","epoch":1643318870,"epoch_utc":null},{"commit":"5502cda9e591b531d6b452b02d8ec322c3287800","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 13:03:02 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["tests/test_lib.py"]},"message":"add additional test for dict inside list for all_parser_info()","epoch":1643317382,"epoch_utc":null},{"commit":"a2b165565f54d91489bf38577a0785e78a4523d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 12:54:44 2022 -0800","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["tests/test_lib.py"]},"message":"add lib tests for new functions","epoch":1643316884,"epoch_utc":null},{"commit":"b426369815984bd2aae8bcb14e306ba73b8cd4ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 07:45:20 2022 -0800","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/cli.py"]},"message":"use all_parser_info() from lib in about function","epoch":1643298320,"epoch_utc":null},{"commit":"ac0840cc0afb4aeee2c99076710c987e09cfa5f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 20:51:18 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"fix typo","epoch":1643259078,"epoch_utc":null},{"commit":"ee98ab0a4a7671ae34ee79f7b0b97c061a8c2944","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 20:42:20 2022 -0800","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/lib.md","docs/utils.md"]},"message":"doc update","epoch":1643258540,"epoch_utc":null},{"commit":"2adec2c0035b84ca0242f2494b6c2651b9898ca5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 20:40:03 2022 -0800","stats":{"files_changed":4,"insertions":21,"deletions":19,"files":["jc/lib.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/utils.py"]},"message":"update type hints with mypy help","epoch":1643258403,"epoch_utc":null},{"commit":"f19c9c71bf4f592f55a5176458acd478b462fdbe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 18:39:14 2022 -0800","stats":{"files_changed":2,"insertions":15,"deletions":4,"files":["jc/parsers/foo.py","jc/parsers/foo_s.py"]},"message":"add type hints","epoch":1643251154,"epoch_utc":null},{"commit":"e93adf1884c0006a64123513070a5fd96a940da2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 18:09:30 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"fix doc","epoch":1643249370,"epoch_utc":null},{"commit":"254c4fc507842ca72064c0196418a7b939d54d06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 18:05:00 2022 -0800","stats":{"files_changed":2,"insertions":20,"deletions":6,"files":["docs/readme.md","jc/__init__.py"]},"message":"add new functions","epoch":1643249100,"epoch_utc":null},{"commit":"74d5f60d14fc42cfd5768c7ffd6efc890a65d442","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 17:17:40 2022 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"]},"message":"update console interview description","epoch":1643246260,"epoch_utc":null},{"commit":"db7dc0634bc17b4daadc8bc21bba5975c093efe5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 17:12:35 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/lib.md","jc/lib.py"]},"message":"make **kwargs optional","epoch":1643245955,"epoch_utc":null},{"commit":"e156b0db453e99fb0f74b618fd343218f978ff68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 17:08:03 2022 -0800","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"add type hints","epoch":1643245683,"epoch_utc":null},{"commit":"50adc05fbd6a0dcd9e4fb38aa41917bb57332f36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 16:58:48 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/utils.md","jc/utils.py"]},"message":"formatting","epoch":1643245128,"epoch_utc":null},{"commit":"446cac7c217103eb66cfdee97e3a208b7144b644","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 16:55:39 2022 -0800","stats":{"files_changed":2,"insertions":15,"deletions":11,"files":["docs/utils.md","jc/utils.py"]},"message":"doc update","epoch":1643244939,"epoch_utc":null},{"commit":"28ffe3076bb5f23aeaf2624344856dbd02b4c0e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 16:34:23 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":9,"files":["docs/lib.md","jc/lib.py"]},"message":"formatting","epoch":1643243663,"epoch_utc":null},{"commit":"d4d5e206cae14acd25445952f820810818b3fdce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 15:54:36 2022 -0800","stats":{"files_changed":3,"insertions":40,"deletions":28,"files":["docs/lib.md","docs/utils.md","jc/utils.py"]},"message":"type hints update","epoch":1643241276,"epoch_utc":null},{"commit":"42fbe40a4ae02b9d09acdbf9b22573844959d2ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 15:54:18 2022 -0800","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/lib.py"]},"message":"simplify type hints","epoch":1643241258,"epoch_utc":null},{"commit":"27e4a120e21dcbb3eadc6c4cf224ddb33859328d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 15:31:18 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/lib.md","jc/lib.py"]},"message":"remove trailing comma","epoch":1643239878,"epoch_utc":null},{"commit":"b5d5b7c73a96d4335b178ccfac60af90913e6f0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 15:01:42 2022 -0800","stats":{"files_changed":3,"insertions":29,"deletions":148,"files":["docgen.sh","docs/parsers/ifconfig.md","docs/parsers/traceroute.md"]},"message":"remove private classes","epoch":1643238102,"epoch_utc":null},{"commit":"e7471556ba5fb0586ac5b0d7404cabd98a58db2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 14:39:11 2022 -0800","stats":{"files_changed":1,"insertions":0,"deletions":5,"files":["docgen.sh"]},"message":"remove sed lines","epoch":1643236751,"epoch_utc":null},{"commit":"640a21341bb1c562cb2124155b511dfc74277fc0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 14:38:57 2022 -0800","stats":{"files_changed":2,"insertions":47,"deletions":42,"files":["docs/utils.md","jc/utils.py"]},"message":"fix indentation","epoch":1643236737,"epoch_utc":null},{"commit":"f5befad3e41ba2864abc795a2fdf63e0f1d37c21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 14:21:06 2022 -0800","stats":{"files_changed":2,"insertions":33,"deletions":25,"files":["docs/utils.md","jc/utils.py"]},"message":"move docstring under __init__","epoch":1643235666,"epoch_utc":null},{"commit":"f8223023c31093c1a34130b4e4cfc23b1d80a30c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 14:16:04 2022 -0800","stats":{"files_changed":4,"insertions":24,"deletions":10,"files":["docgen.sh","docs/parsers/ifconfig.md","docs/parsers/traceroute.md","docs/utils.md"]},"message":"change header depth","epoch":1643235364,"epoch_utc":null},{"commit":"7028e87f9b411c0cfb92eee7fc0667cdcb9a54ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 13:03:51 2022 -0800","stats":{"files_changed":87,"insertions":22,"deletions":445,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md"]},"message":"remove TOC for parsers","epoch":1643231031,"epoch_utc":null},{"commit":"590728f9c1ccfdc078e600d1f35ad4ba51f70d36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 11:50:25 2022 -0800","stats":{"files_changed":91,"insertions":506,"deletions":17,"files":["docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/utils.md","jc/lib.py"]},"message":"try new pydoc-markdown formatting options","epoch":1643226625,"epoch_utc":null},{"commit":"7cc147fe2d7b278bcab905bc4c3b70b5265e1510","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 19:28:37 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":44,"files":["docgen.sh","docgen.sh.old"]},"message":"increase heading size","epoch":1643167717,"epoch_utc":null},{"commit":"3cfb3965bb25024a7b03870b71f02194e278919b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 19:28:04 2022 -0800","stats":{"files_changed":3,"insertions":19,"deletions":19,"files":["docs/lib.md","docs/parsers/universal.md","docs/utils.md"]},"message":"formatting","epoch":1643167684,"epoch_utc":null},{"commit":"155d4213225fe4fcf4a059fb63c1ab9fc493177e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 19:18:54 2022 -0800","stats":{"files_changed":86,"insertions":182,"deletions":181,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"]},"message":"formatting","epoch":1643167134,"epoch_utc":null},{"commit":"d3e10bb87bdb32396bce95f74e62a023f4efaf99","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:59:40 2022 -0800","stats":{"files_changed":1,"insertions":291,"deletions":0,"files":["docs/parsers/lsusb.md"]},"message":"add lsusb docs","epoch":1643165980,"epoch_utc":null},{"commit":"fd5433ee6220357e59633c78b689aa432d056b43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:58:09 2022 -0800","stats":{"files_changed":3,"insertions":6,"deletions":293,"files":["docs/lib.md","docs/parsers/lsusb.md","jc/lib.py"]},"message":"parse docstring formatting","epoch":1643165889,"epoch_utc":null},{"commit":"4568f2d06e8fc1c465c86c318d925586481af062","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:51:56 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/lib.md","jc/lib.py"]},"message":"formatting for parse docstring","epoch":1643165516,"epoch_utc":null},{"commit":"c36e513d1bcc07cd8f01ff59199950e5396da51b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:42:55 2022 -0800","stats":{"files_changed":86,"insertions":88,"deletions":91,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"]},"message":"formatting","epoch":1643164975,"epoch_utc":null},{"commit":"8e089baf3fe30fed80e1c5cdde7c3046bb70ca5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:38:26 2022 -0800","stats":{"files_changed":86,"insertions":8,"deletions":855,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"]},"message":"remove info class from docs","epoch":1643164706,"epoch_utc":null},{"commit":"386f6c317e104e797c2b55e3d21c8b064a83ac78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:03:34 2022 -0800","stats":{"files_changed":89,"insertions":9552,"deletions":9939,"files":["docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/utils.md"]},"message":"update markdown processor settings","epoch":1643162614,"epoch_utc":null},{"commit":"75cd84ce8a86b3357c6cf5fe4fbc62d0f298a29a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 17:07:47 2022 -0800","stats":{"files_changed":94,"insertions":11423,"deletions":10081,"files":["README.md","docgen.sh","docgen.sh.old","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/utils.md","jc/cli.py","man/jc.1"]},"message":"try new markdown conversion","epoch":1643159267,"epoch_utc":null},{"commit":"6fad44e35df5d0e33e716d0fcb84ed309e6fd30b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 16:28:29 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"fix type hint","epoch":1643156909,"epoch_utc":null},{"commit":"1caac750daa25a5abeb1289964e918ec06289bfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 16:27:29 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/lib.py"]},"message":"Update type hints","epoch":1643156849,"epoch_utc":null},{"commit":"16370dcb3d5cf1304c2340ef2253ef2987a982b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 15:49:48 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"update type hints","epoch":1643154588,"epoch_utc":null},{"commit":"c1302f2573993a6908001d6df0697486f54a9e7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 15:49:31 2022 -0800","stats":{"files_changed":1,"insertions":19,"deletions":8,"files":["jc/lib.py"]},"message":"add type-hints to public api","epoch":1643154571,"epoch_utc":null},{"commit":"6f0ffe0955e4d9d6cc82552cf4e4f419e3ff3756","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 15:48:00 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"docu update","epoch":1643154480,"epoch_utc":null},{"commit":"1f89745fe7cca3a0ac27445942098b717675a481","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 11:17:18 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump","epoch":1643138238,"epoch_utc":null},{"commit":"a46ac18ef775bb2c52675e61e11c5d92f33cbe81","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 10:47:05 2022 -0800","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["CHANGELOG"]},"message":"doc update","epoch":1643136425,"epoch_utc":null},{"commit":"1a05f1c575b57456481e41baaf551cef30115966","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 10:46:58 2022 -0800","stats":{"files_changed":3,"insertions":64,"deletions":54,"files":["jc/__init__.py","jc/cli.py","jc/lib.py"]},"message":"add parser info functions. move _get_parser functionality from cli to lib","epoch":1643136418,"epoch_utc":null},{"commit":"08f818aa42ca68050a79ec387c42bff265257fd5","merge":"027c231 b389665","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 00:45:53 2022 +0000","message":"Merge pull request #199 from kellyjonbrazil/master\n\nsync to dev","epoch":1643100353,"epoch_utc":1643071553},{"commit":"b3896650c230b4acc73704a50c93ee74e4034eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 23 13:40:50 2022 -0800","stats":{"files_changed":2,"insertions":62,"deletions":104,"files":["README.md","templates/readme_template"]},"message":"revert column formatting","epoch":1642974050,"epoch_utc":null},{"commit":"f285539526998a5097943c71dcecb2979036b2b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 23 13:36:22 2022 -0800","stats":{"files_changed":2,"insertions":104,"deletions":62,"files":["README.md","templates/readme_template"]},"message":"conform to 80 columns","epoch":1642973782,"epoch_utc":null},{"commit":"a896dcdf3b31b60582ebb1b3bca5d1103f998dd6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 23 13:14:00 2022 -0800","stats":{"files_changed":2,"insertions":338,"deletions":120,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1642972440,"epoch_utc":null},{"commit":"0a187d4ed08173ec360a006ae2367bb1f2f96c52","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 23 10:04:19 2022 -0800","stats":{"files_changed":3,"insertions":7,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"]},"message":"add console interview links","epoch":1642961059,"epoch_utc":null},{"commit":"2d65bc57d5a396e6683f970194de29494b5c1272","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 16:58:45 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/readme.md","jc/__init__.py"]},"message":"add quotes","epoch":1642813125,"epoch_utc":null},{"commit":"ab63809fde0cefe1f0401d957a3736fdb760f0cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 16:13:00 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"update description","epoch":1642810380,"epoch_utc":null},{"commit":"6f04707dc63936efd0e533ae36e1b39ead10c466","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 15:33:43 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add python package doc info to top of page","epoch":1642808023,"epoch_utc":null},{"commit":"d14a86a9b58bdc3cb0c8df1dfa495aefdaab8033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 15:29:46 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py"]},"message":"fix typo","epoch":1642807786,"epoch_utc":null},{"commit":"8e6a31d3da19926ac46744e02b27a899ca5fbd7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 14:08:19 2022 -0800","stats":{"files_changed":6,"insertions":14,"deletions":8,"files":["CHANGELOG","docs/readme.md","jc/__init__.py","jc/lib.py","man/jc.1","setup.py"]},"message":"minor fix for macOS binary","epoch":1642802899,"epoch_utc":null},{"commit":"6e7b6afe87355e96422bb2560ffcbd5e79d28f04","merge":"70cb445 027c231","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 13:52:16 2022 -0800","message":"Merge pull request #198 from kellyjonbrazil/dev\n\nDev v1.18.0","epoch":1642801936,"epoch_utc":null},{"commit":"027c231097a002526350a93322407582a85db0cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 13:48:38 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"formatting","epoch":1642801718,"epoch_utc":null},{"commit":"f1cf7d1f953586dd44a4463d924f1a1f52717c37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:51:26 2022 -0800","stats":{"files_changed":2,"insertions":7,"deletions":5,"files":["jc/parsers/foo.py","jc/parsers/foo_s.py"]},"message":"add helper function info","epoch":1642798286,"epoch_utc":null},{"commit":"df611cc263f50285e74ceb3381f55b43a74870a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:41:52 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting","epoch":1642797712,"epoch_utc":null},{"commit":"0f3143bbbb593340190e66729580146410012e14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:39:22 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting","epoch":1642797562,"epoch_utc":null},{"commit":"c280757b7624a46543e481ca47a6e084d2d6f519","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:35:48 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting","epoch":1642797348,"epoch_utc":null},{"commit":"d30b9d84ef5ec3a2a504f7ea251c932b8c9ea878","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:33:23 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting","epoch":1642797203,"epoch_utc":null},{"commit":"50ded1dbd97d26cf01d7e1a98b40e0f0f7d02202","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:31:03 2022 -0800","stats":{"files_changed":1,"insertions":10,"deletions":4,"files":["docs/readme.md"]},"message":"doc update","epoch":1642797063,"epoch_utc":null},{"commit":"e319aea5a45c598a44f35b4e58131d977509e4f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:29:36 2022 -0800","stats":{"files_changed":1,"insertions":10,"deletions":4,"files":["jc/__init__.py"]},"message":"add doc version info","epoch":1642796976,"epoch_utc":null},{"commit":"ba86509c1d8700a50fe14e9d931ee57261306c5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:15:34 2022 -0800","stats":{"files_changed":1,"insertions":3,"deletions":9,"files":["jc/cli.py"]},"message":"simplify OSError exception handling","epoch":1642796134,"epoch_utc":null},{"commit":"0a9279ae6bfdd1aa59f5e9b31ce0af3bfec19f96","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:15:16 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["CHANGELOG","tests/test_lib.py"]},"message":"doc update","epoch":1642796116,"epoch_utc":null},{"commit":"a13dde12af01b4473aa9a34b8a0d7387fb48500a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 07:42:03 2022 -0800","stats":{"files_changed":173,"insertions":173,"deletions":173,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py","man/jc.1"]},"message":"change raw output wording","epoch":1642779723,"epoch_utc":null},{"commit":"e2ed358de1abefd737c187a324cbe4734d6975e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 15:31:24 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["CHANGELOG"]},"message":"changelog update","epoch":1642721484,"epoch_utc":null},{"commit":"a2cd3666210be3727a00c3405972f32fbd421046","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 15:01:49 2022 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["docs/_config.yml"]},"message":"Delete _config.yml","epoch":1642719709,"epoch_utc":null},{"commit":"15addd9bfc18a0e87beb97040b431c872b783662","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 09:59:23 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":8,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"doc fix","epoch":1642701563,"epoch_utc":null},{"commit":"a4e34b0053ec0c032f4783caaa3e07fc2c685a98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 09:46:24 2022 -0800","stats":{"files_changed":2,"insertions":63,"deletions":0,"files":["docgen.sh","docs/parsers/universal.md"]},"message":"add universal parser docs","epoch":1642700784,"epoch_utc":null},{"commit":"d09529ac302fbcc156d58cf836f8397c98121a76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 09:40:34 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update","epoch":1642700434,"epoch_utc":null},{"commit":"553097b5050dc02fbdaeec2e2e138e01bc6811d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 09:40:08 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/universal.py"]},"message":"docstring update","epoch":1642700408,"epoch_utc":null},{"commit":"49c556857708307f617b2b516f2d281398681b5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 07:49:45 2022 -0800","stats":{"files_changed":7,"insertions":35,"deletions":15,"files":["README.md","docs/lib.md","docs/readme.md","jc/__init__.py","jc/lib.py","man/jc.1","templates/readme_template"]},"message":"module doc update","epoch":1642693785,"epoch_utc":null},{"commit":"6962b9ee8a52c924dc2de6b79ddeea3636e80fe4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 22:24:59 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":6,"files":["docs/lib.md","jc/lib.py"]},"message":"formatting","epoch":1642659899,"epoch_utc":null},{"commit":"b4575a3f780f9aa2751c8b4789f67aaca32dd1cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 22:20:36 2022 -0800","stats":{"files_changed":3,"insertions":91,"deletions":1,"files":["docgen.sh","docs/lib.md","jc/lib.py"]},"message":"add lib docs","epoch":1642659636,"epoch_utc":null},{"commit":"35b54d235d73b2ce658223be3d6095906f142d89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 21:53:13 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add python package doc info","epoch":1642657993,"epoch_utc":null},{"commit":"583a5757e454a4e36b331057d1266279b55ee16a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 21:32:21 2022 -0800","stats":{"files_changed":18,"insertions":34,"deletions":30,"files":["docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/file.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/traceroute.md","docs/parsers/ufw_appinfo.md","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/file.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/traceroute.py","jc/parsers/ufw_appinfo.py"]},"message":"formatting","epoch":1642656741,"epoch_utc":null},{"commit":"f355333eeed3c4afba844dc7bed5224356552adc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 19:27:46 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting","epoch":1642649266,"epoch_utc":null},{"commit":"4d7df109604e4f8367904968602acfc05217a7fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 19:24:37 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting","epoch":1642649077,"epoch_utc":null},{"commit":"66b2c28f4bc75fb76800f9fb7ea485eee194a9a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 19:22:08 2022 -0800","stats":{"files_changed":2,"insertions":24,"deletions":24,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting","epoch":1642648928,"epoch_utc":null},{"commit":"299a9c6d88fdf1fede447b4057d8f4263daef733","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 19:19:25 2022 -0800","stats":{"files_changed":2,"insertions":25,"deletions":57,"files":["docs/parsers/csv.md","docs/readme.md"]},"message":"formatting","epoch":1642648765,"epoch_utc":null},{"commit":"bd391d979ce98b126dab0f012a56b3fcb1f73439","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 19:18:03 2022 -0800","stats":{"files_changed":1,"insertions":23,"deletions":55,"files":["jc/__init__.py"]},"message":"add lib function docs","epoch":1642648683,"epoch_utc":null},{"commit":"7309bd2282445f6daef0b1491ff60b8104500abb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 18:47:44 2022 -0800","stats":{"files_changed":3,"insertions":19,"deletions":10,"files":["jc/lib.py","jc/parsers/csv.py","jc/parsers/universal.py"]},"message":"add get_help","epoch":1642646864,"epoch_utc":null},{"commit":"ce84c09d3394b598f19a3e012ef27ce4154e3b3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 18:44:26 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/__init__.py"]},"message":"add get_help()","epoch":1642646666,"epoch_utc":null},{"commit":"b4fffbb6476daf78fbdf19dbf31bbeeab950d2dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 17:30:14 2022 -0800","stats":{"files_changed":46,"insertions":501,"deletions":304,"files":["docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/history.md","docs/parsers/ini.md","docs/parsers/iostat_s.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsusb.md","docs/parsers/netstat.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/ps.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/upower.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/who.md"]},"message":"formatting","epoch":1642642214,"epoch_utc":null},{"commit":"3701b4198aad1826ad6da571fbcaa530b057cc48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 17:29:22 2022 -0800","stats":{"files_changed":86,"insertions":710,"deletions":606,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"formatting","epoch":1642642162,"epoch_utc":null},{"commit":"d4c34098fa7ad2098076f0fa0564467e5d06f916","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 11:31:29 2022 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/lib.py"]},"message":"formatting","epoch":1642620689,"epoch_utc":null},{"commit":"b3c531193b3fc53697e7d7823576f481f9462d53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 11:08:59 2022 -0800","stats":{"files_changed":3,"insertions":125,"deletions":71,"files":["CHANGELOG","docs/utils.md","jc/utils.py"]},"message":"formatting","epoch":1642619339,"epoch_utc":null},{"commit":"1d0e07c77bab5c48405323e52873c7952dd0a587","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 10:31:46 2022 -0800","stats":{"files_changed":3,"insertions":57,"deletions":55,"files":["docs/readme.md","jc/__init__.py","jc/lib.py"]},"message":"formatting","epoch":1642617106,"epoch_utc":null},{"commit":"06a322cf9c7468dc7e8ba05914e1d07bbc51f63a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 10:31:36 2022 -0800","stats":{"files_changed":1,"insertions":14,"deletions":8,"files":["tests/test_lib.py"]},"message":"rename tests and add conversion function tests","epoch":1642617096,"epoch_utc":null},{"commit":"623d148712f93eacf9b7b5803140603f0af67acb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 09:30:53 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"doc update","epoch":1642613453,"epoch_utc":null},{"commit":"647e83d0439a0937db14a2cc97929e38a6b6a43b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 09:29:09 2022 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["tests/test_lib.py"]},"message":"add test to ensure there are zero plugin parsers installed during tests","epoch":1642613349,"epoch_utc":null},{"commit":"91a554464444da0cc3ed3b4d212539232411f6cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 09:28:35 2022 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/lib.py"]},"message":"doc update","epoch":1642613315,"epoch_utc":null},{"commit":"a1190998aef1bf403ee34c38c1a0fbd6291ac38b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 09:15:24 2022 -0800","stats":{"files_changed":2,"insertions":82,"deletions":0,"files":["tests/test_jc.py","tests/test_lib.py"]},"message":"add jc and jc.lib tests","epoch":1642612524,"epoch_utc":null},{"commit":"097d7a1850f6f6df73a5761c657b73ef9dbd3e29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 09:15:11 2022 -0800","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/__init__.py"]},"message":"simplify __init__","epoch":1642612511,"epoch_utc":null},{"commit":"302bf72e720b3a67fbf1300eaff4f99fc343abeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 15:38:03 2022 -0800","stats":{"files_changed":138,"insertions":718,"deletions":6,"files":["docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py"]},"message":"Update high-level API docs","epoch":1642549083,"epoch_utc":null},{"commit":"2c42baf3a4dd6733c078f31a1becd708a05f2c36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 14:18:12 2022 -0800","stats":{"files_changed":34,"insertions":174,"deletions":0,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py"]},"message":"add new high-level api info","epoch":1642544292,"epoch_utc":null},{"commit":"03feb89c84096c0ea1d6ae3a0634ae7b8b507e8f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 13:46:11 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/readme.md","jc/__init__.py"]},"message":"add module list info","epoch":1642542371,"epoch_utc":null},{"commit":"9dd553192fbca3037b3afe5df6bae88f7a8a9365","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 13:40:09 2022 -0800","stats":{"files_changed":5,"insertions":29,"deletions":12,"files":["CHANGELOG","README.md","docs/readme.md","man/jc.1","templates/readme_template"]},"message":"doc update","epoch":1642542009,"epoch_utc":null},{"commit":"fa3f02e9d1ac7867e3465c2d214f4e4229ff4c66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 13:39:51 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump","epoch":1642541991,"epoch_utc":null},{"commit":"0a9dde58c5235f78c4c9ae9c013f7454482c6067","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 13:10:14 2022 -0800","stats":{"files_changed":3,"insertions":228,"deletions":134,"files":["jc/__init__.py","jc/cli.py","jc/lib.py"]},"message":"add jc.parse() high-level API","epoch":1642540214,"epoch_utc":null},{"commit":"70cb4453bebb235130e2c287633ecb1de6c2b0aa","merge":"e6900e2 830674c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 14 11:54:29 2022 -0800","message":"Merge pull request #195 from kellyjonbrazil/dev\n\nDev v1.17.7","epoch":1642190069,"epoch_utc":null},{"commit":"830674cc6f19e107347a743baff7bbaab7f80b75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 14 11:47:25 2022 -0800","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["CHANGELOG","jc/__init__.py","man/jc.1","setup.py"]},"message":"version bump","epoch":1642189645,"epoch_utc":null},{"commit":"fb406b58a12fdfe81bcff76671661af77e7f2fe5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jan 8 20:22:53 2022 -0800","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["docs/parsers/stat_s.md","jc/parsers/stat_s.py","man/jc.1"]},"message":"formatting","epoch":1641702173,"epoch_utc":null},{"commit":"55b272e41259ddc835cf4eb513fb67e7b2cf1573","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 6 11:13:14 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat_s.py"]},"message":"tighten stat data detection","epoch":1641496394,"epoch_utc":null},{"commit":"94f62a9bf36242310790a0f37c66b2e6c6fdc078","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 6 11:03:49 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/stat_s.md","jc/parsers/stat_s.py"]},"message":"formatting","epoch":1641495829,"epoch_utc":null},{"commit":"8d19e4cb7b45e3b6cb8c404c959949b7593c9386","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 6 11:00:53 2022 -0800","stats":{"files_changed":4,"insertions":115,"deletions":1,"files":["CHANGELOG","README.md","docs/parsers/stat_s.md","man/jc.1"]},"message":"doc update","epoch":1641495653,"epoch_utc":null},{"commit":"7e510d48e0f8426a67cf8d70d06d0331c274d358","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 6 10:36:33 2022 -0800","stats":{"files_changed":7,"insertions":106,"deletions":2,"files":["jc/parsers/stat_s.py","tests/fixtures/centos-7.7/stat-streaming.json","tests/fixtures/freebsd12/stat-streaming.json",".../stat-filename-with-spaces-streaming.json","tests/fixtures/osx-10.14.6/stat-streaming.json","tests/fixtures/ubuntu-18.04/stat-streaming.json","tests/test_stat_s.py"]},"message":"simplify non-stat parse error logic","epoch":1641494193,"epoch_utc":null},{"commit":"7b20cffb143447f4497bc4e895eac2426e8a519f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 5 11:44:00 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/stat_s.py"]},"message":"simplify last item logic","epoch":1641411840,"epoch_utc":null},{"commit":"5c934c43c13b69183561da8a77280feb3363e950","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 5 11:39:00 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/stat_s.py"]},"message":"add continue to simplify logic","epoch":1641411540,"epoch_utc":null},{"commit":"8609298449e997ba4804d818f4fc23cb393ded7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 5 11:25:58 2022 -0800","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/parsers/stat_s.py"]},"message":"update docstring","epoch":1641410758,"epoch_utc":null},{"commit":"72cb0dc10b2dac486d3e2a52cf44baf0d7496034","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 5 11:22:01 2022 -0800","stats":{"files_changed":1,"insertions":14,"deletions":10,"files":["jc/parsers/stat_s.py"]},"message":"fixup for first and last items","epoch":1641410521,"epoch_utc":null},{"commit":"7b22fa81ded0f6f59e250ffea63c5d2a0f928b25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 5 07:46:58 2022 -0800","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/parsers/stat_s.py"]},"message":"raise for non-stat data","epoch":1641397618,"epoch_utc":null},{"commit":"0b6a1307790e0793917bc2781e4873aa9dd67225","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 16:43:38 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/stat_s.py"]},"message":"ignore blank lines","epoch":1641343418,"epoch_utc":null},{"commit":"fdcf4338e0f099699f8d48df6382be1cc97dba84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 15:31:00 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["jc/parsers/stat_s.py"]},"message":"add examples to docstring","epoch":1641339060,"epoch_utc":null},{"commit":"ee43037f481286a34a766390568965fdd53af132","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 15:13:42 2022 -0800","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/stat_s.py"]},"message":"remove unused continue lines","epoch":1641338022,"epoch_utc":null},{"commit":"26e365563c314e694915c7a3feae490ea99a112c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 15:07:45 2022 -0800","stats":{"files_changed":1,"insertions":50,"deletions":11,"files":["jc/parsers/stat_s.py"]},"message":"add schema and _process logic","epoch":1641337665,"epoch_utc":null},{"commit":"1b39586bb1b62aee8ae709512c2e3f79cefdb3d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 15:01:42 2022 -0800","stats":{"files_changed":2,"insertions":227,"deletions":0,"files":["jc/cli.py","jc/parsers/stat_s.py"]},"message":"add stat streaming parser","epoch":1641337302,"epoch_utc":null},{"commit":"8bb3a6bea34d60d49039f1ed72fd7e413edc05da","merge":"78672bd e6900e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 13:33:35 2022 -0800","message":"Merge pull request #194 from kellyjonbrazil/master\n\nsync to dev","epoch":1641332015,"epoch_utc":null},{"commit":"e6900e2000bf265dfcfc09ffbfda39e9238661af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:41:16 2022 -0800","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["EXAMPLES.md"]},"message":"add jar-manifest","epoch":1641231676,"epoch_utc":null},{"commit":"0ee244756bf39123e4873eb231156edbe7f0e0ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:22:35 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/jar_manifest.md","jc/parsers/jar_manifest.py"]},"message":"spelling","epoch":1641230555,"epoch_utc":null},{"commit":"6d5ac9abe6712e01887ce0d96c278a568319f405","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:19:40 2022 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["docs/parsers/csv.md","docs/parsers/csv_s.md","man/jc.1"]},"message":"update docs","epoch":1641230380,"epoch_utc":null},{"commit":"44f6d9e1321459be8196aeebf6db088cc5120e61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:18:43 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"changelog update","epoch":1641230323,"epoch_utc":null},{"commit":"360154559c5dee6affa55bbdd5d2f473248b9168","merge":"241d53a 78672bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:12:50 2022 -0800","message":"Merge pull request #193 from kellyjonbrazil/dev\n\nDev add csv doublequote fix","epoch":1641229970,"epoch_utc":null},{"commit":"78672bd7ad66c418e0ecf31add73f887b0946d29","merge":"bc7973a 65d96e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:08:57 2022 -0800","message":"Merge pull request #190 from shaikustin/csv-doubleqouted\n\nfix doubleqoute in csv","epoch":1641229737,"epoch_utc":null},{"commit":"65d96e26b59e231c77c1dbba1dc91708c33de30c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:06:00 2022 -0800","stats":{"files_changed":2,"insertions":13,"deletions":0,"files":["tests/fixtures/generic/csv-doubleqouted-streaming.json","tests/test_csv_s.py"]},"message":"add streaming tests","epoch":1641229560,"epoch_utc":null},{"commit":"241d53af9a5c9bba70e28835e22c52c0060269ba","merge":"f733100 bc7973a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 08:49:15 2022 -0800","message":"Merge pull request #192 from kellyjonbrazil/dev\n\nDev v1.17.6","epoch":1641228555,"epoch_utc":null},{"commit":"5563829df2849a899df2e9211d6c92bddc695f9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 08:48:23 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/csv_s.py"]},"message":"make dialect sniff behavior match non-streaming parser","epoch":1641228503,"epoch_utc":null},{"commit":"3a4a27e1f94ee07352c7616c57ec655c1aea04f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 11:44:25 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/csv.py"]},"message":"version bump","epoch":1641152665,"epoch_utc":null},{"commit":"9c887a36a804d817c3f669a55b9b1566d09d645d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 11:44:18 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/csv_s.py"]},"message":"update csv_s parser with csv changes","epoch":1641152658,"epoch_utc":null},{"commit":"bc7973af36e13006230b5faa9e201e300d468912","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 11:07:15 2022 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","jc/cli.py","man/jc.1"]},"message":"update copyright","epoch":1641150435,"epoch_utc":null},{"commit":"32972d8fdbdc71923978fd5c2a87fd6cfa4b7f8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 11:00:52 2022 -0800","stats":{"files_changed":7,"insertions":122,"deletions":9,"files":["CHANGELOG","README.md","docs/parsers/jar_manifest.md","jc/__init__.py","jc/parsers/jar_manifest.py","man/jc.1","setup.py"]},"message":"doc update","epoch":1641150052,"epoch_utc":null},{"commit":"b128d9109cbdb1176f2473d450023bb0be02531b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 10:51:02 2022 -0800","stats":{"files_changed":1,"insertions":46,"deletions":0,"files":["tests/test_jar_manifest.py"]},"message":"add MANIFEST.MF tests","epoch":1641149462,"epoch_utc":null},{"commit":"929d7273a422c2bd5b83e5e19d32630f1a027f75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 10:29:56 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/jar_manifest.py"]},"message":"doc updates","epoch":1641148196,"epoch_utc":null},{"commit":"2a40f842743a8745d651b4b6cae645045e6c6aab","author":"shaik","author_email":"shai.kustin@torq.io","date":"Sun Jan 2 17:11:20 2022 +0200","stats":{"files_changed":4,"insertions":22,"deletions":1,"files":["jc/parsers/csv.py","tests/fixtures/generic/csv-doubleqouted.csv","tests/fixtures/generic/csv-doubleqouted.json","tests/test_csv.py"]},"message":"fix doubleqoute in csv","epoch":1641172280,"epoch_utc":null},{"commit":"9ff6fa818f0857321e4b3b089d288997f2ae27af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jan 1 10:08:40 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add jar-manifest","epoch":1641060520,"epoch_utc":null},{"commit":"dac73a4bfe24e36474fdf6ff60c23e784ca409bd","merge":"d789554 f733100","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jan 1 10:06:46 2022 -0800","message":"Merge pull request #189 from kellyjonbrazil/master\n\nuse github releases instead of packaging site","epoch":1641060406,"epoch_utc":null},{"commit":"d7895547f74744e82317eabe4c870115701872be","merge":"f8e09ae b7d439c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jan 1 10:04:47 2022 -0800","message":"Merge pull request #188 from listuser/new_branch\n\nCreate key value pairs from a MANIFEST.MF file, to include key multiline value pairs.","epoch":1641060287,"epoch_utc":null},{"commit":"b7d439cb870e443e4f4e4a2137ab170835e77eff","author":"listuser","author_email":null,"date":"Fri Dec 31 12:15:50 2021 -0800","stats":{"files_changed":3,"insertions":2220,"deletions":9,"files":["jc/parsers/{jar-manifest.py => jar_manifest.py}","tests/fixtures/rhel-8/MANIFEST.MF.MULTI.json","tests/fixtures/rhel-8/MANIFEST.MF.MULTI.out"]},"message":"Renamed jar-manifest.py to jar_manifest.py, added multi manifest outputs to tests...","epoch":1640981750,"epoch_utc":null},{"commit":"7cc903a5f5ca368be97babadc72689375567a901","author":"listuser","author_email":null,"date":"Thu Dec 30 15:10:53 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/jar-manifest.py"]},"message":"Removed inflating from examples in jar-manifest.py","epoch":1640905853,"epoch_utc":null},{"commit":"c495a8291bd3e1fd070ee2e018b9b550f9c86314","author":"listuser","author_email":null,"date":"Thu Dec 30 15:06:06 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":292,"files":["tests/fixtures/rhel-8/MANIFEST.MF.json"]},"message":"Updated test output in MANIFEST.MF.json","epoch":1640905566,"epoch_utc":null},{"commit":"5e1d7d777c627fb17feda6e51d9640bbd0f03302","author":"listuser","author_email":null,"date":"Thu Dec 30 15:02:48 2021 -0800","stats":{"files_changed":8,"insertions":304,"deletions":2544,"files":["jc/parsers/{metamf.py => jar-manifest.py}","tests/fixtures/rhel-8/MANIFEST.MF.json",".../rhel-8/{MANIFEST.MF => MANIFEST.MF.out}",".../rhel-8/cmds_used_to_generate_test_data.txt",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out"]},"message":"Renamed metamf.py to jar-manifest.py, plus other changes","epoch":1640905368,"epoch_utc":null},{"commit":"7edad3f676fe5560017ca9cb05ede6f46787e78f","author":"listuser","author_email":null,"date":"Wed Dec 29 12:15:15 2021 -0800","stats":{"files_changed":8,"insertions":3042,"deletions":0,"files":["jc/parsers/metamf.py","tests/fixtures/rhel-8/MANIFEST.MF","tests/fixtures/rhel-8/MANIFEST.MF.json",".../rhel-8/cmds_used_to_generate_test_data.txt",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out"]},"message":"Create key value pairs from a MANIFEST.MF file, to include key multiline value pairs.","epoch":1640808915,"epoch_utc":null},{"commit":"f7331001d4ab976e311458a16b6e5337da2e3aab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 23 11:35:39 2021 -0800","stats":{"files_changed":3,"insertions":9,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"]},"message":"use github releases instead of packaging site","epoch":1640288139,"epoch_utc":null},{"commit":"f8e09ae2ffe185d21305d566fad20f510df9890f","merge":"2e4f5a5 433c7cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 15:46:39 2021 -0600","message":"Merge pull request #187 from kellyjonbrazil/master\n\nsync to dev","epoch":1640130399,"epoch_utc":null},{"commit":"433c7cc0f05e321ffe024845a908f3e856d4cd2b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 13:42:24 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/zipinfo.md","jc/parsers/zipinfo.py"]},"message":"formatting","epoch":1640122944,"epoch_utc":null},{"commit":"d753e71a7452310d45fa605a2e4c70320ed60dbb","merge":"3ac8d03 2e4f5a5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 15:21:18 2021 -0600","message":"Merge pull request #186 from kellyjonbrazil/dev\n\nDev v1.17.5","epoch":1640128878,"epoch_utc":null},{"commit":"2e4f5a508b6c90f9e03dcbcf64efc0e2fc446666","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 12:19:17 2021 -0800","stats":{"files_changed":4,"insertions":6,"deletions":3,"files":["CHANGELOG","jc/__init__.py","man/jc.1","setup.py"]},"message":"version bump","epoch":1640117957,"epoch_utc":null},{"commit":"88b960eff6cb3739d0d243c8d8b3e8ad5b8eb97c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 12:14:20 2021 -0800","stats":{"files_changed":4,"insertions":144,"deletions":1,"files":["EXAMPLES.md","README.md","docs/parsers/zipinfo.md","man/jc.1"]},"message":"doc update","epoch":1640117660,"epoch_utc":null},{"commit":"88c77bd89e2c2a5f023e6638816c9153b6276d35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 12:08:16 2021 -0800","stats":{"files_changed":2,"insertions":47,"deletions":0,"files":["tests/fixtures/osx-10.14.6/zipinfo-multi.json","tests/test_zipinfo.py"]},"message":"add zipinfo tests","epoch":1640117296,"epoch_utc":null},{"commit":"51a7a4251fff518d8da78ffa41e7ba2e2cb47f12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 11:11:56 2021 -0800","stats":{"files_changed":1,"insertions":24,"deletions":0,"files":["tests/fixtures/osx-10.14.6/zipinfo-multi.out"]},"message":"add multi-archive test output","epoch":1640113916,"epoch_utc":null},{"commit":"51d2f316f388d962c26aeb4f42affebec339e5a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 11:11:44 2021 -0800","stats":{"files_changed":1,"insertions":97,"deletions":72,"files":["jc/parsers/zipinfo.py"]},"message":"add multi-archive support","epoch":1640113904,"epoch_utc":null},{"commit":"ff78a46c4854339a097992701351ef471aff1671","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 08:13:17 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"add zipinfo parser","epoch":1640103197,"epoch_utc":null},{"commit":"ed4a9dc1d470f64bcc9de35b2d98568ffd50257d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 08:13:00 2021 -0800","stats":{"files_changed":1,"insertions":21,"deletions":23,"files":["jc/parsers/zipinfo.py"]},"message":"formatting","epoch":1640103180,"epoch_utc":null},{"commit":"63182dba26040974cb8cada6f5910bb29b1fa3ed","merge":"b450697 9c1eaa9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 10:08:46 2021 -0600","message":"Merge pull request #185 from listuser/new_branch\n\ncontributed zipinfo parser","epoch":1640110126,"epoch_utc":null},{"commit":"9c1eaa938934269fe4179da798acf5f119cde0cf","author":"Matt J","author_email":"none","date":"Mon Dec 20 21:53:34 2021 -0800","stats":{"files_changed":2,"insertions":68,"deletions":61,"files":["jc/parsers/zipinfo.py","tests/fixtures/rhel-8/zipinfo.json"]},"message":"revised zipinfo.py nested version","epoch":1640066014,"epoch_utc":null},{"commit":"bc520fcbcdfad6a53e51944391fd24512bed8128","author":"Matt J","author_email":"none","date":"Mon Dec 20 14:29:50 2021 -0800","stats":{"files_changed":2,"insertions":63,"deletions":53,"files":["jc/parsers/zipinfo.py","tests/fixtures/rhel-8/zipinfo.json"]},"message":"added zipinfo.py nested version","epoch":1640039390,"epoch_utc":null},{"commit":"46faac1a12a5b39d6a25427f6e8fdcca1204dbcd","author":"Matt J","author_email":"none","date":"Sun Dec 19 17:44:56 2021 -0800","stats":{"files_changed":2,"insertions":1222,"deletions":0,"files":["tests/fixtures/rhel-8/zipinfo.json","tests/fixtures/rhel-8/zipinfo.out"]},"message":"add test data zipinfo.json and zipinfo.out","epoch":1639964696,"epoch_utc":null},{"commit":"3c424c0cb3cff462a963183585b57bea004e974f","author":"Matt J","author_email":"none","date":"Sun Dec 19 14:05:48 2021 -0800","stats":{"files_changed":1,"insertions":165,"deletions":0,"files":["jc/parsers/zipinfo.py"]},"message":"initial commit zipinfo.py to new_branch","epoch":1639951548,"epoch_utc":null},{"commit":"3ac8d0362b4fb9999fc55a60a9cb20ac80d114f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 16 07:04:35 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"use quotes around python versions","epoch":1639667075,"epoch_utc":null},{"commit":"d88b998e6c7826a9ecae18663328e2d2915030fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 9 10:58:06 2021 -0800","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"]},"message":"formatting","epoch":1639076286,"epoch_utc":null},{"commit":"a9ed55c00652a563391a7930c7a4649967131ae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 9 10:54:04 2021 -0800","stats":{"files_changed":11,"insertions":11,"deletions":11,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]},"message":"fix spelling","epoch":1639076044,"epoch_utc":null},{"commit":"ea614341232e5272ee0c7fd46ba0f313033c761f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 9 10:21:37 2021 -0800","stats":{"files_changed":4,"insertions":16,"deletions":8,"files":["docs/parsers/crontab.md","docs/parsers/crontab_u.md","jc/parsers/crontab.py","jc/parsers/crontab_u.py"]},"message":"fix schema docs","epoch":1639074097,"epoch_utc":null},{"commit":"a73d0d26cbe2860b8374661068e09e0717a3bab2","merge":"a7de911 b450697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 20:49:01 2021 -0800","message":"Merge pull request #184 from kellyjonbrazil/dev\n\nDev 1.17.4","epoch":1639025341,"epoch_utc":null},{"commit":"b4506976e3c865397bc657183d49c484d8bcfd7a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 11:21:12 2021 -0800","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["man/jc.1","templates/manpage_template"]},"message":"formatting","epoch":1638991272,"epoch_utc":null},{"commit":"34cb75a09697a06c3878f2f9a84eb3bd2a90ae62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:46:00 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/__init__.py","setup.py"]},"message":"version bump","epoch":1638981960,"epoch_utc":null},{"commit":"34df643f60712ae25645cb7cddff80e43c12262b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:35:09 2021 -0800","stats":{"files_changed":4,"insertions":18,"deletions":0,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"add disable colors section","epoch":1638981309,"epoch_utc":null},{"commit":"ac7c13fcc013d386f34db51d634298fa3e97eccd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:22:28 2021 -0800","stats":{"files_changed":4,"insertions":11,"deletions":1,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"add -C option to docs","epoch":1638980548,"epoch_utc":null},{"commit":"4fdb34c7d5fcaa65e2ccab814c3acf2f0f70c442","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:19:43 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"add no-color.org","epoch":1638980383,"epoch_utc":null},{"commit":"7ac468e35aac1a63c4e22f33aead74a6e41a22a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:14:36 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update","epoch":1638980076,"epoch_utc":null},{"commit":"df190aa299f1669d1fe09380026ae086839abc02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:14:28 2021 -0800","stats":{"files_changed":1,"insertions":15,"deletions":7,"files":["jc/cli.py"]},"message":"add -C option to force color even with pipes","epoch":1638980068,"epoch_utc":null},{"commit":"9621475e86fe20fcdc2902b6ce7860a833ae2ca0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 7 15:46:02 2021 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update","epoch":1638920762,"epoch_utc":null},{"commit":"82e0160de820ad2ed6143f58458711d600b929a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 7 15:45:11 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"refactor NO_COLOR test","epoch":1638920711,"epoch_utc":null},{"commit":"d03fb8b626a97e81006d0b108c8f400fe4e2ce3b","merge":"b300dfb 7933dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 7 15:34:23 2021 -0800","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev","epoch":1638920063,"epoch_utc":null},{"commit":"b300dfb3d75fe76e2ddbb087ff742dd0b5e6155b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 7 15:34:20 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"Add support for NO_COLOR env variable","epoch":1638920060,"epoch_utc":null},{"commit":"a7de9111d97e687cafbc0709ec3ff7453d658a80","merge":"21e69a7 7933dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 16:37:46 2021 -0800","message":"Merge pull request #183 from kellyjonbrazil/dev\n\nDev v1.17.3","epoch":1638491866,"epoch_utc":null},{"commit":"7933dfdbe7bf400833d6f6b771362dfc518b9a8d","merge":"f7cb5f7 21e69a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 16:34:06 2021 -0800","message":"Merge branch 'master' into dev","epoch":1638491646,"epoch_utc":null},{"commit":"f7cb5f7d01ac01538bee4da816408072b585768e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 16:30:47 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"update date","epoch":1638491447,"epoch_utc":null},{"commit":"a26a298f1a3c141171e7d7ce459a27a297cec031","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 11:42:56 2021 -0800","stats":{"files_changed":4,"insertions":148,"deletions":1,"files":["README.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","man/jc.1"]},"message":"doc update","epoch":1638474176,"epoch_utc":null},{"commit":"dbd134d0dac2fc152183480958fd9e65919ac98d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 11:40:47 2021 -0800","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/iostat_s.py"]},"message":"add examples to docs","epoch":1638474047,"epoch_utc":null},{"commit":"11aa01b0d9d6913059f98f9bd7591d7cad9037cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 11:38:00 2021 -0800","stats":{"files_changed":15,"insertions":15,"deletions":1,"files":["jc/parsers/iostat_s.py","tests/fixtures/centos-7.7/iostat-1-streaming.json","tests/fixtures/centos-7.7/iostat-m-streaming.json","tests/fixtures/centos-7.7/iostat-mx-streaming.json","tests/fixtures/centos-7.7/iostat-streaming.json","tests/fixtures/centos-7.7/iostat-x-streaming.json","tests/fixtures/ubuntu-18.04/iostat-1-streaming.json","tests/fixtures/ubuntu-18.04/iostat-m-streaming.json","tests/fixtures/ubuntu-18.04/iostat-mx-streaming.json","tests/fixtures/ubuntu-18.04/iostat-streaming.json","tests/fixtures/ubuntu-18.04/iostat-x-streaming.json","tests/fixtures/ubuntu-20.10/iostat-m-streaming.json","tests/fixtures/ubuntu-20.10/iostat-mx-streaming.json","tests/fixtures/ubuntu-20.10/iostat-streaming.json","tests/fixtures/ubuntu-20.10/iostat-x-streaming.json"]},"message":"iostat-s tests","epoch":1638473880,"epoch_utc":null},{"commit":"6f18e5344356684e845ec63158c570d82156254f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 11:37:52 2021 -0800","stats":{"files_changed":1,"insertions":203,"deletions":0,"files":["tests/test_iostat_s.py"]},"message":"fix for null lines","epoch":1638473872,"epoch_utc":null},{"commit":"7b467c466568ad4e7986d4d7cf3ec606681b6d46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 09:30:16 2021 -0800","stats":{"files_changed":9,"insertions":137,"deletions":0,"files":["tests/fixtures/ubuntu-20.10/iostat-m.json","tests/fixtures/ubuntu-20.10/iostat-m.out","tests/fixtures/ubuntu-20.10/iostat-mx.json","tests/fixtures/ubuntu-20.10/iostat-mx.out","tests/fixtures/ubuntu-20.10/iostat-x.json","tests/fixtures/ubuntu-20.10/iostat-x.out","tests/fixtures/ubuntu-20.10/iostat.json","tests/fixtures/ubuntu-20.10/iostat.out","tests/test_iostat.py"]},"message":"add ubuntu 20.10 tests","epoch":1638466216,"epoch_utc":null},{"commit":"537b8f263087894c02b5b7c121765cf96182a370","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 09:14:43 2021 -0800","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"]},"message":"add more int conversions","epoch":1638465283,"epoch_utc":null},{"commit":"4d823575e791999e200dedd491511c4fde64fc2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 08:47:25 2021 -0800","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"]},"message":"add more float fields","epoch":1638463645,"epoch_utc":null},{"commit":"541aa1d09f20ff6979eabaa66790decb3895f18d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 08:41:36 2021 -0800","stats":{"files_changed":2,"insertions":68,"deletions":8,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"]},"message":"Add new field float conversions for iostat v11","epoch":1638463296,"epoch_utc":null},{"commit":"8f02021014b7b19acf1a8bbd777161aa82c65d66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 05:54:38 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/iostat_s.py"]},"message":"formatting","epoch":1638453278,"epoch_utc":null},{"commit":"158a15157c7e5dde95dc21766d0696bd82486688","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:47:17 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update","epoch":1638406037,"epoch_utc":null},{"commit":"2752e0d66a9ba0b57ac86913fd302ada23c280c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:47:09 2021 -0800","stats":{"files_changed":2,"insertions":166,"deletions":0,"files":["jc/cli.py","jc/parsers/iostat_s.py"]},"message":"add iostat streaming parser","epoch":1638406029,"epoch_utc":null},{"commit":"6c11e912afe3c4d16da9199b5c2fc10461928ac3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:14:22 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"update changelog","epoch":1638404062,"epoch_utc":null},{"commit":"43d34461e27e3e4ac5f985786831c170b348c7c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:12:51 2021 -0800","stats":{"files_changed":83,"insertions":279,"deletions":81,"files":["README.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/utils.md","man/jc.1"]},"message":"update docs","epoch":1638403971,"epoch_utc":null},{"commit":"4dfdc9b0f65d8c950ed74545d0cc3f95c8abec6c","merge":"e2311cb 6665ffa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:02:10 2021 -0800","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev","epoch":1638403330,"epoch_utc":null},{"commit":"e2311cbb03f407414df953c8d1c07d0cf1a549ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:02:06 2021 -0800","stats":{"files_changed":21,"insertions":400,"deletions":0,"files":["tests/fixtures/centos-7.7/iostat-1.json","tests/fixtures/centos-7.7/iostat-1.out","tests/fixtures/centos-7.7/iostat-m.json","tests/fixtures/centos-7.7/iostat-m.out","tests/fixtures/centos-7.7/iostat-mx.json","tests/fixtures/centos-7.7/iostat-mx.out","tests/fixtures/centos-7.7/iostat-x.json","tests/fixtures/centos-7.7/iostat-x.out","tests/fixtures/centos-7.7/iostat.json","tests/fixtures/centos-7.7/iostat.out","tests/fixtures/ubuntu-18.04/iostat-1.json","tests/fixtures/ubuntu-18.04/iostat-1.out","tests/fixtures/ubuntu-18.04/iostat-m.json","tests/fixtures/ubuntu-18.04/iostat-m.out","tests/fixtures/ubuntu-18.04/iostat-mx.json","tests/fixtures/ubuntu-18.04/iostat-mx.out","tests/fixtures/ubuntu-18.04/iostat-x.json","tests/fixtures/ubuntu-18.04/iostat-x.out","tests/fixtures/ubuntu-18.04/iostat.json","tests/fixtures/ubuntu-18.04/iostat.out","tests/test_iostat.py"]},"message":"add iostat tests","epoch":1638403326,"epoch_utc":null},{"commit":"bf15575e90985cfec5c57dd11dfa2b86d53a41be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:01:52 2021 -0800","stats":{"files_changed":1,"insertions":14,"deletions":7,"files":["jc/parsers/iostat.py"]},"message":"fixes for ubunut","epoch":1638403312,"epoch_utc":null},{"commit":"406336c7185b539b5e00532b58146d5b1b73f259","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 13:53:31 2021 -0800","stats":{"files_changed":1,"insertions":44,"deletions":0,"files":["EXAMPLES.md"]},"message":"add iostat example","epoch":1638395611,"epoch_utc":null},{"commit":"6665ffaeb8107e9db3b917db0663beaf44024533","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 10:59:07 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"remove python 3.6 from tests","epoch":1638385147,"epoch_utc":null},{"commit":"dcf552ca0c69aa5f0309a83dc33dee7c5ed81292","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 10:34:55 2021 -0800","stats":{"files_changed":1,"insertions":138,"deletions":47,"files":["jc/parsers/iostat.py"]},"message":"add _process and cleanup","epoch":1638383695,"epoch_utc":null},{"commit":"7a6ebf3c9555dd82df7dc0b71981cdd32ce0061d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 16:54:32 2021 -0800","stats":{"files_changed":2,"insertions":171,"deletions":0,"files":["jc/cli.py","jc/parsers/iostat.py"]},"message":"add iostat parser","epoch":1638320072,"epoch_utc":null},{"commit":"d2dc4a983c86c538e13e568b908072de4ca0daaf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 11:59:26 2021 -0800","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"]},"message":"changelog update","epoch":1638302366,"epoch_utc":null},{"commit":"1168259bc23862f671326d41f5282a3575205214","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 11:57:04 2021 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"]},"message":"add doc strings","epoch":1638302224,"epoch_utc":null},{"commit":"e8e4b46021557fbf5776c32dff46de022817fb6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 11:49:40 2021 -0800","stats":{"files_changed":5,"insertions":14,"deletions":19,"files":["jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]},"message":"use jc.utils type checks","epoch":1638301780,"epoch_utc":null},{"commit":"12d2de22821fd8f57f4d412e62f53db3d89d5e30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 11:43:06 2021 -0800","stats":{"files_changed":77,"insertions":181,"deletions":165,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/utils.py"]},"message":"use jc.utils.input_type_check() and simplify compatibility check","epoch":1638301386,"epoch_utc":null},{"commit":"0e2fe401e1c49a9f947d7d17b72cfc4e90787f47","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 10:08:27 2021 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]},"message":"version bump","epoch":1638295707,"epoch_utc":null},{"commit":"14247adb0ae007924ca551a706eb0cfdbae97a41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 10:03:59 2021 -0800","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["jc/parsers/csv_s.py","tests/test_csv_s.py"]},"message":"add input type checks","epoch":1638295439,"epoch_utc":null},{"commit":"3a9f0934c41c85ea7fa87165b9559f08814645cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 09:56:33 2021 -0800","stats":{"files_changed":2,"insertions":5,"deletions":3,"files":["jc/parsers/ls_s.py","tests/test_ls_s.py"]},"message":"add input type checks","epoch":1638294993,"epoch_utc":null},{"commit":"caf0a5c8713bf0d72951a2c6fd5a2c62c9eb59d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 09:51:27 2021 -0800","stats":{"files_changed":2,"insertions":7,"deletions":4,"files":["jc/parsers/vmstat_s.py","tests/test_vmstat_s.py"]},"message":"add input type checking","epoch":1638294687,"epoch_utc":null},{"commit":"cfb58b1cf3e3028f8e03fdd93f0165cf8d230e1e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 09:41:16 2021 -0800","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/parsers/foo_s.py"]},"message":"add input type checks","epoch":1638294076,"epoch_utc":null},{"commit":"975cf195cc02774f50460ca479d9ebb7b73c7870","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 09:40:49 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping_s.py"]},"message":"formatting","epoch":1638294049,"epoch_utc":null},{"commit":"8a46a259a36efc55bb0b2141acb9dd5ae52b7725","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 09:19:51 2021 -0800","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["jc/parsers/ping_s.py","tests/test_ping_s.py"]},"message":"add input type checks","epoch":1638292791,"epoch_utc":null},{"commit":"e395142e599aa78b4a7ec80dcc3f8ccf279f97b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 29 16:45:22 2021 -0800","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"]},"message":"version bump","epoch":1638233122,"epoch_utc":null},{"commit":"caaeaf0d67cf44f8d2651cc53a7528d3ef0c74d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 29 16:29:23 2021 -0800","stats":{"files_changed":76,"insertions":227,"deletions":227,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"add 'str' type check on input","epoch":1638232163,"epoch_utc":null},{"commit":"21e69a7cbf62240238f6fb78e874dda6ce2e922a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 24 19:33:07 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"]},"message":"ignore _config.yml","epoch":1637811187,"epoch_utc":null},{"commit":"603964935b58e02cf0614cf67ffacc6d94755e05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 24 19:30:10 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CHANGELOG"]},"message":"remove trailing whitespace","epoch":1637811010,"epoch_utc":null},{"commit":"47eb83ae55b9892716fff712bd2be21b6191b552","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 24 13:32:51 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"]},"message":"add .vscode","epoch":1637789571,"epoch_utc":null},{"commit":"fc0ce6c95923ab124961e695a26c0b68dd0f359f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 22 09:45:14 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"add streaming parser to custom parsers info","epoch":1637603114,"epoch_utc":null},{"commit":"077a29fb4eedcfccb026498c5c3a64b7b7601363","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 22 09:36:58 2021 -0800","stats":{"files_changed":2,"insertions":14,"deletions":2,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"]},"message":"add _jc_meta field info","epoch":1637602618,"epoch_utc":null},{"commit":"8568d0d328706a7a5b1476452e078d8cbe7b7391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 22 09:10:11 2021 -0800","stats":{"files_changed":3,"insertions":7,"deletions":3,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py","man/jc.1"]},"message":"fix csv_s documentation","epoch":1637601011,"epoch_utc":null},{"commit":"597d39c28ea0c0fe3b072413e9d91ab5e27b62bd","merge":"b59e38c eb888dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 18 06:52:01 2021 -1000","message":"Merge pull request #180 from kellyjonbrazil/dev\n\nDev v1.17.2","epoch":1637247121,"epoch_utc":null},{"commit":"eb888dcbbcf83c9197bd59aab72f65ea6eb622ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 18 08:48:03 2021 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["jc/__init__.py","man/jc.1","setup.py"]},"message":"version bump","epoch":1637254083,"epoch_utc":null},{"commit":"d1b9ac0841b15ee15690c4066453a322618320ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 18 08:41:52 2021 -0800","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/df.md","docs/parsers/netstat.md","docs/parsers/ping.md","man/jc.1"]},"message":"doc update","epoch":1637253712,"epoch_utc":null},{"commit":"89a6d9c5c39b74f1b040f410659bfd7ae1a902d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 17 12:03:40 2021 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/df.py"]},"message":"add key-check to restore previous behavior even with non-df data","epoch":1637179420,"epoch_utc":null},{"commit":"85d983761637129cb85abfb0bbdde7c507061cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 17 11:41:54 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add df info","epoch":1637178114,"epoch_utc":null},{"commit":"cd7731484d826d84d835ecd460d746e78cadc5fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 17 11:26:42 2021 -0800","stats":{"files_changed":4,"insertions":62,"deletions":2,"files":["jc/parsers/df.py","tests/fixtures/generic/df-long-filesystem.json","tests/fixtures/generic/df-long-filesystem.out","tests/test_df.py"]},"message":"fix for cases where the Filesystem data overflows the column length (happens on older versions of df)","epoch":1637177202,"epoch_utc":null},{"commit":"086da16b1743c16a5ccdd102f889fb31f99e3caa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 15 13:05:53 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"version bump","epoch":1637010353,"epoch_utc":null},{"commit":"20830528f04a5ecbe78420d8008249b089667767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 15 12:52:43 2021 -0800","stats":{"files_changed":4,"insertions":28,"deletions":0,"files":["CHANGELOG","tests/fixtures/generic/netstat-old.json","tests/fixtures/generic/netstat-old.out","tests/test_netstat.py"]},"message":"add test for older netstat version fix","epoch":1637009563,"epoch_utc":null},{"commit":"83371edd8fe3d23dfa92fc707604086522c85ab9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 15 12:25:22 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat_linux.py"]},"message":"add space before inode to compensate for removed dash","epoch":1637007922,"epoch_utc":null},{"commit":"364a81decc16742e3caa070d90b1d605d96fe2c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 4 10:25:51 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ping.py"]},"message":"version bump","epoch":1636046751,"epoch_utc":null},{"commit":"ef09592ad3e5c9a77c1bdebe8f876fc4dde54834","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 4 10:21:38 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["CHANGELOG"]},"message":"update for 1.17.2","epoch":1636046498,"epoch_utc":null},{"commit":"4a86e109ccb254d5195b782f84f3967c96ef726c","merge":"5ba22da 7fa5391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 4 10:18:47 2021 -0700","message":"Merge pull request #179 from shaikustin/ping-alpine-linux\n\nsupport alpine linux ping","epoch":1636046327,"epoch_utc":null},{"commit":"7fa5391b6613e62689c624041e03f9750c9c7972","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 4 10:13:44 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_ping.py"]},"message":"change alpine ping6 to ping","epoch":1636046024,"epoch_utc":null},{"commit":"9b53ba5714819ff760f2d4546f5d2ee4d521c080","author":"shaik","author_email":"shai.kustin@torq.io","date":"Thu Nov 4 13:42:48 2021 +0200","stats":{"files_changed":6,"insertions":45,"deletions":1,"files":["jc/parsers/ping.py",".../fixtures/alpine-linux-3.13/ping-hostname.json","tests/fixtures/alpine-linux-3.13/ping-hostname.out","tests/fixtures/alpine-linux-3.13/ping-ip.json","tests/fixtures/alpine-linux-3.13/ping-ip.out","tests/test_ping.py"]},"message":"support alpine linux ping","epoch":1636058568,"epoch_utc":null},{"commit":"b59e38cfd2c8a7f5868e05d5562557b1c27e5e56","merge":"30cff5f 5ba22da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 30 14:02:25 2021 -0700","message":"Merge pull request #176 from kellyjonbrazil/dev\n\nDev v1.17.1","epoch":1635627745,"epoch_utc":null},{"commit":"5ba22dae597b9d154ca0a82f71cfbd8d8a6325db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 30 13:57:36 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"]},"message":"add JSON lines info","epoch":1635627456,"epoch_utc":null},{"commit":"4232e523acc523e510b4881d2a57a95b88ec8c8b","merge":"bee80b3 30cff5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 30 13:49:45 2021 -0700","message":"Merge branch 'master' into dev","epoch":1635626985,"epoch_utc":null},{"commit":"bee80b35d2b8c15e6233f2798e9c02a11e9e1e9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 30 13:47:21 2021 -0700","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["CHANGELOG","docs/parsers/csv_s.md","man/jc.1"]},"message":"update for version bump","epoch":1635626841,"epoch_utc":null},{"commit":"c32395f6950d6294770ee93e8bf4d79c7d275ac3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 27 12:54:20 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_utils.py"]},"message":"linting","epoch":1635364460,"epoch_utc":null},{"commit":"735c5e1078cc27b5cba03b8ebbae15aeca6b8fbd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 12:26:23 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["tests/test_csv_s.py"]},"message":"update comments for ParseError test: https://bugs.python.org/issue45617","epoch":1635276383,"epoch_utc":null},{"commit":"d09c94b292ca3beec92a00f8a51b7259dd30a1e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 12:24:49 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add python 3.10 testing info","epoch":1635276289,"epoch_utc":null},{"commit":"4d04866f48f72b9ea0d213dc1533729d3b68a503","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 12:24:37 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/csv_s.py"]},"message":"add python bug https://bugs.python.org/issue45617 info","epoch":1635276277,"epoch_utc":null},{"commit":"a2d90f4dfcdc2cb00c6c0fa957493c95a21e256b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 10:04:39 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_csv_s.py"]},"message":"force test","epoch":1635267879,"epoch_utc":null},{"commit":"93a5002c8b530bd6f5f81e5d8595cde1f836ae41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 10:01:02 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"fix 3.10.0 version number","epoch":1635267662,"epoch_utc":null},{"commit":"23bf5227a4c39ea017e55fc21150331e1af6fdb7","merge":"77c96fa 3f5a1f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 07:44:04 2021 -0700","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev","epoch":1635259444,"epoch_utc":null},{"commit":"77c96fa2a96148221bde7d2274e0dfb5386a166f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 07:43:47 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["tests/test_csv_s.py"]},"message":"try tests on python 3.10","epoch":1635259427,"epoch_utc":null},{"commit":"3f5a1f015e9c0807e227b9f7300592e25502e014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 07:42:37 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"add python 3.10","epoch":1635259357,"epoch_utc":null},{"commit":"b280c4fc18e60a85ab212b09aa5bf3a05a0eceff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 07:36:44 2021 -0700","stats":{"files_changed":2,"insertions":11,"deletions":19,"files":[".../fixtures/generic/csv-insurance-streaming.json","tests/test_csv_s.py"]},"message":"add ParseError test to streaming csv parser","epoch":1635259004,"epoch_utc":null},{"commit":"3ab9b43a2eebf535be98c94810ac474bf32ec515","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 07:36:23 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/csv_s.py"]},"message":"raise ParseError on newline bug","epoch":1635258983,"epoch_utc":null},{"commit":"46f568414a5c8d2f135486e86d0ada48cfcefeb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 25 11:35:01 2021 -0700","stats":{"files_changed":3,"insertions":96,"deletions":89,"files":["tests/test_ls_s.py","tests/test_ping_s.py","tests/test_vmstat_s.py"]},"message":"change streaming parser test names","epoch":1635186901,"epoch_utc":null},{"commit":"cba2fd299fff09a551b780e064a6e22bdf7e539a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 25 11:03:32 2021 -0700","stats":{"files_changed":9,"insertions":75,"deletions":61,"files":[".../generic/csv-10k-sales-records-streaming.json","tests/fixtures/generic/csv-deniro-streaming.json","tests/fixtures/generic/csv-example-streaming.json","tests/fixtures/generic/csv-flyrna-streaming.json","tests/fixtures/generic/csv-flyrna2-streaming.json",".../fixtures/generic/csv-homes-pipe-streaming.json","tests/fixtures/generic/csv-homes-streaming.json",".../fixtures/generic/csv-insurance-streaming.json","tests/test_csv_s.py"]},"message":"add tests","epoch":1635185012,"epoch_utc":null},{"commit":"1e6e44f656f1bbb277eb38fb485f7b48e3b9e40b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 25 11:03:21 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/csv_s.py"]},"message":"fix for piping data with non-platform newlines (e.g. windows csv files on unix)","epoch":1635185001,"epoch_utc":null},{"commit":"acac0399946d9781193e9350dd7109f1dd3999fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 25 10:06:01 2021 -0700","stats":{"files_changed":3,"insertions":149,"deletions":0,"files":["tests/fixtures/generic/csv-biostats-streaming.json","tests/fixtures/generic/csv-cities-streaming.json","tests/test_csv_s.py"]},"message":"working tests","epoch":1635181561,"epoch_utc":null},{"commit":"50a3b340164b3139f04f67a2bee16e5343c8a2da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 25 10:05:39 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":8,"files":["jc/parsers/csv_s.py"]},"message":"optimizations and use iter() so we can exhaust data coming from list objects","epoch":1635181539,"epoch_utc":null},{"commit":"b45396070cf28fa36ecb44acd7be3e3bb81a712d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 24 13:14:05 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_vmstat_s.py"]},"message":"update comment","epoch":1635106445,"epoch_utc":null},{"commit":"218b9aec8ac397e26e6cd4ff407f3d10ef88ea9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 24 13:10:47 2021 -0700","stats":{"files_changed":4,"insertions":87,"deletions":48,"files":["README.md","docs/parsers/csv_s.md","jc/parsers/csv_s.py","man/jc.1"]},"message":"doc update for streaming CSV parser","epoch":1635106247,"epoch_utc":null},{"commit":"2b887debc647bd533040e392465967d12869cb02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 24 12:24:44 2021 -0700","stats":{"files_changed":4,"insertions":10172,"deletions":1,"files":["CHANGELOG","jc/cli.py","jc/parsers/csv_s.py","tests/fixtures/generic/csv-10k-sales-records.csv"]},"message":"add csv streaming parser","epoch":1635103484,"epoch_utc":null},{"commit":"0313e3f8ca0e22e1575192d765d5afedf48e94df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 24 11:21:47 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":6,"files":["jc/parsers/lsusb.py"]},"message":"linting","epoch":1635099707,"epoch_utc":null},{"commit":"1669e6e20c3af3d28968558b76d0901a56775ac0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 24 10:58:13 2021 -0700","stats":{"files_changed":1,"insertions":23,"deletions":28,"files":["jc/parsers/lsusb.py"]},"message":"linting","epoch":1635098293,"epoch_utc":null},{"commit":"ef6de75dda90c7221d53e0e0a942f0cac2247354","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 13:11:22 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["tests/test_utils.py"]},"message":"add vmstat timestamp tests to utils","epoch":1635019882,"epoch_utc":null},{"commit":"a6bcec425a3f44ba3c7cd06b5ebaf522b66df109","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:55:14 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"]},"message":"comment update","epoch":1635018914,"epoch_utc":null},{"commit":"596ad9a64d002ced212b08512126e52707fe73d2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:47:44 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"]},"message":"update comment","epoch":1635018464,"epoch_utc":null},{"commit":"7a91c93319f75c37ba6bf268d8270947f0bf8b22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:40:24 2021 -0700","stats":{"files_changed":1,"insertions":122,"deletions":0,"files":["EXAMPLES.md"]},"message":"add lsusb","epoch":1635018024,"epoch_utc":null},{"commit":"b5f7b35f89197879a9f13bd8fa5d2a0c77cc059a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:30:18 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"]},"message":"comment update","epoch":1635017418,"epoch_utc":null},{"commit":"2f47fb7f14c4ff0e1c835897d94ee81d14590aba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:24:35 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["tests/test_uname.py"]},"message":"fix ParseError tests","epoch":1635017075,"epoch_utc":null},{"commit":"1b214c403657a50689f2a04892ce836dea669a1d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:24:11 2021 -0700","stats":{"files_changed":3,"insertions":30,"deletions":0,"files":["jc/parsers/lsusb.py","tests/fixtures/generic/lsusb-t.out","tests/test_lsusb.py"]},"message":"raise ParseError if -t option is detected. add test","epoch":1635017051,"epoch_utc":null},{"commit":"8f94f8acc6bb53bbb19ba150551c7df2183a8863","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 11:56:12 2021 -0700","stats":{"files_changed":11,"insertions":384,"deletions":3,"files":["README.md","docs/parsers/file.md","docs/parsers/lsusb.md","docs/parsers/uname.md","man/jc.1","tests/fixtures/centos-7.7/lsusb-v-single.json","tests/fixtures/centos-7.7/lsusb-v.json","tests/fixtures/centos-7.7/lsusb.json","tests/fixtures/generic/lsusb-test-attributes.json","tests/fixtures/generic/lsusb-test-attributes2.json","tests/test_lsusb.py"]},"message":"add tests and update docs","epoch":1635015372,"epoch_utc":null},{"commit":"3a2a69cfa55e2f40d7536d923170a5cfc986998e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 11:39:08 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/parsers/lsusb.py"]},"message":"formatting","epoch":1635014348,"epoch_utc":null},{"commit":"f599c659881248b79c6dbc86d85a61311c9d3434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 11:08:26 2021 -0700","stats":{"files_changed":2,"insertions":464,"deletions":0,"files":["tests/fixtures/generic/lsusb-test-attributes.out","tests/fixtures/generic/lsusb-test-attributes2.out"]},"message":"add stress test examples","epoch":1635012506,"epoch_utc":null},{"commit":"ad12849fd9fc2177afb30740acc63cf284dc394b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 11:08:05 2021 -0700","stats":{"files_changed":1,"insertions":138,"deletions":26,"files":["jc/parsers/lsusb.py"]},"message":"update docs example and","epoch":1635012485,"epoch_utc":null},{"commit":"f36b3789e8df6673207d6c2d3d0796acfdfe011d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:39:02 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsusb.py"]},"message":"formatting","epoch":1634942342,"epoch_utc":null},{"commit":"6d18c0ba61cd188dbff736f1be47b7362c841687","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:37:40 2021 -0700","stats":{"files_changed":1,"insertions":47,"deletions":47,"files":["jc/parsers/lsusb.py"]},"message":"change variable name last_attribute and last_attr to last_item","epoch":1634942260,"epoch_utc":null},{"commit":"17097abec9567a58b5a5f7bbed11ecfd69cbd28c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:28:44 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":6,"files":["jc/parsers/lsusb.py"]},"message":"formatting","epoch":1634941724,"epoch_utc":null},{"commit":"b7ddd3b285f205211394edc70b611171cf72a4c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:23:04 2021 -0700","stats":{"files_changed":1,"insertions":22,"deletions":22,"files":["jc/parsers/lsusb.py"]},"message":"change variable names","epoch":1634941384,"epoch_utc":null},{"commit":"75b23f62c9d7b33907af92964d1a6234332fbc78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:18:55 2021 -0700","stats":{"files_changed":1,"insertions":35,"deletions":7,"files":["jc/parsers/lsusb.py"]},"message":"working configuration_descriptor and device_descriptor attributes","epoch":1634941135,"epoch_utc":null},{"commit":"f88967b2a59d79e053554d1e141f71e9d2d87456","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:02:04 2021 -0700","stats":{"files_changed":1,"insertions":126,"deletions":21,"files":["jc/parsers/lsusb.py"]},"message":"add attribute lists up to interface_association","epoch":1634940124,"epoch_utc":null},{"commit":"ba2846664b35b2e94aa905431c55c029b24a64e3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 13:40:01 2021 -0700","stats":{"files_changed":1,"insertions":22,"deletions":2,"files":["jc/parsers/lsusb.py"]},"message":"edpoint_descriptors attributes working","epoch":1634935201,"epoch_utc":null},{"commit":"10dba37ca2624e05eff246ef49df8ebd3f275d86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 12:49:57 2021 -0700","stats":{"files_changed":1,"insertions":28,"deletions":1,"files":["jc/parsers/lsusb.py"]},"message":"hub_descriptor attributes working","epoch":1634932197,"epoch_utc":null},{"commit":"0e6f938514965503f1d86d56c047f9f8fc03ac65","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 10:31:26 2021 -0700","stats":{"files_changed":1,"insertions":36,"deletions":45,"files":["jc/parsers/lsusb.py"]},"message":"working hub_port_status section","epoch":1634923886,"epoch_utc":null},{"commit":"159d87c1126f4d79d5e34837bc2c353a5445803b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 07:14:21 2021 -0700","stats":{"files_changed":3,"insertions":18,"deletions":7,"files":["jc/parsers/uname.py","tests/fixtures/centos-7.7/uname.out","tests/test_uname.py"]},"message":"add length guard and test for uname with no -a on linux","epoch":1634912061,"epoch_utc":null},{"commit":"9e7b1621cf232e9859bdf018737e536820f380a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 21 16:59:28 2021 -0700","stats":{"files_changed":1,"insertions":18,"deletions":18,"files":["jc/parsers/lsusb.py"]},"message":"device_status working","epoch":1634860768,"epoch_utc":null},{"commit":"2057817ef8fec85b2a978b682e7fe8bc16def828","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 20 15:59:27 2021 -0700","stats":{"files_changed":11,"insertions":89,"deletions":0,"files":["tests/fixtures/debian10/uname-a.json","tests/fixtures/debian10/uname-a.out","tests/fixtures/freebsd12/uname-a.json","tests/fixtures/freebsd12/uname-a.out","tests/fixtures/freebsd12/uname-a2.json","tests/fixtures/freebsd12/uname-a2.out","tests/fixtures/generic/uname-a-different-proc.json","tests/fixtures/generic/uname-a-different-proc.out","tests/fixtures/generic/uname-a.json","tests/fixtures/generic/uname-a.out","tests/test_uname.py"]},"message":"add uname tests","epoch":1634770767,"epoch_utc":null},{"commit":"a1eabad2d37bb0d0e9407edf7305e223eba67da2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 20 15:58:43 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/uname.py"]},"message":"add comments","epoch":1634770723,"epoch_utc":null},{"commit":"92bf2b1ca2a172d3977d6e3c36b5ca1a8c2bab63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 20 15:27:14 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":20,"files":["CHANGELOG","jc/parsers/uname.py"]},"message":"simplify fixup logic for uname","epoch":1634768834,"epoch_utc":null},{"commit":"2b2123a4ba9b77d2089d367fe85dcb5d2857a295","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 20 07:34:37 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","jc/parsers/uname.py"]},"message":"add FreeBSD support","epoch":1634740477,"epoch_utc":null},{"commit":"908b2f9200ddcce4beb531a3c90908786b6a5b02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 19 16:16:25 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"]},"message":"add items","epoch":1634685385,"epoch_utc":null},{"commit":"deff0c7bfdf942b8d7e7bd140219e08bf80a50cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 19 16:05:10 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":5,"files":["jc/parsers/uname.py"]},"message":"remove print debug","epoch":1634684710,"epoch_utc":null},{"commit":"7cd01efa64029775042a2c145997ce30ef6b4f6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 19 16:01:56 2021 -0700","stats":{"files_changed":1,"insertions":25,"deletions":1,"files":["jc/parsers/uname.py"]},"message":"fixup for cases where the 'process' and/or 'machine' fields are blank on linux","epoch":1634684516,"epoch_utc":null},{"commit":"2dbe56456bbea2bdfce7eacbf8b9f10a1b249f55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 15 11:43:15 2021 -0700","stats":{"files_changed":1,"insertions":49,"deletions":39,"files":["jc/parsers/lsusb.py"]},"message":"add nested_dict. start work on hub_port_status and device_status","epoch":1634323395,"epoch_utc":null},{"commit":"6078a411ef612be8bad012aa404f34ebd74a1fd7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 13 11:07:09 2021 -0600","stats":{"files_changed":1,"insertions":79,"deletions":4,"files":["jc/parsers/lsusb.py"]},"message":"add initial schema doc","epoch":1634148429,"epoch_utc":null},{"commit":"4a3656562f161a51f5cb6f0e9ccd271859b78d62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 13 07:26:31 2021 -0600","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["jc/parsers/lsusb.py"]},"message":"del null keys","epoch":1634135191,"epoch_utc":null},{"commit":"ba75989a24839907723ed7c3d7a497473d489a34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 22:51:45 2021 -0600","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/lsusb.py"]},"message":"update comments","epoch":1634104305,"epoch_utc":null},{"commit":"9e9e2c362894f0072ab839565829881d750c8912","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 22:40:39 2021 -0600","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsusb.py"]},"message":"move state instantiation before has_data test","epoch":1634103639,"epoch_utc":null},{"commit":"9a2a8c6b61a46a9bfb5a4492b86774a4a78672ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 22:38:03 2021 -0600","stats":{"files_changed":1,"insertions":20,"deletions":52,"files":["jc/parsers/lsusb.py"]},"message":"shorten set_sections","epoch":1634103483,"epoch_utc":null},{"commit":"dae42ef1619441637672d634f9e5d7ab26115f09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 15:55:09 2021 -0600","stats":{"files_changed":1,"insertions":18,"deletions":1,"files":["jc/parsers/lsusb.py"]},"message":"add hub_port_status and device_status","epoch":1634079309,"epoch_utc":null},{"commit":"931f2cab78bda180443535c04b532d04c6e88dd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 12:38:40 2021 -0700","stats":{"files_changed":1,"insertions":14,"deletions":11,"files":["jc/parsers/lsusb.py"]},"message":"add hub_descriptor","epoch":1634067520,"epoch_utc":null},{"commit":"72b061bed4453686d264ccf8977cba6c2a4794ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 12:29:59 2021 -0700","stats":{"files_changed":1,"insertions":32,"deletions":8,"files":["jc/parsers/lsusb.py"]},"message":"add endpoint_descriptors","epoch":1634066999,"epoch_utc":null},{"commit":"29a7c73990d9620b15a4010d17fc9a9a859f44b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 11:24:49 2021 -0700","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/parsers/lsusb.py"]},"message":"add hid_device_descriptor and report_descriptors","epoch":1634063089,"epoch_utc":null},{"commit":"2d1d68e3007f76d4c34ac07ae822935ab6021e79","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 09:57:47 2021 -0700","stats":{"files_changed":1,"insertions":87,"deletions":88,"files":["jc/parsers/lsusb.py"]},"message":"simplify populate_lists. Add CDC lists","epoch":1634057867,"epoch_utc":null},{"commit":"c5c1e170d1f502de5c76e9e481a23b26ffcaf237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 11 21:33:18 2021 -0700","stats":{"files_changed":1,"insertions":111,"deletions":76,"files":["jc/parsers/lsusb.py"]},"message":"interface descriptors working","epoch":1634013198,"epoch_utc":null},{"commit":"9c1bb66452838e704ef2277f313bb51a42dc03b9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 11 07:48:23 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/lsusb.py"]},"message":"fix remove _state field during schema_populate","epoch":1633963703,"epoch_utc":null},{"commit":"a4f3306bae90fbc807fdd9ff2ce71e25d36a663f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 10 22:18:13 2021 -0700","stats":{"files_changed":1,"insertions":69,"deletions":28,"files":["jc/parsers/lsusb.py"]},"message":"initial schema build. need to figure out why deleting _state from output_line causes exceptions","epoch":1633929493,"epoch_utc":null},{"commit":"1bc638b6ee7a820406ba4b84d3408f7cd4fe779d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 10 10:03:39 2021 -0700","stats":{"files_changed":1,"insertions":36,"deletions":32,"files":["jc/parsers/lsusb.py"]},"message":"add bus_list and add all device_list data to the list","epoch":1633885419,"epoch_utc":null},{"commit":"9ad0cd9dae8822235c37159541ce72471eb4263e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 9 20:05:55 2021 -0700","stats":{"files_changed":1,"insertions":116,"deletions":211,"files":["jc/parsers/lsusb.py"]},"message":"now storing state within the objects to make building the schema (later) easier.","epoch":1633835155,"epoch_utc":null},{"commit":"6d4a4691276d8659253b2ac8f8bdbd71a1fece7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 6 22:03:16 2021 -0700","stats":{"files_changed":1,"insertions":356,"deletions":333,"files":["jc/parsers/lsusb.py"]},"message":"use class for state","epoch":1633582996,"epoch_utc":null},{"commit":"ed6997e3ff2e575a6d4daa7d7a2cbe7dddacdd4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 5 16:47:23 2021 -0700","stats":{"files_changed":2,"insertions":170,"deletions":34,"files":["jc/parsers/lsusb.py","tests/fixtures/centos-7.7/lsusb-v-single.out"]},"message":"add interface_association section","epoch":1633477643,"epoch_utc":null},{"commit":"eb788fca6e25eea1fa8a43b22360c852ecf5af35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 5 14:59:49 2021 -0700","stats":{"files_changed":4,"insertions":919,"deletions":0,"files":["jc/cli.py","jc/parsers/lsusb.py","tests/fixtures/centos-7.7/lsusb-v.out","tests/fixtures/centos-7.7/lsusb.out"]},"message":"somewhat working lsusb parser. needs a lot more TLC","epoch":1633471189,"epoch_utc":null},{"commit":"9186f5f37739012b8c04c776310a20ef55b1469f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 2 14:53:07 2021 -0700","stats":{"files_changed":7,"insertions":99,"deletions":4,"files":["CHANGELOG","jc/__init__.py","jc/parsers/file.py","setup.py","tests/fixtures/osx-10.14.6/file3.json","tests/fixtures/osx-10.14.6/file3.out","tests/test_file.py"]},"message":"fix file parser for gzip cases (has ': ' in the description, which is the delimiter)","epoch":1633211587,"epoch_utc":null},{"commit":"30cff5f28140a5b20a617c8145c13e43b7b6685b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 27 10:35:08 2021 -0700","stats":{"files_changed":8,"insertions":17,"deletions":3,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","man/jc.1"]},"message":"add note that the streaming parser outputs JSON Lines","epoch":1632764108,"epoch_utc":null},{"commit":"b724e0969a0d6b22bed0c77eb8d629381179ea3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 20:22:16 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"]},"message":"-qq instead of -q","epoch":1632712936,"epoch_utc":null},{"commit":"a62c49e8715873b068a96da5021ea24a783acd6b","merge":"77dcbc5 9b160f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 16:35:29 2021 -0700","message":"Merge pull request #172 from kellyjonbrazil/master\n\nsync master to dev","epoch":1632699329,"epoch_utc":null},{"commit":"9b160f6279bbbf0c15413c98922eef137ba2f3f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 16:29:36 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]},"message":"link update","epoch":1632698976,"epoch_utc":null},{"commit":"338a4e2612f70bb3e2af31f61a7db75f647293fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 16:27:15 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]},"message":"formatting","epoch":1632698835,"epoch_utc":null},{"commit":"0140688750be61dd752059ee66734ab1c7a8f30e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 16:24:18 2021 -0700","stats":{"files_changed":6,"insertions":8,"deletions":4,"files":["README.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","templates/readme_template"]},"message":"link updates","epoch":1632698658,"epoch_utc":null},{"commit":"73e5ea98c1ca2b9299085e3832791162eca3b9ff","merge":"528aac7 77dcbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 14:55:18 2021 -0700","message":"Merge pull request #170 from kellyjonbrazil/dev\n\njc v1.17.0 from dev","epoch":1632693318,"epoch_utc":null},{"commit":"77dcbc544da271edab5de5ad209117e98c846f9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 14:50:02 2021 -0700","stats":{"files_changed":3,"insertions":2,"deletions":3,"files":["CHANGELOG","jc/__init__.py","man/jc.1"]},"message":"final doc update","epoch":1632693002,"epoch_utc":null},{"commit":"c7bcb0947ae32acc9cdba7a6975d2f2557f10a39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 13:20:42 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"]},"message":"indent subsequent error and warning lines","epoch":1632687642,"epoch_utc":null},{"commit":"5cd3f7f71d38b560a88dd6057e9c7a94991a3d71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 13:15:35 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/foo_s.py"]},"message":"Add example to raise ParseError if there is no output data to yield","epoch":1632687335,"epoch_utc":null},{"commit":"5044388ab2e8d7d8b427fd51b0ab875611bd127f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 13:04:27 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":3,"files":["jc/parsers/vmstat_s.py","tests/test_vmstat_s.py"]},"message":"raise if line data is unrecognized","epoch":1632686667,"epoch_utc":null},{"commit":"ee075db59819d80e4dcb60ddbd9cfe2fd529dfe9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 12:00:30 2021 -0700","stats":{"files_changed":4,"insertions":5,"deletions":7,"files":["jc/cli.py","jc/parsers/foo_s.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"]},"message":"linting","epoch":1632682830,"epoch_utc":null},{"commit":"9904e0be61e7c81b907bf3770f111346daeff481","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Sep 25 08:28:57 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/utils.md","jc/utils.py"]},"message":"formatting","epoch":1632583737,"epoch_utc":null},{"commit":"31b69b3242eeca2c02f87c31d58193dd3f06fe49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Sep 25 08:23:46 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/utils.md","jc/utils.py"]},"message":"formatting","epoch":1632583426,"epoch_utc":null},{"commit":"e6a80fea3228122dd84e17672c835c0460ad1342","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Sep 25 08:19:34 2021 -0700","stats":{"files_changed":3,"insertions":7,"deletions":7,"files":["docs/utils.md","jc/utils.py","man/jc.1"]},"message":"formatting","epoch":1632583174,"epoch_utc":null},{"commit":"d6aec00e038d1ecfe43c13a6909d50630455b372","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 16:45:38 2021 -0700","stats":{"files_changed":4,"insertions":27,"deletions":1,"files":["tests/fixtures/ubuntu-18.04/vmstat-1-long-streaming.json","tests/fixtures/ubuntu-18.04/vmstat-1-long.json","tests/test_vmstat.py","tests/test_vmstat_s.py"]},"message":"add vmstat-1-long tests","epoch":1632527138,"epoch_utc":null},{"commit":"4aa7d81e11ea7fcfbb5c9d74337cde617b1a0d5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 16:27:11 2021 -0700","stats":{"files_changed":3,"insertions":50,"deletions":2,"files":["jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","tests/fixtures/ubuntu-18.04/vmstat-1-long.out"]},"message":"ignore re-printed header rows in output","epoch":1632526031,"epoch_utc":null},{"commit":"48cdabc3b0862d6291e1ec59ab385e0e146c31eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 10:11:15 2021 -0700","stats":{"files_changed":4,"insertions":16,"deletions":0,"files":["docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"]},"message":"document timestamps","epoch":1632503475,"epoch_utc":null},{"commit":"a1791ef5479749692c79bbe98fc7687d70cd6cda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 10:01:13 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"]},"message":"linting","epoch":1632502873,"epoch_utc":null},{"commit":"7bc87f6c2d4cfcfa656a1c1b8973a4c0414c85d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 09:24:30 2021 -0700","stats":{"files_changed":8,"insertions":8,"deletions":8,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","man/jc.1"]},"message":"change _meta to _jc_meta","epoch":1632500670,"epoch_utc":null},{"commit":"bbed9e274b8252ba0518140fe7fc97029310771f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 09:16:44 2021 -0700","stats":{"files_changed":1,"insertions":154,"deletions":159,"files":["jc/parsers/ping_s.py"]},"message":"linting","epoch":1632500204,"epoch_utc":null},{"commit":"486282b9856f5e56cf43ee1399d8e7cb78353b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 08:52:39 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/vmstat_s.py"]},"message":"linting","epoch":1632498759,"epoch_utc":null},{"commit":"a4d45b653f794033978940da14910f5d607a8254","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 08:49:37 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["jc/parsers/foo_s.py","jc/parsers/vmstat.py"]},"message":"linting","epoch":1632498577,"epoch_utc":null},{"commit":"22e151b01c0f97c141d912c9646e46df0320d622","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 08:43:09 2021 -0700","stats":{"files_changed":2,"insertions":56,"deletions":60,"files":["jc/cli.py","jc/utils.py"]},"message":"linting","epoch":1632498189,"epoch_utc":null},{"commit":"7a4ebcd1ecdb4929aae70e44b4f9b6b5ab52b393","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 21:22:01 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CONTRIBUTING.md"]},"message":"language hints","epoch":1632457321,"epoch_utc":null},{"commit":"651cbfe02fbb354c4caf8e0d022655642e7caed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 21:20:25 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"add streaming foo parser","epoch":1632457225,"epoch_utc":null},{"commit":"8c3e764516e1c28961b09380b638a57ce98b1261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 21:17:17 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"add streaming parser to contrib guidelines","epoch":1632457037,"epoch_utc":null},{"commit":"b4e75da7e3f23502723ce8b2a7261b376f296864","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 21:14:47 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1632456887,"epoch_utc":null},{"commit":"37223f086cabc8db5962415bd161fed151dafb9d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 21:13:21 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1632456801,"epoch_utc":null},{"commit":"a404033735c2c8075a8e08194197eae59db70afd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 20:54:44 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add error and warning message wrap info","epoch":1632455684,"epoch_utc":null},{"commit":"b7433ed085c0ba22ea0d49330871a651a8d83fb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 20:53:31 2021 -0700","stats":{"files_changed":6,"insertions":80,"deletions":41,"files":["docs/utils.md","jc/cli.py","jc/parsers/file.py","jc/parsers/ls.py","jc/parsers/traceroute.py","jc/utils.py"]},"message":"auto wrap warning and error messages","epoch":1632455611,"epoch_utc":null},{"commit":"224d3d65ada4216e28e142d411b0c2c3358517b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 13:15:38 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"Add exception class name to error message","epoch":1632428138,"epoch_utc":null},{"commit":"a349fb0bdabaf74503831f22c4efbd02254f809d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 13:08:31 2021 -0700","stats":{"files_changed":3,"insertions":10,"deletions":8,"files":["README.md","docs/utils.md","man/jc.1"]},"message":"change _meta to _jc_meta","epoch":1632427711,"epoch_utc":null},{"commit":"e7ddcfb83fb295034db44ade407476ff3a962cd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 13:07:10 2021 -0700","stats":{"files_changed":5,"insertions":14,"deletions":12,"files":["jc/utils.py","templates/manpage_template","templates/readme_template",".../centos-7.7/ping-ip-O-streaming-ignore-exceptions.json","tests/test_ping_s.py"]},"message":"change _meta to _jc_meta","epoch":1632427630,"epoch_utc":null},{"commit":"abd20dfe3662f65373ac582c70aa740e53b52f68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 12:58:24 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"formatting","epoch":1632427104,"epoch_utc":null},{"commit":"dc1fd3ef1be41aee349b159059f1febff76f6caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 11:54:58 2021 -0700","stats":{"files_changed":4,"insertions":12,"deletions":12,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"fix -qq docs","epoch":1632423298,"epoch_utc":null},{"commit":"98a7686db46fbd3ed98382867976249f307d0015","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 11:48:39 2021 -0700","stats":{"files_changed":18,"insertions":160,"deletions":152,"files":["README.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","docs/utils.md","jc/cli.py","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","jc/utils.py","man/jc.1","templates/manpage_template","templates/readme_template","... => ping-ip-O-streaming-ignore-exceptions.json}","tests/test_ls_s.py","tests/test_ping_s.py","tests/test_vmstat_s.py"]},"message":"use -qq to ignore streaming exceptions","epoch":1632422919,"epoch_utc":null},{"commit":"9c6c6c4330fc68115be012de254161f36e3a8328","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 09:04:37 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"add next() info","epoch":1632413077,"epoch_utc":null},{"commit":"f9be5651daa891e06ad0acd8980ffc0fe51fd29d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:59:26 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":6,"files":["README.md","templates/readme_template"]},"message":"add language hints","epoch":1632412766,"epoch_utc":null},{"commit":"df9835a3e62bb2b3b6ec8b55f06a25a00a799d92","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:57:14 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1632412634,"epoch_utc":null},{"commit":"92363be2dd633bdd3c2dd07c72ebd281d2cb4565","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:56:14 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"fix streaming python module example","epoch":1632412574,"epoch_utc":null},{"commit":"31b62030156f9c826fe5c7d127e9dd0ace582dd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:54:15 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1632412455,"epoch_utc":null},{"commit":"18805858d685d456f9a38540bbaedbaa1a411546","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:53:25 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["man/jc.1","templates/manpage_template"]},"message":"formatting","epoch":1632412405,"epoch_utc":null},{"commit":"e676f0e20fb6e96a536c4d182b0d287cdc1ad0f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:53:14 2021 -0700","stats":{"files_changed":2,"insertions":36,"deletions":6,"files":["README.md","templates/readme_template"]},"message":"add streaming parser info for python module use","epoch":1632412394,"epoch_utc":null},{"commit":"20652edefaa7705b8ba756bae3944ff362a295a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 20:11:26 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["CHANGELOG"]},"message":"update changelog","epoch":1632366686,"epoch_utc":null},{"commit":"98c29d07478093e78f53ec633f2dd08cafc3e3ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 19:54:12 2021 -0700","stats":{"files_changed":8,"insertions":120,"deletions":0,"files":["tests/fixtures/centos-7.7/vmstat-a.json","tests/fixtures/centos-7.7/vmstat-at-5-10.json","tests/fixtures/centos-7.7/vmstat-awt.json","tests/fixtures/centos-7.7/vmstat-d.json","tests/fixtures/centos-7.7/vmstat-dt.json","tests/fixtures/centos-7.7/vmstat-w.json","tests/fixtures/centos-7.7/vmstat.json","tests/test_vmstat.py"]},"message":"add vmstat tests","epoch":1632365652,"epoch_utc":null},{"commit":"41a6311f6b3ed2cc94919d042aed51c46cdf3e2f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 19:34:44 2021 -0700","stats":{"files_changed":9,"insertions":132,"deletions":1,"files":["tests/fixtures/centos-7.7/vmstat-a-streaming.json",".../centos-7.7/vmstat-at-5-10-streaming.json",".../fixtures/centos-7.7/vmstat-awt-streaming.json","tests/fixtures/centos-7.7/vmstat-d-streaming.json","tests/fixtures/centos-7.7/vmstat-dt-streaming.json","tests/fixtures/centos-7.7/vmstat-streaming.json","tests/fixtures/centos-7.7/vmstat-w-streaming.json","tests/test_ping_s.py","tests/test_vmstat_s.py"]},"message":"add streaming parser tests","epoch":1632364484,"epoch_utc":null},{"commit":"978760ec57e04e3ec347c8764bfad015b6dddbff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 19:32:20 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"add exception class name to error string","epoch":1632364340,"epoch_utc":null},{"commit":"d410425537817964ceb7b61e0fdff6c03fdf8766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:43:26 2021 -0700","stats":{"files_changed":4,"insertions":136,"deletions":136,"files":["docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"]},"message":"replace single quotes with double quotes in doc","epoch":1632347006,"epoch_utc":null},{"commit":"6b7430329cbe1bfb95b47bcfe031906641c127e1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:38:13 2021 -0700","stats":{"files_changed":5,"insertions":269,"deletions":1,"files":["README.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat_s.py","man/jc.1"]},"message":"doc update","epoch":1632346693,"epoch_utc":null},{"commit":"40fe0d4a6081a1233bf5c3eb51a01da1f12bc4dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:34:46 2021 -0700","stats":{"files_changed":1,"insertions":141,"deletions":22,"files":["jc/parsers/vmstat_s.py"]},"message":"working parser","epoch":1632346486,"epoch_utc":null},{"commit":"365c5354a0349e470558d15243217a064e73da38","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:34:32 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/vmstat.py"]},"message":"remove debug print statement","epoch":1632346472,"epoch_utc":null},{"commit":"b246a05cbb4c1c564f81b3e72cecb62edbe6ced6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:34:19 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"fix vmstat-s name","epoch":1632346459,"epoch_utc":null},{"commit":"9e5a7a4abb8668d043625951a05eb5733cbbd56f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:07:09 2021 -0700","stats":{"files_changed":7,"insertions":37,"deletions":0,"files":["tests/fixtures/centos-7.7/vmstat-a.out","tests/fixtures/centos-7.7/vmstat-at-5-10.out","tests/fixtures/centos-7.7/vmstat-awt.out","tests/fixtures/centos-7.7/vmstat-d.out","tests/fixtures/centos-7.7/vmstat-dt.out","tests/fixtures/centos-7.7/vmstat-w.out","tests/fixtures/centos-7.7/vmstat.out"]},"message":"add vmstat sample output","epoch":1632344829,"epoch_utc":null},{"commit":"f266acbccafc040c375723147b8e5d7fddb1e697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:06:51 2021 -0700","stats":{"files_changed":1,"insertions":106,"deletions":14,"files":["jc/parsers/vmstat.py"]},"message":"add processing logic","epoch":1632344811,"epoch_utc":null},{"commit":"4e3b471f1801f1b9006b18cae2a3d816f361262e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:06:28 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/utils.py"]},"message":"add format for vmstat","epoch":1632344788,"epoch_utc":null},{"commit":"5e28736c2e0c951e71e6531e03a9619279d95d3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 12:08:20 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"]},"message":"add vmstat and vmstat_s","epoch":1632337700,"epoch_utc":null},{"commit":"a91913a3b517ea0dbb25d6e4cc92850eb2fde5ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 12:07:27 2021 -0700","stats":{"files_changed":1,"insertions":106,"deletions":0,"files":["jc/parsers/vmstat_s.py"]},"message":"streaming parser template","epoch":1632337647,"epoch_utc":null},{"commit":"90c64f0ae0d97d025adee40970d89baca79ee4ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 12:07:09 2021 -0700","stats":{"files_changed":1,"insertions":182,"deletions":0,"files":["jc/parsers/vmstat.py"]},"message":"initial working parser","epoch":1632337629,"epoch_utc":null},{"commit":"7cc642ed1a476abda709ac9b79900a1de12e1ef7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 12:06:56 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/foo_s.py"]},"message":"formatting","epoch":1632337616,"epoch_utc":null},{"commit":"809f64d35a92bb3d7380fa9d78ac1421a10b81fc","merge":"ff0fda4 a6f859a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 22:58:18 2021 -0700","message":"Merge pull request #169 from kellyjonbrazil/streaming\n\nStreaming to dev","epoch":1632290298,"epoch_utc":null},{"commit":"a6f859a55edae50fcc185948736218404cfaa929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 22:47:48 2021 -0700","stats":{"files_changed":18,"insertions":168,"deletions":153,"files":[".../osx-10.14.6/ping-hostname-p-streaming.json",".../osx-10.14.6/ping-hostname-s-streaming.json",".../osx-10.14.6/ping-hostname-streaming.json",".../osx-10.14.6/ping-ip-dup-streaming.json",".../fixtures/osx-10.14.6/ping-ip-p-streaming.json",".../fixtures/osx-10.14.6/ping-ip-s-streaming.json","tests/fixtures/osx-10.14.6/ping-ip-streaming.json",".../osx-10.14.6/ping-ip-unreachable-streaming.json",".../osx-10.14.6/ping6-hostname-p-streaming.json",".../osx-10.14.6/ping6-hostname-s-streaming.json",".../osx-10.14.6/ping6-hostname-streaming.json",".../osx-10.14.6/ping6-ip-dup-streaming.json",".../fixtures/osx-10.14.6/ping6-ip-p-streaming.json",".../fixtures/osx-10.14.6/ping6-ip-s-streaming.json","tests/fixtures/osx-10.14.6/ping6-ip-streaming.json","tests/fixtures/pi/ping-ip-O-D-streaming.json","tests/fixtures/pi/ping-ip-O-streaming.json","tests/test_ping_s.py"]},"message":"add final ping_s tests","epoch":1632289668,"epoch_utc":null},{"commit":"39ef88078f43708e470d3c1b2fd95e76b5cbeb08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 22:47:02 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/ping_s.py"]},"message":"add destination_ip to error lines","epoch":1632289622,"epoch_utc":null},{"commit":"aeea5e8d2eab2fef3e14637f512aed7b117c4a3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 22:00:05 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/test_ls_s.py"]},"message":"formatting","epoch":1632286805,"epoch_utc":null},{"commit":"1a0700bff4bdebbd9f1f92f2fc7a56c4d5ed6925","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 21:58:59 2021 -0700","stats":{"files_changed":31,"insertions":240,"deletions":213,"files":[".../fedora32/ping-hostname-O-D-p-s-streaming.json",".../fedora32/ping-hostname-O-p-streaming.json",".../fedora32/ping-hostname-O-streaming.json","tests/fixtures/fedora32/ping-ip-O-D-streaming.json","tests/fixtures/fedora32/ping-ip-O-streaming.json",".../fedora32/ping6-hostname-O-D-p-s-streaming.json",".../fedora32/ping6-hostname-O-p-streaming.json",".../fedora32/ping6-ip-O-D-p-streaming.json",".../fixtures/fedora32/ping6-ip-O-p-streaming.json",".../freebsd12/ping-hostname-p-streaming.json",".../freebsd12/ping-hostname-s-streaming.json",".../freebsd12/ping-hostname-streaming.json","tests/fixtures/freebsd12/ping-ip-p-streaming.json","tests/fixtures/freebsd12/ping-ip-s-streaming.json","tests/fixtures/freebsd12/ping-ip-streaming.json",".../freebsd12/ping6-hostname-p-streaming.json",".../freebsd12/ping6-hostname-s-streaming.json",".../freebsd12/ping6-hostname-streaming.json","tests/fixtures/freebsd12/ping6-ip-p-streaming.json","tests/fixtures/freebsd12/ping6-ip-s-streaming.json","tests/fixtures/freebsd12/ping6-ip-streaming.json",".../ping-hostname-O-D-p-s-streaming.json",".../ubuntu-18.04/ping-hostname-O-p-streaming.json",".../ubuntu-18.04/ping-hostname-O-streaming.json",".../ubuntu-18.04/ping-ip-O-D-streaming.json",".../fixtures/ubuntu-18.04/ping-ip-O-streaming.json",".../ping6-hostname-O-D-p-s-streaming.json",".../ubuntu-18.04/ping6-hostname-O-p-streaming.json",".../ubuntu-18.04/ping6-ip-O-D-p-streaming.json",".../ubuntu-18.04/ping6-ip-O-p-streaming.json","tests/test_ping_s.py"]},"message":"add more ping-s tests","epoch":1632286739,"epoch_utc":null},{"commit":"b5fa6d068f240671eb948b055cd4f7bf127e0ec0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 16:03:00 2021 -0700","stats":{"files_changed":5,"insertions":25,"deletions":5,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"]},"message":"update docs","epoch":1632265380,"epoch_utc":null},{"commit":"1baec0b420feff068f2dc1e35499f78aa7d0a6e0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 15:43:02 2021 -0700","stats":{"files_changed":13,"insertions":815,"deletions":0,"files":[".../ping-hostname-O-D-p-s-streaming.json",".../centos-7.7/ping-hostname-O-p-streaming.json",".../centos-7.7/ping-hostname-O-streaming.json",".../fixtures/centos-7.7/ping-ip-O-D-streaming.json",".../centos-7.7/ping-ip-O-streaming-quiet.json","tests/fixtures/centos-7.7/ping-ip-O-streaming.json",".../fixtures/centos-7.7/ping-ip-dup-streaming.json",".../ping6-hostname-O-D-p-s-streaming.json",".../centos-7.7/ping6-hostname-O-p-streaming.json",".../centos-7.7/ping6-ip-O-D-p-streaming.json",".../centos-7.7/ping6-ip-O-p-streaming.json",".../centos-7.7/ping6-ip-dup-streaming.json","tests/test_ping_s.py"]},"message":"add some streaming tests","epoch":1632264182,"epoch_utc":null},{"commit":"4f2a4e1dee9d722d2aa5ddf2c082a358c88cf640","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 15:42:45 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/parsers/ping_s.py"]},"message":"skip blank lines and warning lines","epoch":1632264165,"epoch_utc":null},{"commit":"758d617668d1f9d0f27b52d46749e5b67a570cf1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 13:29:50 2021 -0700","stats":{"files_changed":5,"insertions":5,"deletions":5,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"]},"message":"doc update","epoch":1632256190,"epoch_utc":null},{"commit":"55322c37f57a9c8e28641a61928fad2329f5e50d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 12:36:36 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/foo_s.py"]},"message":"formatting","epoch":1632252996,"epoch_utc":null},{"commit":"d19ea5552bb3a379f7f92bcb58794c557ecc6647","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 12:33:05 2021 -0700","stats":{"files_changed":12,"insertions":193,"deletions":0,"files":["tests/fixtures/centos-7.7/ls-al-streaming.json","tests/fixtures/centos-7.7/ls-alR-streaming.json","tests/fixtures/centos-7.7/ls-alh-streaming.json","tests/fixtures/osx-10.14.6/ls-al-streaming.json","tests/fixtures/osx-10.14.6/ls-alR-streaming.json","tests/fixtures/osx-10.14.6/ls-alh-streaming.json",".../osx-10.14.6/ls-lR-empty-folder-streaming.json","tests/fixtures/ubuntu-18.04/ls-al-streaming.json","tests/fixtures/ubuntu-18.04/ls-alR-streaming.json","tests/fixtures/ubuntu-18.04/ls-alh-streaming.json",".../fixtures/ubuntu-18.04/ls-l-iso-streaming.json","tests/test_ls_s.py"]},"message":"add streaming ls parser tests","epoch":1632252785,"epoch_utc":null},{"commit":"130c3527c1083d399deef00ee8fcaa75f609b485","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 12:32:34 2021 -0700","stats":{"files_changed":6,"insertions":25,"deletions":25,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","man/jc.1"]},"message":"update docstrings","epoch":1632252754,"epoch_utc":null},{"commit":"3f221f471416766a860bd19850afda4899ee5eb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 13:21:20 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"]},"message":"doc update","epoch":1632169280,"epoch_utc":null},{"commit":"d64c4cb39056bb869fc117477612ae5ae2ef3d85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 13:04:26 2021 -0700","stats":{"files_changed":2,"insertions":141,"deletions":1,"files":["man/jc.1","templates/manpage_template"]},"message":"add streaming parsers section","epoch":1632168266,"epoch_utc":null},{"commit":"448c56aa46b72438e4a4c83b10a7eb889e3f50e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 13:04:14 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1632168254,"epoch_utc":null},{"commit":"9fbea15b6d031baa8c90f2602e39de7cf51408e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 11:59:54 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":8,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"]},"message":"rename state class to _state","epoch":1632164394,"epoch_utc":null},{"commit":"932060314b3c1ce518b9f57532e124285cb3ad0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 11:51:27 2021 -0700","stats":{"files_changed":2,"insertions":41,"deletions":11,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"]},"message":"doc update","epoch":1632163887,"epoch_utc":null},{"commit":"5e68ae50097cb339f3390449db7e3f189a716320","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 11:42:15 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/parsers/ping_s.py"]},"message":"import exception. tighten up os detection","epoch":1632163335,"epoch_utc":null},{"commit":"d03541beae44a4571a7d0481af01a5c19506207f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 11:24:59 2021 -0700","stats":{"files_changed":1,"insertions":12,"deletions":5,"files":["jc/parsers/ping_s.py"]},"message":"add docstring examples. add exception raise when OS cannot be detected.","epoch":1632162299,"epoch_utc":null},{"commit":"516fa571d90a0c93134c953c15ce84dd31b96b4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 19 21:41:35 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/ping_s.py"]},"message":"remove unused variable. use elif instead of if for linux vs. bsd detection","epoch":1632112895,"epoch_utc":null},{"commit":"a19c12096a8e8de02a6ff761cc9c13ec249d416e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 19 13:18:23 2021 -0700","stats":{"files_changed":1,"insertions":373,"deletions":143,"files":["jc/parsers/ping_s.py"]},"message":"initial working parser for both linux and bsd","epoch":1632082703,"epoch_utc":null},{"commit":"758f27945de4f0897405eba02c7908d815ce6e9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 15:09:56 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/ping_s.py"]},"message":"change data_bytes and bytes to sent_bytes and response_bytes","epoch":1631916596,"epoch_utc":null},{"commit":"8b1e8d58df22f8542ccaf7bf3e1eabe6132e7a42","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 14:44:49 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping_s.py"]},"message":"remove unneeded line","epoch":1631915089,"epoch_utc":null},{"commit":"b967489d085319facee077958deaa04956a98343","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 14:42:30 2021 -0700","stats":{"files_changed":1,"insertions":81,"deletions":40,"files":["jc/parsers/ping_s.py"]},"message":"complete linux coverage including summary","epoch":1631914950,"epoch_utc":null},{"commit":"870d0218be2641e3eddb114c23d54deb23155f25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 10:34:05 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"]},"message":"add unbuffer note","epoch":1631900045,"epoch_utc":null},{"commit":"84020bc2af294cb065105f1399453aefc98eb180","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 10:26:47 2021 -0700","stats":{"files_changed":7,"insertions":12,"deletions":6,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/utils.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","man/jc.1"]},"message":"change error_msg to error in -q result docs","epoch":1631899607,"epoch_utc":null},{"commit":"4efe5344e069ed921f208bcbbd097705be2d3b4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 10:20:22 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add links to HN and Reddit","epoch":1631899222,"epoch_utc":null},{"commit":"9182c545134b3d56d27d2c1d9bda678532bdc3fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 08:24:56 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":8,"files":["jc/utils.py"]},"message":"formatting","epoch":1631892296,"epoch_utc":null},{"commit":"28f0ab0b02d21fc060f1ac7181f85552798dc4bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 08:21:13 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/ls_s.py","jc/utils.py"]},"message":"update streaming error messages","epoch":1631892073,"epoch_utc":null},{"commit":"90d1a30696b2cbfbb06a55cc0cf920cf8ecd89aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 08:05:23 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1631891123,"epoch_utc":null},{"commit":"130b3738cc57fe261e8ef881a57b7836acd7e7e9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 22:32:46 2021 -0700","stats":{"files_changed":4,"insertions":21,"deletions":26,"files":["jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/utils.py"]},"message":"shorten successful yield to a single line","epoch":1631856766,"epoch_utc":null},{"commit":"92c7357615af7689db273aa78d666b35a2ec7a70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 22:04:44 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/foo_s.py"]},"message":"formatting","epoch":1631855084,"epoch_utc":null},{"commit":"c80f8633349c00ea461b8927f9949fe19b2f46ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 22:04:31 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/foo.py"]},"message":"simplify return condition formatting","epoch":1631855071,"epoch_utc":null},{"commit":"4642c20179d4643e0cf1970b264da7d9d91628de","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 21:55:40 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1631854540,"epoch_utc":null},{"commit":"5288eb22aadbbc1005b16428b94d2b07e9a75e3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 21:43:36 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"add info about streaming parser performance characteristics","epoch":1631853816,"epoch_utc":null},{"commit":"df8387a1a99df69eac5005662aaf56d506fa0efd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 21:37:54 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"streaming parsers cannot be used with the magic syntax","epoch":1631853474,"epoch_utc":null},{"commit":"cc38c27f44d3f088609b878304cab8eed75fc8f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 21:33:57 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1631853237,"epoch_utc":null},{"commit":"64f5357d69fe88b45d710d38948969699e1ca12f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 21:31:45 2021 -0700","stats":{"files_changed":2,"insertions":84,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add streaming parsers section","epoch":1631853105,"epoch_utc":null},{"commit":"51debb5649bef431e51e543f1c9270e2810aa58f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 20:45:01 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"]},"message":"add vmstat parser and change from linebuffer to unbuffer","epoch":1631850301,"epoch_utc":null},{"commit":"b48d05a4313b27cf5e69d3e4259542e0b131b60f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 20:41:56 2021 -0700","stats":{"files_changed":5,"insertions":15,"deletions":15,"files":["README.md","jc/cli.py","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"change from line buffer output to unbuffer output","epoch":1631850116,"epoch_utc":null},{"commit":"4e7f6b337db61b8a106cf958f6b874157909c87a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 20:26:56 2021 -0700","stats":{"files_changed":3,"insertions":17,"deletions":25,"files":["jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"]},"message":"simplify yield statements","epoch":1631849216,"epoch_utc":null},{"commit":"a509d99cafd80862721595ee59ccc4a471b5e5a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 20:25:28 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/utils.py"]},"message":"add stream_success dictionary","epoch":1631849128,"epoch_utc":null},{"commit":"481e45fb644ac88fa77ef35643b793f179fe6859","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 14 06:02:55 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"]},"message":"limit parse error msg lenght","epoch":1631624575,"epoch_utc":null},{"commit":"e9038e1720e1c0e520e2f29b718aa8505cbbb9a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 21:15:26 2021 -0700","stats":{"files_changed":1,"insertions":66,"deletions":0,"files":["docs/parsers/ping_s.md"]},"message":"initial streaming ping docs","epoch":1631592926,"epoch_utc":null},{"commit":"8fd9e582bf29275c4daaa3be88ea8d196411b34a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 21:15:08 2021 -0700","stats":{"files_changed":1,"insertions":15,"deletions":17,"files":["docs/parsers/ls_s.md"]},"message":"doc update","epoch":1631592908,"epoch_utc":null},{"commit":"c1fd6f48a5a3501499c9fca7239673b8555cc7c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 21:14:56 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["docs/utils.md"]},"message":"add stream_error docs","epoch":1631592896,"epoch_utc":null},{"commit":"af615c7f4b3f589ffc1b37cf9834062a04c013cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 21:14:38 2021 -0700","stats":{"files_changed":6,"insertions":26,"deletions":5,"files":["CHANGELOG","README.md","jc/cli.py","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"add line buffer output option","epoch":1631592878,"epoch_utc":null},{"commit":"bf0bc32d7ae6cabe07906207f4f08c2e81802c80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 20:51:24 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"flush streamed text for better piping experience","epoch":1631591484,"epoch_utc":null},{"commit":"2d6b53e012181a4c33bab441880c47c0fc0b0601","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 19:50:51 2021 -0700","stats":{"files_changed":1,"insertions":36,"deletions":42,"files":["jc/parsers/ping_s.py"]},"message":"add pattern support. move unparsable line detection to standard streaming parser style","epoch":1631587851,"epoch_utc":null},{"commit":"51271fea0fbd7bd63863ba05c399b4675dc5b4bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 19:27:34 2021 -0700","stats":{"files_changed":1,"insertions":139,"deletions":149,"files":["jc/parsers/ping_s.py"]},"message":"somewhat working parser","epoch":1631586454,"epoch_utc":null},{"commit":"2deb473e0bc96c0e39ec4074a6df4b941ba2172b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:36:36 2021 -0700","stats":{"files_changed":1,"insertions":262,"deletions":0,"files":["jc/parsers/ping_s.py"]},"message":"initial streaming ping parser","epoch":1631583396,"epoch_utc":null},{"commit":"23eeb33b3da43a679c3bf3f3643cfa552a1164e1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:36:19 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"modify stream_error message","epoch":1631583379,"epoch_utc":null},{"commit":"f50dfaef45632241f8f6972fa19bb17c54a457ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:31:52 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":13,"files":["jc/parsers/ls_s.py"]},"message":"use stream_error function for exceptions. raise on non -l ls output","epoch":1631583112,"epoch_utc":null},{"commit":"55bb71e9d466cc9ee5f7fd8eca1101c941cbcb35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:30:20 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"add streaming ping parser. update streaming exception message","epoch":1631583020,"epoch_utc":null},{"commit":"dab9357d286962b70224d6fafbf90a4c0cbc9980","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:29:49 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":12,"files":["jc/parsers/foo_s.py"]},"message":"use stream_error function for exceptions","epoch":1631582989,"epoch_utc":null},{"commit":"27eb427245b5126335cef0adb5e57522272474b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:29:10 2021 -0700","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/utils.py"]},"message":"add stream_error function","epoch":1631582950,"epoch_utc":null},{"commit":"260f3685d944ded84396ae3395773d6898803fb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 15:06:02 2021 -0700","stats":{"files_changed":1,"insertions":112,"deletions":0,"files":["jc/parsers/foo_s.py"]},"message":"add streaming parser template","epoch":1631570762,"epoch_utc":null},{"commit":"76e78fc0c34b88a90fef876eebef92bd71cd772c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 15:05:49 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":11,"files":["jc/parsers/ls_s.py"]},"message":"doc updates","epoch":1631570749,"epoch_utc":null},{"commit":"1ac944fa028a400ae7b39b811fcf368c9bf5e259","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 12:13:14 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/ls_s.py"]},"message":"add -q option info to docstring","epoch":1631560394,"epoch_utc":null},{"commit":"986bc9b042a940f8dd34f0541bcb9b5840df579e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 12:10:02 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":43,"files":["jc/parsers/ls_s.py"]},"message":"cleanup unused code","epoch":1631560202,"epoch_utc":null},{"commit":"5a7942069b1f3ef3b45992b482bfb6bb973f7e8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 10:56:05 2021 -0700","stats":{"files_changed":1,"insertions":28,"deletions":28,"files":["jc/parsers/ls_s.py"]},"message":"add support for parent field","epoch":1631555765,"epoch_utc":null},{"commit":"f6c6fc13ac4c779667807df12444a41ef28a8011","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 08:55:19 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/cli.py"]},"message":"enhance error msg when streaming parser is used","epoch":1631548519,"epoch_utc":null},{"commit":"1d8cfae89f24192b6fab087f59c9b8988ef363dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 12 17:30:56 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/parsers/ls_s.py"]},"message":"only print _meta object if -q or quiet flag is used. Also, add message to the end of exceptions informing of the -q option to ignore errors","epoch":1631493056,"epoch_utc":null},{"commit":"787df51239ffa8260b48d6a3a58e6ff07d5e0f64","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 12 16:42:47 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"]},"message":"remove `\\n` from end of line in exception message","epoch":1631490167,"epoch_utc":null},{"commit":"5e7f302a9c45343c36e81944db38a435e6c8a20c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 12 16:35:46 2021 -0700","stats":{"files_changed":1,"insertions":12,"deletions":10,"files":["jc/parsers/ls_s.py"]},"message":"Raise exceptions unless the -q or quiet flag are used","epoch":1631489746,"epoch_utc":null},{"commit":"3d10fd40b56264836874da19aa72351e6d5cfbf7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 12 16:27:00 2021 -0700","stats":{"files_changed":1,"insertions":14,"deletions":13,"files":["jc/cli.py"]},"message":"remove print flush for better performance. Roll json.JSONDecodeError into the parse try/except block","epoch":1631489220,"epoch_utc":null},{"commit":"57e3bf239cc76d3b0ee0eddc618171eb90c28dec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 10 15:02:15 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"]},"message":"formatting for docs","epoch":1631311335,"epoch_utc":null},{"commit":"ccb09861e82044e17ec51277b3c8875e5ba9d87d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 10 15:01:02 2021 -0700","stats":{"files_changed":2,"insertions":20,"deletions":20,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"]},"message":"formatting for docs","epoch":1631311262,"epoch_utc":null},{"commit":"94551d75dd926c7f558e5cab47ba9483a20c6b3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 10 14:27:50 2021 -0700","stats":{"files_changed":10,"insertions":116,"deletions":49,"files":["CHANGELOG","README.md","docs/parsers/ls_s.md","docs/readme.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz","mangen.py","setup.py"]},"message":"doc update","epoch":1631309270,"epoch_utc":null},{"commit":"6e21218425359210591827e936b8d48d9644df92","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 10 14:14:10 2021 -0700","stats":{"files_changed":2,"insertions":234,"deletions":3,"files":["jc/cli.py","jc/parsers/ls_s.py"]},"message":"working prototype of streaming ls parser","epoch":1631308450,"epoch_utc":null},{"commit":"ff0fda48fc48760a7293528155d222c6456f84c4","merge":"e08b61f 528aac7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 10 08:08:45 2021 -0700","message":"Merge pull request #168 from kellyjonbrazil/master\n\nSync master to dev","epoch":1631286525,"epoch_utc":null},{"commit":"528aac7ad87feae2093aba563c83a29ebf75e5f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 8 07:00:50 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":38,"files":["README.md","templates/readme_template"]},"message":"use subprocess in python example","epoch":1631109650,"epoch_utc":null},{"commit":"ab482e521d4cecfffa5393805b1d7de4389db49a","merge":"9c1ad92 e08b61f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 31 09:50:38 2021 -0700","message":"Merge pull request #163 from kellyjonbrazil/dev\n\nDev v1.16.2","epoch":1630428638,"epoch_utc":null},{"commit":"e08b61fa81b1bd2304d04db5cdc8b809fe9c6032","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 31 08:54:23 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]},"message":"add schema note to sfdisk","epoch":1630425263,"epoch_utc":null},{"commit":"ce61bd1d2b4323d9c2d0454c4f646521913ae20d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 31 08:50:42 2021 -0700","stats":{"files_changed":7,"insertions":73,"deletions":7,"files":["tests/fixtures/debian10/sfdisk-F2.json","tests/fixtures/debian10/sfdisk-F2.out","tests/fixtures/debian10/sfdisk-l2.json","tests/fixtures/debian10/sfdisk-l2.out","tests/fixtures/debian10/sfdisk-l3.json","tests/fixtures/debian10/sfdisk-l3.out","tests/test_sfdisk.py"]},"message":"add tests for -F fixes","epoch":1630425042,"epoch_utc":null},{"commit":"7b708f75182bf3ed33478a7de62e9c2496f0b994","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 31 08:39:54 2021 -0700","stats":{"files_changed":3,"insertions":11,"deletions":5,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-l.json","tests/fixtures/debian10/sfdisk-l.json"]},"message":"Don't convert 'size' to int, except for legacy -d support. Change partition table detection logic to fix -F output","epoch":1630424394,"epoch_utc":null},{"commit":"89ca50c7fc1bf64f34c915e65031d0bc520e6466","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 21:56:36 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"]},"message":"add -l to sfdisk raw example","epoch":1630385796,"epoch_utc":null},{"commit":"fb54899dcc2160450448e0d6111557cebdeb0d4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 21:53:40 2021 -0700","stats":{"files_changed":4,"insertions":38,"deletions":23,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]},"message":"doc update","epoch":1630385620,"epoch_utc":null},{"commit":"0a625ad7ddd9c804052d98930165cd22049546bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 21:52:55 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/sfdisk.py"]},"message":"remove unneeded lines","epoch":1630385575,"epoch_utc":null},{"commit":"d32e45efbe0d71a9a132abfb2855f1f4ccee9916","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 21:49:07 2021 -0700","stats":{"files_changed":6,"insertions":69,"deletions":1,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-F.json","tests/fixtures/centos-8/sfdisk-l.json","tests/fixtures/debian10/sfdisk-F.json","tests/fixtures/debian10/sfdisk-l.json","tests/test_sfdisk.py"]},"message":"add sfdisk tests","epoch":1630385347,"epoch_utc":null},{"commit":"c77696bc789cdfd286a7479c3d9f67d23149d0ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 20:55:26 2021 -0700","stats":{"files_changed":3,"insertions":6,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"]},"message":"version bump","epoch":1630382126,"epoch_utc":null},{"commit":"736fde9e784587cb2ef344bbf31d876eafea7741","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 20:51:19 2021 -0700","stats":{"files_changed":5,"insertions":147,"deletions":28,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-F.out","tests/fixtures/centos-8/sfdisk-l.out","tests/fixtures/debian10/sfdisk-F.out","tests/fixtures/debian10/sfdisk-l.out"]},"message":"add support for newer versions of sfdisk","epoch":1630381879,"epoch_utc":null},{"commit":"9c1ad92fed9a4b3a0da66d6b71deec8d608edfa9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:31:51 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["CONTRIBUTING.md"]},"message":"fix examples","epoch":1629999111,"epoch_utc":null},{"commit":"1a9fd2139d156a51bf2d25db951e47e96da77f7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:29:13 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"add \"For new parsers:\"","epoch":1629998953,"epoch_utc":null},{"commit":"7661e7f27a4e5c379ea37c7f95496aca2c1e2910","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:27:11 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"formatting","epoch":1629998831,"epoch_utc":null},{"commit":"f857b7fbf7862ddd7eb5ab20470f5dbaacc62119","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:25:37 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"add custom parser folder info","epoch":1629998737,"epoch_utc":null},{"commit":"d94d12dbc5fb3e3712b2f1aea949013cb8213e28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:20:53 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["CONTRIBUTING.md"]},"message":"add foo parser template info","epoch":1629998453,"epoch_utc":null},{"commit":"700916276ae8b0a106410e3dd2ea3e00248ee37a","merge":"473f706 834e523","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:01:08 2021 -0700","message":"Merge pull request #159 from kellyjonbrazil/master\n\nSync Master to dev","epoch":1629997268,"epoch_utc":null},{"commit":"834e52369ceb479776ddc8fc2931790af53b9c18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 16 10:33:26 2021 -0700","stats":{"files_changed":3,"insertions":1,"deletions":5,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]},"message":"update man page","epoch":1629135206,"epoch_utc":null},{"commit":"1ce53365de61421c8bd43e04590038083894153b","merge":"2689697 473f706","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 16 10:32:03 2021 -0700","message":"Merge pull request #156 from kellyjonbrazil/dev\n\nDev v1.16.1","epoch":1629135123,"epoch_utc":null},{"commit":"473f70668f04a38765559c5dbf0468af24d625c9","merge":"0dbd270 2689697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 16 10:28:11 2021 -0700","message":"Merge branch 'master' into dev\n\n# Conflicts:\n# jc/man/jc.1.gz\n# man/jc.1\n# man/jc.1.gz","epoch":1629134891,"epoch_utc":null},{"commit":"0dbd2702f6ab2640b2ccdea92411ac0789673e66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 17:17:51 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/cli.py"]},"message":"reformat doc_text for nicer indentation","epoch":1628900271,"epoch_utc":null},{"commit":"01e3764a9b6ba902aea522bf6b7005fd37b3acbb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 16:03:46 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"fix join syntax","epoch":1628895826,"epoch_utc":null},{"commit":"ff9c81722ae7221364e9bcb83d98b16b4263334e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 16:01:45 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"]},"message":"try/except for shlex.join since only available in python 3.8","epoch":1628895705,"epoch_utc":null},{"commit":"166aef7a022ed29862ab2e0702d53c591bb5cc77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 15:22:33 2021 -0700","stats":{"files_changed":6,"insertions":4,"deletions":4,"files":["docs/parsers/stat.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz","setup.py"]},"message":"version bump","epoch":1628893353,"epoch_utc":null},{"commit":"78caf7646baf5d35602fd76771443cd64bd783af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 15:19:41 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add stat fix","epoch":1628893181,"epoch_utc":null},{"commit":"1f99d40cecc5d88a246f3558f71db376ebd885c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 15:19:31 2021 -0700","stats":{"files_changed":4,"insertions":17,"deletions":2,"files":["jc/parsers/stat.py","tests/fixtures/osx-10.14.6/stat-filename-with-spaces.json","tests/fixtures/osx-10.14.6/stat-filename-with-spaces.out","tests/test_stat.py"]},"message":"fix filename with spaces for osx/bsd","epoch":1628893171,"epoch_utc":null},{"commit":"4c2912d3d5ec1fd2d5d891f2b3c58a33dd8572be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 15:19:17 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"use shlex.join to quote run_command_str for better error messages","epoch":1628893157,"epoch_utc":null},{"commit":"45e6e06be581f787f707e3f5645129c713478d16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 14:19:45 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["CHANGELOG"]},"message":"add glob and process substitution fixes","epoch":1628889585,"epoch_utc":null},{"commit":"fdbe3e05f323c95687a1137983f9623911008ca2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 14:19:26 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["jc/cli.py"]},"message":"fix issue with globs not including filenames with spaces with magic syntax (introduced during switch to use subprocess to grab process exit code). No longer need to shlex quote arguments.","epoch":1628889566,"epoch_utc":null},{"commit":"7cc168f6409af13fda815d0d2a6db25b7c9ba367","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 12 16:55:07 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"add comment","epoch":1628812507,"epoch_utc":null},{"commit":"ff2d609c9b5f5f57f3331e5593e8fe87c01654dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 12 16:36:35 2021 -0700","stats":{"files_changed":1,"insertions":12,"deletions":1,"files":["jc/cli.py"]},"message":"add close_fds=False in subprocess.Popen() to allow process substitution in magic syntax. Also check for too many open files exception","epoch":1628811395,"epoch_utc":null},{"commit":"2689697b4c21758903e5f74ec069e89be585aba2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 22 17:03:00 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1626998580,"epoch_utc":null},{"commit":"f90a0ea8ab15629b7786e4431e9c968c3a896ee0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 22 12:20:48 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["templates/readme_template"]},"message":"formatting","epoch":1626981648,"epoch_utc":null},{"commit":"caabe60f849fb2422e47b8f10e0ff35beb706dcd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 22 12:20:31 2021 -0700","stats":{"files_changed":5,"insertions":3,"deletions":3,"files":["docs/parsers/kv.md","jc/man/jc.1.gz","jc/parsers/kv.py","man/jc.1","man/jc.1.gz"]},"message":"fix kv example","epoch":1626981631,"epoch_utc":null},{"commit":"2bef4ed6038201f54339e750a833260dc1998591","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 21 08:47:16 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","README.md"]},"message":"package updates","epoch":1626882436,"epoch_utc":null},{"commit":"ee57be533b12593a33a2abbb2892697f0bd40c65","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 20 12:35:02 2021 -0500","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"]},"message":"fix sfdisk example","epoch":1626809702,"epoch_utc":null},{"commit":"c5b7aaca25d6b66d3e44256c2c6760a4cf2956ec","merge":"3b22ce4 7a1be90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 20 10:19:14 2021 -0700","message":"Merge pull request #149 from kellyjonbrazil/dev\n\nDev v1.16.0","epoch":1626801554,"epoch_utc":null},{"commit":"7a1be905bb8654558afb5979b0bd78d4a8488874","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 20 12:15:29 2021 -0500","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]},"message":"version bump","epoch":1626808529,"epoch_utc":null},{"commit":"5798495a11afa2f72ce6f79be785d46240fcbeb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 20 12:13:33 2021 -0500","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["CHANGELOG"]},"message":"add 1.15.7 to 1.16.0 changes","epoch":1626808413,"epoch_utc":null},{"commit":"46171e220252ec92d18e744d2a57c1d6a6dc19f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 20 12:13:14 2021 -0500","stats":{"files_changed":1,"insertions":69,"deletions":0,"files":["EXAMPLES.md"]},"message":"add sfdisk example","epoch":1626808394,"epoch_utc":null},{"commit":"dd5c924ff505dcc2a9c851d2425677bdf16ea462","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 19 12:13:46 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add man page location change","epoch":1626722026,"epoch_utc":null},{"commit":"30c4ab297658228a07ef9b1585516719af3febb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 19 12:08:50 2021 -0700","stats":{"files_changed":3,"insertions":515,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]},"message":"new man page location","epoch":1626721730,"epoch_utc":null},{"commit":"26ea4d47b33277efb0ddafe8f421791696277c07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 19 12:04:25 2021 -0700","stats":{"files_changed":5,"insertions":14,"deletions":3,"files":["CHANGELOG","MANIFEST.in","jc/__init__.py","mangen.py","setup.py"]},"message":"version bump and deprecate /man/jc.1.gz and /jc/man/jc.1.gz","epoch":1626721465,"epoch_utc":null},{"commit":"2732cd175c1e878210707162de3928f33fb2f201","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 12 08:10:18 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["CHANGELOG","MANIFEST.in"]},"message":"include CHANGELOG in source distribution","epoch":1626102618,"epoch_utc":null},{"commit":"3e54b597be88b0e342e4361b7f2c1af447f9482b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 7 09:00:19 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add timezone change for unit tests","epoch":1625673619,"epoch_utc":null},{"commit":"f10ebea20962084833e5c1ebd9bc90a251bf3ff4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 7 08:53:52 2021 -0700","stats":{"files_changed":11,"insertions":78,"deletions":0,"files":["tests/test_date.py","tests/test_dig.py","tests/test_dir.py","tests/test_last.py","tests/test_ls.py","tests/test_rpm_qai.py","tests/test_stat.py","tests/test_systeminfo.py","tests/test_upower.py","tests/test_utils.py","tests/test_who.py"]},"message":"update tests to set correct timezone on POSIX systems","epoch":1625673232,"epoch_utc":null},{"commit":"2c6f3993cb4c5e559dbac7a479ec889aa2cba752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 1 15:53:10 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/route.md","jc/man/jc.1.gz","jc/parsers/route.py","man/jc.1.gz"]},"message":"remove extra comma","epoch":1625179990,"epoch_utc":null},{"commit":"708a696920b52c2614edcdba264912527b2dfbef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 1 15:51:38 2021 -0700","stats":{"files_changed":3,"insertions":0,"deletions":2,"files":["docs/parsers/route.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"remove extra lines","epoch":1625179898,"epoch_utc":null},{"commit":"20bbb5d331575c8fc33ba63643882a62650c97b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 1 15:50:55 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/route.py"]},"message":"remove extra lines","epoch":1625179855,"epoch_utc":null},{"commit":"223e785b547d9376174efa15321d60a533847c57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 17:07:43 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/sfdisk.py"]},"message":"rename variable","epoch":1625098063,"epoch_utc":null},{"commit":"3d78692c59980e4d70361d3a9f74bacc3f21376e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 16:54:34 2021 -0700","stats":{"files_changed":11,"insertions":150,"deletions":1,"files":["tests/fixtures/centos-7.7/sfdisk-d-multi.json","tests/fixtures/centos-7.7/sfdisk-d-multi.out","tests/fixtures/centos-7.7/sfdisk-d.json","tests/fixtures/centos-7.7/sfdisk-d.out","tests/fixtures/centos-7.7/sfdisk-l-multi.json","tests/fixtures/centos-7.7/sfdisk-l-multi.out","tests/fixtures/centos-7.7/sfdisk-l.json","tests/fixtures/centos-7.7/sfdisk-luB.json","tests/fixtures/centos-7.7/sfdisk-luM.json","tests/fixtures/centos-7.7/sfdisk-luS.json","tests/test_sfdisk.py"]},"message":"add sfdisk tests","epoch":1625097274,"epoch_utc":null},{"commit":"5321a15dcf13cf14efe578d0f66b651078c3d8a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 14:30:35 2021 -0700","stats":{"files_changed":4,"insertions":8,"deletions":8,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"]},"message":"update examples","epoch":1625088635,"epoch_utc":null},{"commit":"a452f8252a593f7914ebece53af9d73f4fd11a19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 14:27:12 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"]},"message":"fix integer conversion","epoch":1625088432,"epoch_utc":null},{"commit":"49267f09ac01fead3b20b2d481bb5e0d07af1439","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 14:06:15 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/sfdisk.py"]},"message":"change to root prompt in examples","epoch":1625087175,"epoch_utc":null},{"commit":"db47f35783e46a8299533c22146d851509f6ceb2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 12:38:36 2021 -0700","stats":{"files_changed":15,"insertions":610,"deletions":3,"files":["CHANGELOG","README.md","docs/parsers/sfdisk.md","jc/__init__.py","jc/cli.py","jc/man/jc.1.gz","jc/parsers/sfdisk.py","jc/utils.py","man/jc.1.gz","setup.py","tests/fixtures/centos-7.7/sfdisk-d.out","tests/fixtures/centos-7.7/sfdisk-l.out","tests/fixtures/centos-7.7/sfdisk-luB.out","tests/fixtures/centos-7.7/sfdisk-luM.out","tests/fixtures/centos-7.7/sfdisk-luS.out"]},"message":"add working sfdisk parser","epoch":1625081916,"epoch_utc":null},{"commit":"d48abf312c1f55ab31aa11da2b6cf6bc8166733b","merge":"ff7ab0a 3b22ce4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 10:10:59 2021 -0700","message":"Merge pull request #147 from kellyjonbrazil/master\n\nsync to dev","epoch":1625073059,"epoch_utc":null},{"commit":"3b22ce41105387e7f46a410460cf04759feef197","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 28 08:04:46 2021 -0700","stats":{"files_changed":6,"insertions":6,"deletions":3,"files":["CHANGELOG","jc/__init__.py","jc/cli.py","jc/man/jc.1.gz","man/jc.1.gz","setup.py"]},"message":"fix local plugin parser issue where parser has .py in the name but it is not at the end","epoch":1624892686,"epoch_utc":null},{"commit":"c521ca5bc9e2b035cfef6ff65f6b303b3ec44296","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 11 11:41:16 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"change possible to available","epoch":1623436876,"epoch_utc":null},{"commit":"3ddc1c665990e1e732314330db214a81ab810fe9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 11 11:39:38 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"add jello","epoch":1623436778,"epoch_utc":null},{"commit":"a8e19402b7d1f9f06bc40b81a15dec401154180c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 9 08:33:48 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["ADVANCED_USAGE.md"]},"message":"remove temporary fix","epoch":1623252828,"epoch_utc":null},{"commit":"0927902b30654274743ab9092e90e768709a9937","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 8 16:51:03 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["ADVANCED_USAGE.md"]},"message":"temp fix for wrong url","epoch":1623196263,"epoch_utc":null},{"commit":"572548b42fb6ed9d32a392503d44fac1a8f146d3","merge":"95aec9c ff7ab0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 27 17:00:54 2021 -0700","message":"Merge pull request #141 from kellyjonbrazil/dev\n\nDev v1.15.5","epoch":1622160054,"epoch_utc":null},{"commit":"ff7ab0a1ed7f468d0e84eb3bf0636f53913c490d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 27 16:58:14 2021 -0700","stats":{"files_changed":3,"insertions":0,"deletions":1,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc updates for v1.15.5","epoch":1622159894,"epoch_utc":null},{"commit":"5db71b05cb28691bbbaa5d668bcd4a4ac7e68b85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 25 09:47:24 2021 -0700","stats":{"files_changed":5,"insertions":3,"deletions":3,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template","templates/readme_template"]},"message":"add en_US.UTF-8 to LANG info","epoch":1621961244,"epoch_utc":null},{"commit":"f9b952885aa7f2b450786a08c3879d9e358886da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 21 10:21:21 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add python 3.9.5 packaged info","epoch":1621617681,"epoch_utc":null},{"commit":"e7983bc0b29abaca2147038dfad018cba1e67cdf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 21 10:16:19 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xml.md","docs/parsers/yaml.md"]},"message":"version bump","epoch":1621617379,"epoch_utc":null},{"commit":"473a6431425fc24a4cc83939ff592e0d49535b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 21 10:16:08 2021 -0700","stats":{"files_changed":4,"insertions":10,"deletions":3,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"]},"message":"add windows msi info","epoch":1621617368,"epoch_utc":null},{"commit":"14f3d442cb86250b8f2cdfd7977938634b8abd6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 21 09:46:51 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"formatting","epoch":1621615611,"epoch_utc":null},{"commit":"d6f4ed9ab55fe9b7c2766fb437172af62a1d5c87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 21 09:46:34 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/test_utils.py"]},"message":"add long-form UTC test","epoch":1621615594,"epoch_utc":null},{"commit":"1b8d654444ff8c8b8171c7ac63e2736447a36c09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 20 15:49:18 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add error message info","epoch":1621550958,"epoch_utc":null},{"commit":"6002af0dca334c0affaff3e9acdca416238c7d82","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 20 15:46:31 2021 -0700","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/cli.py"]},"message":"add more error message detail to the user for ParseError and LibraryNotFound exceptions","epoch":1621550791,"epoch_utc":null},{"commit":"0924d822a30c8806f65574c010561cd6f7c8e181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 20 15:36:27 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":1,"files":["templates/readme_template"]},"message":"add windows example","epoch":1621550187,"epoch_utc":null},{"commit":"72a37b928924c3edde3a4edb952f98c94aa05f0b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 19 16:23:34 2021 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"]},"message":"version bump","epoch":1621466614,"epoch_utc":null},{"commit":"5eef7bd769f8ffb03ba396833d1b33484041a99f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 19 16:14:26 2021 -0700","stats":{"files_changed":2,"insertions":16,"deletions":16,"files":["jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"use LibraryNotInstalled exception instead of exiting via sys.exit","epoch":1621466066,"epoch_utc":null},{"commit":"c6893e1bd5283d982a7ecd6f84bdfdd0054ce7a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 19 16:13:05 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/exceptions.py"]},"message":"add LibraryNotInstalled exception","epoch":1621465985,"epoch_utc":null},{"commit":"039f6612e491c6f821c001252e122e9b0a781104","merge":"9c57c09 95aec9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 18 10:29:02 2021 -0700","message":"Merge pull request #139 from kellyjonbrazil/master\n\nsync branches","epoch":1621358942,"epoch_utc":null},{"commit":"95aec9c6f9aa8fb4d0dae227410a1346d550f47f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 18 10:27:36 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["templates/manpage_template"]},"message":"add info about Magic syntax not supporting shell builtins","epoch":1621358856,"epoch_utc":null},{"commit":"4e9652a8ec2482a64dc029b0ce0e1047a3e49867","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 17 14:36:20 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"spelling","epoch":1621287380,"epoch_utc":null},{"commit":"773b7f4b1f23e04c90e602aab05bc1a7e5aae37b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 17 08:38:09 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add space before exit code table","epoch":1621265889,"epoch_utc":null},{"commit":"d17ffde9cdc35392ae25d8e9de5328e46067df2a","merge":"efb1d3e 9c57c09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 17 08:35:13 2021 -0700","message":"Merge pull request #138 from kellyjonbrazil/dev\n\nDev v1.15.4","epoch":1621265713,"epoch_utc":null},{"commit":"9c57c09c00e64a9031391b9b70083ad6ecf0bc0b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 17 08:24:31 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc update for release","epoch":1621265071,"epoch_utc":null},{"commit":"4d730a9de5a0d7c064a9a59e3add86e58d9ec492","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 20:57:17 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add UTC fix","epoch":1621223837,"epoch_utc":null},{"commit":"fc57bcfce24af23f077d6a73f1db4591d8f99c13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 20:51:39 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"]},"message":"fix for when UTC is referenced as \"Coordinated Universal Time\"","epoch":1621223499,"epoch_utc":null},{"commit":"fa5571486c3c19bb7e836f043545ea4f2509ed4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 20:33:03 2021 -0700","stats":{"files_changed":1,"insertions":10,"deletions":10,"files":["jc/cli.py"]},"message":"simplify json_out function","epoch":1621222383,"epoch_utc":null},{"commit":"9996c4fe23564dfb52e3c7dbdbd8bd67edfb1e95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:55:53 2021 -0700","stats":{"files_changed":7,"insertions":10,"deletions":10,"files":["EXAMPLES.md","docs/parsers/history.md","docs/parsers/jobs.md","jc/man/jc.1.gz","jc/parsers/history.py","jc/parsers/jobs.py","man/jc.1.gz"]},"message":"update docs for shell builtins","epoch":1621220153,"epoch_utc":null},{"commit":"038d4290248e6bb94762bb51f69e9958f7c1fecb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:44:10 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":6,"files":["docs/parsers/dig.md","docs/parsers/dir.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc updates","epoch":1621219450,"epoch_utc":null},{"commit":"9bf6facb0d7d76583802309253e7d13ba5148997","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:43:10 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":6,"files":["jc/parsers/dir.py"]},"message":"remove magic command capability since dir is a shell builtin","epoch":1621219390,"epoch_utc":null},{"commit":"965717886e4ebaa6a4a494f189d9fdd01e33eb21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:30:00 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add exceptions module info","epoch":1621218600,"epoch_utc":null},{"commit":"e9bfc3dd29f914fd91e937f06d7f59c0f91b8449","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:21:37 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["CHANGELOG"]},"message":"add time format, dig compatibility, windows colors fix","epoch":1621218097,"epoch_utc":null},{"commit":"f46b33eacf070b4dc72c8d8a66aae49abd149e5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:20:13 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/utils.py","tests/test_utils.py"]},"message":"add windows time format","epoch":1621218013,"epoch_utc":null},{"commit":"f475fe44df2fb2661c5bce4d1e602a4bba7e87c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:09:53 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"]},"message":"add new time format for systeminfo","epoch":1621217393,"epoch_utc":null},{"commit":"5fdbe2962d84dad89de23f103d97b76b90450206","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 17:48:56 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dig.py"]},"message":"make dig compatible with all platforms","epoch":1621212536,"epoch_utc":null},{"commit":"ab291b9eef6ed5c8ab59b5652f676178941d5ce5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 17:48:40 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"only force enable colors when running on windows","epoch":1621212520,"epoch_utc":null},{"commit":"fd411fd77273cb7cf872c03ed6a258ccdee4d261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 17:43:05 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"]},"message":"attempt to get colors working on windows","epoch":1621212185,"epoch_utc":null},{"commit":"b1e95a60a2461dc401ffc299ef6338b65ef12691","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 13 08:42:27 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/cli.py"]},"message":"remove unnecessary comment","epoch":1620920547,"epoch_utc":null},{"commit":"bb1439f0d53e87f636fba05fbd30c3c79fb16002","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 13 08:20:58 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["jc/parsers/uname.py"]},"message":"use ParseError exception from jc.exceptions module","epoch":1620919258,"epoch_utc":null},{"commit":"ba963d98a0a2b3a0dfca6b211096d802253da5fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 13 08:20:35 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/exceptions.py"]},"message":"add exceptions module including ParseError","epoch":1620919235,"epoch_utc":null},{"commit":"83440ccb55d0db15b112b8b7d7352493ff516112","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 13 08:02:38 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"error message capitalization","epoch":1620918158,"epoch_utc":null},{"commit":"796f61bfa417afdc6ab48fddbb5502cd0659b840","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 17:01:09 2021 -0700","stats":{"files_changed":1,"insertions":10,"deletions":3,"files":["jc/cli.py"]},"message":"handle case where the user pipes data and uses magic syntax simultaneously","epoch":1620864069,"epoch_utc":null},{"commit":"070cac4ae12282458a1e1fc8618ebc473d23cacf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 15:36:06 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/cli.py"]},"message":"remove commented line","epoch":1620858966,"epoch_utc":null},{"commit":"3ed84f9f42e4e883ddaac28ab49d675600b49424","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 15:19:11 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/cli.py"]},"message":"reorganize main function. remove pass condition.","epoch":1620857951,"epoch_utc":null},{"commit":"a205afb6f355edbb4b98200a980b9601ed0f0658","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 13:44:15 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"set run_command_str if run_command is set","epoch":1620852255,"epoch_utc":null},{"commit":"a6d983dd8f3871cbc2391c313340167829a575d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 13:38:08 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"move run_command_str variable","epoch":1620851888,"epoch_utc":null},{"commit":"b6c8d6d01d740827273265dbb0cfbaf7875ac7f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 13:18:58 2021 -0700","stats":{"files_changed":1,"insertions":45,"deletions":17,"files":["jc/cli.py"]},"message":"add exception handling for filenotfound or other subprocess.popen and json.dumps exceptions","epoch":1620850738,"epoch_utc":null},{"commit":"b5a5d5b133f1c0df8023776e59697b7579f8c18a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 11:36:27 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"set parser_name for magic syntax use","epoch":1620844587,"epoch_utc":null},{"commit":"da528e7814b0cf25a359c3556d0e286e7bf004b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 09:40:22 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"]},"message":"move separators to a variable","epoch":1620837622,"epoch_utc":null},{"commit":"4acebf4f621ac564f82e3a97e6810fbb08a9dbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 08:48:49 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/cli.py"]},"message":"move variables","epoch":1620834529,"epoch_utc":null},{"commit":"4d40808d2b70b7543eadcfd2d35c16ebe91f2f9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 08:27:39 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/cli.py"]},"message":"update comments","epoch":1620833259,"epoch_utc":null},{"commit":"c543f00bd3c737f73144bb2980d12793042459b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 14:30:46 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["jc/cli.py"]},"message":"simplify piped_output function","epoch":1620768646,"epoch_utc":null},{"commit":"947cf41dfab5811c0e76e371231c59a2d6372752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 12:42:21 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add exit code info","epoch":1620762141,"epoch_utc":null},{"commit":"8d8c58742e5106c3387a627cd1b1323a76cc9623","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 11:32:08 2021 -0700","stats":{"files_changed":5,"insertions":21,"deletions":15,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template","templates/readme_template"]},"message":"formatting","epoch":1620757928,"epoch_utc":null},{"commit":"995ecc9bfb0425b0ee9e4250395b0200b46c1e89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 11:11:17 2021 -0700","stats":{"files_changed":3,"insertions":15,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template"]},"message":"add exit codes section","epoch":1620756677,"epoch_utc":null},{"commit":"21a15225ebff645439b12d6249dc3e28d7bc09ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 10:59:26 2021 -0700","stats":{"files_changed":2,"insertions":18,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add exit codes section","epoch":1620755966,"epoch_utc":null},{"commit":"48921d4584068fadb0f776ed7e81c21d89172e2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 10:50:35 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"]},"message":"ensure exit code never exceeds 255","epoch":1620755435,"epoch_utc":null},{"commit":"342db45edc94ab1c3b3ae70e7cf4ca4076e2c7eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 10:36:55 2021 -0700","stats":{"files_changed":1,"insertions":18,"deletions":10,"files":["jc/cli.py"]},"message":"fix combined exit codes","epoch":1620754615,"epoch_utc":null},{"commit":"5f88ecf8443bc6e9a7cda5bc60858f37cc09f4f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 21:23:23 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/cli.py"]},"message":"add comments to magic_parser return","epoch":1620707003,"epoch_utc":null},{"commit":"a56aebfe7024914d2c602278964b99d1443de335","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 21:09:00 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/cli.py"]},"message":"remove side-effect comment since it is no longer relevant","epoch":1620706140,"epoch_utc":null},{"commit":"422bb744a82472546d62c72ba05eaa1d18d5068a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 21:03:30 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]},"message":"update man pages","epoch":1620705810,"epoch_utc":null},{"commit":"c3b814a15f571ac84a8ce0719d7fd88acf814caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 21:02:28 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":4,"files":["jc/cli.py"]},"message":"move imports to the top","epoch":1620705748,"epoch_utc":null},{"commit":"e4574047a0ef6fcd4a47142421a1d05795c7925a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 20:49:44 2021 -0700","stats":{"files_changed":1,"insertions":21,"deletions":21,"files":["tests/test_cli.py"]},"message":"update tests for magic_parser function","epoch":1620704984,"epoch_utc":null},{"commit":"0d7d7951f82627d1fb1e20d1398bd7f88c5ce1be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 18:58:45 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/cli.py"]},"message":"don't reset sys.argv anymore. check for 'valid_command' instead","epoch":1620698325,"epoch_utc":null},{"commit":"da904e4770a20ae85fc67476ae4a529564d0a3ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 18:50:59 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"remove final \\n from stderr string when printing","epoch":1620697859,"epoch_utc":null},{"commit":"19b540041add64fe6650c3634ec869421ffbc769","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 18:31:30 2021 -0700","stats":{"files_changed":1,"insertions":82,"deletions":51,"files":["jc/cli.py"]},"message":"proof of concept for passing command exit codes when using magic syntax. Needs more testing","epoch":1620696690,"epoch_utc":null},{"commit":"f2ffb93eeaf4c8b5aa93f3e8808bdc044582e8a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 10:43:40 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":10,"files":["tests/test_ping.py"]},"message":"formatting","epoch":1620668620,"epoch_utc":null},{"commit":"c0c0e05642e0f473cde34178d815978fff8fe1ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 10:40:13 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add dig `+noall +answer` support","epoch":1620668413,"epoch_utc":null},{"commit":"966978f17e40a338f982628825f30a19d4b84e4c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 10:39:51 2021 -0700","stats":{"files_changed":5,"insertions":72,"deletions":0,"files":[".../centos-7.7/ping6-ip-O-p-unparsable.json",".../centos-7.7/ping6-ip-O-p-unparsable.out",".../fixtures/osx-10.14.6/ping6-ip-unparsable.json","tests/fixtures/osx-10.14.6/ping6-ip-unparsable.out","tests/test_ping.py"]},"message":"add more unparsable line ping tests","epoch":1620668391,"epoch_utc":null},{"commit":"8ab08a5231e082940a62fcde4be218b7ba94be31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 10:13:52 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"doc update","epoch":1620666832,"epoch_utc":null},{"commit":"48e534fa03b92b2583c5c6269c76651f3aa420cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 7 16:55:18 2021 -0700","stats":{"files_changed":3,"insertions":17,"deletions":2,"files":["tests/fixtures/osx-10.14.6/dig-noall-answer.json","tests/fixtures/osx-10.14.6/dig-noall-answer.out","tests/test_dig.py"]},"message":"add +noall +answer test","epoch":1620431718,"epoch_utc":null},{"commit":"61851c1bd02aa82d5d82e68595e45630ead13d34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 7 16:42:09 2021 -0700","stats":{"files_changed":2,"insertions":85,"deletions":3,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"add support for +noall +answer","epoch":1620430929,"epoch_utc":null},{"commit":"3c51b2d83d301b4072bbb12fdba4f60b900573da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 7 13:50:28 2021 -0700","stats":{"files_changed":3,"insertions":40,"deletions":0,"files":[".../centos-7.7/ping-ip-O-unparsedlines.json",".../centos-7.7/ping-ip-O-unparsedlines.out","tests/test_ping.py"]},"message":"add tests for unparsable lines on linux","epoch":1620420628,"epoch_utc":null},{"commit":"ee3a28528e152c61f05bdf71f264fe38274b4190","merge":"fe1f101 916bcda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 10:03:58 2021 -0700","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev\n\n# Conflicts:\n# templates/readme_template","epoch":1620234238,"epoch_utc":null},{"commit":"916bcdae3881fc9c9f9a91c8c901a714cff3e1da","merge":"fb14f54 efb1d3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 10:02:25 2021 -0700","message":"Merge pull request #136 from kellyjonbrazil/master\n\nmerge changes from master","epoch":1620234145,"epoch_utc":null},{"commit":"efb1d3e6b2db920423511a9dcf4c5e5fd9d6af43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 09:23:21 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"add blog title and minor formatting","epoch":1620231801,"epoch_utc":null},{"commit":"4e6ae66bacc014e49c4a9229d10dcc8e95de436c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 09:20:47 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1620231647,"epoch_utc":null},{"commit":"5ee88e7b679bc163a1916d560be6ff29f51699e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 09:18:45 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["README.md"]},"message":"add use cases section","epoch":1620231525,"epoch_utc":null},{"commit":"c3b68903cbd898f80438af342195eec7575aafd3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 09:17:11 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["templates/readme_template"]},"message":"add use cases section","epoch":1620231431,"epoch_utc":null},{"commit":"fe1f1013a74bdf6b4284f11dd59db8ea17e5e5d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 09:16:05 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["templates/readme_template"]},"message":"add use cases section","epoch":1620231365,"epoch_utc":null},{"commit":"fb14f5439f00d5eaf08651c552189fd4be7358d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 08:03:27 2021 -0700","stats":{"files_changed":4,"insertions":52,"deletions":3,"files":["jc/parsers/ping.py",".../osx-10.14.6/ping-ip-unknown-errors.json",".../osx-10.14.6/ping-ip-unknown-errors.out","tests/test_ping.py"]},"message":"fix and tests for unknown or unparsable errors","epoch":1620227007,"epoch_utc":null},{"commit":"5ca0fc364eb22d583bee5633cdd7183c1d70bb6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 4 19:05:20 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/parsers/ping.md"]},"message":"add unparsed_line to docs","epoch":1620180320,"epoch_utc":null},{"commit":"a1fe7037e5267ec4aced719eff3715085eb35bca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 4 19:04:16 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["jc/parsers/ping.py"]},"message":"add unparsed_line field if line cannot be parsed","epoch":1620180256,"epoch_utc":null},{"commit":"c2af7d113ed8e8cf9af985c969cf29858a3c26a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 4 15:35:47 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["CHANGELOG","docs/parsers/ping.md"]},"message":"add ping updates","epoch":1620167747,"epoch_utc":null},{"commit":"ff034e401d5c33efbc3c4bc2f0e386d81eaae7fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 4 15:34:45 2021 -0700","stats":{"files_changed":1,"insertions":59,"deletions":43,"files":["jc/parsers/ping.py"]},"message":"use try/except to make parser more resilient against unknown error types","epoch":1620167685,"epoch_utc":null},{"commit":"5abe095beb4b668e5f55fe8c9588677547e4c2a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 3 15:26:16 2021 -0700","stats":{"files_changed":1,"insertions":14,"deletions":3,"files":["docs/parsers/ping.md"]},"message":"update ping docs","epoch":1620080776,"epoch_utc":null},{"commit":"33de5f01e638953c83bb0960dc3550ca4547849b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 3 15:16:47 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["jc/__init__.py","setup.py"]},"message":"version bump","epoch":1620080207,"epoch_utc":null},{"commit":"8ce155d843806be4ad23491b4401e4eda02e2a1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 3 15:16:33 2021 -0700","stats":{"files_changed":5,"insertions":86,"deletions":23,"files":["CHANGELOG","jc/parsers/ping.py",".../fixtures/osx-10.14.6/ping-ip-unreachable.json","tests/fixtures/osx-10.14.6/ping-ip-unreachable.out","tests/test_ping.py"]},"message":"add support for error replies in v4 ping on osx and bsd","epoch":1620080193,"epoch_utc":null},{"commit":"b921d5ec9583c8f8e992613ae2eaf62165722054","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 30 16:53:52 2021 -0700","stats":{"files_changed":1,"insertions":105,"deletions":6,"files":["jc/parsers/ping.py"]},"message":"initial support for error replies in bsd/osx","epoch":1619826832,"epoch_utc":null},{"commit":"e21542aaa2aa5f2f287ddc227df41ae47d761332","merge":"d24f9a8 6150aae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 30 10:31:55 2021 -0700","message":"Merge pull request #135 from kellyjonbrazil/dev\n\nDev clarify packaged binaries in readme","epoch":1619803915,"epoch_utc":null},{"commit":"6150aae0aeabafba26d9f119406b0660d9221cb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 30 10:31:02 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"clarify packaged binaries","epoch":1619803862,"epoch_utc":null},{"commit":"f27b35f37104ad2012c3bddde0bd94941af06894","merge":"bd428a9 d24f9a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 15:28:35 2021 -0700","message":"Merge pull request #131 from kellyjonbrazil/master\n\nsync branches","epoch":1619648915,"epoch_utc":null},{"commit":"d24f9a885d3954035a98a488671486408f509dca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 15:26:52 2021 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["CONTRIBUTING.md","README.md","templates/readme_template"]},"message":"fix contributing link","epoch":1619648812,"epoch_utc":null},{"commit":"48dd82c8d1b756c4e08d49b8234b8060080dc035","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 15:15:41 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"trigger page build on github pages","epoch":1619648141,"epoch_utc":null},{"commit":"e57167ad1f240de6ec5fc86c51cfb780535cd783","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 12:23:31 2021 -0700","message":"empty commit","epoch":1619637811,"epoch_utc":null},{"commit":"ada91376426ff359c495fb31081404a2cce72b5f","merge":"0c209db bd428a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 11:53:15 2021 -0700","message":"Merge pull request #130 from kellyjonbrazil/dev\n\nDev link updates","epoch":1619635995,"epoch_utc":null},{"commit":"bd428a9fd75327710dce96f3c95f74ab9d1beaad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 11:52:24 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"fix link","epoch":1619635944,"epoch_utc":null},{"commit":"934941332f91d9e2cc4e691b154bb5427166ed30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 11:50:10 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","templates/readme_template"]},"message":"minor link updates","epoch":1619635810,"epoch_utc":null},{"commit":"0c209dbd108638f89a43801126a332379be9ae8b","merge":"92e2252 56e041a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 11:36:05 2021 -0700","message":"Merge pull request #129 from kellyjonbrazil/dev\n\nDev update readme","epoch":1619634965,"epoch_utc":null},{"commit":"56e041aa260b2daf2f5662fae98645a93137adb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 11:34:51 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add Practical JSON at the Command Line blog link","epoch":1619634891,"epoch_utc":null},{"commit":"cf9d48582e4e5df6c8498b916a2f9cf036869f3d","merge":"35464bb 92e2252","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 13:17:20 2021 -0700","message":"Merge pull request #128 from kellyjonbrazil/master\n\nsync branches","epoch":1619468240,"epoch_utc":null},{"commit":"92e2252bee00482bb0eeae3074b107d4c8553e4c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 12:18:21 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"fix typo","epoch":1619464701,"epoch_utc":null},{"commit":"fd7861db11e5aaa17c4e7bbce942c0c096116e30","merge":"fcc7e52 35464bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 12:12:02 2021 -0700","message":"Merge pull request #127 from kellyjonbrazil/dev\n\nDev v1.15.3","epoch":1619464322,"epoch_utc":null},{"commit":"35464bbbfb6b424ef3ee1c855557ada1bf3769fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 12:08:10 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"date update","epoch":1619464090,"epoch_utc":null},{"commit":"db8ddd7f0e0c2a8bd3e545619e81d3d3972a4d7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 12:04:03 2021 -0700","stats":{"files_changed":5,"insertions":11,"deletions":17,"files":["jc/man/jc.1.gz","jc/parsers/ufw.py","man/jc.1.gz","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json"]},"message":"fix for scenarios where the default port range didn't always display, or overrode existing port ranges.","epoch":1619463843,"epoch_utc":null},{"commit":"72207c54ee5734e3d2d3d1a063c8daf1edaa8815","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 10:02:02 2021 -0700","stats":{"files_changed":3,"insertions":102,"deletions":94,"files":["docs/parsers/ufw_appinfo.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"update ufw app info docs to support multiple apps (ufw app info all)","epoch":1619456522,"epoch_utc":null},{"commit":"a683f68003ea64dd5e2c4f06b53a1561ad774f12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 10:00:44 2021 -0700","stats":{"files_changed":9,"insertions":285,"deletions":202,"files":["EXAMPLES.md","jc/parsers/ufw_appinfo.py","tests/fixtures/generic/ufw-appinfo-msn.json","tests/fixtures/generic/ufw-appinfo-test.json","tests/fixtures/generic/ufw-appinfo-test2.json","tests/fixtures/generic/ufw-appinfo-test3.json","tests/fixtures/ubuntu-18.04/ufw-appinfo-all.json","tests/fixtures/ubuntu-18.04/ufw-appinfo-all.out","tests/test_ufw_appinfo.py"]},"message":"change schema to a list of dictionaries to support `ufw app info all` use case","epoch":1619456444,"epoch_utc":null},{"commit":"8d2d3db3fa969456342181a226bf54a3f1613542","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 21:10:21 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":0,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"]},"message":"formatting","epoch":1619410221,"epoch_utc":null},{"commit":"eca785450d1c72687817d09259fa7cd33376fafc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 21:06:47 2021 -0700","stats":{"files_changed":5,"insertions":34,"deletions":13,"files":["CHANGELOG","README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"]},"message":"add caveats to readme and manpage","epoch":1619410007,"epoch_utc":null},{"commit":"5b40a97ce417687b4e37f320b8a3f07dd7fd169c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 20:55:43 2021 -0700","stats":{"files_changed":3,"insertions":13,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template"]},"message":"add caveats to man page","epoch":1619409343,"epoch_utc":null},{"commit":"66cb4e9bde81b9290c1addaf851de5d80a1b0702","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 20:49:35 2021 -0700","stats":{"files_changed":5,"insertions":216,"deletions":234,"files":["EXAMPLES.md","docs/parsers/ufw.md","jc/man/jc.1.gz","jc/parsers/ufw.py","man/jc.1.gz"]},"message":"update ufw parser docs","epoch":1619408975,"epoch_utc":null},{"commit":"d1f33645caccdb3a55576081c4d355f997ac033c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 20:40:38 2021 -0700","stats":{"files_changed":7,"insertions":26,"deletions":10,"files":["tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw-numbered2.json","tests/fixtures/generic/ufw.json","tests/fixtures/ubuntu-18.04/ufw-numbered.json","tests/fixtures/ubuntu-18.04/ufw-numbered.out","tests/fixtures/ubuntu-18.04/ufw-verbose.json","tests/fixtures/ubuntu-18.04/ufw-verbose.out"]},"message":"update ufw tests","epoch":1619408438,"epoch_utc":null},{"commit":"5eff65c326675a449afd05a2af0a6c9bcf7b5e23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 20:10:52 2021 -0700","stats":{"files_changed":1,"insertions":85,"deletions":268,"files":["jc/parsers/ufw.py"]},"message":"update schema to support port lists and port range lists. Also support other transports than tcp and udp","epoch":1619406652,"epoch_utc":null},{"commit":"929c38715d87bf9dd689507d319c22b90871ae1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 12:53:29 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"formatting","epoch":1619294009,"epoch_utc":null},{"commit":"8c91a7b7601a967cd9d8096433ffd4ad62b65ceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 12:52:26 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CONTRIBUTING.md"]},"message":"formatting","epoch":1619293946,"epoch_utc":null},{"commit":"14289ecd6c022ad204444dff5b5e48f6024a5d0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 12:50:40 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"more timezone info","epoch":1619293840,"epoch_utc":null},{"commit":"b833c44783eb32f2fad24ca205b5b7eab854750f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 12:47:24 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add ufw-appinfo parser","epoch":1619293644,"epoch_utc":null},{"commit":"e23aa818eaa6d1a389ddef7dd2ad8f62b9f6ff25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 12:47:12 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"add tests section and timezone info","epoch":1619293632,"epoch_utc":null},{"commit":"473d919c1350a8dc34d233033a5a7d12c928e42d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 10:58:31 2021 -0700","stats":{"files_changed":4,"insertions":32,"deletions":0,"files":["runtests.sh","tests/fixtures/generic/ufw-numbered2.json","tests/fixtures/generic/ufw-numbered2.out","tests/test_ufw.py"]},"message":"add another ufw test sample","epoch":1619287111,"epoch_utc":null},{"commit":"9f925d6ac989a4f21a8c00c84fcf97dfb141e8c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 10:22:37 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc update","epoch":1619284957,"epoch_utc":null},{"commit":"f6ca32b3a31f314fa0b31d9e8b5494491b928f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 10:22:19 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/ufw.md","jc/parsers/ufw.py"]},"message":"update ufw docs with a note on lists of ports","epoch":1619284939,"epoch_utc":null},{"commit":"4cbe84c3d6ac8a3b594feb525460f2a68f5d62b2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 16:15:04 2021 -0700","stats":{"files_changed":9,"insertions":110,"deletions":0,"files":["tests/fixtures/generic/ufw-appinfo-msn.json","tests/fixtures/generic/ufw-appinfo-msn.out","tests/fixtures/generic/ufw-appinfo-test.json","tests/fixtures/generic/ufw-appinfo-test.out","tests/fixtures/generic/ufw-appinfo-test2.json","tests/fixtures/generic/ufw-appinfo-test2.out","tests/fixtures/generic/ufw-appinfo-test3.json","tests/fixtures/generic/ufw-appinfo-test3.out","tests/test_ufw_appinfo.py"]},"message":"add ufw-appinfo tests","epoch":1619219704,"epoch_utc":null},{"commit":"ffac5bf9d381305daa86e546f8570be092e5ff34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 16:14:53 2021 -0700","stats":{"files_changed":3,"insertions":12,"deletions":12,"files":["docs/parsers/ufw.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc update","epoch":1619219693,"epoch_utc":null},{"commit":"9aa424f9f8c7e4e0dc29e2c58dac481098beba7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 16:14:39 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["EXAMPLES.md"]},"message":"fix ufw example","epoch":1619219679,"epoch_utc":null},{"commit":"0a8495c68e427e39bbda957dd933fa2a461092e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 16:14:25 2021 -0700","stats":{"files_changed":1,"insertions":12,"deletions":15,"files":["jc/parsers/ufw.py"]},"message":"update docs","epoch":1619219665,"epoch_utc":null},{"commit":"6aea066cf024f92adf4b94eebc7d51430c22332c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 16:14:11 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/ufw_appinfo.py"]},"message":"make normalized list appear only when data exists. set magic commands","epoch":1619219651,"epoch_utc":null},{"commit":"ff3c2d809ec3ea6e556c302909a228ee670578c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 09:57:41 2021 -0700","stats":{"files_changed":6,"insertions":176,"deletions":25,"files":["EXAMPLES.md","README.md","docs/parsers/ufw_appinfo.md","jc/man/jc.1.gz","jc/parsers/ufw_appinfo.py","man/jc.1.gz"]},"message":"add ufw-appinfo to docs","epoch":1619197061,"epoch_utc":null},{"commit":"145059fc8946b7026184139baea143c2869bc4e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 09:04:11 2021 -0700","stats":{"files_changed":1,"insertions":20,"deletions":8,"files":["jc/parsers/ufw_appinfo.py"]},"message":"clean up output if sections are blank","epoch":1619193851,"epoch_utc":null},{"commit":"20e5c19de448c1b979497817c887d8d2d6487839","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 08:30:34 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/ufw_appinfo.py"]},"message":"fix key error if tcp or udp don't exist","epoch":1619191834,"epoch_utc":null},{"commit":"4c98fd4b877c54e1cf7d285a29e178321be12f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 08:26:00 2021 -0700","stats":{"files_changed":2,"insertions":101,"deletions":1,"files":["docs/parsers/ufw_appinfo.md","jc/parsers/ufw_appinfo.py"]},"message":"doc update","epoch":1619191560,"epoch_utc":null},{"commit":"125e54213e8d4dcfe2e3271456af80b3f79c0544","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 08:13:53 2021 -0700","stats":{"files_changed":1,"insertions":105,"deletions":48,"files":["jc/parsers/ufw_appinfo.py"]},"message":"update schema and add normalized fields","epoch":1619190833,"epoch_utc":null},{"commit":"0152e0665f87833250561d743144af35416992f8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 22 16:52:01 2021 -0700","stats":{"files_changed":2,"insertions":215,"deletions":0,"files":["jc/cli.py","jc/parsers/ufw_appinfo.py"]},"message":"initial working ufw-appinfo parser","epoch":1619135521,"epoch_utc":null},{"commit":"0679bcbc560ea3575555d8546afdd4e2474d05d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 22 08:33:57 2021 -0700","stats":{"files_changed":5,"insertions":31,"deletions":5,"files":["tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json","tests/fixtures/ubuntu-18.04/ufw-numbered.json","tests/fixtures/ubuntu-18.04/ufw-verbose.json","tests/test_ufw.py"]},"message":"fix ufw tests","epoch":1619105637,"epoch_utc":null},{"commit":"5500648aa0886ea5089856e5b33d7c8ebd78d5b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 22 08:33:45 2021 -0700","stats":{"files_changed":3,"insertions":46,"deletions":46,"files":["EXAMPLES.md","docs/parsers/ufw.md","jc/parsers/ufw.py"]},"message":"fix ufw docs for int conversions and service behavior","epoch":1619105625,"epoch_utc":null},{"commit":"bb50caad4dfaefa309e747fd05b650186c5a80f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 22 08:16:42 2021 -0700","stats":{"files_changed":3,"insertions":31,"deletions":4,"files":["jc/parsers/ufw.py","tests/fixtures/ubuntu-18.04/ufw-numbered.out","tests/fixtures/ubuntu-18.04/ufw-verbose.out"]},"message":"fix prefix int conversions. don't reset _transport if service is really a list of ports","epoch":1619104602,"epoch_utc":null},{"commit":"7eef5d94d591a3f70f6638b1b30f952a3bf35f9d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 16:55:25 2021 -0700","stats":{"files_changed":3,"insertions":5,"deletions":0,"files":["EXAMPLES.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"ufw doc update","epoch":1619049325,"epoch_utc":null},{"commit":"74f623f8d607c050db8f62ea4996c4e6aae43268","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 16:55:14 2021 -0700","stats":{"files_changed":5,"insertions":43,"deletions":11,"files":["docs/parsers/ufw.md","jc/parsers/ufw.py","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json","tests/fixtures/generic/ufw.out"]},"message":"add support for rule comments and LIMIT and REJECT actions","epoch":1619049314,"epoch_utc":null},{"commit":"f638aca092475bbae14fed765e90435c093fcb8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 10:10:36 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add deb package name fix","epoch":1619025036,"epoch_utc":null},{"commit":"da35eaf80ad4f11e7482fc4734db4b2265e50548","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 09:10:10 2021 -0700","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["docs/parsers/ufw.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"formatting","epoch":1619021410,"epoch_utc":null},{"commit":"ade0e8e8fc18ff9a0dd406206a85238f1f5a739d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 09:09:23 2021 -0700","stats":{"files_changed":7,"insertions":107,"deletions":0,"files":["tests/fixtures/generic/ufw-inactive.json","tests/fixtures/generic/ufw-inactive.out","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw-numbered.out","tests/fixtures/generic/ufw.json","tests/fixtures/generic/ufw.out","tests/test_ufw.py"]},"message":"add ufw tests","epoch":1619021363,"epoch_utc":null},{"commit":"90076090f05a1f03e2fbff307418ee18d7d046ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 09:09:09 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":5,"files":["jc/parsers/ufw.py"]},"message":"fix int conversions if 'rules' key does not exist","epoch":1619021349,"epoch_utc":null},{"commit":"23635def8b654097178f73ed1b57fc50965142d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 07:51:32 2021 -0700","stats":{"files_changed":6,"insertions":306,"deletions":4,"files":["README.md","docs/parsers/ping.md","docs/parsers/ufw.md","docs/utils.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"add ufw to docs","epoch":1619016692,"epoch_utc":null},{"commit":"4eeec087bde98f90ab8425473d1fbeee6834852e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 07:49:49 2021 -0700","stats":{"files_changed":1,"insertions":115,"deletions":0,"files":["EXAMPLES.md"]},"message":"add ufw example","epoch":1619016589,"epoch_utc":null},{"commit":"733196103897a1d84d242324ddcf96e783320329","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 07:41:32 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/ufw.py"]},"message":"update docs with new examples that have `to_service` always existing.","epoch":1619016092,"epoch_utc":null},{"commit":"e4acb3d5b70a7d75741ef3e35cd6750d1362a80f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 07:08:50 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/ufw.py"]},"message":"always make to/from_service None if ports are assigned","epoch":1619014130,"epoch_utc":null},{"commit":"c60549a9947d5684bbfa58223bfbcfc40a3ed479","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 22:08:12 2021 -0700","stats":{"files_changed":1,"insertions":29,"deletions":29,"files":["jc/parsers/ufw.py"]},"message":"change field name from to/from_subnet to to/from_ip_prefix","epoch":1618981692,"epoch_utc":null},{"commit":"d46fc8bbfa15a80a1af6c64f70230f858c215223","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 21:58:52 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/parsers/ufw.py"]},"message":"set to/from_transport to None if to/from_service is set","epoch":1618981132,"epoch_utc":null},{"commit":"b133d1f90d49362594508d8c475663754f0e7675","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 21:52:39 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/ufw.py"]},"message":"strip interface value","epoch":1618980759,"epoch_utc":null},{"commit":"5be615a97e7c145c8351764234ac591028560c34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 21:45:13 2021 -0700","stats":{"files_changed":1,"insertions":219,"deletions":9,"files":["jc/parsers/ufw.py"]},"message":"add examples for docs","epoch":1618980313,"epoch_utc":null},{"commit":"ea1d820f96321ddf4084b54ee2fdf397295beb21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 21:29:49 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/parsers/ufw.py"]},"message":"convert integer fields","epoch":1618979389,"epoch_utc":null},{"commit":"47e262cf7200b02ff0af97a70ffa6bec286c8f39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 21:21:42 2021 -0700","stats":{"files_changed":1,"insertions":59,"deletions":14,"files":["jc/parsers/ufw.py"]},"message":"clean up fields","epoch":1618978902,"epoch_utc":null},{"commit":"eec673be9092e382694aa02682564510ce4e7f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 20:32:59 2021 -0700","stats":{"files_changed":1,"insertions":88,"deletions":3,"files":["jc/parsers/ufw.py"]},"message":"working raw parser","epoch":1618975979,"epoch_utc":null},{"commit":"9a0fb2a7c87e6fde0cc0d84fa8a1f131e28ea732","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 14:17:01 2021 -0700","stats":{"files_changed":1,"insertions":157,"deletions":0,"files":["jc/parsers/ufw.py"]},"message":"parse major sections","epoch":1618953421,"epoch_utc":null},{"commit":"b5145d6c14d7a51e7cfdebe126c9689dc90f7b27","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 13:39:12 2021 -0700","stats":{"files_changed":4,"insertions":8,"deletions":4,"files":["CHANGELOG","jc/__init__.py","jc/cli.py","setup.py"]},"message":"version bump to v1.15.3","epoch":1618951152,"epoch_utc":null},{"commit":"9747ca414dfb8218389c7b2199a080edabc2a184","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 10:50:20 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/utils.py"]},"message":"minor optimization to convert_to_int(). No longer runs through convert_to_float(), but uses standard float() function.","epoch":1618941020,"epoch_utc":null},{"commit":"312d465b61a15592cc70d3734ad747b9a2be10ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 19 14:18:12 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"]},"message":"update link","epoch":1618867092,"epoch_utc":null},{"commit":"7dcf87d24ad40eba6ba98de2b4b2bf177a76cd71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 19 13:12:55 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping.py"]},"message":"formatting","epoch":1618863175,"epoch_utc":null},{"commit":"cf3cfd16a9de05f30303b5952fbe609cde842d2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 19 09:59:58 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_utils.py"]},"message":"rename tests","epoch":1618851598,"epoch_utc":null},{"commit":"fcc7e5294973d1a18943fa2ce2e836b0fe757d95","merge":"6c83846 3ab9d48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 17:28:27 2021 -0700","message":"Merge pull request #123 from kellyjonbrazil/dev\n\nDev v1.15.2","epoch":1618792107,"epoch_utc":null},{"commit":"3ab9d480149a692510ab9e0ac8e745b674683e3d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 17:24:42 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CHANGELOG"]},"message":"update changelog","epoch":1618791882,"epoch_utc":null},{"commit":"7eddf41c5f6310264359cd6d78bdfa4b65af7d06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 17:21:08 2021 -0700","stats":{"files_changed":11,"insertions":96,"deletions":9,"files":["jc/man/jc.1.gz","jc/utils.py","man/jc.1.gz","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/df.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/free-h.json","tests/test_utils.py"]},"message":"dont round up int conversions and fix tests","epoch":1618791668,"epoch_utc":null},{"commit":"27a196c93862bd737603cfe402b35529eb412954","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 16:42:42 2021 -0700","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc update","epoch":1618789362,"epoch_utc":null},{"commit":"e4324f05fb6f89c34fa1567e70d8636457623edb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 16:42:34 2021 -0700","stats":{"files_changed":2,"insertions":14,"deletions":14,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"fix indentation in doc","epoch":1618789354,"epoch_utc":null},{"commit":"d36b332bd78b5bf5979cdc59b31da08d8e4104d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 16:33:47 2021 -0700","stats":{"files_changed":53,"insertions":196,"deletions":274,"files":["docs/parsers/systemctl_lj.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/wc.md","docs/parsers/who.md","docs/utils.md","jc/parsers/acpi.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/hash.py","jc/parsers/hciconfig.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl_lj.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/utils.py"]},"message":"use jc.utils for conversions","epoch":1618788827,"epoch_utc":null},{"commit":"1f034826f69c461495f7a302cc8fe35e3052e72f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 13:01:25 2021 -0700","stats":{"files_changed":42,"insertions":94,"deletions":185,"files":["docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","tests/fixtures/centos-7.7/ls-alh.json","tests/fixtures/centos-7.7/lsof-sudo.json","tests/fixtures/centos-7.7/lsof.json","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/ubuntu-18.04/ls-alh.json","tests/fixtures/ubuntu-18.04/lsof-sudo.json","tests/fixtures/ubuntu-18.04/lsof.json"]},"message":"use jc.utils for conversions","epoch":1618776085,"epoch_utc":null},{"commit":"246c707c98d3128b4e38f5c4b23a1e0ceedc0b0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 11:46:42 2021 -0700","stats":{"files_changed":46,"insertions":190,"deletions":196,"files":["CHANGELOG","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/df.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/hash.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/utils.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/hash.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/utils.py","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/osx-10.11.6/df-h.json","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/free-h.json"]},"message":"use jc.utils conversions","epoch":1618771602,"epoch_utc":null},{"commit":"b5d8968144e76090870f8563dc1bce910fba668c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 17 17:22:59 2021 -0700","stats":{"files_changed":1,"insertions":19,"deletions":0,"files":["jc/utils.py"]},"message":"add convert_to_int function","epoch":1618705379,"epoch_utc":null},{"commit":"f7b9fbefdde6973077573fec02342eb9946789c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 17 17:22:44 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add query_size info for dig","epoch":1618705364,"epoch_utc":null},{"commit":"b1fc4533833ca25f59869bfec8ac114bf49c7847","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 17 17:22:30 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"]},"message":"fix _IfconfigParser name","epoch":1618705350,"epoch_utc":null},{"commit":"7581c8d0f4262fc6a05240bb21ffe533b153f6e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 17 17:07:20 2021 -0700","stats":{"files_changed":3,"insertions":45,"deletions":32,"files":["docs/parsers/dig.md","jc/parsers/dig.py","tests/fixtures/generic/dig-edns3.json"]},"message":"add query_size field. handle user-specified dig output better - especially when querying dnssec","epoch":1618704440,"epoch_utc":null},{"commit":"32bf8ad6f4fff83fdfd83d66c1ba8f1af5a65a90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 17 15:02:45 2021 -0700","stats":{"files_changed":4,"insertions":52,"deletions":24,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"update dig docs","epoch":1618696965,"epoch_utc":null},{"commit":"b083bcc10fa1105fc09ce8d2c3297aa5575c9d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:30:17 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]},"message":"update man page","epoch":1618615817,"epoch_utc":null},{"commit":"4f6fdd120d23468270c1d7111e4ef71b87759a1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:30:04 2021 -0700","stats":{"files_changed":2,"insertions":134,"deletions":100,"files":["docs/readme.md","jc/__init__.py"]},"message":"use dig as example","epoch":1618615804,"epoch_utc":null},{"commit":"eb0038be2490053d32803d30e1c3d4d34509d130","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:29:44 2021 -0700","stats":{"files_changed":1,"insertions":40,"deletions":19,"files":["EXAMPLES.md"]},"message":"update dig examples","epoch":1618615784,"epoch_utc":null},{"commit":"7ecdf819fa37c38ae6159ad8e7bc973ee4f34559","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:29:27 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":84,"files":["README.md","templates/readme_template"]},"message":"remove dig example from readme,","epoch":1618615767,"epoch_utc":null},{"commit":"c6aa4d083550d25bcb621cad524047cfd6a08217","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:19:20 2021 -0700","stats":{"files_changed":6,"insertions":252,"deletions":317,"files":["README.md","docs/parsers/dig.md","jc/man/jc.1.gz","jc/parsers/dig.py","man/jc.1.gz","templates/readme_template"]},"message":"update docs with new dig parser examples","epoch":1618615160,"epoch_utc":null},{"commit":"7c584b89a6e6b924d53d50103b97f0c2405c33b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:04:06 2021 -0700","stats":{"files_changed":15,"insertions":352,"deletions":52,"files":["jc/parsers/dig.py","tests/fixtures/generic/dig-additional.json","tests/fixtures/generic/dig-additional.out","tests/fixtures/generic/dig-additional2.json","tests/fixtures/generic/dig-additional2.out","tests/fixtures/generic/dig-additional3.json","tests/fixtures/generic/dig-additional3.out","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/generic/dig-edns.json","tests/fixtures/generic/dig-edns.out","tests/fixtures/generic/dig-edns2.json","tests/fixtures/generic/dig-edns2.out","tests/fixtures/generic/dig-edns3.json","tests/fixtures/generic/dig-edns3.out","tests/test_dig.py"]},"message":"add additional section","epoch":1618614246,"epoch_utc":null},{"commit":"c166c0bfdafa922f57f021fa4d16e467fca02d58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 15:22:22 2021 -0700","stats":{"files_changed":14,"insertions":55,"deletions":21,"files":["jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json"]},"message":"add opt_pseudosection section to output and fix existing tests","epoch":1618611742,"epoch_utc":null},{"commit":"a8dd3f7802bfe8fd3ffbedf89af45ddc580ee78d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 13:11:02 2021 -0700","stats":{"files_changed":5,"insertions":54,"deletions":281,"files":["CHANGELOG","jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-axfr.json"]},"message":"working dig axfr fixes","epoch":1618603862,"epoch_utc":null},{"commit":"3b0e2f03f3b11398ff57b1daed542faaf0b80a62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 08:46:20 2021 -0700","stats":{"files_changed":2,"insertions":24,"deletions":23,"files":["jc/cli.py","templates/manpage_template"]},"message":"clean up examples","epoch":1618587980,"epoch_utc":null},{"commit":"8390ae48c88ab1c7d5acbf40c0e60606953817bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 15 16:53:03 2021 -0700","stats":{"files_changed":7,"insertions":8,"deletions":8,"files":["jc/parsers/dig.py","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json"]},"message":"fix server entry when IPv6 address is in value (maxsplit on colons)","epoch":1618530783,"epoch_utc":null},{"commit":"2db82c0a7e19d596c876ede8a8ff106aaa733ee5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 20:43:58 2021 -0700","stats":{"files_changed":1,"insertions":66,"deletions":0,"files":["EXAMPLES.md"]},"message":"add systeminfo example","epoch":1618458238,"epoch_utc":null},{"commit":"61479540756704f10853233300ceae8f954a8a95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 20:39:35 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":0,"files":["tests/test_systeminfo.py","tests/test_utils.py"]},"message":"update tests","epoch":1618457975,"epoch_utc":null},{"commit":"691df271fcfe057ae4b75ad40869e23deb37b886","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 20:30:31 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":1,"files":["docs/parsers/systeminfo.md","jc/man/jc.1.gz","jc/parsers/systeminfo.py","man/jc.1.gz"]},"message":"add info docstring","epoch":1618457431,"epoch_utc":null},{"commit":"89f52b95f7055da9d7b5fa8dce0923d4c3435bd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 20:20:46 2021 -0700","stats":{"files_changed":13,"insertions":467,"deletions":821,"files":["README.md","docs/parsers/systeminfo.md","jc/man/jc.1.gz","jc/parsers/systeminfo.py","jc/utils.py","man/jc.1.gz",".../windows/windows-10/systeminfo-hyperv-utc.json",".../windows/windows-10/systeminfo-hyperv-utc.out",".../windows/windows-10/systeminfo-hyperv.json","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-10/systeminfo.out",".../windows/windows-2012r2/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"]},"message":"update systeminfo parser with updated timestamps, normalized blank fields, and new doc style","epoch":1618456846,"epoch_utc":null},{"commit":"146acc1bf69c402e38c2f1bc842b84e6cff7e2cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 16:46:16 2021 -0700","stats":{"files_changed":1,"insertions":23,"deletions":29,"files":["jc/parsers/systeminfo.py"]},"message":"rename functions to make them private","epoch":1618443976,"epoch_utc":null},{"commit":"c4a345f59aa090336b4e80f181493cd5bc2c17c5","merge":"dfd2703 325fab2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 16:39:44 2021 -0700","message":"Merge pull request #106 from jon-rd/j/systeminfo\n\nAdd windows systeminfo command parser","epoch":1618443584,"epoch_utc":null},{"commit":"dfd2703f75b907ba865fff266d0742d8931bc2d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 16:39:05 2021 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"]},"message":"bump dev to v1.15.2","epoch":1618443545,"epoch_utc":null},{"commit":"325fab2de7b8a4bfc452ab8d3cf333d47fdf4989","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Wed Apr 14 11:52:13 2021 -0500","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/systeminfo.py"]},"message":"update documentation for parsed structures","epoch":1618426333,"epoch_utc":null},{"commit":"f3d00cf38ad15aeda7eaa5644ebc30ff33de6a29","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Wed Apr 14 09:06:14 2021 -0500","stats":{"files_changed":5,"insertions":56,"deletions":48,"files":["jc/parsers/systeminfo.py",".../windows/windows-10/systeminfo-hyperv.json","tests/fixtures/windows/windows-10/systeminfo.json",".../windows/windows-2012r2/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"]},"message":"append mb to memory key names; adjust expected timestamps to utc tz","epoch":1618416374,"epoch_utc":null},{"commit":"14838f7f5d780896f1318cac2c3f34d249a158d4","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Wed Apr 14 08:59:17 2021 -0500","stats":{"files_changed":9,"insertions":956,"deletions":116,"files":["jc/parsers/systeminfo.py","jc/utils.py",".../windows/windows-10/systeminfo-hyperv.json",".../windows/windows-10/systeminfo-hyperv.out","tests/fixtures/windows/windows-10/systeminfo.json",".../windows/windows-2012r2/systeminfo.json",".../fixtures/windows/windows-2012r2/systeminfo.out","tests/fixtures/windows/windows-7/systeminfo.json","tests/test_systeminfo.py"]},"message":"update schema with nic, hyperv, and process changes","epoch":1618415957,"epoch_utc":null},{"commit":"af74047b81776c2ea32d82f9145ab60c346c8203","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Mon Apr 5 09:32:04 2021 -0500","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/systeminfo.py"]},"message":"update schema based on processor/hotfix changes","epoch":1617640324,"epoch_utc":null},{"commit":"660c59129cf4ba7889fb3c6fbafd9dd9b479ccd9","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Mon Apr 5 09:29:42 2021 -0500","stats":{"files_changed":3,"insertions":41,"deletions":9,"files":["jc/parsers/systeminfo.py","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"]},"message":"Add parsing of processors/hotfixs","epoch":1617640182,"epoch_utc":null},{"commit":"89a88e186ed71d84ea802cf08ab756b49cee3225","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Thu Mar 25 16:58:54 2021 -0500","stats":{"files_changed":1,"insertions":152,"deletions":0,"files":["docs/parsers/systeminfo.md"]},"message":"Add systeminfo.md file","epoch":1616716734,"epoch_utc":null},{"commit":"f861cf95b96a224a0a11f2cdc3261b94c02415ef","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Thu Mar 25 16:18:14 2021 -0500","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["jc/cli.py","jc/parsers/systeminfo.py"]},"message":"Change to v0.5; add parser to cli.py; add to docgen","epoch":1616714294,"epoch_utc":null},{"commit":"ee8f06cbdb03f8254bb6a3c56fa5b8a64ff9ca77","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Wed Mar 24 14:13:22 2021 -0500","stats":{"files_changed":6,"insertions":688,"deletions":0,"files":["jc/parsers/systeminfo.py","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-10/systeminfo.out","tests/fixtures/windows/windows-7/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.out","tests/test_systeminfo.py"]},"message":"Add windows systeminfo command parser","epoch":1616620402,"epoch_utc":null},{"commit":"a2e8b3c7b681605916b8950d035ee19889a125a5","merge":"e0681ee 6c83846","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 16:40:43 2021 -0700","message":"Merge pull request #121 from kellyjonbrazil/master\n\nMerge pull request #120 from kellyjonbrazil/dev","epoch":1618357243,"epoch_utc":null},{"commit":"6c838460752c7131f75cdab2da07266fee492060","merge":"10292f7 e0681ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:59:17 2021 -0700","message":"Merge pull request #120 from kellyjonbrazil/dev\n\nDev v1.15.1","epoch":1618351157,"epoch_utc":null},{"commit":"e0681eebb9881dc0ffddb478224455f434919104","merge":"e5732d1 10292f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:57:44 2021 -0700","message":"Merge branch 'master' into dev","epoch":1618351064,"epoch_utc":null},{"commit":"e5732d1cea1c882f6486cf288e45edb993989ea0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:54:38 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"update changelog","epoch":1618350878,"epoch_utc":null},{"commit":"6e7ae3cd3f003fe9e1e587b7f8ebd16ba0895014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:51:46 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/timedatectl.md","jc/man/jc.1.gz","jc/parsers/timedatectl.py","man/jc.1.gz"]},"message":"formatting of timedatectl docs","epoch":1618350706,"epoch_utc":null},{"commit":"f95632d1aaee545ae0ce081ca0617be135c09220","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:49:57 2021 -0700","stats":{"files_changed":7,"insertions":83,"deletions":62,"files":["EXAMPLES.md","docs/parsers/rpm_qi.md","jc/man/jc.1.gz","jc/parsers/rpm_qi.py","man/jc.1.gz","tests/fixtures/centos-7.7/rpm-qai.json","tests/fixtures/centos-7.7/rpm-qi-package.json"]},"message":"add install_date calculated fields","epoch":1618350597,"epoch_utc":null},{"commit":"2f8b7b26e59bcd745fa1fcadb373455c7d404286","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:35:17 2021 -0700","stats":{"files_changed":3,"insertions":1,"deletions":2,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"update docs for v1.15.1","epoch":1618349717,"epoch_utc":null},{"commit":"10292f7502e4cb1c53b53ed39fed9288044c2ef8","merge":"37a3565 aef5470","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:15:40 2021 -0700","message":"Merge pull request #119 from kellyjonbrazil/dpkg_l-fix\n\nadd _l to module name","epoch":1618258540,"epoch_utc":null},{"commit":"aef54705f5267c633e0778e8dce0065978083139","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:15:12 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["docs/parsers/dpkg_l.md"]},"message":"add _l to module name","epoch":1618258512,"epoch_utc":null},{"commit":"bba5980fa53767716bc35d8c904e7a2341346eeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:13:18 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]},"message":"man page update","epoch":1618258398,"epoch_utc":null},{"commit":"977425abfb05a63ee372df36124ac6ba6a5a0aaa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:12:08 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"]},"message":"add _l to package name in docs","epoch":1618258328,"epoch_utc":null},{"commit":"37a3565a1bbd3d01663602673fed651509e69d8c","merge":"bdcdaee 13deb8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:06:30 2021 -0700","message":"Merge pull request #118 from kellyjonbrazil/rpm-qi-doc-fix\n\nfix rpm-qi docs","epoch":1618257990,"epoch_utc":null},{"commit":"13deb8bfb6e77aaf86942f0be87b59d06ee2a97c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:05:34 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":194,"files":["docs/parsers/rpm_qai.md","docs/parsers/rpm_qi.md"]},"message":"fix rpm-qi docs","epoch":1618257934,"epoch_utc":null},{"commit":"a3ed9d075aff41599452c3094f7d057c25fc8f89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:04:22 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":191,"files":["docs/parsers/rpm_qai.md"]},"message":"remove old parser doc","epoch":1618257862,"epoch_utc":null},{"commit":"fb0ced549e021916dee7da39859e8f85c8216e16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:01:17 2021 -0700","stats":{"files_changed":4,"insertions":6,"deletions":6,"files":["docs/parsers/rpm_qi.md","jc/man/jc.1.gz","jc/parsers/rpm_qi.py","man/jc.1.gz"]},"message":"fix rpm-qi docs (used underscore instead of dash in name)","epoch":1618257677,"epoch_utc":null},{"commit":"7eb31bc7d290fcd09e53524ebbb11e59110df6a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 19:55:03 2021 -0700","stats":{"files_changed":4,"insertions":39,"deletions":48,"files":["docs/parsers/airport_s.md","jc/man/jc.1.gz","jc/parsers/airport_s.py","man/jc.1.gz"]},"message":"update airport_s docs","epoch":1618023303,"epoch_utc":null},{"commit":"6a06a3914273853742ac57433398968ccf7d9897","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 16:36:20 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["docgen.sh"]},"message":"use herestring instead of echo -e into jq","epoch":1618011380,"epoch_utc":null},{"commit":"bdcdaee6c5299ea0750512e0943c7f58f56f2e35","merge":"5d8f836 605353f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 15:11:05 2021 -0700","message":"Merge pull request #117 from kellyjonbrazil/doc_update\n\nadd new docs","epoch":1618006265,"epoch_utc":null},{"commit":"605353fdce3b8b5986d20a35d05f7210a6df0730","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 15:10:38 2021 -0700","stats":{"files_changed":70,"insertions":1710,"deletions":2656,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md"]},"message":"add new docs","epoch":1618006238,"epoch_utc":null},{"commit":"490c9e17699e8e4f70dcc1612e1a808f86e24b0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 11:38:17 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["tests/test_cli.py"]},"message":"add more cli tests for magic command","epoch":1617993497,"epoch_utc":null},{"commit":"6ebebb659dc93daeaa869752ad135f6e1d2cb1ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 11:10:08 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"]},"message":"update changelog","epoch":1617991808,"epoch_utc":null},{"commit":"0e70c5ee12e96f04a89de05153a2da9cd39f98ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 11:04:17 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"update documentation link","epoch":1617991457,"epoch_utc":null},{"commit":"cd531acf6045660e022c932f62a01d4084433ad4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 11:02:19 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["docgen.sh"]},"message":"clean up comment","epoch":1617991339,"epoch_utc":null},{"commit":"908ac1f61c5cc011d05d550f933940dfed4431f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 10:56:43 2021 -0700","stats":{"files_changed":143,"insertions":0,"deletions":690,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/man/jc.1.gz","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","man/jc.1.gz"]},"message":"update docs - remove compatibility section since it is now automatically generated from info()","epoch":1617991003,"epoch_utc":null},{"commit":"f5c7e7e4046bc57b4fcad99390e31b121a7106ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 10:36:42 2021 -0700","stats":{"files_changed":70,"insertions":350,"deletions":0,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md"]},"message":"add updated docs with home link and parser info at the bottom","epoch":1617989802,"epoch_utc":null},{"commit":"001c700b5bd280cb1cb9e54169ae5f1b7918c257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 10:36:03 2021 -0700","stats":{"files_changed":3,"insertions":2,"deletions":1,"files":["docgen.sh","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"add home link to the top of the md file","epoch":1617989763,"epoch_utc":null},{"commit":"9b41e9bef0ff099e70f37fddc8fe2c6bd8457b19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 10:32:58 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"]},"message":"Add parser information header","epoch":1617989578,"epoch_utc":null},{"commit":"34bd6e32dc0c0bf7dfeedaadbf04115f43e9d060","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 10:26:34 2021 -0700","stats":{"files_changed":1,"insertions":20,"deletions":4,"files":["docgen.sh"]},"message":"pull each parser as a json object into a bash array and iterate on it to add supplementary information like version, author, and compatibility","epoch":1617989194,"epoch_utc":null},{"commit":"c5d058490beaa8f59875a8acfd7a400764768639","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 09:12:41 2021 -0700","stats":{"files_changed":1,"insertions":22,"deletions":13,"files":["jc/cli.py"]},"message":"move parser doc printing to its own function","epoch":1617984761,"epoch_utc":null},{"commit":"dd1ae6d9a7de5421830232deb42d933b9a652672","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 08:09:37 2021 -0700","stats":{"files_changed":4,"insertions":3,"deletions":1,"files":["MANIFEST.in","jc/man/jc.1.gz","man/jc.1.gz","mangen.py"]},"message":"add man page inside the pypi package for easier packaging in homebrew","epoch":1617980977,"epoch_utc":null},{"commit":"d8ea9bde823a7f5c146741150c3211737345c7dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 16:42:57 2021 -0700","stats":{"files_changed":3,"insertions":16,"deletions":16,"files":["docs/parsers/w.md","jc/parsers/w.py","man/jc.1.gz"]},"message":"doc update","epoch":1617925377,"epoch_utc":null},{"commit":"125edc9c906dc3650b6a683ed13830075acb7ab6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 16:42:45 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"bail out for -h, -a, and -v in magic()","epoch":1617925365,"epoch_utc":null},{"commit":"15ea43e394a9004f8ccec208b3a066c76e241866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 16:28:05 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["MANIFEST.in"]},"message":"add man file to package for easier packaging in homebrew","epoch":1617924485,"epoch_utc":null},{"commit":"b55b02687c00d1c50e30f30c9b9a7f36f783eb0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 16:14:11 2021 -0700","stats":{"files_changed":19,"insertions":371,"deletions":441,"files":["CHANGELOG","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","man/jc.1.gz","setup.py"]},"message":"doc update","epoch":1617923651,"epoch_utc":null},{"commit":"da611f0ac6321f7f52fdbc419f8b155c74393c28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 15:53:06 2021 -0700","stats":{"files_changed":4,"insertions":63,"deletions":50,"files":["jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","man/jc.1.gz"]},"message":"update docs","epoch":1617922386,"epoch_utc":null},{"commit":"b8b8dfead4fdc4285585c44c2ebce3bdd42b2e7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 15:52:49 2021 -0700","stats":{"files_changed":61,"insertions":1501,"deletions":1848,"files":["docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py"]},"message":"update docs","epoch":1617922369,"epoch_utc":null},{"commit":"4290a3cbd135cacbf63664dc30768017ebbed28d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 14:00:56 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":9,"files":["docs/parsers/ifconfig.md","jc/parsers/ifconfig.py"]},"message":"make IfconfigParser class private","epoch":1617915656,"epoch_utc":null},{"commit":"a5e2203cee6a7bc398cf280f57d37638eeb1d2d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 12:45:08 2021 -0700","stats":{"files_changed":3,"insertions":2,"deletions":1,"files":["docs/parsers/ifconfig.md","jc/parsers/ifconfig.py","man/jc.1.gz"]},"message":"update ifconfig doc","epoch":1617911108,"epoch_utc":null},{"commit":"e28c08b1361161cfd123b9ebc11fa1ffa87d658f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 12:42:01 2021 -0700","stats":{"files_changed":46,"insertions":976,"deletions":1209,"files":["docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","man/jc.1.gz"]},"message":"update documentation","epoch":1617910921,"epoch_utc":null},{"commit":"a4b6846f63b43168085275d73940265940badf46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 11:37:39 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":467,"files":["man/jc.1","man/jc.1.gz"]},"message":"man update","epoch":1617907059,"epoch_utc":null},{"commit":"2bc830786114fd57619f34b936dcf6e0bed7a109","merge":"9b39917 5d8f836","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 11:33:50 2021 -0700","message":"Merge branch 'master' into dev\n\n# Conflicts:\n# man/jc.1","epoch":1617906830,"epoch_utc":null},{"commit":"9b39917c798ed0310c9b82d87172cbf6d24ba111","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 11:24:02 2021 -0700","stats":{"files_changed":17,"insertions":391,"deletions":453,"files":["README.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","jc/cli.py","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"update docstrings for new help functionality","epoch":1617906242,"epoch_utc":null},{"commit":"57c13cc0a38ad89fda8b0e362bd6487257d0a26a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 10:54:15 2021 -0700","stats":{"files_changed":1,"insertions":23,"deletions":3,"files":["jc/cli.py"]},"message":"add support for parser help","epoch":1617904455,"epoch_utc":null},{"commit":"b7355fd30d992a1bcc90227f5a1b02be073829e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 10:20:24 2021 -0700","stats":{"files_changed":2,"insertions":37,"deletions":48,"files":["docs/parsers/arp.md","jc/parsers/arp.py"]},"message":"new docstring format for improved documentation","epoch":1617902424,"epoch_utc":null},{"commit":"93ae309e407b26820b9f05b5b331d05fc77df57f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 10:20:00 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/__init__.py","man/jc.1"]},"message":"bump version to 1.15.1","epoch":1617902400,"epoch_utc":null},{"commit":"5d8f8365e24a7c3a587d4e71ebba4876de08203b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 14:27:34 2021 -0700","stats":{"files_changed":3,"insertions":9,"deletions":461,"files":["man/jc.1","man/jc.1.gz","mangen.py"]},"message":"gzip man page","epoch":1617830854,"epoch_utc":null},{"commit":"f26909eefb236e9ebf63be53cd86ae13cc3d9ea3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 11:18:33 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["docs/parsers/dir.md"]},"message":"formatting","epoch":1617819513,"epoch_utc":null},{"commit":"55bfbb2797ede3aefbb14ecab950b108b1895ccc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 11:13:27 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":6,"files":["EXAMPLES.md","jc/parsers/dir.py"]},"message":"formatting","epoch":1617819207,"epoch_utc":null},{"commit":"8970b8342a855203aef649b60dad3e49a1d7fd2a","merge":"a73fdb7 5285e69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 09:34:45 2021 -0700","message":"Merge pull request #115 from kellyjonbrazil/master\n\nSync master and dev","epoch":1617813285,"epoch_utc":null},{"commit":"5285e699c30fdeaf56068f5a03ef1d1d33fa673c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 08:07:50 2021 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","jc/cli.py","man/jc.1"]},"message":"fix rpm-qi parser name","epoch":1617808070,"epoch_utc":null},{"commit":"275f3860d5870303235b651d42650256e4db8ada","merge":"577811f a73fdb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 07:54:41 2021 -0700","message":"Merge pull request #114 from kellyjonbrazil/dev\n\nDev v1.15.0","epoch":1617807281,"epoch_utc":null},{"commit":"a73fdb7478965f0f2c841ac01b2762db80ad0786","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 07:50:17 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["CHANGELOG","man/jc.1"]},"message":"update dates","epoch":1617807017,"epoch_utc":null},{"commit":"f2d746403a0ed764f931ae9e14d180bab107dcca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 20:30:56 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/rpm_qi.md","jc/parsers/rpm_qi.py"]},"message":"typo fix","epoch":1617766256,"epoch_utc":null},{"commit":"b7dbf2c49be4beb793495a0aaee7f05dbea5a3a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 18:53:50 2021 -0700","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["jc/utils.py"]},"message":"doc formatting","epoch":1617760430,"epoch_utc":null},{"commit":"21f3c97788826e79b0c387f877c5adf269318e97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 18:38:04 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"]},"message":"rename rpm_qai to rpm_qi","epoch":1617759484,"epoch_utc":null},{"commit":"14b727cc717d04fefba1cc31b6f29b549ced986f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 18:34:08 2021 -0700","stats":{"files_changed":3,"insertions":73,"deletions":0,"files":["tests/fixtures/centos-7.7/rpm-qi-package.json","tests/fixtures/centos-7.7/rpm-qi-package.out","tests/test_rpm_qai.py"]},"message":"add rpm_qi tests","epoch":1617759248,"epoch_utc":null},{"commit":"abee226591ed4ae37351efc995017d28b27827d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 18:32:47 2021 -0700","stats":{"files_changed":5,"insertions":205,"deletions":14,"files":["README.md","docs/parsers/rpm_qi.md","jc/cli.py","jc/parsers/{rpm_qai.py => rpm_qi.py}","man/jc.1"]},"message":"rename rpm_qia to rpm_qi","epoch":1617759167,"epoch_utc":null},{"commit":"293ad39f4bcf326186dd917d8bc58d3964e5e4d6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 16:48:31 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"typo fix","epoch":1617752911,"epoch_utc":null},{"commit":"92443025811019f616f596abb60a2889f604c122","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 15:07:39 2021 -0700","stats":{"files_changed":4,"insertions":7,"deletions":6,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/rpm_qai.md","jc/parsers/rpm_qai.py"]},"message":"rpm parser doc update","epoch":1617746859,"epoch_utc":null},{"commit":"753cac25fb1e7e6cd2c742afa8d45ced068ea91d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 14:46:27 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":3,"files":["jc/parsers/rpm_qai.py"]},"message":"only add description if it exists","epoch":1617745587,"epoch_utc":null},{"commit":"0548263e898bf14f93d2fa423c0f0a9d9f2ff567","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 14:39:39 2021 -0700","stats":{"files_changed":8,"insertions":10468,"deletions":0,"files":["EXAMPLES.md","README.md","docs/parsers/rpm_qai.md","jc/cli.py","jc/parsers/rpm_qai.py","man/jc.1","tests/fixtures/centos-7.7/rpm-qai.json","tests/fixtures/centos-7.7/rpm-qai.out"]},"message":"add rpm -qai parser","epoch":1617745179,"epoch_utc":null},{"commit":"53776a9bf894988d6ef9221a62ab8b816c89560c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 11:36:10 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["man/jc.1","templates/manpage_template"]},"message":"note -a output is JSON","epoch":1617734170,"epoch_utc":null},{"commit":"cc7def9b76a7fa6de1e11b584676820f3acb0257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 11:29:30 2021 -0700","stats":{"files_changed":3,"insertions":18,"deletions":0,"files":["tests/fixtures/osx-10.14.6/finger.json","tests/fixtures/osx-10.14.6/finger.out","tests/test_finger.py"]},"message":"add OSX finger tests","epoch":1617733770,"epoch_utc":null},{"commit":"11a4422c25ed905f33475677bcc2f59f49c62a23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 11:23:29 2021 -0700","stats":{"files_changed":3,"insertions":51,"deletions":0,"files":["tests/fixtures/centos-7.7/finger.json","tests/fixtures/centos-7.7/finger.out","tests/test_finger.py"]},"message":"add centos 7.7 finger tests","epoch":1617733409,"epoch_utc":null},{"commit":"3a44785260514227b541530baf3e14b6c7ebe86a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 11:23:09 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/finger.py"]},"message":"del details key if details are blank","epoch":1617733389,"epoch_utc":null},{"commit":"e0d430c26c38db8de5a32741e05df412cffe45b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 11:00:46 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"update -r raw option info","epoch":1617732046,"epoch_utc":null},{"commit":"417b70020accfa4910016e9d3d12690a5488f6f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 10:51:41 2021 -0700","stats":{"files_changed":5,"insertions":129,"deletions":22,"files":["EXAMPLES.md","docs/parsers/finger.md","jc/parsers/finger.py","tests/fixtures/ubuntu-18.04/finger.json","tests/fixtures/ubuntu-18.04/finger.out"]},"message":"add idle time fields to finger parser","epoch":1617731501,"epoch_utc":null},{"commit":"7b29c464b72ef9a79bd872dab92cf65016490bcc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 10:04:02 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"date updated","epoch":1617728642,"epoch_utc":null},{"commit":"26d5529d86e4e459ad94226465c3697a050af0ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 10:03:51 2021 -0700","stats":{"files_changed":1,"insertions":10,"deletions":7,"files":["docs/parsers/finger.md"]},"message":"remove aix support, add note for -s support. schema update","epoch":1617728631,"epoch_utc":null},{"commit":"852103c478321b84ffbbc0a876d5ece0c0881e1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 10:02:46 2021 -0700","stats":{"files_changed":1,"insertions":27,"deletions":14,"files":["jc/parsers/finger.py"]},"message":"tweak regex to support arbitrary 'detail' data","epoch":1617728566,"epoch_utc":null},{"commit":"26a115421b0888e23f4348f1124e2ef7b39df4cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 17:16:38 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["CHANGELOG"]},"message":"add finger parser","epoch":1617668198,"epoch_utc":null},{"commit":"755b941a9aa602d95d9bc599f5c64e05f9e6216d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 17:14:33 2021 -0700","stats":{"files_changed":3,"insertions":35,"deletions":30,"files":["EXAMPLES.md","docs/parsers/finger.md","jc/parsers/finger.py"]},"message":"doc update","epoch":1617668073,"epoch_utc":null},{"commit":"fd1ca82d86649adeb84968142665e5e4fae3fa0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 17:09:22 2021 -0700","stats":{"files_changed":5,"insertions":263,"deletions":0,"files":["README.md","docs/parsers/finger.md","jc/cli.py","jc/parsers/finger.py","man/jc.1"]},"message":"add finger parser","epoch":1617667762,"epoch_utc":null},{"commit":"6fe175344fc61d4996a9ea20f6c5d429efb1fac7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 13:38:09 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"change examples link to github.io","epoch":1617655089,"epoch_utc":null},{"commit":"3590cda13a68616ee7eb8c85c5554ffb3fef036d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 12:07:52 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/last.md","jc/parsers/last.py"]},"message":"docs formatting","epoch":1617649672,"epoch_utc":null},{"commit":"2f1011dd85ec9b3550138ac4a4e1729fa5b4fe17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 12:03:35 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"readme update","epoch":1617649415,"epoch_utc":null},{"commit":"2b155261b3f6e4879b592f5bc052649ded5e3d69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 12:01:53 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"]},"message":"use new github.io links for documentation","epoch":1617649313,"epoch_utc":null},{"commit":"02f4d606d0a446c7cc74aedac6035ee79805950d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 11:49:30 2021 -0700","stats":{"files_changed":2,"insertions":69,"deletions":69,"files":["README.md","templates/readme_template"]},"message":"add documentation links to README.md","epoch":1617648570,"epoch_utc":null},{"commit":"577811f00b7fcd0396bb0e26a2985709bd2c65a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 11:42:59 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/_config.yml"]},"message":"Set theme jekyll-theme-cayman","epoch":1617648179,"epoch_utc":null},{"commit":"b4098d67a3a4a617d42c1389e0a88833c77b89b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 09:42:35 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"latest","epoch":1617640955,"epoch_utc":null},{"commit":"88bd7554aeb511c19e55dc3dde9c9376efb0485b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 09:42:25 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":3,"files":["docgen.sh","updatedocs.sh"]},"message":"add status messages","epoch":1617640945,"epoch_utc":null},{"commit":"b5ec16c5cafb78db093861cc30d9646207f2227a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 09:23:20 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":8,"files":["mangen.py","readmegen.py"]},"message":"formatting","epoch":1617639800,"epoch_utc":null},{"commit":"68fcb60a1460a35500180ec05a8cf5ba5706ff17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 20:56:10 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["updatedocs.sh"]},"message":"add updatedocs script","epoch":1617594970,"epoch_utc":null},{"commit":"e4781d60ce251f6d47f19bbe042e97f8aa9e2f18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 20:52:34 2021 -0700","stats":{"files_changed":65,"insertions":188,"deletions":189,"files":["README.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","man/jc.1"]},"message":"update parser descriptions with backticks surrounding command names","epoch":1617594754,"epoch_utc":null},{"commit":"6201fb346a66ba762651624cdaf03f08e08579a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 20:31:58 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","jc/parsers/iw_scan.py"]},"message":"test backticks in description","epoch":1617593518,"epoch_utc":null},{"commit":"f88c8343f9dec5e0190df94a5109e6c749bda286","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 20:30:53 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","jc/parsers/iw_scan.py"]},"message":"update iw-scan description for documentation","epoch":1617593453,"epoch_utc":null},{"commit":"25410d33168ee7142bd8f8c739ef22a62a47eb6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 20:28:54 2021 -0700","stats":{"files_changed":5,"insertions":973,"deletions":70,"files":["README.md","mangen.py","readmegen.py","{man/template => templates}/manpage_template","templates/readme_template"]},"message":"create readmegen.py script. move jinja2 templates to templates folder","epoch":1617593334,"epoch_utc":null},{"commit":"4ff9952938d0654376efc94ca7d8a12f6df171af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 15:57:44 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["README.md"]},"message":"change OSX to macOS","epoch":1617577064,"epoch_utc":null},{"commit":"5e3f63a412c5b23e7515337521ebba6273b5c11f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 15:53:23 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["man/jc.1","man/template/manpage_template"]},"message":"add license and copyright info. use variables instead of hard-coded values","epoch":1617576803,"epoch_utc":null},{"commit":"e1f57be69efdfd7facd07df6ef0955a36c4fc18b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 15:52:50 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"]},"message":"add license info","epoch":1617576770,"epoch_utc":null},{"commit":"2c65d5eeccdc95d2de00ac6575a9e8d8458486bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 14:40:22 2021 -0700","stats":{"files_changed":2,"insertions":32,"deletions":8,"files":["man/jc.1","man/template/manpage_template"]},"message":"man page updates","epoch":1617572422,"epoch_utc":null},{"commit":"aa621f2f1ee043611c440683dfb63e6577d8fac4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 14:29:37 2021 -0700","stats":{"files_changed":3,"insertions":74,"deletions":9,"files":["CHANGELOG","man/jc.1","man/template/manpage_template"]},"message":"enhance man page","epoch":1617571777,"epoch_utc":null},{"commit":"ac932c6e59ad80115962d0ea91e6aaabc70c211e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 3 14:48:30 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/utils.md","jc/utils.py"]},"message":"update timestamp docs","epoch":1617486510,"epoch_utc":null},{"commit":"029f79da1647e53f97ca83ba92b1f36a131f3128","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 21:52:08 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"added info regarding updated dev scripts for automating doc generation","epoch":1617425528,"epoch_utc":null},{"commit":"153b2b4a7a216caae5b03f6d50d43980c13a705f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 21:50:04 2021 -0700","stats":{"files_changed":1,"insertions":11,"deletions":68,"files":["docgen.sh"]},"message":"use jc to help automate the generation of its own docs","epoch":1617425404,"epoch_utc":null},{"commit":"709b2fe4eead06090f903718deeb06ec774fc26e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 18:08:46 2021 -0700","stats":{"files_changed":2,"insertions":16,"deletions":0,"files":["man/jc.1","man/template/manpage_template"]},"message":"add -h and -v options","epoch":1617412126,"epoch_utc":null},{"commit":"09c1fccc584e3d0582e19b520586419085ea8d04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 18:04:55 2021 -0700","stats":{"files_changed":3,"insertions":4,"deletions":6,"files":["man/jc.1","man/template/manpage_template","mangen.py"]},"message":"manpage updates","epoch":1617411895,"epoch_utc":null},{"commit":"fd254d99b782888fe7646e42a61f28aa99e7cba7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 17:40:09 2021 -0700","stats":{"files_changed":3,"insertions":193,"deletions":15,"files":["man/jc.1","man/template/manpage_template","mangen.py"]},"message":"add manpage generator","epoch":1617410409,"epoch_utc":null},{"commit":"88bd2c172217c498431e8904e74313bc27978785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 16:31:22 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"fix typo","epoch":1617406282,"epoch_utc":null},{"commit":"d03e2f0fc1d0310cd94702f4d3c959d71b0eb622","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 15:01:21 2021 -0700","stats":{"files_changed":1,"insertions":40,"deletions":0,"files":["CONTRIBUTING.md"]},"message":"add parser schema guidelines","epoch":1617400881,"epoch_utc":null},{"commit":"3f12a393bd37062cd1412128be495235b0c7351f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 13:25:23 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"formatting","epoch":1617395123,"epoch_utc":null},{"commit":"8c21284c5038bdc2e52ff4211fac747f33f52091","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 13:23:26 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["CONTRIBUTING.md"]},"message":"remove redundant license info","epoch":1617395006,"epoch_utc":null},{"commit":"e7d396c2157a77500017967dfc68ffaf32507c2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 13:21:56 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"update issues link","epoch":1617394916,"epoch_utc":null},{"commit":"f238fac0eb0c8e5133c6c9abf9ca709f5df7a925","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 13:19:47 2021 -0700","stats":{"files_changed":3,"insertions":49,"deletions":0,"files":["CHANGELOG","CONTRIBUTING.md","README.md"]},"message":"add contributing guidelines","epoch":1617394787,"epoch_utc":null},{"commit":"017228f80d9a65ad7715f31c539d9fca1615296f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:14:26 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add tested on Windows 10","epoch":1617390866,"epoch_utc":null},{"commit":"286c5fa9434e25434ee8f4825621f68464296469","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:12:43 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add dir parser","epoch":1617390763,"epoch_utc":null},{"commit":"74cfc13abe4cd09ca5470714caeaedd24c099770","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:10:05 2021 -0700","stats":{"files_changed":9,"insertions":12,"deletions":21,"files":["tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-S.json","tests/fixtures/windows-10/dir-dirs.json","tests/fixtures/windows-10/dir-files.json","tests/fixtures/windows-10/dir-mix.json","tests/fixtures/windows-10/dir-raw.json","tests/fixtures/windows-10/dir.json","tests/test_dir.py"]},"message":"fixup dir parser tests","epoch":1617390605,"epoch_utc":null},{"commit":"0ee4a6c377321cf6ff67ced38e9a07a8f6313943","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:01:39 2021 -0700","stats":{"files_changed":2,"insertions":207,"deletions":460,"files":["docs/parsers/dir.md","jc/parsers/dir.py"]},"message":"update schema and add epoch naive timestamp","epoch":1617390099,"epoch_utc":null},{"commit":"283433578dfc3f132ef35727ce5bafb3e390896c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:01:23 2021 -0700","stats":{"files_changed":2,"insertions":46,"deletions":0,"files":["EXAMPLES.md","README.md"]},"message":"add dir parser","epoch":1617390083,"epoch_utc":null},{"commit":"9559c85057308e8815d4654bbe0062a5858c0b2b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:01:05 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":0,"files":["jc/utils.py","tests/test_utils.py"]},"message":"add windows dir format","epoch":1617390065,"epoch_utc":null},{"commit":"c5c020f5654038dacba542be3784a35d7333cbcc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 11:16:03 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/parsers/dir.md"]},"message":"add /S option","epoch":1617387363,"epoch_utc":null},{"commit":"95ec79bceb3d0c4245e36b7b16cfda6e16b01197","merge":"8f8be8a 5b60c74","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 11:14:26 2021 -0700","message":"Merge pull request #107 from rasheed-rd/add-dir-parser\n\nAdd windows dir command parser","epoch":1617387266,"epoch_utc":null},{"commit":"8f8be8aa33f0b708ebd9a35c6b288572443d7181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 11:14:06 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"add -1 option info","epoch":1617387246,"epoch_utc":null},{"commit":"5b60c7445a3f8bd2ae1587aa0ffaeaf093966f9a","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","date":"Fri Apr 2 13:43:06 2021 -0400","stats":{"files_changed":5,"insertions":469,"deletions":400,"files":["docs/parsers/dir.md","jc/parsers/dir.py","tests/fixtures/windows-10/dir-S.json","tests/fixtures/windows-10/dir-S.out","tests/test_dir.py"]},"message":"Add support for /S and update documentation","epoch":1617396186,"epoch_utc":null},{"commit":"d9dbcc8b526c8de9c6d12ac580880fd606dc68cf","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","date":"Fri Apr 2 13:13:05 2021 -0400","stats":{"files_changed":15,"insertions":149,"deletions":73,"files":["docs/parsers/dir.md","jc/parsers/dir.py","tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-Q.json","tests/fixtures/windows-10/dir-Q.out","tests/fixtures/windows-10/dir-dirs.json","tests/fixtures/windows-10/dir-dirs.out","tests/fixtures/windows-10/dir-files.json","tests/fixtures/windows-10/dir-files.out","tests/fixtures/windows-10/dir-mix.json","tests/fixtures/windows-10/dir-mix.out","tests/fixtures/windows-10/dir-raw.json","tests/fixtures/windows-10/dir.json","tests/test_dir.py"]},"message":"Add parent dir to structure. Add test cases. Remove support for /Q","epoch":1617394385,"epoch_utc":null},{"commit":"79bc525970b38dea68b4859ac5dd32fc681e5994","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:42:36 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"]},"message":"add codes field to schema","epoch":1617334956,"epoch_utc":null},{"commit":"9dae1091ddc6141694ebfdc5ae649582cb879ccd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:41:05 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"]},"message":"typo fix","epoch":1617334865,"epoch_utc":null},{"commit":"74d3ac686a69518c1048260e37a0245ff254ff57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:37:12 2021 -0700","stats":{"files_changed":4,"insertions":61,"deletions":0,"files":["tests/fixtures/ubuntu-18.04/dpkg-l-codes.json","tests/fixtures/ubuntu-18.04/dpkg-l-columns500.json","tests/fixtures/ubuntu-18.04/dpkg-l.json","tests/test_dpkg_l.py"]},"message":"add dpkg-l tests","epoch":1617334632,"epoch_utc":null},{"commit":"cf3cc636badcf4ae6db1e5ee5e57ca0331ee5b0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:25:56 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add dpkg-l parser info","epoch":1617333956,"epoch_utc":null},{"commit":"a720441e1d34771c5a54876cb7dd63fb8c9f408e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:24:19 2021 -0700","stats":{"files_changed":1,"insertions":54,"deletions":0,"files":["EXAMPLES.md"]},"message":"add dpkg -l example","epoch":1617333859,"epoch_utc":null},{"commit":"0a7ed0959df07e2f36d9ec3ca8c294cfdaf10396","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:17:21 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"]},"message":"rename err to error","epoch":1617333441,"epoch_utc":null},{"commit":"eb83c9b86dc6d1ff15efed30993071834b65a7d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:13:40 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":21,"files":["docs/utils.md"]},"message":"replace parse_datetime_to_timestamp with timestamp class","epoch":1617333220,"epoch_utc":null},{"commit":"5c0142dd19eee14f4f1c287f0543e29824f9ae70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:12:58 2021 -0700","stats":{"files_changed":9,"insertions":1797,"deletions":2,"files":["CHANGELOG","docgen.sh","docs/parsers/dpkg_l.md","jc/cli.py","jc/parsers/dpkg_l.py","jc/parsers/universal.py","tests/fixtures/ubuntu-18.04/dpkg-l-codes.out","tests/fixtures/ubuntu-18.04/dpkg-l-columns500.out","tests/fixtures/ubuntu-18.04/dpkg-l.out"]},"message":"add dpkg-l parser","epoch":1617333178,"epoch_utc":null},{"commit":"c326c8dc8356b55bba13864156adf30607205ece","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 12:52:10 2021 -0700","stats":{"files_changed":18,"insertions":194,"deletions":1,"files":["jc/parsers/time.py","tests/fixtures/osx-10.14.6/time-l.json","tests/fixtures/osx-10.14.6/time-l.out","tests/fixtures/osx-10.14.6/time-lp.json","tests/fixtures/osx-10.14.6/time-lp.out","tests/fixtures/osx-10.14.6/time-p.json","tests/fixtures/osx-10.14.6/time-p.out","tests/fixtures/osx-10.14.6/time.json","tests/fixtures/osx-10.14.6/time.out","tests/fixtures/ubuntu-18.04/time-p.json","tests/fixtures/ubuntu-18.04/time-p.out","tests/fixtures/ubuntu-18.04/time-verbose.json","tests/fixtures/ubuntu-18.04/time-verbose.out","tests/fixtures/ubuntu-18.04/time.json","tests/fixtures/ubuntu-18.04/time.out","tests/fixtures/ubuntu-18.04/time2.json","tests/fixtures/ubuntu-18.04/time2.out","tests/test_time.py"]},"message":"add TypeError to except block. add /usr/bin/time tests","epoch":1617306730,"epoch_utc":null},{"commit":"fc4082a03feb5645a1ad687908782a2584a58956","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:26:02 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":131,"files":["jc/utils.py"]},"message":"remove old parse_datetime_to_timestamp function","epoch":1617301562,"epoch_utc":null},{"commit":"c8655565ff8718f0f14d41696b81e6539529dde1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:23:24 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"]},"message":"use new timestamp class","epoch":1617301404,"epoch_utc":null},{"commit":"638f879f16c9e87edb60953f4fd0b1c7ad92f277","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:21:27 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/dig.py"]},"message":"use new timestamp class","epoch":1617301287,"epoch_utc":null},{"commit":"1d221bf7e6128d57bd769c0fe8f37f7a94da8cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:19:49 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/who.py"]},"message":"use new timestamp class","epoch":1617301189,"epoch_utc":null},{"commit":"60ea71f0ef931dccf09e6eb0cb737ddad0b47f0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:18:03 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/timedatectl.py"]},"message":"use new timestamp class","epoch":1617301083,"epoch_utc":null},{"commit":"d8bdd35a3f462efcdc871426309299e8aefb0a79","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:17:53 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/stat.py"]},"message":"use new timestamp class","epoch":1617301073,"epoch_utc":null},{"commit":"7463891c53f3670710dfa72ed1422431c274fe4a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:13:02 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/last.py"]},"message":"use new timestamp class","epoch":1617300782,"epoch_utc":null},{"commit":"7537aec76fa07384c4439f34c50d4e3f001c0dfa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:08:27 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":8,"files":["jc/parsers/date.py"]},"message":"use jc.utils.timestamp instead of jc.utils.parse_datetime_to_timestamp()","epoch":1617300507,"epoch_utc":null},{"commit":"62234e39a8533362a20f106c64326ed69f430006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:08:20 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":8,"files":["jc/parsers/upower.py"]},"message":"use jc.utils.timestamp instead of jc.utils.parse_datetime_to_timestamp()","epoch":1617300500,"epoch_utc":null},{"commit":"be004b7b3fe9217160c6418907e7d8aad10e5fae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:07:37 2021 -0700","stats":{"files_changed":2,"insertions":172,"deletions":15,"files":["jc/utils.py","tests/test_utils.py"]},"message":"make parse_datetime_to_timestamp function a class called timestamp for easier use","epoch":1617300457,"epoch_utc":null},{"commit":"82539444b24169b2eb762485ed032fc968a81f71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 31 20:48:44 2021 -0700","stats":{"files_changed":2,"insertions":23,"deletions":21,"files":["docs/parsers/time.md","jc/parsers/time.py"]},"message":"fix indentation for int and float conversions. add real_time field to schema","epoch":1617248924,"epoch_utc":null},{"commit":"a571d3cbafd5048d1d59070e1791398ae410197f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 31 20:41:04 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/time.md","jc/parsers/time.py"]},"message":"fix typo","epoch":1617248464,"epoch_utc":null},{"commit":"a038c14c23ea27264df61a38e0301de8d1fa1b9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 31 20:39:03 2021 -0700","stats":{"files_changed":3,"insertions":8,"deletions":8,"files":["EXAMPLES.md","docs/parsers/time.md","jc/parsers/time.py"]},"message":"change microseconds to centiseconds","epoch":1617248343,"epoch_utc":null},{"commit":"25a85d874cd2b57a7700b0c2dca61132127732b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 31 20:21:29 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iw_scan.py"]},"message":"update docs","epoch":1617247289,"epoch_utc":null},{"commit":"884c36ff42df4f580c8e2b4705def8e4c1182e39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 31 20:19:46 2021 -0700","stats":{"files_changed":8,"insertions":536,"deletions":1,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","docs/parsers/iw_scan.md","docs/parsers/time.md","jc/cli.py","jc/parsers/time.py"]},"message":"add /usr/bin/time parser","epoch":1617247186,"epoch_utc":null},{"commit":"b98e72b8b4eda0ab5ede7725226e61634af572eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 21:33:23 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add ls parser info","epoch":1617165203,"epoch_utc":null},{"commit":"05885c0096b5ee142ecff2d17e37c446518998a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 21:29:34 2021 -0700","stats":{"files_changed":5,"insertions":931,"deletions":18,"files":["docs/parsers/ls.md","jc/parsers/ls.py","tests/fixtures/ubuntu-18.04/ls-l-iso.json","tests/fixtures/ubuntu-18.04/ls-l-iso.out","tests/test_ls.py"]},"message":"add epoch and epoch_utc timestamps","epoch":1617164974,"epoch_utc":null},{"commit":"4c9761231af897658c3a2c0abcc476aa8b43d1b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 20:41:10 2021 -0700","stats":{"files_changed":21,"insertions":118,"deletions":81,"files":["CHANGELOG","EXAMPLES.md","README.md","docs/parsers/dig.md","jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json"]},"message":"add when_epoch and when_epoch_utc fields","epoch":1617162070,"epoch_utc":null},{"commit":"656eaa150861948091ef9d6323805c2698039bc6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 16:43:53 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1617147833,"epoch_utc":null},{"commit":"1560dcddcf82f55fffce22d1b46d372b25a9d0fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 16:43:02 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"]},"message":"add acpi, upower parsers and -v version option","epoch":1617147782,"epoch_utc":null},{"commit":"08d4cd4870c7acaf3a453d1400b64d77d462437b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 16:34:01 2021 -0700","stats":{"files_changed":7,"insertions":114,"deletions":43,"files":["EXAMPLES.md","docs/parsers/acpi.md","jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.json","tests/fixtures/generic/acpi-V2.json","tests/fixtures/generic/acpi-V3.json","tests/fixtures/generic/acpi-V4.json"]},"message":"add time calculations to acpi parser","epoch":1617147241,"epoch_utc":null},{"commit":"9767a50cededb140575e195abf79ce49c4f53789","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 11:59:44 2021 -0700","stats":{"files_changed":12,"insertions":48,"deletions":46,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/who.md","jc/parsers/who.py","jc/utils.py","tests/fixtures/centos-7.7/who-a.json","tests/fixtures/centos-7.7/who.json","tests/fixtures/osx-10.14.6/who-a.json","tests/fixtures/osx-10.14.6/who.json","tests/fixtures/ubuntu-18.04/who-a.json","tests/fixtures/ubuntu-18.04/who.json","tests/test_utils.py"]},"message":"update who parser to add epoch naive timestamp","epoch":1617130784,"epoch_utc":null},{"commit":"cd86890ed1493644e391e52e33561e9a77631a51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 08:05:26 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"]},"message":"add website to info and use variables for version info","epoch":1617116726,"epoch_utc":null},{"commit":"ba0dd3b9ca98a042c772898302fcfe5fdc84f79a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 21:25:19 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["tests/test_utils.py"]},"message":"add parse_timedate_to_timestamp test for format 7300","epoch":1617078319,"epoch_utc":null},{"commit":"8d7fa07ffd50f38336a448eb506a76d9d4849a6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 21:20:19 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":11,"files":["tests/fixtures/centos-7.7/timedatectl.json"]},"message":"unformat json","epoch":1617078019,"epoch_utc":null},{"commit":"cade1bfe6e56b5926898b7204e911885efebd5a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 21:19:12 2021 -0700","stats":{"files_changed":2,"insertions":12,"deletions":2,"files":["tests/fixtures/centos-7.7/timedatectl.json","tests/fixtures/ubuntu-18.04/timedatectl.json"]},"message":"update timedatectl tests for new epoch_utc field","epoch":1617077952,"epoch_utc":null},{"commit":"daec4ab0a7f572e872b27b043d51f68e5e06300f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 21:16:40 2021 -0700","stats":{"files_changed":5,"insertions":20,"deletions":4,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/timedatectl.md","jc/parsers/timedatectl.py","jc/utils.py"]},"message":"add epoch_utc field to timedatectl parser","epoch":1617077800,"epoch_utc":null},{"commit":"3c96bc319615c824a06c388e9e3c1d68a9bf4084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:57:58 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"]},"message":"version bump","epoch":1617076678,"epoch_utc":null},{"commit":"7f7d8d4bd6f37015b11bac60a7bd99e8d3eca108","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:36:10 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":0,"files":["docs/parsers/stat.md","jc/parsers/stat.py"]},"message":"update stat docs","epoch":1617075370,"epoch_utc":null},{"commit":"47263661a41987f334fd484e866e0aa8859cde5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:30:20 2021 -0700","stats":{"files_changed":1,"insertions":18,"deletions":2,"files":["EXAMPLES.md"]},"message":"update stat example","epoch":1617075020,"epoch_utc":null},{"commit":"4c42a086d206919dfe4f1c0801fe4fb1027cb1cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:25:54 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":6,"files":["jc/utils.py"]},"message":"clean up debug code","epoch":1617074754,"epoch_utc":null},{"commit":"5d2541a5c4bc93f3943a491c76df7f8d4e2cf44b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:22:35 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/utils.py"]},"message":"remove auto c locale and use a manual format rule for windows and linux compatibility","epoch":1617074555,"epoch_utc":null},{"commit":"d91d170b49bfc88c0b2fb54475705c038172f1c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:16:05 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/utils.py"]},"message":"try manual c locale format for windows","epoch":1617074165,"epoch_utc":null},{"commit":"6d1f4584a9ccd0f0f7ed4fdf408576a9e7f5046b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:05:42 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"]},"message":"try manually setting time format for windows compatibility","epoch":1617073542,"epoch_utc":null},{"commit":"1d76d96bcf4185cffb7066bec637913099399db5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 16:58:57 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/utils.py"]},"message":"debug windows issue","epoch":1617062337,"epoch_utc":null},{"commit":"e8847c998c91131acf5ee0f6485e9976c0fce3ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 16:35:26 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["tests/fixtures/centos-7.7/stat.json","tests/fixtures/freebsd12/stat.json","tests/fixtures/osx-10.14.6/stat.json","tests/fixtures/ubuntu-18.04/stat.json"]},"message":"update stat tests","epoch":1617060926,"epoch_utc":null},{"commit":"da88e49bae2f3fecff623f52c20bf994b653583e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 15:36:16 2021 -0700","stats":{"files_changed":2,"insertions":69,"deletions":29,"files":["docs/parsers/stat.md","jc/parsers/stat.py"]},"message":"add new examples","epoch":1617057376,"epoch_utc":null},{"commit":"65c3a12e5422782df40489c3c431677f5657dbf5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 15:32:04 2021 -0700","stats":{"files_changed":2,"insertions":35,"deletions":24,"files":["jc/parsers/stat.py","jc/utils.py"]},"message":"simplify None data scenario","epoch":1617057124,"epoch_utc":null},{"commit":"d8d600cc36bde4e6216b935f87a765599e896714","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 14:51:48 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"add reference to -h for help","epoch":1617054708,"epoch_utc":null},{"commit":"507999b117b024fed1ccf067bd5dc411dbeb268c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 14:45:13 2021 -0700","stats":{"files_changed":3,"insertions":34,"deletions":19,"files":["docs/utils.md","jc/utils.py","tests/test_utils.py"]},"message":"add stat command timestamp detection","epoch":1617054313,"epoch_utc":null},{"commit":"8ad164eb340e135eeeb10b721172916182f37e30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 12:33:54 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_cli.py"]},"message":"fix tests for compact output","epoch":1617046434,"epoch_utc":null},{"commit":"a507df140b245b83b1c46e8462b44e1145c42f2a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 12:25:58 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add compact json info","epoch":1617045958,"epoch_utc":null},{"commit":"8912a99986a977ee6ca7bbe2368f5033644577b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 12:25:48 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/cli.py"]},"message":"make default json output more compact","epoch":1617045948,"epoch_utc":null},{"commit":"1953f9882890cd0e8c515d43ce28c96f918b0ab4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 11:44:43 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"]},"message":"add version info. add json now supports unicode output","epoch":1617043483,"epoch_utc":null},{"commit":"7515218ddd2cdcfcebd67850140e842f2f121226","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 11:42:01 2021 -0700","stats":{"files_changed":2,"insertions":10,"deletions":14,"files":["jc/cli.py","jc/utils.py"]},"message":"use jc.utils for all warning and error messages. simply error and warning formatting.","epoch":1617043321,"epoch_utc":null},{"commit":"36c11201366cefedee4244fb71a4a9cc6507e6ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 10:59:56 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"formatting","epoch":1617040796,"epoch_utc":null},{"commit":"8fa0fe64d8418093c7f28cdc70a7f409956aeb04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 10:52:02 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"]},"message":"add -v to helptext. minor formatting","epoch":1617040322,"epoch_utc":null},{"commit":"c1a8201b140c65579ff9f8427322b67653bf3006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 10:24:58 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["EXAMPLES.md"]},"message":"add copyright","epoch":1617038698,"epoch_utc":null},{"commit":"398bbac48c8a716b1872843d671aa6ceaeba6a78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 10:23:52 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"simplify return value for parse_datetime_to_timestamp()","epoch":1617038632,"epoch_utc":null},{"commit":"ea71a42bbdd9b09a457727cfe763054625f7901a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 09:43:19 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/cli.py"]},"message":"formatting","epoch":1617036199,"epoch_utc":null},{"commit":"1c16d25b17a7282a62a5ebd9755df5569c57435f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 09:41:15 2021 -0700","stats":{"files_changed":2,"insertions":30,"deletions":9,"files":["README.md","jc/cli.py"]},"message":"add version option (-v) and copyright information. add 'ensure_ascii=False' to json dumps to properly show UTF-8 copyright character","epoch":1617036075,"epoch_utc":null},{"commit":"9d12ded889f656656267cbf7a91d71267201f736","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 16:32:17 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"help description change","epoch":1616801537,"epoch_utc":null},{"commit":"5312701515ecb3a10598bb9dcf2f73b7eae71b93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 16:29:10 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add - make all external python requirements optional","epoch":1616801350,"epoch_utc":null},{"commit":"808c7bc0a94ecfd160ee2b257e5feec347829a5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 16:14:35 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/xml.py"]},"message":"make xmltodict library optional","epoch":1616800475,"epoch_utc":null},{"commit":"4d394015f458f284d052ce2c1a0c8492916c5b3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 16:10:28 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/yaml.py"]},"message":"make ruamel.yaml library optional","epoch":1616800228,"epoch_utc":null},{"commit":"3638298af8ebc01d54aa3ab5668d0adedca957e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 15:54:45 2021 -0700","stats":{"files_changed":1,"insertions":53,"deletions":44,"files":["jc/cli.py"]},"message":"make pygments library optional","epoch":1616799285,"epoch_utc":null},{"commit":"5f00973e400629bd68c0ab60ed9005410278f855","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 15:38:57 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/date.py"]},"message":"remove parenthesis to normalize text for naive timezone detection","epoch":1616798337,"epoch_utc":null},{"commit":"0f6e2c14fcb69f664c29083ec5207326f842dfdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 14:57:19 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/parsers/upower.py"]},"message":"simplify timestamp failure logic","epoch":1616795839,"epoch_utc":null},{"commit":"51813da61994226ba40478825d47f80c23413349","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 14:56:45 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":4,"files":["jc/parsers/date.py"]},"message":"add offset timezones. fix timestamp logic on conversion failure","epoch":1616795805,"epoch_utc":null},{"commit":"e7751322ea195cac7f1921ba8e0364c442065d20","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 14:55:47 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/iw_scan.py"]},"message":"formatting","epoch":1616795747,"epoch_utc":null},{"commit":"26ef29843784ade3d55410be13300dd6f4c06890","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 14:55:16 2021 -0700","stats":{"files_changed":1,"insertions":10,"deletions":6,"files":["jc/utils.py"]},"message":"change return to always include the entire object but all keys may be None if conversion fails","epoch":1616795716,"epoch_utc":null},{"commit":"badaf8ce73d7deb0ec2be244e27b4bf8cddbea19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 14:00:33 2021 -0700","stats":{"files_changed":1,"insertions":14,"deletions":14,"files":["jc/utils.py"]},"message":"comment formatting","epoch":1616792433,"epoch_utc":null},{"commit":"b123a622039f3cc32643a3bfc0766154d660f8bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 13:11:34 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/utils.py"]},"message":"move locale change formats to the end of the list","epoch":1616789494,"epoch_utc":null},{"commit":"cfd77e42522aa2ebeada9f45ac99bd1d3414f782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 13:01:12 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/utils.py"]},"message":"reset locale to None on exception","epoch":1616788872,"epoch_utc":null},{"commit":"38f814072eac5370059f1b4203316eee41cf535b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 11:55:12 2021 -0700","stats":{"files_changed":1,"insertions":26,"deletions":8,"files":["jc/utils.py"]},"message":"better normalization of datetime string. better UTC detection. More formats supported with detected locale.","epoch":1616784912,"epoch_utc":null},{"commit":"a0db7754e384a0c95f2099bf894f3a22bd33c002","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 09:32:49 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add nixos install info","epoch":1616776369,"epoch_utc":null},{"commit":"f07620afc7dc0d0d605eb483ef36c5979b33cdfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 09:28:03 2021 -0700","stats":{"files_changed":3,"insertions":18,"deletions":7,"files":["README.md","jc/__init__.py","jc/cli.py"]},"message":"move version to jc.__init__.py\nadd -h option for help instead of always showing on error\nuse jc.utils.error_message for the following errors: missing/incorrect arguments, parser not found, missing piped data","epoch":1616776083,"epoch_utc":null},{"commit":"c1b0d27752726989c6051f683a1194941bee598c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 20:45:38 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":10,"files":["runtests.sh"]},"message":"remove old commented commands","epoch":1616730338,"epoch_utc":null},{"commit":"430a5108aa265d4df0e4584eade54759da864c61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 20:42:58 2021 -0700","stats":{"files_changed":3,"insertions":19,"deletions":60,"files":["runtests.sh","tests/test_last.py","tests/test_last2.py"]},"message":"move all tests to github actions","epoch":1616730178,"epoch_utc":null},{"commit":"111ce92fc9c33b82c7d1a1664dda046ea5993f6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 20:37:35 2021 -0700","stats":{"files_changed":4,"insertions":0,"deletions":1,"files":["tests/{localtest_date.py => test_date.py}","tests/{localtest_last.py => test_last2.py}","tests/{localtest_upower.py => test_upower.py}","tests/test_utils.py"]},"message":"attempt all tests in github actions with timezone correction","epoch":1616729855,"epoch_utc":null},{"commit":"c851e8a58d98b2a4907cf1e7cf7c7d8d8dc04dc6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 20:33:25 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_utils.py"]},"message":"force github action","epoch":1616729605,"epoch_utc":null},{"commit":"39f4bcd9b41450068903ea2843508586eccdf709","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 20:30:13 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"Change Windows timezone\n\nuse \"Pacific Standard Time\"","epoch":1616729413,"epoch_utc":null},{"commit":"4a610c4c81493788b8351e8c74aabe819c981c02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:57:32 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["tests/test_utils.py"]},"message":"force github action","epoch":1616727452,"epoch_utc":null},{"commit":"89ee11945d4e2db107a33ef0d61e0c6015ac8ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:55:21 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"Change timezone provider\n\nuses: szenius/set-timezone@v1.0","epoch":1616727321,"epoch_utc":null},{"commit":"dadb09b74a69d1852f8433e0e32ccdd67bd91181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:52:43 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_utils.py"]},"message":"force github action","epoch":1616727163,"epoch_utc":null},{"commit":"1b1f638b97dc5e6f2767183eb363b79ae3c9b3c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:49:03 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":[".github/workflows/pythonapp.yml"]},"message":"Change timezone change provider\n\nchange to actions/set-timezone-action","epoch":1616726943,"epoch_utc":null},{"commit":"794fc4ed44d1565514303090403d68ba5d639cb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:43:16 2021 -0700","stats":{"files_changed":2,"insertions":36,"deletions":8,"files":["jc/utils.py","tests/test_utils.py"]},"message":"add parse_datetime_to_timestamp() tests","epoch":1616726596,"epoch_utc":null},{"commit":"72f735bf9211d7beddcf58819fe465722f5d7c5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:42:02 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":[".github/workflows/pythonapp.yml"]},"message":"Set Timezone to America/Los_Angeles\n\nUsing zcong1993/setup-timezone","epoch":1616726522,"epoch_utc":null},{"commit":"912877f25ad562ed4cafe7b2d7446bd48b477ea2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 15:34:54 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"additional timezone info","epoch":1616711694,"epoch_utc":null},{"commit":"2772c5ae436ea437d833003372d53a3d3f955ea0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 15:10:07 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1616710207,"epoch_utc":null},{"commit":"a7ad24d2cb61d84cf2846f8fa43af31f0597043e","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","date":"Thu Mar 25 16:45:30 2021 -0400","stats":{"files_changed":13,"insertions":772,"deletions":0,"files":["docgen.sh","docs/parsers/dir.md","jc/cli.py","jc/parsers/dir.py","tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-C.out","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-ODTC.out","tests/fixtures/windows-10/dir-Q.json","tests/fixtures/windows-10/dir-Q.out","tests/fixtures/windows-10/dir.json","tests/fixtures/windows-10/dir.out","tests/test_dir.py"]},"message":"Add dir parser\n\nAdd usage commands\n\nFix example options\n\nupdate dir.md","epoch":1616715930,"epoch_utc":null},{"commit":"a364a6a9faeb6aa290b790f3dec74e92b8670534","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 15:08:23 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"]},"message":"add note regarding calculated timestamps","epoch":1616710103,"epoch_utc":null},{"commit":"7b2dc86a8d974e7984fe2540f56a66c2b9386acd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 12:07:36 2021 -0700","stats":{"files_changed":1,"insertions":23,"deletions":19,"files":["EXAMPLES.md"]},"message":"update last example with new timestamp fields","epoch":1616699256,"epoch_utc":null},{"commit":"ad645636d07d0423253f19068a22b2a28251b05f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 11:43:30 2021 -0700","stats":{"files_changed":5,"insertions":86,"deletions":50,"files":["CHANGELOG","EXAMPLES.md","README.md","docs/parsers/uptime.md","jc/parsers/uptime.py"]},"message":"update uptime docs","epoch":1616697810,"epoch_utc":null},{"commit":"2f2f297b29fbe3172647a81db084b3564a441d40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 11:35:21 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["tests/fixtures/centos-7.7/uptime.json","tests/fixtures/osx-10.11.6/uptime.json","tests/fixtures/osx-10.14.6/uptime.json","tests/fixtures/ubuntu-18.04/uptime.json"]},"message":"update uptime fixtures with new fields","epoch":1616697321,"epoch_utc":null},{"commit":"099ae3fde03f8157298f6b412bdddb8bd56da09a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 11:17:44 2021 -0700","stats":{"files_changed":1,"insertions":26,"deletions":22,"files":["jc/parsers/uptime.py"]},"message":"fix issue when there is no data","epoch":1616696264,"epoch_utc":null},{"commit":"e9febe98ac5ec0e03791c5b6794446a2c3312fb1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 11:17:01 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["runtests.sh"]},"message":"add localtest partition lines for readability","epoch":1616696221,"epoch_utc":null},{"commit":"5fbd07cccf9fb697b996dcc3949eef5b1c09e655","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 10:31:12 2021 -0700","stats":{"files_changed":1,"insertions":59,"deletions":26,"files":["jc/parsers/uptime.py"]},"message":"rewrite of uptime parser including new fields","epoch":1616693472,"epoch_utc":null},{"commit":"5fed4698c2c1f1b7e05c5b4c51639f818e049b53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:57:04 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":6,"files":["docs/parsers/last.md","jc/parsers/last.py"]},"message":"update docs and version number","epoch":1616648224,"epoch_utc":null},{"commit":"ed7eb0983a4dfcc1d66a2957be3e10b2203d909e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:51:43 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/last.py"]},"message":"use parse_datetime_to_timestamp function instead of custom format string","epoch":1616647903,"epoch_utc":null},{"commit":"90c7e18e5fc5ea9fcf6157cc2656f47193d78411","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:50:32 2021 -0700","stats":{"files_changed":1,"insertions":16,"deletions":11,"files":["EXAMPLES.md"]},"message":"update date example","epoch":1616647832,"epoch_utc":null},{"commit":"953ab5c3bd0c8b6eef29b717edaf1aa2380c2b93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:29:30 2021 -0700","stats":{"files_changed":2,"insertions":1,"deletions":0,"files":["runtests.sh","tests/{test_upower.py => localtest_upower.py}"]},"message":"make upower tests local only","epoch":1616646570,"epoch_utc":null},{"commit":"699c97d8a07f7575454746159ac4d19981cd1a5c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:24:47 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add last parser info","epoch":1616646287,"epoch_utc":null},{"commit":"e4ca0de92a689ce93b91d86106a5da590226855a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:24:25 2021 -0700","stats":{"files_changed":8,"insertions":100,"deletions":0,"files":["tests/fixtures/generic/upower-i-c-locale.json","tests/fixtures/generic/upower-i-non-utc.json","tests/fixtures/generic/upower-i-utc.json",".../{upower-i-utc.out2 => upower-i-utc.out}","tests/fixtures/ubuntu-18.04/upower-d-clocale.json","tests/fixtures/ubuntu-18.04/upower-d.json","tests/fixtures/ubuntu-18.04/upower-i.json","tests/test_upower.py"]},"message":"add upower tests","epoch":1616646265,"epoch_utc":null},{"commit":"04745a36b84cc79e56bde2a0e92a4ee9ab4a1538","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 20:21:06 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":5,"files":["CHANGELOG","jc/utils.py"]},"message":"doc update","epoch":1616642466,"epoch_utc":null},{"commit":"5936940532b8b753e67c9f5cd9287f34cc84ae9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 20:20:53 2021 -0700","stats":{"files_changed":7,"insertions":136,"deletions":186,"files":["docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date-after-midnight.json","tests/fixtures/generic/date-before-midnight.json","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/fixtures/ubuntu-20.04/date2.json"]},"message":"rewrite of date parser using datetime library","epoch":1616642453,"epoch_utc":null},{"commit":"b3eb064b6753d6e894884e1c16054630c2396fe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 17:13:01 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"]},"message":"clarify format definition comments","epoch":1616631181,"epoch_utc":null},{"commit":"e4b41057e302074ac2a81ad8c36b6f95cd6b7db2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 17:02:17 2021 -0700","stats":{"files_changed":3,"insertions":24,"deletions":0,"files":[".../{upower-i.out => upower-i-c-locale.out}","tests/fixtures/generic/upower-i-non-utc.out",".../generic/{upower-i2.out => upower-i-utc.out2}"]},"message":"update upower fixture names","epoch":1616630537,"epoch_utc":null},{"commit":"1d41c46cc762ab0c78b819e56db7df39f1111d5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 17:01:56 2021 -0700","stats":{"files_changed":1,"insertions":34,"deletions":5,"files":["jc/utils.py"]},"message":"normalize datetime string to remove all timezones except UTC","epoch":1616630516,"epoch_utc":null},{"commit":"a5c444587b3f0874fcc2833dc4e759c2dc1c7834","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 15:13:10 2021 -0700","stats":{"files_changed":5,"insertions":28,"deletions":0,"files":["tests/fixtures/generic/date-after-midnight.json","tests/fixtures/generic/date-after-midnight.out","tests/fixtures/generic/date-before-midnight.json","tests/fixtures/generic/date-before-midnight.out","tests/localtest_date.py"]},"message":"add before and after midnight date tests","epoch":1616623990,"epoch_utc":null},{"commit":"a56f471be980be16e73d3a91e2b12aad26c6d38c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 15:05:22 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/fixtures/generic/upower-i2.out"]},"message":"update fixture to use UTC for better testing","epoch":1616623522,"epoch_utc":null},{"commit":"6a6b26ed8d97014c2a5c7d91a4cd9b23f49530fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 15:04:39 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/date.py"]},"message":"fix 12 to 24 hour conversion for midnight cases","epoch":1616623479,"epoch_utc":null},{"commit":"f62446c152d89f2d37b22ffe9d9de5b5c9fa7049","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 15:04:09 2021 -0700","stats":{"files_changed":1,"insertions":11,"deletions":10,"files":["jc/utils.py"]},"message":"rename variables. add another european time format","epoch":1616623449,"epoch_utc":null},{"commit":"56011f1f172344cab2a8e869e7a6df6e45c45874","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 14:14:22 2021 -0700","stats":{"files_changed":3,"insertions":73,"deletions":6,"files":["EXAMPLES.md","docs/parsers/upower.md","jc/parsers/upower.py"]},"message":"updated upower examples","epoch":1616620462,"epoch_utc":null},{"commit":"6d44091c80318fde6c09cd850e6dc5afde7fe799","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 14:01:06 2021 -0700","stats":{"files_changed":1,"insertions":13,"deletions":53,"files":["jc/utils.py"]},"message":"refactor parse_datetime_to_timestamp()","epoch":1616619666,"epoch_utc":null},{"commit":"440c458eb42925dffe2d7b026279468fa2fa1bb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 12:57:19 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"no need for ternary clause","epoch":1616615839,"epoch_utc":null},{"commit":"798250af6116441385339806c8f26bc9720ad302","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 12:49:53 2021 -0700","stats":{"files_changed":2,"insertions":18,"deletions":24,"files":["docs/parsers/upower.md","jc/parsers/upower.py"]},"message":"use jc.utils.parse_datetime_to_timestamp() function for timestamp creation","epoch":1616615393,"epoch_utc":null},{"commit":"c762de29c6491790908451aa20f6aa12fdfa9722","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 12:47:57 2021 -0700","stats":{"files_changed":2,"insertions":32,"deletions":2,"files":["docs/utils.md","jc/utils.py"]},"message":"doc updates","epoch":1616615277,"epoch_utc":null},{"commit":"0701e65e97165efd40ab2ae5087897de3588ea32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 12:36:54 2021 -0700","stats":{"files_changed":1,"insertions":106,"deletions":0,"files":["jc/utils.py"]},"message":"add parse_datetime_to_timestamp() function","epoch":1616614614,"epoch_utc":null},{"commit":"209d54e8b5be6476d896cee1a5274bd2b46219e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 07:39:11 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/parsers/date.md","jc/parsers/date.py"]},"message":"add hour_24 to schema docs","epoch":1616596751,"epoch_utc":null},{"commit":"2b38462de7d2fa61dd5d2a184e853279f1a9c84b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 23 14:59:03 2021 -0700","stats":{"files_changed":3,"insertions":33,"deletions":27,"files":["EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py"]},"message":"update examples","epoch":1616536743,"epoch_utc":null},{"commit":"1e8e5533162cb01053ee25e9dbc709a429e58070","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 23 14:47:44 2021 -0700","stats":{"files_changed":6,"insertions":31,"deletions":14,"files":["CHANGELOG","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/fixtures/ubuntu-20.04/date2.json","tests/localtest_date.py"]},"message":"add hour_24 field","epoch":1616536064,"epoch_utc":null},{"commit":"ab42e6bb15026d6c46e15197c62bc3e8ef95c80d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 23 14:10:42 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/date.md","jc/parsers/date.py"]},"message":"formatting","epoch":1616533842,"epoch_utc":null},{"commit":"680288454090f3c48c7f0580cdcb919c0b5a883e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 23 14:04:36 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["docs/parsers/date.md","jc/parsers/date.py"]},"message":"ensure period is always uppercase in dict value. update period documentation","epoch":1616533476,"epoch_utc":null},{"commit":"7cb8577b9655f258f2910e7e7bcf3266d4cbece0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 23 13:55:23 2021 -0700","stats":{"files_changed":3,"insertions":70,"deletions":48,"files":["docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/ubuntu-20.04/date2.out"]},"message":"correct epoch_utc calculation. Fix for 12 hour vs. 24 hour representation","epoch":1616532923,"epoch_utc":null},{"commit":"55810ccd1f17ef6a4b1cb72fc21f6cf990ef8bb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 22:10:35 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/upower.py"]},"message":"set epoch_dt conversion again if not C locale","epoch":1616476235,"epoch_utc":null},{"commit":"f9921720cd0b9b0d76d66e6eb5bfe43481f5f52b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 22:01:07 2021 -0700","stats":{"files_changed":3,"insertions":4,"deletions":94,"files":["runtests.sh","tests/test_date.py","tests/test_last2.py"]},"message":"revert to local testing for naive datetime objects","epoch":1616475667,"epoch_utc":null},{"commit":"cda1ebd271aa8fd1b716054a2149f876d8087230","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 21:53:50 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["tests/test_date.py","tests/test_last2.py"]},"message":"try tzset()","epoch":1616475230,"epoch_utc":null},{"commit":"6901e4a23aad0b58cbbfac86c61917115d115dfe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 21:49:26 2021 -0700","stats":{"files_changed":3,"insertions":89,"deletions":3,"files":["runtests.sh","tests/test_date.py","tests/test_last2.py"]},"message":"try setting timezone env variable before tests to ensure it is the same on all test systems","epoch":1616474966,"epoch_utc":null},{"commit":"6bc21d3c735edc7897e49afd2a5ea9e3aa56d7fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 21:05:39 2021 -0700","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["runtests.sh","tests/{test_date.py => localtest_date.py}","tests/localtest_last.py"]},"message":"fix date parser tests - local tests only since timezones may not match on github actions VMs","epoch":1616472339,"epoch_utc":null},{"commit":"1ef231e26a2898d2a01f341fb92014df92703f72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:57:36 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"add date parser updates","epoch":1616471856,"epoch_utc":null},{"commit":"3cd43f0f985a3b8a4e74bf5632bd8dac92d751c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:57:16 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/upower.md","jc/parsers/upower.py"]},"message":"formatting","epoch":1616471836,"epoch_utc":null},{"commit":"156501996688e62dd61a8456206218582a6cbe1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:56:57 2021 -0700","stats":{"files_changed":5,"insertions":85,"deletions":63,"files":["EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json"]},"message":"fix weekday numbering to be ISO 8601 compliant. Add naive calculated epoch timestamp field","epoch":1616471817,"epoch_utc":null},{"commit":"0a4de2d3a1c235d1ac2d6e59346e77761fe51885","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:22:35 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":2,"files":["docs/parsers/last.md","docs/parsers/upower.md"]},"message":"add naive datetime calculation info to docs","epoch":1616469755,"epoch_utc":null},{"commit":"a058f6c174e31f5e6040883bb544b83abd88c749","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:21:46 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/last.py"]},"message":"added naive epoch calculation info to docs","epoch":1616469706,"epoch_utc":null},{"commit":"d8e5d03b01a87704424f5259cf6bd977274fd6ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:21:12 2021 -0700","stats":{"files_changed":1,"insertions":20,"deletions":33,"files":["jc/parsers/upower.py"]},"message":"naive updated_epoch timestamp calculation added","epoch":1616469672,"epoch_utc":null},{"commit":"9dc62eff2eaaafec89c5b8797d8ca8e4c77a07d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 21 15:43:37 2021 -0700","stats":{"files_changed":1,"insertions":34,"deletions":21,"files":["jc/parsers/upower.py"]},"message":"remove epoch conversions","epoch":1616366617,"epoch_utc":null},{"commit":"d4fea17c57a97d6914624b06208b9439bf2eb05f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 21 14:03:36 2021 -0700","stats":{"files_changed":3,"insertions":13,"deletions":6,"files":["docgen.sh","docs/parsers/upower.md","jc/parsers/upower.py"]},"message":"use UTC when calculating epoch timestamp. reset time locale to default after changing","epoch":1616360616,"epoch_utc":null},{"commit":"3dd7a5b77ea708047bc12be9f2caddd9078723f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 19 11:00:50 2021 -0700","stats":{"files_changed":2,"insertions":230,"deletions":0,"files":["docgen.sh","docs/parsers/upower.md"]},"message":"add upower docs","epoch":1616176850,"epoch_utc":null},{"commit":"d77c90a3ba2036b216f4a612876ace988eafd217","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 19 10:43:20 2021 -0700","stats":{"files_changed":1,"insertions":114,"deletions":6,"files":["jc/parsers/upower.py"]},"message":"fix quoted values in detail level. Add examples","epoch":1616175800,"epoch_utc":null},{"commit":"01f0c20df09fd4aa12bd108928b97376b51ef31a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 18 16:59:46 2021 -0700","stats":{"files_changed":1,"insertions":27,"deletions":0,"files":["tests/fixtures/ubuntu-18.04/upower-d-clocale.out"]},"message":"add sample using C locale timestamp","epoch":1616111986,"epoch_utc":null},{"commit":"aafbe576b3b754de91591d9ec2dae9e9f827dee4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 18 16:59:19 2021 -0700","stats":{"files_changed":1,"insertions":137,"deletions":36,"files":["jc/parsers/upower.py"]},"message":"working parser and processor","epoch":1616111959,"epoch_utc":null},{"commit":"bd68ad40345fb1f69be0e0f87dc67134f826cd06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 14:31:51 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/upower.py"]},"message":"don't modify detail_type value since it is no longer a key","epoch":1616016711,"epoch_utc":null},{"commit":"bfee017c138bb30ec6af836685013b7124028974","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 14:21:19 2021 -0700","stats":{"files_changed":1,"insertions":61,"deletions":20,"files":["jc/parsers/upower.py"]},"message":"made the schema more explicit by hardcoding more items. still working on the schema","epoch":1616016079,"epoch_utc":null},{"commit":"61f532cfd0b7fbf14a58a0fd638bcbfb03fbde72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 13:30:47 2021 -0700","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["jc/parsers/upower.py"]},"message":"working history list","epoch":1616013047,"epoch_utc":null},{"commit":"58dbbb75b607d0b29be185c3b8c3f0d8af21ecad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 13:10:52 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":21,"files":["jc/parsers/upower.py"]},"message":"simplified logic","epoch":1616011852,"epoch_utc":null},{"commit":"8d88b91fcf5060d7d54f687efec3e3a606bab767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 12:49:48 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/upower.py"]},"message":"move if statements and generalize the history detail detection","epoch":1616010588,"epoch_utc":null},{"commit":"ad39fc60299089f56f37baac71820e50cbe87ed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 11:26:06 2021 -0700","stats":{"files_changed":6,"insertions":268,"deletions":0,"files":["jc/cli.py","jc/parsers/upower.py","tests/fixtures/generic/upower-i.out","tests/fixtures/generic/upower-i2.out","tests/fixtures/ubuntu-18.04/upower-d.out","tests/fixtures/ubuntu-18.04/upower-i.out"]},"message":"working upower parser. history lines are ignored","epoch":1616005566,"epoch_utc":null},{"commit":"89f1fd96e6b7aa0acf6272e4f3469005d4f7c6bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 16 12:12:01 2021 -0700","stats":{"files_changed":6,"insertions":87,"deletions":0,"files":["tests/fixtures/generic/acpi-V.json","tests/fixtures/generic/acpi-V2.json","tests/fixtures/generic/acpi-V3.json","tests/fixtures/generic/acpi-V4.json","tests/fixtures/ubuntu-18.04/acpi-V.json","tests/test_acpi.py"]},"message":"add acpi tests","epoch":1615921921,"epoch_utc":null},{"commit":"bd425f2493b68949c1fa02cd1d3289ec882d9b0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 16 11:45:56 2021 -0700","stats":{"files_changed":6,"insertions":321,"deletions":2,"files":["CHANGELOG","EXAMPLES.md","docgen.sh","docs/parsers/acpi.md","jc/cli.py","setup.py"]},"message":"version bump to v1.15.0. Add acpi docs","epoch":1615920356,"epoch_utc":null},{"commit":"46962ff02a0630766a927babc92e11ec91b1f789","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 12 16:45:15 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":11,"files":["jc/parsers/acpi.py"]},"message":"remove redundant lines","epoch":1615596315,"epoch_utc":null},{"commit":"e4cb88b05166815e8ad03b646bd3f2b1da7f0d4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 12 12:47:59 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/acpi.py"]},"message":"remove unneeded line-state assignment","epoch":1615582079,"epoch_utc":null},{"commit":"32840703dc1d88412712b08db1c9bdaebbc34450","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 12 08:55:04 2021 -0800","stats":{"files_changed":1,"insertions":8,"deletions":39,"files":["jc/parsers/acpi.py"]},"message":"remove redundant code","epoch":1615568104,"epoch_utc":null},{"commit":"1f7aafd0415a79e0547cc6f1c008c1918f8fb460","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 12 08:45:32 2021 -0800","stats":{"files_changed":3,"insertions":19,"deletions":9,"files":["jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out","tests/fixtures/generic/acpi-V4.out"]},"message":"fix for full charge batter case. Clean up battery object logic","epoch":1615567532,"epoch_utc":null},{"commit":"7378d5dce43f75440cb57903e8ae0c1c615b0782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 11 21:06:24 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/acpi.py"]},"message":"remove comment","epoch":1615525584,"epoch_utc":null},{"commit":"84f76866cdf76f67b34de999fd987de8a02f0306","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 11 21:05:29 2021 -0800","stats":{"files_changed":1,"insertions":197,"deletions":3,"files":["jc/parsers/acpi.py"]},"message":"working process function","epoch":1615525529,"epoch_utc":null},{"commit":"322da9ea6a1ceea1152d720797adb8f3a7dc1199","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 11 20:43:31 2021 -0800","stats":{"files_changed":2,"insertions":59,"deletions":12,"files":["jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out"]},"message":"working parser","epoch":1615524211,"epoch_utc":null},{"commit":"58645301ec111bfeb2a618f5f169cc734042dc5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 11 19:55:47 2021 -0800","stats":{"files_changed":6,"insertions":236,"deletions":1,"files":["jc/cli.py","jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out","tests/fixtures/generic/acpi-V2.out","tests/fixtures/generic/acpi-V3.out","tests/fixtures/ubuntu-18.04/acpi-V.out"]},"message":"add acpi command parser","epoch":1615521347,"epoch_utc":null},{"commit":"1e18dd30a824b0463f0cad86e0da7094c47d34f9","merge":"20f9b7f cc6a19a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 5 11:50:37 2021 -0800","message":"Merge pull request #102 from kellyjonbrazil/dev\n\nDev v1.14.4","epoch":1614973837,"epoch_utc":null},{"commit":"cc6a19adccea3e10243a166b87d852b6f95414b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 5 09:41:17 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/yaml.py"]},"message":"fix typo in comments","epoch":1614966077,"epoch_utc":null},{"commit":"2a5588b177a24d5b78a4b5a515aba515804b7baa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 5 09:38:22 2021 -0800","stats":{"files_changed":4,"insertions":13,"deletions":3,"files":["CHANGELOG","jc/cli.py","jc/parsers/yaml.py","setup.py"]},"message":"packaging fix for yaml parser and pyoxidizer","epoch":1614965902,"epoch_utc":null},{"commit":"20f9b7f88b97ed68aba46e102b8c7b72443b9c85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 25 11:09:56 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"fix typo","epoch":1614280196,"epoch_utc":null},{"commit":"d7e32313cd9776b4a6af38cc2819d6e4ef8c0d55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 25 11:09:14 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"fix typo","epoch":1614280154,"epoch_utc":null},{"commit":"fb5654d3c4549e84940e2518f2d214debdd42d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 11 11:27:54 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1613071674,"epoch_utc":null},{"commit":"258f1433b36a7ee117ac43953edb4fe964603e7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 11 11:27:01 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]},"message":"add locale info to readme","epoch":1613071621,"epoch_utc":null},{"commit":"fb723ae8bd7bb51f9a4bab380ec1bc54cda0445b","merge":"87b506d 283b89e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 10 11:01:57 2021 -0800","message":"Merge pull request #101 from kellyjonbrazil/dev\n\nDev v1.14.3","epoch":1612983717,"epoch_utc":null},{"commit":"283b89e37c38a3082203e43e38569c8b0bb11e12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 10 10:55:53 2021 -0800","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["CHANGELOG","jc/parsers/dig.py"]},"message":"simplify answer data logic","epoch":1612983353,"epoch_utc":null},{"commit":"f450f9eb8b7d382af316e88301e72af01a018be9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 10 10:47:56 2021 -0800","stats":{"files_changed":5,"insertions":74,"deletions":0,"files":["tests/fixtures/centos-7.7/hciconfig-a.json","tests/fixtures/centos-7.7/hciconfig.json","tests/fixtures/ubuntu-20.04/hciconfig-a.json","tests/fixtures/ubuntu-20.04/hciconfig.json","tests/test_hciconfig.py"]},"message":"add hciconfig tests","epoch":1612982876,"epoch_utc":null},{"commit":"b3f8cf99a4874335c6b43e105e0c1562c08256dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 10 08:03:36 2021 -0800","stats":{"files_changed":1,"insertions":15,"deletions":15,"files":["jc/parsers/hciconfig.py"]},"message":"work for both tabs and spaces","epoch":1612973016,"epoch_utc":null},{"commit":"4301ea8caea7c14f59bcddf09668d0198e1115a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 9 16:12:36 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/hciconfig.py"]},"message":"remove debug line","epoch":1612915956,"epoch_utc":null},{"commit":"c672d1c174a42ce44544dfaec0ebcf3c30fd7acf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 9 16:03:00 2021 -0800","stats":{"files_changed":7,"insertions":903,"deletions":22,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","docs/parsers/hciconfig.md","jc/parsers/hciconfig.py","man/jc.1"]},"message":"initial working hciconfig parser","epoch":1612915380,"epoch_utc":null},{"commit":"229e953a38471cdd41af0810577d324329840a4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 9 13:26:24 2021 -0800","stats":{"files_changed":7,"insertions":205,"deletions":2,"files":["jc/cli.py","jc/parsers/hciconfig.py","setup.py","tests/fixtures/centos-7.7/hciconfig-a.out","tests/fixtures/centos-7.7/hciconfig.out","tests/fixtures/ubuntu-20.04/hciconfig-a.out","tests/fixtures/ubuntu-20.04/hciconfig.out"]},"message":"initial add of hciconfig parser","epoch":1612905984,"epoch_utc":null},{"commit":"87b506dc9b4831d11b4fd04fd6849532db074f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 5 06:55:06 2021 -0800","stats":{"files_changed":7,"insertions":47,"deletions":4,"files":["CHANGELOG","jc/cli.py","jc/parsers/dig.py","setup.py","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/generic/dig-answer-spaces.out","tests/test_dig.py"]},"message":"fix for spaces in dig answer data","epoch":1612536906,"epoch_utc":null},{"commit":"15c9002d9eff0f52d873fb3ab35dfafd03a8e919","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 8 11:56:56 2021 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"simplify logic by taking out 'not' in JC_COLORS parsing","epoch":1610135816,"epoch_utc":null},{"commit":"042aaa61b96fc8472a8a460c49bde4cbbc359094","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 8 08:23:29 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"minor updates","epoch":1610123009,"epoch_utc":null},{"commit":"ef856c6ba5774cd8ec23acd71496846e794e3872","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 7 12:09:41 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"clarify -q option","epoch":1610050181,"epoch_utc":null},{"commit":"9cf5be73e3f975132d1ffbef412638b941a5664f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 16:19:47 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]},"message":"typo fix","epoch":1609978787,"epoch_utc":null},{"commit":"63fc149e2a097cbde60c2ce1aeb102d9becabd9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 16:17:25 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]},"message":"typo fix","epoch":1609978645,"epoch_utc":null},{"commit":"3c25839350800c7e7d2c48fc032bb21efa0ac213","merge":"03c0295 58246e3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 14:37:24 2021 -0800","message":"Merge pull request #98 from kellyjonbrazil/dev\n\nDev v1.14.1","epoch":1609972644,"epoch_utc":null},{"commit":"58246e33b71bae0ca4a42ad5bdf31134948b1014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 14:33:38 2021 -0800","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","README.md"]},"message":"update compatibility info and changelog date","epoch":1609972418,"epoch_utc":null},{"commit":"8b1407c7068e2105a83992bbb026138ea67bc07c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 14:22:26 2021 -0800","stats":{"files_changed":3,"insertions":59,"deletions":10,"files":["runtests.sh","tests/localtest_last.py","tests/test_last.py"]},"message":"pull env-specific tests from CI/CD and run locally only","epoch":1609971746,"epoch_utc":null},{"commit":"2fde4a4e2299b98a9958e3a55849c6791e4b17dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 12:07:58 2021 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["EXAMPLES.md","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]},"message":"doc updates","epoch":1609963678,"epoch_utc":null},{"commit":"60b9e9798286121399d0f8b75d63ab0f3312c9bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 12:02:47 2021 -0800","stats":{"files_changed":12,"insertions":80,"deletions":38,"files":["docs/parsers/last.md","jc/parsers/last.py","tests/fixtures/centos-7.7/last-crash.json","tests/fixtures/centos-7.7/last-w.json","tests/fixtures/centos-7.7/last-wF.json","tests/fixtures/centos-7.7/last-wF.out","tests/fixtures/centos-7.7/last.json","tests/fixtures/fedora32/last.json","tests/fixtures/osx-10.14.6/last.json","tests/fixtures/ubuntu-18.04/last-w.json","tests/fixtures/ubuntu-18.04/last.json","tests/fixtures/ubuntu-20.04/last-F.json"]},"message":"last parser enhancements: augment hostname with CONSOLE for GUI login, add convenience fields when -F is used: login_epoch, logout_epoch, duration_seconds, calculate duration to hours:minutes","epoch":1609963367,"epoch_utc":null},{"commit":"0adac79c0f2a22b31dfef1432a029af06132467b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 11:09:59 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"Add last parser enhancements","epoch":1609960199,"epoch_utc":null},{"commit":"9f485b5981a2ce49ac699b9dad39993c5605ae18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 11:09:37 2021 -0800","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["jc/parsers/iw_scan.py","tests/fixtures/centos-7.7/iw-scan0.json","tests/fixtures/centos-7.7/iw-scan1.json"]},"message":"change mac_address fieldname to bssid. Add credit to Phillip","epoch":1609960177,"epoch_utc":null},{"commit":"db17d21b8f9b2f899760e648f1483d33d0bcf47a","merge":"5885b96 996d394","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 10:42:30 2021 -0800","message":"Merge pull request #97 from pschmitt/iw_scan_fix_space_detection\n\niw_scan: Improve detection of lines starting with spaces","epoch":1609958550,"epoch_utc":null},{"commit":"996d394e89c732f327323ca340fce405bd5fb2e4","author":"Philipp Schmitt","author_email":"philipp@schmitt.co","date":"Wed Jan 6 10:32:17 2021 +0100","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/iw_scan.py"]},"message":"iw_scan: Improve detection of lines starting with spaces","epoch":1609957937,"epoch_utc":null},{"commit":"5885b960f9b33a95ecec9f4a33233c2f8682fbc4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 22:12:13 2021 -0800","stats":{"files_changed":3,"insertions":7,"deletions":2,"files":["CHANGELOG","README.md","man/jc.1"]},"message":"doc updates","epoch":1609913533,"epoch_utc":null},{"commit":"79987b35f332e287567e103f25cf91cb50e040c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 22:07:22 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"]},"message":"formatting","epoch":1609913242,"epoch_utc":null},{"commit":"661b3ef311ad26678030c70c11f2f955667311a4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 22:04:44 2021 -0800","stats":{"files_changed":4,"insertions":94,"deletions":2,"files":["EXAMPLES.md","README.md","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]},"message":"doc updates","epoch":1609913084,"epoch_utc":null},{"commit":"fb422726a8366c7133f0712d3b05a26620eea785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 21:55:06 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["tests/fixtures/ubuntu-20.04/last-F.json","tests/fixtures/ubuntu-20.04/last-F.out"]},"message":"update test to add 'down' condition","epoch":1609912506,"epoch_utc":null},{"commit":"4fb6f3ea59c52515926a51a006e65a1c18e57720","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 21:51:30 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/last.py"]},"message":"add support for down in addition to crash","epoch":1609912290,"epoch_utc":null},{"commit":"f78fe771e1c2fb4691858fa7f27b1febe5f8c6c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 21:38:51 2021 -0800","stats":{"files_changed":3,"insertions":48,"deletions":0,"files":["tests/fixtures/centos-7.7/iw-scan0.json","tests/fixtures/centos-7.7/iw-scan1.json","tests/test_iw_scan.py"]},"message":"add iw-scan tests","epoch":1609911531,"epoch_utc":null},{"commit":"567b8872538ac9f6b384b98741acd9794229d513","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 21:26:43 2021 -0800","stats":{"files_changed":3,"insertions":252,"deletions":12,"files":["docgen.sh","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]},"message":"doc updates","epoch":1609910803,"epoch_utc":null},{"commit":"e516e6b9466b29d40ec10070dd61551180eeef90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 21:17:40 2021 -0800","stats":{"files_changed":1,"insertions":29,"deletions":1,"files":["jc/parsers/iw_scan.py"]},"message":"fix country/environment fields and process int/float conversions","epoch":1609910260,"epoch_utc":null},{"commit":"62748676aae3d5955191ed267215df33a5bd3a4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 20:44:22 2021 -0800","stats":{"files_changed":2,"insertions":225,"deletions":0,"files":["jc/cli.py","jc/parsers/iw_scan.py"]},"message":"initial iw-scan parser","epoch":1609908262,"epoch_utc":null},{"commit":"7351c72e45242b9eb08c51dea7b6fccf12366dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 15:16:40 2021 -0800","stats":{"files_changed":6,"insertions":402,"deletions":1,"files":["jc/parsers/last.py","tests/fixtures/centos-7.7/last-crash.json","tests/fixtures/centos-7.7/last-crash.out","tests/fixtures/centos-7.7/last-wF.json","tests/fixtures/centos-7.7/last-wF.out","tests/test_last.py"]},"message":"add fixes and tests for entries that contain 'crash'","epoch":1609888600,"epoch_utc":null},{"commit":"2b7405c5e21db2488fc48b58f6c65cff947ca95d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 13:58:38 2021 -0800","stats":{"files_changed":5,"insertions":23,"deletions":16,"files":["CHANGELOG","README.md","docs/parsers/last.md","jc/parsers/last.py","man/jc.1"]},"message":"doc updates","epoch":1609883918,"epoch_utc":null},{"commit":"e2c77cb935a5bd95dbe930d424e5a02e88e1fa76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 13:00:38 2021 -0800","stats":{"files_changed":3,"insertions":15,"deletions":1,"files":["jc/parsers/last.py","tests/fixtures/ubuntu-20.04/last-F.json","tests/test_last.py"]},"message":"add test for last -F output","epoch":1609880438,"epoch_utc":null},{"commit":"7ac621e4c916373a03f379425033cb2d81a03578","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 12:29:29 2021 -0800","stats":{"files_changed":3,"insertions":36,"deletions":6,"files":["docs/parsers/last.md","jc/parsers/last.py","tests/fixtures/ubuntu-20.04/last-F.out"]},"message":"add -F support","epoch":1609878569,"epoch_utc":null},{"commit":"d8b5d6c66ced19dc16f2b4975d2293a903732ffe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 09:45:37 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/cli.py","setup.py"]},"message":"version bump to 1.14.1","epoch":1609868737,"epoch_utc":null},{"commit":"22b461eb4b1ca86ea9e8c1fde8a2c312d1526b5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 09:42:05 2021 -0800","stats":{"files_changed":7,"insertions":47,"deletions":12,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/test_date.py"]},"message":"Add period field for en_US.UTF-8 locale","epoch":1609868525,"epoch_utc":null},{"commit":"b37ee8555a2a108625a834a7990bc3320e79b08d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 4 18:02:07 2021 -0800","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update","epoch":1609812127,"epoch_utc":null},{"commit":"1d0ad2f045733c5c690738d49951fdb9bcd3d66d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 4 18:01:16 2021 -0800","stats":{"files_changed":123,"insertions":312,"deletions":312,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat_freebsd_osx.py","jc/parsers/netstat_linux.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"doc fixes","epoch":1609812076,"epoch_utc":null},{"commit":"ceccfb2c815f57f1b6fd81f891d8b495de23f9f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 4 17:05:26 2021 -0800","stats":{"files_changed":3,"insertions":2036,"deletions":0,"files":["tests/fixtures/centos-7.7/iw-scan0.out","tests/fixtures/centos-7.7/iw-scan1.out","tests/fixtures/ubuntu-20.04/date.out"]},"message":"add test output for iw-scan and date on ubuntu 20.04","epoch":1609808726,"epoch_utc":null},{"commit":"03c02953cd7e3327b391f799c37a2990eb2cb24c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 1 12:01:56 2021 -0800","stats":{"files_changed":2,"insertions":96,"deletions":0,"files":["docgen.sh","docs/parsers/wc.md"]},"message":"add wc doc","epoch":1609531316,"epoch_utc":null},{"commit":"f254a0eaa16fcda316f7a75424ee359058204b03","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 16:45:10 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump","epoch":1609461910,"epoch_utc":null},{"commit":"9e3b88727cd439e15f235dddb9dd5796e010797a","merge":"439871e b122174","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 16:40:36 2020 -0800","message":"Merge pull request #91 from kellyjonbrazil/dev\n\nDev v1.14.0","epoch":1609461636,"epoch_utc":null},{"commit":"b12217466e906829d19be4cfd80dfe7cf4008e57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 16:37:47 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"spelling","epoch":1609461467,"epoch_utc":null},{"commit":"8b9c932f9b05295e63b3e7d0073f243458fd4dd9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 16:37:14 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"update date","epoch":1609461434,"epoch_utc":null},{"commit":"5986ce03db6fcd1aa0f7b064eaa96c2120c06d2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 16:36:27 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add printenv info","epoch":1609461387,"epoch_utc":null},{"commit":"a7b0e936e400d2f9e55629e2d722cc002e035e9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 14:21:24 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"add vdir and printenv info","epoch":1609453284,"epoch_utc":null},{"commit":"cb0221142455a6bcb904fbe9ade657be45815b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 14:19:45 2020 -0800","stats":{"files_changed":4,"insertions":61,"deletions":2,"files":["jc/parsers/wc.py","tests/fixtures/osx-10.14.6/wc-stdin.json","tests/fixtures/osx-10.14.6/wc-stdin.out","tests/test_wc.py"]},"message":"add wc tests","epoch":1609453185,"epoch_utc":null},{"commit":"bd443bf39227515ae5f8df65d07b30268dcc90a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 14:11:25 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/env.py"]},"message":"add printenv to env docs","epoch":1609452685,"epoch_utc":null},{"commit":"1f547edd361e66b19ccbcb59f6ba0ae78f6080ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 14:10:56 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/env.md"]},"message":"add printenv to env docs","epoch":1609452656,"epoch_utc":null},{"commit":"e4bac3a493705b09e301ddc90dd1b0cee7467c3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 14:10:37 2020 -0800","stats":{"files_changed":9,"insertions":378,"deletions":0,"files":["CHANGELOG","EXAMPLES.md","README.md","jc/cli.py","jc/parsers/wc.py","tests/fixtures/centos-7.7/wc.json","tests/fixtures/centos-7.7/wc.out","tests/fixtures/osx-10.14.6/wc.json","tests/fixtures/osx-10.14.6/wc.out"]},"message":"add wc parser","epoch":1609452637,"epoch_utc":null},{"commit":"5e6bfa681aff03fbd683f81a9f4daa56b49d1344","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 13:18:53 2020 -0800","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["README.md","docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"add vdir info","epoch":1609449533,"epoch_utc":null},{"commit":"276160125e01553c75eaad68530177bcf4f9004d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 14:04:49 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"]},"message":"add new commands to README","epoch":1609365889,"epoch_utc":null},{"commit":"d4ae5543f2d5f28a0db5b8e2e19993c21c5d960c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 13:11:13 2020 -0800","stats":{"files_changed":3,"insertions":39,"deletions":0,"files":["tests/fixtures/centos-7.7/hash.json","tests/fixtures/centos-7.7/hash.out","tests/test_hash.py"]},"message":"add hash tests","epoch":1609362673,"epoch_utc":null},{"commit":"55f360e267fdfcfef0c124ed6b88535cc181a8b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 12:58:52 2020 -0800","stats":{"files_changed":6,"insertions":260,"deletions":0,"files":["CHANGELOG","EXAMPLES.md","docgen.sh","docs/parsers/hash.md","jc/cli.py","jc/parsers/hash.py"]},"message":"add hash command parser","epoch":1609361932,"epoch_utc":null},{"commit":"fdedab2a0cf5af15df5803d87302397dd6d71741","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 11:33:29 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/cksum.py","jc/parsers/hashsum.py"]},"message":"description updates","epoch":1609356809,"epoch_utc":null},{"commit":"a9be42e3031ab0d697cff67a9e384caa2265a3ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 11:28:42 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"specify parser warnings for quiet option","epoch":1609356522,"epoch_utc":null},{"commit":"6da9510e46e84ec1cb93384825184d2996cf0e08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 11:22:17 2020 -0800","stats":{"files_changed":9,"insertions":482,"deletions":0,"files":["tests/fixtures/centos-7.7/cksum.json","tests/fixtures/centos-7.7/cksum.out","tests/fixtures/centos-7.7/sum.json","tests/fixtures/centos-7.7/sum.out","tests/fixtures/osx-10.14.6/cksum.json","tests/fixtures/osx-10.14.6/cksum.out","tests/fixtures/osx-10.14.6/sum.json","tests/fixtures/osx-10.14.6/sum.out","tests/test_cksum.py"]},"message":"add cksum tests","epoch":1609356137,"epoch_utc":null},{"commit":"0431798178740b03cdefececc6df958e5adf62fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 11:02:02 2020 -0800","stats":{"files_changed":7,"insertions":229,"deletions":3,"files":["CHANGELOG","docgen.sh","docs/parsers/cksum.md","docs/parsers/hashsum.md","jc/cli.py","jc/parsers/cksum.py","jc/parsers/hashsum.py"]},"message":"add cksum parser","epoch":1609354922,"epoch_utc":null},{"commit":"62432f3c484e74acb2b2dfd15d448b3f1b5d53c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 09:59:54 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/hashsum.py"]},"message":"update hashsum description","epoch":1609351194,"epoch_utc":null},{"commit":"9fbbc30906b597e6afaf2030015a7a694d85f79e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 13:09:03 2020 -0800","stats":{"files_changed":2,"insertions":20,"deletions":0,"files":["docs/parsers/hashsum.md","jc/parsers/hashsum.py"]},"message":"add supported commands to docs","epoch":1609276143,"epoch_utc":null},{"commit":"d1567d1f622902053f3df58645b4e39532e0c30a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 13:05:04 2020 -0800","stats":{"files_changed":3,"insertions":104,"deletions":0,"files":["CHANGELOG","docgen.sh","docs/parsers/hashsum.md"]},"message":"add hashsum documentation","epoch":1609275904,"epoch_utc":null},{"commit":"6ca1f5970b3a518615a54ee7fcbc1bddab2db331","merge":"1c880b9 3b7d54c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 12:59:02 2020 -0800","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev","epoch":1609275542,"epoch_utc":null},{"commit":"1c880b9e24ca53cd592cec1dbc52301308290fb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 12:58:04 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_hashsum.py"]},"message":"force git tests","epoch":1609275484,"epoch_utc":null},{"commit":"3b7d54c720dfc93637328cf06eb10a85447c8793","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 12:55:30 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"add python 3.9","epoch":1609275330,"epoch_utc":null},{"commit":"44a740605705bd0ecfde2a6bcc7a826e1010dcf0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 12:51:43 2020 -0800","stats":{"files_changed":6,"insertions":87,"deletions":0,"files":["tests/fixtures/centos-7.7/md5sum.json","tests/fixtures/centos-7.7/sha256sum.json","tests/fixtures/centos-7.7/sha384sum.json","tests/fixtures/osx-10.14.6/md5.json","tests/fixtures/osx-10.14.6/shasum.json","tests/test_hashsum.py"]},"message":"add hashsum tests","epoch":1609275103,"epoch_utc":null},{"commit":"8157dcfdb1868548b7c8ca692e6be25f80bb2c2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 12:25:20 2020 -0800","stats":{"files_changed":1,"insertions":36,"deletions":11,"files":["jc/parsers/hashsum.py"]},"message":"fix for files with spaces in the name","epoch":1609273520,"epoch_utc":null},{"commit":"28762aea15cabc9cd8293d725e7f1f0550f8e15d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 11:36:20 2020 -0800","stats":{"files_changed":7,"insertions":524,"deletions":0,"files":["jc/cli.py","jc/parsers/hashsum.py","tests/fixtures/centos-7.7/md5sum.out","tests/fixtures/centos-7.7/sha256sum.out","tests/fixtures/centos-7.7/sha384sum.out","tests/fixtures/osx-10.14.6/md5.out","tests/fixtures/osx-10.14.6/shasum.out"]},"message":"add hashsum parser","epoch":1609270580,"epoch_utc":null},{"commit":"439871ea9f6b055a407e1faaf47e4f56d1829501","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 19 07:07:30 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add ubuntu","epoch":1605798450,"epoch_utc":null},{"commit":"c9180b005c0547c8cbfe4809e66894f1123b0809","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Aug 30 11:58:42 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1598813922,"epoch_utc":null},{"commit":"b14e0725f86853f0113116b1c06f54aaa563f365","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Aug 30 11:57:55 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add ansible plugin blog post link","epoch":1598813875,"epoch_utc":null},{"commit":"70fe3dcb4d5b97aba1d6c6dcd5088fecb27af181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 26 15:21:45 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1598480505,"epoch_utc":null},{"commit":"8c554604a42a3ea7ca9131b65c64fd3ceb95f906","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 26 14:41:01 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"formatting","epoch":1598478061,"epoch_utc":null},{"commit":"a0a35454bd2831c116cb598c686150b883412f94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 26 14:39:40 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add link to the web demo","epoch":1598477980,"epoch_utc":null},{"commit":"e8467e2af5b0c3f14832a9e6d4a96f219c27f3f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 20 10:57:13 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"remove extra space","epoch":1597946233,"epoch_utc":null},{"commit":"7515deb5669ef04623e9cbf58653b30c99a96430","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 20 10:39:34 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add ansible install command","epoch":1597945174,"epoch_utc":null},{"commit":"ed9e52af241b609ee7f5d1b835c9f6c5306cd3c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 20 10:37:15 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"spelling","epoch":1597945035,"epoch_utc":null},{"commit":"592a3804104628c790997747a778b3b39d076dfe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 20 10:35:49 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]},"message":"add Ansible note","epoch":1597944949,"epoch_utc":null},{"commit":"1a458d2d5b4c16c0ad90671727ae9b19939e7f23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 11 07:00:07 2020 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py"]},"message":"update link","epoch":1597154407,"epoch_utc":null},{"commit":"0e4cf53b92ff951a6390a4dacf8833c272473583","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 11 06:36:30 2020 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/readme.md","jc/__init__.py"]},"message":"add parser docs link","epoch":1597152990,"epoch_utc":null},{"commit":"e2f06ccb33177173d984bc0cdda1aae1a3f4c681","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 6 13:00:33 2020 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"formatting","epoch":1596744033,"epoch_utc":null},{"commit":"8abff004cd8e09529e5d94be4883308152e11565","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 6 12:59:30 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/yaml.md"]},"message":"indentation fix","epoch":1596743970,"epoch_utc":null},{"commit":"c4a0e2e3feb2e51eaaaa202064f352229017bcc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 6 12:58:53 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/yaml.py"]},"message":"fix indentation","epoch":1596743933,"epoch_utc":null},{"commit":"4f10f79c73f8b3d6edc2c83e6a12d0ddc1a78555","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 6 12:55:24 2020 -0700","stats":{"files_changed":2,"insertions":4,"deletions":8,"files":["docs/parsers/uname.md","jc/parsers/uname.py"]},"message":"standardize doc","epoch":1596743724,"epoch_utc":null},{"commit":"69e7a560fd82337570c4bb4aa4780f513c18bd94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 6 07:48:08 2020 -0700","stats":{"files_changed":4,"insertions":8,"deletions":0,"files":["docs/parsers/env.md","docs/parsers/history.md","jc/parsers/env.py","jc/parsers/history.py"]},"message":"add output info to docs","epoch":1596725288,"epoch_utc":null},{"commit":"59b105580805d78516abe1c1069d52a6f0a8131a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 16:51:58 2020 -0700","stats":{"files_changed":97,"insertions":564,"deletions":269,"files":["docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"enhance docs","epoch":1596671518,"epoch_utc":null},{"commit":"6ed48c6289214fe5114971c80772efdf9ac1b8c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 15:34:17 2020 -0700","stats":{"files_changed":16,"insertions":88,"deletions":37,"files":["jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py"]},"message":"enhance docs","epoch":1596666857,"epoch_utc":null},{"commit":"f2fb4d3f415fbc1c09eec6dedcf70fba78406b3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 15:10:48 2020 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","jc/parsers/airport.py","jc/parsers/airport_s.py"]},"message":"improve docs","epoch":1596665448,"epoch_utc":null},{"commit":"6aeea59ea84e56434e87ddf89cd5d4435b99e140","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 15:08:42 2020 -0700","stats":{"files_changed":2,"insertions":14,"deletions":8,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md"]},"message":"doc updates","epoch":1596665322,"epoch_utc":null},{"commit":"d016f3bbb307f85bd0f93a508323941a8bb9d872","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 15:07:33 2020 -0700","stats":{"files_changed":2,"insertions":14,"deletions":8,"files":["jc/parsers/airport.py","jc/parsers/airport_s.py"]},"message":"improve documentation","epoch":1596665253,"epoch_utc":null},{"commit":"7131c297180bfa195d0209d46fc70ab8e67efe2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 13:32:59 2020 -0700","stats":{"files_changed":114,"insertions":686,"deletions":116,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"add module usage info to docs","epoch":1596659579,"epoch_utc":null},{"commit":"7432442983841b42c8d3d2459b55596c05d1e100","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 13:31:52 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["docs/parsers/blkid.md"]},"message":"add usage","epoch":1596659512,"epoch_utc":null},{"commit":"5344883394a0662ee16bb5edd68df8e4410025f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 11:35:52 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"]},"message":"spelling/add ping parser update","epoch":1596652552,"epoch_utc":null},{"commit":"3fcd2f6c2e015b0e65e7261c8e591ccd8a7d0e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 11:34:29 2020 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/cli.py","setup.py"]},"message":"version bump","epoch":1596652469,"epoch_utc":null},{"commit":"f3d84bd5bf06349b681e9b72d904676e9f6bca19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 11:28:37 2020 -0700","stats":{"files_changed":6,"insertions":21,"deletions":3,"files":["CHANGELOG","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/fixtures/debian10/crontab-u.json","tests/fixtures/debian10/crontab-u.out","tests/test_crontab_u.py"]},"message":"tighten crontab and crontab-u parser variable detection","epoch":1596652117,"epoch_utc":null},{"commit":"549780c23220bca3bcab58d7329ba8d44d1be55d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 11:04:07 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"add debian/apt-get info","epoch":1596650647,"epoch_utc":null},{"commit":"2a6da69b82aa9ade6c01d490a32b57b415c62a9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 09:58:01 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ping.py"]},"message":"improve linux/bsd check","epoch":1596646681,"epoch_utc":null},{"commit":"5c538816cf76686bac1a86a7c06e24664d25a2dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 4 17:36:35 2020 -0700","stats":{"files_changed":9,"insertions":55,"deletions":4,"files":["CHANGELOG","jc/cli.py","jc/parsers/ping.py","setup.py","tests/fixtures/pi/ping-ip-O-D.json","tests/fixtures/pi/ping-ip-O-D.out","tests/fixtures/pi/ping-ip-O.json","tests/fixtures/pi/ping-ip-O.out","tests/test_ping.py"]},"message":"ping parser fix for raspberry pi","epoch":1596587795,"epoch_utc":null},{"commit":"7b8b378a7df397c488fc54fbd6e77f5f3f23c10c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 3 12:39:18 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"]},"message":"add pydoc-markdown version requirement","epoch":1596483558,"epoch_utc":null},{"commit":"e30a75e25c4b43969bf9f874f89e18512a5e3a34","merge":"dda517a 85ad5cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 3 10:18:39 2020 -0700","message":"Merge pull request #76 from kellyjonbrazil/dev\n\nDev v1.13.2","epoch":1596475119,"epoch_utc":null},{"commit":"85ad5cfd0bfb903ce35e37b343244fed88dbd979","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 3 10:14:13 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"date change","epoch":1596474853,"epoch_utc":null},{"commit":"88b9d5068c5bac0691fedb543114300d6afc7131","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 3 09:26:37 2020 -0700","stats":{"files_changed":6,"insertions":74,"deletions":15,"files":["EXAMPLES.md","README.md","docs/parsers/date.md","tests/fixtures/generic/date.json","tests/fixtures/generic/date.out","tests/test_date.py"]},"message":"finish date parser","epoch":1596471997,"epoch_utc":null},{"commit":"f8c4948a090642db595eda2ba2ea0773e560ba67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 16:52:48 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/date.py"]},"message":"remove comment","epoch":1596239568,"epoch_utc":null},{"commit":"412322447f019aec0b64888631bc965e9f21186d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 16:51:05 2020 -0700","stats":{"files_changed":1,"insertions":48,"deletions":17,"files":["jc/parsers/date.py"]},"message":"add month_num and weekday_num fields","epoch":1596239465,"epoch_utc":null},{"commit":"d4f289e40fae621b87f0d49451fca4c3dde216b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 14:47:06 2020 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/date.md","jc/parsers/date.py"]},"message":"documentation fixup","epoch":1596232026,"epoch_utc":null},{"commit":"e1f3feb8f529172ae26ce4c7a66a4a1c21b722ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 14:45:30 2020 -0700","stats":{"files_changed":1,"insertions":13,"deletions":10,"files":["jc/parsers/date.py"]},"message":"cover empty data case in process","epoch":1596231930,"epoch_utc":null},{"commit":"37d3bc699c7be16955be06840d242980f05f1074","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 14:39:02 2020 -0700","stats":{"files_changed":6,"insertions":224,"deletions":1,"files":["CHANGELOG","docgen.sh","docs/parsers/date.md","jc/cli.py","jc/parsers/date.py","man/jc.1"]},"message":"add date parser","epoch":1596231542,"epoch_utc":null},{"commit":"672fd18016b8122510b6ab246b5675b7fd399b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 12:59:44 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"date bump","epoch":1596225584,"epoch_utc":null},{"commit":"bc2c23a2a09b96d34bb80f69fdc7751fb5ac3ed4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 12:58:58 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"version bump","epoch":1596225538,"epoch_utc":null},{"commit":"865f7e78124e382c6d315702fa6e48f2104cee46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 12:58:11 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["man/jc.1"]},"message":"add kv parser to man page","epoch":1596225491,"epoch_utc":null},{"commit":"720212b552e1bd2b9196dd5f06e4b3f85d463531","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 11:02:24 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":9,"files":["EXAMPLES.md"]},"message":"fixup traceroute example with new behavior","epoch":1596218544,"epoch_utc":null},{"commit":"d3be61f60837801d5a505dc2520cc80c874a6092","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 10:59:46 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]},"message":"version bump","epoch":1596218386,"epoch_utc":null},{"commit":"13418b16b8fd78fdd97ac045ec3fe9aa59d46080","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 10:56:51 2020 -0700","stats":{"files_changed":2,"insertions":8,"deletions":2,"files":["docs/parsers/traceroute.md","jc/parsers/traceroute.py"]},"message":"doc update","epoch":1596218211,"epoch_utc":null},{"commit":"42d2017cd6f5ee1d1a92bd4958cd63366c1e715d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 10:53:47 2020 -0700","stats":{"files_changed":18,"insertions":41,"deletions":24,"files":["CHANGELOG","jc/parsers/traceroute.py","tests/fixtures/centos-7.7/traceroute.json","tests/fixtures/freebsd12/traceroute.json","tests/fixtures/freebsd12/traceroute6.json","tests/fixtures/generic/traceroute1.json","tests/fixtures/generic/traceroute2.json","tests/fixtures/generic/traceroute3.json","tests/fixtures/generic/traceroute5.json","tests/fixtures/generic/traceroute6.json","tests/fixtures/generic/traceroute7.json","tests/fixtures/osx-10.14.6/traceroute-asn.json",".../fixtures/osx-10.14.6/traceroute-no-header.json","tests/fixtures/osx-10.14.6/traceroute-q.json","tests/fixtures/osx-10.14.6/traceroute.json",".../osx-10.14.6/traceroute6-mult-addresses.json","tests/fixtures/osx-10.14.6/traceroute6.json","tests/test_traceroute.py"]},"message":"traceroute updates: handle missing header row, add annotations, don't print timeouts as probes","epoch":1596218027,"epoch_utc":null},{"commit":"4345e76ead2a49ae0691077e9fbd2b6c5fdfd129","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 30 16:49:38 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"]},"message":"change to use --kv for key/value files","epoch":1596152978,"epoch_utc":null},{"commit":"741431322ba2677355c361fcd6095ed8cd0a4349","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 30 16:45:36 2020 -0700","stats":{"files_changed":2,"insertions":46,"deletions":24,"files":["tests/test_ini.py","tests/test_kv.py"]},"message":"update tests for kv parser","epoch":1596152736,"epoch_utc":null},{"commit":"980beaaf41a04891f7c2f5daeb1e3a23d3c7ec19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 30 16:21:03 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/ifconfig.py"]},"message":"fix docgen issue","epoch":1596151263,"epoch_utc":null},{"commit":"2205034e0906b333c259648f7a0e5392945f12ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 30 16:20:51 2020 -0700","stats":{"files_changed":8,"insertions":105,"deletions":31,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","jc/cli.py","jc/parsers/ini.py","jc/parsers/kv.py","setup.py"]},"message":"add kv parser","epoch":1596151251,"epoch_utc":null},{"commit":"82b9c87a66fce5d8626c56858a8c6f1f3326e7fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 30 16:20:24 2020 -0700","stats":{"files_changed":58,"insertions":345,"deletions":62,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/readme.md","docs/utils.md"]},"message":"update docs","epoch":1596151224,"epoch_utc":null},{"commit":"dda517a937323b9888e081aea1032a9d63c4a6bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 14:36:20 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":163,"files":["README.md"]},"message":"shorten more examples","epoch":1596058580,"epoch_utc":null},{"commit":"4e6d283b9eddf7759b4dd37bd643394ff73febd4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 14:27:13 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":65,"files":["README.md"]},"message":"shorten netstat example","epoch":1596058033,"epoch_utc":null},{"commit":"55acab05aa740dfd7534304f2678b60942cad116","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:55:16 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["changelog.txt => CHANGELOG"]},"message":"change name to CHANGELOG","epoch":1596048916,"epoch_utc":null},{"commit":"ed38a18d236cdb991779f4f148e42359c139e61c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:49:00 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":86,"files":["README.md"]},"message":"remove more examples","epoch":1596048540,"epoch_utc":null},{"commit":"95b3c11203d3dd0627c5eeca39fe1d145bf2d733","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:43:22 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":124,"files":["README.md"]},"message":"remove more examples","epoch":1596048202,"epoch_utc":null},{"commit":"dce318f4fd44b9c4013211bf233020e84566ddb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:40:47 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1537,"files":["README.md"]},"message":"remove examples to reduce file size","epoch":1596048047,"epoch_utc":null},{"commit":"85127f0fb8096192b19fca1f4ffe38ee391351be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:34:43 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["jc/examples.md => EXAMPLES.md"]},"message":"move examples to root","epoch":1596047683,"epoch_utc":null},{"commit":"fb45058244ce879f12bbb5b7267b0fd63fef1d63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:32:18 2020 -0700","stats":{"files_changed":1,"insertions":2640,"deletions":0,"files":["jc/examples.md"]},"message":"add examples file","epoch":1596047538,"epoch_utc":null},{"commit":"45bb5ae389a00ed6a132a65c69ce76c7e5976858","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 28 11:03:41 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"spelling","epoch":1595959421,"epoch_utc":null},{"commit":"339238ab364d8735892a11cb16a62a651edae169","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 20:37:33 2020 -0700","stats":{"files_changed":8,"insertions":79,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py","tests/fixtures/centos-7.7/route-6-n.json","tests/fixtures/centos-7.7/route-6-n.out","tests/fixtures/centos-7.7/route-6.json","tests/fixtures/centos-7.7/route-6.out","tests/test_route.py"]},"message":"version bump and add route -6 tests","epoch":1595907453,"epoch_utc":null},{"commit":"032cda8b3db096b690d2557e3b918c50c716c543","merge":"690ac52 6badd3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 19:12:21 2020 -0700","message":"Merge pull request #74 from kellyjonbrazil/dev\n\nDev v1.13.0","epoch":1595902341,"epoch_utc":null},{"commit":"6badd3fb1e1cf6d1ee99614fadc20d54be8039aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 19:02:23 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["tests/test_cli.py"]},"message":"add parser count test","epoch":1595901743,"epoch_utc":null},{"commit":"724d825745b6f1692eb3b068c3fb59d14892e690","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 19:02:11 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["man/jc.1"]},"message":"add tracepath parser","epoch":1595901731,"epoch_utc":null},{"commit":"ff1e32ad2ee156f105f5069c6b14a65b22784dfa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 16:49:34 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump","epoch":1595893774,"epoch_utc":null},{"commit":"a5f97febd3066b9e95a18d6b73162a7d206c5845","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 16:47:41 2020 -0700","stats":{"files_changed":10,"insertions":132,"deletions":0,"files":["tests/fixtures/centos-7.7/tracepath.json","tests/fixtures/centos-7.7/tracepath6.json","tests/fixtures/freebsd12/traceroute.json","tests/fixtures/freebsd12/traceroute.out","tests/fixtures/freebsd12/traceroute6.json","tests/fixtures/freebsd12/traceroute6.out","tests/fixtures/osx-10.14.6/uname.out","tests/test_tracepath.py","tests/test_traceroute.py","tests/test_uname.py"]},"message":"update traceroute, tracepath, and uname tests","epoch":1595893661,"epoch_utc":null},{"commit":"5baa6cc865634142690e78596c640db35e110b29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:44:13 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]},"message":"add route parser update","epoch":1595889853,"epoch_utc":null},{"commit":"7a4f30b843d8f11711abbb8f9bb263f945ff87ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:37:44 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/route.py"]},"message":"fix for iface issue","epoch":1595889464,"epoch_utc":null},{"commit":"b2c385dc4f63e3e15f47e986deac0524967214a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:30:09 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"]},"message":"change 'if' to 'iface'","epoch":1595889009,"epoch_utc":null},{"commit":"5d5da8d33fa6ab77c745d338d1a2e2e8f2e4c697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:27:11 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/route.py"]},"message":"more fixes for ipv6 fix","epoch":1595888831,"epoch_utc":null},{"commit":"e60457157839daba385202906997dec48c9c4950","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:20:51 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"]},"message":"fix next_hop fix","epoch":1595888451,"epoch_utc":null},{"commit":"f9dacc3f95b32e1431914ae0b0dc5c8e8840d5a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:18:13 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/route.py"]},"message":"fixup for ipv6","epoch":1595888293,"epoch_utc":null},{"commit":"6086920332575cd7db1b38262a3b4ba8fbfae7ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:13:32 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]},"message":"update ParseError message","epoch":1595888012,"epoch_utc":null},{"commit":"f52f3163bcaf8d7e784f02505e81456e8240295b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 13:57:58 2020 -0700","stats":{"files_changed":1,"insertions":49,"deletions":0,"files":["README.md"]},"message":"add tracepath example","epoch":1595883478,"epoch_utc":null},{"commit":"d18ff73e880c7d34957f2713857cc83094f914cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 13:51:51 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/tracepath.py"]},"message":"update author info","epoch":1595883111,"epoch_utc":null},{"commit":"1e5d602caecd96c9056ad77f9fc50cf25bf6fdfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 13:48:46 2020 -0700","stats":{"files_changed":2,"insertions":288,"deletions":32,"files":["docs/parsers/tracepath.md","jc/parsers/tracepath.py"]},"message":"working tracepath parser","epoch":1595882926,"epoch_utc":null},{"commit":"12912521ecb376c36dfdd743b3c4195598fb9aac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 11:04:27 2020 -0700","stats":{"files_changed":2,"insertions":0,"deletions":11,"files":["docs/parsers/traceroute.md","jc/parsers/traceroute.py"]},"message":"doc update","epoch":1595873067,"epoch_utc":null},{"commit":"842ea3a94bec3fcab76257fdde5514d1de3d57fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 11:02:13 2020 -0700","stats":{"files_changed":2,"insertions":153,"deletions":0,"files":["docs/parsers/tracepath.md","jc/parsers/tracepath.py"]},"message":"add tracepath parser skeleton","epoch":1595872933,"epoch_utc":null},{"commit":"a8560dbc1598fa97de87594228b4cc10282d4197","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 11:01:57 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add tracepath","epoch":1595872917,"epoch_utc":null},{"commit":"a65e27540a8c5c7123d2fdf79fcbefa1e2f8afdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 11:01:45 2020 -0700","stats":{"files_changed":3,"insertions":1,"deletions":24,"files":["docgen.sh","docs/parsers/traceroute.md","jc/parsers/traceroute.py"]},"message":"update docs","epoch":1595872905,"epoch_utc":null},{"commit":"c3c5ed11e68938e35920144406d37ea3b21d63dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 10:33:40 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]},"message":"change name from tr to trparse","epoch":1595871220,"epoch_utc":null},{"commit":"ce24149335cd8ed1e8513a2cf040432fe42d86b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 10:33:25 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping.py"]},"message":"formatting","epoch":1595871205,"epoch_utc":null},{"commit":"0314ca8c4831d24c169a0e4948421ecd638fd699","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 10:33:15 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add trparse acknowledgement","epoch":1595871195,"epoch_utc":null},{"commit":"ebd8ee49a9f43063850e30c745c8cae46ee13de1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 10:28:15 2020 -0700","stats":{"files_changed":1,"insertions":26,"deletions":1,"files":["README.md"]},"message":"add key/value info to ini example","epoch":1595870895,"epoch_utc":null},{"commit":"38d10c97814ec69586c3b447c182f339772d6e22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 09:29:30 2020 -0700","stats":{"files_changed":1,"insertions":130,"deletions":1,"files":["README.md"]},"message":"add ping and traceroute examples","epoch":1595867370,"epoch_utc":null},{"commit":"360106c24d24e6a9697c00a158a14aaa334a4b1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 09:23:01 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]},"message":"add tracepath","epoch":1595866981,"epoch_utc":null},{"commit":"ca470a5d02fd9fbaf05d8b3b3bb1ffe9f4cf5af3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 09:20:00 2020 -0700","stats":{"files_changed":2,"insertions":39,"deletions":0,"files":["tests/fixtures/centos-7.7/tracepath.out","tests/fixtures/centos-7.7/tracepath6.out"]},"message":"add tracepath fixtures","epoch":1595866800,"epoch_utc":null},{"commit":"57f66e6b1d554ff20b72959f5ebb9e7b2feffed2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 09:19:48 2020 -0700","stats":{"files_changed":2,"insertions":14,"deletions":2,"files":["changelog.txt","jc/parsers/uname.py"]},"message":"add exception with hint to use \"uname -a\"","epoch":1595866788,"epoch_utc":null},{"commit":"e774f67924c0e6195f79829b2ac75ce95f76fbaa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:53:17 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["jc/parsers/ini.py"]},"message":"turn off interpolation and coerce None to ''","epoch":1595634797,"epoch_utc":null},{"commit":"ac10e576c167d20de259e47a6aa5b23fc998b4c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:29:27 2020 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/ini.md","jc/parsers/ini.py"]},"message":"spelling","epoch":1595633367,"epoch_utc":null},{"commit":"bcae0a99cd0ccce4ec8a67929f7c83a1095a5b88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:23:45 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"add key/value to ini description","epoch":1595633025,"epoch_utc":null},{"commit":"c73c2ff879b3ed7a3e6f04e53e0a729e4f00ed21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:23:30 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["changelog.txt"]},"message":"add ping, traceroute, and ini update","epoch":1595633010,"epoch_utc":null},{"commit":"c39b1a3356881a11a8f6fe9432897e6d67162f07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:17:51 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["README.md"]},"message":"add ping, traceroute and update ini description","epoch":1595632671,"epoch_utc":null},{"commit":"125dc2d9e051a82a4a438afe2e520212338353f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:17:16 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":3,"files":["docs/parsers/ini.md"]},"message":"add info about key/value files to doc","epoch":1595632636,"epoch_utc":null},{"commit":"b7d4ddc7ced2c3aabf3a857b53a0bf1b62eb6a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:16:54 2020 -0700","stats":{"files_changed":5,"insertions":50,"deletions":0,"files":["tests/fixtures/generic/keyvalue-ifcfg.json","tests/fixtures/generic/keyvalue-ifcfg.txt","tests/fixtures/generic/keyvalue.json","tests/fixtures/generic/keyvalue.txt","tests/test_ini.py"]},"message":"add tests for key/value files","epoch":1595632614,"epoch_utc":null},{"commit":"f5e546c6fa7cba166284a0976887d6b82451d3e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:16:24 2020 -0700","stats":{"files_changed":1,"insertions":33,"deletions":9,"files":["jc/parsers/ini.py"]},"message":"add support for simple key/value pairs","epoch":1595632584,"epoch_utc":null},{"commit":"928e39cd103b96b8c3ccc8d85c930ffb419296c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 14:16:41 2020 -0700","stats":{"files_changed":9,"insertions":104,"deletions":0,"files":["tests/fixtures/generic/traceroute1.json","tests/fixtures/generic/traceroute2.json","tests/fixtures/generic/traceroute3.json","tests/fixtures/generic/traceroute4.json","tests/fixtures/generic/traceroute5.json","tests/fixtures/generic/traceroute6.json","tests/fixtures/generic/traceroute7.json","tests/fixtures/generic/traceroute8.json","tests/test_traceroute.py"]},"message":"add generic traceroute tests","epoch":1595625401,"epoch_utc":null},{"commit":"d0b7ea68a005daff313e44808b256656313a78a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 13:47:47 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/traceroute.py"]},"message":"check for key in dictionary","epoch":1595623667,"epoch_utc":null},{"commit":"8444690133b6a7522822ab279e97ede6ded17ba9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 13:47:29 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["man/jc.1"]},"message":"add traceroute","epoch":1595623649,"epoch_utc":null},{"commit":"c03c42d76703ff8f423cf3c10ea6254a27a685cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 13:47:23 2020 -0700","stats":{"files_changed":9,"insertions":76,"deletions":9,"files":["tests/fixtures/centos-7.7/traceroute.json","tests/fixtures/osx-10.14.6/traceroute-asn.json",".../osx-10.14.6/traceroute-mult-addresses.json","tests/fixtures/osx-10.14.6/traceroute-q.json","tests/fixtures/osx-10.14.6/traceroute.json",".../osx-10.14.6/traceroute6-mult-addresses.json","...-address.out => traceroute6-mult-addresses.out}","tests/fixtures/osx-10.14.6/traceroute6.json","tests/test_traceroute.py"]},"message":"add traceroute tests","epoch":1595623643,"epoch_utc":null},{"commit":"ab67688a00ac335d2a5603e9cadef8b565957911","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 16:45:09 2020 -0700","stats":{"files_changed":1,"insertions":55,"deletions":0,"files":["tests/test_traceroute.py"]},"message":"add test skeleton","epoch":1595547909,"epoch_utc":null},{"commit":"5dcb7166daef3c53da65bba0d591672e64d3a90b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 16:44:57 2020 -0700","stats":{"files_changed":2,"insertions":169,"deletions":0,"files":["docgen.sh","docs/parsers/traceroute.md"]},"message":"add traceroute doc","epoch":1595547897,"epoch_utc":null},{"commit":"14697b86d7fc1cfebb41e0fd2d9a9b9b60071d3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 15:48:08 2020 -0700","stats":{"files_changed":1,"insertions":24,"deletions":2,"files":["jc/parsers/traceroute.py"]},"message":"add MIT license","epoch":1595544488,"epoch_utc":null},{"commit":"4f4b6276d4bf798b17d996f39742bd0428fc2f19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 15:46:22 2020 -0700","stats":{"files_changed":1,"insertions":38,"deletions":33,"files":["jc/parsers/traceroute.py"]},"message":"update docstring","epoch":1595544382,"epoch_utc":null},{"commit":"7bc497e1291059ae7858c9d2bd2d9a1b4c030dd1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 15:42:33 2020 -0700","stats":{"files_changed":1,"insertions":117,"deletions":14,"files":["jc/parsers/traceroute.py"]},"message":"updated process() function to set integers and floats","epoch":1595544153,"epoch_utc":null},{"commit":"68a37a6a5a3f0ad0fa24c84d363050af9fa11f97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 12:48:33 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/parsers/traceroute.py"]},"message":"remove unused function load()","epoch":1595533713,"epoch_utc":null},{"commit":"6f5cd1d7c5f76d7d4da42171fdc30daf9fe3996e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 12:03:21 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]},"message":"change to use f-string","epoch":1595531001,"epoch_utc":null},{"commit":"126b1b121ca10183dc7e9dece83b42907becad39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 11:31:56 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":0,"files":["tests/fixtures/generic/traceroute8.out"]},"message":"add traceroute6 example","epoch":1595529116,"epoch_utc":null},{"commit":"2341e456a012564f86d533d2748a5887d79995e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 11:31:35 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]},"message":"use ParseError instead of generic Exception","epoch":1595529095,"epoch_utc":null},{"commit":"72d80e95bb50ae2a7432082e65aba15235ba0955","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 10:52:40 2020 -0700","stats":{"files_changed":8,"insertions":115,"deletions":8,"files":["jc/parsers/traceroute.py","tests/fixtures/generic/traceroute1.out","tests/fixtures/generic/traceroute2.out","tests/fixtures/generic/traceroute3.out","tests/fixtures/generic/traceroute4.out","tests/fixtures/generic/traceroute5.out","tests/fixtures/generic/traceroute6.out","tests/fixtures/generic/traceroute7.out"]},"message":"remove unused regex patterns","epoch":1595526760,"epoch_utc":null},{"commit":"f5ec82440cd1c1b5ac9011d3517298d0cdcd8766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 10:19:56 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/traceroute.py"]},"message":"simplify regex patterns","epoch":1595524796,"epoch_utc":null},{"commit":"c8e526ead35b868733f57b4c114062a48b78a817","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 22 17:23:24 2020 -0700","stats":{"files_changed":2,"insertions":12,"deletions":3,"files":["jc/parsers/traceroute.py","tests/fixtures/osx-10.14.6/traceroute-q.out"]},"message":"fixes for bsd-style ipv6 output","epoch":1595463804,"epoch_utc":null},{"commit":"066adfb76479df7042bfb12bbb83b5dbd8a6d54c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 22 15:02:02 2020 -0700","stats":{"files_changed":7,"insertions":83,"deletions":7,"files":["jc/parsers/traceroute.py","tests/fixtures/centos-7.7/traceroute.out","tests/fixtures/osx-10.14.6/traceroute-asn.out",".../osx-10.14.6/traceroute-mult-addresses.out",".../fixtures/osx-10.14.6/traceroute-no-header.out",".../osx-10.14.6/traceroute6-multi-address.out","tests/fixtures/osx-10.14.6/traceroute6.out"]},"message":"handle warning lines in the traceroute output","epoch":1595455322,"epoch_utc":null},{"commit":"5b444d4717b0b8528647e17e71d699907def3e18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 22 12:19:27 2020 -0700","stats":{"files_changed":3,"insertions":307,"deletions":0,"files":["jc/cli.py","jc/parsers/traceroute.py","tests/fixtures/osx-10.14.6/traceroute.out"]},"message":"add traceroute parser","epoch":1595445567,"epoch_utc":null},{"commit":"69c95adc8d59927c1c00b7e766ca5003b7b6454c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 22 09:06:11 2020 -0700","stats":{"files_changed":3,"insertions":81,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ping6-ip-dup.json","tests/fixtures/osx-10.14.6/ping6-ip-dup.out","tests/test_ping.py"]},"message":"add osx ipv6 ping dup test","epoch":1595433971,"epoch_utc":null},{"commit":"2b0e0d8f5c1a6a5450e362971f9ad5892093b2ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 17:34:30 2020 -0700","stats":{"files_changed":3,"insertions":27,"deletions":0,"files":["tests/fixtures/centos-7.7/ping6-ip-dup.json","tests/fixtures/centos-7.7/ping6-ip-dup.out","tests/test_ping.py"]},"message":"add ipv6 dup test","epoch":1595378070,"epoch_utc":null},{"commit":"778d1bacbf8df523d434b22f5e1517955e4c15ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 15:16:39 2020 -0700","stats":{"files_changed":2,"insertions":28,"deletions":12,"files":["docs/parsers/ping.md","jc/parsers/ping.py"]},"message":"update docs to add \"duplicates\" fields","epoch":1595369799,"epoch_utc":null},{"commit":"7e1b0410166c584775ebcd681a280ec7321560c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 15:12:43 2020 -0700","stats":{"files_changed":1,"insertions":24,"deletions":0,"files":["tests/test_ping.py"]},"message":"add duplicate replies tests","epoch":1595369563,"epoch_utc":null},{"commit":"313b9b329ca6b674069718839f55a4bd7834db80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 15:05:54 2020 -0700","stats":{"files_changed":55,"insertions":55,"deletions":53,"files":["tests/fixtures/centos-7.7/ping-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping-hostname-O-p.json","tests/fixtures/centos-7.7/ping-hostname-O.json","tests/fixtures/centos-7.7/ping-ip-O-D.json","tests/fixtures/centos-7.7/ping-ip-O.json","tests/fixtures/centos-7.7/ping-ip-dup.json","tests/fixtures/centos-7.7/ping6-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping6-hostname-O-p.json","tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","tests/fixtures/centos-7.7/ping6-ip-O-p.json","tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping-hostname-O-p.json","tests/fixtures/fedora32/ping-hostname-O.json","tests/fixtures/fedora32/ping-ip-O-D.json","tests/fixtures/fedora32/ping-ip-O.json","tests/fixtures/fedora32/ping6-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping6-hostname-O-D-p.json","tests/fixtures/fedora32/ping6-hostname-O-p.json","tests/fixtures/fedora32/ping6-ip-O-D-p.json","tests/fixtures/fedora32/ping6-ip-O-p.json","tests/fixtures/freebsd12/ping-hostname-p.json","tests/fixtures/freebsd12/ping-hostname-s.json","tests/fixtures/freebsd12/ping-hostname.json","tests/fixtures/freebsd12/ping-ip-p.json","tests/fixtures/freebsd12/ping-ip-s.json","tests/fixtures/freebsd12/ping-ip.json","tests/fixtures/freebsd12/ping6-hostname-p.json","tests/fixtures/freebsd12/ping6-hostname-s.json","tests/fixtures/freebsd12/ping6-hostname.json","tests/fixtures/freebsd12/ping6-ip-p.json","tests/fixtures/freebsd12/ping6-ip-s.json","tests/fixtures/freebsd12/ping6-ip.json","tests/fixtures/osx-10.14.6/ping-hostname-p.json","tests/fixtures/osx-10.14.6/ping-hostname-s.json","tests/fixtures/osx-10.14.6/ping-hostname.json","tests/fixtures/osx-10.14.6/ping-ip-dup.json","tests/fixtures/osx-10.14.6/ping-ip-p.json","tests/fixtures/osx-10.14.6/ping-ip-s.json","tests/fixtures/osx-10.14.6/ping-ip.json","tests/fixtures/osx-10.14.6/ping6-hostname-p.json","tests/fixtures/osx-10.14.6/ping6-hostname-s.json","tests/fixtures/osx-10.14.6/ping6-hostname.json","tests/fixtures/osx-10.14.6/ping6-ip-p.json","tests/fixtures/osx-10.14.6/ping6-ip-s.json","tests/fixtures/osx-10.14.6/ping6-ip.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping-hostname-O.json","tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","tests/fixtures/ubuntu-18.04/ping-ip-O.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json"]},"message":"update fixtures for added 'duplicate' fields","epoch":1595369154,"epoch_utc":null},{"commit":"6830062256fbc453f87224f7ab8c10e4494b5a83","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 14:47:25 2020 -0700","stats":{"files_changed":4,"insertions":112,"deletions":24,"files":["docs/parsers/ping.md","jc/parsers/ping.py","tests/fixtures/centos-7.7/ping-ip-dup.out","tests/fixtures/osx-10.14.6/ping-ip-dup.out"]},"message":"add support for duplicate replies","epoch":1595368045,"epoch_utc":null},{"commit":"323072c9827c41c5d74433504b5efceb846cfe09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 09:02:44 2020 -0700","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/ping.md","jc/parsers/ping.py"]},"message":"add source_ip to schema doc","epoch":1595347364,"epoch_utc":null},{"commit":"8719d96bddec80187e7ba3286ba93bfec8465744","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 16:54:43 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"change description","epoch":1595289283,"epoch_utc":null},{"commit":"dd5d318ab5bbb1027dd600fd3b0b6ec9b8adfdc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 16:25:20 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["man/jc.1"]},"message":"version bump and add ping command","epoch":1595287520,"epoch_utc":null},{"commit":"d6dc7f5e65c097895c19000e59e8803a3b350fdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 16:11:18 2020 -0700","stats":{"files_changed":13,"insertions":135,"deletions":29,"files":["tests/fixtures/osx-10.14.6/ping-hostname-p.json","tests/fixtures/osx-10.14.6/ping-hostname-s.json","tests/fixtures/osx-10.14.6/ping-hostname.json","tests/fixtures/osx-10.14.6/ping-ip-p.json","tests/fixtures/osx-10.14.6/ping-ip-s.json","tests/fixtures/osx-10.14.6/ping-ip.json","tests/fixtures/osx-10.14.6/ping6-hostname-p.json","tests/fixtures/osx-10.14.6/ping6-hostname-s.json","tests/fixtures/osx-10.14.6/ping6-hostname.json","tests/fixtures/osx-10.14.6/ping6-ip-p.json","tests/fixtures/osx-10.14.6/ping6-ip-s.json","tests/fixtures/osx-10.14.6/ping6-ip.json","tests/test_ping.py"]},"message":"add osx ping tests","epoch":1595286678,"epoch_utc":null},{"commit":"c203664eb5aafa0afa3101b79e3fd13b3e009ec5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 15:46:27 2020 -0700","stats":{"files_changed":13,"insertions":171,"deletions":9,"files":["tests/fixtures/freebsd12/ping-hostname-p.json","tests/fixtures/freebsd12/ping-hostname-s.json","tests/fixtures/freebsd12/ping-hostname.json","tests/fixtures/freebsd12/ping-ip-p.json","tests/fixtures/freebsd12/ping-ip-s.json","tests/fixtures/freebsd12/ping-ip.json","tests/fixtures/freebsd12/ping6-hostname-p.json","tests/fixtures/freebsd12/ping6-hostname-s.json","tests/fixtures/freebsd12/ping6-hostname.json","tests/fixtures/freebsd12/ping6-ip-p.json","tests/fixtures/freebsd12/ping6-ip-s.json","tests/fixtures/freebsd12/ping6-ip.json","tests/test_ping.py"]},"message":"freebsd ping tests","epoch":1595285187,"epoch_utc":null},{"commit":"19ecf1fa19e9fa0873002baf07fa670b71ed7752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 14:35:41 2020 -0700","stats":{"files_changed":11,"insertions":118,"deletions":0,"files":["tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping-hostname-O-p.json","tests/fixtures/fedora32/ping-hostname-O.json","tests/fixtures/fedora32/ping-ip-O-D.json","tests/fixtures/fedora32/ping-ip-O.json",".../fixtures/fedora32/ping6-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping6-hostname-O-D-p.json","tests/fixtures/fedora32/ping6-hostname-O-p.json","tests/fixtures/fedora32/ping6-ip-O-D-p.json","tests/fixtures/fedora32/ping6-ip-O-p.json","tests/test_ping.py"]},"message":"add Fedora32 tests","epoch":1595280941,"epoch_utc":null},{"commit":"b8deb0426cc23333c0e0a9dc3776d9761d99abb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 13:51:39 2020 -0700","stats":{"files_changed":11,"insertions":119,"deletions":8,"files":[".../ubuntu-18.04/ping-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping-hostname-O.json","tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","tests/fixtures/ubuntu-18.04/ping-ip-O.json",".../ubuntu-18.04/ping6-hostname-O-D-p-s.json",".../ubuntu-18.04/ping6-hostname-O-D-p.json",".../fixtures/ubuntu-18.04/ping6-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json","tests/test_ping.py"]},"message":"add ubuntu ping tests","epoch":1595278299,"epoch_utc":null},{"commit":"3b8371f0208a097cb8a1c026348d3842e6702b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 12:49:05 2020 -0700","stats":{"files_changed":10,"insertions":202,"deletions":0,"files":[".../fixtures/centos-7.7/ping-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping-hostname-O-p.json","tests/fixtures/centos-7.7/ping-hostname-O.json","tests/fixtures/centos-7.7/ping-ip-O-D.json","tests/fixtures/centos-7.7/ping-ip-O.json",".../centos-7.7/ping6-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping6-hostname-O-p.json","tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","tests/fixtures/centos-7.7/ping6-ip-O-p.json","tests/test_ping.py"]},"message":"add centos ping tests","epoch":1595274545,"epoch_utc":null},{"commit":"20bb1cdf396abdb3707b34fa146cbe913f9bbd6f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 11:53:06 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/ping.py"]},"message":"add TypeError to except for None values","epoch":1595271186,"epoch_utc":null},{"commit":"301daa48d0bfc28f97c8e46f028f8c6b875bf34e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 15:30:54 2020 -0700","stats":{"files_changed":2,"insertions":114,"deletions":16,"files":["docs/parsers/ping.md","jc/parsers/ping.py"]},"message":"update documentation","epoch":1595197854,"epoch_utc":null},{"commit":"8421ec88033e02f472e4961d87551a0352663a16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 15:19:47 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ping.py"]},"message":"remove cygwin compatibility","epoch":1595197187,"epoch_utc":null},{"commit":"74211eb0129f6aa655a38ba4d4d8844d81441107","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 15:16:04 2020 -0700","stats":{"files_changed":1,"insertions":82,"deletions":5,"files":["jc/parsers/ping.py"]},"message":"add examples","epoch":1595196964,"epoch_utc":null},{"commit":"60bd42f298f309cbec6d24c9543ea3d51bd73b18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 15:13:52 2020 -0700","stats":{"files_changed":1,"insertions":59,"deletions":11,"files":["jc/parsers/ping.py"]},"message":"add process() logic","epoch":1595196832,"epoch_utc":null},{"commit":"14bdd74526e400997c5bc247ea35ed40799e83ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 14:46:02 2020 -0700","stats":{"files_changed":12,"insertions":100,"deletions":0,"files":["tests/fixtures/freebsd12/ping-hostname-p.out","tests/fixtures/freebsd12/ping-hostname-s.out","tests/fixtures/freebsd12/ping-hostname.out","tests/fixtures/freebsd12/ping-ip-p.out","tests/fixtures/freebsd12/ping-ip-s.out","tests/fixtures/freebsd12/ping-ip.out","tests/fixtures/freebsd12/ping6-hostname-p.out","tests/fixtures/freebsd12/ping6-hostname-s.out","tests/fixtures/freebsd12/ping6-hostname.out","tests/fixtures/freebsd12/ping6-ip-p.out","tests/fixtures/freebsd12/ping6-ip-s.out","tests/fixtures/freebsd12/ping6-ip.out"]},"message":"add ping test fixtures","epoch":1595195162,"epoch_utc":null},{"commit":"fb0f3eda04a4b1dbb81da7d5791cbfe746bfd617","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 14:45:50 2020 -0700","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["tests/fixtures/create_fixtures.sh"]},"message":"add ping commands","epoch":1595195150,"epoch_utc":null},{"commit":"91ee6e6701307363336a39f9e16641465ddd05c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 14:18:56 2020 -0700","stats":{"files_changed":12,"insertions":100,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ping-hostname-p.out","tests/fixtures/osx-10.14.6/ping-hostname-s.out","tests/fixtures/osx-10.14.6/ping-hostname.out","tests/fixtures/osx-10.14.6/ping-ip-p.out","tests/fixtures/osx-10.14.6/ping-ip-s.out","tests/fixtures/osx-10.14.6/ping-ip.out","tests/fixtures/osx-10.14.6/ping6-hostname-p.out","tests/fixtures/osx-10.14.6/ping6-hostname-s.out","tests/fixtures/osx-10.14.6/ping6-hostname.out","tests/fixtures/osx-10.14.6/ping6-ip-p.out","tests/fixtures/osx-10.14.6/ping6-ip-s.out","tests/fixtures/osx-10.14.6/ping6-ip.out"]},"message":"add osx ping test fixtures","epoch":1595193536,"epoch_utc":null},{"commit":"51f4e6927c68a7e2a26954f564d10d316b98a984","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 14:18:40 2020 -0700","stats":{"files_changed":1,"insertions":12,"deletions":3,"files":["jc/parsers/ping.py"]},"message":"add support for pattern in osx/bsd","epoch":1595193520,"epoch_utc":null},{"commit":"94988d86674293faddc6f7e7c82575738d2dc791","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 13:50:40 2020 -0700","stats":{"files_changed":10,"insertions":257,"deletions":0,"files":["tests/fixtures/fedora32/ping-hostname-O-D-p-s.out","tests/fixtures/fedora32/ping-hostname-O-p.out","tests/fixtures/fedora32/ping-hostname-O.out","tests/fixtures/fedora32/ping-ip-O-D.out","tests/fixtures/fedora32/ping-ip-O.out","tests/fixtures/fedora32/ping6-hostname-O-D-p-s.out","tests/fixtures/fedora32/ping6-hostname-O-D-p.out","tests/fixtures/fedora32/ping6-hostname-O-p.out","tests/fixtures/fedora32/ping6-ip-O-D-p.out","tests/fixtures/fedora32/ping6-ip-O-p.out"]},"message":"add fedora ping fixtures","epoch":1595191840,"epoch_utc":null},{"commit":"fe36f5a98cd3ee7753e250b6553e4453d971f929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 12:56:53 2020 -0700","stats":{"files_changed":13,"insertions":318,"deletions":0,"files":["tests/fixtures/centos-7.7/ping-ip-O-D.out","tests/fixtures/centos-7.7/ping-ip-O.out","tests/fixtures/create_fixtures.sh",".../ubuntu-18.04/ping-hostname-O-D-p-s.out","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.out","tests/fixtures/ubuntu-18.04/ping-hostname-O.out","tests/fixtures/ubuntu-18.04/ping-ip-O-D.out","tests/fixtures/ubuntu-18.04/ping-ip-O.out",".../ubuntu-18.04/ping6-hostname-O-D-p-s.out",".../fixtures/ubuntu-18.04/ping6-hostname-O-D-p.out","tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.out","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.out","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.out"]},"message":"add fixtures for ping","epoch":1595188613,"epoch_utc":null},{"commit":"f9eb18b9271b2428dd82f2dc26d3fa0435dad81d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 12:56:34 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/ping.py"]},"message":"change 'request_timeout' field to 'type', fix compatibility, other formatting fixes","epoch":1595188594,"epoch_utc":null},{"commit":"cc60f3674822c644933f286a0364b09d7e2a60b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jul 18 12:35:46 2020 -0700","stats":{"files_changed":3,"insertions":67,"deletions":1,"files":["docgen.sh","docs/parsers/ping.md","jc/cli.py"]},"message":"add ping parser","epoch":1595100946,"epoch_utc":null},{"commit":"604ade791f7bd33b37f64916befba27a2ea08b5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 17 15:57:07 2020 -0700","stats":{"files_changed":8,"insertions":506,"deletions":0,"files":["jc/parsers/ping.py",".../fixtures/centos-7.7/ping-hostname-O-D-p-s.out","tests/fixtures/centos-7.7/ping-hostname-O-p.out","tests/fixtures/centos-7.7/ping-hostname-O.out",".../fixtures/centos-7.7/ping6-hostname-O-D-p-s.out","tests/fixtures/centos-7.7/ping6-hostname-O-p.out","tests/fixtures/centos-7.7/ping6-ip-O-D-p.out","tests/fixtures/centos-7.7/ping6-ip-O-p.out"]},"message":"add ping parser","epoch":1595026627,"epoch_utc":null},{"commit":"690ac52a917200e46eac2feafc9f504f2734301c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 13 07:18:48 2020 -0700","stats":{"files_changed":1,"insertions":261,"deletions":0,"files":["man/jc.1"]},"message":"add man page","epoch":1594649928,"epoch_utc":null},{"commit":"34ed772775f1f02ed148f24a3bfff532bc811607","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jul 11 09:46:47 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1594486007,"epoch_utc":null},{"commit":"d5ab95571f64f55d8194e9e5592ac538bb535229","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jul 11 09:44:08 2020 -0700","stats":{"files_changed":1,"insertions":26,"deletions":11,"files":["tests/test_cli.py"]},"message":"fix tests when using older versions of pygments","epoch":1594485848,"epoch_utc":null},{"commit":"ffb3a0ee5fb30a3f61d6cbedf877ab04acdbf624","merge":"fde0bc8 94b12b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 16:34:56 2020 -0700","message":"Merge pull request #73 from kellyjonbrazil/dev\n\nDev v1.12.0","epoch":1594424096,"epoch_utc":null},{"commit":"94b12b57aaa56170d1f31f4910fd1239f88de137","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 16:30:08 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"spelling","epoch":1594423808,"epoch_utc":null},{"commit":"6d149e84571d5d6dd1d8a1f219ba299de5173779","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 16:25:03 2020 -0700","stats":{"files_changed":2,"insertions":8,"deletions":1,"files":["changelog.txt","setup.py"]},"message":"version bump","epoch":1594423503,"epoch_utc":null},{"commit":"1ad89c90d890039b817f65b2635db1b5e849a9e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 15:58:02 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add pacman","epoch":1594421882,"epoch_utc":null},{"commit":"fb71c7b020bc1eda9484595f30b0200a4f59aa45","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 15:49:35 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_cli.py"]},"message":"function name spelling","epoch":1594421375,"epoch_utc":null},{"commit":"28ed17ad3bce866e5dc0179ef5de43380ac6ace1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 15:45:21 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_cli.py"]},"message":"add parser_count test to test_cli_about_jc","epoch":1594421121,"epoch_utc":null},{"commit":"0c2a4e2bf71dca50d4a9bb27ca99944909c022ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 15:35:05 2020 -0700","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["tests/test_cli.py"]},"message":"add cli tests","epoch":1594420505,"epoch_utc":null},{"commit":"62bec30de2f1a303f2ec411d89f7f9f9c6d1abaf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 14:44:50 2020 -0700","stats":{"files_changed":1,"insertions":20,"deletions":0,"files":["tests/test_cli.py"]},"message":"add json_out tests","epoch":1594417490,"epoch_utc":null},{"commit":"3fced77e4e258dbf7db94a313e599c830a597b49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 12:23:48 2020 -0700","stats":{"files_changed":1,"insertions":98,"deletions":1,"files":["tests/test_cli.py"]},"message":"add set_env_colors tests","epoch":1594409028,"epoch_utc":null},{"commit":"a09d1d8b7687912610598c88d172733d5e29b1ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 12:23:25 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":6,"files":["jc/cli.py"]},"message":"move environment variable assignment to main() to simplify tests","epoch":1594409005,"epoch_utc":null},{"commit":"8f4243fbd8d70ca9fd019e984c564e37c81e07db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 10:54:34 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1594403674,"epoch_utc":null},{"commit":"47aaf20549ea238443427e69d5841d6996b7afab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 10:50:51 2020 -0700","stats":{"files_changed":1,"insertions":17,"deletions":0,"files":["README.md"]},"message":"add sysctl command parser","epoch":1594403451,"epoch_utc":null},{"commit":"0c5289ea50e4d3d35e80147b4cad32434c19a2a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 10:47:23 2020 -0700","stats":{"files_changed":3,"insertions":72,"deletions":2,"files":["tests/fixtures/freebsd12/sysctl-a.json","tests/fixtures/osx-10.14.6/sysctl-a.json","tests/test_sysctl.py"]},"message":"add sysctl tests","epoch":1594403243,"epoch_utc":null},{"commit":"3e53323514906fb84abfaeed0c2ee1fd9090ad8d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 09:58:56 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/sysctl.py"]},"message":"don't filter out empty lines","epoch":1594400336,"epoch_utc":null},{"commit":"a5ee9861b9b9b479aee59ea5b1d75f20d7c3c8e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 09:28:32 2020 -0700","stats":{"files_changed":3,"insertions":3785,"deletions":1,"files":["tests/fixtures/freebsd12/sysctl-a.json","tests/fixtures/freebsd12/sysctl-a.out","tests/fixtures/osx-10.14.6/sysctl-a.json"]},"message":"update fixtures","epoch":1594398512,"epoch_utc":null},{"commit":"feb8ca76545cba4fd0927273ddf90a77df994006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 09:28:20 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/sysctl.md"]},"message":"spelling","epoch":1594398500,"epoch_utc":null},{"commit":"a7abe4473b90c512466db9ae98cfac585689fe2a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 09:03:04 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/sysctl.py"]},"message":"spelling","epoch":1594396984,"epoch_utc":null},{"commit":"780b9b61dec3e142e46c9a82146d2af4e1144123","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 08:30:31 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/sysctl.py"]},"message":"specify IndexError exception in try/except block","epoch":1594395031,"epoch_utc":null},{"commit":"19ace36ffa659bedf0ba2e43572c9e253592b2e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 08:21:30 2020 -0700","stats":{"files_changed":4,"insertions":2167,"deletions":0,"files":["tests/fixtures/osx-10.14.6/sysctl-a.json","tests/fixtures/osx-10.14.6/sysctl-a.out","tests/fixtures/ubuntu-18.04/sysctl-a.json","tests/fixtures/ubuntu-18.04/sysctl-a.out"]},"message":"add fixtures","epoch":1594394490,"epoch_utc":null},{"commit":"5fff8afc9f47f8cc6db8ed3613b90b5cdc683b43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 08:21:15 2020 -0700","stats":{"files_changed":1,"insertions":33,"deletions":11,"files":["jc/parsers/sysctl.py"]},"message":"add fixes for freebsd where values can be on separate lines under the key","epoch":1594394475,"epoch_utc":null},{"commit":"4ad230c9279c5eb6c8ed6baf7254b8e9328e5af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 16:35:36 2020 -0700","stats":{"files_changed":4,"insertions":929,"deletions":14,"files":["docs/parsers/sysctl.md","jc/parsers/sysctl.py","tests/fixtures/centos-7.7/sysctl-a.json","tests/fixtures/centos-7.7/sysctl-a.out"]},"message":"doc update and add test fixtures","epoch":1594337736,"epoch_utc":null},{"commit":"dd98eb1ec8f451eb87a5094e76a7f758dee3fc69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 16:25:41 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":7,"files":["jc/parsers/sysctl.py"]},"message":"append duplicate key values to original key instead of adding unique keys","epoch":1594337141,"epoch_utc":null},{"commit":"c6baf42e72b4f41ed511e7db943297d03a39c0d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 16:18:33 2020 -0700","stats":{"files_changed":3,"insertions":94,"deletions":7,"files":["docgen.sh","docs/parsers/sysctl.md","jc/parsers/sysctl.py"]},"message":"doc updates","epoch":1594336713,"epoch_utc":null},{"commit":"e2bac97d563e5ef771ccd8ed1e5c42cbf588b120","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 14:51:15 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["jc/parsers/sysctl.py"]},"message":"fix for multiple identical keys in sysctl output","epoch":1594331475,"epoch_utc":null},{"commit":"d112ee94d0ec534828c8508d0fb833b768975990","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 14:26:35 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":4,"files":["jc/parsers/sysctl.py"]},"message":"use try/except and add support for floats in process()","epoch":1594329995,"epoch_utc":null},{"commit":"27b21b2fafab912f21b88b66c7f817cbce155765","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 11:11:29 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":7,"files":["jc/cli.py"]},"message":"formatting and docstring updates","epoch":1594318289,"epoch_utc":null},{"commit":"8c96d5cd20448a4f7f9736c4d489d6ecc3068ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 10:59:36 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["requirements.txt"]},"message":"reduce pygments version requirement","epoch":1594317576,"epoch_utc":null},{"commit":"c29ed3fd695f725005333db5e6e2cd844bb4ca14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 10:54:49 2020 -0700","stats":{"files_changed":1,"insertions":14,"deletions":13,"files":["jc/cli.py"]},"message":"formatting of quotation marks and docstrings","epoch":1594317289,"epoch_utc":null},{"commit":"cedf603f121636bdfa95432059c3c275c3ea3e9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 09:59:00 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/cli.py"]},"message":"minor formatting","epoch":1594313940,"epoch_utc":null},{"commit":"279161c36f288c27a9789054ae372fe8ceb58a94","merge":"bc7116c ce0b43d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 09:48:58 2020 -0700","message":"Merge pull request #72 from duelafn/pygments-2.3\n\nSupport older pygments","epoch":1594313338,"epoch_utc":null},{"commit":"ce0b43d919f07d96d1b94e9d14d03e935e80011d","author":"Dean Serenevy","author_email":"dean@serenevy.net","date":"Thu Jul 9 12:44:41 2020 -0400","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"]},"message":"Remove dependency on 3rd party packaging library","epoch":1594323881,"epoch_utc":null},{"commit":"ddafa5bf06066bab8e9587be902d6752fcf51605","author":"Dean Serenevy","author_email":"dean@serenevy.net","date":"Thu Jul 9 11:27:01 2020 -0400","stats":{"files_changed":2,"insertions":47,"deletions":7,"files":["jc/cli.py","setup.py"]},"message":"Support older pygments","epoch":1594319221,"epoch_utc":null},{"commit":"bc7116c31bacf3159aef775fd0e615187420b010","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 08:30:10 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":8,"files":["jc/cli.py"]},"message":"fix JC_COLORS env bug and simplify set_env_colors()","epoch":1594308610,"epoch_utc":null},{"commit":"53b709272115e769dac905296fa3b000c1cdd66a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 8 16:40:28 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":11,"files":["jc/cli.py"]},"message":"remove side-effects from functions and print in main()","epoch":1594251628,"epoch_utc":null},{"commit":"beb9174b1b35937ae1fb99778369ae643a8f1005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 8 15:42:06 2020 -0700","stats":{"files_changed":1,"insertions":123,"deletions":0,"files":["jc/parsers/sysctl.py"]},"message":"add sysctl parser","epoch":1594248126,"epoch_utc":null},{"commit":"aea41ed341c8d53cc07c35e8044e8f816ddd2fed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 8 15:41:46 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/cli.py"]},"message":"move verbose_debug enable earlier in code to catch more issues. add sysctl and version bump","epoch":1594248106,"epoch_utc":null},{"commit":"d789494cb1f691aa352419aaefc692f654477177","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 8 05:59:19 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/tracebackplus.py"]},"message":"change type check to use isinstance","epoch":1594213159,"epoch_utc":null},{"commit":"608e7b4cff081f92177e4151ffa1a91a4a6895ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 6 10:52:12 2020 -0700","stats":{"files_changed":1,"insertions":61,"deletions":0,"files":["jc/tracebackplus.py"]},"message":"add license info","epoch":1594057932,"epoch_utc":null},{"commit":"4ee199c02a78c2707c5d1427d7c8fae56df5671c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 6 10:41:01 2020 -0700","stats":{"files_changed":2,"insertions":189,"deletions":3,"files":["jc/cli.py","jc/tracebackplus.py"]},"message":"use tracebackplus instead of cgitb since cgitb is depricated","epoch":1594057261,"epoch_utc":null},{"commit":"fbf47d408501dadda4671fb530f5e11859e85d53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 1 13:28:58 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add arch linux","epoch":1593635338,"epoch_utc":null},{"commit":"5a238e4b4204f0552327534ef798c28d3ad4f578","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 1 09:11:32 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"remove updates-testing from fedora command","epoch":1593619892,"epoch_utc":null},{"commit":"f852b8246a8f9e5f7d9144fed3a0daa4eddfe035","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 11:50:37 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/utils.py"]},"message":"wrap warning message","epoch":1593543037,"epoch_utc":null},{"commit":"88140d929a500ee78f807862c4912c399df2a460","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 11:37:33 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"wrap error message in code","epoch":1593542253,"epoch_utc":null},{"commit":"45f726824027af49c437b6e81e4700f7098af320","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 11:34:08 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"add -dd to error message","epoch":1593542048,"epoch_utc":null},{"commit":"3a3c8e4d4a77135eaee5cb30c3107a4531c300ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 11:31:08 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/cli.py"]},"message":"move verbose_debug under debug check","epoch":1593541868,"epoch_utc":null},{"commit":"c1ac183a0472e93226c9ee1905f56c5183e3721f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 11:26:09 2020 -0700","stats":{"files_changed":1,"insertions":15,"deletions":22,"files":["jc/cli.py"]},"message":"simplify debug option","epoch":1593541569,"epoch_utc":null},{"commit":"18bb779ee5cd5821764b03173f16e922f753c64d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 09:39:05 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"formatting: double quotes to single quotes","epoch":1593535145,"epoch_utc":null},{"commit":"8b6612fe7911ab9e0bf8d29be60865d3b8aa3fd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 07:56:34 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/cli.py"]},"message":"move JC_COLORS parsing error message","epoch":1593528994,"epoch_utc":null},{"commit":"fde0bc853415418e01616861ace5048770bd97f8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jun 27 18:53:19 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":34,"files":["README.md"]},"message":"improve package install info","epoch":1593309199,"epoch_utc":null},{"commit":"e661a78939ff067b8a61f08301c178dd10a344ab","merge":"b969751 847e346","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jun 27 18:43:02 2020 -0700","message":"Merge pull request #71 from wigust/guix\n\nadd guix package info","epoch":1593308582,"epoch_utc":null},{"commit":"847e346602789bf58e3515319e9d080dfb897fc9","author":"Oleg Pykhalov","author_email":"go.wigust@gmail.com","date":"Sat Jun 27 12:58:59 2020 +0300","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]},"message":"add guix package info","epoch":1593287939,"epoch_utc":null},{"commit":"b9697516887c61f08d8d7b1dc9130350e5bdba9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 26 09:53:57 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]},"message":"add other references","epoch":1593190437,"epoch_utc":null},{"commit":"ad6f2ba03a293a7f55e456fa5f5b55ee3cbcd4ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 21:16:52 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1593145012,"epoch_utc":null},{"commit":"63c6a5edc0e9001b143595fd8b96f1b4a1377a3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 21:12:30 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"formatting","epoch":1593144750,"epoch_utc":null},{"commit":"9f4cf9dd5efe94adfff0961fdb73097ca27c5463","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 21:11:21 2020 -0700","stats":{"files_changed":1,"insertions":197,"deletions":67,"files":["README.md"]},"message":"formatting","epoch":1593144681,"epoch_utc":null},{"commit":"51331b6dc01eee00847fa4be549ffde365373a01","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 13:01:10 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["README.md"]},"message":"formatting","epoch":1593115270,"epoch_utc":null},{"commit":"efb6761033319644bf9cdae6288ff5609f6482ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 12:59:56 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1593115196,"epoch_utc":null},{"commit":"6a4f737a0f1c322bebccf69809d9816fc770c5ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 12:56:06 2020 -0700","stats":{"files_changed":1,"insertions":88,"deletions":115,"files":["README.md"]},"message":"update json syntax highlighting","epoch":1593114966,"epoch_utc":null},{"commit":"be6864b778ab721bcba5fc3221576153be7b2ed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 12:28:23 2020 -0700","stats":{"files_changed":1,"insertions":26,"deletions":26,"files":["README.md"]},"message":"add syntax highlighting tags","epoch":1593113303,"epoch_utc":null},{"commit":"de3b91a36cfcaf565b26b1da42f1e87835da4dc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 07:38:39 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add -dd option","epoch":1593095919,"epoch_utc":null},{"commit":"ef5482c3b5afa0ee8e85851bebab1c104cb59936","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 07:29:28 2020 -0700","stats":{"files_changed":3,"insertions":15,"deletions":7,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"add verbose debug option","epoch":1593095368,"epoch_utc":null},{"commit":"d20b795137036f8b889eb231cb4f14b756ec6479","merge":"69018cd 8a13406","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 11:28:23 2020 -0700","message":"Merge pull request #70 from kellyjonbrazil/dev\n\nDev v1.11.7","epoch":1592850503,"epoch_utc":null},{"commit":"8a134065dff429551449c1ea16a36d745fdab580","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 11:23:37 2020 -0700","stats":{"files_changed":12,"insertions":12,"deletions":12,"files":["tests/fixtures/centos-7.7/iptables-filter-line-numbers.json","tests/fixtures/centos-7.7/iptables-filter-nv.json","tests/fixtures/centos-7.7/iptables-filter.json","tests/fixtures/centos-7.7/iptables-mangle.json","tests/fixtures/centos-7.7/iptables-nat.json","tests/fixtures/centos-7.7/iptables-raw.json","tests/fixtures/ubuntu-18.04/iptables-filter-line-numbers.json","tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","tests/fixtures/ubuntu-18.04/iptables-filter.json","tests/fixtures/ubuntu-18.04/iptables-mangle.json","tests/fixtures/ubuntu-18.04/iptables-nat.json","tests/fixtures/ubuntu-18.04/iptables-raw.json"]},"message":"update fixtures for last chain fix","epoch":1592850217,"epoch_utc":null},{"commit":"22aee1bfa40ed1d3c4df28cd934ef0edfc5c458c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 11:23:15 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1592850195,"epoch_utc":null},{"commit":"b282820fd67dcc96c058198f97b066e7b402d1f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 11:09:09 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/iptables.py"]},"message":"fix to include the final chain in output","epoch":1592849349,"epoch_utc":null},{"commit":"3ee098306daf903687cb0febf92773a81e216111","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 10:48:51 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"]},"message":"version bump","epoch":1592848131,"epoch_utc":null},{"commit":"09e8f379a64b3b37bb99b4291c10aa4a5cdedea4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 10:47:34 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":11,"files":["jc/parsers/iptables.py"]},"message":"iptables code optimizations","epoch":1592848054,"epoch_utc":null},{"commit":"69018cdb3a77fcdcb5648e3b89933148c55a6412","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 14 17:39:14 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"fix date","epoch":1592181554,"epoch_utc":null},{"commit":"d0d7254c6acc7be4341618d231a5b166f640b287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 14 17:23:10 2020 -0700","stats":{"files_changed":2,"insertions":26,"deletions":0,"files":["docs/utils.md","jc/utils.py"]},"message":"add docstring","epoch":1592180590,"epoch_utc":null},{"commit":"cc0f0971d76b6f3dec8d989e83f5676db8f2c6d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 14 17:17:40 2020 -0700","stats":{"files_changed":56,"insertions":476,"deletions":439,"files":["changelog.txt","jc/cli.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/utils.py","setup.py"]},"message":"Improve and standardize empty data check for all parsers","epoch":1592180260,"epoch_utc":null},{"commit":"2af61730f0f5b9bc6f1f4c5d9d808ff6ccb0faeb","merge":"07b179c 83f41b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 12 12:34:34 2020 -0700","message":"Merge pull request #68 from kellyjonbrazil/dev\n\nDev v1.11.5","epoch":1591990474,"epoch_utc":null},{"commit":"83f41b83dc01c462c6a2295e9fc56ad42a3b62f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 12 12:30:19 2020 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1591990219,"epoch_utc":null},{"commit":"1fb84fce88e0306c26a5771fa4c6dc14a21409a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 12 12:25:07 2020 -0700","stats":{"files_changed":16,"insertions":137,"deletions":67,"files":["changelog.txt","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/xml.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py","tests/test_timedatectl.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py","tests/test_who.py","tests/test_xml.py","tests/test_yaml.py"]},"message":"fix for no data","epoch":1591989907,"epoch_utc":null},{"commit":"a8837e12447c52dbe438b19c07777b9b4a22081c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 12 07:57:40 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"remove --upgrade from pip install","epoch":1591973860,"epoch_utc":null},{"commit":"04d2eec5581998d1a80e762b670af76c92111065","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 11 17:59:06 2020 -0700","stats":{"files_changed":6,"insertions":56,"deletions":30,"files":["changelog.txt","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","tests/test_stat.py","tests/test_systemctl.py","tests/test_systemctl_lj.py"]},"message":"fix for no data","epoch":1591923546,"epoch_utc":null},{"commit":"1b57ec92f052ddc8959540511512190a539262b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 11 17:52:03 2020 -0700","stats":{"files_changed":21,"insertions":152,"deletions":68,"files":["changelog.txt","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/pip_list.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","tests/fixtures/centos-7.7/ss-sudo-a.json","tests/fixtures/ubuntu-18.04/ss-sudo-a.json","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_ntpq.py","tests/test_passwd.py","tests/test_pip_list.py","tests/test_pip_show.py","tests/test_ps.py","tests/test_route.py","tests/test_shadow.py","tests/test_ss.py"]},"message":"fix for no data","epoch":1591923123,"epoch_utc":null},{"commit":"4d8859540417e99e273fda2cea959240f3c37ea3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 11 17:16:11 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/df.py"]},"message":"enhance empty data check","epoch":1591920971,"epoch_utc":null},{"commit":"52b1272a3aab09b5a8c4a277fbf9975a1b8b6921","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 11 17:13:45 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/blkid.py"]},"message":"enhance empty data check","epoch":1591920825,"epoch_utc":null},{"commit":"d2ccad6a83138fbf6eb863634fd354dc6c3fa238","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 11 17:09:51 2020 -0700","stats":{"files_changed":4,"insertions":33,"deletions":15,"files":["jc/parsers/lsblk.py","jc/parsers/lsmod.py","tests/test_lsblk.py","tests/test_lsmod.py"]},"message":"fix for no data","epoch":1591920591,"epoch_utc":null},{"commit":"cad6dde4ac66cf970a7f52d8e7958ea35c083629","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:54:06 2020 -0700","stats":{"files_changed":10,"insertions":60,"deletions":0,"files":["tests/test_group.py","tests/test_gshadow.py","tests/test_history.py","tests/test_hosts.py","tests/test_id.py","tests/test_ifconfig.py","tests/test_ini.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_last.py"]},"message":"fix for no data","epoch":1591836846,"epoch_utc":null},{"commit":"06811c3539b0d871e13e9b8d3b51f731d06fd2ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:41:54 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_fstab.py"]},"message":"add test for no data","epoch":1591836114,"epoch_utc":null},{"commit":"0cb23c2b21f464082609409261de8e95eb1b0d55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:40:18 2020 -0700","stats":{"files_changed":3,"insertions":17,"deletions":7,"files":["changelog.txt","jc/parsers/free.py","tests/test_free.py"]},"message":"add fix for no data","epoch":1591836018,"epoch_utc":null},{"commit":"ac4688dca22334385ec2c87027f2f14f9ca93ce4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:35:40 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_file.py"]},"message":"add test for no data","epoch":1591835740,"epoch_utc":null},{"commit":"326c3b4670a0e47cbe2988b38fb1c1b26a4db890","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:34:22 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_env.py"]},"message":"add test for no data","epoch":1591835662,"epoch_utc":null},{"commit":"9b29d0c2688eda2e4707aeba693ed14fa433a706","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:32:39 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_du.py"]},"message":"add test for no data","epoch":1591835559,"epoch_utc":null},{"commit":"e0013c38710b4ecf3a588a16d1d908effc23b485","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:31:14 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["tests/test_dmidecode.py"]},"message":"add test for no data","epoch":1591835474,"epoch_utc":null},{"commit":"a75744075b0628bdb711d8a929a759b4b4067edb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:29:41 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_dig.py"]},"message":"add no data test","epoch":1591835381,"epoch_utc":null},{"commit":"525aec1a02380f17ab7827434616f981f7457bd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:27:46 2020 -0700","stats":{"files_changed":3,"insertions":16,"deletions":7,"files":["changelog.txt","jc/parsers/df.py","tests/test_df.py"]},"message":"fix for no data","epoch":1591835266,"epoch_utc":null},{"commit":"0bf9a7a072a80e10a29c6bb3943b107352dc1d45","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:22:59 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_csv.py"]},"message":"add test for no data","epoch":1591834979,"epoch_utc":null},{"commit":"d8f2f4c95bc699386b9fe93d10e13637875a1dcf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:20:09 2020 -0700","stats":{"files_changed":5,"insertions":96,"deletions":80,"files":["changelog.txt","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/test_crontab.py","tests/test_crontab_u.py"]},"message":"fix for no data","epoch":1591834809,"epoch_utc":null},{"commit":"35d733b44f3705bed3dd8ce340379470f199f772","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:10:53 2020 -0700","stats":{"files_changed":5,"insertions":70,"deletions":60,"files":["changelog.txt","jc/parsers/arp.py","jc/parsers/blkid.py","tests/test_arp.py","tests/test_blkid.py"]},"message":"fix for no data","epoch":1591834253,"epoch_utc":null},{"commit":"9179b4175c5063bed14ecb96ba24c517920c0d94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 16:40:11 2020 -0700","stats":{"files_changed":3,"insertions":16,"deletions":0,"files":["changelog.txt","tests/test_airport.py","tests/test_airport_s.py"]},"message":"add nodata tests","epoch":1591832411,"epoch_utc":null},{"commit":"bb07d78c78ff5c5b2ee4d2086ffc6dd5ebedf0fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 16:39:49 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":8,"files":["jc/parsers/airport_s.py"]},"message":"add nodata fix","epoch":1591832389,"epoch_utc":null},{"commit":"07b179cd7f8853ff6aca0b27a703e198c158ca72","merge":"12a80e7 054422d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 06:07:42 2020 -0700","message":"Merge pull request #67 from kellyjonbrazil/Dev\n\nDev v1.11.4","epoch":1591794462,"epoch_utc":null},{"commit":"054422d8373e7b8def18ddabd447062cb9cc3137","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 06:04:50 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_ls.py"]},"message":"add test for empty directory","epoch":1591794290,"epoch_utc":null},{"commit":"3e052d18102e98a09cbba21866855691eaccc216","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 05:53:20 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1591793600,"epoch_utc":null},{"commit":"c8e72805cf9def478b56c925f4afcc0ece1daac0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 05:51:12 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":10,"files":["jc/parsers/ls.py"]},"message":"fix error on empty directory","epoch":1591793472,"epoch_utc":null},{"commit":"12a80e7db0f6c7d536674ad8d34e26bba9a1f1f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 9 15:13:53 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":2,"files":["README.md"]},"message":"add fedora package info","epoch":1591740833,"epoch_utc":null},{"commit":"ee7ff9a09d3373f60ae1645376ccc0057803147e","merge":"346a14c f6478fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 9 11:22:39 2020 -0700","message":"Merge pull request #66 from kellyjonbrazil/dev\n\nDev v1.11.3","epoch":1591726959,"epoch_utc":null},{"commit":"f6478fb636ead8d1e53e4a88d59e55222df37a8f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 9 11:18:47 2020 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1591726727,"epoch_utc":null},{"commit":"811a0b0495819925199d70db266066197cc6824e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 8 10:54:42 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add info regarding the local parser plugin files","epoch":1591638882,"epoch_utc":null},{"commit":"aeb48edf727f23cc4f8fd9b760cfb69f03098278","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 8 10:48:58 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"use $LOCALAPPDATA variable for windows","epoch":1591638538,"epoch_utc":null},{"commit":"b1e94f0df7041bcae97455508f423178aef9d61d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 8 10:44:09 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"heading formatting","epoch":1591638249,"epoch_utc":null},{"commit":"60050e3c0fe34980f7db5b8bd46430f953f0c3a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 8 10:42:45 2020 -0700","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["README.md"]},"message":"fix linux/unix directory and add note about the XDG specification followed","epoch":1591638165,"epoch_utc":null},{"commit":"39ef09aa5b0d43b5128299511afe80336aa38203","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 13:30:22 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"]},"message":"add local parser plugin feature","epoch":1591561822,"epoch_utc":null},{"commit":"8377d4311611c242e16eaebe66dafac9529150d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 13:26:03 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1591561563,"epoch_utc":null},{"commit":"54e4c447ab34ae54c73c92df40f1b4ca6ffb2277","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:52:16 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"]},"message":"clean up formatting","epoch":1591559536,"epoch_utc":null},{"commit":"937a9fa9cf2ede8e686ba853989f33e4a483a0ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:41:50 2020 -0700","stats":{"files_changed":4,"insertions":613,"deletions":3,"files":["jc/appdirs.py","jc/cli.py","requirements.txt","setup.py"]},"message":"vendorize appdirs module","epoch":1591558910,"epoch_utc":null},{"commit":"808ff6cf0e784cf0c2d523ff2e01197cb6e88c82","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:29:10 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["README.md"]},"message":"more acknowledgments updates","epoch":1591558150,"epoch_utc":null},{"commit":"7f5c649a95a871c3cd8d48731a6d26dcba6f725b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:23:28 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update acknowledgments","epoch":1591557808,"epoch_utc":null},{"commit":"b72727dec995de1ca5f68ee17a710b086c87d612","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:13:40 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":2,"files":["README.md"]},"message":"update custom parsers info","epoch":1591557220,"epoch_utc":null},{"commit":"3fc88bfb334143b68a9cb78d4034f33e7c0bcf76","merge":"346a14c 9f2279d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:04:44 2020 -0700","message":"Merge pull request #65 from duelafn/local-parsers\n\nLoad custom parsers from /jc/jcparsers","epoch":1591556684,"epoch_utc":null},{"commit":"9f2279d5867eb89d4b4b7b4ffca290166ec97c48","author":"Dean Serenevy","author_email":"dean@serenevy.net","date":"Sat Jun 6 14:30:40 2020 -0400","stats":{"files_changed":4,"insertions":29,"deletions":2,"files":["README.md","jc/cli.py","requirements.txt","setup.py"]},"message":"Load custom parsers from /jc/jcparsers","epoch":1591479040,"epoch_utc":null},{"commit":"346a14cb9bb0d762fc3fa366ad97e5ff85f3992a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:44:14 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"change osx_device to unix_device","epoch":1590896654,"epoch_utc":null},{"commit":"dac00d17ff9f3d2bb959697b6e567015bfc2702b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:33:50 2020 -0700","stats":{"files_changed":3,"insertions":17,"deletions":0,"files":["tests/fixtures/nixos/route-ee.json","tests/fixtures/nixos/route-ee.out","tests/test_route.py"]},"message":"add nixos test","epoch":1590896030,"epoch_utc":null},{"commit":"9ca7cd40601b97829e8f88071fdfb928d939f7e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:33:39 2020 -0700","stats":{"files_changed":1,"insertions":17,"deletions":34,"files":["jc/parsers/route.py"]},"message":"update docs","epoch":1590896019,"epoch_utc":null},{"commit":"aa31628970b12295a41dff20e829fcce9f8a4d07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:33:00 2020 -0700","stats":{"files_changed":5,"insertions":70,"deletions":63,"files":["README.md","docs/parsers/netstat.md","docs/parsers/route.md","docs/parsers/stat.md","jc/parsers/netstat.py"]},"message":"update docs","epoch":1590895980,"epoch_utc":null},{"commit":"bed694fcf5c8c31bbd4f3e88759fe7ab82382d24","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:13:21 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump","epoch":1590894801,"epoch_utc":null},{"commit":"4b4af69fa184896ec15b5be7dc8416f36f921d5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:12:51 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"fix date","epoch":1590894771,"epoch_utc":null},{"commit":"9d96190a5b19e8d71c3ac66eb0303d269dd4ce5d","merge":"96df396 fa44d48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:08:32 2020 -0700","message":"Merge pull request #64 from kellyjonbrazil/dev\n\nDev v1.11.2","epoch":1590894512,"epoch_utc":null},{"commit":"fa44d48c094a55e499c2c780d109bf277736b42e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 19:50:38 2020 -0700","stats":{"files_changed":6,"insertions":129,"deletions":7,"files":["changelog.txt","jc/parsers/stat.py","tests/fixtures/freebsd12/stat.json","tests/fixtures/freebsd12/stat.out","tests/fixtures/osx-10.14.6/stat.json","tests/test_stat.py"]},"message":"freebsd fixes, tests, and fixtures","epoch":1590893438,"epoch_utc":null},{"commit":"4ef961c2788c935b1fea1c9777b976e7b89e7367","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 19:18:01 2020 -0700","stats":{"files_changed":3,"insertions":20,"deletions":0,"files":["tests/fixtures/freebsd12/ntpq-p.json","tests/fixtures/freebsd12/ntpq-p.out","tests/test_ntpq.py"]},"message":"add freebsd test and fixtures","epoch":1590891481,"epoch_utc":null},{"commit":"292a837d5c47165ccb155f079b0a114b5c17a98e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 18:54:09 2020 -0700","stats":{"files_changed":3,"insertions":22,"deletions":0,"files":["tests/fixtures/freebsd12/last.json","tests/fixtures/freebsd12/last.out","tests/test_last.py"]},"message":"add tests and fixtures for freebsd12","epoch":1590890049,"epoch_utc":null},{"commit":"aa7b915d847dbd29d2c09b2cc40b847e37174ffb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 18:53:46 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/last.py"]},"message":"version bump","epoch":1590890026,"epoch_utc":null},{"commit":"c46fe73236b912d2ee89dfb36ff259fe95fd0479","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 18:53:35 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"add last fixes for freebsd","epoch":1590890015,"epoch_utc":null},{"commit":"039b2c129cbe79d2d23b1194b043d8b730609956","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 18:42:26 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":1,"files":["jc/parsers/last.py"]},"message":"freebsd fixes","epoch":1590889346,"epoch_utc":null},{"commit":"8f2e5e4808b30c658a4cb87125639e4d7d6c15d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 17:46:09 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"fix compatible logic","epoch":1590885969,"epoch_utc":null},{"commit":"c4da8e4f78e6b4aaa4aff76ae042be9aaec832a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 17:05:41 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":3,"files":["README.md"]},"message":"add nixos and freebsd to tested. update new arp fields","epoch":1590883541,"epoch_utc":null},{"commit":"bcab9078a4c2bfd6ae4dca9448b577d9ed0fc01c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 17:02:09 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"add w parser fix","epoch":1590883329,"epoch_utc":null},{"commit":"b3c6c1ea925bf7cd76368f5074fb8af52a844522","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 17:01:59 2020 -0700","stats":{"files_changed":4,"insertions":29,"deletions":5,"files":["jc/parsers/w.py","tests/fixtures/nixos/w.json","tests/fixtures/nixos/w.out","tests/test_w.py"]},"message":"strip whitespace in string fields and add tests","epoch":1590883319,"epoch_utc":null},{"commit":"a3af8662bd491e344c93d24afabd23e90efd8086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 16:26:07 2020 -0700","stats":{"files_changed":3,"insertions":205,"deletions":3,"files":["tests/fixtures/osx-10.11.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a2.json"]},"message":"add permanent field","epoch":1590881167,"epoch_utc":null},{"commit":"35940d0bc80bf61b11f40b1e1043835f26eb391c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 16:25:53 2020 -0700","stats":{"files_changed":6,"insertions":59,"deletions":4,"files":["changelog.txt","docs/parsers/arp.md","jc/parsers/arp.py","tests/fixtures/freebsd12/arp-a.json","tests/fixtures/freebsd12/arp-a.out","tests/test_arp.py"]},"message":"add freebsd permanent and expires fields","epoch":1590881153,"epoch_utc":null},{"commit":"26994cdcb7148d2c9d1701bca9541d247356260b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:51:54 2020 -0700","stats":{"files_changed":8,"insertions":115,"deletions":85,"files":["docs/parsers/df.md","docs/parsers/fstab.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/route.md","docs/parsers/stat.md","docs/parsers/uname.md"]},"message":"add freebsd compatibility info","epoch":1590879114,"epoch_utc":null},{"commit":"017159a829691cb6a7174f123d024eb252179b75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:51:06 2020 -0700","stats":{"files_changed":15,"insertions":221,"deletions":0,"files":["tests/fixtures/freebsd12/netstat-Aa.json","tests/fixtures/freebsd12/netstat-AaT.json","tests/fixtures/freebsd12/netstat-AaT.out","tests/fixtures/freebsd12/netstat-AanP.json","tests/fixtures/freebsd12/netstat-AanP.out","tests/fixtures/freebsd12/netstat-Aax.json","tests/fixtures/freebsd12/netstat-Aax.out","tests/fixtures/freebsd12/netstat-aT.json","tests/fixtures/freebsd12/netstat-aT.out","tests/fixtures/freebsd12/netstat-an.json","tests/fixtures/freebsd12/netstat-i.json","tests/fixtures/freebsd12/netstat-ib.json","tests/fixtures/freebsd12/netstat-ib.out","tests/fixtures/freebsd12/netstat-r.json","tests/test_netstat.py"]},"message":"add freebsd nestat tests and fixtures","epoch":1590879066,"epoch_utc":null},{"commit":"b4e9c85e08d199dad67f03c7603194278a022696","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:50:45 2020 -0700","stats":{"files_changed":1,"insertions":12,"deletions":0,"files":["jc/parsers/netstat_freebsd_osx.py"]},"message":"fixup -T freebsd output and add whitespace stripping to parse_post","epoch":1590879045,"epoch_utc":null},{"commit":"189146cd84cfad262f2b2601bb0cb4b9dde2587e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:50:07 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/netstat.py"]},"message":"add more ints. remove whitespace strip code and move to freebsd_osx module","epoch":1590879007,"epoch_utc":null},{"commit":"af34153ffab10ca1ad7f44736d379d91ae43c813","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:48:56 2020 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["changelog.txt","jc/cli.py"]},"message":"version bump","epoch":1590878936,"epoch_utc":null},{"commit":"bf2ff3ffbb639446779b1f04f2997707d99c0a1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:48:29 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":1,"files":["jc/utils.py"]},"message":"fix compatibility search for platform names that append the version number (e.g. freebsd12)","epoch":1590878909,"epoch_utc":null},{"commit":"6423c9efd69e938af38934a97ca6b65009e8f07e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 15:48:51 2020 -0700","stats":{"files_changed":1,"insertions":34,"deletions":5,"files":["jc/parsers/netstat.py"]},"message":"integer and float updates","epoch":1590792531,"epoch_utc":null},{"commit":"58ab0d4ece7f006ce9431afb9e0fecbe60930be7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 15:14:44 2020 -0700","stats":{"files_changed":4,"insertions":12,"deletions":4,"files":["changelog.txt","jc/parsers/netstat.py","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json"]},"message":"strip whitespace from string fields","epoch":1590790484,"epoch_utc":null},{"commit":"83a738bf4d756036d6269b9153220d7f1018ac9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 14:16:11 2020 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json"]},"message":"update fixtures for osx_flags and osx_inode name change to unix_flags and unix_inode","epoch":1590786971,"epoch_utc":null},{"commit":"3640671fc6a67c9628fd47e19e9fe0a0738439ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 14:15:28 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/{netstat_osx.py => netstat_freebsd_osx.py}"]},"message":"rename module","epoch":1590786928,"epoch_utc":null},{"commit":"1da623b30ef6f9b12ac231518d2d4e7dadcf717b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 14:14:48 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["changelog.txt"]},"message":"add items","epoch":1590786888,"epoch_utc":null},{"commit":"b10ca64646e93d9797182ea046f4956a17b37627","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 14:14:37 2020 -0700","stats":{"files_changed":1,"insertions":71,"deletions":71,"files":["jc/parsers/netstat.py"]},"message":"change osx_inode and osx_flags to unix_inode and unix_flags. Also rename netstat_osx module to netstat_freebsd_osx","epoch":1590786877,"epoch_utc":null},{"commit":"2128763ee67a07da6ebf123abeec39794bc1f4e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 13:25:19 2020 -0700","stats":{"files_changed":1,"insertions":12,"deletions":12,"files":["tests/test_netstat.py"]},"message":"fix osx version from 16.4 to 14.6","epoch":1590783919,"epoch_utc":null},{"commit":"a27e7ed39c63c04cfa78caceaada42f7a9496a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 13:24:52 2020 -0700","stats":{"files_changed":12,"insertions":12,"deletions":12,"files":["tests/fixtures/centos-7.7/netstat-r.json","tests/fixtures/centos-7.7/netstat-rne.json","tests/fixtures/centos-7.7/netstat-rnee.json","tests/fixtures/centos-7.7/route-vn.json","tests/fixtures/centos-7.7/route.json","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-rnl.json","tests/fixtures/ubuntu-18.04/netstat-r.json","tests/fixtures/ubuntu-18.04/netstat-rne.json","tests/fixtures/ubuntu-18.04/netstat-rnee.json","tests/fixtures/ubuntu-18.04/route-vn.json","tests/fixtures/ubuntu-18.04/route.json"]},"message":"test updates for added route_flags_pretty and flags_pretty fields","epoch":1590783892,"epoch_utc":null},{"commit":"f07b7eaa474eb87dbdbc7fbe41b9386feff7bee2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 12:55:16 2020 -0700","stats":{"files_changed":1,"insertions":38,"deletions":12,"files":["jc/parsers/route.py"]},"message":"add flags_pretty","epoch":1590782116,"epoch_utc":null},{"commit":"6ce18de84ce16a926f9cd97c3210ef209c3352da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 12:51:04 2020 -0700","stats":{"files_changed":3,"insertions":130,"deletions":69,"files":["jc/parsers/netstat.py","jc/parsers/netstat_linux.py","jc/parsers/netstat_osx.py"]},"message":"add route_flags_pretty","epoch":1590781864,"epoch_utc":null},{"commit":"8631b756e7ab8cd71c2a3eb288e2d1823cec5782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 12:05:46 2020 -0700","stats":{"files_changed":4,"insertions":76,"deletions":0,"files":["tests/fixtures/freebsd12/netstat-Aa.out","tests/fixtures/freebsd12/netstat-an.out","tests/fixtures/freebsd12/netstat-i.out","tests/fixtures/freebsd12/netstat-r.out"]},"message":"add freebsd test files","epoch":1590779146,"epoch_utc":null},{"commit":"7414d984125300164a5b6156d7a80128d4d6cb15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 12:05:34 2020 -0700","stats":{"files_changed":6,"insertions":18,"deletions":18,"files":["jc/parsers/df.py","jc/parsers/fstab.py","jc/parsers/mount.py","jc/parsers/ntpq.py","jc/parsers/stat.py","jc/parsers/uname.py"]},"message":"add freebsd compatibility","epoch":1590779134,"epoch_utc":null},{"commit":"d7b19892e8fb11e17fcbadcdbb08d49897d7754f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 12:04:58 2020 -0700","stats":{"files_changed":2,"insertions":10,"deletions":7,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"]},"message":"add freebsd support for netstat -i","epoch":1590779098,"epoch_utc":null},{"commit":"96df396eaf4e030113005a95e525d644c394dfe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 07:35:25 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1590762925,"epoch_utc":null},{"commit":"2f6f640317da5af894f34f187c4243ef0c599d07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 27 17:11:20 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"spelling","epoch":1590624680,"epoch_utc":null},{"commit":"c4a0a50f3a3ac5833ab5d2f8a0cb3f18da335812","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 27 17:08:54 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]},"message":"add nix-env","epoch":1590624534,"epoch_utc":null},{"commit":"658f8a3842273cea049689b3aea15d89a7294b24","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 27 14:58:16 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":3,"files":["README.md"]},"message":"add zypper and ports info","epoch":1590616696,"epoch_utc":null},{"commit":"bfb876a1e394ff63c6773965ba0b65da4e109c1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 27 09:52:13 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1590598333,"epoch_utc":null},{"commit":"90c34b1f4ee2d9ec8125346bb90b227f76ada2ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 26 17:31:56 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"fix dmidecode example","epoch":1590539516,"epoch_utc":null},{"commit":"3f9164ea77ec41e1b0671d0a642900d8e36faf9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 23 21:11:17 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"bold formatting","epoch":1590293477,"epoch_utc":null},{"commit":"7fd6fecbf5a08b1f13aa7e906e94be9bc126780a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 23 21:09:49 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1590293389,"epoch_utc":null},{"commit":"8029f72363a4d19938df07603f03a0147f6246a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 23 21:09:40 2020 -0700","stats":{"files_changed":6,"insertions":10,"deletions":7,"files":["changelog.txt","docs/parsers/stat.md","jc/cli.py","jc/parsers/stat.py","setup.py","tests/fixtures/osx-10.14.6/stat.json"]},"message":"change osx_flags from integer to string","epoch":1590293380,"epoch_utc":null},{"commit":"c7fdce5d3b7566a7d290627767c47d9c196e02ad","merge":"f5627a4 84f48aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 16:37:50 2020 -0700","message":"Merge pull request #62 from kellyjonbrazil/dev\n\nDev v1.11.0","epoch":1590190670,"epoch_utc":null},{"commit":"84f48aa369a458f534523ecc1e3aaaf403d06f1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 16:30:22 2020 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1590190222,"epoch_utc":null},{"commit":"2e9a0a9c1221dd01bd683ecbc4871d03738da671","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 16:21:55 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["changelog.txt"]},"message":"add features","epoch":1590189715,"epoch_utc":null},{"commit":"c1f6f2b9508e558ab88b4a0a61e93a6cf5460bea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 16:21:40 2020 -0700","stats":{"files_changed":5,"insertions":116,"deletions":4,"files":["docs/parsers/stat.md","jc/parsers/stat.py","tests/fixtures/osx-10.14.6/stat.json","tests/fixtures/osx-10.14.6/stat.out","tests/test_stat.py"]},"message":"osx fixes and tests","epoch":1590189700,"epoch_utc":null},{"commit":"ede21bca13c4b46899721f01d979c8b063f861a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 16:05:04 2020 -0700","stats":{"files_changed":1,"insertions":110,"deletions":78,"files":["jc/parsers/stat.py"]},"message":"add OSX support for stat","epoch":1590188704,"epoch_utc":null},{"commit":"8dd9a9f9cbc70a19176f909f6ac76b2bcf670736","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 15:12:10 2020 -0700","stats":{"files_changed":5,"insertions":45,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-i.json","tests/fixtures/osx-10.14.6/netstat-i.json","tests/fixtures/ubuntu-18.04/netstat-i.json","tests/fixtures/ubuntu-18.04/netstat-i.out","tests/test_netstat.py"]},"message":"add netstat -i tests","epoch":1590185530,"epoch_utc":null},{"commit":"04f92cd1330759e4bad1c0304b9e1c28e8d32d59","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 14:04:11 2020 -0700","stats":{"files_changed":5,"insertions":166,"deletions":4,"files":["README.md","docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_linux.py","tests/fixtures/centos-7.7/netstat-i.out"]},"message":"add linux support for netstat -i","epoch":1590181451,"epoch_utc":null},{"commit":"8be8d2393b276a9249e1c573ce19cf630f0942fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 13:38:25 2020 -0700","stats":{"files_changed":3,"insertions":99,"deletions":3,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-i.out"]},"message":"add netstat -i support for OSX","epoch":1590179905,"epoch_utc":null},{"commit":"0a879681be68fe2e6e5c013ab0fe18de99b04f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 12:56:27 2020 -0700","stats":{"files_changed":3,"insertions":97,"deletions":282,"files":["README.md","docs/parsers/netstat.md","jc/parsers/netstat.py"]},"message":"add netstat -r to docs","epoch":1590177387,"epoch_utc":null},{"commit":"2ca1587a49511899bf719e0b0c7de32158fc491d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 12:44:51 2020 -0700","stats":{"files_changed":10,"insertions":102,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-r.json","tests/fixtures/centos-7.7/netstat-rne.json","tests/fixtures/centos-7.7/netstat-rnee.json","tests/fixtures/ubuntu-18.04/netstat-r.json","tests/fixtures/ubuntu-18.04/netstat-r.out","tests/fixtures/ubuntu-18.04/netstat-rne.json","tests/fixtures/ubuntu-18.04/netstat-rne.out","tests/fixtures/ubuntu-18.04/netstat-rnee.json","tests/fixtures/ubuntu-18.04/netstat-rnee.out","tests/test_netstat.py"]},"message":"add linux netstat -r tests","epoch":1590176691,"epoch_utc":null},{"commit":"ec2cd2d708a57c0458657416bedcb4340cb40901","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 12:00:26 2020 -0700","stats":{"files_changed":9,"insertions":70,"deletions":11,"files":["docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_linux.py","jc/parsers/netstat_osx.py","tests/fixtures/centos-7.7/netstat-r.out","tests/fixtures/centos-7.7/netstat-rne.out","tests/fixtures/centos-7.7/netstat-rnee.out","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-rnl.json"]},"message":"add netstat -r support for linux","epoch":1590174026,"epoch_utc":null},{"commit":"5d0dbece9317e84a47d9f4b2d18a9ffa33fbee6e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 11:09:41 2020 -0700","stats":{"files_changed":8,"insertions":288,"deletions":5,"files":["docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-r.out","tests/fixtures/osx-10.14.6/netstat-rnl.json","tests/fixtures/osx-10.14.6/netstat-rnl.out","tests/test_netstat.py"]},"message":"add netstat -r functionality for OSX","epoch":1590170981,"epoch_utc":null},{"commit":"df1e4b414b2bda5be3153767cd854b2483ba600b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 08:00:18 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":[".gitignore"]},"message":"remove unused folder","epoch":1590159618,"epoch_utc":null},{"commit":"40760991e7dae43cd15134310f7bbb5ce0f58dae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 07:51:47 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["LICENSE.md"]},"message":"update copyright date","epoch":1590159107,"epoch_utc":null},{"commit":"464f5f86cf2c8fe6a1a857b0ad4d221a3edf3d88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 07:50:22 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"update description","epoch":1590159022,"epoch_utc":null},{"commit":"7b09e9fccdd4f09218a500b54c898ada1b9843c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 21 17:01:17 2020 -0700","stats":{"files_changed":5,"insertions":8,"deletions":5,"files":["docs/parsers/dmidecode.md","jc/parsers/dmidecode.py","tests/fixtures/centos-7.7/dmidecode.json","tests/fixtures/fedora32/dmidecode.json","tests/fixtures/ubuntu-18.04/dmidecode.json"]},"message":"set empty values to Null and update fixtures","epoch":1590105677,"epoch_utc":null},{"commit":"6cba7d429898d331c674c778f8bd85ba75a8dca9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 21 11:10:00 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"remove linux from description","epoch":1590084600,"epoch_utc":null},{"commit":"9730f62e4970b5a4490f8dc24b6cfb9cacd0cbf2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 21 09:44:28 2020 -0700","stats":{"files_changed":5,"insertions":151,"deletions":133,"files":["jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json","tests/fixtures/osx-10.14.6/netstat.out"]},"message":"fixup name field and update test fixtures","epoch":1590079468,"epoch_utc":null},{"commit":"e0c1c87f549eee000b93b5f5a3e8d0b052eb7d32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 21 09:07:01 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["README.md"]},"message":"formatting","epoch":1590077221,"epoch_utc":null},{"commit":"931b3d2b836b251590497f4cfa65f106762086c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 19:56:28 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1590029788,"epoch_utc":null},{"commit":"e5d561baeecf1fd83a884b3cd9d322762f750dfb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 17:31:51 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/netstat.py"]},"message":"add multipath condition for osx detection","epoch":1590021111,"epoch_utc":null},{"commit":"2867593e7aa12299686e2c6aa0f2a79a9b550b53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 17:28:44 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["changelog.txt"]},"message":"changelog update","epoch":1590020924,"epoch_utc":null},{"commit":"dd52fee5635c977d5c77046ab9fe78d2ed10deef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 17:25:25 2020 -0700","stats":{"files_changed":7,"insertions":2141,"deletions":0,"files":["tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-Abn.out","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat-An.out","tests/fixtures/osx-10.14.6/netstat.json","tests/fixtures/osx-10.14.6/netstat.out","tests/test_netstat.py"]},"message":"osx netstat tests and fixtures","epoch":1590020725,"epoch_utc":null},{"commit":"8e1f8858273e671a882a07eae1c35b38f5298c94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 16:43:53 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"fix filtered netstat views","epoch":1590018233,"epoch_utc":null},{"commit":"2d39a58f902e6af77f8f96ffcd1d68b7cbadd56c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 16:14:03 2020 -0700","stats":{"files_changed":4,"insertions":81,"deletions":14,"files":["README.md","docs/parsers/dmidecode.md","docs/parsers/netstat.md","jc/parsers/dmidecode.py"]},"message":"doc update","epoch":1590016443,"epoch_utc":null},{"commit":"9c4fa2ae2601ca4880c0b078fa917f01f1392e0e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 15:39:47 2020 -0700","stats":{"files_changed":2,"insertions":22,"deletions":2,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"]},"message":"integer conversions and icmp fix","epoch":1590014387,"epoch_utc":null},{"commit":"de52d84e82df6d8c5e2416c6bc44e59c41c685da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 12:02:32 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/netstat_osx.py"]},"message":"fix udp state and udp46 entries","epoch":1590001352,"epoch_utc":null},{"commit":"ce9b55059a28d363b8b0ae4f3ccbdbdc4bf4b58e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 11:24:38 2020 -0700","stats":{"files_changed":2,"insertions":185,"deletions":167,"files":["jc/parsers/netstat.py","jc/parsers/netstat_linux.py"]},"message":"organize files","epoch":1589999078,"epoch_utc":null},{"commit":"bcd370a6a01a115d470776f5690f8571d68d3930","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 08:19:45 2020 -0700","stats":{"files_changed":2,"insertions":5,"deletions":15,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"]},"message":"code cleanup","epoch":1589987985,"epoch_utc":null},{"commit":"c8216850abd2d0b8cc6761453f853f296e8a28f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 07:19:24 2020 -0700","stats":{"files_changed":1,"insertions":19,"deletions":55,"files":["jc/parsers/netstat_osx.py"]},"message":"code cleanup","epoch":1589984364,"epoch_utc":null},{"commit":"f5feedb90b39e5c3f4564615482d47ccd145844f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 17:38:14 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":10,"files":["jc/parsers/netstat_osx.py"]},"message":"fix comments","epoch":1589935094,"epoch_utc":null},{"commit":"a4371cd187fe5077018edbfeee77eb17c6a90ad3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 17:36:16 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/netstat_osx.py"]},"message":"support netstat -A","epoch":1589934976,"epoch_utc":null},{"commit":"9d5ba4c83404e4fab5c0f40c30b4735685499a31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 17:14:04 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/netstat_osx.py"]},"message":"formatting","epoch":1589933644,"epoch_utc":null},{"commit":"1639dee1bb93f6f89e8bb7b37134dc1f561c479c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 17:13:03 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":35,"files":["jc/parsers/netstat_osx.py"]},"message":"fix parse_post","epoch":1589933583,"epoch_utc":null},{"commit":"9363f430f20951e6fa739f06c85c5b6b3421b60d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 16:26:41 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/netstat.py"]},"message":"use list extend method to simplify code","epoch":1589930801,"epoch_utc":null},{"commit":"9192a0907364c772558380be1373b8dcea972a6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 16:26:04 2020 -0700","stats":{"files_changed":1,"insertions":124,"deletions":34,"files":["jc/parsers/netstat_osx.py"]},"message":"parse all sections","epoch":1589930764,"epoch_utc":null},{"commit":"b915eb97556ccc5fc60e8d23f7298ffec2d8e3b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 15:15:08 2020 -0700","stats":{"files_changed":2,"insertions":237,"deletions":55,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"]},"message":"initial osx parser","epoch":1589926508,"epoch_utc":null},{"commit":"1cfcc2b592f682d2b50a0c4188fa3ae832a6c682","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 14 09:58:16 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/dmidecode.py"]},"message":"tighten up line test logic when counting tabs","epoch":1589475496,"epoch_utc":null},{"commit":"7138dd02b73073441a52c9b574bf0d6e02f0d7d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 14 09:51:10 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/parsers/dmidecode.py"]},"message":"cleanup variables after adding to item","epoch":1589475070,"epoch_utc":null},{"commit":"b4276643b70f7820f8f53df22b32fffb54e30ca2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 14 09:43:13 2020 -0700","stats":{"files_changed":4,"insertions":56,"deletions":0,"files":["tests/fixtures/centos-7.7/dmidecode.json","tests/fixtures/fedora32/dmidecode.json","tests/fixtures/ubuntu-18.04/dmidecode.json","tests/test_dmidecode.py"]},"message":"add dmidecode tests and fixtures","epoch":1589474593,"epoch_utc":null},{"commit":"2ef00763bfe7c4348f30026759941efe39861a0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 14 09:33:45 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/dmidecode.py"]},"message":"fix first item","epoch":1589474025,"epoch_utc":null},{"commit":"54364928fc826ead7774a4cec1bcb73a5cb9ee0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 14 08:57:23 2020 -0700","stats":{"files_changed":2,"insertions":74,"deletions":81,"files":["docs/parsers/dmidecode.md","jc/parsers/dmidecode.py"]},"message":"fix oddities like hybrid single/multiline data and items containing multiple records","epoch":1589471843,"epoch_utc":null},{"commit":"09b3b4932b0fa4a2b18c88a8465c15a194b727e6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 10:51:38 2020 -0700","stats":{"files_changed":3,"insertions":35430,"deletions":0,"files":["tests/fixtures/centos-7.7/dmidecode.out","tests/fixtures/fedora32/dmidecode.out","tests/fixtures/ubuntu-18.04/dmidecode.out"]},"message":"add dmidecode output fixtures","epoch":1589392298,"epoch_utc":null},{"commit":"29d6670119d8fcd0344e90f01bfb6260aa936e50","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 10:18:49 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/dmidecode.py"]},"message":"convert integers","epoch":1589390329,"epoch_utc":null},{"commit":"2f654b5f1acda01192294f4c18a5a31363e7f387","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 10:13:27 2020 -0700","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["docs/parsers/dmidecode.md"]},"message":"doc update","epoch":1589390007,"epoch_utc":null},{"commit":"e53b9f5992450b53efc886b4fa9ca16f3dd07530","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 10:12:40 2020 -0700","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["jc/parsers/dmidecode.py"]},"message":"add caveats to documentation","epoch":1589389960,"epoch_utc":null},{"commit":"addb234e6162c58750cb67947bc4776635bf54fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:44:20 2020 -0700","stats":{"files_changed":1,"insertions":153,"deletions":0,"files":["docs/parsers/dmidecode.md"]},"message":"add dmidecode doc","epoch":1589388260,"epoch_utc":null},{"commit":"76eca3b65911a0a340d3d94322a8145ee89c50da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:43:35 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"]},"message":"add dmidecode","epoch":1589388215,"epoch_utc":null},{"commit":"f90dec4c0ecf88623fb22273b7527ec8884826c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:43:23 2020 -0700","stats":{"files_changed":1,"insertions":94,"deletions":5,"files":["jc/parsers/dmidecode.py"]},"message":"add examples to documentation","epoch":1589388203,"epoch_utc":null},{"commit":"8900a59d4cb424ff58d1eb27f8fda7ea0a668a5c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:31:12 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":19,"files":["jc/parsers/dmidecode.py"]},"message":"simplify logic by removing redundant block","epoch":1589387472,"epoch_utc":null},{"commit":"6685138200d5955115707d04aad0293ea8af5b15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:25:02 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dmidecode.py"]},"message":"fix for missing multi-line values that come immediately after a previous multi-line value","epoch":1589387102,"epoch_utc":null},{"commit":"4d3e65b980d50164b8220e59560822b9871580ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:00:32 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/parsers/dmidecode.py"]},"message":"fix missing values","epoch":1589385632,"epoch_utc":null},{"commit":"e9282bb546f560da6396f44e2ce9e04136348e2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 08:22:52 2020 -0700","stats":{"files_changed":2,"insertions":175,"deletions":0,"files":["jc/cli.py","jc/parsers/dmidecode.py"]},"message":"add dmidecode parser","epoch":1589383372,"epoch_utc":null},{"commit":"f5627a45947e5e76e5f3e64d9b30099fe0b962a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 11 11:03:02 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1589220182,"epoch_utc":null},{"commit":"81ffdb25105c681c8ed12336d220a102b7f4215e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 11 10:54:26 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/cli.py"]},"message":"remove shebang for Fedora packaging","epoch":1589219666,"epoch_utc":null},{"commit":"4c00a99850cb6f69713be7c6ad9ffba11924d9b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 11 10:37:14 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1589218634,"epoch_utc":null},{"commit":"2bfcb45b28e2174a8bbc27237e619b5c232ccae8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 11 10:32:42 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["jc/cli.py"]},"message":"make cli.py executable","epoch":1589218362,"epoch_utc":null},{"commit":"ab0c10e791283affb227d0d5306701ba7fd29d13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 11 10:27:16 2020 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["LICENSE.md","README.md"]},"message":"remove execute permissions","epoch":1589218036,"epoch_utc":null},{"commit":"2c1935115de03a28fe92674b04b2542b0eccb8fe","merge":"99070fa d98e43d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:47:05 2020 -0700","message":"Merge pull request #61 from kellyjonbrazil/dev\n\nDev v1.10.10","epoch":1589050025,"epoch_utc":null},{"commit":"d98e43dc78205d3224bfc1e67de2da3c5fb7ea9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:42:56 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"add netstat item","epoch":1589049776,"epoch_utc":null},{"commit":"9348988d646d9b9c9970c19e84f311554ae38e7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:41:30 2020 -0700","stats":{"files_changed":1,"insertions":12,"deletions":0,"files":["tests/test_netstat.py"]},"message":"add netstat test for Fedora32","epoch":1589049690,"epoch_utc":null},{"commit":"1285c664679c40b18327c89b85921a80b01f0191","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:36:23 2020 -0700","stats":{"files_changed":2,"insertions":140,"deletions":0,"files":["tests/fixtures/fedora32/netstat.json","tests/fixtures/fedora32/netstat.out"]},"message":"netstat with bluetooth section","epoch":1589049383,"epoch_utc":null},{"commit":"b7191bbc130e0f33d02c0a4819fa91ffff1599d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:36:03 2020 -0700","stats":{"files_changed":1,"insertions":14,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"handle bluetooth section (ignore for now)","epoch":1589049363,"epoch_utc":null},{"commit":"98b97509f7893cb95e9651ce9706db5c961aa997","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:25:13 2020 -0700","stats":{"files_changed":3,"insertions":6,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1589048713,"epoch_utc":null},{"commit":"2b2b570490f3834367a598579473001f45738e8a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:22:26 2020 -0700","stats":{"files_changed":3,"insertions":21,"deletions":0,"files":["tests/fixtures/fedora32/last.json","tests/fixtures/fedora32/last.out","tests/test_last.py"]},"message":"add tests for 'gone - no logout'","epoch":1589048546,"epoch_utc":null},{"commit":"cce2d1ff298f2284c43c4534144329f3533a81ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:22:01 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/last.py"]},"message":"add condition for 'gone - no logout'","epoch":1589048521,"epoch_utc":null},{"commit":"b79600c57249cbb65805caad2524cc2492342be6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:01:48 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"version bump","epoch":1589047308,"epoch_utc":null},{"commit":"140f1a85437745296b56976bef1b46514e323a4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:00:04 2020 -0700","stats":{"files_changed":7,"insertions":7,"deletions":7,"files":["tests/fixtures/centos-7.7/ls-R-newlines.json","tests/fixtures/centos-7.7/ls-R.json","tests/fixtures/centos-7.7/ls-glob.json","tests/fixtures/osx-10.14.6/ls-glob.json","tests/fixtures/ubuntu-18.04/ls-R-newlines.json","tests/fixtures/ubuntu-18.04/ls-R.json","tests/fixtures/ubuntu-18.04/ls-glob.json"]},"message":"test fixes for issue #60","epoch":1589047204,"epoch_utc":null},{"commit":"e34657cfde6816ab7a7415d83580df0a1d98a5a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 15:26:11 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"]},"message":"fix issue #60 that was skipping the first file in some instances using -R without -l","epoch":1588976771,"epoch_utc":null},{"commit":"99070fa6073c4415a6faf8ca69dd6aa089af4062","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 10:51:13 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1588960273,"epoch_utc":null},{"commit":"2b46785b1f1281ee63df9159e36068f4607ad9b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 10:49:30 2020 -0700","stats":{"files_changed":1,"insertions":25,"deletions":3,"files":["jc/parsers/ifconfig.py"]},"message":"add MIT license to vendorized IfconfigParser class","epoch":1588960170,"epoch_utc":null},{"commit":"c72562524b2b9aaca0be372bb24343158829ba5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 09:30:31 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"fully remove tests from packaging","epoch":1588955431,"epoch_utc":null},{"commit":"b7dd6441c7e3f54f8a260fceef49aae6816c7151","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 08:20:33 2020 -0700","stats":{"files_changed":2,"insertions":5,"deletions":1,"files":["changelog.txt","jc/cli.py"]},"message":"version bump","epoch":1588951233,"epoch_utc":null},{"commit":"31fcc2f755ad86622cf51a75879b14d44f246300","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 08:20:21 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["MANIFEST.in"]},"message":"remove manifest.in - no longer needed due to removing tests","epoch":1588951221,"epoch_utc":null},{"commit":"b391aa14bceffedb5a9c13f3f908923790edefc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 08:19:51 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["setup.cfg"]},"message":"add license_file to metadata","epoch":1588951191,"epoch_utc":null},{"commit":"d3c45debbb6690acd341fbcc9b99d1ae4cf0a43c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 08:19:31 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["setup.py"]},"message":"remove tests and add license file","epoch":1588951171,"epoch_utc":null},{"commit":"5b08469b874553744bd5c5b1fa6581f4dcffacd0","merge":"8cf00a2 4a77ec6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 1 15:55:50 2020 -0700","message":"Merge pull request #57 from kellyjonbrazil/dev\n\nDev v1.10.7","epoch":1588373750,"epoch_utc":null},{"commit":"4a77ec63a46554c84e646d31564230774ed87431","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 1 14:57:50 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["docs/parsers/ifconfig.md"]},"message":"add IfconfigParser class","epoch":1588370270,"epoch_utc":null},{"commit":"d13606b6dc2c207be6dea89a2c3e713c18a574b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 1 14:37:23 2020 -0700","stats":{"files_changed":4,"insertions":7,"deletions":6,"files":["changelog.txt","jc/cli.py","requirements.txt","setup.py"]},"message":"modify dependencies for easier packaging into Fedora","epoch":1588369043,"epoch_utc":null},{"commit":"05291c93bba1aa364ba1ac7f2508e24bb362a814","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 1 14:36:54 2020 -0700","stats":{"files_changed":1,"insertions":198,"deletions":3,"files":["jc/parsers/ifconfig.py"]},"message":"vendorize ifconfig-parser module for easier packaging in Fedora","epoch":1588369014,"epoch_utc":null},{"commit":"8cf00a208eb8493300331e7361b72e4f9e3f140e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 29 15:57:55 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"change text to strings","epoch":1588201075,"epoch_utc":null},{"commit":"06d73c88767a5b4d6003231c897c447ee5e1faa5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 23 07:06:44 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1587650804,"epoch_utc":null},{"commit":"649c646ea25ac7f89900cffa8919df01671bd32d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 22 16:08:34 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]},"message":"add brew install option","epoch":1587596914,"epoch_utc":null},{"commit":"b7756d92501a7b8ba8e77d77d9d3718a58425beb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 20 16:33:26 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1587425606,"epoch_utc":null},{"commit":"1cd2cd954c21e5caec333507bd81819c82d45b49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 20 16:31:22 2020 -0700","stats":{"files_changed":4,"insertions":2,"deletions":16,"files":["tests/fixtures/osx-10.11.6/du.json","tests/fixtures/osx-10.11.6/du.out","tests/fixtures/osx-10.14.6/du.json","tests/fixtures/osx-10.14.6/du.out"]},"message":"remove references to homebrew/shim to allow tests to pass in homebrew packaging ci/cd","epoch":1587425482,"epoch_utc":null},{"commit":"72020b8da999ddca6f9ba82da235c9f42e4f4273","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 17 10:20:25 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":22,"files":["README.md"]},"message":"move packages info to jc-packages github page","epoch":1587144025,"epoch_utc":null},{"commit":"cf9720b749e7fc8caed0d2f1f2b1727a22a156b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 16 14:03:31 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"update install info","epoch":1587071011,"epoch_utc":null},{"commit":"967b9db7f90a3c3a0352edde7f4455c5f5d45b18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 15 21:27:22 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["README.md"]},"message":"spelling","epoch":1587011242,"epoch_utc":null},{"commit":"bb3acb1182f4d509f9ddc7dfcffa4578e0a2bd5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 15 21:25:06 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1587011106,"epoch_utc":null},{"commit":"560c7f7e6d1f8a69ab026ddbff753d232ca1d00b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 15 21:23:55 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1587011035,"epoch_utc":null},{"commit":"79b28417644e00b933f531374d2f7fe8051e61be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 15 21:22:43 2020 -0700","stats":{"files_changed":1,"insertions":26,"deletions":0,"files":["README.md"]},"message":"add new binary package install info","epoch":1587010963,"epoch_utc":null},{"commit":"a06a89cbd11026aa3910fadd1eff7fe388d02507","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 14 11:15:24 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1586888124,"epoch_utc":null},{"commit":"431bd969eb4809424fe99a02a7decb98bce9ea51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 14 11:10:31 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"use sys.exit(0) instead of exit()","epoch":1586887831,"epoch_utc":null},{"commit":"c87b722aec6e6964c516bbb8e80667ad7d9c6bc7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:23:58 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"spelling","epoch":1586723038,"epoch_utc":null},{"commit":"3688b8b014a1cf753b2207fbf3ebf0292c3fd672","merge":"99f7842 07b8d9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:21:38 2020 -0700","message":"Merge pull request #56 from kellyjonbrazil/dev\n\nDev v1.10.4","epoch":1586722898,"epoch_utc":null},{"commit":"07b8d9e0c0d723d93e6c652f5b6156c467c451c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:18:28 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1586722708,"epoch_utc":null},{"commit":"7454b53e395e9122c00d4cf06b1c2af109913d7a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:13:28 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["README.md"]},"message":"formatting","epoch":1586722408,"epoch_utc":null},{"commit":"3d6a76024de0f9dcf91a4ab49cabe461074114fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:10:57 2020 -0700","stats":{"files_changed":1,"insertions":18,"deletions":0,"files":["README.md"]},"message":"update with JC_COLORS info","epoch":1586722257,"epoch_utc":null},{"commit":"421b9809575a8de00229af4b851739889638ac74","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:03:09 2020 -0700","stats":{"files_changed":1,"insertions":18,"deletions":37,"files":["jc/cli.py"]},"message":"JC_COLORS working","epoch":1586721789,"epoch_utc":null},{"commit":"4a22e27d6a80a988f4de17bce421110d6abb8867","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 12:43:51 2020 -0700","stats":{"files_changed":1,"insertions":64,"deletions":0,"files":["jc/cli.py"]},"message":"add set_env_colors function","epoch":1586720631,"epoch_utc":null},{"commit":"99f7842dee0f79cf933fae185cf8b0ed7c8b210f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 9 13:38:33 2020 -0700","stats":{"files_changed":3,"insertions":11,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"fix brek on pipe error","epoch":1586464713,"epoch_utc":null},{"commit":"7f869b4b187d70752207a7e74c13b858446f898f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 9 07:31:21 2020 -0700","stats":{"files_changed":3,"insertions":9,"deletions":11,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"change colors to ansi and match jello style","epoch":1586442681,"epoch_utc":null},{"commit":"9665f4ee84680f3a8154b8a43ea668af2907782c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 7 08:44:15 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add pypi badge","epoch":1586274255,"epoch_utc":null},{"commit":"606904d48b1c7e0c19a940b5be0b564d1b5be6c8","merge":"302f05c 3f5279b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:28:21 2020 -0700","message":"Merge pull request #53 from kellyjonbrazil/dev\n\nDev v1.10.1","epoch":1586046501,"epoch_utc":null},{"commit":"3f5279b97c386c736e0e2faa5c39d68ef89c46aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:25:55 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to 1.10.1","epoch":1586046355,"epoch_utc":null},{"commit":"f5ec21e6ac612566af93158fc3968b901322d04a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:19:32 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_luf.py"]},"message":"use in instead of find()","epoch":1586045972,"epoch_utc":null},{"commit":"578a284465f014fe71ad6ac00bd41dc24ab2ced9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:18:39 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_ls.py"]},"message":"use in instead of find()","epoch":1586045919,"epoch_utc":null},{"commit":"422e392d9d98a7864312fc7fbd7f45537b71acbe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:17:43 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_lj.py"]},"message":"use in instead of find()","epoch":1586045863,"epoch_utc":null},{"commit":"54dfffd34a17d1194690142ac403391fc65bb85f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:16:25 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl.py"]},"message":"use in instead of find()","epoch":1586045785,"epoch_utc":null},{"commit":"cffba64d2b9165b44a8856665807111a2ad3a190","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:15:03 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/stat.py"]},"message":"use in and startswith() instead of find()","epoch":1586045703,"epoch_utc":null},{"commit":"56a0c12a59bb252d3b7d0929f9fb19b4d96a8437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:12:22 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/pip_list.py"]},"message":"use in instead of find()","epoch":1586045542,"epoch_utc":null},{"commit":"c174d3de18923b2b03befb5a7dfcbd977a8e147e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:10:46 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/netstat.py"]},"message":"use in and startswith() instead of find()","epoch":1586045446,"epoch_utc":null},{"commit":"a9c59ef9fc1bb68c9d0d7beffbeb670baf5b1e3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:07:38 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/mount.py"]},"message":"fix logic to not for ' type ' in cleandata[0]","epoch":1586045258,"epoch_utc":null},{"commit":"abdb9b26732a6a71f5938d665b2ca43a381e1b33","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:05:17 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/mount.py"]},"message":"use in instead of find()","epoch":1586045117,"epoch_utc":null},{"commit":"548aaab6262878d21f8b9539950cfad48638e35c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:04:20 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":42,"files":["jc/parsers/lsof.py"]},"message":"remove old commented code","epoch":1586045060,"epoch_utc":null},{"commit":"20571c87ae9e1ca8a1f3120511910751420a35ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:01:56 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/jobs.py"]},"message":"us in instead of find()","epoch":1586044916,"epoch_utc":null},{"commit":"19e49200de5c731f76b42e80388c5223e8097e39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:59:48 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"]},"message":"version bump","epoch":1586044788,"epoch_utc":null},{"commit":"d32f5c67a91ede572c88e431b2ad0ce4d6c87dec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:59:03 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/iptables.py"]},"message":"use startswith() instead of find()","epoch":1586044743,"epoch_utc":null},{"commit":"b83b626435c55d2aa63e56dd8f22603da59e7626","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:57:23 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ifconfig.py"]},"message":"use startswith() instead of find()","epoch":1586044643,"epoch_utc":null},{"commit":"ab2c1b25ec5da5f2ba238868c4dfca95a44da30e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:56:11 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/hosts.py"]},"message":"use startswith() and in instead of find()","epoch":1586044571,"epoch_utc":null},{"commit":"f2d46313a4508f13656cdb360f83fdf4116cc7d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:53:55 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/fstab.py"]},"message":"use startswith() instead of find()","epoch":1586044435,"epoch_utc":null},{"commit":"87e4796a6c936793e2784346819c7033d59b91e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:52:45 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/df.py"]},"message":"use in instead of .find()","epoch":1586044365,"epoch_utc":null},{"commit":"0014a5c2f4c056c2683d6614a65d778b1f527932","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:51:36 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab_u.py"]},"message":"us startswith() and in instead of .find()","epoch":1586044296,"epoch_utc":null},{"commit":"7af56e0dadab7d8b9538f3b7a550ad6dd1ac217d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:50:05 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab.py"]},"message":"use startswith() and in instead of find()","epoch":1586044205,"epoch_utc":null},{"commit":"a5ae6e3c017b041f9079ff12455b7551ad204cb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:48:16 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/arp.py"]},"message":"use startswith() instead of find()","epoch":1586044096,"epoch_utc":null},{"commit":"fe1a0d1faf46f55ed2888ed0065f3f3144691ed8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:46:09 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":9,"files":["jc/parsers/dig.py"]},"message":"use in instead of .find()","epoch":1586043969,"epoch_utc":null},{"commit":"302f05cdda305e46e69b74d5b0096f64c17da637","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 3 14:50:20 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"prettify style block","epoch":1585950620,"epoch_utc":null},{"commit":"c0044be7b0b6dadcffb64cb88ad92bf653dd2b6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 3 14:48:19 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"rename color grey to gray","epoch":1585950499,"epoch_utc":null},{"commit":"01100788070b82b4b827ef356972fa9b8f737eeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 3 14:47:08 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update badge","epoch":1585950428,"epoch_utc":null},{"commit":"42eacb45f8fdf8085c6231bf5297629c2ec97c22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 3 14:45:04 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"rename to Tests","epoch":1585950304,"epoch_utc":null},{"commit":"a43e2e19916662d509883457c160d7f95f97ae12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 2 17:40:06 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add -m option info","epoch":1585874406,"epoch_utc":null},{"commit":"c8b721d4f6e46a2db77e1140b9caeb3b403fef72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 2 17:35:35 2020 -0700","stats":{"files_changed":4,"insertions":9,"deletions":3,"files":["changelog.txt","jc/cli.py","requirements.txt","setup.py"]},"message":"version bump to 1.10.0","epoch":1585874135,"epoch_utc":null},{"commit":"d0bfddc3d9989444757d6668726c916e5363620b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 2 17:29:25 2020 -0700","stats":{"files_changed":1,"insertions":41,"deletions":6,"files":["jc/cli.py"]},"message":"add color and -m monochrome option","epoch":1585873765,"epoch_utc":null},{"commit":"6b925a16c87cf75bb30edfda38511e8f84a4f6d6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 2 10:55:32 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]},"message":"add tests badge","epoch":1585850132,"epoch_utc":null},{"commit":"89ebd9fc2271d2c76353d5707bfd4afb7dedc278","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 27 07:31:08 2020 -0700","stats":{"files_changed":2,"insertions":20,"deletions":0,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"add axfr info to schema","epoch":1585319468,"epoch_utc":null},{"commit":"6b4ba662317629839aa62fbcfefb8ed3337c37ef","merge":"8ec8cd6 5b697dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 17:15:13 2020 -0700","message":"Merge pull request #52 from kellyjonbrazil/dev\n\nDev v1.9.3","epoch":1585268113,"epoch_utc":null},{"commit":"5b697dc38141cdd47fcdd63bf295a80a7da86697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 17:09:29 2020 -0700","stats":{"files_changed":1,"insertions":72,"deletions":0,"files":["tests/test_dig.py"]},"message":"add more dig tests","epoch":1585267769,"epoch_utc":null},{"commit":"9ba73c95d1a528a9a92be4068805bb5aa027901e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 16:45:29 2020 -0700","stats":{"files_changed":7,"insertions":215,"deletions":0,"files":["tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/centos-7.7/dig-axfr.out","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-axfr.out","tests/fixtures/ubuntu-18.04/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-axfr.out","tests/test_dig.py"]},"message":"add tests","epoch":1585266329,"epoch_utc":null},{"commit":"93aa39044749c4c0ed749f62fb00fc1c76dc5af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 16:30:17 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to v1.9.3","epoch":1585265417,"epoch_utc":null},{"commit":"3cfb8945ddd83c00a720c44e2c1d97da0d8bad25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 16:29:59 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/dig.py"]},"message":"use startswith() instead of find","epoch":1585265399,"epoch_utc":null},{"commit":"cd8d38f2a136c4f35efc020b3476d09e965b71f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 16:22:53 2020 -0700","stats":{"files_changed":1,"insertions":50,"deletions":1,"files":["jc/parsers/dig.py"]},"message":"add axfr support","epoch":1585264973,"epoch_utc":null},{"commit":"8ec8cd62944c59c462ab9f520c1dcfd14218b1ed","merge":"e5bea9a c028113","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 17:09:04 2020 -0700","message":"Merge pull request #50 from kellyjonbrazil/dev\n\nDev v1.9.2","epoch":1584058144,"epoch_utc":null},{"commit":"c02811356153c2b4f8b2d7efb7f48bf8f7748068","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 17:06:55 2020 -0700","stats":{"files_changed":3,"insertions":6,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to v1.9.2","epoch":1584058015,"epoch_utc":null},{"commit":"5f22e1c8031b808ef02ffe078408bd58cc76e570","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 17:02:26 2020 -0700","stats":{"files_changed":3,"insertions":33,"deletions":0,"files":["tests/fixtures/osx-10.14.6/arp-a2.json","tests/fixtures/osx-10.14.6/arp-a2.out","tests/test_arp.py"]},"message":"fix and test for osx arp entries without ifscope","epoch":1584057746,"epoch_utc":null},{"commit":"d3351787e5cabd064c19e6617e9535e501686404","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 16:52:33 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":9,"files":["jc/parsers/arp.py"]},"message":"change osx detection","epoch":1584057153,"epoch_utc":null},{"commit":"e5bea9ae3b0a70b38f7da7dd9184343dbbd18887","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 08:52:01 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/file.py"]},"message":"version bump","epoch":1584028321,"epoch_utc":null},{"commit":"93c710abe9171568f61f65c4f84c040ffc24870c","merge":"400f5a4 c29e7cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 08:23:10 2020 -0700","message":"Merge pull request #49 from kellyjonbrazil/dev\n\nDev v1.9.1","epoch":1584026590,"epoch_utc":null},{"commit":"c29e7cfe5cc4b2151912c6f618137d1b6c39c7be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 08:17:28 2020 -0700","stats":{"files_changed":4,"insertions":9,"deletions":6,"files":["README.md","changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to 1.9.1","epoch":1584026248,"epoch_utc":null},{"commit":"cb5c1ba00dc0e02bf6ad6c40096d99e319fa6171","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 17:04:48 2020 -0700","stats":{"files_changed":3,"insertions":101,"deletions":0,"files":["tests/fixtures/osx-10.14.6/file2.json","tests/fixtures/osx-10.14.6/file2.out","tests/test_file.py"]},"message":"add tests for fix to make the file parser splitting more robust","epoch":1583971488,"epoch_utc":null},{"commit":"9a012b94e1942a14bc6dae3fb967ef618819c77b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 15:40:34 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/file.py"]},"message":"make splitting more robust","epoch":1583966434,"epoch_utc":null},{"commit":"400f5a44ece280cb0097d806b78a9490d2905600","merge":"c7cd2b6 a2ab5ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 13:37:22 2020 -0700","message":"Merge pull request #48 from kellyjonbrazil/dev\n\nDev v1.9.0","epoch":1583959042,"epoch_utc":null},{"commit":"a2ab5bab91ea980399df1afb9d8071fa3282d04e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 13:32:58 2020 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to v1.9.0","epoch":1583958778,"epoch_utc":null},{"commit":"fc8ab27361df3359b706125531b2643612d6996a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 13:24:55 2020 -0700","stats":{"files_changed":6,"insertions":93,"deletions":51,"files":["README.md","docs/parsers/ntpq.md","jc/parsers/ntpq.py","tests/fixtures/ubuntu-18.04/ntpq-p2.json","tests/fixtures/ubuntu-18.04/ntpq-p2.out","tests/test_ntpq.py"]},"message":"bugfix for misaligned columns and additional test for ntpq #31","epoch":1583958295,"epoch_utc":null},{"commit":"59f19d33a5c6677ea756a9424fdb032b430511a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 12:39:59 2020 -0700","stats":{"files_changed":7,"insertions":153,"deletions":0,"files":["tests/fixtures/centos-7.7/file.json","tests/fixtures/centos-7.7/file.out","tests/fixtures/osx-10.14.6/file.json","tests/fixtures/osx-10.14.6/file.out","tests/fixtures/ubuntu-18.04/file.json","tests/fixtures/ubuntu-18.04/file.out","tests/test_file.py"]},"message":"add file command tests for #41","epoch":1583955599,"epoch_utc":null},{"commit":"dfc96181159748d019419a2cba7aa9cb3b7a2a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 12:20:58 2020 -0700","stats":{"files_changed":6,"insertions":260,"deletions":1,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/file.md","jc/cli.py","jc/parsers/file.py"]},"message":"add file parser for issue #41","epoch":1583954458,"epoch_utc":null},{"commit":"8e02e5c75a11cf205299ee6f87b67f9b787cf55e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 09:21:14 2020 -0700","stats":{"files_changed":2,"insertions":6,"deletions":5,"files":["jc/cli.py","tests/test_cli.py"]},"message":"fix issue with getting options with some commands #47","epoch":1583943674,"epoch_utc":null},{"commit":"970493ab9346a344b21be7614903ad81bc65a6e9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 06:22:54 2020 -0700","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["jc/parsers/airport.py","jc/parsers/airport_s.py"]},"message":"add magic commands","epoch":1583932974,"epoch_utc":null},{"commit":"64d78956eb33ca0a2564fded3d12729ee036a915","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 22:18:26 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"update acknowledgment","epoch":1583903906,"epoch_utc":null},{"commit":"40c05346f4098f8eea14c42da07df3faa143587a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 22:16:40 2020 -0700","stats":{"files_changed":1,"insertions":12,"deletions":25,"files":["jc/parsers/history.py"]},"message":"re-adding optimizations from https://github.com/philippeitis","epoch":1583903800,"epoch_utc":null},{"commit":"e9b0bc1409a824a82dabd2479892b7d18bad8c3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 22:03:54 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/airport.py"]},"message":"doc update","epoch":1583903034,"epoch_utc":null},{"commit":"798e6bb7d939176bb36771a6d41bd55403d583be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 22:03:44 2020 -0700","stats":{"files_changed":2,"insertions":29,"deletions":0,"files":["tests/fixtures/osx-10.14.6/airport-s.json","tests/test_airport_s.py"]},"message":"tests passing for airport -s. issue #46","epoch":1583903024,"epoch_utc":null},{"commit":"12a370deed03ba42d7b7ebb410195ce5f32bb9c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 21:51:02 2020 -0700","stats":{"files_changed":8,"insertions":372,"deletions":9,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/airport.md","docs/parsers/airport_s.md","jc/cli.py","jc/parsers/airport.py","jc/parsers/airport_s.py"]},"message":"add airport -s parser for issue #46","epoch":1583902262,"epoch_utc":null},{"commit":"553bfbe1a0dd866851ba7eca66e9295c2097ad86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 21:02:17 2020 -0700","stats":{"files_changed":3,"insertions":40,"deletions":6,"files":["docs/parsers/airport.md","jc/parsers/airport.py","tests/test_airport.py"]},"message":"tests passing for airport -I. Issue #46","epoch":1583899337,"epoch_utc":null},{"commit":"52494321fcfe0dc7ee71d8d78210b3c10372a237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 20:55:07 2020 -0700","stats":{"files_changed":5,"insertions":120,"deletions":15,"files":["README.md","docs/parsers/airport.md","jc/parsers/airport.py","tests/fixtures/osx-10.14.6/airport-I.json","tests/fixtures/osx-10.14.6/airport-I.out"]},"message":"fixes and docs for airport parser issue #46","epoch":1583898907,"epoch_utc":null},{"commit":"c6c9e06496683d2dd3586d17085801c7e698d960","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 20:35:52 2020 -0700","stats":{"files_changed":7,"insertions":196,"deletions":1,"files":["changelog.txt","docgen.sh","docs/parsers/airport.md","jc/cli.py","jc/parsers/airport.py","tests/fixtures/osx-10.14.6/airport-I.out","tests/fixtures/osx-10.14.6/airport-s.out"]},"message":"added airport command parser","epoch":1583897752,"epoch_utc":null},{"commit":"e3a6c05a58a2451e70975d8fabf644c56603c73d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 20:26:53 2020 -0700","stats":{"files_changed":5,"insertions":64,"deletions":17,"files":["docs/parsers/timedatectl.md","jc/parsers/timedatectl.py","tests/fixtures/centos-7.7/timedatectl.json","tests/fixtures/ubuntu-18.04/timedatectl.json","tests/test_timedatectl.py"]},"message":"timedatectl fixes, tests, and fixtures for issue #42","epoch":1583897213,"epoch_utc":null},{"commit":"391d06f68d1f45d33590d5407d3a5e4f723af717","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 20:16:41 2020 -0700","stats":{"files_changed":7,"insertions":35,"deletions":35,"files":["README.md","docs/parsers/ntpq.md","jc/parsers/ntpq.py","tests/fixtures/centos-7.7/ntpq-p.json","tests/fixtures/centos-7.7/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-p.json","tests/fixtures/ubuntu-18.04/ntpq-pn.json"]},"message":"change selection_state to state","epoch":1583896601,"epoch_utc":null},{"commit":"99804ea06e0c70e3a82ddc7f9c7a42343374d700","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 18:37:55 2020 -0700","stats":{"files_changed":6,"insertions":222,"deletions":0,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/timedatectl.md","jc/cli.py","jc/parsers/timedatectl.py"]},"message":"added timedatectl status parser","epoch":1583890675,"epoch_utc":null},{"commit":"51935deb2ad18e4ea3ca16954ce810354f6095a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 18:00:47 2020 -0700","stats":{"files_changed":2,"insertions":21,"deletions":0,"files":["tests/fixtures/centos-7.7/timedatectl.out","tests/fixtures/ubuntu-18.04/timedatectl.out"]},"message":"timedatectl test fixtures","epoch":1583888447,"epoch_utc":null},{"commit":"b24d0c3a475b88d9ccf1a8fe29715ee60972fcad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 18:00:26 2020 -0700","stats":{"files_changed":2,"insertions":34,"deletions":2,"files":["README.md","jc/parsers/ntpq.py"]},"message":"ntpq docs","epoch":1583888426,"epoch_utc":null},{"commit":"762a886d6fdf5c2ad21d81868d138fb32621ed1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 15:17:25 2020 -0700","stats":{"files_changed":8,"insertions":133,"deletions":0,"files":["tests/fixtures/centos-7.7/ntpq-p.json","tests/fixtures/centos-7.7/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-p.json","tests/fixtures/ubuntu-18.04/ntpq-p.out","tests/fixtures/ubuntu-18.04/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-pn.out","tests/fixtures/ubuntu-18.04/ntqp-p.out","tests/test_ntpq.py"]},"message":"add ntpq tests","epoch":1583878645,"epoch_utc":null},{"commit":"2c3e9ddfe47f56cd7edc2fdf6317f7ecec0b7918","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 14:18:55 2020 -0700","stats":{"files_changed":7,"insertions":543,"deletions":0,"files":["changelog.txt","docgen.sh","docs/parsers/ntpq.md","jc/cli.py","jc/parsers/ntpq.py","tests/fixtures/centos-7.7/ntpq-p.out","tests/fixtures/centos-7.7/ntpq-pn.out"]},"message":"add ntpq parser for issue #31","epoch":1583875135,"epoch_utc":null},{"commit":"c7cd2b63c8f24e9d17c458880fe401d8032395ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 9 11:46:17 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":91,"files":["tests/fixtures/generic/oscar_age_male.csv"]},"message":"delete unused test file","epoch":1583779577,"epoch_utc":null},{"commit":"f0528ea83112e71ff51c89be27fc9bbdfbbf1951","merge":"b5eaff2 5bc5596","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:54:13 2020 -0700","message":"Merge pull request #45 from kellyjonbrazil/dev\n\nDev v1.8.1","epoch":1583704453,"epoch_utc":null},{"commit":"5bc5596f604fb87dffbfdf44ce2395b16bf01297","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:49:23 2020 -0700","stats":{"files_changed":4,"insertions":17,"deletions":4,"files":["changelog.txt","jc/cli.py","setup.py","tests/test_ls.py"]},"message":"version bump to 1.8.1","epoch":1583704163,"epoch_utc":null},{"commit":"2c27ac46be803b583caf82c1765bd0c35cee8bc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:43:51 2020 -0700","stats":{"files_changed":2,"insertions":2454,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-lR-empty-folder.json","tests/fixtures/osx-10.14.6/ls-lR-empty-folder.out"]},"message":"add ls test fixtures","epoch":1583703831,"epoch_utc":null},{"commit":"caad840153e40dc660a2d5e06a96f3451fef25f9","merge":"aff86ae 65bd7e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:19:37 2020 -0700","message":"Merge pull request #44 from philippeitis/patch-5\n\nMove core magic() logic into seperate function for testability, minor tweaks","epoch":1583702377,"epoch_utc":null},{"commit":"65bd7e2904016141c1ed53cdd437865c66d7628e","merge":"17b6efe c3d7d7d","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Sun Mar 8 14:10:35 2020 -0700","message":"Merge pull request #1 from kellyjonbrazil/pr/44\n\nMerge changes","epoch":1583701835,"epoch_utc":null},{"commit":"c3d7d7db12d4870fc4499e0e3445d85ae89f2aea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:03:08 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"removed whitespace","epoch":1583701388,"epoch_utc":null},{"commit":"56053103625af6fb7fa749fc5bc3dbdc62fc223c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:02:54 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":4,"files":["tests/test_cli.py"]},"message":"added tests, removed os import, changed to 'assertEqual'","epoch":1583701374,"epoch_utc":null},{"commit":"17b6efe82e6a558353b011c543489eaaf3a6d3ac","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Sun Mar 8 13:35:01 2020 -0700","stats":{"files_changed":1,"insertions":14,"deletions":0,"files":["tests/test_cli.py"]},"message":"Create basic tests for generate_magic_commands()","epoch":1583699701,"epoch_utc":null},{"commit":"a032ae56ae7d247e00415267b65b2a8b80a3302e","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Sun Mar 8 13:26:15 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"Pass args to generate_magic_command() to allow testing.","epoch":1583699175,"epoch_utc":null},{"commit":"eab2f4b0566b4c76db661cbfa99a56a6bf8d6541","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Sun Mar 8 13:20:38 2020 -0700","stats":{"files_changed":1,"insertions":33,"deletions":19,"files":["jc/cli.py"]},"message":"Move core magic() logic into seperate function for testability, minor tweaks.\n\nWe only care about the command when testing magic() - by moving that out, we can easily test the command. I modified the code to return a boolean signalling that the command is valid, and the command itself to maintain the original functionality.\n\nI also made some small tweaks (removed a list() call, fixed a possible bug with no arguments., moved magic_dict instantiation past the fast path checks to avoid making a dict if not needed.)","epoch":1583698838,"epoch_utc":null},{"commit":"aff86ae6c71abfe1cbdba5c574a5f3707292ec19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 12:58:26 2020 -0700","stats":{"files_changed":1,"insertions":29,"deletions":39,"files":["jc/cli.py"]},"message":"reimpliment magic() based on the dictionary approach suggested by philippeitis","epoch":1583697506,"epoch_utc":null},{"commit":"7ece9ddc1a37551cdaaac50f37a48e6d98b18bf4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 7 17:26:42 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"version bump ls","epoch":1583630802,"epoch_utc":null},{"commit":"7cd048e839a7cc8404fd5abc153a3d315c207819","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 7 17:25:10 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update","epoch":1583630710,"epoch_utc":null},{"commit":"1e22f610a33903e8525d35a18b1dcf760a93791e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 7 17:22:08 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/ls.py"]},"message":"fix for osx - doesn't print 'total xx' line if empty directory (issue #40)","epoch":1583630528,"epoch_utc":null},{"commit":"5249c972ae25e9b289a2667bf471aad5e58c70a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 6 12:09:20 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["changelog.txt"]},"message":"add to changelog","epoch":1583525360,"epoch_utc":null},{"commit":"fd45f856a050f6c56a7a6b50b97b3d8c4de28af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 6 12:09:09 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/history.py"]},"message":"import jc.utils instead of jc","epoch":1583525349,"epoch_utc":null},{"commit":"c8ab40cd33b14a3a1937ecf64bb23e282f5bb921","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 5 09:19:58 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"]},"message":"ignore .github folder","epoch":1583428798,"epoch_utc":null},{"commit":"b2c872925b37254dac74578c1803b4127f8411c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 19:47:03 2020 -0800","stats":{"files_changed":20,"insertions":208,"deletions":220,"files":["tests/test_ls.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_passwd.py","tests/test_pip_list.py","tests/test_ps.py","tests/test_route.py","tests/test_shadow.py","tests/test_ss.py","tests/test_systemctl_lj.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py","tests/test_who.py","tests/test_xml.py","tests/test_yaml.py"]},"message":"add utf-8 encoding for testing on Windows","epoch":1583380023,"epoch_utc":null},{"commit":"f48e229202f8ab1ebfa502ca57bb31cf673c7a62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 19:40:32 2020 -0800","stats":{"files_changed":21,"insertions":192,"deletions":192,"files":["tests/test_arp.py","tests/test_blkid.py","tests/test_crontab.py","tests/test_crontab_u.py","tests/test_csv.py","tests/test_df.py","tests/test_dig.py","tests/test_du.py","tests/test_env.py","tests/test_free.py","tests/test_fstab.py","tests/test_group.py","tests/test_gshadow.py","tests/test_history.py","tests/test_hosts.py","tests/test_id.py","tests/test_ifconfig.py","tests/test_ini.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_last.py"]},"message":"utf-8 open for windows tests","epoch":1583379632,"epoch_utc":null},{"commit":"799fec92c39b1ff0696c6ebb182c4bef66b86e56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 19:33:45 2020 -0800","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["tests/test_pip_show.py","tests/test_systemctl.py"]},"message":"utf-8 for windows support","epoch":1583379225,"epoch_utc":null},{"commit":"87a41c2fcaa395f108b5a5126ed77f7cc7fe5d6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 19:30:30 2020 -0800","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["tests/test_lsblk.py","tests/test_stat.py"]},"message":"add utf-8 to open function","epoch":1583379030,"epoch_utc":null},{"commit":"7f85de0c46cda95d57b9677ba0ca3ea59690e502","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 19:28:21 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"add windows-latest","epoch":1583378901,"epoch_utc":null},{"commit":"13661b19934a74417713e98e3e1e4df6bb0f29ad","merge":"5f798d6 51d5c38","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 16:54:26 2020 -0800","message":"Merge pull request #37 from philippeitis/continuous_integration\n\nEnable Continuous Integration with GitHub Actions.","epoch":1583369666,"epoch_utc":null},{"commit":"51d5c3892d6ff1e2e6ac7c4f3e496e7d9ed4b6a7","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 16:21:06 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"Remove Windows tests, due to lack of support.","epoch":1583367666,"epoch_utc":null},{"commit":"e4eab4641ac15220f2787c5d27b443ab8c718b86","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 16:17:58 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/blkid.py"]},"message":"Change line in blkid.py to trigger CI","epoch":1583367478,"epoch_utc":null},{"commit":"9b148e0ba37e18749d95608e1bac6c090ab83ee2","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 16:16:19 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["requirements.txt"]},"message":"Add requirements.txt","epoch":1583367379,"epoch_utc":null},{"commit":"de28932650d5027e2781011f1243b89f053b241d","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 16:14:03 2020 -0800","stats":{"files_changed":1,"insertions":7,"deletions":6,"files":["jc/parsers/arp.py"]},"message":"Consolidate dictionary into creation, trigger CI","epoch":1583367243,"epoch_utc":null},{"commit":"5f798d603e461d2de5adf74662ba4d4b121f28f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 16:11:14 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/history.py"]},"message":"version bump and ack to philippeitis","epoch":1583367074,"epoch_utc":null},{"commit":"a0757b2dd3fc0f3e26622941d93bd909dae0a1f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 16:07:53 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":5,"files":["jc/parsers/foo.py"]},"message":"optimize line parsing","epoch":1583366873,"epoch_utc":null},{"commit":"498d51b4e802cb40cac58aae1eff1f723bbbd896","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 16:07:32 2020 -0800","stats":{"files_changed":1,"insertions":31,"deletions":0,"files":[".github/workflows/pythonapp.yml"]},"message":"Enable Continuous Integration with GitHub Actions.\n\nThis automatically runs unit tests on various operating systems and Python versions when Python files are modified to ensure that functionality remains correct.","epoch":1583366852,"epoch_utc":null},{"commit":"b06b6bae3f64f591c9075812dc1b632ef6d2da37","merge":"6aa2d5a 0652768","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 16:04:05 2020 -0800","message":"Merge pull request #36 from philippeitis/patch-3\n\nSimplify process() in history.py, avoid list allocation in parse()","epoch":1583366645,"epoch_utc":null},{"commit":"b5eaff21372a58aefb66e5afc5e863db8355fee1","merge":"d75c406 c01bcd3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 15:33:13 2020 -0800","message":"Merge pull request #35 from kellyjonbrazil/revert-34-patch-3\n\nRevert \"Simplify process() in history.py, avoid list allocation in parse()\"","epoch":1583364793,"epoch_utc":null},{"commit":"c01bcd3734382a0c388d9f4041fc888171ca7675","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 15:32:23 2020 -0800","stats":{"files_changed":1,"insertions":25,"deletions":12,"files":["jc/parsers/history.py"]},"message":"Revert \"Simplify process() in history.py, avoid list allocation in parse()\"","epoch":1583364743,"epoch_utc":null},{"commit":"d75c4068caaf4adbe9a39fa452ae867421053673","merge":"d96b3a6 0652768","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 15:31:55 2020 -0800","message":"Merge pull request #34 from philippeitis/patch-3\n\nSimplify process() in history.py, avoid list allocation in parse()","epoch":1583364715,"epoch_utc":null},{"commit":"6aa2d5a3d26f9f00c3334928f6f0e501860433da","merge":"69576f6 a63408c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 15:28:09 2020 -0800","message":"Merge pull request #33 from philippeitis/patch-2\n\nHandle case where only options are passed.","epoch":1583364489,"epoch_utc":null},{"commit":"065276805f0f2dd23a6382f0120ca07e9eae116f","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 13:35:31 2020 -0800","stats":{"files_changed":1,"insertions":12,"deletions":25,"files":["jc/parsers/history.py"]},"message":"Simplify process() in history.py, avoid list allocation in parse()","epoch":1583357731,"epoch_utc":null},{"commit":"a63408c8cf3f99646be2b375f651d6cf417f7ae0","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 13:16:35 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/cli.py"]},"message":"Handle case where only options are passed.","epoch":1583356595,"epoch_utc":null},{"commit":"69576f6bfae073196627a0a39b5ececb8666d25c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 12:03:40 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/cli.py"]},"message":"minor sytax fixes","epoch":1583352220,"epoch_utc":null},{"commit":"19845624e2996da4653efc2f312aceb514feaf5c","merge":"d96b3a6 22ff296","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 11:59:29 2020 -0800","message":"Merge pull request #32 from philippeitis/patch-1\n\nSimplify main(), magic() methods.","epoch":1583351969,"epoch_utc":null},{"commit":"22ff2964e9889587711e779ac24f8f8034212f5e","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 10:33:42 2020 -0800","stats":{"files_changed":1,"insertions":62,"deletions":75,"files":["jc/cli.py"]},"message":"Simplify main(), magic() methods.","epoch":1583346822,"epoch_utc":null},{"commit":"d96b3a65a98bc135d21d4feafc0a43317b5a11fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 08:30:52 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1583339452,"epoch_utc":null},{"commit":"4989445ef4bb8919d9b3b95e2fcee77ca7692aec","merge":"53ee2c3 6770892","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 11:46:09 2020 -0800","message":"Merge pull request #30 from kellyjonbrazil/dev\n\nDev v1.8.0","epoch":1583264769,"epoch_utc":null},{"commit":"6770892acd49aced225dbccf39290f33522c9001","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 11:37:59 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]},"message":"add release notes link","epoch":1583264279,"epoch_utc":null},{"commit":"d4eba8740fc325756f3db96ab37a5383540cbeff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 11:08:52 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"release date 3/3","epoch":1583262532,"epoch_utc":null},{"commit":"9f607605605e47990f97ccfd48fde19a14e036e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 10:54:27 2020 -0800","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["tests/test_group.py","tests/test_gshadow.py"]},"message":"add group and gshadow tests","epoch":1583261667,"epoch_utc":null},{"commit":"0a8f8ac934f040141e6a4eec8cf7170e1ca73294","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:55:43 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"add group and gshadow parsers","epoch":1583258143,"epoch_utc":null},{"commit":"6ae24c82447bcff606e7027dd01b916293b49584","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:55:17 2020 -0800","stats":{"files_changed":10,"insertions":274,"deletions":0,"files":["tests/fixtures/centos-7.7/group.json","tests/fixtures/centos-7.7/group.out","tests/fixtures/centos-7.7/gshadow.json","tests/fixtures/centos-7.7/gshadow.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/group.json","tests/fixtures/osx-10.14.6/group.out","tests/fixtures/ubuntu-18.04/group.json","tests/fixtures/ubuntu-18.04/group.out","tests/fixtures/ubuntu-18.04/gshadow.json"]},"message":"add group and gshadow test fixtures","epoch":1583258117,"epoch_utc":null},{"commit":"d3679082a8c5cff76eb7de67c33fe716a1402182","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:36:16 2020 -0800","stats":{"files_changed":1,"insertions":64,"deletions":0,"files":["README.md"]},"message":"add group and gshadow parsers","epoch":1583256976,"epoch_utc":null},{"commit":"fb08b42dca135705a3759435335d95c898d47f60","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:32:56 2020 -0800","stats":{"files_changed":2,"insertions":21,"deletions":21,"files":["docs/parsers/group.md","jc/parsers/group.py"]},"message":"change 'group_list' to 'members'","epoch":1583256776,"epoch_utc":null},{"commit":"4aeaa9f42a88bf4e05c8780a35cc8c4d83c9b842","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:32:25 2020 -0800","stats":{"files_changed":5,"insertions":316,"deletions":0,"files":["docgen.sh","docs/parsers/gshadow.md","jc/cli.py","jc/parsers/gshadow.py","tests/fixtures/ubuntu-18.04/gshadow.out"]},"message":"add /etc/gshadow parser","epoch":1583256745,"epoch_utc":null},{"commit":"5f5693da048cb4739dc56500c672dc8fbccaaf32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:07:28 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["docs/parsers/csv.md"]},"message":"spelling fix","epoch":1583255248,"epoch_utc":null},{"commit":"5eb0f61727f92a84fb3620e13db072167ef552ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:07:09 2020 -0800","stats":{"files_changed":4,"insertions":333,"deletions":0,"files":["docgen.sh","docs/parsers/group.md","jc/cli.py","jc/parsers/group.py"]},"message":"add /etc/group file parser","epoch":1583255229,"epoch_utc":null},{"commit":"958e998991b1cc61dc1dc341b90cd53f4691cd43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 17:15:05 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/csv.py"]},"message":"formatting","epoch":1583198105,"epoch_utc":null},{"commit":"b78c1509f67fb76d17ac97193a2851d8d9e17f62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 15:06:25 2020 -0800","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/csv.py"]},"message":"try/except dialect detection","epoch":1583190385,"epoch_utc":null},{"commit":"ce184d4d57faa3f1bca5bcaa02da7a5a5d995eb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 15:05:56 2020 -0800","stats":{"files_changed":20,"insertions":24054,"deletions":0,"files":["tests/fixtures/generic/csv-biostats.csv","tests/fixtures/generic/csv-biostats.json","tests/fixtures/generic/csv-cities.csv","tests/fixtures/generic/csv-cities.json","tests/fixtures/generic/csv-deniro.csv","tests/fixtures/generic/csv-deniro.json","tests/fixtures/generic/csv-example.csv","tests/fixtures/generic/csv-example.json","tests/fixtures/generic/csv-flyrna.json","tests/fixtures/generic/csv-flyrna.tsv","tests/fixtures/generic/csv-flyrna2.json","tests/fixtures/generic/csv-flyrna2.tsv","tests/fixtures/generic/csv-homes-pipe.csv","tests/fixtures/generic/csv-homes-pipe.json","tests/fixtures/generic/csv-homes.csv","tests/fixtures/generic/csv-homes.json","tests/fixtures/generic/csv-insurance.csv","tests/fixtures/generic/csv-insurance.json","tests/fixtures/generic/oscar_age_male.csv","tests/test_csv.py"]},"message":"add csv parser tests","epoch":1583190356,"epoch_utc":null},{"commit":"b4c3714ced9ee5cc6a7ef0c59a43cf85e1cb9824","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 14:10:15 2020 -0800","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["README.md"]},"message":"removed [OPTIONS] PARSER syntax. still works but prefer the PARSER [OPTIONS] syntax for better performance","epoch":1583187015,"epoch_utc":null},{"commit":"5b7dfa043864f1a3f34aa4ef5c6554a2dfe185f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 14:07:56 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"formatting","epoch":1583186876,"epoch_utc":null},{"commit":"391a3884765780497dc34e0e9938ff5032c81291","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 14:07:29 2020 -0800","stats":{"files_changed":2,"insertions":49,"deletions":0,"files":["README.md","changelog.txt"]},"message":"doc update","epoch":1583186849,"epoch_utc":null},{"commit":"d9c4e2ed4c0f908f4b63c2376b53ddfd32a0fae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 14:03:58 2020 -0800","stats":{"files_changed":4,"insertions":241,"deletions":0,"files":["docgen.sh","docs/parsers/csv.md","jc/cli.py","jc/parsers/csv.py"]},"message":"add csv file parser","epoch":1583186638,"epoch_utc":null},{"commit":"0c42db38b102987629e40cee2716b826161e6e94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 10:30:12 2020 -0800","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/who.md","jc/parsers/who.py"]},"message":"doc update","epoch":1583173812,"epoch_utc":null},{"commit":"2f9be8bf33f8be5651d06da9d316f7894606df19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 08:32:42 2020 -0800","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/cli.py"]},"message":"simplify usage","epoch":1583166762,"epoch_utc":null},{"commit":"e8c00155e861b9eedfdf37a22912271bec581d62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 07:43:45 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"add -b to warning message","epoch":1583163825,"epoch_utc":null},{"commit":"cc88fdd9ee3951d7ef2aa881cc12f0b7f96aef86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 21:17:50 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"update example","epoch":1583126270,"epoch_utc":null},{"commit":"d9de11ef1d846a9625dad0adb962b864404c90c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 21:16:57 2020 -0800","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["README.md"]},"message":"add another who example","epoch":1583126217,"epoch_utc":null},{"commit":"0ceda97d0968b67b70cdbb68f7a62657e79c9935","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 19:03:27 2020 -0800","stats":{"files_changed":1,"insertions":88,"deletions":0,"files":["tests/test_who.py"]},"message":"who parser tests","epoch":1583118207,"epoch_utc":null},{"commit":"d0dec92ba84640ddc40da7c6faa6568b76757e04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 18:57:51 2020 -0800","stats":{"files_changed":12,"insertions":36,"deletions":0,"files":["tests/fixtures/centos-7.7/who-a.json","tests/fixtures/centos-7.7/who-a.out","tests/fixtures/centos-7.7/who.json","tests/fixtures/centos-7.7/who.out","tests/fixtures/osx-10.14.6/who-a.json","tests/fixtures/osx-10.14.6/who-a.out","tests/fixtures/osx-10.14.6/who.json","tests/fixtures/osx-10.14.6/who.out","tests/fixtures/ubuntu-18.04/who-a.json","tests/fixtures/ubuntu-18.04/who-a.out","tests/fixtures/ubuntu-18.04/who.json","tests/fixtures/ubuntu-18.04/who.out"]},"message":"add who test fixtures","epoch":1583117871,"epoch_utc":null},{"commit":"d420c008d8aaa0879fa5a3f236d81acb506376c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 17:52:14 2020 -0800","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["jc/parsers/who.py"]},"message":"fix for pts lines with no user info","epoch":1583113934,"epoch_utc":null},{"commit":"f0b32db4333477e22cc40de62cf026a6a7aa2eb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 17:39:02 2020 -0800","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","docs/parsers/who.md"]},"message":"who doc update","epoch":1583113142,"epoch_utc":null},{"commit":"bc838eda591473d32b11a885e60ef653925739d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 17:38:51 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/parsers/who.py"]},"message":"fix output for non-extended","epoch":1583113131,"epoch_utc":null},{"commit":"afe55b6af07b74816d33d9555ffaa1c1921dd27a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 17:07:28 2020 -0800","stats":{"files_changed":1,"insertions":46,"deletions":0,"files":["README.md"]},"message":"add who parser","epoch":1583111248,"epoch_utc":null},{"commit":"dd3a3ac302d7b35beef1181e74aed0faf96fd3e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 17:04:06 2020 -0800","stats":{"files_changed":4,"insertions":255,"deletions":9,"files":["changelog.txt","docgen.sh","docs/parsers/who.md","jc/parsers/who.py"]},"message":"doc update and process pid integers","epoch":1583111046,"epoch_utc":null},{"commit":"f9982a79474c1838f37fc0ff88437980b228d7a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 16:49:52 2020 -0800","stats":{"files_changed":1,"insertions":11,"deletions":2,"files":["jc/parsers/who.py"]},"message":"fixes for from and comment fields","epoch":1583110192,"epoch_utc":null},{"commit":"07c1be9e9ad9f62cf76c23788152de8f3530ee16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 16:30:04 2020 -0800","stats":{"files_changed":2,"insertions":170,"deletions":0,"files":["jc/cli.py","jc/parsers/who.py"]},"message":"add who command parser","epoch":1583109004,"epoch_utc":null},{"commit":"f832b88755bfbd3878ec402e603180e6825279be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 10:17:47 2020 -0800","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["tests/test_passwd.py","tests/test_shadow.py"]},"message":"add passwd and shadow tests","epoch":1583086667,"epoch_utc":null},{"commit":"0fac757efca41db062b2f65acc727963c5fb353c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 12:25:41 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"add passwd and shadow parsers","epoch":1583007941,"epoch_utc":null},{"commit":"fc15742065531152f3d5895042eeb806e33a192a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 12:25:22 2020 -0800","stats":{"files_changed":10,"insertions":215,"deletions":0,"files":["tests/fixtures/centos-7.7/passwd.json","tests/fixtures/centos-7.7/passwd.out","tests/fixtures/centos-7.7/shadow.json","tests/fixtures/centos-7.7/shadow.out","tests/fixtures/osx-10.14.6/passwd.json","tests/fixtures/osx-10.14.6/passwd.out","tests/fixtures/ubuntu-18.04/passwd.json","tests/fixtures/ubuntu-18.04/passwd.out","tests/fixtures/ubuntu-18.04/shadow.json","tests/fixtures/ubuntu-18.04/shadow.out"]},"message":"passwd and shadow test fixtures","epoch":1583007922,"epoch_utc":null},{"commit":"6f2466a1319eaa4256ae7a2a0f23b3ff37882d37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 11:56:12 2020 -0800","stats":{"files_changed":1,"insertions":73,"deletions":0,"files":["README.md"]},"message":"update readme with /etc/passwd and /etc/shadow file parsers","epoch":1583006172,"epoch_utc":null},{"commit":"4b90e22f0a9c6790bca62c8314945a7ffc6e267b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 11:50:46 2020 -0800","stats":{"files_changed":2,"insertions":137,"deletions":9,"files":["docs/parsers/shadow.md","jc/parsers/shadow.py"]},"message":"doc update","epoch":1583005846,"epoch_utc":null},{"commit":"c4935687853fb3b079ae42614793cdafe68e124e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 11:46:38 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/passwd.md","jc/parsers/passwd.py"]},"message":"doc fix","epoch":1583005598,"epoch_utc":null},{"commit":"1cdf004b7728901dc137e57b0c8994edfdd6d417","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 11:46:24 2020 -0800","stats":{"files_changed":4,"insertions":190,"deletions":0,"files":["docgen.sh","docs/parsers/shadow.md","jc/cli.py","jc/parsers/shadow.py"]},"message":"add /etc/shadow parser","epoch":1583005584,"epoch_utc":null},{"commit":"a4ea50426184d30cbe849a8f80bfd5c975075c9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 11:33:14 2020 -0800","stats":{"files_changed":4,"insertions":303,"deletions":0,"files":["docgen.sh","docs/parsers/passwd.md","jc/cli.py","jc/parsers/passwd.py"]},"message":"add /etc/passwd parser","epoch":1583004794,"epoch_utc":null},{"commit":"4c2c234c3bf68d1aac66bd4d1f22b9f97e99128d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 15:15:24 2020 -0800","stats":{"files_changed":16,"insertions":673,"deletions":0,"files":["tests/fixtures/centos-7.7/last-w.json","tests/fixtures/centos-7.7/last-w.out","tests/fixtures/centos-7.7/last.json","tests/fixtures/centos-7.7/last.out","tests/fixtures/centos-7.7/lastb.json","tests/fixtures/centos-7.7/lastb.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/last.json","tests/fixtures/osx-10.14.6/last.out","tests/fixtures/ubuntu-18.04/last-w.json","tests/fixtures/ubuntu-18.04/last-w.out","tests/fixtures/ubuntu-18.04/last.json","tests/fixtures/ubuntu-18.04/last.out","tests/fixtures/ubuntu-18.04/lastb.json","tests/fixtures/ubuntu-18.04/lastb.out","tests/test_last.py"]},"message":"add last and lastb tests","epoch":1582931724,"epoch_utc":null},{"commit":"3d4c0f3e89dab6496ff74df350e3238d6625933c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 14:50:29 2020 -0800","stats":{"files_changed":22,"insertions":285,"deletions":0,"files":["tests/fixtures/centos-7.7/blkid-ip-multi.json","tests/fixtures/centos-7.7/blkid-ip-multi.out","tests/fixtures/centos-7.7/blkid-ip-udev-multi.json","tests/fixtures/centos-7.7/blkid-ip-udev-multi.out","tests/fixtures/centos-7.7/blkid-ip-udev.json","tests/fixtures/centos-7.7/blkid-ip-udev.out","tests/fixtures/centos-7.7/blkid-sda2.json","tests/fixtures/centos-7.7/blkid-sda2.out","tests/fixtures/centos-7.7/blkid.json","tests/fixtures/centos-7.7/blkid.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/blkid-ip-multi.json","tests/fixtures/ubuntu-18.04/blkid-ip-multi.out",".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.json",".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.out","tests/fixtures/ubuntu-18.04/blkid-ip-udev.json","tests/fixtures/ubuntu-18.04/blkid-ip-udev.out","tests/fixtures/ubuntu-18.04/blkid-sda2.json","tests/fixtures/ubuntu-18.04/blkid-sda2.out","tests/fixtures/ubuntu-18.04/blkid.json","tests/fixtures/ubuntu-18.04/blkid.out","tests/test_blkid.py"]},"message":"add blkid tests","epoch":1582930229,"epoch_utc":null},{"commit":"52fad02903468c05d2422a340ad8dbcdf18ed475","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 13:31:38 2020 -0800","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"doc update","epoch":1582925498,"epoch_utc":null},{"commit":"9dcabc057c40e345971a08474b5b886e6b60a8de","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 10:57:14 2020 -0800","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/blkid.py"]},"message":"support multi device udev output","epoch":1582916234,"epoch_utc":null},{"commit":"db8c1079ddc25922ab6a20d0f71fb19af38f8092","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 09:54:07 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/blkid.py"]},"message":"use maxsplit=1 in case there are multiple '=' delimiters","epoch":1582912447,"epoch_utc":null},{"commit":"8f954673abdbbd4d9b9da3eacc61b335b4909f89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 09:07:36 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/blkid.py"]},"message":"use shlex split for values within quotations that have spaces","epoch":1582909656,"epoch_utc":null},{"commit":"79522d1c7dd4dec15b75b06dda002752f7d97e36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 08:51:48 2020 -0800","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"doc fixes","epoch":1582908708,"epoch_utc":null},{"commit":"a18bf030794efef125c70a32fe82855e47649b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 08:50:35 2020 -0800","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/parsers/last.py","jc/parsers/ls.py"]},"message":"use raw strings for regular expressions","epoch":1582908635,"epoch_utc":null},{"commit":"c02b6b5d827d26b43db0a3457124714aa2dbbc98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 21:21:19 2020 -0800","stats":{"files_changed":3,"insertions":81,"deletions":1,"files":["README.md","changelog.txt","setup.py"]},"message":"doc updates","epoch":1582867279,"epoch_utc":null},{"commit":"f99b4232848b0d868804acc4125836bfcf475bba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 21:04:24 2020 -0800","stats":{"files_changed":2,"insertions":134,"deletions":29,"files":["docs/parsers/blkid.md","jc/parsers/blkid.py"]},"message":"doc update","epoch":1582866264,"epoch_utc":null},{"commit":"d7d9d45d4fba89e74f7490c463eb26bf20a5d127","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:59:09 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/blkid.py"]},"message":"add missing comma","epoch":1582865949,"epoch_utc":null},{"commit":"90065ec0cdc8c5abc13bc0027f63658dacf3cfb2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:57:22 2020 -0800","stats":{"files_changed":1,"insertions":31,"deletions":26,"files":["jc/parsers/blkid.py"]},"message":"add more integers","epoch":1582865842,"epoch_utc":null},{"commit":"51157ebb867a48332c768bf3086614944aebdb62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:49:14 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/blkid.py"]},"message":"another devname fix","epoch":1582865354,"epoch_utc":null},{"commit":"96d95c79ca0938e326f55f858f8153df9cb49e44","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:47:07 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/blkid.py"]},"message":"devname fix","epoch":1582865227,"epoch_utc":null},{"commit":"e5da34c23306463e8707b15676db0ca53bf66757","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:41:06 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/blkid.py"]},"message":"check if devname key exists before renaming","epoch":1582864866,"epoch_utc":null},{"commit":"f09d657f7728242947db3dc63ff6779d08c37866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:36:19 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/blkid.py"]},"message":"rename devname to device","epoch":1582864579,"epoch_utc":null},{"commit":"0f4b0189f54dc0b3622cd407c5565e53ea111379","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:31:17 2020 -0800","stats":{"files_changed":1,"insertions":35,"deletions":3,"files":["jc/parsers/blkid.py"]},"message":"process integer values","epoch":1582864277,"epoch_utc":null},{"commit":"4666042abb3142e2cfb518db9ffe22d9e608e090","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:21:02 2020 -0800","stats":{"files_changed":4,"insertions":216,"deletions":0,"files":["docgen.sh","docs/parsers/blkid.md","jc/cli.py","jc/parsers/blkid.py"]},"message":"add blkid parser","epoch":1582863662,"epoch_utc":null},{"commit":"027d544c2bb778adc0ee9463832f19b10e099a0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 16:08:56 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"]},"message":"add last and lastb parser","epoch":1582848536,"epoch_utc":null},{"commit":"f1967d0138d27bde864c2400aa75baa8a39bbfde","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 16:08:39 2020 -0800","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/last.py"]},"message":"system_boot fix","epoch":1582848519,"epoch_utc":null},{"commit":"c1d896027dd1ce021e048b3e77eab24ff59d08bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 15:58:12 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/last.py"]},"message":"fix system_boot tty","epoch":1582847892,"epoch_utc":null},{"commit":"5c2d2a66187d32d62b31b7c7f13e502fdb7f9635","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 15:44:36 2020 -0800","stats":{"files_changed":3,"insertions":190,"deletions":6,"files":["docgen.sh","docs/parsers/last.md","jc/parsers/last.py"]},"message":"process function and docs","epoch":1582847076,"epoch_utc":null},{"commit":"997b269b0b7e53a456e2a0bd997ead6c2ae843bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 15:26:09 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/last.py"]},"message":"btmp fix","epoch":1582845969,"epoch_utc":null},{"commit":"61257e7525c25827cb8057ed5c612e54ea9b9637","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 15:14:43 2020 -0800","stats":{"files_changed":2,"insertions":119,"deletions":1,"files":["jc/cli.py","jc/parsers/last.py"]},"message":"add last and lastb parser","epoch":1582845283,"epoch_utc":null},{"commit":"53ee2c36310cb84390ef96644aee6871769151c9","merge":"2ad3167 8bfa0bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 10:59:14 2020 -0800","message":"Merge pull request #29 from kellyjonbrazil/dev\n\nDev v1.7.5","epoch":1582829954,"epoch_utc":null},{"commit":"8bfa0bddec9ff1c21972019467dcf5738ab3afd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 10:50:05 2020 -0800","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to 1.7.5","epoch":1582829405,"epoch_utc":null},{"commit":"ad61e6bc81177a2add7d052bf1ddec5f1b3f2976","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 10:48:09 2020 -0800","stats":{"files_changed":26,"insertions":598,"deletions":133,"files":["tests/fixtures/centos-7.7/ls-R-newlines.json","tests/fixtures/centos-7.7/ls-R-newlines.out","tests/fixtures/centos-7.7/ls-l-newlines.json","tests/fixtures/centos-7.7/ls-l-newlines.out","tests/fixtures/centos-7.7/ls-lR-newlines.json","tests/fixtures/centos-7.7/ls-lR-newlines.out","tests/fixtures/centos-7.7/ls-newlines.json","tests/fixtures/centos-7.7/ls-newlines.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/ls-R-newlines.json","tests/fixtures/osx-10.14.6/ls-R-newlines.out","tests/fixtures/osx-10.14.6/ls-l-newlines.json","tests/fixtures/osx-10.14.6/ls-l-newlines.out","tests/fixtures/osx-10.14.6/ls-lR-newlines.json","tests/fixtures/osx-10.14.6/ls-lR-newlines.out","tests/fixtures/osx-10.14.6/ls-newlines.json","tests/fixtures/osx-10.14.6/ls-newlines.out","tests/fixtures/ubuntu-18.04/ls-R-newlines.json","tests/fixtures/ubuntu-18.04/ls-R-newlines.out","tests/fixtures/ubuntu-18.04/ls-l-newlines.json","tests/fixtures/ubuntu-18.04/ls-l-newlines.out","tests/fixtures/ubuntu-18.04/ls-lR-newlines.json","tests/fixtures/ubuntu-18.04/ls-lR-newlines.out","tests/fixtures/ubuntu-18.04/ls-newlines.json","tests/fixtures/ubuntu-18.04/ls-newlines.out","tests/test_ls.py"]},"message":"add ls tests for filenames with newline characters","epoch":1582829289,"epoch_utc":null},{"commit":"873b5ba8acf599d083d6031b818d5fca83cbca9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 09:36:57 2020 -0800","stats":{"files_changed":1,"insertions":27,"deletions":31,"files":["README.md"]},"message":"move examples to bottom","epoch":1582825017,"epoch_utc":null},{"commit":"6ae50054e2e8c7ca730013b43062eedc230c0ad4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 20:30:44 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"readme update","epoch":1582605044,"epoch_utc":null},{"commit":"22a35f41bf9c404d3532611f5929143d04b10010","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 17:50:56 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/ls.py"]},"message":"move variables to top","epoch":1582595456,"epoch_utc":null},{"commit":"961696c963215a9dab56113ff89f21a6e9739df6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 17:47:31 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/ls.py"]},"message":"add a warning if newlines are detected in naked ls","epoch":1582595251,"epoch_utc":null},{"commit":"c7b7f1a5dcf77a1f4c23ef6bbf5683fd1a055f72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 17:24:56 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"fix for files with newlines in naked ls","epoch":1582593896,"epoch_utc":null},{"commit":"b5a0d650b128d8af81bb14dd5d007349529cb66f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 17:01:33 2020 -0800","stats":{"files_changed":1,"insertions":151,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-newlines.out"]},"message":"ls output with newlines","epoch":1582592493,"epoch_utc":null},{"commit":"573b27946474276592ee7494689ce9a88f5a05f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 17:01:12 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"fixup for filenames that start with a newline character","epoch":1582592472,"epoch_utc":null},{"commit":"116e07f1614b4a45eb58ffcfe20b5efa71c473a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 16:38:29 2020 -0800","stats":{"files_changed":1,"insertions":6,"deletions":7,"files":["jc/parsers/ls.py"]},"message":"fixes for multiple consecutive newlines and trailing newlines in filenames","epoch":1582591109,"epoch_utc":null},{"commit":"964868c8aff99edf37b0db41c7d16f8b84ac4704","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 15:19:43 2020 -0800","stats":{"files_changed":2,"insertions":21,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"add support for newlines in filenames (only with ls -l)","epoch":1582586383,"epoch_utc":null},{"commit":"c8dac32df8102c2b782e87d55bb95ca2d9490185","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 13:05:35 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"readme update","epoch":1582578335,"epoch_utc":null},{"commit":"72a0016bd833699c3819baa899f335f75b8c1943","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 20 15:38:45 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"use link to anchor for Parsers","epoch":1582241925,"epoch_utc":null},{"commit":"2ad316743460bb6620e7ede251e1dc2739b073fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 19 07:12:43 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update doc url","epoch":1582125163,"epoch_utc":null},{"commit":"ddabfaa05c63f886b17e5b4d37cd83fcfdb9b221","merge":"873771d f857523","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 19 07:05:29 2020 -0800","message":"Merge pull request #25 from kellyjonbrazil/dev\n\nDev v1.7.4","epoch":1582124729,"epoch_utc":null},{"commit":"f857523ca756864211b6b18af5a8886e5db200bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 19 07:02:50 2020 -0800","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"bump to version 1.7.4","epoch":1582124570,"epoch_utc":null},{"commit":"00d53858e820f00ba015bc25629100c8e5495221","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 22:57:15 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add note about aliases not being supported","epoch":1582009035,"epoch_utc":null},{"commit":"c008167e660929a91606bb96498cdc113e815f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 22:48:44 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"add time-style=full-iso option to doc","epoch":1582008524,"epoch_utc":null},{"commit":"102344a041e9e0aff8b6d9db1873ba1064f7e895","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 22:32:07 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/ls.py"]},"message":"formatting","epoch":1582007527,"epoch_utc":null},{"commit":"c865298ef3613fe6ce17f41c15209a69940af1ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 22:29:39 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"remove unnecessary enumerate in for loop","epoch":1582007379,"epoch_utc":null},{"commit":"6ac03faf939bcda8930a48a5e832b557813e2129","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 18:58:07 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"Revert \"add ubuntu and centos default ls aliases to magic_commands\"\n\nThis reverts commit 49c2701743706b6cbf0e52b2c7f275e301315189.","epoch":1581994687,"epoch_utc":null},{"commit":"49c2701743706b6cbf0e52b2c7f275e301315189","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 18:55:03 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"add ubuntu and centos default ls aliases to magic_commands","epoch":1581994503,"epoch_utc":null},{"commit":"d1a271b08e64b42be8cec11377b0e18435a0caec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 18:33:55 2020 -0800","stats":{"files_changed":21,"insertions":35333,"deletions":1374,"files":["tests/fixtures/centos-7.7/ls-R.json","tests/fixtures/centos-7.7/ls-R.out","tests/fixtures/centos-7.7/ls-alR.json","tests/fixtures/centos-7.7/ls-alR.out","tests/fixtures/centos-7.7/ls-glob.json","tests/fixtures/centos-7.7/ls-glob.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/ls-R.json","tests/fixtures/osx-10.14.6/ls-R.out","tests/fixtures/osx-10.14.6/ls-alR.json","tests/fixtures/osx-10.14.6/ls-alR.out","tests/fixtures/osx-10.14.6/ls-glob.json","tests/fixtures/osx-10.14.6/ls-glob.out","tests/fixtures/ubuntu-18.04/ls-R.json","tests/fixtures/ubuntu-18.04/ls-R.out","tests/fixtures/ubuntu-18.04/ls-alR.json","tests/fixtures/ubuntu-18.04/ls-alR.out","tests/fixtures/ubuntu-18.04/ls-glob.json","tests/fixtures/ubuntu-18.04/ls-glob.out","tests/fixtures/ubuntu-18.04/ls-lR.out","tests/test_ls.py"]},"message":"add new ls tests for recursive and multiple directories with glob","epoch":1581993235,"epoch_utc":null},{"commit":"7388ad19b9d252d3e66659e4bc37171cef2a9748","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 17:31:15 2020 -0800","stats":{"files_changed":4,"insertions":6,"deletions":4,"files":["docs/parsers/ls.md","jc/cli.py","jc/parsers/ls.py","setup.py"]},"message":"bump to v1.8.0","epoch":1581989475,"epoch_utc":null},{"commit":"2e63cb5fadd032c7cb54a618e8b374ee853abcca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 17:16:34 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"version bump ls to 1.1","epoch":1581988594,"epoch_utc":null},{"commit":"e7f14d02b12c7dcba309f2d28a0f171769d1ba37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 17:14:27 2020 -0800","stats":{"files_changed":3,"insertions":1438,"deletions":8,"files":["jc/parsers/ls.py","tests/fixtures/ubuntu-18.04/ls-R.out","tests/fixtures/ubuntu-18.04/ls-lR.out"]},"message":"update ls to allow multi directory (glob and -R). Adds 'parent' key if found","epoch":1581988467,"epoch_utc":null},{"commit":"873771d05ab0b77163c95d2c37e11edf38451832","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 09:16:32 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1581959792,"epoch_utc":null},{"commit":"d7de122e36e0698e00f321fbac8dc0b543cf9e8a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 14 09:44:24 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"prettify link","epoch":1581702264,"epoch_utc":null},{"commit":"4ef0434f536c6658ddc2b48a3db113df2fd26000","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 14 09:43:02 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["README.md"]},"message":"formatting update","epoch":1581702182,"epoch_utc":null},{"commit":"1aa2c9925996f2358b6272547db755ec3098a8a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 22:10:22 2020 -0800","stats":{"files_changed":2,"insertions":1,"deletions":2,"files":["README.md","jc/parsers/history.py"]},"message":"removed history from magic syntax","epoch":1581660622,"epoch_utc":null},{"commit":"c2450b27b079b02ed3f4ece9e36547f01cd4b139","merge":"028e136 14d6d8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 21:26:18 2020 -0500","message":"Merge pull request #22 from kellyjonbrazil/dev\n\nDev 1.7.3","epoch":1581657978,"epoch_utc":null},{"commit":"14d6d8b84f0ddeff984aff486e2e697a91ac6fb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 18:24:53 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump to 1.7.3","epoch":1581647093,"epoch_utc":null},{"commit":"f0e3846c038ec5507cd4a19980d83ee0fb969ef5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 18:20:22 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["README.md"]},"message":"formatting","epoch":1581646822,"epoch_utc":null},{"commit":"6ba64f1128373843b068226424a3af545ac9d22c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 18:19:19 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":2,"files":["README.md"]},"message":"usage update","epoch":1581646759,"epoch_utc":null},{"commit":"13bcdbc6c9a81bc5d52fe7a84e6a0a34908db8bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 17:50:51 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"doc update","epoch":1581645051,"epoch_utc":null},{"commit":"cfba62db20674d788601354211a10e2b1675a0c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 17:48:21 2020 -0800","stats":{"files_changed":1,"insertions":13,"deletions":6,"files":["jc/cli.py"]},"message":"correct parser search in magic()","epoch":1581644901,"epoch_utc":null},{"commit":"18fb69e36e303a3f9530dcb80354b25bfdbb931d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 17:29:45 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"docs/parsers link","epoch":1581643785,"epoch_utc":null},{"commit":"474eb0f3fdeaa612e189d745b12a5ed9c6e0a31b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 17:24:10 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"doc updates","epoch":1581643450,"epoch_utc":null},{"commit":"7f47b533701e60449351d5da03cd5960e0dec9ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 17:20:00 2020 -0800","stats":{"files_changed":1,"insertions":90,"deletions":68,"files":["README.md"]},"message":"add alternate magic syntax","epoch":1581643200,"epoch_utc":null},{"commit":"dc2907d3ce101043b30bcce71abb4bb02897f43a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 16:58:25 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["docs/parsers/crontab.md"]},"message":"doc update","epoch":1581641905,"epoch_utc":null},{"commit":"1af85811e06c489051c456918284a746ce12c692","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 16:57:57 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/fstab.py"]},"message":"remove magic_command info","epoch":1581641877,"epoch_utc":null},{"commit":"1c1b19a478fe5c356a93cd165518429e77fcbdf0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 16:57:30 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab.py"]},"message":"doc update","epoch":1581641850,"epoch_utc":null},{"commit":"66942d64babf932faeb887eb4ec0cab32829321a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 16:56:48 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["changelog.txt"]},"message":"changelog update","epoch":1581641808,"epoch_utc":null},{"commit":"2fb6ae08d76e7a5727b2fcdd5def3e3822e0cf72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 12:17:41 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"]},"message":"fix shlex usage","epoch":1581625061,"epoch_utc":null},{"commit":"bf8811e03e2a5b736f4c084f42400fcde400ff3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 10:25:41 2020 -0500","stats":{"files_changed":1,"insertions":6,"deletions":3,"files":["jc/cli.py"]},"message":"add comments","epoch":1581618341,"epoch_utc":null},{"commit":"c8b502c571d3081ca3086e349a426ca252a3bb84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 10:14:32 2020 -0500","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/cli.py"]},"message":"remove unnecessary join and add comments","epoch":1581617672,"epoch_utc":null},{"commit":"81c11a975c6ee66a1f83350df8b065a6b07dcc9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 10:08:43 2020 -0500","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/cli.py"]},"message":"added docstrings","epoch":1581617323,"epoch_utc":null},{"commit":"0d370eb403ab4d9ed11e36776efc08bdd3505c1a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 10:03:11 2020 -0500","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"doc update","epoch":1581616991,"epoch_utc":null},{"commit":"7492c3f1e312cdb0c58c2077db0d60d2cab1e58f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 09:48:42 2020 -0500","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"changelog update","epoch":1581616122,"epoch_utc":null},{"commit":"515a8a84b79c9bf6f3001d3c52faa82a6709b8d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 09:47:40 2020 -0500","stats":{"files_changed":33,"insertions":33,"deletions":33,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add \"command\" to description","epoch":1581616060,"epoch_utc":null},{"commit":"dd6680efb2b15bb8ed676016aae1c65193dfe147","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 09:47:16 2020 -0500","stats":{"files_changed":2,"insertions":29,"deletions":14,"files":["changelog.txt","jc/cli.py"]},"message":"allow condensed options (-prdq is equivalent to -p -r -d -q)","epoch":1581616036,"epoch_utc":null},{"commit":"a7158373cd225685f5c398fa36b8d5208e20521c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 12 00:16:17 2020 -0500","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"comment update","epoch":1581495377,"epoch_utc":null},{"commit":"6d50ec71997cac9c898737de93b8a945f0351e53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 12 00:11:48 2020 -0500","stats":{"files_changed":1,"insertions":9,"deletions":6,"files":["jc/cli.py"]},"message":"add try/except to fix bare jc command condition","epoch":1581495108,"epoch_utc":null},{"commit":"95dbf98e8e03486f74d986683f52699f4f9c9577","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 11 19:14:51 2020 -0800","stats":{"files_changed":1,"insertions":26,"deletions":6,"files":["jc/cli.py"]},"message":"allow options in magic syntax","epoch":1581477291,"epoch_utc":null},{"commit":"d49323e4ebf2a8aebd1d8ea65ef0854ee8bcb29f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 11 18:09:21 2020 -0800","stats":{"files_changed":33,"insertions":33,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add magic_commands list to info","epoch":1581473361,"epoch_utc":null},{"commit":"08c1e2aec9d6bb68653dc12ba2272535fb7cef09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 11 18:08:59 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"]},"message":"add magic syntax","epoch":1581473339,"epoch_utc":null},{"commit":"a2c137df2e6d3b133df5df0bb3f9b1ca69990557","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 11 18:08:37 2020 -0800","stats":{"files_changed":2,"insertions":66,"deletions":299,"files":["jc/cli.py","jc/cli.py.old"]},"message":"better magic command syntax logic using introspection information from parser modules","epoch":1581473317,"epoch_utc":null},{"commit":"fe27dcdb8f72b5a288f978b87be2eb930099543e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 11 12:16:23 2020 -0800","stats":{"files_changed":2,"insertions":319,"deletions":45,"files":["jc/cli.py","jc/cli.py.old"]},"message":"proof of concept for magic syntax (e.g. jc ls -al)","epoch":1581452183,"epoch_utc":null},{"commit":"028e136161ac15f588845f87907b4565a6ee7be2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 8 12:46:42 2020 -0800","stats":{"files_changed":4,"insertions":7,"deletions":2,"files":["MANIFEST.in","changelog.txt","jc/cli.py","setup.py"]},"message":"bump to 1.7.2: add test fixtures to package","epoch":1581194802,"epoch_utc":null},{"commit":"9a85a0a4d504447b32fb622bb17cebc5e47f687f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 8 12:46:14 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/crontab_u.md","jc/parsers/crontab_u.py"]},"message":"fix doc","epoch":1581194774,"epoch_utc":null},{"commit":"3a1cbc4d5063344c3e3a4bf510d651a36beedfb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 22:26:47 2020 -0800","stats":{"files_changed":1,"insertions":14,"deletions":14,"files":["jc/cli.py"]},"message":"move info class to top","epoch":1580970407,"epoch_utc":null},{"commit":"77d334f7f386f79ec0571325500054fdab207f31","merge":"4de8f42 53cdf86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:59:52 2020 -0800","message":"Merge pull request #19 from kellyjonbrazil/dev-1.7.1\n\nDev v1.7.1","epoch":1580950792,"epoch_utc":null},{"commit":"53cdf863acc72dbdb671773e30277f42e9eadc0e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:53:17 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["changelog.txt"]},"message":"changelog update","epoch":1580950397,"epoch_utc":null},{"commit":"7b7e7fe0fe92edef1e559bd7ae8272530d7ed5c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:50:55 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"changelog update","epoch":1580950255,"epoch_utc":null},{"commit":"0c03132847a3d2bcbdb0b743e1472865916cced4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:18:58 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"fix error codes using sys.exit()","epoch":1580948338,"epoch_utc":null},{"commit":"3b81f7e2a1381958b33962d4531f3fa223c6a83e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:12:09 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"exit code on ctrl-c exit","epoch":1580947929,"epoch_utc":null},{"commit":"3d76437b435660e92633c604c4ad32ee0500a28b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:00:23 2020 -0800","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ini.md","docs/parsers/xml.md","jc/parsers/ini.py","jc/parsers/xml.py"]},"message":"doc fix","epoch":1580947223,"epoch_utc":null},{"commit":"4bc54c78cea48682ed0432ea56460a26a0e52f83","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:00:10 2020 -0800","stats":{"files_changed":4,"insertions":7,"deletions":7,"files":["docs/parsers/du.md","docs/parsers/history.md","jc/parsers/du.py","jc/parsers/history.py"]},"message":"fix compatibility list","epoch":1580947210,"epoch_utc":null},{"commit":"3d303a96b9f6d582b1e99a632da539c3bee4df7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 15:52:39 2020 -0800","stats":{"files_changed":5,"insertions":16,"deletions":2,"files":["tests/fixtures/centos-7.7/crontab-u.json","tests/fixtures/centos-7.7/{crontab2.out => crontab-u.out}","tests/fixtures/centos-7.7/crontab.json","tests/fixtures/ubuntu-18.04/crontab-u.json","tests/test_crontab_u.py"]},"message":"crontab bug fix and tests","epoch":1580946759,"epoch_utc":null},{"commit":"33c99d031d18e52a8ca85dfc1a8cba0acebfc3bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 15:12:59 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/crontab.py"]},"message":"fix line clobbering bug","epoch":1580944379,"epoch_utc":null},{"commit":"caf7e9f69a22f3c9b3d4624fd2238d6e54d932ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 15:11:51 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/crontab_u.py"]},"message":"fix line clobbering bug and add user field to shortcuts","epoch":1580944311,"epoch_utc":null},{"commit":"9449f1f5d5e7bc075549549758af5cc3a6c4524f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 14:44:49 2020 -0800","stats":{"files_changed":4,"insertions":9,"deletions":3,"files":["changelog.txt","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/fixtures/centos-7.7/crontab2.out"]},"message":"crontab bugfix: inserting header row was clobbering the first data row","epoch":1580942689,"epoch_utc":null},{"commit":"6bad164b5e2a5b7c7ce82c69b6c091fc079ab2fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 14:10:22 2020 -0800","stats":{"files_changed":1,"insertions":7,"deletions":9,"files":["jc/cli.py"]},"message":"simplify by removing unnecessary getattr calls","epoch":1580940622,"epoch_utc":null},{"commit":"bb5ba7ddb146821db2efe095b6de5ae5b72bb335","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 13:57:34 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/cli.py"]},"message":"add indent variable to helptext","epoch":1580939854,"epoch_utc":null},{"commit":"8b2e01d5404649e8f94c81ca3b5fa05fe8962220","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 13:50:12 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"doc update","epoch":1580939412,"epoch_utc":null},{"commit":"ff1159b1deb9b870382a6066166961902679b569","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 11:45:17 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"exit codes on error","epoch":1580931917,"epoch_utc":null},{"commit":"a2fd3202a0a3df336792f167c546ea3e53ea2332","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 11:34:33 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/pip_list.py","jc/parsers/pip_show.py"]},"message":"description formatting change","epoch":1580931273,"epoch_utc":null},{"commit":"7b53715b91787a8885d61ddc0079c7ee8f9348a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 11:08:58 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/crontab_u.py"]},"message":"change description","epoch":1580929738,"epoch_utc":null},{"commit":"e05fc0a5107b348af14ff4bea39d274939fab7dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 11:08:47 2020 -0800","stats":{"files_changed":1,"insertions":8,"deletions":8,"files":["jc/cli.py"]},"message":"change padding of helptext","epoch":1580929727,"epoch_utc":null},{"commit":"43604c33f654b8c19e8cce387ebbf31bd598b73b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 10:59:51 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]},"message":"doc update","epoch":1580929191,"epoch_utc":null},{"commit":"eb67c484ff2a9530b434cd6a90c160f6936e1de7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 10:58:26 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"add crontab-u to parsers list","epoch":1580929106,"epoch_utc":null},{"commit":"a7b7bdd46781d07e6e70d74a41a3944855fde5fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 10:55:08 2020 -0800","stats":{"files_changed":1,"insertions":94,"deletions":92,"files":["jc/cli.py"]},"message":"load parser modules 'just in time' so we don't need to load all modules at startup","epoch":1580928908,"epoch_utc":null},{"commit":"ab06989a18faf5378f1e73c7016ea02e1218ff9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:46:52 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["README.md"]},"message":"description updates","epoch":1580881612,"epoch_utc":null},{"commit":"657b722f947b6a0aa7e52a786e4c84f177e9a5c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:44:10 2020 -0800","stats":{"files_changed":4,"insertions":8,"deletions":8,"files":["README.md","changelog.txt","docs/parsers/ini.md","jc/parsers/ini.py"]},"message":"ini to INI","epoch":1580881450,"epoch_utc":null},{"commit":"dd2aecad2787186b3962723086bb7e13eff4874f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:37:07 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"description update","epoch":1580881027,"epoch_utc":null},{"commit":"c82c5c5c648384eb5a54205ba8590624a3ab4375","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:34:57 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["changelog.txt"]},"message":"changelog update","epoch":1580880897,"epoch_utc":null},{"commit":"a1761cd68f91e2668d8d7e2fa7774f6496408be6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:25:33 2020 -0800","stats":{"files_changed":3,"insertions":42,"deletions":0,"files":["tests/fixtures/centos-7.7/id.json","tests/fixtures/osx-10.14.6/id.json","tests/test_id.py"]},"message":"id tests","epoch":1580880333,"epoch_utc":null},{"commit":"d618a7f583629bb7a7fc0854e7349cab07e3e003","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:17:03 2020 -0800","stats":{"files_changed":4,"insertions":143,"deletions":9,"files":["README.md","docgen.sh","docs/parsers/id.md","jc/parsers/id.py"]},"message":"doc update","epoch":1580879823,"epoch_utc":null},{"commit":"831a42f66096f5efbbf0f6882970c328120f9c9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:12:32 2020 -0800","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["README.md"]},"message":"id formatting","epoch":1580879552,"epoch_utc":null},{"commit":"3b36022e5a1056a28a83494b1ab8fab209399c2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:09:42 2020 -0800","stats":{"files_changed":5,"insertions":250,"deletions":1,"files":["README.md","jc/cli.py","jc/parsers/id.py","tests/fixtures/centos-7.7/id.out","tests/fixtures/osx-10.14.6/id.out"]},"message":"add id parser","epoch":1580879382,"epoch_utc":null},{"commit":"d01dfa25f10f82cd201ae7b4c9cc18313773f8d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 15:22:36 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["changelog.txt"]},"message":"changelog updates","epoch":1580858556,"epoch_utc":null},{"commit":"395a99037b4816eb800b289f90372a9b8d7d36cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:36:03 2020 -0800","stats":{"files_changed":3,"insertions":89,"deletions":13,"files":["README.md","docs/parsers/history.md","jc/parsers/history.py"]},"message":"crontab-u and history doc updates","epoch":1580855763,"epoch_utc":null},{"commit":"025986c51d2d4869b17de63a7dd96efa2988e3c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:31:28 2020 -0800","stats":{"files_changed":3,"insertions":13,"deletions":3,"files":["jc/parsers/history.py","tests/fixtures/centos-7.7/history.json","tests/fixtures/ubuntu-18.04/history.json"]},"message":"change history 'line' to integer","epoch":1580855488,"epoch_utc":null},{"commit":"c56b83093ff05f55ef4643c1731cff61d4b9e8ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:19:33 2020 -0800","stats":{"files_changed":3,"insertions":202,"deletions":2,"files":["docgen.sh","docs/parsers/crontab.md","docs/parsers/crontab_u.md"]},"message":"doc update","epoch":1580854773,"epoch_utc":null},{"commit":"7c712a4133abd843d4da926e4c8d548abd1d6fa3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:18:14 2020 -0800","stats":{"files_changed":1,"insertions":52,"deletions":50,"files":["jc/parsers/crontab_u.py"]},"message":"doc update","epoch":1580854694,"epoch_utc":null},{"commit":"9a0cfe6dfa4888f435d35bd2d35126d031a556d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:18:01 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/crontab.py"]},"message":"minor formatting","epoch":1580854681,"epoch_utc":null},{"commit":"a116cdbcec1b27192dd0f9f4707629353edb3caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:11:34 2020 -0800","stats":{"files_changed":5,"insertions":29,"deletions":13,"files":["tests/fixtures/ubuntu-18.04/crontab-u.json",".../ubuntu-18.04/{crontab.out => crontab-u.out}","tests/fixtures/ubuntu-18.04/crontab.json","tests/test_crontab.py","tests/test_crontab_u.py"]},"message":"tests for crontab-u","epoch":1580854294,"epoch_utc":null},{"commit":"f2d616c98e049cdac5d667e63723f92110419a1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:02:27 2020 -0800","stats":{"files_changed":3,"insertions":272,"deletions":0,"files":["changelog.txt","jc/cli.py","jc/parsers/crontab_u.py"]},"message":"add crontab with user parser","epoch":1580853747,"epoch_utc":null},{"commit":"42cbd1777dbacc614d75f67f3f9156f72be46532","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 13:53:45 2020 -0800","stats":{"files_changed":2,"insertions":80,"deletions":0,"files":["tests/test_xml.py","tests/test_yaml.py"]},"message":"add xml and yaml tests","epoch":1580853225,"epoch_utc":null},{"commit":"ebf375aac0473249cfd212068f6e6e33cc42449a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 12:18:31 2020 -0800","stats":{"files_changed":1,"insertions":40,"deletions":0,"files":["tests/test_ini.py"]},"message":"add ini tests","epoch":1580847511,"epoch_utc":null},{"commit":"1f9050267eeb870c4c0f50000fc32985c4d8535b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 12:02:18 2020 -0800","stats":{"files_changed":12,"insertions":586,"deletions":0,"files":["tests/fixtures/generic/ini-iptelserver.ini","tests/fixtures/generic/ini-iptelserver.json","tests/fixtures/generic/ini-test.ini","tests/fixtures/generic/ini-test.json","tests/fixtures/generic/xml-cd_catalog.json","tests/fixtures/generic/xml-cd_catalog.xml","tests/fixtures/generic/xml-foodmenu.json","tests/fixtures/generic/xml-foodmenu.xml","tests/fixtures/generic/yaml-istio-sc.json","tests/fixtures/generic/yaml-istio-sc.yaml","tests/fixtures/generic/yaml-istio-sidecar.json","tests/fixtures/generic/yaml-istio-sidecar.yaml"]},"message":"add ini, xml, and yaml test files","epoch":1580846538,"epoch_utc":null},{"commit":"d7f9707a1521719ce051140b1a0b4ced7c5114c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 11:18:32 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/ini.py","jc/parsers/yaml.py"]},"message":"minor formatting","epoch":1580843912,"epoch_utc":null},{"commit":"ab589ee3ed09b9d5e09d8c046f3a64cd2bd14c98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 11:18:15 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/cli.py"]},"message":"add __version__ variable","epoch":1580843895,"epoch_utc":null},{"commit":"c84ec0361fc4c877c698378b28ff9e8b502793b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 22:25:30 2020 -0800","stats":{"files_changed":4,"insertions":105,"deletions":3,"files":["README.md","docgen.sh","docs/parsers/xml.md","jc/parsers/xml.py"]},"message":"xml example update","epoch":1580797530,"epoch_utc":null},{"commit":"47d2f8968a8a9b68fc9fff45985f5e69f1a5cc40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 22:21:40 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","changelog.txt"]},"message":"doc update","epoch":1580797300,"epoch_utc":null},{"commit":"019c480bcce7fe3821b75906fc673ce7bb1ffadc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 22:17:13 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"update acknowledgments","epoch":1580797033,"epoch_utc":null},{"commit":"547c6d3d5956984d3c4fb5c2a1b76a595752b467","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 22:13:06 2020 -0800","stats":{"files_changed":5,"insertions":172,"deletions":2,"files":["README.md","changelog.txt","jc/cli.py","jc/parsers/xml.py","setup.py"]},"message":"add xml parser","epoch":1580796786,"epoch_utc":null},{"commit":"b5ebf8b76afcd0e0190994048fe1f5b53f654451","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 21:41:53 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add ruamel.yaml ack","epoch":1580794913,"epoch_utc":null},{"commit":"c690e328f23a69f592dfaaa949b74ba2190ad376","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 21:38:21 2020 -0800","stats":{"files_changed":2,"insertions":102,"deletions":14,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"]},"message":"add examples","epoch":1580794701,"epoch_utc":null},{"commit":"cbb92c1a9517234806f1c54398a69645b6f43669","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 21:38:08 2020 -0800","stats":{"files_changed":1,"insertions":94,"deletions":0,"files":["README.md"]},"message":"add ini and yaml","epoch":1580794688,"epoch_utc":null},{"commit":"beb41997c9b3797e73a678ec1bcddcfb83b5ef0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 21:28:11 2020 -0800","stats":{"files_changed":3,"insertions":91,"deletions":2,"files":["docgen.sh","docs/parsers/ini.md","jc/parsers/ini.py"]},"message":"doc update","epoch":1580794091,"epoch_utc":null},{"commit":"755a6faf1110f150fe2261b81439b7d17a9b424e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 21:22:30 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":8,"files":["jc/parsers/yaml.py"]},"message":"clean up multi-document support","epoch":1580793750,"epoch_utc":null},{"commit":"021f8350a31a49ecc539f02576303600b222b49d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 19:11:36 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["changelog.txt"]},"message":"update doc","epoch":1580785896,"epoch_utc":null},{"commit":"76583dcd2f5ef32e58ca87149154563b07e061cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 19:07:31 2020 -0800","stats":{"files_changed":2,"insertions":113,"deletions":0,"files":["jc/cli.py","jc/parsers/ini.py"]},"message":"add ini file parser","epoch":1580785651,"epoch_utc":null},{"commit":"bf033239a706c42be3d7508c58a51c542f8a69b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 16:20:38 2020 -0800","stats":{"files_changed":2,"insertions":82,"deletions":7,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"]},"message":"doc update","epoch":1580775638,"epoch_utc":null},{"commit":"eb37fccd37fd625f701a14b6cfcf30e9f0bbff4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 16:17:29 2020 -0800","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/yaml.py"]},"message":"doc update","epoch":1580775449,"epoch_utc":null},{"commit":"d04ad453319fe45e302da87f970d2ac0806fae1a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 16:12:45 2020 -0800","stats":{"files_changed":3,"insertions":7,"deletions":2,"files":["changelog.txt","docgen.sh","setup.py"]},"message":"setup for 1.7.1","epoch":1580775165,"epoch_utc":null},{"commit":"db157b8ca7f7fa935676bafeaafdfd9818a89e6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 16:12:32 2020 -0800","stats":{"files_changed":2,"insertions":94,"deletions":2,"files":["jc/cli.py","jc/parsers/yaml.py"]},"message":"add yaml file parser","epoch":1580775152,"epoch_utc":null},{"commit":"68f277bb2081eb2cba14ffe7f0ee1ee0a982335b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 16:11:58 2020 -0800","stats":{"files_changed":33,"insertions":99,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add __version__","epoch":1580775118,"epoch_utc":null},{"commit":"4de8f42664379570392552796e34324abb39fdc2","merge":"6633d92 4f11855","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 12:11:13 2019 -0800","message":"Merge pull request #17 from kellyjonbrazil/dev\n\nDev v1.6.1","epoch":1576613473,"epoch_utc":null},{"commit":"4f118559356edc1da866e1bec80830e7a75a0b26","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 12:09:24 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["changelog.txt"]},"message":"update version info","epoch":1576613364,"epoch_utc":null},{"commit":"2b9a5fcc32f85295faa55410efcaf142c42bd167","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 12:05:40 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["setup.py"]},"message":"update version","epoch":1576613140,"epoch_utc":null},{"commit":"224948d1f23e01b7cd968820529579792f862f0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 11:44:43 2019 -0800","stats":{"files_changed":21,"insertions":428,"deletions":0,"files":["tests/fixtures/centos-7.7/pip-list.json","tests/fixtures/centos-7.7/pip-list.out","tests/fixtures/centos-7.7/pip-show.json","tests/fixtures/centos-7.7/pip-show.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.11.6/pip-list.json","tests/fixtures/osx-10.11.6/pip-list.out","tests/fixtures/osx-10.11.6/pip-show.json","tests/fixtures/osx-10.11.6/pip-show.out","tests/fixtures/osx-10.14.6/pip-list.json","tests/fixtures/osx-10.14.6/pip-list.out","tests/fixtures/osx-10.14.6/pip-show.json","tests/fixtures/osx-10.14.6/pip-show.out","tests/fixtures/ubuntu-18.04/pip-list-legacy.json","tests/fixtures/ubuntu-18.04/pip-list-legacy.out","tests/fixtures/ubuntu-18.04/pip-list.json","tests/fixtures/ubuntu-18.04/pip-list.out","tests/fixtures/ubuntu-18.04/pip-show.json","tests/fixtures/ubuntu-18.04/pip-show.out","tests/test_pip_list.py","tests/test_pip_show.py"]},"message":"pip list and pip show tests","epoch":1576611883,"epoch_utc":null},{"commit":"36f2812d5a7a94c412e098233c026d99d5205b60","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 10:58:00 2019 -0800","stats":{"files_changed":1,"insertions":15,"deletions":7,"files":["jc/parsers/pip_list.py"]},"message":"add support for legacy output","epoch":1576609080,"epoch_utc":null},{"commit":"be06aa2b31c057c56229e75c7fa70052b83053ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 10:09:19 2019 -0800","stats":{"files_changed":65,"insertions":70,"deletions":66,"files":["docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"update parse() Return info","epoch":1576606159,"epoch_utc":null},{"commit":"41f8e3aba268ca0cd09931a04368615425c1aec8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 09:56:09 2019 -0800","stats":{"files_changed":65,"insertions":67,"deletions":65,"files":["docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"update Return info","epoch":1576605369,"epoch_utc":null},{"commit":"093c0df8978ace842af5258f9aff72c63c6f843d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 09:38:50 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["README.md"]},"message":"schema info","epoch":1576604330,"epoch_utc":null},{"commit":"37afc7dc8ae30342d01f3f72e73646fa60bb5294","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 09:35:27 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["README.md"]},"message":"updte todo and compatibility","epoch":1576604127,"epoch_utc":null},{"commit":"efbf3549606fc77f8c16587ff04a0c316dfe5c00","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 09:24:08 2019 -0800","stats":{"files_changed":4,"insertions":126,"deletions":12,"files":["README.md","docgen.sh","docs/parsers/pip_show.md","jc/parsers/pip_show.py"]},"message":"doc update for pip show","epoch":1576603448,"epoch_utc":null},{"commit":"5e39fe0d8044787389d8f206f3c863d4bdf1e2ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 09:20:26 2019 -0800","stats":{"files_changed":1,"insertions":64,"deletions":5,"files":["jc/parsers/pip_show.py"]},"message":"pip show parser working","epoch":1576603226,"epoch_utc":null},{"commit":"47328dc65969f149c8f027286774ff0847c18add","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 19:09:14 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"]},"message":"add pip-show parser","epoch":1576552154,"epoch_utc":null},{"commit":"addeef50ba54f536855544937a6c98135ae5cd51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 19:07:51 2019 -0800","stats":{"files_changed":1,"insertions":84,"deletions":0,"files":["jc/parsers/pip_show.py"]},"message":"initial pip show parser add","epoch":1576552071,"epoch_utc":null},{"commit":"ad338cc5b50a178091c47cbea9a1db135a7fb678","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:58:33 2019 -0800","stats":{"files_changed":2,"insertions":56,"deletions":42,"files":["docs/parsers/crontab.md","jc/parsers/crontab.py"]},"message":"schema doc update","epoch":1576551513,"epoch_utc":null},{"commit":"202bc8201e31fd453c682265347b4e2ac2d41718","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:54:19 2019 -0800","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["README.md","docs/parsers/crontab.md","jc/parsers/crontab.py"]},"message":"doc update","epoch":1576551259,"epoch_utc":null},{"commit":"5ff99de405fbd8f79f9c2e301ac27184e0aba6fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:40:08 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add argument to parser info","epoch":1576550408,"epoch_utc":null},{"commit":"86ebe2cf9c6b336eacf217393c3c3c324ee29ec0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:36:13 2019 -0800","stats":{"files_changed":6,"insertions":205,"deletions":1,"files":["README.md","docgen.sh","docs/parsers/crontab.md","docs/parsers/pip_list.md","jc/cli.py","jc/parsers/pip_list.py"]},"message":"initial add of pip list parser","epoch":1576550173,"epoch_utc":null},{"commit":"facf0b399c608d33f6a454ee24fd49fc62471742","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:09:29 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/crontab.py"]},"message":"add osx to campatible","epoch":1576548569,"epoch_utc":null},{"commit":"33db7b0bcb0f24979cad6e173737d75c8ed301af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:09:00 2019 -0800","stats":{"files_changed":4,"insertions":57,"deletions":0,"files":["tests/fixtures/centos-7.7/crontab.json","tests/fixtures/ubuntu-18.04/crontab.json","tests/fixtures/ubuntu-18.04/crontab.out","tests/test_crontab.py"]},"message":"add crontab tests","epoch":1576548540,"epoch_utc":null},{"commit":"663d07bca1181024d9d08b940237c52197c91729","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 17:52:09 2019 -0800","stats":{"files_changed":2,"insertions":191,"deletions":0,"files":["docgen.sh","docs/parsers/crontab.md"]},"message":"add crontab","epoch":1576547529,"epoch_utc":null},{"commit":"ba04e4997fcb28adbee446f633c121f1585b9f2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 17:51:11 2019 -0800","stats":{"files_changed":1,"insertions":113,"deletions":4,"files":["jc/parsers/crontab.py"]},"message":"update docs","epoch":1576547471,"epoch_utc":null},{"commit":"c4fee1b658c91afa2abdd746af6c1b4697c44b35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 17:50:52 2019 -0800","stats":{"files_changed":1,"insertions":72,"deletions":1,"files":["README.md"]},"message":"add crontab parser","epoch":1576547452,"epoch_utc":null},{"commit":"99b92a15bbebc5568f4455f388f945613c4a2759","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 17:45:34 2019 -0800","stats":{"files_changed":2,"insertions":37,"deletions":14,"files":["jc/parsers/crontab.py","tests/fixtures/centos-7.7/crontab.out"]},"message":"support shortcut schedules","epoch":1576547134,"epoch_utc":null},{"commit":"b076ab5b57a6a59db096485e5ff4eb9f91bae8be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 17:01:53 2019 -0800","stats":{"files_changed":3,"insertions":177,"deletions":0,"files":["jc/cli.py","jc/parsers/crontab.py","tests/fixtures/centos-7.7/crontab.out"]},"message":"initial crontab parser","epoch":1576544513,"epoch_utc":null},{"commit":"687759f75d0e80e81746a84f051e55cfdc870447","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 14:31:21 2019 -0800","stats":{"files_changed":1,"insertions":31,"deletions":31,"files":["README.md"]},"message":"alphabetize du entry","epoch":1576535481,"epoch_utc":null},{"commit":"9eaac7f3af0e0851c2d091d94c9920faa8a0fdfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 14:30:06 2019 -0800","stats":{"files_changed":1,"insertions":32,"deletions":0,"files":["README.md"]},"message":"add du","epoch":1576535406,"epoch_utc":null},{"commit":"4c24e00cfc0748d98e220d08820b88fc156148db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 14:27:55 2019 -0800","stats":{"files_changed":5,"insertions":21738,"deletions":9,"files":["tests/fixtures/osx-10.11.6/du.json","tests/fixtures/osx-10.11.6/du.out","tests/fixtures/ubuntu-18.04/du.json","tests/fixtures/ubuntu-18.04/du.out","tests/test_du.py"]},"message":"add osx-11 and ubuntu tests","epoch":1576535275,"epoch_utc":null},{"commit":"beb17011b03e720078b0752e79a6a0f6123d1d3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 13:57:42 2019 -0800","stats":{"files_changed":6,"insertions":131,"deletions":2,"files":["changelog.txt","docgen.sh","docs/parsers/du.md","docs/parsers/uname.md","tests/fixtures/osx-10.14.6/du.json","tests/test_du.py"]},"message":"du tests and docs","epoch":1576533462,"epoch_utc":null},{"commit":"e882bf55bcd1d3526423ed1ccc61fb4819395cce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 13:52:42 2019 -0800","stats":{"files_changed":7,"insertions":8755,"deletions":0,"files":["changelog.txt","jc/cli.py","jc/parsers/du.py","tests/fixtures/centos-7.7/du.json","tests/fixtures/centos-7.7/du.out","tests/fixtures/osx-10.14.6/du.out","tests/test_du.py"]},"message":"initial add du parser","epoch":1576533162,"epoch_utc":null},{"commit":"3a3016adb6d5b9e35f8a39908bfcdc65997cc5c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 11:52:18 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add parser_count to about","epoch":1576525938,"epoch_utc":null},{"commit":"1e8b68153ade8a1e3d2b4db36e0c402bbc887079","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 11:12:45 2019 -0800","stats":{"files_changed":4,"insertions":27,"deletions":1,"files":["tests/fixtures/osx-10.11.6/uname-a.json","tests/fixtures/osx-10.14.6/uname-a.json","tests/fixtures/osx-10.14.6/uname-a.out","tests/test_uname.py"]},"message":"add osx uname tests","epoch":1576523565,"epoch_utc":null},{"commit":"9335cf65fbb87e3a0a7da0c4e9bcd251cb829de2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 11:02:02 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"add uname osx support","epoch":1576522922,"epoch_utc":null},{"commit":"83f35256aee71f2619ddf880e2b8f2d6c63280bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 11:01:43 2019 -0800","stats":{"files_changed":1,"insertions":30,"deletions":19,"files":["jc/parsers/uname.py"]},"message":"add OSX support","epoch":1576522903,"epoch_utc":null},{"commit":"428333394817e4461a4eb095f4d6d128305a5f98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 10:03:47 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"version bump","epoch":1576519427,"epoch_utc":null},{"commit":"b8f902796b7fb23a41355b23f7ce235bd18edc58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 10:03:34 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["changelog.txt"]},"message":"shorten changelog","epoch":1576519414,"epoch_utc":null},{"commit":"8f99ab295cd15718b98781707def97539ad41920","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 09:08:47 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"info update","epoch":1576516127,"epoch_utc":null},{"commit":"882310e268e2022f0cd6da75f80f5356529cd05c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 09:04:52 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add name to about parser info","epoch":1576515892,"epoch_utc":null},{"commit":"56bce9521409d1850f75a3ae2be1363e765dd9dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 09:00:16 2019 -0800","stats":{"files_changed":1,"insertions":6,"deletions":10,"files":["jc/cli.py"]},"message":"about code cleanup","epoch":1576515616,"epoch_utc":null},{"commit":"c13ecbec2952c5d6765397f645e90653a4fd9d05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 08:59:41 2019 -0800","stats":{"files_changed":28,"insertions":2,"deletions":28,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"clean up parser info","epoch":1576515581,"epoch_utc":null},{"commit":"0ffaaa6e73649d1f657af569ac0b912f166e8493","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 08:18:37 2019 -0800","stats":{"files_changed":1,"insertions":7,"deletions":9,"files":["jc/cli.py"]},"message":"clean up about code","epoch":1576513117,"epoch_utc":null},{"commit":"75eff3adea097157c005b2201e353a741241ce8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:56:40 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/utils.py"]},"message":"remove whitespace","epoch":1576396600,"epoch_utc":null},{"commit":"bf5f80476cff642ae672187ea59d40bdb602101e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:56:22 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["jc/cli.py"]},"message":"use real parser name in error message","epoch":1576396582,"epoch_utc":null},{"commit":"9aaf0fbb2f838c0af1e7f18fdb19104f9f5d3d39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:35:42 2019 -0800","stats":{"files_changed":29,"insertions":146,"deletions":1,"files":["changelog.txt","docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md"]},"message":"doc updates","epoch":1576395342,"epoch_utc":null},{"commit":"8f01ef79532743573632d716ceea41d5ea752c88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:27:56 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add -a option info","epoch":1576394876,"epoch_utc":null},{"commit":"da1d087452da02631296b1b3dc9ee10d4b7f764b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:21:47 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add parser version info","epoch":1576394507,"epoch_utc":null},{"commit":"e16bc7e882a27a1d5a4bd7cf9972208e6997f96f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:15:15 2019 -0800","stats":{"files_changed":29,"insertions":82,"deletions":17,"files":["jc/cli.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add about information to parsers","epoch":1576394115,"epoch_utc":null},{"commit":"fe9bdd4811216257c05b16d6d61897929669d434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 13 20:01:51 2019 -0800","stats":{"files_changed":31,"insertions":384,"deletions":219,"files":["changelog.txt","jc/cli.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add info class","epoch":1576296111,"epoch_utc":null},{"commit":"17b6f3f6d6c398a52166849088a793d0e3b328b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 13 14:36:21 2019 -0800","stats":{"files_changed":3,"insertions":26,"deletions":0,"files":["tests/fixtures/osx-10.11.6/uptime.json","tests/fixtures/osx-10.14.6/uptime.json","tests/test_uptime.py"]},"message":"add osx tests","epoch":1576276581,"epoch_utc":null},{"commit":"90a6baf0ee3b8b27476badada4e590e22144f810","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 13 14:30:12 2019 -0800","stats":{"files_changed":6,"insertions":52,"deletions":0,"files":["tests/fixtures/osx-10.11.6/ps-axu.json","tests/fixtures/osx-10.11.6/ps-ef.json","tests/fixtures/osx-10.11.6/w.json","tests/fixtures/osx-10.14.6/w.json","tests/test_ps.py","tests/test_w.py"]},"message":"add osx tests","epoch":1576276212,"epoch_utc":null},{"commit":"f0e73d0e72d540292f41fff51652932c4e8b0315","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 13 10:50:01 2019 -0800","stats":{"files_changed":8,"insertions":444,"deletions":0,"files":["tests/fixtures/osx-10.11.6/ps-axu.out","tests/fixtures/osx-10.11.6/ps-ef.out","tests/fixtures/osx-10.11.6/uname-a.out","tests/fixtures/osx-10.11.6/uptime.out","tests/fixtures/osx-10.11.6/w.out","tests/fixtures/osx-10.14.6/uname-a.out","tests/fixtures/osx-10.14.6/uptime.out","tests/fixtures/osx-10.14.6/w.out"]},"message":"add osx tests","epoch":1576263001,"epoch_utc":null},{"commit":"a762882f1ccea6789ce7813b313f3242175b5bd6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 13 08:58:23 2019 -0800","stats":{"files_changed":4,"insertions":2,"deletions":88,"files":["tests/fixtures/osx-10.14.6/ps-axu.json","tests/fixtures/osx-10.14.6/ps-axu.out","tests/fixtures/osx-10.14.6/ps-ef.json","tests/fixtures/osx-10.14.6/ps-ef.out"]},"message":"fixture updates","epoch":1576256303,"epoch_utc":null},{"commit":"4c1bc5923658bf463805ea33ec8d170a817909ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 17:05:40 2019 -0800","stats":{"files_changed":3,"insertions":4,"deletions":3,"files":["docs/parsers/mount.md","docs/parsers/ps.md","docs/parsers/stat.md"]},"message":"doc updates","epoch":1576199140,"epoch_utc":null},{"commit":"f2962083f80503f82c3eddf470674c776e616b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 17:04:40 2019 -0800","stats":{"files_changed":7,"insertions":93,"deletions":17,"files":["changelog.txt","jc/parsers/mount.py","tests/fixtures/osx-10.14.6/mount.json","tests/fixtures/osx-10.14.6/mount.out","tests/fixtures/osx-10.14.6/mount2.json","tests/fixtures/osx-10.14.6/mount2.out","tests/test_mount.py"]},"message":"add osx support for mount parser","epoch":1576199080,"epoch_utc":null},{"commit":"a0b22a5bcfa0777895243088b2c0f3bb5b758775","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 16:14:46 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"help text formatting","epoch":1576196086,"epoch_utc":null},{"commit":"dcf393354cd57683aaeecbed7b884d19b0fe94d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 16:10:30 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"]},"message":"doc fix","epoch":1576195830,"epoch_utc":null},{"commit":"5f771656e3fdd703d449b2817faa4faeff1cd879","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 16:07:52 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/route.py"]},"message":"use universal parser","epoch":1576195672,"epoch_utc":null},{"commit":"f376aab79328a211a127f4f818e7007232f1fae3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:59:36 2019 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/universal.py"]},"message":"doc update","epoch":1576195176,"epoch_utc":null},{"commit":"3c96464217a740571e16c74ad41c1d92f7585547","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:59:24 2019 -0800","stats":{"files_changed":6,"insertions":886,"deletions":13,"files":["jc/parsers/ps.py","tests/fixtures/osx-10.14.6/ps-axu.json","tests/fixtures/osx-10.14.6/ps-axu.out","tests/fixtures/osx-10.14.6/ps-ef.json","tests/fixtures/osx-10.14.6/ps-ef.out","tests/test_ps.py"]},"message":"osx fixes and tests","epoch":1576195164,"epoch_utc":null},{"commit":"c9892833a16bb63f78537717be65670eb65a87b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:58:40 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/mount.py"]},"message":"formatting change","epoch":1576195120,"epoch_utc":null},{"commit":"127c98affc7b122f0ced13852850214b9e07677e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:58:24 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update","epoch":1576195104,"epoch_utc":null},{"commit":"8687a772f53ecaf1a20464429060b94bbf660fe7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:33:34 2019 -0800","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["jc/parsers/lsof.py"]},"message":"use universal parser","epoch":1576193614,"epoch_utc":null},{"commit":"b1162b14d42643fd53dbbe3f89ba042f030d9254","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:22:21 2019 -0800","stats":{"files_changed":1,"insertions":3,"deletions":6,"files":["jc/parsers/lsmod.py"]},"message":"use universal parser","epoch":1576192941,"epoch_utc":null},{"commit":"8a8ee3570733c0c06b8cf53eb005e53ac2f9170f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:01:42 2019 -0800","stats":{"files_changed":1,"insertions":8,"deletions":60,"files":["jc/parsers/lsblk.py"]},"message":"use universal parser","epoch":1576191702,"epoch_utc":null},{"commit":"5e109a3665cf0c286ac9dcbe2a452348a14b90ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 14:12:36 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/fixtures/create_fixtures.sh"]},"message":"add du","epoch":1576188756,"epoch_utc":null},{"commit":"11db478430515ef3e1020482792f23d1c40ca32b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 14:12:21 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"update changelog","epoch":1576188741,"epoch_utc":null},{"commit":"a85377014d9f93fcb9840715129b0e09d48d8584","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 14:11:59 2019 -0800","stats":{"files_changed":1,"insertions":5,"deletions":11,"files":["jc/parsers/free.py"]},"message":"use universal parser","epoch":1576188719,"epoch_utc":null},{"commit":"3aea86234d33160f5b3139cbfc2f4f032f655f3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 11:23:49 2019 -0800","stats":{"files_changed":6,"insertions":70,"deletions":61,"files":["tests/fixtures/osx-10.11.6/ls-al.json","tests/fixtures/osx-10.11.6/ls-al.out","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.11.6/ls-alh.out","tests/fixtures/osx-10.11.6/ls.json","tests/fixtures/osx-10.11.6/ls.out"]},"message":"fix osx-10.11.6 tests","epoch":1576178629,"epoch_utc":null},{"commit":"916ec6ed6b858a8a496e4026b9bab5505abca2ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 10:11:24 2019 -0800","stats":{"files_changed":13,"insertions":193,"deletions":61,"files":["tests/fixtures/osx-10.11.6/ls-al.json","tests/fixtures/osx-10.11.6/ls-al.out","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.11.6/ls-alh.out","tests/fixtures/osx-10.11.6/ls.json","tests/fixtures/osx-10.11.6/ls.out","tests/fixtures/osx-10.14.6/ls-al.json","tests/fixtures/osx-10.14.6/ls-al.out","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.out","tests/fixtures/osx-10.14.6/ls.json","tests/fixtures/osx-10.14.6/ls.out","tests/test_ls.py"]},"message":"fix osx ls tests","epoch":1576174284,"epoch_utc":null},{"commit":"9dca6ba5393d8840ad7fc9509273715a71955bd1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:47:14 2019 -0800","stats":{"files_changed":55,"insertions":120,"deletions":6,"files":["docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"doc formatting change","epoch":1576172834,"epoch_utc":null},{"commit":"0ebb89f561e1ced2e7f61ae19290e176c8a98bf2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:41:56 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["docs/parsers/arp.md"]},"message":"doc update","epoch":1576172516,"epoch_utc":null},{"commit":"e237867e242211ba37206911ebf1b35c97b417fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:41:25 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/arp.py"]},"message":"doc formatting","epoch":1576172485,"epoch_utc":null},{"commit":"78fa44fd9ac9790313de6f461eb46d9b8d6159d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:35:42 2019 -0800","stats":{"files_changed":24,"insertions":75,"deletions":3,"files":["docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add compatibility to docs","epoch":1576172142,"epoch_utc":null},{"commit":"d615fa3b933ccd284bd8ee92baf5dfa6264507c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:21:20 2019 -0800","stats":{"files_changed":30,"insertions":91,"deletions":1,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py"]},"message":"add compatibility to docs","epoch":1576171280,"epoch_utc":null},{"commit":"ce134dc332dd9175e0d1823a4959bed427a3ddce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:09:57 2019 -0800","stats":{"files_changed":7,"insertions":115,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-al.json","tests/fixtures/osx-10.14.6/ls-al.out","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.out","tests/fixtures/osx-10.14.6/ls.json","tests/fixtures/osx-10.14.6/ls.out","tests/test_ls.py"]},"message":"Add OSX tests for ls","epoch":1576170597,"epoch_utc":null},{"commit":"a56e4dc752a01635fbd9fc31e21d390bbd629084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 17:27:48 2019 -0800","stats":{"files_changed":3,"insertions":28,"deletions":3,"files":["changelog.txt","jc/parsers/arp.py","jc/parsers/universal.py"]},"message":"use universal simple table parser","epoch":1576114068,"epoch_utc":null},{"commit":"d221b4aa29e80dda2b591059f4d64c416bff0a17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 17:19:38 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update","epoch":1576113578,"epoch_utc":null},{"commit":"d2cba6ad2f1f1cd35aa174239584a0291abb8e37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 17:18:21 2019 -0800","stats":{"files_changed":3,"insertions":9,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py"]},"message":"add compatibility info","epoch":1576113501,"epoch_utc":null},{"commit":"84b3c30b525ddf1f74eb7fd833050a0ec69621dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 17:18:04 2019 -0800","stats":{"files_changed":21,"insertions":254,"deletions":2,"files":["tests/fixtures/osx-10.11.6/df-h.json","tests/fixtures/osx-10.11.6/df-h.out","tests/fixtures/osx-10.11.6/df.json","tests/fixtures/osx-10.11.6/df.out","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-aaaa.out","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig-x.out","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.11.6/dig.out","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/osx-10.14.6/df-h.out","tests/fixtures/osx-10.14.6/df.json","tests/fixtures/osx-10.14.6/df.out","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-aaaa.out","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig-x.out","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/osx-10.14.6/dig.out","tests/test_df.py"]},"message":"add osx tests","epoch":1576113484,"epoch_utc":null},{"commit":"68eeec19a812b735627763bb7d7e2a58b72f7504","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 16:39:30 2019 -0800","stats":{"files_changed":3,"insertions":30,"deletions":25,"files":["README.md","docs/parsers/df.md","jc/parsers/df.py"]},"message":"doc update","epoch":1576111170,"epoch_utc":null},{"commit":"c6d1528a2ed302ea82828b733a98db415be83708","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 16:37:13 2019 -0800","stats":{"files_changed":4,"insertions":19,"deletions":8,"files":["jc/parsers/df.py","jc/parsers/universal.py","tests/fixtures/centos-7.7/df.json","tests/fixtures/ubuntu-18.04/df.json"]},"message":"use _ instead of -","epoch":1576111033,"epoch_utc":null},{"commit":"50a6b256b8a0936299f562c208ede6187feeb9a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 9 14:01:47 2019 -0800","stats":{"files_changed":1,"insertions":83,"deletions":0,"files":["jc/parsers/universal.py"]},"message":"new universal parsers to limit code duplication","epoch":1575928907,"epoch_utc":null},{"commit":"bbba1fe477014d0b7f370ce46ed821121be81a8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 9 14:01:29 2019 -0800","stats":{"files_changed":1,"insertions":38,"deletions":19,"files":["jc/parsers/df.py"]},"message":"update df to use universal sparse table parser for osx compatibility","epoch":1575928889,"epoch_utc":null},{"commit":"46b827da6b438be73fab168c3f05298483b141e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 13:22:51 2019 -0800","stats":{"files_changed":7,"insertions":75,"deletions":4,"files":["changelog.txt","jc/parsers/arp.py","tests/fixtures/osx-10.11.6/arp-a.json","tests/fixtures/osx-10.11.6/arp-a.out","tests/fixtures/osx-10.14.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a.out","tests/test_arp.py"]},"message":"add osx compatibility","epoch":1575667371,"epoch_utc":null},{"commit":"5e8c28a30a283b6ef525e9e78d3ef2a0e1526927","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 11:47:42 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"]},"message":"comment fix","epoch":1575661662,"epoch_utc":null},{"commit":"e5d39031645ac897e0c0297f514ee62efe02f5f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 11:46:09 2019 -0800","stats":{"files_changed":1,"insertions":38,"deletions":17,"files":["docs/parsers/ifconfig.md"]},"message":"update ifconfig doc","epoch":1575661569,"epoch_utc":null},{"commit":"23975c9c9e1dd9d3e9fd7c05d231a86d646be048","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 11:44:57 2019 -0800","stats":{"files_changed":10,"insertions":132,"deletions":45,"files":["README.md","changelog.txt","jc/parsers/ifconfig.py","tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig2.json","tests/fixtures/osx-10.14.6/ifconfig.json","tests/fixtures/osx-10.14.6/ifconfig2.json","tests/fixtures/ubuntu-18.04/ifconfig.json","tests/test_ifconfig.py"]},"message":"fixup osx subnet mask and convert state to an array","epoch":1575661497,"epoch_utc":null},{"commit":"1e0dab8355e6fcb0ecde85270d4daac6ad93875b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 10:53:49 2019 -0800","stats":{"files_changed":10,"insertions":272,"deletions":2,"files":["tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.out","tests/fixtures/osx-10.11.6/ifconfig2.json","tests/fixtures/osx-10.11.6/ifconfig2.out","tests/fixtures/osx-10.14.6/ifconfig.json","tests/fixtures/osx-10.14.6/ifconfig.out","tests/fixtures/osx-10.14.6/ifconfig2.json","tests/fixtures/osx-10.14.6/ifconfig2.out","tests/fixtures/ubuntu-18.04/ifconfig.json"]},"message":"ifconfig fixture updates","epoch":1575658429,"epoch_utc":null},{"commit":"5f4c10ffd5a9cbe4e5e3d2b9adc34f36492eaf46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 10:39:11 2019 -0800","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["README.md","changelog.txt"]},"message":"doc update","epoch":1575657551,"epoch_utc":null},{"commit":"6f3d2b4b566b963fbf38572c587e8bd4e18881dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 10:30:01 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"require ifconfig-parser v0.0.5 for mac and bytes support","epoch":1575657001,"epoch_utc":null},{"commit":"fea8ace8446b64abe9e61a028951bc4e6df9f9c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 10:27:11 2019 -0800","stats":{"files_changed":2,"insertions":20,"deletions":6,"files":["README.md","jc/parsers/ifconfig.py"]},"message":"add OSX compatibility","epoch":1575656831,"epoch_utc":null},{"commit":"6633d9262c936217d8e90e64505c66b006cdab56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Nov 30 13:52:24 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["_config.yml"]},"message":"Set theme jekyll-theme-cayman","epoch":1575150744,"epoch_utc":null},{"commit":"7d54137140e6d0515bc23c131a097af5c70c3379","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 28 11:51:54 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"link update","epoch":1574970714,"epoch_utc":null},{"commit":"2fcda6f2480ae6bd5428a0147c19f9af527391b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 25 18:34:21 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add motivation to readme","epoch":1574735661,"epoch_utc":null},{"commit":"9c1b8bacf9a59a86feb2a91eb44919e800491d1e","merge":"d192745 4867655","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 11:55:06 2019 -0800","message":"Merge pull request #16 from kellyjonbrazil/dev\n\nDev v1.5.1","epoch":1574020506,"epoch_utc":null},{"commit":"4867655eb297b1da7a55e0d3a24c7ed7c8af55c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 11:49:36 2019 -0800","stats":{"files_changed":6,"insertions":172,"deletions":0,"files":[".../centos-7.7/iptables-filter-line-numbers.json",".../centos-7.7/iptables-filter-line-numbers.out","tests/fixtures/create_fixtures.sh",".../ubuntu-18.04/iptables-filter-line-numbers.json",".../ubuntu-18.04/iptables-filter-line-numbers.out","tests/test_iptables.py"]},"message":"add line-numbers tests","epoch":1574020176,"epoch_utc":null},{"commit":"47410d1a95406b0960aac705e7cfe925fea3172c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 11:05:46 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["changelog.txt","setup.py"]},"message":"version bump","epoch":1574017546,"epoch_utc":null},{"commit":"5fa49f5e672fc6f8dc18fb4b1761c98b81362649","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 11:00:16 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update","epoch":1574017216,"epoch_utc":null},{"commit":"36c53827fab6ac38c0010250ec387db40fdeecfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 10:56:55 2019 -0800","stats":{"files_changed":19,"insertions":1316,"deletions":308,"files":["tests/fixtures/centos-7.7/systemctl-ls.json","tests/fixtures/centos-7.7/systemctl-ls.out","tests/fixtures/centos-7.7/systemctl-luf.json","tests/fixtures/centos-7.7/systemctl-luf.out","tests/fixtures/centos-7.7/systemctl.json","tests/fixtures/centos-7.7/systemctl.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/systemctl-lj.json","tests/fixtures/ubuntu-18.04/systemctl-lj.out","tests/fixtures/ubuntu-18.04/systemctl-ls.json","tests/fixtures/ubuntu-18.04/systemctl-ls.out","tests/fixtures/ubuntu-18.04/systemctl-luf.json","tests/fixtures/ubuntu-18.04/systemctl-luf.out","tests/fixtures/ubuntu-18.04/systemctl.json","tests/fixtures/ubuntu-18.04/systemctl.out","tests/test_systemctl.py","tests/test_systemctl_lj.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py"]},"message":"add systemctl tests","epoch":1574017015,"epoch_utc":null},{"commit":"51631aef5b1b6fdeff4ab543510a9f9e15a0c2c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 10:31:58 2019 -0800","stats":{"files_changed":5,"insertions":358,"deletions":0,"files":["tests/fixtures/centos-7.7/systemctl.json","tests/fixtures/centos-7.7/systemctl.out","tests/fixtures/ubuntu-18.04/systemctl.json","tests/fixtures/ubuntu-18.04/systemctl.out","tests/test_systemctl.py"]},"message":"add systemctl tests","epoch":1574015518,"epoch_utc":null},{"commit":"a0298ac8a39093620b6859c909a78d11ab4a8e56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 10:26:48 2019 -0800","stats":{"files_changed":5,"insertions":55,"deletions":0,"files":["tests/fixtures/centos-7.7/fstab.json","tests/fixtures/centos-7.7/fstab.out","tests/fixtures/ubuntu-18.04/fstab.json","tests/fixtures/ubuntu-18.04/fstab.out","tests/test_fstab.py"]},"message":"add fstab tests","epoch":1574015208,"epoch_utc":null},{"commit":"98c0188821ebaa71c5661f2e095cf464bec695f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:27:51 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/systemctl_ls.md","jc/parsers/systemctl_ls.py"]},"message":"formatting fix","epoch":1573874871,"epoch_utc":null},{"commit":"ab1dabe3e42997825707006b63cc0c03d28470d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:26:22 2019 -0800","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py"]},"message":"doc update","epoch":1573874782,"epoch_utc":null},{"commit":"94bdb11fdf0e16d89769046d317643334ef1acdd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:24:32 2019 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"]},"message":"remove systemctl from TODO","epoch":1573874672,"epoch_utc":null},{"commit":"b6727d68bab66164a3834b240ae868062aad9371","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:18:31 2019 -0800","stats":{"files_changed":1,"insertions":68,"deletions":0,"files":["README.md"]},"message":"add systemctl parsers","epoch":1573874311,"epoch_utc":null},{"commit":"89bad7fc2b4023b10b6eeb7ff1f8f18b71731cb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:13:53 2019 -0800","stats":{"files_changed":5,"insertions":1,"deletions":191,"files":["changelog.txt","docgen.sh","docs/parsers/systemctl_lm.md","jc/cli.py","jc/parsers/systemctl_lm.py"]},"message":"remove systemctl list-machines parser","epoch":1573874033,"epoch_utc":null},{"commit":"c0b8b810a2616e77973c1223f9c39329112337ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:07:42 2019 -0800","stats":{"files_changed":5,"insertions":306,"deletions":0,"files":["docgen.sh","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_lm.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md"]},"message":"add systemctl list parsers","epoch":1573873662,"epoch_utc":null},{"commit":"31eb65acd18b6d9163de900dbe48807a41a23785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:05:49 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_lm.py"]},"message":"doc fix","epoch":1573873549,"epoch_utc":null},{"commit":"513bbeb4649c011476930e1d1bf739ff06c2d66f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:02:57 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/systemctl_lj.py"]},"message":"add break on footer condition","epoch":1573873377,"epoch_utc":null},{"commit":"3a52fb725a0e56b52a0ea430266400b268360737","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 18:58:17 2019 -0800","stats":{"files_changed":2,"insertions":55,"deletions":29,"files":["jc/cli.py","jc/parsers/systemctl_lj.py"]},"message":"add systemctl list-jobs parser","epoch":1573873097,"epoch_utc":null},{"commit":"5affd444999de88b9bff7b49d790913540f97cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 18:36:12 2019 -0800","stats":{"files_changed":6,"insertions":342,"deletions":24,"files":["jc/cli.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_lm.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py"]},"message":"add systemctl_lj, lm, ls, and luf","epoch":1573871772,"epoch_utc":null},{"commit":"5dbc6e806c5d05bfa1f7e2156ed2573341eb23c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 12:28:28 2019 -0800","stats":{"files_changed":2,"insertions":142,"deletions":29,"files":["jc/cli.py","jc/parsers/systemctl_luf.py"]},"message":"add systemctl_luf parser","epoch":1573849708,"epoch_utc":null},{"commit":"59ae31f3f342c9337037aac4630310c9b9eb8287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 11:58:17 2019 -0800","stats":{"files_changed":6,"insertions":219,"deletions":0,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/systemctl.md","jc/cli.py","jc/parsers/systemctl.py"]},"message":"add systemctl parser","epoch":1573847897,"epoch_utc":null},{"commit":"230e921c2e8d931ea8a6abdf81215dbfc968b41c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 10:36:58 2019 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"]},"message":"remove fstab from TODO","epoch":1573843018,"epoch_utc":null},{"commit":"a7c3d88b08ab90b719035cb15d78afe708235742","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 10:01:29 2019 -0800","stats":{"files_changed":3,"insertions":136,"deletions":0,"files":["docgen.sh","docs/parsers/fstab.md","jc/parsers/fstab.py"]},"message":"update example and docs","epoch":1573840889,"epoch_utc":null},{"commit":"9b453bcb84dd9f2f566955eda1ab35c863b3e8a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 09:57:25 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":13,"files":["jc/parsers/fstab.py"]},"message":"remove commented code block","epoch":1573840645,"epoch_utc":null},{"commit":"ce43c782f601fc12267fa22279e8e0142ecc3a7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 09:32:12 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"fstab update","epoch":1573839132,"epoch_utc":null},{"commit":"cb16faaf4d1700379d53053fe06824fd03404f87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 09:31:28 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"helptext update","epoch":1573839088,"epoch_utc":null},{"commit":"3f1d3ff6d85422536e0adfb6433fd3ec0399ebe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 09:29:54 2019 -0800","stats":{"files_changed":2,"insertions":73,"deletions":6,"files":["README.md","jc/parsers/fstab.py"]},"message":"add examples","epoch":1573838994,"epoch_utc":null},{"commit":"6f67eecd5ed46f8a692ff5dd607a2395a5c838ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 09:22:07 2019 -0800","stats":{"files_changed":2,"insertions":108,"deletions":0,"files":["jc/cli.py","jc/parsers/fstab.py"]},"message":"add fstab parser","epoch":1573838527,"epoch_utc":null},{"commit":"e75c819190634f0a9048942b39eda691831829ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 08:51:53 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"changelog update","epoch":1573836713,"epoch_utc":null},{"commit":"601e68d104dd43940acadaa574dfd9b5117b0476","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 08:40:13 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/hosts.md","jc/parsers/hosts.py"]},"message":"doc update","epoch":1573836013,"epoch_utc":null},{"commit":"8285ecfd1e7810102cdbc399398a16f999c841ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 08:40:01 2019 -0800","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["tests/fixtures/centos-7.7/hosts.out","tests/fixtures/ubuntu-18.04/hosts.out"]},"message":"enhance test file with comments","epoch":1573836001,"epoch_utc":null},{"commit":"8726de902e527b95a12afd79a53d533cc176703d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 22:04:59 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"add hosts parser","epoch":1573797899,"epoch_utc":null},{"commit":"4133585274b0e7faa0255a911468248eb390d673","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 22:04:48 2019 -0800","stats":{"files_changed":5,"insertions":53,"deletions":0,"files":["tests/fixtures/centos-7.7/hosts.json","tests/fixtures/centos-7.7/hosts.out","tests/fixtures/ubuntu-18.04/hosts.json","tests/fixtures/ubuntu-18.04/hosts.out","tests/test_hosts.py"]},"message":"add hosts tests","epoch":1573797888,"epoch_utc":null},{"commit":"ad913b141721655a72a7b2a6ad60037e5acd5f9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:59:06 2019 -0800","stats":{"files_changed":4,"insertions":148,"deletions":2,"files":["README.md","docgen.sh","docs/parsers/hosts.md","jc/parsers/hosts.py"]},"message":"add hosts docs","epoch":1573797546,"epoch_utc":null},{"commit":"7113e5a844fc0304f62f4afe65b5cbc816f75372","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:55:08 2019 -0800","stats":{"files_changed":1,"insertions":10,"deletions":0,"files":["jc/parsers/hosts.py"]},"message":"filter out comments at the end of the line","epoch":1573797308,"epoch_utc":null},{"commit":"a3a8369dc0e7227072f595cef1e57d471eff4d2f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:36:02 2019 -0800","stats":{"files_changed":1,"insertions":51,"deletions":9,"files":["jc/parsers/hosts.py"]},"message":"add docs","epoch":1573796162,"epoch_utc":null},{"commit":"64016b8ef049d5d4f02b4371f5cc9632c19bcaa2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:31:25 2019 -0800","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["jc/cli.py","jc/parsers/hosts.py"]},"message":"add hosts parser","epoch":1573795885,"epoch_utc":null},{"commit":"1cb49d60c84054b0446f299f6b4bab7d102101c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:21:15 2019 -0800","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["README.md"]},"message":"remove sar and sadf","epoch":1573795275,"epoch_utc":null},{"commit":"c858adfd12144569d0b990a217c5bcd75bd23828","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:11:05 2019 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"]},"message":"remove stat from todo","epoch":1573794665,"epoch_utc":null},{"commit":"08d68327c777dd740d93a1b5fff8cf62f58904c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:08:09 2019 -0800","stats":{"files_changed":5,"insertions":8080,"deletions":0,"files":["tests/fixtures/centos-7.7/stat.json","tests/fixtures/centos-7.7/stat.out","tests/fixtures/ubuntu-18.04/stat.json","tests/fixtures/ubuntu-18.04/stat.out","tests/test_stat.py"]},"message":"add stat tests","epoch":1573794489,"epoch_utc":null},{"commit":"0d7c6c5664911af7a41149d51dd6ae05b39d7648","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 20:57:49 2019 -0800","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/parsers/stat.md","jc/parsers/stat.py"]},"message":"doc fix and add continue lines","epoch":1573793869,"epoch_utc":null},{"commit":"8bfa41dbf485cb06c928bc00a68727d2ceac21fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 17:36:29 2019 -0800","stats":{"files_changed":3,"insertions":22,"deletions":14,"files":["README.md","docs/parsers/stat.md","jc/parsers/stat.py"]},"message":"change values to null if -","epoch":1573781789,"epoch_utc":null},{"commit":"7e2fa48ed4f3fd452082ce06e7306efd38b2d508","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 17:24:51 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"update changelog","epoch":1573781091,"epoch_utc":null},{"commit":"340635cad5224f2c715bf961956f4b9b6119d80b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 17:23:44 2019 -0800","stats":{"files_changed":3,"insertions":408,"deletions":111,"files":["docgen.sh","docs/parsers/ss.md","docs/parsers/stat.md"]},"message":"fix stats doc","epoch":1573781024,"epoch_utc":null},{"commit":"8f77d1de098f035767d73a6965a695b95b75e161","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 17:21:56 2019 -0800","stats":{"files_changed":2,"insertions":111,"deletions":253,"files":["docgen.sh","docs/parsers/ss.md"]},"message":"add stat docs","epoch":1573780916,"epoch_utc":null},{"commit":"7dcf1b25ffb801375f0bf4263f34713ded904de9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 17:20:13 2019 -0800","stats":{"files_changed":1,"insertions":13,"deletions":0,"files":["jc/parsers/stat.py"]},"message":"add link_to field","epoch":1573780813,"epoch_utc":null},{"commit":"9b735381063a1167a6a74864a43b81aefd98009f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 16:44:12 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"]},"message":"set compatibility to linux only","epoch":1573778652,"epoch_utc":null},{"commit":"3bf8c8c6dbdf7e03e26b4581e35c3274084c07ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 16:40:52 2019 -0800","stats":{"files_changed":7,"insertions":27,"deletions":27,"files":["jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"pep8 fixes","epoch":1573778452,"epoch_utc":null},{"commit":"04a1ff2ca7873d55cdbc831e521f3d4892074d98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 16:36:00 2019 -0800","stats":{"files_changed":8,"insertions":28,"deletions":28,"files":["jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py"]},"message":"pep8 fixes","epoch":1573778160,"epoch_utc":null},{"commit":"64647d230ac936cb43864481ae0f45d13707d7b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 16:32:11 2019 -0800","stats":{"files_changed":6,"insertions":21,"deletions":21,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py"]},"message":"pep8 cleanup","epoch":1573777931,"epoch_utc":null},{"commit":"c2a67e1b70f33044aecabd8b46018117cb38cb9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 16:31:52 2019 -0800","stats":{"files_changed":2,"insertions":213,"deletions":16,"files":["README.md","jc/parsers/stat.py"]},"message":"add stat parser","epoch":1573777912,"epoch_utc":null},{"commit":"edb9a7c76e1fedaf37b6a226ad4e1cfc08a9a5ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 15:26:36 2019 -0800","stats":{"files_changed":2,"insertions":94,"deletions":0,"files":["jc/cli.py","jc/parsers/stat.py"]},"message":"add stat parser","epoch":1573773996,"epoch_utc":null},{"commit":"a407f5b67833cc5f8dda9fe8265cd34e62f28d14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 14:01:04 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"minor update","epoch":1573768864,"epoch_utc":null},{"commit":"e5b4987acb70e854d9996350235c5535b4a46b69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 14:00:06 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"doc update","epoch":1573768806,"epoch_utc":null},{"commit":"ba8cc18eebe779742cff0ba4c8bebe376e787c8c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 13:56:09 2019 -0800","stats":{"files_changed":5,"insertions":405,"deletions":0,"files":["tests/fixtures/centos-7.7/ss-sudo-a.json","tests/fixtures/centos-7.7/ss-sudo-a.out","tests/fixtures/ubuntu-18.04/ss-sudo-a.json","tests/fixtures/ubuntu-18.04/ss-sudo-a.out","tests/test_ss.py"]},"message":"add ss tests","epoch":1573768569,"epoch_utc":null},{"commit":"d2c7316e00b9aaf19231c05351821041458baf98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 13:43:07 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"update command options info","epoch":1573767787,"epoch_utc":null},{"commit":"609aa14d243206e81ed31f8438c3f42e8263e140","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 13:38:52 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/ss.md","jc/parsers/ss.py"]},"message":"spelling fix","epoch":1573767532,"epoch_utc":null},{"commit":"ef1ad4c700fcb740b5fbe1e12205b9a30ae427ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 13:37:55 2019 -0800","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["docs/parsers/ss.md","jc/parsers/ss.py"]},"message":"doc update","epoch":1573767475,"epoch_utc":null},{"commit":"a0e2732152dc3005914b9a3e4f03e937a113c67f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 09:46:10 2019 -0800","stats":{"files_changed":1,"insertions":64,"deletions":12,"files":["README.md"]},"message":"add ss example","epoch":1573753570,"epoch_utc":null},{"commit":"9b5d3e3be1ac07813e716f8426fe89cced478221","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 09:42:44 2019 -0800","stats":{"files_changed":1,"insertions":135,"deletions":25,"files":["docs/parsers/ss.md"]},"message":"update doc","epoch":1573753364,"epoch_utc":null},{"commit":"2663ef31fbc1b69b89b8032640a25065cc953866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 09:38:19 2019 -0800","stats":{"files_changed":1,"insertions":159,"deletions":30,"files":["jc/parsers/ss.py"]},"message":"fix field names per ss documentation","epoch":1573753099,"epoch_utc":null},{"commit":"a4cdd3378e6a031f16dd371ed5cd60ff018feb32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 13 08:17:41 2019 -0800","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["README.md"]},"message":"add compatibility info","epoch":1573661861,"epoch_utc":null},{"commit":"2f805da24d0e833e3d2a1f3a5ec34031fa911c05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 13 08:04:40 2019 -0800","stats":{"files_changed":45,"insertions":51,"deletions":51,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/utils.md","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/utils.py"]},"message":"add colon to parameter in docs","epoch":1573661080,"epoch_utc":null},{"commit":"79152a946d93e4facf9711bfa0f421e1978e0f1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 13 07:46:14 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"initialize network_list and socket_list variables","epoch":1573659974,"epoch_utc":null},{"commit":"de37bb37d01b397df2b5992b4acd64817380401d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 13 07:45:37 2019 -0800","stats":{"files_changed":3,"insertions":187,"deletions":1,"files":["docgen.sh","docs/parsers/ss.md","jc/parsers/ss.py"]},"message":"add ss docs","epoch":1573659937,"epoch_utc":null},{"commit":"f783e44e5c0cd05733da5d24573f06d05760f993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 18:58:58 2019 -0800","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["README.md","changelog.txt"]},"message":"doc fix","epoch":1573613938,"epoch_utc":null},{"commit":"af82f2c991ac0668485e75ae78a26b9553ec8b13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 18:56:42 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update raw format note","epoch":1573613802,"epoch_utc":null},{"commit":"46774daf9d3e0612df8f79d4b6b724e612ceb725","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 18:51:21 2019 -0800","stats":{"files_changed":2,"insertions":194,"deletions":4,"files":["README.md","jc/parsers/ss.py"]},"message":"doc update","epoch":1573613481,"epoch_utc":null},{"commit":"648306b7856fe2e296ce463ff4c9c2a8632c92d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 18:04:40 2019 -0800","stats":{"files_changed":1,"insertions":44,"deletions":22,"files":["jc/parsers/ss.py"]},"message":"process ss data","epoch":1573610680,"epoch_utc":null},{"commit":"b7a4f205b80c0a6a41aaabf59703525ac526c295","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 17:10:06 2019 -0800","stats":{"files_changed":1,"insertions":17,"deletions":14,"files":["jc/parsers/ss.py"]},"message":"parser fixes","epoch":1573607406,"epoch_utc":null},{"commit":"fdb168b43a69358a97bf43b71a0adbc7b1ef56f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 16:34:42 2019 -0800","stats":{"files_changed":2,"insertions":120,"deletions":0,"files":["jc/cli.py","jc/parsers/ss.py"]},"message":"add ss parser","epoch":1573605282,"epoch_utc":null},{"commit":"b6f65c93c462856f26201df0cbfe804b29a65169","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 15:05:21 2019 -0800","stats":{"files_changed":3,"insertions":43,"deletions":69,"files":["README.md","docs/parsers/ps.md","jc/parsers/ps.py"]},"message":"ps doc update","epoch":1573599921,"epoch_utc":null},{"commit":"3f4838f17a81969718d9e5b6bafa21e0b92e1d95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 14:22:49 2019 -0800","stats":{"files_changed":2,"insertions":0,"deletions":6,"files":["docgen.sh","docs/cli.md"]},"message":"remove cli.md","epoch":1573597369,"epoch_utc":null},{"commit":"eef0dee2aa206716d9cf011bec58a06c46bbee15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 14:20:59 2019 -0800","stats":{"files_changed":2,"insertions":8,"deletions":0,"files":["docs/utils.md","jc/utils.py"]},"message":"doc update","epoch":1573597259,"epoch_utc":null},{"commit":"e17388d3b2d1521d963bf9dd9e7a4ba5ba9bb09d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 14:19:40 2019 -0800","stats":{"files_changed":2,"insertions":44,"deletions":4,"files":["docs/utils.md","jc/utils.py"]},"message":"doc update","epoch":1573597180,"epoch_utc":null},{"commit":"7e6a1bc719b7160ba70cd326ff6aa182993a7380","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 14:15:22 2019 -0800","stats":{"files_changed":2,"insertions":41,"deletions":63,"files":["docs/readme.md","jc/__init__.py"]},"message":"doc update","epoch":1573596922,"epoch_utc":null},{"commit":"37738a2ea2f15af847e4b8383aba911e2020a3e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 14:10:26 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update contributions","epoch":1573596626,"epoch_utc":null},{"commit":"c5834a57db8957723a1425b9db46c433e28a3af1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 13:35:32 2019 -0800","stats":{"files_changed":1,"insertions":14,"deletions":0,"files":["README.md"]},"message":"add todo section","epoch":1573594532,"epoch_utc":null},{"commit":"91b9373f380e06f91888811edbfb21747ff08810","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 13:05:19 2019 -0800","stats":{"files_changed":1,"insertions":417,"deletions":673,"files":["README.md"]},"message":"new examples","epoch":1573592719,"epoch_utc":null},{"commit":"ce0bb5b816eed0c75542ead474c3dcb8401be2d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:52:16 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting fix","epoch":1573588336,"epoch_utc":null},{"commit":"f330ff0eff00586f46d18497f2441e94b6430e91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:49:14 2019 -0800","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["README.md"]},"message":"wrap example text","epoch":1573588154,"epoch_utc":null},{"commit":"4b02700414660b90518311485761870402368625","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:46:52 2019 -0800","stats":{"files_changed":1,"insertions":9,"deletions":20,"files":["README.md"]},"message":"update simple examples","epoch":1573588012,"epoch_utc":null},{"commit":"ee30180376b7acec46314bbc483866bff41c362a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:39:33 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"fix note","epoch":1573587573,"epoch_utc":null},{"commit":"338e0ff15c7fac84475c1ed107e6a23e7a009b1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:38:50 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]},"message":"add schema note","epoch":1573587530,"epoch_utc":null},{"commit":"3ac75305dfa33429646bb5d415567034cccfeee3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:28:10 2019 -0800","stats":{"files_changed":39,"insertions":351,"deletions":39,"files":["docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"update process() doc","epoch":1573586890,"epoch_utc":null},{"commit":"3bdcf44afb708cf6a716a0847b119f895602c23e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:22:17 2019 -0800","stats":{"files_changed":2,"insertions":18,"deletions":2,"files":["docs/parsers/arp.md","jc/parsers/arp.py"]},"message":"doc update","epoch":1573586537,"epoch_utc":null},{"commit":"e3f4ffede56fe48c0a282a021ac5cdfd7a8abee9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:18:00 2019 -0800","stats":{"files_changed":20,"insertions":172,"deletions":77,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md"]},"message":"doc update","epoch":1573586280,"epoch_utc":null},{"commit":"f0c8725d4355113f7690f20bb99078e488084ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:17:33 2019 -0800","stats":{"files_changed":21,"insertions":181,"deletions":81,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"doc update","epoch":1573586253,"epoch_utc":null},{"commit":"5473bc4eb697d00bd26a038287e1137e438cacb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:12:41 2019 -0800","stats":{"files_changed":2,"insertions":16,"deletions":6,"files":["docs/parsers/arp.md","jc/parsers/arp.py"]},"message":"doc update","epoch":1573585961,"epoch_utc":null},{"commit":"b9bd9422bfa46144416fa65add2e041d4124357b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:19:01 2019 -0800","stats":{"files_changed":2,"insertions":380,"deletions":46,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"doc update","epoch":1573571941,"epoch_utc":null},{"commit":"cb5729a070925a7fa29f762bd4b074532f5cba55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:18:27 2019 -0800","stats":{"files_changed":1,"insertions":62,"deletions":44,"files":["README.md"]},"message":"add options to docs","epoch":1573571907,"epoch_utc":null},{"commit":"f0b1ab42337746afd37365abdf44729d530d5410","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:08:35 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/utils.md","jc/utils.py"]},"message":"doc update","epoch":1573571315,"epoch_utc":null},{"commit":"b15386e849b9fea347e7b17307eedf779d8022fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:07:43 2019 -0800","stats":{"files_changed":2,"insertions":11,"deletions":5,"files":["docs/utils.md","jc/utils.py"]},"message":"doc update","epoch":1573571263,"epoch_utc":null},{"commit":"d2a2c8da35ee44e9a7572885609548eb809bcdda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:03:02 2019 -0800","stats":{"files_changed":3,"insertions":1,"deletions":5,"files":["docs/parsers/iptables.md","docs/parsers/mount.md","docs/parsers/uname.md"]},"message":"doc updates","epoch":1573570982,"epoch_utc":null},{"commit":"7251548cbb09beae6971385a56036e9649bd9b2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:01:36 2019 -0800","stats":{"files_changed":3,"insertions":3,"deletions":5,"files":["jc/parsers/iptables.py","jc/parsers/mount.py","jc/parsers/uname.py"]},"message":"documentation updates","epoch":1573570896,"epoch_utc":null},{"commit":"146e29f7cbc0f396be67dbd7ae971a4ef4dafb7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 18:30:46 2019 -0800","stats":{"files_changed":47,"insertions":5386,"deletions":2249,"files":["docgen.sh","docs/cli.md","docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/readme.md","docs/utils.md","jc/__init__.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/utils.py"]},"message":"update docs","epoch":1573525846,"epoch_utc":null},{"commit":"363fd3eab409351121dab8a11c6b565829ccd84a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 16:27:28 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"move parser_name to except block","epoch":1573518448,"epoch_utc":null},{"commit":"4083dd4260ff3a8bb6649e1661cf3e058fdbad59","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 16:16:41 2019 -0800","stats":{"files_changed":2,"insertions":24,"deletions":5,"files":["changelog.txt","jc/cli.py"]},"message":"add -d option","epoch":1573517801,"epoch_utc":null},{"commit":"b2b74547baaf33058d74fc08cb665777b19bd05a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 15:53:42 2019 -0800","stats":{"files_changed":6,"insertions":317,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-sudo-aeep.json","tests/fixtures/centos-7.7/netstat-sudo-aeep.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.json","tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.out","tests/test_netstat.py"]},"message":"add netstat-sudo-aeep tests","epoch":1573516422,"epoch_utc":null},{"commit":"dddb0baabf8a78261ac80380b97e7c92c7ce4d89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 15:53:22 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/netstat.py"]},"message":"use \\u2063 instead of \\u2026","epoch":1573516402,"epoch_utc":null},{"commit":"84b4f67ef9d4bb0db201a095d74400a56394589d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 14:34:36 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["tests/fixtures/centos-7.7/ps-axu.json","tests/fixtures/ubuntu-18.04/ps-axu.json"]},"message":"new json output","epoch":1573511676,"epoch_utc":null},{"commit":"3a089138b8c269ba3c5f7aec87ae3f8ec368c3ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 14:31:27 2019 -0800","stats":{"files_changed":1,"insertions":129,"deletions":9,"files":["jc/parsers/ps.py"]},"message":"add int and float changes","epoch":1573511487,"epoch_utc":null},{"commit":"3ff0305c8e62ce3b5a8f3f9174c5a9da3bc22766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 13:00:17 2019 -0800","stats":{"files_changed":8,"insertions":54,"deletions":2,"files":["tests/fixtures/centos-7.7/lsblk-allcols.json","tests/fixtures/centos-7.7/lsblk-allcols.out","tests/fixtures/centos-7.7/lsblk.json","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/lsblk-allcols.json","tests/fixtures/ubuntu-18.04/lsblk-allcols.out","tests/fixtures/ubuntu-18.04/lsblk.json","tests/test_lsblk.py"]},"message":"add lsblk tests","epoch":1573506017,"epoch_utc":null},{"commit":"761edc3c6cfc215fe45c65ee2bb5462cb460b6a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 12:43:27 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":6,"files":["jc/parsers/lsblk.py"]},"message":"remove unused parse_pairs function","epoch":1573505007,"epoch_utc":null},{"commit":"3351c81f647ac97a5038cc0c14adb31e55832a77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 12:40:16 2019 -0800","stats":{"files_changed":1,"insertions":200,"deletions":2,"files":["jc/parsers/lsblk.py"]},"message":"add documentation","epoch":1573504816,"epoch_utc":null},{"commit":"3dfc6f67d770c59804bdeb371d5c78e3f3668f9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 12:00:23 2019 -0800","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/lsblk.py"]},"message":"change empty values to Null","epoch":1573502423,"epoch_utc":null},{"commit":"1546ec3bd139ef687282f60786388b5207541c98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 11:53:16 2019 -0800","stats":{"files_changed":1,"insertions":17,"deletions":13,"files":["jc/parsers/lsblk.py"]},"message":"fixes for right justified columns","epoch":1573501996,"epoch_utc":null},{"commit":"2a953011f72e922c89b9af6dfebd1983da7c338d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 10 15:18:53 2019 -0800","stats":{"files_changed":2,"insertions":50,"deletions":155,"files":["changelog.txt","jc/parsers/lsblk.py"]},"message":"rewrite of lsblk parser to use a custom delimiter","epoch":1573427933,"epoch_utc":null},{"commit":"d2f755de9d2be7b0af5f010042e1f4ca589c5464","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 17:08:41 2019 -0800","stats":{"files_changed":14,"insertions":250,"deletions":566,"files":["tests/test_ifconfig.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_ls.py","tests/test_lsblk.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_ps.py","tests/test_route.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py"]},"message":"updates tests","epoch":1573261721,"epoch_utc":null},{"commit":"f363334639c5fa3a43889794ea52409056a2d886","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 16:21:09 2019 -0800","stats":{"files_changed":5,"insertions":87,"deletions":219,"files":["tests/test_df.py","tests/test_dig.py","tests/test_env.py","tests/test_free.py","tests/test_history.py"]},"message":"update tests","epoch":1573258869,"epoch_utc":null},{"commit":"750197e48596ad96804477053d3ff3c8063ea68a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 16:04:19 2019 -0800","stats":{"files_changed":1,"insertions":27,"deletions":70,"files":["tests/test_arp.py"]},"message":"new tests","epoch":1573257859,"epoch_utc":null},{"commit":"36b349e4ed39fe611c7d87a47c378cc4d4627ad2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 16:03:41 2019 -0800","stats":{"files_changed":76,"insertions":76,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-a.json","tests/fixtures/centos-7.7/arp-v.json","tests/fixtures/centos-7.7/arp.json","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/df.json","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/centos-7.7/env.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/centos-7.7/free.json","tests/fixtures/centos-7.7/history.json","tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/centos-7.7/iptables-filter-nv.json","tests/fixtures/centos-7.7/iptables-filter.json","tests/fixtures/centos-7.7/iptables-mangle.json","tests/fixtures/centos-7.7/iptables-nat.json","tests/fixtures/centos-7.7/iptables-raw.json","tests/fixtures/centos-7.7/jobs.json","tests/fixtures/centos-7.7/ls-al.json","tests/fixtures/centos-7.7/ls-alh.json","tests/fixtures/centos-7.7/ls.json","tests/fixtures/centos-7.7/lsblk.json","tests/fixtures/centos-7.7/lsmod.json","tests/fixtures/centos-7.7/lsof-sudo.json","tests/fixtures/centos-7.7/lsof.json","tests/fixtures/centos-7.7/mount.json","tests/fixtures/centos-7.7/netstat-l.json","tests/fixtures/centos-7.7/netstat-p.json","tests/fixtures/centos-7.7/netstat-sudo-lnp.json","tests/fixtures/centos-7.7/netstat.json","tests/fixtures/centos-7.7/ps-axu.json","tests/fixtures/centos-7.7/ps-ef.json","tests/fixtures/centos-7.7/route-vn.json","tests/fixtures/centos-7.7/route.json","tests/fixtures/centos-7.7/uname-a.json","tests/fixtures/centos-7.7/uptime.json","tests/fixtures/centos-7.7/w.json","tests/fixtures/ubuntu-18.04/arp-a.json","tests/fixtures/ubuntu-18.04/arp-v.json","tests/fixtures/ubuntu-18.04/arp.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/df.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json","tests/fixtures/ubuntu-18.04/env.json","tests/fixtures/ubuntu-18.04/free-h.json","tests/fixtures/ubuntu-18.04/free.json","tests/fixtures/ubuntu-18.04/history.json","tests/fixtures/ubuntu-18.04/ifconfig.json","tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","tests/fixtures/ubuntu-18.04/iptables-filter.json","tests/fixtures/ubuntu-18.04/iptables-mangle.json","tests/fixtures/ubuntu-18.04/iptables-nat.json","tests/fixtures/ubuntu-18.04/iptables-raw.json","tests/fixtures/ubuntu-18.04/jobs.json","tests/fixtures/ubuntu-18.04/ls-al.json","tests/fixtures/ubuntu-18.04/ls-alh.json","tests/fixtures/ubuntu-18.04/ls.json","tests/fixtures/ubuntu-18.04/lsblk.json","tests/fixtures/ubuntu-18.04/lsmod.json","tests/fixtures/ubuntu-18.04/lsof-sudo.json","tests/fixtures/ubuntu-18.04/lsof.json","tests/fixtures/ubuntu-18.04/mount.json","tests/fixtures/ubuntu-18.04/netstat-l.json","tests/fixtures/ubuntu-18.04/netstat-p.json","tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.json","tests/fixtures/ubuntu-18.04/netstat.json","tests/fixtures/ubuntu-18.04/ps-axu.json","tests/fixtures/ubuntu-18.04/ps-ef.json","tests/fixtures/ubuntu-18.04/route-vn.json","tests/fixtures/ubuntu-18.04/route.json","tests/fixtures/ubuntu-18.04/uname-a.json","tests/fixtures/ubuntu-18.04/uptime.json","tests/fixtures/ubuntu-18.04/w.json"]},"message":"json output files","epoch":1573257821,"epoch_utc":null},{"commit":"b5f1e94fe2859c4fbcf126f8f8fb20d71a9b6433","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 16:03:14 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/netstat.py"]},"message":"fix for space before '-' in program_name","epoch":1573257794,"epoch_utc":null},{"commit":"6a504fb0e10b1ef551ed9fe780926fe5ca02d267","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 16:02:44 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"]},"message":"add exception type","epoch":1573257764,"epoch_utc":null},{"commit":"e02bad2240bacbc31097d931a902a34217d559db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 12:22:41 2019 -0800","stats":{"files_changed":1,"insertions":123,"deletions":175,"files":["jc/parsers/netstat.py"]},"message":"update documentation","epoch":1573244561,"epoch_utc":null},{"commit":"1d4043a3b64c38a20a0db065c3bdc3c6a2d068bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 12:14:09 2019 -0800","stats":{"files_changed":1,"insertions":52,"deletions":0,"files":["jc/parsers/foo.py"]},"message":"add template parser","epoch":1573244049,"epoch_utc":null},{"commit":"039e034829789ca314a00abd4f1d9ad06f1a6eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 11:47:58 2019 -0800","stats":{"files_changed":1,"insertions":19,"deletions":6,"files":["jc/parsers/netstat.py"]},"message":"fix parsing issues in program_name when spaces are in the name","epoch":1573242478,"epoch_utc":null},{"commit":"d828de4f4f2f4c3d582fddee79830d12511c3299","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 09:07:05 2019 -0800","stats":{"files_changed":1,"insertions":53,"deletions":9,"files":["jc/parsers/w.py"]},"message":"update documentation","epoch":1573232825,"epoch_utc":null},{"commit":"098000bb10a3f5ed33d285c6ba4f0dfb9a013fdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 09:04:03 2019 -0800","stats":{"files_changed":2,"insertions":24,"deletions":9,"files":["changelog.txt","jc/parsers/w.py"]},"message":"fix blank 'from' column issue","epoch":1573232643,"epoch_utc":null},{"commit":"b41165eff5cd7371e852cd33e084a919524ead9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 19:13:15 2019 -0800","stats":{"files_changed":1,"insertions":31,"deletions":1,"files":["jc/parsers/w.py"]},"message":"process w data","epoch":1573182795,"epoch_utc":null},{"commit":"6ad7891b2b34fae1a366568e4eba86e886a6dd84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 18:54:52 2019 -0800","stats":{"files_changed":1,"insertions":59,"deletions":14,"files":["jc/parsers/uptime.py"]},"message":"process uptime data","epoch":1573181692,"epoch_utc":null},{"commit":"72138315598cd405bc0508b554108bf3f730dcb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 18:47:01 2019 -0800","stats":{"files_changed":1,"insertions":31,"deletions":10,"files":["jc/parsers/uname.py"]},"message":"add process boilerplate","epoch":1573181221,"epoch_utc":null},{"commit":"10eedd82e4c4678fbf989fe599d7ca75deced5a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 18:34:06 2019 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["changelog.txt"]},"message":"changelog update","epoch":1573180446,"epoch_utc":null},{"commit":"a55493da0f1457a46f29511e0835adfa9d748f7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 18:33:51 2019 -0800","stats":{"files_changed":1,"insertions":93,"deletions":6,"files":["jc/parsers/route.py"]},"message":"process route data","epoch":1573180431,"epoch_utc":null},{"commit":"89973f4162317693b0d094a64115ee87d8479d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 15:33:12 2019 -0800","stats":{"files_changed":1,"insertions":45,"deletions":27,"files":["jc/parsers/ps.py"]},"message":"doc updates and tty fix","epoch":1573169592,"epoch_utc":null},{"commit":"4802222ad50d55372f2b883d83a61181086b0619","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 15:24:03 2019 -0800","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/parsers/ps.py"]},"message":"process ps data","epoch":1573169043,"epoch_utc":null},{"commit":"bcd28f06f87a4260d1787399d723817afd6aee90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 15:09:57 2019 -0800","stats":{"files_changed":1,"insertions":23,"deletions":1,"files":["jc/parsers/ps.py"]},"message":"prep ps for process","epoch":1573168197,"epoch_utc":null},{"commit":"e17a47a7fa7f4c1bb4c4b55fb004963fc1b61434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 14:51:05 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"fix typo","epoch":1573167065,"epoch_utc":null},{"commit":"cad2e16c7aa54a70f476bf4268ff8e5985cff468","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 14:49:21 2019 -0800","stats":{"files_changed":1,"insertions":353,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"document examples","epoch":1573166961,"epoch_utc":null},{"commit":"5da5d278dac77bd4aa21819194e7f9e178bd1887","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 14:43:42 2019 -0800","stats":{"files_changed":1,"insertions":23,"deletions":0,"files":["jc/parsers/netstat.py"]},"message":"process netstat data","epoch":1573166622,"epoch_utc":null},{"commit":"81b6776e57c113cbfb8346d1cfd83532a440c257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 13:58:55 2019 -0800","stats":{"files_changed":1,"insertions":0,"deletions":177,"files":["jc/parsers/netstat.py.old"]},"message":"remove old netstat parser","epoch":1573163935,"epoch_utc":null},{"commit":"5ecb6bd58b4ed91f63e4a0b5939378bd9925b7b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 13:58:37 2019 -0800","stats":{"files_changed":2,"insertions":4,"deletions":3,"files":["changelog.txt","jc/parsers/netstat.py"]},"message":"doc updates","epoch":1573163917,"epoch_utc":null},{"commit":"21b56096c57cfcf5c55fdf5f9bab88b6d5c7dd73","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 13:53:23 2019 -0800","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["jc/parsers/netstat.py"]},"message":"finalize parse_post","epoch":1573163603,"epoch_utc":null},{"commit":"8c78f959731a25a05ee6361a14853c92f8fce69b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 12:13:25 2019 -0800","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"clean up trailing spaces on entries","epoch":1573157605,"epoch_utc":null},{"commit":"94a88bb5669d9a9a5dff085a4c4111bdd39df8f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 10:52:02 2019 -0800","stats":{"files_changed":1,"insertions":35,"deletions":17,"files":["jc/parsers/netstat.py"]},"message":"post_parse flags and program_name","epoch":1573152722,"epoch_utc":null},{"commit":"579124475b0b517b36ddbe5bdb13be14807dea1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 09:02:27 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"simplify parser_map code","epoch":1573146147,"epoch_utc":null},{"commit":"5da83e020015eb5559d216bc3f39b3854e76adf3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:23:11 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"]},"message":"fix found variable error","epoch":1573143791,"epoch_utc":null},{"commit":"a90a76d004b923edece07a52a3aa400a9ef4b005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:15:19 2019 -0800","stats":{"files_changed":2,"insertions":177,"deletions":140,"files":["jc/parsers/netstat.py.old","jc/parsers/netstat2.py"]},"message":"move out old netstat parser","epoch":1573143319,"epoch_utc":null},{"commit":"bdfa95912398b2630fcb13e866f4013747fd0975","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:07:43 2019 -0800","stats":{"files_changed":20,"insertions":209,"deletions":212,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"fix compatibility code","epoch":1573142863,"epoch_utc":null},{"commit":"4380594275bc863e81839a6a7b032a6ff0cbb9b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:04:32 2019 -0800","stats":{"files_changed":1,"insertions":8,"deletions":46,"files":["jc/utils.py"]},"message":"remove cli functions from utils","epoch":1573142672,"epoch_utc":null},{"commit":"88bf252c0df3c583640286880d7992e4399e23f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:04:07 2019 -0800","stats":{"files_changed":2,"insertions":139,"deletions":128,"files":["jc/cli.py","jc/jc.py"]},"message":"rename jc.py to cli.py","epoch":1573142647,"epoch_utc":null},{"commit":"a5efd8adce77fca7e3343f8f518c7bad578fdb4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:03:45 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"rename jc.py to cli.py","epoch":1573142625,"epoch_utc":null},{"commit":"2ee392eefffde77ebdf83f5e4e0c43cf8c1a7d6e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 21:09:09 2019 -0800","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/netstat2.py"]},"message":"add quiet mode","epoch":1573103349,"epoch_utc":null},{"commit":"9c1d893e16ea17b16bec5fd0ec8839c4fe6f0590","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 21:07:25 2019 -0800","stats":{"files_changed":4,"insertions":102,"deletions":90,"files":["jc/jc.py","jc/parsers/arp.py","jc/parsers/df.py","jc/utils.py"]},"message":"move utils to own module and add quiet mode","epoch":1573103245,"epoch_utc":null},{"commit":"88dcb90c83b757285661c72429c5b60bb1ead94a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 21:05:25 2019 -0800","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["changelog.txt"]},"message":"changelog update","epoch":1573103125,"epoch_utc":null},{"commit":"a3bcabc89c1f74d067da0046492dbc56e50b1005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 20:35:10 2019 -0800","stats":{"files_changed":1,"insertions":9,"deletions":62,"files":["jc/parsers/netstat2.py"]},"message":"mvp of netstat raw_data parser","epoch":1573101310,"epoch_utc":null},{"commit":"dafbf9fdcf53a8abbd006baef0be6697f860d2a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 19:17:01 2019 -0800","stats":{"files_changed":4,"insertions":247,"deletions":53,"files":["jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat2.py"]},"message":"process lsmod data","epoch":1573096621,"epoch_utc":null},{"commit":"680cb2b2caa82e1e2c3225b3c44cae2ba03ba02c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 09:56:59 2019 -0600","stats":{"files_changed":1,"insertions":76,"deletions":7,"files":["jc/parsers/lsblk.py"]},"message":"doc update","epoch":1573063019,"epoch_utc":null},{"commit":"54818a06e0e0b981810f6aec45c308da81a9e2ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 09:21:55 2019 -0600","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/lsblk.py"]},"message":"change bool variable names","epoch":1573060915,"epoch_utc":null},{"commit":"88f4c5b5a93da3938b84f97abfc54539ee19ac48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 08:47:54 2019 -0600","stats":{"files_changed":6,"insertions":10,"deletions":10,"files":["jc/parsers/dig.py","jc/parsers/free.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py"]},"message":"remove TypeError from exception check","epoch":1573058874,"epoch_utc":null},{"commit":"2bb7409887e8b7659613189daf58d02cb26bd6ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 23:10:49 2019 -0600","stats":{"files_changed":2,"insertions":36,"deletions":11,"files":["jc/parsers/df.py","jc/parsers/lsblk.py"]},"message":"process lsblk data","epoch":1573024249,"epoch_utc":null},{"commit":"c780aac3aba02cc042c6a3c984af198069956370","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 22:42:48 2019 -0600","stats":{"files_changed":22,"insertions":91,"deletions":5,"files":["jc/jc.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat2.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add compatibility function","epoch":1573022568,"epoch_utc":null},{"commit":"5010aaec285e26ae9dbfdb3fcdc38a3bd36cd236","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:25:20 2019 -0600","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"]},"message":"put exit() back","epoch":1573003520,"epoch_utc":null},{"commit":"066e93cb075021ac94a0e2e6a36a34bc173ee6c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:23:46 2019 -0600","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"]},"message":"move exit() to errormessage()","epoch":1573003426,"epoch_utc":null},{"commit":"0bd2faa7f71a128babc68afea053159ccb91b702","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:17:07 2019 -0600","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/jc.py"]},"message":"beautify compatibility list","epoch":1573003027,"epoch_utc":null},{"commit":"e2f926453ba386736204e358f8306dfc731b5005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:08:41 2019 -0600","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["install.sh"]},"message":"add install script","epoch":1573002521,"epoch_utc":null},{"commit":"b953b79f9c46d8c5398a6c1c2769167b5aed2805","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:04:18 2019 -0600","stats":{"files_changed":3,"insertions":11,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/ls.py"]},"message":"add compatibility","epoch":1573002258,"epoch_utc":null},{"commit":"7f9967780692bec2fcbe992eee0c392ab92efb7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:00:36 2019 -0600","stats":{"files_changed":2,"insertions":19,"deletions":1,"files":["jc/jc.py","jc/parsers/lsblk.py"]},"message":"compatibility function call","epoch":1573002036,"epoch_utc":null},{"commit":"721b54665924ad1657ee83cd5fca601e03700962","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 15:14:52 2019 -0600","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/lsblk.py"]},"message":"finish schema","epoch":1572995692,"epoch_utc":null},{"commit":"2de5e41269421c73e07d4abd6ca99b38be736261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 15:07:40 2019 -0600","stats":{"files_changed":1,"insertions":95,"deletions":12,"files":["jc/parsers/lsblk.py"]},"message":"fix for more columns and build schema","epoch":1572995260,"epoch_utc":null},{"commit":"dfe0f6e99b6174734661fc43d9ad4b1d0dfd96e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 08:30:32 2019 -0800","stats":{"files_changed":1,"insertions":75,"deletions":9,"files":["jc/parsers/ls.py"]},"message":"process ls data","epoch":1572971432,"epoch_utc":null},{"commit":"8873b1bc697c8f9409fa676c88b5ebe109dc8717","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 08:07:39 2019 -0800","stats":{"files_changed":1,"insertions":24,"deletions":46,"files":["jc/parsers/df.py"]},"message":"clean up process code","epoch":1572970059,"epoch_utc":null},{"commit":"9ff94707004fefed475603436fc0a7ffb19e6fee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 07:21:58 2019 -0800","stats":{"files_changed":1,"insertions":9,"deletions":4,"files":["jc/jc.py"]},"message":"refactor helptext() function","epoch":1572967318,"epoch_utc":null},{"commit":"2c58fca53044892e15ceb5e8bcae1afb09fa3269","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 17:07:11 2019 -0800","stats":{"files_changed":1,"insertions":62,"deletions":4,"files":["jc/parsers/jobs.py"]},"message":"process jobs data","epoch":1572916031,"epoch_utc":null},{"commit":"9e5cd90da7d92bbadbc0d25071d087a3dbd90a5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 16:59:14 2019 -0800","stats":{"files_changed":1,"insertions":131,"deletions":261,"files":["jc/parsers/iptables.py"]},"message":"process iptables data","epoch":1572915554,"epoch_utc":null},{"commit":"7ee0d49424bba5274975d6c33e0721977660692f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 15:54:34 2019 -0800","stats":{"files_changed":1,"insertions":107,"deletions":28,"files":["jc/parsers/ifconfig.py"]},"message":"process ifconfig data","epoch":1572911674,"epoch_utc":null},{"commit":"a9058ee21e87454aa423112239c4f4df7daca8c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 15:19:50 2019 -0800","stats":{"files_changed":3,"insertions":4,"deletions":1,"files":["jc/parsers/arp.py","jc/parsers/dig.py","jc/parsers/free.py"]},"message":"doc formatting","epoch":1572909590,"epoch_utc":null},{"commit":"fcf0aac87dccac2ce28e6f55e66e2f0b8f6fbd36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 15:19:35 2019 -0800","stats":{"files_changed":1,"insertions":54,"deletions":10,"files":["jc/parsers/history.py"]},"message":"add history processing","epoch":1572909575,"epoch_utc":null},{"commit":"daec5f068103aae547509ddacc2be56c84f39f17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 15:11:18 2019 -0800","stats":{"files_changed":1,"insertions":55,"deletions":6,"files":["jc/parsers/free.py"]},"message":"process free data","epoch":1572909078,"epoch_utc":null},{"commit":"5b2491d5ae72705758944e247fbca83367c0365f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 15:03:16 2019 -0800","stats":{"files_changed":1,"insertions":54,"deletions":5,"files":["jc/parsers/env.py"]},"message":"process env data","epoch":1572908596,"epoch_utc":null},{"commit":"d9b41ac73b234f5bf7ff3abfee198092424a1bbd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 13:52:45 2019 -0800","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/dig.py"]},"message":"doc formatting","epoch":1572904365,"epoch_utc":null},{"commit":"7168ffddf8a8dfcdd5bcabd8bf943d6417de407d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 13:47:27 2019 -0800","stats":{"files_changed":1,"insertions":87,"deletions":5,"files":["jc/parsers/dig.py"]},"message":"process dig output","epoch":1572904047,"epoch_utc":null},{"commit":"a855344bec9f60d852de326953436ec76f25cffb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 13:05:56 2019 -0800","stats":{"files_changed":1,"insertions":13,"deletions":0,"files":["jc/parsers/arp.py"]},"message":"document schema","epoch":1572901556,"epoch_utc":null},{"commit":"d8b3b59fae924494fbcdfbdf6ad790f5234b0c69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 13:02:54 2019 -0800","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/parsers/df.py"]},"message":"add schema and rename 'avail' to 'available'","epoch":1572901374,"epoch_utc":null},{"commit":"4b7d7840d37be47c1c98c38a6d712e7090e5b68c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 12:50:37 2019 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","changelog.txt"]},"message":"add -r option","epoch":1572900637,"epoch_utc":null},{"commit":"58a094a9b4cab0fcb99581f37a21a450fc3a1aed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 12:40:19 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update","epoch":1572900019,"epoch_utc":null},{"commit":"65adbb4189ac66de3283adb2af93a1251103f057","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 12:40:05 2019 -0800","stats":{"files_changed":1,"insertions":29,"deletions":7,"files":["jc/parsers/arp.py"]},"message":"doc update","epoch":1572900005,"epoch_utc":null},{"commit":"f7350959c9706486a3aed19a999e5ee756a1240c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 12:39:43 2019 -0800","stats":{"files_changed":1,"insertions":47,"deletions":24,"files":["jc/parsers/df.py"]},"message":"df fix for changing header names when -h used","epoch":1572899983,"epoch_utc":null},{"commit":"8934a7d832b8e1375f0bbdd71031f37ae42f3929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 11:10:58 2019 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["jc/parsers/arp.py","jc/parsers/df.py"]},"message":"fix dictionary iteration","epoch":1572894658,"epoch_utc":null},{"commit":"669a424fd6508db91bf5cfa2607033fac85f442c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 11:02:02 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/df.py"]},"message":"fix process function","epoch":1572894122,"epoch_utc":null},{"commit":"591a65c2bda26efcdd570a5f147f98a5be0473d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 10:56:33 2019 -0800","stats":{"files_changed":1,"insertions":46,"deletions":2,"files":["jc/parsers/df.py"]},"message":"process df data","epoch":1572893793,"epoch_utc":null},{"commit":"a78fb890782a64b20c0c1b60afbd915ebdd88535","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 09:32:29 2019 -0800","stats":{"files_changed":1,"insertions":21,"deletions":5,"files":["jc/parsers/arp.py"]},"message":"add raw and processed output","epoch":1572888749,"epoch_utc":null},{"commit":"8979dab2a5371fce3a773004c2309e7483e4cd31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 09:32:09 2019 -0800","stats":{"files_changed":1,"insertions":25,"deletions":20,"files":["jc/jc.py"]},"message":"add raw mode","epoch":1572888729,"epoch_utc":null},{"commit":"0a891f0adda7f2f3233222a0cb5c1f737913ad6f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 08:09:19 2019 -0800","stats":{"files_changed":2,"insertions":4,"deletions":1,"files":["changelog.txt","setup.py"]},"message":"bump python required version","epoch":1572883759,"epoch_utc":null},{"commit":"c220e35b14237c2cfc38aa661413af83ea13e393","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 08:06:50 2019 -0800","stats":{"files_changed":1,"insertions":34,"deletions":33,"files":["jc/jc.py"]},"message":"cleanup helptext","epoch":1572883610,"epoch_utc":null},{"commit":"f26c5818bd958c18f4ecc22611b9c058f6213a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 07:57:47 2019 -0800","stats":{"files_changed":1,"insertions":36,"deletions":33,"files":["jc/jc.py"]},"message":"refactor helptext","epoch":1572883067,"epoch_utc":null},{"commit":"e712cd3fc4cec1b3137c73e199b2d89fd42fb3bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 1 22:29:08 2019 -0700","stats":{"files_changed":1,"insertions":138,"deletions":0,"files":["jc/parsers/netstat2.py"]},"message":"netstat2 skeleton","epoch":1572672548,"epoch_utc":null},{"commit":"0309c9ac67c5f65e0a584fd01e8104ef1990fa7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 1 08:55:52 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"setup cleanup","epoch":1572623752,"epoch_utc":null},{"commit":"9a9eb4120af7696cd3727ac0f0a014663e62b993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 1 08:53:53 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["setup.py"]},"message":"setup updates","epoch":1572623633,"epoch_utc":null},{"commit":"d1927456b02e6c2a6e6395cd6ce873b6565ec37d","merge":"0691cfc a3d9213","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 31 08:06:01 2019 -0700","message":"Merge pull request #6 from kellyjonbrazil/dev\n\nDev v1.1.1","epoch":1572534361,"epoch_utc":null},{"commit":"a3d9213a1e2fd52ba2cbc863d4d01d3ffeebe230","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 31 07:59:03 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["changelog.txt"]},"message":"add date","epoch":1572533943,"epoch_utc":null},{"commit":"3365c03a1e709835b4bd6bca023afbcb46912982","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 31 07:58:44 2019 -0700","stats":{"files_changed":2,"insertions":361,"deletions":0,"files":["tests/test_arp.py","tests/test_dig.py"]},"message":"add tests","epoch":1572533924,"epoch_utc":null},{"commit":"4f6c87389b313b368d9e833feef55fe6daf7aac9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 31 07:27:31 2019 -0700","stats":{"files_changed":7,"insertions":164,"deletions":1,"files":["tests/fixtures/centos-7.7/dig-aaaa.out","tests/fixtures/centos-7.7/dig-x.out","tests/fixtures/centos-7.7/dig.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/dig-aaaa.out","tests/fixtures/ubuntu-18.04/dig-x.out","tests/fixtures/ubuntu-18.04/dig.out"]},"message":"add dig test files","epoch":1572532051,"epoch_utc":null},{"commit":"41a2a9adac7d3c29dfa11292f08b0877c69b1a5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 31 07:27:12 2019 -0700","stats":{"files_changed":2,"insertions":147,"deletions":3,"files":["README.md","jc/parsers/dig.py"]},"message":"remove unnecessary if statement","epoch":1572532032,"epoch_utc":null},{"commit":"74dae2905b2b0916f0be9fee2a4a343962760ff6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 17:23:35 2019 -0700","stats":{"files_changed":1,"insertions":143,"deletions":30,"files":["jc/parsers/dig.py"]},"message":"dig parser mvp","epoch":1572481415,"epoch_utc":null},{"commit":"d1f64214de00090c3faae0bf544c6c2602ab8c31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 17:18:14 2019 -0700","stats":{"files_changed":1,"insertions":19,"deletions":3,"files":["jc/parsers/dig.py"]},"message":"add authority parsing","epoch":1572481094,"epoch_utc":null},{"commit":"d3e1aa20a815d1d1d6ae82776ae18e3416f0966f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 17:03:35 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dig.py"]},"message":"fix when line","epoch":1572480215,"epoch_utc":null},{"commit":"72cae9577756c4355211a19f4dd77aaeb6f8e905","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 16:59:56 2019 -0700","stats":{"files_changed":1,"insertions":47,"deletions":9,"files":["jc/parsers/dig.py"]},"message":"dig fixes","epoch":1572479996,"epoch_utc":null},{"commit":"219bc8130f55f23e3be3abbe56104aefc2f84e86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 15:36:13 2019 -0700","stats":{"files_changed":2,"insertions":155,"deletions":0,"files":["jc/jc.py","jc/parsers/dig.py"]},"message":"dig parser skeleton","epoch":1572474973,"epoch_utc":null},{"commit":"e8c1a554c040ad8f9c6b518db5fd58e8345d2181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:52:53 2019 -0700","stats":{"files_changed":3,"insertions":7,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-a.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/arp-a.out"]},"message":"testfile updates","epoch":1572468773,"epoch_utc":null},{"commit":"087a60bc2adf64bfcedc1f264fef328f993b530c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:52:31 2019 -0700","stats":{"files_changed":2,"insertions":87,"deletions":5,"files":["README.md","jc/parsers/arp.py"]},"message":"documentation updates","epoch":1572468751,"epoch_utc":null},{"commit":"9c9823c3b8737b5de08af6278ca74414138e9263","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:29:06 2019 -0700","stats":{"files_changed":5,"insertions":16,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-v.out","tests/fixtures/centos-7.7/arp.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/arp-v.out","tests/fixtures/ubuntu-18.04/arp.out"]},"message":"add arp testfiles","epoch":1572467346,"epoch_utc":null},{"commit":"cf8d13030bf67261a986c0f80fa20ec0e37a743a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:22:12 2019 -0700","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["README.md"]},"message":"add arp","epoch":1572466932,"epoch_utc":null},{"commit":"1eff69c187ca410ffaec7909bc2532553be1d80c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:21:05 2019 -0700","stats":{"files_changed":2,"insertions":17,"deletions":1,"files":["changelog.txt","jc/parsers/arp.py"]},"message":"add documentation","epoch":1572466865,"epoch_utc":null},{"commit":"b10fb77d714b73a10a9bf28b45269b3530e01cee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:12:53 2019 -0700","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/arp.py"]},"message":"fixup arp parser","epoch":1572466373,"epoch_utc":null},{"commit":"87cee8b230a06fa270b2e36afb56f337da814c80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:00:05 2019 -0700","stats":{"files_changed":2,"insertions":28,"deletions":1,"files":["jc/jc.py","jc/parsers/arp.py"]},"message":"add arp parser","epoch":1572465605,"epoch_utc":null},{"commit":"83ab10d6282e26391bbf6bae5d0d29e040b209f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 12:50:05 2019 -0700","stats":{"files_changed":1,"insertions":44,"deletions":34,"files":["jc/__init__.py"]},"message":"documentation update","epoch":1572465005,"epoch_utc":null},{"commit":"d58a6e1d1dc93155255922b65b0af1325439b033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 14:19:04 2019 -0700","stats":{"files_changed":1,"insertions":13,"deletions":15,"files":["README.md"]},"message":"readme update","epoch":1572383944,"epoch_utc":null},{"commit":"cb46ca5c2776a13c673a44d3e0fbd0661b32af9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 10:27:42 2019 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]},"message":"readme update","epoch":1572370062,"epoch_utc":null},{"commit":"5528d979f0b45787d68ab79b962371df9acc527b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 09:16:03 2019 -0700","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["changelog.txt","setup.py"]},"message":"version bump","epoch":1572365763,"epoch_utc":null},{"commit":"ee94a038a61d60db72046d5bcceec58009decb39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 08:58:52 2019 -0700","stats":{"files_changed":3,"insertions":131,"deletions":0,"files":["tests/test_uname.py","tests/test_uptime.py","tests/test_w.py"]},"message":"add tests","epoch":1572364732,"epoch_utc":null},{"commit":"1d658f7a9fc50873f76985b2fb9de92ada9d5547","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 08:45:11 2019 -0700","stats":{"files_changed":3,"insertions":265,"deletions":0,"files":["tests/test_netstat.py","tests/test_ps.py","tests/test_route.py"]},"message":"add tests","epoch":1572363911,"epoch_utc":null},{"commit":"392cb44f9b19829a5ceba055e24c7af4d8ac5b3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 07:55:26 2019 -0700","stats":{"files_changed":80,"insertions":12667,"deletions":0,"files":["runtests.sh","tests/__init__.py","tests/fixtures/centos-7.7/df-h.out","tests/fixtures/centos-7.7/df.out","tests/fixtures/centos-7.7/env.out","tests/fixtures/centos-7.7/free-h.out","tests/fixtures/centos-7.7/free.out","tests/fixtures/centos-7.7/history.out","tests/fixtures/centos-7.7/ifconfig.out","tests/fixtures/centos-7.7/iptables-filter-nv.out","tests/fixtures/centos-7.7/iptables-filter.out","tests/fixtures/centos-7.7/iptables-mangle.out","tests/fixtures/centos-7.7/iptables-nat.out","tests/fixtures/centos-7.7/iptables-raw.out","tests/fixtures/centos-7.7/jobs.out","tests/fixtures/centos-7.7/ls-al.out","tests/fixtures/centos-7.7/ls-alh.out","tests/fixtures/centos-7.7/ls.out","tests/fixtures/centos-7.7/lsblk.out","tests/fixtures/centos-7.7/lsmod.out","tests/fixtures/centos-7.7/lsof-sudo.out","tests/fixtures/centos-7.7/lsof.out","tests/fixtures/centos-7.7/mount.out","tests/fixtures/centos-7.7/netstat-l.out","tests/fixtures/centos-7.7/netstat-p.out","tests/fixtures/centos-7.7/netstat-sudo-lnp.out","tests/fixtures/centos-7.7/netstat.out","tests/fixtures/centos-7.7/ps-axu.out","tests/fixtures/centos-7.7/ps-ef.out","tests/fixtures/centos-7.7/route-vn.out","tests/fixtures/centos-7.7/route.out","tests/fixtures/centos-7.7/uname-a.out","tests/fixtures/centos-7.7/uptime.out","tests/fixtures/centos-7.7/w.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/df-h.out","tests/fixtures/ubuntu-18.04/df.out","tests/fixtures/ubuntu-18.04/env.out","tests/fixtures/ubuntu-18.04/free-h.out","tests/fixtures/ubuntu-18.04/free.out","tests/fixtures/ubuntu-18.04/history.out","tests/fixtures/ubuntu-18.04/ifconfig.out","tests/fixtures/ubuntu-18.04/iptables-filter-nv.out","tests/fixtures/ubuntu-18.04/iptables-filter.out","tests/fixtures/ubuntu-18.04/iptables-mangle.out","tests/fixtures/ubuntu-18.04/iptables-nat.out","tests/fixtures/ubuntu-18.04/iptables-raw.out","tests/fixtures/ubuntu-18.04/jobs.out","tests/fixtures/ubuntu-18.04/ls-al.out","tests/fixtures/ubuntu-18.04/ls-alh.out","tests/fixtures/ubuntu-18.04/ls.out","tests/fixtures/ubuntu-18.04/lsblk.out","tests/fixtures/ubuntu-18.04/lsmod.out","tests/fixtures/ubuntu-18.04/lsof-sudo.out","tests/fixtures/ubuntu-18.04/lsof.out","tests/fixtures/ubuntu-18.04/mount.out","tests/fixtures/ubuntu-18.04/netstat-l.out","tests/fixtures/ubuntu-18.04/netstat-p.out","tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.out","tests/fixtures/ubuntu-18.04/netstat.out","tests/fixtures/ubuntu-18.04/ps-axu.out","tests/fixtures/ubuntu-18.04/ps-ef.out","tests/fixtures/ubuntu-18.04/route-vn.out","tests/fixtures/ubuntu-18.04/route.out","tests/fixtures/ubuntu-18.04/uname-a.out","tests/fixtures/ubuntu-18.04/uptime.out","tests/fixtures/ubuntu-18.04/w.out","tests/test_df.py","tests/test_env.py","tests/test_free.py","tests/test_history.py","tests/test_ifconfig.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_ls.py","tests/test_lsblk.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py"]},"message":"initial add of tests and fixtures","epoch":1572360926,"epoch_utc":null},{"commit":"579bef079cdd7cfa298bc20e052b8eb75b586f5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 07:54:59 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/netstat.py"]},"message":"move global output variable inside function","epoch":1572360899,"epoch_utc":null},{"commit":"0691cfcab3f5f91908e06ec906d57e548d4e7a1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 26 18:49:43 2019 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["changelog.txt"]},"message":"changelog fix","epoch":1572140983,"epoch_utc":null},{"commit":"db29c7c186601fd4596d3eb121b37100601af907","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 26 18:49:13 2019 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","jc/parsers/netstat.py"]},"message":"documentation fixes","epoch":1572140953,"epoch_utc":null},{"commit":"fb1e03637514b5ab02fd4c5df1db8b3cbacdd531","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 20:27:03 2019 -0700","stats":{"files_changed":1,"insertions":14,"deletions":10,"files":["README.md"]},"message":"formatting","epoch":1572060423,"epoch_utc":null},{"commit":"c3eaf59836538f4ab4c745e87b70115b4a4c5421","merge":"ea0cf0a c9849ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 19:43:24 2019 -0700","message":"Merge pull request #5 from kellyjonbrazil/dev\n\nDev v1.0.1","epoch":1572057804,"epoch_utc":null},{"commit":"c9849ce0db1f864d33739f8f6f942bf5672bc3b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 19:41:35 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]},"message":"changelog update","epoch":1572057695,"epoch_utc":null},{"commit":"d3c89a3092973a7a8765463fff41c2469ed675cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 19:27:02 2019 -0700","stats":{"files_changed":1,"insertions":11,"deletions":9,"files":["jc/parsers/uname.py"]},"message":"check for enough info to parse","epoch":1572056822,"epoch_utc":null},{"commit":"a3d43f27f7bb0835b3593b7c303fe0ee8d896a58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 18:25:33 2019 -0700","stats":{"files_changed":1,"insertions":12,"deletions":10,"files":["jc/parsers/uptime.py"]},"message":"fix odd uptime text parsing","epoch":1572053133,"epoch_utc":null},{"commit":"f4d9c1b699fa30bd297a40ccf3d5f6e7ba3d4253","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 17:16:02 2019 -0700","stats":{"files_changed":1,"insertions":8,"deletions":4,"files":["jc/parsers/uptime.py"]},"message":"fix uptime for minutes and hours long uptime","epoch":1572048962,"epoch_utc":null},{"commit":"de647bba4aff84f7b513cf7f6fec8d3933b0d9da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 16:14:32 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"documentation update","epoch":1572045272,"epoch_utc":null},{"commit":"d7913070315e5e0c89006942250aaf37e9e3e18e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 16:12:45 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"documentation update","epoch":1572045165,"epoch_utc":null},{"commit":"1a4fc204e21f1555ae67c3147322c8d73fab630b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 16:09:31 2019 -0700","stats":{"files_changed":2,"insertions":10,"deletions":1,"files":["README.md","changelog.txt"]},"message":"Documentation update","epoch":1572044971,"epoch_utc":null},{"commit":"0328e14c7c65a330093faa52fe48dae6cb173e42","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 16:05:34 2019 -0700","stats":{"files_changed":1,"insertions":7,"deletions":0,"files":["jc/jc.py"]},"message":"handle ctrl-c gracefully","epoch":1572044734,"epoch_utc":null},{"commit":"1acc4d6c29d136e286f82d607c4a3a59e2680b68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 15:52:53 2019 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/uptime.py"]},"message":"fix uptime parsing for short uptimes","epoch":1572043973,"epoch_utc":null},{"commit":"27245590ce28be933f1a55db4ee6b24783f4b63d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 15:40:53 2019 -0700","stats":{"files_changed":1,"insertions":12,"deletions":20,"files":["jc/parsers/jobs.py"]},"message":"remove integers","epoch":1572043253,"epoch_utc":null},{"commit":"7ca2a4bdb939293e8d7364f8901ad1fd6d3ee808","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 15:39:48 2019 -0700","stats":{"files_changed":5,"insertions":182,"deletions":201,"files":["README.md","changelog.txt","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/netstat.py"]},"message":"remove integer values","epoch":1572043188,"epoch_utc":null},{"commit":"5f1ec6734874651bee595961edf1fafaf5acf001","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 14:58:15 2019 -0700","stats":{"files_changed":10,"insertions":473,"deletions":456,"files":["README.md","jc/parsers/df.py","jc/parsers/history.py","jc/parsers/iptables.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/w.py"]},"message":"lower() headers","epoch":1572040695,"epoch_utc":null},{"commit":"7e44c4278a75c7223d99200023160e8d77fde54d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:55:38 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/jobs.py"]},"message":"formatting","epoch":1572026138,"epoch_utc":null},{"commit":"eda726c4a3864008e2f700374b679ae68a965ef8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:55:26 2019 -0700","stats":{"files_changed":1,"insertions":80,"deletions":1,"files":["jc/parsers/ifconfig.py"]},"message":"documentation update","epoch":1572026126,"epoch_utc":null},{"commit":"5f8e70d73054f1a106c0e75eee621bc0cefd1c6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:55:09 2019 -0700","stats":{"files_changed":9,"insertions":20,"deletions":22,"files":["changelog.txt","jc/parsers/df.py","jc/parsers/free.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/w.py"]},"message":"convert headers to lowercase","epoch":1572026109,"epoch_utc":null},{"commit":"25b90546c652cafa9409f02bae1654cb523add88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:39:05 2019 -0700","stats":{"files_changed":3,"insertions":14,"deletions":9,"files":["README.md","changelog.txt","jc/parsers/df.py"]},"message":"change 'Use%' to 'Use_percent'","epoch":1572025145,"epoch_utc":null},{"commit":"75c084153845757e22c149ea4ae7909d42ec7118","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:32:54 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]},"message":"changelog update","epoch":1572024774,"epoch_utc":null},{"commit":"5b532b9b71fdb9de575da0af9b7989ac537877c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:31:03 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/parsers/lsof.py"]},"message":"minor cleanup","epoch":1572024663,"epoch_utc":null},{"commit":"8c7b3193d131411f8766508fc27b2a6589bba1f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:28:19 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/history.py"]},"message":"documentation change","epoch":1572024499,"epoch_utc":null},{"commit":"0897c96ef3c180a1707e8f56c545f59b3a4e0672","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:22:23 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/lsof.py"]},"message":"formatting","epoch":1572024143,"epoch_utc":null},{"commit":"57d0ab2ed7f444862546da17cbbe8f8ce67bca8c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:22:10 2019 -0700","stats":{"files_changed":2,"insertions":9,"deletions":4,"files":["README.md","jc/parsers/w.py"]},"message":"change LOGIN@ to LOGIN_AT","epoch":1572024130,"epoch_utc":null},{"commit":"a07d9a0e4bb76d369b4a9bf0d77c7590dc3c2861","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:04:29 2019 -0700","stats":{"files_changed":2,"insertions":22,"deletions":13,"files":["README.md","jc/parsers/lsof.py"]},"message":"change SIZE/OFF key to SIZE_OFF","epoch":1572023069,"epoch_utc":null},{"commit":"b3996cb4dfed908d71b292dc0b0136c6675351e6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 09:54:42 2019 -0700","stats":{"files_changed":2,"insertions":14,"deletions":10,"files":["README.md","jc/parsers/lsblk.py"]},"message":"change MAJ:MIN key to MAJ_MIN","epoch":1572022482,"epoch_utc":null},{"commit":"4fa88c1ba38b34f9750625458c465d66f6531bc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 09:53:44 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/history.py"]},"message":"clear out non-ascii chars from data","epoch":1572022424,"epoch_utc":null},{"commit":"c8c5564b29588094721949b96bff1e623437835d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 09:46:03 2019 -0700","stats":{"files_changed":2,"insertions":6,"deletions":3,"files":["README.md","jc/parsers/free.py"]},"message":"change buff/cache key to buff_cache","epoch":1572021963,"epoch_utc":null},{"commit":"6d047486d9f577bc04d79af839f5eef9657a9d43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:53:56 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"doc fix","epoch":1571964836,"epoch_utc":null},{"commit":"42bdc058141c4a3ac6f2c8211f9c990590b1b5cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:41:51 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"changelog fix","epoch":1571964111,"epoch_utc":null},{"commit":"85bfb688862e78d5879df6973b88ba8023fa6086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:33:42 2019 -0700","stats":{"files_changed":2,"insertions":15,"deletions":10,"files":["README.md","jc/parsers/history.py"]},"message":"history parser fixes","epoch":1571963622,"epoch_utc":null},{"commit":"08ec21556b553cd7e64932d68e01ba8ff3b0f210","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:12:27 2019 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/w.py"]},"message":"formatting","epoch":1571962347,"epoch_utc":null},{"commit":"320929bf2595026d32b80b80c3e4878db9cf083f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:11:17 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/env.py"]},"message":"documentation update","epoch":1571962277,"epoch_utc":null},{"commit":"41cd489c34502c42602bf64086670ba3b2b8e14b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:09:32 2019 -0700","stats":{"files_changed":5,"insertions":126,"deletions":0,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/history.py","jc/parsers/uptime.py"]},"message":"add history and uptime parsers","epoch":1571962172,"epoch_utc":null},{"commit":"f101d881a16e662e883818749d48e96858fba853","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 16:06:55 2019 -0700","stats":{"files_changed":4,"insertions":78,"deletions":3,"files":["README.md","jc/jc.py","jc/parsers/w.py","setup.py"]},"message":"add w parser","epoch":1571958415,"epoch_utc":null},{"commit":"fa7466022bb8947c1bbf9f7b01aa4d92300a8992","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 15:54:31 2019 -0700","stats":{"files_changed":3,"insertions":28,"deletions":56,"files":["README.md","changelog.txt","jc/parsers/env.py"]},"message":"fix env parser","epoch":1571957671,"epoch_utc":null},{"commit":"ea0cf0acf22585fbf8828841cf50155636eae82f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 09:48:35 2019 -0700","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/lsof.py"]},"message":"documentation update","epoch":1571935715,"epoch_utc":null},{"commit":"e7921b65f5a250c10b08f78939f74968047af430","merge":"393e8bc 2cc1b1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 18:41:55 2019 -0700","message":"Merge pull request #4 from kellyjonbrazil/dev\n\nDev v0.9.1","epoch":1571881315,"epoch_utc":null},{"commit":"2cc1b1bd5451f31d71b0e2236bdee0ce2b25b5d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 18:39:24 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"version bump","epoch":1571881164,"epoch_utc":null},{"commit":"58ae976db0165730a75dd7450c698d2727a354ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 18:30:55 2019 -0700","stats":{"files_changed":3,"insertions":113,"deletions":4,"files":["README.md","jc/parsers/lsmod.py","setup.py"]},"message":"documentation update","epoch":1571880655,"epoch_utc":null},{"commit":"66772392ae78ef394e22070b127416b1d5b01332","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 18:04:54 2019 -0700","stats":{"files_changed":3,"insertions":32,"deletions":0,"files":["changelog.txt","jc/jc.py","jc/parsers/lsmod.py"]},"message":"add lsmod parser","epoch":1571879094,"epoch_utc":null},{"commit":"29c47c03a64f9c6b0f44d34be5449396654849b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 17:37:25 2019 -0700","stats":{"files_changed":3,"insertions":134,"deletions":2,"files":["README.md","changelog.txt","jc/parsers/lsof.py"]},"message":"documentation update","epoch":1571877445,"epoch_utc":null},{"commit":"91eb9a4d13e9254bd5bbde931196904c1947a28e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 17:27:23 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsof.py"]},"message":"use None instead of --","epoch":1571876843,"epoch_utc":null},{"commit":"a1a3de32ec14d6ef433e334b9694856698c26d41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 17:22:25 2019 -0700","stats":{"files_changed":2,"insertions":59,"deletions":0,"files":["jc/jc.py","jc/parsers/lsof.py"]},"message":"add lsof parser","epoch":1571876545,"epoch_utc":null},{"commit":"9c47fd05bf716c2e18ebf4da41b1a46b972b2518","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 14:11:13 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/jobs.py"]},"message":"doco fix","epoch":1571865073,"epoch_utc":null},{"commit":"649c0aa7c157f87691cc8eeac64c747e81f63594","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 14:10:10 2019 -0700","stats":{"files_changed":2,"insertions":76,"deletions":1,"files":["README.md","jc/parsers/jobs.py"]},"message":"add documentation","epoch":1571865010,"epoch_utc":null},{"commit":"3db758764e50666e5ae40de8d89180de2ef5bc28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 14:05:47 2019 -0700","stats":{"files_changed":3,"insertions":83,"deletions":0,"files":["changelog.txt","jc/jc.py","jc/parsers/jobs.py"]},"message":"add jobs parser","epoch":1571864747,"epoch_utc":null},{"commit":"802f1510eb6d621f9c760f28b83f16a4781b8d93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 10:27:05 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"]},"message":"tighten if statements","epoch":1571851625,"epoch_utc":null},{"commit":"56901788dee154890e70269ad48d4b22bb8c5437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 09:51:29 2019 -0700","stats":{"files_changed":1,"insertions":30,"deletions":19,"files":["jc/jc.py"]},"message":"stop blocking when no pipe and enhance help text","epoch":1571849489,"epoch_utc":null},{"commit":"679ae6d5dc7af26240dc00d8bc6499950f81d457","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 09:20:11 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump","epoch":1571847611,"epoch_utc":null},{"commit":"b15c8c352a87a9b3b1dece28af0287ef71ca02d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 08:46:54 2019 -0700","stats":{"files_changed":1,"insertions":14,"deletions":16,"files":["jc/parsers/iptables.py"]},"message":"simplify state variables","epoch":1571845614,"epoch_utc":null},{"commit":"393e8bc56041a4be01b6c0b2f98895aa330afd04","merge":"e3750b4 976fd7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 17:26:40 2019 -0700","message":"Merge pull request #3 from kellyjonbrazil/dev\n\nDev v0.8.1","epoch":1571790400,"epoch_utc":null},{"commit":"976fd7d9bd49190a8b28ea5acf5af8979cdec537","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 17:24:56 2019 -0700","stats":{"files_changed":1,"insertions":27,"deletions":28,"files":["README.md"]},"message":"readme update","epoch":1571790296,"epoch_utc":null},{"commit":"d8337870cad042cdcc6a4ff3c61f756c3430fa96","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 17:21:00 2019 -0700","stats":{"files_changed":1,"insertions":27,"deletions":28,"files":["jc/parsers/df.py"]},"message":"update documentation","epoch":1571790060,"epoch_utc":null},{"commit":"39a8aec77f5134b5b958e3f679910a1c3512e13a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 17:15:02 2019 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/parsers/ls.py","setup.py"]},"message":"v0.8.1 build","epoch":1571789702,"epoch_utc":null},{"commit":"306d539b6bbfb272c7b955e4847adc3a6b4afa5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 16:50:01 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"readme update","epoch":1571788201,"epoch_utc":null},{"commit":"f3087b8a8ede88834285bb5d0655fc96341c174c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 16:40:27 2019 -0700","stats":{"files_changed":3,"insertions":635,"deletions":1,"files":["README.md","changelog.txt","jc/parsers/iptables.py"]},"message":"update readme and formatting","epoch":1571787627,"epoch_utc":null},{"commit":"414c2ecef88af2d2c098e6acfb507a5fd7bb8eda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 16:32:55 2019 -0700","stats":{"files_changed":1,"insertions":6,"deletions":10,"files":["jc/parsers/iptables.py"]},"message":"fix iptables parser","epoch":1571787175,"epoch_utc":null},{"commit":"776ef2d1be81180b8b295fbc587446a326f2f7a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 15:42:29 2019 -0700","stats":{"files_changed":2,"insertions":61,"deletions":0,"files":["jc/jc.py","jc/parsers/iptables.py"]},"message":"add iptables parser","epoch":1571784149,"epoch_utc":null},{"commit":"9ac57469967443b195be09d580beaa76ce0e1095","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 13:28:15 2019 -0700","stats":{"files_changed":4,"insertions":64,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/uname.py"]},"message":"add uname parser","epoch":1571776095,"epoch_utc":null},{"commit":"a3e55d97c0fd4397b42e9146afb0ba9558274fdb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 12:54:41 2019 -0700","stats":{"files_changed":4,"insertions":127,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/mount.py"]},"message":"add mount parser","epoch":1571774081,"epoch_utc":null},{"commit":"b15227e7ba5377e5fb6799d1b9e4ed5a11c6d92f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:55:11 2019 -0700","stats":{"files_changed":4,"insertions":125,"deletions":0,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/lsblk.py"]},"message":"add lsblk parser","epoch":1571770511,"epoch_utc":null},{"commit":"ec3d1f84ceccb492b4c968938714fafa2e6a6321","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:26:58 2019 -0700","stats":{"files_changed":1,"insertions":24,"deletions":2,"files":["jc/parsers/free.py"]},"message":"fix free parser","epoch":1571768818,"epoch_utc":null},{"commit":"753d5fd9fe5a8e4b67b1a0ec018a9f811e27f8bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:17:21 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"readme update","epoch":1571768241,"epoch_utc":null},{"commit":"73a0d70c9294ad392792e690a7bfbcc4f51b0a5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:15:44 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"readme update","epoch":1571768144,"epoch_utc":null},{"commit":"c2c189f3e6e900e5f3d35df9a9b9d033448baff6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:14:19 2019 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["README.md"]},"message":"readme update","epoch":1571768059,"epoch_utc":null},{"commit":"36bc55a3109278d663b675a09829200f5474c3d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:11:41 2019 -0700","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["README.md"]},"message":"fix df","epoch":1571767901,"epoch_utc":null},{"commit":"a023001cd350e320ce30f47af214ed7a9bb43185","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:10:11 2019 -0700","stats":{"files_changed":6,"insertions":226,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/df.py","jc/parsers/env.py","jc/parsers/free.py"]},"message":"add df, env, and free parsers","epoch":1571767811,"epoch_utc":null},{"commit":"e3750b49628794fd4d563013b1f3a7471c27ce68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 07:40:42 2019 -0700","stats":{"files_changed":2,"insertions":83,"deletions":51,"files":["README.md","jc/__init__.py"]},"message":"documentation enhancements","epoch":1571755242,"epoch_utc":null},{"commit":"b5ea08e55bfd22c9da5ba73c124791012df119a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 18:22:51 2019 -0700","stats":{"files_changed":4,"insertions":20,"deletions":20,"files":["README.md","changelog.txt","jc/parsers/netstat.py","setup.py"]},"message":"fix transport protocol","epoch":1571707371,"epoch_utc":null},{"commit":"8e71b8e3522b9b1af4d869a0854223eb5c300b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 18:11:51 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"fix jq example","epoch":1571706711,"epoch_utc":null},{"commit":"4c8610c54ff4b643237d8f0e4c5781c277fc39f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:59:32 2019 -0700","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["changelog.txt","setup.py"]},"message":"fixed build","epoch":1571705972,"epoch_utc":null},{"commit":"c8f886dc8fcdc58f8471d68c3d583200d0ea2f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:56:53 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"]},"message":"fix example","epoch":1571705813,"epoch_utc":null},{"commit":"4cfc2d22b3f9fd6f0cde8ad206edd7fe260b3071","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:38:40 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"update changelog","epoch":1571704720,"epoch_utc":null},{"commit":"59238c85408117748e78c5e87157381a828f3782","merge":"d54d906 30080c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:36:33 2019 -0700","message":"Merge pull request #2 from kellyjonbrazil/dev\n\nDev v0.6.2","epoch":1571704593,"epoch_utc":null},{"commit":"30080c01659cf611666876b7b063b7b329822352","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:26:00 2019 -0700","stats":{"files_changed":1,"insertions":35,"deletions":35,"files":["README.md"]},"message":"reorder parsers","epoch":1571703960,"epoch_utc":null},{"commit":"fab80bb3b4a1897da29d818e98e9b80ce45443dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:20:12 2019 -0700","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["README.md","setup.py"]},"message":"readme update","epoch":1571703612,"epoch_utc":null},{"commit":"a9f2df805421754afb8e8adbcac7f2d3bd06c9ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 14:27:26 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"move parsed_line var lower","epoch":1571693246,"epoch_utc":null},{"commit":"1d110be6cb25d169ae0dde6532cbcdf05d93d42f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 14:13:31 2019 -0700","stats":{"files_changed":3,"insertions":13,"deletions":1,"files":["README.md","changelog.txt","setup.py"]},"message":"update doco","epoch":1571692411,"epoch_utc":null},{"commit":"be81b5e1ed93eb65e5dbed4f52905439cde86f62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 13:47:22 2019 -0700","stats":{"files_changed":1,"insertions":112,"deletions":121,"files":["README.md"]},"message":"readme update","epoch":1571690842,"epoch_utc":null},{"commit":"5f88f7d8a071306be92cbfb65d6d62c5a68159f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 13:41:53 2019 -0700","stats":{"files_changed":1,"insertions":110,"deletions":137,"files":["jc/parsers/netstat.py"]},"message":"netstat cleanup","epoch":1571690513,"epoch_utc":null},{"commit":"e57c7cc8ef3102cc41dee4ea5fd33d40ba666491","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 13:23:29 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"change output from dict to list","epoch":1571689409,"epoch_utc":null},{"commit":"b216627c1073ea645029e341b4d3376601e5468e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 13:19:00 2019 -0700","stats":{"files_changed":1,"insertions":19,"deletions":116,"files":["jc/parsers/netstat.py"]},"message":"flatten netstat output","epoch":1571689140,"epoch_utc":null},{"commit":"6e925eab131024b5746d870cbd47e2791acf18bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 13:07:30 2019 -0700","stats":{"files_changed":1,"insertions":27,"deletions":18,"files":["jc/jc.py"]},"message":"clean up arg parsing","epoch":1571688450,"epoch_utc":null},{"commit":"d54d906c571b4683f01cab2eca63ae5f0725a87b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 19:03:11 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update readme","epoch":1571450591,"epoch_utc":null},{"commit":"0040febbf099ed8ab35f6ee343750fcf89f2e739","merge":"8073d15 e416c77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 18:57:32 2019 -0700","message":"Merge pull request #1 from kellyjonbrazil/dev\n\nDev v0.5.5","epoch":1571450252,"epoch_utc":null},{"commit":"e416c77bed1267254da972b0f95b7ff1d43fccef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 18:56:26 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"version bump","epoch":1571450186,"epoch_utc":null},{"commit":"9181d242aaed5219bb35fde01d672be88949cceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 18:47:20 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"bump version","epoch":1571449640,"epoch_utc":null},{"commit":"d6f94c53a4df84fb75554605477e49536a809dc2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 18:46:25 2019 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"]},"message":"fix blank output case in ls","epoch":1571449585,"epoch_utc":null},{"commit":"a9294f32a00709737d0b82ff434a311e75ad0bed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 18:40:56 2019 -0700","stats":{"files_changed":3,"insertions":39,"deletions":42,"files":["changelog.txt","jc/parsers/ls.py","setup.py"]},"message":"ls fixes","epoch":1571449256,"epoch_utc":null},{"commit":"4d93b38fe47329e3175025878e87f7c963061f98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 14:18:34 2019 -0700","stats":{"files_changed":2,"insertions":90,"deletions":1,"files":["README.md","jc/parsers/route.py"]},"message":"add route documentation","epoch":1571433514,"epoch_utc":null},{"commit":"77b74c550795f96b808e48a9b0bfd1a8af9866f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:59:30 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"add route parser","epoch":1571432370,"epoch_utc":null},{"commit":"51a1d3e6f48cf7084267be4092f0dd3f778dcef3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:51:36 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump","epoch":1571431896,"epoch_utc":null},{"commit":"2eba30422b44f648c7356a44cbff7416c6648f19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:43:49 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"]},"message":"skip first line","epoch":1571431429,"epoch_utc":null},{"commit":"43ed09ce5ba53261dfd7ef50a2e187cb524c416c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:38:11 2019 -0700","stats":{"files_changed":3,"insertions":25,"deletions":1,"files":["jc/jc.py","jc/parsers/route.py","setup.py"]},"message":"add route parser","epoch":1571431091,"epoch_utc":null},{"commit":"367ab54f94bf7f456377ec9d20f8daf99dbdc1ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:34:28 2019 -0700","stats":{"files_changed":3,"insertions":99,"deletions":2,"files":["README.md","changelog.txt","jc/parsers/ps.py"]},"message":"formatting","epoch":1571430868,"epoch_utc":null},{"commit":"4f552e370e656cc1882a7dae231475a016f8aa14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:26:24 2019 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/ps.py"]},"message":"acknowledgment","epoch":1571430384,"epoch_utc":null},{"commit":"7571139f7980f6e74c29d46971881e82ab0f04bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:20:38 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"bump version","epoch":1571430038,"epoch_utc":null},{"commit":"8ec1bec31711d2ef487da3e4a29a842d98d77626","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:19:39 2019 -0700","stats":{"files_changed":4,"insertions":29,"deletions":7,"files":["changelog.txt","jc/__init__.py","jc/jc.py","jc/parsers/ps.py"]},"message":"add ps parser","epoch":1571429979,"epoch_utc":null},{"commit":"c04895407f203aa0a3a080d5242faf8f6889ae41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 12:57:02 2019 -0700","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["changelog.txt","jc/parsers/netstat.py"]},"message":"ubuntu fixes","epoch":1571428622,"epoch_utc":null},{"commit":"cec73d61310591e4890605f61dc5c1bef5808ec4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 09:57:22 2019 -0700","stats":{"files_changed":4,"insertions":24,"deletions":16,"files":["jc/jc.py","jc/parsers/ifconfig.py","jc/parsers/ls.py","jc/parsers/netstat.py"]},"message":"linting","epoch":1571417842,"epoch_utc":null},{"commit":"756c2bc9acd60111281b76085a40778e51ca06cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 09:57:10 2019 -0700","stats":{"files_changed":1,"insertions":20,"deletions":3,"files":["README.md"]},"message":"add acknowledgments","epoch":1571417830,"epoch_utc":null},{"commit":"084048987c7afc6516f69e68d37d73b2402dc7f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 17:59:46 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"changelog update","epoch":1571360386,"epoch_utc":null},{"commit":"02d97394dd76a8782e6e7d3f8a85e1aed05e796b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 17:28:14 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update","epoch":1571358494,"epoch_utc":null},{"commit":"177f948f9740e3e33449b04b9136a346c9a2c265","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 16:11:55 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version update","epoch":1571353915,"epoch_utc":null},{"commit":"c2b013150ec1f1b1ab7d416f1aa8a62165a5bb95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 15:51:39 2019 -0700","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["changelog.txt"]},"message":"add changelog","epoch":1571352699,"epoch_utc":null},{"commit":"0bec67c29ce5d965271440da41a0c4b4c2a1f0fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 15:39:12 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/netstat.py"]},"message":"double quotes to single quotes","epoch":1571351952,"epoch_utc":null},{"commit":"8073d15fe11546a17cacd81409e255bb8aecd602","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 15:03:32 2019 -0700","stats":{"files_changed":1,"insertions":12,"deletions":4,"files":["README.md"]},"message":"readme update","epoch":1571349812,"epoch_utc":null},{"commit":"3b74afc39e58f801e75b7105e521c1469d30f991","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 15:00:42 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["pypi-upload.sh"]},"message":"upload script","epoch":1571349642,"epoch_utc":null},{"commit":"ed320cf0f4bb11cee1e69e9dc9176ba109df1b86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 13:04:34 2019 -0700","stats":{"files_changed":3,"insertions":22,"deletions":22,"files":["README.md","jc/parsers/netstat.py","setup.py"]},"message":"change netstat pid field to integer","epoch":1571342674,"epoch_utc":null},{"commit":"021b6924e24e1cf0f971246244b174cd3181c0a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 12:15:27 2019 -0700","stats":{"files_changed":2,"insertions":254,"deletions":5,"files":["README.md","jc/parsers/netstat.py"]},"message":"documentation updates","epoch":1571339727,"epoch_utc":null},{"commit":"5fb21b077662f1cb172741945ba5036e5a280638","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 12:09:05 2019 -0700","stats":{"files_changed":1,"insertions":0,"deletions":8,"files":["jc/parsers/netstat.py"]},"message":"remove debug print statements","epoch":1571339345,"epoch_utc":null},{"commit":"7b8540ae2a60f2400fe672a022ee00d1415a3500","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 12:07:01 2019 -0700","stats":{"files_changed":1,"insertions":19,"deletions":7,"files":["jc/parsers/netstat.py"]},"message":"netstat fixes","epoch":1571339221,"epoch_utc":null},{"commit":"a5e039d4c2e07d52a0797833685c562ab285b49b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 10:54:37 2019 -0700","stats":{"files_changed":1,"insertions":17,"deletions":7,"files":["jc/parsers/netstat.py"]},"message":"netstat debugging","epoch":1571334877,"epoch_utc":null},{"commit":"7071f60a302b7aefb8fb312699b0abec25548986","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 09:05:49 2019 -0700","stats":{"files_changed":1,"insertions":66,"deletions":18,"files":["jc/parsers/netstat.py"]},"message":"netstat mvp","epoch":1571328349,"epoch_utc":null},{"commit":"0de1dff0253eb46b7336103f62f888940406ccc0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 08:09:19 2019 -0700","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["jc/parsers/netstat.py"]},"message":"fix ands","epoch":1571324959,"epoch_utc":null},{"commit":"b3c52eb1ccf82e899dda62c332c0b217d80eb4c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 08:03:56 2019 -0700","stats":{"files_changed":2,"insertions":112,"deletions":40,"files":["jc/parsers/ifconfig.py","jc/parsers/netstat.py"]},"message":"add netstat parser","epoch":1571324636,"epoch_utc":null},{"commit":"366c5dbc010869bdb1d3b9d852e10510bd5c266f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 17:36:50 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/jc.py"]},"message":"fix help message","epoch":1571272610,"epoch_utc":null},{"commit":"a3ee02514b5fbd43a38ddf515a4aad49bb4e161a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 17:23:18 2019 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/jc.py"]},"message":"fix imports and module names","epoch":1571271798,"epoch_utc":null},{"commit":"46ad1269cb58dc6f064d17eb0b04da62d8fd5fce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 17:15:43 2019 -0700","stats":{"files_changed":2,"insertions":4,"deletions":3,"files":["jc/jc.py","setup.py"]},"message":"packaging fixes","epoch":1571271343,"epoch_utc":null},{"commit":"7234afe568818678585ac423649a0ccce0f45d68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 16:22:52 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"entrypoint fix","epoch":1571268172,"epoch_utc":null},{"commit":"caf480c63aacb518805d48fba0fd454959d11023","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 16:01:34 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"module fix","epoch":1571266894,"epoch_utc":null},{"commit":"62851b48d5e5cd673e630a28996e1c24cc45aa58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 15:54:20 2019 -0700","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/jc.py","setup.py"]},"message":"fix modules","epoch":1571266460,"epoch_utc":null},{"commit":"46d6da92f0e196e150ab9dd44b1ba290c950905b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 15:08:06 2019 -0700","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["jc/{jc => jc.py}","setup.py"]},"message":"fix entry_points","epoch":1571263686,"epoch_utc":null},{"commit":"e572b2edfa993c5049ef3caeda7a8e4797f0c751","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 15:03:34 2019 -0700","stats":{"files_changed":2,"insertions":37,"deletions":29,"files":["jc/jc","setup.py"]},"message":"use entry_points instead of scripts","epoch":1571263414,"epoch_utc":null},{"commit":"72c69e7de59029d623c9819dda6aa8cae91bc419","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 09:39:04 2019 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/jc"]},"message":"fix package paths","epoch":1571243944,"epoch_utc":null},{"commit":"4d1565071e5cf7c38e026e08db8f4d2e79969691","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 09:03:05 2019 -0700","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["jc/{jc.py => jc}","setup.py"]},"message":"rename jc.py to jc","epoch":1571241785,"epoch_utc":null},{"commit":"3652e51693d7ba829f4699fd80de20856941d82f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 08:27:24 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"fix requirements","epoch":1571239644,"epoch_utc":null},{"commit":"49ce9f13e817266659400a8c19f5b078a48589df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 15 18:03:51 2019 -0700","stats":{"files_changed":3,"insertions":17,"deletions":20,"files":["jc/jc.py","jc/parsers/__init__.py","setup.py"]},"message":"setup updates","epoch":1571187831,"epoch_utc":null},{"commit":"e83170b7ec7ed2123bfde69be263b6034c7afa53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 15 16:28:42 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["README.md"]},"message":"readme update","epoch":1571182122,"epoch_utc":null},{"commit":"ffb6eb754a87baad5fb0558e30a5bca1a9b9e0a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 15 16:10:24 2019 -0700","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/parsers/__init__.py","setup.py"]},"message":"setup fixes","epoch":1571181024,"epoch_utc":null},{"commit":"2597a18d95d01109d2250487b7550a501edaf77b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 15 15:32:23 2019 -0700","stats":{"files_changed":1,"insertions":82,"deletions":0,"files":["README.md"]},"message":"readme update","epoch":1571178743,"epoch_utc":null},{"commit":"3e576250b1bfe1c62c556f2fa0425103b0ede1f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 15 15:06:09 2019 -0700","stats":{"files_changed":11,"insertions":429,"deletions":0,"files":[".gitignore","LICENSE.md","README.md","build-package.sh","jc/__init__.py","jc/jc.py","jc/parsers/__init__.py","jc/parsers/ifconfig.py","jc/parsers/ls.py","jc/parsers/netstat.py","setup.py"]},"message":"First commit","epoch":1571177169,"epoch_utc":null}] +[{"commit":"096fffdb79807d34b99985b38df0a3df7f6a86c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 20 10:03:36 2022 -0400","stats":{"files_changed":2,"insertions":120,"deletions":36,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":78},{"name":"jc/parsers/git_log.py","lines_changed":78}]},"message":"use stat examples","epoch":1650474216,"epoch_utc":null},{"commit":"728d882ed007b3c8b785018874a0eb06e1143b66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 20 09:50:19 2022 -0400","stats":{"files_changed":2,"insertions":90,"deletions":12,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":51},{"name":"jc/parsers/git_log.py","lines_changed":51}]},"message":"add timestamp docs and examples","epoch":1650473419,"epoch_utc":null},{"commit":"b53e42aca623181aa9bc72194e6eeef1e9a3a237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 20 09:44:42 2022 -0400","stats":{"files_changed":5,"insertions":29,"deletions":6,"files":["docs/parsers/git_log.md","docs/utils.md","jc/parsers/git_log.py","jc/utils.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":8},{"name":"docs/utils.md","lines_changed":4},{"name":"jc/parsers/git_log.py","lines_changed":14},{"name":"jc/utils.py","lines_changed":7},{"name":"man/jc.1","lines_changed":2}]},"message":"add calculated timestamp","epoch":1650473082,"epoch_utc":null},{"commit":"477329ce5b8f5c2a8e4384ba3f59289fc18c957d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 20 08:26:26 2022 -0400","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add linefeed to version text","epoch":1650468386,"epoch_utc":null},{"commit":"283dc4efd55030188f17c7e1dfbc5315103494b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 17:44:15 2022 -0400","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["CHANGELOG","jc/cli.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/cli.py","lines_changed":7}]},"message":"add python interpreter version and path to -v and -a output","epoch":1650415455,"epoch_utc":null},{"commit":"d490bbcaa0291a691b95fa5b61807eebb0b088eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 15:26:31 2022 -0400","stats":{"files_changed":1,"insertions":26,"deletions":26,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":52}]},"message":"normalize add/update","epoch":1650407191,"epoch_utc":null},{"commit":"f49ddf8e5c5009702155fc62d83c63e3c08c594d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 15:18:04 2022 -0400","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":4},{"name":"jc/parsers/git_log.py","lines_changed":4}]},"message":"doc update","epoch":1650406684,"epoch_utc":null},{"commit":"e1e341652b51b823844e76ef7e68f9373a323435","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 15:10:40 2022 -0400","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"doc update","epoch":1650406240,"epoch_utc":null},{"commit":"ecda667549137bed5622cca69f2022e7a75ea833","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 15:10:35 2022 -0400","stats":{"files_changed":2,"insertions":12,"deletions":8,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":2},{"name":"jc/parsers/git_log.py","lines_changed":18}]},"message":"process integers","epoch":1650406235,"epoch_utc":null},{"commit":"a0d96a188a9f875b2d59625aa97d4f80bba290f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 14:45:20 2022 -0400","stats":{"files_changed":2,"insertions":5,"deletions":1,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"doc update","epoch":1650404720,"epoch_utc":null},{"commit":"6c0f0cddfe4dd2d5169f7c55416c6725912557f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 14:43:47 2022 -0400","stats":{"files_changed":2,"insertions":14,"deletions":1,"files":["jc/parsers/yaml.py","tests/test_yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":7},{"name":"tests/test_yaml.py","lines_changed":8}]},"message":"fix for datetime objects in yaml files","epoch":1650404627,"epoch_utc":null},{"commit":"c7173ecd89742c8cf8a7bc4a8021baac5c3cd483","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 14:34:53 2022 -0400","stats":{"files_changed":1,"insertions":8,"deletions":6,"files":["jc/parsers/git_log.py"],"file_stats":[{"name":"jc/parsers/git_log.py","lines_changed":14}]},"message":"fix mypy issues","epoch":1650404093,"epoch_utc":null},{"commit":"e98240c905394e3ebd6a45fa31b6d432c150afc4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 14:20:44 2022 -0400","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/git_log.py"],"file_stats":[{"name":"jc/parsers/git_log.py","lines_changed":8}]},"message":"extend instead of append list","epoch":1650403244,"epoch_utc":null},{"commit":"6cb7e25974b11afe57d7d0e8550b3b1a56b14c67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 13:17:24 2022 -0400","stats":{"files_changed":3,"insertions":93,"deletions":1,"files":["README.md","docs/parsers/git_log.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/git_log.md","lines_changed":86},{"name":"man/jc.1","lines_changed":7}]},"message":"add docs","epoch":1650399444,"epoch_utc":null},{"commit":"c37980c05c7fbd4f811ce5fcfcfddaf5f3ab5414","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 13:17:16 2022 -0400","stats":{"files_changed":1,"insertions":41,"deletions":7,"files":["jc/parsers/git_log.py"],"file_stats":[{"name":"jc/parsers/git_log.py","lines_changed":48}]},"message":"add stat support","epoch":1650399436,"epoch_utc":null},{"commit":"b5943bd39d776fc4c3b3dea03c0f3d4b6f4bb260","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 10:32:55 2022 -0400","stats":{"files_changed":1,"insertions":23,"deletions":10,"files":["jc/parsers/git_log.py"],"file_stats":[{"name":"jc/parsers/git_log.py","lines_changed":33}]},"message":"initial docstring","epoch":1650389575,"epoch_utc":null},{"commit":"49a3a7db3b2b0b292489a41691c9dcbce816cfed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 09:30:38 2022 -0400","stats":{"files_changed":2,"insertions":175,"deletions":0,"files":["jc/lib.py","jc/parsers/git_log.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/git_log.py","lines_changed":174}]},"message":"initial git-log parser","epoch":1650385838,"epoch_utc":null},{"commit":"0c55240e9da30ac4293cc324f1094de2abd3da91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 13 10:54:28 2022 -0700","stats":{"files_changed":3,"insertions":1,"deletions":0,"files":["CHANGELOG","tests/{ => templates}/_test_foo.py","tests/{ => templates}/_test_foo_s.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"tests/{ => templates}/_test_foo.py","lines_changed":0},{"name":"tests/{ => templates}/_test_foo_s.py","lines_changed":0}]},"message":"move test templates to fix test failures on some systems","epoch":1649872468,"epoch_utc":null},{"commit":"f91988aed5499d25acf7a7e87b2b0d0cd37b62af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 12 14:22:06 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/lib.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":2}]},"message":"iterator -> iterable","epoch":1649798526,"epoch_utc":null},{"commit":"3c3ad9fc6adf865b3814a1f03814d0bc17d1c6bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 12 14:20:58 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"iterator -> iterable in doc","epoch":1649798458,"epoch_utc":null},{"commit":"291ab79e22a59cb31814e7a5af9dbc9f2ec863e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 12 11:07:34 2022 -0700","stats":{"files_changed":3,"insertions":24,"deletions":24,"files":["README.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":24},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":22}]},"message":"fix arch linux command","epoch":1649786854,"epoch_utc":null},{"commit":"e6d5892c146762cd41a966adadb77db333d98ace","merge":"c0414e7 dcca7a5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 12 11:02:37 2022 -0700","message":"Merge pull request #226 from kellyjonbrazil/master\n\nsync to dev","epoch":1649786557,"epoch_utc":null},{"commit":"dcca7a57d558721a61fbba44f07b1d53116827e1","merge":"7138eef 4ee8a69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 12 11:00:51 2022 -0700","message":"Merge pull request #225 from adrianteri/patch-1\n\nUpdate README","epoch":1649786451,"epoch_utc":null},{"commit":"4ee8a69337b24e199983fe657643abcb0a56a8e6","author":"003","author_email":"adriateri@gmail.com","date":"Tue Apr 12 20:53:39 2022 +0300","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"Update README\n\nSpecify the Arch package is in the AUR and NOT in the standard Archlinux repositories.","epoch":1649822019,"epoch_utc":null},{"commit":"c0414e7db7f5d785b72ad616517f2ec63af151a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 17:18:20 2022 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":8}]},"message":"clean up background tasks","epoch":1649636300,"epoch_utc":null},{"commit":"a419175fe6dffe9c5fd20cfbd82ee552bc82a993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 17:14:34 2022 -0700","stats":{"files_changed":2,"insertions":34,"deletions":17,"files":["docgen.sh","updatedocs.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":30},{"name":"updatedocs.sh","lines_changed":21}]},"message":"enhance parallelization","epoch":1649636074,"epoch_utc":null},{"commit":"cd6dead034f3c72aebd22afeb2aea6591ae6d94d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 16:54:34 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"man page update","epoch":1649634874,"epoch_utc":null},{"commit":"45342ea9fea29947d8d90260c7665ffbca612cce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 16:54:22 2022 -0700","stats":{"files_changed":2,"insertions":16,"deletions":9,"files":["docgen.sh","updatedocs.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":16},{"name":"updatedocs.sh","lines_changed":9}]},"message":"parallelize doc gneration","epoch":1649634862,"epoch_utc":null},{"commit":"585bf0e159c7839869cf3e458938dcc5fa2ceb81","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 10:32:51 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"xrandr update","epoch":1649611971,"epoch_utc":null},{"commit":"3a860b9babe93d455f68ef21436edf7470d375af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 10:31:13 2022 -0700","stats":{"files_changed":2,"insertions":7,"deletions":5,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":4},{"name":"jc/parsers/xrandr.py","lines_changed":8}]},"message":"add rotation field","epoch":1649611873,"epoch_utc":null},{"commit":"269180df77f9ff953b07222e8ae790c7e7a8298e","merge":"e85f11c a1afed8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 10:19:50 2022 -0700","message":"Merge pull request #223 from anekos/fix/support-rotated-devices\n\nFix/support rotated devices","epoch":1649611190,"epoch_utc":null},{"commit":"a1afed8d95e33fbbc618c7b5778a9faeea2f628f","author":"anekos","author_email":"anekos@snca.net","date":"Sun Apr 10 18:19:29 2022 +0900","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["docs/parsers/xrandr.md"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":4}]},"message":"doc update","epoch":1649639969,"epoch_utc":null},{"commit":"e39f150a216e4e184444dfc88a63e0f303e51631","author":"anekos","author_email":"anekos@snca.net","date":"Sun Apr 10 18:12:28 2022 +0900","stats":{"files_changed":3,"insertions":9,"deletions":4,"files":["jc/parsers/xrandr.py","tests/fixtures/generic/xrandr_simple.json","tests/test_xrandr.py"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":4},{"name":"tests/fixtures/generic/xrandr_simple.json","lines_changed":1},{"name":"tests/test_xrandr.py","lines_changed":8}]},"message":"Support rotated devices","epoch":1649639548,"epoch_utc":null},{"commit":"e85f11c6fcad5461bae612dd5a945c20d300e59a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 4 12:00:41 2022 -0700","stats":{"files_changed":4,"insertions":12,"deletions":12,"files":["docs/parsers/ini.md","docs/parsers/kv.md","jc/parsers/ini.py","jc/parsers/kv.py"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":6},{"name":"docs/parsers/kv.md","lines_changed":6},{"name":"jc/parsers/ini.py","lines_changed":6},{"name":"jc/parsers/kv.py","lines_changed":6}]},"message":"doc formatting","epoch":1649098841,"epoch_utc":null},{"commit":"49a9d7b07e89696f2e022655d7256b7d6ad4bf7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 4 11:42:16 2022 -0700","stats":{"files_changed":3,"insertions":12,"deletions":8,"files":["docs/parsers/ini.md","docs/parsers/kv.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":8},{"name":"docs/parsers/kv.md","lines_changed":10},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1649097736,"epoch_utc":null},{"commit":"a2ef9c429e4bb9f70d033511dce77ccdb9013971","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 4 11:38:52 2022 -0700","stats":{"files_changed":4,"insertions":38,"deletions":8,"files":["jc/parsers/ini.py","jc/parsers/kv.py","tests/test_ini.py","tests/test_kv.py"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":12},{"name":"jc/parsers/kv.py","lines_changed":10},{"name":"tests/test_ini.py","lines_changed":12},{"name":"tests/test_kv.py","lines_changed":12}]},"message":"allow duplicate keys","epoch":1649097532,"epoch_utc":null},{"commit":"d5e9074f1c8facb3f15b8c41a008917178626978","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 4 11:38:04 2022 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/lib.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/lib.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1649097484,"epoch_utc":null},{"commit":"774699f085d97f22ae2dab0cf64d72aa1e1709f7","merge":"789f073 7138eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 4 18:21:15 2022 +0000","message":"Merge pull request #220 from kellyjonbrazil/master\n\nsync to dev","epoch":1649121675,"epoch_utc":1649096475},{"commit":"7138eef3d137bc64286d4af453d8d4e7b3f4408d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 30 14:39:56 2022 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"docs/parsers/asciitable_m.md","lines_changed":6},{"name":"jc/parsers/asciitable_m.py","lines_changed":6}]},"message":"fix newline chars in doc","epoch":1648676396,"epoch_utc":null},{"commit":"fad5e544aa9e57d31473190e196f59c616901207","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 29 09:58:44 2022 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":2},{"name":"jc/parsers/asciitable.py","lines_changed":2}]},"message":"formatting","epoch":1648573124,"epoch_utc":null},{"commit":"64757e2cf55448bccfbbd60d31930ab3f59af21b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 29 09:35:54 2022 -0700","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":12},{"name":"jc/parsers/asciitable.py","lines_changed":12}]},"message":"doc formatting","epoch":1648571754,"epoch_utc":null},{"commit":"e05be3f08beae1b600fc55a3a7b4e28163e15bc0","merge":"ac61e9a 789f073","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 25 22:36:05 2022 +0000","message":"Merge pull request #213 from kellyjonbrazil/dev\n\nDev v1.18.6","epoch":1648272965,"epoch_utc":1648247765},{"commit":"789f0735dfd63e728b8716d97cf0c6045ede5011","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 25 15:32:37 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"doc update","epoch":1648247557,"epoch_utc":null},{"commit":"34bc7753174be28d6c1a00dadc662bc374e554c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 25 15:32:11 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1648247531,"epoch_utc":null},{"commit":"38de059a1bc285c8681086d9fb43d0d23ac01d49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 16:58:45 2022 -0700","stats":{"files_changed":3,"insertions":9,"deletions":3,"files":["docs/parsers/asciitable.md","docs/parsers/universal.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":6},{"name":"docs/parsers/universal.md","lines_changed":4},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1648166325,"epoch_utc":null},{"commit":"304ae6268f4dff6e6f901628e7ff89db1d6e0767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 16:58:39 2022 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":12}]},"message":"minor optimization by changing the expression order","epoch":1648166319,"epoch_utc":null},{"commit":"978caf45221188a29c0e67147804f20f317c066d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 12:37:46 2022 -0700","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["jc/parsers/asciitable.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":26}]},"message":"minor optimization by reordering expressions","epoch":1648150666,"epoch_utc":null},{"commit":"17df5bfcfc25f226a2976aa7ab8a80e4aaa915c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 11:58:13 2022 -0700","stats":{"files_changed":2,"insertions":12,"deletions":2,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":10},{"name":"jc/parsers/asciitable_m.py","lines_changed":4}]},"message":"cache _is_separator function","epoch":1648148293,"epoch_utc":null},{"commit":"5e6a5068cff71b3b30525d0a12868bdf6551456c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 11:57:01 2022 -0700","stats":{"files_changed":1,"insertions":6,"deletions":2,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":8}]},"message":"allow iterables for simple table parser","epoch":1648148221,"epoch_utc":null},{"commit":"619de68a61be0117e635032347dde417d77c748c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 09:39:53 2022 -0700","stats":{"files_changed":2,"insertions":8,"deletions":9,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":7},{"name":"jc/parsers/asciitable_m.py","lines_changed":10}]},"message":"formatting","epoch":1648139993,"epoch_utc":null},{"commit":"6748c3cc91f90bddea3d07b8b30a049ee55eaf35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 09:31:12 2022 -0700","stats":{"files_changed":2,"insertions":65,"deletions":61,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":52},{"name":"jc/parsers/asciitable_m.py","lines_changed":74}]},"message":"remove lines from corner detection and add rounded corners","epoch":1648139472,"epoch_utc":null},{"commit":"0a462978b731770d1290187a502706c2322f5f91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 23 15:08:33 2022 -0700","stats":{"files_changed":4,"insertions":101,"deletions":3,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py","tests/test_asciitable.py","tests/test_asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":25},{"name":"jc/parsers/asciitable_m.py","lines_changed":8},{"name":"tests/test_asciitable.py","lines_changed":43},{"name":"tests/test_asciitable_m.py","lines_changed":28}]},"message":"fix for special characters in headers","epoch":1648073313,"epoch_utc":null},{"commit":"e66a82ff49b40a674f9ef373a12d59fc71bfa730","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 23 10:50:34 2022 -0700","stats":{"files_changed":3,"insertions":6,"deletions":5,"files":["CHANGELOG","jc/parsers/asciitable_m.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":5},{"name":"jc/parsers/asciitable_m.py","lines_changed":4},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1648057834,"epoch_utc":null},{"commit":"f3aa797d96c8e2cef2124dbb2f49d1fadaee3fa2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 17:47:19 2022 -0700","stats":{"files_changed":2,"insertions":69,"deletions":9,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":43},{"name":"jc/parsers/asciitable_m.py","lines_changed":35}]},"message":"add more pretty table separators","epoch":1647996439,"epoch_utc":null},{"commit":"e5b478218c4ba3781afd085056dba888c3f6ae02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 16:05:07 2022 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_xrandr.py"],"file_stats":[{"name":"tests/test_xrandr.py","lines_changed":6}]},"message":"add quiet=True to parse tests","epoch":1647990307,"epoch_utc":null},{"commit":"35e0e9c32afbc5450c661bcb3a23904d135358ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 15:57:43 2022 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":1}]},"message":"remove print statement","epoch":1647989863,"epoch_utc":null},{"commit":"17c3c2f029a0a47eb02d681567619d471b99949c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 15:55:59 2022 -0700","stats":{"files_changed":4,"insertions":58,"deletions":2,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py","tests/test_asciitable.py","tests/test_asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":3},{"name":"jc/parsers/asciitable_m.py","lines_changed":2},{"name":"tests/test_asciitable.py","lines_changed":31},{"name":"tests/test_asciitable_m.py","lines_changed":24}]},"message":"add bold bar seperator and ANSI code tests","epoch":1647989759,"epoch_utc":null},{"commit":"cf83e6398b3314b233581eb313510872177de20a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 15:13:07 2022 -0700","stats":{"files_changed":2,"insertions":7,"deletions":0,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":4},{"name":"jc/parsers/asciitable_m.py","lines_changed":3}]},"message":"add fancy separators","epoch":1647987187,"epoch_utc":null},{"commit":"94e061b881e2ed28d2b462ad038e5ba77182b6c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 14:53:34 2022 -0700","stats":{"files_changed":1,"insertions":275,"deletions":0,"files":["tests/test_asciitable.py"],"file_stats":[{"name":"tests/test_asciitable.py","lines_changed":275}]},"message":"add asciitable parser tests","epoch":1647986014,"epoch_utc":null},{"commit":"720480e39ce3cc2079d7f4f5bcff2725081fec34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 13:21:10 2022 -0700","stats":{"files_changed":4,"insertions":10,"deletions":2,"files":["docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":3},{"name":"docs/parsers/asciitable_m.md","lines_changed":3},{"name":"jc/parsers/asciitable.py","lines_changed":3},{"name":"jc/parsers/asciitable_m.py","lines_changed":3}]},"message":"doc update","epoch":1647980470,"epoch_utc":null},{"commit":"82a63fe15922456853aa4597aa10a5a02b20bdef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 12:42:07 2022 -0700","stats":{"files_changed":2,"insertions":6,"deletions":8,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":7},{"name":"jc/parsers/asciitable.py","lines_changed":7}]},"message":"doc update","epoch":1647978127,"epoch_utc":null},{"commit":"9c1ec9940e68ce9848da20e81b8c0b7e35a215df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 12:35:56 2022 -0700","stats":{"files_changed":4,"insertions":82,"deletions":14,"files":["docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":44},{"name":"docs/parsers/asciitable_m.md","lines_changed":4},{"name":"jc/parsers/asciitable.py","lines_changed":44},{"name":"jc/parsers/asciitable_m.py","lines_changed":4}]},"message":"doc update","epoch":1647977756,"epoch_utc":null},{"commit":"f23f19da453a0f7bcf70e417a10f87e27571aa43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 12:25:59 2022 -0700","stats":{"files_changed":5,"insertions":122,"deletions":9,"files":["README.md","docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/asciitable.md","lines_changed":97},{"name":"docs/parsers/asciitable_m.md","lines_changed":4},{"name":"jc/parsers/asciitable_m.py","lines_changed":24},{"name":"man/jc.1","lines_changed":5}]},"message":"doc update","epoch":1647977159,"epoch_utc":null},{"commit":"aea2e1b0a9c6bb2a02a6e73889bb04e8f4f22588","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 12:25:51 2022 -0700","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["tests/test_asciitable_m.py"],"file_stats":[{"name":"tests/test_asciitable_m.py","lines_changed":48}]},"message":"fix tests so blank strings are now None","epoch":1647977151,"epoch_utc":null},{"commit":"7d95d679bf4093ea77f30a1be55384b6dbf08341","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 12:25:24 2022 -0700","stats":{"files_changed":2,"insertions":212,"deletions":1,"files":["jc/lib.py","jc/parsers/asciitable.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2},{"name":"jc/parsers/asciitable.py","lines_changed":211}]},"message":"add asciitable parser","epoch":1647977124,"epoch_utc":null},{"commit":"b3b140066b74ee31dd1c460502caf2f26df321b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 07:21:19 2022 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"docs/parsers/asciitable_m.md","lines_changed":4},{"name":"jc/parsers/asciitable_m.py","lines_changed":4}]},"message":"doc update","epoch":1647958879,"epoch_utc":null},{"commit":"b204c423c1b947c17cb251a5dd3c444cd71dd2c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 07:05:14 2022 -0700","stats":{"files_changed":4,"insertions":193,"deletions":15,"files":["README.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/asciitable_m.md","lines_changed":122},{"name":"jc/parsers/asciitable_m.py","lines_changed":78},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update","epoch":1647957914,"epoch_utc":null},{"commit":"d451c309bb0d8889dc09a698212bf01c2154a582","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 06:30:07 2022 -0700","stats":{"files_changed":1,"insertions":11,"deletions":8,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":19}]},"message":"change multiple or statements to any()","epoch":1647955807,"epoch_utc":null},{"commit":"01d53da68ed04b736934851137c59216ad02d8c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 19:11:27 2022 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":1}]},"message":"remove debug print","epoch":1647915087,"epoch_utc":null},{"commit":"53dd05e52c329a15c30a756a36a165ac59ef8a14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 19:10:02 2022 -0700","stats":{"files_changed":2,"insertions":29,"deletions":1,"files":["jc/parsers/asciitable_m.py","tests/test_asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":3},{"name":"tests/test_asciitable_m.py","lines_changed":27}]},"message":"fix rstrip and add tests","epoch":1647915002,"epoch_utc":null},{"commit":"ab564f5be8282f1c7ee2d602bcef398fdfd4570f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 17:57:14 2022 -0700","stats":{"files_changed":2,"insertions":237,"deletions":1,"files":["jc/parsers/asciitable_m.py","tests/test_asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":16},{"name":"tests/test_asciitable_m.py","lines_changed":222}]},"message":"add tests","epoch":1647910634,"epoch_utc":null},{"commit":"00c39450f9878527b60545ad61c04cfb98f418dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 13:36:54 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":2}]},"message":"enhance type annotation","epoch":1647895014,"epoch_utc":null},{"commit":"f611d08b50219f4e573c1d1f0beae27583e76432","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 13:33:35 2022 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":5}]},"message":"formatting","epoch":1647894815,"epoch_utc":null},{"commit":"90e79b7df3a4d5b37835fdf1c2debc1bad0a40b9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 13:27:44 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":2}]},"message":"formatting","epoch":1647894464,"epoch_utc":null},{"commit":"4eb2d725d5fe6f2cc7935c7dc891912cf7b8e940","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 13:09:50 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":2}]},"message":"formatting","epoch":1647893390,"epoch_utc":null},{"commit":"51ae5ebcac7263ef2571c11975b275eff352bbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 13:06:34 2022 -0700","stats":{"files_changed":1,"insertions":148,"deletions":175,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":323}]},"message":"new streamlined parser","epoch":1647893194,"epoch_utc":null},{"commit":"9ecbdb09162da4d563799aa93d422db85b2c324b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 20 10:16:29 2022 -0700","stats":{"files_changed":8,"insertions":35,"deletions":30,"files":["docs/parsers/mpstat_s.md","docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","docs/parsers/universal.md","jc/parsers/foo_s.py","jc/parsers/mpstat_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"docs/parsers/mpstat_s.md","lines_changed":10},{"name":"docs/parsers/pidstat_s.md","lines_changed":10},{"name":"docs/parsers/rsync_s.md","lines_changed":10},{"name":"docs/parsers/universal.md","lines_changed":19},{"name":"jc/parsers/foo_s.py","lines_changed":4},{"name":"jc/parsers/mpstat_s.py","lines_changed":4},{"name":"jc/parsers/pidstat_s.py","lines_changed":4},{"name":"jc/parsers/rsync_s.py","lines_changed":4}]},"message":"use generator instead of iterable in function return annotation","epoch":1647796589,"epoch_utc":null},{"commit":"b3a2886fd0af0cd06890f37f1edfc6890bb83e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 20 10:12:29 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["docs/lib.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":3}]},"message":"formatting","epoch":1647796349,"epoch_utc":null},{"commit":"ceacec0f462bd7c2d9e92ddb9029ccd71aef481c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 18 16:57:47 2022 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":1}]},"message":"remove errant os sep import","epoch":1647647867,"epoch_utc":null},{"commit":"ff0f794b01395ed9b65fac75a6b07f0772d45a2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 18 16:53:23 2022 -0700","stats":{"files_changed":1,"insertions":32,"deletions":10,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":42}]},"message":"working","epoch":1647647603,"epoch_utc":null},{"commit":"70fafbf3f80f35c5db2c306978b2a488adad40bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 18 14:19:00 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"remove asciitable so tests pass for now","epoch":1647638340,"epoch_utc":null},{"commit":"5a248a8fc58952a5eab3d4aac025d7422ba82d08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 18 13:05:57 2022 -0700","stats":{"files_changed":1,"insertions":344,"deletions":0,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":344}]},"message":"add multiline asciitable parser","epoch":1647633957,"epoch_utc":null},{"commit":"4a3a4e10df8a552a4db3510640695f02b166dc40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 18 13:03:43 2022 -0700","stats":{"files_changed":1,"insertions":3,"deletions":4,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":7}]},"message":"add asciitable and asciitable-m parsers","epoch":1647633823,"epoch_utc":null},{"commit":"c27bd5ff39f21c6377e661d4d7de1200d2fdd72f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 17 16:24:18 2022 -0700","stats":{"files_changed":1,"insertions":23,"deletions":16,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":39}]},"message":"pad lines in sparse_table_parse and use str.isspace()","epoch":1647559458,"epoch_utc":null},{"commit":"f804c9627fb71341429ca80aec2887e23e0277db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 15 16:04:58 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":1}]},"message":"copy input list so we don't mutate the caller's data","epoch":1647385498,"epoch_utc":null},{"commit":"3ab25d02f9dc248706aa1105e1766b2a84bc55a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 12:30:09 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"use _parser_is_streaming from lib","epoch":1647286209,"epoch_utc":null},{"commit":"9e80fd2b97b9bfe38fdaa6acdf2e8ed26d34b49d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 12:17:18 2022 -0700","stats":{"files_changed":2,"insertions":15,"deletions":11,"files":["jc/cli.py","jc/lib.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":21},{"name":"jc/lib.py","lines_changed":5}]},"message":"fallback if info and doc items don't exist","epoch":1647285438,"epoch_utc":null},{"commit":"ff9527a098a94c996641fb3fe2f905c8ae5e3063","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 11:35:57 2022 -0700","stats":{"files_changed":1,"insertions":9,"deletions":13,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":22}]},"message":"import cleanup and use all_parser_info in parsers_text","epoch":1647282957,"epoch_utc":null},{"commit":"7dac2f8dc3baf619105e3c6ca4d3e45300b86287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 10:50:10 2022 -0700","stats":{"files_changed":3,"insertions":23,"deletions":9,"files":["docs/lib.md","docs/readme.md","man/jc.1"],"file_stats":[{"name":"docs/lib.md","lines_changed":23},{"name":"docs/readme.md","lines_changed":7},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1647280210,"epoch_utc":null},{"commit":"32e4d55e86c3e7d94488ec69f13a4f6400c4cef3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 10:46:54 2022 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":10}]},"message":"use parser_info for help_doc","epoch":1647280014,"epoch_utc":null},{"commit":"f9a9062147256d0949457cc7fde838f87202524d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 10:46:23 2022 -0700","stats":{"files_changed":3,"insertions":27,"deletions":10,"files":["CHANGELOG","jc/__init__.py","jc/lib.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/__init__.py","lines_changed":7},{"name":"jc/lib.py","lines_changed":29}]},"message":"add documentation argument to parser_info and all_parser_info","epoch":1647279983,"epoch_utc":null},{"commit":"89e5919796f7da585285901dca461aae21336415","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 09:56:50 2022 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/mpstat_s.md","jc/parsers/mpstat_s.py"],"file_stats":[{"name":"docs/parsers/mpstat_s.md","lines_changed":2},{"name":"jc/parsers/mpstat_s.py","lines_changed":2}]},"message":"add -A to second example","epoch":1647277010,"epoch_utc":null},{"commit":"e5f5b2591d8ac3abeb9571688c7fb8de34d647f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 09:45:17 2022 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"changelog update","epoch":1647276317,"epoch_utc":null},{"commit":"77c667eec045daff5cbd062fe9d6e83f237727e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 09:43:18 2022 -0700","stats":{"files_changed":9,"insertions":67,"deletions":6,"files":["docs/parsers/mpstat.md","docs/parsers/mpstat_s.md","jc/parsers/mpstat.py","jc/parsers/mpstat_s.py","tests/fixtures/ubuntu-18.04/mpstat-A-streaming.json","tests/fixtures/ubuntu-18.04/mpstat-A.json","tests/fixtures/ubuntu-18.04/mpstat-A.out","tests/test_mpstat.py","tests/test_mpstat_s.py"],"file_stats":[{"name":"docs/parsers/mpstat.md","lines_changed":2},{"name":"docs/parsers/mpstat_s.md","lines_changed":2},{"name":"jc/parsers/mpstat.py","lines_changed":12},{"name":"jc/parsers/mpstat_s.py","lines_changed":12},{"name":"tests/fixtures/ubuntu-18.04/mpstat-A-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/mpstat-A.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/mpstat-A.out","lines_changed":19},{"name":"tests/test_mpstat.py","lines_changed":12},{"name":"tests/test_mpstat_s.py","lines_changed":12}]},"message":"ubuntu fixes","epoch":1647276198,"epoch_utc":null},{"commit":"b257ce8c2fe6825fe435b4d04b4184091030db10","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 13 12:25:50 2022 -0700","stats":{"files_changed":4,"insertions":65,"deletions":0,"files":[".../centos-7.7/mpstat-A-2-5-streaming.json","tests/fixtures/centos-7.7/mpstat-A-streaming.json","tests/fixtures/centos-7.7/mpstat-streaming.json","tests/test_mpstat_s.py"],"file_stats":[{"name":".../centos-7.7/mpstat-A-2-5-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat-A-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat-streaming.json","lines_changed":1},{"name":"tests/test_mpstat_s.py","lines_changed":62}]},"message":"add mpstat_s tests","epoch":1647199550,"epoch_utc":null},{"commit":"c693c868cacbcd81f44fd383719723dd7a137c87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 15:59:38 2022 -0800","stats":{"files_changed":7,"insertions":352,"deletions":0,"files":["README.md","docs/parsers/mpstat.md","docs/parsers/mpstat_s.md","jc/lib.py","jc/parsers/mpstat.py","jc/parsers/mpstat_s.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/mpstat.md","lines_changed":2},{"name":"docs/parsers/mpstat_s.md","lines_changed":130},{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/mpstat.py","lines_changed":2},{"name":"jc/parsers/mpstat_s.py","lines_changed":211},{"name":"man/jc.1","lines_changed":5}]},"message":"add mpstat streaming parser","epoch":1647043178,"epoch_utc":null},{"commit":"6f98b27a05d6e1f7571a97316b193f096521b959","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 15:33:31 2022 -0800","stats":{"files_changed":7,"insertions":168,"deletions":0,"files":["tests/fixtures/centos-7.7/mpstat-A-2-5.json","tests/fixtures/centos-7.7/mpstat-A-2-5.out","tests/fixtures/centos-7.7/mpstat-A.json","tests/fixtures/centos-7.7/mpstat-A.out","tests/fixtures/centos-7.7/mpstat.json","tests/fixtures/centos-7.7/mpstat.out","tests/test_mpstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/mpstat-A-2-5.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat-A-2-5.out","lines_changed":86},{"name":"tests/fixtures/centos-7.7/mpstat-A.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat-A.out","lines_changed":15},{"name":"tests/fixtures/centos-7.7/mpstat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat.out","lines_changed":5},{"name":"tests/test_mpstat.py","lines_changed":59}]},"message":"add mpstat tests","epoch":1647041611,"epoch_utc":null},{"commit":"d7efd25d88a8f489564ce48223845a16e4ab1cc7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 14:54:06 2022 -0800","stats":{"files_changed":4,"insertions":207,"deletions":1,"files":["EXAMPLES.md","README.md","docs/parsers/mpstat.md","man/jc.1"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":64},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/mpstat.md","lines_changed":136},{"name":"man/jc.1","lines_changed":7}]},"message":"add mpstat to docs","epoch":1647039246,"epoch_utc":null},{"commit":"2cddb1f0bb497be0be071cdcb56bf49d2dafc920","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 14:00:19 2022 -0800","stats":{"files_changed":1,"insertions":94,"deletions":15,"files":["jc/parsers/mpstat.py"],"file_stats":[{"name":"jc/parsers/mpstat.py","lines_changed":109}]},"message":"working mpstat","epoch":1647036019,"epoch_utc":null},{"commit":"ae1c331595dd857d8ae7f8cf93daee1b26be2c3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 13:15:39 2022 -0800","stats":{"files_changed":1,"insertions":30,"deletions":5,"files":["jc/parsers/mpstat.py"],"file_stats":[{"name":"jc/parsers/mpstat.py","lines_changed":35}]},"message":"initial working version","epoch":1647033339,"epoch_utc":null},{"commit":"bc97052ed4ee3bf3f25127968139f2e89a659fe3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 12:37:17 2022 -0800","stats":{"files_changed":3,"insertions":109,"deletions":0,"files":["CHANGELOG","jc/lib.py","jc/parsers/mpstat.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/mpstat.py","lines_changed":107}]},"message":"initial add mpstat parser","epoch":1647031037,"epoch_utc":null},{"commit":"6c3e0e2aa0e8cc375d9f7473930b18957d33f1aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 12:37:01 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"formatting","epoch":1647031021,"epoch_utc":null},{"commit":"dd052e01469e9e3328f7326d3591365a8e7322eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 10:25:24 2022 -0800","stats":{"files_changed":2,"insertions":26,"deletions":24,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":25},{"name":"jc/parsers/universal.py","lines_changed":25}]},"message":"add underscores to column examples","epoch":1647023124,"epoch_utc":null},{"commit":"54e8f58145f6c4332fbd375d112259ea7abb2d72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 16:50:55 2022 -0800","stats":{"files_changed":2,"insertions":28,"deletions":2,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":15},{"name":"jc/parsers/universal.py","lines_changed":15}]},"message":"add table result examples","epoch":1646959855,"epoch_utc":null},{"commit":"def7aa5764e69cd0cf2c5b70aa62c62023f76c9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 15:36:11 2022 -0800","stats":{"files_changed":2,"insertions":16,"deletions":16,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":16},{"name":"jc/parsers/universal.py","lines_changed":16}]},"message":"formatting","epoch":1646955371,"epoch_utc":null},{"commit":"6986c74f6dceca907ea2e469a332deeb093a122c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 15:18:27 2022 -0800","stats":{"files_changed":169,"insertions":34,"deletions":837,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/pidstat.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/nmcli.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/pidstat.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/xrandr.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":5},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iostat.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jar_manifest.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/nmcli.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/pidstat.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/rsync.md","lines_changed":5},{"name":"docs/parsers/sfdisk.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/systeminfo.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"docs/parsers/ufw.md","lines_changed":5},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/universal.md","lines_changed":18},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/vmstat.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/xrandr.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5},{"name":"docs/parsers/zipinfo.md","lines_changed":5},{"name":"jc/parsers/acpi.py","lines_changed":5},{"name":"jc/parsers/airport.py","lines_changed":5},{"name":"jc/parsers/airport_s.py","lines_changed":5},{"name":"jc/parsers/arp.py","lines_changed":5},{"name":"jc/parsers/blkid.py","lines_changed":5},{"name":"jc/parsers/cksum.py","lines_changed":5},{"name":"jc/parsers/crontab.py","lines_changed":5},{"name":"jc/parsers/crontab_u.py","lines_changed":5},{"name":"jc/parsers/csv.py","lines_changed":5},{"name":"jc/parsers/date.py","lines_changed":5},{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":5},{"name":"jc/parsers/dir.py","lines_changed":5},{"name":"jc/parsers/dmidecode.py","lines_changed":5},{"name":"jc/parsers/dpkg_l.py","lines_changed":5},{"name":"jc/parsers/du.py","lines_changed":5},{"name":"jc/parsers/env.py","lines_changed":5},{"name":"jc/parsers/file.py","lines_changed":5},{"name":"jc/parsers/finger.py","lines_changed":5},{"name":"jc/parsers/foo.py","lines_changed":5},{"name":"jc/parsers/free.py","lines_changed":5},{"name":"jc/parsers/fstab.py","lines_changed":5},{"name":"jc/parsers/group.py","lines_changed":5},{"name":"jc/parsers/gshadow.py","lines_changed":5},{"name":"jc/parsers/hash.py","lines_changed":5},{"name":"jc/parsers/hashsum.py","lines_changed":5},{"name":"jc/parsers/hciconfig.py","lines_changed":5},{"name":"jc/parsers/history.py","lines_changed":5},{"name":"jc/parsers/hosts.py","lines_changed":5},{"name":"jc/parsers/id.py","lines_changed":5},{"name":"jc/parsers/ifconfig.py","lines_changed":5},{"name":"jc/parsers/ini.py","lines_changed":5},{"name":"jc/parsers/iostat.py","lines_changed":5},{"name":"jc/parsers/iptables.py","lines_changed":5},{"name":"jc/parsers/iw_scan.py","lines_changed":5},{"name":"jc/parsers/jar_manifest.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":5},{"name":"jc/parsers/kv.py","lines_changed":5},{"name":"jc/parsers/last.py","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":5},{"name":"jc/parsers/lsblk.py","lines_changed":5},{"name":"jc/parsers/lsmod.py","lines_changed":5},{"name":"jc/parsers/lsof.py","lines_changed":5},{"name":"jc/parsers/lsusb.py","lines_changed":5},{"name":"jc/parsers/mount.py","lines_changed":5},{"name":"jc/parsers/netstat.py","lines_changed":5},{"name":"jc/parsers/nmcli.py","lines_changed":5},{"name":"jc/parsers/ntpq.py","lines_changed":5},{"name":"jc/parsers/passwd.py","lines_changed":5},{"name":"jc/parsers/pidstat.py","lines_changed":5},{"name":"jc/parsers/ping.py","lines_changed":5},{"name":"jc/parsers/pip_list.py","lines_changed":5},{"name":"jc/parsers/pip_show.py","lines_changed":5},{"name":"jc/parsers/ps.py","lines_changed":5},{"name":"jc/parsers/route.py","lines_changed":5},{"name":"jc/parsers/rpm_qi.py","lines_changed":5},{"name":"jc/parsers/rsync.py","lines_changed":5},{"name":"jc/parsers/sfdisk.py","lines_changed":5},{"name":"jc/parsers/shadow.py","lines_changed":5},{"name":"jc/parsers/ss.py","lines_changed":5},{"name":"jc/parsers/stat.py","lines_changed":5},{"name":"jc/parsers/sysctl.py","lines_changed":5},{"name":"jc/parsers/systemctl.py","lines_changed":5},{"name":"jc/parsers/systemctl_lj.py","lines_changed":5},{"name":"jc/parsers/systemctl_ls.py","lines_changed":5},{"name":"jc/parsers/systemctl_luf.py","lines_changed":5},{"name":"jc/parsers/systeminfo.py","lines_changed":5},{"name":"jc/parsers/time.py","lines_changed":5},{"name":"jc/parsers/timedatectl.py","lines_changed":5},{"name":"jc/parsers/tracepath.py","lines_changed":5},{"name":"jc/parsers/traceroute.py","lines_changed":5},{"name":"jc/parsers/ufw.py","lines_changed":5},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":5},{"name":"jc/parsers/uname.py","lines_changed":5},{"name":"jc/parsers/universal.py","lines_changed":18},{"name":"jc/parsers/upower.py","lines_changed":5},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/vmstat.py","lines_changed":5},{"name":"jc/parsers/w.py","lines_changed":5},{"name":"jc/parsers/wc.py","lines_changed":5},{"name":"jc/parsers/who.py","lines_changed":5},{"name":"jc/parsers/xml.py","lines_changed":5},{"name":"jc/parsers/xrandr.py","lines_changed":5},{"name":"jc/parsers/yaml.py","lines_changed":5},{"name":"jc/parsers/zipinfo.py","lines_changed":5}]},"message":"remove direct parser module example from doc","epoch":1646954307,"epoch_utc":null},{"commit":"b784db404d0569a4c630eb124b37b0b1d0846453","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 13:32:26 2022 -0800","stats":{"files_changed":17,"insertions":87,"deletions":166,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/pidstat_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/pidstat_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":13},{"name":"docs/parsers/iostat_s.md","lines_changed":20},{"name":"docs/parsers/ls_s.md","lines_changed":16},{"name":"docs/parsers/pidstat_s.md","lines_changed":9},{"name":"docs/parsers/ping_s.md","lines_changed":13},{"name":"docs/parsers/rsync_s.md","lines_changed":13},{"name":"docs/parsers/stat_s.md","lines_changed":13},{"name":"docs/parsers/vmstat_s.md","lines_changed":23},{"name":"jc/parsers/csv_s.py","lines_changed":13},{"name":"jc/parsers/foo_s.py","lines_changed":13},{"name":"jc/parsers/iostat_s.py","lines_changed":20},{"name":"jc/parsers/ls_s.py","lines_changed":16},{"name":"jc/parsers/pidstat_s.py","lines_changed":9},{"name":"jc/parsers/ping_s.py","lines_changed":13},{"name":"jc/parsers/rsync_s.py","lines_changed":13},{"name":"jc/parsers/stat_s.py","lines_changed":13},{"name":"jc/parsers/vmstat_s.py","lines_changed":23}]},"message":"streaming doc formatting update","epoch":1646947946,"epoch_utc":null},{"commit":"8aee4517bb4c2eebdd9873f7eb0827cd33b85519","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 13:02:50 2022 -0800","stats":{"files_changed":2,"insertions":12,"deletions":26,"files":["docs/parsers/pidstat_s.md","jc/parsers/pidstat_s.py"],"file_stats":[{"name":"docs/parsers/pidstat_s.md","lines_changed":19},{"name":"jc/parsers/pidstat_s.py","lines_changed":19}]},"message":"doc formatting","epoch":1646946170,"epoch_utc":null},{"commit":"a5fb8fbf94b3b80bef82f078ad6582260b13e374","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 10:10:57 2022 -0800","stats":{"files_changed":17,"insertions":164,"deletions":148,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/pidstat_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/pidstat_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":12},{"name":"docs/parsers/iostat_s.md","lines_changed":14},{"name":"docs/parsers/ls_s.md","lines_changed":14},{"name":"docs/parsers/pidstat_s.md","lines_changed":53},{"name":"docs/parsers/ping_s.md","lines_changed":14},{"name":"docs/parsers/rsync_s.md","lines_changed":14},{"name":"docs/parsers/stat_s.md","lines_changed":14},{"name":"docs/parsers/vmstat_s.md","lines_changed":14},{"name":"jc/parsers/csv_s.py","lines_changed":12},{"name":"jc/parsers/foo_s.py","lines_changed":14},{"name":"jc/parsers/iostat_s.py","lines_changed":14},{"name":"jc/parsers/ls_s.py","lines_changed":14},{"name":"jc/parsers/pidstat_s.py","lines_changed":53},{"name":"jc/parsers/ping_s.py","lines_changed":14},{"name":"jc/parsers/rsync_s.py","lines_changed":14},{"name":"jc/parsers/stat_s.py","lines_changed":14},{"name":"jc/parsers/vmstat_s.py","lines_changed":14}]},"message":"streaming doc update","epoch":1646935857,"epoch_utc":null},{"commit":"b9365e2ac28c3eacf53bc101857f7f1d7286ec20","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 09:23:36 2022 -0800","stats":{"files_changed":4,"insertions":74,"deletions":0,"files":[".../centos-7.7/pidstat-hdlrsuw-2-5-streaming.json",".../centos-7.7/pidstat-hdlrsuw-streaming.json",".../fixtures/centos-7.7/pidstat-hl-streaming.json","tests/test_pidstat_s.py"],"file_stats":[{"name":".../centos-7.7/pidstat-hdlrsuw-2-5-streaming.json","lines_changed":1},{"name":".../centos-7.7/pidstat-hdlrsuw-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/pidstat-hl-streaming.json","lines_changed":1},{"name":"tests/test_pidstat_s.py","lines_changed":71}]},"message":"add pidstat-s tests","epoch":1646933016,"epoch_utc":null},{"commit":"696338c1a3d462afbe677a6f2ebe08d06ef4046a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 09:04:12 2022 -0800","stats":{"files_changed":1,"insertions":38,"deletions":0,"files":["tests/_test_foo_s.py"],"file_stats":[{"name":"tests/_test_foo_s.py","lines_changed":38}]},"message":"add streaming test template","epoch":1646931852,"epoch_utc":null},{"commit":"4f0616190bb842411353d65650b78a65d8cbdc28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 08:14:58 2022 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/pidstat_s.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1646928898,"epoch_utc":null},{"commit":"3278cb0de301ee542b1fe8245a6c359193373b6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 08:14:46 2022 -0800","stats":{"files_changed":2,"insertions":15,"deletions":10,"files":["docs/parsers/arp.md","jc/parsers/arp.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":23}]},"message":"add type hints","epoch":1646928886,"epoch_utc":null},{"commit":"4fc04256a567c502a88ac8a1bd189746387c93f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 08:00:37 2022 -0800","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["jc/parsers/foo_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":4},{"name":"jc/parsers/pidstat_s.py","lines_changed":4},{"name":"jc/parsers/rsync_s.py","lines_changed":4}]},"message":"rollback noReturn to tuple","epoch":1646928037,"epoch_utc":null},{"commit":"e4ae0fea63c0386c1b3239607fd6a58738d23633","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 16:28:55 2022 -0800","stats":{"files_changed":5,"insertions":8,"deletions":8,"files":["docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","jc/parsers/foo_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"docs/parsers/pidstat_s.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":4},{"name":"jc/parsers/pidstat_s.py","lines_changed":4},{"name":"jc/parsers/rsync_s.py","lines_changed":4}]},"message":"fix type annotation","epoch":1646872135,"epoch_utc":null},{"commit":"d3727ea0906d6167aa48c340519242b010469d98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 16:09:35 2022 -0800","stats":{"files_changed":4,"insertions":99,"deletions":1,"files":["CHANGELOG","README.md","docs/parsers/pidstat_s.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/pidstat_s.md","lines_changed":91},{"name":"man/jc.1","lines_changed":5}]},"message":"doc update","epoch":1646870975,"epoch_utc":null},{"commit":"0d13909cf63d14008607c5640d074ab4073115e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 16:07:29 2022 -0800","stats":{"files_changed":2,"insertions":168,"deletions":0,"files":["jc/lib.py","jc/parsers/pidstat_s.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/pidstat_s.py","lines_changed":167}]},"message":"add pidstat-s parser","epoch":1646870849,"epoch_utc":null},{"commit":"c52ca20e285895d2afb685a2a5ca275de7901033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 16:07:17 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/pidstat.py"],"file_stats":[{"name":"jc/parsers/pidstat.py","lines_changed":2}]},"message":"fix comment","epoch":1646870837,"epoch_utc":null},{"commit":"21f27f26c81c75234221a5193c7d3903323e2032","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 15:37:10 2022 -0800","stats":{"files_changed":4,"insertions":72,"deletions":0,"files":["tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.json","tests/fixtures/centos-7.7/pidstat-hdlrsuw.json","tests/fixtures/centos-7.7/pidstat-hl.json","tests/test_pidstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/pidstat-hdlrsuw.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/pidstat-hl.json","lines_changed":1},{"name":"tests/test_pidstat.py","lines_changed":69}]},"message":"add pidstat tests","epoch":1646869030,"epoch_utc":null},{"commit":"5e7a87f39782d12070a895440ff541800df91b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 15:37:04 2022 -0800","stats":{"files_changed":1,"insertions":35,"deletions":0,"files":["tests/_test_foo.py"],"file_stats":[{"name":"tests/_test_foo.py","lines_changed":35}]},"message":"add test template","epoch":1646869024,"epoch_utc":null},{"commit":"845d763829acd03fff1d2fad6e9691f04bd1a2aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 15:09:22 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/pidstat.md","jc/parsers/pidstat.py"],"file_stats":[{"name":"docs/parsers/pidstat.md","lines_changed":4},{"name":"jc/parsers/pidstat.py","lines_changed":4}]},"message":"format docs to fit 80 columns","epoch":1646867362,"epoch_utc":null},{"commit":"f5c7d52ec72f5ff4b77d5ac4491f330575b9f10f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 14:43:56 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":10,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":6},{"name":"templates/manpage_template","lines_changed":6}]},"message":"formatting","epoch":1646865836,"epoch_utc":null},{"commit":"c3198a58744803f52113f80967c7259d781e2328","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 14:17:48 2022 -0800","stats":{"files_changed":2,"insertions":22,"deletions":12,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":17},{"name":"templates/manpage_template","lines_changed":17}]},"message":"formatting","epoch":1646864268,"epoch_utc":null},{"commit":"bbd4afa73542ba6596aed77426bb494fbcf23196","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 14:09:58 2022 -0800","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["README.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"man/jc.1","lines_changed":7}]},"message":"add pidstat to docs","epoch":1646863798,"epoch_utc":null},{"commit":"ae754a84bf5fc35b248bbc5f7b0fa8e871765819","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 14:06:34 2022 -0800","stats":{"files_changed":3,"insertions":263,"deletions":33,"files":["docs/parsers/arp.md","docs/parsers/pidstat.md","jc/parsers/pidstat.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/pidstat.md","lines_changed":156},{"name":"jc/parsers/pidstat.py","lines_changed":138}]},"message":"doc update","epoch":1646863594,"epoch_utc":null},{"commit":"3389eb5debe0f0ba01ece01e20048608bf357e70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 13:18:04 2022 -0800","stats":{"files_changed":4,"insertions":219,"deletions":9,"files":["jc/parsers/pidstat.py","tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.out","tests/fixtures/centos-7.7/pidstat-hdlrsuw.out","tests/fixtures/centos-7.7/pidstat-hl.out"],"file_stats":[{"name":"jc/parsers/pidstat.py","lines_changed":52},{"name":"tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.out","lines_changed":47},{"name":"tests/fixtures/centos-7.7/pidstat-hdlrsuw.out","lines_changed":83},{"name":"tests/fixtures/centos-7.7/pidstat-hl.out","lines_changed":46}]},"message":"initial working parser","epoch":1646860684,"epoch_utc":null},{"commit":"01f2c1e71f87ab401d487be4d6d150cb67c91437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 12:13:32 2022 -0800","stats":{"files_changed":5,"insertions":162,"deletions":2,"files":["CHANGELOG","jc/lib.py","jc/parsers/pidstat.py","setup.py","tests/fixtures/centos-7.7/pidstat.out"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/lib.py","lines_changed":3},{"name":"jc/parsers/pidstat.py","lines_changed":112},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/pidstat.out","lines_changed":44}]},"message":"add pidstat parser","epoch":1646856812,"epoch_utc":null},{"commit":"8bfbf8f1bcd233a8ecd34012e140eb29164ca5fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 12:13:07 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"simplify error message","epoch":1646856787,"epoch_utc":null},{"commit":"f4242669bac3af5eb196c46d4146823aacec40ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 10:52:40 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":10,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":12}]},"message":"minor cleanup","epoch":1646851960,"epoch_utc":null},{"commit":"bebd9331f1fb9b80f8cb4a5cfacd68461743004e","merge":"9861983 ac61e9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 18:49:01 2022 +0000","message":"Merge pull request #211 from kellyjonbrazil/master\n\nsync to dev","epoch":1646880541,"epoch_utc":1646851741},{"commit":"ac61e9ad2c9c4e864db02db04cbf907fb0efd99b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 8 13:21:05 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"templates/readme_template","lines_changed":1}]},"message":"add pypi link","epoch":1646774465,"epoch_utc":null},{"commit":"648ef4d8a9c33a36d4bb2c135fe59b031de8f24c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 8 13:19:20 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"templates/readme_template","lines_changed":4}]},"message":"update badge links","epoch":1646774360,"epoch_utc":null},{"commit":"727fc9a701e9aae75d3d2b708010da1d0dc8781a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 15:19:25 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/date.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1646522365,"epoch_utc":null},{"commit":"306512d6bb53af18516fc10b15c7ec79cb02cc98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 15:13:47 2022 -0800","stats":{"files_changed":4,"insertions":7,"deletions":4,"files":["CHANGELOG","jc/lib.py","jc/parsers/date.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/lib.py","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":4},{"name":"setup.py","lines_changed":2}]},"message":"force AM/PM to uppercase in date parser","epoch":1646522027,"epoch_utc":null},{"commit":"6afb1d389ca9dfd7880386d380fee032b7eb92e2","merge":"961968a 9861983","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 21:49:36 2022 +0000","message":"Merge pull request #209 from kellyjonbrazil/dev\n\nDev v1.18.4","epoch":1646545776,"epoch_utc":1646516976},{"commit":"98619834818c181cb50a9605fe166b6153c46095","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 13:45:28 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1646516728,"epoch_utc":null},{"commit":"ca79053db08542849136ae13fdb4d1d90b79a7e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 12:15:47 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":2}]},"message":"document pydoc version","epoch":1646511347,"epoch_utc":null},{"commit":"29c263f87810f8566ebdad2358e99896391adfd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 12:15:14 2022 -0800","stats":{"files_changed":93,"insertions":115,"deletions":115,"files":["docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/streaming.md","docs/utils.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":16},{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/dpkg_l.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/finger.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/gshadow.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iostat.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/jar_manifest.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/kv.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/nmcli.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/rsync.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/stat_s.md","lines_changed":2},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/universal.md","lines_changed":4},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/xrandr.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"docs/parsers/zipinfo.md","lines_changed":2},{"name":"docs/streaming.md","lines_changed":12},{"name":"docs/utils.md","lines_changed":20}]},"message":"pydoc formatting fixes","epoch":1646511314,"epoch_utc":null},{"commit":"128c3c170abc6a702ae044b073fb9d992d4262b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 16:38:49 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"doc update","epoch":1646440729,"epoch_utc":null},{"commit":"a531ab8864fca27b55d83b55055eaef1c36128cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 16:35:06 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"formatting","epoch":1646440506,"epoch_utc":null},{"commit":"0c1be7cc11ec75a5738483d68d053e702eb34fc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 16:29:36 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":18,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":11},{"name":"templates/readme_template","lines_changed":11}]},"message":"reduce dig example size","epoch":1646440176,"epoch_utc":null},{"commit":"e4222b45f54e6179e22d7924c083e4642b9974ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 16:24:13 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":4}]},"message":"fix names to mod names","epoch":1646439853,"epoch_utc":null},{"commit":"ac32c69c31e8eff22252d7aded08f6cb14622086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 13:35:16 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":2},{"name":"jc/parsers/universal.py","lines_changed":2}]},"message":"formatting","epoch":1646429716,"epoch_utc":null},{"commit":"cb2dfeac8d44b733ad9d364e8c6d233a381bfae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 13:27:39 2022 -0800","stats":{"files_changed":199,"insertions":334,"deletions":326,"files":["README.md","docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/streaming.md","docs/utils.md","jc/__init__.py","jc/cli.py","jc/exceptions.py","jc/lib.py","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat_freebsd_osx.py","jc/parsers/netstat_linux.py","jc/parsers/nmcli.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/xrandr.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py","jc/streaming.py","jc/utils.py","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docgen.sh","lines_changed":6},{"name":"docs/lib.md","lines_changed":25},{"name":"docs/parsers/acpi.md","lines_changed":4},{"name":"docs/parsers/airport.md","lines_changed":4},{"name":"docs/parsers/airport_s.md","lines_changed":4},{"name":"docs/parsers/arp.md","lines_changed":4},{"name":"docs/parsers/blkid.md","lines_changed":4},{"name":"docs/parsers/cksum.md","lines_changed":4},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"docs/parsers/crontab_u.md","lines_changed":4},{"name":"docs/parsers/csv.md","lines_changed":4},{"name":"docs/parsers/csv_s.md","lines_changed":4},{"name":"docs/parsers/date.md","lines_changed":4},{"name":"docs/parsers/df.md","lines_changed":4},{"name":"docs/parsers/dig.md","lines_changed":4},{"name":"docs/parsers/dir.md","lines_changed":4},{"name":"docs/parsers/dmidecode.md","lines_changed":4},{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"docs/parsers/du.md","lines_changed":4},{"name":"docs/parsers/env.md","lines_changed":4},{"name":"docs/parsers/file.md","lines_changed":4},{"name":"docs/parsers/finger.md","lines_changed":4},{"name":"docs/parsers/free.md","lines_changed":4},{"name":"docs/parsers/fstab.md","lines_changed":4},{"name":"docs/parsers/group.md","lines_changed":4},{"name":"docs/parsers/gshadow.md","lines_changed":4},{"name":"docs/parsers/hash.md","lines_changed":4},{"name":"docs/parsers/hashsum.md","lines_changed":4},{"name":"docs/parsers/hciconfig.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":4},{"name":"docs/parsers/hosts.md","lines_changed":4},{"name":"docs/parsers/id.md","lines_changed":4},{"name":"docs/parsers/ifconfig.md","lines_changed":4},{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"docs/parsers/iostat.md","lines_changed":4},{"name":"docs/parsers/iostat_s.md","lines_changed":4},{"name":"docs/parsers/iptables.md","lines_changed":4},{"name":"docs/parsers/iw_scan.md","lines_changed":4},{"name":"docs/parsers/jar_manifest.md","lines_changed":4},{"name":"docs/parsers/jobs.md","lines_changed":4},{"name":"docs/parsers/kv.md","lines_changed":4},{"name":"docs/parsers/last.md","lines_changed":4},{"name":"docs/parsers/ls.md","lines_changed":4},{"name":"docs/parsers/ls_s.md","lines_changed":4},{"name":"docs/parsers/lsblk.md","lines_changed":4},{"name":"docs/parsers/lsmod.md","lines_changed":4},{"name":"docs/parsers/lsof.md","lines_changed":4},{"name":"docs/parsers/lsusb.md","lines_changed":4},{"name":"docs/parsers/mount.md","lines_changed":4},{"name":"docs/parsers/netstat.md","lines_changed":4},{"name":"docs/parsers/nmcli.md","lines_changed":4},{"name":"docs/parsers/ntpq.md","lines_changed":4},{"name":"docs/parsers/passwd.md","lines_changed":4},{"name":"docs/parsers/ping.md","lines_changed":4},{"name":"docs/parsers/ping_s.md","lines_changed":4},{"name":"docs/parsers/pip_list.md","lines_changed":4},{"name":"docs/parsers/pip_show.md","lines_changed":4},{"name":"docs/parsers/ps.md","lines_changed":4},{"name":"docs/parsers/route.md","lines_changed":4},{"name":"docs/parsers/rpm_qi.md","lines_changed":4},{"name":"docs/parsers/rsync.md","lines_changed":4},{"name":"docs/parsers/rsync_s.md","lines_changed":9},{"name":"docs/parsers/sfdisk.md","lines_changed":4},{"name":"docs/parsers/shadow.md","lines_changed":4},{"name":"docs/parsers/ss.md","lines_changed":4},{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"docs/parsers/stat_s.md","lines_changed":4},{"name":"docs/parsers/sysctl.md","lines_changed":4},{"name":"docs/parsers/systemctl.md","lines_changed":4},{"name":"docs/parsers/systemctl_lj.md","lines_changed":4},{"name":"docs/parsers/systemctl_ls.md","lines_changed":4},{"name":"docs/parsers/systemctl_luf.md","lines_changed":4},{"name":"docs/parsers/systeminfo.md","lines_changed":4},{"name":"docs/parsers/time.md","lines_changed":4},{"name":"docs/parsers/timedatectl.md","lines_changed":4},{"name":"docs/parsers/tracepath.md","lines_changed":4},{"name":"docs/parsers/traceroute.md","lines_changed":4},{"name":"docs/parsers/ufw.md","lines_changed":4},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":4},{"name":"docs/parsers/uname.md","lines_changed":4},{"name":"docs/parsers/universal.md","lines_changed":6},{"name":"docs/parsers/upower.md","lines_changed":4},{"name":"docs/parsers/uptime.md","lines_changed":4},{"name":"docs/parsers/vmstat.md","lines_changed":4},{"name":"docs/parsers/vmstat_s.md","lines_changed":4},{"name":"docs/parsers/w.md","lines_changed":4},{"name":"docs/parsers/wc.md","lines_changed":4},{"name":"docs/parsers/who.md","lines_changed":4},{"name":"docs/parsers/xml.md","lines_changed":4},{"name":"docs/parsers/xrandr.md","lines_changed":4},{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"docs/parsers/zipinfo.md","lines_changed":4},{"name":"docs/readme.md","lines_changed":2},{"name":"docs/streaming.md","lines_changed":17},{"name":"docs/utils.md","lines_changed":29},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/cli.py","lines_changed":4},{"name":"jc/exceptions.py","lines_changed":2},{"name":"jc/lib.py","lines_changed":2},{"name":"jc/parsers/acpi.py","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/blkid.py","lines_changed":2},{"name":"jc/parsers/cksum.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"jc/parsers/csv.py","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/dir.py","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":2},{"name":"jc/parsers/dpkg_l.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/finger.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/group.py","lines_changed":2},{"name":"jc/parsers/gshadow.py","lines_changed":2},{"name":"jc/parsers/hash.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":2},{"name":"jc/parsers/hciconfig.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/iostat.py","lines_changed":2},{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2},{"name":"jc/parsers/jar_manifest.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/kv.py","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/lsusb.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/netstat_freebsd_osx.py","lines_changed":2},{"name":"jc/parsers/netstat_linux.py","lines_changed":2},{"name":"jc/parsers/nmcli.py","lines_changed":2},{"name":"jc/parsers/ntpq.py","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":2},{"name":"jc/parsers/ping.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/rpm_qi.py","lines_changed":2},{"name":"jc/parsers/rsync.py","lines_changed":2},{"name":"jc/parsers/rsync_s.py","lines_changed":2},{"name":"jc/parsers/sfdisk.py","lines_changed":2},{"name":"jc/parsers/shadow.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/stat_s.py","lines_changed":2},{"name":"jc/parsers/sysctl.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/systeminfo.py","lines_changed":2},{"name":"jc/parsers/time.py","lines_changed":2},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/ufw.py","lines_changed":2},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/universal.py","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/parsers/wc.py","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":2},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/xrandr.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2},{"name":"jc/parsers/zipinfo.py","lines_changed":2},{"name":"jc/streaming.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"templates/manpage_template","lines_changed":2},{"name":"templates/readme_template","lines_changed":4}]},"message":"change name to JSON Convert","epoch":1646429259,"epoch_utc":null},{"commit":"9a3602e70b865a3015bd700b30d1076e17511a9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 08:57:11 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":4},{"name":"jc/lib.py","lines_changed":4}]},"message":"doc update","epoch":1646413031,"epoch_utc":null},{"commit":"a9f53ee258e18bc90934e263d8dc96feee84e939","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 3 17:50:19 2022 -0800","stats":{"files_changed":2,"insertions":15,"deletions":4,"files":["jc/cli.py","jc/lib.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4},{"name":"jc/lib.py","lines_changed":15}]},"message":"optimize streaming parser detection in cli","epoch":1646358619,"epoch_utc":null},{"commit":"6be3d3d98222a262c5138bb09f2951ccfab96110","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 3 17:38:47 2022 -0800","stats":{"files_changed":3,"insertions":43,"deletions":1,"files":["CHANGELOG","docs/lib.md","docs/readme.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docs/lib.md","lines_changed":25},{"name":"docs/readme.md","lines_changed":16}]},"message":"doc update","epoch":1646357927,"epoch_utc":null},{"commit":"e49df7208377ab34a74240a06f35f17fee4b8203","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 3 17:37:01 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"use streaming parser list to find streaming parsers","epoch":1646357821,"epoch_utc":null},{"commit":"7ede7be7bf7b1a7d29d158b3b21c20fff4990e72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 3 17:36:40 2022 -0800","stats":{"files_changed":2,"insertions":42,"deletions":0,"files":["jc/__init__.py","jc/lib.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":17},{"name":"jc/lib.py","lines_changed":25}]},"message":"add standard and streaming list functions","epoch":1646357800,"epoch_utc":null},{"commit":"4758e28a36e2a55497e4f722d386a6b5cc30dc4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 2 15:24:18 2022 -0800","stats":{"files_changed":2,"insertions":20,"deletions":16,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":18},{"name":"jc/__init__.py","lines_changed":18}]},"message":"formatting","epoch":1646263458,"epoch_utc":null},{"commit":"4a1ee151b3cb054d84cd964fd62f5855f765751d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 2 10:57:09 2022 -0800","stats":{"files_changed":2,"insertions":9,"deletions":11,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py"],"file_stats":[{"name":"docs/parsers/nmcli.md","lines_changed":4},{"name":"jc/parsers/nmcli.py","lines_changed":16}]},"message":"add dhcp6 options to docs","epoch":1646247429,"epoch_utc":null},{"commit":"8c8afc1a922e3c30fcf501d169b33a68b65cd3e0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 2 10:15:01 2022 -0800","stats":{"files_changed":2,"insertions":60,"deletions":24,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":42},{"name":"jc/__init__.py","lines_changed":42}]},"message":"formatting","epoch":1646244901,"epoch_utc":null},{"commit":"ed205f7720d98c225c917c252ed7a6c9e6e8c2b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 28 12:55:05 2022 -0800","stats":{"files_changed":3,"insertions":9,"deletions":9,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/nmcli.md","lines_changed":8},{"name":"jc/parsers/nmcli.py","lines_changed":8},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1646081705,"epoch_utc":null},{"commit":"d65f7ae992abc33140c00714d442290103661757","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 28 12:26:06 2022 -0800","stats":{"files_changed":1,"insertions":41,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":41}]},"message":"add nmcli","epoch":1646079966,"epoch_utc":null},{"commit":"e2ffef57b9a474048fe72cf42aebfa6bfaf2e42b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 28 12:20:39 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_nmcli.py"],"file_stats":[{"name":"tests/test_nmcli.py","lines_changed":2}]},"message":"fix test","epoch":1646079639,"epoch_utc":null},{"commit":"002caa9fb3b65f1ae64df25cc39c3de130403e76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 28 12:19:02 2022 -0800","stats":{"files_changed":7,"insertions":252,"deletions":0,"files":[".../fedora32/nmcli-connection-show-ens33.json",".../fedora32/nmcli-connection-show-ens33.out",".../fixtures/fedora32/nmcli-device-show-ens33.json",".../fixtures/fedora32/nmcli-device-show-ens33.out","tests/fixtures/fedora32/nmcli-device-show.json","tests/fixtures/fedora32/nmcli-device-show.out","tests/test_nmcli.py"],"file_stats":[{"name":".../fedora32/nmcli-connection-show-ens33.json","lines_changed":1},{"name":".../fedora32/nmcli-connection-show-ens33.out","lines_changed":148},{"name":".../fixtures/fedora32/nmcli-device-show-ens33.json","lines_changed":1},{"name":".../fixtures/fedora32/nmcli-device-show-ens33.out","lines_changed":26},{"name":"tests/fixtures/fedora32/nmcli-device-show.json","lines_changed":1},{"name":"tests/fixtures/fedora32/nmcli-device-show.out","lines_changed":39},{"name":"tests/test_nmcli.py","lines_changed":36}]},"message":"add fedora tests","epoch":1646079542,"epoch_utc":null},{"commit":"b7c6faf3daf8eb0c42a222778baa440c5a018c75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 25 11:23:20 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"enhance error message","epoch":1645817000,"epoch_utc":null},{"commit":"554ca61d1764b81dea06b6b013d0444072f0662a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 25 11:19:20 2022 -0800","stats":{"files_changed":11,"insertions":165,"deletions":0,"files":[".../fixtures/centos-7.7/nmcli-connection-all.json",".../centos-7.7/nmcli-connection-show-ens33.json","tests/fixtures/centos-7.7/nmcli-connection.json","tests/fixtures/centos-7.7/nmcli-device-all.json",".../centos-7.7/nmcli-device-show-ens33.json",".../fixtures/centos-7.7/nmcli-device-show-lo.json","tests/fixtures/centos-7.7/nmcli-device-show.json","tests/fixtures/centos-7.7/nmcli-device.json","tests/fixtures/centos-7.7/nmcli-general-all.json",".../centos-7.7/nmcli-general-permissions.json","tests/test_nmcli.py"],"file_stats":[{"name":".../fixtures/centos-7.7/nmcli-connection-all.json","lines_changed":1},{"name":".../centos-7.7/nmcli-connection-show-ens33.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-connection.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-device-all.json","lines_changed":1},{"name":".../centos-7.7/nmcli-device-show-ens33.json","lines_changed":1},{"name":".../fixtures/centos-7.7/nmcli-device-show-lo.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-device-show.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-device.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-general-all.json","lines_changed":1},{"name":".../centos-7.7/nmcli-general-permissions.json","lines_changed":1},{"name":"tests/test_nmcli.py","lines_changed":155}]},"message":"add tests","epoch":1645816760,"epoch_utc":null},{"commit":"7b9722d255a16981099dc803beda7abe0d46106a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 21:21:02 2022 -0800","stats":{"files_changed":2,"insertions":26,"deletions":34,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":30},{"name":"templates/manpage_template","lines_changed":30}]},"message":"fix formatting","epoch":1645766462,"epoch_utc":null},{"commit":"5505bde8ef77db0885f08d8d04160cbc4418dd67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:53:54 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/zipinfo.md"],"file_stats":[{"name":"docs/parsers/zipinfo.md","lines_changed":2}]},"message":"doc update","epoch":1645764834,"epoch_utc":null},{"commit":"dbcd9a4060647be24bca2a8d577f11925a9ac210","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:52:28 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":2}]},"message":"bump version to 1.0","epoch":1645764748,"epoch_utc":null},{"commit":"4bdeb2b3aa063c2772f5c44e52acbe16e915cc3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:52:18 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/xrandr.py"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":2}]},"message":"simplify warning message","epoch":1645764738,"epoch_utc":null},{"commit":"6ae1d03187c6d4b669f6f74db1be7c9cf07adaed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:47:15 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py"],"file_stats":[{"name":"docs/parsers/nmcli.md","lines_changed":2},{"name":"jc/parsers/nmcli.py","lines_changed":2}]},"message":"doc fix","epoch":1645764435,"epoch_utc":null},{"commit":"f75b06abe4af152be094f8bc1ba5ce66b25e35e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:43:20 2022 -0800","stats":{"files_changed":4,"insertions":180,"deletions":3,"files":["README.md","docs/parsers/nmcli.md","jc/parsers/nmcli.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/nmcli.md","lines_changed":172},{"name":"jc/parsers/nmcli.py","lines_changed":3},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update","epoch":1645764200,"epoch_utc":null},{"commit":"1923925710dadc4116202855ae884ef18394d428","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:35:00 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"update changelog","epoch":1645763700,"epoch_utc":null},{"commit":"2c5c57ae04df3b7abfb1c3423c3350c7c2ab5dcd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:33:10 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/lib.py","setup.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1645763590,"epoch_utc":null},{"commit":"f4d11d697e000135720a971edf84dcad31a1bec8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:31:58 2022 -0800","stats":{"files_changed":1,"insertions":155,"deletions":15,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":170}]},"message":"finish use cases and doc","epoch":1645763518,"epoch_utc":null},{"commit":"7f409b7082aa9525cc9280e3c5c92bc82089cf14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:31:09 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"enhance ParseError cli message","epoch":1645763469,"epoch_utc":null},{"commit":"937fa5aad2519f588c6d0feb8f08211f6b99872f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 18:22:19 2022 -0800","stats":{"files_changed":1,"insertions":20,"deletions":0,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":20}]},"message":"split dhcp options","epoch":1645755739,"epoch_utc":null},{"commit":"19dcef513565c34a31f6d735577da5e25f9bd2cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 17:10:39 2022 -0800","stats":{"files_changed":1,"insertions":69,"deletions":2,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":71}]},"message":"firm up flow. add/remove text. parse routes","epoch":1645751439,"epoch_utc":null},{"commit":"3d01356461eb2790f859968da7f5cb4fd2ee9898","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 14:53:26 2022 -0800","stats":{"files_changed":1,"insertions":27,"deletions":3,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":30}]},"message":"add text_kv function","epoch":1645743206,"epoch_utc":null},{"commit":"2d6f666fa4c791e7995f6b0c1490dac73ce224c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 12:21:13 2022 -0800","stats":{"files_changed":1,"insertions":61,"deletions":16,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":77}]},"message":"add dev show and conn show parsers","epoch":1645734073,"epoch_utc":null},{"commit":"4dda895f122ecc19b267ed1485cf656bae76ff07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 11:25:14 2022 -0800","stats":{"files_changed":13,"insertions":404,"deletions":0,"files":["jc/lib.py","jc/parsers/nmcli.py","tests/fixtures/centos-7.7/nmcli-connection-all.out",".../centos-7.7/nmcli-connection-show-ens33.out","tests/fixtures/centos-7.7/nmcli-connection.out","tests/fixtures/centos-7.7/nmcli-device-all.out",".../centos-7.7/nmcli-device-show-ens33.out","tests/fixtures/centos-7.7/nmcli-device-show-lo.out","tests/fixtures/centos-7.7/nmcli-device-show.out","tests/fixtures/centos-7.7/nmcli-device.out","tests/fixtures/centos-7.7/nmcli-general-all.out",".../centos-7.7/nmcli-general-permissions.out","tests/fixtures/centos-7.7/nmcli.out"],"file_stats":[{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/nmcli.py","lines_changed":130},{"name":"tests/fixtures/centos-7.7/nmcli-connection-all.out","lines_changed":3},{"name":".../centos-7.7/nmcli-connection-show-ens33.out","lines_changed":136},{"name":"tests/fixtures/centos-7.7/nmcli-connection.out","lines_changed":3},{"name":"tests/fixtures/centos-7.7/nmcli-device-all.out","lines_changed":5},{"name":".../centos-7.7/nmcli-device-show-ens33.out","lines_changed":18},{"name":"tests/fixtures/centos-7.7/nmcli-device-show-lo.out","lines_changed":12},{"name":"tests/fixtures/centos-7.7/nmcli-device-show.out","lines_changed":42},{"name":"tests/fixtures/centos-7.7/nmcli-device.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/nmcli-general-all.out","lines_changed":3},{"name":".../centos-7.7/nmcli-general-permissions.out","lines_changed":18},{"name":"tests/fixtures/centos-7.7/nmcli.out","lines_changed":29}]},"message":"initial nmcli parser","epoch":1645730714,"epoch_utc":null},{"commit":"52617b1722ba2f089716b069f78f70a865430d61","merge":"3afaa48 961968a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 21 16:35:12 2022 +0000","message":"Merge pull request #208 from kellyjonbrazil/master\n\nsync to dev","epoch":1645490112,"epoch_utc":1645461312},{"commit":"961968a0fcaf37b64bc850c4945ba4b805a1fe54","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 15:14:22 2022 -0800","stats":{"files_changed":2,"insertions":26,"deletions":23,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":24},{"name":"jc/parsers/xrandr.py","lines_changed":25}]},"message":"fix schema","epoch":1644880462,"epoch_utc":null},{"commit":"f026a788e5ca1231927e71fdbb1dadb2365a6518","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 11:30:03 2022 -0800","stats":{"files_changed":1,"insertions":62,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":62}]},"message":"add xrandr example","epoch":1644867003,"epoch_utc":null},{"commit":"2f7c03eb35520be916c28a687031f8c6425839ba","merge":"681176e 3afaa48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 10:36:08 2022 -0800","message":"Merge pull request #207 from kellyjonbrazil/dev\n\nDev v1.18.3","epoch":1644863768,"epoch_utc":null},{"commit":"3afaa48eee081e28262d1762c5ec23d318012822","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 10:31:41 2022 -0800","stats":{"files_changed":15,"insertions":15,"deletions":15,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"docs/parsers/stat_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/rsync_s.py","lines_changed":2},{"name":"jc/parsers/stat_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]},"message":"doc update","epoch":1644863501,"epoch_utc":null},{"commit":"3201452564fb0fb44ef9cc32217339370bd2521e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 10:06:09 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":2},{"name":"jc/parsers/xrandr.py","lines_changed":2}]},"message":"add -p to example","epoch":1644861969,"epoch_utc":null},{"commit":"7ee1e34fc71c0dbc08ba482b787d560fd5125f64","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 10:03:52 2022 -0800","stats":{"files_changed":2,"insertions":116,"deletions":4,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":60},{"name":"jc/parsers/xrandr.py","lines_changed":60}]},"message":"doc update","epoch":1644861832,"epoch_utc":null},{"commit":"67dbf050161201f5016899591e81ab6253ac2322","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 09:58:31 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":2},{"name":"jc/parsers/xrandr.py","lines_changed":2}]},"message":"add type annotations","epoch":1644861511,"epoch_utc":null},{"commit":"4ac9f2e3dad4e7bd270bf5a8e61b729838b2c89c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 09:37:37 2022 -0800","stats":{"files_changed":5,"insertions":10,"deletions":17,"files":["CHANGELOG","docs/parsers/rsync.md","docs/parsers/rsync_s.md","jc/parsers/rsync.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docs/parsers/rsync.md","lines_changed":6},{"name":"docs/parsers/rsync_s.md","lines_changed":6},{"name":"jc/parsers/rsync.py","lines_changed":6},{"name":"jc/parsers/rsync_s.py","lines_changed":6}]},"message":"doc update","epoch":1644860257,"epoch_utc":null},{"commit":"3f5f6e39a777ef524cb3a06a01321bb8c31d930d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 09:20:16 2022 -0800","stats":{"files_changed":2,"insertions":100,"deletions":98,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":99},{"name":"jc/parsers/xrandr.py","lines_changed":99}]},"message":"formatting","epoch":1644859216,"epoch_utc":null},{"commit":"4723db8e3cc4946b14c83b25d6e8c6d2309aa72e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 09:14:46 2022 -0800","stats":{"files_changed":8,"insertions":195,"deletions":77,"files":["README.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/xrandr.md","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/xrandr.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/rsync.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"docs/parsers/xrandr.md","lines_changed":109},{"name":"jc/parsers/rsync.py","lines_changed":2},{"name":"jc/parsers/rsync_s.py","lines_changed":2},{"name":"jc/parsers/xrandr.py","lines_changed":147},{"name":"man/jc.1","lines_changed":7}]},"message":"doc updates","epoch":1644858886,"epoch_utc":null},{"commit":"ca914ec77d1fc77e42860189e62ac2fb203d4931","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 09:14:38 2022 -0800","stats":{"files_changed":1,"insertions":11,"deletions":2,"files":["tests/test_xrandr.py"],"file_stats":[{"name":"tests/test_xrandr.py","lines_changed":13}]},"message":"add nodata test","epoch":1644858878,"epoch_utc":null},{"commit":"dcc7f3f357ef016b4583fc1320fd2394788f271f","merge":"184ef3a cbdc666","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Feb 13 17:45:53 2022 -0800","message":"Merge pull request #204 from lyterk/xrandr\n\nNew parser: xrandr","epoch":1644803153,"epoch_utc":null},{"commit":"cbdc66623671da335eafe132b7af79f884856f1d","author":"Kevin Lyter","author_email":"lyterk@sent.com","date":"Wed Feb 9 21:50:07 2022 -0800","stats":{"files_changed":3,"insertions":2,"deletions":30,"files":["jc/parsers/xrandr.py",".../{simple_xrandr.json => xrandr_simple.json}",".../{simple_xrandr.out => xrandr_simple.out}"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":32},{"name":".../{simple_xrandr.json => xrandr_simple.json}","lines_changed":0},{"name":".../{simple_xrandr.out => xrandr_simple.out}","lines_changed":0}]},"message":"Return empty object if no results and filenames\n\n- If no results are returned, return {} instead of {\"screens\": [],\n\"unassociated_devices\": []}\n- simple_xrandr -> xrandr_simple","epoch":1644472207,"epoch_utc":null},{"commit":"184ef3a1faeb406ce62076cff637ee86d61541fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 8 14:45:33 2022 -0800","stats":{"files_changed":3,"insertions":11,"deletions":3,"files":["docs/parsers/rsync.md","docs/parsers/rsync_s.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/rsync.md","lines_changed":6},{"name":"docs/parsers/rsync_s.md","lines_changed":6},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1644360333,"epoch_utc":null},{"commit":"c732f759445e335fe36586859b6fde7e27bb8901","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 8 14:43:14 2022 -0800","stats":{"files_changed":2,"insertions":10,"deletions":2,"files":["jc/parsers/rsync.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":6},{"name":"jc/parsers/rsync_s.py","lines_changed":6}]},"message":"doc update","epoch":1644360194,"epoch_utc":null},{"commit":"7a1ae4f5fc5328c32bf77235cfbd9f83ec995053","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 8 13:32:22 2022 -0800","stats":{"files_changed":3,"insertions":105,"deletions":0,"files":["tests/{test_lib.py => test_jc_lib.py}","tests/test_jc_streaming.py","tests/{test_utils.py => test_jc_utils.py}"],"file_stats":[{"name":"tests/{test_lib.py => test_jc_lib.py}","lines_changed":0},{"name":"tests/test_jc_streaming.py","lines_changed":61},{"name":"tests/{test_utils.py => test_jc_utils.py}","lines_changed":44}]},"message":"add library tests","epoch":1644355942,"epoch_utc":null},{"commit":"d04bc3757c482ec9062b2da91ded76c5dd6d106b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 8 07:33:26 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add xrandr","epoch":1644334406,"epoch_utc":null},{"commit":"73e8391653145412cd852aca349466018c8b9084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 16:58:06 2022 -0800","stats":{"files_changed":1,"insertions":8,"deletions":3,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":11}]},"message":"formatting","epoch":1644281886,"epoch_utc":null},{"commit":"f6c1463c1578db264ccb3d4c2677857ed906e965","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 16:31:43 2022 -0800","stats":{"files_changed":1,"insertions":44,"deletions":24,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":68}]},"message":"formatting","epoch":1644280303,"epoch_utc":null},{"commit":"d392c7f901a9d7c57617fbd03bd3f88ee0bf4132","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 15:44:54 2022 -0800","stats":{"files_changed":12,"insertions":20,"deletions":13,"files":["docs/parsers/date.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/ls.md","docs/parsers/rpm_qi.md","docs/parsers/stat.md","docs/parsers/systeminfo.md","docs/parsers/timedatectl.md","docs/parsers/upower.md","docs/parsers/vmstat.md","docs/parsers/who.md","docs/utils.md"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":11}]},"message":"doc update","epoch":1644277494,"epoch_utc":null},{"commit":"d0387f58205b2fd9b9860ce9656bb29ceec54340","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 15:44:46 2022 -0800","stats":{"files_changed":16,"insertions":34,"deletions":29,"files":["jc/parsers/date.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/systeminfo.py","jc/parsers/timedatectl.py","jc/parsers/upower.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":4},{"name":"jc/parsers/dir.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/rpm_qi.py","lines_changed":6},{"name":"jc/parsers/rsync.py","lines_changed":2},{"name":"jc/parsers/rsync_s.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"jc/parsers/stat_s.py","lines_changed":2},{"name":"jc/parsers/systeminfo.py","lines_changed":8},{"name":"jc/parsers/timedatectl.py","lines_changed":4},{"name":"jc/parsers/upower.py","lines_changed":5},{"name":"jc/parsers/vmstat.py","lines_changed":5},{"name":"jc/parsers/vmstat_s.py","lines_changed":3},{"name":"jc/parsers/who.py","lines_changed":4}]},"message":"add timestamp format hints for better performance","epoch":1644277486,"epoch_utc":null},{"commit":"76f92908a3ba9cbadcc8e972afa8b1c4a69509bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 15:43:24 2022 -0800","stats":{"files_changed":1,"insertions":44,"deletions":9,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":53}]},"message":"add format hints for performance optimization","epoch":1644277404,"epoch_utc":null},{"commit":"1a115da67bdce9acfefbfb71fbac37e234b1babd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 08:34:34 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"add lru_cache maxsize for python 3.7 support","epoch":1644251674,"epoch_utc":null},{"commit":"f0a37ccf301eee5133a83b5dd96986fef0c38e7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 08:30:11 2022 -0800","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":11}]},"message":"use lru_cache for significant performance boost to timestamp","epoch":1644251411,"epoch_utc":null},{"commit":"f331f53a531169520a4d8ea15d277560a49aedb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 08:06:48 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["CHANGELOG","jc/utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/utils.py","lines_changed":2}]},"message":"use !r formatting instead of quotes","epoch":1644250008,"epoch_utc":null},{"commit":"8611aff06b18212b7292d564beb27a2062fc3f41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 06:42:35 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/parsers/rsync_s.md","jc/parsers/rsync_s.py"],"file_stats":[{"name":"docs/parsers/rsync_s.md","lines_changed":8},{"name":"jc/parsers/rsync_s.py","lines_changed":8}]},"message":"add examples","epoch":1644244955,"epoch_utc":null},{"commit":"2f3f78e8d35a0ccccde0f84417400acdfe7fe0aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 06:29:17 2022 -0800","stats":{"files_changed":16,"insertions":194,"deletions":185,"files":["docgen.sh","docs/parsers/rsync_s.md","docs/readme.md","docs/streaming.md","docs/utils.md","jc/__init__.py","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/streaming.py","man/jc.1"],"file_stats":[{"name":"docgen.sh","lines_changed":3},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"docs/readme.md","lines_changed":2},{"name":"docs/streaming.md","lines_changed":114},{"name":"docs/utils.md","lines_changed":93},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":10},{"name":"jc/parsers/foo_s.py","lines_changed":14},{"name":"jc/parsers/iostat_s.py","lines_changed":15},{"name":"jc/parsers/ls_s.py","lines_changed":14},{"name":"jc/parsers/ping_s.py","lines_changed":4},{"name":"jc/parsers/rsync_s.py","lines_changed":25},{"name":"jc/parsers/stat_s.py","lines_changed":22},{"name":"jc/parsers/vmstat_s.py","lines_changed":16},{"name":"jc/streaming.py","lines_changed":41},{"name":"man/jc.1","lines_changed":2}]},"message":"refine streaming parsers","epoch":1644244157,"epoch_utc":null},{"commit":"d1e0ee6123dfecd48d074cb7a40e98a15b6adcb9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Feb 6 08:56:18 2022 -0800","stats":{"files_changed":1,"insertions":6,"deletions":8,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":14}]},"message":"use new streaming functions","epoch":1644166578,"epoch_utc":null},{"commit":"45314c98083067f1f6fae9c477c99fabec223f29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Feb 6 08:55:42 2022 -0800","stats":{"files_changed":2,"insertions":112,"deletions":102,"files":["jc/streaming.py","jc/utils.py"],"file_stats":[{"name":"jc/streaming.py","lines_changed":111},{"name":"jc/utils.py","lines_changed":103}]},"message":"move some functions to streaming","epoch":1644166542,"epoch_utc":null},{"commit":"df00945b46e27e10107f48d186eedf80b55bd40e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 4 16:03:44 2022 -0800","stats":{"files_changed":6,"insertions":59,"deletions":49,"files":["jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":15},{"name":"jc/parsers/iostat_s.py","lines_changed":15},{"name":"jc/parsers/ls_s.py","lines_changed":17},{"name":"jc/parsers/ping_s.py","lines_changed":19},{"name":"jc/parsers/rsync_s.py","lines_changed":21},{"name":"jc/parsers/stat_s.py","lines_changed":21}]},"message":"move try/except inside for loop","epoch":1644019424,"epoch_utc":null},{"commit":"fda0050d867bcbe4f1d7e024b08e9881d0f57735","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 4 14:39:45 2022 -0800","stats":{"files_changed":13,"insertions":191,"deletions":0,"files":[".../centos-7.7/rsync-i-logfile-streaming.json","tests/fixtures/centos-7.7/rsync-i-streaming.json",".../centos-7.7/rsync-i-v-logfile-streaming.json",".../centos-7.7/rsync-i-vv-logfile-streaming.json",".../rsync-i-vvv-logfile-nochange-streaming.json",".../centos-7.7/rsync-i-vvv-logfile-streaming.json",".../centos-7.7/rsync-ivvv-nochange-streaming.json",".../fixtures/centos-7.7/rsync-ivvv-streaming.json","tests/fixtures/generic/rsync-i-streaming.json",".../rsync-i-vvv-logfile-nochange-streaming.json",".../rsync-i-vvv-nochange-streaming.json",".../osx-10.14.6/rsync-i-vvv-streaming.json","tests/test_rsync_s.py"],"file_stats":[{"name":".../centos-7.7/rsync-i-logfile-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-streaming.json","lines_changed":1},{"name":".../centos-7.7/rsync-i-v-logfile-streaming.json","lines_changed":1},{"name":".../centos-7.7/rsync-i-vv-logfile-streaming.json","lines_changed":1},{"name":".../rsync-i-vvv-logfile-nochange-streaming.json","lines_changed":1},{"name":".../centos-7.7/rsync-i-vvv-logfile-streaming.json","lines_changed":1},{"name":".../centos-7.7/rsync-ivvv-nochange-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/rsync-ivvv-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/rsync-i-streaming.json","lines_changed":1},{"name":".../rsync-i-vvv-logfile-nochange-streaming.json","lines_changed":1},{"name":".../rsync-i-vvv-nochange-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/rsync-i-vvv-streaming.json","lines_changed":1},{"name":"tests/test_rsync_s.py","lines_changed":179}]},"message":"add rsync-s tests","epoch":1644014385,"epoch_utc":null},{"commit":"a76d46f9ecb1eff4d6cc7ad633c97cec0e99001a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 4 12:14:16 2022 -0800","stats":{"files_changed":19,"insertions":110,"deletions":109,"files":["CHANGELOG","docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","docs/utils.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/utils.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":5},{"name":"docs/parsers/iostat_s.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":5},{"name":"docs/parsers/ping_s.md","lines_changed":5},{"name":"docs/parsers/rsync_s.md","lines_changed":5},{"name":"docs/parsers/stat_s.md","lines_changed":5},{"name":"docs/parsers/vmstat_s.md","lines_changed":5},{"name":"docs/utils.md","lines_changed":15},{"name":"jc/parsers/csv_s.py","lines_changed":13},{"name":"jc/parsers/foo_s.py","lines_changed":11},{"name":"jc/parsers/iostat_s.py","lines_changed":23},{"name":"jc/parsers/ls_s.py","lines_changed":20},{"name":"jc/parsers/ping_s.py","lines_changed":22},{"name":"jc/parsers/rsync_s.py","lines_changed":11},{"name":"jc/parsers/stat_s.py","lines_changed":30},{"name":"jc/parsers/vmstat_s.py","lines_changed":11},{"name":"jc/utils.py","lines_changed":24},{"name":"man/jc.1","lines_changed":2}]},"message":"refactor ignore_exceptions","epoch":1644005656,"epoch_utc":null},{"commit":"6b069a82d0fa19c8d83b19b934bace556cb758d7","author":"Kevin Lyter","author_email":"lyterk@sent.com","date":"Thu Feb 3 18:13:58 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":1}]},"message":"Add xrandr to lib.py","epoch":1643940838,"epoch_utc":null},{"commit":"6b793d052147406f388c4d5dc04f506a3456f409","author":"Kevin Lyter","author_email":"lyterk@sent.com","date":"Thu Feb 3 18:13:11 2022 -0800","stats":{"files_changed":1,"insertions":6,"deletions":11,"files":["jc/parsers/xrandr.py"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":17}]},"message":"Clean up types\n\n* | operator => Union[]\n* Remove unused import Iterator\n* Remove comment","epoch":1643940791,"epoch_utc":null},{"commit":"ce9103f7cc666895dc7840d32797d8c7274cf1b8","author":"Kevin Lyter","author_email":"lyterk@sent.com","date":"Thu Feb 3 18:12:46 2022 -0800","stats":{"files_changed":2,"insertions":0,"deletions":287,"files":["templates/xrandr_sample.txt","templates/xrandr_sample_verbose.txt"],"file_stats":[{"name":"templates/xrandr_sample.txt","lines_changed":38},{"name":"templates/xrandr_sample_verbose.txt","lines_changed":249}]},"message":"Delete old files in template folder","epoch":1643940766,"epoch_utc":null},{"commit":"671d6dee36a37317257e09a080849205d301bceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 3 15:47:46 2022 -0800","stats":{"files_changed":8,"insertions":83,"deletions":15,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","docs/utils.md"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":8},{"name":"docs/parsers/iostat_s.md","lines_changed":8},{"name":"docs/parsers/ls_s.md","lines_changed":8},{"name":"docs/parsers/ping_s.md","lines_changed":8},{"name":"docs/parsers/rsync_s.md","lines_changed":10},{"name":"docs/parsers/stat_s.md","lines_changed":8},{"name":"docs/parsers/vmstat_s.md","lines_changed":8},{"name":"docs/utils.md","lines_changed":40}]},"message":"doc update","epoch":1643932066,"epoch_utc":null},{"commit":"49929c714c2d71a310b1dd95138dbd02f8704138","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 3 15:44:18 2022 -0800","stats":{"files_changed":9,"insertions":139,"deletions":52,"files":["jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":14},{"name":"jc/parsers/foo_s.py","lines_changed":16},{"name":"jc/parsers/iostat_s.py","lines_changed":15},{"name":"jc/parsers/ls_s.py","lines_changed":14},{"name":"jc/parsers/ping_s.py","lines_changed":14},{"name":"jc/parsers/rsync_s.py","lines_changed":30},{"name":"jc/parsers/stat_s.py","lines_changed":21},{"name":"jc/parsers/vmstat_s.py","lines_changed":14},{"name":"jc/utils.py","lines_changed":53}]},"message":"add add_jc_meta decorator","epoch":1643931858,"epoch_utc":null},{"commit":"2986771f07de87bfee44dd3bbb4f285e249aad76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 3 09:21:20 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"require python v3.7 and above since v3.6 is now deprecated","epoch":1643908880,"epoch_utc":null},{"commit":"520082d963b93d2bafeff921da3899686b22cadf","author":"Kevin Lyter","author_email":"lyterk@sent.com","date":"Wed Feb 2 18:25:55 2022 -0800","stats":{"files_changed":9,"insertions":968,"deletions":0,"files":["jc/parsers/xrandr.py","templates/xrandr_sample.txt","templates/xrandr_sample_verbose.txt","tests/fixtures/generic/simple_xrandr.json","tests/fixtures/generic/simple_xrandr.out","tests/fixtures/generic/xrandr.out","tests/fixtures/generic/xrandr_2.out","tests/fixtures/generic/xrandr_device.out","tests/test_xrandr.py"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":353},{"name":"templates/xrandr_sample.txt","lines_changed":38},{"name":"templates/xrandr_sample_verbose.txt","lines_changed":249},{"name":"tests/fixtures/generic/simple_xrandr.json","lines_changed":56},{"name":"tests/fixtures/generic/simple_xrandr.out","lines_changed":4},{"name":"tests/fixtures/generic/xrandr.out","lines_changed":38},{"name":"tests/fixtures/generic/xrandr_2.out","lines_changed":43},{"name":"tests/fixtures/generic/xrandr_device.out","lines_changed":15},{"name":"tests/test_xrandr.py","lines_changed":172}]},"message":"New parser: xrandr\n\nTests passing, working as intended in plugin directory","epoch":1643855155,"epoch_utc":null},{"commit":"021e296d457140c32b5256c2b0acf66efc458896","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 17:06:20 2022 -0800","stats":{"files_changed":1,"insertions":104,"deletions":100,"files":["jc/parsers/rsync_s.py"],"file_stats":[{"name":"jc/parsers/rsync_s.py","lines_changed":204}]},"message":"move variable inits and regexes up","epoch":1643850380,"epoch_utc":null},{"commit":"42e56fbcea6db64ea7f7045e7755af492c95aec2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 17:05:53 2022 -0800","stats":{"files_changed":1,"insertions":11,"deletions":12,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":23}]},"message":"move regex up","epoch":1643850353,"epoch_utc":null},{"commit":"a5b62a4055df37b84751a7cdc14eb6f1ed907cd9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 16:03:14 2022 -0800","stats":{"files_changed":2,"insertions":230,"deletions":18,"files":["docs/parsers/rsync_s.md","jc/parsers/rsync_s.py"],"file_stats":[{"name":"docs/parsers/rsync_s.md","lines_changed":124},{"name":"jc/parsers/rsync_s.py","lines_changed":124}]},"message":"add processing and docs","epoch":1643846594,"epoch_utc":null},{"commit":"be98c9b7f6c67e23ea101223934d67bba512e645","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 15:59:12 2022 -0800","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":11}]},"message":"simplify try/except by moving outside for loop","epoch":1643846352,"epoch_utc":null},{"commit":"aceeb8450796ae748a4d4abf75643f309d0a42e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 15:58:29 2022 -0800","stats":{"files_changed":3,"insertions":12,"deletions":1,"files":["CHANGELOG","README.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":5},{"name":"README.md","lines_changed":1},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update","epoch":1643846309,"epoch_utc":null},{"commit":"13910632173e7c815ff1161cf52fd1d17153c4a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 11:49:39 2022 -0800","stats":{"files_changed":2,"insertions":367,"deletions":0,"files":["jc/lib.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/rsync_s.py","lines_changed":366}]},"message":"first draft rsync streaming parser","epoch":1643831379,"epoch_utc":null},{"commit":"52157addd0d6dff3bdb34f179ec14b07c8c27ccc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 11:49:24 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":2}]},"message":"fix compatible list","epoch":1643831364,"epoch_utc":null},{"commit":"ec0bc6615e22fdc536623e290d88b9725cb6a0ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 19:20:19 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":2},{"name":"jc/utils.py","lines_changed":2}]},"message":"formatting","epoch":1643772019,"epoch_utc":null},{"commit":"2f80800e38256b363a4122195ec4aaffebe67d87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 19:06:41 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"simplify all_parser_info comprehension","epoch":1643771201,"epoch_utc":null},{"commit":"3959d3347c8d3e838f8c3158c4db74e2fa2eb856","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 18:33:07 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["docs/lib.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":4}]},"message":"doc update","epoch":1643769187,"epoch_utc":null},{"commit":"b57d25c69a193d3866ea86a3a34edd67049b198d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 18:30:37 2022 -0800","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":12}]},"message":"clean up return type for parser_info","epoch":1643769037,"epoch_utc":null},{"commit":"63e43a7cabb51c624c962cdcc92a1199f18c77e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 17:57:12 2022 -0800","stats":{"files_changed":7,"insertions":188,"deletions":21,"files":["README.md","docs/lib.md","docs/parsers/rsync.md","docs/parsers/universal.md","docs/parsers/zipinfo.md","docs/utils.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"docs/lib.md","lines_changed":4},{"name":"docs/parsers/rsync.md","lines_changed":163},{"name":"docs/parsers/universal.md","lines_changed":2},{"name":"docs/parsers/zipinfo.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":28},{"name":"man/jc.1","lines_changed":7}]},"message":"doc updates","epoch":1643767032,"epoch_utc":null},{"commit":"21719f9a26c25d896b0a5d49c9d7814175835e16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 17:54:22 2022 -0800","stats":{"files_changed":2,"insertions":18,"deletions":20,"files":["jc/lib.py","jc/utils.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":36}]},"message":"type annotation updates","epoch":1643766862,"epoch_utc":null},{"commit":"96ec70de4f6178b0669fd9ab47cb303dc45e55c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 17:18:55 2022 -0800","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["jc/parsers/universal.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":6},{"name":"jc/utils.py","lines_changed":4}]},"message":"remove unneeded optional","epoch":1643764735,"epoch_utc":null},{"commit":"a15a1967dc06169ceeda0fd5b4857ce1a351f3d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 17:18:39 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"fix typo","epoch":1643764719,"epoch_utc":null},{"commit":"a10d7566294fe5246e68a16e355ce56dd3557ac5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:49:31 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":8}]},"message":"fixy mypy issues","epoch":1643762971,"epoch_utc":null},{"commit":"0700dc7a64b121cf0243416e2cbb82fcef15f5a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:42:51 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":2}]},"message":"remove cygwin from compatible","epoch":1643762571,"epoch_utc":null},{"commit":"ca654b214057e19839b89e0d9a66f1110f679c1e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:42:10 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"fix parser order","epoch":1643762530,"epoch_utc":null},{"commit":"4ff3b87c1c96d720f4e7fd39e613944e322cb388","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:18:38 2022 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":1}]},"message":"remove future field from docstring","epoch":1643761118,"epoch_utc":null},{"commit":"ea244fb7a91f1d1f8ffe0ea6dc10dfe5ab836878","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:17:03 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_rsync.py"],"file_stats":[{"name":"tests/test_rsync.py","lines_changed":2}]},"message":"formatting","epoch":1643761023,"epoch_utc":null},{"commit":"8061f30e6fa58d22ed1a52e02c4d9c7f0bf132cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:16:33 2022 -0800","stats":{"files_changed":3,"insertions":236,"deletions":6,"files":["tests/fixtures/centos-7.7/rsync-ivvv-nochange.json","tests/fixtures/centos-7.7/rsync-ivvv-nochange.out","tests/test_rsync.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/rsync-ivvv-nochange.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-ivvv-nochange.out","lines_changed":224},{"name":"tests/test_rsync.py","lines_changed":17}]},"message":"add centos -i nochange test","epoch":1643760993,"epoch_utc":null},{"commit":"8f3b12e81e1b4f0d4394c33db5b3a352f4cfb391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 14:52:51 2022 -0800","stats":{"files_changed":6,"insertions":299,"deletions":0,"files":["jc/parsers/rsync.py",".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.json",".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.out","tests/fixtures/osx-10.14.6/rsync-i-vvv.json","tests/fixtures/osx-10.14.6/rsync-i-vvv.out","tests/test_rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":22},{"name":".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.out","lines_changed":88},{"name":"tests/fixtures/osx-10.14.6/rsync-i-vvv.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/rsync-i-vvv.out","lines_changed":156},{"name":"tests/test_rsync.py","lines_changed":31}]},"message":"add fixes for mac -i output","epoch":1643755971,"epoch_utc":null},{"commit":"d0694ce0db5ea2d06b5787429adf23095c4c2df0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 14:20:53 2022 -0800","stats":{"files_changed":3,"insertions":245,"deletions":6,"files":[".../osx-10.14.6/rsync-i-vvv-logfile-nochange.json",".../osx-10.14.6/rsync-i-vvv-logfile-nochange.out","tests/test_rsync.py"],"file_stats":[{"name":".../osx-10.14.6/rsync-i-vvv-logfile-nochange.json","lines_changed":1},{"name":".../osx-10.14.6/rsync-i-vvv-logfile-nochange.out","lines_changed":233},{"name":"tests/test_rsync.py","lines_changed":17}]},"message":"add nochange log test for mac","epoch":1643754053,"epoch_utc":null},{"commit":"0cd4c4bc7f3ffe13cb2f1920187e25636b88af61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 13:58:51 2022 -0800","stats":{"files_changed":2,"insertions":658,"deletions":0,"files":[".../centos-7.7/rsync-i-vvv-logfile-nochange.json",".../centos-7.7/rsync-i-vvv-logfile-nochange.out"],"file_stats":[{"name":".../centos-7.7/rsync-i-vvv-logfile-nochange.json","lines_changed":1},{"name":".../centos-7.7/rsync-i-vvv-logfile-nochange.out","lines_changed":657}]},"message":"add nochange tests","epoch":1643752731,"epoch_utc":null},{"commit":"12f90c349c903634def4225ce87924b475be46d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 13:54:25 2022 -0800","stats":{"files_changed":2,"insertions":68,"deletions":20,"files":["jc/parsers/rsync.py","tests/test_rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":68},{"name":"tests/test_rsync.py","lines_changed":20}]},"message":"update regexes for unchanged files","epoch":1643752465,"epoch_utc":null},{"commit":"26b8a1f167c4b1ec3f9fb4077254a27ed8548933","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 09:58:18 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":2}]},"message":"remove packages from binaries and packages header","epoch":1643738298,"epoch_utc":null},{"commit":"3abe382c064f605d915912f9b726d76784eba8a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 16:01:42 2022 -0800","stats":{"files_changed":2,"insertions":90,"deletions":3,"files":["EXAMPLES.md","jc/parsers/rsync.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":33},{"name":"jc/parsers/rsync.py","lines_changed":60}]},"message":"add examples","epoch":1643673702,"epoch_utc":null},{"commit":"1e2edc2c7b5dc104a9efe4da7df9be61b9e1be32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 15:54:05 2022 -0800","stats":{"files_changed":5,"insertions":53,"deletions":29,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-logfile.json","tests/fixtures/centos-7.7/rsync-i-v-logfile.json","tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":74},{"name":"tests/fixtures/centos-7.7/rsync-i-logfile.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rsync-i-v-logfile.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json","lines_changed":2}]},"message":"add timestamp","epoch":1643673245,"epoch_utc":null},{"commit":"5fe032a6741b7b6586c60eb28be74bd0e56277a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 13:44:44 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":2}]},"message":"fix typo","epoch":1643665484,"epoch_utc":null},{"commit":"e825c02df1cdae67c7f335fe3c675685eb1a8d02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 13:23:31 2022 -0800","stats":{"files_changed":11,"insertions":605,"deletions":0,"files":["tests/fixtures/centos-7.7/rsync-i-logfile.json","tests/fixtures/centos-7.7/rsync-i-v-logfile.json","tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out","tests/fixtures/centos-7.7/rsync-i.json","tests/fixtures/centos-7.7/rsync-i.out","tests/fixtures/centos-7.7/rsync-ivvv.json","tests/fixtures/generic/rsync-i.json","tests/fixtures/generic/rsync-i.out","tests/test_rsync.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/rsync-i-logfile.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-v-logfile.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out","lines_changed":434},{"name":"tests/fixtures/centos-7.7/rsync-i.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i.out","lines_changed":28},{"name":"tests/fixtures/centos-7.7/rsync-ivvv.json","lines_changed":1},{"name":"tests/fixtures/generic/rsync-i.json","lines_changed":1},{"name":"tests/fixtures/generic/rsync-i.out","lines_changed":11},{"name":"tests/test_rsync.py","lines_changed":125}]},"message":"add rsync tests","epoch":1643664211,"epoch_utc":null},{"commit":"a4a4d170b5ae8c189de982adea5bdc9bf1f26e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 13:23:22 2022 -0800","stats":{"files_changed":1,"insertions":10,"deletions":5,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":15}]},"message":"update docstring","epoch":1643664202,"epoch_utc":null},{"commit":"d0fcd523cb2cbb59d0f90369721749b54222961d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 11:13:23 2022 -0800","stats":{"files_changed":1,"insertions":19,"deletions":17,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":36}]},"message":"fix process conversions","epoch":1643656403,"epoch_utc":null},{"commit":"f72b7dc75dbd1c3f5daee3ecee28487258a04873","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 30 16:37:45 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":8,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":12}]},"message":"change keyname to files and remove future key","epoch":1643589465,"epoch_utc":null},{"commit":"4101dc6bf7bab7d00899426e2f6271a7480d558f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 30 16:21:03 2022 -0800","stats":{"files_changed":4,"insertions":1008,"deletions":19,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-v-logfile.out","tests/fixtures/centos-7.7/rsync-i-vv-logfile.out","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":60},{"name":"tests/fixtures/centos-7.7/rsync-i-v-logfile.out","lines_changed":61},{"name":"tests/fixtures/centos-7.7/rsync-i-vv-logfile.out","lines_changed":65},{"name":"tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out","lines_changed":841}]},"message":"add log-file support","epoch":1643588463,"epoch_utc":null},{"commit":"ea5011b616365b5c10c04416d43035d84e3dacba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jan 29 17:24:43 2022 -0800","stats":{"files_changed":2,"insertions":175,"deletions":41,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-logfile.out"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":157},{"name":"tests/fixtures/centos-7.7/rsync-i-logfile.out","lines_changed":59}]},"message":"updated schema. add log-file option support","epoch":1643505883,"epoch_utc":null},{"commit":"d6de81747fd92642dbd5cb1fb097e375aa38be35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 28 15:00:05 2022 -0800","stats":{"files_changed":1,"insertions":11,"deletions":3,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":14}]},"message":"add int/float conversions","epoch":1643410805,"epoch_utc":null},{"commit":"38f04b1c9699246d85332b20df5b6a91ae0c48d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 28 14:45:01 2022 -0800","stats":{"files_changed":1,"insertions":32,"deletions":7,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":39}]},"message":"add summary","epoch":1643409901,"epoch_utc":null},{"commit":"84169e1a913d035744f71472be81fe3a7d774b97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 28 14:08:43 2022 -0800","stats":{"files_changed":4,"insertions":637,"deletions":2,"files":["jc/lib.py","jc/parsers/rsync.py","setup.py","tests/fixtures/centos-7.7/rsync-ivvv.out"],"file_stats":[{"name":"jc/lib.py","lines_changed":3},{"name":"jc/parsers/rsync.py","lines_changed":212},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rsync-ivvv.out","lines_changed":422}]},"message":"add rsync parser","epoch":1643407723,"epoch_utc":null},{"commit":"1f96586a5e883709f436526de6dcb21ff44bf97b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 28 14:08:21 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/foo.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":2}]},"message":"reorder imports","epoch":1643407701,"epoch_utc":null},{"commit":"681176e4c958157ef1f2151b3e57963a6ba48e09","merge":"b389665 8bb2663","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 16:53:37 2022 -0800","message":"Merge pull request #203 from kellyjonbrazil/dev\n\nDev v1.18.2","epoch":1643331217,"epoch_utc":null},{"commit":"8bb266352207f95040b72750e5b3ae3b8ceb2b98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 16:49:46 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"date update","epoch":1643330986,"epoch_utc":null},{"commit":"663abf313931b49fad64b425ece6a5a257dc7938","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 16:14:14 2022 -0800","stats":{"files_changed":4,"insertions":3,"deletions":4,"files":["MANIFEST.in","mangen.py","runtests.sh","updatedocs.sh"],"file_stats":[{"name":"MANIFEST.in","lines_changed":1},{"name":"mangen.py","lines_changed":3},{"name":"runtests.sh","lines_changed":1},{"name":"updatedocs.sh","lines_changed":2}]},"message":"clean up scripts","epoch":1643328854,"epoch_utc":null},{"commit":"f7ac41db95c16fd21d83fbce678c5dec28ab40f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 13:27:50 2022 -0800","stats":{"files_changed":2,"insertions":1,"deletions":13,"files":["README.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"man/jc.1","lines_changed":12}]},"message":"final doc update","epoch":1643318870,"epoch_utc":null},{"commit":"5502cda9e591b531d6b452b02d8ec322c3287800","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 13:03:02 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["tests/test_lib.py"],"file_stats":[{"name":"tests/test_lib.py","lines_changed":3}]},"message":"add additional test for dict inside list for all_parser_info()","epoch":1643317382,"epoch_utc":null},{"commit":"a2b165565f54d91489bf38577a0785e78a4523d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 12:54:44 2022 -0800","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["tests/test_lib.py"],"file_stats":[{"name":"tests/test_lib.py","lines_changed":21}]},"message":"add lib tests for new functions","epoch":1643316884,"epoch_utc":null},{"commit":"b426369815984bd2aae8bcb14e306ba73b8cd4ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 07:45:20 2022 -0800","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":12}]},"message":"use all_parser_info() from lib in about function","epoch":1643298320,"epoch_utc":null},{"commit":"ac0840cc0afb4aeee2c99076710c987e09cfa5f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 20:51:18 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"fix typo","epoch":1643259078,"epoch_utc":null},{"commit":"ee98ab0a4a7671ae34ee79f7b0b97c061a8c2944","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 20:42:20 2022 -0800","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/lib.md","docs/utils.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":6},{"name":"docs/utils.md","lines_changed":4}]},"message":"doc update","epoch":1643258540,"epoch_utc":null},{"commit":"2adec2c0035b84ca0242f2494b6c2651b9898ca5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 20:40:03 2022 -0800","stats":{"files_changed":4,"insertions":21,"deletions":19,"files":["jc/lib.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/utils.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":18},{"name":"jc/parsers/foo.py","lines_changed":8},{"name":"jc/parsers/foo_s.py","lines_changed":10},{"name":"jc/utils.py","lines_changed":4}]},"message":"update type hints with mypy help","epoch":1643258403,"epoch_utc":null},{"commit":"f19c9c71bf4f592f55a5176458acd478b462fdbe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 18:39:14 2022 -0800","stats":{"files_changed":2,"insertions":15,"deletions":4,"files":["jc/parsers/foo.py","jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":9},{"name":"jc/parsers/foo_s.py","lines_changed":10}]},"message":"add type hints","epoch":1643251154,"epoch_utc":null},{"commit":"e93adf1884c0006a64123513070a5fd96a940da2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 18:09:30 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":5},{"name":"jc/__init__.py","lines_changed":5}]},"message":"fix doc","epoch":1643249370,"epoch_utc":null},{"commit":"254c4fc507842ca72064c0196418a7b939d54d06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 18:05:00 2022 -0800","stats":{"files_changed":2,"insertions":20,"deletions":6,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":13},{"name":"jc/__init__.py","lines_changed":13}]},"message":"add new functions","epoch":1643249100,"epoch_utc":null},{"commit":"74d5f60d14fc42cfd5768c7ffd6efc890a65d442","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 17:17:40 2022 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"update console interview description","epoch":1643246260,"epoch_utc":null},{"commit":"db7dc0634bc17b4daadc8bc21bba5975c093efe5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 17:12:35 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":2},{"name":"jc/lib.py","lines_changed":2}]},"message":"make **kwargs optional","epoch":1643245955,"epoch_utc":null},{"commit":"e156b0db453e99fb0f74b618fd343218f978ff68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 17:08:03 2022 -0800","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":4},{"name":"jc/parsers/universal.py","lines_changed":5}]},"message":"add type hints","epoch":1643245683,"epoch_utc":null},{"commit":"50adc05fbd6a0dcd9e4fb38aa41917bb57332f36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 16:58:48 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":6},{"name":"jc/utils.py","lines_changed":6}]},"message":"formatting","epoch":1643245128,"epoch_utc":null},{"commit":"446cac7c217103eb66cfdee97e3a208b7144b644","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 16:55:39 2022 -0800","stats":{"files_changed":2,"insertions":15,"deletions":11,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":11},{"name":"jc/utils.py","lines_changed":15}]},"message":"doc update","epoch":1643244939,"epoch_utc":null},{"commit":"28ffe3076bb5f23aeaf2624344856dbd02b4c0e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 16:34:23 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":9,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":8},{"name":"jc/lib.py","lines_changed":9}]},"message":"formatting","epoch":1643243663,"epoch_utc":null},{"commit":"d4d5e206cae14acd25445952f820810818b3fdce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 15:54:36 2022 -0800","stats":{"files_changed":3,"insertions":40,"deletions":28,"files":["docs/lib.md","docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":15},{"name":"docs/utils.md","lines_changed":26},{"name":"jc/utils.py","lines_changed":27}]},"message":"type hints update","epoch":1643241276,"epoch_utc":null},{"commit":"42fbe40a4ae02b9d09acdbf9b22573844959d2ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 15:54:18 2022 -0800","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":11}]},"message":"simplify type hints","epoch":1643241258,"epoch_utc":null},{"commit":"27e4a120e21dcbb3eadc6c4cf224ddb33859328d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 15:31:18 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":2},{"name":"jc/lib.py","lines_changed":2}]},"message":"remove trailing comma","epoch":1643239878,"epoch_utc":null},{"commit":"b5d5b7c73a96d4335b178ccfac60af90913e6f0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 15:01:42 2022 -0800","stats":{"files_changed":3,"insertions":29,"deletions":148,"files":["docgen.sh","docs/parsers/ifconfig.md","docs/parsers/traceroute.md"],"file_stats":[{"name":"docgen.sh","lines_changed":35},{"name":"docs/parsers/ifconfig.md","lines_changed":94},{"name":"docs/parsers/traceroute.md","lines_changed":48}]},"message":"remove private classes","epoch":1643238102,"epoch_utc":null},{"commit":"e7471556ba5fb0586ac5b0d7404cabd98a58db2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 14:39:11 2022 -0800","stats":{"files_changed":1,"insertions":0,"deletions":5,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":5}]},"message":"remove sed lines","epoch":1643236751,"epoch_utc":null},{"commit":"640a21341bb1c562cb2124155b511dfc74277fc0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 14:38:57 2022 -0800","stats":{"files_changed":2,"insertions":47,"deletions":42,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":20},{"name":"jc/utils.py","lines_changed":69}]},"message":"fix indentation","epoch":1643236737,"epoch_utc":null},{"commit":"f5befad3e41ba2864abc795a2fdf63e0f1d37c21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 14:21:06 2022 -0800","stats":{"files_changed":2,"insertions":33,"deletions":25,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":21},{"name":"jc/utils.py","lines_changed":37}]},"message":"move docstring under __init__","epoch":1643235666,"epoch_utc":null},{"commit":"f8223023c31093c1a34130b4e4cfc23b1d80a30c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 14:16:04 2022 -0800","stats":{"files_changed":4,"insertions":24,"deletions":10,"files":["docgen.sh","docs/parsers/ifconfig.md","docs/parsers/traceroute.md","docs/utils.md"],"file_stats":[{"name":"docgen.sh","lines_changed":28},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":2}]},"message":"change header depth","epoch":1643235364,"epoch_utc":null},{"commit":"7028e87f9b411c0cfb92eee7fc0667cdcb9a54ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 13:03:51 2022 -0800","stats":{"files_changed":87,"insertions":22,"deletions":445,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md"],"file_stats":[{"name":"docgen.sh","lines_changed":26},{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/csv_s.md","lines_changed":5},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":14},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iostat.md","lines_changed":5},{"name":"docs/parsers/iostat_s.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jar_manifest.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/ping_s.md","lines_changed":5},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/sfdisk.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/stat_s.md","lines_changed":5},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/systeminfo.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":8},{"name":"docs/parsers/ufw.md","lines_changed":5},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/vmstat.md","lines_changed":5},{"name":"docs/parsers/vmstat_s.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5},{"name":"docs/parsers/zipinfo.md","lines_changed":5},{"name":"docs/readme.md","lines_changed":4}]},"message":"remove TOC for parsers","epoch":1643231031,"epoch_utc":null},{"commit":"590728f9c1ccfdc078e600d1f35ad4ba51f70d36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 11:50:25 2022 -0800","stats":{"files_changed":91,"insertions":506,"deletions":17,"files":["docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/utils.md","jc/lib.py"],"file_stats":[{"name":"docgen.sh","lines_changed":28},{"name":"docs/lib.md","lines_changed":13},{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/csv_s.md","lines_changed":5},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":14},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iostat.md","lines_changed":5},{"name":"docs/parsers/iostat_s.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jar_manifest.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/ping_s.md","lines_changed":5},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/sfdisk.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/stat_s.md","lines_changed":5},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/systeminfo.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":8},{"name":"docs/parsers/ufw.md","lines_changed":5},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/universal.md","lines_changed":6},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/vmstat.md","lines_changed":5},{"name":"docs/parsers/vmstat_s.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5},{"name":"docs/parsers/zipinfo.md","lines_changed":5},{"name":"docs/readme.md","lines_changed":4},{"name":"docs/utils.md","lines_changed":17},{"name":"jc/lib.py","lines_changed":18}]},"message":"try new pydoc-markdown formatting options","epoch":1643226625,"epoch_utc":null},{"commit":"7cc147fe2d7b278bcab905bc4c3b70b5265e1510","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 19:28:37 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":44,"files":["docgen.sh","docgen.sh.old"],"file_stats":[{"name":"docgen.sh","lines_changed":4},{"name":"docgen.sh.old","lines_changed":44}]},"message":"increase heading size","epoch":1643167717,"epoch_utc":null},{"commit":"3cfb3965bb25024a7b03870b71f02194e278919b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 19:28:04 2022 -0800","stats":{"files_changed":3,"insertions":19,"deletions":19,"files":["docs/lib.md","docs/parsers/universal.md","docs/utils.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":10},{"name":"docs/parsers/universal.md","lines_changed":4},{"name":"docs/utils.md","lines_changed":24}]},"message":"formatting","epoch":1643167684,"epoch_utc":null},{"commit":"155d4213225fe4fcf4a059fb63c1ab9fc493177e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 19:18:54 2022 -0800","stats":{"files_changed":86,"insertions":182,"deletions":181,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"],"file_stats":[{"name":"docgen.sh","lines_changed":3},{"name":"docs/parsers/acpi.md","lines_changed":4},{"name":"docs/parsers/airport.md","lines_changed":4},{"name":"docs/parsers/airport_s.md","lines_changed":4},{"name":"docs/parsers/arp.md","lines_changed":4},{"name":"docs/parsers/blkid.md","lines_changed":4},{"name":"docs/parsers/cksum.md","lines_changed":4},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"docs/parsers/crontab_u.md","lines_changed":4},{"name":"docs/parsers/csv.md","lines_changed":4},{"name":"docs/parsers/csv_s.md","lines_changed":4},{"name":"docs/parsers/date.md","lines_changed":4},{"name":"docs/parsers/df.md","lines_changed":4},{"name":"docs/parsers/dig.md","lines_changed":4},{"name":"docs/parsers/dir.md","lines_changed":4},{"name":"docs/parsers/dmidecode.md","lines_changed":4},{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"docs/parsers/du.md","lines_changed":4},{"name":"docs/parsers/env.md","lines_changed":4},{"name":"docs/parsers/file.md","lines_changed":4},{"name":"docs/parsers/finger.md","lines_changed":4},{"name":"docs/parsers/free.md","lines_changed":4},{"name":"docs/parsers/fstab.md","lines_changed":4},{"name":"docs/parsers/group.md","lines_changed":4},{"name":"docs/parsers/gshadow.md","lines_changed":4},{"name":"docs/parsers/hash.md","lines_changed":4},{"name":"docs/parsers/hashsum.md","lines_changed":4},{"name":"docs/parsers/hciconfig.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":4},{"name":"docs/parsers/hosts.md","lines_changed":4},{"name":"docs/parsers/id.md","lines_changed":4},{"name":"docs/parsers/ifconfig.md","lines_changed":20},{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"docs/parsers/iostat.md","lines_changed":4},{"name":"docs/parsers/iostat_s.md","lines_changed":4},{"name":"docs/parsers/iptables.md","lines_changed":4},{"name":"docs/parsers/iw_scan.md","lines_changed":4},{"name":"docs/parsers/jar_manifest.md","lines_changed":4},{"name":"docs/parsers/jobs.md","lines_changed":4},{"name":"docs/parsers/kv.md","lines_changed":4},{"name":"docs/parsers/last.md","lines_changed":4},{"name":"docs/parsers/ls.md","lines_changed":4},{"name":"docs/parsers/ls_s.md","lines_changed":4},{"name":"docs/parsers/lsblk.md","lines_changed":4},{"name":"docs/parsers/lsmod.md","lines_changed":4},{"name":"docs/parsers/lsof.md","lines_changed":4},{"name":"docs/parsers/lsusb.md","lines_changed":4},{"name":"docs/parsers/mount.md","lines_changed":4},{"name":"docs/parsers/netstat.md","lines_changed":4},{"name":"docs/parsers/ntpq.md","lines_changed":4},{"name":"docs/parsers/passwd.md","lines_changed":4},{"name":"docs/parsers/ping.md","lines_changed":4},{"name":"docs/parsers/ping_s.md","lines_changed":4},{"name":"docs/parsers/pip_list.md","lines_changed":4},{"name":"docs/parsers/pip_show.md","lines_changed":4},{"name":"docs/parsers/ps.md","lines_changed":4},{"name":"docs/parsers/route.md","lines_changed":4},{"name":"docs/parsers/rpm_qi.md","lines_changed":4},{"name":"docs/parsers/sfdisk.md","lines_changed":4},{"name":"docs/parsers/shadow.md","lines_changed":4},{"name":"docs/parsers/ss.md","lines_changed":4},{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"docs/parsers/stat_s.md","lines_changed":4},{"name":"docs/parsers/sysctl.md","lines_changed":4},{"name":"docs/parsers/systemctl.md","lines_changed":4},{"name":"docs/parsers/systemctl_lj.md","lines_changed":4},{"name":"docs/parsers/systemctl_ls.md","lines_changed":4},{"name":"docs/parsers/systemctl_luf.md","lines_changed":4},{"name":"docs/parsers/systeminfo.md","lines_changed":4},{"name":"docs/parsers/time.md","lines_changed":4},{"name":"docs/parsers/timedatectl.md","lines_changed":4},{"name":"docs/parsers/tracepath.md","lines_changed":4},{"name":"docs/parsers/traceroute.md","lines_changed":8},{"name":"docs/parsers/ufw.md","lines_changed":4},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":4},{"name":"docs/parsers/uname.md","lines_changed":4},{"name":"docs/parsers/upower.md","lines_changed":4},{"name":"docs/parsers/uptime.md","lines_changed":4},{"name":"docs/parsers/vmstat.md","lines_changed":4},{"name":"docs/parsers/vmstat_s.md","lines_changed":4},{"name":"docs/parsers/w.md","lines_changed":4},{"name":"docs/parsers/wc.md","lines_changed":4},{"name":"docs/parsers/who.md","lines_changed":4},{"name":"docs/parsers/xml.md","lines_changed":4},{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"docs/parsers/zipinfo.md","lines_changed":4}]},"message":"formatting","epoch":1643167134,"epoch_utc":null},{"commit":"d3e10bb87bdb32396bce95f74e62a023f4efaf99","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:59:40 2022 -0800","stats":{"files_changed":1,"insertions":291,"deletions":0,"files":["docs/parsers/lsusb.md"],"file_stats":[{"name":"docs/parsers/lsusb.md","lines_changed":291}]},"message":"add lsusb docs","epoch":1643165980,"epoch_utc":null},{"commit":"fd5433ee6220357e59633c78b689aa432d056b43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:58:09 2022 -0800","stats":{"files_changed":3,"insertions":6,"deletions":293,"files":["docs/lib.md","docs/parsers/lsusb.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":4},{"name":"docs/parsers/lsusb.md","lines_changed":291},{"name":"jc/lib.py","lines_changed":4}]},"message":"parse docstring formatting","epoch":1643165889,"epoch_utc":null},{"commit":"4568f2d06e8fc1c465c86c318d925586481af062","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:51:56 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":4},{"name":"jc/lib.py","lines_changed":4}]},"message":"formatting for parse docstring","epoch":1643165516,"epoch_utc":null},{"commit":"c36e513d1bcc07cd8f01ff59199950e5396da51b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:42:55 2022 -0800","stats":{"files_changed":86,"insertions":88,"deletions":91,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"],"file_stats":[{"name":"docgen.sh","lines_changed":9},{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/dpkg_l.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/finger.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/gshadow.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iostat.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/jar_manifest.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/kv.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/stat_s.md","lines_changed":2},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"docs/parsers/zipinfo.md","lines_changed":2}]},"message":"formatting","epoch":1643164975,"epoch_utc":null},{"commit":"8e089baf3fe30fed80e1c5cdde7c3046bb70ca5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:38:26 2022 -0800","stats":{"files_changed":86,"insertions":8,"deletions":855,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"],"file_stats":[{"name":"docgen.sh","lines_changed":13},{"name":"docs/parsers/acpi.md","lines_changed":10},{"name":"docs/parsers/airport.md","lines_changed":10},{"name":"docs/parsers/airport_s.md","lines_changed":10},{"name":"docs/parsers/arp.md","lines_changed":10},{"name":"docs/parsers/blkid.md","lines_changed":10},{"name":"docs/parsers/cksum.md","lines_changed":10},{"name":"docs/parsers/crontab.md","lines_changed":10},{"name":"docs/parsers/crontab_u.md","lines_changed":10},{"name":"docs/parsers/csv.md","lines_changed":10},{"name":"docs/parsers/csv_s.md","lines_changed":10},{"name":"docs/parsers/date.md","lines_changed":10},{"name":"docs/parsers/df.md","lines_changed":10},{"name":"docs/parsers/dig.md","lines_changed":10},{"name":"docs/parsers/dir.md","lines_changed":10},{"name":"docs/parsers/dmidecode.md","lines_changed":10},{"name":"docs/parsers/dpkg_l.md","lines_changed":10},{"name":"docs/parsers/du.md","lines_changed":10},{"name":"docs/parsers/env.md","lines_changed":10},{"name":"docs/parsers/file.md","lines_changed":10},{"name":"docs/parsers/finger.md","lines_changed":10},{"name":"docs/parsers/free.md","lines_changed":10},{"name":"docs/parsers/fstab.md","lines_changed":10},{"name":"docs/parsers/group.md","lines_changed":10},{"name":"docs/parsers/gshadow.md","lines_changed":10},{"name":"docs/parsers/hash.md","lines_changed":10},{"name":"docs/parsers/hashsum.md","lines_changed":10},{"name":"docs/parsers/hciconfig.md","lines_changed":10},{"name":"docs/parsers/history.md","lines_changed":10},{"name":"docs/parsers/hosts.md","lines_changed":10},{"name":"docs/parsers/id.md","lines_changed":10},{"name":"docs/parsers/ifconfig.md","lines_changed":10},{"name":"docs/parsers/ini.md","lines_changed":10},{"name":"docs/parsers/iostat.md","lines_changed":10},{"name":"docs/parsers/iostat_s.md","lines_changed":10},{"name":"docs/parsers/iptables.md","lines_changed":10},{"name":"docs/parsers/iw_scan.md","lines_changed":10},{"name":"docs/parsers/jar_manifest.md","lines_changed":10},{"name":"docs/parsers/jobs.md","lines_changed":10},{"name":"docs/parsers/kv.md","lines_changed":10},{"name":"docs/parsers/last.md","lines_changed":10},{"name":"docs/parsers/ls.md","lines_changed":10},{"name":"docs/parsers/ls_s.md","lines_changed":10},{"name":"docs/parsers/lsblk.md","lines_changed":10},{"name":"docs/parsers/lsmod.md","lines_changed":10},{"name":"docs/parsers/lsof.md","lines_changed":10},{"name":"docs/parsers/lsusb.md","lines_changed":10},{"name":"docs/parsers/mount.md","lines_changed":10},{"name":"docs/parsers/netstat.md","lines_changed":10},{"name":"docs/parsers/ntpq.md","lines_changed":10},{"name":"docs/parsers/passwd.md","lines_changed":10},{"name":"docs/parsers/ping.md","lines_changed":10},{"name":"docs/parsers/ping_s.md","lines_changed":10},{"name":"docs/parsers/pip_list.md","lines_changed":10},{"name":"docs/parsers/pip_show.md","lines_changed":10},{"name":"docs/parsers/ps.md","lines_changed":10},{"name":"docs/parsers/route.md","lines_changed":10},{"name":"docs/parsers/rpm_qi.md","lines_changed":10},{"name":"docs/parsers/sfdisk.md","lines_changed":10},{"name":"docs/parsers/shadow.md","lines_changed":10},{"name":"docs/parsers/ss.md","lines_changed":10},{"name":"docs/parsers/stat.md","lines_changed":10},{"name":"docs/parsers/stat_s.md","lines_changed":10},{"name":"docs/parsers/sysctl.md","lines_changed":10},{"name":"docs/parsers/systemctl.md","lines_changed":10},{"name":"docs/parsers/systemctl_lj.md","lines_changed":10},{"name":"docs/parsers/systemctl_ls.md","lines_changed":10},{"name":"docs/parsers/systemctl_luf.md","lines_changed":10},{"name":"docs/parsers/systeminfo.md","lines_changed":10},{"name":"docs/parsers/time.md","lines_changed":10},{"name":"docs/parsers/timedatectl.md","lines_changed":10},{"name":"docs/parsers/tracepath.md","lines_changed":10},{"name":"docs/parsers/traceroute.md","lines_changed":10},{"name":"docs/parsers/ufw.md","lines_changed":10},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":10},{"name":"docs/parsers/uname.md","lines_changed":10},{"name":"docs/parsers/upower.md","lines_changed":10},{"name":"docs/parsers/uptime.md","lines_changed":10},{"name":"docs/parsers/vmstat.md","lines_changed":10},{"name":"docs/parsers/vmstat_s.md","lines_changed":10},{"name":"docs/parsers/w.md","lines_changed":10},{"name":"docs/parsers/wc.md","lines_changed":10},{"name":"docs/parsers/who.md","lines_changed":10},{"name":"docs/parsers/xml.md","lines_changed":10},{"name":"docs/parsers/yaml.md","lines_changed":10},{"name":"docs/parsers/zipinfo.md","lines_changed":10}]},"message":"remove info class from docs","epoch":1643164706,"epoch_utc":null},{"commit":"386f6c317e104e797c2b55e3d21c8b064a83ac78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:03:34 2022 -0800","stats":{"files_changed":89,"insertions":9552,"deletions":9939,"files":["docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/utils.md"],"file_stats":[{"name":"docgen.sh","lines_changed":10},{"name":"docs/lib.md","lines_changed":105},{"name":"docs/parsers/acpi.md","lines_changed":440},{"name":"docs/parsers/airport.md","lines_changed":146},{"name":"docs/parsers/airport_s.md","lines_changed":202},{"name":"docs/parsers/arp.md","lines_changed":220},{"name":"docs/parsers/blkid.md","lines_changed":230},{"name":"docs/parsers/cksum.md","lines_changed":90},{"name":"docs/parsers/crontab.md","lines_changed":330},{"name":"docs/parsers/crontab_u.md","lines_changed":326},{"name":"docs/parsers/csv.md","lines_changed":140},{"name":"docs/parsers/csv_s.md","lines_changed":114},{"name":"docs/parsers/date.md","lines_changed":132},{"name":"docs/parsers/df.md","lines_changed":184},{"name":"docs/parsers/dig.md","lines_changed":614},{"name":"docs/parsers/dir.md","lines_changed":210},{"name":"docs/parsers/dmidecode.md","lines_changed":240},{"name":"docs/parsers/dpkg_l.md","lines_changed":244},{"name":"docs/parsers/du.md","lines_changed":164},{"name":"docs/parsers/env.md","lines_changed":126},{"name":"docs/parsers/file.md","lines_changed":114},{"name":"docs/parsers/finger.md","lines_changed":166},{"name":"docs/parsers/free.md","lines_changed":134},{"name":"docs/parsers/fstab.md","lines_changed":164},{"name":"docs/parsers/group.md","lines_changed":212},{"name":"docs/parsers/gshadow.md","lines_changed":148},{"name":"docs/parsers/hash.md","lines_changed":68},{"name":"docs/parsers/hashsum.md","lines_changed":106},{"name":"docs/parsers/hciconfig.md","lines_changed":620},{"name":"docs/parsers/history.md","lines_changed":106},{"name":"docs/parsers/hosts.md","lines_changed":142},{"name":"docs/parsers/id.md","lines_changed":200},{"name":"docs/parsers/ifconfig.md","lines_changed":388},{"name":"docs/parsers/ini.md","lines_changed":110},{"name":"docs/parsers/iostat.md","lines_changed":304},{"name":"docs/parsers/iostat_s.md","lines_changed":198},{"name":"docs/parsers/iptables.md","lines_changed":312},{"name":"docs/parsers/iw_scan.md","lines_changed":226},{"name":"docs/parsers/jar_manifest.md","lines_changed":148},{"name":"docs/parsers/jobs.md","lines_changed":170},{"name":"docs/parsers/kv.md","lines_changed":86},{"name":"docs/parsers/last.md","lines_changed":186},{"name":"docs/parsers/ls.md","lines_changed":190},{"name":"docs/parsers/ls_s.md","lines_changed":130},{"name":"docs/parsers/lsblk.md","lines_changed":534},{"name":"docs/parsers/lsmod.md","lines_changed":240},{"name":"docs/parsers/lsof.md","lines_changed":228},{"name":"docs/parsers/lsusb.md","lines_changed":502},{"name":"docs/parsers/mount.md","lines_changed":140},{"name":"docs/parsers/netstat.md","lines_changed":688},{"name":"docs/parsers/ntpq.md","lines_changed":402},{"name":"docs/parsers/passwd.md","lines_changed":182},{"name":"docs/parsers/ping.md","lines_changed":308},{"name":"docs/parsers/ping_s.md","lines_changed":160},{"name":"docs/parsers/pip_list.md","lines_changed":84},{"name":"docs/parsers/pip_show.md","lines_changed":120},{"name":"docs/parsers/ps.md","lines_changed":394},{"name":"docs/parsers/route.md","lines_changed":206},{"name":"docs/parsers/rpm_qi.md","lines_changed":296},{"name":"docs/parsers/sfdisk.md","lines_changed":376},{"name":"docs/parsers/shadow.md","lines_changed":196},{"name":"docs/parsers/ss.md","lines_changed":538},{"name":"docs/parsers/stat.md","lines_changed":318},{"name":"docs/parsers/stat_s.md","lines_changed":152},{"name":"docs/parsers/sysctl.md","lines_changed":100},{"name":"docs/parsers/systemctl.md","lines_changed":106},{"name":"docs/parsers/systemctl_lj.md","lines_changed":140},{"name":"docs/parsers/systemctl_ls.md","lines_changed":90},{"name":"docs/parsers/systemctl_luf.md","lines_changed":82},{"name":"docs/parsers/systeminfo.md","lines_changed":396},{"name":"docs/parsers/time.md","lines_changed":242},{"name":"docs/parsers/timedatectl.md","lines_changed":112},{"name":"docs/parsers/tracepath.md","lines_changed":248},{"name":"docs/parsers/traceroute.md","lines_changed":220},{"name":"docs/parsers/ufw.md","lines_changed":390},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":250},{"name":"docs/parsers/uname.md","lines_changed":80},{"name":"docs/parsers/universal.md","lines_changed":72},{"name":"docs/parsers/upower.md","lines_changed":374},{"name":"docs/parsers/uptime.md","lines_changed":120},{"name":"docs/parsers/vmstat.md","lines_changed":226},{"name":"docs/parsers/vmstat_s.md","lines_changed":172},{"name":"docs/parsers/w.md","lines_changed":196},{"name":"docs/parsers/wc.md","lines_changed":98},{"name":"docs/parsers/who.md","lines_changed":250},{"name":"docs/parsers/xml.md","lines_changed":134},{"name":"docs/parsers/yaml.md","lines_changed":162},{"name":"docs/parsers/zipinfo.md","lines_changed":138},{"name":"docs/utils.md","lines_changed":134}]},"message":"update markdown processor settings","epoch":1643162614,"epoch_utc":null},{"commit":"75cd84ce8a86b3357c6cf5fe4fbc62d0f298a29a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 17:07:47 2022 -0800","stats":{"files_changed":94,"insertions":11423,"deletions":10081,"files":["README.md","docgen.sh","docgen.sh.old","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/utils.md","jc/cli.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docgen.sh","lines_changed":12},{"name":"docgen.sh.old","lines_changed":44},{"name":"docs/lib.md","lines_changed":151},{"name":"docs/parsers/acpi.md","lines_changed":454},{"name":"docs/parsers/airport.md","lines_changed":166},{"name":"docs/parsers/airport_s.md","lines_changed":224},{"name":"docs/parsers/arp.md","lines_changed":240},{"name":"docs/parsers/blkid.md","lines_changed":250},{"name":"docs/parsers/cksum.md","lines_changed":110},{"name":"docs/parsers/crontab.md","lines_changed":350},{"name":"docs/parsers/crontab_u.md","lines_changed":348},{"name":"docs/parsers/csv.md","lines_changed":160},{"name":"docs/parsers/csv_s.md","lines_changed":120},{"name":"docs/parsers/date.md","lines_changed":152},{"name":"docs/parsers/df.md","lines_changed":204},{"name":"docs/parsers/dig.md","lines_changed":634},{"name":"docs/parsers/dir.md","lines_changed":230},{"name":"docs/parsers/dmidecode.md","lines_changed":260},{"name":"docs/parsers/dpkg_l.md","lines_changed":266},{"name":"docs/parsers/du.md","lines_changed":184},{"name":"docs/parsers/env.md","lines_changed":146},{"name":"docs/parsers/file.md","lines_changed":134},{"name":"docs/parsers/finger.md","lines_changed":186},{"name":"docs/parsers/free.md","lines_changed":154},{"name":"docs/parsers/fstab.md","lines_changed":184},{"name":"docs/parsers/group.md","lines_changed":232},{"name":"docs/parsers/gshadow.md","lines_changed":168},{"name":"docs/parsers/hash.md","lines_changed":88},{"name":"docs/parsers/hashsum.md","lines_changed":126},{"name":"docs/parsers/hciconfig.md","lines_changed":634},{"name":"docs/parsers/history.md","lines_changed":126},{"name":"docs/parsers/hosts.md","lines_changed":162},{"name":"docs/parsers/id.md","lines_changed":220},{"name":"docs/parsers/ifconfig.md","lines_changed":472},{"name":"docs/parsers/ini.md","lines_changed":130},{"name":"docs/parsers/iostat.md","lines_changed":324},{"name":"docs/parsers/iostat_s.md","lines_changed":220},{"name":"docs/parsers/iptables.md","lines_changed":332},{"name":"docs/parsers/iw_scan.md","lines_changed":248},{"name":"docs/parsers/jar_manifest.md","lines_changed":170},{"name":"docs/parsers/jobs.md","lines_changed":190},{"name":"docs/parsers/kv.md","lines_changed":106},{"name":"docs/parsers/last.md","lines_changed":207},{"name":"docs/parsers/ls.md","lines_changed":210},{"name":"docs/parsers/ls_s.md","lines_changed":152},{"name":"docs/parsers/lsblk.md","lines_changed":548},{"name":"docs/parsers/lsmod.md","lines_changed":260},{"name":"docs/parsers/lsof.md","lines_changed":248},{"name":"docs/parsers/lsusb.md","lines_changed":518},{"name":"docs/parsers/mount.md","lines_changed":160},{"name":"docs/parsers/netstat.md","lines_changed":702},{"name":"docs/parsers/ntpq.md","lines_changed":422},{"name":"docs/parsers/passwd.md","lines_changed":202},{"name":"docs/parsers/ping.md","lines_changed":328},{"name":"docs/parsers/ping_s.md","lines_changed":182},{"name":"docs/parsers/pip_list.md","lines_changed":106},{"name":"docs/parsers/pip_show.md","lines_changed":142},{"name":"docs/parsers/ps.md","lines_changed":414},{"name":"docs/parsers/route.md","lines_changed":226},{"name":"docs/parsers/rpm_qi.md","lines_changed":318},{"name":"docs/parsers/sfdisk.md","lines_changed":396},{"name":"docs/parsers/shadow.md","lines_changed":216},{"name":"docs/parsers/ss.md","lines_changed":552},{"name":"docs/parsers/stat.md","lines_changed":338},{"name":"docs/parsers/stat_s.md","lines_changed":174},{"name":"docs/parsers/sysctl.md","lines_changed":120},{"name":"docs/parsers/systemctl.md","lines_changed":126},{"name":"docs/parsers/systemctl_lj.md","lines_changed":162},{"name":"docs/parsers/systemctl_ls.md","lines_changed":112},{"name":"docs/parsers/systemctl_luf.md","lines_changed":104},{"name":"docs/parsers/systeminfo.md","lines_changed":416},{"name":"docs/parsers/time.md","lines_changed":262},{"name":"docs/parsers/timedatectl.md","lines_changed":132},{"name":"docs/parsers/tracepath.md","lines_changed":268},{"name":"docs/parsers/traceroute.md","lines_changed":288},{"name":"docs/parsers/ufw.md","lines_changed":410},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":272},{"name":"docs/parsers/uname.md","lines_changed":100},{"name":"docs/parsers/universal.md","lines_changed":85},{"name":"docs/parsers/upower.md","lines_changed":394},{"name":"docs/parsers/uptime.md","lines_changed":140},{"name":"docs/parsers/vmstat.md","lines_changed":246},{"name":"docs/parsers/vmstat_s.md","lines_changed":194},{"name":"docs/parsers/w.md","lines_changed":216},{"name":"docs/parsers/wc.md","lines_changed":118},{"name":"docs/parsers/who.md","lines_changed":270},{"name":"docs/parsers/xml.md","lines_changed":154},{"name":"docs/parsers/yaml.md","lines_changed":182},{"name":"docs/parsers/zipinfo.md","lines_changed":158},{"name":"docs/readme.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":223},{"name":"jc/cli.py","lines_changed":4},{"name":"man/jc.1","lines_changed":12}]},"message":"try new markdown conversion","epoch":1643159267,"epoch_utc":null},{"commit":"6fad44e35df5d0e33e716d0fcb84ed309e6fd30b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 16:28:29 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"fix type hint","epoch":1643156909,"epoch_utc":null},{"commit":"1caac750daa25a5abeb1289964e918ec06289bfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 16:27:29 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":4}]},"message":"Update type hints","epoch":1643156849,"epoch_utc":null},{"commit":"16370dcb3d5cf1304c2340ef2253ef2987a982b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 15:49:48 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"update type hints","epoch":1643154588,"epoch_utc":null},{"commit":"c1302f2573993a6908001d6df0697486f54a9e7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 15:49:31 2022 -0800","stats":{"files_changed":1,"insertions":19,"deletions":8,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":27}]},"message":"add type-hints to public api","epoch":1643154571,"epoch_utc":null},{"commit":"6f0ffe0955e4d9d6cc82552cf4e4f419e3ff3756","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 15:48:00 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"docu update","epoch":1643154480,"epoch_utc":null},{"commit":"1f89745fe7cca3a0ac27445942098b717675a481","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 11:17:18 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1643138238,"epoch_utc":null},{"commit":"a46ac18ef775bb2c52675e61e11c5d92f33cbe81","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 10:47:05 2022 -0800","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"doc update","epoch":1643136425,"epoch_utc":null},{"commit":"1a05f1c575b57456481e41baaf551cef30115966","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 10:46:58 2022 -0800","stats":{"files_changed":3,"insertions":64,"deletions":54,"files":["jc/__init__.py","jc/cli.py","jc/lib.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":4},{"name":"jc/cli.py","lines_changed":48},{"name":"jc/lib.py","lines_changed":66}]},"message":"add parser info functions. move _get_parser functionality from cli to lib","epoch":1643136418,"epoch_utc":null},{"commit":"08f818aa42ca68050a79ec387c42bff265257fd5","merge":"027c231 b389665","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 00:45:53 2022 +0000","message":"Merge pull request #199 from kellyjonbrazil/master\n\nsync to dev","epoch":1643100353,"epoch_utc":1643071553},{"commit":"b3896650c230b4acc73704a50c93ee74e4034eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 23 13:40:50 2022 -0800","stats":{"files_changed":2,"insertions":62,"deletions":104,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":83},{"name":"templates/readme_template","lines_changed":83}]},"message":"revert column formatting","epoch":1642974050,"epoch_utc":null},{"commit":"f285539526998a5097943c71dcecb2979036b2b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 23 13:36:22 2022 -0800","stats":{"files_changed":2,"insertions":104,"deletions":62,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":83},{"name":"templates/readme_template","lines_changed":83}]},"message":"conform to 80 columns","epoch":1642973782,"epoch_utc":null},{"commit":"a896dcdf3b31b60582ebb1b3bca5d1103f998dd6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 23 13:14:00 2022 -0800","stats":{"files_changed":2,"insertions":338,"deletions":120,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":229},{"name":"templates/readme_template","lines_changed":229}]},"message":"formatting","epoch":1642972440,"epoch_utc":null},{"commit":"0a187d4ed08173ec360a006ae2367bb1f2f96c52","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 23 10:04:19 2022 -0800","stats":{"files_changed":3,"insertions":7,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":4}]},"message":"add console interview links","epoch":1642961059,"epoch_utc":null},{"commit":"2d65bc57d5a396e6683f970194de29494b5c1272","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 16:58:45 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":6},{"name":"jc/__init__.py","lines_changed":6}]},"message":"add quotes","epoch":1642813125,"epoch_utc":null},{"commit":"ab63809fde0cefe1f0401d957a3736fdb760f0cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 16:13:00 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"update description","epoch":1642810380,"epoch_utc":null},{"commit":"6f04707dc63936efd0e533ae36e1b39ead10c466","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 15:33:43 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add python package doc info to top of page","epoch":1642808023,"epoch_utc":null},{"commit":"d14a86a9b58bdc3cb0c8df1dfa495aefdaab8033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 15:29:46 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2}]},"message":"fix typo","epoch":1642807786,"epoch_utc":null},{"commit":"8e6a31d3da19926ac46744e02b27a899ca5fbd7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 14:08:19 2022 -0800","stats":{"files_changed":6,"insertions":14,"deletions":8,"files":["CHANGELOG","docs/readme.md","jc/__init__.py","jc/lib.py","man/jc.1","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4},{"name":"jc/lib.py","lines_changed":7},{"name":"man/jc.1","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"minor fix for macOS binary","epoch":1642802899,"epoch_utc":null},{"commit":"6e7b6afe87355e96422bb2560ffcbd5e79d28f04","merge":"70cb445 027c231","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 13:52:16 2022 -0800","message":"Merge pull request #198 from kellyjonbrazil/dev\n\nDev v1.18.0","epoch":1642801936,"epoch_utc":null},{"commit":"027c231097a002526350a93322407582a85db0cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 13:48:38 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"formatting","epoch":1642801718,"epoch_utc":null},{"commit":"f1cf7d1f953586dd44a4463d924f1a1f52717c37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:51:26 2022 -0800","stats":{"files_changed":2,"insertions":7,"deletions":5,"files":["jc/parsers/foo.py","jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":6},{"name":"jc/parsers/foo_s.py","lines_changed":6}]},"message":"add helper function info","epoch":1642798286,"epoch_utc":null},{"commit":"df611cc263f50285e74ceb3381f55b43a74870a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:41:52 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":6},{"name":"jc/__init__.py","lines_changed":6}]},"message":"formatting","epoch":1642797712,"epoch_utc":null},{"commit":"0f3143bbbb593340190e66729580146410012e14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:39:22 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":6},{"name":"jc/__init__.py","lines_changed":6}]},"message":"formatting","epoch":1642797562,"epoch_utc":null},{"commit":"c280757b7624a46543e481ca47a6e084d2d6f519","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:35:48 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"formatting","epoch":1642797348,"epoch_utc":null},{"commit":"d30b9d84ef5ec3a2a504f7ea251c932b8c9ea878","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:33:23 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"formatting","epoch":1642797203,"epoch_utc":null},{"commit":"50ded1dbd97d26cf01d7e1a98b40e0f0f7d02202","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:31:03 2022 -0800","stats":{"files_changed":1,"insertions":10,"deletions":4,"files":["docs/readme.md"],"file_stats":[{"name":"docs/readme.md","lines_changed":14}]},"message":"doc update","epoch":1642797063,"epoch_utc":null},{"commit":"e319aea5a45c598a44f35b4e58131d977509e4f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:29:36 2022 -0800","stats":{"files_changed":1,"insertions":10,"deletions":4,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":14}]},"message":"add doc version info","epoch":1642796976,"epoch_utc":null},{"commit":"ba86509c1d8700a50fe14e9d931ee57261306c5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:15:34 2022 -0800","stats":{"files_changed":1,"insertions":3,"deletions":9,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":12}]},"message":"simplify OSError exception handling","epoch":1642796134,"epoch_utc":null},{"commit":"0a9279ae6bfdd1aa59f5e9b31ce0af3bfec19f96","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:15:16 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["CHANGELOG","tests/test_lib.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":5},{"name":"tests/test_lib.py","lines_changed":1}]},"message":"doc update","epoch":1642796116,"epoch_utc":null},{"commit":"a13dde12af01b4473aa9a34b8a0d7387fb48500a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 07:42:03 2022 -0800","stats":{"files_changed":173,"insertions":173,"deletions":173,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/dpkg_l.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/finger.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/gshadow.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iostat.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/jar_manifest.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/kv.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/stat_s.md","lines_changed":2},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"docs/parsers/zipinfo.md","lines_changed":2},{"name":"jc/parsers/acpi.py","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/blkid.py","lines_changed":2},{"name":"jc/parsers/cksum.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"jc/parsers/csv.py","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/dir.py","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":2},{"name":"jc/parsers/dpkg_l.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/finger.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/group.py","lines_changed":2},{"name":"jc/parsers/gshadow.py","lines_changed":2},{"name":"jc/parsers/hash.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":2},{"name":"jc/parsers/hciconfig.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/iostat.py","lines_changed":2},{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2},{"name":"jc/parsers/jar_manifest.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/kv.py","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/lsusb.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/ntpq.py","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":2},{"name":"jc/parsers/ping.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/rpm_qi.py","lines_changed":2},{"name":"jc/parsers/sfdisk.py","lines_changed":2},{"name":"jc/parsers/shadow.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/stat_s.py","lines_changed":2},{"name":"jc/parsers/sysctl.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/systeminfo.py","lines_changed":2},{"name":"jc/parsers/time.py","lines_changed":2},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/ufw.py","lines_changed":2},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/parsers/wc.py","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":2},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2},{"name":"jc/parsers/zipinfo.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"change raw output wording","epoch":1642779723,"epoch_utc":null},{"commit":"e2ed358de1abefd737c187a324cbe4734d6975e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 15:31:24 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"changelog update","epoch":1642721484,"epoch_utc":null},{"commit":"a2cd3666210be3727a00c3405972f32fbd421046","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 15:01:49 2022 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["docs/_config.yml"],"file_stats":[{"name":"docs/_config.yml","lines_changed":1}]},"message":"Delete _config.yml","epoch":1642719709,"epoch_utc":null},{"commit":"15addd9bfc18a0e87beb97040b431c872b783662","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 09:59:23 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":8,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":5},{"name":"jc/parsers/universal.py","lines_changed":7}]},"message":"doc fix","epoch":1642701563,"epoch_utc":null},{"commit":"a4e34b0053ec0c032f4783caaa3e07fc2c685a98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 09:46:24 2022 -0800","stats":{"files_changed":2,"insertions":63,"deletions":0,"files":["docgen.sh","docs/parsers/universal.md"],"file_stats":[{"name":"docgen.sh","lines_changed":3},{"name":"docs/parsers/universal.md","lines_changed":60}]},"message":"add universal parser docs","epoch":1642700784,"epoch_utc":null},{"commit":"d09529ac302fbcc156d58cf836f8397c98121a76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 09:40:34 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"changelog update","epoch":1642700434,"epoch_utc":null},{"commit":"553097b5050dc02fbdaeec2e2e138e01bc6811d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 09:40:08 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":2}]},"message":"docstring update","epoch":1642700408,"epoch_utc":null},{"commit":"49c556857708307f617b2b516f2d281398681b5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 07:49:45 2022 -0800","stats":{"files_changed":7,"insertions":35,"deletions":15,"files":["README.md","docs/lib.md","docs/readme.md","jc/__init__.py","jc/lib.py","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/lib.md","lines_changed":9},{"name":"docs/readme.md","lines_changed":13},{"name":"jc/__init__.py","lines_changed":13},{"name":"jc/lib.py","lines_changed":9},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"module doc update","epoch":1642693785,"epoch_utc":null},{"commit":"6962b9ee8a52c924dc2de6b79ddeea3636e80fe4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 22:24:59 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":6,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":7},{"name":"jc/lib.py","lines_changed":7}]},"message":"formatting","epoch":1642659899,"epoch_utc":null},{"commit":"b4575a3f780f9aa2751c8b4789f67aaca32dd1cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 22:20:36 2022 -0800","stats":{"files_changed":3,"insertions":91,"deletions":1,"files":["docgen.sh","docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docgen.sh","lines_changed":4},{"name":"docs/lib.md","lines_changed":86},{"name":"jc/lib.py","lines_changed":2}]},"message":"add lib docs","epoch":1642659636,"epoch_utc":null},{"commit":"35b54d235d73b2ce658223be3d6095906f142d89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 21:53:13 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"templates/readme_template","lines_changed":3}]},"message":"add python package doc info","epoch":1642657993,"epoch_utc":null},{"commit":"583a5757e454a4e36b331057d1266279b55ee16a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 21:32:21 2022 -0800","stats":{"files_changed":18,"insertions":34,"deletions":30,"files":["docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/file.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/traceroute.md","docs/parsers/ufw_appinfo.md","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/file.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/traceroute.py","jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":6},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":9},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":6},{"name":"jc/parsers/ls.py","lines_changed":5},{"name":"jc/parsers/ls_s.py","lines_changed":9},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":2}]},"message":"formatting","epoch":1642656741,"epoch_utc":null},{"commit":"f355333eeed3c4afba844dc7bed5224356552adc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 19:27:46 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":8},{"name":"jc/__init__.py","lines_changed":8}]},"message":"formatting","epoch":1642649266,"epoch_utc":null},{"commit":"4d7df109604e4f8367904968602acfc05217a7fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 19:24:37 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"formatting","epoch":1642649077,"epoch_utc":null},{"commit":"66b2c28f4bc75fb76800f9fb7ea485eee194a9a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 19:22:08 2022 -0800","stats":{"files_changed":2,"insertions":24,"deletions":24,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":24},{"name":"jc/__init__.py","lines_changed":24}]},"message":"formatting","epoch":1642648928,"epoch_utc":null},{"commit":"299a9c6d88fdf1fede447b4057d8f4263daef733","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 19:19:25 2022 -0800","stats":{"files_changed":2,"insertions":25,"deletions":57,"files":["docs/parsers/csv.md","docs/readme.md"],"file_stats":[{"name":"docs/parsers/csv.md","lines_changed":4},{"name":"docs/readme.md","lines_changed":78}]},"message":"formatting","epoch":1642648765,"epoch_utc":null},{"commit":"bd391d979ce98b126dab0f012a56b3fcb1f73439","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 19:18:03 2022 -0800","stats":{"files_changed":1,"insertions":23,"deletions":55,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":78}]},"message":"add lib function docs","epoch":1642648683,"epoch_utc":null},{"commit":"7309bd2282445f6daef0b1491ff60b8104500abb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 18:47:44 2022 -0800","stats":{"files_changed":3,"insertions":19,"deletions":10,"files":["jc/lib.py","jc/parsers/csv.py","jc/parsers/universal.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":15},{"name":"jc/parsers/csv.py","lines_changed":4},{"name":"jc/parsers/universal.py","lines_changed":10}]},"message":"add get_help","epoch":1642646864,"epoch_utc":null},{"commit":"ce84c09d3394b598f19a3e012ef27ce4154e3b3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 18:44:26 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":3}]},"message":"add get_help()","epoch":1642646666,"epoch_utc":null},{"commit":"b4fffbb6476daf78fbdf19dbf31bbeeab950d2dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 17:30:14 2022 -0800","stats":{"files_changed":46,"insertions":501,"deletions":304,"files":["docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/history.md","docs/parsers/ini.md","docs/parsers/iostat_s.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsusb.md","docs/parsers/netstat.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/ps.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/upower.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/who.md"],"file_stats":[{"name":"docs/parsers/crontab.md","lines_changed":3},{"name":"docs/parsers/crontab_u.md","lines_changed":22},{"name":"docs/parsers/csv.md","lines_changed":9},{"name":"docs/parsers/csv_s.md","lines_changed":35},{"name":"docs/parsers/date.md","lines_changed":18},{"name":"docs/parsers/dig.md","lines_changed":16},{"name":"docs/parsers/dir.md","lines_changed":6},{"name":"docs/parsers/dpkg_l.md","lines_changed":7},{"name":"docs/parsers/du.md","lines_changed":20},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":8},{"name":"docs/parsers/ini.md","lines_changed":15},{"name":"docs/parsers/iostat_s.md","lines_changed":25},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jar_manifest.md","lines_changed":25},{"name":"docs/parsers/jobs.md","lines_changed":3},{"name":"docs/parsers/kv.md","lines_changed":11},{"name":"docs/parsers/last.md","lines_changed":10},{"name":"docs/parsers/ls.md","lines_changed":19},{"name":"docs/parsers/ls_s.md","lines_changed":51},{"name":"docs/parsers/lsblk.md","lines_changed":10},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":3},{"name":"docs/parsers/ping.md","lines_changed":32},{"name":"docs/parsers/ping_s.md","lines_changed":85},{"name":"docs/parsers/ps.md","lines_changed":8},{"name":"docs/parsers/rpm_qi.md","lines_changed":37},{"name":"docs/parsers/sfdisk.md","lines_changed":8},{"name":"docs/parsers/ss.md","lines_changed":6},{"name":"docs/parsers/stat.md","lines_changed":6},{"name":"docs/parsers/stat_s.md","lines_changed":27},{"name":"docs/parsers/sysctl.md","lines_changed":7},{"name":"docs/parsers/systemctl.md","lines_changed":4},{"name":"docs/parsers/systemctl_ls.md","lines_changed":3},{"name":"docs/parsers/systemctl_luf.md","lines_changed":3},{"name":"docs/parsers/systeminfo.md","lines_changed":19},{"name":"docs/parsers/time.md","lines_changed":33},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"docs/parsers/ufw.md","lines_changed":7},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":28},{"name":"docs/parsers/upower.md","lines_changed":16},{"name":"docs/parsers/vmstat.md","lines_changed":13},{"name":"docs/parsers/vmstat_s.md","lines_changed":111},{"name":"docs/parsers/who.md","lines_changed":7}]},"message":"formatting","epoch":1642642214,"epoch_utc":null},{"commit":"3701b4198aad1826ad6da571fbcaa530b057cc48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 17:29:22 2022 -0800","stats":{"files_changed":86,"insertions":710,"deletions":606,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":5},{"name":"jc/parsers/airport.py","lines_changed":7},{"name":"jc/parsers/airport_s.py","lines_changed":3},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/blkid.py","lines_changed":10},{"name":"jc/parsers/cksum.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":6},{"name":"jc/parsers/crontab_u.py","lines_changed":25},{"name":"jc/parsers/csv.py","lines_changed":14},{"name":"jc/parsers/csv_s.py","lines_changed":38},{"name":"jc/parsers/date.py","lines_changed":69},{"name":"jc/parsers/df.py","lines_changed":13},{"name":"jc/parsers/dig.py","lines_changed":28},{"name":"jc/parsers/dir.py","lines_changed":8},{"name":"jc/parsers/dmidecode.py","lines_changed":3},{"name":"jc/parsers/dpkg_l.py","lines_changed":10},{"name":"jc/parsers/du.py","lines_changed":23},{"name":"jc/parsers/env.py","lines_changed":7},{"name":"jc/parsers/file.py","lines_changed":6},{"name":"jc/parsers/finger.py","lines_changed":14},{"name":"jc/parsers/foo.py","lines_changed":3},{"name":"jc/parsers/foo_s.py","lines_changed":23},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/group.py","lines_changed":3},{"name":"jc/parsers/gshadow.py","lines_changed":3},{"name":"jc/parsers/hash.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":5},{"name":"jc/parsers/hciconfig.py","lines_changed":13},{"name":"jc/parsers/history.py","lines_changed":10},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":3},{"name":"jc/parsers/ifconfig.py","lines_changed":20},{"name":"jc/parsers/ini.py","lines_changed":23},{"name":"jc/parsers/iostat_s.py","lines_changed":25},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":11},{"name":"jc/parsers/jar_manifest.py","lines_changed":25},{"name":"jc/parsers/jobs.py","lines_changed":5},{"name":"jc/parsers/kv.py","lines_changed":13},{"name":"jc/parsers/last.py","lines_changed":17},{"name":"jc/parsers/ls.py","lines_changed":21},{"name":"jc/parsers/ls_s.py","lines_changed":53},{"name":"jc/parsers/lsblk.py","lines_changed":15},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/lsusb.py","lines_changed":5},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":20},{"name":"jc/parsers/ntpq.py","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":3},{"name":"jc/parsers/ping.py","lines_changed":46},{"name":"jc/parsers/ping_s.py","lines_changed":99},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":10},{"name":"jc/parsers/route.py","lines_changed":6},{"name":"jc/parsers/rpm_qi.py","lines_changed":40},{"name":"jc/parsers/sfdisk.py","lines_changed":16},{"name":"jc/parsers/shadow.py","lines_changed":3},{"name":"jc/parsers/ss.py","lines_changed":8},{"name":"jc/parsers/stat.py","lines_changed":12},{"name":"jc/parsers/stat_s.py","lines_changed":31},{"name":"jc/parsers/sysctl.py","lines_changed":10},{"name":"jc/parsers/systemctl.py","lines_changed":6},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":5},{"name":"jc/parsers/systemctl_luf.py","lines_changed":5},{"name":"jc/parsers/systeminfo.py","lines_changed":31},{"name":"jc/parsers/time.py","lines_changed":51},{"name":"jc/parsers/timedatectl.py","lines_changed":8},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":7},{"name":"jc/parsers/ufw.py","lines_changed":7},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":28},{"name":"jc/parsers/uname.py","lines_changed":4},{"name":"jc/parsers/universal.py","lines_changed":40},{"name":"jc/parsers/upower.py","lines_changed":32},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":28},{"name":"jc/parsers/vmstat_s.py","lines_changed":125},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/parsers/wc.py","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":10},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"formatting","epoch":1642642162,"epoch_utc":null},{"commit":"d4c34098fa7ad2098076f0fa0564467e5d06f916","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 11:31:29 2022 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":5}]},"message":"formatting","epoch":1642620689,"epoch_utc":null},{"commit":"b3c531193b3fc53697e7d7823576f481f9462d53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 11:08:59 2022 -0800","stats":{"files_changed":3,"insertions":125,"deletions":71,"files":["CHANGELOG","docs/utils.md","jc/utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docs/utils.md","lines_changed":79},{"name":"jc/utils.py","lines_changed":114}]},"message":"formatting","epoch":1642619339,"epoch_utc":null},{"commit":"1d0e07c77bab5c48405323e52873c7952dd0a587","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 10:31:46 2022 -0800","stats":{"files_changed":3,"insertions":57,"deletions":55,"files":["docs/readme.md","jc/__init__.py","jc/lib.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":33},{"name":"jc/__init__.py","lines_changed":33},{"name":"jc/lib.py","lines_changed":46}]},"message":"formatting","epoch":1642617106,"epoch_utc":null},{"commit":"06a322cf9c7468dc7e8ba05914e1d07bbc51f63a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 10:31:36 2022 -0800","stats":{"files_changed":1,"insertions":14,"deletions":8,"files":["tests/test_lib.py"],"file_stats":[{"name":"tests/test_lib.py","lines_changed":22}]},"message":"rename tests and add conversion function tests","epoch":1642617096,"epoch_utc":null},{"commit":"623d148712f93eacf9b7b5803140603f0af67acb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 09:30:53 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1642613453,"epoch_utc":null},{"commit":"647e83d0439a0937db14a2cc97929e38a6b6a43b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 09:29:09 2022 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["tests/test_lib.py"],"file_stats":[{"name":"tests/test_lib.py","lines_changed":3}]},"message":"add test to ensure there are zero plugin parsers installed during tests","epoch":1642613349,"epoch_utc":null},{"commit":"91a554464444da0cc3ed3b4d212539232411f6cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 09:28:35 2022 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":5}]},"message":"doc update","epoch":1642613315,"epoch_utc":null},{"commit":"a1190998aef1bf403ee34c38c1a0fbd6291ac38b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 09:15:24 2022 -0800","stats":{"files_changed":2,"insertions":82,"deletions":0,"files":["tests/test_jc.py","tests/test_lib.py"],"file_stats":[{"name":"tests/test_jc.py","lines_changed":41},{"name":"tests/test_lib.py","lines_changed":41}]},"message":"add jc and jc.lib tests","epoch":1642612524,"epoch_utc":null},{"commit":"097d7a1850f6f6df73a5761c657b73ef9dbd3e29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 09:15:11 2022 -0800","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":4}]},"message":"simplify __init__","epoch":1642612511,"epoch_utc":null},{"commit":"302bf72e720b3a67fbf1300eaff4f99fc343abeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 15:38:03 2022 -0800","stats":{"files_changed":138,"insertions":718,"deletions":6,"files":["docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py"],"file_stats":[{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":5},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iostat.md","lines_changed":5},{"name":"docs/parsers/iostat_s.md","lines_changed":7},{"name":"docs/parsers/iptables.md","lines_changed":7},{"name":"docs/parsers/iw_scan.md","lines_changed":9},{"name":"docs/parsers/jar_manifest.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":7},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/ping_s.md","lines_changed":7},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/sfdisk.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/stat_s.md","lines_changed":7},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/systeminfo.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"docs/parsers/ufw.md","lines_changed":5},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/vmstat.md","lines_changed":5},{"name":"docs/parsers/vmstat_s.md","lines_changed":7},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5},{"name":"docs/parsers/zipinfo.md","lines_changed":5},{"name":"jc/parsers/env.py","lines_changed":5},{"name":"jc/parsers/file.py","lines_changed":5},{"name":"jc/parsers/finger.py","lines_changed":5},{"name":"jc/parsers/foo.py","lines_changed":5},{"name":"jc/parsers/foo_s.py","lines_changed":7},{"name":"jc/parsers/free.py","lines_changed":5},{"name":"jc/parsers/fstab.py","lines_changed":5},{"name":"jc/parsers/group.py","lines_changed":5},{"name":"jc/parsers/gshadow.py","lines_changed":5},{"name":"jc/parsers/hash.py","lines_changed":5},{"name":"jc/parsers/hashsum.py","lines_changed":5},{"name":"jc/parsers/hciconfig.py","lines_changed":5},{"name":"jc/parsers/history.py","lines_changed":5},{"name":"jc/parsers/hosts.py","lines_changed":5},{"name":"jc/parsers/id.py","lines_changed":5},{"name":"jc/parsers/ifconfig.py","lines_changed":5},{"name":"jc/parsers/ini.py","lines_changed":5},{"name":"jc/parsers/iostat.py","lines_changed":5},{"name":"jc/parsers/iostat_s.py","lines_changed":7},{"name":"jc/parsers/iptables.py","lines_changed":7},{"name":"jc/parsers/iw_scan.py","lines_changed":9},{"name":"jc/parsers/jar_manifest.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":5},{"name":"jc/parsers/kv.py","lines_changed":5},{"name":"jc/parsers/last.py","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":5},{"name":"jc/parsers/ls_s.py","lines_changed":7},{"name":"jc/parsers/lsblk.py","lines_changed":5},{"name":"jc/parsers/lsmod.py","lines_changed":5},{"name":"jc/parsers/lsof.py","lines_changed":5},{"name":"jc/parsers/lsusb.py","lines_changed":5},{"name":"jc/parsers/mount.py","lines_changed":5},{"name":"jc/parsers/netstat.py","lines_changed":5},{"name":"jc/parsers/ntpq.py","lines_changed":5},{"name":"jc/parsers/passwd.py","lines_changed":5},{"name":"jc/parsers/ping.py","lines_changed":5},{"name":"jc/parsers/ping_s.py","lines_changed":7},{"name":"jc/parsers/pip_list.py","lines_changed":5},{"name":"jc/parsers/pip_show.py","lines_changed":5},{"name":"jc/parsers/ps.py","lines_changed":5},{"name":"jc/parsers/route.py","lines_changed":5},{"name":"jc/parsers/rpm_qi.py","lines_changed":5},{"name":"jc/parsers/sfdisk.py","lines_changed":5},{"name":"jc/parsers/shadow.py","lines_changed":5},{"name":"jc/parsers/ss.py","lines_changed":5},{"name":"jc/parsers/stat.py","lines_changed":5},{"name":"jc/parsers/stat_s.py","lines_changed":7},{"name":"jc/parsers/sysctl.py","lines_changed":5},{"name":"jc/parsers/systemctl.py","lines_changed":5},{"name":"jc/parsers/systemctl_lj.py","lines_changed":5},{"name":"jc/parsers/systemctl_ls.py","lines_changed":5},{"name":"jc/parsers/systemctl_luf.py","lines_changed":5},{"name":"jc/parsers/systeminfo.py","lines_changed":5},{"name":"jc/parsers/time.py","lines_changed":5},{"name":"jc/parsers/timedatectl.py","lines_changed":5},{"name":"jc/parsers/tracepath.py","lines_changed":5},{"name":"jc/parsers/traceroute.py","lines_changed":5},{"name":"jc/parsers/ufw.py","lines_changed":5},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":5},{"name":"jc/parsers/uname.py","lines_changed":5},{"name":"jc/parsers/upower.py","lines_changed":5},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/vmstat.py","lines_changed":5},{"name":"jc/parsers/vmstat_s.py","lines_changed":7},{"name":"jc/parsers/w.py","lines_changed":5},{"name":"jc/parsers/wc.py","lines_changed":5},{"name":"jc/parsers/who.py","lines_changed":5},{"name":"jc/parsers/xml.py","lines_changed":5},{"name":"jc/parsers/yaml.py","lines_changed":5},{"name":"jc/parsers/zipinfo.py","lines_changed":5}]},"message":"Update high-level API docs","epoch":1642549083,"epoch_utc":null},{"commit":"2c42baf3a4dd6733c078f31a1becd708a05f2c36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 14:18:12 2022 -0800","stats":{"files_changed":34,"insertions":174,"deletions":0,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/csv_s.md","lines_changed":7},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"jc/parsers/acpi.py","lines_changed":5},{"name":"jc/parsers/airport.py","lines_changed":5},{"name":"jc/parsers/airport_s.py","lines_changed":5},{"name":"jc/parsers/arp.py","lines_changed":5},{"name":"jc/parsers/blkid.py","lines_changed":5},{"name":"jc/parsers/cksum.py","lines_changed":5},{"name":"jc/parsers/crontab.py","lines_changed":5},{"name":"jc/parsers/crontab_u.py","lines_changed":5},{"name":"jc/parsers/csv.py","lines_changed":5},{"name":"jc/parsers/csv_s.py","lines_changed":7},{"name":"jc/parsers/date.py","lines_changed":5},{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":5},{"name":"jc/parsers/dir.py","lines_changed":5},{"name":"jc/parsers/dmidecode.py","lines_changed":5},{"name":"jc/parsers/dpkg_l.py","lines_changed":5},{"name":"jc/parsers/du.py","lines_changed":5}]},"message":"add new high-level api info","epoch":1642544292,"epoch_utc":null},{"commit":"03feb89c84096c0ea1d6ae3a0634ae7b8b507e8f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 13:46:11 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2}]},"message":"add module list info","epoch":1642542371,"epoch_utc":null},{"commit":"9dd553192fbca3037b3afe5df6bae88f7a8a9365","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 13:40:09 2022 -0800","stats":{"files_changed":5,"insertions":29,"deletions":12,"files":["CHANGELOG","README.md","docs/readme.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":10},{"name":"docs/readme.md","lines_changed":16},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":10}]},"message":"doc update","epoch":1642542009,"epoch_utc":null},{"commit":"fa3f02e9d1ac7867e3465c2d214f4e4229ff4c66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 13:39:51 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1642541991,"epoch_utc":null},{"commit":"0a9dde58c5235f78c4c9ae9c013f7454482c6067","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 13:10:14 2022 -0800","stats":{"files_changed":3,"insertions":228,"deletions":134,"files":["jc/__init__.py","jc/cli.py","jc/lib.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":22},{"name":"jc/cli.py","lines_changed":154},{"name":"jc/lib.py","lines_changed":186}]},"message":"add jc.parse() high-level API","epoch":1642540214,"epoch_utc":null},{"commit":"70cb4453bebb235130e2c287633ecb1de6c2b0aa","merge":"e6900e2 830674c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 14 11:54:29 2022 -0800","message":"Merge pull request #195 from kellyjonbrazil/dev\n\nDev v1.17.7","epoch":1642190069,"epoch_utc":null},{"commit":"830674cc6f19e107347a743baff7bbaab7f80b75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 14 11:47:25 2022 -0800","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["CHANGELOG","jc/__init__.py","man/jc.1","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1642189645,"epoch_utc":null},{"commit":"fb406b58a12fdfe81bcff76671661af77e7f2fe5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jan 8 20:22:53 2022 -0800","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["docs/parsers/stat_s.md","jc/parsers/stat_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/stat_s.md","lines_changed":4},{"name":"jc/parsers/stat_s.py","lines_changed":4},{"name":"man/jc.1","lines_changed":2}]},"message":"formatting","epoch":1641702173,"epoch_utc":null},{"commit":"55b272e41259ddc835cf4eb513fb67e7b2cf1573","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 6 11:13:14 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":2}]},"message":"tighten stat data detection","epoch":1641496394,"epoch_utc":null},{"commit":"94f62a9bf36242310790a0f37c66b2e6c6fdc078","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 6 11:03:49 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/stat_s.md","jc/parsers/stat_s.py"],"file_stats":[{"name":"docs/parsers/stat_s.md","lines_changed":6},{"name":"jc/parsers/stat_s.py","lines_changed":6}]},"message":"formatting","epoch":1641495829,"epoch_utc":null},{"commit":"8d19e4cb7b45e3b6cb8c404c959949b7593c9386","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 6 11:00:53 2022 -0800","stats":{"files_changed":4,"insertions":115,"deletions":1,"files":["CHANGELOG","README.md","docs/parsers/stat_s.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/stat_s.md","lines_changed":105},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update","epoch":1641495653,"epoch_utc":null},{"commit":"7e510d48e0f8426a67cf8d70d06d0331c274d358","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 6 10:36:33 2022 -0800","stats":{"files_changed":7,"insertions":106,"deletions":2,"files":["jc/parsers/stat_s.py","tests/fixtures/centos-7.7/stat-streaming.json","tests/fixtures/freebsd12/stat-streaming.json",".../stat-filename-with-spaces-streaming.json","tests/fixtures/osx-10.14.6/stat-streaming.json","tests/fixtures/ubuntu-18.04/stat-streaming.json","tests/test_stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":3},{"name":"tests/fixtures/centos-7.7/stat-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/stat-streaming.json","lines_changed":1},{"name":".../stat-filename-with-spaces-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/stat-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/stat-streaming.json","lines_changed":1},{"name":"tests/test_stat_s.py","lines_changed":100}]},"message":"simplify non-stat parse error logic","epoch":1641494193,"epoch_utc":null},{"commit":"7b20cffb143447f4497bc4e895eac2426e8a519f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 5 11:44:00 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":8}]},"message":"simplify last item logic","epoch":1641411840,"epoch_utc":null},{"commit":"5c934c43c13b69183561da8a77280feb3363e950","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 5 11:39:00 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":2}]},"message":"add continue to simplify logic","epoch":1641411540,"epoch_utc":null},{"commit":"8609298449e997ba4804d818f4fc23cb393ded7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 5 11:25:58 2022 -0800","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":8}]},"message":"update docstring","epoch":1641410758,"epoch_utc":null},{"commit":"72cb0dc10b2dac486d3e2a52cf44baf0d7496034","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 5 11:22:01 2022 -0800","stats":{"files_changed":1,"insertions":14,"deletions":10,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":24}]},"message":"fixup for first and last items","epoch":1641410521,"epoch_utc":null},{"commit":"7b22fa81ded0f6f59e250ffea63c5d2a0f928b25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 5 07:46:58 2022 -0800","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":8}]},"message":"raise for non-stat data","epoch":1641397618,"epoch_utc":null},{"commit":"0b6a1307790e0793917bc2781e4873aa9dd67225","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 16:43:38 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":4}]},"message":"ignore blank lines","epoch":1641343418,"epoch_utc":null},{"commit":"fdcf4338e0f099699f8d48df6382be1cc97dba84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 15:31:00 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":6}]},"message":"add examples to docstring","epoch":1641339060,"epoch_utc":null},{"commit":"ee43037f481286a34a766390568965fdd53af132","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 15:13:42 2022 -0800","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":2}]},"message":"remove unused continue lines","epoch":1641338022,"epoch_utc":null},{"commit":"26e365563c314e694915c7a3feae490ea99a112c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 15:07:45 2022 -0800","stats":{"files_changed":1,"insertions":50,"deletions":11,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":61}]},"message":"add schema and _process logic","epoch":1641337665,"epoch_utc":null},{"commit":"1b39586bb1b62aee8ae709512c2e3f79cefdb3d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 15:01:42 2022 -0800","stats":{"files_changed":2,"insertions":227,"deletions":0,"files":["jc/cli.py","jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/stat_s.py","lines_changed":226}]},"message":"add stat streaming parser","epoch":1641337302,"epoch_utc":null},{"commit":"8bb3a6bea34d60d49039f1ed72fd7e413edc05da","merge":"78672bd e6900e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 13:33:35 2022 -0800","message":"Merge pull request #194 from kellyjonbrazil/master\n\nsync to dev","epoch":1641332015,"epoch_utc":null},{"commit":"e6900e2000bf265dfcfc09ffbfda39e9238661af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:41:16 2022 -0800","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":21}]},"message":"add jar-manifest","epoch":1641231676,"epoch_utc":null},{"commit":"0ee244756bf39123e4873eb231156edbe7f0e0ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:22:35 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/jar_manifest.md","jc/parsers/jar_manifest.py"],"file_stats":[{"name":"docs/parsers/jar_manifest.md","lines_changed":2},{"name":"jc/parsers/jar_manifest.py","lines_changed":2}]},"message":"spelling","epoch":1641230555,"epoch_utc":null},{"commit":"6d5ac9abe6712e01887ce0d96c278a568319f405","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:19:40 2022 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["docs/parsers/csv.md","docs/parsers/csv_s.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"update docs","epoch":1641230380,"epoch_utc":null},{"commit":"44f6d9e1321459be8196aeebf6db088cc5120e61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:18:43 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"changelog update","epoch":1641230323,"epoch_utc":null},{"commit":"360154559c5dee6affa55bbdd5d2f473248b9168","merge":"241d53a 78672bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:12:50 2022 -0800","message":"Merge pull request #193 from kellyjonbrazil/dev\n\nDev add csv doublequote fix","epoch":1641229970,"epoch_utc":null},{"commit":"78672bd7ad66c418e0ecf31add73f887b0946d29","merge":"bc7973a 65d96e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:08:57 2022 -0800","message":"Merge pull request #190 from shaikustin/csv-doubleqouted\n\nfix doubleqoute in csv","epoch":1641229737,"epoch_utc":null},{"commit":"65d96e26b59e231c77c1dbba1dc91708c33de30c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:06:00 2022 -0800","stats":{"files_changed":2,"insertions":13,"deletions":0,"files":["tests/fixtures/generic/csv-doubleqouted-streaming.json","tests/test_csv_s.py"],"file_stats":[{"name":"tests/fixtures/generic/csv-doubleqouted-streaming.json","lines_changed":1},{"name":"tests/test_csv_s.py","lines_changed":12}]},"message":"add streaming tests","epoch":1641229560,"epoch_utc":null},{"commit":"241d53af9a5c9bba70e28835e22c52c0060269ba","merge":"f733100 bc7973a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 08:49:15 2022 -0800","message":"Merge pull request #192 from kellyjonbrazil/dev\n\nDev v1.17.6","epoch":1641228555,"epoch_utc":null},{"commit":"5563829df2849a899df2e9211d6c92bddc695f9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 08:48:23 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":8}]},"message":"make dialect sniff behavior match non-streaming parser","epoch":1641228503,"epoch_utc":null},{"commit":"3a4a27e1f94ee07352c7616c57ec655c1aea04f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 11:44:25 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/csv.py"],"file_stats":[{"name":"jc/parsers/csv.py","lines_changed":4}]},"message":"version bump","epoch":1641152665,"epoch_utc":null},{"commit":"9c887a36a804d817c3f669a55b9b1566d09d645d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 11:44:18 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":6}]},"message":"update csv_s parser with csv changes","epoch":1641152658,"epoch_utc":null},{"commit":"bc7973af36e13006230b5faa9e201e300d468912","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 11:07:15 2022 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","jc/cli.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"update copyright","epoch":1641150435,"epoch_utc":null},{"commit":"32972d8fdbdc71923978fd5c2a87fd6cfa4b7f8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 11:00:52 2022 -0800","stats":{"files_changed":7,"insertions":122,"deletions":9,"files":["CHANGELOG","README.md","docs/parsers/jar_manifest.md","jc/__init__.py","jc/parsers/jar_manifest.py","man/jc.1","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/jar_manifest.md","lines_changed":104},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/parsers/jar_manifest.py","lines_changed":12},{"name":"man/jc.1","lines_changed":7},{"name":"setup.py","lines_changed":2}]},"message":"doc update","epoch":1641150052,"epoch_utc":null},{"commit":"b128d9109cbdb1176f2473d450023bb0be02531b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 10:51:02 2022 -0800","stats":{"files_changed":1,"insertions":46,"deletions":0,"files":["tests/test_jar_manifest.py"],"file_stats":[{"name":"tests/test_jar_manifest.py","lines_changed":46}]},"message":"add MANIFEST.MF tests","epoch":1641149462,"epoch_utc":null},{"commit":"929d7273a422c2bd5b83e5e19d32630f1a027f75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 10:29:56 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/jar_manifest.py"],"file_stats":[{"name":"jc/parsers/jar_manifest.py","lines_changed":8}]},"message":"doc updates","epoch":1641148196,"epoch_utc":null},{"commit":"2a40f842743a8745d651b4b6cae645045e6c6aab","author":"shaik","author_email":"shai.kustin@torq.io","date":"Sun Jan 2 17:11:20 2022 +0200","stats":{"files_changed":4,"insertions":22,"deletions":1,"files":["jc/parsers/csv.py","tests/fixtures/generic/csv-doubleqouted.csv","tests/fixtures/generic/csv-doubleqouted.json","tests/test_csv.py"],"file_stats":[{"name":"jc/parsers/csv.py","lines_changed":4},{"name":"tests/fixtures/generic/csv-doubleqouted.csv","lines_changed":3},{"name":"tests/fixtures/generic/csv-doubleqouted.json","lines_changed":4},{"name":"tests/test_csv.py","lines_changed":12}]},"message":"fix doubleqoute in csv","epoch":1641172280,"epoch_utc":null},{"commit":"9ff6fa818f0857321e4b3b089d288997f2ae27af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jan 1 10:08:40 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add jar-manifest","epoch":1641060520,"epoch_utc":null},{"commit":"dac73a4bfe24e36474fdf6ff60c23e784ca409bd","merge":"d789554 f733100","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jan 1 10:06:46 2022 -0800","message":"Merge pull request #189 from kellyjonbrazil/master\n\nuse github releases instead of packaging site","epoch":1641060406,"epoch_utc":null},{"commit":"d7895547f74744e82317eabe4c870115701872be","merge":"f8e09ae b7d439c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jan 1 10:04:47 2022 -0800","message":"Merge pull request #188 from listuser/new_branch\n\nCreate key value pairs from a MANIFEST.MF file, to include key multiline value pairs.","epoch":1641060287,"epoch_utc":null},{"commit":"b7d439cb870e443e4f4e4a2137ab170835e77eff","author":"listuser","author_email":null,"date":"Fri Dec 31 12:15:50 2021 -0800","stats":{"files_changed":3,"insertions":2220,"deletions":9,"files":["jc/parsers/{jar-manifest.py => jar_manifest.py}","tests/fixtures/rhel-8/MANIFEST.MF.MULTI.json","tests/fixtures/rhel-8/MANIFEST.MF.MULTI.out"],"file_stats":[{"name":"jc/parsers/{jar-manifest.py => jar_manifest.py}","lines_changed":18},{"name":"tests/fixtures/rhel-8/MANIFEST.MF.MULTI.json","lines_changed":1},{"name":"tests/fixtures/rhel-8/MANIFEST.MF.MULTI.out","lines_changed":2210}]},"message":"Renamed jar-manifest.py to jar_manifest.py, added multi manifest outputs to tests...","epoch":1640981750,"epoch_utc":null},{"commit":"7cc903a5f5ca368be97babadc72689375567a901","author":"listuser","author_email":null,"date":"Thu Dec 30 15:10:53 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/jar-manifest.py"],"file_stats":[{"name":"jc/parsers/jar-manifest.py","lines_changed":3}]},"message":"Removed inflating from examples in jar-manifest.py","epoch":1640905853,"epoch_utc":null},{"commit":"c495a8291bd3e1fd070ee2e018b9b550f9c86314","author":"listuser","author_email":null,"date":"Thu Dec 30 15:06:06 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":292,"files":["tests/fixtures/rhel-8/MANIFEST.MF.json"],"file_stats":[{"name":"tests/fixtures/rhel-8/MANIFEST.MF.json","lines_changed":293}]},"message":"Updated test output in MANIFEST.MF.json","epoch":1640905566,"epoch_utc":null},{"commit":"5e1d7d777c627fb17feda6e51d9640bbd0f03302","author":"listuser","author_email":null,"date":"Thu Dec 30 15:02:48 2021 -0800","stats":{"files_changed":8,"insertions":304,"deletions":2544,"files":["jc/parsers/{metamf.py => jar-manifest.py}","tests/fixtures/rhel-8/MANIFEST.MF.json",".../rhel-8/{MANIFEST.MF => MANIFEST.MF.out}",".../rhel-8/cmds_used_to_generate_test_data.txt",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out"],"file_stats":[{"name":"jc/parsers/{metamf.py => jar-manifest.py}","lines_changed":34},{"name":"tests/fixtures/rhel-8/MANIFEST.MF.json","lines_changed":293},{"name":".../rhel-8/{MANIFEST.MF => MANIFEST.MF.out}","lines_changed":0},{"name":".../rhel-8/cmds_used_to_generate_test_data.txt","lines_changed":14},{"name":".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json","lines_changed":1},{"name":".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out","lines_changed":2210},{"name":".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json","lines_changed":1},{"name":".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out","lines_changed":295}]},"message":"Renamed metamf.py to jar-manifest.py, plus other changes","epoch":1640905368,"epoch_utc":null},{"commit":"7edad3f676fe5560017ca9cb05ede6f46787e78f","author":"listuser","author_email":null,"date":"Wed Dec 29 12:15:15 2021 -0800","stats":{"files_changed":8,"insertions":3042,"deletions":0,"files":["jc/parsers/metamf.py","tests/fixtures/rhel-8/MANIFEST.MF","tests/fixtures/rhel-8/MANIFEST.MF.json",".../rhel-8/cmds_used_to_generate_test_data.txt",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out"],"file_stats":[{"name":"jc/parsers/metamf.py","lines_changed":228},{"name":"tests/fixtures/rhel-8/MANIFEST.MF","lines_changed":292},{"name":"tests/fixtures/rhel-8/MANIFEST.MF.json","lines_changed":1},{"name":".../rhel-8/cmds_used_to_generate_test_data.txt","lines_changed":14},{"name":".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json","lines_changed":1},{"name":".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out","lines_changed":2210},{"name":".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json","lines_changed":1},{"name":".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out","lines_changed":295}]},"message":"Create key value pairs from a MANIFEST.MF file, to include key multiline value pairs.","epoch":1640808915,"epoch_utc":null},{"commit":"f7331001d4ab976e311458a16b6e5337da2e3aab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 23 11:35:39 2021 -0800","stats":{"files_changed":3,"insertions":9,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":5},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":5}]},"message":"use github releases instead of packaging site","epoch":1640288139,"epoch_utc":null},{"commit":"f8e09ae2ffe185d21305d566fad20f510df9890f","merge":"2e4f5a5 433c7cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 15:46:39 2021 -0600","message":"Merge pull request #187 from kellyjonbrazil/master\n\nsync to dev","epoch":1640130399,"epoch_utc":null},{"commit":"433c7cc0f05e321ffe024845a908f3e856d4cd2b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 13:42:24 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/zipinfo.md","jc/parsers/zipinfo.py"],"file_stats":[{"name":"docs/parsers/zipinfo.md","lines_changed":1},{"name":"jc/parsers/zipinfo.py","lines_changed":1}]},"message":"formatting","epoch":1640122944,"epoch_utc":null},{"commit":"d753e71a7452310d45fa605a2e4c70320ed60dbb","merge":"3ac8d03 2e4f5a5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 15:21:18 2021 -0600","message":"Merge pull request #186 from kellyjonbrazil/dev\n\nDev v1.17.5","epoch":1640128878,"epoch_utc":null},{"commit":"2e4f5a508b6c90f9e03dcbcf64efc0e2fc446666","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 12:19:17 2021 -0800","stats":{"files_changed":4,"insertions":6,"deletions":3,"files":["CHANGELOG","jc/__init__.py","man/jc.1","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1640117957,"epoch_utc":null},{"commit":"88b960eff6cb3739d0d243c8d8b3e8ad5b8eb97c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 12:14:20 2021 -0800","stats":{"files_changed":4,"insertions":144,"deletions":1,"files":["EXAMPLES.md","README.md","docs/parsers/zipinfo.md","man/jc.1"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":31},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/zipinfo.md","lines_changed":106},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update","epoch":1640117660,"epoch_utc":null},{"commit":"88c77bd89e2c2a5f023e6638816c9153b6276d35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 12:08:16 2021 -0800","stats":{"files_changed":2,"insertions":47,"deletions":0,"files":["tests/fixtures/osx-10.14.6/zipinfo-multi.json","tests/test_zipinfo.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/zipinfo-multi.json","lines_changed":1},{"name":"tests/test_zipinfo.py","lines_changed":46}]},"message":"add zipinfo tests","epoch":1640117296,"epoch_utc":null},{"commit":"51a7a4251fff518d8da78ffa41e7ba2e2cb47f12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 11:11:56 2021 -0800","stats":{"files_changed":1,"insertions":24,"deletions":0,"files":["tests/fixtures/osx-10.14.6/zipinfo-multi.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/zipinfo-multi.out","lines_changed":24}]},"message":"add multi-archive test output","epoch":1640113916,"epoch_utc":null},{"commit":"51d2f316f388d962c26aeb4f42affebec339e5a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 11:11:44 2021 -0800","stats":{"files_changed":1,"insertions":97,"deletions":72,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":169}]},"message":"add multi-archive support","epoch":1640113904,"epoch_utc":null},{"commit":"ff78a46c4854339a097992701351ef471aff1671","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 08:13:17 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"add zipinfo parser","epoch":1640103197,"epoch_utc":null},{"commit":"ed4a9dc1d470f64bcc9de35b2d98568ffd50257d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 08:13:00 2021 -0800","stats":{"files_changed":1,"insertions":21,"deletions":23,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":44}]},"message":"formatting","epoch":1640103180,"epoch_utc":null},{"commit":"63182dba26040974cb8cada6f5910bb29b1fa3ed","merge":"b450697 9c1eaa9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 10:08:46 2021 -0600","message":"Merge pull request #185 from listuser/new_branch\n\ncontributed zipinfo parser","epoch":1640110126,"epoch_utc":null},{"commit":"9c1eaa938934269fe4179da798acf5f119cde0cf","author":"Matt J","author_email":"none","date":"Mon Dec 20 21:53:34 2021 -0800","stats":{"files_changed":2,"insertions":68,"deletions":61,"files":["jc/parsers/zipinfo.py","tests/fixtures/rhel-8/zipinfo.json"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":127},{"name":"tests/fixtures/rhel-8/zipinfo.json","lines_changed":2}]},"message":"revised zipinfo.py nested version","epoch":1640066014,"epoch_utc":null},{"commit":"bc520fcbcdfad6a53e51944391fd24512bed8128","author":"Matt J","author_email":"none","date":"Mon Dec 20 14:29:50 2021 -0800","stats":{"files_changed":2,"insertions":63,"deletions":53,"files":["jc/parsers/zipinfo.py","tests/fixtures/rhel-8/zipinfo.json"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":114},{"name":"tests/fixtures/rhel-8/zipinfo.json","lines_changed":2}]},"message":"added zipinfo.py nested version","epoch":1640039390,"epoch_utc":null},{"commit":"46faac1a12a5b39d6a25427f6e8fdcca1204dbcd","author":"Matt J","author_email":"none","date":"Sun Dec 19 17:44:56 2021 -0800","stats":{"files_changed":2,"insertions":1222,"deletions":0,"files":["tests/fixtures/rhel-8/zipinfo.json","tests/fixtures/rhel-8/zipinfo.out"],"file_stats":[{"name":"tests/fixtures/rhel-8/zipinfo.json","lines_changed":1},{"name":"tests/fixtures/rhel-8/zipinfo.out","lines_changed":1221}]},"message":"add test data zipinfo.json and zipinfo.out","epoch":1639964696,"epoch_utc":null},{"commit":"3c424c0cb3cff462a963183585b57bea004e974f","author":"Matt J","author_email":"none","date":"Sun Dec 19 14:05:48 2021 -0800","stats":{"files_changed":1,"insertions":165,"deletions":0,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":165}]},"message":"initial commit zipinfo.py to new_branch","epoch":1639951548,"epoch_utc":null},{"commit":"3ac8d0362b4fb9999fc55a60a9cb20ac80d114f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 16 07:04:35 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"use quotes around python versions","epoch":1639667075,"epoch_utc":null},{"commit":"d88b998e6c7826a9ecae18663328e2d2915030fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 9 10:58:06 2021 -0800","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":8},{"name":"jc/parsers/csv_s.py","lines_changed":8}]},"message":"formatting","epoch":1639076286,"epoch_utc":null},{"commit":"a9ed55c00652a563391a7930c7a4649967131ae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 9 10:54:04 2021 -0800","stats":{"files_changed":11,"insertions":11,"deletions":11,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]},"message":"fix spelling","epoch":1639076044,"epoch_utc":null},{"commit":"ea614341232e5272ee0c7fd46ba0f313033c761f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 9 10:21:37 2021 -0800","stats":{"files_changed":4,"insertions":16,"deletions":8,"files":["docs/parsers/crontab.md","docs/parsers/crontab_u.md","jc/parsers/crontab.py","jc/parsers/crontab_u.py"],"file_stats":[{"name":"docs/parsers/crontab.md","lines_changed":6},{"name":"docs/parsers/crontab_u.md","lines_changed":6},{"name":"jc/parsers/crontab.py","lines_changed":6},{"name":"jc/parsers/crontab_u.py","lines_changed":6}]},"message":"fix schema docs","epoch":1639074097,"epoch_utc":null},{"commit":"a73d0d26cbe2860b8374661068e09e0717a3bab2","merge":"a7de911 b450697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 20:49:01 2021 -0800","message":"Merge pull request #184 from kellyjonbrazil/dev\n\nDev 1.17.4","epoch":1639025341,"epoch_utc":null},{"commit":"b4506976e3c865397bc657183d49c484d8bcfd7a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 11:21:12 2021 -0800","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":8},{"name":"templates/manpage_template","lines_changed":6}]},"message":"formatting","epoch":1638991272,"epoch_utc":null},{"commit":"34cb75a09697a06c3878f2f9a84eb3bd2a90ae62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:46:00 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/__init__.py","setup.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1638981960,"epoch_utc":null},{"commit":"34df643f60712ae25645cb7cddff80e43c12262b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:35:09 2021 -0800","stats":{"files_changed":4,"insertions":18,"deletions":0,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"man/jc.1","lines_changed":6},{"name":"templates/manpage_template","lines_changed":6},{"name":"templates/readme_template","lines_changed":3}]},"message":"add disable colors section","epoch":1638981309,"epoch_utc":null},{"commit":"ac7c13fcc013d386f34db51d634298fa3e97eccd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:22:28 2021 -0800","stats":{"files_changed":4,"insertions":11,"deletions":1,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"man/jc.1","lines_changed":6},{"name":"templates/manpage_template","lines_changed":4},{"name":"templates/readme_template","lines_changed":1}]},"message":"add -C option to docs","epoch":1638980548,"epoch_utc":null},{"commit":"4fdb34c7d5fcaa65e2ccab814c3acf2f0f70c442","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:19:43 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"add no-color.org","epoch":1638980383,"epoch_utc":null},{"commit":"7ac468e35aac1a63c4e22f33aead74a6e41a22a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:14:36 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"changelog update","epoch":1638980076,"epoch_utc":null},{"commit":"df190aa299f1669d1fe09380026ae086839abc02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:14:28 2021 -0800","stats":{"files_changed":1,"insertions":15,"deletions":7,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":22}]},"message":"add -C option to force color even with pipes","epoch":1638980068,"epoch_utc":null},{"commit":"9621475e86fe20fcdc2902b6ce7860a833ae2ca0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 7 15:46:02 2021 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"changelog update","epoch":1638920762,"epoch_utc":null},{"commit":"82e0160de820ad2ed6143f58458711d600b929a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 7 15:45:11 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"refactor NO_COLOR test","epoch":1638920711,"epoch_utc":null},{"commit":"d03fb8b626a97e81006d0b108c8f400fe4e2ce3b","merge":"b300dfb 7933dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 7 15:34:23 2021 -0800","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev","epoch":1638920063,"epoch_utc":null},{"commit":"b300dfb3d75fe76e2ddbb087ff742dd0b5e6155b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 7 15:34:20 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"Add support for NO_COLOR env variable","epoch":1638920060,"epoch_utc":null},{"commit":"a7de9111d97e687cafbc0709ec3ff7453d658a80","merge":"21e69a7 7933dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 16:37:46 2021 -0800","message":"Merge pull request #183 from kellyjonbrazil/dev\n\nDev v1.17.3","epoch":1638491866,"epoch_utc":null},{"commit":"7933dfdbe7bf400833d6f6b771362dfc518b9a8d","merge":"f7cb5f7 21e69a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 16:34:06 2021 -0800","message":"Merge branch 'master' into dev","epoch":1638491646,"epoch_utc":null},{"commit":"f7cb5f7d01ac01538bee4da816408072b585768e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 16:30:47 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"update date","epoch":1638491447,"epoch_utc":null},{"commit":"a26a298f1a3c141171e7d7ce459a27a297cec031","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 11:42:56 2021 -0800","stats":{"files_changed":4,"insertions":148,"deletions":1,"files":["README.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/iostat.md","lines_changed":15},{"name":"docs/parsers/iostat_s.md","lines_changed":126},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update","epoch":1638474176,"epoch_utc":null},{"commit":"dbd134d0dac2fc152183480958fd9e65919ac98d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 11:40:47 2021 -0800","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat_s.py","lines_changed":6}]},"message":"add examples to docs","epoch":1638474047,"epoch_utc":null},{"commit":"11aa01b0d9d6913059f98f9bd7591d7cad9037cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 11:38:00 2021 -0800","stats":{"files_changed":15,"insertions":15,"deletions":1,"files":["jc/parsers/iostat_s.py","tests/fixtures/centos-7.7/iostat-1-streaming.json","tests/fixtures/centos-7.7/iostat-m-streaming.json","tests/fixtures/centos-7.7/iostat-mx-streaming.json","tests/fixtures/centos-7.7/iostat-streaming.json","tests/fixtures/centos-7.7/iostat-x-streaming.json","tests/fixtures/ubuntu-18.04/iostat-1-streaming.json","tests/fixtures/ubuntu-18.04/iostat-m-streaming.json","tests/fixtures/ubuntu-18.04/iostat-mx-streaming.json","tests/fixtures/ubuntu-18.04/iostat-streaming.json","tests/fixtures/ubuntu-18.04/iostat-x-streaming.json","tests/fixtures/ubuntu-20.10/iostat-m-streaming.json","tests/fixtures/ubuntu-20.10/iostat-mx-streaming.json","tests/fixtures/ubuntu-20.10/iostat-streaming.json","tests/fixtures/ubuntu-20.10/iostat-x-streaming.json"],"file_stats":[{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iostat-1-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-m-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-mx-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-x-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-1-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-m-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-mx-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-x-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-m-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-mx-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-x-streaming.json","lines_changed":1}]},"message":"iostat-s tests","epoch":1638473880,"epoch_utc":null},{"commit":"6f18e5344356684e845ec63158c570d82156254f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 11:37:52 2021 -0800","stats":{"files_changed":1,"insertions":203,"deletions":0,"files":["tests/test_iostat_s.py"],"file_stats":[{"name":"tests/test_iostat_s.py","lines_changed":203}]},"message":"fix for null lines","epoch":1638473872,"epoch_utc":null},{"commit":"7b467c466568ad4e7986d4d7cf3ec606681b6d46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 09:30:16 2021 -0800","stats":{"files_changed":9,"insertions":137,"deletions":0,"files":["tests/fixtures/ubuntu-20.10/iostat-m.json","tests/fixtures/ubuntu-20.10/iostat-m.out","tests/fixtures/ubuntu-20.10/iostat-mx.json","tests/fixtures/ubuntu-20.10/iostat-mx.out","tests/fixtures/ubuntu-20.10/iostat-x.json","tests/fixtures/ubuntu-20.10/iostat-x.out","tests/fixtures/ubuntu-20.10/iostat.json","tests/fixtures/ubuntu-20.10/iostat.out","tests/test_iostat.py"],"file_stats":[{"name":"tests/fixtures/ubuntu-20.10/iostat-m.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-m.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-20.10/iostat-mx.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-mx.out","lines_changed":22},{"name":"tests/fixtures/ubuntu-20.10/iostat-x.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-x.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-20.10/iostat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat.out","lines_changed":22},{"name":"tests/test_iostat.py","lines_changed":47}]},"message":"add ubuntu 20.10 tests","epoch":1638466216,"epoch_utc":null},{"commit":"537b8f263087894c02b5b7c121765cf96182a370","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 09:14:43 2021 -0800","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":4},{"name":"jc/parsers/iostat_s.py","lines_changed":4}]},"message":"add more int conversions","epoch":1638465283,"epoch_utc":null},{"commit":"4d823575e791999e200dedd491511c4fde64fc2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 08:47:25 2021 -0800","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":4},{"name":"jc/parsers/iostat_s.py","lines_changed":4}]},"message":"add more float fields","epoch":1638463645,"epoch_utc":null},{"commit":"541aa1d09f20ff6979eabaa66790decb3895f18d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 08:41:36 2021 -0800","stats":{"files_changed":2,"insertions":68,"deletions":8,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":15},{"name":"jc/parsers/iostat_s.py","lines_changed":61}]},"message":"Add new field float conversions for iostat v11","epoch":1638463296,"epoch_utc":null},{"commit":"8f02021014b7b19acf1a8bbd777161aa82c65d66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 05:54:38 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat_s.py","lines_changed":1}]},"message":"formatting","epoch":1638453278,"epoch_utc":null},{"commit":"158a15157c7e5dde95dc21766d0696bd82486688","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:47:17 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"changelog update","epoch":1638406037,"epoch_utc":null},{"commit":"2752e0d66a9ba0b57ac86913fd302ada23c280c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:47:09 2021 -0800","stats":{"files_changed":2,"insertions":166,"deletions":0,"files":["jc/cli.py","jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/iostat_s.py","lines_changed":165}]},"message":"add iostat streaming parser","epoch":1638406029,"epoch_utc":null},{"commit":"6c11e912afe3c4d16da9199b5c2fc10461928ac3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:14:22 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"update changelog","epoch":1638404062,"epoch_utc":null},{"commit":"43d34461e27e3e4ac5f985786831c170b348c7c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:12:51 2021 -0800","stats":{"files_changed":83,"insertions":279,"deletions":81,"files":["README.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/utils.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/dpkg_l.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/finger.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/gshadow.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iostat.md","lines_changed":172},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":22},{"name":"man/jc.1","lines_changed":7}]},"message":"update docs","epoch":1638403971,"epoch_utc":null},{"commit":"4dfdc9b0f65d8c950ed74545d0cc3f95c8abec6c","merge":"e2311cb 6665ffa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:02:10 2021 -0800","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev","epoch":1638403330,"epoch_utc":null},{"commit":"e2311cbb03f407414df953c8d1c07d0cf1a549ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:02:06 2021 -0800","stats":{"files_changed":21,"insertions":400,"deletions":0,"files":["tests/fixtures/centos-7.7/iostat-1.json","tests/fixtures/centos-7.7/iostat-1.out","tests/fixtures/centos-7.7/iostat-m.json","tests/fixtures/centos-7.7/iostat-m.out","tests/fixtures/centos-7.7/iostat-mx.json","tests/fixtures/centos-7.7/iostat-mx.out","tests/fixtures/centos-7.7/iostat-x.json","tests/fixtures/centos-7.7/iostat-x.out","tests/fixtures/centos-7.7/iostat.json","tests/fixtures/centos-7.7/iostat.out","tests/fixtures/ubuntu-18.04/iostat-1.json","tests/fixtures/ubuntu-18.04/iostat-1.out","tests/fixtures/ubuntu-18.04/iostat-m.json","tests/fixtures/ubuntu-18.04/iostat-m.out","tests/fixtures/ubuntu-18.04/iostat-mx.json","tests/fixtures/ubuntu-18.04/iostat-mx.out","tests/fixtures/ubuntu-18.04/iostat-x.json","tests/fixtures/ubuntu-18.04/iostat-x.out","tests/fixtures/ubuntu-18.04/iostat.json","tests/fixtures/ubuntu-18.04/iostat.out","tests/test_iostat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/iostat-1.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-1.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/iostat-m.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-m.out","lines_changed":10},{"name":"tests/fixtures/centos-7.7/iostat-mx.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-mx.out","lines_changed":9},{"name":"tests/fixtures/centos-7.7/iostat-x.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-x.out","lines_changed":10},{"name":"tests/fixtures/centos-7.7/iostat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat.out","lines_changed":9},{"name":"tests/fixtures/ubuntu-18.04/iostat-1.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-1.out","lines_changed":77},{"name":"tests/fixtures/ubuntu-18.04/iostat-m.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-m.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-18.04/iostat-mx.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-mx.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/iostat-x.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-x.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/iostat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat.out","lines_changed":27},{"name":"tests/test_iostat.py","lines_changed":143}]},"message":"add iostat tests","epoch":1638403326,"epoch_utc":null},{"commit":"bf15575e90985cfec5c57dd11dfa2b86d53a41be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:01:52 2021 -0800","stats":{"files_changed":1,"insertions":14,"deletions":7,"files":["jc/parsers/iostat.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":21}]},"message":"fixes for ubunut","epoch":1638403312,"epoch_utc":null},{"commit":"406336c7185b539b5e00532b58146d5b1b73f259","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 13:53:31 2021 -0800","stats":{"files_changed":1,"insertions":44,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":44}]},"message":"add iostat example","epoch":1638395611,"epoch_utc":null},{"commit":"6665ffaeb8107e9db3b917db0663beaf44024533","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 10:59:07 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"remove python 3.6 from tests","epoch":1638385147,"epoch_utc":null},{"commit":"dcf552ca0c69aa5f0309a83dc33dee7c5ed81292","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 10:34:55 2021 -0800","stats":{"files_changed":1,"insertions":138,"deletions":47,"files":["jc/parsers/iostat.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":185}]},"message":"add _process and cleanup","epoch":1638383695,"epoch_utc":null},{"commit":"7a6ebf3c9555dd82df7dc0b71981cdd32ce0061d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 16:54:32 2021 -0800","stats":{"files_changed":2,"insertions":171,"deletions":0,"files":["jc/cli.py","jc/parsers/iostat.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/iostat.py","lines_changed":170}]},"message":"add iostat parser","epoch":1638320072,"epoch_utc":null},{"commit":"d2dc4a983c86c538e13e568b908072de4ca0daaf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 11:59:26 2021 -0800","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"changelog update","epoch":1638302366,"epoch_utc":null},{"commit":"1168259bc23862f671326d41f5282a3575205214","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 11:57:04 2021 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":3}]},"message":"add doc strings","epoch":1638302224,"epoch_utc":null},{"commit":"e8e4b46021557fbf5776c32dff46de022817fb6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 11:49:40 2021 -0800","stats":{"files_changed":5,"insertions":14,"deletions":19,"files":["jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":5},{"name":"jc/parsers/foo_s.py","lines_changed":7},{"name":"jc/parsers/ls_s.py","lines_changed":7},{"name":"jc/parsers/ping_s.py","lines_changed":7},{"name":"jc/parsers/vmstat_s.py","lines_changed":7}]},"message":"use jc.utils type checks","epoch":1638301780,"epoch_utc":null},{"commit":"12d2de22821fd8f57f4d412e62f53db3d89d5e30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 11:43:06 2021 -0800","stats":{"files_changed":77,"insertions":181,"deletions":165,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":4},{"name":"jc/parsers/airport.py","lines_changed":4},{"name":"jc/parsers/airport_s.py","lines_changed":4},{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/blkid.py","lines_changed":4},{"name":"jc/parsers/cksum.py","lines_changed":4},{"name":"jc/parsers/crontab.py","lines_changed":4},{"name":"jc/parsers/crontab_u.py","lines_changed":4},{"name":"jc/parsers/csv.py","lines_changed":4},{"name":"jc/parsers/date.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":5},{"name":"jc/parsers/dir.py","lines_changed":4},{"name":"jc/parsers/dmidecode.py","lines_changed":4},{"name":"jc/parsers/dpkg_l.py","lines_changed":4},{"name":"jc/parsers/du.py","lines_changed":4},{"name":"jc/parsers/env.py","lines_changed":4},{"name":"jc/parsers/file.py","lines_changed":4},{"name":"jc/parsers/finger.py","lines_changed":4},{"name":"jc/parsers/foo.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":4},{"name":"jc/parsers/fstab.py","lines_changed":4},{"name":"jc/parsers/group.py","lines_changed":4},{"name":"jc/parsers/gshadow.py","lines_changed":4},{"name":"jc/parsers/hash.py","lines_changed":4},{"name":"jc/parsers/hashsum.py","lines_changed":4},{"name":"jc/parsers/hciconfig.py","lines_changed":4},{"name":"jc/parsers/history.py","lines_changed":4},{"name":"jc/parsers/hosts.py","lines_changed":4},{"name":"jc/parsers/id.py","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":4},{"name":"jc/parsers/ini.py","lines_changed":4},{"name":"jc/parsers/iptables.py","lines_changed":4},{"name":"jc/parsers/iw_scan.py","lines_changed":4},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/last.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4},{"name":"jc/parsers/lsblk.py","lines_changed":4},{"name":"jc/parsers/lsmod.py","lines_changed":4},{"name":"jc/parsers/lsof.py","lines_changed":4},{"name":"jc/parsers/lsusb.py","lines_changed":4},{"name":"jc/parsers/mount.py","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":4},{"name":"jc/parsers/ntpq.py","lines_changed":4},{"name":"jc/parsers/passwd.py","lines_changed":4},{"name":"jc/parsers/ping.py","lines_changed":4},{"name":"jc/parsers/pip_list.py","lines_changed":4},{"name":"jc/parsers/pip_show.py","lines_changed":4},{"name":"jc/parsers/ps.py","lines_changed":4},{"name":"jc/parsers/route.py","lines_changed":4},{"name":"jc/parsers/rpm_qi.py","lines_changed":4},{"name":"jc/parsers/sfdisk.py","lines_changed":4},{"name":"jc/parsers/shadow.py","lines_changed":4},{"name":"jc/parsers/ss.py","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"jc/parsers/sysctl.py","lines_changed":4},{"name":"jc/parsers/systemctl.py","lines_changed":4},{"name":"jc/parsers/systemctl_lj.py","lines_changed":4},{"name":"jc/parsers/systemctl_ls.py","lines_changed":4},{"name":"jc/parsers/systemctl_luf.py","lines_changed":4},{"name":"jc/parsers/systeminfo.py","lines_changed":4},{"name":"jc/parsers/time.py","lines_changed":4},{"name":"jc/parsers/timedatectl.py","lines_changed":4},{"name":"jc/parsers/tracepath.py","lines_changed":4},{"name":"jc/parsers/traceroute.py","lines_changed":4},{"name":"jc/parsers/ufw.py","lines_changed":4},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":4},{"name":"jc/parsers/uname.py","lines_changed":4},{"name":"jc/parsers/upower.py","lines_changed":4},{"name":"jc/parsers/uptime.py","lines_changed":4},{"name":"jc/parsers/vmstat.py","lines_changed":4},{"name":"jc/parsers/w.py","lines_changed":4},{"name":"jc/parsers/wc.py","lines_changed":4},{"name":"jc/parsers/who.py","lines_changed":4},{"name":"jc/parsers/xml.py","lines_changed":4},{"name":"jc/parsers/yaml.py","lines_changed":4},{"name":"jc/utils.py","lines_changed":40}]},"message":"use jc.utils.input_type_check() and simplify compatibility check","epoch":1638301386,"epoch_utc":null},{"commit":"0e2fe401e1c49a9f947d7d17b72cfc4e90787f47","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 10:08:27 2021 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]},"message":"version bump","epoch":1638295707,"epoch_utc":null},{"commit":"14247adb0ae007924ca551a706eb0cfdbae97a41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 10:03:59 2021 -0800","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["jc/parsers/csv_s.py","tests/test_csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":7},{"name":"tests/test_csv_s.py","lines_changed":2}]},"message":"add input type checks","epoch":1638295439,"epoch_utc":null},{"commit":"3a9f0934c41c85ea7fa87165b9559f08814645cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 09:56:33 2021 -0800","stats":{"files_changed":2,"insertions":5,"deletions":3,"files":["jc/parsers/ls_s.py","tests/test_ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":6},{"name":"tests/test_ls_s.py","lines_changed":2}]},"message":"add input type checks","epoch":1638294993,"epoch_utc":null},{"commit":"caf0a5c8713bf0d72951a2c6fd5a2c62c9eb59d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 09:51:27 2021 -0800","stats":{"files_changed":2,"insertions":7,"deletions":4,"files":["jc/parsers/vmstat_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":9},{"name":"tests/test_vmstat_s.py","lines_changed":2}]},"message":"add input type checking","epoch":1638294687,"epoch_utc":null},{"commit":"cfb58b1cf3e3028f8e03fdd93f0165cf8d230e1e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 09:41:16 2021 -0800","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":8}]},"message":"add input type checks","epoch":1638294076,"epoch_utc":null},{"commit":"975cf195cc02774f50460ca479d9ebb7b73c7870","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 09:40:49 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":1}]},"message":"formatting","epoch":1638294049,"epoch_utc":null},{"commit":"8a46a259a36efc55bb0b2141acb9dd5ae52b7725","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 09:19:51 2021 -0800","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["jc/parsers/ping_s.py","tests/test_ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":8},{"name":"tests/test_ping_s.py","lines_changed":2}]},"message":"add input type checks","epoch":1638292791,"epoch_utc":null},{"commit":"e395142e599aa78b4a7ec80dcc3f8ccf279f97b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 29 16:45:22 2021 -0800","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1638233122,"epoch_utc":null},{"commit":"caaeaf0d67cf44f8d2651cc53a7528d3ef0c74d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 29 16:29:23 2021 -0800","stats":{"files_changed":76,"insertions":227,"deletions":227,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":6},{"name":"jc/parsers/airport.py","lines_changed":6},{"name":"jc/parsers/airport_s.py","lines_changed":6},{"name":"jc/parsers/arp.py","lines_changed":6},{"name":"jc/parsers/blkid.py","lines_changed":6},{"name":"jc/parsers/cksum.py","lines_changed":6},{"name":"jc/parsers/crontab.py","lines_changed":6},{"name":"jc/parsers/crontab_u.py","lines_changed":6},{"name":"jc/parsers/csv.py","lines_changed":6},{"name":"jc/parsers/date.py","lines_changed":6},{"name":"jc/parsers/df.py","lines_changed":6},{"name":"jc/parsers/dig.py","lines_changed":6},{"name":"jc/parsers/dir.py","lines_changed":6},{"name":"jc/parsers/dmidecode.py","lines_changed":6},{"name":"jc/parsers/dpkg_l.py","lines_changed":6},{"name":"jc/parsers/du.py","lines_changed":6},{"name":"jc/parsers/env.py","lines_changed":6},{"name":"jc/parsers/file.py","lines_changed":6},{"name":"jc/parsers/finger.py","lines_changed":6},{"name":"jc/parsers/foo.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":6},{"name":"jc/parsers/fstab.py","lines_changed":6},{"name":"jc/parsers/group.py","lines_changed":6},{"name":"jc/parsers/gshadow.py","lines_changed":6},{"name":"jc/parsers/hash.py","lines_changed":6},{"name":"jc/parsers/hashsum.py","lines_changed":6},{"name":"jc/parsers/hciconfig.py","lines_changed":6},{"name":"jc/parsers/history.py","lines_changed":6},{"name":"jc/parsers/hosts.py","lines_changed":6},{"name":"jc/parsers/id.py","lines_changed":6},{"name":"jc/parsers/ifconfig.py","lines_changed":6},{"name":"jc/parsers/ini.py","lines_changed":6},{"name":"jc/parsers/iptables.py","lines_changed":6},{"name":"jc/parsers/iw_scan.py","lines_changed":6},{"name":"jc/parsers/jobs.py","lines_changed":6},{"name":"jc/parsers/last.py","lines_changed":6},{"name":"jc/parsers/ls.py","lines_changed":6},{"name":"jc/parsers/lsblk.py","lines_changed":6},{"name":"jc/parsers/lsmod.py","lines_changed":6},{"name":"jc/parsers/lsof.py","lines_changed":6},{"name":"jc/parsers/lsusb.py","lines_changed":6},{"name":"jc/parsers/mount.py","lines_changed":6},{"name":"jc/parsers/netstat.py","lines_changed":6},{"name":"jc/parsers/ntpq.py","lines_changed":6},{"name":"jc/parsers/passwd.py","lines_changed":6},{"name":"jc/parsers/ping.py","lines_changed":6},{"name":"jc/parsers/pip_list.py","lines_changed":6},{"name":"jc/parsers/pip_show.py","lines_changed":6},{"name":"jc/parsers/ps.py","lines_changed":6},{"name":"jc/parsers/route.py","lines_changed":6},{"name":"jc/parsers/rpm_qi.py","lines_changed":6},{"name":"jc/parsers/sfdisk.py","lines_changed":6},{"name":"jc/parsers/shadow.py","lines_changed":6},{"name":"jc/parsers/ss.py","lines_changed":6},{"name":"jc/parsers/stat.py","lines_changed":6},{"name":"jc/parsers/sysctl.py","lines_changed":6},{"name":"jc/parsers/systemctl.py","lines_changed":6},{"name":"jc/parsers/systemctl_lj.py","lines_changed":6},{"name":"jc/parsers/systemctl_ls.py","lines_changed":6},{"name":"jc/parsers/systemctl_luf.py","lines_changed":6},{"name":"jc/parsers/systeminfo.py","lines_changed":6},{"name":"jc/parsers/time.py","lines_changed":6},{"name":"jc/parsers/timedatectl.py","lines_changed":6},{"name":"jc/parsers/tracepath.py","lines_changed":6},{"name":"jc/parsers/traceroute.py","lines_changed":6},{"name":"jc/parsers/ufw.py","lines_changed":6},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":6},{"name":"jc/parsers/uname.py","lines_changed":6},{"name":"jc/parsers/upower.py","lines_changed":6},{"name":"jc/parsers/uptime.py","lines_changed":6},{"name":"jc/parsers/vmstat.py","lines_changed":6},{"name":"jc/parsers/w.py","lines_changed":6},{"name":"jc/parsers/wc.py","lines_changed":6},{"name":"jc/parsers/who.py","lines_changed":6},{"name":"jc/parsers/xml.py","lines_changed":6},{"name":"jc/parsers/yaml.py","lines_changed":6}]},"message":"add 'str' type check on input","epoch":1638232163,"epoch_utc":null},{"commit":"21e69a7cbf62240238f6fb78e874dda6ce2e922a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 24 19:33:07 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"],"file_stats":[{"name":".gitignore","lines_changed":1}]},"message":"ignore _config.yml","epoch":1637811187,"epoch_utc":null},{"commit":"603964935b58e02cf0614cf67ffacc6d94755e05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 24 19:30:10 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"remove trailing whitespace","epoch":1637811010,"epoch_utc":null},{"commit":"47eb83ae55b9892716fff712bd2be21b6191b552","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 24 13:32:51 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"],"file_stats":[{"name":".gitignore","lines_changed":1}]},"message":"add .vscode","epoch":1637789571,"epoch_utc":null},{"commit":"fc0ce6c95923ab124961e695a26c0b68dd0f359f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 22 09:45:14 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add streaming parser to custom parsers info","epoch":1637603114,"epoch_utc":null},{"commit":"077a29fb4eedcfccb026498c5c3a64b7b7601363","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 22 09:36:58 2021 -0800","stats":{"files_changed":2,"insertions":14,"deletions":2,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":8},{"name":"jc/parsers/csv_s.py","lines_changed":8}]},"message":"add _jc_meta field info","epoch":1637602618,"epoch_utc":null},{"commit":"8568d0d328706a7a5b1476452e078d8cbe7b7391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 22 09:10:11 2021 -0800","stats":{"files_changed":3,"insertions":7,"deletions":3,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":4},{"name":"jc/parsers/csv_s.py","lines_changed":4},{"name":"man/jc.1","lines_changed":2}]},"message":"fix csv_s documentation","epoch":1637601011,"epoch_utc":null},{"commit":"597d39c28ea0c0fe3b072413e9d91ab5e27b62bd","merge":"b59e38c eb888dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 18 06:52:01 2021 -1000","message":"Merge pull request #180 from kellyjonbrazil/dev\n\nDev v1.17.2","epoch":1637247121,"epoch_utc":null},{"commit":"eb888dcbbcf83c9197bd59aab72f65ea6eb622ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 18 08:48:03 2021 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["jc/__init__.py","man/jc.1","setup.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1637254083,"epoch_utc":null},{"commit":"d1b9ac0841b15ee15690c4066453a322618320ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 18 08:41:52 2021 -0800","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/df.md","docs/parsers/netstat.md","docs/parsers/ping.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1637253712,"epoch_utc":null},{"commit":"89a6d9c5c39b74f1b040f410659bfd7ae1a902d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 17 12:03:40 2021 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":5}]},"message":"add key-check to restore previous behavior even with non-df data","epoch":1637179420,"epoch_utc":null},{"commit":"85d983761637129cb85abfb0bbdde7c507061cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 17 11:41:54 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add df info","epoch":1637178114,"epoch_utc":null},{"commit":"cd7731484d826d84d835ecd460d746e78cadc5fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 17 11:26:42 2021 -0800","stats":{"files_changed":4,"insertions":62,"deletions":2,"files":["jc/parsers/df.py","tests/fixtures/generic/df-long-filesystem.json","tests/fixtures/generic/df-long-filesystem.out","tests/test_df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":47},{"name":"tests/fixtures/generic/df-long-filesystem.json","lines_changed":1},{"name":"tests/fixtures/generic/df-long-filesystem.out","lines_changed":4},{"name":"tests/test_df.py","lines_changed":12}]},"message":"fix for cases where the Filesystem data overflows the column length (happens on older versions of df)","epoch":1637177202,"epoch_utc":null},{"commit":"086da16b1743c16a5ccdd102f889fb31f99e3caa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 15 13:05:53 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":2}]},"message":"version bump","epoch":1637010353,"epoch_utc":null},{"commit":"20830528f04a5ecbe78420d8008249b089667767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 15 12:52:43 2021 -0800","stats":{"files_changed":4,"insertions":28,"deletions":0,"files":["CHANGELOG","tests/fixtures/generic/netstat-old.json","tests/fixtures/generic/netstat-old.out","tests/test_netstat.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"tests/fixtures/generic/netstat-old.json","lines_changed":1},{"name":"tests/fixtures/generic/netstat-old.out","lines_changed":14},{"name":"tests/test_netstat.py","lines_changed":12}]},"message":"add test for older netstat version fix","epoch":1637009563,"epoch_utc":null},{"commit":"83371edd8fe3d23dfa92fc707604086522c85ab9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 15 12:25:22 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat_linux.py"],"file_stats":[{"name":"jc/parsers/netstat_linux.py","lines_changed":2}]},"message":"add space before inode to compensate for removed dash","epoch":1637007922,"epoch_utc":null},{"commit":"364a81decc16742e3caa070d90b1d605d96fe2c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 4 10:25:51 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":2}]},"message":"version bump","epoch":1636046751,"epoch_utc":null},{"commit":"ef09592ad3e5c9a77c1bdebe8f876fc4dde54834","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 4 10:21:38 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"update for 1.17.2","epoch":1636046498,"epoch_utc":null},{"commit":"4a86e109ccb254d5195b782f84f3967c96ef726c","merge":"5ba22da 7fa5391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 4 10:18:47 2021 -0700","message":"Merge pull request #179 from shaikustin/ping-alpine-linux\n\nsupport alpine linux ping","epoch":1636046327,"epoch_utc":null},{"commit":"7fa5391b6613e62689c624041e03f9750c9c7972","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 4 10:13:44 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_ping.py"],"file_stats":[{"name":"tests/test_ping.py","lines_changed":2}]},"message":"change alpine ping6 to ping","epoch":1636046024,"epoch_utc":null},{"commit":"9b53ba5714819ff760f2d4546f5d2ee4d521c080","author":"shaik","author_email":"shai.kustin@torq.io","date":"Thu Nov 4 13:42:48 2021 +0200","stats":{"files_changed":6,"insertions":45,"deletions":1,"files":["jc/parsers/ping.py",".../fixtures/alpine-linux-3.13/ping-hostname.json","tests/fixtures/alpine-linux-3.13/ping-hostname.out","tests/fixtures/alpine-linux-3.13/ping-ip.json","tests/fixtures/alpine-linux-3.13/ping-ip.out","tests/test_ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":2},{"name":".../fixtures/alpine-linux-3.13/ping-hostname.json","lines_changed":1},{"name":"tests/fixtures/alpine-linux-3.13/ping-hostname.out","lines_changed":9},{"name":"tests/fixtures/alpine-linux-3.13/ping-ip.json","lines_changed":1},{"name":"tests/fixtures/alpine-linux-3.13/ping-ip.out","lines_changed":6},{"name":"tests/test_ping.py","lines_changed":27}]},"message":"support alpine linux ping","epoch":1636058568,"epoch_utc":null},{"commit":"b59e38cfd2c8a7f5868e05d5562557b1c27e5e56","merge":"30cff5f 5ba22da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 30 14:02:25 2021 -0700","message":"Merge pull request #176 from kellyjonbrazil/dev\n\nDev v1.17.1","epoch":1635627745,"epoch_utc":null},{"commit":"5ba22dae597b9d154ca0a82f71cfbd8d8a6325db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 30 13:57:36 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2}]},"message":"add JSON lines info","epoch":1635627456,"epoch_utc":null},{"commit":"4232e523acc523e510b4881d2a57a95b88ec8c8b","merge":"bee80b3 30cff5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 30 13:49:45 2021 -0700","message":"Merge branch 'master' into dev","epoch":1635626985,"epoch_utc":null},{"commit":"bee80b35d2b8c15e6233f2798e9c02a11e9e1e9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 30 13:47:21 2021 -0700","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["CHANGELOG","docs/parsers/csv_s.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":8},{"name":"man/jc.1","lines_changed":2}]},"message":"update for version bump","epoch":1635626841,"epoch_utc":null},{"commit":"c32395f6950d6294770ee93e8bf4d79c7d275ac3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 27 12:54:20 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":2}]},"message":"linting","epoch":1635364460,"epoch_utc":null},{"commit":"735c5e1078cc27b5cba03b8ebbae15aeca6b8fbd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 12:26:23 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["tests/test_csv_s.py"],"file_stats":[{"name":"tests/test_csv_s.py","lines_changed":5}]},"message":"update comments for ParseError test: https://bugs.python.org/issue45617","epoch":1635276383,"epoch_utc":null},{"commit":"d09c94b292ca3beec92a00f8a51b7259dd30a1e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 12:24:49 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add python 3.10 testing info","epoch":1635276289,"epoch_utc":null},{"commit":"4d04866f48f72b9ea0d213dc1533729d3b68a503","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 12:24:37 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":1}]},"message":"add python bug https://bugs.python.org/issue45617 info","epoch":1635276277,"epoch_utc":null},{"commit":"a2d90f4dfcdc2cb00c6c0fa957493c95a21e256b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 10:04:39 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_csv_s.py"],"file_stats":[{"name":"tests/test_csv_s.py","lines_changed":2}]},"message":"force test","epoch":1635267879,"epoch_utc":null},{"commit":"93a5002c8b530bd6f5f81e5d8595cde1f836ae41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 10:01:02 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"fix 3.10.0 version number","epoch":1635267662,"epoch_utc":null},{"commit":"23bf5227a4c39ea017e55fc21150331e1af6fdb7","merge":"77c96fa 3f5a1f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 07:44:04 2021 -0700","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev","epoch":1635259444,"epoch_utc":null},{"commit":"77c96fa2a96148221bde7d2274e0dfb5386a166f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 07:43:47 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["tests/test_csv_s.py"],"file_stats":[{"name":"tests/test_csv_s.py","lines_changed":3}]},"message":"try tests on python 3.10","epoch":1635259427,"epoch_utc":null},{"commit":"3f5a1f015e9c0807e227b9f7300592e25502e014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 07:42:37 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"add python 3.10","epoch":1635259357,"epoch_utc":null},{"commit":"b280c4fc18e60a85ab212b09aa5bf3a05a0eceff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 07:36:44 2021 -0700","stats":{"files_changed":2,"insertions":11,"deletions":19,"files":[".../fixtures/generic/csv-insurance-streaming.json","tests/test_csv_s.py"],"file_stats":[{"name":".../fixtures/generic/csv-insurance-streaming.json","lines_changed":1},{"name":"tests/test_csv_s.py","lines_changed":29}]},"message":"add ParseError test to streaming csv parser","epoch":1635259004,"epoch_utc":null},{"commit":"3ab9b43a2eebf535be98c94810ac474bf32ec515","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 07:36:23 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":14}]},"message":"raise ParseError on newline bug","epoch":1635258983,"epoch_utc":null},{"commit":"46f568414a5c8d2f135486e86d0ada48cfcefeb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 25 11:35:01 2021 -0700","stats":{"files_changed":3,"insertions":96,"deletions":89,"files":["tests/test_ls_s.py","tests/test_ping_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"tests/test_ls_s.py","lines_changed":26},{"name":"tests/test_ping_s.py","lines_changed":138},{"name":"tests/test_vmstat_s.py","lines_changed":21}]},"message":"change streaming parser test names","epoch":1635186901,"epoch_utc":null},{"commit":"cba2fd299fff09a551b780e064a6e22bdf7e539a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 25 11:03:32 2021 -0700","stats":{"files_changed":9,"insertions":75,"deletions":61,"files":[".../generic/csv-10k-sales-records-streaming.json","tests/fixtures/generic/csv-deniro-streaming.json","tests/fixtures/generic/csv-example-streaming.json","tests/fixtures/generic/csv-flyrna-streaming.json","tests/fixtures/generic/csv-flyrna2-streaming.json",".../fixtures/generic/csv-homes-pipe-streaming.json","tests/fixtures/generic/csv-homes-streaming.json",".../fixtures/generic/csv-insurance-streaming.json","tests/test_csv_s.py"],"file_stats":[{"name":".../generic/csv-10k-sales-records-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-deniro-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-example-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna2-streaming.json","lines_changed":1},{"name":".../fixtures/generic/csv-homes-pipe-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-homes-streaming.json","lines_changed":1},{"name":".../fixtures/generic/csv-insurance-streaming.json","lines_changed":1},{"name":"tests/test_csv_s.py","lines_changed":128}]},"message":"add tests","epoch":1635185012,"epoch_utc":null},{"commit":"1e6e44f656f1bbb277eb38fb485f7b48e3b9e40b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 25 11:03:21 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":5}]},"message":"fix for piping data with non-platform newlines (e.g. windows csv files on unix)","epoch":1635185001,"epoch_utc":null},{"commit":"acac0399946d9781193e9350dd7109f1dd3999fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 25 10:06:01 2021 -0700","stats":{"files_changed":3,"insertions":149,"deletions":0,"files":["tests/fixtures/generic/csv-biostats-streaming.json","tests/fixtures/generic/csv-cities-streaming.json","tests/test_csv_s.py"],"file_stats":[{"name":"tests/fixtures/generic/csv-biostats-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-cities-streaming.json","lines_changed":1},{"name":"tests/test_csv_s.py","lines_changed":147}]},"message":"working tests","epoch":1635181561,"epoch_utc":null},{"commit":"50a3b340164b3139f04f67a2bee16e5343c8a2da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 25 10:05:39 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":8,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":13}]},"message":"optimizations and use iter() so we can exhaust data coming from list objects","epoch":1635181539,"epoch_utc":null},{"commit":"b45396070cf28fa36ecb44acd7be3e3bb81a712d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 24 13:14:05 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_vmstat_s.py"],"file_stats":[{"name":"tests/test_vmstat_s.py","lines_changed":2}]},"message":"update comment","epoch":1635106445,"epoch_utc":null},{"commit":"218b9aec8ac397e26e6cd4ff407f3d10ef88ea9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 24 13:10:47 2021 -0700","stats":{"files_changed":4,"insertions":87,"deletions":48,"files":["README.md","docs/parsers/csv_s.md","jc/parsers/csv_s.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/csv_s.md","lines_changed":75},{"name":"jc/parsers/csv_s.py","lines_changed":52},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update for streaming CSV parser","epoch":1635106247,"epoch_utc":null},{"commit":"2b887debc647bd533040e392465967d12869cb02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 24 12:24:44 2021 -0700","stats":{"files_changed":4,"insertions":10172,"deletions":1,"files":["CHANGELOG","jc/cli.py","jc/parsers/csv_s.py","tests/fixtures/generic/csv-10k-sales-records.csv"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/csv_s.py","lines_changed":168},{"name":"tests/fixtures/generic/csv-10k-sales-records.csv","lines_changed":10001}]},"message":"add csv streaming parser","epoch":1635103484,"epoch_utc":null},{"commit":"0313e3f8ca0e22e1575192d765d5afedf48e94df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 24 11:21:47 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":6,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":15}]},"message":"linting","epoch":1635099707,"epoch_utc":null},{"commit":"1669e6e20c3af3d28968558b76d0901a56775ac0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 24 10:58:13 2021 -0700","stats":{"files_changed":1,"insertions":23,"deletions":28,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":51}]},"message":"linting","epoch":1635098293,"epoch_utc":null},{"commit":"ef6de75dda90c7221d53e0e0a942f0cac2247354","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 13:11:22 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":4}]},"message":"add vmstat timestamp tests to utils","epoch":1635019882,"epoch_utc":null},{"commit":"a6bcec425a3f44ba3c7cd06b5ebaf522b66df109","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:55:14 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":2}]},"message":"comment update","epoch":1635018914,"epoch_utc":null},{"commit":"596ad9a64d002ced212b08512126e52707fe73d2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:47:44 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":2}]},"message":"update comment","epoch":1635018464,"epoch_utc":null},{"commit":"7a91c93319f75c37ba6bf268d8270947f0bf8b22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:40:24 2021 -0700","stats":{"files_changed":1,"insertions":122,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":122}]},"message":"add lsusb","epoch":1635018024,"epoch_utc":null},{"commit":"b5f7b35f89197879a9f13bd8fa5d2a0c77cc059a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:30:18 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":2}]},"message":"comment update","epoch":1635017418,"epoch_utc":null},{"commit":"2f47fb7f14c4ff0e1c835897d94ee81d14590aba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:24:35 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["tests/test_uname.py"],"file_stats":[{"name":"tests/test_uname.py","lines_changed":5}]},"message":"fix ParseError tests","epoch":1635017075,"epoch_utc":null},{"commit":"1b214c403657a50689f2a04892ce836dea669a1d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:24:11 2021 -0700","stats":{"files_changed":3,"insertions":30,"deletions":0,"files":["jc/parsers/lsusb.py","tests/fixtures/generic/lsusb-t.out","tests/test_lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":5},{"name":"tests/fixtures/generic/lsusb-t.out","lines_changed":15},{"name":"tests/test_lsusb.py","lines_changed":10}]},"message":"raise ParseError if -t option is detected. add test","epoch":1635017051,"epoch_utc":null},{"commit":"8f94f8acc6bb53bbb19ba150551c7df2183a8863","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 11:56:12 2021 -0700","stats":{"files_changed":11,"insertions":384,"deletions":3,"files":["README.md","docs/parsers/file.md","docs/parsers/lsusb.md","docs/parsers/uname.md","man/jc.1","tests/fixtures/centos-7.7/lsusb-v-single.json","tests/fixtures/centos-7.7/lsusb-v.json","tests/fixtures/centos-7.7/lsusb.json","tests/fixtures/generic/lsusb-test-attributes.json","tests/fixtures/generic/lsusb-test-attributes2.json","tests/test_lsusb.py"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":288},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"man/jc.1","lines_changed":7},{"name":"tests/fixtures/centos-7.7/lsusb-v-single.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsusb-v.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsusb.json","lines_changed":1},{"name":"tests/fixtures/generic/lsusb-test-attributes.json","lines_changed":1},{"name":"tests/fixtures/generic/lsusb-test-attributes2.json","lines_changed":1},{"name":"tests/test_lsusb.py","lines_changed":82}]},"message":"add tests and update docs","epoch":1635015372,"epoch_utc":null},{"commit":"3a2a69cfa55e2f40d7536d923170a5cfc986998e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 11:39:08 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":4}]},"message":"formatting","epoch":1635014348,"epoch_utc":null},{"commit":"f599c659881248b79c6dbc86d85a61311c9d3434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 11:08:26 2021 -0700","stats":{"files_changed":2,"insertions":464,"deletions":0,"files":["tests/fixtures/generic/lsusb-test-attributes.out","tests/fixtures/generic/lsusb-test-attributes2.out"],"file_stats":[{"name":"tests/fixtures/generic/lsusb-test-attributes.out","lines_changed":116},{"name":"tests/fixtures/generic/lsusb-test-attributes2.out","lines_changed":348}]},"message":"add stress test examples","epoch":1635012506,"epoch_utc":null},{"commit":"ad12849fd9fc2177afb30740acc63cf284dc394b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 11:08:05 2021 -0700","stats":{"files_changed":1,"insertions":138,"deletions":26,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":164}]},"message":"update docs example and","epoch":1635012485,"epoch_utc":null},{"commit":"f36b3789e8df6673207d6c2d3d0796acfdfe011d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:39:02 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":4}]},"message":"formatting","epoch":1634942342,"epoch_utc":null},{"commit":"6d18c0ba61cd188dbff736f1be47b7362c841687","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:37:40 2021 -0700","stats":{"files_changed":1,"insertions":47,"deletions":47,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":94}]},"message":"change variable name last_attribute and last_attr to last_item","epoch":1634942260,"epoch_utc":null},{"commit":"17097abec9567a58b5a5f7bbed11ecfd69cbd28c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:28:44 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":6,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":8}]},"message":"formatting","epoch":1634941724,"epoch_utc":null},{"commit":"b7ddd3b285f205211394edc70b611171cf72a4c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:23:04 2021 -0700","stats":{"files_changed":1,"insertions":22,"deletions":22,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":44}]},"message":"change variable names","epoch":1634941384,"epoch_utc":null},{"commit":"75b23f62c9d7b33907af92964d1a6234332fbc78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:18:55 2021 -0700","stats":{"files_changed":1,"insertions":35,"deletions":7,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":42}]},"message":"working configuration_descriptor and device_descriptor attributes","epoch":1634941135,"epoch_utc":null},{"commit":"f88967b2a59d79e053554d1e141f71e9d2d87456","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:02:04 2021 -0700","stats":{"files_changed":1,"insertions":126,"deletions":21,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":147}]},"message":"add attribute lists up to interface_association","epoch":1634940124,"epoch_utc":null},{"commit":"ba2846664b35b2e94aa905431c55c029b24a64e3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 13:40:01 2021 -0700","stats":{"files_changed":1,"insertions":22,"deletions":2,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":24}]},"message":"edpoint_descriptors attributes working","epoch":1634935201,"epoch_utc":null},{"commit":"10dba37ca2624e05eff246ef49df8ebd3f275d86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 12:49:57 2021 -0700","stats":{"files_changed":1,"insertions":28,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":29}]},"message":"hub_descriptor attributes working","epoch":1634932197,"epoch_utc":null},{"commit":"0e6f938514965503f1d86d56c047f9f8fc03ac65","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 10:31:26 2021 -0700","stats":{"files_changed":1,"insertions":36,"deletions":45,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":81}]},"message":"working hub_port_status section","epoch":1634923886,"epoch_utc":null},{"commit":"159d87c1126f4d79d5e34837bc2c353a5445803b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 07:14:21 2021 -0700","stats":{"files_changed":3,"insertions":18,"deletions":7,"files":["jc/parsers/uname.py","tests/fixtures/centos-7.7/uname.out","tests/test_uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":11},{"name":"tests/fixtures/centos-7.7/uname.out","lines_changed":1},{"name":"tests/test_uname.py","lines_changed":13}]},"message":"add length guard and test for uname with no -a on linux","epoch":1634912061,"epoch_utc":null},{"commit":"9e7b1621cf232e9859bdf018737e536820f380a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 21 16:59:28 2021 -0700","stats":{"files_changed":1,"insertions":18,"deletions":18,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":36}]},"message":"device_status working","epoch":1634860768,"epoch_utc":null},{"commit":"2057817ef8fec85b2a978b682e7fe8bc16def828","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 20 15:59:27 2021 -0700","stats":{"files_changed":11,"insertions":89,"deletions":0,"files":["tests/fixtures/debian10/uname-a.json","tests/fixtures/debian10/uname-a.out","tests/fixtures/freebsd12/uname-a.json","tests/fixtures/freebsd12/uname-a.out","tests/fixtures/freebsd12/uname-a2.json","tests/fixtures/freebsd12/uname-a2.out","tests/fixtures/generic/uname-a-different-proc.json","tests/fixtures/generic/uname-a-different-proc.out","tests/fixtures/generic/uname-a.json","tests/fixtures/generic/uname-a.out","tests/test_uname.py"],"file_stats":[{"name":"tests/fixtures/debian10/uname-a.json","lines_changed":10},{"name":"tests/fixtures/debian10/uname-a.out","lines_changed":2},{"name":"tests/fixtures/freebsd12/uname-a.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/uname-a.out","lines_changed":2},{"name":"tests/fixtures/freebsd12/uname-a2.json","lines_changed":7},{"name":"tests/fixtures/freebsd12/uname-a2.out","lines_changed":2},{"name":"tests/fixtures/generic/uname-a-different-proc.json","lines_changed":1},{"name":"tests/fixtures/generic/uname-a-different-proc.out","lines_changed":1},{"name":"tests/fixtures/generic/uname-a.json","lines_changed":1},{"name":"tests/fixtures/generic/uname-a.out","lines_changed":2},{"name":"tests/test_uname.py","lines_changed":60}]},"message":"add uname tests","epoch":1634770767,"epoch_utc":null},{"commit":"a1eabad2d37bb0d0e9407edf7305e223eba67da2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 20 15:58:43 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":6}]},"message":"add comments","epoch":1634770723,"epoch_utc":null},{"commit":"92bf2b1ca2a172d3977d6e3c36b5ca1a8c2bab63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 20 15:27:14 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":20,"files":["CHANGELOG","jc/parsers/uname.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":26}]},"message":"simplify fixup logic for uname","epoch":1634768834,"epoch_utc":null},{"commit":"2b2123a4ba9b77d2089d367fe85dcb5d2857a295","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 20 07:34:37 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","jc/parsers/uname.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/parsers/uname.py","lines_changed":4}]},"message":"add FreeBSD support","epoch":1634740477,"epoch_utc":null},{"commit":"908b2f9200ddcce4beb531a3c90908786b6a5b02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 19 16:16:25 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"add items","epoch":1634685385,"epoch_utc":null},{"commit":"deff0c7bfdf942b8d7e7bd140219e08bf80a50cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 19 16:05:10 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":5,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":6}]},"message":"remove print debug","epoch":1634684710,"epoch_utc":null},{"commit":"7cd01efa64029775042a2c145997ce30ef6b4f6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 19 16:01:56 2021 -0700","stats":{"files_changed":1,"insertions":25,"deletions":1,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":26}]},"message":"fixup for cases where the 'process' and/or 'machine' fields are blank on linux","epoch":1634684516,"epoch_utc":null},{"commit":"2dbe56456bbea2bdfce7eacbf8b9f10a1b249f55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 15 11:43:15 2021 -0700","stats":{"files_changed":1,"insertions":49,"deletions":39,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":88}]},"message":"add nested_dict. start work on hub_port_status and device_status","epoch":1634323395,"epoch_utc":null},{"commit":"6078a411ef612be8bad012aa404f34ebd74a1fd7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 13 11:07:09 2021 -0600","stats":{"files_changed":1,"insertions":79,"deletions":4,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":83}]},"message":"add initial schema doc","epoch":1634148429,"epoch_utc":null},{"commit":"4a3656562f161a51f5cb6f0e9ccd271859b78d62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 13 07:26:31 2021 -0600","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":6}]},"message":"del null keys","epoch":1634135191,"epoch_utc":null},{"commit":"ba75989a24839907723ed7c3d7a497473d489a34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 22:51:45 2021 -0600","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":10}]},"message":"update comments","epoch":1634104305,"epoch_utc":null},{"commit":"9e9e2c362894f0072ab839565829881d750c8912","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 22:40:39 2021 -0600","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":4}]},"message":"move state instantiation before has_data test","epoch":1634103639,"epoch_utc":null},{"commit":"9a2a8c6b61a46a9bfb5a4492b86774a4a78672ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 22:38:03 2021 -0600","stats":{"files_changed":1,"insertions":20,"deletions":52,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":72}]},"message":"shorten set_sections","epoch":1634103483,"epoch_utc":null},{"commit":"dae42ef1619441637672d634f9e5d7ab26115f09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 15:55:09 2021 -0600","stats":{"files_changed":1,"insertions":18,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":19}]},"message":"add hub_port_status and device_status","epoch":1634079309,"epoch_utc":null},{"commit":"931f2cab78bda180443535c04b532d04c6e88dd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 12:38:40 2021 -0700","stats":{"files_changed":1,"insertions":14,"deletions":11,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":25}]},"message":"add hub_descriptor","epoch":1634067520,"epoch_utc":null},{"commit":"72b061bed4453686d264ccf8977cba6c2a4794ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 12:29:59 2021 -0700","stats":{"files_changed":1,"insertions":32,"deletions":8,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":40}]},"message":"add endpoint_descriptors","epoch":1634066999,"epoch_utc":null},{"commit":"29a7c73990d9620b15a4010d17fc9a9a859f44b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 11:24:49 2021 -0700","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":16}]},"message":"add hid_device_descriptor and report_descriptors","epoch":1634063089,"epoch_utc":null},{"commit":"2d1d68e3007f76d4c34ac07ae822935ab6021e79","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 09:57:47 2021 -0700","stats":{"files_changed":1,"insertions":87,"deletions":88,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":175}]},"message":"simplify populate_lists. Add CDC lists","epoch":1634057867,"epoch_utc":null},{"commit":"c5c1e170d1f502de5c76e9e481a23b26ffcaf237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 11 21:33:18 2021 -0700","stats":{"files_changed":1,"insertions":111,"deletions":76,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":187}]},"message":"interface descriptors working","epoch":1634013198,"epoch_utc":null},{"commit":"9c1bb66452838e704ef2277f313bb51a42dc03b9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 11 07:48:23 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":18}]},"message":"fix remove _state field during schema_populate","epoch":1633963703,"epoch_utc":null},{"commit":"a4f3306bae90fbc807fdd9ff2ce71e25d36a663f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 10 22:18:13 2021 -0700","stats":{"files_changed":1,"insertions":69,"deletions":28,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":97}]},"message":"initial schema build. need to figure out why deleting _state from output_line causes exceptions","epoch":1633929493,"epoch_utc":null},{"commit":"1bc638b6ee7a820406ba4b84d3408f7cd4fe779d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 10 10:03:39 2021 -0700","stats":{"files_changed":1,"insertions":36,"deletions":32,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":68}]},"message":"add bus_list and add all device_list data to the list","epoch":1633885419,"epoch_utc":null},{"commit":"9ad0cd9dae8822235c37159541ce72471eb4263e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 9 20:05:55 2021 -0700","stats":{"files_changed":1,"insertions":116,"deletions":211,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":327}]},"message":"now storing state within the objects to make building the schema (later) easier.","epoch":1633835155,"epoch_utc":null},{"commit":"6d4a4691276d8659253b2ac8f8bdbd71a1fece7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 6 22:03:16 2021 -0700","stats":{"files_changed":1,"insertions":356,"deletions":333,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":689}]},"message":"use class for state","epoch":1633582996,"epoch_utc":null},{"commit":"ed6997e3ff2e575a6d4daa7d7a2cbe7dddacdd4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 5 16:47:23 2021 -0700","stats":{"files_changed":2,"insertions":170,"deletions":34,"files":["jc/parsers/lsusb.py","tests/fixtures/centos-7.7/lsusb-v-single.out"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":104},{"name":"tests/fixtures/centos-7.7/lsusb-v-single.out","lines_changed":100}]},"message":"add interface_association section","epoch":1633477643,"epoch_utc":null},{"commit":"eb788fca6e25eea1fa8a43b22360c852ecf5af35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 5 14:59:49 2021 -0700","stats":{"files_changed":4,"insertions":919,"deletions":0,"files":["jc/cli.py","jc/parsers/lsusb.py","tests/fixtures/centos-7.7/lsusb-v.out","tests/fixtures/centos-7.7/lsusb.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/lsusb.py","lines_changed":404},{"name":"tests/fixtures/centos-7.7/lsusb-v.out","lines_changed":509},{"name":"tests/fixtures/centos-7.7/lsusb.out","lines_changed":5}]},"message":"somewhat working lsusb parser. needs a lot more TLC","epoch":1633471189,"epoch_utc":null},{"commit":"9186f5f37739012b8c04c776310a20ef55b1469f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 2 14:53:07 2021 -0700","stats":{"files_changed":7,"insertions":99,"deletions":4,"files":["CHANGELOG","jc/__init__.py","jc/parsers/file.py","setup.py","tests/fixtures/osx-10.14.6/file3.json","tests/fixtures/osx-10.14.6/file3.out","tests/test_file.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":11},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/file3.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/file3.out","lines_changed":72},{"name":"tests/test_file.py","lines_changed":12}]},"message":"fix file parser for gzip cases (has ': ' in the description, which is the delimiter)","epoch":1633211587,"epoch_utc":null},{"commit":"30cff5f28140a5b20a617c8145c13e43b7b6685b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 27 10:35:08 2021 -0700","stats":{"files_changed":8,"insertions":17,"deletions":3,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":4},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":4},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"add note that the streaming parser outputs JSON Lines","epoch":1632764108,"epoch_utc":null},{"commit":"b724e0969a0d6b22bed0c77eb8d629381179ea3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 20:22:16 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2}]},"message":"-qq instead of -q","epoch":1632712936,"epoch_utc":null},{"commit":"a62c49e8715873b068a96da5021ea24a783acd6b","merge":"77dcbc5 9b160f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 16:35:29 2021 -0700","message":"Merge pull request #172 from kellyjonbrazil/master\n\nsync master to dev","epoch":1632699329,"epoch_utc":null},{"commit":"9b160f6279bbbf0c15413c98922eef137ba2f3f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 16:29:36 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]},"message":"link update","epoch":1632698976,"epoch_utc":null},{"commit":"338a4e2612f70bb3e2af31f61a7db75f647293fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 16:27:15 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]},"message":"formatting","epoch":1632698835,"epoch_utc":null},{"commit":"0140688750be61dd752059ee66734ab1c7a8f30e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 16:24:18 2021 -0700","stats":{"files_changed":6,"insertions":8,"deletions":4,"files":["README.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"link updates","epoch":1632698658,"epoch_utc":null},{"commit":"73e5ea98c1ca2b9299085e3832791162eca3b9ff","merge":"528aac7 77dcbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 14:55:18 2021 -0700","message":"Merge pull request #170 from kellyjonbrazil/dev\n\njc v1.17.0 from dev","epoch":1632693318,"epoch_utc":null},{"commit":"77dcbc544da271edab5de5ad209117e98c846f9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 14:50:02 2021 -0700","stats":{"files_changed":3,"insertions":2,"deletions":3,"files":["CHANGELOG","jc/__init__.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"final doc update","epoch":1632693002,"epoch_utc":null},{"commit":"c7bcb0947ae32acc9cdba7a6975d2f2557f10a39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 13:20:42 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":4}]},"message":"indent subsequent error and warning lines","epoch":1632687642,"epoch_utc":null},{"commit":"5cd3f7f71d38b560a88dd6057e9c7a94991a3d71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 13:15:35 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":6}]},"message":"Add example to raise ParseError if there is no output data to yield","epoch":1632687335,"epoch_utc":null},{"commit":"5044388ab2e8d7d8b427fd51b0ab875611bd127f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 13:04:27 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":3,"files":["jc/parsers/vmstat_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":6},{"name":"tests/test_vmstat_s.py","lines_changed":3}]},"message":"raise if line data is unrecognized","epoch":1632686667,"epoch_utc":null},{"commit":"ee075db59819d80e4dcb60ddbd9cfe2fd529dfe9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 12:00:30 2021 -0700","stats":{"files_changed":4,"insertions":5,"deletions":7,"files":["jc/cli.py","jc/parsers/foo_s.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":5},{"name":"jc/parsers/vmstat_s.py","lines_changed":3}]},"message":"linting","epoch":1632682830,"epoch_utc":null},{"commit":"9904e0be61e7c81b907bf3770f111346daeff481","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Sep 25 08:28:57 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":2},{"name":"jc/utils.py","lines_changed":2}]},"message":"formatting","epoch":1632583737,"epoch_utc":null},{"commit":"31b69b3242eeca2c02f87c31d58193dd3f06fe49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Sep 25 08:23:46 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":6},{"name":"jc/utils.py","lines_changed":6}]},"message":"formatting","epoch":1632583426,"epoch_utc":null},{"commit":"e6a80fea3228122dd84e17672c835c0460ad1342","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Sep 25 08:19:34 2021 -0700","stats":{"files_changed":3,"insertions":7,"deletions":7,"files":["docs/utils.md","jc/utils.py","man/jc.1"],"file_stats":[{"name":"docs/utils.md","lines_changed":6},{"name":"jc/utils.py","lines_changed":6},{"name":"man/jc.1","lines_changed":2}]},"message":"formatting","epoch":1632583174,"epoch_utc":null},{"commit":"d6aec00e038d1ecfe43c13a6909d50630455b372","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 16:45:38 2021 -0700","stats":{"files_changed":4,"insertions":27,"deletions":1,"files":["tests/fixtures/ubuntu-18.04/vmstat-1-long-streaming.json","tests/fixtures/ubuntu-18.04/vmstat-1-long.json","tests/test_vmstat.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"tests/fixtures/ubuntu-18.04/vmstat-1-long-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/vmstat-1-long.json","lines_changed":1},{"name":"tests/test_vmstat.py","lines_changed":12},{"name":"tests/test_vmstat_s.py","lines_changed":14}]},"message":"add vmstat-1-long tests","epoch":1632527138,"epoch_utc":null},{"commit":"4aa7d81e11ea7fcfbb5c9d74337cde617b1a0d5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 16:27:11 2021 -0700","stats":{"files_changed":3,"insertions":50,"deletions":2,"files":["jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","tests/fixtures/ubuntu-18.04/vmstat-1-long.out"],"file_stats":[{"name":"jc/parsers/vmstat.py","lines_changed":3},{"name":"jc/parsers/vmstat_s.py","lines_changed":7},{"name":"tests/fixtures/ubuntu-18.04/vmstat-1-long.out","lines_changed":42}]},"message":"ignore re-printed header rows in output","epoch":1632526031,"epoch_utc":null},{"commit":"48cdabc3b0862d6291e1ec59ab385e0e146c31eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 10:11:15 2021 -0700","stats":{"files_changed":4,"insertions":16,"deletions":0,"files":["docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/vmstat.md","lines_changed":4},{"name":"docs/parsers/vmstat_s.md","lines_changed":4},{"name":"jc/parsers/vmstat.py","lines_changed":4},{"name":"jc/parsers/vmstat_s.py","lines_changed":4}]},"message":"document timestamps","epoch":1632503475,"epoch_utc":null},{"commit":"a1791ef5479749692c79bbe98fc7687d70cd6cda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 10:01:13 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2}]},"message":"linting","epoch":1632502873,"epoch_utc":null},{"commit":"7bc87f6c2d4cfcfa656a1c1b8973a4c0414c85d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 09:24:30 2021 -0700","stats":{"files_changed":8,"insertions":8,"deletions":8,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"change _meta to _jc_meta","epoch":1632500670,"epoch_utc":null},{"commit":"bbed9e274b8252ba0518140fe7fc97029310771f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 09:16:44 2021 -0700","stats":{"files_changed":1,"insertions":154,"deletions":159,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":313}]},"message":"linting","epoch":1632500204,"epoch_utc":null},{"commit":"486282b9856f5e56cf43ee1399d8e7cb78353b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 08:52:39 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":10}]},"message":"linting","epoch":1632498759,"epoch_utc":null},{"commit":"a4d45b653f794033978940da14910f5d607a8254","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 08:49:37 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["jc/parsers/foo_s.py","jc/parsers/vmstat.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":8}]},"message":"linting","epoch":1632498577,"epoch_utc":null},{"commit":"22e151b01c0f97c141d912c9646e46df0320d622","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 08:43:09 2021 -0700","stats":{"files_changed":2,"insertions":56,"deletions":60,"files":["jc/cli.py","jc/utils.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":88},{"name":"jc/utils.py","lines_changed":28}]},"message":"linting","epoch":1632498189,"epoch_utc":null},{"commit":"7a4ebcd1ecdb4929aae70e44b4f9b6b5ab52b393","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 21:22:01 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":4}]},"message":"language hints","epoch":1632457321,"epoch_utc":null},{"commit":"651cbfe02fbb354c4caf8e0d022655642e7caed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 21:20:25 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"add streaming foo parser","epoch":1632457225,"epoch_utc":null},{"commit":"8c3e764516e1c28961b09380b638a57ce98b1261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 21:17:17 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add streaming parser to contrib guidelines","epoch":1632457037,"epoch_utc":null},{"commit":"b4e75da7e3f23502723ce8b2a7261b376f296864","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 21:14:47 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"templates/readme_template","lines_changed":4}]},"message":"formatting","epoch":1632456887,"epoch_utc":null},{"commit":"37223f086cabc8db5962415bd161fed151dafb9d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 21:13:21 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":5},{"name":"templates/readme_template","lines_changed":5}]},"message":"formatting","epoch":1632456801,"epoch_utc":null},{"commit":"a404033735c2c8075a8e08194197eae59db70afd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 20:54:44 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add error and warning message wrap info","epoch":1632455684,"epoch_utc":null},{"commit":"b7433ed085c0ba22ea0d49330871a651a8d83fb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 20:53:31 2021 -0700","stats":{"files_changed":6,"insertions":80,"deletions":41,"files":["docs/utils.md","jc/cli.py","jc/parsers/file.py","jc/parsers/ls.py","jc/parsers/traceroute.py","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":16},{"name":"jc/cli.py","lines_changed":39},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":60}]},"message":"auto wrap warning and error messages","epoch":1632455611,"epoch_utc":null},{"commit":"224d3d65ada4216e28e142d411b0c2c3358517b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 13:15:38 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"Add exception class name to error message","epoch":1632428138,"epoch_utc":null},{"commit":"a349fb0bdabaf74503831f22c4efbd02254f809d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 13:08:31 2021 -0700","stats":{"files_changed":3,"insertions":10,"deletions":8,"files":["README.md","docs/utils.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"docs/utils.md","lines_changed":6},{"name":"man/jc.1","lines_changed":6}]},"message":"change _meta to _jc_meta","epoch":1632427711,"epoch_utc":null},{"commit":"e7ddcfb83fb295034db44ade407476ff3a962cd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 13:07:10 2021 -0700","stats":{"files_changed":5,"insertions":14,"deletions":12,"files":["jc/utils.py","templates/manpage_template","templates/readme_template",".../centos-7.7/ping-ip-O-streaming-ignore-exceptions.json","tests/test_ping_s.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":10},{"name":"templates/manpage_template","lines_changed":6},{"name":"templates/readme_template","lines_changed":6},{"name":".../centos-7.7/ping-ip-O-streaming-ignore-exceptions.json","lines_changed":2},{"name":"tests/test_ping_s.py","lines_changed":2}]},"message":"change _meta to _jc_meta","epoch":1632427630,"epoch_utc":null},{"commit":"abd20dfe3662f65373ac582c70aa740e53b52f68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 12:58:24 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"templates/manpage_template","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting","epoch":1632427104,"epoch_utc":null},{"commit":"dc1fd3ef1be41aee349b159059f1febff76f6caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 11:54:58 2021 -0700","stats":{"files_changed":4,"insertions":12,"deletions":12,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"man/jc.1","lines_changed":6},{"name":"templates/manpage_template","lines_changed":6},{"name":"templates/readme_template","lines_changed":6}]},"message":"fix -qq docs","epoch":1632423298,"epoch_utc":null},{"commit":"98a7686db46fbd3ed98382867976249f307d0015","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 11:48:39 2021 -0700","stats":{"files_changed":18,"insertions":160,"deletions":152,"files":["README.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","docs/utils.md","jc/cli.py","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","jc/utils.py","man/jc.1","templates/manpage_template","templates/readme_template","... => ping-ip-O-streaming-ignore-exceptions.json}","tests/test_ls_s.py","tests/test_ping_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":9},{"name":"docs/parsers/ping_s.md","lines_changed":9},{"name":"docs/parsers/vmstat_s.md","lines_changed":9},{"name":"docs/utils.md","lines_changed":6},{"name":"jc/cli.py","lines_changed":23},{"name":"jc/parsers/foo_s.py","lines_changed":13},{"name":"jc/parsers/ls_s.py","lines_changed":13},{"name":"jc/parsers/ping_s.py","lines_changed":13},{"name":"jc/parsers/vmstat_s.py","lines_changed":13},{"name":"jc/utils.py","lines_changed":12},{"name":"man/jc.1","lines_changed":4},{"name":"templates/manpage_template","lines_changed":4},{"name":"templates/readme_template","lines_changed":2},{"name":"... => ping-ip-O-streaming-ignore-exceptions.json}","lines_changed":0},{"name":"tests/test_ls_s.py","lines_changed":24},{"name":"tests/test_ping_s.py","lines_changed":140},{"name":"tests/test_vmstat_s.py","lines_changed":16}]},"message":"use -qq to ignore streaming exceptions","epoch":1632422919,"epoch_utc":null},{"commit":"9c6c6c4330fc68115be012de254161f36e3a8328","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 09:04:37 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add next() info","epoch":1632413077,"epoch_utc":null},{"commit":"f9be5651daa891e06ad0acd8980ffc0fe51fd29d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:59:26 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":6,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":5},{"name":"templates/readme_template","lines_changed":5}]},"message":"add language hints","epoch":1632412766,"epoch_utc":null},{"commit":"df9835a3e62bb2b3b6ec8b55f06a25a00a799d92","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:57:14 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting","epoch":1632412634,"epoch_utc":null},{"commit":"92363be2dd633bdd3c2dd07c72ebd281d2cb4565","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:56:14 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"templates/readme_template","lines_changed":3}]},"message":"fix streaming python module example","epoch":1632412574,"epoch_utc":null},{"commit":"31b62030156f9c826fe5c7d127e9dd0ace582dd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:54:15 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"templates/readme_template","lines_changed":6}]},"message":"formatting","epoch":1632412455,"epoch_utc":null},{"commit":"18805858d685d456f9a38540bbaedbaa1a411546","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:53:25 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":4},{"name":"templates/manpage_template","lines_changed":2}]},"message":"formatting","epoch":1632412405,"epoch_utc":null},{"commit":"e676f0e20fb6e96a536c4d182b0d287cdc1ad0f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:53:14 2021 -0700","stats":{"files_changed":2,"insertions":36,"deletions":6,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":21},{"name":"templates/readme_template","lines_changed":21}]},"message":"add streaming parser info for python module use","epoch":1632412394,"epoch_utc":null},{"commit":"20652edefaa7705b8ba756bae3944ff362a295a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 20:11:26 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":7}]},"message":"update changelog","epoch":1632366686,"epoch_utc":null},{"commit":"98c29d07478093e78f53ec633f2dd08cafc3e3ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 19:54:12 2021 -0700","stats":{"files_changed":8,"insertions":120,"deletions":0,"files":["tests/fixtures/centos-7.7/vmstat-a.json","tests/fixtures/centos-7.7/vmstat-at-5-10.json","tests/fixtures/centos-7.7/vmstat-awt.json","tests/fixtures/centos-7.7/vmstat-d.json","tests/fixtures/centos-7.7/vmstat-dt.json","tests/fixtures/centos-7.7/vmstat-w.json","tests/fixtures/centos-7.7/vmstat.json","tests/test_vmstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/vmstat-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-at-5-10.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-awt.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-d.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-dt.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-w.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat.json","lines_changed":1},{"name":"tests/test_vmstat.py","lines_changed":113}]},"message":"add vmstat tests","epoch":1632365652,"epoch_utc":null},{"commit":"41a6311f6b3ed2cc94919d042aed51c46cdf3e2f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 19:34:44 2021 -0700","stats":{"files_changed":9,"insertions":132,"deletions":1,"files":["tests/fixtures/centos-7.7/vmstat-a-streaming.json",".../centos-7.7/vmstat-at-5-10-streaming.json",".../fixtures/centos-7.7/vmstat-awt-streaming.json","tests/fixtures/centos-7.7/vmstat-d-streaming.json","tests/fixtures/centos-7.7/vmstat-dt-streaming.json","tests/fixtures/centos-7.7/vmstat-streaming.json","tests/fixtures/centos-7.7/vmstat-w-streaming.json","tests/test_ping_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/vmstat-a-streaming.json","lines_changed":1},{"name":".../centos-7.7/vmstat-at-5-10-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/vmstat-awt-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-d-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-dt-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-w-streaming.json","lines_changed":1},{"name":"tests/test_ping_s.py","lines_changed":2},{"name":"tests/test_vmstat_s.py","lines_changed":124}]},"message":"add streaming parser tests","epoch":1632364484,"epoch_utc":null},{"commit":"978760ec57e04e3ec347c8764bfad015b6dddbff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 19:32:20 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"add exception class name to error string","epoch":1632364340,"epoch_utc":null},{"commit":"d410425537817964ceb7b61e0fdff6c03fdf8766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:43:26 2021 -0700","stats":{"files_changed":4,"insertions":136,"deletions":136,"files":["docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/vmstat.md","lines_changed":68},{"name":"docs/parsers/vmstat_s.md","lines_changed":68},{"name":"jc/parsers/vmstat.py","lines_changed":68},{"name":"jc/parsers/vmstat_s.py","lines_changed":68}]},"message":"replace single quotes with double quotes in doc","epoch":1632347006,"epoch_utc":null},{"commit":"6b7430329cbe1bfb95b47bcfe031906641c127e1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:38:13 2021 -0700","stats":{"files_changed":5,"insertions":269,"deletions":1,"files":["README.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat_s.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":145},{"name":"docs/parsers/vmstat_s.md","lines_changed":105},{"name":"jc/parsers/vmstat_s.py","lines_changed":6},{"name":"man/jc.1","lines_changed":12}]},"message":"doc update","epoch":1632346693,"epoch_utc":null},{"commit":"40fe0d4a6081a1233bf5c3eb51a01da1f12bc4dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:34:46 2021 -0700","stats":{"files_changed":1,"insertions":141,"deletions":22,"files":["jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":163}]},"message":"working parser","epoch":1632346486,"epoch_utc":null},{"commit":"365c5354a0349e470558d15243217a064e73da38","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:34:32 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/vmstat.py"],"file_stats":[{"name":"jc/parsers/vmstat.py","lines_changed":1}]},"message":"remove debug print statement","epoch":1632346472,"epoch_utc":null},{"commit":"b246a05cbb4c1c564f81b3e72cecb62edbe6ced6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:34:19 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"fix vmstat-s name","epoch":1632346459,"epoch_utc":null},{"commit":"9e5a7a4abb8668d043625951a05eb5733cbbd56f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:07:09 2021 -0700","stats":{"files_changed":7,"insertions":37,"deletions":0,"files":["tests/fixtures/centos-7.7/vmstat-a.out","tests/fixtures/centos-7.7/vmstat-at-5-10.out","tests/fixtures/centos-7.7/vmstat-awt.out","tests/fixtures/centos-7.7/vmstat-d.out","tests/fixtures/centos-7.7/vmstat-dt.out","tests/fixtures/centos-7.7/vmstat-w.out","tests/fixtures/centos-7.7/vmstat.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/vmstat-a.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/vmstat-at-5-10.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/vmstat-awt.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/vmstat-d.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/vmstat-dt.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/vmstat-w.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/vmstat.out","lines_changed":4}]},"message":"add vmstat sample output","epoch":1632344829,"epoch_utc":null},{"commit":"f266acbccafc040c375723147b8e5d7fddb1e697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:06:51 2021 -0700","stats":{"files_changed":1,"insertions":106,"deletions":14,"files":["jc/parsers/vmstat.py"],"file_stats":[{"name":"jc/parsers/vmstat.py","lines_changed":120}]},"message":"add processing logic","epoch":1632344811,"epoch_utc":null},{"commit":"4e3b471f1801f1b9006b18cae2a3d816f361262e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:06:28 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"add format for vmstat","epoch":1632344788,"epoch_utc":null},{"commit":"5e28736c2e0c951e71e6531e03a9619279d95d3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 12:08:20 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add vmstat and vmstat_s","epoch":1632337700,"epoch_utc":null},{"commit":"a91913a3b517ea0dbb25d6e4cc92850eb2fde5ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 12:07:27 2021 -0700","stats":{"files_changed":1,"insertions":106,"deletions":0,"files":["jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":106}]},"message":"streaming parser template","epoch":1632337647,"epoch_utc":null},{"commit":"90c64f0ae0d97d025adee40970d89baca79ee4ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 12:07:09 2021 -0700","stats":{"files_changed":1,"insertions":182,"deletions":0,"files":["jc/parsers/vmstat.py"],"file_stats":[{"name":"jc/parsers/vmstat.py","lines_changed":182}]},"message":"initial working parser","epoch":1632337629,"epoch_utc":null},{"commit":"7cc642ed1a476abda709ac9b79900a1de12e1ef7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 12:06:56 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":4}]},"message":"formatting","epoch":1632337616,"epoch_utc":null},{"commit":"809f64d35a92bb3d7380fa9d78ac1421a10b81fc","merge":"ff0fda4 a6f859a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 22:58:18 2021 -0700","message":"Merge pull request #169 from kellyjonbrazil/streaming\n\nStreaming to dev","epoch":1632290298,"epoch_utc":null},{"commit":"a6f859a55edae50fcc185948736218404cfaa929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 22:47:48 2021 -0700","stats":{"files_changed":18,"insertions":168,"deletions":153,"files":[".../osx-10.14.6/ping-hostname-p-streaming.json",".../osx-10.14.6/ping-hostname-s-streaming.json",".../osx-10.14.6/ping-hostname-streaming.json",".../osx-10.14.6/ping-ip-dup-streaming.json",".../fixtures/osx-10.14.6/ping-ip-p-streaming.json",".../fixtures/osx-10.14.6/ping-ip-s-streaming.json","tests/fixtures/osx-10.14.6/ping-ip-streaming.json",".../osx-10.14.6/ping-ip-unreachable-streaming.json",".../osx-10.14.6/ping6-hostname-p-streaming.json",".../osx-10.14.6/ping6-hostname-s-streaming.json",".../osx-10.14.6/ping6-hostname-streaming.json",".../osx-10.14.6/ping6-ip-dup-streaming.json",".../fixtures/osx-10.14.6/ping6-ip-p-streaming.json",".../fixtures/osx-10.14.6/ping6-ip-s-streaming.json","tests/fixtures/osx-10.14.6/ping6-ip-streaming.json","tests/fixtures/pi/ping-ip-O-D-streaming.json","tests/fixtures/pi/ping-ip-O-streaming.json","tests/test_ping_s.py"],"file_stats":[{"name":".../osx-10.14.6/ping-hostname-p-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping-hostname-s-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping-hostname-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping-ip-dup-streaming.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/ping-ip-p-streaming.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/ping-ip-s-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping-ip-unreachable-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping6-hostname-p-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping6-hostname-s-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping6-hostname-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping6-ip-dup-streaming.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/ping6-ip-p-streaming.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/ping6-ip-s-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-streaming.json","lines_changed":1},{"name":"tests/fixtures/pi/ping-ip-O-D-streaming.json","lines_changed":1},{"name":"tests/fixtures/pi/ping-ip-O-streaming.json","lines_changed":1},{"name":"tests/test_ping_s.py","lines_changed":304}]},"message":"add final ping_s tests","epoch":1632289668,"epoch_utc":null},{"commit":"39ef88078f43708e470d3c1b2fd95e76b5cbeb08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 22:47:02 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":1}]},"message":"add destination_ip to error lines","epoch":1632289622,"epoch_utc":null},{"commit":"aeea5e8d2eab2fef3e14637f512aed7b117c4a3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 22:00:05 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/test_ls_s.py"],"file_stats":[{"name":"tests/test_ls_s.py","lines_changed":2}]},"message":"formatting","epoch":1632286805,"epoch_utc":null},{"commit":"1a0700bff4bdebbd9f1f92f2fc7a56c4d5ed6925","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 21:58:59 2021 -0700","stats":{"files_changed":31,"insertions":240,"deletions":213,"files":[".../fedora32/ping-hostname-O-D-p-s-streaming.json",".../fedora32/ping-hostname-O-p-streaming.json",".../fedora32/ping-hostname-O-streaming.json","tests/fixtures/fedora32/ping-ip-O-D-streaming.json","tests/fixtures/fedora32/ping-ip-O-streaming.json",".../fedora32/ping6-hostname-O-D-p-s-streaming.json",".../fedora32/ping6-hostname-O-p-streaming.json",".../fedora32/ping6-ip-O-D-p-streaming.json",".../fixtures/fedora32/ping6-ip-O-p-streaming.json",".../freebsd12/ping-hostname-p-streaming.json",".../freebsd12/ping-hostname-s-streaming.json",".../freebsd12/ping-hostname-streaming.json","tests/fixtures/freebsd12/ping-ip-p-streaming.json","tests/fixtures/freebsd12/ping-ip-s-streaming.json","tests/fixtures/freebsd12/ping-ip-streaming.json",".../freebsd12/ping6-hostname-p-streaming.json",".../freebsd12/ping6-hostname-s-streaming.json",".../freebsd12/ping6-hostname-streaming.json","tests/fixtures/freebsd12/ping6-ip-p-streaming.json","tests/fixtures/freebsd12/ping6-ip-s-streaming.json","tests/fixtures/freebsd12/ping6-ip-streaming.json",".../ping-hostname-O-D-p-s-streaming.json",".../ubuntu-18.04/ping-hostname-O-p-streaming.json",".../ubuntu-18.04/ping-hostname-O-streaming.json",".../ubuntu-18.04/ping-ip-O-D-streaming.json",".../fixtures/ubuntu-18.04/ping-ip-O-streaming.json",".../ping6-hostname-O-D-p-s-streaming.json",".../ubuntu-18.04/ping6-hostname-O-p-streaming.json",".../ubuntu-18.04/ping6-ip-O-D-p-streaming.json",".../ubuntu-18.04/ping6-ip-O-p-streaming.json","tests/test_ping_s.py"],"file_stats":[{"name":".../fedora32/ping-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../fedora32/ping-hostname-O-p-streaming.json","lines_changed":1},{"name":".../fedora32/ping-hostname-O-streaming.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-ip-O-D-streaming.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-ip-O-streaming.json","lines_changed":1},{"name":".../fedora32/ping6-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../fedora32/ping6-hostname-O-p-streaming.json","lines_changed":1},{"name":".../fedora32/ping6-ip-O-D-p-streaming.json","lines_changed":1},{"name":".../fixtures/fedora32/ping6-ip-O-p-streaming.json","lines_changed":1},{"name":".../freebsd12/ping-hostname-p-streaming.json","lines_changed":1},{"name":".../freebsd12/ping-hostname-s-streaming.json","lines_changed":1},{"name":".../freebsd12/ping-hostname-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-p-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-s-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-streaming.json","lines_changed":1},{"name":".../freebsd12/ping6-hostname-p-streaming.json","lines_changed":1},{"name":".../freebsd12/ping6-hostname-s-streaming.json","lines_changed":1},{"name":".../freebsd12/ping6-hostname-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-p-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-s-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-streaming.json","lines_changed":1},{"name":".../ping-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping-hostname-O-p-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping-hostname-O-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping-ip-O-D-streaming.json","lines_changed":1},{"name":".../fixtures/ubuntu-18.04/ping-ip-O-streaming.json","lines_changed":1},{"name":".../ping6-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-hostname-O-p-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-ip-O-D-p-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-ip-O-p-streaming.json","lines_changed":1},{"name":"tests/test_ping_s.py","lines_changed":423}]},"message":"add more ping-s tests","epoch":1632286739,"epoch_utc":null},{"commit":"b5fa6d068f240671eb948b055cd4f7bf127e0ec0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 16:03:00 2021 -0700","stats":{"files_changed":5,"insertions":25,"deletions":5,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":6},{"name":"docs/parsers/ping_s.md","lines_changed":6},{"name":"jc/parsers/foo_s.py","lines_changed":6},{"name":"jc/parsers/ls_s.py","lines_changed":6},{"name":"jc/parsers/ping_s.py","lines_changed":6}]},"message":"update docs","epoch":1632265380,"epoch_utc":null},{"commit":"1baec0b420feff068f2dc1e35499f78aa7d0a6e0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 15:43:02 2021 -0700","stats":{"files_changed":13,"insertions":815,"deletions":0,"files":[".../ping-hostname-O-D-p-s-streaming.json",".../centos-7.7/ping-hostname-O-p-streaming.json",".../centos-7.7/ping-hostname-O-streaming.json",".../fixtures/centos-7.7/ping-ip-O-D-streaming.json",".../centos-7.7/ping-ip-O-streaming-quiet.json","tests/fixtures/centos-7.7/ping-ip-O-streaming.json",".../fixtures/centos-7.7/ping-ip-dup-streaming.json",".../ping6-hostname-O-D-p-s-streaming.json",".../centos-7.7/ping6-hostname-O-p-streaming.json",".../centos-7.7/ping6-ip-O-D-p-streaming.json",".../centos-7.7/ping6-ip-O-p-streaming.json",".../centos-7.7/ping6-ip-dup-streaming.json","tests/test_ping_s.py"],"file_stats":[{"name":".../ping-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping-hostname-O-p-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping-hostname-O-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/ping-ip-O-D-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping-ip-O-streaming-quiet.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-ip-O-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/ping-ip-dup-streaming.json","lines_changed":1},{"name":".../ping6-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping6-hostname-O-p-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping6-ip-O-D-p-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping6-ip-O-p-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping6-ip-dup-streaming.json","lines_changed":1},{"name":"tests/test_ping_s.py","lines_changed":803}]},"message":"add some streaming tests","epoch":1632264182,"epoch_utc":null},{"commit":"4f2a4e1dee9d722d2aa5ddf2c082a358c88cf640","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 15:42:45 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":8}]},"message":"skip blank lines and warning lines","epoch":1632264165,"epoch_utc":null},{"commit":"758d617668d1f9d0f27b52d46749e5b67a570cf1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 13:29:50 2021 -0700","stats":{"files_changed":5,"insertions":5,"deletions":5,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2}]},"message":"doc update","epoch":1632256190,"epoch_utc":null},{"commit":"55322c37f57a9c8e28641a61928fad2329f5e50d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 12:36:36 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":4}]},"message":"formatting","epoch":1632252996,"epoch_utc":null},{"commit":"d19ea5552bb3a379f7f92bcb58794c557ecc6647","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 12:33:05 2021 -0700","stats":{"files_changed":12,"insertions":193,"deletions":0,"files":["tests/fixtures/centos-7.7/ls-al-streaming.json","tests/fixtures/centos-7.7/ls-alR-streaming.json","tests/fixtures/centos-7.7/ls-alh-streaming.json","tests/fixtures/osx-10.14.6/ls-al-streaming.json","tests/fixtures/osx-10.14.6/ls-alR-streaming.json","tests/fixtures/osx-10.14.6/ls-alh-streaming.json",".../osx-10.14.6/ls-lR-empty-folder-streaming.json","tests/fixtures/ubuntu-18.04/ls-al-streaming.json","tests/fixtures/ubuntu-18.04/ls-alR-streaming.json","tests/fixtures/ubuntu-18.04/ls-alh-streaming.json",".../fixtures/ubuntu-18.04/ls-l-iso-streaming.json","tests/test_ls_s.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ls-al-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-alR-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-alh-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-al-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-alR-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-alh-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ls-lR-empty-folder-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-al-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-alR-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-alh-streaming.json","lines_changed":1},{"name":".../fixtures/ubuntu-18.04/ls-l-iso-streaming.json","lines_changed":1},{"name":"tests/test_ls_s.py","lines_changed":182}]},"message":"add streaming ls parser tests","epoch":1632252785,"epoch_utc":null},{"commit":"130c3527c1083d399deef00ee8fcaa75f609b485","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 12:32:34 2021 -0700","stats":{"files_changed":6,"insertions":25,"deletions":25,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":8},{"name":"docs/parsers/ping_s.md","lines_changed":12},{"name":"jc/parsers/foo_s.py","lines_changed":6},{"name":"jc/parsers/ls_s.py","lines_changed":10},{"name":"jc/parsers/ping_s.py","lines_changed":12},{"name":"man/jc.1","lines_changed":2}]},"message":"update docstrings","epoch":1632252754,"epoch_utc":null},{"commit":"3f221f471416766a860bd19850afda4899ee5eb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 13:21:20 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":6},{"name":"jc/parsers/ping_s.py","lines_changed":6}]},"message":"doc update","epoch":1632169280,"epoch_utc":null},{"commit":"d64c4cb39056bb869fc117477612ae5ae2ef3d85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 13:04:26 2021 -0700","stats":{"files_changed":2,"insertions":141,"deletions":1,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":72},{"name":"templates/manpage_template","lines_changed":70}]},"message":"add streaming parsers section","epoch":1632168266,"epoch_utc":null},{"commit":"448c56aa46b72438e4a4c83b10a7eb889e3f50e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 13:04:14 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting","epoch":1632168254,"epoch_utc":null},{"commit":"9fbea15b6d031baa8c90f2602e39de7cf51408e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 11:59:54 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":8,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":6},{"name":"jc/parsers/ping_s.py","lines_changed":4}]},"message":"rename state class to _state","epoch":1632164394,"epoch_utc":null},{"commit":"932060314b3c1ce518b9f57532e124285cb3ad0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 11:51:27 2021 -0700","stats":{"files_changed":2,"insertions":41,"deletions":11,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":50},{"name":"jc/parsers/ping_s.py","lines_changed":2}]},"message":"doc update","epoch":1632163887,"epoch_utc":null},{"commit":"5e68ae50097cb339f3390449db7e3f189a716320","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 11:42:15 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":7}]},"message":"import exception. tighten up os detection","epoch":1632163335,"epoch_utc":null},{"commit":"d03541beae44a4571a7d0481af01a5c19506207f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 11:24:59 2021 -0700","stats":{"files_changed":1,"insertions":12,"deletions":5,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":17}]},"message":"add docstring examples. add exception raise when OS cannot be detected.","epoch":1632162299,"epoch_utc":null},{"commit":"516fa571d90a0c93134c953c15ce84dd31b96b4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 19 21:41:35 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":3}]},"message":"remove unused variable. use elif instead of if for linux vs. bsd detection","epoch":1632112895,"epoch_utc":null},{"commit":"a19c12096a8e8de02a6ff761cc9c13ec249d416e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 19 13:18:23 2021 -0700","stats":{"files_changed":1,"insertions":373,"deletions":143,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":516}]},"message":"initial working parser for both linux and bsd","epoch":1632082703,"epoch_utc":null},{"commit":"758f27945de4f0897405eba02c7908d815ce6e9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 15:09:56 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":18}]},"message":"change data_bytes and bytes to sent_bytes and response_bytes","epoch":1631916596,"epoch_utc":null},{"commit":"8b1e8d58df22f8542ccaf7bf3e1eabe6132e7a42","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 14:44:49 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":1}]},"message":"remove unneeded line","epoch":1631915089,"epoch_utc":null},{"commit":"b967489d085319facee077958deaa04956a98343","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 14:42:30 2021 -0700","stats":{"files_changed":1,"insertions":81,"deletions":40,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":121}]},"message":"complete linux coverage including summary","epoch":1631914950,"epoch_utc":null},{"commit":"870d0218be2641e3eddb114c23d54deb23155f25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 10:34:05 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2}]},"message":"add unbuffer note","epoch":1631900045,"epoch_utc":null},{"commit":"84020bc2af294cb065105f1399453aefc98eb180","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 10:26:47 2021 -0700","stats":{"files_changed":7,"insertions":12,"deletions":6,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/utils.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":6},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"change error_msg to error in -q result docs","epoch":1631899607,"epoch_utc":null},{"commit":"4efe5344e069ed921f208bcbbd097705be2d3b4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 10:20:22 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add links to HN and Reddit","epoch":1631899222,"epoch_utc":null},{"commit":"9182c545134b3d56d27d2c1d9bda678532bdc3fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 08:24:56 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":8,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":11}]},"message":"formatting","epoch":1631892296,"epoch_utc":null},{"commit":"28f0ab0b02d21fc060f1ac7181f85552798dc4bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 08:21:13 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/ls_s.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":2}]},"message":"update streaming error messages","epoch":1631892073,"epoch_utc":null},{"commit":"90d1a30696b2cbfbb06a55cc0cf920cf8ecd89aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 08:05:23 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting","epoch":1631891123,"epoch_utc":null},{"commit":"130b3738cc57fe261e8ef881a57b7836acd7e7e9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 22:32:46 2021 -0700","stats":{"files_changed":4,"insertions":21,"deletions":26,"files":["jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":8},{"name":"jc/parsers/ls_s.py","lines_changed":8},{"name":"jc/parsers/ping_s.py","lines_changed":14},{"name":"jc/utils.py","lines_changed":17}]},"message":"shorten successful yield to a single line","epoch":1631856766,"epoch_utc":null},{"commit":"92c7357615af7689db273aa78d666b35a2ec7a70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 22:04:44 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":2}]},"message":"formatting","epoch":1631855084,"epoch_utc":null},{"commit":"c80f8633349c00ea461b8927f9949fe19b2f46ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 22:04:31 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/foo.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":10}]},"message":"simplify return condition formatting","epoch":1631855071,"epoch_utc":null},{"commit":"4642c20179d4643e0cf1970b264da7d9d91628de","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 21:55:40 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"templates/readme_template","lines_changed":4}]},"message":"formatting","epoch":1631854540,"epoch_utc":null},{"commit":"5288eb22aadbbc1005b16428b94d2b07e9a75e3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 21:43:36 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add info about streaming parser performance characteristics","epoch":1631853816,"epoch_utc":null},{"commit":"df8387a1a99df69eac5005662aaf56d506fa0efd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 21:37:54 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"streaming parsers cannot be used with the magic syntax","epoch":1631853474,"epoch_utc":null},{"commit":"cc38c27f44d3f088609b878304cab8eed75fc8f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 21:33:57 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"templates/readme_template","lines_changed":3}]},"message":"formatting","epoch":1631853237,"epoch_utc":null},{"commit":"64f5357d69fe88b45d710d38948969699e1ca12f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 21:31:45 2021 -0700","stats":{"files_changed":2,"insertions":84,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":42},{"name":"templates/readme_template","lines_changed":42}]},"message":"add streaming parsers section","epoch":1631853105,"epoch_utc":null},{"commit":"51debb5649bef431e51e543f1c9270e2810aa58f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 20:45:01 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"add vmstat parser and change from linebuffer to unbuffer","epoch":1631850301,"epoch_utc":null},{"commit":"b48d05a4313b27cf5e69d3e4259542e0b131b60f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 20:41:56 2021 -0700","stats":{"files_changed":5,"insertions":15,"deletions":15,"files":["README.md","jc/cli.py","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":8},{"name":"man/jc.1","lines_changed":10},{"name":"templates/manpage_template","lines_changed":8},{"name":"templates/readme_template","lines_changed":2}]},"message":"change from line buffer output to unbuffer output","epoch":1631850116,"epoch_utc":null},{"commit":"4e7f6b337db61b8a106cf958f6b874157909c87a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 20:26:56 2021 -0700","stats":{"files_changed":3,"insertions":17,"deletions":25,"files":["jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":15},{"name":"jc/parsers/ls_s.py","lines_changed":9},{"name":"jc/parsers/ping_s.py","lines_changed":18}]},"message":"simplify yield statements","epoch":1631849216,"epoch_utc":null},{"commit":"a509d99cafd80862721595ee59ccc4a471b5e5a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 20:25:28 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":8}]},"message":"add stream_success dictionary","epoch":1631849128,"epoch_utc":null},{"commit":"481e45fb644ac88fa77ef35643b793f179fe6859","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 14 06:02:55 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2}]},"message":"limit parse error msg lenght","epoch":1631624575,"epoch_utc":null},{"commit":"e9038e1720e1c0e520e2f29b718aa8505cbbb9a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 21:15:26 2021 -0700","stats":{"files_changed":1,"insertions":66,"deletions":0,"files":["docs/parsers/ping_s.md"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":66}]},"message":"initial streaming ping docs","epoch":1631592926,"epoch_utc":null},{"commit":"8fd9e582bf29275c4daaa3be88ea8d196411b34a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 21:15:08 2021 -0700","stats":{"files_changed":1,"insertions":15,"deletions":17,"files":["docs/parsers/ls_s.md"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":32}]},"message":"doc update","epoch":1631592908,"epoch_utc":null},{"commit":"c1fd6f48a5a3501499c9fca7239673b8555cc7c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 21:14:56 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["docs/utils.md"],"file_stats":[{"name":"docs/utils.md","lines_changed":6}]},"message":"add stream_error docs","epoch":1631592896,"epoch_utc":null},{"commit":"af615c7f4b3f589ffc1b37cf9834062a04c013cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 21:14:38 2021 -0700","stats":{"files_changed":6,"insertions":26,"deletions":5,"files":["CHANGELOG","README.md","jc/cli.py","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"README.md","lines_changed":4},{"name":"jc/cli.py","lines_changed":7},{"name":"man/jc.1","lines_changed":11},{"name":"templates/manpage_template","lines_changed":4},{"name":"templates/readme_template","lines_changed":3}]},"message":"add line buffer output option","epoch":1631592878,"epoch_utc":null},{"commit":"bf0bc32d7ae6cabe07906207f4f08c2e81802c80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 20:51:24 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"flush streamed text for better piping experience","epoch":1631591484,"epoch_utc":null},{"commit":"2d6b53e012181a4c33bab441880c47c0fc0b0601","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 19:50:51 2021 -0700","stats":{"files_changed":1,"insertions":36,"deletions":42,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":78}]},"message":"add pattern support. move unparsable line detection to standard streaming parser style","epoch":1631587851,"epoch_utc":null},{"commit":"51271fea0fbd7bd63863ba05c399b4675dc5b4bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 19:27:34 2021 -0700","stats":{"files_changed":1,"insertions":139,"deletions":149,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":288}]},"message":"somewhat working parser","epoch":1631586454,"epoch_utc":null},{"commit":"2deb473e0bc96c0e39ec4074a6df4b941ba2172b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:36:36 2021 -0700","stats":{"files_changed":1,"insertions":262,"deletions":0,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":262}]},"message":"initial streaming ping parser","epoch":1631583396,"epoch_utc":null},{"commit":"23eeb33b3da43a679c3bf3f3643cfa552a1164e1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:36:19 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"modify stream_error message","epoch":1631583379,"epoch_utc":null},{"commit":"f50dfaef45632241f8f6972fa19bb17c54a457ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:31:52 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":13,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":19}]},"message":"use stream_error function for exceptions. raise on non -l ls output","epoch":1631583112,"epoch_utc":null},{"commit":"55bb71e9d466cc9ee5f7fd8eca1101c941cbcb35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:30:20 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"add streaming ping parser. update streaming exception message","epoch":1631583020,"epoch_utc":null},{"commit":"dab9357d286962b70224d6fafbf90a4c0cbc9980","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:29:49 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":12,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":13}]},"message":"use stream_error function for exceptions","epoch":1631582989,"epoch_utc":null},{"commit":"27eb427245b5126335cef0adb5e57522272474b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:29:10 2021 -0700","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":16}]},"message":"add stream_error function","epoch":1631582950,"epoch_utc":null},{"commit":"260f3685d944ded84396ae3395773d6898803fb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 15:06:02 2021 -0700","stats":{"files_changed":1,"insertions":112,"deletions":0,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":112}]},"message":"add streaming parser template","epoch":1631570762,"epoch_utc":null},{"commit":"76e78fc0c34b88a90fef876eebef92bd71cd772c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 15:05:49 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":11,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":20}]},"message":"doc updates","epoch":1631570749,"epoch_utc":null},{"commit":"1ac944fa028a400ae7b39b811fcf368c9bf5e259","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 12:13:14 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2}]},"message":"add -q option info to docstring","epoch":1631560394,"epoch_utc":null},{"commit":"986bc9b042a940f8dd34f0541bcb9b5840df579e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 12:10:02 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":43,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":52}]},"message":"cleanup unused code","epoch":1631560202,"epoch_utc":null},{"commit":"5a7942069b1f3ef3b45992b482bfb6bb973f7e8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 10:56:05 2021 -0700","stats":{"files_changed":1,"insertions":28,"deletions":28,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":56}]},"message":"add support for parent field","epoch":1631555765,"epoch_utc":null},{"commit":"f6c6fc13ac4c779667807df12444a41ef28a8011","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 08:55:19 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"enhance error msg when streaming parser is used","epoch":1631548519,"epoch_utc":null},{"commit":"1d8cfae89f24192b6fab087f59c9b8988ef363dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 12 17:30:56 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":11}]},"message":"only print _meta object if -q or quiet flag is used. Also, add message to the end of exceptions informing of the -q option to ignore errors","epoch":1631493056,"epoch_utc":null},{"commit":"787df51239ffa8260b48d6a3a58e6ff07d5e0f64","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 12 16:42:47 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2}]},"message":"remove `\\n` from end of line in exception message","epoch":1631490167,"epoch_utc":null},{"commit":"5e7f302a9c45343c36e81944db38a435e6c8a20c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 12 16:35:46 2021 -0700","stats":{"files_changed":1,"insertions":12,"deletions":10,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":22}]},"message":"Raise exceptions unless the -q or quiet flag are used","epoch":1631489746,"epoch_utc":null},{"commit":"3d10fd40b56264836874da19aa72351e6d5cfbf7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 12 16:27:00 2021 -0700","stats":{"files_changed":1,"insertions":14,"deletions":13,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":27}]},"message":"remove print flush for better performance. Roll json.JSONDecodeError into the parse try/except block","epoch":1631489220,"epoch_utc":null},{"commit":"57e3bf239cc76d3b0ee0eddc618171eb90c28dec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 10 15:02:15 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":6},{"name":"jc/parsers/ls_s.py","lines_changed":6}]},"message":"formatting for docs","epoch":1631311335,"epoch_utc":null},{"commit":"ccb09861e82044e17ec51277b3c8875e5ba9d87d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 10 15:01:02 2021 -0700","stats":{"files_changed":2,"insertions":20,"deletions":20,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":20},{"name":"jc/parsers/ls_s.py","lines_changed":20}]},"message":"formatting for docs","epoch":1631311262,"epoch_utc":null},{"commit":"94551d75dd926c7f558e5cab47ba9483a20c6b3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 10 14:27:50 2021 -0700","stats":{"files_changed":10,"insertions":116,"deletions":49,"files":["CHANGELOG","README.md","docs/parsers/ls_s.md","docs/readme.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz","mangen.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":6},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/ls_s.md","lines_changed":89},{"name":"docs/readme.md","lines_changed":25},{"name":"jc/__init__.py","lines_changed":27},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":7},{"name":"man/jc.1.gz","lines_changed":null},{"name":"mangen.py","lines_changed":8},{"name":"setup.py","lines_changed":2}]},"message":"doc update","epoch":1631309270,"epoch_utc":null},{"commit":"6e21218425359210591827e936b8d48d9644df92","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 10 14:14:10 2021 -0700","stats":{"files_changed":2,"insertions":234,"deletions":3,"files":["jc/cli.py","jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":23},{"name":"jc/parsers/ls_s.py","lines_changed":214}]},"message":"working prototype of streaming ls parser","epoch":1631308450,"epoch_utc":null},{"commit":"ff0fda48fc48760a7293528155d222c6456f84c4","merge":"e08b61f 528aac7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 10 08:08:45 2021 -0700","message":"Merge pull request #168 from kellyjonbrazil/master\n\nSync master to dev","epoch":1631286525,"epoch_utc":null},{"commit":"528aac7ad87feae2093aba563c83a29ebf75e5f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 8 07:00:50 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":38,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":23},{"name":"templates/readme_template","lines_changed":23}]},"message":"use subprocess in python example","epoch":1631109650,"epoch_utc":null},{"commit":"ab482e521d4cecfffa5393805b1d7de4389db49a","merge":"9c1ad92 e08b61f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 31 09:50:38 2021 -0700","message":"Merge pull request #163 from kellyjonbrazil/dev\n\nDev v1.16.2","epoch":1630428638,"epoch_utc":null},{"commit":"e08b61fa81b1bd2304d04db5cdc8b809fe9c6032","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 31 08:54:23 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add schema note to sfdisk","epoch":1630425263,"epoch_utc":null},{"commit":"ce61bd1d2b4323d9c2d0454c4f646521913ae20d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 31 08:50:42 2021 -0700","stats":{"files_changed":7,"insertions":73,"deletions":7,"files":["tests/fixtures/debian10/sfdisk-F2.json","tests/fixtures/debian10/sfdisk-F2.out","tests/fixtures/debian10/sfdisk-l2.json","tests/fixtures/debian10/sfdisk-l2.out","tests/fixtures/debian10/sfdisk-l3.json","tests/fixtures/debian10/sfdisk-l3.out","tests/test_sfdisk.py"],"file_stats":[{"name":"tests/fixtures/debian10/sfdisk-F2.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-F2.out","lines_changed":6},{"name":"tests/fixtures/debian10/sfdisk-l2.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-l2.out","lines_changed":15},{"name":"tests/fixtures/debian10/sfdisk-l3.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-l3.out","lines_changed":13},{"name":"tests/test_sfdisk.py","lines_changed":43}]},"message":"add tests for -F fixes","epoch":1630425042,"epoch_utc":null},{"commit":"7b708f75182bf3ed33478a7de62e9c2496f0b994","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 31 08:39:54 2021 -0700","stats":{"files_changed":3,"insertions":11,"deletions":5,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-l.json","tests/fixtures/debian10/sfdisk-l.json"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":12},{"name":"tests/fixtures/centos-8/sfdisk-l.json","lines_changed":2},{"name":"tests/fixtures/debian10/sfdisk-l.json","lines_changed":2}]},"message":"Don't convert 'size' to int, except for legacy -d support. Change partition table detection logic to fix -F output","epoch":1630424394,"epoch_utc":null},{"commit":"89ca50c7fc1bf64f34c915e65031d0bc520e6466","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 21:56:36 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/sfdisk.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add -l to sfdisk raw example","epoch":1630385796,"epoch_utc":null},{"commit":"fb54899dcc2160450448e0d6111557cebdeb0d4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 21:53:40 2021 -0700","stats":{"files_changed":4,"insertions":38,"deletions":23,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":59},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update","epoch":1630385620,"epoch_utc":null},{"commit":"0a625ad7ddd9c804052d98930165cd22049546bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 21:52:55 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/sfdisk.py"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":2}]},"message":"remove unneeded lines","epoch":1630385575,"epoch_utc":null},{"commit":"d32e45efbe0d71a9a132abfb2855f1f4ccee9916","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 21:49:07 2021 -0700","stats":{"files_changed":6,"insertions":69,"deletions":1,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-F.json","tests/fixtures/centos-8/sfdisk-l.json","tests/fixtures/debian10/sfdisk-F.json","tests/fixtures/debian10/sfdisk-l.json","tests/test_sfdisk.py"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":9},{"name":"tests/fixtures/centos-8/sfdisk-F.json","lines_changed":1},{"name":"tests/fixtures/centos-8/sfdisk-l.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-F.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-l.json","lines_changed":1},{"name":"tests/test_sfdisk.py","lines_changed":57}]},"message":"add sfdisk tests","epoch":1630385347,"epoch_utc":null},{"commit":"c77696bc789cdfd286a7479c3d9f67d23149d0ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 20:55:26 2021 -0700","stats":{"files_changed":3,"insertions":6,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":4},{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1630382126,"epoch_utc":null},{"commit":"736fde9e784587cb2ef344bbf31d876eafea7741","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 20:51:19 2021 -0700","stats":{"files_changed":5,"insertions":147,"deletions":28,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-F.out","tests/fixtures/centos-8/sfdisk-l.out","tests/fixtures/debian10/sfdisk-F.out","tests/fixtures/debian10/sfdisk-l.out"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":127},{"name":"tests/fixtures/centos-8/sfdisk-F.out","lines_changed":9},{"name":"tests/fixtures/centos-8/sfdisk-l.out","lines_changed":24},{"name":"tests/fixtures/debian10/sfdisk-F.out","lines_changed":3},{"name":"tests/fixtures/debian10/sfdisk-l.out","lines_changed":12}]},"message":"add support for newer versions of sfdisk","epoch":1630381879,"epoch_utc":null},{"commit":"9c1ad92fed9a4b3a0da66d6b71deec8d608edfa9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:31:51 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":12}]},"message":"fix examples","epoch":1629999111,"epoch_utc":null},{"commit":"1a9fd2139d156a51bf2d25db951e47e96da77f7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:29:13 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"add \"For new parsers:\"","epoch":1629998953,"epoch_utc":null},{"commit":"7661e7f27a4e5c379ea37c7f95496aca2c1e2910","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:27:11 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"formatting","epoch":1629998831,"epoch_utc":null},{"commit":"f857b7fbf7862ddd7eb5ab20470f5dbaacc62119","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:25:37 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"add custom parser folder info","epoch":1629998737,"epoch_utc":null},{"commit":"d94d12dbc5fb3e3712b2f1aea949013cb8213e28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:20:53 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":11}]},"message":"add foo parser template info","epoch":1629998453,"epoch_utc":null},{"commit":"700916276ae8b0a106410e3dd2ea3e00248ee37a","merge":"473f706 834e523","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:01:08 2021 -0700","message":"Merge pull request #159 from kellyjonbrazil/master\n\nSync Master to dev","epoch":1629997268,"epoch_utc":null},{"commit":"834e52369ceb479776ddc8fc2931790af53b9c18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 16 10:33:26 2021 -0700","stats":{"files_changed":3,"insertions":1,"deletions":5,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":6},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update man page","epoch":1629135206,"epoch_utc":null},{"commit":"1ce53365de61421c8bd43e04590038083894153b","merge":"2689697 473f706","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 16 10:32:03 2021 -0700","message":"Merge pull request #156 from kellyjonbrazil/dev\n\nDev v1.16.1","epoch":1629135123,"epoch_utc":null},{"commit":"473f70668f04a38765559c5dbf0468af24d625c9","merge":"0dbd270 2689697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 16 10:28:11 2021 -0700","message":"Merge branch 'master' into dev\n\n# Conflicts:\n# jc/man/jc.1.gz\n# man/jc.1\n# man/jc.1.gz","epoch":1629134891,"epoch_utc":null},{"commit":"0dbd2702f6ab2640b2ccdea92411ac0789673e66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 17:17:51 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]},"message":"reformat doc_text for nicer indentation","epoch":1628900271,"epoch_utc":null},{"commit":"01e3764a9b6ba902aea522bf6b7005fd37b3acbb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 16:03:46 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"fix join syntax","epoch":1628895826,"epoch_utc":null},{"commit":"ff9c81722ae7221364e9bcb83d98b16b4263334e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 16:01:45 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"try/except for shlex.join since only available in python 3.8","epoch":1628895705,"epoch_utc":null},{"commit":"166aef7a022ed29862ab2e0702d53c591bb5cc77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 15:22:33 2021 -0700","stats":{"files_changed":6,"insertions":4,"deletions":4,"files":["docs/parsers/stat.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz","setup.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1628893353,"epoch_utc":null},{"commit":"78caf7646baf5d35602fd76771443cd64bd783af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 15:19:41 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add stat fix","epoch":1628893181,"epoch_utc":null},{"commit":"1f99d40cecc5d88a246f3558f71db376ebd885c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 15:19:31 2021 -0700","stats":{"files_changed":4,"insertions":17,"deletions":2,"files":["jc/parsers/stat.py","tests/fixtures/osx-10.14.6/stat-filename-with-spaces.json","tests/fixtures/osx-10.14.6/stat-filename-with-spaces.out","tests/test_stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"tests/fixtures/osx-10.14.6/stat-filename-with-spaces.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/stat-filename-with-spaces.out","lines_changed":2},{"name":"tests/test_stat.py","lines_changed":12}]},"message":"fix filename with spaces for osx/bsd","epoch":1628893171,"epoch_utc":null},{"commit":"4c2912d3d5ec1fd2d5d891f2b3c58a33dd8572be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 15:19:17 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"use shlex.join to quote run_command_str for better error messages","epoch":1628893157,"epoch_utc":null},{"commit":"45e6e06be581f787f707e3f5645129c713478d16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 14:19:45 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"add glob and process substitution fixes","epoch":1628889585,"epoch_utc":null},{"commit":"fdbe3e05f323c95687a1137983f9623911008ca2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 14:19:26 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"fix issue with globs not including filenames with spaces with magic syntax (introduced during switch to use subprocess to grab process exit code). No longer need to shlex quote arguments.","epoch":1628889566,"epoch_utc":null},{"commit":"7cc168f6409af13fda815d0d2a6db25b7c9ba367","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 12 16:55:07 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add comment","epoch":1628812507,"epoch_utc":null},{"commit":"ff2d609c9b5f5f57f3331e5593e8fe87c01654dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 12 16:36:35 2021 -0700","stats":{"files_changed":1,"insertions":12,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":13}]},"message":"add close_fds=False in subprocess.Popen() to allow process substitution in magic syntax. Also check for too many open files exception","epoch":1628811395,"epoch_utc":null},{"commit":"2689697b4c21758903e5f74ec069e89be585aba2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 22 17:03:00 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting","epoch":1626998580,"epoch_utc":null},{"commit":"f90a0ea8ab15629b7786e4431e9c968c3a896ee0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 22 12:20:48 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":4}]},"message":"formatting","epoch":1626981648,"epoch_utc":null},{"commit":"caabe60f849fb2422e47b8f10e0ff35beb706dcd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 22 12:20:31 2021 -0700","stats":{"files_changed":5,"insertions":3,"deletions":3,"files":["docs/parsers/kv.md","jc/man/jc.1.gz","jc/parsers/kv.py","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/kv.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/kv.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"fix kv example","epoch":1626981631,"epoch_utc":null},{"commit":"2bef4ed6038201f54339e750a833260dc1998591","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 21 08:47:16 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","README.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"README.md","lines_changed":4}]},"message":"package updates","epoch":1626882436,"epoch_utc":null},{"commit":"ee57be533b12593a33a2abbb2892697f0bd40c65","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 20 12:35:02 2021 -0500","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2}]},"message":"fix sfdisk example","epoch":1626809702,"epoch_utc":null},{"commit":"c5b7aaca25d6b66d3e44256c2c6760a4cf2956ec","merge":"3b22ce4 7a1be90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 20 10:19:14 2021 -0700","message":"Merge pull request #149 from kellyjonbrazil/dev\n\nDev v1.16.0","epoch":1626801554,"epoch_utc":null},{"commit":"7a1be905bb8654558afb5979b0bd78d4a8488874","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 20 12:15:29 2021 -0500","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"version bump","epoch":1626808529,"epoch_utc":null},{"commit":"5798495a11afa2f72ce6f79be785d46240fcbeb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 20 12:13:33 2021 -0500","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":6}]},"message":"add 1.15.7 to 1.16.0 changes","epoch":1626808413,"epoch_utc":null},{"commit":"46171e220252ec92d18e744d2a57c1d6a6dc19f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 20 12:13:14 2021 -0500","stats":{"files_changed":1,"insertions":69,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":69}]},"message":"add sfdisk example","epoch":1626808394,"epoch_utc":null},{"commit":"dd5c924ff505dcc2a9c851d2425677bdf16ea462","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 19 12:13:46 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add man page location change","epoch":1626722026,"epoch_utc":null},{"commit":"30c4ab297658228a07ef9b1585516719af3febb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 19 12:08:50 2021 -0700","stats":{"files_changed":3,"insertions":515,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":515},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"new man page location","epoch":1626721730,"epoch_utc":null},{"commit":"26ea4d47b33277efb0ddafe8f421791696277c07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 19 12:04:25 2021 -0700","stats":{"files_changed":5,"insertions":14,"deletions":3,"files":["CHANGELOG","MANIFEST.in","jc/__init__.py","mangen.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":10},{"name":"MANIFEST.in","lines_changed":1},{"name":"jc/__init__.py","lines_changed":2},{"name":"mangen.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump and deprecate /man/jc.1.gz and /jc/man/jc.1.gz","epoch":1626721465,"epoch_utc":null},{"commit":"2732cd175c1e878210707162de3928f33fb2f201","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 12 08:10:18 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["CHANGELOG","MANIFEST.in"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"MANIFEST.in","lines_changed":1}]},"message":"include CHANGELOG in source distribution","epoch":1626102618,"epoch_utc":null},{"commit":"3e54b597be88b0e342e4361b7f2c1af447f9482b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 7 09:00:19 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add timezone change for unit tests","epoch":1625673619,"epoch_utc":null},{"commit":"f10ebea20962084833e5c1ebd9bc90a251bf3ff4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 7 08:53:52 2021 -0700","stats":{"files_changed":11,"insertions":78,"deletions":0,"files":["tests/test_date.py","tests/test_dig.py","tests/test_dir.py","tests/test_last.py","tests/test_ls.py","tests/test_rpm_qai.py","tests/test_stat.py","tests/test_systeminfo.py","tests/test_upower.py","tests/test_utils.py","tests/test_who.py"],"file_stats":[{"name":"tests/test_date.py","lines_changed":7},{"name":"tests/test_dig.py","lines_changed":7},{"name":"tests/test_dir.py","lines_changed":7},{"name":"tests/test_last.py","lines_changed":7},{"name":"tests/test_ls.py","lines_changed":7},{"name":"tests/test_rpm_qai.py","lines_changed":7},{"name":"tests/test_stat.py","lines_changed":7},{"name":"tests/test_systeminfo.py","lines_changed":7},{"name":"tests/test_upower.py","lines_changed":7},{"name":"tests/test_utils.py","lines_changed":8},{"name":"tests/test_who.py","lines_changed":7}]},"message":"update tests to set correct timezone on POSIX systems","epoch":1625673232,"epoch_utc":null},{"commit":"2c6f3993cb4c5e559dbac7a479ec889aa2cba752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 1 15:53:10 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/route.md","jc/man/jc.1.gz","jc/parsers/route.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/route.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"remove extra comma","epoch":1625179990,"epoch_utc":null},{"commit":"708a696920b52c2614edcdba264912527b2dfbef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 1 15:51:38 2021 -0700","stats":{"files_changed":3,"insertions":0,"deletions":2,"files":["docs/parsers/route.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/route.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"remove extra lines","epoch":1625179898,"epoch_utc":null},{"commit":"20bbb5d331575c8fc33ba63643882a62650c97b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 1 15:50:55 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":2}]},"message":"remove extra lines","epoch":1625179855,"epoch_utc":null},{"commit":"223e785b547d9376174efa15321d60a533847c57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 17:07:43 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/sfdisk.py"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":8}]},"message":"rename variable","epoch":1625098063,"epoch_utc":null},{"commit":"3d78692c59980e4d70361d3a9f74bacc3f21376e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 16:54:34 2021 -0700","stats":{"files_changed":11,"insertions":150,"deletions":1,"files":["tests/fixtures/centos-7.7/sfdisk-d-multi.json","tests/fixtures/centos-7.7/sfdisk-d-multi.out","tests/fixtures/centos-7.7/sfdisk-d.json","tests/fixtures/centos-7.7/sfdisk-d.out","tests/fixtures/centos-7.7/sfdisk-l-multi.json","tests/fixtures/centos-7.7/sfdisk-l-multi.out","tests/fixtures/centos-7.7/sfdisk-l.json","tests/fixtures/centos-7.7/sfdisk-luB.json","tests/fixtures/centos-7.7/sfdisk-luM.json","tests/fixtures/centos-7.7/sfdisk-luS.json","tests/test_sfdisk.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/sfdisk-d-multi.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-d-multi.out","lines_changed":16},{"name":"tests/fixtures/centos-7.7/sfdisk-d.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-d.out","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-l-multi.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-l-multi.out","lines_changed":21},{"name":"tests/fixtures/centos-7.7/sfdisk-l.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-luB.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-luM.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-luS.json","lines_changed":1},{"name":"tests/test_sfdisk.py","lines_changed":106}]},"message":"add sfdisk tests","epoch":1625097274,"epoch_utc":null},{"commit":"5321a15dcf13cf14efe578d0f66b651078c3d8a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 14:30:35 2021 -0700","stats":{"files_changed":4,"insertions":8,"deletions":8,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":8},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/sfdisk.py","lines_changed":8},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update examples","epoch":1625088635,"epoch_utc":null},{"commit":"a452f8252a593f7914ebece53af9d73f4fd11a19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 14:27:12 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":4},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/sfdisk.py","lines_changed":4},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"fix integer conversion","epoch":1625088432,"epoch_utc":null},{"commit":"49267f09ac01fead3b20b2d481bb5e0d07af1439","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 14:06:15 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/sfdisk.py"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":4}]},"message":"change to root prompt in examples","epoch":1625087175,"epoch_utc":null},{"commit":"db47f35783e46a8299533c22146d851509f6ceb2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 12:38:36 2021 -0700","stats":{"files_changed":15,"insertions":610,"deletions":3,"files":["CHANGELOG","README.md","docs/parsers/sfdisk.md","jc/__init__.py","jc/cli.py","jc/man/jc.1.gz","jc/parsers/sfdisk.py","jc/utils.py","man/jc.1.gz","setup.py","tests/fixtures/centos-7.7/sfdisk-d.out","tests/fixtures/centos-7.7/sfdisk-l.out","tests/fixtures/centos-7.7/sfdisk-luB.out","tests/fixtures/centos-7.7/sfdisk-luM.out","tests/fixtures/centos-7.7/sfdisk-luS.out"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/sfdisk.md","lines_changed":213},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/sfdisk.py","lines_changed":325},{"name":"jc/utils.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/sfdisk-d.out","lines_changed":8},{"name":"tests/fixtures/centos-7.7/sfdisk-l.out","lines_changed":14},{"name":"tests/fixtures/centos-7.7/sfdisk-luB.out","lines_changed":14},{"name":"tests/fixtures/centos-7.7/sfdisk-luM.out","lines_changed":14},{"name":"tests/fixtures/centos-7.7/sfdisk-luS.out","lines_changed":14}]},"message":"add working sfdisk parser","epoch":1625081916,"epoch_utc":null},{"commit":"d48abf312c1f55ab31aa11da2b6cf6bc8166733b","merge":"ff7ab0a 3b22ce4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 10:10:59 2021 -0700","message":"Merge pull request #147 from kellyjonbrazil/master\n\nsync to dev","epoch":1625073059,"epoch_utc":null},{"commit":"3b22ce41105387e7f46a410460cf04759feef197","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 28 08:04:46 2021 -0700","stats":{"files_changed":6,"insertions":6,"deletions":3,"files":["CHANGELOG","jc/__init__.py","jc/cli.py","jc/man/jc.1.gz","man/jc.1.gz","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"setup.py","lines_changed":2}]},"message":"fix local plugin parser issue where parser has .py in the name but it is not at the end","epoch":1624892686,"epoch_utc":null},{"commit":"c521ca5bc9e2b035cfef6ff65f6b303b3ec44296","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 11 11:41:16 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"change possible to available","epoch":1623436876,"epoch_utc":null},{"commit":"3ddc1c665990e1e732314330db214a81ab810fe9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 11 11:39:38 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add jello","epoch":1623436778,"epoch_utc":null},{"commit":"a8e19402b7d1f9f06bc40b81a15dec401154180c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 9 08:33:48 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["ADVANCED_USAGE.md"],"file_stats":[{"name":"ADVANCED_USAGE.md","lines_changed":4}]},"message":"remove temporary fix","epoch":1623252828,"epoch_utc":null},{"commit":"0927902b30654274743ab9092e90e768709a9937","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 8 16:51:03 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["ADVANCED_USAGE.md"],"file_stats":[{"name":"ADVANCED_USAGE.md","lines_changed":4}]},"message":"temp fix for wrong url","epoch":1623196263,"epoch_utc":null},{"commit":"572548b42fb6ed9d32a392503d44fac1a8f146d3","merge":"95aec9c ff7ab0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 27 17:00:54 2021 -0700","message":"Merge pull request #141 from kellyjonbrazil/dev\n\nDev v1.15.5","epoch":1622160054,"epoch_utc":null},{"commit":"ff7ab0a1ed7f468d0e84eb3bf0636f53913c490d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 27 16:58:14 2021 -0700","stats":{"files_changed":3,"insertions":0,"deletions":1,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc updates for v1.15.5","epoch":1622159894,"epoch_utc":null},{"commit":"5db71b05cb28691bbbaa5d668bcd4a4ac7e68b85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 25 09:47:24 2021 -0700","stats":{"files_changed":5,"insertions":3,"deletions":3,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/manpage_template","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add en_US.UTF-8 to LANG info","epoch":1621961244,"epoch_utc":null},{"commit":"f9b952885aa7f2b450786a08c3879d9e358886da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 21 10:21:21 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add python 3.9.5 packaged info","epoch":1621617681,"epoch_utc":null},{"commit":"e7983bc0b29abaca2147038dfad018cba1e67cdf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 21 10:16:19 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xml.md","docs/parsers/yaml.md"],"file_stats":[{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2}]},"message":"version bump","epoch":1621617379,"epoch_utc":null},{"commit":"473a6431425fc24a4cc83939ff592e0d49535b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 21 10:16:08 2021 -0700","stats":{"files_changed":4,"insertions":10,"deletions":3,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":11},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/readme_template","lines_changed":2}]},"message":"add windows msi info","epoch":1621617368,"epoch_utc":null},{"commit":"14f3d442cb86250b8f2cdfd7977938634b8abd6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 21 09:46:51 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"formatting","epoch":1621615611,"epoch_utc":null},{"commit":"d6f4ed9ab55fe9b7c2766fb437172af62a1d5c87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 21 09:46:34 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":2}]},"message":"add long-form UTC test","epoch":1621615594,"epoch_utc":null},{"commit":"1b8d654444ff8c8b8171c7ac63e2736447a36c09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 20 15:49:18 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add error message info","epoch":1621550958,"epoch_utc":null},{"commit":"6002af0dca334c0affaff3e9acdca416238c7d82","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 20 15:46:31 2021 -0700","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":11}]},"message":"add more error message detail to the user for ParseError and LibraryNotFound exceptions","epoch":1621550791,"epoch_utc":null},{"commit":"0924d822a30c8806f65574c010561cd6f7c8e181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 20 15:36:27 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":1,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":9}]},"message":"add windows example","epoch":1621550187,"epoch_utc":null},{"commit":"72a37b928924c3edde3a4edb952f98c94aa05f0b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 19 16:23:34 2021 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1621466614,"epoch_utc":null},{"commit":"5eef7bd769f8ffb03ba396833d1b33484041a99f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 19 16:14:26 2021 -0700","stats":{"files_changed":2,"insertions":16,"deletions":16,"files":["jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/xml.py","lines_changed":16},{"name":"jc/parsers/yaml.py","lines_changed":16}]},"message":"use LibraryNotInstalled exception instead of exiting via sys.exit","epoch":1621466066,"epoch_utc":null},{"commit":"c6893e1bd5283d982a7ecd6f84bdfdd0054ce7a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 19 16:13:05 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/exceptions.py"],"file_stats":[{"name":"jc/exceptions.py","lines_changed":4}]},"message":"add LibraryNotInstalled exception","epoch":1621465985,"epoch_utc":null},{"commit":"039f6612e491c6f821c001252e122e9b0a781104","merge":"9c57c09 95aec9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 18 10:29:02 2021 -0700","message":"Merge pull request #139 from kellyjonbrazil/master\n\nsync branches","epoch":1621358942,"epoch_utc":null},{"commit":"95aec9c6f9aa8fb4d0dae227410a1346d550f47f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 18 10:27:36 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["templates/manpage_template"],"file_stats":[{"name":"templates/manpage_template","lines_changed":6}]},"message":"add info about Magic syntax not supporting shell builtins","epoch":1621358856,"epoch_utc":null},{"commit":"4e9652a8ec2482a64dc029b0ce0e1047a3e49867","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 17 14:36:20 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"spelling","epoch":1621287380,"epoch_utc":null},{"commit":"773b7f4b1f23e04c90e602aab05bc1a7e5aae37b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 17 08:38:09 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"templates/readme_template","lines_changed":1}]},"message":"add space before exit code table","epoch":1621265889,"epoch_utc":null},{"commit":"d17ffde9cdc35392ae25d8e9de5328e46067df2a","merge":"efb1d3e 9c57c09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 17 08:35:13 2021 -0700","message":"Merge pull request #138 from kellyjonbrazil/dev\n\nDev v1.15.4","epoch":1621265713,"epoch_utc":null},{"commit":"9c57c09c00e64a9031391b9b70083ad6ecf0bc0b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 17 08:24:31 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update for release","epoch":1621265071,"epoch_utc":null},{"commit":"4d730a9de5a0d7c064a9a59e3add86e58d9ec492","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 20:57:17 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add UTC fix","epoch":1621223837,"epoch_utc":null},{"commit":"fc57bcfce24af23f077d6a73f1db4591d8f99c13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 20:51:39 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":3}]},"message":"fix for when UTC is referenced as \"Coordinated Universal Time\"","epoch":1621223499,"epoch_utc":null},{"commit":"fa5571486c3c19bb7e836f043545ea4f2509ed4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 20:33:03 2021 -0700","stats":{"files_changed":1,"insertions":10,"deletions":10,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":20}]},"message":"simplify json_out function","epoch":1621222383,"epoch_utc":null},{"commit":"9996c4fe23564dfb52e3c7dbdbd8bd67edfb1e95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:55:53 2021 -0700","stats":{"files_changed":7,"insertions":10,"deletions":10,"files":["EXAMPLES.md","docs/parsers/history.md","docs/parsers/jobs.md","jc/man/jc.1.gz","jc/parsers/history.py","jc/parsers/jobs.py","man/jc.1.gz"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":6},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":6},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update docs for shell builtins","epoch":1621220153,"epoch_utc":null},{"commit":"038d4290248e6bb94762bb51f69e9958f7c1fecb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:44:10 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":6,"files":["docs/parsers/dig.md","docs/parsers/dir.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":8},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc updates","epoch":1621219450,"epoch_utc":null},{"commit":"9bf6facb0d7d76583802309253e7d13ba5148997","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:43:10 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":6,"files":["jc/parsers/dir.py"],"file_stats":[{"name":"jc/parsers/dir.py","lines_changed":9}]},"message":"remove magic command capability since dir is a shell builtin","epoch":1621219390,"epoch_utc":null},{"commit":"965717886e4ebaa6a4a494f189d9fdd01e33eb21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:30:00 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add exceptions module info","epoch":1621218600,"epoch_utc":null},{"commit":"e9bfc3dd29f914fd91e937f06d7f59c0f91b8449","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:21:37 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"add time format, dig compatibility, windows colors fix","epoch":1621218097,"epoch_utc":null},{"commit":"f46b33eacf070b4dc72c8d8a66aae49abd149e5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:20:13 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2},{"name":"tests/test_utils.py","lines_changed":2}]},"message":"add windows time format","epoch":1621218013,"epoch_utc":null},{"commit":"f475fe44df2fb2661c5bce4d1e602a4bba7e87c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:09:53 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":3}]},"message":"add new time format for systeminfo","epoch":1621217393,"epoch_utc":null},{"commit":"5fdbe2962d84dad89de23f103d97b76b90450206","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 17:48:56 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":2}]},"message":"make dig compatible with all platforms","epoch":1621212536,"epoch_utc":null},{"commit":"ab291b9eef6ed5c8ab59b5652f676178941d5ce5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 17:48:40 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"only force enable colors when running on windows","epoch":1621212520,"epoch_utc":null},{"commit":"fd411fd77273cb7cf872c03ed6a258ccdee4d261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 17:43:05 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"attempt to get colors working on windows","epoch":1621212185,"epoch_utc":null},{"commit":"b1e95a60a2461dc401ffc299ef6338b65ef12691","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 13 08:42:27 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"remove unnecessary comment","epoch":1620920547,"epoch_utc":null},{"commit":"bb1439f0d53e87f636fba05fbd30c3c79fb16002","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 13 08:20:58 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":5}]},"message":"use ParseError exception from jc.exceptions module","epoch":1620919258,"epoch_utc":null},{"commit":"ba963d98a0a2b3a0dfca6b211096d802253da5fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 13 08:20:35 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/exceptions.py"],"file_stats":[{"name":"jc/exceptions.py","lines_changed":5}]},"message":"add exceptions module including ParseError","epoch":1620919235,"epoch_utc":null},{"commit":"83440ccb55d0db15b112b8b7d7352493ff516112","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 13 08:02:38 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"error message capitalization","epoch":1620918158,"epoch_utc":null},{"commit":"796f61bfa417afdc6ab48fddbb5502cd0659b840","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 17:01:09 2021 -0700","stats":{"files_changed":1,"insertions":10,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":13}]},"message":"handle case where the user pipes data and uses magic syntax simultaneously","epoch":1620864069,"epoch_utc":null},{"commit":"070cac4ae12282458a1e1fc8618ebc473d23cacf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 15:36:06 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"remove commented line","epoch":1620858966,"epoch_utc":null},{"commit":"3ed84f9f42e4e883ddaac28ab49d675600b49424","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 15:19:11 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":18}]},"message":"reorganize main function. remove pass condition.","epoch":1620857951,"epoch_utc":null},{"commit":"a205afb6f355edbb4b98200a980b9601ed0f0658","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 13:44:15 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"set run_command_str if run_command is set","epoch":1620852255,"epoch_utc":null},{"commit":"a6d983dd8f3871cbc2391c313340167829a575d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 13:38:08 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"move run_command_str variable","epoch":1620851888,"epoch_utc":null},{"commit":"b6c8d6d01d740827273265dbb0cfbaf7875ac7f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 13:18:58 2021 -0700","stats":{"files_changed":1,"insertions":45,"deletions":17,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":62}]},"message":"add exception handling for filenotfound or other subprocess.popen and json.dumps exceptions","epoch":1620850738,"epoch_utc":null},{"commit":"b5a5d5b133f1c0df8023776e59697b7579f8c18a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 11:36:27 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"set parser_name for magic syntax use","epoch":1620844587,"epoch_utc":null},{"commit":"da528e7814b0cf25a359c3556d0e286e7bf004b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 09:40:22 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"move separators to a variable","epoch":1620837622,"epoch_utc":null},{"commit":"4acebf4f621ac564f82e3a97e6810fbb08a9dbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 08:48:49 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"move variables","epoch":1620834529,"epoch_utc":null},{"commit":"4d40808d2b70b7543eadcfd2d35c16ebe91f2f9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 08:27:39 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":7}]},"message":"update comments","epoch":1620833259,"epoch_utc":null},{"commit":"c543f00bd3c737f73144bb2980d12793042459b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 14:30:46 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"simplify piped_output function","epoch":1620768646,"epoch_utc":null},{"commit":"947cf41dfab5811c0e76e371231c59a2d6372752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 12:42:21 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add exit code info","epoch":1620762141,"epoch_utc":null},{"commit":"8d8c58742e5106c3387a627cd1b1323a76cc9623","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 11:32:08 2021 -0700","stats":{"files_changed":5,"insertions":21,"deletions":15,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":13},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/manpage_template","lines_changed":10},{"name":"templates/readme_template","lines_changed":13}]},"message":"formatting","epoch":1620757928,"epoch_utc":null},{"commit":"995ecc9bfb0425b0ee9e4250395b0200b46c1e89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 11:11:17 2021 -0700","stats":{"files_changed":3,"insertions":15,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/manpage_template","lines_changed":15}]},"message":"add exit codes section","epoch":1620756677,"epoch_utc":null},{"commit":"21a15225ebff645439b12d6249dc3e28d7bc09ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 10:59:26 2021 -0700","stats":{"files_changed":2,"insertions":18,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":9},{"name":"templates/readme_template","lines_changed":9}]},"message":"add exit codes section","epoch":1620755966,"epoch_utc":null},{"commit":"48921d4584068fadb0f776ed7e81c21d89172e2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 10:50:35 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"ensure exit code never exceeds 255","epoch":1620755435,"epoch_utc":null},{"commit":"342db45edc94ab1c3b3ae70e7cf4ca4076e2c7eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 10:36:55 2021 -0700","stats":{"files_changed":1,"insertions":18,"deletions":10,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":28}]},"message":"fix combined exit codes","epoch":1620754615,"epoch_utc":null},{"commit":"5f88ecf8443bc6e9a7cda5bc60858f37cc09f4f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 21:23:23 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]},"message":"add comments to magic_parser return","epoch":1620707003,"epoch_utc":null},{"commit":"a56aebfe7024914d2c602278964b99d1443de335","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 21:09:00 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"remove side-effect comment since it is no longer relevant","epoch":1620706140,"epoch_utc":null},{"commit":"422bb744a82472546d62c72ba05eaa1d18d5068a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 21:03:30 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update man pages","epoch":1620705810,"epoch_utc":null},{"commit":"c3b814a15f571ac84a8ce0719d7fd88acf814caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 21:02:28 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":7}]},"message":"move imports to the top","epoch":1620705748,"epoch_utc":null},{"commit":"e4574047a0ef6fcd4a47142421a1d05795c7925a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 20:49:44 2021 -0700","stats":{"files_changed":1,"insertions":21,"deletions":21,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":42}]},"message":"update tests for magic_parser function","epoch":1620704984,"epoch_utc":null},{"commit":"0d7d7951f82627d1fb1e20d1398bd7f88c5ce1be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 18:58:45 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":12}]},"message":"don't reset sys.argv anymore. check for 'valid_command' instead","epoch":1620698325,"epoch_utc":null},{"commit":"da904e4770a20ae85fc67476ae4a529564d0a3ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 18:50:59 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"remove final \\n from stderr string when printing","epoch":1620697859,"epoch_utc":null},{"commit":"19b540041add64fe6650c3634ec869421ffbc769","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 18:31:30 2021 -0700","stats":{"files_changed":1,"insertions":82,"deletions":51,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":133}]},"message":"proof of concept for passing command exit codes when using magic syntax. Needs more testing","epoch":1620696690,"epoch_utc":null},{"commit":"f2ffb93eeaf4c8b5aa93f3e8808bdc044582e8a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 10:43:40 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":10,"files":["tests/test_ping.py"],"file_stats":[{"name":"tests/test_ping.py","lines_changed":10}]},"message":"formatting","epoch":1620668620,"epoch_utc":null},{"commit":"c0c0e05642e0f473cde34178d815978fff8fe1ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 10:40:13 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add dig `+noall +answer` support","epoch":1620668413,"epoch_utc":null},{"commit":"966978f17e40a338f982628825f30a19d4b84e4c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 10:39:51 2021 -0700","stats":{"files_changed":5,"insertions":72,"deletions":0,"files":[".../centos-7.7/ping6-ip-O-p-unparsable.json",".../centos-7.7/ping6-ip-O-p-unparsable.out",".../fixtures/osx-10.14.6/ping6-ip-unparsable.json","tests/fixtures/osx-10.14.6/ping6-ip-unparsable.out","tests/test_ping.py"],"file_stats":[{"name":".../centos-7.7/ping6-ip-O-p-unparsable.json","lines_changed":1},{"name":".../centos-7.7/ping6-ip-O-p-unparsable.out","lines_changed":27},{"name":".../fixtures/osx-10.14.6/ping6-ip-unparsable.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-unparsable.out","lines_changed":9},{"name":"tests/test_ping.py","lines_changed":34}]},"message":"add more unparsable line ping tests","epoch":1620668391,"epoch_utc":null},{"commit":"8ab08a5231e082940a62fcde4be218b7ba94be31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 10:13:52 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":4}]},"message":"doc update","epoch":1620666832,"epoch_utc":null},{"commit":"48e534fa03b92b2583c5c6269c76651f3aa420cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 7 16:55:18 2021 -0700","stats":{"files_changed":3,"insertions":17,"deletions":2,"files":["tests/fixtures/osx-10.14.6/dig-noall-answer.json","tests/fixtures/osx-10.14.6/dig-noall-answer.out","tests/test_dig.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/dig-noall-answer.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig-noall-answer.out","lines_changed":4},{"name":"tests/test_dig.py","lines_changed":14}]},"message":"add +noall +answer test","epoch":1620431718,"epoch_utc":null},{"commit":"61851c1bd02aa82d5d82e68595e45630ead13d34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 7 16:42:09 2021 -0700","stats":{"files_changed":2,"insertions":85,"deletions":3,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":40},{"name":"jc/parsers/dig.py","lines_changed":48}]},"message":"add support for +noall +answer","epoch":1620430929,"epoch_utc":null},{"commit":"3c51b2d83d301b4072bbb12fdba4f60b900573da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 7 13:50:28 2021 -0700","stats":{"files_changed":3,"insertions":40,"deletions":0,"files":[".../centos-7.7/ping-ip-O-unparsedlines.json",".../centos-7.7/ping-ip-O-unparsedlines.out","tests/test_ping.py"],"file_stats":[{"name":".../centos-7.7/ping-ip-O-unparsedlines.json","lines_changed":1},{"name":".../centos-7.7/ping-ip-O-unparsedlines.out","lines_changed":27},{"name":"tests/test_ping.py","lines_changed":12}]},"message":"add tests for unparsable lines on linux","epoch":1620420628,"epoch_utc":null},{"commit":"ee3a28528e152c61f05bdf71f264fe38274b4190","merge":"fe1f101 916bcda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 10:03:58 2021 -0700","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev\n\n# Conflicts:\n# templates/readme_template","epoch":1620234238,"epoch_utc":null},{"commit":"916bcdae3881fc9c9f9a91c8c901a714cff3e1da","merge":"fb14f54 efb1d3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 10:02:25 2021 -0700","message":"Merge pull request #136 from kellyjonbrazil/master\n\nmerge changes from master","epoch":1620234145,"epoch_utc":null},{"commit":"efb1d3e6b2db920423511a9dcf4c5e5fd9d6af43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 09:23:21 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"templates/readme_template","lines_changed":4}]},"message":"add blog title and minor formatting","epoch":1620231801,"epoch_utc":null},{"commit":"4e6ae66bacc014e49c4a9229d10dcc8e95de436c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 09:20:47 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting","epoch":1620231647,"epoch_utc":null},{"commit":"5ee88e7b679bc163a1916d560be6ff29f51699e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 09:18:45 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":10}]},"message":"add use cases section","epoch":1620231525,"epoch_utc":null},{"commit":"c3b68903cbd898f80438af342195eec7575aafd3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 09:17:11 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":10}]},"message":"add use cases section","epoch":1620231431,"epoch_utc":null},{"commit":"fe1f1013a74bdf6b4284f11dd59db8ea17e5e5d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 09:16:05 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":10}]},"message":"add use cases section","epoch":1620231365,"epoch_utc":null},{"commit":"fb14f5439f00d5eaf08651c552189fd4be7358d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 08:03:27 2021 -0700","stats":{"files_changed":4,"insertions":52,"deletions":3,"files":["jc/parsers/ping.py",".../osx-10.14.6/ping-ip-unknown-errors.json",".../osx-10.14.6/ping-ip-unknown-errors.out","tests/test_ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":7},{"name":".../osx-10.14.6/ping-ip-unknown-errors.json","lines_changed":1},{"name":".../osx-10.14.6/ping-ip-unknown-errors.out","lines_changed":35},{"name":"tests/test_ping.py","lines_changed":12}]},"message":"fix and tests for unknown or unparsable errors","epoch":1620227007,"epoch_utc":null},{"commit":"5ca0fc364eb22d583bee5633cdd7183c1d70bb6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 4 19:05:20 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/parsers/ping.md"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":1}]},"message":"add unparsed_line to docs","epoch":1620180320,"epoch_utc":null},{"commit":"a1fe7037e5267ec4aced719eff3715085eb35bca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 4 19:04:16 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":10}]},"message":"add unparsed_line field if line cannot be parsed","epoch":1620180256,"epoch_utc":null},{"commit":"c2af7d113ed8e8cf9af985c969cf29858a3c26a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 4 15:35:47 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["CHANGELOG","docs/parsers/ping.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"docs/parsers/ping.md","lines_changed":2}]},"message":"add ping updates","epoch":1620167747,"epoch_utc":null},{"commit":"ff034e401d5c33efbc3c4bc2f0e386d81eaae7fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 4 15:34:45 2021 -0700","stats":{"files_changed":1,"insertions":59,"deletions":43,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":102}]},"message":"use try/except to make parser more resilient against unknown error types","epoch":1620167685,"epoch_utc":null},{"commit":"5abe095beb4b668e5f55fe8c9588677547e4c2a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 3 15:26:16 2021 -0700","stats":{"files_changed":1,"insertions":14,"deletions":3,"files":["docs/parsers/ping.md"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":17}]},"message":"update ping docs","epoch":1620080776,"epoch_utc":null},{"commit":"33de5f01e638953c83bb0960dc3550ca4547849b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 3 15:16:47 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["jc/__init__.py","setup.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":4},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1620080207,"epoch_utc":null},{"commit":"8ce155d843806be4ad23491b4401e4eda02e2a1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 3 15:16:33 2021 -0700","stats":{"files_changed":5,"insertions":86,"deletions":23,"files":["CHANGELOG","jc/parsers/ping.py",".../fixtures/osx-10.14.6/ping-ip-unreachable.json","tests/fixtures/osx-10.14.6/ping-ip-unreachable.out","tests/test_ping.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/ping.py","lines_changed":56},{"name":".../fixtures/osx-10.14.6/ping-ip-unreachable.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-unreachable.out","lines_changed":35},{"name":"tests/test_ping.py","lines_changed":14}]},"message":"add support for error replies in v4 ping on osx and bsd","epoch":1620080193,"epoch_utc":null},{"commit":"b921d5ec9583c8f8e992613ae2eaf62165722054","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 30 16:53:52 2021 -0700","stats":{"files_changed":1,"insertions":105,"deletions":6,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":111}]},"message":"initial support for error replies in bsd/osx","epoch":1619826832,"epoch_utc":null},{"commit":"e21542aaa2aa5f2f287ddc227df41ae47d761332","merge":"d24f9a8 6150aae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 30 10:31:55 2021 -0700","message":"Merge pull request #135 from kellyjonbrazil/dev\n\nDev clarify packaged binaries in readme","epoch":1619803915,"epoch_utc":null},{"commit":"6150aae0aeabafba26d9f119406b0660d9221cb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 30 10:31:02 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"clarify packaged binaries","epoch":1619803862,"epoch_utc":null},{"commit":"f27b35f37104ad2012c3bddde0bd94941af06894","merge":"bd428a9 d24f9a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 15:28:35 2021 -0700","message":"Merge pull request #131 from kellyjonbrazil/master\n\nsync branches","epoch":1619648915,"epoch_utc":null},{"commit":"d24f9a885d3954035a98a488671486408f509dca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 15:26:52 2021 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["CONTRIBUTING.md","README.md","templates/readme_template"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2},{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"fix contributing link","epoch":1619648812,"epoch_utc":null},{"commit":"48dd82c8d1b756c4e08d49b8234b8060080dc035","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 15:15:41 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"trigger page build on github pages","epoch":1619648141,"epoch_utc":null},{"commit":"e57167ad1f240de6ec5fc86c51cfb780535cd783","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 12:23:31 2021 -0700","message":"empty commit","epoch":1619637811,"epoch_utc":null},{"commit":"ada91376426ff359c495fb31081404a2cce72b5f","merge":"0c209db bd428a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 11:53:15 2021 -0700","message":"Merge pull request #130 from kellyjonbrazil/dev\n\nDev link updates","epoch":1619635995,"epoch_utc":null},{"commit":"bd428a9fd75327710dce96f3c95f74ab9d1beaad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 11:52:24 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"fix link","epoch":1619635944,"epoch_utc":null},{"commit":"934941332f91d9e2cc4e691b154bb5427166ed30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 11:50:10 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"templates/readme_template","lines_changed":6}]},"message":"minor link updates","epoch":1619635810,"epoch_utc":null},{"commit":"0c209dbd108638f89a43801126a332379be9ae8b","merge":"92e2252 56e041a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 11:36:05 2021 -0700","message":"Merge pull request #129 from kellyjonbrazil/dev\n\nDev update readme","epoch":1619634965,"epoch_utc":null},{"commit":"56e041aa260b2daf2f5662fae98645a93137adb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 11:34:51 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add Practical JSON at the Command Line blog link","epoch":1619634891,"epoch_utc":null},{"commit":"cf9d48582e4e5df6c8498b916a2f9cf036869f3d","merge":"35464bb 92e2252","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 13:17:20 2021 -0700","message":"Merge pull request #128 from kellyjonbrazil/master\n\nsync branches","epoch":1619468240,"epoch_utc":null},{"commit":"92e2252bee00482bb0eeae3074b107d4c8553e4c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 12:18:21 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"fix typo","epoch":1619464701,"epoch_utc":null},{"commit":"fd7861db11e5aaa17c4e7bbce942c0c096116e30","merge":"fcc7e52 35464bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 12:12:02 2021 -0700","message":"Merge pull request #127 from kellyjonbrazil/dev\n\nDev v1.15.3","epoch":1619464322,"epoch_utc":null},{"commit":"35464bbbfb6b424ef3ee1c855557ada1bf3769fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 12:08:10 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"date update","epoch":1619464090,"epoch_utc":null},{"commit":"db8ddd7f0e0c2a8bd3e545619e81d3d3972a4d7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 12:04:03 2021 -0700","stats":{"files_changed":5,"insertions":11,"deletions":17,"files":["jc/man/jc.1.gz","jc/parsers/ufw.py","man/jc.1.gz","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/ufw.py","lines_changed":24},{"name":"man/jc.1.gz","lines_changed":null},{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.json","lines_changed":2}]},"message":"fix for scenarios where the default port range didn't always display, or overrode existing port ranges.","epoch":1619463843,"epoch_utc":null},{"commit":"72207c54ee5734e3d2d3d1a063c8daf1edaa8815","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 10:02:02 2021 -0700","stats":{"files_changed":3,"insertions":102,"deletions":94,"files":["docs/parsers/ufw_appinfo.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/ufw_appinfo.md","lines_changed":196},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update ufw app info docs to support multiple apps (ufw app info all)","epoch":1619456522,"epoch_utc":null},{"commit":"a683f68003ea64dd5e2c4f06b53a1561ad774f12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 10:00:44 2021 -0700","stats":{"files_changed":9,"insertions":285,"deletions":202,"files":["EXAMPLES.md","jc/parsers/ufw_appinfo.py","tests/fixtures/generic/ufw-appinfo-msn.json","tests/fixtures/generic/ufw-appinfo-test.json","tests/fixtures/generic/ufw-appinfo-test2.json","tests/fixtures/generic/ufw-appinfo-test3.json","tests/fixtures/ubuntu-18.04/ufw-appinfo-all.json","tests/fixtures/ubuntu-18.04/ufw-appinfo-all.out","tests/test_ufw_appinfo.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":68},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":345},{"name":"tests/fixtures/generic/ufw-appinfo-msn.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw-appinfo-test.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw-appinfo-test2.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw-appinfo-test3.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-appinfo-all.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ufw-appinfo-all.out","lines_changed":51},{"name":"tests/test_ufw_appinfo.py","lines_changed":14}]},"message":"change schema to a list of dictionaries to support `ufw app info all` use case","epoch":1619456444,"epoch_utc":null},{"commit":"8d2d3db3fa969456342181a226bf54a3f1613542","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 21:10:21 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":0,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting","epoch":1619410221,"epoch_utc":null},{"commit":"eca785450d1c72687817d09259fa7cd33376fafc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 21:06:47 2021 -0700","stats":{"files_changed":5,"insertions":34,"deletions":13,"files":["CHANGELOG","README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":22},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/readme_template","lines_changed":22}]},"message":"add caveats to readme and manpage","epoch":1619410007,"epoch_utc":null},{"commit":"5b40a97ce417687b4e37f320b8a3f07dd7fd169c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 20:55:43 2021 -0700","stats":{"files_changed":3,"insertions":13,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/manpage_template","lines_changed":13}]},"message":"add caveats to man page","epoch":1619409343,"epoch_utc":null},{"commit":"66cb4e9bde81b9290c1addaf851de5d80a1b0702","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 20:49:35 2021 -0700","stats":{"files_changed":5,"insertions":216,"deletions":234,"files":["EXAMPLES.md","docs/parsers/ufw.md","jc/man/jc.1.gz","jc/parsers/ufw.py","man/jc.1.gz"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":96},{"name":"docs/parsers/ufw.md","lines_changed":226},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/ufw.py","lines_changed":128},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update ufw parser docs","epoch":1619408975,"epoch_utc":null},{"commit":"d1f33645caccdb3a55576081c4d355f997ac033c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 20:40:38 2021 -0700","stats":{"files_changed":7,"insertions":26,"deletions":10,"files":["tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw-numbered2.json","tests/fixtures/generic/ufw.json","tests/fixtures/ubuntu-18.04/ufw-numbered.json","tests/fixtures/ubuntu-18.04/ufw-numbered.out","tests/fixtures/ubuntu-18.04/ufw-verbose.json","tests/fixtures/ubuntu-18.04/ufw-verbose.out"],"file_stats":[{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw-numbered2.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-numbered.out","lines_changed":16},{"name":"tests/fixtures/ubuntu-18.04/ufw-verbose.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-verbose.out","lines_changed":10}]},"message":"update ufw tests","epoch":1619408438,"epoch_utc":null},{"commit":"5eff65c326675a449afd05a2af0a6c9bcf7b5e23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 20:10:52 2021 -0700","stats":{"files_changed":1,"insertions":85,"deletions":268,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":353}]},"message":"update schema to support port lists and port range lists. Also support other transports than tcp and udp","epoch":1619406652,"epoch_utc":null},{"commit":"929c38715d87bf9dd689507d319c22b90871ae1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 12:53:29 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"formatting","epoch":1619294009,"epoch_utc":null},{"commit":"8c91a7b7601a967cd9d8096433ffd4ad62b65ceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 12:52:26 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":4}]},"message":"formatting","epoch":1619293946,"epoch_utc":null},{"commit":"14289ecd6c022ad204444dff5b5e48f6024a5d0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 12:50:40 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":4}]},"message":"more timezone info","epoch":1619293840,"epoch_utc":null},{"commit":"b833c44783eb32f2fad24ca205b5b7eab854750f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 12:47:24 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add ufw-appinfo parser","epoch":1619293644,"epoch_utc":null},{"commit":"e23aa818eaa6d1a389ddef7dd2ad8f62b9f6ff25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 12:47:12 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":5}]},"message":"add tests section and timezone info","epoch":1619293632,"epoch_utc":null},{"commit":"473d919c1350a8dc34d233033a5a7d12c928e42d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 10:58:31 2021 -0700","stats":{"files_changed":4,"insertions":32,"deletions":0,"files":["runtests.sh","tests/fixtures/generic/ufw-numbered2.json","tests/fixtures/generic/ufw-numbered2.out","tests/test_ufw.py"],"file_stats":[{"name":"runtests.sh","lines_changed":1},{"name":"tests/fixtures/generic/ufw-numbered2.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-numbered2.out","lines_changed":18},{"name":"tests/test_ufw.py","lines_changed":12}]},"message":"add another ufw test sample","epoch":1619287111,"epoch_utc":null},{"commit":"9f925d6ac989a4f21a8c00c84fcf97dfb141e8c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 10:22:37 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update","epoch":1619284957,"epoch_utc":null},{"commit":"f6ca32b3a31f314fa0b31d9e8b5494491b928f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 10:22:19 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/ufw.md","jc/parsers/ufw.py"],"file_stats":[{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"jc/parsers/ufw.py","lines_changed":2}]},"message":"update ufw docs with a note on lists of ports","epoch":1619284939,"epoch_utc":null},{"commit":"4cbe84c3d6ac8a3b594feb525460f2a68f5d62b2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 16:15:04 2021 -0700","stats":{"files_changed":9,"insertions":110,"deletions":0,"files":["tests/fixtures/generic/ufw-appinfo-msn.json","tests/fixtures/generic/ufw-appinfo-msn.out","tests/fixtures/generic/ufw-appinfo-test.json","tests/fixtures/generic/ufw-appinfo-test.out","tests/fixtures/generic/ufw-appinfo-test2.json","tests/fixtures/generic/ufw-appinfo-test2.out","tests/fixtures/generic/ufw-appinfo-test3.json","tests/fixtures/generic/ufw-appinfo-test3.out","tests/test_ufw_appinfo.py"],"file_stats":[{"name":"tests/fixtures/generic/ufw-appinfo-msn.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-appinfo-msn.out","lines_changed":9},{"name":"tests/fixtures/generic/ufw-appinfo-test.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-appinfo-test.out","lines_changed":9},{"name":"tests/fixtures/generic/ufw-appinfo-test2.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-appinfo-test2.out","lines_changed":9},{"name":"tests/fixtures/generic/ufw-appinfo-test3.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-appinfo-test3.out","lines_changed":9},{"name":"tests/test_ufw_appinfo.py","lines_changed":70}]},"message":"add ufw-appinfo tests","epoch":1619219704,"epoch_utc":null},{"commit":"ffac5bf9d381305daa86e546f8570be092e5ff34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 16:14:53 2021 -0700","stats":{"files_changed":3,"insertions":12,"deletions":12,"files":["docs/parsers/ufw.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/ufw.md","lines_changed":24},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update","epoch":1619219693,"epoch_utc":null},{"commit":"9aa424f9f8c7e4e0dc29e2c58dac481098beba7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 16:14:39 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":12}]},"message":"fix ufw example","epoch":1619219679,"epoch_utc":null},{"commit":"0a8495c68e427e39bbda957dd933fa2a461092e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 16:14:25 2021 -0700","stats":{"files_changed":1,"insertions":12,"deletions":15,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":27}]},"message":"update docs","epoch":1619219665,"epoch_utc":null},{"commit":"6aea066cf024f92adf4b94eebc7d51430c22332c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 16:14:11 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/parsers/ufw_appinfo.py","lines_changed":6}]},"message":"make normalized list appear only when data exists. set magic commands","epoch":1619219651,"epoch_utc":null},{"commit":"ff3c2d809ec3ea6e556c302909a228ee670578c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 09:57:41 2021 -0700","stats":{"files_changed":6,"insertions":176,"deletions":25,"files":["EXAMPLES.md","README.md","docs/parsers/ufw_appinfo.md","jc/man/jc.1.gz","jc/parsers/ufw_appinfo.py","man/jc.1.gz"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":39},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":58},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":103},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add ufw-appinfo to docs","epoch":1619197061,"epoch_utc":null},{"commit":"145059fc8946b7026184139baea143c2869bc4e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 09:04:11 2021 -0700","stats":{"files_changed":1,"insertions":20,"deletions":8,"files":["jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/parsers/ufw_appinfo.py","lines_changed":28}]},"message":"clean up output if sections are blank","epoch":1619193851,"epoch_utc":null},{"commit":"20e5c19de448c1b979497817c887d8d2d6487839","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 08:30:34 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/parsers/ufw_appinfo.py","lines_changed":3}]},"message":"fix key error if tcp or udp don't exist","epoch":1619191834,"epoch_utc":null},{"commit":"4c98fd4b877c54e1cf7d285a29e178321be12f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 08:26:00 2021 -0700","stats":{"files_changed":2,"insertions":101,"deletions":1,"files":["docs/parsers/ufw_appinfo.md","jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"docs/parsers/ufw_appinfo.md","lines_changed":100},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":2}]},"message":"doc update","epoch":1619191560,"epoch_utc":null},{"commit":"125e54213e8d4dcfe2e3271456af80b3f79c0544","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 08:13:53 2021 -0700","stats":{"files_changed":1,"insertions":105,"deletions":48,"files":["jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/parsers/ufw_appinfo.py","lines_changed":153}]},"message":"update schema and add normalized fields","epoch":1619190833,"epoch_utc":null},{"commit":"0152e0665f87833250561d743144af35416992f8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 22 16:52:01 2021 -0700","stats":{"files_changed":2,"insertions":215,"deletions":0,"files":["jc/cli.py","jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":214}]},"message":"initial working ufw-appinfo parser","epoch":1619135521,"epoch_utc":null},{"commit":"0679bcbc560ea3575555d8546afdd4e2474d05d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 22 08:33:57 2021 -0700","stats":{"files_changed":5,"insertions":31,"deletions":5,"files":["tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json","tests/fixtures/ubuntu-18.04/ufw-numbered.json","tests/fixtures/ubuntu-18.04/ufw-verbose.json","tests/test_ufw.py"],"file_stats":[{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-numbered.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ufw-verbose.json","lines_changed":1},{"name":"tests/test_ufw.py","lines_changed":30}]},"message":"fix ufw tests","epoch":1619105637,"epoch_utc":null},{"commit":"5500648aa0886ea5089856e5b33d7c8ebd78d5b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 22 08:33:45 2021 -0700","stats":{"files_changed":3,"insertions":46,"deletions":46,"files":["EXAMPLES.md","docs/parsers/ufw.md","jc/parsers/ufw.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":20},{"name":"docs/parsers/ufw.md","lines_changed":36},{"name":"jc/parsers/ufw.py","lines_changed":36}]},"message":"fix ufw docs for int conversions and service behavior","epoch":1619105625,"epoch_utc":null},{"commit":"bb50caad4dfaefa309e747fd05b650186c5a80f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 22 08:16:42 2021 -0700","stats":{"files_changed":3,"insertions":31,"deletions":4,"files":["jc/parsers/ufw.py","tests/fixtures/ubuntu-18.04/ufw-numbered.out","tests/fixtures/ubuntu-18.04/ufw-verbose.out"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":10},{"name":"tests/fixtures/ubuntu-18.04/ufw-numbered.out","lines_changed":11},{"name":"tests/fixtures/ubuntu-18.04/ufw-verbose.out","lines_changed":14}]},"message":"fix prefix int conversions. don't reset _transport if service is really a list of ports","epoch":1619104602,"epoch_utc":null},{"commit":"7eef5d94d591a3f70f6638b1b30f952a3bf35f9d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 16:55:25 2021 -0700","stats":{"files_changed":3,"insertions":5,"deletions":0,"files":["EXAMPLES.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":5},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"ufw doc update","epoch":1619049325,"epoch_utc":null},{"commit":"74f623f8d607c050db8f62ea4996c4e6aae43268","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 16:55:14 2021 -0700","stats":{"files_changed":5,"insertions":43,"deletions":11,"files":["docs/parsers/ufw.md","jc/parsers/ufw.py","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json","tests/fixtures/generic/ufw.out"],"file_stats":[{"name":"docs/parsers/ufw.md","lines_changed":13},{"name":"jc/parsers/ufw.py","lines_changed":25},{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.out","lines_changed":12}]},"message":"add support for rule comments and LIMIT and REJECT actions","epoch":1619049314,"epoch_utc":null},{"commit":"f638aca092475bbae14fed765e90435c093fcb8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 10:10:36 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add deb package name fix","epoch":1619025036,"epoch_utc":null},{"commit":"da35eaf80ad4f11e7482fc4734db4b2265e50548","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 09:10:10 2021 -0700","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["docs/parsers/ufw.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"formatting","epoch":1619021410,"epoch_utc":null},{"commit":"ade0e8e8fc18ff9a0dd406206a85238f1f5a739d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 09:09:23 2021 -0700","stats":{"files_changed":7,"insertions":107,"deletions":0,"files":["tests/fixtures/generic/ufw-inactive.json","tests/fixtures/generic/ufw-inactive.out","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw-numbered.out","tests/fixtures/generic/ufw.json","tests/fixtures/generic/ufw.out","tests/test_ufw.py"],"file_stats":[{"name":"tests/fixtures/generic/ufw-inactive.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-inactive.out","lines_changed":1},{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-numbered.out","lines_changed":23},{"name":"tests/fixtures/generic/ufw.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw.out","lines_changed":22},{"name":"tests/test_ufw.py","lines_changed":58}]},"message":"add ufw tests","epoch":1619021363,"epoch_utc":null},{"commit":"90076090f05a1f03e2fbff307418ee18d7d046ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 09:09:09 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":5,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":12}]},"message":"fix int conversions if 'rules' key does not exist","epoch":1619021349,"epoch_utc":null},{"commit":"23635def8b654097178f73ed1b57fc50965142d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 07:51:32 2021 -0700","stats":{"files_changed":6,"insertions":306,"deletions":4,"files":["README.md","docs/parsers/ping.md","docs/parsers/ufw.md","docs/utils.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"docs/parsers/ping.md","lines_changed":1},{"name":"docs/parsers/ufw.md","lines_changed":302},{"name":"docs/utils.md","lines_changed":4},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add ufw to docs","epoch":1619016692,"epoch_utc":null},{"commit":"4eeec087bde98f90ab8425473d1fbeee6834852e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 07:49:49 2021 -0700","stats":{"files_changed":1,"insertions":115,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":115}]},"message":"add ufw example","epoch":1619016589,"epoch_utc":null},{"commit":"733196103897a1d84d242324ddcf96e783320329","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 07:41:32 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":4}]},"message":"update docs with new examples that have `to_service` always existing.","epoch":1619016092,"epoch_utc":null},{"commit":"e4acb3d5b70a7d75741ef3e35cd6750d1362a80f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 07:08:50 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":4}]},"message":"always make to/from_service None if ports are assigned","epoch":1619014130,"epoch_utc":null},{"commit":"c60549a9947d5684bbfa58223bfbcfc40a3ed479","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 22:08:12 2021 -0700","stats":{"files_changed":1,"insertions":29,"deletions":29,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":58}]},"message":"change field name from to/from_subnet to to/from_ip_prefix","epoch":1618981692,"epoch_utc":null},{"commit":"d46fc8bbfa15a80a1af6c64f70230f858c215223","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 21:58:52 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":9}]},"message":"set to/from_transport to None if to/from_service is set","epoch":1618981132,"epoch_utc":null},{"commit":"b133d1f90d49362594508d8c475663754f0e7675","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 21:52:39 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":6}]},"message":"strip interface value","epoch":1618980759,"epoch_utc":null},{"commit":"5be615a97e7c145c8351764234ac591028560c34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 21:45:13 2021 -0700","stats":{"files_changed":1,"insertions":219,"deletions":9,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":228}]},"message":"add examples for docs","epoch":1618980313,"epoch_utc":null},{"commit":"ea1d820f96321ddf4084b54ee2fdf397295beb21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 21:29:49 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":11}]},"message":"convert integer fields","epoch":1618979389,"epoch_utc":null},{"commit":"47e262cf7200b02ff0af97a70ffa6bec286c8f39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 21:21:42 2021 -0700","stats":{"files_changed":1,"insertions":59,"deletions":14,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":73}]},"message":"clean up fields","epoch":1618978902,"epoch_utc":null},{"commit":"eec673be9092e382694aa02682564510ce4e7f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 20:32:59 2021 -0700","stats":{"files_changed":1,"insertions":88,"deletions":3,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":91}]},"message":"working raw parser","epoch":1618975979,"epoch_utc":null},{"commit":"9a0fb2a7c87e6fde0cc0d84fa8a1f131e28ea732","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 14:17:01 2021 -0700","stats":{"files_changed":1,"insertions":157,"deletions":0,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":157}]},"message":"parse major sections","epoch":1618953421,"epoch_utc":null},{"commit":"b5145d6c14d7a51e7cfdebe126c9689dc90f7b27","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 13:39:12 2021 -0700","stats":{"files_changed":4,"insertions":8,"deletions":4,"files":["CHANGELOG","jc/__init__.py","jc/cli.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":6},{"name":"jc/cli.py","lines_changed":1},{"name":"setup.py","lines_changed":2}]},"message":"version bump to v1.15.3","epoch":1618951152,"epoch_utc":null},{"commit":"9747ca414dfb8218389c7b2199a080edabc2a184","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 10:50:20 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":11}]},"message":"minor optimization to convert_to_int(). No longer runs through convert_to_float(), but uses standard float() function.","epoch":1618941020,"epoch_utc":null},{"commit":"312d465b61a15592cc70d3734ad747b9a2be10ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 19 14:18:12 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":2}]},"message":"update link","epoch":1618867092,"epoch_utc":null},{"commit":"7dcf87d24ad40eba6ba98de2b4b2bf177a76cd71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 19 13:12:55 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":1}]},"message":"formatting","epoch":1618863175,"epoch_utc":null},{"commit":"cf3cfd16a9de05f30303b5952fbe609cde842d2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 19 09:59:58 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":6}]},"message":"rename tests","epoch":1618851598,"epoch_utc":null},{"commit":"fcc7e5294973d1a18943fa2ce2e836b0fe757d95","merge":"6c83846 3ab9d48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 17:28:27 2021 -0700","message":"Merge pull request #123 from kellyjonbrazil/dev\n\nDev v1.15.2","epoch":1618792107,"epoch_utc":null},{"commit":"3ab9d480149a692510ab9e0ac8e745b674683e3d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 17:24:42 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"update changelog","epoch":1618791882,"epoch_utc":null},{"commit":"7eddf41c5f6310264359cd6d78bdfa4b65af7d06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 17:21:08 2021 -0700","stats":{"files_changed":11,"insertions":96,"deletions":9,"files":["jc/man/jc.1.gz","jc/utils.py","man/jc.1.gz","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/df.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/free-h.json","tests/test_utils.py"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/utils.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null},{"name":"tests/fixtures/centos-7.7/df-h.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/df.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/free-h.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/df-h.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/df-h.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/free-h.json","lines_changed":2},{"name":"tests/test_utils.py","lines_changed":89}]},"message":"dont round up int conversions and fix tests","epoch":1618791668,"epoch_utc":null},{"commit":"27a196c93862bd737603cfe402b35529eb412954","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 16:42:42 2021 -0700","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update","epoch":1618789362,"epoch_utc":null},{"commit":"e4324f05fb6f89c34fa1567e70d8636457623edb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 16:42:34 2021 -0700","stats":{"files_changed":2,"insertions":14,"deletions":14,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":14},{"name":"jc/parsers/dig.py","lines_changed":14}]},"message":"fix indentation in doc","epoch":1618789354,"epoch_utc":null},{"commit":"d36b332bd78b5bf5979cdc59b31da08d8e4104d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 16:33:47 2021 -0700","stats":{"files_changed":53,"insertions":196,"deletions":274,"files":["docs/parsers/systemctl_lj.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/wc.md","docs/parsers/who.md","docs/utils.md","jc/parsers/acpi.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/hash.py","jc/parsers/hciconfig.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl_lj.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/utils.py"],"file_stats":[{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":2},{"name":"jc/parsers/acpi.py","lines_changed":21},{"name":"jc/parsers/airport_s.py","lines_changed":9},{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/blkid.py","lines_changed":4},{"name":"jc/parsers/cksum.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":4},{"name":"jc/parsers/dir.py","lines_changed":4},{"name":"jc/parsers/dmidecode.py","lines_changed":4},{"name":"jc/parsers/du.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":4},{"name":"jc/parsers/fstab.py","lines_changed":4},{"name":"jc/parsers/group.py","lines_changed":4},{"name":"jc/parsers/hash.py","lines_changed":4},{"name":"jc/parsers/hciconfig.py","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":4},{"name":"jc/parsers/iptables.py","lines_changed":4},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4},{"name":"jc/parsers/lsblk.py","lines_changed":13},{"name":"jc/parsers/lsmod.py","lines_changed":4},{"name":"jc/parsers/lsof.py","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":16},{"name":"jc/parsers/ntpq.py","lines_changed":10},{"name":"jc/parsers/passwd.py","lines_changed":4},{"name":"jc/parsers/ps.py","lines_changed":13},{"name":"jc/parsers/route.py","lines_changed":4},{"name":"jc/parsers/rpm_qi.py","lines_changed":4},{"name":"jc/parsers/shadow.py","lines_changed":4},{"name":"jc/parsers/ss.py","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"jc/parsers/systemctl_lj.py","lines_changed":13},{"name":"jc/parsers/systeminfo.py","lines_changed":6},{"name":"jc/parsers/time.py","lines_changed":32},{"name":"jc/parsers/timedatectl.py","lines_changed":8},{"name":"jc/parsers/tracepath.py","lines_changed":42},{"name":"jc/parsers/traceroute.py","lines_changed":40},{"name":"jc/parsers/upower.py","lines_changed":24},{"name":"jc/parsers/uptime.py","lines_changed":39},{"name":"jc/parsers/w.py","lines_changed":4},{"name":"jc/parsers/wc.py","lines_changed":12},{"name":"jc/parsers/who.py","lines_changed":12},{"name":"jc/utils.py","lines_changed":36}]},"message":"use jc.utils for conversions","epoch":1618788827,"epoch_utc":null},{"commit":"1f034826f69c461495f7a302cc8fe35e3052e72f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 13:01:25 2021 -0700","stats":{"files_changed":42,"insertions":94,"deletions":185,"files":["docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","tests/fixtures/centos-7.7/ls-alh.json","tests/fixtures/centos-7.7/lsof-sudo.json","tests/fixtures/centos-7.7/lsof.json","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/ubuntu-18.04/ls-alh.json","tests/fixtures/ubuntu-18.04/lsof-sudo.json","tests/fixtures/ubuntu-18.04/lsof.json"],"file_stats":[{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":3},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":10},{"name":"jc/parsers/jobs.py","lines_changed":8},{"name":"jc/parsers/last.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":9},{"name":"jc/parsers/lsblk.py","lines_changed":14},{"name":"jc/parsers/lsmod.py","lines_changed":9},{"name":"jc/parsers/lsof.py","lines_changed":10},{"name":"jc/parsers/netstat.py","lines_changed":37},{"name":"jc/parsers/ntpq.py","lines_changed":12},{"name":"jc/parsers/passwd.py","lines_changed":8},{"name":"jc/parsers/ping.py","lines_changed":34},{"name":"jc/parsers/ps.py","lines_changed":15},{"name":"jc/parsers/route.py","lines_changed":8},{"name":"jc/parsers/rpm_qi.py","lines_changed":9},{"name":"jc/parsers/shadow.py","lines_changed":8},{"name":"jc/parsers/ss.py","lines_changed":22},{"name":"jc/parsers/stat.py","lines_changed":11},{"name":"tests/fixtures/centos-7.7/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/lsof-sudo.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/lsof.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/lsof-sudo.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/lsof.json","lines_changed":2}]},"message":"use jc.utils for conversions","epoch":1618776085,"epoch_utc":null},{"commit":"246c707c98d3128b4e38f5c4b23a1e0ceedc0b0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 11:46:42 2021 -0700","stats":{"files_changed":46,"insertions":190,"deletions":196,"files":["CHANGELOG","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/df.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/hash.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/utils.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/hash.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/utils.py","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/osx-10.11.6/df-h.json","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/free-h.json"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":48},{"name":"jc/parsers/acpi.py","lines_changed":22},{"name":"jc/parsers/airport.py","lines_changed":7},{"name":"jc/parsers/airport_s.py","lines_changed":12},{"name":"jc/parsers/arp.py","lines_changed":5},{"name":"jc/parsers/blkid.py","lines_changed":7},{"name":"jc/parsers/cksum.py","lines_changed":8},{"name":"jc/parsers/df.py","lines_changed":14},{"name":"jc/parsers/dig.py","lines_changed":50},{"name":"jc/parsers/dir.py","lines_changed":11},{"name":"jc/parsers/dmidecode.py","lines_changed":8},{"name":"jc/parsers/du.py","lines_changed":8},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":8},{"name":"jc/parsers/fstab.py","lines_changed":8},{"name":"jc/parsers/group.py","lines_changed":8},{"name":"jc/parsers/hash.py","lines_changed":9},{"name":"jc/parsers/hciconfig.py","lines_changed":8},{"name":"jc/parsers/history.py","lines_changed":6},{"name":"jc/parsers/id.py","lines_changed":17},{"name":"jc/parsers/ifconfig.py","lines_changed":11},{"name":"jc/utils.py","lines_changed":62},{"name":"tests/fixtures/centos-7.7/df-h.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/free-h.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/df-h.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/df-h.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/df-h.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/free-h.json","lines_changed":2}]},"message":"use jc.utils conversions","epoch":1618771602,"epoch_utc":null},{"commit":"b5d8968144e76090870f8563dc1bce910fba668c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 17 17:22:59 2021 -0700","stats":{"files_changed":1,"insertions":19,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":19}]},"message":"add convert_to_int function","epoch":1618705379,"epoch_utc":null},{"commit":"f7b9fbefdde6973077573fec02342eb9946789c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 17 17:22:44 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add query_size info for dig","epoch":1618705364,"epoch_utc":null},{"commit":"b1fc4533833ca25f59869bfec8ac114bf49c7847","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 17 17:22:30 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2}]},"message":"fix _IfconfigParser name","epoch":1618705350,"epoch_utc":null},{"commit":"7581c8d0f4262fc6a05240bb21ffe533b153f6e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 17 17:07:20 2021 -0700","stats":{"files_changed":3,"insertions":45,"deletions":32,"files":["docs/parsers/dig.md","jc/parsers/dig.py","tests/fixtures/generic/dig-edns3.json"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":74},{"name":"tests/fixtures/generic/dig-edns3.json","lines_changed":2}]},"message":"add query_size field. handle user-specified dig output better - especially when querying dnssec","epoch":1618704440,"epoch_utc":null},{"commit":"32bf8ad6f4fff83fdfd83d66c1ba8f1af5a65a90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 17 15:02:45 2021 -0700","stats":{"files_changed":4,"insertions":52,"deletions":24,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"EXAMPLES.md","lines_changed":10},{"name":"docs/parsers/dig.md","lines_changed":32},{"name":"jc/parsers/dig.py","lines_changed":32}]},"message":"update dig docs","epoch":1618696965,"epoch_utc":null},{"commit":"b083bcc10fa1105fc09ce8d2c3297aa5575c9d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:30:17 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update man page","epoch":1618615817,"epoch_utc":null},{"commit":"4f6fdd120d23468270c1d7111e4ef71b87759a1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:30:04 2021 -0700","stats":{"files_changed":2,"insertions":134,"deletions":100,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":117},{"name":"jc/__init__.py","lines_changed":117}]},"message":"use dig as example","epoch":1618615804,"epoch_utc":null},{"commit":"eb0038be2490053d32803d30e1c3d4d34509d130","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:29:44 2021 -0700","stats":{"files_changed":1,"insertions":40,"deletions":19,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":59}]},"message":"update dig examples","epoch":1618615784,"epoch_utc":null},{"commit":"7ecdf819fa37c38ae6159ad8e7bc973ee4f34559","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:29:27 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":84,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":42},{"name":"templates/readme_template","lines_changed":42}]},"message":"remove dig example from readme,","epoch":1618615767,"epoch_utc":null},{"commit":"c6aa4d083550d25bcb621cad524047cfd6a08217","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:19:20 2021 -0700","stats":{"files_changed":6,"insertions":252,"deletions":317,"files":["README.md","docs/parsers/dig.md","jc/man/jc.1.gz","jc/parsers/dig.py","man/jc.1.gz","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":84},{"name":"docs/parsers/dig.md","lines_changed":313},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/dig.py","lines_changed":88},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/readme_template","lines_changed":84}]},"message":"update docs with new dig parser examples","epoch":1618615160,"epoch_utc":null},{"commit":"7c584b89a6e6b924d53d50103b97f0c2405c33b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:04:06 2021 -0700","stats":{"files_changed":15,"insertions":352,"deletions":52,"files":["jc/parsers/dig.py","tests/fixtures/generic/dig-additional.json","tests/fixtures/generic/dig-additional.out","tests/fixtures/generic/dig-additional2.json","tests/fixtures/generic/dig-additional2.out","tests/fixtures/generic/dig-additional3.json","tests/fixtures/generic/dig-additional3.out","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/generic/dig-edns.json","tests/fixtures/generic/dig-edns.out","tests/fixtures/generic/dig-edns2.json","tests/fixtures/generic/dig-edns2.out","tests/fixtures/generic/dig-edns3.json","tests/fixtures/generic/dig-edns3.out","tests/test_dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":123},{"name":"tests/fixtures/generic/dig-additional.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-additional.out","lines_changed":32},{"name":"tests/fixtures/generic/dig-additional2.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-additional2.out","lines_changed":34},{"name":"tests/fixtures/generic/dig-additional3.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-additional3.out","lines_changed":41},{"name":"tests/fixtures/generic/dig-answer-spaces.json","lines_changed":2},{"name":"tests/fixtures/generic/dig-edns.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-edns.out","lines_changed":20},{"name":"tests/fixtures/generic/dig-edns2.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-edns2.out","lines_changed":38},{"name":"tests/fixtures/generic/dig-edns3.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-edns3.out","lines_changed":34},{"name":"tests/test_dig.py","lines_changed":74}]},"message":"add additional section","epoch":1618614246,"epoch_utc":null},{"commit":"c166c0bfdafa922f57f021fa4d16e467fca02d58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 15:22:22 2021 -0700","stats":{"files_changed":14,"insertions":55,"deletions":21,"files":["jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":50},{"name":"tests/fixtures/centos-7.7/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig-x.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig.json","lines_changed":2},{"name":"tests/fixtures/generic/dig-answer-spaces.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-x.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig.json","lines_changed":2}]},"message":"add opt_pseudosection section to output and fix existing tests","epoch":1618611742,"epoch_utc":null},{"commit":"a8dd3f7802bfe8fd3ffbedf89af45ddc580ee78d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 13:11:02 2021 -0700","stats":{"files_changed":5,"insertions":54,"deletions":281,"files":["CHANGELOG","jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-axfr.json"],"file_stats":[{"name":"CHANGELOG","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":325},{"name":"tests/fixtures/centos-7.7/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-axfr.json","lines_changed":2}]},"message":"working dig axfr fixes","epoch":1618603862,"epoch_utc":null},{"commit":"3b0e2f03f3b11398ff57b1daed542faaf0b80a62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 08:46:20 2021 -0700","stats":{"files_changed":2,"insertions":24,"deletions":23,"files":["jc/cli.py","templates/manpage_template"],"file_stats":[{"name":"jc/cli.py","lines_changed":21},{"name":"templates/manpage_template","lines_changed":26}]},"message":"clean up examples","epoch":1618587980,"epoch_utc":null},{"commit":"8390ae48c88ab1c7d5acbf40c0e60606953817bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 15 16:53:03 2021 -0700","stats":{"files_changed":7,"insertions":8,"deletions":8,"files":["jc/parsers/dig.py","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":4},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig.json","lines_changed":2}]},"message":"fix server entry when IPv6 address is in value (maxsplit on colons)","epoch":1618530783,"epoch_utc":null},{"commit":"2db82c0a7e19d596c876ede8a8ff106aaa733ee5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 20:43:58 2021 -0700","stats":{"files_changed":1,"insertions":66,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":66}]},"message":"add systeminfo example","epoch":1618458238,"epoch_utc":null},{"commit":"61479540756704f10853233300ceae8f954a8a95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 20:39:35 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":0,"files":["tests/test_systeminfo.py","tests/test_utils.py"],"file_stats":[{"name":"tests/test_systeminfo.py","lines_changed":1},{"name":"tests/test_utils.py","lines_changed":4}]},"message":"update tests","epoch":1618457975,"epoch_utc":null},{"commit":"691df271fcfe057ae4b75ad40869e23deb37b886","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 20:30:31 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":1,"files":["docs/parsers/systeminfo.md","jc/man/jc.1.gz","jc/parsers/systeminfo.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/systeminfo.py","lines_changed":1},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add info docstring","epoch":1618457431,"epoch_utc":null},{"commit":"89f52b95f7055da9d7b5fa8dce0923d4c3435bd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 20:20:46 2021 -0700","stats":{"files_changed":13,"insertions":467,"deletions":821,"files":["README.md","docs/parsers/systeminfo.md","jc/man/jc.1.gz","jc/parsers/systeminfo.py","jc/utils.py","man/jc.1.gz",".../windows/windows-10/systeminfo-hyperv-utc.json",".../windows/windows-10/systeminfo-hyperv-utc.out",".../windows/windows-10/systeminfo-hyperv.json","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-10/systeminfo.out",".../windows/windows-2012r2/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/systeminfo.md","lines_changed":290},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/systeminfo.py","lines_changed":361},{"name":"jc/utils.py","lines_changed":5},{"name":"man/jc.1.gz","lines_changed":null},{"name":".../windows/windows-10/systeminfo-hyperv-utc.json","lines_changed":1},{"name":".../windows/windows-10/systeminfo-hyperv-utc.out","lines_changed":79},{"name":".../windows/windows-10/systeminfo-hyperv.json","lines_changed":112},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":57},{"name":"tests/fixtures/windows/windows-10/systeminfo.out","lines_changed":1},{"name":".../windows/windows-2012r2/systeminfo.json","lines_changed":55},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":326}]},"message":"update systeminfo parser with updated timestamps, normalized blank fields, and new doc style","epoch":1618456846,"epoch_utc":null},{"commit":"146acc1bf69c402e38c2f1bc842b84e6cff7e2cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 16:46:16 2021 -0700","stats":{"files_changed":1,"insertions":23,"deletions":29,"files":["jc/parsers/systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":52}]},"message":"rename functions to make them private","epoch":1618443976,"epoch_utc":null},{"commit":"c4a345f59aa090336b4e80f181493cd5bc2c17c5","merge":"dfd2703 325fab2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 16:39:44 2021 -0700","message":"Merge pull request #106 from jon-rd/j/systeminfo\n\nAdd windows systeminfo command parser","epoch":1618443584,"epoch_utc":null},{"commit":"dfd2703f75b907ba865fff266d0742d8931bc2d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 16:39:05 2021 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"bump dev to v1.15.2","epoch":1618443545,"epoch_utc":null},{"commit":"325fab2de7b8a4bfc452ab8d3cf333d47fdf4989","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Wed Apr 14 11:52:13 2021 -0500","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":10}]},"message":"update documentation for parsed structures","epoch":1618426333,"epoch_utc":null},{"commit":"f3d00cf38ad15aeda7eaa5644ebc30ff33de6a29","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Wed Apr 14 09:06:14 2021 -0500","stats":{"files_changed":5,"insertions":56,"deletions":48,"files":["jc/parsers/systeminfo.py",".../windows/windows-10/systeminfo-hyperv.json","tests/fixtures/windows/windows-10/systeminfo.json",".../windows/windows-2012r2/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":48},{"name":".../windows/windows-10/systeminfo-hyperv.json","lines_changed":14},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":14},{"name":".../windows/windows-2012r2/systeminfo.json","lines_changed":14},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":14}]},"message":"append mb to memory key names; adjust expected timestamps to utc tz","epoch":1618416374,"epoch_utc":null},{"commit":"14838f7f5d780896f1318cac2c3f34d249a158d4","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Wed Apr 14 08:59:17 2021 -0500","stats":{"files_changed":9,"insertions":956,"deletions":116,"files":["jc/parsers/systeminfo.py","jc/utils.py",".../windows/windows-10/systeminfo-hyperv.json",".../windows/windows-10/systeminfo-hyperv.out","tests/fixtures/windows/windows-10/systeminfo.json",".../windows/windows-2012r2/systeminfo.json",".../fixtures/windows/windows-2012r2/systeminfo.out","tests/fixtures/windows/windows-7/systeminfo.json","tests/test_systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":357},{"name":"jc/utils.py","lines_changed":1},{"name":".../windows/windows-10/systeminfo-hyperv.json","lines_changed":111},{"name":".../windows/windows-10/systeminfo-hyperv.out","lines_changed":79},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":43},{"name":".../windows/windows-2012r2/systeminfo.json","lines_changed":54},{"name":".../fixtures/windows/windows-2012r2/systeminfo.out","lines_changed":45},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":311},{"name":"tests/test_systeminfo.py","lines_changed":71}]},"message":"update schema with nic, hyperv, and process changes","epoch":1618415957,"epoch_utc":null},{"commit":"af74047b81776c2ea32d82f9145ab60c346c8203","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Mon Apr 5 09:32:04 2021 -0500","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":8}]},"message":"update schema based on processor/hotfix changes","epoch":1617640324,"epoch_utc":null},{"commit":"660c59129cf4ba7889fb3c6fbafd9dd9b479ccd9","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Mon Apr 5 09:29:42 2021 -0500","stats":{"files_changed":3,"insertions":41,"deletions":9,"files":["jc/parsers/systeminfo.py","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":42},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":4},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":4}]},"message":"Add parsing of processors/hotfixs","epoch":1617640182,"epoch_utc":null},{"commit":"89a88e186ed71d84ea802cf08ab756b49cee3225","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Thu Mar 25 16:58:54 2021 -0500","stats":{"files_changed":1,"insertions":152,"deletions":0,"files":["docs/parsers/systeminfo.md"],"file_stats":[{"name":"docs/parsers/systeminfo.md","lines_changed":152}]},"message":"Add systeminfo.md file","epoch":1616716734,"epoch_utc":null},{"commit":"f861cf95b96a224a0a11f2cdc3261b94c02415ef","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Thu Mar 25 16:18:14 2021 -0500","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["jc/cli.py","jc/parsers/systeminfo.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/systeminfo.py","lines_changed":2}]},"message":"Change to v0.5; add parser to cli.py; add to docgen","epoch":1616714294,"epoch_utc":null},{"commit":"ee8f06cbdb03f8254bb6a3c56fa5b8a64ff9ca77","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Wed Mar 24 14:13:22 2021 -0500","stats":{"files_changed":6,"insertions":688,"deletions":0,"files":["jc/parsers/systeminfo.py","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-10/systeminfo.out","tests/fixtures/windows/windows-7/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.out","tests/test_systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":209},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":35},{"name":"tests/fixtures/windows/windows-10/systeminfo.out","lines_changed":47},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":34},{"name":"tests/fixtures/windows/windows-7/systeminfo.out","lines_changed":298},{"name":"tests/test_systeminfo.py","lines_changed":65}]},"message":"Add windows systeminfo command parser","epoch":1616620402,"epoch_utc":null},{"commit":"a2e8b3c7b681605916b8950d035ee19889a125a5","merge":"e0681ee 6c83846","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 16:40:43 2021 -0700","message":"Merge pull request #121 from kellyjonbrazil/master\n\nMerge pull request #120 from kellyjonbrazil/dev","epoch":1618357243,"epoch_utc":null},{"commit":"6c838460752c7131f75cdab2da07266fee492060","merge":"10292f7 e0681ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:59:17 2021 -0700","message":"Merge pull request #120 from kellyjonbrazil/dev\n\nDev v1.15.1","epoch":1618351157,"epoch_utc":null},{"commit":"e0681eebb9881dc0ffddb478224455f434919104","merge":"e5732d1 10292f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:57:44 2021 -0700","message":"Merge branch 'master' into dev","epoch":1618351064,"epoch_utc":null},{"commit":"e5732d1cea1c882f6486cf288e45edb993989ea0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:54:38 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"update changelog","epoch":1618350878,"epoch_utc":null},{"commit":"6e7ae3cd3f003fe9e1e587b7f8ebd16ba0895014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:51:46 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/timedatectl.md","jc/man/jc.1.gz","jc/parsers/timedatectl.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"formatting of timedatectl docs","epoch":1618350706,"epoch_utc":null},{"commit":"f95632d1aaee545ae0ce081ca0617be135c09220","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:49:57 2021 -0700","stats":{"files_changed":7,"insertions":83,"deletions":62,"files":["EXAMPLES.md","docs/parsers/rpm_qi.md","jc/man/jc.1.gz","jc/parsers/rpm_qi.py","man/jc.1.gz","tests/fixtures/centos-7.7/rpm-qai.json","tests/fixtures/centos-7.7/rpm-qi-package.json"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":12},{"name":"docs/parsers/rpm_qi.md","lines_changed":62},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/rpm_qi.py","lines_changed":67},{"name":"man/jc.1.gz","lines_changed":null},{"name":"tests/fixtures/centos-7.7/rpm-qai.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rpm-qi-package.json","lines_changed":2}]},"message":"add install_date calculated fields","epoch":1618350597,"epoch_utc":null},{"commit":"2f8b7b26e59bcd745fa1fcadb373455c7d404286","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:35:17 2021 -0700","stats":{"files_changed":3,"insertions":1,"deletions":2,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update docs for v1.15.1","epoch":1618349717,"epoch_utc":null},{"commit":"10292f7502e4cb1c53b53ed39fed9288044c2ef8","merge":"37a3565 aef5470","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:15:40 2021 -0700","message":"Merge pull request #119 from kellyjonbrazil/dpkg_l-fix\n\nadd _l to module name","epoch":1618258540,"epoch_utc":null},{"commit":"aef54705f5267c633e0778e8dce0065978083139","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:15:12 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["docs/parsers/dpkg_l.md"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":4}]},"message":"add _l to module name","epoch":1618258512,"epoch_utc":null},{"commit":"bba5980fa53767716bc35d8c904e7a2341346eeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:13:18 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"man page update","epoch":1618258398,"epoch_utc":null},{"commit":"977425abfb05a63ee372df36124ac6ba6a5a0aaa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:12:08 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"jc/parsers/dpkg_l.py","lines_changed":4}]},"message":"add _l to package name in docs","epoch":1618258328,"epoch_utc":null},{"commit":"37a3565a1bbd3d01663602673fed651509e69d8c","merge":"bdcdaee 13deb8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:06:30 2021 -0700","message":"Merge pull request #118 from kellyjonbrazil/rpm-qi-doc-fix\n\nfix rpm-qi docs","epoch":1618257990,"epoch_utc":null},{"commit":"13deb8bfb6e77aaf86942f0be87b59d06ee2a97c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:05:34 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":194,"files":["docs/parsers/rpm_qai.md","docs/parsers/rpm_qi.md"],"file_stats":[{"name":"docs/parsers/rpm_qai.md","lines_changed":191},{"name":"docs/parsers/rpm_qi.md","lines_changed":6}]},"message":"fix rpm-qi docs","epoch":1618257934,"epoch_utc":null},{"commit":"a3ed9d075aff41599452c3094f7d057c25fc8f89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:04:22 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":191,"files":["docs/parsers/rpm_qai.md"],"file_stats":[{"name":"docs/parsers/rpm_qai.md","lines_changed":191}]},"message":"remove old parser doc","epoch":1618257862,"epoch_utc":null},{"commit":"fb0ced549e021916dee7da39859e8f85c8216e16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:01:17 2021 -0700","stats":{"files_changed":4,"insertions":6,"deletions":6,"files":["docs/parsers/rpm_qi.md","jc/man/jc.1.gz","jc/parsers/rpm_qi.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/rpm_qi.md","lines_changed":6},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/rpm_qi.py","lines_changed":6},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"fix rpm-qi docs (used underscore instead of dash in name)","epoch":1618257677,"epoch_utc":null},{"commit":"7eb31bc7d290fcd09e53524ebbb11e59110df6a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 19:55:03 2021 -0700","stats":{"files_changed":4,"insertions":39,"deletions":48,"files":["docs/parsers/airport_s.md","jc/man/jc.1.gz","jc/parsers/airport_s.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/airport_s.md","lines_changed":49},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/airport_s.py","lines_changed":38},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update airport_s docs","epoch":1618023303,"epoch_utc":null},{"commit":"6a06a3914273853742ac57433398968ccf7d9897","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 16:36:20 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":12}]},"message":"use herestring instead of echo -e into jq","epoch":1618011380,"epoch_utc":null},{"commit":"bdcdaee6c5299ea0750512e0943c7f58f56f2e35","merge":"5d8f836 605353f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 15:11:05 2021 -0700","message":"Merge pull request #117 from kellyjonbrazil/doc_update\n\nadd new docs","epoch":1618006265,"epoch_utc":null},{"commit":"605353fdce3b8b5986d20a35d05f7210a6df0730","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 15:10:38 2021 -0700","stats":{"files_changed":70,"insertions":1710,"deletions":2656,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":99},{"name":"docs/parsers/airport.md","lines_changed":61},{"name":"docs/parsers/airport_s.md","lines_changed":9},{"name":"docs/parsers/arp.md","lines_changed":51},{"name":"docs/parsers/blkid.md","lines_changed":93},{"name":"docs/parsers/cksum.md","lines_changed":41},{"name":"docs/parsers/crontab.md","lines_changed":84},{"name":"docs/parsers/crontab_u.md","lines_changed":88},{"name":"docs/parsers/csv.md","lines_changed":41},{"name":"docs/parsers/date.md","lines_changed":68},{"name":"docs/parsers/df.md","lines_changed":59},{"name":"docs/parsers/dig.md","lines_changed":133},{"name":"docs/parsers/dir.md","lines_changed":49},{"name":"docs/parsers/dmidecode.md","lines_changed":55},{"name":"docs/parsers/dpkg_l.md","lines_changed":51},{"name":"docs/parsers/du.md","lines_changed":39},{"name":"docs/parsers/env.md","lines_changed":39},{"name":"docs/parsers/file.md","lines_changed":39},{"name":"docs/parsers/finger.md","lines_changed":57},{"name":"docs/parsers/free.md","lines_changed":49},{"name":"docs/parsers/fstab.md","lines_changed":47},{"name":"docs/parsers/group.md","lines_changed":47},{"name":"docs/parsers/gshadow.md","lines_changed":51},{"name":"docs/parsers/hash.md","lines_changed":39},{"name":"docs/parsers/hashsum.md","lines_changed":39},{"name":"docs/parsers/hciconfig.md","lines_changed":123},{"name":"docs/parsers/history.md","lines_changed":39},{"name":"docs/parsers/hosts.md","lines_changed":43},{"name":"docs/parsers/id.md","lines_changed":79},{"name":"docs/parsers/ifconfig.md","lines_changed":97},{"name":"docs/parsers/ini.md","lines_changed":44},{"name":"docs/parsers/iptables.md","lines_changed":67},{"name":"docs/parsers/iw_scan.md","lines_changed":40},{"name":"docs/parsers/jobs.md","lines_changed":45},{"name":"docs/parsers/kv.md","lines_changed":17},{"name":"docs/parsers/last.md","lines_changed":53},{"name":"docs/parsers/ls.md","lines_changed":118},{"name":"docs/parsers/lsblk.md","lines_changed":115},{"name":"docs/parsers/lsmod.md","lines_changed":47},{"name":"docs/parsers/lsof.md","lines_changed":55},{"name":"docs/parsers/mount.md","lines_changed":47},{"name":"docs/parsers/netstat.md","lines_changed":223},{"name":"docs/parsers/ntpq.md","lines_changed":58},{"name":"docs/parsers/passwd.md","lines_changed":49},{"name":"docs/parsers/ping.md","lines_changed":81},{"name":"docs/parsers/pip_list.md","lines_changed":41},{"name":"docs/parsers/pip_show.md","lines_changed":56},{"name":"docs/parsers/ps.md","lines_changed":69},{"name":"docs/parsers/route.md","lines_changed":63},{"name":"docs/parsers/rpm_qi.md","lines_changed":77},{"name":"docs/parsers/shadow.md","lines_changed":51},{"name":"docs/parsers/ss.md","lines_changed":73},{"name":"docs/parsers/stat.md","lines_changed":97},{"name":"docs/parsers/sysctl.md","lines_changed":37},{"name":"docs/parsers/systemctl.md","lines_changed":45},{"name":"docs/parsers/systemctl_lj.md","lines_changed":44},{"name":"docs/parsers/systemctl_ls.md","lines_changed":41},{"name":"docs/parsers/systemctl_luf.md","lines_changed":39},{"name":"docs/parsers/time.md","lines_changed":105},{"name":"docs/parsers/timedatectl.md","lines_changed":53},{"name":"docs/parsers/tracepath.md","lines_changed":60},{"name":"docs/parsers/traceroute.md","lines_changed":69},{"name":"docs/parsers/uname.md","lines_changed":47},{"name":"docs/parsers/upower.md","lines_changed":145},{"name":"docs/parsers/uptime.md","lines_changed":57},{"name":"docs/parsers/w.md","lines_changed":51},{"name":"docs/parsers/wc.md","lines_changed":43},{"name":"docs/parsers/who.md","lines_changed":55},{"name":"docs/parsers/xml.md","lines_changed":38},{"name":"docs/parsers/yaml.md","lines_changed":42}]},"message":"add new docs","epoch":1618006238,"epoch_utc":null},{"commit":"490c9e17699e8e4f70dcc1612e1a808f86e24b0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 11:38:17 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":8}]},"message":"add more cli tests for magic command","epoch":1617993497,"epoch_utc":null},{"commit":"6ebebb659dc93daeaa869752ad135f6e1d2cb1ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 11:10:08 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"update changelog","epoch":1617991808,"epoch_utc":null},{"commit":"0e70c5ee12e96f04a89de05153a2da9cd39f98ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 11:04:17 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update documentation link","epoch":1617991457,"epoch_utc":null},{"commit":"cd531acf6045660e022c932f62a01d4084433ad4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 11:02:19 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":1}]},"message":"clean up comment","epoch":1617991339,"epoch_utc":null},{"commit":"908ac1f61c5cc011d05d550f933940dfed4431f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 10:56:43 2021 -0700","stats":{"files_changed":143,"insertions":0,"deletions":690,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/man/jc.1.gz","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":4},{"name":"docs/parsers/airport.md","lines_changed":4},{"name":"docs/parsers/airport_s.md","lines_changed":4},{"name":"docs/parsers/arp.md","lines_changed":4},{"name":"docs/parsers/blkid.md","lines_changed":4},{"name":"docs/parsers/cksum.md","lines_changed":4},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"docs/parsers/crontab_u.md","lines_changed":4},{"name":"docs/parsers/csv.md","lines_changed":4},{"name":"docs/parsers/date.md","lines_changed":4},{"name":"docs/parsers/df.md","lines_changed":4},{"name":"docs/parsers/dig.md","lines_changed":4},{"name":"docs/parsers/dir.md","lines_changed":4},{"name":"docs/parsers/dmidecode.md","lines_changed":4},{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"docs/parsers/du.md","lines_changed":4},{"name":"docs/parsers/env.md","lines_changed":4},{"name":"docs/parsers/file.md","lines_changed":4},{"name":"docs/parsers/finger.md","lines_changed":4},{"name":"docs/parsers/free.md","lines_changed":4},{"name":"docs/parsers/fstab.md","lines_changed":4},{"name":"docs/parsers/group.md","lines_changed":4},{"name":"docs/parsers/gshadow.md","lines_changed":4},{"name":"docs/parsers/hash.md","lines_changed":4},{"name":"docs/parsers/hashsum.md","lines_changed":4},{"name":"docs/parsers/hciconfig.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":4},{"name":"docs/parsers/hosts.md","lines_changed":4},{"name":"docs/parsers/id.md","lines_changed":4},{"name":"docs/parsers/ifconfig.md","lines_changed":4},{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"docs/parsers/iptables.md","lines_changed":4},{"name":"docs/parsers/iw_scan.md","lines_changed":4},{"name":"docs/parsers/jobs.md","lines_changed":4},{"name":"docs/parsers/kv.md","lines_changed":4},{"name":"docs/parsers/last.md","lines_changed":4},{"name":"docs/parsers/ls.md","lines_changed":67},{"name":"docs/parsers/lsblk.md","lines_changed":4},{"name":"docs/parsers/lsmod.md","lines_changed":4},{"name":"docs/parsers/lsof.md","lines_changed":4},{"name":"docs/parsers/mount.md","lines_changed":4},{"name":"docs/parsers/netstat.md","lines_changed":4},{"name":"docs/parsers/ntpq.md","lines_changed":4},{"name":"docs/parsers/passwd.md","lines_changed":4},{"name":"docs/parsers/ping.md","lines_changed":4},{"name":"docs/parsers/pip_list.md","lines_changed":4},{"name":"docs/parsers/pip_show.md","lines_changed":4},{"name":"docs/parsers/ps.md","lines_changed":4},{"name":"docs/parsers/route.md","lines_changed":4},{"name":"docs/parsers/rpm_qi.md","lines_changed":4},{"name":"docs/parsers/shadow.md","lines_changed":4},{"name":"docs/parsers/ss.md","lines_changed":4},{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"docs/parsers/sysctl.md","lines_changed":4},{"name":"docs/parsers/systemctl.md","lines_changed":4},{"name":"docs/parsers/systemctl_lj.md","lines_changed":4},{"name":"docs/parsers/systemctl_ls.md","lines_changed":4},{"name":"docs/parsers/systemctl_luf.md","lines_changed":4},{"name":"docs/parsers/time.md","lines_changed":4},{"name":"docs/parsers/timedatectl.md","lines_changed":4},{"name":"docs/parsers/tracepath.md","lines_changed":4},{"name":"docs/parsers/traceroute.md","lines_changed":4},{"name":"docs/parsers/uname.md","lines_changed":4},{"name":"docs/parsers/upower.md","lines_changed":4},{"name":"docs/parsers/uptime.md","lines_changed":4},{"name":"docs/parsers/w.md","lines_changed":4},{"name":"docs/parsers/wc.md","lines_changed":4},{"name":"docs/parsers/who.md","lines_changed":4},{"name":"docs/parsers/xml.md","lines_changed":4},{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/acpi.py","lines_changed":4},{"name":"jc/parsers/airport.py","lines_changed":4},{"name":"jc/parsers/airport_s.py","lines_changed":4},{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/blkid.py","lines_changed":4},{"name":"jc/parsers/cksum.py","lines_changed":4},{"name":"jc/parsers/crontab.py","lines_changed":4},{"name":"jc/parsers/crontab_u.py","lines_changed":4},{"name":"jc/parsers/csv.py","lines_changed":4},{"name":"jc/parsers/date.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":4},{"name":"jc/parsers/dir.py","lines_changed":4},{"name":"jc/parsers/dmidecode.py","lines_changed":4},{"name":"jc/parsers/dpkg_l.py","lines_changed":4},{"name":"jc/parsers/du.py","lines_changed":4},{"name":"jc/parsers/env.py","lines_changed":4},{"name":"jc/parsers/file.py","lines_changed":4},{"name":"jc/parsers/finger.py","lines_changed":4},{"name":"jc/parsers/foo.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":4},{"name":"jc/parsers/fstab.py","lines_changed":4},{"name":"jc/parsers/group.py","lines_changed":4},{"name":"jc/parsers/gshadow.py","lines_changed":4},{"name":"jc/parsers/hash.py","lines_changed":4},{"name":"jc/parsers/hashsum.py","lines_changed":4},{"name":"jc/parsers/hciconfig.py","lines_changed":4},{"name":"jc/parsers/history.py","lines_changed":4},{"name":"jc/parsers/hosts.py","lines_changed":4},{"name":"jc/parsers/id.py","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":4},{"name":"jc/parsers/ini.py","lines_changed":4},{"name":"jc/parsers/iptables.py","lines_changed":4},{"name":"jc/parsers/iw_scan.py","lines_changed":4},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/kv.py","lines_changed":4},{"name":"jc/parsers/last.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":67},{"name":"jc/parsers/lsblk.py","lines_changed":4},{"name":"jc/parsers/lsmod.py","lines_changed":4},{"name":"jc/parsers/lsof.py","lines_changed":4},{"name":"jc/parsers/mount.py","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":4},{"name":"jc/parsers/ntpq.py","lines_changed":4},{"name":"jc/parsers/passwd.py","lines_changed":4},{"name":"jc/parsers/ping.py","lines_changed":4},{"name":"jc/parsers/pip_list.py","lines_changed":4},{"name":"jc/parsers/pip_show.py","lines_changed":4},{"name":"jc/parsers/ps.py","lines_changed":4},{"name":"jc/parsers/route.py","lines_changed":4},{"name":"jc/parsers/rpm_qi.py","lines_changed":4},{"name":"jc/parsers/shadow.py","lines_changed":4},{"name":"jc/parsers/ss.py","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"jc/parsers/sysctl.py","lines_changed":4},{"name":"jc/parsers/systemctl.py","lines_changed":4},{"name":"jc/parsers/systemctl_lj.py","lines_changed":4},{"name":"jc/parsers/systemctl_ls.py","lines_changed":4},{"name":"jc/parsers/systemctl_luf.py","lines_changed":4},{"name":"jc/parsers/time.py","lines_changed":4},{"name":"jc/parsers/timedatectl.py","lines_changed":4},{"name":"jc/parsers/tracepath.py","lines_changed":4},{"name":"jc/parsers/traceroute.py","lines_changed":4},{"name":"jc/parsers/uname.py","lines_changed":4},{"name":"jc/parsers/upower.py","lines_changed":4},{"name":"jc/parsers/uptime.py","lines_changed":4},{"name":"jc/parsers/w.py","lines_changed":4},{"name":"jc/parsers/wc.py","lines_changed":4},{"name":"jc/parsers/who.py","lines_changed":4},{"name":"jc/parsers/xml.py","lines_changed":4},{"name":"jc/parsers/yaml.py","lines_changed":4},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update docs - remove compatibility section since it is now automatically generated from info()","epoch":1617991003,"epoch_utc":null},{"commit":"f5c7e7e4046bc57b4fcad99390e31b121a7106ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 10:36:42 2021 -0700","stats":{"files_changed":70,"insertions":350,"deletions":0,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":5},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5}]},"message":"add updated docs with home link and parser info at the bottom","epoch":1617989802,"epoch_utc":null},{"commit":"001c700b5bd280cb1cb9e54169ae5f1b7918c257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 10:36:03 2021 -0700","stats":{"files_changed":3,"insertions":2,"deletions":1,"files":["docgen.sh","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docgen.sh","lines_changed":3},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add home link to the top of the md file","epoch":1617989763,"epoch_utc":null},{"commit":"9b41e9bef0ff099e70f37fddc8fe2c6bd8457b19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 10:32:58 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":1}]},"message":"Add parser information header","epoch":1617989578,"epoch_utc":null},{"commit":"34bd6e32dc0c0bf7dfeedaadbf04115f43e9d060","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 10:26:34 2021 -0700","stats":{"files_changed":1,"insertions":20,"deletions":4,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":24}]},"message":"pull each parser as a json object into a bash array and iterate on it to add supplementary information like version, author, and compatibility","epoch":1617989194,"epoch_utc":null},{"commit":"c5d058490beaa8f59875a8acfd7a400764768639","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 09:12:41 2021 -0700","stats":{"files_changed":1,"insertions":22,"deletions":13,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":35}]},"message":"move parser doc printing to its own function","epoch":1617984761,"epoch_utc":null},{"commit":"dd1ae6d9a7de5421830232deb42d933b9a652672","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 08:09:37 2021 -0700","stats":{"files_changed":4,"insertions":3,"deletions":1,"files":["MANIFEST.in","jc/man/jc.1.gz","man/jc.1.gz","mangen.py"],"file_stats":[{"name":"MANIFEST.in","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"mangen.py","lines_changed":2}]},"message":"add man page inside the pypi package for easier packaging in homebrew","epoch":1617980977,"epoch_utc":null},{"commit":"d8ea9bde823a7f5c146741150c3211737345c7dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 16:42:57 2021 -0700","stats":{"files_changed":3,"insertions":16,"deletions":16,"files":["docs/parsers/w.md","jc/parsers/w.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/w.md","lines_changed":16},{"name":"jc/parsers/w.py","lines_changed":16},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update","epoch":1617925377,"epoch_utc":null},{"commit":"125edc9c906dc3650b6a683ed13830075acb7ab6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 16:42:45 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"bail out for -h, -a, and -v in magic()","epoch":1617925365,"epoch_utc":null},{"commit":"15ea43e394a9004f8ccec208b3a066c76e241866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 16:28:05 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["MANIFEST.in"],"file_stats":[{"name":"MANIFEST.in","lines_changed":1}]},"message":"add man file to package for easier packaging in homebrew","epoch":1617924485,"epoch_utc":null},{"commit":"b55b02687c00d1c50e30f30c9b9a7f36f783eb0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 16:14:11 2021 -0700","stats":{"files_changed":19,"insertions":371,"deletions":441,"files":["CHANGELOG","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","man/jc.1.gz","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":6},{"name":"docs/parsers/uname.md","lines_changed":42},{"name":"docs/parsers/upower.md","lines_changed":140},{"name":"docs/parsers/uptime.md","lines_changed":52},{"name":"docs/parsers/w.md","lines_changed":46},{"name":"docs/parsers/wc.md","lines_changed":38},{"name":"docs/parsers/who.md","lines_changed":50},{"name":"docs/parsers/xml.md","lines_changed":33},{"name":"docs/parsers/yaml.md","lines_changed":37},{"name":"jc/parsers/uname.py","lines_changed":33},{"name":"jc/parsers/upower.py","lines_changed":131},{"name":"jc/parsers/uptime.py","lines_changed":43},{"name":"jc/parsers/w.py","lines_changed":37},{"name":"jc/parsers/wc.py","lines_changed":29},{"name":"jc/parsers/who.py","lines_changed":41},{"name":"jc/parsers/xml.py","lines_changed":24},{"name":"jc/parsers/yaml.py","lines_changed":28},{"name":"man/jc.1.gz","lines_changed":null},{"name":"setup.py","lines_changed":2}]},"message":"doc update","epoch":1617923651,"epoch_utc":null},{"commit":"da611f0ac6321f7f52fdbc419f8b155c74393c28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 15:53:06 2021 -0700","stats":{"files_changed":4,"insertions":63,"deletions":50,"files":["jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","man/jc.1.gz"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":30},{"name":"jc/parsers/iptables.py","lines_changed":53},{"name":"jc/parsers/iw_scan.py","lines_changed":30},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update docs","epoch":1617922386,"epoch_utc":null},{"commit":"b8b8dfead4fdc4285585c44c2ebce3bdd42b2e7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 15:52:49 2021 -0700","stats":{"files_changed":61,"insertions":1501,"deletions":1848,"files":["docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":39},{"name":"docs/parsers/iptables.md","lines_changed":62},{"name":"docs/parsers/iw_scan.md","lines_changed":35},{"name":"docs/parsers/jobs.md","lines_changed":40},{"name":"docs/parsers/kv.md","lines_changed":12},{"name":"docs/parsers/last.md","lines_changed":48},{"name":"docs/parsers/ls.md","lines_changed":50},{"name":"docs/parsers/lsblk.md","lines_changed":110},{"name":"docs/parsers/lsmod.md","lines_changed":42},{"name":"docs/parsers/lsof.md","lines_changed":50},{"name":"docs/parsers/mount.md","lines_changed":42},{"name":"docs/parsers/netstat.md","lines_changed":218},{"name":"docs/parsers/ntpq.md","lines_changed":53},{"name":"docs/parsers/passwd.md","lines_changed":44},{"name":"docs/parsers/ping.md","lines_changed":76},{"name":"docs/parsers/pip_list.md","lines_changed":36},{"name":"docs/parsers/pip_show.md","lines_changed":51},{"name":"docs/parsers/ps.md","lines_changed":64},{"name":"docs/parsers/route.md","lines_changed":58},{"name":"docs/parsers/rpm_qi.md","lines_changed":72},{"name":"docs/parsers/shadow.md","lines_changed":46},{"name":"docs/parsers/ss.md","lines_changed":66},{"name":"docs/parsers/stat.md","lines_changed":92},{"name":"docs/parsers/sysctl.md","lines_changed":32},{"name":"docs/parsers/systemctl.md","lines_changed":40},{"name":"docs/parsers/systemctl_lj.md","lines_changed":39},{"name":"docs/parsers/systemctl_ls.md","lines_changed":36},{"name":"docs/parsers/systemctl_luf.md","lines_changed":34},{"name":"docs/parsers/time.md","lines_changed":100},{"name":"docs/parsers/timedatectl.md","lines_changed":48},{"name":"docs/parsers/tracepath.md","lines_changed":55},{"name":"docs/parsers/traceroute.md","lines_changed":64},{"name":"jc/parsers/jobs.py","lines_changed":31},{"name":"jc/parsers/kv.py","lines_changed":13},{"name":"jc/parsers/last.py","lines_changed":39},{"name":"jc/parsers/ls.py","lines_changed":41},{"name":"jc/parsers/lsblk.py","lines_changed":101},{"name":"jc/parsers/lsmod.py","lines_changed":33},{"name":"jc/parsers/lsof.py","lines_changed":41},{"name":"jc/parsers/mount.py","lines_changed":41},{"name":"jc/parsers/netstat.py","lines_changed":209},{"name":"jc/parsers/ntpq.py","lines_changed":44},{"name":"jc/parsers/passwd.py","lines_changed":35},{"name":"jc/parsers/ping.py","lines_changed":75},{"name":"jc/parsers/pip_list.py","lines_changed":27},{"name":"jc/parsers/pip_show.py","lines_changed":42},{"name":"jc/parsers/ps.py","lines_changed":55},{"name":"jc/parsers/route.py","lines_changed":49},{"name":"jc/parsers/rpm_qi.py","lines_changed":63},{"name":"jc/parsers/shadow.py","lines_changed":37},{"name":"jc/parsers/ss.py","lines_changed":59},{"name":"jc/parsers/stat.py","lines_changed":83},{"name":"jc/parsers/sysctl.py","lines_changed":23},{"name":"jc/parsers/systemctl.py","lines_changed":31},{"name":"jc/parsers/systemctl_lj.py","lines_changed":30},{"name":"jc/parsers/systemctl_ls.py","lines_changed":27},{"name":"jc/parsers/systemctl_luf.py","lines_changed":25},{"name":"jc/parsers/time.py","lines_changed":91},{"name":"jc/parsers/timedatectl.py","lines_changed":39},{"name":"jc/parsers/tracepath.py","lines_changed":46},{"name":"jc/parsers/traceroute.py","lines_changed":65}]},"message":"update docs","epoch":1617922369,"epoch_utc":null},{"commit":"4290a3cbd135cacbf63664dc30768017ebbed28d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 14:00:56 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":9,"files":["docs/parsers/ifconfig.md","jc/parsers/ifconfig.py"],"file_stats":[{"name":"docs/parsers/ifconfig.md","lines_changed":6},{"name":"jc/parsers/ifconfig.py","lines_changed":6}]},"message":"make IfconfigParser class private","epoch":1617915656,"epoch_utc":null},{"commit":"a5e2203cee6a7bc398cf280f57d37638eeb1d2d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 12:45:08 2021 -0700","stats":{"files_changed":3,"insertions":2,"deletions":1,"files":["docs/parsers/ifconfig.md","jc/parsers/ifconfig.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":1},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update ifconfig doc","epoch":1617911108,"epoch_utc":null},{"commit":"e28c08b1361161cfd123b9ebc11fa1ffa87d658f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 12:42:01 2021 -0700","stats":{"files_changed":46,"insertions":976,"deletions":1209,"files":["docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/csv.md","lines_changed":36},{"name":"docs/parsers/date.md","lines_changed":63},{"name":"docs/parsers/df.md","lines_changed":54},{"name":"docs/parsers/dig.md","lines_changed":128},{"name":"docs/parsers/dir.md","lines_changed":44},{"name":"docs/parsers/dmidecode.md","lines_changed":50},{"name":"docs/parsers/dpkg_l.md","lines_changed":46},{"name":"docs/parsers/du.md","lines_changed":34},{"name":"docs/parsers/env.md","lines_changed":34},{"name":"docs/parsers/file.md","lines_changed":34},{"name":"docs/parsers/finger.md","lines_changed":52},{"name":"docs/parsers/free.md","lines_changed":44},{"name":"docs/parsers/fstab.md","lines_changed":42},{"name":"docs/parsers/group.md","lines_changed":42},{"name":"docs/parsers/gshadow.md","lines_changed":46},{"name":"docs/parsers/hash.md","lines_changed":34},{"name":"docs/parsers/hashsum.md","lines_changed":34},{"name":"docs/parsers/hciconfig.md","lines_changed":118},{"name":"docs/parsers/history.md","lines_changed":34},{"name":"docs/parsers/hosts.md","lines_changed":38},{"name":"docs/parsers/id.md","lines_changed":74},{"name":"docs/parsers/ifconfig.md","lines_changed":86},{"name":"jc/parsers/csv.py","lines_changed":27},{"name":"jc/parsers/date.py","lines_changed":54},{"name":"jc/parsers/df.py","lines_changed":45},{"name":"jc/parsers/dig.py","lines_changed":143},{"name":"jc/parsers/dir.py","lines_changed":35},{"name":"jc/parsers/dmidecode.py","lines_changed":41},{"name":"jc/parsers/dpkg_l.py","lines_changed":37},{"name":"jc/parsers/du.py","lines_changed":25},{"name":"jc/parsers/env.py","lines_changed":25},{"name":"jc/parsers/file.py","lines_changed":25},{"name":"jc/parsers/finger.py","lines_changed":43},{"name":"jc/parsers/foo.py","lines_changed":25},{"name":"jc/parsers/free.py","lines_changed":35},{"name":"jc/parsers/fstab.py","lines_changed":33},{"name":"jc/parsers/group.py","lines_changed":33},{"name":"jc/parsers/gshadow.py","lines_changed":37},{"name":"jc/parsers/hash.py","lines_changed":25},{"name":"jc/parsers/hashsum.py","lines_changed":25},{"name":"jc/parsers/hciconfig.py","lines_changed":109},{"name":"jc/parsers/history.py","lines_changed":25},{"name":"jc/parsers/hosts.py","lines_changed":29},{"name":"jc/parsers/id.py","lines_changed":65},{"name":"jc/parsers/ifconfig.py","lines_changed":77},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update documentation","epoch":1617910921,"epoch_utc":null},{"commit":"a4b6846f63b43168085275d73940265940badf46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 11:37:39 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":467,"files":["man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"man/jc.1","lines_changed":467},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"man update","epoch":1617907059,"epoch_utc":null},{"commit":"2bc830786114fd57619f34b936dcf6e0bed7a109","merge":"9b39917 5d8f836","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 11:33:50 2021 -0700","message":"Merge branch 'master' into dev\n\n# Conflicts:\n# man/jc.1","epoch":1617906830,"epoch_utc":null},{"commit":"9b39917c798ed0310c9b82d87172cbf6d24ba111","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 11:24:02 2021 -0700","stats":{"files_changed":17,"insertions":391,"deletions":453,"files":["README.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","jc/cli.py","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/acpi.md","lines_changed":94},{"name":"docs/parsers/airport.md","lines_changed":56},{"name":"docs/parsers/blkid.md","lines_changed":88},{"name":"docs/parsers/cksum.md","lines_changed":36},{"name":"docs/parsers/crontab.md","lines_changed":79},{"name":"docs/parsers/crontab_u.md","lines_changed":83},{"name":"jc/cli.py","lines_changed":6},{"name":"jc/parsers/acpi.py","lines_changed":85},{"name":"jc/parsers/airport.py","lines_changed":47},{"name":"jc/parsers/blkid.py","lines_changed":79},{"name":"jc/parsers/cksum.py","lines_changed":27},{"name":"jc/parsers/crontab.py","lines_changed":70},{"name":"jc/parsers/crontab_u.py","lines_changed":74},{"name":"man/jc.1","lines_changed":8},{"name":"templates/manpage_template","lines_changed":8},{"name":"templates/readme_template","lines_changed":2}]},"message":"update docstrings for new help functionality","epoch":1617906242,"epoch_utc":null},{"commit":"57c13cc0a38ad89fda8b0e362bd6487257d0a26a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 10:54:15 2021 -0700","stats":{"files_changed":1,"insertions":23,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":26}]},"message":"add support for parser help","epoch":1617904455,"epoch_utc":null},{"commit":"b7355fd30d992a1bcc90227f5a1b02be073829e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 10:20:24 2021 -0700","stats":{"files_changed":2,"insertions":37,"deletions":48,"files":["docs/parsers/arp.md","jc/parsers/arp.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":46},{"name":"jc/parsers/arp.py","lines_changed":39}]},"message":"new docstring format for improved documentation","epoch":1617902424,"epoch_utc":null},{"commit":"93ae309e407b26820b9f05b5b331d05fc77df57f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 10:20:00 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/__init__.py","man/jc.1"],"file_stats":[{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"bump version to 1.15.1","epoch":1617902400,"epoch_utc":null},{"commit":"5d8f8365e24a7c3a587d4e71ebba4876de08203b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 14:27:34 2021 -0700","stats":{"files_changed":3,"insertions":9,"deletions":461,"files":["man/jc.1","man/jc.1.gz","mangen.py"],"file_stats":[{"name":"man/jc.1","lines_changed":461},{"name":"man/jc.1.gz","lines_changed":null},{"name":"mangen.py","lines_changed":9}]},"message":"gzip man page","epoch":1617830854,"epoch_utc":null},{"commit":"f26909eefb236e9ebf63be53cd86ae13cc3d9ea3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 11:18:33 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["docs/parsers/dir.md"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":8}]},"message":"formatting","epoch":1617819513,"epoch_utc":null},{"commit":"55bfbb2797ede3aefbb14ecab950b108b1895ccc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 11:13:27 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":6,"files":["EXAMPLES.md","jc/parsers/dir.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":3},{"name":"jc/parsers/dir.py","lines_changed":8}]},"message":"formatting","epoch":1617819207,"epoch_utc":null},{"commit":"8970b8342a855203aef649b60dad3e49a1d7fd2a","merge":"a73fdb7 5285e69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 09:34:45 2021 -0700","message":"Merge pull request #115 from kellyjonbrazil/master\n\nSync master and dev","epoch":1617813285,"epoch_utc":null},{"commit":"5285e699c30fdeaf56068f5a03ef1d1d33fa673c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 08:07:50 2021 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","jc/cli.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"fix rpm-qi parser name","epoch":1617808070,"epoch_utc":null},{"commit":"275f3860d5870303235b651d42650256e4db8ada","merge":"577811f a73fdb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 07:54:41 2021 -0700","message":"Merge pull request #114 from kellyjonbrazil/dev\n\nDev v1.15.0","epoch":1617807281,"epoch_utc":null},{"commit":"a73fdb7478965f0f2c841ac01b2762db80ad0786","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 07:50:17 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["CHANGELOG","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"update dates","epoch":1617807017,"epoch_utc":null},{"commit":"f2d746403a0ed764f931ae9e14d180bab107dcca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 20:30:56 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/rpm_qi.md","jc/parsers/rpm_qi.py"],"file_stats":[{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"jc/parsers/rpm_qi.py","lines_changed":2}]},"message":"typo fix","epoch":1617766256,"epoch_utc":null},{"commit":"b7dbf2c49be4beb793495a0aaee7f05dbea5a3a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 18:53:50 2021 -0700","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":26}]},"message":"doc formatting","epoch":1617760430,"epoch_utc":null},{"commit":"21f3c97788826e79b0c387f877c5adf269318e97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 18:38:04 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2}]},"message":"rename rpm_qai to rpm_qi","epoch":1617759484,"epoch_utc":null},{"commit":"14b727cc717d04fefba1cc31b6f29b549ced986f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 18:34:08 2021 -0700","stats":{"files_changed":3,"insertions":73,"deletions":0,"files":["tests/fixtures/centos-7.7/rpm-qi-package.json","tests/fixtures/centos-7.7/rpm-qi-package.out","tests/test_rpm_qai.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/rpm-qi-package.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rpm-qi-package.out","lines_changed":26},{"name":"tests/test_rpm_qai.py","lines_changed":46}]},"message":"add rpm_qi tests","epoch":1617759248,"epoch_utc":null},{"commit":"abee226591ed4ae37351efc995017d28b27827d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 18:32:47 2021 -0700","stats":{"files_changed":5,"insertions":205,"deletions":14,"files":["README.md","docs/parsers/rpm_qi.md","jc/cli.py","jc/parsers/{rpm_qai.py => rpm_qi.py}","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":191},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/{rpm_qai.py => rpm_qi.py}","lines_changed":20},{"name":"man/jc.1","lines_changed":4}]},"message":"rename rpm_qia to rpm_qi","epoch":1617759167,"epoch_utc":null},{"commit":"293ad39f4bcf326186dd917d8bc58d3964e5e4d6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 16:48:31 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"typo fix","epoch":1617752911,"epoch_utc":null},{"commit":"92443025811019f616f596abb60a2889f604c122","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 15:07:39 2021 -0700","stats":{"files_changed":4,"insertions":7,"deletions":6,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/rpm_qai.md","jc/parsers/rpm_qai.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":4},{"name":"docs/parsers/rpm_qai.md","lines_changed":4},{"name":"jc/parsers/rpm_qai.py","lines_changed":4}]},"message":"rpm parser doc update","epoch":1617746859,"epoch_utc":null},{"commit":"753cac25fb1e7e6cd2c742afa8d45ced068ea91d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 14:46:27 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":3,"files":["jc/parsers/rpm_qai.py"],"file_stats":[{"name":"jc/parsers/rpm_qai.py","lines_changed":9}]},"message":"only add description if it exists","epoch":1617745587,"epoch_utc":null},{"commit":"0548263e898bf14f93d2fa423c0f0a9d9f2ff567","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 14:39:39 2021 -0700","stats":{"files_changed":8,"insertions":10468,"deletions":0,"files":["EXAMPLES.md","README.md","docs/parsers/rpm_qai.md","jc/cli.py","jc/parsers/rpm_qai.py","man/jc.1","tests/fixtures/centos-7.7/rpm-qai.json","tests/fixtures/centos-7.7/rpm-qai.out"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":53},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/rpm_qai.md","lines_changed":191},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/rpm_qai.py","lines_changed":255},{"name":"man/jc.1","lines_changed":5},{"name":"tests/fixtures/centos-7.7/rpm-qai.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rpm-qai.out","lines_changed":9961}]},"message":"add rpm -qai parser","epoch":1617745179,"epoch_utc":null},{"commit":"53776a9bf894988d6ef9221a62ab8b816c89560c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 11:36:10 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":2},{"name":"templates/manpage_template","lines_changed":2}]},"message":"note -a output is JSON","epoch":1617734170,"epoch_utc":null},{"commit":"cc7def9b76a7fa6de1e11b584676820f3acb0257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 11:29:30 2021 -0700","stats":{"files_changed":3,"insertions":18,"deletions":0,"files":["tests/fixtures/osx-10.14.6/finger.json","tests/fixtures/osx-10.14.6/finger.out","tests/test_finger.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/finger.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/finger.out","lines_changed":5},{"name":"tests/test_finger.py","lines_changed":12}]},"message":"add OSX finger tests","epoch":1617733770,"epoch_utc":null},{"commit":"11a4422c25ed905f33475677bcc2f59f49c62a23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 11:23:29 2021 -0700","stats":{"files_changed":3,"insertions":51,"deletions":0,"files":["tests/fixtures/centos-7.7/finger.json","tests/fixtures/centos-7.7/finger.out","tests/test_finger.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/finger.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/finger.out","lines_changed":3},{"name":"tests/test_finger.py","lines_changed":47}]},"message":"add centos 7.7 finger tests","epoch":1617733409,"epoch_utc":null},{"commit":"3a44785260514227b541530baf3e14b6c7ebe86a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 11:23:09 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/finger.py"],"file_stats":[{"name":"jc/parsers/finger.py","lines_changed":4}]},"message":"del details key if details are blank","epoch":1617733389,"epoch_utc":null},{"commit":"e0d430c26c38db8de5a32741e05df412cffe45b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 11:00:46 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"update -r raw option info","epoch":1617732046,"epoch_utc":null},{"commit":"417b70020accfa4910016e9d3d12690a5488f6f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 10:51:41 2021 -0700","stats":{"files_changed":5,"insertions":129,"deletions":22,"files":["EXAMPLES.md","docs/parsers/finger.md","jc/parsers/finger.py","tests/fixtures/ubuntu-18.04/finger.json","tests/fixtures/ubuntu-18.04/finger.out"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":18},{"name":"docs/parsers/finger.md","lines_changed":53},{"name":"jc/parsers/finger.py","lines_changed":71},{"name":"tests/fixtures/ubuntu-18.04/finger.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/finger.out","lines_changed":8}]},"message":"add idle time fields to finger parser","epoch":1617731501,"epoch_utc":null},{"commit":"7b29c464b72ef9a79bd872dab92cf65016490bcc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 10:04:02 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"date updated","epoch":1617728642,"epoch_utc":null},{"commit":"26d5529d86e4e459ad94226465c3697a050af0ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 10:03:51 2021 -0700","stats":{"files_changed":1,"insertions":10,"deletions":7,"files":["docs/parsers/finger.md"],"file_stats":[{"name":"docs/parsers/finger.md","lines_changed":17}]},"message":"remove aix support, add note for -s support. schema update","epoch":1617728631,"epoch_utc":null},{"commit":"852103c478321b84ffbbc0a876d5ece0c0881e1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 10:02:46 2021 -0700","stats":{"files_changed":1,"insertions":27,"deletions":14,"files":["jc/parsers/finger.py"],"file_stats":[{"name":"jc/parsers/finger.py","lines_changed":41}]},"message":"tweak regex to support arbitrary 'detail' data","epoch":1617728566,"epoch_utc":null},{"commit":"26a115421b0888e23f4348f1124e2ef7b39df4cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 17:16:38 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":11}]},"message":"add finger parser","epoch":1617668198,"epoch_utc":null},{"commit":"755b941a9aa602d95d9bc599f5c64e05f9e6216d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 17:14:33 2021 -0700","stats":{"files_changed":3,"insertions":35,"deletions":30,"files":["EXAMPLES.md","docs/parsers/finger.md","jc/parsers/finger.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":23},{"name":"docs/parsers/finger.md","lines_changed":21},{"name":"jc/parsers/finger.py","lines_changed":21}]},"message":"doc update","epoch":1617668073,"epoch_utc":null},{"commit":"fd1ca82d86649adeb84968142665e5e4fae3fa0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 17:09:22 2021 -0700","stats":{"files_changed":5,"insertions":263,"deletions":0,"files":["README.md","docs/parsers/finger.md","jc/cli.py","jc/parsers/finger.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/finger.md","lines_changed":102},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/finger.py","lines_changed":154},{"name":"man/jc.1","lines_changed":5}]},"message":"add finger parser","epoch":1617667762,"epoch_utc":null},{"commit":"6fe175344fc61d4996a9ea20f6c5d429efb1fac7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 13:38:09 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"change examples link to github.io","epoch":1617655089,"epoch_utc":null},{"commit":"3590cda13a68616ee7eb8c85c5554ffb3fef036d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 12:07:52 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/last.md","jc/parsers/last.py"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":2}]},"message":"docs formatting","epoch":1617649672,"epoch_utc":null},{"commit":"2f1011dd85ec9b3550138ac4a4e1729fa5b4fe17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 12:03:35 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"readme update","epoch":1617649415,"epoch_utc":null},{"commit":"2b155261b3f6e4879b592f5bc052649ded5e3d69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 12:01:53 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":2}]},"message":"use new github.io links for documentation","epoch":1617649313,"epoch_utc":null},{"commit":"02f4d606d0a446c7cc74aedac6035ee79805950d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 11:49:30 2021 -0700","stats":{"files_changed":2,"insertions":69,"deletions":69,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":136},{"name":"templates/readme_template","lines_changed":2}]},"message":"add documentation links to README.md","epoch":1617648570,"epoch_utc":null},{"commit":"577811f00b7fcd0396bb0e26a2985709bd2c65a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 11:42:59 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/_config.yml"],"file_stats":[{"name":"docs/_config.yml","lines_changed":1}]},"message":"Set theme jekyll-theme-cayman","epoch":1617648179,"epoch_utc":null},{"commit":"b4098d67a3a4a617d42c1389e0a88833c77b89b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 09:42:35 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"latest","epoch":1617640955,"epoch_utc":null},{"commit":"88bd7554aeb511c19e55dc3dde9c9376efb0485b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 09:42:25 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":3,"files":["docgen.sh","updatedocs.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":2},{"name":"updatedocs.sh","lines_changed":9}]},"message":"add status messages","epoch":1617640945,"epoch_utc":null},{"commit":"b5ec16c5cafb78db093861cc30d9646207f2227a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 09:23:20 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":8,"files":["mangen.py","readmegen.py"],"file_stats":[{"name":"mangen.py","lines_changed":4},{"name":"readmegen.py","lines_changed":4}]},"message":"formatting","epoch":1617639800,"epoch_utc":null},{"commit":"68fcb60a1460a35500180ec05a8cf5ba5706ff17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 20:56:10 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["updatedocs.sh"],"file_stats":[{"name":"updatedocs.sh","lines_changed":6}]},"message":"add updatedocs script","epoch":1617594970,"epoch_utc":null},{"commit":"e4781d60ce251f6d47f19bbe042e97f8aa9e2f18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 20:52:34 2021 -0700","stats":{"files_changed":65,"insertions":188,"deletions":189,"files":["README.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":124},{"name":"jc/parsers/acpi.py","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/blkid.py","lines_changed":2},{"name":"jc/parsers/cksum.py","lines_changed":3},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/dir.py","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":2},{"name":"jc/parsers/dpkg_l.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/group.py","lines_changed":2},{"name":"jc/parsers/gshadow.py","lines_changed":2},{"name":"jc/parsers/hash.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":2},{"name":"jc/parsers/hciconfig.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/ntpq.py","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":2},{"name":"jc/parsers/ping.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/shadow.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/sysctl.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/time.py","lines_changed":2},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/parsers/wc.py","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":2},{"name":"man/jc.1","lines_changed":126}]},"message":"update parser descriptions with backticks surrounding command names","epoch":1617594754,"epoch_utc":null},{"commit":"6201fb346a66ba762651624cdaf03f08e08579a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 20:31:58 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"test backticks in description","epoch":1617593518,"epoch_utc":null},{"commit":"f88c8343f9dec5e0190df94a5109e6c749bda286","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 20:30:53 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"update iw-scan description for documentation","epoch":1617593453,"epoch_utc":null},{"commit":"25410d33168ee7142bd8f8c739ef22a62a47eb6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 20:28:54 2021 -0700","stats":{"files_changed":5,"insertions":973,"deletions":70,"files":["README.md","mangen.py","readmegen.py","{man/template => templates}/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":139},{"name":"mangen.py","lines_changed":2},{"name":"readmegen.py","lines_changed":16},{"name":"{man/template => templates}/manpage_template","lines_changed":0},{"name":"templates/readme_template","lines_changed":886}]},"message":"create readmegen.py script. move jinja2 templates to templates folder","epoch":1617593334,"epoch_utc":null},{"commit":"4ff9952938d0654376efc94ca7d8a12f6df171af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 15:57:44 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":10}]},"message":"change OSX to macOS","epoch":1617577064,"epoch_utc":null},{"commit":"5e3f63a412c5b23e7515337521ebba6273b5c11f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 15:53:23 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["man/jc.1","man/template/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":4},{"name":"man/template/manpage_template","lines_changed":8}]},"message":"add license and copyright info. use variables instead of hard-coded values","epoch":1617576803,"epoch_utc":null},{"commit":"e1f57be69efdfd7facd07df6ef0955a36c4fc18b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 15:52:50 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add license info","epoch":1617576770,"epoch_utc":null},{"commit":"2c65d5eeccdc95d2de00ac6575a9e8d8458486bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 14:40:22 2021 -0700","stats":{"files_changed":2,"insertions":32,"deletions":8,"files":["man/jc.1","man/template/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":20},{"name":"man/template/manpage_template","lines_changed":20}]},"message":"man page updates","epoch":1617572422,"epoch_utc":null},{"commit":"aa621f2f1ee043611c440683dfb63e6577d8fac4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 14:29:37 2021 -0700","stats":{"files_changed":3,"insertions":74,"deletions":9,"files":["CHANGELOG","man/jc.1","man/template/manpage_template"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"man/jc.1","lines_changed":42},{"name":"man/template/manpage_template","lines_changed":40}]},"message":"enhance man page","epoch":1617571777,"epoch_utc":null},{"commit":"ac932c6e59ad80115962d0ea91e6aaabc70c211e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 3 14:48:30 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":2},{"name":"jc/utils.py","lines_changed":2}]},"message":"update timestamp docs","epoch":1617486510,"epoch_utc":null},{"commit":"029f79da1647e53f97ca83ba92b1f36a131f3128","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 21:52:08 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"added info regarding updated dev scripts for automating doc generation","epoch":1617425528,"epoch_utc":null},{"commit":"153b2b4a7a216caae5b03f6d50d43980c13a705f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 21:50:04 2021 -0700","stats":{"files_changed":1,"insertions":11,"deletions":68,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":79}]},"message":"use jc to help automate the generation of its own docs","epoch":1617425404,"epoch_utc":null},{"commit":"709b2fe4eead06090f903718deeb06ec774fc26e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 18:08:46 2021 -0700","stats":{"files_changed":2,"insertions":16,"deletions":0,"files":["man/jc.1","man/template/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":8},{"name":"man/template/manpage_template","lines_changed":8}]},"message":"add -h and -v options","epoch":1617412126,"epoch_utc":null},{"commit":"09c1fccc584e3d0582e19b520586419085ea8d04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 18:04:55 2021 -0700","stats":{"files_changed":3,"insertions":4,"deletions":6,"files":["man/jc.1","man/template/manpage_template","mangen.py"],"file_stats":[{"name":"man/jc.1","lines_changed":2},{"name":"man/template/manpage_template","lines_changed":2},{"name":"mangen.py","lines_changed":6}]},"message":"manpage updates","epoch":1617411895,"epoch_utc":null},{"commit":"fd254d99b782888fe7646e42a61f28aa99e7cba7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 17:40:09 2021 -0700","stats":{"files_changed":3,"insertions":193,"deletions":15,"files":["man/jc.1","man/template/manpage_template","mangen.py"],"file_stats":[{"name":"man/jc.1","lines_changed":124},{"name":"man/template/manpage_template","lines_changed":64},{"name":"mangen.py","lines_changed":20}]},"message":"add manpage generator","epoch":1617410409,"epoch_utc":null},{"commit":"88bd2c172217c498431e8904e74313bc27978785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 16:31:22 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"fix typo","epoch":1617406282,"epoch_utc":null},{"commit":"d03e2f0fc1d0310cd94702f4d3c959d71b0eb622","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 15:01:21 2021 -0700","stats":{"files_changed":1,"insertions":40,"deletions":0,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":40}]},"message":"add parser schema guidelines","epoch":1617400881,"epoch_utc":null},{"commit":"3f12a393bd37062cd1412128be495235b0c7351f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 13:25:23 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"formatting","epoch":1617395123,"epoch_utc":null},{"commit":"8c21284c5038bdc2e52ff4211fac747f33f52091","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 13:23:26 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":3}]},"message":"remove redundant license info","epoch":1617395006,"epoch_utc":null},{"commit":"e7d396c2157a77500017967dfc68ffaf32507c2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 13:21:56 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"update issues link","epoch":1617394916,"epoch_utc":null},{"commit":"f238fac0eb0c8e5133c6c9abf9ca709f5df7a925","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 13:19:47 2021 -0700","stats":{"files_changed":3,"insertions":49,"deletions":0,"files":["CHANGELOG","CONTRIBUTING.md","README.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"CONTRIBUTING.md","lines_changed":46},{"name":"README.md","lines_changed":2}]},"message":"add contributing guidelines","epoch":1617394787,"epoch_utc":null},{"commit":"017228f80d9a65ad7715f31c539d9fca1615296f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:14:26 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add tested on Windows 10","epoch":1617390866,"epoch_utc":null},{"commit":"286c5fa9434e25434ee8f4825621f68464296469","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:12:43 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add dir parser","epoch":1617390763,"epoch_utc":null},{"commit":"74cfc13abe4cd09ca5470714caeaedd24c099770","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:10:05 2021 -0700","stats":{"files_changed":9,"insertions":12,"deletions":21,"files":["tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-S.json","tests/fixtures/windows-10/dir-dirs.json","tests/fixtures/windows-10/dir-files.json","tests/fixtures/windows-10/dir-mix.json","tests/fixtures/windows-10/dir-raw.json","tests/fixtures/windows-10/dir.json","tests/test_dir.py"],"file_stats":[{"name":"tests/fixtures/windows-10/dir-C.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-ODTC.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-S.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-dirs.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-files.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-mix.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-raw.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir.json","lines_changed":2},{"name":"tests/test_dir.py","lines_changed":18}]},"message":"fixup dir parser tests","epoch":1617390605,"epoch_utc":null},{"commit":"0ee4a6c377321cf6ff67ced38e9a07a8f6313943","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:01:39 2021 -0700","stats":{"files_changed":2,"insertions":207,"deletions":460,"files":["docs/parsers/dir.md","jc/parsers/dir.py"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":316},{"name":"jc/parsers/dir.py","lines_changed":351}]},"message":"update schema and add epoch naive timestamp","epoch":1617390099,"epoch_utc":null},{"commit":"283433578dfc3f132ef35727ce5bafb3e390896c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:01:23 2021 -0700","stats":{"files_changed":2,"insertions":46,"deletions":0,"files":["EXAMPLES.md","README.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":45},{"name":"README.md","lines_changed":1}]},"message":"add dir parser","epoch":1617390083,"epoch_utc":null},{"commit":"9559c85057308e8815d4654bbe0062a5858c0b2b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:01:05 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":0,"files":["jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":1},{"name":"tests/test_utils.py","lines_changed":2}]},"message":"add windows dir format","epoch":1617390065,"epoch_utc":null},{"commit":"c5c020f5654038dacba542be3784a35d7333cbcc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 11:16:03 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/parsers/dir.md"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":1}]},"message":"add /S option","epoch":1617387363,"epoch_utc":null},{"commit":"95ec79bceb3d0c4245e36b7b16cfda6e16b01197","merge":"8f8be8a 5b60c74","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 11:14:26 2021 -0700","message":"Merge pull request #107 from rasheed-rd/add-dir-parser\n\nAdd windows dir command parser","epoch":1617387266,"epoch_utc":null},{"commit":"8f8be8aa33f0b708ebd9a35c6b288572443d7181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 11:14:06 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4}]},"message":"add -1 option info","epoch":1617387246,"epoch_utc":null},{"commit":"5b60c7445a3f8bd2ae1587aa0ffaeaf093966f9a","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","date":"Fri Apr 2 13:43:06 2021 -0400","stats":{"files_changed":5,"insertions":469,"deletions":400,"files":["docs/parsers/dir.md","jc/parsers/dir.py","tests/fixtures/windows-10/dir-S.json","tests/fixtures/windows-10/dir-S.out","tests/test_dir.py"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":404},{"name":"jc/parsers/dir.py","lines_changed":405},{"name":"tests/fixtures/windows-10/dir-S.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-S.out","lines_changed":47},{"name":"tests/test_dir.py","lines_changed":12}]},"message":"Add support for /S and update documentation","epoch":1617396186,"epoch_utc":null},{"commit":"d9dbcc8b526c8de9c6d12ac580880fd606dc68cf","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","date":"Fri Apr 2 13:13:05 2021 -0400","stats":{"files_changed":15,"insertions":149,"deletions":73,"files":["docs/parsers/dir.md","jc/parsers/dir.py","tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-Q.json","tests/fixtures/windows-10/dir-Q.out","tests/fixtures/windows-10/dir-dirs.json","tests/fixtures/windows-10/dir-dirs.out","tests/fixtures/windows-10/dir-files.json","tests/fixtures/windows-10/dir-files.out","tests/fixtures/windows-10/dir-mix.json","tests/fixtures/windows-10/dir-mix.out","tests/fixtures/windows-10/dir-raw.json","tests/fixtures/windows-10/dir.json","tests/test_dir.py"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":24},{"name":"jc/parsers/dir.py","lines_changed":59},{"name":"tests/fixtures/windows-10/dir-C.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-ODTC.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-Q.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-Q.out","lines_changed":21},{"name":"tests/fixtures/windows-10/dir-dirs.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-dirs.out","lines_changed":19},{"name":"tests/fixtures/windows-10/dir-files.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-files.out","lines_changed":16},{"name":"tests/fixtures/windows-10/dir-mix.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-mix.out","lines_changed":22},{"name":"tests/fixtures/windows-10/dir-raw.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir.json","lines_changed":2},{"name":"tests/test_dir.py","lines_changed":50}]},"message":"Add parent dir to structure. Add test cases. Remove support for /Q","epoch":1617394385,"epoch_utc":null},{"commit":"79bc525970b38dea68b4859ac5dd32fc681e5994","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:42:36 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":1},{"name":"jc/parsers/dpkg_l.py","lines_changed":1}]},"message":"add codes field to schema","epoch":1617334956,"epoch_utc":null},{"commit":"9dae1091ddc6141694ebfdc5ae649582cb879ccd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:41:05 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":6},{"name":"jc/parsers/dpkg_l.py","lines_changed":4}]},"message":"typo fix","epoch":1617334865,"epoch_utc":null},{"commit":"74d3ac686a69518c1048260e37a0245ff254ff57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:37:12 2021 -0700","stats":{"files_changed":4,"insertions":61,"deletions":0,"files":["tests/fixtures/ubuntu-18.04/dpkg-l-codes.json","tests/fixtures/ubuntu-18.04/dpkg-l-columns500.json","tests/fixtures/ubuntu-18.04/dpkg-l.json","tests/test_dpkg_l.py"],"file_stats":[{"name":"tests/fixtures/ubuntu-18.04/dpkg-l-codes.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l-columns500.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l.json","lines_changed":1},{"name":"tests/test_dpkg_l.py","lines_changed":58}]},"message":"add dpkg-l tests","epoch":1617334632,"epoch_utc":null},{"commit":"cf3cc636badcf4ae6db1e5ee5e57ca0331ee5b0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:25:56 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add dpkg-l parser info","epoch":1617333956,"epoch_utc":null},{"commit":"a720441e1d34771c5a54876cb7dd63fb8c9f408e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:24:19 2021 -0700","stats":{"files_changed":1,"insertions":54,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":54}]},"message":"add dpkg -l example","epoch":1617333859,"epoch_utc":null},{"commit":"0a7ed0959df07e2f36d9ec3ca8c294cfdaf10396","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:17:21 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"jc/parsers/dpkg_l.py","lines_changed":6}]},"message":"rename err to error","epoch":1617333441,"epoch_utc":null},{"commit":"eb83c9b86dc6d1ff15efed30993071834b65a7d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:13:40 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":21,"files":["docs/utils.md"],"file_stats":[{"name":"docs/utils.md","lines_changed":29}]},"message":"replace parse_datetime_to_timestamp with timestamp class","epoch":1617333220,"epoch_utc":null},{"commit":"5c0142dd19eee14f4f1c287f0543e29824f9ae70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:12:58 2021 -0700","stats":{"files_changed":9,"insertions":1797,"deletions":2,"files":["CHANGELOG","docgen.sh","docs/parsers/dpkg_l.md","jc/cli.py","jc/parsers/dpkg_l.py","jc/parsers/universal.py","tests/fixtures/ubuntu-18.04/dpkg-l-codes.out","tests/fixtures/ubuntu-18.04/dpkg-l-columns500.out","tests/fixtures/ubuntu-18.04/dpkg-l.out"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/dpkg_l.md","lines_changed":170},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/dpkg_l.py","lines_changed":247},{"name":"jc/parsers/universal.py","lines_changed":4},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l-codes.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l-columns500.out","lines_changed":677},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l.out","lines_changed":677}]},"message":"add dpkg-l parser","epoch":1617333178,"epoch_utc":null},{"commit":"c326c8dc8356b55bba13864156adf30607205ece","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 12:52:10 2021 -0700","stats":{"files_changed":18,"insertions":194,"deletions":1,"files":["jc/parsers/time.py","tests/fixtures/osx-10.14.6/time-l.json","tests/fixtures/osx-10.14.6/time-l.out","tests/fixtures/osx-10.14.6/time-lp.json","tests/fixtures/osx-10.14.6/time-lp.out","tests/fixtures/osx-10.14.6/time-p.json","tests/fixtures/osx-10.14.6/time-p.out","tests/fixtures/osx-10.14.6/time.json","tests/fixtures/osx-10.14.6/time.out","tests/fixtures/ubuntu-18.04/time-p.json","tests/fixtures/ubuntu-18.04/time-p.out","tests/fixtures/ubuntu-18.04/time-verbose.json","tests/fixtures/ubuntu-18.04/time-verbose.out","tests/fixtures/ubuntu-18.04/time.json","tests/fixtures/ubuntu-18.04/time.out","tests/fixtures/ubuntu-18.04/time2.json","tests/fixtures/ubuntu-18.04/time2.out","tests/test_time.py"],"file_stats":[{"name":"jc/parsers/time.py","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/time-l.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/time-l.out","lines_changed":15},{"name":"tests/fixtures/osx-10.14.6/time-lp.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/time-lp.out","lines_changed":17},{"name":"tests/fixtures/osx-10.14.6/time-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/time-p.out","lines_changed":3},{"name":"tests/fixtures/osx-10.14.6/time.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/time.out","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time-p.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/time-verbose.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time-verbose.out","lines_changed":23},{"name":"tests/fixtures/ubuntu-18.04/time.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/time2.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time2.out","lines_changed":2},{"name":"tests/test_time.py","lines_changed":118}]},"message":"add TypeError to except block. add /usr/bin/time tests","epoch":1617306730,"epoch_utc":null},{"commit":"fc4082a03feb5645a1ad687908782a2584a58956","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:26:02 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":131,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":131}]},"message":"remove old parse_datetime_to_timestamp function","epoch":1617301562,"epoch_utc":null},{"commit":"c8655565ff8718f0f14d41696b81e6539529dde1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:23:24 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"use new timestamp class","epoch":1617301404,"epoch_utc":null},{"commit":"638f879f16c9e87edb60953f4fd0b1c7ad92f277","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:21:27 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":5}]},"message":"use new timestamp class","epoch":1617301287,"epoch_utc":null},{"commit":"1d221bf7e6128d57bd769c0fe8f37f7a94da8cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:19:49 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/who.py","lines_changed":3}]},"message":"use new timestamp class","epoch":1617301189,"epoch_utc":null},{"commit":"60ea71f0ef931dccf09e6eb0cb737ddad0b47f0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:18:03 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/timedatectl.py"],"file_stats":[{"name":"jc/parsers/timedatectl.py","lines_changed":3}]},"message":"use new timestamp class","epoch":1617301083,"epoch_utc":null},{"commit":"d8bdd35a3f462efcdc871426309299e8aefb0a79","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:17:53 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":5}]},"message":"use new timestamp class","epoch":1617301073,"epoch_utc":null},{"commit":"7463891c53f3670710dfa72ed1422431c274fe4a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:13:02 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":6}]},"message":"use new timestamp class","epoch":1617300782,"epoch_utc":null},{"commit":"7537aec76fa07384c4439f34c50d4e3f001c0dfa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:08:27 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":8,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":16}]},"message":"use jc.utils.timestamp instead of jc.utils.parse_datetime_to_timestamp()","epoch":1617300507,"epoch_utc":null},{"commit":"62234e39a8533362a20f106c64326ed69f430006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:08:20 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":8,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":13}]},"message":"use jc.utils.timestamp instead of jc.utils.parse_datetime_to_timestamp()","epoch":1617300500,"epoch_utc":null},{"commit":"be004b7b3fe9217160c6418907e7d8aad10e5fae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:07:37 2021 -0700","stats":{"files_changed":2,"insertions":172,"deletions":15,"files":["jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":155},{"name":"tests/test_utils.py","lines_changed":32}]},"message":"make parse_datetime_to_timestamp function a class called timestamp for easier use","epoch":1617300457,"epoch_utc":null},{"commit":"82539444b24169b2eb762485ed032fc968a81f71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 31 20:48:44 2021 -0700","stats":{"files_changed":2,"insertions":23,"deletions":21,"files":["docs/parsers/time.md","jc/parsers/time.py"],"file_stats":[{"name":"docs/parsers/time.md","lines_changed":1},{"name":"jc/parsers/time.py","lines_changed":43}]},"message":"fix indentation for int and float conversions. add real_time field to schema","epoch":1617248924,"epoch_utc":null},{"commit":"a571d3cbafd5048d1d59070e1791398ae410197f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 31 20:41:04 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/time.md","jc/parsers/time.py"],"file_stats":[{"name":"docs/parsers/time.md","lines_changed":2},{"name":"jc/parsers/time.py","lines_changed":2}]},"message":"fix typo","epoch":1617248464,"epoch_utc":null},{"commit":"a038c14c23ea27264df61a38e0301de8d1fa1b9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 31 20:39:03 2021 -0700","stats":{"files_changed":3,"insertions":8,"deletions":8,"files":["EXAMPLES.md","docs/parsers/time.md","jc/parsers/time.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":4},{"name":"jc/parsers/time.py","lines_changed":10}]},"message":"change microseconds to centiseconds","epoch":1617248343,"epoch_utc":null},{"commit":"25a85d874cd2b57a7700b0c2dca61132127732b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 31 20:21:29 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"update docs","epoch":1617247289,"epoch_utc":null},{"commit":"884c36ff42df4f580c8e2b4705def8e4c1182e39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 31 20:19:46 2021 -0700","stats":{"files_changed":8,"insertions":536,"deletions":1,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","docs/parsers/iw_scan.md","docs/parsers/time.md","jc/cli.py","jc/parsers/time.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":36},{"name":"README.md","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":163},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/time.py","lines_changed":332}]},"message":"add /usr/bin/time parser","epoch":1617247186,"epoch_utc":null},{"commit":"b98e72b8b4eda0ab5ede7725226e61634af572eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 21:33:23 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add ls parser info","epoch":1617165203,"epoch_utc":null},{"commit":"05885c0096b5ee142ecff2d17e37c446518998a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 21:29:34 2021 -0700","stats":{"files_changed":5,"insertions":931,"deletions":18,"files":["docs/parsers/ls.md","jc/parsers/ls.py","tests/fixtures/ubuntu-18.04/ls-l-iso.json","tests/fixtures/ubuntu-18.04/ls-l-iso.out","tests/test_ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":22},{"name":"jc/parsers/ls.py","lines_changed":31},{"name":"tests/fixtures/ubuntu-18.04/ls-l-iso.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-l-iso.out","lines_changed":883},{"name":"tests/test_ls.py","lines_changed":12}]},"message":"add epoch and epoch_utc timestamps","epoch":1617164974,"epoch_utc":null},{"commit":"4c9761231af897658c3a2c0abcc476aa8b43d1b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 20:41:10 2021 -0700","stats":{"files_changed":21,"insertions":118,"deletions":81,"files":["CHANGELOG","EXAMPLES.md","README.md","docs/parsers/dig.md","jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":46},{"name":"README.md","lines_changed":14},{"name":"docs/parsers/dig.md","lines_changed":50},{"name":"jc/parsers/dig.py","lines_changed":56},{"name":"tests/fixtures/centos-7.7/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig-x.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig.json","lines_changed":2},{"name":"tests/fixtures/generic/dig-answer-spaces.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-x.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig.json","lines_changed":2}]},"message":"add when_epoch and when_epoch_utc fields","epoch":1617162070,"epoch_utc":null},{"commit":"656eaa150861948091ef9d6323805c2698039bc6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 16:43:53 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1617147833,"epoch_utc":null},{"commit":"1560dcddcf82f55fffce22d1b46d372b25a9d0fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 16:43:02 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"add acpi, upower parsers and -v version option","epoch":1617147782,"epoch_utc":null},{"commit":"08d4cd4870c7acaf3a453d1400b64d77d462437b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 16:34:01 2021 -0700","stats":{"files_changed":7,"insertions":114,"deletions":43,"files":["EXAMPLES.md","docs/parsers/acpi.md","jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.json","tests/fixtures/generic/acpi-V2.json","tests/fixtures/generic/acpi-V3.json","tests/fixtures/generic/acpi-V4.json"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":34},{"name":"docs/parsers/acpi.md","lines_changed":50},{"name":"jc/parsers/acpi.py","lines_changed":65},{"name":"tests/fixtures/generic/acpi-V.json","lines_changed":2},{"name":"tests/fixtures/generic/acpi-V2.json","lines_changed":2},{"name":"tests/fixtures/generic/acpi-V3.json","lines_changed":2},{"name":"tests/fixtures/generic/acpi-V4.json","lines_changed":2}]},"message":"add time calculations to acpi parser","epoch":1617147241,"epoch_utc":null},{"commit":"9767a50cededb140575e195abf79ce49c4f53789","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 11:59:44 2021 -0700","stats":{"files_changed":12,"insertions":48,"deletions":46,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/who.md","jc/parsers/who.py","jc/utils.py","tests/fixtures/centos-7.7/who-a.json","tests/fixtures/centos-7.7/who.json","tests/fixtures/osx-10.14.6/who-a.json","tests/fixtures/osx-10.14.6/who.json","tests/fixtures/ubuntu-18.04/who-a.json","tests/fixtures/ubuntu-18.04/who.json","tests/test_utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":37},{"name":"docs/parsers/who.md","lines_changed":18},{"name":"jc/parsers/who.py","lines_changed":23},{"name":"jc/utils.py","lines_changed":1},{"name":"tests/fixtures/centos-7.7/who-a.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/who.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/who-a.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/who.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/who-a.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/who.json","lines_changed":2},{"name":"tests/test_utils.py","lines_changed":2}]},"message":"update who parser to add epoch naive timestamp","epoch":1617130784,"epoch_utc":null},{"commit":"cd86890ed1493644e391e52e33561e9a77631a51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 08:05:26 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"add website to info and use variables for version info","epoch":1617116726,"epoch_utc":null},{"commit":"ba0dd3b9ca98a042c772898302fcfe5fdc84f79a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 21:25:19 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":4}]},"message":"add parse_timedate_to_timestamp test for format 7300","epoch":1617078319,"epoch_utc":null},{"commit":"8d7fa07ffd50f38336a448eb506a76d9d4849a6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 21:20:19 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":11,"files":["tests/fixtures/centos-7.7/timedatectl.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/timedatectl.json","lines_changed":12}]},"message":"unformat json","epoch":1617078019,"epoch_utc":null},{"commit":"cade1bfe6e56b5926898b7204e911885efebd5a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 21:19:12 2021 -0700","stats":{"files_changed":2,"insertions":12,"deletions":2,"files":["tests/fixtures/centos-7.7/timedatectl.json","tests/fixtures/ubuntu-18.04/timedatectl.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/timedatectl.json","lines_changed":12},{"name":"tests/fixtures/ubuntu-18.04/timedatectl.json","lines_changed":2}]},"message":"update timedatectl tests for new epoch_utc field","epoch":1617077952,"epoch_utc":null},{"commit":"daec4ab0a7f572e872b27b043d51f68e5e06300f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 21:16:40 2021 -0700","stats":{"files_changed":5,"insertions":20,"deletions":4,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/timedatectl.md","jc/parsers/timedatectl.py","jc/utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"EXAMPLES.md","lines_changed":3},{"name":"docs/parsers/timedatectl.md","lines_changed":6},{"name":"jc/parsers/timedatectl.py","lines_changed":11},{"name":"jc/utils.py","lines_changed":1}]},"message":"add epoch_utc field to timedatectl parser","epoch":1617077800,"epoch_utc":null},{"commit":"3c96bc319615c824a06c388e9e3c1d68a9bf4084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:57:58 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":2}]},"message":"version bump","epoch":1617076678,"epoch_utc":null},{"commit":"7f7d8d4bd6f37015b11bac60a7bd99e8d3eca108","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:36:10 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":0,"files":["docs/parsers/stat.md","jc/parsers/stat.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":4}]},"message":"update stat docs","epoch":1617075370,"epoch_utc":null},{"commit":"47263661a41987f334fd484e866e0aa8859cde5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:30:20 2021 -0700","stats":{"files_changed":1,"insertions":18,"deletions":2,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":20}]},"message":"update stat example","epoch":1617075020,"epoch_utc":null},{"commit":"4c42a086d206919dfe4f1c0801fe4fb1027cb1cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:25:54 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":6,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":7}]},"message":"clean up debug code","epoch":1617074754,"epoch_utc":null},{"commit":"5d2541a5c4bc93f3943a491c76df7f8d4e2cf44b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:22:35 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":5}]},"message":"remove auto c locale and use a manual format rule for windows and linux compatibility","epoch":1617074555,"epoch_utc":null},{"commit":"d91d170b49bfc88c0b2fb54475705c038172f1c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:16:05 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"try manual c locale format for windows","epoch":1617074165,"epoch_utc":null},{"commit":"6d1f4584a9ccd0f0f7ed4fdf408576a9e7f5046b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:05:42 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":4}]},"message":"try manually setting time format for windows compatibility","epoch":1617073542,"epoch_utc":null},{"commit":"1d76d96bcf4185cffb7066bec637913099399db5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 16:58:57 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":4}]},"message":"debug windows issue","epoch":1617062337,"epoch_utc":null},{"commit":"e8847c998c91131acf5ee0f6485e9976c0fce3ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 16:35:26 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["tests/fixtures/centos-7.7/stat.json","tests/fixtures/freebsd12/stat.json","tests/fixtures/osx-10.14.6/stat.json","tests/fixtures/ubuntu-18.04/stat.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/stat.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/stat.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/stat.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/stat.json","lines_changed":2}]},"message":"update stat tests","epoch":1617060926,"epoch_utc":null},{"commit":"da88e49bae2f3fecff623f52c20bf994b653583e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 15:36:16 2021 -0700","stats":{"files_changed":2,"insertions":69,"deletions":29,"files":["docs/parsers/stat.md","jc/parsers/stat.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":76},{"name":"jc/parsers/stat.py","lines_changed":22}]},"message":"add new examples","epoch":1617057376,"epoch_utc":null},{"commit":"65c3a12e5422782df40489c3c431677f5657dbf5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 15:32:04 2021 -0700","stats":{"files_changed":2,"insertions":35,"deletions":24,"files":["jc/parsers/stat.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":58},{"name":"jc/utils.py","lines_changed":1}]},"message":"simplify None data scenario","epoch":1617057124,"epoch_utc":null},{"commit":"d8d600cc36bde4e6216b935f87a765599e896714","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 14:51:48 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add reference to -h for help","epoch":1617054708,"epoch_utc":null},{"commit":"507999b117b024fed1ccf067bd5dc411dbeb268c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 14:45:13 2021 -0700","stats":{"files_changed":3,"insertions":34,"deletions":19,"files":["docs/utils.md","jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":32},{"name":"jc/utils.py","lines_changed":13},{"name":"tests/test_utils.py","lines_changed":8}]},"message":"add stat command timestamp detection","epoch":1617054313,"epoch_utc":null},{"commit":"8ad164eb340e135eeeb10b721172916182f37e30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 12:33:54 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":6}]},"message":"fix tests for compact output","epoch":1617046434,"epoch_utc":null},{"commit":"a507df140b245b83b1c46e8462b44e1145c42f2a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 12:25:58 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add compact json info","epoch":1617045958,"epoch_utc":null},{"commit":"8912a99986a977ee6ca7bbe2368f5033644577b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 12:25:48 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"make default json output more compact","epoch":1617045948,"epoch_utc":null},{"commit":"1953f9882890cd0e8c515d43ce28c96f918b0ab4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 11:44:43 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"add version info. add json now supports unicode output","epoch":1617043483,"epoch_utc":null},{"commit":"7515218ddd2cdcfcebd67850140e842f2f121226","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 11:42:01 2021 -0700","stats":{"files_changed":2,"insertions":10,"deletions":14,"files":["jc/cli.py","jc/utils.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8},{"name":"jc/utils.py","lines_changed":16}]},"message":"use jc.utils for all warning and error messages. simply error and warning formatting.","epoch":1617043321,"epoch_utc":null},{"commit":"36c11201366cefedee4244fb71a4a9cc6507e6ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 10:59:56 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"formatting","epoch":1617040796,"epoch_utc":null},{"commit":"8fa0fe64d8418093c7f28cdc70a7f409956aeb04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 10:52:02 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":10}]},"message":"add -v to helptext. minor formatting","epoch":1617040322,"epoch_utc":null},{"commit":"c1a8201b140c65579ff9f8427322b67653bf3006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 10:24:58 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":4}]},"message":"add copyright","epoch":1617038698,"epoch_utc":null},{"commit":"398bbac48c8a716b1872843d671aa6ceaeba6a78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 10:23:52 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"simplify return value for parse_datetime_to_timestamp()","epoch":1617038632,"epoch_utc":null},{"commit":"ea71a42bbdd9b09a457727cfe763054625f7901a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 09:43:19 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"formatting","epoch":1617036199,"epoch_utc":null},{"commit":"1c16d25b17a7282a62a5ebd9755df5569c57435f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 09:41:15 2021 -0700","stats":{"files_changed":2,"insertions":30,"deletions":9,"files":["README.md","jc/cli.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"jc/cli.py","lines_changed":35}]},"message":"add version option (-v) and copyright information. add 'ensure_ascii=False' to json dumps to properly show UTF-8 copyright character","epoch":1617036075,"epoch_utc":null},{"commit":"9d12ded889f656656267cbf7a91d71267201f736","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 16:32:17 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"help description change","epoch":1616801537,"epoch_utc":null},{"commit":"5312701515ecb3a10598bb9dcf2f73b7eae71b93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 16:29:10 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add - make all external python requirements optional","epoch":1616801350,"epoch_utc":null},{"commit":"808c7bc0a94ecfd160ee2b257e5feec347829a5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 16:14:35 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/xml.py"],"file_stats":[{"name":"jc/parsers/xml.py","lines_changed":10}]},"message":"make xmltodict library optional","epoch":1616800475,"epoch_utc":null},{"commit":"4d394015f458f284d052ce2c1a0c8492916c5b3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 16:10:28 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":10}]},"message":"make ruamel.yaml library optional","epoch":1616800228,"epoch_utc":null},{"commit":"3638298af8ebc01d54aa3ab5668d0adedca957e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 15:54:45 2021 -0700","stats":{"files_changed":1,"insertions":53,"deletions":44,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":97}]},"message":"make pygments library optional","epoch":1616799285,"epoch_utc":null},{"commit":"5f00973e400629bd68c0ab60ed9005410278f855","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 15:38:57 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":2}]},"message":"remove parenthesis to normalize text for naive timezone detection","epoch":1616798337,"epoch_utc":null},{"commit":"0f6e2c14fcb69f664c29083ec5207326f842dfdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 14:57:19 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":9}]},"message":"simplify timestamp failure logic","epoch":1616795839,"epoch_utc":null},{"commit":"51813da61994226ba40478825d47f80c23413349","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 14:56:45 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":4,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":13}]},"message":"add offset timezones. fix timestamp logic on conversion failure","epoch":1616795805,"epoch_utc":null},{"commit":"e7751322ea195cac7f1921ba8e0364c442065d20","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 14:55:47 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":10}]},"message":"formatting","epoch":1616795747,"epoch_utc":null},{"commit":"26ef29843784ade3d55410be13300dd6f4c06890","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 14:55:16 2021 -0700","stats":{"files_changed":1,"insertions":10,"deletions":6,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":16}]},"message":"change return to always include the entire object but all keys may be None if conversion fails","epoch":1616795716,"epoch_utc":null},{"commit":"badaf8ce73d7deb0ec2be244e27b4bf8cddbea19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 14:00:33 2021 -0700","stats":{"files_changed":1,"insertions":14,"deletions":14,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":28}]},"message":"comment formatting","epoch":1616792433,"epoch_utc":null},{"commit":"b123a622039f3cc32643a3bfc0766154d660f8bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 13:11:34 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":9}]},"message":"move locale change formats to the end of the list","epoch":1616789494,"epoch_utc":null},{"commit":"cfd77e42522aa2ebeada9f45ac99bd1d3414f782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 13:01:12 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":1}]},"message":"reset locale to None on exception","epoch":1616788872,"epoch_utc":null},{"commit":"38f814072eac5370059f1b4203316eee41cf535b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 11:55:12 2021 -0700","stats":{"files_changed":1,"insertions":26,"deletions":8,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":34}]},"message":"better normalization of datetime string. better UTC detection. More formats supported with detected locale.","epoch":1616784912,"epoch_utc":null},{"commit":"a0db7754e384a0c95f2099bf894f3a22bd33c002","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 09:32:49 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add nixos install info","epoch":1616776369,"epoch_utc":null},{"commit":"f07620afc7dc0d0d605eb483ef36c5979b33cdfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 09:28:03 2021 -0700","stats":{"files_changed":3,"insertions":18,"deletions":7,"files":["README.md","jc/__init__.py","jc/cli.py"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"jc/__init__.py","lines_changed":3},{"name":"jc/cli.py","lines_changed":21}]},"message":"move version to jc.__init__.py\nadd -h option for help instead of always showing on error\nuse jc.utils.error_message for the following errors: missing/incorrect arguments, parser not found, missing piped data","epoch":1616776083,"epoch_utc":null},{"commit":"c1b0d27752726989c6051f683a1194941bee598c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 20:45:38 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":10,"files":["runtests.sh"],"file_stats":[{"name":"runtests.sh","lines_changed":10}]},"message":"remove old commented commands","epoch":1616730338,"epoch_utc":null},{"commit":"430a5108aa265d4df0e4584eade54759da864c61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 20:42:58 2021 -0700","stats":{"files_changed":3,"insertions":19,"deletions":60,"files":["runtests.sh","tests/test_last.py","tests/test_last2.py"],"file_stats":[{"name":"runtests.sh","lines_changed":16},{"name":"tests/test_last.py","lines_changed":23},{"name":"tests/test_last2.py","lines_changed":40}]},"message":"move all tests to github actions","epoch":1616730178,"epoch_utc":null},{"commit":"111ce92fc9c33b82c7d1a1664dda046ea5993f6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 20:37:35 2021 -0700","stats":{"files_changed":4,"insertions":0,"deletions":1,"files":["tests/{localtest_date.py => test_date.py}","tests/{localtest_last.py => test_last2.py}","tests/{localtest_upower.py => test_upower.py}","tests/test_utils.py"],"file_stats":[{"name":"tests/{localtest_date.py => test_date.py}","lines_changed":0},{"name":"tests/{localtest_last.py => test_last2.py}","lines_changed":0},{"name":"tests/{localtest_upower.py => test_upower.py}","lines_changed":0},{"name":"tests/test_utils.py","lines_changed":1}]},"message":"attempt all tests in github actions with timezone correction","epoch":1616729855,"epoch_utc":null},{"commit":"c851e8a58d98b2a4907cf1e7cf7c7d8d8dc04dc6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 20:33:25 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":1}]},"message":"force github action","epoch":1616729605,"epoch_utc":null},{"commit":"39f4bcd9b41450068903ea2843508586eccdf709","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 20:30:13 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"Change Windows timezone\n\nuse \"Pacific Standard Time\"","epoch":1616729413,"epoch_utc":null},{"commit":"4a610c4c81493788b8351e8c74aabe819c981c02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:57:32 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":1}]},"message":"force github action","epoch":1616727452,"epoch_utc":null},{"commit":"89ee11945d4e2db107a33ef0d61e0c6015ac8ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:55:21 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"Change timezone provider\n\nuses: szenius/set-timezone@v1.0","epoch":1616727321,"epoch_utc":null},{"commit":"dadb09b74a69d1852f8433e0e32ccdd67bd91181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:52:43 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":1}]},"message":"force github action","epoch":1616727163,"epoch_utc":null},{"commit":"1b1f638b97dc5e6f2767183eb363b79ae3c9b3c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:49:03 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":8}]},"message":"Change timezone change provider\n\nchange to actions/set-timezone-action","epoch":1616726943,"epoch_utc":null},{"commit":"794fc4ed44d1565514303090403d68ba5d639cb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:43:16 2021 -0700","stats":{"files_changed":2,"insertions":36,"deletions":8,"files":["jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":16},{"name":"tests/test_utils.py","lines_changed":28}]},"message":"add parse_datetime_to_timestamp() tests","epoch":1616726596,"epoch_utc":null},{"commit":"72f735bf9211d7beddcf58819fe465722f5d7c5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:42:02 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":4}]},"message":"Set Timezone to America/Los_Angeles\n\nUsing zcong1993/setup-timezone","epoch":1616726522,"epoch_utc":null},{"commit":"912877f25ad562ed4cafe7b2d7446bd48b477ea2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 15:34:54 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"additional timezone info","epoch":1616711694,"epoch_utc":null},{"commit":"2772c5ae436ea437d833003372d53a3d3f955ea0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 15:10:07 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"formatting","epoch":1616710207,"epoch_utc":null},{"commit":"a7ad24d2cb61d84cf2846f8fa43af31f0597043e","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","date":"Thu Mar 25 16:45:30 2021 -0400","stats":{"files_changed":13,"insertions":772,"deletions":0,"files":["docgen.sh","docs/parsers/dir.md","jc/cli.py","jc/parsers/dir.py","tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-C.out","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-ODTC.out","tests/fixtures/windows-10/dir-Q.json","tests/fixtures/windows-10/dir-Q.out","tests/fixtures/windows-10/dir.json","tests/fixtures/windows-10/dir.out","tests/test_dir.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/dir.md","lines_changed":286},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/dir.py","lines_changed":332},{"name":"tests/fixtures/windows-10/dir-C.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-C.out","lines_changed":21},{"name":"tests/fixtures/windows-10/dir-ODTC.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-ODTC.out","lines_changed":21},{"name":"tests/fixtures/windows-10/dir-Q.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-Q.out","lines_changed":21},{"name":"tests/fixtures/windows-10/dir.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir.out","lines_changed":21},{"name":"tests/test_dir.py","lines_changed":64}]},"message":"Add dir parser\n\nAdd usage commands\n\nFix example options\n\nupdate dir.md","epoch":1616715930,"epoch_utc":null},{"commit":"a364a6a9faeb6aa290b790f3dec74e92b8670534","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 15:08:23 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"add note regarding calculated timestamps","epoch":1616710103,"epoch_utc":null},{"commit":"7b2dc86a8d974e7984fe2540f56a66c2b9386acd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 12:07:36 2021 -0700","stats":{"files_changed":1,"insertions":23,"deletions":19,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":42}]},"message":"update last example with new timestamp fields","epoch":1616699256,"epoch_utc":null},{"commit":"ad645636d07d0423253f19068a22b2a28251b05f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 11:43:30 2021 -0700","stats":{"files_changed":5,"insertions":86,"deletions":50,"files":["CHANGELOG","EXAMPLES.md","README.md","docs/parsers/uptime.md","jc/parsers/uptime.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":9},{"name":"EXAMPLES.md","lines_changed":19},{"name":"README.md","lines_changed":19},{"name":"docs/parsers/uptime.md","lines_changed":50},{"name":"jc/parsers/uptime.py","lines_changed":39}]},"message":"update uptime docs","epoch":1616697810,"epoch_utc":null},{"commit":"2f2f297b29fbe3172647a81db084b3564a441d40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 11:35:21 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["tests/fixtures/centos-7.7/uptime.json","tests/fixtures/osx-10.11.6/uptime.json","tests/fixtures/osx-10.14.6/uptime.json","tests/fixtures/ubuntu-18.04/uptime.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/uptime.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/uptime.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/uptime.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/uptime.json","lines_changed":2}]},"message":"update uptime fixtures with new fields","epoch":1616697321,"epoch_utc":null},{"commit":"099ae3fde03f8157298f6b412bdddb8bd56da09a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 11:17:44 2021 -0700","stats":{"files_changed":1,"insertions":26,"deletions":22,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":48}]},"message":"fix issue when there is no data","epoch":1616696264,"epoch_utc":null},{"commit":"e9febe98ac5ec0e03791c5b6794446a2c3312fb1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 11:17:01 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["runtests.sh"],"file_stats":[{"name":"runtests.sh","lines_changed":2}]},"message":"add localtest partition lines for readability","epoch":1616696221,"epoch_utc":null},{"commit":"5fbd07cccf9fb697b996dcc3949eef5b1c09e655","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 10:31:12 2021 -0700","stats":{"files_changed":1,"insertions":59,"deletions":26,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":85}]},"message":"rewrite of uptime parser including new fields","epoch":1616693472,"epoch_utc":null},{"commit":"5fed4698c2c1f1b7e05c5b4c51639f818e049b53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:57:04 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":6,"files":["docs/parsers/last.md","jc/parsers/last.py"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":4},{"name":"jc/parsers/last.py","lines_changed":7}]},"message":"update docs and version number","epoch":1616648224,"epoch_utc":null},{"commit":"ed7eb0983a4dfcc1d66a2957be3e10b2203d909e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:51:43 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":8}]},"message":"use parse_datetime_to_timestamp function instead of custom format string","epoch":1616647903,"epoch_utc":null},{"commit":"90c7e18e5fc5ea9fcf6157cc2656f47193d78411","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:50:32 2021 -0700","stats":{"files_changed":1,"insertions":16,"deletions":11,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":27}]},"message":"update date example","epoch":1616647832,"epoch_utc":null},{"commit":"953ab5c3bd0c8b6eef29b717edaf1aa2380c2b93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:29:30 2021 -0700","stats":{"files_changed":2,"insertions":1,"deletions":0,"files":["runtests.sh","tests/{test_upower.py => localtest_upower.py}"],"file_stats":[{"name":"runtests.sh","lines_changed":1},{"name":"tests/{test_upower.py => localtest_upower.py}","lines_changed":0}]},"message":"make upower tests local only","epoch":1616646570,"epoch_utc":null},{"commit":"699c97d8a07f7575454746159ac4d19981cd1a5c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:24:47 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add last parser info","epoch":1616646287,"epoch_utc":null},{"commit":"e4ca0de92a689ce93b91d86106a5da590226855a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:24:25 2021 -0700","stats":{"files_changed":8,"insertions":100,"deletions":0,"files":["tests/fixtures/generic/upower-i-c-locale.json","tests/fixtures/generic/upower-i-non-utc.json","tests/fixtures/generic/upower-i-utc.json",".../{upower-i-utc.out2 => upower-i-utc.out}","tests/fixtures/ubuntu-18.04/upower-d-clocale.json","tests/fixtures/ubuntu-18.04/upower-d.json","tests/fixtures/ubuntu-18.04/upower-i.json","tests/test_upower.py"],"file_stats":[{"name":"tests/fixtures/generic/upower-i-c-locale.json","lines_changed":1},{"name":"tests/fixtures/generic/upower-i-non-utc.json","lines_changed":1},{"name":"tests/fixtures/generic/upower-i-utc.json","lines_changed":1},{"name":".../{upower-i-utc.out2 => upower-i-utc.out}","lines_changed":0},{"name":"tests/fixtures/ubuntu-18.04/upower-d-clocale.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/upower-d.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/upower-i.json","lines_changed":1},{"name":"tests/test_upower.py","lines_changed":94}]},"message":"add upower tests","epoch":1616646265,"epoch_utc":null},{"commit":"04745a36b84cc79e56bde2a0e92a4ee9ab4a1538","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 20:21:06 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":5,"files":["CHANGELOG","jc/utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":12},{"name":"jc/utils.py","lines_changed":1}]},"message":"doc update","epoch":1616642466,"epoch_utc":null},{"commit":"5936940532b8b753e67c9f5cd9287f34cc84ae9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 20:20:53 2021 -0700","stats":{"files_changed":7,"insertions":136,"deletions":186,"files":["docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date-after-midnight.json","tests/fixtures/generic/date-before-midnight.json","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/fixtures/ubuntu-20.04/date2.json"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":74},{"name":"jc/parsers/date.py","lines_changed":238},{"name":"tests/fixtures/generic/date-after-midnight.json","lines_changed":2},{"name":"tests/fixtures/generic/date-before-midnight.json","lines_changed":2},{"name":"tests/fixtures/generic/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date2.json","lines_changed":2}]},"message":"rewrite of date parser using datetime library","epoch":1616642453,"epoch_utc":null},{"commit":"b3eb064b6753d6e894884e1c16054630c2396fe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 17:13:01 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":4}]},"message":"clarify format definition comments","epoch":1616631181,"epoch_utc":null},{"commit":"e4b41057e302074ac2a81ad8c36b6f95cd6b7db2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 17:02:17 2021 -0700","stats":{"files_changed":3,"insertions":24,"deletions":0,"files":[".../{upower-i.out => upower-i-c-locale.out}","tests/fixtures/generic/upower-i-non-utc.out",".../generic/{upower-i2.out => upower-i-utc.out2}"],"file_stats":[{"name":".../{upower-i.out => upower-i-c-locale.out}","lines_changed":0},{"name":"tests/fixtures/generic/upower-i-non-utc.out","lines_changed":24},{"name":".../generic/{upower-i2.out => upower-i-utc.out2}","lines_changed":0}]},"message":"update upower fixture names","epoch":1616630537,"epoch_utc":null},{"commit":"1d41c46cc762ab0c78b819e56db7df39f1111d5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 17:01:56 2021 -0700","stats":{"files_changed":1,"insertions":34,"deletions":5,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":39}]},"message":"normalize datetime string to remove all timezones except UTC","epoch":1616630516,"epoch_utc":null},{"commit":"a5c444587b3f0874fcc2833dc4e759c2dc1c7834","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 15:13:10 2021 -0700","stats":{"files_changed":5,"insertions":28,"deletions":0,"files":["tests/fixtures/generic/date-after-midnight.json","tests/fixtures/generic/date-after-midnight.out","tests/fixtures/generic/date-before-midnight.json","tests/fixtures/generic/date-before-midnight.out","tests/localtest_date.py"],"file_stats":[{"name":"tests/fixtures/generic/date-after-midnight.json","lines_changed":1},{"name":"tests/fixtures/generic/date-after-midnight.out","lines_changed":1},{"name":"tests/fixtures/generic/date-before-midnight.json","lines_changed":1},{"name":"tests/fixtures/generic/date-before-midnight.out","lines_changed":1},{"name":"tests/localtest_date.py","lines_changed":24}]},"message":"add before and after midnight date tests","epoch":1616623990,"epoch_utc":null},{"commit":"a56f471be980be16e73d3a91e2b12aad26c6d38c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 15:05:22 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/fixtures/generic/upower-i2.out"],"file_stats":[{"name":"tests/fixtures/generic/upower-i2.out","lines_changed":2}]},"message":"update fixture to use UTC for better testing","epoch":1616623522,"epoch_utc":null},{"commit":"6a6b26ed8d97014c2a5c7d91a4cd9b23f49530fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 15:04:39 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":5}]},"message":"fix 12 to 24 hour conversion for midnight cases","epoch":1616623479,"epoch_utc":null},{"commit":"f62446c152d89f2d37b22ffe9d9de5b5c9fa7049","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 15:04:09 2021 -0700","stats":{"files_changed":1,"insertions":11,"deletions":10,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":21}]},"message":"rename variables. add another european time format","epoch":1616623449,"epoch_utc":null},{"commit":"56011f1f172344cab2a8e869e7a6df6e45c45874","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 14:14:22 2021 -0700","stats":{"files_changed":3,"insertions":73,"deletions":6,"files":["EXAMPLES.md","docs/parsers/upower.md","jc/parsers/upower.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":63},{"name":"docs/parsers/upower.md","lines_changed":8},{"name":"jc/parsers/upower.py","lines_changed":8}]},"message":"updated upower examples","epoch":1616620462,"epoch_utc":null},{"commit":"6d44091c80318fde6c09cd850e6dc5afde7fe799","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 14:01:06 2021 -0700","stats":{"files_changed":1,"insertions":13,"deletions":53,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":66}]},"message":"refactor parse_datetime_to_timestamp()","epoch":1616619666,"epoch_utc":null},{"commit":"440c458eb42925dffe2d7b026279468fa2fa1bb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 12:57:19 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"no need for ternary clause","epoch":1616615839,"epoch_utc":null},{"commit":"798250af6116441385339806c8f26bc9720ad302","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 12:49:53 2021 -0700","stats":{"files_changed":2,"insertions":18,"deletions":24,"files":["docs/parsers/upower.md","jc/parsers/upower.py"],"file_stats":[{"name":"docs/parsers/upower.md","lines_changed":7},{"name":"jc/parsers/upower.py","lines_changed":35}]},"message":"use jc.utils.parse_datetime_to_timestamp() function for timestamp creation","epoch":1616615393,"epoch_utc":null},{"commit":"c762de29c6491790908451aa20f6aa12fdfa9722","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 12:47:57 2021 -0700","stats":{"files_changed":2,"insertions":32,"deletions":2,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":30},{"name":"jc/utils.py","lines_changed":4}]},"message":"doc updates","epoch":1616615277,"epoch_utc":null},{"commit":"0701e65e97165efd40ab2ae5087897de3588ea32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 12:36:54 2021 -0700","stats":{"files_changed":1,"insertions":106,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":106}]},"message":"add parse_datetime_to_timestamp() function","epoch":1616614614,"epoch_utc":null},{"commit":"209d54e8b5be6476d896cee1a5274bd2b46219e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 07:39:11 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":5},{"name":"jc/parsers/date.py","lines_changed":5}]},"message":"add hour_24 to schema docs","epoch":1616596751,"epoch_utc":null},{"commit":"2b38462de7d2fa61dd5d2a184e853279f1a9c84b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 23 14:59:03 2021 -0700","stats":{"files_changed":3,"insertions":33,"deletions":27,"files":["EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":20},{"name":"docs/parsers/date.md","lines_changed":20},{"name":"jc/parsers/date.py","lines_changed":20}]},"message":"update examples","epoch":1616536743,"epoch_utc":null},{"commit":"1e8e5533162cb01053ee25e9dbc709a429e58070","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 23 14:47:44 2021 -0700","stats":{"files_changed":6,"insertions":31,"deletions":14,"files":["CHANGELOG","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/fixtures/ubuntu-20.04/date2.json","tests/localtest_date.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/date.py","lines_changed":21},{"name":"tests/fixtures/generic/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date2.json","lines_changed":1},{"name":"tests/localtest_date.py","lines_changed":16}]},"message":"add hour_24 field","epoch":1616536064,"epoch_utc":null},{"commit":"ab42e6bb15026d6c46e15197c62bc3e8ef95c80d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 23 14:10:42 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":1},{"name":"jc/parsers/date.py","lines_changed":1}]},"message":"formatting","epoch":1616533842,"epoch_utc":null},{"commit":"680288454090f3c48c7f0580cdcb919c0b5a883e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 23 14:04:36 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":4}]},"message":"ensure period is always uppercase in dict value. update period documentation","epoch":1616533476,"epoch_utc":null},{"commit":"7cb8577b9655f258f2910e7e7bcf3266d4cbece0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 23 13:55:23 2021 -0700","stats":{"files_changed":3,"insertions":70,"deletions":48,"files":["docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/ubuntu-20.04/date2.out"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":36},{"name":"jc/parsers/date.py","lines_changed":81},{"name":"tests/fixtures/ubuntu-20.04/date2.out","lines_changed":1}]},"message":"correct epoch_utc calculation. Fix for 12 hour vs. 24 hour representation","epoch":1616532923,"epoch_utc":null},{"commit":"55810ccd1f17ef6a4b1cb72fc21f6cf990ef8bb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 22:10:35 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":1}]},"message":"set epoch_dt conversion again if not C locale","epoch":1616476235,"epoch_utc":null},{"commit":"f9921720cd0b9b0d76d66e6eb5bfe43481f5f52b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 22:01:07 2021 -0700","stats":{"files_changed":3,"insertions":4,"deletions":94,"files":["runtests.sh","tests/test_date.py","tests/test_last2.py"],"file_stats":[{"name":"runtests.sh","lines_changed":8},{"name":"tests/test_date.py","lines_changed":48},{"name":"tests/test_last2.py","lines_changed":42}]},"message":"revert to local testing for naive datetime objects","epoch":1616475667,"epoch_utc":null},{"commit":"cda1ebd271aa8fd1b716054a2149f876d8087230","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 21:53:50 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["tests/test_date.py","tests/test_last2.py"],"file_stats":[{"name":"tests/test_date.py","lines_changed":2},{"name":"tests/test_last2.py","lines_changed":2}]},"message":"try tzset()","epoch":1616475230,"epoch_utc":null},{"commit":"6901e4a23aad0b58cbbfac86c61917115d115dfe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 21:49:26 2021 -0700","stats":{"files_changed":3,"insertions":89,"deletions":3,"files":["runtests.sh","tests/test_date.py","tests/test_last2.py"],"file_stats":[{"name":"runtests.sh","lines_changed":6},{"name":"tests/test_date.py","lines_changed":46},{"name":"tests/test_last2.py","lines_changed":40}]},"message":"try setting timezone env variable before tests to ensure it is the same on all test systems","epoch":1616474966,"epoch_utc":null},{"commit":"6bc21d3c735edc7897e49afd2a5ea9e3aa56d7fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 21:05:39 2021 -0700","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["runtests.sh","tests/{test_date.py => localtest_date.py}","tests/localtest_last.py"],"file_stats":[{"name":"runtests.sh","lines_changed":1},{"name":"tests/{test_date.py => localtest_date.py}","lines_changed":0},{"name":"tests/localtest_last.py","lines_changed":1}]},"message":"fix date parser tests - local tests only since timezones may not match on github actions VMs","epoch":1616472339,"epoch_utc":null},{"commit":"1ef231e26a2898d2a01f341fb92014df92703f72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:57:36 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"add date parser updates","epoch":1616471856,"epoch_utc":null},{"commit":"3cd43f0f985a3b8a4e74bf5632bd8dac92d751c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:57:16 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/upower.md","jc/parsers/upower.py"],"file_stats":[{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":2}]},"message":"formatting","epoch":1616471836,"epoch_utc":null},{"commit":"156501996688e62dd61a8456206218582a6cbe1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:56:57 2021 -0700","stats":{"files_changed":5,"insertions":85,"deletions":63,"files":["EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":21},{"name":"docs/parsers/date.md","lines_changed":41},{"name":"jc/parsers/date.py","lines_changed":82},{"name":"tests/fixtures/generic/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date.json","lines_changed":2}]},"message":"fix weekday numbering to be ISO 8601 compliant. Add naive calculated epoch timestamp field","epoch":1616471817,"epoch_utc":null},{"commit":"0a4de2d3a1c235d1ac2d6e59346e77761fe51885","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:22:35 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":2,"files":["docs/parsers/last.md","docs/parsers/upower.md"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":5}]},"message":"add naive datetime calculation info to docs","epoch":1616469755,"epoch_utc":null},{"commit":"a058f6c174e31f5e6040883bb544b83abd88c749","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:21:46 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":2}]},"message":"added naive epoch calculation info to docs","epoch":1616469706,"epoch_utc":null},{"commit":"d8e5d03b01a87704424f5259cf6bd977274fd6ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:21:12 2021 -0700","stats":{"files_changed":1,"insertions":20,"deletions":33,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":53}]},"message":"naive updated_epoch timestamp calculation added","epoch":1616469672,"epoch_utc":null},{"commit":"9dc62eff2eaaafec89c5b8797d8ca8e4c77a07d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 21 15:43:37 2021 -0700","stats":{"files_changed":1,"insertions":34,"deletions":21,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":55}]},"message":"remove epoch conversions","epoch":1616366617,"epoch_utc":null},{"commit":"d4fea17c57a97d6914624b06208b9439bf2eb05f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 21 14:03:36 2021 -0700","stats":{"files_changed":3,"insertions":13,"deletions":6,"files":["docgen.sh","docs/parsers/upower.md","jc/parsers/upower.py"],"file_stats":[{"name":"docgen.sh","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":15}]},"message":"use UTC when calculating epoch timestamp. reset time locale to default after changing","epoch":1616360616,"epoch_utc":null},{"commit":"3dd7a5b77ea708047bc12be9f2caddd9078723f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 19 11:00:50 2021 -0700","stats":{"files_changed":2,"insertions":230,"deletions":0,"files":["docgen.sh","docs/parsers/upower.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/upower.md","lines_changed":229}]},"message":"add upower docs","epoch":1616176850,"epoch_utc":null},{"commit":"d77c90a3ba2036b216f4a612876ace988eafd217","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 19 10:43:20 2021 -0700","stats":{"files_changed":1,"insertions":114,"deletions":6,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":120}]},"message":"fix quoted values in detail level. Add examples","epoch":1616175800,"epoch_utc":null},{"commit":"01f0c20df09fd4aa12bd108928b97376b51ef31a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 18 16:59:46 2021 -0700","stats":{"files_changed":1,"insertions":27,"deletions":0,"files":["tests/fixtures/ubuntu-18.04/upower-d-clocale.out"],"file_stats":[{"name":"tests/fixtures/ubuntu-18.04/upower-d-clocale.out","lines_changed":27}]},"message":"add sample using C locale timestamp","epoch":1616111986,"epoch_utc":null},{"commit":"aafbe576b3b754de91591d9ec2dae9e9f827dee4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 18 16:59:19 2021 -0700","stats":{"files_changed":1,"insertions":137,"deletions":36,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":173}]},"message":"working parser and processor","epoch":1616111959,"epoch_utc":null},{"commit":"bd68ad40345fb1f69be0e0f87dc67134f826cd06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 14:31:51 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":4}]},"message":"don't modify detail_type value since it is no longer a key","epoch":1616016711,"epoch_utc":null},{"commit":"bfee017c138bb30ec6af836685013b7124028974","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 14:21:19 2021 -0700","stats":{"files_changed":1,"insertions":61,"deletions":20,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":81}]},"message":"made the schema more explicit by hardcoding more items. still working on the schema","epoch":1616016079,"epoch_utc":null},{"commit":"61f532cfd0b7fbf14a58a0fd638bcbfb03fbde72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 13:30:47 2021 -0700","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":12}]},"message":"working history list","epoch":1616013047,"epoch_utc":null},{"commit":"58dbbb75b607d0b29be185c3b8c3f0d8af21ecad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 13:10:52 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":21,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":30}]},"message":"simplified logic","epoch":1616011852,"epoch_utc":null},{"commit":"8d88b91fcf5060d7d54f687efec3e3a606bab767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 12:49:48 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":17}]},"message":"move if statements and generalize the history detail detection","epoch":1616010588,"epoch_utc":null},{"commit":"ad39fc60299089f56f37baac71820e50cbe87ed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 11:26:06 2021 -0700","stats":{"files_changed":6,"insertions":268,"deletions":0,"files":["jc/cli.py","jc/parsers/upower.py","tests/fixtures/generic/upower-i.out","tests/fixtures/generic/upower-i2.out","tests/fixtures/ubuntu-18.04/upower-d.out","tests/fixtures/ubuntu-18.04/upower-i.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/upower.py","lines_changed":173},{"name":"tests/fixtures/generic/upower-i.out","lines_changed":32},{"name":"tests/fixtures/generic/upower-i2.out","lines_changed":24},{"name":"tests/fixtures/ubuntu-18.04/upower-d.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-18.04/upower-i.out","lines_changed":11}]},"message":"working upower parser. history lines are ignored","epoch":1616005566,"epoch_utc":null},{"commit":"89f1fd96e6b7aa0acf6272e4f3469005d4f7c6bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 16 12:12:01 2021 -0700","stats":{"files_changed":6,"insertions":87,"deletions":0,"files":["tests/fixtures/generic/acpi-V.json","tests/fixtures/generic/acpi-V2.json","tests/fixtures/generic/acpi-V3.json","tests/fixtures/generic/acpi-V4.json","tests/fixtures/ubuntu-18.04/acpi-V.json","tests/test_acpi.py"],"file_stats":[{"name":"tests/fixtures/generic/acpi-V.json","lines_changed":1},{"name":"tests/fixtures/generic/acpi-V2.json","lines_changed":1},{"name":"tests/fixtures/generic/acpi-V3.json","lines_changed":1},{"name":"tests/fixtures/generic/acpi-V4.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/acpi-V.json","lines_changed":1},{"name":"tests/test_acpi.py","lines_changed":82}]},"message":"add acpi tests","epoch":1615921921,"epoch_utc":null},{"commit":"bd425f2493b68949c1fa02cd1d3289ec882d9b0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 16 11:45:56 2021 -0700","stats":{"files_changed":6,"insertions":321,"deletions":2,"files":["CHANGELOG","EXAMPLES.md","docgen.sh","docs/parsers/acpi.md","jc/cli.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":4},{"name":"EXAMPLES.md","lines_changed":58},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/acpi.md","lines_changed":256},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to v1.15.0. Add acpi docs","epoch":1615920356,"epoch_utc":null},{"commit":"46962ff02a0630766a927babc92e11ec91b1f789","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 12 16:45:15 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":11,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":12}]},"message":"remove redundant lines","epoch":1615596315,"epoch_utc":null},{"commit":"e4cb88b05166815e8ad03b646bd3f2b1da7f0d4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 12 12:47:59 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":1}]},"message":"remove unneeded line-state assignment","epoch":1615582079,"epoch_utc":null},{"commit":"32840703dc1d88412712b08db1c9bdaebbc34450","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 12 08:55:04 2021 -0800","stats":{"files_changed":1,"insertions":8,"deletions":39,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":47}]},"message":"remove redundant code","epoch":1615568104,"epoch_utc":null},{"commit":"1f7aafd0415a79e0547cc6f1c008c1918f8fb460","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 12 08:45:32 2021 -0800","stats":{"files_changed":3,"insertions":19,"deletions":9,"files":["jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out","tests/fixtures/generic/acpi-V4.out"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":15},{"name":"tests/fixtures/generic/acpi-V.out","lines_changed":1},{"name":"tests/fixtures/generic/acpi-V4.out","lines_changed":12}]},"message":"fix for full charge batter case. Clean up battery object logic","epoch":1615567532,"epoch_utc":null},{"commit":"7378d5dce43f75440cb57903e8ae0c1c615b0782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 11 21:06:24 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":1}]},"message":"remove comment","epoch":1615525584,"epoch_utc":null},{"commit":"84f76866cdf76f67b34de999fd987de8a02f0306","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 11 21:05:29 2021 -0800","stats":{"files_changed":1,"insertions":197,"deletions":3,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":200}]},"message":"working process function","epoch":1615525529,"epoch_utc":null},{"commit":"322da9ea6a1ceea1152d720797adb8f3a7dc1199","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 11 20:43:31 2021 -0800","stats":{"files_changed":2,"insertions":59,"deletions":12,"files":["jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":67},{"name":"tests/fixtures/generic/acpi-V.out","lines_changed":4}]},"message":"working parser","epoch":1615524211,"epoch_utc":null},{"commit":"58645301ec111bfeb2a618f5f169cc734042dc5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 11 19:55:47 2021 -0800","stats":{"files_changed":6,"insertions":236,"deletions":1,"files":["jc/cli.py","jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out","tests/fixtures/generic/acpi-V2.out","tests/fixtures/generic/acpi-V3.out","tests/fixtures/ubuntu-18.04/acpi-V.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/acpi.py","lines_changed":191},{"name":"tests/fixtures/generic/acpi-V.out","lines_changed":16},{"name":"tests/fixtures/generic/acpi-V2.out","lines_changed":12},{"name":"tests/fixtures/generic/acpi-V3.out","lines_changed":13},{"name":"tests/fixtures/ubuntu-18.04/acpi-V.out","lines_changed":2}]},"message":"add acpi command parser","epoch":1615521347,"epoch_utc":null},{"commit":"1e18dd30a824b0463f0cad86e0da7094c47d34f9","merge":"20f9b7f cc6a19a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 5 11:50:37 2021 -0800","message":"Merge pull request #102 from kellyjonbrazil/dev\n\nDev v1.14.4","epoch":1614973837,"epoch_utc":null},{"commit":"cc6a19adccea3e10243a166b87d852b6f95414b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 5 09:41:17 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"fix typo in comments","epoch":1614966077,"epoch_utc":null},{"commit":"2a5588b177a24d5b78a4b5a515aba515804b7baa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 5 09:38:22 2021 -0800","stats":{"files_changed":4,"insertions":13,"deletions":3,"files":["CHANGELOG","jc/cli.py","jc/parsers/yaml.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":5},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":7},{"name":"setup.py","lines_changed":2}]},"message":"packaging fix for yaml parser and pyoxidizer","epoch":1614965902,"epoch_utc":null},{"commit":"20f9b7f88b97ed68aba46e102b8c7b72443b9c85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 25 11:09:56 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"fix typo","epoch":1614280196,"epoch_utc":null},{"commit":"d7e32313cd9776b4a6af38cc2819d6e4ef8c0d55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 25 11:09:14 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"fix typo","epoch":1614280154,"epoch_utc":null},{"commit":"fb5654d3c4549e84940e2518f2d214debdd42d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 11 11:27:54 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1613071674,"epoch_utc":null},{"commit":"258f1433b36a7ee117ac43953edb4fe964603e7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 11 11:27:01 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add locale info to readme","epoch":1613071621,"epoch_utc":null},{"commit":"fb723ae8bd7bb51f9a4bab380ec1bc54cda0445b","merge":"87b506d 283b89e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 10 11:01:57 2021 -0800","message":"Merge pull request #101 from kellyjonbrazil/dev\n\nDev v1.14.3","epoch":1612983717,"epoch_utc":null},{"commit":"283b89e37c38a3082203e43e38569c8b0bb11e12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 10 10:55:53 2021 -0800","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["CHANGELOG","jc/parsers/dig.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/dig.py","lines_changed":6}]},"message":"simplify answer data logic","epoch":1612983353,"epoch_utc":null},{"commit":"f450f9eb8b7d382af316e88301e72af01a018be9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 10 10:47:56 2021 -0800","stats":{"files_changed":5,"insertions":74,"deletions":0,"files":["tests/fixtures/centos-7.7/hciconfig-a.json","tests/fixtures/centos-7.7/hciconfig.json","tests/fixtures/ubuntu-20.04/hciconfig-a.json","tests/fixtures/ubuntu-20.04/hciconfig.json","tests/test_hciconfig.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/hciconfig-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/hciconfig.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.04/hciconfig-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.04/hciconfig.json","lines_changed":1},{"name":"tests/test_hciconfig.py","lines_changed":70}]},"message":"add hciconfig tests","epoch":1612982876,"epoch_utc":null},{"commit":"b3f8cf99a4874335c6b43e105e0c1562c08256dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 10 08:03:36 2021 -0800","stats":{"files_changed":1,"insertions":15,"deletions":15,"files":["jc/parsers/hciconfig.py"],"file_stats":[{"name":"jc/parsers/hciconfig.py","lines_changed":30}]},"message":"work for both tabs and spaces","epoch":1612973016,"epoch_utc":null},{"commit":"4301ea8caea7c14f59bcddf09668d0198e1115a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 9 16:12:36 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/hciconfig.py"],"file_stats":[{"name":"jc/parsers/hciconfig.py","lines_changed":1}]},"message":"remove debug line","epoch":1612915956,"epoch_utc":null},{"commit":"c672d1c174a42ce44544dfaec0ebcf3c30fd7acf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 9 16:03:00 2021 -0800","stats":{"files_changed":7,"insertions":903,"deletions":22,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","docs/parsers/hciconfig.md","jc/parsers/hciconfig.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"EXAMPLES.md","lines_changed":126},{"name":"README.md","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/hciconfig.md","lines_changed":358},{"name":"jc/parsers/hciconfig.py","lines_changed":414},{"name":"man/jc.1","lines_changed":22}]},"message":"initial working hciconfig parser","epoch":1612915380,"epoch_utc":null},{"commit":"229e953a38471cdd41af0810577d324329840a4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 9 13:26:24 2021 -0800","stats":{"files_changed":7,"insertions":205,"deletions":2,"files":["jc/cli.py","jc/parsers/hciconfig.py","setup.py","tests/fixtures/centos-7.7/hciconfig-a.out","tests/fixtures/centos-7.7/hciconfig.out","tests/fixtures/ubuntu-20.04/hciconfig-a.out","tests/fixtures/ubuntu-20.04/hciconfig.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/hciconfig.py","lines_changed":142},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/hciconfig-a.out","lines_changed":10},{"name":"tests/fixtures/centos-7.7/hciconfig.out","lines_changed":6},{"name":"tests/fixtures/ubuntu-20.04/hciconfig-a.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-20.04/hciconfig.out","lines_changed":17}]},"message":"initial add of hciconfig parser","epoch":1612905984,"epoch_utc":null},{"commit":"87b506dc9b4831d11b4fd04fd6849532db074f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 5 06:55:06 2021 -0800","stats":{"files_changed":7,"insertions":47,"deletions":4,"files":["CHANGELOG","jc/cli.py","jc/parsers/dig.py","setup.py","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/generic/dig-answer-spaces.out","tests/test_dig.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":8},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/generic/dig-answer-spaces.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-answer-spaces.out","lines_changed":23},{"name":"tests/test_dig.py","lines_changed":12}]},"message":"fix for spaces in dig answer data","epoch":1612536906,"epoch_utc":null},{"commit":"15c9002d9eff0f52d873fb3ab35dfafd03a8e919","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 8 11:56:56 2021 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"simplify logic by taking out 'not' in JC_COLORS parsing","epoch":1610135816,"epoch_utc":null},{"commit":"042aaa61b96fc8472a8a460c49bde4cbbc359094","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 8 08:23:29 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"minor updates","epoch":1610123009,"epoch_utc":null},{"commit":"ef856c6ba5774cd8ec23acd71496846e794e3872","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 7 12:09:41 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"clarify -q option","epoch":1610050181,"epoch_utc":null},{"commit":"9cf5be73e3f975132d1ffbef412638b941a5664f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 16:19:47 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"typo fix","epoch":1609978787,"epoch_utc":null},{"commit":"63fc149e2a097cbde60c2ce1aeb102d9becabd9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 16:17:25 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"typo fix","epoch":1609978645,"epoch_utc":null},{"commit":"3c25839350800c7e7d2c48fc032bb21efa0ac213","merge":"03c0295 58246e3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 14:37:24 2021 -0800","message":"Merge pull request #98 from kellyjonbrazil/dev\n\nDev v1.14.1","epoch":1609972644,"epoch_utc":null},{"commit":"58246e33b71bae0ca4a42ad5bdf31134948b1014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 14:33:38 2021 -0800","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","README.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"README.md","lines_changed":3}]},"message":"update compatibility info and changelog date","epoch":1609972418,"epoch_utc":null},{"commit":"8b1407c7068e2105a83992bbb026138ea67bc07c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 14:22:26 2021 -0800","stats":{"files_changed":3,"insertions":59,"deletions":10,"files":["runtests.sh","tests/localtest_last.py","tests/test_last.py"],"file_stats":[{"name":"runtests.sh","lines_changed":6},{"name":"tests/localtest_last.py","lines_changed":41},{"name":"tests/test_last.py","lines_changed":22}]},"message":"pull env-specific tests from CI/CD and run locally only","epoch":1609971746,"epoch_utc":null},{"commit":"2fde4a4e2299b98a9958e3a55849c6791e4b17dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 12:07:58 2021 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["EXAMPLES.md","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"doc updates","epoch":1609963678,"epoch_utc":null},{"commit":"60b9e9798286121399d0f8b75d63ab0f3312c9bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 12:02:47 2021 -0800","stats":{"files_changed":12,"insertions":80,"deletions":38,"files":["docs/parsers/last.md","jc/parsers/last.py","tests/fixtures/centos-7.7/last-crash.json","tests/fixtures/centos-7.7/last-w.json","tests/fixtures/centos-7.7/last-wF.json","tests/fixtures/centos-7.7/last-wF.out","tests/fixtures/centos-7.7/last.json","tests/fixtures/fedora32/last.json","tests/fixtures/osx-10.14.6/last.json","tests/fixtures/ubuntu-18.04/last-w.json","tests/fixtures/ubuntu-18.04/last.json","tests/fixtures/ubuntu-20.04/last-F.json"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":37},{"name":"jc/parsers/last.py","lines_changed":57},{"name":"tests/fixtures/centos-7.7/last-crash.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/last-w.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/last-wF.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/last-wF.out","lines_changed":6},{"name":"tests/fixtures/centos-7.7/last.json","lines_changed":2},{"name":"tests/fixtures/fedora32/last.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/last.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/last-w.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/last.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/last-F.json","lines_changed":2}]},"message":"last parser enhancements: augment hostname with CONSOLE for GUI login, add convenience fields when -F is used: login_epoch, logout_epoch, duration_seconds, calculate duration to hours:minutes","epoch":1609963367,"epoch_utc":null},{"commit":"0adac79c0f2a22b31dfef1432a029af06132467b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 11:09:59 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"Add last parser enhancements","epoch":1609960199,"epoch_utc":null},{"commit":"9f485b5981a2ce49ac699b9dad39993c5605ae18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 11:09:37 2021 -0800","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["jc/parsers/iw_scan.py","tests/fixtures/centos-7.7/iw-scan0.json","tests/fixtures/centos-7.7/iw-scan1.json"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":6},{"name":"tests/fixtures/centos-7.7/iw-scan0.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iw-scan1.json","lines_changed":2}]},"message":"change mac_address fieldname to bssid. Add credit to Phillip","epoch":1609960177,"epoch_utc":null},{"commit":"db17d21b8f9b2f899760e648f1483d33d0bcf47a","merge":"5885b96 996d394","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 10:42:30 2021 -0800","message":"Merge pull request #97 from pschmitt/iw_scan_fix_space_detection\n\niw_scan: Improve detection of lines starting with spaces","epoch":1609958550,"epoch_utc":null},{"commit":"996d394e89c732f327323ca340fce405bd5fb2e4","author":"Philipp Schmitt","author_email":"philipp@schmitt.co","date":"Wed Jan 6 10:32:17 2021 +0100","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":3}]},"message":"iw_scan: Improve detection of lines starting with spaces","epoch":1609957937,"epoch_utc":null},{"commit":"5885b960f9b33a95ecec9f4a33233c2f8682fbc4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 22:12:13 2021 -0800","stats":{"files_changed":3,"insertions":7,"deletions":2,"files":["CHANGELOG","README.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":2},{"name":"man/jc.1","lines_changed":4}]},"message":"doc updates","epoch":1609913533,"epoch_utc":null},{"commit":"79987b35f332e287567e103f25cf91cb50e040c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 22:07:22 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2}]},"message":"formatting","epoch":1609913242,"epoch_utc":null},{"commit":"661b3ef311ad26678030c70c11f2f955667311a4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 22:04:44 2021 -0800","stats":{"files_changed":4,"insertions":94,"deletions":2,"files":["EXAMPLES.md","README.md","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":91},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"doc updates","epoch":1609913084,"epoch_utc":null},{"commit":"fb422726a8366c7133f0712d3b05a26620eea785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 21:55:06 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["tests/fixtures/ubuntu-20.04/last-F.json","tests/fixtures/ubuntu-20.04/last-F.out"],"file_stats":[{"name":"tests/fixtures/ubuntu-20.04/last-F.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/last-F.out","lines_changed":1}]},"message":"update test to add 'down' condition","epoch":1609912506,"epoch_utc":null},{"commit":"4fb6f3ea59c52515926a51a006e65a1c18e57720","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 21:51:30 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":4}]},"message":"add support for down in addition to crash","epoch":1609912290,"epoch_utc":null},{"commit":"f78fe771e1c2fb4691858fa7f27b1febe5f8c6c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 21:38:51 2021 -0800","stats":{"files_changed":3,"insertions":48,"deletions":0,"files":["tests/fixtures/centos-7.7/iw-scan0.json","tests/fixtures/centos-7.7/iw-scan1.json","tests/test_iw_scan.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/iw-scan0.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iw-scan1.json","lines_changed":1},{"name":"tests/test_iw_scan.py","lines_changed":46}]},"message":"add iw-scan tests","epoch":1609911531,"epoch_utc":null},{"commit":"567b8872538ac9f6b384b98741acd9794229d513","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 21:26:43 2021 -0800","stats":{"files_changed":3,"insertions":252,"deletions":12,"files":["docgen.sh","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/iw_scan.md","lines_changed":160},{"name":"jc/parsers/iw_scan.py","lines_changed":103}]},"message":"doc updates","epoch":1609910803,"epoch_utc":null},{"commit":"e516e6b9466b29d40ec10070dd61551180eeef90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 21:17:40 2021 -0800","stats":{"files_changed":1,"insertions":29,"deletions":1,"files":["jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":30}]},"message":"fix country/environment fields and process int/float conversions","epoch":1609910260,"epoch_utc":null},{"commit":"62748676aae3d5955191ed267215df33a5bd3a4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 20:44:22 2021 -0800","stats":{"files_changed":2,"insertions":225,"deletions":0,"files":["jc/cli.py","jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/iw_scan.py","lines_changed":224}]},"message":"initial iw-scan parser","epoch":1609908262,"epoch_utc":null},{"commit":"7351c72e45242b9eb08c51dea7b6fccf12366dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 15:16:40 2021 -0800","stats":{"files_changed":6,"insertions":402,"deletions":1,"files":["jc/parsers/last.py","tests/fixtures/centos-7.7/last-crash.json","tests/fixtures/centos-7.7/last-crash.out","tests/fixtures/centos-7.7/last-wF.json","tests/fixtures/centos-7.7/last-wF.out","tests/test_last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":10},{"name":"tests/fixtures/centos-7.7/last-crash.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/last-crash.out","lines_changed":184},{"name":"tests/fixtures/centos-7.7/last-wF.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/last-wF.out","lines_changed":184},{"name":"tests/test_last.py","lines_changed":23}]},"message":"add fixes and tests for entries that contain 'crash'","epoch":1609888600,"epoch_utc":null},{"commit":"2b7405c5e21db2488fc48b58f6c65cff947ca95d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 13:58:38 2021 -0800","stats":{"files_changed":5,"insertions":23,"deletions":16,"files":["CHANGELOG","README.md","docs/parsers/last.md","jc/parsers/last.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":6},{"name":"jc/parsers/last.py","lines_changed":6},{"name":"man/jc.1","lines_changed":22}]},"message":"doc updates","epoch":1609883918,"epoch_utc":null},{"commit":"e2c77cb935a5bd95dbe930d424e5a02e88e1fa76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 13:00:38 2021 -0800","stats":{"files_changed":3,"insertions":15,"deletions":1,"files":["jc/parsers/last.py","tests/fixtures/ubuntu-20.04/last-F.json","tests/test_last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":3},{"name":"tests/fixtures/ubuntu-20.04/last-F.json","lines_changed":1},{"name":"tests/test_last.py","lines_changed":12}]},"message":"add test for last -F output","epoch":1609880438,"epoch_utc":null},{"commit":"7ac621e4c916373a03f379425033cb2d81a03578","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 12:29:29 2021 -0800","stats":{"files_changed":3,"insertions":36,"deletions":6,"files":["docs/parsers/last.md","jc/parsers/last.py","tests/fixtures/ubuntu-20.04/last-F.out"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":6},{"name":"jc/parsers/last.py","lines_changed":30},{"name":"tests/fixtures/ubuntu-20.04/last-F.out","lines_changed":6}]},"message":"add -F support","epoch":1609878569,"epoch_utc":null},{"commit":"d8b5d6c66ced19dc16f2b4975d2293a903732ffe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 09:45:37 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/cli.py","setup.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to 1.14.1","epoch":1609868737,"epoch_utc":null},{"commit":"22b461eb4b1ca86ea9e8c1fde8a2c312d1526b5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 09:42:05 2021 -0800","stats":{"files_changed":7,"insertions":47,"deletions":12,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/test_date.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":1},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":40},{"name":"tests/fixtures/generic/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date.json","lines_changed":1},{"name":"tests/test_date.py","lines_changed":12}]},"message":"Add period field for en_US.UTF-8 locale","epoch":1609868525,"epoch_utc":null},{"commit":"b37ee8555a2a108625a834a7990bc3320e79b08d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 4 18:02:07 2021 -0800","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":6}]},"message":"changelog update","epoch":1609812127,"epoch_utc":null},{"commit":"1d0ad2f045733c5c690738d49951fdb9bcd3d66d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 4 18:01:16 2021 -0800","stats":{"files_changed":123,"insertions":312,"deletions":312,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat_freebsd_osx.py","jc/parsers/netstat_linux.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":6},{"name":"docs/parsers/arp.md","lines_changed":6},{"name":"docs/parsers/blkid.md","lines_changed":6},{"name":"docs/parsers/cksum.md","lines_changed":6},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":6},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":6},{"name":"docs/parsers/dig.md","lines_changed":6},{"name":"docs/parsers/dmidecode.md","lines_changed":6},{"name":"docs/parsers/du.md","lines_changed":6},{"name":"docs/parsers/env.md","lines_changed":6},{"name":"docs/parsers/file.md","lines_changed":6},{"name":"docs/parsers/free.md","lines_changed":6},{"name":"docs/parsers/fstab.md","lines_changed":6},{"name":"docs/parsers/group.md","lines_changed":6},{"name":"docs/parsers/gshadow.md","lines_changed":6},{"name":"docs/parsers/hash.md","lines_changed":6},{"name":"docs/parsers/hashsum.md","lines_changed":6},{"name":"docs/parsers/history.md","lines_changed":6},{"name":"docs/parsers/hosts.md","lines_changed":6},{"name":"docs/parsers/id.md","lines_changed":4},{"name":"docs/parsers/ifconfig.md","lines_changed":6},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":6},{"name":"docs/parsers/jobs.md","lines_changed":6},{"name":"docs/parsers/last.md","lines_changed":6},{"name":"docs/parsers/ls.md","lines_changed":6},{"name":"docs/parsers/lsblk.md","lines_changed":6},{"name":"docs/parsers/lsmod.md","lines_changed":6},{"name":"docs/parsers/lsof.md","lines_changed":6},{"name":"docs/parsers/mount.md","lines_changed":6},{"name":"docs/parsers/netstat.md","lines_changed":6},{"name":"docs/parsers/ntpq.md","lines_changed":6},{"name":"docs/parsers/passwd.md","lines_changed":6},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":6},{"name":"docs/parsers/pip_show.md","lines_changed":6},{"name":"docs/parsers/ps.md","lines_changed":6},{"name":"docs/parsers/route.md","lines_changed":6},{"name":"docs/parsers/shadow.md","lines_changed":6},{"name":"docs/parsers/ss.md","lines_changed":6},{"name":"docs/parsers/stat.md","lines_changed":6},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":6},{"name":"docs/parsers/systemctl_lj.md","lines_changed":6},{"name":"docs/parsers/systemctl_ls.md","lines_changed":6},{"name":"docs/parsers/systemctl_luf.md","lines_changed":6},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":6},{"name":"docs/parsers/wc.md","lines_changed":6},{"name":"docs/parsers/who.md","lines_changed":6},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":6},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":6},{"name":"jc/parsers/arp.py","lines_changed":6},{"name":"jc/parsers/blkid.py","lines_changed":6},{"name":"jc/parsers/cksum.py","lines_changed":6},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"jc/parsers/csv.py","lines_changed":6},{"name":"jc/parsers/date.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":6},{"name":"jc/parsers/dig.py","lines_changed":6},{"name":"jc/parsers/dmidecode.py","lines_changed":6},{"name":"jc/parsers/du.py","lines_changed":6},{"name":"jc/parsers/env.py","lines_changed":6},{"name":"jc/parsers/file.py","lines_changed":6},{"name":"jc/parsers/foo.py","lines_changed":6},{"name":"jc/parsers/free.py","lines_changed":6},{"name":"jc/parsers/fstab.py","lines_changed":6},{"name":"jc/parsers/group.py","lines_changed":6},{"name":"jc/parsers/gshadow.py","lines_changed":6},{"name":"jc/parsers/hash.py","lines_changed":6},{"name":"jc/parsers/hashsum.py","lines_changed":6},{"name":"jc/parsers/history.py","lines_changed":6},{"name":"jc/parsers/hosts.py","lines_changed":6},{"name":"jc/parsers/id.py","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":6},{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":6},{"name":"jc/parsers/jobs.py","lines_changed":6},{"name":"jc/parsers/last.py","lines_changed":6},{"name":"jc/parsers/ls.py","lines_changed":6},{"name":"jc/parsers/lsblk.py","lines_changed":6},{"name":"jc/parsers/lsmod.py","lines_changed":6},{"name":"jc/parsers/lsof.py","lines_changed":6},{"name":"jc/parsers/mount.py","lines_changed":6},{"name":"jc/parsers/netstat.py","lines_changed":6},{"name":"jc/parsers/netstat_freebsd_osx.py","lines_changed":2},{"name":"jc/parsers/netstat_linux.py","lines_changed":2},{"name":"jc/parsers/ntpq.py","lines_changed":6},{"name":"jc/parsers/passwd.py","lines_changed":6},{"name":"jc/parsers/ping.py","lines_changed":4},{"name":"jc/parsers/pip_list.py","lines_changed":6},{"name":"jc/parsers/pip_show.py","lines_changed":6},{"name":"jc/parsers/ps.py","lines_changed":6},{"name":"jc/parsers/route.py","lines_changed":6},{"name":"jc/parsers/shadow.py","lines_changed":6},{"name":"jc/parsers/ss.py","lines_changed":6},{"name":"jc/parsers/stat.py","lines_changed":6},{"name":"jc/parsers/sysctl.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":6},{"name":"jc/parsers/systemctl_lj.py","lines_changed":6},{"name":"jc/parsers/systemctl_ls.py","lines_changed":6},{"name":"jc/parsers/systemctl_luf.py","lines_changed":6},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":6},{"name":"jc/parsers/wc.py","lines_changed":6},{"name":"jc/parsers/who.py","lines_changed":6},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":6}]},"message":"doc fixes","epoch":1609812076,"epoch_utc":null},{"commit":"ceccfb2c815f57f1b6fd81f891d8b495de23f9f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 4 17:05:26 2021 -0800","stats":{"files_changed":3,"insertions":2036,"deletions":0,"files":["tests/fixtures/centos-7.7/iw-scan0.out","tests/fixtures/centos-7.7/iw-scan1.out","tests/fixtures/ubuntu-20.04/date.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/iw-scan0.out","lines_changed":36},{"name":"tests/fixtures/centos-7.7/iw-scan1.out","lines_changed":1999},{"name":"tests/fixtures/ubuntu-20.04/date.out","lines_changed":1}]},"message":"add test output for iw-scan and date on ubuntu 20.04","epoch":1609808726,"epoch_utc":null},{"commit":"03c02953cd7e3327b391f799c37a2990eb2cb24c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 1 12:01:56 2021 -0800","stats":{"files_changed":2,"insertions":96,"deletions":0,"files":["docgen.sh","docs/parsers/wc.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/wc.md","lines_changed":95}]},"message":"add wc doc","epoch":1609531316,"epoch_utc":null},{"commit":"f254a0eaa16fcda316f7a75424ee359058204b03","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 16:45:10 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1609461910,"epoch_utc":null},{"commit":"9e3b88727cd439e15f235dddb9dd5796e010797a","merge":"439871e b122174","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 16:40:36 2020 -0800","message":"Merge pull request #91 from kellyjonbrazil/dev\n\nDev v1.14.0","epoch":1609461636,"epoch_utc":null},{"commit":"b12217466e906829d19be4cfd80dfe7cf4008e57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 16:37:47 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"spelling","epoch":1609461467,"epoch_utc":null},{"commit":"8b9c932f9b05295e63b3e7d0073f243458fd4dd9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 16:37:14 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"update date","epoch":1609461434,"epoch_utc":null},{"commit":"5986ce03db6fcd1aa0f7b064eaa96c2120c06d2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 16:36:27 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add printenv info","epoch":1609461387,"epoch_utc":null},{"commit":"a7b0e936e400d2f9e55629e2d722cc002e035e9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 14:21:24 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"add vdir and printenv info","epoch":1609453284,"epoch_utc":null},{"commit":"cb0221142455a6bcb904fbe9ade657be45815b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 14:19:45 2020 -0800","stats":{"files_changed":4,"insertions":61,"deletions":2,"files":["jc/parsers/wc.py","tests/fixtures/osx-10.14.6/wc-stdin.json","tests/fixtures/osx-10.14.6/wc-stdin.out","tests/test_wc.py"],"file_stats":[{"name":"jc/parsers/wc.py","lines_changed":3},{"name":"tests/fixtures/osx-10.14.6/wc-stdin.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/wc-stdin.out","lines_changed":1},{"name":"tests/test_wc.py","lines_changed":58}]},"message":"add wc tests","epoch":1609453185,"epoch_utc":null},{"commit":"bd443bf39227515ae5f8df65d07b30268dcc90a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 14:11:25 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/env.py"],"file_stats":[{"name":"jc/parsers/env.py","lines_changed":4}]},"message":"add printenv to env docs","epoch":1609452685,"epoch_utc":null},{"commit":"1f547edd361e66b19ccbcb59f6ba0ae78f6080ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 14:10:56 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/env.md"],"file_stats":[{"name":"docs/parsers/env.md","lines_changed":2}]},"message":"add printenv to env docs","epoch":1609452656,"epoch_utc":null},{"commit":"e4bac3a493705b09e301ddc90dd1b0cee7467c3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 14:10:37 2020 -0800","stats":{"files_changed":9,"insertions":378,"deletions":0,"files":["CHANGELOG","EXAMPLES.md","README.md","jc/cli.py","jc/parsers/wc.py","tests/fixtures/centos-7.7/wc.json","tests/fixtures/centos-7.7/wc.out","tests/fixtures/osx-10.14.6/wc.json","tests/fixtures/osx-10.14.6/wc.out"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":26},{"name":"README.md","lines_changed":1},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/wc.py","lines_changed":130},{"name":"tests/fixtures/centos-7.7/wc.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/wc.out","lines_changed":67},{"name":"tests/fixtures/osx-10.14.6/wc.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/wc.out","lines_changed":150}]},"message":"add wc parser","epoch":1609452637,"epoch_utc":null},{"commit":"5e6bfa681aff03fbd683f81a9f4daa56b49d1344","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 13:18:53 2020 -0800","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["README.md","docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":6}]},"message":"add vdir info","epoch":1609449533,"epoch_utc":null},{"commit":"276160125e01553c75eaad68530177bcf4f9004d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 14:04:49 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"add new commands to README","epoch":1609365889,"epoch_utc":null},{"commit":"d4ae5543f2d5f28a0db5b8e2e19993c21c5d960c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 13:11:13 2020 -0800","stats":{"files_changed":3,"insertions":39,"deletions":0,"files":["tests/fixtures/centos-7.7/hash.json","tests/fixtures/centos-7.7/hash.out","tests/test_hash.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/hash.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/hash.out","lines_changed":4},{"name":"tests/test_hash.py","lines_changed":34}]},"message":"add hash tests","epoch":1609362673,"epoch_utc":null},{"commit":"55f360e267fdfcfef0c124ed6b88535cc181a8b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 12:58:52 2020 -0800","stats":{"files_changed":6,"insertions":260,"deletions":0,"files":["CHANGELOG","EXAMPLES.md","docgen.sh","docs/parsers/hash.md","jc/cli.py","jc/parsers/hash.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":71},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/hash.md","lines_changed":78},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/hash.py","lines_changed":108}]},"message":"add hash command parser","epoch":1609361932,"epoch_utc":null},{"commit":"fdedab2a0cf5af15df5803d87302397dd6d71741","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 11:33:29 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/cksum.py","jc/parsers/hashsum.py"],"file_stats":[{"name":"jc/parsers/cksum.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":2}]},"message":"description updates","epoch":1609356809,"epoch_utc":null},{"commit":"a9be42e3031ab0d697cff67a9e384caa2265a3ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 11:28:42 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"specify parser warnings for quiet option","epoch":1609356522,"epoch_utc":null},{"commit":"6da9510e46e84ec1cb93384825184d2996cf0e08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 11:22:17 2020 -0800","stats":{"files_changed":9,"insertions":482,"deletions":0,"files":["tests/fixtures/centos-7.7/cksum.json","tests/fixtures/centos-7.7/cksum.out","tests/fixtures/centos-7.7/sum.json","tests/fixtures/centos-7.7/sum.out","tests/fixtures/osx-10.14.6/cksum.json","tests/fixtures/osx-10.14.6/cksum.out","tests/fixtures/osx-10.14.6/sum.json","tests/fixtures/osx-10.14.6/sum.out","tests/test_cksum.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/cksum.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/cksum.out","lines_changed":59},{"name":"tests/fixtures/centos-7.7/sum.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sum.out","lines_changed":58},{"name":"tests/fixtures/osx-10.14.6/cksum.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/cksum.out","lines_changed":145},{"name":"tests/fixtures/osx-10.14.6/sum.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/sum.out","lines_changed":146},{"name":"tests/test_cksum.py","lines_changed":70}]},"message":"add cksum tests","epoch":1609356137,"epoch_utc":null},{"commit":"0431798178740b03cdefececc6df958e5adf62fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 11:02:02 2020 -0800","stats":{"files_changed":7,"insertions":229,"deletions":3,"files":["CHANGELOG","docgen.sh","docs/parsers/cksum.md","docs/parsers/hashsum.md","jc/cli.py","jc/parsers/cksum.py","jc/parsers/hashsum.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/cksum.md","lines_changed":95},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/cksum.py","lines_changed":128},{"name":"jc/parsers/hashsum.py","lines_changed":2}]},"message":"add cksum parser","epoch":1609354922,"epoch_utc":null},{"commit":"62432f3c484e74acb2b2dfd15d448b3f1b5d53c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 09:59:54 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/hashsum.py"],"file_stats":[{"name":"jc/parsers/hashsum.py","lines_changed":2}]},"message":"update hashsum description","epoch":1609351194,"epoch_utc":null},{"commit":"9fbbc30906b597e6afaf2030015a7a694d85f79e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 13:09:03 2020 -0800","stats":{"files_changed":2,"insertions":20,"deletions":0,"files":["docs/parsers/hashsum.md","jc/parsers/hashsum.py"],"file_stats":[{"name":"docs/parsers/hashsum.md","lines_changed":10},{"name":"jc/parsers/hashsum.py","lines_changed":10}]},"message":"add supported commands to docs","epoch":1609276143,"epoch_utc":null},{"commit":"d1567d1f622902053f3df58645b4e39532e0c30a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 13:05:04 2020 -0800","stats":{"files_changed":3,"insertions":104,"deletions":0,"files":["CHANGELOG","docgen.sh","docs/parsers/hashsum.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":4},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/hashsum.md","lines_changed":99}]},"message":"add hashsum documentation","epoch":1609275904,"epoch_utc":null},{"commit":"6ca1f5970b3a518615a54ee7fcbc1bddab2db331","merge":"1c880b9 3b7d54c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 12:59:02 2020 -0800","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev","epoch":1609275542,"epoch_utc":null},{"commit":"1c880b9e24ca53cd592cec1dbc52301308290fb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 12:58:04 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_hashsum.py"],"file_stats":[{"name":"tests/test_hashsum.py","lines_changed":2}]},"message":"force git tests","epoch":1609275484,"epoch_utc":null},{"commit":"3b7d54c720dfc93637328cf06eb10a85447c8793","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 12:55:30 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"add python 3.9","epoch":1609275330,"epoch_utc":null},{"commit":"44a740605705bd0ecfde2a6bcc7a826e1010dcf0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 12:51:43 2020 -0800","stats":{"files_changed":6,"insertions":87,"deletions":0,"files":["tests/fixtures/centos-7.7/md5sum.json","tests/fixtures/centos-7.7/sha256sum.json","tests/fixtures/centos-7.7/sha384sum.json","tests/fixtures/osx-10.14.6/md5.json","tests/fixtures/osx-10.14.6/shasum.json","tests/test_hashsum.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/md5sum.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sha256sum.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sha384sum.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/md5.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/shasum.json","lines_changed":1},{"name":"tests/test_hashsum.py","lines_changed":82}]},"message":"add hashsum tests","epoch":1609275103,"epoch_utc":null},{"commit":"8157dcfdb1868548b7c8ca692e6be25f80bb2c2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 12:25:20 2020 -0800","stats":{"files_changed":1,"insertions":36,"deletions":11,"files":["jc/parsers/hashsum.py"],"file_stats":[{"name":"jc/parsers/hashsum.py","lines_changed":47}]},"message":"fix for files with spaces in the name","epoch":1609273520,"epoch_utc":null},{"commit":"28762aea15cabc9cd8293d725e7f1f0550f8e15d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 11:36:20 2020 -0800","stats":{"files_changed":7,"insertions":524,"deletions":0,"files":["jc/cli.py","jc/parsers/hashsum.py","tests/fixtures/centos-7.7/md5sum.out","tests/fixtures/centos-7.7/sha256sum.out","tests/fixtures/centos-7.7/sha384sum.out","tests/fixtures/osx-10.14.6/md5.out","tests/fixtures/osx-10.14.6/shasum.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/hashsum.py","lines_changed":110},{"name":"tests/fixtures/centos-7.7/md5sum.out","lines_changed":56},{"name":"tests/fixtures/centos-7.7/sha256sum.out","lines_changed":55},{"name":"tests/fixtures/centos-7.7/sha384sum.out","lines_changed":56},{"name":"tests/fixtures/osx-10.14.6/md5.out","lines_changed":104},{"name":"tests/fixtures/osx-10.14.6/shasum.out","lines_changed":142}]},"message":"add hashsum parser","epoch":1609270580,"epoch_utc":null},{"commit":"439871ea9f6b055a407e1faaf47e4f56d1829501","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 19 07:07:30 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add ubuntu","epoch":1605798450,"epoch_utc":null},{"commit":"c9180b005c0547c8cbfe4809e66894f1123b0809","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Aug 30 11:58:42 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1598813922,"epoch_utc":null},{"commit":"b14e0725f86853f0113116b1c06f54aaa563f365","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Aug 30 11:57:55 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add ansible plugin blog post link","epoch":1598813875,"epoch_utc":null},{"commit":"70fe3dcb4d5b97aba1d6c6dcd5088fecb27af181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 26 15:21:45 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1598480505,"epoch_utc":null},{"commit":"8c554604a42a3ea7ca9131b65c64fd3ceb95f906","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 26 14:41:01 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"formatting","epoch":1598478061,"epoch_utc":null},{"commit":"a0a35454bd2831c116cb598c686150b883412f94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 26 14:39:40 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add link to the web demo","epoch":1598477980,"epoch_utc":null},{"commit":"e8467e2af5b0c3f14832a9e6d4a96f219c27f3f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 20 10:57:13 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"remove extra space","epoch":1597946233,"epoch_utc":null},{"commit":"7515deb5669ef04623e9cbf58653b30c99a96430","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 20 10:39:34 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add ansible install command","epoch":1597945174,"epoch_utc":null},{"commit":"ed9e52af241b609ee7f5d1b835c9f6c5306cd3c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 20 10:37:15 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"spelling","epoch":1597945035,"epoch_utc":null},{"commit":"592a3804104628c790997747a778b3b39d076dfe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 20 10:35:49 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add Ansible note","epoch":1597944949,"epoch_utc":null},{"commit":"1a458d2d5b4c16c0ad90671727ae9b19939e7f23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 11 07:00:07 2020 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2}]},"message":"update link","epoch":1597154407,"epoch_utc":null},{"commit":"0e4cf53b92ff951a6390a4dacf8833c272473583","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 11 06:36:30 2020 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2}]},"message":"add parser docs link","epoch":1597152990,"epoch_utc":null},{"commit":"e2f06ccb33177173d984bc0cdda1aae1a3f4c681","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 6 13:00:33 2020 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"formatting","epoch":1596744033,"epoch_utc":null},{"commit":"8abff004cd8e09529e5d94be4883308152e11565","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 6 12:59:30 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/yaml.md"],"file_stats":[{"name":"docs/parsers/yaml.md","lines_changed":2}]},"message":"indentation fix","epoch":1596743970,"epoch_utc":null},{"commit":"c4a0e2e3feb2e51eaaaa202064f352229017bcc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 6 12:58:53 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"fix indentation","epoch":1596743933,"epoch_utc":null},{"commit":"4f10f79c73f8b3d6edc2c83e6a12d0ddc1a78555","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 6 12:55:24 2020 -0700","stats":{"files_changed":2,"insertions":4,"deletions":8,"files":["docs/parsers/uname.md","jc/parsers/uname.py"],"file_stats":[{"name":"docs/parsers/uname.md","lines_changed":6},{"name":"jc/parsers/uname.py","lines_changed":6}]},"message":"standardize doc","epoch":1596743724,"epoch_utc":null},{"commit":"69e7a560fd82337570c4bb4aa4780f513c18bd94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 6 07:48:08 2020 -0700","stats":{"files_changed":4,"insertions":8,"deletions":0,"files":["docs/parsers/env.md","docs/parsers/history.md","jc/parsers/env.py","jc/parsers/history.py"],"file_stats":[{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2}]},"message":"add output info to docs","epoch":1596725288,"epoch_utc":null},{"commit":"59b105580805d78516abe1c1069d52a6f0a8131a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 16:51:58 2020 -0700","stats":{"files_changed":97,"insertions":564,"deletions":269,"files":["docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":12},{"name":"docs/parsers/blkid.md","lines_changed":8},{"name":"docs/parsers/crontab.md","lines_changed":10},{"name":"docs/parsers/crontab_u.md","lines_changed":6},{"name":"docs/parsers/csv.md","lines_changed":9},{"name":"docs/parsers/date.md","lines_changed":8},{"name":"docs/parsers/df.md","lines_changed":8},{"name":"docs/parsers/dig.md","lines_changed":8},{"name":"docs/parsers/dmidecode.md","lines_changed":8},{"name":"docs/parsers/du.md","lines_changed":8},{"name":"docs/parsers/env.md","lines_changed":8},{"name":"docs/parsers/file.md","lines_changed":8},{"name":"docs/parsers/free.md","lines_changed":8},{"name":"docs/parsers/fstab.md","lines_changed":4},{"name":"docs/parsers/group.md","lines_changed":4},{"name":"docs/parsers/gshadow.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":4},{"name":"docs/parsers/hosts.md","lines_changed":4},{"name":"docs/parsers/id.md","lines_changed":8},{"name":"docs/parsers/ifconfig.md","lines_changed":10},{"name":"docs/parsers/ini.md","lines_changed":10},{"name":"docs/parsers/iptables.md","lines_changed":10},{"name":"docs/parsers/jobs.md","lines_changed":10},{"name":"docs/parsers/kv.md","lines_changed":11},{"name":"docs/parsers/last.md","lines_changed":8},{"name":"docs/parsers/ls.md","lines_changed":21},{"name":"docs/parsers/lsblk.md","lines_changed":8},{"name":"docs/parsers/lsmod.md","lines_changed":8},{"name":"docs/parsers/lsof.md","lines_changed":8},{"name":"docs/parsers/mount.md","lines_changed":8},{"name":"docs/parsers/netstat.md","lines_changed":17},{"name":"docs/parsers/ntpq.md","lines_changed":8},{"name":"docs/parsers/passwd.md","lines_changed":4},{"name":"docs/parsers/ping.md","lines_changed":12},{"name":"docs/parsers/pip_list.md","lines_changed":8},{"name":"docs/parsers/pip_show.md","lines_changed":8},{"name":"docs/parsers/ps.md","lines_changed":14},{"name":"docs/parsers/route.md","lines_changed":8},{"name":"docs/parsers/shadow.md","lines_changed":4},{"name":"docs/parsers/ss.md","lines_changed":8},{"name":"docs/parsers/stat.md","lines_changed":8},{"name":"docs/parsers/sysctl.md","lines_changed":16},{"name":"docs/parsers/systemctl.md","lines_changed":8},{"name":"docs/parsers/systemctl_lj.md","lines_changed":8},{"name":"docs/parsers/systemctl_ls.md","lines_changed":8},{"name":"docs/parsers/systemctl_luf.md","lines_changed":8},{"name":"docs/parsers/timedatectl.md","lines_changed":8},{"name":"docs/parsers/tracepath.md","lines_changed":10},{"name":"docs/parsers/traceroute.md","lines_changed":16},{"name":"docs/parsers/uname.md","lines_changed":8},{"name":"docs/parsers/uptime.md","lines_changed":8},{"name":"docs/parsers/w.md","lines_changed":8},{"name":"docs/parsers/who.md","lines_changed":10},{"name":"docs/parsers/xml.md","lines_changed":4},{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"jc/parsers/group.py","lines_changed":4},{"name":"jc/parsers/gshadow.py","lines_changed":4},{"name":"jc/parsers/history.py","lines_changed":4},{"name":"jc/parsers/hosts.py","lines_changed":4},{"name":"jc/parsers/id.py","lines_changed":8},{"name":"jc/parsers/ifconfig.py","lines_changed":10},{"name":"jc/parsers/ini.py","lines_changed":10},{"name":"jc/parsers/iptables.py","lines_changed":10},{"name":"jc/parsers/jobs.py","lines_changed":10},{"name":"jc/parsers/kv.py","lines_changed":11},{"name":"jc/parsers/last.py","lines_changed":8},{"name":"jc/parsers/ls.py","lines_changed":21},{"name":"jc/parsers/lsblk.py","lines_changed":8},{"name":"jc/parsers/lsmod.py","lines_changed":8},{"name":"jc/parsers/lsof.py","lines_changed":8},{"name":"jc/parsers/mount.py","lines_changed":8},{"name":"jc/parsers/netstat.py","lines_changed":17},{"name":"jc/parsers/ntpq.py","lines_changed":8},{"name":"jc/parsers/passwd.py","lines_changed":4},{"name":"jc/parsers/ping.py","lines_changed":12},{"name":"jc/parsers/pip_list.py","lines_changed":8},{"name":"jc/parsers/pip_show.py","lines_changed":8},{"name":"jc/parsers/ps.py","lines_changed":14},{"name":"jc/parsers/route.py","lines_changed":8},{"name":"jc/parsers/shadow.py","lines_changed":4},{"name":"jc/parsers/ss.py","lines_changed":8},{"name":"jc/parsers/stat.py","lines_changed":8},{"name":"jc/parsers/sysctl.py","lines_changed":16},{"name":"jc/parsers/systemctl.py","lines_changed":8},{"name":"jc/parsers/systemctl_lj.py","lines_changed":8},{"name":"jc/parsers/systemctl_ls.py","lines_changed":8},{"name":"jc/parsers/systemctl_luf.py","lines_changed":8},{"name":"jc/parsers/timedatectl.py","lines_changed":8},{"name":"jc/parsers/tracepath.py","lines_changed":10},{"name":"jc/parsers/traceroute.py","lines_changed":16},{"name":"jc/parsers/uname.py","lines_changed":8},{"name":"jc/parsers/uptime.py","lines_changed":8},{"name":"jc/parsers/w.py","lines_changed":8},{"name":"jc/parsers/who.py","lines_changed":10},{"name":"jc/parsers/xml.py","lines_changed":4},{"name":"jc/parsers/yaml.py","lines_changed":4}]},"message":"enhance docs","epoch":1596671518,"epoch_utc":null},{"commit":"6ed48c6289214fe5114971c80772efdf9ac1b8c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 15:34:17 2020 -0700","stats":{"files_changed":16,"insertions":88,"deletions":37,"files":["jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py"],"file_stats":[{"name":"jc/parsers/airport_s.py","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":12},{"name":"jc/parsers/blkid.py","lines_changed":8},{"name":"jc/parsers/crontab.py","lines_changed":10},{"name":"jc/parsers/crontab_u.py","lines_changed":6},{"name":"jc/parsers/csv.py","lines_changed":9},{"name":"jc/parsers/date.py","lines_changed":8},{"name":"jc/parsers/df.py","lines_changed":8},{"name":"jc/parsers/dig.py","lines_changed":8},{"name":"jc/parsers/dmidecode.py","lines_changed":8},{"name":"jc/parsers/du.py","lines_changed":8},{"name":"jc/parsers/env.py","lines_changed":8},{"name":"jc/parsers/file.py","lines_changed":8},{"name":"jc/parsers/foo.py","lines_changed":10},{"name":"jc/parsers/free.py","lines_changed":8},{"name":"jc/parsers/fstab.py","lines_changed":4}]},"message":"enhance docs","epoch":1596666857,"epoch_utc":null},{"commit":"f2fb4d3f415fbc1c09eec6dedcf70fba78406b3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 15:10:48 2020 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","jc/parsers/airport.py","jc/parsers/airport_s.py"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":2}]},"message":"improve docs","epoch":1596665448,"epoch_utc":null},{"commit":"6aeea59ea84e56434e87ddf89cd5d4435b99e140","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 15:08:42 2020 -0700","stats":{"files_changed":2,"insertions":14,"deletions":8,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":11},{"name":"docs/parsers/airport_s.md","lines_changed":11}]},"message":"doc updates","epoch":1596665322,"epoch_utc":null},{"commit":"d016f3bbb307f85bd0f93a508323941a8bb9d872","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 15:07:33 2020 -0700","stats":{"files_changed":2,"insertions":14,"deletions":8,"files":["jc/parsers/airport.py","jc/parsers/airport_s.py"],"file_stats":[{"name":"jc/parsers/airport.py","lines_changed":11},{"name":"jc/parsers/airport_s.py","lines_changed":11}]},"message":"improve documentation","epoch":1596665253,"epoch_utc":null},{"commit":"7131c297180bfa195d0209d46fc70ab8e67efe2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 13:32:59 2020 -0700","stats":{"files_changed":114,"insertions":686,"deletions":116,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":7},{"name":"docs/parsers/airport_s.md","lines_changed":7},{"name":"docs/parsers/arp.md","lines_changed":7},{"name":"docs/parsers/crontab.md","lines_changed":7},{"name":"docs/parsers/crontab_u.md","lines_changed":7},{"name":"docs/parsers/csv.md","lines_changed":7},{"name":"docs/parsers/date.md","lines_changed":7},{"name":"docs/parsers/df.md","lines_changed":7},{"name":"docs/parsers/dig.md","lines_changed":7},{"name":"docs/parsers/dmidecode.md","lines_changed":7},{"name":"docs/parsers/du.md","lines_changed":7},{"name":"docs/parsers/env.md","lines_changed":7},{"name":"docs/parsers/file.md","lines_changed":7},{"name":"docs/parsers/free.md","lines_changed":7},{"name":"docs/parsers/fstab.md","lines_changed":7},{"name":"docs/parsers/group.md","lines_changed":7},{"name":"docs/parsers/gshadow.md","lines_changed":7},{"name":"docs/parsers/history.md","lines_changed":7},{"name":"docs/parsers/hosts.md","lines_changed":7},{"name":"docs/parsers/id.md","lines_changed":7},{"name":"docs/parsers/ifconfig.md","lines_changed":7},{"name":"docs/parsers/ini.md","lines_changed":7},{"name":"docs/parsers/iptables.md","lines_changed":7},{"name":"docs/parsers/jobs.md","lines_changed":7},{"name":"docs/parsers/kv.md","lines_changed":7},{"name":"docs/parsers/last.md","lines_changed":7},{"name":"docs/parsers/ls.md","lines_changed":7},{"name":"docs/parsers/lsblk.md","lines_changed":7},{"name":"docs/parsers/lsmod.md","lines_changed":7},{"name":"docs/parsers/lsof.md","lines_changed":7},{"name":"docs/parsers/mount.md","lines_changed":7},{"name":"docs/parsers/netstat.md","lines_changed":7},{"name":"docs/parsers/ntpq.md","lines_changed":7},{"name":"docs/parsers/passwd.md","lines_changed":7},{"name":"docs/parsers/ping.md","lines_changed":7},{"name":"docs/parsers/pip_list.md","lines_changed":7},{"name":"docs/parsers/pip_show.md","lines_changed":7},{"name":"docs/parsers/ps.md","lines_changed":7},{"name":"docs/parsers/route.md","lines_changed":7},{"name":"docs/parsers/shadow.md","lines_changed":7},{"name":"docs/parsers/ss.md","lines_changed":7},{"name":"docs/parsers/stat.md","lines_changed":7},{"name":"docs/parsers/sysctl.md","lines_changed":7},{"name":"docs/parsers/systemctl.md","lines_changed":7},{"name":"docs/parsers/systemctl_lj.md","lines_changed":7},{"name":"docs/parsers/systemctl_ls.md","lines_changed":7},{"name":"docs/parsers/systemctl_luf.md","lines_changed":7},{"name":"docs/parsers/timedatectl.md","lines_changed":7},{"name":"docs/parsers/tracepath.md","lines_changed":7},{"name":"docs/parsers/traceroute.md","lines_changed":7},{"name":"docs/parsers/uname.md","lines_changed":9},{"name":"docs/parsers/uptime.md","lines_changed":7},{"name":"docs/parsers/w.md","lines_changed":7},{"name":"docs/parsers/who.md","lines_changed":7},{"name":"docs/parsers/xml.md","lines_changed":7},{"name":"docs/parsers/yaml.md","lines_changed":7},{"name":"jc/parsers/airport.py","lines_changed":7},{"name":"jc/parsers/airport_s.py","lines_changed":7},{"name":"jc/parsers/arp.py","lines_changed":7},{"name":"jc/parsers/blkid.py","lines_changed":7},{"name":"jc/parsers/crontab.py","lines_changed":7},{"name":"jc/parsers/crontab_u.py","lines_changed":7},{"name":"jc/parsers/csv.py","lines_changed":7},{"name":"jc/parsers/date.py","lines_changed":7},{"name":"jc/parsers/df.py","lines_changed":7},{"name":"jc/parsers/dig.py","lines_changed":7},{"name":"jc/parsers/dmidecode.py","lines_changed":7},{"name":"jc/parsers/du.py","lines_changed":7},{"name":"jc/parsers/env.py","lines_changed":7},{"name":"jc/parsers/file.py","lines_changed":7},{"name":"jc/parsers/foo.py","lines_changed":7},{"name":"jc/parsers/free.py","lines_changed":7},{"name":"jc/parsers/fstab.py","lines_changed":7},{"name":"jc/parsers/group.py","lines_changed":7},{"name":"jc/parsers/gshadow.py","lines_changed":7},{"name":"jc/parsers/history.py","lines_changed":7},{"name":"jc/parsers/hosts.py","lines_changed":7},{"name":"jc/parsers/id.py","lines_changed":7},{"name":"jc/parsers/ifconfig.py","lines_changed":7},{"name":"jc/parsers/ini.py","lines_changed":7},{"name":"jc/parsers/iptables.py","lines_changed":7},{"name":"jc/parsers/jobs.py","lines_changed":7},{"name":"jc/parsers/kv.py","lines_changed":7},{"name":"jc/parsers/last.py","lines_changed":7},{"name":"jc/parsers/ls.py","lines_changed":7},{"name":"jc/parsers/lsblk.py","lines_changed":7},{"name":"jc/parsers/lsmod.py","lines_changed":7},{"name":"jc/parsers/lsof.py","lines_changed":7},{"name":"jc/parsers/mount.py","lines_changed":7},{"name":"jc/parsers/netstat.py","lines_changed":7},{"name":"jc/parsers/ntpq.py","lines_changed":7},{"name":"jc/parsers/passwd.py","lines_changed":7},{"name":"jc/parsers/ping.py","lines_changed":7},{"name":"jc/parsers/pip_list.py","lines_changed":7},{"name":"jc/parsers/pip_show.py","lines_changed":7},{"name":"jc/parsers/ps.py","lines_changed":7},{"name":"jc/parsers/route.py","lines_changed":7},{"name":"jc/parsers/shadow.py","lines_changed":7},{"name":"jc/parsers/ss.py","lines_changed":7},{"name":"jc/parsers/stat.py","lines_changed":7},{"name":"jc/parsers/sysctl.py","lines_changed":7},{"name":"jc/parsers/systemctl.py","lines_changed":7},{"name":"jc/parsers/systemctl_lj.py","lines_changed":7},{"name":"jc/parsers/systemctl_ls.py","lines_changed":7},{"name":"jc/parsers/systemctl_luf.py","lines_changed":7},{"name":"jc/parsers/timedatectl.py","lines_changed":7},{"name":"jc/parsers/tracepath.py","lines_changed":7},{"name":"jc/parsers/traceroute.py","lines_changed":7},{"name":"jc/parsers/uname.py","lines_changed":9},{"name":"jc/parsers/uptime.py","lines_changed":7},{"name":"jc/parsers/w.py","lines_changed":7},{"name":"jc/parsers/who.py","lines_changed":7},{"name":"jc/parsers/xml.py","lines_changed":7},{"name":"jc/parsers/yaml.py","lines_changed":7}]},"message":"add module usage info to docs","epoch":1596659579,"epoch_utc":null},{"commit":"7432442983841b42c8d3d2459b55596c05d1e100","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 13:31:52 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["docs/parsers/blkid.md"],"file_stats":[{"name":"docs/parsers/blkid.md","lines_changed":7}]},"message":"add usage","epoch":1596659512,"epoch_utc":null},{"commit":"5344883394a0662ee16bb5edd68df8e4410025f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 11:35:52 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"spelling/add ping parser update","epoch":1596652552,"epoch_utc":null},{"commit":"3fcd2f6c2e015b0e65e7261c8e591ccd8a7d0e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 11:34:29 2020 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/cli.py","setup.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1596652469,"epoch_utc":null},{"commit":"f3d84bd5bf06349b681e9b72d904676e9f6bca19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 11:28:37 2020 -0700","stats":{"files_changed":6,"insertions":21,"deletions":3,"files":["CHANGELOG","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/fixtures/debian10/crontab-u.json","tests/fixtures/debian10/crontab-u.out","tests/test_crontab_u.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":4},{"name":"tests/fixtures/debian10/crontab-u.json","lines_changed":1},{"name":"tests/fixtures/debian10/crontab-u.out","lines_changed":2},{"name":"tests/test_crontab_u.py","lines_changed":12}]},"message":"tighten crontab and crontab-u parser variable detection","epoch":1596652117,"epoch_utc":null},{"commit":"549780c23220bca3bcab58d7329ba8d44d1be55d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 11:04:07 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"add debian/apt-get info","epoch":1596650647,"epoch_utc":null},{"commit":"2a6da69b82aa9ade6c01d490a32b57b415c62a9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 09:58:01 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":4}]},"message":"improve linux/bsd check","epoch":1596646681,"epoch_utc":null},{"commit":"5c538816cf76686bac1a86a7c06e24664d25a2dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 4 17:36:35 2020 -0700","stats":{"files_changed":9,"insertions":55,"deletions":4,"files":["CHANGELOG","jc/cli.py","jc/parsers/ping.py","setup.py","tests/fixtures/pi/ping-ip-O-D.json","tests/fixtures/pi/ping-ip-O-D.out","tests/fixtures/pi/ping-ip-O.json","tests/fixtures/pi/ping-ip-O.out","tests/test_ping.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/ping.py","lines_changed":4},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/pi/ping-ip-O-D.json","lines_changed":1},{"name":"tests/fixtures/pi/ping-ip-O-D.out","lines_changed":10},{"name":"tests/fixtures/pi/ping-ip-O.json","lines_changed":1},{"name":"tests/fixtures/pi/ping-ip-O.out","lines_changed":10},{"name":"tests/test_ping.py","lines_changed":26}]},"message":"ping parser fix for raspberry pi","epoch":1596587795,"epoch_utc":null},{"commit":"7b8b378a7df397c488fc54fbd6e77f5f3f23c10c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 3 12:39:18 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":1}]},"message":"add pydoc-markdown version requirement","epoch":1596483558,"epoch_utc":null},{"commit":"e30a75e25c4b43969bf9f874f89e18512a5e3a34","merge":"dda517a 85ad5cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 3 10:18:39 2020 -0700","message":"Merge pull request #76 from kellyjonbrazil/dev\n\nDev v1.13.2","epoch":1596475119,"epoch_utc":null},{"commit":"85ad5cfd0bfb903ce35e37b343244fed88dbd979","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 3 10:14:13 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"date change","epoch":1596474853,"epoch_utc":null},{"commit":"88b9d5068c5bac0691fedb543114300d6afc7131","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 3 09:26:37 2020 -0700","stats":{"files_changed":6,"insertions":74,"deletions":15,"files":["EXAMPLES.md","README.md","docs/parsers/date.md","tests/fixtures/generic/date.json","tests/fixtures/generic/date.out","tests/test_date.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":18},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/date.md","lines_changed":34},{"name":"tests/fixtures/generic/date.json","lines_changed":1},{"name":"tests/fixtures/generic/date.out","lines_changed":1},{"name":"tests/test_date.py","lines_changed":34}]},"message":"finish date parser","epoch":1596471997,"epoch_utc":null},{"commit":"f8c4948a090642db595eda2ba2ea0773e560ba67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 16:52:48 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":1}]},"message":"remove comment","epoch":1596239568,"epoch_utc":null},{"commit":"412322447f019aec0b64888631bc965e9f21186d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 16:51:05 2020 -0700","stats":{"files_changed":1,"insertions":48,"deletions":17,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":65}]},"message":"add month_num and weekday_num fields","epoch":1596239465,"epoch_utc":null},{"commit":"d4f289e40fae621b87f0d49451fca4c3dde216b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 14:47:06 2020 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":4},{"name":"jc/parsers/date.py","lines_changed":4}]},"message":"documentation fixup","epoch":1596232026,"epoch_utc":null},{"commit":"e1f3feb8f529172ae26ce4c7a66a4a1c21b722ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 14:45:30 2020 -0700","stats":{"files_changed":1,"insertions":13,"deletions":10,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":23}]},"message":"cover empty data case in process","epoch":1596231930,"epoch_utc":null},{"commit":"37d3bc699c7be16955be06840d242980f05f1074","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 14:39:02 2020 -0700","stats":{"files_changed":6,"insertions":224,"deletions":1,"files":["CHANGELOG","docgen.sh","docs/parsers/date.md","jc/cli.py","jc/parsers/date.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/date.md","lines_changed":89},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/date.py","lines_changed":127},{"name":"man/jc.1","lines_changed":4}]},"message":"add date parser","epoch":1596231542,"epoch_utc":null},{"commit":"672fd18016b8122510b6ab246b5675b7fd399b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 12:59:44 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"date bump","epoch":1596225584,"epoch_utc":null},{"commit":"bc2c23a2a09b96d34bb80f69fdc7751fb5ac3ed4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 12:58:58 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"version bump","epoch":1596225538,"epoch_utc":null},{"commit":"865f7e78124e382c6d315702fa6e48f2104cee46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 12:58:11 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":6}]},"message":"add kv parser to man page","epoch":1596225491,"epoch_utc":null},{"commit":"720212b552e1bd2b9196dd5f06e4b3f85d463531","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 11:02:24 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":9,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":10}]},"message":"fixup traceroute example with new behavior","epoch":1596218544,"epoch_utc":null},{"commit":"d3be61f60837801d5a505dc2520cc80c874a6092","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 10:59:46 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]},"message":"version bump","epoch":1596218386,"epoch_utc":null},{"commit":"13418b16b8fd78fdd97ac045ec3fe9aa59d46080","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 10:56:51 2020 -0700","stats":{"files_changed":2,"insertions":8,"deletions":2,"files":["docs/parsers/traceroute.md","jc/parsers/traceroute.py"],"file_stats":[{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"jc/parsers/traceroute.py","lines_changed":5}]},"message":"doc update","epoch":1596218211,"epoch_utc":null},{"commit":"42d2017cd6f5ee1d1a92bd4958cd63366c1e715d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 10:53:47 2020 -0700","stats":{"files_changed":18,"insertions":41,"deletions":24,"files":["CHANGELOG","jc/parsers/traceroute.py","tests/fixtures/centos-7.7/traceroute.json","tests/fixtures/freebsd12/traceroute.json","tests/fixtures/freebsd12/traceroute6.json","tests/fixtures/generic/traceroute1.json","tests/fixtures/generic/traceroute2.json","tests/fixtures/generic/traceroute3.json","tests/fixtures/generic/traceroute5.json","tests/fixtures/generic/traceroute6.json","tests/fixtures/generic/traceroute7.json","tests/fixtures/osx-10.14.6/traceroute-asn.json",".../fixtures/osx-10.14.6/traceroute-no-header.json","tests/fixtures/osx-10.14.6/traceroute-q.json","tests/fixtures/osx-10.14.6/traceroute.json",".../osx-10.14.6/traceroute6-mult-addresses.json","tests/fixtures/osx-10.14.6/traceroute6.json","tests/test_traceroute.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/traceroute.py","lines_changed":26},{"name":"tests/fixtures/centos-7.7/traceroute.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/traceroute.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/traceroute6.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute1.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute2.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute3.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute5.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute6.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute7.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/traceroute-asn.json","lines_changed":2},{"name":".../fixtures/osx-10.14.6/traceroute-no-header.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/traceroute-q.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/traceroute.json","lines_changed":2},{"name":".../osx-10.14.6/traceroute6-mult-addresses.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/traceroute6.json","lines_changed":2},{"name":"tests/test_traceroute.py","lines_changed":7}]},"message":"traceroute updates: handle missing header row, add annotations, don't print timeouts as probes","epoch":1596218027,"epoch_utc":null},{"commit":"4345e76ead2a49ae0691077e9fbd2b6c5fdfd129","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 30 16:49:38 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2}]},"message":"change to use --kv for key/value files","epoch":1596152978,"epoch_utc":null},{"commit":"741431322ba2677355c361fcd6095ed8cd0a4349","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 30 16:45:36 2020 -0700","stats":{"files_changed":2,"insertions":46,"deletions":24,"files":["tests/test_ini.py","tests/test_kv.py"],"file_stats":[{"name":"tests/test_ini.py","lines_changed":24},{"name":"tests/test_kv.py","lines_changed":46}]},"message":"update tests for kv parser","epoch":1596152736,"epoch_utc":null},{"commit":"980beaaf41a04891f7c2f5daeb1e3a23d3c7ec19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 30 16:21:03 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2}]},"message":"fix docgen issue","epoch":1596151263,"epoch_utc":null},{"commit":"2205034e0906b333c259648f7a0e5392945f12ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 30 16:20:51 2020 -0700","stats":{"files_changed":8,"insertions":105,"deletions":31,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","jc/cli.py","jc/parsers/ini.py","jc/parsers/kv.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"EXAMPLES.md","lines_changed":53},{"name":"README.md","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/ini.py","lines_changed":4},{"name":"jc/parsers/kv.py","lines_changed":67},{"name":"setup.py","lines_changed":2}]},"message":"add kv parser","epoch":1596151251,"epoch_utc":null},{"commit":"82b9c87a66fce5d8626c56858a8c6f1f3326e7fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 30 16:20:24 2020 -0700","stats":{"files_changed":58,"insertions":345,"deletions":62,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/readme.md","docs/utils.md"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":6},{"name":"docs/parsers/airport_s.md","lines_changed":6},{"name":"docs/parsers/arp.md","lines_changed":6},{"name":"docs/parsers/blkid.md","lines_changed":6},{"name":"docs/parsers/crontab.md","lines_changed":6},{"name":"docs/parsers/crontab_u.md","lines_changed":6},{"name":"docs/parsers/csv.md","lines_changed":6},{"name":"docs/parsers/df.md","lines_changed":6},{"name":"docs/parsers/dig.md","lines_changed":6},{"name":"docs/parsers/dmidecode.md","lines_changed":6},{"name":"docs/parsers/du.md","lines_changed":6},{"name":"docs/parsers/env.md","lines_changed":6},{"name":"docs/parsers/file.md","lines_changed":6},{"name":"docs/parsers/free.md","lines_changed":6},{"name":"docs/parsers/fstab.md","lines_changed":6},{"name":"docs/parsers/group.md","lines_changed":6},{"name":"docs/parsers/gshadow.md","lines_changed":6},{"name":"docs/parsers/history.md","lines_changed":6},{"name":"docs/parsers/hosts.md","lines_changed":6},{"name":"docs/parsers/id.md","lines_changed":6},{"name":"docs/parsers/ifconfig.md","lines_changed":13},{"name":"docs/parsers/ini.md","lines_changed":6},{"name":"docs/parsers/iptables.md","lines_changed":6},{"name":"docs/parsers/jobs.md","lines_changed":6},{"name":"docs/parsers/kv.md","lines_changed":61},{"name":"docs/parsers/last.md","lines_changed":6},{"name":"docs/parsers/ls.md","lines_changed":6},{"name":"docs/parsers/lsblk.md","lines_changed":6},{"name":"docs/parsers/lsmod.md","lines_changed":6},{"name":"docs/parsers/lsof.md","lines_changed":6},{"name":"docs/parsers/mount.md","lines_changed":6},{"name":"docs/parsers/netstat.md","lines_changed":6},{"name":"docs/parsers/ntpq.md","lines_changed":6},{"name":"docs/parsers/passwd.md","lines_changed":6},{"name":"docs/parsers/ping.md","lines_changed":6},{"name":"docs/parsers/pip_list.md","lines_changed":6},{"name":"docs/parsers/pip_show.md","lines_changed":6},{"name":"docs/parsers/ps.md","lines_changed":6},{"name":"docs/parsers/route.md","lines_changed":6},{"name":"docs/parsers/shadow.md","lines_changed":6},{"name":"docs/parsers/ss.md","lines_changed":6},{"name":"docs/parsers/stat.md","lines_changed":6},{"name":"docs/parsers/sysctl.md","lines_changed":6},{"name":"docs/parsers/systemctl.md","lines_changed":6},{"name":"docs/parsers/systemctl_lj.md","lines_changed":6},{"name":"docs/parsers/systemctl_ls.md","lines_changed":6},{"name":"docs/parsers/systemctl_luf.md","lines_changed":6},{"name":"docs/parsers/timedatectl.md","lines_changed":6},{"name":"docs/parsers/tracepath.md","lines_changed":6},{"name":"docs/parsers/traceroute.md","lines_changed":9},{"name":"docs/parsers/uname.md","lines_changed":6},{"name":"docs/parsers/uptime.md","lines_changed":6},{"name":"docs/parsers/w.md","lines_changed":6},{"name":"docs/parsers/who.md","lines_changed":6},{"name":"docs/parsers/xml.md","lines_changed":6},{"name":"docs/parsers/yaml.md","lines_changed":6},{"name":"docs/readme.md","lines_changed":1},{"name":"docs/utils.md","lines_changed":5}]},"message":"update docs","epoch":1596151224,"epoch_utc":null},{"commit":"dda517a937323b9888e081aea1032a9d63c4a6bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 14:36:20 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":163,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":166}]},"message":"shorten more examples","epoch":1596058580,"epoch_utc":null},{"commit":"4e6d283b9eddf7759b4dd37bd643394ff73febd4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 14:27:13 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":65,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":65}]},"message":"shorten netstat example","epoch":1596058033,"epoch_utc":null},{"commit":"55acab05aa740dfd7534304f2678b60942cad116","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:55:16 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["changelog.txt => CHANGELOG"],"file_stats":[{"name":"changelog.txt => CHANGELOG","lines_changed":0}]},"message":"change name to CHANGELOG","epoch":1596048916,"epoch_utc":null},{"commit":"ed38a18d236cdb991779f4f148e42359c139e61c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:49:00 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":86,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":87}]},"message":"remove more examples","epoch":1596048540,"epoch_utc":null},{"commit":"95b3c11203d3dd0627c5eeca39fe1d145bf2d733","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:43:22 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":124,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":124}]},"message":"remove more examples","epoch":1596048202,"epoch_utc":null},{"commit":"dce318f4fd44b9c4013211bf233020e84566ddb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:40:47 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1537,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1540}]},"message":"remove examples to reduce file size","epoch":1596048047,"epoch_utc":null},{"commit":"85127f0fb8096192b19fca1f4ffe38ee391351be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:34:43 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["jc/examples.md => EXAMPLES.md"],"file_stats":[{"name":"jc/examples.md => EXAMPLES.md","lines_changed":0}]},"message":"move examples to root","epoch":1596047683,"epoch_utc":null},{"commit":"fb45058244ce879f12bbb5b7267b0fd63fef1d63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:32:18 2020 -0700","stats":{"files_changed":1,"insertions":2640,"deletions":0,"files":["jc/examples.md"],"file_stats":[{"name":"jc/examples.md","lines_changed":2640}]},"message":"add examples file","epoch":1596047538,"epoch_utc":null},{"commit":"45bb5ae389a00ed6a132a65c69ce76c7e5976858","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 28 11:03:41 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"spelling","epoch":1595959421,"epoch_utc":null},{"commit":"339238ab364d8735892a11cb16a62a651edae169","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 20:37:33 2020 -0700","stats":{"files_changed":8,"insertions":79,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py","tests/fixtures/centos-7.7/route-6-n.json","tests/fixtures/centos-7.7/route-6-n.out","tests/fixtures/centos-7.7/route-6.json","tests/fixtures/centos-7.7/route-6.out","tests/test_route.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/route-6-n.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/route-6-n.out","lines_changed":24},{"name":"tests/fixtures/centos-7.7/route-6.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/route-6.out","lines_changed":24},{"name":"tests/test_route.py","lines_changed":24}]},"message":"version bump and add route -6 tests","epoch":1595907453,"epoch_utc":null},{"commit":"032cda8b3db096b690d2557e3b918c50c716c543","merge":"690ac52 6badd3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 19:12:21 2020 -0700","message":"Merge pull request #74 from kellyjonbrazil/dev\n\nDev v1.13.0","epoch":1595902341,"epoch_utc":null},{"commit":"6badd3fb1e1cf6d1ee99614fadc20d54be8039aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 19:02:23 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":3}]},"message":"add parser count test","epoch":1595901743,"epoch_utc":null},{"commit":"724d825745b6f1692eb3b068c3fb59d14892e690","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 19:02:11 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":4}]},"message":"add tracepath parser","epoch":1595901731,"epoch_utc":null},{"commit":"ff1e32ad2ee156f105f5069c6b14a65b22784dfa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 16:49:34 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1595893774,"epoch_utc":null},{"commit":"a5f97febd3066b9e95a18d6b73162a7d206c5845","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 16:47:41 2020 -0700","stats":{"files_changed":10,"insertions":132,"deletions":0,"files":["tests/fixtures/centos-7.7/tracepath.json","tests/fixtures/centos-7.7/tracepath6.json","tests/fixtures/freebsd12/traceroute.json","tests/fixtures/freebsd12/traceroute.out","tests/fixtures/freebsd12/traceroute6.json","tests/fixtures/freebsd12/traceroute6.out","tests/fixtures/osx-10.14.6/uname.out","tests/test_tracepath.py","tests/test_traceroute.py","tests/test_uname.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/tracepath.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/tracepath6.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/traceroute.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/traceroute.out","lines_changed":14},{"name":"tests/fixtures/freebsd12/traceroute6.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/traceroute6.out","lines_changed":34},{"name":"tests/fixtures/osx-10.14.6/uname.out","lines_changed":1},{"name":"tests/test_tracepath.py","lines_changed":46},{"name":"tests/test_traceroute.py","lines_changed":24},{"name":"tests/test_uname.py","lines_changed":9}]},"message":"update traceroute, tracepath, and uname tests","epoch":1595893661,"epoch_utc":null},{"commit":"5baa6cc865634142690e78596c640db35e110b29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:44:13 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add route parser update","epoch":1595889853,"epoch_utc":null},{"commit":"7a4f30b843d8f11711abbb8f9bb263f945ff87ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:37:44 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":6}]},"message":"fix for iface issue","epoch":1595889464,"epoch_utc":null},{"commit":"b2c385dc4f63e3e15f47e986deac0524967214a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:30:09 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":2}]},"message":"change 'if' to 'iface'","epoch":1595889009,"epoch_utc":null},{"commit":"5d5da8d33fa6ab77c745d338d1a2e2e8f2e4c697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:27:11 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":6}]},"message":"more fixes for ipv6 fix","epoch":1595888831,"epoch_utc":null},{"commit":"e60457157839daba385202906997dec48c9c4950","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:20:51 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":2}]},"message":"fix next_hop fix","epoch":1595888451,"epoch_utc":null},{"commit":"f9dacc3f95b32e1431914ae0b0dc5c8e8840d5a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:18:13 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":4}]},"message":"fixup for ipv6","epoch":1595888293,"epoch_utc":null},{"commit":"6086920332575cd7db1b38262a3b4ba8fbfae7ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:13:32 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]},"message":"update ParseError message","epoch":1595888012,"epoch_utc":null},{"commit":"f52f3163bcaf8d7e784f02505e81456e8240295b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 13:57:58 2020 -0700","stats":{"files_changed":1,"insertions":49,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":49}]},"message":"add tracepath example","epoch":1595883478,"epoch_utc":null},{"commit":"d18ff73e880c7d34957f2713857cc83094f914cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 13:51:51 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/tracepath.py"],"file_stats":[{"name":"jc/parsers/tracepath.py","lines_changed":4}]},"message":"update author info","epoch":1595883111,"epoch_utc":null},{"commit":"1e5d602caecd96c9056ad77f9fc50cf25bf6fdfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 13:48:46 2020 -0700","stats":{"files_changed":2,"insertions":288,"deletions":32,"files":["docs/parsers/tracepath.md","jc/parsers/tracepath.py"],"file_stats":[{"name":"docs/parsers/tracepath.md","lines_changed":122},{"name":"jc/parsers/tracepath.py","lines_changed":198}]},"message":"working tracepath parser","epoch":1595882926,"epoch_utc":null},{"commit":"12912521ecb376c36dfdd743b3c4195598fb9aac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 11:04:27 2020 -0700","stats":{"files_changed":2,"insertions":0,"deletions":11,"files":["docs/parsers/traceroute.md","jc/parsers/traceroute.py"],"file_stats":[{"name":"docs/parsers/traceroute.md","lines_changed":7},{"name":"jc/parsers/traceroute.py","lines_changed":4}]},"message":"doc update","epoch":1595873067,"epoch_utc":null},{"commit":"842ea3a94bec3fcab76257fdde5514d1de3d57fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 11:02:13 2020 -0700","stats":{"files_changed":2,"insertions":153,"deletions":0,"files":["docs/parsers/tracepath.md","jc/parsers/tracepath.py"],"file_stats":[{"name":"docs/parsers/tracepath.md","lines_changed":64},{"name":"jc/parsers/tracepath.py","lines_changed":89}]},"message":"add tracepath parser skeleton","epoch":1595872933,"epoch_utc":null},{"commit":"a8560dbc1598fa97de87594228b4cc10282d4197","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 11:01:57 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add tracepath","epoch":1595872917,"epoch_utc":null},{"commit":"a65e27540a8c5c7123d2fdf79fcbefa1e2f8afdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 11:01:45 2020 -0700","stats":{"files_changed":3,"insertions":1,"deletions":24,"files":["docgen.sh","docs/parsers/traceroute.md","jc/parsers/traceroute.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/traceroute.md","lines_changed":14},{"name":"jc/parsers/traceroute.py","lines_changed":10}]},"message":"update docs","epoch":1595872905,"epoch_utc":null},{"commit":"c3c5ed11e68938e35920144406d37ea3b21d63dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 10:33:40 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]},"message":"change name from tr to trparse","epoch":1595871220,"epoch_utc":null},{"commit":"ce24149335cd8ed1e8513a2cf040432fe42d86b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 10:33:25 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":1}]},"message":"formatting","epoch":1595871205,"epoch_utc":null},{"commit":"0314ca8c4831d24c169a0e4948421ecd638fd699","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 10:33:15 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add trparse acknowledgement","epoch":1595871195,"epoch_utc":null},{"commit":"ebd8ee49a9f43063850e30c745c8cae46ee13de1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 10:28:15 2020 -0700","stats":{"files_changed":1,"insertions":26,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":27}]},"message":"add key/value info to ini example","epoch":1595870895,"epoch_utc":null},{"commit":"38d10c97814ec69586c3b447c182f339772d6e22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 09:29:30 2020 -0700","stats":{"files_changed":1,"insertions":130,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":131}]},"message":"add ping and traceroute examples","epoch":1595867370,"epoch_utc":null},{"commit":"360106c24d24e6a9697c00a158a14aaa334a4b1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 09:23:01 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add tracepath","epoch":1595866981,"epoch_utc":null},{"commit":"ca470a5d02fd9fbaf05d8b3b3bb1ffe9f4cf5af3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 09:20:00 2020 -0700","stats":{"files_changed":2,"insertions":39,"deletions":0,"files":["tests/fixtures/centos-7.7/tracepath.out","tests/fixtures/centos-7.7/tracepath6.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/tracepath.out","lines_changed":34},{"name":"tests/fixtures/centos-7.7/tracepath6.out","lines_changed":5}]},"message":"add tracepath fixtures","epoch":1595866800,"epoch_utc":null},{"commit":"57f66e6b1d554ff20b72959f5ebb9e7b2feffed2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 09:19:48 2020 -0700","stats":{"files_changed":2,"insertions":14,"deletions":2,"files":["changelog.txt","jc/parsers/uname.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":14}]},"message":"add exception with hint to use \"uname -a\"","epoch":1595866788,"epoch_utc":null},{"commit":"e774f67924c0e6195f79829b2ac75ce95f76fbaa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:53:17 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["jc/parsers/ini.py"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":10}]},"message":"turn off interpolation and coerce None to ''","epoch":1595634797,"epoch_utc":null},{"commit":"ac10e576c167d20de259e47a6aa5b23fc998b4c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:29:27 2020 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/ini.md","jc/parsers/ini.py"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"jc/parsers/ini.py","lines_changed":4}]},"message":"spelling","epoch":1595633367,"epoch_utc":null},{"commit":"bcae0a99cd0ccce4ec8a67929f7c83a1095a5b88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:23:45 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"add key/value to ini description","epoch":1595633025,"epoch_utc":null},{"commit":"c73c2ff879b3ed7a3e6f04e53e0a729e4f00ed21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:23:30 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":8}]},"message":"add ping, traceroute, and ini update","epoch":1595633010,"epoch_utc":null},{"commit":"c39b1a3356881a11a8f6fe9432897e6d67162f07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:17:51 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"add ping, traceroute and update ini description","epoch":1595632671,"epoch_utc":null},{"commit":"125dc2d9e051a82a4a438afe2e520212338353f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:17:16 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":3,"files":["docs/parsers/ini.md"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":11}]},"message":"add info about key/value files to doc","epoch":1595632636,"epoch_utc":null},{"commit":"b7d4ddc7ced2c3aabf3a857b53a0bf1b62eb6a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:16:54 2020 -0700","stats":{"files_changed":5,"insertions":50,"deletions":0,"files":["tests/fixtures/generic/keyvalue-ifcfg.json","tests/fixtures/generic/keyvalue-ifcfg.txt","tests/fixtures/generic/keyvalue.json","tests/fixtures/generic/keyvalue.txt","tests/test_ini.py"],"file_stats":[{"name":"tests/fixtures/generic/keyvalue-ifcfg.json","lines_changed":1},{"name":"tests/fixtures/generic/keyvalue-ifcfg.txt","lines_changed":19},{"name":"tests/fixtures/generic/keyvalue.json","lines_changed":1},{"name":"tests/fixtures/generic/keyvalue.txt","lines_changed":5},{"name":"tests/test_ini.py","lines_changed":24}]},"message":"add tests for key/value files","epoch":1595632614,"epoch_utc":null},{"commit":"f5e546c6fa7cba166284a0976887d6b82451d3e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:16:24 2020 -0700","stats":{"files_changed":1,"insertions":33,"deletions":9,"files":["jc/parsers/ini.py"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":42}]},"message":"add support for simple key/value pairs","epoch":1595632584,"epoch_utc":null},{"commit":"928e39cd103b96b8c3ccc8d85c930ffb419296c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 14:16:41 2020 -0700","stats":{"files_changed":9,"insertions":104,"deletions":0,"files":["tests/fixtures/generic/traceroute1.json","tests/fixtures/generic/traceroute2.json","tests/fixtures/generic/traceroute3.json","tests/fixtures/generic/traceroute4.json","tests/fixtures/generic/traceroute5.json","tests/fixtures/generic/traceroute6.json","tests/fixtures/generic/traceroute7.json","tests/fixtures/generic/traceroute8.json","tests/test_traceroute.py"],"file_stats":[{"name":"tests/fixtures/generic/traceroute1.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute2.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute3.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute4.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute5.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute6.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute7.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute8.json","lines_changed":1},{"name":"tests/test_traceroute.py","lines_changed":96}]},"message":"add generic traceroute tests","epoch":1595625401,"epoch_utc":null},{"commit":"d0b7ea68a005daff313e44808b256656313a78a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 13:47:47 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":4}]},"message":"check for key in dictionary","epoch":1595623667,"epoch_utc":null},{"commit":"8444690133b6a7522822ab279e97ede6ded17ba9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 13:47:29 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":4}]},"message":"add traceroute","epoch":1595623649,"epoch_utc":null},{"commit":"c03c42d76703ff8f423cf3c10ea6254a27a685cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 13:47:23 2020 -0700","stats":{"files_changed":9,"insertions":76,"deletions":9,"files":["tests/fixtures/centos-7.7/traceroute.json","tests/fixtures/osx-10.14.6/traceroute-asn.json",".../osx-10.14.6/traceroute-mult-addresses.json","tests/fixtures/osx-10.14.6/traceroute-q.json","tests/fixtures/osx-10.14.6/traceroute.json",".../osx-10.14.6/traceroute6-mult-addresses.json","...-address.out => traceroute6-mult-addresses.out}","tests/fixtures/osx-10.14.6/traceroute6.json","tests/test_traceroute.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/traceroute.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/traceroute-asn.json","lines_changed":1},{"name":".../osx-10.14.6/traceroute-mult-addresses.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/traceroute-q.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/traceroute.json","lines_changed":1},{"name":".../osx-10.14.6/traceroute6-mult-addresses.json","lines_changed":1},{"name":"...-address.out => traceroute6-mult-addresses.out}","lines_changed":0},{"name":"tests/fixtures/osx-10.14.6/traceroute6.json","lines_changed":1},{"name":"tests/test_traceroute.py","lines_changed":78}]},"message":"add traceroute tests","epoch":1595623643,"epoch_utc":null},{"commit":"ab67688a00ac335d2a5603e9cadef8b565957911","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 16:45:09 2020 -0700","stats":{"files_changed":1,"insertions":55,"deletions":0,"files":["tests/test_traceroute.py"],"file_stats":[{"name":"tests/test_traceroute.py","lines_changed":55}]},"message":"add test skeleton","epoch":1595547909,"epoch_utc":null},{"commit":"5dcb7166daef3c53da65bba0d591672e64d3a90b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 16:44:57 2020 -0700","stats":{"files_changed":2,"insertions":169,"deletions":0,"files":["docgen.sh","docs/parsers/traceroute.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/traceroute.md","lines_changed":168}]},"message":"add traceroute doc","epoch":1595547897,"epoch_utc":null},{"commit":"14697b86d7fc1cfebb41e0fd2d9a9b9b60071d3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 15:48:08 2020 -0700","stats":{"files_changed":1,"insertions":24,"deletions":2,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":26}]},"message":"add MIT license","epoch":1595544488,"epoch_utc":null},{"commit":"4f4b6276d4bf798b17d996f39742bd0428fc2f19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 15:46:22 2020 -0700","stats":{"files_changed":1,"insertions":38,"deletions":33,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":71}]},"message":"update docstring","epoch":1595544382,"epoch_utc":null},{"commit":"7bc497e1291059ae7858c9d2bd2d9a1b4c030dd1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 15:42:33 2020 -0700","stats":{"files_changed":1,"insertions":117,"deletions":14,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":131}]},"message":"updated process() function to set integers and floats","epoch":1595544153,"epoch_utc":null},{"commit":"68a37a6a5a3f0ad0fa24c84d363050af9fa11f97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 12:48:33 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":4}]},"message":"remove unused function load()","epoch":1595533713,"epoch_utc":null},{"commit":"6f5cd1d7c5f76d7d4da42171fdc30daf9fe3996e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 12:03:21 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]},"message":"change to use f-string","epoch":1595531001,"epoch_utc":null},{"commit":"126b1b121ca10183dc7e9dece83b42907becad39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 11:31:56 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":0,"files":["tests/fixtures/generic/traceroute8.out"],"file_stats":[{"name":"tests/fixtures/generic/traceroute8.out","lines_changed":10}]},"message":"add traceroute6 example","epoch":1595529116,"epoch_utc":null},{"commit":"2341e456a012564f86d533d2748a5887d79995e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 11:31:35 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]},"message":"use ParseError instead of generic Exception","epoch":1595529095,"epoch_utc":null},{"commit":"72d80e95bb50ae2a7432082e65aba15235ba0955","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 10:52:40 2020 -0700","stats":{"files_changed":8,"insertions":115,"deletions":8,"files":["jc/parsers/traceroute.py","tests/fixtures/generic/traceroute1.out","tests/fixtures/generic/traceroute2.out","tests/fixtures/generic/traceroute3.out","tests/fixtures/generic/traceroute4.out","tests/fixtures/generic/traceroute5.out","tests/fixtures/generic/traceroute6.out","tests/fixtures/generic/traceroute7.out"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":9},{"name":"tests/fixtures/generic/traceroute1.out","lines_changed":16},{"name":"tests/fixtures/generic/traceroute2.out","lines_changed":13},{"name":"tests/fixtures/generic/traceroute3.out","lines_changed":20},{"name":"tests/fixtures/generic/traceroute4.out","lines_changed":7},{"name":"tests/fixtures/generic/traceroute5.out","lines_changed":10},{"name":"tests/fixtures/generic/traceroute6.out","lines_changed":31},{"name":"tests/fixtures/generic/traceroute7.out","lines_changed":17}]},"message":"remove unused regex patterns","epoch":1595526760,"epoch_utc":null},{"commit":"f5ec82440cd1c1b5ac9011d3517298d0cdcd8766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 10:19:56 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":11}]},"message":"simplify regex patterns","epoch":1595524796,"epoch_utc":null},{"commit":"c8e526ead35b868733f57b4c114062a48b78a817","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 22 17:23:24 2020 -0700","stats":{"files_changed":2,"insertions":12,"deletions":3,"files":["jc/parsers/traceroute.py","tests/fixtures/osx-10.14.6/traceroute-q.out"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":11},{"name":"tests/fixtures/osx-10.14.6/traceroute-q.out","lines_changed":4}]},"message":"fixes for bsd-style ipv6 output","epoch":1595463804,"epoch_utc":null},{"commit":"066adfb76479df7042bfb12bbb83b5dbd8a6d54c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 22 15:02:02 2020 -0700","stats":{"files_changed":7,"insertions":83,"deletions":7,"files":["jc/parsers/traceroute.py","tests/fixtures/centos-7.7/traceroute.out","tests/fixtures/osx-10.14.6/traceroute-asn.out",".../osx-10.14.6/traceroute-mult-addresses.out",".../fixtures/osx-10.14.6/traceroute-no-header.out",".../osx-10.14.6/traceroute6-multi-address.out","tests/fixtures/osx-10.14.6/traceroute6.out"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":30},{"name":"tests/fixtures/centos-7.7/traceroute.out","lines_changed":32},{"name":"tests/fixtures/osx-10.14.6/traceroute-asn.out","lines_changed":5},{"name":".../osx-10.14.6/traceroute-mult-addresses.out","lines_changed":5},{"name":".../fixtures/osx-10.14.6/traceroute-no-header.out","lines_changed":3},{"name":".../osx-10.14.6/traceroute6-multi-address.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/traceroute6.out","lines_changed":7}]},"message":"handle warning lines in the traceroute output","epoch":1595455322,"epoch_utc":null},{"commit":"5b444d4717b0b8528647e17e71d699907def3e18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 22 12:19:27 2020 -0700","stats":{"files_changed":3,"insertions":307,"deletions":0,"files":["jc/cli.py","jc/parsers/traceroute.py","tests/fixtures/osx-10.14.6/traceroute.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/traceroute.py","lines_changed":295},{"name":"tests/fixtures/osx-10.14.6/traceroute.out","lines_changed":11}]},"message":"add traceroute parser","epoch":1595445567,"epoch_utc":null},{"commit":"69c95adc8d59927c1c00b7e766ca5003b7b6454c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 22 09:06:11 2020 -0700","stats":{"files_changed":3,"insertions":81,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ping6-ip-dup.json","tests/fixtures/osx-10.14.6/ping6-ip-dup.out","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ping6-ip-dup.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-dup.out","lines_changed":68},{"name":"tests/test_ping.py","lines_changed":12}]},"message":"add osx ipv6 ping dup test","epoch":1595433971,"epoch_utc":null},{"commit":"2b0e0d8f5c1a6a5450e362971f9ad5892093b2ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 17:34:30 2020 -0700","stats":{"files_changed":3,"insertions":27,"deletions":0,"files":["tests/fixtures/centos-7.7/ping6-ip-dup.json","tests/fixtures/centos-7.7/ping6-ip-dup.out","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ping6-ip-dup.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-ip-dup.out","lines_changed":14},{"name":"tests/test_ping.py","lines_changed":12}]},"message":"add ipv6 dup test","epoch":1595378070,"epoch_utc":null},{"commit":"778d1bacbf8df523d434b22f5e1517955e4c15ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 15:16:39 2020 -0700","stats":{"files_changed":2,"insertions":28,"deletions":12,"files":["docs/parsers/ping.md","jc/parsers/ping.py"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":20},{"name":"jc/parsers/ping.py","lines_changed":20}]},"message":"update docs to add \"duplicates\" fields","epoch":1595369799,"epoch_utc":null},{"commit":"7e1b0410166c584775ebcd681a280ec7321560c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 15:12:43 2020 -0700","stats":{"files_changed":1,"insertions":24,"deletions":0,"files":["tests/test_ping.py"],"file_stats":[{"name":"tests/test_ping.py","lines_changed":24}]},"message":"add duplicate replies tests","epoch":1595369563,"epoch_utc":null},{"commit":"313b9b329ca6b674069718839f55a4bd7834db80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 15:05:54 2020 -0700","stats":{"files_changed":55,"insertions":55,"deletions":53,"files":["tests/fixtures/centos-7.7/ping-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping-hostname-O-p.json","tests/fixtures/centos-7.7/ping-hostname-O.json","tests/fixtures/centos-7.7/ping-ip-O-D.json","tests/fixtures/centos-7.7/ping-ip-O.json","tests/fixtures/centos-7.7/ping-ip-dup.json","tests/fixtures/centos-7.7/ping6-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping6-hostname-O-p.json","tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","tests/fixtures/centos-7.7/ping6-ip-O-p.json","tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping-hostname-O-p.json","tests/fixtures/fedora32/ping-hostname-O.json","tests/fixtures/fedora32/ping-ip-O-D.json","tests/fixtures/fedora32/ping-ip-O.json","tests/fixtures/fedora32/ping6-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping6-hostname-O-D-p.json","tests/fixtures/fedora32/ping6-hostname-O-p.json","tests/fixtures/fedora32/ping6-ip-O-D-p.json","tests/fixtures/fedora32/ping6-ip-O-p.json","tests/fixtures/freebsd12/ping-hostname-p.json","tests/fixtures/freebsd12/ping-hostname-s.json","tests/fixtures/freebsd12/ping-hostname.json","tests/fixtures/freebsd12/ping-ip-p.json","tests/fixtures/freebsd12/ping-ip-s.json","tests/fixtures/freebsd12/ping-ip.json","tests/fixtures/freebsd12/ping6-hostname-p.json","tests/fixtures/freebsd12/ping6-hostname-s.json","tests/fixtures/freebsd12/ping6-hostname.json","tests/fixtures/freebsd12/ping6-ip-p.json","tests/fixtures/freebsd12/ping6-ip-s.json","tests/fixtures/freebsd12/ping6-ip.json","tests/fixtures/osx-10.14.6/ping-hostname-p.json","tests/fixtures/osx-10.14.6/ping-hostname-s.json","tests/fixtures/osx-10.14.6/ping-hostname.json","tests/fixtures/osx-10.14.6/ping-ip-dup.json","tests/fixtures/osx-10.14.6/ping-ip-p.json","tests/fixtures/osx-10.14.6/ping-ip-s.json","tests/fixtures/osx-10.14.6/ping-ip.json","tests/fixtures/osx-10.14.6/ping6-hostname-p.json","tests/fixtures/osx-10.14.6/ping6-hostname-s.json","tests/fixtures/osx-10.14.6/ping6-hostname.json","tests/fixtures/osx-10.14.6/ping6-ip-p.json","tests/fixtures/osx-10.14.6/ping6-ip-s.json","tests/fixtures/osx-10.14.6/ping6-ip.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping-hostname-O.json","tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","tests/fixtures/ubuntu-18.04/ping-ip-O.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ping-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-hostname-O.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-ip-O-D.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-ip-O.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-ip-dup.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping6-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-hostname-O.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-ip-O-D.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-ip-O.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-ip-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-ip-O-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-hostname-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-hostname-s.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-hostname.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-ip-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-ip-s.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-ip.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-hostname-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-hostname-s.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-hostname.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-ip-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-ip-s.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-ip.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-hostname-p.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-hostname-s.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-hostname.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-ip-dup.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-p.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-ip-s.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-ip.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-p.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-s.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-p.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-s.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-ip.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json","lines_changed":2}]},"message":"update fixtures for added 'duplicate' fields","epoch":1595369154,"epoch_utc":null},{"commit":"6830062256fbc453f87224f7ab8c10e4494b5a83","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 14:47:25 2020 -0700","stats":{"files_changed":4,"insertions":112,"deletions":24,"files":["docs/parsers/ping.md","jc/parsers/ping.py","tests/fixtures/centos-7.7/ping-ip-dup.out","tests/fixtures/osx-10.14.6/ping-ip-dup.out"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":6},{"name":"jc/parsers/ping.py","lines_changed":83},{"name":"tests/fixtures/centos-7.7/ping-ip-dup.out","lines_changed":27},{"name":"tests/fixtures/osx-10.14.6/ping-ip-dup.out","lines_changed":20}]},"message":"add support for duplicate replies","epoch":1595368045,"epoch_utc":null},{"commit":"323072c9827c41c5d74433504b5efceb846cfe09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 09:02:44 2020 -0700","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/ping.md","jc/parsers/ping.py"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":1},{"name":"jc/parsers/ping.py","lines_changed":1}]},"message":"add source_ip to schema doc","epoch":1595347364,"epoch_utc":null},{"commit":"8719d96bddec80187e7ba3286ba93bfec8465744","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 16:54:43 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"change description","epoch":1595289283,"epoch_utc":null},{"commit":"dd5d318ab5bbb1027dd600fd3b0b6ec9b8adfdc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 16:25:20 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":6}]},"message":"version bump and add ping command","epoch":1595287520,"epoch_utc":null},{"commit":"d6dc7f5e65c097895c19000e59e8803a3b350fdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 16:11:18 2020 -0700","stats":{"files_changed":13,"insertions":135,"deletions":29,"files":["tests/fixtures/osx-10.14.6/ping-hostname-p.json","tests/fixtures/osx-10.14.6/ping-hostname-s.json","tests/fixtures/osx-10.14.6/ping-hostname.json","tests/fixtures/osx-10.14.6/ping-ip-p.json","tests/fixtures/osx-10.14.6/ping-ip-s.json","tests/fixtures/osx-10.14.6/ping-ip.json","tests/fixtures/osx-10.14.6/ping6-hostname-p.json","tests/fixtures/osx-10.14.6/ping6-hostname-s.json","tests/fixtures/osx-10.14.6/ping6-hostname.json","tests/fixtures/osx-10.14.6/ping6-ip-p.json","tests/fixtures/osx-10.14.6/ping6-ip-s.json","tests/fixtures/osx-10.14.6/ping6-ip.json","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ping-hostname-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-hostname-s.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-hostname.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-s.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-s.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-s.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":152}]},"message":"add osx ping tests","epoch":1595286678,"epoch_utc":null},{"commit":"c203664eb5aafa0afa3101b79e3fd13b3e009ec5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 15:46:27 2020 -0700","stats":{"files_changed":13,"insertions":171,"deletions":9,"files":["tests/fixtures/freebsd12/ping-hostname-p.json","tests/fixtures/freebsd12/ping-hostname-s.json","tests/fixtures/freebsd12/ping-hostname.json","tests/fixtures/freebsd12/ping-ip-p.json","tests/fixtures/freebsd12/ping-ip-s.json","tests/fixtures/freebsd12/ping-ip.json","tests/fixtures/freebsd12/ping6-hostname-p.json","tests/fixtures/freebsd12/ping6-hostname-s.json","tests/fixtures/freebsd12/ping6-hostname.json","tests/fixtures/freebsd12/ping6-ip-p.json","tests/fixtures/freebsd12/ping6-ip-s.json","tests/fixtures/freebsd12/ping6-ip.json","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/ping-hostname-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-hostname-s.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-hostname.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-s.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-hostname-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-hostname-s.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-hostname.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-s.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":168}]},"message":"freebsd ping tests","epoch":1595285187,"epoch_utc":null},{"commit":"19ecf1fa19e9fa0873002baf07fa670b71ed7752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 14:35:41 2020 -0700","stats":{"files_changed":11,"insertions":118,"deletions":0,"files":["tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping-hostname-O-p.json","tests/fixtures/fedora32/ping-hostname-O.json","tests/fixtures/fedora32/ping-ip-O-D.json","tests/fixtures/fedora32/ping-ip-O.json",".../fixtures/fedora32/ping6-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping6-hostname-O-D-p.json","tests/fixtures/fedora32/ping6-hostname-O-p.json","tests/fixtures/fedora32/ping6-ip-O-D-p.json","tests/fixtures/fedora32/ping6-ip-O-p.json","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-hostname-O.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-ip-O-D.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-ip-O.json","lines_changed":1},{"name":".../fixtures/fedora32/ping6-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping6-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping6-ip-O-D-p.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping6-ip-O-p.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":108}]},"message":"add Fedora32 tests","epoch":1595280941,"epoch_utc":null},{"commit":"b8deb0426cc23333c0e0a9dc3776d9761d99abb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 13:51:39 2020 -0700","stats":{"files_changed":11,"insertions":119,"deletions":8,"files":[".../ubuntu-18.04/ping-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping-hostname-O.json","tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","tests/fixtures/ubuntu-18.04/ping-ip-O.json",".../ubuntu-18.04/ping6-hostname-O-D-p-s.json",".../ubuntu-18.04/ping6-hostname-O-D-p.json",".../fixtures/ubuntu-18.04/ping6-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json","tests/test_ping.py"],"file_stats":[{"name":".../ubuntu-18.04/ping-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-hostname-O-D-p-s.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-hostname-O-D-p.json","lines_changed":1},{"name":".../fixtures/ubuntu-18.04/ping6-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":117}]},"message":"add ubuntu ping tests","epoch":1595278299,"epoch_utc":null},{"commit":"3b8371f0208a097cb8a1c026348d3842e6702b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 12:49:05 2020 -0700","stats":{"files_changed":10,"insertions":202,"deletions":0,"files":[".../fixtures/centos-7.7/ping-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping-hostname-O-p.json","tests/fixtures/centos-7.7/ping-hostname-O.json","tests/fixtures/centos-7.7/ping-ip-O-D.json","tests/fixtures/centos-7.7/ping-ip-O.json",".../centos-7.7/ping6-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping6-hostname-O-p.json","tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","tests/fixtures/centos-7.7/ping6-ip-O-p.json","tests/test_ping.py"],"file_stats":[{"name":".../fixtures/centos-7.7/ping-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-hostname-O.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-ip-O-D.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-ip-O.json","lines_changed":1},{"name":".../centos-7.7/ping6-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-p.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":193}]},"message":"add centos ping tests","epoch":1595274545,"epoch_utc":null},{"commit":"20bb1cdf396abdb3707b34fa146cbe913f9bbd6f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 11:53:06 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":8}]},"message":"add TypeError to except for None values","epoch":1595271186,"epoch_utc":null},{"commit":"301daa48d0bfc28f97c8e46f028f8c6b875bf34e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 15:30:54 2020 -0700","stats":{"files_changed":2,"insertions":114,"deletions":16,"files":["docs/parsers/ping.md","jc/parsers/ping.py"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":128},{"name":"jc/parsers/ping.py","lines_changed":2}]},"message":"update documentation","epoch":1595197854,"epoch_utc":null},{"commit":"8421ec88033e02f472e4961d87551a0352663a16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 15:19:47 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":4}]},"message":"remove cygwin compatibility","epoch":1595197187,"epoch_utc":null},{"commit":"74211eb0129f6aa655a38ba4d4d8844d81441107","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 15:16:04 2020 -0700","stats":{"files_changed":1,"insertions":82,"deletions":5,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":87}]},"message":"add examples","epoch":1595196964,"epoch_utc":null},{"commit":"60bd42f298f309cbec6d24c9543ea3d51bd73b18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 15:13:52 2020 -0700","stats":{"files_changed":1,"insertions":59,"deletions":11,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":70}]},"message":"add process() logic","epoch":1595196832,"epoch_utc":null},{"commit":"14bdd74526e400997c5bc247ea35ed40799e83ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 14:46:02 2020 -0700","stats":{"files_changed":12,"insertions":100,"deletions":0,"files":["tests/fixtures/freebsd12/ping-hostname-p.out","tests/fixtures/freebsd12/ping-hostname-s.out","tests/fixtures/freebsd12/ping-hostname.out","tests/fixtures/freebsd12/ping-ip-p.out","tests/fixtures/freebsd12/ping-ip-s.out","tests/fixtures/freebsd12/ping-ip.out","tests/fixtures/freebsd12/ping6-hostname-p.out","tests/fixtures/freebsd12/ping6-hostname-s.out","tests/fixtures/freebsd12/ping6-hostname.out","tests/fixtures/freebsd12/ping6-ip-p.out","tests/fixtures/freebsd12/ping6-ip-s.out","tests/fixtures/freebsd12/ping6-ip.out"],"file_stats":[{"name":"tests/fixtures/freebsd12/ping-hostname-p.out","lines_changed":9},{"name":"tests/fixtures/freebsd12/ping-hostname-s.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping-hostname.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping-ip-p.out","lines_changed":9},{"name":"tests/fixtures/freebsd12/ping-ip-s.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping-ip.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping6-hostname-p.out","lines_changed":9},{"name":"tests/fixtures/freebsd12/ping6-hostname-s.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping6-hostname.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping6-ip-p.out","lines_changed":9},{"name":"tests/fixtures/freebsd12/ping6-ip-s.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping6-ip.out","lines_changed":8}]},"message":"add ping test fixtures","epoch":1595195162,"epoch_utc":null},{"commit":"fb0f3eda04a4b1dbb81da7d5791cbfe746bfd617","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 14:45:50 2020 -0700","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["tests/fixtures/create_fixtures.sh"],"file_stats":[{"name":"tests/fixtures/create_fixtures.sh","lines_changed":16}]},"message":"add ping commands","epoch":1595195150,"epoch_utc":null},{"commit":"91ee6e6701307363336a39f9e16641465ddd05c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 14:18:56 2020 -0700","stats":{"files_changed":12,"insertions":100,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ping-hostname-p.out","tests/fixtures/osx-10.14.6/ping-hostname-s.out","tests/fixtures/osx-10.14.6/ping-hostname.out","tests/fixtures/osx-10.14.6/ping-ip-p.out","tests/fixtures/osx-10.14.6/ping-ip-s.out","tests/fixtures/osx-10.14.6/ping-ip.out","tests/fixtures/osx-10.14.6/ping6-hostname-p.out","tests/fixtures/osx-10.14.6/ping6-hostname-s.out","tests/fixtures/osx-10.14.6/ping6-hostname.out","tests/fixtures/osx-10.14.6/ping6-ip-p.out","tests/fixtures/osx-10.14.6/ping6-ip-s.out","tests/fixtures/osx-10.14.6/ping6-ip.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ping-hostname-p.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/ping-hostname-s.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping-hostname.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping-ip-p.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/ping-ip-s.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping-ip.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-p.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-s.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-p.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-s.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping6-ip.out","lines_changed":8}]},"message":"add osx ping test fixtures","epoch":1595193536,"epoch_utc":null},{"commit":"51f4e6927c68a7e2a26954f564d10d316b98a984","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 14:18:40 2020 -0700","stats":{"files_changed":1,"insertions":12,"deletions":3,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":15}]},"message":"add support for pattern in osx/bsd","epoch":1595193520,"epoch_utc":null},{"commit":"94988d86674293faddc6f7e7c82575738d2dc791","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 13:50:40 2020 -0700","stats":{"files_changed":10,"insertions":257,"deletions":0,"files":["tests/fixtures/fedora32/ping-hostname-O-D-p-s.out","tests/fixtures/fedora32/ping-hostname-O-p.out","tests/fixtures/fedora32/ping-hostname-O.out","tests/fixtures/fedora32/ping-ip-O-D.out","tests/fixtures/fedora32/ping-ip-O.out","tests/fixtures/fedora32/ping6-hostname-O-D-p-s.out","tests/fixtures/fedora32/ping6-hostname-O-D-p.out","tests/fixtures/fedora32/ping6-hostname-O-p.out","tests/fixtures/fedora32/ping6-ip-O-D-p.out","tests/fixtures/fedora32/ping6-ip-O-p.out"],"file_stats":[{"name":"tests/fixtures/fedora32/ping-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping-hostname-O.out","lines_changed":25},{"name":"tests/fixtures/fedora32/ping-ip-O-D.out","lines_changed":25},{"name":"tests/fixtures/fedora32/ping-ip-O.out","lines_changed":25},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping6-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping6-ip-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping6-ip-O-p.out","lines_changed":26}]},"message":"add fedora ping fixtures","epoch":1595191840,"epoch_utc":null},{"commit":"fe36f5a98cd3ee7753e250b6553e4453d971f929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 12:56:53 2020 -0700","stats":{"files_changed":13,"insertions":318,"deletions":0,"files":["tests/fixtures/centos-7.7/ping-ip-O-D.out","tests/fixtures/centos-7.7/ping-ip-O.out","tests/fixtures/create_fixtures.sh",".../ubuntu-18.04/ping-hostname-O-D-p-s.out","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.out","tests/fixtures/ubuntu-18.04/ping-hostname-O.out","tests/fixtures/ubuntu-18.04/ping-ip-O-D.out","tests/fixtures/ubuntu-18.04/ping-ip-O.out",".../ubuntu-18.04/ping6-hostname-O-D-p-s.out",".../fixtures/ubuntu-18.04/ping6-hostname-O-D-p.out","tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.out","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.out","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ping-ip-O-D.out","lines_changed":25},{"name":"tests/fixtures/centos-7.7/ping-ip-O.out","lines_changed":25},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":12},{"name":".../ubuntu-18.04/ping-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O.out","lines_changed":25},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O-D.out","lines_changed":25},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O.out","lines_changed":25},{"name":".../ubuntu-18.04/ping6-hostname-O-D-p-s.out","lines_changed":26},{"name":".../fixtures/ubuntu-18.04/ping6-hostname-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-p.out","lines_changed":25}]},"message":"add fixtures for ping","epoch":1595188613,"epoch_utc":null},{"commit":"f9eb18b9271b2428dd82f2dc26d3fa0435dad81d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 12:56:34 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":17}]},"message":"change 'request_timeout' field to 'type', fix compatibility, other formatting fixes","epoch":1595188594,"epoch_utc":null},{"commit":"cc60f3674822c644933f286a0364b09d7e2a60b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jul 18 12:35:46 2020 -0700","stats":{"files_changed":3,"insertions":67,"deletions":1,"files":["docgen.sh","docs/parsers/ping.md","jc/cli.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ping.md","lines_changed":64},{"name":"jc/cli.py","lines_changed":3}]},"message":"add ping parser","epoch":1595100946,"epoch_utc":null},{"commit":"604ade791f7bd33b37f64916befba27a2ea08b5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 17 15:57:07 2020 -0700","stats":{"files_changed":8,"insertions":506,"deletions":0,"files":["jc/parsers/ping.py",".../fixtures/centos-7.7/ping-hostname-O-D-p-s.out","tests/fixtures/centos-7.7/ping-hostname-O-p.out","tests/fixtures/centos-7.7/ping-hostname-O.out",".../fixtures/centos-7.7/ping6-hostname-O-D-p-s.out","tests/fixtures/centos-7.7/ping6-hostname-O-p.out","tests/fixtures/centos-7.7/ping6-ip-O-D-p.out","tests/fixtures/centos-7.7/ping6-ip-O-p.out"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":325},{"name":".../fixtures/centos-7.7/ping-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping-hostname-O.out","lines_changed":25},{"name":".../fixtures/centos-7.7/ping6-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping6-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-p.out","lines_changed":26}]},"message":"add ping parser","epoch":1595026627,"epoch_utc":null},{"commit":"690ac52a917200e46eac2feafc9f504f2734301c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 13 07:18:48 2020 -0700","stats":{"files_changed":1,"insertions":261,"deletions":0,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":261}]},"message":"add man page","epoch":1594649928,"epoch_utc":null},{"commit":"34ed772775f1f02ed148f24a3bfff532bc811607","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jul 11 09:46:47 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1594486007,"epoch_utc":null},{"commit":"d5ab95571f64f55d8194e9e5592ac538bb535229","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jul 11 09:44:08 2020 -0700","stats":{"files_changed":1,"insertions":26,"deletions":11,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":37}]},"message":"fix tests when using older versions of pygments","epoch":1594485848,"epoch_utc":null},{"commit":"ffb3a0ee5fb30a3f61d6cbedf877ab04acdbf624","merge":"fde0bc8 94b12b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 16:34:56 2020 -0700","message":"Merge pull request #73 from kellyjonbrazil/dev\n\nDev v1.12.0","epoch":1594424096,"epoch_utc":null},{"commit":"94b12b57aaa56170d1f31f4910fd1239f88de137","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 16:30:08 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"spelling","epoch":1594423808,"epoch_utc":null},{"commit":"6d149e84571d5d6dd1d8a1f219ba299de5173779","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 16:25:03 2020 -0700","stats":{"files_changed":2,"insertions":8,"deletions":1,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":7},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1594423503,"epoch_utc":null},{"commit":"1ad89c90d890039b817f65b2635db1b5e849a9e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 15:58:02 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add pacman","epoch":1594421882,"epoch_utc":null},{"commit":"fb71c7b020bc1eda9484595f30b0200a4f59aa45","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 15:49:35 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":2}]},"message":"function name spelling","epoch":1594421375,"epoch_utc":null},{"commit":"28ed17ad3bce866e5dc0179ef5de43380ac6ace1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 15:45:21 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":1}]},"message":"add parser_count test to test_cli_about_jc","epoch":1594421121,"epoch_utc":null},{"commit":"0c2a4e2bf71dca50d4a9bb27ca99944909c022ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 15:35:05 2020 -0700","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":37}]},"message":"add cli tests","epoch":1594420505,"epoch_utc":null},{"commit":"62bec30de2f1a303f2ec411d89f7f9f9c6d1abaf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 14:44:50 2020 -0700","stats":{"files_changed":1,"insertions":20,"deletions":0,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":20}]},"message":"add json_out tests","epoch":1594417490,"epoch_utc":null},{"commit":"3fced77e4e258dbf7db94a313e599c830a597b49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 12:23:48 2020 -0700","stats":{"files_changed":1,"insertions":98,"deletions":1,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":99}]},"message":"add set_env_colors tests","epoch":1594409028,"epoch_utc":null},{"commit":"a09d1d8b7687912610598c88d172733d5e29b1ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 12:23:25 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":13}]},"message":"move environment variable assignment to main() to simplify tests","epoch":1594409005,"epoch_utc":null},{"commit":"8f4243fbd8d70ca9fd019e984c564e37c81e07db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 10:54:34 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"formatting","epoch":1594403674,"epoch_utc":null},{"commit":"47aaf20549ea238443427e69d5841d6996b7afab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 10:50:51 2020 -0700","stats":{"files_changed":1,"insertions":17,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":17}]},"message":"add sysctl command parser","epoch":1594403451,"epoch_utc":null},{"commit":"0c5289ea50e4d3d35e80147b4cad32434c19a2a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 10:47:23 2020 -0700","stats":{"files_changed":3,"insertions":72,"deletions":2,"files":["tests/fixtures/freebsd12/sysctl-a.json","tests/fixtures/osx-10.14.6/sysctl-a.json","tests/test_sysctl.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/sysctl-a.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/sysctl-a.json","lines_changed":2},{"name":"tests/test_sysctl.py","lines_changed":70}]},"message":"add sysctl tests","epoch":1594403243,"epoch_utc":null},{"commit":"3e53323514906fb84abfaeed0c2ee1fd9090ad8d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 09:58:56 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":2}]},"message":"don't filter out empty lines","epoch":1594400336,"epoch_utc":null},{"commit":"a5ee9861b9b9b479aee59ea5b1d75f20d7c3c8e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 09:28:32 2020 -0700","stats":{"files_changed":3,"insertions":3785,"deletions":1,"files":["tests/fixtures/freebsd12/sysctl-a.json","tests/fixtures/freebsd12/sysctl-a.out","tests/fixtures/osx-10.14.6/sysctl-a.json"],"file_stats":[{"name":"tests/fixtures/freebsd12/sysctl-a.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/sysctl-a.out","lines_changed":3783},{"name":"tests/fixtures/osx-10.14.6/sysctl-a.json","lines_changed":2}]},"message":"update fixtures","epoch":1594398512,"epoch_utc":null},{"commit":"feb8ca76545cba4fd0927273ddf90a77df994006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 09:28:20 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/sysctl.md"],"file_stats":[{"name":"docs/parsers/sysctl.md","lines_changed":2}]},"message":"spelling","epoch":1594398500,"epoch_utc":null},{"commit":"a7abe4473b90c512466db9ae98cfac585689fe2a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 09:03:04 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":2}]},"message":"spelling","epoch":1594396984,"epoch_utc":null},{"commit":"780b9b61dec3e142e46c9a82146d2af4e1144123","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 08:30:31 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":6}]},"message":"specify IndexError exception in try/except block","epoch":1594395031,"epoch_utc":null},{"commit":"19ace36ffa659bedf0ba2e43572c9e253592b2e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 08:21:30 2020 -0700","stats":{"files_changed":4,"insertions":2167,"deletions":0,"files":["tests/fixtures/osx-10.14.6/sysctl-a.json","tests/fixtures/osx-10.14.6/sysctl-a.out","tests/fixtures/ubuntu-18.04/sysctl-a.json","tests/fixtures/ubuntu-18.04/sysctl-a.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/sysctl-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/sysctl-a.out","lines_changed":1287},{"name":"tests/fixtures/ubuntu-18.04/sysctl-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/sysctl-a.out","lines_changed":878}]},"message":"add fixtures","epoch":1594394490,"epoch_utc":null},{"commit":"5fff8afc9f47f8cc6db8ed3613b90b5cdc683b43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 08:21:15 2020 -0700","stats":{"files_changed":1,"insertions":33,"deletions":11,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":44}]},"message":"add fixes for freebsd where values can be on separate lines under the key","epoch":1594394475,"epoch_utc":null},{"commit":"4ad230c9279c5eb6c8ed6baf7254b8e9328e5af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 16:35:36 2020 -0700","stats":{"files_changed":4,"insertions":929,"deletions":14,"files":["docs/parsers/sysctl.md","jc/parsers/sysctl.py","tests/fixtures/centos-7.7/sysctl-a.json","tests/fixtures/centos-7.7/sysctl-a.out"],"file_stats":[{"name":"docs/parsers/sysctl.md","lines_changed":12},{"name":"jc/parsers/sysctl.py","lines_changed":12},{"name":"tests/fixtures/centos-7.7/sysctl-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sysctl-a.out","lines_changed":918}]},"message":"doc update and add test fixtures","epoch":1594337736,"epoch_utc":null},{"commit":"dd98eb1ec8f451eb87a5094e76a7f758dee3fc69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 16:25:41 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":7,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":11}]},"message":"append duplicate key values to original key instead of adding unique keys","epoch":1594337141,"epoch_utc":null},{"commit":"c6baf42e72b4f41ed511e7db943297d03a39c0d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 16:18:33 2020 -0700","stats":{"files_changed":3,"insertions":94,"deletions":7,"files":["docgen.sh","docs/parsers/sysctl.md","jc/parsers/sysctl.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/sysctl.md","lines_changed":86},{"name":"jc/parsers/sysctl.py","lines_changed":14}]},"message":"doc updates","epoch":1594336713,"epoch_utc":null},{"commit":"e2bac97d563e5ef771ccd8ed1e5c42cbf588b120","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 14:51:15 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":12}]},"message":"fix for multiple identical keys in sysctl output","epoch":1594331475,"epoch_utc":null},{"commit":"d112ee94d0ec534828c8508d0fb833b768975990","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 14:26:35 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":4,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":12}]},"message":"use try/except and add support for floats in process()","epoch":1594329995,"epoch_utc":null},{"commit":"27b21b2fafab912f21b88b66c7f817cbce155765","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 11:11:29 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":7,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":15}]},"message":"formatting and docstring updates","epoch":1594318289,"epoch_utc":null},{"commit":"8c96d5cd20448a4f7f9736c4d489d6ecc3068ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 10:59:36 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["requirements.txt"],"file_stats":[{"name":"requirements.txt","lines_changed":2}]},"message":"reduce pygments version requirement","epoch":1594317576,"epoch_utc":null},{"commit":"c29ed3fd695f725005333db5e6e2cd844bb4ca14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 10:54:49 2020 -0700","stats":{"files_changed":1,"insertions":14,"deletions":13,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":27}]},"message":"formatting of quotation marks and docstrings","epoch":1594317289,"epoch_utc":null},{"commit":"cedf603f121636bdfa95432059c3c275c3ea3e9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 09:59:00 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]},"message":"minor formatting","epoch":1594313940,"epoch_utc":null},{"commit":"279161c36f288c27a9789054ae372fe8ceb58a94","merge":"bc7116c ce0b43d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 09:48:58 2020 -0700","message":"Merge pull request #72 from duelafn/pygments-2.3\n\nSupport older pygments","epoch":1594313338,"epoch_utc":null},{"commit":"ce0b43d919f07d96d1b94e9d14d03e935e80011d","author":"Dean Serenevy","author_email":"dean@serenevy.net","date":"Thu Jul 9 12:44:41 2020 -0400","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"Remove dependency on 3rd party packaging library","epoch":1594323881,"epoch_utc":null},{"commit":"ddafa5bf06066bab8e9587be902d6752fcf51605","author":"Dean Serenevy","author_email":"dean@serenevy.net","date":"Thu Jul 9 11:27:01 2020 -0400","stats":{"files_changed":2,"insertions":47,"deletions":7,"files":["jc/cli.py","setup.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":52},{"name":"setup.py","lines_changed":2}]},"message":"Support older pygments","epoch":1594319221,"epoch_utc":null},{"commit":"bc7116c31bacf3159aef775fd0e615187420b010","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 08:30:10 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":8,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":15}]},"message":"fix JC_COLORS env bug and simplify set_env_colors()","epoch":1594308610,"epoch_utc":null},{"commit":"53b709272115e769dac905296fa3b000c1cdd66a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 8 16:40:28 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":11,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":22}]},"message":"remove side-effects from functions and print in main()","epoch":1594251628,"epoch_utc":null},{"commit":"beb9174b1b35937ae1fb99778369ae643a8f1005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 8 15:42:06 2020 -0700","stats":{"files_changed":1,"insertions":123,"deletions":0,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":123}]},"message":"add sysctl parser","epoch":1594248126,"epoch_utc":null},{"commit":"aea41ed341c8d53cc07c35e8044e8f816ddd2fed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 8 15:41:46 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":11}]},"message":"move verbose_debug enable earlier in code to catch more issues. add sysctl and version bump","epoch":1594248106,"epoch_utc":null},{"commit":"d789494cb1f691aa352419aaefc692f654477177","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 8 05:59:19 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/tracebackplus.py"],"file_stats":[{"name":"jc/tracebackplus.py","lines_changed":2}]},"message":"change type check to use isinstance","epoch":1594213159,"epoch_utc":null},{"commit":"608e7b4cff081f92177e4151ffa1a91a4a6895ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 6 10:52:12 2020 -0700","stats":{"files_changed":1,"insertions":61,"deletions":0,"files":["jc/tracebackplus.py"],"file_stats":[{"name":"jc/tracebackplus.py","lines_changed":61}]},"message":"add license info","epoch":1594057932,"epoch_utc":null},{"commit":"4ee199c02a78c2707c5d1427d7c8fae56df5671c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 6 10:41:01 2020 -0700","stats":{"files_changed":2,"insertions":189,"deletions":3,"files":["jc/cli.py","jc/tracebackplus.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6},{"name":"jc/tracebackplus.py","lines_changed":186}]},"message":"use tracebackplus instead of cgitb since cgitb is depricated","epoch":1594057261,"epoch_utc":null},{"commit":"fbf47d408501dadda4671fb530f5e11859e85d53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 1 13:28:58 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add arch linux","epoch":1593635338,"epoch_utc":null},{"commit":"5a238e4b4204f0552327534ef798c28d3ad4f578","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 1 09:11:32 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"remove updates-testing from fedora command","epoch":1593619892,"epoch_utc":null},{"commit":"f852b8246a8f9e5f7d9144fed3a0daa4eddfe035","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 11:50:37 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":3}]},"message":"wrap warning message","epoch":1593543037,"epoch_utc":null},{"commit":"88140d929a500ee78f807862c4912c399df2a460","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 11:37:33 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"wrap error message in code","epoch":1593542253,"epoch_utc":null},{"commit":"45f726824027af49c437b6e81e4700f7098af320","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 11:34:08 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add -dd to error message","epoch":1593542048,"epoch_utc":null},{"commit":"3a3c8e4d4a77135eaee5cb30c3107a4531c300ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 11:31:08 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]},"message":"move verbose_debug under debug check","epoch":1593541868,"epoch_utc":null},{"commit":"c1ac183a0472e93226c9ee1905f56c5183e3721f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 11:26:09 2020 -0700","stats":{"files_changed":1,"insertions":15,"deletions":22,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":37}]},"message":"simplify debug option","epoch":1593541569,"epoch_utc":null},{"commit":"18bb779ee5cd5821764b03173f16e922f753c64d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 09:39:05 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"formatting: double quotes to single quotes","epoch":1593535145,"epoch_utc":null},{"commit":"8b6612fe7911ab9e0bf8d29be60865d3b8aa3fd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 07:56:34 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"move JC_COLORS parsing error message","epoch":1593528994,"epoch_utc":null},{"commit":"fde0bc853415418e01616861ace5048770bd97f8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jun 27 18:53:19 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":34,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":43}]},"message":"improve package install info","epoch":1593309199,"epoch_utc":null},{"commit":"e661a78939ff067b8a61f08301c178dd10a344ab","merge":"b969751 847e346","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jun 27 18:43:02 2020 -0700","message":"Merge pull request #71 from wigust/guix\n\nadd guix package info","epoch":1593308582,"epoch_utc":null},{"commit":"847e346602789bf58e3515319e9d080dfb897fc9","author":"Oleg Pykhalov","author_email":"go.wigust@gmail.com","date":"Sat Jun 27 12:58:59 2020 +0300","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"add guix package info","epoch":1593287939,"epoch_utc":null},{"commit":"b9697516887c61f08d8d7b1dc9130350e5bdba9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 26 09:53:57 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"add other references","epoch":1593190437,"epoch_utc":null},{"commit":"ad6f2ba03a293a7f55e456fa5f5b55ee3cbcd4ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 21:16:52 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1593145012,"epoch_utc":null},{"commit":"63c6a5edc0e9001b143595fd8b96f1b4a1377a3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 21:12:30 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"formatting","epoch":1593144750,"epoch_utc":null},{"commit":"9f4cf9dd5efe94adfff0961fdb73097ca27c5463","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 21:11:21 2020 -0700","stats":{"files_changed":1,"insertions":197,"deletions":67,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":264}]},"message":"formatting","epoch":1593144681,"epoch_utc":null},{"commit":"51331b6dc01eee00847fa4be549ffde365373a01","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 13:01:10 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":5}]},"message":"formatting","epoch":1593115270,"epoch_utc":null},{"commit":"efb6761033319644bf9cdae6288ff5609f6482ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 12:59:56 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1593115196,"epoch_utc":null},{"commit":"6a4f737a0f1c322bebccf69809d9816fc770c5ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 12:56:06 2020 -0700","stats":{"files_changed":1,"insertions":88,"deletions":115,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":203}]},"message":"update json syntax highlighting","epoch":1593114966,"epoch_utc":null},{"commit":"be6864b778ab721bcba5fc3221576153be7b2ed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 12:28:23 2020 -0700","stats":{"files_changed":1,"insertions":26,"deletions":26,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":52}]},"message":"add syntax highlighting tags","epoch":1593113303,"epoch_utc":null},{"commit":"de3b91a36cfcaf565b26b1da42f1e87835da4dc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 07:38:39 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add -dd option","epoch":1593095919,"epoch_utc":null},{"commit":"ef5482c3b5afa0ee8e85851bebab1c104cb59936","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 07:29:28 2020 -0700","stats":{"files_changed":3,"insertions":15,"deletions":7,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":17},{"name":"setup.py","lines_changed":2}]},"message":"add verbose debug option","epoch":1593095368,"epoch_utc":null},{"commit":"d20b795137036f8b889eb231cb4f14b756ec6479","merge":"69018cd 8a13406","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 11:28:23 2020 -0700","message":"Merge pull request #70 from kellyjonbrazil/dev\n\nDev v1.11.7","epoch":1592850503,"epoch_utc":null},{"commit":"8a134065dff429551449c1ea16a36d745fdab580","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 11:23:37 2020 -0700","stats":{"files_changed":12,"insertions":12,"deletions":12,"files":["tests/fixtures/centos-7.7/iptables-filter-line-numbers.json","tests/fixtures/centos-7.7/iptables-filter-nv.json","tests/fixtures/centos-7.7/iptables-filter.json","tests/fixtures/centos-7.7/iptables-mangle.json","tests/fixtures/centos-7.7/iptables-nat.json","tests/fixtures/centos-7.7/iptables-raw.json","tests/fixtures/ubuntu-18.04/iptables-filter-line-numbers.json","tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","tests/fixtures/ubuntu-18.04/iptables-filter.json","tests/fixtures/ubuntu-18.04/iptables-mangle.json","tests/fixtures/ubuntu-18.04/iptables-nat.json","tests/fixtures/ubuntu-18.04/iptables-raw.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/iptables-filter-line-numbers.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-filter-nv.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-filter.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-mangle.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-nat.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-raw.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter-line-numbers.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-mangle.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-nat.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-raw.json","lines_changed":2}]},"message":"update fixtures for last chain fix","epoch":1592850217,"epoch_utc":null},{"commit":"22aee1bfa40ed1d3c4df28cd934ef0edfc5c458c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 11:23:15 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1592850195,"epoch_utc":null},{"commit":"b282820fd67dcc96c058198f97b066e7b402d1f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 11:09:09 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":3}]},"message":"fix to include the final chain in output","epoch":1592849349,"epoch_utc":null},{"commit":"3ee098306daf903687cb0febf92773a81e216111","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 10:48:51 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":2}]},"message":"version bump","epoch":1592848131,"epoch_utc":null},{"commit":"09e8f379a64b3b37bb99b4291c10aa4a5cdedea4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 10:47:34 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":11,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":20}]},"message":"iptables code optimizations","epoch":1592848054,"epoch_utc":null},{"commit":"69018cdb3a77fcdcb5648e3b89933148c55a6412","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 14 17:39:14 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"fix date","epoch":1592181554,"epoch_utc":null},{"commit":"d0d7254c6acc7be4341618d231a5b166f640b287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 14 17:23:10 2020 -0700","stats":{"files_changed":2,"insertions":26,"deletions":0,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":15},{"name":"jc/utils.py","lines_changed":11}]},"message":"add docstring","epoch":1592180590,"epoch_utc":null},{"commit":"cc0f0971d76b6f3dec8d989e83f5676db8f2c6d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 14 17:17:40 2020 -0700","stats":{"files_changed":56,"insertions":476,"deletions":439,"files":["changelog.txt","jc/cli.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/utils.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":10},{"name":"jc/parsers/airport_s.py","lines_changed":4},{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/blkid.py","lines_changed":5},{"name":"jc/parsers/crontab.py","lines_changed":5},{"name":"jc/parsers/crontab_u.py","lines_changed":5},{"name":"jc/parsers/csv.py","lines_changed":5},{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":193},{"name":"jc/parsers/dmidecode.py","lines_changed":264},{"name":"jc/parsers/du.py","lines_changed":8},{"name":"jc/parsers/env.py","lines_changed":8},{"name":"jc/parsers/file.py","lines_changed":39},{"name":"jc/parsers/foo.py","lines_changed":8},{"name":"jc/parsers/free.py","lines_changed":5},{"name":"jc/parsers/fstab.py","lines_changed":5},{"name":"jc/parsers/group.py","lines_changed":5},{"name":"jc/parsers/gshadow.py","lines_changed":5},{"name":"jc/parsers/history.py","lines_changed":26},{"name":"jc/parsers/hosts.py","lines_changed":8},{"name":"jc/parsers/id.py","lines_changed":8},{"name":"jc/parsers/ifconfig.py","lines_changed":18},{"name":"jc/parsers/ini.py","lines_changed":5},{"name":"jc/parsers/iptables.py","lines_changed":44},{"name":"jc/parsers/jobs.py","lines_changed":8},{"name":"jc/parsers/last.py","lines_changed":8},{"name":"jc/parsers/ls.py","lines_changed":5},{"name":"jc/parsers/lsblk.py","lines_changed":8},{"name":"jc/parsers/lsmod.py","lines_changed":5},{"name":"jc/parsers/lsof.py","lines_changed":9},{"name":"jc/parsers/mount.py","lines_changed":9},{"name":"jc/parsers/netstat.py","lines_changed":8},{"name":"jc/parsers/ntpq.py","lines_changed":5},{"name":"jc/parsers/passwd.py","lines_changed":8},{"name":"jc/parsers/pip_list.py","lines_changed":9},{"name":"jc/parsers/pip_show.py","lines_changed":9},{"name":"jc/parsers/ps.py","lines_changed":6},{"name":"jc/parsers/route.py","lines_changed":6},{"name":"jc/parsers/shadow.py","lines_changed":8},{"name":"jc/parsers/ss.py","lines_changed":8},{"name":"jc/parsers/stat.py","lines_changed":7},{"name":"jc/parsers/systemctl.py","lines_changed":8},{"name":"jc/parsers/systemctl_lj.py","lines_changed":8},{"name":"jc/parsers/systemctl_ls.py","lines_changed":8},{"name":"jc/parsers/systemctl_luf.py","lines_changed":8},{"name":"jc/parsers/timedatectl.py","lines_changed":14},{"name":"jc/parsers/uname.py","lines_changed":6},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/w.py","lines_changed":5},{"name":"jc/parsers/who.py","lines_changed":8},{"name":"jc/parsers/xml.py","lines_changed":5},{"name":"jc/parsers/yaml.py","lines_changed":11},{"name":"jc/utils.py","lines_changed":4},{"name":"setup.py","lines_changed":2}]},"message":"Improve and standardize empty data check for all parsers","epoch":1592180260,"epoch_utc":null},{"commit":"2af61730f0f5b9bc6f1f4c5d9d808ff6ccb0faeb","merge":"07b179c 83f41b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 12 12:34:34 2020 -0700","message":"Merge pull request #68 from kellyjonbrazil/dev\n\nDev v1.11.5","epoch":1591990474,"epoch_utc":null},{"commit":"83f41b83dc01c462c6a2295e9fc56ad42a3b62f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 12 12:30:19 2020 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1591990219,"epoch_utc":null},{"commit":"1fb84fce88e0306c26a5771fa4c6dc14a21409a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 12 12:25:07 2020 -0700","stats":{"files_changed":16,"insertions":137,"deletions":67,"files":["changelog.txt","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/xml.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py","tests/test_timedatectl.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py","tests/test_who.py","tests/test_xml.py","tests/test_yaml.py"],"file_stats":[{"name":"changelog.txt","lines_changed":5},{"name":"jc/parsers/systemctl_lj.py","lines_changed":3},{"name":"jc/parsers/systemctl_ls.py","lines_changed":33},{"name":"jc/parsers/systemctl_luf.py","lines_changed":35},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/w.py","lines_changed":63},{"name":"jc/parsers/xml.py","lines_changed":6},{"name":"tests/test_systemctl_ls.py","lines_changed":6},{"name":"tests/test_systemctl_luf.py","lines_changed":6},{"name":"tests/test_timedatectl.py","lines_changed":6},{"name":"tests/test_uname.py","lines_changed":6},{"name":"tests/test_uptime.py","lines_changed":6},{"name":"tests/test_w.py","lines_changed":6},{"name":"tests/test_who.py","lines_changed":6},{"name":"tests/test_xml.py","lines_changed":6},{"name":"tests/test_yaml.py","lines_changed":6}]},"message":"fix for no data","epoch":1591989907,"epoch_utc":null},{"commit":"a8837e12447c52dbe438b19c07777b9b4a22081c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 12 07:57:40 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"remove --upgrade from pip install","epoch":1591973860,"epoch_utc":null},{"commit":"04d2eec5581998d1a80e762b670af76c92111065","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 11 17:59:06 2020 -0700","stats":{"files_changed":6,"insertions":56,"deletions":30,"files":["changelog.txt","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","tests/test_stat.py","tests/test_systemctl.py","tests/test_systemctl_lj.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":33},{"name":"jc/parsers/systemctl_lj.py","lines_changed":33},{"name":"tests/test_stat.py","lines_changed":6},{"name":"tests/test_systemctl.py","lines_changed":6},{"name":"tests/test_systemctl_lj.py","lines_changed":6}]},"message":"fix for no data","epoch":1591923546,"epoch_utc":null},{"commit":"1b57ec92f052ddc8959540511512190a539262b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 11 17:52:03 2020 -0700","stats":{"files_changed":21,"insertions":152,"deletions":68,"files":["changelog.txt","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/pip_list.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","tests/fixtures/centos-7.7/ss-sudo-a.json","tests/fixtures/ubuntu-18.04/ss-sudo-a.json","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_ntpq.py","tests/test_passwd.py","tests/test_pip_list.py","tests/test_pip_show.py","tests/test_ps.py","tests/test_route.py","tests/test_shadow.py","tests/test_ss.py"],"file_stats":[{"name":"changelog.txt","lines_changed":8},{"name":"jc/parsers/mount.py","lines_changed":3},{"name":"jc/parsers/netstat.py","lines_changed":41},{"name":"jc/parsers/ntpq.py","lines_changed":35},{"name":"jc/parsers/pip_list.py","lines_changed":31},{"name":"jc/parsers/ps.py","lines_changed":9},{"name":"jc/parsers/route.py","lines_changed":9},{"name":"jc/parsers/ss.py","lines_changed":14},{"name":"tests/fixtures/centos-7.7/ss-sudo-a.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ss-sudo-a.json","lines_changed":2},{"name":"tests/test_lsof.py","lines_changed":6},{"name":"tests/test_mount.py","lines_changed":6},{"name":"tests/test_netstat.py","lines_changed":6},{"name":"tests/test_ntpq.py","lines_changed":6},{"name":"tests/test_passwd.py","lines_changed":6},{"name":"tests/test_pip_list.py","lines_changed":6},{"name":"tests/test_pip_show.py","lines_changed":6},{"name":"tests/test_ps.py","lines_changed":6},{"name":"tests/test_route.py","lines_changed":6},{"name":"tests/test_shadow.py","lines_changed":6},{"name":"tests/test_ss.py","lines_changed":6}]},"message":"fix for no data","epoch":1591923123,"epoch_utc":null},{"commit":"4d8859540417e99e273fda2cea959240f3c37ea3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 11 17:16:11 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":2}]},"message":"enhance empty data check","epoch":1591920971,"epoch_utc":null},{"commit":"52b1272a3aab09b5a8c4a277fbf9975a1b8b6921","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 11 17:13:45 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":2}]},"message":"enhance empty data check","epoch":1591920825,"epoch_utc":null},{"commit":"d2ccad6a83138fbf6eb863634fd354dc6c3fa238","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 11 17:09:51 2020 -0700","stats":{"files_changed":4,"insertions":33,"deletions":15,"files":["jc/parsers/lsblk.py","jc/parsers/lsmod.py","tests/test_lsblk.py","tests/test_lsmod.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":21},{"name":"jc/parsers/lsmod.py","lines_changed":15},{"name":"tests/test_lsblk.py","lines_changed":6},{"name":"tests/test_lsmod.py","lines_changed":6}]},"message":"fix for no data","epoch":1591920591,"epoch_utc":null},{"commit":"cad6dde4ac66cf970a7f52d8e7958ea35c083629","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:54:06 2020 -0700","stats":{"files_changed":10,"insertions":60,"deletions":0,"files":["tests/test_group.py","tests/test_gshadow.py","tests/test_history.py","tests/test_hosts.py","tests/test_id.py","tests/test_ifconfig.py","tests/test_ini.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_last.py"],"file_stats":[{"name":"tests/test_group.py","lines_changed":6},{"name":"tests/test_gshadow.py","lines_changed":6},{"name":"tests/test_history.py","lines_changed":6},{"name":"tests/test_hosts.py","lines_changed":6},{"name":"tests/test_id.py","lines_changed":6},{"name":"tests/test_ifconfig.py","lines_changed":6},{"name":"tests/test_ini.py","lines_changed":6},{"name":"tests/test_iptables.py","lines_changed":6},{"name":"tests/test_jobs.py","lines_changed":6},{"name":"tests/test_last.py","lines_changed":6}]},"message":"fix for no data","epoch":1591836846,"epoch_utc":null},{"commit":"06811c3539b0d871e13e9b8d3b51f731d06fd2ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:41:54 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_fstab.py"],"file_stats":[{"name":"tests/test_fstab.py","lines_changed":6}]},"message":"add test for no data","epoch":1591836114,"epoch_utc":null},{"commit":"0cb23c2b21f464082609409261de8e95eb1b0d55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:40:18 2020 -0700","stats":{"files_changed":3,"insertions":17,"deletions":7,"files":["changelog.txt","jc/parsers/free.py","tests/test_free.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/free.py","lines_changed":17},{"name":"tests/test_free.py","lines_changed":6}]},"message":"add fix for no data","epoch":1591836018,"epoch_utc":null},{"commit":"ac4688dca22334385ec2c87027f2f14f9ca93ce4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:35:40 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_file.py"],"file_stats":[{"name":"tests/test_file.py","lines_changed":6}]},"message":"add test for no data","epoch":1591835740,"epoch_utc":null},{"commit":"326c3b4670a0e47cbe2988b38fb1c1b26a4db890","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:34:22 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_env.py"],"file_stats":[{"name":"tests/test_env.py","lines_changed":6}]},"message":"add test for no data","epoch":1591835662,"epoch_utc":null},{"commit":"9b29d0c2688eda2e4707aeba693ed14fa433a706","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:32:39 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_du.py"],"file_stats":[{"name":"tests/test_du.py","lines_changed":6}]},"message":"add test for no data","epoch":1591835559,"epoch_utc":null},{"commit":"e0013c38710b4ecf3a588a16d1d908effc23b485","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:31:14 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["tests/test_dmidecode.py"],"file_stats":[{"name":"tests/test_dmidecode.py","lines_changed":5}]},"message":"add test for no data","epoch":1591835474,"epoch_utc":null},{"commit":"a75744075b0628bdb711d8a929a759b4b4067edb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:29:41 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_dig.py"],"file_stats":[{"name":"tests/test_dig.py","lines_changed":6}]},"message":"add no data test","epoch":1591835381,"epoch_utc":null},{"commit":"525aec1a02380f17ab7827434616f981f7457bd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:27:46 2020 -0700","stats":{"files_changed":3,"insertions":16,"deletions":7,"files":["changelog.txt","jc/parsers/df.py","tests/test_df.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":16},{"name":"tests/test_df.py","lines_changed":6}]},"message":"fix for no data","epoch":1591835266,"epoch_utc":null},{"commit":"0bf9a7a072a80e10a29c6bb3943b107352dc1d45","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:22:59 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_csv.py"],"file_stats":[{"name":"tests/test_csv.py","lines_changed":6}]},"message":"add test for no data","epoch":1591834979,"epoch_utc":null},{"commit":"d8f2f4c95bc699386b9fe93d10e13637875a1dcf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:20:09 2020 -0700","stats":{"files_changed":5,"insertions":96,"deletions":80,"files":["changelog.txt","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/test_crontab.py","tests/test_crontab_u.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":79},{"name":"jc/parsers/crontab_u.py","lines_changed":83},{"name":"tests/test_crontab.py","lines_changed":6},{"name":"tests/test_crontab_u.py","lines_changed":6}]},"message":"fix for no data","epoch":1591834809,"epoch_utc":null},{"commit":"35d733b44f3705bed3dd8ce340379470f199f772","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:10:53 2020 -0700","stats":{"files_changed":5,"insertions":70,"deletions":60,"files":["changelog.txt","jc/parsers/arp.py","jc/parsers/blkid.py","tests/test_arp.py","tests/test_blkid.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":112},{"name":"jc/parsers/blkid.py","lines_changed":4},{"name":"tests/test_arp.py","lines_changed":6},{"name":"tests/test_blkid.py","lines_changed":6}]},"message":"fix for no data","epoch":1591834253,"epoch_utc":null},{"commit":"9179b4175c5063bed14ecb96ba24c517920c0d94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 16:40:11 2020 -0700","stats":{"files_changed":3,"insertions":16,"deletions":0,"files":["changelog.txt","tests/test_airport.py","tests/test_airport_s.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"tests/test_airport.py","lines_changed":6},{"name":"tests/test_airport_s.py","lines_changed":6}]},"message":"add nodata tests","epoch":1591832411,"epoch_utc":null},{"commit":"bb07d78c78ff5c5b2ee4d2086ffc6dd5ebedf0fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 16:39:49 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":8,"files":["jc/parsers/airport_s.py"],"file_stats":[{"name":"jc/parsers/airport_s.py","lines_changed":18}]},"message":"add nodata fix","epoch":1591832389,"epoch_utc":null},{"commit":"07b179cd7f8853ff6aca0b27a703e198c158ca72","merge":"12a80e7 054422d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 06:07:42 2020 -0700","message":"Merge pull request #67 from kellyjonbrazil/Dev\n\nDev v1.11.4","epoch":1591794462,"epoch_utc":null},{"commit":"054422d8373e7b8def18ddabd447062cb9cc3137","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 06:04:50 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_ls.py"],"file_stats":[{"name":"tests/test_ls.py","lines_changed":6}]},"message":"add test for empty directory","epoch":1591794290,"epoch_utc":null},{"commit":"3e052d18102e98a09cbba21866855691eaccc216","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 05:53:20 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1591793600,"epoch_utc":null},{"commit":"c8e72805cf9def478b56c925f4afcc0ece1daac0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 05:51:12 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":10,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":19}]},"message":"fix error on empty directory","epoch":1591793472,"epoch_utc":null},{"commit":"12a80e7db0f6c7d536674ad8d34e26bba9a1f1f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 9 15:13:53 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":12}]},"message":"add fedora package info","epoch":1591740833,"epoch_utc":null},{"commit":"ee7ff9a09d3373f60ae1645376ccc0057803147e","merge":"346a14c f6478fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 9 11:22:39 2020 -0700","message":"Merge pull request #66 from kellyjonbrazil/dev\n\nDev v1.11.3","epoch":1591726959,"epoch_utc":null},{"commit":"f6478fb636ead8d1e53e4a88d59e55222df37a8f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 9 11:18:47 2020 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1591726727,"epoch_utc":null},{"commit":"811a0b0495819925199d70db266066197cc6824e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 8 10:54:42 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add info regarding the local parser plugin files","epoch":1591638882,"epoch_utc":null},{"commit":"aeb48edf727f23cc4f8fd9b760cfb69f03098278","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 8 10:48:58 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"use $LOCALAPPDATA variable for windows","epoch":1591638538,"epoch_utc":null},{"commit":"b1e94f0df7041bcae97455508f423178aef9d61d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 8 10:44:09 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"heading formatting","epoch":1591638249,"epoch_utc":null},{"commit":"60050e3c0fe34980f7db5b8bd46430f953f0c3a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 8 10:42:45 2020 -0700","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":26}]},"message":"fix linux/unix directory and add note about the XDG specification followed","epoch":1591638165,"epoch_utc":null},{"commit":"39ef09aa5b0d43b5128299511afe80336aa38203","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 13:30:22 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add local parser plugin feature","epoch":1591561822,"epoch_utc":null},{"commit":"8377d4311611c242e16eaebe66dafac9529150d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 13:26:03 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1591561563,"epoch_utc":null},{"commit":"54e4c447ab34ae54c73c92df40f1b4ca6ffb2277","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:52:16 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":10}]},"message":"clean up formatting","epoch":1591559536,"epoch_utc":null},{"commit":"937a9fa9cf2ede8e686ba853989f33e4a483a0ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:41:50 2020 -0700","stats":{"files_changed":4,"insertions":613,"deletions":3,"files":["jc/appdirs.py","jc/cli.py","requirements.txt","setup.py"],"file_stats":[{"name":"jc/appdirs.py","lines_changed":611},{"name":"jc/cli.py","lines_changed":3},{"name":"requirements.txt","lines_changed":1},{"name":"setup.py","lines_changed":1}]},"message":"vendorize appdirs module","epoch":1591558910,"epoch_utc":null},{"commit":"808ff6cf0e784cf0c2d523ff2e01197cb6e88c82","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:29:10 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":12}]},"message":"more acknowledgments updates","epoch":1591558150,"epoch_utc":null},{"commit":"7f5c649a95a871c3cd8d48731a6d26dcba6f725b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:23:28 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update acknowledgments","epoch":1591557808,"epoch_utc":null},{"commit":"b72727dec995de1ca5f68ee17a710b086c87d612","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:13:40 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":11}]},"message":"update custom parsers info","epoch":1591557220,"epoch_utc":null},{"commit":"3fc88bfb334143b68a9cb78d4034f33e7c0bcf76","merge":"346a14c 9f2279d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:04:44 2020 -0700","message":"Merge pull request #65 from duelafn/local-parsers\n\nLoad custom parsers from /jc/jcparsers","epoch":1591556684,"epoch_utc":null},{"commit":"9f2279d5867eb89d4b4b7b4ffca290166ec97c48","author":"Dean Serenevy","author_email":"dean@serenevy.net","date":"Sat Jun 6 14:30:40 2020 -0400","stats":{"files_changed":4,"insertions":29,"deletions":2,"files":["README.md","jc/cli.py","requirements.txt","setup.py"],"file_stats":[{"name":"README.md","lines_changed":7},{"name":"jc/cli.py","lines_changed":22},{"name":"requirements.txt","lines_changed":1},{"name":"setup.py","lines_changed":1}]},"message":"Load custom parsers from /jc/jcparsers","epoch":1591479040,"epoch_utc":null},{"commit":"346a14cb9bb0d762fc3fa366ad97e5ff85f3992a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:44:14 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"change osx_device to unix_device","epoch":1590896654,"epoch_utc":null},{"commit":"dac00d17ff9f3d2bb959697b6e567015bfc2702b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:33:50 2020 -0700","stats":{"files_changed":3,"insertions":17,"deletions":0,"files":["tests/fixtures/nixos/route-ee.json","tests/fixtures/nixos/route-ee.out","tests/test_route.py"],"file_stats":[{"name":"tests/fixtures/nixos/route-ee.json","lines_changed":1},{"name":"tests/fixtures/nixos/route-ee.out","lines_changed":4},{"name":"tests/test_route.py","lines_changed":12}]},"message":"add nixos test","epoch":1590896030,"epoch_utc":null},{"commit":"9ca7cd40601b97829e8f88071fdfb928d939f7e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:33:39 2020 -0700","stats":{"files_changed":1,"insertions":17,"deletions":34,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":51}]},"message":"update docs","epoch":1590896019,"epoch_utc":null},{"commit":"aa31628970b12295a41dff20e829fcce9f8a4d07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:33:00 2020 -0700","stats":{"files_changed":5,"insertions":70,"deletions":63,"files":["README.md","docs/parsers/netstat.md","docs/parsers/route.md","docs/parsers/stat.md","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":46},{"name":"docs/parsers/netstat.md","lines_changed":16},{"name":"docs/parsers/route.md","lines_changed":51},{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":16}]},"message":"update docs","epoch":1590895980,"epoch_utc":null},{"commit":"bed694fcf5c8c31bbd4f3e88759fe7ab82382d24","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:13:21 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1590894801,"epoch_utc":null},{"commit":"4b4af69fa184896ec15b5be7dc8416f36f921d5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:12:51 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"fix date","epoch":1590894771,"epoch_utc":null},{"commit":"9d96190a5b19e8d71c3ac66eb0303d269dd4ce5d","merge":"96df396 fa44d48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:08:32 2020 -0700","message":"Merge pull request #64 from kellyjonbrazil/dev\n\nDev v1.11.2","epoch":1590894512,"epoch_utc":null},{"commit":"fa44d48c094a55e499c2c780d109bf277736b42e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 19:50:38 2020 -0700","stats":{"files_changed":6,"insertions":129,"deletions":7,"files":["changelog.txt","jc/parsers/stat.py","tests/fixtures/freebsd12/stat.json","tests/fixtures/freebsd12/stat.out","tests/fixtures/osx-10.14.6/stat.json","tests/test_stat.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":12},{"name":"tests/fixtures/freebsd12/stat.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/stat.out","lines_changed":107},{"name":"tests/fixtures/osx-10.14.6/stat.json","lines_changed":2},{"name":"tests/test_stat.py","lines_changed":12}]},"message":"freebsd fixes, tests, and fixtures","epoch":1590893438,"epoch_utc":null},{"commit":"4ef961c2788c935b1fea1c9777b976e7b89e7367","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 19:18:01 2020 -0700","stats":{"files_changed":3,"insertions":20,"deletions":0,"files":["tests/fixtures/freebsd12/ntpq-p.json","tests/fixtures/freebsd12/ntpq-p.out","tests/test_ntpq.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/ntpq-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ntpq-p.out","lines_changed":7},{"name":"tests/test_ntpq.py","lines_changed":12}]},"message":"add freebsd test and fixtures","epoch":1590891481,"epoch_utc":null},{"commit":"292a837d5c47165ccb155f079b0a114b5c17a98e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 18:54:09 2020 -0700","stats":{"files_changed":3,"insertions":22,"deletions":0,"files":["tests/fixtures/freebsd12/last.json","tests/fixtures/freebsd12/last.out","tests/test_last.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/last.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/last.out","lines_changed":9},{"name":"tests/test_last.py","lines_changed":12}]},"message":"add tests and fixtures for freebsd12","epoch":1590890049,"epoch_utc":null},{"commit":"aa7b915d847dbd29d2c09b2cc40b847e37174ffb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 18:53:46 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":2}]},"message":"version bump","epoch":1590890026,"epoch_utc":null},{"commit":"c46fe73236b912d2ee89dfb36ff259fe95fd0479","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 18:53:35 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"add last fixes for freebsd","epoch":1590890015,"epoch_utc":null},{"commit":"039b2c129cbe79d2d23b1194b043d8b730609956","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 18:42:26 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":1,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":11}]},"message":"freebsd fixes","epoch":1590889346,"epoch_utc":null},{"commit":"8f2e5e4808b30c658a4cb87125639e4d7d6c15d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 17:46:09 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"fix compatible logic","epoch":1590885969,"epoch_utc":null},{"commit":"c4da8e4f78e6b4aaa4aff76ae042be9aaec832a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 17:05:41 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":12}]},"message":"add nixos and freebsd to tested. update new arp fields","epoch":1590883541,"epoch_utc":null},{"commit":"bcab9078a4c2bfd6ae4dca9448b577d9ed0fc01c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 17:02:09 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"add w parser fix","epoch":1590883329,"epoch_utc":null},{"commit":"b3c6c1ea925bf7cd76368f5074fb8af52a844522","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 17:01:59 2020 -0700","stats":{"files_changed":4,"insertions":29,"deletions":5,"files":["jc/parsers/w.py","tests/fixtures/nixos/w.json","tests/fixtures/nixos/w.out","tests/test_w.py"],"file_stats":[{"name":"jc/parsers/w.py","lines_changed":8},{"name":"tests/fixtures/nixos/w.json","lines_changed":1},{"name":"tests/fixtures/nixos/w.out","lines_changed":5},{"name":"tests/test_w.py","lines_changed":20}]},"message":"strip whitespace in string fields and add tests","epoch":1590883319,"epoch_utc":null},{"commit":"a3af8662bd491e344c93d24afabd23e90efd8086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 16:26:07 2020 -0700","stats":{"files_changed":3,"insertions":205,"deletions":3,"files":["tests/fixtures/osx-10.11.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a2.json"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/arp-a.json","lines_changed":107},{"name":"tests/fixtures/osx-10.14.6/arp-a.json","lines_changed":99},{"name":"tests/fixtures/osx-10.14.6/arp-a2.json","lines_changed":2}]},"message":"add permanent field","epoch":1590881167,"epoch_utc":null},{"commit":"35940d0bc80bf61b11f40b1e1043835f26eb391c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 16:25:53 2020 -0700","stats":{"files_changed":6,"insertions":59,"deletions":4,"files":["changelog.txt","docs/parsers/arp.md","jc/parsers/arp.py","tests/fixtures/freebsd12/arp-a.json","tests/fixtures/freebsd12/arp-a.out","tests/test_arp.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":12},{"name":"jc/parsers/arp.py","lines_changed":33},{"name":"tests/fixtures/freebsd12/arp-a.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/arp-a.out","lines_changed":3},{"name":"tests/test_arp.py","lines_changed":12}]},"message":"add freebsd permanent and expires fields","epoch":1590881153,"epoch_utc":null},{"commit":"26994cdcb7148d2c9d1701bca9541d247356260b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:51:54 2020 -0700","stats":{"files_changed":8,"insertions":115,"deletions":85,"files":["docs/parsers/df.md","docs/parsers/fstab.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/route.md","docs/parsers/stat.md","docs/parsers/uname.md"],"file_stats":[{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":163},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":25},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2}]},"message":"add freebsd compatibility info","epoch":1590879114,"epoch_utc":null},{"commit":"017159a829691cb6a7174f123d024eb252179b75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:51:06 2020 -0700","stats":{"files_changed":15,"insertions":221,"deletions":0,"files":["tests/fixtures/freebsd12/netstat-Aa.json","tests/fixtures/freebsd12/netstat-AaT.json","tests/fixtures/freebsd12/netstat-AaT.out","tests/fixtures/freebsd12/netstat-AanP.json","tests/fixtures/freebsd12/netstat-AanP.out","tests/fixtures/freebsd12/netstat-Aax.json","tests/fixtures/freebsd12/netstat-Aax.out","tests/fixtures/freebsd12/netstat-aT.json","tests/fixtures/freebsd12/netstat-aT.out","tests/fixtures/freebsd12/netstat-an.json","tests/fixtures/freebsd12/netstat-i.json","tests/fixtures/freebsd12/netstat-ib.json","tests/fixtures/freebsd12/netstat-ib.out","tests/fixtures/freebsd12/netstat-r.json","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/netstat-Aa.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-AaT.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-AaT.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-AanP.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-AanP.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-Aax.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-Aax.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-aT.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-aT.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-an.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-i.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-ib.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-ib.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/netstat-r.json","lines_changed":1},{"name":"tests/test_netstat.py","lines_changed":108}]},"message":"add freebsd nestat tests and fixtures","epoch":1590879066,"epoch_utc":null},{"commit":"b4e9c85e08d199dad67f03c7603194278a022696","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:50:45 2020 -0700","stats":{"files_changed":1,"insertions":12,"deletions":0,"files":["jc/parsers/netstat_freebsd_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_freebsd_osx.py","lines_changed":12}]},"message":"fixup -T freebsd output and add whitespace stripping to parse_post","epoch":1590879045,"epoch_utc":null},{"commit":"189146cd84cfad262f2b2601bb0cb4b9dde2587e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:50:07 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":10}]},"message":"add more ints. remove whitespace strip code and move to freebsd_osx module","epoch":1590879007,"epoch_utc":null},{"commit":"af34153ffab10ca1ad7f44736d379d91ae43c813","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:48:56 2020 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["changelog.txt","jc/cli.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2}]},"message":"version bump","epoch":1590878936,"epoch_utc":null},{"commit":"bf2ff3ffbb639446779b1f04f2997707d99c0a1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:48:29 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":9}]},"message":"fix compatibility search for platform names that append the version number (e.g. freebsd12)","epoch":1590878909,"epoch_utc":null},{"commit":"6423c9efd69e938af38934a97ca6b65009e8f07e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 15:48:51 2020 -0700","stats":{"files_changed":1,"insertions":34,"deletions":5,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":39}]},"message":"integer and float updates","epoch":1590792531,"epoch_utc":null},{"commit":"58ab0d4ece7f006ce9431afb9e0fecbe60930be7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 15:14:44 2020 -0700","stats":{"files_changed":4,"insertions":12,"deletions":4,"files":["changelog.txt","jc/parsers/netstat.py","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":11},{"name":"tests/fixtures/osx-10.14.6/netstat-An.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat.json","lines_changed":2}]},"message":"strip whitespace from string fields","epoch":1590790484,"epoch_utc":null},{"commit":"83a738bf4d756036d6269b9153220d7f1018ac9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 14:16:11 2020 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/netstat-Abn.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-An.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat.json","lines_changed":2}]},"message":"update fixtures for osx_flags and osx_inode name change to unix_flags and unix_inode","epoch":1590786971,"epoch_utc":null},{"commit":"3640671fc6a67c9628fd47e19e9fe0a0738439ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 14:15:28 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/{netstat_osx.py => netstat_freebsd_osx.py}"],"file_stats":[{"name":"jc/parsers/{netstat_osx.py => netstat_freebsd_osx.py}","lines_changed":10}]},"message":"rename module","epoch":1590786928,"epoch_utc":null},{"commit":"1da623b30ef6f9b12ac231518d2d4e7dadcf717b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 14:14:48 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":9}]},"message":"add items","epoch":1590786888,"epoch_utc":null},{"commit":"b10ca64646e93d9797182ea046f4956a17b37627","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 14:14:37 2020 -0700","stats":{"files_changed":1,"insertions":71,"deletions":71,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":142}]},"message":"change osx_inode and osx_flags to unix_inode and unix_flags. Also rename netstat_osx module to netstat_freebsd_osx","epoch":1590786877,"epoch_utc":null},{"commit":"2128763ee67a07da6ebf123abeec39794bc1f4e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 13:25:19 2020 -0700","stats":{"files_changed":1,"insertions":12,"deletions":12,"files":["tests/test_netstat.py"],"file_stats":[{"name":"tests/test_netstat.py","lines_changed":24}]},"message":"fix osx version from 16.4 to 14.6","epoch":1590783919,"epoch_utc":null},{"commit":"a27e7ed39c63c04cfa78caceaada42f7a9496a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 13:24:52 2020 -0700","stats":{"files_changed":12,"insertions":12,"deletions":12,"files":["tests/fixtures/centos-7.7/netstat-r.json","tests/fixtures/centos-7.7/netstat-rne.json","tests/fixtures/centos-7.7/netstat-rnee.json","tests/fixtures/centos-7.7/route-vn.json","tests/fixtures/centos-7.7/route.json","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-rnl.json","tests/fixtures/ubuntu-18.04/netstat-r.json","tests/fixtures/ubuntu-18.04/netstat-rne.json","tests/fixtures/ubuntu-18.04/netstat-rnee.json","tests/fixtures/ubuntu-18.04/route-vn.json","tests/fixtures/ubuntu-18.04/route.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/netstat-r.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/netstat-rne.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/netstat-rnee.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/route-vn.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/route.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-r.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-rnl.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/netstat-r.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/netstat-rne.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/netstat-rnee.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/route-vn.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/route.json","lines_changed":2}]},"message":"test updates for added route_flags_pretty and flags_pretty fields","epoch":1590783892,"epoch_utc":null},{"commit":"f07b7eaa474eb87dbdbc7fbe41b9386feff7bee2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 12:55:16 2020 -0700","stats":{"files_changed":1,"insertions":38,"deletions":12,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":50}]},"message":"add flags_pretty","epoch":1590782116,"epoch_utc":null},{"commit":"6ce18de84ce16a926f9cd97c3210ef209c3352da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 12:51:04 2020 -0700","stats":{"files_changed":3,"insertions":130,"deletions":69,"files":["jc/parsers/netstat.py","jc/parsers/netstat_linux.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":139},{"name":"jc/parsers/netstat_linux.py","lines_changed":23},{"name":"jc/parsers/netstat_osx.py","lines_changed":37}]},"message":"add route_flags_pretty","epoch":1590781864,"epoch_utc":null},{"commit":"8631b756e7ab8cd71c2a3eb288e2d1823cec5782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 12:05:46 2020 -0700","stats":{"files_changed":4,"insertions":76,"deletions":0,"files":["tests/fixtures/freebsd12/netstat-Aa.out","tests/fixtures/freebsd12/netstat-an.out","tests/fixtures/freebsd12/netstat-i.out","tests/fixtures/freebsd12/netstat-r.out"],"file_stats":[{"name":"tests/fixtures/freebsd12/netstat-Aa.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-an.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-i.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/netstat-r.out","lines_changed":20}]},"message":"add freebsd test files","epoch":1590779146,"epoch_utc":null},{"commit":"7414d984125300164a5b6156d7a80128d4d6cb15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 12:05:34 2020 -0700","stats":{"files_changed":6,"insertions":18,"deletions":18,"files":["jc/parsers/df.py","jc/parsers/fstab.py","jc/parsers/mount.py","jc/parsers/ntpq.py","jc/parsers/stat.py","jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":6},{"name":"jc/parsers/fstab.py","lines_changed":6},{"name":"jc/parsers/mount.py","lines_changed":6},{"name":"jc/parsers/ntpq.py","lines_changed":6},{"name":"jc/parsers/stat.py","lines_changed":6},{"name":"jc/parsers/uname.py","lines_changed":6}]},"message":"add freebsd compatibility","epoch":1590779134,"epoch_utc":null},{"commit":"d7b19892e8fb11e17fcbadcdbb08d49897d7754f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 12:04:58 2020 -0700","stats":{"files_changed":2,"insertions":10,"deletions":7,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":13},{"name":"jc/parsers/netstat_osx.py","lines_changed":4}]},"message":"add freebsd support for netstat -i","epoch":1590779098,"epoch_utc":null},{"commit":"96df396eaf4e030113005a95e525d644c394dfe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 07:35:25 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1590762925,"epoch_utc":null},{"commit":"2f6f640317da5af894f34f187c4243ef0c599d07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 27 17:11:20 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"spelling","epoch":1590624680,"epoch_utc":null},{"commit":"c4a0a50f3a3ac5833ab5d2f8a0cb3f18da335812","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 27 17:08:54 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"add nix-env","epoch":1590624534,"epoch_utc":null},{"commit":"658f8a3842273cea049689b3aea15d89a7294b24","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 27 14:58:16 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":13}]},"message":"add zypper and ports info","epoch":1590616696,"epoch_utc":null},{"commit":"bfb876a1e394ff63c6773965ba0b65da4e109c1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 27 09:52:13 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"formatting","epoch":1590598333,"epoch_utc":null},{"commit":"90c34b1f4ee2d9ec8125346bb90b227f76ada2ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 26 17:31:56 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"fix dmidecode example","epoch":1590539516,"epoch_utc":null},{"commit":"3f9164ea77ec41e1b0671d0a642900d8e36faf9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 23 21:11:17 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"bold formatting","epoch":1590293477,"epoch_utc":null},{"commit":"7fd6fecbf5a08b1f13aa7e906e94be9bc126780a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 23 21:09:49 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1590293389,"epoch_utc":null},{"commit":"8029f72363a4d19938df07603f03a0147f6246a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 23 21:09:40 2020 -0700","stats":{"files_changed":6,"insertions":10,"deletions":7,"files":["changelog.txt","docs/parsers/stat.md","jc/cli.py","jc/parsers/stat.py","setup.py","tests/fixtures/osx-10.14.6/stat.json"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":6},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/stat.json","lines_changed":2}]},"message":"change osx_flags from integer to string","epoch":1590293380,"epoch_utc":null},{"commit":"c7fdce5d3b7566a7d290627767c47d9c196e02ad","merge":"f5627a4 84f48aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 16:37:50 2020 -0700","message":"Merge pull request #62 from kellyjonbrazil/dev\n\nDev v1.11.0","epoch":1590190670,"epoch_utc":null},{"commit":"84f48aa369a458f534523ecc1e3aaaf403d06f1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 16:30:22 2020 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1590190222,"epoch_utc":null},{"commit":"2e9a0a9c1221dd01bd683ecbc4871d03738da671","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 16:21:55 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]},"message":"add features","epoch":1590189715,"epoch_utc":null},{"commit":"c1f6f2b9508e558ab88b4a0a61e93a6cf5460bea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 16:21:40 2020 -0700","stats":{"files_changed":5,"insertions":116,"deletions":4,"files":["docs/parsers/stat.md","jc/parsers/stat.py","tests/fixtures/osx-10.14.6/stat.json","tests/fixtures/osx-10.14.6/stat.out","tests/test_stat.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":8},{"name":"jc/parsers/stat.py","lines_changed":5},{"name":"tests/fixtures/osx-10.14.6/stat.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/stat.out","lines_changed":94},{"name":"tests/test_stat.py","lines_changed":12}]},"message":"osx fixes and tests","epoch":1590189700,"epoch_utc":null},{"commit":"ede21bca13c4b46899721f01d979c8b063f861a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 16:05:04 2020 -0700","stats":{"files_changed":1,"insertions":110,"deletions":78,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":188}]},"message":"add OSX support for stat","epoch":1590188704,"epoch_utc":null},{"commit":"8dd9a9f9cbc70a19176f909f6ac76b2bcf670736","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 15:12:10 2020 -0700","stats":{"files_changed":5,"insertions":45,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-i.json","tests/fixtures/osx-10.14.6/netstat-i.json","tests/fixtures/ubuntu-18.04/netstat-i.json","tests/fixtures/ubuntu-18.04/netstat-i.out","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/netstat-i.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-i.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-i.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-i.out","lines_changed":4},{"name":"tests/test_netstat.py","lines_changed":38}]},"message":"add netstat -i tests","epoch":1590185530,"epoch_utc":null},{"commit":"04f92cd1330759e4bad1c0304b9e1c28e8d32d59","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 14:04:11 2020 -0700","stats":{"files_changed":5,"insertions":166,"deletions":4,"files":["README.md","docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_linux.py","tests/fixtures/centos-7.7/netstat-i.out"],"file_stats":[{"name":"README.md","lines_changed":32},{"name":"docs/parsers/netstat.md","lines_changed":50},{"name":"jc/parsers/netstat.py","lines_changed":44},{"name":"jc/parsers/netstat_linux.py","lines_changed":39},{"name":"tests/fixtures/centos-7.7/netstat-i.out","lines_changed":5}]},"message":"add linux support for netstat -i","epoch":1590181451,"epoch_utc":null},{"commit":"8be8d2393b276a9249e1c573ce19cf630f0942fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 13:38:25 2020 -0700","stats":{"files_changed":3,"insertions":99,"deletions":3,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-i.out"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":19},{"name":"jc/parsers/netstat_osx.py","lines_changed":40},{"name":"tests/fixtures/osx-10.14.6/netstat-i.out","lines_changed":43}]},"message":"add netstat -i support for OSX","epoch":1590179905,"epoch_utc":null},{"commit":"0a879681be68fe2e6e5c013ab0fe18de99b04f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 12:56:27 2020 -0700","stats":{"files_changed":3,"insertions":97,"deletions":282,"files":["README.md","docs/parsers/netstat.md","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":37},{"name":"docs/parsers/netstat.md","lines_changed":171},{"name":"jc/parsers/netstat.py","lines_changed":171}]},"message":"add netstat -r to docs","epoch":1590177387,"epoch_utc":null},{"commit":"2ca1587a49511899bf719e0b0c7de32158fc491d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 12:44:51 2020 -0700","stats":{"files_changed":10,"insertions":102,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-r.json","tests/fixtures/centos-7.7/netstat-rne.json","tests/fixtures/centos-7.7/netstat-rnee.json","tests/fixtures/ubuntu-18.04/netstat-r.json","tests/fixtures/ubuntu-18.04/netstat-r.out","tests/fixtures/ubuntu-18.04/netstat-rne.json","tests/fixtures/ubuntu-18.04/netstat-rne.out","tests/fixtures/ubuntu-18.04/netstat-rnee.json","tests/fixtures/ubuntu-18.04/netstat-rnee.out","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/netstat-r.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-rne.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-rnee.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-r.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-r.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/netstat-rne.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-rne.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/netstat-rnee.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-rnee.out","lines_changed":5},{"name":"tests/test_netstat.py","lines_changed":81}]},"message":"add linux netstat -r tests","epoch":1590176691,"epoch_utc":null},{"commit":"ec2cd2d708a57c0458657416bedcb4340cb40901","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 12:00:26 2020 -0700","stats":{"files_changed":9,"insertions":70,"deletions":11,"files":["docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_linux.py","jc/parsers/netstat_osx.py","tests/fixtures/centos-7.7/netstat-r.out","tests/fixtures/centos-7.7/netstat-rne.out","tests/fixtures/centos-7.7/netstat-rnee.out","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-rnl.json"],"file_stats":[{"name":"docs/parsers/netstat.md","lines_changed":11},{"name":"jc/parsers/netstat.py","lines_changed":13},{"name":"jc/parsers/netstat_linux.py","lines_changed":37},{"name":"jc/parsers/netstat_osx.py","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-r.out","lines_changed":5},{"name":"tests/fixtures/centos-7.7/netstat-rne.out","lines_changed":5},{"name":"tests/fixtures/centos-7.7/netstat-rnee.out","lines_changed":5},{"name":"tests/fixtures/osx-10.14.6/netstat-r.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-rnl.json","lines_changed":2}]},"message":"add netstat -r support for linux","epoch":1590174026,"epoch_utc":null},{"commit":"5d0dbece9317e84a47d9f4b2d18a9ffa33fbee6e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 11:09:41 2020 -0700","stats":{"files_changed":8,"insertions":288,"deletions":5,"files":["docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-r.out","tests/fixtures/osx-10.14.6/netstat-rnl.json","tests/fixtures/osx-10.14.6/netstat-rnl.out","tests/test_netstat.py"],"file_stats":[{"name":"docs/parsers/netstat.md","lines_changed":17},{"name":"jc/parsers/netstat.py","lines_changed":23},{"name":"jc/parsers/netstat_osx.py","lines_changed":37},{"name":"tests/fixtures/osx-10.14.6/netstat-r.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-r.out","lines_changed":93},{"name":"tests/fixtures/osx-10.14.6/netstat-rnl.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-rnl.out","lines_changed":96},{"name":"tests/test_netstat.py","lines_changed":25}]},"message":"add netstat -r functionality for OSX","epoch":1590170981,"epoch_utc":null},{"commit":"df1e4b414b2bda5be3153767cd854b2483ba600b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 08:00:18 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":[".gitignore"],"file_stats":[{"name":".gitignore","lines_changed":1}]},"message":"remove unused folder","epoch":1590159618,"epoch_utc":null},{"commit":"40760991e7dae43cd15134310f7bbb5ce0f58dae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 07:51:47 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["LICENSE.md"],"file_stats":[{"name":"LICENSE.md","lines_changed":2}]},"message":"update copyright date","epoch":1590159107,"epoch_utc":null},{"commit":"464f5f86cf2c8fe6a1a857b0ad4d221a3edf3d88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 07:50:22 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"update description","epoch":1590159022,"epoch_utc":null},{"commit":"7b09e9fccdd4f09218a500b54c898ada1b9843c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 21 17:01:17 2020 -0700","stats":{"files_changed":5,"insertions":8,"deletions":5,"files":["docs/parsers/dmidecode.md","jc/parsers/dmidecode.py","tests/fixtures/centos-7.7/dmidecode.json","tests/fixtures/fedora32/dmidecode.json","tests/fixtures/ubuntu-18.04/dmidecode.json"],"file_stats":[{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":5},{"name":"tests/fixtures/centos-7.7/dmidecode.json","lines_changed":2},{"name":"tests/fixtures/fedora32/dmidecode.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dmidecode.json","lines_changed":2}]},"message":"set empty values to Null and update fixtures","epoch":1590105677,"epoch_utc":null},{"commit":"6cba7d429898d331c674c778f8bd85ba75a8dca9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 21 11:10:00 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"remove linux from description","epoch":1590084600,"epoch_utc":null},{"commit":"9730f62e4970b5a4490f8dc24b6cfb9cacd0cbf2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 21 09:44:28 2020 -0700","stats":{"files_changed":5,"insertions":151,"deletions":133,"files":["jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json","tests/fixtures/osx-10.14.6/netstat.out"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":7},{"name":"tests/fixtures/osx-10.14.6/netstat-Abn.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-An.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat.out","lines_changed":271}]},"message":"fixup name field and update test fixtures","epoch":1590079468,"epoch_utc":null},{"commit":"e0c1c87f549eee000b93b5f5a3e8d0b052eb7d32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 21 09:07:01 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":8}]},"message":"formatting","epoch":1590077221,"epoch_utc":null},{"commit":"931b3d2b836b251590497f4cfa65f106762086c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 19:56:28 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1590029788,"epoch_utc":null},{"commit":"e5d561baeecf1fd83a884b3cd9d322762f750dfb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 17:31:51 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":1}]},"message":"add multipath condition for osx detection","epoch":1590021111,"epoch_utc":null},{"commit":"2867593e7aa12299686e2c6aa0f2a79a9b550b53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 17:28:44 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":6}]},"message":"changelog update","epoch":1590020924,"epoch_utc":null},{"commit":"dd52fee5635c977d5c77046ab9fe78d2ed10deef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 17:25:25 2020 -0700","stats":{"files_changed":7,"insertions":2141,"deletions":0,"files":["tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-Abn.out","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat-An.out","tests/fixtures/osx-10.14.6/netstat.json","tests/fixtures/osx-10.14.6/netstat.out","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/netstat-Abn.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-Abn.out","lines_changed":689},{"name":"tests/fixtures/osx-10.14.6/netstat-An.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-An.out","lines_changed":689},{"name":"tests/fixtures/osx-10.14.6/netstat.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat.out","lines_changed":724},{"name":"tests/test_netstat.py","lines_changed":36}]},"message":"osx netstat tests and fixtures","epoch":1590020725,"epoch_utc":null},{"commit":"8e1f8858273e671a882a07eae1c35b38f5298c94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 16:43:53 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":7}]},"message":"fix filtered netstat views","epoch":1590018233,"epoch_utc":null},{"commit":"2d39a58f902e6af77f8f96ffcd1d68b7cbadd56c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 16:14:03 2020 -0700","stats":{"files_changed":4,"insertions":81,"deletions":14,"files":["README.md","docs/parsers/dmidecode.md","docs/parsers/netstat.md","jc/parsers/dmidecode.py"],"file_stats":[{"name":"README.md","lines_changed":67},{"name":"docs/parsers/dmidecode.md","lines_changed":4},{"name":"docs/parsers/netstat.md","lines_changed":20},{"name":"jc/parsers/dmidecode.py","lines_changed":4}]},"message":"doc update","epoch":1590016443,"epoch_utc":null},{"commit":"9c4fa2ae2601ca4880c0b078fa917f01f1392e0e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 15:39:47 2020 -0700","stats":{"files_changed":2,"insertions":22,"deletions":2,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":21},{"name":"jc/parsers/netstat_osx.py","lines_changed":3}]},"message":"integer conversions and icmp fix","epoch":1590014387,"epoch_utc":null},{"commit":"de52d84e82df6d8c5e2416c6bc44e59c41c685da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 12:02:32 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":17}]},"message":"fix udp state and udp46 entries","epoch":1590001352,"epoch_utc":null},{"commit":"ce9b55059a28d363b8b0ae4f3ccbdbdc4bf4b58e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 11:24:38 2020 -0700","stats":{"files_changed":2,"insertions":185,"deletions":167,"files":["jc/parsers/netstat.py","jc/parsers/netstat_linux.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":171},{"name":"jc/parsers/netstat_linux.py","lines_changed":181}]},"message":"organize files","epoch":1589999078,"epoch_utc":null},{"commit":"bcd370a6a01a115d470776f5690f8571d68d3930","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 08:19:45 2020 -0700","stats":{"files_changed":2,"insertions":5,"deletions":15,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":16},{"name":"jc/parsers/netstat_osx.py","lines_changed":4}]},"message":"code cleanup","epoch":1589987985,"epoch_utc":null},{"commit":"c8216850abd2d0b8cc6761453f853f296e8a28f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 07:19:24 2020 -0700","stats":{"files_changed":1,"insertions":19,"deletions":55,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":74}]},"message":"code cleanup","epoch":1589984364,"epoch_utc":null},{"commit":"f5feedb90b39e5c3f4564615482d47ccd145844f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 17:38:14 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":10,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":11}]},"message":"fix comments","epoch":1589935094,"epoch_utc":null},{"commit":"a4371cd187fe5077018edbfeee77eb17c6a90ad3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 17:36:16 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":6}]},"message":"support netstat -A","epoch":1589934976,"epoch_utc":null},{"commit":"9d5ba4c83404e4fab5c0f40c30b4735685499a31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 17:14:04 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":2}]},"message":"formatting","epoch":1589933644,"epoch_utc":null},{"commit":"1639dee1bb93f6f89e8bb7b37134dc1f561c479c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 17:13:03 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":35,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":45}]},"message":"fix parse_post","epoch":1589933583,"epoch_utc":null},{"commit":"9363f430f20951e6fa739f06c85c5b6b3421b60d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 16:26:41 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":3}]},"message":"use list extend method to simplify code","epoch":1589930801,"epoch_utc":null},{"commit":"9192a0907364c772558380be1373b8dcea972a6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 16:26:04 2020 -0700","stats":{"files_changed":1,"insertions":124,"deletions":34,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":158}]},"message":"parse all sections","epoch":1589930764,"epoch_utc":null},{"commit":"b915eb97556ccc5fc60e8d23f7298ffec2d8e3b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 15:15:08 2020 -0700","stats":{"files_changed":2,"insertions":237,"deletions":55,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":118},{"name":"jc/parsers/netstat_osx.py","lines_changed":174}]},"message":"initial osx parser","epoch":1589926508,"epoch_utc":null},{"commit":"1cfcc2b592f682d2b50a0c4188fa3ae832a6c682","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 14 09:58:16 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":2}]},"message":"tighten up line test logic when counting tabs","epoch":1589475496,"epoch_utc":null},{"commit":"7138dd02b73073441a52c9b574bf0d6e02f0d7d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 14 09:51:10 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":11}]},"message":"cleanup variables after adding to item","epoch":1589475070,"epoch_utc":null},{"commit":"b4276643b70f7820f8f53df22b32fffb54e30ca2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 14 09:43:13 2020 -0700","stats":{"files_changed":4,"insertions":56,"deletions":0,"files":["tests/fixtures/centos-7.7/dmidecode.json","tests/fixtures/fedora32/dmidecode.json","tests/fixtures/ubuntu-18.04/dmidecode.json","tests/test_dmidecode.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/dmidecode.json","lines_changed":1},{"name":"tests/fixtures/fedora32/dmidecode.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dmidecode.json","lines_changed":1},{"name":"tests/test_dmidecode.py","lines_changed":53}]},"message":"add dmidecode tests and fixtures","epoch":1589474593,"epoch_utc":null},{"commit":"2ef00763bfe7c4348f30026759941efe39861a0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 14 09:33:45 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":4}]},"message":"fix first item","epoch":1589474025,"epoch_utc":null},{"commit":"54364928fc826ead7774a4cec1bcb73a5cb9ee0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 14 08:57:23 2020 -0700","stats":{"files_changed":2,"insertions":74,"deletions":81,"files":["docs/parsers/dmidecode.md","jc/parsers/dmidecode.py"],"file_stats":[{"name":"docs/parsers/dmidecode.md","lines_changed":37},{"name":"jc/parsers/dmidecode.py","lines_changed":118}]},"message":"fix oddities like hybrid single/multiline data and items containing multiple records","epoch":1589471843,"epoch_utc":null},{"commit":"09b3b4932b0fa4a2b18c88a8465c15a194b727e6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 10:51:38 2020 -0700","stats":{"files_changed":3,"insertions":35430,"deletions":0,"files":["tests/fixtures/centos-7.7/dmidecode.out","tests/fixtures/fedora32/dmidecode.out","tests/fixtures/ubuntu-18.04/dmidecode.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/dmidecode.out","lines_changed":11810},{"name":"tests/fixtures/fedora32/dmidecode.out","lines_changed":11810},{"name":"tests/fixtures/ubuntu-18.04/dmidecode.out","lines_changed":11810}]},"message":"add dmidecode output fixtures","epoch":1589392298,"epoch_utc":null},{"commit":"29d6670119d8fcd0344e90f01bfb6260aa936e50","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 10:18:49 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":10}]},"message":"convert integers","epoch":1589390329,"epoch_utc":null},{"commit":"2f654b5f1acda01192294f4c18a5a31363e7f387","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 10:13:27 2020 -0700","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["docs/parsers/dmidecode.md"],"file_stats":[{"name":"docs/parsers/dmidecode.md","lines_changed":37}]},"message":"doc update","epoch":1589390007,"epoch_utc":null},{"commit":"e53b9f5992450b53efc886b4fa9ca16f3dd07530","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 10:12:40 2020 -0700","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":37}]},"message":"add caveats to documentation","epoch":1589389960,"epoch_utc":null},{"commit":"addb234e6162c58750cb67947bc4776635bf54fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:44:20 2020 -0700","stats":{"files_changed":1,"insertions":153,"deletions":0,"files":["docs/parsers/dmidecode.md"],"file_stats":[{"name":"docs/parsers/dmidecode.md","lines_changed":153}]},"message":"add dmidecode doc","epoch":1589388260,"epoch_utc":null},{"commit":"76eca3b65911a0a340d3d94322a8145ee89c50da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:43:35 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":1}]},"message":"add dmidecode","epoch":1589388215,"epoch_utc":null},{"commit":"f90dec4c0ecf88623fb22273b7527ec8884826c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:43:23 2020 -0700","stats":{"files_changed":1,"insertions":94,"deletions":5,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":99}]},"message":"add examples to documentation","epoch":1589388203,"epoch_utc":null},{"commit":"8900a59d4cb424ff58d1eb27f8fda7ea0a668a5c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:31:12 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":19,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":20}]},"message":"simplify logic by removing redundant block","epoch":1589387472,"epoch_utc":null},{"commit":"6685138200d5955115707d04aad0293ea8af5b15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:25:02 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":2}]},"message":"fix for missing multi-line values that come immediately after a previous multi-line value","epoch":1589387102,"epoch_utc":null},{"commit":"4d3e65b980d50164b8220e59560822b9871580ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:00:32 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":5}]},"message":"fix missing values","epoch":1589385632,"epoch_utc":null},{"commit":"e9282bb546f560da6396f44e2ce9e04136348e2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 08:22:52 2020 -0700","stats":{"files_changed":2,"insertions":175,"deletions":0,"files":["jc/cli.py","jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/dmidecode.py","lines_changed":174}]},"message":"add dmidecode parser","epoch":1589383372,"epoch_utc":null},{"commit":"f5627a45947e5e76e5f3e64d9b30099fe0b962a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 11 11:03:02 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1589220182,"epoch_utc":null},{"commit":"81ffdb25105c681c8ed12336d220a102b7f4215e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 11 10:54:26 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"remove shebang for Fedora packaging","epoch":1589219666,"epoch_utc":null},{"commit":"4c00a99850cb6f69713be7c6ad9ffba11924d9b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 11 10:37:14 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1589218634,"epoch_utc":null},{"commit":"2bfcb45b28e2174a8bbc27237e619b5c232ccae8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 11 10:32:42 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":0}]},"message":"make cli.py executable","epoch":1589218362,"epoch_utc":null},{"commit":"ab0c10e791283affb227d0d5306701ba7fd29d13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 11 10:27:16 2020 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["LICENSE.md","README.md"],"file_stats":[{"name":"LICENSE.md","lines_changed":0},{"name":"README.md","lines_changed":0}]},"message":"remove execute permissions","epoch":1589218036,"epoch_utc":null},{"commit":"2c1935115de03a28fe92674b04b2542b0eccb8fe","merge":"99070fa d98e43d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:47:05 2020 -0700","message":"Merge pull request #61 from kellyjonbrazil/dev\n\nDev v1.10.10","epoch":1589050025,"epoch_utc":null},{"commit":"d98e43dc78205d3224bfc1e67de2da3c5fb7ea9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:42:56 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"add netstat item","epoch":1589049776,"epoch_utc":null},{"commit":"9348988d646d9b9c9970c19e84f311554ae38e7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:41:30 2020 -0700","stats":{"files_changed":1,"insertions":12,"deletions":0,"files":["tests/test_netstat.py"],"file_stats":[{"name":"tests/test_netstat.py","lines_changed":12}]},"message":"add netstat test for Fedora32","epoch":1589049690,"epoch_utc":null},{"commit":"1285c664679c40b18327c89b85921a80b01f0191","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:36:23 2020 -0700","stats":{"files_changed":2,"insertions":140,"deletions":0,"files":["tests/fixtures/fedora32/netstat.json","tests/fixtures/fedora32/netstat.out"],"file_stats":[{"name":"tests/fixtures/fedora32/netstat.json","lines_changed":1},{"name":"tests/fixtures/fedora32/netstat.out","lines_changed":139}]},"message":"netstat with bluetooth section","epoch":1589049383,"epoch_utc":null},{"commit":"b7191bbc130e0f33d02c0a4819fa91ffff1599d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:36:03 2020 -0700","stats":{"files_changed":1,"insertions":14,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":15}]},"message":"handle bluetooth section (ignore for now)","epoch":1589049363,"epoch_utc":null},{"commit":"98b97509f7893cb95e9651ce9706db5c961aa997","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:25:13 2020 -0700","stats":{"files_changed":3,"insertions":6,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1589048713,"epoch_utc":null},{"commit":"2b2b570490f3834367a598579473001f45738e8a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:22:26 2020 -0700","stats":{"files_changed":3,"insertions":21,"deletions":0,"files":["tests/fixtures/fedora32/last.json","tests/fixtures/fedora32/last.out","tests/test_last.py"],"file_stats":[{"name":"tests/fixtures/fedora32/last.json","lines_changed":1},{"name":"tests/fixtures/fedora32/last.out","lines_changed":8},{"name":"tests/test_last.py","lines_changed":12}]},"message":"add tests for 'gone - no logout'","epoch":1589048546,"epoch_utc":null},{"commit":"cce2d1ff298f2284c43c4534144329f3533a81ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:22:01 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":6}]},"message":"add condition for 'gone - no logout'","epoch":1589048521,"epoch_utc":null},{"commit":"b79600c57249cbb65805caad2524cc2492342be6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:01:48 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"version bump","epoch":1589047308,"epoch_utc":null},{"commit":"140f1a85437745296b56976bef1b46514e323a4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:00:04 2020 -0700","stats":{"files_changed":7,"insertions":7,"deletions":7,"files":["tests/fixtures/centos-7.7/ls-R-newlines.json","tests/fixtures/centos-7.7/ls-R.json","tests/fixtures/centos-7.7/ls-glob.json","tests/fixtures/osx-10.14.6/ls-glob.json","tests/fixtures/ubuntu-18.04/ls-R-newlines.json","tests/fixtures/ubuntu-18.04/ls-R.json","tests/fixtures/ubuntu-18.04/ls-glob.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ls-R-newlines.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ls-R.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ls-glob.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-glob.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ls-R-newlines.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ls-R.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ls-glob.json","lines_changed":2}]},"message":"test fixes for issue #60","epoch":1589047204,"epoch_utc":null},{"commit":"e34657cfde6816ab7a7415d83580df0a1d98a5a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 15:26:11 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"fix issue #60 that was skipping the first file in some instances using -R without -l","epoch":1588976771,"epoch_utc":null},{"commit":"99070fa6073c4415a6faf8ca69dd6aa089af4062","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 10:51:13 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1588960273,"epoch_utc":null},{"commit":"2b46785b1f1281ee63df9159e36068f4607ad9b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 10:49:30 2020 -0700","stats":{"files_changed":1,"insertions":25,"deletions":3,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":28}]},"message":"add MIT license to vendorized IfconfigParser class","epoch":1588960170,"epoch_utc":null},{"commit":"c72562524b2b9aaca0be372bb24343158829ba5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 09:30:31 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"fully remove tests from packaging","epoch":1588955431,"epoch_utc":null},{"commit":"b7dd6441c7e3f54f8a260fceef49aae6816c7151","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 08:20:33 2020 -0700","stats":{"files_changed":2,"insertions":5,"deletions":1,"files":["changelog.txt","jc/cli.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/cli.py","lines_changed":2}]},"message":"version bump","epoch":1588951233,"epoch_utc":null},{"commit":"31fcc2f755ad86622cf51a75879b14d44f246300","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 08:20:21 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["MANIFEST.in"],"file_stats":[{"name":"MANIFEST.in","lines_changed":1}]},"message":"remove manifest.in - no longer needed due to removing tests","epoch":1588951221,"epoch_utc":null},{"commit":"b391aa14bceffedb5a9c13f3f908923790edefc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 08:19:51 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["setup.cfg"],"file_stats":[{"name":"setup.cfg","lines_changed":2}]},"message":"add license_file to metadata","epoch":1588951191,"epoch_utc":null},{"commit":"d3c45debbb6690acd341fbcc9b99d1ae4cf0a43c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 08:19:31 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":5}]},"message":"remove tests and add license file","epoch":1588951171,"epoch_utc":null},{"commit":"5b08469b874553744bd5c5b1fa6581f4dcffacd0","merge":"8cf00a2 4a77ec6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 1 15:55:50 2020 -0700","message":"Merge pull request #57 from kellyjonbrazil/dev\n\nDev v1.10.7","epoch":1588373750,"epoch_utc":null},{"commit":"4a77ec63a46554c84e646d31564230774ed87431","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 1 14:57:50 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["docs/parsers/ifconfig.md"],"file_stats":[{"name":"docs/parsers/ifconfig.md","lines_changed":11}]},"message":"add IfconfigParser class","epoch":1588370270,"epoch_utc":null},{"commit":"d13606b6dc2c207be6dea89a2c3e713c18a574b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 1 14:37:23 2020 -0700","stats":{"files_changed":4,"insertions":7,"deletions":6,"files":["changelog.txt","jc/cli.py","requirements.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"requirements.txt","lines_changed":3},{"name":"setup.py","lines_changed":5}]},"message":"modify dependencies for easier packaging into Fedora","epoch":1588369043,"epoch_utc":null},{"commit":"05291c93bba1aa364ba1ac7f2508e24bb362a814","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 1 14:36:54 2020 -0700","stats":{"files_changed":1,"insertions":198,"deletions":3,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":201}]},"message":"vendorize ifconfig-parser module for easier packaging in Fedora","epoch":1588369014,"epoch_utc":null},{"commit":"8cf00a208eb8493300331e7361b72e4f9e3f140e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 29 15:57:55 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"change text to strings","epoch":1588201075,"epoch_utc":null},{"commit":"06d73c88767a5b4d6003231c897c447ee5e1faa5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 23 07:06:44 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1587650804,"epoch_utc":null},{"commit":"649c646ea25ac7f89900cffa8919df01671bd32d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 22 16:08:34 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"add brew install option","epoch":1587596914,"epoch_utc":null},{"commit":"b7756d92501a7b8ba8e77d77d9d3718a58425beb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 20 16:33:26 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1587425606,"epoch_utc":null},{"commit":"1cd2cd954c21e5caec333507bd81819c82d45b49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 20 16:31:22 2020 -0700","stats":{"files_changed":4,"insertions":2,"deletions":16,"files":["tests/fixtures/osx-10.11.6/du.json","tests/fixtures/osx-10.11.6/du.out","tests/fixtures/osx-10.14.6/du.json","tests/fixtures/osx-10.14.6/du.out"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/du.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/du.out","lines_changed":7},{"name":"tests/fixtures/osx-10.14.6/du.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/du.out","lines_changed":7}]},"message":"remove references to homebrew/shim to allow tests to pass in homebrew packaging ci/cd","epoch":1587425482,"epoch_utc":null},{"commit":"72020b8da999ddca6f9ba82da235c9f42e4f4273","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 17 10:20:25 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":22,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":24}]},"message":"move packages info to jc-packages github page","epoch":1587144025,"epoch_utc":null},{"commit":"cf9720b749e7fc8caed0d2f1f2b1727a22a156b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 16 14:03:31 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"update install info","epoch":1587071011,"epoch_utc":null},{"commit":"967b9db7f90a3c3a0352edde7f4455c5f5d45b18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 15 21:27:22 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":6}]},"message":"spelling","epoch":1587011242,"epoch_utc":null},{"commit":"bb3acb1182f4d509f9ddc7dfcffa4578e0a2bd5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 15 21:25:06 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1587011106,"epoch_utc":null},{"commit":"560c7f7e6d1f8a69ab026ddbff753d232ca1d00b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 15 21:23:55 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1587011035,"epoch_utc":null},{"commit":"79b28417644e00b933f531374d2f7fe8051e61be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 15 21:22:43 2020 -0700","stats":{"files_changed":1,"insertions":26,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":26}]},"message":"add new binary package install info","epoch":1587010963,"epoch_utc":null},{"commit":"a06a89cbd11026aa3910fadd1eff7fe388d02507","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 14 11:15:24 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1586888124,"epoch_utc":null},{"commit":"431bd969eb4809424fe99a02a7decb98bce9ea51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 14 11:10:31 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"use sys.exit(0) instead of exit()","epoch":1586887831,"epoch_utc":null},{"commit":"c87b722aec6e6964c516bbb8e80667ad7d9c6bc7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:23:58 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"spelling","epoch":1586723038,"epoch_utc":null},{"commit":"3688b8b014a1cf753b2207fbf3ebf0292c3fd672","merge":"99f7842 07b8d9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:21:38 2020 -0700","message":"Merge pull request #56 from kellyjonbrazil/dev\n\nDev v1.10.4","epoch":1586722898,"epoch_utc":null},{"commit":"07b8d9e0c0d723d93e6c652f5b6156c467c451c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:18:28 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1586722708,"epoch_utc":null},{"commit":"7454b53e395e9122c00d4cf06b1c2af109913d7a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:13:28 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"formatting","epoch":1586722408,"epoch_utc":null},{"commit":"3d6a76024de0f9dcf91a4ab49cabe461074114fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:10:57 2020 -0700","stats":{"files_changed":1,"insertions":18,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":18}]},"message":"update with JC_COLORS info","epoch":1586722257,"epoch_utc":null},{"commit":"421b9809575a8de00229af4b851739889638ac74","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:03:09 2020 -0700","stats":{"files_changed":1,"insertions":18,"deletions":37,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":55}]},"message":"JC_COLORS working","epoch":1586721789,"epoch_utc":null},{"commit":"4a22e27d6a80a988f4de17bce421110d6abb8867","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 12:43:51 2020 -0700","stats":{"files_changed":1,"insertions":64,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":64}]},"message":"add set_env_colors function","epoch":1586720631,"epoch_utc":null},{"commit":"99f7842dee0f79cf933fae185cf8b0ed7c8b210f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 9 13:38:33 2020 -0700","stats":{"files_changed":3,"insertions":11,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":8},{"name":"setup.py","lines_changed":2}]},"message":"fix brek on pipe error","epoch":1586464713,"epoch_utc":null},{"commit":"7f869b4b187d70752207a7e74c13b858446f898f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 9 07:31:21 2020 -0700","stats":{"files_changed":3,"insertions":9,"deletions":11,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":15},{"name":"setup.py","lines_changed":2}]},"message":"change colors to ansi and match jello style","epoch":1586442681,"epoch_utc":null},{"commit":"9665f4ee84680f3a8154b8a43ea668af2907782c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 7 08:44:15 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add pypi badge","epoch":1586274255,"epoch_utc":null},{"commit":"606904d48b1c7e0c19a940b5be0b564d1b5be6c8","merge":"302f05c 3f5279b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:28:21 2020 -0700","message":"Merge pull request #53 from kellyjonbrazil/dev\n\nDev v1.10.1","epoch":1586046501,"epoch_utc":null},{"commit":"3f5279b97c386c736e0e2faa5c39d68ef89c46aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:25:55 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to 1.10.1","epoch":1586046355,"epoch_utc":null},{"commit":"f5ec21e6ac612566af93158fc3968b901322d04a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:19:32 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_luf.py"],"file_stats":[{"name":"jc/parsers/systemctl_luf.py","lines_changed":4}]},"message":"use in instead of find()","epoch":1586045972,"epoch_utc":null},{"commit":"578a284465f014fe71ad6ac00bd41dc24ab2ced9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:18:39 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_ls.py"],"file_stats":[{"name":"jc/parsers/systemctl_ls.py","lines_changed":4}]},"message":"use in instead of find()","epoch":1586045919,"epoch_utc":null},{"commit":"422e392d9d98a7864312fc7fbd7f45537b71acbe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:17:43 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_lj.py"],"file_stats":[{"name":"jc/parsers/systemctl_lj.py","lines_changed":4}]},"message":"use in instead of find()","epoch":1586045863,"epoch_utc":null},{"commit":"54dfffd34a17d1194690142ac403391fc65bb85f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:16:25 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl.py"],"file_stats":[{"name":"jc/parsers/systemctl.py","lines_changed":4}]},"message":"use in instead of find()","epoch":1586045785,"epoch_utc":null},{"commit":"cffba64d2b9165b44a8856665807111a2ad3a190","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:15:03 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":14}]},"message":"use in and startswith() instead of find()","epoch":1586045703,"epoch_utc":null},{"commit":"56a0c12a59bb252d3b7d0929f9fb19b4d96a8437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:12:22 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/pip_list.py"],"file_stats":[{"name":"jc/parsers/pip_list.py","lines_changed":6}]},"message":"use in instead of find()","epoch":1586045542,"epoch_utc":null},{"commit":"c174d3de18923b2b03befb5a7dfcbd977a8e147e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:10:46 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":14}]},"message":"use in and startswith() instead of find()","epoch":1586045446,"epoch_utc":null},{"commit":"a9c59ef9fc1bb68c9d0d7beffbeb670baf5b1e3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:07:38 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/mount.py"],"file_stats":[{"name":"jc/parsers/mount.py","lines_changed":2}]},"message":"fix logic to not for ' type ' in cleandata[0]","epoch":1586045258,"epoch_utc":null},{"commit":"abdb9b26732a6a71f5938d665b2ca43a381e1b33","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:05:17 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/mount.py"],"file_stats":[{"name":"jc/parsers/mount.py","lines_changed":4}]},"message":"use in instead of find()","epoch":1586045117,"epoch_utc":null},{"commit":"548aaab6262878d21f8b9539950cfad48638e35c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:04:20 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":42,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":43}]},"message":"remove old commented code","epoch":1586045060,"epoch_utc":null},{"commit":"20571c87ae9e1ca8a1f3120511910751420a35ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:01:56 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":6}]},"message":"us in instead of find()","epoch":1586044916,"epoch_utc":null},{"commit":"19e49200de5c731f76b42e80388c5223e8097e39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:59:48 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":2}]},"message":"version bump","epoch":1586044788,"epoch_utc":null},{"commit":"d32f5c67a91ede572c88e431b2ad0ce4d6c87dec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:59:03 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":4}]},"message":"use startswith() instead of find()","epoch":1586044743,"epoch_utc":null},{"commit":"b83b626435c55d2aa63e56dd8f22603da59e7626","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:57:23 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":4}]},"message":"use startswith() instead of find()","epoch":1586044643,"epoch_utc":null},{"commit":"ab2c1b25ec5da5f2ba238868c4dfca95a44da30e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:56:11 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/hosts.py"],"file_stats":[{"name":"jc/parsers/hosts.py","lines_changed":6}]},"message":"use startswith() and in instead of find()","epoch":1586044571,"epoch_utc":null},{"commit":"f2d46313a4508f13656cdb360f83fdf4116cc7d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:53:55 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/fstab.py"],"file_stats":[{"name":"jc/parsers/fstab.py","lines_changed":4}]},"message":"use startswith() instead of find()","epoch":1586044435,"epoch_utc":null},{"commit":"87e4796a6c936793e2784346819c7033d59b91e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:52:45 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":4}]},"message":"use in instead of .find()","epoch":1586044365,"epoch_utc":null},{"commit":"0014a5c2f4c056c2683d6614a65d778b1f527932","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:51:36 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab_u.py"],"file_stats":[{"name":"jc/parsers/crontab_u.py","lines_changed":6}]},"message":"us startswith() and in instead of .find()","epoch":1586044296,"epoch_utc":null},{"commit":"7af56e0dadab7d8b9538f3b7a550ad6dd1ac217d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:50:05 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":6}]},"message":"use startswith() and in instead of find()","epoch":1586044205,"epoch_utc":null},{"commit":"a5ae6e3c017b041f9079ff12455b7551ad204cb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:48:16 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":6}]},"message":"use startswith() instead of find()","epoch":1586044096,"epoch_utc":null},{"commit":"fe1a0d1faf46f55ed2888ed0065f3f3144691ed8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:46:09 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":9,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":19}]},"message":"use in instead of .find()","epoch":1586043969,"epoch_utc":null},{"commit":"302f05cdda305e46e69b74d5b0096f64c17da637","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 3 14:50:20 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"prettify style block","epoch":1585950620,"epoch_utc":null},{"commit":"c0044be7b0b6dadcffb64cb88ad92bf653dd2b6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 3 14:48:19 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"rename color grey to gray","epoch":1585950499,"epoch_utc":null},{"commit":"01100788070b82b4b827ef356972fa9b8f737eeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 3 14:47:08 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update badge","epoch":1585950428,"epoch_utc":null},{"commit":"42eacb45f8fdf8085c6231bf5297629c2ec97c22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 3 14:45:04 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"rename to Tests","epoch":1585950304,"epoch_utc":null},{"commit":"a43e2e19916662d509883457c160d7f95f97ae12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 2 17:40:06 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add -m option info","epoch":1585874406,"epoch_utc":null},{"commit":"c8b721d4f6e46a2db77e1140b9caeb3b403fef72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 2 17:35:35 2020 -0700","stats":{"files_changed":4,"insertions":9,"deletions":3,"files":["changelog.txt","jc/cli.py","requirements.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/cli.py","lines_changed":2},{"name":"requirements.txt","lines_changed":1},{"name":"setup.py","lines_changed":5}]},"message":"version bump to 1.10.0","epoch":1585874135,"epoch_utc":null},{"commit":"d0bfddc3d9989444757d6668726c916e5363620b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 2 17:29:25 2020 -0700","stats":{"files_changed":1,"insertions":41,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":47}]},"message":"add color and -m monochrome option","epoch":1585873765,"epoch_utc":null},{"commit":"6b925a16c87cf75bb30edfda38511e8f84a4f6d6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 2 10:55:32 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add tests badge","epoch":1585850132,"epoch_utc":null},{"commit":"89ebd9fc2271d2c76353d5707bfd4afb7dedc278","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 27 07:31:08 2020 -0700","stats":{"files_changed":2,"insertions":20,"deletions":0,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":10},{"name":"jc/parsers/dig.py","lines_changed":10}]},"message":"add axfr info to schema","epoch":1585319468,"epoch_utc":null},{"commit":"6b4ba662317629839aa62fbcfefb8ed3337c37ef","merge":"8ec8cd6 5b697dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 17:15:13 2020 -0700","message":"Merge pull request #52 from kellyjonbrazil/dev\n\nDev v1.9.3","epoch":1585268113,"epoch_utc":null},{"commit":"5b697dc38141cdd47fcdd63bf295a80a7da86697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 17:09:29 2020 -0700","stats":{"files_changed":1,"insertions":72,"deletions":0,"files":["tests/test_dig.py"],"file_stats":[{"name":"tests/test_dig.py","lines_changed":72}]},"message":"add more dig tests","epoch":1585267769,"epoch_utc":null},{"commit":"9ba73c95d1a528a9a92be4068805bb5aa027901e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 16:45:29 2020 -0700","stats":{"files_changed":7,"insertions":215,"deletions":0,"files":["tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/centos-7.7/dig-axfr.out","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-axfr.out","tests/fixtures/ubuntu-18.04/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-axfr.out","tests/test_dig.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/dig-axfr.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/dig-axfr.out","lines_changed":60},{"name":"tests/fixtures/osx-10.14.6/dig-axfr.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig-axfr.out","lines_changed":59},{"name":"tests/fixtures/ubuntu-18.04/dig-axfr.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dig-axfr.out","lines_changed":57},{"name":"tests/test_dig.py","lines_changed":36}]},"message":"add tests","epoch":1585266329,"epoch_utc":null},{"commit":"93aa39044749c4c0ed749f62fb00fc1c76dc5af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 16:30:17 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to v1.9.3","epoch":1585265417,"epoch_utc":null},{"commit":"3cfb8945ddd83c00a720c44e2c1d97da0d8bad25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 16:29:59 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":18}]},"message":"use startswith() instead of find","epoch":1585265399,"epoch_utc":null},{"commit":"cd8d38f2a136c4f35efc020b3476d09e965b71f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 16:22:53 2020 -0700","stats":{"files_changed":1,"insertions":50,"deletions":1,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":51}]},"message":"add axfr support","epoch":1585264973,"epoch_utc":null},{"commit":"8ec8cd62944c59c462ab9f520c1dcfd14218b1ed","merge":"e5bea9a c028113","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 17:09:04 2020 -0700","message":"Merge pull request #50 from kellyjonbrazil/dev\n\nDev v1.9.2","epoch":1584058144,"epoch_utc":null},{"commit":"c02811356153c2b4f8b2d7efb7f48bf8f7748068","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 17:06:55 2020 -0700","stats":{"files_changed":3,"insertions":6,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":5},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to v1.9.2","epoch":1584058015,"epoch_utc":null},{"commit":"5f22e1c8031b808ef02ffe078408bd58cc76e570","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 17:02:26 2020 -0700","stats":{"files_changed":3,"insertions":33,"deletions":0,"files":["tests/fixtures/osx-10.14.6/arp-a2.json","tests/fixtures/osx-10.14.6/arp-a2.out","tests/test_arp.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/arp-a2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/arp-a2.out","lines_changed":20},{"name":"tests/test_arp.py","lines_changed":12}]},"message":"fix and test for osx arp entries without ifscope","epoch":1584057746,"epoch_utc":null},{"commit":"d3351787e5cabd064c19e6617e9535e501686404","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 16:52:33 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":9,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":19}]},"message":"change osx detection","epoch":1584057153,"epoch_utc":null},{"commit":"e5bea9ae3b0a70b38f7da7dd9184343dbbd18887","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 08:52:01 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/file.py"],"file_stats":[{"name":"jc/parsers/file.py","lines_changed":2}]},"message":"version bump","epoch":1584028321,"epoch_utc":null},{"commit":"93c710abe9171568f61f65c4f84c040ffc24870c","merge":"400f5a4 c29e7cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 08:23:10 2020 -0700","message":"Merge pull request #49 from kellyjonbrazil/dev\n\nDev v1.9.1","epoch":1584026590,"epoch_utc":null},{"commit":"c29e7cfe5cc4b2151912c6f618137d1b6c39c7be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 08:17:28 2020 -0700","stats":{"files_changed":4,"insertions":9,"deletions":6,"files":["README.md","changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to 1.9.1","epoch":1584026248,"epoch_utc":null},{"commit":"cb5c1ba00dc0e02bf6ad6c40096d99e319fa6171","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 17:04:48 2020 -0700","stats":{"files_changed":3,"insertions":101,"deletions":0,"files":["tests/fixtures/osx-10.14.6/file2.json","tests/fixtures/osx-10.14.6/file2.out","tests/test_file.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/file2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/file2.out","lines_changed":88},{"name":"tests/test_file.py","lines_changed":12}]},"message":"add tests for fix to make the file parser splitting more robust","epoch":1583971488,"epoch_utc":null},{"commit":"9a012b94e1942a14bc6dae3fb967ef618819c77b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 15:40:34 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/file.py"],"file_stats":[{"name":"jc/parsers/file.py","lines_changed":2}]},"message":"make splitting more robust","epoch":1583966434,"epoch_utc":null},{"commit":"400f5a44ece280cb0097d806b78a9490d2905600","merge":"c7cd2b6 a2ab5ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 13:37:22 2020 -0700","message":"Merge pull request #48 from kellyjonbrazil/dev\n\nDev v1.9.0","epoch":1583959042,"epoch_utc":null},{"commit":"a2ab5bab91ea980399df1afb9d8071fa3282d04e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 13:32:58 2020 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to v1.9.0","epoch":1583958778,"epoch_utc":null},{"commit":"fc8ab27361df3359b706125531b2643612d6996a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 13:24:55 2020 -0700","stats":{"files_changed":6,"insertions":93,"deletions":51,"files":["README.md","docs/parsers/ntpq.md","jc/parsers/ntpq.py","tests/fixtures/ubuntu-18.04/ntpq-p2.json","tests/fixtures/ubuntu-18.04/ntpq-p2.out","tests/test_ntpq.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"docs/parsers/ntpq.md","lines_changed":40},{"name":"jc/parsers/ntpq.py","lines_changed":59},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p2.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p2.out","lines_changed":24},{"name":"tests/test_ntpq.py","lines_changed":12}]},"message":"bugfix for misaligned columns and additional test for ntpq #31","epoch":1583958295,"epoch_utc":null},{"commit":"59f19d33a5c6677ea756a9424fdb032b430511a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 12:39:59 2020 -0700","stats":{"files_changed":7,"insertions":153,"deletions":0,"files":["tests/fixtures/centos-7.7/file.json","tests/fixtures/centos-7.7/file.out","tests/fixtures/osx-10.14.6/file.json","tests/fixtures/osx-10.14.6/file.out","tests/fixtures/ubuntu-18.04/file.json","tests/fixtures/ubuntu-18.04/file.out","tests/test_file.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/file.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/file.out","lines_changed":25},{"name":"tests/fixtures/osx-10.14.6/file.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/file.out","lines_changed":53},{"name":"tests/fixtures/ubuntu-18.04/file.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/file.out","lines_changed":20},{"name":"tests/test_file.py","lines_changed":52}]},"message":"add file command tests for #41","epoch":1583955599,"epoch_utc":null},{"commit":"dfc96181159748d019419a2cba7aa9cb3b7a2a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 12:20:58 2020 -0700","stats":{"files_changed":6,"insertions":260,"deletions":1,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/file.md","jc/cli.py","jc/parsers/file.py"],"file_stats":[{"name":"README.md","lines_changed":36},{"name":"changelog.txt","lines_changed":5},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/file.md","lines_changed":90},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/file.py","lines_changed":128}]},"message":"add file parser for issue #41","epoch":1583954458,"epoch_utc":null},{"commit":"8e02e5c75a11cf205299ee6f87b67f9b787cf55e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 09:21:14 2020 -0700","stats":{"files_changed":2,"insertions":6,"deletions":5,"files":["jc/cli.py","tests/test_cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8},{"name":"tests/test_cli.py","lines_changed":3}]},"message":"fix issue with getting options with some commands #47","epoch":1583943674,"epoch_utc":null},{"commit":"970493ab9346a344b21be7614903ad81bc65a6e9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 06:22:54 2020 -0700","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["jc/parsers/airport.py","jc/parsers/airport_s.py"],"file_stats":[{"name":"jc/parsers/airport.py","lines_changed":1},{"name":"jc/parsers/airport_s.py","lines_changed":1}]},"message":"add magic commands","epoch":1583932974,"epoch_utc":null},{"commit":"64d78956eb33ca0a2564fded3d12729ee036a915","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 22:18:26 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"update acknowledgment","epoch":1583903906,"epoch_utc":null},{"commit":"40c05346f4098f8eea14c42da07df3faa143587a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 22:16:40 2020 -0700","stats":{"files_changed":1,"insertions":12,"deletions":25,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":37}]},"message":"re-adding optimizations from https://github.com/philippeitis","epoch":1583903800,"epoch_utc":null},{"commit":"e9b0bc1409a824a82dabd2479892b7d18bad8c3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 22:03:54 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/airport.py"],"file_stats":[{"name":"jc/parsers/airport.py","lines_changed":2}]},"message":"doc update","epoch":1583903034,"epoch_utc":null},{"commit":"798e6bb7d939176bb36771a6d41bd55403d583be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 22:03:44 2020 -0700","stats":{"files_changed":2,"insertions":29,"deletions":0,"files":["tests/fixtures/osx-10.14.6/airport-s.json","tests/test_airport_s.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/airport-s.json","lines_changed":1},{"name":"tests/test_airport_s.py","lines_changed":28}]},"message":"tests passing for airport -s. issue #46","epoch":1583903024,"epoch_utc":null},{"commit":"12a370deed03ba42d7b7ebb410195ce5f32bb9c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 21:51:02 2020 -0700","stats":{"files_changed":8,"insertions":372,"deletions":9,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/airport.md","docs/parsers/airport_s.md","jc/cli.py","jc/parsers/airport.py","jc/parsers/airport_s.py"],"file_stats":[{"name":"README.md","lines_changed":47},{"name":"changelog.txt","lines_changed":2},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/airport.md","lines_changed":4},{"name":"docs/parsers/airport_s.md","lines_changed":136},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/airport.py","lines_changed":5},{"name":"jc/parsers/airport_s.py","lines_changed":185}]},"message":"add airport -s parser for issue #46","epoch":1583902262,"epoch_utc":null},{"commit":"553bfbe1a0dd866851ba7eca66e9295c2097ad86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 21:02:17 2020 -0700","stats":{"files_changed":3,"insertions":40,"deletions":6,"files":["docs/parsers/airport.md","jc/parsers/airport.py","tests/test_airport.py"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":9},{"name":"jc/parsers/airport.py","lines_changed":9},{"name":"tests/test_airport.py","lines_changed":28}]},"message":"tests passing for airport -I. Issue #46","epoch":1583899337,"epoch_utc":null},{"commit":"52494321fcfe0dc7ee71d8d78210b3c10372a237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 20:55:07 2020 -0700","stats":{"files_changed":5,"insertions":120,"deletions":15,"files":["README.md","docs/parsers/airport.md","jc/parsers/airport.py","tests/fixtures/osx-10.14.6/airport-I.json","tests/fixtures/osx-10.14.6/airport-I.out"],"file_stats":[{"name":"README.md","lines_changed":22},{"name":"docs/parsers/airport.md","lines_changed":48},{"name":"jc/parsers/airport.py","lines_changed":62},{"name":"tests/fixtures/osx-10.14.6/airport-I.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/airport-I.out","lines_changed":2}]},"message":"fixes and docs for airport parser issue #46","epoch":1583898907,"epoch_utc":null},{"commit":"c6c9e06496683d2dd3586d17085801c7e698d960","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 20:35:52 2020 -0700","stats":{"files_changed":7,"insertions":196,"deletions":1,"files":["changelog.txt","docgen.sh","docs/parsers/airport.md","jc/cli.py","jc/parsers/airport.py","tests/fixtures/osx-10.14.6/airport-I.out","tests/fixtures/osx-10.14.6/airport-s.out"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/airport.md","lines_changed":64},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/airport.py","lines_changed":98},{"name":"tests/fixtures/osx-10.14.6/airport-I.out","lines_changed":15},{"name":"tests/fixtures/osx-10.14.6/airport-s.out","lines_changed":15}]},"message":"added airport command parser","epoch":1583897752,"epoch_utc":null},{"commit":"e3a6c05a58a2451e70975d8fabf644c56603c73d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 20:26:53 2020 -0700","stats":{"files_changed":5,"insertions":64,"deletions":17,"files":["docs/parsers/timedatectl.md","jc/parsers/timedatectl.py","tests/fixtures/centos-7.7/timedatectl.json","tests/fixtures/ubuntu-18.04/timedatectl.json","tests/test_timedatectl.py"],"file_stats":[{"name":"docs/parsers/timedatectl.md","lines_changed":18},{"name":"jc/parsers/timedatectl.py","lines_changed":21},{"name":"tests/fixtures/centos-7.7/timedatectl.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/timedatectl.json","lines_changed":1},{"name":"tests/test_timedatectl.py","lines_changed":40}]},"message":"timedatectl fixes, tests, and fixtures for issue #42","epoch":1583897213,"epoch_utc":null},{"commit":"391d06f68d1f45d33590d5407d3a5e4f723af717","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 20:16:41 2020 -0700","stats":{"files_changed":7,"insertions":35,"deletions":35,"files":["README.md","docs/parsers/ntpq.md","jc/parsers/ntpq.py","tests/fixtures/centos-7.7/ntpq-p.json","tests/fixtures/centos-7.7/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-p.json","tests/fixtures/ubuntu-18.04/ntpq-pn.json"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docs/parsers/ntpq.md","lines_changed":26},{"name":"jc/parsers/ntpq.py","lines_changed":32},{"name":"tests/fixtures/centos-7.7/ntpq-p.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ntpq-pn.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ntpq-pn.json","lines_changed":2}]},"message":"change selection_state to state","epoch":1583896601,"epoch_utc":null},{"commit":"99804ea06e0c70e3a82ddc7f9c7a42343374d700","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 18:37:55 2020 -0700","stats":{"files_changed":6,"insertions":222,"deletions":0,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/timedatectl.md","jc/cli.py","jc/parsers/timedatectl.py"],"file_stats":[{"name":"README.md","lines_changed":15},{"name":"changelog.txt","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/timedatectl.md","lines_changed":85},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/timedatectl.py","lines_changed":119}]},"message":"added timedatectl status parser","epoch":1583890675,"epoch_utc":null},{"commit":"51935deb2ad18e4ea3ca16954ce810354f6095a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 18:00:47 2020 -0700","stats":{"files_changed":2,"insertions":21,"deletions":0,"files":["tests/fixtures/centos-7.7/timedatectl.out","tests/fixtures/ubuntu-18.04/timedatectl.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/timedatectl.out","lines_changed":14},{"name":"tests/fixtures/ubuntu-18.04/timedatectl.out","lines_changed":7}]},"message":"timedatectl test fixtures","epoch":1583888447,"epoch_utc":null},{"commit":"b24d0c3a475b88d9ccf1a8fe29715ee60972fcad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 18:00:26 2020 -0700","stats":{"files_changed":2,"insertions":34,"deletions":2,"files":["README.md","jc/parsers/ntpq.py"],"file_stats":[{"name":"README.md","lines_changed":33},{"name":"jc/parsers/ntpq.py","lines_changed":3}]},"message":"ntpq docs","epoch":1583888426,"epoch_utc":null},{"commit":"762a886d6fdf5c2ad21d81868d138fb32621ed1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 15:17:25 2020 -0700","stats":{"files_changed":8,"insertions":133,"deletions":0,"files":["tests/fixtures/centos-7.7/ntpq-p.json","tests/fixtures/centos-7.7/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-p.json","tests/fixtures/ubuntu-18.04/ntpq-p.out","tests/fixtures/ubuntu-18.04/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-pn.out","tests/fixtures/ubuntu-18.04/ntqp-p.out","tests/test_ntpq.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ntpq-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ntpq-pn.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-18.04/ntpq-pn.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ntpq-pn.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-18.04/ntqp-p.out","lines_changed":21},{"name":"tests/test_ntpq.py","lines_changed":66}]},"message":"add ntpq tests","epoch":1583878645,"epoch_utc":null},{"commit":"2c3e9ddfe47f56cd7edc2fdf6317f7ecec0b7918","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 14:18:55 2020 -0700","stats":{"files_changed":7,"insertions":543,"deletions":0,"files":["changelog.txt","docgen.sh","docs/parsers/ntpq.md","jc/cli.py","jc/parsers/ntpq.py","tests/fixtures/centos-7.7/ntpq-p.out","tests/fixtures/centos-7.7/ntpq-pn.out"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ntpq.md","lines_changed":235},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/ntpq.py","lines_changed":291},{"name":"tests/fixtures/centos-7.7/ntpq-p.out","lines_changed":6},{"name":"tests/fixtures/centos-7.7/ntpq-pn.out","lines_changed":6}]},"message":"add ntpq parser for issue #31","epoch":1583875135,"epoch_utc":null},{"commit":"c7cd2b63c8f24e9d17c458880fe401d8032395ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 9 11:46:17 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":91,"files":["tests/fixtures/generic/oscar_age_male.csv"],"file_stats":[{"name":"tests/fixtures/generic/oscar_age_male.csv","lines_changed":91}]},"message":"delete unused test file","epoch":1583779577,"epoch_utc":null},{"commit":"f0528ea83112e71ff51c89be27fc9bbdfbbf1951","merge":"b5eaff2 5bc5596","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:54:13 2020 -0700","message":"Merge pull request #45 from kellyjonbrazil/dev\n\nDev v1.8.1","epoch":1583704453,"epoch_utc":null},{"commit":"5bc5596f604fb87dffbfdf44ce2395b16bf01297","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:49:23 2020 -0700","stats":{"files_changed":4,"insertions":17,"deletions":4,"files":["changelog.txt","jc/cli.py","setup.py","tests/test_ls.py"],"file_stats":[{"name":"changelog.txt","lines_changed":5},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2},{"name":"tests/test_ls.py","lines_changed":12}]},"message":"version bump to 1.8.1","epoch":1583704163,"epoch_utc":null},{"commit":"2c27ac46be803b583caf82c1765bd0c35cee8bc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:43:51 2020 -0700","stats":{"files_changed":2,"insertions":2454,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-lR-empty-folder.json","tests/fixtures/osx-10.14.6/ls-lR-empty-folder.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ls-lR-empty-folder.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-lR-empty-folder.out","lines_changed":2453}]},"message":"add ls test fixtures","epoch":1583703831,"epoch_utc":null},{"commit":"caad840153e40dc660a2d5e06a96f3451fef25f9","merge":"aff86ae 65bd7e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:19:37 2020 -0700","message":"Merge pull request #44 from philippeitis/patch-5\n\nMove core magic() logic into seperate function for testability, minor tweaks","epoch":1583702377,"epoch_utc":null},{"commit":"65bd7e2904016141c1ed53cdd437865c66d7628e","merge":"17b6efe c3d7d7d","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Sun Mar 8 14:10:35 2020 -0700","message":"Merge pull request #1 from kellyjonbrazil/pr/44\n\nMerge changes","epoch":1583701835,"epoch_utc":null},{"commit":"c3d7d7db12d4870fc4499e0e3445d85ae89f2aea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:03:08 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"removed whitespace","epoch":1583701388,"epoch_utc":null},{"commit":"56053103625af6fb7fa749fc5bc3dbdc62fc223c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:02:54 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":4,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":15}]},"message":"added tests, removed os import, changed to 'assertEqual'","epoch":1583701374,"epoch_utc":null},{"commit":"17b6efe82e6a558353b011c543489eaaf3a6d3ac","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Sun Mar 8 13:35:01 2020 -0700","stats":{"files_changed":1,"insertions":14,"deletions":0,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":14}]},"message":"Create basic tests for generate_magic_commands()","epoch":1583699701,"epoch_utc":null},{"commit":"a032ae56ae7d247e00415267b65b2a8b80a3302e","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Sun Mar 8 13:26:15 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"Pass args to generate_magic_command() to allow testing.","epoch":1583699175,"epoch_utc":null},{"commit":"eab2f4b0566b4c76db661cbfa99a56a6bf8d6541","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Sun Mar 8 13:20:38 2020 -0700","stats":{"files_changed":1,"insertions":33,"deletions":19,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":52}]},"message":"Move core magic() logic into seperate function for testability, minor tweaks.\n\nWe only care about the command when testing magic() - by moving that out, we can easily test the command. I modified the code to return a boolean signalling that the command is valid, and the command itself to maintain the original functionality.\n\nI also made some small tweaks (removed a list() call, fixed a possible bug with no arguments., moved magic_dict instantiation past the fast path checks to avoid making a dict if not needed.)","epoch":1583698838,"epoch_utc":null},{"commit":"aff86ae6c71abfe1cbdba5c574a5f3707292ec19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 12:58:26 2020 -0700","stats":{"files_changed":1,"insertions":29,"deletions":39,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":68}]},"message":"reimpliment magic() based on the dictionary approach suggested by philippeitis","epoch":1583697506,"epoch_utc":null},{"commit":"7ece9ddc1a37551cdaaac50f37a48e6d98b18bf4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 7 17:26:42 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"version bump ls","epoch":1583630802,"epoch_utc":null},{"commit":"7cd048e839a7cc8404fd5abc153a3d315c207819","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 7 17:25:10 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update","epoch":1583630710,"epoch_utc":null},{"commit":"1e22f610a33903e8525d35a18b1dcf760a93791e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 7 17:22:08 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"fix for osx - doesn't print 'total xx' line if empty directory (issue #40)","epoch":1583630528,"epoch_utc":null},{"commit":"5249c972ae25e9b289a2667bf471aad5e58c70a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 6 12:09:20 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":4}]},"message":"add to changelog","epoch":1583525360,"epoch_utc":null},{"commit":"fd45f856a050f6c56a7a6b50b97b3d8c4de28af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 6 12:09:09 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":2}]},"message":"import jc.utils instead of jc","epoch":1583525349,"epoch_utc":null},{"commit":"c8ab40cd33b14a3a1937ecf64bb23e282f5bb921","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 5 09:19:58 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"],"file_stats":[{"name":".gitignore","lines_changed":1}]},"message":"ignore .github folder","epoch":1583428798,"epoch_utc":null},{"commit":"b2c872925b37254dac74578c1803b4127f8411c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 19:47:03 2020 -0800","stats":{"files_changed":20,"insertions":208,"deletions":220,"files":["tests/test_ls.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_passwd.py","tests/test_pip_list.py","tests/test_ps.py","tests/test_route.py","tests/test_shadow.py","tests/test_ss.py","tests/test_systemctl_lj.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py","tests/test_who.py","tests/test_xml.py","tests/test_yaml.py"],"file_stats":[{"name":"tests/test_ls.py","lines_changed":132},{"name":"tests/test_lsmod.py","lines_changed":8},{"name":"tests/test_lsof.py","lines_changed":16},{"name":"tests/test_mount.py","lines_changed":16},{"name":"tests/test_netstat.py","lines_changed":40},{"name":"tests/test_passwd.py","lines_changed":12},{"name":"tests/test_pip_list.py","lines_changed":20},{"name":"tests/test_ps.py","lines_changed":32},{"name":"tests/test_route.py","lines_changed":16},{"name":"tests/test_shadow.py","lines_changed":8},{"name":"tests/test_ss.py","lines_changed":8},{"name":"tests/test_systemctl_lj.py","lines_changed":16},{"name":"tests/test_systemctl_ls.py","lines_changed":8},{"name":"tests/test_systemctl_luf.py","lines_changed":8},{"name":"tests/test_uname.py","lines_changed":16},{"name":"tests/test_uptime.py","lines_changed":16},{"name":"tests/test_w.py","lines_changed":16},{"name":"tests/test_who.py","lines_changed":24},{"name":"tests/test_xml.py","lines_changed":8},{"name":"tests/test_yaml.py","lines_changed":8}]},"message":"add utf-8 encoding for testing on Windows","epoch":1583380023,"epoch_utc":null},{"commit":"f48e229202f8ab1ebfa502ca57bb31cf673c7a62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 19:40:32 2020 -0800","stats":{"files_changed":21,"insertions":192,"deletions":192,"files":["tests/test_arp.py","tests/test_blkid.py","tests/test_crontab.py","tests/test_crontab_u.py","tests/test_csv.py","tests/test_df.py","tests/test_dig.py","tests/test_du.py","tests/test_env.py","tests/test_free.py","tests/test_fstab.py","tests/test_group.py","tests/test_gshadow.py","tests/test_history.py","tests/test_hosts.py","tests/test_id.py","tests/test_ifconfig.py","tests/test_ini.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_last.py"],"file_stats":[{"name":"tests/test_arp.py","lines_changed":32},{"name":"tests/test_blkid.py","lines_changed":40},{"name":"tests/test_crontab.py","lines_changed":4},{"name":"tests/test_crontab_u.py","lines_changed":8},{"name":"tests/test_csv.py","lines_changed":36},{"name":"tests/test_df.py","lines_changed":32},{"name":"tests/test_dig.py","lines_changed":24},{"name":"tests/test_du.py","lines_changed":16},{"name":"tests/test_env.py","lines_changed":8},{"name":"tests/test_free.py","lines_changed":16},{"name":"tests/test_fstab.py","lines_changed":8},{"name":"tests/test_group.py","lines_changed":12},{"name":"tests/test_gshadow.py","lines_changed":8},{"name":"tests/test_history.py","lines_changed":8},{"name":"tests/test_hosts.py","lines_changed":8},{"name":"tests/test_id.py","lines_changed":8},{"name":"tests/test_ifconfig.py","lines_changed":24},{"name":"tests/test_ini.py","lines_changed":8},{"name":"tests/test_iptables.py","lines_changed":48},{"name":"tests/test_jobs.py","lines_changed":8},{"name":"tests/test_last.py","lines_changed":28}]},"message":"utf-8 open for windows tests","epoch":1583379632,"epoch_utc":null},{"commit":"799fec92c39b1ff0696c6ebb182c4bef66b86e56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 19:33:45 2020 -0800","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["tests/test_pip_show.py","tests/test_systemctl.py"],"file_stats":[{"name":"tests/test_pip_show.py","lines_changed":16},{"name":"tests/test_systemctl.py","lines_changed":8}]},"message":"utf-8 for windows support","epoch":1583379225,"epoch_utc":null},{"commit":"87a41c2fcaa395f108b5a5126ed77f7cc7fe5d6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 19:30:30 2020 -0800","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["tests/test_lsblk.py","tests/test_stat.py"],"file_stats":[{"name":"tests/test_lsblk.py","lines_changed":16},{"name":"tests/test_stat.py","lines_changed":8}]},"message":"add utf-8 to open function","epoch":1583379030,"epoch_utc":null},{"commit":"7f85de0c46cda95d57b9677ba0ca3ea59690e502","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 19:28:21 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"add windows-latest","epoch":1583378901,"epoch_utc":null},{"commit":"13661b19934a74417713e98e3e1e4df6bb0f29ad","merge":"5f798d6 51d5c38","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 16:54:26 2020 -0800","message":"Merge pull request #37 from philippeitis/continuous_integration\n\nEnable Continuous Integration with GitHub Actions.","epoch":1583369666,"epoch_utc":null},{"commit":"51d5c3892d6ff1e2e6ac7c4f3e496e7d9ed4b6a7","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 16:21:06 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"Remove Windows tests, due to lack of support.","epoch":1583367666,"epoch_utc":null},{"commit":"e4eab4641ac15220f2787c5d27b443ab8c718b86","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 16:17:58 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":3}]},"message":"Change line in blkid.py to trigger CI","epoch":1583367478,"epoch_utc":null},{"commit":"9b148e0ba37e18749d95608e1bac6c090ab83ee2","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 16:16:19 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["requirements.txt"],"file_stats":[{"name":"requirements.txt","lines_changed":3}]},"message":"Add requirements.txt","epoch":1583367379,"epoch_utc":null},{"commit":"de28932650d5027e2781011f1243b89f053b241d","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 16:14:03 2020 -0800","stats":{"files_changed":1,"insertions":7,"deletions":6,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":13}]},"message":"Consolidate dictionary into creation, trigger CI","epoch":1583367243,"epoch_utc":null},{"commit":"5f798d603e461d2de5adf74662ba4d4b121f28f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 16:11:14 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":3}]},"message":"version bump and ack to philippeitis","epoch":1583367074,"epoch_utc":null},{"commit":"a0757b2dd3fc0f3e26622941d93bd909dae0a1f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 16:07:53 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":5,"files":["jc/parsers/foo.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":6}]},"message":"optimize line parsing","epoch":1583366873,"epoch_utc":null},{"commit":"498d51b4e802cb40cac58aae1eff1f723bbbd896","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 16:07:32 2020 -0800","stats":{"files_changed":1,"insertions":31,"deletions":0,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":31}]},"message":"Enable Continuous Integration with GitHub Actions.\n\nThis automatically runs unit tests on various operating systems and Python versions when Python files are modified to ensure that functionality remains correct.","epoch":1583366852,"epoch_utc":null},{"commit":"b06b6bae3f64f591c9075812dc1b632ef6d2da37","merge":"6aa2d5a 0652768","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 16:04:05 2020 -0800","message":"Merge pull request #36 from philippeitis/patch-3\n\nSimplify process() in history.py, avoid list allocation in parse()","epoch":1583366645,"epoch_utc":null},{"commit":"b5eaff21372a58aefb66e5afc5e863db8355fee1","merge":"d75c406 c01bcd3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 15:33:13 2020 -0800","message":"Merge pull request #35 from kellyjonbrazil/revert-34-patch-3\n\nRevert \"Simplify process() in history.py, avoid list allocation in parse()\"","epoch":1583364793,"epoch_utc":null},{"commit":"c01bcd3734382a0c388d9f4041fc888171ca7675","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 15:32:23 2020 -0800","stats":{"files_changed":1,"insertions":25,"deletions":12,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":37}]},"message":"Revert \"Simplify process() in history.py, avoid list allocation in parse()\"","epoch":1583364743,"epoch_utc":null},{"commit":"d75c4068caaf4adbe9a39fa452ae867421053673","merge":"d96b3a6 0652768","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 15:31:55 2020 -0800","message":"Merge pull request #34 from philippeitis/patch-3\n\nSimplify process() in history.py, avoid list allocation in parse()","epoch":1583364715,"epoch_utc":null},{"commit":"6aa2d5a3d26f9f00c3334928f6f0e501860433da","merge":"69576f6 a63408c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 15:28:09 2020 -0800","message":"Merge pull request #33 from philippeitis/patch-2\n\nHandle case where only options are passed.","epoch":1583364489,"epoch_utc":null},{"commit":"065276805f0f2dd23a6382f0120ca07e9eae116f","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 13:35:31 2020 -0800","stats":{"files_changed":1,"insertions":12,"deletions":25,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":37}]},"message":"Simplify process() in history.py, avoid list allocation in parse()","epoch":1583357731,"epoch_utc":null},{"commit":"a63408c8cf3f99646be2b375f651d6cf417f7ae0","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 13:16:35 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"Handle case where only options are passed.","epoch":1583356595,"epoch_utc":null},{"commit":"69576f6bfae073196627a0a39b5ececb8666d25c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 12:03:40 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6}]},"message":"minor sytax fixes","epoch":1583352220,"epoch_utc":null},{"commit":"19845624e2996da4653efc2f312aceb514feaf5c","merge":"d96b3a6 22ff296","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 11:59:29 2020 -0800","message":"Merge pull request #32 from philippeitis/patch-1\n\nSimplify main(), magic() methods.","epoch":1583351969,"epoch_utc":null},{"commit":"22ff2964e9889587711e779ac24f8f8034212f5e","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 10:33:42 2020 -0800","stats":{"files_changed":1,"insertions":62,"deletions":75,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":137}]},"message":"Simplify main(), magic() methods.","epoch":1583346822,"epoch_utc":null},{"commit":"d96b3a65a98bc135d21d4feafc0a43317b5a11fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 08:30:52 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1583339452,"epoch_utc":null},{"commit":"4989445ef4bb8919d9b3b95e2fcee77ca7692aec","merge":"53ee2c3 6770892","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 11:46:09 2020 -0800","message":"Merge pull request #30 from kellyjonbrazil/dev\n\nDev v1.8.0","epoch":1583264769,"epoch_utc":null},{"commit":"6770892acd49aced225dbccf39290f33522c9001","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 11:37:59 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add release notes link","epoch":1583264279,"epoch_utc":null},{"commit":"d4eba8740fc325756f3db96ab37a5383540cbeff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 11:08:52 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"release date 3/3","epoch":1583262532,"epoch_utc":null},{"commit":"9f607605605e47990f97ccfd48fde19a14e036e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 10:54:27 2020 -0800","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["tests/test_group.py","tests/test_gshadow.py"],"file_stats":[{"name":"tests/test_group.py","lines_changed":52},{"name":"tests/test_gshadow.py","lines_changed":40}]},"message":"add group and gshadow tests","epoch":1583261667,"epoch_utc":null},{"commit":"0a8f8ac934f040141e6a4eec8cf7170e1ca73294","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:55:43 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"add group and gshadow parsers","epoch":1583258143,"epoch_utc":null},{"commit":"6ae24c82447bcff606e7027dd01b916293b49584","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:55:17 2020 -0800","stats":{"files_changed":10,"insertions":274,"deletions":0,"files":["tests/fixtures/centos-7.7/group.json","tests/fixtures/centos-7.7/group.out","tests/fixtures/centos-7.7/gshadow.json","tests/fixtures/centos-7.7/gshadow.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/group.json","tests/fixtures/osx-10.14.6/group.out","tests/fixtures/ubuntu-18.04/group.json","tests/fixtures/ubuntu-18.04/group.out","tests/fixtures/ubuntu-18.04/gshadow.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/group.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/group.out","lines_changed":39},{"name":"tests/fixtures/centos-7.7/gshadow.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/gshadow.out","lines_changed":39},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":3},{"name":"tests/fixtures/osx-10.14.6/group.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/group.out","lines_changed":135},{"name":"tests/fixtures/ubuntu-18.04/group.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/group.out","lines_changed":53},{"name":"tests/fixtures/ubuntu-18.04/gshadow.json","lines_changed":1}]},"message":"add group and gshadow test fixtures","epoch":1583258117,"epoch_utc":null},{"commit":"d3679082a8c5cff76eb7de67c33fe716a1402182","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:36:16 2020 -0800","stats":{"files_changed":1,"insertions":64,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":64}]},"message":"add group and gshadow parsers","epoch":1583256976,"epoch_utc":null},{"commit":"fb08b42dca135705a3759435335d95c898d47f60","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:32:56 2020 -0800","stats":{"files_changed":2,"insertions":21,"deletions":21,"files":["docs/parsers/group.md","jc/parsers/group.py"],"file_stats":[{"name":"docs/parsers/group.md","lines_changed":18},{"name":"jc/parsers/group.py","lines_changed":24}]},"message":"change 'group_list' to 'members'","epoch":1583256776,"epoch_utc":null},{"commit":"4aeaa9f42a88bf4e05c8780a35cc8c4d83c9b842","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:32:25 2020 -0800","stats":{"files_changed":5,"insertions":316,"deletions":0,"files":["docgen.sh","docs/parsers/gshadow.md","jc/cli.py","jc/parsers/gshadow.py","tests/fixtures/ubuntu-18.04/gshadow.out"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/gshadow.md","lines_changed":109},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/gshadow.py","lines_changed":152},{"name":"tests/fixtures/ubuntu-18.04/gshadow.out","lines_changed":53}]},"message":"add /etc/gshadow parser","epoch":1583256745,"epoch_utc":null},{"commit":"5f5693da048cb4739dc56500c672dc8fbccaaf32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:07:28 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["docs/parsers/csv.md"],"file_stats":[{"name":"docs/parsers/csv.md","lines_changed":3}]},"message":"spelling fix","epoch":1583255248,"epoch_utc":null},{"commit":"5eb0f61727f92a84fb3620e13db072167ef552ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:07:09 2020 -0800","stats":{"files_changed":4,"insertions":333,"deletions":0,"files":["docgen.sh","docs/parsers/group.md","jc/cli.py","jc/parsers/group.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/group.md","lines_changed":141},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/group.py","lines_changed":190}]},"message":"add /etc/group file parser","epoch":1583255229,"epoch_utc":null},{"commit":"958e998991b1cc61dc1dc341b90cd53f4691cd43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 17:15:05 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/csv.py"],"file_stats":[{"name":"jc/parsers/csv.py","lines_changed":4}]},"message":"formatting","epoch":1583198105,"epoch_utc":null},{"commit":"b78c1509f67fb76d17ac97193a2851d8d9e17f62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 15:06:25 2020 -0800","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/csv.py"],"file_stats":[{"name":"jc/parsers/csv.py","lines_changed":10}]},"message":"try/except dialect detection","epoch":1583190385,"epoch_utc":null},{"commit":"ce184d4d57faa3f1bca5bcaa02da7a5a5d995eb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 15:05:56 2020 -0800","stats":{"files_changed":20,"insertions":24054,"deletions":0,"files":["tests/fixtures/generic/csv-biostats.csv","tests/fixtures/generic/csv-biostats.json","tests/fixtures/generic/csv-cities.csv","tests/fixtures/generic/csv-cities.json","tests/fixtures/generic/csv-deniro.csv","tests/fixtures/generic/csv-deniro.json","tests/fixtures/generic/csv-example.csv","tests/fixtures/generic/csv-example.json","tests/fixtures/generic/csv-flyrna.json","tests/fixtures/generic/csv-flyrna.tsv","tests/fixtures/generic/csv-flyrna2.json","tests/fixtures/generic/csv-flyrna2.tsv","tests/fixtures/generic/csv-homes-pipe.csv","tests/fixtures/generic/csv-homes-pipe.json","tests/fixtures/generic/csv-homes.csv","tests/fixtures/generic/csv-homes.json","tests/fixtures/generic/csv-insurance.csv","tests/fixtures/generic/csv-insurance.json","tests/fixtures/generic/oscar_age_male.csv","tests/test_csv.py"],"file_stats":[{"name":"tests/fixtures/generic/csv-biostats.csv","lines_changed":20},{"name":"tests/fixtures/generic/csv-biostats.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-cities.csv","lines_changed":130},{"name":"tests/fixtures/generic/csv-cities.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-deniro.csv","lines_changed":89},{"name":"tests/fixtures/generic/csv-deniro.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-example.csv","lines_changed":2},{"name":"tests/fixtures/generic/csv-example.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna.tsv","lines_changed":11767},{"name":"tests/fixtures/generic/csv-flyrna2.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna2.tsv","lines_changed":11767},{"name":"tests/fixtures/generic/csv-homes-pipe.csv","lines_changed":3},{"name":"tests/fixtures/generic/csv-homes-pipe.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-homes.csv","lines_changed":51},{"name":"tests/fixtures/generic/csv-homes.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-insurance.csv","lines_changed":1},{"name":"tests/fixtures/generic/csv-insurance.json","lines_changed":1},{"name":"tests/fixtures/generic/oscar_age_male.csv","lines_changed":91},{"name":"tests/test_csv.py","lines_changed":124}]},"message":"add csv parser tests","epoch":1583190356,"epoch_utc":null},{"commit":"b4c3714ced9ee5cc6a7ef0c59a43cf85e1cb9824","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 14:10:15 2020 -0800","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"removed [OPTIONS] PARSER syntax. still works but prefer the PARSER [OPTIONS] syntax for better performance","epoch":1583187015,"epoch_utc":null},{"commit":"5b7dfa043864f1a3f34aa4ef5c6554a2dfe185f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 14:07:56 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"formatting","epoch":1583186876,"epoch_utc":null},{"commit":"391a3884765780497dc34e0e9938ff5032c81291","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 14:07:29 2020 -0800","stats":{"files_changed":2,"insertions":49,"deletions":0,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":48},{"name":"changelog.txt","lines_changed":1}]},"message":"doc update","epoch":1583186849,"epoch_utc":null},{"commit":"d9c4e2ed4c0f908f4b63c2376b53ddfd32a0fae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 14:03:58 2020 -0800","stats":{"files_changed":4,"insertions":241,"deletions":0,"files":["docgen.sh","docs/parsers/csv.md","jc/cli.py","jc/parsers/csv.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/csv.md","lines_changed":104},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/csv.py","lines_changed":135}]},"message":"add csv file parser","epoch":1583186638,"epoch_utc":null},{"commit":"0c42db38b102987629e40cee2716b826161e6e94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 10:30:12 2020 -0800","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/who.md","jc/parsers/who.py"],"file_stats":[{"name":"docs/parsers/who.md","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":2}]},"message":"doc update","epoch":1583173812,"epoch_utc":null},{"commit":"2f9be8bf33f8be5651d06da9d316f7894606df19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 08:32:42 2020 -0800","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"simplify usage","epoch":1583166762,"epoch_utc":null},{"commit":"e8c00155e861b9eedfdf37a22912271bec581d62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 07:43:45 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"add -b to warning message","epoch":1583163825,"epoch_utc":null},{"commit":"cc88fdd9ee3951d7ef2aa881cc12f0b7f96aef86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 21:17:50 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"update example","epoch":1583126270,"epoch_utc":null},{"commit":"d9de11ef1d846a9625dad0adb962b864404c90c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 21:16:57 2020 -0800","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":16}]},"message":"add another who example","epoch":1583126217,"epoch_utc":null},{"commit":"0ceda97d0968b67b70cdbb68f7a62657e79c9935","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 19:03:27 2020 -0800","stats":{"files_changed":1,"insertions":88,"deletions":0,"files":["tests/test_who.py"],"file_stats":[{"name":"tests/test_who.py","lines_changed":88}]},"message":"who parser tests","epoch":1583118207,"epoch_utc":null},{"commit":"d0dec92ba84640ddc40da7c6faa6568b76757e04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 18:57:51 2020 -0800","stats":{"files_changed":12,"insertions":36,"deletions":0,"files":["tests/fixtures/centos-7.7/who-a.json","tests/fixtures/centos-7.7/who-a.out","tests/fixtures/centos-7.7/who.json","tests/fixtures/centos-7.7/who.out","tests/fixtures/osx-10.14.6/who-a.json","tests/fixtures/osx-10.14.6/who-a.out","tests/fixtures/osx-10.14.6/who.json","tests/fixtures/osx-10.14.6/who.out","tests/fixtures/ubuntu-18.04/who-a.json","tests/fixtures/ubuntu-18.04/who-a.out","tests/fixtures/ubuntu-18.04/who.json","tests/fixtures/ubuntu-18.04/who.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/who-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/who-a.out","lines_changed":6},{"name":"tests/fixtures/centos-7.7/who.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/who.out","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/who-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/who-a.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/who.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/who.out","lines_changed":4},{"name":"tests/fixtures/ubuntu-18.04/who-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/who-a.out","lines_changed":6},{"name":"tests/fixtures/ubuntu-18.04/who.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/who.out","lines_changed":3}]},"message":"add who test fixtures","epoch":1583117871,"epoch_utc":null},{"commit":"d420c008d8aaa0879fa5a3f236d81acb506376c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 17:52:14 2020 -0800","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/who.py","lines_changed":9}]},"message":"fix for pts lines with no user info","epoch":1583113934,"epoch_utc":null},{"commit":"f0b32db4333477e22cc40de62cf026a6a7aa2eb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 17:39:02 2020 -0800","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","docs/parsers/who.md"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docs/parsers/who.md","lines_changed":8}]},"message":"who doc update","epoch":1583113142,"epoch_utc":null},{"commit":"bc838eda591473d32b11a885e60ef653925739d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 17:38:51 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/who.py","lines_changed":9}]},"message":"fix output for non-extended","epoch":1583113131,"epoch_utc":null},{"commit":"afe55b6af07b74816d33d9555ffaa1c1921dd27a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 17:07:28 2020 -0800","stats":{"files_changed":1,"insertions":46,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":46}]},"message":"add who parser","epoch":1583111248,"epoch_utc":null},{"commit":"dd3a3ac302d7b35beef1181e74aed0faf96fd3e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 17:04:06 2020 -0800","stats":{"files_changed":4,"insertions":255,"deletions":9,"files":["changelog.txt","docgen.sh","docs/parsers/who.md","jc/parsers/who.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/who.md","lines_changed":150},{"name":"jc/parsers/who.py","lines_changed":112}]},"message":"doc update and process pid integers","epoch":1583111046,"epoch_utc":null},{"commit":"f9982a79474c1838f37fc0ff88437980b228d7a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 16:49:52 2020 -0800","stats":{"files_changed":1,"insertions":11,"deletions":2,"files":["jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/who.py","lines_changed":13}]},"message":"fixes for from and comment fields","epoch":1583110192,"epoch_utc":null},{"commit":"07c1be9e9ad9f62cf76c23788152de8f3530ee16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 16:30:04 2020 -0800","stats":{"files_changed":2,"insertions":170,"deletions":0,"files":["jc/cli.py","jc/parsers/who.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/who.py","lines_changed":169}]},"message":"add who command parser","epoch":1583109004,"epoch_utc":null},{"commit":"f832b88755bfbd3878ec402e603180e6825279be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 10:17:47 2020 -0800","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["tests/test_passwd.py","tests/test_shadow.py"],"file_stats":[{"name":"tests/test_passwd.py","lines_changed":52},{"name":"tests/test_shadow.py","lines_changed":40}]},"message":"add passwd and shadow tests","epoch":1583086667,"epoch_utc":null},{"commit":"0fac757efca41db062b2f65acc727963c5fb353c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 12:25:41 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"add passwd and shadow parsers","epoch":1583007941,"epoch_utc":null},{"commit":"fc15742065531152f3d5895042eeb806e33a192a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 12:25:22 2020 -0800","stats":{"files_changed":10,"insertions":215,"deletions":0,"files":["tests/fixtures/centos-7.7/passwd.json","tests/fixtures/centos-7.7/passwd.out","tests/fixtures/centos-7.7/shadow.json","tests/fixtures/centos-7.7/shadow.out","tests/fixtures/osx-10.14.6/passwd.json","tests/fixtures/osx-10.14.6/passwd.out","tests/fixtures/ubuntu-18.04/passwd.json","tests/fixtures/ubuntu-18.04/passwd.out","tests/fixtures/ubuntu-18.04/shadow.json","tests/fixtures/ubuntu-18.04/shadow.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/passwd.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/passwd.out","lines_changed":21},{"name":"tests/fixtures/centos-7.7/shadow.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/shadow.out","lines_changed":21},{"name":"tests/fixtures/osx-10.14.6/passwd.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/passwd.out","lines_changed":108},{"name":"tests/fixtures/ubuntu-18.04/passwd.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/passwd.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/shadow.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/shadow.out","lines_changed":30}]},"message":"passwd and shadow test fixtures","epoch":1583007922,"epoch_utc":null},{"commit":"6f2466a1319eaa4256ae7a2a0f23b3ff37882d37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 11:56:12 2020 -0800","stats":{"files_changed":1,"insertions":73,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":73}]},"message":"update readme with /etc/passwd and /etc/shadow file parsers","epoch":1583006172,"epoch_utc":null},{"commit":"4b90e22f0a9c6790bca62c8314945a7ffc6e267b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 11:50:46 2020 -0800","stats":{"files_changed":2,"insertions":137,"deletions":9,"files":["docs/parsers/shadow.md","jc/parsers/shadow.py"],"file_stats":[{"name":"docs/parsers/shadow.md","lines_changed":72},{"name":"jc/parsers/shadow.py","lines_changed":74}]},"message":"doc update","epoch":1583005846,"epoch_utc":null},{"commit":"c4935687853fb3b079ae42614793cdafe68e124e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 11:46:38 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/passwd.md","jc/parsers/passwd.py"],"file_stats":[{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":2}]},"message":"doc fix","epoch":1583005598,"epoch_utc":null},{"commit":"1cdf004b7728901dc137e57b0c8994edfdd6d417","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 11:46:24 2020 -0800","stats":{"files_changed":4,"insertions":190,"deletions":0,"files":["docgen.sh","docs/parsers/shadow.md","jc/cli.py","jc/parsers/shadow.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/shadow.md","lines_changed":69},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/shadow.py","lines_changed":119}]},"message":"add /etc/shadow parser","epoch":1583005584,"epoch_utc":null},{"commit":"a4ea50426184d30cbe849a8f80bfd5c975075c9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 11:33:14 2020 -0800","stats":{"files_changed":4,"insertions":303,"deletions":0,"files":["docgen.sh","docs/parsers/passwd.md","jc/cli.py","jc/parsers/passwd.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/passwd.md","lines_changed":126},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/passwd.py","lines_changed":175}]},"message":"add /etc/passwd parser","epoch":1583004794,"epoch_utc":null},{"commit":"4c2c234c3bf68d1aac66bd4d1f22b9f97e99128d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 15:15:24 2020 -0800","stats":{"files_changed":16,"insertions":673,"deletions":0,"files":["tests/fixtures/centos-7.7/last-w.json","tests/fixtures/centos-7.7/last-w.out","tests/fixtures/centos-7.7/last.json","tests/fixtures/centos-7.7/last.out","tests/fixtures/centos-7.7/lastb.json","tests/fixtures/centos-7.7/lastb.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/last.json","tests/fixtures/osx-10.14.6/last.out","tests/fixtures/ubuntu-18.04/last-w.json","tests/fixtures/ubuntu-18.04/last-w.out","tests/fixtures/ubuntu-18.04/last.json","tests/fixtures/ubuntu-18.04/last.out","tests/fixtures/ubuntu-18.04/lastb.json","tests/fixtures/ubuntu-18.04/lastb.out","tests/test_last.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/last-w.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/last-w.out","lines_changed":69},{"name":"tests/fixtures/centos-7.7/last.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/last.out","lines_changed":69},{"name":"tests/fixtures/centos-7.7/lastb.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lastb.out","lines_changed":6},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":4},{"name":"tests/fixtures/osx-10.14.6/last.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/last.out","lines_changed":383},{"name":"tests/fixtures/ubuntu-18.04/last-w.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/last-w.out","lines_changed":16},{"name":"tests/fixtures/ubuntu-18.04/last.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/last.out","lines_changed":16},{"name":"tests/fixtures/ubuntu-18.04/lastb.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lastb.out","lines_changed":3},{"name":"tests/test_last.py","lines_changed":100}]},"message":"add last and lastb tests","epoch":1582931724,"epoch_utc":null},{"commit":"3d4c0f3e89dab6496ff74df350e3238d6625933c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 14:50:29 2020 -0800","stats":{"files_changed":22,"insertions":285,"deletions":0,"files":["tests/fixtures/centos-7.7/blkid-ip-multi.json","tests/fixtures/centos-7.7/blkid-ip-multi.out","tests/fixtures/centos-7.7/blkid-ip-udev-multi.json","tests/fixtures/centos-7.7/blkid-ip-udev-multi.out","tests/fixtures/centos-7.7/blkid-ip-udev.json","tests/fixtures/centos-7.7/blkid-ip-udev.out","tests/fixtures/centos-7.7/blkid-sda2.json","tests/fixtures/centos-7.7/blkid-sda2.out","tests/fixtures/centos-7.7/blkid.json","tests/fixtures/centos-7.7/blkid.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/blkid-ip-multi.json","tests/fixtures/ubuntu-18.04/blkid-ip-multi.out",".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.json",".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.out","tests/fixtures/ubuntu-18.04/blkid-ip-udev.json","tests/fixtures/ubuntu-18.04/blkid-ip-udev.out","tests/fixtures/ubuntu-18.04/blkid-sda2.json","tests/fixtures/ubuntu-18.04/blkid-sda2.out","tests/fixtures/ubuntu-18.04/blkid.json","tests/fixtures/ubuntu-18.04/blkid.out","tests/test_blkid.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/blkid-ip-multi.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid-ip-multi.out","lines_changed":29},{"name":"tests/fixtures/centos-7.7/blkid-ip-udev-multi.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid-ip-udev-multi.out","lines_changed":29},{"name":"tests/fixtures/centos-7.7/blkid-ip-udev.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid-ip-udev.out","lines_changed":14},{"name":"tests/fixtures/centos-7.7/blkid-sda2.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid-sda2.out","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid.out","lines_changed":4},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":6},{"name":"tests/fixtures/ubuntu-18.04/blkid-ip-multi.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid-ip-multi.out","lines_changed":2},{"name":".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.json","lines_changed":1},{"name":".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/blkid-ip-udev.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid-ip-udev.out","lines_changed":12},{"name":"tests/fixtures/ubuntu-18.04/blkid-sda2.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid-sda2.out","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid.out","lines_changed":15},{"name":"tests/test_blkid.py","lines_changed":136}]},"message":"add blkid tests","epoch":1582930229,"epoch_utc":null},{"commit":"52fad02903468c05d2422a340ad8dbcdf18ed475","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 13:31:38 2020 -0800","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":12},{"name":"jc/parsers/ls.py","lines_changed":12}]},"message":"doc update","epoch":1582925498,"epoch_utc":null},{"commit":"9dcabc057c40e345971a08474b5b886e6b60a8de","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 10:57:14 2020 -0800","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":10}]},"message":"support multi device udev output","epoch":1582916234,"epoch_utc":null},{"commit":"db8c1079ddc25922ab6a20d0f71fb19af38f8092","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 09:54:07 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":8}]},"message":"use maxsplit=1 in case there are multiple '=' delimiters","epoch":1582912447,"epoch_utc":null},{"commit":"8f954673abdbbd4d9b9da3eacc61b335b4909f89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 09:07:36 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":5}]},"message":"use shlex split for values within quotations that have spaces","epoch":1582909656,"epoch_utc":null},{"commit":"79522d1c7dd4dec15b75b06dda002752f7d97e36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 08:51:48 2020 -0800","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"doc fixes","epoch":1582908708,"epoch_utc":null},{"commit":"a18bf030794efef125c70a32fe82855e47649b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 08:50:35 2020 -0800","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/parsers/last.py","jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":12}]},"message":"use raw strings for regular expressions","epoch":1582908635,"epoch_utc":null},{"commit":"c02b6b5d827d26b43db0a3457124714aa2dbbc98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 21:21:19 2020 -0800","stats":{"files_changed":3,"insertions":81,"deletions":1,"files":["README.md","changelog.txt","setup.py"],"file_stats":[{"name":"README.md","lines_changed":79},{"name":"changelog.txt","lines_changed":1},{"name":"setup.py","lines_changed":2}]},"message":"doc updates","epoch":1582867279,"epoch_utc":null},{"commit":"f99b4232848b0d868804acc4125836bfcf475bba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 21:04:24 2020 -0800","stats":{"files_changed":2,"insertions":134,"deletions":29,"files":["docs/parsers/blkid.md","jc/parsers/blkid.py"],"file_stats":[{"name":"docs/parsers/blkid.md","lines_changed":115},{"name":"jc/parsers/blkid.py","lines_changed":48}]},"message":"doc update","epoch":1582866264,"epoch_utc":null},{"commit":"d7d9d45d4fba89e74f7490c463eb26bf20a5d127","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:59:09 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":2}]},"message":"add missing comma","epoch":1582865949,"epoch_utc":null},{"commit":"90065ec0cdc8c5abc13bc0027f63658dacf3cfb2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:57:22 2020 -0800","stats":{"files_changed":1,"insertions":31,"deletions":26,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":57}]},"message":"add more integers","epoch":1582865842,"epoch_utc":null},{"commit":"51157ebb867a48332c768bf3086614944aebdb62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:49:14 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":4}]},"message":"another devname fix","epoch":1582865354,"epoch_utc":null},{"commit":"96d95c79ca0938e326f55f858f8153df9cb49e44","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:47:07 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":6}]},"message":"devname fix","epoch":1582865227,"epoch_utc":null},{"commit":"e5da34c23306463e8707b15676db0ca53bf66757","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:41:06 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":3}]},"message":"check if devname key exists before renaming","epoch":1582864866,"epoch_utc":null},{"commit":"f09d657f7728242947db3dc63ff6779d08c37866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:36:19 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":5}]},"message":"rename devname to device","epoch":1582864579,"epoch_utc":null},{"commit":"0f4b0189f54dc0b3622cd407c5565e53ea111379","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:31:17 2020 -0800","stats":{"files_changed":1,"insertions":35,"deletions":3,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":38}]},"message":"process integer values","epoch":1582864277,"epoch_utc":null},{"commit":"4666042abb3142e2cfb518db9ffe22d9e608e090","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:21:02 2020 -0800","stats":{"files_changed":4,"insertions":216,"deletions":0,"files":["docgen.sh","docs/parsers/blkid.md","jc/cli.py","jc/parsers/blkid.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/blkid.md","lines_changed":83},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/blkid.py","lines_changed":131}]},"message":"add blkid parser","epoch":1582863662,"epoch_utc":null},{"commit":"027d544c2bb778adc0ee9463832f19b10e099a0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 16:08:56 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add last and lastb parser","epoch":1582848536,"epoch_utc":null},{"commit":"f1967d0138d27bde864c2400aa75baa8a39bbfde","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 16:08:39 2020 -0800","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":3}]},"message":"system_boot fix","epoch":1582848519,"epoch_utc":null},{"commit":"c1d896027dd1ce021e048b3e77eab24ff59d08bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 15:58:12 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":3}]},"message":"fix system_boot tty","epoch":1582847892,"epoch_utc":null},{"commit":"5c2d2a66187d32d62b31b7c7f13e502fdb7f9635","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 15:44:36 2020 -0800","stats":{"files_changed":3,"insertions":190,"deletions":6,"files":["docgen.sh","docs/parsers/last.md","jc/parsers/last.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/last.md","lines_changed":118},{"name":"jc/parsers/last.py","lines_changed":77}]},"message":"process function and docs","epoch":1582847076,"epoch_utc":null},{"commit":"997b269b0b7e53a456e2a0bd997ead6c2ae843bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 15:26:09 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":3}]},"message":"btmp fix","epoch":1582845969,"epoch_utc":null},{"commit":"61257e7525c25827cb8057ed5c612e54ea9b9637","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 15:14:43 2020 -0800","stats":{"files_changed":2,"insertions":119,"deletions":1,"files":["jc/cli.py","jc/parsers/last.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/last.py","lines_changed":117}]},"message":"add last and lastb parser","epoch":1582845283,"epoch_utc":null},{"commit":"53ee2c36310cb84390ef96644aee6871769151c9","merge":"2ad3167 8bfa0bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 10:59:14 2020 -0800","message":"Merge pull request #29 from kellyjonbrazil/dev\n\nDev v1.7.5","epoch":1582829954,"epoch_utc":null},{"commit":"8bfa0bddec9ff1c21972019467dcf5738ab3afd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 10:50:05 2020 -0800","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to 1.7.5","epoch":1582829405,"epoch_utc":null},{"commit":"ad61e6bc81177a2add7d052bf1ddec5f1b3f2976","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 10:48:09 2020 -0800","stats":{"files_changed":26,"insertions":598,"deletions":133,"files":["tests/fixtures/centos-7.7/ls-R-newlines.json","tests/fixtures/centos-7.7/ls-R-newlines.out","tests/fixtures/centos-7.7/ls-l-newlines.json","tests/fixtures/centos-7.7/ls-l-newlines.out","tests/fixtures/centos-7.7/ls-lR-newlines.json","tests/fixtures/centos-7.7/ls-lR-newlines.out","tests/fixtures/centos-7.7/ls-newlines.json","tests/fixtures/centos-7.7/ls-newlines.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/ls-R-newlines.json","tests/fixtures/osx-10.14.6/ls-R-newlines.out","tests/fixtures/osx-10.14.6/ls-l-newlines.json","tests/fixtures/osx-10.14.6/ls-l-newlines.out","tests/fixtures/osx-10.14.6/ls-lR-newlines.json","tests/fixtures/osx-10.14.6/ls-lR-newlines.out","tests/fixtures/osx-10.14.6/ls-newlines.json","tests/fixtures/osx-10.14.6/ls-newlines.out","tests/fixtures/ubuntu-18.04/ls-R-newlines.json","tests/fixtures/ubuntu-18.04/ls-R-newlines.out","tests/fixtures/ubuntu-18.04/ls-l-newlines.json","tests/fixtures/ubuntu-18.04/ls-l-newlines.out","tests/fixtures/ubuntu-18.04/ls-lR-newlines.json","tests/fixtures/ubuntu-18.04/ls-lR-newlines.out","tests/fixtures/ubuntu-18.04/ls-newlines.json","tests/fixtures/ubuntu-18.04/ls-newlines.out","tests/test_ls.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ls-R-newlines.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-R-newlines.out","lines_changed":43},{"name":"tests/fixtures/centos-7.7/ls-l-newlines.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-l-newlines.out","lines_changed":34},{"name":"tests/fixtures/centos-7.7/ls-lR-newlines.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-lR-newlines.out","lines_changed":45},{"name":"tests/fixtures/centos-7.7/ls-newlines.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-newlines.out","lines_changed":33},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":15},{"name":"tests/fixtures/osx-10.14.6/ls-R-newlines.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-R-newlines.out","lines_changed":36},{"name":"tests/fixtures/osx-10.14.6/ls-l-newlines.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-l-newlines.out","lines_changed":34},{"name":"tests/fixtures/osx-10.14.6/ls-lR-newlines.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-lR-newlines.out","lines_changed":38},{"name":"tests/fixtures/osx-10.14.6/ls-newlines.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-newlines.out","lines_changed":148},{"name":"tests/fixtures/ubuntu-18.04/ls-R-newlines.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-R-newlines.out","lines_changed":40},{"name":"tests/fixtures/ubuntu-18.04/ls-l-newlines.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-l-newlines.out","lines_changed":34},{"name":"tests/fixtures/ubuntu-18.04/ls-lR-newlines.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-lR-newlines.out","lines_changed":42},{"name":"tests/fixtures/ubuntu-18.04/ls-newlines.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-newlines.out","lines_changed":33},{"name":"tests/test_ls.py","lines_changed":144}]},"message":"add ls tests for filenames with newline characters","epoch":1582829289,"epoch_utc":null},{"commit":"873b5ba8acf599d083d6031b818d5fca83cbca9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 09:36:57 2020 -0800","stats":{"files_changed":1,"insertions":27,"deletions":31,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":58}]},"message":"move examples to bottom","epoch":1582825017,"epoch_utc":null},{"commit":"6ae50054e2e8c7ca730013b43062eedc230c0ad4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 20:30:44 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"readme update","epoch":1582605044,"epoch_utc":null},{"commit":"22a35f41bf9c404d3532611f5929143d04b10010","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 17:50:56 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":10}]},"message":"move variables to top","epoch":1582595456,"epoch_utc":null},{"commit":"961696c963215a9dab56113ff89f21a6e9739df6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 17:47:31 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"add a warning if newlines are detected in naked ls","epoch":1582595251,"epoch_utc":null},{"commit":"c7b7f1a5dcf77a1f4c23ef6bbf5683fd1a055f72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 17:24:56 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"fix for files with newlines in naked ls","epoch":1582593896,"epoch_utc":null},{"commit":"b5a0d650b128d8af81bb14dd5d007349529cb66f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 17:01:33 2020 -0800","stats":{"files_changed":1,"insertions":151,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-newlines.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ls-newlines.out","lines_changed":151}]},"message":"ls output with newlines","epoch":1582592493,"epoch_utc":null},{"commit":"573b27946474276592ee7494689ce9a88f5a05f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 17:01:12 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":6}]},"message":"fixup for filenames that start with a newline character","epoch":1582592472,"epoch_utc":null},{"commit":"116e07f1614b4a45eb58ffcfe20b5efa71c473a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 16:38:29 2020 -0800","stats":{"files_changed":1,"insertions":6,"deletions":7,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":13}]},"message":"fixes for multiple consecutive newlines and trailing newlines in filenames","epoch":1582591109,"epoch_utc":null},{"commit":"964868c8aff99edf37b0db41c7d16f8b84ac4704","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 15:19:43 2020 -0800","stats":{"files_changed":2,"insertions":21,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":20}]},"message":"add support for newlines in filenames (only with ls -l)","epoch":1582586383,"epoch_utc":null},{"commit":"c8dac32df8102c2b782e87d55bb95ca2d9490185","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 13:05:35 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"readme update","epoch":1582578335,"epoch_utc":null},{"commit":"72a0016bd833699c3819baa899f335f75b8c1943","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 20 15:38:45 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"use link to anchor for Parsers","epoch":1582241925,"epoch_utc":null},{"commit":"2ad316743460bb6620e7ede251e1dc2739b073fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 19 07:12:43 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update doc url","epoch":1582125163,"epoch_utc":null},{"commit":"ddabfaa05c63f886b17e5b4d37cd83fcfdb9b221","merge":"873771d f857523","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 19 07:05:29 2020 -0800","message":"Merge pull request #25 from kellyjonbrazil/dev\n\nDev v1.7.4","epoch":1582124729,"epoch_utc":null},{"commit":"f857523ca756864211b6b18af5a8886e5db200bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 19 07:02:50 2020 -0800","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"bump to version 1.7.4","epoch":1582124570,"epoch_utc":null},{"commit":"00d53858e820f00ba015bc25629100c8e5495221","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 22:57:15 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add note about aliases not being supported","epoch":1582009035,"epoch_utc":null},{"commit":"c008167e660929a91606bb96498cdc113e815f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 22:48:44 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":1},{"name":"jc/parsers/ls.py","lines_changed":1}]},"message":"add time-style=full-iso option to doc","epoch":1582008524,"epoch_utc":null},{"commit":"102344a041e9e0aff8b6d9db1873ba1064f7e895","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 22:32:07 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"formatting","epoch":1582007527,"epoch_utc":null},{"commit":"c865298ef3613fe6ce17f41c15209a69940af1ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 22:29:39 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":3}]},"message":"remove unnecessary enumerate in for loop","epoch":1582007379,"epoch_utc":null},{"commit":"6ac03faf939bcda8930a48a5e832b557813e2129","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 18:58:07 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"Revert \"add ubuntu and centos default ls aliases to magic_commands\"\n\nThis reverts commit 49c2701743706b6cbf0e52b2c7f275e301315189.","epoch":1581994687,"epoch_utc":null},{"commit":"49c2701743706b6cbf0e52b2c7f275e301315189","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 18:55:03 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"add ubuntu and centos default ls aliases to magic_commands","epoch":1581994503,"epoch_utc":null},{"commit":"d1a271b08e64b42be8cec11377b0e18435a0caec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 18:33:55 2020 -0800","stats":{"files_changed":21,"insertions":35333,"deletions":1374,"files":["tests/fixtures/centos-7.7/ls-R.json","tests/fixtures/centos-7.7/ls-R.out","tests/fixtures/centos-7.7/ls-alR.json","tests/fixtures/centos-7.7/ls-alR.out","tests/fixtures/centos-7.7/ls-glob.json","tests/fixtures/centos-7.7/ls-glob.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/ls-R.json","tests/fixtures/osx-10.14.6/ls-R.out","tests/fixtures/osx-10.14.6/ls-alR.json","tests/fixtures/osx-10.14.6/ls-alR.out","tests/fixtures/osx-10.14.6/ls-glob.json","tests/fixtures/osx-10.14.6/ls-glob.out","tests/fixtures/ubuntu-18.04/ls-R.json","tests/fixtures/ubuntu-18.04/ls-R.out","tests/fixtures/ubuntu-18.04/ls-alR.json","tests/fixtures/ubuntu-18.04/ls-alR.out","tests/fixtures/ubuntu-18.04/ls-glob.json","tests/fixtures/ubuntu-18.04/ls-glob.out","tests/fixtures/ubuntu-18.04/ls-lR.out","tests/test_ls.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ls-R.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-R.out","lines_changed":5089},{"name":"tests/fixtures/centos-7.7/ls-alR.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-alR.out","lines_changed":4997},{"name":"tests/fixtures/centos-7.7/ls-glob.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-glob.out","lines_changed":1919},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":5},{"name":"tests/fixtures/osx-10.14.6/ls-R.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-R.out","lines_changed":5018},{"name":"tests/fixtures/osx-10.14.6/ls-alR.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-alR.out","lines_changed":4997},{"name":"tests/fixtures/osx-10.14.6/ls-glob.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-glob.out","lines_changed":1831},{"name":"tests/fixtures/ubuntu-18.04/ls-R.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-R.out","lines_changed":5639},{"name":"tests/fixtures/ubuntu-18.04/ls-alR.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-alR.out","lines_changed":5026},{"name":"tests/fixtures/ubuntu-18.04/ls-glob.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-glob.out","lines_changed":1357},{"name":"tests/fixtures/ubuntu-18.04/ls-lR.out","lines_changed":712},{"name":"tests/test_ls.py","lines_changed":108}]},"message":"add new ls tests for recursive and multiple directories with glob","epoch":1581993235,"epoch_utc":null},{"commit":"7388ad19b9d252d3e66659e4bc37171cef2a9748","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 17:31:15 2020 -0800","stats":{"files_changed":4,"insertions":6,"deletions":4,"files":["docs/parsers/ls.md","jc/cli.py","jc/parsers/ls.py","setup.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"setup.py","lines_changed":2}]},"message":"bump to v1.8.0","epoch":1581989475,"epoch_utc":null},{"commit":"2e63cb5fadd032c7cb54a618e8b374ee853abcca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 17:16:34 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"version bump ls to 1.1","epoch":1581988594,"epoch_utc":null},{"commit":"e7f14d02b12c7dcba309f2d28a0f171769d1ba37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 17:14:27 2020 -0800","stats":{"files_changed":3,"insertions":1438,"deletions":8,"files":["jc/parsers/ls.py","tests/fixtures/ubuntu-18.04/ls-R.out","tests/fixtures/ubuntu-18.04/ls-lR.out"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":48},{"name":"tests/fixtures/ubuntu-18.04/ls-R.out","lines_changed":686},{"name":"tests/fixtures/ubuntu-18.04/ls-lR.out","lines_changed":712}]},"message":"update ls to allow multi directory (glob and -R). Adds 'parent' key if found","epoch":1581988467,"epoch_utc":null},{"commit":"873771d05ab0b77163c95d2c37e11edf38451832","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 09:16:32 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1581959792,"epoch_utc":null},{"commit":"d7de122e36e0698e00f321fbac8dc0b543cf9e8a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 14 09:44:24 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"prettify link","epoch":1581702264,"epoch_utc":null},{"commit":"4ef0434f536c6658ddc2b48a3db113df2fd26000","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 14 09:43:02 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":6}]},"message":"formatting update","epoch":1581702182,"epoch_utc":null},{"commit":"1aa2c9925996f2358b6272547db755ec3098a8a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 22:10:22 2020 -0800","stats":{"files_changed":2,"insertions":1,"deletions":2,"files":["README.md","jc/parsers/history.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":1}]},"message":"removed history from magic syntax","epoch":1581660622,"epoch_utc":null},{"commit":"c2450b27b079b02ed3f4ece9e36547f01cd4b139","merge":"028e136 14d6d8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 21:26:18 2020 -0500","message":"Merge pull request #22 from kellyjonbrazil/dev\n\nDev 1.7.3","epoch":1581657978,"epoch_utc":null},{"commit":"14d6d8b84f0ddeff984aff486e2e697a91ac6fb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 18:24:53 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump to 1.7.3","epoch":1581647093,"epoch_utc":null},{"commit":"f0e3846c038ec5507cd4a19980d83ee0fb969ef5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 18:20:22 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":5}]},"message":"formatting","epoch":1581646822,"epoch_utc":null},{"commit":"6ba64f1128373843b068226424a3af545ac9d22c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 18:19:19 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"usage update","epoch":1581646759,"epoch_utc":null},{"commit":"13bcdbc6c9a81bc5d52fe7a84e6a0a34908db8bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 17:50:51 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"doc update","epoch":1581645051,"epoch_utc":null},{"commit":"cfba62db20674d788601354211a10e2b1675a0c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 17:48:21 2020 -0800","stats":{"files_changed":1,"insertions":13,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":19}]},"message":"correct parser search in magic()","epoch":1581644901,"epoch_utc":null},{"commit":"18fb69e36e303a3f9530dcb80354b25bfdbb931d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 17:29:45 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"docs/parsers link","epoch":1581643785,"epoch_utc":null},{"commit":"474eb0f3fdeaa612e189d745b12a5ed9c6e0a31b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 17:24:10 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"doc updates","epoch":1581643450,"epoch_utc":null},{"commit":"7f47b533701e60449351d5da03cd5960e0dec9ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 17:20:00 2020 -0800","stats":{"files_changed":1,"insertions":90,"deletions":68,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":158}]},"message":"add alternate magic syntax","epoch":1581643200,"epoch_utc":null},{"commit":"dc2907d3ce101043b30bcce71abb4bb02897f43a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 16:58:25 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["docs/parsers/crontab.md"],"file_stats":[{"name":"docs/parsers/crontab.md","lines_changed":6}]},"message":"doc update","epoch":1581641905,"epoch_utc":null},{"commit":"1af85811e06c489051c456918284a746ce12c692","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 16:57:57 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/fstab.py"],"file_stats":[{"name":"jc/parsers/fstab.py","lines_changed":3}]},"message":"remove magic_command info","epoch":1581641877,"epoch_utc":null},{"commit":"1c1b19a478fe5c356a93cd165518429e77fcbdf0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 16:57:30 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":6}]},"message":"doc update","epoch":1581641850,"epoch_utc":null},{"commit":"66942d64babf932faeb887eb4ec0cab32829321a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 16:56:48 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":4}]},"message":"changelog update","epoch":1581641808,"epoch_utc":null},{"commit":"2fb6ae08d76e7a5727b2fcdd5def3e3822e0cf72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 12:17:41 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"fix shlex usage","epoch":1581625061,"epoch_utc":null},{"commit":"bf8811e03e2a5b736f4c084f42400fcde400ff3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 10:25:41 2020 -0500","stats":{"files_changed":1,"insertions":6,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]},"message":"add comments","epoch":1581618341,"epoch_utc":null},{"commit":"c8b502c571d3081ca3086e349a426ca252a3bb84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 10:14:32 2020 -0500","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6}]},"message":"remove unnecessary join and add comments","epoch":1581617672,"epoch_utc":null},{"commit":"81c11a975c6ee66a1f83350df8b065a6b07dcc9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 10:08:43 2020 -0500","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"added docstrings","epoch":1581617323,"epoch_utc":null},{"commit":"0d370eb403ab4d9ed11e36776efc08bdd3505c1a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 10:03:11 2020 -0500","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"doc update","epoch":1581616991,"epoch_utc":null},{"commit":"7492c3f1e312cdb0c58c2077db0d60d2cab1e58f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 09:48:42 2020 -0500","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"changelog update","epoch":1581616122,"epoch_utc":null},{"commit":"515a8a84b79c9bf6f3001d3c52faa82a6709b8d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 09:47:40 2020 -0500","stats":{"files_changed":33,"insertions":33,"deletions":33,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2}]},"message":"add \"command\" to description","epoch":1581616060,"epoch_utc":null},{"commit":"dd6680efb2b15bb8ed676016aae1c65193dfe147","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 09:47:16 2020 -0500","stats":{"files_changed":2,"insertions":29,"deletions":14,"files":["changelog.txt","jc/cli.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":40}]},"message":"allow condensed options (-prdq is equivalent to -p -r -d -q)","epoch":1581616036,"epoch_utc":null},{"commit":"a7158373cd225685f5c398fa36b8d5208e20521c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 12 00:16:17 2020 -0500","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"comment update","epoch":1581495377,"epoch_utc":null},{"commit":"6d50ec71997cac9c898737de93b8a945f0351e53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 12 00:11:48 2020 -0500","stats":{"files_changed":1,"insertions":9,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":15}]},"message":"add try/except to fix bare jc command condition","epoch":1581495108,"epoch_utc":null},{"commit":"95dbf98e8e03486f74d986683f52699f4f9c9577","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 11 19:14:51 2020 -0800","stats":{"files_changed":1,"insertions":26,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":32}]},"message":"allow options in magic syntax","epoch":1581477291,"epoch_utc":null},{"commit":"d49323e4ebf2a8aebd1d8ea65ef0854ee8bcb29f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 11 18:09:21 2020 -0800","stats":{"files_changed":33,"insertions":33,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":1},{"name":"jc/parsers/crontab.py","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":1},{"name":"jc/parsers/du.py","lines_changed":1},{"name":"jc/parsers/env.py","lines_changed":1},{"name":"jc/parsers/foo.py","lines_changed":1},{"name":"jc/parsers/free.py","lines_changed":1},{"name":"jc/parsers/fstab.py","lines_changed":1},{"name":"jc/parsers/history.py","lines_changed":1},{"name":"jc/parsers/id.py","lines_changed":1},{"name":"jc/parsers/ifconfig.py","lines_changed":1},{"name":"jc/parsers/iptables.py","lines_changed":1},{"name":"jc/parsers/jobs.py","lines_changed":1},{"name":"jc/parsers/ls.py","lines_changed":1},{"name":"jc/parsers/lsblk.py","lines_changed":1},{"name":"jc/parsers/lsmod.py","lines_changed":1},{"name":"jc/parsers/lsof.py","lines_changed":1},{"name":"jc/parsers/mount.py","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":1},{"name":"jc/parsers/pip_list.py","lines_changed":1},{"name":"jc/parsers/pip_show.py","lines_changed":1},{"name":"jc/parsers/ps.py","lines_changed":1},{"name":"jc/parsers/route.py","lines_changed":1},{"name":"jc/parsers/ss.py","lines_changed":1},{"name":"jc/parsers/stat.py","lines_changed":1},{"name":"jc/parsers/systemctl.py","lines_changed":1},{"name":"jc/parsers/systemctl_lj.py","lines_changed":1},{"name":"jc/parsers/systemctl_ls.py","lines_changed":1},{"name":"jc/parsers/systemctl_luf.py","lines_changed":1},{"name":"jc/parsers/uname.py","lines_changed":1},{"name":"jc/parsers/uptime.py","lines_changed":1},{"name":"jc/parsers/w.py","lines_changed":1}]},"message":"add magic_commands list to info","epoch":1581473361,"epoch_utc":null},{"commit":"08c1e2aec9d6bb68653dc12ba2272535fb7cef09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 11 18:08:59 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add magic syntax","epoch":1581473339,"epoch_utc":null},{"commit":"a2c137df2e6d3b133df5df0bb3f9b1ca69990557","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 11 18:08:37 2020 -0800","stats":{"files_changed":2,"insertions":66,"deletions":299,"files":["jc/cli.py","jc/cli.py.old"],"file_stats":[{"name":"jc/cli.py","lines_changed":135},{"name":"jc/cli.py.old","lines_changed":230}]},"message":"better magic command syntax logic using introspection information from parser modules","epoch":1581473317,"epoch_utc":null},{"commit":"fe27dcdb8f72b5a288f978b87be2eb930099543e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 11 12:16:23 2020 -0800","stats":{"files_changed":2,"insertions":319,"deletions":45,"files":["jc/cli.py","jc/cli.py.old"],"file_stats":[{"name":"jc/cli.py","lines_changed":134},{"name":"jc/cli.py.old","lines_changed":230}]},"message":"proof of concept for magic syntax (e.g. jc ls -al)","epoch":1581452183,"epoch_utc":null},{"commit":"028e136161ac15f588845f87907b4565a6ee7be2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 8 12:46:42 2020 -0800","stats":{"files_changed":4,"insertions":7,"deletions":2,"files":["MANIFEST.in","changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"MANIFEST.in","lines_changed":1},{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":3}]},"message":"bump to 1.7.2: add test fixtures to package","epoch":1581194802,"epoch_utc":null},{"commit":"9a85a0a4d504447b32fb622bb17cebc5e47f687f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 8 12:46:14 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/crontab_u.md","jc/parsers/crontab_u.py"],"file_stats":[{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2}]},"message":"fix doc","epoch":1581194774,"epoch_utc":null},{"commit":"3a1cbc4d5063344c3e3a4bf510d651a36beedfb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 22:26:47 2020 -0800","stats":{"files_changed":1,"insertions":14,"deletions":14,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":28}]},"message":"move info class to top","epoch":1580970407,"epoch_utc":null},{"commit":"77d334f7f386f79ec0571325500054fdab207f31","merge":"4de8f42 53cdf86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:59:52 2020 -0800","message":"Merge pull request #19 from kellyjonbrazil/dev-1.7.1\n\nDev v1.7.1","epoch":1580950792,"epoch_utc":null},{"commit":"53cdf863acc72dbdb671773e30277f42e9eadc0e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:53:17 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":4}]},"message":"changelog update","epoch":1580950397,"epoch_utc":null},{"commit":"7b7e7fe0fe92edef1e559bd7ae8272530d7ed5c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:50:55 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"changelog update","epoch":1580950255,"epoch_utc":null},{"commit":"0c03132847a3d2bcbdb0b743e1472865916cced4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:18:58 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"fix error codes using sys.exit()","epoch":1580948338,"epoch_utc":null},{"commit":"3b81f7e2a1381958b33962d4531f3fa223c6a83e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:12:09 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"exit code on ctrl-c exit","epoch":1580947929,"epoch_utc":null},{"commit":"3d76437b435660e92633c604c4ad32ee0500a28b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:00:23 2020 -0800","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ini.md","docs/parsers/xml.md","jc/parsers/ini.py","jc/parsers/xml.py"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/xml.py","lines_changed":2}]},"message":"doc fix","epoch":1580947223,"epoch_utc":null},{"commit":"4bc54c78cea48682ed0432ea56460a26a0e52f83","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:00:10 2020 -0800","stats":{"files_changed":4,"insertions":7,"deletions":7,"files":["docs/parsers/du.md","docs/parsers/history.md","jc/parsers/du.py","jc/parsers/history.py"],"file_stats":[{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":6},{"name":"jc/parsers/history.py","lines_changed":4}]},"message":"fix compatibility list","epoch":1580947210,"epoch_utc":null},{"commit":"3d303a96b9f6d582b1e99a632da539c3bee4df7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 15:52:39 2020 -0800","stats":{"files_changed":5,"insertions":16,"deletions":2,"files":["tests/fixtures/centos-7.7/crontab-u.json","tests/fixtures/centos-7.7/{crontab2.out => crontab-u.out}","tests/fixtures/centos-7.7/crontab.json","tests/fixtures/ubuntu-18.04/crontab-u.json","tests/test_crontab_u.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/crontab-u.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/{crontab2.out => crontab-u.out}","lines_changed":1},{"name":"tests/fixtures/centos-7.7/crontab.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/crontab-u.json","lines_changed":2},{"name":"tests/test_crontab_u.py","lines_changed":12}]},"message":"crontab bug fix and tests","epoch":1580946759,"epoch_utc":null},{"commit":"33c99d031d18e52a8ca85dfc1a8cba0acebfc3bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 15:12:59 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":2}]},"message":"fix line clobbering bug","epoch":1580944379,"epoch_utc":null},{"commit":"caf7e9f69a22f3c9b3d4624fd2238d6e54d932ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 15:11:51 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/crontab_u.py"],"file_stats":[{"name":"jc/parsers/crontab_u.py","lines_changed":6}]},"message":"fix line clobbering bug and add user field to shortcuts","epoch":1580944311,"epoch_utc":null},{"commit":"9449f1f5d5e7bc075549549758af5cc3a6c4524f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 14:44:49 2020 -0800","stats":{"files_changed":4,"insertions":9,"deletions":3,"files":["changelog.txt","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/fixtures/centos-7.7/crontab2.out"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/crontab.py","lines_changed":4},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/crontab2.out","lines_changed":5}]},"message":"crontab bugfix: inserting header row was clobbering the first data row","epoch":1580942689,"epoch_utc":null},{"commit":"6bad164b5e2a5b7c7ce82c69b6c091fc079ab2fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 14:10:22 2020 -0800","stats":{"files_changed":1,"insertions":7,"deletions":9,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":16}]},"message":"simplify by removing unnecessary getattr calls","epoch":1580940622,"epoch_utc":null},{"commit":"bb5ba7ddb146821db2efe095b6de5ae5b72bb335","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 13:57:34 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":7}]},"message":"add indent variable to helptext","epoch":1580939854,"epoch_utc":null},{"commit":"8b2e01d5404649e8f94c81ca3b5fa05fe8962220","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 13:50:12 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"doc update","epoch":1580939412,"epoch_utc":null},{"commit":"ff1159b1deb9b870382a6066166961902679b569","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 11:45:17 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"exit codes on error","epoch":1580931917,"epoch_utc":null},{"commit":"a2fd3202a0a3df336792f167c546ea3e53ea2332","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 11:34:33 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/pip_list.py","jc/parsers/pip_show.py"],"file_stats":[{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2}]},"message":"description formatting change","epoch":1580931273,"epoch_utc":null},{"commit":"7b53715b91787a8885d61ddc0079c7ee8f9348a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 11:08:58 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/crontab_u.py"],"file_stats":[{"name":"jc/parsers/crontab_u.py","lines_changed":2}]},"message":"change description","epoch":1580929738,"epoch_utc":null},{"commit":"e05fc0a5107b348af14ff4bea39d274939fab7dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 11:08:47 2020 -0800","stats":{"files_changed":1,"insertions":8,"deletions":8,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":16}]},"message":"change padding of helptext","epoch":1580929727,"epoch_utc":null},{"commit":"43604c33f654b8c19e8cce387ebbf31bd598b73b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 10:59:51 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"doc update","epoch":1580929191,"epoch_utc":null},{"commit":"eb67c484ff2a9530b434cd6a90c160f6936e1de7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 10:58:26 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"add crontab-u to parsers list","epoch":1580929106,"epoch_utc":null},{"commit":"a7b7bdd46781d07e6e70d74a41a3944855fde5fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 10:55:08 2020 -0800","stats":{"files_changed":1,"insertions":94,"deletions":92,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":186}]},"message":"load parser modules 'just in time' so we don't need to load all modules at startup","epoch":1580928908,"epoch_utc":null},{"commit":"ab06989a18faf5378f1e73c7016ea02e1218ff9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:46:52 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":10}]},"message":"description updates","epoch":1580881612,"epoch_utc":null},{"commit":"657b722f947b6a0aa7e52a786e4c84f177e9a5c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:44:10 2020 -0800","stats":{"files_changed":4,"insertions":8,"deletions":8,"files":["README.md","changelog.txt","docs/parsers/ini.md","jc/parsers/ini.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"changelog.txt","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"jc/parsers/ini.py","lines_changed":6}]},"message":"ini to INI","epoch":1580881450,"epoch_utc":null},{"commit":"dd2aecad2787186b3962723086bb7e13eff4874f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:37:07 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"description update","epoch":1580881027,"epoch_utc":null},{"commit":"c82c5c5c648384eb5a54205ba8590624a3ab4375","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:34:57 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":6}]},"message":"changelog update","epoch":1580880897,"epoch_utc":null},{"commit":"a1761cd68f91e2668d8d7e2fa7774f6496408be6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:25:33 2020 -0800","stats":{"files_changed":3,"insertions":42,"deletions":0,"files":["tests/fixtures/centos-7.7/id.json","tests/fixtures/osx-10.14.6/id.json","tests/test_id.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/id.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/id.json","lines_changed":1},{"name":"tests/test_id.py","lines_changed":40}]},"message":"id tests","epoch":1580880333,"epoch_utc":null},{"commit":"d618a7f583629bb7a7fc0854e7349cab07e3e003","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:17:03 2020 -0800","stats":{"files_changed":4,"insertions":143,"deletions":9,"files":["README.md","docgen.sh","docs/parsers/id.md","jc/parsers/id.py"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/id.md","lines_changed":133},{"name":"jc/parsers/id.py","lines_changed":12}]},"message":"doc update","epoch":1580879823,"epoch_utc":null},{"commit":"831a42f66096f5efbbf0f6882970c328120f9c9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:12:32 2020 -0800","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":48}]},"message":"id formatting","epoch":1580879552,"epoch_utc":null},{"commit":"3b36022e5a1056a28a83494b1ab8fab209399c2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:09:42 2020 -0800","stats":{"files_changed":5,"insertions":250,"deletions":1,"files":["README.md","jc/cli.py","jc/parsers/id.py","tests/fixtures/centos-7.7/id.out","tests/fixtures/osx-10.14.6/id.out"],"file_stats":[{"name":"README.md","lines_changed":33},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":214},{"name":"tests/fixtures/centos-7.7/id.out","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/id.out","lines_changed":1}]},"message":"add id parser","epoch":1580879382,"epoch_utc":null},{"commit":"d01dfa25f10f82cd201ae7b4c9cc18313773f8d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 15:22:36 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]},"message":"changelog updates","epoch":1580858556,"epoch_utc":null},{"commit":"395a99037b4816eb800b289f90372a9b8d7d36cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:36:03 2020 -0800","stats":{"files_changed":3,"insertions":89,"deletions":13,"files":["README.md","docs/parsers/history.md","jc/parsers/history.py"],"file_stats":[{"name":"README.md","lines_changed":84},{"name":"docs/parsers/history.md","lines_changed":10},{"name":"jc/parsers/history.py","lines_changed":8}]},"message":"crontab-u and history doc updates","epoch":1580855763,"epoch_utc":null},{"commit":"025986c51d2d4869b17de63a7dd96efa2988e3c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:31:28 2020 -0800","stats":{"files_changed":3,"insertions":13,"deletions":3,"files":["jc/parsers/history.py","tests/fixtures/centos-7.7/history.json","tests/fixtures/ubuntu-18.04/history.json"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":12},{"name":"tests/fixtures/centos-7.7/history.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/history.json","lines_changed":2}]},"message":"change history 'line' to integer","epoch":1580855488,"epoch_utc":null},{"commit":"c56b83093ff05f55ef4643c1731cff61d4b9e8ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:19:33 2020 -0800","stats":{"files_changed":3,"insertions":202,"deletions":2,"files":["docgen.sh","docs/parsers/crontab.md","docs/parsers/crontab_u.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"docs/parsers/crontab_u.md","lines_changed":199}]},"message":"doc update","epoch":1580854773,"epoch_utc":null},{"commit":"7c712a4133abd843d4da926e4c8d548abd1d6fa3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:18:14 2020 -0800","stats":{"files_changed":1,"insertions":52,"deletions":50,"files":["jc/parsers/crontab_u.py"],"file_stats":[{"name":"jc/parsers/crontab_u.py","lines_changed":102}]},"message":"doc update","epoch":1580854694,"epoch_utc":null},{"commit":"9a0cfe6dfa4888f435d35bd2d35126d031a556d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:18:01 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":4}]},"message":"minor formatting","epoch":1580854681,"epoch_utc":null},{"commit":"a116cdbcec1b27192dd0f9f4707629353edb3caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:11:34 2020 -0800","stats":{"files_changed":5,"insertions":29,"deletions":13,"files":["tests/fixtures/ubuntu-18.04/crontab-u.json",".../ubuntu-18.04/{crontab.out => crontab-u.out}","tests/fixtures/ubuntu-18.04/crontab.json","tests/test_crontab.py","tests/test_crontab_u.py"],"file_stats":[{"name":"tests/fixtures/ubuntu-18.04/crontab-u.json","lines_changed":1},{"name":".../ubuntu-18.04/{crontab.out => crontab-u.out}","lines_changed":0},{"name":"tests/fixtures/ubuntu-18.04/crontab.json","lines_changed":1},{"name":"tests/test_crontab.py","lines_changed":12},{"name":"tests/test_crontab_u.py","lines_changed":28}]},"message":"tests for crontab-u","epoch":1580854294,"epoch_utc":null},{"commit":"f2d616c98e049cdac5d667e63723f92110419a1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:02:27 2020 -0800","stats":{"files_changed":3,"insertions":272,"deletions":0,"files":["changelog.txt","jc/cli.py","jc/parsers/crontab_u.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":269}]},"message":"add crontab with user parser","epoch":1580853747,"epoch_utc":null},{"commit":"42cbd1777dbacc614d75f67f3f9156f72be46532","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 13:53:45 2020 -0800","stats":{"files_changed":2,"insertions":80,"deletions":0,"files":["tests/test_xml.py","tests/test_yaml.py"],"file_stats":[{"name":"tests/test_xml.py","lines_changed":40},{"name":"tests/test_yaml.py","lines_changed":40}]},"message":"add xml and yaml tests","epoch":1580853225,"epoch_utc":null},{"commit":"ebf375aac0473249cfd212068f6e6e33cc42449a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 12:18:31 2020 -0800","stats":{"files_changed":1,"insertions":40,"deletions":0,"files":["tests/test_ini.py"],"file_stats":[{"name":"tests/test_ini.py","lines_changed":40}]},"message":"add ini tests","epoch":1580847511,"epoch_utc":null},{"commit":"1f9050267eeb870c4c0f50000fc32985c4d8535b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 12:02:18 2020 -0800","stats":{"files_changed":12,"insertions":586,"deletions":0,"files":["tests/fixtures/generic/ini-iptelserver.ini","tests/fixtures/generic/ini-iptelserver.json","tests/fixtures/generic/ini-test.ini","tests/fixtures/generic/ini-test.json","tests/fixtures/generic/xml-cd_catalog.json","tests/fixtures/generic/xml-cd_catalog.xml","tests/fixtures/generic/xml-foodmenu.json","tests/fixtures/generic/xml-foodmenu.xml","tests/fixtures/generic/yaml-istio-sc.json","tests/fixtures/generic/yaml-istio-sc.yaml","tests/fixtures/generic/yaml-istio-sidecar.json","tests/fixtures/generic/yaml-istio-sidecar.yaml"],"file_stats":[{"name":"tests/fixtures/generic/ini-iptelserver.ini","lines_changed":133},{"name":"tests/fixtures/generic/ini-iptelserver.json","lines_changed":1},{"name":"tests/fixtures/generic/ini-test.ini","lines_changed":12},{"name":"tests/fixtures/generic/ini-test.json","lines_changed":1},{"name":"tests/fixtures/generic/xml-cd_catalog.json","lines_changed":1},{"name":"tests/fixtures/generic/xml-cd_catalog.xml","lines_changed":211},{"name":"tests/fixtures/generic/xml-foodmenu.json","lines_changed":1},{"name":"tests/fixtures/generic/xml-foodmenu.xml","lines_changed":33},{"name":"tests/fixtures/generic/yaml-istio-sc.json","lines_changed":1},{"name":"tests/fixtures/generic/yaml-istio-sc.yaml","lines_changed":17},{"name":"tests/fixtures/generic/yaml-istio-sidecar.json","lines_changed":1},{"name":"tests/fixtures/generic/yaml-istio-sidecar.yaml","lines_changed":174}]},"message":"add ini, xml, and yaml test files","epoch":1580846538,"epoch_utc":null},{"commit":"d7f9707a1521719ce051140b1a0b4ced7c5114c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 11:18:32 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/ini.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"minor formatting","epoch":1580843912,"epoch_utc":null},{"commit":"ab589ee3ed09b9d5e09d8c046f3a64cd2bd14c98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 11:18:15 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"add __version__ variable","epoch":1580843895,"epoch_utc":null},{"commit":"c84ec0361fc4c877c698378b28ff9e8b502793b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 22:25:30 2020 -0800","stats":{"files_changed":4,"insertions":105,"deletions":3,"files":["README.md","docgen.sh","docs/parsers/xml.md","jc/parsers/xml.py"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/xml.md","lines_changed":99},{"name":"jc/parsers/xml.py","lines_changed":5}]},"message":"xml example update","epoch":1580797530,"epoch_utc":null},{"commit":"47d2f8968a8a9b68fc9fff45985f5e69f1a5cc40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 22:21:40 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"changelog.txt","lines_changed":1}]},"message":"doc update","epoch":1580797300,"epoch_utc":null},{"commit":"019c480bcce7fe3821b75906fc673ce7bb1ffadc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 22:17:13 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"update acknowledgments","epoch":1580797033,"epoch_utc":null},{"commit":"547c6d3d5956984d3c4fb5c2a1b76a595752b467","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 22:13:06 2020 -0800","stats":{"files_changed":5,"insertions":172,"deletions":2,"files":["README.md","changelog.txt","jc/cli.py","jc/parsers/xml.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":46},{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/xml.py","lines_changed":119},{"name":"setup.py","lines_changed":3}]},"message":"add xml parser","epoch":1580796786,"epoch_utc":null},{"commit":"b5ebf8b76afcd0e0190994048fe1f5b53f654451","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 21:41:53 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add ruamel.yaml ack","epoch":1580794913,"epoch_utc":null},{"commit":"c690e328f23a69f592dfaaa949b74ba2190ad376","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 21:38:21 2020 -0800","stats":{"files_changed":2,"insertions":102,"deletions":14,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/yaml.md","lines_changed":58},{"name":"jc/parsers/yaml.py","lines_changed":58}]},"message":"add examples","epoch":1580794701,"epoch_utc":null},{"commit":"cbb92c1a9517234806f1c54398a69645b6f43669","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 21:38:08 2020 -0800","stats":{"files_changed":1,"insertions":94,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":94}]},"message":"add ini and yaml","epoch":1580794688,"epoch_utc":null},{"commit":"beb41997c9b3797e73a678ec1bcddcfb83b5ef0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 21:28:11 2020 -0800","stats":{"files_changed":3,"insertions":91,"deletions":2,"files":["docgen.sh","docs/parsers/ini.md","jc/parsers/ini.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ini.md","lines_changed":87},{"name":"jc/parsers/ini.py","lines_changed":5}]},"message":"doc update","epoch":1580794091,"epoch_utc":null},{"commit":"755a6faf1110f150fe2261b81439b7d17a9b424e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 21:22:30 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":8,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":12}]},"message":"clean up multi-document support","epoch":1580793750,"epoch_utc":null},{"commit":"021f8350a31a49ecc539f02576303600b222b49d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 19:11:36 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":4}]},"message":"update doc","epoch":1580785896,"epoch_utc":null},{"commit":"76583dcd2f5ef32e58ca87149154563b07e061cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 19:07:31 2020 -0800","stats":{"files_changed":2,"insertions":113,"deletions":0,"files":["jc/cli.py","jc/parsers/ini.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/ini.py","lines_changed":111}]},"message":"add ini file parser","epoch":1580785651,"epoch_utc":null},{"commit":"bf033239a706c42be3d7508c58a51c542f8a69b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 16:20:38 2020 -0800","stats":{"files_changed":2,"insertions":82,"deletions":7,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/yaml.md","lines_changed":69},{"name":"jc/parsers/yaml.py","lines_changed":20}]},"message":"doc update","epoch":1580775638,"epoch_utc":null},{"commit":"eb37fccd37fd625f701a14b6cfcf30e9f0bbff4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 16:17:29 2020 -0800","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":11}]},"message":"doc update","epoch":1580775449,"epoch_utc":null},{"commit":"d04ad453319fe45e302da87f970d2ac0806fae1a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 16:12:45 2020 -0800","stats":{"files_changed":3,"insertions":7,"deletions":2,"files":["changelog.txt","docgen.sh","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"setup.py","lines_changed":5}]},"message":"setup for 1.7.1","epoch":1580775165,"epoch_utc":null},{"commit":"db157b8ca7f7fa935676bafeaafdfd9818a89e6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 16:12:32 2020 -0800","stats":{"files_changed":2,"insertions":94,"deletions":2,"files":["jc/cli.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6},{"name":"jc/parsers/yaml.py","lines_changed":90}]},"message":"add yaml file parser","epoch":1580775152,"epoch_utc":null},{"commit":"68f277bb2081eb2cba14ffe7f0ee1ee0a982335b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 16:11:58 2020 -0800","stats":{"files_changed":33,"insertions":99,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/crontab.py","lines_changed":3},{"name":"jc/parsers/df.py","lines_changed":3},{"name":"jc/parsers/dig.py","lines_changed":3},{"name":"jc/parsers/du.py","lines_changed":3},{"name":"jc/parsers/env.py","lines_changed":3},{"name":"jc/parsers/foo.py","lines_changed":3},{"name":"jc/parsers/free.py","lines_changed":3},{"name":"jc/parsers/fstab.py","lines_changed":3},{"name":"jc/parsers/history.py","lines_changed":3},{"name":"jc/parsers/hosts.py","lines_changed":3},{"name":"jc/parsers/ifconfig.py","lines_changed":3},{"name":"jc/parsers/iptables.py","lines_changed":3},{"name":"jc/parsers/jobs.py","lines_changed":3},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"jc/parsers/lsblk.py","lines_changed":3},{"name":"jc/parsers/lsmod.py","lines_changed":3},{"name":"jc/parsers/lsof.py","lines_changed":3},{"name":"jc/parsers/mount.py","lines_changed":3},{"name":"jc/parsers/netstat.py","lines_changed":3},{"name":"jc/parsers/pip_list.py","lines_changed":3},{"name":"jc/parsers/pip_show.py","lines_changed":3},{"name":"jc/parsers/ps.py","lines_changed":3},{"name":"jc/parsers/route.py","lines_changed":3},{"name":"jc/parsers/ss.py","lines_changed":3},{"name":"jc/parsers/stat.py","lines_changed":3},{"name":"jc/parsers/systemctl.py","lines_changed":3},{"name":"jc/parsers/systemctl_lj.py","lines_changed":3},{"name":"jc/parsers/systemctl_ls.py","lines_changed":3},{"name":"jc/parsers/systemctl_luf.py","lines_changed":3},{"name":"jc/parsers/uname.py","lines_changed":3},{"name":"jc/parsers/uptime.py","lines_changed":3},{"name":"jc/parsers/w.py","lines_changed":3}]},"message":"add __version__","epoch":1580775118,"epoch_utc":null},{"commit":"4de8f42664379570392552796e34324abb39fdc2","merge":"6633d92 4f11855","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 12:11:13 2019 -0800","message":"Merge pull request #17 from kellyjonbrazil/dev\n\nDev v1.6.1","epoch":1576613473,"epoch_utc":null},{"commit":"4f118559356edc1da866e1bec80830e7a75a0b26","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 12:09:24 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]},"message":"update version info","epoch":1576613364,"epoch_utc":null},{"commit":"2b9a5fcc32f85295faa55410efcaf142c42bd167","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 12:05:40 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":4}]},"message":"update version","epoch":1576613140,"epoch_utc":null},{"commit":"224948d1f23e01b7cd968820529579792f862f0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 11:44:43 2019 -0800","stats":{"files_changed":21,"insertions":428,"deletions":0,"files":["tests/fixtures/centos-7.7/pip-list.json","tests/fixtures/centos-7.7/pip-list.out","tests/fixtures/centos-7.7/pip-show.json","tests/fixtures/centos-7.7/pip-show.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.11.6/pip-list.json","tests/fixtures/osx-10.11.6/pip-list.out","tests/fixtures/osx-10.11.6/pip-show.json","tests/fixtures/osx-10.11.6/pip-show.out","tests/fixtures/osx-10.14.6/pip-list.json","tests/fixtures/osx-10.14.6/pip-list.out","tests/fixtures/osx-10.14.6/pip-show.json","tests/fixtures/osx-10.14.6/pip-show.out","tests/fixtures/ubuntu-18.04/pip-list-legacy.json","tests/fixtures/ubuntu-18.04/pip-list-legacy.out","tests/fixtures/ubuntu-18.04/pip-list.json","tests/fixtures/ubuntu-18.04/pip-list.out","tests/fixtures/ubuntu-18.04/pip-show.json","tests/fixtures/ubuntu-18.04/pip-show.out","tests/test_pip_list.py","tests/test_pip_show.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/pip-list.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/pip-list.out","lines_changed":22},{"name":"tests/fixtures/centos-7.7/pip-show.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/pip-show.out","lines_changed":32},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/pip-list.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/pip-list.out","lines_changed":7},{"name":"tests/fixtures/osx-10.11.6/pip-show.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/pip-show.out","lines_changed":32},{"name":"tests/fixtures/osx-10.14.6/pip-list.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/pip-list.out","lines_changed":7},{"name":"tests/fixtures/osx-10.14.6/pip-show.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/pip-show.out","lines_changed":32},{"name":"tests/fixtures/ubuntu-18.04/pip-list-legacy.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/pip-list-legacy.out","lines_changed":57},{"name":"tests/fixtures/ubuntu-18.04/pip-list.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/pip-list.out","lines_changed":59},{"name":"tests/fixtures/ubuntu-18.04/pip-show.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/pip-show.out","lines_changed":29},{"name":"tests/test_pip_list.py","lines_changed":76},{"name":"tests/test_pip_show.py","lines_changed":64}]},"message":"pip list and pip show tests","epoch":1576611883,"epoch_utc":null},{"commit":"36f2812d5a7a94c412e098233c026d99d5205b60","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 10:58:00 2019 -0800","stats":{"files_changed":1,"insertions":15,"deletions":7,"files":["jc/parsers/pip_list.py"],"file_stats":[{"name":"jc/parsers/pip_list.py","lines_changed":22}]},"message":"add support for legacy output","epoch":1576609080,"epoch_utc":null},{"commit":"be06aa2b31c057c56229e75c7fa70052b83053ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 10:09:19 2019 -0800","stats":{"files_changed":65,"insertions":70,"deletions":66,"files":["docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":3},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":3},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":3},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":3},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2}]},"message":"update parse() Return info","epoch":1576606159,"epoch_utc":null},{"commit":"41f8e3aba268ca0cd09931a04368615425c1aec8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 09:56:09 2019 -0800","stats":{"files_changed":65,"insertions":67,"deletions":65,"files":["docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":3},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":3},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2}]},"message":"update Return info","epoch":1576605369,"epoch_utc":null},{"commit":"093c0df8978ace842af5258f9aff72c63c6f843d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 09:38:50 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"schema info","epoch":1576604330,"epoch_utc":null},{"commit":"37afc7dc8ae30342d01f3f72e73646fa60bb5294","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 09:35:27 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"updte todo and compatibility","epoch":1576604127,"epoch_utc":null},{"commit":"efbf3549606fc77f8c16587ff04a0c316dfe5c00","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 09:24:08 2019 -0800","stats":{"files_changed":4,"insertions":126,"deletions":12,"files":["README.md","docgen.sh","docs/parsers/pip_show.md","jc/parsers/pip_show.py"],"file_stats":[{"name":"README.md","lines_changed":31},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/pip_show.md","lines_changed":94},{"name":"jc/parsers/pip_show.py","lines_changed":12}]},"message":"doc update for pip show","epoch":1576603448,"epoch_utc":null},{"commit":"5e39fe0d8044787389d8f206f3c863d4bdf1e2ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 09:20:26 2019 -0800","stats":{"files_changed":1,"insertions":64,"deletions":5,"files":["jc/parsers/pip_show.py"],"file_stats":[{"name":"jc/parsers/pip_show.py","lines_changed":69}]},"message":"pip show parser working","epoch":1576603226,"epoch_utc":null},{"commit":"47328dc65969f149c8f027286774ff0847c18add","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 19:09:14 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add pip-show parser","epoch":1576552154,"epoch_utc":null},{"commit":"addeef50ba54f536855544937a6c98135ae5cd51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 19:07:51 2019 -0800","stats":{"files_changed":1,"insertions":84,"deletions":0,"files":["jc/parsers/pip_show.py"],"file_stats":[{"name":"jc/parsers/pip_show.py","lines_changed":84}]},"message":"initial pip show parser add","epoch":1576552071,"epoch_utc":null},{"commit":"ad338cc5b50a178091c47cbea9a1db135a7fb678","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:58:33 2019 -0800","stats":{"files_changed":2,"insertions":56,"deletions":42,"files":["docs/parsers/crontab.md","jc/parsers/crontab.py"],"file_stats":[{"name":"docs/parsers/crontab.md","lines_changed":49},{"name":"jc/parsers/crontab.py","lines_changed":49}]},"message":"schema doc update","epoch":1576551513,"epoch_utc":null},{"commit":"202bc8201e31fd453c682265347b4e2ac2d41718","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:54:19 2019 -0800","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["README.md","docs/parsers/crontab.md","jc/parsers/crontab.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"jc/parsers/crontab.py","lines_changed":4}]},"message":"doc update","epoch":1576551259,"epoch_utc":null},{"commit":"5ff99de405fbd8f79f9c2e301ac27184e0aba6fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:40:08 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add argument to parser info","epoch":1576550408,"epoch_utc":null},{"commit":"86ebe2cf9c6b336eacf217393c3c3c324ee29ec0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:36:13 2019 -0800","stats":{"files_changed":6,"insertions":205,"deletions":1,"files":["README.md","docgen.sh","docs/parsers/crontab.md","docs/parsers/pip_list.md","jc/cli.py","jc/parsers/pip_list.py"],"file_stats":[{"name":"README.md","lines_changed":21},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":75},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":105}]},"message":"initial add of pip list parser","epoch":1576550173,"epoch_utc":null},{"commit":"facf0b399c608d33f6a454ee24fd49fc62471742","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:09:29 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":4}]},"message":"add osx to campatible","epoch":1576548569,"epoch_utc":null},{"commit":"33db7b0bcb0f24979cad6e173737d75c8ed301af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:09:00 2019 -0800","stats":{"files_changed":4,"insertions":57,"deletions":0,"files":["tests/fixtures/centos-7.7/crontab.json","tests/fixtures/ubuntu-18.04/crontab.json","tests/fixtures/ubuntu-18.04/crontab.out","tests/test_crontab.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/crontab.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/crontab.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/crontab.out","lines_changed":15},{"name":"tests/test_crontab.py","lines_changed":40}]},"message":"add crontab tests","epoch":1576548540,"epoch_utc":null},{"commit":"663d07bca1181024d9d08b940237c52197c91729","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 17:52:09 2019 -0800","stats":{"files_changed":2,"insertions":191,"deletions":0,"files":["docgen.sh","docs/parsers/crontab.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/crontab.md","lines_changed":190}]},"message":"add crontab","epoch":1576547529,"epoch_utc":null},{"commit":"ba04e4997fcb28adbee446f633c121f1585b9f2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 17:51:11 2019 -0800","stats":{"files_changed":1,"insertions":113,"deletions":4,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":117}]},"message":"update docs","epoch":1576547471,"epoch_utc":null},{"commit":"c4fee1b658c91afa2abdd746af6c1b4697c44b35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 17:50:52 2019 -0800","stats":{"files_changed":1,"insertions":72,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":73}]},"message":"add crontab parser","epoch":1576547452,"epoch_utc":null},{"commit":"99b92a15bbebc5568f4455f388f945613c4a2759","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 17:45:34 2019 -0800","stats":{"files_changed":2,"insertions":37,"deletions":14,"files":["jc/parsers/crontab.py","tests/fixtures/centos-7.7/crontab.out"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":40},{"name":"tests/fixtures/centos-7.7/crontab.out","lines_changed":11}]},"message":"support shortcut schedules","epoch":1576547134,"epoch_utc":null},{"commit":"b076ab5b57a6a59db096485e5ff4eb9f91bae8be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 17:01:53 2019 -0800","stats":{"files_changed":3,"insertions":177,"deletions":0,"files":["jc/cli.py","jc/parsers/crontab.py","tests/fixtures/centos-7.7/crontab.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":132},{"name":"tests/fixtures/centos-7.7/crontab.out","lines_changed":43}]},"message":"initial crontab parser","epoch":1576544513,"epoch_utc":null},{"commit":"687759f75d0e80e81746a84f051e55cfdc870447","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 14:31:21 2019 -0800","stats":{"files_changed":1,"insertions":31,"deletions":31,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":62}]},"message":"alphabetize du entry","epoch":1576535481,"epoch_utc":null},{"commit":"9eaac7f3af0e0851c2d091d94c9920faa8a0fdfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 14:30:06 2019 -0800","stats":{"files_changed":1,"insertions":32,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":32}]},"message":"add du","epoch":1576535406,"epoch_utc":null},{"commit":"4c24e00cfc0748d98e220d08820b88fc156148db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 14:27:55 2019 -0800","stats":{"files_changed":5,"insertions":21738,"deletions":9,"files":["tests/fixtures/osx-10.11.6/du.json","tests/fixtures/osx-10.11.6/du.out","tests/fixtures/ubuntu-18.04/du.json","tests/fixtures/ubuntu-18.04/du.out","tests/test_du.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/du.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/du.out","lines_changed":2471},{"name":"tests/fixtures/ubuntu-18.04/du.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/du.out","lines_changed":19244},{"name":"tests/test_du.py","lines_changed":30}]},"message":"add osx-11 and ubuntu tests","epoch":1576535275,"epoch_utc":null},{"commit":"beb17011b03e720078b0752e79a6a0f6123d1d3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 13:57:42 2019 -0800","stats":{"files_changed":6,"insertions":131,"deletions":2,"files":["changelog.txt","docgen.sh","docs/parsers/du.md","docs/parsers/uname.md","tests/fixtures/osx-10.14.6/du.json","tests/test_du.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/du.md","lines_changed":115},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/du.json","lines_changed":1},{"name":"tests/test_du.py","lines_changed":12}]},"message":"du tests and docs","epoch":1576533462,"epoch_utc":null},{"commit":"e882bf55bcd1d3526423ed1ccc61fb4819395cce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 13:52:42 2019 -0800","stats":{"files_changed":7,"insertions":8755,"deletions":0,"files":["changelog.txt","jc/cli.py","jc/parsers/du.py","tests/fixtures/centos-7.7/du.json","tests/fixtures/centos-7.7/du.out","tests/fixtures/osx-10.14.6/du.out","tests/test_du.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":148},{"name":"tests/fixtures/centos-7.7/du.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/du.out","lines_changed":5199},{"name":"tests/fixtures/osx-10.14.6/du.out","lines_changed":3364},{"name":"tests/test_du.py","lines_changed":40}]},"message":"initial add du parser","epoch":1576533162,"epoch_utc":null},{"commit":"3a3016adb6d5b9e35f8a39908bfcdc65997cc5c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 11:52:18 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add parser_count to about","epoch":1576525938,"epoch_utc":null},{"commit":"1e8b68153ade8a1e3d2b4db36e0c402bbc887079","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 11:12:45 2019 -0800","stats":{"files_changed":4,"insertions":27,"deletions":1,"files":["tests/fixtures/osx-10.11.6/uname-a.json","tests/fixtures/osx-10.14.6/uname-a.json","tests/fixtures/osx-10.14.6/uname-a.out","tests/test_uname.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/uname-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/uname-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/uname-a.out","lines_changed":2},{"name":"tests/test_uname.py","lines_changed":24}]},"message":"add osx uname tests","epoch":1576523565,"epoch_utc":null},{"commit":"9335cf65fbb87e3a0a7da0c4e9bcd251cb829de2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 11:02:02 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"add uname osx support","epoch":1576522922,"epoch_utc":null},{"commit":"83f35256aee71f2619ddf880e2b8f2d6c63280bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 11:01:43 2019 -0800","stats":{"files_changed":1,"insertions":30,"deletions":19,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":49}]},"message":"add OSX support","epoch":1576522903,"epoch_utc":null},{"commit":"428333394817e4461a4eb095f4d6d128305a5f98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 10:03:47 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":2}]},"message":"version bump","epoch":1576519427,"epoch_utc":null},{"commit":"b8f902796b7fb23a41355b23f7ce235bd18edc58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 10:03:34 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]},"message":"shorten changelog","epoch":1576519414,"epoch_utc":null},{"commit":"8f99ab295cd15718b98781707def97539ad41920","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 09:08:47 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"info update","epoch":1576516127,"epoch_utc":null},{"commit":"882310e268e2022f0cd6da75f80f5356529cd05c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 09:04:52 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add name to about parser info","epoch":1576515892,"epoch_utc":null},{"commit":"56bce9521409d1850f75a3ae2be1363e765dd9dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 09:00:16 2019 -0800","stats":{"files_changed":1,"insertions":6,"deletions":10,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":16}]},"message":"about code cleanup","epoch":1576515616,"epoch_utc":null},{"commit":"c13ecbec2952c5d6765397f645e90653a4fd9d05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 08:59:41 2019 -0800","stats":{"files_changed":28,"insertions":2,"deletions":28,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":1},{"name":"jc/parsers/env.py","lines_changed":1},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":1},{"name":"jc/parsers/fstab.py","lines_changed":1},{"name":"jc/parsers/history.py","lines_changed":1},{"name":"jc/parsers/hosts.py","lines_changed":1},{"name":"jc/parsers/iptables.py","lines_changed":1},{"name":"jc/parsers/jobs.py","lines_changed":1},{"name":"jc/parsers/ls.py","lines_changed":1},{"name":"jc/parsers/lsblk.py","lines_changed":1},{"name":"jc/parsers/lsmod.py","lines_changed":1},{"name":"jc/parsers/lsof.py","lines_changed":1},{"name":"jc/parsers/mount.py","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":1},{"name":"jc/parsers/ps.py","lines_changed":1},{"name":"jc/parsers/route.py","lines_changed":1},{"name":"jc/parsers/ss.py","lines_changed":1},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":1},{"name":"jc/parsers/systemctl_lj.py","lines_changed":1},{"name":"jc/parsers/systemctl_ls.py","lines_changed":1},{"name":"jc/parsers/systemctl_luf.py","lines_changed":1},{"name":"jc/parsers/uname.py","lines_changed":1},{"name":"jc/parsers/uptime.py","lines_changed":1},{"name":"jc/parsers/w.py","lines_changed":1}]},"message":"clean up parser info","epoch":1576515581,"epoch_utc":null},{"commit":"0ffaaa6e73649d1f657af569ac0b912f166e8493","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 08:18:37 2019 -0800","stats":{"files_changed":1,"insertions":7,"deletions":9,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":16}]},"message":"clean up about code","epoch":1576513117,"epoch_utc":null},{"commit":"75eff3adea097157c005b2201e353a741241ce8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:56:40 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":8}]},"message":"remove whitespace","epoch":1576396600,"epoch_utc":null},{"commit":"bf5f80476cff642ae672187ea59d40bdb602101e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:56:22 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6}]},"message":"use real parser name in error message","epoch":1576396582,"epoch_utc":null},{"commit":"9aaf0fbb2f838c0af1e7f18fdb19104f9f5d3d39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:35:42 2019 -0800","stats":{"files_changed":29,"insertions":146,"deletions":1,"files":["changelog.txt","docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"docs/parsers/arp.md","lines_changed":11},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5}]},"message":"doc updates","epoch":1576395342,"epoch_utc":null},{"commit":"8f01ef79532743573632d716ceea41d5ea752c88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:27:56 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add -a option info","epoch":1576394876,"epoch_utc":null},{"commit":"da1d087452da02631296b1b3dc9ee10d4b7f764b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:21:47 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add parser version info","epoch":1576394507,"epoch_utc":null},{"commit":"e16bc7e882a27a1d5a4bd7cf9972208e6997f96f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:15:15 2019 -0800","stats":{"files_changed":29,"insertions":82,"deletions":17,"files":["jc/cli.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":71},{"name":"jc/parsers/arp.py","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":1},{"name":"jc/parsers/env.py","lines_changed":1},{"name":"jc/parsers/foo.py","lines_changed":1},{"name":"jc/parsers/free.py","lines_changed":1},{"name":"jc/parsers/fstab.py","lines_changed":1},{"name":"jc/parsers/history.py","lines_changed":1},{"name":"jc/parsers/hosts.py","lines_changed":1},{"name":"jc/parsers/iptables.py","lines_changed":1},{"name":"jc/parsers/jobs.py","lines_changed":1},{"name":"jc/parsers/ls.py","lines_changed":1},{"name":"jc/parsers/lsblk.py","lines_changed":1},{"name":"jc/parsers/lsmod.py","lines_changed":1},{"name":"jc/parsers/lsof.py","lines_changed":1},{"name":"jc/parsers/mount.py","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":1},{"name":"jc/parsers/ps.py","lines_changed":1},{"name":"jc/parsers/route.py","lines_changed":1},{"name":"jc/parsers/ss.py","lines_changed":1},{"name":"jc/parsers/stat.py","lines_changed":1},{"name":"jc/parsers/systemctl.py","lines_changed":1},{"name":"jc/parsers/systemctl_lj.py","lines_changed":1},{"name":"jc/parsers/systemctl_ls.py","lines_changed":1},{"name":"jc/parsers/systemctl_luf.py","lines_changed":1},{"name":"jc/parsers/uname.py","lines_changed":1},{"name":"jc/parsers/uptime.py","lines_changed":1},{"name":"jc/parsers/w.py","lines_changed":1}]},"message":"add about information to parsers","epoch":1576394115,"epoch_utc":null},{"commit":"fe9bdd4811216257c05b16d6d61897929669d434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 13 20:01:51 2019 -0800","stats":{"files_changed":31,"insertions":384,"deletions":219,"files":["changelog.txt","jc/cli.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/cli.py","lines_changed":127},{"name":"jc/parsers/arp.py","lines_changed":25},{"name":"jc/parsers/df.py","lines_changed":15},{"name":"jc/parsers/dig.py","lines_changed":15},{"name":"jc/parsers/env.py","lines_changed":16},{"name":"jc/parsers/foo.py","lines_changed":16},{"name":"jc/parsers/free.py","lines_changed":16},{"name":"jc/parsers/fstab.py","lines_changed":16},{"name":"jc/parsers/history.py","lines_changed":16},{"name":"jc/parsers/hosts.py","lines_changed":16},{"name":"jc/parsers/ifconfig.py","lines_changed":17},{"name":"jc/parsers/iptables.py","lines_changed":16},{"name":"jc/parsers/jobs.py","lines_changed":16},{"name":"jc/parsers/ls.py","lines_changed":16},{"name":"jc/parsers/lsblk.py","lines_changed":17},{"name":"jc/parsers/lsmod.py","lines_changed":16},{"name":"jc/parsers/lsof.py","lines_changed":16},{"name":"jc/parsers/mount.py","lines_changed":16},{"name":"jc/parsers/netstat.py","lines_changed":16},{"name":"jc/parsers/ps.py","lines_changed":16},{"name":"jc/parsers/route.py","lines_changed":16},{"name":"jc/parsers/ss.py","lines_changed":16},{"name":"jc/parsers/stat.py","lines_changed":15},{"name":"jc/parsers/systemctl.py","lines_changed":16},{"name":"jc/parsers/systemctl_lj.py","lines_changed":16},{"name":"jc/parsers/systemctl_ls.py","lines_changed":16},{"name":"jc/parsers/systemctl_luf.py","lines_changed":16},{"name":"jc/parsers/uname.py","lines_changed":16},{"name":"jc/parsers/uptime.py","lines_changed":16},{"name":"jc/parsers/w.py","lines_changed":16}]},"message":"add info class","epoch":1576296111,"epoch_utc":null},{"commit":"17b6f3f6d6c398a52166849088a793d0e3b328b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 13 14:36:21 2019 -0800","stats":{"files_changed":3,"insertions":26,"deletions":0,"files":["tests/fixtures/osx-10.11.6/uptime.json","tests/fixtures/osx-10.14.6/uptime.json","tests/test_uptime.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/uptime.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/uptime.json","lines_changed":1},{"name":"tests/test_uptime.py","lines_changed":24}]},"message":"add osx tests","epoch":1576276581,"epoch_utc":null},{"commit":"90a6baf0ee3b8b27476badada4e590e22144f810","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 13 14:30:12 2019 -0800","stats":{"files_changed":6,"insertions":52,"deletions":0,"files":["tests/fixtures/osx-10.11.6/ps-axu.json","tests/fixtures/osx-10.11.6/ps-ef.json","tests/fixtures/osx-10.11.6/w.json","tests/fixtures/osx-10.14.6/w.json","tests/test_ps.py","tests/test_w.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/ps-axu.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ps-ef.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/w.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/w.json","lines_changed":1},{"name":"tests/test_ps.py","lines_changed":24},{"name":"tests/test_w.py","lines_changed":24}]},"message":"add osx tests","epoch":1576276212,"epoch_utc":null},{"commit":"f0e73d0e72d540292f41fff51652932c4e8b0315","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 13 10:50:01 2019 -0800","stats":{"files_changed":8,"insertions":444,"deletions":0,"files":["tests/fixtures/osx-10.11.6/ps-axu.out","tests/fixtures/osx-10.11.6/ps-ef.out","tests/fixtures/osx-10.11.6/uname-a.out","tests/fixtures/osx-10.11.6/uptime.out","tests/fixtures/osx-10.11.6/w.out","tests/fixtures/osx-10.14.6/uname-a.out","tests/fixtures/osx-10.14.6/uptime.out","tests/fixtures/osx-10.14.6/w.out"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/ps-axu.out","lines_changed":211},{"name":"tests/fixtures/osx-10.11.6/ps-ef.out","lines_changed":211},{"name":"tests/fixtures/osx-10.11.6/uname-a.out","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/uptime.out","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/w.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/uname-a.out","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/uptime.out","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/w.out","lines_changed":10}]},"message":"add osx tests","epoch":1576263001,"epoch_utc":null},{"commit":"a762882f1ccea6789ce7813b313f3242175b5bd6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 13 08:58:23 2019 -0800","stats":{"files_changed":4,"insertions":2,"deletions":88,"files":["tests/fixtures/osx-10.14.6/ps-axu.json","tests/fixtures/osx-10.14.6/ps-axu.out","tests/fixtures/osx-10.14.6/ps-ef.json","tests/fixtures/osx-10.14.6/ps-ef.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ps-axu.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ps-axu.out","lines_changed":43},{"name":"tests/fixtures/osx-10.14.6/ps-ef.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ps-ef.out","lines_changed":43}]},"message":"fixture updates","epoch":1576256303,"epoch_utc":null},{"commit":"4c1bc5923658bf463805ea33ec8d170a817909ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 17:05:40 2019 -0800","stats":{"files_changed":3,"insertions":4,"deletions":3,"files":["docs/parsers/mount.md","docs/parsers/ps.md","docs/parsers/stat.md"],"file_stats":[{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":3},{"name":"docs/parsers/stat.md","lines_changed":2}]},"message":"doc updates","epoch":1576199140,"epoch_utc":null},{"commit":"f2962083f80503f82c3eddf470674c776e616b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 17:04:40 2019 -0800","stats":{"files_changed":7,"insertions":93,"deletions":17,"files":["changelog.txt","jc/parsers/mount.py","tests/fixtures/osx-10.14.6/mount.json","tests/fixtures/osx-10.14.6/mount.out","tests/fixtures/osx-10.14.6/mount2.json","tests/fixtures/osx-10.14.6/mount2.out","tests/test_mount.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/parsers/mount.py","lines_changed":68},{"name":"tests/fixtures/osx-10.14.6/mount.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/mount.out","lines_changed":6},{"name":"tests/fixtures/osx-10.14.6/mount2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/mount2.out","lines_changed":7},{"name":"tests/test_mount.py","lines_changed":24}]},"message":"add osx support for mount parser","epoch":1576199080,"epoch_utc":null},{"commit":"a0b22a5bcfa0777895243088b2c0f3bb5b758775","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 16:14:46 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"help text formatting","epoch":1576196086,"epoch_utc":null},{"commit":"dcf393354cd57683aaeecbed7b884d19b0fe94d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 16:10:30 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":2}]},"message":"doc fix","epoch":1576195830,"epoch_utc":null},{"commit":"5f771656e3fdd703d449b2817faa4faeff1cd879","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 16:07:52 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":10}]},"message":"use universal parser","epoch":1576195672,"epoch_utc":null},{"commit":"f376aab79328a211a127f4f818e7007232f1fae3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:59:36 2019 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":3}]},"message":"doc update","epoch":1576195176,"epoch_utc":null},{"commit":"3c96464217a740571e16c74ad41c1d92f7585547","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:59:24 2019 -0800","stats":{"files_changed":6,"insertions":886,"deletions":13,"files":["jc/parsers/ps.py","tests/fixtures/osx-10.14.6/ps-axu.json","tests/fixtures/osx-10.14.6/ps-axu.out","tests/fixtures/osx-10.14.6/ps-ef.json","tests/fixtures/osx-10.14.6/ps-ef.out","tests/test_ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":31},{"name":"tests/fixtures/osx-10.14.6/ps-axu.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ps-axu.out","lines_changed":421},{"name":"tests/fixtures/osx-10.14.6/ps-ef.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ps-ef.out","lines_changed":421},{"name":"tests/test_ps.py","lines_changed":24}]},"message":"osx fixes and tests","epoch":1576195164,"epoch_utc":null},{"commit":"c9892833a16bb63f78537717be65670eb65a87b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:58:40 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/mount.py"],"file_stats":[{"name":"jc/parsers/mount.py","lines_changed":2}]},"message":"formatting change","epoch":1576195120,"epoch_utc":null},{"commit":"127c98affc7b122f0ced13852850214b9e07677e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:58:24 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update","epoch":1576195104,"epoch_utc":null},{"commit":"8687a772f53ecaf1a20464429060b94bbf660fe7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:33:34 2019 -0800","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":8}]},"message":"use universal parser","epoch":1576193614,"epoch_utc":null},{"commit":"b1162b14d42643fd53dbbe3f89ba042f030d9254","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:22:21 2019 -0800","stats":{"files_changed":1,"insertions":3,"deletions":6,"files":["jc/parsers/lsmod.py"],"file_stats":[{"name":"jc/parsers/lsmod.py","lines_changed":9}]},"message":"use universal parser","epoch":1576192941,"epoch_utc":null},{"commit":"8a8ee3570733c0c06b8cf53eb005e53ac2f9170f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:01:42 2019 -0800","stats":{"files_changed":1,"insertions":8,"deletions":60,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":68}]},"message":"use universal parser","epoch":1576191702,"epoch_utc":null},{"commit":"5e109a3665cf0c286ac9dcbe2a452348a14b90ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 14:12:36 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/fixtures/create_fixtures.sh"],"file_stats":[{"name":"tests/fixtures/create_fixtures.sh","lines_changed":2}]},"message":"add du","epoch":1576188756,"epoch_utc":null},{"commit":"11db478430515ef3e1020482792f23d1c40ca32b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 14:12:21 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"update changelog","epoch":1576188741,"epoch_utc":null},{"commit":"a85377014d9f93fcb9840715129b0e09d48d8584","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 14:11:59 2019 -0800","stats":{"files_changed":1,"insertions":5,"deletions":11,"files":["jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/free.py","lines_changed":16}]},"message":"use universal parser","epoch":1576188719,"epoch_utc":null},{"commit":"3aea86234d33160f5b3139cbfc2f4f032f655f3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 11:23:49 2019 -0800","stats":{"files_changed":6,"insertions":70,"deletions":61,"files":["tests/fixtures/osx-10.11.6/ls-al.json","tests/fixtures/osx-10.11.6/ls-al.out","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.11.6/ls-alh.out","tests/fixtures/osx-10.11.6/ls.json","tests/fixtures/osx-10.11.6/ls.out"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/ls-al.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ls-al.out","lines_changed":61},{"name":"tests/fixtures/osx-10.11.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ls-alh.out","lines_changed":61},{"name":"tests/fixtures/osx-10.11.6/ls.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ls.out","lines_changed":3}]},"message":"fix osx-10.11.6 tests","epoch":1576178629,"epoch_utc":null},{"commit":"916ec6ed6b858a8a496e4026b9bab5505abca2ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 10:11:24 2019 -0800","stats":{"files_changed":13,"insertions":193,"deletions":61,"files":["tests/fixtures/osx-10.11.6/ls-al.json","tests/fixtures/osx-10.11.6/ls-al.out","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.11.6/ls-alh.out","tests/fixtures/osx-10.11.6/ls.json","tests/fixtures/osx-10.11.6/ls.out","tests/fixtures/osx-10.14.6/ls-al.json","tests/fixtures/osx-10.14.6/ls-al.out","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.out","tests/fixtures/osx-10.14.6/ls.json","tests/fixtures/osx-10.14.6/ls.out","tests/test_ls.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/ls-al.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ls-al.out","lines_changed":29},{"name":"tests/fixtures/osx-10.11.6/ls-alh.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ls-alh.out","lines_changed":29},{"name":"tests/fixtures/osx-10.11.6/ls.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ls.out","lines_changed":18},{"name":"tests/fixtures/osx-10.14.6/ls-al.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-al.out","lines_changed":64},{"name":"tests/fixtures/osx-10.14.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-alh.out","lines_changed":64},{"name":"tests/fixtures/osx-10.14.6/ls.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls.out","lines_changed":5},{"name":"tests/test_ls.py","lines_changed":36}]},"message":"fix osx ls tests","epoch":1576174284,"epoch_utc":null},{"commit":"9dca6ba5393d8840ad7fc9509273715a71955bd1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:47:14 2019 -0800","stats":{"files_changed":55,"insertions":120,"deletions":6,"files":["docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":8},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":3},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":3},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":8},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":3},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":3},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2}]},"message":"doc formatting change","epoch":1576172834,"epoch_utc":null},{"commit":"0ebb89f561e1ced2e7f61ae19290e176c8a98bf2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:41:56 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["docs/parsers/arp.md"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2}]},"message":"doc update","epoch":1576172516,"epoch_utc":null},{"commit":"e237867e242211ba37206911ebf1b35c97b417fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:41:25 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":2}]},"message":"doc formatting","epoch":1576172485,"epoch_utc":null},{"commit":"78fa44fd9ac9790313de6f461eb46d9b8d6159d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:35:42 2019 -0800","stats":{"files_changed":24,"insertions":75,"deletions":3,"files":["docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/netstat.md","lines_changed":3},{"name":"docs/parsers/ps.md","lines_changed":3},{"name":"docs/parsers/route.md","lines_changed":3},{"name":"docs/parsers/ss.md","lines_changed":3},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":3},{"name":"docs/parsers/systemctl_lj.md","lines_changed":3},{"name":"docs/parsers/systemctl_ls.md","lines_changed":3},{"name":"docs/parsers/systemctl_luf.md","lines_changed":3},{"name":"docs/parsers/uname.md","lines_changed":3},{"name":"docs/parsers/uptime.md","lines_changed":3},{"name":"docs/parsers/w.md","lines_changed":3},{"name":"jc/parsers/netstat.py","lines_changed":3},{"name":"jc/parsers/ps.py","lines_changed":3},{"name":"jc/parsers/route.py","lines_changed":5},{"name":"jc/parsers/ss.py","lines_changed":3},{"name":"jc/parsers/stat.py","lines_changed":5},{"name":"jc/parsers/systemctl.py","lines_changed":3},{"name":"jc/parsers/systemctl_lj.py","lines_changed":3},{"name":"jc/parsers/systemctl_ls.py","lines_changed":3},{"name":"jc/parsers/systemctl_luf.py","lines_changed":3},{"name":"jc/parsers/uname.py","lines_changed":3},{"name":"jc/parsers/uptime.py","lines_changed":3},{"name":"jc/parsers/w.py","lines_changed":3}]},"message":"add compatibility to docs","epoch":1576172142,"epoch_utc":null},{"commit":"d615fa3b933ccd284bd8ee92baf5dfa6264507c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:21:20 2019 -0800","stats":{"files_changed":30,"insertions":91,"deletions":1,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":3},{"name":"docs/parsers/df.md","lines_changed":3},{"name":"docs/parsers/dig.md","lines_changed":3},{"name":"docs/parsers/env.md","lines_changed":3},{"name":"docs/parsers/free.md","lines_changed":3},{"name":"docs/parsers/fstab.md","lines_changed":3},{"name":"docs/parsers/history.md","lines_changed":3},{"name":"docs/parsers/hosts.md","lines_changed":3},{"name":"docs/parsers/ifconfig.md","lines_changed":3},{"name":"docs/parsers/iptables.md","lines_changed":3},{"name":"docs/parsers/jobs.md","lines_changed":3},{"name":"docs/parsers/ls.md","lines_changed":3},{"name":"docs/parsers/lsblk.md","lines_changed":3},{"name":"docs/parsers/lsmod.md","lines_changed":3},{"name":"docs/parsers/lsof.md","lines_changed":3},{"name":"docs/parsers/mount.md","lines_changed":3},{"name":"jc/parsers/env.py","lines_changed":3},{"name":"jc/parsers/foo.py","lines_changed":3},{"name":"jc/parsers/free.py","lines_changed":3},{"name":"jc/parsers/fstab.py","lines_changed":3},{"name":"jc/parsers/history.py","lines_changed":3},{"name":"jc/parsers/hosts.py","lines_changed":3},{"name":"jc/parsers/ifconfig.py","lines_changed":3},{"name":"jc/parsers/iptables.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":3},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"jc/parsers/lsblk.py","lines_changed":3},{"name":"jc/parsers/lsmod.py","lines_changed":3},{"name":"jc/parsers/lsof.py","lines_changed":3},{"name":"jc/parsers/mount.py","lines_changed":3}]},"message":"add compatibility to docs","epoch":1576171280,"epoch_utc":null},{"commit":"ce134dc332dd9175e0d1823a4959bed427a3ddce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:09:57 2019 -0800","stats":{"files_changed":7,"insertions":115,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-al.json","tests/fixtures/osx-10.14.6/ls-al.out","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.out","tests/fixtures/osx-10.14.6/ls.json","tests/fixtures/osx-10.14.6/ls.out","tests/test_ls.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ls-al.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-al.out","lines_changed":29},{"name":"tests/fixtures/osx-10.14.6/ls-alh.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-alh.out","lines_changed":29},{"name":"tests/fixtures/osx-10.14.6/ls.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls.out","lines_changed":18},{"name":"tests/test_ls.py","lines_changed":36}]},"message":"Add OSX tests for ls","epoch":1576170597,"epoch_utc":null},{"commit":"a56e4dc752a01635fbd9fc31e21d390bbd629084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 17:27:48 2019 -0800","stats":{"files_changed":3,"insertions":28,"deletions":3,"files":["changelog.txt","jc/parsers/arp.py","jc/parsers/universal.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/arp.py","lines_changed":6},{"name":"jc/parsers/universal.py","lines_changed":24}]},"message":"use universal simple table parser","epoch":1576114068,"epoch_utc":null},{"commit":"d221b4aa29e80dda2b591059f4d64c416bff0a17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 17:19:38 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update","epoch":1576113578,"epoch_utc":null},{"commit":"d2cba6ad2f1f1cd35aa174239584a0291abb8e37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 17:18:21 2019 -0800","stats":{"files_changed":3,"insertions":9,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/df.py","lines_changed":3},{"name":"jc/parsers/dig.py","lines_changed":3}]},"message":"add compatibility info","epoch":1576113501,"epoch_utc":null},{"commit":"84b3c30b525ddf1f74eb7fd833050a0ec69621dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 17:18:04 2019 -0800","stats":{"files_changed":21,"insertions":254,"deletions":2,"files":["tests/fixtures/osx-10.11.6/df-h.json","tests/fixtures/osx-10.11.6/df-h.out","tests/fixtures/osx-10.11.6/df.json","tests/fixtures/osx-10.11.6/df.out","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-aaaa.out","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig-x.out","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.11.6/dig.out","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/osx-10.14.6/df-h.out","tests/fixtures/osx-10.14.6/df.json","tests/fixtures/osx-10.14.6/df.out","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-aaaa.out","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig-x.out","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/osx-10.14.6/dig.out","tests/test_df.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/df-h.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/df-h.out","lines_changed":7},{"name":"tests/fixtures/osx-10.11.6/df.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/df.out","lines_changed":7},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.out","lines_changed":20},{"name":"tests/fixtures/osx-10.11.6/dig-x.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/dig-x.out","lines_changed":20},{"name":"tests/fixtures/osx-10.11.6/dig.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/dig.out","lines_changed":41},{"name":"tests/fixtures/osx-10.14.6/df-h.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/df-h.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/df.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/df.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.out","lines_changed":20},{"name":"tests/fixtures/osx-10.14.6/dig-x.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig-x.out","lines_changed":20},{"name":"tests/fixtures/osx-10.14.6/dig.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig.out","lines_changed":41},{"name":"tests/test_df.py","lines_changed":52}]},"message":"add osx tests","epoch":1576113484,"epoch_utc":null},{"commit":"68eeec19a812b735627763bb7d7e2a58b72f7504","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 16:39:30 2019 -0800","stats":{"files_changed":3,"insertions":30,"deletions":25,"files":["README.md","docs/parsers/df.md","jc/parsers/df.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docs/parsers/df.md","lines_changed":31},{"name":"jc/parsers/df.py","lines_changed":20}]},"message":"doc update","epoch":1576111170,"epoch_utc":null},{"commit":"c6d1528a2ed302ea82828b733a98db415be83708","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 16:37:13 2019 -0800","stats":{"files_changed":4,"insertions":19,"deletions":8,"files":["jc/parsers/df.py","jc/parsers/universal.py","tests/fixtures/centos-7.7/df.json","tests/fixtures/ubuntu-18.04/df.json"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":21},{"name":"jc/parsers/universal.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/df.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/df.json","lines_changed":2}]},"message":"use _ instead of -","epoch":1576111033,"epoch_utc":null},{"commit":"50a6b256b8a0936299f562c208ede6187feeb9a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 9 14:01:47 2019 -0800","stats":{"files_changed":1,"insertions":83,"deletions":0,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":83}]},"message":"new universal parsers to limit code duplication","epoch":1575928907,"epoch_utc":null},{"commit":"bbba1fe477014d0b7f370ce46ed821121be81a8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 9 14:01:29 2019 -0800","stats":{"files_changed":1,"insertions":38,"deletions":19,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":57}]},"message":"update df to use universal sparse table parser for osx compatibility","epoch":1575928889,"epoch_utc":null},{"commit":"46b827da6b438be73fab168c3f05298483b141e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 13:22:51 2019 -0800","stats":{"files_changed":7,"insertions":75,"deletions":4,"files":["changelog.txt","jc/parsers/arp.py","tests/fixtures/osx-10.11.6/arp-a.json","tests/fixtures/osx-10.11.6/arp-a.out","tests/fixtures/osx-10.14.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a.out","tests/test_arp.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/arp.py","lines_changed":27},{"name":"tests/fixtures/osx-10.11.6/arp-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/arp-a.out","lines_changed":13},{"name":"tests/fixtures/osx-10.14.6/arp-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/arp-a.out","lines_changed":12},{"name":"tests/test_arp.py","lines_changed":24}]},"message":"add osx compatibility","epoch":1575667371,"epoch_utc":null},{"commit":"5e8c28a30a283b6ef525e9e78d3ef2a0e1526927","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 11:47:42 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2}]},"message":"comment fix","epoch":1575661662,"epoch_utc":null},{"commit":"e5d39031645ac897e0c0297f514ee62efe02f5f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 11:46:09 2019 -0800","stats":{"files_changed":1,"insertions":38,"deletions":17,"files":["docs/parsers/ifconfig.md"],"file_stats":[{"name":"docs/parsers/ifconfig.md","lines_changed":55}]},"message":"update ifconfig doc","epoch":1575661569,"epoch_utc":null},{"commit":"23975c9c9e1dd9d3e9fd7c05d231a86d646be048","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 11:44:57 2019 -0800","stats":{"files_changed":10,"insertions":132,"deletions":45,"files":["README.md","changelog.txt","jc/parsers/ifconfig.py","tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig2.json","tests/fixtures/osx-10.14.6/ifconfig.json","tests/fixtures/osx-10.14.6/ifconfig2.json","tests/fixtures/ubuntu-18.04/ifconfig.json","tests/test_ifconfig.py"],"file_stats":[{"name":"README.md","lines_changed":35},{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":80},{"name":"tests/fixtures/centos-7.7/ifconfig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ifconfig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ifconfig2.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ifconfig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ifconfig2.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ifconfig.json","lines_changed":2},{"name":"tests/test_ifconfig.py","lines_changed":48}]},"message":"fixup osx subnet mask and convert state to an array","epoch":1575661497,"epoch_utc":null},{"commit":"1e0dab8355e6fcb0ecde85270d4daac6ad93875b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 10:53:49 2019 -0800","stats":{"files_changed":10,"insertions":272,"deletions":2,"files":["tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.out","tests/fixtures/osx-10.11.6/ifconfig2.json","tests/fixtures/osx-10.11.6/ifconfig2.out","tests/fixtures/osx-10.14.6/ifconfig.json","tests/fixtures/osx-10.14.6/ifconfig.out","tests/fixtures/osx-10.14.6/ifconfig2.json","tests/fixtures/osx-10.14.6/ifconfig2.out","tests/fixtures/ubuntu-18.04/ifconfig.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ifconfig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ifconfig.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ifconfig.out","lines_changed":40},{"name":"tests/fixtures/osx-10.11.6/ifconfig2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ifconfig2.out","lines_changed":40},{"name":"tests/fixtures/osx-10.14.6/ifconfig.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ifconfig.out","lines_changed":91},{"name":"tests/fixtures/osx-10.14.6/ifconfig2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ifconfig2.out","lines_changed":95},{"name":"tests/fixtures/ubuntu-18.04/ifconfig.json","lines_changed":2}]},"message":"ifconfig fixture updates","epoch":1575658429,"epoch_utc":null},{"commit":"5f4c10ffd5a9cbe4e5e3d2b9adc34f36492eaf46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 10:39:11 2019 -0800","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"changelog.txt","lines_changed":4}]},"message":"doc update","epoch":1575657551,"epoch_utc":null},{"commit":"6f3d2b4b566b963fbf38572c587e8bd4e18881dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 10:30:01 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"require ifconfig-parser v0.0.5 for mac and bytes support","epoch":1575657001,"epoch_utc":null},{"commit":"fea8ace8446b64abe9e61a028951bc4e6df9f9c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 10:27:11 2019 -0800","stats":{"files_changed":2,"insertions":20,"deletions":6,"files":["README.md","jc/parsers/ifconfig.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":22}]},"message":"add OSX compatibility","epoch":1575656831,"epoch_utc":null},{"commit":"6633d9262c936217d8e90e64505c66b006cdab56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Nov 30 13:52:24 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["_config.yml"],"file_stats":[{"name":"_config.yml","lines_changed":1}]},"message":"Set theme jekyll-theme-cayman","epoch":1575150744,"epoch_utc":null},{"commit":"7d54137140e6d0515bc23c131a097af5c70c3379","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 28 11:51:54 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"link update","epoch":1574970714,"epoch_utc":null},{"commit":"2fcda6f2480ae6bd5428a0147c19f9af527391b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 25 18:34:21 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add motivation to readme","epoch":1574735661,"epoch_utc":null},{"commit":"9c1b8bacf9a59a86feb2a91eb44919e800491d1e","merge":"d192745 4867655","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 11:55:06 2019 -0800","message":"Merge pull request #16 from kellyjonbrazil/dev\n\nDev v1.5.1","epoch":1574020506,"epoch_utc":null},{"commit":"4867655eb297b1da7a55e0d3a24c7ed7c8af55c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 11:49:36 2019 -0800","stats":{"files_changed":6,"insertions":172,"deletions":0,"files":[".../centos-7.7/iptables-filter-line-numbers.json",".../centos-7.7/iptables-filter-line-numbers.out","tests/fixtures/create_fixtures.sh",".../ubuntu-18.04/iptables-filter-line-numbers.json",".../ubuntu-18.04/iptables-filter-line-numbers.out","tests/test_iptables.py"],"file_stats":[{"name":".../centos-7.7/iptables-filter-line-numbers.json","lines_changed":1},{"name":".../centos-7.7/iptables-filter-line-numbers.out","lines_changed":128},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":1},{"name":".../ubuntu-18.04/iptables-filter-line-numbers.json","lines_changed":1},{"name":".../ubuntu-18.04/iptables-filter-line-numbers.out","lines_changed":17},{"name":"tests/test_iptables.py","lines_changed":24}]},"message":"add line-numbers tests","epoch":1574020176,"epoch_utc":null},{"commit":"47410d1a95406b0960aac705e7cfe925fea3172c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 11:05:46 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1574017546,"epoch_utc":null},{"commit":"5fa49f5e672fc6f8dc18fb4b1761c98b81362649","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 11:00:16 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update","epoch":1574017216,"epoch_utc":null},{"commit":"36c53827fab6ac38c0010250ec387db40fdeecfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 10:56:55 2019 -0800","stats":{"files_changed":19,"insertions":1316,"deletions":308,"files":["tests/fixtures/centos-7.7/systemctl-ls.json","tests/fixtures/centos-7.7/systemctl-ls.out","tests/fixtures/centos-7.7/systemctl-luf.json","tests/fixtures/centos-7.7/systemctl-luf.out","tests/fixtures/centos-7.7/systemctl.json","tests/fixtures/centos-7.7/systemctl.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/systemctl-lj.json","tests/fixtures/ubuntu-18.04/systemctl-lj.out","tests/fixtures/ubuntu-18.04/systemctl-ls.json","tests/fixtures/ubuntu-18.04/systemctl-ls.out","tests/fixtures/ubuntu-18.04/systemctl-luf.json","tests/fixtures/ubuntu-18.04/systemctl-luf.out","tests/fixtures/ubuntu-18.04/systemctl.json","tests/fixtures/ubuntu-18.04/systemctl.out","tests/test_systemctl.py","tests/test_systemctl_lj.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/systemctl-ls.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/systemctl-ls.out","lines_changed":17},{"name":"tests/fixtures/centos-7.7/systemctl-luf.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/systemctl-luf.out","lines_changed":247},{"name":"tests/fixtures/centos-7.7/systemctl.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/systemctl.out","lines_changed":334},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":8},{"name":"tests/fixtures/ubuntu-18.04/systemctl-lj.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/systemctl-lj.out","lines_changed":6},{"name":"tests/fixtures/ubuntu-18.04/systemctl-ls.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/systemctl-ls.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-18.04/systemctl-luf.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/systemctl-luf.out","lines_changed":324},{"name":"tests/fixtures/ubuntu-18.04/systemctl.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/systemctl.out","lines_changed":528},{"name":"tests/test_systemctl.py","lines_changed":4},{"name":"tests/test_systemctl_lj.py","lines_changed":40},{"name":"tests/test_systemctl_ls.py","lines_changed":40},{"name":"tests/test_systemctl_luf.py","lines_changed":40}]},"message":"add systemctl tests","epoch":1574017015,"epoch_utc":null},{"commit":"51631aef5b1b6fdeff4ab543510a9f9e15a0c2c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 10:31:58 2019 -0800","stats":{"files_changed":5,"insertions":358,"deletions":0,"files":["tests/fixtures/centos-7.7/systemctl.json","tests/fixtures/centos-7.7/systemctl.out","tests/fixtures/ubuntu-18.04/systemctl.json","tests/fixtures/ubuntu-18.04/systemctl.out","tests/test_systemctl.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/systemctl.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/systemctl.out","lines_changed":118},{"name":"tests/fixtures/ubuntu-18.04/systemctl.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/systemctl.out","lines_changed":198},{"name":"tests/test_systemctl.py","lines_changed":40}]},"message":"add systemctl tests","epoch":1574015518,"epoch_utc":null},{"commit":"a0298ac8a39093620b6859c909a78d11ab4a8e56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 10:26:48 2019 -0800","stats":{"files_changed":5,"insertions":55,"deletions":0,"files":["tests/fixtures/centos-7.7/fstab.json","tests/fixtures/centos-7.7/fstab.out","tests/fixtures/ubuntu-18.04/fstab.json","tests/fixtures/ubuntu-18.04/fstab.out","tests/test_fstab.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/fstab.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/fstab.out","lines_changed":11},{"name":"tests/fixtures/ubuntu-18.04/fstab.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/fstab.out","lines_changed":2},{"name":"tests/test_fstab.py","lines_changed":40}]},"message":"add fstab tests","epoch":1574015208,"epoch_utc":null},{"commit":"98c0188821ebaa71c5661f2e095cf464bec695f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:27:51 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/systemctl_ls.md","jc/parsers/systemctl_ls.py"],"file_stats":[{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2}]},"message":"formatting fix","epoch":1573874871,"epoch_utc":null},{"commit":"ab1dabe3e42997825707006b63cc0c03d28470d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:26:22 2019 -0800","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py"],"file_stats":[{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2}]},"message":"doc update","epoch":1573874782,"epoch_utc":null},{"commit":"94bdb11fdf0e16d89769046d317643334ef1acdd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:24:32 2019 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"remove systemctl from TODO","epoch":1573874672,"epoch_utc":null},{"commit":"b6727d68bab66164a3834b240ae868062aad9371","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:18:31 2019 -0800","stats":{"files_changed":1,"insertions":68,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":68}]},"message":"add systemctl parsers","epoch":1573874311,"epoch_utc":null},{"commit":"89bad7fc2b4023b10b6eeb7ff1f8f18b71731cb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:13:53 2019 -0800","stats":{"files_changed":5,"insertions":1,"deletions":191,"files":["changelog.txt","docgen.sh","docs/parsers/systemctl_lm.md","jc/cli.py","jc/parsers/systemctl_lm.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/systemctl_lm.md","lines_changed":76},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/systemctl_lm.py","lines_changed":110}]},"message":"remove systemctl list-machines parser","epoch":1573874033,"epoch_utc":null},{"commit":"c0b8b810a2616e77973c1223f9c39329112337ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:07:42 2019 -0800","stats":{"files_changed":5,"insertions":306,"deletions":0,"files":["docgen.sh","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_lm.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md"],"file_stats":[{"name":"docgen.sh","lines_changed":4},{"name":"docs/parsers/systemctl_lj.md","lines_changed":94},{"name":"docs/parsers/systemctl_lm.md","lines_changed":76},{"name":"docs/parsers/systemctl_ls.md","lines_changed":68},{"name":"docs/parsers/systemctl_luf.md","lines_changed":64}]},"message":"add systemctl list parsers","epoch":1573873662,"epoch_utc":null},{"commit":"31eb65acd18b6d9163de900dbe48807a41a23785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:05:49 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_lm.py"],"file_stats":[{"name":"jc/parsers/systemctl_lm.py","lines_changed":4}]},"message":"doc fix","epoch":1573873549,"epoch_utc":null},{"commit":"513bbeb4649c011476930e1d1bf739ff06c2d66f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:02:57 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/systemctl_lj.py"],"file_stats":[{"name":"jc/parsers/systemctl_lj.py","lines_changed":2}]},"message":"add break on footer condition","epoch":1573873377,"epoch_utc":null},{"commit":"3a52fb725a0e56b52a0ea430266400b268360737","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 18:58:17 2019 -0800","stats":{"files_changed":2,"insertions":55,"deletions":29,"files":["jc/cli.py","jc/parsers/systemctl_lj.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4},{"name":"jc/parsers/systemctl_lj.py","lines_changed":80}]},"message":"add systemctl list-jobs parser","epoch":1573873097,"epoch_utc":null},{"commit":"5affd444999de88b9bff7b49d790913540f97cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 18:36:12 2019 -0800","stats":{"files_changed":6,"insertions":342,"deletions":24,"files":["jc/cli.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_lm.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":11},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":110},{"name":"jc/parsers/systemctl_lm.py","lines_changed":110},{"name":"jc/parsers/systemctl_ls.py","lines_changed":101},{"name":"jc/parsers/systemctl_luf.py","lines_changed":32}]},"message":"add systemctl_lj, lm, ls, and luf","epoch":1573871772,"epoch_utc":null},{"commit":"5dbc6e806c5d05bfa1f7e2156ed2573341eb23c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 12:28:28 2019 -0800","stats":{"files_changed":2,"insertions":142,"deletions":29,"files":["jc/cli.py","jc/parsers/systemctl_luf.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":61},{"name":"jc/parsers/systemctl_luf.py","lines_changed":110}]},"message":"add systemctl_luf parser","epoch":1573849708,"epoch_utc":null},{"commit":"59ae31f3f342c9337037aac4630310c9b9eb8287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 11:58:17 2019 -0800","stats":{"files_changed":6,"insertions":219,"deletions":0,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/systemctl.md","jc/cli.py","jc/parsers/systemctl.py"],"file_stats":[{"name":"README.md","lines_changed":29},{"name":"changelog.txt","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/systemctl.md","lines_changed":76},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/systemctl.py","lines_changed":109}]},"message":"add systemctl parser","epoch":1573847897,"epoch_utc":null},{"commit":"230e921c2e8d931ea8a6abdf81215dbfc968b41c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 10:36:58 2019 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"remove fstab from TODO","epoch":1573843018,"epoch_utc":null},{"commit":"a7c3d88b08ab90b719035cb15d78afe708235742","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 10:01:29 2019 -0800","stats":{"files_changed":3,"insertions":136,"deletions":0,"files":["docgen.sh","docs/parsers/fstab.md","jc/parsers/fstab.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/fstab.md","lines_changed":107},{"name":"jc/parsers/fstab.py","lines_changed":28}]},"message":"update example and docs","epoch":1573840889,"epoch_utc":null},{"commit":"9b453bcb84dd9f2f566955eda1ab35c863b3e8a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 09:57:25 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":13,"files":["jc/parsers/fstab.py"],"file_stats":[{"name":"jc/parsers/fstab.py","lines_changed":14}]},"message":"remove commented code block","epoch":1573840645,"epoch_utc":null},{"commit":"ce43c782f601fc12267fa22279e8e0142ecc3a7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 09:32:12 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"fstab update","epoch":1573839132,"epoch_utc":null},{"commit":"cb16faaf4d1700379d53053fe06824fd03404f87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 09:31:28 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"helptext update","epoch":1573839088,"epoch_utc":null},{"commit":"3f1d3ff6d85422536e0adfb6433fd3ec0399ebe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 09:29:54 2019 -0800","stats":{"files_changed":2,"insertions":73,"deletions":6,"files":["README.md","jc/parsers/fstab.py"],"file_stats":[{"name":"README.md","lines_changed":31},{"name":"jc/parsers/fstab.py","lines_changed":48}]},"message":"add examples","epoch":1573838994,"epoch_utc":null},{"commit":"6f67eecd5ed46f8a692ff5dd607a2395a5c838ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 09:22:07 2019 -0800","stats":{"files_changed":2,"insertions":108,"deletions":0,"files":["jc/cli.py","jc/parsers/fstab.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/fstab.py","lines_changed":105}]},"message":"add fstab parser","epoch":1573838527,"epoch_utc":null},{"commit":"e75c819190634f0a9048942b39eda691831829ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 08:51:53 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"changelog update","epoch":1573836713,"epoch_utc":null},{"commit":"601e68d104dd43940acadaa574dfd9b5117b0476","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 08:40:13 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/hosts.md","jc/parsers/hosts.py"],"file_stats":[{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2}]},"message":"doc update","epoch":1573836013,"epoch_utc":null},{"commit":"8285ecfd1e7810102cdbc399398a16f999c841ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 08:40:01 2019 -0800","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["tests/fixtures/centos-7.7/hosts.out","tests/fixtures/ubuntu-18.04/hosts.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/hosts.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/hosts.out","lines_changed":3}]},"message":"enhance test file with comments","epoch":1573836001,"epoch_utc":null},{"commit":"8726de902e527b95a12afd79a53d533cc176703d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 22:04:59 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"add hosts parser","epoch":1573797899,"epoch_utc":null},{"commit":"4133585274b0e7faa0255a911468248eb390d673","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 22:04:48 2019 -0800","stats":{"files_changed":5,"insertions":53,"deletions":0,"files":["tests/fixtures/centos-7.7/hosts.json","tests/fixtures/centos-7.7/hosts.out","tests/fixtures/ubuntu-18.04/hosts.json","tests/fixtures/ubuntu-18.04/hosts.out","tests/test_hosts.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/hosts.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/hosts.out","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/hosts.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/hosts.out","lines_changed":9},{"name":"tests/test_hosts.py","lines_changed":40}]},"message":"add hosts tests","epoch":1573797888,"epoch_utc":null},{"commit":"ad913b141721655a72a7b2a6ad60037e5acd5f9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:59:06 2019 -0800","stats":{"files_changed":4,"insertions":148,"deletions":2,"files":["README.md","docgen.sh","docs/parsers/hosts.md","jc/parsers/hosts.py"],"file_stats":[{"name":"README.md","lines_changed":51},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/hosts.md","lines_changed":96},{"name":"jc/parsers/hosts.py","lines_changed":2}]},"message":"add hosts docs","epoch":1573797546,"epoch_utc":null},{"commit":"7113e5a844fc0304f62f4afe65b5cbc816f75372","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:55:08 2019 -0800","stats":{"files_changed":1,"insertions":10,"deletions":0,"files":["jc/parsers/hosts.py"],"file_stats":[{"name":"jc/parsers/hosts.py","lines_changed":10}]},"message":"filter out comments at the end of the line","epoch":1573797308,"epoch_utc":null},{"commit":"a3a8369dc0e7227072f595cef1e57d471eff4d2f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:36:02 2019 -0800","stats":{"files_changed":1,"insertions":51,"deletions":9,"files":["jc/parsers/hosts.py"],"file_stats":[{"name":"jc/parsers/hosts.py","lines_changed":60}]},"message":"add docs","epoch":1573796162,"epoch_utc":null},{"commit":"64016b8ef049d5d4f02b4371f5cc9632c19bcaa2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:31:25 2019 -0800","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["jc/cli.py","jc/parsers/hosts.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/hosts.py","lines_changed":89}]},"message":"add hosts parser","epoch":1573795885,"epoch_utc":null},{"commit":"1cb49d60c84054b0446f299f6b4bab7d102101c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:21:15 2019 -0800","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"remove sar and sadf","epoch":1573795275,"epoch_utc":null},{"commit":"c858adfd12144569d0b990a217c5bcd75bd23828","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:11:05 2019 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"remove stat from todo","epoch":1573794665,"epoch_utc":null},{"commit":"08d68327c777dd740d93a1b5fff8cf62f58904c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:08:09 2019 -0800","stats":{"files_changed":5,"insertions":8080,"deletions":0,"files":["tests/fixtures/centos-7.7/stat.json","tests/fixtures/centos-7.7/stat.out","tests/fixtures/ubuntu-18.04/stat.json","tests/fixtures/ubuntu-18.04/stat.out","tests/test_stat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/stat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/stat.out","lines_changed":6678},{"name":"tests/fixtures/ubuntu-18.04/stat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/stat.out","lines_changed":1360},{"name":"tests/test_stat.py","lines_changed":40}]},"message":"add stat tests","epoch":1573794489,"epoch_utc":null},{"commit":"0d7c6c5664911af7a41149d51dd6ae05b39d7648","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 20:57:49 2019 -0800","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/parsers/stat.md","jc/parsers/stat.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":8}]},"message":"doc fix and add continue lines","epoch":1573793869,"epoch_utc":null},{"commit":"8bfa41dbf485cb06c928bc00a68727d2ceac21fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 17:36:29 2019 -0800","stats":{"files_changed":3,"insertions":22,"deletions":14,"files":["README.md","docs/parsers/stat.md","jc/parsers/stat.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docs/parsers/stat.md","lines_changed":12},{"name":"jc/parsers/stat.py","lines_changed":20}]},"message":"change values to null if -","epoch":1573781789,"epoch_utc":null},{"commit":"7e2fa48ed4f3fd452082ce06e7306efd38b2d508","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 17:24:51 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"update changelog","epoch":1573781091,"epoch_utc":null},{"commit":"340635cad5224f2c715bf961956f4b9b6119d80b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 17:23:44 2019 -0800","stats":{"files_changed":3,"insertions":408,"deletions":111,"files":["docgen.sh","docs/parsers/ss.md","docs/parsers/stat.md"],"file_stats":[{"name":"docgen.sh","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":363},{"name":"docs/parsers/stat.md","lines_changed":154}]},"message":"fix stats doc","epoch":1573781024,"epoch_utc":null},{"commit":"8f77d1de098f035767d73a6965a695b95b75e161","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 17:21:56 2019 -0800","stats":{"files_changed":2,"insertions":111,"deletions":253,"files":["docgen.sh","docs/parsers/ss.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ss.md","lines_changed":363}]},"message":"add stat docs","epoch":1573780916,"epoch_utc":null},{"commit":"7dcf1b25ffb801375f0bf4263f34713ded904de9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 17:20:13 2019 -0800","stats":{"files_changed":1,"insertions":13,"deletions":0,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":13}]},"message":"add link_to field","epoch":1573780813,"epoch_utc":null},{"commit":"9b735381063a1167a6a74864a43b81aefd98009f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 16:44:12 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":2}]},"message":"set compatibility to linux only","epoch":1573778652,"epoch_utc":null},{"commit":"3bf8c8c6dbdf7e03e26b4581e35c3274084c07ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 16:40:52 2019 -0800","stats":{"files_changed":7,"insertions":27,"deletions":27,"files":["jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/mount.py","lines_changed":6},{"name":"jc/parsers/netstat.py","lines_changed":8},{"name":"jc/parsers/ps.py","lines_changed":8},{"name":"jc/parsers/route.py","lines_changed":8},{"name":"jc/parsers/uname.py","lines_changed":8},{"name":"jc/parsers/uptime.py","lines_changed":8},{"name":"jc/parsers/w.py","lines_changed":8}]},"message":"pep8 fixes","epoch":1573778452,"epoch_utc":null},{"commit":"04a1ff2ca7873d55cdbc831e521f3d4892074d98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 16:36:00 2019 -0800","stats":{"files_changed":8,"insertions":28,"deletions":28,"files":["jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":8},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":6},{"name":"jc/parsers/jobs.py","lines_changed":6},{"name":"jc/parsers/ls.py","lines_changed":8},{"name":"jc/parsers/lsblk.py","lines_changed":10},{"name":"jc/parsers/lsmod.py","lines_changed":8},{"name":"jc/parsers/lsof.py","lines_changed":8}]},"message":"pep8 fixes","epoch":1573778160,"epoch_utc":null},{"commit":"64647d230ac936cb43864481ae0f45d13707d7b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 16:32:11 2019 -0800","stats":{"files_changed":6,"insertions":21,"deletions":21,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":8},{"name":"jc/parsers/dig.py","lines_changed":8},{"name":"jc/parsers/env.py","lines_changed":8},{"name":"jc/parsers/foo.py","lines_changed":8},{"name":"jc/parsers/free.py","lines_changed":6}]},"message":"pep8 cleanup","epoch":1573777931,"epoch_utc":null},{"commit":"c2a67e1b70f33044aecabd8b46018117cb38cb9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 16:31:52 2019 -0800","stats":{"files_changed":2,"insertions":213,"deletions":16,"files":["README.md","jc/parsers/stat.py"],"file_stats":[{"name":"README.md","lines_changed":48},{"name":"jc/parsers/stat.py","lines_changed":181}]},"message":"add stat parser","epoch":1573777912,"epoch_utc":null},{"commit":"edb9a7c76e1fedaf37b6a226ad4e1cfc08a9a5ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 15:26:36 2019 -0800","stats":{"files_changed":2,"insertions":94,"deletions":0,"files":["jc/cli.py","jc/parsers/stat.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/stat.py","lines_changed":91}]},"message":"add stat parser","epoch":1573773996,"epoch_utc":null},{"commit":"a407f5b67833cc5f8dda9fe8265cd34e62f28d14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 14:01:04 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"minor update","epoch":1573768864,"epoch_utc":null},{"commit":"e5b4987acb70e854d9996350235c5535b4a46b69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 14:00:06 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"doc update","epoch":1573768806,"epoch_utc":null},{"commit":"ba8cc18eebe779742cff0ba4c8bebe376e787c8c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 13:56:09 2019 -0800","stats":{"files_changed":5,"insertions":405,"deletions":0,"files":["tests/fixtures/centos-7.7/ss-sudo-a.json","tests/fixtures/centos-7.7/ss-sudo-a.out","tests/fixtures/ubuntu-18.04/ss-sudo-a.json","tests/fixtures/ubuntu-18.04/ss-sudo-a.out","tests/test_ss.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ss-sudo-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ss-sudo-a.out","lines_changed":204},{"name":"tests/fixtures/ubuntu-18.04/ss-sudo-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ss-sudo-a.out","lines_changed":159},{"name":"tests/test_ss.py","lines_changed":40}]},"message":"add ss tests","epoch":1573768569,"epoch_utc":null},{"commit":"d2c7316e00b9aaf19231c05351821041458baf98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 13:43:07 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"update command options info","epoch":1573767787,"epoch_utc":null},{"commit":"609aa14d243206e81ed31f8438c3f42e8263e140","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 13:38:52 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/ss.md","jc/parsers/ss.py"],"file_stats":[{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2}]},"message":"spelling fix","epoch":1573767532,"epoch_utc":null},{"commit":"ef1ad4c700fcb740b5fbe1e12205b9a30ae427ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 13:37:55 2019 -0800","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["docs/parsers/ss.md","jc/parsers/ss.py"],"file_stats":[{"name":"docs/parsers/ss.md","lines_changed":3},{"name":"jc/parsers/ss.py","lines_changed":3}]},"message":"doc update","epoch":1573767475,"epoch_utc":null},{"commit":"a0e2732152dc3005914b9a3e4f03e937a113c67f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 09:46:10 2019 -0800","stats":{"files_changed":1,"insertions":64,"deletions":12,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":76}]},"message":"add ss example","epoch":1573753570,"epoch_utc":null},{"commit":"9b5d3e3be1ac07813e716f8426fe89cced478221","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 09:42:44 2019 -0800","stats":{"files_changed":1,"insertions":135,"deletions":25,"files":["docs/parsers/ss.md"],"file_stats":[{"name":"docs/parsers/ss.md","lines_changed":160}]},"message":"update doc","epoch":1573753364,"epoch_utc":null},{"commit":"2663ef31fbc1b69b89b8032640a25065cc953866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 09:38:19 2019 -0800","stats":{"files_changed":1,"insertions":159,"deletions":30,"files":["jc/parsers/ss.py"],"file_stats":[{"name":"jc/parsers/ss.py","lines_changed":189}]},"message":"fix field names per ss documentation","epoch":1573753099,"epoch_utc":null},{"commit":"a4cdd3378e6a031f16dd371ed5cd60ff018feb32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 13 08:17:41 2019 -0800","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":6}]},"message":"add compatibility info","epoch":1573661861,"epoch_utc":null},{"commit":"2f805da24d0e833e3d2a1f3a5ec34031fa911c05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 13 08:04:40 2019 -0800","stats":{"files_changed":45,"insertions":51,"deletions":51,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/utils.md","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/utils.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":8},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":8}]},"message":"add colon to parameter in docs","epoch":1573661080,"epoch_utc":null},{"commit":"79152a946d93e4facf9711bfa0f421e1978e0f1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 13 07:46:14 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":3}]},"message":"initialize network_list and socket_list variables","epoch":1573659974,"epoch_utc":null},{"commit":"de37bb37d01b397df2b5992b4acd64817380401d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 13 07:45:37 2019 -0800","stats":{"files_changed":3,"insertions":187,"deletions":1,"files":["docgen.sh","docs/parsers/ss.md","jc/parsers/ss.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ss.md","lines_changed":184},{"name":"jc/parsers/ss.py","lines_changed":3}]},"message":"add ss docs","epoch":1573659937,"epoch_utc":null},{"commit":"f783e44e5c0cd05733da5d24573f06d05760f993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 18:58:58 2019 -0800","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"changelog.txt","lines_changed":1}]},"message":"doc fix","epoch":1573613938,"epoch_utc":null},{"commit":"af82f2c991ac0668485e75ae78a26b9553ec8b13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 18:56:42 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update raw format note","epoch":1573613802,"epoch_utc":null},{"commit":"46774daf9d3e0612df8f79d4b6b724e612ceb725","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 18:51:21 2019 -0800","stats":{"files_changed":2,"insertions":194,"deletions":4,"files":["README.md","jc/parsers/ss.py"],"file_stats":[{"name":"README.md","lines_changed":68},{"name":"jc/parsers/ss.py","lines_changed":130}]},"message":"doc update","epoch":1573613481,"epoch_utc":null},{"commit":"648306b7856fe2e296ce463ff4c9c2a8632c92d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 18:04:40 2019 -0800","stats":{"files_changed":1,"insertions":44,"deletions":22,"files":["jc/parsers/ss.py"],"file_stats":[{"name":"jc/parsers/ss.py","lines_changed":66}]},"message":"process ss data","epoch":1573610680,"epoch_utc":null},{"commit":"b7a4f205b80c0a6a41aaabf59703525ac526c295","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 17:10:06 2019 -0800","stats":{"files_changed":1,"insertions":17,"deletions":14,"files":["jc/parsers/ss.py"],"file_stats":[{"name":"jc/parsers/ss.py","lines_changed":31}]},"message":"parser fixes","epoch":1573607406,"epoch_utc":null},{"commit":"fdb168b43a69358a97bf43b71a0adbc7b1ef56f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 16:34:42 2019 -0800","stats":{"files_changed":2,"insertions":120,"deletions":0,"files":["jc/cli.py","jc/parsers/ss.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/ss.py","lines_changed":117}]},"message":"add ss parser","epoch":1573605282,"epoch_utc":null},{"commit":"b6f65c93c462856f26201df0cbfe804b29a65169","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 15:05:21 2019 -0800","stats":{"files_changed":3,"insertions":43,"deletions":69,"files":["README.md","docs/parsers/ps.md","jc/parsers/ps.py"],"file_stats":[{"name":"README.md","lines_changed":26},{"name":"docs/parsers/ps.md","lines_changed":43},{"name":"jc/parsers/ps.py","lines_changed":43}]},"message":"ps doc update","epoch":1573599921,"epoch_utc":null},{"commit":"3f4838f17a81969718d9e5b6bafa21e0b92e1d95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 14:22:49 2019 -0800","stats":{"files_changed":2,"insertions":0,"deletions":6,"files":["docgen.sh","docs/cli.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/cli.md","lines_changed":5}]},"message":"remove cli.md","epoch":1573597369,"epoch_utc":null},{"commit":"eef0dee2aa206716d9cf011bec58a06c46bbee15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 14:20:59 2019 -0800","stats":{"files_changed":2,"insertions":8,"deletions":0,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":4},{"name":"jc/utils.py","lines_changed":4}]},"message":"doc update","epoch":1573597259,"epoch_utc":null},{"commit":"e17388d3b2d1521d963bf9dd9e7a4ba5ba9bb09d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 14:19:40 2019 -0800","stats":{"files_changed":2,"insertions":44,"deletions":4,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":22},{"name":"jc/utils.py","lines_changed":26}]},"message":"doc update","epoch":1573597180,"epoch_utc":null},{"commit":"7e6a1bc719b7160ba70cd326ff6aa182993a7380","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 14:15:22 2019 -0800","stats":{"files_changed":2,"insertions":41,"deletions":63,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":51},{"name":"jc/__init__.py","lines_changed":53}]},"message":"doc update","epoch":1573596922,"epoch_utc":null},{"commit":"37738a2ea2f15af847e4b8383aba911e2020a3e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 14:10:26 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update contributions","epoch":1573596626,"epoch_utc":null},{"commit":"c5834a57db8957723a1425b9db46c433e28a3af1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 13:35:32 2019 -0800","stats":{"files_changed":1,"insertions":14,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":14}]},"message":"add todo section","epoch":1573594532,"epoch_utc":null},{"commit":"91b9373f380e06f91888811edbfb21747ff08810","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 13:05:19 2019 -0800","stats":{"files_changed":1,"insertions":417,"deletions":673,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1090}]},"message":"new examples","epoch":1573592719,"epoch_utc":null},{"commit":"ce0bb5b816eed0c75542ead474c3dcb8401be2d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:52:16 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting fix","epoch":1573588336,"epoch_utc":null},{"commit":"f330ff0eff00586f46d18497f2441e94b6430e91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:49:14 2019 -0800","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":12}]},"message":"wrap example text","epoch":1573588154,"epoch_utc":null},{"commit":"4b02700414660b90518311485761870402368625","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:46:52 2019 -0800","stats":{"files_changed":1,"insertions":9,"deletions":20,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":29}]},"message":"update simple examples","epoch":1573588012,"epoch_utc":null},{"commit":"ee30180376b7acec46314bbc483866bff41c362a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:39:33 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"fix note","epoch":1573587573,"epoch_utc":null},{"commit":"338e0ff15c7fac84475c1ed107e6a23e7a009b1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:38:50 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add schema note","epoch":1573587530,"epoch_utc":null},{"commit":"3ac75305dfa33429646bb5d415567034cccfeee3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:28:10 2019 -0800","stats":{"files_changed":39,"insertions":351,"deletions":39,"files":["docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/df.md","lines_changed":10},{"name":"docs/parsers/dig.md","lines_changed":10},{"name":"docs/parsers/env.md","lines_changed":10},{"name":"docs/parsers/free.md","lines_changed":10},{"name":"docs/parsers/history.md","lines_changed":10},{"name":"docs/parsers/ifconfig.md","lines_changed":10},{"name":"docs/parsers/iptables.md","lines_changed":10},{"name":"docs/parsers/jobs.md","lines_changed":10},{"name":"docs/parsers/ls.md","lines_changed":10},{"name":"docs/parsers/lsblk.md","lines_changed":10},{"name":"docs/parsers/lsmod.md","lines_changed":10},{"name":"docs/parsers/lsof.md","lines_changed":10},{"name":"docs/parsers/mount.md","lines_changed":10},{"name":"docs/parsers/netstat.md","lines_changed":10},{"name":"docs/parsers/ps.md","lines_changed":10},{"name":"docs/parsers/route.md","lines_changed":10},{"name":"docs/parsers/uname.md","lines_changed":10},{"name":"docs/parsers/uptime.md","lines_changed":10},{"name":"docs/parsers/w.md","lines_changed":10},{"name":"jc/parsers/df.py","lines_changed":10},{"name":"jc/parsers/dig.py","lines_changed":10},{"name":"jc/parsers/env.py","lines_changed":10},{"name":"jc/parsers/foo.py","lines_changed":10},{"name":"jc/parsers/free.py","lines_changed":10},{"name":"jc/parsers/history.py","lines_changed":10},{"name":"jc/parsers/ifconfig.py","lines_changed":10},{"name":"jc/parsers/iptables.py","lines_changed":10},{"name":"jc/parsers/jobs.py","lines_changed":10},{"name":"jc/parsers/ls.py","lines_changed":10},{"name":"jc/parsers/lsblk.py","lines_changed":10},{"name":"jc/parsers/lsmod.py","lines_changed":10},{"name":"jc/parsers/lsof.py","lines_changed":10},{"name":"jc/parsers/mount.py","lines_changed":10},{"name":"jc/parsers/netstat.py","lines_changed":10},{"name":"jc/parsers/ps.py","lines_changed":10},{"name":"jc/parsers/route.py","lines_changed":10},{"name":"jc/parsers/uname.py","lines_changed":10},{"name":"jc/parsers/uptime.py","lines_changed":10},{"name":"jc/parsers/w.py","lines_changed":10}]},"message":"update process() doc","epoch":1573586890,"epoch_utc":null},{"commit":"3bdcf44afb708cf6a716a0847b119f895602c23e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:22:17 2019 -0800","stats":{"files_changed":2,"insertions":18,"deletions":2,"files":["docs/parsers/arp.md","jc/parsers/arp.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":10},{"name":"jc/parsers/arp.py","lines_changed":10}]},"message":"doc update","epoch":1573586537,"epoch_utc":null},{"commit":"e3f4ffede56fe48c0a282a021ac5cdfd7a8abee9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:18:00 2019 -0800","stats":{"files_changed":20,"insertions":172,"deletions":77,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":13},{"name":"docs/parsers/dig.md","lines_changed":13},{"name":"docs/parsers/env.md","lines_changed":13},{"name":"docs/parsers/free.md","lines_changed":13},{"name":"docs/parsers/history.md","lines_changed":13},{"name":"docs/parsers/ifconfig.md","lines_changed":13},{"name":"docs/parsers/iptables.md","lines_changed":13},{"name":"docs/parsers/jobs.md","lines_changed":13},{"name":"docs/parsers/ls.md","lines_changed":13},{"name":"docs/parsers/lsblk.md","lines_changed":13},{"name":"docs/parsers/lsmod.md","lines_changed":13},{"name":"docs/parsers/lsof.md","lines_changed":13},{"name":"docs/parsers/mount.md","lines_changed":13},{"name":"docs/parsers/netstat.md","lines_changed":13},{"name":"docs/parsers/ps.md","lines_changed":13},{"name":"docs/parsers/route.md","lines_changed":13},{"name":"docs/parsers/uname.md","lines_changed":13},{"name":"docs/parsers/uptime.md","lines_changed":13},{"name":"docs/parsers/w.md","lines_changed":13}]},"message":"doc update","epoch":1573586280,"epoch_utc":null},{"commit":"f0c8725d4355113f7690f20bb99078e488084ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:17:33 2019 -0800","stats":{"files_changed":21,"insertions":181,"deletions":81,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":13},{"name":"jc/parsers/dig.py","lines_changed":13},{"name":"jc/parsers/env.py","lines_changed":13},{"name":"jc/parsers/foo.py","lines_changed":13},{"name":"jc/parsers/free.py","lines_changed":13},{"name":"jc/parsers/history.py","lines_changed":13},{"name":"jc/parsers/ifconfig.py","lines_changed":13},{"name":"jc/parsers/iptables.py","lines_changed":13},{"name":"jc/parsers/jobs.py","lines_changed":13},{"name":"jc/parsers/ls.py","lines_changed":13},{"name":"jc/parsers/lsblk.py","lines_changed":13},{"name":"jc/parsers/lsmod.py","lines_changed":13},{"name":"jc/parsers/lsof.py","lines_changed":13},{"name":"jc/parsers/mount.py","lines_changed":13},{"name":"jc/parsers/netstat.py","lines_changed":13},{"name":"jc/parsers/ps.py","lines_changed":13},{"name":"jc/parsers/route.py","lines_changed":13},{"name":"jc/parsers/uname.py","lines_changed":13},{"name":"jc/parsers/uptime.py","lines_changed":13},{"name":"jc/parsers/w.py","lines_changed":13}]},"message":"doc update","epoch":1573586253,"epoch_utc":null},{"commit":"5473bc4eb697d00bd26a038287e1137e438cacb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:12:41 2019 -0800","stats":{"files_changed":2,"insertions":16,"deletions":6,"files":["docs/parsers/arp.md","jc/parsers/arp.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":11},{"name":"jc/parsers/arp.py","lines_changed":11}]},"message":"doc update","epoch":1573585961,"epoch_utc":null},{"commit":"b9bd9422bfa46144416fa65add2e041d4124357b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:19:01 2019 -0800","stats":{"files_changed":2,"insertions":380,"deletions":46,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":213},{"name":"jc/parsers/dig.py","lines_changed":213}]},"message":"doc update","epoch":1573571941,"epoch_utc":null},{"commit":"cb5729a070925a7fa29f762bd4b074532f5cba55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:18:27 2019 -0800","stats":{"files_changed":1,"insertions":62,"deletions":44,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":106}]},"message":"add options to docs","epoch":1573571907,"epoch_utc":null},{"commit":"f0b1ab42337746afd37365abdf44729d530d5410","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:08:35 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":1},{"name":"jc/utils.py","lines_changed":1}]},"message":"doc update","epoch":1573571315,"epoch_utc":null},{"commit":"b15386e849b9fea347e7b17307eedf779d8022fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:07:43 2019 -0800","stats":{"files_changed":2,"insertions":11,"deletions":5,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":7},{"name":"jc/utils.py","lines_changed":9}]},"message":"doc update","epoch":1573571263,"epoch_utc":null},{"commit":"d2a2c8da35ee44e9a7572885609548eb809bcdda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:03:02 2019 -0800","stats":{"files_changed":3,"insertions":1,"deletions":5,"files":["docs/parsers/iptables.md","docs/parsers/mount.md","docs/parsers/uname.md"],"file_stats":[{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2}]},"message":"doc updates","epoch":1573570982,"epoch_utc":null},{"commit":"7251548cbb09beae6971385a56036e9649bd9b2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:01:36 2019 -0800","stats":{"files_changed":3,"insertions":3,"deletions":5,"files":["jc/parsers/iptables.py","jc/parsers/mount.py","jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":3},{"name":"jc/parsers/uname.py","lines_changed":3}]},"message":"documentation updates","epoch":1573570896,"epoch_utc":null},{"commit":"146e29f7cbc0f396be67dbd7ae971a4ef4dafb7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 18:30:46 2019 -0800","stats":{"files_changed":47,"insertions":5386,"deletions":2249,"files":["docgen.sh","docs/cli.md","docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/readme.md","docs/utils.md","jc/__init__.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/utils.py"],"file_stats":[{"name":"docgen.sh","lines_changed":27},{"name":"docs/cli.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":110},{"name":"docs/parsers/df.md","lines_changed":97},{"name":"docs/parsers/dig.md","lines_changed":212},{"name":"docs/parsers/env.md","lines_changed":72},{"name":"docs/parsers/free.md","lines_changed":77},{"name":"docs/parsers/history.md","lines_changed":64},{"name":"docs/parsers/ifconfig.md","lines_changed":170},{"name":"docs/parsers/iptables.md","lines_changed":168},{"name":"docs/parsers/jobs.md","lines_changed":98},{"name":"docs/parsers/ls.md","lines_changed":168},{"name":"docs/parsers/lsblk.md","lines_changed":273},{"name":"docs/parsers/lsmod.md","lines_changed":130},{"name":"docs/parsers/lsof.md","lines_changed":124},{"name":"docs/parsers/mount.md","lines_changed":82},{"name":"docs/parsers/netstat.md","lines_changed":352},{"name":"docs/parsers/ps.md","lines_changed":223},{"name":"docs/parsers/route.md","lines_changed":129},{"name":"docs/parsers/uname.md","lines_changed":55},{"name":"docs/parsers/uptime.md","lines_changed":56},{"name":"docs/parsers/w.md","lines_changed":108},{"name":"docs/readme.md","lines_changed":79},{"name":"docs/utils.md","lines_changed":22},{"name":"jc/__init__.py","lines_changed":135},{"name":"jc/parsers/arp.py","lines_changed":176},{"name":"jc/parsers/df.py","lines_changed":129},{"name":"jc/parsers/dig.py","lines_changed":362},{"name":"jc/parsers/env.py","lines_changed":101},{"name":"jc/parsers/foo.py","lines_changed":37},{"name":"jc/parsers/free.py","lines_changed":111},{"name":"jc/parsers/history.py","lines_changed":85},{"name":"jc/parsers/ifconfig.py","lines_changed":294},{"name":"jc/parsers/iptables.py","lines_changed":271},{"name":"jc/parsers/jobs.py","lines_changed":150},{"name":"jc/parsers/ls.py","lines_changed":280},{"name":"jc/parsers/lsblk.py","lines_changed":499},{"name":"jc/parsers/lsmod.py","lines_changed":211},{"name":"jc/parsers/lsof.py","lines_changed":205},{"name":"jc/parsers/mount.py","lines_changed":115},{"name":"jc/parsers/netstat.py","lines_changed":661},{"name":"jc/parsers/ps.py","lines_changed":389},{"name":"jc/parsers/route.py","lines_changed":213},{"name":"jc/parsers/uname.py","lines_changed":57},{"name":"jc/parsers/uptime.py","lines_changed":69},{"name":"jc/parsers/w.py","lines_changed":173},{"name":"jc/utils.py","lines_changed":11}]},"message":"update docs","epoch":1573525846,"epoch_utc":null},{"commit":"363fd3eab409351121dab8a11c6b565829ccd84a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 16:27:28 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"move parser_name to except block","epoch":1573518448,"epoch_utc":null},{"commit":"4083dd4260ff3a8bb6649e1661cf3e058fdbad59","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 16:16:41 2019 -0800","stats":{"files_changed":2,"insertions":24,"deletions":5,"files":["changelog.txt","jc/cli.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/cli.py","lines_changed":28}]},"message":"add -d option","epoch":1573517801,"epoch_utc":null},{"commit":"b2b74547baaf33058d74fc08cb665777b19bd05a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 15:53:42 2019 -0800","stats":{"files_changed":6,"insertions":317,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-sudo-aeep.json","tests/fixtures/centos-7.7/netstat-sudo-aeep.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.json","tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.out","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/netstat-sudo-aeep.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-sudo-aeep.out","lines_changed":164},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.out","lines_changed":126},{"name":"tests/test_netstat.py","lines_changed":24}]},"message":"add netstat-sudo-aeep tests","epoch":1573516422,"epoch_utc":null},{"commit":"dddb0baabf8a78261ac80380b97e7c92c7ce4d89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 15:53:22 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":8}]},"message":"use \\u2063 instead of \\u2026","epoch":1573516402,"epoch_utc":null},{"commit":"84b4f67ef9d4bb0db201a095d74400a56394589d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 14:34:36 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["tests/fixtures/centos-7.7/ps-axu.json","tests/fixtures/ubuntu-18.04/ps-axu.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ps-axu.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ps-axu.json","lines_changed":2}]},"message":"new json output","epoch":1573511676,"epoch_utc":null},{"commit":"3a089138b8c269ba3c5f7aec87ae3f8ec368c3ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 14:31:27 2019 -0800","stats":{"files_changed":1,"insertions":129,"deletions":9,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":138}]},"message":"add int and float changes","epoch":1573511487,"epoch_utc":null},{"commit":"3ff0305c8e62ce3b5a8f3f9174c5a9da3bc22766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 13:00:17 2019 -0800","stats":{"files_changed":8,"insertions":54,"deletions":2,"files":["tests/fixtures/centos-7.7/lsblk-allcols.json","tests/fixtures/centos-7.7/lsblk-allcols.out","tests/fixtures/centos-7.7/lsblk.json","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/lsblk-allcols.json","tests/fixtures/ubuntu-18.04/lsblk-allcols.out","tests/fixtures/ubuntu-18.04/lsblk.json","tests/test_lsblk.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/lsblk-allcols.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsblk-allcols.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/lsblk.json","lines_changed":2},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsblk-allcols.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsblk-allcols.out","lines_changed":18},{"name":"tests/fixtures/ubuntu-18.04/lsblk.json","lines_changed":2},{"name":"tests/test_lsblk.py","lines_changed":24}]},"message":"add lsblk tests","epoch":1573506017,"epoch_utc":null},{"commit":"761edc3c6cfc215fe45c65ee2bb5462cb460b6a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 12:43:27 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":6,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":7}]},"message":"remove unused parse_pairs function","epoch":1573505007,"epoch_utc":null},{"commit":"3351c81f647ac97a5038cc0c14adb31e55832a77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 12:40:16 2019 -0800","stats":{"files_changed":1,"insertions":200,"deletions":2,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":202}]},"message":"add documentation","epoch":1573504816,"epoch_utc":null},{"commit":"3dfc6f67d770c59804bdeb371d5c78e3f3668f9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 12:00:23 2019 -0800","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":6}]},"message":"change empty values to Null","epoch":1573502423,"epoch_utc":null},{"commit":"1546ec3bd139ef687282f60786388b5207541c98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 11:53:16 2019 -0800","stats":{"files_changed":1,"insertions":17,"deletions":13,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":30}]},"message":"fixes for right justified columns","epoch":1573501996,"epoch_utc":null},{"commit":"2a953011f72e922c89b9af6dfebd1983da7c338d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 10 15:18:53 2019 -0800","stats":{"files_changed":2,"insertions":50,"deletions":155,"files":["changelog.txt","jc/parsers/lsblk.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":203}]},"message":"rewrite of lsblk parser to use a custom delimiter","epoch":1573427933,"epoch_utc":null},{"commit":"d2f755de9d2be7b0af5f010042e1f4ca589c5464","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 17:08:41 2019 -0800","stats":{"files_changed":14,"insertions":250,"deletions":566,"files":["tests/test_ifconfig.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_ls.py","tests/test_lsblk.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_ps.py","tests/test_route.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py"],"file_stats":[{"name":"tests/test_ifconfig.py","lines_changed":59},{"name":"tests/test_iptables.py","lines_changed":249},{"name":"tests/test_jobs.py","lines_changed":19},{"name":"tests/test_ls.py","lines_changed":58},{"name":"tests/test_lsblk.py","lines_changed":25},{"name":"tests/test_lsmod.py","lines_changed":22},{"name":"tests/test_lsof.py","lines_changed":59},{"name":"tests/test_mount.py","lines_changed":30},{"name":"tests/test_netstat.py","lines_changed":110},{"name":"tests/test_ps.py","lines_changed":57},{"name":"tests/test_route.py","lines_changed":51},{"name":"tests/test_uname.py","lines_changed":27},{"name":"tests/test_uptime.py","lines_changed":23},{"name":"tests/test_w.py","lines_changed":27}]},"message":"updates tests","epoch":1573261721,"epoch_utc":null},{"commit":"f363334639c5fa3a43889794ea52409056a2d886","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 16:21:09 2019 -0800","stats":{"files_changed":5,"insertions":87,"deletions":219,"files":["tests/test_df.py","tests/test_dig.py","tests/test_env.py","tests/test_free.py","tests/test_history.py"],"file_stats":[{"name":"tests/test_df.py","lines_changed":43},{"name":"tests/test_dig.py","lines_changed":196},{"name":"tests/test_env.py","lines_changed":13},{"name":"tests/test_free.py","lines_changed":41},{"name":"tests/test_history.py","lines_changed":13}]},"message":"update tests","epoch":1573258869,"epoch_utc":null},{"commit":"750197e48596ad96804477053d3ff3c8063ea68a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 16:04:19 2019 -0800","stats":{"files_changed":1,"insertions":27,"deletions":70,"files":["tests/test_arp.py"],"file_stats":[{"name":"tests/test_arp.py","lines_changed":97}]},"message":"new tests","epoch":1573257859,"epoch_utc":null},{"commit":"36b349e4ed39fe611c7d87a47c378cc4d4627ad2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 16:03:41 2019 -0800","stats":{"files_changed":76,"insertions":76,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-a.json","tests/fixtures/centos-7.7/arp-v.json","tests/fixtures/centos-7.7/arp.json","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/df.json","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/centos-7.7/env.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/centos-7.7/free.json","tests/fixtures/centos-7.7/history.json","tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/centos-7.7/iptables-filter-nv.json","tests/fixtures/centos-7.7/iptables-filter.json","tests/fixtures/centos-7.7/iptables-mangle.json","tests/fixtures/centos-7.7/iptables-nat.json","tests/fixtures/centos-7.7/iptables-raw.json","tests/fixtures/centos-7.7/jobs.json","tests/fixtures/centos-7.7/ls-al.json","tests/fixtures/centos-7.7/ls-alh.json","tests/fixtures/centos-7.7/ls.json","tests/fixtures/centos-7.7/lsblk.json","tests/fixtures/centos-7.7/lsmod.json","tests/fixtures/centos-7.7/lsof-sudo.json","tests/fixtures/centos-7.7/lsof.json","tests/fixtures/centos-7.7/mount.json","tests/fixtures/centos-7.7/netstat-l.json","tests/fixtures/centos-7.7/netstat-p.json","tests/fixtures/centos-7.7/netstat-sudo-lnp.json","tests/fixtures/centos-7.7/netstat.json","tests/fixtures/centos-7.7/ps-axu.json","tests/fixtures/centos-7.7/ps-ef.json","tests/fixtures/centos-7.7/route-vn.json","tests/fixtures/centos-7.7/route.json","tests/fixtures/centos-7.7/uname-a.json","tests/fixtures/centos-7.7/uptime.json","tests/fixtures/centos-7.7/w.json","tests/fixtures/ubuntu-18.04/arp-a.json","tests/fixtures/ubuntu-18.04/arp-v.json","tests/fixtures/ubuntu-18.04/arp.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/df.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json","tests/fixtures/ubuntu-18.04/env.json","tests/fixtures/ubuntu-18.04/free-h.json","tests/fixtures/ubuntu-18.04/free.json","tests/fixtures/ubuntu-18.04/history.json","tests/fixtures/ubuntu-18.04/ifconfig.json","tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","tests/fixtures/ubuntu-18.04/iptables-filter.json","tests/fixtures/ubuntu-18.04/iptables-mangle.json","tests/fixtures/ubuntu-18.04/iptables-nat.json","tests/fixtures/ubuntu-18.04/iptables-raw.json","tests/fixtures/ubuntu-18.04/jobs.json","tests/fixtures/ubuntu-18.04/ls-al.json","tests/fixtures/ubuntu-18.04/ls-alh.json","tests/fixtures/ubuntu-18.04/ls.json","tests/fixtures/ubuntu-18.04/lsblk.json","tests/fixtures/ubuntu-18.04/lsmod.json","tests/fixtures/ubuntu-18.04/lsof-sudo.json","tests/fixtures/ubuntu-18.04/lsof.json","tests/fixtures/ubuntu-18.04/mount.json","tests/fixtures/ubuntu-18.04/netstat-l.json","tests/fixtures/ubuntu-18.04/netstat-p.json","tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.json","tests/fixtures/ubuntu-18.04/netstat.json","tests/fixtures/ubuntu-18.04/ps-axu.json","tests/fixtures/ubuntu-18.04/ps-ef.json","tests/fixtures/ubuntu-18.04/route-vn.json","tests/fixtures/ubuntu-18.04/route.json","tests/fixtures/ubuntu-18.04/uname-a.json","tests/fixtures/ubuntu-18.04/uptime.json","tests/fixtures/ubuntu-18.04/w.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/arp-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/arp-v.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/arp.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/df-h.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/df.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/dig-aaaa.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/dig-x.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/dig.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/env.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/free-h.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/free.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/history.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ifconfig.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-filter-nv.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-filter.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-mangle.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-nat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-raw.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/jobs.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-al.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-alh.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsblk.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsmod.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsof-sudo.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsof.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mount.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-l.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-sudo-lnp.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ps-axu.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ps-ef.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/route-vn.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/route.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/uname-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/uptime.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/w.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/arp-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/arp-v.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/arp.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/df-h.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/df.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dig-aaaa.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dig-x.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dig.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/env.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/free-h.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/free.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/history.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ifconfig.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-mangle.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-nat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-raw.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/jobs.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-al.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-alh.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsblk.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsmod.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsof-sudo.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsof.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/mount.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-l.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ps-axu.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ps-ef.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/route-vn.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/route.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/uname-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/uptime.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/w.json","lines_changed":1}]},"message":"json output files","epoch":1573257821,"epoch_utc":null},{"commit":"b5f1e94fe2859c4fbcf126f8f8fb20d71a9b6433","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 16:03:14 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":1}]},"message":"fix for space before '-' in program_name","epoch":1573257794,"epoch_utc":null},{"commit":"6a504fb0e10b1ef551ed9fe780926fe5ca02d267","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 16:02:44 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2}]},"message":"add exception type","epoch":1573257764,"epoch_utc":null},{"commit":"e02bad2240bacbc31097d931a902a34217d559db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 12:22:41 2019 -0800","stats":{"files_changed":1,"insertions":123,"deletions":175,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":298}]},"message":"update documentation","epoch":1573244561,"epoch_utc":null},{"commit":"1d4043a3b64c38a20a0db065c3bdc3c6a2d068bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 12:14:09 2019 -0800","stats":{"files_changed":1,"insertions":52,"deletions":0,"files":["jc/parsers/foo.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":52}]},"message":"add template parser","epoch":1573244049,"epoch_utc":null},{"commit":"039e034829789ca314a00abd4f1d9ad06f1a6eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 11:47:58 2019 -0800","stats":{"files_changed":1,"insertions":19,"deletions":6,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":25}]},"message":"fix parsing issues in program_name when spaces are in the name","epoch":1573242478,"epoch_utc":null},{"commit":"d828de4f4f2f4c3d582fddee79830d12511c3299","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 09:07:05 2019 -0800","stats":{"files_changed":1,"insertions":53,"deletions":9,"files":["jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/w.py","lines_changed":62}]},"message":"update documentation","epoch":1573232825,"epoch_utc":null},{"commit":"098000bb10a3f5ed33d285c6ba4f0dfb9a013fdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 09:04:03 2019 -0800","stats":{"files_changed":2,"insertions":24,"deletions":9,"files":["changelog.txt","jc/parsers/w.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/w.py","lines_changed":32}]},"message":"fix blank 'from' column issue","epoch":1573232643,"epoch_utc":null},{"commit":"b41165eff5cd7371e852cd33e084a919524ead9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 19:13:15 2019 -0800","stats":{"files_changed":1,"insertions":31,"deletions":1,"files":["jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/w.py","lines_changed":32}]},"message":"process w data","epoch":1573182795,"epoch_utc":null},{"commit":"6ad7891b2b34fae1a366568e4eba86e886a6dd84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 18:54:52 2019 -0800","stats":{"files_changed":1,"insertions":59,"deletions":14,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":73}]},"message":"process uptime data","epoch":1573181692,"epoch_utc":null},{"commit":"72138315598cd405bc0508b554108bf3f730dcb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 18:47:01 2019 -0800","stats":{"files_changed":1,"insertions":31,"deletions":10,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":41}]},"message":"add process boilerplate","epoch":1573181221,"epoch_utc":null},{"commit":"10eedd82e4c4678fbf989fe599d7ca75deced5a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 18:34:06 2019 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]},"message":"changelog update","epoch":1573180446,"epoch_utc":null},{"commit":"a55493da0f1457a46f29511e0835adfa9d748f7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 18:33:51 2019 -0800","stats":{"files_changed":1,"insertions":93,"deletions":6,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":99}]},"message":"process route data","epoch":1573180431,"epoch_utc":null},{"commit":"89973f4162317693b0d094a64115ee87d8479d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 15:33:12 2019 -0800","stats":{"files_changed":1,"insertions":45,"deletions":27,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":72}]},"message":"doc updates and tty fix","epoch":1573169592,"epoch_utc":null},{"commit":"4802222ad50d55372f2b883d83a61181086b0619","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 15:24:03 2019 -0800","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":11}]},"message":"process ps data","epoch":1573169043,"epoch_utc":null},{"commit":"bcd28f06f87a4260d1787399d723817afd6aee90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 15:09:57 2019 -0800","stats":{"files_changed":1,"insertions":23,"deletions":1,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":24}]},"message":"prep ps for process","epoch":1573168197,"epoch_utc":null},{"commit":"e17a47a7fa7f4c1bb4c4b55fb004963fc1b61434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 14:51:05 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":2}]},"message":"fix typo","epoch":1573167065,"epoch_utc":null},{"commit":"cad2e16c7aa54a70f476bf4268ff8e5985cff468","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 14:49:21 2019 -0800","stats":{"files_changed":1,"insertions":353,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":354}]},"message":"document examples","epoch":1573166961,"epoch_utc":null},{"commit":"5da5d278dac77bd4aa21819194e7f9e178bd1887","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 14:43:42 2019 -0800","stats":{"files_changed":1,"insertions":23,"deletions":0,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":23}]},"message":"process netstat data","epoch":1573166622,"epoch_utc":null},{"commit":"81b6776e57c113cbfb8346d1cfd83532a440c257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 13:58:55 2019 -0800","stats":{"files_changed":1,"insertions":0,"deletions":177,"files":["jc/parsers/netstat.py.old"],"file_stats":[{"name":"jc/parsers/netstat.py.old","lines_changed":177}]},"message":"remove old netstat parser","epoch":1573163935,"epoch_utc":null},{"commit":"5ecb6bd58b4ed91f63e4a0b5939378bd9925b7b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 13:58:37 2019 -0800","stats":{"files_changed":2,"insertions":4,"deletions":3,"files":["changelog.txt","jc/parsers/netstat.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":3}]},"message":"doc updates","epoch":1573163917,"epoch_utc":null},{"commit":"21b56096c57cfcf5c55fdf5f9bab88b6d5c7dd73","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 13:53:23 2019 -0800","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":37}]},"message":"finalize parse_post","epoch":1573163603,"epoch_utc":null},{"commit":"8c78f959731a25a05ee6361a14853c92f8fce69b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 12:13:25 2019 -0800","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":8}]},"message":"clean up trailing spaces on entries","epoch":1573157605,"epoch_utc":null},{"commit":"94a88bb5669d9a9a5dff085a4c4111bdd39df8f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 10:52:02 2019 -0800","stats":{"files_changed":1,"insertions":35,"deletions":17,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":52}]},"message":"post_parse flags and program_name","epoch":1573152722,"epoch_utc":null},{"commit":"579124475b0b517b36ddbe5bdb13be14807dea1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 09:02:27 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"simplify parser_map code","epoch":1573146147,"epoch_utc":null},{"commit":"5da83e020015eb5559d216bc3f39b3854e76adf3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:23:11 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"fix found variable error","epoch":1573143791,"epoch_utc":null},{"commit":"a90a76d004b923edece07a52a3aa400a9ef4b005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:15:19 2019 -0800","stats":{"files_changed":2,"insertions":177,"deletions":140,"files":["jc/parsers/netstat.py.old","jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/netstat.py.old","lines_changed":177},{"name":"jc/parsers/netstat2.py","lines_changed":140}]},"message":"move out old netstat parser","epoch":1573143319,"epoch_utc":null},{"commit":"bdfa95912398b2630fcb13e866f4013747fd0975","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:07:43 2019 -0800","stats":{"files_changed":20,"insertions":209,"deletions":212,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":10},{"name":"jc/parsers/env.py","lines_changed":10},{"name":"jc/parsers/free.py","lines_changed":10},{"name":"jc/parsers/history.py","lines_changed":8},{"name":"jc/parsers/ifconfig.py","lines_changed":10},{"name":"jc/parsers/iptables.py","lines_changed":10},{"name":"jc/parsers/jobs.py","lines_changed":10},{"name":"jc/parsers/ls.py","lines_changed":10},{"name":"jc/parsers/lsblk.py","lines_changed":10},{"name":"jc/parsers/lsmod.py","lines_changed":10},{"name":"jc/parsers/lsof.py","lines_changed":10},{"name":"jc/parsers/mount.py","lines_changed":10},{"name":"jc/parsers/netstat.py","lines_changed":245},{"name":"jc/parsers/ps.py","lines_changed":10},{"name":"jc/parsers/route.py","lines_changed":10},{"name":"jc/parsers/uname.py","lines_changed":10},{"name":"jc/parsers/uptime.py","lines_changed":10},{"name":"jc/parsers/w.py","lines_changed":10}]},"message":"fix compatibility code","epoch":1573142863,"epoch_utc":null},{"commit":"4380594275bc863e81839a6a7b032a6ff0cbb9b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:04:32 2019 -0800","stats":{"files_changed":1,"insertions":8,"deletions":46,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":54}]},"message":"remove cli functions from utils","epoch":1573142672,"epoch_utc":null},{"commit":"88bf252c0df3c583640286880d7992e4399e23f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:04:07 2019 -0800","stats":{"files_changed":2,"insertions":139,"deletions":128,"files":["jc/cli.py","jc/jc.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":139},{"name":"jc/jc.py","lines_changed":128}]},"message":"rename jc.py to cli.py","epoch":1573142647,"epoch_utc":null},{"commit":"a5efd8adce77fca7e3343f8f518c7bad578fdb4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:03:45 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"rename jc.py to cli.py","epoch":1573142625,"epoch_utc":null},{"commit":"2ee392eefffde77ebdf83f5e4e0c43cf8c1a7d6e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 21:09:09 2019 -0800","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/netstat2.py","lines_changed":10}]},"message":"add quiet mode","epoch":1573103349,"epoch_utc":null},{"commit":"9c1d893e16ea17b16bec5fd0ec8839c4fe6f0590","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 21:07:25 2019 -0800","stats":{"files_changed":4,"insertions":102,"deletions":90,"files":["jc/jc.py","jc/parsers/arp.py","jc/parsers/df.py","jc/utils.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":107},{"name":"jc/parsers/arp.py","lines_changed":10},{"name":"jc/parsers/df.py","lines_changed":10},{"name":"jc/utils.py","lines_changed":65}]},"message":"move utils to own module and add quiet mode","epoch":1573103245,"epoch_utc":null},{"commit":"88dcb90c83b757285661c72429c5b60bb1ead94a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 21:05:25 2019 -0800","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":6}]},"message":"changelog update","epoch":1573103125,"epoch_utc":null},{"commit":"a3bcabc89c1f74d067da0046492dbc56e50b1005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 20:35:10 2019 -0800","stats":{"files_changed":1,"insertions":9,"deletions":62,"files":["jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/netstat2.py","lines_changed":71}]},"message":"mvp of netstat raw_data parser","epoch":1573101310,"epoch_utc":null},{"commit":"dafbf9fdcf53a8abbd006baef0be6697f860d2a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 19:17:01 2019 -0800","stats":{"files_changed":4,"insertions":247,"deletions":53,"files":["jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/lsmod.py","lines_changed":85},{"name":"jc/parsers/lsof.py","lines_changed":106},{"name":"jc/parsers/mount.py","lines_changed":31},{"name":"jc/parsers/netstat2.py","lines_changed":78}]},"message":"process lsmod data","epoch":1573096621,"epoch_utc":null},{"commit":"680cb2b2caa82e1e2c3225b3c44cae2ba03ba02c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 09:56:59 2019 -0600","stats":{"files_changed":1,"insertions":76,"deletions":7,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":83}]},"message":"doc update","epoch":1573063019,"epoch_utc":null},{"commit":"54818a06e0e0b981810f6aec45c308da81a9e2ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 09:21:55 2019 -0600","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":8}]},"message":"change bool variable names","epoch":1573060915,"epoch_utc":null},{"commit":"88f4c5b5a93da3938b84f97abfc54539ee19ac48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 08:47:54 2019 -0600","stats":{"files_changed":6,"insertions":10,"deletions":10,"files":["jc/parsers/dig.py","jc/parsers/free.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":8},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":4},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"remove TypeError from exception check","epoch":1573058874,"epoch_utc":null},{"commit":"2bb7409887e8b7659613189daf58d02cb26bd6ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 23:10:49 2019 -0600","stats":{"files_changed":2,"insertions":36,"deletions":11,"files":["jc/parsers/df.py","jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/lsblk.py","lines_changed":42}]},"message":"process lsblk data","epoch":1573024249,"epoch_utc":null},{"commit":"c780aac3aba02cc042c6a3c984af198069956370","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 22:42:48 2019 -0600","stats":{"files_changed":22,"insertions":91,"deletions":5,"files":["jc/jc.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat2.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":8},{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/df.py","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":5},{"name":"jc/parsers/env.py","lines_changed":5},{"name":"jc/parsers/free.py","lines_changed":4},{"name":"jc/parsers/history.py","lines_changed":5},{"name":"jc/parsers/ifconfig.py","lines_changed":5},{"name":"jc/parsers/iptables.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"jc/parsers/lsblk.py","lines_changed":1},{"name":"jc/parsers/lsmod.py","lines_changed":4},{"name":"jc/parsers/lsof.py","lines_changed":5},{"name":"jc/parsers/mount.py","lines_changed":5},{"name":"jc/parsers/netstat.py","lines_changed":5},{"name":"jc/parsers/netstat2.py","lines_changed":5},{"name":"jc/parsers/ps.py","lines_changed":4},{"name":"jc/parsers/route.py","lines_changed":4},{"name":"jc/parsers/uname.py","lines_changed":5},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/w.py","lines_changed":4}]},"message":"add compatibility function","epoch":1573022568,"epoch_utc":null},{"commit":"5010aaec285e26ae9dbfdb3fcdc38a3bd36cd236","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:25:20 2019 -0600","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":2}]},"message":"put exit() back","epoch":1573003520,"epoch_utc":null},{"commit":"066e93cb075021ac94a0e2e6a36a34bc173ee6c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:23:46 2019 -0600","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":2}]},"message":"move exit() to errormessage()","epoch":1573003426,"epoch_utc":null},{"commit":"0bd2faa7f71a128babc68afea053159ccb91b702","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:17:07 2019 -0600","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":3}]},"message":"beautify compatibility list","epoch":1573003027,"epoch_utc":null},{"commit":"e2f926453ba386736204e358f8306dfc731b5005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:08:41 2019 -0600","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["install.sh"],"file_stats":[{"name":"install.sh","lines_changed":2}]},"message":"add install script","epoch":1573002521,"epoch_utc":null},{"commit":"b953b79f9c46d8c5398a6c1c2769167b5aed2805","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:04:18 2019 -0600","stats":{"files_changed":3,"insertions":11,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4}]},"message":"add compatibility","epoch":1573002258,"epoch_utc":null},{"commit":"7f9967780692bec2fcbe992eee0c392ab92efb7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:00:36 2019 -0600","stats":{"files_changed":2,"insertions":19,"deletions":1,"files":["jc/jc.py","jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":16},{"name":"jc/parsers/lsblk.py","lines_changed":4}]},"message":"compatibility function call","epoch":1573002036,"epoch_utc":null},{"commit":"721b54665924ad1657ee83cd5fca601e03700962","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 15:14:52 2019 -0600","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":8}]},"message":"finish schema","epoch":1572995692,"epoch_utc":null},{"commit":"2de5e41269421c73e07d4abd6ca99b38be736261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 15:07:40 2019 -0600","stats":{"files_changed":1,"insertions":95,"deletions":12,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":107}]},"message":"fix for more columns and build schema","epoch":1572995260,"epoch_utc":null},{"commit":"dfe0f6e99b6174734661fc43d9ad4b1d0dfd96e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 08:30:32 2019 -0800","stats":{"files_changed":1,"insertions":75,"deletions":9,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":84}]},"message":"process ls data","epoch":1572971432,"epoch_utc":null},{"commit":"8873b1bc697c8f9409fa676c88b5ebe109dc8717","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 08:07:39 2019 -0800","stats":{"files_changed":1,"insertions":24,"deletions":46,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":70}]},"message":"clean up process code","epoch":1572970059,"epoch_utc":null},{"commit":"9ff94707004fefed475603436fc0a7ffb19e6fee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 07:21:58 2019 -0800","stats":{"files_changed":1,"insertions":9,"deletions":4,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":13}]},"message":"refactor helptext() function","epoch":1572967318,"epoch_utc":null},{"commit":"2c58fca53044892e15ceb5e8bcae1afb09fa3269","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 17:07:11 2019 -0800","stats":{"files_changed":1,"insertions":62,"deletions":4,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":66}]},"message":"process jobs data","epoch":1572916031,"epoch_utc":null},{"commit":"9e5cd90da7d92bbadbc0d25071d087a3dbd90a5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 16:59:14 2019 -0800","stats":{"files_changed":1,"insertions":131,"deletions":261,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":392}]},"message":"process iptables data","epoch":1572915554,"epoch_utc":null},{"commit":"7ee0d49424bba5274975d6c33e0721977660692f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 15:54:34 2019 -0800","stats":{"files_changed":1,"insertions":107,"deletions":28,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":135}]},"message":"process ifconfig data","epoch":1572911674,"epoch_utc":null},{"commit":"a9058ee21e87454aa423112239c4f4df7daca8c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 15:19:50 2019 -0800","stats":{"files_changed":3,"insertions":4,"deletions":1,"files":["jc/parsers/arp.py","jc/parsers/dig.py","jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/dig.py","lines_changed":1},{"name":"jc/parsers/free.py","lines_changed":1}]},"message":"doc formatting","epoch":1572909590,"epoch_utc":null},{"commit":"fcf0aac87dccac2ce28e6f55e66e2f0b8f6fbd36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 15:19:35 2019 -0800","stats":{"files_changed":1,"insertions":54,"deletions":10,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":64}]},"message":"add history processing","epoch":1572909575,"epoch_utc":null},{"commit":"daec5f068103aae547509ddacc2be56c84f39f17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 15:11:18 2019 -0800","stats":{"files_changed":1,"insertions":55,"deletions":6,"files":["jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/free.py","lines_changed":61}]},"message":"process free data","epoch":1572909078,"epoch_utc":null},{"commit":"5b2491d5ae72705758944e247fbca83367c0365f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 15:03:16 2019 -0800","stats":{"files_changed":1,"insertions":54,"deletions":5,"files":["jc/parsers/env.py"],"file_stats":[{"name":"jc/parsers/env.py","lines_changed":59}]},"message":"process env data","epoch":1572908596,"epoch_utc":null},{"commit":"d9b41ac73b234f5bf7ff3abfee198092424a1bbd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 13:52:45 2019 -0800","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":4}]},"message":"doc formatting","epoch":1572904365,"epoch_utc":null},{"commit":"7168ffddf8a8dfcdd5bcabd8bf943d6417de407d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 13:47:27 2019 -0800","stats":{"files_changed":1,"insertions":87,"deletions":5,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":92}]},"message":"process dig output","epoch":1572904047,"epoch_utc":null},{"commit":"a855344bec9f60d852de326953436ec76f25cffb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 13:05:56 2019 -0800","stats":{"files_changed":1,"insertions":13,"deletions":0,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":13}]},"message":"document schema","epoch":1572901556,"epoch_utc":null},{"commit":"d8b3b59fae924494fbcdfbdf6ad790f5234b0c69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 13:02:54 2019 -0800","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":16}]},"message":"add schema and rename 'avail' to 'available'","epoch":1572901374,"epoch_utc":null},{"commit":"4b7d7840d37be47c1c98c38a6d712e7090e5b68c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 12:50:37 2019 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"changelog.txt","lines_changed":2}]},"message":"add -r option","epoch":1572900637,"epoch_utc":null},{"commit":"58a094a9b4cab0fcb99581f37a21a450fc3a1aed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 12:40:19 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update","epoch":1572900019,"epoch_utc":null},{"commit":"65adbb4189ac66de3283adb2af93a1251103f057","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 12:40:05 2019 -0800","stats":{"files_changed":1,"insertions":29,"deletions":7,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":36}]},"message":"doc update","epoch":1572900005,"epoch_utc":null},{"commit":"f7350959c9706486a3aed19a999e5ee756a1240c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 12:39:43 2019 -0800","stats":{"files_changed":1,"insertions":47,"deletions":24,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":71}]},"message":"df fix for changing header names when -h used","epoch":1572899983,"epoch_utc":null},{"commit":"8934a7d832b8e1375f0bbdd71031f37ae42f3929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 11:10:58 2019 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["jc/parsers/arp.py","jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":6}]},"message":"fix dictionary iteration","epoch":1572894658,"epoch_utc":null},{"commit":"669a424fd6508db91bf5cfa2607033fac85f442c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 11:02:02 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":4}]},"message":"fix process function","epoch":1572894122,"epoch_utc":null},{"commit":"591a65c2bda26efcdd570a5f147f98a5be0473d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 10:56:33 2019 -0800","stats":{"files_changed":1,"insertions":46,"deletions":2,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":48}]},"message":"process df data","epoch":1572893793,"epoch_utc":null},{"commit":"a78fb890782a64b20c0c1b60afbd915ebdd88535","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 09:32:29 2019 -0800","stats":{"files_changed":1,"insertions":21,"deletions":5,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":26}]},"message":"add raw and processed output","epoch":1572888749,"epoch_utc":null},{"commit":"8979dab2a5371fce3a773004c2309e7483e4cd31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 09:32:09 2019 -0800","stats":{"files_changed":1,"insertions":25,"deletions":20,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":45}]},"message":"add raw mode","epoch":1572888729,"epoch_utc":null},{"commit":"0a891f0adda7f2f3233222a0cb5c1f737913ad6f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 08:09:19 2019 -0800","stats":{"files_changed":2,"insertions":4,"deletions":1,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"setup.py","lines_changed":2}]},"message":"bump python required version","epoch":1572883759,"epoch_utc":null},{"commit":"c220e35b14237c2cfc38aa661413af83ea13e393","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 08:06:50 2019 -0800","stats":{"files_changed":1,"insertions":34,"deletions":33,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":67}]},"message":"cleanup helptext","epoch":1572883610,"epoch_utc":null},{"commit":"f26c5818bd958c18f4ecc22611b9c058f6213a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 07:57:47 2019 -0800","stats":{"files_changed":1,"insertions":36,"deletions":33,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":69}]},"message":"refactor helptext","epoch":1572883067,"epoch_utc":null},{"commit":"e712cd3fc4cec1b3137c73e199b2d89fd42fb3bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 1 22:29:08 2019 -0700","stats":{"files_changed":1,"insertions":138,"deletions":0,"files":["jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/netstat2.py","lines_changed":138}]},"message":"netstat2 skeleton","epoch":1572672548,"epoch_utc":null},{"commit":"0309c9ac67c5f65e0a584fd01e8104ef1990fa7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 1 08:55:52 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"setup cleanup","epoch":1572623752,"epoch_utc":null},{"commit":"9a9eb4120af7696cd3727ac0f0a014663e62b993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 1 08:53:53 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":3}]},"message":"setup updates","epoch":1572623633,"epoch_utc":null},{"commit":"d1927456b02e6c2a6e6395cd6ce873b6565ec37d","merge":"0691cfc a3d9213","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 31 08:06:01 2019 -0700","message":"Merge pull request #6 from kellyjonbrazil/dev\n\nDev v1.1.1","epoch":1572534361,"epoch_utc":null},{"commit":"a3d9213a1e2fd52ba2cbc863d4d01d3ffeebe230","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 31 07:59:03 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add date","epoch":1572533943,"epoch_utc":null},{"commit":"3365c03a1e709835b4bd6bca023afbcb46912982","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 31 07:58:44 2019 -0700","stats":{"files_changed":2,"insertions":361,"deletions":0,"files":["tests/test_arp.py","tests/test_dig.py"],"file_stats":[{"name":"tests/test_arp.py","lines_changed":131},{"name":"tests/test_dig.py","lines_changed":230}]},"message":"add tests","epoch":1572533924,"epoch_utc":null},{"commit":"4f6c87389b313b368d9e833feef55fe6daf7aac9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 31 07:27:31 2019 -0700","stats":{"files_changed":7,"insertions":164,"deletions":1,"files":["tests/fixtures/centos-7.7/dig-aaaa.out","tests/fixtures/centos-7.7/dig-x.out","tests/fixtures/centos-7.7/dig.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/dig-aaaa.out","tests/fixtures/ubuntu-18.04/dig-x.out","tests/fixtures/ubuntu-18.04/dig.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/dig-aaaa.out","lines_changed":20},{"name":"tests/fixtures/centos-7.7/dig-x.out","lines_changed":20},{"name":"tests/fixtures/centos-7.7/dig.out","lines_changed":38},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":6},{"name":"tests/fixtures/ubuntu-18.04/dig-aaaa.out","lines_changed":20},{"name":"tests/fixtures/ubuntu-18.04/dig-x.out","lines_changed":20},{"name":"tests/fixtures/ubuntu-18.04/dig.out","lines_changed":41}]},"message":"add dig test files","epoch":1572532051,"epoch_utc":null},{"commit":"41a2a9adac7d3c29dfa11292f08b0877c69b1a5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 31 07:27:12 2019 -0700","stats":{"files_changed":2,"insertions":147,"deletions":3,"files":["README.md","jc/parsers/dig.py"],"file_stats":[{"name":"README.md","lines_changed":147},{"name":"jc/parsers/dig.py","lines_changed":3}]},"message":"remove unnecessary if statement","epoch":1572532032,"epoch_utc":null},{"commit":"74dae2905b2b0916f0be9fee2a4a343962760ff6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 17:23:35 2019 -0700","stats":{"files_changed":1,"insertions":143,"deletions":30,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":173}]},"message":"dig parser mvp","epoch":1572481415,"epoch_utc":null},{"commit":"d1f64214de00090c3faae0bf544c6c2602ab8c31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 17:18:14 2019 -0700","stats":{"files_changed":1,"insertions":19,"deletions":3,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":22}]},"message":"add authority parsing","epoch":1572481094,"epoch_utc":null},{"commit":"d3e1aa20a815d1d1d6ae82776ae18e3416f0966f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 17:03:35 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":2}]},"message":"fix when line","epoch":1572480215,"epoch_utc":null},{"commit":"72cae9577756c4355211a19f4dd77aaeb6f8e905","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 16:59:56 2019 -0700","stats":{"files_changed":1,"insertions":47,"deletions":9,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":56}]},"message":"dig fixes","epoch":1572479996,"epoch_utc":null},{"commit":"219bc8130f55f23e3be3abbe56104aefc2f84e86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 15:36:13 2019 -0700","stats":{"files_changed":2,"insertions":155,"deletions":0,"files":["jc/jc.py","jc/parsers/dig.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":150}]},"message":"dig parser skeleton","epoch":1572474973,"epoch_utc":null},{"commit":"e8c1a554c040ad8f9c6b518db5fd58e8345d2181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:52:53 2019 -0700","stats":{"files_changed":3,"insertions":7,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-a.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/arp-a.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/arp-a.out","lines_changed":3},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/arp-a.out","lines_changed":3}]},"message":"testfile updates","epoch":1572468773,"epoch_utc":null},{"commit":"087a60bc2adf64bfcedc1f264fef328f993b530c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:52:31 2019 -0700","stats":{"files_changed":2,"insertions":87,"deletions":5,"files":["README.md","jc/parsers/arp.py"],"file_stats":[{"name":"README.md","lines_changed":33},{"name":"jc/parsers/arp.py","lines_changed":59}]},"message":"documentation updates","epoch":1572468751,"epoch_utc":null},{"commit":"9c9823c3b8737b5de08af6278ca74414138e9263","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:29:06 2019 -0700","stats":{"files_changed":5,"insertions":16,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-v.out","tests/fixtures/centos-7.7/arp.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/arp-v.out","tests/fixtures/ubuntu-18.04/arp.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/arp-v.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/arp.out","lines_changed":3},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/arp-v.out","lines_changed":4},{"name":"tests/fixtures/ubuntu-18.04/arp.out","lines_changed":3}]},"message":"add arp testfiles","epoch":1572467346,"epoch_utc":null},{"commit":"cf8d13030bf67261a986c0f80fa20ec0e37a743a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:22:12 2019 -0700","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":21}]},"message":"add arp","epoch":1572466932,"epoch_utc":null},{"commit":"1eff69c187ca410ffaec7909bc2532553be1d80c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:21:05 2019 -0700","stats":{"files_changed":2,"insertions":17,"deletions":1,"files":["changelog.txt","jc/parsers/arp.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/arp.py","lines_changed":17}]},"message":"add documentation","epoch":1572466865,"epoch_utc":null},{"commit":"b10fb77d714b73a10a9bf28b45269b3530e01cee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:12:53 2019 -0700","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":10}]},"message":"fixup arp parser","epoch":1572466373,"epoch_utc":null},{"commit":"87cee8b230a06fa270b2e36afb56f337da814c80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:00:05 2019 -0700","stats":{"files_changed":2,"insertions":28,"deletions":1,"files":["jc/jc.py","jc/parsers/arp.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":7},{"name":"jc/parsers/arp.py","lines_changed":22}]},"message":"add arp parser","epoch":1572465605,"epoch_utc":null},{"commit":"83ab10d6282e26391bbf6bae5d0d29e040b209f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 12:50:05 2019 -0700","stats":{"files_changed":1,"insertions":44,"deletions":34,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":78}]},"message":"documentation update","epoch":1572465005,"epoch_utc":null},{"commit":"d58a6e1d1dc93155255922b65b0af1325439b033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 14:19:04 2019 -0700","stats":{"files_changed":1,"insertions":13,"deletions":15,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":28}]},"message":"readme update","epoch":1572383944,"epoch_utc":null},{"commit":"cb46ca5c2776a13c673a44d3e0fbd0661b32af9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 10:27:42 2019 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"readme update","epoch":1572370062,"epoch_utc":null},{"commit":"5528d979f0b45787d68ab79b962371df9acc527b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 09:16:03 2019 -0700","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":6},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1572365763,"epoch_utc":null},{"commit":"ee94a038a61d60db72046d5bcceec58009decb39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 08:58:52 2019 -0700","stats":{"files_changed":3,"insertions":131,"deletions":0,"files":["tests/test_uname.py","tests/test_uptime.py","tests/test_w.py"],"file_stats":[{"name":"tests/test_uname.py","lines_changed":45},{"name":"tests/test_uptime.py","lines_changed":41},{"name":"tests/test_w.py","lines_changed":45}]},"message":"add tests","epoch":1572364732,"epoch_utc":null},{"commit":"1d658f7a9fc50873f76985b2fb9de92ada9d5547","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 08:45:11 2019 -0700","stats":{"files_changed":3,"insertions":265,"deletions":0,"files":["tests/test_netstat.py","tests/test_ps.py","tests/test_route.py"],"file_stats":[{"name":"tests/test_netstat.py","lines_changed":105},{"name":"tests/test_ps.py","lines_changed":83},{"name":"tests/test_route.py","lines_changed":77}]},"message":"add tests","epoch":1572363911,"epoch_utc":null},{"commit":"392cb44f9b19829a5ceba055e24c7af4d8ac5b3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 07:55:26 2019 -0700","stats":{"files_changed":80,"insertions":12667,"deletions":0,"files":["runtests.sh","tests/__init__.py","tests/fixtures/centos-7.7/df-h.out","tests/fixtures/centos-7.7/df.out","tests/fixtures/centos-7.7/env.out","tests/fixtures/centos-7.7/free-h.out","tests/fixtures/centos-7.7/free.out","tests/fixtures/centos-7.7/history.out","tests/fixtures/centos-7.7/ifconfig.out","tests/fixtures/centos-7.7/iptables-filter-nv.out","tests/fixtures/centos-7.7/iptables-filter.out","tests/fixtures/centos-7.7/iptables-mangle.out","tests/fixtures/centos-7.7/iptables-nat.out","tests/fixtures/centos-7.7/iptables-raw.out","tests/fixtures/centos-7.7/jobs.out","tests/fixtures/centos-7.7/ls-al.out","tests/fixtures/centos-7.7/ls-alh.out","tests/fixtures/centos-7.7/ls.out","tests/fixtures/centos-7.7/lsblk.out","tests/fixtures/centos-7.7/lsmod.out","tests/fixtures/centos-7.7/lsof-sudo.out","tests/fixtures/centos-7.7/lsof.out","tests/fixtures/centos-7.7/mount.out","tests/fixtures/centos-7.7/netstat-l.out","tests/fixtures/centos-7.7/netstat-p.out","tests/fixtures/centos-7.7/netstat-sudo-lnp.out","tests/fixtures/centos-7.7/netstat.out","tests/fixtures/centos-7.7/ps-axu.out","tests/fixtures/centos-7.7/ps-ef.out","tests/fixtures/centos-7.7/route-vn.out","tests/fixtures/centos-7.7/route.out","tests/fixtures/centos-7.7/uname-a.out","tests/fixtures/centos-7.7/uptime.out","tests/fixtures/centos-7.7/w.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/df-h.out","tests/fixtures/ubuntu-18.04/df.out","tests/fixtures/ubuntu-18.04/env.out","tests/fixtures/ubuntu-18.04/free-h.out","tests/fixtures/ubuntu-18.04/free.out","tests/fixtures/ubuntu-18.04/history.out","tests/fixtures/ubuntu-18.04/ifconfig.out","tests/fixtures/ubuntu-18.04/iptables-filter-nv.out","tests/fixtures/ubuntu-18.04/iptables-filter.out","tests/fixtures/ubuntu-18.04/iptables-mangle.out","tests/fixtures/ubuntu-18.04/iptables-nat.out","tests/fixtures/ubuntu-18.04/iptables-raw.out","tests/fixtures/ubuntu-18.04/jobs.out","tests/fixtures/ubuntu-18.04/ls-al.out","tests/fixtures/ubuntu-18.04/ls-alh.out","tests/fixtures/ubuntu-18.04/ls.out","tests/fixtures/ubuntu-18.04/lsblk.out","tests/fixtures/ubuntu-18.04/lsmod.out","tests/fixtures/ubuntu-18.04/lsof-sudo.out","tests/fixtures/ubuntu-18.04/lsof.out","tests/fixtures/ubuntu-18.04/mount.out","tests/fixtures/ubuntu-18.04/netstat-l.out","tests/fixtures/ubuntu-18.04/netstat-p.out","tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.out","tests/fixtures/ubuntu-18.04/netstat.out","tests/fixtures/ubuntu-18.04/ps-axu.out","tests/fixtures/ubuntu-18.04/ps-ef.out","tests/fixtures/ubuntu-18.04/route-vn.out","tests/fixtures/ubuntu-18.04/route.out","tests/fixtures/ubuntu-18.04/uname-a.out","tests/fixtures/ubuntu-18.04/uptime.out","tests/fixtures/ubuntu-18.04/w.out","tests/test_df.py","tests/test_env.py","tests/test_free.py","tests/test_history.py","tests/test_ifconfig.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_ls.py","tests/test_lsblk.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py"],"file_stats":[{"name":"runtests.sh","lines_changed":3},{"name":"tests/__init__.py","lines_changed":0},{"name":"tests/fixtures/centos-7.7/df-h.out","lines_changed":8},{"name":"tests/fixtures/centos-7.7/df.out","lines_changed":8},{"name":"tests/fixtures/centos-7.7/env.out","lines_changed":24},{"name":"tests/fixtures/centos-7.7/free-h.out","lines_changed":3},{"name":"tests/fixtures/centos-7.7/free.out","lines_changed":3},{"name":"tests/fixtures/centos-7.7/history.out","lines_changed":1000},{"name":"tests/fixtures/centos-7.7/ifconfig.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/iptables-filter-nv.out","lines_changed":134},{"name":"tests/fixtures/centos-7.7/iptables-filter.out","lines_changed":134},{"name":"tests/fixtures/centos-7.7/iptables-mangle.out","lines_changed":59},{"name":"tests/fixtures/centos-7.7/iptables-nat.out","lines_changed":80},{"name":"tests/fixtures/centos-7.7/iptables-raw.out","lines_changed":38},{"name":"tests/fixtures/centos-7.7/jobs.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/ls-al.out","lines_changed":22},{"name":"tests/fixtures/centos-7.7/ls-alh.out","lines_changed":22},{"name":"tests/fixtures/centos-7.7/ls.out","lines_changed":19},{"name":"tests/fixtures/centos-7.7/lsblk.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/lsmod.out","lines_changed":99},{"name":"tests/fixtures/centos-7.7/lsof-sudo.out","lines_changed":3390},{"name":"tests/fixtures/centos-7.7/lsof.out","lines_changed":639},{"name":"tests/fixtures/centos-7.7/mount.out","lines_changed":31},{"name":"tests/fixtures/centos-7.7/netstat-l.out","lines_changed":45},{"name":"tests/fixtures/centos-7.7/netstat-p.out","lines_changed":121},{"name":"tests/fixtures/centos-7.7/netstat-sudo-lnp.out","lines_changed":45},{"name":"tests/fixtures/centos-7.7/netstat.out","lines_changed":123},{"name":"tests/fixtures/centos-7.7/ps-axu.out","lines_changed":110},{"name":"tests/fixtures/centos-7.7/ps-ef.out","lines_changed":110},{"name":"tests/fixtures/centos-7.7/route-vn.out","lines_changed":5},{"name":"tests/fixtures/centos-7.7/route.out","lines_changed":5},{"name":"tests/fixtures/centos-7.7/uname-a.out","lines_changed":1},{"name":"tests/fixtures/centos-7.7/uptime.out","lines_changed":1},{"name":"tests/fixtures/centos-7.7/w.out","lines_changed":4},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":48},{"name":"tests/fixtures/ubuntu-18.04/df-h.out","lines_changed":19},{"name":"tests/fixtures/ubuntu-18.04/df.out","lines_changed":19},{"name":"tests/fixtures/ubuntu-18.04/env.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-18.04/free-h.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/free.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/history.out","lines_changed":453},{"name":"tests/fixtures/ubuntu-18.04/ifconfig.out","lines_changed":18},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter-nv.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/iptables-mangle.out","lines_changed":14},{"name":"tests/fixtures/ubuntu-18.04/iptables-nat.out","lines_changed":11},{"name":"tests/fixtures/ubuntu-18.04/iptables-raw.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/jobs.out","lines_changed":4},{"name":"tests/fixtures/ubuntu-18.04/ls-al.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/ls-alh.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/ls.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-18.04/lsblk.out","lines_changed":18},{"name":"tests/fixtures/ubuntu-18.04/lsmod.out","lines_changed":102},{"name":"tests/fixtures/ubuntu-18.04/lsof-sudo.out","lines_changed":2854},{"name":"tests/fixtures/ubuntu-18.04/lsof.out","lines_changed":976},{"name":"tests/fixtures/ubuntu-18.04/mount.out","lines_changed":43},{"name":"tests/fixtures/ubuntu-18.04/netstat-l.out","lines_changed":32},{"name":"tests/fixtures/ubuntu-18.04/netstat-p.out","lines_changed":97},{"name":"tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.out","lines_changed":32},{"name":"tests/fixtures/ubuntu-18.04/netstat.out","lines_changed":97},{"name":"tests/fixtures/ubuntu-18.04/ps-axu.out","lines_changed":173},{"name":"tests/fixtures/ubuntu-18.04/ps-ef.out","lines_changed":173},{"name":"tests/fixtures/ubuntu-18.04/route-vn.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/route.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/uname-a.out","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/uptime.out","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/w.out","lines_changed":4},{"name":"tests/test_df.py","lines_changed":69},{"name":"tests/test_env.py","lines_changed":31},{"name":"tests/test_free.py","lines_changed":67},{"name":"tests/test_history.py","lines_changed":31},{"name":"tests/test_ifconfig.py","lines_changed":77},{"name":"tests/test_iptables.py","lines_changed":299},{"name":"tests/test_jobs.py","lines_changed":37},{"name":"tests/test_ls.py","lines_changed":92},{"name":"tests/test_lsblk.py","lines_changed":43},{"name":"tests/test_lsmod.py","lines_changed":40},{"name":"tests/test_lsof.py","lines_changed":85},{"name":"tests/test_mount.py","lines_changed":48},{"name":"tests/test_netstat.py","lines_changed":47}]},"message":"initial add of tests and fixtures","epoch":1572360926,"epoch_utc":null},{"commit":"579bef079cdd7cfa298bc20e052b8eb75b586f5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 07:54:59 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":3}]},"message":"move global output variable inside function","epoch":1572360899,"epoch_utc":null},{"commit":"0691cfcab3f5f91908e06ec906d57e548d4e7a1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 26 18:49:43 2019 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog fix","epoch":1572140983,"epoch_utc":null},{"commit":"db29c7c186601fd4596d3eb121b37100601af907","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 26 18:49:13 2019 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":4}]},"message":"documentation fixes","epoch":1572140953,"epoch_utc":null},{"commit":"fb1e03637514b5ab02fd4c5df1db8b3cbacdd531","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 20:27:03 2019 -0700","stats":{"files_changed":1,"insertions":14,"deletions":10,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":24}]},"message":"formatting","epoch":1572060423,"epoch_utc":null},{"commit":"c3eaf59836538f4ab4c745e87b70115b4a4c5421","merge":"ea0cf0a c9849ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 19:43:24 2019 -0700","message":"Merge pull request #5 from kellyjonbrazil/dev\n\nDev v1.0.1","epoch":1572057804,"epoch_utc":null},{"commit":"c9849ce0db1f864d33739f8f6f942bf5672bc3b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 19:41:35 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"changelog update","epoch":1572057695,"epoch_utc":null},{"commit":"d3c89a3092973a7a8765463fff41c2469ed675cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 19:27:02 2019 -0700","stats":{"files_changed":1,"insertions":11,"deletions":9,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":20}]},"message":"check for enough info to parse","epoch":1572056822,"epoch_utc":null},{"commit":"a3d43f27f7bb0835b3593b7c303fe0ee8d896a58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 18:25:33 2019 -0700","stats":{"files_changed":1,"insertions":12,"deletions":10,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":22}]},"message":"fix odd uptime text parsing","epoch":1572053133,"epoch_utc":null},{"commit":"f4d9c1b699fa30bd297a40ccf3d5f6e7ba3d4253","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 17:16:02 2019 -0700","stats":{"files_changed":1,"insertions":8,"deletions":4,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":12}]},"message":"fix uptime for minutes and hours long uptime","epoch":1572048962,"epoch_utc":null},{"commit":"de647bba4aff84f7b513cf7f6fec8d3933b0d9da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 16:14:32 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"documentation update","epoch":1572045272,"epoch_utc":null},{"commit":"d7913070315e5e0c89006942250aaf37e9e3e18e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 16:12:45 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"documentation update","epoch":1572045165,"epoch_utc":null},{"commit":"1a4fc204e21f1555ae67c3147322c8d73fab630b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 16:09:31 2019 -0700","stats":{"files_changed":2,"insertions":10,"deletions":1,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":10},{"name":"changelog.txt","lines_changed":1}]},"message":"Documentation update","epoch":1572044971,"epoch_utc":null},{"commit":"0328e14c7c65a330093faa52fe48dae6cb173e42","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 16:05:34 2019 -0700","stats":{"files_changed":1,"insertions":7,"deletions":0,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":7}]},"message":"handle ctrl-c gracefully","epoch":1572044734,"epoch_utc":null},{"commit":"1acc4d6c29d136e286f82d607c4a3a59e2680b68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 15:52:53 2019 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":4}]},"message":"fix uptime parsing for short uptimes","epoch":1572043973,"epoch_utc":null},{"commit":"27245590ce28be933f1a55db4ee6b24783f4b63d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 15:40:53 2019 -0700","stats":{"files_changed":1,"insertions":12,"deletions":20,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":32}]},"message":"remove integers","epoch":1572043253,"epoch_utc":null},{"commit":"7ca2a4bdb939293e8d7364f8901ad1fd6d3ee808","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 15:39:48 2019 -0700","stats":{"files_changed":5,"insertions":182,"deletions":201,"files":["README.md","changelog.txt","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":199},{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":95},{"name":"jc/parsers/netstat.py","lines_changed":84}]},"message":"remove integer values","epoch":1572043188,"epoch_utc":null},{"commit":"5f1ec6734874651bee595961edf1fafaf5acf001","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 14:58:15 2019 -0700","stats":{"files_changed":10,"insertions":473,"deletions":456,"files":["README.md","jc/parsers/df.py","jc/parsers/history.py","jc/parsers/iptables.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/w.py"],"file_stats":[{"name":"README.md","lines_changed":453},{"name":"jc/parsers/df.py","lines_changed":52},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":73},{"name":"jc/parsers/lsmod.py","lines_changed":61},{"name":"jc/parsers/lsof.py","lines_changed":113},{"name":"jc/parsers/ps.py","lines_changed":81},{"name":"jc/parsers/route.py","lines_changed":60},{"name":"jc/parsers/w.py","lines_changed":32}]},"message":"lower() headers","epoch":1572040695,"epoch_utc":null},{"commit":"7e44c4278a75c7223d99200023160e8d77fde54d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:55:38 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":2}]},"message":"formatting","epoch":1572026138,"epoch_utc":null},{"commit":"eda726c4a3864008e2f700374b679ae68a965ef8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:55:26 2019 -0700","stats":{"files_changed":1,"insertions":80,"deletions":1,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":81}]},"message":"documentation update","epoch":1572026126,"epoch_utc":null},{"commit":"5f8e70d73054f1a106c0e75eee621bc0cefd1c6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:55:09 2019 -0700","stats":{"files_changed":9,"insertions":20,"deletions":22,"files":["changelog.txt","jc/parsers/df.py","jc/parsers/free.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/w.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":8},{"name":"jc/parsers/lsmod.py","lines_changed":9},{"name":"jc/parsers/lsof.py","lines_changed":8},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":6}]},"message":"convert headers to lowercase","epoch":1572026109,"epoch_utc":null},{"commit":"25b90546c652cafa9409f02bae1654cb523add88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:39:05 2019 -0700","stats":{"files_changed":3,"insertions":14,"deletions":9,"files":["README.md","changelog.txt","jc/parsers/df.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":13}]},"message":"change 'Use%' to 'Use_percent'","epoch":1572025145,"epoch_utc":null},{"commit":"75c084153845757e22c149ea4ae7909d42ec7118","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:32:54 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"changelog update","epoch":1572024774,"epoch_utc":null},{"commit":"5b532b9b71fdb9de575da0af9b7989ac537877c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:31:03 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":5}]},"message":"minor cleanup","epoch":1572024663,"epoch_utc":null},{"commit":"8c7b3193d131411f8766508fc27b2a6589bba1f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:28:19 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":2}]},"message":"documentation change","epoch":1572024499,"epoch_utc":null},{"commit":"0897c96ef3c180a1707e8f56c545f59b3a4e0672","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:22:23 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":2}]},"message":"formatting","epoch":1572024143,"epoch_utc":null},{"commit":"57d0ab2ed7f444862546da17cbbe8f8ce67bca8c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:22:10 2019 -0700","stats":{"files_changed":2,"insertions":9,"deletions":4,"files":["README.md","jc/parsers/w.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"jc/parsers/w.py","lines_changed":9}]},"message":"change LOGIN@ to LOGIN_AT","epoch":1572024130,"epoch_utc":null},{"commit":"a07d9a0e4bb76d369b4a9bf0d77c7590dc3c2861","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:04:29 2019 -0700","stats":{"files_changed":2,"insertions":22,"deletions":13,"files":["README.md","jc/parsers/lsof.py"],"file_stats":[{"name":"README.md","lines_changed":10},{"name":"jc/parsers/lsof.py","lines_changed":25}]},"message":"change SIZE/OFF key to SIZE_OFF","epoch":1572023069,"epoch_utc":null},{"commit":"b3996cb4dfed908d71b292dc0b0136c6675351e6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 09:54:42 2019 -0700","stats":{"files_changed":2,"insertions":14,"deletions":10,"files":["README.md","jc/parsers/lsblk.py"],"file_stats":[{"name":"README.md","lines_changed":10},{"name":"jc/parsers/lsblk.py","lines_changed":14}]},"message":"change MAJ:MIN key to MAJ_MIN","epoch":1572022482,"epoch_utc":null},{"commit":"4fa88c1ba38b34f9750625458c465d66f6531bc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 09:53:44 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":3}]},"message":"clear out non-ascii chars from data","epoch":1572022424,"epoch_utc":null},{"commit":"c8c5564b29588094721949b96bff1e623437835d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 09:46:03 2019 -0700","stats":{"files_changed":2,"insertions":6,"deletions":3,"files":["README.md","jc/parsers/free.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":7}]},"message":"change buff/cache key to buff_cache","epoch":1572021963,"epoch_utc":null},{"commit":"6d047486d9f577bc04d79af839f5eef9657a9d43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:53:56 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"doc fix","epoch":1571964836,"epoch_utc":null},{"commit":"42bdc058141c4a3ac6f2c8211f9c990590b1b5cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:41:51 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"changelog fix","epoch":1571964111,"epoch_utc":null},{"commit":"85bfb688862e78d5879df6973b88ba8023fa6086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:33:42 2019 -0700","stats":{"files_changed":2,"insertions":15,"deletions":10,"files":["README.md","jc/parsers/history.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"jc/parsers/history.py","lines_changed":17}]},"message":"history parser fixes","epoch":1571963622,"epoch_utc":null},{"commit":"08ec21556b553cd7e64932d68e01ba8ff3b0f210","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:12:27 2019 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/w.py","lines_changed":1}]},"message":"formatting","epoch":1571962347,"epoch_utc":null},{"commit":"320929bf2595026d32b80b80c3e4878db9cf083f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:11:17 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/env.py"],"file_stats":[{"name":"jc/parsers/env.py","lines_changed":2}]},"message":"documentation update","epoch":1571962277,"epoch_utc":null},{"commit":"41cd489c34502c42602bf64086670ba3b2b8e14b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:09:32 2019 -0700","stats":{"files_changed":5,"insertions":126,"deletions":0,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/history.py","jc/parsers/uptime.py"],"file_stats":[{"name":"README.md","lines_changed":46},{"name":"changelog.txt","lines_changed":3},{"name":"jc/jc.py","lines_changed":10},{"name":"jc/parsers/history.py","lines_changed":32},{"name":"jc/parsers/uptime.py","lines_changed":35}]},"message":"add history and uptime parsers","epoch":1571962172,"epoch_utc":null},{"commit":"f101d881a16e662e883818749d48e96858fba853","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 16:06:55 2019 -0700","stats":{"files_changed":4,"insertions":78,"deletions":3,"files":["README.md","jc/jc.py","jc/parsers/w.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":27},{"name":"jc/jc.py","lines_changed":9},{"name":"jc/parsers/w.py","lines_changed":43},{"name":"setup.py","lines_changed":2}]},"message":"add w parser","epoch":1571958415,"epoch_utc":null},{"commit":"fa7466022bb8947c1bbf9f7b01aa4d92300a8992","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 15:54:31 2019 -0700","stats":{"files_changed":3,"insertions":28,"deletions":56,"files":["README.md","changelog.txt","jc/parsers/env.py"],"file_stats":[{"name":"README.md","lines_changed":37},{"name":"changelog.txt","lines_changed":3},{"name":"jc/parsers/env.py","lines_changed":44}]},"message":"fix env parser","epoch":1571957671,"epoch_utc":null},{"commit":"ea0cf0acf22585fbf8828841cf50155636eae82f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 09:48:35 2019 -0700","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":3}]},"message":"documentation update","epoch":1571935715,"epoch_utc":null},{"commit":"e7921b65f5a250c10b08f78939f74968047af430","merge":"393e8bc 2cc1b1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 18:41:55 2019 -0700","message":"Merge pull request #4 from kellyjonbrazil/dev\n\nDev v0.9.1","epoch":1571881315,"epoch_utc":null},{"commit":"2cc1b1bd5451f31d71b0e2236bdee0ce2b25b5d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 18:39:24 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"version bump","epoch":1571881164,"epoch_utc":null},{"commit":"58ae976db0165730a75dd7450c698d2727a354ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 18:30:55 2019 -0700","stats":{"files_changed":3,"insertions":113,"deletions":4,"files":["README.md","jc/parsers/lsmod.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":55},{"name":"jc/parsers/lsmod.py","lines_changed":60},{"name":"setup.py","lines_changed":2}]},"message":"documentation update","epoch":1571880655,"epoch_utc":null},{"commit":"66772392ae78ef394e22070b127416b1d5b01332","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 18:04:54 2019 -0700","stats":{"files_changed":3,"insertions":32,"deletions":0,"files":["changelog.txt","jc/jc.py","jc/parsers/lsmod.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/lsmod.py","lines_changed":26}]},"message":"add lsmod parser","epoch":1571879094,"epoch_utc":null},{"commit":"29c47c03a64f9c6b0f44d34be5449396654849b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 17:37:25 2019 -0700","stats":{"files_changed":3,"insertions":134,"deletions":2,"files":["README.md","changelog.txt","jc/parsers/lsof.py"],"file_stats":[{"name":"README.md","lines_changed":68},{"name":"changelog.txt","lines_changed":3},{"name":"jc/parsers/lsof.py","lines_changed":65}]},"message":"documentation update","epoch":1571877445,"epoch_utc":null},{"commit":"91eb9a4d13e9254bd5bbde931196904c1947a28e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 17:27:23 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":4}]},"message":"use None instead of --","epoch":1571876843,"epoch_utc":null},{"commit":"a1a3de32ec14d6ef433e334b9694856698c26d41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 17:22:25 2019 -0700","stats":{"files_changed":2,"insertions":59,"deletions":0,"files":["jc/jc.py","jc/parsers/lsof.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/lsof.py","lines_changed":54}]},"message":"add lsof parser","epoch":1571876545,"epoch_utc":null},{"commit":"9c47fd05bf716c2e18ebf4da41b1a46b972b2518","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 14:11:13 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":2}]},"message":"doco fix","epoch":1571865073,"epoch_utc":null},{"commit":"649c0aa7c157f87691cc8eeac64c747e81f63594","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 14:10:10 2019 -0700","stats":{"files_changed":2,"insertions":76,"deletions":1,"files":["README.md","jc/parsers/jobs.py"],"file_stats":[{"name":"README.md","lines_changed":39},{"name":"jc/parsers/jobs.py","lines_changed":38}]},"message":"add documentation","epoch":1571865010,"epoch_utc":null},{"commit":"3db758764e50666e5ae40de8d89180de2ef5bc28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 14:05:47 2019 -0700","stats":{"files_changed":3,"insertions":83,"deletions":0,"files":["changelog.txt","jc/jc.py","jc/parsers/jobs.py"],"file_stats":[{"name":"changelog.txt","lines_changed":6},{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":72}]},"message":"add jobs parser","epoch":1571864747,"epoch_utc":null},{"commit":"802f1510eb6d621f9c760f28b83f16a4781b8d93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 10:27:05 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":2}]},"message":"tighten if statements","epoch":1571851625,"epoch_utc":null},{"commit":"56901788dee154890e70269ad48d4b22bb8c5437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 09:51:29 2019 -0700","stats":{"files_changed":1,"insertions":30,"deletions":19,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":49}]},"message":"stop blocking when no pipe and enhance help text","epoch":1571849489,"epoch_utc":null},{"commit":"679ae6d5dc7af26240dc00d8bc6499950f81d457","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 09:20:11 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1571847611,"epoch_utc":null},{"commit":"b15c8c352a87a9b3b1dece28af0287ef71ca02d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 08:46:54 2019 -0700","stats":{"files_changed":1,"insertions":14,"deletions":16,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":30}]},"message":"simplify state variables","epoch":1571845614,"epoch_utc":null},{"commit":"393e8bc56041a4be01b6c0b2f98895aa330afd04","merge":"e3750b4 976fd7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 17:26:40 2019 -0700","message":"Merge pull request #3 from kellyjonbrazil/dev\n\nDev v0.8.1","epoch":1571790400,"epoch_utc":null},{"commit":"976fd7d9bd49190a8b28ea5acf5af8979cdec537","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 17:24:56 2019 -0700","stats":{"files_changed":1,"insertions":27,"deletions":28,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":55}]},"message":"readme update","epoch":1571790296,"epoch_utc":null},{"commit":"d8337870cad042cdcc6a4ff3c61f756c3430fa96","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 17:21:00 2019 -0700","stats":{"files_changed":1,"insertions":27,"deletions":28,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":55}]},"message":"update documentation","epoch":1571790060,"epoch_utc":null},{"commit":"39a8aec77f5134b5b958e3f679910a1c3512e13a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 17:15:02 2019 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/parsers/ls.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"v0.8.1 build","epoch":1571789702,"epoch_utc":null},{"commit":"306d539b6bbfb272c7b955e4847adc3a6b4afa5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 16:50:01 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"readme update","epoch":1571788201,"epoch_utc":null},{"commit":"f3087b8a8ede88834285bb5d0655fc96341c174c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 16:40:27 2019 -0700","stats":{"files_changed":3,"insertions":635,"deletions":1,"files":["README.md","changelog.txt","jc/parsers/iptables.py"],"file_stats":[{"name":"README.md","lines_changed":319},{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/iptables.py","lines_changed":316}]},"message":"update readme and formatting","epoch":1571787627,"epoch_utc":null},{"commit":"414c2ecef88af2d2c098e6acfb507a5fd7bb8eda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 16:32:55 2019 -0700","stats":{"files_changed":1,"insertions":6,"deletions":10,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":16}]},"message":"fix iptables parser","epoch":1571787175,"epoch_utc":null},{"commit":"776ef2d1be81180b8b295fbc587446a326f2f7a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 15:42:29 2019 -0700","stats":{"files_changed":2,"insertions":61,"deletions":0,"files":["jc/jc.py","jc/parsers/iptables.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/iptables.py","lines_changed":56}]},"message":"add iptables parser","epoch":1571784149,"epoch_utc":null},{"commit":"9ac57469967443b195be09d580beaa76ce0e1095","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 13:28:15 2019 -0700","stats":{"files_changed":4,"insertions":64,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/uname.py"],"file_stats":[{"name":"README.md","lines_changed":15},{"name":"changelog.txt","lines_changed":1},{"name":"jc/jc.py","lines_changed":7},{"name":"jc/parsers/uname.py","lines_changed":42}]},"message":"add uname parser","epoch":1571776095,"epoch_utc":null},{"commit":"a3e55d97c0fd4397b42e9146afb0ba9558274fdb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 12:54:41 2019 -0700","stats":{"files_changed":4,"insertions":127,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/mount.py"],"file_stats":[{"name":"README.md","lines_changed":45},{"name":"changelog.txt","lines_changed":1},{"name":"jc/jc.py","lines_changed":7},{"name":"jc/parsers/mount.py","lines_changed":75}]},"message":"add mount parser","epoch":1571774081,"epoch_utc":null},{"commit":"b15227e7ba5377e5fb6799d1b9e4ed5a11c6d92f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:55:11 2019 -0700","stats":{"files_changed":4,"insertions":125,"deletions":0,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/lsblk.py"],"file_stats":[{"name":"README.md","lines_changed":49},{"name":"changelog.txt","lines_changed":1},{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/lsblk.py","lines_changed":70}]},"message":"add lsblk parser","epoch":1571770511,"epoch_utc":null},{"commit":"ec3d1f84ceccb492b4c968938714fafa2e6a6321","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:26:58 2019 -0700","stats":{"files_changed":1,"insertions":24,"deletions":2,"files":["jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/free.py","lines_changed":26}]},"message":"fix free parser","epoch":1571768818,"epoch_utc":null},{"commit":"753d5fd9fe5a8e4b67b1a0ec018a9f811e27f8bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:17:21 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"readme update","epoch":1571768241,"epoch_utc":null},{"commit":"73a0d70c9294ad392792e690a7bfbcc4f51b0a5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:15:44 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"readme update","epoch":1571768144,"epoch_utc":null},{"commit":"c2c189f3e6e900e5f3d35df9a9b9d033448baff6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:14:19 2019 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":5}]},"message":"readme update","epoch":1571768059,"epoch_utc":null},{"commit":"36bc55a3109278d663b675a09829200f5474c3d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:11:41 2019 -0700","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"fix df","epoch":1571767901,"epoch_utc":null},{"commit":"a023001cd350e320ce30f47af214ed7a9bb43185","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:10:11 2019 -0700","stats":{"files_changed":6,"insertions":226,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/df.py","jc/parsers/env.py","jc/parsers/free.py"],"file_stats":[{"name":"README.md","lines_changed":73},{"name":"changelog.txt","lines_changed":5},{"name":"jc/jc.py","lines_changed":17},{"name":"jc/parsers/df.py","lines_changed":56},{"name":"jc/parsers/env.py","lines_changed":53},{"name":"jc/parsers/free.py","lines_changed":23}]},"message":"add df, env, and free parsers","epoch":1571767811,"epoch_utc":null},{"commit":"e3750b49628794fd4d563013b1f3a7471c27ce68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 07:40:42 2019 -0700","stats":{"files_changed":2,"insertions":83,"deletions":51,"files":["README.md","jc/__init__.py"],"file_stats":[{"name":"README.md","lines_changed":30},{"name":"jc/__init__.py","lines_changed":104}]},"message":"documentation enhancements","epoch":1571755242,"epoch_utc":null},{"commit":"b5ea08e55bfd22c9da5ba73c124791012df119a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 18:22:51 2019 -0700","stats":{"files_changed":4,"insertions":20,"deletions":20,"files":["README.md","changelog.txt","jc/parsers/netstat.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":16},{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":20},{"name":"setup.py","lines_changed":2}]},"message":"fix transport protocol","epoch":1571707371,"epoch_utc":null},{"commit":"8e71b8e3522b9b1af4d869a0854223eb5c300b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 18:11:51 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"fix jq example","epoch":1571706711,"epoch_utc":null},{"commit":"4c8610c54ff4b643237d8f0e4c5781c277fc39f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:59:32 2019 -0700","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"setup.py","lines_changed":2}]},"message":"fixed build","epoch":1571705972,"epoch_utc":null},{"commit":"c8f886dc8fcdc58f8471d68c3d583200d0ea2f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:56:53 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":2}]},"message":"fix example","epoch":1571705813,"epoch_utc":null},{"commit":"4cfc2d22b3f9fd6f0cde8ad206edd7fe260b3071","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:38:40 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"update changelog","epoch":1571704720,"epoch_utc":null},{"commit":"59238c85408117748e78c5e87157381a828f3782","merge":"d54d906 30080c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:36:33 2019 -0700","message":"Merge pull request #2 from kellyjonbrazil/dev\n\nDev v0.6.2","epoch":1571704593,"epoch_utc":null},{"commit":"30080c01659cf611666876b7b063b7b329822352","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:26:00 2019 -0700","stats":{"files_changed":1,"insertions":35,"deletions":35,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":70}]},"message":"reorder parsers","epoch":1571703960,"epoch_utc":null},{"commit":"fab80bb3b4a1897da29d818e98e9b80ce45443dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:20:12 2019 -0700","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["README.md","setup.py"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"setup.py","lines_changed":2}]},"message":"readme update","epoch":1571703612,"epoch_utc":null},{"commit":"a9f2df805421754afb8e8adbcac7f2d3bd06c9ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 14:27:26 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":3}]},"message":"move parsed_line var lower","epoch":1571693246,"epoch_utc":null},{"commit":"1d110be6cb25d169ae0dde6532cbcdf05d93d42f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 14:13:31 2019 -0700","stats":{"files_changed":3,"insertions":13,"deletions":1,"files":["README.md","changelog.txt","setup.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"changelog.txt","lines_changed":4},{"name":"setup.py","lines_changed":2}]},"message":"update doco","epoch":1571692411,"epoch_utc":null},{"commit":"be81b5e1ed93eb65e5dbed4f52905439cde86f62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 13:47:22 2019 -0700","stats":{"files_changed":1,"insertions":112,"deletions":121,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":233}]},"message":"readme update","epoch":1571690842,"epoch_utc":null},{"commit":"5f88f7d8a071306be92cbfb65d6d62c5a68159f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 13:41:53 2019 -0700","stats":{"files_changed":1,"insertions":110,"deletions":137,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":247}]},"message":"netstat cleanup","epoch":1571690513,"epoch_utc":null},{"commit":"e57c7cc8ef3102cc41dee4ea5fd33d40ba666491","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 13:23:29 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":2}]},"message":"change output from dict to list","epoch":1571689409,"epoch_utc":null},{"commit":"b216627c1073ea645029e341b4d3376601e5468e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 13:19:00 2019 -0700","stats":{"files_changed":1,"insertions":19,"deletions":116,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":135}]},"message":"flatten netstat output","epoch":1571689140,"epoch_utc":null},{"commit":"6e925eab131024b5746d870cbd47e2791acf18bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 13:07:30 2019 -0700","stats":{"files_changed":1,"insertions":27,"deletions":18,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":45}]},"message":"clean up arg parsing","epoch":1571688450,"epoch_utc":null},{"commit":"d54d906c571b4683f01cab2eca63ae5f0725a87b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 19:03:11 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update readme","epoch":1571450591,"epoch_utc":null},{"commit":"0040febbf099ed8ab35f6ee343750fcf89f2e739","merge":"8073d15 e416c77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 18:57:32 2019 -0700","message":"Merge pull request #1 from kellyjonbrazil/dev\n\nDev v0.5.5","epoch":1571450252,"epoch_utc":null},{"commit":"e416c77bed1267254da972b0f95b7ff1d43fccef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 18:56:26 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"version bump","epoch":1571450186,"epoch_utc":null},{"commit":"9181d242aaed5219bb35fde01d672be88949cceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 18:47:20 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"bump version","epoch":1571449640,"epoch_utc":null},{"commit":"d6f94c53a4df84fb75554605477e49536a809dc2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 18:46:25 2019 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"fix blank output case in ls","epoch":1571449585,"epoch_utc":null},{"commit":"a9294f32a00709737d0b82ff434a311e75ad0bed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 18:40:56 2019 -0700","stats":{"files_changed":3,"insertions":39,"deletions":42,"files":["changelog.txt","jc/parsers/ls.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":7},{"name":"jc/parsers/ls.py","lines_changed":72},{"name":"setup.py","lines_changed":2}]},"message":"ls fixes","epoch":1571449256,"epoch_utc":null},{"commit":"4d93b38fe47329e3175025878e87f7c963061f98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 14:18:34 2019 -0700","stats":{"files_changed":2,"insertions":90,"deletions":1,"files":["README.md","jc/parsers/route.py"],"file_stats":[{"name":"README.md","lines_changed":47},{"name":"jc/parsers/route.py","lines_changed":44}]},"message":"add route documentation","epoch":1571433514,"epoch_utc":null},{"commit":"77b74c550795f96b808e48a9b0bfd1a8af9866f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:59:30 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"add route parser","epoch":1571432370,"epoch_utc":null},{"commit":"51a1d3e6f48cf7084267be4092f0dd3f778dcef3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:51:36 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1571431896,"epoch_utc":null},{"commit":"2eba30422b44f648c7356a44cbff7416c6648f19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:43:49 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":2}]},"message":"skip first line","epoch":1571431429,"epoch_utc":null},{"commit":"43ed09ce5ba53261dfd7ef50a2e187cb524c416c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:38:11 2019 -0700","stats":{"files_changed":3,"insertions":25,"deletions":1,"files":["jc/jc.py","jc/parsers/route.py","setup.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":3},{"name":"jc/parsers/route.py","lines_changed":21},{"name":"setup.py","lines_changed":2}]},"message":"add route parser","epoch":1571431091,"epoch_utc":null},{"commit":"367ab54f94bf7f456377ec9d20f8daf99dbdc1ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:34:28 2019 -0700","stats":{"files_changed":3,"insertions":99,"deletions":2,"files":["README.md","changelog.txt","jc/parsers/ps.py"],"file_stats":[{"name":"README.md","lines_changed":53},{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":46}]},"message":"formatting","epoch":1571430868,"epoch_utc":null},{"commit":"4f552e370e656cc1882a7dae231475a016f8aa14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:26:24 2019 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":4}]},"message":"acknowledgment","epoch":1571430384,"epoch_utc":null},{"commit":"7571139f7980f6e74c29d46971881e82ab0f04bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:20:38 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"bump version","epoch":1571430038,"epoch_utc":null},{"commit":"8ec1bec31711d2ef487da3e4a29a842d98d77626","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:19:39 2019 -0700","stats":{"files_changed":4,"insertions":29,"deletions":7,"files":["changelog.txt","jc/__init__.py","jc/jc.py","jc/parsers/ps.py"],"file_stats":[{"name":"changelog.txt","lines_changed":10},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/jc.py","lines_changed":3},{"name":"jc/parsers/ps.py","lines_changed":21}]},"message":"add ps parser","epoch":1571429979,"epoch_utc":null},{"commit":"c04895407f203aa0a3a080d5242faf8f6889ae41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 12:57:02 2019 -0700","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["changelog.txt","jc/parsers/netstat.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":9}]},"message":"ubuntu fixes","epoch":1571428622,"epoch_utc":null},{"commit":"cec73d61310591e4890605f61dc5c1bef5808ec4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 09:57:22 2019 -0700","stats":{"files_changed":4,"insertions":24,"deletions":16,"files":["jc/jc.py","jc/parsers/ifconfig.py","jc/parsers/ls.py","jc/parsers/netstat.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":7},{"name":"jc/parsers/ifconfig.py","lines_changed":7},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"jc/parsers/netstat.py","lines_changed":23}]},"message":"linting","epoch":1571417842,"epoch_utc":null},{"commit":"756c2bc9acd60111281b76085a40778e51ca06cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 09:57:10 2019 -0700","stats":{"files_changed":1,"insertions":20,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":23}]},"message":"add acknowledgments","epoch":1571417830,"epoch_utc":null},{"commit":"084048987c7afc6516f69e68d37d73b2402dc7f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 17:59:46 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"changelog update","epoch":1571360386,"epoch_utc":null},{"commit":"02d97394dd76a8782e6e7d3f8a85e1aed05e796b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 17:28:14 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update","epoch":1571358494,"epoch_utc":null},{"commit":"177f948f9740e3e33449b04b9136a346c9a2c265","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 16:11:55 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version update","epoch":1571353915,"epoch_utc":null},{"commit":"c2b013150ec1f1b1ab7d416f1aa8a62165a5bb95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 15:51:39 2019 -0700","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":9}]},"message":"add changelog","epoch":1571352699,"epoch_utc":null},{"commit":"0bec67c29ce5d965271440da41a0c4b4c2a1f0fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 15:39:12 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":4}]},"message":"double quotes to single quotes","epoch":1571351952,"epoch_utc":null},{"commit":"8073d15fe11546a17cacd81409e255bb8aecd602","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 15:03:32 2019 -0700","stats":{"files_changed":1,"insertions":12,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":16}]},"message":"readme update","epoch":1571349812,"epoch_utc":null},{"commit":"3b74afc39e58f801e75b7105e521c1469d30f991","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 15:00:42 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["pypi-upload.sh"],"file_stats":[{"name":"pypi-upload.sh","lines_changed":2}]},"message":"upload script","epoch":1571349642,"epoch_utc":null},{"commit":"ed320cf0f4bb11cee1e69e9dc9176ba109df1b86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 13:04:34 2019 -0700","stats":{"files_changed":3,"insertions":22,"deletions":22,"files":["README.md","jc/parsers/netstat.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":20},{"name":"jc/parsers/netstat.py","lines_changed":22},{"name":"setup.py","lines_changed":2}]},"message":"change netstat pid field to integer","epoch":1571342674,"epoch_utc":null},{"commit":"021b6924e24e1cf0f971246244b174cd3181c0a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 12:15:27 2019 -0700","stats":{"files_changed":2,"insertions":254,"deletions":5,"files":["README.md","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":124},{"name":"jc/parsers/netstat.py","lines_changed":135}]},"message":"documentation updates","epoch":1571339727,"epoch_utc":null},{"commit":"5fb21b077662f1cb172741945ba5036e5a280638","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 12:09:05 2019 -0700","stats":{"files_changed":1,"insertions":0,"deletions":8,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":8}]},"message":"remove debug print statements","epoch":1571339345,"epoch_utc":null},{"commit":"7b8540ae2a60f2400fe672a022ee00d1415a3500","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 12:07:01 2019 -0700","stats":{"files_changed":1,"insertions":19,"deletions":7,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":26}]},"message":"netstat fixes","epoch":1571339221,"epoch_utc":null},{"commit":"a5e039d4c2e07d52a0797833685c562ab285b49b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 10:54:37 2019 -0700","stats":{"files_changed":1,"insertions":17,"deletions":7,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":24}]},"message":"netstat debugging","epoch":1571334877,"epoch_utc":null},{"commit":"7071f60a302b7aefb8fb312699b0abec25548986","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 09:05:49 2019 -0700","stats":{"files_changed":1,"insertions":66,"deletions":18,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":84}]},"message":"netstat mvp","epoch":1571328349,"epoch_utc":null},{"commit":"0de1dff0253eb46b7336103f62f888940406ccc0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 08:09:19 2019 -0700","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":48}]},"message":"fix ands","epoch":1571324959,"epoch_utc":null},{"commit":"b3c52eb1ccf82e899dda62c332c0b217d80eb4c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 08:03:56 2019 -0700","stats":{"files_changed":2,"insertions":112,"deletions":40,"files":["jc/parsers/ifconfig.py","jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":150}]},"message":"add netstat parser","epoch":1571324636,"epoch_utc":null},{"commit":"366c5dbc010869bdb1d3b9d852e10510bd5c266f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 17:36:50 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":4}]},"message":"fix help message","epoch":1571272610,"epoch_utc":null},{"commit":"a3ee02514b5fbd43a38ddf515a4aad49bb4e161a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 17:23:18 2019 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":12}]},"message":"fix imports and module names","epoch":1571271798,"epoch_utc":null},{"commit":"46ad1269cb58dc6f064d17eb0b04da62d8fd5fce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 17:15:43 2019 -0700","stats":{"files_changed":2,"insertions":4,"deletions":3,"files":["jc/jc.py","setup.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":6},{"name":"setup.py","lines_changed":1}]},"message":"packaging fixes","epoch":1571271343,"epoch_utc":null},{"commit":"7234afe568818678585ac423649a0ccce0f45d68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 16:22:52 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"entrypoint fix","epoch":1571268172,"epoch_utc":null},{"commit":"caf480c63aacb518805d48fba0fd454959d11023","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 16:01:34 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"module fix","epoch":1571266894,"epoch_utc":null},{"commit":"62851b48d5e5cd673e630a28996e1c24cc45aa58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 15:54:20 2019 -0700","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/jc.py","setup.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":12},{"name":"setup.py","lines_changed":2}]},"message":"fix modules","epoch":1571266460,"epoch_utc":null},{"commit":"46d6da92f0e196e150ab9dd44b1ba290c950905b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 15:08:06 2019 -0700","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["jc/{jc => jc.py}","setup.py"],"file_stats":[{"name":"jc/{jc => jc.py}","lines_changed":0},{"name":"setup.py","lines_changed":2}]},"message":"fix entry_points","epoch":1571263686,"epoch_utc":null},{"commit":"e572b2edfa993c5049ef3caeda7a8e4797f0c751","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 15:03:34 2019 -0700","stats":{"files_changed":2,"insertions":37,"deletions":29,"files":["jc/jc","setup.py"],"file_stats":[{"name":"jc/jc","lines_changed":58},{"name":"setup.py","lines_changed":8}]},"message":"use entry_points instead of scripts","epoch":1571263414,"epoch_utc":null},{"commit":"72c69e7de59029d623c9819dda6aa8cae91bc419","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 09:39:04 2019 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/jc"],"file_stats":[{"name":"jc/jc","lines_changed":12}]},"message":"fix package paths","epoch":1571243944,"epoch_utc":null},{"commit":"4d1565071e5cf7c38e026e08db8f4d2e79969691","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 09:03:05 2019 -0700","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["jc/{jc.py => jc}","setup.py"],"file_stats":[{"name":"jc/{jc.py => jc}","lines_changed":0},{"name":"setup.py","lines_changed":2}]},"message":"rename jc.py to jc","epoch":1571241785,"epoch_utc":null},{"commit":"3652e51693d7ba829f4699fd80de20856941d82f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 08:27:24 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"fix requirements","epoch":1571239644,"epoch_utc":null},{"commit":"49ce9f13e817266659400a8c19f5b078a48589df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 15 18:03:51 2019 -0700","stats":{"files_changed":3,"insertions":17,"deletions":20,"files":["jc/jc.py","jc/parsers/__init__.py","setup.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/__init__.py","lines_changed":5},{"name":"setup.py","lines_changed":27}]},"message":"setup updates","epoch":1571187831,"epoch_utc":null},{"commit":"e83170b7ec7ed2123bfde69be263b6034c7afa53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 15 16:28:42 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"readme update","epoch":1571182122,"epoch_utc":null},{"commit":"ffb6eb754a87baad5fb0558e30a5bca1a9b9e0a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 15 16:10:24 2019 -0700","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/parsers/__init__.py","setup.py"],"file_stats":[{"name":"jc/parsers/__init__.py","lines_changed":8},{"name":"setup.py","lines_changed":6}]},"message":"setup fixes","epoch":1571181024,"epoch_utc":null},{"commit":"2597a18d95d01109d2250487b7550a501edaf77b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 15 15:32:23 2019 -0700","stats":{"files_changed":1,"insertions":82,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":82}]},"message":"readme update","epoch":1571178743,"epoch_utc":null},{"commit":"3e576250b1bfe1c62c556f2fa0425103b0ede1f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 15 15:06:09 2019 -0700","stats":{"files_changed":11,"insertions":429,"deletions":0,"files":[".gitignore","LICENSE.md","README.md","build-package.sh","jc/__init__.py","jc/jc.py","jc/parsers/__init__.py","jc/parsers/ifconfig.py","jc/parsers/ls.py","jc/parsers/netstat.py","setup.py"],"file_stats":[{"name":".gitignore","lines_changed":6},{"name":"LICENSE.md","lines_changed":21},{"name":"README.md","lines_changed":53},{"name":"build-package.sh","lines_changed":5},{"name":"jc/__init__.py","lines_changed":61},{"name":"jc/jc.py","lines_changed":38},{"name":"jc/parsers/__init__.py","lines_changed":3},{"name":"jc/parsers/ifconfig.py","lines_changed":30},{"name":"jc/parsers/ls.py","lines_changed":130},{"name":"jc/parsers/netstat.py","lines_changed":55},{"name":"setup.py","lines_changed":27}]},"message":"First commit","epoch":1571177169,"epoch_utc":null}] diff --git a/tests/fixtures/generic/git-log-medium-stat.json b/tests/fixtures/generic/git-log-medium-stat.json index 40556785..2bc19af8 100644 --- a/tests/fixtures/generic/git-log-medium-stat.json +++ b/tests/fixtures/generic/git-log-medium-stat.json @@ -1 +1 @@ -[{"commit":"096fffdb79807d34b99985b38df0a3df7f6a86c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 20 10:03:36 2022 -0400","stats":{"files_changed":2,"insertions":120,"deletions":36,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"]},"message":"use stat examples","epoch":1650474216,"epoch_utc":null},{"commit":"728d882ed007b3c8b785018874a0eb06e1143b66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 20 09:50:19 2022 -0400","stats":{"files_changed":2,"insertions":90,"deletions":12,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"]},"message":"add timestamp docs and examples","epoch":1650473419,"epoch_utc":null},{"commit":"b53e42aca623181aa9bc72194e6eeef1e9a3a237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 20 09:44:42 2022 -0400","stats":{"files_changed":5,"insertions":29,"deletions":6,"files":["docs/parsers/git_log.md","docs/utils.md","jc/parsers/git_log.py","jc/utils.py","man/jc.1"]},"message":"add calculated timestamp","epoch":1650473082,"epoch_utc":null},{"commit":"477329ce5b8f5c2a8e4384ba3f59289fc18c957d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 20 08:26:26 2022 -0400","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add linefeed to version text","epoch":1650468386,"epoch_utc":null},{"commit":"283dc4efd55030188f17c7e1dfbc5315103494b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 17:44:15 2022 -0400","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["CHANGELOG","jc/cli.py"]},"message":"add python interpreter version and path to -v and -a output","epoch":1650415455,"epoch_utc":null},{"commit":"d490bbcaa0291a691b95fa5b61807eebb0b088eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 15:26:31 2022 -0400","stats":{"files_changed":1,"insertions":26,"deletions":26,"files":["CHANGELOG"]},"message":"normalize add/update","epoch":1650407191,"epoch_utc":null},{"commit":"f49ddf8e5c5009702155fc62d83c63e3c08c594d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 15:18:04 2022 -0400","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"]},"message":"doc update","epoch":1650406684,"epoch_utc":null},{"commit":"e1e341652b51b823844e76ef7e68f9373a323435","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 15:10:40 2022 -0400","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"doc update","epoch":1650406240,"epoch_utc":null},{"commit":"ecda667549137bed5622cca69f2022e7a75ea833","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 15:10:35 2022 -0400","stats":{"files_changed":2,"insertions":12,"deletions":8,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"]},"message":"process integers","epoch":1650406235,"epoch_utc":null},{"commit":"a0d96a188a9f875b2d59625aa97d4f80bba290f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 14:45:20 2022 -0400","stats":{"files_changed":2,"insertions":5,"deletions":1,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"]},"message":"doc update","epoch":1650404720,"epoch_utc":null},{"commit":"6c0f0cddfe4dd2d5169f7c55416c6725912557f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 14:43:47 2022 -0400","stats":{"files_changed":2,"insertions":14,"deletions":1,"files":["jc/parsers/yaml.py","tests/test_yaml.py"]},"message":"fix for datetime objects in yaml files","epoch":1650404627,"epoch_utc":null},{"commit":"c7173ecd89742c8cf8a7bc4a8021baac5c3cd483","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 14:34:53 2022 -0400","stats":{"files_changed":1,"insertions":8,"deletions":6,"files":["jc/parsers/git_log.py"]},"message":"fix mypy issues","epoch":1650404093,"epoch_utc":null},{"commit":"e98240c905394e3ebd6a45fa31b6d432c150afc4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 14:20:44 2022 -0400","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/git_log.py"]},"message":"extend instead of append list","epoch":1650403244,"epoch_utc":null},{"commit":"6cb7e25974b11afe57d7d0e8550b3b1a56b14c67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 13:17:24 2022 -0400","stats":{"files_changed":3,"insertions":93,"deletions":1,"files":["README.md","docs/parsers/git_log.md","man/jc.1"]},"message":"add docs","epoch":1650399444,"epoch_utc":null},{"commit":"c37980c05c7fbd4f811ce5fcfcfddaf5f3ab5414","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 13:17:16 2022 -0400","stats":{"files_changed":1,"insertions":41,"deletions":7,"files":["jc/parsers/git_log.py"]},"message":"add stat support","epoch":1650399436,"epoch_utc":null},{"commit":"b5943bd39d776fc4c3b3dea03c0f3d4b6f4bb260","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 10:32:55 2022 -0400","stats":{"files_changed":1,"insertions":23,"deletions":10,"files":["jc/parsers/git_log.py"]},"message":"initial docstring","epoch":1650389575,"epoch_utc":null},{"commit":"49a3a7db3b2b0b292489a41691c9dcbce816cfed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 09:30:38 2022 -0400","stats":{"files_changed":2,"insertions":175,"deletions":0,"files":["jc/lib.py","jc/parsers/git_log.py"]},"message":"initial git-log parser","epoch":1650385838,"epoch_utc":null},{"commit":"0c55240e9da30ac4293cc324f1094de2abd3da91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 13 10:54:28 2022 -0700","stats":{"files_changed":3,"insertions":1,"deletions":0,"files":["CHANGELOG","tests/{ => templates}/_test_foo.py","tests/{ => templates}/_test_foo_s.py"]},"message":"move test templates to fix test failures on some systems","epoch":1649872468,"epoch_utc":null},{"commit":"f91988aed5499d25acf7a7e87b2b0d0cd37b62af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 12 14:22:06 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/lib.md"]},"message":"iterator -> iterable","epoch":1649798526,"epoch_utc":null},{"commit":"3c3ad9fc6adf865b3814a1f03814d0bc17d1c6bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 12 14:20:58 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"iterator -> iterable in doc","epoch":1649798458,"epoch_utc":null},{"commit":"291ab79e22a59cb31814e7a5af9dbc9f2ec863e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 12 11:07:34 2022 -0700","stats":{"files_changed":3,"insertions":24,"deletions":24,"files":["README.md","man/jc.1","templates/readme_template"]},"message":"fix arch linux command","epoch":1649786854,"epoch_utc":null},{"commit":"e6d5892c146762cd41a966adadb77db333d98ace","merge":"c0414e7 dcca7a5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 12 11:02:37 2022 -0700","message":"Merge pull request #226 from kellyjonbrazil/master\n\nsync to dev","epoch":1649786557,"epoch_utc":null},{"commit":"dcca7a57d558721a61fbba44f07b1d53116827e1","merge":"7138eef 4ee8a69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 12 11:00:51 2022 -0700","message":"Merge pull request #225 from adrianteri/patch-1\n\nUpdate README","epoch":1649786451,"epoch_utc":null},{"commit":"4ee8a69337b24e199983fe657643abcb0a56a8e6","author":"003","author_email":"adriateri@gmail.com","date":"Tue Apr 12 20:53:39 2022 +0300","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"Update README\n\nSpecify the Arch package is in the AUR and NOT in the standard Archlinux repositories.","epoch":1649822019,"epoch_utc":null},{"commit":"c0414e7db7f5d785b72ad616517f2ec63af151a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 17:18:20 2022 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["docgen.sh"]},"message":"clean up background tasks","epoch":1649636300,"epoch_utc":null},{"commit":"a419175fe6dffe9c5fd20cfbd82ee552bc82a993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 17:14:34 2022 -0700","stats":{"files_changed":2,"insertions":34,"deletions":17,"files":["docgen.sh","updatedocs.sh"]},"message":"enhance parallelization","epoch":1649636074,"epoch_utc":null},{"commit":"cd6dead034f3c72aebd22afeb2aea6591ae6d94d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 16:54:34 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"man page update","epoch":1649634874,"epoch_utc":null},{"commit":"45342ea9fea29947d8d90260c7665ffbca612cce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 16:54:22 2022 -0700","stats":{"files_changed":2,"insertions":16,"deletions":9,"files":["docgen.sh","updatedocs.sh"]},"message":"parallelize doc gneration","epoch":1649634862,"epoch_utc":null},{"commit":"585bf0e159c7839869cf3e458938dcc5fa2ceb81","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 10:32:51 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"xrandr update","epoch":1649611971,"epoch_utc":null},{"commit":"3a860b9babe93d455f68ef21436edf7470d375af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 10:31:13 2022 -0700","stats":{"files_changed":2,"insertions":7,"deletions":5,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"add rotation field","epoch":1649611873,"epoch_utc":null},{"commit":"269180df77f9ff953b07222e8ae790c7e7a8298e","merge":"e85f11c a1afed8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 10:19:50 2022 -0700","message":"Merge pull request #223 from anekos/fix/support-rotated-devices\n\nFix/support rotated devices","epoch":1649611190,"epoch_utc":null},{"commit":"a1afed8d95e33fbbc618c7b5778a9faeea2f628f","author":"anekos","author_email":"anekos@snca.net","date":"Sun Apr 10 18:19:29 2022 +0900","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["docs/parsers/xrandr.md"]},"message":"doc update","epoch":1649639969,"epoch_utc":null},{"commit":"e39f150a216e4e184444dfc88a63e0f303e51631","author":"anekos","author_email":"anekos@snca.net","date":"Sun Apr 10 18:12:28 2022 +0900","stats":{"files_changed":3,"insertions":9,"deletions":4,"files":["jc/parsers/xrandr.py","tests/fixtures/generic/xrandr_simple.json","tests/test_xrandr.py"]},"message":"Support rotated devices","epoch":1649639548,"epoch_utc":null},{"commit":"e85f11c6fcad5461bae612dd5a945c20d300e59a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 4 12:00:41 2022 -0700","stats":{"files_changed":4,"insertions":12,"deletions":12,"files":["docs/parsers/ini.md","docs/parsers/kv.md","jc/parsers/ini.py","jc/parsers/kv.py"]},"message":"doc formatting","epoch":1649098841,"epoch_utc":null},{"commit":"49a9d7b07e89696f2e022655d7256b7d6ad4bf7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 4 11:42:16 2022 -0700","stats":{"files_changed":3,"insertions":12,"deletions":8,"files":["docs/parsers/ini.md","docs/parsers/kv.md","man/jc.1"]},"message":"doc update","epoch":1649097736,"epoch_utc":null},{"commit":"a2ef9c429e4bb9f70d033511dce77ccdb9013971","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 4 11:38:52 2022 -0700","stats":{"files_changed":4,"insertions":38,"deletions":8,"files":["jc/parsers/ini.py","jc/parsers/kv.py","tests/test_ini.py","tests/test_kv.py"]},"message":"allow duplicate keys","epoch":1649097532,"epoch_utc":null},{"commit":"d5e9074f1c8facb3f15b8c41a008917178626978","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 4 11:38:04 2022 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/lib.py","setup.py"]},"message":"version bump","epoch":1649097484,"epoch_utc":null},{"commit":"774699f085d97f22ae2dab0cf64d72aa1e1709f7","merge":"789f073 7138eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 4 18:21:15 2022 +0000","message":"Merge pull request #220 from kellyjonbrazil/master\n\nsync to dev","epoch":1649121675,"epoch_utc":1649096475},{"commit":"7138eef3d137bc64286d4af453d8d4e7b3f4408d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 30 14:39:56 2022 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py"]},"message":"fix newline chars in doc","epoch":1648676396,"epoch_utc":null},{"commit":"fad5e544aa9e57d31473190e196f59c616901207","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 29 09:58:44 2022 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"]},"message":"formatting","epoch":1648573124,"epoch_utc":null},{"commit":"64757e2cf55448bccfbbd60d31930ab3f59af21b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 29 09:35:54 2022 -0700","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"]},"message":"doc formatting","epoch":1648571754,"epoch_utc":null},{"commit":"e05be3f08beae1b600fc55a3a7b4e28163e15bc0","merge":"ac61e9a 789f073","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 25 22:36:05 2022 +0000","message":"Merge pull request #213 from kellyjonbrazil/dev\n\nDev v1.18.6","epoch":1648272965,"epoch_utc":1648247765},{"commit":"789f0735dfd63e728b8716d97cf0c6045ede5011","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 25 15:32:37 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"doc update","epoch":1648247557,"epoch_utc":null},{"commit":"34bc7753174be28d6c1a00dadc662bc374e554c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 25 15:32:11 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"doc update","epoch":1648247531,"epoch_utc":null},{"commit":"38de059a1bc285c8681086d9fb43d0d23ac01d49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 16:58:45 2022 -0700","stats":{"files_changed":3,"insertions":9,"deletions":3,"files":["docs/parsers/asciitable.md","docs/parsers/universal.md","man/jc.1"]},"message":"doc update","epoch":1648166325,"epoch_utc":null},{"commit":"304ae6268f4dff6e6f901628e7ff89db1d6e0767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 16:58:39 2022 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/parsers/asciitable_m.py"]},"message":"minor optimization by changing the expression order","epoch":1648166319,"epoch_utc":null},{"commit":"978caf45221188a29c0e67147804f20f317c066d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 12:37:46 2022 -0700","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["jc/parsers/asciitable.py"]},"message":"minor optimization by reordering expressions","epoch":1648150666,"epoch_utc":null},{"commit":"17df5bfcfc25f226a2976aa7ab8a80e4aaa915c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 11:58:13 2022 -0700","stats":{"files_changed":2,"insertions":12,"deletions":2,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"cache _is_separator function","epoch":1648148293,"epoch_utc":null},{"commit":"5e6a5068cff71b3b30525d0a12868bdf6551456c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 11:57:01 2022 -0700","stats":{"files_changed":1,"insertions":6,"deletions":2,"files":["jc/parsers/universal.py"]},"message":"allow iterables for simple table parser","epoch":1648148221,"epoch_utc":null},{"commit":"619de68a61be0117e635032347dde417d77c748c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 09:39:53 2022 -0700","stats":{"files_changed":2,"insertions":8,"deletions":9,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"formatting","epoch":1648139993,"epoch_utc":null},{"commit":"6748c3cc91f90bddea3d07b8b30a049ee55eaf35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 09:31:12 2022 -0700","stats":{"files_changed":2,"insertions":65,"deletions":61,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"remove lines from corner detection and add rounded corners","epoch":1648139472,"epoch_utc":null},{"commit":"0a462978b731770d1290187a502706c2322f5f91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 23 15:08:33 2022 -0700","stats":{"files_changed":4,"insertions":101,"deletions":3,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py","tests/test_asciitable.py","tests/test_asciitable_m.py"]},"message":"fix for special characters in headers","epoch":1648073313,"epoch_utc":null},{"commit":"e66a82ff49b40a674f9ef373a12d59fc71bfa730","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 23 10:50:34 2022 -0700","stats":{"files_changed":3,"insertions":6,"deletions":5,"files":["CHANGELOG","jc/parsers/asciitable_m.py","man/jc.1"]},"message":"doc update","epoch":1648057834,"epoch_utc":null},{"commit":"f3aa797d96c8e2cef2124dbb2f49d1fadaee3fa2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 17:47:19 2022 -0700","stats":{"files_changed":2,"insertions":69,"deletions":9,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"add more pretty table separators","epoch":1647996439,"epoch_utc":null},{"commit":"e5b478218c4ba3781afd085056dba888c3f6ae02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 16:05:07 2022 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_xrandr.py"]},"message":"add quiet=True to parse tests","epoch":1647990307,"epoch_utc":null},{"commit":"35e0e9c32afbc5450c661bcb3a23904d135358ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 15:57:43 2022 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable.py"]},"message":"remove print statement","epoch":1647989863,"epoch_utc":null},{"commit":"17c3c2f029a0a47eb02d681567619d471b99949c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 15:55:59 2022 -0700","stats":{"files_changed":4,"insertions":58,"deletions":2,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py","tests/test_asciitable.py","tests/test_asciitable_m.py"]},"message":"add bold bar seperator and ANSI code tests","epoch":1647989759,"epoch_utc":null},{"commit":"cf83e6398b3314b233581eb313510872177de20a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 15:13:07 2022 -0700","stats":{"files_changed":2,"insertions":7,"deletions":0,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"add fancy separators","epoch":1647987187,"epoch_utc":null},{"commit":"94e061b881e2ed28d2b462ad038e5ba77182b6c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 14:53:34 2022 -0700","stats":{"files_changed":1,"insertions":275,"deletions":0,"files":["tests/test_asciitable.py"]},"message":"add asciitable parser tests","epoch":1647986014,"epoch_utc":null},{"commit":"720480e39ce3cc2079d7f4f5bcff2725081fec34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 13:21:10 2022 -0700","stats":{"files_changed":4,"insertions":10,"deletions":2,"files":["docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"doc update","epoch":1647980470,"epoch_utc":null},{"commit":"82a63fe15922456853aa4597aa10a5a02b20bdef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 12:42:07 2022 -0700","stats":{"files_changed":2,"insertions":6,"deletions":8,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"]},"message":"doc update","epoch":1647978127,"epoch_utc":null},{"commit":"9c1ec9940e68ce9848da20e81b8c0b7e35a215df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 12:35:56 2022 -0700","stats":{"files_changed":4,"insertions":82,"deletions":14,"files":["docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"doc update","epoch":1647977756,"epoch_utc":null},{"commit":"f23f19da453a0f7bcf70e417a10f87e27571aa43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 12:25:59 2022 -0700","stats":{"files_changed":5,"insertions":122,"deletions":9,"files":["README.md","docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py","man/jc.1"]},"message":"doc update","epoch":1647977159,"epoch_utc":null},{"commit":"aea2e1b0a9c6bb2a02a6e73889bb04e8f4f22588","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 12:25:51 2022 -0700","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["tests/test_asciitable_m.py"]},"message":"fix tests so blank strings are now None","epoch":1647977151,"epoch_utc":null},{"commit":"7d95d679bf4093ea77f30a1be55384b6dbf08341","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 12:25:24 2022 -0700","stats":{"files_changed":2,"insertions":212,"deletions":1,"files":["jc/lib.py","jc/parsers/asciitable.py"]},"message":"add asciitable parser","epoch":1647977124,"epoch_utc":null},{"commit":"b3b140066b74ee31dd1c460502caf2f26df321b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 07:21:19 2022 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py"]},"message":"doc update","epoch":1647958879,"epoch_utc":null},{"commit":"b204c423c1b947c17cb251a5dd3c444cd71dd2c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 07:05:14 2022 -0700","stats":{"files_changed":4,"insertions":193,"deletions":15,"files":["README.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py","man/jc.1"]},"message":"doc update","epoch":1647957914,"epoch_utc":null},{"commit":"d451c309bb0d8889dc09a698212bf01c2154a582","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 06:30:07 2022 -0700","stats":{"files_changed":1,"insertions":11,"deletions":8,"files":["jc/parsers/asciitable_m.py"]},"message":"change multiple or statements to any()","epoch":1647955807,"epoch_utc":null},{"commit":"01d53da68ed04b736934851137c59216ad02d8c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 19:11:27 2022 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable_m.py"]},"message":"remove debug print","epoch":1647915087,"epoch_utc":null},{"commit":"53dd05e52c329a15c30a756a36a165ac59ef8a14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 19:10:02 2022 -0700","stats":{"files_changed":2,"insertions":29,"deletions":1,"files":["jc/parsers/asciitable_m.py","tests/test_asciitable_m.py"]},"message":"fix rstrip and add tests","epoch":1647915002,"epoch_utc":null},{"commit":"ab564f5be8282f1c7ee2d602bcef398fdfd4570f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 17:57:14 2022 -0700","stats":{"files_changed":2,"insertions":237,"deletions":1,"files":["jc/parsers/asciitable_m.py","tests/test_asciitable_m.py"]},"message":"add tests","epoch":1647910634,"epoch_utc":null},{"commit":"00c39450f9878527b60545ad61c04cfb98f418dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 13:36:54 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"]},"message":"enhance type annotation","epoch":1647895014,"epoch_utc":null},{"commit":"f611d08b50219f4e573c1d1f0beae27583e76432","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 13:33:35 2022 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/asciitable_m.py"]},"message":"formatting","epoch":1647894815,"epoch_utc":null},{"commit":"90e79b7df3a4d5b37835fdf1c2debc1bad0a40b9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 13:27:44 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"]},"message":"formatting","epoch":1647894464,"epoch_utc":null},{"commit":"4eb2d725d5fe6f2cc7935c7dc891912cf7b8e940","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 13:09:50 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"]},"message":"formatting","epoch":1647893390,"epoch_utc":null},{"commit":"51ae5ebcac7263ef2571c11975b275eff352bbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 13:06:34 2022 -0700","stats":{"files_changed":1,"insertions":148,"deletions":175,"files":["jc/parsers/asciitable_m.py"]},"message":"new streamlined parser","epoch":1647893194,"epoch_utc":null},{"commit":"9ecbdb09162da4d563799aa93d422db85b2c324b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 20 10:16:29 2022 -0700","stats":{"files_changed":8,"insertions":35,"deletions":30,"files":["docs/parsers/mpstat_s.md","docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","docs/parsers/universal.md","jc/parsers/foo_s.py","jc/parsers/mpstat_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"]},"message":"use generator instead of iterable in function return annotation","epoch":1647796589,"epoch_utc":null},{"commit":"b3a2886fd0af0cd06890f37f1edfc6890bb83e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 20 10:12:29 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["docs/lib.md"]},"message":"formatting","epoch":1647796349,"epoch_utc":null},{"commit":"ceacec0f462bd7c2d9e92ddb9029ccd71aef481c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 18 16:57:47 2022 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable_m.py"]},"message":"remove errant os sep import","epoch":1647647867,"epoch_utc":null},{"commit":"ff0f794b01395ed9b65fac75a6b07f0772d45a2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 18 16:53:23 2022 -0700","stats":{"files_changed":1,"insertions":32,"deletions":10,"files":["jc/parsers/asciitable_m.py"]},"message":"working","epoch":1647647603,"epoch_utc":null},{"commit":"70fafbf3f80f35c5db2c306978b2a488adad40bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 18 14:19:00 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"remove asciitable so tests pass for now","epoch":1647638340,"epoch_utc":null},{"commit":"5a248a8fc58952a5eab3d4aac025d7422ba82d08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 18 13:05:57 2022 -0700","stats":{"files_changed":1,"insertions":344,"deletions":0,"files":["jc/parsers/asciitable_m.py"]},"message":"add multiline asciitable parser","epoch":1647633957,"epoch_utc":null},{"commit":"4a3a4e10df8a552a4db3510640695f02b166dc40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 18 13:03:43 2022 -0700","stats":{"files_changed":1,"insertions":3,"deletions":4,"files":["jc/lib.py"]},"message":"add asciitable and asciitable-m parsers","epoch":1647633823,"epoch_utc":null},{"commit":"c27bd5ff39f21c6377e661d4d7de1200d2fdd72f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 17 16:24:18 2022 -0700","stats":{"files_changed":1,"insertions":23,"deletions":16,"files":["jc/parsers/universal.py"]},"message":"pad lines in sparse_table_parse and use str.isspace()","epoch":1647559458,"epoch_utc":null},{"commit":"f804c9627fb71341429ca80aec2887e23e0277db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 15 16:04:58 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/universal.py"]},"message":"copy input list so we don't mutate the caller's data","epoch":1647385498,"epoch_utc":null},{"commit":"3ab25d02f9dc248706aa1105e1766b2a84bc55a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 12:30:09 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"use _parser_is_streaming from lib","epoch":1647286209,"epoch_utc":null},{"commit":"9e80fd2b97b9bfe38fdaa6acdf2e8ed26d34b49d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 12:17:18 2022 -0700","stats":{"files_changed":2,"insertions":15,"deletions":11,"files":["jc/cli.py","jc/lib.py"]},"message":"fallback if info and doc items don't exist","epoch":1647285438,"epoch_utc":null},{"commit":"ff9527a098a94c996641fb3fe2f905c8ae5e3063","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 11:35:57 2022 -0700","stats":{"files_changed":1,"insertions":9,"deletions":13,"files":["jc/cli.py"]},"message":"import cleanup and use all_parser_info in parsers_text","epoch":1647282957,"epoch_utc":null},{"commit":"7dac2f8dc3baf619105e3c6ca4d3e45300b86287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 10:50:10 2022 -0700","stats":{"files_changed":3,"insertions":23,"deletions":9,"files":["docs/lib.md","docs/readme.md","man/jc.1"]},"message":"doc update","epoch":1647280210,"epoch_utc":null},{"commit":"32e4d55e86c3e7d94488ec69f13a4f6400c4cef3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 10:46:54 2022 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"]},"message":"use parser_info for help_doc","epoch":1647280014,"epoch_utc":null},{"commit":"f9a9062147256d0949457cc7fde838f87202524d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 10:46:23 2022 -0700","stats":{"files_changed":3,"insertions":27,"deletions":10,"files":["CHANGELOG","jc/__init__.py","jc/lib.py"]},"message":"add documentation argument to parser_info and all_parser_info","epoch":1647279983,"epoch_utc":null},{"commit":"89e5919796f7da585285901dca461aae21336415","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 09:56:50 2022 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/mpstat_s.md","jc/parsers/mpstat_s.py"]},"message":"add -A to second example","epoch":1647277010,"epoch_utc":null},{"commit":"e5f5b2591d8ac3abeb9571688c7fb8de34d647f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 09:45:17 2022 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update","epoch":1647276317,"epoch_utc":null},{"commit":"77c667eec045daff5cbd062fe9d6e83f237727e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 09:43:18 2022 -0700","stats":{"files_changed":9,"insertions":67,"deletions":6,"files":["docs/parsers/mpstat.md","docs/parsers/mpstat_s.md","jc/parsers/mpstat.py","jc/parsers/mpstat_s.py","tests/fixtures/ubuntu-18.04/mpstat-A-streaming.json","tests/fixtures/ubuntu-18.04/mpstat-A.json","tests/fixtures/ubuntu-18.04/mpstat-A.out","tests/test_mpstat.py","tests/test_mpstat_s.py"]},"message":"ubuntu fixes","epoch":1647276198,"epoch_utc":null},{"commit":"b257ce8c2fe6825fe435b4d04b4184091030db10","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 13 12:25:50 2022 -0700","stats":{"files_changed":4,"insertions":65,"deletions":0,"files":[".../centos-7.7/mpstat-A-2-5-streaming.json","tests/fixtures/centos-7.7/mpstat-A-streaming.json","tests/fixtures/centos-7.7/mpstat-streaming.json","tests/test_mpstat_s.py"]},"message":"add mpstat_s tests","epoch":1647199550,"epoch_utc":null},{"commit":"c693c868cacbcd81f44fd383719723dd7a137c87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 15:59:38 2022 -0800","stats":{"files_changed":7,"insertions":352,"deletions":0,"files":["README.md","docs/parsers/mpstat.md","docs/parsers/mpstat_s.md","jc/lib.py","jc/parsers/mpstat.py","jc/parsers/mpstat_s.py","man/jc.1"]},"message":"add mpstat streaming parser","epoch":1647043178,"epoch_utc":null},{"commit":"6f98b27a05d6e1f7571a97316b193f096521b959","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 15:33:31 2022 -0800","stats":{"files_changed":7,"insertions":168,"deletions":0,"files":["tests/fixtures/centos-7.7/mpstat-A-2-5.json","tests/fixtures/centos-7.7/mpstat-A-2-5.out","tests/fixtures/centos-7.7/mpstat-A.json","tests/fixtures/centos-7.7/mpstat-A.out","tests/fixtures/centos-7.7/mpstat.json","tests/fixtures/centos-7.7/mpstat.out","tests/test_mpstat.py"]},"message":"add mpstat tests","epoch":1647041611,"epoch_utc":null},{"commit":"d7efd25d88a8f489564ce48223845a16e4ab1cc7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 14:54:06 2022 -0800","stats":{"files_changed":4,"insertions":207,"deletions":1,"files":["EXAMPLES.md","README.md","docs/parsers/mpstat.md","man/jc.1"]},"message":"add mpstat to docs","epoch":1647039246,"epoch_utc":null},{"commit":"2cddb1f0bb497be0be071cdcb56bf49d2dafc920","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 14:00:19 2022 -0800","stats":{"files_changed":1,"insertions":94,"deletions":15,"files":["jc/parsers/mpstat.py"]},"message":"working mpstat","epoch":1647036019,"epoch_utc":null},{"commit":"ae1c331595dd857d8ae7f8cf93daee1b26be2c3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 13:15:39 2022 -0800","stats":{"files_changed":1,"insertions":30,"deletions":5,"files":["jc/parsers/mpstat.py"]},"message":"initial working version","epoch":1647033339,"epoch_utc":null},{"commit":"bc97052ed4ee3bf3f25127968139f2e89a659fe3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 12:37:17 2022 -0800","stats":{"files_changed":3,"insertions":109,"deletions":0,"files":["CHANGELOG","jc/lib.py","jc/parsers/mpstat.py"]},"message":"initial add mpstat parser","epoch":1647031037,"epoch_utc":null},{"commit":"6c3e0e2aa0e8cc375d9f7473930b18957d33f1aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 12:37:01 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"formatting","epoch":1647031021,"epoch_utc":null},{"commit":"dd052e01469e9e3328f7326d3591365a8e7322eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 10:25:24 2022 -0800","stats":{"files_changed":2,"insertions":26,"deletions":24,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"add underscores to column examples","epoch":1647023124,"epoch_utc":null},{"commit":"54e8f58145f6c4332fbd375d112259ea7abb2d72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 16:50:55 2022 -0800","stats":{"files_changed":2,"insertions":28,"deletions":2,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"add table result examples","epoch":1646959855,"epoch_utc":null},{"commit":"def7aa5764e69cd0cf2c5b70aa62c62023f76c9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 15:36:11 2022 -0800","stats":{"files_changed":2,"insertions":16,"deletions":16,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"formatting","epoch":1646955371,"epoch_utc":null},{"commit":"6986c74f6dceca907ea2e469a332deeb093a122c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 15:18:27 2022 -0800","stats":{"files_changed":169,"insertions":34,"deletions":837,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/pidstat.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/nmcli.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/pidstat.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/xrandr.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py"]},"message":"remove direct parser module example from doc","epoch":1646954307,"epoch_utc":null},{"commit":"b784db404d0569a4c630eb124b37b0b1d0846453","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 13:32:26 2022 -0800","stats":{"files_changed":17,"insertions":87,"deletions":166,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/pidstat_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/pidstat_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"]},"message":"streaming doc formatting update","epoch":1646947946,"epoch_utc":null},{"commit":"8aee4517bb4c2eebdd9873f7eb0827cd33b85519","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 13:02:50 2022 -0800","stats":{"files_changed":2,"insertions":12,"deletions":26,"files":["docs/parsers/pidstat_s.md","jc/parsers/pidstat_s.py"]},"message":"doc formatting","epoch":1646946170,"epoch_utc":null},{"commit":"a5fb8fbf94b3b80bef82f078ad6582260b13e374","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 10:10:57 2022 -0800","stats":{"files_changed":17,"insertions":164,"deletions":148,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/pidstat_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/pidstat_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"]},"message":"streaming doc update","epoch":1646935857,"epoch_utc":null},{"commit":"b9365e2ac28c3eacf53bc101857f7f1d7286ec20","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 09:23:36 2022 -0800","stats":{"files_changed":4,"insertions":74,"deletions":0,"files":[".../centos-7.7/pidstat-hdlrsuw-2-5-streaming.json",".../centos-7.7/pidstat-hdlrsuw-streaming.json",".../fixtures/centos-7.7/pidstat-hl-streaming.json","tests/test_pidstat_s.py"]},"message":"add pidstat-s tests","epoch":1646933016,"epoch_utc":null},{"commit":"696338c1a3d462afbe677a6f2ebe08d06ef4046a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 09:04:12 2022 -0800","stats":{"files_changed":1,"insertions":38,"deletions":0,"files":["tests/_test_foo_s.py"]},"message":"add streaming test template","epoch":1646931852,"epoch_utc":null},{"commit":"4f0616190bb842411353d65650b78a65d8cbdc28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 08:14:58 2022 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","man/jc.1"]},"message":"doc update","epoch":1646928898,"epoch_utc":null},{"commit":"3278cb0de301ee542b1fe8245a6c359193373b6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 08:14:46 2022 -0800","stats":{"files_changed":2,"insertions":15,"deletions":10,"files":["docs/parsers/arp.md","jc/parsers/arp.py"]},"message":"add type hints","epoch":1646928886,"epoch_utc":null},{"commit":"4fc04256a567c502a88ac8a1bd189746387c93f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 08:00:37 2022 -0800","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["jc/parsers/foo_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"]},"message":"rollback noReturn to tuple","epoch":1646928037,"epoch_utc":null},{"commit":"e4ae0fea63c0386c1b3239607fd6a58738d23633","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 16:28:55 2022 -0800","stats":{"files_changed":5,"insertions":8,"deletions":8,"files":["docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","jc/parsers/foo_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"]},"message":"fix type annotation","epoch":1646872135,"epoch_utc":null},{"commit":"d3727ea0906d6167aa48c340519242b010469d98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 16:09:35 2022 -0800","stats":{"files_changed":4,"insertions":99,"deletions":1,"files":["CHANGELOG","README.md","docs/parsers/pidstat_s.md","man/jc.1"]},"message":"doc update","epoch":1646870975,"epoch_utc":null},{"commit":"0d13909cf63d14008607c5640d074ab4073115e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 16:07:29 2022 -0800","stats":{"files_changed":2,"insertions":168,"deletions":0,"files":["jc/lib.py","jc/parsers/pidstat_s.py"]},"message":"add pidstat-s parser","epoch":1646870849,"epoch_utc":null},{"commit":"c52ca20e285895d2afb685a2a5ca275de7901033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 16:07:17 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/pidstat.py"]},"message":"fix comment","epoch":1646870837,"epoch_utc":null},{"commit":"21f27f26c81c75234221a5193c7d3903323e2032","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 15:37:10 2022 -0800","stats":{"files_changed":4,"insertions":72,"deletions":0,"files":["tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.json","tests/fixtures/centos-7.7/pidstat-hdlrsuw.json","tests/fixtures/centos-7.7/pidstat-hl.json","tests/test_pidstat.py"]},"message":"add pidstat tests","epoch":1646869030,"epoch_utc":null},{"commit":"5e7a87f39782d12070a895440ff541800df91b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 15:37:04 2022 -0800","stats":{"files_changed":1,"insertions":35,"deletions":0,"files":["tests/_test_foo.py"]},"message":"add test template","epoch":1646869024,"epoch_utc":null},{"commit":"845d763829acd03fff1d2fad6e9691f04bd1a2aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 15:09:22 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/pidstat.md","jc/parsers/pidstat.py"]},"message":"format docs to fit 80 columns","epoch":1646867362,"epoch_utc":null},{"commit":"f5c7d52ec72f5ff4b77d5ac4491f330575b9f10f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 14:43:56 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":10,"files":["man/jc.1","templates/manpage_template"]},"message":"formatting","epoch":1646865836,"epoch_utc":null},{"commit":"c3198a58744803f52113f80967c7259d781e2328","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 14:17:48 2022 -0800","stats":{"files_changed":2,"insertions":22,"deletions":12,"files":["man/jc.1","templates/manpage_template"]},"message":"formatting","epoch":1646864268,"epoch_utc":null},{"commit":"bbd4afa73542ba6596aed77426bb494fbcf23196","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 14:09:58 2022 -0800","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["README.md","man/jc.1"]},"message":"add pidstat to docs","epoch":1646863798,"epoch_utc":null},{"commit":"ae754a84bf5fc35b248bbc5f7b0fa8e871765819","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 14:06:34 2022 -0800","stats":{"files_changed":3,"insertions":263,"deletions":33,"files":["docs/parsers/arp.md","docs/parsers/pidstat.md","jc/parsers/pidstat.py"]},"message":"doc update","epoch":1646863594,"epoch_utc":null},{"commit":"3389eb5debe0f0ba01ece01e20048608bf357e70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 13:18:04 2022 -0800","stats":{"files_changed":4,"insertions":219,"deletions":9,"files":["jc/parsers/pidstat.py","tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.out","tests/fixtures/centos-7.7/pidstat-hdlrsuw.out","tests/fixtures/centos-7.7/pidstat-hl.out"]},"message":"initial working parser","epoch":1646860684,"epoch_utc":null},{"commit":"01f2c1e71f87ab401d487be4d6d150cb67c91437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 12:13:32 2022 -0800","stats":{"files_changed":5,"insertions":162,"deletions":2,"files":["CHANGELOG","jc/lib.py","jc/parsers/pidstat.py","setup.py","tests/fixtures/centos-7.7/pidstat.out"]},"message":"add pidstat parser","epoch":1646856812,"epoch_utc":null},{"commit":"8bfbf8f1bcd233a8ecd34012e140eb29164ca5fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 12:13:07 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"simplify error message","epoch":1646856787,"epoch_utc":null},{"commit":"f4242669bac3af5eb196c46d4146823aacec40ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 10:52:40 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":10,"files":["jc/parsers/arp.py"]},"message":"minor cleanup","epoch":1646851960,"epoch_utc":null},{"commit":"bebd9331f1fb9b80f8cb4a5cfacd68461743004e","merge":"9861983 ac61e9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 18:49:01 2022 +0000","message":"Merge pull request #211 from kellyjonbrazil/master\n\nsync to dev","epoch":1646880541,"epoch_utc":1646851741},{"commit":"ac61e9ad2c9c4e864db02db04cbf907fb0efd99b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 8 13:21:05 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add pypi link","epoch":1646774465,"epoch_utc":null},{"commit":"648ef4d8a9c33a36d4bb2c135fe59b031de8f24c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 8 13:19:20 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"update badge links","epoch":1646774360,"epoch_utc":null},{"commit":"727fc9a701e9aae75d3d2b708010da1d0dc8781a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 15:19:25 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/date.md","man/jc.1"]},"message":"doc update","epoch":1646522365,"epoch_utc":null},{"commit":"306512d6bb53af18516fc10b15c7ec79cb02cc98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 15:13:47 2022 -0800","stats":{"files_changed":4,"insertions":7,"deletions":4,"files":["CHANGELOG","jc/lib.py","jc/parsers/date.py","setup.py"]},"message":"force AM/PM to uppercase in date parser","epoch":1646522027,"epoch_utc":null},{"commit":"6afb1d389ca9dfd7880386d380fee032b7eb92e2","merge":"961968a 9861983","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 21:49:36 2022 +0000","message":"Merge pull request #209 from kellyjonbrazil/dev\n\nDev v1.18.4","epoch":1646545776,"epoch_utc":1646516976},{"commit":"98619834818c181cb50a9605fe166b6153c46095","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 13:45:28 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"doc update","epoch":1646516728,"epoch_utc":null},{"commit":"ca79053db08542849136ae13fdb4d1d90b79a7e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 12:15:47 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docgen.sh"]},"message":"document pydoc version","epoch":1646511347,"epoch_utc":null},{"commit":"29c263f87810f8566ebdad2358e99896391adfd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 12:15:14 2022 -0800","stats":{"files_changed":93,"insertions":115,"deletions":115,"files":["docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/streaming.md","docs/utils.md"]},"message":"pydoc formatting fixes","epoch":1646511314,"epoch_utc":null},{"commit":"128c3c170abc6a702ae044b073fb9d992d4262b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 16:38:49 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"doc update","epoch":1646440729,"epoch_utc":null},{"commit":"a531ab8864fca27b55d83b55055eaef1c36128cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 16:35:06 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting","epoch":1646440506,"epoch_utc":null},{"commit":"0c1be7cc11ec75a5738483d68d053e702eb34fc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 16:29:36 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":18,"files":["README.md","templates/readme_template"]},"message":"reduce dig example size","epoch":1646440176,"epoch_utc":null},{"commit":"e4222b45f54e6179e22d7924c083e4642b9974ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 16:24:13 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/lib.py"]},"message":"fix names to mod names","epoch":1646439853,"epoch_utc":null},{"commit":"ac32c69c31e8eff22252d7aded08f6cb14622086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 13:35:16 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"formatting","epoch":1646429716,"epoch_utc":null},{"commit":"cb2dfeac8d44b733ad9d364e8c6d233a381bfae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 13:27:39 2022 -0800","stats":{"files_changed":199,"insertions":334,"deletions":326,"files":["README.md","docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/streaming.md","docs/utils.md","jc/__init__.py","jc/cli.py","jc/exceptions.py","jc/lib.py","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat_freebsd_osx.py","jc/parsers/netstat_linux.py","jc/parsers/nmcli.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/xrandr.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py","jc/streaming.py","jc/utils.py","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"change name to JSON Convert","epoch":1646429259,"epoch_utc":null},{"commit":"9a3602e70b865a3015bd700b30d1076e17511a9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 08:57:11 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/lib.md","jc/lib.py"]},"message":"doc update","epoch":1646413031,"epoch_utc":null},{"commit":"a9f53ee258e18bc90934e263d8dc96feee84e939","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 3 17:50:19 2022 -0800","stats":{"files_changed":2,"insertions":15,"deletions":4,"files":["jc/cli.py","jc/lib.py"]},"message":"optimize streaming parser detection in cli","epoch":1646358619,"epoch_utc":null},{"commit":"6be3d3d98222a262c5138bb09f2951ccfab96110","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 3 17:38:47 2022 -0800","stats":{"files_changed":3,"insertions":43,"deletions":1,"files":["CHANGELOG","docs/lib.md","docs/readme.md"]},"message":"doc update","epoch":1646357927,"epoch_utc":null},{"commit":"e49df7208377ab34a74240a06f35f17fee4b8203","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 3 17:37:01 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"use streaming parser list to find streaming parsers","epoch":1646357821,"epoch_utc":null},{"commit":"7ede7be7bf7b1a7d29d158b3b21c20fff4990e72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 3 17:36:40 2022 -0800","stats":{"files_changed":2,"insertions":42,"deletions":0,"files":["jc/__init__.py","jc/lib.py"]},"message":"add standard and streaming list functions","epoch":1646357800,"epoch_utc":null},{"commit":"4758e28a36e2a55497e4f722d386a6b5cc30dc4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 2 15:24:18 2022 -0800","stats":{"files_changed":2,"insertions":20,"deletions":16,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting","epoch":1646263458,"epoch_utc":null},{"commit":"4a1ee151b3cb054d84cd964fd62f5855f765751d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 2 10:57:09 2022 -0800","stats":{"files_changed":2,"insertions":9,"deletions":11,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py"]},"message":"add dhcp6 options to docs","epoch":1646247429,"epoch_utc":null},{"commit":"8c8afc1a922e3c30fcf501d169b33a68b65cd3e0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 2 10:15:01 2022 -0800","stats":{"files_changed":2,"insertions":60,"deletions":24,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting","epoch":1646244901,"epoch_utc":null},{"commit":"ed205f7720d98c225c917c252ed7a6c9e6e8c2b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 28 12:55:05 2022 -0800","stats":{"files_changed":3,"insertions":9,"deletions":9,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py","man/jc.1"]},"message":"doc update","epoch":1646081705,"epoch_utc":null},{"commit":"d65f7ae992abc33140c00714d442290103661757","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 28 12:26:06 2022 -0800","stats":{"files_changed":1,"insertions":41,"deletions":0,"files":["EXAMPLES.md"]},"message":"add nmcli","epoch":1646079966,"epoch_utc":null},{"commit":"e2ffef57b9a474048fe72cf42aebfa6bfaf2e42b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 28 12:20:39 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_nmcli.py"]},"message":"fix test","epoch":1646079639,"epoch_utc":null},{"commit":"002caa9fb3b65f1ae64df25cc39c3de130403e76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 28 12:19:02 2022 -0800","stats":{"files_changed":7,"insertions":252,"deletions":0,"files":[".../fedora32/nmcli-connection-show-ens33.json",".../fedora32/nmcli-connection-show-ens33.out",".../fixtures/fedora32/nmcli-device-show-ens33.json",".../fixtures/fedora32/nmcli-device-show-ens33.out","tests/fixtures/fedora32/nmcli-device-show.json","tests/fixtures/fedora32/nmcli-device-show.out","tests/test_nmcli.py"]},"message":"add fedora tests","epoch":1646079542,"epoch_utc":null},{"commit":"b7c6faf3daf8eb0c42a222778baa440c5a018c75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 25 11:23:20 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"enhance error message","epoch":1645817000,"epoch_utc":null},{"commit":"554ca61d1764b81dea06b6b013d0444072f0662a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 25 11:19:20 2022 -0800","stats":{"files_changed":11,"insertions":165,"deletions":0,"files":[".../fixtures/centos-7.7/nmcli-connection-all.json",".../centos-7.7/nmcli-connection-show-ens33.json","tests/fixtures/centos-7.7/nmcli-connection.json","tests/fixtures/centos-7.7/nmcli-device-all.json",".../centos-7.7/nmcli-device-show-ens33.json",".../fixtures/centos-7.7/nmcli-device-show-lo.json","tests/fixtures/centos-7.7/nmcli-device-show.json","tests/fixtures/centos-7.7/nmcli-device.json","tests/fixtures/centos-7.7/nmcli-general-all.json",".../centos-7.7/nmcli-general-permissions.json","tests/test_nmcli.py"]},"message":"add tests","epoch":1645816760,"epoch_utc":null},{"commit":"7b9722d255a16981099dc803beda7abe0d46106a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 21:21:02 2022 -0800","stats":{"files_changed":2,"insertions":26,"deletions":34,"files":["man/jc.1","templates/manpage_template"]},"message":"fix formatting","epoch":1645766462,"epoch_utc":null},{"commit":"5505bde8ef77db0885f08d8d04160cbc4418dd67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:53:54 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/zipinfo.md"]},"message":"doc update","epoch":1645764834,"epoch_utc":null},{"commit":"dbcd9a4060647be24bca2a8d577f11925a9ac210","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:52:28 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/zipinfo.py"]},"message":"bump version to 1.0","epoch":1645764748,"epoch_utc":null},{"commit":"4bdeb2b3aa063c2772f5c44e52acbe16e915cc3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:52:18 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/xrandr.py"]},"message":"simplify warning message","epoch":1645764738,"epoch_utc":null},{"commit":"6ae1d03187c6d4b669f6f74db1be7c9cf07adaed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:47:15 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py"]},"message":"doc fix","epoch":1645764435,"epoch_utc":null},{"commit":"f75b06abe4af152be094f8bc1ba5ce66b25e35e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:43:20 2022 -0800","stats":{"files_changed":4,"insertions":180,"deletions":3,"files":["README.md","docs/parsers/nmcli.md","jc/parsers/nmcli.py","man/jc.1"]},"message":"doc update","epoch":1645764200,"epoch_utc":null},{"commit":"1923925710dadc4116202855ae884ef18394d428","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:35:00 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["CHANGELOG"]},"message":"update changelog","epoch":1645763700,"epoch_utc":null},{"commit":"2c5c57ae04df3b7abfb1c3423c3350c7c2ab5dcd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:33:10 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/lib.py","setup.py"]},"message":"version bump","epoch":1645763590,"epoch_utc":null},{"commit":"f4d11d697e000135720a971edf84dcad31a1bec8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:31:58 2022 -0800","stats":{"files_changed":1,"insertions":155,"deletions":15,"files":["jc/parsers/nmcli.py"]},"message":"finish use cases and doc","epoch":1645763518,"epoch_utc":null},{"commit":"7f409b7082aa9525cc9280e3c5c92bc82089cf14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:31:09 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"enhance ParseError cli message","epoch":1645763469,"epoch_utc":null},{"commit":"937fa5aad2519f588c6d0feb8f08211f6b99872f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 18:22:19 2022 -0800","stats":{"files_changed":1,"insertions":20,"deletions":0,"files":["jc/parsers/nmcli.py"]},"message":"split dhcp options","epoch":1645755739,"epoch_utc":null},{"commit":"19dcef513565c34a31f6d735577da5e25f9bd2cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 17:10:39 2022 -0800","stats":{"files_changed":1,"insertions":69,"deletions":2,"files":["jc/parsers/nmcli.py"]},"message":"firm up flow. add/remove text. parse routes","epoch":1645751439,"epoch_utc":null},{"commit":"3d01356461eb2790f859968da7f5cb4fd2ee9898","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 14:53:26 2022 -0800","stats":{"files_changed":1,"insertions":27,"deletions":3,"files":["jc/parsers/nmcli.py"]},"message":"add text_kv function","epoch":1645743206,"epoch_utc":null},{"commit":"2d6f666fa4c791e7995f6b0c1490dac73ce224c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 12:21:13 2022 -0800","stats":{"files_changed":1,"insertions":61,"deletions":16,"files":["jc/parsers/nmcli.py"]},"message":"add dev show and conn show parsers","epoch":1645734073,"epoch_utc":null},{"commit":"4dda895f122ecc19b267ed1485cf656bae76ff07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 11:25:14 2022 -0800","stats":{"files_changed":13,"insertions":404,"deletions":0,"files":["jc/lib.py","jc/parsers/nmcli.py","tests/fixtures/centos-7.7/nmcli-connection-all.out",".../centos-7.7/nmcli-connection-show-ens33.out","tests/fixtures/centos-7.7/nmcli-connection.out","tests/fixtures/centos-7.7/nmcli-device-all.out",".../centos-7.7/nmcli-device-show-ens33.out","tests/fixtures/centos-7.7/nmcli-device-show-lo.out","tests/fixtures/centos-7.7/nmcli-device-show.out","tests/fixtures/centos-7.7/nmcli-device.out","tests/fixtures/centos-7.7/nmcli-general-all.out",".../centos-7.7/nmcli-general-permissions.out","tests/fixtures/centos-7.7/nmcli.out"]},"message":"initial nmcli parser","epoch":1645730714,"epoch_utc":null},{"commit":"52617b1722ba2f089716b069f78f70a865430d61","merge":"3afaa48 961968a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 21 16:35:12 2022 +0000","message":"Merge pull request #208 from kellyjonbrazil/master\n\nsync to dev","epoch":1645490112,"epoch_utc":1645461312},{"commit":"961968a0fcaf37b64bc850c4945ba4b805a1fe54","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 15:14:22 2022 -0800","stats":{"files_changed":2,"insertions":26,"deletions":23,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"fix schema","epoch":1644880462,"epoch_utc":null},{"commit":"f026a788e5ca1231927e71fdbb1dadb2365a6518","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 11:30:03 2022 -0800","stats":{"files_changed":1,"insertions":62,"deletions":0,"files":["EXAMPLES.md"]},"message":"add xrandr example","epoch":1644867003,"epoch_utc":null},{"commit":"2f7c03eb35520be916c28a687031f8c6425839ba","merge":"681176e 3afaa48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 10:36:08 2022 -0800","message":"Merge pull request #207 from kellyjonbrazil/dev\n\nDev v1.18.3","epoch":1644863768,"epoch_utc":null},{"commit":"3afaa48eee081e28262d1762c5ec23d318012822","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 10:31:41 2022 -0800","stats":{"files_changed":15,"insertions":15,"deletions":15,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"]},"message":"doc update","epoch":1644863501,"epoch_utc":null},{"commit":"3201452564fb0fb44ef9cc32217339370bd2521e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 10:06:09 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"add -p to example","epoch":1644861969,"epoch_utc":null},{"commit":"7ee1e34fc71c0dbc08ba482b787d560fd5125f64","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 10:03:52 2022 -0800","stats":{"files_changed":2,"insertions":116,"deletions":4,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"doc update","epoch":1644861832,"epoch_utc":null},{"commit":"67dbf050161201f5016899591e81ab6253ac2322","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 09:58:31 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"add type annotations","epoch":1644861511,"epoch_utc":null},{"commit":"4ac9f2e3dad4e7bd270bf5a8e61b729838b2c89c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 09:37:37 2022 -0800","stats":{"files_changed":5,"insertions":10,"deletions":17,"files":["CHANGELOG","docs/parsers/rsync.md","docs/parsers/rsync_s.md","jc/parsers/rsync.py","jc/parsers/rsync_s.py"]},"message":"doc update","epoch":1644860257,"epoch_utc":null},{"commit":"3f5f6e39a777ef524cb3a06a01321bb8c31d930d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 09:20:16 2022 -0800","stats":{"files_changed":2,"insertions":100,"deletions":98,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"formatting","epoch":1644859216,"epoch_utc":null},{"commit":"4723db8e3cc4946b14c83b25d6e8c6d2309aa72e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 09:14:46 2022 -0800","stats":{"files_changed":8,"insertions":195,"deletions":77,"files":["README.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/xrandr.md","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/xrandr.py","man/jc.1"]},"message":"doc updates","epoch":1644858886,"epoch_utc":null},{"commit":"ca914ec77d1fc77e42860189e62ac2fb203d4931","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 09:14:38 2022 -0800","stats":{"files_changed":1,"insertions":11,"deletions":2,"files":["tests/test_xrandr.py"]},"message":"add nodata test","epoch":1644858878,"epoch_utc":null},{"commit":"dcc7f3f357ef016b4583fc1320fd2394788f271f","merge":"184ef3a cbdc666","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Feb 13 17:45:53 2022 -0800","message":"Merge pull request #204 from lyterk/xrandr\n\nNew parser: xrandr","epoch":1644803153,"epoch_utc":null},{"commit":"cbdc66623671da335eafe132b7af79f884856f1d","author":"Kevin Lyter","author_email":"lyterk@sent.com","date":"Wed Feb 9 21:50:07 2022 -0800","stats":{"files_changed":3,"insertions":2,"deletions":30,"files":["jc/parsers/xrandr.py",".../{simple_xrandr.json => xrandr_simple.json}",".../{simple_xrandr.out => xrandr_simple.out}"]},"message":"Return empty object if no results and filenames\n\n- If no results are returned, return {} instead of {\"screens\": [],\n\"unassociated_devices\": []}\n- simple_xrandr -> xrandr_simple","epoch":1644472207,"epoch_utc":null},{"commit":"184ef3a1faeb406ce62076cff637ee86d61541fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 8 14:45:33 2022 -0800","stats":{"files_changed":3,"insertions":11,"deletions":3,"files":["docs/parsers/rsync.md","docs/parsers/rsync_s.md","man/jc.1"]},"message":"doc update","epoch":1644360333,"epoch_utc":null},{"commit":"c732f759445e335fe36586859b6fde7e27bb8901","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 8 14:43:14 2022 -0800","stats":{"files_changed":2,"insertions":10,"deletions":2,"files":["jc/parsers/rsync.py","jc/parsers/rsync_s.py"]},"message":"doc update","epoch":1644360194,"epoch_utc":null},{"commit":"7a1ae4f5fc5328c32bf77235cfbd9f83ec995053","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 8 13:32:22 2022 -0800","stats":{"files_changed":3,"insertions":105,"deletions":0,"files":["tests/{test_lib.py => test_jc_lib.py}","tests/test_jc_streaming.py","tests/{test_utils.py => test_jc_utils.py}"]},"message":"add library tests","epoch":1644355942,"epoch_utc":null},{"commit":"d04bc3757c482ec9062b2da91ded76c5dd6d106b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 8 07:33:26 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add xrandr","epoch":1644334406,"epoch_utc":null},{"commit":"73e8391653145412cd852aca349466018c8b9084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 16:58:06 2022 -0800","stats":{"files_changed":1,"insertions":8,"deletions":3,"files":["jc/utils.py"]},"message":"formatting","epoch":1644281886,"epoch_utc":null},{"commit":"f6c1463c1578db264ccb3d4c2677857ed906e965","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 16:31:43 2022 -0800","stats":{"files_changed":1,"insertions":44,"deletions":24,"files":["jc/cli.py"]},"message":"formatting","epoch":1644280303,"epoch_utc":null},{"commit":"d392c7f901a9d7c57617fbd03bd3f88ee0bf4132","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 15:44:54 2022 -0800","stats":{"files_changed":12,"insertions":20,"deletions":13,"files":["docs/parsers/date.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/ls.md","docs/parsers/rpm_qi.md","docs/parsers/stat.md","docs/parsers/systeminfo.md","docs/parsers/timedatectl.md","docs/parsers/upower.md","docs/parsers/vmstat.md","docs/parsers/who.md","docs/utils.md"]},"message":"doc update","epoch":1644277494,"epoch_utc":null},{"commit":"d0387f58205b2fd9b9860ce9656bb29ceec54340","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 15:44:46 2022 -0800","stats":{"files_changed":16,"insertions":34,"deletions":29,"files":["jc/parsers/date.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/systeminfo.py","jc/parsers/timedatectl.py","jc/parsers/upower.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/who.py"]},"message":"add timestamp format hints for better performance","epoch":1644277486,"epoch_utc":null},{"commit":"76f92908a3ba9cbadcc8e972afa8b1c4a69509bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 15:43:24 2022 -0800","stats":{"files_changed":1,"insertions":44,"deletions":9,"files":["jc/utils.py"]},"message":"add format hints for performance optimization","epoch":1644277404,"epoch_utc":null},{"commit":"1a115da67bdce9acfefbfb71fbac37e234b1babd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 08:34:34 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"add lru_cache maxsize for python 3.7 support","epoch":1644251674,"epoch_utc":null},{"commit":"f0a37ccf301eee5133a83b5dd96986fef0c38e7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 08:30:11 2022 -0800","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/utils.py"]},"message":"use lru_cache for significant performance boost to timestamp","epoch":1644251411,"epoch_utc":null},{"commit":"f331f53a531169520a4d8ea15d277560a49aedb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 08:06:48 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["CHANGELOG","jc/utils.py"]},"message":"use !r formatting instead of quotes","epoch":1644250008,"epoch_utc":null},{"commit":"8611aff06b18212b7292d564beb27a2062fc3f41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 06:42:35 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/parsers/rsync_s.md","jc/parsers/rsync_s.py"]},"message":"add examples","epoch":1644244955,"epoch_utc":null},{"commit":"2f3f78e8d35a0ccccde0f84417400acdfe7fe0aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 06:29:17 2022 -0800","stats":{"files_changed":16,"insertions":194,"deletions":185,"files":["docgen.sh","docs/parsers/rsync_s.md","docs/readme.md","docs/streaming.md","docs/utils.md","jc/__init__.py","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/streaming.py","man/jc.1"]},"message":"refine streaming parsers","epoch":1644244157,"epoch_utc":null},{"commit":"d1e0ee6123dfecd48d074cb7a40e98a15b6adcb9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Feb 6 08:56:18 2022 -0800","stats":{"files_changed":1,"insertions":6,"deletions":8,"files":["jc/parsers/ping_s.py"]},"message":"use new streaming functions","epoch":1644166578,"epoch_utc":null},{"commit":"45314c98083067f1f6fae9c477c99fabec223f29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Feb 6 08:55:42 2022 -0800","stats":{"files_changed":2,"insertions":112,"deletions":102,"files":["jc/streaming.py","jc/utils.py"]},"message":"move some functions to streaming","epoch":1644166542,"epoch_utc":null},{"commit":"df00945b46e27e10107f48d186eedf80b55bd40e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 4 16:03:44 2022 -0800","stats":{"files_changed":6,"insertions":59,"deletions":49,"files":["jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py"]},"message":"move try/except inside for loop","epoch":1644019424,"epoch_utc":null},{"commit":"fda0050d867bcbe4f1d7e024b08e9881d0f57735","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 4 14:39:45 2022 -0800","stats":{"files_changed":13,"insertions":191,"deletions":0,"files":[".../centos-7.7/rsync-i-logfile-streaming.json","tests/fixtures/centos-7.7/rsync-i-streaming.json",".../centos-7.7/rsync-i-v-logfile-streaming.json",".../centos-7.7/rsync-i-vv-logfile-streaming.json",".../rsync-i-vvv-logfile-nochange-streaming.json",".../centos-7.7/rsync-i-vvv-logfile-streaming.json",".../centos-7.7/rsync-ivvv-nochange-streaming.json",".../fixtures/centos-7.7/rsync-ivvv-streaming.json","tests/fixtures/generic/rsync-i-streaming.json",".../rsync-i-vvv-logfile-nochange-streaming.json",".../rsync-i-vvv-nochange-streaming.json",".../osx-10.14.6/rsync-i-vvv-streaming.json","tests/test_rsync_s.py"]},"message":"add rsync-s tests","epoch":1644014385,"epoch_utc":null},{"commit":"a76d46f9ecb1eff4d6cc7ad633c97cec0e99001a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 4 12:14:16 2022 -0800","stats":{"files_changed":19,"insertions":110,"deletions":109,"files":["CHANGELOG","docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","docs/utils.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/utils.py","man/jc.1"]},"message":"refactor ignore_exceptions","epoch":1644005656,"epoch_utc":null},{"commit":"6b069a82d0fa19c8d83b19b934bace556cb758d7","author":"Kevin Lyter","author_email":"lyterk@sent.com","date":"Thu Feb 3 18:13:58 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/lib.py"]},"message":"Add xrandr to lib.py","epoch":1643940838,"epoch_utc":null},{"commit":"6b793d052147406f388c4d5dc04f506a3456f409","author":"Kevin Lyter","author_email":"lyterk@sent.com","date":"Thu Feb 3 18:13:11 2022 -0800","stats":{"files_changed":1,"insertions":6,"deletions":11,"files":["jc/parsers/xrandr.py"]},"message":"Clean up types\n\n* | operator => Union[]\n* Remove unused import Iterator\n* Remove comment","epoch":1643940791,"epoch_utc":null},{"commit":"ce9103f7cc666895dc7840d32797d8c7274cf1b8","author":"Kevin Lyter","author_email":"lyterk@sent.com","date":"Thu Feb 3 18:12:46 2022 -0800","stats":{"files_changed":2,"insertions":0,"deletions":287,"files":["templates/xrandr_sample.txt","templates/xrandr_sample_verbose.txt"]},"message":"Delete old files in template folder","epoch":1643940766,"epoch_utc":null},{"commit":"671d6dee36a37317257e09a080849205d301bceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 3 15:47:46 2022 -0800","stats":{"files_changed":8,"insertions":83,"deletions":15,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","docs/utils.md"]},"message":"doc update","epoch":1643932066,"epoch_utc":null},{"commit":"49929c714c2d71a310b1dd95138dbd02f8704138","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 3 15:44:18 2022 -0800","stats":{"files_changed":9,"insertions":139,"deletions":52,"files":["jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/utils.py"]},"message":"add add_jc_meta decorator","epoch":1643931858,"epoch_utc":null},{"commit":"2986771f07de87bfee44dd3bbb4f285e249aad76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 3 09:21:20 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"require python v3.7 and above since v3.6 is now deprecated","epoch":1643908880,"epoch_utc":null},{"commit":"520082d963b93d2bafeff921da3899686b22cadf","author":"Kevin Lyter","author_email":"lyterk@sent.com","date":"Wed Feb 2 18:25:55 2022 -0800","stats":{"files_changed":9,"insertions":968,"deletions":0,"files":["jc/parsers/xrandr.py","templates/xrandr_sample.txt","templates/xrandr_sample_verbose.txt","tests/fixtures/generic/simple_xrandr.json","tests/fixtures/generic/simple_xrandr.out","tests/fixtures/generic/xrandr.out","tests/fixtures/generic/xrandr_2.out","tests/fixtures/generic/xrandr_device.out","tests/test_xrandr.py"]},"message":"New parser: xrandr\n\nTests passing, working as intended in plugin directory","epoch":1643855155,"epoch_utc":null},{"commit":"021e296d457140c32b5256c2b0acf66efc458896","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 17:06:20 2022 -0800","stats":{"files_changed":1,"insertions":104,"deletions":100,"files":["jc/parsers/rsync_s.py"]},"message":"move variable inits and regexes up","epoch":1643850380,"epoch_utc":null},{"commit":"42e56fbcea6db64ea7f7045e7755af492c95aec2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 17:05:53 2022 -0800","stats":{"files_changed":1,"insertions":11,"deletions":12,"files":["jc/parsers/rsync.py"]},"message":"move regex up","epoch":1643850353,"epoch_utc":null},{"commit":"a5b62a4055df37b84751a7cdc14eb6f1ed907cd9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 16:03:14 2022 -0800","stats":{"files_changed":2,"insertions":230,"deletions":18,"files":["docs/parsers/rsync_s.md","jc/parsers/rsync_s.py"]},"message":"add processing and docs","epoch":1643846594,"epoch_utc":null},{"commit":"be98c9b7f6c67e23ea101223934d67bba512e645","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 15:59:12 2022 -0800","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/foo_s.py"]},"message":"simplify try/except by moving outside for loop","epoch":1643846352,"epoch_utc":null},{"commit":"aceeb8450796ae748a4d4abf75643f309d0a42e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 15:58:29 2022 -0800","stats":{"files_changed":3,"insertions":12,"deletions":1,"files":["CHANGELOG","README.md","man/jc.1"]},"message":"doc update","epoch":1643846309,"epoch_utc":null},{"commit":"13910632173e7c815ff1161cf52fd1d17153c4a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 11:49:39 2022 -0800","stats":{"files_changed":2,"insertions":367,"deletions":0,"files":["jc/lib.py","jc/parsers/rsync_s.py"]},"message":"first draft rsync streaming parser","epoch":1643831379,"epoch_utc":null},{"commit":"52157addd0d6dff3bdb34f179ec14b07c8c27ccc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 11:49:24 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/foo_s.py"]},"message":"fix compatible list","epoch":1643831364,"epoch_utc":null},{"commit":"ec0bc6615e22fdc536623e290d88b9725cb6a0ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 19:20:19 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/utils.md","jc/utils.py"]},"message":"formatting","epoch":1643772019,"epoch_utc":null},{"commit":"2f80800e38256b363a4122195ec4aaffebe67d87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 19:06:41 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"simplify all_parser_info comprehension","epoch":1643771201,"epoch_utc":null},{"commit":"3959d3347c8d3e838f8c3158c4db74e2fa2eb856","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 18:33:07 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["docs/lib.md"]},"message":"doc update","epoch":1643769187,"epoch_utc":null},{"commit":"b57d25c69a193d3866ea86a3a34edd67049b198d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 18:30:37 2022 -0800","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/lib.py"]},"message":"clean up return type for parser_info","epoch":1643769037,"epoch_utc":null},{"commit":"63e43a7cabb51c624c962cdcc92a1199f18c77e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 17:57:12 2022 -0800","stats":{"files_changed":7,"insertions":188,"deletions":21,"files":["README.md","docs/lib.md","docs/parsers/rsync.md","docs/parsers/universal.md","docs/parsers/zipinfo.md","docs/utils.md","man/jc.1"]},"message":"doc updates","epoch":1643767032,"epoch_utc":null},{"commit":"21719f9a26c25d896b0a5d49c9d7814175835e16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 17:54:22 2022 -0800","stats":{"files_changed":2,"insertions":18,"deletions":20,"files":["jc/lib.py","jc/utils.py"]},"message":"type annotation updates","epoch":1643766862,"epoch_utc":null},{"commit":"96ec70de4f6178b0669fd9ab47cb303dc45e55c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 17:18:55 2022 -0800","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["jc/parsers/universal.py","jc/utils.py"]},"message":"remove unneeded optional","epoch":1643764735,"epoch_utc":null},{"commit":"a15a1967dc06169ceeda0fd5b4857ce1a351f3d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 17:18:39 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"fix typo","epoch":1643764719,"epoch_utc":null},{"commit":"a10d7566294fe5246e68a16e355ce56dd3557ac5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:49:31 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/universal.py"]},"message":"fixy mypy issues","epoch":1643762971,"epoch_utc":null},{"commit":"0700dc7a64b121cf0243416e2cbb82fcef15f5a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:42:51 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/rsync.py"]},"message":"remove cygwin from compatible","epoch":1643762571,"epoch_utc":null},{"commit":"ca654b214057e19839b89e0d9a66f1110f679c1e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:42:10 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"fix parser order","epoch":1643762530,"epoch_utc":null},{"commit":"4ff3b87c1c96d720f4e7fd39e613944e322cb388","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:18:38 2022 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/rsync.py"]},"message":"remove future field from docstring","epoch":1643761118,"epoch_utc":null},{"commit":"ea244fb7a91f1d1f8ffe0ea6dc10dfe5ab836878","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:17:03 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_rsync.py"]},"message":"formatting","epoch":1643761023,"epoch_utc":null},{"commit":"8061f30e6fa58d22ed1a52e02c4d9c7f0bf132cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:16:33 2022 -0800","stats":{"files_changed":3,"insertions":236,"deletions":6,"files":["tests/fixtures/centos-7.7/rsync-ivvv-nochange.json","tests/fixtures/centos-7.7/rsync-ivvv-nochange.out","tests/test_rsync.py"]},"message":"add centos -i nochange test","epoch":1643760993,"epoch_utc":null},{"commit":"8f3b12e81e1b4f0d4394c33db5b3a352f4cfb391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 14:52:51 2022 -0800","stats":{"files_changed":6,"insertions":299,"deletions":0,"files":["jc/parsers/rsync.py",".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.json",".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.out","tests/fixtures/osx-10.14.6/rsync-i-vvv.json","tests/fixtures/osx-10.14.6/rsync-i-vvv.out","tests/test_rsync.py"]},"message":"add fixes for mac -i output","epoch":1643755971,"epoch_utc":null},{"commit":"d0694ce0db5ea2d06b5787429adf23095c4c2df0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 14:20:53 2022 -0800","stats":{"files_changed":3,"insertions":245,"deletions":6,"files":[".../osx-10.14.6/rsync-i-vvv-logfile-nochange.json",".../osx-10.14.6/rsync-i-vvv-logfile-nochange.out","tests/test_rsync.py"]},"message":"add nochange log test for mac","epoch":1643754053,"epoch_utc":null},{"commit":"0cd4c4bc7f3ffe13cb2f1920187e25636b88af61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 13:58:51 2022 -0800","stats":{"files_changed":2,"insertions":658,"deletions":0,"files":[".../centos-7.7/rsync-i-vvv-logfile-nochange.json",".../centos-7.7/rsync-i-vvv-logfile-nochange.out"]},"message":"add nochange tests","epoch":1643752731,"epoch_utc":null},{"commit":"12f90c349c903634def4225ce87924b475be46d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 13:54:25 2022 -0800","stats":{"files_changed":2,"insertions":68,"deletions":20,"files":["jc/parsers/rsync.py","tests/test_rsync.py"]},"message":"update regexes for unchanged files","epoch":1643752465,"epoch_utc":null},{"commit":"26b8a1f167c4b1ec3f9fb4077254a27ed8548933","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 09:58:18 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"]},"message":"remove packages from binaries and packages header","epoch":1643738298,"epoch_utc":null},{"commit":"3abe382c064f605d915912f9b726d76784eba8a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 16:01:42 2022 -0800","stats":{"files_changed":2,"insertions":90,"deletions":3,"files":["EXAMPLES.md","jc/parsers/rsync.py"]},"message":"add examples","epoch":1643673702,"epoch_utc":null},{"commit":"1e2edc2c7b5dc104a9efe4da7df9be61b9e1be32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 15:54:05 2022 -0800","stats":{"files_changed":5,"insertions":53,"deletions":29,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-logfile.json","tests/fixtures/centos-7.7/rsync-i-v-logfile.json","tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json"]},"message":"add timestamp","epoch":1643673245,"epoch_utc":null},{"commit":"5fe032a6741b7b6586c60eb28be74bd0e56277a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 13:44:44 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/zipinfo.py"]},"message":"fix typo","epoch":1643665484,"epoch_utc":null},{"commit":"e825c02df1cdae67c7f335fe3c675685eb1a8d02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 13:23:31 2022 -0800","stats":{"files_changed":11,"insertions":605,"deletions":0,"files":["tests/fixtures/centos-7.7/rsync-i-logfile.json","tests/fixtures/centos-7.7/rsync-i-v-logfile.json","tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out","tests/fixtures/centos-7.7/rsync-i.json","tests/fixtures/centos-7.7/rsync-i.out","tests/fixtures/centos-7.7/rsync-ivvv.json","tests/fixtures/generic/rsync-i.json","tests/fixtures/generic/rsync-i.out","tests/test_rsync.py"]},"message":"add rsync tests","epoch":1643664211,"epoch_utc":null},{"commit":"a4a4d170b5ae8c189de982adea5bdc9bf1f26e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 13:23:22 2022 -0800","stats":{"files_changed":1,"insertions":10,"deletions":5,"files":["jc/parsers/rsync.py"]},"message":"update docstring","epoch":1643664202,"epoch_utc":null},{"commit":"d0fcd523cb2cbb59d0f90369721749b54222961d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 11:13:23 2022 -0800","stats":{"files_changed":1,"insertions":19,"deletions":17,"files":["jc/parsers/rsync.py"]},"message":"fix process conversions","epoch":1643656403,"epoch_utc":null},{"commit":"f72b7dc75dbd1c3f5daee3ecee28487258a04873","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 30 16:37:45 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":8,"files":["jc/parsers/rsync.py"]},"message":"change keyname to files and remove future key","epoch":1643589465,"epoch_utc":null},{"commit":"4101dc6bf7bab7d00899426e2f6271a7480d558f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 30 16:21:03 2022 -0800","stats":{"files_changed":4,"insertions":1008,"deletions":19,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-v-logfile.out","tests/fixtures/centos-7.7/rsync-i-vv-logfile.out","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out"]},"message":"add log-file support","epoch":1643588463,"epoch_utc":null},{"commit":"ea5011b616365b5c10c04416d43035d84e3dacba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jan 29 17:24:43 2022 -0800","stats":{"files_changed":2,"insertions":175,"deletions":41,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-logfile.out"]},"message":"updated schema. add log-file option support","epoch":1643505883,"epoch_utc":null},{"commit":"d6de81747fd92642dbd5cb1fb097e375aa38be35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 28 15:00:05 2022 -0800","stats":{"files_changed":1,"insertions":11,"deletions":3,"files":["jc/parsers/rsync.py"]},"message":"add int/float conversions","epoch":1643410805,"epoch_utc":null},{"commit":"38f04b1c9699246d85332b20df5b6a91ae0c48d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 28 14:45:01 2022 -0800","stats":{"files_changed":1,"insertions":32,"deletions":7,"files":["jc/parsers/rsync.py"]},"message":"add summary","epoch":1643409901,"epoch_utc":null},{"commit":"84169e1a913d035744f71472be81fe3a7d774b97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 28 14:08:43 2022 -0800","stats":{"files_changed":4,"insertions":637,"deletions":2,"files":["jc/lib.py","jc/parsers/rsync.py","setup.py","tests/fixtures/centos-7.7/rsync-ivvv.out"]},"message":"add rsync parser","epoch":1643407723,"epoch_utc":null},{"commit":"1f96586a5e883709f436526de6dcb21ff44bf97b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 28 14:08:21 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/foo.py"]},"message":"reorder imports","epoch":1643407701,"epoch_utc":null},{"commit":"681176e4c958157ef1f2151b3e57963a6ba48e09","merge":"b389665 8bb2663","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 16:53:37 2022 -0800","message":"Merge pull request #203 from kellyjonbrazil/dev\n\nDev v1.18.2","epoch":1643331217,"epoch_utc":null},{"commit":"8bb266352207f95040b72750e5b3ae3b8ceb2b98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 16:49:46 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"date update","epoch":1643330986,"epoch_utc":null},{"commit":"663abf313931b49fad64b425ece6a5a257dc7938","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 16:14:14 2022 -0800","stats":{"files_changed":4,"insertions":3,"deletions":4,"files":["MANIFEST.in","mangen.py","runtests.sh","updatedocs.sh"]},"message":"clean up scripts","epoch":1643328854,"epoch_utc":null},{"commit":"f7ac41db95c16fd21d83fbce678c5dec28ab40f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 13:27:50 2022 -0800","stats":{"files_changed":2,"insertions":1,"deletions":13,"files":["README.md","man/jc.1"]},"message":"final doc update","epoch":1643318870,"epoch_utc":null},{"commit":"5502cda9e591b531d6b452b02d8ec322c3287800","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 13:03:02 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["tests/test_lib.py"]},"message":"add additional test for dict inside list for all_parser_info()","epoch":1643317382,"epoch_utc":null},{"commit":"a2b165565f54d91489bf38577a0785e78a4523d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 12:54:44 2022 -0800","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["tests/test_lib.py"]},"message":"add lib tests for new functions","epoch":1643316884,"epoch_utc":null},{"commit":"b426369815984bd2aae8bcb14e306ba73b8cd4ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 07:45:20 2022 -0800","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/cli.py"]},"message":"use all_parser_info() from lib in about function","epoch":1643298320,"epoch_utc":null},{"commit":"ac0840cc0afb4aeee2c99076710c987e09cfa5f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 20:51:18 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"fix typo","epoch":1643259078,"epoch_utc":null},{"commit":"ee98ab0a4a7671ae34ee79f7b0b97c061a8c2944","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 20:42:20 2022 -0800","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/lib.md","docs/utils.md"]},"message":"doc update","epoch":1643258540,"epoch_utc":null},{"commit":"2adec2c0035b84ca0242f2494b6c2651b9898ca5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 20:40:03 2022 -0800","stats":{"files_changed":4,"insertions":21,"deletions":19,"files":["jc/lib.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/utils.py"]},"message":"update type hints with mypy help","epoch":1643258403,"epoch_utc":null},{"commit":"f19c9c71bf4f592f55a5176458acd478b462fdbe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 18:39:14 2022 -0800","stats":{"files_changed":2,"insertions":15,"deletions":4,"files":["jc/parsers/foo.py","jc/parsers/foo_s.py"]},"message":"add type hints","epoch":1643251154,"epoch_utc":null},{"commit":"e93adf1884c0006a64123513070a5fd96a940da2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 18:09:30 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"fix doc","epoch":1643249370,"epoch_utc":null},{"commit":"254c4fc507842ca72064c0196418a7b939d54d06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 18:05:00 2022 -0800","stats":{"files_changed":2,"insertions":20,"deletions":6,"files":["docs/readme.md","jc/__init__.py"]},"message":"add new functions","epoch":1643249100,"epoch_utc":null},{"commit":"74d5f60d14fc42cfd5768c7ffd6efc890a65d442","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 17:17:40 2022 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"]},"message":"update console interview description","epoch":1643246260,"epoch_utc":null},{"commit":"db7dc0634bc17b4daadc8bc21bba5975c093efe5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 17:12:35 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/lib.md","jc/lib.py"]},"message":"make **kwargs optional","epoch":1643245955,"epoch_utc":null},{"commit":"e156b0db453e99fb0f74b618fd343218f978ff68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 17:08:03 2022 -0800","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"add type hints","epoch":1643245683,"epoch_utc":null},{"commit":"50adc05fbd6a0dcd9e4fb38aa41917bb57332f36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 16:58:48 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/utils.md","jc/utils.py"]},"message":"formatting","epoch":1643245128,"epoch_utc":null},{"commit":"446cac7c217103eb66cfdee97e3a208b7144b644","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 16:55:39 2022 -0800","stats":{"files_changed":2,"insertions":15,"deletions":11,"files":["docs/utils.md","jc/utils.py"]},"message":"doc update","epoch":1643244939,"epoch_utc":null},{"commit":"28ffe3076bb5f23aeaf2624344856dbd02b4c0e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 16:34:23 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":9,"files":["docs/lib.md","jc/lib.py"]},"message":"formatting","epoch":1643243663,"epoch_utc":null},{"commit":"d4d5e206cae14acd25445952f820810818b3fdce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 15:54:36 2022 -0800","stats":{"files_changed":3,"insertions":40,"deletions":28,"files":["docs/lib.md","docs/utils.md","jc/utils.py"]},"message":"type hints update","epoch":1643241276,"epoch_utc":null},{"commit":"42fbe40a4ae02b9d09acdbf9b22573844959d2ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 15:54:18 2022 -0800","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/lib.py"]},"message":"simplify type hints","epoch":1643241258,"epoch_utc":null},{"commit":"27e4a120e21dcbb3eadc6c4cf224ddb33859328d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 15:31:18 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/lib.md","jc/lib.py"]},"message":"remove trailing comma","epoch":1643239878,"epoch_utc":null},{"commit":"b5d5b7c73a96d4335b178ccfac60af90913e6f0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 15:01:42 2022 -0800","stats":{"files_changed":3,"insertions":29,"deletions":148,"files":["docgen.sh","docs/parsers/ifconfig.md","docs/parsers/traceroute.md"]},"message":"remove private classes","epoch":1643238102,"epoch_utc":null},{"commit":"e7471556ba5fb0586ac5b0d7404cabd98a58db2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 14:39:11 2022 -0800","stats":{"files_changed":1,"insertions":0,"deletions":5,"files":["docgen.sh"]},"message":"remove sed lines","epoch":1643236751,"epoch_utc":null},{"commit":"640a21341bb1c562cb2124155b511dfc74277fc0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 14:38:57 2022 -0800","stats":{"files_changed":2,"insertions":47,"deletions":42,"files":["docs/utils.md","jc/utils.py"]},"message":"fix indentation","epoch":1643236737,"epoch_utc":null},{"commit":"f5befad3e41ba2864abc795a2fdf63e0f1d37c21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 14:21:06 2022 -0800","stats":{"files_changed":2,"insertions":33,"deletions":25,"files":["docs/utils.md","jc/utils.py"]},"message":"move docstring under __init__","epoch":1643235666,"epoch_utc":null},{"commit":"f8223023c31093c1a34130b4e4cfc23b1d80a30c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 14:16:04 2022 -0800","stats":{"files_changed":4,"insertions":24,"deletions":10,"files":["docgen.sh","docs/parsers/ifconfig.md","docs/parsers/traceroute.md","docs/utils.md"]},"message":"change header depth","epoch":1643235364,"epoch_utc":null},{"commit":"7028e87f9b411c0cfb92eee7fc0667cdcb9a54ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 13:03:51 2022 -0800","stats":{"files_changed":87,"insertions":22,"deletions":445,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md"]},"message":"remove TOC for parsers","epoch":1643231031,"epoch_utc":null},{"commit":"590728f9c1ccfdc078e600d1f35ad4ba51f70d36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 11:50:25 2022 -0800","stats":{"files_changed":91,"insertions":506,"deletions":17,"files":["docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/utils.md","jc/lib.py"]},"message":"try new pydoc-markdown formatting options","epoch":1643226625,"epoch_utc":null},{"commit":"7cc147fe2d7b278bcab905bc4c3b70b5265e1510","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 19:28:37 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":44,"files":["docgen.sh","docgen.sh.old"]},"message":"increase heading size","epoch":1643167717,"epoch_utc":null},{"commit":"3cfb3965bb25024a7b03870b71f02194e278919b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 19:28:04 2022 -0800","stats":{"files_changed":3,"insertions":19,"deletions":19,"files":["docs/lib.md","docs/parsers/universal.md","docs/utils.md"]},"message":"formatting","epoch":1643167684,"epoch_utc":null},{"commit":"155d4213225fe4fcf4a059fb63c1ab9fc493177e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 19:18:54 2022 -0800","stats":{"files_changed":86,"insertions":182,"deletions":181,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"]},"message":"formatting","epoch":1643167134,"epoch_utc":null},{"commit":"d3e10bb87bdb32396bce95f74e62a023f4efaf99","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:59:40 2022 -0800","stats":{"files_changed":1,"insertions":291,"deletions":0,"files":["docs/parsers/lsusb.md"]},"message":"add lsusb docs","epoch":1643165980,"epoch_utc":null},{"commit":"fd5433ee6220357e59633c78b689aa432d056b43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:58:09 2022 -0800","stats":{"files_changed":3,"insertions":6,"deletions":293,"files":["docs/lib.md","docs/parsers/lsusb.md","jc/lib.py"]},"message":"parse docstring formatting","epoch":1643165889,"epoch_utc":null},{"commit":"4568f2d06e8fc1c465c86c318d925586481af062","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:51:56 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/lib.md","jc/lib.py"]},"message":"formatting for parse docstring","epoch":1643165516,"epoch_utc":null},{"commit":"c36e513d1bcc07cd8f01ff59199950e5396da51b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:42:55 2022 -0800","stats":{"files_changed":86,"insertions":88,"deletions":91,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"]},"message":"formatting","epoch":1643164975,"epoch_utc":null},{"commit":"8e089baf3fe30fed80e1c5cdde7c3046bb70ca5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:38:26 2022 -0800","stats":{"files_changed":86,"insertions":8,"deletions":855,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"]},"message":"remove info class from docs","epoch":1643164706,"epoch_utc":null},{"commit":"386f6c317e104e797c2b55e3d21c8b064a83ac78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:03:34 2022 -0800","stats":{"files_changed":89,"insertions":9552,"deletions":9939,"files":["docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/utils.md"]},"message":"update markdown processor settings","epoch":1643162614,"epoch_utc":null},{"commit":"75cd84ce8a86b3357c6cf5fe4fbc62d0f298a29a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 17:07:47 2022 -0800","stats":{"files_changed":94,"insertions":11423,"deletions":10081,"files":["README.md","docgen.sh","docgen.sh.old","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/utils.md","jc/cli.py","man/jc.1"]},"message":"try new markdown conversion","epoch":1643159267,"epoch_utc":null},{"commit":"6fad44e35df5d0e33e716d0fcb84ed309e6fd30b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 16:28:29 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"fix type hint","epoch":1643156909,"epoch_utc":null},{"commit":"1caac750daa25a5abeb1289964e918ec06289bfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 16:27:29 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/lib.py"]},"message":"Update type hints","epoch":1643156849,"epoch_utc":null},{"commit":"16370dcb3d5cf1304c2340ef2253ef2987a982b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 15:49:48 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"update type hints","epoch":1643154588,"epoch_utc":null},{"commit":"c1302f2573993a6908001d6df0697486f54a9e7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 15:49:31 2022 -0800","stats":{"files_changed":1,"insertions":19,"deletions":8,"files":["jc/lib.py"]},"message":"add type-hints to public api","epoch":1643154571,"epoch_utc":null},{"commit":"6f0ffe0955e4d9d6cc82552cf4e4f419e3ff3756","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 15:48:00 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"docu update","epoch":1643154480,"epoch_utc":null},{"commit":"1f89745fe7cca3a0ac27445942098b717675a481","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 11:17:18 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump","epoch":1643138238,"epoch_utc":null},{"commit":"a46ac18ef775bb2c52675e61e11c5d92f33cbe81","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 10:47:05 2022 -0800","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["CHANGELOG"]},"message":"doc update","epoch":1643136425,"epoch_utc":null},{"commit":"1a05f1c575b57456481e41baaf551cef30115966","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 10:46:58 2022 -0800","stats":{"files_changed":3,"insertions":64,"deletions":54,"files":["jc/__init__.py","jc/cli.py","jc/lib.py"]},"message":"add parser info functions. move _get_parser functionality from cli to lib","epoch":1643136418,"epoch_utc":null},{"commit":"08f818aa42ca68050a79ec387c42bff265257fd5","merge":"027c231 b389665","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 00:45:53 2022 +0000","message":"Merge pull request #199 from kellyjonbrazil/master\n\nsync to dev","epoch":1643100353,"epoch_utc":1643071553},{"commit":"b3896650c230b4acc73704a50c93ee74e4034eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 23 13:40:50 2022 -0800","stats":{"files_changed":2,"insertions":62,"deletions":104,"files":["README.md","templates/readme_template"]},"message":"revert column formatting","epoch":1642974050,"epoch_utc":null},{"commit":"f285539526998a5097943c71dcecb2979036b2b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 23 13:36:22 2022 -0800","stats":{"files_changed":2,"insertions":104,"deletions":62,"files":["README.md","templates/readme_template"]},"message":"conform to 80 columns","epoch":1642973782,"epoch_utc":null},{"commit":"a896dcdf3b31b60582ebb1b3bca5d1103f998dd6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 23 13:14:00 2022 -0800","stats":{"files_changed":2,"insertions":338,"deletions":120,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1642972440,"epoch_utc":null},{"commit":"0a187d4ed08173ec360a006ae2367bb1f2f96c52","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 23 10:04:19 2022 -0800","stats":{"files_changed":3,"insertions":7,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"]},"message":"add console interview links","epoch":1642961059,"epoch_utc":null},{"commit":"2d65bc57d5a396e6683f970194de29494b5c1272","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 16:58:45 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/readme.md","jc/__init__.py"]},"message":"add quotes","epoch":1642813125,"epoch_utc":null},{"commit":"ab63809fde0cefe1f0401d957a3736fdb760f0cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 16:13:00 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"update description","epoch":1642810380,"epoch_utc":null},{"commit":"6f04707dc63936efd0e533ae36e1b39ead10c466","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 15:33:43 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add python package doc info to top of page","epoch":1642808023,"epoch_utc":null},{"commit":"d14a86a9b58bdc3cb0c8df1dfa495aefdaab8033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 15:29:46 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py"]},"message":"fix typo","epoch":1642807786,"epoch_utc":null},{"commit":"8e6a31d3da19926ac46744e02b27a899ca5fbd7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 14:08:19 2022 -0800","stats":{"files_changed":6,"insertions":14,"deletions":8,"files":["CHANGELOG","docs/readme.md","jc/__init__.py","jc/lib.py","man/jc.1","setup.py"]},"message":"minor fix for macOS binary","epoch":1642802899,"epoch_utc":null},{"commit":"6e7b6afe87355e96422bb2560ffcbd5e79d28f04","merge":"70cb445 027c231","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 13:52:16 2022 -0800","message":"Merge pull request #198 from kellyjonbrazil/dev\n\nDev v1.18.0","epoch":1642801936,"epoch_utc":null},{"commit":"027c231097a002526350a93322407582a85db0cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 13:48:38 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"formatting","epoch":1642801718,"epoch_utc":null},{"commit":"f1cf7d1f953586dd44a4463d924f1a1f52717c37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:51:26 2022 -0800","stats":{"files_changed":2,"insertions":7,"deletions":5,"files":["jc/parsers/foo.py","jc/parsers/foo_s.py"]},"message":"add helper function info","epoch":1642798286,"epoch_utc":null},{"commit":"df611cc263f50285e74ceb3381f55b43a74870a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:41:52 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting","epoch":1642797712,"epoch_utc":null},{"commit":"0f3143bbbb593340190e66729580146410012e14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:39:22 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting","epoch":1642797562,"epoch_utc":null},{"commit":"c280757b7624a46543e481ca47a6e084d2d6f519","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:35:48 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting","epoch":1642797348,"epoch_utc":null},{"commit":"d30b9d84ef5ec3a2a504f7ea251c932b8c9ea878","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:33:23 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting","epoch":1642797203,"epoch_utc":null},{"commit":"50ded1dbd97d26cf01d7e1a98b40e0f0f7d02202","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:31:03 2022 -0800","stats":{"files_changed":1,"insertions":10,"deletions":4,"files":["docs/readme.md"]},"message":"doc update","epoch":1642797063,"epoch_utc":null},{"commit":"e319aea5a45c598a44f35b4e58131d977509e4f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:29:36 2022 -0800","stats":{"files_changed":1,"insertions":10,"deletions":4,"files":["jc/__init__.py"]},"message":"add doc version info","epoch":1642796976,"epoch_utc":null},{"commit":"ba86509c1d8700a50fe14e9d931ee57261306c5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:15:34 2022 -0800","stats":{"files_changed":1,"insertions":3,"deletions":9,"files":["jc/cli.py"]},"message":"simplify OSError exception handling","epoch":1642796134,"epoch_utc":null},{"commit":"0a9279ae6bfdd1aa59f5e9b31ce0af3bfec19f96","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:15:16 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["CHANGELOG","tests/test_lib.py"]},"message":"doc update","epoch":1642796116,"epoch_utc":null},{"commit":"a13dde12af01b4473aa9a34b8a0d7387fb48500a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 07:42:03 2022 -0800","stats":{"files_changed":173,"insertions":173,"deletions":173,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py","man/jc.1"]},"message":"change raw output wording","epoch":1642779723,"epoch_utc":null},{"commit":"e2ed358de1abefd737c187a324cbe4734d6975e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 15:31:24 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["CHANGELOG"]},"message":"changelog update","epoch":1642721484,"epoch_utc":null},{"commit":"a2cd3666210be3727a00c3405972f32fbd421046","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 15:01:49 2022 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["docs/_config.yml"]},"message":"Delete _config.yml","epoch":1642719709,"epoch_utc":null},{"commit":"15addd9bfc18a0e87beb97040b431c872b783662","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 09:59:23 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":8,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"doc fix","epoch":1642701563,"epoch_utc":null},{"commit":"a4e34b0053ec0c032f4783caaa3e07fc2c685a98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 09:46:24 2022 -0800","stats":{"files_changed":2,"insertions":63,"deletions":0,"files":["docgen.sh","docs/parsers/universal.md"]},"message":"add universal parser docs","epoch":1642700784,"epoch_utc":null},{"commit":"d09529ac302fbcc156d58cf836f8397c98121a76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 09:40:34 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update","epoch":1642700434,"epoch_utc":null},{"commit":"553097b5050dc02fbdaeec2e2e138e01bc6811d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 09:40:08 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/universal.py"]},"message":"docstring update","epoch":1642700408,"epoch_utc":null},{"commit":"49c556857708307f617b2b516f2d281398681b5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 07:49:45 2022 -0800","stats":{"files_changed":7,"insertions":35,"deletions":15,"files":["README.md","docs/lib.md","docs/readme.md","jc/__init__.py","jc/lib.py","man/jc.1","templates/readme_template"]},"message":"module doc update","epoch":1642693785,"epoch_utc":null},{"commit":"6962b9ee8a52c924dc2de6b79ddeea3636e80fe4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 22:24:59 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":6,"files":["docs/lib.md","jc/lib.py"]},"message":"formatting","epoch":1642659899,"epoch_utc":null},{"commit":"b4575a3f780f9aa2751c8b4789f67aaca32dd1cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 22:20:36 2022 -0800","stats":{"files_changed":3,"insertions":91,"deletions":1,"files":["docgen.sh","docs/lib.md","jc/lib.py"]},"message":"add lib docs","epoch":1642659636,"epoch_utc":null},{"commit":"35b54d235d73b2ce658223be3d6095906f142d89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 21:53:13 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add python package doc info","epoch":1642657993,"epoch_utc":null},{"commit":"583a5757e454a4e36b331057d1266279b55ee16a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 21:32:21 2022 -0800","stats":{"files_changed":18,"insertions":34,"deletions":30,"files":["docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/file.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/traceroute.md","docs/parsers/ufw_appinfo.md","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/file.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/traceroute.py","jc/parsers/ufw_appinfo.py"]},"message":"formatting","epoch":1642656741,"epoch_utc":null},{"commit":"f355333eeed3c4afba844dc7bed5224356552adc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 19:27:46 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting","epoch":1642649266,"epoch_utc":null},{"commit":"4d7df109604e4f8367904968602acfc05217a7fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 19:24:37 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting","epoch":1642649077,"epoch_utc":null},{"commit":"66b2c28f4bc75fb76800f9fb7ea485eee194a9a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 19:22:08 2022 -0800","stats":{"files_changed":2,"insertions":24,"deletions":24,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting","epoch":1642648928,"epoch_utc":null},{"commit":"299a9c6d88fdf1fede447b4057d8f4263daef733","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 19:19:25 2022 -0800","stats":{"files_changed":2,"insertions":25,"deletions":57,"files":["docs/parsers/csv.md","docs/readme.md"]},"message":"formatting","epoch":1642648765,"epoch_utc":null},{"commit":"bd391d979ce98b126dab0f012a56b3fcb1f73439","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 19:18:03 2022 -0800","stats":{"files_changed":1,"insertions":23,"deletions":55,"files":["jc/__init__.py"]},"message":"add lib function docs","epoch":1642648683,"epoch_utc":null},{"commit":"7309bd2282445f6daef0b1491ff60b8104500abb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 18:47:44 2022 -0800","stats":{"files_changed":3,"insertions":19,"deletions":10,"files":["jc/lib.py","jc/parsers/csv.py","jc/parsers/universal.py"]},"message":"add get_help","epoch":1642646864,"epoch_utc":null},{"commit":"ce84c09d3394b598f19a3e012ef27ce4154e3b3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 18:44:26 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/__init__.py"]},"message":"add get_help()","epoch":1642646666,"epoch_utc":null},{"commit":"b4fffbb6476daf78fbdf19dbf31bbeeab950d2dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 17:30:14 2022 -0800","stats":{"files_changed":46,"insertions":501,"deletions":304,"files":["docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/history.md","docs/parsers/ini.md","docs/parsers/iostat_s.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsusb.md","docs/parsers/netstat.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/ps.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/upower.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/who.md"]},"message":"formatting","epoch":1642642214,"epoch_utc":null},{"commit":"3701b4198aad1826ad6da571fbcaa530b057cc48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 17:29:22 2022 -0800","stats":{"files_changed":86,"insertions":710,"deletions":606,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"formatting","epoch":1642642162,"epoch_utc":null},{"commit":"d4c34098fa7ad2098076f0fa0564467e5d06f916","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 11:31:29 2022 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/lib.py"]},"message":"formatting","epoch":1642620689,"epoch_utc":null},{"commit":"b3c531193b3fc53697e7d7823576f481f9462d53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 11:08:59 2022 -0800","stats":{"files_changed":3,"insertions":125,"deletions":71,"files":["CHANGELOG","docs/utils.md","jc/utils.py"]},"message":"formatting","epoch":1642619339,"epoch_utc":null},{"commit":"1d0e07c77bab5c48405323e52873c7952dd0a587","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 10:31:46 2022 -0800","stats":{"files_changed":3,"insertions":57,"deletions":55,"files":["docs/readme.md","jc/__init__.py","jc/lib.py"]},"message":"formatting","epoch":1642617106,"epoch_utc":null},{"commit":"06a322cf9c7468dc7e8ba05914e1d07bbc51f63a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 10:31:36 2022 -0800","stats":{"files_changed":1,"insertions":14,"deletions":8,"files":["tests/test_lib.py"]},"message":"rename tests and add conversion function tests","epoch":1642617096,"epoch_utc":null},{"commit":"623d148712f93eacf9b7b5803140603f0af67acb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 09:30:53 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"doc update","epoch":1642613453,"epoch_utc":null},{"commit":"647e83d0439a0937db14a2cc97929e38a6b6a43b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 09:29:09 2022 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["tests/test_lib.py"]},"message":"add test to ensure there are zero plugin parsers installed during tests","epoch":1642613349,"epoch_utc":null},{"commit":"91a554464444da0cc3ed3b4d212539232411f6cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 09:28:35 2022 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/lib.py"]},"message":"doc update","epoch":1642613315,"epoch_utc":null},{"commit":"a1190998aef1bf403ee34c38c1a0fbd6291ac38b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 09:15:24 2022 -0800","stats":{"files_changed":2,"insertions":82,"deletions":0,"files":["tests/test_jc.py","tests/test_lib.py"]},"message":"add jc and jc.lib tests","epoch":1642612524,"epoch_utc":null},{"commit":"097d7a1850f6f6df73a5761c657b73ef9dbd3e29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 09:15:11 2022 -0800","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/__init__.py"]},"message":"simplify __init__","epoch":1642612511,"epoch_utc":null},{"commit":"302bf72e720b3a67fbf1300eaff4f99fc343abeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 15:38:03 2022 -0800","stats":{"files_changed":138,"insertions":718,"deletions":6,"files":["docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py"]},"message":"Update high-level API docs","epoch":1642549083,"epoch_utc":null},{"commit":"2c42baf3a4dd6733c078f31a1becd708a05f2c36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 14:18:12 2022 -0800","stats":{"files_changed":34,"insertions":174,"deletions":0,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py"]},"message":"add new high-level api info","epoch":1642544292,"epoch_utc":null},{"commit":"03feb89c84096c0ea1d6ae3a0634ae7b8b507e8f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 13:46:11 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/readme.md","jc/__init__.py"]},"message":"add module list info","epoch":1642542371,"epoch_utc":null},{"commit":"9dd553192fbca3037b3afe5df6bae88f7a8a9365","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 13:40:09 2022 -0800","stats":{"files_changed":5,"insertions":29,"deletions":12,"files":["CHANGELOG","README.md","docs/readme.md","man/jc.1","templates/readme_template"]},"message":"doc update","epoch":1642542009,"epoch_utc":null},{"commit":"fa3f02e9d1ac7867e3465c2d214f4e4229ff4c66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 13:39:51 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump","epoch":1642541991,"epoch_utc":null},{"commit":"0a9dde58c5235f78c4c9ae9c013f7454482c6067","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 13:10:14 2022 -0800","stats":{"files_changed":3,"insertions":228,"deletions":134,"files":["jc/__init__.py","jc/cli.py","jc/lib.py"]},"message":"add jc.parse() high-level API","epoch":1642540214,"epoch_utc":null},{"commit":"70cb4453bebb235130e2c287633ecb1de6c2b0aa","merge":"e6900e2 830674c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 14 11:54:29 2022 -0800","message":"Merge pull request #195 from kellyjonbrazil/dev\n\nDev v1.17.7","epoch":1642190069,"epoch_utc":null},{"commit":"830674cc6f19e107347a743baff7bbaab7f80b75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 14 11:47:25 2022 -0800","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["CHANGELOG","jc/__init__.py","man/jc.1","setup.py"]},"message":"version bump","epoch":1642189645,"epoch_utc":null},{"commit":"fb406b58a12fdfe81bcff76671661af77e7f2fe5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jan 8 20:22:53 2022 -0800","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["docs/parsers/stat_s.md","jc/parsers/stat_s.py","man/jc.1"]},"message":"formatting","epoch":1641702173,"epoch_utc":null},{"commit":"55b272e41259ddc835cf4eb513fb67e7b2cf1573","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 6 11:13:14 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat_s.py"]},"message":"tighten stat data detection","epoch":1641496394,"epoch_utc":null},{"commit":"94f62a9bf36242310790a0f37c66b2e6c6fdc078","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 6 11:03:49 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/stat_s.md","jc/parsers/stat_s.py"]},"message":"formatting","epoch":1641495829,"epoch_utc":null},{"commit":"8d19e4cb7b45e3b6cb8c404c959949b7593c9386","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 6 11:00:53 2022 -0800","stats":{"files_changed":4,"insertions":115,"deletions":1,"files":["CHANGELOG","README.md","docs/parsers/stat_s.md","man/jc.1"]},"message":"doc update","epoch":1641495653,"epoch_utc":null},{"commit":"7e510d48e0f8426a67cf8d70d06d0331c274d358","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 6 10:36:33 2022 -0800","stats":{"files_changed":7,"insertions":106,"deletions":2,"files":["jc/parsers/stat_s.py","tests/fixtures/centos-7.7/stat-streaming.json","tests/fixtures/freebsd12/stat-streaming.json",".../stat-filename-with-spaces-streaming.json","tests/fixtures/osx-10.14.6/stat-streaming.json","tests/fixtures/ubuntu-18.04/stat-streaming.json","tests/test_stat_s.py"]},"message":"simplify non-stat parse error logic","epoch":1641494193,"epoch_utc":null},{"commit":"7b20cffb143447f4497bc4e895eac2426e8a519f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 5 11:44:00 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/stat_s.py"]},"message":"simplify last item logic","epoch":1641411840,"epoch_utc":null},{"commit":"5c934c43c13b69183561da8a77280feb3363e950","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 5 11:39:00 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/stat_s.py"]},"message":"add continue to simplify logic","epoch":1641411540,"epoch_utc":null},{"commit":"8609298449e997ba4804d818f4fc23cb393ded7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 5 11:25:58 2022 -0800","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/parsers/stat_s.py"]},"message":"update docstring","epoch":1641410758,"epoch_utc":null},{"commit":"72cb0dc10b2dac486d3e2a52cf44baf0d7496034","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 5 11:22:01 2022 -0800","stats":{"files_changed":1,"insertions":14,"deletions":10,"files":["jc/parsers/stat_s.py"]},"message":"fixup for first and last items","epoch":1641410521,"epoch_utc":null},{"commit":"7b22fa81ded0f6f59e250ffea63c5d2a0f928b25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 5 07:46:58 2022 -0800","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/parsers/stat_s.py"]},"message":"raise for non-stat data","epoch":1641397618,"epoch_utc":null},{"commit":"0b6a1307790e0793917bc2781e4873aa9dd67225","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 16:43:38 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/stat_s.py"]},"message":"ignore blank lines","epoch":1641343418,"epoch_utc":null},{"commit":"fdcf4338e0f099699f8d48df6382be1cc97dba84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 15:31:00 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["jc/parsers/stat_s.py"]},"message":"add examples to docstring","epoch":1641339060,"epoch_utc":null},{"commit":"ee43037f481286a34a766390568965fdd53af132","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 15:13:42 2022 -0800","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/stat_s.py"]},"message":"remove unused continue lines","epoch":1641338022,"epoch_utc":null},{"commit":"26e365563c314e694915c7a3feae490ea99a112c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 15:07:45 2022 -0800","stats":{"files_changed":1,"insertions":50,"deletions":11,"files":["jc/parsers/stat_s.py"]},"message":"add schema and _process logic","epoch":1641337665,"epoch_utc":null},{"commit":"1b39586bb1b62aee8ae709512c2e3f79cefdb3d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 15:01:42 2022 -0800","stats":{"files_changed":2,"insertions":227,"deletions":0,"files":["jc/cli.py","jc/parsers/stat_s.py"]},"message":"add stat streaming parser","epoch":1641337302,"epoch_utc":null},{"commit":"8bb3a6bea34d60d49039f1ed72fd7e413edc05da","merge":"78672bd e6900e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 13:33:35 2022 -0800","message":"Merge pull request #194 from kellyjonbrazil/master\n\nsync to dev","epoch":1641332015,"epoch_utc":null},{"commit":"e6900e2000bf265dfcfc09ffbfda39e9238661af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:41:16 2022 -0800","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["EXAMPLES.md"]},"message":"add jar-manifest","epoch":1641231676,"epoch_utc":null},{"commit":"0ee244756bf39123e4873eb231156edbe7f0e0ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:22:35 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/jar_manifest.md","jc/parsers/jar_manifest.py"]},"message":"spelling","epoch":1641230555,"epoch_utc":null},{"commit":"6d5ac9abe6712e01887ce0d96c278a568319f405","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:19:40 2022 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["docs/parsers/csv.md","docs/parsers/csv_s.md","man/jc.1"]},"message":"update docs","epoch":1641230380,"epoch_utc":null},{"commit":"44f6d9e1321459be8196aeebf6db088cc5120e61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:18:43 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"changelog update","epoch":1641230323,"epoch_utc":null},{"commit":"360154559c5dee6affa55bbdd5d2f473248b9168","merge":"241d53a 78672bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:12:50 2022 -0800","message":"Merge pull request #193 from kellyjonbrazil/dev\n\nDev add csv doublequote fix","epoch":1641229970,"epoch_utc":null},{"commit":"78672bd7ad66c418e0ecf31add73f887b0946d29","merge":"bc7973a 65d96e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:08:57 2022 -0800","message":"Merge pull request #190 from shaikustin/csv-doubleqouted\n\nfix doubleqoute in csv","epoch":1641229737,"epoch_utc":null},{"commit":"65d96e26b59e231c77c1dbba1dc91708c33de30c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:06:00 2022 -0800","stats":{"files_changed":2,"insertions":13,"deletions":0,"files":["tests/fixtures/generic/csv-doubleqouted-streaming.json","tests/test_csv_s.py"]},"message":"add streaming tests","epoch":1641229560,"epoch_utc":null},{"commit":"241d53af9a5c9bba70e28835e22c52c0060269ba","merge":"f733100 bc7973a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 08:49:15 2022 -0800","message":"Merge pull request #192 from kellyjonbrazil/dev\n\nDev v1.17.6","epoch":1641228555,"epoch_utc":null},{"commit":"5563829df2849a899df2e9211d6c92bddc695f9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 08:48:23 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/csv_s.py"]},"message":"make dialect sniff behavior match non-streaming parser","epoch":1641228503,"epoch_utc":null},{"commit":"3a4a27e1f94ee07352c7616c57ec655c1aea04f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 11:44:25 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/csv.py"]},"message":"version bump","epoch":1641152665,"epoch_utc":null},{"commit":"9c887a36a804d817c3f669a55b9b1566d09d645d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 11:44:18 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/csv_s.py"]},"message":"update csv_s parser with csv changes","epoch":1641152658,"epoch_utc":null},{"commit":"bc7973af36e13006230b5faa9e201e300d468912","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 11:07:15 2022 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","jc/cli.py","man/jc.1"]},"message":"update copyright","epoch":1641150435,"epoch_utc":null},{"commit":"32972d8fdbdc71923978fd5c2a87fd6cfa4b7f8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 11:00:52 2022 -0800","stats":{"files_changed":7,"insertions":122,"deletions":9,"files":["CHANGELOG","README.md","docs/parsers/jar_manifest.md","jc/__init__.py","jc/parsers/jar_manifest.py","man/jc.1","setup.py"]},"message":"doc update","epoch":1641150052,"epoch_utc":null},{"commit":"b128d9109cbdb1176f2473d450023bb0be02531b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 10:51:02 2022 -0800","stats":{"files_changed":1,"insertions":46,"deletions":0,"files":["tests/test_jar_manifest.py"]},"message":"add MANIFEST.MF tests","epoch":1641149462,"epoch_utc":null},{"commit":"929d7273a422c2bd5b83e5e19d32630f1a027f75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 10:29:56 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/jar_manifest.py"]},"message":"doc updates","epoch":1641148196,"epoch_utc":null},{"commit":"2a40f842743a8745d651b4b6cae645045e6c6aab","author":"shaik","author_email":"shai.kustin@torq.io","date":"Sun Jan 2 17:11:20 2022 +0200","stats":{"files_changed":4,"insertions":22,"deletions":1,"files":["jc/parsers/csv.py","tests/fixtures/generic/csv-doubleqouted.csv","tests/fixtures/generic/csv-doubleqouted.json","tests/test_csv.py"]},"message":"fix doubleqoute in csv","epoch":1641172280,"epoch_utc":null},{"commit":"9ff6fa818f0857321e4b3b089d288997f2ae27af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jan 1 10:08:40 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add jar-manifest","epoch":1641060520,"epoch_utc":null},{"commit":"dac73a4bfe24e36474fdf6ff60c23e784ca409bd","merge":"d789554 f733100","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jan 1 10:06:46 2022 -0800","message":"Merge pull request #189 from kellyjonbrazil/master\n\nuse github releases instead of packaging site","epoch":1641060406,"epoch_utc":null},{"commit":"d7895547f74744e82317eabe4c870115701872be","merge":"f8e09ae b7d439c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jan 1 10:04:47 2022 -0800","message":"Merge pull request #188 from listuser/new_branch\n\nCreate key value pairs from a MANIFEST.MF file, to include key multiline value pairs.","epoch":1641060287,"epoch_utc":null},{"commit":"b7d439cb870e443e4f4e4a2137ab170835e77eff","author":"listuser","author_email":null,"date":"Fri Dec 31 12:15:50 2021 -0800","stats":{"files_changed":3,"insertions":2220,"deletions":9,"files":["jc/parsers/{jar-manifest.py => jar_manifest.py}","tests/fixtures/rhel-8/MANIFEST.MF.MULTI.json","tests/fixtures/rhel-8/MANIFEST.MF.MULTI.out"]},"message":"Renamed jar-manifest.py to jar_manifest.py, added multi manifest outputs to tests...","epoch":1640981750,"epoch_utc":null},{"commit":"7cc903a5f5ca368be97babadc72689375567a901","author":"listuser","author_email":null,"date":"Thu Dec 30 15:10:53 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/jar-manifest.py"]},"message":"Removed inflating from examples in jar-manifest.py","epoch":1640905853,"epoch_utc":null},{"commit":"c495a8291bd3e1fd070ee2e018b9b550f9c86314","author":"listuser","author_email":null,"date":"Thu Dec 30 15:06:06 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":292,"files":["tests/fixtures/rhel-8/MANIFEST.MF.json"]},"message":"Updated test output in MANIFEST.MF.json","epoch":1640905566,"epoch_utc":null},{"commit":"5e1d7d777c627fb17feda6e51d9640bbd0f03302","author":"listuser","author_email":null,"date":"Thu Dec 30 15:02:48 2021 -0800","stats":{"files_changed":8,"insertions":304,"deletions":2544,"files":["jc/parsers/{metamf.py => jar-manifest.py}","tests/fixtures/rhel-8/MANIFEST.MF.json",".../rhel-8/{MANIFEST.MF => MANIFEST.MF.out}",".../rhel-8/cmds_used_to_generate_test_data.txt",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out"]},"message":"Renamed metamf.py to jar-manifest.py, plus other changes","epoch":1640905368,"epoch_utc":null},{"commit":"7edad3f676fe5560017ca9cb05ede6f46787e78f","author":"listuser","author_email":null,"date":"Wed Dec 29 12:15:15 2021 -0800","stats":{"files_changed":8,"insertions":3042,"deletions":0,"files":["jc/parsers/metamf.py","tests/fixtures/rhel-8/MANIFEST.MF","tests/fixtures/rhel-8/MANIFEST.MF.json",".../rhel-8/cmds_used_to_generate_test_data.txt",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out"]},"message":"Create key value pairs from a MANIFEST.MF file, to include key multiline value pairs.","epoch":1640808915,"epoch_utc":null},{"commit":"f7331001d4ab976e311458a16b6e5337da2e3aab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 23 11:35:39 2021 -0800","stats":{"files_changed":3,"insertions":9,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"]},"message":"use github releases instead of packaging site","epoch":1640288139,"epoch_utc":null},{"commit":"f8e09ae2ffe185d21305d566fad20f510df9890f","merge":"2e4f5a5 433c7cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 15:46:39 2021 -0600","message":"Merge pull request #187 from kellyjonbrazil/master\n\nsync to dev","epoch":1640130399,"epoch_utc":null},{"commit":"433c7cc0f05e321ffe024845a908f3e856d4cd2b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 13:42:24 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/zipinfo.md","jc/parsers/zipinfo.py"]},"message":"formatting","epoch":1640122944,"epoch_utc":null},{"commit":"d753e71a7452310d45fa605a2e4c70320ed60dbb","merge":"3ac8d03 2e4f5a5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 15:21:18 2021 -0600","message":"Merge pull request #186 from kellyjonbrazil/dev\n\nDev v1.17.5","epoch":1640128878,"epoch_utc":null},{"commit":"2e4f5a508b6c90f9e03dcbcf64efc0e2fc446666","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 12:19:17 2021 -0800","stats":{"files_changed":4,"insertions":6,"deletions":3,"files":["CHANGELOG","jc/__init__.py","man/jc.1","setup.py"]},"message":"version bump","epoch":1640117957,"epoch_utc":null},{"commit":"88b960eff6cb3739d0d243c8d8b3e8ad5b8eb97c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 12:14:20 2021 -0800","stats":{"files_changed":4,"insertions":144,"deletions":1,"files":["EXAMPLES.md","README.md","docs/parsers/zipinfo.md","man/jc.1"]},"message":"doc update","epoch":1640117660,"epoch_utc":null},{"commit":"88c77bd89e2c2a5f023e6638816c9153b6276d35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 12:08:16 2021 -0800","stats":{"files_changed":2,"insertions":47,"deletions":0,"files":["tests/fixtures/osx-10.14.6/zipinfo-multi.json","tests/test_zipinfo.py"]},"message":"add zipinfo tests","epoch":1640117296,"epoch_utc":null},{"commit":"51a7a4251fff518d8da78ffa41e7ba2e2cb47f12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 11:11:56 2021 -0800","stats":{"files_changed":1,"insertions":24,"deletions":0,"files":["tests/fixtures/osx-10.14.6/zipinfo-multi.out"]},"message":"add multi-archive test output","epoch":1640113916,"epoch_utc":null},{"commit":"51d2f316f388d962c26aeb4f42affebec339e5a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 11:11:44 2021 -0800","stats":{"files_changed":1,"insertions":97,"deletions":72,"files":["jc/parsers/zipinfo.py"]},"message":"add multi-archive support","epoch":1640113904,"epoch_utc":null},{"commit":"ff78a46c4854339a097992701351ef471aff1671","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 08:13:17 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"add zipinfo parser","epoch":1640103197,"epoch_utc":null},{"commit":"ed4a9dc1d470f64bcc9de35b2d98568ffd50257d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 08:13:00 2021 -0800","stats":{"files_changed":1,"insertions":21,"deletions":23,"files":["jc/parsers/zipinfo.py"]},"message":"formatting","epoch":1640103180,"epoch_utc":null},{"commit":"63182dba26040974cb8cada6f5910bb29b1fa3ed","merge":"b450697 9c1eaa9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 10:08:46 2021 -0600","message":"Merge pull request #185 from listuser/new_branch\n\ncontributed zipinfo parser","epoch":1640110126,"epoch_utc":null},{"commit":"9c1eaa938934269fe4179da798acf5f119cde0cf","author":"Matt J","author_email":"none","date":"Mon Dec 20 21:53:34 2021 -0800","stats":{"files_changed":2,"insertions":68,"deletions":61,"files":["jc/parsers/zipinfo.py","tests/fixtures/rhel-8/zipinfo.json"]},"message":"revised zipinfo.py nested version","epoch":1640066014,"epoch_utc":null},{"commit":"bc520fcbcdfad6a53e51944391fd24512bed8128","author":"Matt J","author_email":"none","date":"Mon Dec 20 14:29:50 2021 -0800","stats":{"files_changed":2,"insertions":63,"deletions":53,"files":["jc/parsers/zipinfo.py","tests/fixtures/rhel-8/zipinfo.json"]},"message":"added zipinfo.py nested version","epoch":1640039390,"epoch_utc":null},{"commit":"46faac1a12a5b39d6a25427f6e8fdcca1204dbcd","author":"Matt J","author_email":"none","date":"Sun Dec 19 17:44:56 2021 -0800","stats":{"files_changed":2,"insertions":1222,"deletions":0,"files":["tests/fixtures/rhel-8/zipinfo.json","tests/fixtures/rhel-8/zipinfo.out"]},"message":"add test data zipinfo.json and zipinfo.out","epoch":1639964696,"epoch_utc":null},{"commit":"3c424c0cb3cff462a963183585b57bea004e974f","author":"Matt J","author_email":"none","date":"Sun Dec 19 14:05:48 2021 -0800","stats":{"files_changed":1,"insertions":165,"deletions":0,"files":["jc/parsers/zipinfo.py"]},"message":"initial commit zipinfo.py to new_branch","epoch":1639951548,"epoch_utc":null},{"commit":"3ac8d0362b4fb9999fc55a60a9cb20ac80d114f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 16 07:04:35 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"use quotes around python versions","epoch":1639667075,"epoch_utc":null},{"commit":"d88b998e6c7826a9ecae18663328e2d2915030fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 9 10:58:06 2021 -0800","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"]},"message":"formatting","epoch":1639076286,"epoch_utc":null},{"commit":"a9ed55c00652a563391a7930c7a4649967131ae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 9 10:54:04 2021 -0800","stats":{"files_changed":11,"insertions":11,"deletions":11,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]},"message":"fix spelling","epoch":1639076044,"epoch_utc":null},{"commit":"ea614341232e5272ee0c7fd46ba0f313033c761f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 9 10:21:37 2021 -0800","stats":{"files_changed":4,"insertions":16,"deletions":8,"files":["docs/parsers/crontab.md","docs/parsers/crontab_u.md","jc/parsers/crontab.py","jc/parsers/crontab_u.py"]},"message":"fix schema docs","epoch":1639074097,"epoch_utc":null},{"commit":"a73d0d26cbe2860b8374661068e09e0717a3bab2","merge":"a7de911 b450697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 20:49:01 2021 -0800","message":"Merge pull request #184 from kellyjonbrazil/dev\n\nDev 1.17.4","epoch":1639025341,"epoch_utc":null},{"commit":"b4506976e3c865397bc657183d49c484d8bcfd7a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 11:21:12 2021 -0800","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["man/jc.1","templates/manpage_template"]},"message":"formatting","epoch":1638991272,"epoch_utc":null},{"commit":"34cb75a09697a06c3878f2f9a84eb3bd2a90ae62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:46:00 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/__init__.py","setup.py"]},"message":"version bump","epoch":1638981960,"epoch_utc":null},{"commit":"34df643f60712ae25645cb7cddff80e43c12262b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:35:09 2021 -0800","stats":{"files_changed":4,"insertions":18,"deletions":0,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"add disable colors section","epoch":1638981309,"epoch_utc":null},{"commit":"ac7c13fcc013d386f34db51d634298fa3e97eccd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:22:28 2021 -0800","stats":{"files_changed":4,"insertions":11,"deletions":1,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"add -C option to docs","epoch":1638980548,"epoch_utc":null},{"commit":"4fdb34c7d5fcaa65e2ccab814c3acf2f0f70c442","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:19:43 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"add no-color.org","epoch":1638980383,"epoch_utc":null},{"commit":"7ac468e35aac1a63c4e22f33aead74a6e41a22a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:14:36 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update","epoch":1638980076,"epoch_utc":null},{"commit":"df190aa299f1669d1fe09380026ae086839abc02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:14:28 2021 -0800","stats":{"files_changed":1,"insertions":15,"deletions":7,"files":["jc/cli.py"]},"message":"add -C option to force color even with pipes","epoch":1638980068,"epoch_utc":null},{"commit":"9621475e86fe20fcdc2902b6ce7860a833ae2ca0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 7 15:46:02 2021 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update","epoch":1638920762,"epoch_utc":null},{"commit":"82e0160de820ad2ed6143f58458711d600b929a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 7 15:45:11 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"refactor NO_COLOR test","epoch":1638920711,"epoch_utc":null},{"commit":"d03fb8b626a97e81006d0b108c8f400fe4e2ce3b","merge":"b300dfb 7933dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 7 15:34:23 2021 -0800","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev","epoch":1638920063,"epoch_utc":null},{"commit":"b300dfb3d75fe76e2ddbb087ff742dd0b5e6155b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 7 15:34:20 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"Add support for NO_COLOR env variable","epoch":1638920060,"epoch_utc":null},{"commit":"a7de9111d97e687cafbc0709ec3ff7453d658a80","merge":"21e69a7 7933dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 16:37:46 2021 -0800","message":"Merge pull request #183 from kellyjonbrazil/dev\n\nDev v1.17.3","epoch":1638491866,"epoch_utc":null},{"commit":"7933dfdbe7bf400833d6f6b771362dfc518b9a8d","merge":"f7cb5f7 21e69a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 16:34:06 2021 -0800","message":"Merge branch 'master' into dev","epoch":1638491646,"epoch_utc":null},{"commit":"f7cb5f7d01ac01538bee4da816408072b585768e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 16:30:47 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"update date","epoch":1638491447,"epoch_utc":null},{"commit":"a26a298f1a3c141171e7d7ce459a27a297cec031","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 11:42:56 2021 -0800","stats":{"files_changed":4,"insertions":148,"deletions":1,"files":["README.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","man/jc.1"]},"message":"doc update","epoch":1638474176,"epoch_utc":null},{"commit":"dbd134d0dac2fc152183480958fd9e65919ac98d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 11:40:47 2021 -0800","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/iostat_s.py"]},"message":"add examples to docs","epoch":1638474047,"epoch_utc":null},{"commit":"11aa01b0d9d6913059f98f9bd7591d7cad9037cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 11:38:00 2021 -0800","stats":{"files_changed":15,"insertions":15,"deletions":1,"files":["jc/parsers/iostat_s.py","tests/fixtures/centos-7.7/iostat-1-streaming.json","tests/fixtures/centos-7.7/iostat-m-streaming.json","tests/fixtures/centos-7.7/iostat-mx-streaming.json","tests/fixtures/centos-7.7/iostat-streaming.json","tests/fixtures/centos-7.7/iostat-x-streaming.json","tests/fixtures/ubuntu-18.04/iostat-1-streaming.json","tests/fixtures/ubuntu-18.04/iostat-m-streaming.json","tests/fixtures/ubuntu-18.04/iostat-mx-streaming.json","tests/fixtures/ubuntu-18.04/iostat-streaming.json","tests/fixtures/ubuntu-18.04/iostat-x-streaming.json","tests/fixtures/ubuntu-20.10/iostat-m-streaming.json","tests/fixtures/ubuntu-20.10/iostat-mx-streaming.json","tests/fixtures/ubuntu-20.10/iostat-streaming.json","tests/fixtures/ubuntu-20.10/iostat-x-streaming.json"]},"message":"iostat-s tests","epoch":1638473880,"epoch_utc":null},{"commit":"6f18e5344356684e845ec63158c570d82156254f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 11:37:52 2021 -0800","stats":{"files_changed":1,"insertions":203,"deletions":0,"files":["tests/test_iostat_s.py"]},"message":"fix for null lines","epoch":1638473872,"epoch_utc":null},{"commit":"7b467c466568ad4e7986d4d7cf3ec606681b6d46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 09:30:16 2021 -0800","stats":{"files_changed":9,"insertions":137,"deletions":0,"files":["tests/fixtures/ubuntu-20.10/iostat-m.json","tests/fixtures/ubuntu-20.10/iostat-m.out","tests/fixtures/ubuntu-20.10/iostat-mx.json","tests/fixtures/ubuntu-20.10/iostat-mx.out","tests/fixtures/ubuntu-20.10/iostat-x.json","tests/fixtures/ubuntu-20.10/iostat-x.out","tests/fixtures/ubuntu-20.10/iostat.json","tests/fixtures/ubuntu-20.10/iostat.out","tests/test_iostat.py"]},"message":"add ubuntu 20.10 tests","epoch":1638466216,"epoch_utc":null},{"commit":"537b8f263087894c02b5b7c121765cf96182a370","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 09:14:43 2021 -0800","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"]},"message":"add more int conversions","epoch":1638465283,"epoch_utc":null},{"commit":"4d823575e791999e200dedd491511c4fde64fc2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 08:47:25 2021 -0800","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"]},"message":"add more float fields","epoch":1638463645,"epoch_utc":null},{"commit":"541aa1d09f20ff6979eabaa66790decb3895f18d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 08:41:36 2021 -0800","stats":{"files_changed":2,"insertions":68,"deletions":8,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"]},"message":"Add new field float conversions for iostat v11","epoch":1638463296,"epoch_utc":null},{"commit":"8f02021014b7b19acf1a8bbd777161aa82c65d66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 05:54:38 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/iostat_s.py"]},"message":"formatting","epoch":1638453278,"epoch_utc":null},{"commit":"158a15157c7e5dde95dc21766d0696bd82486688","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:47:17 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update","epoch":1638406037,"epoch_utc":null},{"commit":"2752e0d66a9ba0b57ac86913fd302ada23c280c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:47:09 2021 -0800","stats":{"files_changed":2,"insertions":166,"deletions":0,"files":["jc/cli.py","jc/parsers/iostat_s.py"]},"message":"add iostat streaming parser","epoch":1638406029,"epoch_utc":null},{"commit":"6c11e912afe3c4d16da9199b5c2fc10461928ac3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:14:22 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"update changelog","epoch":1638404062,"epoch_utc":null},{"commit":"43d34461e27e3e4ac5f985786831c170b348c7c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:12:51 2021 -0800","stats":{"files_changed":83,"insertions":279,"deletions":81,"files":["README.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/utils.md","man/jc.1"]},"message":"update docs","epoch":1638403971,"epoch_utc":null},{"commit":"4dfdc9b0f65d8c950ed74545d0cc3f95c8abec6c","merge":"e2311cb 6665ffa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:02:10 2021 -0800","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev","epoch":1638403330,"epoch_utc":null},{"commit":"e2311cbb03f407414df953c8d1c07d0cf1a549ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:02:06 2021 -0800","stats":{"files_changed":21,"insertions":400,"deletions":0,"files":["tests/fixtures/centos-7.7/iostat-1.json","tests/fixtures/centos-7.7/iostat-1.out","tests/fixtures/centos-7.7/iostat-m.json","tests/fixtures/centos-7.7/iostat-m.out","tests/fixtures/centos-7.7/iostat-mx.json","tests/fixtures/centos-7.7/iostat-mx.out","tests/fixtures/centos-7.7/iostat-x.json","tests/fixtures/centos-7.7/iostat-x.out","tests/fixtures/centos-7.7/iostat.json","tests/fixtures/centos-7.7/iostat.out","tests/fixtures/ubuntu-18.04/iostat-1.json","tests/fixtures/ubuntu-18.04/iostat-1.out","tests/fixtures/ubuntu-18.04/iostat-m.json","tests/fixtures/ubuntu-18.04/iostat-m.out","tests/fixtures/ubuntu-18.04/iostat-mx.json","tests/fixtures/ubuntu-18.04/iostat-mx.out","tests/fixtures/ubuntu-18.04/iostat-x.json","tests/fixtures/ubuntu-18.04/iostat-x.out","tests/fixtures/ubuntu-18.04/iostat.json","tests/fixtures/ubuntu-18.04/iostat.out","tests/test_iostat.py"]},"message":"add iostat tests","epoch":1638403326,"epoch_utc":null},{"commit":"bf15575e90985cfec5c57dd11dfa2b86d53a41be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:01:52 2021 -0800","stats":{"files_changed":1,"insertions":14,"deletions":7,"files":["jc/parsers/iostat.py"]},"message":"fixes for ubunut","epoch":1638403312,"epoch_utc":null},{"commit":"406336c7185b539b5e00532b58146d5b1b73f259","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 13:53:31 2021 -0800","stats":{"files_changed":1,"insertions":44,"deletions":0,"files":["EXAMPLES.md"]},"message":"add iostat example","epoch":1638395611,"epoch_utc":null},{"commit":"6665ffaeb8107e9db3b917db0663beaf44024533","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 10:59:07 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"remove python 3.6 from tests","epoch":1638385147,"epoch_utc":null},{"commit":"dcf552ca0c69aa5f0309a83dc33dee7c5ed81292","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 10:34:55 2021 -0800","stats":{"files_changed":1,"insertions":138,"deletions":47,"files":["jc/parsers/iostat.py"]},"message":"add _process and cleanup","epoch":1638383695,"epoch_utc":null},{"commit":"7a6ebf3c9555dd82df7dc0b71981cdd32ce0061d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 16:54:32 2021 -0800","stats":{"files_changed":2,"insertions":171,"deletions":0,"files":["jc/cli.py","jc/parsers/iostat.py"]},"message":"add iostat parser","epoch":1638320072,"epoch_utc":null},{"commit":"d2dc4a983c86c538e13e568b908072de4ca0daaf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 11:59:26 2021 -0800","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"]},"message":"changelog update","epoch":1638302366,"epoch_utc":null},{"commit":"1168259bc23862f671326d41f5282a3575205214","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 11:57:04 2021 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"]},"message":"add doc strings","epoch":1638302224,"epoch_utc":null},{"commit":"e8e4b46021557fbf5776c32dff46de022817fb6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 11:49:40 2021 -0800","stats":{"files_changed":5,"insertions":14,"deletions":19,"files":["jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]},"message":"use jc.utils type checks","epoch":1638301780,"epoch_utc":null},{"commit":"12d2de22821fd8f57f4d412e62f53db3d89d5e30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 11:43:06 2021 -0800","stats":{"files_changed":77,"insertions":181,"deletions":165,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/utils.py"]},"message":"use jc.utils.input_type_check() and simplify compatibility check","epoch":1638301386,"epoch_utc":null},{"commit":"0e2fe401e1c49a9f947d7d17b72cfc4e90787f47","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 10:08:27 2021 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]},"message":"version bump","epoch":1638295707,"epoch_utc":null},{"commit":"14247adb0ae007924ca551a706eb0cfdbae97a41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 10:03:59 2021 -0800","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["jc/parsers/csv_s.py","tests/test_csv_s.py"]},"message":"add input type checks","epoch":1638295439,"epoch_utc":null},{"commit":"3a9f0934c41c85ea7fa87165b9559f08814645cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 09:56:33 2021 -0800","stats":{"files_changed":2,"insertions":5,"deletions":3,"files":["jc/parsers/ls_s.py","tests/test_ls_s.py"]},"message":"add input type checks","epoch":1638294993,"epoch_utc":null},{"commit":"caf0a5c8713bf0d72951a2c6fd5a2c62c9eb59d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 09:51:27 2021 -0800","stats":{"files_changed":2,"insertions":7,"deletions":4,"files":["jc/parsers/vmstat_s.py","tests/test_vmstat_s.py"]},"message":"add input type checking","epoch":1638294687,"epoch_utc":null},{"commit":"cfb58b1cf3e3028f8e03fdd93f0165cf8d230e1e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 09:41:16 2021 -0800","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/parsers/foo_s.py"]},"message":"add input type checks","epoch":1638294076,"epoch_utc":null},{"commit":"975cf195cc02774f50460ca479d9ebb7b73c7870","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 09:40:49 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping_s.py"]},"message":"formatting","epoch":1638294049,"epoch_utc":null},{"commit":"8a46a259a36efc55bb0b2141acb9dd5ae52b7725","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 09:19:51 2021 -0800","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["jc/parsers/ping_s.py","tests/test_ping_s.py"]},"message":"add input type checks","epoch":1638292791,"epoch_utc":null},{"commit":"e395142e599aa78b4a7ec80dcc3f8ccf279f97b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 29 16:45:22 2021 -0800","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"]},"message":"version bump","epoch":1638233122,"epoch_utc":null},{"commit":"caaeaf0d67cf44f8d2651cc53a7528d3ef0c74d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 29 16:29:23 2021 -0800","stats":{"files_changed":76,"insertions":227,"deletions":227,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"add 'str' type check on input","epoch":1638232163,"epoch_utc":null},{"commit":"21e69a7cbf62240238f6fb78e874dda6ce2e922a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 24 19:33:07 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"]},"message":"ignore _config.yml","epoch":1637811187,"epoch_utc":null},{"commit":"603964935b58e02cf0614cf67ffacc6d94755e05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 24 19:30:10 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CHANGELOG"]},"message":"remove trailing whitespace","epoch":1637811010,"epoch_utc":null},{"commit":"47eb83ae55b9892716fff712bd2be21b6191b552","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 24 13:32:51 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"]},"message":"add .vscode","epoch":1637789571,"epoch_utc":null},{"commit":"fc0ce6c95923ab124961e695a26c0b68dd0f359f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 22 09:45:14 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"add streaming parser to custom parsers info","epoch":1637603114,"epoch_utc":null},{"commit":"077a29fb4eedcfccb026498c5c3a64b7b7601363","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 22 09:36:58 2021 -0800","stats":{"files_changed":2,"insertions":14,"deletions":2,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"]},"message":"add _jc_meta field info","epoch":1637602618,"epoch_utc":null},{"commit":"8568d0d328706a7a5b1476452e078d8cbe7b7391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 22 09:10:11 2021 -0800","stats":{"files_changed":3,"insertions":7,"deletions":3,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py","man/jc.1"]},"message":"fix csv_s documentation","epoch":1637601011,"epoch_utc":null},{"commit":"597d39c28ea0c0fe3b072413e9d91ab5e27b62bd","merge":"b59e38c eb888dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 18 06:52:01 2021 -1000","message":"Merge pull request #180 from kellyjonbrazil/dev\n\nDev v1.17.2","epoch":1637247121,"epoch_utc":null},{"commit":"eb888dcbbcf83c9197bd59aab72f65ea6eb622ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 18 08:48:03 2021 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["jc/__init__.py","man/jc.1","setup.py"]},"message":"version bump","epoch":1637254083,"epoch_utc":null},{"commit":"d1b9ac0841b15ee15690c4066453a322618320ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 18 08:41:52 2021 -0800","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/df.md","docs/parsers/netstat.md","docs/parsers/ping.md","man/jc.1"]},"message":"doc update","epoch":1637253712,"epoch_utc":null},{"commit":"89a6d9c5c39b74f1b040f410659bfd7ae1a902d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 17 12:03:40 2021 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/df.py"]},"message":"add key-check to restore previous behavior even with non-df data","epoch":1637179420,"epoch_utc":null},{"commit":"85d983761637129cb85abfb0bbdde7c507061cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 17 11:41:54 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add df info","epoch":1637178114,"epoch_utc":null},{"commit":"cd7731484d826d84d835ecd460d746e78cadc5fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 17 11:26:42 2021 -0800","stats":{"files_changed":4,"insertions":62,"deletions":2,"files":["jc/parsers/df.py","tests/fixtures/generic/df-long-filesystem.json","tests/fixtures/generic/df-long-filesystem.out","tests/test_df.py"]},"message":"fix for cases where the Filesystem data overflows the column length (happens on older versions of df)","epoch":1637177202,"epoch_utc":null},{"commit":"086da16b1743c16a5ccdd102f889fb31f99e3caa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 15 13:05:53 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"version bump","epoch":1637010353,"epoch_utc":null},{"commit":"20830528f04a5ecbe78420d8008249b089667767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 15 12:52:43 2021 -0800","stats":{"files_changed":4,"insertions":28,"deletions":0,"files":["CHANGELOG","tests/fixtures/generic/netstat-old.json","tests/fixtures/generic/netstat-old.out","tests/test_netstat.py"]},"message":"add test for older netstat version fix","epoch":1637009563,"epoch_utc":null},{"commit":"83371edd8fe3d23dfa92fc707604086522c85ab9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 15 12:25:22 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat_linux.py"]},"message":"add space before inode to compensate for removed dash","epoch":1637007922,"epoch_utc":null},{"commit":"364a81decc16742e3caa070d90b1d605d96fe2c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 4 10:25:51 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ping.py"]},"message":"version bump","epoch":1636046751,"epoch_utc":null},{"commit":"ef09592ad3e5c9a77c1bdebe8f876fc4dde54834","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 4 10:21:38 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["CHANGELOG"]},"message":"update for 1.17.2","epoch":1636046498,"epoch_utc":null},{"commit":"4a86e109ccb254d5195b782f84f3967c96ef726c","merge":"5ba22da 7fa5391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 4 10:18:47 2021 -0700","message":"Merge pull request #179 from shaikustin/ping-alpine-linux\n\nsupport alpine linux ping","epoch":1636046327,"epoch_utc":null},{"commit":"7fa5391b6613e62689c624041e03f9750c9c7972","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 4 10:13:44 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_ping.py"]},"message":"change alpine ping6 to ping","epoch":1636046024,"epoch_utc":null},{"commit":"9b53ba5714819ff760f2d4546f5d2ee4d521c080","author":"shaik","author_email":"shai.kustin@torq.io","date":"Thu Nov 4 13:42:48 2021 +0200","stats":{"files_changed":6,"insertions":45,"deletions":1,"files":["jc/parsers/ping.py",".../fixtures/alpine-linux-3.13/ping-hostname.json","tests/fixtures/alpine-linux-3.13/ping-hostname.out","tests/fixtures/alpine-linux-3.13/ping-ip.json","tests/fixtures/alpine-linux-3.13/ping-ip.out","tests/test_ping.py"]},"message":"support alpine linux ping","epoch":1636058568,"epoch_utc":null},{"commit":"b59e38cfd2c8a7f5868e05d5562557b1c27e5e56","merge":"30cff5f 5ba22da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 30 14:02:25 2021 -0700","message":"Merge pull request #176 from kellyjonbrazil/dev\n\nDev v1.17.1","epoch":1635627745,"epoch_utc":null},{"commit":"5ba22dae597b9d154ca0a82f71cfbd8d8a6325db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 30 13:57:36 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"]},"message":"add JSON lines info","epoch":1635627456,"epoch_utc":null},{"commit":"4232e523acc523e510b4881d2a57a95b88ec8c8b","merge":"bee80b3 30cff5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 30 13:49:45 2021 -0700","message":"Merge branch 'master' into dev","epoch":1635626985,"epoch_utc":null},{"commit":"bee80b35d2b8c15e6233f2798e9c02a11e9e1e9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 30 13:47:21 2021 -0700","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["CHANGELOG","docs/parsers/csv_s.md","man/jc.1"]},"message":"update for version bump","epoch":1635626841,"epoch_utc":null},{"commit":"c32395f6950d6294770ee93e8bf4d79c7d275ac3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 27 12:54:20 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_utils.py"]},"message":"linting","epoch":1635364460,"epoch_utc":null},{"commit":"735c5e1078cc27b5cba03b8ebbae15aeca6b8fbd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 12:26:23 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["tests/test_csv_s.py"]},"message":"update comments for ParseError test: https://bugs.python.org/issue45617","epoch":1635276383,"epoch_utc":null},{"commit":"d09c94b292ca3beec92a00f8a51b7259dd30a1e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 12:24:49 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add python 3.10 testing info","epoch":1635276289,"epoch_utc":null},{"commit":"4d04866f48f72b9ea0d213dc1533729d3b68a503","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 12:24:37 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/csv_s.py"]},"message":"add python bug https://bugs.python.org/issue45617 info","epoch":1635276277,"epoch_utc":null},{"commit":"a2d90f4dfcdc2cb00c6c0fa957493c95a21e256b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 10:04:39 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_csv_s.py"]},"message":"force test","epoch":1635267879,"epoch_utc":null},{"commit":"93a5002c8b530bd6f5f81e5d8595cde1f836ae41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 10:01:02 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"fix 3.10.0 version number","epoch":1635267662,"epoch_utc":null},{"commit":"23bf5227a4c39ea017e55fc21150331e1af6fdb7","merge":"77c96fa 3f5a1f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 07:44:04 2021 -0700","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev","epoch":1635259444,"epoch_utc":null},{"commit":"77c96fa2a96148221bde7d2274e0dfb5386a166f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 07:43:47 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["tests/test_csv_s.py"]},"message":"try tests on python 3.10","epoch":1635259427,"epoch_utc":null},{"commit":"3f5a1f015e9c0807e227b9f7300592e25502e014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 07:42:37 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"add python 3.10","epoch":1635259357,"epoch_utc":null},{"commit":"b280c4fc18e60a85ab212b09aa5bf3a05a0eceff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 07:36:44 2021 -0700","stats":{"files_changed":2,"insertions":11,"deletions":19,"files":[".../fixtures/generic/csv-insurance-streaming.json","tests/test_csv_s.py"]},"message":"add ParseError test to streaming csv parser","epoch":1635259004,"epoch_utc":null},{"commit":"3ab9b43a2eebf535be98c94810ac474bf32ec515","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 07:36:23 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/csv_s.py"]},"message":"raise ParseError on newline bug","epoch":1635258983,"epoch_utc":null},{"commit":"46f568414a5c8d2f135486e86d0ada48cfcefeb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 25 11:35:01 2021 -0700","stats":{"files_changed":3,"insertions":96,"deletions":89,"files":["tests/test_ls_s.py","tests/test_ping_s.py","tests/test_vmstat_s.py"]},"message":"change streaming parser test names","epoch":1635186901,"epoch_utc":null},{"commit":"cba2fd299fff09a551b780e064a6e22bdf7e539a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 25 11:03:32 2021 -0700","stats":{"files_changed":9,"insertions":75,"deletions":61,"files":[".../generic/csv-10k-sales-records-streaming.json","tests/fixtures/generic/csv-deniro-streaming.json","tests/fixtures/generic/csv-example-streaming.json","tests/fixtures/generic/csv-flyrna-streaming.json","tests/fixtures/generic/csv-flyrna2-streaming.json",".../fixtures/generic/csv-homes-pipe-streaming.json","tests/fixtures/generic/csv-homes-streaming.json",".../fixtures/generic/csv-insurance-streaming.json","tests/test_csv_s.py"]},"message":"add tests","epoch":1635185012,"epoch_utc":null},{"commit":"1e6e44f656f1bbb277eb38fb485f7b48e3b9e40b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 25 11:03:21 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/csv_s.py"]},"message":"fix for piping data with non-platform newlines (e.g. windows csv files on unix)","epoch":1635185001,"epoch_utc":null},{"commit":"acac0399946d9781193e9350dd7109f1dd3999fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 25 10:06:01 2021 -0700","stats":{"files_changed":3,"insertions":149,"deletions":0,"files":["tests/fixtures/generic/csv-biostats-streaming.json","tests/fixtures/generic/csv-cities-streaming.json","tests/test_csv_s.py"]},"message":"working tests","epoch":1635181561,"epoch_utc":null},{"commit":"50a3b340164b3139f04f67a2bee16e5343c8a2da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 25 10:05:39 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":8,"files":["jc/parsers/csv_s.py"]},"message":"optimizations and use iter() so we can exhaust data coming from list objects","epoch":1635181539,"epoch_utc":null},{"commit":"b45396070cf28fa36ecb44acd7be3e3bb81a712d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 24 13:14:05 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_vmstat_s.py"]},"message":"update comment","epoch":1635106445,"epoch_utc":null},{"commit":"218b9aec8ac397e26e6cd4ff407f3d10ef88ea9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 24 13:10:47 2021 -0700","stats":{"files_changed":4,"insertions":87,"deletions":48,"files":["README.md","docs/parsers/csv_s.md","jc/parsers/csv_s.py","man/jc.1"]},"message":"doc update for streaming CSV parser","epoch":1635106247,"epoch_utc":null},{"commit":"2b887debc647bd533040e392465967d12869cb02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 24 12:24:44 2021 -0700","stats":{"files_changed":4,"insertions":10172,"deletions":1,"files":["CHANGELOG","jc/cli.py","jc/parsers/csv_s.py","tests/fixtures/generic/csv-10k-sales-records.csv"]},"message":"add csv streaming parser","epoch":1635103484,"epoch_utc":null},{"commit":"0313e3f8ca0e22e1575192d765d5afedf48e94df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 24 11:21:47 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":6,"files":["jc/parsers/lsusb.py"]},"message":"linting","epoch":1635099707,"epoch_utc":null},{"commit":"1669e6e20c3af3d28968558b76d0901a56775ac0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 24 10:58:13 2021 -0700","stats":{"files_changed":1,"insertions":23,"deletions":28,"files":["jc/parsers/lsusb.py"]},"message":"linting","epoch":1635098293,"epoch_utc":null},{"commit":"ef6de75dda90c7221d53e0e0a942f0cac2247354","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 13:11:22 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["tests/test_utils.py"]},"message":"add vmstat timestamp tests to utils","epoch":1635019882,"epoch_utc":null},{"commit":"a6bcec425a3f44ba3c7cd06b5ebaf522b66df109","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:55:14 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"]},"message":"comment update","epoch":1635018914,"epoch_utc":null},{"commit":"596ad9a64d002ced212b08512126e52707fe73d2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:47:44 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"]},"message":"update comment","epoch":1635018464,"epoch_utc":null},{"commit":"7a91c93319f75c37ba6bf268d8270947f0bf8b22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:40:24 2021 -0700","stats":{"files_changed":1,"insertions":122,"deletions":0,"files":["EXAMPLES.md"]},"message":"add lsusb","epoch":1635018024,"epoch_utc":null},{"commit":"b5f7b35f89197879a9f13bd8fa5d2a0c77cc059a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:30:18 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"]},"message":"comment update","epoch":1635017418,"epoch_utc":null},{"commit":"2f47fb7f14c4ff0e1c835897d94ee81d14590aba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:24:35 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["tests/test_uname.py"]},"message":"fix ParseError tests","epoch":1635017075,"epoch_utc":null},{"commit":"1b214c403657a50689f2a04892ce836dea669a1d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:24:11 2021 -0700","stats":{"files_changed":3,"insertions":30,"deletions":0,"files":["jc/parsers/lsusb.py","tests/fixtures/generic/lsusb-t.out","tests/test_lsusb.py"]},"message":"raise ParseError if -t option is detected. add test","epoch":1635017051,"epoch_utc":null},{"commit":"8f94f8acc6bb53bbb19ba150551c7df2183a8863","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 11:56:12 2021 -0700","stats":{"files_changed":11,"insertions":384,"deletions":3,"files":["README.md","docs/parsers/file.md","docs/parsers/lsusb.md","docs/parsers/uname.md","man/jc.1","tests/fixtures/centos-7.7/lsusb-v-single.json","tests/fixtures/centos-7.7/lsusb-v.json","tests/fixtures/centos-7.7/lsusb.json","tests/fixtures/generic/lsusb-test-attributes.json","tests/fixtures/generic/lsusb-test-attributes2.json","tests/test_lsusb.py"]},"message":"add tests and update docs","epoch":1635015372,"epoch_utc":null},{"commit":"3a2a69cfa55e2f40d7536d923170a5cfc986998e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 11:39:08 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/parsers/lsusb.py"]},"message":"formatting","epoch":1635014348,"epoch_utc":null},{"commit":"f599c659881248b79c6dbc86d85a61311c9d3434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 11:08:26 2021 -0700","stats":{"files_changed":2,"insertions":464,"deletions":0,"files":["tests/fixtures/generic/lsusb-test-attributes.out","tests/fixtures/generic/lsusb-test-attributes2.out"]},"message":"add stress test examples","epoch":1635012506,"epoch_utc":null},{"commit":"ad12849fd9fc2177afb30740acc63cf284dc394b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 11:08:05 2021 -0700","stats":{"files_changed":1,"insertions":138,"deletions":26,"files":["jc/parsers/lsusb.py"]},"message":"update docs example and","epoch":1635012485,"epoch_utc":null},{"commit":"f36b3789e8df6673207d6c2d3d0796acfdfe011d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:39:02 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsusb.py"]},"message":"formatting","epoch":1634942342,"epoch_utc":null},{"commit":"6d18c0ba61cd188dbff736f1be47b7362c841687","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:37:40 2021 -0700","stats":{"files_changed":1,"insertions":47,"deletions":47,"files":["jc/parsers/lsusb.py"]},"message":"change variable name last_attribute and last_attr to last_item","epoch":1634942260,"epoch_utc":null},{"commit":"17097abec9567a58b5a5f7bbed11ecfd69cbd28c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:28:44 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":6,"files":["jc/parsers/lsusb.py"]},"message":"formatting","epoch":1634941724,"epoch_utc":null},{"commit":"b7ddd3b285f205211394edc70b611171cf72a4c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:23:04 2021 -0700","stats":{"files_changed":1,"insertions":22,"deletions":22,"files":["jc/parsers/lsusb.py"]},"message":"change variable names","epoch":1634941384,"epoch_utc":null},{"commit":"75b23f62c9d7b33907af92964d1a6234332fbc78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:18:55 2021 -0700","stats":{"files_changed":1,"insertions":35,"deletions":7,"files":["jc/parsers/lsusb.py"]},"message":"working configuration_descriptor and device_descriptor attributes","epoch":1634941135,"epoch_utc":null},{"commit":"f88967b2a59d79e053554d1e141f71e9d2d87456","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:02:04 2021 -0700","stats":{"files_changed":1,"insertions":126,"deletions":21,"files":["jc/parsers/lsusb.py"]},"message":"add attribute lists up to interface_association","epoch":1634940124,"epoch_utc":null},{"commit":"ba2846664b35b2e94aa905431c55c029b24a64e3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 13:40:01 2021 -0700","stats":{"files_changed":1,"insertions":22,"deletions":2,"files":["jc/parsers/lsusb.py"]},"message":"edpoint_descriptors attributes working","epoch":1634935201,"epoch_utc":null},{"commit":"10dba37ca2624e05eff246ef49df8ebd3f275d86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 12:49:57 2021 -0700","stats":{"files_changed":1,"insertions":28,"deletions":1,"files":["jc/parsers/lsusb.py"]},"message":"hub_descriptor attributes working","epoch":1634932197,"epoch_utc":null},{"commit":"0e6f938514965503f1d86d56c047f9f8fc03ac65","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 10:31:26 2021 -0700","stats":{"files_changed":1,"insertions":36,"deletions":45,"files":["jc/parsers/lsusb.py"]},"message":"working hub_port_status section","epoch":1634923886,"epoch_utc":null},{"commit":"159d87c1126f4d79d5e34837bc2c353a5445803b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 07:14:21 2021 -0700","stats":{"files_changed":3,"insertions":18,"deletions":7,"files":["jc/parsers/uname.py","tests/fixtures/centos-7.7/uname.out","tests/test_uname.py"]},"message":"add length guard and test for uname with no -a on linux","epoch":1634912061,"epoch_utc":null},{"commit":"9e7b1621cf232e9859bdf018737e536820f380a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 21 16:59:28 2021 -0700","stats":{"files_changed":1,"insertions":18,"deletions":18,"files":["jc/parsers/lsusb.py"]},"message":"device_status working","epoch":1634860768,"epoch_utc":null},{"commit":"2057817ef8fec85b2a978b682e7fe8bc16def828","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 20 15:59:27 2021 -0700","stats":{"files_changed":11,"insertions":89,"deletions":0,"files":["tests/fixtures/debian10/uname-a.json","tests/fixtures/debian10/uname-a.out","tests/fixtures/freebsd12/uname-a.json","tests/fixtures/freebsd12/uname-a.out","tests/fixtures/freebsd12/uname-a2.json","tests/fixtures/freebsd12/uname-a2.out","tests/fixtures/generic/uname-a-different-proc.json","tests/fixtures/generic/uname-a-different-proc.out","tests/fixtures/generic/uname-a.json","tests/fixtures/generic/uname-a.out","tests/test_uname.py"]},"message":"add uname tests","epoch":1634770767,"epoch_utc":null},{"commit":"a1eabad2d37bb0d0e9407edf7305e223eba67da2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 20 15:58:43 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/uname.py"]},"message":"add comments","epoch":1634770723,"epoch_utc":null},{"commit":"92bf2b1ca2a172d3977d6e3c36b5ca1a8c2bab63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 20 15:27:14 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":20,"files":["CHANGELOG","jc/parsers/uname.py"]},"message":"simplify fixup logic for uname","epoch":1634768834,"epoch_utc":null},{"commit":"2b2123a4ba9b77d2089d367fe85dcb5d2857a295","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 20 07:34:37 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","jc/parsers/uname.py"]},"message":"add FreeBSD support","epoch":1634740477,"epoch_utc":null},{"commit":"908b2f9200ddcce4beb531a3c90908786b6a5b02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 19 16:16:25 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"]},"message":"add items","epoch":1634685385,"epoch_utc":null},{"commit":"deff0c7bfdf942b8d7e7bd140219e08bf80a50cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 19 16:05:10 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":5,"files":["jc/parsers/uname.py"]},"message":"remove print debug","epoch":1634684710,"epoch_utc":null},{"commit":"7cd01efa64029775042a2c145997ce30ef6b4f6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 19 16:01:56 2021 -0700","stats":{"files_changed":1,"insertions":25,"deletions":1,"files":["jc/parsers/uname.py"]},"message":"fixup for cases where the 'process' and/or 'machine' fields are blank on linux","epoch":1634684516,"epoch_utc":null},{"commit":"2dbe56456bbea2bdfce7eacbf8b9f10a1b249f55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 15 11:43:15 2021 -0700","stats":{"files_changed":1,"insertions":49,"deletions":39,"files":["jc/parsers/lsusb.py"]},"message":"add nested_dict. start work on hub_port_status and device_status","epoch":1634323395,"epoch_utc":null},{"commit":"6078a411ef612be8bad012aa404f34ebd74a1fd7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 13 11:07:09 2021 -0600","stats":{"files_changed":1,"insertions":79,"deletions":4,"files":["jc/parsers/lsusb.py"]},"message":"add initial schema doc","epoch":1634148429,"epoch_utc":null},{"commit":"4a3656562f161a51f5cb6f0e9ccd271859b78d62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 13 07:26:31 2021 -0600","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["jc/parsers/lsusb.py"]},"message":"del null keys","epoch":1634135191,"epoch_utc":null},{"commit":"ba75989a24839907723ed7c3d7a497473d489a34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 22:51:45 2021 -0600","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/lsusb.py"]},"message":"update comments","epoch":1634104305,"epoch_utc":null},{"commit":"9e9e2c362894f0072ab839565829881d750c8912","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 22:40:39 2021 -0600","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsusb.py"]},"message":"move state instantiation before has_data test","epoch":1634103639,"epoch_utc":null},{"commit":"9a2a8c6b61a46a9bfb5a4492b86774a4a78672ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 22:38:03 2021 -0600","stats":{"files_changed":1,"insertions":20,"deletions":52,"files":["jc/parsers/lsusb.py"]},"message":"shorten set_sections","epoch":1634103483,"epoch_utc":null},{"commit":"dae42ef1619441637672d634f9e5d7ab26115f09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 15:55:09 2021 -0600","stats":{"files_changed":1,"insertions":18,"deletions":1,"files":["jc/parsers/lsusb.py"]},"message":"add hub_port_status and device_status","epoch":1634079309,"epoch_utc":null},{"commit":"931f2cab78bda180443535c04b532d04c6e88dd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 12:38:40 2021 -0700","stats":{"files_changed":1,"insertions":14,"deletions":11,"files":["jc/parsers/lsusb.py"]},"message":"add hub_descriptor","epoch":1634067520,"epoch_utc":null},{"commit":"72b061bed4453686d264ccf8977cba6c2a4794ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 12:29:59 2021 -0700","stats":{"files_changed":1,"insertions":32,"deletions":8,"files":["jc/parsers/lsusb.py"]},"message":"add endpoint_descriptors","epoch":1634066999,"epoch_utc":null},{"commit":"29a7c73990d9620b15a4010d17fc9a9a859f44b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 11:24:49 2021 -0700","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/parsers/lsusb.py"]},"message":"add hid_device_descriptor and report_descriptors","epoch":1634063089,"epoch_utc":null},{"commit":"2d1d68e3007f76d4c34ac07ae822935ab6021e79","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 09:57:47 2021 -0700","stats":{"files_changed":1,"insertions":87,"deletions":88,"files":["jc/parsers/lsusb.py"]},"message":"simplify populate_lists. Add CDC lists","epoch":1634057867,"epoch_utc":null},{"commit":"c5c1e170d1f502de5c76e9e481a23b26ffcaf237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 11 21:33:18 2021 -0700","stats":{"files_changed":1,"insertions":111,"deletions":76,"files":["jc/parsers/lsusb.py"]},"message":"interface descriptors working","epoch":1634013198,"epoch_utc":null},{"commit":"9c1bb66452838e704ef2277f313bb51a42dc03b9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 11 07:48:23 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/lsusb.py"]},"message":"fix remove _state field during schema_populate","epoch":1633963703,"epoch_utc":null},{"commit":"a4f3306bae90fbc807fdd9ff2ce71e25d36a663f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 10 22:18:13 2021 -0700","stats":{"files_changed":1,"insertions":69,"deletions":28,"files":["jc/parsers/lsusb.py"]},"message":"initial schema build. need to figure out why deleting _state from output_line causes exceptions","epoch":1633929493,"epoch_utc":null},{"commit":"1bc638b6ee7a820406ba4b84d3408f7cd4fe779d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 10 10:03:39 2021 -0700","stats":{"files_changed":1,"insertions":36,"deletions":32,"files":["jc/parsers/lsusb.py"]},"message":"add bus_list and add all device_list data to the list","epoch":1633885419,"epoch_utc":null},{"commit":"9ad0cd9dae8822235c37159541ce72471eb4263e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 9 20:05:55 2021 -0700","stats":{"files_changed":1,"insertions":116,"deletions":211,"files":["jc/parsers/lsusb.py"]},"message":"now storing state within the objects to make building the schema (later) easier.","epoch":1633835155,"epoch_utc":null},{"commit":"6d4a4691276d8659253b2ac8f8bdbd71a1fece7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 6 22:03:16 2021 -0700","stats":{"files_changed":1,"insertions":356,"deletions":333,"files":["jc/parsers/lsusb.py"]},"message":"use class for state","epoch":1633582996,"epoch_utc":null},{"commit":"ed6997e3ff2e575a6d4daa7d7a2cbe7dddacdd4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 5 16:47:23 2021 -0700","stats":{"files_changed":2,"insertions":170,"deletions":34,"files":["jc/parsers/lsusb.py","tests/fixtures/centos-7.7/lsusb-v-single.out"]},"message":"add interface_association section","epoch":1633477643,"epoch_utc":null},{"commit":"eb788fca6e25eea1fa8a43b22360c852ecf5af35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 5 14:59:49 2021 -0700","stats":{"files_changed":4,"insertions":919,"deletions":0,"files":["jc/cli.py","jc/parsers/lsusb.py","tests/fixtures/centos-7.7/lsusb-v.out","tests/fixtures/centos-7.7/lsusb.out"]},"message":"somewhat working lsusb parser. needs a lot more TLC","epoch":1633471189,"epoch_utc":null},{"commit":"9186f5f37739012b8c04c776310a20ef55b1469f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 2 14:53:07 2021 -0700","stats":{"files_changed":7,"insertions":99,"deletions":4,"files":["CHANGELOG","jc/__init__.py","jc/parsers/file.py","setup.py","tests/fixtures/osx-10.14.6/file3.json","tests/fixtures/osx-10.14.6/file3.out","tests/test_file.py"]},"message":"fix file parser for gzip cases (has ': ' in the description, which is the delimiter)","epoch":1633211587,"epoch_utc":null},{"commit":"30cff5f28140a5b20a617c8145c13e43b7b6685b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 27 10:35:08 2021 -0700","stats":{"files_changed":8,"insertions":17,"deletions":3,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","man/jc.1"]},"message":"add note that the streaming parser outputs JSON Lines","epoch":1632764108,"epoch_utc":null},{"commit":"b724e0969a0d6b22bed0c77eb8d629381179ea3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 20:22:16 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"]},"message":"-qq instead of -q","epoch":1632712936,"epoch_utc":null},{"commit":"a62c49e8715873b068a96da5021ea24a783acd6b","merge":"77dcbc5 9b160f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 16:35:29 2021 -0700","message":"Merge pull request #172 from kellyjonbrazil/master\n\nsync master to dev","epoch":1632699329,"epoch_utc":null},{"commit":"9b160f6279bbbf0c15413c98922eef137ba2f3f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 16:29:36 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]},"message":"link update","epoch":1632698976,"epoch_utc":null},{"commit":"338a4e2612f70bb3e2af31f61a7db75f647293fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 16:27:15 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]},"message":"formatting","epoch":1632698835,"epoch_utc":null},{"commit":"0140688750be61dd752059ee66734ab1c7a8f30e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 16:24:18 2021 -0700","stats":{"files_changed":6,"insertions":8,"deletions":4,"files":["README.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","templates/readme_template"]},"message":"link updates","epoch":1632698658,"epoch_utc":null},{"commit":"73e5ea98c1ca2b9299085e3832791162eca3b9ff","merge":"528aac7 77dcbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 14:55:18 2021 -0700","message":"Merge pull request #170 from kellyjonbrazil/dev\n\njc v1.17.0 from dev","epoch":1632693318,"epoch_utc":null},{"commit":"77dcbc544da271edab5de5ad209117e98c846f9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 14:50:02 2021 -0700","stats":{"files_changed":3,"insertions":2,"deletions":3,"files":["CHANGELOG","jc/__init__.py","man/jc.1"]},"message":"final doc update","epoch":1632693002,"epoch_utc":null},{"commit":"c7bcb0947ae32acc9cdba7a6975d2f2557f10a39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 13:20:42 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"]},"message":"indent subsequent error and warning lines","epoch":1632687642,"epoch_utc":null},{"commit":"5cd3f7f71d38b560a88dd6057e9c7a94991a3d71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 13:15:35 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/foo_s.py"]},"message":"Add example to raise ParseError if there is no output data to yield","epoch":1632687335,"epoch_utc":null},{"commit":"5044388ab2e8d7d8b427fd51b0ab875611bd127f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 13:04:27 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":3,"files":["jc/parsers/vmstat_s.py","tests/test_vmstat_s.py"]},"message":"raise if line data is unrecognized","epoch":1632686667,"epoch_utc":null},{"commit":"ee075db59819d80e4dcb60ddbd9cfe2fd529dfe9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 12:00:30 2021 -0700","stats":{"files_changed":4,"insertions":5,"deletions":7,"files":["jc/cli.py","jc/parsers/foo_s.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"]},"message":"linting","epoch":1632682830,"epoch_utc":null},{"commit":"9904e0be61e7c81b907bf3770f111346daeff481","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Sep 25 08:28:57 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/utils.md","jc/utils.py"]},"message":"formatting","epoch":1632583737,"epoch_utc":null},{"commit":"31b69b3242eeca2c02f87c31d58193dd3f06fe49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Sep 25 08:23:46 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/utils.md","jc/utils.py"]},"message":"formatting","epoch":1632583426,"epoch_utc":null},{"commit":"e6a80fea3228122dd84e17672c835c0460ad1342","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Sep 25 08:19:34 2021 -0700","stats":{"files_changed":3,"insertions":7,"deletions":7,"files":["docs/utils.md","jc/utils.py","man/jc.1"]},"message":"formatting","epoch":1632583174,"epoch_utc":null},{"commit":"d6aec00e038d1ecfe43c13a6909d50630455b372","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 16:45:38 2021 -0700","stats":{"files_changed":4,"insertions":27,"deletions":1,"files":["tests/fixtures/ubuntu-18.04/vmstat-1-long-streaming.json","tests/fixtures/ubuntu-18.04/vmstat-1-long.json","tests/test_vmstat.py","tests/test_vmstat_s.py"]},"message":"add vmstat-1-long tests","epoch":1632527138,"epoch_utc":null},{"commit":"4aa7d81e11ea7fcfbb5c9d74337cde617b1a0d5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 16:27:11 2021 -0700","stats":{"files_changed":3,"insertions":50,"deletions":2,"files":["jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","tests/fixtures/ubuntu-18.04/vmstat-1-long.out"]},"message":"ignore re-printed header rows in output","epoch":1632526031,"epoch_utc":null},{"commit":"48cdabc3b0862d6291e1ec59ab385e0e146c31eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 10:11:15 2021 -0700","stats":{"files_changed":4,"insertions":16,"deletions":0,"files":["docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"]},"message":"document timestamps","epoch":1632503475,"epoch_utc":null},{"commit":"a1791ef5479749692c79bbe98fc7687d70cd6cda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 10:01:13 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"]},"message":"linting","epoch":1632502873,"epoch_utc":null},{"commit":"7bc87f6c2d4cfcfa656a1c1b8973a4c0414c85d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 09:24:30 2021 -0700","stats":{"files_changed":8,"insertions":8,"deletions":8,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","man/jc.1"]},"message":"change _meta to _jc_meta","epoch":1632500670,"epoch_utc":null},{"commit":"bbed9e274b8252ba0518140fe7fc97029310771f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 09:16:44 2021 -0700","stats":{"files_changed":1,"insertions":154,"deletions":159,"files":["jc/parsers/ping_s.py"]},"message":"linting","epoch":1632500204,"epoch_utc":null},{"commit":"486282b9856f5e56cf43ee1399d8e7cb78353b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 08:52:39 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/vmstat_s.py"]},"message":"linting","epoch":1632498759,"epoch_utc":null},{"commit":"a4d45b653f794033978940da14910f5d607a8254","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 08:49:37 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["jc/parsers/foo_s.py","jc/parsers/vmstat.py"]},"message":"linting","epoch":1632498577,"epoch_utc":null},{"commit":"22e151b01c0f97c141d912c9646e46df0320d622","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 08:43:09 2021 -0700","stats":{"files_changed":2,"insertions":56,"deletions":60,"files":["jc/cli.py","jc/utils.py"]},"message":"linting","epoch":1632498189,"epoch_utc":null},{"commit":"7a4ebcd1ecdb4929aae70e44b4f9b6b5ab52b393","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 21:22:01 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CONTRIBUTING.md"]},"message":"language hints","epoch":1632457321,"epoch_utc":null},{"commit":"651cbfe02fbb354c4caf8e0d022655642e7caed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 21:20:25 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"add streaming foo parser","epoch":1632457225,"epoch_utc":null},{"commit":"8c3e764516e1c28961b09380b638a57ce98b1261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 21:17:17 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"add streaming parser to contrib guidelines","epoch":1632457037,"epoch_utc":null},{"commit":"b4e75da7e3f23502723ce8b2a7261b376f296864","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 21:14:47 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1632456887,"epoch_utc":null},{"commit":"37223f086cabc8db5962415bd161fed151dafb9d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 21:13:21 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1632456801,"epoch_utc":null},{"commit":"a404033735c2c8075a8e08194197eae59db70afd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 20:54:44 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add error and warning message wrap info","epoch":1632455684,"epoch_utc":null},{"commit":"b7433ed085c0ba22ea0d49330871a651a8d83fb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 20:53:31 2021 -0700","stats":{"files_changed":6,"insertions":80,"deletions":41,"files":["docs/utils.md","jc/cli.py","jc/parsers/file.py","jc/parsers/ls.py","jc/parsers/traceroute.py","jc/utils.py"]},"message":"auto wrap warning and error messages","epoch":1632455611,"epoch_utc":null},{"commit":"224d3d65ada4216e28e142d411b0c2c3358517b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 13:15:38 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"Add exception class name to error message","epoch":1632428138,"epoch_utc":null},{"commit":"a349fb0bdabaf74503831f22c4efbd02254f809d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 13:08:31 2021 -0700","stats":{"files_changed":3,"insertions":10,"deletions":8,"files":["README.md","docs/utils.md","man/jc.1"]},"message":"change _meta to _jc_meta","epoch":1632427711,"epoch_utc":null},{"commit":"e7ddcfb83fb295034db44ade407476ff3a962cd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 13:07:10 2021 -0700","stats":{"files_changed":5,"insertions":14,"deletions":12,"files":["jc/utils.py","templates/manpage_template","templates/readme_template",".../centos-7.7/ping-ip-O-streaming-ignore-exceptions.json","tests/test_ping_s.py"]},"message":"change _meta to _jc_meta","epoch":1632427630,"epoch_utc":null},{"commit":"abd20dfe3662f65373ac582c70aa740e53b52f68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 12:58:24 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"formatting","epoch":1632427104,"epoch_utc":null},{"commit":"dc1fd3ef1be41aee349b159059f1febff76f6caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 11:54:58 2021 -0700","stats":{"files_changed":4,"insertions":12,"deletions":12,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"fix -qq docs","epoch":1632423298,"epoch_utc":null},{"commit":"98a7686db46fbd3ed98382867976249f307d0015","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 11:48:39 2021 -0700","stats":{"files_changed":18,"insertions":160,"deletions":152,"files":["README.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","docs/utils.md","jc/cli.py","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","jc/utils.py","man/jc.1","templates/manpage_template","templates/readme_template","... => ping-ip-O-streaming-ignore-exceptions.json}","tests/test_ls_s.py","tests/test_ping_s.py","tests/test_vmstat_s.py"]},"message":"use -qq to ignore streaming exceptions","epoch":1632422919,"epoch_utc":null},{"commit":"9c6c6c4330fc68115be012de254161f36e3a8328","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 09:04:37 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"add next() info","epoch":1632413077,"epoch_utc":null},{"commit":"f9be5651daa891e06ad0acd8980ffc0fe51fd29d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:59:26 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":6,"files":["README.md","templates/readme_template"]},"message":"add language hints","epoch":1632412766,"epoch_utc":null},{"commit":"df9835a3e62bb2b3b6ec8b55f06a25a00a799d92","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:57:14 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1632412634,"epoch_utc":null},{"commit":"92363be2dd633bdd3c2dd07c72ebd281d2cb4565","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:56:14 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"fix streaming python module example","epoch":1632412574,"epoch_utc":null},{"commit":"31b62030156f9c826fe5c7d127e9dd0ace582dd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:54:15 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1632412455,"epoch_utc":null},{"commit":"18805858d685d456f9a38540bbaedbaa1a411546","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:53:25 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["man/jc.1","templates/manpage_template"]},"message":"formatting","epoch":1632412405,"epoch_utc":null},{"commit":"e676f0e20fb6e96a536c4d182b0d287cdc1ad0f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:53:14 2021 -0700","stats":{"files_changed":2,"insertions":36,"deletions":6,"files":["README.md","templates/readme_template"]},"message":"add streaming parser info for python module use","epoch":1632412394,"epoch_utc":null},{"commit":"20652edefaa7705b8ba756bae3944ff362a295a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 20:11:26 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["CHANGELOG"]},"message":"update changelog","epoch":1632366686,"epoch_utc":null},{"commit":"98c29d07478093e78f53ec633f2dd08cafc3e3ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 19:54:12 2021 -0700","stats":{"files_changed":8,"insertions":120,"deletions":0,"files":["tests/fixtures/centos-7.7/vmstat-a.json","tests/fixtures/centos-7.7/vmstat-at-5-10.json","tests/fixtures/centos-7.7/vmstat-awt.json","tests/fixtures/centos-7.7/vmstat-d.json","tests/fixtures/centos-7.7/vmstat-dt.json","tests/fixtures/centos-7.7/vmstat-w.json","tests/fixtures/centos-7.7/vmstat.json","tests/test_vmstat.py"]},"message":"add vmstat tests","epoch":1632365652,"epoch_utc":null},{"commit":"41a6311f6b3ed2cc94919d042aed51c46cdf3e2f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 19:34:44 2021 -0700","stats":{"files_changed":9,"insertions":132,"deletions":1,"files":["tests/fixtures/centos-7.7/vmstat-a-streaming.json",".../centos-7.7/vmstat-at-5-10-streaming.json",".../fixtures/centos-7.7/vmstat-awt-streaming.json","tests/fixtures/centos-7.7/vmstat-d-streaming.json","tests/fixtures/centos-7.7/vmstat-dt-streaming.json","tests/fixtures/centos-7.7/vmstat-streaming.json","tests/fixtures/centos-7.7/vmstat-w-streaming.json","tests/test_ping_s.py","tests/test_vmstat_s.py"]},"message":"add streaming parser tests","epoch":1632364484,"epoch_utc":null},{"commit":"978760ec57e04e3ec347c8764bfad015b6dddbff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 19:32:20 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"add exception class name to error string","epoch":1632364340,"epoch_utc":null},{"commit":"d410425537817964ceb7b61e0fdff6c03fdf8766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:43:26 2021 -0700","stats":{"files_changed":4,"insertions":136,"deletions":136,"files":["docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"]},"message":"replace single quotes with double quotes in doc","epoch":1632347006,"epoch_utc":null},{"commit":"6b7430329cbe1bfb95b47bcfe031906641c127e1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:38:13 2021 -0700","stats":{"files_changed":5,"insertions":269,"deletions":1,"files":["README.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat_s.py","man/jc.1"]},"message":"doc update","epoch":1632346693,"epoch_utc":null},{"commit":"40fe0d4a6081a1233bf5c3eb51a01da1f12bc4dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:34:46 2021 -0700","stats":{"files_changed":1,"insertions":141,"deletions":22,"files":["jc/parsers/vmstat_s.py"]},"message":"working parser","epoch":1632346486,"epoch_utc":null},{"commit":"365c5354a0349e470558d15243217a064e73da38","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:34:32 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/vmstat.py"]},"message":"remove debug print statement","epoch":1632346472,"epoch_utc":null},{"commit":"b246a05cbb4c1c564f81b3e72cecb62edbe6ced6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:34:19 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"fix vmstat-s name","epoch":1632346459,"epoch_utc":null},{"commit":"9e5a7a4abb8668d043625951a05eb5733cbbd56f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:07:09 2021 -0700","stats":{"files_changed":7,"insertions":37,"deletions":0,"files":["tests/fixtures/centos-7.7/vmstat-a.out","tests/fixtures/centos-7.7/vmstat-at-5-10.out","tests/fixtures/centos-7.7/vmstat-awt.out","tests/fixtures/centos-7.7/vmstat-d.out","tests/fixtures/centos-7.7/vmstat-dt.out","tests/fixtures/centos-7.7/vmstat-w.out","tests/fixtures/centos-7.7/vmstat.out"]},"message":"add vmstat sample output","epoch":1632344829,"epoch_utc":null},{"commit":"f266acbccafc040c375723147b8e5d7fddb1e697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:06:51 2021 -0700","stats":{"files_changed":1,"insertions":106,"deletions":14,"files":["jc/parsers/vmstat.py"]},"message":"add processing logic","epoch":1632344811,"epoch_utc":null},{"commit":"4e3b471f1801f1b9006b18cae2a3d816f361262e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:06:28 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/utils.py"]},"message":"add format for vmstat","epoch":1632344788,"epoch_utc":null},{"commit":"5e28736c2e0c951e71e6531e03a9619279d95d3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 12:08:20 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"]},"message":"add vmstat and vmstat_s","epoch":1632337700,"epoch_utc":null},{"commit":"a91913a3b517ea0dbb25d6e4cc92850eb2fde5ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 12:07:27 2021 -0700","stats":{"files_changed":1,"insertions":106,"deletions":0,"files":["jc/parsers/vmstat_s.py"]},"message":"streaming parser template","epoch":1632337647,"epoch_utc":null},{"commit":"90c64f0ae0d97d025adee40970d89baca79ee4ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 12:07:09 2021 -0700","stats":{"files_changed":1,"insertions":182,"deletions":0,"files":["jc/parsers/vmstat.py"]},"message":"initial working parser","epoch":1632337629,"epoch_utc":null},{"commit":"7cc642ed1a476abda709ac9b79900a1de12e1ef7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 12:06:56 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/foo_s.py"]},"message":"formatting","epoch":1632337616,"epoch_utc":null},{"commit":"809f64d35a92bb3d7380fa9d78ac1421a10b81fc","merge":"ff0fda4 a6f859a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 22:58:18 2021 -0700","message":"Merge pull request #169 from kellyjonbrazil/streaming\n\nStreaming to dev","epoch":1632290298,"epoch_utc":null},{"commit":"a6f859a55edae50fcc185948736218404cfaa929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 22:47:48 2021 -0700","stats":{"files_changed":18,"insertions":168,"deletions":153,"files":[".../osx-10.14.6/ping-hostname-p-streaming.json",".../osx-10.14.6/ping-hostname-s-streaming.json",".../osx-10.14.6/ping-hostname-streaming.json",".../osx-10.14.6/ping-ip-dup-streaming.json",".../fixtures/osx-10.14.6/ping-ip-p-streaming.json",".../fixtures/osx-10.14.6/ping-ip-s-streaming.json","tests/fixtures/osx-10.14.6/ping-ip-streaming.json",".../osx-10.14.6/ping-ip-unreachable-streaming.json",".../osx-10.14.6/ping6-hostname-p-streaming.json",".../osx-10.14.6/ping6-hostname-s-streaming.json",".../osx-10.14.6/ping6-hostname-streaming.json",".../osx-10.14.6/ping6-ip-dup-streaming.json",".../fixtures/osx-10.14.6/ping6-ip-p-streaming.json",".../fixtures/osx-10.14.6/ping6-ip-s-streaming.json","tests/fixtures/osx-10.14.6/ping6-ip-streaming.json","tests/fixtures/pi/ping-ip-O-D-streaming.json","tests/fixtures/pi/ping-ip-O-streaming.json","tests/test_ping_s.py"]},"message":"add final ping_s tests","epoch":1632289668,"epoch_utc":null},{"commit":"39ef88078f43708e470d3c1b2fd95e76b5cbeb08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 22:47:02 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/ping_s.py"]},"message":"add destination_ip to error lines","epoch":1632289622,"epoch_utc":null},{"commit":"aeea5e8d2eab2fef3e14637f512aed7b117c4a3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 22:00:05 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/test_ls_s.py"]},"message":"formatting","epoch":1632286805,"epoch_utc":null},{"commit":"1a0700bff4bdebbd9f1f92f2fc7a56c4d5ed6925","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 21:58:59 2021 -0700","stats":{"files_changed":31,"insertions":240,"deletions":213,"files":[".../fedora32/ping-hostname-O-D-p-s-streaming.json",".../fedora32/ping-hostname-O-p-streaming.json",".../fedora32/ping-hostname-O-streaming.json","tests/fixtures/fedora32/ping-ip-O-D-streaming.json","tests/fixtures/fedora32/ping-ip-O-streaming.json",".../fedora32/ping6-hostname-O-D-p-s-streaming.json",".../fedora32/ping6-hostname-O-p-streaming.json",".../fedora32/ping6-ip-O-D-p-streaming.json",".../fixtures/fedora32/ping6-ip-O-p-streaming.json",".../freebsd12/ping-hostname-p-streaming.json",".../freebsd12/ping-hostname-s-streaming.json",".../freebsd12/ping-hostname-streaming.json","tests/fixtures/freebsd12/ping-ip-p-streaming.json","tests/fixtures/freebsd12/ping-ip-s-streaming.json","tests/fixtures/freebsd12/ping-ip-streaming.json",".../freebsd12/ping6-hostname-p-streaming.json",".../freebsd12/ping6-hostname-s-streaming.json",".../freebsd12/ping6-hostname-streaming.json","tests/fixtures/freebsd12/ping6-ip-p-streaming.json","tests/fixtures/freebsd12/ping6-ip-s-streaming.json","tests/fixtures/freebsd12/ping6-ip-streaming.json",".../ping-hostname-O-D-p-s-streaming.json",".../ubuntu-18.04/ping-hostname-O-p-streaming.json",".../ubuntu-18.04/ping-hostname-O-streaming.json",".../ubuntu-18.04/ping-ip-O-D-streaming.json",".../fixtures/ubuntu-18.04/ping-ip-O-streaming.json",".../ping6-hostname-O-D-p-s-streaming.json",".../ubuntu-18.04/ping6-hostname-O-p-streaming.json",".../ubuntu-18.04/ping6-ip-O-D-p-streaming.json",".../ubuntu-18.04/ping6-ip-O-p-streaming.json","tests/test_ping_s.py"]},"message":"add more ping-s tests","epoch":1632286739,"epoch_utc":null},{"commit":"b5fa6d068f240671eb948b055cd4f7bf127e0ec0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 16:03:00 2021 -0700","stats":{"files_changed":5,"insertions":25,"deletions":5,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"]},"message":"update docs","epoch":1632265380,"epoch_utc":null},{"commit":"1baec0b420feff068f2dc1e35499f78aa7d0a6e0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 15:43:02 2021 -0700","stats":{"files_changed":13,"insertions":815,"deletions":0,"files":[".../ping-hostname-O-D-p-s-streaming.json",".../centos-7.7/ping-hostname-O-p-streaming.json",".../centos-7.7/ping-hostname-O-streaming.json",".../fixtures/centos-7.7/ping-ip-O-D-streaming.json",".../centos-7.7/ping-ip-O-streaming-quiet.json","tests/fixtures/centos-7.7/ping-ip-O-streaming.json",".../fixtures/centos-7.7/ping-ip-dup-streaming.json",".../ping6-hostname-O-D-p-s-streaming.json",".../centos-7.7/ping6-hostname-O-p-streaming.json",".../centos-7.7/ping6-ip-O-D-p-streaming.json",".../centos-7.7/ping6-ip-O-p-streaming.json",".../centos-7.7/ping6-ip-dup-streaming.json","tests/test_ping_s.py"]},"message":"add some streaming tests","epoch":1632264182,"epoch_utc":null},{"commit":"4f2a4e1dee9d722d2aa5ddf2c082a358c88cf640","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 15:42:45 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/parsers/ping_s.py"]},"message":"skip blank lines and warning lines","epoch":1632264165,"epoch_utc":null},{"commit":"758d617668d1f9d0f27b52d46749e5b67a570cf1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 13:29:50 2021 -0700","stats":{"files_changed":5,"insertions":5,"deletions":5,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"]},"message":"doc update","epoch":1632256190,"epoch_utc":null},{"commit":"55322c37f57a9c8e28641a61928fad2329f5e50d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 12:36:36 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/foo_s.py"]},"message":"formatting","epoch":1632252996,"epoch_utc":null},{"commit":"d19ea5552bb3a379f7f92bcb58794c557ecc6647","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 12:33:05 2021 -0700","stats":{"files_changed":12,"insertions":193,"deletions":0,"files":["tests/fixtures/centos-7.7/ls-al-streaming.json","tests/fixtures/centos-7.7/ls-alR-streaming.json","tests/fixtures/centos-7.7/ls-alh-streaming.json","tests/fixtures/osx-10.14.6/ls-al-streaming.json","tests/fixtures/osx-10.14.6/ls-alR-streaming.json","tests/fixtures/osx-10.14.6/ls-alh-streaming.json",".../osx-10.14.6/ls-lR-empty-folder-streaming.json","tests/fixtures/ubuntu-18.04/ls-al-streaming.json","tests/fixtures/ubuntu-18.04/ls-alR-streaming.json","tests/fixtures/ubuntu-18.04/ls-alh-streaming.json",".../fixtures/ubuntu-18.04/ls-l-iso-streaming.json","tests/test_ls_s.py"]},"message":"add streaming ls parser tests","epoch":1632252785,"epoch_utc":null},{"commit":"130c3527c1083d399deef00ee8fcaa75f609b485","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 12:32:34 2021 -0700","stats":{"files_changed":6,"insertions":25,"deletions":25,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","man/jc.1"]},"message":"update docstrings","epoch":1632252754,"epoch_utc":null},{"commit":"3f221f471416766a860bd19850afda4899ee5eb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 13:21:20 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"]},"message":"doc update","epoch":1632169280,"epoch_utc":null},{"commit":"d64c4cb39056bb869fc117477612ae5ae2ef3d85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 13:04:26 2021 -0700","stats":{"files_changed":2,"insertions":141,"deletions":1,"files":["man/jc.1","templates/manpage_template"]},"message":"add streaming parsers section","epoch":1632168266,"epoch_utc":null},{"commit":"448c56aa46b72438e4a4c83b10a7eb889e3f50e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 13:04:14 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1632168254,"epoch_utc":null},{"commit":"9fbea15b6d031baa8c90f2602e39de7cf51408e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 11:59:54 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":8,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"]},"message":"rename state class to _state","epoch":1632164394,"epoch_utc":null},{"commit":"932060314b3c1ce518b9f57532e124285cb3ad0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 11:51:27 2021 -0700","stats":{"files_changed":2,"insertions":41,"deletions":11,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"]},"message":"doc update","epoch":1632163887,"epoch_utc":null},{"commit":"5e68ae50097cb339f3390449db7e3f189a716320","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 11:42:15 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/parsers/ping_s.py"]},"message":"import exception. tighten up os detection","epoch":1632163335,"epoch_utc":null},{"commit":"d03541beae44a4571a7d0481af01a5c19506207f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 11:24:59 2021 -0700","stats":{"files_changed":1,"insertions":12,"deletions":5,"files":["jc/parsers/ping_s.py"]},"message":"add docstring examples. add exception raise when OS cannot be detected.","epoch":1632162299,"epoch_utc":null},{"commit":"516fa571d90a0c93134c953c15ce84dd31b96b4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 19 21:41:35 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/ping_s.py"]},"message":"remove unused variable. use elif instead of if for linux vs. bsd detection","epoch":1632112895,"epoch_utc":null},{"commit":"a19c12096a8e8de02a6ff761cc9c13ec249d416e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 19 13:18:23 2021 -0700","stats":{"files_changed":1,"insertions":373,"deletions":143,"files":["jc/parsers/ping_s.py"]},"message":"initial working parser for both linux and bsd","epoch":1632082703,"epoch_utc":null},{"commit":"758f27945de4f0897405eba02c7908d815ce6e9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 15:09:56 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/ping_s.py"]},"message":"change data_bytes and bytes to sent_bytes and response_bytes","epoch":1631916596,"epoch_utc":null},{"commit":"8b1e8d58df22f8542ccaf7bf3e1eabe6132e7a42","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 14:44:49 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping_s.py"]},"message":"remove unneeded line","epoch":1631915089,"epoch_utc":null},{"commit":"b967489d085319facee077958deaa04956a98343","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 14:42:30 2021 -0700","stats":{"files_changed":1,"insertions":81,"deletions":40,"files":["jc/parsers/ping_s.py"]},"message":"complete linux coverage including summary","epoch":1631914950,"epoch_utc":null},{"commit":"870d0218be2641e3eddb114c23d54deb23155f25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 10:34:05 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"]},"message":"add unbuffer note","epoch":1631900045,"epoch_utc":null},{"commit":"84020bc2af294cb065105f1399453aefc98eb180","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 10:26:47 2021 -0700","stats":{"files_changed":7,"insertions":12,"deletions":6,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/utils.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","man/jc.1"]},"message":"change error_msg to error in -q result docs","epoch":1631899607,"epoch_utc":null},{"commit":"4efe5344e069ed921f208bcbbd097705be2d3b4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 10:20:22 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add links to HN and Reddit","epoch":1631899222,"epoch_utc":null},{"commit":"9182c545134b3d56d27d2c1d9bda678532bdc3fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 08:24:56 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":8,"files":["jc/utils.py"]},"message":"formatting","epoch":1631892296,"epoch_utc":null},{"commit":"28f0ab0b02d21fc060f1ac7181f85552798dc4bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 08:21:13 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/ls_s.py","jc/utils.py"]},"message":"update streaming error messages","epoch":1631892073,"epoch_utc":null},{"commit":"90d1a30696b2cbfbb06a55cc0cf920cf8ecd89aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 08:05:23 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1631891123,"epoch_utc":null},{"commit":"130b3738cc57fe261e8ef881a57b7836acd7e7e9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 22:32:46 2021 -0700","stats":{"files_changed":4,"insertions":21,"deletions":26,"files":["jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/utils.py"]},"message":"shorten successful yield to a single line","epoch":1631856766,"epoch_utc":null},{"commit":"92c7357615af7689db273aa78d666b35a2ec7a70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 22:04:44 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/foo_s.py"]},"message":"formatting","epoch":1631855084,"epoch_utc":null},{"commit":"c80f8633349c00ea461b8927f9949fe19b2f46ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 22:04:31 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/foo.py"]},"message":"simplify return condition formatting","epoch":1631855071,"epoch_utc":null},{"commit":"4642c20179d4643e0cf1970b264da7d9d91628de","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 21:55:40 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1631854540,"epoch_utc":null},{"commit":"5288eb22aadbbc1005b16428b94d2b07e9a75e3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 21:43:36 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"add info about streaming parser performance characteristics","epoch":1631853816,"epoch_utc":null},{"commit":"df8387a1a99df69eac5005662aaf56d506fa0efd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 21:37:54 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"streaming parsers cannot be used with the magic syntax","epoch":1631853474,"epoch_utc":null},{"commit":"cc38c27f44d3f088609b878304cab8eed75fc8f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 21:33:57 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1631853237,"epoch_utc":null},{"commit":"64f5357d69fe88b45d710d38948969699e1ca12f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 21:31:45 2021 -0700","stats":{"files_changed":2,"insertions":84,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add streaming parsers section","epoch":1631853105,"epoch_utc":null},{"commit":"51debb5649bef431e51e543f1c9270e2810aa58f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 20:45:01 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"]},"message":"add vmstat parser and change from linebuffer to unbuffer","epoch":1631850301,"epoch_utc":null},{"commit":"b48d05a4313b27cf5e69d3e4259542e0b131b60f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 20:41:56 2021 -0700","stats":{"files_changed":5,"insertions":15,"deletions":15,"files":["README.md","jc/cli.py","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"change from line buffer output to unbuffer output","epoch":1631850116,"epoch_utc":null},{"commit":"4e7f6b337db61b8a106cf958f6b874157909c87a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 20:26:56 2021 -0700","stats":{"files_changed":3,"insertions":17,"deletions":25,"files":["jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"]},"message":"simplify yield statements","epoch":1631849216,"epoch_utc":null},{"commit":"a509d99cafd80862721595ee59ccc4a471b5e5a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 20:25:28 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/utils.py"]},"message":"add stream_success dictionary","epoch":1631849128,"epoch_utc":null},{"commit":"481e45fb644ac88fa77ef35643b793f179fe6859","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 14 06:02:55 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"]},"message":"limit parse error msg lenght","epoch":1631624575,"epoch_utc":null},{"commit":"e9038e1720e1c0e520e2f29b718aa8505cbbb9a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 21:15:26 2021 -0700","stats":{"files_changed":1,"insertions":66,"deletions":0,"files":["docs/parsers/ping_s.md"]},"message":"initial streaming ping docs","epoch":1631592926,"epoch_utc":null},{"commit":"8fd9e582bf29275c4daaa3be88ea8d196411b34a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 21:15:08 2021 -0700","stats":{"files_changed":1,"insertions":15,"deletions":17,"files":["docs/parsers/ls_s.md"]},"message":"doc update","epoch":1631592908,"epoch_utc":null},{"commit":"c1fd6f48a5a3501499c9fca7239673b8555cc7c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 21:14:56 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["docs/utils.md"]},"message":"add stream_error docs","epoch":1631592896,"epoch_utc":null},{"commit":"af615c7f4b3f589ffc1b37cf9834062a04c013cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 21:14:38 2021 -0700","stats":{"files_changed":6,"insertions":26,"deletions":5,"files":["CHANGELOG","README.md","jc/cli.py","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"add line buffer output option","epoch":1631592878,"epoch_utc":null},{"commit":"bf0bc32d7ae6cabe07906207f4f08c2e81802c80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 20:51:24 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"flush streamed text for better piping experience","epoch":1631591484,"epoch_utc":null},{"commit":"2d6b53e012181a4c33bab441880c47c0fc0b0601","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 19:50:51 2021 -0700","stats":{"files_changed":1,"insertions":36,"deletions":42,"files":["jc/parsers/ping_s.py"]},"message":"add pattern support. move unparsable line detection to standard streaming parser style","epoch":1631587851,"epoch_utc":null},{"commit":"51271fea0fbd7bd63863ba05c399b4675dc5b4bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 19:27:34 2021 -0700","stats":{"files_changed":1,"insertions":139,"deletions":149,"files":["jc/parsers/ping_s.py"]},"message":"somewhat working parser","epoch":1631586454,"epoch_utc":null},{"commit":"2deb473e0bc96c0e39ec4074a6df4b941ba2172b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:36:36 2021 -0700","stats":{"files_changed":1,"insertions":262,"deletions":0,"files":["jc/parsers/ping_s.py"]},"message":"initial streaming ping parser","epoch":1631583396,"epoch_utc":null},{"commit":"23eeb33b3da43a679c3bf3f3643cfa552a1164e1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:36:19 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"modify stream_error message","epoch":1631583379,"epoch_utc":null},{"commit":"f50dfaef45632241f8f6972fa19bb17c54a457ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:31:52 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":13,"files":["jc/parsers/ls_s.py"]},"message":"use stream_error function for exceptions. raise on non -l ls output","epoch":1631583112,"epoch_utc":null},{"commit":"55bb71e9d466cc9ee5f7fd8eca1101c941cbcb35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:30:20 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"add streaming ping parser. update streaming exception message","epoch":1631583020,"epoch_utc":null},{"commit":"dab9357d286962b70224d6fafbf90a4c0cbc9980","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:29:49 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":12,"files":["jc/parsers/foo_s.py"]},"message":"use stream_error function for exceptions","epoch":1631582989,"epoch_utc":null},{"commit":"27eb427245b5126335cef0adb5e57522272474b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:29:10 2021 -0700","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/utils.py"]},"message":"add stream_error function","epoch":1631582950,"epoch_utc":null},{"commit":"260f3685d944ded84396ae3395773d6898803fb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 15:06:02 2021 -0700","stats":{"files_changed":1,"insertions":112,"deletions":0,"files":["jc/parsers/foo_s.py"]},"message":"add streaming parser template","epoch":1631570762,"epoch_utc":null},{"commit":"76e78fc0c34b88a90fef876eebef92bd71cd772c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 15:05:49 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":11,"files":["jc/parsers/ls_s.py"]},"message":"doc updates","epoch":1631570749,"epoch_utc":null},{"commit":"1ac944fa028a400ae7b39b811fcf368c9bf5e259","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 12:13:14 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/ls_s.py"]},"message":"add -q option info to docstring","epoch":1631560394,"epoch_utc":null},{"commit":"986bc9b042a940f8dd34f0541bcb9b5840df579e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 12:10:02 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":43,"files":["jc/parsers/ls_s.py"]},"message":"cleanup unused code","epoch":1631560202,"epoch_utc":null},{"commit":"5a7942069b1f3ef3b45992b482bfb6bb973f7e8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 10:56:05 2021 -0700","stats":{"files_changed":1,"insertions":28,"deletions":28,"files":["jc/parsers/ls_s.py"]},"message":"add support for parent field","epoch":1631555765,"epoch_utc":null},{"commit":"f6c6fc13ac4c779667807df12444a41ef28a8011","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 08:55:19 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/cli.py"]},"message":"enhance error msg when streaming parser is used","epoch":1631548519,"epoch_utc":null},{"commit":"1d8cfae89f24192b6fab087f59c9b8988ef363dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 12 17:30:56 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/parsers/ls_s.py"]},"message":"only print _meta object if -q or quiet flag is used. Also, add message to the end of exceptions informing of the -q option to ignore errors","epoch":1631493056,"epoch_utc":null},{"commit":"787df51239ffa8260b48d6a3a58e6ff07d5e0f64","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 12 16:42:47 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"]},"message":"remove `\\n` from end of line in exception message","epoch":1631490167,"epoch_utc":null},{"commit":"5e7f302a9c45343c36e81944db38a435e6c8a20c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 12 16:35:46 2021 -0700","stats":{"files_changed":1,"insertions":12,"deletions":10,"files":["jc/parsers/ls_s.py"]},"message":"Raise exceptions unless the -q or quiet flag are used","epoch":1631489746,"epoch_utc":null},{"commit":"3d10fd40b56264836874da19aa72351e6d5cfbf7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 12 16:27:00 2021 -0700","stats":{"files_changed":1,"insertions":14,"deletions":13,"files":["jc/cli.py"]},"message":"remove print flush for better performance. Roll json.JSONDecodeError into the parse try/except block","epoch":1631489220,"epoch_utc":null},{"commit":"57e3bf239cc76d3b0ee0eddc618171eb90c28dec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 10 15:02:15 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"]},"message":"formatting for docs","epoch":1631311335,"epoch_utc":null},{"commit":"ccb09861e82044e17ec51277b3c8875e5ba9d87d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 10 15:01:02 2021 -0700","stats":{"files_changed":2,"insertions":20,"deletions":20,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"]},"message":"formatting for docs","epoch":1631311262,"epoch_utc":null},{"commit":"94551d75dd926c7f558e5cab47ba9483a20c6b3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 10 14:27:50 2021 -0700","stats":{"files_changed":10,"insertions":116,"deletions":49,"files":["CHANGELOG","README.md","docs/parsers/ls_s.md","docs/readme.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz","mangen.py","setup.py"]},"message":"doc update","epoch":1631309270,"epoch_utc":null},{"commit":"6e21218425359210591827e936b8d48d9644df92","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 10 14:14:10 2021 -0700","stats":{"files_changed":2,"insertions":234,"deletions":3,"files":["jc/cli.py","jc/parsers/ls_s.py"]},"message":"working prototype of streaming ls parser","epoch":1631308450,"epoch_utc":null},{"commit":"ff0fda48fc48760a7293528155d222c6456f84c4","merge":"e08b61f 528aac7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 10 08:08:45 2021 -0700","message":"Merge pull request #168 from kellyjonbrazil/master\n\nSync master to dev","epoch":1631286525,"epoch_utc":null},{"commit":"528aac7ad87feae2093aba563c83a29ebf75e5f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 8 07:00:50 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":38,"files":["README.md","templates/readme_template"]},"message":"use subprocess in python example","epoch":1631109650,"epoch_utc":null},{"commit":"ab482e521d4cecfffa5393805b1d7de4389db49a","merge":"9c1ad92 e08b61f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 31 09:50:38 2021 -0700","message":"Merge pull request #163 from kellyjonbrazil/dev\n\nDev v1.16.2","epoch":1630428638,"epoch_utc":null},{"commit":"e08b61fa81b1bd2304d04db5cdc8b809fe9c6032","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 31 08:54:23 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]},"message":"add schema note to sfdisk","epoch":1630425263,"epoch_utc":null},{"commit":"ce61bd1d2b4323d9c2d0454c4f646521913ae20d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 31 08:50:42 2021 -0700","stats":{"files_changed":7,"insertions":73,"deletions":7,"files":["tests/fixtures/debian10/sfdisk-F2.json","tests/fixtures/debian10/sfdisk-F2.out","tests/fixtures/debian10/sfdisk-l2.json","tests/fixtures/debian10/sfdisk-l2.out","tests/fixtures/debian10/sfdisk-l3.json","tests/fixtures/debian10/sfdisk-l3.out","tests/test_sfdisk.py"]},"message":"add tests for -F fixes","epoch":1630425042,"epoch_utc":null},{"commit":"7b708f75182bf3ed33478a7de62e9c2496f0b994","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 31 08:39:54 2021 -0700","stats":{"files_changed":3,"insertions":11,"deletions":5,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-l.json","tests/fixtures/debian10/sfdisk-l.json"]},"message":"Don't convert 'size' to int, except for legacy -d support. Change partition table detection logic to fix -F output","epoch":1630424394,"epoch_utc":null},{"commit":"89ca50c7fc1bf64f34c915e65031d0bc520e6466","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 21:56:36 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"]},"message":"add -l to sfdisk raw example","epoch":1630385796,"epoch_utc":null},{"commit":"fb54899dcc2160450448e0d6111557cebdeb0d4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 21:53:40 2021 -0700","stats":{"files_changed":4,"insertions":38,"deletions":23,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]},"message":"doc update","epoch":1630385620,"epoch_utc":null},{"commit":"0a625ad7ddd9c804052d98930165cd22049546bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 21:52:55 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/sfdisk.py"]},"message":"remove unneeded lines","epoch":1630385575,"epoch_utc":null},{"commit":"d32e45efbe0d71a9a132abfb2855f1f4ccee9916","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 21:49:07 2021 -0700","stats":{"files_changed":6,"insertions":69,"deletions":1,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-F.json","tests/fixtures/centos-8/sfdisk-l.json","tests/fixtures/debian10/sfdisk-F.json","tests/fixtures/debian10/sfdisk-l.json","tests/test_sfdisk.py"]},"message":"add sfdisk tests","epoch":1630385347,"epoch_utc":null},{"commit":"c77696bc789cdfd286a7479c3d9f67d23149d0ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 20:55:26 2021 -0700","stats":{"files_changed":3,"insertions":6,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"]},"message":"version bump","epoch":1630382126,"epoch_utc":null},{"commit":"736fde9e784587cb2ef344bbf31d876eafea7741","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 20:51:19 2021 -0700","stats":{"files_changed":5,"insertions":147,"deletions":28,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-F.out","tests/fixtures/centos-8/sfdisk-l.out","tests/fixtures/debian10/sfdisk-F.out","tests/fixtures/debian10/sfdisk-l.out"]},"message":"add support for newer versions of sfdisk","epoch":1630381879,"epoch_utc":null},{"commit":"9c1ad92fed9a4b3a0da66d6b71deec8d608edfa9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:31:51 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["CONTRIBUTING.md"]},"message":"fix examples","epoch":1629999111,"epoch_utc":null},{"commit":"1a9fd2139d156a51bf2d25db951e47e96da77f7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:29:13 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"add \"For new parsers:\"","epoch":1629998953,"epoch_utc":null},{"commit":"7661e7f27a4e5c379ea37c7f95496aca2c1e2910","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:27:11 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"formatting","epoch":1629998831,"epoch_utc":null},{"commit":"f857b7fbf7862ddd7eb5ab20470f5dbaacc62119","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:25:37 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"add custom parser folder info","epoch":1629998737,"epoch_utc":null},{"commit":"d94d12dbc5fb3e3712b2f1aea949013cb8213e28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:20:53 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["CONTRIBUTING.md"]},"message":"add foo parser template info","epoch":1629998453,"epoch_utc":null},{"commit":"700916276ae8b0a106410e3dd2ea3e00248ee37a","merge":"473f706 834e523","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:01:08 2021 -0700","message":"Merge pull request #159 from kellyjonbrazil/master\n\nSync Master to dev","epoch":1629997268,"epoch_utc":null},{"commit":"834e52369ceb479776ddc8fc2931790af53b9c18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 16 10:33:26 2021 -0700","stats":{"files_changed":3,"insertions":1,"deletions":5,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]},"message":"update man page","epoch":1629135206,"epoch_utc":null},{"commit":"1ce53365de61421c8bd43e04590038083894153b","merge":"2689697 473f706","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 16 10:32:03 2021 -0700","message":"Merge pull request #156 from kellyjonbrazil/dev\n\nDev v1.16.1","epoch":1629135123,"epoch_utc":null},{"commit":"473f70668f04a38765559c5dbf0468af24d625c9","merge":"0dbd270 2689697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 16 10:28:11 2021 -0700","message":"Merge branch 'master' into dev\n\n# Conflicts:\n# jc/man/jc.1.gz\n# man/jc.1\n# man/jc.1.gz","epoch":1629134891,"epoch_utc":null},{"commit":"0dbd2702f6ab2640b2ccdea92411ac0789673e66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 17:17:51 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/cli.py"]},"message":"reformat doc_text for nicer indentation","epoch":1628900271,"epoch_utc":null},{"commit":"01e3764a9b6ba902aea522bf6b7005fd37b3acbb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 16:03:46 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"fix join syntax","epoch":1628895826,"epoch_utc":null},{"commit":"ff9c81722ae7221364e9bcb83d98b16b4263334e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 16:01:45 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"]},"message":"try/except for shlex.join since only available in python 3.8","epoch":1628895705,"epoch_utc":null},{"commit":"166aef7a022ed29862ab2e0702d53c591bb5cc77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 15:22:33 2021 -0700","stats":{"files_changed":6,"insertions":4,"deletions":4,"files":["docs/parsers/stat.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz","setup.py"]},"message":"version bump","epoch":1628893353,"epoch_utc":null},{"commit":"78caf7646baf5d35602fd76771443cd64bd783af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 15:19:41 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add stat fix","epoch":1628893181,"epoch_utc":null},{"commit":"1f99d40cecc5d88a246f3558f71db376ebd885c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 15:19:31 2021 -0700","stats":{"files_changed":4,"insertions":17,"deletions":2,"files":["jc/parsers/stat.py","tests/fixtures/osx-10.14.6/stat-filename-with-spaces.json","tests/fixtures/osx-10.14.6/stat-filename-with-spaces.out","tests/test_stat.py"]},"message":"fix filename with spaces for osx/bsd","epoch":1628893171,"epoch_utc":null},{"commit":"4c2912d3d5ec1fd2d5d891f2b3c58a33dd8572be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 15:19:17 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"use shlex.join to quote run_command_str for better error messages","epoch":1628893157,"epoch_utc":null},{"commit":"45e6e06be581f787f707e3f5645129c713478d16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 14:19:45 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["CHANGELOG"]},"message":"add glob and process substitution fixes","epoch":1628889585,"epoch_utc":null},{"commit":"fdbe3e05f323c95687a1137983f9623911008ca2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 14:19:26 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["jc/cli.py"]},"message":"fix issue with globs not including filenames with spaces with magic syntax (introduced during switch to use subprocess to grab process exit code). No longer need to shlex quote arguments.","epoch":1628889566,"epoch_utc":null},{"commit":"7cc168f6409af13fda815d0d2a6db25b7c9ba367","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 12 16:55:07 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"add comment","epoch":1628812507,"epoch_utc":null},{"commit":"ff2d609c9b5f5f57f3331e5593e8fe87c01654dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 12 16:36:35 2021 -0700","stats":{"files_changed":1,"insertions":12,"deletions":1,"files":["jc/cli.py"]},"message":"add close_fds=False in subprocess.Popen() to allow process substitution in magic syntax. Also check for too many open files exception","epoch":1628811395,"epoch_utc":null},{"commit":"2689697b4c21758903e5f74ec069e89be585aba2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 22 17:03:00 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1626998580,"epoch_utc":null},{"commit":"f90a0ea8ab15629b7786e4431e9c968c3a896ee0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 22 12:20:48 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["templates/readme_template"]},"message":"formatting","epoch":1626981648,"epoch_utc":null},{"commit":"caabe60f849fb2422e47b8f10e0ff35beb706dcd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 22 12:20:31 2021 -0700","stats":{"files_changed":5,"insertions":3,"deletions":3,"files":["docs/parsers/kv.md","jc/man/jc.1.gz","jc/parsers/kv.py","man/jc.1","man/jc.1.gz"]},"message":"fix kv example","epoch":1626981631,"epoch_utc":null},{"commit":"2bef4ed6038201f54339e750a833260dc1998591","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 21 08:47:16 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","README.md"]},"message":"package updates","epoch":1626882436,"epoch_utc":null},{"commit":"ee57be533b12593a33a2abbb2892697f0bd40c65","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 20 12:35:02 2021 -0500","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"]},"message":"fix sfdisk example","epoch":1626809702,"epoch_utc":null},{"commit":"c5b7aaca25d6b66d3e44256c2c6760a4cf2956ec","merge":"3b22ce4 7a1be90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 20 10:19:14 2021 -0700","message":"Merge pull request #149 from kellyjonbrazil/dev\n\nDev v1.16.0","epoch":1626801554,"epoch_utc":null},{"commit":"7a1be905bb8654558afb5979b0bd78d4a8488874","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 20 12:15:29 2021 -0500","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]},"message":"version bump","epoch":1626808529,"epoch_utc":null},{"commit":"5798495a11afa2f72ce6f79be785d46240fcbeb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 20 12:13:33 2021 -0500","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["CHANGELOG"]},"message":"add 1.15.7 to 1.16.0 changes","epoch":1626808413,"epoch_utc":null},{"commit":"46171e220252ec92d18e744d2a57c1d6a6dc19f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 20 12:13:14 2021 -0500","stats":{"files_changed":1,"insertions":69,"deletions":0,"files":["EXAMPLES.md"]},"message":"add sfdisk example","epoch":1626808394,"epoch_utc":null},{"commit":"dd5c924ff505dcc2a9c851d2425677bdf16ea462","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 19 12:13:46 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add man page location change","epoch":1626722026,"epoch_utc":null},{"commit":"30c4ab297658228a07ef9b1585516719af3febb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 19 12:08:50 2021 -0700","stats":{"files_changed":3,"insertions":515,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]},"message":"new man page location","epoch":1626721730,"epoch_utc":null},{"commit":"26ea4d47b33277efb0ddafe8f421791696277c07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 19 12:04:25 2021 -0700","stats":{"files_changed":5,"insertions":14,"deletions":3,"files":["CHANGELOG","MANIFEST.in","jc/__init__.py","mangen.py","setup.py"]},"message":"version bump and deprecate /man/jc.1.gz and /jc/man/jc.1.gz","epoch":1626721465,"epoch_utc":null},{"commit":"2732cd175c1e878210707162de3928f33fb2f201","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 12 08:10:18 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["CHANGELOG","MANIFEST.in"]},"message":"include CHANGELOG in source distribution","epoch":1626102618,"epoch_utc":null},{"commit":"3e54b597be88b0e342e4361b7f2c1af447f9482b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 7 09:00:19 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add timezone change for unit tests","epoch":1625673619,"epoch_utc":null},{"commit":"f10ebea20962084833e5c1ebd9bc90a251bf3ff4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 7 08:53:52 2021 -0700","stats":{"files_changed":11,"insertions":78,"deletions":0,"files":["tests/test_date.py","tests/test_dig.py","tests/test_dir.py","tests/test_last.py","tests/test_ls.py","tests/test_rpm_qai.py","tests/test_stat.py","tests/test_systeminfo.py","tests/test_upower.py","tests/test_utils.py","tests/test_who.py"]},"message":"update tests to set correct timezone on POSIX systems","epoch":1625673232,"epoch_utc":null},{"commit":"2c6f3993cb4c5e559dbac7a479ec889aa2cba752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 1 15:53:10 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/route.md","jc/man/jc.1.gz","jc/parsers/route.py","man/jc.1.gz"]},"message":"remove extra comma","epoch":1625179990,"epoch_utc":null},{"commit":"708a696920b52c2614edcdba264912527b2dfbef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 1 15:51:38 2021 -0700","stats":{"files_changed":3,"insertions":0,"deletions":2,"files":["docs/parsers/route.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"remove extra lines","epoch":1625179898,"epoch_utc":null},{"commit":"20bbb5d331575c8fc33ba63643882a62650c97b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 1 15:50:55 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/route.py"]},"message":"remove extra lines","epoch":1625179855,"epoch_utc":null},{"commit":"223e785b547d9376174efa15321d60a533847c57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 17:07:43 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/sfdisk.py"]},"message":"rename variable","epoch":1625098063,"epoch_utc":null},{"commit":"3d78692c59980e4d70361d3a9f74bacc3f21376e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 16:54:34 2021 -0700","stats":{"files_changed":11,"insertions":150,"deletions":1,"files":["tests/fixtures/centos-7.7/sfdisk-d-multi.json","tests/fixtures/centos-7.7/sfdisk-d-multi.out","tests/fixtures/centos-7.7/sfdisk-d.json","tests/fixtures/centos-7.7/sfdisk-d.out","tests/fixtures/centos-7.7/sfdisk-l-multi.json","tests/fixtures/centos-7.7/sfdisk-l-multi.out","tests/fixtures/centos-7.7/sfdisk-l.json","tests/fixtures/centos-7.7/sfdisk-luB.json","tests/fixtures/centos-7.7/sfdisk-luM.json","tests/fixtures/centos-7.7/sfdisk-luS.json","tests/test_sfdisk.py"]},"message":"add sfdisk tests","epoch":1625097274,"epoch_utc":null},{"commit":"5321a15dcf13cf14efe578d0f66b651078c3d8a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 14:30:35 2021 -0700","stats":{"files_changed":4,"insertions":8,"deletions":8,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"]},"message":"update examples","epoch":1625088635,"epoch_utc":null},{"commit":"a452f8252a593f7914ebece53af9d73f4fd11a19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 14:27:12 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"]},"message":"fix integer conversion","epoch":1625088432,"epoch_utc":null},{"commit":"49267f09ac01fead3b20b2d481bb5e0d07af1439","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 14:06:15 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/sfdisk.py"]},"message":"change to root prompt in examples","epoch":1625087175,"epoch_utc":null},{"commit":"db47f35783e46a8299533c22146d851509f6ceb2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 12:38:36 2021 -0700","stats":{"files_changed":15,"insertions":610,"deletions":3,"files":["CHANGELOG","README.md","docs/parsers/sfdisk.md","jc/__init__.py","jc/cli.py","jc/man/jc.1.gz","jc/parsers/sfdisk.py","jc/utils.py","man/jc.1.gz","setup.py","tests/fixtures/centos-7.7/sfdisk-d.out","tests/fixtures/centos-7.7/sfdisk-l.out","tests/fixtures/centos-7.7/sfdisk-luB.out","tests/fixtures/centos-7.7/sfdisk-luM.out","tests/fixtures/centos-7.7/sfdisk-luS.out"]},"message":"add working sfdisk parser","epoch":1625081916,"epoch_utc":null},{"commit":"d48abf312c1f55ab31aa11da2b6cf6bc8166733b","merge":"ff7ab0a 3b22ce4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 10:10:59 2021 -0700","message":"Merge pull request #147 from kellyjonbrazil/master\n\nsync to dev","epoch":1625073059,"epoch_utc":null},{"commit":"3b22ce41105387e7f46a410460cf04759feef197","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 28 08:04:46 2021 -0700","stats":{"files_changed":6,"insertions":6,"deletions":3,"files":["CHANGELOG","jc/__init__.py","jc/cli.py","jc/man/jc.1.gz","man/jc.1.gz","setup.py"]},"message":"fix local plugin parser issue where parser has .py in the name but it is not at the end","epoch":1624892686,"epoch_utc":null},{"commit":"c521ca5bc9e2b035cfef6ff65f6b303b3ec44296","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 11 11:41:16 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"change possible to available","epoch":1623436876,"epoch_utc":null},{"commit":"3ddc1c665990e1e732314330db214a81ab810fe9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 11 11:39:38 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"add jello","epoch":1623436778,"epoch_utc":null},{"commit":"a8e19402b7d1f9f06bc40b81a15dec401154180c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 9 08:33:48 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["ADVANCED_USAGE.md"]},"message":"remove temporary fix","epoch":1623252828,"epoch_utc":null},{"commit":"0927902b30654274743ab9092e90e768709a9937","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 8 16:51:03 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["ADVANCED_USAGE.md"]},"message":"temp fix for wrong url","epoch":1623196263,"epoch_utc":null},{"commit":"572548b42fb6ed9d32a392503d44fac1a8f146d3","merge":"95aec9c ff7ab0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 27 17:00:54 2021 -0700","message":"Merge pull request #141 from kellyjonbrazil/dev\n\nDev v1.15.5","epoch":1622160054,"epoch_utc":null},{"commit":"ff7ab0a1ed7f468d0e84eb3bf0636f53913c490d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 27 16:58:14 2021 -0700","stats":{"files_changed":3,"insertions":0,"deletions":1,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc updates for v1.15.5","epoch":1622159894,"epoch_utc":null},{"commit":"5db71b05cb28691bbbaa5d668bcd4a4ac7e68b85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 25 09:47:24 2021 -0700","stats":{"files_changed":5,"insertions":3,"deletions":3,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template","templates/readme_template"]},"message":"add en_US.UTF-8 to LANG info","epoch":1621961244,"epoch_utc":null},{"commit":"f9b952885aa7f2b450786a08c3879d9e358886da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 21 10:21:21 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add python 3.9.5 packaged info","epoch":1621617681,"epoch_utc":null},{"commit":"e7983bc0b29abaca2147038dfad018cba1e67cdf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 21 10:16:19 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xml.md","docs/parsers/yaml.md"]},"message":"version bump","epoch":1621617379,"epoch_utc":null},{"commit":"473a6431425fc24a4cc83939ff592e0d49535b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 21 10:16:08 2021 -0700","stats":{"files_changed":4,"insertions":10,"deletions":3,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"]},"message":"add windows msi info","epoch":1621617368,"epoch_utc":null},{"commit":"14f3d442cb86250b8f2cdfd7977938634b8abd6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 21 09:46:51 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"formatting","epoch":1621615611,"epoch_utc":null},{"commit":"d6f4ed9ab55fe9b7c2766fb437172af62a1d5c87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 21 09:46:34 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/test_utils.py"]},"message":"add long-form UTC test","epoch":1621615594,"epoch_utc":null},{"commit":"1b8d654444ff8c8b8171c7ac63e2736447a36c09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 20 15:49:18 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add error message info","epoch":1621550958,"epoch_utc":null},{"commit":"6002af0dca334c0affaff3e9acdca416238c7d82","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 20 15:46:31 2021 -0700","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/cli.py"]},"message":"add more error message detail to the user for ParseError and LibraryNotFound exceptions","epoch":1621550791,"epoch_utc":null},{"commit":"0924d822a30c8806f65574c010561cd6f7c8e181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 20 15:36:27 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":1,"files":["templates/readme_template"]},"message":"add windows example","epoch":1621550187,"epoch_utc":null},{"commit":"72a37b928924c3edde3a4edb952f98c94aa05f0b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 19 16:23:34 2021 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"]},"message":"version bump","epoch":1621466614,"epoch_utc":null},{"commit":"5eef7bd769f8ffb03ba396833d1b33484041a99f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 19 16:14:26 2021 -0700","stats":{"files_changed":2,"insertions":16,"deletions":16,"files":["jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"use LibraryNotInstalled exception instead of exiting via sys.exit","epoch":1621466066,"epoch_utc":null},{"commit":"c6893e1bd5283d982a7ecd6f84bdfdd0054ce7a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 19 16:13:05 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/exceptions.py"]},"message":"add LibraryNotInstalled exception","epoch":1621465985,"epoch_utc":null},{"commit":"039f6612e491c6f821c001252e122e9b0a781104","merge":"9c57c09 95aec9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 18 10:29:02 2021 -0700","message":"Merge pull request #139 from kellyjonbrazil/master\n\nsync branches","epoch":1621358942,"epoch_utc":null},{"commit":"95aec9c6f9aa8fb4d0dae227410a1346d550f47f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 18 10:27:36 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["templates/manpage_template"]},"message":"add info about Magic syntax not supporting shell builtins","epoch":1621358856,"epoch_utc":null},{"commit":"4e9652a8ec2482a64dc029b0ce0e1047a3e49867","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 17 14:36:20 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"spelling","epoch":1621287380,"epoch_utc":null},{"commit":"773b7f4b1f23e04c90e602aab05bc1a7e5aae37b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 17 08:38:09 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add space before exit code table","epoch":1621265889,"epoch_utc":null},{"commit":"d17ffde9cdc35392ae25d8e9de5328e46067df2a","merge":"efb1d3e 9c57c09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 17 08:35:13 2021 -0700","message":"Merge pull request #138 from kellyjonbrazil/dev\n\nDev v1.15.4","epoch":1621265713,"epoch_utc":null},{"commit":"9c57c09c00e64a9031391b9b70083ad6ecf0bc0b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 17 08:24:31 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc update for release","epoch":1621265071,"epoch_utc":null},{"commit":"4d730a9de5a0d7c064a9a59e3add86e58d9ec492","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 20:57:17 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add UTC fix","epoch":1621223837,"epoch_utc":null},{"commit":"fc57bcfce24af23f077d6a73f1db4591d8f99c13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 20:51:39 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"]},"message":"fix for when UTC is referenced as \"Coordinated Universal Time\"","epoch":1621223499,"epoch_utc":null},{"commit":"fa5571486c3c19bb7e836f043545ea4f2509ed4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 20:33:03 2021 -0700","stats":{"files_changed":1,"insertions":10,"deletions":10,"files":["jc/cli.py"]},"message":"simplify json_out function","epoch":1621222383,"epoch_utc":null},{"commit":"9996c4fe23564dfb52e3c7dbdbd8bd67edfb1e95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:55:53 2021 -0700","stats":{"files_changed":7,"insertions":10,"deletions":10,"files":["EXAMPLES.md","docs/parsers/history.md","docs/parsers/jobs.md","jc/man/jc.1.gz","jc/parsers/history.py","jc/parsers/jobs.py","man/jc.1.gz"]},"message":"update docs for shell builtins","epoch":1621220153,"epoch_utc":null},{"commit":"038d4290248e6bb94762bb51f69e9958f7c1fecb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:44:10 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":6,"files":["docs/parsers/dig.md","docs/parsers/dir.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc updates","epoch":1621219450,"epoch_utc":null},{"commit":"9bf6facb0d7d76583802309253e7d13ba5148997","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:43:10 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":6,"files":["jc/parsers/dir.py"]},"message":"remove magic command capability since dir is a shell builtin","epoch":1621219390,"epoch_utc":null},{"commit":"965717886e4ebaa6a4a494f189d9fdd01e33eb21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:30:00 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add exceptions module info","epoch":1621218600,"epoch_utc":null},{"commit":"e9bfc3dd29f914fd91e937f06d7f59c0f91b8449","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:21:37 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["CHANGELOG"]},"message":"add time format, dig compatibility, windows colors fix","epoch":1621218097,"epoch_utc":null},{"commit":"f46b33eacf070b4dc72c8d8a66aae49abd149e5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:20:13 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/utils.py","tests/test_utils.py"]},"message":"add windows time format","epoch":1621218013,"epoch_utc":null},{"commit":"f475fe44df2fb2661c5bce4d1e602a4bba7e87c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:09:53 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"]},"message":"add new time format for systeminfo","epoch":1621217393,"epoch_utc":null},{"commit":"5fdbe2962d84dad89de23f103d97b76b90450206","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 17:48:56 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dig.py"]},"message":"make dig compatible with all platforms","epoch":1621212536,"epoch_utc":null},{"commit":"ab291b9eef6ed5c8ab59b5652f676178941d5ce5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 17:48:40 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"only force enable colors when running on windows","epoch":1621212520,"epoch_utc":null},{"commit":"fd411fd77273cb7cf872c03ed6a258ccdee4d261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 17:43:05 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"]},"message":"attempt to get colors working on windows","epoch":1621212185,"epoch_utc":null},{"commit":"b1e95a60a2461dc401ffc299ef6338b65ef12691","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 13 08:42:27 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/cli.py"]},"message":"remove unnecessary comment","epoch":1620920547,"epoch_utc":null},{"commit":"bb1439f0d53e87f636fba05fbd30c3c79fb16002","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 13 08:20:58 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["jc/parsers/uname.py"]},"message":"use ParseError exception from jc.exceptions module","epoch":1620919258,"epoch_utc":null},{"commit":"ba963d98a0a2b3a0dfca6b211096d802253da5fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 13 08:20:35 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/exceptions.py"]},"message":"add exceptions module including ParseError","epoch":1620919235,"epoch_utc":null},{"commit":"83440ccb55d0db15b112b8b7d7352493ff516112","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 13 08:02:38 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"error message capitalization","epoch":1620918158,"epoch_utc":null},{"commit":"796f61bfa417afdc6ab48fddbb5502cd0659b840","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 17:01:09 2021 -0700","stats":{"files_changed":1,"insertions":10,"deletions":3,"files":["jc/cli.py"]},"message":"handle case where the user pipes data and uses magic syntax simultaneously","epoch":1620864069,"epoch_utc":null},{"commit":"070cac4ae12282458a1e1fc8618ebc473d23cacf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 15:36:06 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/cli.py"]},"message":"remove commented line","epoch":1620858966,"epoch_utc":null},{"commit":"3ed84f9f42e4e883ddaac28ab49d675600b49424","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 15:19:11 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/cli.py"]},"message":"reorganize main function. remove pass condition.","epoch":1620857951,"epoch_utc":null},{"commit":"a205afb6f355edbb4b98200a980b9601ed0f0658","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 13:44:15 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"set run_command_str if run_command is set","epoch":1620852255,"epoch_utc":null},{"commit":"a6d983dd8f3871cbc2391c313340167829a575d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 13:38:08 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"move run_command_str variable","epoch":1620851888,"epoch_utc":null},{"commit":"b6c8d6d01d740827273265dbb0cfbaf7875ac7f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 13:18:58 2021 -0700","stats":{"files_changed":1,"insertions":45,"deletions":17,"files":["jc/cli.py"]},"message":"add exception handling for filenotfound or other subprocess.popen and json.dumps exceptions","epoch":1620850738,"epoch_utc":null},{"commit":"b5a5d5b133f1c0df8023776e59697b7579f8c18a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 11:36:27 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"set parser_name for magic syntax use","epoch":1620844587,"epoch_utc":null},{"commit":"da528e7814b0cf25a359c3556d0e286e7bf004b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 09:40:22 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"]},"message":"move separators to a variable","epoch":1620837622,"epoch_utc":null},{"commit":"4acebf4f621ac564f82e3a97e6810fbb08a9dbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 08:48:49 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/cli.py"]},"message":"move variables","epoch":1620834529,"epoch_utc":null},{"commit":"4d40808d2b70b7543eadcfd2d35c16ebe91f2f9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 08:27:39 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/cli.py"]},"message":"update comments","epoch":1620833259,"epoch_utc":null},{"commit":"c543f00bd3c737f73144bb2980d12793042459b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 14:30:46 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["jc/cli.py"]},"message":"simplify piped_output function","epoch":1620768646,"epoch_utc":null},{"commit":"947cf41dfab5811c0e76e371231c59a2d6372752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 12:42:21 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add exit code info","epoch":1620762141,"epoch_utc":null},{"commit":"8d8c58742e5106c3387a627cd1b1323a76cc9623","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 11:32:08 2021 -0700","stats":{"files_changed":5,"insertions":21,"deletions":15,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template","templates/readme_template"]},"message":"formatting","epoch":1620757928,"epoch_utc":null},{"commit":"995ecc9bfb0425b0ee9e4250395b0200b46c1e89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 11:11:17 2021 -0700","stats":{"files_changed":3,"insertions":15,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template"]},"message":"add exit codes section","epoch":1620756677,"epoch_utc":null},{"commit":"21a15225ebff645439b12d6249dc3e28d7bc09ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 10:59:26 2021 -0700","stats":{"files_changed":2,"insertions":18,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add exit codes section","epoch":1620755966,"epoch_utc":null},{"commit":"48921d4584068fadb0f776ed7e81c21d89172e2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 10:50:35 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"]},"message":"ensure exit code never exceeds 255","epoch":1620755435,"epoch_utc":null},{"commit":"342db45edc94ab1c3b3ae70e7cf4ca4076e2c7eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 10:36:55 2021 -0700","stats":{"files_changed":1,"insertions":18,"deletions":10,"files":["jc/cli.py"]},"message":"fix combined exit codes","epoch":1620754615,"epoch_utc":null},{"commit":"5f88ecf8443bc6e9a7cda5bc60858f37cc09f4f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 21:23:23 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/cli.py"]},"message":"add comments to magic_parser return","epoch":1620707003,"epoch_utc":null},{"commit":"a56aebfe7024914d2c602278964b99d1443de335","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 21:09:00 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/cli.py"]},"message":"remove side-effect comment since it is no longer relevant","epoch":1620706140,"epoch_utc":null},{"commit":"422bb744a82472546d62c72ba05eaa1d18d5068a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 21:03:30 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]},"message":"update man pages","epoch":1620705810,"epoch_utc":null},{"commit":"c3b814a15f571ac84a8ce0719d7fd88acf814caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 21:02:28 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":4,"files":["jc/cli.py"]},"message":"move imports to the top","epoch":1620705748,"epoch_utc":null},{"commit":"e4574047a0ef6fcd4a47142421a1d05795c7925a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 20:49:44 2021 -0700","stats":{"files_changed":1,"insertions":21,"deletions":21,"files":["tests/test_cli.py"]},"message":"update tests for magic_parser function","epoch":1620704984,"epoch_utc":null},{"commit":"0d7d7951f82627d1fb1e20d1398bd7f88c5ce1be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 18:58:45 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/cli.py"]},"message":"don't reset sys.argv anymore. check for 'valid_command' instead","epoch":1620698325,"epoch_utc":null},{"commit":"da904e4770a20ae85fc67476ae4a529564d0a3ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 18:50:59 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"remove final \\n from stderr string when printing","epoch":1620697859,"epoch_utc":null},{"commit":"19b540041add64fe6650c3634ec869421ffbc769","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 18:31:30 2021 -0700","stats":{"files_changed":1,"insertions":82,"deletions":51,"files":["jc/cli.py"]},"message":"proof of concept for passing command exit codes when using magic syntax. Needs more testing","epoch":1620696690,"epoch_utc":null},{"commit":"f2ffb93eeaf4c8b5aa93f3e8808bdc044582e8a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 10:43:40 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":10,"files":["tests/test_ping.py"]},"message":"formatting","epoch":1620668620,"epoch_utc":null},{"commit":"c0c0e05642e0f473cde34178d815978fff8fe1ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 10:40:13 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add dig `+noall +answer` support","epoch":1620668413,"epoch_utc":null},{"commit":"966978f17e40a338f982628825f30a19d4b84e4c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 10:39:51 2021 -0700","stats":{"files_changed":5,"insertions":72,"deletions":0,"files":[".../centos-7.7/ping6-ip-O-p-unparsable.json",".../centos-7.7/ping6-ip-O-p-unparsable.out",".../fixtures/osx-10.14.6/ping6-ip-unparsable.json","tests/fixtures/osx-10.14.6/ping6-ip-unparsable.out","tests/test_ping.py"]},"message":"add more unparsable line ping tests","epoch":1620668391,"epoch_utc":null},{"commit":"8ab08a5231e082940a62fcde4be218b7ba94be31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 10:13:52 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"doc update","epoch":1620666832,"epoch_utc":null},{"commit":"48e534fa03b92b2583c5c6269c76651f3aa420cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 7 16:55:18 2021 -0700","stats":{"files_changed":3,"insertions":17,"deletions":2,"files":["tests/fixtures/osx-10.14.6/dig-noall-answer.json","tests/fixtures/osx-10.14.6/dig-noall-answer.out","tests/test_dig.py"]},"message":"add +noall +answer test","epoch":1620431718,"epoch_utc":null},{"commit":"61851c1bd02aa82d5d82e68595e45630ead13d34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 7 16:42:09 2021 -0700","stats":{"files_changed":2,"insertions":85,"deletions":3,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"add support for +noall +answer","epoch":1620430929,"epoch_utc":null},{"commit":"3c51b2d83d301b4072bbb12fdba4f60b900573da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 7 13:50:28 2021 -0700","stats":{"files_changed":3,"insertions":40,"deletions":0,"files":[".../centos-7.7/ping-ip-O-unparsedlines.json",".../centos-7.7/ping-ip-O-unparsedlines.out","tests/test_ping.py"]},"message":"add tests for unparsable lines on linux","epoch":1620420628,"epoch_utc":null},{"commit":"ee3a28528e152c61f05bdf71f264fe38274b4190","merge":"fe1f101 916bcda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 10:03:58 2021 -0700","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev\n\n# Conflicts:\n# templates/readme_template","epoch":1620234238,"epoch_utc":null},{"commit":"916bcdae3881fc9c9f9a91c8c901a714cff3e1da","merge":"fb14f54 efb1d3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 10:02:25 2021 -0700","message":"Merge pull request #136 from kellyjonbrazil/master\n\nmerge changes from master","epoch":1620234145,"epoch_utc":null},{"commit":"efb1d3e6b2db920423511a9dcf4c5e5fd9d6af43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 09:23:21 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"add blog title and minor formatting","epoch":1620231801,"epoch_utc":null},{"commit":"4e6ae66bacc014e49c4a9229d10dcc8e95de436c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 09:20:47 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting","epoch":1620231647,"epoch_utc":null},{"commit":"5ee88e7b679bc163a1916d560be6ff29f51699e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 09:18:45 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["README.md"]},"message":"add use cases section","epoch":1620231525,"epoch_utc":null},{"commit":"c3b68903cbd898f80438af342195eec7575aafd3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 09:17:11 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["templates/readme_template"]},"message":"add use cases section","epoch":1620231431,"epoch_utc":null},{"commit":"fe1f1013a74bdf6b4284f11dd59db8ea17e5e5d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 09:16:05 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["templates/readme_template"]},"message":"add use cases section","epoch":1620231365,"epoch_utc":null},{"commit":"fb14f5439f00d5eaf08651c552189fd4be7358d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 08:03:27 2021 -0700","stats":{"files_changed":4,"insertions":52,"deletions":3,"files":["jc/parsers/ping.py",".../osx-10.14.6/ping-ip-unknown-errors.json",".../osx-10.14.6/ping-ip-unknown-errors.out","tests/test_ping.py"]},"message":"fix and tests for unknown or unparsable errors","epoch":1620227007,"epoch_utc":null},{"commit":"5ca0fc364eb22d583bee5633cdd7183c1d70bb6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 4 19:05:20 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/parsers/ping.md"]},"message":"add unparsed_line to docs","epoch":1620180320,"epoch_utc":null},{"commit":"a1fe7037e5267ec4aced719eff3715085eb35bca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 4 19:04:16 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["jc/parsers/ping.py"]},"message":"add unparsed_line field if line cannot be parsed","epoch":1620180256,"epoch_utc":null},{"commit":"c2af7d113ed8e8cf9af985c969cf29858a3c26a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 4 15:35:47 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["CHANGELOG","docs/parsers/ping.md"]},"message":"add ping updates","epoch":1620167747,"epoch_utc":null},{"commit":"ff034e401d5c33efbc3c4bc2f0e386d81eaae7fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 4 15:34:45 2021 -0700","stats":{"files_changed":1,"insertions":59,"deletions":43,"files":["jc/parsers/ping.py"]},"message":"use try/except to make parser more resilient against unknown error types","epoch":1620167685,"epoch_utc":null},{"commit":"5abe095beb4b668e5f55fe8c9588677547e4c2a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 3 15:26:16 2021 -0700","stats":{"files_changed":1,"insertions":14,"deletions":3,"files":["docs/parsers/ping.md"]},"message":"update ping docs","epoch":1620080776,"epoch_utc":null},{"commit":"33de5f01e638953c83bb0960dc3550ca4547849b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 3 15:16:47 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["jc/__init__.py","setup.py"]},"message":"version bump","epoch":1620080207,"epoch_utc":null},{"commit":"8ce155d843806be4ad23491b4401e4eda02e2a1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 3 15:16:33 2021 -0700","stats":{"files_changed":5,"insertions":86,"deletions":23,"files":["CHANGELOG","jc/parsers/ping.py",".../fixtures/osx-10.14.6/ping-ip-unreachable.json","tests/fixtures/osx-10.14.6/ping-ip-unreachable.out","tests/test_ping.py"]},"message":"add support for error replies in v4 ping on osx and bsd","epoch":1620080193,"epoch_utc":null},{"commit":"b921d5ec9583c8f8e992613ae2eaf62165722054","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 30 16:53:52 2021 -0700","stats":{"files_changed":1,"insertions":105,"deletions":6,"files":["jc/parsers/ping.py"]},"message":"initial support for error replies in bsd/osx","epoch":1619826832,"epoch_utc":null},{"commit":"e21542aaa2aa5f2f287ddc227df41ae47d761332","merge":"d24f9a8 6150aae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 30 10:31:55 2021 -0700","message":"Merge pull request #135 from kellyjonbrazil/dev\n\nDev clarify packaged binaries in readme","epoch":1619803915,"epoch_utc":null},{"commit":"6150aae0aeabafba26d9f119406b0660d9221cb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 30 10:31:02 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"clarify packaged binaries","epoch":1619803862,"epoch_utc":null},{"commit":"f27b35f37104ad2012c3bddde0bd94941af06894","merge":"bd428a9 d24f9a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 15:28:35 2021 -0700","message":"Merge pull request #131 from kellyjonbrazil/master\n\nsync branches","epoch":1619648915,"epoch_utc":null},{"commit":"d24f9a885d3954035a98a488671486408f509dca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 15:26:52 2021 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["CONTRIBUTING.md","README.md","templates/readme_template"]},"message":"fix contributing link","epoch":1619648812,"epoch_utc":null},{"commit":"48dd82c8d1b756c4e08d49b8234b8060080dc035","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 15:15:41 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"trigger page build on github pages","epoch":1619648141,"epoch_utc":null},{"commit":"e57167ad1f240de6ec5fc86c51cfb780535cd783","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 12:23:31 2021 -0700","message":"empty commit","epoch":1619637811,"epoch_utc":null},{"commit":"ada91376426ff359c495fb31081404a2cce72b5f","merge":"0c209db bd428a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 11:53:15 2021 -0700","message":"Merge pull request #130 from kellyjonbrazil/dev\n\nDev link updates","epoch":1619635995,"epoch_utc":null},{"commit":"bd428a9fd75327710dce96f3c95f74ab9d1beaad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 11:52:24 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"fix link","epoch":1619635944,"epoch_utc":null},{"commit":"934941332f91d9e2cc4e691b154bb5427166ed30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 11:50:10 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","templates/readme_template"]},"message":"minor link updates","epoch":1619635810,"epoch_utc":null},{"commit":"0c209dbd108638f89a43801126a332379be9ae8b","merge":"92e2252 56e041a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 11:36:05 2021 -0700","message":"Merge pull request #129 from kellyjonbrazil/dev\n\nDev update readme","epoch":1619634965,"epoch_utc":null},{"commit":"56e041aa260b2daf2f5662fae98645a93137adb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 11:34:51 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add Practical JSON at the Command Line blog link","epoch":1619634891,"epoch_utc":null},{"commit":"cf9d48582e4e5df6c8498b916a2f9cf036869f3d","merge":"35464bb 92e2252","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 13:17:20 2021 -0700","message":"Merge pull request #128 from kellyjonbrazil/master\n\nsync branches","epoch":1619468240,"epoch_utc":null},{"commit":"92e2252bee00482bb0eeae3074b107d4c8553e4c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 12:18:21 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"fix typo","epoch":1619464701,"epoch_utc":null},{"commit":"fd7861db11e5aaa17c4e7bbce942c0c096116e30","merge":"fcc7e52 35464bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 12:12:02 2021 -0700","message":"Merge pull request #127 from kellyjonbrazil/dev\n\nDev v1.15.3","epoch":1619464322,"epoch_utc":null},{"commit":"35464bbbfb6b424ef3ee1c855557ada1bf3769fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 12:08:10 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"date update","epoch":1619464090,"epoch_utc":null},{"commit":"db8ddd7f0e0c2a8bd3e545619e81d3d3972a4d7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 12:04:03 2021 -0700","stats":{"files_changed":5,"insertions":11,"deletions":17,"files":["jc/man/jc.1.gz","jc/parsers/ufw.py","man/jc.1.gz","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json"]},"message":"fix for scenarios where the default port range didn't always display, or overrode existing port ranges.","epoch":1619463843,"epoch_utc":null},{"commit":"72207c54ee5734e3d2d3d1a063c8daf1edaa8815","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 10:02:02 2021 -0700","stats":{"files_changed":3,"insertions":102,"deletions":94,"files":["docs/parsers/ufw_appinfo.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"update ufw app info docs to support multiple apps (ufw app info all)","epoch":1619456522,"epoch_utc":null},{"commit":"a683f68003ea64dd5e2c4f06b53a1561ad774f12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 10:00:44 2021 -0700","stats":{"files_changed":9,"insertions":285,"deletions":202,"files":["EXAMPLES.md","jc/parsers/ufw_appinfo.py","tests/fixtures/generic/ufw-appinfo-msn.json","tests/fixtures/generic/ufw-appinfo-test.json","tests/fixtures/generic/ufw-appinfo-test2.json","tests/fixtures/generic/ufw-appinfo-test3.json","tests/fixtures/ubuntu-18.04/ufw-appinfo-all.json","tests/fixtures/ubuntu-18.04/ufw-appinfo-all.out","tests/test_ufw_appinfo.py"]},"message":"change schema to a list of dictionaries to support `ufw app info all` use case","epoch":1619456444,"epoch_utc":null},{"commit":"8d2d3db3fa969456342181a226bf54a3f1613542","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 21:10:21 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":0,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"]},"message":"formatting","epoch":1619410221,"epoch_utc":null},{"commit":"eca785450d1c72687817d09259fa7cd33376fafc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 21:06:47 2021 -0700","stats":{"files_changed":5,"insertions":34,"deletions":13,"files":["CHANGELOG","README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"]},"message":"add caveats to readme and manpage","epoch":1619410007,"epoch_utc":null},{"commit":"5b40a97ce417687b4e37f320b8a3f07dd7fd169c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 20:55:43 2021 -0700","stats":{"files_changed":3,"insertions":13,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template"]},"message":"add caveats to man page","epoch":1619409343,"epoch_utc":null},{"commit":"66cb4e9bde81b9290c1addaf851de5d80a1b0702","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 20:49:35 2021 -0700","stats":{"files_changed":5,"insertions":216,"deletions":234,"files":["EXAMPLES.md","docs/parsers/ufw.md","jc/man/jc.1.gz","jc/parsers/ufw.py","man/jc.1.gz"]},"message":"update ufw parser docs","epoch":1619408975,"epoch_utc":null},{"commit":"d1f33645caccdb3a55576081c4d355f997ac033c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 20:40:38 2021 -0700","stats":{"files_changed":7,"insertions":26,"deletions":10,"files":["tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw-numbered2.json","tests/fixtures/generic/ufw.json","tests/fixtures/ubuntu-18.04/ufw-numbered.json","tests/fixtures/ubuntu-18.04/ufw-numbered.out","tests/fixtures/ubuntu-18.04/ufw-verbose.json","tests/fixtures/ubuntu-18.04/ufw-verbose.out"]},"message":"update ufw tests","epoch":1619408438,"epoch_utc":null},{"commit":"5eff65c326675a449afd05a2af0a6c9bcf7b5e23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 20:10:52 2021 -0700","stats":{"files_changed":1,"insertions":85,"deletions":268,"files":["jc/parsers/ufw.py"]},"message":"update schema to support port lists and port range lists. Also support other transports than tcp and udp","epoch":1619406652,"epoch_utc":null},{"commit":"929c38715d87bf9dd689507d319c22b90871ae1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 12:53:29 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"formatting","epoch":1619294009,"epoch_utc":null},{"commit":"8c91a7b7601a967cd9d8096433ffd4ad62b65ceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 12:52:26 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CONTRIBUTING.md"]},"message":"formatting","epoch":1619293946,"epoch_utc":null},{"commit":"14289ecd6c022ad204444dff5b5e48f6024a5d0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 12:50:40 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"more timezone info","epoch":1619293840,"epoch_utc":null},{"commit":"b833c44783eb32f2fad24ca205b5b7eab854750f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 12:47:24 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add ufw-appinfo parser","epoch":1619293644,"epoch_utc":null},{"commit":"e23aa818eaa6d1a389ddef7dd2ad8f62b9f6ff25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 12:47:12 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"add tests section and timezone info","epoch":1619293632,"epoch_utc":null},{"commit":"473d919c1350a8dc34d233033a5a7d12c928e42d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 10:58:31 2021 -0700","stats":{"files_changed":4,"insertions":32,"deletions":0,"files":["runtests.sh","tests/fixtures/generic/ufw-numbered2.json","tests/fixtures/generic/ufw-numbered2.out","tests/test_ufw.py"]},"message":"add another ufw test sample","epoch":1619287111,"epoch_utc":null},{"commit":"9f925d6ac989a4f21a8c00c84fcf97dfb141e8c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 10:22:37 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc update","epoch":1619284957,"epoch_utc":null},{"commit":"f6ca32b3a31f314fa0b31d9e8b5494491b928f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 10:22:19 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/ufw.md","jc/parsers/ufw.py"]},"message":"update ufw docs with a note on lists of ports","epoch":1619284939,"epoch_utc":null},{"commit":"4cbe84c3d6ac8a3b594feb525460f2a68f5d62b2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 16:15:04 2021 -0700","stats":{"files_changed":9,"insertions":110,"deletions":0,"files":["tests/fixtures/generic/ufw-appinfo-msn.json","tests/fixtures/generic/ufw-appinfo-msn.out","tests/fixtures/generic/ufw-appinfo-test.json","tests/fixtures/generic/ufw-appinfo-test.out","tests/fixtures/generic/ufw-appinfo-test2.json","tests/fixtures/generic/ufw-appinfo-test2.out","tests/fixtures/generic/ufw-appinfo-test3.json","tests/fixtures/generic/ufw-appinfo-test3.out","tests/test_ufw_appinfo.py"]},"message":"add ufw-appinfo tests","epoch":1619219704,"epoch_utc":null},{"commit":"ffac5bf9d381305daa86e546f8570be092e5ff34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 16:14:53 2021 -0700","stats":{"files_changed":3,"insertions":12,"deletions":12,"files":["docs/parsers/ufw.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc update","epoch":1619219693,"epoch_utc":null},{"commit":"9aa424f9f8c7e4e0dc29e2c58dac481098beba7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 16:14:39 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["EXAMPLES.md"]},"message":"fix ufw example","epoch":1619219679,"epoch_utc":null},{"commit":"0a8495c68e427e39bbda957dd933fa2a461092e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 16:14:25 2021 -0700","stats":{"files_changed":1,"insertions":12,"deletions":15,"files":["jc/parsers/ufw.py"]},"message":"update docs","epoch":1619219665,"epoch_utc":null},{"commit":"6aea066cf024f92adf4b94eebc7d51430c22332c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 16:14:11 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/ufw_appinfo.py"]},"message":"make normalized list appear only when data exists. set magic commands","epoch":1619219651,"epoch_utc":null},{"commit":"ff3c2d809ec3ea6e556c302909a228ee670578c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 09:57:41 2021 -0700","stats":{"files_changed":6,"insertions":176,"deletions":25,"files":["EXAMPLES.md","README.md","docs/parsers/ufw_appinfo.md","jc/man/jc.1.gz","jc/parsers/ufw_appinfo.py","man/jc.1.gz"]},"message":"add ufw-appinfo to docs","epoch":1619197061,"epoch_utc":null},{"commit":"145059fc8946b7026184139baea143c2869bc4e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 09:04:11 2021 -0700","stats":{"files_changed":1,"insertions":20,"deletions":8,"files":["jc/parsers/ufw_appinfo.py"]},"message":"clean up output if sections are blank","epoch":1619193851,"epoch_utc":null},{"commit":"20e5c19de448c1b979497817c887d8d2d6487839","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 08:30:34 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/ufw_appinfo.py"]},"message":"fix key error if tcp or udp don't exist","epoch":1619191834,"epoch_utc":null},{"commit":"4c98fd4b877c54e1cf7d285a29e178321be12f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 08:26:00 2021 -0700","stats":{"files_changed":2,"insertions":101,"deletions":1,"files":["docs/parsers/ufw_appinfo.md","jc/parsers/ufw_appinfo.py"]},"message":"doc update","epoch":1619191560,"epoch_utc":null},{"commit":"125e54213e8d4dcfe2e3271456af80b3f79c0544","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 08:13:53 2021 -0700","stats":{"files_changed":1,"insertions":105,"deletions":48,"files":["jc/parsers/ufw_appinfo.py"]},"message":"update schema and add normalized fields","epoch":1619190833,"epoch_utc":null},{"commit":"0152e0665f87833250561d743144af35416992f8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 22 16:52:01 2021 -0700","stats":{"files_changed":2,"insertions":215,"deletions":0,"files":["jc/cli.py","jc/parsers/ufw_appinfo.py"]},"message":"initial working ufw-appinfo parser","epoch":1619135521,"epoch_utc":null},{"commit":"0679bcbc560ea3575555d8546afdd4e2474d05d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 22 08:33:57 2021 -0700","stats":{"files_changed":5,"insertions":31,"deletions":5,"files":["tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json","tests/fixtures/ubuntu-18.04/ufw-numbered.json","tests/fixtures/ubuntu-18.04/ufw-verbose.json","tests/test_ufw.py"]},"message":"fix ufw tests","epoch":1619105637,"epoch_utc":null},{"commit":"5500648aa0886ea5089856e5b33d7c8ebd78d5b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 22 08:33:45 2021 -0700","stats":{"files_changed":3,"insertions":46,"deletions":46,"files":["EXAMPLES.md","docs/parsers/ufw.md","jc/parsers/ufw.py"]},"message":"fix ufw docs for int conversions and service behavior","epoch":1619105625,"epoch_utc":null},{"commit":"bb50caad4dfaefa309e747fd05b650186c5a80f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 22 08:16:42 2021 -0700","stats":{"files_changed":3,"insertions":31,"deletions":4,"files":["jc/parsers/ufw.py","tests/fixtures/ubuntu-18.04/ufw-numbered.out","tests/fixtures/ubuntu-18.04/ufw-verbose.out"]},"message":"fix prefix int conversions. don't reset _transport if service is really a list of ports","epoch":1619104602,"epoch_utc":null},{"commit":"7eef5d94d591a3f70f6638b1b30f952a3bf35f9d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 16:55:25 2021 -0700","stats":{"files_changed":3,"insertions":5,"deletions":0,"files":["EXAMPLES.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"ufw doc update","epoch":1619049325,"epoch_utc":null},{"commit":"74f623f8d607c050db8f62ea4996c4e6aae43268","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 16:55:14 2021 -0700","stats":{"files_changed":5,"insertions":43,"deletions":11,"files":["docs/parsers/ufw.md","jc/parsers/ufw.py","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json","tests/fixtures/generic/ufw.out"]},"message":"add support for rule comments and LIMIT and REJECT actions","epoch":1619049314,"epoch_utc":null},{"commit":"f638aca092475bbae14fed765e90435c093fcb8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 10:10:36 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add deb package name fix","epoch":1619025036,"epoch_utc":null},{"commit":"da35eaf80ad4f11e7482fc4734db4b2265e50548","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 09:10:10 2021 -0700","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["docs/parsers/ufw.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"formatting","epoch":1619021410,"epoch_utc":null},{"commit":"ade0e8e8fc18ff9a0dd406206a85238f1f5a739d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 09:09:23 2021 -0700","stats":{"files_changed":7,"insertions":107,"deletions":0,"files":["tests/fixtures/generic/ufw-inactive.json","tests/fixtures/generic/ufw-inactive.out","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw-numbered.out","tests/fixtures/generic/ufw.json","tests/fixtures/generic/ufw.out","tests/test_ufw.py"]},"message":"add ufw tests","epoch":1619021363,"epoch_utc":null},{"commit":"90076090f05a1f03e2fbff307418ee18d7d046ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 09:09:09 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":5,"files":["jc/parsers/ufw.py"]},"message":"fix int conversions if 'rules' key does not exist","epoch":1619021349,"epoch_utc":null},{"commit":"23635def8b654097178f73ed1b57fc50965142d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 07:51:32 2021 -0700","stats":{"files_changed":6,"insertions":306,"deletions":4,"files":["README.md","docs/parsers/ping.md","docs/parsers/ufw.md","docs/utils.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"add ufw to docs","epoch":1619016692,"epoch_utc":null},{"commit":"4eeec087bde98f90ab8425473d1fbeee6834852e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 07:49:49 2021 -0700","stats":{"files_changed":1,"insertions":115,"deletions":0,"files":["EXAMPLES.md"]},"message":"add ufw example","epoch":1619016589,"epoch_utc":null},{"commit":"733196103897a1d84d242324ddcf96e783320329","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 07:41:32 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/ufw.py"]},"message":"update docs with new examples that have `to_service` always existing.","epoch":1619016092,"epoch_utc":null},{"commit":"e4acb3d5b70a7d75741ef3e35cd6750d1362a80f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 07:08:50 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/ufw.py"]},"message":"always make to/from_service None if ports are assigned","epoch":1619014130,"epoch_utc":null},{"commit":"c60549a9947d5684bbfa58223bfbcfc40a3ed479","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 22:08:12 2021 -0700","stats":{"files_changed":1,"insertions":29,"deletions":29,"files":["jc/parsers/ufw.py"]},"message":"change field name from to/from_subnet to to/from_ip_prefix","epoch":1618981692,"epoch_utc":null},{"commit":"d46fc8bbfa15a80a1af6c64f70230f858c215223","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 21:58:52 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/parsers/ufw.py"]},"message":"set to/from_transport to None if to/from_service is set","epoch":1618981132,"epoch_utc":null},{"commit":"b133d1f90d49362594508d8c475663754f0e7675","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 21:52:39 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/ufw.py"]},"message":"strip interface value","epoch":1618980759,"epoch_utc":null},{"commit":"5be615a97e7c145c8351764234ac591028560c34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 21:45:13 2021 -0700","stats":{"files_changed":1,"insertions":219,"deletions":9,"files":["jc/parsers/ufw.py"]},"message":"add examples for docs","epoch":1618980313,"epoch_utc":null},{"commit":"ea1d820f96321ddf4084b54ee2fdf397295beb21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 21:29:49 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/parsers/ufw.py"]},"message":"convert integer fields","epoch":1618979389,"epoch_utc":null},{"commit":"47e262cf7200b02ff0af97a70ffa6bec286c8f39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 21:21:42 2021 -0700","stats":{"files_changed":1,"insertions":59,"deletions":14,"files":["jc/parsers/ufw.py"]},"message":"clean up fields","epoch":1618978902,"epoch_utc":null},{"commit":"eec673be9092e382694aa02682564510ce4e7f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 20:32:59 2021 -0700","stats":{"files_changed":1,"insertions":88,"deletions":3,"files":["jc/parsers/ufw.py"]},"message":"working raw parser","epoch":1618975979,"epoch_utc":null},{"commit":"9a0fb2a7c87e6fde0cc0d84fa8a1f131e28ea732","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 14:17:01 2021 -0700","stats":{"files_changed":1,"insertions":157,"deletions":0,"files":["jc/parsers/ufw.py"]},"message":"parse major sections","epoch":1618953421,"epoch_utc":null},{"commit":"b5145d6c14d7a51e7cfdebe126c9689dc90f7b27","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 13:39:12 2021 -0700","stats":{"files_changed":4,"insertions":8,"deletions":4,"files":["CHANGELOG","jc/__init__.py","jc/cli.py","setup.py"]},"message":"version bump to v1.15.3","epoch":1618951152,"epoch_utc":null},{"commit":"9747ca414dfb8218389c7b2199a080edabc2a184","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 10:50:20 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/utils.py"]},"message":"minor optimization to convert_to_int(). No longer runs through convert_to_float(), but uses standard float() function.","epoch":1618941020,"epoch_utc":null},{"commit":"312d465b61a15592cc70d3734ad747b9a2be10ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 19 14:18:12 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"]},"message":"update link","epoch":1618867092,"epoch_utc":null},{"commit":"7dcf87d24ad40eba6ba98de2b4b2bf177a76cd71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 19 13:12:55 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping.py"]},"message":"formatting","epoch":1618863175,"epoch_utc":null},{"commit":"cf3cfd16a9de05f30303b5952fbe609cde842d2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 19 09:59:58 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_utils.py"]},"message":"rename tests","epoch":1618851598,"epoch_utc":null},{"commit":"fcc7e5294973d1a18943fa2ce2e836b0fe757d95","merge":"6c83846 3ab9d48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 17:28:27 2021 -0700","message":"Merge pull request #123 from kellyjonbrazil/dev\n\nDev v1.15.2","epoch":1618792107,"epoch_utc":null},{"commit":"3ab9d480149a692510ab9e0ac8e745b674683e3d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 17:24:42 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CHANGELOG"]},"message":"update changelog","epoch":1618791882,"epoch_utc":null},{"commit":"7eddf41c5f6310264359cd6d78bdfa4b65af7d06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 17:21:08 2021 -0700","stats":{"files_changed":11,"insertions":96,"deletions":9,"files":["jc/man/jc.1.gz","jc/utils.py","man/jc.1.gz","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/df.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/free-h.json","tests/test_utils.py"]},"message":"dont round up int conversions and fix tests","epoch":1618791668,"epoch_utc":null},{"commit":"27a196c93862bd737603cfe402b35529eb412954","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 16:42:42 2021 -0700","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc update","epoch":1618789362,"epoch_utc":null},{"commit":"e4324f05fb6f89c34fa1567e70d8636457623edb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 16:42:34 2021 -0700","stats":{"files_changed":2,"insertions":14,"deletions":14,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"fix indentation in doc","epoch":1618789354,"epoch_utc":null},{"commit":"d36b332bd78b5bf5979cdc59b31da08d8e4104d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 16:33:47 2021 -0700","stats":{"files_changed":53,"insertions":196,"deletions":274,"files":["docs/parsers/systemctl_lj.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/wc.md","docs/parsers/who.md","docs/utils.md","jc/parsers/acpi.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/hash.py","jc/parsers/hciconfig.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl_lj.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/utils.py"]},"message":"use jc.utils for conversions","epoch":1618788827,"epoch_utc":null},{"commit":"1f034826f69c461495f7a302cc8fe35e3052e72f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 13:01:25 2021 -0700","stats":{"files_changed":42,"insertions":94,"deletions":185,"files":["docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","tests/fixtures/centos-7.7/ls-alh.json","tests/fixtures/centos-7.7/lsof-sudo.json","tests/fixtures/centos-7.7/lsof.json","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/ubuntu-18.04/ls-alh.json","tests/fixtures/ubuntu-18.04/lsof-sudo.json","tests/fixtures/ubuntu-18.04/lsof.json"]},"message":"use jc.utils for conversions","epoch":1618776085,"epoch_utc":null},{"commit":"246c707c98d3128b4e38f5c4b23a1e0ceedc0b0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 11:46:42 2021 -0700","stats":{"files_changed":46,"insertions":190,"deletions":196,"files":["CHANGELOG","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/df.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/hash.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/utils.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/hash.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/utils.py","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/osx-10.11.6/df-h.json","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/free-h.json"]},"message":"use jc.utils conversions","epoch":1618771602,"epoch_utc":null},{"commit":"b5d8968144e76090870f8563dc1bce910fba668c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 17 17:22:59 2021 -0700","stats":{"files_changed":1,"insertions":19,"deletions":0,"files":["jc/utils.py"]},"message":"add convert_to_int function","epoch":1618705379,"epoch_utc":null},{"commit":"f7b9fbefdde6973077573fec02342eb9946789c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 17 17:22:44 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add query_size info for dig","epoch":1618705364,"epoch_utc":null},{"commit":"b1fc4533833ca25f59869bfec8ac114bf49c7847","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 17 17:22:30 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"]},"message":"fix _IfconfigParser name","epoch":1618705350,"epoch_utc":null},{"commit":"7581c8d0f4262fc6a05240bb21ffe533b153f6e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 17 17:07:20 2021 -0700","stats":{"files_changed":3,"insertions":45,"deletions":32,"files":["docs/parsers/dig.md","jc/parsers/dig.py","tests/fixtures/generic/dig-edns3.json"]},"message":"add query_size field. handle user-specified dig output better - especially when querying dnssec","epoch":1618704440,"epoch_utc":null},{"commit":"32bf8ad6f4fff83fdfd83d66c1ba8f1af5a65a90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 17 15:02:45 2021 -0700","stats":{"files_changed":4,"insertions":52,"deletions":24,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"update dig docs","epoch":1618696965,"epoch_utc":null},{"commit":"b083bcc10fa1105fc09ce8d2c3297aa5575c9d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:30:17 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]},"message":"update man page","epoch":1618615817,"epoch_utc":null},{"commit":"4f6fdd120d23468270c1d7111e4ef71b87759a1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:30:04 2021 -0700","stats":{"files_changed":2,"insertions":134,"deletions":100,"files":["docs/readme.md","jc/__init__.py"]},"message":"use dig as example","epoch":1618615804,"epoch_utc":null},{"commit":"eb0038be2490053d32803d30e1c3d4d34509d130","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:29:44 2021 -0700","stats":{"files_changed":1,"insertions":40,"deletions":19,"files":["EXAMPLES.md"]},"message":"update dig examples","epoch":1618615784,"epoch_utc":null},{"commit":"7ecdf819fa37c38ae6159ad8e7bc973ee4f34559","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:29:27 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":84,"files":["README.md","templates/readme_template"]},"message":"remove dig example from readme,","epoch":1618615767,"epoch_utc":null},{"commit":"c6aa4d083550d25bcb621cad524047cfd6a08217","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:19:20 2021 -0700","stats":{"files_changed":6,"insertions":252,"deletions":317,"files":["README.md","docs/parsers/dig.md","jc/man/jc.1.gz","jc/parsers/dig.py","man/jc.1.gz","templates/readme_template"]},"message":"update docs with new dig parser examples","epoch":1618615160,"epoch_utc":null},{"commit":"7c584b89a6e6b924d53d50103b97f0c2405c33b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:04:06 2021 -0700","stats":{"files_changed":15,"insertions":352,"deletions":52,"files":["jc/parsers/dig.py","tests/fixtures/generic/dig-additional.json","tests/fixtures/generic/dig-additional.out","tests/fixtures/generic/dig-additional2.json","tests/fixtures/generic/dig-additional2.out","tests/fixtures/generic/dig-additional3.json","tests/fixtures/generic/dig-additional3.out","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/generic/dig-edns.json","tests/fixtures/generic/dig-edns.out","tests/fixtures/generic/dig-edns2.json","tests/fixtures/generic/dig-edns2.out","tests/fixtures/generic/dig-edns3.json","tests/fixtures/generic/dig-edns3.out","tests/test_dig.py"]},"message":"add additional section","epoch":1618614246,"epoch_utc":null},{"commit":"c166c0bfdafa922f57f021fa4d16e467fca02d58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 15:22:22 2021 -0700","stats":{"files_changed":14,"insertions":55,"deletions":21,"files":["jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json"]},"message":"add opt_pseudosection section to output and fix existing tests","epoch":1618611742,"epoch_utc":null},{"commit":"a8dd3f7802bfe8fd3ffbedf89af45ddc580ee78d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 13:11:02 2021 -0700","stats":{"files_changed":5,"insertions":54,"deletions":281,"files":["CHANGELOG","jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-axfr.json"]},"message":"working dig axfr fixes","epoch":1618603862,"epoch_utc":null},{"commit":"3b0e2f03f3b11398ff57b1daed542faaf0b80a62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 08:46:20 2021 -0700","stats":{"files_changed":2,"insertions":24,"deletions":23,"files":["jc/cli.py","templates/manpage_template"]},"message":"clean up examples","epoch":1618587980,"epoch_utc":null},{"commit":"8390ae48c88ab1c7d5acbf40c0e60606953817bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 15 16:53:03 2021 -0700","stats":{"files_changed":7,"insertions":8,"deletions":8,"files":["jc/parsers/dig.py","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json"]},"message":"fix server entry when IPv6 address is in value (maxsplit on colons)","epoch":1618530783,"epoch_utc":null},{"commit":"2db82c0a7e19d596c876ede8a8ff106aaa733ee5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 20:43:58 2021 -0700","stats":{"files_changed":1,"insertions":66,"deletions":0,"files":["EXAMPLES.md"]},"message":"add systeminfo example","epoch":1618458238,"epoch_utc":null},{"commit":"61479540756704f10853233300ceae8f954a8a95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 20:39:35 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":0,"files":["tests/test_systeminfo.py","tests/test_utils.py"]},"message":"update tests","epoch":1618457975,"epoch_utc":null},{"commit":"691df271fcfe057ae4b75ad40869e23deb37b886","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 20:30:31 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":1,"files":["docs/parsers/systeminfo.md","jc/man/jc.1.gz","jc/parsers/systeminfo.py","man/jc.1.gz"]},"message":"add info docstring","epoch":1618457431,"epoch_utc":null},{"commit":"89f52b95f7055da9d7b5fa8dce0923d4c3435bd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 20:20:46 2021 -0700","stats":{"files_changed":13,"insertions":467,"deletions":821,"files":["README.md","docs/parsers/systeminfo.md","jc/man/jc.1.gz","jc/parsers/systeminfo.py","jc/utils.py","man/jc.1.gz",".../windows/windows-10/systeminfo-hyperv-utc.json",".../windows/windows-10/systeminfo-hyperv-utc.out",".../windows/windows-10/systeminfo-hyperv.json","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-10/systeminfo.out",".../windows/windows-2012r2/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"]},"message":"update systeminfo parser with updated timestamps, normalized blank fields, and new doc style","epoch":1618456846,"epoch_utc":null},{"commit":"146acc1bf69c402e38c2f1bc842b84e6cff7e2cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 16:46:16 2021 -0700","stats":{"files_changed":1,"insertions":23,"deletions":29,"files":["jc/parsers/systeminfo.py"]},"message":"rename functions to make them private","epoch":1618443976,"epoch_utc":null},{"commit":"c4a345f59aa090336b4e80f181493cd5bc2c17c5","merge":"dfd2703 325fab2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 16:39:44 2021 -0700","message":"Merge pull request #106 from jon-rd/j/systeminfo\n\nAdd windows systeminfo command parser","epoch":1618443584,"epoch_utc":null},{"commit":"dfd2703f75b907ba865fff266d0742d8931bc2d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 16:39:05 2021 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"]},"message":"bump dev to v1.15.2","epoch":1618443545,"epoch_utc":null},{"commit":"325fab2de7b8a4bfc452ab8d3cf333d47fdf4989","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Wed Apr 14 11:52:13 2021 -0500","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/systeminfo.py"]},"message":"update documentation for parsed structures","epoch":1618426333,"epoch_utc":null},{"commit":"f3d00cf38ad15aeda7eaa5644ebc30ff33de6a29","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Wed Apr 14 09:06:14 2021 -0500","stats":{"files_changed":5,"insertions":56,"deletions":48,"files":["jc/parsers/systeminfo.py",".../windows/windows-10/systeminfo-hyperv.json","tests/fixtures/windows/windows-10/systeminfo.json",".../windows/windows-2012r2/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"]},"message":"append mb to memory key names; adjust expected timestamps to utc tz","epoch":1618416374,"epoch_utc":null},{"commit":"14838f7f5d780896f1318cac2c3f34d249a158d4","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Wed Apr 14 08:59:17 2021 -0500","stats":{"files_changed":9,"insertions":956,"deletions":116,"files":["jc/parsers/systeminfo.py","jc/utils.py",".../windows/windows-10/systeminfo-hyperv.json",".../windows/windows-10/systeminfo-hyperv.out","tests/fixtures/windows/windows-10/systeminfo.json",".../windows/windows-2012r2/systeminfo.json",".../fixtures/windows/windows-2012r2/systeminfo.out","tests/fixtures/windows/windows-7/systeminfo.json","tests/test_systeminfo.py"]},"message":"update schema with nic, hyperv, and process changes","epoch":1618415957,"epoch_utc":null},{"commit":"af74047b81776c2ea32d82f9145ab60c346c8203","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Mon Apr 5 09:32:04 2021 -0500","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/systeminfo.py"]},"message":"update schema based on processor/hotfix changes","epoch":1617640324,"epoch_utc":null},{"commit":"660c59129cf4ba7889fb3c6fbafd9dd9b479ccd9","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Mon Apr 5 09:29:42 2021 -0500","stats":{"files_changed":3,"insertions":41,"deletions":9,"files":["jc/parsers/systeminfo.py","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"]},"message":"Add parsing of processors/hotfixs","epoch":1617640182,"epoch_utc":null},{"commit":"89a88e186ed71d84ea802cf08ab756b49cee3225","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Thu Mar 25 16:58:54 2021 -0500","stats":{"files_changed":1,"insertions":152,"deletions":0,"files":["docs/parsers/systeminfo.md"]},"message":"Add systeminfo.md file","epoch":1616716734,"epoch_utc":null},{"commit":"f861cf95b96a224a0a11f2cdc3261b94c02415ef","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Thu Mar 25 16:18:14 2021 -0500","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["jc/cli.py","jc/parsers/systeminfo.py"]},"message":"Change to v0.5; add parser to cli.py; add to docgen","epoch":1616714294,"epoch_utc":null},{"commit":"ee8f06cbdb03f8254bb6a3c56fa5b8a64ff9ca77","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Wed Mar 24 14:13:22 2021 -0500","stats":{"files_changed":6,"insertions":688,"deletions":0,"files":["jc/parsers/systeminfo.py","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-10/systeminfo.out","tests/fixtures/windows/windows-7/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.out","tests/test_systeminfo.py"]},"message":"Add windows systeminfo command parser","epoch":1616620402,"epoch_utc":null},{"commit":"a2e8b3c7b681605916b8950d035ee19889a125a5","merge":"e0681ee 6c83846","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 16:40:43 2021 -0700","message":"Merge pull request #121 from kellyjonbrazil/master\n\nMerge pull request #120 from kellyjonbrazil/dev","epoch":1618357243,"epoch_utc":null},{"commit":"6c838460752c7131f75cdab2da07266fee492060","merge":"10292f7 e0681ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:59:17 2021 -0700","message":"Merge pull request #120 from kellyjonbrazil/dev\n\nDev v1.15.1","epoch":1618351157,"epoch_utc":null},{"commit":"e0681eebb9881dc0ffddb478224455f434919104","merge":"e5732d1 10292f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:57:44 2021 -0700","message":"Merge branch 'master' into dev","epoch":1618351064,"epoch_utc":null},{"commit":"e5732d1cea1c882f6486cf288e45edb993989ea0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:54:38 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"update changelog","epoch":1618350878,"epoch_utc":null},{"commit":"6e7ae3cd3f003fe9e1e587b7f8ebd16ba0895014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:51:46 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/timedatectl.md","jc/man/jc.1.gz","jc/parsers/timedatectl.py","man/jc.1.gz"]},"message":"formatting of timedatectl docs","epoch":1618350706,"epoch_utc":null},{"commit":"f95632d1aaee545ae0ce081ca0617be135c09220","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:49:57 2021 -0700","stats":{"files_changed":7,"insertions":83,"deletions":62,"files":["EXAMPLES.md","docs/parsers/rpm_qi.md","jc/man/jc.1.gz","jc/parsers/rpm_qi.py","man/jc.1.gz","tests/fixtures/centos-7.7/rpm-qai.json","tests/fixtures/centos-7.7/rpm-qi-package.json"]},"message":"add install_date calculated fields","epoch":1618350597,"epoch_utc":null},{"commit":"2f8b7b26e59bcd745fa1fcadb373455c7d404286","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:35:17 2021 -0700","stats":{"files_changed":3,"insertions":1,"deletions":2,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"update docs for v1.15.1","epoch":1618349717,"epoch_utc":null},{"commit":"10292f7502e4cb1c53b53ed39fed9288044c2ef8","merge":"37a3565 aef5470","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:15:40 2021 -0700","message":"Merge pull request #119 from kellyjonbrazil/dpkg_l-fix\n\nadd _l to module name","epoch":1618258540,"epoch_utc":null},{"commit":"aef54705f5267c633e0778e8dce0065978083139","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:15:12 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["docs/parsers/dpkg_l.md"]},"message":"add _l to module name","epoch":1618258512,"epoch_utc":null},{"commit":"bba5980fa53767716bc35d8c904e7a2341346eeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:13:18 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]},"message":"man page update","epoch":1618258398,"epoch_utc":null},{"commit":"977425abfb05a63ee372df36124ac6ba6a5a0aaa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:12:08 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"]},"message":"add _l to package name in docs","epoch":1618258328,"epoch_utc":null},{"commit":"37a3565a1bbd3d01663602673fed651509e69d8c","merge":"bdcdaee 13deb8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:06:30 2021 -0700","message":"Merge pull request #118 from kellyjonbrazil/rpm-qi-doc-fix\n\nfix rpm-qi docs","epoch":1618257990,"epoch_utc":null},{"commit":"13deb8bfb6e77aaf86942f0be87b59d06ee2a97c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:05:34 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":194,"files":["docs/parsers/rpm_qai.md","docs/parsers/rpm_qi.md"]},"message":"fix rpm-qi docs","epoch":1618257934,"epoch_utc":null},{"commit":"a3ed9d075aff41599452c3094f7d057c25fc8f89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:04:22 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":191,"files":["docs/parsers/rpm_qai.md"]},"message":"remove old parser doc","epoch":1618257862,"epoch_utc":null},{"commit":"fb0ced549e021916dee7da39859e8f85c8216e16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:01:17 2021 -0700","stats":{"files_changed":4,"insertions":6,"deletions":6,"files":["docs/parsers/rpm_qi.md","jc/man/jc.1.gz","jc/parsers/rpm_qi.py","man/jc.1.gz"]},"message":"fix rpm-qi docs (used underscore instead of dash in name)","epoch":1618257677,"epoch_utc":null},{"commit":"7eb31bc7d290fcd09e53524ebbb11e59110df6a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 19:55:03 2021 -0700","stats":{"files_changed":4,"insertions":39,"deletions":48,"files":["docs/parsers/airport_s.md","jc/man/jc.1.gz","jc/parsers/airport_s.py","man/jc.1.gz"]},"message":"update airport_s docs","epoch":1618023303,"epoch_utc":null},{"commit":"6a06a3914273853742ac57433398968ccf7d9897","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 16:36:20 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["docgen.sh"]},"message":"use herestring instead of echo -e into jq","epoch":1618011380,"epoch_utc":null},{"commit":"bdcdaee6c5299ea0750512e0943c7f58f56f2e35","merge":"5d8f836 605353f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 15:11:05 2021 -0700","message":"Merge pull request #117 from kellyjonbrazil/doc_update\n\nadd new docs","epoch":1618006265,"epoch_utc":null},{"commit":"605353fdce3b8b5986d20a35d05f7210a6df0730","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 15:10:38 2021 -0700","stats":{"files_changed":70,"insertions":1710,"deletions":2656,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md"]},"message":"add new docs","epoch":1618006238,"epoch_utc":null},{"commit":"490c9e17699e8e4f70dcc1612e1a808f86e24b0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 11:38:17 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["tests/test_cli.py"]},"message":"add more cli tests for magic command","epoch":1617993497,"epoch_utc":null},{"commit":"6ebebb659dc93daeaa869752ad135f6e1d2cb1ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 11:10:08 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"]},"message":"update changelog","epoch":1617991808,"epoch_utc":null},{"commit":"0e70c5ee12e96f04a89de05153a2da9cd39f98ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 11:04:17 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"update documentation link","epoch":1617991457,"epoch_utc":null},{"commit":"cd531acf6045660e022c932f62a01d4084433ad4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 11:02:19 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["docgen.sh"]},"message":"clean up comment","epoch":1617991339,"epoch_utc":null},{"commit":"908ac1f61c5cc011d05d550f933940dfed4431f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 10:56:43 2021 -0700","stats":{"files_changed":143,"insertions":0,"deletions":690,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/man/jc.1.gz","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","man/jc.1.gz"]},"message":"update docs - remove compatibility section since it is now automatically generated from info()","epoch":1617991003,"epoch_utc":null},{"commit":"f5c7e7e4046bc57b4fcad99390e31b121a7106ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 10:36:42 2021 -0700","stats":{"files_changed":70,"insertions":350,"deletions":0,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md"]},"message":"add updated docs with home link and parser info at the bottom","epoch":1617989802,"epoch_utc":null},{"commit":"001c700b5bd280cb1cb9e54169ae5f1b7918c257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 10:36:03 2021 -0700","stats":{"files_changed":3,"insertions":2,"deletions":1,"files":["docgen.sh","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"add home link to the top of the md file","epoch":1617989763,"epoch_utc":null},{"commit":"9b41e9bef0ff099e70f37fddc8fe2c6bd8457b19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 10:32:58 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"]},"message":"Add parser information header","epoch":1617989578,"epoch_utc":null},{"commit":"34bd6e32dc0c0bf7dfeedaadbf04115f43e9d060","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 10:26:34 2021 -0700","stats":{"files_changed":1,"insertions":20,"deletions":4,"files":["docgen.sh"]},"message":"pull each parser as a json object into a bash array and iterate on it to add supplementary information like version, author, and compatibility","epoch":1617989194,"epoch_utc":null},{"commit":"c5d058490beaa8f59875a8acfd7a400764768639","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 09:12:41 2021 -0700","stats":{"files_changed":1,"insertions":22,"deletions":13,"files":["jc/cli.py"]},"message":"move parser doc printing to its own function","epoch":1617984761,"epoch_utc":null},{"commit":"dd1ae6d9a7de5421830232deb42d933b9a652672","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 08:09:37 2021 -0700","stats":{"files_changed":4,"insertions":3,"deletions":1,"files":["MANIFEST.in","jc/man/jc.1.gz","man/jc.1.gz","mangen.py"]},"message":"add man page inside the pypi package for easier packaging in homebrew","epoch":1617980977,"epoch_utc":null},{"commit":"d8ea9bde823a7f5c146741150c3211737345c7dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 16:42:57 2021 -0700","stats":{"files_changed":3,"insertions":16,"deletions":16,"files":["docs/parsers/w.md","jc/parsers/w.py","man/jc.1.gz"]},"message":"doc update","epoch":1617925377,"epoch_utc":null},{"commit":"125edc9c906dc3650b6a683ed13830075acb7ab6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 16:42:45 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"bail out for -h, -a, and -v in magic()","epoch":1617925365,"epoch_utc":null},{"commit":"15ea43e394a9004f8ccec208b3a066c76e241866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 16:28:05 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["MANIFEST.in"]},"message":"add man file to package for easier packaging in homebrew","epoch":1617924485,"epoch_utc":null},{"commit":"b55b02687c00d1c50e30f30c9b9a7f36f783eb0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 16:14:11 2021 -0700","stats":{"files_changed":19,"insertions":371,"deletions":441,"files":["CHANGELOG","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","man/jc.1.gz","setup.py"]},"message":"doc update","epoch":1617923651,"epoch_utc":null},{"commit":"da611f0ac6321f7f52fdbc419f8b155c74393c28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 15:53:06 2021 -0700","stats":{"files_changed":4,"insertions":63,"deletions":50,"files":["jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","man/jc.1.gz"]},"message":"update docs","epoch":1617922386,"epoch_utc":null},{"commit":"b8b8dfead4fdc4285585c44c2ebce3bdd42b2e7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 15:52:49 2021 -0700","stats":{"files_changed":61,"insertions":1501,"deletions":1848,"files":["docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py"]},"message":"update docs","epoch":1617922369,"epoch_utc":null},{"commit":"4290a3cbd135cacbf63664dc30768017ebbed28d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 14:00:56 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":9,"files":["docs/parsers/ifconfig.md","jc/parsers/ifconfig.py"]},"message":"make IfconfigParser class private","epoch":1617915656,"epoch_utc":null},{"commit":"a5e2203cee6a7bc398cf280f57d37638eeb1d2d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 12:45:08 2021 -0700","stats":{"files_changed":3,"insertions":2,"deletions":1,"files":["docs/parsers/ifconfig.md","jc/parsers/ifconfig.py","man/jc.1.gz"]},"message":"update ifconfig doc","epoch":1617911108,"epoch_utc":null},{"commit":"e28c08b1361161cfd123b9ebc11fa1ffa87d658f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 12:42:01 2021 -0700","stats":{"files_changed":46,"insertions":976,"deletions":1209,"files":["docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","man/jc.1.gz"]},"message":"update documentation","epoch":1617910921,"epoch_utc":null},{"commit":"a4b6846f63b43168085275d73940265940badf46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 11:37:39 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":467,"files":["man/jc.1","man/jc.1.gz"]},"message":"man update","epoch":1617907059,"epoch_utc":null},{"commit":"2bc830786114fd57619f34b936dcf6e0bed7a109","merge":"9b39917 5d8f836","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 11:33:50 2021 -0700","message":"Merge branch 'master' into dev\n\n# Conflicts:\n# man/jc.1","epoch":1617906830,"epoch_utc":null},{"commit":"9b39917c798ed0310c9b82d87172cbf6d24ba111","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 11:24:02 2021 -0700","stats":{"files_changed":17,"insertions":391,"deletions":453,"files":["README.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","jc/cli.py","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"update docstrings for new help functionality","epoch":1617906242,"epoch_utc":null},{"commit":"57c13cc0a38ad89fda8b0e362bd6487257d0a26a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 10:54:15 2021 -0700","stats":{"files_changed":1,"insertions":23,"deletions":3,"files":["jc/cli.py"]},"message":"add support for parser help","epoch":1617904455,"epoch_utc":null},{"commit":"b7355fd30d992a1bcc90227f5a1b02be073829e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 10:20:24 2021 -0700","stats":{"files_changed":2,"insertions":37,"deletions":48,"files":["docs/parsers/arp.md","jc/parsers/arp.py"]},"message":"new docstring format for improved documentation","epoch":1617902424,"epoch_utc":null},{"commit":"93ae309e407b26820b9f05b5b331d05fc77df57f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 10:20:00 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/__init__.py","man/jc.1"]},"message":"bump version to 1.15.1","epoch":1617902400,"epoch_utc":null},{"commit":"5d8f8365e24a7c3a587d4e71ebba4876de08203b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 14:27:34 2021 -0700","stats":{"files_changed":3,"insertions":9,"deletions":461,"files":["man/jc.1","man/jc.1.gz","mangen.py"]},"message":"gzip man page","epoch":1617830854,"epoch_utc":null},{"commit":"f26909eefb236e9ebf63be53cd86ae13cc3d9ea3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 11:18:33 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["docs/parsers/dir.md"]},"message":"formatting","epoch":1617819513,"epoch_utc":null},{"commit":"55bfbb2797ede3aefbb14ecab950b108b1895ccc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 11:13:27 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":6,"files":["EXAMPLES.md","jc/parsers/dir.py"]},"message":"formatting","epoch":1617819207,"epoch_utc":null},{"commit":"8970b8342a855203aef649b60dad3e49a1d7fd2a","merge":"a73fdb7 5285e69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 09:34:45 2021 -0700","message":"Merge pull request #115 from kellyjonbrazil/master\n\nSync master and dev","epoch":1617813285,"epoch_utc":null},{"commit":"5285e699c30fdeaf56068f5a03ef1d1d33fa673c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 08:07:50 2021 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","jc/cli.py","man/jc.1"]},"message":"fix rpm-qi parser name","epoch":1617808070,"epoch_utc":null},{"commit":"275f3860d5870303235b651d42650256e4db8ada","merge":"577811f a73fdb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 07:54:41 2021 -0700","message":"Merge pull request #114 from kellyjonbrazil/dev\n\nDev v1.15.0","epoch":1617807281,"epoch_utc":null},{"commit":"a73fdb7478965f0f2c841ac01b2762db80ad0786","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 07:50:17 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["CHANGELOG","man/jc.1"]},"message":"update dates","epoch":1617807017,"epoch_utc":null},{"commit":"f2d746403a0ed764f931ae9e14d180bab107dcca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 20:30:56 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/rpm_qi.md","jc/parsers/rpm_qi.py"]},"message":"typo fix","epoch":1617766256,"epoch_utc":null},{"commit":"b7dbf2c49be4beb793495a0aaee7f05dbea5a3a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 18:53:50 2021 -0700","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["jc/utils.py"]},"message":"doc formatting","epoch":1617760430,"epoch_utc":null},{"commit":"21f3c97788826e79b0c387f877c5adf269318e97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 18:38:04 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"]},"message":"rename rpm_qai to rpm_qi","epoch":1617759484,"epoch_utc":null},{"commit":"14b727cc717d04fefba1cc31b6f29b549ced986f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 18:34:08 2021 -0700","stats":{"files_changed":3,"insertions":73,"deletions":0,"files":["tests/fixtures/centos-7.7/rpm-qi-package.json","tests/fixtures/centos-7.7/rpm-qi-package.out","tests/test_rpm_qai.py"]},"message":"add rpm_qi tests","epoch":1617759248,"epoch_utc":null},{"commit":"abee226591ed4ae37351efc995017d28b27827d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 18:32:47 2021 -0700","stats":{"files_changed":5,"insertions":205,"deletions":14,"files":["README.md","docs/parsers/rpm_qi.md","jc/cli.py","jc/parsers/{rpm_qai.py => rpm_qi.py}","man/jc.1"]},"message":"rename rpm_qia to rpm_qi","epoch":1617759167,"epoch_utc":null},{"commit":"293ad39f4bcf326186dd917d8bc58d3964e5e4d6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 16:48:31 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"typo fix","epoch":1617752911,"epoch_utc":null},{"commit":"92443025811019f616f596abb60a2889f604c122","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 15:07:39 2021 -0700","stats":{"files_changed":4,"insertions":7,"deletions":6,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/rpm_qai.md","jc/parsers/rpm_qai.py"]},"message":"rpm parser doc update","epoch":1617746859,"epoch_utc":null},{"commit":"753cac25fb1e7e6cd2c742afa8d45ced068ea91d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 14:46:27 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":3,"files":["jc/parsers/rpm_qai.py"]},"message":"only add description if it exists","epoch":1617745587,"epoch_utc":null},{"commit":"0548263e898bf14f93d2fa423c0f0a9d9f2ff567","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 14:39:39 2021 -0700","stats":{"files_changed":8,"insertions":10468,"deletions":0,"files":["EXAMPLES.md","README.md","docs/parsers/rpm_qai.md","jc/cli.py","jc/parsers/rpm_qai.py","man/jc.1","tests/fixtures/centos-7.7/rpm-qai.json","tests/fixtures/centos-7.7/rpm-qai.out"]},"message":"add rpm -qai parser","epoch":1617745179,"epoch_utc":null},{"commit":"53776a9bf894988d6ef9221a62ab8b816c89560c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 11:36:10 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["man/jc.1","templates/manpage_template"]},"message":"note -a output is JSON","epoch":1617734170,"epoch_utc":null},{"commit":"cc7def9b76a7fa6de1e11b584676820f3acb0257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 11:29:30 2021 -0700","stats":{"files_changed":3,"insertions":18,"deletions":0,"files":["tests/fixtures/osx-10.14.6/finger.json","tests/fixtures/osx-10.14.6/finger.out","tests/test_finger.py"]},"message":"add OSX finger tests","epoch":1617733770,"epoch_utc":null},{"commit":"11a4422c25ed905f33475677bcc2f59f49c62a23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 11:23:29 2021 -0700","stats":{"files_changed":3,"insertions":51,"deletions":0,"files":["tests/fixtures/centos-7.7/finger.json","tests/fixtures/centos-7.7/finger.out","tests/test_finger.py"]},"message":"add centos 7.7 finger tests","epoch":1617733409,"epoch_utc":null},{"commit":"3a44785260514227b541530baf3e14b6c7ebe86a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 11:23:09 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/finger.py"]},"message":"del details key if details are blank","epoch":1617733389,"epoch_utc":null},{"commit":"e0d430c26c38db8de5a32741e05df412cffe45b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 11:00:46 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"update -r raw option info","epoch":1617732046,"epoch_utc":null},{"commit":"417b70020accfa4910016e9d3d12690a5488f6f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 10:51:41 2021 -0700","stats":{"files_changed":5,"insertions":129,"deletions":22,"files":["EXAMPLES.md","docs/parsers/finger.md","jc/parsers/finger.py","tests/fixtures/ubuntu-18.04/finger.json","tests/fixtures/ubuntu-18.04/finger.out"]},"message":"add idle time fields to finger parser","epoch":1617731501,"epoch_utc":null},{"commit":"7b29c464b72ef9a79bd872dab92cf65016490bcc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 10:04:02 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"date updated","epoch":1617728642,"epoch_utc":null},{"commit":"26d5529d86e4e459ad94226465c3697a050af0ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 10:03:51 2021 -0700","stats":{"files_changed":1,"insertions":10,"deletions":7,"files":["docs/parsers/finger.md"]},"message":"remove aix support, add note for -s support. schema update","epoch":1617728631,"epoch_utc":null},{"commit":"852103c478321b84ffbbc0a876d5ece0c0881e1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 10:02:46 2021 -0700","stats":{"files_changed":1,"insertions":27,"deletions":14,"files":["jc/parsers/finger.py"]},"message":"tweak regex to support arbitrary 'detail' data","epoch":1617728566,"epoch_utc":null},{"commit":"26a115421b0888e23f4348f1124e2ef7b39df4cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 17:16:38 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["CHANGELOG"]},"message":"add finger parser","epoch":1617668198,"epoch_utc":null},{"commit":"755b941a9aa602d95d9bc599f5c64e05f9e6216d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 17:14:33 2021 -0700","stats":{"files_changed":3,"insertions":35,"deletions":30,"files":["EXAMPLES.md","docs/parsers/finger.md","jc/parsers/finger.py"]},"message":"doc update","epoch":1617668073,"epoch_utc":null},{"commit":"fd1ca82d86649adeb84968142665e5e4fae3fa0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 17:09:22 2021 -0700","stats":{"files_changed":5,"insertions":263,"deletions":0,"files":["README.md","docs/parsers/finger.md","jc/cli.py","jc/parsers/finger.py","man/jc.1"]},"message":"add finger parser","epoch":1617667762,"epoch_utc":null},{"commit":"6fe175344fc61d4996a9ea20f6c5d429efb1fac7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 13:38:09 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"change examples link to github.io","epoch":1617655089,"epoch_utc":null},{"commit":"3590cda13a68616ee7eb8c85c5554ffb3fef036d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 12:07:52 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/last.md","jc/parsers/last.py"]},"message":"docs formatting","epoch":1617649672,"epoch_utc":null},{"commit":"2f1011dd85ec9b3550138ac4a4e1729fa5b4fe17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 12:03:35 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"readme update","epoch":1617649415,"epoch_utc":null},{"commit":"2b155261b3f6e4879b592f5bc052649ded5e3d69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 12:01:53 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"]},"message":"use new github.io links for documentation","epoch":1617649313,"epoch_utc":null},{"commit":"02f4d606d0a446c7cc74aedac6035ee79805950d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 11:49:30 2021 -0700","stats":{"files_changed":2,"insertions":69,"deletions":69,"files":["README.md","templates/readme_template"]},"message":"add documentation links to README.md","epoch":1617648570,"epoch_utc":null},{"commit":"577811f00b7fcd0396bb0e26a2985709bd2c65a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 11:42:59 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/_config.yml"]},"message":"Set theme jekyll-theme-cayman","epoch":1617648179,"epoch_utc":null},{"commit":"b4098d67a3a4a617d42c1389e0a88833c77b89b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 09:42:35 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"latest","epoch":1617640955,"epoch_utc":null},{"commit":"88bd7554aeb511c19e55dc3dde9c9376efb0485b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 09:42:25 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":3,"files":["docgen.sh","updatedocs.sh"]},"message":"add status messages","epoch":1617640945,"epoch_utc":null},{"commit":"b5ec16c5cafb78db093861cc30d9646207f2227a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 09:23:20 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":8,"files":["mangen.py","readmegen.py"]},"message":"formatting","epoch":1617639800,"epoch_utc":null},{"commit":"68fcb60a1460a35500180ec05a8cf5ba5706ff17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 20:56:10 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["updatedocs.sh"]},"message":"add updatedocs script","epoch":1617594970,"epoch_utc":null},{"commit":"e4781d60ce251f6d47f19bbe042e97f8aa9e2f18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 20:52:34 2021 -0700","stats":{"files_changed":65,"insertions":188,"deletions":189,"files":["README.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","man/jc.1"]},"message":"update parser descriptions with backticks surrounding command names","epoch":1617594754,"epoch_utc":null},{"commit":"6201fb346a66ba762651624cdaf03f08e08579a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 20:31:58 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","jc/parsers/iw_scan.py"]},"message":"test backticks in description","epoch":1617593518,"epoch_utc":null},{"commit":"f88c8343f9dec5e0190df94a5109e6c749bda286","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 20:30:53 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","jc/parsers/iw_scan.py"]},"message":"update iw-scan description for documentation","epoch":1617593453,"epoch_utc":null},{"commit":"25410d33168ee7142bd8f8c739ef22a62a47eb6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 20:28:54 2021 -0700","stats":{"files_changed":5,"insertions":973,"deletions":70,"files":["README.md","mangen.py","readmegen.py","{man/template => templates}/manpage_template","templates/readme_template"]},"message":"create readmegen.py script. move jinja2 templates to templates folder","epoch":1617593334,"epoch_utc":null},{"commit":"4ff9952938d0654376efc94ca7d8a12f6df171af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 15:57:44 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["README.md"]},"message":"change OSX to macOS","epoch":1617577064,"epoch_utc":null},{"commit":"5e3f63a412c5b23e7515337521ebba6273b5c11f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 15:53:23 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["man/jc.1","man/template/manpage_template"]},"message":"add license and copyright info. use variables instead of hard-coded values","epoch":1617576803,"epoch_utc":null},{"commit":"e1f57be69efdfd7facd07df6ef0955a36c4fc18b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 15:52:50 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"]},"message":"add license info","epoch":1617576770,"epoch_utc":null},{"commit":"2c65d5eeccdc95d2de00ac6575a9e8d8458486bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 14:40:22 2021 -0700","stats":{"files_changed":2,"insertions":32,"deletions":8,"files":["man/jc.1","man/template/manpage_template"]},"message":"man page updates","epoch":1617572422,"epoch_utc":null},{"commit":"aa621f2f1ee043611c440683dfb63e6577d8fac4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 14:29:37 2021 -0700","stats":{"files_changed":3,"insertions":74,"deletions":9,"files":["CHANGELOG","man/jc.1","man/template/manpage_template"]},"message":"enhance man page","epoch":1617571777,"epoch_utc":null},{"commit":"ac932c6e59ad80115962d0ea91e6aaabc70c211e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 3 14:48:30 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/utils.md","jc/utils.py"]},"message":"update timestamp docs","epoch":1617486510,"epoch_utc":null},{"commit":"029f79da1647e53f97ca83ba92b1f36a131f3128","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 21:52:08 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"added info regarding updated dev scripts for automating doc generation","epoch":1617425528,"epoch_utc":null},{"commit":"153b2b4a7a216caae5b03f6d50d43980c13a705f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 21:50:04 2021 -0700","stats":{"files_changed":1,"insertions":11,"deletions":68,"files":["docgen.sh"]},"message":"use jc to help automate the generation of its own docs","epoch":1617425404,"epoch_utc":null},{"commit":"709b2fe4eead06090f903718deeb06ec774fc26e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 18:08:46 2021 -0700","stats":{"files_changed":2,"insertions":16,"deletions":0,"files":["man/jc.1","man/template/manpage_template"]},"message":"add -h and -v options","epoch":1617412126,"epoch_utc":null},{"commit":"09c1fccc584e3d0582e19b520586419085ea8d04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 18:04:55 2021 -0700","stats":{"files_changed":3,"insertions":4,"deletions":6,"files":["man/jc.1","man/template/manpage_template","mangen.py"]},"message":"manpage updates","epoch":1617411895,"epoch_utc":null},{"commit":"fd254d99b782888fe7646e42a61f28aa99e7cba7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 17:40:09 2021 -0700","stats":{"files_changed":3,"insertions":193,"deletions":15,"files":["man/jc.1","man/template/manpage_template","mangen.py"]},"message":"add manpage generator","epoch":1617410409,"epoch_utc":null},{"commit":"88bd2c172217c498431e8904e74313bc27978785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 16:31:22 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"fix typo","epoch":1617406282,"epoch_utc":null},{"commit":"d03e2f0fc1d0310cd94702f4d3c959d71b0eb622","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 15:01:21 2021 -0700","stats":{"files_changed":1,"insertions":40,"deletions":0,"files":["CONTRIBUTING.md"]},"message":"add parser schema guidelines","epoch":1617400881,"epoch_utc":null},{"commit":"3f12a393bd37062cd1412128be495235b0c7351f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 13:25:23 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"formatting","epoch":1617395123,"epoch_utc":null},{"commit":"8c21284c5038bdc2e52ff4211fac747f33f52091","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 13:23:26 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["CONTRIBUTING.md"]},"message":"remove redundant license info","epoch":1617395006,"epoch_utc":null},{"commit":"e7d396c2157a77500017967dfc68ffaf32507c2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 13:21:56 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"update issues link","epoch":1617394916,"epoch_utc":null},{"commit":"f238fac0eb0c8e5133c6c9abf9ca709f5df7a925","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 13:19:47 2021 -0700","stats":{"files_changed":3,"insertions":49,"deletions":0,"files":["CHANGELOG","CONTRIBUTING.md","README.md"]},"message":"add contributing guidelines","epoch":1617394787,"epoch_utc":null},{"commit":"017228f80d9a65ad7715f31c539d9fca1615296f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:14:26 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add tested on Windows 10","epoch":1617390866,"epoch_utc":null},{"commit":"286c5fa9434e25434ee8f4825621f68464296469","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:12:43 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add dir parser","epoch":1617390763,"epoch_utc":null},{"commit":"74cfc13abe4cd09ca5470714caeaedd24c099770","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:10:05 2021 -0700","stats":{"files_changed":9,"insertions":12,"deletions":21,"files":["tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-S.json","tests/fixtures/windows-10/dir-dirs.json","tests/fixtures/windows-10/dir-files.json","tests/fixtures/windows-10/dir-mix.json","tests/fixtures/windows-10/dir-raw.json","tests/fixtures/windows-10/dir.json","tests/test_dir.py"]},"message":"fixup dir parser tests","epoch":1617390605,"epoch_utc":null},{"commit":"0ee4a6c377321cf6ff67ced38e9a07a8f6313943","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:01:39 2021 -0700","stats":{"files_changed":2,"insertions":207,"deletions":460,"files":["docs/parsers/dir.md","jc/parsers/dir.py"]},"message":"update schema and add epoch naive timestamp","epoch":1617390099,"epoch_utc":null},{"commit":"283433578dfc3f132ef35727ce5bafb3e390896c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:01:23 2021 -0700","stats":{"files_changed":2,"insertions":46,"deletions":0,"files":["EXAMPLES.md","README.md"]},"message":"add dir parser","epoch":1617390083,"epoch_utc":null},{"commit":"9559c85057308e8815d4654bbe0062a5858c0b2b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:01:05 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":0,"files":["jc/utils.py","tests/test_utils.py"]},"message":"add windows dir format","epoch":1617390065,"epoch_utc":null},{"commit":"c5c020f5654038dacba542be3784a35d7333cbcc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 11:16:03 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/parsers/dir.md"]},"message":"add /S option","epoch":1617387363,"epoch_utc":null},{"commit":"95ec79bceb3d0c4245e36b7b16cfda6e16b01197","merge":"8f8be8a 5b60c74","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 11:14:26 2021 -0700","message":"Merge pull request #107 from rasheed-rd/add-dir-parser\n\nAdd windows dir command parser","epoch":1617387266,"epoch_utc":null},{"commit":"8f8be8aa33f0b708ebd9a35c6b288572443d7181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 11:14:06 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"add -1 option info","epoch":1617387246,"epoch_utc":null},{"commit":"5b60c7445a3f8bd2ae1587aa0ffaeaf093966f9a","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","date":"Fri Apr 2 13:43:06 2021 -0400","stats":{"files_changed":5,"insertions":469,"deletions":400,"files":["docs/parsers/dir.md","jc/parsers/dir.py","tests/fixtures/windows-10/dir-S.json","tests/fixtures/windows-10/dir-S.out","tests/test_dir.py"]},"message":"Add support for /S and update documentation","epoch":1617396186,"epoch_utc":null},{"commit":"d9dbcc8b526c8de9c6d12ac580880fd606dc68cf","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","date":"Fri Apr 2 13:13:05 2021 -0400","stats":{"files_changed":15,"insertions":149,"deletions":73,"files":["docs/parsers/dir.md","jc/parsers/dir.py","tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-Q.json","tests/fixtures/windows-10/dir-Q.out","tests/fixtures/windows-10/dir-dirs.json","tests/fixtures/windows-10/dir-dirs.out","tests/fixtures/windows-10/dir-files.json","tests/fixtures/windows-10/dir-files.out","tests/fixtures/windows-10/dir-mix.json","tests/fixtures/windows-10/dir-mix.out","tests/fixtures/windows-10/dir-raw.json","tests/fixtures/windows-10/dir.json","tests/test_dir.py"]},"message":"Add parent dir to structure. Add test cases. Remove support for /Q","epoch":1617394385,"epoch_utc":null},{"commit":"79bc525970b38dea68b4859ac5dd32fc681e5994","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:42:36 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"]},"message":"add codes field to schema","epoch":1617334956,"epoch_utc":null},{"commit":"9dae1091ddc6141694ebfdc5ae649582cb879ccd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:41:05 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"]},"message":"typo fix","epoch":1617334865,"epoch_utc":null},{"commit":"74d3ac686a69518c1048260e37a0245ff254ff57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:37:12 2021 -0700","stats":{"files_changed":4,"insertions":61,"deletions":0,"files":["tests/fixtures/ubuntu-18.04/dpkg-l-codes.json","tests/fixtures/ubuntu-18.04/dpkg-l-columns500.json","tests/fixtures/ubuntu-18.04/dpkg-l.json","tests/test_dpkg_l.py"]},"message":"add dpkg-l tests","epoch":1617334632,"epoch_utc":null},{"commit":"cf3cc636badcf4ae6db1e5ee5e57ca0331ee5b0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:25:56 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add dpkg-l parser info","epoch":1617333956,"epoch_utc":null},{"commit":"a720441e1d34771c5a54876cb7dd63fb8c9f408e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:24:19 2021 -0700","stats":{"files_changed":1,"insertions":54,"deletions":0,"files":["EXAMPLES.md"]},"message":"add dpkg -l example","epoch":1617333859,"epoch_utc":null},{"commit":"0a7ed0959df07e2f36d9ec3ca8c294cfdaf10396","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:17:21 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"]},"message":"rename err to error","epoch":1617333441,"epoch_utc":null},{"commit":"eb83c9b86dc6d1ff15efed30993071834b65a7d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:13:40 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":21,"files":["docs/utils.md"]},"message":"replace parse_datetime_to_timestamp with timestamp class","epoch":1617333220,"epoch_utc":null},{"commit":"5c0142dd19eee14f4f1c287f0543e29824f9ae70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:12:58 2021 -0700","stats":{"files_changed":9,"insertions":1797,"deletions":2,"files":["CHANGELOG","docgen.sh","docs/parsers/dpkg_l.md","jc/cli.py","jc/parsers/dpkg_l.py","jc/parsers/universal.py","tests/fixtures/ubuntu-18.04/dpkg-l-codes.out","tests/fixtures/ubuntu-18.04/dpkg-l-columns500.out","tests/fixtures/ubuntu-18.04/dpkg-l.out"]},"message":"add dpkg-l parser","epoch":1617333178,"epoch_utc":null},{"commit":"c326c8dc8356b55bba13864156adf30607205ece","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 12:52:10 2021 -0700","stats":{"files_changed":18,"insertions":194,"deletions":1,"files":["jc/parsers/time.py","tests/fixtures/osx-10.14.6/time-l.json","tests/fixtures/osx-10.14.6/time-l.out","tests/fixtures/osx-10.14.6/time-lp.json","tests/fixtures/osx-10.14.6/time-lp.out","tests/fixtures/osx-10.14.6/time-p.json","tests/fixtures/osx-10.14.6/time-p.out","tests/fixtures/osx-10.14.6/time.json","tests/fixtures/osx-10.14.6/time.out","tests/fixtures/ubuntu-18.04/time-p.json","tests/fixtures/ubuntu-18.04/time-p.out","tests/fixtures/ubuntu-18.04/time-verbose.json","tests/fixtures/ubuntu-18.04/time-verbose.out","tests/fixtures/ubuntu-18.04/time.json","tests/fixtures/ubuntu-18.04/time.out","tests/fixtures/ubuntu-18.04/time2.json","tests/fixtures/ubuntu-18.04/time2.out","tests/test_time.py"]},"message":"add TypeError to except block. add /usr/bin/time tests","epoch":1617306730,"epoch_utc":null},{"commit":"fc4082a03feb5645a1ad687908782a2584a58956","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:26:02 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":131,"files":["jc/utils.py"]},"message":"remove old parse_datetime_to_timestamp function","epoch":1617301562,"epoch_utc":null},{"commit":"c8655565ff8718f0f14d41696b81e6539529dde1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:23:24 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"]},"message":"use new timestamp class","epoch":1617301404,"epoch_utc":null},{"commit":"638f879f16c9e87edb60953f4fd0b1c7ad92f277","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:21:27 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/dig.py"]},"message":"use new timestamp class","epoch":1617301287,"epoch_utc":null},{"commit":"1d221bf7e6128d57bd769c0fe8f37f7a94da8cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:19:49 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/who.py"]},"message":"use new timestamp class","epoch":1617301189,"epoch_utc":null},{"commit":"60ea71f0ef931dccf09e6eb0cb737ddad0b47f0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:18:03 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/timedatectl.py"]},"message":"use new timestamp class","epoch":1617301083,"epoch_utc":null},{"commit":"d8bdd35a3f462efcdc871426309299e8aefb0a79","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:17:53 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/stat.py"]},"message":"use new timestamp class","epoch":1617301073,"epoch_utc":null},{"commit":"7463891c53f3670710dfa72ed1422431c274fe4a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:13:02 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/last.py"]},"message":"use new timestamp class","epoch":1617300782,"epoch_utc":null},{"commit":"7537aec76fa07384c4439f34c50d4e3f001c0dfa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:08:27 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":8,"files":["jc/parsers/date.py"]},"message":"use jc.utils.timestamp instead of jc.utils.parse_datetime_to_timestamp()","epoch":1617300507,"epoch_utc":null},{"commit":"62234e39a8533362a20f106c64326ed69f430006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:08:20 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":8,"files":["jc/parsers/upower.py"]},"message":"use jc.utils.timestamp instead of jc.utils.parse_datetime_to_timestamp()","epoch":1617300500,"epoch_utc":null},{"commit":"be004b7b3fe9217160c6418907e7d8aad10e5fae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:07:37 2021 -0700","stats":{"files_changed":2,"insertions":172,"deletions":15,"files":["jc/utils.py","tests/test_utils.py"]},"message":"make parse_datetime_to_timestamp function a class called timestamp for easier use","epoch":1617300457,"epoch_utc":null},{"commit":"82539444b24169b2eb762485ed032fc968a81f71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 31 20:48:44 2021 -0700","stats":{"files_changed":2,"insertions":23,"deletions":21,"files":["docs/parsers/time.md","jc/parsers/time.py"]},"message":"fix indentation for int and float conversions. add real_time field to schema","epoch":1617248924,"epoch_utc":null},{"commit":"a571d3cbafd5048d1d59070e1791398ae410197f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 31 20:41:04 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/time.md","jc/parsers/time.py"]},"message":"fix typo","epoch":1617248464,"epoch_utc":null},{"commit":"a038c14c23ea27264df61a38e0301de8d1fa1b9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 31 20:39:03 2021 -0700","stats":{"files_changed":3,"insertions":8,"deletions":8,"files":["EXAMPLES.md","docs/parsers/time.md","jc/parsers/time.py"]},"message":"change microseconds to centiseconds","epoch":1617248343,"epoch_utc":null},{"commit":"25a85d874cd2b57a7700b0c2dca61132127732b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 31 20:21:29 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iw_scan.py"]},"message":"update docs","epoch":1617247289,"epoch_utc":null},{"commit":"884c36ff42df4f580c8e2b4705def8e4c1182e39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 31 20:19:46 2021 -0700","stats":{"files_changed":8,"insertions":536,"deletions":1,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","docs/parsers/iw_scan.md","docs/parsers/time.md","jc/cli.py","jc/parsers/time.py"]},"message":"add /usr/bin/time parser","epoch":1617247186,"epoch_utc":null},{"commit":"b98e72b8b4eda0ab5ede7725226e61634af572eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 21:33:23 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add ls parser info","epoch":1617165203,"epoch_utc":null},{"commit":"05885c0096b5ee142ecff2d17e37c446518998a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 21:29:34 2021 -0700","stats":{"files_changed":5,"insertions":931,"deletions":18,"files":["docs/parsers/ls.md","jc/parsers/ls.py","tests/fixtures/ubuntu-18.04/ls-l-iso.json","tests/fixtures/ubuntu-18.04/ls-l-iso.out","tests/test_ls.py"]},"message":"add epoch and epoch_utc timestamps","epoch":1617164974,"epoch_utc":null},{"commit":"4c9761231af897658c3a2c0abcc476aa8b43d1b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 20:41:10 2021 -0700","stats":{"files_changed":21,"insertions":118,"deletions":81,"files":["CHANGELOG","EXAMPLES.md","README.md","docs/parsers/dig.md","jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json"]},"message":"add when_epoch and when_epoch_utc fields","epoch":1617162070,"epoch_utc":null},{"commit":"656eaa150861948091ef9d6323805c2698039bc6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 16:43:53 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1617147833,"epoch_utc":null},{"commit":"1560dcddcf82f55fffce22d1b46d372b25a9d0fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 16:43:02 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"]},"message":"add acpi, upower parsers and -v version option","epoch":1617147782,"epoch_utc":null},{"commit":"08d4cd4870c7acaf3a453d1400b64d77d462437b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 16:34:01 2021 -0700","stats":{"files_changed":7,"insertions":114,"deletions":43,"files":["EXAMPLES.md","docs/parsers/acpi.md","jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.json","tests/fixtures/generic/acpi-V2.json","tests/fixtures/generic/acpi-V3.json","tests/fixtures/generic/acpi-V4.json"]},"message":"add time calculations to acpi parser","epoch":1617147241,"epoch_utc":null},{"commit":"9767a50cededb140575e195abf79ce49c4f53789","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 11:59:44 2021 -0700","stats":{"files_changed":12,"insertions":48,"deletions":46,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/who.md","jc/parsers/who.py","jc/utils.py","tests/fixtures/centos-7.7/who-a.json","tests/fixtures/centos-7.7/who.json","tests/fixtures/osx-10.14.6/who-a.json","tests/fixtures/osx-10.14.6/who.json","tests/fixtures/ubuntu-18.04/who-a.json","tests/fixtures/ubuntu-18.04/who.json","tests/test_utils.py"]},"message":"update who parser to add epoch naive timestamp","epoch":1617130784,"epoch_utc":null},{"commit":"cd86890ed1493644e391e52e33561e9a77631a51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 08:05:26 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"]},"message":"add website to info and use variables for version info","epoch":1617116726,"epoch_utc":null},{"commit":"ba0dd3b9ca98a042c772898302fcfe5fdc84f79a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 21:25:19 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["tests/test_utils.py"]},"message":"add parse_timedate_to_timestamp test for format 7300","epoch":1617078319,"epoch_utc":null},{"commit":"8d7fa07ffd50f38336a448eb506a76d9d4849a6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 21:20:19 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":11,"files":["tests/fixtures/centos-7.7/timedatectl.json"]},"message":"unformat json","epoch":1617078019,"epoch_utc":null},{"commit":"cade1bfe6e56b5926898b7204e911885efebd5a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 21:19:12 2021 -0700","stats":{"files_changed":2,"insertions":12,"deletions":2,"files":["tests/fixtures/centos-7.7/timedatectl.json","tests/fixtures/ubuntu-18.04/timedatectl.json"]},"message":"update timedatectl tests for new epoch_utc field","epoch":1617077952,"epoch_utc":null},{"commit":"daec4ab0a7f572e872b27b043d51f68e5e06300f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 21:16:40 2021 -0700","stats":{"files_changed":5,"insertions":20,"deletions":4,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/timedatectl.md","jc/parsers/timedatectl.py","jc/utils.py"]},"message":"add epoch_utc field to timedatectl parser","epoch":1617077800,"epoch_utc":null},{"commit":"3c96bc319615c824a06c388e9e3c1d68a9bf4084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:57:58 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"]},"message":"version bump","epoch":1617076678,"epoch_utc":null},{"commit":"7f7d8d4bd6f37015b11bac60a7bd99e8d3eca108","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:36:10 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":0,"files":["docs/parsers/stat.md","jc/parsers/stat.py"]},"message":"update stat docs","epoch":1617075370,"epoch_utc":null},{"commit":"47263661a41987f334fd484e866e0aa8859cde5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:30:20 2021 -0700","stats":{"files_changed":1,"insertions":18,"deletions":2,"files":["EXAMPLES.md"]},"message":"update stat example","epoch":1617075020,"epoch_utc":null},{"commit":"4c42a086d206919dfe4f1c0801fe4fb1027cb1cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:25:54 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":6,"files":["jc/utils.py"]},"message":"clean up debug code","epoch":1617074754,"epoch_utc":null},{"commit":"5d2541a5c4bc93f3943a491c76df7f8d4e2cf44b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:22:35 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/utils.py"]},"message":"remove auto c locale and use a manual format rule for windows and linux compatibility","epoch":1617074555,"epoch_utc":null},{"commit":"d91d170b49bfc88c0b2fb54475705c038172f1c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:16:05 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/utils.py"]},"message":"try manual c locale format for windows","epoch":1617074165,"epoch_utc":null},{"commit":"6d1f4584a9ccd0f0f7ed4fdf408576a9e7f5046b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:05:42 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"]},"message":"try manually setting time format for windows compatibility","epoch":1617073542,"epoch_utc":null},{"commit":"1d76d96bcf4185cffb7066bec637913099399db5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 16:58:57 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/utils.py"]},"message":"debug windows issue","epoch":1617062337,"epoch_utc":null},{"commit":"e8847c998c91131acf5ee0f6485e9976c0fce3ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 16:35:26 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["tests/fixtures/centos-7.7/stat.json","tests/fixtures/freebsd12/stat.json","tests/fixtures/osx-10.14.6/stat.json","tests/fixtures/ubuntu-18.04/stat.json"]},"message":"update stat tests","epoch":1617060926,"epoch_utc":null},{"commit":"da88e49bae2f3fecff623f52c20bf994b653583e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 15:36:16 2021 -0700","stats":{"files_changed":2,"insertions":69,"deletions":29,"files":["docs/parsers/stat.md","jc/parsers/stat.py"]},"message":"add new examples","epoch":1617057376,"epoch_utc":null},{"commit":"65c3a12e5422782df40489c3c431677f5657dbf5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 15:32:04 2021 -0700","stats":{"files_changed":2,"insertions":35,"deletions":24,"files":["jc/parsers/stat.py","jc/utils.py"]},"message":"simplify None data scenario","epoch":1617057124,"epoch_utc":null},{"commit":"d8d600cc36bde4e6216b935f87a765599e896714","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 14:51:48 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"add reference to -h for help","epoch":1617054708,"epoch_utc":null},{"commit":"507999b117b024fed1ccf067bd5dc411dbeb268c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 14:45:13 2021 -0700","stats":{"files_changed":3,"insertions":34,"deletions":19,"files":["docs/utils.md","jc/utils.py","tests/test_utils.py"]},"message":"add stat command timestamp detection","epoch":1617054313,"epoch_utc":null},{"commit":"8ad164eb340e135eeeb10b721172916182f37e30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 12:33:54 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_cli.py"]},"message":"fix tests for compact output","epoch":1617046434,"epoch_utc":null},{"commit":"a507df140b245b83b1c46e8462b44e1145c42f2a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 12:25:58 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add compact json info","epoch":1617045958,"epoch_utc":null},{"commit":"8912a99986a977ee6ca7bbe2368f5033644577b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 12:25:48 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/cli.py"]},"message":"make default json output more compact","epoch":1617045948,"epoch_utc":null},{"commit":"1953f9882890cd0e8c515d43ce28c96f918b0ab4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 11:44:43 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"]},"message":"add version info. add json now supports unicode output","epoch":1617043483,"epoch_utc":null},{"commit":"7515218ddd2cdcfcebd67850140e842f2f121226","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 11:42:01 2021 -0700","stats":{"files_changed":2,"insertions":10,"deletions":14,"files":["jc/cli.py","jc/utils.py"]},"message":"use jc.utils for all warning and error messages. simply error and warning formatting.","epoch":1617043321,"epoch_utc":null},{"commit":"36c11201366cefedee4244fb71a4a9cc6507e6ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 10:59:56 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"formatting","epoch":1617040796,"epoch_utc":null},{"commit":"8fa0fe64d8418093c7f28cdc70a7f409956aeb04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 10:52:02 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"]},"message":"add -v to helptext. minor formatting","epoch":1617040322,"epoch_utc":null},{"commit":"c1a8201b140c65579ff9f8427322b67653bf3006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 10:24:58 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["EXAMPLES.md"]},"message":"add copyright","epoch":1617038698,"epoch_utc":null},{"commit":"398bbac48c8a716b1872843d671aa6ceaeba6a78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 10:23:52 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"simplify return value for parse_datetime_to_timestamp()","epoch":1617038632,"epoch_utc":null},{"commit":"ea71a42bbdd9b09a457727cfe763054625f7901a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 09:43:19 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/cli.py"]},"message":"formatting","epoch":1617036199,"epoch_utc":null},{"commit":"1c16d25b17a7282a62a5ebd9755df5569c57435f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 09:41:15 2021 -0700","stats":{"files_changed":2,"insertions":30,"deletions":9,"files":["README.md","jc/cli.py"]},"message":"add version option (-v) and copyright information. add 'ensure_ascii=False' to json dumps to properly show UTF-8 copyright character","epoch":1617036075,"epoch_utc":null},{"commit":"9d12ded889f656656267cbf7a91d71267201f736","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 16:32:17 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"help description change","epoch":1616801537,"epoch_utc":null},{"commit":"5312701515ecb3a10598bb9dcf2f73b7eae71b93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 16:29:10 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add - make all external python requirements optional","epoch":1616801350,"epoch_utc":null},{"commit":"808c7bc0a94ecfd160ee2b257e5feec347829a5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 16:14:35 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/xml.py"]},"message":"make xmltodict library optional","epoch":1616800475,"epoch_utc":null},{"commit":"4d394015f458f284d052ce2c1a0c8492916c5b3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 16:10:28 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/yaml.py"]},"message":"make ruamel.yaml library optional","epoch":1616800228,"epoch_utc":null},{"commit":"3638298af8ebc01d54aa3ab5668d0adedca957e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 15:54:45 2021 -0700","stats":{"files_changed":1,"insertions":53,"deletions":44,"files":["jc/cli.py"]},"message":"make pygments library optional","epoch":1616799285,"epoch_utc":null},{"commit":"5f00973e400629bd68c0ab60ed9005410278f855","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 15:38:57 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/date.py"]},"message":"remove parenthesis to normalize text for naive timezone detection","epoch":1616798337,"epoch_utc":null},{"commit":"0f6e2c14fcb69f664c29083ec5207326f842dfdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 14:57:19 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/parsers/upower.py"]},"message":"simplify timestamp failure logic","epoch":1616795839,"epoch_utc":null},{"commit":"51813da61994226ba40478825d47f80c23413349","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 14:56:45 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":4,"files":["jc/parsers/date.py"]},"message":"add offset timezones. fix timestamp logic on conversion failure","epoch":1616795805,"epoch_utc":null},{"commit":"e7751322ea195cac7f1921ba8e0364c442065d20","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 14:55:47 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/iw_scan.py"]},"message":"formatting","epoch":1616795747,"epoch_utc":null},{"commit":"26ef29843784ade3d55410be13300dd6f4c06890","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 14:55:16 2021 -0700","stats":{"files_changed":1,"insertions":10,"deletions":6,"files":["jc/utils.py"]},"message":"change return to always include the entire object but all keys may be None if conversion fails","epoch":1616795716,"epoch_utc":null},{"commit":"badaf8ce73d7deb0ec2be244e27b4bf8cddbea19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 14:00:33 2021 -0700","stats":{"files_changed":1,"insertions":14,"deletions":14,"files":["jc/utils.py"]},"message":"comment formatting","epoch":1616792433,"epoch_utc":null},{"commit":"b123a622039f3cc32643a3bfc0766154d660f8bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 13:11:34 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/utils.py"]},"message":"move locale change formats to the end of the list","epoch":1616789494,"epoch_utc":null},{"commit":"cfd77e42522aa2ebeada9f45ac99bd1d3414f782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 13:01:12 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/utils.py"]},"message":"reset locale to None on exception","epoch":1616788872,"epoch_utc":null},{"commit":"38f814072eac5370059f1b4203316eee41cf535b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 11:55:12 2021 -0700","stats":{"files_changed":1,"insertions":26,"deletions":8,"files":["jc/utils.py"]},"message":"better normalization of datetime string. better UTC detection. More formats supported with detected locale.","epoch":1616784912,"epoch_utc":null},{"commit":"a0db7754e384a0c95f2099bf894f3a22bd33c002","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 09:32:49 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add nixos install info","epoch":1616776369,"epoch_utc":null},{"commit":"f07620afc7dc0d0d605eb483ef36c5979b33cdfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 09:28:03 2021 -0700","stats":{"files_changed":3,"insertions":18,"deletions":7,"files":["README.md","jc/__init__.py","jc/cli.py"]},"message":"move version to jc.__init__.py\nadd -h option for help instead of always showing on error\nuse jc.utils.error_message for the following errors: missing/incorrect arguments, parser not found, missing piped data","epoch":1616776083,"epoch_utc":null},{"commit":"c1b0d27752726989c6051f683a1194941bee598c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 20:45:38 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":10,"files":["runtests.sh"]},"message":"remove old commented commands","epoch":1616730338,"epoch_utc":null},{"commit":"430a5108aa265d4df0e4584eade54759da864c61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 20:42:58 2021 -0700","stats":{"files_changed":3,"insertions":19,"deletions":60,"files":["runtests.sh","tests/test_last.py","tests/test_last2.py"]},"message":"move all tests to github actions","epoch":1616730178,"epoch_utc":null},{"commit":"111ce92fc9c33b82c7d1a1664dda046ea5993f6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 20:37:35 2021 -0700","stats":{"files_changed":4,"insertions":0,"deletions":1,"files":["tests/{localtest_date.py => test_date.py}","tests/{localtest_last.py => test_last2.py}","tests/{localtest_upower.py => test_upower.py}","tests/test_utils.py"]},"message":"attempt all tests in github actions with timezone correction","epoch":1616729855,"epoch_utc":null},{"commit":"c851e8a58d98b2a4907cf1e7cf7c7d8d8dc04dc6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 20:33:25 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_utils.py"]},"message":"force github action","epoch":1616729605,"epoch_utc":null},{"commit":"39f4bcd9b41450068903ea2843508586eccdf709","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 20:30:13 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"Change Windows timezone\n\nuse \"Pacific Standard Time\"","epoch":1616729413,"epoch_utc":null},{"commit":"4a610c4c81493788b8351e8c74aabe819c981c02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:57:32 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["tests/test_utils.py"]},"message":"force github action","epoch":1616727452,"epoch_utc":null},{"commit":"89ee11945d4e2db107a33ef0d61e0c6015ac8ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:55:21 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"Change timezone provider\n\nuses: szenius/set-timezone@v1.0","epoch":1616727321,"epoch_utc":null},{"commit":"dadb09b74a69d1852f8433e0e32ccdd67bd91181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:52:43 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_utils.py"]},"message":"force github action","epoch":1616727163,"epoch_utc":null},{"commit":"1b1f638b97dc5e6f2767183eb363b79ae3c9b3c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:49:03 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":[".github/workflows/pythonapp.yml"]},"message":"Change timezone change provider\n\nchange to actions/set-timezone-action","epoch":1616726943,"epoch_utc":null},{"commit":"794fc4ed44d1565514303090403d68ba5d639cb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:43:16 2021 -0700","stats":{"files_changed":2,"insertions":36,"deletions":8,"files":["jc/utils.py","tests/test_utils.py"]},"message":"add parse_datetime_to_timestamp() tests","epoch":1616726596,"epoch_utc":null},{"commit":"72f735bf9211d7beddcf58819fe465722f5d7c5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:42:02 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":[".github/workflows/pythonapp.yml"]},"message":"Set Timezone to America/Los_Angeles\n\nUsing zcong1993/setup-timezone","epoch":1616726522,"epoch_utc":null},{"commit":"912877f25ad562ed4cafe7b2d7446bd48b477ea2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 15:34:54 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"additional timezone info","epoch":1616711694,"epoch_utc":null},{"commit":"2772c5ae436ea437d833003372d53a3d3f955ea0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 15:10:07 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1616710207,"epoch_utc":null},{"commit":"a7ad24d2cb61d84cf2846f8fa43af31f0597043e","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","date":"Thu Mar 25 16:45:30 2021 -0400","stats":{"files_changed":13,"insertions":772,"deletions":0,"files":["docgen.sh","docs/parsers/dir.md","jc/cli.py","jc/parsers/dir.py","tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-C.out","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-ODTC.out","tests/fixtures/windows-10/dir-Q.json","tests/fixtures/windows-10/dir-Q.out","tests/fixtures/windows-10/dir.json","tests/fixtures/windows-10/dir.out","tests/test_dir.py"]},"message":"Add dir parser\n\nAdd usage commands\n\nFix example options\n\nupdate dir.md","epoch":1616715930,"epoch_utc":null},{"commit":"a364a6a9faeb6aa290b790f3dec74e92b8670534","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 15:08:23 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"]},"message":"add note regarding calculated timestamps","epoch":1616710103,"epoch_utc":null},{"commit":"7b2dc86a8d974e7984fe2540f56a66c2b9386acd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 12:07:36 2021 -0700","stats":{"files_changed":1,"insertions":23,"deletions":19,"files":["EXAMPLES.md"]},"message":"update last example with new timestamp fields","epoch":1616699256,"epoch_utc":null},{"commit":"ad645636d07d0423253f19068a22b2a28251b05f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 11:43:30 2021 -0700","stats":{"files_changed":5,"insertions":86,"deletions":50,"files":["CHANGELOG","EXAMPLES.md","README.md","docs/parsers/uptime.md","jc/parsers/uptime.py"]},"message":"update uptime docs","epoch":1616697810,"epoch_utc":null},{"commit":"2f2f297b29fbe3172647a81db084b3564a441d40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 11:35:21 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["tests/fixtures/centos-7.7/uptime.json","tests/fixtures/osx-10.11.6/uptime.json","tests/fixtures/osx-10.14.6/uptime.json","tests/fixtures/ubuntu-18.04/uptime.json"]},"message":"update uptime fixtures with new fields","epoch":1616697321,"epoch_utc":null},{"commit":"099ae3fde03f8157298f6b412bdddb8bd56da09a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 11:17:44 2021 -0700","stats":{"files_changed":1,"insertions":26,"deletions":22,"files":["jc/parsers/uptime.py"]},"message":"fix issue when there is no data","epoch":1616696264,"epoch_utc":null},{"commit":"e9febe98ac5ec0e03791c5b6794446a2c3312fb1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 11:17:01 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["runtests.sh"]},"message":"add localtest partition lines for readability","epoch":1616696221,"epoch_utc":null},{"commit":"5fbd07cccf9fb697b996dcc3949eef5b1c09e655","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 10:31:12 2021 -0700","stats":{"files_changed":1,"insertions":59,"deletions":26,"files":["jc/parsers/uptime.py"]},"message":"rewrite of uptime parser including new fields","epoch":1616693472,"epoch_utc":null},{"commit":"5fed4698c2c1f1b7e05c5b4c51639f818e049b53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:57:04 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":6,"files":["docs/parsers/last.md","jc/parsers/last.py"]},"message":"update docs and version number","epoch":1616648224,"epoch_utc":null},{"commit":"ed7eb0983a4dfcc1d66a2957be3e10b2203d909e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:51:43 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/last.py"]},"message":"use parse_datetime_to_timestamp function instead of custom format string","epoch":1616647903,"epoch_utc":null},{"commit":"90c7e18e5fc5ea9fcf6157cc2656f47193d78411","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:50:32 2021 -0700","stats":{"files_changed":1,"insertions":16,"deletions":11,"files":["EXAMPLES.md"]},"message":"update date example","epoch":1616647832,"epoch_utc":null},{"commit":"953ab5c3bd0c8b6eef29b717edaf1aa2380c2b93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:29:30 2021 -0700","stats":{"files_changed":2,"insertions":1,"deletions":0,"files":["runtests.sh","tests/{test_upower.py => localtest_upower.py}"]},"message":"make upower tests local only","epoch":1616646570,"epoch_utc":null},{"commit":"699c97d8a07f7575454746159ac4d19981cd1a5c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:24:47 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add last parser info","epoch":1616646287,"epoch_utc":null},{"commit":"e4ca0de92a689ce93b91d86106a5da590226855a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:24:25 2021 -0700","stats":{"files_changed":8,"insertions":100,"deletions":0,"files":["tests/fixtures/generic/upower-i-c-locale.json","tests/fixtures/generic/upower-i-non-utc.json","tests/fixtures/generic/upower-i-utc.json",".../{upower-i-utc.out2 => upower-i-utc.out}","tests/fixtures/ubuntu-18.04/upower-d-clocale.json","tests/fixtures/ubuntu-18.04/upower-d.json","tests/fixtures/ubuntu-18.04/upower-i.json","tests/test_upower.py"]},"message":"add upower tests","epoch":1616646265,"epoch_utc":null},{"commit":"04745a36b84cc79e56bde2a0e92a4ee9ab4a1538","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 20:21:06 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":5,"files":["CHANGELOG","jc/utils.py"]},"message":"doc update","epoch":1616642466,"epoch_utc":null},{"commit":"5936940532b8b753e67c9f5cd9287f34cc84ae9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 20:20:53 2021 -0700","stats":{"files_changed":7,"insertions":136,"deletions":186,"files":["docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date-after-midnight.json","tests/fixtures/generic/date-before-midnight.json","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/fixtures/ubuntu-20.04/date2.json"]},"message":"rewrite of date parser using datetime library","epoch":1616642453,"epoch_utc":null},{"commit":"b3eb064b6753d6e894884e1c16054630c2396fe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 17:13:01 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"]},"message":"clarify format definition comments","epoch":1616631181,"epoch_utc":null},{"commit":"e4b41057e302074ac2a81ad8c36b6f95cd6b7db2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 17:02:17 2021 -0700","stats":{"files_changed":3,"insertions":24,"deletions":0,"files":[".../{upower-i.out => upower-i-c-locale.out}","tests/fixtures/generic/upower-i-non-utc.out",".../generic/{upower-i2.out => upower-i-utc.out2}"]},"message":"update upower fixture names","epoch":1616630537,"epoch_utc":null},{"commit":"1d41c46cc762ab0c78b819e56db7df39f1111d5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 17:01:56 2021 -0700","stats":{"files_changed":1,"insertions":34,"deletions":5,"files":["jc/utils.py"]},"message":"normalize datetime string to remove all timezones except UTC","epoch":1616630516,"epoch_utc":null},{"commit":"a5c444587b3f0874fcc2833dc4e759c2dc1c7834","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 15:13:10 2021 -0700","stats":{"files_changed":5,"insertions":28,"deletions":0,"files":["tests/fixtures/generic/date-after-midnight.json","tests/fixtures/generic/date-after-midnight.out","tests/fixtures/generic/date-before-midnight.json","tests/fixtures/generic/date-before-midnight.out","tests/localtest_date.py"]},"message":"add before and after midnight date tests","epoch":1616623990,"epoch_utc":null},{"commit":"a56f471be980be16e73d3a91e2b12aad26c6d38c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 15:05:22 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/fixtures/generic/upower-i2.out"]},"message":"update fixture to use UTC for better testing","epoch":1616623522,"epoch_utc":null},{"commit":"6a6b26ed8d97014c2a5c7d91a4cd9b23f49530fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 15:04:39 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/date.py"]},"message":"fix 12 to 24 hour conversion for midnight cases","epoch":1616623479,"epoch_utc":null},{"commit":"f62446c152d89f2d37b22ffe9d9de5b5c9fa7049","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 15:04:09 2021 -0700","stats":{"files_changed":1,"insertions":11,"deletions":10,"files":["jc/utils.py"]},"message":"rename variables. add another european time format","epoch":1616623449,"epoch_utc":null},{"commit":"56011f1f172344cab2a8e869e7a6df6e45c45874","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 14:14:22 2021 -0700","stats":{"files_changed":3,"insertions":73,"deletions":6,"files":["EXAMPLES.md","docs/parsers/upower.md","jc/parsers/upower.py"]},"message":"updated upower examples","epoch":1616620462,"epoch_utc":null},{"commit":"6d44091c80318fde6c09cd850e6dc5afde7fe799","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 14:01:06 2021 -0700","stats":{"files_changed":1,"insertions":13,"deletions":53,"files":["jc/utils.py"]},"message":"refactor parse_datetime_to_timestamp()","epoch":1616619666,"epoch_utc":null},{"commit":"440c458eb42925dffe2d7b026279468fa2fa1bb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 12:57:19 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"no need for ternary clause","epoch":1616615839,"epoch_utc":null},{"commit":"798250af6116441385339806c8f26bc9720ad302","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 12:49:53 2021 -0700","stats":{"files_changed":2,"insertions":18,"deletions":24,"files":["docs/parsers/upower.md","jc/parsers/upower.py"]},"message":"use jc.utils.parse_datetime_to_timestamp() function for timestamp creation","epoch":1616615393,"epoch_utc":null},{"commit":"c762de29c6491790908451aa20f6aa12fdfa9722","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 12:47:57 2021 -0700","stats":{"files_changed":2,"insertions":32,"deletions":2,"files":["docs/utils.md","jc/utils.py"]},"message":"doc updates","epoch":1616615277,"epoch_utc":null},{"commit":"0701e65e97165efd40ab2ae5087897de3588ea32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 12:36:54 2021 -0700","stats":{"files_changed":1,"insertions":106,"deletions":0,"files":["jc/utils.py"]},"message":"add parse_datetime_to_timestamp() function","epoch":1616614614,"epoch_utc":null},{"commit":"209d54e8b5be6476d896cee1a5274bd2b46219e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 07:39:11 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/parsers/date.md","jc/parsers/date.py"]},"message":"add hour_24 to schema docs","epoch":1616596751,"epoch_utc":null},{"commit":"2b38462de7d2fa61dd5d2a184e853279f1a9c84b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 23 14:59:03 2021 -0700","stats":{"files_changed":3,"insertions":33,"deletions":27,"files":["EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py"]},"message":"update examples","epoch":1616536743,"epoch_utc":null},{"commit":"1e8e5533162cb01053ee25e9dbc709a429e58070","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 23 14:47:44 2021 -0700","stats":{"files_changed":6,"insertions":31,"deletions":14,"files":["CHANGELOG","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/fixtures/ubuntu-20.04/date2.json","tests/localtest_date.py"]},"message":"add hour_24 field","epoch":1616536064,"epoch_utc":null},{"commit":"ab42e6bb15026d6c46e15197c62bc3e8ef95c80d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 23 14:10:42 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/date.md","jc/parsers/date.py"]},"message":"formatting","epoch":1616533842,"epoch_utc":null},{"commit":"680288454090f3c48c7f0580cdcb919c0b5a883e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 23 14:04:36 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["docs/parsers/date.md","jc/parsers/date.py"]},"message":"ensure period is always uppercase in dict value. update period documentation","epoch":1616533476,"epoch_utc":null},{"commit":"7cb8577b9655f258f2910e7e7bcf3266d4cbece0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 23 13:55:23 2021 -0700","stats":{"files_changed":3,"insertions":70,"deletions":48,"files":["docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/ubuntu-20.04/date2.out"]},"message":"correct epoch_utc calculation. Fix for 12 hour vs. 24 hour representation","epoch":1616532923,"epoch_utc":null},{"commit":"55810ccd1f17ef6a4b1cb72fc21f6cf990ef8bb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 22:10:35 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/upower.py"]},"message":"set epoch_dt conversion again if not C locale","epoch":1616476235,"epoch_utc":null},{"commit":"f9921720cd0b9b0d76d66e6eb5bfe43481f5f52b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 22:01:07 2021 -0700","stats":{"files_changed":3,"insertions":4,"deletions":94,"files":["runtests.sh","tests/test_date.py","tests/test_last2.py"]},"message":"revert to local testing for naive datetime objects","epoch":1616475667,"epoch_utc":null},{"commit":"cda1ebd271aa8fd1b716054a2149f876d8087230","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 21:53:50 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["tests/test_date.py","tests/test_last2.py"]},"message":"try tzset()","epoch":1616475230,"epoch_utc":null},{"commit":"6901e4a23aad0b58cbbfac86c61917115d115dfe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 21:49:26 2021 -0700","stats":{"files_changed":3,"insertions":89,"deletions":3,"files":["runtests.sh","tests/test_date.py","tests/test_last2.py"]},"message":"try setting timezone env variable before tests to ensure it is the same on all test systems","epoch":1616474966,"epoch_utc":null},{"commit":"6bc21d3c735edc7897e49afd2a5ea9e3aa56d7fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 21:05:39 2021 -0700","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["runtests.sh","tests/{test_date.py => localtest_date.py}","tests/localtest_last.py"]},"message":"fix date parser tests - local tests only since timezones may not match on github actions VMs","epoch":1616472339,"epoch_utc":null},{"commit":"1ef231e26a2898d2a01f341fb92014df92703f72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:57:36 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"add date parser updates","epoch":1616471856,"epoch_utc":null},{"commit":"3cd43f0f985a3b8a4e74bf5632bd8dac92d751c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:57:16 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/upower.md","jc/parsers/upower.py"]},"message":"formatting","epoch":1616471836,"epoch_utc":null},{"commit":"156501996688e62dd61a8456206218582a6cbe1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:56:57 2021 -0700","stats":{"files_changed":5,"insertions":85,"deletions":63,"files":["EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json"]},"message":"fix weekday numbering to be ISO 8601 compliant. Add naive calculated epoch timestamp field","epoch":1616471817,"epoch_utc":null},{"commit":"0a4de2d3a1c235d1ac2d6e59346e77761fe51885","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:22:35 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":2,"files":["docs/parsers/last.md","docs/parsers/upower.md"]},"message":"add naive datetime calculation info to docs","epoch":1616469755,"epoch_utc":null},{"commit":"a058f6c174e31f5e6040883bb544b83abd88c749","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:21:46 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/last.py"]},"message":"added naive epoch calculation info to docs","epoch":1616469706,"epoch_utc":null},{"commit":"d8e5d03b01a87704424f5259cf6bd977274fd6ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:21:12 2021 -0700","stats":{"files_changed":1,"insertions":20,"deletions":33,"files":["jc/parsers/upower.py"]},"message":"naive updated_epoch timestamp calculation added","epoch":1616469672,"epoch_utc":null},{"commit":"9dc62eff2eaaafec89c5b8797d8ca8e4c77a07d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 21 15:43:37 2021 -0700","stats":{"files_changed":1,"insertions":34,"deletions":21,"files":["jc/parsers/upower.py"]},"message":"remove epoch conversions","epoch":1616366617,"epoch_utc":null},{"commit":"d4fea17c57a97d6914624b06208b9439bf2eb05f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 21 14:03:36 2021 -0700","stats":{"files_changed":3,"insertions":13,"deletions":6,"files":["docgen.sh","docs/parsers/upower.md","jc/parsers/upower.py"]},"message":"use UTC when calculating epoch timestamp. reset time locale to default after changing","epoch":1616360616,"epoch_utc":null},{"commit":"3dd7a5b77ea708047bc12be9f2caddd9078723f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 19 11:00:50 2021 -0700","stats":{"files_changed":2,"insertions":230,"deletions":0,"files":["docgen.sh","docs/parsers/upower.md"]},"message":"add upower docs","epoch":1616176850,"epoch_utc":null},{"commit":"d77c90a3ba2036b216f4a612876ace988eafd217","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 19 10:43:20 2021 -0700","stats":{"files_changed":1,"insertions":114,"deletions":6,"files":["jc/parsers/upower.py"]},"message":"fix quoted values in detail level. Add examples","epoch":1616175800,"epoch_utc":null},{"commit":"01f0c20df09fd4aa12bd108928b97376b51ef31a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 18 16:59:46 2021 -0700","stats":{"files_changed":1,"insertions":27,"deletions":0,"files":["tests/fixtures/ubuntu-18.04/upower-d-clocale.out"]},"message":"add sample using C locale timestamp","epoch":1616111986,"epoch_utc":null},{"commit":"aafbe576b3b754de91591d9ec2dae9e9f827dee4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 18 16:59:19 2021 -0700","stats":{"files_changed":1,"insertions":137,"deletions":36,"files":["jc/parsers/upower.py"]},"message":"working parser and processor","epoch":1616111959,"epoch_utc":null},{"commit":"bd68ad40345fb1f69be0e0f87dc67134f826cd06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 14:31:51 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/upower.py"]},"message":"don't modify detail_type value since it is no longer a key","epoch":1616016711,"epoch_utc":null},{"commit":"bfee017c138bb30ec6af836685013b7124028974","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 14:21:19 2021 -0700","stats":{"files_changed":1,"insertions":61,"deletions":20,"files":["jc/parsers/upower.py"]},"message":"made the schema more explicit by hardcoding more items. still working on the schema","epoch":1616016079,"epoch_utc":null},{"commit":"61f532cfd0b7fbf14a58a0fd638bcbfb03fbde72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 13:30:47 2021 -0700","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["jc/parsers/upower.py"]},"message":"working history list","epoch":1616013047,"epoch_utc":null},{"commit":"58dbbb75b607d0b29be185c3b8c3f0d8af21ecad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 13:10:52 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":21,"files":["jc/parsers/upower.py"]},"message":"simplified logic","epoch":1616011852,"epoch_utc":null},{"commit":"8d88b91fcf5060d7d54f687efec3e3a606bab767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 12:49:48 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/upower.py"]},"message":"move if statements and generalize the history detail detection","epoch":1616010588,"epoch_utc":null},{"commit":"ad39fc60299089f56f37baac71820e50cbe87ed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 11:26:06 2021 -0700","stats":{"files_changed":6,"insertions":268,"deletions":0,"files":["jc/cli.py","jc/parsers/upower.py","tests/fixtures/generic/upower-i.out","tests/fixtures/generic/upower-i2.out","tests/fixtures/ubuntu-18.04/upower-d.out","tests/fixtures/ubuntu-18.04/upower-i.out"]},"message":"working upower parser. history lines are ignored","epoch":1616005566,"epoch_utc":null},{"commit":"89f1fd96e6b7aa0acf6272e4f3469005d4f7c6bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 16 12:12:01 2021 -0700","stats":{"files_changed":6,"insertions":87,"deletions":0,"files":["tests/fixtures/generic/acpi-V.json","tests/fixtures/generic/acpi-V2.json","tests/fixtures/generic/acpi-V3.json","tests/fixtures/generic/acpi-V4.json","tests/fixtures/ubuntu-18.04/acpi-V.json","tests/test_acpi.py"]},"message":"add acpi tests","epoch":1615921921,"epoch_utc":null},{"commit":"bd425f2493b68949c1fa02cd1d3289ec882d9b0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 16 11:45:56 2021 -0700","stats":{"files_changed":6,"insertions":321,"deletions":2,"files":["CHANGELOG","EXAMPLES.md","docgen.sh","docs/parsers/acpi.md","jc/cli.py","setup.py"]},"message":"version bump to v1.15.0. Add acpi docs","epoch":1615920356,"epoch_utc":null},{"commit":"46962ff02a0630766a927babc92e11ec91b1f789","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 12 16:45:15 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":11,"files":["jc/parsers/acpi.py"]},"message":"remove redundant lines","epoch":1615596315,"epoch_utc":null},{"commit":"e4cb88b05166815e8ad03b646bd3f2b1da7f0d4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 12 12:47:59 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/acpi.py"]},"message":"remove unneeded line-state assignment","epoch":1615582079,"epoch_utc":null},{"commit":"32840703dc1d88412712b08db1c9bdaebbc34450","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 12 08:55:04 2021 -0800","stats":{"files_changed":1,"insertions":8,"deletions":39,"files":["jc/parsers/acpi.py"]},"message":"remove redundant code","epoch":1615568104,"epoch_utc":null},{"commit":"1f7aafd0415a79e0547cc6f1c008c1918f8fb460","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 12 08:45:32 2021 -0800","stats":{"files_changed":3,"insertions":19,"deletions":9,"files":["jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out","tests/fixtures/generic/acpi-V4.out"]},"message":"fix for full charge batter case. Clean up battery object logic","epoch":1615567532,"epoch_utc":null},{"commit":"7378d5dce43f75440cb57903e8ae0c1c615b0782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 11 21:06:24 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/acpi.py"]},"message":"remove comment","epoch":1615525584,"epoch_utc":null},{"commit":"84f76866cdf76f67b34de999fd987de8a02f0306","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 11 21:05:29 2021 -0800","stats":{"files_changed":1,"insertions":197,"deletions":3,"files":["jc/parsers/acpi.py"]},"message":"working process function","epoch":1615525529,"epoch_utc":null},{"commit":"322da9ea6a1ceea1152d720797adb8f3a7dc1199","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 11 20:43:31 2021 -0800","stats":{"files_changed":2,"insertions":59,"deletions":12,"files":["jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out"]},"message":"working parser","epoch":1615524211,"epoch_utc":null},{"commit":"58645301ec111bfeb2a618f5f169cc734042dc5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 11 19:55:47 2021 -0800","stats":{"files_changed":6,"insertions":236,"deletions":1,"files":["jc/cli.py","jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out","tests/fixtures/generic/acpi-V2.out","tests/fixtures/generic/acpi-V3.out","tests/fixtures/ubuntu-18.04/acpi-V.out"]},"message":"add acpi command parser","epoch":1615521347,"epoch_utc":null},{"commit":"1e18dd30a824b0463f0cad86e0da7094c47d34f9","merge":"20f9b7f cc6a19a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 5 11:50:37 2021 -0800","message":"Merge pull request #102 from kellyjonbrazil/dev\n\nDev v1.14.4","epoch":1614973837,"epoch_utc":null},{"commit":"cc6a19adccea3e10243a166b87d852b6f95414b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 5 09:41:17 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/yaml.py"]},"message":"fix typo in comments","epoch":1614966077,"epoch_utc":null},{"commit":"2a5588b177a24d5b78a4b5a515aba515804b7baa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 5 09:38:22 2021 -0800","stats":{"files_changed":4,"insertions":13,"deletions":3,"files":["CHANGELOG","jc/cli.py","jc/parsers/yaml.py","setup.py"]},"message":"packaging fix for yaml parser and pyoxidizer","epoch":1614965902,"epoch_utc":null},{"commit":"20f9b7f88b97ed68aba46e102b8c7b72443b9c85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 25 11:09:56 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"fix typo","epoch":1614280196,"epoch_utc":null},{"commit":"d7e32313cd9776b4a6af38cc2819d6e4ef8c0d55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 25 11:09:14 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"fix typo","epoch":1614280154,"epoch_utc":null},{"commit":"fb5654d3c4549e84940e2518f2d214debdd42d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 11 11:27:54 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1613071674,"epoch_utc":null},{"commit":"258f1433b36a7ee117ac43953edb4fe964603e7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 11 11:27:01 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]},"message":"add locale info to readme","epoch":1613071621,"epoch_utc":null},{"commit":"fb723ae8bd7bb51f9a4bab380ec1bc54cda0445b","merge":"87b506d 283b89e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 10 11:01:57 2021 -0800","message":"Merge pull request #101 from kellyjonbrazil/dev\n\nDev v1.14.3","epoch":1612983717,"epoch_utc":null},{"commit":"283b89e37c38a3082203e43e38569c8b0bb11e12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 10 10:55:53 2021 -0800","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["CHANGELOG","jc/parsers/dig.py"]},"message":"simplify answer data logic","epoch":1612983353,"epoch_utc":null},{"commit":"f450f9eb8b7d382af316e88301e72af01a018be9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 10 10:47:56 2021 -0800","stats":{"files_changed":5,"insertions":74,"deletions":0,"files":["tests/fixtures/centos-7.7/hciconfig-a.json","tests/fixtures/centos-7.7/hciconfig.json","tests/fixtures/ubuntu-20.04/hciconfig-a.json","tests/fixtures/ubuntu-20.04/hciconfig.json","tests/test_hciconfig.py"]},"message":"add hciconfig tests","epoch":1612982876,"epoch_utc":null},{"commit":"b3f8cf99a4874335c6b43e105e0c1562c08256dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 10 08:03:36 2021 -0800","stats":{"files_changed":1,"insertions":15,"deletions":15,"files":["jc/parsers/hciconfig.py"]},"message":"work for both tabs and spaces","epoch":1612973016,"epoch_utc":null},{"commit":"4301ea8caea7c14f59bcddf09668d0198e1115a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 9 16:12:36 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/hciconfig.py"]},"message":"remove debug line","epoch":1612915956,"epoch_utc":null},{"commit":"c672d1c174a42ce44544dfaec0ebcf3c30fd7acf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 9 16:03:00 2021 -0800","stats":{"files_changed":7,"insertions":903,"deletions":22,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","docs/parsers/hciconfig.md","jc/parsers/hciconfig.py","man/jc.1"]},"message":"initial working hciconfig parser","epoch":1612915380,"epoch_utc":null},{"commit":"229e953a38471cdd41af0810577d324329840a4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 9 13:26:24 2021 -0800","stats":{"files_changed":7,"insertions":205,"deletions":2,"files":["jc/cli.py","jc/parsers/hciconfig.py","setup.py","tests/fixtures/centos-7.7/hciconfig-a.out","tests/fixtures/centos-7.7/hciconfig.out","tests/fixtures/ubuntu-20.04/hciconfig-a.out","tests/fixtures/ubuntu-20.04/hciconfig.out"]},"message":"initial add of hciconfig parser","epoch":1612905984,"epoch_utc":null},{"commit":"87b506dc9b4831d11b4fd04fd6849532db074f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 5 06:55:06 2021 -0800","stats":{"files_changed":7,"insertions":47,"deletions":4,"files":["CHANGELOG","jc/cli.py","jc/parsers/dig.py","setup.py","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/generic/dig-answer-spaces.out","tests/test_dig.py"]},"message":"fix for spaces in dig answer data","epoch":1612536906,"epoch_utc":null},{"commit":"15c9002d9eff0f52d873fb3ab35dfafd03a8e919","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 8 11:56:56 2021 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"simplify logic by taking out 'not' in JC_COLORS parsing","epoch":1610135816,"epoch_utc":null},{"commit":"042aaa61b96fc8472a8a460c49bde4cbbc359094","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 8 08:23:29 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"minor updates","epoch":1610123009,"epoch_utc":null},{"commit":"ef856c6ba5774cd8ec23acd71496846e794e3872","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 7 12:09:41 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"clarify -q option","epoch":1610050181,"epoch_utc":null},{"commit":"9cf5be73e3f975132d1ffbef412638b941a5664f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 16:19:47 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]},"message":"typo fix","epoch":1609978787,"epoch_utc":null},{"commit":"63fc149e2a097cbde60c2ce1aeb102d9becabd9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 16:17:25 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]},"message":"typo fix","epoch":1609978645,"epoch_utc":null},{"commit":"3c25839350800c7e7d2c48fc032bb21efa0ac213","merge":"03c0295 58246e3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 14:37:24 2021 -0800","message":"Merge pull request #98 from kellyjonbrazil/dev\n\nDev v1.14.1","epoch":1609972644,"epoch_utc":null},{"commit":"58246e33b71bae0ca4a42ad5bdf31134948b1014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 14:33:38 2021 -0800","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","README.md"]},"message":"update compatibility info and changelog date","epoch":1609972418,"epoch_utc":null},{"commit":"8b1407c7068e2105a83992bbb026138ea67bc07c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 14:22:26 2021 -0800","stats":{"files_changed":3,"insertions":59,"deletions":10,"files":["runtests.sh","tests/localtest_last.py","tests/test_last.py"]},"message":"pull env-specific tests from CI/CD and run locally only","epoch":1609971746,"epoch_utc":null},{"commit":"2fde4a4e2299b98a9958e3a55849c6791e4b17dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 12:07:58 2021 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["EXAMPLES.md","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]},"message":"doc updates","epoch":1609963678,"epoch_utc":null},{"commit":"60b9e9798286121399d0f8b75d63ab0f3312c9bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 12:02:47 2021 -0800","stats":{"files_changed":12,"insertions":80,"deletions":38,"files":["docs/parsers/last.md","jc/parsers/last.py","tests/fixtures/centos-7.7/last-crash.json","tests/fixtures/centos-7.7/last-w.json","tests/fixtures/centos-7.7/last-wF.json","tests/fixtures/centos-7.7/last-wF.out","tests/fixtures/centos-7.7/last.json","tests/fixtures/fedora32/last.json","tests/fixtures/osx-10.14.6/last.json","tests/fixtures/ubuntu-18.04/last-w.json","tests/fixtures/ubuntu-18.04/last.json","tests/fixtures/ubuntu-20.04/last-F.json"]},"message":"last parser enhancements: augment hostname with CONSOLE for GUI login, add convenience fields when -F is used: login_epoch, logout_epoch, duration_seconds, calculate duration to hours:minutes","epoch":1609963367,"epoch_utc":null},{"commit":"0adac79c0f2a22b31dfef1432a029af06132467b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 11:09:59 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"Add last parser enhancements","epoch":1609960199,"epoch_utc":null},{"commit":"9f485b5981a2ce49ac699b9dad39993c5605ae18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 11:09:37 2021 -0800","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["jc/parsers/iw_scan.py","tests/fixtures/centos-7.7/iw-scan0.json","tests/fixtures/centos-7.7/iw-scan1.json"]},"message":"change mac_address fieldname to bssid. Add credit to Phillip","epoch":1609960177,"epoch_utc":null},{"commit":"db17d21b8f9b2f899760e648f1483d33d0bcf47a","merge":"5885b96 996d394","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 10:42:30 2021 -0800","message":"Merge pull request #97 from pschmitt/iw_scan_fix_space_detection\n\niw_scan: Improve detection of lines starting with spaces","epoch":1609958550,"epoch_utc":null},{"commit":"996d394e89c732f327323ca340fce405bd5fb2e4","author":"Philipp Schmitt","author_email":"philipp@schmitt.co","date":"Wed Jan 6 10:32:17 2021 +0100","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/iw_scan.py"]},"message":"iw_scan: Improve detection of lines starting with spaces","epoch":1609957937,"epoch_utc":null},{"commit":"5885b960f9b33a95ecec9f4a33233c2f8682fbc4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 22:12:13 2021 -0800","stats":{"files_changed":3,"insertions":7,"deletions":2,"files":["CHANGELOG","README.md","man/jc.1"]},"message":"doc updates","epoch":1609913533,"epoch_utc":null},{"commit":"79987b35f332e287567e103f25cf91cb50e040c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 22:07:22 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"]},"message":"formatting","epoch":1609913242,"epoch_utc":null},{"commit":"661b3ef311ad26678030c70c11f2f955667311a4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 22:04:44 2021 -0800","stats":{"files_changed":4,"insertions":94,"deletions":2,"files":["EXAMPLES.md","README.md","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]},"message":"doc updates","epoch":1609913084,"epoch_utc":null},{"commit":"fb422726a8366c7133f0712d3b05a26620eea785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 21:55:06 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["tests/fixtures/ubuntu-20.04/last-F.json","tests/fixtures/ubuntu-20.04/last-F.out"]},"message":"update test to add 'down' condition","epoch":1609912506,"epoch_utc":null},{"commit":"4fb6f3ea59c52515926a51a006e65a1c18e57720","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 21:51:30 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/last.py"]},"message":"add support for down in addition to crash","epoch":1609912290,"epoch_utc":null},{"commit":"f78fe771e1c2fb4691858fa7f27b1febe5f8c6c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 21:38:51 2021 -0800","stats":{"files_changed":3,"insertions":48,"deletions":0,"files":["tests/fixtures/centos-7.7/iw-scan0.json","tests/fixtures/centos-7.7/iw-scan1.json","tests/test_iw_scan.py"]},"message":"add iw-scan tests","epoch":1609911531,"epoch_utc":null},{"commit":"567b8872538ac9f6b384b98741acd9794229d513","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 21:26:43 2021 -0800","stats":{"files_changed":3,"insertions":252,"deletions":12,"files":["docgen.sh","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]},"message":"doc updates","epoch":1609910803,"epoch_utc":null},{"commit":"e516e6b9466b29d40ec10070dd61551180eeef90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 21:17:40 2021 -0800","stats":{"files_changed":1,"insertions":29,"deletions":1,"files":["jc/parsers/iw_scan.py"]},"message":"fix country/environment fields and process int/float conversions","epoch":1609910260,"epoch_utc":null},{"commit":"62748676aae3d5955191ed267215df33a5bd3a4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 20:44:22 2021 -0800","stats":{"files_changed":2,"insertions":225,"deletions":0,"files":["jc/cli.py","jc/parsers/iw_scan.py"]},"message":"initial iw-scan parser","epoch":1609908262,"epoch_utc":null},{"commit":"7351c72e45242b9eb08c51dea7b6fccf12366dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 15:16:40 2021 -0800","stats":{"files_changed":6,"insertions":402,"deletions":1,"files":["jc/parsers/last.py","tests/fixtures/centos-7.7/last-crash.json","tests/fixtures/centos-7.7/last-crash.out","tests/fixtures/centos-7.7/last-wF.json","tests/fixtures/centos-7.7/last-wF.out","tests/test_last.py"]},"message":"add fixes and tests for entries that contain 'crash'","epoch":1609888600,"epoch_utc":null},{"commit":"2b7405c5e21db2488fc48b58f6c65cff947ca95d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 13:58:38 2021 -0800","stats":{"files_changed":5,"insertions":23,"deletions":16,"files":["CHANGELOG","README.md","docs/parsers/last.md","jc/parsers/last.py","man/jc.1"]},"message":"doc updates","epoch":1609883918,"epoch_utc":null},{"commit":"e2c77cb935a5bd95dbe930d424e5a02e88e1fa76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 13:00:38 2021 -0800","stats":{"files_changed":3,"insertions":15,"deletions":1,"files":["jc/parsers/last.py","tests/fixtures/ubuntu-20.04/last-F.json","tests/test_last.py"]},"message":"add test for last -F output","epoch":1609880438,"epoch_utc":null},{"commit":"7ac621e4c916373a03f379425033cb2d81a03578","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 12:29:29 2021 -0800","stats":{"files_changed":3,"insertions":36,"deletions":6,"files":["docs/parsers/last.md","jc/parsers/last.py","tests/fixtures/ubuntu-20.04/last-F.out"]},"message":"add -F support","epoch":1609878569,"epoch_utc":null},{"commit":"d8b5d6c66ced19dc16f2b4975d2293a903732ffe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 09:45:37 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/cli.py","setup.py"]},"message":"version bump to 1.14.1","epoch":1609868737,"epoch_utc":null},{"commit":"22b461eb4b1ca86ea9e8c1fde8a2c312d1526b5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 09:42:05 2021 -0800","stats":{"files_changed":7,"insertions":47,"deletions":12,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/test_date.py"]},"message":"Add period field for en_US.UTF-8 locale","epoch":1609868525,"epoch_utc":null},{"commit":"b37ee8555a2a108625a834a7990bc3320e79b08d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 4 18:02:07 2021 -0800","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update","epoch":1609812127,"epoch_utc":null},{"commit":"1d0ad2f045733c5c690738d49951fdb9bcd3d66d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 4 18:01:16 2021 -0800","stats":{"files_changed":123,"insertions":312,"deletions":312,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat_freebsd_osx.py","jc/parsers/netstat_linux.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"doc fixes","epoch":1609812076,"epoch_utc":null},{"commit":"ceccfb2c815f57f1b6fd81f891d8b495de23f9f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 4 17:05:26 2021 -0800","stats":{"files_changed":3,"insertions":2036,"deletions":0,"files":["tests/fixtures/centos-7.7/iw-scan0.out","tests/fixtures/centos-7.7/iw-scan1.out","tests/fixtures/ubuntu-20.04/date.out"]},"message":"add test output for iw-scan and date on ubuntu 20.04","epoch":1609808726,"epoch_utc":null},{"commit":"03c02953cd7e3327b391f799c37a2990eb2cb24c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 1 12:01:56 2021 -0800","stats":{"files_changed":2,"insertions":96,"deletions":0,"files":["docgen.sh","docs/parsers/wc.md"]},"message":"add wc doc","epoch":1609531316,"epoch_utc":null},{"commit":"f254a0eaa16fcda316f7a75424ee359058204b03","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 16:45:10 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump","epoch":1609461910,"epoch_utc":null},{"commit":"9e3b88727cd439e15f235dddb9dd5796e010797a","merge":"439871e b122174","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 16:40:36 2020 -0800","message":"Merge pull request #91 from kellyjonbrazil/dev\n\nDev v1.14.0","epoch":1609461636,"epoch_utc":null},{"commit":"b12217466e906829d19be4cfd80dfe7cf4008e57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 16:37:47 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"spelling","epoch":1609461467,"epoch_utc":null},{"commit":"8b9c932f9b05295e63b3e7d0073f243458fd4dd9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 16:37:14 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"update date","epoch":1609461434,"epoch_utc":null},{"commit":"5986ce03db6fcd1aa0f7b064eaa96c2120c06d2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 16:36:27 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add printenv info","epoch":1609461387,"epoch_utc":null},{"commit":"a7b0e936e400d2f9e55629e2d722cc002e035e9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 14:21:24 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"add vdir and printenv info","epoch":1609453284,"epoch_utc":null},{"commit":"cb0221142455a6bcb904fbe9ade657be45815b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 14:19:45 2020 -0800","stats":{"files_changed":4,"insertions":61,"deletions":2,"files":["jc/parsers/wc.py","tests/fixtures/osx-10.14.6/wc-stdin.json","tests/fixtures/osx-10.14.6/wc-stdin.out","tests/test_wc.py"]},"message":"add wc tests","epoch":1609453185,"epoch_utc":null},{"commit":"bd443bf39227515ae5f8df65d07b30268dcc90a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 14:11:25 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/env.py"]},"message":"add printenv to env docs","epoch":1609452685,"epoch_utc":null},{"commit":"1f547edd361e66b19ccbcb59f6ba0ae78f6080ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 14:10:56 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/env.md"]},"message":"add printenv to env docs","epoch":1609452656,"epoch_utc":null},{"commit":"e4bac3a493705b09e301ddc90dd1b0cee7467c3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 14:10:37 2020 -0800","stats":{"files_changed":9,"insertions":378,"deletions":0,"files":["CHANGELOG","EXAMPLES.md","README.md","jc/cli.py","jc/parsers/wc.py","tests/fixtures/centos-7.7/wc.json","tests/fixtures/centos-7.7/wc.out","tests/fixtures/osx-10.14.6/wc.json","tests/fixtures/osx-10.14.6/wc.out"]},"message":"add wc parser","epoch":1609452637,"epoch_utc":null},{"commit":"5e6bfa681aff03fbd683f81a9f4daa56b49d1344","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 13:18:53 2020 -0800","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["README.md","docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"add vdir info","epoch":1609449533,"epoch_utc":null},{"commit":"276160125e01553c75eaad68530177bcf4f9004d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 14:04:49 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"]},"message":"add new commands to README","epoch":1609365889,"epoch_utc":null},{"commit":"d4ae5543f2d5f28a0db5b8e2e19993c21c5d960c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 13:11:13 2020 -0800","stats":{"files_changed":3,"insertions":39,"deletions":0,"files":["tests/fixtures/centos-7.7/hash.json","tests/fixtures/centos-7.7/hash.out","tests/test_hash.py"]},"message":"add hash tests","epoch":1609362673,"epoch_utc":null},{"commit":"55f360e267fdfcfef0c124ed6b88535cc181a8b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 12:58:52 2020 -0800","stats":{"files_changed":6,"insertions":260,"deletions":0,"files":["CHANGELOG","EXAMPLES.md","docgen.sh","docs/parsers/hash.md","jc/cli.py","jc/parsers/hash.py"]},"message":"add hash command parser","epoch":1609361932,"epoch_utc":null},{"commit":"fdedab2a0cf5af15df5803d87302397dd6d71741","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 11:33:29 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/cksum.py","jc/parsers/hashsum.py"]},"message":"description updates","epoch":1609356809,"epoch_utc":null},{"commit":"a9be42e3031ab0d697cff67a9e384caa2265a3ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 11:28:42 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"specify parser warnings for quiet option","epoch":1609356522,"epoch_utc":null},{"commit":"6da9510e46e84ec1cb93384825184d2996cf0e08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 11:22:17 2020 -0800","stats":{"files_changed":9,"insertions":482,"deletions":0,"files":["tests/fixtures/centos-7.7/cksum.json","tests/fixtures/centos-7.7/cksum.out","tests/fixtures/centos-7.7/sum.json","tests/fixtures/centos-7.7/sum.out","tests/fixtures/osx-10.14.6/cksum.json","tests/fixtures/osx-10.14.6/cksum.out","tests/fixtures/osx-10.14.6/sum.json","tests/fixtures/osx-10.14.6/sum.out","tests/test_cksum.py"]},"message":"add cksum tests","epoch":1609356137,"epoch_utc":null},{"commit":"0431798178740b03cdefececc6df958e5adf62fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 11:02:02 2020 -0800","stats":{"files_changed":7,"insertions":229,"deletions":3,"files":["CHANGELOG","docgen.sh","docs/parsers/cksum.md","docs/parsers/hashsum.md","jc/cli.py","jc/parsers/cksum.py","jc/parsers/hashsum.py"]},"message":"add cksum parser","epoch":1609354922,"epoch_utc":null},{"commit":"62432f3c484e74acb2b2dfd15d448b3f1b5d53c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 09:59:54 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/hashsum.py"]},"message":"update hashsum description","epoch":1609351194,"epoch_utc":null},{"commit":"9fbbc30906b597e6afaf2030015a7a694d85f79e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 13:09:03 2020 -0800","stats":{"files_changed":2,"insertions":20,"deletions":0,"files":["docs/parsers/hashsum.md","jc/parsers/hashsum.py"]},"message":"add supported commands to docs","epoch":1609276143,"epoch_utc":null},{"commit":"d1567d1f622902053f3df58645b4e39532e0c30a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 13:05:04 2020 -0800","stats":{"files_changed":3,"insertions":104,"deletions":0,"files":["CHANGELOG","docgen.sh","docs/parsers/hashsum.md"]},"message":"add hashsum documentation","epoch":1609275904,"epoch_utc":null},{"commit":"6ca1f5970b3a518615a54ee7fcbc1bddab2db331","merge":"1c880b9 3b7d54c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 12:59:02 2020 -0800","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev","epoch":1609275542,"epoch_utc":null},{"commit":"1c880b9e24ca53cd592cec1dbc52301308290fb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 12:58:04 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_hashsum.py"]},"message":"force git tests","epoch":1609275484,"epoch_utc":null},{"commit":"3b7d54c720dfc93637328cf06eb10a85447c8793","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 12:55:30 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"add python 3.9","epoch":1609275330,"epoch_utc":null},{"commit":"44a740605705bd0ecfde2a6bcc7a826e1010dcf0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 12:51:43 2020 -0800","stats":{"files_changed":6,"insertions":87,"deletions":0,"files":["tests/fixtures/centos-7.7/md5sum.json","tests/fixtures/centos-7.7/sha256sum.json","tests/fixtures/centos-7.7/sha384sum.json","tests/fixtures/osx-10.14.6/md5.json","tests/fixtures/osx-10.14.6/shasum.json","tests/test_hashsum.py"]},"message":"add hashsum tests","epoch":1609275103,"epoch_utc":null},{"commit":"8157dcfdb1868548b7c8ca692e6be25f80bb2c2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 12:25:20 2020 -0800","stats":{"files_changed":1,"insertions":36,"deletions":11,"files":["jc/parsers/hashsum.py"]},"message":"fix for files with spaces in the name","epoch":1609273520,"epoch_utc":null},{"commit":"28762aea15cabc9cd8293d725e7f1f0550f8e15d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 11:36:20 2020 -0800","stats":{"files_changed":7,"insertions":524,"deletions":0,"files":["jc/cli.py","jc/parsers/hashsum.py","tests/fixtures/centos-7.7/md5sum.out","tests/fixtures/centos-7.7/sha256sum.out","tests/fixtures/centos-7.7/sha384sum.out","tests/fixtures/osx-10.14.6/md5.out","tests/fixtures/osx-10.14.6/shasum.out"]},"message":"add hashsum parser","epoch":1609270580,"epoch_utc":null},{"commit":"439871ea9f6b055a407e1faaf47e4f56d1829501","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 19 07:07:30 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add ubuntu","epoch":1605798450,"epoch_utc":null},{"commit":"c9180b005c0547c8cbfe4809e66894f1123b0809","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Aug 30 11:58:42 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1598813922,"epoch_utc":null},{"commit":"b14e0725f86853f0113116b1c06f54aaa563f365","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Aug 30 11:57:55 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add ansible plugin blog post link","epoch":1598813875,"epoch_utc":null},{"commit":"70fe3dcb4d5b97aba1d6c6dcd5088fecb27af181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 26 15:21:45 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1598480505,"epoch_utc":null},{"commit":"8c554604a42a3ea7ca9131b65c64fd3ceb95f906","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 26 14:41:01 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"formatting","epoch":1598478061,"epoch_utc":null},{"commit":"a0a35454bd2831c116cb598c686150b883412f94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 26 14:39:40 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add link to the web demo","epoch":1598477980,"epoch_utc":null},{"commit":"e8467e2af5b0c3f14832a9e6d4a96f219c27f3f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 20 10:57:13 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"remove extra space","epoch":1597946233,"epoch_utc":null},{"commit":"7515deb5669ef04623e9cbf58653b30c99a96430","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 20 10:39:34 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add ansible install command","epoch":1597945174,"epoch_utc":null},{"commit":"ed9e52af241b609ee7f5d1b835c9f6c5306cd3c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 20 10:37:15 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"spelling","epoch":1597945035,"epoch_utc":null},{"commit":"592a3804104628c790997747a778b3b39d076dfe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 20 10:35:49 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]},"message":"add Ansible note","epoch":1597944949,"epoch_utc":null},{"commit":"1a458d2d5b4c16c0ad90671727ae9b19939e7f23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 11 07:00:07 2020 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py"]},"message":"update link","epoch":1597154407,"epoch_utc":null},{"commit":"0e4cf53b92ff951a6390a4dacf8833c272473583","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 11 06:36:30 2020 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/readme.md","jc/__init__.py"]},"message":"add parser docs link","epoch":1597152990,"epoch_utc":null},{"commit":"e2f06ccb33177173d984bc0cdda1aae1a3f4c681","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 6 13:00:33 2020 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"formatting","epoch":1596744033,"epoch_utc":null},{"commit":"8abff004cd8e09529e5d94be4883308152e11565","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 6 12:59:30 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/yaml.md"]},"message":"indentation fix","epoch":1596743970,"epoch_utc":null},{"commit":"c4a0e2e3feb2e51eaaaa202064f352229017bcc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 6 12:58:53 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/yaml.py"]},"message":"fix indentation","epoch":1596743933,"epoch_utc":null},{"commit":"4f10f79c73f8b3d6edc2c83e6a12d0ddc1a78555","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 6 12:55:24 2020 -0700","stats":{"files_changed":2,"insertions":4,"deletions":8,"files":["docs/parsers/uname.md","jc/parsers/uname.py"]},"message":"standardize doc","epoch":1596743724,"epoch_utc":null},{"commit":"69e7a560fd82337570c4bb4aa4780f513c18bd94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 6 07:48:08 2020 -0700","stats":{"files_changed":4,"insertions":8,"deletions":0,"files":["docs/parsers/env.md","docs/parsers/history.md","jc/parsers/env.py","jc/parsers/history.py"]},"message":"add output info to docs","epoch":1596725288,"epoch_utc":null},{"commit":"59b105580805d78516abe1c1069d52a6f0a8131a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 16:51:58 2020 -0700","stats":{"files_changed":97,"insertions":564,"deletions":269,"files":["docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"enhance docs","epoch":1596671518,"epoch_utc":null},{"commit":"6ed48c6289214fe5114971c80772efdf9ac1b8c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 15:34:17 2020 -0700","stats":{"files_changed":16,"insertions":88,"deletions":37,"files":["jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py"]},"message":"enhance docs","epoch":1596666857,"epoch_utc":null},{"commit":"f2fb4d3f415fbc1c09eec6dedcf70fba78406b3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 15:10:48 2020 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","jc/parsers/airport.py","jc/parsers/airport_s.py"]},"message":"improve docs","epoch":1596665448,"epoch_utc":null},{"commit":"6aeea59ea84e56434e87ddf89cd5d4435b99e140","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 15:08:42 2020 -0700","stats":{"files_changed":2,"insertions":14,"deletions":8,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md"]},"message":"doc updates","epoch":1596665322,"epoch_utc":null},{"commit":"d016f3bbb307f85bd0f93a508323941a8bb9d872","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 15:07:33 2020 -0700","stats":{"files_changed":2,"insertions":14,"deletions":8,"files":["jc/parsers/airport.py","jc/parsers/airport_s.py"]},"message":"improve documentation","epoch":1596665253,"epoch_utc":null},{"commit":"7131c297180bfa195d0209d46fc70ab8e67efe2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 13:32:59 2020 -0700","stats":{"files_changed":114,"insertions":686,"deletions":116,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"add module usage info to docs","epoch":1596659579,"epoch_utc":null},{"commit":"7432442983841b42c8d3d2459b55596c05d1e100","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 13:31:52 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["docs/parsers/blkid.md"]},"message":"add usage","epoch":1596659512,"epoch_utc":null},{"commit":"5344883394a0662ee16bb5edd68df8e4410025f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 11:35:52 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"]},"message":"spelling/add ping parser update","epoch":1596652552,"epoch_utc":null},{"commit":"3fcd2f6c2e015b0e65e7261c8e591ccd8a7d0e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 11:34:29 2020 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/cli.py","setup.py"]},"message":"version bump","epoch":1596652469,"epoch_utc":null},{"commit":"f3d84bd5bf06349b681e9b72d904676e9f6bca19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 11:28:37 2020 -0700","stats":{"files_changed":6,"insertions":21,"deletions":3,"files":["CHANGELOG","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/fixtures/debian10/crontab-u.json","tests/fixtures/debian10/crontab-u.out","tests/test_crontab_u.py"]},"message":"tighten crontab and crontab-u parser variable detection","epoch":1596652117,"epoch_utc":null},{"commit":"549780c23220bca3bcab58d7329ba8d44d1be55d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 11:04:07 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"add debian/apt-get info","epoch":1596650647,"epoch_utc":null},{"commit":"2a6da69b82aa9ade6c01d490a32b57b415c62a9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 09:58:01 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ping.py"]},"message":"improve linux/bsd check","epoch":1596646681,"epoch_utc":null},{"commit":"5c538816cf76686bac1a86a7c06e24664d25a2dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 4 17:36:35 2020 -0700","stats":{"files_changed":9,"insertions":55,"deletions":4,"files":["CHANGELOG","jc/cli.py","jc/parsers/ping.py","setup.py","tests/fixtures/pi/ping-ip-O-D.json","tests/fixtures/pi/ping-ip-O-D.out","tests/fixtures/pi/ping-ip-O.json","tests/fixtures/pi/ping-ip-O.out","tests/test_ping.py"]},"message":"ping parser fix for raspberry pi","epoch":1596587795,"epoch_utc":null},{"commit":"7b8b378a7df397c488fc54fbd6e77f5f3f23c10c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 3 12:39:18 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"]},"message":"add pydoc-markdown version requirement","epoch":1596483558,"epoch_utc":null},{"commit":"e30a75e25c4b43969bf9f874f89e18512a5e3a34","merge":"dda517a 85ad5cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 3 10:18:39 2020 -0700","message":"Merge pull request #76 from kellyjonbrazil/dev\n\nDev v1.13.2","epoch":1596475119,"epoch_utc":null},{"commit":"85ad5cfd0bfb903ce35e37b343244fed88dbd979","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 3 10:14:13 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"date change","epoch":1596474853,"epoch_utc":null},{"commit":"88b9d5068c5bac0691fedb543114300d6afc7131","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 3 09:26:37 2020 -0700","stats":{"files_changed":6,"insertions":74,"deletions":15,"files":["EXAMPLES.md","README.md","docs/parsers/date.md","tests/fixtures/generic/date.json","tests/fixtures/generic/date.out","tests/test_date.py"]},"message":"finish date parser","epoch":1596471997,"epoch_utc":null},{"commit":"f8c4948a090642db595eda2ba2ea0773e560ba67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 16:52:48 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/date.py"]},"message":"remove comment","epoch":1596239568,"epoch_utc":null},{"commit":"412322447f019aec0b64888631bc965e9f21186d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 16:51:05 2020 -0700","stats":{"files_changed":1,"insertions":48,"deletions":17,"files":["jc/parsers/date.py"]},"message":"add month_num and weekday_num fields","epoch":1596239465,"epoch_utc":null},{"commit":"d4f289e40fae621b87f0d49451fca4c3dde216b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 14:47:06 2020 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/date.md","jc/parsers/date.py"]},"message":"documentation fixup","epoch":1596232026,"epoch_utc":null},{"commit":"e1f3feb8f529172ae26ce4c7a66a4a1c21b722ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 14:45:30 2020 -0700","stats":{"files_changed":1,"insertions":13,"deletions":10,"files":["jc/parsers/date.py"]},"message":"cover empty data case in process","epoch":1596231930,"epoch_utc":null},{"commit":"37d3bc699c7be16955be06840d242980f05f1074","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 14:39:02 2020 -0700","stats":{"files_changed":6,"insertions":224,"deletions":1,"files":["CHANGELOG","docgen.sh","docs/parsers/date.md","jc/cli.py","jc/parsers/date.py","man/jc.1"]},"message":"add date parser","epoch":1596231542,"epoch_utc":null},{"commit":"672fd18016b8122510b6ab246b5675b7fd399b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 12:59:44 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"date bump","epoch":1596225584,"epoch_utc":null},{"commit":"bc2c23a2a09b96d34bb80f69fdc7751fb5ac3ed4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 12:58:58 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"version bump","epoch":1596225538,"epoch_utc":null},{"commit":"865f7e78124e382c6d315702fa6e48f2104cee46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 12:58:11 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["man/jc.1"]},"message":"add kv parser to man page","epoch":1596225491,"epoch_utc":null},{"commit":"720212b552e1bd2b9196dd5f06e4b3f85d463531","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 11:02:24 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":9,"files":["EXAMPLES.md"]},"message":"fixup traceroute example with new behavior","epoch":1596218544,"epoch_utc":null},{"commit":"d3be61f60837801d5a505dc2520cc80c874a6092","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 10:59:46 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]},"message":"version bump","epoch":1596218386,"epoch_utc":null},{"commit":"13418b16b8fd78fdd97ac045ec3fe9aa59d46080","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 10:56:51 2020 -0700","stats":{"files_changed":2,"insertions":8,"deletions":2,"files":["docs/parsers/traceroute.md","jc/parsers/traceroute.py"]},"message":"doc update","epoch":1596218211,"epoch_utc":null},{"commit":"42d2017cd6f5ee1d1a92bd4958cd63366c1e715d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 10:53:47 2020 -0700","stats":{"files_changed":18,"insertions":41,"deletions":24,"files":["CHANGELOG","jc/parsers/traceroute.py","tests/fixtures/centos-7.7/traceroute.json","tests/fixtures/freebsd12/traceroute.json","tests/fixtures/freebsd12/traceroute6.json","tests/fixtures/generic/traceroute1.json","tests/fixtures/generic/traceroute2.json","tests/fixtures/generic/traceroute3.json","tests/fixtures/generic/traceroute5.json","tests/fixtures/generic/traceroute6.json","tests/fixtures/generic/traceroute7.json","tests/fixtures/osx-10.14.6/traceroute-asn.json",".../fixtures/osx-10.14.6/traceroute-no-header.json","tests/fixtures/osx-10.14.6/traceroute-q.json","tests/fixtures/osx-10.14.6/traceroute.json",".../osx-10.14.6/traceroute6-mult-addresses.json","tests/fixtures/osx-10.14.6/traceroute6.json","tests/test_traceroute.py"]},"message":"traceroute updates: handle missing header row, add annotations, don't print timeouts as probes","epoch":1596218027,"epoch_utc":null},{"commit":"4345e76ead2a49ae0691077e9fbd2b6c5fdfd129","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 30 16:49:38 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"]},"message":"change to use --kv for key/value files","epoch":1596152978,"epoch_utc":null},{"commit":"741431322ba2677355c361fcd6095ed8cd0a4349","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 30 16:45:36 2020 -0700","stats":{"files_changed":2,"insertions":46,"deletions":24,"files":["tests/test_ini.py","tests/test_kv.py"]},"message":"update tests for kv parser","epoch":1596152736,"epoch_utc":null},{"commit":"980beaaf41a04891f7c2f5daeb1e3a23d3c7ec19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 30 16:21:03 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/ifconfig.py"]},"message":"fix docgen issue","epoch":1596151263,"epoch_utc":null},{"commit":"2205034e0906b333c259648f7a0e5392945f12ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 30 16:20:51 2020 -0700","stats":{"files_changed":8,"insertions":105,"deletions":31,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","jc/cli.py","jc/parsers/ini.py","jc/parsers/kv.py","setup.py"]},"message":"add kv parser","epoch":1596151251,"epoch_utc":null},{"commit":"82b9c87a66fce5d8626c56858a8c6f1f3326e7fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 30 16:20:24 2020 -0700","stats":{"files_changed":58,"insertions":345,"deletions":62,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/readme.md","docs/utils.md"]},"message":"update docs","epoch":1596151224,"epoch_utc":null},{"commit":"dda517a937323b9888e081aea1032a9d63c4a6bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 14:36:20 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":163,"files":["README.md"]},"message":"shorten more examples","epoch":1596058580,"epoch_utc":null},{"commit":"4e6d283b9eddf7759b4dd37bd643394ff73febd4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 14:27:13 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":65,"files":["README.md"]},"message":"shorten netstat example","epoch":1596058033,"epoch_utc":null},{"commit":"55acab05aa740dfd7534304f2678b60942cad116","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:55:16 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["changelog.txt => CHANGELOG"]},"message":"change name to CHANGELOG","epoch":1596048916,"epoch_utc":null},{"commit":"ed38a18d236cdb991779f4f148e42359c139e61c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:49:00 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":86,"files":["README.md"]},"message":"remove more examples","epoch":1596048540,"epoch_utc":null},{"commit":"95b3c11203d3dd0627c5eeca39fe1d145bf2d733","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:43:22 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":124,"files":["README.md"]},"message":"remove more examples","epoch":1596048202,"epoch_utc":null},{"commit":"dce318f4fd44b9c4013211bf233020e84566ddb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:40:47 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1537,"files":["README.md"]},"message":"remove examples to reduce file size","epoch":1596048047,"epoch_utc":null},{"commit":"85127f0fb8096192b19fca1f4ffe38ee391351be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:34:43 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["jc/examples.md => EXAMPLES.md"]},"message":"move examples to root","epoch":1596047683,"epoch_utc":null},{"commit":"fb45058244ce879f12bbb5b7267b0fd63fef1d63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:32:18 2020 -0700","stats":{"files_changed":1,"insertions":2640,"deletions":0,"files":["jc/examples.md"]},"message":"add examples file","epoch":1596047538,"epoch_utc":null},{"commit":"45bb5ae389a00ed6a132a65c69ce76c7e5976858","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 28 11:03:41 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"spelling","epoch":1595959421,"epoch_utc":null},{"commit":"339238ab364d8735892a11cb16a62a651edae169","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 20:37:33 2020 -0700","stats":{"files_changed":8,"insertions":79,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py","tests/fixtures/centos-7.7/route-6-n.json","tests/fixtures/centos-7.7/route-6-n.out","tests/fixtures/centos-7.7/route-6.json","tests/fixtures/centos-7.7/route-6.out","tests/test_route.py"]},"message":"version bump and add route -6 tests","epoch":1595907453,"epoch_utc":null},{"commit":"032cda8b3db096b690d2557e3b918c50c716c543","merge":"690ac52 6badd3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 19:12:21 2020 -0700","message":"Merge pull request #74 from kellyjonbrazil/dev\n\nDev v1.13.0","epoch":1595902341,"epoch_utc":null},{"commit":"6badd3fb1e1cf6d1ee99614fadc20d54be8039aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 19:02:23 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["tests/test_cli.py"]},"message":"add parser count test","epoch":1595901743,"epoch_utc":null},{"commit":"724d825745b6f1692eb3b068c3fb59d14892e690","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 19:02:11 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["man/jc.1"]},"message":"add tracepath parser","epoch":1595901731,"epoch_utc":null},{"commit":"ff1e32ad2ee156f105f5069c6b14a65b22784dfa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 16:49:34 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump","epoch":1595893774,"epoch_utc":null},{"commit":"a5f97febd3066b9e95a18d6b73162a7d206c5845","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 16:47:41 2020 -0700","stats":{"files_changed":10,"insertions":132,"deletions":0,"files":["tests/fixtures/centos-7.7/tracepath.json","tests/fixtures/centos-7.7/tracepath6.json","tests/fixtures/freebsd12/traceroute.json","tests/fixtures/freebsd12/traceroute.out","tests/fixtures/freebsd12/traceroute6.json","tests/fixtures/freebsd12/traceroute6.out","tests/fixtures/osx-10.14.6/uname.out","tests/test_tracepath.py","tests/test_traceroute.py","tests/test_uname.py"]},"message":"update traceroute, tracepath, and uname tests","epoch":1595893661,"epoch_utc":null},{"commit":"5baa6cc865634142690e78596c640db35e110b29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:44:13 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]},"message":"add route parser update","epoch":1595889853,"epoch_utc":null},{"commit":"7a4f30b843d8f11711abbb8f9bb263f945ff87ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:37:44 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/route.py"]},"message":"fix for iface issue","epoch":1595889464,"epoch_utc":null},{"commit":"b2c385dc4f63e3e15f47e986deac0524967214a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:30:09 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"]},"message":"change 'if' to 'iface'","epoch":1595889009,"epoch_utc":null},{"commit":"5d5da8d33fa6ab77c745d338d1a2e2e8f2e4c697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:27:11 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/route.py"]},"message":"more fixes for ipv6 fix","epoch":1595888831,"epoch_utc":null},{"commit":"e60457157839daba385202906997dec48c9c4950","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:20:51 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"]},"message":"fix next_hop fix","epoch":1595888451,"epoch_utc":null},{"commit":"f9dacc3f95b32e1431914ae0b0dc5c8e8840d5a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:18:13 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/route.py"]},"message":"fixup for ipv6","epoch":1595888293,"epoch_utc":null},{"commit":"6086920332575cd7db1b38262a3b4ba8fbfae7ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:13:32 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]},"message":"update ParseError message","epoch":1595888012,"epoch_utc":null},{"commit":"f52f3163bcaf8d7e784f02505e81456e8240295b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 13:57:58 2020 -0700","stats":{"files_changed":1,"insertions":49,"deletions":0,"files":["README.md"]},"message":"add tracepath example","epoch":1595883478,"epoch_utc":null},{"commit":"d18ff73e880c7d34957f2713857cc83094f914cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 13:51:51 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/tracepath.py"]},"message":"update author info","epoch":1595883111,"epoch_utc":null},{"commit":"1e5d602caecd96c9056ad77f9fc50cf25bf6fdfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 13:48:46 2020 -0700","stats":{"files_changed":2,"insertions":288,"deletions":32,"files":["docs/parsers/tracepath.md","jc/parsers/tracepath.py"]},"message":"working tracepath parser","epoch":1595882926,"epoch_utc":null},{"commit":"12912521ecb376c36dfdd743b3c4195598fb9aac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 11:04:27 2020 -0700","stats":{"files_changed":2,"insertions":0,"deletions":11,"files":["docs/parsers/traceroute.md","jc/parsers/traceroute.py"]},"message":"doc update","epoch":1595873067,"epoch_utc":null},{"commit":"842ea3a94bec3fcab76257fdde5514d1de3d57fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 11:02:13 2020 -0700","stats":{"files_changed":2,"insertions":153,"deletions":0,"files":["docs/parsers/tracepath.md","jc/parsers/tracepath.py"]},"message":"add tracepath parser skeleton","epoch":1595872933,"epoch_utc":null},{"commit":"a8560dbc1598fa97de87594228b4cc10282d4197","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 11:01:57 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add tracepath","epoch":1595872917,"epoch_utc":null},{"commit":"a65e27540a8c5c7123d2fdf79fcbefa1e2f8afdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 11:01:45 2020 -0700","stats":{"files_changed":3,"insertions":1,"deletions":24,"files":["docgen.sh","docs/parsers/traceroute.md","jc/parsers/traceroute.py"]},"message":"update docs","epoch":1595872905,"epoch_utc":null},{"commit":"c3c5ed11e68938e35920144406d37ea3b21d63dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 10:33:40 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]},"message":"change name from tr to trparse","epoch":1595871220,"epoch_utc":null},{"commit":"ce24149335cd8ed1e8513a2cf040432fe42d86b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 10:33:25 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping.py"]},"message":"formatting","epoch":1595871205,"epoch_utc":null},{"commit":"0314ca8c4831d24c169a0e4948421ecd638fd699","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 10:33:15 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add trparse acknowledgement","epoch":1595871195,"epoch_utc":null},{"commit":"ebd8ee49a9f43063850e30c745c8cae46ee13de1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 10:28:15 2020 -0700","stats":{"files_changed":1,"insertions":26,"deletions":1,"files":["README.md"]},"message":"add key/value info to ini example","epoch":1595870895,"epoch_utc":null},{"commit":"38d10c97814ec69586c3b447c182f339772d6e22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 09:29:30 2020 -0700","stats":{"files_changed":1,"insertions":130,"deletions":1,"files":["README.md"]},"message":"add ping and traceroute examples","epoch":1595867370,"epoch_utc":null},{"commit":"360106c24d24e6a9697c00a158a14aaa334a4b1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 09:23:01 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]},"message":"add tracepath","epoch":1595866981,"epoch_utc":null},{"commit":"ca470a5d02fd9fbaf05d8b3b3bb1ffe9f4cf5af3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 09:20:00 2020 -0700","stats":{"files_changed":2,"insertions":39,"deletions":0,"files":["tests/fixtures/centos-7.7/tracepath.out","tests/fixtures/centos-7.7/tracepath6.out"]},"message":"add tracepath fixtures","epoch":1595866800,"epoch_utc":null},{"commit":"57f66e6b1d554ff20b72959f5ebb9e7b2feffed2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 09:19:48 2020 -0700","stats":{"files_changed":2,"insertions":14,"deletions":2,"files":["changelog.txt","jc/parsers/uname.py"]},"message":"add exception with hint to use \"uname -a\"","epoch":1595866788,"epoch_utc":null},{"commit":"e774f67924c0e6195f79829b2ac75ce95f76fbaa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:53:17 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["jc/parsers/ini.py"]},"message":"turn off interpolation and coerce None to ''","epoch":1595634797,"epoch_utc":null},{"commit":"ac10e576c167d20de259e47a6aa5b23fc998b4c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:29:27 2020 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/ini.md","jc/parsers/ini.py"]},"message":"spelling","epoch":1595633367,"epoch_utc":null},{"commit":"bcae0a99cd0ccce4ec8a67929f7c83a1095a5b88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:23:45 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"add key/value to ini description","epoch":1595633025,"epoch_utc":null},{"commit":"c73c2ff879b3ed7a3e6f04e53e0a729e4f00ed21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:23:30 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["changelog.txt"]},"message":"add ping, traceroute, and ini update","epoch":1595633010,"epoch_utc":null},{"commit":"c39b1a3356881a11a8f6fe9432897e6d67162f07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:17:51 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["README.md"]},"message":"add ping, traceroute and update ini description","epoch":1595632671,"epoch_utc":null},{"commit":"125dc2d9e051a82a4a438afe2e520212338353f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:17:16 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":3,"files":["docs/parsers/ini.md"]},"message":"add info about key/value files to doc","epoch":1595632636,"epoch_utc":null},{"commit":"b7d4ddc7ced2c3aabf3a857b53a0bf1b62eb6a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:16:54 2020 -0700","stats":{"files_changed":5,"insertions":50,"deletions":0,"files":["tests/fixtures/generic/keyvalue-ifcfg.json","tests/fixtures/generic/keyvalue-ifcfg.txt","tests/fixtures/generic/keyvalue.json","tests/fixtures/generic/keyvalue.txt","tests/test_ini.py"]},"message":"add tests for key/value files","epoch":1595632614,"epoch_utc":null},{"commit":"f5e546c6fa7cba166284a0976887d6b82451d3e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:16:24 2020 -0700","stats":{"files_changed":1,"insertions":33,"deletions":9,"files":["jc/parsers/ini.py"]},"message":"add support for simple key/value pairs","epoch":1595632584,"epoch_utc":null},{"commit":"928e39cd103b96b8c3ccc8d85c930ffb419296c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 14:16:41 2020 -0700","stats":{"files_changed":9,"insertions":104,"deletions":0,"files":["tests/fixtures/generic/traceroute1.json","tests/fixtures/generic/traceroute2.json","tests/fixtures/generic/traceroute3.json","tests/fixtures/generic/traceroute4.json","tests/fixtures/generic/traceroute5.json","tests/fixtures/generic/traceroute6.json","tests/fixtures/generic/traceroute7.json","tests/fixtures/generic/traceroute8.json","tests/test_traceroute.py"]},"message":"add generic traceroute tests","epoch":1595625401,"epoch_utc":null},{"commit":"d0b7ea68a005daff313e44808b256656313a78a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 13:47:47 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/traceroute.py"]},"message":"check for key in dictionary","epoch":1595623667,"epoch_utc":null},{"commit":"8444690133b6a7522822ab279e97ede6ded17ba9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 13:47:29 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["man/jc.1"]},"message":"add traceroute","epoch":1595623649,"epoch_utc":null},{"commit":"c03c42d76703ff8f423cf3c10ea6254a27a685cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 13:47:23 2020 -0700","stats":{"files_changed":9,"insertions":76,"deletions":9,"files":["tests/fixtures/centos-7.7/traceroute.json","tests/fixtures/osx-10.14.6/traceroute-asn.json",".../osx-10.14.6/traceroute-mult-addresses.json","tests/fixtures/osx-10.14.6/traceroute-q.json","tests/fixtures/osx-10.14.6/traceroute.json",".../osx-10.14.6/traceroute6-mult-addresses.json","...-address.out => traceroute6-mult-addresses.out}","tests/fixtures/osx-10.14.6/traceroute6.json","tests/test_traceroute.py"]},"message":"add traceroute tests","epoch":1595623643,"epoch_utc":null},{"commit":"ab67688a00ac335d2a5603e9cadef8b565957911","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 16:45:09 2020 -0700","stats":{"files_changed":1,"insertions":55,"deletions":0,"files":["tests/test_traceroute.py"]},"message":"add test skeleton","epoch":1595547909,"epoch_utc":null},{"commit":"5dcb7166daef3c53da65bba0d591672e64d3a90b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 16:44:57 2020 -0700","stats":{"files_changed":2,"insertions":169,"deletions":0,"files":["docgen.sh","docs/parsers/traceroute.md"]},"message":"add traceroute doc","epoch":1595547897,"epoch_utc":null},{"commit":"14697b86d7fc1cfebb41e0fd2d9a9b9b60071d3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 15:48:08 2020 -0700","stats":{"files_changed":1,"insertions":24,"deletions":2,"files":["jc/parsers/traceroute.py"]},"message":"add MIT license","epoch":1595544488,"epoch_utc":null},{"commit":"4f4b6276d4bf798b17d996f39742bd0428fc2f19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 15:46:22 2020 -0700","stats":{"files_changed":1,"insertions":38,"deletions":33,"files":["jc/parsers/traceroute.py"]},"message":"update docstring","epoch":1595544382,"epoch_utc":null},{"commit":"7bc497e1291059ae7858c9d2bd2d9a1b4c030dd1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 15:42:33 2020 -0700","stats":{"files_changed":1,"insertions":117,"deletions":14,"files":["jc/parsers/traceroute.py"]},"message":"updated process() function to set integers and floats","epoch":1595544153,"epoch_utc":null},{"commit":"68a37a6a5a3f0ad0fa24c84d363050af9fa11f97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 12:48:33 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/parsers/traceroute.py"]},"message":"remove unused function load()","epoch":1595533713,"epoch_utc":null},{"commit":"6f5cd1d7c5f76d7d4da42171fdc30daf9fe3996e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 12:03:21 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]},"message":"change to use f-string","epoch":1595531001,"epoch_utc":null},{"commit":"126b1b121ca10183dc7e9dece83b42907becad39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 11:31:56 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":0,"files":["tests/fixtures/generic/traceroute8.out"]},"message":"add traceroute6 example","epoch":1595529116,"epoch_utc":null},{"commit":"2341e456a012564f86d533d2748a5887d79995e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 11:31:35 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]},"message":"use ParseError instead of generic Exception","epoch":1595529095,"epoch_utc":null},{"commit":"72d80e95bb50ae2a7432082e65aba15235ba0955","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 10:52:40 2020 -0700","stats":{"files_changed":8,"insertions":115,"deletions":8,"files":["jc/parsers/traceroute.py","tests/fixtures/generic/traceroute1.out","tests/fixtures/generic/traceroute2.out","tests/fixtures/generic/traceroute3.out","tests/fixtures/generic/traceroute4.out","tests/fixtures/generic/traceroute5.out","tests/fixtures/generic/traceroute6.out","tests/fixtures/generic/traceroute7.out"]},"message":"remove unused regex patterns","epoch":1595526760,"epoch_utc":null},{"commit":"f5ec82440cd1c1b5ac9011d3517298d0cdcd8766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 10:19:56 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/traceroute.py"]},"message":"simplify regex patterns","epoch":1595524796,"epoch_utc":null},{"commit":"c8e526ead35b868733f57b4c114062a48b78a817","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 22 17:23:24 2020 -0700","stats":{"files_changed":2,"insertions":12,"deletions":3,"files":["jc/parsers/traceroute.py","tests/fixtures/osx-10.14.6/traceroute-q.out"]},"message":"fixes for bsd-style ipv6 output","epoch":1595463804,"epoch_utc":null},{"commit":"066adfb76479df7042bfb12bbb83b5dbd8a6d54c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 22 15:02:02 2020 -0700","stats":{"files_changed":7,"insertions":83,"deletions":7,"files":["jc/parsers/traceroute.py","tests/fixtures/centos-7.7/traceroute.out","tests/fixtures/osx-10.14.6/traceroute-asn.out",".../osx-10.14.6/traceroute-mult-addresses.out",".../fixtures/osx-10.14.6/traceroute-no-header.out",".../osx-10.14.6/traceroute6-multi-address.out","tests/fixtures/osx-10.14.6/traceroute6.out"]},"message":"handle warning lines in the traceroute output","epoch":1595455322,"epoch_utc":null},{"commit":"5b444d4717b0b8528647e17e71d699907def3e18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 22 12:19:27 2020 -0700","stats":{"files_changed":3,"insertions":307,"deletions":0,"files":["jc/cli.py","jc/parsers/traceroute.py","tests/fixtures/osx-10.14.6/traceroute.out"]},"message":"add traceroute parser","epoch":1595445567,"epoch_utc":null},{"commit":"69c95adc8d59927c1c00b7e766ca5003b7b6454c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 22 09:06:11 2020 -0700","stats":{"files_changed":3,"insertions":81,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ping6-ip-dup.json","tests/fixtures/osx-10.14.6/ping6-ip-dup.out","tests/test_ping.py"]},"message":"add osx ipv6 ping dup test","epoch":1595433971,"epoch_utc":null},{"commit":"2b0e0d8f5c1a6a5450e362971f9ad5892093b2ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 17:34:30 2020 -0700","stats":{"files_changed":3,"insertions":27,"deletions":0,"files":["tests/fixtures/centos-7.7/ping6-ip-dup.json","tests/fixtures/centos-7.7/ping6-ip-dup.out","tests/test_ping.py"]},"message":"add ipv6 dup test","epoch":1595378070,"epoch_utc":null},{"commit":"778d1bacbf8df523d434b22f5e1517955e4c15ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 15:16:39 2020 -0700","stats":{"files_changed":2,"insertions":28,"deletions":12,"files":["docs/parsers/ping.md","jc/parsers/ping.py"]},"message":"update docs to add \"duplicates\" fields","epoch":1595369799,"epoch_utc":null},{"commit":"7e1b0410166c584775ebcd681a280ec7321560c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 15:12:43 2020 -0700","stats":{"files_changed":1,"insertions":24,"deletions":0,"files":["tests/test_ping.py"]},"message":"add duplicate replies tests","epoch":1595369563,"epoch_utc":null},{"commit":"313b9b329ca6b674069718839f55a4bd7834db80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 15:05:54 2020 -0700","stats":{"files_changed":55,"insertions":55,"deletions":53,"files":["tests/fixtures/centos-7.7/ping-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping-hostname-O-p.json","tests/fixtures/centos-7.7/ping-hostname-O.json","tests/fixtures/centos-7.7/ping-ip-O-D.json","tests/fixtures/centos-7.7/ping-ip-O.json","tests/fixtures/centos-7.7/ping-ip-dup.json","tests/fixtures/centos-7.7/ping6-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping6-hostname-O-p.json","tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","tests/fixtures/centos-7.7/ping6-ip-O-p.json","tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping-hostname-O-p.json","tests/fixtures/fedora32/ping-hostname-O.json","tests/fixtures/fedora32/ping-ip-O-D.json","tests/fixtures/fedora32/ping-ip-O.json","tests/fixtures/fedora32/ping6-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping6-hostname-O-D-p.json","tests/fixtures/fedora32/ping6-hostname-O-p.json","tests/fixtures/fedora32/ping6-ip-O-D-p.json","tests/fixtures/fedora32/ping6-ip-O-p.json","tests/fixtures/freebsd12/ping-hostname-p.json","tests/fixtures/freebsd12/ping-hostname-s.json","tests/fixtures/freebsd12/ping-hostname.json","tests/fixtures/freebsd12/ping-ip-p.json","tests/fixtures/freebsd12/ping-ip-s.json","tests/fixtures/freebsd12/ping-ip.json","tests/fixtures/freebsd12/ping6-hostname-p.json","tests/fixtures/freebsd12/ping6-hostname-s.json","tests/fixtures/freebsd12/ping6-hostname.json","tests/fixtures/freebsd12/ping6-ip-p.json","tests/fixtures/freebsd12/ping6-ip-s.json","tests/fixtures/freebsd12/ping6-ip.json","tests/fixtures/osx-10.14.6/ping-hostname-p.json","tests/fixtures/osx-10.14.6/ping-hostname-s.json","tests/fixtures/osx-10.14.6/ping-hostname.json","tests/fixtures/osx-10.14.6/ping-ip-dup.json","tests/fixtures/osx-10.14.6/ping-ip-p.json","tests/fixtures/osx-10.14.6/ping-ip-s.json","tests/fixtures/osx-10.14.6/ping-ip.json","tests/fixtures/osx-10.14.6/ping6-hostname-p.json","tests/fixtures/osx-10.14.6/ping6-hostname-s.json","tests/fixtures/osx-10.14.6/ping6-hostname.json","tests/fixtures/osx-10.14.6/ping6-ip-p.json","tests/fixtures/osx-10.14.6/ping6-ip-s.json","tests/fixtures/osx-10.14.6/ping6-ip.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping-hostname-O.json","tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","tests/fixtures/ubuntu-18.04/ping-ip-O.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json"]},"message":"update fixtures for added 'duplicate' fields","epoch":1595369154,"epoch_utc":null},{"commit":"6830062256fbc453f87224f7ab8c10e4494b5a83","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 14:47:25 2020 -0700","stats":{"files_changed":4,"insertions":112,"deletions":24,"files":["docs/parsers/ping.md","jc/parsers/ping.py","tests/fixtures/centos-7.7/ping-ip-dup.out","tests/fixtures/osx-10.14.6/ping-ip-dup.out"]},"message":"add support for duplicate replies","epoch":1595368045,"epoch_utc":null},{"commit":"323072c9827c41c5d74433504b5efceb846cfe09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 09:02:44 2020 -0700","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/ping.md","jc/parsers/ping.py"]},"message":"add source_ip to schema doc","epoch":1595347364,"epoch_utc":null},{"commit":"8719d96bddec80187e7ba3286ba93bfec8465744","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 16:54:43 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"change description","epoch":1595289283,"epoch_utc":null},{"commit":"dd5d318ab5bbb1027dd600fd3b0b6ec9b8adfdc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 16:25:20 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["man/jc.1"]},"message":"version bump and add ping command","epoch":1595287520,"epoch_utc":null},{"commit":"d6dc7f5e65c097895c19000e59e8803a3b350fdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 16:11:18 2020 -0700","stats":{"files_changed":13,"insertions":135,"deletions":29,"files":["tests/fixtures/osx-10.14.6/ping-hostname-p.json","tests/fixtures/osx-10.14.6/ping-hostname-s.json","tests/fixtures/osx-10.14.6/ping-hostname.json","tests/fixtures/osx-10.14.6/ping-ip-p.json","tests/fixtures/osx-10.14.6/ping-ip-s.json","tests/fixtures/osx-10.14.6/ping-ip.json","tests/fixtures/osx-10.14.6/ping6-hostname-p.json","tests/fixtures/osx-10.14.6/ping6-hostname-s.json","tests/fixtures/osx-10.14.6/ping6-hostname.json","tests/fixtures/osx-10.14.6/ping6-ip-p.json","tests/fixtures/osx-10.14.6/ping6-ip-s.json","tests/fixtures/osx-10.14.6/ping6-ip.json","tests/test_ping.py"]},"message":"add osx ping tests","epoch":1595286678,"epoch_utc":null},{"commit":"c203664eb5aafa0afa3101b79e3fd13b3e009ec5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 15:46:27 2020 -0700","stats":{"files_changed":13,"insertions":171,"deletions":9,"files":["tests/fixtures/freebsd12/ping-hostname-p.json","tests/fixtures/freebsd12/ping-hostname-s.json","tests/fixtures/freebsd12/ping-hostname.json","tests/fixtures/freebsd12/ping-ip-p.json","tests/fixtures/freebsd12/ping-ip-s.json","tests/fixtures/freebsd12/ping-ip.json","tests/fixtures/freebsd12/ping6-hostname-p.json","tests/fixtures/freebsd12/ping6-hostname-s.json","tests/fixtures/freebsd12/ping6-hostname.json","tests/fixtures/freebsd12/ping6-ip-p.json","tests/fixtures/freebsd12/ping6-ip-s.json","tests/fixtures/freebsd12/ping6-ip.json","tests/test_ping.py"]},"message":"freebsd ping tests","epoch":1595285187,"epoch_utc":null},{"commit":"19ecf1fa19e9fa0873002baf07fa670b71ed7752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 14:35:41 2020 -0700","stats":{"files_changed":11,"insertions":118,"deletions":0,"files":["tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping-hostname-O-p.json","tests/fixtures/fedora32/ping-hostname-O.json","tests/fixtures/fedora32/ping-ip-O-D.json","tests/fixtures/fedora32/ping-ip-O.json",".../fixtures/fedora32/ping6-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping6-hostname-O-D-p.json","tests/fixtures/fedora32/ping6-hostname-O-p.json","tests/fixtures/fedora32/ping6-ip-O-D-p.json","tests/fixtures/fedora32/ping6-ip-O-p.json","tests/test_ping.py"]},"message":"add Fedora32 tests","epoch":1595280941,"epoch_utc":null},{"commit":"b8deb0426cc23333c0e0a9dc3776d9761d99abb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 13:51:39 2020 -0700","stats":{"files_changed":11,"insertions":119,"deletions":8,"files":[".../ubuntu-18.04/ping-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping-hostname-O.json","tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","tests/fixtures/ubuntu-18.04/ping-ip-O.json",".../ubuntu-18.04/ping6-hostname-O-D-p-s.json",".../ubuntu-18.04/ping6-hostname-O-D-p.json",".../fixtures/ubuntu-18.04/ping6-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json","tests/test_ping.py"]},"message":"add ubuntu ping tests","epoch":1595278299,"epoch_utc":null},{"commit":"3b8371f0208a097cb8a1c026348d3842e6702b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 12:49:05 2020 -0700","stats":{"files_changed":10,"insertions":202,"deletions":0,"files":[".../fixtures/centos-7.7/ping-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping-hostname-O-p.json","tests/fixtures/centos-7.7/ping-hostname-O.json","tests/fixtures/centos-7.7/ping-ip-O-D.json","tests/fixtures/centos-7.7/ping-ip-O.json",".../centos-7.7/ping6-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping6-hostname-O-p.json","tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","tests/fixtures/centos-7.7/ping6-ip-O-p.json","tests/test_ping.py"]},"message":"add centos ping tests","epoch":1595274545,"epoch_utc":null},{"commit":"20bb1cdf396abdb3707b34fa146cbe913f9bbd6f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 11:53:06 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/ping.py"]},"message":"add TypeError to except for None values","epoch":1595271186,"epoch_utc":null},{"commit":"301daa48d0bfc28f97c8e46f028f8c6b875bf34e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 15:30:54 2020 -0700","stats":{"files_changed":2,"insertions":114,"deletions":16,"files":["docs/parsers/ping.md","jc/parsers/ping.py"]},"message":"update documentation","epoch":1595197854,"epoch_utc":null},{"commit":"8421ec88033e02f472e4961d87551a0352663a16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 15:19:47 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ping.py"]},"message":"remove cygwin compatibility","epoch":1595197187,"epoch_utc":null},{"commit":"74211eb0129f6aa655a38ba4d4d8844d81441107","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 15:16:04 2020 -0700","stats":{"files_changed":1,"insertions":82,"deletions":5,"files":["jc/parsers/ping.py"]},"message":"add examples","epoch":1595196964,"epoch_utc":null},{"commit":"60bd42f298f309cbec6d24c9543ea3d51bd73b18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 15:13:52 2020 -0700","stats":{"files_changed":1,"insertions":59,"deletions":11,"files":["jc/parsers/ping.py"]},"message":"add process() logic","epoch":1595196832,"epoch_utc":null},{"commit":"14bdd74526e400997c5bc247ea35ed40799e83ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 14:46:02 2020 -0700","stats":{"files_changed":12,"insertions":100,"deletions":0,"files":["tests/fixtures/freebsd12/ping-hostname-p.out","tests/fixtures/freebsd12/ping-hostname-s.out","tests/fixtures/freebsd12/ping-hostname.out","tests/fixtures/freebsd12/ping-ip-p.out","tests/fixtures/freebsd12/ping-ip-s.out","tests/fixtures/freebsd12/ping-ip.out","tests/fixtures/freebsd12/ping6-hostname-p.out","tests/fixtures/freebsd12/ping6-hostname-s.out","tests/fixtures/freebsd12/ping6-hostname.out","tests/fixtures/freebsd12/ping6-ip-p.out","tests/fixtures/freebsd12/ping6-ip-s.out","tests/fixtures/freebsd12/ping6-ip.out"]},"message":"add ping test fixtures","epoch":1595195162,"epoch_utc":null},{"commit":"fb0f3eda04a4b1dbb81da7d5791cbfe746bfd617","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 14:45:50 2020 -0700","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["tests/fixtures/create_fixtures.sh"]},"message":"add ping commands","epoch":1595195150,"epoch_utc":null},{"commit":"91ee6e6701307363336a39f9e16641465ddd05c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 14:18:56 2020 -0700","stats":{"files_changed":12,"insertions":100,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ping-hostname-p.out","tests/fixtures/osx-10.14.6/ping-hostname-s.out","tests/fixtures/osx-10.14.6/ping-hostname.out","tests/fixtures/osx-10.14.6/ping-ip-p.out","tests/fixtures/osx-10.14.6/ping-ip-s.out","tests/fixtures/osx-10.14.6/ping-ip.out","tests/fixtures/osx-10.14.6/ping6-hostname-p.out","tests/fixtures/osx-10.14.6/ping6-hostname-s.out","tests/fixtures/osx-10.14.6/ping6-hostname.out","tests/fixtures/osx-10.14.6/ping6-ip-p.out","tests/fixtures/osx-10.14.6/ping6-ip-s.out","tests/fixtures/osx-10.14.6/ping6-ip.out"]},"message":"add osx ping test fixtures","epoch":1595193536,"epoch_utc":null},{"commit":"51f4e6927c68a7e2a26954f564d10d316b98a984","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 14:18:40 2020 -0700","stats":{"files_changed":1,"insertions":12,"deletions":3,"files":["jc/parsers/ping.py"]},"message":"add support for pattern in osx/bsd","epoch":1595193520,"epoch_utc":null},{"commit":"94988d86674293faddc6f7e7c82575738d2dc791","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 13:50:40 2020 -0700","stats":{"files_changed":10,"insertions":257,"deletions":0,"files":["tests/fixtures/fedora32/ping-hostname-O-D-p-s.out","tests/fixtures/fedora32/ping-hostname-O-p.out","tests/fixtures/fedora32/ping-hostname-O.out","tests/fixtures/fedora32/ping-ip-O-D.out","tests/fixtures/fedora32/ping-ip-O.out","tests/fixtures/fedora32/ping6-hostname-O-D-p-s.out","tests/fixtures/fedora32/ping6-hostname-O-D-p.out","tests/fixtures/fedora32/ping6-hostname-O-p.out","tests/fixtures/fedora32/ping6-ip-O-D-p.out","tests/fixtures/fedora32/ping6-ip-O-p.out"]},"message":"add fedora ping fixtures","epoch":1595191840,"epoch_utc":null},{"commit":"fe36f5a98cd3ee7753e250b6553e4453d971f929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 12:56:53 2020 -0700","stats":{"files_changed":13,"insertions":318,"deletions":0,"files":["tests/fixtures/centos-7.7/ping-ip-O-D.out","tests/fixtures/centos-7.7/ping-ip-O.out","tests/fixtures/create_fixtures.sh",".../ubuntu-18.04/ping-hostname-O-D-p-s.out","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.out","tests/fixtures/ubuntu-18.04/ping-hostname-O.out","tests/fixtures/ubuntu-18.04/ping-ip-O-D.out","tests/fixtures/ubuntu-18.04/ping-ip-O.out",".../ubuntu-18.04/ping6-hostname-O-D-p-s.out",".../fixtures/ubuntu-18.04/ping6-hostname-O-D-p.out","tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.out","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.out","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.out"]},"message":"add fixtures for ping","epoch":1595188613,"epoch_utc":null},{"commit":"f9eb18b9271b2428dd82f2dc26d3fa0435dad81d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 12:56:34 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/ping.py"]},"message":"change 'request_timeout' field to 'type', fix compatibility, other formatting fixes","epoch":1595188594,"epoch_utc":null},{"commit":"cc60f3674822c644933f286a0364b09d7e2a60b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jul 18 12:35:46 2020 -0700","stats":{"files_changed":3,"insertions":67,"deletions":1,"files":["docgen.sh","docs/parsers/ping.md","jc/cli.py"]},"message":"add ping parser","epoch":1595100946,"epoch_utc":null},{"commit":"604ade791f7bd33b37f64916befba27a2ea08b5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 17 15:57:07 2020 -0700","stats":{"files_changed":8,"insertions":506,"deletions":0,"files":["jc/parsers/ping.py",".../fixtures/centos-7.7/ping-hostname-O-D-p-s.out","tests/fixtures/centos-7.7/ping-hostname-O-p.out","tests/fixtures/centos-7.7/ping-hostname-O.out",".../fixtures/centos-7.7/ping6-hostname-O-D-p-s.out","tests/fixtures/centos-7.7/ping6-hostname-O-p.out","tests/fixtures/centos-7.7/ping6-ip-O-D-p.out","tests/fixtures/centos-7.7/ping6-ip-O-p.out"]},"message":"add ping parser","epoch":1595026627,"epoch_utc":null},{"commit":"690ac52a917200e46eac2feafc9f504f2734301c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 13 07:18:48 2020 -0700","stats":{"files_changed":1,"insertions":261,"deletions":0,"files":["man/jc.1"]},"message":"add man page","epoch":1594649928,"epoch_utc":null},{"commit":"34ed772775f1f02ed148f24a3bfff532bc811607","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jul 11 09:46:47 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1594486007,"epoch_utc":null},{"commit":"d5ab95571f64f55d8194e9e5592ac538bb535229","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jul 11 09:44:08 2020 -0700","stats":{"files_changed":1,"insertions":26,"deletions":11,"files":["tests/test_cli.py"]},"message":"fix tests when using older versions of pygments","epoch":1594485848,"epoch_utc":null},{"commit":"ffb3a0ee5fb30a3f61d6cbedf877ab04acdbf624","merge":"fde0bc8 94b12b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 16:34:56 2020 -0700","message":"Merge pull request #73 from kellyjonbrazil/dev\n\nDev v1.12.0","epoch":1594424096,"epoch_utc":null},{"commit":"94b12b57aaa56170d1f31f4910fd1239f88de137","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 16:30:08 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"spelling","epoch":1594423808,"epoch_utc":null},{"commit":"6d149e84571d5d6dd1d8a1f219ba299de5173779","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 16:25:03 2020 -0700","stats":{"files_changed":2,"insertions":8,"deletions":1,"files":["changelog.txt","setup.py"]},"message":"version bump","epoch":1594423503,"epoch_utc":null},{"commit":"1ad89c90d890039b817f65b2635db1b5e849a9e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 15:58:02 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add pacman","epoch":1594421882,"epoch_utc":null},{"commit":"fb71c7b020bc1eda9484595f30b0200a4f59aa45","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 15:49:35 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_cli.py"]},"message":"function name spelling","epoch":1594421375,"epoch_utc":null},{"commit":"28ed17ad3bce866e5dc0179ef5de43380ac6ace1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 15:45:21 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_cli.py"]},"message":"add parser_count test to test_cli_about_jc","epoch":1594421121,"epoch_utc":null},{"commit":"0c2a4e2bf71dca50d4a9bb27ca99944909c022ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 15:35:05 2020 -0700","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["tests/test_cli.py"]},"message":"add cli tests","epoch":1594420505,"epoch_utc":null},{"commit":"62bec30de2f1a303f2ec411d89f7f9f9c6d1abaf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 14:44:50 2020 -0700","stats":{"files_changed":1,"insertions":20,"deletions":0,"files":["tests/test_cli.py"]},"message":"add json_out tests","epoch":1594417490,"epoch_utc":null},{"commit":"3fced77e4e258dbf7db94a313e599c830a597b49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 12:23:48 2020 -0700","stats":{"files_changed":1,"insertions":98,"deletions":1,"files":["tests/test_cli.py"]},"message":"add set_env_colors tests","epoch":1594409028,"epoch_utc":null},{"commit":"a09d1d8b7687912610598c88d172733d5e29b1ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 12:23:25 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":6,"files":["jc/cli.py"]},"message":"move environment variable assignment to main() to simplify tests","epoch":1594409005,"epoch_utc":null},{"commit":"8f4243fbd8d70ca9fd019e984c564e37c81e07db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 10:54:34 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1594403674,"epoch_utc":null},{"commit":"47aaf20549ea238443427e69d5841d6996b7afab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 10:50:51 2020 -0700","stats":{"files_changed":1,"insertions":17,"deletions":0,"files":["README.md"]},"message":"add sysctl command parser","epoch":1594403451,"epoch_utc":null},{"commit":"0c5289ea50e4d3d35e80147b4cad32434c19a2a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 10:47:23 2020 -0700","stats":{"files_changed":3,"insertions":72,"deletions":2,"files":["tests/fixtures/freebsd12/sysctl-a.json","tests/fixtures/osx-10.14.6/sysctl-a.json","tests/test_sysctl.py"]},"message":"add sysctl tests","epoch":1594403243,"epoch_utc":null},{"commit":"3e53323514906fb84abfaeed0c2ee1fd9090ad8d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 09:58:56 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/sysctl.py"]},"message":"don't filter out empty lines","epoch":1594400336,"epoch_utc":null},{"commit":"a5ee9861b9b9b479aee59ea5b1d75f20d7c3c8e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 09:28:32 2020 -0700","stats":{"files_changed":3,"insertions":3785,"deletions":1,"files":["tests/fixtures/freebsd12/sysctl-a.json","tests/fixtures/freebsd12/sysctl-a.out","tests/fixtures/osx-10.14.6/sysctl-a.json"]},"message":"update fixtures","epoch":1594398512,"epoch_utc":null},{"commit":"feb8ca76545cba4fd0927273ddf90a77df994006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 09:28:20 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/sysctl.md"]},"message":"spelling","epoch":1594398500,"epoch_utc":null},{"commit":"a7abe4473b90c512466db9ae98cfac585689fe2a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 09:03:04 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/sysctl.py"]},"message":"spelling","epoch":1594396984,"epoch_utc":null},{"commit":"780b9b61dec3e142e46c9a82146d2af4e1144123","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 08:30:31 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/sysctl.py"]},"message":"specify IndexError exception in try/except block","epoch":1594395031,"epoch_utc":null},{"commit":"19ace36ffa659bedf0ba2e43572c9e253592b2e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 08:21:30 2020 -0700","stats":{"files_changed":4,"insertions":2167,"deletions":0,"files":["tests/fixtures/osx-10.14.6/sysctl-a.json","tests/fixtures/osx-10.14.6/sysctl-a.out","tests/fixtures/ubuntu-18.04/sysctl-a.json","tests/fixtures/ubuntu-18.04/sysctl-a.out"]},"message":"add fixtures","epoch":1594394490,"epoch_utc":null},{"commit":"5fff8afc9f47f8cc6db8ed3613b90b5cdc683b43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 08:21:15 2020 -0700","stats":{"files_changed":1,"insertions":33,"deletions":11,"files":["jc/parsers/sysctl.py"]},"message":"add fixes for freebsd where values can be on separate lines under the key","epoch":1594394475,"epoch_utc":null},{"commit":"4ad230c9279c5eb6c8ed6baf7254b8e9328e5af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 16:35:36 2020 -0700","stats":{"files_changed":4,"insertions":929,"deletions":14,"files":["docs/parsers/sysctl.md","jc/parsers/sysctl.py","tests/fixtures/centos-7.7/sysctl-a.json","tests/fixtures/centos-7.7/sysctl-a.out"]},"message":"doc update and add test fixtures","epoch":1594337736,"epoch_utc":null},{"commit":"dd98eb1ec8f451eb87a5094e76a7f758dee3fc69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 16:25:41 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":7,"files":["jc/parsers/sysctl.py"]},"message":"append duplicate key values to original key instead of adding unique keys","epoch":1594337141,"epoch_utc":null},{"commit":"c6baf42e72b4f41ed511e7db943297d03a39c0d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 16:18:33 2020 -0700","stats":{"files_changed":3,"insertions":94,"deletions":7,"files":["docgen.sh","docs/parsers/sysctl.md","jc/parsers/sysctl.py"]},"message":"doc updates","epoch":1594336713,"epoch_utc":null},{"commit":"e2bac97d563e5ef771ccd8ed1e5c42cbf588b120","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 14:51:15 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["jc/parsers/sysctl.py"]},"message":"fix for multiple identical keys in sysctl output","epoch":1594331475,"epoch_utc":null},{"commit":"d112ee94d0ec534828c8508d0fb833b768975990","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 14:26:35 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":4,"files":["jc/parsers/sysctl.py"]},"message":"use try/except and add support for floats in process()","epoch":1594329995,"epoch_utc":null},{"commit":"27b21b2fafab912f21b88b66c7f817cbce155765","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 11:11:29 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":7,"files":["jc/cli.py"]},"message":"formatting and docstring updates","epoch":1594318289,"epoch_utc":null},{"commit":"8c96d5cd20448a4f7f9736c4d489d6ecc3068ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 10:59:36 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["requirements.txt"]},"message":"reduce pygments version requirement","epoch":1594317576,"epoch_utc":null},{"commit":"c29ed3fd695f725005333db5e6e2cd844bb4ca14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 10:54:49 2020 -0700","stats":{"files_changed":1,"insertions":14,"deletions":13,"files":["jc/cli.py"]},"message":"formatting of quotation marks and docstrings","epoch":1594317289,"epoch_utc":null},{"commit":"cedf603f121636bdfa95432059c3c275c3ea3e9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 09:59:00 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/cli.py"]},"message":"minor formatting","epoch":1594313940,"epoch_utc":null},{"commit":"279161c36f288c27a9789054ae372fe8ceb58a94","merge":"bc7116c ce0b43d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 09:48:58 2020 -0700","message":"Merge pull request #72 from duelafn/pygments-2.3\n\nSupport older pygments","epoch":1594313338,"epoch_utc":null},{"commit":"ce0b43d919f07d96d1b94e9d14d03e935e80011d","author":"Dean Serenevy","author_email":"dean@serenevy.net","date":"Thu Jul 9 12:44:41 2020 -0400","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"]},"message":"Remove dependency on 3rd party packaging library","epoch":1594323881,"epoch_utc":null},{"commit":"ddafa5bf06066bab8e9587be902d6752fcf51605","author":"Dean Serenevy","author_email":"dean@serenevy.net","date":"Thu Jul 9 11:27:01 2020 -0400","stats":{"files_changed":2,"insertions":47,"deletions":7,"files":["jc/cli.py","setup.py"]},"message":"Support older pygments","epoch":1594319221,"epoch_utc":null},{"commit":"bc7116c31bacf3159aef775fd0e615187420b010","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 08:30:10 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":8,"files":["jc/cli.py"]},"message":"fix JC_COLORS env bug and simplify set_env_colors()","epoch":1594308610,"epoch_utc":null},{"commit":"53b709272115e769dac905296fa3b000c1cdd66a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 8 16:40:28 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":11,"files":["jc/cli.py"]},"message":"remove side-effects from functions and print in main()","epoch":1594251628,"epoch_utc":null},{"commit":"beb9174b1b35937ae1fb99778369ae643a8f1005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 8 15:42:06 2020 -0700","stats":{"files_changed":1,"insertions":123,"deletions":0,"files":["jc/parsers/sysctl.py"]},"message":"add sysctl parser","epoch":1594248126,"epoch_utc":null},{"commit":"aea41ed341c8d53cc07c35e8044e8f816ddd2fed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 8 15:41:46 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/cli.py"]},"message":"move verbose_debug enable earlier in code to catch more issues. add sysctl and version bump","epoch":1594248106,"epoch_utc":null},{"commit":"d789494cb1f691aa352419aaefc692f654477177","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 8 05:59:19 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/tracebackplus.py"]},"message":"change type check to use isinstance","epoch":1594213159,"epoch_utc":null},{"commit":"608e7b4cff081f92177e4151ffa1a91a4a6895ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 6 10:52:12 2020 -0700","stats":{"files_changed":1,"insertions":61,"deletions":0,"files":["jc/tracebackplus.py"]},"message":"add license info","epoch":1594057932,"epoch_utc":null},{"commit":"4ee199c02a78c2707c5d1427d7c8fae56df5671c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 6 10:41:01 2020 -0700","stats":{"files_changed":2,"insertions":189,"deletions":3,"files":["jc/cli.py","jc/tracebackplus.py"]},"message":"use tracebackplus instead of cgitb since cgitb is depricated","epoch":1594057261,"epoch_utc":null},{"commit":"fbf47d408501dadda4671fb530f5e11859e85d53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 1 13:28:58 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add arch linux","epoch":1593635338,"epoch_utc":null},{"commit":"5a238e4b4204f0552327534ef798c28d3ad4f578","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 1 09:11:32 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"remove updates-testing from fedora command","epoch":1593619892,"epoch_utc":null},{"commit":"f852b8246a8f9e5f7d9144fed3a0daa4eddfe035","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 11:50:37 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/utils.py"]},"message":"wrap warning message","epoch":1593543037,"epoch_utc":null},{"commit":"88140d929a500ee78f807862c4912c399df2a460","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 11:37:33 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"wrap error message in code","epoch":1593542253,"epoch_utc":null},{"commit":"45f726824027af49c437b6e81e4700f7098af320","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 11:34:08 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"add -dd to error message","epoch":1593542048,"epoch_utc":null},{"commit":"3a3c8e4d4a77135eaee5cb30c3107a4531c300ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 11:31:08 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/cli.py"]},"message":"move verbose_debug under debug check","epoch":1593541868,"epoch_utc":null},{"commit":"c1ac183a0472e93226c9ee1905f56c5183e3721f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 11:26:09 2020 -0700","stats":{"files_changed":1,"insertions":15,"deletions":22,"files":["jc/cli.py"]},"message":"simplify debug option","epoch":1593541569,"epoch_utc":null},{"commit":"18bb779ee5cd5821764b03173f16e922f753c64d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 09:39:05 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"formatting: double quotes to single quotes","epoch":1593535145,"epoch_utc":null},{"commit":"8b6612fe7911ab9e0bf8d29be60865d3b8aa3fd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 07:56:34 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/cli.py"]},"message":"move JC_COLORS parsing error message","epoch":1593528994,"epoch_utc":null},{"commit":"fde0bc853415418e01616861ace5048770bd97f8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jun 27 18:53:19 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":34,"files":["README.md"]},"message":"improve package install info","epoch":1593309199,"epoch_utc":null},{"commit":"e661a78939ff067b8a61f08301c178dd10a344ab","merge":"b969751 847e346","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jun 27 18:43:02 2020 -0700","message":"Merge pull request #71 from wigust/guix\n\nadd guix package info","epoch":1593308582,"epoch_utc":null},{"commit":"847e346602789bf58e3515319e9d080dfb897fc9","author":"Oleg Pykhalov","author_email":"go.wigust@gmail.com","date":"Sat Jun 27 12:58:59 2020 +0300","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]},"message":"add guix package info","epoch":1593287939,"epoch_utc":null},{"commit":"b9697516887c61f08d8d7b1dc9130350e5bdba9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 26 09:53:57 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]},"message":"add other references","epoch":1593190437,"epoch_utc":null},{"commit":"ad6f2ba03a293a7f55e456fa5f5b55ee3cbcd4ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 21:16:52 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1593145012,"epoch_utc":null},{"commit":"63c6a5edc0e9001b143595fd8b96f1b4a1377a3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 21:12:30 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"formatting","epoch":1593144750,"epoch_utc":null},{"commit":"9f4cf9dd5efe94adfff0961fdb73097ca27c5463","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 21:11:21 2020 -0700","stats":{"files_changed":1,"insertions":197,"deletions":67,"files":["README.md"]},"message":"formatting","epoch":1593144681,"epoch_utc":null},{"commit":"51331b6dc01eee00847fa4be549ffde365373a01","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 13:01:10 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["README.md"]},"message":"formatting","epoch":1593115270,"epoch_utc":null},{"commit":"efb6761033319644bf9cdae6288ff5609f6482ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 12:59:56 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1593115196,"epoch_utc":null},{"commit":"6a4f737a0f1c322bebccf69809d9816fc770c5ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 12:56:06 2020 -0700","stats":{"files_changed":1,"insertions":88,"deletions":115,"files":["README.md"]},"message":"update json syntax highlighting","epoch":1593114966,"epoch_utc":null},{"commit":"be6864b778ab721bcba5fc3221576153be7b2ed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 12:28:23 2020 -0700","stats":{"files_changed":1,"insertions":26,"deletions":26,"files":["README.md"]},"message":"add syntax highlighting tags","epoch":1593113303,"epoch_utc":null},{"commit":"de3b91a36cfcaf565b26b1da42f1e87835da4dc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 07:38:39 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add -dd option","epoch":1593095919,"epoch_utc":null},{"commit":"ef5482c3b5afa0ee8e85851bebab1c104cb59936","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 07:29:28 2020 -0700","stats":{"files_changed":3,"insertions":15,"deletions":7,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"add verbose debug option","epoch":1593095368,"epoch_utc":null},{"commit":"d20b795137036f8b889eb231cb4f14b756ec6479","merge":"69018cd 8a13406","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 11:28:23 2020 -0700","message":"Merge pull request #70 from kellyjonbrazil/dev\n\nDev v1.11.7","epoch":1592850503,"epoch_utc":null},{"commit":"8a134065dff429551449c1ea16a36d745fdab580","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 11:23:37 2020 -0700","stats":{"files_changed":12,"insertions":12,"deletions":12,"files":["tests/fixtures/centos-7.7/iptables-filter-line-numbers.json","tests/fixtures/centos-7.7/iptables-filter-nv.json","tests/fixtures/centos-7.7/iptables-filter.json","tests/fixtures/centos-7.7/iptables-mangle.json","tests/fixtures/centos-7.7/iptables-nat.json","tests/fixtures/centos-7.7/iptables-raw.json","tests/fixtures/ubuntu-18.04/iptables-filter-line-numbers.json","tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","tests/fixtures/ubuntu-18.04/iptables-filter.json","tests/fixtures/ubuntu-18.04/iptables-mangle.json","tests/fixtures/ubuntu-18.04/iptables-nat.json","tests/fixtures/ubuntu-18.04/iptables-raw.json"]},"message":"update fixtures for last chain fix","epoch":1592850217,"epoch_utc":null},{"commit":"22aee1bfa40ed1d3c4df28cd934ef0edfc5c458c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 11:23:15 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1592850195,"epoch_utc":null},{"commit":"b282820fd67dcc96c058198f97b066e7b402d1f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 11:09:09 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/iptables.py"]},"message":"fix to include the final chain in output","epoch":1592849349,"epoch_utc":null},{"commit":"3ee098306daf903687cb0febf92773a81e216111","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 10:48:51 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"]},"message":"version bump","epoch":1592848131,"epoch_utc":null},{"commit":"09e8f379a64b3b37bb99b4291c10aa4a5cdedea4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 10:47:34 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":11,"files":["jc/parsers/iptables.py"]},"message":"iptables code optimizations","epoch":1592848054,"epoch_utc":null},{"commit":"69018cdb3a77fcdcb5648e3b89933148c55a6412","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 14 17:39:14 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"fix date","epoch":1592181554,"epoch_utc":null},{"commit":"d0d7254c6acc7be4341618d231a5b166f640b287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 14 17:23:10 2020 -0700","stats":{"files_changed":2,"insertions":26,"deletions":0,"files":["docs/utils.md","jc/utils.py"]},"message":"add docstring","epoch":1592180590,"epoch_utc":null},{"commit":"cc0f0971d76b6f3dec8d989e83f5676db8f2c6d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 14 17:17:40 2020 -0700","stats":{"files_changed":56,"insertions":476,"deletions":439,"files":["changelog.txt","jc/cli.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/utils.py","setup.py"]},"message":"Improve and standardize empty data check for all parsers","epoch":1592180260,"epoch_utc":null},{"commit":"2af61730f0f5b9bc6f1f4c5d9d808ff6ccb0faeb","merge":"07b179c 83f41b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 12 12:34:34 2020 -0700","message":"Merge pull request #68 from kellyjonbrazil/dev\n\nDev v1.11.5","epoch":1591990474,"epoch_utc":null},{"commit":"83f41b83dc01c462c6a2295e9fc56ad42a3b62f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 12 12:30:19 2020 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1591990219,"epoch_utc":null},{"commit":"1fb84fce88e0306c26a5771fa4c6dc14a21409a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 12 12:25:07 2020 -0700","stats":{"files_changed":16,"insertions":137,"deletions":67,"files":["changelog.txt","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/xml.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py","tests/test_timedatectl.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py","tests/test_who.py","tests/test_xml.py","tests/test_yaml.py"]},"message":"fix for no data","epoch":1591989907,"epoch_utc":null},{"commit":"a8837e12447c52dbe438b19c07777b9b4a22081c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 12 07:57:40 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"remove --upgrade from pip install","epoch":1591973860,"epoch_utc":null},{"commit":"04d2eec5581998d1a80e762b670af76c92111065","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 11 17:59:06 2020 -0700","stats":{"files_changed":6,"insertions":56,"deletions":30,"files":["changelog.txt","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","tests/test_stat.py","tests/test_systemctl.py","tests/test_systemctl_lj.py"]},"message":"fix for no data","epoch":1591923546,"epoch_utc":null},{"commit":"1b57ec92f052ddc8959540511512190a539262b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 11 17:52:03 2020 -0700","stats":{"files_changed":21,"insertions":152,"deletions":68,"files":["changelog.txt","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/pip_list.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","tests/fixtures/centos-7.7/ss-sudo-a.json","tests/fixtures/ubuntu-18.04/ss-sudo-a.json","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_ntpq.py","tests/test_passwd.py","tests/test_pip_list.py","tests/test_pip_show.py","tests/test_ps.py","tests/test_route.py","tests/test_shadow.py","tests/test_ss.py"]},"message":"fix for no data","epoch":1591923123,"epoch_utc":null},{"commit":"4d8859540417e99e273fda2cea959240f3c37ea3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 11 17:16:11 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/df.py"]},"message":"enhance empty data check","epoch":1591920971,"epoch_utc":null},{"commit":"52b1272a3aab09b5a8c4a277fbf9975a1b8b6921","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 11 17:13:45 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/blkid.py"]},"message":"enhance empty data check","epoch":1591920825,"epoch_utc":null},{"commit":"d2ccad6a83138fbf6eb863634fd354dc6c3fa238","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 11 17:09:51 2020 -0700","stats":{"files_changed":4,"insertions":33,"deletions":15,"files":["jc/parsers/lsblk.py","jc/parsers/lsmod.py","tests/test_lsblk.py","tests/test_lsmod.py"]},"message":"fix for no data","epoch":1591920591,"epoch_utc":null},{"commit":"cad6dde4ac66cf970a7f52d8e7958ea35c083629","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:54:06 2020 -0700","stats":{"files_changed":10,"insertions":60,"deletions":0,"files":["tests/test_group.py","tests/test_gshadow.py","tests/test_history.py","tests/test_hosts.py","tests/test_id.py","tests/test_ifconfig.py","tests/test_ini.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_last.py"]},"message":"fix for no data","epoch":1591836846,"epoch_utc":null},{"commit":"06811c3539b0d871e13e9b8d3b51f731d06fd2ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:41:54 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_fstab.py"]},"message":"add test for no data","epoch":1591836114,"epoch_utc":null},{"commit":"0cb23c2b21f464082609409261de8e95eb1b0d55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:40:18 2020 -0700","stats":{"files_changed":3,"insertions":17,"deletions":7,"files":["changelog.txt","jc/parsers/free.py","tests/test_free.py"]},"message":"add fix for no data","epoch":1591836018,"epoch_utc":null},{"commit":"ac4688dca22334385ec2c87027f2f14f9ca93ce4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:35:40 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_file.py"]},"message":"add test for no data","epoch":1591835740,"epoch_utc":null},{"commit":"326c3b4670a0e47cbe2988b38fb1c1b26a4db890","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:34:22 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_env.py"]},"message":"add test for no data","epoch":1591835662,"epoch_utc":null},{"commit":"9b29d0c2688eda2e4707aeba693ed14fa433a706","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:32:39 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_du.py"]},"message":"add test for no data","epoch":1591835559,"epoch_utc":null},{"commit":"e0013c38710b4ecf3a588a16d1d908effc23b485","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:31:14 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["tests/test_dmidecode.py"]},"message":"add test for no data","epoch":1591835474,"epoch_utc":null},{"commit":"a75744075b0628bdb711d8a929a759b4b4067edb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:29:41 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_dig.py"]},"message":"add no data test","epoch":1591835381,"epoch_utc":null},{"commit":"525aec1a02380f17ab7827434616f981f7457bd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:27:46 2020 -0700","stats":{"files_changed":3,"insertions":16,"deletions":7,"files":["changelog.txt","jc/parsers/df.py","tests/test_df.py"]},"message":"fix for no data","epoch":1591835266,"epoch_utc":null},{"commit":"0bf9a7a072a80e10a29c6bb3943b107352dc1d45","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:22:59 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_csv.py"]},"message":"add test for no data","epoch":1591834979,"epoch_utc":null},{"commit":"d8f2f4c95bc699386b9fe93d10e13637875a1dcf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:20:09 2020 -0700","stats":{"files_changed":5,"insertions":96,"deletions":80,"files":["changelog.txt","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/test_crontab.py","tests/test_crontab_u.py"]},"message":"fix for no data","epoch":1591834809,"epoch_utc":null},{"commit":"35d733b44f3705bed3dd8ce340379470f199f772","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:10:53 2020 -0700","stats":{"files_changed":5,"insertions":70,"deletions":60,"files":["changelog.txt","jc/parsers/arp.py","jc/parsers/blkid.py","tests/test_arp.py","tests/test_blkid.py"]},"message":"fix for no data","epoch":1591834253,"epoch_utc":null},{"commit":"9179b4175c5063bed14ecb96ba24c517920c0d94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 16:40:11 2020 -0700","stats":{"files_changed":3,"insertions":16,"deletions":0,"files":["changelog.txt","tests/test_airport.py","tests/test_airport_s.py"]},"message":"add nodata tests","epoch":1591832411,"epoch_utc":null},{"commit":"bb07d78c78ff5c5b2ee4d2086ffc6dd5ebedf0fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 16:39:49 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":8,"files":["jc/parsers/airport_s.py"]},"message":"add nodata fix","epoch":1591832389,"epoch_utc":null},{"commit":"07b179cd7f8853ff6aca0b27a703e198c158ca72","merge":"12a80e7 054422d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 06:07:42 2020 -0700","message":"Merge pull request #67 from kellyjonbrazil/Dev\n\nDev v1.11.4","epoch":1591794462,"epoch_utc":null},{"commit":"054422d8373e7b8def18ddabd447062cb9cc3137","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 06:04:50 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_ls.py"]},"message":"add test for empty directory","epoch":1591794290,"epoch_utc":null},{"commit":"3e052d18102e98a09cbba21866855691eaccc216","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 05:53:20 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1591793600,"epoch_utc":null},{"commit":"c8e72805cf9def478b56c925f4afcc0ece1daac0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 05:51:12 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":10,"files":["jc/parsers/ls.py"]},"message":"fix error on empty directory","epoch":1591793472,"epoch_utc":null},{"commit":"12a80e7db0f6c7d536674ad8d34e26bba9a1f1f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 9 15:13:53 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":2,"files":["README.md"]},"message":"add fedora package info","epoch":1591740833,"epoch_utc":null},{"commit":"ee7ff9a09d3373f60ae1645376ccc0057803147e","merge":"346a14c f6478fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 9 11:22:39 2020 -0700","message":"Merge pull request #66 from kellyjonbrazil/dev\n\nDev v1.11.3","epoch":1591726959,"epoch_utc":null},{"commit":"f6478fb636ead8d1e53e4a88d59e55222df37a8f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 9 11:18:47 2020 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1591726727,"epoch_utc":null},{"commit":"811a0b0495819925199d70db266066197cc6824e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 8 10:54:42 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add info regarding the local parser plugin files","epoch":1591638882,"epoch_utc":null},{"commit":"aeb48edf727f23cc4f8fd9b760cfb69f03098278","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 8 10:48:58 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"use $LOCALAPPDATA variable for windows","epoch":1591638538,"epoch_utc":null},{"commit":"b1e94f0df7041bcae97455508f423178aef9d61d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 8 10:44:09 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"heading formatting","epoch":1591638249,"epoch_utc":null},{"commit":"60050e3c0fe34980f7db5b8bd46430f953f0c3a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 8 10:42:45 2020 -0700","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["README.md"]},"message":"fix linux/unix directory and add note about the XDG specification followed","epoch":1591638165,"epoch_utc":null},{"commit":"39ef09aa5b0d43b5128299511afe80336aa38203","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 13:30:22 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"]},"message":"add local parser plugin feature","epoch":1591561822,"epoch_utc":null},{"commit":"8377d4311611c242e16eaebe66dafac9529150d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 13:26:03 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1591561563,"epoch_utc":null},{"commit":"54e4c447ab34ae54c73c92df40f1b4ca6ffb2277","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:52:16 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"]},"message":"clean up formatting","epoch":1591559536,"epoch_utc":null},{"commit":"937a9fa9cf2ede8e686ba853989f33e4a483a0ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:41:50 2020 -0700","stats":{"files_changed":4,"insertions":613,"deletions":3,"files":["jc/appdirs.py","jc/cli.py","requirements.txt","setup.py"]},"message":"vendorize appdirs module","epoch":1591558910,"epoch_utc":null},{"commit":"808ff6cf0e784cf0c2d523ff2e01197cb6e88c82","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:29:10 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["README.md"]},"message":"more acknowledgments updates","epoch":1591558150,"epoch_utc":null},{"commit":"7f5c649a95a871c3cd8d48731a6d26dcba6f725b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:23:28 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update acknowledgments","epoch":1591557808,"epoch_utc":null},{"commit":"b72727dec995de1ca5f68ee17a710b086c87d612","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:13:40 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":2,"files":["README.md"]},"message":"update custom parsers info","epoch":1591557220,"epoch_utc":null},{"commit":"3fc88bfb334143b68a9cb78d4034f33e7c0bcf76","merge":"346a14c 9f2279d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:04:44 2020 -0700","message":"Merge pull request #65 from duelafn/local-parsers\n\nLoad custom parsers from /jc/jcparsers","epoch":1591556684,"epoch_utc":null},{"commit":"9f2279d5867eb89d4b4b7b4ffca290166ec97c48","author":"Dean Serenevy","author_email":"dean@serenevy.net","date":"Sat Jun 6 14:30:40 2020 -0400","stats":{"files_changed":4,"insertions":29,"deletions":2,"files":["README.md","jc/cli.py","requirements.txt","setup.py"]},"message":"Load custom parsers from /jc/jcparsers","epoch":1591479040,"epoch_utc":null},{"commit":"346a14cb9bb0d762fc3fa366ad97e5ff85f3992a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:44:14 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"change osx_device to unix_device","epoch":1590896654,"epoch_utc":null},{"commit":"dac00d17ff9f3d2bb959697b6e567015bfc2702b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:33:50 2020 -0700","stats":{"files_changed":3,"insertions":17,"deletions":0,"files":["tests/fixtures/nixos/route-ee.json","tests/fixtures/nixos/route-ee.out","tests/test_route.py"]},"message":"add nixos test","epoch":1590896030,"epoch_utc":null},{"commit":"9ca7cd40601b97829e8f88071fdfb928d939f7e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:33:39 2020 -0700","stats":{"files_changed":1,"insertions":17,"deletions":34,"files":["jc/parsers/route.py"]},"message":"update docs","epoch":1590896019,"epoch_utc":null},{"commit":"aa31628970b12295a41dff20e829fcce9f8a4d07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:33:00 2020 -0700","stats":{"files_changed":5,"insertions":70,"deletions":63,"files":["README.md","docs/parsers/netstat.md","docs/parsers/route.md","docs/parsers/stat.md","jc/parsers/netstat.py"]},"message":"update docs","epoch":1590895980,"epoch_utc":null},{"commit":"bed694fcf5c8c31bbd4f3e88759fe7ab82382d24","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:13:21 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump","epoch":1590894801,"epoch_utc":null},{"commit":"4b4af69fa184896ec15b5be7dc8416f36f921d5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:12:51 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"fix date","epoch":1590894771,"epoch_utc":null},{"commit":"9d96190a5b19e8d71c3ac66eb0303d269dd4ce5d","merge":"96df396 fa44d48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:08:32 2020 -0700","message":"Merge pull request #64 from kellyjonbrazil/dev\n\nDev v1.11.2","epoch":1590894512,"epoch_utc":null},{"commit":"fa44d48c094a55e499c2c780d109bf277736b42e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 19:50:38 2020 -0700","stats":{"files_changed":6,"insertions":129,"deletions":7,"files":["changelog.txt","jc/parsers/stat.py","tests/fixtures/freebsd12/stat.json","tests/fixtures/freebsd12/stat.out","tests/fixtures/osx-10.14.6/stat.json","tests/test_stat.py"]},"message":"freebsd fixes, tests, and fixtures","epoch":1590893438,"epoch_utc":null},{"commit":"4ef961c2788c935b1fea1c9777b976e7b89e7367","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 19:18:01 2020 -0700","stats":{"files_changed":3,"insertions":20,"deletions":0,"files":["tests/fixtures/freebsd12/ntpq-p.json","tests/fixtures/freebsd12/ntpq-p.out","tests/test_ntpq.py"]},"message":"add freebsd test and fixtures","epoch":1590891481,"epoch_utc":null},{"commit":"292a837d5c47165ccb155f079b0a114b5c17a98e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 18:54:09 2020 -0700","stats":{"files_changed":3,"insertions":22,"deletions":0,"files":["tests/fixtures/freebsd12/last.json","tests/fixtures/freebsd12/last.out","tests/test_last.py"]},"message":"add tests and fixtures for freebsd12","epoch":1590890049,"epoch_utc":null},{"commit":"aa7b915d847dbd29d2c09b2cc40b847e37174ffb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 18:53:46 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/last.py"]},"message":"version bump","epoch":1590890026,"epoch_utc":null},{"commit":"c46fe73236b912d2ee89dfb36ff259fe95fd0479","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 18:53:35 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"add last fixes for freebsd","epoch":1590890015,"epoch_utc":null},{"commit":"039b2c129cbe79d2d23b1194b043d8b730609956","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 18:42:26 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":1,"files":["jc/parsers/last.py"]},"message":"freebsd fixes","epoch":1590889346,"epoch_utc":null},{"commit":"8f2e5e4808b30c658a4cb87125639e4d7d6c15d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 17:46:09 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"fix compatible logic","epoch":1590885969,"epoch_utc":null},{"commit":"c4da8e4f78e6b4aaa4aff76ae042be9aaec832a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 17:05:41 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":3,"files":["README.md"]},"message":"add nixos and freebsd to tested. update new arp fields","epoch":1590883541,"epoch_utc":null},{"commit":"bcab9078a4c2bfd6ae4dca9448b577d9ed0fc01c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 17:02:09 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"add w parser fix","epoch":1590883329,"epoch_utc":null},{"commit":"b3c6c1ea925bf7cd76368f5074fb8af52a844522","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 17:01:59 2020 -0700","stats":{"files_changed":4,"insertions":29,"deletions":5,"files":["jc/parsers/w.py","tests/fixtures/nixos/w.json","tests/fixtures/nixos/w.out","tests/test_w.py"]},"message":"strip whitespace in string fields and add tests","epoch":1590883319,"epoch_utc":null},{"commit":"a3af8662bd491e344c93d24afabd23e90efd8086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 16:26:07 2020 -0700","stats":{"files_changed":3,"insertions":205,"deletions":3,"files":["tests/fixtures/osx-10.11.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a2.json"]},"message":"add permanent field","epoch":1590881167,"epoch_utc":null},{"commit":"35940d0bc80bf61b11f40b1e1043835f26eb391c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 16:25:53 2020 -0700","stats":{"files_changed":6,"insertions":59,"deletions":4,"files":["changelog.txt","docs/parsers/arp.md","jc/parsers/arp.py","tests/fixtures/freebsd12/arp-a.json","tests/fixtures/freebsd12/arp-a.out","tests/test_arp.py"]},"message":"add freebsd permanent and expires fields","epoch":1590881153,"epoch_utc":null},{"commit":"26994cdcb7148d2c9d1701bca9541d247356260b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:51:54 2020 -0700","stats":{"files_changed":8,"insertions":115,"deletions":85,"files":["docs/parsers/df.md","docs/parsers/fstab.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/route.md","docs/parsers/stat.md","docs/parsers/uname.md"]},"message":"add freebsd compatibility info","epoch":1590879114,"epoch_utc":null},{"commit":"017159a829691cb6a7174f123d024eb252179b75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:51:06 2020 -0700","stats":{"files_changed":15,"insertions":221,"deletions":0,"files":["tests/fixtures/freebsd12/netstat-Aa.json","tests/fixtures/freebsd12/netstat-AaT.json","tests/fixtures/freebsd12/netstat-AaT.out","tests/fixtures/freebsd12/netstat-AanP.json","tests/fixtures/freebsd12/netstat-AanP.out","tests/fixtures/freebsd12/netstat-Aax.json","tests/fixtures/freebsd12/netstat-Aax.out","tests/fixtures/freebsd12/netstat-aT.json","tests/fixtures/freebsd12/netstat-aT.out","tests/fixtures/freebsd12/netstat-an.json","tests/fixtures/freebsd12/netstat-i.json","tests/fixtures/freebsd12/netstat-ib.json","tests/fixtures/freebsd12/netstat-ib.out","tests/fixtures/freebsd12/netstat-r.json","tests/test_netstat.py"]},"message":"add freebsd nestat tests and fixtures","epoch":1590879066,"epoch_utc":null},{"commit":"b4e9c85e08d199dad67f03c7603194278a022696","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:50:45 2020 -0700","stats":{"files_changed":1,"insertions":12,"deletions":0,"files":["jc/parsers/netstat_freebsd_osx.py"]},"message":"fixup -T freebsd output and add whitespace stripping to parse_post","epoch":1590879045,"epoch_utc":null},{"commit":"189146cd84cfad262f2b2601bb0cb4b9dde2587e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:50:07 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/netstat.py"]},"message":"add more ints. remove whitespace strip code and move to freebsd_osx module","epoch":1590879007,"epoch_utc":null},{"commit":"af34153ffab10ca1ad7f44736d379d91ae43c813","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:48:56 2020 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["changelog.txt","jc/cli.py"]},"message":"version bump","epoch":1590878936,"epoch_utc":null},{"commit":"bf2ff3ffbb639446779b1f04f2997707d99c0a1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:48:29 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":1,"files":["jc/utils.py"]},"message":"fix compatibility search for platform names that append the version number (e.g. freebsd12)","epoch":1590878909,"epoch_utc":null},{"commit":"6423c9efd69e938af38934a97ca6b65009e8f07e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 15:48:51 2020 -0700","stats":{"files_changed":1,"insertions":34,"deletions":5,"files":["jc/parsers/netstat.py"]},"message":"integer and float updates","epoch":1590792531,"epoch_utc":null},{"commit":"58ab0d4ece7f006ce9431afb9e0fecbe60930be7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 15:14:44 2020 -0700","stats":{"files_changed":4,"insertions":12,"deletions":4,"files":["changelog.txt","jc/parsers/netstat.py","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json"]},"message":"strip whitespace from string fields","epoch":1590790484,"epoch_utc":null},{"commit":"83a738bf4d756036d6269b9153220d7f1018ac9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 14:16:11 2020 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json"]},"message":"update fixtures for osx_flags and osx_inode name change to unix_flags and unix_inode","epoch":1590786971,"epoch_utc":null},{"commit":"3640671fc6a67c9628fd47e19e9fe0a0738439ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 14:15:28 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/{netstat_osx.py => netstat_freebsd_osx.py}"]},"message":"rename module","epoch":1590786928,"epoch_utc":null},{"commit":"1da623b30ef6f9b12ac231518d2d4e7dadcf717b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 14:14:48 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["changelog.txt"]},"message":"add items","epoch":1590786888,"epoch_utc":null},{"commit":"b10ca64646e93d9797182ea046f4956a17b37627","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 14:14:37 2020 -0700","stats":{"files_changed":1,"insertions":71,"deletions":71,"files":["jc/parsers/netstat.py"]},"message":"change osx_inode and osx_flags to unix_inode and unix_flags. Also rename netstat_osx module to netstat_freebsd_osx","epoch":1590786877,"epoch_utc":null},{"commit":"2128763ee67a07da6ebf123abeec39794bc1f4e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 13:25:19 2020 -0700","stats":{"files_changed":1,"insertions":12,"deletions":12,"files":["tests/test_netstat.py"]},"message":"fix osx version from 16.4 to 14.6","epoch":1590783919,"epoch_utc":null},{"commit":"a27e7ed39c63c04cfa78caceaada42f7a9496a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 13:24:52 2020 -0700","stats":{"files_changed":12,"insertions":12,"deletions":12,"files":["tests/fixtures/centos-7.7/netstat-r.json","tests/fixtures/centos-7.7/netstat-rne.json","tests/fixtures/centos-7.7/netstat-rnee.json","tests/fixtures/centos-7.7/route-vn.json","tests/fixtures/centos-7.7/route.json","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-rnl.json","tests/fixtures/ubuntu-18.04/netstat-r.json","tests/fixtures/ubuntu-18.04/netstat-rne.json","tests/fixtures/ubuntu-18.04/netstat-rnee.json","tests/fixtures/ubuntu-18.04/route-vn.json","tests/fixtures/ubuntu-18.04/route.json"]},"message":"test updates for added route_flags_pretty and flags_pretty fields","epoch":1590783892,"epoch_utc":null},{"commit":"f07b7eaa474eb87dbdbc7fbe41b9386feff7bee2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 12:55:16 2020 -0700","stats":{"files_changed":1,"insertions":38,"deletions":12,"files":["jc/parsers/route.py"]},"message":"add flags_pretty","epoch":1590782116,"epoch_utc":null},{"commit":"6ce18de84ce16a926f9cd97c3210ef209c3352da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 12:51:04 2020 -0700","stats":{"files_changed":3,"insertions":130,"deletions":69,"files":["jc/parsers/netstat.py","jc/parsers/netstat_linux.py","jc/parsers/netstat_osx.py"]},"message":"add route_flags_pretty","epoch":1590781864,"epoch_utc":null},{"commit":"8631b756e7ab8cd71c2a3eb288e2d1823cec5782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 12:05:46 2020 -0700","stats":{"files_changed":4,"insertions":76,"deletions":0,"files":["tests/fixtures/freebsd12/netstat-Aa.out","tests/fixtures/freebsd12/netstat-an.out","tests/fixtures/freebsd12/netstat-i.out","tests/fixtures/freebsd12/netstat-r.out"]},"message":"add freebsd test files","epoch":1590779146,"epoch_utc":null},{"commit":"7414d984125300164a5b6156d7a80128d4d6cb15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 12:05:34 2020 -0700","stats":{"files_changed":6,"insertions":18,"deletions":18,"files":["jc/parsers/df.py","jc/parsers/fstab.py","jc/parsers/mount.py","jc/parsers/ntpq.py","jc/parsers/stat.py","jc/parsers/uname.py"]},"message":"add freebsd compatibility","epoch":1590779134,"epoch_utc":null},{"commit":"d7b19892e8fb11e17fcbadcdbb08d49897d7754f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 12:04:58 2020 -0700","stats":{"files_changed":2,"insertions":10,"deletions":7,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"]},"message":"add freebsd support for netstat -i","epoch":1590779098,"epoch_utc":null},{"commit":"96df396eaf4e030113005a95e525d644c394dfe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 07:35:25 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1590762925,"epoch_utc":null},{"commit":"2f6f640317da5af894f34f187c4243ef0c599d07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 27 17:11:20 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"spelling","epoch":1590624680,"epoch_utc":null},{"commit":"c4a0a50f3a3ac5833ab5d2f8a0cb3f18da335812","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 27 17:08:54 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]},"message":"add nix-env","epoch":1590624534,"epoch_utc":null},{"commit":"658f8a3842273cea049689b3aea15d89a7294b24","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 27 14:58:16 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":3,"files":["README.md"]},"message":"add zypper and ports info","epoch":1590616696,"epoch_utc":null},{"commit":"bfb876a1e394ff63c6773965ba0b65da4e109c1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 27 09:52:13 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1590598333,"epoch_utc":null},{"commit":"90c34b1f4ee2d9ec8125346bb90b227f76ada2ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 26 17:31:56 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"fix dmidecode example","epoch":1590539516,"epoch_utc":null},{"commit":"3f9164ea77ec41e1b0671d0a642900d8e36faf9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 23 21:11:17 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"bold formatting","epoch":1590293477,"epoch_utc":null},{"commit":"7fd6fecbf5a08b1f13aa7e906e94be9bc126780a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 23 21:09:49 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1590293389,"epoch_utc":null},{"commit":"8029f72363a4d19938df07603f03a0147f6246a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 23 21:09:40 2020 -0700","stats":{"files_changed":6,"insertions":10,"deletions":7,"files":["changelog.txt","docs/parsers/stat.md","jc/cli.py","jc/parsers/stat.py","setup.py","tests/fixtures/osx-10.14.6/stat.json"]},"message":"change osx_flags from integer to string","epoch":1590293380,"epoch_utc":null},{"commit":"c7fdce5d3b7566a7d290627767c47d9c196e02ad","merge":"f5627a4 84f48aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 16:37:50 2020 -0700","message":"Merge pull request #62 from kellyjonbrazil/dev\n\nDev v1.11.0","epoch":1590190670,"epoch_utc":null},{"commit":"84f48aa369a458f534523ecc1e3aaaf403d06f1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 16:30:22 2020 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1590190222,"epoch_utc":null},{"commit":"2e9a0a9c1221dd01bd683ecbc4871d03738da671","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 16:21:55 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["changelog.txt"]},"message":"add features","epoch":1590189715,"epoch_utc":null},{"commit":"c1f6f2b9508e558ab88b4a0a61e93a6cf5460bea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 16:21:40 2020 -0700","stats":{"files_changed":5,"insertions":116,"deletions":4,"files":["docs/parsers/stat.md","jc/parsers/stat.py","tests/fixtures/osx-10.14.6/stat.json","tests/fixtures/osx-10.14.6/stat.out","tests/test_stat.py"]},"message":"osx fixes and tests","epoch":1590189700,"epoch_utc":null},{"commit":"ede21bca13c4b46899721f01d979c8b063f861a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 16:05:04 2020 -0700","stats":{"files_changed":1,"insertions":110,"deletions":78,"files":["jc/parsers/stat.py"]},"message":"add OSX support for stat","epoch":1590188704,"epoch_utc":null},{"commit":"8dd9a9f9cbc70a19176f909f6ac76b2bcf670736","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 15:12:10 2020 -0700","stats":{"files_changed":5,"insertions":45,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-i.json","tests/fixtures/osx-10.14.6/netstat-i.json","tests/fixtures/ubuntu-18.04/netstat-i.json","tests/fixtures/ubuntu-18.04/netstat-i.out","tests/test_netstat.py"]},"message":"add netstat -i tests","epoch":1590185530,"epoch_utc":null},{"commit":"04f92cd1330759e4bad1c0304b9e1c28e8d32d59","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 14:04:11 2020 -0700","stats":{"files_changed":5,"insertions":166,"deletions":4,"files":["README.md","docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_linux.py","tests/fixtures/centos-7.7/netstat-i.out"]},"message":"add linux support for netstat -i","epoch":1590181451,"epoch_utc":null},{"commit":"8be8d2393b276a9249e1c573ce19cf630f0942fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 13:38:25 2020 -0700","stats":{"files_changed":3,"insertions":99,"deletions":3,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-i.out"]},"message":"add netstat -i support for OSX","epoch":1590179905,"epoch_utc":null},{"commit":"0a879681be68fe2e6e5c013ab0fe18de99b04f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 12:56:27 2020 -0700","stats":{"files_changed":3,"insertions":97,"deletions":282,"files":["README.md","docs/parsers/netstat.md","jc/parsers/netstat.py"]},"message":"add netstat -r to docs","epoch":1590177387,"epoch_utc":null},{"commit":"2ca1587a49511899bf719e0b0c7de32158fc491d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 12:44:51 2020 -0700","stats":{"files_changed":10,"insertions":102,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-r.json","tests/fixtures/centos-7.7/netstat-rne.json","tests/fixtures/centos-7.7/netstat-rnee.json","tests/fixtures/ubuntu-18.04/netstat-r.json","tests/fixtures/ubuntu-18.04/netstat-r.out","tests/fixtures/ubuntu-18.04/netstat-rne.json","tests/fixtures/ubuntu-18.04/netstat-rne.out","tests/fixtures/ubuntu-18.04/netstat-rnee.json","tests/fixtures/ubuntu-18.04/netstat-rnee.out","tests/test_netstat.py"]},"message":"add linux netstat -r tests","epoch":1590176691,"epoch_utc":null},{"commit":"ec2cd2d708a57c0458657416bedcb4340cb40901","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 12:00:26 2020 -0700","stats":{"files_changed":9,"insertions":70,"deletions":11,"files":["docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_linux.py","jc/parsers/netstat_osx.py","tests/fixtures/centos-7.7/netstat-r.out","tests/fixtures/centos-7.7/netstat-rne.out","tests/fixtures/centos-7.7/netstat-rnee.out","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-rnl.json"]},"message":"add netstat -r support for linux","epoch":1590174026,"epoch_utc":null},{"commit":"5d0dbece9317e84a47d9f4b2d18a9ffa33fbee6e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 11:09:41 2020 -0700","stats":{"files_changed":8,"insertions":288,"deletions":5,"files":["docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-r.out","tests/fixtures/osx-10.14.6/netstat-rnl.json","tests/fixtures/osx-10.14.6/netstat-rnl.out","tests/test_netstat.py"]},"message":"add netstat -r functionality for OSX","epoch":1590170981,"epoch_utc":null},{"commit":"df1e4b414b2bda5be3153767cd854b2483ba600b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 08:00:18 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":[".gitignore"]},"message":"remove unused folder","epoch":1590159618,"epoch_utc":null},{"commit":"40760991e7dae43cd15134310f7bbb5ce0f58dae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 07:51:47 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["LICENSE.md"]},"message":"update copyright date","epoch":1590159107,"epoch_utc":null},{"commit":"464f5f86cf2c8fe6a1a857b0ad4d221a3edf3d88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 07:50:22 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"update description","epoch":1590159022,"epoch_utc":null},{"commit":"7b09e9fccdd4f09218a500b54c898ada1b9843c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 21 17:01:17 2020 -0700","stats":{"files_changed":5,"insertions":8,"deletions":5,"files":["docs/parsers/dmidecode.md","jc/parsers/dmidecode.py","tests/fixtures/centos-7.7/dmidecode.json","tests/fixtures/fedora32/dmidecode.json","tests/fixtures/ubuntu-18.04/dmidecode.json"]},"message":"set empty values to Null and update fixtures","epoch":1590105677,"epoch_utc":null},{"commit":"6cba7d429898d331c674c778f8bd85ba75a8dca9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 21 11:10:00 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"remove linux from description","epoch":1590084600,"epoch_utc":null},{"commit":"9730f62e4970b5a4490f8dc24b6cfb9cacd0cbf2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 21 09:44:28 2020 -0700","stats":{"files_changed":5,"insertions":151,"deletions":133,"files":["jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json","tests/fixtures/osx-10.14.6/netstat.out"]},"message":"fixup name field and update test fixtures","epoch":1590079468,"epoch_utc":null},{"commit":"e0c1c87f549eee000b93b5f5a3e8d0b052eb7d32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 21 09:07:01 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["README.md"]},"message":"formatting","epoch":1590077221,"epoch_utc":null},{"commit":"931b3d2b836b251590497f4cfa65f106762086c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 19:56:28 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1590029788,"epoch_utc":null},{"commit":"e5d561baeecf1fd83a884b3cd9d322762f750dfb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 17:31:51 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/netstat.py"]},"message":"add multipath condition for osx detection","epoch":1590021111,"epoch_utc":null},{"commit":"2867593e7aa12299686e2c6aa0f2a79a9b550b53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 17:28:44 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["changelog.txt"]},"message":"changelog update","epoch":1590020924,"epoch_utc":null},{"commit":"dd52fee5635c977d5c77046ab9fe78d2ed10deef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 17:25:25 2020 -0700","stats":{"files_changed":7,"insertions":2141,"deletions":0,"files":["tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-Abn.out","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat-An.out","tests/fixtures/osx-10.14.6/netstat.json","tests/fixtures/osx-10.14.6/netstat.out","tests/test_netstat.py"]},"message":"osx netstat tests and fixtures","epoch":1590020725,"epoch_utc":null},{"commit":"8e1f8858273e671a882a07eae1c35b38f5298c94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 16:43:53 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"fix filtered netstat views","epoch":1590018233,"epoch_utc":null},{"commit":"2d39a58f902e6af77f8f96ffcd1d68b7cbadd56c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 16:14:03 2020 -0700","stats":{"files_changed":4,"insertions":81,"deletions":14,"files":["README.md","docs/parsers/dmidecode.md","docs/parsers/netstat.md","jc/parsers/dmidecode.py"]},"message":"doc update","epoch":1590016443,"epoch_utc":null},{"commit":"9c4fa2ae2601ca4880c0b078fa917f01f1392e0e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 15:39:47 2020 -0700","stats":{"files_changed":2,"insertions":22,"deletions":2,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"]},"message":"integer conversions and icmp fix","epoch":1590014387,"epoch_utc":null},{"commit":"de52d84e82df6d8c5e2416c6bc44e59c41c685da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 12:02:32 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/netstat_osx.py"]},"message":"fix udp state and udp46 entries","epoch":1590001352,"epoch_utc":null},{"commit":"ce9b55059a28d363b8b0ae4f3ccbdbdc4bf4b58e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 11:24:38 2020 -0700","stats":{"files_changed":2,"insertions":185,"deletions":167,"files":["jc/parsers/netstat.py","jc/parsers/netstat_linux.py"]},"message":"organize files","epoch":1589999078,"epoch_utc":null},{"commit":"bcd370a6a01a115d470776f5690f8571d68d3930","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 08:19:45 2020 -0700","stats":{"files_changed":2,"insertions":5,"deletions":15,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"]},"message":"code cleanup","epoch":1589987985,"epoch_utc":null},{"commit":"c8216850abd2d0b8cc6761453f853f296e8a28f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 07:19:24 2020 -0700","stats":{"files_changed":1,"insertions":19,"deletions":55,"files":["jc/parsers/netstat_osx.py"]},"message":"code cleanup","epoch":1589984364,"epoch_utc":null},{"commit":"f5feedb90b39e5c3f4564615482d47ccd145844f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 17:38:14 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":10,"files":["jc/parsers/netstat_osx.py"]},"message":"fix comments","epoch":1589935094,"epoch_utc":null},{"commit":"a4371cd187fe5077018edbfeee77eb17c6a90ad3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 17:36:16 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/netstat_osx.py"]},"message":"support netstat -A","epoch":1589934976,"epoch_utc":null},{"commit":"9d5ba4c83404e4fab5c0f40c30b4735685499a31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 17:14:04 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/netstat_osx.py"]},"message":"formatting","epoch":1589933644,"epoch_utc":null},{"commit":"1639dee1bb93f6f89e8bb7b37134dc1f561c479c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 17:13:03 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":35,"files":["jc/parsers/netstat_osx.py"]},"message":"fix parse_post","epoch":1589933583,"epoch_utc":null},{"commit":"9363f430f20951e6fa739f06c85c5b6b3421b60d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 16:26:41 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/netstat.py"]},"message":"use list extend method to simplify code","epoch":1589930801,"epoch_utc":null},{"commit":"9192a0907364c772558380be1373b8dcea972a6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 16:26:04 2020 -0700","stats":{"files_changed":1,"insertions":124,"deletions":34,"files":["jc/parsers/netstat_osx.py"]},"message":"parse all sections","epoch":1589930764,"epoch_utc":null},{"commit":"b915eb97556ccc5fc60e8d23f7298ffec2d8e3b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 15:15:08 2020 -0700","stats":{"files_changed":2,"insertions":237,"deletions":55,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"]},"message":"initial osx parser","epoch":1589926508,"epoch_utc":null},{"commit":"1cfcc2b592f682d2b50a0c4188fa3ae832a6c682","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 14 09:58:16 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/dmidecode.py"]},"message":"tighten up line test logic when counting tabs","epoch":1589475496,"epoch_utc":null},{"commit":"7138dd02b73073441a52c9b574bf0d6e02f0d7d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 14 09:51:10 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/parsers/dmidecode.py"]},"message":"cleanup variables after adding to item","epoch":1589475070,"epoch_utc":null},{"commit":"b4276643b70f7820f8f53df22b32fffb54e30ca2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 14 09:43:13 2020 -0700","stats":{"files_changed":4,"insertions":56,"deletions":0,"files":["tests/fixtures/centos-7.7/dmidecode.json","tests/fixtures/fedora32/dmidecode.json","tests/fixtures/ubuntu-18.04/dmidecode.json","tests/test_dmidecode.py"]},"message":"add dmidecode tests and fixtures","epoch":1589474593,"epoch_utc":null},{"commit":"2ef00763bfe7c4348f30026759941efe39861a0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 14 09:33:45 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/dmidecode.py"]},"message":"fix first item","epoch":1589474025,"epoch_utc":null},{"commit":"54364928fc826ead7774a4cec1bcb73a5cb9ee0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 14 08:57:23 2020 -0700","stats":{"files_changed":2,"insertions":74,"deletions":81,"files":["docs/parsers/dmidecode.md","jc/parsers/dmidecode.py"]},"message":"fix oddities like hybrid single/multiline data and items containing multiple records","epoch":1589471843,"epoch_utc":null},{"commit":"09b3b4932b0fa4a2b18c88a8465c15a194b727e6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 10:51:38 2020 -0700","stats":{"files_changed":3,"insertions":35430,"deletions":0,"files":["tests/fixtures/centos-7.7/dmidecode.out","tests/fixtures/fedora32/dmidecode.out","tests/fixtures/ubuntu-18.04/dmidecode.out"]},"message":"add dmidecode output fixtures","epoch":1589392298,"epoch_utc":null},{"commit":"29d6670119d8fcd0344e90f01bfb6260aa936e50","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 10:18:49 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/dmidecode.py"]},"message":"convert integers","epoch":1589390329,"epoch_utc":null},{"commit":"2f654b5f1acda01192294f4c18a5a31363e7f387","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 10:13:27 2020 -0700","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["docs/parsers/dmidecode.md"]},"message":"doc update","epoch":1589390007,"epoch_utc":null},{"commit":"e53b9f5992450b53efc886b4fa9ca16f3dd07530","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 10:12:40 2020 -0700","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["jc/parsers/dmidecode.py"]},"message":"add caveats to documentation","epoch":1589389960,"epoch_utc":null},{"commit":"addb234e6162c58750cb67947bc4776635bf54fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:44:20 2020 -0700","stats":{"files_changed":1,"insertions":153,"deletions":0,"files":["docs/parsers/dmidecode.md"]},"message":"add dmidecode doc","epoch":1589388260,"epoch_utc":null},{"commit":"76eca3b65911a0a340d3d94322a8145ee89c50da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:43:35 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"]},"message":"add dmidecode","epoch":1589388215,"epoch_utc":null},{"commit":"f90dec4c0ecf88623fb22273b7527ec8884826c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:43:23 2020 -0700","stats":{"files_changed":1,"insertions":94,"deletions":5,"files":["jc/parsers/dmidecode.py"]},"message":"add examples to documentation","epoch":1589388203,"epoch_utc":null},{"commit":"8900a59d4cb424ff58d1eb27f8fda7ea0a668a5c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:31:12 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":19,"files":["jc/parsers/dmidecode.py"]},"message":"simplify logic by removing redundant block","epoch":1589387472,"epoch_utc":null},{"commit":"6685138200d5955115707d04aad0293ea8af5b15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:25:02 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dmidecode.py"]},"message":"fix for missing multi-line values that come immediately after a previous multi-line value","epoch":1589387102,"epoch_utc":null},{"commit":"4d3e65b980d50164b8220e59560822b9871580ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:00:32 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/parsers/dmidecode.py"]},"message":"fix missing values","epoch":1589385632,"epoch_utc":null},{"commit":"e9282bb546f560da6396f44e2ce9e04136348e2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 08:22:52 2020 -0700","stats":{"files_changed":2,"insertions":175,"deletions":0,"files":["jc/cli.py","jc/parsers/dmidecode.py"]},"message":"add dmidecode parser","epoch":1589383372,"epoch_utc":null},{"commit":"f5627a45947e5e76e5f3e64d9b30099fe0b962a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 11 11:03:02 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1589220182,"epoch_utc":null},{"commit":"81ffdb25105c681c8ed12336d220a102b7f4215e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 11 10:54:26 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/cli.py"]},"message":"remove shebang for Fedora packaging","epoch":1589219666,"epoch_utc":null},{"commit":"4c00a99850cb6f69713be7c6ad9ffba11924d9b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 11 10:37:14 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1589218634,"epoch_utc":null},{"commit":"2bfcb45b28e2174a8bbc27237e619b5c232ccae8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 11 10:32:42 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["jc/cli.py"]},"message":"make cli.py executable","epoch":1589218362,"epoch_utc":null},{"commit":"ab0c10e791283affb227d0d5306701ba7fd29d13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 11 10:27:16 2020 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["LICENSE.md","README.md"]},"message":"remove execute permissions","epoch":1589218036,"epoch_utc":null},{"commit":"2c1935115de03a28fe92674b04b2542b0eccb8fe","merge":"99070fa d98e43d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:47:05 2020 -0700","message":"Merge pull request #61 from kellyjonbrazil/dev\n\nDev v1.10.10","epoch":1589050025,"epoch_utc":null},{"commit":"d98e43dc78205d3224bfc1e67de2da3c5fb7ea9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:42:56 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"add netstat item","epoch":1589049776,"epoch_utc":null},{"commit":"9348988d646d9b9c9970c19e84f311554ae38e7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:41:30 2020 -0700","stats":{"files_changed":1,"insertions":12,"deletions":0,"files":["tests/test_netstat.py"]},"message":"add netstat test for Fedora32","epoch":1589049690,"epoch_utc":null},{"commit":"1285c664679c40b18327c89b85921a80b01f0191","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:36:23 2020 -0700","stats":{"files_changed":2,"insertions":140,"deletions":0,"files":["tests/fixtures/fedora32/netstat.json","tests/fixtures/fedora32/netstat.out"]},"message":"netstat with bluetooth section","epoch":1589049383,"epoch_utc":null},{"commit":"b7191bbc130e0f33d02c0a4819fa91ffff1599d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:36:03 2020 -0700","stats":{"files_changed":1,"insertions":14,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"handle bluetooth section (ignore for now)","epoch":1589049363,"epoch_utc":null},{"commit":"98b97509f7893cb95e9651ce9706db5c961aa997","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:25:13 2020 -0700","stats":{"files_changed":3,"insertions":6,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1589048713,"epoch_utc":null},{"commit":"2b2b570490f3834367a598579473001f45738e8a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:22:26 2020 -0700","stats":{"files_changed":3,"insertions":21,"deletions":0,"files":["tests/fixtures/fedora32/last.json","tests/fixtures/fedora32/last.out","tests/test_last.py"]},"message":"add tests for 'gone - no logout'","epoch":1589048546,"epoch_utc":null},{"commit":"cce2d1ff298f2284c43c4534144329f3533a81ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:22:01 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/last.py"]},"message":"add condition for 'gone - no logout'","epoch":1589048521,"epoch_utc":null},{"commit":"b79600c57249cbb65805caad2524cc2492342be6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:01:48 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"version bump","epoch":1589047308,"epoch_utc":null},{"commit":"140f1a85437745296b56976bef1b46514e323a4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:00:04 2020 -0700","stats":{"files_changed":7,"insertions":7,"deletions":7,"files":["tests/fixtures/centos-7.7/ls-R-newlines.json","tests/fixtures/centos-7.7/ls-R.json","tests/fixtures/centos-7.7/ls-glob.json","tests/fixtures/osx-10.14.6/ls-glob.json","tests/fixtures/ubuntu-18.04/ls-R-newlines.json","tests/fixtures/ubuntu-18.04/ls-R.json","tests/fixtures/ubuntu-18.04/ls-glob.json"]},"message":"test fixes for issue #60","epoch":1589047204,"epoch_utc":null},{"commit":"e34657cfde6816ab7a7415d83580df0a1d98a5a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 15:26:11 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"]},"message":"fix issue #60 that was skipping the first file in some instances using -R without -l","epoch":1588976771,"epoch_utc":null},{"commit":"99070fa6073c4415a6faf8ca69dd6aa089af4062","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 10:51:13 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1588960273,"epoch_utc":null},{"commit":"2b46785b1f1281ee63df9159e36068f4607ad9b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 10:49:30 2020 -0700","stats":{"files_changed":1,"insertions":25,"deletions":3,"files":["jc/parsers/ifconfig.py"]},"message":"add MIT license to vendorized IfconfigParser class","epoch":1588960170,"epoch_utc":null},{"commit":"c72562524b2b9aaca0be372bb24343158829ba5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 09:30:31 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"fully remove tests from packaging","epoch":1588955431,"epoch_utc":null},{"commit":"b7dd6441c7e3f54f8a260fceef49aae6816c7151","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 08:20:33 2020 -0700","stats":{"files_changed":2,"insertions":5,"deletions":1,"files":["changelog.txt","jc/cli.py"]},"message":"version bump","epoch":1588951233,"epoch_utc":null},{"commit":"31fcc2f755ad86622cf51a75879b14d44f246300","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 08:20:21 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["MANIFEST.in"]},"message":"remove manifest.in - no longer needed due to removing tests","epoch":1588951221,"epoch_utc":null},{"commit":"b391aa14bceffedb5a9c13f3f908923790edefc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 08:19:51 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["setup.cfg"]},"message":"add license_file to metadata","epoch":1588951191,"epoch_utc":null},{"commit":"d3c45debbb6690acd341fbcc9b99d1ae4cf0a43c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 08:19:31 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["setup.py"]},"message":"remove tests and add license file","epoch":1588951171,"epoch_utc":null},{"commit":"5b08469b874553744bd5c5b1fa6581f4dcffacd0","merge":"8cf00a2 4a77ec6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 1 15:55:50 2020 -0700","message":"Merge pull request #57 from kellyjonbrazil/dev\n\nDev v1.10.7","epoch":1588373750,"epoch_utc":null},{"commit":"4a77ec63a46554c84e646d31564230774ed87431","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 1 14:57:50 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["docs/parsers/ifconfig.md"]},"message":"add IfconfigParser class","epoch":1588370270,"epoch_utc":null},{"commit":"d13606b6dc2c207be6dea89a2c3e713c18a574b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 1 14:37:23 2020 -0700","stats":{"files_changed":4,"insertions":7,"deletions":6,"files":["changelog.txt","jc/cli.py","requirements.txt","setup.py"]},"message":"modify dependencies for easier packaging into Fedora","epoch":1588369043,"epoch_utc":null},{"commit":"05291c93bba1aa364ba1ac7f2508e24bb362a814","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 1 14:36:54 2020 -0700","stats":{"files_changed":1,"insertions":198,"deletions":3,"files":["jc/parsers/ifconfig.py"]},"message":"vendorize ifconfig-parser module for easier packaging in Fedora","epoch":1588369014,"epoch_utc":null},{"commit":"8cf00a208eb8493300331e7361b72e4f9e3f140e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 29 15:57:55 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"change text to strings","epoch":1588201075,"epoch_utc":null},{"commit":"06d73c88767a5b4d6003231c897c447ee5e1faa5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 23 07:06:44 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1587650804,"epoch_utc":null},{"commit":"649c646ea25ac7f89900cffa8919df01671bd32d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 22 16:08:34 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]},"message":"add brew install option","epoch":1587596914,"epoch_utc":null},{"commit":"b7756d92501a7b8ba8e77d77d9d3718a58425beb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 20 16:33:26 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1587425606,"epoch_utc":null},{"commit":"1cd2cd954c21e5caec333507bd81819c82d45b49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 20 16:31:22 2020 -0700","stats":{"files_changed":4,"insertions":2,"deletions":16,"files":["tests/fixtures/osx-10.11.6/du.json","tests/fixtures/osx-10.11.6/du.out","tests/fixtures/osx-10.14.6/du.json","tests/fixtures/osx-10.14.6/du.out"]},"message":"remove references to homebrew/shim to allow tests to pass in homebrew packaging ci/cd","epoch":1587425482,"epoch_utc":null},{"commit":"72020b8da999ddca6f9ba82da235c9f42e4f4273","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 17 10:20:25 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":22,"files":["README.md"]},"message":"move packages info to jc-packages github page","epoch":1587144025,"epoch_utc":null},{"commit":"cf9720b749e7fc8caed0d2f1f2b1727a22a156b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 16 14:03:31 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"update install info","epoch":1587071011,"epoch_utc":null},{"commit":"967b9db7f90a3c3a0352edde7f4455c5f5d45b18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 15 21:27:22 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["README.md"]},"message":"spelling","epoch":1587011242,"epoch_utc":null},{"commit":"bb3acb1182f4d509f9ddc7dfcffa4578e0a2bd5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 15 21:25:06 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1587011106,"epoch_utc":null},{"commit":"560c7f7e6d1f8a69ab026ddbff753d232ca1d00b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 15 21:23:55 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1587011035,"epoch_utc":null},{"commit":"79b28417644e00b933f531374d2f7fe8051e61be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 15 21:22:43 2020 -0700","stats":{"files_changed":1,"insertions":26,"deletions":0,"files":["README.md"]},"message":"add new binary package install info","epoch":1587010963,"epoch_utc":null},{"commit":"a06a89cbd11026aa3910fadd1eff7fe388d02507","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 14 11:15:24 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1586888124,"epoch_utc":null},{"commit":"431bd969eb4809424fe99a02a7decb98bce9ea51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 14 11:10:31 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"use sys.exit(0) instead of exit()","epoch":1586887831,"epoch_utc":null},{"commit":"c87b722aec6e6964c516bbb8e80667ad7d9c6bc7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:23:58 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"spelling","epoch":1586723038,"epoch_utc":null},{"commit":"3688b8b014a1cf753b2207fbf3ebf0292c3fd672","merge":"99f7842 07b8d9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:21:38 2020 -0700","message":"Merge pull request #56 from kellyjonbrazil/dev\n\nDev v1.10.4","epoch":1586722898,"epoch_utc":null},{"commit":"07b8d9e0c0d723d93e6c652f5b6156c467c451c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:18:28 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump","epoch":1586722708,"epoch_utc":null},{"commit":"7454b53e395e9122c00d4cf06b1c2af109913d7a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:13:28 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["README.md"]},"message":"formatting","epoch":1586722408,"epoch_utc":null},{"commit":"3d6a76024de0f9dcf91a4ab49cabe461074114fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:10:57 2020 -0700","stats":{"files_changed":1,"insertions":18,"deletions":0,"files":["README.md"]},"message":"update with JC_COLORS info","epoch":1586722257,"epoch_utc":null},{"commit":"421b9809575a8de00229af4b851739889638ac74","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:03:09 2020 -0700","stats":{"files_changed":1,"insertions":18,"deletions":37,"files":["jc/cli.py"]},"message":"JC_COLORS working","epoch":1586721789,"epoch_utc":null},{"commit":"4a22e27d6a80a988f4de17bce421110d6abb8867","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 12:43:51 2020 -0700","stats":{"files_changed":1,"insertions":64,"deletions":0,"files":["jc/cli.py"]},"message":"add set_env_colors function","epoch":1586720631,"epoch_utc":null},{"commit":"99f7842dee0f79cf933fae185cf8b0ed7c8b210f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 9 13:38:33 2020 -0700","stats":{"files_changed":3,"insertions":11,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"fix brek on pipe error","epoch":1586464713,"epoch_utc":null},{"commit":"7f869b4b187d70752207a7e74c13b858446f898f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 9 07:31:21 2020 -0700","stats":{"files_changed":3,"insertions":9,"deletions":11,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"change colors to ansi and match jello style","epoch":1586442681,"epoch_utc":null},{"commit":"9665f4ee84680f3a8154b8a43ea668af2907782c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 7 08:44:15 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add pypi badge","epoch":1586274255,"epoch_utc":null},{"commit":"606904d48b1c7e0c19a940b5be0b564d1b5be6c8","merge":"302f05c 3f5279b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:28:21 2020 -0700","message":"Merge pull request #53 from kellyjonbrazil/dev\n\nDev v1.10.1","epoch":1586046501,"epoch_utc":null},{"commit":"3f5279b97c386c736e0e2faa5c39d68ef89c46aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:25:55 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to 1.10.1","epoch":1586046355,"epoch_utc":null},{"commit":"f5ec21e6ac612566af93158fc3968b901322d04a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:19:32 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_luf.py"]},"message":"use in instead of find()","epoch":1586045972,"epoch_utc":null},{"commit":"578a284465f014fe71ad6ac00bd41dc24ab2ced9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:18:39 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_ls.py"]},"message":"use in instead of find()","epoch":1586045919,"epoch_utc":null},{"commit":"422e392d9d98a7864312fc7fbd7f45537b71acbe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:17:43 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_lj.py"]},"message":"use in instead of find()","epoch":1586045863,"epoch_utc":null},{"commit":"54dfffd34a17d1194690142ac403391fc65bb85f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:16:25 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl.py"]},"message":"use in instead of find()","epoch":1586045785,"epoch_utc":null},{"commit":"cffba64d2b9165b44a8856665807111a2ad3a190","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:15:03 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/stat.py"]},"message":"use in and startswith() instead of find()","epoch":1586045703,"epoch_utc":null},{"commit":"56a0c12a59bb252d3b7d0929f9fb19b4d96a8437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:12:22 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/pip_list.py"]},"message":"use in instead of find()","epoch":1586045542,"epoch_utc":null},{"commit":"c174d3de18923b2b03befb5a7dfcbd977a8e147e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:10:46 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/netstat.py"]},"message":"use in and startswith() instead of find()","epoch":1586045446,"epoch_utc":null},{"commit":"a9c59ef9fc1bb68c9d0d7beffbeb670baf5b1e3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:07:38 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/mount.py"]},"message":"fix logic to not for ' type ' in cleandata[0]","epoch":1586045258,"epoch_utc":null},{"commit":"abdb9b26732a6a71f5938d665b2ca43a381e1b33","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:05:17 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/mount.py"]},"message":"use in instead of find()","epoch":1586045117,"epoch_utc":null},{"commit":"548aaab6262878d21f8b9539950cfad48638e35c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:04:20 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":42,"files":["jc/parsers/lsof.py"]},"message":"remove old commented code","epoch":1586045060,"epoch_utc":null},{"commit":"20571c87ae9e1ca8a1f3120511910751420a35ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:01:56 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/jobs.py"]},"message":"us in instead of find()","epoch":1586044916,"epoch_utc":null},{"commit":"19e49200de5c731f76b42e80388c5223e8097e39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:59:48 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"]},"message":"version bump","epoch":1586044788,"epoch_utc":null},{"commit":"d32f5c67a91ede572c88e431b2ad0ce4d6c87dec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:59:03 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/iptables.py"]},"message":"use startswith() instead of find()","epoch":1586044743,"epoch_utc":null},{"commit":"b83b626435c55d2aa63e56dd8f22603da59e7626","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:57:23 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ifconfig.py"]},"message":"use startswith() instead of find()","epoch":1586044643,"epoch_utc":null},{"commit":"ab2c1b25ec5da5f2ba238868c4dfca95a44da30e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:56:11 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/hosts.py"]},"message":"use startswith() and in instead of find()","epoch":1586044571,"epoch_utc":null},{"commit":"f2d46313a4508f13656cdb360f83fdf4116cc7d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:53:55 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/fstab.py"]},"message":"use startswith() instead of find()","epoch":1586044435,"epoch_utc":null},{"commit":"87e4796a6c936793e2784346819c7033d59b91e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:52:45 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/df.py"]},"message":"use in instead of .find()","epoch":1586044365,"epoch_utc":null},{"commit":"0014a5c2f4c056c2683d6614a65d778b1f527932","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:51:36 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab_u.py"]},"message":"us startswith() and in instead of .find()","epoch":1586044296,"epoch_utc":null},{"commit":"7af56e0dadab7d8b9538f3b7a550ad6dd1ac217d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:50:05 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab.py"]},"message":"use startswith() and in instead of find()","epoch":1586044205,"epoch_utc":null},{"commit":"a5ae6e3c017b041f9079ff12455b7551ad204cb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:48:16 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/arp.py"]},"message":"use startswith() instead of find()","epoch":1586044096,"epoch_utc":null},{"commit":"fe1a0d1faf46f55ed2888ed0065f3f3144691ed8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:46:09 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":9,"files":["jc/parsers/dig.py"]},"message":"use in instead of .find()","epoch":1586043969,"epoch_utc":null},{"commit":"302f05cdda305e46e69b74d5b0096f64c17da637","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 3 14:50:20 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"prettify style block","epoch":1585950620,"epoch_utc":null},{"commit":"c0044be7b0b6dadcffb64cb88ad92bf653dd2b6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 3 14:48:19 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"rename color grey to gray","epoch":1585950499,"epoch_utc":null},{"commit":"01100788070b82b4b827ef356972fa9b8f737eeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 3 14:47:08 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update badge","epoch":1585950428,"epoch_utc":null},{"commit":"42eacb45f8fdf8085c6231bf5297629c2ec97c22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 3 14:45:04 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"rename to Tests","epoch":1585950304,"epoch_utc":null},{"commit":"a43e2e19916662d509883457c160d7f95f97ae12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 2 17:40:06 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add -m option info","epoch":1585874406,"epoch_utc":null},{"commit":"c8b721d4f6e46a2db77e1140b9caeb3b403fef72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 2 17:35:35 2020 -0700","stats":{"files_changed":4,"insertions":9,"deletions":3,"files":["changelog.txt","jc/cli.py","requirements.txt","setup.py"]},"message":"version bump to 1.10.0","epoch":1585874135,"epoch_utc":null},{"commit":"d0bfddc3d9989444757d6668726c916e5363620b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 2 17:29:25 2020 -0700","stats":{"files_changed":1,"insertions":41,"deletions":6,"files":["jc/cli.py"]},"message":"add color and -m monochrome option","epoch":1585873765,"epoch_utc":null},{"commit":"6b925a16c87cf75bb30edfda38511e8f84a4f6d6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 2 10:55:32 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]},"message":"add tests badge","epoch":1585850132,"epoch_utc":null},{"commit":"89ebd9fc2271d2c76353d5707bfd4afb7dedc278","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 27 07:31:08 2020 -0700","stats":{"files_changed":2,"insertions":20,"deletions":0,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"add axfr info to schema","epoch":1585319468,"epoch_utc":null},{"commit":"6b4ba662317629839aa62fbcfefb8ed3337c37ef","merge":"8ec8cd6 5b697dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 17:15:13 2020 -0700","message":"Merge pull request #52 from kellyjonbrazil/dev\n\nDev v1.9.3","epoch":1585268113,"epoch_utc":null},{"commit":"5b697dc38141cdd47fcdd63bf295a80a7da86697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 17:09:29 2020 -0700","stats":{"files_changed":1,"insertions":72,"deletions":0,"files":["tests/test_dig.py"]},"message":"add more dig tests","epoch":1585267769,"epoch_utc":null},{"commit":"9ba73c95d1a528a9a92be4068805bb5aa027901e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 16:45:29 2020 -0700","stats":{"files_changed":7,"insertions":215,"deletions":0,"files":["tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/centos-7.7/dig-axfr.out","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-axfr.out","tests/fixtures/ubuntu-18.04/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-axfr.out","tests/test_dig.py"]},"message":"add tests","epoch":1585266329,"epoch_utc":null},{"commit":"93aa39044749c4c0ed749f62fb00fc1c76dc5af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 16:30:17 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to v1.9.3","epoch":1585265417,"epoch_utc":null},{"commit":"3cfb8945ddd83c00a720c44e2c1d97da0d8bad25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 16:29:59 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/dig.py"]},"message":"use startswith() instead of find","epoch":1585265399,"epoch_utc":null},{"commit":"cd8d38f2a136c4f35efc020b3476d09e965b71f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 16:22:53 2020 -0700","stats":{"files_changed":1,"insertions":50,"deletions":1,"files":["jc/parsers/dig.py"]},"message":"add axfr support","epoch":1585264973,"epoch_utc":null},{"commit":"8ec8cd62944c59c462ab9f520c1dcfd14218b1ed","merge":"e5bea9a c028113","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 17:09:04 2020 -0700","message":"Merge pull request #50 from kellyjonbrazil/dev\n\nDev v1.9.2","epoch":1584058144,"epoch_utc":null},{"commit":"c02811356153c2b4f8b2d7efb7f48bf8f7748068","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 17:06:55 2020 -0700","stats":{"files_changed":3,"insertions":6,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to v1.9.2","epoch":1584058015,"epoch_utc":null},{"commit":"5f22e1c8031b808ef02ffe078408bd58cc76e570","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 17:02:26 2020 -0700","stats":{"files_changed":3,"insertions":33,"deletions":0,"files":["tests/fixtures/osx-10.14.6/arp-a2.json","tests/fixtures/osx-10.14.6/arp-a2.out","tests/test_arp.py"]},"message":"fix and test for osx arp entries without ifscope","epoch":1584057746,"epoch_utc":null},{"commit":"d3351787e5cabd064c19e6617e9535e501686404","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 16:52:33 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":9,"files":["jc/parsers/arp.py"]},"message":"change osx detection","epoch":1584057153,"epoch_utc":null},{"commit":"e5bea9ae3b0a70b38f7da7dd9184343dbbd18887","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 08:52:01 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/file.py"]},"message":"version bump","epoch":1584028321,"epoch_utc":null},{"commit":"93c710abe9171568f61f65c4f84c040ffc24870c","merge":"400f5a4 c29e7cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 08:23:10 2020 -0700","message":"Merge pull request #49 from kellyjonbrazil/dev\n\nDev v1.9.1","epoch":1584026590,"epoch_utc":null},{"commit":"c29e7cfe5cc4b2151912c6f618137d1b6c39c7be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 08:17:28 2020 -0700","stats":{"files_changed":4,"insertions":9,"deletions":6,"files":["README.md","changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to 1.9.1","epoch":1584026248,"epoch_utc":null},{"commit":"cb5c1ba00dc0e02bf6ad6c40096d99e319fa6171","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 17:04:48 2020 -0700","stats":{"files_changed":3,"insertions":101,"deletions":0,"files":["tests/fixtures/osx-10.14.6/file2.json","tests/fixtures/osx-10.14.6/file2.out","tests/test_file.py"]},"message":"add tests for fix to make the file parser splitting more robust","epoch":1583971488,"epoch_utc":null},{"commit":"9a012b94e1942a14bc6dae3fb967ef618819c77b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 15:40:34 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/file.py"]},"message":"make splitting more robust","epoch":1583966434,"epoch_utc":null},{"commit":"400f5a44ece280cb0097d806b78a9490d2905600","merge":"c7cd2b6 a2ab5ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 13:37:22 2020 -0700","message":"Merge pull request #48 from kellyjonbrazil/dev\n\nDev v1.9.0","epoch":1583959042,"epoch_utc":null},{"commit":"a2ab5bab91ea980399df1afb9d8071fa3282d04e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 13:32:58 2020 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to v1.9.0","epoch":1583958778,"epoch_utc":null},{"commit":"fc8ab27361df3359b706125531b2643612d6996a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 13:24:55 2020 -0700","stats":{"files_changed":6,"insertions":93,"deletions":51,"files":["README.md","docs/parsers/ntpq.md","jc/parsers/ntpq.py","tests/fixtures/ubuntu-18.04/ntpq-p2.json","tests/fixtures/ubuntu-18.04/ntpq-p2.out","tests/test_ntpq.py"]},"message":"bugfix for misaligned columns and additional test for ntpq #31","epoch":1583958295,"epoch_utc":null},{"commit":"59f19d33a5c6677ea756a9424fdb032b430511a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 12:39:59 2020 -0700","stats":{"files_changed":7,"insertions":153,"deletions":0,"files":["tests/fixtures/centos-7.7/file.json","tests/fixtures/centos-7.7/file.out","tests/fixtures/osx-10.14.6/file.json","tests/fixtures/osx-10.14.6/file.out","tests/fixtures/ubuntu-18.04/file.json","tests/fixtures/ubuntu-18.04/file.out","tests/test_file.py"]},"message":"add file command tests for #41","epoch":1583955599,"epoch_utc":null},{"commit":"dfc96181159748d019419a2cba7aa9cb3b7a2a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 12:20:58 2020 -0700","stats":{"files_changed":6,"insertions":260,"deletions":1,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/file.md","jc/cli.py","jc/parsers/file.py"]},"message":"add file parser for issue #41","epoch":1583954458,"epoch_utc":null},{"commit":"8e02e5c75a11cf205299ee6f87b67f9b787cf55e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 09:21:14 2020 -0700","stats":{"files_changed":2,"insertions":6,"deletions":5,"files":["jc/cli.py","tests/test_cli.py"]},"message":"fix issue with getting options with some commands #47","epoch":1583943674,"epoch_utc":null},{"commit":"970493ab9346a344b21be7614903ad81bc65a6e9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 06:22:54 2020 -0700","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["jc/parsers/airport.py","jc/parsers/airport_s.py"]},"message":"add magic commands","epoch":1583932974,"epoch_utc":null},{"commit":"64d78956eb33ca0a2564fded3d12729ee036a915","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 22:18:26 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"update acknowledgment","epoch":1583903906,"epoch_utc":null},{"commit":"40c05346f4098f8eea14c42da07df3faa143587a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 22:16:40 2020 -0700","stats":{"files_changed":1,"insertions":12,"deletions":25,"files":["jc/parsers/history.py"]},"message":"re-adding optimizations from https://github.com/philippeitis","epoch":1583903800,"epoch_utc":null},{"commit":"e9b0bc1409a824a82dabd2479892b7d18bad8c3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 22:03:54 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/airport.py"]},"message":"doc update","epoch":1583903034,"epoch_utc":null},{"commit":"798e6bb7d939176bb36771a6d41bd55403d583be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 22:03:44 2020 -0700","stats":{"files_changed":2,"insertions":29,"deletions":0,"files":["tests/fixtures/osx-10.14.6/airport-s.json","tests/test_airport_s.py"]},"message":"tests passing for airport -s. issue #46","epoch":1583903024,"epoch_utc":null},{"commit":"12a370deed03ba42d7b7ebb410195ce5f32bb9c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 21:51:02 2020 -0700","stats":{"files_changed":8,"insertions":372,"deletions":9,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/airport.md","docs/parsers/airport_s.md","jc/cli.py","jc/parsers/airport.py","jc/parsers/airport_s.py"]},"message":"add airport -s parser for issue #46","epoch":1583902262,"epoch_utc":null},{"commit":"553bfbe1a0dd866851ba7eca66e9295c2097ad86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 21:02:17 2020 -0700","stats":{"files_changed":3,"insertions":40,"deletions":6,"files":["docs/parsers/airport.md","jc/parsers/airport.py","tests/test_airport.py"]},"message":"tests passing for airport -I. Issue #46","epoch":1583899337,"epoch_utc":null},{"commit":"52494321fcfe0dc7ee71d8d78210b3c10372a237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 20:55:07 2020 -0700","stats":{"files_changed":5,"insertions":120,"deletions":15,"files":["README.md","docs/parsers/airport.md","jc/parsers/airport.py","tests/fixtures/osx-10.14.6/airport-I.json","tests/fixtures/osx-10.14.6/airport-I.out"]},"message":"fixes and docs for airport parser issue #46","epoch":1583898907,"epoch_utc":null},{"commit":"c6c9e06496683d2dd3586d17085801c7e698d960","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 20:35:52 2020 -0700","stats":{"files_changed":7,"insertions":196,"deletions":1,"files":["changelog.txt","docgen.sh","docs/parsers/airport.md","jc/cli.py","jc/parsers/airport.py","tests/fixtures/osx-10.14.6/airport-I.out","tests/fixtures/osx-10.14.6/airport-s.out"]},"message":"added airport command parser","epoch":1583897752,"epoch_utc":null},{"commit":"e3a6c05a58a2451e70975d8fabf644c56603c73d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 20:26:53 2020 -0700","stats":{"files_changed":5,"insertions":64,"deletions":17,"files":["docs/parsers/timedatectl.md","jc/parsers/timedatectl.py","tests/fixtures/centos-7.7/timedatectl.json","tests/fixtures/ubuntu-18.04/timedatectl.json","tests/test_timedatectl.py"]},"message":"timedatectl fixes, tests, and fixtures for issue #42","epoch":1583897213,"epoch_utc":null},{"commit":"391d06f68d1f45d33590d5407d3a5e4f723af717","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 20:16:41 2020 -0700","stats":{"files_changed":7,"insertions":35,"deletions":35,"files":["README.md","docs/parsers/ntpq.md","jc/parsers/ntpq.py","tests/fixtures/centos-7.7/ntpq-p.json","tests/fixtures/centos-7.7/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-p.json","tests/fixtures/ubuntu-18.04/ntpq-pn.json"]},"message":"change selection_state to state","epoch":1583896601,"epoch_utc":null},{"commit":"99804ea06e0c70e3a82ddc7f9c7a42343374d700","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 18:37:55 2020 -0700","stats":{"files_changed":6,"insertions":222,"deletions":0,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/timedatectl.md","jc/cli.py","jc/parsers/timedatectl.py"]},"message":"added timedatectl status parser","epoch":1583890675,"epoch_utc":null},{"commit":"51935deb2ad18e4ea3ca16954ce810354f6095a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 18:00:47 2020 -0700","stats":{"files_changed":2,"insertions":21,"deletions":0,"files":["tests/fixtures/centos-7.7/timedatectl.out","tests/fixtures/ubuntu-18.04/timedatectl.out"]},"message":"timedatectl test fixtures","epoch":1583888447,"epoch_utc":null},{"commit":"b24d0c3a475b88d9ccf1a8fe29715ee60972fcad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 18:00:26 2020 -0700","stats":{"files_changed":2,"insertions":34,"deletions":2,"files":["README.md","jc/parsers/ntpq.py"]},"message":"ntpq docs","epoch":1583888426,"epoch_utc":null},{"commit":"762a886d6fdf5c2ad21d81868d138fb32621ed1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 15:17:25 2020 -0700","stats":{"files_changed":8,"insertions":133,"deletions":0,"files":["tests/fixtures/centos-7.7/ntpq-p.json","tests/fixtures/centos-7.7/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-p.json","tests/fixtures/ubuntu-18.04/ntpq-p.out","tests/fixtures/ubuntu-18.04/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-pn.out","tests/fixtures/ubuntu-18.04/ntqp-p.out","tests/test_ntpq.py"]},"message":"add ntpq tests","epoch":1583878645,"epoch_utc":null},{"commit":"2c3e9ddfe47f56cd7edc2fdf6317f7ecec0b7918","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 14:18:55 2020 -0700","stats":{"files_changed":7,"insertions":543,"deletions":0,"files":["changelog.txt","docgen.sh","docs/parsers/ntpq.md","jc/cli.py","jc/parsers/ntpq.py","tests/fixtures/centos-7.7/ntpq-p.out","tests/fixtures/centos-7.7/ntpq-pn.out"]},"message":"add ntpq parser for issue #31","epoch":1583875135,"epoch_utc":null},{"commit":"c7cd2b63c8f24e9d17c458880fe401d8032395ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 9 11:46:17 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":91,"files":["tests/fixtures/generic/oscar_age_male.csv"]},"message":"delete unused test file","epoch":1583779577,"epoch_utc":null},{"commit":"f0528ea83112e71ff51c89be27fc9bbdfbbf1951","merge":"b5eaff2 5bc5596","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:54:13 2020 -0700","message":"Merge pull request #45 from kellyjonbrazil/dev\n\nDev v1.8.1","epoch":1583704453,"epoch_utc":null},{"commit":"5bc5596f604fb87dffbfdf44ce2395b16bf01297","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:49:23 2020 -0700","stats":{"files_changed":4,"insertions":17,"deletions":4,"files":["changelog.txt","jc/cli.py","setup.py","tests/test_ls.py"]},"message":"version bump to 1.8.1","epoch":1583704163,"epoch_utc":null},{"commit":"2c27ac46be803b583caf82c1765bd0c35cee8bc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:43:51 2020 -0700","stats":{"files_changed":2,"insertions":2454,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-lR-empty-folder.json","tests/fixtures/osx-10.14.6/ls-lR-empty-folder.out"]},"message":"add ls test fixtures","epoch":1583703831,"epoch_utc":null},{"commit":"caad840153e40dc660a2d5e06a96f3451fef25f9","merge":"aff86ae 65bd7e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:19:37 2020 -0700","message":"Merge pull request #44 from philippeitis/patch-5\n\nMove core magic() logic into seperate function for testability, minor tweaks","epoch":1583702377,"epoch_utc":null},{"commit":"65bd7e2904016141c1ed53cdd437865c66d7628e","merge":"17b6efe c3d7d7d","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Sun Mar 8 14:10:35 2020 -0700","message":"Merge pull request #1 from kellyjonbrazil/pr/44\n\nMerge changes","epoch":1583701835,"epoch_utc":null},{"commit":"c3d7d7db12d4870fc4499e0e3445d85ae89f2aea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:03:08 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"removed whitespace","epoch":1583701388,"epoch_utc":null},{"commit":"56053103625af6fb7fa749fc5bc3dbdc62fc223c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:02:54 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":4,"files":["tests/test_cli.py"]},"message":"added tests, removed os import, changed to 'assertEqual'","epoch":1583701374,"epoch_utc":null},{"commit":"17b6efe82e6a558353b011c543489eaaf3a6d3ac","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Sun Mar 8 13:35:01 2020 -0700","stats":{"files_changed":1,"insertions":14,"deletions":0,"files":["tests/test_cli.py"]},"message":"Create basic tests for generate_magic_commands()","epoch":1583699701,"epoch_utc":null},{"commit":"a032ae56ae7d247e00415267b65b2a8b80a3302e","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Sun Mar 8 13:26:15 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"Pass args to generate_magic_command() to allow testing.","epoch":1583699175,"epoch_utc":null},{"commit":"eab2f4b0566b4c76db661cbfa99a56a6bf8d6541","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Sun Mar 8 13:20:38 2020 -0700","stats":{"files_changed":1,"insertions":33,"deletions":19,"files":["jc/cli.py"]},"message":"Move core magic() logic into seperate function for testability, minor tweaks.\n\nWe only care about the command when testing magic() - by moving that out, we can easily test the command. I modified the code to return a boolean signalling that the command is valid, and the command itself to maintain the original functionality.\n\nI also made some small tweaks (removed a list() call, fixed a possible bug with no arguments., moved magic_dict instantiation past the fast path checks to avoid making a dict if not needed.)","epoch":1583698838,"epoch_utc":null},{"commit":"aff86ae6c71abfe1cbdba5c574a5f3707292ec19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 12:58:26 2020 -0700","stats":{"files_changed":1,"insertions":29,"deletions":39,"files":["jc/cli.py"]},"message":"reimpliment magic() based on the dictionary approach suggested by philippeitis","epoch":1583697506,"epoch_utc":null},{"commit":"7ece9ddc1a37551cdaaac50f37a48e6d98b18bf4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 7 17:26:42 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"version bump ls","epoch":1583630802,"epoch_utc":null},{"commit":"7cd048e839a7cc8404fd5abc153a3d315c207819","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 7 17:25:10 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update","epoch":1583630710,"epoch_utc":null},{"commit":"1e22f610a33903e8525d35a18b1dcf760a93791e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 7 17:22:08 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/ls.py"]},"message":"fix for osx - doesn't print 'total xx' line if empty directory (issue #40)","epoch":1583630528,"epoch_utc":null},{"commit":"5249c972ae25e9b289a2667bf471aad5e58c70a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 6 12:09:20 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["changelog.txt"]},"message":"add to changelog","epoch":1583525360,"epoch_utc":null},{"commit":"fd45f856a050f6c56a7a6b50b97b3d8c4de28af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 6 12:09:09 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/history.py"]},"message":"import jc.utils instead of jc","epoch":1583525349,"epoch_utc":null},{"commit":"c8ab40cd33b14a3a1937ecf64bb23e282f5bb921","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 5 09:19:58 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"]},"message":"ignore .github folder","epoch":1583428798,"epoch_utc":null},{"commit":"b2c872925b37254dac74578c1803b4127f8411c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 19:47:03 2020 -0800","stats":{"files_changed":20,"insertions":208,"deletions":220,"files":["tests/test_ls.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_passwd.py","tests/test_pip_list.py","tests/test_ps.py","tests/test_route.py","tests/test_shadow.py","tests/test_ss.py","tests/test_systemctl_lj.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py","tests/test_who.py","tests/test_xml.py","tests/test_yaml.py"]},"message":"add utf-8 encoding for testing on Windows","epoch":1583380023,"epoch_utc":null},{"commit":"f48e229202f8ab1ebfa502ca57bb31cf673c7a62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 19:40:32 2020 -0800","stats":{"files_changed":21,"insertions":192,"deletions":192,"files":["tests/test_arp.py","tests/test_blkid.py","tests/test_crontab.py","tests/test_crontab_u.py","tests/test_csv.py","tests/test_df.py","tests/test_dig.py","tests/test_du.py","tests/test_env.py","tests/test_free.py","tests/test_fstab.py","tests/test_group.py","tests/test_gshadow.py","tests/test_history.py","tests/test_hosts.py","tests/test_id.py","tests/test_ifconfig.py","tests/test_ini.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_last.py"]},"message":"utf-8 open for windows tests","epoch":1583379632,"epoch_utc":null},{"commit":"799fec92c39b1ff0696c6ebb182c4bef66b86e56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 19:33:45 2020 -0800","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["tests/test_pip_show.py","tests/test_systemctl.py"]},"message":"utf-8 for windows support","epoch":1583379225,"epoch_utc":null},{"commit":"87a41c2fcaa395f108b5a5126ed77f7cc7fe5d6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 19:30:30 2020 -0800","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["tests/test_lsblk.py","tests/test_stat.py"]},"message":"add utf-8 to open function","epoch":1583379030,"epoch_utc":null},{"commit":"7f85de0c46cda95d57b9677ba0ca3ea59690e502","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 19:28:21 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"add windows-latest","epoch":1583378901,"epoch_utc":null},{"commit":"13661b19934a74417713e98e3e1e4df6bb0f29ad","merge":"5f798d6 51d5c38","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 16:54:26 2020 -0800","message":"Merge pull request #37 from philippeitis/continuous_integration\n\nEnable Continuous Integration with GitHub Actions.","epoch":1583369666,"epoch_utc":null},{"commit":"51d5c3892d6ff1e2e6ac7c4f3e496e7d9ed4b6a7","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 16:21:06 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"Remove Windows tests, due to lack of support.","epoch":1583367666,"epoch_utc":null},{"commit":"e4eab4641ac15220f2787c5d27b443ab8c718b86","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 16:17:58 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/blkid.py"]},"message":"Change line in blkid.py to trigger CI","epoch":1583367478,"epoch_utc":null},{"commit":"9b148e0ba37e18749d95608e1bac6c090ab83ee2","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 16:16:19 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["requirements.txt"]},"message":"Add requirements.txt","epoch":1583367379,"epoch_utc":null},{"commit":"de28932650d5027e2781011f1243b89f053b241d","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 16:14:03 2020 -0800","stats":{"files_changed":1,"insertions":7,"deletions":6,"files":["jc/parsers/arp.py"]},"message":"Consolidate dictionary into creation, trigger CI","epoch":1583367243,"epoch_utc":null},{"commit":"5f798d603e461d2de5adf74662ba4d4b121f28f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 16:11:14 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/history.py"]},"message":"version bump and ack to philippeitis","epoch":1583367074,"epoch_utc":null},{"commit":"a0757b2dd3fc0f3e26622941d93bd909dae0a1f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 16:07:53 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":5,"files":["jc/parsers/foo.py"]},"message":"optimize line parsing","epoch":1583366873,"epoch_utc":null},{"commit":"498d51b4e802cb40cac58aae1eff1f723bbbd896","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 16:07:32 2020 -0800","stats":{"files_changed":1,"insertions":31,"deletions":0,"files":[".github/workflows/pythonapp.yml"]},"message":"Enable Continuous Integration with GitHub Actions.\n\nThis automatically runs unit tests on various operating systems and Python versions when Python files are modified to ensure that functionality remains correct.","epoch":1583366852,"epoch_utc":null},{"commit":"b06b6bae3f64f591c9075812dc1b632ef6d2da37","merge":"6aa2d5a 0652768","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 16:04:05 2020 -0800","message":"Merge pull request #36 from philippeitis/patch-3\n\nSimplify process() in history.py, avoid list allocation in parse()","epoch":1583366645,"epoch_utc":null},{"commit":"b5eaff21372a58aefb66e5afc5e863db8355fee1","merge":"d75c406 c01bcd3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 15:33:13 2020 -0800","message":"Merge pull request #35 from kellyjonbrazil/revert-34-patch-3\n\nRevert \"Simplify process() in history.py, avoid list allocation in parse()\"","epoch":1583364793,"epoch_utc":null},{"commit":"c01bcd3734382a0c388d9f4041fc888171ca7675","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 15:32:23 2020 -0800","stats":{"files_changed":1,"insertions":25,"deletions":12,"files":["jc/parsers/history.py"]},"message":"Revert \"Simplify process() in history.py, avoid list allocation in parse()\"","epoch":1583364743,"epoch_utc":null},{"commit":"d75c4068caaf4adbe9a39fa452ae867421053673","merge":"d96b3a6 0652768","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 15:31:55 2020 -0800","message":"Merge pull request #34 from philippeitis/patch-3\n\nSimplify process() in history.py, avoid list allocation in parse()","epoch":1583364715,"epoch_utc":null},{"commit":"6aa2d5a3d26f9f00c3334928f6f0e501860433da","merge":"69576f6 a63408c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 15:28:09 2020 -0800","message":"Merge pull request #33 from philippeitis/patch-2\n\nHandle case where only options are passed.","epoch":1583364489,"epoch_utc":null},{"commit":"065276805f0f2dd23a6382f0120ca07e9eae116f","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 13:35:31 2020 -0800","stats":{"files_changed":1,"insertions":12,"deletions":25,"files":["jc/parsers/history.py"]},"message":"Simplify process() in history.py, avoid list allocation in parse()","epoch":1583357731,"epoch_utc":null},{"commit":"a63408c8cf3f99646be2b375f651d6cf417f7ae0","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 13:16:35 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/cli.py"]},"message":"Handle case where only options are passed.","epoch":1583356595,"epoch_utc":null},{"commit":"69576f6bfae073196627a0a39b5ececb8666d25c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 12:03:40 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/cli.py"]},"message":"minor sytax fixes","epoch":1583352220,"epoch_utc":null},{"commit":"19845624e2996da4653efc2f312aceb514feaf5c","merge":"d96b3a6 22ff296","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 11:59:29 2020 -0800","message":"Merge pull request #32 from philippeitis/patch-1\n\nSimplify main(), magic() methods.","epoch":1583351969,"epoch_utc":null},{"commit":"22ff2964e9889587711e779ac24f8f8034212f5e","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 10:33:42 2020 -0800","stats":{"files_changed":1,"insertions":62,"deletions":75,"files":["jc/cli.py"]},"message":"Simplify main(), magic() methods.","epoch":1583346822,"epoch_utc":null},{"commit":"d96b3a65a98bc135d21d4feafc0a43317b5a11fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 08:30:52 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1583339452,"epoch_utc":null},{"commit":"4989445ef4bb8919d9b3b95e2fcee77ca7692aec","merge":"53ee2c3 6770892","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 11:46:09 2020 -0800","message":"Merge pull request #30 from kellyjonbrazil/dev\n\nDev v1.8.0","epoch":1583264769,"epoch_utc":null},{"commit":"6770892acd49aced225dbccf39290f33522c9001","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 11:37:59 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]},"message":"add release notes link","epoch":1583264279,"epoch_utc":null},{"commit":"d4eba8740fc325756f3db96ab37a5383540cbeff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 11:08:52 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"release date 3/3","epoch":1583262532,"epoch_utc":null},{"commit":"9f607605605e47990f97ccfd48fde19a14e036e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 10:54:27 2020 -0800","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["tests/test_group.py","tests/test_gshadow.py"]},"message":"add group and gshadow tests","epoch":1583261667,"epoch_utc":null},{"commit":"0a8f8ac934f040141e6a4eec8cf7170e1ca73294","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:55:43 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"add group and gshadow parsers","epoch":1583258143,"epoch_utc":null},{"commit":"6ae24c82447bcff606e7027dd01b916293b49584","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:55:17 2020 -0800","stats":{"files_changed":10,"insertions":274,"deletions":0,"files":["tests/fixtures/centos-7.7/group.json","tests/fixtures/centos-7.7/group.out","tests/fixtures/centos-7.7/gshadow.json","tests/fixtures/centos-7.7/gshadow.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/group.json","tests/fixtures/osx-10.14.6/group.out","tests/fixtures/ubuntu-18.04/group.json","tests/fixtures/ubuntu-18.04/group.out","tests/fixtures/ubuntu-18.04/gshadow.json"]},"message":"add group and gshadow test fixtures","epoch":1583258117,"epoch_utc":null},{"commit":"d3679082a8c5cff76eb7de67c33fe716a1402182","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:36:16 2020 -0800","stats":{"files_changed":1,"insertions":64,"deletions":0,"files":["README.md"]},"message":"add group and gshadow parsers","epoch":1583256976,"epoch_utc":null},{"commit":"fb08b42dca135705a3759435335d95c898d47f60","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:32:56 2020 -0800","stats":{"files_changed":2,"insertions":21,"deletions":21,"files":["docs/parsers/group.md","jc/parsers/group.py"]},"message":"change 'group_list' to 'members'","epoch":1583256776,"epoch_utc":null},{"commit":"4aeaa9f42a88bf4e05c8780a35cc8c4d83c9b842","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:32:25 2020 -0800","stats":{"files_changed":5,"insertions":316,"deletions":0,"files":["docgen.sh","docs/parsers/gshadow.md","jc/cli.py","jc/parsers/gshadow.py","tests/fixtures/ubuntu-18.04/gshadow.out"]},"message":"add /etc/gshadow parser","epoch":1583256745,"epoch_utc":null},{"commit":"5f5693da048cb4739dc56500c672dc8fbccaaf32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:07:28 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["docs/parsers/csv.md"]},"message":"spelling fix","epoch":1583255248,"epoch_utc":null},{"commit":"5eb0f61727f92a84fb3620e13db072167ef552ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:07:09 2020 -0800","stats":{"files_changed":4,"insertions":333,"deletions":0,"files":["docgen.sh","docs/parsers/group.md","jc/cli.py","jc/parsers/group.py"]},"message":"add /etc/group file parser","epoch":1583255229,"epoch_utc":null},{"commit":"958e998991b1cc61dc1dc341b90cd53f4691cd43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 17:15:05 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/csv.py"]},"message":"formatting","epoch":1583198105,"epoch_utc":null},{"commit":"b78c1509f67fb76d17ac97193a2851d8d9e17f62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 15:06:25 2020 -0800","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/csv.py"]},"message":"try/except dialect detection","epoch":1583190385,"epoch_utc":null},{"commit":"ce184d4d57faa3f1bca5bcaa02da7a5a5d995eb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 15:05:56 2020 -0800","stats":{"files_changed":20,"insertions":24054,"deletions":0,"files":["tests/fixtures/generic/csv-biostats.csv","tests/fixtures/generic/csv-biostats.json","tests/fixtures/generic/csv-cities.csv","tests/fixtures/generic/csv-cities.json","tests/fixtures/generic/csv-deniro.csv","tests/fixtures/generic/csv-deniro.json","tests/fixtures/generic/csv-example.csv","tests/fixtures/generic/csv-example.json","tests/fixtures/generic/csv-flyrna.json","tests/fixtures/generic/csv-flyrna.tsv","tests/fixtures/generic/csv-flyrna2.json","tests/fixtures/generic/csv-flyrna2.tsv","tests/fixtures/generic/csv-homes-pipe.csv","tests/fixtures/generic/csv-homes-pipe.json","tests/fixtures/generic/csv-homes.csv","tests/fixtures/generic/csv-homes.json","tests/fixtures/generic/csv-insurance.csv","tests/fixtures/generic/csv-insurance.json","tests/fixtures/generic/oscar_age_male.csv","tests/test_csv.py"]},"message":"add csv parser tests","epoch":1583190356,"epoch_utc":null},{"commit":"b4c3714ced9ee5cc6a7ef0c59a43cf85e1cb9824","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 14:10:15 2020 -0800","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["README.md"]},"message":"removed [OPTIONS] PARSER syntax. still works but prefer the PARSER [OPTIONS] syntax for better performance","epoch":1583187015,"epoch_utc":null},{"commit":"5b7dfa043864f1a3f34aa4ef5c6554a2dfe185f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 14:07:56 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"formatting","epoch":1583186876,"epoch_utc":null},{"commit":"391a3884765780497dc34e0e9938ff5032c81291","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 14:07:29 2020 -0800","stats":{"files_changed":2,"insertions":49,"deletions":0,"files":["README.md","changelog.txt"]},"message":"doc update","epoch":1583186849,"epoch_utc":null},{"commit":"d9c4e2ed4c0f908f4b63c2376b53ddfd32a0fae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 14:03:58 2020 -0800","stats":{"files_changed":4,"insertions":241,"deletions":0,"files":["docgen.sh","docs/parsers/csv.md","jc/cli.py","jc/parsers/csv.py"]},"message":"add csv file parser","epoch":1583186638,"epoch_utc":null},{"commit":"0c42db38b102987629e40cee2716b826161e6e94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 10:30:12 2020 -0800","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/who.md","jc/parsers/who.py"]},"message":"doc update","epoch":1583173812,"epoch_utc":null},{"commit":"2f9be8bf33f8be5651d06da9d316f7894606df19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 08:32:42 2020 -0800","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/cli.py"]},"message":"simplify usage","epoch":1583166762,"epoch_utc":null},{"commit":"e8c00155e861b9eedfdf37a22912271bec581d62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 07:43:45 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"add -b to warning message","epoch":1583163825,"epoch_utc":null},{"commit":"cc88fdd9ee3951d7ef2aa881cc12f0b7f96aef86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 21:17:50 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"update example","epoch":1583126270,"epoch_utc":null},{"commit":"d9de11ef1d846a9625dad0adb962b864404c90c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 21:16:57 2020 -0800","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["README.md"]},"message":"add another who example","epoch":1583126217,"epoch_utc":null},{"commit":"0ceda97d0968b67b70cdbb68f7a62657e79c9935","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 19:03:27 2020 -0800","stats":{"files_changed":1,"insertions":88,"deletions":0,"files":["tests/test_who.py"]},"message":"who parser tests","epoch":1583118207,"epoch_utc":null},{"commit":"d0dec92ba84640ddc40da7c6faa6568b76757e04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 18:57:51 2020 -0800","stats":{"files_changed":12,"insertions":36,"deletions":0,"files":["tests/fixtures/centos-7.7/who-a.json","tests/fixtures/centos-7.7/who-a.out","tests/fixtures/centos-7.7/who.json","tests/fixtures/centos-7.7/who.out","tests/fixtures/osx-10.14.6/who-a.json","tests/fixtures/osx-10.14.6/who-a.out","tests/fixtures/osx-10.14.6/who.json","tests/fixtures/osx-10.14.6/who.out","tests/fixtures/ubuntu-18.04/who-a.json","tests/fixtures/ubuntu-18.04/who-a.out","tests/fixtures/ubuntu-18.04/who.json","tests/fixtures/ubuntu-18.04/who.out"]},"message":"add who test fixtures","epoch":1583117871,"epoch_utc":null},{"commit":"d420c008d8aaa0879fa5a3f236d81acb506376c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 17:52:14 2020 -0800","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["jc/parsers/who.py"]},"message":"fix for pts lines with no user info","epoch":1583113934,"epoch_utc":null},{"commit":"f0b32db4333477e22cc40de62cf026a6a7aa2eb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 17:39:02 2020 -0800","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","docs/parsers/who.md"]},"message":"who doc update","epoch":1583113142,"epoch_utc":null},{"commit":"bc838eda591473d32b11a885e60ef653925739d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 17:38:51 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/parsers/who.py"]},"message":"fix output for non-extended","epoch":1583113131,"epoch_utc":null},{"commit":"afe55b6af07b74816d33d9555ffaa1c1921dd27a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 17:07:28 2020 -0800","stats":{"files_changed":1,"insertions":46,"deletions":0,"files":["README.md"]},"message":"add who parser","epoch":1583111248,"epoch_utc":null},{"commit":"dd3a3ac302d7b35beef1181e74aed0faf96fd3e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 17:04:06 2020 -0800","stats":{"files_changed":4,"insertions":255,"deletions":9,"files":["changelog.txt","docgen.sh","docs/parsers/who.md","jc/parsers/who.py"]},"message":"doc update and process pid integers","epoch":1583111046,"epoch_utc":null},{"commit":"f9982a79474c1838f37fc0ff88437980b228d7a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 16:49:52 2020 -0800","stats":{"files_changed":1,"insertions":11,"deletions":2,"files":["jc/parsers/who.py"]},"message":"fixes for from and comment fields","epoch":1583110192,"epoch_utc":null},{"commit":"07c1be9e9ad9f62cf76c23788152de8f3530ee16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 16:30:04 2020 -0800","stats":{"files_changed":2,"insertions":170,"deletions":0,"files":["jc/cli.py","jc/parsers/who.py"]},"message":"add who command parser","epoch":1583109004,"epoch_utc":null},{"commit":"f832b88755bfbd3878ec402e603180e6825279be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 10:17:47 2020 -0800","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["tests/test_passwd.py","tests/test_shadow.py"]},"message":"add passwd and shadow tests","epoch":1583086667,"epoch_utc":null},{"commit":"0fac757efca41db062b2f65acc727963c5fb353c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 12:25:41 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"add passwd and shadow parsers","epoch":1583007941,"epoch_utc":null},{"commit":"fc15742065531152f3d5895042eeb806e33a192a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 12:25:22 2020 -0800","stats":{"files_changed":10,"insertions":215,"deletions":0,"files":["tests/fixtures/centos-7.7/passwd.json","tests/fixtures/centos-7.7/passwd.out","tests/fixtures/centos-7.7/shadow.json","tests/fixtures/centos-7.7/shadow.out","tests/fixtures/osx-10.14.6/passwd.json","tests/fixtures/osx-10.14.6/passwd.out","tests/fixtures/ubuntu-18.04/passwd.json","tests/fixtures/ubuntu-18.04/passwd.out","tests/fixtures/ubuntu-18.04/shadow.json","tests/fixtures/ubuntu-18.04/shadow.out"]},"message":"passwd and shadow test fixtures","epoch":1583007922,"epoch_utc":null},{"commit":"6f2466a1319eaa4256ae7a2a0f23b3ff37882d37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 11:56:12 2020 -0800","stats":{"files_changed":1,"insertions":73,"deletions":0,"files":["README.md"]},"message":"update readme with /etc/passwd and /etc/shadow file parsers","epoch":1583006172,"epoch_utc":null},{"commit":"4b90e22f0a9c6790bca62c8314945a7ffc6e267b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 11:50:46 2020 -0800","stats":{"files_changed":2,"insertions":137,"deletions":9,"files":["docs/parsers/shadow.md","jc/parsers/shadow.py"]},"message":"doc update","epoch":1583005846,"epoch_utc":null},{"commit":"c4935687853fb3b079ae42614793cdafe68e124e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 11:46:38 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/passwd.md","jc/parsers/passwd.py"]},"message":"doc fix","epoch":1583005598,"epoch_utc":null},{"commit":"1cdf004b7728901dc137e57b0c8994edfdd6d417","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 11:46:24 2020 -0800","stats":{"files_changed":4,"insertions":190,"deletions":0,"files":["docgen.sh","docs/parsers/shadow.md","jc/cli.py","jc/parsers/shadow.py"]},"message":"add /etc/shadow parser","epoch":1583005584,"epoch_utc":null},{"commit":"a4ea50426184d30cbe849a8f80bfd5c975075c9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 11:33:14 2020 -0800","stats":{"files_changed":4,"insertions":303,"deletions":0,"files":["docgen.sh","docs/parsers/passwd.md","jc/cli.py","jc/parsers/passwd.py"]},"message":"add /etc/passwd parser","epoch":1583004794,"epoch_utc":null},{"commit":"4c2c234c3bf68d1aac66bd4d1f22b9f97e99128d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 15:15:24 2020 -0800","stats":{"files_changed":16,"insertions":673,"deletions":0,"files":["tests/fixtures/centos-7.7/last-w.json","tests/fixtures/centos-7.7/last-w.out","tests/fixtures/centos-7.7/last.json","tests/fixtures/centos-7.7/last.out","tests/fixtures/centos-7.7/lastb.json","tests/fixtures/centos-7.7/lastb.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/last.json","tests/fixtures/osx-10.14.6/last.out","tests/fixtures/ubuntu-18.04/last-w.json","tests/fixtures/ubuntu-18.04/last-w.out","tests/fixtures/ubuntu-18.04/last.json","tests/fixtures/ubuntu-18.04/last.out","tests/fixtures/ubuntu-18.04/lastb.json","tests/fixtures/ubuntu-18.04/lastb.out","tests/test_last.py"]},"message":"add last and lastb tests","epoch":1582931724,"epoch_utc":null},{"commit":"3d4c0f3e89dab6496ff74df350e3238d6625933c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 14:50:29 2020 -0800","stats":{"files_changed":22,"insertions":285,"deletions":0,"files":["tests/fixtures/centos-7.7/blkid-ip-multi.json","tests/fixtures/centos-7.7/blkid-ip-multi.out","tests/fixtures/centos-7.7/blkid-ip-udev-multi.json","tests/fixtures/centos-7.7/blkid-ip-udev-multi.out","tests/fixtures/centos-7.7/blkid-ip-udev.json","tests/fixtures/centos-7.7/blkid-ip-udev.out","tests/fixtures/centos-7.7/blkid-sda2.json","tests/fixtures/centos-7.7/blkid-sda2.out","tests/fixtures/centos-7.7/blkid.json","tests/fixtures/centos-7.7/blkid.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/blkid-ip-multi.json","tests/fixtures/ubuntu-18.04/blkid-ip-multi.out",".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.json",".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.out","tests/fixtures/ubuntu-18.04/blkid-ip-udev.json","tests/fixtures/ubuntu-18.04/blkid-ip-udev.out","tests/fixtures/ubuntu-18.04/blkid-sda2.json","tests/fixtures/ubuntu-18.04/blkid-sda2.out","tests/fixtures/ubuntu-18.04/blkid.json","tests/fixtures/ubuntu-18.04/blkid.out","tests/test_blkid.py"]},"message":"add blkid tests","epoch":1582930229,"epoch_utc":null},{"commit":"52fad02903468c05d2422a340ad8dbcdf18ed475","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 13:31:38 2020 -0800","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"doc update","epoch":1582925498,"epoch_utc":null},{"commit":"9dcabc057c40e345971a08474b5b886e6b60a8de","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 10:57:14 2020 -0800","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/blkid.py"]},"message":"support multi device udev output","epoch":1582916234,"epoch_utc":null},{"commit":"db8c1079ddc25922ab6a20d0f71fb19af38f8092","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 09:54:07 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/blkid.py"]},"message":"use maxsplit=1 in case there are multiple '=' delimiters","epoch":1582912447,"epoch_utc":null},{"commit":"8f954673abdbbd4d9b9da3eacc61b335b4909f89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 09:07:36 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/blkid.py"]},"message":"use shlex split for values within quotations that have spaces","epoch":1582909656,"epoch_utc":null},{"commit":"79522d1c7dd4dec15b75b06dda002752f7d97e36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 08:51:48 2020 -0800","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"doc fixes","epoch":1582908708,"epoch_utc":null},{"commit":"a18bf030794efef125c70a32fe82855e47649b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 08:50:35 2020 -0800","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/parsers/last.py","jc/parsers/ls.py"]},"message":"use raw strings for regular expressions","epoch":1582908635,"epoch_utc":null},{"commit":"c02b6b5d827d26b43db0a3457124714aa2dbbc98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 21:21:19 2020 -0800","stats":{"files_changed":3,"insertions":81,"deletions":1,"files":["README.md","changelog.txt","setup.py"]},"message":"doc updates","epoch":1582867279,"epoch_utc":null},{"commit":"f99b4232848b0d868804acc4125836bfcf475bba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 21:04:24 2020 -0800","stats":{"files_changed":2,"insertions":134,"deletions":29,"files":["docs/parsers/blkid.md","jc/parsers/blkid.py"]},"message":"doc update","epoch":1582866264,"epoch_utc":null},{"commit":"d7d9d45d4fba89e74f7490c463eb26bf20a5d127","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:59:09 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/blkid.py"]},"message":"add missing comma","epoch":1582865949,"epoch_utc":null},{"commit":"90065ec0cdc8c5abc13bc0027f63658dacf3cfb2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:57:22 2020 -0800","stats":{"files_changed":1,"insertions":31,"deletions":26,"files":["jc/parsers/blkid.py"]},"message":"add more integers","epoch":1582865842,"epoch_utc":null},{"commit":"51157ebb867a48332c768bf3086614944aebdb62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:49:14 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/blkid.py"]},"message":"another devname fix","epoch":1582865354,"epoch_utc":null},{"commit":"96d95c79ca0938e326f55f858f8153df9cb49e44","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:47:07 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/blkid.py"]},"message":"devname fix","epoch":1582865227,"epoch_utc":null},{"commit":"e5da34c23306463e8707b15676db0ca53bf66757","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:41:06 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/blkid.py"]},"message":"check if devname key exists before renaming","epoch":1582864866,"epoch_utc":null},{"commit":"f09d657f7728242947db3dc63ff6779d08c37866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:36:19 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/blkid.py"]},"message":"rename devname to device","epoch":1582864579,"epoch_utc":null},{"commit":"0f4b0189f54dc0b3622cd407c5565e53ea111379","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:31:17 2020 -0800","stats":{"files_changed":1,"insertions":35,"deletions":3,"files":["jc/parsers/blkid.py"]},"message":"process integer values","epoch":1582864277,"epoch_utc":null},{"commit":"4666042abb3142e2cfb518db9ffe22d9e608e090","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:21:02 2020 -0800","stats":{"files_changed":4,"insertions":216,"deletions":0,"files":["docgen.sh","docs/parsers/blkid.md","jc/cli.py","jc/parsers/blkid.py"]},"message":"add blkid parser","epoch":1582863662,"epoch_utc":null},{"commit":"027d544c2bb778adc0ee9463832f19b10e099a0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 16:08:56 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"]},"message":"add last and lastb parser","epoch":1582848536,"epoch_utc":null},{"commit":"f1967d0138d27bde864c2400aa75baa8a39bbfde","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 16:08:39 2020 -0800","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/last.py"]},"message":"system_boot fix","epoch":1582848519,"epoch_utc":null},{"commit":"c1d896027dd1ce021e048b3e77eab24ff59d08bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 15:58:12 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/last.py"]},"message":"fix system_boot tty","epoch":1582847892,"epoch_utc":null},{"commit":"5c2d2a66187d32d62b31b7c7f13e502fdb7f9635","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 15:44:36 2020 -0800","stats":{"files_changed":3,"insertions":190,"deletions":6,"files":["docgen.sh","docs/parsers/last.md","jc/parsers/last.py"]},"message":"process function and docs","epoch":1582847076,"epoch_utc":null},{"commit":"997b269b0b7e53a456e2a0bd997ead6c2ae843bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 15:26:09 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/last.py"]},"message":"btmp fix","epoch":1582845969,"epoch_utc":null},{"commit":"61257e7525c25827cb8057ed5c612e54ea9b9637","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 15:14:43 2020 -0800","stats":{"files_changed":2,"insertions":119,"deletions":1,"files":["jc/cli.py","jc/parsers/last.py"]},"message":"add last and lastb parser","epoch":1582845283,"epoch_utc":null},{"commit":"53ee2c36310cb84390ef96644aee6871769151c9","merge":"2ad3167 8bfa0bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 10:59:14 2020 -0800","message":"Merge pull request #29 from kellyjonbrazil/dev\n\nDev v1.7.5","epoch":1582829954,"epoch_utc":null},{"commit":"8bfa0bddec9ff1c21972019467dcf5738ab3afd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 10:50:05 2020 -0800","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to 1.7.5","epoch":1582829405,"epoch_utc":null},{"commit":"ad61e6bc81177a2add7d052bf1ddec5f1b3f2976","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 10:48:09 2020 -0800","stats":{"files_changed":26,"insertions":598,"deletions":133,"files":["tests/fixtures/centos-7.7/ls-R-newlines.json","tests/fixtures/centos-7.7/ls-R-newlines.out","tests/fixtures/centos-7.7/ls-l-newlines.json","tests/fixtures/centos-7.7/ls-l-newlines.out","tests/fixtures/centos-7.7/ls-lR-newlines.json","tests/fixtures/centos-7.7/ls-lR-newlines.out","tests/fixtures/centos-7.7/ls-newlines.json","tests/fixtures/centos-7.7/ls-newlines.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/ls-R-newlines.json","tests/fixtures/osx-10.14.6/ls-R-newlines.out","tests/fixtures/osx-10.14.6/ls-l-newlines.json","tests/fixtures/osx-10.14.6/ls-l-newlines.out","tests/fixtures/osx-10.14.6/ls-lR-newlines.json","tests/fixtures/osx-10.14.6/ls-lR-newlines.out","tests/fixtures/osx-10.14.6/ls-newlines.json","tests/fixtures/osx-10.14.6/ls-newlines.out","tests/fixtures/ubuntu-18.04/ls-R-newlines.json","tests/fixtures/ubuntu-18.04/ls-R-newlines.out","tests/fixtures/ubuntu-18.04/ls-l-newlines.json","tests/fixtures/ubuntu-18.04/ls-l-newlines.out","tests/fixtures/ubuntu-18.04/ls-lR-newlines.json","tests/fixtures/ubuntu-18.04/ls-lR-newlines.out","tests/fixtures/ubuntu-18.04/ls-newlines.json","tests/fixtures/ubuntu-18.04/ls-newlines.out","tests/test_ls.py"]},"message":"add ls tests for filenames with newline characters","epoch":1582829289,"epoch_utc":null},{"commit":"873b5ba8acf599d083d6031b818d5fca83cbca9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 09:36:57 2020 -0800","stats":{"files_changed":1,"insertions":27,"deletions":31,"files":["README.md"]},"message":"move examples to bottom","epoch":1582825017,"epoch_utc":null},{"commit":"6ae50054e2e8c7ca730013b43062eedc230c0ad4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 20:30:44 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"readme update","epoch":1582605044,"epoch_utc":null},{"commit":"22a35f41bf9c404d3532611f5929143d04b10010","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 17:50:56 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/ls.py"]},"message":"move variables to top","epoch":1582595456,"epoch_utc":null},{"commit":"961696c963215a9dab56113ff89f21a6e9739df6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 17:47:31 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/ls.py"]},"message":"add a warning if newlines are detected in naked ls","epoch":1582595251,"epoch_utc":null},{"commit":"c7b7f1a5dcf77a1f4c23ef6bbf5683fd1a055f72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 17:24:56 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"fix for files with newlines in naked ls","epoch":1582593896,"epoch_utc":null},{"commit":"b5a0d650b128d8af81bb14dd5d007349529cb66f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 17:01:33 2020 -0800","stats":{"files_changed":1,"insertions":151,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-newlines.out"]},"message":"ls output with newlines","epoch":1582592493,"epoch_utc":null},{"commit":"573b27946474276592ee7494689ce9a88f5a05f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 17:01:12 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"fixup for filenames that start with a newline character","epoch":1582592472,"epoch_utc":null},{"commit":"116e07f1614b4a45eb58ffcfe20b5efa71c473a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 16:38:29 2020 -0800","stats":{"files_changed":1,"insertions":6,"deletions":7,"files":["jc/parsers/ls.py"]},"message":"fixes for multiple consecutive newlines and trailing newlines in filenames","epoch":1582591109,"epoch_utc":null},{"commit":"964868c8aff99edf37b0db41c7d16f8b84ac4704","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 15:19:43 2020 -0800","stats":{"files_changed":2,"insertions":21,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"add support for newlines in filenames (only with ls -l)","epoch":1582586383,"epoch_utc":null},{"commit":"c8dac32df8102c2b782e87d55bb95ca2d9490185","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 13:05:35 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"readme update","epoch":1582578335,"epoch_utc":null},{"commit":"72a0016bd833699c3819baa899f335f75b8c1943","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 20 15:38:45 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"use link to anchor for Parsers","epoch":1582241925,"epoch_utc":null},{"commit":"2ad316743460bb6620e7ede251e1dc2739b073fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 19 07:12:43 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update doc url","epoch":1582125163,"epoch_utc":null},{"commit":"ddabfaa05c63f886b17e5b4d37cd83fcfdb9b221","merge":"873771d f857523","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 19 07:05:29 2020 -0800","message":"Merge pull request #25 from kellyjonbrazil/dev\n\nDev v1.7.4","epoch":1582124729,"epoch_utc":null},{"commit":"f857523ca756864211b6b18af5a8886e5db200bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 19 07:02:50 2020 -0800","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"bump to version 1.7.4","epoch":1582124570,"epoch_utc":null},{"commit":"00d53858e820f00ba015bc25629100c8e5495221","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 22:57:15 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add note about aliases not being supported","epoch":1582009035,"epoch_utc":null},{"commit":"c008167e660929a91606bb96498cdc113e815f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 22:48:44 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"add time-style=full-iso option to doc","epoch":1582008524,"epoch_utc":null},{"commit":"102344a041e9e0aff8b6d9db1873ba1064f7e895","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 22:32:07 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/ls.py"]},"message":"formatting","epoch":1582007527,"epoch_utc":null},{"commit":"c865298ef3613fe6ce17f41c15209a69940af1ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 22:29:39 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"remove unnecessary enumerate in for loop","epoch":1582007379,"epoch_utc":null},{"commit":"6ac03faf939bcda8930a48a5e832b557813e2129","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 18:58:07 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"Revert \"add ubuntu and centos default ls aliases to magic_commands\"\n\nThis reverts commit 49c2701743706b6cbf0e52b2c7f275e301315189.","epoch":1581994687,"epoch_utc":null},{"commit":"49c2701743706b6cbf0e52b2c7f275e301315189","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 18:55:03 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"add ubuntu and centos default ls aliases to magic_commands","epoch":1581994503,"epoch_utc":null},{"commit":"d1a271b08e64b42be8cec11377b0e18435a0caec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 18:33:55 2020 -0800","stats":{"files_changed":21,"insertions":35333,"deletions":1374,"files":["tests/fixtures/centos-7.7/ls-R.json","tests/fixtures/centos-7.7/ls-R.out","tests/fixtures/centos-7.7/ls-alR.json","tests/fixtures/centos-7.7/ls-alR.out","tests/fixtures/centos-7.7/ls-glob.json","tests/fixtures/centos-7.7/ls-glob.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/ls-R.json","tests/fixtures/osx-10.14.6/ls-R.out","tests/fixtures/osx-10.14.6/ls-alR.json","tests/fixtures/osx-10.14.6/ls-alR.out","tests/fixtures/osx-10.14.6/ls-glob.json","tests/fixtures/osx-10.14.6/ls-glob.out","tests/fixtures/ubuntu-18.04/ls-R.json","tests/fixtures/ubuntu-18.04/ls-R.out","tests/fixtures/ubuntu-18.04/ls-alR.json","tests/fixtures/ubuntu-18.04/ls-alR.out","tests/fixtures/ubuntu-18.04/ls-glob.json","tests/fixtures/ubuntu-18.04/ls-glob.out","tests/fixtures/ubuntu-18.04/ls-lR.out","tests/test_ls.py"]},"message":"add new ls tests for recursive and multiple directories with glob","epoch":1581993235,"epoch_utc":null},{"commit":"7388ad19b9d252d3e66659e4bc37171cef2a9748","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 17:31:15 2020 -0800","stats":{"files_changed":4,"insertions":6,"deletions":4,"files":["docs/parsers/ls.md","jc/cli.py","jc/parsers/ls.py","setup.py"]},"message":"bump to v1.8.0","epoch":1581989475,"epoch_utc":null},{"commit":"2e63cb5fadd032c7cb54a618e8b374ee853abcca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 17:16:34 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"version bump ls to 1.1","epoch":1581988594,"epoch_utc":null},{"commit":"e7f14d02b12c7dcba309f2d28a0f171769d1ba37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 17:14:27 2020 -0800","stats":{"files_changed":3,"insertions":1438,"deletions":8,"files":["jc/parsers/ls.py","tests/fixtures/ubuntu-18.04/ls-R.out","tests/fixtures/ubuntu-18.04/ls-lR.out"]},"message":"update ls to allow multi directory (glob and -R). Adds 'parent' key if found","epoch":1581988467,"epoch_utc":null},{"commit":"873771d05ab0b77163c95d2c37e11edf38451832","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 09:16:32 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting","epoch":1581959792,"epoch_utc":null},{"commit":"d7de122e36e0698e00f321fbac8dc0b543cf9e8a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 14 09:44:24 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"prettify link","epoch":1581702264,"epoch_utc":null},{"commit":"4ef0434f536c6658ddc2b48a3db113df2fd26000","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 14 09:43:02 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["README.md"]},"message":"formatting update","epoch":1581702182,"epoch_utc":null},{"commit":"1aa2c9925996f2358b6272547db755ec3098a8a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 22:10:22 2020 -0800","stats":{"files_changed":2,"insertions":1,"deletions":2,"files":["README.md","jc/parsers/history.py"]},"message":"removed history from magic syntax","epoch":1581660622,"epoch_utc":null},{"commit":"c2450b27b079b02ed3f4ece9e36547f01cd4b139","merge":"028e136 14d6d8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 21:26:18 2020 -0500","message":"Merge pull request #22 from kellyjonbrazil/dev\n\nDev 1.7.3","epoch":1581657978,"epoch_utc":null},{"commit":"14d6d8b84f0ddeff984aff486e2e697a91ac6fb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 18:24:53 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump to 1.7.3","epoch":1581647093,"epoch_utc":null},{"commit":"f0e3846c038ec5507cd4a19980d83ee0fb969ef5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 18:20:22 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["README.md"]},"message":"formatting","epoch":1581646822,"epoch_utc":null},{"commit":"6ba64f1128373843b068226424a3af545ac9d22c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 18:19:19 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":2,"files":["README.md"]},"message":"usage update","epoch":1581646759,"epoch_utc":null},{"commit":"13bcdbc6c9a81bc5d52fe7a84e6a0a34908db8bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 17:50:51 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"doc update","epoch":1581645051,"epoch_utc":null},{"commit":"cfba62db20674d788601354211a10e2b1675a0c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 17:48:21 2020 -0800","stats":{"files_changed":1,"insertions":13,"deletions":6,"files":["jc/cli.py"]},"message":"correct parser search in magic()","epoch":1581644901,"epoch_utc":null},{"commit":"18fb69e36e303a3f9530dcb80354b25bfdbb931d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 17:29:45 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"docs/parsers link","epoch":1581643785,"epoch_utc":null},{"commit":"474eb0f3fdeaa612e189d745b12a5ed9c6e0a31b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 17:24:10 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"doc updates","epoch":1581643450,"epoch_utc":null},{"commit":"7f47b533701e60449351d5da03cd5960e0dec9ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 17:20:00 2020 -0800","stats":{"files_changed":1,"insertions":90,"deletions":68,"files":["README.md"]},"message":"add alternate magic syntax","epoch":1581643200,"epoch_utc":null},{"commit":"dc2907d3ce101043b30bcce71abb4bb02897f43a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 16:58:25 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["docs/parsers/crontab.md"]},"message":"doc update","epoch":1581641905,"epoch_utc":null},{"commit":"1af85811e06c489051c456918284a746ce12c692","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 16:57:57 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/fstab.py"]},"message":"remove magic_command info","epoch":1581641877,"epoch_utc":null},{"commit":"1c1b19a478fe5c356a93cd165518429e77fcbdf0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 16:57:30 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab.py"]},"message":"doc update","epoch":1581641850,"epoch_utc":null},{"commit":"66942d64babf932faeb887eb4ec0cab32829321a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 16:56:48 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["changelog.txt"]},"message":"changelog update","epoch":1581641808,"epoch_utc":null},{"commit":"2fb6ae08d76e7a5727b2fcdd5def3e3822e0cf72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 12:17:41 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"]},"message":"fix shlex usage","epoch":1581625061,"epoch_utc":null},{"commit":"bf8811e03e2a5b736f4c084f42400fcde400ff3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 10:25:41 2020 -0500","stats":{"files_changed":1,"insertions":6,"deletions":3,"files":["jc/cli.py"]},"message":"add comments","epoch":1581618341,"epoch_utc":null},{"commit":"c8b502c571d3081ca3086e349a426ca252a3bb84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 10:14:32 2020 -0500","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/cli.py"]},"message":"remove unnecessary join and add comments","epoch":1581617672,"epoch_utc":null},{"commit":"81c11a975c6ee66a1f83350df8b065a6b07dcc9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 10:08:43 2020 -0500","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/cli.py"]},"message":"added docstrings","epoch":1581617323,"epoch_utc":null},{"commit":"0d370eb403ab4d9ed11e36776efc08bdd3505c1a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 10:03:11 2020 -0500","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"doc update","epoch":1581616991,"epoch_utc":null},{"commit":"7492c3f1e312cdb0c58c2077db0d60d2cab1e58f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 09:48:42 2020 -0500","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"changelog update","epoch":1581616122,"epoch_utc":null},{"commit":"515a8a84b79c9bf6f3001d3c52faa82a6709b8d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 09:47:40 2020 -0500","stats":{"files_changed":33,"insertions":33,"deletions":33,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add \"command\" to description","epoch":1581616060,"epoch_utc":null},{"commit":"dd6680efb2b15bb8ed676016aae1c65193dfe147","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 09:47:16 2020 -0500","stats":{"files_changed":2,"insertions":29,"deletions":14,"files":["changelog.txt","jc/cli.py"]},"message":"allow condensed options (-prdq is equivalent to -p -r -d -q)","epoch":1581616036,"epoch_utc":null},{"commit":"a7158373cd225685f5c398fa36b8d5208e20521c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 12 00:16:17 2020 -0500","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"comment update","epoch":1581495377,"epoch_utc":null},{"commit":"6d50ec71997cac9c898737de93b8a945f0351e53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 12 00:11:48 2020 -0500","stats":{"files_changed":1,"insertions":9,"deletions":6,"files":["jc/cli.py"]},"message":"add try/except to fix bare jc command condition","epoch":1581495108,"epoch_utc":null},{"commit":"95dbf98e8e03486f74d986683f52699f4f9c9577","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 11 19:14:51 2020 -0800","stats":{"files_changed":1,"insertions":26,"deletions":6,"files":["jc/cli.py"]},"message":"allow options in magic syntax","epoch":1581477291,"epoch_utc":null},{"commit":"d49323e4ebf2a8aebd1d8ea65ef0854ee8bcb29f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 11 18:09:21 2020 -0800","stats":{"files_changed":33,"insertions":33,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add magic_commands list to info","epoch":1581473361,"epoch_utc":null},{"commit":"08c1e2aec9d6bb68653dc12ba2272535fb7cef09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 11 18:08:59 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"]},"message":"add magic syntax","epoch":1581473339,"epoch_utc":null},{"commit":"a2c137df2e6d3b133df5df0bb3f9b1ca69990557","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 11 18:08:37 2020 -0800","stats":{"files_changed":2,"insertions":66,"deletions":299,"files":["jc/cli.py","jc/cli.py.old"]},"message":"better magic command syntax logic using introspection information from parser modules","epoch":1581473317,"epoch_utc":null},{"commit":"fe27dcdb8f72b5a288f978b87be2eb930099543e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 11 12:16:23 2020 -0800","stats":{"files_changed":2,"insertions":319,"deletions":45,"files":["jc/cli.py","jc/cli.py.old"]},"message":"proof of concept for magic syntax (e.g. jc ls -al)","epoch":1581452183,"epoch_utc":null},{"commit":"028e136161ac15f588845f87907b4565a6ee7be2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 8 12:46:42 2020 -0800","stats":{"files_changed":4,"insertions":7,"deletions":2,"files":["MANIFEST.in","changelog.txt","jc/cli.py","setup.py"]},"message":"bump to 1.7.2: add test fixtures to package","epoch":1581194802,"epoch_utc":null},{"commit":"9a85a0a4d504447b32fb622bb17cebc5e47f687f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 8 12:46:14 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/crontab_u.md","jc/parsers/crontab_u.py"]},"message":"fix doc","epoch":1581194774,"epoch_utc":null},{"commit":"3a1cbc4d5063344c3e3a4bf510d651a36beedfb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 22:26:47 2020 -0800","stats":{"files_changed":1,"insertions":14,"deletions":14,"files":["jc/cli.py"]},"message":"move info class to top","epoch":1580970407,"epoch_utc":null},{"commit":"77d334f7f386f79ec0571325500054fdab207f31","merge":"4de8f42 53cdf86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:59:52 2020 -0800","message":"Merge pull request #19 from kellyjonbrazil/dev-1.7.1\n\nDev v1.7.1","epoch":1580950792,"epoch_utc":null},{"commit":"53cdf863acc72dbdb671773e30277f42e9eadc0e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:53:17 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["changelog.txt"]},"message":"changelog update","epoch":1580950397,"epoch_utc":null},{"commit":"7b7e7fe0fe92edef1e559bd7ae8272530d7ed5c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:50:55 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"changelog update","epoch":1580950255,"epoch_utc":null},{"commit":"0c03132847a3d2bcbdb0b743e1472865916cced4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:18:58 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"fix error codes using sys.exit()","epoch":1580948338,"epoch_utc":null},{"commit":"3b81f7e2a1381958b33962d4531f3fa223c6a83e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:12:09 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"exit code on ctrl-c exit","epoch":1580947929,"epoch_utc":null},{"commit":"3d76437b435660e92633c604c4ad32ee0500a28b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:00:23 2020 -0800","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ini.md","docs/parsers/xml.md","jc/parsers/ini.py","jc/parsers/xml.py"]},"message":"doc fix","epoch":1580947223,"epoch_utc":null},{"commit":"4bc54c78cea48682ed0432ea56460a26a0e52f83","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:00:10 2020 -0800","stats":{"files_changed":4,"insertions":7,"deletions":7,"files":["docs/parsers/du.md","docs/parsers/history.md","jc/parsers/du.py","jc/parsers/history.py"]},"message":"fix compatibility list","epoch":1580947210,"epoch_utc":null},{"commit":"3d303a96b9f6d582b1e99a632da539c3bee4df7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 15:52:39 2020 -0800","stats":{"files_changed":5,"insertions":16,"deletions":2,"files":["tests/fixtures/centos-7.7/crontab-u.json","tests/fixtures/centos-7.7/{crontab2.out => crontab-u.out}","tests/fixtures/centos-7.7/crontab.json","tests/fixtures/ubuntu-18.04/crontab-u.json","tests/test_crontab_u.py"]},"message":"crontab bug fix and tests","epoch":1580946759,"epoch_utc":null},{"commit":"33c99d031d18e52a8ca85dfc1a8cba0acebfc3bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 15:12:59 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/crontab.py"]},"message":"fix line clobbering bug","epoch":1580944379,"epoch_utc":null},{"commit":"caf7e9f69a22f3c9b3d4624fd2238d6e54d932ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 15:11:51 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/crontab_u.py"]},"message":"fix line clobbering bug and add user field to shortcuts","epoch":1580944311,"epoch_utc":null},{"commit":"9449f1f5d5e7bc075549549758af5cc3a6c4524f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 14:44:49 2020 -0800","stats":{"files_changed":4,"insertions":9,"deletions":3,"files":["changelog.txt","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/fixtures/centos-7.7/crontab2.out"]},"message":"crontab bugfix: inserting header row was clobbering the first data row","epoch":1580942689,"epoch_utc":null},{"commit":"6bad164b5e2a5b7c7ce82c69b6c091fc079ab2fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 14:10:22 2020 -0800","stats":{"files_changed":1,"insertions":7,"deletions":9,"files":["jc/cli.py"]},"message":"simplify by removing unnecessary getattr calls","epoch":1580940622,"epoch_utc":null},{"commit":"bb5ba7ddb146821db2efe095b6de5ae5b72bb335","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 13:57:34 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/cli.py"]},"message":"add indent variable to helptext","epoch":1580939854,"epoch_utc":null},{"commit":"8b2e01d5404649e8f94c81ca3b5fa05fe8962220","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 13:50:12 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"doc update","epoch":1580939412,"epoch_utc":null},{"commit":"ff1159b1deb9b870382a6066166961902679b569","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 11:45:17 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"exit codes on error","epoch":1580931917,"epoch_utc":null},{"commit":"a2fd3202a0a3df336792f167c546ea3e53ea2332","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 11:34:33 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/pip_list.py","jc/parsers/pip_show.py"]},"message":"description formatting change","epoch":1580931273,"epoch_utc":null},{"commit":"7b53715b91787a8885d61ddc0079c7ee8f9348a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 11:08:58 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/crontab_u.py"]},"message":"change description","epoch":1580929738,"epoch_utc":null},{"commit":"e05fc0a5107b348af14ff4bea39d274939fab7dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 11:08:47 2020 -0800","stats":{"files_changed":1,"insertions":8,"deletions":8,"files":["jc/cli.py"]},"message":"change padding of helptext","epoch":1580929727,"epoch_utc":null},{"commit":"43604c33f654b8c19e8cce387ebbf31bd598b73b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 10:59:51 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]},"message":"doc update","epoch":1580929191,"epoch_utc":null},{"commit":"eb67c484ff2a9530b434cd6a90c160f6936e1de7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 10:58:26 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"add crontab-u to parsers list","epoch":1580929106,"epoch_utc":null},{"commit":"a7b7bdd46781d07e6e70d74a41a3944855fde5fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 10:55:08 2020 -0800","stats":{"files_changed":1,"insertions":94,"deletions":92,"files":["jc/cli.py"]},"message":"load parser modules 'just in time' so we don't need to load all modules at startup","epoch":1580928908,"epoch_utc":null},{"commit":"ab06989a18faf5378f1e73c7016ea02e1218ff9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:46:52 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["README.md"]},"message":"description updates","epoch":1580881612,"epoch_utc":null},{"commit":"657b722f947b6a0aa7e52a786e4c84f177e9a5c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:44:10 2020 -0800","stats":{"files_changed":4,"insertions":8,"deletions":8,"files":["README.md","changelog.txt","docs/parsers/ini.md","jc/parsers/ini.py"]},"message":"ini to INI","epoch":1580881450,"epoch_utc":null},{"commit":"dd2aecad2787186b3962723086bb7e13eff4874f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:37:07 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"description update","epoch":1580881027,"epoch_utc":null},{"commit":"c82c5c5c648384eb5a54205ba8590624a3ab4375","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:34:57 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["changelog.txt"]},"message":"changelog update","epoch":1580880897,"epoch_utc":null},{"commit":"a1761cd68f91e2668d8d7e2fa7774f6496408be6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:25:33 2020 -0800","stats":{"files_changed":3,"insertions":42,"deletions":0,"files":["tests/fixtures/centos-7.7/id.json","tests/fixtures/osx-10.14.6/id.json","tests/test_id.py"]},"message":"id tests","epoch":1580880333,"epoch_utc":null},{"commit":"d618a7f583629bb7a7fc0854e7349cab07e3e003","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:17:03 2020 -0800","stats":{"files_changed":4,"insertions":143,"deletions":9,"files":["README.md","docgen.sh","docs/parsers/id.md","jc/parsers/id.py"]},"message":"doc update","epoch":1580879823,"epoch_utc":null},{"commit":"831a42f66096f5efbbf0f6882970c328120f9c9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:12:32 2020 -0800","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["README.md"]},"message":"id formatting","epoch":1580879552,"epoch_utc":null},{"commit":"3b36022e5a1056a28a83494b1ab8fab209399c2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:09:42 2020 -0800","stats":{"files_changed":5,"insertions":250,"deletions":1,"files":["README.md","jc/cli.py","jc/parsers/id.py","tests/fixtures/centos-7.7/id.out","tests/fixtures/osx-10.14.6/id.out"]},"message":"add id parser","epoch":1580879382,"epoch_utc":null},{"commit":"d01dfa25f10f82cd201ae7b4c9cc18313773f8d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 15:22:36 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["changelog.txt"]},"message":"changelog updates","epoch":1580858556,"epoch_utc":null},{"commit":"395a99037b4816eb800b289f90372a9b8d7d36cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:36:03 2020 -0800","stats":{"files_changed":3,"insertions":89,"deletions":13,"files":["README.md","docs/parsers/history.md","jc/parsers/history.py"]},"message":"crontab-u and history doc updates","epoch":1580855763,"epoch_utc":null},{"commit":"025986c51d2d4869b17de63a7dd96efa2988e3c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:31:28 2020 -0800","stats":{"files_changed":3,"insertions":13,"deletions":3,"files":["jc/parsers/history.py","tests/fixtures/centos-7.7/history.json","tests/fixtures/ubuntu-18.04/history.json"]},"message":"change history 'line' to integer","epoch":1580855488,"epoch_utc":null},{"commit":"c56b83093ff05f55ef4643c1731cff61d4b9e8ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:19:33 2020 -0800","stats":{"files_changed":3,"insertions":202,"deletions":2,"files":["docgen.sh","docs/parsers/crontab.md","docs/parsers/crontab_u.md"]},"message":"doc update","epoch":1580854773,"epoch_utc":null},{"commit":"7c712a4133abd843d4da926e4c8d548abd1d6fa3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:18:14 2020 -0800","stats":{"files_changed":1,"insertions":52,"deletions":50,"files":["jc/parsers/crontab_u.py"]},"message":"doc update","epoch":1580854694,"epoch_utc":null},{"commit":"9a0cfe6dfa4888f435d35bd2d35126d031a556d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:18:01 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/crontab.py"]},"message":"minor formatting","epoch":1580854681,"epoch_utc":null},{"commit":"a116cdbcec1b27192dd0f9f4707629353edb3caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:11:34 2020 -0800","stats":{"files_changed":5,"insertions":29,"deletions":13,"files":["tests/fixtures/ubuntu-18.04/crontab-u.json",".../ubuntu-18.04/{crontab.out => crontab-u.out}","tests/fixtures/ubuntu-18.04/crontab.json","tests/test_crontab.py","tests/test_crontab_u.py"]},"message":"tests for crontab-u","epoch":1580854294,"epoch_utc":null},{"commit":"f2d616c98e049cdac5d667e63723f92110419a1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:02:27 2020 -0800","stats":{"files_changed":3,"insertions":272,"deletions":0,"files":["changelog.txt","jc/cli.py","jc/parsers/crontab_u.py"]},"message":"add crontab with user parser","epoch":1580853747,"epoch_utc":null},{"commit":"42cbd1777dbacc614d75f67f3f9156f72be46532","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 13:53:45 2020 -0800","stats":{"files_changed":2,"insertions":80,"deletions":0,"files":["tests/test_xml.py","tests/test_yaml.py"]},"message":"add xml and yaml tests","epoch":1580853225,"epoch_utc":null},{"commit":"ebf375aac0473249cfd212068f6e6e33cc42449a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 12:18:31 2020 -0800","stats":{"files_changed":1,"insertions":40,"deletions":0,"files":["tests/test_ini.py"]},"message":"add ini tests","epoch":1580847511,"epoch_utc":null},{"commit":"1f9050267eeb870c4c0f50000fc32985c4d8535b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 12:02:18 2020 -0800","stats":{"files_changed":12,"insertions":586,"deletions":0,"files":["tests/fixtures/generic/ini-iptelserver.ini","tests/fixtures/generic/ini-iptelserver.json","tests/fixtures/generic/ini-test.ini","tests/fixtures/generic/ini-test.json","tests/fixtures/generic/xml-cd_catalog.json","tests/fixtures/generic/xml-cd_catalog.xml","tests/fixtures/generic/xml-foodmenu.json","tests/fixtures/generic/xml-foodmenu.xml","tests/fixtures/generic/yaml-istio-sc.json","tests/fixtures/generic/yaml-istio-sc.yaml","tests/fixtures/generic/yaml-istio-sidecar.json","tests/fixtures/generic/yaml-istio-sidecar.yaml"]},"message":"add ini, xml, and yaml test files","epoch":1580846538,"epoch_utc":null},{"commit":"d7f9707a1521719ce051140b1a0b4ced7c5114c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 11:18:32 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/ini.py","jc/parsers/yaml.py"]},"message":"minor formatting","epoch":1580843912,"epoch_utc":null},{"commit":"ab589ee3ed09b9d5e09d8c046f3a64cd2bd14c98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 11:18:15 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/cli.py"]},"message":"add __version__ variable","epoch":1580843895,"epoch_utc":null},{"commit":"c84ec0361fc4c877c698378b28ff9e8b502793b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 22:25:30 2020 -0800","stats":{"files_changed":4,"insertions":105,"deletions":3,"files":["README.md","docgen.sh","docs/parsers/xml.md","jc/parsers/xml.py"]},"message":"xml example update","epoch":1580797530,"epoch_utc":null},{"commit":"47d2f8968a8a9b68fc9fff45985f5e69f1a5cc40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 22:21:40 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","changelog.txt"]},"message":"doc update","epoch":1580797300,"epoch_utc":null},{"commit":"019c480bcce7fe3821b75906fc673ce7bb1ffadc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 22:17:13 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"update acknowledgments","epoch":1580797033,"epoch_utc":null},{"commit":"547c6d3d5956984d3c4fb5c2a1b76a595752b467","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 22:13:06 2020 -0800","stats":{"files_changed":5,"insertions":172,"deletions":2,"files":["README.md","changelog.txt","jc/cli.py","jc/parsers/xml.py","setup.py"]},"message":"add xml parser","epoch":1580796786,"epoch_utc":null},{"commit":"b5ebf8b76afcd0e0190994048fe1f5b53f654451","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 21:41:53 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add ruamel.yaml ack","epoch":1580794913,"epoch_utc":null},{"commit":"c690e328f23a69f592dfaaa949b74ba2190ad376","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 21:38:21 2020 -0800","stats":{"files_changed":2,"insertions":102,"deletions":14,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"]},"message":"add examples","epoch":1580794701,"epoch_utc":null},{"commit":"cbb92c1a9517234806f1c54398a69645b6f43669","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 21:38:08 2020 -0800","stats":{"files_changed":1,"insertions":94,"deletions":0,"files":["README.md"]},"message":"add ini and yaml","epoch":1580794688,"epoch_utc":null},{"commit":"beb41997c9b3797e73a678ec1bcddcfb83b5ef0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 21:28:11 2020 -0800","stats":{"files_changed":3,"insertions":91,"deletions":2,"files":["docgen.sh","docs/parsers/ini.md","jc/parsers/ini.py"]},"message":"doc update","epoch":1580794091,"epoch_utc":null},{"commit":"755a6faf1110f150fe2261b81439b7d17a9b424e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 21:22:30 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":8,"files":["jc/parsers/yaml.py"]},"message":"clean up multi-document support","epoch":1580793750,"epoch_utc":null},{"commit":"021f8350a31a49ecc539f02576303600b222b49d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 19:11:36 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["changelog.txt"]},"message":"update doc","epoch":1580785896,"epoch_utc":null},{"commit":"76583dcd2f5ef32e58ca87149154563b07e061cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 19:07:31 2020 -0800","stats":{"files_changed":2,"insertions":113,"deletions":0,"files":["jc/cli.py","jc/parsers/ini.py"]},"message":"add ini file parser","epoch":1580785651,"epoch_utc":null},{"commit":"bf033239a706c42be3d7508c58a51c542f8a69b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 16:20:38 2020 -0800","stats":{"files_changed":2,"insertions":82,"deletions":7,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"]},"message":"doc update","epoch":1580775638,"epoch_utc":null},{"commit":"eb37fccd37fd625f701a14b6cfcf30e9f0bbff4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 16:17:29 2020 -0800","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/yaml.py"]},"message":"doc update","epoch":1580775449,"epoch_utc":null},{"commit":"d04ad453319fe45e302da87f970d2ac0806fae1a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 16:12:45 2020 -0800","stats":{"files_changed":3,"insertions":7,"deletions":2,"files":["changelog.txt","docgen.sh","setup.py"]},"message":"setup for 1.7.1","epoch":1580775165,"epoch_utc":null},{"commit":"db157b8ca7f7fa935676bafeaafdfd9818a89e6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 16:12:32 2020 -0800","stats":{"files_changed":2,"insertions":94,"deletions":2,"files":["jc/cli.py","jc/parsers/yaml.py"]},"message":"add yaml file parser","epoch":1580775152,"epoch_utc":null},{"commit":"68f277bb2081eb2cba14ffe7f0ee1ee0a982335b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 16:11:58 2020 -0800","stats":{"files_changed":33,"insertions":99,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add __version__","epoch":1580775118,"epoch_utc":null},{"commit":"4de8f42664379570392552796e34324abb39fdc2","merge":"6633d92 4f11855","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 12:11:13 2019 -0800","message":"Merge pull request #17 from kellyjonbrazil/dev\n\nDev v1.6.1","epoch":1576613473,"epoch_utc":null},{"commit":"4f118559356edc1da866e1bec80830e7a75a0b26","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 12:09:24 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["changelog.txt"]},"message":"update version info","epoch":1576613364,"epoch_utc":null},{"commit":"2b9a5fcc32f85295faa55410efcaf142c42bd167","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 12:05:40 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["setup.py"]},"message":"update version","epoch":1576613140,"epoch_utc":null},{"commit":"224948d1f23e01b7cd968820529579792f862f0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 11:44:43 2019 -0800","stats":{"files_changed":21,"insertions":428,"deletions":0,"files":["tests/fixtures/centos-7.7/pip-list.json","tests/fixtures/centos-7.7/pip-list.out","tests/fixtures/centos-7.7/pip-show.json","tests/fixtures/centos-7.7/pip-show.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.11.6/pip-list.json","tests/fixtures/osx-10.11.6/pip-list.out","tests/fixtures/osx-10.11.6/pip-show.json","tests/fixtures/osx-10.11.6/pip-show.out","tests/fixtures/osx-10.14.6/pip-list.json","tests/fixtures/osx-10.14.6/pip-list.out","tests/fixtures/osx-10.14.6/pip-show.json","tests/fixtures/osx-10.14.6/pip-show.out","tests/fixtures/ubuntu-18.04/pip-list-legacy.json","tests/fixtures/ubuntu-18.04/pip-list-legacy.out","tests/fixtures/ubuntu-18.04/pip-list.json","tests/fixtures/ubuntu-18.04/pip-list.out","tests/fixtures/ubuntu-18.04/pip-show.json","tests/fixtures/ubuntu-18.04/pip-show.out","tests/test_pip_list.py","tests/test_pip_show.py"]},"message":"pip list and pip show tests","epoch":1576611883,"epoch_utc":null},{"commit":"36f2812d5a7a94c412e098233c026d99d5205b60","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 10:58:00 2019 -0800","stats":{"files_changed":1,"insertions":15,"deletions":7,"files":["jc/parsers/pip_list.py"]},"message":"add support for legacy output","epoch":1576609080,"epoch_utc":null},{"commit":"be06aa2b31c057c56229e75c7fa70052b83053ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 10:09:19 2019 -0800","stats":{"files_changed":65,"insertions":70,"deletions":66,"files":["docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"update parse() Return info","epoch":1576606159,"epoch_utc":null},{"commit":"41f8e3aba268ca0cd09931a04368615425c1aec8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 09:56:09 2019 -0800","stats":{"files_changed":65,"insertions":67,"deletions":65,"files":["docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"update Return info","epoch":1576605369,"epoch_utc":null},{"commit":"093c0df8978ace842af5258f9aff72c63c6f843d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 09:38:50 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["README.md"]},"message":"schema info","epoch":1576604330,"epoch_utc":null},{"commit":"37afc7dc8ae30342d01f3f72e73646fa60bb5294","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 09:35:27 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["README.md"]},"message":"updte todo and compatibility","epoch":1576604127,"epoch_utc":null},{"commit":"efbf3549606fc77f8c16587ff04a0c316dfe5c00","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 09:24:08 2019 -0800","stats":{"files_changed":4,"insertions":126,"deletions":12,"files":["README.md","docgen.sh","docs/parsers/pip_show.md","jc/parsers/pip_show.py"]},"message":"doc update for pip show","epoch":1576603448,"epoch_utc":null},{"commit":"5e39fe0d8044787389d8f206f3c863d4bdf1e2ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 09:20:26 2019 -0800","stats":{"files_changed":1,"insertions":64,"deletions":5,"files":["jc/parsers/pip_show.py"]},"message":"pip show parser working","epoch":1576603226,"epoch_utc":null},{"commit":"47328dc65969f149c8f027286774ff0847c18add","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 19:09:14 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"]},"message":"add pip-show parser","epoch":1576552154,"epoch_utc":null},{"commit":"addeef50ba54f536855544937a6c98135ae5cd51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 19:07:51 2019 -0800","stats":{"files_changed":1,"insertions":84,"deletions":0,"files":["jc/parsers/pip_show.py"]},"message":"initial pip show parser add","epoch":1576552071,"epoch_utc":null},{"commit":"ad338cc5b50a178091c47cbea9a1db135a7fb678","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:58:33 2019 -0800","stats":{"files_changed":2,"insertions":56,"deletions":42,"files":["docs/parsers/crontab.md","jc/parsers/crontab.py"]},"message":"schema doc update","epoch":1576551513,"epoch_utc":null},{"commit":"202bc8201e31fd453c682265347b4e2ac2d41718","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:54:19 2019 -0800","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["README.md","docs/parsers/crontab.md","jc/parsers/crontab.py"]},"message":"doc update","epoch":1576551259,"epoch_utc":null},{"commit":"5ff99de405fbd8f79f9c2e301ac27184e0aba6fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:40:08 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add argument to parser info","epoch":1576550408,"epoch_utc":null},{"commit":"86ebe2cf9c6b336eacf217393c3c3c324ee29ec0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:36:13 2019 -0800","stats":{"files_changed":6,"insertions":205,"deletions":1,"files":["README.md","docgen.sh","docs/parsers/crontab.md","docs/parsers/pip_list.md","jc/cli.py","jc/parsers/pip_list.py"]},"message":"initial add of pip list parser","epoch":1576550173,"epoch_utc":null},{"commit":"facf0b399c608d33f6a454ee24fd49fc62471742","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:09:29 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/crontab.py"]},"message":"add osx to campatible","epoch":1576548569,"epoch_utc":null},{"commit":"33db7b0bcb0f24979cad6e173737d75c8ed301af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:09:00 2019 -0800","stats":{"files_changed":4,"insertions":57,"deletions":0,"files":["tests/fixtures/centos-7.7/crontab.json","tests/fixtures/ubuntu-18.04/crontab.json","tests/fixtures/ubuntu-18.04/crontab.out","tests/test_crontab.py"]},"message":"add crontab tests","epoch":1576548540,"epoch_utc":null},{"commit":"663d07bca1181024d9d08b940237c52197c91729","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 17:52:09 2019 -0800","stats":{"files_changed":2,"insertions":191,"deletions":0,"files":["docgen.sh","docs/parsers/crontab.md"]},"message":"add crontab","epoch":1576547529,"epoch_utc":null},{"commit":"ba04e4997fcb28adbee446f633c121f1585b9f2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 17:51:11 2019 -0800","stats":{"files_changed":1,"insertions":113,"deletions":4,"files":["jc/parsers/crontab.py"]},"message":"update docs","epoch":1576547471,"epoch_utc":null},{"commit":"c4fee1b658c91afa2abdd746af6c1b4697c44b35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 17:50:52 2019 -0800","stats":{"files_changed":1,"insertions":72,"deletions":1,"files":["README.md"]},"message":"add crontab parser","epoch":1576547452,"epoch_utc":null},{"commit":"99b92a15bbebc5568f4455f388f945613c4a2759","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 17:45:34 2019 -0800","stats":{"files_changed":2,"insertions":37,"deletions":14,"files":["jc/parsers/crontab.py","tests/fixtures/centos-7.7/crontab.out"]},"message":"support shortcut schedules","epoch":1576547134,"epoch_utc":null},{"commit":"b076ab5b57a6a59db096485e5ff4eb9f91bae8be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 17:01:53 2019 -0800","stats":{"files_changed":3,"insertions":177,"deletions":0,"files":["jc/cli.py","jc/parsers/crontab.py","tests/fixtures/centos-7.7/crontab.out"]},"message":"initial crontab parser","epoch":1576544513,"epoch_utc":null},{"commit":"687759f75d0e80e81746a84f051e55cfdc870447","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 14:31:21 2019 -0800","stats":{"files_changed":1,"insertions":31,"deletions":31,"files":["README.md"]},"message":"alphabetize du entry","epoch":1576535481,"epoch_utc":null},{"commit":"9eaac7f3af0e0851c2d091d94c9920faa8a0fdfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 14:30:06 2019 -0800","stats":{"files_changed":1,"insertions":32,"deletions":0,"files":["README.md"]},"message":"add du","epoch":1576535406,"epoch_utc":null},{"commit":"4c24e00cfc0748d98e220d08820b88fc156148db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 14:27:55 2019 -0800","stats":{"files_changed":5,"insertions":21738,"deletions":9,"files":["tests/fixtures/osx-10.11.6/du.json","tests/fixtures/osx-10.11.6/du.out","tests/fixtures/ubuntu-18.04/du.json","tests/fixtures/ubuntu-18.04/du.out","tests/test_du.py"]},"message":"add osx-11 and ubuntu tests","epoch":1576535275,"epoch_utc":null},{"commit":"beb17011b03e720078b0752e79a6a0f6123d1d3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 13:57:42 2019 -0800","stats":{"files_changed":6,"insertions":131,"deletions":2,"files":["changelog.txt","docgen.sh","docs/parsers/du.md","docs/parsers/uname.md","tests/fixtures/osx-10.14.6/du.json","tests/test_du.py"]},"message":"du tests and docs","epoch":1576533462,"epoch_utc":null},{"commit":"e882bf55bcd1d3526423ed1ccc61fb4819395cce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 13:52:42 2019 -0800","stats":{"files_changed":7,"insertions":8755,"deletions":0,"files":["changelog.txt","jc/cli.py","jc/parsers/du.py","tests/fixtures/centos-7.7/du.json","tests/fixtures/centos-7.7/du.out","tests/fixtures/osx-10.14.6/du.out","tests/test_du.py"]},"message":"initial add du parser","epoch":1576533162,"epoch_utc":null},{"commit":"3a3016adb6d5b9e35f8a39908bfcdc65997cc5c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 11:52:18 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add parser_count to about","epoch":1576525938,"epoch_utc":null},{"commit":"1e8b68153ade8a1e3d2b4db36e0c402bbc887079","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 11:12:45 2019 -0800","stats":{"files_changed":4,"insertions":27,"deletions":1,"files":["tests/fixtures/osx-10.11.6/uname-a.json","tests/fixtures/osx-10.14.6/uname-a.json","tests/fixtures/osx-10.14.6/uname-a.out","tests/test_uname.py"]},"message":"add osx uname tests","epoch":1576523565,"epoch_utc":null},{"commit":"9335cf65fbb87e3a0a7da0c4e9bcd251cb829de2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 11:02:02 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"add uname osx support","epoch":1576522922,"epoch_utc":null},{"commit":"83f35256aee71f2619ddf880e2b8f2d6c63280bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 11:01:43 2019 -0800","stats":{"files_changed":1,"insertions":30,"deletions":19,"files":["jc/parsers/uname.py"]},"message":"add OSX support","epoch":1576522903,"epoch_utc":null},{"commit":"428333394817e4461a4eb095f4d6d128305a5f98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 10:03:47 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"version bump","epoch":1576519427,"epoch_utc":null},{"commit":"b8f902796b7fb23a41355b23f7ce235bd18edc58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 10:03:34 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["changelog.txt"]},"message":"shorten changelog","epoch":1576519414,"epoch_utc":null},{"commit":"8f99ab295cd15718b98781707def97539ad41920","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 09:08:47 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"info update","epoch":1576516127,"epoch_utc":null},{"commit":"882310e268e2022f0cd6da75f80f5356529cd05c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 09:04:52 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add name to about parser info","epoch":1576515892,"epoch_utc":null},{"commit":"56bce9521409d1850f75a3ae2be1363e765dd9dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 09:00:16 2019 -0800","stats":{"files_changed":1,"insertions":6,"deletions":10,"files":["jc/cli.py"]},"message":"about code cleanup","epoch":1576515616,"epoch_utc":null},{"commit":"c13ecbec2952c5d6765397f645e90653a4fd9d05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 08:59:41 2019 -0800","stats":{"files_changed":28,"insertions":2,"deletions":28,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"clean up parser info","epoch":1576515581,"epoch_utc":null},{"commit":"0ffaaa6e73649d1f657af569ac0b912f166e8493","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 08:18:37 2019 -0800","stats":{"files_changed":1,"insertions":7,"deletions":9,"files":["jc/cli.py"]},"message":"clean up about code","epoch":1576513117,"epoch_utc":null},{"commit":"75eff3adea097157c005b2201e353a741241ce8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:56:40 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/utils.py"]},"message":"remove whitespace","epoch":1576396600,"epoch_utc":null},{"commit":"bf5f80476cff642ae672187ea59d40bdb602101e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:56:22 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["jc/cli.py"]},"message":"use real parser name in error message","epoch":1576396582,"epoch_utc":null},{"commit":"9aaf0fbb2f838c0af1e7f18fdb19104f9f5d3d39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:35:42 2019 -0800","stats":{"files_changed":29,"insertions":146,"deletions":1,"files":["changelog.txt","docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md"]},"message":"doc updates","epoch":1576395342,"epoch_utc":null},{"commit":"8f01ef79532743573632d716ceea41d5ea752c88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:27:56 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add -a option info","epoch":1576394876,"epoch_utc":null},{"commit":"da1d087452da02631296b1b3dc9ee10d4b7f764b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:21:47 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add parser version info","epoch":1576394507,"epoch_utc":null},{"commit":"e16bc7e882a27a1d5a4bd7cf9972208e6997f96f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:15:15 2019 -0800","stats":{"files_changed":29,"insertions":82,"deletions":17,"files":["jc/cli.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add about information to parsers","epoch":1576394115,"epoch_utc":null},{"commit":"fe9bdd4811216257c05b16d6d61897929669d434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 13 20:01:51 2019 -0800","stats":{"files_changed":31,"insertions":384,"deletions":219,"files":["changelog.txt","jc/cli.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add info class","epoch":1576296111,"epoch_utc":null},{"commit":"17b6f3f6d6c398a52166849088a793d0e3b328b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 13 14:36:21 2019 -0800","stats":{"files_changed":3,"insertions":26,"deletions":0,"files":["tests/fixtures/osx-10.11.6/uptime.json","tests/fixtures/osx-10.14.6/uptime.json","tests/test_uptime.py"]},"message":"add osx tests","epoch":1576276581,"epoch_utc":null},{"commit":"90a6baf0ee3b8b27476badada4e590e22144f810","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 13 14:30:12 2019 -0800","stats":{"files_changed":6,"insertions":52,"deletions":0,"files":["tests/fixtures/osx-10.11.6/ps-axu.json","tests/fixtures/osx-10.11.6/ps-ef.json","tests/fixtures/osx-10.11.6/w.json","tests/fixtures/osx-10.14.6/w.json","tests/test_ps.py","tests/test_w.py"]},"message":"add osx tests","epoch":1576276212,"epoch_utc":null},{"commit":"f0e73d0e72d540292f41fff51652932c4e8b0315","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 13 10:50:01 2019 -0800","stats":{"files_changed":8,"insertions":444,"deletions":0,"files":["tests/fixtures/osx-10.11.6/ps-axu.out","tests/fixtures/osx-10.11.6/ps-ef.out","tests/fixtures/osx-10.11.6/uname-a.out","tests/fixtures/osx-10.11.6/uptime.out","tests/fixtures/osx-10.11.6/w.out","tests/fixtures/osx-10.14.6/uname-a.out","tests/fixtures/osx-10.14.6/uptime.out","tests/fixtures/osx-10.14.6/w.out"]},"message":"add osx tests","epoch":1576263001,"epoch_utc":null},{"commit":"a762882f1ccea6789ce7813b313f3242175b5bd6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 13 08:58:23 2019 -0800","stats":{"files_changed":4,"insertions":2,"deletions":88,"files":["tests/fixtures/osx-10.14.6/ps-axu.json","tests/fixtures/osx-10.14.6/ps-axu.out","tests/fixtures/osx-10.14.6/ps-ef.json","tests/fixtures/osx-10.14.6/ps-ef.out"]},"message":"fixture updates","epoch":1576256303,"epoch_utc":null},{"commit":"4c1bc5923658bf463805ea33ec8d170a817909ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 17:05:40 2019 -0800","stats":{"files_changed":3,"insertions":4,"deletions":3,"files":["docs/parsers/mount.md","docs/parsers/ps.md","docs/parsers/stat.md"]},"message":"doc updates","epoch":1576199140,"epoch_utc":null},{"commit":"f2962083f80503f82c3eddf470674c776e616b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 17:04:40 2019 -0800","stats":{"files_changed":7,"insertions":93,"deletions":17,"files":["changelog.txt","jc/parsers/mount.py","tests/fixtures/osx-10.14.6/mount.json","tests/fixtures/osx-10.14.6/mount.out","tests/fixtures/osx-10.14.6/mount2.json","tests/fixtures/osx-10.14.6/mount2.out","tests/test_mount.py"]},"message":"add osx support for mount parser","epoch":1576199080,"epoch_utc":null},{"commit":"a0b22a5bcfa0777895243088b2c0f3bb5b758775","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 16:14:46 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"help text formatting","epoch":1576196086,"epoch_utc":null},{"commit":"dcf393354cd57683aaeecbed7b884d19b0fe94d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 16:10:30 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"]},"message":"doc fix","epoch":1576195830,"epoch_utc":null},{"commit":"5f771656e3fdd703d449b2817faa4faeff1cd879","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 16:07:52 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/route.py"]},"message":"use universal parser","epoch":1576195672,"epoch_utc":null},{"commit":"f376aab79328a211a127f4f818e7007232f1fae3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:59:36 2019 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/universal.py"]},"message":"doc update","epoch":1576195176,"epoch_utc":null},{"commit":"3c96464217a740571e16c74ad41c1d92f7585547","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:59:24 2019 -0800","stats":{"files_changed":6,"insertions":886,"deletions":13,"files":["jc/parsers/ps.py","tests/fixtures/osx-10.14.6/ps-axu.json","tests/fixtures/osx-10.14.6/ps-axu.out","tests/fixtures/osx-10.14.6/ps-ef.json","tests/fixtures/osx-10.14.6/ps-ef.out","tests/test_ps.py"]},"message":"osx fixes and tests","epoch":1576195164,"epoch_utc":null},{"commit":"c9892833a16bb63f78537717be65670eb65a87b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:58:40 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/mount.py"]},"message":"formatting change","epoch":1576195120,"epoch_utc":null},{"commit":"127c98affc7b122f0ced13852850214b9e07677e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:58:24 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update","epoch":1576195104,"epoch_utc":null},{"commit":"8687a772f53ecaf1a20464429060b94bbf660fe7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:33:34 2019 -0800","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["jc/parsers/lsof.py"]},"message":"use universal parser","epoch":1576193614,"epoch_utc":null},{"commit":"b1162b14d42643fd53dbbe3f89ba042f030d9254","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:22:21 2019 -0800","stats":{"files_changed":1,"insertions":3,"deletions":6,"files":["jc/parsers/lsmod.py"]},"message":"use universal parser","epoch":1576192941,"epoch_utc":null},{"commit":"8a8ee3570733c0c06b8cf53eb005e53ac2f9170f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:01:42 2019 -0800","stats":{"files_changed":1,"insertions":8,"deletions":60,"files":["jc/parsers/lsblk.py"]},"message":"use universal parser","epoch":1576191702,"epoch_utc":null},{"commit":"5e109a3665cf0c286ac9dcbe2a452348a14b90ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 14:12:36 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/fixtures/create_fixtures.sh"]},"message":"add du","epoch":1576188756,"epoch_utc":null},{"commit":"11db478430515ef3e1020482792f23d1c40ca32b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 14:12:21 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"update changelog","epoch":1576188741,"epoch_utc":null},{"commit":"a85377014d9f93fcb9840715129b0e09d48d8584","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 14:11:59 2019 -0800","stats":{"files_changed":1,"insertions":5,"deletions":11,"files":["jc/parsers/free.py"]},"message":"use universal parser","epoch":1576188719,"epoch_utc":null},{"commit":"3aea86234d33160f5b3139cbfc2f4f032f655f3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 11:23:49 2019 -0800","stats":{"files_changed":6,"insertions":70,"deletions":61,"files":["tests/fixtures/osx-10.11.6/ls-al.json","tests/fixtures/osx-10.11.6/ls-al.out","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.11.6/ls-alh.out","tests/fixtures/osx-10.11.6/ls.json","tests/fixtures/osx-10.11.6/ls.out"]},"message":"fix osx-10.11.6 tests","epoch":1576178629,"epoch_utc":null},{"commit":"916ec6ed6b858a8a496e4026b9bab5505abca2ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 10:11:24 2019 -0800","stats":{"files_changed":13,"insertions":193,"deletions":61,"files":["tests/fixtures/osx-10.11.6/ls-al.json","tests/fixtures/osx-10.11.6/ls-al.out","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.11.6/ls-alh.out","tests/fixtures/osx-10.11.6/ls.json","tests/fixtures/osx-10.11.6/ls.out","tests/fixtures/osx-10.14.6/ls-al.json","tests/fixtures/osx-10.14.6/ls-al.out","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.out","tests/fixtures/osx-10.14.6/ls.json","tests/fixtures/osx-10.14.6/ls.out","tests/test_ls.py"]},"message":"fix osx ls tests","epoch":1576174284,"epoch_utc":null},{"commit":"9dca6ba5393d8840ad7fc9509273715a71955bd1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:47:14 2019 -0800","stats":{"files_changed":55,"insertions":120,"deletions":6,"files":["docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"doc formatting change","epoch":1576172834,"epoch_utc":null},{"commit":"0ebb89f561e1ced2e7f61ae19290e176c8a98bf2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:41:56 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["docs/parsers/arp.md"]},"message":"doc update","epoch":1576172516,"epoch_utc":null},{"commit":"e237867e242211ba37206911ebf1b35c97b417fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:41:25 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/arp.py"]},"message":"doc formatting","epoch":1576172485,"epoch_utc":null},{"commit":"78fa44fd9ac9790313de6f461eb46d9b8d6159d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:35:42 2019 -0800","stats":{"files_changed":24,"insertions":75,"deletions":3,"files":["docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add compatibility to docs","epoch":1576172142,"epoch_utc":null},{"commit":"d615fa3b933ccd284bd8ee92baf5dfa6264507c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:21:20 2019 -0800","stats":{"files_changed":30,"insertions":91,"deletions":1,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py"]},"message":"add compatibility to docs","epoch":1576171280,"epoch_utc":null},{"commit":"ce134dc332dd9175e0d1823a4959bed427a3ddce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:09:57 2019 -0800","stats":{"files_changed":7,"insertions":115,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-al.json","tests/fixtures/osx-10.14.6/ls-al.out","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.out","tests/fixtures/osx-10.14.6/ls.json","tests/fixtures/osx-10.14.6/ls.out","tests/test_ls.py"]},"message":"Add OSX tests for ls","epoch":1576170597,"epoch_utc":null},{"commit":"a56e4dc752a01635fbd9fc31e21d390bbd629084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 17:27:48 2019 -0800","stats":{"files_changed":3,"insertions":28,"deletions":3,"files":["changelog.txt","jc/parsers/arp.py","jc/parsers/universal.py"]},"message":"use universal simple table parser","epoch":1576114068,"epoch_utc":null},{"commit":"d221b4aa29e80dda2b591059f4d64c416bff0a17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 17:19:38 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update","epoch":1576113578,"epoch_utc":null},{"commit":"d2cba6ad2f1f1cd35aa174239584a0291abb8e37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 17:18:21 2019 -0800","stats":{"files_changed":3,"insertions":9,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py"]},"message":"add compatibility info","epoch":1576113501,"epoch_utc":null},{"commit":"84b3c30b525ddf1f74eb7fd833050a0ec69621dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 17:18:04 2019 -0800","stats":{"files_changed":21,"insertions":254,"deletions":2,"files":["tests/fixtures/osx-10.11.6/df-h.json","tests/fixtures/osx-10.11.6/df-h.out","tests/fixtures/osx-10.11.6/df.json","tests/fixtures/osx-10.11.6/df.out","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-aaaa.out","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig-x.out","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.11.6/dig.out","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/osx-10.14.6/df-h.out","tests/fixtures/osx-10.14.6/df.json","tests/fixtures/osx-10.14.6/df.out","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-aaaa.out","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig-x.out","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/osx-10.14.6/dig.out","tests/test_df.py"]},"message":"add osx tests","epoch":1576113484,"epoch_utc":null},{"commit":"68eeec19a812b735627763bb7d7e2a58b72f7504","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 16:39:30 2019 -0800","stats":{"files_changed":3,"insertions":30,"deletions":25,"files":["README.md","docs/parsers/df.md","jc/parsers/df.py"]},"message":"doc update","epoch":1576111170,"epoch_utc":null},{"commit":"c6d1528a2ed302ea82828b733a98db415be83708","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 16:37:13 2019 -0800","stats":{"files_changed":4,"insertions":19,"deletions":8,"files":["jc/parsers/df.py","jc/parsers/universal.py","tests/fixtures/centos-7.7/df.json","tests/fixtures/ubuntu-18.04/df.json"]},"message":"use _ instead of -","epoch":1576111033,"epoch_utc":null},{"commit":"50a6b256b8a0936299f562c208ede6187feeb9a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 9 14:01:47 2019 -0800","stats":{"files_changed":1,"insertions":83,"deletions":0,"files":["jc/parsers/universal.py"]},"message":"new universal parsers to limit code duplication","epoch":1575928907,"epoch_utc":null},{"commit":"bbba1fe477014d0b7f370ce46ed821121be81a8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 9 14:01:29 2019 -0800","stats":{"files_changed":1,"insertions":38,"deletions":19,"files":["jc/parsers/df.py"]},"message":"update df to use universal sparse table parser for osx compatibility","epoch":1575928889,"epoch_utc":null},{"commit":"46b827da6b438be73fab168c3f05298483b141e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 13:22:51 2019 -0800","stats":{"files_changed":7,"insertions":75,"deletions":4,"files":["changelog.txt","jc/parsers/arp.py","tests/fixtures/osx-10.11.6/arp-a.json","tests/fixtures/osx-10.11.6/arp-a.out","tests/fixtures/osx-10.14.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a.out","tests/test_arp.py"]},"message":"add osx compatibility","epoch":1575667371,"epoch_utc":null},{"commit":"5e8c28a30a283b6ef525e9e78d3ef2a0e1526927","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 11:47:42 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"]},"message":"comment fix","epoch":1575661662,"epoch_utc":null},{"commit":"e5d39031645ac897e0c0297f514ee62efe02f5f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 11:46:09 2019 -0800","stats":{"files_changed":1,"insertions":38,"deletions":17,"files":["docs/parsers/ifconfig.md"]},"message":"update ifconfig doc","epoch":1575661569,"epoch_utc":null},{"commit":"23975c9c9e1dd9d3e9fd7c05d231a86d646be048","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 11:44:57 2019 -0800","stats":{"files_changed":10,"insertions":132,"deletions":45,"files":["README.md","changelog.txt","jc/parsers/ifconfig.py","tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig2.json","tests/fixtures/osx-10.14.6/ifconfig.json","tests/fixtures/osx-10.14.6/ifconfig2.json","tests/fixtures/ubuntu-18.04/ifconfig.json","tests/test_ifconfig.py"]},"message":"fixup osx subnet mask and convert state to an array","epoch":1575661497,"epoch_utc":null},{"commit":"1e0dab8355e6fcb0ecde85270d4daac6ad93875b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 10:53:49 2019 -0800","stats":{"files_changed":10,"insertions":272,"deletions":2,"files":["tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.out","tests/fixtures/osx-10.11.6/ifconfig2.json","tests/fixtures/osx-10.11.6/ifconfig2.out","tests/fixtures/osx-10.14.6/ifconfig.json","tests/fixtures/osx-10.14.6/ifconfig.out","tests/fixtures/osx-10.14.6/ifconfig2.json","tests/fixtures/osx-10.14.6/ifconfig2.out","tests/fixtures/ubuntu-18.04/ifconfig.json"]},"message":"ifconfig fixture updates","epoch":1575658429,"epoch_utc":null},{"commit":"5f4c10ffd5a9cbe4e5e3d2b9adc34f36492eaf46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 10:39:11 2019 -0800","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["README.md","changelog.txt"]},"message":"doc update","epoch":1575657551,"epoch_utc":null},{"commit":"6f3d2b4b566b963fbf38572c587e8bd4e18881dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 10:30:01 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"require ifconfig-parser v0.0.5 for mac and bytes support","epoch":1575657001,"epoch_utc":null},{"commit":"fea8ace8446b64abe9e61a028951bc4e6df9f9c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 10:27:11 2019 -0800","stats":{"files_changed":2,"insertions":20,"deletions":6,"files":["README.md","jc/parsers/ifconfig.py"]},"message":"add OSX compatibility","epoch":1575656831,"epoch_utc":null},{"commit":"6633d9262c936217d8e90e64505c66b006cdab56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Nov 30 13:52:24 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["_config.yml"]},"message":"Set theme jekyll-theme-cayman","epoch":1575150744,"epoch_utc":null},{"commit":"7d54137140e6d0515bc23c131a097af5c70c3379","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 28 11:51:54 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"link update","epoch":1574970714,"epoch_utc":null},{"commit":"2fcda6f2480ae6bd5428a0147c19f9af527391b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 25 18:34:21 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add motivation to readme","epoch":1574735661,"epoch_utc":null},{"commit":"9c1b8bacf9a59a86feb2a91eb44919e800491d1e","merge":"d192745 4867655","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 11:55:06 2019 -0800","message":"Merge pull request #16 from kellyjonbrazil/dev\n\nDev v1.5.1","epoch":1574020506,"epoch_utc":null},{"commit":"4867655eb297b1da7a55e0d3a24c7ed7c8af55c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 11:49:36 2019 -0800","stats":{"files_changed":6,"insertions":172,"deletions":0,"files":[".../centos-7.7/iptables-filter-line-numbers.json",".../centos-7.7/iptables-filter-line-numbers.out","tests/fixtures/create_fixtures.sh",".../ubuntu-18.04/iptables-filter-line-numbers.json",".../ubuntu-18.04/iptables-filter-line-numbers.out","tests/test_iptables.py"]},"message":"add line-numbers tests","epoch":1574020176,"epoch_utc":null},{"commit":"47410d1a95406b0960aac705e7cfe925fea3172c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 11:05:46 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["changelog.txt","setup.py"]},"message":"version bump","epoch":1574017546,"epoch_utc":null},{"commit":"5fa49f5e672fc6f8dc18fb4b1761c98b81362649","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 11:00:16 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update","epoch":1574017216,"epoch_utc":null},{"commit":"36c53827fab6ac38c0010250ec387db40fdeecfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 10:56:55 2019 -0800","stats":{"files_changed":19,"insertions":1316,"deletions":308,"files":["tests/fixtures/centos-7.7/systemctl-ls.json","tests/fixtures/centos-7.7/systemctl-ls.out","tests/fixtures/centos-7.7/systemctl-luf.json","tests/fixtures/centos-7.7/systemctl-luf.out","tests/fixtures/centos-7.7/systemctl.json","tests/fixtures/centos-7.7/systemctl.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/systemctl-lj.json","tests/fixtures/ubuntu-18.04/systemctl-lj.out","tests/fixtures/ubuntu-18.04/systemctl-ls.json","tests/fixtures/ubuntu-18.04/systemctl-ls.out","tests/fixtures/ubuntu-18.04/systemctl-luf.json","tests/fixtures/ubuntu-18.04/systemctl-luf.out","tests/fixtures/ubuntu-18.04/systemctl.json","tests/fixtures/ubuntu-18.04/systemctl.out","tests/test_systemctl.py","tests/test_systemctl_lj.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py"]},"message":"add systemctl tests","epoch":1574017015,"epoch_utc":null},{"commit":"51631aef5b1b6fdeff4ab543510a9f9e15a0c2c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 10:31:58 2019 -0800","stats":{"files_changed":5,"insertions":358,"deletions":0,"files":["tests/fixtures/centos-7.7/systemctl.json","tests/fixtures/centos-7.7/systemctl.out","tests/fixtures/ubuntu-18.04/systemctl.json","tests/fixtures/ubuntu-18.04/systemctl.out","tests/test_systemctl.py"]},"message":"add systemctl tests","epoch":1574015518,"epoch_utc":null},{"commit":"a0298ac8a39093620b6859c909a78d11ab4a8e56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 10:26:48 2019 -0800","stats":{"files_changed":5,"insertions":55,"deletions":0,"files":["tests/fixtures/centos-7.7/fstab.json","tests/fixtures/centos-7.7/fstab.out","tests/fixtures/ubuntu-18.04/fstab.json","tests/fixtures/ubuntu-18.04/fstab.out","tests/test_fstab.py"]},"message":"add fstab tests","epoch":1574015208,"epoch_utc":null},{"commit":"98c0188821ebaa71c5661f2e095cf464bec695f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:27:51 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/systemctl_ls.md","jc/parsers/systemctl_ls.py"]},"message":"formatting fix","epoch":1573874871,"epoch_utc":null},{"commit":"ab1dabe3e42997825707006b63cc0c03d28470d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:26:22 2019 -0800","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py"]},"message":"doc update","epoch":1573874782,"epoch_utc":null},{"commit":"94bdb11fdf0e16d89769046d317643334ef1acdd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:24:32 2019 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"]},"message":"remove systemctl from TODO","epoch":1573874672,"epoch_utc":null},{"commit":"b6727d68bab66164a3834b240ae868062aad9371","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:18:31 2019 -0800","stats":{"files_changed":1,"insertions":68,"deletions":0,"files":["README.md"]},"message":"add systemctl parsers","epoch":1573874311,"epoch_utc":null},{"commit":"89bad7fc2b4023b10b6eeb7ff1f8f18b71731cb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:13:53 2019 -0800","stats":{"files_changed":5,"insertions":1,"deletions":191,"files":["changelog.txt","docgen.sh","docs/parsers/systemctl_lm.md","jc/cli.py","jc/parsers/systemctl_lm.py"]},"message":"remove systemctl list-machines parser","epoch":1573874033,"epoch_utc":null},{"commit":"c0b8b810a2616e77973c1223f9c39329112337ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:07:42 2019 -0800","stats":{"files_changed":5,"insertions":306,"deletions":0,"files":["docgen.sh","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_lm.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md"]},"message":"add systemctl list parsers","epoch":1573873662,"epoch_utc":null},{"commit":"31eb65acd18b6d9163de900dbe48807a41a23785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:05:49 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_lm.py"]},"message":"doc fix","epoch":1573873549,"epoch_utc":null},{"commit":"513bbeb4649c011476930e1d1bf739ff06c2d66f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:02:57 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/systemctl_lj.py"]},"message":"add break on footer condition","epoch":1573873377,"epoch_utc":null},{"commit":"3a52fb725a0e56b52a0ea430266400b268360737","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 18:58:17 2019 -0800","stats":{"files_changed":2,"insertions":55,"deletions":29,"files":["jc/cli.py","jc/parsers/systemctl_lj.py"]},"message":"add systemctl list-jobs parser","epoch":1573873097,"epoch_utc":null},{"commit":"5affd444999de88b9bff7b49d790913540f97cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 18:36:12 2019 -0800","stats":{"files_changed":6,"insertions":342,"deletions":24,"files":["jc/cli.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_lm.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py"]},"message":"add systemctl_lj, lm, ls, and luf","epoch":1573871772,"epoch_utc":null},{"commit":"5dbc6e806c5d05bfa1f7e2156ed2573341eb23c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 12:28:28 2019 -0800","stats":{"files_changed":2,"insertions":142,"deletions":29,"files":["jc/cli.py","jc/parsers/systemctl_luf.py"]},"message":"add systemctl_luf parser","epoch":1573849708,"epoch_utc":null},{"commit":"59ae31f3f342c9337037aac4630310c9b9eb8287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 11:58:17 2019 -0800","stats":{"files_changed":6,"insertions":219,"deletions":0,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/systemctl.md","jc/cli.py","jc/parsers/systemctl.py"]},"message":"add systemctl parser","epoch":1573847897,"epoch_utc":null},{"commit":"230e921c2e8d931ea8a6abdf81215dbfc968b41c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 10:36:58 2019 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"]},"message":"remove fstab from TODO","epoch":1573843018,"epoch_utc":null},{"commit":"a7c3d88b08ab90b719035cb15d78afe708235742","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 10:01:29 2019 -0800","stats":{"files_changed":3,"insertions":136,"deletions":0,"files":["docgen.sh","docs/parsers/fstab.md","jc/parsers/fstab.py"]},"message":"update example and docs","epoch":1573840889,"epoch_utc":null},{"commit":"9b453bcb84dd9f2f566955eda1ab35c863b3e8a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 09:57:25 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":13,"files":["jc/parsers/fstab.py"]},"message":"remove commented code block","epoch":1573840645,"epoch_utc":null},{"commit":"ce43c782f601fc12267fa22279e8e0142ecc3a7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 09:32:12 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"fstab update","epoch":1573839132,"epoch_utc":null},{"commit":"cb16faaf4d1700379d53053fe06824fd03404f87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 09:31:28 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"helptext update","epoch":1573839088,"epoch_utc":null},{"commit":"3f1d3ff6d85422536e0adfb6433fd3ec0399ebe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 09:29:54 2019 -0800","stats":{"files_changed":2,"insertions":73,"deletions":6,"files":["README.md","jc/parsers/fstab.py"]},"message":"add examples","epoch":1573838994,"epoch_utc":null},{"commit":"6f67eecd5ed46f8a692ff5dd607a2395a5c838ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 09:22:07 2019 -0800","stats":{"files_changed":2,"insertions":108,"deletions":0,"files":["jc/cli.py","jc/parsers/fstab.py"]},"message":"add fstab parser","epoch":1573838527,"epoch_utc":null},{"commit":"e75c819190634f0a9048942b39eda691831829ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 08:51:53 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"changelog update","epoch":1573836713,"epoch_utc":null},{"commit":"601e68d104dd43940acadaa574dfd9b5117b0476","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 08:40:13 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/hosts.md","jc/parsers/hosts.py"]},"message":"doc update","epoch":1573836013,"epoch_utc":null},{"commit":"8285ecfd1e7810102cdbc399398a16f999c841ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 08:40:01 2019 -0800","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["tests/fixtures/centos-7.7/hosts.out","tests/fixtures/ubuntu-18.04/hosts.out"]},"message":"enhance test file with comments","epoch":1573836001,"epoch_utc":null},{"commit":"8726de902e527b95a12afd79a53d533cc176703d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 22:04:59 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"add hosts parser","epoch":1573797899,"epoch_utc":null},{"commit":"4133585274b0e7faa0255a911468248eb390d673","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 22:04:48 2019 -0800","stats":{"files_changed":5,"insertions":53,"deletions":0,"files":["tests/fixtures/centos-7.7/hosts.json","tests/fixtures/centos-7.7/hosts.out","tests/fixtures/ubuntu-18.04/hosts.json","tests/fixtures/ubuntu-18.04/hosts.out","tests/test_hosts.py"]},"message":"add hosts tests","epoch":1573797888,"epoch_utc":null},{"commit":"ad913b141721655a72a7b2a6ad60037e5acd5f9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:59:06 2019 -0800","stats":{"files_changed":4,"insertions":148,"deletions":2,"files":["README.md","docgen.sh","docs/parsers/hosts.md","jc/parsers/hosts.py"]},"message":"add hosts docs","epoch":1573797546,"epoch_utc":null},{"commit":"7113e5a844fc0304f62f4afe65b5cbc816f75372","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:55:08 2019 -0800","stats":{"files_changed":1,"insertions":10,"deletions":0,"files":["jc/parsers/hosts.py"]},"message":"filter out comments at the end of the line","epoch":1573797308,"epoch_utc":null},{"commit":"a3a8369dc0e7227072f595cef1e57d471eff4d2f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:36:02 2019 -0800","stats":{"files_changed":1,"insertions":51,"deletions":9,"files":["jc/parsers/hosts.py"]},"message":"add docs","epoch":1573796162,"epoch_utc":null},{"commit":"64016b8ef049d5d4f02b4371f5cc9632c19bcaa2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:31:25 2019 -0800","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["jc/cli.py","jc/parsers/hosts.py"]},"message":"add hosts parser","epoch":1573795885,"epoch_utc":null},{"commit":"1cb49d60c84054b0446f299f6b4bab7d102101c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:21:15 2019 -0800","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["README.md"]},"message":"remove sar and sadf","epoch":1573795275,"epoch_utc":null},{"commit":"c858adfd12144569d0b990a217c5bcd75bd23828","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:11:05 2019 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"]},"message":"remove stat from todo","epoch":1573794665,"epoch_utc":null},{"commit":"08d68327c777dd740d93a1b5fff8cf62f58904c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:08:09 2019 -0800","stats":{"files_changed":5,"insertions":8080,"deletions":0,"files":["tests/fixtures/centos-7.7/stat.json","tests/fixtures/centos-7.7/stat.out","tests/fixtures/ubuntu-18.04/stat.json","tests/fixtures/ubuntu-18.04/stat.out","tests/test_stat.py"]},"message":"add stat tests","epoch":1573794489,"epoch_utc":null},{"commit":"0d7c6c5664911af7a41149d51dd6ae05b39d7648","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 20:57:49 2019 -0800","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/parsers/stat.md","jc/parsers/stat.py"]},"message":"doc fix and add continue lines","epoch":1573793869,"epoch_utc":null},{"commit":"8bfa41dbf485cb06c928bc00a68727d2ceac21fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 17:36:29 2019 -0800","stats":{"files_changed":3,"insertions":22,"deletions":14,"files":["README.md","docs/parsers/stat.md","jc/parsers/stat.py"]},"message":"change values to null if -","epoch":1573781789,"epoch_utc":null},{"commit":"7e2fa48ed4f3fd452082ce06e7306efd38b2d508","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 17:24:51 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"update changelog","epoch":1573781091,"epoch_utc":null},{"commit":"340635cad5224f2c715bf961956f4b9b6119d80b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 17:23:44 2019 -0800","stats":{"files_changed":3,"insertions":408,"deletions":111,"files":["docgen.sh","docs/parsers/ss.md","docs/parsers/stat.md"]},"message":"fix stats doc","epoch":1573781024,"epoch_utc":null},{"commit":"8f77d1de098f035767d73a6965a695b95b75e161","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 17:21:56 2019 -0800","stats":{"files_changed":2,"insertions":111,"deletions":253,"files":["docgen.sh","docs/parsers/ss.md"]},"message":"add stat docs","epoch":1573780916,"epoch_utc":null},{"commit":"7dcf1b25ffb801375f0bf4263f34713ded904de9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 17:20:13 2019 -0800","stats":{"files_changed":1,"insertions":13,"deletions":0,"files":["jc/parsers/stat.py"]},"message":"add link_to field","epoch":1573780813,"epoch_utc":null},{"commit":"9b735381063a1167a6a74864a43b81aefd98009f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 16:44:12 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"]},"message":"set compatibility to linux only","epoch":1573778652,"epoch_utc":null},{"commit":"3bf8c8c6dbdf7e03e26b4581e35c3274084c07ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 16:40:52 2019 -0800","stats":{"files_changed":7,"insertions":27,"deletions":27,"files":["jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"pep8 fixes","epoch":1573778452,"epoch_utc":null},{"commit":"04a1ff2ca7873d55cdbc831e521f3d4892074d98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 16:36:00 2019 -0800","stats":{"files_changed":8,"insertions":28,"deletions":28,"files":["jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py"]},"message":"pep8 fixes","epoch":1573778160,"epoch_utc":null},{"commit":"64647d230ac936cb43864481ae0f45d13707d7b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 16:32:11 2019 -0800","stats":{"files_changed":6,"insertions":21,"deletions":21,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py"]},"message":"pep8 cleanup","epoch":1573777931,"epoch_utc":null},{"commit":"c2a67e1b70f33044aecabd8b46018117cb38cb9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 16:31:52 2019 -0800","stats":{"files_changed":2,"insertions":213,"deletions":16,"files":["README.md","jc/parsers/stat.py"]},"message":"add stat parser","epoch":1573777912,"epoch_utc":null},{"commit":"edb9a7c76e1fedaf37b6a226ad4e1cfc08a9a5ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 15:26:36 2019 -0800","stats":{"files_changed":2,"insertions":94,"deletions":0,"files":["jc/cli.py","jc/parsers/stat.py"]},"message":"add stat parser","epoch":1573773996,"epoch_utc":null},{"commit":"a407f5b67833cc5f8dda9fe8265cd34e62f28d14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 14:01:04 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"minor update","epoch":1573768864,"epoch_utc":null},{"commit":"e5b4987acb70e854d9996350235c5535b4a46b69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 14:00:06 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"doc update","epoch":1573768806,"epoch_utc":null},{"commit":"ba8cc18eebe779742cff0ba4c8bebe376e787c8c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 13:56:09 2019 -0800","stats":{"files_changed":5,"insertions":405,"deletions":0,"files":["tests/fixtures/centos-7.7/ss-sudo-a.json","tests/fixtures/centos-7.7/ss-sudo-a.out","tests/fixtures/ubuntu-18.04/ss-sudo-a.json","tests/fixtures/ubuntu-18.04/ss-sudo-a.out","tests/test_ss.py"]},"message":"add ss tests","epoch":1573768569,"epoch_utc":null},{"commit":"d2c7316e00b9aaf19231c05351821041458baf98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 13:43:07 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"update command options info","epoch":1573767787,"epoch_utc":null},{"commit":"609aa14d243206e81ed31f8438c3f42e8263e140","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 13:38:52 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/ss.md","jc/parsers/ss.py"]},"message":"spelling fix","epoch":1573767532,"epoch_utc":null},{"commit":"ef1ad4c700fcb740b5fbe1e12205b9a30ae427ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 13:37:55 2019 -0800","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["docs/parsers/ss.md","jc/parsers/ss.py"]},"message":"doc update","epoch":1573767475,"epoch_utc":null},{"commit":"a0e2732152dc3005914b9a3e4f03e937a113c67f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 09:46:10 2019 -0800","stats":{"files_changed":1,"insertions":64,"deletions":12,"files":["README.md"]},"message":"add ss example","epoch":1573753570,"epoch_utc":null},{"commit":"9b5d3e3be1ac07813e716f8426fe89cced478221","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 09:42:44 2019 -0800","stats":{"files_changed":1,"insertions":135,"deletions":25,"files":["docs/parsers/ss.md"]},"message":"update doc","epoch":1573753364,"epoch_utc":null},{"commit":"2663ef31fbc1b69b89b8032640a25065cc953866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 09:38:19 2019 -0800","stats":{"files_changed":1,"insertions":159,"deletions":30,"files":["jc/parsers/ss.py"]},"message":"fix field names per ss documentation","epoch":1573753099,"epoch_utc":null},{"commit":"a4cdd3378e6a031f16dd371ed5cd60ff018feb32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 13 08:17:41 2019 -0800","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["README.md"]},"message":"add compatibility info","epoch":1573661861,"epoch_utc":null},{"commit":"2f805da24d0e833e3d2a1f3a5ec34031fa911c05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 13 08:04:40 2019 -0800","stats":{"files_changed":45,"insertions":51,"deletions":51,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/utils.md","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/utils.py"]},"message":"add colon to parameter in docs","epoch":1573661080,"epoch_utc":null},{"commit":"79152a946d93e4facf9711bfa0f421e1978e0f1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 13 07:46:14 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"initialize network_list and socket_list variables","epoch":1573659974,"epoch_utc":null},{"commit":"de37bb37d01b397df2b5992b4acd64817380401d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 13 07:45:37 2019 -0800","stats":{"files_changed":3,"insertions":187,"deletions":1,"files":["docgen.sh","docs/parsers/ss.md","jc/parsers/ss.py"]},"message":"add ss docs","epoch":1573659937,"epoch_utc":null},{"commit":"f783e44e5c0cd05733da5d24573f06d05760f993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 18:58:58 2019 -0800","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["README.md","changelog.txt"]},"message":"doc fix","epoch":1573613938,"epoch_utc":null},{"commit":"af82f2c991ac0668485e75ae78a26b9553ec8b13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 18:56:42 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update raw format note","epoch":1573613802,"epoch_utc":null},{"commit":"46774daf9d3e0612df8f79d4b6b724e612ceb725","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 18:51:21 2019 -0800","stats":{"files_changed":2,"insertions":194,"deletions":4,"files":["README.md","jc/parsers/ss.py"]},"message":"doc update","epoch":1573613481,"epoch_utc":null},{"commit":"648306b7856fe2e296ce463ff4c9c2a8632c92d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 18:04:40 2019 -0800","stats":{"files_changed":1,"insertions":44,"deletions":22,"files":["jc/parsers/ss.py"]},"message":"process ss data","epoch":1573610680,"epoch_utc":null},{"commit":"b7a4f205b80c0a6a41aaabf59703525ac526c295","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 17:10:06 2019 -0800","stats":{"files_changed":1,"insertions":17,"deletions":14,"files":["jc/parsers/ss.py"]},"message":"parser fixes","epoch":1573607406,"epoch_utc":null},{"commit":"fdb168b43a69358a97bf43b71a0adbc7b1ef56f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 16:34:42 2019 -0800","stats":{"files_changed":2,"insertions":120,"deletions":0,"files":["jc/cli.py","jc/parsers/ss.py"]},"message":"add ss parser","epoch":1573605282,"epoch_utc":null},{"commit":"b6f65c93c462856f26201df0cbfe804b29a65169","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 15:05:21 2019 -0800","stats":{"files_changed":3,"insertions":43,"deletions":69,"files":["README.md","docs/parsers/ps.md","jc/parsers/ps.py"]},"message":"ps doc update","epoch":1573599921,"epoch_utc":null},{"commit":"3f4838f17a81969718d9e5b6bafa21e0b92e1d95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 14:22:49 2019 -0800","stats":{"files_changed":2,"insertions":0,"deletions":6,"files":["docgen.sh","docs/cli.md"]},"message":"remove cli.md","epoch":1573597369,"epoch_utc":null},{"commit":"eef0dee2aa206716d9cf011bec58a06c46bbee15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 14:20:59 2019 -0800","stats":{"files_changed":2,"insertions":8,"deletions":0,"files":["docs/utils.md","jc/utils.py"]},"message":"doc update","epoch":1573597259,"epoch_utc":null},{"commit":"e17388d3b2d1521d963bf9dd9e7a4ba5ba9bb09d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 14:19:40 2019 -0800","stats":{"files_changed":2,"insertions":44,"deletions":4,"files":["docs/utils.md","jc/utils.py"]},"message":"doc update","epoch":1573597180,"epoch_utc":null},{"commit":"7e6a1bc719b7160ba70cd326ff6aa182993a7380","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 14:15:22 2019 -0800","stats":{"files_changed":2,"insertions":41,"deletions":63,"files":["docs/readme.md","jc/__init__.py"]},"message":"doc update","epoch":1573596922,"epoch_utc":null},{"commit":"37738a2ea2f15af847e4b8383aba911e2020a3e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 14:10:26 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update contributions","epoch":1573596626,"epoch_utc":null},{"commit":"c5834a57db8957723a1425b9db46c433e28a3af1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 13:35:32 2019 -0800","stats":{"files_changed":1,"insertions":14,"deletions":0,"files":["README.md"]},"message":"add todo section","epoch":1573594532,"epoch_utc":null},{"commit":"91b9373f380e06f91888811edbfb21747ff08810","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 13:05:19 2019 -0800","stats":{"files_changed":1,"insertions":417,"deletions":673,"files":["README.md"]},"message":"new examples","epoch":1573592719,"epoch_utc":null},{"commit":"ce0bb5b816eed0c75542ead474c3dcb8401be2d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:52:16 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting fix","epoch":1573588336,"epoch_utc":null},{"commit":"f330ff0eff00586f46d18497f2441e94b6430e91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:49:14 2019 -0800","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["README.md"]},"message":"wrap example text","epoch":1573588154,"epoch_utc":null},{"commit":"4b02700414660b90518311485761870402368625","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:46:52 2019 -0800","stats":{"files_changed":1,"insertions":9,"deletions":20,"files":["README.md"]},"message":"update simple examples","epoch":1573588012,"epoch_utc":null},{"commit":"ee30180376b7acec46314bbc483866bff41c362a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:39:33 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"fix note","epoch":1573587573,"epoch_utc":null},{"commit":"338e0ff15c7fac84475c1ed107e6a23e7a009b1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:38:50 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]},"message":"add schema note","epoch":1573587530,"epoch_utc":null},{"commit":"3ac75305dfa33429646bb5d415567034cccfeee3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:28:10 2019 -0800","stats":{"files_changed":39,"insertions":351,"deletions":39,"files":["docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"update process() doc","epoch":1573586890,"epoch_utc":null},{"commit":"3bdcf44afb708cf6a716a0847b119f895602c23e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:22:17 2019 -0800","stats":{"files_changed":2,"insertions":18,"deletions":2,"files":["docs/parsers/arp.md","jc/parsers/arp.py"]},"message":"doc update","epoch":1573586537,"epoch_utc":null},{"commit":"e3f4ffede56fe48c0a282a021ac5cdfd7a8abee9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:18:00 2019 -0800","stats":{"files_changed":20,"insertions":172,"deletions":77,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md"]},"message":"doc update","epoch":1573586280,"epoch_utc":null},{"commit":"f0c8725d4355113f7690f20bb99078e488084ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:17:33 2019 -0800","stats":{"files_changed":21,"insertions":181,"deletions":81,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"doc update","epoch":1573586253,"epoch_utc":null},{"commit":"5473bc4eb697d00bd26a038287e1137e438cacb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:12:41 2019 -0800","stats":{"files_changed":2,"insertions":16,"deletions":6,"files":["docs/parsers/arp.md","jc/parsers/arp.py"]},"message":"doc update","epoch":1573585961,"epoch_utc":null},{"commit":"b9bd9422bfa46144416fa65add2e041d4124357b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:19:01 2019 -0800","stats":{"files_changed":2,"insertions":380,"deletions":46,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"doc update","epoch":1573571941,"epoch_utc":null},{"commit":"cb5729a070925a7fa29f762bd4b074532f5cba55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:18:27 2019 -0800","stats":{"files_changed":1,"insertions":62,"deletions":44,"files":["README.md"]},"message":"add options to docs","epoch":1573571907,"epoch_utc":null},{"commit":"f0b1ab42337746afd37365abdf44729d530d5410","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:08:35 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/utils.md","jc/utils.py"]},"message":"doc update","epoch":1573571315,"epoch_utc":null},{"commit":"b15386e849b9fea347e7b17307eedf779d8022fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:07:43 2019 -0800","stats":{"files_changed":2,"insertions":11,"deletions":5,"files":["docs/utils.md","jc/utils.py"]},"message":"doc update","epoch":1573571263,"epoch_utc":null},{"commit":"d2a2c8da35ee44e9a7572885609548eb809bcdda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:03:02 2019 -0800","stats":{"files_changed":3,"insertions":1,"deletions":5,"files":["docs/parsers/iptables.md","docs/parsers/mount.md","docs/parsers/uname.md"]},"message":"doc updates","epoch":1573570982,"epoch_utc":null},{"commit":"7251548cbb09beae6971385a56036e9649bd9b2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:01:36 2019 -0800","stats":{"files_changed":3,"insertions":3,"deletions":5,"files":["jc/parsers/iptables.py","jc/parsers/mount.py","jc/parsers/uname.py"]},"message":"documentation updates","epoch":1573570896,"epoch_utc":null},{"commit":"146e29f7cbc0f396be67dbd7ae971a4ef4dafb7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 18:30:46 2019 -0800","stats":{"files_changed":47,"insertions":5386,"deletions":2249,"files":["docgen.sh","docs/cli.md","docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/readme.md","docs/utils.md","jc/__init__.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/utils.py"]},"message":"update docs","epoch":1573525846,"epoch_utc":null},{"commit":"363fd3eab409351121dab8a11c6b565829ccd84a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 16:27:28 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"move parser_name to except block","epoch":1573518448,"epoch_utc":null},{"commit":"4083dd4260ff3a8bb6649e1661cf3e058fdbad59","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 16:16:41 2019 -0800","stats":{"files_changed":2,"insertions":24,"deletions":5,"files":["changelog.txt","jc/cli.py"]},"message":"add -d option","epoch":1573517801,"epoch_utc":null},{"commit":"b2b74547baaf33058d74fc08cb665777b19bd05a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 15:53:42 2019 -0800","stats":{"files_changed":6,"insertions":317,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-sudo-aeep.json","tests/fixtures/centos-7.7/netstat-sudo-aeep.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.json","tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.out","tests/test_netstat.py"]},"message":"add netstat-sudo-aeep tests","epoch":1573516422,"epoch_utc":null},{"commit":"dddb0baabf8a78261ac80380b97e7c92c7ce4d89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 15:53:22 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/netstat.py"]},"message":"use \\u2063 instead of \\u2026","epoch":1573516402,"epoch_utc":null},{"commit":"84b4f67ef9d4bb0db201a095d74400a56394589d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 14:34:36 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["tests/fixtures/centos-7.7/ps-axu.json","tests/fixtures/ubuntu-18.04/ps-axu.json"]},"message":"new json output","epoch":1573511676,"epoch_utc":null},{"commit":"3a089138b8c269ba3c5f7aec87ae3f8ec368c3ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 14:31:27 2019 -0800","stats":{"files_changed":1,"insertions":129,"deletions":9,"files":["jc/parsers/ps.py"]},"message":"add int and float changes","epoch":1573511487,"epoch_utc":null},{"commit":"3ff0305c8e62ce3b5a8f3f9174c5a9da3bc22766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 13:00:17 2019 -0800","stats":{"files_changed":8,"insertions":54,"deletions":2,"files":["tests/fixtures/centos-7.7/lsblk-allcols.json","tests/fixtures/centos-7.7/lsblk-allcols.out","tests/fixtures/centos-7.7/lsblk.json","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/lsblk-allcols.json","tests/fixtures/ubuntu-18.04/lsblk-allcols.out","tests/fixtures/ubuntu-18.04/lsblk.json","tests/test_lsblk.py"]},"message":"add lsblk tests","epoch":1573506017,"epoch_utc":null},{"commit":"761edc3c6cfc215fe45c65ee2bb5462cb460b6a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 12:43:27 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":6,"files":["jc/parsers/lsblk.py"]},"message":"remove unused parse_pairs function","epoch":1573505007,"epoch_utc":null},{"commit":"3351c81f647ac97a5038cc0c14adb31e55832a77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 12:40:16 2019 -0800","stats":{"files_changed":1,"insertions":200,"deletions":2,"files":["jc/parsers/lsblk.py"]},"message":"add documentation","epoch":1573504816,"epoch_utc":null},{"commit":"3dfc6f67d770c59804bdeb371d5c78e3f3668f9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 12:00:23 2019 -0800","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/lsblk.py"]},"message":"change empty values to Null","epoch":1573502423,"epoch_utc":null},{"commit":"1546ec3bd139ef687282f60786388b5207541c98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 11:53:16 2019 -0800","stats":{"files_changed":1,"insertions":17,"deletions":13,"files":["jc/parsers/lsblk.py"]},"message":"fixes for right justified columns","epoch":1573501996,"epoch_utc":null},{"commit":"2a953011f72e922c89b9af6dfebd1983da7c338d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 10 15:18:53 2019 -0800","stats":{"files_changed":2,"insertions":50,"deletions":155,"files":["changelog.txt","jc/parsers/lsblk.py"]},"message":"rewrite of lsblk parser to use a custom delimiter","epoch":1573427933,"epoch_utc":null},{"commit":"d2f755de9d2be7b0af5f010042e1f4ca589c5464","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 17:08:41 2019 -0800","stats":{"files_changed":14,"insertions":250,"deletions":566,"files":["tests/test_ifconfig.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_ls.py","tests/test_lsblk.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_ps.py","tests/test_route.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py"]},"message":"updates tests","epoch":1573261721,"epoch_utc":null},{"commit":"f363334639c5fa3a43889794ea52409056a2d886","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 16:21:09 2019 -0800","stats":{"files_changed":5,"insertions":87,"deletions":219,"files":["tests/test_df.py","tests/test_dig.py","tests/test_env.py","tests/test_free.py","tests/test_history.py"]},"message":"update tests","epoch":1573258869,"epoch_utc":null},{"commit":"750197e48596ad96804477053d3ff3c8063ea68a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 16:04:19 2019 -0800","stats":{"files_changed":1,"insertions":27,"deletions":70,"files":["tests/test_arp.py"]},"message":"new tests","epoch":1573257859,"epoch_utc":null},{"commit":"36b349e4ed39fe611c7d87a47c378cc4d4627ad2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 16:03:41 2019 -0800","stats":{"files_changed":76,"insertions":76,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-a.json","tests/fixtures/centos-7.7/arp-v.json","tests/fixtures/centos-7.7/arp.json","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/df.json","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/centos-7.7/env.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/centos-7.7/free.json","tests/fixtures/centos-7.7/history.json","tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/centos-7.7/iptables-filter-nv.json","tests/fixtures/centos-7.7/iptables-filter.json","tests/fixtures/centos-7.7/iptables-mangle.json","tests/fixtures/centos-7.7/iptables-nat.json","tests/fixtures/centos-7.7/iptables-raw.json","tests/fixtures/centos-7.7/jobs.json","tests/fixtures/centos-7.7/ls-al.json","tests/fixtures/centos-7.7/ls-alh.json","tests/fixtures/centos-7.7/ls.json","tests/fixtures/centos-7.7/lsblk.json","tests/fixtures/centos-7.7/lsmod.json","tests/fixtures/centos-7.7/lsof-sudo.json","tests/fixtures/centos-7.7/lsof.json","tests/fixtures/centos-7.7/mount.json","tests/fixtures/centos-7.7/netstat-l.json","tests/fixtures/centos-7.7/netstat-p.json","tests/fixtures/centos-7.7/netstat-sudo-lnp.json","tests/fixtures/centos-7.7/netstat.json","tests/fixtures/centos-7.7/ps-axu.json","tests/fixtures/centos-7.7/ps-ef.json","tests/fixtures/centos-7.7/route-vn.json","tests/fixtures/centos-7.7/route.json","tests/fixtures/centos-7.7/uname-a.json","tests/fixtures/centos-7.7/uptime.json","tests/fixtures/centos-7.7/w.json","tests/fixtures/ubuntu-18.04/arp-a.json","tests/fixtures/ubuntu-18.04/arp-v.json","tests/fixtures/ubuntu-18.04/arp.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/df.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json","tests/fixtures/ubuntu-18.04/env.json","tests/fixtures/ubuntu-18.04/free-h.json","tests/fixtures/ubuntu-18.04/free.json","tests/fixtures/ubuntu-18.04/history.json","tests/fixtures/ubuntu-18.04/ifconfig.json","tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","tests/fixtures/ubuntu-18.04/iptables-filter.json","tests/fixtures/ubuntu-18.04/iptables-mangle.json","tests/fixtures/ubuntu-18.04/iptables-nat.json","tests/fixtures/ubuntu-18.04/iptables-raw.json","tests/fixtures/ubuntu-18.04/jobs.json","tests/fixtures/ubuntu-18.04/ls-al.json","tests/fixtures/ubuntu-18.04/ls-alh.json","tests/fixtures/ubuntu-18.04/ls.json","tests/fixtures/ubuntu-18.04/lsblk.json","tests/fixtures/ubuntu-18.04/lsmod.json","tests/fixtures/ubuntu-18.04/lsof-sudo.json","tests/fixtures/ubuntu-18.04/lsof.json","tests/fixtures/ubuntu-18.04/mount.json","tests/fixtures/ubuntu-18.04/netstat-l.json","tests/fixtures/ubuntu-18.04/netstat-p.json","tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.json","tests/fixtures/ubuntu-18.04/netstat.json","tests/fixtures/ubuntu-18.04/ps-axu.json","tests/fixtures/ubuntu-18.04/ps-ef.json","tests/fixtures/ubuntu-18.04/route-vn.json","tests/fixtures/ubuntu-18.04/route.json","tests/fixtures/ubuntu-18.04/uname-a.json","tests/fixtures/ubuntu-18.04/uptime.json","tests/fixtures/ubuntu-18.04/w.json"]},"message":"json output files","epoch":1573257821,"epoch_utc":null},{"commit":"b5f1e94fe2859c4fbcf126f8f8fb20d71a9b6433","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 16:03:14 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/netstat.py"]},"message":"fix for space before '-' in program_name","epoch":1573257794,"epoch_utc":null},{"commit":"6a504fb0e10b1ef551ed9fe780926fe5ca02d267","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 16:02:44 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"]},"message":"add exception type","epoch":1573257764,"epoch_utc":null},{"commit":"e02bad2240bacbc31097d931a902a34217d559db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 12:22:41 2019 -0800","stats":{"files_changed":1,"insertions":123,"deletions":175,"files":["jc/parsers/netstat.py"]},"message":"update documentation","epoch":1573244561,"epoch_utc":null},{"commit":"1d4043a3b64c38a20a0db065c3bdc3c6a2d068bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 12:14:09 2019 -0800","stats":{"files_changed":1,"insertions":52,"deletions":0,"files":["jc/parsers/foo.py"]},"message":"add template parser","epoch":1573244049,"epoch_utc":null},{"commit":"039e034829789ca314a00abd4f1d9ad06f1a6eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 11:47:58 2019 -0800","stats":{"files_changed":1,"insertions":19,"deletions":6,"files":["jc/parsers/netstat.py"]},"message":"fix parsing issues in program_name when spaces are in the name","epoch":1573242478,"epoch_utc":null},{"commit":"d828de4f4f2f4c3d582fddee79830d12511c3299","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 09:07:05 2019 -0800","stats":{"files_changed":1,"insertions":53,"deletions":9,"files":["jc/parsers/w.py"]},"message":"update documentation","epoch":1573232825,"epoch_utc":null},{"commit":"098000bb10a3f5ed33d285c6ba4f0dfb9a013fdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 09:04:03 2019 -0800","stats":{"files_changed":2,"insertions":24,"deletions":9,"files":["changelog.txt","jc/parsers/w.py"]},"message":"fix blank 'from' column issue","epoch":1573232643,"epoch_utc":null},{"commit":"b41165eff5cd7371e852cd33e084a919524ead9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 19:13:15 2019 -0800","stats":{"files_changed":1,"insertions":31,"deletions":1,"files":["jc/parsers/w.py"]},"message":"process w data","epoch":1573182795,"epoch_utc":null},{"commit":"6ad7891b2b34fae1a366568e4eba86e886a6dd84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 18:54:52 2019 -0800","stats":{"files_changed":1,"insertions":59,"deletions":14,"files":["jc/parsers/uptime.py"]},"message":"process uptime data","epoch":1573181692,"epoch_utc":null},{"commit":"72138315598cd405bc0508b554108bf3f730dcb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 18:47:01 2019 -0800","stats":{"files_changed":1,"insertions":31,"deletions":10,"files":["jc/parsers/uname.py"]},"message":"add process boilerplate","epoch":1573181221,"epoch_utc":null},{"commit":"10eedd82e4c4678fbf989fe599d7ca75deced5a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 18:34:06 2019 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["changelog.txt"]},"message":"changelog update","epoch":1573180446,"epoch_utc":null},{"commit":"a55493da0f1457a46f29511e0835adfa9d748f7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 18:33:51 2019 -0800","stats":{"files_changed":1,"insertions":93,"deletions":6,"files":["jc/parsers/route.py"]},"message":"process route data","epoch":1573180431,"epoch_utc":null},{"commit":"89973f4162317693b0d094a64115ee87d8479d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 15:33:12 2019 -0800","stats":{"files_changed":1,"insertions":45,"deletions":27,"files":["jc/parsers/ps.py"]},"message":"doc updates and tty fix","epoch":1573169592,"epoch_utc":null},{"commit":"4802222ad50d55372f2b883d83a61181086b0619","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 15:24:03 2019 -0800","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/parsers/ps.py"]},"message":"process ps data","epoch":1573169043,"epoch_utc":null},{"commit":"bcd28f06f87a4260d1787399d723817afd6aee90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 15:09:57 2019 -0800","stats":{"files_changed":1,"insertions":23,"deletions":1,"files":["jc/parsers/ps.py"]},"message":"prep ps for process","epoch":1573168197,"epoch_utc":null},{"commit":"e17a47a7fa7f4c1bb4c4b55fb004963fc1b61434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 14:51:05 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"fix typo","epoch":1573167065,"epoch_utc":null},{"commit":"cad2e16c7aa54a70f476bf4268ff8e5985cff468","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 14:49:21 2019 -0800","stats":{"files_changed":1,"insertions":353,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"document examples","epoch":1573166961,"epoch_utc":null},{"commit":"5da5d278dac77bd4aa21819194e7f9e178bd1887","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 14:43:42 2019 -0800","stats":{"files_changed":1,"insertions":23,"deletions":0,"files":["jc/parsers/netstat.py"]},"message":"process netstat data","epoch":1573166622,"epoch_utc":null},{"commit":"81b6776e57c113cbfb8346d1cfd83532a440c257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 13:58:55 2019 -0800","stats":{"files_changed":1,"insertions":0,"deletions":177,"files":["jc/parsers/netstat.py.old"]},"message":"remove old netstat parser","epoch":1573163935,"epoch_utc":null},{"commit":"5ecb6bd58b4ed91f63e4a0b5939378bd9925b7b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 13:58:37 2019 -0800","stats":{"files_changed":2,"insertions":4,"deletions":3,"files":["changelog.txt","jc/parsers/netstat.py"]},"message":"doc updates","epoch":1573163917,"epoch_utc":null},{"commit":"21b56096c57cfcf5c55fdf5f9bab88b6d5c7dd73","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 13:53:23 2019 -0800","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["jc/parsers/netstat.py"]},"message":"finalize parse_post","epoch":1573163603,"epoch_utc":null},{"commit":"8c78f959731a25a05ee6361a14853c92f8fce69b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 12:13:25 2019 -0800","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"clean up trailing spaces on entries","epoch":1573157605,"epoch_utc":null},{"commit":"94a88bb5669d9a9a5dff085a4c4111bdd39df8f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 10:52:02 2019 -0800","stats":{"files_changed":1,"insertions":35,"deletions":17,"files":["jc/parsers/netstat.py"]},"message":"post_parse flags and program_name","epoch":1573152722,"epoch_utc":null},{"commit":"579124475b0b517b36ddbe5bdb13be14807dea1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 09:02:27 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"simplify parser_map code","epoch":1573146147,"epoch_utc":null},{"commit":"5da83e020015eb5559d216bc3f39b3854e76adf3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:23:11 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"]},"message":"fix found variable error","epoch":1573143791,"epoch_utc":null},{"commit":"a90a76d004b923edece07a52a3aa400a9ef4b005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:15:19 2019 -0800","stats":{"files_changed":2,"insertions":177,"deletions":140,"files":["jc/parsers/netstat.py.old","jc/parsers/netstat2.py"]},"message":"move out old netstat parser","epoch":1573143319,"epoch_utc":null},{"commit":"bdfa95912398b2630fcb13e866f4013747fd0975","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:07:43 2019 -0800","stats":{"files_changed":20,"insertions":209,"deletions":212,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"fix compatibility code","epoch":1573142863,"epoch_utc":null},{"commit":"4380594275bc863e81839a6a7b032a6ff0cbb9b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:04:32 2019 -0800","stats":{"files_changed":1,"insertions":8,"deletions":46,"files":["jc/utils.py"]},"message":"remove cli functions from utils","epoch":1573142672,"epoch_utc":null},{"commit":"88bf252c0df3c583640286880d7992e4399e23f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:04:07 2019 -0800","stats":{"files_changed":2,"insertions":139,"deletions":128,"files":["jc/cli.py","jc/jc.py"]},"message":"rename jc.py to cli.py","epoch":1573142647,"epoch_utc":null},{"commit":"a5efd8adce77fca7e3343f8f518c7bad578fdb4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:03:45 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"rename jc.py to cli.py","epoch":1573142625,"epoch_utc":null},{"commit":"2ee392eefffde77ebdf83f5e4e0c43cf8c1a7d6e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 21:09:09 2019 -0800","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/netstat2.py"]},"message":"add quiet mode","epoch":1573103349,"epoch_utc":null},{"commit":"9c1d893e16ea17b16bec5fd0ec8839c4fe6f0590","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 21:07:25 2019 -0800","stats":{"files_changed":4,"insertions":102,"deletions":90,"files":["jc/jc.py","jc/parsers/arp.py","jc/parsers/df.py","jc/utils.py"]},"message":"move utils to own module and add quiet mode","epoch":1573103245,"epoch_utc":null},{"commit":"88dcb90c83b757285661c72429c5b60bb1ead94a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 21:05:25 2019 -0800","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["changelog.txt"]},"message":"changelog update","epoch":1573103125,"epoch_utc":null},{"commit":"a3bcabc89c1f74d067da0046492dbc56e50b1005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 20:35:10 2019 -0800","stats":{"files_changed":1,"insertions":9,"deletions":62,"files":["jc/parsers/netstat2.py"]},"message":"mvp of netstat raw_data parser","epoch":1573101310,"epoch_utc":null},{"commit":"dafbf9fdcf53a8abbd006baef0be6697f860d2a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 19:17:01 2019 -0800","stats":{"files_changed":4,"insertions":247,"deletions":53,"files":["jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat2.py"]},"message":"process lsmod data","epoch":1573096621,"epoch_utc":null},{"commit":"680cb2b2caa82e1e2c3225b3c44cae2ba03ba02c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 09:56:59 2019 -0600","stats":{"files_changed":1,"insertions":76,"deletions":7,"files":["jc/parsers/lsblk.py"]},"message":"doc update","epoch":1573063019,"epoch_utc":null},{"commit":"54818a06e0e0b981810f6aec45c308da81a9e2ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 09:21:55 2019 -0600","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/lsblk.py"]},"message":"change bool variable names","epoch":1573060915,"epoch_utc":null},{"commit":"88f4c5b5a93da3938b84f97abfc54539ee19ac48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 08:47:54 2019 -0600","stats":{"files_changed":6,"insertions":10,"deletions":10,"files":["jc/parsers/dig.py","jc/parsers/free.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py"]},"message":"remove TypeError from exception check","epoch":1573058874,"epoch_utc":null},{"commit":"2bb7409887e8b7659613189daf58d02cb26bd6ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 23:10:49 2019 -0600","stats":{"files_changed":2,"insertions":36,"deletions":11,"files":["jc/parsers/df.py","jc/parsers/lsblk.py"]},"message":"process lsblk data","epoch":1573024249,"epoch_utc":null},{"commit":"c780aac3aba02cc042c6a3c984af198069956370","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 22:42:48 2019 -0600","stats":{"files_changed":22,"insertions":91,"deletions":5,"files":["jc/jc.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat2.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add compatibility function","epoch":1573022568,"epoch_utc":null},{"commit":"5010aaec285e26ae9dbfdb3fcdc38a3bd36cd236","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:25:20 2019 -0600","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"]},"message":"put exit() back","epoch":1573003520,"epoch_utc":null},{"commit":"066e93cb075021ac94a0e2e6a36a34bc173ee6c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:23:46 2019 -0600","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"]},"message":"move exit() to errormessage()","epoch":1573003426,"epoch_utc":null},{"commit":"0bd2faa7f71a128babc68afea053159ccb91b702","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:17:07 2019 -0600","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/jc.py"]},"message":"beautify compatibility list","epoch":1573003027,"epoch_utc":null},{"commit":"e2f926453ba386736204e358f8306dfc731b5005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:08:41 2019 -0600","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["install.sh"]},"message":"add install script","epoch":1573002521,"epoch_utc":null},{"commit":"b953b79f9c46d8c5398a6c1c2769167b5aed2805","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:04:18 2019 -0600","stats":{"files_changed":3,"insertions":11,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/ls.py"]},"message":"add compatibility","epoch":1573002258,"epoch_utc":null},{"commit":"7f9967780692bec2fcbe992eee0c392ab92efb7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:00:36 2019 -0600","stats":{"files_changed":2,"insertions":19,"deletions":1,"files":["jc/jc.py","jc/parsers/lsblk.py"]},"message":"compatibility function call","epoch":1573002036,"epoch_utc":null},{"commit":"721b54665924ad1657ee83cd5fca601e03700962","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 15:14:52 2019 -0600","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/lsblk.py"]},"message":"finish schema","epoch":1572995692,"epoch_utc":null},{"commit":"2de5e41269421c73e07d4abd6ca99b38be736261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 15:07:40 2019 -0600","stats":{"files_changed":1,"insertions":95,"deletions":12,"files":["jc/parsers/lsblk.py"]},"message":"fix for more columns and build schema","epoch":1572995260,"epoch_utc":null},{"commit":"dfe0f6e99b6174734661fc43d9ad4b1d0dfd96e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 08:30:32 2019 -0800","stats":{"files_changed":1,"insertions":75,"deletions":9,"files":["jc/parsers/ls.py"]},"message":"process ls data","epoch":1572971432,"epoch_utc":null},{"commit":"8873b1bc697c8f9409fa676c88b5ebe109dc8717","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 08:07:39 2019 -0800","stats":{"files_changed":1,"insertions":24,"deletions":46,"files":["jc/parsers/df.py"]},"message":"clean up process code","epoch":1572970059,"epoch_utc":null},{"commit":"9ff94707004fefed475603436fc0a7ffb19e6fee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 07:21:58 2019 -0800","stats":{"files_changed":1,"insertions":9,"deletions":4,"files":["jc/jc.py"]},"message":"refactor helptext() function","epoch":1572967318,"epoch_utc":null},{"commit":"2c58fca53044892e15ceb5e8bcae1afb09fa3269","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 17:07:11 2019 -0800","stats":{"files_changed":1,"insertions":62,"deletions":4,"files":["jc/parsers/jobs.py"]},"message":"process jobs data","epoch":1572916031,"epoch_utc":null},{"commit":"9e5cd90da7d92bbadbc0d25071d087a3dbd90a5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 16:59:14 2019 -0800","stats":{"files_changed":1,"insertions":131,"deletions":261,"files":["jc/parsers/iptables.py"]},"message":"process iptables data","epoch":1572915554,"epoch_utc":null},{"commit":"7ee0d49424bba5274975d6c33e0721977660692f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 15:54:34 2019 -0800","stats":{"files_changed":1,"insertions":107,"deletions":28,"files":["jc/parsers/ifconfig.py"]},"message":"process ifconfig data","epoch":1572911674,"epoch_utc":null},{"commit":"a9058ee21e87454aa423112239c4f4df7daca8c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 15:19:50 2019 -0800","stats":{"files_changed":3,"insertions":4,"deletions":1,"files":["jc/parsers/arp.py","jc/parsers/dig.py","jc/parsers/free.py"]},"message":"doc formatting","epoch":1572909590,"epoch_utc":null},{"commit":"fcf0aac87dccac2ce28e6f55e66e2f0b8f6fbd36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 15:19:35 2019 -0800","stats":{"files_changed":1,"insertions":54,"deletions":10,"files":["jc/parsers/history.py"]},"message":"add history processing","epoch":1572909575,"epoch_utc":null},{"commit":"daec5f068103aae547509ddacc2be56c84f39f17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 15:11:18 2019 -0800","stats":{"files_changed":1,"insertions":55,"deletions":6,"files":["jc/parsers/free.py"]},"message":"process free data","epoch":1572909078,"epoch_utc":null},{"commit":"5b2491d5ae72705758944e247fbca83367c0365f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 15:03:16 2019 -0800","stats":{"files_changed":1,"insertions":54,"deletions":5,"files":["jc/parsers/env.py"]},"message":"process env data","epoch":1572908596,"epoch_utc":null},{"commit":"d9b41ac73b234f5bf7ff3abfee198092424a1bbd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 13:52:45 2019 -0800","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/dig.py"]},"message":"doc formatting","epoch":1572904365,"epoch_utc":null},{"commit":"7168ffddf8a8dfcdd5bcabd8bf943d6417de407d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 13:47:27 2019 -0800","stats":{"files_changed":1,"insertions":87,"deletions":5,"files":["jc/parsers/dig.py"]},"message":"process dig output","epoch":1572904047,"epoch_utc":null},{"commit":"a855344bec9f60d852de326953436ec76f25cffb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 13:05:56 2019 -0800","stats":{"files_changed":1,"insertions":13,"deletions":0,"files":["jc/parsers/arp.py"]},"message":"document schema","epoch":1572901556,"epoch_utc":null},{"commit":"d8b3b59fae924494fbcdfbdf6ad790f5234b0c69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 13:02:54 2019 -0800","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/parsers/df.py"]},"message":"add schema and rename 'avail' to 'available'","epoch":1572901374,"epoch_utc":null},{"commit":"4b7d7840d37be47c1c98c38a6d712e7090e5b68c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 12:50:37 2019 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","changelog.txt"]},"message":"add -r option","epoch":1572900637,"epoch_utc":null},{"commit":"58a094a9b4cab0fcb99581f37a21a450fc3a1aed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 12:40:19 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update","epoch":1572900019,"epoch_utc":null},{"commit":"65adbb4189ac66de3283adb2af93a1251103f057","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 12:40:05 2019 -0800","stats":{"files_changed":1,"insertions":29,"deletions":7,"files":["jc/parsers/arp.py"]},"message":"doc update","epoch":1572900005,"epoch_utc":null},{"commit":"f7350959c9706486a3aed19a999e5ee756a1240c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 12:39:43 2019 -0800","stats":{"files_changed":1,"insertions":47,"deletions":24,"files":["jc/parsers/df.py"]},"message":"df fix for changing header names when -h used","epoch":1572899983,"epoch_utc":null},{"commit":"8934a7d832b8e1375f0bbdd71031f37ae42f3929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 11:10:58 2019 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["jc/parsers/arp.py","jc/parsers/df.py"]},"message":"fix dictionary iteration","epoch":1572894658,"epoch_utc":null},{"commit":"669a424fd6508db91bf5cfa2607033fac85f442c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 11:02:02 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/df.py"]},"message":"fix process function","epoch":1572894122,"epoch_utc":null},{"commit":"591a65c2bda26efcdd570a5f147f98a5be0473d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 10:56:33 2019 -0800","stats":{"files_changed":1,"insertions":46,"deletions":2,"files":["jc/parsers/df.py"]},"message":"process df data","epoch":1572893793,"epoch_utc":null},{"commit":"a78fb890782a64b20c0c1b60afbd915ebdd88535","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 09:32:29 2019 -0800","stats":{"files_changed":1,"insertions":21,"deletions":5,"files":["jc/parsers/arp.py"]},"message":"add raw and processed output","epoch":1572888749,"epoch_utc":null},{"commit":"8979dab2a5371fce3a773004c2309e7483e4cd31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 09:32:09 2019 -0800","stats":{"files_changed":1,"insertions":25,"deletions":20,"files":["jc/jc.py"]},"message":"add raw mode","epoch":1572888729,"epoch_utc":null},{"commit":"0a891f0adda7f2f3233222a0cb5c1f737913ad6f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 08:09:19 2019 -0800","stats":{"files_changed":2,"insertions":4,"deletions":1,"files":["changelog.txt","setup.py"]},"message":"bump python required version","epoch":1572883759,"epoch_utc":null},{"commit":"c220e35b14237c2cfc38aa661413af83ea13e393","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 08:06:50 2019 -0800","stats":{"files_changed":1,"insertions":34,"deletions":33,"files":["jc/jc.py"]},"message":"cleanup helptext","epoch":1572883610,"epoch_utc":null},{"commit":"f26c5818bd958c18f4ecc22611b9c058f6213a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 07:57:47 2019 -0800","stats":{"files_changed":1,"insertions":36,"deletions":33,"files":["jc/jc.py"]},"message":"refactor helptext","epoch":1572883067,"epoch_utc":null},{"commit":"e712cd3fc4cec1b3137c73e199b2d89fd42fb3bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 1 22:29:08 2019 -0700","stats":{"files_changed":1,"insertions":138,"deletions":0,"files":["jc/parsers/netstat2.py"]},"message":"netstat2 skeleton","epoch":1572672548,"epoch_utc":null},{"commit":"0309c9ac67c5f65e0a584fd01e8104ef1990fa7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 1 08:55:52 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"setup cleanup","epoch":1572623752,"epoch_utc":null},{"commit":"9a9eb4120af7696cd3727ac0f0a014663e62b993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 1 08:53:53 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["setup.py"]},"message":"setup updates","epoch":1572623633,"epoch_utc":null},{"commit":"d1927456b02e6c2a6e6395cd6ce873b6565ec37d","merge":"0691cfc a3d9213","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 31 08:06:01 2019 -0700","message":"Merge pull request #6 from kellyjonbrazil/dev\n\nDev v1.1.1","epoch":1572534361,"epoch_utc":null},{"commit":"a3d9213a1e2fd52ba2cbc863d4d01d3ffeebe230","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 31 07:59:03 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["changelog.txt"]},"message":"add date","epoch":1572533943,"epoch_utc":null},{"commit":"3365c03a1e709835b4bd6bca023afbcb46912982","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 31 07:58:44 2019 -0700","stats":{"files_changed":2,"insertions":361,"deletions":0,"files":["tests/test_arp.py","tests/test_dig.py"]},"message":"add tests","epoch":1572533924,"epoch_utc":null},{"commit":"4f6c87389b313b368d9e833feef55fe6daf7aac9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 31 07:27:31 2019 -0700","stats":{"files_changed":7,"insertions":164,"deletions":1,"files":["tests/fixtures/centos-7.7/dig-aaaa.out","tests/fixtures/centos-7.7/dig-x.out","tests/fixtures/centos-7.7/dig.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/dig-aaaa.out","tests/fixtures/ubuntu-18.04/dig-x.out","tests/fixtures/ubuntu-18.04/dig.out"]},"message":"add dig test files","epoch":1572532051,"epoch_utc":null},{"commit":"41a2a9adac7d3c29dfa11292f08b0877c69b1a5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 31 07:27:12 2019 -0700","stats":{"files_changed":2,"insertions":147,"deletions":3,"files":["README.md","jc/parsers/dig.py"]},"message":"remove unnecessary if statement","epoch":1572532032,"epoch_utc":null},{"commit":"74dae2905b2b0916f0be9fee2a4a343962760ff6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 17:23:35 2019 -0700","stats":{"files_changed":1,"insertions":143,"deletions":30,"files":["jc/parsers/dig.py"]},"message":"dig parser mvp","epoch":1572481415,"epoch_utc":null},{"commit":"d1f64214de00090c3faae0bf544c6c2602ab8c31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 17:18:14 2019 -0700","stats":{"files_changed":1,"insertions":19,"deletions":3,"files":["jc/parsers/dig.py"]},"message":"add authority parsing","epoch":1572481094,"epoch_utc":null},{"commit":"d3e1aa20a815d1d1d6ae82776ae18e3416f0966f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 17:03:35 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dig.py"]},"message":"fix when line","epoch":1572480215,"epoch_utc":null},{"commit":"72cae9577756c4355211a19f4dd77aaeb6f8e905","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 16:59:56 2019 -0700","stats":{"files_changed":1,"insertions":47,"deletions":9,"files":["jc/parsers/dig.py"]},"message":"dig fixes","epoch":1572479996,"epoch_utc":null},{"commit":"219bc8130f55f23e3be3abbe56104aefc2f84e86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 15:36:13 2019 -0700","stats":{"files_changed":2,"insertions":155,"deletions":0,"files":["jc/jc.py","jc/parsers/dig.py"]},"message":"dig parser skeleton","epoch":1572474973,"epoch_utc":null},{"commit":"e8c1a554c040ad8f9c6b518db5fd58e8345d2181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:52:53 2019 -0700","stats":{"files_changed":3,"insertions":7,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-a.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/arp-a.out"]},"message":"testfile updates","epoch":1572468773,"epoch_utc":null},{"commit":"087a60bc2adf64bfcedc1f264fef328f993b530c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:52:31 2019 -0700","stats":{"files_changed":2,"insertions":87,"deletions":5,"files":["README.md","jc/parsers/arp.py"]},"message":"documentation updates","epoch":1572468751,"epoch_utc":null},{"commit":"9c9823c3b8737b5de08af6278ca74414138e9263","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:29:06 2019 -0700","stats":{"files_changed":5,"insertions":16,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-v.out","tests/fixtures/centos-7.7/arp.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/arp-v.out","tests/fixtures/ubuntu-18.04/arp.out"]},"message":"add arp testfiles","epoch":1572467346,"epoch_utc":null},{"commit":"cf8d13030bf67261a986c0f80fa20ec0e37a743a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:22:12 2019 -0700","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["README.md"]},"message":"add arp","epoch":1572466932,"epoch_utc":null},{"commit":"1eff69c187ca410ffaec7909bc2532553be1d80c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:21:05 2019 -0700","stats":{"files_changed":2,"insertions":17,"deletions":1,"files":["changelog.txt","jc/parsers/arp.py"]},"message":"add documentation","epoch":1572466865,"epoch_utc":null},{"commit":"b10fb77d714b73a10a9bf28b45269b3530e01cee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:12:53 2019 -0700","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/arp.py"]},"message":"fixup arp parser","epoch":1572466373,"epoch_utc":null},{"commit":"87cee8b230a06fa270b2e36afb56f337da814c80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:00:05 2019 -0700","stats":{"files_changed":2,"insertions":28,"deletions":1,"files":["jc/jc.py","jc/parsers/arp.py"]},"message":"add arp parser","epoch":1572465605,"epoch_utc":null},{"commit":"83ab10d6282e26391bbf6bae5d0d29e040b209f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 12:50:05 2019 -0700","stats":{"files_changed":1,"insertions":44,"deletions":34,"files":["jc/__init__.py"]},"message":"documentation update","epoch":1572465005,"epoch_utc":null},{"commit":"d58a6e1d1dc93155255922b65b0af1325439b033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 14:19:04 2019 -0700","stats":{"files_changed":1,"insertions":13,"deletions":15,"files":["README.md"]},"message":"readme update","epoch":1572383944,"epoch_utc":null},{"commit":"cb46ca5c2776a13c673a44d3e0fbd0661b32af9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 10:27:42 2019 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]},"message":"readme update","epoch":1572370062,"epoch_utc":null},{"commit":"5528d979f0b45787d68ab79b962371df9acc527b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 09:16:03 2019 -0700","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["changelog.txt","setup.py"]},"message":"version bump","epoch":1572365763,"epoch_utc":null},{"commit":"ee94a038a61d60db72046d5bcceec58009decb39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 08:58:52 2019 -0700","stats":{"files_changed":3,"insertions":131,"deletions":0,"files":["tests/test_uname.py","tests/test_uptime.py","tests/test_w.py"]},"message":"add tests","epoch":1572364732,"epoch_utc":null},{"commit":"1d658f7a9fc50873f76985b2fb9de92ada9d5547","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 08:45:11 2019 -0700","stats":{"files_changed":3,"insertions":265,"deletions":0,"files":["tests/test_netstat.py","tests/test_ps.py","tests/test_route.py"]},"message":"add tests","epoch":1572363911,"epoch_utc":null},{"commit":"392cb44f9b19829a5ceba055e24c7af4d8ac5b3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 07:55:26 2019 -0700","stats":{"files_changed":80,"insertions":12667,"deletions":0,"files":["runtests.sh","tests/__init__.py","tests/fixtures/centos-7.7/df-h.out","tests/fixtures/centos-7.7/df.out","tests/fixtures/centos-7.7/env.out","tests/fixtures/centos-7.7/free-h.out","tests/fixtures/centos-7.7/free.out","tests/fixtures/centos-7.7/history.out","tests/fixtures/centos-7.7/ifconfig.out","tests/fixtures/centos-7.7/iptables-filter-nv.out","tests/fixtures/centos-7.7/iptables-filter.out","tests/fixtures/centos-7.7/iptables-mangle.out","tests/fixtures/centos-7.7/iptables-nat.out","tests/fixtures/centos-7.7/iptables-raw.out","tests/fixtures/centos-7.7/jobs.out","tests/fixtures/centos-7.7/ls-al.out","tests/fixtures/centos-7.7/ls-alh.out","tests/fixtures/centos-7.7/ls.out","tests/fixtures/centos-7.7/lsblk.out","tests/fixtures/centos-7.7/lsmod.out","tests/fixtures/centos-7.7/lsof-sudo.out","tests/fixtures/centos-7.7/lsof.out","tests/fixtures/centos-7.7/mount.out","tests/fixtures/centos-7.7/netstat-l.out","tests/fixtures/centos-7.7/netstat-p.out","tests/fixtures/centos-7.7/netstat-sudo-lnp.out","tests/fixtures/centos-7.7/netstat.out","tests/fixtures/centos-7.7/ps-axu.out","tests/fixtures/centos-7.7/ps-ef.out","tests/fixtures/centos-7.7/route-vn.out","tests/fixtures/centos-7.7/route.out","tests/fixtures/centos-7.7/uname-a.out","tests/fixtures/centos-7.7/uptime.out","tests/fixtures/centos-7.7/w.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/df-h.out","tests/fixtures/ubuntu-18.04/df.out","tests/fixtures/ubuntu-18.04/env.out","tests/fixtures/ubuntu-18.04/free-h.out","tests/fixtures/ubuntu-18.04/free.out","tests/fixtures/ubuntu-18.04/history.out","tests/fixtures/ubuntu-18.04/ifconfig.out","tests/fixtures/ubuntu-18.04/iptables-filter-nv.out","tests/fixtures/ubuntu-18.04/iptables-filter.out","tests/fixtures/ubuntu-18.04/iptables-mangle.out","tests/fixtures/ubuntu-18.04/iptables-nat.out","tests/fixtures/ubuntu-18.04/iptables-raw.out","tests/fixtures/ubuntu-18.04/jobs.out","tests/fixtures/ubuntu-18.04/ls-al.out","tests/fixtures/ubuntu-18.04/ls-alh.out","tests/fixtures/ubuntu-18.04/ls.out","tests/fixtures/ubuntu-18.04/lsblk.out","tests/fixtures/ubuntu-18.04/lsmod.out","tests/fixtures/ubuntu-18.04/lsof-sudo.out","tests/fixtures/ubuntu-18.04/lsof.out","tests/fixtures/ubuntu-18.04/mount.out","tests/fixtures/ubuntu-18.04/netstat-l.out","tests/fixtures/ubuntu-18.04/netstat-p.out","tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.out","tests/fixtures/ubuntu-18.04/netstat.out","tests/fixtures/ubuntu-18.04/ps-axu.out","tests/fixtures/ubuntu-18.04/ps-ef.out","tests/fixtures/ubuntu-18.04/route-vn.out","tests/fixtures/ubuntu-18.04/route.out","tests/fixtures/ubuntu-18.04/uname-a.out","tests/fixtures/ubuntu-18.04/uptime.out","tests/fixtures/ubuntu-18.04/w.out","tests/test_df.py","tests/test_env.py","tests/test_free.py","tests/test_history.py","tests/test_ifconfig.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_ls.py","tests/test_lsblk.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py"]},"message":"initial add of tests and fixtures","epoch":1572360926,"epoch_utc":null},{"commit":"579bef079cdd7cfa298bc20e052b8eb75b586f5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 07:54:59 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/netstat.py"]},"message":"move global output variable inside function","epoch":1572360899,"epoch_utc":null},{"commit":"0691cfcab3f5f91908e06ec906d57e548d4e7a1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 26 18:49:43 2019 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["changelog.txt"]},"message":"changelog fix","epoch":1572140983,"epoch_utc":null},{"commit":"db29c7c186601fd4596d3eb121b37100601af907","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 26 18:49:13 2019 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","jc/parsers/netstat.py"]},"message":"documentation fixes","epoch":1572140953,"epoch_utc":null},{"commit":"fb1e03637514b5ab02fd4c5df1db8b3cbacdd531","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 20:27:03 2019 -0700","stats":{"files_changed":1,"insertions":14,"deletions":10,"files":["README.md"]},"message":"formatting","epoch":1572060423,"epoch_utc":null},{"commit":"c3eaf59836538f4ab4c745e87b70115b4a4c5421","merge":"ea0cf0a c9849ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 19:43:24 2019 -0700","message":"Merge pull request #5 from kellyjonbrazil/dev\n\nDev v1.0.1","epoch":1572057804,"epoch_utc":null},{"commit":"c9849ce0db1f864d33739f8f6f942bf5672bc3b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 19:41:35 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]},"message":"changelog update","epoch":1572057695,"epoch_utc":null},{"commit":"d3c89a3092973a7a8765463fff41c2469ed675cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 19:27:02 2019 -0700","stats":{"files_changed":1,"insertions":11,"deletions":9,"files":["jc/parsers/uname.py"]},"message":"check for enough info to parse","epoch":1572056822,"epoch_utc":null},{"commit":"a3d43f27f7bb0835b3593b7c303fe0ee8d896a58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 18:25:33 2019 -0700","stats":{"files_changed":1,"insertions":12,"deletions":10,"files":["jc/parsers/uptime.py"]},"message":"fix odd uptime text parsing","epoch":1572053133,"epoch_utc":null},{"commit":"f4d9c1b699fa30bd297a40ccf3d5f6e7ba3d4253","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 17:16:02 2019 -0700","stats":{"files_changed":1,"insertions":8,"deletions":4,"files":["jc/parsers/uptime.py"]},"message":"fix uptime for minutes and hours long uptime","epoch":1572048962,"epoch_utc":null},{"commit":"de647bba4aff84f7b513cf7f6fec8d3933b0d9da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 16:14:32 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"documentation update","epoch":1572045272,"epoch_utc":null},{"commit":"d7913070315e5e0c89006942250aaf37e9e3e18e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 16:12:45 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"documentation update","epoch":1572045165,"epoch_utc":null},{"commit":"1a4fc204e21f1555ae67c3147322c8d73fab630b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 16:09:31 2019 -0700","stats":{"files_changed":2,"insertions":10,"deletions":1,"files":["README.md","changelog.txt"]},"message":"Documentation update","epoch":1572044971,"epoch_utc":null},{"commit":"0328e14c7c65a330093faa52fe48dae6cb173e42","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 16:05:34 2019 -0700","stats":{"files_changed":1,"insertions":7,"deletions":0,"files":["jc/jc.py"]},"message":"handle ctrl-c gracefully","epoch":1572044734,"epoch_utc":null},{"commit":"1acc4d6c29d136e286f82d607c4a3a59e2680b68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 15:52:53 2019 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/uptime.py"]},"message":"fix uptime parsing for short uptimes","epoch":1572043973,"epoch_utc":null},{"commit":"27245590ce28be933f1a55db4ee6b24783f4b63d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 15:40:53 2019 -0700","stats":{"files_changed":1,"insertions":12,"deletions":20,"files":["jc/parsers/jobs.py"]},"message":"remove integers","epoch":1572043253,"epoch_utc":null},{"commit":"7ca2a4bdb939293e8d7364f8901ad1fd6d3ee808","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 15:39:48 2019 -0700","stats":{"files_changed":5,"insertions":182,"deletions":201,"files":["README.md","changelog.txt","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/netstat.py"]},"message":"remove integer values","epoch":1572043188,"epoch_utc":null},{"commit":"5f1ec6734874651bee595961edf1fafaf5acf001","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 14:58:15 2019 -0700","stats":{"files_changed":10,"insertions":473,"deletions":456,"files":["README.md","jc/parsers/df.py","jc/parsers/history.py","jc/parsers/iptables.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/w.py"]},"message":"lower() headers","epoch":1572040695,"epoch_utc":null},{"commit":"7e44c4278a75c7223d99200023160e8d77fde54d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:55:38 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/jobs.py"]},"message":"formatting","epoch":1572026138,"epoch_utc":null},{"commit":"eda726c4a3864008e2f700374b679ae68a965ef8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:55:26 2019 -0700","stats":{"files_changed":1,"insertions":80,"deletions":1,"files":["jc/parsers/ifconfig.py"]},"message":"documentation update","epoch":1572026126,"epoch_utc":null},{"commit":"5f8e70d73054f1a106c0e75eee621bc0cefd1c6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:55:09 2019 -0700","stats":{"files_changed":9,"insertions":20,"deletions":22,"files":["changelog.txt","jc/parsers/df.py","jc/parsers/free.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/w.py"]},"message":"convert headers to lowercase","epoch":1572026109,"epoch_utc":null},{"commit":"25b90546c652cafa9409f02bae1654cb523add88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:39:05 2019 -0700","stats":{"files_changed":3,"insertions":14,"deletions":9,"files":["README.md","changelog.txt","jc/parsers/df.py"]},"message":"change 'Use%' to 'Use_percent'","epoch":1572025145,"epoch_utc":null},{"commit":"75c084153845757e22c149ea4ae7909d42ec7118","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:32:54 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]},"message":"changelog update","epoch":1572024774,"epoch_utc":null},{"commit":"5b532b9b71fdb9de575da0af9b7989ac537877c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:31:03 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/parsers/lsof.py"]},"message":"minor cleanup","epoch":1572024663,"epoch_utc":null},{"commit":"8c7b3193d131411f8766508fc27b2a6589bba1f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:28:19 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/history.py"]},"message":"documentation change","epoch":1572024499,"epoch_utc":null},{"commit":"0897c96ef3c180a1707e8f56c545f59b3a4e0672","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:22:23 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/lsof.py"]},"message":"formatting","epoch":1572024143,"epoch_utc":null},{"commit":"57d0ab2ed7f444862546da17cbbe8f8ce67bca8c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:22:10 2019 -0700","stats":{"files_changed":2,"insertions":9,"deletions":4,"files":["README.md","jc/parsers/w.py"]},"message":"change LOGIN@ to LOGIN_AT","epoch":1572024130,"epoch_utc":null},{"commit":"a07d9a0e4bb76d369b4a9bf0d77c7590dc3c2861","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:04:29 2019 -0700","stats":{"files_changed":2,"insertions":22,"deletions":13,"files":["README.md","jc/parsers/lsof.py"]},"message":"change SIZE/OFF key to SIZE_OFF","epoch":1572023069,"epoch_utc":null},{"commit":"b3996cb4dfed908d71b292dc0b0136c6675351e6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 09:54:42 2019 -0700","stats":{"files_changed":2,"insertions":14,"deletions":10,"files":["README.md","jc/parsers/lsblk.py"]},"message":"change MAJ:MIN key to MAJ_MIN","epoch":1572022482,"epoch_utc":null},{"commit":"4fa88c1ba38b34f9750625458c465d66f6531bc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 09:53:44 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/history.py"]},"message":"clear out non-ascii chars from data","epoch":1572022424,"epoch_utc":null},{"commit":"c8c5564b29588094721949b96bff1e623437835d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 09:46:03 2019 -0700","stats":{"files_changed":2,"insertions":6,"deletions":3,"files":["README.md","jc/parsers/free.py"]},"message":"change buff/cache key to buff_cache","epoch":1572021963,"epoch_utc":null},{"commit":"6d047486d9f577bc04d79af839f5eef9657a9d43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:53:56 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"doc fix","epoch":1571964836,"epoch_utc":null},{"commit":"42bdc058141c4a3ac6f2c8211f9c990590b1b5cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:41:51 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"changelog fix","epoch":1571964111,"epoch_utc":null},{"commit":"85bfb688862e78d5879df6973b88ba8023fa6086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:33:42 2019 -0700","stats":{"files_changed":2,"insertions":15,"deletions":10,"files":["README.md","jc/parsers/history.py"]},"message":"history parser fixes","epoch":1571963622,"epoch_utc":null},{"commit":"08ec21556b553cd7e64932d68e01ba8ff3b0f210","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:12:27 2019 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/w.py"]},"message":"formatting","epoch":1571962347,"epoch_utc":null},{"commit":"320929bf2595026d32b80b80c3e4878db9cf083f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:11:17 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/env.py"]},"message":"documentation update","epoch":1571962277,"epoch_utc":null},{"commit":"41cd489c34502c42602bf64086670ba3b2b8e14b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:09:32 2019 -0700","stats":{"files_changed":5,"insertions":126,"deletions":0,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/history.py","jc/parsers/uptime.py"]},"message":"add history and uptime parsers","epoch":1571962172,"epoch_utc":null},{"commit":"f101d881a16e662e883818749d48e96858fba853","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 16:06:55 2019 -0700","stats":{"files_changed":4,"insertions":78,"deletions":3,"files":["README.md","jc/jc.py","jc/parsers/w.py","setup.py"]},"message":"add w parser","epoch":1571958415,"epoch_utc":null},{"commit":"fa7466022bb8947c1bbf9f7b01aa4d92300a8992","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 15:54:31 2019 -0700","stats":{"files_changed":3,"insertions":28,"deletions":56,"files":["README.md","changelog.txt","jc/parsers/env.py"]},"message":"fix env parser","epoch":1571957671,"epoch_utc":null},{"commit":"ea0cf0acf22585fbf8828841cf50155636eae82f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 09:48:35 2019 -0700","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/lsof.py"]},"message":"documentation update","epoch":1571935715,"epoch_utc":null},{"commit":"e7921b65f5a250c10b08f78939f74968047af430","merge":"393e8bc 2cc1b1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 18:41:55 2019 -0700","message":"Merge pull request #4 from kellyjonbrazil/dev\n\nDev v0.9.1","epoch":1571881315,"epoch_utc":null},{"commit":"2cc1b1bd5451f31d71b0e2236bdee0ce2b25b5d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 18:39:24 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"version bump","epoch":1571881164,"epoch_utc":null},{"commit":"58ae976db0165730a75dd7450c698d2727a354ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 18:30:55 2019 -0700","stats":{"files_changed":3,"insertions":113,"deletions":4,"files":["README.md","jc/parsers/lsmod.py","setup.py"]},"message":"documentation update","epoch":1571880655,"epoch_utc":null},{"commit":"66772392ae78ef394e22070b127416b1d5b01332","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 18:04:54 2019 -0700","stats":{"files_changed":3,"insertions":32,"deletions":0,"files":["changelog.txt","jc/jc.py","jc/parsers/lsmod.py"]},"message":"add lsmod parser","epoch":1571879094,"epoch_utc":null},{"commit":"29c47c03a64f9c6b0f44d34be5449396654849b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 17:37:25 2019 -0700","stats":{"files_changed":3,"insertions":134,"deletions":2,"files":["README.md","changelog.txt","jc/parsers/lsof.py"]},"message":"documentation update","epoch":1571877445,"epoch_utc":null},{"commit":"91eb9a4d13e9254bd5bbde931196904c1947a28e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 17:27:23 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsof.py"]},"message":"use None instead of --","epoch":1571876843,"epoch_utc":null},{"commit":"a1a3de32ec14d6ef433e334b9694856698c26d41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 17:22:25 2019 -0700","stats":{"files_changed":2,"insertions":59,"deletions":0,"files":["jc/jc.py","jc/parsers/lsof.py"]},"message":"add lsof parser","epoch":1571876545,"epoch_utc":null},{"commit":"9c47fd05bf716c2e18ebf4da41b1a46b972b2518","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 14:11:13 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/jobs.py"]},"message":"doco fix","epoch":1571865073,"epoch_utc":null},{"commit":"649c0aa7c157f87691cc8eeac64c747e81f63594","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 14:10:10 2019 -0700","stats":{"files_changed":2,"insertions":76,"deletions":1,"files":["README.md","jc/parsers/jobs.py"]},"message":"add documentation","epoch":1571865010,"epoch_utc":null},{"commit":"3db758764e50666e5ae40de8d89180de2ef5bc28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 14:05:47 2019 -0700","stats":{"files_changed":3,"insertions":83,"deletions":0,"files":["changelog.txt","jc/jc.py","jc/parsers/jobs.py"]},"message":"add jobs parser","epoch":1571864747,"epoch_utc":null},{"commit":"802f1510eb6d621f9c760f28b83f16a4781b8d93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 10:27:05 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"]},"message":"tighten if statements","epoch":1571851625,"epoch_utc":null},{"commit":"56901788dee154890e70269ad48d4b22bb8c5437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 09:51:29 2019 -0700","stats":{"files_changed":1,"insertions":30,"deletions":19,"files":["jc/jc.py"]},"message":"stop blocking when no pipe and enhance help text","epoch":1571849489,"epoch_utc":null},{"commit":"679ae6d5dc7af26240dc00d8bc6499950f81d457","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 09:20:11 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump","epoch":1571847611,"epoch_utc":null},{"commit":"b15c8c352a87a9b3b1dece28af0287ef71ca02d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 08:46:54 2019 -0700","stats":{"files_changed":1,"insertions":14,"deletions":16,"files":["jc/parsers/iptables.py"]},"message":"simplify state variables","epoch":1571845614,"epoch_utc":null},{"commit":"393e8bc56041a4be01b6c0b2f98895aa330afd04","merge":"e3750b4 976fd7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 17:26:40 2019 -0700","message":"Merge pull request #3 from kellyjonbrazil/dev\n\nDev v0.8.1","epoch":1571790400,"epoch_utc":null},{"commit":"976fd7d9bd49190a8b28ea5acf5af8979cdec537","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 17:24:56 2019 -0700","stats":{"files_changed":1,"insertions":27,"deletions":28,"files":["README.md"]},"message":"readme update","epoch":1571790296,"epoch_utc":null},{"commit":"d8337870cad042cdcc6a4ff3c61f756c3430fa96","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 17:21:00 2019 -0700","stats":{"files_changed":1,"insertions":27,"deletions":28,"files":["jc/parsers/df.py"]},"message":"update documentation","epoch":1571790060,"epoch_utc":null},{"commit":"39a8aec77f5134b5b958e3f679910a1c3512e13a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 17:15:02 2019 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/parsers/ls.py","setup.py"]},"message":"v0.8.1 build","epoch":1571789702,"epoch_utc":null},{"commit":"306d539b6bbfb272c7b955e4847adc3a6b4afa5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 16:50:01 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"readme update","epoch":1571788201,"epoch_utc":null},{"commit":"f3087b8a8ede88834285bb5d0655fc96341c174c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 16:40:27 2019 -0700","stats":{"files_changed":3,"insertions":635,"deletions":1,"files":["README.md","changelog.txt","jc/parsers/iptables.py"]},"message":"update readme and formatting","epoch":1571787627,"epoch_utc":null},{"commit":"414c2ecef88af2d2c098e6acfb507a5fd7bb8eda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 16:32:55 2019 -0700","stats":{"files_changed":1,"insertions":6,"deletions":10,"files":["jc/parsers/iptables.py"]},"message":"fix iptables parser","epoch":1571787175,"epoch_utc":null},{"commit":"776ef2d1be81180b8b295fbc587446a326f2f7a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 15:42:29 2019 -0700","stats":{"files_changed":2,"insertions":61,"deletions":0,"files":["jc/jc.py","jc/parsers/iptables.py"]},"message":"add iptables parser","epoch":1571784149,"epoch_utc":null},{"commit":"9ac57469967443b195be09d580beaa76ce0e1095","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 13:28:15 2019 -0700","stats":{"files_changed":4,"insertions":64,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/uname.py"]},"message":"add uname parser","epoch":1571776095,"epoch_utc":null},{"commit":"a3e55d97c0fd4397b42e9146afb0ba9558274fdb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 12:54:41 2019 -0700","stats":{"files_changed":4,"insertions":127,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/mount.py"]},"message":"add mount parser","epoch":1571774081,"epoch_utc":null},{"commit":"b15227e7ba5377e5fb6799d1b9e4ed5a11c6d92f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:55:11 2019 -0700","stats":{"files_changed":4,"insertions":125,"deletions":0,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/lsblk.py"]},"message":"add lsblk parser","epoch":1571770511,"epoch_utc":null},{"commit":"ec3d1f84ceccb492b4c968938714fafa2e6a6321","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:26:58 2019 -0700","stats":{"files_changed":1,"insertions":24,"deletions":2,"files":["jc/parsers/free.py"]},"message":"fix free parser","epoch":1571768818,"epoch_utc":null},{"commit":"753d5fd9fe5a8e4b67b1a0ec018a9f811e27f8bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:17:21 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"readme update","epoch":1571768241,"epoch_utc":null},{"commit":"73a0d70c9294ad392792e690a7bfbcc4f51b0a5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:15:44 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"readme update","epoch":1571768144,"epoch_utc":null},{"commit":"c2c189f3e6e900e5f3d35df9a9b9d033448baff6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:14:19 2019 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["README.md"]},"message":"readme update","epoch":1571768059,"epoch_utc":null},{"commit":"36bc55a3109278d663b675a09829200f5474c3d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:11:41 2019 -0700","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["README.md"]},"message":"fix df","epoch":1571767901,"epoch_utc":null},{"commit":"a023001cd350e320ce30f47af214ed7a9bb43185","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:10:11 2019 -0700","stats":{"files_changed":6,"insertions":226,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/df.py","jc/parsers/env.py","jc/parsers/free.py"]},"message":"add df, env, and free parsers","epoch":1571767811,"epoch_utc":null},{"commit":"e3750b49628794fd4d563013b1f3a7471c27ce68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 07:40:42 2019 -0700","stats":{"files_changed":2,"insertions":83,"deletions":51,"files":["README.md","jc/__init__.py"]},"message":"documentation enhancements","epoch":1571755242,"epoch_utc":null},{"commit":"b5ea08e55bfd22c9da5ba73c124791012df119a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 18:22:51 2019 -0700","stats":{"files_changed":4,"insertions":20,"deletions":20,"files":["README.md","changelog.txt","jc/parsers/netstat.py","setup.py"]},"message":"fix transport protocol","epoch":1571707371,"epoch_utc":null},{"commit":"8e71b8e3522b9b1af4d869a0854223eb5c300b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 18:11:51 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"fix jq example","epoch":1571706711,"epoch_utc":null},{"commit":"4c8610c54ff4b643237d8f0e4c5781c277fc39f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:59:32 2019 -0700","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["changelog.txt","setup.py"]},"message":"fixed build","epoch":1571705972,"epoch_utc":null},{"commit":"c8f886dc8fcdc58f8471d68c3d583200d0ea2f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:56:53 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"]},"message":"fix example","epoch":1571705813,"epoch_utc":null},{"commit":"4cfc2d22b3f9fd6f0cde8ad206edd7fe260b3071","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:38:40 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"update changelog","epoch":1571704720,"epoch_utc":null},{"commit":"59238c85408117748e78c5e87157381a828f3782","merge":"d54d906 30080c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:36:33 2019 -0700","message":"Merge pull request #2 from kellyjonbrazil/dev\n\nDev v0.6.2","epoch":1571704593,"epoch_utc":null},{"commit":"30080c01659cf611666876b7b063b7b329822352","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:26:00 2019 -0700","stats":{"files_changed":1,"insertions":35,"deletions":35,"files":["README.md"]},"message":"reorder parsers","epoch":1571703960,"epoch_utc":null},{"commit":"fab80bb3b4a1897da29d818e98e9b80ce45443dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:20:12 2019 -0700","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["README.md","setup.py"]},"message":"readme update","epoch":1571703612,"epoch_utc":null},{"commit":"a9f2df805421754afb8e8adbcac7f2d3bd06c9ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 14:27:26 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"move parsed_line var lower","epoch":1571693246,"epoch_utc":null},{"commit":"1d110be6cb25d169ae0dde6532cbcdf05d93d42f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 14:13:31 2019 -0700","stats":{"files_changed":3,"insertions":13,"deletions":1,"files":["README.md","changelog.txt","setup.py"]},"message":"update doco","epoch":1571692411,"epoch_utc":null},{"commit":"be81b5e1ed93eb65e5dbed4f52905439cde86f62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 13:47:22 2019 -0700","stats":{"files_changed":1,"insertions":112,"deletions":121,"files":["README.md"]},"message":"readme update","epoch":1571690842,"epoch_utc":null},{"commit":"5f88f7d8a071306be92cbfb65d6d62c5a68159f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 13:41:53 2019 -0700","stats":{"files_changed":1,"insertions":110,"deletions":137,"files":["jc/parsers/netstat.py"]},"message":"netstat cleanup","epoch":1571690513,"epoch_utc":null},{"commit":"e57c7cc8ef3102cc41dee4ea5fd33d40ba666491","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 13:23:29 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"change output from dict to list","epoch":1571689409,"epoch_utc":null},{"commit":"b216627c1073ea645029e341b4d3376601e5468e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 13:19:00 2019 -0700","stats":{"files_changed":1,"insertions":19,"deletions":116,"files":["jc/parsers/netstat.py"]},"message":"flatten netstat output","epoch":1571689140,"epoch_utc":null},{"commit":"6e925eab131024b5746d870cbd47e2791acf18bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 13:07:30 2019 -0700","stats":{"files_changed":1,"insertions":27,"deletions":18,"files":["jc/jc.py"]},"message":"clean up arg parsing","epoch":1571688450,"epoch_utc":null},{"commit":"d54d906c571b4683f01cab2eca63ae5f0725a87b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 19:03:11 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update readme","epoch":1571450591,"epoch_utc":null},{"commit":"0040febbf099ed8ab35f6ee343750fcf89f2e739","merge":"8073d15 e416c77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 18:57:32 2019 -0700","message":"Merge pull request #1 from kellyjonbrazil/dev\n\nDev v0.5.5","epoch":1571450252,"epoch_utc":null},{"commit":"e416c77bed1267254da972b0f95b7ff1d43fccef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 18:56:26 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"version bump","epoch":1571450186,"epoch_utc":null},{"commit":"9181d242aaed5219bb35fde01d672be88949cceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 18:47:20 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"bump version","epoch":1571449640,"epoch_utc":null},{"commit":"d6f94c53a4df84fb75554605477e49536a809dc2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 18:46:25 2019 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"]},"message":"fix blank output case in ls","epoch":1571449585,"epoch_utc":null},{"commit":"a9294f32a00709737d0b82ff434a311e75ad0bed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 18:40:56 2019 -0700","stats":{"files_changed":3,"insertions":39,"deletions":42,"files":["changelog.txt","jc/parsers/ls.py","setup.py"]},"message":"ls fixes","epoch":1571449256,"epoch_utc":null},{"commit":"4d93b38fe47329e3175025878e87f7c963061f98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 14:18:34 2019 -0700","stats":{"files_changed":2,"insertions":90,"deletions":1,"files":["README.md","jc/parsers/route.py"]},"message":"add route documentation","epoch":1571433514,"epoch_utc":null},{"commit":"77b74c550795f96b808e48a9b0bfd1a8af9866f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:59:30 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"add route parser","epoch":1571432370,"epoch_utc":null},{"commit":"51a1d3e6f48cf7084267be4092f0dd3f778dcef3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:51:36 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump","epoch":1571431896,"epoch_utc":null},{"commit":"2eba30422b44f648c7356a44cbff7416c6648f19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:43:49 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"]},"message":"skip first line","epoch":1571431429,"epoch_utc":null},{"commit":"43ed09ce5ba53261dfd7ef50a2e187cb524c416c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:38:11 2019 -0700","stats":{"files_changed":3,"insertions":25,"deletions":1,"files":["jc/jc.py","jc/parsers/route.py","setup.py"]},"message":"add route parser","epoch":1571431091,"epoch_utc":null},{"commit":"367ab54f94bf7f456377ec9d20f8daf99dbdc1ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:34:28 2019 -0700","stats":{"files_changed":3,"insertions":99,"deletions":2,"files":["README.md","changelog.txt","jc/parsers/ps.py"]},"message":"formatting","epoch":1571430868,"epoch_utc":null},{"commit":"4f552e370e656cc1882a7dae231475a016f8aa14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:26:24 2019 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/ps.py"]},"message":"acknowledgment","epoch":1571430384,"epoch_utc":null},{"commit":"7571139f7980f6e74c29d46971881e82ab0f04bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:20:38 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"bump version","epoch":1571430038,"epoch_utc":null},{"commit":"8ec1bec31711d2ef487da3e4a29a842d98d77626","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:19:39 2019 -0700","stats":{"files_changed":4,"insertions":29,"deletions":7,"files":["changelog.txt","jc/__init__.py","jc/jc.py","jc/parsers/ps.py"]},"message":"add ps parser","epoch":1571429979,"epoch_utc":null},{"commit":"c04895407f203aa0a3a080d5242faf8f6889ae41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 12:57:02 2019 -0700","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["changelog.txt","jc/parsers/netstat.py"]},"message":"ubuntu fixes","epoch":1571428622,"epoch_utc":null},{"commit":"cec73d61310591e4890605f61dc5c1bef5808ec4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 09:57:22 2019 -0700","stats":{"files_changed":4,"insertions":24,"deletions":16,"files":["jc/jc.py","jc/parsers/ifconfig.py","jc/parsers/ls.py","jc/parsers/netstat.py"]},"message":"linting","epoch":1571417842,"epoch_utc":null},{"commit":"756c2bc9acd60111281b76085a40778e51ca06cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 09:57:10 2019 -0700","stats":{"files_changed":1,"insertions":20,"deletions":3,"files":["README.md"]},"message":"add acknowledgments","epoch":1571417830,"epoch_utc":null},{"commit":"084048987c7afc6516f69e68d37d73b2402dc7f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 17:59:46 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"changelog update","epoch":1571360386,"epoch_utc":null},{"commit":"02d97394dd76a8782e6e7d3f8a85e1aed05e796b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 17:28:14 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update","epoch":1571358494,"epoch_utc":null},{"commit":"177f948f9740e3e33449b04b9136a346c9a2c265","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 16:11:55 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version update","epoch":1571353915,"epoch_utc":null},{"commit":"c2b013150ec1f1b1ab7d416f1aa8a62165a5bb95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 15:51:39 2019 -0700","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["changelog.txt"]},"message":"add changelog","epoch":1571352699,"epoch_utc":null},{"commit":"0bec67c29ce5d965271440da41a0c4b4c2a1f0fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 15:39:12 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/netstat.py"]},"message":"double quotes to single quotes","epoch":1571351952,"epoch_utc":null},{"commit":"8073d15fe11546a17cacd81409e255bb8aecd602","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 15:03:32 2019 -0700","stats":{"files_changed":1,"insertions":12,"deletions":4,"files":["README.md"]},"message":"readme update","epoch":1571349812,"epoch_utc":null},{"commit":"3b74afc39e58f801e75b7105e521c1469d30f991","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 15:00:42 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["pypi-upload.sh"]},"message":"upload script","epoch":1571349642,"epoch_utc":null},{"commit":"ed320cf0f4bb11cee1e69e9dc9176ba109df1b86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 13:04:34 2019 -0700","stats":{"files_changed":3,"insertions":22,"deletions":22,"files":["README.md","jc/parsers/netstat.py","setup.py"]},"message":"change netstat pid field to integer","epoch":1571342674,"epoch_utc":null},{"commit":"021b6924e24e1cf0f971246244b174cd3181c0a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 12:15:27 2019 -0700","stats":{"files_changed":2,"insertions":254,"deletions":5,"files":["README.md","jc/parsers/netstat.py"]},"message":"documentation updates","epoch":1571339727,"epoch_utc":null},{"commit":"5fb21b077662f1cb172741945ba5036e5a280638","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 12:09:05 2019 -0700","stats":{"files_changed":1,"insertions":0,"deletions":8,"files":["jc/parsers/netstat.py"]},"message":"remove debug print statements","epoch":1571339345,"epoch_utc":null},{"commit":"7b8540ae2a60f2400fe672a022ee00d1415a3500","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 12:07:01 2019 -0700","stats":{"files_changed":1,"insertions":19,"deletions":7,"files":["jc/parsers/netstat.py"]},"message":"netstat fixes","epoch":1571339221,"epoch_utc":null},{"commit":"a5e039d4c2e07d52a0797833685c562ab285b49b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 10:54:37 2019 -0700","stats":{"files_changed":1,"insertions":17,"deletions":7,"files":["jc/parsers/netstat.py"]},"message":"netstat debugging","epoch":1571334877,"epoch_utc":null},{"commit":"7071f60a302b7aefb8fb312699b0abec25548986","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 09:05:49 2019 -0700","stats":{"files_changed":1,"insertions":66,"deletions":18,"files":["jc/parsers/netstat.py"]},"message":"netstat mvp","epoch":1571328349,"epoch_utc":null},{"commit":"0de1dff0253eb46b7336103f62f888940406ccc0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 08:09:19 2019 -0700","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["jc/parsers/netstat.py"]},"message":"fix ands","epoch":1571324959,"epoch_utc":null},{"commit":"b3c52eb1ccf82e899dda62c332c0b217d80eb4c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 08:03:56 2019 -0700","stats":{"files_changed":2,"insertions":112,"deletions":40,"files":["jc/parsers/ifconfig.py","jc/parsers/netstat.py"]},"message":"add netstat parser","epoch":1571324636,"epoch_utc":null},{"commit":"366c5dbc010869bdb1d3b9d852e10510bd5c266f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 17:36:50 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/jc.py"]},"message":"fix help message","epoch":1571272610,"epoch_utc":null},{"commit":"a3ee02514b5fbd43a38ddf515a4aad49bb4e161a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 17:23:18 2019 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/jc.py"]},"message":"fix imports and module names","epoch":1571271798,"epoch_utc":null},{"commit":"46ad1269cb58dc6f064d17eb0b04da62d8fd5fce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 17:15:43 2019 -0700","stats":{"files_changed":2,"insertions":4,"deletions":3,"files":["jc/jc.py","setup.py"]},"message":"packaging fixes","epoch":1571271343,"epoch_utc":null},{"commit":"7234afe568818678585ac423649a0ccce0f45d68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 16:22:52 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"entrypoint fix","epoch":1571268172,"epoch_utc":null},{"commit":"caf480c63aacb518805d48fba0fd454959d11023","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 16:01:34 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"module fix","epoch":1571266894,"epoch_utc":null},{"commit":"62851b48d5e5cd673e630a28996e1c24cc45aa58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 15:54:20 2019 -0700","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/jc.py","setup.py"]},"message":"fix modules","epoch":1571266460,"epoch_utc":null},{"commit":"46d6da92f0e196e150ab9dd44b1ba290c950905b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 15:08:06 2019 -0700","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["jc/{jc => jc.py}","setup.py"]},"message":"fix entry_points","epoch":1571263686,"epoch_utc":null},{"commit":"e572b2edfa993c5049ef3caeda7a8e4797f0c751","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 15:03:34 2019 -0700","stats":{"files_changed":2,"insertions":37,"deletions":29,"files":["jc/jc","setup.py"]},"message":"use entry_points instead of scripts","epoch":1571263414,"epoch_utc":null},{"commit":"72c69e7de59029d623c9819dda6aa8cae91bc419","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 09:39:04 2019 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/jc"]},"message":"fix package paths","epoch":1571243944,"epoch_utc":null},{"commit":"4d1565071e5cf7c38e026e08db8f4d2e79969691","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 09:03:05 2019 -0700","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["jc/{jc.py => jc}","setup.py"]},"message":"rename jc.py to jc","epoch":1571241785,"epoch_utc":null},{"commit":"3652e51693d7ba829f4699fd80de20856941d82f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 08:27:24 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"fix requirements","epoch":1571239644,"epoch_utc":null},{"commit":"49ce9f13e817266659400a8c19f5b078a48589df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 15 18:03:51 2019 -0700","stats":{"files_changed":3,"insertions":17,"deletions":20,"files":["jc/jc.py","jc/parsers/__init__.py","setup.py"]},"message":"setup updates","epoch":1571187831,"epoch_utc":null},{"commit":"e83170b7ec7ed2123bfde69be263b6034c7afa53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 15 16:28:42 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["README.md"]},"message":"readme update","epoch":1571182122,"epoch_utc":null},{"commit":"ffb6eb754a87baad5fb0558e30a5bca1a9b9e0a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 15 16:10:24 2019 -0700","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/parsers/__init__.py","setup.py"]},"message":"setup fixes","epoch":1571181024,"epoch_utc":null},{"commit":"2597a18d95d01109d2250487b7550a501edaf77b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 15 15:32:23 2019 -0700","stats":{"files_changed":1,"insertions":82,"deletions":0,"files":["README.md"]},"message":"readme update","epoch":1571178743,"epoch_utc":null},{"commit":"3e576250b1bfe1c62c556f2fa0425103b0ede1f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 15 15:06:09 2019 -0700","stats":{"files_changed":11,"insertions":429,"deletions":0,"files":[".gitignore","LICENSE.md","README.md","build-package.sh","jc/__init__.py","jc/jc.py","jc/parsers/__init__.py","jc/parsers/ifconfig.py","jc/parsers/ls.py","jc/parsers/netstat.py","setup.py"]},"message":"First commit","epoch":1571177169,"epoch_utc":null}] +[{"commit":"096fffdb79807d34b99985b38df0a3df7f6a86c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 20 10:03:36 2022 -0400","stats":{"files_changed":2,"insertions":120,"deletions":36,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":78},{"name":"jc/parsers/git_log.py","lines_changed":78}]},"message":"use stat examples","epoch":1650474216,"epoch_utc":null},{"commit":"728d882ed007b3c8b785018874a0eb06e1143b66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 20 09:50:19 2022 -0400","stats":{"files_changed":2,"insertions":90,"deletions":12,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":51},{"name":"jc/parsers/git_log.py","lines_changed":51}]},"message":"add timestamp docs and examples","epoch":1650473419,"epoch_utc":null},{"commit":"b53e42aca623181aa9bc72194e6eeef1e9a3a237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 20 09:44:42 2022 -0400","stats":{"files_changed":5,"insertions":29,"deletions":6,"files":["docs/parsers/git_log.md","docs/utils.md","jc/parsers/git_log.py","jc/utils.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":8},{"name":"docs/utils.md","lines_changed":4},{"name":"jc/parsers/git_log.py","lines_changed":14},{"name":"jc/utils.py","lines_changed":7},{"name":"man/jc.1","lines_changed":2}]},"message":"add calculated timestamp","epoch":1650473082,"epoch_utc":null},{"commit":"477329ce5b8f5c2a8e4384ba3f59289fc18c957d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 20 08:26:26 2022 -0400","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add linefeed to version text","epoch":1650468386,"epoch_utc":null},{"commit":"283dc4efd55030188f17c7e1dfbc5315103494b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 17:44:15 2022 -0400","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["CHANGELOG","jc/cli.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/cli.py","lines_changed":7}]},"message":"add python interpreter version and path to -v and -a output","epoch":1650415455,"epoch_utc":null},{"commit":"d490bbcaa0291a691b95fa5b61807eebb0b088eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 15:26:31 2022 -0400","stats":{"files_changed":1,"insertions":26,"deletions":26,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":52}]},"message":"normalize add/update","epoch":1650407191,"epoch_utc":null},{"commit":"f49ddf8e5c5009702155fc62d83c63e3c08c594d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 15:18:04 2022 -0400","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":4},{"name":"jc/parsers/git_log.py","lines_changed":4}]},"message":"doc update","epoch":1650406684,"epoch_utc":null},{"commit":"e1e341652b51b823844e76ef7e68f9373a323435","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 15:10:40 2022 -0400","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"doc update","epoch":1650406240,"epoch_utc":null},{"commit":"ecda667549137bed5622cca69f2022e7a75ea833","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 15:10:35 2022 -0400","stats":{"files_changed":2,"insertions":12,"deletions":8,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":2},{"name":"jc/parsers/git_log.py","lines_changed":18}]},"message":"process integers","epoch":1650406235,"epoch_utc":null},{"commit":"a0d96a188a9f875b2d59625aa97d4f80bba290f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 14:45:20 2022 -0400","stats":{"files_changed":2,"insertions":5,"deletions":1,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"doc update","epoch":1650404720,"epoch_utc":null},{"commit":"6c0f0cddfe4dd2d5169f7c55416c6725912557f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 14:43:47 2022 -0400","stats":{"files_changed":2,"insertions":14,"deletions":1,"files":["jc/parsers/yaml.py","tests/test_yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":7},{"name":"tests/test_yaml.py","lines_changed":8}]},"message":"fix for datetime objects in yaml files","epoch":1650404627,"epoch_utc":null},{"commit":"c7173ecd89742c8cf8a7bc4a8021baac5c3cd483","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 14:34:53 2022 -0400","stats":{"files_changed":1,"insertions":8,"deletions":6,"files":["jc/parsers/git_log.py"],"file_stats":[{"name":"jc/parsers/git_log.py","lines_changed":14}]},"message":"fix mypy issues","epoch":1650404093,"epoch_utc":null},{"commit":"e98240c905394e3ebd6a45fa31b6d432c150afc4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 14:20:44 2022 -0400","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/git_log.py"],"file_stats":[{"name":"jc/parsers/git_log.py","lines_changed":8}]},"message":"extend instead of append list","epoch":1650403244,"epoch_utc":null},{"commit":"6cb7e25974b11afe57d7d0e8550b3b1a56b14c67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 13:17:24 2022 -0400","stats":{"files_changed":3,"insertions":93,"deletions":1,"files":["README.md","docs/parsers/git_log.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/git_log.md","lines_changed":86},{"name":"man/jc.1","lines_changed":7}]},"message":"add docs","epoch":1650399444,"epoch_utc":null},{"commit":"c37980c05c7fbd4f811ce5fcfcfddaf5f3ab5414","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 13:17:16 2022 -0400","stats":{"files_changed":1,"insertions":41,"deletions":7,"files":["jc/parsers/git_log.py"],"file_stats":[{"name":"jc/parsers/git_log.py","lines_changed":48}]},"message":"add stat support","epoch":1650399436,"epoch_utc":null},{"commit":"b5943bd39d776fc4c3b3dea03c0f3d4b6f4bb260","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 10:32:55 2022 -0400","stats":{"files_changed":1,"insertions":23,"deletions":10,"files":["jc/parsers/git_log.py"],"file_stats":[{"name":"jc/parsers/git_log.py","lines_changed":33}]},"message":"initial docstring","epoch":1650389575,"epoch_utc":null},{"commit":"49a3a7db3b2b0b292489a41691c9dcbce816cfed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 19 09:30:38 2022 -0400","stats":{"files_changed":2,"insertions":175,"deletions":0,"files":["jc/lib.py","jc/parsers/git_log.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/git_log.py","lines_changed":174}]},"message":"initial git-log parser","epoch":1650385838,"epoch_utc":null},{"commit":"0c55240e9da30ac4293cc324f1094de2abd3da91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 13 10:54:28 2022 -0700","stats":{"files_changed":3,"insertions":1,"deletions":0,"files":["CHANGELOG","tests/{ => templates}/_test_foo.py","tests/{ => templates}/_test_foo_s.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"tests/{ => templates}/_test_foo.py","lines_changed":0},{"name":"tests/{ => templates}/_test_foo_s.py","lines_changed":0}]},"message":"move test templates to fix test failures on some systems","epoch":1649872468,"epoch_utc":null},{"commit":"f91988aed5499d25acf7a7e87b2b0d0cd37b62af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 12 14:22:06 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/lib.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":2}]},"message":"iterator -> iterable","epoch":1649798526,"epoch_utc":null},{"commit":"3c3ad9fc6adf865b3814a1f03814d0bc17d1c6bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 12 14:20:58 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"iterator -> iterable in doc","epoch":1649798458,"epoch_utc":null},{"commit":"291ab79e22a59cb31814e7a5af9dbc9f2ec863e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 12 11:07:34 2022 -0700","stats":{"files_changed":3,"insertions":24,"deletions":24,"files":["README.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":24},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":22}]},"message":"fix arch linux command","epoch":1649786854,"epoch_utc":null},{"commit":"e6d5892c146762cd41a966adadb77db333d98ace","merge":"c0414e7 dcca7a5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 12 11:02:37 2022 -0700","message":"Merge pull request #226 from kellyjonbrazil/master\n\nsync to dev","epoch":1649786557,"epoch_utc":null},{"commit":"dcca7a57d558721a61fbba44f07b1d53116827e1","merge":"7138eef 4ee8a69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 12 11:00:51 2022 -0700","message":"Merge pull request #225 from adrianteri/patch-1\n\nUpdate README","epoch":1649786451,"epoch_utc":null},{"commit":"4ee8a69337b24e199983fe657643abcb0a56a8e6","author":"003","author_email":"adriateri@gmail.com","date":"Tue Apr 12 20:53:39 2022 +0300","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"Update README\n\nSpecify the Arch package is in the AUR and NOT in the standard Archlinux repositories.","epoch":1649822019,"epoch_utc":null},{"commit":"c0414e7db7f5d785b72ad616517f2ec63af151a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 17:18:20 2022 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":8}]},"message":"clean up background tasks","epoch":1649636300,"epoch_utc":null},{"commit":"a419175fe6dffe9c5fd20cfbd82ee552bc82a993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 17:14:34 2022 -0700","stats":{"files_changed":2,"insertions":34,"deletions":17,"files":["docgen.sh","updatedocs.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":30},{"name":"updatedocs.sh","lines_changed":21}]},"message":"enhance parallelization","epoch":1649636074,"epoch_utc":null},{"commit":"cd6dead034f3c72aebd22afeb2aea6591ae6d94d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 16:54:34 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"man page update","epoch":1649634874,"epoch_utc":null},{"commit":"45342ea9fea29947d8d90260c7665ffbca612cce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 16:54:22 2022 -0700","stats":{"files_changed":2,"insertions":16,"deletions":9,"files":["docgen.sh","updatedocs.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":16},{"name":"updatedocs.sh","lines_changed":9}]},"message":"parallelize doc gneration","epoch":1649634862,"epoch_utc":null},{"commit":"585bf0e159c7839869cf3e458938dcc5fa2ceb81","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 10:32:51 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"xrandr update","epoch":1649611971,"epoch_utc":null},{"commit":"3a860b9babe93d455f68ef21436edf7470d375af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 10:31:13 2022 -0700","stats":{"files_changed":2,"insertions":7,"deletions":5,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":4},{"name":"jc/parsers/xrandr.py","lines_changed":8}]},"message":"add rotation field","epoch":1649611873,"epoch_utc":null},{"commit":"269180df77f9ff953b07222e8ae790c7e7a8298e","merge":"e85f11c a1afed8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 10 10:19:50 2022 -0700","message":"Merge pull request #223 from anekos/fix/support-rotated-devices\n\nFix/support rotated devices","epoch":1649611190,"epoch_utc":null},{"commit":"a1afed8d95e33fbbc618c7b5778a9faeea2f628f","author":"anekos","author_email":"anekos@snca.net","date":"Sun Apr 10 18:19:29 2022 +0900","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["docs/parsers/xrandr.md"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":4}]},"message":"doc update","epoch":1649639969,"epoch_utc":null},{"commit":"e39f150a216e4e184444dfc88a63e0f303e51631","author":"anekos","author_email":"anekos@snca.net","date":"Sun Apr 10 18:12:28 2022 +0900","stats":{"files_changed":3,"insertions":9,"deletions":4,"files":["jc/parsers/xrandr.py","tests/fixtures/generic/xrandr_simple.json","tests/test_xrandr.py"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":4},{"name":"tests/fixtures/generic/xrandr_simple.json","lines_changed":1},{"name":"tests/test_xrandr.py","lines_changed":8}]},"message":"Support rotated devices","epoch":1649639548,"epoch_utc":null},{"commit":"e85f11c6fcad5461bae612dd5a945c20d300e59a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 4 12:00:41 2022 -0700","stats":{"files_changed":4,"insertions":12,"deletions":12,"files":["docs/parsers/ini.md","docs/parsers/kv.md","jc/parsers/ini.py","jc/parsers/kv.py"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":6},{"name":"docs/parsers/kv.md","lines_changed":6},{"name":"jc/parsers/ini.py","lines_changed":6},{"name":"jc/parsers/kv.py","lines_changed":6}]},"message":"doc formatting","epoch":1649098841,"epoch_utc":null},{"commit":"49a9d7b07e89696f2e022655d7256b7d6ad4bf7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 4 11:42:16 2022 -0700","stats":{"files_changed":3,"insertions":12,"deletions":8,"files":["docs/parsers/ini.md","docs/parsers/kv.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":8},{"name":"docs/parsers/kv.md","lines_changed":10},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1649097736,"epoch_utc":null},{"commit":"a2ef9c429e4bb9f70d033511dce77ccdb9013971","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 4 11:38:52 2022 -0700","stats":{"files_changed":4,"insertions":38,"deletions":8,"files":["jc/parsers/ini.py","jc/parsers/kv.py","tests/test_ini.py","tests/test_kv.py"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":12},{"name":"jc/parsers/kv.py","lines_changed":10},{"name":"tests/test_ini.py","lines_changed":12},{"name":"tests/test_kv.py","lines_changed":12}]},"message":"allow duplicate keys","epoch":1649097532,"epoch_utc":null},{"commit":"d5e9074f1c8facb3f15b8c41a008917178626978","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 4 11:38:04 2022 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/lib.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/lib.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1649097484,"epoch_utc":null},{"commit":"774699f085d97f22ae2dab0cf64d72aa1e1709f7","merge":"789f073 7138eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 4 18:21:15 2022 +0000","message":"Merge pull request #220 from kellyjonbrazil/master\n\nsync to dev","epoch":1649121675,"epoch_utc":1649096475},{"commit":"7138eef3d137bc64286d4af453d8d4e7b3f4408d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 30 14:39:56 2022 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"docs/parsers/asciitable_m.md","lines_changed":6},{"name":"jc/parsers/asciitable_m.py","lines_changed":6}]},"message":"fix newline chars in doc","epoch":1648676396,"epoch_utc":null},{"commit":"fad5e544aa9e57d31473190e196f59c616901207","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 29 09:58:44 2022 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":2},{"name":"jc/parsers/asciitable.py","lines_changed":2}]},"message":"formatting","epoch":1648573124,"epoch_utc":null},{"commit":"64757e2cf55448bccfbbd60d31930ab3f59af21b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 29 09:35:54 2022 -0700","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":12},{"name":"jc/parsers/asciitable.py","lines_changed":12}]},"message":"doc formatting","epoch":1648571754,"epoch_utc":null},{"commit":"e05be3f08beae1b600fc55a3a7b4e28163e15bc0","merge":"ac61e9a 789f073","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 25 22:36:05 2022 +0000","message":"Merge pull request #213 from kellyjonbrazil/dev\n\nDev v1.18.6","epoch":1648272965,"epoch_utc":1648247765},{"commit":"789f0735dfd63e728b8716d97cf0c6045ede5011","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 25 15:32:37 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"doc update","epoch":1648247557,"epoch_utc":null},{"commit":"34bc7753174be28d6c1a00dadc662bc374e554c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 25 15:32:11 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1648247531,"epoch_utc":null},{"commit":"38de059a1bc285c8681086d9fb43d0d23ac01d49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 16:58:45 2022 -0700","stats":{"files_changed":3,"insertions":9,"deletions":3,"files":["docs/parsers/asciitable.md","docs/parsers/universal.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":6},{"name":"docs/parsers/universal.md","lines_changed":4},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1648166325,"epoch_utc":null},{"commit":"304ae6268f4dff6e6f901628e7ff89db1d6e0767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 16:58:39 2022 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":12}]},"message":"minor optimization by changing the expression order","epoch":1648166319,"epoch_utc":null},{"commit":"978caf45221188a29c0e67147804f20f317c066d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 12:37:46 2022 -0700","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["jc/parsers/asciitable.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":26}]},"message":"minor optimization by reordering expressions","epoch":1648150666,"epoch_utc":null},{"commit":"17df5bfcfc25f226a2976aa7ab8a80e4aaa915c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 11:58:13 2022 -0700","stats":{"files_changed":2,"insertions":12,"deletions":2,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":10},{"name":"jc/parsers/asciitable_m.py","lines_changed":4}]},"message":"cache _is_separator function","epoch":1648148293,"epoch_utc":null},{"commit":"5e6a5068cff71b3b30525d0a12868bdf6551456c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 11:57:01 2022 -0700","stats":{"files_changed":1,"insertions":6,"deletions":2,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":8}]},"message":"allow iterables for simple table parser","epoch":1648148221,"epoch_utc":null},{"commit":"619de68a61be0117e635032347dde417d77c748c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 09:39:53 2022 -0700","stats":{"files_changed":2,"insertions":8,"deletions":9,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":7},{"name":"jc/parsers/asciitable_m.py","lines_changed":10}]},"message":"formatting","epoch":1648139993,"epoch_utc":null},{"commit":"6748c3cc91f90bddea3d07b8b30a049ee55eaf35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 24 09:31:12 2022 -0700","stats":{"files_changed":2,"insertions":65,"deletions":61,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":52},{"name":"jc/parsers/asciitable_m.py","lines_changed":74}]},"message":"remove lines from corner detection and add rounded corners","epoch":1648139472,"epoch_utc":null},{"commit":"0a462978b731770d1290187a502706c2322f5f91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 23 15:08:33 2022 -0700","stats":{"files_changed":4,"insertions":101,"deletions":3,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py","tests/test_asciitable.py","tests/test_asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":25},{"name":"jc/parsers/asciitable_m.py","lines_changed":8},{"name":"tests/test_asciitable.py","lines_changed":43},{"name":"tests/test_asciitable_m.py","lines_changed":28}]},"message":"fix for special characters in headers","epoch":1648073313,"epoch_utc":null},{"commit":"e66a82ff49b40a674f9ef373a12d59fc71bfa730","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 23 10:50:34 2022 -0700","stats":{"files_changed":3,"insertions":6,"deletions":5,"files":["CHANGELOG","jc/parsers/asciitable_m.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":5},{"name":"jc/parsers/asciitable_m.py","lines_changed":4},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1648057834,"epoch_utc":null},{"commit":"f3aa797d96c8e2cef2124dbb2f49d1fadaee3fa2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 17:47:19 2022 -0700","stats":{"files_changed":2,"insertions":69,"deletions":9,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":43},{"name":"jc/parsers/asciitable_m.py","lines_changed":35}]},"message":"add more pretty table separators","epoch":1647996439,"epoch_utc":null},{"commit":"e5b478218c4ba3781afd085056dba888c3f6ae02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 16:05:07 2022 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_xrandr.py"],"file_stats":[{"name":"tests/test_xrandr.py","lines_changed":6}]},"message":"add quiet=True to parse tests","epoch":1647990307,"epoch_utc":null},{"commit":"35e0e9c32afbc5450c661bcb3a23904d135358ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 15:57:43 2022 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":1}]},"message":"remove print statement","epoch":1647989863,"epoch_utc":null},{"commit":"17c3c2f029a0a47eb02d681567619d471b99949c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 15:55:59 2022 -0700","stats":{"files_changed":4,"insertions":58,"deletions":2,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py","tests/test_asciitable.py","tests/test_asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":3},{"name":"jc/parsers/asciitable_m.py","lines_changed":2},{"name":"tests/test_asciitable.py","lines_changed":31},{"name":"tests/test_asciitable_m.py","lines_changed":24}]},"message":"add bold bar seperator and ANSI code tests","epoch":1647989759,"epoch_utc":null},{"commit":"cf83e6398b3314b233581eb313510872177de20a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 15:13:07 2022 -0700","stats":{"files_changed":2,"insertions":7,"deletions":0,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":4},{"name":"jc/parsers/asciitable_m.py","lines_changed":3}]},"message":"add fancy separators","epoch":1647987187,"epoch_utc":null},{"commit":"94e061b881e2ed28d2b462ad038e5ba77182b6c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 14:53:34 2022 -0700","stats":{"files_changed":1,"insertions":275,"deletions":0,"files":["tests/test_asciitable.py"],"file_stats":[{"name":"tests/test_asciitable.py","lines_changed":275}]},"message":"add asciitable parser tests","epoch":1647986014,"epoch_utc":null},{"commit":"720480e39ce3cc2079d7f4f5bcff2725081fec34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 13:21:10 2022 -0700","stats":{"files_changed":4,"insertions":10,"deletions":2,"files":["docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":3},{"name":"docs/parsers/asciitable_m.md","lines_changed":3},{"name":"jc/parsers/asciitable.py","lines_changed":3},{"name":"jc/parsers/asciitable_m.py","lines_changed":3}]},"message":"doc update","epoch":1647980470,"epoch_utc":null},{"commit":"82a63fe15922456853aa4597aa10a5a02b20bdef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 12:42:07 2022 -0700","stats":{"files_changed":2,"insertions":6,"deletions":8,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":7},{"name":"jc/parsers/asciitable.py","lines_changed":7}]},"message":"doc update","epoch":1647978127,"epoch_utc":null},{"commit":"9c1ec9940e68ce9848da20e81b8c0b7e35a215df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 12:35:56 2022 -0700","stats":{"files_changed":4,"insertions":82,"deletions":14,"files":["docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":44},{"name":"docs/parsers/asciitable_m.md","lines_changed":4},{"name":"jc/parsers/asciitable.py","lines_changed":44},{"name":"jc/parsers/asciitable_m.py","lines_changed":4}]},"message":"doc update","epoch":1647977756,"epoch_utc":null},{"commit":"f23f19da453a0f7bcf70e417a10f87e27571aa43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 12:25:59 2022 -0700","stats":{"files_changed":5,"insertions":122,"deletions":9,"files":["README.md","docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/asciitable.md","lines_changed":97},{"name":"docs/parsers/asciitable_m.md","lines_changed":4},{"name":"jc/parsers/asciitable_m.py","lines_changed":24},{"name":"man/jc.1","lines_changed":5}]},"message":"doc update","epoch":1647977159,"epoch_utc":null},{"commit":"aea2e1b0a9c6bb2a02a6e73889bb04e8f4f22588","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 12:25:51 2022 -0700","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["tests/test_asciitable_m.py"],"file_stats":[{"name":"tests/test_asciitable_m.py","lines_changed":48}]},"message":"fix tests so blank strings are now None","epoch":1647977151,"epoch_utc":null},{"commit":"7d95d679bf4093ea77f30a1be55384b6dbf08341","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 12:25:24 2022 -0700","stats":{"files_changed":2,"insertions":212,"deletions":1,"files":["jc/lib.py","jc/parsers/asciitable.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2},{"name":"jc/parsers/asciitable.py","lines_changed":211}]},"message":"add asciitable parser","epoch":1647977124,"epoch_utc":null},{"commit":"b3b140066b74ee31dd1c460502caf2f26df321b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 07:21:19 2022 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"docs/parsers/asciitable_m.md","lines_changed":4},{"name":"jc/parsers/asciitable_m.py","lines_changed":4}]},"message":"doc update","epoch":1647958879,"epoch_utc":null},{"commit":"b204c423c1b947c17cb251a5dd3c444cd71dd2c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 07:05:14 2022 -0700","stats":{"files_changed":4,"insertions":193,"deletions":15,"files":["README.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/asciitable_m.md","lines_changed":122},{"name":"jc/parsers/asciitable_m.py","lines_changed":78},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update","epoch":1647957914,"epoch_utc":null},{"commit":"d451c309bb0d8889dc09a698212bf01c2154a582","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 22 06:30:07 2022 -0700","stats":{"files_changed":1,"insertions":11,"deletions":8,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":19}]},"message":"change multiple or statements to any()","epoch":1647955807,"epoch_utc":null},{"commit":"01d53da68ed04b736934851137c59216ad02d8c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 19:11:27 2022 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":1}]},"message":"remove debug print","epoch":1647915087,"epoch_utc":null},{"commit":"53dd05e52c329a15c30a756a36a165ac59ef8a14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 19:10:02 2022 -0700","stats":{"files_changed":2,"insertions":29,"deletions":1,"files":["jc/parsers/asciitable_m.py","tests/test_asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":3},{"name":"tests/test_asciitable_m.py","lines_changed":27}]},"message":"fix rstrip and add tests","epoch":1647915002,"epoch_utc":null},{"commit":"ab564f5be8282f1c7ee2d602bcef398fdfd4570f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 17:57:14 2022 -0700","stats":{"files_changed":2,"insertions":237,"deletions":1,"files":["jc/parsers/asciitable_m.py","tests/test_asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":16},{"name":"tests/test_asciitable_m.py","lines_changed":222}]},"message":"add tests","epoch":1647910634,"epoch_utc":null},{"commit":"00c39450f9878527b60545ad61c04cfb98f418dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 13:36:54 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":2}]},"message":"enhance type annotation","epoch":1647895014,"epoch_utc":null},{"commit":"f611d08b50219f4e573c1d1f0beae27583e76432","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 13:33:35 2022 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":5}]},"message":"formatting","epoch":1647894815,"epoch_utc":null},{"commit":"90e79b7df3a4d5b37835fdf1c2debc1bad0a40b9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 13:27:44 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":2}]},"message":"formatting","epoch":1647894464,"epoch_utc":null},{"commit":"4eb2d725d5fe6f2cc7935c7dc891912cf7b8e940","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 13:09:50 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":2}]},"message":"formatting","epoch":1647893390,"epoch_utc":null},{"commit":"51ae5ebcac7263ef2571c11975b275eff352bbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 21 13:06:34 2022 -0700","stats":{"files_changed":1,"insertions":148,"deletions":175,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":323}]},"message":"new streamlined parser","epoch":1647893194,"epoch_utc":null},{"commit":"9ecbdb09162da4d563799aa93d422db85b2c324b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 20 10:16:29 2022 -0700","stats":{"files_changed":8,"insertions":35,"deletions":30,"files":["docs/parsers/mpstat_s.md","docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","docs/parsers/universal.md","jc/parsers/foo_s.py","jc/parsers/mpstat_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"docs/parsers/mpstat_s.md","lines_changed":10},{"name":"docs/parsers/pidstat_s.md","lines_changed":10},{"name":"docs/parsers/rsync_s.md","lines_changed":10},{"name":"docs/parsers/universal.md","lines_changed":19},{"name":"jc/parsers/foo_s.py","lines_changed":4},{"name":"jc/parsers/mpstat_s.py","lines_changed":4},{"name":"jc/parsers/pidstat_s.py","lines_changed":4},{"name":"jc/parsers/rsync_s.py","lines_changed":4}]},"message":"use generator instead of iterable in function return annotation","epoch":1647796589,"epoch_utc":null},{"commit":"b3a2886fd0af0cd06890f37f1edfc6890bb83e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 20 10:12:29 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["docs/lib.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":3}]},"message":"formatting","epoch":1647796349,"epoch_utc":null},{"commit":"ceacec0f462bd7c2d9e92ddb9029ccd71aef481c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 18 16:57:47 2022 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":1}]},"message":"remove errant os sep import","epoch":1647647867,"epoch_utc":null},{"commit":"ff0f794b01395ed9b65fac75a6b07f0772d45a2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 18 16:53:23 2022 -0700","stats":{"files_changed":1,"insertions":32,"deletions":10,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":42}]},"message":"working","epoch":1647647603,"epoch_utc":null},{"commit":"70fafbf3f80f35c5db2c306978b2a488adad40bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 18 14:19:00 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"remove asciitable so tests pass for now","epoch":1647638340,"epoch_utc":null},{"commit":"5a248a8fc58952a5eab3d4aac025d7422ba82d08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 18 13:05:57 2022 -0700","stats":{"files_changed":1,"insertions":344,"deletions":0,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":344}]},"message":"add multiline asciitable parser","epoch":1647633957,"epoch_utc":null},{"commit":"4a3a4e10df8a552a4db3510640695f02b166dc40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 18 13:03:43 2022 -0700","stats":{"files_changed":1,"insertions":3,"deletions":4,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":7}]},"message":"add asciitable and asciitable-m parsers","epoch":1647633823,"epoch_utc":null},{"commit":"c27bd5ff39f21c6377e661d4d7de1200d2fdd72f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 17 16:24:18 2022 -0700","stats":{"files_changed":1,"insertions":23,"deletions":16,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":39}]},"message":"pad lines in sparse_table_parse and use str.isspace()","epoch":1647559458,"epoch_utc":null},{"commit":"f804c9627fb71341429ca80aec2887e23e0277db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 15 16:04:58 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":1}]},"message":"copy input list so we don't mutate the caller's data","epoch":1647385498,"epoch_utc":null},{"commit":"3ab25d02f9dc248706aa1105e1766b2a84bc55a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 12:30:09 2022 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"use _parser_is_streaming from lib","epoch":1647286209,"epoch_utc":null},{"commit":"9e80fd2b97b9bfe38fdaa6acdf2e8ed26d34b49d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 12:17:18 2022 -0700","stats":{"files_changed":2,"insertions":15,"deletions":11,"files":["jc/cli.py","jc/lib.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":21},{"name":"jc/lib.py","lines_changed":5}]},"message":"fallback if info and doc items don't exist","epoch":1647285438,"epoch_utc":null},{"commit":"ff9527a098a94c996641fb3fe2f905c8ae5e3063","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 11:35:57 2022 -0700","stats":{"files_changed":1,"insertions":9,"deletions":13,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":22}]},"message":"import cleanup and use all_parser_info in parsers_text","epoch":1647282957,"epoch_utc":null},{"commit":"7dac2f8dc3baf619105e3c6ca4d3e45300b86287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 10:50:10 2022 -0700","stats":{"files_changed":3,"insertions":23,"deletions":9,"files":["docs/lib.md","docs/readme.md","man/jc.1"],"file_stats":[{"name":"docs/lib.md","lines_changed":23},{"name":"docs/readme.md","lines_changed":7},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1647280210,"epoch_utc":null},{"commit":"32e4d55e86c3e7d94488ec69f13a4f6400c4cef3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 10:46:54 2022 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":10}]},"message":"use parser_info for help_doc","epoch":1647280014,"epoch_utc":null},{"commit":"f9a9062147256d0949457cc7fde838f87202524d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 10:46:23 2022 -0700","stats":{"files_changed":3,"insertions":27,"deletions":10,"files":["CHANGELOG","jc/__init__.py","jc/lib.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/__init__.py","lines_changed":7},{"name":"jc/lib.py","lines_changed":29}]},"message":"add documentation argument to parser_info and all_parser_info","epoch":1647279983,"epoch_utc":null},{"commit":"89e5919796f7da585285901dca461aae21336415","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 09:56:50 2022 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/mpstat_s.md","jc/parsers/mpstat_s.py"],"file_stats":[{"name":"docs/parsers/mpstat_s.md","lines_changed":2},{"name":"jc/parsers/mpstat_s.py","lines_changed":2}]},"message":"add -A to second example","epoch":1647277010,"epoch_utc":null},{"commit":"e5f5b2591d8ac3abeb9571688c7fb8de34d647f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 09:45:17 2022 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"changelog update","epoch":1647276317,"epoch_utc":null},{"commit":"77c667eec045daff5cbd062fe9d6e83f237727e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 14 09:43:18 2022 -0700","stats":{"files_changed":9,"insertions":67,"deletions":6,"files":["docs/parsers/mpstat.md","docs/parsers/mpstat_s.md","jc/parsers/mpstat.py","jc/parsers/mpstat_s.py","tests/fixtures/ubuntu-18.04/mpstat-A-streaming.json","tests/fixtures/ubuntu-18.04/mpstat-A.json","tests/fixtures/ubuntu-18.04/mpstat-A.out","tests/test_mpstat.py","tests/test_mpstat_s.py"],"file_stats":[{"name":"docs/parsers/mpstat.md","lines_changed":2},{"name":"docs/parsers/mpstat_s.md","lines_changed":2},{"name":"jc/parsers/mpstat.py","lines_changed":12},{"name":"jc/parsers/mpstat_s.py","lines_changed":12},{"name":"tests/fixtures/ubuntu-18.04/mpstat-A-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/mpstat-A.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/mpstat-A.out","lines_changed":19},{"name":"tests/test_mpstat.py","lines_changed":12},{"name":"tests/test_mpstat_s.py","lines_changed":12}]},"message":"ubuntu fixes","epoch":1647276198,"epoch_utc":null},{"commit":"b257ce8c2fe6825fe435b4d04b4184091030db10","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 13 12:25:50 2022 -0700","stats":{"files_changed":4,"insertions":65,"deletions":0,"files":[".../centos-7.7/mpstat-A-2-5-streaming.json","tests/fixtures/centos-7.7/mpstat-A-streaming.json","tests/fixtures/centos-7.7/mpstat-streaming.json","tests/test_mpstat_s.py"],"file_stats":[{"name":".../centos-7.7/mpstat-A-2-5-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat-A-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat-streaming.json","lines_changed":1},{"name":"tests/test_mpstat_s.py","lines_changed":62}]},"message":"add mpstat_s tests","epoch":1647199550,"epoch_utc":null},{"commit":"c693c868cacbcd81f44fd383719723dd7a137c87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 15:59:38 2022 -0800","stats":{"files_changed":7,"insertions":352,"deletions":0,"files":["README.md","docs/parsers/mpstat.md","docs/parsers/mpstat_s.md","jc/lib.py","jc/parsers/mpstat.py","jc/parsers/mpstat_s.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/mpstat.md","lines_changed":2},{"name":"docs/parsers/mpstat_s.md","lines_changed":130},{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/mpstat.py","lines_changed":2},{"name":"jc/parsers/mpstat_s.py","lines_changed":211},{"name":"man/jc.1","lines_changed":5}]},"message":"add mpstat streaming parser","epoch":1647043178,"epoch_utc":null},{"commit":"6f98b27a05d6e1f7571a97316b193f096521b959","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 15:33:31 2022 -0800","stats":{"files_changed":7,"insertions":168,"deletions":0,"files":["tests/fixtures/centos-7.7/mpstat-A-2-5.json","tests/fixtures/centos-7.7/mpstat-A-2-5.out","tests/fixtures/centos-7.7/mpstat-A.json","tests/fixtures/centos-7.7/mpstat-A.out","tests/fixtures/centos-7.7/mpstat.json","tests/fixtures/centos-7.7/mpstat.out","tests/test_mpstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/mpstat-A-2-5.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat-A-2-5.out","lines_changed":86},{"name":"tests/fixtures/centos-7.7/mpstat-A.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat-A.out","lines_changed":15},{"name":"tests/fixtures/centos-7.7/mpstat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat.out","lines_changed":5},{"name":"tests/test_mpstat.py","lines_changed":59}]},"message":"add mpstat tests","epoch":1647041611,"epoch_utc":null},{"commit":"d7efd25d88a8f489564ce48223845a16e4ab1cc7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 14:54:06 2022 -0800","stats":{"files_changed":4,"insertions":207,"deletions":1,"files":["EXAMPLES.md","README.md","docs/parsers/mpstat.md","man/jc.1"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":64},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/mpstat.md","lines_changed":136},{"name":"man/jc.1","lines_changed":7}]},"message":"add mpstat to docs","epoch":1647039246,"epoch_utc":null},{"commit":"2cddb1f0bb497be0be071cdcb56bf49d2dafc920","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 14:00:19 2022 -0800","stats":{"files_changed":1,"insertions":94,"deletions":15,"files":["jc/parsers/mpstat.py"],"file_stats":[{"name":"jc/parsers/mpstat.py","lines_changed":109}]},"message":"working mpstat","epoch":1647036019,"epoch_utc":null},{"commit":"ae1c331595dd857d8ae7f8cf93daee1b26be2c3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 13:15:39 2022 -0800","stats":{"files_changed":1,"insertions":30,"deletions":5,"files":["jc/parsers/mpstat.py"],"file_stats":[{"name":"jc/parsers/mpstat.py","lines_changed":35}]},"message":"initial working version","epoch":1647033339,"epoch_utc":null},{"commit":"bc97052ed4ee3bf3f25127968139f2e89a659fe3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 12:37:17 2022 -0800","stats":{"files_changed":3,"insertions":109,"deletions":0,"files":["CHANGELOG","jc/lib.py","jc/parsers/mpstat.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/mpstat.py","lines_changed":107}]},"message":"initial add mpstat parser","epoch":1647031037,"epoch_utc":null},{"commit":"6c3e0e2aa0e8cc375d9f7473930b18957d33f1aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 12:37:01 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"formatting","epoch":1647031021,"epoch_utc":null},{"commit":"dd052e01469e9e3328f7326d3591365a8e7322eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 11 10:25:24 2022 -0800","stats":{"files_changed":2,"insertions":26,"deletions":24,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":25},{"name":"jc/parsers/universal.py","lines_changed":25}]},"message":"add underscores to column examples","epoch":1647023124,"epoch_utc":null},{"commit":"54e8f58145f6c4332fbd375d112259ea7abb2d72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 16:50:55 2022 -0800","stats":{"files_changed":2,"insertions":28,"deletions":2,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":15},{"name":"jc/parsers/universal.py","lines_changed":15}]},"message":"add table result examples","epoch":1646959855,"epoch_utc":null},{"commit":"def7aa5764e69cd0cf2c5b70aa62c62023f76c9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 15:36:11 2022 -0800","stats":{"files_changed":2,"insertions":16,"deletions":16,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":16},{"name":"jc/parsers/universal.py","lines_changed":16}]},"message":"formatting","epoch":1646955371,"epoch_utc":null},{"commit":"6986c74f6dceca907ea2e469a332deeb093a122c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 15:18:27 2022 -0800","stats":{"files_changed":169,"insertions":34,"deletions":837,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/pidstat.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/nmcli.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/pidstat.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/xrandr.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":5},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iostat.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jar_manifest.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/nmcli.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/pidstat.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/rsync.md","lines_changed":5},{"name":"docs/parsers/sfdisk.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/systeminfo.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"docs/parsers/ufw.md","lines_changed":5},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/universal.md","lines_changed":18},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/vmstat.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/xrandr.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5},{"name":"docs/parsers/zipinfo.md","lines_changed":5},{"name":"jc/parsers/acpi.py","lines_changed":5},{"name":"jc/parsers/airport.py","lines_changed":5},{"name":"jc/parsers/airport_s.py","lines_changed":5},{"name":"jc/parsers/arp.py","lines_changed":5},{"name":"jc/parsers/blkid.py","lines_changed":5},{"name":"jc/parsers/cksum.py","lines_changed":5},{"name":"jc/parsers/crontab.py","lines_changed":5},{"name":"jc/parsers/crontab_u.py","lines_changed":5},{"name":"jc/parsers/csv.py","lines_changed":5},{"name":"jc/parsers/date.py","lines_changed":5},{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":5},{"name":"jc/parsers/dir.py","lines_changed":5},{"name":"jc/parsers/dmidecode.py","lines_changed":5},{"name":"jc/parsers/dpkg_l.py","lines_changed":5},{"name":"jc/parsers/du.py","lines_changed":5},{"name":"jc/parsers/env.py","lines_changed":5},{"name":"jc/parsers/file.py","lines_changed":5},{"name":"jc/parsers/finger.py","lines_changed":5},{"name":"jc/parsers/foo.py","lines_changed":5},{"name":"jc/parsers/free.py","lines_changed":5},{"name":"jc/parsers/fstab.py","lines_changed":5},{"name":"jc/parsers/group.py","lines_changed":5},{"name":"jc/parsers/gshadow.py","lines_changed":5},{"name":"jc/parsers/hash.py","lines_changed":5},{"name":"jc/parsers/hashsum.py","lines_changed":5},{"name":"jc/parsers/hciconfig.py","lines_changed":5},{"name":"jc/parsers/history.py","lines_changed":5},{"name":"jc/parsers/hosts.py","lines_changed":5},{"name":"jc/parsers/id.py","lines_changed":5},{"name":"jc/parsers/ifconfig.py","lines_changed":5},{"name":"jc/parsers/ini.py","lines_changed":5},{"name":"jc/parsers/iostat.py","lines_changed":5},{"name":"jc/parsers/iptables.py","lines_changed":5},{"name":"jc/parsers/iw_scan.py","lines_changed":5},{"name":"jc/parsers/jar_manifest.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":5},{"name":"jc/parsers/kv.py","lines_changed":5},{"name":"jc/parsers/last.py","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":5},{"name":"jc/parsers/lsblk.py","lines_changed":5},{"name":"jc/parsers/lsmod.py","lines_changed":5},{"name":"jc/parsers/lsof.py","lines_changed":5},{"name":"jc/parsers/lsusb.py","lines_changed":5},{"name":"jc/parsers/mount.py","lines_changed":5},{"name":"jc/parsers/netstat.py","lines_changed":5},{"name":"jc/parsers/nmcli.py","lines_changed":5},{"name":"jc/parsers/ntpq.py","lines_changed":5},{"name":"jc/parsers/passwd.py","lines_changed":5},{"name":"jc/parsers/pidstat.py","lines_changed":5},{"name":"jc/parsers/ping.py","lines_changed":5},{"name":"jc/parsers/pip_list.py","lines_changed":5},{"name":"jc/parsers/pip_show.py","lines_changed":5},{"name":"jc/parsers/ps.py","lines_changed":5},{"name":"jc/parsers/route.py","lines_changed":5},{"name":"jc/parsers/rpm_qi.py","lines_changed":5},{"name":"jc/parsers/rsync.py","lines_changed":5},{"name":"jc/parsers/sfdisk.py","lines_changed":5},{"name":"jc/parsers/shadow.py","lines_changed":5},{"name":"jc/parsers/ss.py","lines_changed":5},{"name":"jc/parsers/stat.py","lines_changed":5},{"name":"jc/parsers/sysctl.py","lines_changed":5},{"name":"jc/parsers/systemctl.py","lines_changed":5},{"name":"jc/parsers/systemctl_lj.py","lines_changed":5},{"name":"jc/parsers/systemctl_ls.py","lines_changed":5},{"name":"jc/parsers/systemctl_luf.py","lines_changed":5},{"name":"jc/parsers/systeminfo.py","lines_changed":5},{"name":"jc/parsers/time.py","lines_changed":5},{"name":"jc/parsers/timedatectl.py","lines_changed":5},{"name":"jc/parsers/tracepath.py","lines_changed":5},{"name":"jc/parsers/traceroute.py","lines_changed":5},{"name":"jc/parsers/ufw.py","lines_changed":5},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":5},{"name":"jc/parsers/uname.py","lines_changed":5},{"name":"jc/parsers/universal.py","lines_changed":18},{"name":"jc/parsers/upower.py","lines_changed":5},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/vmstat.py","lines_changed":5},{"name":"jc/parsers/w.py","lines_changed":5},{"name":"jc/parsers/wc.py","lines_changed":5},{"name":"jc/parsers/who.py","lines_changed":5},{"name":"jc/parsers/xml.py","lines_changed":5},{"name":"jc/parsers/xrandr.py","lines_changed":5},{"name":"jc/parsers/yaml.py","lines_changed":5},{"name":"jc/parsers/zipinfo.py","lines_changed":5}]},"message":"remove direct parser module example from doc","epoch":1646954307,"epoch_utc":null},{"commit":"b784db404d0569a4c630eb124b37b0b1d0846453","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 13:32:26 2022 -0800","stats":{"files_changed":17,"insertions":87,"deletions":166,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/pidstat_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/pidstat_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":13},{"name":"docs/parsers/iostat_s.md","lines_changed":20},{"name":"docs/parsers/ls_s.md","lines_changed":16},{"name":"docs/parsers/pidstat_s.md","lines_changed":9},{"name":"docs/parsers/ping_s.md","lines_changed":13},{"name":"docs/parsers/rsync_s.md","lines_changed":13},{"name":"docs/parsers/stat_s.md","lines_changed":13},{"name":"docs/parsers/vmstat_s.md","lines_changed":23},{"name":"jc/parsers/csv_s.py","lines_changed":13},{"name":"jc/parsers/foo_s.py","lines_changed":13},{"name":"jc/parsers/iostat_s.py","lines_changed":20},{"name":"jc/parsers/ls_s.py","lines_changed":16},{"name":"jc/parsers/pidstat_s.py","lines_changed":9},{"name":"jc/parsers/ping_s.py","lines_changed":13},{"name":"jc/parsers/rsync_s.py","lines_changed":13},{"name":"jc/parsers/stat_s.py","lines_changed":13},{"name":"jc/parsers/vmstat_s.py","lines_changed":23}]},"message":"streaming doc formatting update","epoch":1646947946,"epoch_utc":null},{"commit":"8aee4517bb4c2eebdd9873f7eb0827cd33b85519","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 13:02:50 2022 -0800","stats":{"files_changed":2,"insertions":12,"deletions":26,"files":["docs/parsers/pidstat_s.md","jc/parsers/pidstat_s.py"],"file_stats":[{"name":"docs/parsers/pidstat_s.md","lines_changed":19},{"name":"jc/parsers/pidstat_s.py","lines_changed":19}]},"message":"doc formatting","epoch":1646946170,"epoch_utc":null},{"commit":"a5fb8fbf94b3b80bef82f078ad6582260b13e374","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 10:10:57 2022 -0800","stats":{"files_changed":17,"insertions":164,"deletions":148,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/pidstat_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/pidstat_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":12},{"name":"docs/parsers/iostat_s.md","lines_changed":14},{"name":"docs/parsers/ls_s.md","lines_changed":14},{"name":"docs/parsers/pidstat_s.md","lines_changed":53},{"name":"docs/parsers/ping_s.md","lines_changed":14},{"name":"docs/parsers/rsync_s.md","lines_changed":14},{"name":"docs/parsers/stat_s.md","lines_changed":14},{"name":"docs/parsers/vmstat_s.md","lines_changed":14},{"name":"jc/parsers/csv_s.py","lines_changed":12},{"name":"jc/parsers/foo_s.py","lines_changed":14},{"name":"jc/parsers/iostat_s.py","lines_changed":14},{"name":"jc/parsers/ls_s.py","lines_changed":14},{"name":"jc/parsers/pidstat_s.py","lines_changed":53},{"name":"jc/parsers/ping_s.py","lines_changed":14},{"name":"jc/parsers/rsync_s.py","lines_changed":14},{"name":"jc/parsers/stat_s.py","lines_changed":14},{"name":"jc/parsers/vmstat_s.py","lines_changed":14}]},"message":"streaming doc update","epoch":1646935857,"epoch_utc":null},{"commit":"b9365e2ac28c3eacf53bc101857f7f1d7286ec20","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 09:23:36 2022 -0800","stats":{"files_changed":4,"insertions":74,"deletions":0,"files":[".../centos-7.7/pidstat-hdlrsuw-2-5-streaming.json",".../centos-7.7/pidstat-hdlrsuw-streaming.json",".../fixtures/centos-7.7/pidstat-hl-streaming.json","tests/test_pidstat_s.py"],"file_stats":[{"name":".../centos-7.7/pidstat-hdlrsuw-2-5-streaming.json","lines_changed":1},{"name":".../centos-7.7/pidstat-hdlrsuw-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/pidstat-hl-streaming.json","lines_changed":1},{"name":"tests/test_pidstat_s.py","lines_changed":71}]},"message":"add pidstat-s tests","epoch":1646933016,"epoch_utc":null},{"commit":"696338c1a3d462afbe677a6f2ebe08d06ef4046a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 09:04:12 2022 -0800","stats":{"files_changed":1,"insertions":38,"deletions":0,"files":["tests/_test_foo_s.py"],"file_stats":[{"name":"tests/_test_foo_s.py","lines_changed":38}]},"message":"add streaming test template","epoch":1646931852,"epoch_utc":null},{"commit":"4f0616190bb842411353d65650b78a65d8cbdc28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 08:14:58 2022 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/pidstat_s.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1646928898,"epoch_utc":null},{"commit":"3278cb0de301ee542b1fe8245a6c359193373b6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 08:14:46 2022 -0800","stats":{"files_changed":2,"insertions":15,"deletions":10,"files":["docs/parsers/arp.md","jc/parsers/arp.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":23}]},"message":"add type hints","epoch":1646928886,"epoch_utc":null},{"commit":"4fc04256a567c502a88ac8a1bd189746387c93f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 10 08:00:37 2022 -0800","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["jc/parsers/foo_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":4},{"name":"jc/parsers/pidstat_s.py","lines_changed":4},{"name":"jc/parsers/rsync_s.py","lines_changed":4}]},"message":"rollback noReturn to tuple","epoch":1646928037,"epoch_utc":null},{"commit":"e4ae0fea63c0386c1b3239607fd6a58738d23633","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 16:28:55 2022 -0800","stats":{"files_changed":5,"insertions":8,"deletions":8,"files":["docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","jc/parsers/foo_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"docs/parsers/pidstat_s.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":4},{"name":"jc/parsers/pidstat_s.py","lines_changed":4},{"name":"jc/parsers/rsync_s.py","lines_changed":4}]},"message":"fix type annotation","epoch":1646872135,"epoch_utc":null},{"commit":"d3727ea0906d6167aa48c340519242b010469d98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 16:09:35 2022 -0800","stats":{"files_changed":4,"insertions":99,"deletions":1,"files":["CHANGELOG","README.md","docs/parsers/pidstat_s.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/pidstat_s.md","lines_changed":91},{"name":"man/jc.1","lines_changed":5}]},"message":"doc update","epoch":1646870975,"epoch_utc":null},{"commit":"0d13909cf63d14008607c5640d074ab4073115e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 16:07:29 2022 -0800","stats":{"files_changed":2,"insertions":168,"deletions":0,"files":["jc/lib.py","jc/parsers/pidstat_s.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/pidstat_s.py","lines_changed":167}]},"message":"add pidstat-s parser","epoch":1646870849,"epoch_utc":null},{"commit":"c52ca20e285895d2afb685a2a5ca275de7901033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 16:07:17 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/pidstat.py"],"file_stats":[{"name":"jc/parsers/pidstat.py","lines_changed":2}]},"message":"fix comment","epoch":1646870837,"epoch_utc":null},{"commit":"21f27f26c81c75234221a5193c7d3903323e2032","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 15:37:10 2022 -0800","stats":{"files_changed":4,"insertions":72,"deletions":0,"files":["tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.json","tests/fixtures/centos-7.7/pidstat-hdlrsuw.json","tests/fixtures/centos-7.7/pidstat-hl.json","tests/test_pidstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/pidstat-hdlrsuw.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/pidstat-hl.json","lines_changed":1},{"name":"tests/test_pidstat.py","lines_changed":69}]},"message":"add pidstat tests","epoch":1646869030,"epoch_utc":null},{"commit":"5e7a87f39782d12070a895440ff541800df91b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 15:37:04 2022 -0800","stats":{"files_changed":1,"insertions":35,"deletions":0,"files":["tests/_test_foo.py"],"file_stats":[{"name":"tests/_test_foo.py","lines_changed":35}]},"message":"add test template","epoch":1646869024,"epoch_utc":null},{"commit":"845d763829acd03fff1d2fad6e9691f04bd1a2aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 15:09:22 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/pidstat.md","jc/parsers/pidstat.py"],"file_stats":[{"name":"docs/parsers/pidstat.md","lines_changed":4},{"name":"jc/parsers/pidstat.py","lines_changed":4}]},"message":"format docs to fit 80 columns","epoch":1646867362,"epoch_utc":null},{"commit":"f5c7d52ec72f5ff4b77d5ac4491f330575b9f10f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 14:43:56 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":10,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":6},{"name":"templates/manpage_template","lines_changed":6}]},"message":"formatting","epoch":1646865836,"epoch_utc":null},{"commit":"c3198a58744803f52113f80967c7259d781e2328","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 14:17:48 2022 -0800","stats":{"files_changed":2,"insertions":22,"deletions":12,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":17},{"name":"templates/manpage_template","lines_changed":17}]},"message":"formatting","epoch":1646864268,"epoch_utc":null},{"commit":"bbd4afa73542ba6596aed77426bb494fbcf23196","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 14:09:58 2022 -0800","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["README.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"man/jc.1","lines_changed":7}]},"message":"add pidstat to docs","epoch":1646863798,"epoch_utc":null},{"commit":"ae754a84bf5fc35b248bbc5f7b0fa8e871765819","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 14:06:34 2022 -0800","stats":{"files_changed":3,"insertions":263,"deletions":33,"files":["docs/parsers/arp.md","docs/parsers/pidstat.md","jc/parsers/pidstat.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/pidstat.md","lines_changed":156},{"name":"jc/parsers/pidstat.py","lines_changed":138}]},"message":"doc update","epoch":1646863594,"epoch_utc":null},{"commit":"3389eb5debe0f0ba01ece01e20048608bf357e70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 13:18:04 2022 -0800","stats":{"files_changed":4,"insertions":219,"deletions":9,"files":["jc/parsers/pidstat.py","tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.out","tests/fixtures/centos-7.7/pidstat-hdlrsuw.out","tests/fixtures/centos-7.7/pidstat-hl.out"],"file_stats":[{"name":"jc/parsers/pidstat.py","lines_changed":52},{"name":"tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.out","lines_changed":47},{"name":"tests/fixtures/centos-7.7/pidstat-hdlrsuw.out","lines_changed":83},{"name":"tests/fixtures/centos-7.7/pidstat-hl.out","lines_changed":46}]},"message":"initial working parser","epoch":1646860684,"epoch_utc":null},{"commit":"01f2c1e71f87ab401d487be4d6d150cb67c91437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 12:13:32 2022 -0800","stats":{"files_changed":5,"insertions":162,"deletions":2,"files":["CHANGELOG","jc/lib.py","jc/parsers/pidstat.py","setup.py","tests/fixtures/centos-7.7/pidstat.out"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/lib.py","lines_changed":3},{"name":"jc/parsers/pidstat.py","lines_changed":112},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/pidstat.out","lines_changed":44}]},"message":"add pidstat parser","epoch":1646856812,"epoch_utc":null},{"commit":"8bfbf8f1bcd233a8ecd34012e140eb29164ca5fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 12:13:07 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"simplify error message","epoch":1646856787,"epoch_utc":null},{"commit":"f4242669bac3af5eb196c46d4146823aacec40ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 10:52:40 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":10,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":12}]},"message":"minor cleanup","epoch":1646851960,"epoch_utc":null},{"commit":"bebd9331f1fb9b80f8cb4a5cfacd68461743004e","merge":"9861983 ac61e9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 9 18:49:01 2022 +0000","message":"Merge pull request #211 from kellyjonbrazil/master\n\nsync to dev","epoch":1646880541,"epoch_utc":1646851741},{"commit":"ac61e9ad2c9c4e864db02db04cbf907fb0efd99b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 8 13:21:05 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"templates/readme_template","lines_changed":1}]},"message":"add pypi link","epoch":1646774465,"epoch_utc":null},{"commit":"648ef4d8a9c33a36d4bb2c135fe59b031de8f24c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 8 13:19:20 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"templates/readme_template","lines_changed":4}]},"message":"update badge links","epoch":1646774360,"epoch_utc":null},{"commit":"727fc9a701e9aae75d3d2b708010da1d0dc8781a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 15:19:25 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/date.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1646522365,"epoch_utc":null},{"commit":"306512d6bb53af18516fc10b15c7ec79cb02cc98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 15:13:47 2022 -0800","stats":{"files_changed":4,"insertions":7,"deletions":4,"files":["CHANGELOG","jc/lib.py","jc/parsers/date.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/lib.py","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":4},{"name":"setup.py","lines_changed":2}]},"message":"force AM/PM to uppercase in date parser","epoch":1646522027,"epoch_utc":null},{"commit":"6afb1d389ca9dfd7880386d380fee032b7eb92e2","merge":"961968a 9861983","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 21:49:36 2022 +0000","message":"Merge pull request #209 from kellyjonbrazil/dev\n\nDev v1.18.4","epoch":1646545776,"epoch_utc":1646516976},{"commit":"98619834818c181cb50a9605fe166b6153c46095","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 13:45:28 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1646516728,"epoch_utc":null},{"commit":"ca79053db08542849136ae13fdb4d1d90b79a7e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 12:15:47 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":2}]},"message":"document pydoc version","epoch":1646511347,"epoch_utc":null},{"commit":"29c263f87810f8566ebdad2358e99896391adfd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 5 12:15:14 2022 -0800","stats":{"files_changed":93,"insertions":115,"deletions":115,"files":["docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/streaming.md","docs/utils.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":16},{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/dpkg_l.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/finger.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/gshadow.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iostat.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/jar_manifest.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/kv.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/nmcli.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/rsync.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/stat_s.md","lines_changed":2},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/universal.md","lines_changed":4},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/xrandr.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"docs/parsers/zipinfo.md","lines_changed":2},{"name":"docs/streaming.md","lines_changed":12},{"name":"docs/utils.md","lines_changed":20}]},"message":"pydoc formatting fixes","epoch":1646511314,"epoch_utc":null},{"commit":"128c3c170abc6a702ae044b073fb9d992d4262b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 16:38:49 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"doc update","epoch":1646440729,"epoch_utc":null},{"commit":"a531ab8864fca27b55d83b55055eaef1c36128cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 16:35:06 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"formatting","epoch":1646440506,"epoch_utc":null},{"commit":"0c1be7cc11ec75a5738483d68d053e702eb34fc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 16:29:36 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":18,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":11},{"name":"templates/readme_template","lines_changed":11}]},"message":"reduce dig example size","epoch":1646440176,"epoch_utc":null},{"commit":"e4222b45f54e6179e22d7924c083e4642b9974ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 16:24:13 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":4}]},"message":"fix names to mod names","epoch":1646439853,"epoch_utc":null},{"commit":"ac32c69c31e8eff22252d7aded08f6cb14622086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 13:35:16 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":2},{"name":"jc/parsers/universal.py","lines_changed":2}]},"message":"formatting","epoch":1646429716,"epoch_utc":null},{"commit":"cb2dfeac8d44b733ad9d364e8c6d233a381bfae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 13:27:39 2022 -0800","stats":{"files_changed":199,"insertions":334,"deletions":326,"files":["README.md","docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/streaming.md","docs/utils.md","jc/__init__.py","jc/cli.py","jc/exceptions.py","jc/lib.py","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat_freebsd_osx.py","jc/parsers/netstat_linux.py","jc/parsers/nmcli.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/xrandr.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py","jc/streaming.py","jc/utils.py","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docgen.sh","lines_changed":6},{"name":"docs/lib.md","lines_changed":25},{"name":"docs/parsers/acpi.md","lines_changed":4},{"name":"docs/parsers/airport.md","lines_changed":4},{"name":"docs/parsers/airport_s.md","lines_changed":4},{"name":"docs/parsers/arp.md","lines_changed":4},{"name":"docs/parsers/blkid.md","lines_changed":4},{"name":"docs/parsers/cksum.md","lines_changed":4},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"docs/parsers/crontab_u.md","lines_changed":4},{"name":"docs/parsers/csv.md","lines_changed":4},{"name":"docs/parsers/csv_s.md","lines_changed":4},{"name":"docs/parsers/date.md","lines_changed":4},{"name":"docs/parsers/df.md","lines_changed":4},{"name":"docs/parsers/dig.md","lines_changed":4},{"name":"docs/parsers/dir.md","lines_changed":4},{"name":"docs/parsers/dmidecode.md","lines_changed":4},{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"docs/parsers/du.md","lines_changed":4},{"name":"docs/parsers/env.md","lines_changed":4},{"name":"docs/parsers/file.md","lines_changed":4},{"name":"docs/parsers/finger.md","lines_changed":4},{"name":"docs/parsers/free.md","lines_changed":4},{"name":"docs/parsers/fstab.md","lines_changed":4},{"name":"docs/parsers/group.md","lines_changed":4},{"name":"docs/parsers/gshadow.md","lines_changed":4},{"name":"docs/parsers/hash.md","lines_changed":4},{"name":"docs/parsers/hashsum.md","lines_changed":4},{"name":"docs/parsers/hciconfig.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":4},{"name":"docs/parsers/hosts.md","lines_changed":4},{"name":"docs/parsers/id.md","lines_changed":4},{"name":"docs/parsers/ifconfig.md","lines_changed":4},{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"docs/parsers/iostat.md","lines_changed":4},{"name":"docs/parsers/iostat_s.md","lines_changed":4},{"name":"docs/parsers/iptables.md","lines_changed":4},{"name":"docs/parsers/iw_scan.md","lines_changed":4},{"name":"docs/parsers/jar_manifest.md","lines_changed":4},{"name":"docs/parsers/jobs.md","lines_changed":4},{"name":"docs/parsers/kv.md","lines_changed":4},{"name":"docs/parsers/last.md","lines_changed":4},{"name":"docs/parsers/ls.md","lines_changed":4},{"name":"docs/parsers/ls_s.md","lines_changed":4},{"name":"docs/parsers/lsblk.md","lines_changed":4},{"name":"docs/parsers/lsmod.md","lines_changed":4},{"name":"docs/parsers/lsof.md","lines_changed":4},{"name":"docs/parsers/lsusb.md","lines_changed":4},{"name":"docs/parsers/mount.md","lines_changed":4},{"name":"docs/parsers/netstat.md","lines_changed":4},{"name":"docs/parsers/nmcli.md","lines_changed":4},{"name":"docs/parsers/ntpq.md","lines_changed":4},{"name":"docs/parsers/passwd.md","lines_changed":4},{"name":"docs/parsers/ping.md","lines_changed":4},{"name":"docs/parsers/ping_s.md","lines_changed":4},{"name":"docs/parsers/pip_list.md","lines_changed":4},{"name":"docs/parsers/pip_show.md","lines_changed":4},{"name":"docs/parsers/ps.md","lines_changed":4},{"name":"docs/parsers/route.md","lines_changed":4},{"name":"docs/parsers/rpm_qi.md","lines_changed":4},{"name":"docs/parsers/rsync.md","lines_changed":4},{"name":"docs/parsers/rsync_s.md","lines_changed":9},{"name":"docs/parsers/sfdisk.md","lines_changed":4},{"name":"docs/parsers/shadow.md","lines_changed":4},{"name":"docs/parsers/ss.md","lines_changed":4},{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"docs/parsers/stat_s.md","lines_changed":4},{"name":"docs/parsers/sysctl.md","lines_changed":4},{"name":"docs/parsers/systemctl.md","lines_changed":4},{"name":"docs/parsers/systemctl_lj.md","lines_changed":4},{"name":"docs/parsers/systemctl_ls.md","lines_changed":4},{"name":"docs/parsers/systemctl_luf.md","lines_changed":4},{"name":"docs/parsers/systeminfo.md","lines_changed":4},{"name":"docs/parsers/time.md","lines_changed":4},{"name":"docs/parsers/timedatectl.md","lines_changed":4},{"name":"docs/parsers/tracepath.md","lines_changed":4},{"name":"docs/parsers/traceroute.md","lines_changed":4},{"name":"docs/parsers/ufw.md","lines_changed":4},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":4},{"name":"docs/parsers/uname.md","lines_changed":4},{"name":"docs/parsers/universal.md","lines_changed":6},{"name":"docs/parsers/upower.md","lines_changed":4},{"name":"docs/parsers/uptime.md","lines_changed":4},{"name":"docs/parsers/vmstat.md","lines_changed":4},{"name":"docs/parsers/vmstat_s.md","lines_changed":4},{"name":"docs/parsers/w.md","lines_changed":4},{"name":"docs/parsers/wc.md","lines_changed":4},{"name":"docs/parsers/who.md","lines_changed":4},{"name":"docs/parsers/xml.md","lines_changed":4},{"name":"docs/parsers/xrandr.md","lines_changed":4},{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"docs/parsers/zipinfo.md","lines_changed":4},{"name":"docs/readme.md","lines_changed":2},{"name":"docs/streaming.md","lines_changed":17},{"name":"docs/utils.md","lines_changed":29},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/cli.py","lines_changed":4},{"name":"jc/exceptions.py","lines_changed":2},{"name":"jc/lib.py","lines_changed":2},{"name":"jc/parsers/acpi.py","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/blkid.py","lines_changed":2},{"name":"jc/parsers/cksum.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"jc/parsers/csv.py","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/dir.py","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":2},{"name":"jc/parsers/dpkg_l.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/finger.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/group.py","lines_changed":2},{"name":"jc/parsers/gshadow.py","lines_changed":2},{"name":"jc/parsers/hash.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":2},{"name":"jc/parsers/hciconfig.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/iostat.py","lines_changed":2},{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2},{"name":"jc/parsers/jar_manifest.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/kv.py","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/lsusb.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/netstat_freebsd_osx.py","lines_changed":2},{"name":"jc/parsers/netstat_linux.py","lines_changed":2},{"name":"jc/parsers/nmcli.py","lines_changed":2},{"name":"jc/parsers/ntpq.py","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":2},{"name":"jc/parsers/ping.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/rpm_qi.py","lines_changed":2},{"name":"jc/parsers/rsync.py","lines_changed":2},{"name":"jc/parsers/rsync_s.py","lines_changed":2},{"name":"jc/parsers/sfdisk.py","lines_changed":2},{"name":"jc/parsers/shadow.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/stat_s.py","lines_changed":2},{"name":"jc/parsers/sysctl.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/systeminfo.py","lines_changed":2},{"name":"jc/parsers/time.py","lines_changed":2},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/ufw.py","lines_changed":2},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/universal.py","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/parsers/wc.py","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":2},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/xrandr.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2},{"name":"jc/parsers/zipinfo.py","lines_changed":2},{"name":"jc/streaming.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"templates/manpage_template","lines_changed":2},{"name":"templates/readme_template","lines_changed":4}]},"message":"change name to JSON Convert","epoch":1646429259,"epoch_utc":null},{"commit":"9a3602e70b865a3015bd700b30d1076e17511a9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 4 08:57:11 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":4},{"name":"jc/lib.py","lines_changed":4}]},"message":"doc update","epoch":1646413031,"epoch_utc":null},{"commit":"a9f53ee258e18bc90934e263d8dc96feee84e939","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 3 17:50:19 2022 -0800","stats":{"files_changed":2,"insertions":15,"deletions":4,"files":["jc/cli.py","jc/lib.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4},{"name":"jc/lib.py","lines_changed":15}]},"message":"optimize streaming parser detection in cli","epoch":1646358619,"epoch_utc":null},{"commit":"6be3d3d98222a262c5138bb09f2951ccfab96110","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 3 17:38:47 2022 -0800","stats":{"files_changed":3,"insertions":43,"deletions":1,"files":["CHANGELOG","docs/lib.md","docs/readme.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docs/lib.md","lines_changed":25},{"name":"docs/readme.md","lines_changed":16}]},"message":"doc update","epoch":1646357927,"epoch_utc":null},{"commit":"e49df7208377ab34a74240a06f35f17fee4b8203","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 3 17:37:01 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"use streaming parser list to find streaming parsers","epoch":1646357821,"epoch_utc":null},{"commit":"7ede7be7bf7b1a7d29d158b3b21c20fff4990e72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 3 17:36:40 2022 -0800","stats":{"files_changed":2,"insertions":42,"deletions":0,"files":["jc/__init__.py","jc/lib.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":17},{"name":"jc/lib.py","lines_changed":25}]},"message":"add standard and streaming list functions","epoch":1646357800,"epoch_utc":null},{"commit":"4758e28a36e2a55497e4f722d386a6b5cc30dc4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 2 15:24:18 2022 -0800","stats":{"files_changed":2,"insertions":20,"deletions":16,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":18},{"name":"jc/__init__.py","lines_changed":18}]},"message":"formatting","epoch":1646263458,"epoch_utc":null},{"commit":"4a1ee151b3cb054d84cd964fd62f5855f765751d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 2 10:57:09 2022 -0800","stats":{"files_changed":2,"insertions":9,"deletions":11,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py"],"file_stats":[{"name":"docs/parsers/nmcli.md","lines_changed":4},{"name":"jc/parsers/nmcli.py","lines_changed":16}]},"message":"add dhcp6 options to docs","epoch":1646247429,"epoch_utc":null},{"commit":"8c8afc1a922e3c30fcf501d169b33a68b65cd3e0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 2 10:15:01 2022 -0800","stats":{"files_changed":2,"insertions":60,"deletions":24,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":42},{"name":"jc/__init__.py","lines_changed":42}]},"message":"formatting","epoch":1646244901,"epoch_utc":null},{"commit":"ed205f7720d98c225c917c252ed7a6c9e6e8c2b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 28 12:55:05 2022 -0800","stats":{"files_changed":3,"insertions":9,"deletions":9,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/nmcli.md","lines_changed":8},{"name":"jc/parsers/nmcli.py","lines_changed":8},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1646081705,"epoch_utc":null},{"commit":"d65f7ae992abc33140c00714d442290103661757","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 28 12:26:06 2022 -0800","stats":{"files_changed":1,"insertions":41,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":41}]},"message":"add nmcli","epoch":1646079966,"epoch_utc":null},{"commit":"e2ffef57b9a474048fe72cf42aebfa6bfaf2e42b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 28 12:20:39 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_nmcli.py"],"file_stats":[{"name":"tests/test_nmcli.py","lines_changed":2}]},"message":"fix test","epoch":1646079639,"epoch_utc":null},{"commit":"002caa9fb3b65f1ae64df25cc39c3de130403e76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 28 12:19:02 2022 -0800","stats":{"files_changed":7,"insertions":252,"deletions":0,"files":[".../fedora32/nmcli-connection-show-ens33.json",".../fedora32/nmcli-connection-show-ens33.out",".../fixtures/fedora32/nmcli-device-show-ens33.json",".../fixtures/fedora32/nmcli-device-show-ens33.out","tests/fixtures/fedora32/nmcli-device-show.json","tests/fixtures/fedora32/nmcli-device-show.out","tests/test_nmcli.py"],"file_stats":[{"name":".../fedora32/nmcli-connection-show-ens33.json","lines_changed":1},{"name":".../fedora32/nmcli-connection-show-ens33.out","lines_changed":148},{"name":".../fixtures/fedora32/nmcli-device-show-ens33.json","lines_changed":1},{"name":".../fixtures/fedora32/nmcli-device-show-ens33.out","lines_changed":26},{"name":"tests/fixtures/fedora32/nmcli-device-show.json","lines_changed":1},{"name":"tests/fixtures/fedora32/nmcli-device-show.out","lines_changed":39},{"name":"tests/test_nmcli.py","lines_changed":36}]},"message":"add fedora tests","epoch":1646079542,"epoch_utc":null},{"commit":"b7c6faf3daf8eb0c42a222778baa440c5a018c75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 25 11:23:20 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"enhance error message","epoch":1645817000,"epoch_utc":null},{"commit":"554ca61d1764b81dea06b6b013d0444072f0662a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 25 11:19:20 2022 -0800","stats":{"files_changed":11,"insertions":165,"deletions":0,"files":[".../fixtures/centos-7.7/nmcli-connection-all.json",".../centos-7.7/nmcli-connection-show-ens33.json","tests/fixtures/centos-7.7/nmcli-connection.json","tests/fixtures/centos-7.7/nmcli-device-all.json",".../centos-7.7/nmcli-device-show-ens33.json",".../fixtures/centos-7.7/nmcli-device-show-lo.json","tests/fixtures/centos-7.7/nmcli-device-show.json","tests/fixtures/centos-7.7/nmcli-device.json","tests/fixtures/centos-7.7/nmcli-general-all.json",".../centos-7.7/nmcli-general-permissions.json","tests/test_nmcli.py"],"file_stats":[{"name":".../fixtures/centos-7.7/nmcli-connection-all.json","lines_changed":1},{"name":".../centos-7.7/nmcli-connection-show-ens33.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-connection.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-device-all.json","lines_changed":1},{"name":".../centos-7.7/nmcli-device-show-ens33.json","lines_changed":1},{"name":".../fixtures/centos-7.7/nmcli-device-show-lo.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-device-show.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-device.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-general-all.json","lines_changed":1},{"name":".../centos-7.7/nmcli-general-permissions.json","lines_changed":1},{"name":"tests/test_nmcli.py","lines_changed":155}]},"message":"add tests","epoch":1645816760,"epoch_utc":null},{"commit":"7b9722d255a16981099dc803beda7abe0d46106a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 21:21:02 2022 -0800","stats":{"files_changed":2,"insertions":26,"deletions":34,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":30},{"name":"templates/manpage_template","lines_changed":30}]},"message":"fix formatting","epoch":1645766462,"epoch_utc":null},{"commit":"5505bde8ef77db0885f08d8d04160cbc4418dd67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:53:54 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/zipinfo.md"],"file_stats":[{"name":"docs/parsers/zipinfo.md","lines_changed":2}]},"message":"doc update","epoch":1645764834,"epoch_utc":null},{"commit":"dbcd9a4060647be24bca2a8d577f11925a9ac210","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:52:28 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":2}]},"message":"bump version to 1.0","epoch":1645764748,"epoch_utc":null},{"commit":"4bdeb2b3aa063c2772f5c44e52acbe16e915cc3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:52:18 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/xrandr.py"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":2}]},"message":"simplify warning message","epoch":1645764738,"epoch_utc":null},{"commit":"6ae1d03187c6d4b669f6f74db1be7c9cf07adaed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:47:15 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py"],"file_stats":[{"name":"docs/parsers/nmcli.md","lines_changed":2},{"name":"jc/parsers/nmcli.py","lines_changed":2}]},"message":"doc fix","epoch":1645764435,"epoch_utc":null},{"commit":"f75b06abe4af152be094f8bc1ba5ce66b25e35e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:43:20 2022 -0800","stats":{"files_changed":4,"insertions":180,"deletions":3,"files":["README.md","docs/parsers/nmcli.md","jc/parsers/nmcli.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/nmcli.md","lines_changed":172},{"name":"jc/parsers/nmcli.py","lines_changed":3},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update","epoch":1645764200,"epoch_utc":null},{"commit":"1923925710dadc4116202855ae884ef18394d428","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:35:00 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"update changelog","epoch":1645763700,"epoch_utc":null},{"commit":"2c5c57ae04df3b7abfb1c3423c3350c7c2ab5dcd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:33:10 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/lib.py","setup.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1645763590,"epoch_utc":null},{"commit":"f4d11d697e000135720a971edf84dcad31a1bec8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:31:58 2022 -0800","stats":{"files_changed":1,"insertions":155,"deletions":15,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":170}]},"message":"finish use cases and doc","epoch":1645763518,"epoch_utc":null},{"commit":"7f409b7082aa9525cc9280e3c5c92bc82089cf14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 20:31:09 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"enhance ParseError cli message","epoch":1645763469,"epoch_utc":null},{"commit":"937fa5aad2519f588c6d0feb8f08211f6b99872f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 18:22:19 2022 -0800","stats":{"files_changed":1,"insertions":20,"deletions":0,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":20}]},"message":"split dhcp options","epoch":1645755739,"epoch_utc":null},{"commit":"19dcef513565c34a31f6d735577da5e25f9bd2cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 17:10:39 2022 -0800","stats":{"files_changed":1,"insertions":69,"deletions":2,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":71}]},"message":"firm up flow. add/remove text. parse routes","epoch":1645751439,"epoch_utc":null},{"commit":"3d01356461eb2790f859968da7f5cb4fd2ee9898","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 14:53:26 2022 -0800","stats":{"files_changed":1,"insertions":27,"deletions":3,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":30}]},"message":"add text_kv function","epoch":1645743206,"epoch_utc":null},{"commit":"2d6f666fa4c791e7995f6b0c1490dac73ce224c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 12:21:13 2022 -0800","stats":{"files_changed":1,"insertions":61,"deletions":16,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":77}]},"message":"add dev show and conn show parsers","epoch":1645734073,"epoch_utc":null},{"commit":"4dda895f122ecc19b267ed1485cf656bae76ff07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 24 11:25:14 2022 -0800","stats":{"files_changed":13,"insertions":404,"deletions":0,"files":["jc/lib.py","jc/parsers/nmcli.py","tests/fixtures/centos-7.7/nmcli-connection-all.out",".../centos-7.7/nmcli-connection-show-ens33.out","tests/fixtures/centos-7.7/nmcli-connection.out","tests/fixtures/centos-7.7/nmcli-device-all.out",".../centos-7.7/nmcli-device-show-ens33.out","tests/fixtures/centos-7.7/nmcli-device-show-lo.out","tests/fixtures/centos-7.7/nmcli-device-show.out","tests/fixtures/centos-7.7/nmcli-device.out","tests/fixtures/centos-7.7/nmcli-general-all.out",".../centos-7.7/nmcli-general-permissions.out","tests/fixtures/centos-7.7/nmcli.out"],"file_stats":[{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/nmcli.py","lines_changed":130},{"name":"tests/fixtures/centos-7.7/nmcli-connection-all.out","lines_changed":3},{"name":".../centos-7.7/nmcli-connection-show-ens33.out","lines_changed":136},{"name":"tests/fixtures/centos-7.7/nmcli-connection.out","lines_changed":3},{"name":"tests/fixtures/centos-7.7/nmcli-device-all.out","lines_changed":5},{"name":".../centos-7.7/nmcli-device-show-ens33.out","lines_changed":18},{"name":"tests/fixtures/centos-7.7/nmcli-device-show-lo.out","lines_changed":12},{"name":"tests/fixtures/centos-7.7/nmcli-device-show.out","lines_changed":42},{"name":"tests/fixtures/centos-7.7/nmcli-device.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/nmcli-general-all.out","lines_changed":3},{"name":".../centos-7.7/nmcli-general-permissions.out","lines_changed":18},{"name":"tests/fixtures/centos-7.7/nmcli.out","lines_changed":29}]},"message":"initial nmcli parser","epoch":1645730714,"epoch_utc":null},{"commit":"52617b1722ba2f089716b069f78f70a865430d61","merge":"3afaa48 961968a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 21 16:35:12 2022 +0000","message":"Merge pull request #208 from kellyjonbrazil/master\n\nsync to dev","epoch":1645490112,"epoch_utc":1645461312},{"commit":"961968a0fcaf37b64bc850c4945ba4b805a1fe54","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 15:14:22 2022 -0800","stats":{"files_changed":2,"insertions":26,"deletions":23,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":24},{"name":"jc/parsers/xrandr.py","lines_changed":25}]},"message":"fix schema","epoch":1644880462,"epoch_utc":null},{"commit":"f026a788e5ca1231927e71fdbb1dadb2365a6518","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 11:30:03 2022 -0800","stats":{"files_changed":1,"insertions":62,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":62}]},"message":"add xrandr example","epoch":1644867003,"epoch_utc":null},{"commit":"2f7c03eb35520be916c28a687031f8c6425839ba","merge":"681176e 3afaa48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 10:36:08 2022 -0800","message":"Merge pull request #207 from kellyjonbrazil/dev\n\nDev v1.18.3","epoch":1644863768,"epoch_utc":null},{"commit":"3afaa48eee081e28262d1762c5ec23d318012822","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 10:31:41 2022 -0800","stats":{"files_changed":15,"insertions":15,"deletions":15,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"docs/parsers/stat_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/rsync_s.py","lines_changed":2},{"name":"jc/parsers/stat_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]},"message":"doc update","epoch":1644863501,"epoch_utc":null},{"commit":"3201452564fb0fb44ef9cc32217339370bd2521e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 10:06:09 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":2},{"name":"jc/parsers/xrandr.py","lines_changed":2}]},"message":"add -p to example","epoch":1644861969,"epoch_utc":null},{"commit":"7ee1e34fc71c0dbc08ba482b787d560fd5125f64","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 10:03:52 2022 -0800","stats":{"files_changed":2,"insertions":116,"deletions":4,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":60},{"name":"jc/parsers/xrandr.py","lines_changed":60}]},"message":"doc update","epoch":1644861832,"epoch_utc":null},{"commit":"67dbf050161201f5016899591e81ab6253ac2322","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 09:58:31 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":2},{"name":"jc/parsers/xrandr.py","lines_changed":2}]},"message":"add type annotations","epoch":1644861511,"epoch_utc":null},{"commit":"4ac9f2e3dad4e7bd270bf5a8e61b729838b2c89c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 09:37:37 2022 -0800","stats":{"files_changed":5,"insertions":10,"deletions":17,"files":["CHANGELOG","docs/parsers/rsync.md","docs/parsers/rsync_s.md","jc/parsers/rsync.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docs/parsers/rsync.md","lines_changed":6},{"name":"docs/parsers/rsync_s.md","lines_changed":6},{"name":"jc/parsers/rsync.py","lines_changed":6},{"name":"jc/parsers/rsync_s.py","lines_changed":6}]},"message":"doc update","epoch":1644860257,"epoch_utc":null},{"commit":"3f5f6e39a777ef524cb3a06a01321bb8c31d930d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 09:20:16 2022 -0800","stats":{"files_changed":2,"insertions":100,"deletions":98,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":99},{"name":"jc/parsers/xrandr.py","lines_changed":99}]},"message":"formatting","epoch":1644859216,"epoch_utc":null},{"commit":"4723db8e3cc4946b14c83b25d6e8c6d2309aa72e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 09:14:46 2022 -0800","stats":{"files_changed":8,"insertions":195,"deletions":77,"files":["README.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/xrandr.md","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/xrandr.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/rsync.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"docs/parsers/xrandr.md","lines_changed":109},{"name":"jc/parsers/rsync.py","lines_changed":2},{"name":"jc/parsers/rsync_s.py","lines_changed":2},{"name":"jc/parsers/xrandr.py","lines_changed":147},{"name":"man/jc.1","lines_changed":7}]},"message":"doc updates","epoch":1644858886,"epoch_utc":null},{"commit":"ca914ec77d1fc77e42860189e62ac2fb203d4931","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 14 09:14:38 2022 -0800","stats":{"files_changed":1,"insertions":11,"deletions":2,"files":["tests/test_xrandr.py"],"file_stats":[{"name":"tests/test_xrandr.py","lines_changed":13}]},"message":"add nodata test","epoch":1644858878,"epoch_utc":null},{"commit":"dcc7f3f357ef016b4583fc1320fd2394788f271f","merge":"184ef3a cbdc666","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Feb 13 17:45:53 2022 -0800","message":"Merge pull request #204 from lyterk/xrandr\n\nNew parser: xrandr","epoch":1644803153,"epoch_utc":null},{"commit":"cbdc66623671da335eafe132b7af79f884856f1d","author":"Kevin Lyter","author_email":"lyterk@sent.com","date":"Wed Feb 9 21:50:07 2022 -0800","stats":{"files_changed":3,"insertions":2,"deletions":30,"files":["jc/parsers/xrandr.py",".../{simple_xrandr.json => xrandr_simple.json}",".../{simple_xrandr.out => xrandr_simple.out}"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":32},{"name":".../{simple_xrandr.json => xrandr_simple.json}","lines_changed":0},{"name":".../{simple_xrandr.out => xrandr_simple.out}","lines_changed":0}]},"message":"Return empty object if no results and filenames\n\n- If no results are returned, return {} instead of {\"screens\": [],\n\"unassociated_devices\": []}\n- simple_xrandr -> xrandr_simple","epoch":1644472207,"epoch_utc":null},{"commit":"184ef3a1faeb406ce62076cff637ee86d61541fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 8 14:45:33 2022 -0800","stats":{"files_changed":3,"insertions":11,"deletions":3,"files":["docs/parsers/rsync.md","docs/parsers/rsync_s.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/rsync.md","lines_changed":6},{"name":"docs/parsers/rsync_s.md","lines_changed":6},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1644360333,"epoch_utc":null},{"commit":"c732f759445e335fe36586859b6fde7e27bb8901","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 8 14:43:14 2022 -0800","stats":{"files_changed":2,"insertions":10,"deletions":2,"files":["jc/parsers/rsync.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":6},{"name":"jc/parsers/rsync_s.py","lines_changed":6}]},"message":"doc update","epoch":1644360194,"epoch_utc":null},{"commit":"7a1ae4f5fc5328c32bf77235cfbd9f83ec995053","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 8 13:32:22 2022 -0800","stats":{"files_changed":3,"insertions":105,"deletions":0,"files":["tests/{test_lib.py => test_jc_lib.py}","tests/test_jc_streaming.py","tests/{test_utils.py => test_jc_utils.py}"],"file_stats":[{"name":"tests/{test_lib.py => test_jc_lib.py}","lines_changed":0},{"name":"tests/test_jc_streaming.py","lines_changed":61},{"name":"tests/{test_utils.py => test_jc_utils.py}","lines_changed":44}]},"message":"add library tests","epoch":1644355942,"epoch_utc":null},{"commit":"d04bc3757c482ec9062b2da91ded76c5dd6d106b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 8 07:33:26 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add xrandr","epoch":1644334406,"epoch_utc":null},{"commit":"73e8391653145412cd852aca349466018c8b9084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 16:58:06 2022 -0800","stats":{"files_changed":1,"insertions":8,"deletions":3,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":11}]},"message":"formatting","epoch":1644281886,"epoch_utc":null},{"commit":"f6c1463c1578db264ccb3d4c2677857ed906e965","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 16:31:43 2022 -0800","stats":{"files_changed":1,"insertions":44,"deletions":24,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":68}]},"message":"formatting","epoch":1644280303,"epoch_utc":null},{"commit":"d392c7f901a9d7c57617fbd03bd3f88ee0bf4132","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 15:44:54 2022 -0800","stats":{"files_changed":12,"insertions":20,"deletions":13,"files":["docs/parsers/date.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/ls.md","docs/parsers/rpm_qi.md","docs/parsers/stat.md","docs/parsers/systeminfo.md","docs/parsers/timedatectl.md","docs/parsers/upower.md","docs/parsers/vmstat.md","docs/parsers/who.md","docs/utils.md"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":11}]},"message":"doc update","epoch":1644277494,"epoch_utc":null},{"commit":"d0387f58205b2fd9b9860ce9656bb29ceec54340","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 15:44:46 2022 -0800","stats":{"files_changed":16,"insertions":34,"deletions":29,"files":["jc/parsers/date.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/systeminfo.py","jc/parsers/timedatectl.py","jc/parsers/upower.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":4},{"name":"jc/parsers/dir.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/rpm_qi.py","lines_changed":6},{"name":"jc/parsers/rsync.py","lines_changed":2},{"name":"jc/parsers/rsync_s.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"jc/parsers/stat_s.py","lines_changed":2},{"name":"jc/parsers/systeminfo.py","lines_changed":8},{"name":"jc/parsers/timedatectl.py","lines_changed":4},{"name":"jc/parsers/upower.py","lines_changed":5},{"name":"jc/parsers/vmstat.py","lines_changed":5},{"name":"jc/parsers/vmstat_s.py","lines_changed":3},{"name":"jc/parsers/who.py","lines_changed":4}]},"message":"add timestamp format hints for better performance","epoch":1644277486,"epoch_utc":null},{"commit":"76f92908a3ba9cbadcc8e972afa8b1c4a69509bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 15:43:24 2022 -0800","stats":{"files_changed":1,"insertions":44,"deletions":9,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":53}]},"message":"add format hints for performance optimization","epoch":1644277404,"epoch_utc":null},{"commit":"1a115da67bdce9acfefbfb71fbac37e234b1babd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 08:34:34 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"add lru_cache maxsize for python 3.7 support","epoch":1644251674,"epoch_utc":null},{"commit":"f0a37ccf301eee5133a83b5dd96986fef0c38e7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 08:30:11 2022 -0800","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":11}]},"message":"use lru_cache for significant performance boost to timestamp","epoch":1644251411,"epoch_utc":null},{"commit":"f331f53a531169520a4d8ea15d277560a49aedb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 08:06:48 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["CHANGELOG","jc/utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/utils.py","lines_changed":2}]},"message":"use !r formatting instead of quotes","epoch":1644250008,"epoch_utc":null},{"commit":"8611aff06b18212b7292d564beb27a2062fc3f41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 06:42:35 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/parsers/rsync_s.md","jc/parsers/rsync_s.py"],"file_stats":[{"name":"docs/parsers/rsync_s.md","lines_changed":8},{"name":"jc/parsers/rsync_s.py","lines_changed":8}]},"message":"add examples","epoch":1644244955,"epoch_utc":null},{"commit":"2f3f78e8d35a0ccccde0f84417400acdfe7fe0aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 7 06:29:17 2022 -0800","stats":{"files_changed":16,"insertions":194,"deletions":185,"files":["docgen.sh","docs/parsers/rsync_s.md","docs/readme.md","docs/streaming.md","docs/utils.md","jc/__init__.py","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/streaming.py","man/jc.1"],"file_stats":[{"name":"docgen.sh","lines_changed":3},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"docs/readme.md","lines_changed":2},{"name":"docs/streaming.md","lines_changed":114},{"name":"docs/utils.md","lines_changed":93},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":10},{"name":"jc/parsers/foo_s.py","lines_changed":14},{"name":"jc/parsers/iostat_s.py","lines_changed":15},{"name":"jc/parsers/ls_s.py","lines_changed":14},{"name":"jc/parsers/ping_s.py","lines_changed":4},{"name":"jc/parsers/rsync_s.py","lines_changed":25},{"name":"jc/parsers/stat_s.py","lines_changed":22},{"name":"jc/parsers/vmstat_s.py","lines_changed":16},{"name":"jc/streaming.py","lines_changed":41},{"name":"man/jc.1","lines_changed":2}]},"message":"refine streaming parsers","epoch":1644244157,"epoch_utc":null},{"commit":"d1e0ee6123dfecd48d074cb7a40e98a15b6adcb9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Feb 6 08:56:18 2022 -0800","stats":{"files_changed":1,"insertions":6,"deletions":8,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":14}]},"message":"use new streaming functions","epoch":1644166578,"epoch_utc":null},{"commit":"45314c98083067f1f6fae9c477c99fabec223f29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Feb 6 08:55:42 2022 -0800","stats":{"files_changed":2,"insertions":112,"deletions":102,"files":["jc/streaming.py","jc/utils.py"],"file_stats":[{"name":"jc/streaming.py","lines_changed":111},{"name":"jc/utils.py","lines_changed":103}]},"message":"move some functions to streaming","epoch":1644166542,"epoch_utc":null},{"commit":"df00945b46e27e10107f48d186eedf80b55bd40e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 4 16:03:44 2022 -0800","stats":{"files_changed":6,"insertions":59,"deletions":49,"files":["jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":15},{"name":"jc/parsers/iostat_s.py","lines_changed":15},{"name":"jc/parsers/ls_s.py","lines_changed":17},{"name":"jc/parsers/ping_s.py","lines_changed":19},{"name":"jc/parsers/rsync_s.py","lines_changed":21},{"name":"jc/parsers/stat_s.py","lines_changed":21}]},"message":"move try/except inside for loop","epoch":1644019424,"epoch_utc":null},{"commit":"fda0050d867bcbe4f1d7e024b08e9881d0f57735","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 4 14:39:45 2022 -0800","stats":{"files_changed":13,"insertions":191,"deletions":0,"files":[".../centos-7.7/rsync-i-logfile-streaming.json","tests/fixtures/centos-7.7/rsync-i-streaming.json",".../centos-7.7/rsync-i-v-logfile-streaming.json",".../centos-7.7/rsync-i-vv-logfile-streaming.json",".../rsync-i-vvv-logfile-nochange-streaming.json",".../centos-7.7/rsync-i-vvv-logfile-streaming.json",".../centos-7.7/rsync-ivvv-nochange-streaming.json",".../fixtures/centos-7.7/rsync-ivvv-streaming.json","tests/fixtures/generic/rsync-i-streaming.json",".../rsync-i-vvv-logfile-nochange-streaming.json",".../rsync-i-vvv-nochange-streaming.json",".../osx-10.14.6/rsync-i-vvv-streaming.json","tests/test_rsync_s.py"],"file_stats":[{"name":".../centos-7.7/rsync-i-logfile-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-streaming.json","lines_changed":1},{"name":".../centos-7.7/rsync-i-v-logfile-streaming.json","lines_changed":1},{"name":".../centos-7.7/rsync-i-vv-logfile-streaming.json","lines_changed":1},{"name":".../rsync-i-vvv-logfile-nochange-streaming.json","lines_changed":1},{"name":".../centos-7.7/rsync-i-vvv-logfile-streaming.json","lines_changed":1},{"name":".../centos-7.7/rsync-ivvv-nochange-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/rsync-ivvv-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/rsync-i-streaming.json","lines_changed":1},{"name":".../rsync-i-vvv-logfile-nochange-streaming.json","lines_changed":1},{"name":".../rsync-i-vvv-nochange-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/rsync-i-vvv-streaming.json","lines_changed":1},{"name":"tests/test_rsync_s.py","lines_changed":179}]},"message":"add rsync-s tests","epoch":1644014385,"epoch_utc":null},{"commit":"a76d46f9ecb1eff4d6cc7ad633c97cec0e99001a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 4 12:14:16 2022 -0800","stats":{"files_changed":19,"insertions":110,"deletions":109,"files":["CHANGELOG","docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","docs/utils.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/utils.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":5},{"name":"docs/parsers/iostat_s.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":5},{"name":"docs/parsers/ping_s.md","lines_changed":5},{"name":"docs/parsers/rsync_s.md","lines_changed":5},{"name":"docs/parsers/stat_s.md","lines_changed":5},{"name":"docs/parsers/vmstat_s.md","lines_changed":5},{"name":"docs/utils.md","lines_changed":15},{"name":"jc/parsers/csv_s.py","lines_changed":13},{"name":"jc/parsers/foo_s.py","lines_changed":11},{"name":"jc/parsers/iostat_s.py","lines_changed":23},{"name":"jc/parsers/ls_s.py","lines_changed":20},{"name":"jc/parsers/ping_s.py","lines_changed":22},{"name":"jc/parsers/rsync_s.py","lines_changed":11},{"name":"jc/parsers/stat_s.py","lines_changed":30},{"name":"jc/parsers/vmstat_s.py","lines_changed":11},{"name":"jc/utils.py","lines_changed":24},{"name":"man/jc.1","lines_changed":2}]},"message":"refactor ignore_exceptions","epoch":1644005656,"epoch_utc":null},{"commit":"6b069a82d0fa19c8d83b19b934bace556cb758d7","author":"Kevin Lyter","author_email":"lyterk@sent.com","date":"Thu Feb 3 18:13:58 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":1}]},"message":"Add xrandr to lib.py","epoch":1643940838,"epoch_utc":null},{"commit":"6b793d052147406f388c4d5dc04f506a3456f409","author":"Kevin Lyter","author_email":"lyterk@sent.com","date":"Thu Feb 3 18:13:11 2022 -0800","stats":{"files_changed":1,"insertions":6,"deletions":11,"files":["jc/parsers/xrandr.py"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":17}]},"message":"Clean up types\n\n* | operator => Union[]\n* Remove unused import Iterator\n* Remove comment","epoch":1643940791,"epoch_utc":null},{"commit":"ce9103f7cc666895dc7840d32797d8c7274cf1b8","author":"Kevin Lyter","author_email":"lyterk@sent.com","date":"Thu Feb 3 18:12:46 2022 -0800","stats":{"files_changed":2,"insertions":0,"deletions":287,"files":["templates/xrandr_sample.txt","templates/xrandr_sample_verbose.txt"],"file_stats":[{"name":"templates/xrandr_sample.txt","lines_changed":38},{"name":"templates/xrandr_sample_verbose.txt","lines_changed":249}]},"message":"Delete old files in template folder","epoch":1643940766,"epoch_utc":null},{"commit":"671d6dee36a37317257e09a080849205d301bceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 3 15:47:46 2022 -0800","stats":{"files_changed":8,"insertions":83,"deletions":15,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","docs/utils.md"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":8},{"name":"docs/parsers/iostat_s.md","lines_changed":8},{"name":"docs/parsers/ls_s.md","lines_changed":8},{"name":"docs/parsers/ping_s.md","lines_changed":8},{"name":"docs/parsers/rsync_s.md","lines_changed":10},{"name":"docs/parsers/stat_s.md","lines_changed":8},{"name":"docs/parsers/vmstat_s.md","lines_changed":8},{"name":"docs/utils.md","lines_changed":40}]},"message":"doc update","epoch":1643932066,"epoch_utc":null},{"commit":"49929c714c2d71a310b1dd95138dbd02f8704138","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 3 15:44:18 2022 -0800","stats":{"files_changed":9,"insertions":139,"deletions":52,"files":["jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":14},{"name":"jc/parsers/foo_s.py","lines_changed":16},{"name":"jc/parsers/iostat_s.py","lines_changed":15},{"name":"jc/parsers/ls_s.py","lines_changed":14},{"name":"jc/parsers/ping_s.py","lines_changed":14},{"name":"jc/parsers/rsync_s.py","lines_changed":30},{"name":"jc/parsers/stat_s.py","lines_changed":21},{"name":"jc/parsers/vmstat_s.py","lines_changed":14},{"name":"jc/utils.py","lines_changed":53}]},"message":"add add_jc_meta decorator","epoch":1643931858,"epoch_utc":null},{"commit":"2986771f07de87bfee44dd3bbb4f285e249aad76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 3 09:21:20 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"require python v3.7 and above since v3.6 is now deprecated","epoch":1643908880,"epoch_utc":null},{"commit":"520082d963b93d2bafeff921da3899686b22cadf","author":"Kevin Lyter","author_email":"lyterk@sent.com","date":"Wed Feb 2 18:25:55 2022 -0800","stats":{"files_changed":9,"insertions":968,"deletions":0,"files":["jc/parsers/xrandr.py","templates/xrandr_sample.txt","templates/xrandr_sample_verbose.txt","tests/fixtures/generic/simple_xrandr.json","tests/fixtures/generic/simple_xrandr.out","tests/fixtures/generic/xrandr.out","tests/fixtures/generic/xrandr_2.out","tests/fixtures/generic/xrandr_device.out","tests/test_xrandr.py"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":353},{"name":"templates/xrandr_sample.txt","lines_changed":38},{"name":"templates/xrandr_sample_verbose.txt","lines_changed":249},{"name":"tests/fixtures/generic/simple_xrandr.json","lines_changed":56},{"name":"tests/fixtures/generic/simple_xrandr.out","lines_changed":4},{"name":"tests/fixtures/generic/xrandr.out","lines_changed":38},{"name":"tests/fixtures/generic/xrandr_2.out","lines_changed":43},{"name":"tests/fixtures/generic/xrandr_device.out","lines_changed":15},{"name":"tests/test_xrandr.py","lines_changed":172}]},"message":"New parser: xrandr\n\nTests passing, working as intended in plugin directory","epoch":1643855155,"epoch_utc":null},{"commit":"021e296d457140c32b5256c2b0acf66efc458896","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 17:06:20 2022 -0800","stats":{"files_changed":1,"insertions":104,"deletions":100,"files":["jc/parsers/rsync_s.py"],"file_stats":[{"name":"jc/parsers/rsync_s.py","lines_changed":204}]},"message":"move variable inits and regexes up","epoch":1643850380,"epoch_utc":null},{"commit":"42e56fbcea6db64ea7f7045e7755af492c95aec2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 17:05:53 2022 -0800","stats":{"files_changed":1,"insertions":11,"deletions":12,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":23}]},"message":"move regex up","epoch":1643850353,"epoch_utc":null},{"commit":"a5b62a4055df37b84751a7cdc14eb6f1ed907cd9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 16:03:14 2022 -0800","stats":{"files_changed":2,"insertions":230,"deletions":18,"files":["docs/parsers/rsync_s.md","jc/parsers/rsync_s.py"],"file_stats":[{"name":"docs/parsers/rsync_s.md","lines_changed":124},{"name":"jc/parsers/rsync_s.py","lines_changed":124}]},"message":"add processing and docs","epoch":1643846594,"epoch_utc":null},{"commit":"be98c9b7f6c67e23ea101223934d67bba512e645","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 15:59:12 2022 -0800","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":11}]},"message":"simplify try/except by moving outside for loop","epoch":1643846352,"epoch_utc":null},{"commit":"aceeb8450796ae748a4d4abf75643f309d0a42e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 15:58:29 2022 -0800","stats":{"files_changed":3,"insertions":12,"deletions":1,"files":["CHANGELOG","README.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":5},{"name":"README.md","lines_changed":1},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update","epoch":1643846309,"epoch_utc":null},{"commit":"13910632173e7c815ff1161cf52fd1d17153c4a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 11:49:39 2022 -0800","stats":{"files_changed":2,"insertions":367,"deletions":0,"files":["jc/lib.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/rsync_s.py","lines_changed":366}]},"message":"first draft rsync streaming parser","epoch":1643831379,"epoch_utc":null},{"commit":"52157addd0d6dff3bdb34f179ec14b07c8c27ccc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 2 11:49:24 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":2}]},"message":"fix compatible list","epoch":1643831364,"epoch_utc":null},{"commit":"ec0bc6615e22fdc536623e290d88b9725cb6a0ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 19:20:19 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":2},{"name":"jc/utils.py","lines_changed":2}]},"message":"formatting","epoch":1643772019,"epoch_utc":null},{"commit":"2f80800e38256b363a4122195ec4aaffebe67d87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 19:06:41 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"simplify all_parser_info comprehension","epoch":1643771201,"epoch_utc":null},{"commit":"3959d3347c8d3e838f8c3158c4db74e2fa2eb856","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 18:33:07 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["docs/lib.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":4}]},"message":"doc update","epoch":1643769187,"epoch_utc":null},{"commit":"b57d25c69a193d3866ea86a3a34edd67049b198d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 18:30:37 2022 -0800","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":12}]},"message":"clean up return type for parser_info","epoch":1643769037,"epoch_utc":null},{"commit":"63e43a7cabb51c624c962cdcc92a1199f18c77e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 17:57:12 2022 -0800","stats":{"files_changed":7,"insertions":188,"deletions":21,"files":["README.md","docs/lib.md","docs/parsers/rsync.md","docs/parsers/universal.md","docs/parsers/zipinfo.md","docs/utils.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"docs/lib.md","lines_changed":4},{"name":"docs/parsers/rsync.md","lines_changed":163},{"name":"docs/parsers/universal.md","lines_changed":2},{"name":"docs/parsers/zipinfo.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":28},{"name":"man/jc.1","lines_changed":7}]},"message":"doc updates","epoch":1643767032,"epoch_utc":null},{"commit":"21719f9a26c25d896b0a5d49c9d7814175835e16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 17:54:22 2022 -0800","stats":{"files_changed":2,"insertions":18,"deletions":20,"files":["jc/lib.py","jc/utils.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":36}]},"message":"type annotation updates","epoch":1643766862,"epoch_utc":null},{"commit":"96ec70de4f6178b0669fd9ab47cb303dc45e55c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 17:18:55 2022 -0800","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["jc/parsers/universal.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":6},{"name":"jc/utils.py","lines_changed":4}]},"message":"remove unneeded optional","epoch":1643764735,"epoch_utc":null},{"commit":"a15a1967dc06169ceeda0fd5b4857ce1a351f3d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 17:18:39 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"fix typo","epoch":1643764719,"epoch_utc":null},{"commit":"a10d7566294fe5246e68a16e355ce56dd3557ac5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:49:31 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":8}]},"message":"fixy mypy issues","epoch":1643762971,"epoch_utc":null},{"commit":"0700dc7a64b121cf0243416e2cbb82fcef15f5a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:42:51 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":2}]},"message":"remove cygwin from compatible","epoch":1643762571,"epoch_utc":null},{"commit":"ca654b214057e19839b89e0d9a66f1110f679c1e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:42:10 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"fix parser order","epoch":1643762530,"epoch_utc":null},{"commit":"4ff3b87c1c96d720f4e7fd39e613944e322cb388","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:18:38 2022 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":1}]},"message":"remove future field from docstring","epoch":1643761118,"epoch_utc":null},{"commit":"ea244fb7a91f1d1f8ffe0ea6dc10dfe5ab836878","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:17:03 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_rsync.py"],"file_stats":[{"name":"tests/test_rsync.py","lines_changed":2}]},"message":"formatting","epoch":1643761023,"epoch_utc":null},{"commit":"8061f30e6fa58d22ed1a52e02c4d9c7f0bf132cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 16:16:33 2022 -0800","stats":{"files_changed":3,"insertions":236,"deletions":6,"files":["tests/fixtures/centos-7.7/rsync-ivvv-nochange.json","tests/fixtures/centos-7.7/rsync-ivvv-nochange.out","tests/test_rsync.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/rsync-ivvv-nochange.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-ivvv-nochange.out","lines_changed":224},{"name":"tests/test_rsync.py","lines_changed":17}]},"message":"add centos -i nochange test","epoch":1643760993,"epoch_utc":null},{"commit":"8f3b12e81e1b4f0d4394c33db5b3a352f4cfb391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 14:52:51 2022 -0800","stats":{"files_changed":6,"insertions":299,"deletions":0,"files":["jc/parsers/rsync.py",".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.json",".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.out","tests/fixtures/osx-10.14.6/rsync-i-vvv.json","tests/fixtures/osx-10.14.6/rsync-i-vvv.out","tests/test_rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":22},{"name":".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.out","lines_changed":88},{"name":"tests/fixtures/osx-10.14.6/rsync-i-vvv.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/rsync-i-vvv.out","lines_changed":156},{"name":"tests/test_rsync.py","lines_changed":31}]},"message":"add fixes for mac -i output","epoch":1643755971,"epoch_utc":null},{"commit":"d0694ce0db5ea2d06b5787429adf23095c4c2df0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 14:20:53 2022 -0800","stats":{"files_changed":3,"insertions":245,"deletions":6,"files":[".../osx-10.14.6/rsync-i-vvv-logfile-nochange.json",".../osx-10.14.6/rsync-i-vvv-logfile-nochange.out","tests/test_rsync.py"],"file_stats":[{"name":".../osx-10.14.6/rsync-i-vvv-logfile-nochange.json","lines_changed":1},{"name":".../osx-10.14.6/rsync-i-vvv-logfile-nochange.out","lines_changed":233},{"name":"tests/test_rsync.py","lines_changed":17}]},"message":"add nochange log test for mac","epoch":1643754053,"epoch_utc":null},{"commit":"0cd4c4bc7f3ffe13cb2f1920187e25636b88af61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 13:58:51 2022 -0800","stats":{"files_changed":2,"insertions":658,"deletions":0,"files":[".../centos-7.7/rsync-i-vvv-logfile-nochange.json",".../centos-7.7/rsync-i-vvv-logfile-nochange.out"],"file_stats":[{"name":".../centos-7.7/rsync-i-vvv-logfile-nochange.json","lines_changed":1},{"name":".../centos-7.7/rsync-i-vvv-logfile-nochange.out","lines_changed":657}]},"message":"add nochange tests","epoch":1643752731,"epoch_utc":null},{"commit":"12f90c349c903634def4225ce87924b475be46d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 13:54:25 2022 -0800","stats":{"files_changed":2,"insertions":68,"deletions":20,"files":["jc/parsers/rsync.py","tests/test_rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":68},{"name":"tests/test_rsync.py","lines_changed":20}]},"message":"update regexes for unchanged files","epoch":1643752465,"epoch_utc":null},{"commit":"26b8a1f167c4b1ec3f9fb4077254a27ed8548933","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 1 09:58:18 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":2}]},"message":"remove packages from binaries and packages header","epoch":1643738298,"epoch_utc":null},{"commit":"3abe382c064f605d915912f9b726d76784eba8a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 16:01:42 2022 -0800","stats":{"files_changed":2,"insertions":90,"deletions":3,"files":["EXAMPLES.md","jc/parsers/rsync.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":33},{"name":"jc/parsers/rsync.py","lines_changed":60}]},"message":"add examples","epoch":1643673702,"epoch_utc":null},{"commit":"1e2edc2c7b5dc104a9efe4da7df9be61b9e1be32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 15:54:05 2022 -0800","stats":{"files_changed":5,"insertions":53,"deletions":29,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-logfile.json","tests/fixtures/centos-7.7/rsync-i-v-logfile.json","tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":74},{"name":"tests/fixtures/centos-7.7/rsync-i-logfile.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rsync-i-v-logfile.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json","lines_changed":2}]},"message":"add timestamp","epoch":1643673245,"epoch_utc":null},{"commit":"5fe032a6741b7b6586c60eb28be74bd0e56277a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 13:44:44 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":2}]},"message":"fix typo","epoch":1643665484,"epoch_utc":null},{"commit":"e825c02df1cdae67c7f335fe3c675685eb1a8d02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 13:23:31 2022 -0800","stats":{"files_changed":11,"insertions":605,"deletions":0,"files":["tests/fixtures/centos-7.7/rsync-i-logfile.json","tests/fixtures/centos-7.7/rsync-i-v-logfile.json","tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out","tests/fixtures/centos-7.7/rsync-i.json","tests/fixtures/centos-7.7/rsync-i.out","tests/fixtures/centos-7.7/rsync-ivvv.json","tests/fixtures/generic/rsync-i.json","tests/fixtures/generic/rsync-i.out","tests/test_rsync.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/rsync-i-logfile.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-v-logfile.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out","lines_changed":434},{"name":"tests/fixtures/centos-7.7/rsync-i.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i.out","lines_changed":28},{"name":"tests/fixtures/centos-7.7/rsync-ivvv.json","lines_changed":1},{"name":"tests/fixtures/generic/rsync-i.json","lines_changed":1},{"name":"tests/fixtures/generic/rsync-i.out","lines_changed":11},{"name":"tests/test_rsync.py","lines_changed":125}]},"message":"add rsync tests","epoch":1643664211,"epoch_utc":null},{"commit":"a4a4d170b5ae8c189de982adea5bdc9bf1f26e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 13:23:22 2022 -0800","stats":{"files_changed":1,"insertions":10,"deletions":5,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":15}]},"message":"update docstring","epoch":1643664202,"epoch_utc":null},{"commit":"d0fcd523cb2cbb59d0f90369721749b54222961d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 31 11:13:23 2022 -0800","stats":{"files_changed":1,"insertions":19,"deletions":17,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":36}]},"message":"fix process conversions","epoch":1643656403,"epoch_utc":null},{"commit":"f72b7dc75dbd1c3f5daee3ecee28487258a04873","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 30 16:37:45 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":8,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":12}]},"message":"change keyname to files and remove future key","epoch":1643589465,"epoch_utc":null},{"commit":"4101dc6bf7bab7d00899426e2f6271a7480d558f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 30 16:21:03 2022 -0800","stats":{"files_changed":4,"insertions":1008,"deletions":19,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-v-logfile.out","tests/fixtures/centos-7.7/rsync-i-vv-logfile.out","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":60},{"name":"tests/fixtures/centos-7.7/rsync-i-v-logfile.out","lines_changed":61},{"name":"tests/fixtures/centos-7.7/rsync-i-vv-logfile.out","lines_changed":65},{"name":"tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out","lines_changed":841}]},"message":"add log-file support","epoch":1643588463,"epoch_utc":null},{"commit":"ea5011b616365b5c10c04416d43035d84e3dacba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jan 29 17:24:43 2022 -0800","stats":{"files_changed":2,"insertions":175,"deletions":41,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-logfile.out"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":157},{"name":"tests/fixtures/centos-7.7/rsync-i-logfile.out","lines_changed":59}]},"message":"updated schema. add log-file option support","epoch":1643505883,"epoch_utc":null},{"commit":"d6de81747fd92642dbd5cb1fb097e375aa38be35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 28 15:00:05 2022 -0800","stats":{"files_changed":1,"insertions":11,"deletions":3,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":14}]},"message":"add int/float conversions","epoch":1643410805,"epoch_utc":null},{"commit":"38f04b1c9699246d85332b20df5b6a91ae0c48d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 28 14:45:01 2022 -0800","stats":{"files_changed":1,"insertions":32,"deletions":7,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":39}]},"message":"add summary","epoch":1643409901,"epoch_utc":null},{"commit":"84169e1a913d035744f71472be81fe3a7d774b97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 28 14:08:43 2022 -0800","stats":{"files_changed":4,"insertions":637,"deletions":2,"files":["jc/lib.py","jc/parsers/rsync.py","setup.py","tests/fixtures/centos-7.7/rsync-ivvv.out"],"file_stats":[{"name":"jc/lib.py","lines_changed":3},{"name":"jc/parsers/rsync.py","lines_changed":212},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rsync-ivvv.out","lines_changed":422}]},"message":"add rsync parser","epoch":1643407723,"epoch_utc":null},{"commit":"1f96586a5e883709f436526de6dcb21ff44bf97b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 28 14:08:21 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/foo.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":2}]},"message":"reorder imports","epoch":1643407701,"epoch_utc":null},{"commit":"681176e4c958157ef1f2151b3e57963a6ba48e09","merge":"b389665 8bb2663","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 16:53:37 2022 -0800","message":"Merge pull request #203 from kellyjonbrazil/dev\n\nDev v1.18.2","epoch":1643331217,"epoch_utc":null},{"commit":"8bb266352207f95040b72750e5b3ae3b8ceb2b98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 16:49:46 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"date update","epoch":1643330986,"epoch_utc":null},{"commit":"663abf313931b49fad64b425ece6a5a257dc7938","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 16:14:14 2022 -0800","stats":{"files_changed":4,"insertions":3,"deletions":4,"files":["MANIFEST.in","mangen.py","runtests.sh","updatedocs.sh"],"file_stats":[{"name":"MANIFEST.in","lines_changed":1},{"name":"mangen.py","lines_changed":3},{"name":"runtests.sh","lines_changed":1},{"name":"updatedocs.sh","lines_changed":2}]},"message":"clean up scripts","epoch":1643328854,"epoch_utc":null},{"commit":"f7ac41db95c16fd21d83fbce678c5dec28ab40f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 13:27:50 2022 -0800","stats":{"files_changed":2,"insertions":1,"deletions":13,"files":["README.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"man/jc.1","lines_changed":12}]},"message":"final doc update","epoch":1643318870,"epoch_utc":null},{"commit":"5502cda9e591b531d6b452b02d8ec322c3287800","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 13:03:02 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["tests/test_lib.py"],"file_stats":[{"name":"tests/test_lib.py","lines_changed":3}]},"message":"add additional test for dict inside list for all_parser_info()","epoch":1643317382,"epoch_utc":null},{"commit":"a2b165565f54d91489bf38577a0785e78a4523d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 12:54:44 2022 -0800","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["tests/test_lib.py"],"file_stats":[{"name":"tests/test_lib.py","lines_changed":21}]},"message":"add lib tests for new functions","epoch":1643316884,"epoch_utc":null},{"commit":"b426369815984bd2aae8bcb14e306ba73b8cd4ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 27 07:45:20 2022 -0800","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":12}]},"message":"use all_parser_info() from lib in about function","epoch":1643298320,"epoch_utc":null},{"commit":"ac0840cc0afb4aeee2c99076710c987e09cfa5f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 20:51:18 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"fix typo","epoch":1643259078,"epoch_utc":null},{"commit":"ee98ab0a4a7671ae34ee79f7b0b97c061a8c2944","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 20:42:20 2022 -0800","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/lib.md","docs/utils.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":6},{"name":"docs/utils.md","lines_changed":4}]},"message":"doc update","epoch":1643258540,"epoch_utc":null},{"commit":"2adec2c0035b84ca0242f2494b6c2651b9898ca5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 20:40:03 2022 -0800","stats":{"files_changed":4,"insertions":21,"deletions":19,"files":["jc/lib.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/utils.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":18},{"name":"jc/parsers/foo.py","lines_changed":8},{"name":"jc/parsers/foo_s.py","lines_changed":10},{"name":"jc/utils.py","lines_changed":4}]},"message":"update type hints with mypy help","epoch":1643258403,"epoch_utc":null},{"commit":"f19c9c71bf4f592f55a5176458acd478b462fdbe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 18:39:14 2022 -0800","stats":{"files_changed":2,"insertions":15,"deletions":4,"files":["jc/parsers/foo.py","jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":9},{"name":"jc/parsers/foo_s.py","lines_changed":10}]},"message":"add type hints","epoch":1643251154,"epoch_utc":null},{"commit":"e93adf1884c0006a64123513070a5fd96a940da2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 18:09:30 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":5},{"name":"jc/__init__.py","lines_changed":5}]},"message":"fix doc","epoch":1643249370,"epoch_utc":null},{"commit":"254c4fc507842ca72064c0196418a7b939d54d06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 18:05:00 2022 -0800","stats":{"files_changed":2,"insertions":20,"deletions":6,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":13},{"name":"jc/__init__.py","lines_changed":13}]},"message":"add new functions","epoch":1643249100,"epoch_utc":null},{"commit":"74d5f60d14fc42cfd5768c7ffd6efc890a65d442","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 17:17:40 2022 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"update console interview description","epoch":1643246260,"epoch_utc":null},{"commit":"db7dc0634bc17b4daadc8bc21bba5975c093efe5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 17:12:35 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":2},{"name":"jc/lib.py","lines_changed":2}]},"message":"make **kwargs optional","epoch":1643245955,"epoch_utc":null},{"commit":"e156b0db453e99fb0f74b618fd343218f978ff68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 17:08:03 2022 -0800","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":4},{"name":"jc/parsers/universal.py","lines_changed":5}]},"message":"add type hints","epoch":1643245683,"epoch_utc":null},{"commit":"50adc05fbd6a0dcd9e4fb38aa41917bb57332f36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 16:58:48 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":6},{"name":"jc/utils.py","lines_changed":6}]},"message":"formatting","epoch":1643245128,"epoch_utc":null},{"commit":"446cac7c217103eb66cfdee97e3a208b7144b644","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 16:55:39 2022 -0800","stats":{"files_changed":2,"insertions":15,"deletions":11,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":11},{"name":"jc/utils.py","lines_changed":15}]},"message":"doc update","epoch":1643244939,"epoch_utc":null},{"commit":"28ffe3076bb5f23aeaf2624344856dbd02b4c0e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 16:34:23 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":9,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":8},{"name":"jc/lib.py","lines_changed":9}]},"message":"formatting","epoch":1643243663,"epoch_utc":null},{"commit":"d4d5e206cae14acd25445952f820810818b3fdce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 15:54:36 2022 -0800","stats":{"files_changed":3,"insertions":40,"deletions":28,"files":["docs/lib.md","docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":15},{"name":"docs/utils.md","lines_changed":26},{"name":"jc/utils.py","lines_changed":27}]},"message":"type hints update","epoch":1643241276,"epoch_utc":null},{"commit":"42fbe40a4ae02b9d09acdbf9b22573844959d2ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 15:54:18 2022 -0800","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":11}]},"message":"simplify type hints","epoch":1643241258,"epoch_utc":null},{"commit":"27e4a120e21dcbb3eadc6c4cf224ddb33859328d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 15:31:18 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":2},{"name":"jc/lib.py","lines_changed":2}]},"message":"remove trailing comma","epoch":1643239878,"epoch_utc":null},{"commit":"b5d5b7c73a96d4335b178ccfac60af90913e6f0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 15:01:42 2022 -0800","stats":{"files_changed":3,"insertions":29,"deletions":148,"files":["docgen.sh","docs/parsers/ifconfig.md","docs/parsers/traceroute.md"],"file_stats":[{"name":"docgen.sh","lines_changed":35},{"name":"docs/parsers/ifconfig.md","lines_changed":94},{"name":"docs/parsers/traceroute.md","lines_changed":48}]},"message":"remove private classes","epoch":1643238102,"epoch_utc":null},{"commit":"e7471556ba5fb0586ac5b0d7404cabd98a58db2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 14:39:11 2022 -0800","stats":{"files_changed":1,"insertions":0,"deletions":5,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":5}]},"message":"remove sed lines","epoch":1643236751,"epoch_utc":null},{"commit":"640a21341bb1c562cb2124155b511dfc74277fc0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 14:38:57 2022 -0800","stats":{"files_changed":2,"insertions":47,"deletions":42,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":20},{"name":"jc/utils.py","lines_changed":69}]},"message":"fix indentation","epoch":1643236737,"epoch_utc":null},{"commit":"f5befad3e41ba2864abc795a2fdf63e0f1d37c21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 14:21:06 2022 -0800","stats":{"files_changed":2,"insertions":33,"deletions":25,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":21},{"name":"jc/utils.py","lines_changed":37}]},"message":"move docstring under __init__","epoch":1643235666,"epoch_utc":null},{"commit":"f8223023c31093c1a34130b4e4cfc23b1d80a30c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 14:16:04 2022 -0800","stats":{"files_changed":4,"insertions":24,"deletions":10,"files":["docgen.sh","docs/parsers/ifconfig.md","docs/parsers/traceroute.md","docs/utils.md"],"file_stats":[{"name":"docgen.sh","lines_changed":28},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":2}]},"message":"change header depth","epoch":1643235364,"epoch_utc":null},{"commit":"7028e87f9b411c0cfb92eee7fc0667cdcb9a54ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 13:03:51 2022 -0800","stats":{"files_changed":87,"insertions":22,"deletions":445,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md"],"file_stats":[{"name":"docgen.sh","lines_changed":26},{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/csv_s.md","lines_changed":5},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":14},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iostat.md","lines_changed":5},{"name":"docs/parsers/iostat_s.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jar_manifest.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/ping_s.md","lines_changed":5},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/sfdisk.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/stat_s.md","lines_changed":5},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/systeminfo.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":8},{"name":"docs/parsers/ufw.md","lines_changed":5},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/vmstat.md","lines_changed":5},{"name":"docs/parsers/vmstat_s.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5},{"name":"docs/parsers/zipinfo.md","lines_changed":5},{"name":"docs/readme.md","lines_changed":4}]},"message":"remove TOC for parsers","epoch":1643231031,"epoch_utc":null},{"commit":"590728f9c1ccfdc078e600d1f35ad4ba51f70d36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 26 11:50:25 2022 -0800","stats":{"files_changed":91,"insertions":506,"deletions":17,"files":["docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/utils.md","jc/lib.py"],"file_stats":[{"name":"docgen.sh","lines_changed":28},{"name":"docs/lib.md","lines_changed":13},{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/csv_s.md","lines_changed":5},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":14},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iostat.md","lines_changed":5},{"name":"docs/parsers/iostat_s.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jar_manifest.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/ping_s.md","lines_changed":5},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/sfdisk.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/stat_s.md","lines_changed":5},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/systeminfo.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":8},{"name":"docs/parsers/ufw.md","lines_changed":5},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/universal.md","lines_changed":6},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/vmstat.md","lines_changed":5},{"name":"docs/parsers/vmstat_s.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5},{"name":"docs/parsers/zipinfo.md","lines_changed":5},{"name":"docs/readme.md","lines_changed":4},{"name":"docs/utils.md","lines_changed":17},{"name":"jc/lib.py","lines_changed":18}]},"message":"try new pydoc-markdown formatting options","epoch":1643226625,"epoch_utc":null},{"commit":"7cc147fe2d7b278bcab905bc4c3b70b5265e1510","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 19:28:37 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":44,"files":["docgen.sh","docgen.sh.old"],"file_stats":[{"name":"docgen.sh","lines_changed":4},{"name":"docgen.sh.old","lines_changed":44}]},"message":"increase heading size","epoch":1643167717,"epoch_utc":null},{"commit":"3cfb3965bb25024a7b03870b71f02194e278919b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 19:28:04 2022 -0800","stats":{"files_changed":3,"insertions":19,"deletions":19,"files":["docs/lib.md","docs/parsers/universal.md","docs/utils.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":10},{"name":"docs/parsers/universal.md","lines_changed":4},{"name":"docs/utils.md","lines_changed":24}]},"message":"formatting","epoch":1643167684,"epoch_utc":null},{"commit":"155d4213225fe4fcf4a059fb63c1ab9fc493177e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 19:18:54 2022 -0800","stats":{"files_changed":86,"insertions":182,"deletions":181,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"],"file_stats":[{"name":"docgen.sh","lines_changed":3},{"name":"docs/parsers/acpi.md","lines_changed":4},{"name":"docs/parsers/airport.md","lines_changed":4},{"name":"docs/parsers/airport_s.md","lines_changed":4},{"name":"docs/parsers/arp.md","lines_changed":4},{"name":"docs/parsers/blkid.md","lines_changed":4},{"name":"docs/parsers/cksum.md","lines_changed":4},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"docs/parsers/crontab_u.md","lines_changed":4},{"name":"docs/parsers/csv.md","lines_changed":4},{"name":"docs/parsers/csv_s.md","lines_changed":4},{"name":"docs/parsers/date.md","lines_changed":4},{"name":"docs/parsers/df.md","lines_changed":4},{"name":"docs/parsers/dig.md","lines_changed":4},{"name":"docs/parsers/dir.md","lines_changed":4},{"name":"docs/parsers/dmidecode.md","lines_changed":4},{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"docs/parsers/du.md","lines_changed":4},{"name":"docs/parsers/env.md","lines_changed":4},{"name":"docs/parsers/file.md","lines_changed":4},{"name":"docs/parsers/finger.md","lines_changed":4},{"name":"docs/parsers/free.md","lines_changed":4},{"name":"docs/parsers/fstab.md","lines_changed":4},{"name":"docs/parsers/group.md","lines_changed":4},{"name":"docs/parsers/gshadow.md","lines_changed":4},{"name":"docs/parsers/hash.md","lines_changed":4},{"name":"docs/parsers/hashsum.md","lines_changed":4},{"name":"docs/parsers/hciconfig.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":4},{"name":"docs/parsers/hosts.md","lines_changed":4},{"name":"docs/parsers/id.md","lines_changed":4},{"name":"docs/parsers/ifconfig.md","lines_changed":20},{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"docs/parsers/iostat.md","lines_changed":4},{"name":"docs/parsers/iostat_s.md","lines_changed":4},{"name":"docs/parsers/iptables.md","lines_changed":4},{"name":"docs/parsers/iw_scan.md","lines_changed":4},{"name":"docs/parsers/jar_manifest.md","lines_changed":4},{"name":"docs/parsers/jobs.md","lines_changed":4},{"name":"docs/parsers/kv.md","lines_changed":4},{"name":"docs/parsers/last.md","lines_changed":4},{"name":"docs/parsers/ls.md","lines_changed":4},{"name":"docs/parsers/ls_s.md","lines_changed":4},{"name":"docs/parsers/lsblk.md","lines_changed":4},{"name":"docs/parsers/lsmod.md","lines_changed":4},{"name":"docs/parsers/lsof.md","lines_changed":4},{"name":"docs/parsers/lsusb.md","lines_changed":4},{"name":"docs/parsers/mount.md","lines_changed":4},{"name":"docs/parsers/netstat.md","lines_changed":4},{"name":"docs/parsers/ntpq.md","lines_changed":4},{"name":"docs/parsers/passwd.md","lines_changed":4},{"name":"docs/parsers/ping.md","lines_changed":4},{"name":"docs/parsers/ping_s.md","lines_changed":4},{"name":"docs/parsers/pip_list.md","lines_changed":4},{"name":"docs/parsers/pip_show.md","lines_changed":4},{"name":"docs/parsers/ps.md","lines_changed":4},{"name":"docs/parsers/route.md","lines_changed":4},{"name":"docs/parsers/rpm_qi.md","lines_changed":4},{"name":"docs/parsers/sfdisk.md","lines_changed":4},{"name":"docs/parsers/shadow.md","lines_changed":4},{"name":"docs/parsers/ss.md","lines_changed":4},{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"docs/parsers/stat_s.md","lines_changed":4},{"name":"docs/parsers/sysctl.md","lines_changed":4},{"name":"docs/parsers/systemctl.md","lines_changed":4},{"name":"docs/parsers/systemctl_lj.md","lines_changed":4},{"name":"docs/parsers/systemctl_ls.md","lines_changed":4},{"name":"docs/parsers/systemctl_luf.md","lines_changed":4},{"name":"docs/parsers/systeminfo.md","lines_changed":4},{"name":"docs/parsers/time.md","lines_changed":4},{"name":"docs/parsers/timedatectl.md","lines_changed":4},{"name":"docs/parsers/tracepath.md","lines_changed":4},{"name":"docs/parsers/traceroute.md","lines_changed":8},{"name":"docs/parsers/ufw.md","lines_changed":4},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":4},{"name":"docs/parsers/uname.md","lines_changed":4},{"name":"docs/parsers/upower.md","lines_changed":4},{"name":"docs/parsers/uptime.md","lines_changed":4},{"name":"docs/parsers/vmstat.md","lines_changed":4},{"name":"docs/parsers/vmstat_s.md","lines_changed":4},{"name":"docs/parsers/w.md","lines_changed":4},{"name":"docs/parsers/wc.md","lines_changed":4},{"name":"docs/parsers/who.md","lines_changed":4},{"name":"docs/parsers/xml.md","lines_changed":4},{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"docs/parsers/zipinfo.md","lines_changed":4}]},"message":"formatting","epoch":1643167134,"epoch_utc":null},{"commit":"d3e10bb87bdb32396bce95f74e62a023f4efaf99","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:59:40 2022 -0800","stats":{"files_changed":1,"insertions":291,"deletions":0,"files":["docs/parsers/lsusb.md"],"file_stats":[{"name":"docs/parsers/lsusb.md","lines_changed":291}]},"message":"add lsusb docs","epoch":1643165980,"epoch_utc":null},{"commit":"fd5433ee6220357e59633c78b689aa432d056b43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:58:09 2022 -0800","stats":{"files_changed":3,"insertions":6,"deletions":293,"files":["docs/lib.md","docs/parsers/lsusb.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":4},{"name":"docs/parsers/lsusb.md","lines_changed":291},{"name":"jc/lib.py","lines_changed":4}]},"message":"parse docstring formatting","epoch":1643165889,"epoch_utc":null},{"commit":"4568f2d06e8fc1c465c86c318d925586481af062","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:51:56 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":4},{"name":"jc/lib.py","lines_changed":4}]},"message":"formatting for parse docstring","epoch":1643165516,"epoch_utc":null},{"commit":"c36e513d1bcc07cd8f01ff59199950e5396da51b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:42:55 2022 -0800","stats":{"files_changed":86,"insertions":88,"deletions":91,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"],"file_stats":[{"name":"docgen.sh","lines_changed":9},{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/dpkg_l.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/finger.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/gshadow.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iostat.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/jar_manifest.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/kv.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/stat_s.md","lines_changed":2},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"docs/parsers/zipinfo.md","lines_changed":2}]},"message":"formatting","epoch":1643164975,"epoch_utc":null},{"commit":"8e089baf3fe30fed80e1c5cdde7c3046bb70ca5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:38:26 2022 -0800","stats":{"files_changed":86,"insertions":8,"deletions":855,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"],"file_stats":[{"name":"docgen.sh","lines_changed":13},{"name":"docs/parsers/acpi.md","lines_changed":10},{"name":"docs/parsers/airport.md","lines_changed":10},{"name":"docs/parsers/airport_s.md","lines_changed":10},{"name":"docs/parsers/arp.md","lines_changed":10},{"name":"docs/parsers/blkid.md","lines_changed":10},{"name":"docs/parsers/cksum.md","lines_changed":10},{"name":"docs/parsers/crontab.md","lines_changed":10},{"name":"docs/parsers/crontab_u.md","lines_changed":10},{"name":"docs/parsers/csv.md","lines_changed":10},{"name":"docs/parsers/csv_s.md","lines_changed":10},{"name":"docs/parsers/date.md","lines_changed":10},{"name":"docs/parsers/df.md","lines_changed":10},{"name":"docs/parsers/dig.md","lines_changed":10},{"name":"docs/parsers/dir.md","lines_changed":10},{"name":"docs/parsers/dmidecode.md","lines_changed":10},{"name":"docs/parsers/dpkg_l.md","lines_changed":10},{"name":"docs/parsers/du.md","lines_changed":10},{"name":"docs/parsers/env.md","lines_changed":10},{"name":"docs/parsers/file.md","lines_changed":10},{"name":"docs/parsers/finger.md","lines_changed":10},{"name":"docs/parsers/free.md","lines_changed":10},{"name":"docs/parsers/fstab.md","lines_changed":10},{"name":"docs/parsers/group.md","lines_changed":10},{"name":"docs/parsers/gshadow.md","lines_changed":10},{"name":"docs/parsers/hash.md","lines_changed":10},{"name":"docs/parsers/hashsum.md","lines_changed":10},{"name":"docs/parsers/hciconfig.md","lines_changed":10},{"name":"docs/parsers/history.md","lines_changed":10},{"name":"docs/parsers/hosts.md","lines_changed":10},{"name":"docs/parsers/id.md","lines_changed":10},{"name":"docs/parsers/ifconfig.md","lines_changed":10},{"name":"docs/parsers/ini.md","lines_changed":10},{"name":"docs/parsers/iostat.md","lines_changed":10},{"name":"docs/parsers/iostat_s.md","lines_changed":10},{"name":"docs/parsers/iptables.md","lines_changed":10},{"name":"docs/parsers/iw_scan.md","lines_changed":10},{"name":"docs/parsers/jar_manifest.md","lines_changed":10},{"name":"docs/parsers/jobs.md","lines_changed":10},{"name":"docs/parsers/kv.md","lines_changed":10},{"name":"docs/parsers/last.md","lines_changed":10},{"name":"docs/parsers/ls.md","lines_changed":10},{"name":"docs/parsers/ls_s.md","lines_changed":10},{"name":"docs/parsers/lsblk.md","lines_changed":10},{"name":"docs/parsers/lsmod.md","lines_changed":10},{"name":"docs/parsers/lsof.md","lines_changed":10},{"name":"docs/parsers/lsusb.md","lines_changed":10},{"name":"docs/parsers/mount.md","lines_changed":10},{"name":"docs/parsers/netstat.md","lines_changed":10},{"name":"docs/parsers/ntpq.md","lines_changed":10},{"name":"docs/parsers/passwd.md","lines_changed":10},{"name":"docs/parsers/ping.md","lines_changed":10},{"name":"docs/parsers/ping_s.md","lines_changed":10},{"name":"docs/parsers/pip_list.md","lines_changed":10},{"name":"docs/parsers/pip_show.md","lines_changed":10},{"name":"docs/parsers/ps.md","lines_changed":10},{"name":"docs/parsers/route.md","lines_changed":10},{"name":"docs/parsers/rpm_qi.md","lines_changed":10},{"name":"docs/parsers/sfdisk.md","lines_changed":10},{"name":"docs/parsers/shadow.md","lines_changed":10},{"name":"docs/parsers/ss.md","lines_changed":10},{"name":"docs/parsers/stat.md","lines_changed":10},{"name":"docs/parsers/stat_s.md","lines_changed":10},{"name":"docs/parsers/sysctl.md","lines_changed":10},{"name":"docs/parsers/systemctl.md","lines_changed":10},{"name":"docs/parsers/systemctl_lj.md","lines_changed":10},{"name":"docs/parsers/systemctl_ls.md","lines_changed":10},{"name":"docs/parsers/systemctl_luf.md","lines_changed":10},{"name":"docs/parsers/systeminfo.md","lines_changed":10},{"name":"docs/parsers/time.md","lines_changed":10},{"name":"docs/parsers/timedatectl.md","lines_changed":10},{"name":"docs/parsers/tracepath.md","lines_changed":10},{"name":"docs/parsers/traceroute.md","lines_changed":10},{"name":"docs/parsers/ufw.md","lines_changed":10},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":10},{"name":"docs/parsers/uname.md","lines_changed":10},{"name":"docs/parsers/upower.md","lines_changed":10},{"name":"docs/parsers/uptime.md","lines_changed":10},{"name":"docs/parsers/vmstat.md","lines_changed":10},{"name":"docs/parsers/vmstat_s.md","lines_changed":10},{"name":"docs/parsers/w.md","lines_changed":10},{"name":"docs/parsers/wc.md","lines_changed":10},{"name":"docs/parsers/who.md","lines_changed":10},{"name":"docs/parsers/xml.md","lines_changed":10},{"name":"docs/parsers/yaml.md","lines_changed":10},{"name":"docs/parsers/zipinfo.md","lines_changed":10}]},"message":"remove info class from docs","epoch":1643164706,"epoch_utc":null},{"commit":"386f6c317e104e797c2b55e3d21c8b064a83ac78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 18:03:34 2022 -0800","stats":{"files_changed":89,"insertions":9552,"deletions":9939,"files":["docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/utils.md"],"file_stats":[{"name":"docgen.sh","lines_changed":10},{"name":"docs/lib.md","lines_changed":105},{"name":"docs/parsers/acpi.md","lines_changed":440},{"name":"docs/parsers/airport.md","lines_changed":146},{"name":"docs/parsers/airport_s.md","lines_changed":202},{"name":"docs/parsers/arp.md","lines_changed":220},{"name":"docs/parsers/blkid.md","lines_changed":230},{"name":"docs/parsers/cksum.md","lines_changed":90},{"name":"docs/parsers/crontab.md","lines_changed":330},{"name":"docs/parsers/crontab_u.md","lines_changed":326},{"name":"docs/parsers/csv.md","lines_changed":140},{"name":"docs/parsers/csv_s.md","lines_changed":114},{"name":"docs/parsers/date.md","lines_changed":132},{"name":"docs/parsers/df.md","lines_changed":184},{"name":"docs/parsers/dig.md","lines_changed":614},{"name":"docs/parsers/dir.md","lines_changed":210},{"name":"docs/parsers/dmidecode.md","lines_changed":240},{"name":"docs/parsers/dpkg_l.md","lines_changed":244},{"name":"docs/parsers/du.md","lines_changed":164},{"name":"docs/parsers/env.md","lines_changed":126},{"name":"docs/parsers/file.md","lines_changed":114},{"name":"docs/parsers/finger.md","lines_changed":166},{"name":"docs/parsers/free.md","lines_changed":134},{"name":"docs/parsers/fstab.md","lines_changed":164},{"name":"docs/parsers/group.md","lines_changed":212},{"name":"docs/parsers/gshadow.md","lines_changed":148},{"name":"docs/parsers/hash.md","lines_changed":68},{"name":"docs/parsers/hashsum.md","lines_changed":106},{"name":"docs/parsers/hciconfig.md","lines_changed":620},{"name":"docs/parsers/history.md","lines_changed":106},{"name":"docs/parsers/hosts.md","lines_changed":142},{"name":"docs/parsers/id.md","lines_changed":200},{"name":"docs/parsers/ifconfig.md","lines_changed":388},{"name":"docs/parsers/ini.md","lines_changed":110},{"name":"docs/parsers/iostat.md","lines_changed":304},{"name":"docs/parsers/iostat_s.md","lines_changed":198},{"name":"docs/parsers/iptables.md","lines_changed":312},{"name":"docs/parsers/iw_scan.md","lines_changed":226},{"name":"docs/parsers/jar_manifest.md","lines_changed":148},{"name":"docs/parsers/jobs.md","lines_changed":170},{"name":"docs/parsers/kv.md","lines_changed":86},{"name":"docs/parsers/last.md","lines_changed":186},{"name":"docs/parsers/ls.md","lines_changed":190},{"name":"docs/parsers/ls_s.md","lines_changed":130},{"name":"docs/parsers/lsblk.md","lines_changed":534},{"name":"docs/parsers/lsmod.md","lines_changed":240},{"name":"docs/parsers/lsof.md","lines_changed":228},{"name":"docs/parsers/lsusb.md","lines_changed":502},{"name":"docs/parsers/mount.md","lines_changed":140},{"name":"docs/parsers/netstat.md","lines_changed":688},{"name":"docs/parsers/ntpq.md","lines_changed":402},{"name":"docs/parsers/passwd.md","lines_changed":182},{"name":"docs/parsers/ping.md","lines_changed":308},{"name":"docs/parsers/ping_s.md","lines_changed":160},{"name":"docs/parsers/pip_list.md","lines_changed":84},{"name":"docs/parsers/pip_show.md","lines_changed":120},{"name":"docs/parsers/ps.md","lines_changed":394},{"name":"docs/parsers/route.md","lines_changed":206},{"name":"docs/parsers/rpm_qi.md","lines_changed":296},{"name":"docs/parsers/sfdisk.md","lines_changed":376},{"name":"docs/parsers/shadow.md","lines_changed":196},{"name":"docs/parsers/ss.md","lines_changed":538},{"name":"docs/parsers/stat.md","lines_changed":318},{"name":"docs/parsers/stat_s.md","lines_changed":152},{"name":"docs/parsers/sysctl.md","lines_changed":100},{"name":"docs/parsers/systemctl.md","lines_changed":106},{"name":"docs/parsers/systemctl_lj.md","lines_changed":140},{"name":"docs/parsers/systemctl_ls.md","lines_changed":90},{"name":"docs/parsers/systemctl_luf.md","lines_changed":82},{"name":"docs/parsers/systeminfo.md","lines_changed":396},{"name":"docs/parsers/time.md","lines_changed":242},{"name":"docs/parsers/timedatectl.md","lines_changed":112},{"name":"docs/parsers/tracepath.md","lines_changed":248},{"name":"docs/parsers/traceroute.md","lines_changed":220},{"name":"docs/parsers/ufw.md","lines_changed":390},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":250},{"name":"docs/parsers/uname.md","lines_changed":80},{"name":"docs/parsers/universal.md","lines_changed":72},{"name":"docs/parsers/upower.md","lines_changed":374},{"name":"docs/parsers/uptime.md","lines_changed":120},{"name":"docs/parsers/vmstat.md","lines_changed":226},{"name":"docs/parsers/vmstat_s.md","lines_changed":172},{"name":"docs/parsers/w.md","lines_changed":196},{"name":"docs/parsers/wc.md","lines_changed":98},{"name":"docs/parsers/who.md","lines_changed":250},{"name":"docs/parsers/xml.md","lines_changed":134},{"name":"docs/parsers/yaml.md","lines_changed":162},{"name":"docs/parsers/zipinfo.md","lines_changed":138},{"name":"docs/utils.md","lines_changed":134}]},"message":"update markdown processor settings","epoch":1643162614,"epoch_utc":null},{"commit":"75cd84ce8a86b3357c6cf5fe4fbc62d0f298a29a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 17:07:47 2022 -0800","stats":{"files_changed":94,"insertions":11423,"deletions":10081,"files":["README.md","docgen.sh","docgen.sh.old","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/utils.md","jc/cli.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docgen.sh","lines_changed":12},{"name":"docgen.sh.old","lines_changed":44},{"name":"docs/lib.md","lines_changed":151},{"name":"docs/parsers/acpi.md","lines_changed":454},{"name":"docs/parsers/airport.md","lines_changed":166},{"name":"docs/parsers/airport_s.md","lines_changed":224},{"name":"docs/parsers/arp.md","lines_changed":240},{"name":"docs/parsers/blkid.md","lines_changed":250},{"name":"docs/parsers/cksum.md","lines_changed":110},{"name":"docs/parsers/crontab.md","lines_changed":350},{"name":"docs/parsers/crontab_u.md","lines_changed":348},{"name":"docs/parsers/csv.md","lines_changed":160},{"name":"docs/parsers/csv_s.md","lines_changed":120},{"name":"docs/parsers/date.md","lines_changed":152},{"name":"docs/parsers/df.md","lines_changed":204},{"name":"docs/parsers/dig.md","lines_changed":634},{"name":"docs/parsers/dir.md","lines_changed":230},{"name":"docs/parsers/dmidecode.md","lines_changed":260},{"name":"docs/parsers/dpkg_l.md","lines_changed":266},{"name":"docs/parsers/du.md","lines_changed":184},{"name":"docs/parsers/env.md","lines_changed":146},{"name":"docs/parsers/file.md","lines_changed":134},{"name":"docs/parsers/finger.md","lines_changed":186},{"name":"docs/parsers/free.md","lines_changed":154},{"name":"docs/parsers/fstab.md","lines_changed":184},{"name":"docs/parsers/group.md","lines_changed":232},{"name":"docs/parsers/gshadow.md","lines_changed":168},{"name":"docs/parsers/hash.md","lines_changed":88},{"name":"docs/parsers/hashsum.md","lines_changed":126},{"name":"docs/parsers/hciconfig.md","lines_changed":634},{"name":"docs/parsers/history.md","lines_changed":126},{"name":"docs/parsers/hosts.md","lines_changed":162},{"name":"docs/parsers/id.md","lines_changed":220},{"name":"docs/parsers/ifconfig.md","lines_changed":472},{"name":"docs/parsers/ini.md","lines_changed":130},{"name":"docs/parsers/iostat.md","lines_changed":324},{"name":"docs/parsers/iostat_s.md","lines_changed":220},{"name":"docs/parsers/iptables.md","lines_changed":332},{"name":"docs/parsers/iw_scan.md","lines_changed":248},{"name":"docs/parsers/jar_manifest.md","lines_changed":170},{"name":"docs/parsers/jobs.md","lines_changed":190},{"name":"docs/parsers/kv.md","lines_changed":106},{"name":"docs/parsers/last.md","lines_changed":207},{"name":"docs/parsers/ls.md","lines_changed":210},{"name":"docs/parsers/ls_s.md","lines_changed":152},{"name":"docs/parsers/lsblk.md","lines_changed":548},{"name":"docs/parsers/lsmod.md","lines_changed":260},{"name":"docs/parsers/lsof.md","lines_changed":248},{"name":"docs/parsers/lsusb.md","lines_changed":518},{"name":"docs/parsers/mount.md","lines_changed":160},{"name":"docs/parsers/netstat.md","lines_changed":702},{"name":"docs/parsers/ntpq.md","lines_changed":422},{"name":"docs/parsers/passwd.md","lines_changed":202},{"name":"docs/parsers/ping.md","lines_changed":328},{"name":"docs/parsers/ping_s.md","lines_changed":182},{"name":"docs/parsers/pip_list.md","lines_changed":106},{"name":"docs/parsers/pip_show.md","lines_changed":142},{"name":"docs/parsers/ps.md","lines_changed":414},{"name":"docs/parsers/route.md","lines_changed":226},{"name":"docs/parsers/rpm_qi.md","lines_changed":318},{"name":"docs/parsers/sfdisk.md","lines_changed":396},{"name":"docs/parsers/shadow.md","lines_changed":216},{"name":"docs/parsers/ss.md","lines_changed":552},{"name":"docs/parsers/stat.md","lines_changed":338},{"name":"docs/parsers/stat_s.md","lines_changed":174},{"name":"docs/parsers/sysctl.md","lines_changed":120},{"name":"docs/parsers/systemctl.md","lines_changed":126},{"name":"docs/parsers/systemctl_lj.md","lines_changed":162},{"name":"docs/parsers/systemctl_ls.md","lines_changed":112},{"name":"docs/parsers/systemctl_luf.md","lines_changed":104},{"name":"docs/parsers/systeminfo.md","lines_changed":416},{"name":"docs/parsers/time.md","lines_changed":262},{"name":"docs/parsers/timedatectl.md","lines_changed":132},{"name":"docs/parsers/tracepath.md","lines_changed":268},{"name":"docs/parsers/traceroute.md","lines_changed":288},{"name":"docs/parsers/ufw.md","lines_changed":410},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":272},{"name":"docs/parsers/uname.md","lines_changed":100},{"name":"docs/parsers/universal.md","lines_changed":85},{"name":"docs/parsers/upower.md","lines_changed":394},{"name":"docs/parsers/uptime.md","lines_changed":140},{"name":"docs/parsers/vmstat.md","lines_changed":246},{"name":"docs/parsers/vmstat_s.md","lines_changed":194},{"name":"docs/parsers/w.md","lines_changed":216},{"name":"docs/parsers/wc.md","lines_changed":118},{"name":"docs/parsers/who.md","lines_changed":270},{"name":"docs/parsers/xml.md","lines_changed":154},{"name":"docs/parsers/yaml.md","lines_changed":182},{"name":"docs/parsers/zipinfo.md","lines_changed":158},{"name":"docs/readme.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":223},{"name":"jc/cli.py","lines_changed":4},{"name":"man/jc.1","lines_changed":12}]},"message":"try new markdown conversion","epoch":1643159267,"epoch_utc":null},{"commit":"6fad44e35df5d0e33e716d0fcb84ed309e6fd30b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 16:28:29 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"fix type hint","epoch":1643156909,"epoch_utc":null},{"commit":"1caac750daa25a5abeb1289964e918ec06289bfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 16:27:29 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":4}]},"message":"Update type hints","epoch":1643156849,"epoch_utc":null},{"commit":"16370dcb3d5cf1304c2340ef2253ef2987a982b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 15:49:48 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"update type hints","epoch":1643154588,"epoch_utc":null},{"commit":"c1302f2573993a6908001d6df0697486f54a9e7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 15:49:31 2022 -0800","stats":{"files_changed":1,"insertions":19,"deletions":8,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":27}]},"message":"add type-hints to public api","epoch":1643154571,"epoch_utc":null},{"commit":"6f0ffe0955e4d9d6cc82552cf4e4f419e3ff3756","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 15:48:00 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"docu update","epoch":1643154480,"epoch_utc":null},{"commit":"1f89745fe7cca3a0ac27445942098b717675a481","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 11:17:18 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1643138238,"epoch_utc":null},{"commit":"a46ac18ef775bb2c52675e61e11c5d92f33cbe81","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 10:47:05 2022 -0800","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"doc update","epoch":1643136425,"epoch_utc":null},{"commit":"1a05f1c575b57456481e41baaf551cef30115966","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 10:46:58 2022 -0800","stats":{"files_changed":3,"insertions":64,"deletions":54,"files":["jc/__init__.py","jc/cli.py","jc/lib.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":4},{"name":"jc/cli.py","lines_changed":48},{"name":"jc/lib.py","lines_changed":66}]},"message":"add parser info functions. move _get_parser functionality from cli to lib","epoch":1643136418,"epoch_utc":null},{"commit":"08f818aa42ca68050a79ec387c42bff265257fd5","merge":"027c231 b389665","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 25 00:45:53 2022 +0000","message":"Merge pull request #199 from kellyjonbrazil/master\n\nsync to dev","epoch":1643100353,"epoch_utc":1643071553},{"commit":"b3896650c230b4acc73704a50c93ee74e4034eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 23 13:40:50 2022 -0800","stats":{"files_changed":2,"insertions":62,"deletions":104,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":83},{"name":"templates/readme_template","lines_changed":83}]},"message":"revert column formatting","epoch":1642974050,"epoch_utc":null},{"commit":"f285539526998a5097943c71dcecb2979036b2b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 23 13:36:22 2022 -0800","stats":{"files_changed":2,"insertions":104,"deletions":62,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":83},{"name":"templates/readme_template","lines_changed":83}]},"message":"conform to 80 columns","epoch":1642973782,"epoch_utc":null},{"commit":"a896dcdf3b31b60582ebb1b3bca5d1103f998dd6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 23 13:14:00 2022 -0800","stats":{"files_changed":2,"insertions":338,"deletions":120,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":229},{"name":"templates/readme_template","lines_changed":229}]},"message":"formatting","epoch":1642972440,"epoch_utc":null},{"commit":"0a187d4ed08173ec360a006ae2367bb1f2f96c52","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 23 10:04:19 2022 -0800","stats":{"files_changed":3,"insertions":7,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":4}]},"message":"add console interview links","epoch":1642961059,"epoch_utc":null},{"commit":"2d65bc57d5a396e6683f970194de29494b5c1272","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 16:58:45 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":6},{"name":"jc/__init__.py","lines_changed":6}]},"message":"add quotes","epoch":1642813125,"epoch_utc":null},{"commit":"ab63809fde0cefe1f0401d957a3736fdb760f0cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 16:13:00 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"update description","epoch":1642810380,"epoch_utc":null},{"commit":"6f04707dc63936efd0e533ae36e1b39ead10c466","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 15:33:43 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add python package doc info to top of page","epoch":1642808023,"epoch_utc":null},{"commit":"d14a86a9b58bdc3cb0c8df1dfa495aefdaab8033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 15:29:46 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2}]},"message":"fix typo","epoch":1642807786,"epoch_utc":null},{"commit":"8e6a31d3da19926ac46744e02b27a899ca5fbd7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 14:08:19 2022 -0800","stats":{"files_changed":6,"insertions":14,"deletions":8,"files":["CHANGELOG","docs/readme.md","jc/__init__.py","jc/lib.py","man/jc.1","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4},{"name":"jc/lib.py","lines_changed":7},{"name":"man/jc.1","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"minor fix for macOS binary","epoch":1642802899,"epoch_utc":null},{"commit":"6e7b6afe87355e96422bb2560ffcbd5e79d28f04","merge":"70cb445 027c231","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 13:52:16 2022 -0800","message":"Merge pull request #198 from kellyjonbrazil/dev\n\nDev v1.18.0","epoch":1642801936,"epoch_utc":null},{"commit":"027c231097a002526350a93322407582a85db0cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 13:48:38 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"formatting","epoch":1642801718,"epoch_utc":null},{"commit":"f1cf7d1f953586dd44a4463d924f1a1f52717c37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:51:26 2022 -0800","stats":{"files_changed":2,"insertions":7,"deletions":5,"files":["jc/parsers/foo.py","jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":6},{"name":"jc/parsers/foo_s.py","lines_changed":6}]},"message":"add helper function info","epoch":1642798286,"epoch_utc":null},{"commit":"df611cc263f50285e74ceb3381f55b43a74870a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:41:52 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":6},{"name":"jc/__init__.py","lines_changed":6}]},"message":"formatting","epoch":1642797712,"epoch_utc":null},{"commit":"0f3143bbbb593340190e66729580146410012e14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:39:22 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":6},{"name":"jc/__init__.py","lines_changed":6}]},"message":"formatting","epoch":1642797562,"epoch_utc":null},{"commit":"c280757b7624a46543e481ca47a6e084d2d6f519","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:35:48 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"formatting","epoch":1642797348,"epoch_utc":null},{"commit":"d30b9d84ef5ec3a2a504f7ea251c932b8c9ea878","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:33:23 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"formatting","epoch":1642797203,"epoch_utc":null},{"commit":"50ded1dbd97d26cf01d7e1a98b40e0f0f7d02202","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:31:03 2022 -0800","stats":{"files_changed":1,"insertions":10,"deletions":4,"files":["docs/readme.md"],"file_stats":[{"name":"docs/readme.md","lines_changed":14}]},"message":"doc update","epoch":1642797063,"epoch_utc":null},{"commit":"e319aea5a45c598a44f35b4e58131d977509e4f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:29:36 2022 -0800","stats":{"files_changed":1,"insertions":10,"deletions":4,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":14}]},"message":"add doc version info","epoch":1642796976,"epoch_utc":null},{"commit":"ba86509c1d8700a50fe14e9d931ee57261306c5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:15:34 2022 -0800","stats":{"files_changed":1,"insertions":3,"deletions":9,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":12}]},"message":"simplify OSError exception handling","epoch":1642796134,"epoch_utc":null},{"commit":"0a9279ae6bfdd1aa59f5e9b31ce0af3bfec19f96","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 12:15:16 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["CHANGELOG","tests/test_lib.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":5},{"name":"tests/test_lib.py","lines_changed":1}]},"message":"doc update","epoch":1642796116,"epoch_utc":null},{"commit":"a13dde12af01b4473aa9a34b8a0d7387fb48500a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 21 07:42:03 2022 -0800","stats":{"files_changed":173,"insertions":173,"deletions":173,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/dpkg_l.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/finger.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/gshadow.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iostat.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/jar_manifest.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/kv.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/stat_s.md","lines_changed":2},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"docs/parsers/zipinfo.md","lines_changed":2},{"name":"jc/parsers/acpi.py","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/blkid.py","lines_changed":2},{"name":"jc/parsers/cksum.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"jc/parsers/csv.py","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/dir.py","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":2},{"name":"jc/parsers/dpkg_l.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/finger.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/group.py","lines_changed":2},{"name":"jc/parsers/gshadow.py","lines_changed":2},{"name":"jc/parsers/hash.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":2},{"name":"jc/parsers/hciconfig.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/iostat.py","lines_changed":2},{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2},{"name":"jc/parsers/jar_manifest.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/kv.py","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/lsusb.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/ntpq.py","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":2},{"name":"jc/parsers/ping.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/rpm_qi.py","lines_changed":2},{"name":"jc/parsers/sfdisk.py","lines_changed":2},{"name":"jc/parsers/shadow.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/stat_s.py","lines_changed":2},{"name":"jc/parsers/sysctl.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/systeminfo.py","lines_changed":2},{"name":"jc/parsers/time.py","lines_changed":2},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/ufw.py","lines_changed":2},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/parsers/wc.py","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":2},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2},{"name":"jc/parsers/zipinfo.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"change raw output wording","epoch":1642779723,"epoch_utc":null},{"commit":"e2ed358de1abefd737c187a324cbe4734d6975e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 15:31:24 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"changelog update","epoch":1642721484,"epoch_utc":null},{"commit":"a2cd3666210be3727a00c3405972f32fbd421046","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 15:01:49 2022 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["docs/_config.yml"],"file_stats":[{"name":"docs/_config.yml","lines_changed":1}]},"message":"Delete _config.yml","epoch":1642719709,"epoch_utc":null},{"commit":"15addd9bfc18a0e87beb97040b431c872b783662","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 09:59:23 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":8,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":5},{"name":"jc/parsers/universal.py","lines_changed":7}]},"message":"doc fix","epoch":1642701563,"epoch_utc":null},{"commit":"a4e34b0053ec0c032f4783caaa3e07fc2c685a98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 09:46:24 2022 -0800","stats":{"files_changed":2,"insertions":63,"deletions":0,"files":["docgen.sh","docs/parsers/universal.md"],"file_stats":[{"name":"docgen.sh","lines_changed":3},{"name":"docs/parsers/universal.md","lines_changed":60}]},"message":"add universal parser docs","epoch":1642700784,"epoch_utc":null},{"commit":"d09529ac302fbcc156d58cf836f8397c98121a76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 09:40:34 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"changelog update","epoch":1642700434,"epoch_utc":null},{"commit":"553097b5050dc02fbdaeec2e2e138e01bc6811d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 09:40:08 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":2}]},"message":"docstring update","epoch":1642700408,"epoch_utc":null},{"commit":"49c556857708307f617b2b516f2d281398681b5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 20 07:49:45 2022 -0800","stats":{"files_changed":7,"insertions":35,"deletions":15,"files":["README.md","docs/lib.md","docs/readme.md","jc/__init__.py","jc/lib.py","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/lib.md","lines_changed":9},{"name":"docs/readme.md","lines_changed":13},{"name":"jc/__init__.py","lines_changed":13},{"name":"jc/lib.py","lines_changed":9},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"module doc update","epoch":1642693785,"epoch_utc":null},{"commit":"6962b9ee8a52c924dc2de6b79ddeea3636e80fe4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 22:24:59 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":6,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":7},{"name":"jc/lib.py","lines_changed":7}]},"message":"formatting","epoch":1642659899,"epoch_utc":null},{"commit":"b4575a3f780f9aa2751c8b4789f67aaca32dd1cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 22:20:36 2022 -0800","stats":{"files_changed":3,"insertions":91,"deletions":1,"files":["docgen.sh","docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docgen.sh","lines_changed":4},{"name":"docs/lib.md","lines_changed":86},{"name":"jc/lib.py","lines_changed":2}]},"message":"add lib docs","epoch":1642659636,"epoch_utc":null},{"commit":"35b54d235d73b2ce658223be3d6095906f142d89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 21:53:13 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"templates/readme_template","lines_changed":3}]},"message":"add python package doc info","epoch":1642657993,"epoch_utc":null},{"commit":"583a5757e454a4e36b331057d1266279b55ee16a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 21:32:21 2022 -0800","stats":{"files_changed":18,"insertions":34,"deletions":30,"files":["docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/file.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/traceroute.md","docs/parsers/ufw_appinfo.md","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/file.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/traceroute.py","jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":6},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":9},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":6},{"name":"jc/parsers/ls.py","lines_changed":5},{"name":"jc/parsers/ls_s.py","lines_changed":9},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":2}]},"message":"formatting","epoch":1642656741,"epoch_utc":null},{"commit":"f355333eeed3c4afba844dc7bed5224356552adc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 19:27:46 2022 -0800","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":8},{"name":"jc/__init__.py","lines_changed":8}]},"message":"formatting","epoch":1642649266,"epoch_utc":null},{"commit":"4d7df109604e4f8367904968602acfc05217a7fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 19:24:37 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"formatting","epoch":1642649077,"epoch_utc":null},{"commit":"66b2c28f4bc75fb76800f9fb7ea485eee194a9a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 19:22:08 2022 -0800","stats":{"files_changed":2,"insertions":24,"deletions":24,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":24},{"name":"jc/__init__.py","lines_changed":24}]},"message":"formatting","epoch":1642648928,"epoch_utc":null},{"commit":"299a9c6d88fdf1fede447b4057d8f4263daef733","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 19:19:25 2022 -0800","stats":{"files_changed":2,"insertions":25,"deletions":57,"files":["docs/parsers/csv.md","docs/readme.md"],"file_stats":[{"name":"docs/parsers/csv.md","lines_changed":4},{"name":"docs/readme.md","lines_changed":78}]},"message":"formatting","epoch":1642648765,"epoch_utc":null},{"commit":"bd391d979ce98b126dab0f012a56b3fcb1f73439","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 19:18:03 2022 -0800","stats":{"files_changed":1,"insertions":23,"deletions":55,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":78}]},"message":"add lib function docs","epoch":1642648683,"epoch_utc":null},{"commit":"7309bd2282445f6daef0b1491ff60b8104500abb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 18:47:44 2022 -0800","stats":{"files_changed":3,"insertions":19,"deletions":10,"files":["jc/lib.py","jc/parsers/csv.py","jc/parsers/universal.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":15},{"name":"jc/parsers/csv.py","lines_changed":4},{"name":"jc/parsers/universal.py","lines_changed":10}]},"message":"add get_help","epoch":1642646864,"epoch_utc":null},{"commit":"ce84c09d3394b598f19a3e012ef27ce4154e3b3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 18:44:26 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":3}]},"message":"add get_help()","epoch":1642646666,"epoch_utc":null},{"commit":"b4fffbb6476daf78fbdf19dbf31bbeeab950d2dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 17:30:14 2022 -0800","stats":{"files_changed":46,"insertions":501,"deletions":304,"files":["docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/history.md","docs/parsers/ini.md","docs/parsers/iostat_s.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsusb.md","docs/parsers/netstat.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/ps.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/upower.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/who.md"],"file_stats":[{"name":"docs/parsers/crontab.md","lines_changed":3},{"name":"docs/parsers/crontab_u.md","lines_changed":22},{"name":"docs/parsers/csv.md","lines_changed":9},{"name":"docs/parsers/csv_s.md","lines_changed":35},{"name":"docs/parsers/date.md","lines_changed":18},{"name":"docs/parsers/dig.md","lines_changed":16},{"name":"docs/parsers/dir.md","lines_changed":6},{"name":"docs/parsers/dpkg_l.md","lines_changed":7},{"name":"docs/parsers/du.md","lines_changed":20},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":8},{"name":"docs/parsers/ini.md","lines_changed":15},{"name":"docs/parsers/iostat_s.md","lines_changed":25},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jar_manifest.md","lines_changed":25},{"name":"docs/parsers/jobs.md","lines_changed":3},{"name":"docs/parsers/kv.md","lines_changed":11},{"name":"docs/parsers/last.md","lines_changed":10},{"name":"docs/parsers/ls.md","lines_changed":19},{"name":"docs/parsers/ls_s.md","lines_changed":51},{"name":"docs/parsers/lsblk.md","lines_changed":10},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":3},{"name":"docs/parsers/ping.md","lines_changed":32},{"name":"docs/parsers/ping_s.md","lines_changed":85},{"name":"docs/parsers/ps.md","lines_changed":8},{"name":"docs/parsers/rpm_qi.md","lines_changed":37},{"name":"docs/parsers/sfdisk.md","lines_changed":8},{"name":"docs/parsers/ss.md","lines_changed":6},{"name":"docs/parsers/stat.md","lines_changed":6},{"name":"docs/parsers/stat_s.md","lines_changed":27},{"name":"docs/parsers/sysctl.md","lines_changed":7},{"name":"docs/parsers/systemctl.md","lines_changed":4},{"name":"docs/parsers/systemctl_ls.md","lines_changed":3},{"name":"docs/parsers/systemctl_luf.md","lines_changed":3},{"name":"docs/parsers/systeminfo.md","lines_changed":19},{"name":"docs/parsers/time.md","lines_changed":33},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"docs/parsers/ufw.md","lines_changed":7},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":28},{"name":"docs/parsers/upower.md","lines_changed":16},{"name":"docs/parsers/vmstat.md","lines_changed":13},{"name":"docs/parsers/vmstat_s.md","lines_changed":111},{"name":"docs/parsers/who.md","lines_changed":7}]},"message":"formatting","epoch":1642642214,"epoch_utc":null},{"commit":"3701b4198aad1826ad6da571fbcaa530b057cc48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 17:29:22 2022 -0800","stats":{"files_changed":86,"insertions":710,"deletions":606,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":5},{"name":"jc/parsers/airport.py","lines_changed":7},{"name":"jc/parsers/airport_s.py","lines_changed":3},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/blkid.py","lines_changed":10},{"name":"jc/parsers/cksum.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":6},{"name":"jc/parsers/crontab_u.py","lines_changed":25},{"name":"jc/parsers/csv.py","lines_changed":14},{"name":"jc/parsers/csv_s.py","lines_changed":38},{"name":"jc/parsers/date.py","lines_changed":69},{"name":"jc/parsers/df.py","lines_changed":13},{"name":"jc/parsers/dig.py","lines_changed":28},{"name":"jc/parsers/dir.py","lines_changed":8},{"name":"jc/parsers/dmidecode.py","lines_changed":3},{"name":"jc/parsers/dpkg_l.py","lines_changed":10},{"name":"jc/parsers/du.py","lines_changed":23},{"name":"jc/parsers/env.py","lines_changed":7},{"name":"jc/parsers/file.py","lines_changed":6},{"name":"jc/parsers/finger.py","lines_changed":14},{"name":"jc/parsers/foo.py","lines_changed":3},{"name":"jc/parsers/foo_s.py","lines_changed":23},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/group.py","lines_changed":3},{"name":"jc/parsers/gshadow.py","lines_changed":3},{"name":"jc/parsers/hash.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":5},{"name":"jc/parsers/hciconfig.py","lines_changed":13},{"name":"jc/parsers/history.py","lines_changed":10},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":3},{"name":"jc/parsers/ifconfig.py","lines_changed":20},{"name":"jc/parsers/ini.py","lines_changed":23},{"name":"jc/parsers/iostat_s.py","lines_changed":25},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":11},{"name":"jc/parsers/jar_manifest.py","lines_changed":25},{"name":"jc/parsers/jobs.py","lines_changed":5},{"name":"jc/parsers/kv.py","lines_changed":13},{"name":"jc/parsers/last.py","lines_changed":17},{"name":"jc/parsers/ls.py","lines_changed":21},{"name":"jc/parsers/ls_s.py","lines_changed":53},{"name":"jc/parsers/lsblk.py","lines_changed":15},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/lsusb.py","lines_changed":5},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":20},{"name":"jc/parsers/ntpq.py","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":3},{"name":"jc/parsers/ping.py","lines_changed":46},{"name":"jc/parsers/ping_s.py","lines_changed":99},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":10},{"name":"jc/parsers/route.py","lines_changed":6},{"name":"jc/parsers/rpm_qi.py","lines_changed":40},{"name":"jc/parsers/sfdisk.py","lines_changed":16},{"name":"jc/parsers/shadow.py","lines_changed":3},{"name":"jc/parsers/ss.py","lines_changed":8},{"name":"jc/parsers/stat.py","lines_changed":12},{"name":"jc/parsers/stat_s.py","lines_changed":31},{"name":"jc/parsers/sysctl.py","lines_changed":10},{"name":"jc/parsers/systemctl.py","lines_changed":6},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":5},{"name":"jc/parsers/systemctl_luf.py","lines_changed":5},{"name":"jc/parsers/systeminfo.py","lines_changed":31},{"name":"jc/parsers/time.py","lines_changed":51},{"name":"jc/parsers/timedatectl.py","lines_changed":8},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":7},{"name":"jc/parsers/ufw.py","lines_changed":7},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":28},{"name":"jc/parsers/uname.py","lines_changed":4},{"name":"jc/parsers/universal.py","lines_changed":40},{"name":"jc/parsers/upower.py","lines_changed":32},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":28},{"name":"jc/parsers/vmstat_s.py","lines_changed":125},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/parsers/wc.py","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":10},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"formatting","epoch":1642642162,"epoch_utc":null},{"commit":"d4c34098fa7ad2098076f0fa0564467e5d06f916","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 11:31:29 2022 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":5}]},"message":"formatting","epoch":1642620689,"epoch_utc":null},{"commit":"b3c531193b3fc53697e7d7823576f481f9462d53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 11:08:59 2022 -0800","stats":{"files_changed":3,"insertions":125,"deletions":71,"files":["CHANGELOG","docs/utils.md","jc/utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docs/utils.md","lines_changed":79},{"name":"jc/utils.py","lines_changed":114}]},"message":"formatting","epoch":1642619339,"epoch_utc":null},{"commit":"1d0e07c77bab5c48405323e52873c7952dd0a587","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 10:31:46 2022 -0800","stats":{"files_changed":3,"insertions":57,"deletions":55,"files":["docs/readme.md","jc/__init__.py","jc/lib.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":33},{"name":"jc/__init__.py","lines_changed":33},{"name":"jc/lib.py","lines_changed":46}]},"message":"formatting","epoch":1642617106,"epoch_utc":null},{"commit":"06a322cf9c7468dc7e8ba05914e1d07bbc51f63a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 10:31:36 2022 -0800","stats":{"files_changed":1,"insertions":14,"deletions":8,"files":["tests/test_lib.py"],"file_stats":[{"name":"tests/test_lib.py","lines_changed":22}]},"message":"rename tests and add conversion function tests","epoch":1642617096,"epoch_utc":null},{"commit":"623d148712f93eacf9b7b5803140603f0af67acb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 09:30:53 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1642613453,"epoch_utc":null},{"commit":"647e83d0439a0937db14a2cc97929e38a6b6a43b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 09:29:09 2022 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["tests/test_lib.py"],"file_stats":[{"name":"tests/test_lib.py","lines_changed":3}]},"message":"add test to ensure there are zero plugin parsers installed during tests","epoch":1642613349,"epoch_utc":null},{"commit":"91a554464444da0cc3ed3b4d212539232411f6cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 09:28:35 2022 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":5}]},"message":"doc update","epoch":1642613315,"epoch_utc":null},{"commit":"a1190998aef1bf403ee34c38c1a0fbd6291ac38b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 09:15:24 2022 -0800","stats":{"files_changed":2,"insertions":82,"deletions":0,"files":["tests/test_jc.py","tests/test_lib.py"],"file_stats":[{"name":"tests/test_jc.py","lines_changed":41},{"name":"tests/test_lib.py","lines_changed":41}]},"message":"add jc and jc.lib tests","epoch":1642612524,"epoch_utc":null},{"commit":"097d7a1850f6f6df73a5761c657b73ef9dbd3e29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 19 09:15:11 2022 -0800","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":4}]},"message":"simplify __init__","epoch":1642612511,"epoch_utc":null},{"commit":"302bf72e720b3a67fbf1300eaff4f99fc343abeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 15:38:03 2022 -0800","stats":{"files_changed":138,"insertions":718,"deletions":6,"files":["docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py"],"file_stats":[{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":5},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iostat.md","lines_changed":5},{"name":"docs/parsers/iostat_s.md","lines_changed":7},{"name":"docs/parsers/iptables.md","lines_changed":7},{"name":"docs/parsers/iw_scan.md","lines_changed":9},{"name":"docs/parsers/jar_manifest.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":7},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/ping_s.md","lines_changed":7},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/sfdisk.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/stat_s.md","lines_changed":7},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/systeminfo.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"docs/parsers/ufw.md","lines_changed":5},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/vmstat.md","lines_changed":5},{"name":"docs/parsers/vmstat_s.md","lines_changed":7},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5},{"name":"docs/parsers/zipinfo.md","lines_changed":5},{"name":"jc/parsers/env.py","lines_changed":5},{"name":"jc/parsers/file.py","lines_changed":5},{"name":"jc/parsers/finger.py","lines_changed":5},{"name":"jc/parsers/foo.py","lines_changed":5},{"name":"jc/parsers/foo_s.py","lines_changed":7},{"name":"jc/parsers/free.py","lines_changed":5},{"name":"jc/parsers/fstab.py","lines_changed":5},{"name":"jc/parsers/group.py","lines_changed":5},{"name":"jc/parsers/gshadow.py","lines_changed":5},{"name":"jc/parsers/hash.py","lines_changed":5},{"name":"jc/parsers/hashsum.py","lines_changed":5},{"name":"jc/parsers/hciconfig.py","lines_changed":5},{"name":"jc/parsers/history.py","lines_changed":5},{"name":"jc/parsers/hosts.py","lines_changed":5},{"name":"jc/parsers/id.py","lines_changed":5},{"name":"jc/parsers/ifconfig.py","lines_changed":5},{"name":"jc/parsers/ini.py","lines_changed":5},{"name":"jc/parsers/iostat.py","lines_changed":5},{"name":"jc/parsers/iostat_s.py","lines_changed":7},{"name":"jc/parsers/iptables.py","lines_changed":7},{"name":"jc/parsers/iw_scan.py","lines_changed":9},{"name":"jc/parsers/jar_manifest.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":5},{"name":"jc/parsers/kv.py","lines_changed":5},{"name":"jc/parsers/last.py","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":5},{"name":"jc/parsers/ls_s.py","lines_changed":7},{"name":"jc/parsers/lsblk.py","lines_changed":5},{"name":"jc/parsers/lsmod.py","lines_changed":5},{"name":"jc/parsers/lsof.py","lines_changed":5},{"name":"jc/parsers/lsusb.py","lines_changed":5},{"name":"jc/parsers/mount.py","lines_changed":5},{"name":"jc/parsers/netstat.py","lines_changed":5},{"name":"jc/parsers/ntpq.py","lines_changed":5},{"name":"jc/parsers/passwd.py","lines_changed":5},{"name":"jc/parsers/ping.py","lines_changed":5},{"name":"jc/parsers/ping_s.py","lines_changed":7},{"name":"jc/parsers/pip_list.py","lines_changed":5},{"name":"jc/parsers/pip_show.py","lines_changed":5},{"name":"jc/parsers/ps.py","lines_changed":5},{"name":"jc/parsers/route.py","lines_changed":5},{"name":"jc/parsers/rpm_qi.py","lines_changed":5},{"name":"jc/parsers/sfdisk.py","lines_changed":5},{"name":"jc/parsers/shadow.py","lines_changed":5},{"name":"jc/parsers/ss.py","lines_changed":5},{"name":"jc/parsers/stat.py","lines_changed":5},{"name":"jc/parsers/stat_s.py","lines_changed":7},{"name":"jc/parsers/sysctl.py","lines_changed":5},{"name":"jc/parsers/systemctl.py","lines_changed":5},{"name":"jc/parsers/systemctl_lj.py","lines_changed":5},{"name":"jc/parsers/systemctl_ls.py","lines_changed":5},{"name":"jc/parsers/systemctl_luf.py","lines_changed":5},{"name":"jc/parsers/systeminfo.py","lines_changed":5},{"name":"jc/parsers/time.py","lines_changed":5},{"name":"jc/parsers/timedatectl.py","lines_changed":5},{"name":"jc/parsers/tracepath.py","lines_changed":5},{"name":"jc/parsers/traceroute.py","lines_changed":5},{"name":"jc/parsers/ufw.py","lines_changed":5},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":5},{"name":"jc/parsers/uname.py","lines_changed":5},{"name":"jc/parsers/upower.py","lines_changed":5},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/vmstat.py","lines_changed":5},{"name":"jc/parsers/vmstat_s.py","lines_changed":7},{"name":"jc/parsers/w.py","lines_changed":5},{"name":"jc/parsers/wc.py","lines_changed":5},{"name":"jc/parsers/who.py","lines_changed":5},{"name":"jc/parsers/xml.py","lines_changed":5},{"name":"jc/parsers/yaml.py","lines_changed":5},{"name":"jc/parsers/zipinfo.py","lines_changed":5}]},"message":"Update high-level API docs","epoch":1642549083,"epoch_utc":null},{"commit":"2c42baf3a4dd6733c078f31a1becd708a05f2c36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 14:18:12 2022 -0800","stats":{"files_changed":34,"insertions":174,"deletions":0,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/csv_s.md","lines_changed":7},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"jc/parsers/acpi.py","lines_changed":5},{"name":"jc/parsers/airport.py","lines_changed":5},{"name":"jc/parsers/airport_s.py","lines_changed":5},{"name":"jc/parsers/arp.py","lines_changed":5},{"name":"jc/parsers/blkid.py","lines_changed":5},{"name":"jc/parsers/cksum.py","lines_changed":5},{"name":"jc/parsers/crontab.py","lines_changed":5},{"name":"jc/parsers/crontab_u.py","lines_changed":5},{"name":"jc/parsers/csv.py","lines_changed":5},{"name":"jc/parsers/csv_s.py","lines_changed":7},{"name":"jc/parsers/date.py","lines_changed":5},{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":5},{"name":"jc/parsers/dir.py","lines_changed":5},{"name":"jc/parsers/dmidecode.py","lines_changed":5},{"name":"jc/parsers/dpkg_l.py","lines_changed":5},{"name":"jc/parsers/du.py","lines_changed":5}]},"message":"add new high-level api info","epoch":1642544292,"epoch_utc":null},{"commit":"03feb89c84096c0ea1d6ae3a0634ae7b8b507e8f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 13:46:11 2022 -0800","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2}]},"message":"add module list info","epoch":1642542371,"epoch_utc":null},{"commit":"9dd553192fbca3037b3afe5df6bae88f7a8a9365","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 13:40:09 2022 -0800","stats":{"files_changed":5,"insertions":29,"deletions":12,"files":["CHANGELOG","README.md","docs/readme.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":10},{"name":"docs/readme.md","lines_changed":16},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":10}]},"message":"doc update","epoch":1642542009,"epoch_utc":null},{"commit":"fa3f02e9d1ac7867e3465c2d214f4e4229ff4c66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 13:39:51 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1642541991,"epoch_utc":null},{"commit":"0a9dde58c5235f78c4c9ae9c013f7454482c6067","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 18 13:10:14 2022 -0800","stats":{"files_changed":3,"insertions":228,"deletions":134,"files":["jc/__init__.py","jc/cli.py","jc/lib.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":22},{"name":"jc/cli.py","lines_changed":154},{"name":"jc/lib.py","lines_changed":186}]},"message":"add jc.parse() high-level API","epoch":1642540214,"epoch_utc":null},{"commit":"70cb4453bebb235130e2c287633ecb1de6c2b0aa","merge":"e6900e2 830674c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 14 11:54:29 2022 -0800","message":"Merge pull request #195 from kellyjonbrazil/dev\n\nDev v1.17.7","epoch":1642190069,"epoch_utc":null},{"commit":"830674cc6f19e107347a743baff7bbaab7f80b75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 14 11:47:25 2022 -0800","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["CHANGELOG","jc/__init__.py","man/jc.1","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1642189645,"epoch_utc":null},{"commit":"fb406b58a12fdfe81bcff76671661af77e7f2fe5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jan 8 20:22:53 2022 -0800","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["docs/parsers/stat_s.md","jc/parsers/stat_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/stat_s.md","lines_changed":4},{"name":"jc/parsers/stat_s.py","lines_changed":4},{"name":"man/jc.1","lines_changed":2}]},"message":"formatting","epoch":1641702173,"epoch_utc":null},{"commit":"55b272e41259ddc835cf4eb513fb67e7b2cf1573","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 6 11:13:14 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":2}]},"message":"tighten stat data detection","epoch":1641496394,"epoch_utc":null},{"commit":"94f62a9bf36242310790a0f37c66b2e6c6fdc078","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 6 11:03:49 2022 -0800","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/stat_s.md","jc/parsers/stat_s.py"],"file_stats":[{"name":"docs/parsers/stat_s.md","lines_changed":6},{"name":"jc/parsers/stat_s.py","lines_changed":6}]},"message":"formatting","epoch":1641495829,"epoch_utc":null},{"commit":"8d19e4cb7b45e3b6cb8c404c959949b7593c9386","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 6 11:00:53 2022 -0800","stats":{"files_changed":4,"insertions":115,"deletions":1,"files":["CHANGELOG","README.md","docs/parsers/stat_s.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/stat_s.md","lines_changed":105},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update","epoch":1641495653,"epoch_utc":null},{"commit":"7e510d48e0f8426a67cf8d70d06d0331c274d358","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 6 10:36:33 2022 -0800","stats":{"files_changed":7,"insertions":106,"deletions":2,"files":["jc/parsers/stat_s.py","tests/fixtures/centos-7.7/stat-streaming.json","tests/fixtures/freebsd12/stat-streaming.json",".../stat-filename-with-spaces-streaming.json","tests/fixtures/osx-10.14.6/stat-streaming.json","tests/fixtures/ubuntu-18.04/stat-streaming.json","tests/test_stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":3},{"name":"tests/fixtures/centos-7.7/stat-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/stat-streaming.json","lines_changed":1},{"name":".../stat-filename-with-spaces-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/stat-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/stat-streaming.json","lines_changed":1},{"name":"tests/test_stat_s.py","lines_changed":100}]},"message":"simplify non-stat parse error logic","epoch":1641494193,"epoch_utc":null},{"commit":"7b20cffb143447f4497bc4e895eac2426e8a519f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 5 11:44:00 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":8}]},"message":"simplify last item logic","epoch":1641411840,"epoch_utc":null},{"commit":"5c934c43c13b69183561da8a77280feb3363e950","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 5 11:39:00 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":2}]},"message":"add continue to simplify logic","epoch":1641411540,"epoch_utc":null},{"commit":"8609298449e997ba4804d818f4fc23cb393ded7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 5 11:25:58 2022 -0800","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":8}]},"message":"update docstring","epoch":1641410758,"epoch_utc":null},{"commit":"72cb0dc10b2dac486d3e2a52cf44baf0d7496034","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 5 11:22:01 2022 -0800","stats":{"files_changed":1,"insertions":14,"deletions":10,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":24}]},"message":"fixup for first and last items","epoch":1641410521,"epoch_utc":null},{"commit":"7b22fa81ded0f6f59e250ffea63c5d2a0f928b25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 5 07:46:58 2022 -0800","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":8}]},"message":"raise for non-stat data","epoch":1641397618,"epoch_utc":null},{"commit":"0b6a1307790e0793917bc2781e4873aa9dd67225","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 16:43:38 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":4}]},"message":"ignore blank lines","epoch":1641343418,"epoch_utc":null},{"commit":"fdcf4338e0f099699f8d48df6382be1cc97dba84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 15:31:00 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":6}]},"message":"add examples to docstring","epoch":1641339060,"epoch_utc":null},{"commit":"ee43037f481286a34a766390568965fdd53af132","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 15:13:42 2022 -0800","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":2}]},"message":"remove unused continue lines","epoch":1641338022,"epoch_utc":null},{"commit":"26e365563c314e694915c7a3feae490ea99a112c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 15:07:45 2022 -0800","stats":{"files_changed":1,"insertions":50,"deletions":11,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":61}]},"message":"add schema and _process logic","epoch":1641337665,"epoch_utc":null},{"commit":"1b39586bb1b62aee8ae709512c2e3f79cefdb3d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 15:01:42 2022 -0800","stats":{"files_changed":2,"insertions":227,"deletions":0,"files":["jc/cli.py","jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/stat_s.py","lines_changed":226}]},"message":"add stat streaming parser","epoch":1641337302,"epoch_utc":null},{"commit":"8bb3a6bea34d60d49039f1ed72fd7e413edc05da","merge":"78672bd e6900e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 4 13:33:35 2022 -0800","message":"Merge pull request #194 from kellyjonbrazil/master\n\nsync to dev","epoch":1641332015,"epoch_utc":null},{"commit":"e6900e2000bf265dfcfc09ffbfda39e9238661af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:41:16 2022 -0800","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":21}]},"message":"add jar-manifest","epoch":1641231676,"epoch_utc":null},{"commit":"0ee244756bf39123e4873eb231156edbe7f0e0ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:22:35 2022 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/jar_manifest.md","jc/parsers/jar_manifest.py"],"file_stats":[{"name":"docs/parsers/jar_manifest.md","lines_changed":2},{"name":"jc/parsers/jar_manifest.py","lines_changed":2}]},"message":"spelling","epoch":1641230555,"epoch_utc":null},{"commit":"6d5ac9abe6712e01887ce0d96c278a568319f405","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:19:40 2022 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["docs/parsers/csv.md","docs/parsers/csv_s.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"update docs","epoch":1641230380,"epoch_utc":null},{"commit":"44f6d9e1321459be8196aeebf6db088cc5120e61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:18:43 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"changelog update","epoch":1641230323,"epoch_utc":null},{"commit":"360154559c5dee6affa55bbdd5d2f473248b9168","merge":"241d53a 78672bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:12:50 2022 -0800","message":"Merge pull request #193 from kellyjonbrazil/dev\n\nDev add csv doublequote fix","epoch":1641229970,"epoch_utc":null},{"commit":"78672bd7ad66c418e0ecf31add73f887b0946d29","merge":"bc7973a 65d96e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:08:57 2022 -0800","message":"Merge pull request #190 from shaikustin/csv-doubleqouted\n\nfix doubleqoute in csv","epoch":1641229737,"epoch_utc":null},{"commit":"65d96e26b59e231c77c1dbba1dc91708c33de30c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 09:06:00 2022 -0800","stats":{"files_changed":2,"insertions":13,"deletions":0,"files":["tests/fixtures/generic/csv-doubleqouted-streaming.json","tests/test_csv_s.py"],"file_stats":[{"name":"tests/fixtures/generic/csv-doubleqouted-streaming.json","lines_changed":1},{"name":"tests/test_csv_s.py","lines_changed":12}]},"message":"add streaming tests","epoch":1641229560,"epoch_utc":null},{"commit":"241d53af9a5c9bba70e28835e22c52c0060269ba","merge":"f733100 bc7973a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 08:49:15 2022 -0800","message":"Merge pull request #192 from kellyjonbrazil/dev\n\nDev v1.17.6","epoch":1641228555,"epoch_utc":null},{"commit":"5563829df2849a899df2e9211d6c92bddc695f9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 3 08:48:23 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":8}]},"message":"make dialect sniff behavior match non-streaming parser","epoch":1641228503,"epoch_utc":null},{"commit":"3a4a27e1f94ee07352c7616c57ec655c1aea04f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 11:44:25 2022 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/csv.py"],"file_stats":[{"name":"jc/parsers/csv.py","lines_changed":4}]},"message":"version bump","epoch":1641152665,"epoch_utc":null},{"commit":"9c887a36a804d817c3f669a55b9b1566d09d645d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 11:44:18 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":6}]},"message":"update csv_s parser with csv changes","epoch":1641152658,"epoch_utc":null},{"commit":"bc7973af36e13006230b5faa9e201e300d468912","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 11:07:15 2022 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","jc/cli.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"update copyright","epoch":1641150435,"epoch_utc":null},{"commit":"32972d8fdbdc71923978fd5c2a87fd6cfa4b7f8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 11:00:52 2022 -0800","stats":{"files_changed":7,"insertions":122,"deletions":9,"files":["CHANGELOG","README.md","docs/parsers/jar_manifest.md","jc/__init__.py","jc/parsers/jar_manifest.py","man/jc.1","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/jar_manifest.md","lines_changed":104},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/parsers/jar_manifest.py","lines_changed":12},{"name":"man/jc.1","lines_changed":7},{"name":"setup.py","lines_changed":2}]},"message":"doc update","epoch":1641150052,"epoch_utc":null},{"commit":"b128d9109cbdb1176f2473d450023bb0be02531b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 10:51:02 2022 -0800","stats":{"files_changed":1,"insertions":46,"deletions":0,"files":["tests/test_jar_manifest.py"],"file_stats":[{"name":"tests/test_jar_manifest.py","lines_changed":46}]},"message":"add MANIFEST.MF tests","epoch":1641149462,"epoch_utc":null},{"commit":"929d7273a422c2bd5b83e5e19d32630f1a027f75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jan 2 10:29:56 2022 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/jar_manifest.py"],"file_stats":[{"name":"jc/parsers/jar_manifest.py","lines_changed":8}]},"message":"doc updates","epoch":1641148196,"epoch_utc":null},{"commit":"2a40f842743a8745d651b4b6cae645045e6c6aab","author":"shaik","author_email":"shai.kustin@torq.io","date":"Sun Jan 2 17:11:20 2022 +0200","stats":{"files_changed":4,"insertions":22,"deletions":1,"files":["jc/parsers/csv.py","tests/fixtures/generic/csv-doubleqouted.csv","tests/fixtures/generic/csv-doubleqouted.json","tests/test_csv.py"],"file_stats":[{"name":"jc/parsers/csv.py","lines_changed":4},{"name":"tests/fixtures/generic/csv-doubleqouted.csv","lines_changed":3},{"name":"tests/fixtures/generic/csv-doubleqouted.json","lines_changed":4},{"name":"tests/test_csv.py","lines_changed":12}]},"message":"fix doubleqoute in csv","epoch":1641172280,"epoch_utc":null},{"commit":"9ff6fa818f0857321e4b3b089d288997f2ae27af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jan 1 10:08:40 2022 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add jar-manifest","epoch":1641060520,"epoch_utc":null},{"commit":"dac73a4bfe24e36474fdf6ff60c23e784ca409bd","merge":"d789554 f733100","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jan 1 10:06:46 2022 -0800","message":"Merge pull request #189 from kellyjonbrazil/master\n\nuse github releases instead of packaging site","epoch":1641060406,"epoch_utc":null},{"commit":"d7895547f74744e82317eabe4c870115701872be","merge":"f8e09ae b7d439c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jan 1 10:04:47 2022 -0800","message":"Merge pull request #188 from listuser/new_branch\n\nCreate key value pairs from a MANIFEST.MF file, to include key multiline value pairs.","epoch":1641060287,"epoch_utc":null},{"commit":"b7d439cb870e443e4f4e4a2137ab170835e77eff","author":"listuser","author_email":null,"date":"Fri Dec 31 12:15:50 2021 -0800","stats":{"files_changed":3,"insertions":2220,"deletions":9,"files":["jc/parsers/{jar-manifest.py => jar_manifest.py}","tests/fixtures/rhel-8/MANIFEST.MF.MULTI.json","tests/fixtures/rhel-8/MANIFEST.MF.MULTI.out"],"file_stats":[{"name":"jc/parsers/{jar-manifest.py => jar_manifest.py}","lines_changed":18},{"name":"tests/fixtures/rhel-8/MANIFEST.MF.MULTI.json","lines_changed":1},{"name":"tests/fixtures/rhel-8/MANIFEST.MF.MULTI.out","lines_changed":2210}]},"message":"Renamed jar-manifest.py to jar_manifest.py, added multi manifest outputs to tests...","epoch":1640981750,"epoch_utc":null},{"commit":"7cc903a5f5ca368be97babadc72689375567a901","author":"listuser","author_email":null,"date":"Thu Dec 30 15:10:53 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/jar-manifest.py"],"file_stats":[{"name":"jc/parsers/jar-manifest.py","lines_changed":3}]},"message":"Removed inflating from examples in jar-manifest.py","epoch":1640905853,"epoch_utc":null},{"commit":"c495a8291bd3e1fd070ee2e018b9b550f9c86314","author":"listuser","author_email":null,"date":"Thu Dec 30 15:06:06 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":292,"files":["tests/fixtures/rhel-8/MANIFEST.MF.json"],"file_stats":[{"name":"tests/fixtures/rhel-8/MANIFEST.MF.json","lines_changed":293}]},"message":"Updated test output in MANIFEST.MF.json","epoch":1640905566,"epoch_utc":null},{"commit":"5e1d7d777c627fb17feda6e51d9640bbd0f03302","author":"listuser","author_email":null,"date":"Thu Dec 30 15:02:48 2021 -0800","stats":{"files_changed":8,"insertions":304,"deletions":2544,"files":["jc/parsers/{metamf.py => jar-manifest.py}","tests/fixtures/rhel-8/MANIFEST.MF.json",".../rhel-8/{MANIFEST.MF => MANIFEST.MF.out}",".../rhel-8/cmds_used_to_generate_test_data.txt",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out"],"file_stats":[{"name":"jc/parsers/{metamf.py => jar-manifest.py}","lines_changed":34},{"name":"tests/fixtures/rhel-8/MANIFEST.MF.json","lines_changed":293},{"name":".../rhel-8/{MANIFEST.MF => MANIFEST.MF.out}","lines_changed":0},{"name":".../rhel-8/cmds_used_to_generate_test_data.txt","lines_changed":14},{"name":".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json","lines_changed":1},{"name":".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out","lines_changed":2210},{"name":".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json","lines_changed":1},{"name":".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out","lines_changed":295}]},"message":"Renamed metamf.py to jar-manifest.py, plus other changes","epoch":1640905368,"epoch_utc":null},{"commit":"7edad3f676fe5560017ca9cb05ede6f46787e78f","author":"listuser","author_email":null,"date":"Wed Dec 29 12:15:15 2021 -0800","stats":{"files_changed":8,"insertions":3042,"deletions":0,"files":["jc/parsers/metamf.py","tests/fixtures/rhel-8/MANIFEST.MF","tests/fixtures/rhel-8/MANIFEST.MF.json",".../rhel-8/cmds_used_to_generate_test_data.txt",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out"],"file_stats":[{"name":"jc/parsers/metamf.py","lines_changed":228},{"name":"tests/fixtures/rhel-8/MANIFEST.MF","lines_changed":292},{"name":"tests/fixtures/rhel-8/MANIFEST.MF.json","lines_changed":1},{"name":".../rhel-8/cmds_used_to_generate_test_data.txt","lines_changed":14},{"name":".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json","lines_changed":1},{"name":".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out","lines_changed":2210},{"name":".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json","lines_changed":1},{"name":".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out","lines_changed":295}]},"message":"Create key value pairs from a MANIFEST.MF file, to include key multiline value pairs.","epoch":1640808915,"epoch_utc":null},{"commit":"f7331001d4ab976e311458a16b6e5337da2e3aab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 23 11:35:39 2021 -0800","stats":{"files_changed":3,"insertions":9,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":5},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":5}]},"message":"use github releases instead of packaging site","epoch":1640288139,"epoch_utc":null},{"commit":"f8e09ae2ffe185d21305d566fad20f510df9890f","merge":"2e4f5a5 433c7cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 15:46:39 2021 -0600","message":"Merge pull request #187 from kellyjonbrazil/master\n\nsync to dev","epoch":1640130399,"epoch_utc":null},{"commit":"433c7cc0f05e321ffe024845a908f3e856d4cd2b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 13:42:24 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/zipinfo.md","jc/parsers/zipinfo.py"],"file_stats":[{"name":"docs/parsers/zipinfo.md","lines_changed":1},{"name":"jc/parsers/zipinfo.py","lines_changed":1}]},"message":"formatting","epoch":1640122944,"epoch_utc":null},{"commit":"d753e71a7452310d45fa605a2e4c70320ed60dbb","merge":"3ac8d03 2e4f5a5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 15:21:18 2021 -0600","message":"Merge pull request #186 from kellyjonbrazil/dev\n\nDev v1.17.5","epoch":1640128878,"epoch_utc":null},{"commit":"2e4f5a508b6c90f9e03dcbcf64efc0e2fc446666","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 12:19:17 2021 -0800","stats":{"files_changed":4,"insertions":6,"deletions":3,"files":["CHANGELOG","jc/__init__.py","man/jc.1","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1640117957,"epoch_utc":null},{"commit":"88b960eff6cb3739d0d243c8d8b3e8ad5b8eb97c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 12:14:20 2021 -0800","stats":{"files_changed":4,"insertions":144,"deletions":1,"files":["EXAMPLES.md","README.md","docs/parsers/zipinfo.md","man/jc.1"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":31},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/zipinfo.md","lines_changed":106},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update","epoch":1640117660,"epoch_utc":null},{"commit":"88c77bd89e2c2a5f023e6638816c9153b6276d35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 12:08:16 2021 -0800","stats":{"files_changed":2,"insertions":47,"deletions":0,"files":["tests/fixtures/osx-10.14.6/zipinfo-multi.json","tests/test_zipinfo.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/zipinfo-multi.json","lines_changed":1},{"name":"tests/test_zipinfo.py","lines_changed":46}]},"message":"add zipinfo tests","epoch":1640117296,"epoch_utc":null},{"commit":"51a7a4251fff518d8da78ffa41e7ba2e2cb47f12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 11:11:56 2021 -0800","stats":{"files_changed":1,"insertions":24,"deletions":0,"files":["tests/fixtures/osx-10.14.6/zipinfo-multi.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/zipinfo-multi.out","lines_changed":24}]},"message":"add multi-archive test output","epoch":1640113916,"epoch_utc":null},{"commit":"51d2f316f388d962c26aeb4f42affebec339e5a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 11:11:44 2021 -0800","stats":{"files_changed":1,"insertions":97,"deletions":72,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":169}]},"message":"add multi-archive support","epoch":1640113904,"epoch_utc":null},{"commit":"ff78a46c4854339a097992701351ef471aff1671","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 08:13:17 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"add zipinfo parser","epoch":1640103197,"epoch_utc":null},{"commit":"ed4a9dc1d470f64bcc9de35b2d98568ffd50257d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 08:13:00 2021 -0800","stats":{"files_changed":1,"insertions":21,"deletions":23,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":44}]},"message":"formatting","epoch":1640103180,"epoch_utc":null},{"commit":"63182dba26040974cb8cada6f5910bb29b1fa3ed","merge":"b450697 9c1eaa9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 21 10:08:46 2021 -0600","message":"Merge pull request #185 from listuser/new_branch\n\ncontributed zipinfo parser","epoch":1640110126,"epoch_utc":null},{"commit":"9c1eaa938934269fe4179da798acf5f119cde0cf","author":"Matt J","author_email":"none","date":"Mon Dec 20 21:53:34 2021 -0800","stats":{"files_changed":2,"insertions":68,"deletions":61,"files":["jc/parsers/zipinfo.py","tests/fixtures/rhel-8/zipinfo.json"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":127},{"name":"tests/fixtures/rhel-8/zipinfo.json","lines_changed":2}]},"message":"revised zipinfo.py nested version","epoch":1640066014,"epoch_utc":null},{"commit":"bc520fcbcdfad6a53e51944391fd24512bed8128","author":"Matt J","author_email":"none","date":"Mon Dec 20 14:29:50 2021 -0800","stats":{"files_changed":2,"insertions":63,"deletions":53,"files":["jc/parsers/zipinfo.py","tests/fixtures/rhel-8/zipinfo.json"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":114},{"name":"tests/fixtures/rhel-8/zipinfo.json","lines_changed":2}]},"message":"added zipinfo.py nested version","epoch":1640039390,"epoch_utc":null},{"commit":"46faac1a12a5b39d6a25427f6e8fdcca1204dbcd","author":"Matt J","author_email":"none","date":"Sun Dec 19 17:44:56 2021 -0800","stats":{"files_changed":2,"insertions":1222,"deletions":0,"files":["tests/fixtures/rhel-8/zipinfo.json","tests/fixtures/rhel-8/zipinfo.out"],"file_stats":[{"name":"tests/fixtures/rhel-8/zipinfo.json","lines_changed":1},{"name":"tests/fixtures/rhel-8/zipinfo.out","lines_changed":1221}]},"message":"add test data zipinfo.json and zipinfo.out","epoch":1639964696,"epoch_utc":null},{"commit":"3c424c0cb3cff462a963183585b57bea004e974f","author":"Matt J","author_email":"none","date":"Sun Dec 19 14:05:48 2021 -0800","stats":{"files_changed":1,"insertions":165,"deletions":0,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":165}]},"message":"initial commit zipinfo.py to new_branch","epoch":1639951548,"epoch_utc":null},{"commit":"3ac8d0362b4fb9999fc55a60a9cb20ac80d114f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 16 07:04:35 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"use quotes around python versions","epoch":1639667075,"epoch_utc":null},{"commit":"d88b998e6c7826a9ecae18663328e2d2915030fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 9 10:58:06 2021 -0800","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":8},{"name":"jc/parsers/csv_s.py","lines_changed":8}]},"message":"formatting","epoch":1639076286,"epoch_utc":null},{"commit":"a9ed55c00652a563391a7930c7a4649967131ae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 9 10:54:04 2021 -0800","stats":{"files_changed":11,"insertions":11,"deletions":11,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]},"message":"fix spelling","epoch":1639076044,"epoch_utc":null},{"commit":"ea614341232e5272ee0c7fd46ba0f313033c761f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 9 10:21:37 2021 -0800","stats":{"files_changed":4,"insertions":16,"deletions":8,"files":["docs/parsers/crontab.md","docs/parsers/crontab_u.md","jc/parsers/crontab.py","jc/parsers/crontab_u.py"],"file_stats":[{"name":"docs/parsers/crontab.md","lines_changed":6},{"name":"docs/parsers/crontab_u.md","lines_changed":6},{"name":"jc/parsers/crontab.py","lines_changed":6},{"name":"jc/parsers/crontab_u.py","lines_changed":6}]},"message":"fix schema docs","epoch":1639074097,"epoch_utc":null},{"commit":"a73d0d26cbe2860b8374661068e09e0717a3bab2","merge":"a7de911 b450697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 20:49:01 2021 -0800","message":"Merge pull request #184 from kellyjonbrazil/dev\n\nDev 1.17.4","epoch":1639025341,"epoch_utc":null},{"commit":"b4506976e3c865397bc657183d49c484d8bcfd7a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 11:21:12 2021 -0800","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":8},{"name":"templates/manpage_template","lines_changed":6}]},"message":"formatting","epoch":1638991272,"epoch_utc":null},{"commit":"34cb75a09697a06c3878f2f9a84eb3bd2a90ae62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:46:00 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/__init__.py","setup.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1638981960,"epoch_utc":null},{"commit":"34df643f60712ae25645cb7cddff80e43c12262b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:35:09 2021 -0800","stats":{"files_changed":4,"insertions":18,"deletions":0,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"man/jc.1","lines_changed":6},{"name":"templates/manpage_template","lines_changed":6},{"name":"templates/readme_template","lines_changed":3}]},"message":"add disable colors section","epoch":1638981309,"epoch_utc":null},{"commit":"ac7c13fcc013d386f34db51d634298fa3e97eccd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:22:28 2021 -0800","stats":{"files_changed":4,"insertions":11,"deletions":1,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"man/jc.1","lines_changed":6},{"name":"templates/manpage_template","lines_changed":4},{"name":"templates/readme_template","lines_changed":1}]},"message":"add -C option to docs","epoch":1638980548,"epoch_utc":null},{"commit":"4fdb34c7d5fcaa65e2ccab814c3acf2f0f70c442","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:19:43 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"add no-color.org","epoch":1638980383,"epoch_utc":null},{"commit":"7ac468e35aac1a63c4e22f33aead74a6e41a22a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:14:36 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"changelog update","epoch":1638980076,"epoch_utc":null},{"commit":"df190aa299f1669d1fe09380026ae086839abc02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 8 08:14:28 2021 -0800","stats":{"files_changed":1,"insertions":15,"deletions":7,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":22}]},"message":"add -C option to force color even with pipes","epoch":1638980068,"epoch_utc":null},{"commit":"9621475e86fe20fcdc2902b6ce7860a833ae2ca0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 7 15:46:02 2021 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"changelog update","epoch":1638920762,"epoch_utc":null},{"commit":"82e0160de820ad2ed6143f58458711d600b929a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 7 15:45:11 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"refactor NO_COLOR test","epoch":1638920711,"epoch_utc":null},{"commit":"d03fb8b626a97e81006d0b108c8f400fe4e2ce3b","merge":"b300dfb 7933dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 7 15:34:23 2021 -0800","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev","epoch":1638920063,"epoch_utc":null},{"commit":"b300dfb3d75fe76e2ddbb087ff742dd0b5e6155b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 7 15:34:20 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"Add support for NO_COLOR env variable","epoch":1638920060,"epoch_utc":null},{"commit":"a7de9111d97e687cafbc0709ec3ff7453d658a80","merge":"21e69a7 7933dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 16:37:46 2021 -0800","message":"Merge pull request #183 from kellyjonbrazil/dev\n\nDev v1.17.3","epoch":1638491866,"epoch_utc":null},{"commit":"7933dfdbe7bf400833d6f6b771362dfc518b9a8d","merge":"f7cb5f7 21e69a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 16:34:06 2021 -0800","message":"Merge branch 'master' into dev","epoch":1638491646,"epoch_utc":null},{"commit":"f7cb5f7d01ac01538bee4da816408072b585768e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 16:30:47 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"update date","epoch":1638491447,"epoch_utc":null},{"commit":"a26a298f1a3c141171e7d7ce459a27a297cec031","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 11:42:56 2021 -0800","stats":{"files_changed":4,"insertions":148,"deletions":1,"files":["README.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/iostat.md","lines_changed":15},{"name":"docs/parsers/iostat_s.md","lines_changed":126},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update","epoch":1638474176,"epoch_utc":null},{"commit":"dbd134d0dac2fc152183480958fd9e65919ac98d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 11:40:47 2021 -0800","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat_s.py","lines_changed":6}]},"message":"add examples to docs","epoch":1638474047,"epoch_utc":null},{"commit":"11aa01b0d9d6913059f98f9bd7591d7cad9037cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 11:38:00 2021 -0800","stats":{"files_changed":15,"insertions":15,"deletions":1,"files":["jc/parsers/iostat_s.py","tests/fixtures/centos-7.7/iostat-1-streaming.json","tests/fixtures/centos-7.7/iostat-m-streaming.json","tests/fixtures/centos-7.7/iostat-mx-streaming.json","tests/fixtures/centos-7.7/iostat-streaming.json","tests/fixtures/centos-7.7/iostat-x-streaming.json","tests/fixtures/ubuntu-18.04/iostat-1-streaming.json","tests/fixtures/ubuntu-18.04/iostat-m-streaming.json","tests/fixtures/ubuntu-18.04/iostat-mx-streaming.json","tests/fixtures/ubuntu-18.04/iostat-streaming.json","tests/fixtures/ubuntu-18.04/iostat-x-streaming.json","tests/fixtures/ubuntu-20.10/iostat-m-streaming.json","tests/fixtures/ubuntu-20.10/iostat-mx-streaming.json","tests/fixtures/ubuntu-20.10/iostat-streaming.json","tests/fixtures/ubuntu-20.10/iostat-x-streaming.json"],"file_stats":[{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iostat-1-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-m-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-mx-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-x-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-1-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-m-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-mx-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-x-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-m-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-mx-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-x-streaming.json","lines_changed":1}]},"message":"iostat-s tests","epoch":1638473880,"epoch_utc":null},{"commit":"6f18e5344356684e845ec63158c570d82156254f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 11:37:52 2021 -0800","stats":{"files_changed":1,"insertions":203,"deletions":0,"files":["tests/test_iostat_s.py"],"file_stats":[{"name":"tests/test_iostat_s.py","lines_changed":203}]},"message":"fix for null lines","epoch":1638473872,"epoch_utc":null},{"commit":"7b467c466568ad4e7986d4d7cf3ec606681b6d46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 09:30:16 2021 -0800","stats":{"files_changed":9,"insertions":137,"deletions":0,"files":["tests/fixtures/ubuntu-20.10/iostat-m.json","tests/fixtures/ubuntu-20.10/iostat-m.out","tests/fixtures/ubuntu-20.10/iostat-mx.json","tests/fixtures/ubuntu-20.10/iostat-mx.out","tests/fixtures/ubuntu-20.10/iostat-x.json","tests/fixtures/ubuntu-20.10/iostat-x.out","tests/fixtures/ubuntu-20.10/iostat.json","tests/fixtures/ubuntu-20.10/iostat.out","tests/test_iostat.py"],"file_stats":[{"name":"tests/fixtures/ubuntu-20.10/iostat-m.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-m.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-20.10/iostat-mx.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-mx.out","lines_changed":22},{"name":"tests/fixtures/ubuntu-20.10/iostat-x.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-x.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-20.10/iostat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat.out","lines_changed":22},{"name":"tests/test_iostat.py","lines_changed":47}]},"message":"add ubuntu 20.10 tests","epoch":1638466216,"epoch_utc":null},{"commit":"537b8f263087894c02b5b7c121765cf96182a370","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 09:14:43 2021 -0800","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":4},{"name":"jc/parsers/iostat_s.py","lines_changed":4}]},"message":"add more int conversions","epoch":1638465283,"epoch_utc":null},{"commit":"4d823575e791999e200dedd491511c4fde64fc2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 08:47:25 2021 -0800","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":4},{"name":"jc/parsers/iostat_s.py","lines_changed":4}]},"message":"add more float fields","epoch":1638463645,"epoch_utc":null},{"commit":"541aa1d09f20ff6979eabaa66790decb3895f18d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 08:41:36 2021 -0800","stats":{"files_changed":2,"insertions":68,"deletions":8,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":15},{"name":"jc/parsers/iostat_s.py","lines_changed":61}]},"message":"Add new field float conversions for iostat v11","epoch":1638463296,"epoch_utc":null},{"commit":"8f02021014b7b19acf1a8bbd777161aa82c65d66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 2 05:54:38 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat_s.py","lines_changed":1}]},"message":"formatting","epoch":1638453278,"epoch_utc":null},{"commit":"158a15157c7e5dde95dc21766d0696bd82486688","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:47:17 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"changelog update","epoch":1638406037,"epoch_utc":null},{"commit":"2752e0d66a9ba0b57ac86913fd302ada23c280c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:47:09 2021 -0800","stats":{"files_changed":2,"insertions":166,"deletions":0,"files":["jc/cli.py","jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/iostat_s.py","lines_changed":165}]},"message":"add iostat streaming parser","epoch":1638406029,"epoch_utc":null},{"commit":"6c11e912afe3c4d16da9199b5c2fc10461928ac3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:14:22 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"update changelog","epoch":1638404062,"epoch_utc":null},{"commit":"43d34461e27e3e4ac5f985786831c170b348c7c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:12:51 2021 -0800","stats":{"files_changed":83,"insertions":279,"deletions":81,"files":["README.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/utils.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/dpkg_l.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/finger.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/gshadow.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iostat.md","lines_changed":172},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":22},{"name":"man/jc.1","lines_changed":7}]},"message":"update docs","epoch":1638403971,"epoch_utc":null},{"commit":"4dfdc9b0f65d8c950ed74545d0cc3f95c8abec6c","merge":"e2311cb 6665ffa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:02:10 2021 -0800","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev","epoch":1638403330,"epoch_utc":null},{"commit":"e2311cbb03f407414df953c8d1c07d0cf1a549ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:02:06 2021 -0800","stats":{"files_changed":21,"insertions":400,"deletions":0,"files":["tests/fixtures/centos-7.7/iostat-1.json","tests/fixtures/centos-7.7/iostat-1.out","tests/fixtures/centos-7.7/iostat-m.json","tests/fixtures/centos-7.7/iostat-m.out","tests/fixtures/centos-7.7/iostat-mx.json","tests/fixtures/centos-7.7/iostat-mx.out","tests/fixtures/centos-7.7/iostat-x.json","tests/fixtures/centos-7.7/iostat-x.out","tests/fixtures/centos-7.7/iostat.json","tests/fixtures/centos-7.7/iostat.out","tests/fixtures/ubuntu-18.04/iostat-1.json","tests/fixtures/ubuntu-18.04/iostat-1.out","tests/fixtures/ubuntu-18.04/iostat-m.json","tests/fixtures/ubuntu-18.04/iostat-m.out","tests/fixtures/ubuntu-18.04/iostat-mx.json","tests/fixtures/ubuntu-18.04/iostat-mx.out","tests/fixtures/ubuntu-18.04/iostat-x.json","tests/fixtures/ubuntu-18.04/iostat-x.out","tests/fixtures/ubuntu-18.04/iostat.json","tests/fixtures/ubuntu-18.04/iostat.out","tests/test_iostat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/iostat-1.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-1.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/iostat-m.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-m.out","lines_changed":10},{"name":"tests/fixtures/centos-7.7/iostat-mx.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-mx.out","lines_changed":9},{"name":"tests/fixtures/centos-7.7/iostat-x.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-x.out","lines_changed":10},{"name":"tests/fixtures/centos-7.7/iostat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat.out","lines_changed":9},{"name":"tests/fixtures/ubuntu-18.04/iostat-1.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-1.out","lines_changed":77},{"name":"tests/fixtures/ubuntu-18.04/iostat-m.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-m.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-18.04/iostat-mx.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-mx.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/iostat-x.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-x.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/iostat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat.out","lines_changed":27},{"name":"tests/test_iostat.py","lines_changed":143}]},"message":"add iostat tests","epoch":1638403326,"epoch_utc":null},{"commit":"bf15575e90985cfec5c57dd11dfa2b86d53a41be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 16:01:52 2021 -0800","stats":{"files_changed":1,"insertions":14,"deletions":7,"files":["jc/parsers/iostat.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":21}]},"message":"fixes for ubunut","epoch":1638403312,"epoch_utc":null},{"commit":"406336c7185b539b5e00532b58146d5b1b73f259","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 13:53:31 2021 -0800","stats":{"files_changed":1,"insertions":44,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":44}]},"message":"add iostat example","epoch":1638395611,"epoch_utc":null},{"commit":"6665ffaeb8107e9db3b917db0663beaf44024533","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 10:59:07 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"remove python 3.6 from tests","epoch":1638385147,"epoch_utc":null},{"commit":"dcf552ca0c69aa5f0309a83dc33dee7c5ed81292","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 1 10:34:55 2021 -0800","stats":{"files_changed":1,"insertions":138,"deletions":47,"files":["jc/parsers/iostat.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":185}]},"message":"add _process and cleanup","epoch":1638383695,"epoch_utc":null},{"commit":"7a6ebf3c9555dd82df7dc0b71981cdd32ce0061d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 16:54:32 2021 -0800","stats":{"files_changed":2,"insertions":171,"deletions":0,"files":["jc/cli.py","jc/parsers/iostat.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/iostat.py","lines_changed":170}]},"message":"add iostat parser","epoch":1638320072,"epoch_utc":null},{"commit":"d2dc4a983c86c538e13e568b908072de4ca0daaf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 11:59:26 2021 -0800","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"changelog update","epoch":1638302366,"epoch_utc":null},{"commit":"1168259bc23862f671326d41f5282a3575205214","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 11:57:04 2021 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":3}]},"message":"add doc strings","epoch":1638302224,"epoch_utc":null},{"commit":"e8e4b46021557fbf5776c32dff46de022817fb6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 11:49:40 2021 -0800","stats":{"files_changed":5,"insertions":14,"deletions":19,"files":["jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":5},{"name":"jc/parsers/foo_s.py","lines_changed":7},{"name":"jc/parsers/ls_s.py","lines_changed":7},{"name":"jc/parsers/ping_s.py","lines_changed":7},{"name":"jc/parsers/vmstat_s.py","lines_changed":7}]},"message":"use jc.utils type checks","epoch":1638301780,"epoch_utc":null},{"commit":"12d2de22821fd8f57f4d412e62f53db3d89d5e30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 11:43:06 2021 -0800","stats":{"files_changed":77,"insertions":181,"deletions":165,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":4},{"name":"jc/parsers/airport.py","lines_changed":4},{"name":"jc/parsers/airport_s.py","lines_changed":4},{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/blkid.py","lines_changed":4},{"name":"jc/parsers/cksum.py","lines_changed":4},{"name":"jc/parsers/crontab.py","lines_changed":4},{"name":"jc/parsers/crontab_u.py","lines_changed":4},{"name":"jc/parsers/csv.py","lines_changed":4},{"name":"jc/parsers/date.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":5},{"name":"jc/parsers/dir.py","lines_changed":4},{"name":"jc/parsers/dmidecode.py","lines_changed":4},{"name":"jc/parsers/dpkg_l.py","lines_changed":4},{"name":"jc/parsers/du.py","lines_changed":4},{"name":"jc/parsers/env.py","lines_changed":4},{"name":"jc/parsers/file.py","lines_changed":4},{"name":"jc/parsers/finger.py","lines_changed":4},{"name":"jc/parsers/foo.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":4},{"name":"jc/parsers/fstab.py","lines_changed":4},{"name":"jc/parsers/group.py","lines_changed":4},{"name":"jc/parsers/gshadow.py","lines_changed":4},{"name":"jc/parsers/hash.py","lines_changed":4},{"name":"jc/parsers/hashsum.py","lines_changed":4},{"name":"jc/parsers/hciconfig.py","lines_changed":4},{"name":"jc/parsers/history.py","lines_changed":4},{"name":"jc/parsers/hosts.py","lines_changed":4},{"name":"jc/parsers/id.py","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":4},{"name":"jc/parsers/ini.py","lines_changed":4},{"name":"jc/parsers/iptables.py","lines_changed":4},{"name":"jc/parsers/iw_scan.py","lines_changed":4},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/last.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4},{"name":"jc/parsers/lsblk.py","lines_changed":4},{"name":"jc/parsers/lsmod.py","lines_changed":4},{"name":"jc/parsers/lsof.py","lines_changed":4},{"name":"jc/parsers/lsusb.py","lines_changed":4},{"name":"jc/parsers/mount.py","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":4},{"name":"jc/parsers/ntpq.py","lines_changed":4},{"name":"jc/parsers/passwd.py","lines_changed":4},{"name":"jc/parsers/ping.py","lines_changed":4},{"name":"jc/parsers/pip_list.py","lines_changed":4},{"name":"jc/parsers/pip_show.py","lines_changed":4},{"name":"jc/parsers/ps.py","lines_changed":4},{"name":"jc/parsers/route.py","lines_changed":4},{"name":"jc/parsers/rpm_qi.py","lines_changed":4},{"name":"jc/parsers/sfdisk.py","lines_changed":4},{"name":"jc/parsers/shadow.py","lines_changed":4},{"name":"jc/parsers/ss.py","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"jc/parsers/sysctl.py","lines_changed":4},{"name":"jc/parsers/systemctl.py","lines_changed":4},{"name":"jc/parsers/systemctl_lj.py","lines_changed":4},{"name":"jc/parsers/systemctl_ls.py","lines_changed":4},{"name":"jc/parsers/systemctl_luf.py","lines_changed":4},{"name":"jc/parsers/systeminfo.py","lines_changed":4},{"name":"jc/parsers/time.py","lines_changed":4},{"name":"jc/parsers/timedatectl.py","lines_changed":4},{"name":"jc/parsers/tracepath.py","lines_changed":4},{"name":"jc/parsers/traceroute.py","lines_changed":4},{"name":"jc/parsers/ufw.py","lines_changed":4},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":4},{"name":"jc/parsers/uname.py","lines_changed":4},{"name":"jc/parsers/upower.py","lines_changed":4},{"name":"jc/parsers/uptime.py","lines_changed":4},{"name":"jc/parsers/vmstat.py","lines_changed":4},{"name":"jc/parsers/w.py","lines_changed":4},{"name":"jc/parsers/wc.py","lines_changed":4},{"name":"jc/parsers/who.py","lines_changed":4},{"name":"jc/parsers/xml.py","lines_changed":4},{"name":"jc/parsers/yaml.py","lines_changed":4},{"name":"jc/utils.py","lines_changed":40}]},"message":"use jc.utils.input_type_check() and simplify compatibility check","epoch":1638301386,"epoch_utc":null},{"commit":"0e2fe401e1c49a9f947d7d17b72cfc4e90787f47","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 10:08:27 2021 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]},"message":"version bump","epoch":1638295707,"epoch_utc":null},{"commit":"14247adb0ae007924ca551a706eb0cfdbae97a41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 10:03:59 2021 -0800","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["jc/parsers/csv_s.py","tests/test_csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":7},{"name":"tests/test_csv_s.py","lines_changed":2}]},"message":"add input type checks","epoch":1638295439,"epoch_utc":null},{"commit":"3a9f0934c41c85ea7fa87165b9559f08814645cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 09:56:33 2021 -0800","stats":{"files_changed":2,"insertions":5,"deletions":3,"files":["jc/parsers/ls_s.py","tests/test_ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":6},{"name":"tests/test_ls_s.py","lines_changed":2}]},"message":"add input type checks","epoch":1638294993,"epoch_utc":null},{"commit":"caf0a5c8713bf0d72951a2c6fd5a2c62c9eb59d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 09:51:27 2021 -0800","stats":{"files_changed":2,"insertions":7,"deletions":4,"files":["jc/parsers/vmstat_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":9},{"name":"tests/test_vmstat_s.py","lines_changed":2}]},"message":"add input type checking","epoch":1638294687,"epoch_utc":null},{"commit":"cfb58b1cf3e3028f8e03fdd93f0165cf8d230e1e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 09:41:16 2021 -0800","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":8}]},"message":"add input type checks","epoch":1638294076,"epoch_utc":null},{"commit":"975cf195cc02774f50460ca479d9ebb7b73c7870","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 09:40:49 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":1}]},"message":"formatting","epoch":1638294049,"epoch_utc":null},{"commit":"8a46a259a36efc55bb0b2141acb9dd5ae52b7725","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 30 09:19:51 2021 -0800","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["jc/parsers/ping_s.py","tests/test_ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":8},{"name":"tests/test_ping_s.py","lines_changed":2}]},"message":"add input type checks","epoch":1638292791,"epoch_utc":null},{"commit":"e395142e599aa78b4a7ec80dcc3f8ccf279f97b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 29 16:45:22 2021 -0800","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1638233122,"epoch_utc":null},{"commit":"caaeaf0d67cf44f8d2651cc53a7528d3ef0c74d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 29 16:29:23 2021 -0800","stats":{"files_changed":76,"insertions":227,"deletions":227,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":6},{"name":"jc/parsers/airport.py","lines_changed":6},{"name":"jc/parsers/airport_s.py","lines_changed":6},{"name":"jc/parsers/arp.py","lines_changed":6},{"name":"jc/parsers/blkid.py","lines_changed":6},{"name":"jc/parsers/cksum.py","lines_changed":6},{"name":"jc/parsers/crontab.py","lines_changed":6},{"name":"jc/parsers/crontab_u.py","lines_changed":6},{"name":"jc/parsers/csv.py","lines_changed":6},{"name":"jc/parsers/date.py","lines_changed":6},{"name":"jc/parsers/df.py","lines_changed":6},{"name":"jc/parsers/dig.py","lines_changed":6},{"name":"jc/parsers/dir.py","lines_changed":6},{"name":"jc/parsers/dmidecode.py","lines_changed":6},{"name":"jc/parsers/dpkg_l.py","lines_changed":6},{"name":"jc/parsers/du.py","lines_changed":6},{"name":"jc/parsers/env.py","lines_changed":6},{"name":"jc/parsers/file.py","lines_changed":6},{"name":"jc/parsers/finger.py","lines_changed":6},{"name":"jc/parsers/foo.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":6},{"name":"jc/parsers/fstab.py","lines_changed":6},{"name":"jc/parsers/group.py","lines_changed":6},{"name":"jc/parsers/gshadow.py","lines_changed":6},{"name":"jc/parsers/hash.py","lines_changed":6},{"name":"jc/parsers/hashsum.py","lines_changed":6},{"name":"jc/parsers/hciconfig.py","lines_changed":6},{"name":"jc/parsers/history.py","lines_changed":6},{"name":"jc/parsers/hosts.py","lines_changed":6},{"name":"jc/parsers/id.py","lines_changed":6},{"name":"jc/parsers/ifconfig.py","lines_changed":6},{"name":"jc/parsers/ini.py","lines_changed":6},{"name":"jc/parsers/iptables.py","lines_changed":6},{"name":"jc/parsers/iw_scan.py","lines_changed":6},{"name":"jc/parsers/jobs.py","lines_changed":6},{"name":"jc/parsers/last.py","lines_changed":6},{"name":"jc/parsers/ls.py","lines_changed":6},{"name":"jc/parsers/lsblk.py","lines_changed":6},{"name":"jc/parsers/lsmod.py","lines_changed":6},{"name":"jc/parsers/lsof.py","lines_changed":6},{"name":"jc/parsers/lsusb.py","lines_changed":6},{"name":"jc/parsers/mount.py","lines_changed":6},{"name":"jc/parsers/netstat.py","lines_changed":6},{"name":"jc/parsers/ntpq.py","lines_changed":6},{"name":"jc/parsers/passwd.py","lines_changed":6},{"name":"jc/parsers/ping.py","lines_changed":6},{"name":"jc/parsers/pip_list.py","lines_changed":6},{"name":"jc/parsers/pip_show.py","lines_changed":6},{"name":"jc/parsers/ps.py","lines_changed":6},{"name":"jc/parsers/route.py","lines_changed":6},{"name":"jc/parsers/rpm_qi.py","lines_changed":6},{"name":"jc/parsers/sfdisk.py","lines_changed":6},{"name":"jc/parsers/shadow.py","lines_changed":6},{"name":"jc/parsers/ss.py","lines_changed":6},{"name":"jc/parsers/stat.py","lines_changed":6},{"name":"jc/parsers/sysctl.py","lines_changed":6},{"name":"jc/parsers/systemctl.py","lines_changed":6},{"name":"jc/parsers/systemctl_lj.py","lines_changed":6},{"name":"jc/parsers/systemctl_ls.py","lines_changed":6},{"name":"jc/parsers/systemctl_luf.py","lines_changed":6},{"name":"jc/parsers/systeminfo.py","lines_changed":6},{"name":"jc/parsers/time.py","lines_changed":6},{"name":"jc/parsers/timedatectl.py","lines_changed":6},{"name":"jc/parsers/tracepath.py","lines_changed":6},{"name":"jc/parsers/traceroute.py","lines_changed":6},{"name":"jc/parsers/ufw.py","lines_changed":6},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":6},{"name":"jc/parsers/uname.py","lines_changed":6},{"name":"jc/parsers/upower.py","lines_changed":6},{"name":"jc/parsers/uptime.py","lines_changed":6},{"name":"jc/parsers/vmstat.py","lines_changed":6},{"name":"jc/parsers/w.py","lines_changed":6},{"name":"jc/parsers/wc.py","lines_changed":6},{"name":"jc/parsers/who.py","lines_changed":6},{"name":"jc/parsers/xml.py","lines_changed":6},{"name":"jc/parsers/yaml.py","lines_changed":6}]},"message":"add 'str' type check on input","epoch":1638232163,"epoch_utc":null},{"commit":"21e69a7cbf62240238f6fb78e874dda6ce2e922a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 24 19:33:07 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"],"file_stats":[{"name":".gitignore","lines_changed":1}]},"message":"ignore _config.yml","epoch":1637811187,"epoch_utc":null},{"commit":"603964935b58e02cf0614cf67ffacc6d94755e05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 24 19:30:10 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"remove trailing whitespace","epoch":1637811010,"epoch_utc":null},{"commit":"47eb83ae55b9892716fff712bd2be21b6191b552","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 24 13:32:51 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"],"file_stats":[{"name":".gitignore","lines_changed":1}]},"message":"add .vscode","epoch":1637789571,"epoch_utc":null},{"commit":"fc0ce6c95923ab124961e695a26c0b68dd0f359f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 22 09:45:14 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add streaming parser to custom parsers info","epoch":1637603114,"epoch_utc":null},{"commit":"077a29fb4eedcfccb026498c5c3a64b7b7601363","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 22 09:36:58 2021 -0800","stats":{"files_changed":2,"insertions":14,"deletions":2,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":8},{"name":"jc/parsers/csv_s.py","lines_changed":8}]},"message":"add _jc_meta field info","epoch":1637602618,"epoch_utc":null},{"commit":"8568d0d328706a7a5b1476452e078d8cbe7b7391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 22 09:10:11 2021 -0800","stats":{"files_changed":3,"insertions":7,"deletions":3,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":4},{"name":"jc/parsers/csv_s.py","lines_changed":4},{"name":"man/jc.1","lines_changed":2}]},"message":"fix csv_s documentation","epoch":1637601011,"epoch_utc":null},{"commit":"597d39c28ea0c0fe3b072413e9d91ab5e27b62bd","merge":"b59e38c eb888dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 18 06:52:01 2021 -1000","message":"Merge pull request #180 from kellyjonbrazil/dev\n\nDev v1.17.2","epoch":1637247121,"epoch_utc":null},{"commit":"eb888dcbbcf83c9197bd59aab72f65ea6eb622ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 18 08:48:03 2021 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["jc/__init__.py","man/jc.1","setup.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1637254083,"epoch_utc":null},{"commit":"d1b9ac0841b15ee15690c4066453a322618320ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 18 08:41:52 2021 -0800","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/df.md","docs/parsers/netstat.md","docs/parsers/ping.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update","epoch":1637253712,"epoch_utc":null},{"commit":"89a6d9c5c39b74f1b040f410659bfd7ae1a902d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 17 12:03:40 2021 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":5}]},"message":"add key-check to restore previous behavior even with non-df data","epoch":1637179420,"epoch_utc":null},{"commit":"85d983761637129cb85abfb0bbdde7c507061cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 17 11:41:54 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add df info","epoch":1637178114,"epoch_utc":null},{"commit":"cd7731484d826d84d835ecd460d746e78cadc5fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 17 11:26:42 2021 -0800","stats":{"files_changed":4,"insertions":62,"deletions":2,"files":["jc/parsers/df.py","tests/fixtures/generic/df-long-filesystem.json","tests/fixtures/generic/df-long-filesystem.out","tests/test_df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":47},{"name":"tests/fixtures/generic/df-long-filesystem.json","lines_changed":1},{"name":"tests/fixtures/generic/df-long-filesystem.out","lines_changed":4},{"name":"tests/test_df.py","lines_changed":12}]},"message":"fix for cases where the Filesystem data overflows the column length (happens on older versions of df)","epoch":1637177202,"epoch_utc":null},{"commit":"086da16b1743c16a5ccdd102f889fb31f99e3caa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 15 13:05:53 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":2}]},"message":"version bump","epoch":1637010353,"epoch_utc":null},{"commit":"20830528f04a5ecbe78420d8008249b089667767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 15 12:52:43 2021 -0800","stats":{"files_changed":4,"insertions":28,"deletions":0,"files":["CHANGELOG","tests/fixtures/generic/netstat-old.json","tests/fixtures/generic/netstat-old.out","tests/test_netstat.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"tests/fixtures/generic/netstat-old.json","lines_changed":1},{"name":"tests/fixtures/generic/netstat-old.out","lines_changed":14},{"name":"tests/test_netstat.py","lines_changed":12}]},"message":"add test for older netstat version fix","epoch":1637009563,"epoch_utc":null},{"commit":"83371edd8fe3d23dfa92fc707604086522c85ab9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 15 12:25:22 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat_linux.py"],"file_stats":[{"name":"jc/parsers/netstat_linux.py","lines_changed":2}]},"message":"add space before inode to compensate for removed dash","epoch":1637007922,"epoch_utc":null},{"commit":"364a81decc16742e3caa070d90b1d605d96fe2c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 4 10:25:51 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":2}]},"message":"version bump","epoch":1636046751,"epoch_utc":null},{"commit":"ef09592ad3e5c9a77c1bdebe8f876fc4dde54834","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 4 10:21:38 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"update for 1.17.2","epoch":1636046498,"epoch_utc":null},{"commit":"4a86e109ccb254d5195b782f84f3967c96ef726c","merge":"5ba22da 7fa5391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 4 10:18:47 2021 -0700","message":"Merge pull request #179 from shaikustin/ping-alpine-linux\n\nsupport alpine linux ping","epoch":1636046327,"epoch_utc":null},{"commit":"7fa5391b6613e62689c624041e03f9750c9c7972","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 4 10:13:44 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_ping.py"],"file_stats":[{"name":"tests/test_ping.py","lines_changed":2}]},"message":"change alpine ping6 to ping","epoch":1636046024,"epoch_utc":null},{"commit":"9b53ba5714819ff760f2d4546f5d2ee4d521c080","author":"shaik","author_email":"shai.kustin@torq.io","date":"Thu Nov 4 13:42:48 2021 +0200","stats":{"files_changed":6,"insertions":45,"deletions":1,"files":["jc/parsers/ping.py",".../fixtures/alpine-linux-3.13/ping-hostname.json","tests/fixtures/alpine-linux-3.13/ping-hostname.out","tests/fixtures/alpine-linux-3.13/ping-ip.json","tests/fixtures/alpine-linux-3.13/ping-ip.out","tests/test_ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":2},{"name":".../fixtures/alpine-linux-3.13/ping-hostname.json","lines_changed":1},{"name":"tests/fixtures/alpine-linux-3.13/ping-hostname.out","lines_changed":9},{"name":"tests/fixtures/alpine-linux-3.13/ping-ip.json","lines_changed":1},{"name":"tests/fixtures/alpine-linux-3.13/ping-ip.out","lines_changed":6},{"name":"tests/test_ping.py","lines_changed":27}]},"message":"support alpine linux ping","epoch":1636058568,"epoch_utc":null},{"commit":"b59e38cfd2c8a7f5868e05d5562557b1c27e5e56","merge":"30cff5f 5ba22da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 30 14:02:25 2021 -0700","message":"Merge pull request #176 from kellyjonbrazil/dev\n\nDev v1.17.1","epoch":1635627745,"epoch_utc":null},{"commit":"5ba22dae597b9d154ca0a82f71cfbd8d8a6325db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 30 13:57:36 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2}]},"message":"add JSON lines info","epoch":1635627456,"epoch_utc":null},{"commit":"4232e523acc523e510b4881d2a57a95b88ec8c8b","merge":"bee80b3 30cff5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 30 13:49:45 2021 -0700","message":"Merge branch 'master' into dev","epoch":1635626985,"epoch_utc":null},{"commit":"bee80b35d2b8c15e6233f2798e9c02a11e9e1e9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 30 13:47:21 2021 -0700","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["CHANGELOG","docs/parsers/csv_s.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":8},{"name":"man/jc.1","lines_changed":2}]},"message":"update for version bump","epoch":1635626841,"epoch_utc":null},{"commit":"c32395f6950d6294770ee93e8bf4d79c7d275ac3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 27 12:54:20 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":2}]},"message":"linting","epoch":1635364460,"epoch_utc":null},{"commit":"735c5e1078cc27b5cba03b8ebbae15aeca6b8fbd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 12:26:23 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["tests/test_csv_s.py"],"file_stats":[{"name":"tests/test_csv_s.py","lines_changed":5}]},"message":"update comments for ParseError test: https://bugs.python.org/issue45617","epoch":1635276383,"epoch_utc":null},{"commit":"d09c94b292ca3beec92a00f8a51b7259dd30a1e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 12:24:49 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add python 3.10 testing info","epoch":1635276289,"epoch_utc":null},{"commit":"4d04866f48f72b9ea0d213dc1533729d3b68a503","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 12:24:37 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":1}]},"message":"add python bug https://bugs.python.org/issue45617 info","epoch":1635276277,"epoch_utc":null},{"commit":"a2d90f4dfcdc2cb00c6c0fa957493c95a21e256b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 10:04:39 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_csv_s.py"],"file_stats":[{"name":"tests/test_csv_s.py","lines_changed":2}]},"message":"force test","epoch":1635267879,"epoch_utc":null},{"commit":"93a5002c8b530bd6f5f81e5d8595cde1f836ae41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 10:01:02 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"fix 3.10.0 version number","epoch":1635267662,"epoch_utc":null},{"commit":"23bf5227a4c39ea017e55fc21150331e1af6fdb7","merge":"77c96fa 3f5a1f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 07:44:04 2021 -0700","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev","epoch":1635259444,"epoch_utc":null},{"commit":"77c96fa2a96148221bde7d2274e0dfb5386a166f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 07:43:47 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["tests/test_csv_s.py"],"file_stats":[{"name":"tests/test_csv_s.py","lines_changed":3}]},"message":"try tests on python 3.10","epoch":1635259427,"epoch_utc":null},{"commit":"3f5a1f015e9c0807e227b9f7300592e25502e014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 07:42:37 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"add python 3.10","epoch":1635259357,"epoch_utc":null},{"commit":"b280c4fc18e60a85ab212b09aa5bf3a05a0eceff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 07:36:44 2021 -0700","stats":{"files_changed":2,"insertions":11,"deletions":19,"files":[".../fixtures/generic/csv-insurance-streaming.json","tests/test_csv_s.py"],"file_stats":[{"name":".../fixtures/generic/csv-insurance-streaming.json","lines_changed":1},{"name":"tests/test_csv_s.py","lines_changed":29}]},"message":"add ParseError test to streaming csv parser","epoch":1635259004,"epoch_utc":null},{"commit":"3ab9b43a2eebf535be98c94810ac474bf32ec515","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 26 07:36:23 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":14}]},"message":"raise ParseError on newline bug","epoch":1635258983,"epoch_utc":null},{"commit":"46f568414a5c8d2f135486e86d0ada48cfcefeb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 25 11:35:01 2021 -0700","stats":{"files_changed":3,"insertions":96,"deletions":89,"files":["tests/test_ls_s.py","tests/test_ping_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"tests/test_ls_s.py","lines_changed":26},{"name":"tests/test_ping_s.py","lines_changed":138},{"name":"tests/test_vmstat_s.py","lines_changed":21}]},"message":"change streaming parser test names","epoch":1635186901,"epoch_utc":null},{"commit":"cba2fd299fff09a551b780e064a6e22bdf7e539a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 25 11:03:32 2021 -0700","stats":{"files_changed":9,"insertions":75,"deletions":61,"files":[".../generic/csv-10k-sales-records-streaming.json","tests/fixtures/generic/csv-deniro-streaming.json","tests/fixtures/generic/csv-example-streaming.json","tests/fixtures/generic/csv-flyrna-streaming.json","tests/fixtures/generic/csv-flyrna2-streaming.json",".../fixtures/generic/csv-homes-pipe-streaming.json","tests/fixtures/generic/csv-homes-streaming.json",".../fixtures/generic/csv-insurance-streaming.json","tests/test_csv_s.py"],"file_stats":[{"name":".../generic/csv-10k-sales-records-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-deniro-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-example-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna2-streaming.json","lines_changed":1},{"name":".../fixtures/generic/csv-homes-pipe-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-homes-streaming.json","lines_changed":1},{"name":".../fixtures/generic/csv-insurance-streaming.json","lines_changed":1},{"name":"tests/test_csv_s.py","lines_changed":128}]},"message":"add tests","epoch":1635185012,"epoch_utc":null},{"commit":"1e6e44f656f1bbb277eb38fb485f7b48e3b9e40b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 25 11:03:21 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":5}]},"message":"fix for piping data with non-platform newlines (e.g. windows csv files on unix)","epoch":1635185001,"epoch_utc":null},{"commit":"acac0399946d9781193e9350dd7109f1dd3999fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 25 10:06:01 2021 -0700","stats":{"files_changed":3,"insertions":149,"deletions":0,"files":["tests/fixtures/generic/csv-biostats-streaming.json","tests/fixtures/generic/csv-cities-streaming.json","tests/test_csv_s.py"],"file_stats":[{"name":"tests/fixtures/generic/csv-biostats-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-cities-streaming.json","lines_changed":1},{"name":"tests/test_csv_s.py","lines_changed":147}]},"message":"working tests","epoch":1635181561,"epoch_utc":null},{"commit":"50a3b340164b3139f04f67a2bee16e5343c8a2da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 25 10:05:39 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":8,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":13}]},"message":"optimizations and use iter() so we can exhaust data coming from list objects","epoch":1635181539,"epoch_utc":null},{"commit":"b45396070cf28fa36ecb44acd7be3e3bb81a712d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 24 13:14:05 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_vmstat_s.py"],"file_stats":[{"name":"tests/test_vmstat_s.py","lines_changed":2}]},"message":"update comment","epoch":1635106445,"epoch_utc":null},{"commit":"218b9aec8ac397e26e6cd4ff407f3d10ef88ea9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 24 13:10:47 2021 -0700","stats":{"files_changed":4,"insertions":87,"deletions":48,"files":["README.md","docs/parsers/csv_s.md","jc/parsers/csv_s.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/csv_s.md","lines_changed":75},{"name":"jc/parsers/csv_s.py","lines_changed":52},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update for streaming CSV parser","epoch":1635106247,"epoch_utc":null},{"commit":"2b887debc647bd533040e392465967d12869cb02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 24 12:24:44 2021 -0700","stats":{"files_changed":4,"insertions":10172,"deletions":1,"files":["CHANGELOG","jc/cli.py","jc/parsers/csv_s.py","tests/fixtures/generic/csv-10k-sales-records.csv"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/csv_s.py","lines_changed":168},{"name":"tests/fixtures/generic/csv-10k-sales-records.csv","lines_changed":10001}]},"message":"add csv streaming parser","epoch":1635103484,"epoch_utc":null},{"commit":"0313e3f8ca0e22e1575192d765d5afedf48e94df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 24 11:21:47 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":6,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":15}]},"message":"linting","epoch":1635099707,"epoch_utc":null},{"commit":"1669e6e20c3af3d28968558b76d0901a56775ac0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 24 10:58:13 2021 -0700","stats":{"files_changed":1,"insertions":23,"deletions":28,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":51}]},"message":"linting","epoch":1635098293,"epoch_utc":null},{"commit":"ef6de75dda90c7221d53e0e0a942f0cac2247354","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 13:11:22 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":4}]},"message":"add vmstat timestamp tests to utils","epoch":1635019882,"epoch_utc":null},{"commit":"a6bcec425a3f44ba3c7cd06b5ebaf522b66df109","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:55:14 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":2}]},"message":"comment update","epoch":1635018914,"epoch_utc":null},{"commit":"596ad9a64d002ced212b08512126e52707fe73d2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:47:44 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":2}]},"message":"update comment","epoch":1635018464,"epoch_utc":null},{"commit":"7a91c93319f75c37ba6bf268d8270947f0bf8b22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:40:24 2021 -0700","stats":{"files_changed":1,"insertions":122,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":122}]},"message":"add lsusb","epoch":1635018024,"epoch_utc":null},{"commit":"b5f7b35f89197879a9f13bd8fa5d2a0c77cc059a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:30:18 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":2}]},"message":"comment update","epoch":1635017418,"epoch_utc":null},{"commit":"2f47fb7f14c4ff0e1c835897d94ee81d14590aba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:24:35 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["tests/test_uname.py"],"file_stats":[{"name":"tests/test_uname.py","lines_changed":5}]},"message":"fix ParseError tests","epoch":1635017075,"epoch_utc":null},{"commit":"1b214c403657a50689f2a04892ce836dea669a1d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 12:24:11 2021 -0700","stats":{"files_changed":3,"insertions":30,"deletions":0,"files":["jc/parsers/lsusb.py","tests/fixtures/generic/lsusb-t.out","tests/test_lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":5},{"name":"tests/fixtures/generic/lsusb-t.out","lines_changed":15},{"name":"tests/test_lsusb.py","lines_changed":10}]},"message":"raise ParseError if -t option is detected. add test","epoch":1635017051,"epoch_utc":null},{"commit":"8f94f8acc6bb53bbb19ba150551c7df2183a8863","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 11:56:12 2021 -0700","stats":{"files_changed":11,"insertions":384,"deletions":3,"files":["README.md","docs/parsers/file.md","docs/parsers/lsusb.md","docs/parsers/uname.md","man/jc.1","tests/fixtures/centos-7.7/lsusb-v-single.json","tests/fixtures/centos-7.7/lsusb-v.json","tests/fixtures/centos-7.7/lsusb.json","tests/fixtures/generic/lsusb-test-attributes.json","tests/fixtures/generic/lsusb-test-attributes2.json","tests/test_lsusb.py"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":288},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"man/jc.1","lines_changed":7},{"name":"tests/fixtures/centos-7.7/lsusb-v-single.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsusb-v.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsusb.json","lines_changed":1},{"name":"tests/fixtures/generic/lsusb-test-attributes.json","lines_changed":1},{"name":"tests/fixtures/generic/lsusb-test-attributes2.json","lines_changed":1},{"name":"tests/test_lsusb.py","lines_changed":82}]},"message":"add tests and update docs","epoch":1635015372,"epoch_utc":null},{"commit":"3a2a69cfa55e2f40d7536d923170a5cfc986998e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 11:39:08 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":4}]},"message":"formatting","epoch":1635014348,"epoch_utc":null},{"commit":"f599c659881248b79c6dbc86d85a61311c9d3434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 11:08:26 2021 -0700","stats":{"files_changed":2,"insertions":464,"deletions":0,"files":["tests/fixtures/generic/lsusb-test-attributes.out","tests/fixtures/generic/lsusb-test-attributes2.out"],"file_stats":[{"name":"tests/fixtures/generic/lsusb-test-attributes.out","lines_changed":116},{"name":"tests/fixtures/generic/lsusb-test-attributes2.out","lines_changed":348}]},"message":"add stress test examples","epoch":1635012506,"epoch_utc":null},{"commit":"ad12849fd9fc2177afb30740acc63cf284dc394b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 23 11:08:05 2021 -0700","stats":{"files_changed":1,"insertions":138,"deletions":26,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":164}]},"message":"update docs example and","epoch":1635012485,"epoch_utc":null},{"commit":"f36b3789e8df6673207d6c2d3d0796acfdfe011d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:39:02 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":4}]},"message":"formatting","epoch":1634942342,"epoch_utc":null},{"commit":"6d18c0ba61cd188dbff736f1be47b7362c841687","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:37:40 2021 -0700","stats":{"files_changed":1,"insertions":47,"deletions":47,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":94}]},"message":"change variable name last_attribute and last_attr to last_item","epoch":1634942260,"epoch_utc":null},{"commit":"17097abec9567a58b5a5f7bbed11ecfd69cbd28c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:28:44 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":6,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":8}]},"message":"formatting","epoch":1634941724,"epoch_utc":null},{"commit":"b7ddd3b285f205211394edc70b611171cf72a4c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:23:04 2021 -0700","stats":{"files_changed":1,"insertions":22,"deletions":22,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":44}]},"message":"change variable names","epoch":1634941384,"epoch_utc":null},{"commit":"75b23f62c9d7b33907af92964d1a6234332fbc78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:18:55 2021 -0700","stats":{"files_changed":1,"insertions":35,"deletions":7,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":42}]},"message":"working configuration_descriptor and device_descriptor attributes","epoch":1634941135,"epoch_utc":null},{"commit":"f88967b2a59d79e053554d1e141f71e9d2d87456","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 15:02:04 2021 -0700","stats":{"files_changed":1,"insertions":126,"deletions":21,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":147}]},"message":"add attribute lists up to interface_association","epoch":1634940124,"epoch_utc":null},{"commit":"ba2846664b35b2e94aa905431c55c029b24a64e3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 13:40:01 2021 -0700","stats":{"files_changed":1,"insertions":22,"deletions":2,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":24}]},"message":"edpoint_descriptors attributes working","epoch":1634935201,"epoch_utc":null},{"commit":"10dba37ca2624e05eff246ef49df8ebd3f275d86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 12:49:57 2021 -0700","stats":{"files_changed":1,"insertions":28,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":29}]},"message":"hub_descriptor attributes working","epoch":1634932197,"epoch_utc":null},{"commit":"0e6f938514965503f1d86d56c047f9f8fc03ac65","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 10:31:26 2021 -0700","stats":{"files_changed":1,"insertions":36,"deletions":45,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":81}]},"message":"working hub_port_status section","epoch":1634923886,"epoch_utc":null},{"commit":"159d87c1126f4d79d5e34837bc2c353a5445803b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 22 07:14:21 2021 -0700","stats":{"files_changed":3,"insertions":18,"deletions":7,"files":["jc/parsers/uname.py","tests/fixtures/centos-7.7/uname.out","tests/test_uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":11},{"name":"tests/fixtures/centos-7.7/uname.out","lines_changed":1},{"name":"tests/test_uname.py","lines_changed":13}]},"message":"add length guard and test for uname with no -a on linux","epoch":1634912061,"epoch_utc":null},{"commit":"9e7b1621cf232e9859bdf018737e536820f380a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 21 16:59:28 2021 -0700","stats":{"files_changed":1,"insertions":18,"deletions":18,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":36}]},"message":"device_status working","epoch":1634860768,"epoch_utc":null},{"commit":"2057817ef8fec85b2a978b682e7fe8bc16def828","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 20 15:59:27 2021 -0700","stats":{"files_changed":11,"insertions":89,"deletions":0,"files":["tests/fixtures/debian10/uname-a.json","tests/fixtures/debian10/uname-a.out","tests/fixtures/freebsd12/uname-a.json","tests/fixtures/freebsd12/uname-a.out","tests/fixtures/freebsd12/uname-a2.json","tests/fixtures/freebsd12/uname-a2.out","tests/fixtures/generic/uname-a-different-proc.json","tests/fixtures/generic/uname-a-different-proc.out","tests/fixtures/generic/uname-a.json","tests/fixtures/generic/uname-a.out","tests/test_uname.py"],"file_stats":[{"name":"tests/fixtures/debian10/uname-a.json","lines_changed":10},{"name":"tests/fixtures/debian10/uname-a.out","lines_changed":2},{"name":"tests/fixtures/freebsd12/uname-a.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/uname-a.out","lines_changed":2},{"name":"tests/fixtures/freebsd12/uname-a2.json","lines_changed":7},{"name":"tests/fixtures/freebsd12/uname-a2.out","lines_changed":2},{"name":"tests/fixtures/generic/uname-a-different-proc.json","lines_changed":1},{"name":"tests/fixtures/generic/uname-a-different-proc.out","lines_changed":1},{"name":"tests/fixtures/generic/uname-a.json","lines_changed":1},{"name":"tests/fixtures/generic/uname-a.out","lines_changed":2},{"name":"tests/test_uname.py","lines_changed":60}]},"message":"add uname tests","epoch":1634770767,"epoch_utc":null},{"commit":"a1eabad2d37bb0d0e9407edf7305e223eba67da2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 20 15:58:43 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":6}]},"message":"add comments","epoch":1634770723,"epoch_utc":null},{"commit":"92bf2b1ca2a172d3977d6e3c36b5ca1a8c2bab63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 20 15:27:14 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":20,"files":["CHANGELOG","jc/parsers/uname.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":26}]},"message":"simplify fixup logic for uname","epoch":1634768834,"epoch_utc":null},{"commit":"2b2123a4ba9b77d2089d367fe85dcb5d2857a295","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 20 07:34:37 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","jc/parsers/uname.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/parsers/uname.py","lines_changed":4}]},"message":"add FreeBSD support","epoch":1634740477,"epoch_utc":null},{"commit":"908b2f9200ddcce4beb531a3c90908786b6a5b02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 19 16:16:25 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"add items","epoch":1634685385,"epoch_utc":null},{"commit":"deff0c7bfdf942b8d7e7bd140219e08bf80a50cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 19 16:05:10 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":5,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":6}]},"message":"remove print debug","epoch":1634684710,"epoch_utc":null},{"commit":"7cd01efa64029775042a2c145997ce30ef6b4f6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 19 16:01:56 2021 -0700","stats":{"files_changed":1,"insertions":25,"deletions":1,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":26}]},"message":"fixup for cases where the 'process' and/or 'machine' fields are blank on linux","epoch":1634684516,"epoch_utc":null},{"commit":"2dbe56456bbea2bdfce7eacbf8b9f10a1b249f55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 15 11:43:15 2021 -0700","stats":{"files_changed":1,"insertions":49,"deletions":39,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":88}]},"message":"add nested_dict. start work on hub_port_status and device_status","epoch":1634323395,"epoch_utc":null},{"commit":"6078a411ef612be8bad012aa404f34ebd74a1fd7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 13 11:07:09 2021 -0600","stats":{"files_changed":1,"insertions":79,"deletions":4,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":83}]},"message":"add initial schema doc","epoch":1634148429,"epoch_utc":null},{"commit":"4a3656562f161a51f5cb6f0e9ccd271859b78d62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 13 07:26:31 2021 -0600","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":6}]},"message":"del null keys","epoch":1634135191,"epoch_utc":null},{"commit":"ba75989a24839907723ed7c3d7a497473d489a34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 22:51:45 2021 -0600","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":10}]},"message":"update comments","epoch":1634104305,"epoch_utc":null},{"commit":"9e9e2c362894f0072ab839565829881d750c8912","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 22:40:39 2021 -0600","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":4}]},"message":"move state instantiation before has_data test","epoch":1634103639,"epoch_utc":null},{"commit":"9a2a8c6b61a46a9bfb5a4492b86774a4a78672ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 22:38:03 2021 -0600","stats":{"files_changed":1,"insertions":20,"deletions":52,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":72}]},"message":"shorten set_sections","epoch":1634103483,"epoch_utc":null},{"commit":"dae42ef1619441637672d634f9e5d7ab26115f09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 15:55:09 2021 -0600","stats":{"files_changed":1,"insertions":18,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":19}]},"message":"add hub_port_status and device_status","epoch":1634079309,"epoch_utc":null},{"commit":"931f2cab78bda180443535c04b532d04c6e88dd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 12:38:40 2021 -0700","stats":{"files_changed":1,"insertions":14,"deletions":11,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":25}]},"message":"add hub_descriptor","epoch":1634067520,"epoch_utc":null},{"commit":"72b061bed4453686d264ccf8977cba6c2a4794ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 12:29:59 2021 -0700","stats":{"files_changed":1,"insertions":32,"deletions":8,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":40}]},"message":"add endpoint_descriptors","epoch":1634066999,"epoch_utc":null},{"commit":"29a7c73990d9620b15a4010d17fc9a9a859f44b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 11:24:49 2021 -0700","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":16}]},"message":"add hid_device_descriptor and report_descriptors","epoch":1634063089,"epoch_utc":null},{"commit":"2d1d68e3007f76d4c34ac07ae822935ab6021e79","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 12 09:57:47 2021 -0700","stats":{"files_changed":1,"insertions":87,"deletions":88,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":175}]},"message":"simplify populate_lists. Add CDC lists","epoch":1634057867,"epoch_utc":null},{"commit":"c5c1e170d1f502de5c76e9e481a23b26ffcaf237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 11 21:33:18 2021 -0700","stats":{"files_changed":1,"insertions":111,"deletions":76,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":187}]},"message":"interface descriptors working","epoch":1634013198,"epoch_utc":null},{"commit":"9c1bb66452838e704ef2277f313bb51a42dc03b9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 11 07:48:23 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":18}]},"message":"fix remove _state field during schema_populate","epoch":1633963703,"epoch_utc":null},{"commit":"a4f3306bae90fbc807fdd9ff2ce71e25d36a663f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 10 22:18:13 2021 -0700","stats":{"files_changed":1,"insertions":69,"deletions":28,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":97}]},"message":"initial schema build. need to figure out why deleting _state from output_line causes exceptions","epoch":1633929493,"epoch_utc":null},{"commit":"1bc638b6ee7a820406ba4b84d3408f7cd4fe779d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Oct 10 10:03:39 2021 -0700","stats":{"files_changed":1,"insertions":36,"deletions":32,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":68}]},"message":"add bus_list and add all device_list data to the list","epoch":1633885419,"epoch_utc":null},{"commit":"9ad0cd9dae8822235c37159541ce72471eb4263e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 9 20:05:55 2021 -0700","stats":{"files_changed":1,"insertions":116,"deletions":211,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":327}]},"message":"now storing state within the objects to make building the schema (later) easier.","epoch":1633835155,"epoch_utc":null},{"commit":"6d4a4691276d8659253b2ac8f8bdbd71a1fece7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 6 22:03:16 2021 -0700","stats":{"files_changed":1,"insertions":356,"deletions":333,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":689}]},"message":"use class for state","epoch":1633582996,"epoch_utc":null},{"commit":"ed6997e3ff2e575a6d4daa7d7a2cbe7dddacdd4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 5 16:47:23 2021 -0700","stats":{"files_changed":2,"insertions":170,"deletions":34,"files":["jc/parsers/lsusb.py","tests/fixtures/centos-7.7/lsusb-v-single.out"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":104},{"name":"tests/fixtures/centos-7.7/lsusb-v-single.out","lines_changed":100}]},"message":"add interface_association section","epoch":1633477643,"epoch_utc":null},{"commit":"eb788fca6e25eea1fa8a43b22360c852ecf5af35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 5 14:59:49 2021 -0700","stats":{"files_changed":4,"insertions":919,"deletions":0,"files":["jc/cli.py","jc/parsers/lsusb.py","tests/fixtures/centos-7.7/lsusb-v.out","tests/fixtures/centos-7.7/lsusb.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/lsusb.py","lines_changed":404},{"name":"tests/fixtures/centos-7.7/lsusb-v.out","lines_changed":509},{"name":"tests/fixtures/centos-7.7/lsusb.out","lines_changed":5}]},"message":"somewhat working lsusb parser. needs a lot more TLC","epoch":1633471189,"epoch_utc":null},{"commit":"9186f5f37739012b8c04c776310a20ef55b1469f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 2 14:53:07 2021 -0700","stats":{"files_changed":7,"insertions":99,"deletions":4,"files":["CHANGELOG","jc/__init__.py","jc/parsers/file.py","setup.py","tests/fixtures/osx-10.14.6/file3.json","tests/fixtures/osx-10.14.6/file3.out","tests/test_file.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":11},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/file3.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/file3.out","lines_changed":72},{"name":"tests/test_file.py","lines_changed":12}]},"message":"fix file parser for gzip cases (has ': ' in the description, which is the delimiter)","epoch":1633211587,"epoch_utc":null},{"commit":"30cff5f28140a5b20a617c8145c13e43b7b6685b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 27 10:35:08 2021 -0700","stats":{"files_changed":8,"insertions":17,"deletions":3,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":4},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":4},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"add note that the streaming parser outputs JSON Lines","epoch":1632764108,"epoch_utc":null},{"commit":"b724e0969a0d6b22bed0c77eb8d629381179ea3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 20:22:16 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2}]},"message":"-qq instead of -q","epoch":1632712936,"epoch_utc":null},{"commit":"a62c49e8715873b068a96da5021ea24a783acd6b","merge":"77dcbc5 9b160f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 16:35:29 2021 -0700","message":"Merge pull request #172 from kellyjonbrazil/master\n\nsync master to dev","epoch":1632699329,"epoch_utc":null},{"commit":"9b160f6279bbbf0c15413c98922eef137ba2f3f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 16:29:36 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]},"message":"link update","epoch":1632698976,"epoch_utc":null},{"commit":"338a4e2612f70bb3e2af31f61a7db75f647293fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 16:27:15 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]},"message":"formatting","epoch":1632698835,"epoch_utc":null},{"commit":"0140688750be61dd752059ee66734ab1c7a8f30e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 16:24:18 2021 -0700","stats":{"files_changed":6,"insertions":8,"deletions":4,"files":["README.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"link updates","epoch":1632698658,"epoch_utc":null},{"commit":"73e5ea98c1ca2b9299085e3832791162eca3b9ff","merge":"528aac7 77dcbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 14:55:18 2021 -0700","message":"Merge pull request #170 from kellyjonbrazil/dev\n\njc v1.17.0 from dev","epoch":1632693318,"epoch_utc":null},{"commit":"77dcbc544da271edab5de5ad209117e98c846f9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 14:50:02 2021 -0700","stats":{"files_changed":3,"insertions":2,"deletions":3,"files":["CHANGELOG","jc/__init__.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"final doc update","epoch":1632693002,"epoch_utc":null},{"commit":"c7bcb0947ae32acc9cdba7a6975d2f2557f10a39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 13:20:42 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":4}]},"message":"indent subsequent error and warning lines","epoch":1632687642,"epoch_utc":null},{"commit":"5cd3f7f71d38b560a88dd6057e9c7a94991a3d71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 13:15:35 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":6}]},"message":"Add example to raise ParseError if there is no output data to yield","epoch":1632687335,"epoch_utc":null},{"commit":"5044388ab2e8d7d8b427fd51b0ab875611bd127f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 13:04:27 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":3,"files":["jc/parsers/vmstat_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":6},{"name":"tests/test_vmstat_s.py","lines_changed":3}]},"message":"raise if line data is unrecognized","epoch":1632686667,"epoch_utc":null},{"commit":"ee075db59819d80e4dcb60ddbd9cfe2fd529dfe9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 26 12:00:30 2021 -0700","stats":{"files_changed":4,"insertions":5,"deletions":7,"files":["jc/cli.py","jc/parsers/foo_s.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":5},{"name":"jc/parsers/vmstat_s.py","lines_changed":3}]},"message":"linting","epoch":1632682830,"epoch_utc":null},{"commit":"9904e0be61e7c81b907bf3770f111346daeff481","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Sep 25 08:28:57 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":2},{"name":"jc/utils.py","lines_changed":2}]},"message":"formatting","epoch":1632583737,"epoch_utc":null},{"commit":"31b69b3242eeca2c02f87c31d58193dd3f06fe49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Sep 25 08:23:46 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":6},{"name":"jc/utils.py","lines_changed":6}]},"message":"formatting","epoch":1632583426,"epoch_utc":null},{"commit":"e6a80fea3228122dd84e17672c835c0460ad1342","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Sep 25 08:19:34 2021 -0700","stats":{"files_changed":3,"insertions":7,"deletions":7,"files":["docs/utils.md","jc/utils.py","man/jc.1"],"file_stats":[{"name":"docs/utils.md","lines_changed":6},{"name":"jc/utils.py","lines_changed":6},{"name":"man/jc.1","lines_changed":2}]},"message":"formatting","epoch":1632583174,"epoch_utc":null},{"commit":"d6aec00e038d1ecfe43c13a6909d50630455b372","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 16:45:38 2021 -0700","stats":{"files_changed":4,"insertions":27,"deletions":1,"files":["tests/fixtures/ubuntu-18.04/vmstat-1-long-streaming.json","tests/fixtures/ubuntu-18.04/vmstat-1-long.json","tests/test_vmstat.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"tests/fixtures/ubuntu-18.04/vmstat-1-long-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/vmstat-1-long.json","lines_changed":1},{"name":"tests/test_vmstat.py","lines_changed":12},{"name":"tests/test_vmstat_s.py","lines_changed":14}]},"message":"add vmstat-1-long tests","epoch":1632527138,"epoch_utc":null},{"commit":"4aa7d81e11ea7fcfbb5c9d74337cde617b1a0d5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 16:27:11 2021 -0700","stats":{"files_changed":3,"insertions":50,"deletions":2,"files":["jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","tests/fixtures/ubuntu-18.04/vmstat-1-long.out"],"file_stats":[{"name":"jc/parsers/vmstat.py","lines_changed":3},{"name":"jc/parsers/vmstat_s.py","lines_changed":7},{"name":"tests/fixtures/ubuntu-18.04/vmstat-1-long.out","lines_changed":42}]},"message":"ignore re-printed header rows in output","epoch":1632526031,"epoch_utc":null},{"commit":"48cdabc3b0862d6291e1ec59ab385e0e146c31eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 10:11:15 2021 -0700","stats":{"files_changed":4,"insertions":16,"deletions":0,"files":["docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/vmstat.md","lines_changed":4},{"name":"docs/parsers/vmstat_s.md","lines_changed":4},{"name":"jc/parsers/vmstat.py","lines_changed":4},{"name":"jc/parsers/vmstat_s.py","lines_changed":4}]},"message":"document timestamps","epoch":1632503475,"epoch_utc":null},{"commit":"a1791ef5479749692c79bbe98fc7687d70cd6cda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 10:01:13 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2}]},"message":"linting","epoch":1632502873,"epoch_utc":null},{"commit":"7bc87f6c2d4cfcfa656a1c1b8973a4c0414c85d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 09:24:30 2021 -0700","stats":{"files_changed":8,"insertions":8,"deletions":8,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"change _meta to _jc_meta","epoch":1632500670,"epoch_utc":null},{"commit":"bbed9e274b8252ba0518140fe7fc97029310771f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 09:16:44 2021 -0700","stats":{"files_changed":1,"insertions":154,"deletions":159,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":313}]},"message":"linting","epoch":1632500204,"epoch_utc":null},{"commit":"486282b9856f5e56cf43ee1399d8e7cb78353b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 08:52:39 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":10}]},"message":"linting","epoch":1632498759,"epoch_utc":null},{"commit":"a4d45b653f794033978940da14910f5d607a8254","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 08:49:37 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["jc/parsers/foo_s.py","jc/parsers/vmstat.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":8}]},"message":"linting","epoch":1632498577,"epoch_utc":null},{"commit":"22e151b01c0f97c141d912c9646e46df0320d622","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 24 08:43:09 2021 -0700","stats":{"files_changed":2,"insertions":56,"deletions":60,"files":["jc/cli.py","jc/utils.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":88},{"name":"jc/utils.py","lines_changed":28}]},"message":"linting","epoch":1632498189,"epoch_utc":null},{"commit":"7a4ebcd1ecdb4929aae70e44b4f9b6b5ab52b393","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 21:22:01 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":4}]},"message":"language hints","epoch":1632457321,"epoch_utc":null},{"commit":"651cbfe02fbb354c4caf8e0d022655642e7caed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 21:20:25 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"add streaming foo parser","epoch":1632457225,"epoch_utc":null},{"commit":"8c3e764516e1c28961b09380b638a57ce98b1261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 21:17:17 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add streaming parser to contrib guidelines","epoch":1632457037,"epoch_utc":null},{"commit":"b4e75da7e3f23502723ce8b2a7261b376f296864","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 21:14:47 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"templates/readme_template","lines_changed":4}]},"message":"formatting","epoch":1632456887,"epoch_utc":null},{"commit":"37223f086cabc8db5962415bd161fed151dafb9d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 21:13:21 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":5},{"name":"templates/readme_template","lines_changed":5}]},"message":"formatting","epoch":1632456801,"epoch_utc":null},{"commit":"a404033735c2c8075a8e08194197eae59db70afd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 20:54:44 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add error and warning message wrap info","epoch":1632455684,"epoch_utc":null},{"commit":"b7433ed085c0ba22ea0d49330871a651a8d83fb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 20:53:31 2021 -0700","stats":{"files_changed":6,"insertions":80,"deletions":41,"files":["docs/utils.md","jc/cli.py","jc/parsers/file.py","jc/parsers/ls.py","jc/parsers/traceroute.py","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":16},{"name":"jc/cli.py","lines_changed":39},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":60}]},"message":"auto wrap warning and error messages","epoch":1632455611,"epoch_utc":null},{"commit":"224d3d65ada4216e28e142d411b0c2c3358517b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 13:15:38 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"Add exception class name to error message","epoch":1632428138,"epoch_utc":null},{"commit":"a349fb0bdabaf74503831f22c4efbd02254f809d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 13:08:31 2021 -0700","stats":{"files_changed":3,"insertions":10,"deletions":8,"files":["README.md","docs/utils.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"docs/utils.md","lines_changed":6},{"name":"man/jc.1","lines_changed":6}]},"message":"change _meta to _jc_meta","epoch":1632427711,"epoch_utc":null},{"commit":"e7ddcfb83fb295034db44ade407476ff3a962cd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 13:07:10 2021 -0700","stats":{"files_changed":5,"insertions":14,"deletions":12,"files":["jc/utils.py","templates/manpage_template","templates/readme_template",".../centos-7.7/ping-ip-O-streaming-ignore-exceptions.json","tests/test_ping_s.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":10},{"name":"templates/manpage_template","lines_changed":6},{"name":"templates/readme_template","lines_changed":6},{"name":".../centos-7.7/ping-ip-O-streaming-ignore-exceptions.json","lines_changed":2},{"name":"tests/test_ping_s.py","lines_changed":2}]},"message":"change _meta to _jc_meta","epoch":1632427630,"epoch_utc":null},{"commit":"abd20dfe3662f65373ac582c70aa740e53b52f68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 12:58:24 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"templates/manpage_template","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting","epoch":1632427104,"epoch_utc":null},{"commit":"dc1fd3ef1be41aee349b159059f1febff76f6caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 11:54:58 2021 -0700","stats":{"files_changed":4,"insertions":12,"deletions":12,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"man/jc.1","lines_changed":6},{"name":"templates/manpage_template","lines_changed":6},{"name":"templates/readme_template","lines_changed":6}]},"message":"fix -qq docs","epoch":1632423298,"epoch_utc":null},{"commit":"98a7686db46fbd3ed98382867976249f307d0015","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 11:48:39 2021 -0700","stats":{"files_changed":18,"insertions":160,"deletions":152,"files":["README.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","docs/utils.md","jc/cli.py","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","jc/utils.py","man/jc.1","templates/manpage_template","templates/readme_template","... => ping-ip-O-streaming-ignore-exceptions.json}","tests/test_ls_s.py","tests/test_ping_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":9},{"name":"docs/parsers/ping_s.md","lines_changed":9},{"name":"docs/parsers/vmstat_s.md","lines_changed":9},{"name":"docs/utils.md","lines_changed":6},{"name":"jc/cli.py","lines_changed":23},{"name":"jc/parsers/foo_s.py","lines_changed":13},{"name":"jc/parsers/ls_s.py","lines_changed":13},{"name":"jc/parsers/ping_s.py","lines_changed":13},{"name":"jc/parsers/vmstat_s.py","lines_changed":13},{"name":"jc/utils.py","lines_changed":12},{"name":"man/jc.1","lines_changed":4},{"name":"templates/manpage_template","lines_changed":4},{"name":"templates/readme_template","lines_changed":2},{"name":"... => ping-ip-O-streaming-ignore-exceptions.json}","lines_changed":0},{"name":"tests/test_ls_s.py","lines_changed":24},{"name":"tests/test_ping_s.py","lines_changed":140},{"name":"tests/test_vmstat_s.py","lines_changed":16}]},"message":"use -qq to ignore streaming exceptions","epoch":1632422919,"epoch_utc":null},{"commit":"9c6c6c4330fc68115be012de254161f36e3a8328","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 09:04:37 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add next() info","epoch":1632413077,"epoch_utc":null},{"commit":"f9be5651daa891e06ad0acd8980ffc0fe51fd29d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:59:26 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":6,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":5},{"name":"templates/readme_template","lines_changed":5}]},"message":"add language hints","epoch":1632412766,"epoch_utc":null},{"commit":"df9835a3e62bb2b3b6ec8b55f06a25a00a799d92","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:57:14 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting","epoch":1632412634,"epoch_utc":null},{"commit":"92363be2dd633bdd3c2dd07c72ebd281d2cb4565","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:56:14 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"templates/readme_template","lines_changed":3}]},"message":"fix streaming python module example","epoch":1632412574,"epoch_utc":null},{"commit":"31b62030156f9c826fe5c7d127e9dd0ace582dd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:54:15 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"templates/readme_template","lines_changed":6}]},"message":"formatting","epoch":1632412455,"epoch_utc":null},{"commit":"18805858d685d456f9a38540bbaedbaa1a411546","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:53:25 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":4},{"name":"templates/manpage_template","lines_changed":2}]},"message":"formatting","epoch":1632412405,"epoch_utc":null},{"commit":"e676f0e20fb6e96a536c4d182b0d287cdc1ad0f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 23 08:53:14 2021 -0700","stats":{"files_changed":2,"insertions":36,"deletions":6,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":21},{"name":"templates/readme_template","lines_changed":21}]},"message":"add streaming parser info for python module use","epoch":1632412394,"epoch_utc":null},{"commit":"20652edefaa7705b8ba756bae3944ff362a295a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 20:11:26 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":7}]},"message":"update changelog","epoch":1632366686,"epoch_utc":null},{"commit":"98c29d07478093e78f53ec633f2dd08cafc3e3ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 19:54:12 2021 -0700","stats":{"files_changed":8,"insertions":120,"deletions":0,"files":["tests/fixtures/centos-7.7/vmstat-a.json","tests/fixtures/centos-7.7/vmstat-at-5-10.json","tests/fixtures/centos-7.7/vmstat-awt.json","tests/fixtures/centos-7.7/vmstat-d.json","tests/fixtures/centos-7.7/vmstat-dt.json","tests/fixtures/centos-7.7/vmstat-w.json","tests/fixtures/centos-7.7/vmstat.json","tests/test_vmstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/vmstat-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-at-5-10.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-awt.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-d.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-dt.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-w.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat.json","lines_changed":1},{"name":"tests/test_vmstat.py","lines_changed":113}]},"message":"add vmstat tests","epoch":1632365652,"epoch_utc":null},{"commit":"41a6311f6b3ed2cc94919d042aed51c46cdf3e2f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 19:34:44 2021 -0700","stats":{"files_changed":9,"insertions":132,"deletions":1,"files":["tests/fixtures/centos-7.7/vmstat-a-streaming.json",".../centos-7.7/vmstat-at-5-10-streaming.json",".../fixtures/centos-7.7/vmstat-awt-streaming.json","tests/fixtures/centos-7.7/vmstat-d-streaming.json","tests/fixtures/centos-7.7/vmstat-dt-streaming.json","tests/fixtures/centos-7.7/vmstat-streaming.json","tests/fixtures/centos-7.7/vmstat-w-streaming.json","tests/test_ping_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/vmstat-a-streaming.json","lines_changed":1},{"name":".../centos-7.7/vmstat-at-5-10-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/vmstat-awt-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-d-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-dt-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-w-streaming.json","lines_changed":1},{"name":"tests/test_ping_s.py","lines_changed":2},{"name":"tests/test_vmstat_s.py","lines_changed":124}]},"message":"add streaming parser tests","epoch":1632364484,"epoch_utc":null},{"commit":"978760ec57e04e3ec347c8764bfad015b6dddbff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 19:32:20 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"add exception class name to error string","epoch":1632364340,"epoch_utc":null},{"commit":"d410425537817964ceb7b61e0fdff6c03fdf8766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:43:26 2021 -0700","stats":{"files_changed":4,"insertions":136,"deletions":136,"files":["docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/vmstat.md","lines_changed":68},{"name":"docs/parsers/vmstat_s.md","lines_changed":68},{"name":"jc/parsers/vmstat.py","lines_changed":68},{"name":"jc/parsers/vmstat_s.py","lines_changed":68}]},"message":"replace single quotes with double quotes in doc","epoch":1632347006,"epoch_utc":null},{"commit":"6b7430329cbe1bfb95b47bcfe031906641c127e1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:38:13 2021 -0700","stats":{"files_changed":5,"insertions":269,"deletions":1,"files":["README.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat_s.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":145},{"name":"docs/parsers/vmstat_s.md","lines_changed":105},{"name":"jc/parsers/vmstat_s.py","lines_changed":6},{"name":"man/jc.1","lines_changed":12}]},"message":"doc update","epoch":1632346693,"epoch_utc":null},{"commit":"40fe0d4a6081a1233bf5c3eb51a01da1f12bc4dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:34:46 2021 -0700","stats":{"files_changed":1,"insertions":141,"deletions":22,"files":["jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":163}]},"message":"working parser","epoch":1632346486,"epoch_utc":null},{"commit":"365c5354a0349e470558d15243217a064e73da38","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:34:32 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/vmstat.py"],"file_stats":[{"name":"jc/parsers/vmstat.py","lines_changed":1}]},"message":"remove debug print statement","epoch":1632346472,"epoch_utc":null},{"commit":"b246a05cbb4c1c564f81b3e72cecb62edbe6ced6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:34:19 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"fix vmstat-s name","epoch":1632346459,"epoch_utc":null},{"commit":"9e5a7a4abb8668d043625951a05eb5733cbbd56f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:07:09 2021 -0700","stats":{"files_changed":7,"insertions":37,"deletions":0,"files":["tests/fixtures/centos-7.7/vmstat-a.out","tests/fixtures/centos-7.7/vmstat-at-5-10.out","tests/fixtures/centos-7.7/vmstat-awt.out","tests/fixtures/centos-7.7/vmstat-d.out","tests/fixtures/centos-7.7/vmstat-dt.out","tests/fixtures/centos-7.7/vmstat-w.out","tests/fixtures/centos-7.7/vmstat.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/vmstat-a.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/vmstat-at-5-10.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/vmstat-awt.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/vmstat-d.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/vmstat-dt.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/vmstat-w.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/vmstat.out","lines_changed":4}]},"message":"add vmstat sample output","epoch":1632344829,"epoch_utc":null},{"commit":"f266acbccafc040c375723147b8e5d7fddb1e697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:06:51 2021 -0700","stats":{"files_changed":1,"insertions":106,"deletions":14,"files":["jc/parsers/vmstat.py"],"file_stats":[{"name":"jc/parsers/vmstat.py","lines_changed":120}]},"message":"add processing logic","epoch":1632344811,"epoch_utc":null},{"commit":"4e3b471f1801f1b9006b18cae2a3d816f361262e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 14:06:28 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"add format for vmstat","epoch":1632344788,"epoch_utc":null},{"commit":"5e28736c2e0c951e71e6531e03a9619279d95d3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 12:08:20 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add vmstat and vmstat_s","epoch":1632337700,"epoch_utc":null},{"commit":"a91913a3b517ea0dbb25d6e4cc92850eb2fde5ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 12:07:27 2021 -0700","stats":{"files_changed":1,"insertions":106,"deletions":0,"files":["jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":106}]},"message":"streaming parser template","epoch":1632337647,"epoch_utc":null},{"commit":"90c64f0ae0d97d025adee40970d89baca79ee4ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 12:07:09 2021 -0700","stats":{"files_changed":1,"insertions":182,"deletions":0,"files":["jc/parsers/vmstat.py"],"file_stats":[{"name":"jc/parsers/vmstat.py","lines_changed":182}]},"message":"initial working parser","epoch":1632337629,"epoch_utc":null},{"commit":"7cc642ed1a476abda709ac9b79900a1de12e1ef7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 22 12:06:56 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":4}]},"message":"formatting","epoch":1632337616,"epoch_utc":null},{"commit":"809f64d35a92bb3d7380fa9d78ac1421a10b81fc","merge":"ff0fda4 a6f859a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 22:58:18 2021 -0700","message":"Merge pull request #169 from kellyjonbrazil/streaming\n\nStreaming to dev","epoch":1632290298,"epoch_utc":null},{"commit":"a6f859a55edae50fcc185948736218404cfaa929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 22:47:48 2021 -0700","stats":{"files_changed":18,"insertions":168,"deletions":153,"files":[".../osx-10.14.6/ping-hostname-p-streaming.json",".../osx-10.14.6/ping-hostname-s-streaming.json",".../osx-10.14.6/ping-hostname-streaming.json",".../osx-10.14.6/ping-ip-dup-streaming.json",".../fixtures/osx-10.14.6/ping-ip-p-streaming.json",".../fixtures/osx-10.14.6/ping-ip-s-streaming.json","tests/fixtures/osx-10.14.6/ping-ip-streaming.json",".../osx-10.14.6/ping-ip-unreachable-streaming.json",".../osx-10.14.6/ping6-hostname-p-streaming.json",".../osx-10.14.6/ping6-hostname-s-streaming.json",".../osx-10.14.6/ping6-hostname-streaming.json",".../osx-10.14.6/ping6-ip-dup-streaming.json",".../fixtures/osx-10.14.6/ping6-ip-p-streaming.json",".../fixtures/osx-10.14.6/ping6-ip-s-streaming.json","tests/fixtures/osx-10.14.6/ping6-ip-streaming.json","tests/fixtures/pi/ping-ip-O-D-streaming.json","tests/fixtures/pi/ping-ip-O-streaming.json","tests/test_ping_s.py"],"file_stats":[{"name":".../osx-10.14.6/ping-hostname-p-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping-hostname-s-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping-hostname-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping-ip-dup-streaming.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/ping-ip-p-streaming.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/ping-ip-s-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping-ip-unreachable-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping6-hostname-p-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping6-hostname-s-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping6-hostname-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping6-ip-dup-streaming.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/ping6-ip-p-streaming.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/ping6-ip-s-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-streaming.json","lines_changed":1},{"name":"tests/fixtures/pi/ping-ip-O-D-streaming.json","lines_changed":1},{"name":"tests/fixtures/pi/ping-ip-O-streaming.json","lines_changed":1},{"name":"tests/test_ping_s.py","lines_changed":304}]},"message":"add final ping_s tests","epoch":1632289668,"epoch_utc":null},{"commit":"39ef88078f43708e470d3c1b2fd95e76b5cbeb08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 22:47:02 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":1}]},"message":"add destination_ip to error lines","epoch":1632289622,"epoch_utc":null},{"commit":"aeea5e8d2eab2fef3e14637f512aed7b117c4a3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 22:00:05 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/test_ls_s.py"],"file_stats":[{"name":"tests/test_ls_s.py","lines_changed":2}]},"message":"formatting","epoch":1632286805,"epoch_utc":null},{"commit":"1a0700bff4bdebbd9f1f92f2fc7a56c4d5ed6925","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 21:58:59 2021 -0700","stats":{"files_changed":31,"insertions":240,"deletions":213,"files":[".../fedora32/ping-hostname-O-D-p-s-streaming.json",".../fedora32/ping-hostname-O-p-streaming.json",".../fedora32/ping-hostname-O-streaming.json","tests/fixtures/fedora32/ping-ip-O-D-streaming.json","tests/fixtures/fedora32/ping-ip-O-streaming.json",".../fedora32/ping6-hostname-O-D-p-s-streaming.json",".../fedora32/ping6-hostname-O-p-streaming.json",".../fedora32/ping6-ip-O-D-p-streaming.json",".../fixtures/fedora32/ping6-ip-O-p-streaming.json",".../freebsd12/ping-hostname-p-streaming.json",".../freebsd12/ping-hostname-s-streaming.json",".../freebsd12/ping-hostname-streaming.json","tests/fixtures/freebsd12/ping-ip-p-streaming.json","tests/fixtures/freebsd12/ping-ip-s-streaming.json","tests/fixtures/freebsd12/ping-ip-streaming.json",".../freebsd12/ping6-hostname-p-streaming.json",".../freebsd12/ping6-hostname-s-streaming.json",".../freebsd12/ping6-hostname-streaming.json","tests/fixtures/freebsd12/ping6-ip-p-streaming.json","tests/fixtures/freebsd12/ping6-ip-s-streaming.json","tests/fixtures/freebsd12/ping6-ip-streaming.json",".../ping-hostname-O-D-p-s-streaming.json",".../ubuntu-18.04/ping-hostname-O-p-streaming.json",".../ubuntu-18.04/ping-hostname-O-streaming.json",".../ubuntu-18.04/ping-ip-O-D-streaming.json",".../fixtures/ubuntu-18.04/ping-ip-O-streaming.json",".../ping6-hostname-O-D-p-s-streaming.json",".../ubuntu-18.04/ping6-hostname-O-p-streaming.json",".../ubuntu-18.04/ping6-ip-O-D-p-streaming.json",".../ubuntu-18.04/ping6-ip-O-p-streaming.json","tests/test_ping_s.py"],"file_stats":[{"name":".../fedora32/ping-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../fedora32/ping-hostname-O-p-streaming.json","lines_changed":1},{"name":".../fedora32/ping-hostname-O-streaming.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-ip-O-D-streaming.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-ip-O-streaming.json","lines_changed":1},{"name":".../fedora32/ping6-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../fedora32/ping6-hostname-O-p-streaming.json","lines_changed":1},{"name":".../fedora32/ping6-ip-O-D-p-streaming.json","lines_changed":1},{"name":".../fixtures/fedora32/ping6-ip-O-p-streaming.json","lines_changed":1},{"name":".../freebsd12/ping-hostname-p-streaming.json","lines_changed":1},{"name":".../freebsd12/ping-hostname-s-streaming.json","lines_changed":1},{"name":".../freebsd12/ping-hostname-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-p-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-s-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-streaming.json","lines_changed":1},{"name":".../freebsd12/ping6-hostname-p-streaming.json","lines_changed":1},{"name":".../freebsd12/ping6-hostname-s-streaming.json","lines_changed":1},{"name":".../freebsd12/ping6-hostname-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-p-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-s-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-streaming.json","lines_changed":1},{"name":".../ping-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping-hostname-O-p-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping-hostname-O-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping-ip-O-D-streaming.json","lines_changed":1},{"name":".../fixtures/ubuntu-18.04/ping-ip-O-streaming.json","lines_changed":1},{"name":".../ping6-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-hostname-O-p-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-ip-O-D-p-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-ip-O-p-streaming.json","lines_changed":1},{"name":"tests/test_ping_s.py","lines_changed":423}]},"message":"add more ping-s tests","epoch":1632286739,"epoch_utc":null},{"commit":"b5fa6d068f240671eb948b055cd4f7bf127e0ec0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 16:03:00 2021 -0700","stats":{"files_changed":5,"insertions":25,"deletions":5,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":6},{"name":"docs/parsers/ping_s.md","lines_changed":6},{"name":"jc/parsers/foo_s.py","lines_changed":6},{"name":"jc/parsers/ls_s.py","lines_changed":6},{"name":"jc/parsers/ping_s.py","lines_changed":6}]},"message":"update docs","epoch":1632265380,"epoch_utc":null},{"commit":"1baec0b420feff068f2dc1e35499f78aa7d0a6e0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 15:43:02 2021 -0700","stats":{"files_changed":13,"insertions":815,"deletions":0,"files":[".../ping-hostname-O-D-p-s-streaming.json",".../centos-7.7/ping-hostname-O-p-streaming.json",".../centos-7.7/ping-hostname-O-streaming.json",".../fixtures/centos-7.7/ping-ip-O-D-streaming.json",".../centos-7.7/ping-ip-O-streaming-quiet.json","tests/fixtures/centos-7.7/ping-ip-O-streaming.json",".../fixtures/centos-7.7/ping-ip-dup-streaming.json",".../ping6-hostname-O-D-p-s-streaming.json",".../centos-7.7/ping6-hostname-O-p-streaming.json",".../centos-7.7/ping6-ip-O-D-p-streaming.json",".../centos-7.7/ping6-ip-O-p-streaming.json",".../centos-7.7/ping6-ip-dup-streaming.json","tests/test_ping_s.py"],"file_stats":[{"name":".../ping-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping-hostname-O-p-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping-hostname-O-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/ping-ip-O-D-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping-ip-O-streaming-quiet.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-ip-O-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/ping-ip-dup-streaming.json","lines_changed":1},{"name":".../ping6-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping6-hostname-O-p-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping6-ip-O-D-p-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping6-ip-O-p-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping6-ip-dup-streaming.json","lines_changed":1},{"name":"tests/test_ping_s.py","lines_changed":803}]},"message":"add some streaming tests","epoch":1632264182,"epoch_utc":null},{"commit":"4f2a4e1dee9d722d2aa5ddf2c082a358c88cf640","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 15:42:45 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":8}]},"message":"skip blank lines and warning lines","epoch":1632264165,"epoch_utc":null},{"commit":"758d617668d1f9d0f27b52d46749e5b67a570cf1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 13:29:50 2021 -0700","stats":{"files_changed":5,"insertions":5,"deletions":5,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2}]},"message":"doc update","epoch":1632256190,"epoch_utc":null},{"commit":"55322c37f57a9c8e28641a61928fad2329f5e50d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 12:36:36 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":4}]},"message":"formatting","epoch":1632252996,"epoch_utc":null},{"commit":"d19ea5552bb3a379f7f92bcb58794c557ecc6647","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 12:33:05 2021 -0700","stats":{"files_changed":12,"insertions":193,"deletions":0,"files":["tests/fixtures/centos-7.7/ls-al-streaming.json","tests/fixtures/centos-7.7/ls-alR-streaming.json","tests/fixtures/centos-7.7/ls-alh-streaming.json","tests/fixtures/osx-10.14.6/ls-al-streaming.json","tests/fixtures/osx-10.14.6/ls-alR-streaming.json","tests/fixtures/osx-10.14.6/ls-alh-streaming.json",".../osx-10.14.6/ls-lR-empty-folder-streaming.json","tests/fixtures/ubuntu-18.04/ls-al-streaming.json","tests/fixtures/ubuntu-18.04/ls-alR-streaming.json","tests/fixtures/ubuntu-18.04/ls-alh-streaming.json",".../fixtures/ubuntu-18.04/ls-l-iso-streaming.json","tests/test_ls_s.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ls-al-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-alR-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-alh-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-al-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-alR-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-alh-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ls-lR-empty-folder-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-al-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-alR-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-alh-streaming.json","lines_changed":1},{"name":".../fixtures/ubuntu-18.04/ls-l-iso-streaming.json","lines_changed":1},{"name":"tests/test_ls_s.py","lines_changed":182}]},"message":"add streaming ls parser tests","epoch":1632252785,"epoch_utc":null},{"commit":"130c3527c1083d399deef00ee8fcaa75f609b485","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 21 12:32:34 2021 -0700","stats":{"files_changed":6,"insertions":25,"deletions":25,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":8},{"name":"docs/parsers/ping_s.md","lines_changed":12},{"name":"jc/parsers/foo_s.py","lines_changed":6},{"name":"jc/parsers/ls_s.py","lines_changed":10},{"name":"jc/parsers/ping_s.py","lines_changed":12},{"name":"man/jc.1","lines_changed":2}]},"message":"update docstrings","epoch":1632252754,"epoch_utc":null},{"commit":"3f221f471416766a860bd19850afda4899ee5eb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 13:21:20 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":6},{"name":"jc/parsers/ping_s.py","lines_changed":6}]},"message":"doc update","epoch":1632169280,"epoch_utc":null},{"commit":"d64c4cb39056bb869fc117477612ae5ae2ef3d85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 13:04:26 2021 -0700","stats":{"files_changed":2,"insertions":141,"deletions":1,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":72},{"name":"templates/manpage_template","lines_changed":70}]},"message":"add streaming parsers section","epoch":1632168266,"epoch_utc":null},{"commit":"448c56aa46b72438e4a4c83b10a7eb889e3f50e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 13:04:14 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting","epoch":1632168254,"epoch_utc":null},{"commit":"9fbea15b6d031baa8c90f2602e39de7cf51408e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 11:59:54 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":8,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":6},{"name":"jc/parsers/ping_s.py","lines_changed":4}]},"message":"rename state class to _state","epoch":1632164394,"epoch_utc":null},{"commit":"932060314b3c1ce518b9f57532e124285cb3ad0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 11:51:27 2021 -0700","stats":{"files_changed":2,"insertions":41,"deletions":11,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":50},{"name":"jc/parsers/ping_s.py","lines_changed":2}]},"message":"doc update","epoch":1632163887,"epoch_utc":null},{"commit":"5e68ae50097cb339f3390449db7e3f189a716320","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 11:42:15 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":7}]},"message":"import exception. tighten up os detection","epoch":1632163335,"epoch_utc":null},{"commit":"d03541beae44a4571a7d0481af01a5c19506207f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 20 11:24:59 2021 -0700","stats":{"files_changed":1,"insertions":12,"deletions":5,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":17}]},"message":"add docstring examples. add exception raise when OS cannot be detected.","epoch":1632162299,"epoch_utc":null},{"commit":"516fa571d90a0c93134c953c15ce84dd31b96b4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 19 21:41:35 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":3}]},"message":"remove unused variable. use elif instead of if for linux vs. bsd detection","epoch":1632112895,"epoch_utc":null},{"commit":"a19c12096a8e8de02a6ff761cc9c13ec249d416e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 19 13:18:23 2021 -0700","stats":{"files_changed":1,"insertions":373,"deletions":143,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":516}]},"message":"initial working parser for both linux and bsd","epoch":1632082703,"epoch_utc":null},{"commit":"758f27945de4f0897405eba02c7908d815ce6e9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 15:09:56 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":18}]},"message":"change data_bytes and bytes to sent_bytes and response_bytes","epoch":1631916596,"epoch_utc":null},{"commit":"8b1e8d58df22f8542ccaf7bf3e1eabe6132e7a42","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 14:44:49 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":1}]},"message":"remove unneeded line","epoch":1631915089,"epoch_utc":null},{"commit":"b967489d085319facee077958deaa04956a98343","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 14:42:30 2021 -0700","stats":{"files_changed":1,"insertions":81,"deletions":40,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":121}]},"message":"complete linux coverage including summary","epoch":1631914950,"epoch_utc":null},{"commit":"870d0218be2641e3eddb114c23d54deb23155f25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 10:34:05 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2}]},"message":"add unbuffer note","epoch":1631900045,"epoch_utc":null},{"commit":"84020bc2af294cb065105f1399453aefc98eb180","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 10:26:47 2021 -0700","stats":{"files_changed":7,"insertions":12,"deletions":6,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/utils.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":6},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"change error_msg to error in -q result docs","epoch":1631899607,"epoch_utc":null},{"commit":"4efe5344e069ed921f208bcbbd097705be2d3b4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 10:20:22 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add links to HN and Reddit","epoch":1631899222,"epoch_utc":null},{"commit":"9182c545134b3d56d27d2c1d9bda678532bdc3fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 08:24:56 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":8,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":11}]},"message":"formatting","epoch":1631892296,"epoch_utc":null},{"commit":"28f0ab0b02d21fc060f1ac7181f85552798dc4bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 08:21:13 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/ls_s.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":2}]},"message":"update streaming error messages","epoch":1631892073,"epoch_utc":null},{"commit":"90d1a30696b2cbfbb06a55cc0cf920cf8ecd89aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 17 08:05:23 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting","epoch":1631891123,"epoch_utc":null},{"commit":"130b3738cc57fe261e8ef881a57b7836acd7e7e9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 22:32:46 2021 -0700","stats":{"files_changed":4,"insertions":21,"deletions":26,"files":["jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":8},{"name":"jc/parsers/ls_s.py","lines_changed":8},{"name":"jc/parsers/ping_s.py","lines_changed":14},{"name":"jc/utils.py","lines_changed":17}]},"message":"shorten successful yield to a single line","epoch":1631856766,"epoch_utc":null},{"commit":"92c7357615af7689db273aa78d666b35a2ec7a70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 22:04:44 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":2}]},"message":"formatting","epoch":1631855084,"epoch_utc":null},{"commit":"c80f8633349c00ea461b8927f9949fe19b2f46ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 22:04:31 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/foo.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":10}]},"message":"simplify return condition formatting","epoch":1631855071,"epoch_utc":null},{"commit":"4642c20179d4643e0cf1970b264da7d9d91628de","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 21:55:40 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"templates/readme_template","lines_changed":4}]},"message":"formatting","epoch":1631854540,"epoch_utc":null},{"commit":"5288eb22aadbbc1005b16428b94d2b07e9a75e3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 21:43:36 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add info about streaming parser performance characteristics","epoch":1631853816,"epoch_utc":null},{"commit":"df8387a1a99df69eac5005662aaf56d506fa0efd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 21:37:54 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"streaming parsers cannot be used with the magic syntax","epoch":1631853474,"epoch_utc":null},{"commit":"cc38c27f44d3f088609b878304cab8eed75fc8f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 21:33:57 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"templates/readme_template","lines_changed":3}]},"message":"formatting","epoch":1631853237,"epoch_utc":null},{"commit":"64f5357d69fe88b45d710d38948969699e1ca12f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 21:31:45 2021 -0700","stats":{"files_changed":2,"insertions":84,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":42},{"name":"templates/readme_template","lines_changed":42}]},"message":"add streaming parsers section","epoch":1631853105,"epoch_utc":null},{"commit":"51debb5649bef431e51e543f1c9270e2810aa58f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 20:45:01 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"add vmstat parser and change from linebuffer to unbuffer","epoch":1631850301,"epoch_utc":null},{"commit":"b48d05a4313b27cf5e69d3e4259542e0b131b60f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 20:41:56 2021 -0700","stats":{"files_changed":5,"insertions":15,"deletions":15,"files":["README.md","jc/cli.py","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":8},{"name":"man/jc.1","lines_changed":10},{"name":"templates/manpage_template","lines_changed":8},{"name":"templates/readme_template","lines_changed":2}]},"message":"change from line buffer output to unbuffer output","epoch":1631850116,"epoch_utc":null},{"commit":"4e7f6b337db61b8a106cf958f6b874157909c87a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 20:26:56 2021 -0700","stats":{"files_changed":3,"insertions":17,"deletions":25,"files":["jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":15},{"name":"jc/parsers/ls_s.py","lines_changed":9},{"name":"jc/parsers/ping_s.py","lines_changed":18}]},"message":"simplify yield statements","epoch":1631849216,"epoch_utc":null},{"commit":"a509d99cafd80862721595ee59ccc4a471b5e5a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Sep 16 20:25:28 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":8}]},"message":"add stream_success dictionary","epoch":1631849128,"epoch_utc":null},{"commit":"481e45fb644ac88fa77ef35643b793f179fe6859","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Sep 14 06:02:55 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2}]},"message":"limit parse error msg lenght","epoch":1631624575,"epoch_utc":null},{"commit":"e9038e1720e1c0e520e2f29b718aa8505cbbb9a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 21:15:26 2021 -0700","stats":{"files_changed":1,"insertions":66,"deletions":0,"files":["docs/parsers/ping_s.md"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":66}]},"message":"initial streaming ping docs","epoch":1631592926,"epoch_utc":null},{"commit":"8fd9e582bf29275c4daaa3be88ea8d196411b34a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 21:15:08 2021 -0700","stats":{"files_changed":1,"insertions":15,"deletions":17,"files":["docs/parsers/ls_s.md"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":32}]},"message":"doc update","epoch":1631592908,"epoch_utc":null},{"commit":"c1fd6f48a5a3501499c9fca7239673b8555cc7c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 21:14:56 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["docs/utils.md"],"file_stats":[{"name":"docs/utils.md","lines_changed":6}]},"message":"add stream_error docs","epoch":1631592896,"epoch_utc":null},{"commit":"af615c7f4b3f589ffc1b37cf9834062a04c013cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 21:14:38 2021 -0700","stats":{"files_changed":6,"insertions":26,"deletions":5,"files":["CHANGELOG","README.md","jc/cli.py","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"README.md","lines_changed":4},{"name":"jc/cli.py","lines_changed":7},{"name":"man/jc.1","lines_changed":11},{"name":"templates/manpage_template","lines_changed":4},{"name":"templates/readme_template","lines_changed":3}]},"message":"add line buffer output option","epoch":1631592878,"epoch_utc":null},{"commit":"bf0bc32d7ae6cabe07906207f4f08c2e81802c80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 20:51:24 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"flush streamed text for better piping experience","epoch":1631591484,"epoch_utc":null},{"commit":"2d6b53e012181a4c33bab441880c47c0fc0b0601","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 19:50:51 2021 -0700","stats":{"files_changed":1,"insertions":36,"deletions":42,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":78}]},"message":"add pattern support. move unparsable line detection to standard streaming parser style","epoch":1631587851,"epoch_utc":null},{"commit":"51271fea0fbd7bd63863ba05c399b4675dc5b4bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 19:27:34 2021 -0700","stats":{"files_changed":1,"insertions":139,"deletions":149,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":288}]},"message":"somewhat working parser","epoch":1631586454,"epoch_utc":null},{"commit":"2deb473e0bc96c0e39ec4074a6df4b941ba2172b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:36:36 2021 -0700","stats":{"files_changed":1,"insertions":262,"deletions":0,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":262}]},"message":"initial streaming ping parser","epoch":1631583396,"epoch_utc":null},{"commit":"23eeb33b3da43a679c3bf3f3643cfa552a1164e1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:36:19 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"modify stream_error message","epoch":1631583379,"epoch_utc":null},{"commit":"f50dfaef45632241f8f6972fa19bb17c54a457ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:31:52 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":13,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":19}]},"message":"use stream_error function for exceptions. raise on non -l ls output","epoch":1631583112,"epoch_utc":null},{"commit":"55bb71e9d466cc9ee5f7fd8eca1101c941cbcb35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:30:20 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"add streaming ping parser. update streaming exception message","epoch":1631583020,"epoch_utc":null},{"commit":"dab9357d286962b70224d6fafbf90a4c0cbc9980","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:29:49 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":12,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":13}]},"message":"use stream_error function for exceptions","epoch":1631582989,"epoch_utc":null},{"commit":"27eb427245b5126335cef0adb5e57522272474b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 18:29:10 2021 -0700","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":16}]},"message":"add stream_error function","epoch":1631582950,"epoch_utc":null},{"commit":"260f3685d944ded84396ae3395773d6898803fb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 15:06:02 2021 -0700","stats":{"files_changed":1,"insertions":112,"deletions":0,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":112}]},"message":"add streaming parser template","epoch":1631570762,"epoch_utc":null},{"commit":"76e78fc0c34b88a90fef876eebef92bd71cd772c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 15:05:49 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":11,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":20}]},"message":"doc updates","epoch":1631570749,"epoch_utc":null},{"commit":"1ac944fa028a400ae7b39b811fcf368c9bf5e259","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 12:13:14 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2}]},"message":"add -q option info to docstring","epoch":1631560394,"epoch_utc":null},{"commit":"986bc9b042a940f8dd34f0541bcb9b5840df579e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 12:10:02 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":43,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":52}]},"message":"cleanup unused code","epoch":1631560202,"epoch_utc":null},{"commit":"5a7942069b1f3ef3b45992b482bfb6bb973f7e8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 10:56:05 2021 -0700","stats":{"files_changed":1,"insertions":28,"deletions":28,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":56}]},"message":"add support for parent field","epoch":1631555765,"epoch_utc":null},{"commit":"f6c6fc13ac4c779667807df12444a41ef28a8011","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Sep 13 08:55:19 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"enhance error msg when streaming parser is used","epoch":1631548519,"epoch_utc":null},{"commit":"1d8cfae89f24192b6fab087f59c9b8988ef363dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 12 17:30:56 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":11}]},"message":"only print _meta object if -q or quiet flag is used. Also, add message to the end of exceptions informing of the -q option to ignore errors","epoch":1631493056,"epoch_utc":null},{"commit":"787df51239ffa8260b48d6a3a58e6ff07d5e0f64","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 12 16:42:47 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2}]},"message":"remove `\\n` from end of line in exception message","epoch":1631490167,"epoch_utc":null},{"commit":"5e7f302a9c45343c36e81944db38a435e6c8a20c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 12 16:35:46 2021 -0700","stats":{"files_changed":1,"insertions":12,"deletions":10,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":22}]},"message":"Raise exceptions unless the -q or quiet flag are used","epoch":1631489746,"epoch_utc":null},{"commit":"3d10fd40b56264836874da19aa72351e6d5cfbf7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Sep 12 16:27:00 2021 -0700","stats":{"files_changed":1,"insertions":14,"deletions":13,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":27}]},"message":"remove print flush for better performance. Roll json.JSONDecodeError into the parse try/except block","epoch":1631489220,"epoch_utc":null},{"commit":"57e3bf239cc76d3b0ee0eddc618171eb90c28dec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 10 15:02:15 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":6},{"name":"jc/parsers/ls_s.py","lines_changed":6}]},"message":"formatting for docs","epoch":1631311335,"epoch_utc":null},{"commit":"ccb09861e82044e17ec51277b3c8875e5ba9d87d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 10 15:01:02 2021 -0700","stats":{"files_changed":2,"insertions":20,"deletions":20,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":20},{"name":"jc/parsers/ls_s.py","lines_changed":20}]},"message":"formatting for docs","epoch":1631311262,"epoch_utc":null},{"commit":"94551d75dd926c7f558e5cab47ba9483a20c6b3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 10 14:27:50 2021 -0700","stats":{"files_changed":10,"insertions":116,"deletions":49,"files":["CHANGELOG","README.md","docs/parsers/ls_s.md","docs/readme.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz","mangen.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":6},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/ls_s.md","lines_changed":89},{"name":"docs/readme.md","lines_changed":25},{"name":"jc/__init__.py","lines_changed":27},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":7},{"name":"man/jc.1.gz","lines_changed":null},{"name":"mangen.py","lines_changed":8},{"name":"setup.py","lines_changed":2}]},"message":"doc update","epoch":1631309270,"epoch_utc":null},{"commit":"6e21218425359210591827e936b8d48d9644df92","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 10 14:14:10 2021 -0700","stats":{"files_changed":2,"insertions":234,"deletions":3,"files":["jc/cli.py","jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":23},{"name":"jc/parsers/ls_s.py","lines_changed":214}]},"message":"working prototype of streaming ls parser","epoch":1631308450,"epoch_utc":null},{"commit":"ff0fda48fc48760a7293528155d222c6456f84c4","merge":"e08b61f 528aac7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Sep 10 08:08:45 2021 -0700","message":"Merge pull request #168 from kellyjonbrazil/master\n\nSync master to dev","epoch":1631286525,"epoch_utc":null},{"commit":"528aac7ad87feae2093aba563c83a29ebf75e5f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Sep 8 07:00:50 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":38,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":23},{"name":"templates/readme_template","lines_changed":23}]},"message":"use subprocess in python example","epoch":1631109650,"epoch_utc":null},{"commit":"ab482e521d4cecfffa5393805b1d7de4389db49a","merge":"9c1ad92 e08b61f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 31 09:50:38 2021 -0700","message":"Merge pull request #163 from kellyjonbrazil/dev\n\nDev v1.16.2","epoch":1630428638,"epoch_utc":null},{"commit":"e08b61fa81b1bd2304d04db5cdc8b809fe9c6032","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 31 08:54:23 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add schema note to sfdisk","epoch":1630425263,"epoch_utc":null},{"commit":"ce61bd1d2b4323d9c2d0454c4f646521913ae20d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 31 08:50:42 2021 -0700","stats":{"files_changed":7,"insertions":73,"deletions":7,"files":["tests/fixtures/debian10/sfdisk-F2.json","tests/fixtures/debian10/sfdisk-F2.out","tests/fixtures/debian10/sfdisk-l2.json","tests/fixtures/debian10/sfdisk-l2.out","tests/fixtures/debian10/sfdisk-l3.json","tests/fixtures/debian10/sfdisk-l3.out","tests/test_sfdisk.py"],"file_stats":[{"name":"tests/fixtures/debian10/sfdisk-F2.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-F2.out","lines_changed":6},{"name":"tests/fixtures/debian10/sfdisk-l2.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-l2.out","lines_changed":15},{"name":"tests/fixtures/debian10/sfdisk-l3.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-l3.out","lines_changed":13},{"name":"tests/test_sfdisk.py","lines_changed":43}]},"message":"add tests for -F fixes","epoch":1630425042,"epoch_utc":null},{"commit":"7b708f75182bf3ed33478a7de62e9c2496f0b994","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 31 08:39:54 2021 -0700","stats":{"files_changed":3,"insertions":11,"deletions":5,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-l.json","tests/fixtures/debian10/sfdisk-l.json"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":12},{"name":"tests/fixtures/centos-8/sfdisk-l.json","lines_changed":2},{"name":"tests/fixtures/debian10/sfdisk-l.json","lines_changed":2}]},"message":"Don't convert 'size' to int, except for legacy -d support. Change partition table detection logic to fix -F output","epoch":1630424394,"epoch_utc":null},{"commit":"89ca50c7fc1bf64f34c915e65031d0bc520e6466","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 21:56:36 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/sfdisk.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add -l to sfdisk raw example","epoch":1630385796,"epoch_utc":null},{"commit":"fb54899dcc2160450448e0d6111557cebdeb0d4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 21:53:40 2021 -0700","stats":{"files_changed":4,"insertions":38,"deletions":23,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":59},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update","epoch":1630385620,"epoch_utc":null},{"commit":"0a625ad7ddd9c804052d98930165cd22049546bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 21:52:55 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/sfdisk.py"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":2}]},"message":"remove unneeded lines","epoch":1630385575,"epoch_utc":null},{"commit":"d32e45efbe0d71a9a132abfb2855f1f4ccee9916","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 21:49:07 2021 -0700","stats":{"files_changed":6,"insertions":69,"deletions":1,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-F.json","tests/fixtures/centos-8/sfdisk-l.json","tests/fixtures/debian10/sfdisk-F.json","tests/fixtures/debian10/sfdisk-l.json","tests/test_sfdisk.py"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":9},{"name":"tests/fixtures/centos-8/sfdisk-F.json","lines_changed":1},{"name":"tests/fixtures/centos-8/sfdisk-l.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-F.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-l.json","lines_changed":1},{"name":"tests/test_sfdisk.py","lines_changed":57}]},"message":"add sfdisk tests","epoch":1630385347,"epoch_utc":null},{"commit":"c77696bc789cdfd286a7479c3d9f67d23149d0ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 20:55:26 2021 -0700","stats":{"files_changed":3,"insertions":6,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":4},{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1630382126,"epoch_utc":null},{"commit":"736fde9e784587cb2ef344bbf31d876eafea7741","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 30 20:51:19 2021 -0700","stats":{"files_changed":5,"insertions":147,"deletions":28,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-F.out","tests/fixtures/centos-8/sfdisk-l.out","tests/fixtures/debian10/sfdisk-F.out","tests/fixtures/debian10/sfdisk-l.out"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":127},{"name":"tests/fixtures/centos-8/sfdisk-F.out","lines_changed":9},{"name":"tests/fixtures/centos-8/sfdisk-l.out","lines_changed":24},{"name":"tests/fixtures/debian10/sfdisk-F.out","lines_changed":3},{"name":"tests/fixtures/debian10/sfdisk-l.out","lines_changed":12}]},"message":"add support for newer versions of sfdisk","epoch":1630381879,"epoch_utc":null},{"commit":"9c1ad92fed9a4b3a0da66d6b71deec8d608edfa9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:31:51 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":12}]},"message":"fix examples","epoch":1629999111,"epoch_utc":null},{"commit":"1a9fd2139d156a51bf2d25db951e47e96da77f7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:29:13 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"add \"For new parsers:\"","epoch":1629998953,"epoch_utc":null},{"commit":"7661e7f27a4e5c379ea37c7f95496aca2c1e2910","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:27:11 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"formatting","epoch":1629998831,"epoch_utc":null},{"commit":"f857b7fbf7862ddd7eb5ab20470f5dbaacc62119","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:25:37 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"add custom parser folder info","epoch":1629998737,"epoch_utc":null},{"commit":"d94d12dbc5fb3e3712b2f1aea949013cb8213e28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:20:53 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":11}]},"message":"add foo parser template info","epoch":1629998453,"epoch_utc":null},{"commit":"700916276ae8b0a106410e3dd2ea3e00248ee37a","merge":"473f706 834e523","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 26 10:01:08 2021 -0700","message":"Merge pull request #159 from kellyjonbrazil/master\n\nSync Master to dev","epoch":1629997268,"epoch_utc":null},{"commit":"834e52369ceb479776ddc8fc2931790af53b9c18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 16 10:33:26 2021 -0700","stats":{"files_changed":3,"insertions":1,"deletions":5,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":6},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update man page","epoch":1629135206,"epoch_utc":null},{"commit":"1ce53365de61421c8bd43e04590038083894153b","merge":"2689697 473f706","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 16 10:32:03 2021 -0700","message":"Merge pull request #156 from kellyjonbrazil/dev\n\nDev v1.16.1","epoch":1629135123,"epoch_utc":null},{"commit":"473f70668f04a38765559c5dbf0468af24d625c9","merge":"0dbd270 2689697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 16 10:28:11 2021 -0700","message":"Merge branch 'master' into dev\n\n# Conflicts:\n# jc/man/jc.1.gz\n# man/jc.1\n# man/jc.1.gz","epoch":1629134891,"epoch_utc":null},{"commit":"0dbd2702f6ab2640b2ccdea92411ac0789673e66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 17:17:51 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]},"message":"reformat doc_text for nicer indentation","epoch":1628900271,"epoch_utc":null},{"commit":"01e3764a9b6ba902aea522bf6b7005fd37b3acbb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 16:03:46 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"fix join syntax","epoch":1628895826,"epoch_utc":null},{"commit":"ff9c81722ae7221364e9bcb83d98b16b4263334e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 16:01:45 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"try/except for shlex.join since only available in python 3.8","epoch":1628895705,"epoch_utc":null},{"commit":"166aef7a022ed29862ab2e0702d53c591bb5cc77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 15:22:33 2021 -0700","stats":{"files_changed":6,"insertions":4,"deletions":4,"files":["docs/parsers/stat.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz","setup.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1628893353,"epoch_utc":null},{"commit":"78caf7646baf5d35602fd76771443cd64bd783af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 15:19:41 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add stat fix","epoch":1628893181,"epoch_utc":null},{"commit":"1f99d40cecc5d88a246f3558f71db376ebd885c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 15:19:31 2021 -0700","stats":{"files_changed":4,"insertions":17,"deletions":2,"files":["jc/parsers/stat.py","tests/fixtures/osx-10.14.6/stat-filename-with-spaces.json","tests/fixtures/osx-10.14.6/stat-filename-with-spaces.out","tests/test_stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"tests/fixtures/osx-10.14.6/stat-filename-with-spaces.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/stat-filename-with-spaces.out","lines_changed":2},{"name":"tests/test_stat.py","lines_changed":12}]},"message":"fix filename with spaces for osx/bsd","epoch":1628893171,"epoch_utc":null},{"commit":"4c2912d3d5ec1fd2d5d891f2b3c58a33dd8572be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 15:19:17 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"use shlex.join to quote run_command_str for better error messages","epoch":1628893157,"epoch_utc":null},{"commit":"45e6e06be581f787f707e3f5645129c713478d16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 14:19:45 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"add glob and process substitution fixes","epoch":1628889585,"epoch_utc":null},{"commit":"fdbe3e05f323c95687a1137983f9623911008ca2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Aug 13 14:19:26 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"fix issue with globs not including filenames with spaces with magic syntax (introduced during switch to use subprocess to grab process exit code). No longer need to shlex quote arguments.","epoch":1628889566,"epoch_utc":null},{"commit":"7cc168f6409af13fda815d0d2a6db25b7c9ba367","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 12 16:55:07 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add comment","epoch":1628812507,"epoch_utc":null},{"commit":"ff2d609c9b5f5f57f3331e5593e8fe87c01654dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 12 16:36:35 2021 -0700","stats":{"files_changed":1,"insertions":12,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":13}]},"message":"add close_fds=False in subprocess.Popen() to allow process substitution in magic syntax. Also check for too many open files exception","epoch":1628811395,"epoch_utc":null},{"commit":"2689697b4c21758903e5f74ec069e89be585aba2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 22 17:03:00 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting","epoch":1626998580,"epoch_utc":null},{"commit":"f90a0ea8ab15629b7786e4431e9c968c3a896ee0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 22 12:20:48 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":4}]},"message":"formatting","epoch":1626981648,"epoch_utc":null},{"commit":"caabe60f849fb2422e47b8f10e0ff35beb706dcd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 22 12:20:31 2021 -0700","stats":{"files_changed":5,"insertions":3,"deletions":3,"files":["docs/parsers/kv.md","jc/man/jc.1.gz","jc/parsers/kv.py","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/kv.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/kv.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"fix kv example","epoch":1626981631,"epoch_utc":null},{"commit":"2bef4ed6038201f54339e750a833260dc1998591","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 21 08:47:16 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","README.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"README.md","lines_changed":4}]},"message":"package updates","epoch":1626882436,"epoch_utc":null},{"commit":"ee57be533b12593a33a2abbb2892697f0bd40c65","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 20 12:35:02 2021 -0500","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2}]},"message":"fix sfdisk example","epoch":1626809702,"epoch_utc":null},{"commit":"c5b7aaca25d6b66d3e44256c2c6760a4cf2956ec","merge":"3b22ce4 7a1be90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 20 10:19:14 2021 -0700","message":"Merge pull request #149 from kellyjonbrazil/dev\n\nDev v1.16.0","epoch":1626801554,"epoch_utc":null},{"commit":"7a1be905bb8654558afb5979b0bd78d4a8488874","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 20 12:15:29 2021 -0500","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"version bump","epoch":1626808529,"epoch_utc":null},{"commit":"5798495a11afa2f72ce6f79be785d46240fcbeb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 20 12:13:33 2021 -0500","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":6}]},"message":"add 1.15.7 to 1.16.0 changes","epoch":1626808413,"epoch_utc":null},{"commit":"46171e220252ec92d18e744d2a57c1d6a6dc19f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 20 12:13:14 2021 -0500","stats":{"files_changed":1,"insertions":69,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":69}]},"message":"add sfdisk example","epoch":1626808394,"epoch_utc":null},{"commit":"dd5c924ff505dcc2a9c851d2425677bdf16ea462","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 19 12:13:46 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add man page location change","epoch":1626722026,"epoch_utc":null},{"commit":"30c4ab297658228a07ef9b1585516719af3febb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 19 12:08:50 2021 -0700","stats":{"files_changed":3,"insertions":515,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":515},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"new man page location","epoch":1626721730,"epoch_utc":null},{"commit":"26ea4d47b33277efb0ddafe8f421791696277c07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 19 12:04:25 2021 -0700","stats":{"files_changed":5,"insertions":14,"deletions":3,"files":["CHANGELOG","MANIFEST.in","jc/__init__.py","mangen.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":10},{"name":"MANIFEST.in","lines_changed":1},{"name":"jc/__init__.py","lines_changed":2},{"name":"mangen.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump and deprecate /man/jc.1.gz and /jc/man/jc.1.gz","epoch":1626721465,"epoch_utc":null},{"commit":"2732cd175c1e878210707162de3928f33fb2f201","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 12 08:10:18 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["CHANGELOG","MANIFEST.in"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"MANIFEST.in","lines_changed":1}]},"message":"include CHANGELOG in source distribution","epoch":1626102618,"epoch_utc":null},{"commit":"3e54b597be88b0e342e4361b7f2c1af447f9482b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 7 09:00:19 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add timezone change for unit tests","epoch":1625673619,"epoch_utc":null},{"commit":"f10ebea20962084833e5c1ebd9bc90a251bf3ff4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 7 08:53:52 2021 -0700","stats":{"files_changed":11,"insertions":78,"deletions":0,"files":["tests/test_date.py","tests/test_dig.py","tests/test_dir.py","tests/test_last.py","tests/test_ls.py","tests/test_rpm_qai.py","tests/test_stat.py","tests/test_systeminfo.py","tests/test_upower.py","tests/test_utils.py","tests/test_who.py"],"file_stats":[{"name":"tests/test_date.py","lines_changed":7},{"name":"tests/test_dig.py","lines_changed":7},{"name":"tests/test_dir.py","lines_changed":7},{"name":"tests/test_last.py","lines_changed":7},{"name":"tests/test_ls.py","lines_changed":7},{"name":"tests/test_rpm_qai.py","lines_changed":7},{"name":"tests/test_stat.py","lines_changed":7},{"name":"tests/test_systeminfo.py","lines_changed":7},{"name":"tests/test_upower.py","lines_changed":7},{"name":"tests/test_utils.py","lines_changed":8},{"name":"tests/test_who.py","lines_changed":7}]},"message":"update tests to set correct timezone on POSIX systems","epoch":1625673232,"epoch_utc":null},{"commit":"2c6f3993cb4c5e559dbac7a479ec889aa2cba752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 1 15:53:10 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/route.md","jc/man/jc.1.gz","jc/parsers/route.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/route.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"remove extra comma","epoch":1625179990,"epoch_utc":null},{"commit":"708a696920b52c2614edcdba264912527b2dfbef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 1 15:51:38 2021 -0700","stats":{"files_changed":3,"insertions":0,"deletions":2,"files":["docs/parsers/route.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/route.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"remove extra lines","epoch":1625179898,"epoch_utc":null},{"commit":"20bbb5d331575c8fc33ba63643882a62650c97b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 1 15:50:55 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":2}]},"message":"remove extra lines","epoch":1625179855,"epoch_utc":null},{"commit":"223e785b547d9376174efa15321d60a533847c57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 17:07:43 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/sfdisk.py"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":8}]},"message":"rename variable","epoch":1625098063,"epoch_utc":null},{"commit":"3d78692c59980e4d70361d3a9f74bacc3f21376e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 16:54:34 2021 -0700","stats":{"files_changed":11,"insertions":150,"deletions":1,"files":["tests/fixtures/centos-7.7/sfdisk-d-multi.json","tests/fixtures/centos-7.7/sfdisk-d-multi.out","tests/fixtures/centos-7.7/sfdisk-d.json","tests/fixtures/centos-7.7/sfdisk-d.out","tests/fixtures/centos-7.7/sfdisk-l-multi.json","tests/fixtures/centos-7.7/sfdisk-l-multi.out","tests/fixtures/centos-7.7/sfdisk-l.json","tests/fixtures/centos-7.7/sfdisk-luB.json","tests/fixtures/centos-7.7/sfdisk-luM.json","tests/fixtures/centos-7.7/sfdisk-luS.json","tests/test_sfdisk.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/sfdisk-d-multi.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-d-multi.out","lines_changed":16},{"name":"tests/fixtures/centos-7.7/sfdisk-d.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-d.out","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-l-multi.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-l-multi.out","lines_changed":21},{"name":"tests/fixtures/centos-7.7/sfdisk-l.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-luB.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-luM.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-luS.json","lines_changed":1},{"name":"tests/test_sfdisk.py","lines_changed":106}]},"message":"add sfdisk tests","epoch":1625097274,"epoch_utc":null},{"commit":"5321a15dcf13cf14efe578d0f66b651078c3d8a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 14:30:35 2021 -0700","stats":{"files_changed":4,"insertions":8,"deletions":8,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":8},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/sfdisk.py","lines_changed":8},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update examples","epoch":1625088635,"epoch_utc":null},{"commit":"a452f8252a593f7914ebece53af9d73f4fd11a19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 14:27:12 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":4},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/sfdisk.py","lines_changed":4},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"fix integer conversion","epoch":1625088432,"epoch_utc":null},{"commit":"49267f09ac01fead3b20b2d481bb5e0d07af1439","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 14:06:15 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/sfdisk.py"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":4}]},"message":"change to root prompt in examples","epoch":1625087175,"epoch_utc":null},{"commit":"db47f35783e46a8299533c22146d851509f6ceb2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 12:38:36 2021 -0700","stats":{"files_changed":15,"insertions":610,"deletions":3,"files":["CHANGELOG","README.md","docs/parsers/sfdisk.md","jc/__init__.py","jc/cli.py","jc/man/jc.1.gz","jc/parsers/sfdisk.py","jc/utils.py","man/jc.1.gz","setup.py","tests/fixtures/centos-7.7/sfdisk-d.out","tests/fixtures/centos-7.7/sfdisk-l.out","tests/fixtures/centos-7.7/sfdisk-luB.out","tests/fixtures/centos-7.7/sfdisk-luM.out","tests/fixtures/centos-7.7/sfdisk-luS.out"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/sfdisk.md","lines_changed":213},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/sfdisk.py","lines_changed":325},{"name":"jc/utils.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/sfdisk-d.out","lines_changed":8},{"name":"tests/fixtures/centos-7.7/sfdisk-l.out","lines_changed":14},{"name":"tests/fixtures/centos-7.7/sfdisk-luB.out","lines_changed":14},{"name":"tests/fixtures/centos-7.7/sfdisk-luM.out","lines_changed":14},{"name":"tests/fixtures/centos-7.7/sfdisk-luS.out","lines_changed":14}]},"message":"add working sfdisk parser","epoch":1625081916,"epoch_utc":null},{"commit":"d48abf312c1f55ab31aa11da2b6cf6bc8166733b","merge":"ff7ab0a 3b22ce4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 30 10:10:59 2021 -0700","message":"Merge pull request #147 from kellyjonbrazil/master\n\nsync to dev","epoch":1625073059,"epoch_utc":null},{"commit":"3b22ce41105387e7f46a410460cf04759feef197","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 28 08:04:46 2021 -0700","stats":{"files_changed":6,"insertions":6,"deletions":3,"files":["CHANGELOG","jc/__init__.py","jc/cli.py","jc/man/jc.1.gz","man/jc.1.gz","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"setup.py","lines_changed":2}]},"message":"fix local plugin parser issue where parser has .py in the name but it is not at the end","epoch":1624892686,"epoch_utc":null},{"commit":"c521ca5bc9e2b035cfef6ff65f6b303b3ec44296","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 11 11:41:16 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"change possible to available","epoch":1623436876,"epoch_utc":null},{"commit":"3ddc1c665990e1e732314330db214a81ab810fe9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 11 11:39:38 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add jello","epoch":1623436778,"epoch_utc":null},{"commit":"a8e19402b7d1f9f06bc40b81a15dec401154180c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 9 08:33:48 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["ADVANCED_USAGE.md"],"file_stats":[{"name":"ADVANCED_USAGE.md","lines_changed":4}]},"message":"remove temporary fix","epoch":1623252828,"epoch_utc":null},{"commit":"0927902b30654274743ab9092e90e768709a9937","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 8 16:51:03 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["ADVANCED_USAGE.md"],"file_stats":[{"name":"ADVANCED_USAGE.md","lines_changed":4}]},"message":"temp fix for wrong url","epoch":1623196263,"epoch_utc":null},{"commit":"572548b42fb6ed9d32a392503d44fac1a8f146d3","merge":"95aec9c ff7ab0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 27 17:00:54 2021 -0700","message":"Merge pull request #141 from kellyjonbrazil/dev\n\nDev v1.15.5","epoch":1622160054,"epoch_utc":null},{"commit":"ff7ab0a1ed7f468d0e84eb3bf0636f53913c490d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 27 16:58:14 2021 -0700","stats":{"files_changed":3,"insertions":0,"deletions":1,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc updates for v1.15.5","epoch":1622159894,"epoch_utc":null},{"commit":"5db71b05cb28691bbbaa5d668bcd4a4ac7e68b85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 25 09:47:24 2021 -0700","stats":{"files_changed":5,"insertions":3,"deletions":3,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/manpage_template","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add en_US.UTF-8 to LANG info","epoch":1621961244,"epoch_utc":null},{"commit":"f9b952885aa7f2b450786a08c3879d9e358886da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 21 10:21:21 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add python 3.9.5 packaged info","epoch":1621617681,"epoch_utc":null},{"commit":"e7983bc0b29abaca2147038dfad018cba1e67cdf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 21 10:16:19 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xml.md","docs/parsers/yaml.md"],"file_stats":[{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2}]},"message":"version bump","epoch":1621617379,"epoch_utc":null},{"commit":"473a6431425fc24a4cc83939ff592e0d49535b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 21 10:16:08 2021 -0700","stats":{"files_changed":4,"insertions":10,"deletions":3,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":11},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/readme_template","lines_changed":2}]},"message":"add windows msi info","epoch":1621617368,"epoch_utc":null},{"commit":"14f3d442cb86250b8f2cdfd7977938634b8abd6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 21 09:46:51 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"formatting","epoch":1621615611,"epoch_utc":null},{"commit":"d6f4ed9ab55fe9b7c2766fb437172af62a1d5c87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 21 09:46:34 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":2}]},"message":"add long-form UTC test","epoch":1621615594,"epoch_utc":null},{"commit":"1b8d654444ff8c8b8171c7ac63e2736447a36c09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 20 15:49:18 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add error message info","epoch":1621550958,"epoch_utc":null},{"commit":"6002af0dca334c0affaff3e9acdca416238c7d82","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 20 15:46:31 2021 -0700","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":11}]},"message":"add more error message detail to the user for ParseError and LibraryNotFound exceptions","epoch":1621550791,"epoch_utc":null},{"commit":"0924d822a30c8806f65574c010561cd6f7c8e181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 20 15:36:27 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":1,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":9}]},"message":"add windows example","epoch":1621550187,"epoch_utc":null},{"commit":"72a37b928924c3edde3a4edb952f98c94aa05f0b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 19 16:23:34 2021 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1621466614,"epoch_utc":null},{"commit":"5eef7bd769f8ffb03ba396833d1b33484041a99f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 19 16:14:26 2021 -0700","stats":{"files_changed":2,"insertions":16,"deletions":16,"files":["jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/xml.py","lines_changed":16},{"name":"jc/parsers/yaml.py","lines_changed":16}]},"message":"use LibraryNotInstalled exception instead of exiting via sys.exit","epoch":1621466066,"epoch_utc":null},{"commit":"c6893e1bd5283d982a7ecd6f84bdfdd0054ce7a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 19 16:13:05 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/exceptions.py"],"file_stats":[{"name":"jc/exceptions.py","lines_changed":4}]},"message":"add LibraryNotInstalled exception","epoch":1621465985,"epoch_utc":null},{"commit":"039f6612e491c6f821c001252e122e9b0a781104","merge":"9c57c09 95aec9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 18 10:29:02 2021 -0700","message":"Merge pull request #139 from kellyjonbrazil/master\n\nsync branches","epoch":1621358942,"epoch_utc":null},{"commit":"95aec9c6f9aa8fb4d0dae227410a1346d550f47f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 18 10:27:36 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["templates/manpage_template"],"file_stats":[{"name":"templates/manpage_template","lines_changed":6}]},"message":"add info about Magic syntax not supporting shell builtins","epoch":1621358856,"epoch_utc":null},{"commit":"4e9652a8ec2482a64dc029b0ce0e1047a3e49867","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 17 14:36:20 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"spelling","epoch":1621287380,"epoch_utc":null},{"commit":"773b7f4b1f23e04c90e602aab05bc1a7e5aae37b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 17 08:38:09 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"templates/readme_template","lines_changed":1}]},"message":"add space before exit code table","epoch":1621265889,"epoch_utc":null},{"commit":"d17ffde9cdc35392ae25d8e9de5328e46067df2a","merge":"efb1d3e 9c57c09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 17 08:35:13 2021 -0700","message":"Merge pull request #138 from kellyjonbrazil/dev\n\nDev v1.15.4","epoch":1621265713,"epoch_utc":null},{"commit":"9c57c09c00e64a9031391b9b70083ad6ecf0bc0b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 17 08:24:31 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update for release","epoch":1621265071,"epoch_utc":null},{"commit":"4d730a9de5a0d7c064a9a59e3add86e58d9ec492","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 20:57:17 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add UTC fix","epoch":1621223837,"epoch_utc":null},{"commit":"fc57bcfce24af23f077d6a73f1db4591d8f99c13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 20:51:39 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":3}]},"message":"fix for when UTC is referenced as \"Coordinated Universal Time\"","epoch":1621223499,"epoch_utc":null},{"commit":"fa5571486c3c19bb7e836f043545ea4f2509ed4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 20:33:03 2021 -0700","stats":{"files_changed":1,"insertions":10,"deletions":10,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":20}]},"message":"simplify json_out function","epoch":1621222383,"epoch_utc":null},{"commit":"9996c4fe23564dfb52e3c7dbdbd8bd67edfb1e95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:55:53 2021 -0700","stats":{"files_changed":7,"insertions":10,"deletions":10,"files":["EXAMPLES.md","docs/parsers/history.md","docs/parsers/jobs.md","jc/man/jc.1.gz","jc/parsers/history.py","jc/parsers/jobs.py","man/jc.1.gz"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":6},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":6},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update docs for shell builtins","epoch":1621220153,"epoch_utc":null},{"commit":"038d4290248e6bb94762bb51f69e9958f7c1fecb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:44:10 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":6,"files":["docs/parsers/dig.md","docs/parsers/dir.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":8},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc updates","epoch":1621219450,"epoch_utc":null},{"commit":"9bf6facb0d7d76583802309253e7d13ba5148997","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:43:10 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":6,"files":["jc/parsers/dir.py"],"file_stats":[{"name":"jc/parsers/dir.py","lines_changed":9}]},"message":"remove magic command capability since dir is a shell builtin","epoch":1621219390,"epoch_utc":null},{"commit":"965717886e4ebaa6a4a494f189d9fdd01e33eb21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:30:00 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add exceptions module info","epoch":1621218600,"epoch_utc":null},{"commit":"e9bfc3dd29f914fd91e937f06d7f59c0f91b8449","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:21:37 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"add time format, dig compatibility, windows colors fix","epoch":1621218097,"epoch_utc":null},{"commit":"f46b33eacf070b4dc72c8d8a66aae49abd149e5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:20:13 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2},{"name":"tests/test_utils.py","lines_changed":2}]},"message":"add windows time format","epoch":1621218013,"epoch_utc":null},{"commit":"f475fe44df2fb2661c5bce4d1e602a4bba7e87c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 19:09:53 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":3}]},"message":"add new time format for systeminfo","epoch":1621217393,"epoch_utc":null},{"commit":"5fdbe2962d84dad89de23f103d97b76b90450206","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 17:48:56 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":2}]},"message":"make dig compatible with all platforms","epoch":1621212536,"epoch_utc":null},{"commit":"ab291b9eef6ed5c8ab59b5652f676178941d5ce5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 17:48:40 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"only force enable colors when running on windows","epoch":1621212520,"epoch_utc":null},{"commit":"fd411fd77273cb7cf872c03ed6a258ccdee4d261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun May 16 17:43:05 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"attempt to get colors working on windows","epoch":1621212185,"epoch_utc":null},{"commit":"b1e95a60a2461dc401ffc299ef6338b65ef12691","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 13 08:42:27 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"remove unnecessary comment","epoch":1620920547,"epoch_utc":null},{"commit":"bb1439f0d53e87f636fba05fbd30c3c79fb16002","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 13 08:20:58 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":5}]},"message":"use ParseError exception from jc.exceptions module","epoch":1620919258,"epoch_utc":null},{"commit":"ba963d98a0a2b3a0dfca6b211096d802253da5fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 13 08:20:35 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/exceptions.py"],"file_stats":[{"name":"jc/exceptions.py","lines_changed":5}]},"message":"add exceptions module including ParseError","epoch":1620919235,"epoch_utc":null},{"commit":"83440ccb55d0db15b112b8b7d7352493ff516112","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 13 08:02:38 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"error message capitalization","epoch":1620918158,"epoch_utc":null},{"commit":"796f61bfa417afdc6ab48fddbb5502cd0659b840","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 17:01:09 2021 -0700","stats":{"files_changed":1,"insertions":10,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":13}]},"message":"handle case where the user pipes data and uses magic syntax simultaneously","epoch":1620864069,"epoch_utc":null},{"commit":"070cac4ae12282458a1e1fc8618ebc473d23cacf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 15:36:06 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"remove commented line","epoch":1620858966,"epoch_utc":null},{"commit":"3ed84f9f42e4e883ddaac28ab49d675600b49424","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 15:19:11 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":18}]},"message":"reorganize main function. remove pass condition.","epoch":1620857951,"epoch_utc":null},{"commit":"a205afb6f355edbb4b98200a980b9601ed0f0658","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 13:44:15 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"set run_command_str if run_command is set","epoch":1620852255,"epoch_utc":null},{"commit":"a6d983dd8f3871cbc2391c313340167829a575d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 13:38:08 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"move run_command_str variable","epoch":1620851888,"epoch_utc":null},{"commit":"b6c8d6d01d740827273265dbb0cfbaf7875ac7f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 13:18:58 2021 -0700","stats":{"files_changed":1,"insertions":45,"deletions":17,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":62}]},"message":"add exception handling for filenotfound or other subprocess.popen and json.dumps exceptions","epoch":1620850738,"epoch_utc":null},{"commit":"b5a5d5b133f1c0df8023776e59697b7579f8c18a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 11:36:27 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"set parser_name for magic syntax use","epoch":1620844587,"epoch_utc":null},{"commit":"da528e7814b0cf25a359c3556d0e286e7bf004b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 09:40:22 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"move separators to a variable","epoch":1620837622,"epoch_utc":null},{"commit":"4acebf4f621ac564f82e3a97e6810fbb08a9dbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 08:48:49 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"move variables","epoch":1620834529,"epoch_utc":null},{"commit":"4d40808d2b70b7543eadcfd2d35c16ebe91f2f9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 12 08:27:39 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":7}]},"message":"update comments","epoch":1620833259,"epoch_utc":null},{"commit":"c543f00bd3c737f73144bb2980d12793042459b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 14:30:46 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"simplify piped_output function","epoch":1620768646,"epoch_utc":null},{"commit":"947cf41dfab5811c0e76e371231c59a2d6372752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 12:42:21 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add exit code info","epoch":1620762141,"epoch_utc":null},{"commit":"8d8c58742e5106c3387a627cd1b1323a76cc9623","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 11:32:08 2021 -0700","stats":{"files_changed":5,"insertions":21,"deletions":15,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":13},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/manpage_template","lines_changed":10},{"name":"templates/readme_template","lines_changed":13}]},"message":"formatting","epoch":1620757928,"epoch_utc":null},{"commit":"995ecc9bfb0425b0ee9e4250395b0200b46c1e89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 11:11:17 2021 -0700","stats":{"files_changed":3,"insertions":15,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/manpage_template","lines_changed":15}]},"message":"add exit codes section","epoch":1620756677,"epoch_utc":null},{"commit":"21a15225ebff645439b12d6249dc3e28d7bc09ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 10:59:26 2021 -0700","stats":{"files_changed":2,"insertions":18,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":9},{"name":"templates/readme_template","lines_changed":9}]},"message":"add exit codes section","epoch":1620755966,"epoch_utc":null},{"commit":"48921d4584068fadb0f776ed7e81c21d89172e2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 10:50:35 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"ensure exit code never exceeds 255","epoch":1620755435,"epoch_utc":null},{"commit":"342db45edc94ab1c3b3ae70e7cf4ca4076e2c7eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 11 10:36:55 2021 -0700","stats":{"files_changed":1,"insertions":18,"deletions":10,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":28}]},"message":"fix combined exit codes","epoch":1620754615,"epoch_utc":null},{"commit":"5f88ecf8443bc6e9a7cda5bc60858f37cc09f4f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 21:23:23 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]},"message":"add comments to magic_parser return","epoch":1620707003,"epoch_utc":null},{"commit":"a56aebfe7024914d2c602278964b99d1443de335","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 21:09:00 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"remove side-effect comment since it is no longer relevant","epoch":1620706140,"epoch_utc":null},{"commit":"422bb744a82472546d62c72ba05eaa1d18d5068a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 21:03:30 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update man pages","epoch":1620705810,"epoch_utc":null},{"commit":"c3b814a15f571ac84a8ce0719d7fd88acf814caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 21:02:28 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":7}]},"message":"move imports to the top","epoch":1620705748,"epoch_utc":null},{"commit":"e4574047a0ef6fcd4a47142421a1d05795c7925a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 20:49:44 2021 -0700","stats":{"files_changed":1,"insertions":21,"deletions":21,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":42}]},"message":"update tests for magic_parser function","epoch":1620704984,"epoch_utc":null},{"commit":"0d7d7951f82627d1fb1e20d1398bd7f88c5ce1be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 18:58:45 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":12}]},"message":"don't reset sys.argv anymore. check for 'valid_command' instead","epoch":1620698325,"epoch_utc":null},{"commit":"da904e4770a20ae85fc67476ae4a529564d0a3ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 18:50:59 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"remove final \\n from stderr string when printing","epoch":1620697859,"epoch_utc":null},{"commit":"19b540041add64fe6650c3634ec869421ffbc769","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 18:31:30 2021 -0700","stats":{"files_changed":1,"insertions":82,"deletions":51,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":133}]},"message":"proof of concept for passing command exit codes when using magic syntax. Needs more testing","epoch":1620696690,"epoch_utc":null},{"commit":"f2ffb93eeaf4c8b5aa93f3e8808bdc044582e8a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 10:43:40 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":10,"files":["tests/test_ping.py"],"file_stats":[{"name":"tests/test_ping.py","lines_changed":10}]},"message":"formatting","epoch":1620668620,"epoch_utc":null},{"commit":"c0c0e05642e0f473cde34178d815978fff8fe1ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 10:40:13 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add dig `+noall +answer` support","epoch":1620668413,"epoch_utc":null},{"commit":"966978f17e40a338f982628825f30a19d4b84e4c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 10:39:51 2021 -0700","stats":{"files_changed":5,"insertions":72,"deletions":0,"files":[".../centos-7.7/ping6-ip-O-p-unparsable.json",".../centos-7.7/ping6-ip-O-p-unparsable.out",".../fixtures/osx-10.14.6/ping6-ip-unparsable.json","tests/fixtures/osx-10.14.6/ping6-ip-unparsable.out","tests/test_ping.py"],"file_stats":[{"name":".../centos-7.7/ping6-ip-O-p-unparsable.json","lines_changed":1},{"name":".../centos-7.7/ping6-ip-O-p-unparsable.out","lines_changed":27},{"name":".../fixtures/osx-10.14.6/ping6-ip-unparsable.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-unparsable.out","lines_changed":9},{"name":"tests/test_ping.py","lines_changed":34}]},"message":"add more unparsable line ping tests","epoch":1620668391,"epoch_utc":null},{"commit":"8ab08a5231e082940a62fcde4be218b7ba94be31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 10 10:13:52 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":4}]},"message":"doc update","epoch":1620666832,"epoch_utc":null},{"commit":"48e534fa03b92b2583c5c6269c76651f3aa420cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 7 16:55:18 2021 -0700","stats":{"files_changed":3,"insertions":17,"deletions":2,"files":["tests/fixtures/osx-10.14.6/dig-noall-answer.json","tests/fixtures/osx-10.14.6/dig-noall-answer.out","tests/test_dig.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/dig-noall-answer.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig-noall-answer.out","lines_changed":4},{"name":"tests/test_dig.py","lines_changed":14}]},"message":"add +noall +answer test","epoch":1620431718,"epoch_utc":null},{"commit":"61851c1bd02aa82d5d82e68595e45630ead13d34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 7 16:42:09 2021 -0700","stats":{"files_changed":2,"insertions":85,"deletions":3,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":40},{"name":"jc/parsers/dig.py","lines_changed":48}]},"message":"add support for +noall +answer","epoch":1620430929,"epoch_utc":null},{"commit":"3c51b2d83d301b4072bbb12fdba4f60b900573da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 7 13:50:28 2021 -0700","stats":{"files_changed":3,"insertions":40,"deletions":0,"files":[".../centos-7.7/ping-ip-O-unparsedlines.json",".../centos-7.7/ping-ip-O-unparsedlines.out","tests/test_ping.py"],"file_stats":[{"name":".../centos-7.7/ping-ip-O-unparsedlines.json","lines_changed":1},{"name":".../centos-7.7/ping-ip-O-unparsedlines.out","lines_changed":27},{"name":"tests/test_ping.py","lines_changed":12}]},"message":"add tests for unparsable lines on linux","epoch":1620420628,"epoch_utc":null},{"commit":"ee3a28528e152c61f05bdf71f264fe38274b4190","merge":"fe1f101 916bcda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 10:03:58 2021 -0700","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev\n\n# Conflicts:\n# templates/readme_template","epoch":1620234238,"epoch_utc":null},{"commit":"916bcdae3881fc9c9f9a91c8c901a714cff3e1da","merge":"fb14f54 efb1d3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 10:02:25 2021 -0700","message":"Merge pull request #136 from kellyjonbrazil/master\n\nmerge changes from master","epoch":1620234145,"epoch_utc":null},{"commit":"efb1d3e6b2db920423511a9dcf4c5e5fd9d6af43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 09:23:21 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"templates/readme_template","lines_changed":4}]},"message":"add blog title and minor formatting","epoch":1620231801,"epoch_utc":null},{"commit":"4e6ae66bacc014e49c4a9229d10dcc8e95de436c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 09:20:47 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting","epoch":1620231647,"epoch_utc":null},{"commit":"5ee88e7b679bc163a1916d560be6ff29f51699e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 09:18:45 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":10}]},"message":"add use cases section","epoch":1620231525,"epoch_utc":null},{"commit":"c3b68903cbd898f80438af342195eec7575aafd3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 09:17:11 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":10}]},"message":"add use cases section","epoch":1620231431,"epoch_utc":null},{"commit":"fe1f1013a74bdf6b4284f11dd59db8ea17e5e5d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 09:16:05 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":10}]},"message":"add use cases section","epoch":1620231365,"epoch_utc":null},{"commit":"fb14f5439f00d5eaf08651c552189fd4be7358d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 5 08:03:27 2021 -0700","stats":{"files_changed":4,"insertions":52,"deletions":3,"files":["jc/parsers/ping.py",".../osx-10.14.6/ping-ip-unknown-errors.json",".../osx-10.14.6/ping-ip-unknown-errors.out","tests/test_ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":7},{"name":".../osx-10.14.6/ping-ip-unknown-errors.json","lines_changed":1},{"name":".../osx-10.14.6/ping-ip-unknown-errors.out","lines_changed":35},{"name":"tests/test_ping.py","lines_changed":12}]},"message":"fix and tests for unknown or unparsable errors","epoch":1620227007,"epoch_utc":null},{"commit":"5ca0fc364eb22d583bee5633cdd7183c1d70bb6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 4 19:05:20 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/parsers/ping.md"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":1}]},"message":"add unparsed_line to docs","epoch":1620180320,"epoch_utc":null},{"commit":"a1fe7037e5267ec4aced719eff3715085eb35bca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 4 19:04:16 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":10}]},"message":"add unparsed_line field if line cannot be parsed","epoch":1620180256,"epoch_utc":null},{"commit":"c2af7d113ed8e8cf9af985c969cf29858a3c26a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 4 15:35:47 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["CHANGELOG","docs/parsers/ping.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"docs/parsers/ping.md","lines_changed":2}]},"message":"add ping updates","epoch":1620167747,"epoch_utc":null},{"commit":"ff034e401d5c33efbc3c4bc2f0e386d81eaae7fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 4 15:34:45 2021 -0700","stats":{"files_changed":1,"insertions":59,"deletions":43,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":102}]},"message":"use try/except to make parser more resilient against unknown error types","epoch":1620167685,"epoch_utc":null},{"commit":"5abe095beb4b668e5f55fe8c9588677547e4c2a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 3 15:26:16 2021 -0700","stats":{"files_changed":1,"insertions":14,"deletions":3,"files":["docs/parsers/ping.md"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":17}]},"message":"update ping docs","epoch":1620080776,"epoch_utc":null},{"commit":"33de5f01e638953c83bb0960dc3550ca4547849b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 3 15:16:47 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["jc/__init__.py","setup.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":4},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1620080207,"epoch_utc":null},{"commit":"8ce155d843806be4ad23491b4401e4eda02e2a1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 3 15:16:33 2021 -0700","stats":{"files_changed":5,"insertions":86,"deletions":23,"files":["CHANGELOG","jc/parsers/ping.py",".../fixtures/osx-10.14.6/ping-ip-unreachable.json","tests/fixtures/osx-10.14.6/ping-ip-unreachable.out","tests/test_ping.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/ping.py","lines_changed":56},{"name":".../fixtures/osx-10.14.6/ping-ip-unreachable.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-unreachable.out","lines_changed":35},{"name":"tests/test_ping.py","lines_changed":14}]},"message":"add support for error replies in v4 ping on osx and bsd","epoch":1620080193,"epoch_utc":null},{"commit":"b921d5ec9583c8f8e992613ae2eaf62165722054","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 30 16:53:52 2021 -0700","stats":{"files_changed":1,"insertions":105,"deletions":6,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":111}]},"message":"initial support for error replies in bsd/osx","epoch":1619826832,"epoch_utc":null},{"commit":"e21542aaa2aa5f2f287ddc227df41ae47d761332","merge":"d24f9a8 6150aae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 30 10:31:55 2021 -0700","message":"Merge pull request #135 from kellyjonbrazil/dev\n\nDev clarify packaged binaries in readme","epoch":1619803915,"epoch_utc":null},{"commit":"6150aae0aeabafba26d9f119406b0660d9221cb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 30 10:31:02 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"clarify packaged binaries","epoch":1619803862,"epoch_utc":null},{"commit":"f27b35f37104ad2012c3bddde0bd94941af06894","merge":"bd428a9 d24f9a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 15:28:35 2021 -0700","message":"Merge pull request #131 from kellyjonbrazil/master\n\nsync branches","epoch":1619648915,"epoch_utc":null},{"commit":"d24f9a885d3954035a98a488671486408f509dca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 15:26:52 2021 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["CONTRIBUTING.md","README.md","templates/readme_template"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2},{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"fix contributing link","epoch":1619648812,"epoch_utc":null},{"commit":"48dd82c8d1b756c4e08d49b8234b8060080dc035","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 15:15:41 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"trigger page build on github pages","epoch":1619648141,"epoch_utc":null},{"commit":"e57167ad1f240de6ec5fc86c51cfb780535cd783","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 12:23:31 2021 -0700","message":"empty commit","epoch":1619637811,"epoch_utc":null},{"commit":"ada91376426ff359c495fb31081404a2cce72b5f","merge":"0c209db bd428a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 11:53:15 2021 -0700","message":"Merge pull request #130 from kellyjonbrazil/dev\n\nDev link updates","epoch":1619635995,"epoch_utc":null},{"commit":"bd428a9fd75327710dce96f3c95f74ab9d1beaad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 11:52:24 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"fix link","epoch":1619635944,"epoch_utc":null},{"commit":"934941332f91d9e2cc4e691b154bb5427166ed30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 11:50:10 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"templates/readme_template","lines_changed":6}]},"message":"minor link updates","epoch":1619635810,"epoch_utc":null},{"commit":"0c209dbd108638f89a43801126a332379be9ae8b","merge":"92e2252 56e041a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 11:36:05 2021 -0700","message":"Merge pull request #129 from kellyjonbrazil/dev\n\nDev update readme","epoch":1619634965,"epoch_utc":null},{"commit":"56e041aa260b2daf2f5662fae98645a93137adb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 28 11:34:51 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add Practical JSON at the Command Line blog link","epoch":1619634891,"epoch_utc":null},{"commit":"cf9d48582e4e5df6c8498b916a2f9cf036869f3d","merge":"35464bb 92e2252","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 13:17:20 2021 -0700","message":"Merge pull request #128 from kellyjonbrazil/master\n\nsync branches","epoch":1619468240,"epoch_utc":null},{"commit":"92e2252bee00482bb0eeae3074b107d4c8553e4c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 12:18:21 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"fix typo","epoch":1619464701,"epoch_utc":null},{"commit":"fd7861db11e5aaa17c4e7bbce942c0c096116e30","merge":"fcc7e52 35464bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 12:12:02 2021 -0700","message":"Merge pull request #127 from kellyjonbrazil/dev\n\nDev v1.15.3","epoch":1619464322,"epoch_utc":null},{"commit":"35464bbbfb6b424ef3ee1c855557ada1bf3769fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 12:08:10 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"date update","epoch":1619464090,"epoch_utc":null},{"commit":"db8ddd7f0e0c2a8bd3e545619e81d3d3972a4d7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 12:04:03 2021 -0700","stats":{"files_changed":5,"insertions":11,"deletions":17,"files":["jc/man/jc.1.gz","jc/parsers/ufw.py","man/jc.1.gz","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/ufw.py","lines_changed":24},{"name":"man/jc.1.gz","lines_changed":null},{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.json","lines_changed":2}]},"message":"fix for scenarios where the default port range didn't always display, or overrode existing port ranges.","epoch":1619463843,"epoch_utc":null},{"commit":"72207c54ee5734e3d2d3d1a063c8daf1edaa8815","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 10:02:02 2021 -0700","stats":{"files_changed":3,"insertions":102,"deletions":94,"files":["docs/parsers/ufw_appinfo.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/ufw_appinfo.md","lines_changed":196},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update ufw app info docs to support multiple apps (ufw app info all)","epoch":1619456522,"epoch_utc":null},{"commit":"a683f68003ea64dd5e2c4f06b53a1561ad774f12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 26 10:00:44 2021 -0700","stats":{"files_changed":9,"insertions":285,"deletions":202,"files":["EXAMPLES.md","jc/parsers/ufw_appinfo.py","tests/fixtures/generic/ufw-appinfo-msn.json","tests/fixtures/generic/ufw-appinfo-test.json","tests/fixtures/generic/ufw-appinfo-test2.json","tests/fixtures/generic/ufw-appinfo-test3.json","tests/fixtures/ubuntu-18.04/ufw-appinfo-all.json","tests/fixtures/ubuntu-18.04/ufw-appinfo-all.out","tests/test_ufw_appinfo.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":68},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":345},{"name":"tests/fixtures/generic/ufw-appinfo-msn.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw-appinfo-test.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw-appinfo-test2.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw-appinfo-test3.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-appinfo-all.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ufw-appinfo-all.out","lines_changed":51},{"name":"tests/test_ufw_appinfo.py","lines_changed":14}]},"message":"change schema to a list of dictionaries to support `ufw app info all` use case","epoch":1619456444,"epoch_utc":null},{"commit":"8d2d3db3fa969456342181a226bf54a3f1613542","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 21:10:21 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":0,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting","epoch":1619410221,"epoch_utc":null},{"commit":"eca785450d1c72687817d09259fa7cd33376fafc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 21:06:47 2021 -0700","stats":{"files_changed":5,"insertions":34,"deletions":13,"files":["CHANGELOG","README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":22},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/readme_template","lines_changed":22}]},"message":"add caveats to readme and manpage","epoch":1619410007,"epoch_utc":null},{"commit":"5b40a97ce417687b4e37f320b8a3f07dd7fd169c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 20:55:43 2021 -0700","stats":{"files_changed":3,"insertions":13,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/manpage_template","lines_changed":13}]},"message":"add caveats to man page","epoch":1619409343,"epoch_utc":null},{"commit":"66cb4e9bde81b9290c1addaf851de5d80a1b0702","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 20:49:35 2021 -0700","stats":{"files_changed":5,"insertions":216,"deletions":234,"files":["EXAMPLES.md","docs/parsers/ufw.md","jc/man/jc.1.gz","jc/parsers/ufw.py","man/jc.1.gz"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":96},{"name":"docs/parsers/ufw.md","lines_changed":226},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/ufw.py","lines_changed":128},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update ufw parser docs","epoch":1619408975,"epoch_utc":null},{"commit":"d1f33645caccdb3a55576081c4d355f997ac033c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 20:40:38 2021 -0700","stats":{"files_changed":7,"insertions":26,"deletions":10,"files":["tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw-numbered2.json","tests/fixtures/generic/ufw.json","tests/fixtures/ubuntu-18.04/ufw-numbered.json","tests/fixtures/ubuntu-18.04/ufw-numbered.out","tests/fixtures/ubuntu-18.04/ufw-verbose.json","tests/fixtures/ubuntu-18.04/ufw-verbose.out"],"file_stats":[{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw-numbered2.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-numbered.out","lines_changed":16},{"name":"tests/fixtures/ubuntu-18.04/ufw-verbose.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-verbose.out","lines_changed":10}]},"message":"update ufw tests","epoch":1619408438,"epoch_utc":null},{"commit":"5eff65c326675a449afd05a2af0a6c9bcf7b5e23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 25 20:10:52 2021 -0700","stats":{"files_changed":1,"insertions":85,"deletions":268,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":353}]},"message":"update schema to support port lists and port range lists. Also support other transports than tcp and udp","epoch":1619406652,"epoch_utc":null},{"commit":"929c38715d87bf9dd689507d319c22b90871ae1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 12:53:29 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"formatting","epoch":1619294009,"epoch_utc":null},{"commit":"8c91a7b7601a967cd9d8096433ffd4ad62b65ceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 12:52:26 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":4}]},"message":"formatting","epoch":1619293946,"epoch_utc":null},{"commit":"14289ecd6c022ad204444dff5b5e48f6024a5d0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 12:50:40 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":4}]},"message":"more timezone info","epoch":1619293840,"epoch_utc":null},{"commit":"b833c44783eb32f2fad24ca205b5b7eab854750f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 12:47:24 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add ufw-appinfo parser","epoch":1619293644,"epoch_utc":null},{"commit":"e23aa818eaa6d1a389ddef7dd2ad8f62b9f6ff25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 12:47:12 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":5}]},"message":"add tests section and timezone info","epoch":1619293632,"epoch_utc":null},{"commit":"473d919c1350a8dc34d233033a5a7d12c928e42d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 10:58:31 2021 -0700","stats":{"files_changed":4,"insertions":32,"deletions":0,"files":["runtests.sh","tests/fixtures/generic/ufw-numbered2.json","tests/fixtures/generic/ufw-numbered2.out","tests/test_ufw.py"],"file_stats":[{"name":"runtests.sh","lines_changed":1},{"name":"tests/fixtures/generic/ufw-numbered2.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-numbered2.out","lines_changed":18},{"name":"tests/test_ufw.py","lines_changed":12}]},"message":"add another ufw test sample","epoch":1619287111,"epoch_utc":null},{"commit":"9f925d6ac989a4f21a8c00c84fcf97dfb141e8c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 10:22:37 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update","epoch":1619284957,"epoch_utc":null},{"commit":"f6ca32b3a31f314fa0b31d9e8b5494491b928f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 24 10:22:19 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/ufw.md","jc/parsers/ufw.py"],"file_stats":[{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"jc/parsers/ufw.py","lines_changed":2}]},"message":"update ufw docs with a note on lists of ports","epoch":1619284939,"epoch_utc":null},{"commit":"4cbe84c3d6ac8a3b594feb525460f2a68f5d62b2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 16:15:04 2021 -0700","stats":{"files_changed":9,"insertions":110,"deletions":0,"files":["tests/fixtures/generic/ufw-appinfo-msn.json","tests/fixtures/generic/ufw-appinfo-msn.out","tests/fixtures/generic/ufw-appinfo-test.json","tests/fixtures/generic/ufw-appinfo-test.out","tests/fixtures/generic/ufw-appinfo-test2.json","tests/fixtures/generic/ufw-appinfo-test2.out","tests/fixtures/generic/ufw-appinfo-test3.json","tests/fixtures/generic/ufw-appinfo-test3.out","tests/test_ufw_appinfo.py"],"file_stats":[{"name":"tests/fixtures/generic/ufw-appinfo-msn.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-appinfo-msn.out","lines_changed":9},{"name":"tests/fixtures/generic/ufw-appinfo-test.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-appinfo-test.out","lines_changed":9},{"name":"tests/fixtures/generic/ufw-appinfo-test2.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-appinfo-test2.out","lines_changed":9},{"name":"tests/fixtures/generic/ufw-appinfo-test3.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-appinfo-test3.out","lines_changed":9},{"name":"tests/test_ufw_appinfo.py","lines_changed":70}]},"message":"add ufw-appinfo tests","epoch":1619219704,"epoch_utc":null},{"commit":"ffac5bf9d381305daa86e546f8570be092e5ff34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 16:14:53 2021 -0700","stats":{"files_changed":3,"insertions":12,"deletions":12,"files":["docs/parsers/ufw.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/ufw.md","lines_changed":24},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update","epoch":1619219693,"epoch_utc":null},{"commit":"9aa424f9f8c7e4e0dc29e2c58dac481098beba7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 16:14:39 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":12}]},"message":"fix ufw example","epoch":1619219679,"epoch_utc":null},{"commit":"0a8495c68e427e39bbda957dd933fa2a461092e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 16:14:25 2021 -0700","stats":{"files_changed":1,"insertions":12,"deletions":15,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":27}]},"message":"update docs","epoch":1619219665,"epoch_utc":null},{"commit":"6aea066cf024f92adf4b94eebc7d51430c22332c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 16:14:11 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/parsers/ufw_appinfo.py","lines_changed":6}]},"message":"make normalized list appear only when data exists. set magic commands","epoch":1619219651,"epoch_utc":null},{"commit":"ff3c2d809ec3ea6e556c302909a228ee670578c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 09:57:41 2021 -0700","stats":{"files_changed":6,"insertions":176,"deletions":25,"files":["EXAMPLES.md","README.md","docs/parsers/ufw_appinfo.md","jc/man/jc.1.gz","jc/parsers/ufw_appinfo.py","man/jc.1.gz"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":39},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":58},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":103},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add ufw-appinfo to docs","epoch":1619197061,"epoch_utc":null},{"commit":"145059fc8946b7026184139baea143c2869bc4e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 09:04:11 2021 -0700","stats":{"files_changed":1,"insertions":20,"deletions":8,"files":["jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/parsers/ufw_appinfo.py","lines_changed":28}]},"message":"clean up output if sections are blank","epoch":1619193851,"epoch_utc":null},{"commit":"20e5c19de448c1b979497817c887d8d2d6487839","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 08:30:34 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/parsers/ufw_appinfo.py","lines_changed":3}]},"message":"fix key error if tcp or udp don't exist","epoch":1619191834,"epoch_utc":null},{"commit":"4c98fd4b877c54e1cf7d285a29e178321be12f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 08:26:00 2021 -0700","stats":{"files_changed":2,"insertions":101,"deletions":1,"files":["docs/parsers/ufw_appinfo.md","jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"docs/parsers/ufw_appinfo.md","lines_changed":100},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":2}]},"message":"doc update","epoch":1619191560,"epoch_utc":null},{"commit":"125e54213e8d4dcfe2e3271456af80b3f79c0544","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 23 08:13:53 2021 -0700","stats":{"files_changed":1,"insertions":105,"deletions":48,"files":["jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/parsers/ufw_appinfo.py","lines_changed":153}]},"message":"update schema and add normalized fields","epoch":1619190833,"epoch_utc":null},{"commit":"0152e0665f87833250561d743144af35416992f8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 22 16:52:01 2021 -0700","stats":{"files_changed":2,"insertions":215,"deletions":0,"files":["jc/cli.py","jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":214}]},"message":"initial working ufw-appinfo parser","epoch":1619135521,"epoch_utc":null},{"commit":"0679bcbc560ea3575555d8546afdd4e2474d05d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 22 08:33:57 2021 -0700","stats":{"files_changed":5,"insertions":31,"deletions":5,"files":["tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json","tests/fixtures/ubuntu-18.04/ufw-numbered.json","tests/fixtures/ubuntu-18.04/ufw-verbose.json","tests/test_ufw.py"],"file_stats":[{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-numbered.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ufw-verbose.json","lines_changed":1},{"name":"tests/test_ufw.py","lines_changed":30}]},"message":"fix ufw tests","epoch":1619105637,"epoch_utc":null},{"commit":"5500648aa0886ea5089856e5b33d7c8ebd78d5b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 22 08:33:45 2021 -0700","stats":{"files_changed":3,"insertions":46,"deletions":46,"files":["EXAMPLES.md","docs/parsers/ufw.md","jc/parsers/ufw.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":20},{"name":"docs/parsers/ufw.md","lines_changed":36},{"name":"jc/parsers/ufw.py","lines_changed":36}]},"message":"fix ufw docs for int conversions and service behavior","epoch":1619105625,"epoch_utc":null},{"commit":"bb50caad4dfaefa309e747fd05b650186c5a80f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 22 08:16:42 2021 -0700","stats":{"files_changed":3,"insertions":31,"deletions":4,"files":["jc/parsers/ufw.py","tests/fixtures/ubuntu-18.04/ufw-numbered.out","tests/fixtures/ubuntu-18.04/ufw-verbose.out"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":10},{"name":"tests/fixtures/ubuntu-18.04/ufw-numbered.out","lines_changed":11},{"name":"tests/fixtures/ubuntu-18.04/ufw-verbose.out","lines_changed":14}]},"message":"fix prefix int conversions. don't reset _transport if service is really a list of ports","epoch":1619104602,"epoch_utc":null},{"commit":"7eef5d94d591a3f70f6638b1b30f952a3bf35f9d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 16:55:25 2021 -0700","stats":{"files_changed":3,"insertions":5,"deletions":0,"files":["EXAMPLES.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":5},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"ufw doc update","epoch":1619049325,"epoch_utc":null},{"commit":"74f623f8d607c050db8f62ea4996c4e6aae43268","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 16:55:14 2021 -0700","stats":{"files_changed":5,"insertions":43,"deletions":11,"files":["docs/parsers/ufw.md","jc/parsers/ufw.py","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json","tests/fixtures/generic/ufw.out"],"file_stats":[{"name":"docs/parsers/ufw.md","lines_changed":13},{"name":"jc/parsers/ufw.py","lines_changed":25},{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.out","lines_changed":12}]},"message":"add support for rule comments and LIMIT and REJECT actions","epoch":1619049314,"epoch_utc":null},{"commit":"f638aca092475bbae14fed765e90435c093fcb8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 10:10:36 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add deb package name fix","epoch":1619025036,"epoch_utc":null},{"commit":"da35eaf80ad4f11e7482fc4734db4b2265e50548","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 09:10:10 2021 -0700","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["docs/parsers/ufw.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"formatting","epoch":1619021410,"epoch_utc":null},{"commit":"ade0e8e8fc18ff9a0dd406206a85238f1f5a739d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 09:09:23 2021 -0700","stats":{"files_changed":7,"insertions":107,"deletions":0,"files":["tests/fixtures/generic/ufw-inactive.json","tests/fixtures/generic/ufw-inactive.out","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw-numbered.out","tests/fixtures/generic/ufw.json","tests/fixtures/generic/ufw.out","tests/test_ufw.py"],"file_stats":[{"name":"tests/fixtures/generic/ufw-inactive.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-inactive.out","lines_changed":1},{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-numbered.out","lines_changed":23},{"name":"tests/fixtures/generic/ufw.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw.out","lines_changed":22},{"name":"tests/test_ufw.py","lines_changed":58}]},"message":"add ufw tests","epoch":1619021363,"epoch_utc":null},{"commit":"90076090f05a1f03e2fbff307418ee18d7d046ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 09:09:09 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":5,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":12}]},"message":"fix int conversions if 'rules' key does not exist","epoch":1619021349,"epoch_utc":null},{"commit":"23635def8b654097178f73ed1b57fc50965142d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 07:51:32 2021 -0700","stats":{"files_changed":6,"insertions":306,"deletions":4,"files":["README.md","docs/parsers/ping.md","docs/parsers/ufw.md","docs/utils.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"docs/parsers/ping.md","lines_changed":1},{"name":"docs/parsers/ufw.md","lines_changed":302},{"name":"docs/utils.md","lines_changed":4},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add ufw to docs","epoch":1619016692,"epoch_utc":null},{"commit":"4eeec087bde98f90ab8425473d1fbeee6834852e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 07:49:49 2021 -0700","stats":{"files_changed":1,"insertions":115,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":115}]},"message":"add ufw example","epoch":1619016589,"epoch_utc":null},{"commit":"733196103897a1d84d242324ddcf96e783320329","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 07:41:32 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":4}]},"message":"update docs with new examples that have `to_service` always existing.","epoch":1619016092,"epoch_utc":null},{"commit":"e4acb3d5b70a7d75741ef3e35cd6750d1362a80f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 21 07:08:50 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":4}]},"message":"always make to/from_service None if ports are assigned","epoch":1619014130,"epoch_utc":null},{"commit":"c60549a9947d5684bbfa58223bfbcfc40a3ed479","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 22:08:12 2021 -0700","stats":{"files_changed":1,"insertions":29,"deletions":29,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":58}]},"message":"change field name from to/from_subnet to to/from_ip_prefix","epoch":1618981692,"epoch_utc":null},{"commit":"d46fc8bbfa15a80a1af6c64f70230f858c215223","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 21:58:52 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":9}]},"message":"set to/from_transport to None if to/from_service is set","epoch":1618981132,"epoch_utc":null},{"commit":"b133d1f90d49362594508d8c475663754f0e7675","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 21:52:39 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":6}]},"message":"strip interface value","epoch":1618980759,"epoch_utc":null},{"commit":"5be615a97e7c145c8351764234ac591028560c34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 21:45:13 2021 -0700","stats":{"files_changed":1,"insertions":219,"deletions":9,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":228}]},"message":"add examples for docs","epoch":1618980313,"epoch_utc":null},{"commit":"ea1d820f96321ddf4084b54ee2fdf397295beb21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 21:29:49 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":11}]},"message":"convert integer fields","epoch":1618979389,"epoch_utc":null},{"commit":"47e262cf7200b02ff0af97a70ffa6bec286c8f39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 21:21:42 2021 -0700","stats":{"files_changed":1,"insertions":59,"deletions":14,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":73}]},"message":"clean up fields","epoch":1618978902,"epoch_utc":null},{"commit":"eec673be9092e382694aa02682564510ce4e7f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 20:32:59 2021 -0700","stats":{"files_changed":1,"insertions":88,"deletions":3,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":91}]},"message":"working raw parser","epoch":1618975979,"epoch_utc":null},{"commit":"9a0fb2a7c87e6fde0cc0d84fa8a1f131e28ea732","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 14:17:01 2021 -0700","stats":{"files_changed":1,"insertions":157,"deletions":0,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":157}]},"message":"parse major sections","epoch":1618953421,"epoch_utc":null},{"commit":"b5145d6c14d7a51e7cfdebe126c9689dc90f7b27","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 13:39:12 2021 -0700","stats":{"files_changed":4,"insertions":8,"deletions":4,"files":["CHANGELOG","jc/__init__.py","jc/cli.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":6},{"name":"jc/cli.py","lines_changed":1},{"name":"setup.py","lines_changed":2}]},"message":"version bump to v1.15.3","epoch":1618951152,"epoch_utc":null},{"commit":"9747ca414dfb8218389c7b2199a080edabc2a184","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 20 10:50:20 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":11}]},"message":"minor optimization to convert_to_int(). No longer runs through convert_to_float(), but uses standard float() function.","epoch":1618941020,"epoch_utc":null},{"commit":"312d465b61a15592cc70d3734ad747b9a2be10ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 19 14:18:12 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":2}]},"message":"update link","epoch":1618867092,"epoch_utc":null},{"commit":"7dcf87d24ad40eba6ba98de2b4b2bf177a76cd71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 19 13:12:55 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":1}]},"message":"formatting","epoch":1618863175,"epoch_utc":null},{"commit":"cf3cfd16a9de05f30303b5952fbe609cde842d2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 19 09:59:58 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":6}]},"message":"rename tests","epoch":1618851598,"epoch_utc":null},{"commit":"fcc7e5294973d1a18943fa2ce2e836b0fe757d95","merge":"6c83846 3ab9d48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 17:28:27 2021 -0700","message":"Merge pull request #123 from kellyjonbrazil/dev\n\nDev v1.15.2","epoch":1618792107,"epoch_utc":null},{"commit":"3ab9d480149a692510ab9e0ac8e745b674683e3d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 17:24:42 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"update changelog","epoch":1618791882,"epoch_utc":null},{"commit":"7eddf41c5f6310264359cd6d78bdfa4b65af7d06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 17:21:08 2021 -0700","stats":{"files_changed":11,"insertions":96,"deletions":9,"files":["jc/man/jc.1.gz","jc/utils.py","man/jc.1.gz","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/df.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/free-h.json","tests/test_utils.py"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/utils.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null},{"name":"tests/fixtures/centos-7.7/df-h.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/df.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/free-h.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/df-h.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/df-h.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/free-h.json","lines_changed":2},{"name":"tests/test_utils.py","lines_changed":89}]},"message":"dont round up int conversions and fix tests","epoch":1618791668,"epoch_utc":null},{"commit":"27a196c93862bd737603cfe402b35529eb412954","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 16:42:42 2021 -0700","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update","epoch":1618789362,"epoch_utc":null},{"commit":"e4324f05fb6f89c34fa1567e70d8636457623edb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 16:42:34 2021 -0700","stats":{"files_changed":2,"insertions":14,"deletions":14,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":14},{"name":"jc/parsers/dig.py","lines_changed":14}]},"message":"fix indentation in doc","epoch":1618789354,"epoch_utc":null},{"commit":"d36b332bd78b5bf5979cdc59b31da08d8e4104d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 16:33:47 2021 -0700","stats":{"files_changed":53,"insertions":196,"deletions":274,"files":["docs/parsers/systemctl_lj.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/wc.md","docs/parsers/who.md","docs/utils.md","jc/parsers/acpi.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/hash.py","jc/parsers/hciconfig.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl_lj.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/utils.py"],"file_stats":[{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":2},{"name":"jc/parsers/acpi.py","lines_changed":21},{"name":"jc/parsers/airport_s.py","lines_changed":9},{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/blkid.py","lines_changed":4},{"name":"jc/parsers/cksum.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":4},{"name":"jc/parsers/dir.py","lines_changed":4},{"name":"jc/parsers/dmidecode.py","lines_changed":4},{"name":"jc/parsers/du.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":4},{"name":"jc/parsers/fstab.py","lines_changed":4},{"name":"jc/parsers/group.py","lines_changed":4},{"name":"jc/parsers/hash.py","lines_changed":4},{"name":"jc/parsers/hciconfig.py","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":4},{"name":"jc/parsers/iptables.py","lines_changed":4},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4},{"name":"jc/parsers/lsblk.py","lines_changed":13},{"name":"jc/parsers/lsmod.py","lines_changed":4},{"name":"jc/parsers/lsof.py","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":16},{"name":"jc/parsers/ntpq.py","lines_changed":10},{"name":"jc/parsers/passwd.py","lines_changed":4},{"name":"jc/parsers/ps.py","lines_changed":13},{"name":"jc/parsers/route.py","lines_changed":4},{"name":"jc/parsers/rpm_qi.py","lines_changed":4},{"name":"jc/parsers/shadow.py","lines_changed":4},{"name":"jc/parsers/ss.py","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"jc/parsers/systemctl_lj.py","lines_changed":13},{"name":"jc/parsers/systeminfo.py","lines_changed":6},{"name":"jc/parsers/time.py","lines_changed":32},{"name":"jc/parsers/timedatectl.py","lines_changed":8},{"name":"jc/parsers/tracepath.py","lines_changed":42},{"name":"jc/parsers/traceroute.py","lines_changed":40},{"name":"jc/parsers/upower.py","lines_changed":24},{"name":"jc/parsers/uptime.py","lines_changed":39},{"name":"jc/parsers/w.py","lines_changed":4},{"name":"jc/parsers/wc.py","lines_changed":12},{"name":"jc/parsers/who.py","lines_changed":12},{"name":"jc/utils.py","lines_changed":36}]},"message":"use jc.utils for conversions","epoch":1618788827,"epoch_utc":null},{"commit":"1f034826f69c461495f7a302cc8fe35e3052e72f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 13:01:25 2021 -0700","stats":{"files_changed":42,"insertions":94,"deletions":185,"files":["docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","tests/fixtures/centos-7.7/ls-alh.json","tests/fixtures/centos-7.7/lsof-sudo.json","tests/fixtures/centos-7.7/lsof.json","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/ubuntu-18.04/ls-alh.json","tests/fixtures/ubuntu-18.04/lsof-sudo.json","tests/fixtures/ubuntu-18.04/lsof.json"],"file_stats":[{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":3},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":10},{"name":"jc/parsers/jobs.py","lines_changed":8},{"name":"jc/parsers/last.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":9},{"name":"jc/parsers/lsblk.py","lines_changed":14},{"name":"jc/parsers/lsmod.py","lines_changed":9},{"name":"jc/parsers/lsof.py","lines_changed":10},{"name":"jc/parsers/netstat.py","lines_changed":37},{"name":"jc/parsers/ntpq.py","lines_changed":12},{"name":"jc/parsers/passwd.py","lines_changed":8},{"name":"jc/parsers/ping.py","lines_changed":34},{"name":"jc/parsers/ps.py","lines_changed":15},{"name":"jc/parsers/route.py","lines_changed":8},{"name":"jc/parsers/rpm_qi.py","lines_changed":9},{"name":"jc/parsers/shadow.py","lines_changed":8},{"name":"jc/parsers/ss.py","lines_changed":22},{"name":"jc/parsers/stat.py","lines_changed":11},{"name":"tests/fixtures/centos-7.7/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/lsof-sudo.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/lsof.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/lsof-sudo.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/lsof.json","lines_changed":2}]},"message":"use jc.utils for conversions","epoch":1618776085,"epoch_utc":null},{"commit":"246c707c98d3128b4e38f5c4b23a1e0ceedc0b0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 18 11:46:42 2021 -0700","stats":{"files_changed":46,"insertions":190,"deletions":196,"files":["CHANGELOG","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/df.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/hash.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/utils.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/hash.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/utils.py","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/osx-10.11.6/df-h.json","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/free-h.json"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":48},{"name":"jc/parsers/acpi.py","lines_changed":22},{"name":"jc/parsers/airport.py","lines_changed":7},{"name":"jc/parsers/airport_s.py","lines_changed":12},{"name":"jc/parsers/arp.py","lines_changed":5},{"name":"jc/parsers/blkid.py","lines_changed":7},{"name":"jc/parsers/cksum.py","lines_changed":8},{"name":"jc/parsers/df.py","lines_changed":14},{"name":"jc/parsers/dig.py","lines_changed":50},{"name":"jc/parsers/dir.py","lines_changed":11},{"name":"jc/parsers/dmidecode.py","lines_changed":8},{"name":"jc/parsers/du.py","lines_changed":8},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":8},{"name":"jc/parsers/fstab.py","lines_changed":8},{"name":"jc/parsers/group.py","lines_changed":8},{"name":"jc/parsers/hash.py","lines_changed":9},{"name":"jc/parsers/hciconfig.py","lines_changed":8},{"name":"jc/parsers/history.py","lines_changed":6},{"name":"jc/parsers/id.py","lines_changed":17},{"name":"jc/parsers/ifconfig.py","lines_changed":11},{"name":"jc/utils.py","lines_changed":62},{"name":"tests/fixtures/centos-7.7/df-h.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/free-h.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/df-h.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/df-h.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/df-h.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/free-h.json","lines_changed":2}]},"message":"use jc.utils conversions","epoch":1618771602,"epoch_utc":null},{"commit":"b5d8968144e76090870f8563dc1bce910fba668c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 17 17:22:59 2021 -0700","stats":{"files_changed":1,"insertions":19,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":19}]},"message":"add convert_to_int function","epoch":1618705379,"epoch_utc":null},{"commit":"f7b9fbefdde6973077573fec02342eb9946789c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 17 17:22:44 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add query_size info for dig","epoch":1618705364,"epoch_utc":null},{"commit":"b1fc4533833ca25f59869bfec8ac114bf49c7847","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 17 17:22:30 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2}]},"message":"fix _IfconfigParser name","epoch":1618705350,"epoch_utc":null},{"commit":"7581c8d0f4262fc6a05240bb21ffe533b153f6e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 17 17:07:20 2021 -0700","stats":{"files_changed":3,"insertions":45,"deletions":32,"files":["docs/parsers/dig.md","jc/parsers/dig.py","tests/fixtures/generic/dig-edns3.json"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":74},{"name":"tests/fixtures/generic/dig-edns3.json","lines_changed":2}]},"message":"add query_size field. handle user-specified dig output better - especially when querying dnssec","epoch":1618704440,"epoch_utc":null},{"commit":"32bf8ad6f4fff83fdfd83d66c1ba8f1af5a65a90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 17 15:02:45 2021 -0700","stats":{"files_changed":4,"insertions":52,"deletions":24,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"EXAMPLES.md","lines_changed":10},{"name":"docs/parsers/dig.md","lines_changed":32},{"name":"jc/parsers/dig.py","lines_changed":32}]},"message":"update dig docs","epoch":1618696965,"epoch_utc":null},{"commit":"b083bcc10fa1105fc09ce8d2c3297aa5575c9d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:30:17 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update man page","epoch":1618615817,"epoch_utc":null},{"commit":"4f6fdd120d23468270c1d7111e4ef71b87759a1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:30:04 2021 -0700","stats":{"files_changed":2,"insertions":134,"deletions":100,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":117},{"name":"jc/__init__.py","lines_changed":117}]},"message":"use dig as example","epoch":1618615804,"epoch_utc":null},{"commit":"eb0038be2490053d32803d30e1c3d4d34509d130","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:29:44 2021 -0700","stats":{"files_changed":1,"insertions":40,"deletions":19,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":59}]},"message":"update dig examples","epoch":1618615784,"epoch_utc":null},{"commit":"7ecdf819fa37c38ae6159ad8e7bc973ee4f34559","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:29:27 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":84,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":42},{"name":"templates/readme_template","lines_changed":42}]},"message":"remove dig example from readme,","epoch":1618615767,"epoch_utc":null},{"commit":"c6aa4d083550d25bcb621cad524047cfd6a08217","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:19:20 2021 -0700","stats":{"files_changed":6,"insertions":252,"deletions":317,"files":["README.md","docs/parsers/dig.md","jc/man/jc.1.gz","jc/parsers/dig.py","man/jc.1.gz","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":84},{"name":"docs/parsers/dig.md","lines_changed":313},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/dig.py","lines_changed":88},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/readme_template","lines_changed":84}]},"message":"update docs with new dig parser examples","epoch":1618615160,"epoch_utc":null},{"commit":"7c584b89a6e6b924d53d50103b97f0c2405c33b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 16:04:06 2021 -0700","stats":{"files_changed":15,"insertions":352,"deletions":52,"files":["jc/parsers/dig.py","tests/fixtures/generic/dig-additional.json","tests/fixtures/generic/dig-additional.out","tests/fixtures/generic/dig-additional2.json","tests/fixtures/generic/dig-additional2.out","tests/fixtures/generic/dig-additional3.json","tests/fixtures/generic/dig-additional3.out","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/generic/dig-edns.json","tests/fixtures/generic/dig-edns.out","tests/fixtures/generic/dig-edns2.json","tests/fixtures/generic/dig-edns2.out","tests/fixtures/generic/dig-edns3.json","tests/fixtures/generic/dig-edns3.out","tests/test_dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":123},{"name":"tests/fixtures/generic/dig-additional.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-additional.out","lines_changed":32},{"name":"tests/fixtures/generic/dig-additional2.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-additional2.out","lines_changed":34},{"name":"tests/fixtures/generic/dig-additional3.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-additional3.out","lines_changed":41},{"name":"tests/fixtures/generic/dig-answer-spaces.json","lines_changed":2},{"name":"tests/fixtures/generic/dig-edns.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-edns.out","lines_changed":20},{"name":"tests/fixtures/generic/dig-edns2.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-edns2.out","lines_changed":38},{"name":"tests/fixtures/generic/dig-edns3.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-edns3.out","lines_changed":34},{"name":"tests/test_dig.py","lines_changed":74}]},"message":"add additional section","epoch":1618614246,"epoch_utc":null},{"commit":"c166c0bfdafa922f57f021fa4d16e467fca02d58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 15:22:22 2021 -0700","stats":{"files_changed":14,"insertions":55,"deletions":21,"files":["jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":50},{"name":"tests/fixtures/centos-7.7/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig-x.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig.json","lines_changed":2},{"name":"tests/fixtures/generic/dig-answer-spaces.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-x.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig.json","lines_changed":2}]},"message":"add opt_pseudosection section to output and fix existing tests","epoch":1618611742,"epoch_utc":null},{"commit":"a8dd3f7802bfe8fd3ffbedf89af45ddc580ee78d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 13:11:02 2021 -0700","stats":{"files_changed":5,"insertions":54,"deletions":281,"files":["CHANGELOG","jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-axfr.json"],"file_stats":[{"name":"CHANGELOG","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":325},{"name":"tests/fixtures/centos-7.7/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-axfr.json","lines_changed":2}]},"message":"working dig axfr fixes","epoch":1618603862,"epoch_utc":null},{"commit":"3b0e2f03f3b11398ff57b1daed542faaf0b80a62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 16 08:46:20 2021 -0700","stats":{"files_changed":2,"insertions":24,"deletions":23,"files":["jc/cli.py","templates/manpage_template"],"file_stats":[{"name":"jc/cli.py","lines_changed":21},{"name":"templates/manpage_template","lines_changed":26}]},"message":"clean up examples","epoch":1618587980,"epoch_utc":null},{"commit":"8390ae48c88ab1c7d5acbf40c0e60606953817bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 15 16:53:03 2021 -0700","stats":{"files_changed":7,"insertions":8,"deletions":8,"files":["jc/parsers/dig.py","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":4},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig.json","lines_changed":2}]},"message":"fix server entry when IPv6 address is in value (maxsplit on colons)","epoch":1618530783,"epoch_utc":null},{"commit":"2db82c0a7e19d596c876ede8a8ff106aaa733ee5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 20:43:58 2021 -0700","stats":{"files_changed":1,"insertions":66,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":66}]},"message":"add systeminfo example","epoch":1618458238,"epoch_utc":null},{"commit":"61479540756704f10853233300ceae8f954a8a95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 20:39:35 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":0,"files":["tests/test_systeminfo.py","tests/test_utils.py"],"file_stats":[{"name":"tests/test_systeminfo.py","lines_changed":1},{"name":"tests/test_utils.py","lines_changed":4}]},"message":"update tests","epoch":1618457975,"epoch_utc":null},{"commit":"691df271fcfe057ae4b75ad40869e23deb37b886","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 20:30:31 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":1,"files":["docs/parsers/systeminfo.md","jc/man/jc.1.gz","jc/parsers/systeminfo.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/systeminfo.py","lines_changed":1},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add info docstring","epoch":1618457431,"epoch_utc":null},{"commit":"89f52b95f7055da9d7b5fa8dce0923d4c3435bd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 20:20:46 2021 -0700","stats":{"files_changed":13,"insertions":467,"deletions":821,"files":["README.md","docs/parsers/systeminfo.md","jc/man/jc.1.gz","jc/parsers/systeminfo.py","jc/utils.py","man/jc.1.gz",".../windows/windows-10/systeminfo-hyperv-utc.json",".../windows/windows-10/systeminfo-hyperv-utc.out",".../windows/windows-10/systeminfo-hyperv.json","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-10/systeminfo.out",".../windows/windows-2012r2/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/systeminfo.md","lines_changed":290},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/systeminfo.py","lines_changed":361},{"name":"jc/utils.py","lines_changed":5},{"name":"man/jc.1.gz","lines_changed":null},{"name":".../windows/windows-10/systeminfo-hyperv-utc.json","lines_changed":1},{"name":".../windows/windows-10/systeminfo-hyperv-utc.out","lines_changed":79},{"name":".../windows/windows-10/systeminfo-hyperv.json","lines_changed":112},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":57},{"name":"tests/fixtures/windows/windows-10/systeminfo.out","lines_changed":1},{"name":".../windows/windows-2012r2/systeminfo.json","lines_changed":55},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":326}]},"message":"update systeminfo parser with updated timestamps, normalized blank fields, and new doc style","epoch":1618456846,"epoch_utc":null},{"commit":"146acc1bf69c402e38c2f1bc842b84e6cff7e2cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 16:46:16 2021 -0700","stats":{"files_changed":1,"insertions":23,"deletions":29,"files":["jc/parsers/systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":52}]},"message":"rename functions to make them private","epoch":1618443976,"epoch_utc":null},{"commit":"c4a345f59aa090336b4e80f181493cd5bc2c17c5","merge":"dfd2703 325fab2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 16:39:44 2021 -0700","message":"Merge pull request #106 from jon-rd/j/systeminfo\n\nAdd windows systeminfo command parser","epoch":1618443584,"epoch_utc":null},{"commit":"dfd2703f75b907ba865fff266d0742d8931bc2d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 14 16:39:05 2021 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"bump dev to v1.15.2","epoch":1618443545,"epoch_utc":null},{"commit":"325fab2de7b8a4bfc452ab8d3cf333d47fdf4989","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Wed Apr 14 11:52:13 2021 -0500","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":10}]},"message":"update documentation for parsed structures","epoch":1618426333,"epoch_utc":null},{"commit":"f3d00cf38ad15aeda7eaa5644ebc30ff33de6a29","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Wed Apr 14 09:06:14 2021 -0500","stats":{"files_changed":5,"insertions":56,"deletions":48,"files":["jc/parsers/systeminfo.py",".../windows/windows-10/systeminfo-hyperv.json","tests/fixtures/windows/windows-10/systeminfo.json",".../windows/windows-2012r2/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":48},{"name":".../windows/windows-10/systeminfo-hyperv.json","lines_changed":14},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":14},{"name":".../windows/windows-2012r2/systeminfo.json","lines_changed":14},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":14}]},"message":"append mb to memory key names; adjust expected timestamps to utc tz","epoch":1618416374,"epoch_utc":null},{"commit":"14838f7f5d780896f1318cac2c3f34d249a158d4","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Wed Apr 14 08:59:17 2021 -0500","stats":{"files_changed":9,"insertions":956,"deletions":116,"files":["jc/parsers/systeminfo.py","jc/utils.py",".../windows/windows-10/systeminfo-hyperv.json",".../windows/windows-10/systeminfo-hyperv.out","tests/fixtures/windows/windows-10/systeminfo.json",".../windows/windows-2012r2/systeminfo.json",".../fixtures/windows/windows-2012r2/systeminfo.out","tests/fixtures/windows/windows-7/systeminfo.json","tests/test_systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":357},{"name":"jc/utils.py","lines_changed":1},{"name":".../windows/windows-10/systeminfo-hyperv.json","lines_changed":111},{"name":".../windows/windows-10/systeminfo-hyperv.out","lines_changed":79},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":43},{"name":".../windows/windows-2012r2/systeminfo.json","lines_changed":54},{"name":".../fixtures/windows/windows-2012r2/systeminfo.out","lines_changed":45},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":311},{"name":"tests/test_systeminfo.py","lines_changed":71}]},"message":"update schema with nic, hyperv, and process changes","epoch":1618415957,"epoch_utc":null},{"commit":"af74047b81776c2ea32d82f9145ab60c346c8203","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Mon Apr 5 09:32:04 2021 -0500","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":8}]},"message":"update schema based on processor/hotfix changes","epoch":1617640324,"epoch_utc":null},{"commit":"660c59129cf4ba7889fb3c6fbafd9dd9b479ccd9","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Mon Apr 5 09:29:42 2021 -0500","stats":{"files_changed":3,"insertions":41,"deletions":9,"files":["jc/parsers/systeminfo.py","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":42},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":4},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":4}]},"message":"Add parsing of processors/hotfixs","epoch":1617640182,"epoch_utc":null},{"commit":"89a88e186ed71d84ea802cf08ab756b49cee3225","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Thu Mar 25 16:58:54 2021 -0500","stats":{"files_changed":1,"insertions":152,"deletions":0,"files":["docs/parsers/systeminfo.md"],"file_stats":[{"name":"docs/parsers/systeminfo.md","lines_changed":152}]},"message":"Add systeminfo.md file","epoch":1616716734,"epoch_utc":null},{"commit":"f861cf95b96a224a0a11f2cdc3261b94c02415ef","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Thu Mar 25 16:18:14 2021 -0500","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["jc/cli.py","jc/parsers/systeminfo.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/systeminfo.py","lines_changed":2}]},"message":"Change to v0.5; add parser to cli.py; add to docgen","epoch":1616714294,"epoch_utc":null},{"commit":"ee8f06cbdb03f8254bb6a3c56fa5b8a64ff9ca77","author":"Jon Smith","author_email":"jon@rebelliondefense.com","date":"Wed Mar 24 14:13:22 2021 -0500","stats":{"files_changed":6,"insertions":688,"deletions":0,"files":["jc/parsers/systeminfo.py","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-10/systeminfo.out","tests/fixtures/windows/windows-7/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.out","tests/test_systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":209},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":35},{"name":"tests/fixtures/windows/windows-10/systeminfo.out","lines_changed":47},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":34},{"name":"tests/fixtures/windows/windows-7/systeminfo.out","lines_changed":298},{"name":"tests/test_systeminfo.py","lines_changed":65}]},"message":"Add windows systeminfo command parser","epoch":1616620402,"epoch_utc":null},{"commit":"a2e8b3c7b681605916b8950d035ee19889a125a5","merge":"e0681ee 6c83846","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 16:40:43 2021 -0700","message":"Merge pull request #121 from kellyjonbrazil/master\n\nMerge pull request #120 from kellyjonbrazil/dev","epoch":1618357243,"epoch_utc":null},{"commit":"6c838460752c7131f75cdab2da07266fee492060","merge":"10292f7 e0681ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:59:17 2021 -0700","message":"Merge pull request #120 from kellyjonbrazil/dev\n\nDev v1.15.1","epoch":1618351157,"epoch_utc":null},{"commit":"e0681eebb9881dc0ffddb478224455f434919104","merge":"e5732d1 10292f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:57:44 2021 -0700","message":"Merge branch 'master' into dev","epoch":1618351064,"epoch_utc":null},{"commit":"e5732d1cea1c882f6486cf288e45edb993989ea0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:54:38 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"update changelog","epoch":1618350878,"epoch_utc":null},{"commit":"6e7ae3cd3f003fe9e1e587b7f8ebd16ba0895014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:51:46 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/timedatectl.md","jc/man/jc.1.gz","jc/parsers/timedatectl.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"formatting of timedatectl docs","epoch":1618350706,"epoch_utc":null},{"commit":"f95632d1aaee545ae0ce081ca0617be135c09220","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:49:57 2021 -0700","stats":{"files_changed":7,"insertions":83,"deletions":62,"files":["EXAMPLES.md","docs/parsers/rpm_qi.md","jc/man/jc.1.gz","jc/parsers/rpm_qi.py","man/jc.1.gz","tests/fixtures/centos-7.7/rpm-qai.json","tests/fixtures/centos-7.7/rpm-qi-package.json"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":12},{"name":"docs/parsers/rpm_qi.md","lines_changed":62},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/rpm_qi.py","lines_changed":67},{"name":"man/jc.1.gz","lines_changed":null},{"name":"tests/fixtures/centos-7.7/rpm-qai.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rpm-qi-package.json","lines_changed":2}]},"message":"add install_date calculated fields","epoch":1618350597,"epoch_utc":null},{"commit":"2f8b7b26e59bcd745fa1fcadb373455c7d404286","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 13 14:35:17 2021 -0700","stats":{"files_changed":3,"insertions":1,"deletions":2,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update docs for v1.15.1","epoch":1618349717,"epoch_utc":null},{"commit":"10292f7502e4cb1c53b53ed39fed9288044c2ef8","merge":"37a3565 aef5470","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:15:40 2021 -0700","message":"Merge pull request #119 from kellyjonbrazil/dpkg_l-fix\n\nadd _l to module name","epoch":1618258540,"epoch_utc":null},{"commit":"aef54705f5267c633e0778e8dce0065978083139","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:15:12 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["docs/parsers/dpkg_l.md"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":4}]},"message":"add _l to module name","epoch":1618258512,"epoch_utc":null},{"commit":"bba5980fa53767716bc35d8c904e7a2341346eeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:13:18 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"man page update","epoch":1618258398,"epoch_utc":null},{"commit":"977425abfb05a63ee372df36124ac6ba6a5a0aaa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:12:08 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"jc/parsers/dpkg_l.py","lines_changed":4}]},"message":"add _l to package name in docs","epoch":1618258328,"epoch_utc":null},{"commit":"37a3565a1bbd3d01663602673fed651509e69d8c","merge":"bdcdaee 13deb8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:06:30 2021 -0700","message":"Merge pull request #118 from kellyjonbrazil/rpm-qi-doc-fix\n\nfix rpm-qi docs","epoch":1618257990,"epoch_utc":null},{"commit":"13deb8bfb6e77aaf86942f0be87b59d06ee2a97c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:05:34 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":194,"files":["docs/parsers/rpm_qai.md","docs/parsers/rpm_qi.md"],"file_stats":[{"name":"docs/parsers/rpm_qai.md","lines_changed":191},{"name":"docs/parsers/rpm_qi.md","lines_changed":6}]},"message":"fix rpm-qi docs","epoch":1618257934,"epoch_utc":null},{"commit":"a3ed9d075aff41599452c3094f7d057c25fc8f89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:04:22 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":191,"files":["docs/parsers/rpm_qai.md"],"file_stats":[{"name":"docs/parsers/rpm_qai.md","lines_changed":191}]},"message":"remove old parser doc","epoch":1618257862,"epoch_utc":null},{"commit":"fb0ced549e021916dee7da39859e8f85c8216e16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 12 13:01:17 2021 -0700","stats":{"files_changed":4,"insertions":6,"deletions":6,"files":["docs/parsers/rpm_qi.md","jc/man/jc.1.gz","jc/parsers/rpm_qi.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/rpm_qi.md","lines_changed":6},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/rpm_qi.py","lines_changed":6},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"fix rpm-qi docs (used underscore instead of dash in name)","epoch":1618257677,"epoch_utc":null},{"commit":"7eb31bc7d290fcd09e53524ebbb11e59110df6a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 19:55:03 2021 -0700","stats":{"files_changed":4,"insertions":39,"deletions":48,"files":["docs/parsers/airport_s.md","jc/man/jc.1.gz","jc/parsers/airport_s.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/airport_s.md","lines_changed":49},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/airport_s.py","lines_changed":38},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update airport_s docs","epoch":1618023303,"epoch_utc":null},{"commit":"6a06a3914273853742ac57433398968ccf7d9897","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 16:36:20 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":12}]},"message":"use herestring instead of echo -e into jq","epoch":1618011380,"epoch_utc":null},{"commit":"bdcdaee6c5299ea0750512e0943c7f58f56f2e35","merge":"5d8f836 605353f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 15:11:05 2021 -0700","message":"Merge pull request #117 from kellyjonbrazil/doc_update\n\nadd new docs","epoch":1618006265,"epoch_utc":null},{"commit":"605353fdce3b8b5986d20a35d05f7210a6df0730","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 15:10:38 2021 -0700","stats":{"files_changed":70,"insertions":1710,"deletions":2656,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":99},{"name":"docs/parsers/airport.md","lines_changed":61},{"name":"docs/parsers/airport_s.md","lines_changed":9},{"name":"docs/parsers/arp.md","lines_changed":51},{"name":"docs/parsers/blkid.md","lines_changed":93},{"name":"docs/parsers/cksum.md","lines_changed":41},{"name":"docs/parsers/crontab.md","lines_changed":84},{"name":"docs/parsers/crontab_u.md","lines_changed":88},{"name":"docs/parsers/csv.md","lines_changed":41},{"name":"docs/parsers/date.md","lines_changed":68},{"name":"docs/parsers/df.md","lines_changed":59},{"name":"docs/parsers/dig.md","lines_changed":133},{"name":"docs/parsers/dir.md","lines_changed":49},{"name":"docs/parsers/dmidecode.md","lines_changed":55},{"name":"docs/parsers/dpkg_l.md","lines_changed":51},{"name":"docs/parsers/du.md","lines_changed":39},{"name":"docs/parsers/env.md","lines_changed":39},{"name":"docs/parsers/file.md","lines_changed":39},{"name":"docs/parsers/finger.md","lines_changed":57},{"name":"docs/parsers/free.md","lines_changed":49},{"name":"docs/parsers/fstab.md","lines_changed":47},{"name":"docs/parsers/group.md","lines_changed":47},{"name":"docs/parsers/gshadow.md","lines_changed":51},{"name":"docs/parsers/hash.md","lines_changed":39},{"name":"docs/parsers/hashsum.md","lines_changed":39},{"name":"docs/parsers/hciconfig.md","lines_changed":123},{"name":"docs/parsers/history.md","lines_changed":39},{"name":"docs/parsers/hosts.md","lines_changed":43},{"name":"docs/parsers/id.md","lines_changed":79},{"name":"docs/parsers/ifconfig.md","lines_changed":97},{"name":"docs/parsers/ini.md","lines_changed":44},{"name":"docs/parsers/iptables.md","lines_changed":67},{"name":"docs/parsers/iw_scan.md","lines_changed":40},{"name":"docs/parsers/jobs.md","lines_changed":45},{"name":"docs/parsers/kv.md","lines_changed":17},{"name":"docs/parsers/last.md","lines_changed":53},{"name":"docs/parsers/ls.md","lines_changed":118},{"name":"docs/parsers/lsblk.md","lines_changed":115},{"name":"docs/parsers/lsmod.md","lines_changed":47},{"name":"docs/parsers/lsof.md","lines_changed":55},{"name":"docs/parsers/mount.md","lines_changed":47},{"name":"docs/parsers/netstat.md","lines_changed":223},{"name":"docs/parsers/ntpq.md","lines_changed":58},{"name":"docs/parsers/passwd.md","lines_changed":49},{"name":"docs/parsers/ping.md","lines_changed":81},{"name":"docs/parsers/pip_list.md","lines_changed":41},{"name":"docs/parsers/pip_show.md","lines_changed":56},{"name":"docs/parsers/ps.md","lines_changed":69},{"name":"docs/parsers/route.md","lines_changed":63},{"name":"docs/parsers/rpm_qi.md","lines_changed":77},{"name":"docs/parsers/shadow.md","lines_changed":51},{"name":"docs/parsers/ss.md","lines_changed":73},{"name":"docs/parsers/stat.md","lines_changed":97},{"name":"docs/parsers/sysctl.md","lines_changed":37},{"name":"docs/parsers/systemctl.md","lines_changed":45},{"name":"docs/parsers/systemctl_lj.md","lines_changed":44},{"name":"docs/parsers/systemctl_ls.md","lines_changed":41},{"name":"docs/parsers/systemctl_luf.md","lines_changed":39},{"name":"docs/parsers/time.md","lines_changed":105},{"name":"docs/parsers/timedatectl.md","lines_changed":53},{"name":"docs/parsers/tracepath.md","lines_changed":60},{"name":"docs/parsers/traceroute.md","lines_changed":69},{"name":"docs/parsers/uname.md","lines_changed":47},{"name":"docs/parsers/upower.md","lines_changed":145},{"name":"docs/parsers/uptime.md","lines_changed":57},{"name":"docs/parsers/w.md","lines_changed":51},{"name":"docs/parsers/wc.md","lines_changed":43},{"name":"docs/parsers/who.md","lines_changed":55},{"name":"docs/parsers/xml.md","lines_changed":38},{"name":"docs/parsers/yaml.md","lines_changed":42}]},"message":"add new docs","epoch":1618006238,"epoch_utc":null},{"commit":"490c9e17699e8e4f70dcc1612e1a808f86e24b0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 11:38:17 2021 -0700","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":8}]},"message":"add more cli tests for magic command","epoch":1617993497,"epoch_utc":null},{"commit":"6ebebb659dc93daeaa869752ad135f6e1d2cb1ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 11:10:08 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"update changelog","epoch":1617991808,"epoch_utc":null},{"commit":"0e70c5ee12e96f04a89de05153a2da9cd39f98ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 11:04:17 2021 -0700","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update documentation link","epoch":1617991457,"epoch_utc":null},{"commit":"cd531acf6045660e022c932f62a01d4084433ad4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 11:02:19 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":1}]},"message":"clean up comment","epoch":1617991339,"epoch_utc":null},{"commit":"908ac1f61c5cc011d05d550f933940dfed4431f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 10:56:43 2021 -0700","stats":{"files_changed":143,"insertions":0,"deletions":690,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/man/jc.1.gz","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":4},{"name":"docs/parsers/airport.md","lines_changed":4},{"name":"docs/parsers/airport_s.md","lines_changed":4},{"name":"docs/parsers/arp.md","lines_changed":4},{"name":"docs/parsers/blkid.md","lines_changed":4},{"name":"docs/parsers/cksum.md","lines_changed":4},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"docs/parsers/crontab_u.md","lines_changed":4},{"name":"docs/parsers/csv.md","lines_changed":4},{"name":"docs/parsers/date.md","lines_changed":4},{"name":"docs/parsers/df.md","lines_changed":4},{"name":"docs/parsers/dig.md","lines_changed":4},{"name":"docs/parsers/dir.md","lines_changed":4},{"name":"docs/parsers/dmidecode.md","lines_changed":4},{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"docs/parsers/du.md","lines_changed":4},{"name":"docs/parsers/env.md","lines_changed":4},{"name":"docs/parsers/file.md","lines_changed":4},{"name":"docs/parsers/finger.md","lines_changed":4},{"name":"docs/parsers/free.md","lines_changed":4},{"name":"docs/parsers/fstab.md","lines_changed":4},{"name":"docs/parsers/group.md","lines_changed":4},{"name":"docs/parsers/gshadow.md","lines_changed":4},{"name":"docs/parsers/hash.md","lines_changed":4},{"name":"docs/parsers/hashsum.md","lines_changed":4},{"name":"docs/parsers/hciconfig.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":4},{"name":"docs/parsers/hosts.md","lines_changed":4},{"name":"docs/parsers/id.md","lines_changed":4},{"name":"docs/parsers/ifconfig.md","lines_changed":4},{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"docs/parsers/iptables.md","lines_changed":4},{"name":"docs/parsers/iw_scan.md","lines_changed":4},{"name":"docs/parsers/jobs.md","lines_changed":4},{"name":"docs/parsers/kv.md","lines_changed":4},{"name":"docs/parsers/last.md","lines_changed":4},{"name":"docs/parsers/ls.md","lines_changed":67},{"name":"docs/parsers/lsblk.md","lines_changed":4},{"name":"docs/parsers/lsmod.md","lines_changed":4},{"name":"docs/parsers/lsof.md","lines_changed":4},{"name":"docs/parsers/mount.md","lines_changed":4},{"name":"docs/parsers/netstat.md","lines_changed":4},{"name":"docs/parsers/ntpq.md","lines_changed":4},{"name":"docs/parsers/passwd.md","lines_changed":4},{"name":"docs/parsers/ping.md","lines_changed":4},{"name":"docs/parsers/pip_list.md","lines_changed":4},{"name":"docs/parsers/pip_show.md","lines_changed":4},{"name":"docs/parsers/ps.md","lines_changed":4},{"name":"docs/parsers/route.md","lines_changed":4},{"name":"docs/parsers/rpm_qi.md","lines_changed":4},{"name":"docs/parsers/shadow.md","lines_changed":4},{"name":"docs/parsers/ss.md","lines_changed":4},{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"docs/parsers/sysctl.md","lines_changed":4},{"name":"docs/parsers/systemctl.md","lines_changed":4},{"name":"docs/parsers/systemctl_lj.md","lines_changed":4},{"name":"docs/parsers/systemctl_ls.md","lines_changed":4},{"name":"docs/parsers/systemctl_luf.md","lines_changed":4},{"name":"docs/parsers/time.md","lines_changed":4},{"name":"docs/parsers/timedatectl.md","lines_changed":4},{"name":"docs/parsers/tracepath.md","lines_changed":4},{"name":"docs/parsers/traceroute.md","lines_changed":4},{"name":"docs/parsers/uname.md","lines_changed":4},{"name":"docs/parsers/upower.md","lines_changed":4},{"name":"docs/parsers/uptime.md","lines_changed":4},{"name":"docs/parsers/w.md","lines_changed":4},{"name":"docs/parsers/wc.md","lines_changed":4},{"name":"docs/parsers/who.md","lines_changed":4},{"name":"docs/parsers/xml.md","lines_changed":4},{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/acpi.py","lines_changed":4},{"name":"jc/parsers/airport.py","lines_changed":4},{"name":"jc/parsers/airport_s.py","lines_changed":4},{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/blkid.py","lines_changed":4},{"name":"jc/parsers/cksum.py","lines_changed":4},{"name":"jc/parsers/crontab.py","lines_changed":4},{"name":"jc/parsers/crontab_u.py","lines_changed":4},{"name":"jc/parsers/csv.py","lines_changed":4},{"name":"jc/parsers/date.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":4},{"name":"jc/parsers/dir.py","lines_changed":4},{"name":"jc/parsers/dmidecode.py","lines_changed":4},{"name":"jc/parsers/dpkg_l.py","lines_changed":4},{"name":"jc/parsers/du.py","lines_changed":4},{"name":"jc/parsers/env.py","lines_changed":4},{"name":"jc/parsers/file.py","lines_changed":4},{"name":"jc/parsers/finger.py","lines_changed":4},{"name":"jc/parsers/foo.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":4},{"name":"jc/parsers/fstab.py","lines_changed":4},{"name":"jc/parsers/group.py","lines_changed":4},{"name":"jc/parsers/gshadow.py","lines_changed":4},{"name":"jc/parsers/hash.py","lines_changed":4},{"name":"jc/parsers/hashsum.py","lines_changed":4},{"name":"jc/parsers/hciconfig.py","lines_changed":4},{"name":"jc/parsers/history.py","lines_changed":4},{"name":"jc/parsers/hosts.py","lines_changed":4},{"name":"jc/parsers/id.py","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":4},{"name":"jc/parsers/ini.py","lines_changed":4},{"name":"jc/parsers/iptables.py","lines_changed":4},{"name":"jc/parsers/iw_scan.py","lines_changed":4},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/kv.py","lines_changed":4},{"name":"jc/parsers/last.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":67},{"name":"jc/parsers/lsblk.py","lines_changed":4},{"name":"jc/parsers/lsmod.py","lines_changed":4},{"name":"jc/parsers/lsof.py","lines_changed":4},{"name":"jc/parsers/mount.py","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":4},{"name":"jc/parsers/ntpq.py","lines_changed":4},{"name":"jc/parsers/passwd.py","lines_changed":4},{"name":"jc/parsers/ping.py","lines_changed":4},{"name":"jc/parsers/pip_list.py","lines_changed":4},{"name":"jc/parsers/pip_show.py","lines_changed":4},{"name":"jc/parsers/ps.py","lines_changed":4},{"name":"jc/parsers/route.py","lines_changed":4},{"name":"jc/parsers/rpm_qi.py","lines_changed":4},{"name":"jc/parsers/shadow.py","lines_changed":4},{"name":"jc/parsers/ss.py","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"jc/parsers/sysctl.py","lines_changed":4},{"name":"jc/parsers/systemctl.py","lines_changed":4},{"name":"jc/parsers/systemctl_lj.py","lines_changed":4},{"name":"jc/parsers/systemctl_ls.py","lines_changed":4},{"name":"jc/parsers/systemctl_luf.py","lines_changed":4},{"name":"jc/parsers/time.py","lines_changed":4},{"name":"jc/parsers/timedatectl.py","lines_changed":4},{"name":"jc/parsers/tracepath.py","lines_changed":4},{"name":"jc/parsers/traceroute.py","lines_changed":4},{"name":"jc/parsers/uname.py","lines_changed":4},{"name":"jc/parsers/upower.py","lines_changed":4},{"name":"jc/parsers/uptime.py","lines_changed":4},{"name":"jc/parsers/w.py","lines_changed":4},{"name":"jc/parsers/wc.py","lines_changed":4},{"name":"jc/parsers/who.py","lines_changed":4},{"name":"jc/parsers/xml.py","lines_changed":4},{"name":"jc/parsers/yaml.py","lines_changed":4},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update docs - remove compatibility section since it is now automatically generated from info()","epoch":1617991003,"epoch_utc":null},{"commit":"f5c7e7e4046bc57b4fcad99390e31b121a7106ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 10:36:42 2021 -0700","stats":{"files_changed":70,"insertions":350,"deletions":0,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":5},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5}]},"message":"add updated docs with home link and parser info at the bottom","epoch":1617989802,"epoch_utc":null},{"commit":"001c700b5bd280cb1cb9e54169ae5f1b7918c257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 10:36:03 2021 -0700","stats":{"files_changed":3,"insertions":2,"deletions":1,"files":["docgen.sh","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docgen.sh","lines_changed":3},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add home link to the top of the md file","epoch":1617989763,"epoch_utc":null},{"commit":"9b41e9bef0ff099e70f37fddc8fe2c6bd8457b19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 10:32:58 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":1}]},"message":"Add parser information header","epoch":1617989578,"epoch_utc":null},{"commit":"34bd6e32dc0c0bf7dfeedaadbf04115f43e9d060","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 10:26:34 2021 -0700","stats":{"files_changed":1,"insertions":20,"deletions":4,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":24}]},"message":"pull each parser as a json object into a bash array and iterate on it to add supplementary information like version, author, and compatibility","epoch":1617989194,"epoch_utc":null},{"commit":"c5d058490beaa8f59875a8acfd7a400764768639","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 09:12:41 2021 -0700","stats":{"files_changed":1,"insertions":22,"deletions":13,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":35}]},"message":"move parser doc printing to its own function","epoch":1617984761,"epoch_utc":null},{"commit":"dd1ae6d9a7de5421830232deb42d933b9a652672","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 9 08:09:37 2021 -0700","stats":{"files_changed":4,"insertions":3,"deletions":1,"files":["MANIFEST.in","jc/man/jc.1.gz","man/jc.1.gz","mangen.py"],"file_stats":[{"name":"MANIFEST.in","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"mangen.py","lines_changed":2}]},"message":"add man page inside the pypi package for easier packaging in homebrew","epoch":1617980977,"epoch_utc":null},{"commit":"d8ea9bde823a7f5c146741150c3211737345c7dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 16:42:57 2021 -0700","stats":{"files_changed":3,"insertions":16,"deletions":16,"files":["docs/parsers/w.md","jc/parsers/w.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/w.md","lines_changed":16},{"name":"jc/parsers/w.py","lines_changed":16},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update","epoch":1617925377,"epoch_utc":null},{"commit":"125edc9c906dc3650b6a683ed13830075acb7ab6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 16:42:45 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"bail out for -h, -a, and -v in magic()","epoch":1617925365,"epoch_utc":null},{"commit":"15ea43e394a9004f8ccec208b3a066c76e241866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 16:28:05 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["MANIFEST.in"],"file_stats":[{"name":"MANIFEST.in","lines_changed":1}]},"message":"add man file to package for easier packaging in homebrew","epoch":1617924485,"epoch_utc":null},{"commit":"b55b02687c00d1c50e30f30c9b9a7f36f783eb0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 16:14:11 2021 -0700","stats":{"files_changed":19,"insertions":371,"deletions":441,"files":["CHANGELOG","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","man/jc.1.gz","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":6},{"name":"docs/parsers/uname.md","lines_changed":42},{"name":"docs/parsers/upower.md","lines_changed":140},{"name":"docs/parsers/uptime.md","lines_changed":52},{"name":"docs/parsers/w.md","lines_changed":46},{"name":"docs/parsers/wc.md","lines_changed":38},{"name":"docs/parsers/who.md","lines_changed":50},{"name":"docs/parsers/xml.md","lines_changed":33},{"name":"docs/parsers/yaml.md","lines_changed":37},{"name":"jc/parsers/uname.py","lines_changed":33},{"name":"jc/parsers/upower.py","lines_changed":131},{"name":"jc/parsers/uptime.py","lines_changed":43},{"name":"jc/parsers/w.py","lines_changed":37},{"name":"jc/parsers/wc.py","lines_changed":29},{"name":"jc/parsers/who.py","lines_changed":41},{"name":"jc/parsers/xml.py","lines_changed":24},{"name":"jc/parsers/yaml.py","lines_changed":28},{"name":"man/jc.1.gz","lines_changed":null},{"name":"setup.py","lines_changed":2}]},"message":"doc update","epoch":1617923651,"epoch_utc":null},{"commit":"da611f0ac6321f7f52fdbc419f8b155c74393c28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 15:53:06 2021 -0700","stats":{"files_changed":4,"insertions":63,"deletions":50,"files":["jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","man/jc.1.gz"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":30},{"name":"jc/parsers/iptables.py","lines_changed":53},{"name":"jc/parsers/iw_scan.py","lines_changed":30},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update docs","epoch":1617922386,"epoch_utc":null},{"commit":"b8b8dfead4fdc4285585c44c2ebce3bdd42b2e7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 15:52:49 2021 -0700","stats":{"files_changed":61,"insertions":1501,"deletions":1848,"files":["docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":39},{"name":"docs/parsers/iptables.md","lines_changed":62},{"name":"docs/parsers/iw_scan.md","lines_changed":35},{"name":"docs/parsers/jobs.md","lines_changed":40},{"name":"docs/parsers/kv.md","lines_changed":12},{"name":"docs/parsers/last.md","lines_changed":48},{"name":"docs/parsers/ls.md","lines_changed":50},{"name":"docs/parsers/lsblk.md","lines_changed":110},{"name":"docs/parsers/lsmod.md","lines_changed":42},{"name":"docs/parsers/lsof.md","lines_changed":50},{"name":"docs/parsers/mount.md","lines_changed":42},{"name":"docs/parsers/netstat.md","lines_changed":218},{"name":"docs/parsers/ntpq.md","lines_changed":53},{"name":"docs/parsers/passwd.md","lines_changed":44},{"name":"docs/parsers/ping.md","lines_changed":76},{"name":"docs/parsers/pip_list.md","lines_changed":36},{"name":"docs/parsers/pip_show.md","lines_changed":51},{"name":"docs/parsers/ps.md","lines_changed":64},{"name":"docs/parsers/route.md","lines_changed":58},{"name":"docs/parsers/rpm_qi.md","lines_changed":72},{"name":"docs/parsers/shadow.md","lines_changed":46},{"name":"docs/parsers/ss.md","lines_changed":66},{"name":"docs/parsers/stat.md","lines_changed":92},{"name":"docs/parsers/sysctl.md","lines_changed":32},{"name":"docs/parsers/systemctl.md","lines_changed":40},{"name":"docs/parsers/systemctl_lj.md","lines_changed":39},{"name":"docs/parsers/systemctl_ls.md","lines_changed":36},{"name":"docs/parsers/systemctl_luf.md","lines_changed":34},{"name":"docs/parsers/time.md","lines_changed":100},{"name":"docs/parsers/timedatectl.md","lines_changed":48},{"name":"docs/parsers/tracepath.md","lines_changed":55},{"name":"docs/parsers/traceroute.md","lines_changed":64},{"name":"jc/parsers/jobs.py","lines_changed":31},{"name":"jc/parsers/kv.py","lines_changed":13},{"name":"jc/parsers/last.py","lines_changed":39},{"name":"jc/parsers/ls.py","lines_changed":41},{"name":"jc/parsers/lsblk.py","lines_changed":101},{"name":"jc/parsers/lsmod.py","lines_changed":33},{"name":"jc/parsers/lsof.py","lines_changed":41},{"name":"jc/parsers/mount.py","lines_changed":41},{"name":"jc/parsers/netstat.py","lines_changed":209},{"name":"jc/parsers/ntpq.py","lines_changed":44},{"name":"jc/parsers/passwd.py","lines_changed":35},{"name":"jc/parsers/ping.py","lines_changed":75},{"name":"jc/parsers/pip_list.py","lines_changed":27},{"name":"jc/parsers/pip_show.py","lines_changed":42},{"name":"jc/parsers/ps.py","lines_changed":55},{"name":"jc/parsers/route.py","lines_changed":49},{"name":"jc/parsers/rpm_qi.py","lines_changed":63},{"name":"jc/parsers/shadow.py","lines_changed":37},{"name":"jc/parsers/ss.py","lines_changed":59},{"name":"jc/parsers/stat.py","lines_changed":83},{"name":"jc/parsers/sysctl.py","lines_changed":23},{"name":"jc/parsers/systemctl.py","lines_changed":31},{"name":"jc/parsers/systemctl_lj.py","lines_changed":30},{"name":"jc/parsers/systemctl_ls.py","lines_changed":27},{"name":"jc/parsers/systemctl_luf.py","lines_changed":25},{"name":"jc/parsers/time.py","lines_changed":91},{"name":"jc/parsers/timedatectl.py","lines_changed":39},{"name":"jc/parsers/tracepath.py","lines_changed":46},{"name":"jc/parsers/traceroute.py","lines_changed":65}]},"message":"update docs","epoch":1617922369,"epoch_utc":null},{"commit":"4290a3cbd135cacbf63664dc30768017ebbed28d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 14:00:56 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":9,"files":["docs/parsers/ifconfig.md","jc/parsers/ifconfig.py"],"file_stats":[{"name":"docs/parsers/ifconfig.md","lines_changed":6},{"name":"jc/parsers/ifconfig.py","lines_changed":6}]},"message":"make IfconfigParser class private","epoch":1617915656,"epoch_utc":null},{"commit":"a5e2203cee6a7bc398cf280f57d37638eeb1d2d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 12:45:08 2021 -0700","stats":{"files_changed":3,"insertions":2,"deletions":1,"files":["docs/parsers/ifconfig.md","jc/parsers/ifconfig.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":1},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update ifconfig doc","epoch":1617911108,"epoch_utc":null},{"commit":"e28c08b1361161cfd123b9ebc11fa1ffa87d658f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 12:42:01 2021 -0700","stats":{"files_changed":46,"insertions":976,"deletions":1209,"files":["docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/csv.md","lines_changed":36},{"name":"docs/parsers/date.md","lines_changed":63},{"name":"docs/parsers/df.md","lines_changed":54},{"name":"docs/parsers/dig.md","lines_changed":128},{"name":"docs/parsers/dir.md","lines_changed":44},{"name":"docs/parsers/dmidecode.md","lines_changed":50},{"name":"docs/parsers/dpkg_l.md","lines_changed":46},{"name":"docs/parsers/du.md","lines_changed":34},{"name":"docs/parsers/env.md","lines_changed":34},{"name":"docs/parsers/file.md","lines_changed":34},{"name":"docs/parsers/finger.md","lines_changed":52},{"name":"docs/parsers/free.md","lines_changed":44},{"name":"docs/parsers/fstab.md","lines_changed":42},{"name":"docs/parsers/group.md","lines_changed":42},{"name":"docs/parsers/gshadow.md","lines_changed":46},{"name":"docs/parsers/hash.md","lines_changed":34},{"name":"docs/parsers/hashsum.md","lines_changed":34},{"name":"docs/parsers/hciconfig.md","lines_changed":118},{"name":"docs/parsers/history.md","lines_changed":34},{"name":"docs/parsers/hosts.md","lines_changed":38},{"name":"docs/parsers/id.md","lines_changed":74},{"name":"docs/parsers/ifconfig.md","lines_changed":86},{"name":"jc/parsers/csv.py","lines_changed":27},{"name":"jc/parsers/date.py","lines_changed":54},{"name":"jc/parsers/df.py","lines_changed":45},{"name":"jc/parsers/dig.py","lines_changed":143},{"name":"jc/parsers/dir.py","lines_changed":35},{"name":"jc/parsers/dmidecode.py","lines_changed":41},{"name":"jc/parsers/dpkg_l.py","lines_changed":37},{"name":"jc/parsers/du.py","lines_changed":25},{"name":"jc/parsers/env.py","lines_changed":25},{"name":"jc/parsers/file.py","lines_changed":25},{"name":"jc/parsers/finger.py","lines_changed":43},{"name":"jc/parsers/foo.py","lines_changed":25},{"name":"jc/parsers/free.py","lines_changed":35},{"name":"jc/parsers/fstab.py","lines_changed":33},{"name":"jc/parsers/group.py","lines_changed":33},{"name":"jc/parsers/gshadow.py","lines_changed":37},{"name":"jc/parsers/hash.py","lines_changed":25},{"name":"jc/parsers/hashsum.py","lines_changed":25},{"name":"jc/parsers/hciconfig.py","lines_changed":109},{"name":"jc/parsers/history.py","lines_changed":25},{"name":"jc/parsers/hosts.py","lines_changed":29},{"name":"jc/parsers/id.py","lines_changed":65},{"name":"jc/parsers/ifconfig.py","lines_changed":77},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update documentation","epoch":1617910921,"epoch_utc":null},{"commit":"a4b6846f63b43168085275d73940265940badf46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 11:37:39 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":467,"files":["man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"man/jc.1","lines_changed":467},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"man update","epoch":1617907059,"epoch_utc":null},{"commit":"2bc830786114fd57619f34b936dcf6e0bed7a109","merge":"9b39917 5d8f836","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 11:33:50 2021 -0700","message":"Merge branch 'master' into dev\n\n# Conflicts:\n# man/jc.1","epoch":1617906830,"epoch_utc":null},{"commit":"9b39917c798ed0310c9b82d87172cbf6d24ba111","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 11:24:02 2021 -0700","stats":{"files_changed":17,"insertions":391,"deletions":453,"files":["README.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","jc/cli.py","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/acpi.md","lines_changed":94},{"name":"docs/parsers/airport.md","lines_changed":56},{"name":"docs/parsers/blkid.md","lines_changed":88},{"name":"docs/parsers/cksum.md","lines_changed":36},{"name":"docs/parsers/crontab.md","lines_changed":79},{"name":"docs/parsers/crontab_u.md","lines_changed":83},{"name":"jc/cli.py","lines_changed":6},{"name":"jc/parsers/acpi.py","lines_changed":85},{"name":"jc/parsers/airport.py","lines_changed":47},{"name":"jc/parsers/blkid.py","lines_changed":79},{"name":"jc/parsers/cksum.py","lines_changed":27},{"name":"jc/parsers/crontab.py","lines_changed":70},{"name":"jc/parsers/crontab_u.py","lines_changed":74},{"name":"man/jc.1","lines_changed":8},{"name":"templates/manpage_template","lines_changed":8},{"name":"templates/readme_template","lines_changed":2}]},"message":"update docstrings for new help functionality","epoch":1617906242,"epoch_utc":null},{"commit":"57c13cc0a38ad89fda8b0e362bd6487257d0a26a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 10:54:15 2021 -0700","stats":{"files_changed":1,"insertions":23,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":26}]},"message":"add support for parser help","epoch":1617904455,"epoch_utc":null},{"commit":"b7355fd30d992a1bcc90227f5a1b02be073829e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 10:20:24 2021 -0700","stats":{"files_changed":2,"insertions":37,"deletions":48,"files":["docs/parsers/arp.md","jc/parsers/arp.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":46},{"name":"jc/parsers/arp.py","lines_changed":39}]},"message":"new docstring format for improved documentation","epoch":1617902424,"epoch_utc":null},{"commit":"93ae309e407b26820b9f05b5b331d05fc77df57f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 8 10:20:00 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/__init__.py","man/jc.1"],"file_stats":[{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"bump version to 1.15.1","epoch":1617902400,"epoch_utc":null},{"commit":"5d8f8365e24a7c3a587d4e71ebba4876de08203b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 14:27:34 2021 -0700","stats":{"files_changed":3,"insertions":9,"deletions":461,"files":["man/jc.1","man/jc.1.gz","mangen.py"],"file_stats":[{"name":"man/jc.1","lines_changed":461},{"name":"man/jc.1.gz","lines_changed":null},{"name":"mangen.py","lines_changed":9}]},"message":"gzip man page","epoch":1617830854,"epoch_utc":null},{"commit":"f26909eefb236e9ebf63be53cd86ae13cc3d9ea3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 11:18:33 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["docs/parsers/dir.md"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":8}]},"message":"formatting","epoch":1617819513,"epoch_utc":null},{"commit":"55bfbb2797ede3aefbb14ecab950b108b1895ccc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 11:13:27 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":6,"files":["EXAMPLES.md","jc/parsers/dir.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":3},{"name":"jc/parsers/dir.py","lines_changed":8}]},"message":"formatting","epoch":1617819207,"epoch_utc":null},{"commit":"8970b8342a855203aef649b60dad3e49a1d7fd2a","merge":"a73fdb7 5285e69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 09:34:45 2021 -0700","message":"Merge pull request #115 from kellyjonbrazil/master\n\nSync master and dev","epoch":1617813285,"epoch_utc":null},{"commit":"5285e699c30fdeaf56068f5a03ef1d1d33fa673c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 08:07:50 2021 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","jc/cli.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"fix rpm-qi parser name","epoch":1617808070,"epoch_utc":null},{"commit":"275f3860d5870303235b651d42650256e4db8ada","merge":"577811f a73fdb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 07:54:41 2021 -0700","message":"Merge pull request #114 from kellyjonbrazil/dev\n\nDev v1.15.0","epoch":1617807281,"epoch_utc":null},{"commit":"a73fdb7478965f0f2c841ac01b2762db80ad0786","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 7 07:50:17 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["CHANGELOG","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"update dates","epoch":1617807017,"epoch_utc":null},{"commit":"f2d746403a0ed764f931ae9e14d180bab107dcca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 20:30:56 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/rpm_qi.md","jc/parsers/rpm_qi.py"],"file_stats":[{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"jc/parsers/rpm_qi.py","lines_changed":2}]},"message":"typo fix","epoch":1617766256,"epoch_utc":null},{"commit":"b7dbf2c49be4beb793495a0aaee7f05dbea5a3a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 18:53:50 2021 -0700","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":26}]},"message":"doc formatting","epoch":1617760430,"epoch_utc":null},{"commit":"21f3c97788826e79b0c387f877c5adf269318e97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 18:38:04 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2}]},"message":"rename rpm_qai to rpm_qi","epoch":1617759484,"epoch_utc":null},{"commit":"14b727cc717d04fefba1cc31b6f29b549ced986f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 18:34:08 2021 -0700","stats":{"files_changed":3,"insertions":73,"deletions":0,"files":["tests/fixtures/centos-7.7/rpm-qi-package.json","tests/fixtures/centos-7.7/rpm-qi-package.out","tests/test_rpm_qai.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/rpm-qi-package.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rpm-qi-package.out","lines_changed":26},{"name":"tests/test_rpm_qai.py","lines_changed":46}]},"message":"add rpm_qi tests","epoch":1617759248,"epoch_utc":null},{"commit":"abee226591ed4ae37351efc995017d28b27827d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 18:32:47 2021 -0700","stats":{"files_changed":5,"insertions":205,"deletions":14,"files":["README.md","docs/parsers/rpm_qi.md","jc/cli.py","jc/parsers/{rpm_qai.py => rpm_qi.py}","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":191},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/{rpm_qai.py => rpm_qi.py}","lines_changed":20},{"name":"man/jc.1","lines_changed":4}]},"message":"rename rpm_qia to rpm_qi","epoch":1617759167,"epoch_utc":null},{"commit":"293ad39f4bcf326186dd917d8bc58d3964e5e4d6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 16:48:31 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"typo fix","epoch":1617752911,"epoch_utc":null},{"commit":"92443025811019f616f596abb60a2889f604c122","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 15:07:39 2021 -0700","stats":{"files_changed":4,"insertions":7,"deletions":6,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/rpm_qai.md","jc/parsers/rpm_qai.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":4},{"name":"docs/parsers/rpm_qai.md","lines_changed":4},{"name":"jc/parsers/rpm_qai.py","lines_changed":4}]},"message":"rpm parser doc update","epoch":1617746859,"epoch_utc":null},{"commit":"753cac25fb1e7e6cd2c742afa8d45ced068ea91d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 14:46:27 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":3,"files":["jc/parsers/rpm_qai.py"],"file_stats":[{"name":"jc/parsers/rpm_qai.py","lines_changed":9}]},"message":"only add description if it exists","epoch":1617745587,"epoch_utc":null},{"commit":"0548263e898bf14f93d2fa423c0f0a9d9f2ff567","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 14:39:39 2021 -0700","stats":{"files_changed":8,"insertions":10468,"deletions":0,"files":["EXAMPLES.md","README.md","docs/parsers/rpm_qai.md","jc/cli.py","jc/parsers/rpm_qai.py","man/jc.1","tests/fixtures/centos-7.7/rpm-qai.json","tests/fixtures/centos-7.7/rpm-qai.out"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":53},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/rpm_qai.md","lines_changed":191},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/rpm_qai.py","lines_changed":255},{"name":"man/jc.1","lines_changed":5},{"name":"tests/fixtures/centos-7.7/rpm-qai.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rpm-qai.out","lines_changed":9961}]},"message":"add rpm -qai parser","epoch":1617745179,"epoch_utc":null},{"commit":"53776a9bf894988d6ef9221a62ab8b816c89560c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 11:36:10 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":2},{"name":"templates/manpage_template","lines_changed":2}]},"message":"note -a output is JSON","epoch":1617734170,"epoch_utc":null},{"commit":"cc7def9b76a7fa6de1e11b584676820f3acb0257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 11:29:30 2021 -0700","stats":{"files_changed":3,"insertions":18,"deletions":0,"files":["tests/fixtures/osx-10.14.6/finger.json","tests/fixtures/osx-10.14.6/finger.out","tests/test_finger.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/finger.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/finger.out","lines_changed":5},{"name":"tests/test_finger.py","lines_changed":12}]},"message":"add OSX finger tests","epoch":1617733770,"epoch_utc":null},{"commit":"11a4422c25ed905f33475677bcc2f59f49c62a23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 11:23:29 2021 -0700","stats":{"files_changed":3,"insertions":51,"deletions":0,"files":["tests/fixtures/centos-7.7/finger.json","tests/fixtures/centos-7.7/finger.out","tests/test_finger.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/finger.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/finger.out","lines_changed":3},{"name":"tests/test_finger.py","lines_changed":47}]},"message":"add centos 7.7 finger tests","epoch":1617733409,"epoch_utc":null},{"commit":"3a44785260514227b541530baf3e14b6c7ebe86a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 11:23:09 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/finger.py"],"file_stats":[{"name":"jc/parsers/finger.py","lines_changed":4}]},"message":"del details key if details are blank","epoch":1617733389,"epoch_utc":null},{"commit":"e0d430c26c38db8de5a32741e05df412cffe45b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 11:00:46 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"update -r raw option info","epoch":1617732046,"epoch_utc":null},{"commit":"417b70020accfa4910016e9d3d12690a5488f6f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 10:51:41 2021 -0700","stats":{"files_changed":5,"insertions":129,"deletions":22,"files":["EXAMPLES.md","docs/parsers/finger.md","jc/parsers/finger.py","tests/fixtures/ubuntu-18.04/finger.json","tests/fixtures/ubuntu-18.04/finger.out"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":18},{"name":"docs/parsers/finger.md","lines_changed":53},{"name":"jc/parsers/finger.py","lines_changed":71},{"name":"tests/fixtures/ubuntu-18.04/finger.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/finger.out","lines_changed":8}]},"message":"add idle time fields to finger parser","epoch":1617731501,"epoch_utc":null},{"commit":"7b29c464b72ef9a79bd872dab92cf65016490bcc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 10:04:02 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"date updated","epoch":1617728642,"epoch_utc":null},{"commit":"26d5529d86e4e459ad94226465c3697a050af0ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 10:03:51 2021 -0700","stats":{"files_changed":1,"insertions":10,"deletions":7,"files":["docs/parsers/finger.md"],"file_stats":[{"name":"docs/parsers/finger.md","lines_changed":17}]},"message":"remove aix support, add note for -s support. schema update","epoch":1617728631,"epoch_utc":null},{"commit":"852103c478321b84ffbbc0a876d5ece0c0881e1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 6 10:02:46 2021 -0700","stats":{"files_changed":1,"insertions":27,"deletions":14,"files":["jc/parsers/finger.py"],"file_stats":[{"name":"jc/parsers/finger.py","lines_changed":41}]},"message":"tweak regex to support arbitrary 'detail' data","epoch":1617728566,"epoch_utc":null},{"commit":"26a115421b0888e23f4348f1124e2ef7b39df4cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 17:16:38 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":11}]},"message":"add finger parser","epoch":1617668198,"epoch_utc":null},{"commit":"755b941a9aa602d95d9bc599f5c64e05f9e6216d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 17:14:33 2021 -0700","stats":{"files_changed":3,"insertions":35,"deletions":30,"files":["EXAMPLES.md","docs/parsers/finger.md","jc/parsers/finger.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":23},{"name":"docs/parsers/finger.md","lines_changed":21},{"name":"jc/parsers/finger.py","lines_changed":21}]},"message":"doc update","epoch":1617668073,"epoch_utc":null},{"commit":"fd1ca82d86649adeb84968142665e5e4fae3fa0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 17:09:22 2021 -0700","stats":{"files_changed":5,"insertions":263,"deletions":0,"files":["README.md","docs/parsers/finger.md","jc/cli.py","jc/parsers/finger.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/finger.md","lines_changed":102},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/finger.py","lines_changed":154},{"name":"man/jc.1","lines_changed":5}]},"message":"add finger parser","epoch":1617667762,"epoch_utc":null},{"commit":"6fe175344fc61d4996a9ea20f6c5d429efb1fac7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 13:38:09 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"change examples link to github.io","epoch":1617655089,"epoch_utc":null},{"commit":"3590cda13a68616ee7eb8c85c5554ffb3fef036d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 12:07:52 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/last.md","jc/parsers/last.py"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":2}]},"message":"docs formatting","epoch":1617649672,"epoch_utc":null},{"commit":"2f1011dd85ec9b3550138ac4a4e1729fa5b4fe17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 12:03:35 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"readme update","epoch":1617649415,"epoch_utc":null},{"commit":"2b155261b3f6e4879b592f5bc052649ded5e3d69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 12:01:53 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":2}]},"message":"use new github.io links for documentation","epoch":1617649313,"epoch_utc":null},{"commit":"02f4d606d0a446c7cc74aedac6035ee79805950d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 11:49:30 2021 -0700","stats":{"files_changed":2,"insertions":69,"deletions":69,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":136},{"name":"templates/readme_template","lines_changed":2}]},"message":"add documentation links to README.md","epoch":1617648570,"epoch_utc":null},{"commit":"577811f00b7fcd0396bb0e26a2985709bd2c65a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 11:42:59 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/_config.yml"],"file_stats":[{"name":"docs/_config.yml","lines_changed":1}]},"message":"Set theme jekyll-theme-cayman","epoch":1617648179,"epoch_utc":null},{"commit":"b4098d67a3a4a617d42c1389e0a88833c77b89b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 09:42:35 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"latest","epoch":1617640955,"epoch_utc":null},{"commit":"88bd7554aeb511c19e55dc3dde9c9376efb0485b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 09:42:25 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":3,"files":["docgen.sh","updatedocs.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":2},{"name":"updatedocs.sh","lines_changed":9}]},"message":"add status messages","epoch":1617640945,"epoch_utc":null},{"commit":"b5ec16c5cafb78db093861cc30d9646207f2227a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 5 09:23:20 2021 -0700","stats":{"files_changed":2,"insertions":0,"deletions":8,"files":["mangen.py","readmegen.py"],"file_stats":[{"name":"mangen.py","lines_changed":4},{"name":"readmegen.py","lines_changed":4}]},"message":"formatting","epoch":1617639800,"epoch_utc":null},{"commit":"68fcb60a1460a35500180ec05a8cf5ba5706ff17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 20:56:10 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["updatedocs.sh"],"file_stats":[{"name":"updatedocs.sh","lines_changed":6}]},"message":"add updatedocs script","epoch":1617594970,"epoch_utc":null},{"commit":"e4781d60ce251f6d47f19bbe042e97f8aa9e2f18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 20:52:34 2021 -0700","stats":{"files_changed":65,"insertions":188,"deletions":189,"files":["README.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":124},{"name":"jc/parsers/acpi.py","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/blkid.py","lines_changed":2},{"name":"jc/parsers/cksum.py","lines_changed":3},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/dir.py","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":2},{"name":"jc/parsers/dpkg_l.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/group.py","lines_changed":2},{"name":"jc/parsers/gshadow.py","lines_changed":2},{"name":"jc/parsers/hash.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":2},{"name":"jc/parsers/hciconfig.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/ntpq.py","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":2},{"name":"jc/parsers/ping.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/shadow.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/sysctl.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/time.py","lines_changed":2},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/parsers/wc.py","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":2},{"name":"man/jc.1","lines_changed":126}]},"message":"update parser descriptions with backticks surrounding command names","epoch":1617594754,"epoch_utc":null},{"commit":"6201fb346a66ba762651624cdaf03f08e08579a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 20:31:58 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"test backticks in description","epoch":1617593518,"epoch_utc":null},{"commit":"f88c8343f9dec5e0190df94a5109e6c749bda286","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 20:30:53 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"update iw-scan description for documentation","epoch":1617593453,"epoch_utc":null},{"commit":"25410d33168ee7142bd8f8c739ef22a62a47eb6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 20:28:54 2021 -0700","stats":{"files_changed":5,"insertions":973,"deletions":70,"files":["README.md","mangen.py","readmegen.py","{man/template => templates}/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":139},{"name":"mangen.py","lines_changed":2},{"name":"readmegen.py","lines_changed":16},{"name":"{man/template => templates}/manpage_template","lines_changed":0},{"name":"templates/readme_template","lines_changed":886}]},"message":"create readmegen.py script. move jinja2 templates to templates folder","epoch":1617593334,"epoch_utc":null},{"commit":"4ff9952938d0654376efc94ca7d8a12f6df171af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 15:57:44 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":10}]},"message":"change OSX to macOS","epoch":1617577064,"epoch_utc":null},{"commit":"5e3f63a412c5b23e7515337521ebba6273b5c11f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 15:53:23 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["man/jc.1","man/template/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":4},{"name":"man/template/manpage_template","lines_changed":8}]},"message":"add license and copyright info. use variables instead of hard-coded values","epoch":1617576803,"epoch_utc":null},{"commit":"e1f57be69efdfd7facd07df6ef0955a36c4fc18b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 15:52:50 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add license info","epoch":1617576770,"epoch_utc":null},{"commit":"2c65d5eeccdc95d2de00ac6575a9e8d8458486bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 14:40:22 2021 -0700","stats":{"files_changed":2,"insertions":32,"deletions":8,"files":["man/jc.1","man/template/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":20},{"name":"man/template/manpage_template","lines_changed":20}]},"message":"man page updates","epoch":1617572422,"epoch_utc":null},{"commit":"aa621f2f1ee043611c440683dfb63e6577d8fac4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 4 14:29:37 2021 -0700","stats":{"files_changed":3,"insertions":74,"deletions":9,"files":["CHANGELOG","man/jc.1","man/template/manpage_template"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"man/jc.1","lines_changed":42},{"name":"man/template/manpage_template","lines_changed":40}]},"message":"enhance man page","epoch":1617571777,"epoch_utc":null},{"commit":"ac932c6e59ad80115962d0ea91e6aaabc70c211e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 3 14:48:30 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":2},{"name":"jc/utils.py","lines_changed":2}]},"message":"update timestamp docs","epoch":1617486510,"epoch_utc":null},{"commit":"029f79da1647e53f97ca83ba92b1f36a131f3128","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 21:52:08 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"added info regarding updated dev scripts for automating doc generation","epoch":1617425528,"epoch_utc":null},{"commit":"153b2b4a7a216caae5b03f6d50d43980c13a705f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 21:50:04 2021 -0700","stats":{"files_changed":1,"insertions":11,"deletions":68,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":79}]},"message":"use jc to help automate the generation of its own docs","epoch":1617425404,"epoch_utc":null},{"commit":"709b2fe4eead06090f903718deeb06ec774fc26e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 18:08:46 2021 -0700","stats":{"files_changed":2,"insertions":16,"deletions":0,"files":["man/jc.1","man/template/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":8},{"name":"man/template/manpage_template","lines_changed":8}]},"message":"add -h and -v options","epoch":1617412126,"epoch_utc":null},{"commit":"09c1fccc584e3d0582e19b520586419085ea8d04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 18:04:55 2021 -0700","stats":{"files_changed":3,"insertions":4,"deletions":6,"files":["man/jc.1","man/template/manpage_template","mangen.py"],"file_stats":[{"name":"man/jc.1","lines_changed":2},{"name":"man/template/manpage_template","lines_changed":2},{"name":"mangen.py","lines_changed":6}]},"message":"manpage updates","epoch":1617411895,"epoch_utc":null},{"commit":"fd254d99b782888fe7646e42a61f28aa99e7cba7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 17:40:09 2021 -0700","stats":{"files_changed":3,"insertions":193,"deletions":15,"files":["man/jc.1","man/template/manpage_template","mangen.py"],"file_stats":[{"name":"man/jc.1","lines_changed":124},{"name":"man/template/manpage_template","lines_changed":64},{"name":"mangen.py","lines_changed":20}]},"message":"add manpage generator","epoch":1617410409,"epoch_utc":null},{"commit":"88bd2c172217c498431e8904e74313bc27978785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 16:31:22 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"fix typo","epoch":1617406282,"epoch_utc":null},{"commit":"d03e2f0fc1d0310cd94702f4d3c959d71b0eb622","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 15:01:21 2021 -0700","stats":{"files_changed":1,"insertions":40,"deletions":0,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":40}]},"message":"add parser schema guidelines","epoch":1617400881,"epoch_utc":null},{"commit":"3f12a393bd37062cd1412128be495235b0c7351f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 13:25:23 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"formatting","epoch":1617395123,"epoch_utc":null},{"commit":"8c21284c5038bdc2e52ff4211fac747f33f52091","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 13:23:26 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":3}]},"message":"remove redundant license info","epoch":1617395006,"epoch_utc":null},{"commit":"e7d396c2157a77500017967dfc68ffaf32507c2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 13:21:56 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"update issues link","epoch":1617394916,"epoch_utc":null},{"commit":"f238fac0eb0c8e5133c6c9abf9ca709f5df7a925","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 13:19:47 2021 -0700","stats":{"files_changed":3,"insertions":49,"deletions":0,"files":["CHANGELOG","CONTRIBUTING.md","README.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"CONTRIBUTING.md","lines_changed":46},{"name":"README.md","lines_changed":2}]},"message":"add contributing guidelines","epoch":1617394787,"epoch_utc":null},{"commit":"017228f80d9a65ad7715f31c539d9fca1615296f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:14:26 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add tested on Windows 10","epoch":1617390866,"epoch_utc":null},{"commit":"286c5fa9434e25434ee8f4825621f68464296469","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:12:43 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add dir parser","epoch":1617390763,"epoch_utc":null},{"commit":"74cfc13abe4cd09ca5470714caeaedd24c099770","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:10:05 2021 -0700","stats":{"files_changed":9,"insertions":12,"deletions":21,"files":["tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-S.json","tests/fixtures/windows-10/dir-dirs.json","tests/fixtures/windows-10/dir-files.json","tests/fixtures/windows-10/dir-mix.json","tests/fixtures/windows-10/dir-raw.json","tests/fixtures/windows-10/dir.json","tests/test_dir.py"],"file_stats":[{"name":"tests/fixtures/windows-10/dir-C.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-ODTC.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-S.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-dirs.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-files.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-mix.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-raw.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir.json","lines_changed":2},{"name":"tests/test_dir.py","lines_changed":18}]},"message":"fixup dir parser tests","epoch":1617390605,"epoch_utc":null},{"commit":"0ee4a6c377321cf6ff67ced38e9a07a8f6313943","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:01:39 2021 -0700","stats":{"files_changed":2,"insertions":207,"deletions":460,"files":["docs/parsers/dir.md","jc/parsers/dir.py"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":316},{"name":"jc/parsers/dir.py","lines_changed":351}]},"message":"update schema and add epoch naive timestamp","epoch":1617390099,"epoch_utc":null},{"commit":"283433578dfc3f132ef35727ce5bafb3e390896c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:01:23 2021 -0700","stats":{"files_changed":2,"insertions":46,"deletions":0,"files":["EXAMPLES.md","README.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":45},{"name":"README.md","lines_changed":1}]},"message":"add dir parser","epoch":1617390083,"epoch_utc":null},{"commit":"9559c85057308e8815d4654bbe0062a5858c0b2b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 12:01:05 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":0,"files":["jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":1},{"name":"tests/test_utils.py","lines_changed":2}]},"message":"add windows dir format","epoch":1617390065,"epoch_utc":null},{"commit":"c5c020f5654038dacba542be3784a35d7333cbcc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 11:16:03 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/parsers/dir.md"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":1}]},"message":"add /S option","epoch":1617387363,"epoch_utc":null},{"commit":"95ec79bceb3d0c4245e36b7b16cfda6e16b01197","merge":"8f8be8a 5b60c74","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 11:14:26 2021 -0700","message":"Merge pull request #107 from rasheed-rd/add-dir-parser\n\nAdd windows dir command parser","epoch":1617387266,"epoch_utc":null},{"commit":"8f8be8aa33f0b708ebd9a35c6b288572443d7181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 2 11:14:06 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4}]},"message":"add -1 option info","epoch":1617387246,"epoch_utc":null},{"commit":"5b60c7445a3f8bd2ae1587aa0ffaeaf093966f9a","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","date":"Fri Apr 2 13:43:06 2021 -0400","stats":{"files_changed":5,"insertions":469,"deletions":400,"files":["docs/parsers/dir.md","jc/parsers/dir.py","tests/fixtures/windows-10/dir-S.json","tests/fixtures/windows-10/dir-S.out","tests/test_dir.py"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":404},{"name":"jc/parsers/dir.py","lines_changed":405},{"name":"tests/fixtures/windows-10/dir-S.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-S.out","lines_changed":47},{"name":"tests/test_dir.py","lines_changed":12}]},"message":"Add support for /S and update documentation","epoch":1617396186,"epoch_utc":null},{"commit":"d9dbcc8b526c8de9c6d12ac580880fd606dc68cf","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","date":"Fri Apr 2 13:13:05 2021 -0400","stats":{"files_changed":15,"insertions":149,"deletions":73,"files":["docs/parsers/dir.md","jc/parsers/dir.py","tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-Q.json","tests/fixtures/windows-10/dir-Q.out","tests/fixtures/windows-10/dir-dirs.json","tests/fixtures/windows-10/dir-dirs.out","tests/fixtures/windows-10/dir-files.json","tests/fixtures/windows-10/dir-files.out","tests/fixtures/windows-10/dir-mix.json","tests/fixtures/windows-10/dir-mix.out","tests/fixtures/windows-10/dir-raw.json","tests/fixtures/windows-10/dir.json","tests/test_dir.py"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":24},{"name":"jc/parsers/dir.py","lines_changed":59},{"name":"tests/fixtures/windows-10/dir-C.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-ODTC.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-Q.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-Q.out","lines_changed":21},{"name":"tests/fixtures/windows-10/dir-dirs.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-dirs.out","lines_changed":19},{"name":"tests/fixtures/windows-10/dir-files.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-files.out","lines_changed":16},{"name":"tests/fixtures/windows-10/dir-mix.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-mix.out","lines_changed":22},{"name":"tests/fixtures/windows-10/dir-raw.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir.json","lines_changed":2},{"name":"tests/test_dir.py","lines_changed":50}]},"message":"Add parent dir to structure. Add test cases. Remove support for /Q","epoch":1617394385,"epoch_utc":null},{"commit":"79bc525970b38dea68b4859ac5dd32fc681e5994","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:42:36 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":1},{"name":"jc/parsers/dpkg_l.py","lines_changed":1}]},"message":"add codes field to schema","epoch":1617334956,"epoch_utc":null},{"commit":"9dae1091ddc6141694ebfdc5ae649582cb879ccd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:41:05 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":6},{"name":"jc/parsers/dpkg_l.py","lines_changed":4}]},"message":"typo fix","epoch":1617334865,"epoch_utc":null},{"commit":"74d3ac686a69518c1048260e37a0245ff254ff57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:37:12 2021 -0700","stats":{"files_changed":4,"insertions":61,"deletions":0,"files":["tests/fixtures/ubuntu-18.04/dpkg-l-codes.json","tests/fixtures/ubuntu-18.04/dpkg-l-columns500.json","tests/fixtures/ubuntu-18.04/dpkg-l.json","tests/test_dpkg_l.py"],"file_stats":[{"name":"tests/fixtures/ubuntu-18.04/dpkg-l-codes.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l-columns500.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l.json","lines_changed":1},{"name":"tests/test_dpkg_l.py","lines_changed":58}]},"message":"add dpkg-l tests","epoch":1617334632,"epoch_utc":null},{"commit":"cf3cc636badcf4ae6db1e5ee5e57ca0331ee5b0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:25:56 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add dpkg-l parser info","epoch":1617333956,"epoch_utc":null},{"commit":"a720441e1d34771c5a54876cb7dd63fb8c9f408e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:24:19 2021 -0700","stats":{"files_changed":1,"insertions":54,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":54}]},"message":"add dpkg -l example","epoch":1617333859,"epoch_utc":null},{"commit":"0a7ed0959df07e2f36d9ec3ca8c294cfdaf10396","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:17:21 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"jc/parsers/dpkg_l.py","lines_changed":6}]},"message":"rename err to error","epoch":1617333441,"epoch_utc":null},{"commit":"eb83c9b86dc6d1ff15efed30993071834b65a7d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:13:40 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":21,"files":["docs/utils.md"],"file_stats":[{"name":"docs/utils.md","lines_changed":29}]},"message":"replace parse_datetime_to_timestamp with timestamp class","epoch":1617333220,"epoch_utc":null},{"commit":"5c0142dd19eee14f4f1c287f0543e29824f9ae70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 20:12:58 2021 -0700","stats":{"files_changed":9,"insertions":1797,"deletions":2,"files":["CHANGELOG","docgen.sh","docs/parsers/dpkg_l.md","jc/cli.py","jc/parsers/dpkg_l.py","jc/parsers/universal.py","tests/fixtures/ubuntu-18.04/dpkg-l-codes.out","tests/fixtures/ubuntu-18.04/dpkg-l-columns500.out","tests/fixtures/ubuntu-18.04/dpkg-l.out"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/dpkg_l.md","lines_changed":170},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/dpkg_l.py","lines_changed":247},{"name":"jc/parsers/universal.py","lines_changed":4},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l-codes.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l-columns500.out","lines_changed":677},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l.out","lines_changed":677}]},"message":"add dpkg-l parser","epoch":1617333178,"epoch_utc":null},{"commit":"c326c8dc8356b55bba13864156adf30607205ece","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 12:52:10 2021 -0700","stats":{"files_changed":18,"insertions":194,"deletions":1,"files":["jc/parsers/time.py","tests/fixtures/osx-10.14.6/time-l.json","tests/fixtures/osx-10.14.6/time-l.out","tests/fixtures/osx-10.14.6/time-lp.json","tests/fixtures/osx-10.14.6/time-lp.out","tests/fixtures/osx-10.14.6/time-p.json","tests/fixtures/osx-10.14.6/time-p.out","tests/fixtures/osx-10.14.6/time.json","tests/fixtures/osx-10.14.6/time.out","tests/fixtures/ubuntu-18.04/time-p.json","tests/fixtures/ubuntu-18.04/time-p.out","tests/fixtures/ubuntu-18.04/time-verbose.json","tests/fixtures/ubuntu-18.04/time-verbose.out","tests/fixtures/ubuntu-18.04/time.json","tests/fixtures/ubuntu-18.04/time.out","tests/fixtures/ubuntu-18.04/time2.json","tests/fixtures/ubuntu-18.04/time2.out","tests/test_time.py"],"file_stats":[{"name":"jc/parsers/time.py","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/time-l.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/time-l.out","lines_changed":15},{"name":"tests/fixtures/osx-10.14.6/time-lp.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/time-lp.out","lines_changed":17},{"name":"tests/fixtures/osx-10.14.6/time-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/time-p.out","lines_changed":3},{"name":"tests/fixtures/osx-10.14.6/time.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/time.out","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time-p.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/time-verbose.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time-verbose.out","lines_changed":23},{"name":"tests/fixtures/ubuntu-18.04/time.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/time2.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time2.out","lines_changed":2},{"name":"tests/test_time.py","lines_changed":118}]},"message":"add TypeError to except block. add /usr/bin/time tests","epoch":1617306730,"epoch_utc":null},{"commit":"fc4082a03feb5645a1ad687908782a2584a58956","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:26:02 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":131,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":131}]},"message":"remove old parse_datetime_to_timestamp function","epoch":1617301562,"epoch_utc":null},{"commit":"c8655565ff8718f0f14d41696b81e6539529dde1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:23:24 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"use new timestamp class","epoch":1617301404,"epoch_utc":null},{"commit":"638f879f16c9e87edb60953f4fd0b1c7ad92f277","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:21:27 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":5}]},"message":"use new timestamp class","epoch":1617301287,"epoch_utc":null},{"commit":"1d221bf7e6128d57bd769c0fe8f37f7a94da8cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:19:49 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/who.py","lines_changed":3}]},"message":"use new timestamp class","epoch":1617301189,"epoch_utc":null},{"commit":"60ea71f0ef931dccf09e6eb0cb737ddad0b47f0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:18:03 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/timedatectl.py"],"file_stats":[{"name":"jc/parsers/timedatectl.py","lines_changed":3}]},"message":"use new timestamp class","epoch":1617301083,"epoch_utc":null},{"commit":"d8bdd35a3f462efcdc871426309299e8aefb0a79","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:17:53 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":5}]},"message":"use new timestamp class","epoch":1617301073,"epoch_utc":null},{"commit":"7463891c53f3670710dfa72ed1422431c274fe4a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:13:02 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":6}]},"message":"use new timestamp class","epoch":1617300782,"epoch_utc":null},{"commit":"7537aec76fa07384c4439f34c50d4e3f001c0dfa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:08:27 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":8,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":16}]},"message":"use jc.utils.timestamp instead of jc.utils.parse_datetime_to_timestamp()","epoch":1617300507,"epoch_utc":null},{"commit":"62234e39a8533362a20f106c64326ed69f430006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:08:20 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":8,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":13}]},"message":"use jc.utils.timestamp instead of jc.utils.parse_datetime_to_timestamp()","epoch":1617300500,"epoch_utc":null},{"commit":"be004b7b3fe9217160c6418907e7d8aad10e5fae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 1 11:07:37 2021 -0700","stats":{"files_changed":2,"insertions":172,"deletions":15,"files":["jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":155},{"name":"tests/test_utils.py","lines_changed":32}]},"message":"make parse_datetime_to_timestamp function a class called timestamp for easier use","epoch":1617300457,"epoch_utc":null},{"commit":"82539444b24169b2eb762485ed032fc968a81f71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 31 20:48:44 2021 -0700","stats":{"files_changed":2,"insertions":23,"deletions":21,"files":["docs/parsers/time.md","jc/parsers/time.py"],"file_stats":[{"name":"docs/parsers/time.md","lines_changed":1},{"name":"jc/parsers/time.py","lines_changed":43}]},"message":"fix indentation for int and float conversions. add real_time field to schema","epoch":1617248924,"epoch_utc":null},{"commit":"a571d3cbafd5048d1d59070e1791398ae410197f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 31 20:41:04 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/time.md","jc/parsers/time.py"],"file_stats":[{"name":"docs/parsers/time.md","lines_changed":2},{"name":"jc/parsers/time.py","lines_changed":2}]},"message":"fix typo","epoch":1617248464,"epoch_utc":null},{"commit":"a038c14c23ea27264df61a38e0301de8d1fa1b9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 31 20:39:03 2021 -0700","stats":{"files_changed":3,"insertions":8,"deletions":8,"files":["EXAMPLES.md","docs/parsers/time.md","jc/parsers/time.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":4},{"name":"jc/parsers/time.py","lines_changed":10}]},"message":"change microseconds to centiseconds","epoch":1617248343,"epoch_utc":null},{"commit":"25a85d874cd2b57a7700b0c2dca61132127732b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 31 20:21:29 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"update docs","epoch":1617247289,"epoch_utc":null},{"commit":"884c36ff42df4f580c8e2b4705def8e4c1182e39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 31 20:19:46 2021 -0700","stats":{"files_changed":8,"insertions":536,"deletions":1,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","docs/parsers/iw_scan.md","docs/parsers/time.md","jc/cli.py","jc/parsers/time.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":36},{"name":"README.md","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":163},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/time.py","lines_changed":332}]},"message":"add /usr/bin/time parser","epoch":1617247186,"epoch_utc":null},{"commit":"b98e72b8b4eda0ab5ede7725226e61634af572eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 21:33:23 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add ls parser info","epoch":1617165203,"epoch_utc":null},{"commit":"05885c0096b5ee142ecff2d17e37c446518998a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 21:29:34 2021 -0700","stats":{"files_changed":5,"insertions":931,"deletions":18,"files":["docs/parsers/ls.md","jc/parsers/ls.py","tests/fixtures/ubuntu-18.04/ls-l-iso.json","tests/fixtures/ubuntu-18.04/ls-l-iso.out","tests/test_ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":22},{"name":"jc/parsers/ls.py","lines_changed":31},{"name":"tests/fixtures/ubuntu-18.04/ls-l-iso.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-l-iso.out","lines_changed":883},{"name":"tests/test_ls.py","lines_changed":12}]},"message":"add epoch and epoch_utc timestamps","epoch":1617164974,"epoch_utc":null},{"commit":"4c9761231af897658c3a2c0abcc476aa8b43d1b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 20:41:10 2021 -0700","stats":{"files_changed":21,"insertions":118,"deletions":81,"files":["CHANGELOG","EXAMPLES.md","README.md","docs/parsers/dig.md","jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":46},{"name":"README.md","lines_changed":14},{"name":"docs/parsers/dig.md","lines_changed":50},{"name":"jc/parsers/dig.py","lines_changed":56},{"name":"tests/fixtures/centos-7.7/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig-x.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig.json","lines_changed":2},{"name":"tests/fixtures/generic/dig-answer-spaces.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-x.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig.json","lines_changed":2}]},"message":"add when_epoch and when_epoch_utc fields","epoch":1617162070,"epoch_utc":null},{"commit":"656eaa150861948091ef9d6323805c2698039bc6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 16:43:53 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1617147833,"epoch_utc":null},{"commit":"1560dcddcf82f55fffce22d1b46d372b25a9d0fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 16:43:02 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"add acpi, upower parsers and -v version option","epoch":1617147782,"epoch_utc":null},{"commit":"08d4cd4870c7acaf3a453d1400b64d77d462437b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 16:34:01 2021 -0700","stats":{"files_changed":7,"insertions":114,"deletions":43,"files":["EXAMPLES.md","docs/parsers/acpi.md","jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.json","tests/fixtures/generic/acpi-V2.json","tests/fixtures/generic/acpi-V3.json","tests/fixtures/generic/acpi-V4.json"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":34},{"name":"docs/parsers/acpi.md","lines_changed":50},{"name":"jc/parsers/acpi.py","lines_changed":65},{"name":"tests/fixtures/generic/acpi-V.json","lines_changed":2},{"name":"tests/fixtures/generic/acpi-V2.json","lines_changed":2},{"name":"tests/fixtures/generic/acpi-V3.json","lines_changed":2},{"name":"tests/fixtures/generic/acpi-V4.json","lines_changed":2}]},"message":"add time calculations to acpi parser","epoch":1617147241,"epoch_utc":null},{"commit":"9767a50cededb140575e195abf79ce49c4f53789","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 11:59:44 2021 -0700","stats":{"files_changed":12,"insertions":48,"deletions":46,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/who.md","jc/parsers/who.py","jc/utils.py","tests/fixtures/centos-7.7/who-a.json","tests/fixtures/centos-7.7/who.json","tests/fixtures/osx-10.14.6/who-a.json","tests/fixtures/osx-10.14.6/who.json","tests/fixtures/ubuntu-18.04/who-a.json","tests/fixtures/ubuntu-18.04/who.json","tests/test_utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":37},{"name":"docs/parsers/who.md","lines_changed":18},{"name":"jc/parsers/who.py","lines_changed":23},{"name":"jc/utils.py","lines_changed":1},{"name":"tests/fixtures/centos-7.7/who-a.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/who.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/who-a.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/who.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/who-a.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/who.json","lines_changed":2},{"name":"tests/test_utils.py","lines_changed":2}]},"message":"update who parser to add epoch naive timestamp","epoch":1617130784,"epoch_utc":null},{"commit":"cd86890ed1493644e391e52e33561e9a77631a51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 30 08:05:26 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"add website to info and use variables for version info","epoch":1617116726,"epoch_utc":null},{"commit":"ba0dd3b9ca98a042c772898302fcfe5fdc84f79a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 21:25:19 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":4}]},"message":"add parse_timedate_to_timestamp test for format 7300","epoch":1617078319,"epoch_utc":null},{"commit":"8d7fa07ffd50f38336a448eb506a76d9d4849a6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 21:20:19 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":11,"files":["tests/fixtures/centos-7.7/timedatectl.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/timedatectl.json","lines_changed":12}]},"message":"unformat json","epoch":1617078019,"epoch_utc":null},{"commit":"cade1bfe6e56b5926898b7204e911885efebd5a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 21:19:12 2021 -0700","stats":{"files_changed":2,"insertions":12,"deletions":2,"files":["tests/fixtures/centos-7.7/timedatectl.json","tests/fixtures/ubuntu-18.04/timedatectl.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/timedatectl.json","lines_changed":12},{"name":"tests/fixtures/ubuntu-18.04/timedatectl.json","lines_changed":2}]},"message":"update timedatectl tests for new epoch_utc field","epoch":1617077952,"epoch_utc":null},{"commit":"daec4ab0a7f572e872b27b043d51f68e5e06300f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 21:16:40 2021 -0700","stats":{"files_changed":5,"insertions":20,"deletions":4,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/timedatectl.md","jc/parsers/timedatectl.py","jc/utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"EXAMPLES.md","lines_changed":3},{"name":"docs/parsers/timedatectl.md","lines_changed":6},{"name":"jc/parsers/timedatectl.py","lines_changed":11},{"name":"jc/utils.py","lines_changed":1}]},"message":"add epoch_utc field to timedatectl parser","epoch":1617077800,"epoch_utc":null},{"commit":"3c96bc319615c824a06c388e9e3c1d68a9bf4084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:57:58 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":2}]},"message":"version bump","epoch":1617076678,"epoch_utc":null},{"commit":"7f7d8d4bd6f37015b11bac60a7bd99e8d3eca108","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:36:10 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":0,"files":["docs/parsers/stat.md","jc/parsers/stat.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":4}]},"message":"update stat docs","epoch":1617075370,"epoch_utc":null},{"commit":"47263661a41987f334fd484e866e0aa8859cde5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:30:20 2021 -0700","stats":{"files_changed":1,"insertions":18,"deletions":2,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":20}]},"message":"update stat example","epoch":1617075020,"epoch_utc":null},{"commit":"4c42a086d206919dfe4f1c0801fe4fb1027cb1cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:25:54 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":6,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":7}]},"message":"clean up debug code","epoch":1617074754,"epoch_utc":null},{"commit":"5d2541a5c4bc93f3943a491c76df7f8d4e2cf44b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:22:35 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":5}]},"message":"remove auto c locale and use a manual format rule for windows and linux compatibility","epoch":1617074555,"epoch_utc":null},{"commit":"d91d170b49bfc88c0b2fb54475705c038172f1c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:16:05 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"try manual c locale format for windows","epoch":1617074165,"epoch_utc":null},{"commit":"6d1f4584a9ccd0f0f7ed4fdf408576a9e7f5046b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 20:05:42 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":4}]},"message":"try manually setting time format for windows compatibility","epoch":1617073542,"epoch_utc":null},{"commit":"1d76d96bcf4185cffb7066bec637913099399db5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 16:58:57 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":4}]},"message":"debug windows issue","epoch":1617062337,"epoch_utc":null},{"commit":"e8847c998c91131acf5ee0f6485e9976c0fce3ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 16:35:26 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["tests/fixtures/centos-7.7/stat.json","tests/fixtures/freebsd12/stat.json","tests/fixtures/osx-10.14.6/stat.json","tests/fixtures/ubuntu-18.04/stat.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/stat.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/stat.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/stat.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/stat.json","lines_changed":2}]},"message":"update stat tests","epoch":1617060926,"epoch_utc":null},{"commit":"da88e49bae2f3fecff623f52c20bf994b653583e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 15:36:16 2021 -0700","stats":{"files_changed":2,"insertions":69,"deletions":29,"files":["docs/parsers/stat.md","jc/parsers/stat.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":76},{"name":"jc/parsers/stat.py","lines_changed":22}]},"message":"add new examples","epoch":1617057376,"epoch_utc":null},{"commit":"65c3a12e5422782df40489c3c431677f5657dbf5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 15:32:04 2021 -0700","stats":{"files_changed":2,"insertions":35,"deletions":24,"files":["jc/parsers/stat.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":58},{"name":"jc/utils.py","lines_changed":1}]},"message":"simplify None data scenario","epoch":1617057124,"epoch_utc":null},{"commit":"d8d600cc36bde4e6216b935f87a765599e896714","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 14:51:48 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add reference to -h for help","epoch":1617054708,"epoch_utc":null},{"commit":"507999b117b024fed1ccf067bd5dc411dbeb268c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 14:45:13 2021 -0700","stats":{"files_changed":3,"insertions":34,"deletions":19,"files":["docs/utils.md","jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":32},{"name":"jc/utils.py","lines_changed":13},{"name":"tests/test_utils.py","lines_changed":8}]},"message":"add stat command timestamp detection","epoch":1617054313,"epoch_utc":null},{"commit":"8ad164eb340e135eeeb10b721172916182f37e30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 12:33:54 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":6}]},"message":"fix tests for compact output","epoch":1617046434,"epoch_utc":null},{"commit":"a507df140b245b83b1c46e8462b44e1145c42f2a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 12:25:58 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add compact json info","epoch":1617045958,"epoch_utc":null},{"commit":"8912a99986a977ee6ca7bbe2368f5033644577b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 12:25:48 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"make default json output more compact","epoch":1617045948,"epoch_utc":null},{"commit":"1953f9882890cd0e8c515d43ce28c96f918b0ab4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 11:44:43 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"add version info. add json now supports unicode output","epoch":1617043483,"epoch_utc":null},{"commit":"7515218ddd2cdcfcebd67850140e842f2f121226","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 11:42:01 2021 -0700","stats":{"files_changed":2,"insertions":10,"deletions":14,"files":["jc/cli.py","jc/utils.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8},{"name":"jc/utils.py","lines_changed":16}]},"message":"use jc.utils for all warning and error messages. simply error and warning formatting.","epoch":1617043321,"epoch_utc":null},{"commit":"36c11201366cefedee4244fb71a4a9cc6507e6ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 10:59:56 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"formatting","epoch":1617040796,"epoch_utc":null},{"commit":"8fa0fe64d8418093c7f28cdc70a7f409956aeb04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 10:52:02 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":10}]},"message":"add -v to helptext. minor formatting","epoch":1617040322,"epoch_utc":null},{"commit":"c1a8201b140c65579ff9f8427322b67653bf3006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 10:24:58 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":4}]},"message":"add copyright","epoch":1617038698,"epoch_utc":null},{"commit":"398bbac48c8a716b1872843d671aa6ceaeba6a78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 10:23:52 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"simplify return value for parse_datetime_to_timestamp()","epoch":1617038632,"epoch_utc":null},{"commit":"ea71a42bbdd9b09a457727cfe763054625f7901a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 09:43:19 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"formatting","epoch":1617036199,"epoch_utc":null},{"commit":"1c16d25b17a7282a62a5ebd9755df5569c57435f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 29 09:41:15 2021 -0700","stats":{"files_changed":2,"insertions":30,"deletions":9,"files":["README.md","jc/cli.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"jc/cli.py","lines_changed":35}]},"message":"add version option (-v) and copyright information. add 'ensure_ascii=False' to json dumps to properly show UTF-8 copyright character","epoch":1617036075,"epoch_utc":null},{"commit":"9d12ded889f656656267cbf7a91d71267201f736","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 16:32:17 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"help description change","epoch":1616801537,"epoch_utc":null},{"commit":"5312701515ecb3a10598bb9dcf2f73b7eae71b93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 16:29:10 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add - make all external python requirements optional","epoch":1616801350,"epoch_utc":null},{"commit":"808c7bc0a94ecfd160ee2b257e5feec347829a5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 16:14:35 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/xml.py"],"file_stats":[{"name":"jc/parsers/xml.py","lines_changed":10}]},"message":"make xmltodict library optional","epoch":1616800475,"epoch_utc":null},{"commit":"4d394015f458f284d052ce2c1a0c8492916c5b3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 16:10:28 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":10}]},"message":"make ruamel.yaml library optional","epoch":1616800228,"epoch_utc":null},{"commit":"3638298af8ebc01d54aa3ab5668d0adedca957e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 15:54:45 2021 -0700","stats":{"files_changed":1,"insertions":53,"deletions":44,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":97}]},"message":"make pygments library optional","epoch":1616799285,"epoch_utc":null},{"commit":"5f00973e400629bd68c0ab60ed9005410278f855","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 15:38:57 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":2}]},"message":"remove parenthesis to normalize text for naive timezone detection","epoch":1616798337,"epoch_utc":null},{"commit":"0f6e2c14fcb69f664c29083ec5207326f842dfdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 14:57:19 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":9}]},"message":"simplify timestamp failure logic","epoch":1616795839,"epoch_utc":null},{"commit":"51813da61994226ba40478825d47f80c23413349","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 14:56:45 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":4,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":13}]},"message":"add offset timezones. fix timestamp logic on conversion failure","epoch":1616795805,"epoch_utc":null},{"commit":"e7751322ea195cac7f1921ba8e0364c442065d20","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 14:55:47 2021 -0700","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":10}]},"message":"formatting","epoch":1616795747,"epoch_utc":null},{"commit":"26ef29843784ade3d55410be13300dd6f4c06890","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 14:55:16 2021 -0700","stats":{"files_changed":1,"insertions":10,"deletions":6,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":16}]},"message":"change return to always include the entire object but all keys may be None if conversion fails","epoch":1616795716,"epoch_utc":null},{"commit":"badaf8ce73d7deb0ec2be244e27b4bf8cddbea19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 14:00:33 2021 -0700","stats":{"files_changed":1,"insertions":14,"deletions":14,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":28}]},"message":"comment formatting","epoch":1616792433,"epoch_utc":null},{"commit":"b123a622039f3cc32643a3bfc0766154d660f8bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 13:11:34 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":9}]},"message":"move locale change formats to the end of the list","epoch":1616789494,"epoch_utc":null},{"commit":"cfd77e42522aa2ebeada9f45ac99bd1d3414f782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 13:01:12 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":1}]},"message":"reset locale to None on exception","epoch":1616788872,"epoch_utc":null},{"commit":"38f814072eac5370059f1b4203316eee41cf535b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 11:55:12 2021 -0700","stats":{"files_changed":1,"insertions":26,"deletions":8,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":34}]},"message":"better normalization of datetime string. better UTC detection. More formats supported with detected locale.","epoch":1616784912,"epoch_utc":null},{"commit":"a0db7754e384a0c95f2099bf894f3a22bd33c002","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 09:32:49 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add nixos install info","epoch":1616776369,"epoch_utc":null},{"commit":"f07620afc7dc0d0d605eb483ef36c5979b33cdfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 26 09:28:03 2021 -0700","stats":{"files_changed":3,"insertions":18,"deletions":7,"files":["README.md","jc/__init__.py","jc/cli.py"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"jc/__init__.py","lines_changed":3},{"name":"jc/cli.py","lines_changed":21}]},"message":"move version to jc.__init__.py\nadd -h option for help instead of always showing on error\nuse jc.utils.error_message for the following errors: missing/incorrect arguments, parser not found, missing piped data","epoch":1616776083,"epoch_utc":null},{"commit":"c1b0d27752726989c6051f683a1194941bee598c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 20:45:38 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":10,"files":["runtests.sh"],"file_stats":[{"name":"runtests.sh","lines_changed":10}]},"message":"remove old commented commands","epoch":1616730338,"epoch_utc":null},{"commit":"430a5108aa265d4df0e4584eade54759da864c61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 20:42:58 2021 -0700","stats":{"files_changed":3,"insertions":19,"deletions":60,"files":["runtests.sh","tests/test_last.py","tests/test_last2.py"],"file_stats":[{"name":"runtests.sh","lines_changed":16},{"name":"tests/test_last.py","lines_changed":23},{"name":"tests/test_last2.py","lines_changed":40}]},"message":"move all tests to github actions","epoch":1616730178,"epoch_utc":null},{"commit":"111ce92fc9c33b82c7d1a1664dda046ea5993f6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 20:37:35 2021 -0700","stats":{"files_changed":4,"insertions":0,"deletions":1,"files":["tests/{localtest_date.py => test_date.py}","tests/{localtest_last.py => test_last2.py}","tests/{localtest_upower.py => test_upower.py}","tests/test_utils.py"],"file_stats":[{"name":"tests/{localtest_date.py => test_date.py}","lines_changed":0},{"name":"tests/{localtest_last.py => test_last2.py}","lines_changed":0},{"name":"tests/{localtest_upower.py => test_upower.py}","lines_changed":0},{"name":"tests/test_utils.py","lines_changed":1}]},"message":"attempt all tests in github actions with timezone correction","epoch":1616729855,"epoch_utc":null},{"commit":"c851e8a58d98b2a4907cf1e7cf7c7d8d8dc04dc6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 20:33:25 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":1}]},"message":"force github action","epoch":1616729605,"epoch_utc":null},{"commit":"39f4bcd9b41450068903ea2843508586eccdf709","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 20:30:13 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"Change Windows timezone\n\nuse \"Pacific Standard Time\"","epoch":1616729413,"epoch_utc":null},{"commit":"4a610c4c81493788b8351e8c74aabe819c981c02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:57:32 2021 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":1}]},"message":"force github action","epoch":1616727452,"epoch_utc":null},{"commit":"89ee11945d4e2db107a33ef0d61e0c6015ac8ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:55:21 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"Change timezone provider\n\nuses: szenius/set-timezone@v1.0","epoch":1616727321,"epoch_utc":null},{"commit":"dadb09b74a69d1852f8433e0e32ccdd67bd91181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:52:43 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":1}]},"message":"force github action","epoch":1616727163,"epoch_utc":null},{"commit":"1b1f638b97dc5e6f2767183eb363b79ae3c9b3c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:49:03 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":8}]},"message":"Change timezone change provider\n\nchange to actions/set-timezone-action","epoch":1616726943,"epoch_utc":null},{"commit":"794fc4ed44d1565514303090403d68ba5d639cb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:43:16 2021 -0700","stats":{"files_changed":2,"insertions":36,"deletions":8,"files":["jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":16},{"name":"tests/test_utils.py","lines_changed":28}]},"message":"add parse_datetime_to_timestamp() tests","epoch":1616726596,"epoch_utc":null},{"commit":"72f735bf9211d7beddcf58819fe465722f5d7c5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 19:42:02 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":4}]},"message":"Set Timezone to America/Los_Angeles\n\nUsing zcong1993/setup-timezone","epoch":1616726522,"epoch_utc":null},{"commit":"912877f25ad562ed4cafe7b2d7446bd48b477ea2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 15:34:54 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"additional timezone info","epoch":1616711694,"epoch_utc":null},{"commit":"2772c5ae436ea437d833003372d53a3d3f955ea0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 15:10:07 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"formatting","epoch":1616710207,"epoch_utc":null},{"commit":"a7ad24d2cb61d84cf2846f8fa43af31f0597043e","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","date":"Thu Mar 25 16:45:30 2021 -0400","stats":{"files_changed":13,"insertions":772,"deletions":0,"files":["docgen.sh","docs/parsers/dir.md","jc/cli.py","jc/parsers/dir.py","tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-C.out","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-ODTC.out","tests/fixtures/windows-10/dir-Q.json","tests/fixtures/windows-10/dir-Q.out","tests/fixtures/windows-10/dir.json","tests/fixtures/windows-10/dir.out","tests/test_dir.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/dir.md","lines_changed":286},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/dir.py","lines_changed":332},{"name":"tests/fixtures/windows-10/dir-C.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-C.out","lines_changed":21},{"name":"tests/fixtures/windows-10/dir-ODTC.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-ODTC.out","lines_changed":21},{"name":"tests/fixtures/windows-10/dir-Q.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-Q.out","lines_changed":21},{"name":"tests/fixtures/windows-10/dir.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir.out","lines_changed":21},{"name":"tests/test_dir.py","lines_changed":64}]},"message":"Add dir parser\n\nAdd usage commands\n\nFix example options\n\nupdate dir.md","epoch":1616715930,"epoch_utc":null},{"commit":"a364a6a9faeb6aa290b790f3dec74e92b8670534","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 15:08:23 2021 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"add note regarding calculated timestamps","epoch":1616710103,"epoch_utc":null},{"commit":"7b2dc86a8d974e7984fe2540f56a66c2b9386acd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 12:07:36 2021 -0700","stats":{"files_changed":1,"insertions":23,"deletions":19,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":42}]},"message":"update last example with new timestamp fields","epoch":1616699256,"epoch_utc":null},{"commit":"ad645636d07d0423253f19068a22b2a28251b05f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 11:43:30 2021 -0700","stats":{"files_changed":5,"insertions":86,"deletions":50,"files":["CHANGELOG","EXAMPLES.md","README.md","docs/parsers/uptime.md","jc/parsers/uptime.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":9},{"name":"EXAMPLES.md","lines_changed":19},{"name":"README.md","lines_changed":19},{"name":"docs/parsers/uptime.md","lines_changed":50},{"name":"jc/parsers/uptime.py","lines_changed":39}]},"message":"update uptime docs","epoch":1616697810,"epoch_utc":null},{"commit":"2f2f297b29fbe3172647a81db084b3564a441d40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 11:35:21 2021 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["tests/fixtures/centos-7.7/uptime.json","tests/fixtures/osx-10.11.6/uptime.json","tests/fixtures/osx-10.14.6/uptime.json","tests/fixtures/ubuntu-18.04/uptime.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/uptime.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/uptime.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/uptime.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/uptime.json","lines_changed":2}]},"message":"update uptime fixtures with new fields","epoch":1616697321,"epoch_utc":null},{"commit":"099ae3fde03f8157298f6b412bdddb8bd56da09a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 11:17:44 2021 -0700","stats":{"files_changed":1,"insertions":26,"deletions":22,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":48}]},"message":"fix issue when there is no data","epoch":1616696264,"epoch_utc":null},{"commit":"e9febe98ac5ec0e03791c5b6794446a2c3312fb1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 11:17:01 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["runtests.sh"],"file_stats":[{"name":"runtests.sh","lines_changed":2}]},"message":"add localtest partition lines for readability","epoch":1616696221,"epoch_utc":null},{"commit":"5fbd07cccf9fb697b996dcc3949eef5b1c09e655","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 25 10:31:12 2021 -0700","stats":{"files_changed":1,"insertions":59,"deletions":26,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":85}]},"message":"rewrite of uptime parser including new fields","epoch":1616693472,"epoch_utc":null},{"commit":"5fed4698c2c1f1b7e05c5b4c51639f818e049b53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:57:04 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":6,"files":["docs/parsers/last.md","jc/parsers/last.py"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":4},{"name":"jc/parsers/last.py","lines_changed":7}]},"message":"update docs and version number","epoch":1616648224,"epoch_utc":null},{"commit":"ed7eb0983a4dfcc1d66a2957be3e10b2203d909e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:51:43 2021 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":8}]},"message":"use parse_datetime_to_timestamp function instead of custom format string","epoch":1616647903,"epoch_utc":null},{"commit":"90c7e18e5fc5ea9fcf6157cc2656f47193d78411","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:50:32 2021 -0700","stats":{"files_changed":1,"insertions":16,"deletions":11,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":27}]},"message":"update date example","epoch":1616647832,"epoch_utc":null},{"commit":"953ab5c3bd0c8b6eef29b717edaf1aa2380c2b93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:29:30 2021 -0700","stats":{"files_changed":2,"insertions":1,"deletions":0,"files":["runtests.sh","tests/{test_upower.py => localtest_upower.py}"],"file_stats":[{"name":"runtests.sh","lines_changed":1},{"name":"tests/{test_upower.py => localtest_upower.py}","lines_changed":0}]},"message":"make upower tests local only","epoch":1616646570,"epoch_utc":null},{"commit":"699c97d8a07f7575454746159ac4d19981cd1a5c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:24:47 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add last parser info","epoch":1616646287,"epoch_utc":null},{"commit":"e4ca0de92a689ce93b91d86106a5da590226855a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 21:24:25 2021 -0700","stats":{"files_changed":8,"insertions":100,"deletions":0,"files":["tests/fixtures/generic/upower-i-c-locale.json","tests/fixtures/generic/upower-i-non-utc.json","tests/fixtures/generic/upower-i-utc.json",".../{upower-i-utc.out2 => upower-i-utc.out}","tests/fixtures/ubuntu-18.04/upower-d-clocale.json","tests/fixtures/ubuntu-18.04/upower-d.json","tests/fixtures/ubuntu-18.04/upower-i.json","tests/test_upower.py"],"file_stats":[{"name":"tests/fixtures/generic/upower-i-c-locale.json","lines_changed":1},{"name":"tests/fixtures/generic/upower-i-non-utc.json","lines_changed":1},{"name":"tests/fixtures/generic/upower-i-utc.json","lines_changed":1},{"name":".../{upower-i-utc.out2 => upower-i-utc.out}","lines_changed":0},{"name":"tests/fixtures/ubuntu-18.04/upower-d-clocale.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/upower-d.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/upower-i.json","lines_changed":1},{"name":"tests/test_upower.py","lines_changed":94}]},"message":"add upower tests","epoch":1616646265,"epoch_utc":null},{"commit":"04745a36b84cc79e56bde2a0e92a4ee9ab4a1538","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 20:21:06 2021 -0700","stats":{"files_changed":2,"insertions":8,"deletions":5,"files":["CHANGELOG","jc/utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":12},{"name":"jc/utils.py","lines_changed":1}]},"message":"doc update","epoch":1616642466,"epoch_utc":null},{"commit":"5936940532b8b753e67c9f5cd9287f34cc84ae9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 20:20:53 2021 -0700","stats":{"files_changed":7,"insertions":136,"deletions":186,"files":["docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date-after-midnight.json","tests/fixtures/generic/date-before-midnight.json","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/fixtures/ubuntu-20.04/date2.json"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":74},{"name":"jc/parsers/date.py","lines_changed":238},{"name":"tests/fixtures/generic/date-after-midnight.json","lines_changed":2},{"name":"tests/fixtures/generic/date-before-midnight.json","lines_changed":2},{"name":"tests/fixtures/generic/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date2.json","lines_changed":2}]},"message":"rewrite of date parser using datetime library","epoch":1616642453,"epoch_utc":null},{"commit":"b3eb064b6753d6e894884e1c16054630c2396fe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 17:13:01 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":4}]},"message":"clarify format definition comments","epoch":1616631181,"epoch_utc":null},{"commit":"e4b41057e302074ac2a81ad8c36b6f95cd6b7db2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 17:02:17 2021 -0700","stats":{"files_changed":3,"insertions":24,"deletions":0,"files":[".../{upower-i.out => upower-i-c-locale.out}","tests/fixtures/generic/upower-i-non-utc.out",".../generic/{upower-i2.out => upower-i-utc.out2}"],"file_stats":[{"name":".../{upower-i.out => upower-i-c-locale.out}","lines_changed":0},{"name":"tests/fixtures/generic/upower-i-non-utc.out","lines_changed":24},{"name":".../generic/{upower-i2.out => upower-i-utc.out2}","lines_changed":0}]},"message":"update upower fixture names","epoch":1616630537,"epoch_utc":null},{"commit":"1d41c46cc762ab0c78b819e56db7df39f1111d5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 17:01:56 2021 -0700","stats":{"files_changed":1,"insertions":34,"deletions":5,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":39}]},"message":"normalize datetime string to remove all timezones except UTC","epoch":1616630516,"epoch_utc":null},{"commit":"a5c444587b3f0874fcc2833dc4e759c2dc1c7834","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 15:13:10 2021 -0700","stats":{"files_changed":5,"insertions":28,"deletions":0,"files":["tests/fixtures/generic/date-after-midnight.json","tests/fixtures/generic/date-after-midnight.out","tests/fixtures/generic/date-before-midnight.json","tests/fixtures/generic/date-before-midnight.out","tests/localtest_date.py"],"file_stats":[{"name":"tests/fixtures/generic/date-after-midnight.json","lines_changed":1},{"name":"tests/fixtures/generic/date-after-midnight.out","lines_changed":1},{"name":"tests/fixtures/generic/date-before-midnight.json","lines_changed":1},{"name":"tests/fixtures/generic/date-before-midnight.out","lines_changed":1},{"name":"tests/localtest_date.py","lines_changed":24}]},"message":"add before and after midnight date tests","epoch":1616623990,"epoch_utc":null},{"commit":"a56f471be980be16e73d3a91e2b12aad26c6d38c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 15:05:22 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/fixtures/generic/upower-i2.out"],"file_stats":[{"name":"tests/fixtures/generic/upower-i2.out","lines_changed":2}]},"message":"update fixture to use UTC for better testing","epoch":1616623522,"epoch_utc":null},{"commit":"6a6b26ed8d97014c2a5c7d91a4cd9b23f49530fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 15:04:39 2021 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":5}]},"message":"fix 12 to 24 hour conversion for midnight cases","epoch":1616623479,"epoch_utc":null},{"commit":"f62446c152d89f2d37b22ffe9d9de5b5c9fa7049","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 15:04:09 2021 -0700","stats":{"files_changed":1,"insertions":11,"deletions":10,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":21}]},"message":"rename variables. add another european time format","epoch":1616623449,"epoch_utc":null},{"commit":"56011f1f172344cab2a8e869e7a6df6e45c45874","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 14:14:22 2021 -0700","stats":{"files_changed":3,"insertions":73,"deletions":6,"files":["EXAMPLES.md","docs/parsers/upower.md","jc/parsers/upower.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":63},{"name":"docs/parsers/upower.md","lines_changed":8},{"name":"jc/parsers/upower.py","lines_changed":8}]},"message":"updated upower examples","epoch":1616620462,"epoch_utc":null},{"commit":"6d44091c80318fde6c09cd850e6dc5afde7fe799","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 14:01:06 2021 -0700","stats":{"files_changed":1,"insertions":13,"deletions":53,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":66}]},"message":"refactor parse_datetime_to_timestamp()","epoch":1616619666,"epoch_utc":null},{"commit":"440c458eb42925dffe2d7b026279468fa2fa1bb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 12:57:19 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"no need for ternary clause","epoch":1616615839,"epoch_utc":null},{"commit":"798250af6116441385339806c8f26bc9720ad302","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 12:49:53 2021 -0700","stats":{"files_changed":2,"insertions":18,"deletions":24,"files":["docs/parsers/upower.md","jc/parsers/upower.py"],"file_stats":[{"name":"docs/parsers/upower.md","lines_changed":7},{"name":"jc/parsers/upower.py","lines_changed":35}]},"message":"use jc.utils.parse_datetime_to_timestamp() function for timestamp creation","epoch":1616615393,"epoch_utc":null},{"commit":"c762de29c6491790908451aa20f6aa12fdfa9722","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 12:47:57 2021 -0700","stats":{"files_changed":2,"insertions":32,"deletions":2,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":30},{"name":"jc/utils.py","lines_changed":4}]},"message":"doc updates","epoch":1616615277,"epoch_utc":null},{"commit":"0701e65e97165efd40ab2ae5087897de3588ea32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 12:36:54 2021 -0700","stats":{"files_changed":1,"insertions":106,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":106}]},"message":"add parse_datetime_to_timestamp() function","epoch":1616614614,"epoch_utc":null},{"commit":"209d54e8b5be6476d896cee1a5274bd2b46219e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 24 07:39:11 2021 -0700","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":5},{"name":"jc/parsers/date.py","lines_changed":5}]},"message":"add hour_24 to schema docs","epoch":1616596751,"epoch_utc":null},{"commit":"2b38462de7d2fa61dd5d2a184e853279f1a9c84b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 23 14:59:03 2021 -0700","stats":{"files_changed":3,"insertions":33,"deletions":27,"files":["EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":20},{"name":"docs/parsers/date.md","lines_changed":20},{"name":"jc/parsers/date.py","lines_changed":20}]},"message":"update examples","epoch":1616536743,"epoch_utc":null},{"commit":"1e8e5533162cb01053ee25e9dbc709a429e58070","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 23 14:47:44 2021 -0700","stats":{"files_changed":6,"insertions":31,"deletions":14,"files":["CHANGELOG","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/fixtures/ubuntu-20.04/date2.json","tests/localtest_date.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/date.py","lines_changed":21},{"name":"tests/fixtures/generic/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date2.json","lines_changed":1},{"name":"tests/localtest_date.py","lines_changed":16}]},"message":"add hour_24 field","epoch":1616536064,"epoch_utc":null},{"commit":"ab42e6bb15026d6c46e15197c62bc3e8ef95c80d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 23 14:10:42 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":1},{"name":"jc/parsers/date.py","lines_changed":1}]},"message":"formatting","epoch":1616533842,"epoch_utc":null},{"commit":"680288454090f3c48c7f0580cdcb919c0b5a883e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 23 14:04:36 2021 -0700","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":4}]},"message":"ensure period is always uppercase in dict value. update period documentation","epoch":1616533476,"epoch_utc":null},{"commit":"7cb8577b9655f258f2910e7e7bcf3266d4cbece0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 23 13:55:23 2021 -0700","stats":{"files_changed":3,"insertions":70,"deletions":48,"files":["docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/ubuntu-20.04/date2.out"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":36},{"name":"jc/parsers/date.py","lines_changed":81},{"name":"tests/fixtures/ubuntu-20.04/date2.out","lines_changed":1}]},"message":"correct epoch_utc calculation. Fix for 12 hour vs. 24 hour representation","epoch":1616532923,"epoch_utc":null},{"commit":"55810ccd1f17ef6a4b1cb72fc21f6cf990ef8bb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 22:10:35 2021 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":1}]},"message":"set epoch_dt conversion again if not C locale","epoch":1616476235,"epoch_utc":null},{"commit":"f9921720cd0b9b0d76d66e6eb5bfe43481f5f52b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 22:01:07 2021 -0700","stats":{"files_changed":3,"insertions":4,"deletions":94,"files":["runtests.sh","tests/test_date.py","tests/test_last2.py"],"file_stats":[{"name":"runtests.sh","lines_changed":8},{"name":"tests/test_date.py","lines_changed":48},{"name":"tests/test_last2.py","lines_changed":42}]},"message":"revert to local testing for naive datetime objects","epoch":1616475667,"epoch_utc":null},{"commit":"cda1ebd271aa8fd1b716054a2149f876d8087230","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 21:53:50 2021 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["tests/test_date.py","tests/test_last2.py"],"file_stats":[{"name":"tests/test_date.py","lines_changed":2},{"name":"tests/test_last2.py","lines_changed":2}]},"message":"try tzset()","epoch":1616475230,"epoch_utc":null},{"commit":"6901e4a23aad0b58cbbfac86c61917115d115dfe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 21:49:26 2021 -0700","stats":{"files_changed":3,"insertions":89,"deletions":3,"files":["runtests.sh","tests/test_date.py","tests/test_last2.py"],"file_stats":[{"name":"runtests.sh","lines_changed":6},{"name":"tests/test_date.py","lines_changed":46},{"name":"tests/test_last2.py","lines_changed":40}]},"message":"try setting timezone env variable before tests to ensure it is the same on all test systems","epoch":1616474966,"epoch_utc":null},{"commit":"6bc21d3c735edc7897e49afd2a5ea9e3aa56d7fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 21:05:39 2021 -0700","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["runtests.sh","tests/{test_date.py => localtest_date.py}","tests/localtest_last.py"],"file_stats":[{"name":"runtests.sh","lines_changed":1},{"name":"tests/{test_date.py => localtest_date.py}","lines_changed":0},{"name":"tests/localtest_last.py","lines_changed":1}]},"message":"fix date parser tests - local tests only since timezones may not match on github actions VMs","epoch":1616472339,"epoch_utc":null},{"commit":"1ef231e26a2898d2a01f341fb92014df92703f72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:57:36 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"add date parser updates","epoch":1616471856,"epoch_utc":null},{"commit":"3cd43f0f985a3b8a4e74bf5632bd8dac92d751c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:57:16 2021 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/upower.md","jc/parsers/upower.py"],"file_stats":[{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":2}]},"message":"formatting","epoch":1616471836,"epoch_utc":null},{"commit":"156501996688e62dd61a8456206218582a6cbe1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:56:57 2021 -0700","stats":{"files_changed":5,"insertions":85,"deletions":63,"files":["EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":21},{"name":"docs/parsers/date.md","lines_changed":41},{"name":"jc/parsers/date.py","lines_changed":82},{"name":"tests/fixtures/generic/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date.json","lines_changed":2}]},"message":"fix weekday numbering to be ISO 8601 compliant. Add naive calculated epoch timestamp field","epoch":1616471817,"epoch_utc":null},{"commit":"0a4de2d3a1c235d1ac2d6e59346e77761fe51885","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:22:35 2021 -0700","stats":{"files_changed":2,"insertions":5,"deletions":2,"files":["docs/parsers/last.md","docs/parsers/upower.md"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":5}]},"message":"add naive datetime calculation info to docs","epoch":1616469755,"epoch_utc":null},{"commit":"a058f6c174e31f5e6040883bb544b83abd88c749","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:21:46 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":2}]},"message":"added naive epoch calculation info to docs","epoch":1616469706,"epoch_utc":null},{"commit":"d8e5d03b01a87704424f5259cf6bd977274fd6ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 22 20:21:12 2021 -0700","stats":{"files_changed":1,"insertions":20,"deletions":33,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":53}]},"message":"naive updated_epoch timestamp calculation added","epoch":1616469672,"epoch_utc":null},{"commit":"9dc62eff2eaaafec89c5b8797d8ca8e4c77a07d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 21 15:43:37 2021 -0700","stats":{"files_changed":1,"insertions":34,"deletions":21,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":55}]},"message":"remove epoch conversions","epoch":1616366617,"epoch_utc":null},{"commit":"d4fea17c57a97d6914624b06208b9439bf2eb05f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 21 14:03:36 2021 -0700","stats":{"files_changed":3,"insertions":13,"deletions":6,"files":["docgen.sh","docs/parsers/upower.md","jc/parsers/upower.py"],"file_stats":[{"name":"docgen.sh","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":15}]},"message":"use UTC when calculating epoch timestamp. reset time locale to default after changing","epoch":1616360616,"epoch_utc":null},{"commit":"3dd7a5b77ea708047bc12be9f2caddd9078723f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 19 11:00:50 2021 -0700","stats":{"files_changed":2,"insertions":230,"deletions":0,"files":["docgen.sh","docs/parsers/upower.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/upower.md","lines_changed":229}]},"message":"add upower docs","epoch":1616176850,"epoch_utc":null},{"commit":"d77c90a3ba2036b216f4a612876ace988eafd217","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 19 10:43:20 2021 -0700","stats":{"files_changed":1,"insertions":114,"deletions":6,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":120}]},"message":"fix quoted values in detail level. Add examples","epoch":1616175800,"epoch_utc":null},{"commit":"01f0c20df09fd4aa12bd108928b97376b51ef31a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 18 16:59:46 2021 -0700","stats":{"files_changed":1,"insertions":27,"deletions":0,"files":["tests/fixtures/ubuntu-18.04/upower-d-clocale.out"],"file_stats":[{"name":"tests/fixtures/ubuntu-18.04/upower-d-clocale.out","lines_changed":27}]},"message":"add sample using C locale timestamp","epoch":1616111986,"epoch_utc":null},{"commit":"aafbe576b3b754de91591d9ec2dae9e9f827dee4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 18 16:59:19 2021 -0700","stats":{"files_changed":1,"insertions":137,"deletions":36,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":173}]},"message":"working parser and processor","epoch":1616111959,"epoch_utc":null},{"commit":"bd68ad40345fb1f69be0e0f87dc67134f826cd06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 14:31:51 2021 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":4}]},"message":"don't modify detail_type value since it is no longer a key","epoch":1616016711,"epoch_utc":null},{"commit":"bfee017c138bb30ec6af836685013b7124028974","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 14:21:19 2021 -0700","stats":{"files_changed":1,"insertions":61,"deletions":20,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":81}]},"message":"made the schema more explicit by hardcoding more items. still working on the schema","epoch":1616016079,"epoch_utc":null},{"commit":"61f532cfd0b7fbf14a58a0fd638bcbfb03fbde72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 13:30:47 2021 -0700","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":12}]},"message":"working history list","epoch":1616013047,"epoch_utc":null},{"commit":"58dbbb75b607d0b29be185c3b8c3f0d8af21ecad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 13:10:52 2021 -0700","stats":{"files_changed":1,"insertions":9,"deletions":21,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":30}]},"message":"simplified logic","epoch":1616011852,"epoch_utc":null},{"commit":"8d88b91fcf5060d7d54f687efec3e3a606bab767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 12:49:48 2021 -0700","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":17}]},"message":"move if statements and generalize the history detail detection","epoch":1616010588,"epoch_utc":null},{"commit":"ad39fc60299089f56f37baac71820e50cbe87ed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 17 11:26:06 2021 -0700","stats":{"files_changed":6,"insertions":268,"deletions":0,"files":["jc/cli.py","jc/parsers/upower.py","tests/fixtures/generic/upower-i.out","tests/fixtures/generic/upower-i2.out","tests/fixtures/ubuntu-18.04/upower-d.out","tests/fixtures/ubuntu-18.04/upower-i.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/upower.py","lines_changed":173},{"name":"tests/fixtures/generic/upower-i.out","lines_changed":32},{"name":"tests/fixtures/generic/upower-i2.out","lines_changed":24},{"name":"tests/fixtures/ubuntu-18.04/upower-d.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-18.04/upower-i.out","lines_changed":11}]},"message":"working upower parser. history lines are ignored","epoch":1616005566,"epoch_utc":null},{"commit":"89f1fd96e6b7aa0acf6272e4f3469005d4f7c6bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 16 12:12:01 2021 -0700","stats":{"files_changed":6,"insertions":87,"deletions":0,"files":["tests/fixtures/generic/acpi-V.json","tests/fixtures/generic/acpi-V2.json","tests/fixtures/generic/acpi-V3.json","tests/fixtures/generic/acpi-V4.json","tests/fixtures/ubuntu-18.04/acpi-V.json","tests/test_acpi.py"],"file_stats":[{"name":"tests/fixtures/generic/acpi-V.json","lines_changed":1},{"name":"tests/fixtures/generic/acpi-V2.json","lines_changed":1},{"name":"tests/fixtures/generic/acpi-V3.json","lines_changed":1},{"name":"tests/fixtures/generic/acpi-V4.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/acpi-V.json","lines_changed":1},{"name":"tests/test_acpi.py","lines_changed":82}]},"message":"add acpi tests","epoch":1615921921,"epoch_utc":null},{"commit":"bd425f2493b68949c1fa02cd1d3289ec882d9b0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 16 11:45:56 2021 -0700","stats":{"files_changed":6,"insertions":321,"deletions":2,"files":["CHANGELOG","EXAMPLES.md","docgen.sh","docs/parsers/acpi.md","jc/cli.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":4},{"name":"EXAMPLES.md","lines_changed":58},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/acpi.md","lines_changed":256},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to v1.15.0. Add acpi docs","epoch":1615920356,"epoch_utc":null},{"commit":"46962ff02a0630766a927babc92e11ec91b1f789","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 12 16:45:15 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":11,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":12}]},"message":"remove redundant lines","epoch":1615596315,"epoch_utc":null},{"commit":"e4cb88b05166815e8ad03b646bd3f2b1da7f0d4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 12 12:47:59 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":1}]},"message":"remove unneeded line-state assignment","epoch":1615582079,"epoch_utc":null},{"commit":"32840703dc1d88412712b08db1c9bdaebbc34450","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 12 08:55:04 2021 -0800","stats":{"files_changed":1,"insertions":8,"deletions":39,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":47}]},"message":"remove redundant code","epoch":1615568104,"epoch_utc":null},{"commit":"1f7aafd0415a79e0547cc6f1c008c1918f8fb460","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 12 08:45:32 2021 -0800","stats":{"files_changed":3,"insertions":19,"deletions":9,"files":["jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out","tests/fixtures/generic/acpi-V4.out"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":15},{"name":"tests/fixtures/generic/acpi-V.out","lines_changed":1},{"name":"tests/fixtures/generic/acpi-V4.out","lines_changed":12}]},"message":"fix for full charge batter case. Clean up battery object logic","epoch":1615567532,"epoch_utc":null},{"commit":"7378d5dce43f75440cb57903e8ae0c1c615b0782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 11 21:06:24 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":1}]},"message":"remove comment","epoch":1615525584,"epoch_utc":null},{"commit":"84f76866cdf76f67b34de999fd987de8a02f0306","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 11 21:05:29 2021 -0800","stats":{"files_changed":1,"insertions":197,"deletions":3,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":200}]},"message":"working process function","epoch":1615525529,"epoch_utc":null},{"commit":"322da9ea6a1ceea1152d720797adb8f3a7dc1199","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 11 20:43:31 2021 -0800","stats":{"files_changed":2,"insertions":59,"deletions":12,"files":["jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":67},{"name":"tests/fixtures/generic/acpi-V.out","lines_changed":4}]},"message":"working parser","epoch":1615524211,"epoch_utc":null},{"commit":"58645301ec111bfeb2a618f5f169cc734042dc5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 11 19:55:47 2021 -0800","stats":{"files_changed":6,"insertions":236,"deletions":1,"files":["jc/cli.py","jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out","tests/fixtures/generic/acpi-V2.out","tests/fixtures/generic/acpi-V3.out","tests/fixtures/ubuntu-18.04/acpi-V.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/acpi.py","lines_changed":191},{"name":"tests/fixtures/generic/acpi-V.out","lines_changed":16},{"name":"tests/fixtures/generic/acpi-V2.out","lines_changed":12},{"name":"tests/fixtures/generic/acpi-V3.out","lines_changed":13},{"name":"tests/fixtures/ubuntu-18.04/acpi-V.out","lines_changed":2}]},"message":"add acpi command parser","epoch":1615521347,"epoch_utc":null},{"commit":"1e18dd30a824b0463f0cad86e0da7094c47d34f9","merge":"20f9b7f cc6a19a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 5 11:50:37 2021 -0800","message":"Merge pull request #102 from kellyjonbrazil/dev\n\nDev v1.14.4","epoch":1614973837,"epoch_utc":null},{"commit":"cc6a19adccea3e10243a166b87d852b6f95414b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 5 09:41:17 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"fix typo in comments","epoch":1614966077,"epoch_utc":null},{"commit":"2a5588b177a24d5b78a4b5a515aba515804b7baa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 5 09:38:22 2021 -0800","stats":{"files_changed":4,"insertions":13,"deletions":3,"files":["CHANGELOG","jc/cli.py","jc/parsers/yaml.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":5},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":7},{"name":"setup.py","lines_changed":2}]},"message":"packaging fix for yaml parser and pyoxidizer","epoch":1614965902,"epoch_utc":null},{"commit":"20f9b7f88b97ed68aba46e102b8c7b72443b9c85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 25 11:09:56 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"fix typo","epoch":1614280196,"epoch_utc":null},{"commit":"d7e32313cd9776b4a6af38cc2819d6e4ef8c0d55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 25 11:09:14 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"fix typo","epoch":1614280154,"epoch_utc":null},{"commit":"fb5654d3c4549e84940e2518f2d214debdd42d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 11 11:27:54 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1613071674,"epoch_utc":null},{"commit":"258f1433b36a7ee117ac43953edb4fe964603e7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 11 11:27:01 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add locale info to readme","epoch":1613071621,"epoch_utc":null},{"commit":"fb723ae8bd7bb51f9a4bab380ec1bc54cda0445b","merge":"87b506d 283b89e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 10 11:01:57 2021 -0800","message":"Merge pull request #101 from kellyjonbrazil/dev\n\nDev v1.14.3","epoch":1612983717,"epoch_utc":null},{"commit":"283b89e37c38a3082203e43e38569c8b0bb11e12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 10 10:55:53 2021 -0800","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["CHANGELOG","jc/parsers/dig.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/dig.py","lines_changed":6}]},"message":"simplify answer data logic","epoch":1612983353,"epoch_utc":null},{"commit":"f450f9eb8b7d382af316e88301e72af01a018be9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 10 10:47:56 2021 -0800","stats":{"files_changed":5,"insertions":74,"deletions":0,"files":["tests/fixtures/centos-7.7/hciconfig-a.json","tests/fixtures/centos-7.7/hciconfig.json","tests/fixtures/ubuntu-20.04/hciconfig-a.json","tests/fixtures/ubuntu-20.04/hciconfig.json","tests/test_hciconfig.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/hciconfig-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/hciconfig.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.04/hciconfig-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.04/hciconfig.json","lines_changed":1},{"name":"tests/test_hciconfig.py","lines_changed":70}]},"message":"add hciconfig tests","epoch":1612982876,"epoch_utc":null},{"commit":"b3f8cf99a4874335c6b43e105e0c1562c08256dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 10 08:03:36 2021 -0800","stats":{"files_changed":1,"insertions":15,"deletions":15,"files":["jc/parsers/hciconfig.py"],"file_stats":[{"name":"jc/parsers/hciconfig.py","lines_changed":30}]},"message":"work for both tabs and spaces","epoch":1612973016,"epoch_utc":null},{"commit":"4301ea8caea7c14f59bcddf09668d0198e1115a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 9 16:12:36 2021 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/hciconfig.py"],"file_stats":[{"name":"jc/parsers/hciconfig.py","lines_changed":1}]},"message":"remove debug line","epoch":1612915956,"epoch_utc":null},{"commit":"c672d1c174a42ce44544dfaec0ebcf3c30fd7acf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 9 16:03:00 2021 -0800","stats":{"files_changed":7,"insertions":903,"deletions":22,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","docs/parsers/hciconfig.md","jc/parsers/hciconfig.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"EXAMPLES.md","lines_changed":126},{"name":"README.md","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/hciconfig.md","lines_changed":358},{"name":"jc/parsers/hciconfig.py","lines_changed":414},{"name":"man/jc.1","lines_changed":22}]},"message":"initial working hciconfig parser","epoch":1612915380,"epoch_utc":null},{"commit":"229e953a38471cdd41af0810577d324329840a4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 9 13:26:24 2021 -0800","stats":{"files_changed":7,"insertions":205,"deletions":2,"files":["jc/cli.py","jc/parsers/hciconfig.py","setup.py","tests/fixtures/centos-7.7/hciconfig-a.out","tests/fixtures/centos-7.7/hciconfig.out","tests/fixtures/ubuntu-20.04/hciconfig-a.out","tests/fixtures/ubuntu-20.04/hciconfig.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/hciconfig.py","lines_changed":142},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/hciconfig-a.out","lines_changed":10},{"name":"tests/fixtures/centos-7.7/hciconfig.out","lines_changed":6},{"name":"tests/fixtures/ubuntu-20.04/hciconfig-a.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-20.04/hciconfig.out","lines_changed":17}]},"message":"initial add of hciconfig parser","epoch":1612905984,"epoch_utc":null},{"commit":"87b506dc9b4831d11b4fd04fd6849532db074f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 5 06:55:06 2021 -0800","stats":{"files_changed":7,"insertions":47,"deletions":4,"files":["CHANGELOG","jc/cli.py","jc/parsers/dig.py","setup.py","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/generic/dig-answer-spaces.out","tests/test_dig.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":8},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/generic/dig-answer-spaces.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-answer-spaces.out","lines_changed":23},{"name":"tests/test_dig.py","lines_changed":12}]},"message":"fix for spaces in dig answer data","epoch":1612536906,"epoch_utc":null},{"commit":"15c9002d9eff0f52d873fb3ab35dfafd03a8e919","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 8 11:56:56 2021 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"simplify logic by taking out 'not' in JC_COLORS parsing","epoch":1610135816,"epoch_utc":null},{"commit":"042aaa61b96fc8472a8a460c49bde4cbbc359094","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 8 08:23:29 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"minor updates","epoch":1610123009,"epoch_utc":null},{"commit":"ef856c6ba5774cd8ec23acd71496846e794e3872","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jan 7 12:09:41 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"clarify -q option","epoch":1610050181,"epoch_utc":null},{"commit":"9cf5be73e3f975132d1ffbef412638b941a5664f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 16:19:47 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"typo fix","epoch":1609978787,"epoch_utc":null},{"commit":"63fc149e2a097cbde60c2ce1aeb102d9becabd9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 16:17:25 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"typo fix","epoch":1609978645,"epoch_utc":null},{"commit":"3c25839350800c7e7d2c48fc032bb21efa0ac213","merge":"03c0295 58246e3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 14:37:24 2021 -0800","message":"Merge pull request #98 from kellyjonbrazil/dev\n\nDev v1.14.1","epoch":1609972644,"epoch_utc":null},{"commit":"58246e33b71bae0ca4a42ad5bdf31134948b1014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 14:33:38 2021 -0800","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","README.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"README.md","lines_changed":3}]},"message":"update compatibility info and changelog date","epoch":1609972418,"epoch_utc":null},{"commit":"8b1407c7068e2105a83992bbb026138ea67bc07c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 14:22:26 2021 -0800","stats":{"files_changed":3,"insertions":59,"deletions":10,"files":["runtests.sh","tests/localtest_last.py","tests/test_last.py"],"file_stats":[{"name":"runtests.sh","lines_changed":6},{"name":"tests/localtest_last.py","lines_changed":41},{"name":"tests/test_last.py","lines_changed":22}]},"message":"pull env-specific tests from CI/CD and run locally only","epoch":1609971746,"epoch_utc":null},{"commit":"2fde4a4e2299b98a9958e3a55849c6791e4b17dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 12:07:58 2021 -0800","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["EXAMPLES.md","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"doc updates","epoch":1609963678,"epoch_utc":null},{"commit":"60b9e9798286121399d0f8b75d63ab0f3312c9bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 12:02:47 2021 -0800","stats":{"files_changed":12,"insertions":80,"deletions":38,"files":["docs/parsers/last.md","jc/parsers/last.py","tests/fixtures/centos-7.7/last-crash.json","tests/fixtures/centos-7.7/last-w.json","tests/fixtures/centos-7.7/last-wF.json","tests/fixtures/centos-7.7/last-wF.out","tests/fixtures/centos-7.7/last.json","tests/fixtures/fedora32/last.json","tests/fixtures/osx-10.14.6/last.json","tests/fixtures/ubuntu-18.04/last-w.json","tests/fixtures/ubuntu-18.04/last.json","tests/fixtures/ubuntu-20.04/last-F.json"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":37},{"name":"jc/parsers/last.py","lines_changed":57},{"name":"tests/fixtures/centos-7.7/last-crash.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/last-w.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/last-wF.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/last-wF.out","lines_changed":6},{"name":"tests/fixtures/centos-7.7/last.json","lines_changed":2},{"name":"tests/fixtures/fedora32/last.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/last.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/last-w.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/last.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/last-F.json","lines_changed":2}]},"message":"last parser enhancements: augment hostname with CONSOLE for GUI login, add convenience fields when -F is used: login_epoch, logout_epoch, duration_seconds, calculate duration to hours:minutes","epoch":1609963367,"epoch_utc":null},{"commit":"0adac79c0f2a22b31dfef1432a029af06132467b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 11:09:59 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"Add last parser enhancements","epoch":1609960199,"epoch_utc":null},{"commit":"9f485b5981a2ce49ac699b9dad39993c5605ae18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 11:09:37 2021 -0800","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["jc/parsers/iw_scan.py","tests/fixtures/centos-7.7/iw-scan0.json","tests/fixtures/centos-7.7/iw-scan1.json"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":6},{"name":"tests/fixtures/centos-7.7/iw-scan0.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iw-scan1.json","lines_changed":2}]},"message":"change mac_address fieldname to bssid. Add credit to Phillip","epoch":1609960177,"epoch_utc":null},{"commit":"db17d21b8f9b2f899760e648f1483d33d0bcf47a","merge":"5885b96 996d394","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jan 6 10:42:30 2021 -0800","message":"Merge pull request #97 from pschmitt/iw_scan_fix_space_detection\n\niw_scan: Improve detection of lines starting with spaces","epoch":1609958550,"epoch_utc":null},{"commit":"996d394e89c732f327323ca340fce405bd5fb2e4","author":"Philipp Schmitt","author_email":"philipp@schmitt.co","date":"Wed Jan 6 10:32:17 2021 +0100","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":3}]},"message":"iw_scan: Improve detection of lines starting with spaces","epoch":1609957937,"epoch_utc":null},{"commit":"5885b960f9b33a95ecec9f4a33233c2f8682fbc4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 22:12:13 2021 -0800","stats":{"files_changed":3,"insertions":7,"deletions":2,"files":["CHANGELOG","README.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":2},{"name":"man/jc.1","lines_changed":4}]},"message":"doc updates","epoch":1609913533,"epoch_utc":null},{"commit":"79987b35f332e287567e103f25cf91cb50e040c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 22:07:22 2021 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2}]},"message":"formatting","epoch":1609913242,"epoch_utc":null},{"commit":"661b3ef311ad26678030c70c11f2f955667311a4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 22:04:44 2021 -0800","stats":{"files_changed":4,"insertions":94,"deletions":2,"files":["EXAMPLES.md","README.md","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":91},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"doc updates","epoch":1609913084,"epoch_utc":null},{"commit":"fb422726a8366c7133f0712d3b05a26620eea785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 21:55:06 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["tests/fixtures/ubuntu-20.04/last-F.json","tests/fixtures/ubuntu-20.04/last-F.out"],"file_stats":[{"name":"tests/fixtures/ubuntu-20.04/last-F.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/last-F.out","lines_changed":1}]},"message":"update test to add 'down' condition","epoch":1609912506,"epoch_utc":null},{"commit":"4fb6f3ea59c52515926a51a006e65a1c18e57720","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 21:51:30 2021 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":4}]},"message":"add support for down in addition to crash","epoch":1609912290,"epoch_utc":null},{"commit":"f78fe771e1c2fb4691858fa7f27b1febe5f8c6c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 21:38:51 2021 -0800","stats":{"files_changed":3,"insertions":48,"deletions":0,"files":["tests/fixtures/centos-7.7/iw-scan0.json","tests/fixtures/centos-7.7/iw-scan1.json","tests/test_iw_scan.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/iw-scan0.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iw-scan1.json","lines_changed":1},{"name":"tests/test_iw_scan.py","lines_changed":46}]},"message":"add iw-scan tests","epoch":1609911531,"epoch_utc":null},{"commit":"567b8872538ac9f6b384b98741acd9794229d513","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 21:26:43 2021 -0800","stats":{"files_changed":3,"insertions":252,"deletions":12,"files":["docgen.sh","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/iw_scan.md","lines_changed":160},{"name":"jc/parsers/iw_scan.py","lines_changed":103}]},"message":"doc updates","epoch":1609910803,"epoch_utc":null},{"commit":"e516e6b9466b29d40ec10070dd61551180eeef90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 21:17:40 2021 -0800","stats":{"files_changed":1,"insertions":29,"deletions":1,"files":["jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":30}]},"message":"fix country/environment fields and process int/float conversions","epoch":1609910260,"epoch_utc":null},{"commit":"62748676aae3d5955191ed267215df33a5bd3a4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 20:44:22 2021 -0800","stats":{"files_changed":2,"insertions":225,"deletions":0,"files":["jc/cli.py","jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/iw_scan.py","lines_changed":224}]},"message":"initial iw-scan parser","epoch":1609908262,"epoch_utc":null},{"commit":"7351c72e45242b9eb08c51dea7b6fccf12366dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 15:16:40 2021 -0800","stats":{"files_changed":6,"insertions":402,"deletions":1,"files":["jc/parsers/last.py","tests/fixtures/centos-7.7/last-crash.json","tests/fixtures/centos-7.7/last-crash.out","tests/fixtures/centos-7.7/last-wF.json","tests/fixtures/centos-7.7/last-wF.out","tests/test_last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":10},{"name":"tests/fixtures/centos-7.7/last-crash.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/last-crash.out","lines_changed":184},{"name":"tests/fixtures/centos-7.7/last-wF.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/last-wF.out","lines_changed":184},{"name":"tests/test_last.py","lines_changed":23}]},"message":"add fixes and tests for entries that contain 'crash'","epoch":1609888600,"epoch_utc":null},{"commit":"2b7405c5e21db2488fc48b58f6c65cff947ca95d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 13:58:38 2021 -0800","stats":{"files_changed":5,"insertions":23,"deletions":16,"files":["CHANGELOG","README.md","docs/parsers/last.md","jc/parsers/last.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":6},{"name":"jc/parsers/last.py","lines_changed":6},{"name":"man/jc.1","lines_changed":22}]},"message":"doc updates","epoch":1609883918,"epoch_utc":null},{"commit":"e2c77cb935a5bd95dbe930d424e5a02e88e1fa76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 13:00:38 2021 -0800","stats":{"files_changed":3,"insertions":15,"deletions":1,"files":["jc/parsers/last.py","tests/fixtures/ubuntu-20.04/last-F.json","tests/test_last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":3},{"name":"tests/fixtures/ubuntu-20.04/last-F.json","lines_changed":1},{"name":"tests/test_last.py","lines_changed":12}]},"message":"add test for last -F output","epoch":1609880438,"epoch_utc":null},{"commit":"7ac621e4c916373a03f379425033cb2d81a03578","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 12:29:29 2021 -0800","stats":{"files_changed":3,"insertions":36,"deletions":6,"files":["docs/parsers/last.md","jc/parsers/last.py","tests/fixtures/ubuntu-20.04/last-F.out"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":6},{"name":"jc/parsers/last.py","lines_changed":30},{"name":"tests/fixtures/ubuntu-20.04/last-F.out","lines_changed":6}]},"message":"add -F support","epoch":1609878569,"epoch_utc":null},{"commit":"d8b5d6c66ced19dc16f2b4975d2293a903732ffe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 09:45:37 2021 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/cli.py","setup.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to 1.14.1","epoch":1609868737,"epoch_utc":null},{"commit":"22b461eb4b1ca86ea9e8c1fde8a2c312d1526b5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jan 5 09:42:05 2021 -0800","stats":{"files_changed":7,"insertions":47,"deletions":12,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/test_date.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":1},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":40},{"name":"tests/fixtures/generic/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date.json","lines_changed":1},{"name":"tests/test_date.py","lines_changed":12}]},"message":"Add period field for en_US.UTF-8 locale","epoch":1609868525,"epoch_utc":null},{"commit":"b37ee8555a2a108625a834a7990bc3320e79b08d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 4 18:02:07 2021 -0800","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":6}]},"message":"changelog update","epoch":1609812127,"epoch_utc":null},{"commit":"1d0ad2f045733c5c690738d49951fdb9bcd3d66d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 4 18:01:16 2021 -0800","stats":{"files_changed":123,"insertions":312,"deletions":312,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat_freebsd_osx.py","jc/parsers/netstat_linux.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":6},{"name":"docs/parsers/arp.md","lines_changed":6},{"name":"docs/parsers/blkid.md","lines_changed":6},{"name":"docs/parsers/cksum.md","lines_changed":6},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":6},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":6},{"name":"docs/parsers/dig.md","lines_changed":6},{"name":"docs/parsers/dmidecode.md","lines_changed":6},{"name":"docs/parsers/du.md","lines_changed":6},{"name":"docs/parsers/env.md","lines_changed":6},{"name":"docs/parsers/file.md","lines_changed":6},{"name":"docs/parsers/free.md","lines_changed":6},{"name":"docs/parsers/fstab.md","lines_changed":6},{"name":"docs/parsers/group.md","lines_changed":6},{"name":"docs/parsers/gshadow.md","lines_changed":6},{"name":"docs/parsers/hash.md","lines_changed":6},{"name":"docs/parsers/hashsum.md","lines_changed":6},{"name":"docs/parsers/history.md","lines_changed":6},{"name":"docs/parsers/hosts.md","lines_changed":6},{"name":"docs/parsers/id.md","lines_changed":4},{"name":"docs/parsers/ifconfig.md","lines_changed":6},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":6},{"name":"docs/parsers/jobs.md","lines_changed":6},{"name":"docs/parsers/last.md","lines_changed":6},{"name":"docs/parsers/ls.md","lines_changed":6},{"name":"docs/parsers/lsblk.md","lines_changed":6},{"name":"docs/parsers/lsmod.md","lines_changed":6},{"name":"docs/parsers/lsof.md","lines_changed":6},{"name":"docs/parsers/mount.md","lines_changed":6},{"name":"docs/parsers/netstat.md","lines_changed":6},{"name":"docs/parsers/ntpq.md","lines_changed":6},{"name":"docs/parsers/passwd.md","lines_changed":6},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":6},{"name":"docs/parsers/pip_show.md","lines_changed":6},{"name":"docs/parsers/ps.md","lines_changed":6},{"name":"docs/parsers/route.md","lines_changed":6},{"name":"docs/parsers/shadow.md","lines_changed":6},{"name":"docs/parsers/ss.md","lines_changed":6},{"name":"docs/parsers/stat.md","lines_changed":6},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":6},{"name":"docs/parsers/systemctl_lj.md","lines_changed":6},{"name":"docs/parsers/systemctl_ls.md","lines_changed":6},{"name":"docs/parsers/systemctl_luf.md","lines_changed":6},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":6},{"name":"docs/parsers/wc.md","lines_changed":6},{"name":"docs/parsers/who.md","lines_changed":6},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":6},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":6},{"name":"jc/parsers/arp.py","lines_changed":6},{"name":"jc/parsers/blkid.py","lines_changed":6},{"name":"jc/parsers/cksum.py","lines_changed":6},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"jc/parsers/csv.py","lines_changed":6},{"name":"jc/parsers/date.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":6},{"name":"jc/parsers/dig.py","lines_changed":6},{"name":"jc/parsers/dmidecode.py","lines_changed":6},{"name":"jc/parsers/du.py","lines_changed":6},{"name":"jc/parsers/env.py","lines_changed":6},{"name":"jc/parsers/file.py","lines_changed":6},{"name":"jc/parsers/foo.py","lines_changed":6},{"name":"jc/parsers/free.py","lines_changed":6},{"name":"jc/parsers/fstab.py","lines_changed":6},{"name":"jc/parsers/group.py","lines_changed":6},{"name":"jc/parsers/gshadow.py","lines_changed":6},{"name":"jc/parsers/hash.py","lines_changed":6},{"name":"jc/parsers/hashsum.py","lines_changed":6},{"name":"jc/parsers/history.py","lines_changed":6},{"name":"jc/parsers/hosts.py","lines_changed":6},{"name":"jc/parsers/id.py","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":6},{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":6},{"name":"jc/parsers/jobs.py","lines_changed":6},{"name":"jc/parsers/last.py","lines_changed":6},{"name":"jc/parsers/ls.py","lines_changed":6},{"name":"jc/parsers/lsblk.py","lines_changed":6},{"name":"jc/parsers/lsmod.py","lines_changed":6},{"name":"jc/parsers/lsof.py","lines_changed":6},{"name":"jc/parsers/mount.py","lines_changed":6},{"name":"jc/parsers/netstat.py","lines_changed":6},{"name":"jc/parsers/netstat_freebsd_osx.py","lines_changed":2},{"name":"jc/parsers/netstat_linux.py","lines_changed":2},{"name":"jc/parsers/ntpq.py","lines_changed":6},{"name":"jc/parsers/passwd.py","lines_changed":6},{"name":"jc/parsers/ping.py","lines_changed":4},{"name":"jc/parsers/pip_list.py","lines_changed":6},{"name":"jc/parsers/pip_show.py","lines_changed":6},{"name":"jc/parsers/ps.py","lines_changed":6},{"name":"jc/parsers/route.py","lines_changed":6},{"name":"jc/parsers/shadow.py","lines_changed":6},{"name":"jc/parsers/ss.py","lines_changed":6},{"name":"jc/parsers/stat.py","lines_changed":6},{"name":"jc/parsers/sysctl.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":6},{"name":"jc/parsers/systemctl_lj.py","lines_changed":6},{"name":"jc/parsers/systemctl_ls.py","lines_changed":6},{"name":"jc/parsers/systemctl_luf.py","lines_changed":6},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":6},{"name":"jc/parsers/wc.py","lines_changed":6},{"name":"jc/parsers/who.py","lines_changed":6},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":6}]},"message":"doc fixes","epoch":1609812076,"epoch_utc":null},{"commit":"ceccfb2c815f57f1b6fd81f891d8b495de23f9f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jan 4 17:05:26 2021 -0800","stats":{"files_changed":3,"insertions":2036,"deletions":0,"files":["tests/fixtures/centos-7.7/iw-scan0.out","tests/fixtures/centos-7.7/iw-scan1.out","tests/fixtures/ubuntu-20.04/date.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/iw-scan0.out","lines_changed":36},{"name":"tests/fixtures/centos-7.7/iw-scan1.out","lines_changed":1999},{"name":"tests/fixtures/ubuntu-20.04/date.out","lines_changed":1}]},"message":"add test output for iw-scan and date on ubuntu 20.04","epoch":1609808726,"epoch_utc":null},{"commit":"03c02953cd7e3327b391f799c37a2990eb2cb24c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jan 1 12:01:56 2021 -0800","stats":{"files_changed":2,"insertions":96,"deletions":0,"files":["docgen.sh","docs/parsers/wc.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/wc.md","lines_changed":95}]},"message":"add wc doc","epoch":1609531316,"epoch_utc":null},{"commit":"f254a0eaa16fcda316f7a75424ee359058204b03","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 16:45:10 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1609461910,"epoch_utc":null},{"commit":"9e3b88727cd439e15f235dddb9dd5796e010797a","merge":"439871e b122174","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 16:40:36 2020 -0800","message":"Merge pull request #91 from kellyjonbrazil/dev\n\nDev v1.14.0","epoch":1609461636,"epoch_utc":null},{"commit":"b12217466e906829d19be4cfd80dfe7cf4008e57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 16:37:47 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"spelling","epoch":1609461467,"epoch_utc":null},{"commit":"8b9c932f9b05295e63b3e7d0073f243458fd4dd9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 16:37:14 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"update date","epoch":1609461434,"epoch_utc":null},{"commit":"5986ce03db6fcd1aa0f7b064eaa96c2120c06d2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 16:36:27 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add printenv info","epoch":1609461387,"epoch_utc":null},{"commit":"a7b0e936e400d2f9e55629e2d722cc002e035e9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 14:21:24 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"add vdir and printenv info","epoch":1609453284,"epoch_utc":null},{"commit":"cb0221142455a6bcb904fbe9ade657be45815b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 14:19:45 2020 -0800","stats":{"files_changed":4,"insertions":61,"deletions":2,"files":["jc/parsers/wc.py","tests/fixtures/osx-10.14.6/wc-stdin.json","tests/fixtures/osx-10.14.6/wc-stdin.out","tests/test_wc.py"],"file_stats":[{"name":"jc/parsers/wc.py","lines_changed":3},{"name":"tests/fixtures/osx-10.14.6/wc-stdin.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/wc-stdin.out","lines_changed":1},{"name":"tests/test_wc.py","lines_changed":58}]},"message":"add wc tests","epoch":1609453185,"epoch_utc":null},{"commit":"bd443bf39227515ae5f8df65d07b30268dcc90a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 14:11:25 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/env.py"],"file_stats":[{"name":"jc/parsers/env.py","lines_changed":4}]},"message":"add printenv to env docs","epoch":1609452685,"epoch_utc":null},{"commit":"1f547edd361e66b19ccbcb59f6ba0ae78f6080ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 14:10:56 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/env.md"],"file_stats":[{"name":"docs/parsers/env.md","lines_changed":2}]},"message":"add printenv to env docs","epoch":1609452656,"epoch_utc":null},{"commit":"e4bac3a493705b09e301ddc90dd1b0cee7467c3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 14:10:37 2020 -0800","stats":{"files_changed":9,"insertions":378,"deletions":0,"files":["CHANGELOG","EXAMPLES.md","README.md","jc/cli.py","jc/parsers/wc.py","tests/fixtures/centos-7.7/wc.json","tests/fixtures/centos-7.7/wc.out","tests/fixtures/osx-10.14.6/wc.json","tests/fixtures/osx-10.14.6/wc.out"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":26},{"name":"README.md","lines_changed":1},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/wc.py","lines_changed":130},{"name":"tests/fixtures/centos-7.7/wc.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/wc.out","lines_changed":67},{"name":"tests/fixtures/osx-10.14.6/wc.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/wc.out","lines_changed":150}]},"message":"add wc parser","epoch":1609452637,"epoch_utc":null},{"commit":"5e6bfa681aff03fbd683f81a9f4daa56b49d1344","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 31 13:18:53 2020 -0800","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["README.md","docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":6}]},"message":"add vdir info","epoch":1609449533,"epoch_utc":null},{"commit":"276160125e01553c75eaad68530177bcf4f9004d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 14:04:49 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"add new commands to README","epoch":1609365889,"epoch_utc":null},{"commit":"d4ae5543f2d5f28a0db5b8e2e19993c21c5d960c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 13:11:13 2020 -0800","stats":{"files_changed":3,"insertions":39,"deletions":0,"files":["tests/fixtures/centos-7.7/hash.json","tests/fixtures/centos-7.7/hash.out","tests/test_hash.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/hash.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/hash.out","lines_changed":4},{"name":"tests/test_hash.py","lines_changed":34}]},"message":"add hash tests","epoch":1609362673,"epoch_utc":null},{"commit":"55f360e267fdfcfef0c124ed6b88535cc181a8b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 12:58:52 2020 -0800","stats":{"files_changed":6,"insertions":260,"deletions":0,"files":["CHANGELOG","EXAMPLES.md","docgen.sh","docs/parsers/hash.md","jc/cli.py","jc/parsers/hash.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":71},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/hash.md","lines_changed":78},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/hash.py","lines_changed":108}]},"message":"add hash command parser","epoch":1609361932,"epoch_utc":null},{"commit":"fdedab2a0cf5af15df5803d87302397dd6d71741","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 11:33:29 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/cksum.py","jc/parsers/hashsum.py"],"file_stats":[{"name":"jc/parsers/cksum.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":2}]},"message":"description updates","epoch":1609356809,"epoch_utc":null},{"commit":"a9be42e3031ab0d697cff67a9e384caa2265a3ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 11:28:42 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"specify parser warnings for quiet option","epoch":1609356522,"epoch_utc":null},{"commit":"6da9510e46e84ec1cb93384825184d2996cf0e08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 11:22:17 2020 -0800","stats":{"files_changed":9,"insertions":482,"deletions":0,"files":["tests/fixtures/centos-7.7/cksum.json","tests/fixtures/centos-7.7/cksum.out","tests/fixtures/centos-7.7/sum.json","tests/fixtures/centos-7.7/sum.out","tests/fixtures/osx-10.14.6/cksum.json","tests/fixtures/osx-10.14.6/cksum.out","tests/fixtures/osx-10.14.6/sum.json","tests/fixtures/osx-10.14.6/sum.out","tests/test_cksum.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/cksum.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/cksum.out","lines_changed":59},{"name":"tests/fixtures/centos-7.7/sum.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sum.out","lines_changed":58},{"name":"tests/fixtures/osx-10.14.6/cksum.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/cksum.out","lines_changed":145},{"name":"tests/fixtures/osx-10.14.6/sum.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/sum.out","lines_changed":146},{"name":"tests/test_cksum.py","lines_changed":70}]},"message":"add cksum tests","epoch":1609356137,"epoch_utc":null},{"commit":"0431798178740b03cdefececc6df958e5adf62fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 11:02:02 2020 -0800","stats":{"files_changed":7,"insertions":229,"deletions":3,"files":["CHANGELOG","docgen.sh","docs/parsers/cksum.md","docs/parsers/hashsum.md","jc/cli.py","jc/parsers/cksum.py","jc/parsers/hashsum.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/cksum.md","lines_changed":95},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/cksum.py","lines_changed":128},{"name":"jc/parsers/hashsum.py","lines_changed":2}]},"message":"add cksum parser","epoch":1609354922,"epoch_utc":null},{"commit":"62432f3c484e74acb2b2dfd15d448b3f1b5d53c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 30 09:59:54 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/hashsum.py"],"file_stats":[{"name":"jc/parsers/hashsum.py","lines_changed":2}]},"message":"update hashsum description","epoch":1609351194,"epoch_utc":null},{"commit":"9fbbc30906b597e6afaf2030015a7a694d85f79e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 13:09:03 2020 -0800","stats":{"files_changed":2,"insertions":20,"deletions":0,"files":["docs/parsers/hashsum.md","jc/parsers/hashsum.py"],"file_stats":[{"name":"docs/parsers/hashsum.md","lines_changed":10},{"name":"jc/parsers/hashsum.py","lines_changed":10}]},"message":"add supported commands to docs","epoch":1609276143,"epoch_utc":null},{"commit":"d1567d1f622902053f3df58645b4e39532e0c30a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 13:05:04 2020 -0800","stats":{"files_changed":3,"insertions":104,"deletions":0,"files":["CHANGELOG","docgen.sh","docs/parsers/hashsum.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":4},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/hashsum.md","lines_changed":99}]},"message":"add hashsum documentation","epoch":1609275904,"epoch_utc":null},{"commit":"6ca1f5970b3a518615a54ee7fcbc1bddab2db331","merge":"1c880b9 3b7d54c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 12:59:02 2020 -0800","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev","epoch":1609275542,"epoch_utc":null},{"commit":"1c880b9e24ca53cd592cec1dbc52301308290fb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 12:58:04 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_hashsum.py"],"file_stats":[{"name":"tests/test_hashsum.py","lines_changed":2}]},"message":"force git tests","epoch":1609275484,"epoch_utc":null},{"commit":"3b7d54c720dfc93637328cf06eb10a85447c8793","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 12:55:30 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"add python 3.9","epoch":1609275330,"epoch_utc":null},{"commit":"44a740605705bd0ecfde2a6bcc7a826e1010dcf0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 12:51:43 2020 -0800","stats":{"files_changed":6,"insertions":87,"deletions":0,"files":["tests/fixtures/centos-7.7/md5sum.json","tests/fixtures/centos-7.7/sha256sum.json","tests/fixtures/centos-7.7/sha384sum.json","tests/fixtures/osx-10.14.6/md5.json","tests/fixtures/osx-10.14.6/shasum.json","tests/test_hashsum.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/md5sum.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sha256sum.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sha384sum.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/md5.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/shasum.json","lines_changed":1},{"name":"tests/test_hashsum.py","lines_changed":82}]},"message":"add hashsum tests","epoch":1609275103,"epoch_utc":null},{"commit":"8157dcfdb1868548b7c8ca692e6be25f80bb2c2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 12:25:20 2020 -0800","stats":{"files_changed":1,"insertions":36,"deletions":11,"files":["jc/parsers/hashsum.py"],"file_stats":[{"name":"jc/parsers/hashsum.py","lines_changed":47}]},"message":"fix for files with spaces in the name","epoch":1609273520,"epoch_utc":null},{"commit":"28762aea15cabc9cd8293d725e7f1f0550f8e15d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 29 11:36:20 2020 -0800","stats":{"files_changed":7,"insertions":524,"deletions":0,"files":["jc/cli.py","jc/parsers/hashsum.py","tests/fixtures/centos-7.7/md5sum.out","tests/fixtures/centos-7.7/sha256sum.out","tests/fixtures/centos-7.7/sha384sum.out","tests/fixtures/osx-10.14.6/md5.out","tests/fixtures/osx-10.14.6/shasum.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/hashsum.py","lines_changed":110},{"name":"tests/fixtures/centos-7.7/md5sum.out","lines_changed":56},{"name":"tests/fixtures/centos-7.7/sha256sum.out","lines_changed":55},{"name":"tests/fixtures/centos-7.7/sha384sum.out","lines_changed":56},{"name":"tests/fixtures/osx-10.14.6/md5.out","lines_changed":104},{"name":"tests/fixtures/osx-10.14.6/shasum.out","lines_changed":142}]},"message":"add hashsum parser","epoch":1609270580,"epoch_utc":null},{"commit":"439871ea9f6b055a407e1faaf47e4f56d1829501","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 19 07:07:30 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add ubuntu","epoch":1605798450,"epoch_utc":null},{"commit":"c9180b005c0547c8cbfe4809e66894f1123b0809","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Aug 30 11:58:42 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1598813922,"epoch_utc":null},{"commit":"b14e0725f86853f0113116b1c06f54aaa563f365","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Aug 30 11:57:55 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add ansible plugin blog post link","epoch":1598813875,"epoch_utc":null},{"commit":"70fe3dcb4d5b97aba1d6c6dcd5088fecb27af181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 26 15:21:45 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1598480505,"epoch_utc":null},{"commit":"8c554604a42a3ea7ca9131b65c64fd3ceb95f906","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 26 14:41:01 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"formatting","epoch":1598478061,"epoch_utc":null},{"commit":"a0a35454bd2831c116cb598c686150b883412f94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 26 14:39:40 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add link to the web demo","epoch":1598477980,"epoch_utc":null},{"commit":"e8467e2af5b0c3f14832a9e6d4a96f219c27f3f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 20 10:57:13 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"remove extra space","epoch":1597946233,"epoch_utc":null},{"commit":"7515deb5669ef04623e9cbf58653b30c99a96430","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 20 10:39:34 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add ansible install command","epoch":1597945174,"epoch_utc":null},{"commit":"ed9e52af241b609ee7f5d1b835c9f6c5306cd3c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 20 10:37:15 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"spelling","epoch":1597945035,"epoch_utc":null},{"commit":"592a3804104628c790997747a778b3b39d076dfe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 20 10:35:49 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add Ansible note","epoch":1597944949,"epoch_utc":null},{"commit":"1a458d2d5b4c16c0ad90671727ae9b19939e7f23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 11 07:00:07 2020 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2}]},"message":"update link","epoch":1597154407,"epoch_utc":null},{"commit":"0e4cf53b92ff951a6390a4dacf8833c272473583","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 11 06:36:30 2020 -0700","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2}]},"message":"add parser docs link","epoch":1597152990,"epoch_utc":null},{"commit":"e2f06ccb33177173d984bc0cdda1aae1a3f4c681","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 6 13:00:33 2020 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"formatting","epoch":1596744033,"epoch_utc":null},{"commit":"8abff004cd8e09529e5d94be4883308152e11565","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 6 12:59:30 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/yaml.md"],"file_stats":[{"name":"docs/parsers/yaml.md","lines_changed":2}]},"message":"indentation fix","epoch":1596743970,"epoch_utc":null},{"commit":"c4a0e2e3feb2e51eaaaa202064f352229017bcc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 6 12:58:53 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"fix indentation","epoch":1596743933,"epoch_utc":null},{"commit":"4f10f79c73f8b3d6edc2c83e6a12d0ddc1a78555","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 6 12:55:24 2020 -0700","stats":{"files_changed":2,"insertions":4,"deletions":8,"files":["docs/parsers/uname.md","jc/parsers/uname.py"],"file_stats":[{"name":"docs/parsers/uname.md","lines_changed":6},{"name":"jc/parsers/uname.py","lines_changed":6}]},"message":"standardize doc","epoch":1596743724,"epoch_utc":null},{"commit":"69e7a560fd82337570c4bb4aa4780f513c18bd94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Aug 6 07:48:08 2020 -0700","stats":{"files_changed":4,"insertions":8,"deletions":0,"files":["docs/parsers/env.md","docs/parsers/history.md","jc/parsers/env.py","jc/parsers/history.py"],"file_stats":[{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2}]},"message":"add output info to docs","epoch":1596725288,"epoch_utc":null},{"commit":"59b105580805d78516abe1c1069d52a6f0a8131a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 16:51:58 2020 -0700","stats":{"files_changed":97,"insertions":564,"deletions":269,"files":["docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":12},{"name":"docs/parsers/blkid.md","lines_changed":8},{"name":"docs/parsers/crontab.md","lines_changed":10},{"name":"docs/parsers/crontab_u.md","lines_changed":6},{"name":"docs/parsers/csv.md","lines_changed":9},{"name":"docs/parsers/date.md","lines_changed":8},{"name":"docs/parsers/df.md","lines_changed":8},{"name":"docs/parsers/dig.md","lines_changed":8},{"name":"docs/parsers/dmidecode.md","lines_changed":8},{"name":"docs/parsers/du.md","lines_changed":8},{"name":"docs/parsers/env.md","lines_changed":8},{"name":"docs/parsers/file.md","lines_changed":8},{"name":"docs/parsers/free.md","lines_changed":8},{"name":"docs/parsers/fstab.md","lines_changed":4},{"name":"docs/parsers/group.md","lines_changed":4},{"name":"docs/parsers/gshadow.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":4},{"name":"docs/parsers/hosts.md","lines_changed":4},{"name":"docs/parsers/id.md","lines_changed":8},{"name":"docs/parsers/ifconfig.md","lines_changed":10},{"name":"docs/parsers/ini.md","lines_changed":10},{"name":"docs/parsers/iptables.md","lines_changed":10},{"name":"docs/parsers/jobs.md","lines_changed":10},{"name":"docs/parsers/kv.md","lines_changed":11},{"name":"docs/parsers/last.md","lines_changed":8},{"name":"docs/parsers/ls.md","lines_changed":21},{"name":"docs/parsers/lsblk.md","lines_changed":8},{"name":"docs/parsers/lsmod.md","lines_changed":8},{"name":"docs/parsers/lsof.md","lines_changed":8},{"name":"docs/parsers/mount.md","lines_changed":8},{"name":"docs/parsers/netstat.md","lines_changed":17},{"name":"docs/parsers/ntpq.md","lines_changed":8},{"name":"docs/parsers/passwd.md","lines_changed":4},{"name":"docs/parsers/ping.md","lines_changed":12},{"name":"docs/parsers/pip_list.md","lines_changed":8},{"name":"docs/parsers/pip_show.md","lines_changed":8},{"name":"docs/parsers/ps.md","lines_changed":14},{"name":"docs/parsers/route.md","lines_changed":8},{"name":"docs/parsers/shadow.md","lines_changed":4},{"name":"docs/parsers/ss.md","lines_changed":8},{"name":"docs/parsers/stat.md","lines_changed":8},{"name":"docs/parsers/sysctl.md","lines_changed":16},{"name":"docs/parsers/systemctl.md","lines_changed":8},{"name":"docs/parsers/systemctl_lj.md","lines_changed":8},{"name":"docs/parsers/systemctl_ls.md","lines_changed":8},{"name":"docs/parsers/systemctl_luf.md","lines_changed":8},{"name":"docs/parsers/timedatectl.md","lines_changed":8},{"name":"docs/parsers/tracepath.md","lines_changed":10},{"name":"docs/parsers/traceroute.md","lines_changed":16},{"name":"docs/parsers/uname.md","lines_changed":8},{"name":"docs/parsers/uptime.md","lines_changed":8},{"name":"docs/parsers/w.md","lines_changed":8},{"name":"docs/parsers/who.md","lines_changed":10},{"name":"docs/parsers/xml.md","lines_changed":4},{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"jc/parsers/group.py","lines_changed":4},{"name":"jc/parsers/gshadow.py","lines_changed":4},{"name":"jc/parsers/history.py","lines_changed":4},{"name":"jc/parsers/hosts.py","lines_changed":4},{"name":"jc/parsers/id.py","lines_changed":8},{"name":"jc/parsers/ifconfig.py","lines_changed":10},{"name":"jc/parsers/ini.py","lines_changed":10},{"name":"jc/parsers/iptables.py","lines_changed":10},{"name":"jc/parsers/jobs.py","lines_changed":10},{"name":"jc/parsers/kv.py","lines_changed":11},{"name":"jc/parsers/last.py","lines_changed":8},{"name":"jc/parsers/ls.py","lines_changed":21},{"name":"jc/parsers/lsblk.py","lines_changed":8},{"name":"jc/parsers/lsmod.py","lines_changed":8},{"name":"jc/parsers/lsof.py","lines_changed":8},{"name":"jc/parsers/mount.py","lines_changed":8},{"name":"jc/parsers/netstat.py","lines_changed":17},{"name":"jc/parsers/ntpq.py","lines_changed":8},{"name":"jc/parsers/passwd.py","lines_changed":4},{"name":"jc/parsers/ping.py","lines_changed":12},{"name":"jc/parsers/pip_list.py","lines_changed":8},{"name":"jc/parsers/pip_show.py","lines_changed":8},{"name":"jc/parsers/ps.py","lines_changed":14},{"name":"jc/parsers/route.py","lines_changed":8},{"name":"jc/parsers/shadow.py","lines_changed":4},{"name":"jc/parsers/ss.py","lines_changed":8},{"name":"jc/parsers/stat.py","lines_changed":8},{"name":"jc/parsers/sysctl.py","lines_changed":16},{"name":"jc/parsers/systemctl.py","lines_changed":8},{"name":"jc/parsers/systemctl_lj.py","lines_changed":8},{"name":"jc/parsers/systemctl_ls.py","lines_changed":8},{"name":"jc/parsers/systemctl_luf.py","lines_changed":8},{"name":"jc/parsers/timedatectl.py","lines_changed":8},{"name":"jc/parsers/tracepath.py","lines_changed":10},{"name":"jc/parsers/traceroute.py","lines_changed":16},{"name":"jc/parsers/uname.py","lines_changed":8},{"name":"jc/parsers/uptime.py","lines_changed":8},{"name":"jc/parsers/w.py","lines_changed":8},{"name":"jc/parsers/who.py","lines_changed":10},{"name":"jc/parsers/xml.py","lines_changed":4},{"name":"jc/parsers/yaml.py","lines_changed":4}]},"message":"enhance docs","epoch":1596671518,"epoch_utc":null},{"commit":"6ed48c6289214fe5114971c80772efdf9ac1b8c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 15:34:17 2020 -0700","stats":{"files_changed":16,"insertions":88,"deletions":37,"files":["jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py"],"file_stats":[{"name":"jc/parsers/airport_s.py","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":12},{"name":"jc/parsers/blkid.py","lines_changed":8},{"name":"jc/parsers/crontab.py","lines_changed":10},{"name":"jc/parsers/crontab_u.py","lines_changed":6},{"name":"jc/parsers/csv.py","lines_changed":9},{"name":"jc/parsers/date.py","lines_changed":8},{"name":"jc/parsers/df.py","lines_changed":8},{"name":"jc/parsers/dig.py","lines_changed":8},{"name":"jc/parsers/dmidecode.py","lines_changed":8},{"name":"jc/parsers/du.py","lines_changed":8},{"name":"jc/parsers/env.py","lines_changed":8},{"name":"jc/parsers/file.py","lines_changed":8},{"name":"jc/parsers/foo.py","lines_changed":10},{"name":"jc/parsers/free.py","lines_changed":8},{"name":"jc/parsers/fstab.py","lines_changed":4}]},"message":"enhance docs","epoch":1596666857,"epoch_utc":null},{"commit":"f2fb4d3f415fbc1c09eec6dedcf70fba78406b3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 15:10:48 2020 -0700","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","jc/parsers/airport.py","jc/parsers/airport_s.py"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":2}]},"message":"improve docs","epoch":1596665448,"epoch_utc":null},{"commit":"6aeea59ea84e56434e87ddf89cd5d4435b99e140","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 15:08:42 2020 -0700","stats":{"files_changed":2,"insertions":14,"deletions":8,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":11},{"name":"docs/parsers/airport_s.md","lines_changed":11}]},"message":"doc updates","epoch":1596665322,"epoch_utc":null},{"commit":"d016f3bbb307f85bd0f93a508323941a8bb9d872","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 15:07:33 2020 -0700","stats":{"files_changed":2,"insertions":14,"deletions":8,"files":["jc/parsers/airport.py","jc/parsers/airport_s.py"],"file_stats":[{"name":"jc/parsers/airport.py","lines_changed":11},{"name":"jc/parsers/airport_s.py","lines_changed":11}]},"message":"improve documentation","epoch":1596665253,"epoch_utc":null},{"commit":"7131c297180bfa195d0209d46fc70ab8e67efe2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 13:32:59 2020 -0700","stats":{"files_changed":114,"insertions":686,"deletions":116,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":7},{"name":"docs/parsers/airport_s.md","lines_changed":7},{"name":"docs/parsers/arp.md","lines_changed":7},{"name":"docs/parsers/crontab.md","lines_changed":7},{"name":"docs/parsers/crontab_u.md","lines_changed":7},{"name":"docs/parsers/csv.md","lines_changed":7},{"name":"docs/parsers/date.md","lines_changed":7},{"name":"docs/parsers/df.md","lines_changed":7},{"name":"docs/parsers/dig.md","lines_changed":7},{"name":"docs/parsers/dmidecode.md","lines_changed":7},{"name":"docs/parsers/du.md","lines_changed":7},{"name":"docs/parsers/env.md","lines_changed":7},{"name":"docs/parsers/file.md","lines_changed":7},{"name":"docs/parsers/free.md","lines_changed":7},{"name":"docs/parsers/fstab.md","lines_changed":7},{"name":"docs/parsers/group.md","lines_changed":7},{"name":"docs/parsers/gshadow.md","lines_changed":7},{"name":"docs/parsers/history.md","lines_changed":7},{"name":"docs/parsers/hosts.md","lines_changed":7},{"name":"docs/parsers/id.md","lines_changed":7},{"name":"docs/parsers/ifconfig.md","lines_changed":7},{"name":"docs/parsers/ini.md","lines_changed":7},{"name":"docs/parsers/iptables.md","lines_changed":7},{"name":"docs/parsers/jobs.md","lines_changed":7},{"name":"docs/parsers/kv.md","lines_changed":7},{"name":"docs/parsers/last.md","lines_changed":7},{"name":"docs/parsers/ls.md","lines_changed":7},{"name":"docs/parsers/lsblk.md","lines_changed":7},{"name":"docs/parsers/lsmod.md","lines_changed":7},{"name":"docs/parsers/lsof.md","lines_changed":7},{"name":"docs/parsers/mount.md","lines_changed":7},{"name":"docs/parsers/netstat.md","lines_changed":7},{"name":"docs/parsers/ntpq.md","lines_changed":7},{"name":"docs/parsers/passwd.md","lines_changed":7},{"name":"docs/parsers/ping.md","lines_changed":7},{"name":"docs/parsers/pip_list.md","lines_changed":7},{"name":"docs/parsers/pip_show.md","lines_changed":7},{"name":"docs/parsers/ps.md","lines_changed":7},{"name":"docs/parsers/route.md","lines_changed":7},{"name":"docs/parsers/shadow.md","lines_changed":7},{"name":"docs/parsers/ss.md","lines_changed":7},{"name":"docs/parsers/stat.md","lines_changed":7},{"name":"docs/parsers/sysctl.md","lines_changed":7},{"name":"docs/parsers/systemctl.md","lines_changed":7},{"name":"docs/parsers/systemctl_lj.md","lines_changed":7},{"name":"docs/parsers/systemctl_ls.md","lines_changed":7},{"name":"docs/parsers/systemctl_luf.md","lines_changed":7},{"name":"docs/parsers/timedatectl.md","lines_changed":7},{"name":"docs/parsers/tracepath.md","lines_changed":7},{"name":"docs/parsers/traceroute.md","lines_changed":7},{"name":"docs/parsers/uname.md","lines_changed":9},{"name":"docs/parsers/uptime.md","lines_changed":7},{"name":"docs/parsers/w.md","lines_changed":7},{"name":"docs/parsers/who.md","lines_changed":7},{"name":"docs/parsers/xml.md","lines_changed":7},{"name":"docs/parsers/yaml.md","lines_changed":7},{"name":"jc/parsers/airport.py","lines_changed":7},{"name":"jc/parsers/airport_s.py","lines_changed":7},{"name":"jc/parsers/arp.py","lines_changed":7},{"name":"jc/parsers/blkid.py","lines_changed":7},{"name":"jc/parsers/crontab.py","lines_changed":7},{"name":"jc/parsers/crontab_u.py","lines_changed":7},{"name":"jc/parsers/csv.py","lines_changed":7},{"name":"jc/parsers/date.py","lines_changed":7},{"name":"jc/parsers/df.py","lines_changed":7},{"name":"jc/parsers/dig.py","lines_changed":7},{"name":"jc/parsers/dmidecode.py","lines_changed":7},{"name":"jc/parsers/du.py","lines_changed":7},{"name":"jc/parsers/env.py","lines_changed":7},{"name":"jc/parsers/file.py","lines_changed":7},{"name":"jc/parsers/foo.py","lines_changed":7},{"name":"jc/parsers/free.py","lines_changed":7},{"name":"jc/parsers/fstab.py","lines_changed":7},{"name":"jc/parsers/group.py","lines_changed":7},{"name":"jc/parsers/gshadow.py","lines_changed":7},{"name":"jc/parsers/history.py","lines_changed":7},{"name":"jc/parsers/hosts.py","lines_changed":7},{"name":"jc/parsers/id.py","lines_changed":7},{"name":"jc/parsers/ifconfig.py","lines_changed":7},{"name":"jc/parsers/ini.py","lines_changed":7},{"name":"jc/parsers/iptables.py","lines_changed":7},{"name":"jc/parsers/jobs.py","lines_changed":7},{"name":"jc/parsers/kv.py","lines_changed":7},{"name":"jc/parsers/last.py","lines_changed":7},{"name":"jc/parsers/ls.py","lines_changed":7},{"name":"jc/parsers/lsblk.py","lines_changed":7},{"name":"jc/parsers/lsmod.py","lines_changed":7},{"name":"jc/parsers/lsof.py","lines_changed":7},{"name":"jc/parsers/mount.py","lines_changed":7},{"name":"jc/parsers/netstat.py","lines_changed":7},{"name":"jc/parsers/ntpq.py","lines_changed":7},{"name":"jc/parsers/passwd.py","lines_changed":7},{"name":"jc/parsers/ping.py","lines_changed":7},{"name":"jc/parsers/pip_list.py","lines_changed":7},{"name":"jc/parsers/pip_show.py","lines_changed":7},{"name":"jc/parsers/ps.py","lines_changed":7},{"name":"jc/parsers/route.py","lines_changed":7},{"name":"jc/parsers/shadow.py","lines_changed":7},{"name":"jc/parsers/ss.py","lines_changed":7},{"name":"jc/parsers/stat.py","lines_changed":7},{"name":"jc/parsers/sysctl.py","lines_changed":7},{"name":"jc/parsers/systemctl.py","lines_changed":7},{"name":"jc/parsers/systemctl_lj.py","lines_changed":7},{"name":"jc/parsers/systemctl_ls.py","lines_changed":7},{"name":"jc/parsers/systemctl_luf.py","lines_changed":7},{"name":"jc/parsers/timedatectl.py","lines_changed":7},{"name":"jc/parsers/tracepath.py","lines_changed":7},{"name":"jc/parsers/traceroute.py","lines_changed":7},{"name":"jc/parsers/uname.py","lines_changed":9},{"name":"jc/parsers/uptime.py","lines_changed":7},{"name":"jc/parsers/w.py","lines_changed":7},{"name":"jc/parsers/who.py","lines_changed":7},{"name":"jc/parsers/xml.py","lines_changed":7},{"name":"jc/parsers/yaml.py","lines_changed":7}]},"message":"add module usage info to docs","epoch":1596659579,"epoch_utc":null},{"commit":"7432442983841b42c8d3d2459b55596c05d1e100","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 13:31:52 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["docs/parsers/blkid.md"],"file_stats":[{"name":"docs/parsers/blkid.md","lines_changed":7}]},"message":"add usage","epoch":1596659512,"epoch_utc":null},{"commit":"5344883394a0662ee16bb5edd68df8e4410025f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 11:35:52 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"spelling/add ping parser update","epoch":1596652552,"epoch_utc":null},{"commit":"3fcd2f6c2e015b0e65e7261c8e591ccd8a7d0e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 11:34:29 2020 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/cli.py","setup.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1596652469,"epoch_utc":null},{"commit":"f3d84bd5bf06349b681e9b72d904676e9f6bca19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 11:28:37 2020 -0700","stats":{"files_changed":6,"insertions":21,"deletions":3,"files":["CHANGELOG","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/fixtures/debian10/crontab-u.json","tests/fixtures/debian10/crontab-u.out","tests/test_crontab_u.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":4},{"name":"tests/fixtures/debian10/crontab-u.json","lines_changed":1},{"name":"tests/fixtures/debian10/crontab-u.out","lines_changed":2},{"name":"tests/test_crontab_u.py","lines_changed":12}]},"message":"tighten crontab and crontab-u parser variable detection","epoch":1596652117,"epoch_utc":null},{"commit":"549780c23220bca3bcab58d7329ba8d44d1be55d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 11:04:07 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"add debian/apt-get info","epoch":1596650647,"epoch_utc":null},{"commit":"2a6da69b82aa9ade6c01d490a32b57b415c62a9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Aug 5 09:58:01 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":4}]},"message":"improve linux/bsd check","epoch":1596646681,"epoch_utc":null},{"commit":"5c538816cf76686bac1a86a7c06e24664d25a2dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Aug 4 17:36:35 2020 -0700","stats":{"files_changed":9,"insertions":55,"deletions":4,"files":["CHANGELOG","jc/cli.py","jc/parsers/ping.py","setup.py","tests/fixtures/pi/ping-ip-O-D.json","tests/fixtures/pi/ping-ip-O-D.out","tests/fixtures/pi/ping-ip-O.json","tests/fixtures/pi/ping-ip-O.out","tests/test_ping.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/ping.py","lines_changed":4},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/pi/ping-ip-O-D.json","lines_changed":1},{"name":"tests/fixtures/pi/ping-ip-O-D.out","lines_changed":10},{"name":"tests/fixtures/pi/ping-ip-O.json","lines_changed":1},{"name":"tests/fixtures/pi/ping-ip-O.out","lines_changed":10},{"name":"tests/test_ping.py","lines_changed":26}]},"message":"ping parser fix for raspberry pi","epoch":1596587795,"epoch_utc":null},{"commit":"7b8b378a7df397c488fc54fbd6e77f5f3f23c10c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 3 12:39:18 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":1}]},"message":"add pydoc-markdown version requirement","epoch":1596483558,"epoch_utc":null},{"commit":"e30a75e25c4b43969bf9f874f89e18512a5e3a34","merge":"dda517a 85ad5cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 3 10:18:39 2020 -0700","message":"Merge pull request #76 from kellyjonbrazil/dev\n\nDev v1.13.2","epoch":1596475119,"epoch_utc":null},{"commit":"85ad5cfd0bfb903ce35e37b343244fed88dbd979","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 3 10:14:13 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"date change","epoch":1596474853,"epoch_utc":null},{"commit":"88b9d5068c5bac0691fedb543114300d6afc7131","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Aug 3 09:26:37 2020 -0700","stats":{"files_changed":6,"insertions":74,"deletions":15,"files":["EXAMPLES.md","README.md","docs/parsers/date.md","tests/fixtures/generic/date.json","tests/fixtures/generic/date.out","tests/test_date.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":18},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/date.md","lines_changed":34},{"name":"tests/fixtures/generic/date.json","lines_changed":1},{"name":"tests/fixtures/generic/date.out","lines_changed":1},{"name":"tests/test_date.py","lines_changed":34}]},"message":"finish date parser","epoch":1596471997,"epoch_utc":null},{"commit":"f8c4948a090642db595eda2ba2ea0773e560ba67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 16:52:48 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":1}]},"message":"remove comment","epoch":1596239568,"epoch_utc":null},{"commit":"412322447f019aec0b64888631bc965e9f21186d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 16:51:05 2020 -0700","stats":{"files_changed":1,"insertions":48,"deletions":17,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":65}]},"message":"add month_num and weekday_num fields","epoch":1596239465,"epoch_utc":null},{"commit":"d4f289e40fae621b87f0d49451fca4c3dde216b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 14:47:06 2020 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":4},{"name":"jc/parsers/date.py","lines_changed":4}]},"message":"documentation fixup","epoch":1596232026,"epoch_utc":null},{"commit":"e1f3feb8f529172ae26ce4c7a66a4a1c21b722ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 14:45:30 2020 -0700","stats":{"files_changed":1,"insertions":13,"deletions":10,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":23}]},"message":"cover empty data case in process","epoch":1596231930,"epoch_utc":null},{"commit":"37d3bc699c7be16955be06840d242980f05f1074","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 14:39:02 2020 -0700","stats":{"files_changed":6,"insertions":224,"deletions":1,"files":["CHANGELOG","docgen.sh","docs/parsers/date.md","jc/cli.py","jc/parsers/date.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/date.md","lines_changed":89},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/date.py","lines_changed":127},{"name":"man/jc.1","lines_changed":4}]},"message":"add date parser","epoch":1596231542,"epoch_utc":null},{"commit":"672fd18016b8122510b6ab246b5675b7fd399b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 12:59:44 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"date bump","epoch":1596225584,"epoch_utc":null},{"commit":"bc2c23a2a09b96d34bb80f69fdc7751fb5ac3ed4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 12:58:58 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"version bump","epoch":1596225538,"epoch_utc":null},{"commit":"865f7e78124e382c6d315702fa6e48f2104cee46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 12:58:11 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":6}]},"message":"add kv parser to man page","epoch":1596225491,"epoch_utc":null},{"commit":"720212b552e1bd2b9196dd5f06e4b3f85d463531","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 11:02:24 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":9,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":10}]},"message":"fixup traceroute example with new behavior","epoch":1596218544,"epoch_utc":null},{"commit":"d3be61f60837801d5a505dc2520cc80c874a6092","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 10:59:46 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]},"message":"version bump","epoch":1596218386,"epoch_utc":null},{"commit":"13418b16b8fd78fdd97ac045ec3fe9aa59d46080","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 10:56:51 2020 -0700","stats":{"files_changed":2,"insertions":8,"deletions":2,"files":["docs/parsers/traceroute.md","jc/parsers/traceroute.py"],"file_stats":[{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"jc/parsers/traceroute.py","lines_changed":5}]},"message":"doc update","epoch":1596218211,"epoch_utc":null},{"commit":"42d2017cd6f5ee1d1a92bd4958cd63366c1e715d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 31 10:53:47 2020 -0700","stats":{"files_changed":18,"insertions":41,"deletions":24,"files":["CHANGELOG","jc/parsers/traceroute.py","tests/fixtures/centos-7.7/traceroute.json","tests/fixtures/freebsd12/traceroute.json","tests/fixtures/freebsd12/traceroute6.json","tests/fixtures/generic/traceroute1.json","tests/fixtures/generic/traceroute2.json","tests/fixtures/generic/traceroute3.json","tests/fixtures/generic/traceroute5.json","tests/fixtures/generic/traceroute6.json","tests/fixtures/generic/traceroute7.json","tests/fixtures/osx-10.14.6/traceroute-asn.json",".../fixtures/osx-10.14.6/traceroute-no-header.json","tests/fixtures/osx-10.14.6/traceroute-q.json","tests/fixtures/osx-10.14.6/traceroute.json",".../osx-10.14.6/traceroute6-mult-addresses.json","tests/fixtures/osx-10.14.6/traceroute6.json","tests/test_traceroute.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/traceroute.py","lines_changed":26},{"name":"tests/fixtures/centos-7.7/traceroute.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/traceroute.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/traceroute6.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute1.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute2.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute3.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute5.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute6.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute7.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/traceroute-asn.json","lines_changed":2},{"name":".../fixtures/osx-10.14.6/traceroute-no-header.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/traceroute-q.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/traceroute.json","lines_changed":2},{"name":".../osx-10.14.6/traceroute6-mult-addresses.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/traceroute6.json","lines_changed":2},{"name":"tests/test_traceroute.py","lines_changed":7}]},"message":"traceroute updates: handle missing header row, add annotations, don't print timeouts as probes","epoch":1596218027,"epoch_utc":null},{"commit":"4345e76ead2a49ae0691077e9fbd2b6c5fdfd129","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 30 16:49:38 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2}]},"message":"change to use --kv for key/value files","epoch":1596152978,"epoch_utc":null},{"commit":"741431322ba2677355c361fcd6095ed8cd0a4349","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 30 16:45:36 2020 -0700","stats":{"files_changed":2,"insertions":46,"deletions":24,"files":["tests/test_ini.py","tests/test_kv.py"],"file_stats":[{"name":"tests/test_ini.py","lines_changed":24},{"name":"tests/test_kv.py","lines_changed":46}]},"message":"update tests for kv parser","epoch":1596152736,"epoch_utc":null},{"commit":"980beaaf41a04891f7c2f5daeb1e3a23d3c7ec19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 30 16:21:03 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2}]},"message":"fix docgen issue","epoch":1596151263,"epoch_utc":null},{"commit":"2205034e0906b333c259648f7a0e5392945f12ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 30 16:20:51 2020 -0700","stats":{"files_changed":8,"insertions":105,"deletions":31,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","jc/cli.py","jc/parsers/ini.py","jc/parsers/kv.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"EXAMPLES.md","lines_changed":53},{"name":"README.md","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/ini.py","lines_changed":4},{"name":"jc/parsers/kv.py","lines_changed":67},{"name":"setup.py","lines_changed":2}]},"message":"add kv parser","epoch":1596151251,"epoch_utc":null},{"commit":"82b9c87a66fce5d8626c56858a8c6f1f3326e7fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 30 16:20:24 2020 -0700","stats":{"files_changed":58,"insertions":345,"deletions":62,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/readme.md","docs/utils.md"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":6},{"name":"docs/parsers/airport_s.md","lines_changed":6},{"name":"docs/parsers/arp.md","lines_changed":6},{"name":"docs/parsers/blkid.md","lines_changed":6},{"name":"docs/parsers/crontab.md","lines_changed":6},{"name":"docs/parsers/crontab_u.md","lines_changed":6},{"name":"docs/parsers/csv.md","lines_changed":6},{"name":"docs/parsers/df.md","lines_changed":6},{"name":"docs/parsers/dig.md","lines_changed":6},{"name":"docs/parsers/dmidecode.md","lines_changed":6},{"name":"docs/parsers/du.md","lines_changed":6},{"name":"docs/parsers/env.md","lines_changed":6},{"name":"docs/parsers/file.md","lines_changed":6},{"name":"docs/parsers/free.md","lines_changed":6},{"name":"docs/parsers/fstab.md","lines_changed":6},{"name":"docs/parsers/group.md","lines_changed":6},{"name":"docs/parsers/gshadow.md","lines_changed":6},{"name":"docs/parsers/history.md","lines_changed":6},{"name":"docs/parsers/hosts.md","lines_changed":6},{"name":"docs/parsers/id.md","lines_changed":6},{"name":"docs/parsers/ifconfig.md","lines_changed":13},{"name":"docs/parsers/ini.md","lines_changed":6},{"name":"docs/parsers/iptables.md","lines_changed":6},{"name":"docs/parsers/jobs.md","lines_changed":6},{"name":"docs/parsers/kv.md","lines_changed":61},{"name":"docs/parsers/last.md","lines_changed":6},{"name":"docs/parsers/ls.md","lines_changed":6},{"name":"docs/parsers/lsblk.md","lines_changed":6},{"name":"docs/parsers/lsmod.md","lines_changed":6},{"name":"docs/parsers/lsof.md","lines_changed":6},{"name":"docs/parsers/mount.md","lines_changed":6},{"name":"docs/parsers/netstat.md","lines_changed":6},{"name":"docs/parsers/ntpq.md","lines_changed":6},{"name":"docs/parsers/passwd.md","lines_changed":6},{"name":"docs/parsers/ping.md","lines_changed":6},{"name":"docs/parsers/pip_list.md","lines_changed":6},{"name":"docs/parsers/pip_show.md","lines_changed":6},{"name":"docs/parsers/ps.md","lines_changed":6},{"name":"docs/parsers/route.md","lines_changed":6},{"name":"docs/parsers/shadow.md","lines_changed":6},{"name":"docs/parsers/ss.md","lines_changed":6},{"name":"docs/parsers/stat.md","lines_changed":6},{"name":"docs/parsers/sysctl.md","lines_changed":6},{"name":"docs/parsers/systemctl.md","lines_changed":6},{"name":"docs/parsers/systemctl_lj.md","lines_changed":6},{"name":"docs/parsers/systemctl_ls.md","lines_changed":6},{"name":"docs/parsers/systemctl_luf.md","lines_changed":6},{"name":"docs/parsers/timedatectl.md","lines_changed":6},{"name":"docs/parsers/tracepath.md","lines_changed":6},{"name":"docs/parsers/traceroute.md","lines_changed":9},{"name":"docs/parsers/uname.md","lines_changed":6},{"name":"docs/parsers/uptime.md","lines_changed":6},{"name":"docs/parsers/w.md","lines_changed":6},{"name":"docs/parsers/who.md","lines_changed":6},{"name":"docs/parsers/xml.md","lines_changed":6},{"name":"docs/parsers/yaml.md","lines_changed":6},{"name":"docs/readme.md","lines_changed":1},{"name":"docs/utils.md","lines_changed":5}]},"message":"update docs","epoch":1596151224,"epoch_utc":null},{"commit":"dda517a937323b9888e081aea1032a9d63c4a6bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 14:36:20 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":163,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":166}]},"message":"shorten more examples","epoch":1596058580,"epoch_utc":null},{"commit":"4e6d283b9eddf7759b4dd37bd643394ff73febd4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 14:27:13 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":65,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":65}]},"message":"shorten netstat example","epoch":1596058033,"epoch_utc":null},{"commit":"55acab05aa740dfd7534304f2678b60942cad116","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:55:16 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["changelog.txt => CHANGELOG"],"file_stats":[{"name":"changelog.txt => CHANGELOG","lines_changed":0}]},"message":"change name to CHANGELOG","epoch":1596048916,"epoch_utc":null},{"commit":"ed38a18d236cdb991779f4f148e42359c139e61c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:49:00 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":86,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":87}]},"message":"remove more examples","epoch":1596048540,"epoch_utc":null},{"commit":"95b3c11203d3dd0627c5eeca39fe1d145bf2d733","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:43:22 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":124,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":124}]},"message":"remove more examples","epoch":1596048202,"epoch_utc":null},{"commit":"dce318f4fd44b9c4013211bf233020e84566ddb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:40:47 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1537,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1540}]},"message":"remove examples to reduce file size","epoch":1596048047,"epoch_utc":null},{"commit":"85127f0fb8096192b19fca1f4ffe38ee391351be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:34:43 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["jc/examples.md => EXAMPLES.md"],"file_stats":[{"name":"jc/examples.md => EXAMPLES.md","lines_changed":0}]},"message":"move examples to root","epoch":1596047683,"epoch_utc":null},{"commit":"fb45058244ce879f12bbb5b7267b0fd63fef1d63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 29 11:32:18 2020 -0700","stats":{"files_changed":1,"insertions":2640,"deletions":0,"files":["jc/examples.md"],"file_stats":[{"name":"jc/examples.md","lines_changed":2640}]},"message":"add examples file","epoch":1596047538,"epoch_utc":null},{"commit":"45bb5ae389a00ed6a132a65c69ce76c7e5976858","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 28 11:03:41 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"spelling","epoch":1595959421,"epoch_utc":null},{"commit":"339238ab364d8735892a11cb16a62a651edae169","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 20:37:33 2020 -0700","stats":{"files_changed":8,"insertions":79,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py","tests/fixtures/centos-7.7/route-6-n.json","tests/fixtures/centos-7.7/route-6-n.out","tests/fixtures/centos-7.7/route-6.json","tests/fixtures/centos-7.7/route-6.out","tests/test_route.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/route-6-n.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/route-6-n.out","lines_changed":24},{"name":"tests/fixtures/centos-7.7/route-6.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/route-6.out","lines_changed":24},{"name":"tests/test_route.py","lines_changed":24}]},"message":"version bump and add route -6 tests","epoch":1595907453,"epoch_utc":null},{"commit":"032cda8b3db096b690d2557e3b918c50c716c543","merge":"690ac52 6badd3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 19:12:21 2020 -0700","message":"Merge pull request #74 from kellyjonbrazil/dev\n\nDev v1.13.0","epoch":1595902341,"epoch_utc":null},{"commit":"6badd3fb1e1cf6d1ee99614fadc20d54be8039aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 19:02:23 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":3}]},"message":"add parser count test","epoch":1595901743,"epoch_utc":null},{"commit":"724d825745b6f1692eb3b068c3fb59d14892e690","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 19:02:11 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":4}]},"message":"add tracepath parser","epoch":1595901731,"epoch_utc":null},{"commit":"ff1e32ad2ee156f105f5069c6b14a65b22784dfa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 16:49:34 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1595893774,"epoch_utc":null},{"commit":"a5f97febd3066b9e95a18d6b73162a7d206c5845","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 16:47:41 2020 -0700","stats":{"files_changed":10,"insertions":132,"deletions":0,"files":["tests/fixtures/centos-7.7/tracepath.json","tests/fixtures/centos-7.7/tracepath6.json","tests/fixtures/freebsd12/traceroute.json","tests/fixtures/freebsd12/traceroute.out","tests/fixtures/freebsd12/traceroute6.json","tests/fixtures/freebsd12/traceroute6.out","tests/fixtures/osx-10.14.6/uname.out","tests/test_tracepath.py","tests/test_traceroute.py","tests/test_uname.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/tracepath.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/tracepath6.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/traceroute.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/traceroute.out","lines_changed":14},{"name":"tests/fixtures/freebsd12/traceroute6.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/traceroute6.out","lines_changed":34},{"name":"tests/fixtures/osx-10.14.6/uname.out","lines_changed":1},{"name":"tests/test_tracepath.py","lines_changed":46},{"name":"tests/test_traceroute.py","lines_changed":24},{"name":"tests/test_uname.py","lines_changed":9}]},"message":"update traceroute, tracepath, and uname tests","epoch":1595893661,"epoch_utc":null},{"commit":"5baa6cc865634142690e78596c640db35e110b29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:44:13 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add route parser update","epoch":1595889853,"epoch_utc":null},{"commit":"7a4f30b843d8f11711abbb8f9bb263f945ff87ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:37:44 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":6}]},"message":"fix for iface issue","epoch":1595889464,"epoch_utc":null},{"commit":"b2c385dc4f63e3e15f47e986deac0524967214a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:30:09 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":2}]},"message":"change 'if' to 'iface'","epoch":1595889009,"epoch_utc":null},{"commit":"5d5da8d33fa6ab77c745d338d1a2e2e8f2e4c697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:27:11 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":6}]},"message":"more fixes for ipv6 fix","epoch":1595888831,"epoch_utc":null},{"commit":"e60457157839daba385202906997dec48c9c4950","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:20:51 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":2}]},"message":"fix next_hop fix","epoch":1595888451,"epoch_utc":null},{"commit":"f9dacc3f95b32e1431914ae0b0dc5c8e8840d5a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:18:13 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":4}]},"message":"fixup for ipv6","epoch":1595888293,"epoch_utc":null},{"commit":"6086920332575cd7db1b38262a3b4ba8fbfae7ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 15:13:32 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]},"message":"update ParseError message","epoch":1595888012,"epoch_utc":null},{"commit":"f52f3163bcaf8d7e784f02505e81456e8240295b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 13:57:58 2020 -0700","stats":{"files_changed":1,"insertions":49,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":49}]},"message":"add tracepath example","epoch":1595883478,"epoch_utc":null},{"commit":"d18ff73e880c7d34957f2713857cc83094f914cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 13:51:51 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/tracepath.py"],"file_stats":[{"name":"jc/parsers/tracepath.py","lines_changed":4}]},"message":"update author info","epoch":1595883111,"epoch_utc":null},{"commit":"1e5d602caecd96c9056ad77f9fc50cf25bf6fdfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 13:48:46 2020 -0700","stats":{"files_changed":2,"insertions":288,"deletions":32,"files":["docs/parsers/tracepath.md","jc/parsers/tracepath.py"],"file_stats":[{"name":"docs/parsers/tracepath.md","lines_changed":122},{"name":"jc/parsers/tracepath.py","lines_changed":198}]},"message":"working tracepath parser","epoch":1595882926,"epoch_utc":null},{"commit":"12912521ecb376c36dfdd743b3c4195598fb9aac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 11:04:27 2020 -0700","stats":{"files_changed":2,"insertions":0,"deletions":11,"files":["docs/parsers/traceroute.md","jc/parsers/traceroute.py"],"file_stats":[{"name":"docs/parsers/traceroute.md","lines_changed":7},{"name":"jc/parsers/traceroute.py","lines_changed":4}]},"message":"doc update","epoch":1595873067,"epoch_utc":null},{"commit":"842ea3a94bec3fcab76257fdde5514d1de3d57fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 11:02:13 2020 -0700","stats":{"files_changed":2,"insertions":153,"deletions":0,"files":["docs/parsers/tracepath.md","jc/parsers/tracepath.py"],"file_stats":[{"name":"docs/parsers/tracepath.md","lines_changed":64},{"name":"jc/parsers/tracepath.py","lines_changed":89}]},"message":"add tracepath parser skeleton","epoch":1595872933,"epoch_utc":null},{"commit":"a8560dbc1598fa97de87594228b4cc10282d4197","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 11:01:57 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add tracepath","epoch":1595872917,"epoch_utc":null},{"commit":"a65e27540a8c5c7123d2fdf79fcbefa1e2f8afdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 11:01:45 2020 -0700","stats":{"files_changed":3,"insertions":1,"deletions":24,"files":["docgen.sh","docs/parsers/traceroute.md","jc/parsers/traceroute.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/traceroute.md","lines_changed":14},{"name":"jc/parsers/traceroute.py","lines_changed":10}]},"message":"update docs","epoch":1595872905,"epoch_utc":null},{"commit":"c3c5ed11e68938e35920144406d37ea3b21d63dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 10:33:40 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]},"message":"change name from tr to trparse","epoch":1595871220,"epoch_utc":null},{"commit":"ce24149335cd8ed1e8513a2cf040432fe42d86b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 10:33:25 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":1}]},"message":"formatting","epoch":1595871205,"epoch_utc":null},{"commit":"0314ca8c4831d24c169a0e4948421ecd638fd699","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 10:33:15 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add trparse acknowledgement","epoch":1595871195,"epoch_utc":null},{"commit":"ebd8ee49a9f43063850e30c745c8cae46ee13de1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 10:28:15 2020 -0700","stats":{"files_changed":1,"insertions":26,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":27}]},"message":"add key/value info to ini example","epoch":1595870895,"epoch_utc":null},{"commit":"38d10c97814ec69586c3b447c182f339772d6e22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 09:29:30 2020 -0700","stats":{"files_changed":1,"insertions":130,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":131}]},"message":"add ping and traceroute examples","epoch":1595867370,"epoch_utc":null},{"commit":"360106c24d24e6a9697c00a158a14aaa334a4b1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 09:23:01 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add tracepath","epoch":1595866981,"epoch_utc":null},{"commit":"ca470a5d02fd9fbaf05d8b3b3bb1ffe9f4cf5af3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 09:20:00 2020 -0700","stats":{"files_changed":2,"insertions":39,"deletions":0,"files":["tests/fixtures/centos-7.7/tracepath.out","tests/fixtures/centos-7.7/tracepath6.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/tracepath.out","lines_changed":34},{"name":"tests/fixtures/centos-7.7/tracepath6.out","lines_changed":5}]},"message":"add tracepath fixtures","epoch":1595866800,"epoch_utc":null},{"commit":"57f66e6b1d554ff20b72959f5ebb9e7b2feffed2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 27 09:19:48 2020 -0700","stats":{"files_changed":2,"insertions":14,"deletions":2,"files":["changelog.txt","jc/parsers/uname.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":14}]},"message":"add exception with hint to use \"uname -a\"","epoch":1595866788,"epoch_utc":null},{"commit":"e774f67924c0e6195f79829b2ac75ce95f76fbaa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:53:17 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["jc/parsers/ini.py"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":10}]},"message":"turn off interpolation and coerce None to ''","epoch":1595634797,"epoch_utc":null},{"commit":"ac10e576c167d20de259e47a6aa5b23fc998b4c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:29:27 2020 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/ini.md","jc/parsers/ini.py"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"jc/parsers/ini.py","lines_changed":4}]},"message":"spelling","epoch":1595633367,"epoch_utc":null},{"commit":"bcae0a99cd0ccce4ec8a67929f7c83a1095a5b88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:23:45 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"add key/value to ini description","epoch":1595633025,"epoch_utc":null},{"commit":"c73c2ff879b3ed7a3e6f04e53e0a729e4f00ed21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:23:30 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":8}]},"message":"add ping, traceroute, and ini update","epoch":1595633010,"epoch_utc":null},{"commit":"c39b1a3356881a11a8f6fe9432897e6d67162f07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:17:51 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"add ping, traceroute and update ini description","epoch":1595632671,"epoch_utc":null},{"commit":"125dc2d9e051a82a4a438afe2e520212338353f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:17:16 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":3,"files":["docs/parsers/ini.md"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":11}]},"message":"add info about key/value files to doc","epoch":1595632636,"epoch_utc":null},{"commit":"b7d4ddc7ced2c3aabf3a857b53a0bf1b62eb6a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:16:54 2020 -0700","stats":{"files_changed":5,"insertions":50,"deletions":0,"files":["tests/fixtures/generic/keyvalue-ifcfg.json","tests/fixtures/generic/keyvalue-ifcfg.txt","tests/fixtures/generic/keyvalue.json","tests/fixtures/generic/keyvalue.txt","tests/test_ini.py"],"file_stats":[{"name":"tests/fixtures/generic/keyvalue-ifcfg.json","lines_changed":1},{"name":"tests/fixtures/generic/keyvalue-ifcfg.txt","lines_changed":19},{"name":"tests/fixtures/generic/keyvalue.json","lines_changed":1},{"name":"tests/fixtures/generic/keyvalue.txt","lines_changed":5},{"name":"tests/test_ini.py","lines_changed":24}]},"message":"add tests for key/value files","epoch":1595632614,"epoch_utc":null},{"commit":"f5e546c6fa7cba166284a0976887d6b82451d3e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 16:16:24 2020 -0700","stats":{"files_changed":1,"insertions":33,"deletions":9,"files":["jc/parsers/ini.py"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":42}]},"message":"add support for simple key/value pairs","epoch":1595632584,"epoch_utc":null},{"commit":"928e39cd103b96b8c3ccc8d85c930ffb419296c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 14:16:41 2020 -0700","stats":{"files_changed":9,"insertions":104,"deletions":0,"files":["tests/fixtures/generic/traceroute1.json","tests/fixtures/generic/traceroute2.json","tests/fixtures/generic/traceroute3.json","tests/fixtures/generic/traceroute4.json","tests/fixtures/generic/traceroute5.json","tests/fixtures/generic/traceroute6.json","tests/fixtures/generic/traceroute7.json","tests/fixtures/generic/traceroute8.json","tests/test_traceroute.py"],"file_stats":[{"name":"tests/fixtures/generic/traceroute1.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute2.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute3.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute4.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute5.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute6.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute7.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute8.json","lines_changed":1},{"name":"tests/test_traceroute.py","lines_changed":96}]},"message":"add generic traceroute tests","epoch":1595625401,"epoch_utc":null},{"commit":"d0b7ea68a005daff313e44808b256656313a78a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 13:47:47 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":4}]},"message":"check for key in dictionary","epoch":1595623667,"epoch_utc":null},{"commit":"8444690133b6a7522822ab279e97ede6ded17ba9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 13:47:29 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":4}]},"message":"add traceroute","epoch":1595623649,"epoch_utc":null},{"commit":"c03c42d76703ff8f423cf3c10ea6254a27a685cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 24 13:47:23 2020 -0700","stats":{"files_changed":9,"insertions":76,"deletions":9,"files":["tests/fixtures/centos-7.7/traceroute.json","tests/fixtures/osx-10.14.6/traceroute-asn.json",".../osx-10.14.6/traceroute-mult-addresses.json","tests/fixtures/osx-10.14.6/traceroute-q.json","tests/fixtures/osx-10.14.6/traceroute.json",".../osx-10.14.6/traceroute6-mult-addresses.json","...-address.out => traceroute6-mult-addresses.out}","tests/fixtures/osx-10.14.6/traceroute6.json","tests/test_traceroute.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/traceroute.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/traceroute-asn.json","lines_changed":1},{"name":".../osx-10.14.6/traceroute-mult-addresses.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/traceroute-q.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/traceroute.json","lines_changed":1},{"name":".../osx-10.14.6/traceroute6-mult-addresses.json","lines_changed":1},{"name":"...-address.out => traceroute6-mult-addresses.out}","lines_changed":0},{"name":"tests/fixtures/osx-10.14.6/traceroute6.json","lines_changed":1},{"name":"tests/test_traceroute.py","lines_changed":78}]},"message":"add traceroute tests","epoch":1595623643,"epoch_utc":null},{"commit":"ab67688a00ac335d2a5603e9cadef8b565957911","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 16:45:09 2020 -0700","stats":{"files_changed":1,"insertions":55,"deletions":0,"files":["tests/test_traceroute.py"],"file_stats":[{"name":"tests/test_traceroute.py","lines_changed":55}]},"message":"add test skeleton","epoch":1595547909,"epoch_utc":null},{"commit":"5dcb7166daef3c53da65bba0d591672e64d3a90b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 16:44:57 2020 -0700","stats":{"files_changed":2,"insertions":169,"deletions":0,"files":["docgen.sh","docs/parsers/traceroute.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/traceroute.md","lines_changed":168}]},"message":"add traceroute doc","epoch":1595547897,"epoch_utc":null},{"commit":"14697b86d7fc1cfebb41e0fd2d9a9b9b60071d3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 15:48:08 2020 -0700","stats":{"files_changed":1,"insertions":24,"deletions":2,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":26}]},"message":"add MIT license","epoch":1595544488,"epoch_utc":null},{"commit":"4f4b6276d4bf798b17d996f39742bd0428fc2f19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 15:46:22 2020 -0700","stats":{"files_changed":1,"insertions":38,"deletions":33,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":71}]},"message":"update docstring","epoch":1595544382,"epoch_utc":null},{"commit":"7bc497e1291059ae7858c9d2bd2d9a1b4c030dd1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 15:42:33 2020 -0700","stats":{"files_changed":1,"insertions":117,"deletions":14,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":131}]},"message":"updated process() function to set integers and floats","epoch":1595544153,"epoch_utc":null},{"commit":"68a37a6a5a3f0ad0fa24c84d363050af9fa11f97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 12:48:33 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":4}]},"message":"remove unused function load()","epoch":1595533713,"epoch_utc":null},{"commit":"6f5cd1d7c5f76d7d4da42171fdc30daf9fe3996e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 12:03:21 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]},"message":"change to use f-string","epoch":1595531001,"epoch_utc":null},{"commit":"126b1b121ca10183dc7e9dece83b42907becad39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 11:31:56 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":0,"files":["tests/fixtures/generic/traceroute8.out"],"file_stats":[{"name":"tests/fixtures/generic/traceroute8.out","lines_changed":10}]},"message":"add traceroute6 example","epoch":1595529116,"epoch_utc":null},{"commit":"2341e456a012564f86d533d2748a5887d79995e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 11:31:35 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]},"message":"use ParseError instead of generic Exception","epoch":1595529095,"epoch_utc":null},{"commit":"72d80e95bb50ae2a7432082e65aba15235ba0955","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 10:52:40 2020 -0700","stats":{"files_changed":8,"insertions":115,"deletions":8,"files":["jc/parsers/traceroute.py","tests/fixtures/generic/traceroute1.out","tests/fixtures/generic/traceroute2.out","tests/fixtures/generic/traceroute3.out","tests/fixtures/generic/traceroute4.out","tests/fixtures/generic/traceroute5.out","tests/fixtures/generic/traceroute6.out","tests/fixtures/generic/traceroute7.out"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":9},{"name":"tests/fixtures/generic/traceroute1.out","lines_changed":16},{"name":"tests/fixtures/generic/traceroute2.out","lines_changed":13},{"name":"tests/fixtures/generic/traceroute3.out","lines_changed":20},{"name":"tests/fixtures/generic/traceroute4.out","lines_changed":7},{"name":"tests/fixtures/generic/traceroute5.out","lines_changed":10},{"name":"tests/fixtures/generic/traceroute6.out","lines_changed":31},{"name":"tests/fixtures/generic/traceroute7.out","lines_changed":17}]},"message":"remove unused regex patterns","epoch":1595526760,"epoch_utc":null},{"commit":"f5ec82440cd1c1b5ac9011d3517298d0cdcd8766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 23 10:19:56 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":11}]},"message":"simplify regex patterns","epoch":1595524796,"epoch_utc":null},{"commit":"c8e526ead35b868733f57b4c114062a48b78a817","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 22 17:23:24 2020 -0700","stats":{"files_changed":2,"insertions":12,"deletions":3,"files":["jc/parsers/traceroute.py","tests/fixtures/osx-10.14.6/traceroute-q.out"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":11},{"name":"tests/fixtures/osx-10.14.6/traceroute-q.out","lines_changed":4}]},"message":"fixes for bsd-style ipv6 output","epoch":1595463804,"epoch_utc":null},{"commit":"066adfb76479df7042bfb12bbb83b5dbd8a6d54c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 22 15:02:02 2020 -0700","stats":{"files_changed":7,"insertions":83,"deletions":7,"files":["jc/parsers/traceroute.py","tests/fixtures/centos-7.7/traceroute.out","tests/fixtures/osx-10.14.6/traceroute-asn.out",".../osx-10.14.6/traceroute-mult-addresses.out",".../fixtures/osx-10.14.6/traceroute-no-header.out",".../osx-10.14.6/traceroute6-multi-address.out","tests/fixtures/osx-10.14.6/traceroute6.out"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":30},{"name":"tests/fixtures/centos-7.7/traceroute.out","lines_changed":32},{"name":"tests/fixtures/osx-10.14.6/traceroute-asn.out","lines_changed":5},{"name":".../osx-10.14.6/traceroute-mult-addresses.out","lines_changed":5},{"name":".../fixtures/osx-10.14.6/traceroute-no-header.out","lines_changed":3},{"name":".../osx-10.14.6/traceroute6-multi-address.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/traceroute6.out","lines_changed":7}]},"message":"handle warning lines in the traceroute output","epoch":1595455322,"epoch_utc":null},{"commit":"5b444d4717b0b8528647e17e71d699907def3e18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 22 12:19:27 2020 -0700","stats":{"files_changed":3,"insertions":307,"deletions":0,"files":["jc/cli.py","jc/parsers/traceroute.py","tests/fixtures/osx-10.14.6/traceroute.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/traceroute.py","lines_changed":295},{"name":"tests/fixtures/osx-10.14.6/traceroute.out","lines_changed":11}]},"message":"add traceroute parser","epoch":1595445567,"epoch_utc":null},{"commit":"69c95adc8d59927c1c00b7e766ca5003b7b6454c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 22 09:06:11 2020 -0700","stats":{"files_changed":3,"insertions":81,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ping6-ip-dup.json","tests/fixtures/osx-10.14.6/ping6-ip-dup.out","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ping6-ip-dup.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-dup.out","lines_changed":68},{"name":"tests/test_ping.py","lines_changed":12}]},"message":"add osx ipv6 ping dup test","epoch":1595433971,"epoch_utc":null},{"commit":"2b0e0d8f5c1a6a5450e362971f9ad5892093b2ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 17:34:30 2020 -0700","stats":{"files_changed":3,"insertions":27,"deletions":0,"files":["tests/fixtures/centos-7.7/ping6-ip-dup.json","tests/fixtures/centos-7.7/ping6-ip-dup.out","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ping6-ip-dup.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-ip-dup.out","lines_changed":14},{"name":"tests/test_ping.py","lines_changed":12}]},"message":"add ipv6 dup test","epoch":1595378070,"epoch_utc":null},{"commit":"778d1bacbf8df523d434b22f5e1517955e4c15ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 15:16:39 2020 -0700","stats":{"files_changed":2,"insertions":28,"deletions":12,"files":["docs/parsers/ping.md","jc/parsers/ping.py"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":20},{"name":"jc/parsers/ping.py","lines_changed":20}]},"message":"update docs to add \"duplicates\" fields","epoch":1595369799,"epoch_utc":null},{"commit":"7e1b0410166c584775ebcd681a280ec7321560c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 15:12:43 2020 -0700","stats":{"files_changed":1,"insertions":24,"deletions":0,"files":["tests/test_ping.py"],"file_stats":[{"name":"tests/test_ping.py","lines_changed":24}]},"message":"add duplicate replies tests","epoch":1595369563,"epoch_utc":null},{"commit":"313b9b329ca6b674069718839f55a4bd7834db80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 15:05:54 2020 -0700","stats":{"files_changed":55,"insertions":55,"deletions":53,"files":["tests/fixtures/centos-7.7/ping-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping-hostname-O-p.json","tests/fixtures/centos-7.7/ping-hostname-O.json","tests/fixtures/centos-7.7/ping-ip-O-D.json","tests/fixtures/centos-7.7/ping-ip-O.json","tests/fixtures/centos-7.7/ping-ip-dup.json","tests/fixtures/centos-7.7/ping6-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping6-hostname-O-p.json","tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","tests/fixtures/centos-7.7/ping6-ip-O-p.json","tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping-hostname-O-p.json","tests/fixtures/fedora32/ping-hostname-O.json","tests/fixtures/fedora32/ping-ip-O-D.json","tests/fixtures/fedora32/ping-ip-O.json","tests/fixtures/fedora32/ping6-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping6-hostname-O-D-p.json","tests/fixtures/fedora32/ping6-hostname-O-p.json","tests/fixtures/fedora32/ping6-ip-O-D-p.json","tests/fixtures/fedora32/ping6-ip-O-p.json","tests/fixtures/freebsd12/ping-hostname-p.json","tests/fixtures/freebsd12/ping-hostname-s.json","tests/fixtures/freebsd12/ping-hostname.json","tests/fixtures/freebsd12/ping-ip-p.json","tests/fixtures/freebsd12/ping-ip-s.json","tests/fixtures/freebsd12/ping-ip.json","tests/fixtures/freebsd12/ping6-hostname-p.json","tests/fixtures/freebsd12/ping6-hostname-s.json","tests/fixtures/freebsd12/ping6-hostname.json","tests/fixtures/freebsd12/ping6-ip-p.json","tests/fixtures/freebsd12/ping6-ip-s.json","tests/fixtures/freebsd12/ping6-ip.json","tests/fixtures/osx-10.14.6/ping-hostname-p.json","tests/fixtures/osx-10.14.6/ping-hostname-s.json","tests/fixtures/osx-10.14.6/ping-hostname.json","tests/fixtures/osx-10.14.6/ping-ip-dup.json","tests/fixtures/osx-10.14.6/ping-ip-p.json","tests/fixtures/osx-10.14.6/ping-ip-s.json","tests/fixtures/osx-10.14.6/ping-ip.json","tests/fixtures/osx-10.14.6/ping6-hostname-p.json","tests/fixtures/osx-10.14.6/ping6-hostname-s.json","tests/fixtures/osx-10.14.6/ping6-hostname.json","tests/fixtures/osx-10.14.6/ping6-ip-p.json","tests/fixtures/osx-10.14.6/ping6-ip-s.json","tests/fixtures/osx-10.14.6/ping6-ip.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping-hostname-O.json","tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","tests/fixtures/ubuntu-18.04/ping-ip-O.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ping-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-hostname-O.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-ip-O-D.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-ip-O.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-ip-dup.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping6-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-hostname-O.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-ip-O-D.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-ip-O.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-ip-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-ip-O-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-hostname-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-hostname-s.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-hostname.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-ip-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-ip-s.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-ip.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-hostname-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-hostname-s.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-hostname.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-ip-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-ip-s.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-ip.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-hostname-p.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-hostname-s.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-hostname.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-ip-dup.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-p.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-ip-s.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-ip.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-p.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-s.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-p.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-s.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-ip.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json","lines_changed":2}]},"message":"update fixtures for added 'duplicate' fields","epoch":1595369154,"epoch_utc":null},{"commit":"6830062256fbc453f87224f7ab8c10e4494b5a83","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 14:47:25 2020 -0700","stats":{"files_changed":4,"insertions":112,"deletions":24,"files":["docs/parsers/ping.md","jc/parsers/ping.py","tests/fixtures/centos-7.7/ping-ip-dup.out","tests/fixtures/osx-10.14.6/ping-ip-dup.out"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":6},{"name":"jc/parsers/ping.py","lines_changed":83},{"name":"tests/fixtures/centos-7.7/ping-ip-dup.out","lines_changed":27},{"name":"tests/fixtures/osx-10.14.6/ping-ip-dup.out","lines_changed":20}]},"message":"add support for duplicate replies","epoch":1595368045,"epoch_utc":null},{"commit":"323072c9827c41c5d74433504b5efceb846cfe09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jul 21 09:02:44 2020 -0700","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/ping.md","jc/parsers/ping.py"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":1},{"name":"jc/parsers/ping.py","lines_changed":1}]},"message":"add source_ip to schema doc","epoch":1595347364,"epoch_utc":null},{"commit":"8719d96bddec80187e7ba3286ba93bfec8465744","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 16:54:43 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"change description","epoch":1595289283,"epoch_utc":null},{"commit":"dd5d318ab5bbb1027dd600fd3b0b6ec9b8adfdc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 16:25:20 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":6}]},"message":"version bump and add ping command","epoch":1595287520,"epoch_utc":null},{"commit":"d6dc7f5e65c097895c19000e59e8803a3b350fdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 16:11:18 2020 -0700","stats":{"files_changed":13,"insertions":135,"deletions":29,"files":["tests/fixtures/osx-10.14.6/ping-hostname-p.json","tests/fixtures/osx-10.14.6/ping-hostname-s.json","tests/fixtures/osx-10.14.6/ping-hostname.json","tests/fixtures/osx-10.14.6/ping-ip-p.json","tests/fixtures/osx-10.14.6/ping-ip-s.json","tests/fixtures/osx-10.14.6/ping-ip.json","tests/fixtures/osx-10.14.6/ping6-hostname-p.json","tests/fixtures/osx-10.14.6/ping6-hostname-s.json","tests/fixtures/osx-10.14.6/ping6-hostname.json","tests/fixtures/osx-10.14.6/ping6-ip-p.json","tests/fixtures/osx-10.14.6/ping6-ip-s.json","tests/fixtures/osx-10.14.6/ping6-ip.json","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ping-hostname-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-hostname-s.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-hostname.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-s.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-s.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-s.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":152}]},"message":"add osx ping tests","epoch":1595286678,"epoch_utc":null},{"commit":"c203664eb5aafa0afa3101b79e3fd13b3e009ec5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 15:46:27 2020 -0700","stats":{"files_changed":13,"insertions":171,"deletions":9,"files":["tests/fixtures/freebsd12/ping-hostname-p.json","tests/fixtures/freebsd12/ping-hostname-s.json","tests/fixtures/freebsd12/ping-hostname.json","tests/fixtures/freebsd12/ping-ip-p.json","tests/fixtures/freebsd12/ping-ip-s.json","tests/fixtures/freebsd12/ping-ip.json","tests/fixtures/freebsd12/ping6-hostname-p.json","tests/fixtures/freebsd12/ping6-hostname-s.json","tests/fixtures/freebsd12/ping6-hostname.json","tests/fixtures/freebsd12/ping6-ip-p.json","tests/fixtures/freebsd12/ping6-ip-s.json","tests/fixtures/freebsd12/ping6-ip.json","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/ping-hostname-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-hostname-s.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-hostname.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-s.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-hostname-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-hostname-s.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-hostname.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-s.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":168}]},"message":"freebsd ping tests","epoch":1595285187,"epoch_utc":null},{"commit":"19ecf1fa19e9fa0873002baf07fa670b71ed7752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 14:35:41 2020 -0700","stats":{"files_changed":11,"insertions":118,"deletions":0,"files":["tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping-hostname-O-p.json","tests/fixtures/fedora32/ping-hostname-O.json","tests/fixtures/fedora32/ping-ip-O-D.json","tests/fixtures/fedora32/ping-ip-O.json",".../fixtures/fedora32/ping6-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping6-hostname-O-D-p.json","tests/fixtures/fedora32/ping6-hostname-O-p.json","tests/fixtures/fedora32/ping6-ip-O-D-p.json","tests/fixtures/fedora32/ping6-ip-O-p.json","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-hostname-O.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-ip-O-D.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-ip-O.json","lines_changed":1},{"name":".../fixtures/fedora32/ping6-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping6-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping6-ip-O-D-p.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping6-ip-O-p.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":108}]},"message":"add Fedora32 tests","epoch":1595280941,"epoch_utc":null},{"commit":"b8deb0426cc23333c0e0a9dc3776d9761d99abb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 13:51:39 2020 -0700","stats":{"files_changed":11,"insertions":119,"deletions":8,"files":[".../ubuntu-18.04/ping-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping-hostname-O.json","tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","tests/fixtures/ubuntu-18.04/ping-ip-O.json",".../ubuntu-18.04/ping6-hostname-O-D-p-s.json",".../ubuntu-18.04/ping6-hostname-O-D-p.json",".../fixtures/ubuntu-18.04/ping6-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json","tests/test_ping.py"],"file_stats":[{"name":".../ubuntu-18.04/ping-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-hostname-O-D-p-s.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-hostname-O-D-p.json","lines_changed":1},{"name":".../fixtures/ubuntu-18.04/ping6-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":117}]},"message":"add ubuntu ping tests","epoch":1595278299,"epoch_utc":null},{"commit":"3b8371f0208a097cb8a1c026348d3842e6702b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 12:49:05 2020 -0700","stats":{"files_changed":10,"insertions":202,"deletions":0,"files":[".../fixtures/centos-7.7/ping-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping-hostname-O-p.json","tests/fixtures/centos-7.7/ping-hostname-O.json","tests/fixtures/centos-7.7/ping-ip-O-D.json","tests/fixtures/centos-7.7/ping-ip-O.json",".../centos-7.7/ping6-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping6-hostname-O-p.json","tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","tests/fixtures/centos-7.7/ping6-ip-O-p.json","tests/test_ping.py"],"file_stats":[{"name":".../fixtures/centos-7.7/ping-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-hostname-O.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-ip-O-D.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-ip-O.json","lines_changed":1},{"name":".../centos-7.7/ping6-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-p.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":193}]},"message":"add centos ping tests","epoch":1595274545,"epoch_utc":null},{"commit":"20bb1cdf396abdb3707b34fa146cbe913f9bbd6f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 20 11:53:06 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":8}]},"message":"add TypeError to except for None values","epoch":1595271186,"epoch_utc":null},{"commit":"301daa48d0bfc28f97c8e46f028f8c6b875bf34e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 15:30:54 2020 -0700","stats":{"files_changed":2,"insertions":114,"deletions":16,"files":["docs/parsers/ping.md","jc/parsers/ping.py"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":128},{"name":"jc/parsers/ping.py","lines_changed":2}]},"message":"update documentation","epoch":1595197854,"epoch_utc":null},{"commit":"8421ec88033e02f472e4961d87551a0352663a16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 15:19:47 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":4}]},"message":"remove cygwin compatibility","epoch":1595197187,"epoch_utc":null},{"commit":"74211eb0129f6aa655a38ba4d4d8844d81441107","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 15:16:04 2020 -0700","stats":{"files_changed":1,"insertions":82,"deletions":5,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":87}]},"message":"add examples","epoch":1595196964,"epoch_utc":null},{"commit":"60bd42f298f309cbec6d24c9543ea3d51bd73b18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 15:13:52 2020 -0700","stats":{"files_changed":1,"insertions":59,"deletions":11,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":70}]},"message":"add process() logic","epoch":1595196832,"epoch_utc":null},{"commit":"14bdd74526e400997c5bc247ea35ed40799e83ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 14:46:02 2020 -0700","stats":{"files_changed":12,"insertions":100,"deletions":0,"files":["tests/fixtures/freebsd12/ping-hostname-p.out","tests/fixtures/freebsd12/ping-hostname-s.out","tests/fixtures/freebsd12/ping-hostname.out","tests/fixtures/freebsd12/ping-ip-p.out","tests/fixtures/freebsd12/ping-ip-s.out","tests/fixtures/freebsd12/ping-ip.out","tests/fixtures/freebsd12/ping6-hostname-p.out","tests/fixtures/freebsd12/ping6-hostname-s.out","tests/fixtures/freebsd12/ping6-hostname.out","tests/fixtures/freebsd12/ping6-ip-p.out","tests/fixtures/freebsd12/ping6-ip-s.out","tests/fixtures/freebsd12/ping6-ip.out"],"file_stats":[{"name":"tests/fixtures/freebsd12/ping-hostname-p.out","lines_changed":9},{"name":"tests/fixtures/freebsd12/ping-hostname-s.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping-hostname.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping-ip-p.out","lines_changed":9},{"name":"tests/fixtures/freebsd12/ping-ip-s.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping-ip.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping6-hostname-p.out","lines_changed":9},{"name":"tests/fixtures/freebsd12/ping6-hostname-s.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping6-hostname.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping6-ip-p.out","lines_changed":9},{"name":"tests/fixtures/freebsd12/ping6-ip-s.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping6-ip.out","lines_changed":8}]},"message":"add ping test fixtures","epoch":1595195162,"epoch_utc":null},{"commit":"fb0f3eda04a4b1dbb81da7d5791cbfe746bfd617","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 14:45:50 2020 -0700","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["tests/fixtures/create_fixtures.sh"],"file_stats":[{"name":"tests/fixtures/create_fixtures.sh","lines_changed":16}]},"message":"add ping commands","epoch":1595195150,"epoch_utc":null},{"commit":"91ee6e6701307363336a39f9e16641465ddd05c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 14:18:56 2020 -0700","stats":{"files_changed":12,"insertions":100,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ping-hostname-p.out","tests/fixtures/osx-10.14.6/ping-hostname-s.out","tests/fixtures/osx-10.14.6/ping-hostname.out","tests/fixtures/osx-10.14.6/ping-ip-p.out","tests/fixtures/osx-10.14.6/ping-ip-s.out","tests/fixtures/osx-10.14.6/ping-ip.out","tests/fixtures/osx-10.14.6/ping6-hostname-p.out","tests/fixtures/osx-10.14.6/ping6-hostname-s.out","tests/fixtures/osx-10.14.6/ping6-hostname.out","tests/fixtures/osx-10.14.6/ping6-ip-p.out","tests/fixtures/osx-10.14.6/ping6-ip-s.out","tests/fixtures/osx-10.14.6/ping6-ip.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ping-hostname-p.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/ping-hostname-s.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping-hostname.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping-ip-p.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/ping-ip-s.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping-ip.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-p.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-s.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-p.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-s.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping6-ip.out","lines_changed":8}]},"message":"add osx ping test fixtures","epoch":1595193536,"epoch_utc":null},{"commit":"51f4e6927c68a7e2a26954f564d10d316b98a984","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 14:18:40 2020 -0700","stats":{"files_changed":1,"insertions":12,"deletions":3,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":15}]},"message":"add support for pattern in osx/bsd","epoch":1595193520,"epoch_utc":null},{"commit":"94988d86674293faddc6f7e7c82575738d2dc791","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 13:50:40 2020 -0700","stats":{"files_changed":10,"insertions":257,"deletions":0,"files":["tests/fixtures/fedora32/ping-hostname-O-D-p-s.out","tests/fixtures/fedora32/ping-hostname-O-p.out","tests/fixtures/fedora32/ping-hostname-O.out","tests/fixtures/fedora32/ping-ip-O-D.out","tests/fixtures/fedora32/ping-ip-O.out","tests/fixtures/fedora32/ping6-hostname-O-D-p-s.out","tests/fixtures/fedora32/ping6-hostname-O-D-p.out","tests/fixtures/fedora32/ping6-hostname-O-p.out","tests/fixtures/fedora32/ping6-ip-O-D-p.out","tests/fixtures/fedora32/ping6-ip-O-p.out"],"file_stats":[{"name":"tests/fixtures/fedora32/ping-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping-hostname-O.out","lines_changed":25},{"name":"tests/fixtures/fedora32/ping-ip-O-D.out","lines_changed":25},{"name":"tests/fixtures/fedora32/ping-ip-O.out","lines_changed":25},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping6-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping6-ip-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping6-ip-O-p.out","lines_changed":26}]},"message":"add fedora ping fixtures","epoch":1595191840,"epoch_utc":null},{"commit":"fe36f5a98cd3ee7753e250b6553e4453d971f929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 12:56:53 2020 -0700","stats":{"files_changed":13,"insertions":318,"deletions":0,"files":["tests/fixtures/centos-7.7/ping-ip-O-D.out","tests/fixtures/centos-7.7/ping-ip-O.out","tests/fixtures/create_fixtures.sh",".../ubuntu-18.04/ping-hostname-O-D-p-s.out","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.out","tests/fixtures/ubuntu-18.04/ping-hostname-O.out","tests/fixtures/ubuntu-18.04/ping-ip-O-D.out","tests/fixtures/ubuntu-18.04/ping-ip-O.out",".../ubuntu-18.04/ping6-hostname-O-D-p-s.out",".../fixtures/ubuntu-18.04/ping6-hostname-O-D-p.out","tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.out","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.out","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ping-ip-O-D.out","lines_changed":25},{"name":"tests/fixtures/centos-7.7/ping-ip-O.out","lines_changed":25},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":12},{"name":".../ubuntu-18.04/ping-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O.out","lines_changed":25},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O-D.out","lines_changed":25},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O.out","lines_changed":25},{"name":".../ubuntu-18.04/ping6-hostname-O-D-p-s.out","lines_changed":26},{"name":".../fixtures/ubuntu-18.04/ping6-hostname-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-p.out","lines_changed":25}]},"message":"add fixtures for ping","epoch":1595188613,"epoch_utc":null},{"commit":"f9eb18b9271b2428dd82f2dc26d3fa0435dad81d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jul 19 12:56:34 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":17}]},"message":"change 'request_timeout' field to 'type', fix compatibility, other formatting fixes","epoch":1595188594,"epoch_utc":null},{"commit":"cc60f3674822c644933f286a0364b09d7e2a60b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jul 18 12:35:46 2020 -0700","stats":{"files_changed":3,"insertions":67,"deletions":1,"files":["docgen.sh","docs/parsers/ping.md","jc/cli.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ping.md","lines_changed":64},{"name":"jc/cli.py","lines_changed":3}]},"message":"add ping parser","epoch":1595100946,"epoch_utc":null},{"commit":"604ade791f7bd33b37f64916befba27a2ea08b5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 17 15:57:07 2020 -0700","stats":{"files_changed":8,"insertions":506,"deletions":0,"files":["jc/parsers/ping.py",".../fixtures/centos-7.7/ping-hostname-O-D-p-s.out","tests/fixtures/centos-7.7/ping-hostname-O-p.out","tests/fixtures/centos-7.7/ping-hostname-O.out",".../fixtures/centos-7.7/ping6-hostname-O-D-p-s.out","tests/fixtures/centos-7.7/ping6-hostname-O-p.out","tests/fixtures/centos-7.7/ping6-ip-O-D-p.out","tests/fixtures/centos-7.7/ping6-ip-O-p.out"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":325},{"name":".../fixtures/centos-7.7/ping-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping-hostname-O.out","lines_changed":25},{"name":".../fixtures/centos-7.7/ping6-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping6-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-p.out","lines_changed":26}]},"message":"add ping parser","epoch":1595026627,"epoch_utc":null},{"commit":"690ac52a917200e46eac2feafc9f504f2734301c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 13 07:18:48 2020 -0700","stats":{"files_changed":1,"insertions":261,"deletions":0,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":261}]},"message":"add man page","epoch":1594649928,"epoch_utc":null},{"commit":"34ed772775f1f02ed148f24a3bfff532bc811607","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jul 11 09:46:47 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1594486007,"epoch_utc":null},{"commit":"d5ab95571f64f55d8194e9e5592ac538bb535229","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jul 11 09:44:08 2020 -0700","stats":{"files_changed":1,"insertions":26,"deletions":11,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":37}]},"message":"fix tests when using older versions of pygments","epoch":1594485848,"epoch_utc":null},{"commit":"ffb3a0ee5fb30a3f61d6cbedf877ab04acdbf624","merge":"fde0bc8 94b12b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 16:34:56 2020 -0700","message":"Merge pull request #73 from kellyjonbrazil/dev\n\nDev v1.12.0","epoch":1594424096,"epoch_utc":null},{"commit":"94b12b57aaa56170d1f31f4910fd1239f88de137","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 16:30:08 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"spelling","epoch":1594423808,"epoch_utc":null},{"commit":"6d149e84571d5d6dd1d8a1f219ba299de5173779","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 16:25:03 2020 -0700","stats":{"files_changed":2,"insertions":8,"deletions":1,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":7},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1594423503,"epoch_utc":null},{"commit":"1ad89c90d890039b817f65b2635db1b5e849a9e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 15:58:02 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add pacman","epoch":1594421882,"epoch_utc":null},{"commit":"fb71c7b020bc1eda9484595f30b0200a4f59aa45","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 15:49:35 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":2}]},"message":"function name spelling","epoch":1594421375,"epoch_utc":null},{"commit":"28ed17ad3bce866e5dc0179ef5de43380ac6ace1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 15:45:21 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":1}]},"message":"add parser_count test to test_cli_about_jc","epoch":1594421121,"epoch_utc":null},{"commit":"0c2a4e2bf71dca50d4a9bb27ca99944909c022ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 15:35:05 2020 -0700","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":37}]},"message":"add cli tests","epoch":1594420505,"epoch_utc":null},{"commit":"62bec30de2f1a303f2ec411d89f7f9f9c6d1abaf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 14:44:50 2020 -0700","stats":{"files_changed":1,"insertions":20,"deletions":0,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":20}]},"message":"add json_out tests","epoch":1594417490,"epoch_utc":null},{"commit":"3fced77e4e258dbf7db94a313e599c830a597b49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 12:23:48 2020 -0700","stats":{"files_changed":1,"insertions":98,"deletions":1,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":99}]},"message":"add set_env_colors tests","epoch":1594409028,"epoch_utc":null},{"commit":"a09d1d8b7687912610598c88d172733d5e29b1ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 12:23:25 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":13}]},"message":"move environment variable assignment to main() to simplify tests","epoch":1594409005,"epoch_utc":null},{"commit":"8f4243fbd8d70ca9fd019e984c564e37c81e07db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 10:54:34 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"formatting","epoch":1594403674,"epoch_utc":null},{"commit":"47aaf20549ea238443427e69d5841d6996b7afab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 10:50:51 2020 -0700","stats":{"files_changed":1,"insertions":17,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":17}]},"message":"add sysctl command parser","epoch":1594403451,"epoch_utc":null},{"commit":"0c5289ea50e4d3d35e80147b4cad32434c19a2a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 10:47:23 2020 -0700","stats":{"files_changed":3,"insertions":72,"deletions":2,"files":["tests/fixtures/freebsd12/sysctl-a.json","tests/fixtures/osx-10.14.6/sysctl-a.json","tests/test_sysctl.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/sysctl-a.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/sysctl-a.json","lines_changed":2},{"name":"tests/test_sysctl.py","lines_changed":70}]},"message":"add sysctl tests","epoch":1594403243,"epoch_utc":null},{"commit":"3e53323514906fb84abfaeed0c2ee1fd9090ad8d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 09:58:56 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":2}]},"message":"don't filter out empty lines","epoch":1594400336,"epoch_utc":null},{"commit":"a5ee9861b9b9b479aee59ea5b1d75f20d7c3c8e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 09:28:32 2020 -0700","stats":{"files_changed":3,"insertions":3785,"deletions":1,"files":["tests/fixtures/freebsd12/sysctl-a.json","tests/fixtures/freebsd12/sysctl-a.out","tests/fixtures/osx-10.14.6/sysctl-a.json"],"file_stats":[{"name":"tests/fixtures/freebsd12/sysctl-a.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/sysctl-a.out","lines_changed":3783},{"name":"tests/fixtures/osx-10.14.6/sysctl-a.json","lines_changed":2}]},"message":"update fixtures","epoch":1594398512,"epoch_utc":null},{"commit":"feb8ca76545cba4fd0927273ddf90a77df994006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 09:28:20 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/sysctl.md"],"file_stats":[{"name":"docs/parsers/sysctl.md","lines_changed":2}]},"message":"spelling","epoch":1594398500,"epoch_utc":null},{"commit":"a7abe4473b90c512466db9ae98cfac585689fe2a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 09:03:04 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":2}]},"message":"spelling","epoch":1594396984,"epoch_utc":null},{"commit":"780b9b61dec3e142e46c9a82146d2af4e1144123","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 08:30:31 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":6}]},"message":"specify IndexError exception in try/except block","epoch":1594395031,"epoch_utc":null},{"commit":"19ace36ffa659bedf0ba2e43572c9e253592b2e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 08:21:30 2020 -0700","stats":{"files_changed":4,"insertions":2167,"deletions":0,"files":["tests/fixtures/osx-10.14.6/sysctl-a.json","tests/fixtures/osx-10.14.6/sysctl-a.out","tests/fixtures/ubuntu-18.04/sysctl-a.json","tests/fixtures/ubuntu-18.04/sysctl-a.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/sysctl-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/sysctl-a.out","lines_changed":1287},{"name":"tests/fixtures/ubuntu-18.04/sysctl-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/sysctl-a.out","lines_changed":878}]},"message":"add fixtures","epoch":1594394490,"epoch_utc":null},{"commit":"5fff8afc9f47f8cc6db8ed3613b90b5cdc683b43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jul 10 08:21:15 2020 -0700","stats":{"files_changed":1,"insertions":33,"deletions":11,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":44}]},"message":"add fixes for freebsd where values can be on separate lines under the key","epoch":1594394475,"epoch_utc":null},{"commit":"4ad230c9279c5eb6c8ed6baf7254b8e9328e5af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 16:35:36 2020 -0700","stats":{"files_changed":4,"insertions":929,"deletions":14,"files":["docs/parsers/sysctl.md","jc/parsers/sysctl.py","tests/fixtures/centos-7.7/sysctl-a.json","tests/fixtures/centos-7.7/sysctl-a.out"],"file_stats":[{"name":"docs/parsers/sysctl.md","lines_changed":12},{"name":"jc/parsers/sysctl.py","lines_changed":12},{"name":"tests/fixtures/centos-7.7/sysctl-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sysctl-a.out","lines_changed":918}]},"message":"doc update and add test fixtures","epoch":1594337736,"epoch_utc":null},{"commit":"dd98eb1ec8f451eb87a5094e76a7f758dee3fc69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 16:25:41 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":7,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":11}]},"message":"append duplicate key values to original key instead of adding unique keys","epoch":1594337141,"epoch_utc":null},{"commit":"c6baf42e72b4f41ed511e7db943297d03a39c0d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 16:18:33 2020 -0700","stats":{"files_changed":3,"insertions":94,"deletions":7,"files":["docgen.sh","docs/parsers/sysctl.md","jc/parsers/sysctl.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/sysctl.md","lines_changed":86},{"name":"jc/parsers/sysctl.py","lines_changed":14}]},"message":"doc updates","epoch":1594336713,"epoch_utc":null},{"commit":"e2bac97d563e5ef771ccd8ed1e5c42cbf588b120","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 14:51:15 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":12}]},"message":"fix for multiple identical keys in sysctl output","epoch":1594331475,"epoch_utc":null},{"commit":"d112ee94d0ec534828c8508d0fb833b768975990","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 14:26:35 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":4,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":12}]},"message":"use try/except and add support for floats in process()","epoch":1594329995,"epoch_utc":null},{"commit":"27b21b2fafab912f21b88b66c7f817cbce155765","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 11:11:29 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":7,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":15}]},"message":"formatting and docstring updates","epoch":1594318289,"epoch_utc":null},{"commit":"8c96d5cd20448a4f7f9736c4d489d6ecc3068ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 10:59:36 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["requirements.txt"],"file_stats":[{"name":"requirements.txt","lines_changed":2}]},"message":"reduce pygments version requirement","epoch":1594317576,"epoch_utc":null},{"commit":"c29ed3fd695f725005333db5e6e2cd844bb4ca14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 10:54:49 2020 -0700","stats":{"files_changed":1,"insertions":14,"deletions":13,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":27}]},"message":"formatting of quotation marks and docstrings","epoch":1594317289,"epoch_utc":null},{"commit":"cedf603f121636bdfa95432059c3c275c3ea3e9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 09:59:00 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]},"message":"minor formatting","epoch":1594313940,"epoch_utc":null},{"commit":"279161c36f288c27a9789054ae372fe8ceb58a94","merge":"bc7116c ce0b43d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 09:48:58 2020 -0700","message":"Merge pull request #72 from duelafn/pygments-2.3\n\nSupport older pygments","epoch":1594313338,"epoch_utc":null},{"commit":"ce0b43d919f07d96d1b94e9d14d03e935e80011d","author":"Dean Serenevy","author_email":"dean@serenevy.net","date":"Thu Jul 9 12:44:41 2020 -0400","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"Remove dependency on 3rd party packaging library","epoch":1594323881,"epoch_utc":null},{"commit":"ddafa5bf06066bab8e9587be902d6752fcf51605","author":"Dean Serenevy","author_email":"dean@serenevy.net","date":"Thu Jul 9 11:27:01 2020 -0400","stats":{"files_changed":2,"insertions":47,"deletions":7,"files":["jc/cli.py","setup.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":52},{"name":"setup.py","lines_changed":2}]},"message":"Support older pygments","epoch":1594319221,"epoch_utc":null},{"commit":"bc7116c31bacf3159aef775fd0e615187420b010","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jul 9 08:30:10 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":8,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":15}]},"message":"fix JC_COLORS env bug and simplify set_env_colors()","epoch":1594308610,"epoch_utc":null},{"commit":"53b709272115e769dac905296fa3b000c1cdd66a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 8 16:40:28 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":11,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":22}]},"message":"remove side-effects from functions and print in main()","epoch":1594251628,"epoch_utc":null},{"commit":"beb9174b1b35937ae1fb99778369ae643a8f1005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 8 15:42:06 2020 -0700","stats":{"files_changed":1,"insertions":123,"deletions":0,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":123}]},"message":"add sysctl parser","epoch":1594248126,"epoch_utc":null},{"commit":"aea41ed341c8d53cc07c35e8044e8f816ddd2fed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 8 15:41:46 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":11}]},"message":"move verbose_debug enable earlier in code to catch more issues. add sysctl and version bump","epoch":1594248106,"epoch_utc":null},{"commit":"d789494cb1f691aa352419aaefc692f654477177","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 8 05:59:19 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/tracebackplus.py"],"file_stats":[{"name":"jc/tracebackplus.py","lines_changed":2}]},"message":"change type check to use isinstance","epoch":1594213159,"epoch_utc":null},{"commit":"608e7b4cff081f92177e4151ffa1a91a4a6895ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 6 10:52:12 2020 -0700","stats":{"files_changed":1,"insertions":61,"deletions":0,"files":["jc/tracebackplus.py"],"file_stats":[{"name":"jc/tracebackplus.py","lines_changed":61}]},"message":"add license info","epoch":1594057932,"epoch_utc":null},{"commit":"4ee199c02a78c2707c5d1427d7c8fae56df5671c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jul 6 10:41:01 2020 -0700","stats":{"files_changed":2,"insertions":189,"deletions":3,"files":["jc/cli.py","jc/tracebackplus.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6},{"name":"jc/tracebackplus.py","lines_changed":186}]},"message":"use tracebackplus instead of cgitb since cgitb is depricated","epoch":1594057261,"epoch_utc":null},{"commit":"fbf47d408501dadda4671fb530f5e11859e85d53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 1 13:28:58 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add arch linux","epoch":1593635338,"epoch_utc":null},{"commit":"5a238e4b4204f0552327534ef798c28d3ad4f578","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jul 1 09:11:32 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"remove updates-testing from fedora command","epoch":1593619892,"epoch_utc":null},{"commit":"f852b8246a8f9e5f7d9144fed3a0daa4eddfe035","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 11:50:37 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":3}]},"message":"wrap warning message","epoch":1593543037,"epoch_utc":null},{"commit":"88140d929a500ee78f807862c4912c399df2a460","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 11:37:33 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"wrap error message in code","epoch":1593542253,"epoch_utc":null},{"commit":"45f726824027af49c437b6e81e4700f7098af320","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 11:34:08 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add -dd to error message","epoch":1593542048,"epoch_utc":null},{"commit":"3a3c8e4d4a77135eaee5cb30c3107a4531c300ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 11:31:08 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]},"message":"move verbose_debug under debug check","epoch":1593541868,"epoch_utc":null},{"commit":"c1ac183a0472e93226c9ee1905f56c5183e3721f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 11:26:09 2020 -0700","stats":{"files_changed":1,"insertions":15,"deletions":22,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":37}]},"message":"simplify debug option","epoch":1593541569,"epoch_utc":null},{"commit":"18bb779ee5cd5821764b03173f16e922f753c64d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 09:39:05 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"formatting: double quotes to single quotes","epoch":1593535145,"epoch_utc":null},{"commit":"8b6612fe7911ab9e0bf8d29be60865d3b8aa3fd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 30 07:56:34 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"move JC_COLORS parsing error message","epoch":1593528994,"epoch_utc":null},{"commit":"fde0bc853415418e01616861ace5048770bd97f8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jun 27 18:53:19 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":34,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":43}]},"message":"improve package install info","epoch":1593309199,"epoch_utc":null},{"commit":"e661a78939ff067b8a61f08301c178dd10a344ab","merge":"b969751 847e346","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Jun 27 18:43:02 2020 -0700","message":"Merge pull request #71 from wigust/guix\n\nadd guix package info","epoch":1593308582,"epoch_utc":null},{"commit":"847e346602789bf58e3515319e9d080dfb897fc9","author":"Oleg Pykhalov","author_email":"go.wigust@gmail.com","date":"Sat Jun 27 12:58:59 2020 +0300","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"add guix package info","epoch":1593287939,"epoch_utc":null},{"commit":"b9697516887c61f08d8d7b1dc9130350e5bdba9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 26 09:53:57 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"add other references","epoch":1593190437,"epoch_utc":null},{"commit":"ad6f2ba03a293a7f55e456fa5f5b55ee3cbcd4ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 21:16:52 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1593145012,"epoch_utc":null},{"commit":"63c6a5edc0e9001b143595fd8b96f1b4a1377a3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 21:12:30 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"formatting","epoch":1593144750,"epoch_utc":null},{"commit":"9f4cf9dd5efe94adfff0961fdb73097ca27c5463","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 21:11:21 2020 -0700","stats":{"files_changed":1,"insertions":197,"deletions":67,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":264}]},"message":"formatting","epoch":1593144681,"epoch_utc":null},{"commit":"51331b6dc01eee00847fa4be549ffde365373a01","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 13:01:10 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":5}]},"message":"formatting","epoch":1593115270,"epoch_utc":null},{"commit":"efb6761033319644bf9cdae6288ff5609f6482ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 12:59:56 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1593115196,"epoch_utc":null},{"commit":"6a4f737a0f1c322bebccf69809d9816fc770c5ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 12:56:06 2020 -0700","stats":{"files_changed":1,"insertions":88,"deletions":115,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":203}]},"message":"update json syntax highlighting","epoch":1593114966,"epoch_utc":null},{"commit":"be6864b778ab721bcba5fc3221576153be7b2ed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 12:28:23 2020 -0700","stats":{"files_changed":1,"insertions":26,"deletions":26,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":52}]},"message":"add syntax highlighting tags","epoch":1593113303,"epoch_utc":null},{"commit":"de3b91a36cfcaf565b26b1da42f1e87835da4dc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 07:38:39 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add -dd option","epoch":1593095919,"epoch_utc":null},{"commit":"ef5482c3b5afa0ee8e85851bebab1c104cb59936","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 25 07:29:28 2020 -0700","stats":{"files_changed":3,"insertions":15,"deletions":7,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":17},{"name":"setup.py","lines_changed":2}]},"message":"add verbose debug option","epoch":1593095368,"epoch_utc":null},{"commit":"d20b795137036f8b889eb231cb4f14b756ec6479","merge":"69018cd 8a13406","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 11:28:23 2020 -0700","message":"Merge pull request #70 from kellyjonbrazil/dev\n\nDev v1.11.7","epoch":1592850503,"epoch_utc":null},{"commit":"8a134065dff429551449c1ea16a36d745fdab580","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 11:23:37 2020 -0700","stats":{"files_changed":12,"insertions":12,"deletions":12,"files":["tests/fixtures/centos-7.7/iptables-filter-line-numbers.json","tests/fixtures/centos-7.7/iptables-filter-nv.json","tests/fixtures/centos-7.7/iptables-filter.json","tests/fixtures/centos-7.7/iptables-mangle.json","tests/fixtures/centos-7.7/iptables-nat.json","tests/fixtures/centos-7.7/iptables-raw.json","tests/fixtures/ubuntu-18.04/iptables-filter-line-numbers.json","tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","tests/fixtures/ubuntu-18.04/iptables-filter.json","tests/fixtures/ubuntu-18.04/iptables-mangle.json","tests/fixtures/ubuntu-18.04/iptables-nat.json","tests/fixtures/ubuntu-18.04/iptables-raw.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/iptables-filter-line-numbers.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-filter-nv.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-filter.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-mangle.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-nat.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-raw.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter-line-numbers.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-mangle.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-nat.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-raw.json","lines_changed":2}]},"message":"update fixtures for last chain fix","epoch":1592850217,"epoch_utc":null},{"commit":"22aee1bfa40ed1d3c4df28cd934ef0edfc5c458c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 11:23:15 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1592850195,"epoch_utc":null},{"commit":"b282820fd67dcc96c058198f97b066e7b402d1f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 11:09:09 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":3}]},"message":"fix to include the final chain in output","epoch":1592849349,"epoch_utc":null},{"commit":"3ee098306daf903687cb0febf92773a81e216111","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 10:48:51 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":2}]},"message":"version bump","epoch":1592848131,"epoch_utc":null},{"commit":"09e8f379a64b3b37bb99b4291c10aa4a5cdedea4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 22 10:47:34 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":11,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":20}]},"message":"iptables code optimizations","epoch":1592848054,"epoch_utc":null},{"commit":"69018cdb3a77fcdcb5648e3b89933148c55a6412","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 14 17:39:14 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"fix date","epoch":1592181554,"epoch_utc":null},{"commit":"d0d7254c6acc7be4341618d231a5b166f640b287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 14 17:23:10 2020 -0700","stats":{"files_changed":2,"insertions":26,"deletions":0,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":15},{"name":"jc/utils.py","lines_changed":11}]},"message":"add docstring","epoch":1592180590,"epoch_utc":null},{"commit":"cc0f0971d76b6f3dec8d989e83f5676db8f2c6d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 14 17:17:40 2020 -0700","stats":{"files_changed":56,"insertions":476,"deletions":439,"files":["changelog.txt","jc/cli.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/utils.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":10},{"name":"jc/parsers/airport_s.py","lines_changed":4},{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/blkid.py","lines_changed":5},{"name":"jc/parsers/crontab.py","lines_changed":5},{"name":"jc/parsers/crontab_u.py","lines_changed":5},{"name":"jc/parsers/csv.py","lines_changed":5},{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":193},{"name":"jc/parsers/dmidecode.py","lines_changed":264},{"name":"jc/parsers/du.py","lines_changed":8},{"name":"jc/parsers/env.py","lines_changed":8},{"name":"jc/parsers/file.py","lines_changed":39},{"name":"jc/parsers/foo.py","lines_changed":8},{"name":"jc/parsers/free.py","lines_changed":5},{"name":"jc/parsers/fstab.py","lines_changed":5},{"name":"jc/parsers/group.py","lines_changed":5},{"name":"jc/parsers/gshadow.py","lines_changed":5},{"name":"jc/parsers/history.py","lines_changed":26},{"name":"jc/parsers/hosts.py","lines_changed":8},{"name":"jc/parsers/id.py","lines_changed":8},{"name":"jc/parsers/ifconfig.py","lines_changed":18},{"name":"jc/parsers/ini.py","lines_changed":5},{"name":"jc/parsers/iptables.py","lines_changed":44},{"name":"jc/parsers/jobs.py","lines_changed":8},{"name":"jc/parsers/last.py","lines_changed":8},{"name":"jc/parsers/ls.py","lines_changed":5},{"name":"jc/parsers/lsblk.py","lines_changed":8},{"name":"jc/parsers/lsmod.py","lines_changed":5},{"name":"jc/parsers/lsof.py","lines_changed":9},{"name":"jc/parsers/mount.py","lines_changed":9},{"name":"jc/parsers/netstat.py","lines_changed":8},{"name":"jc/parsers/ntpq.py","lines_changed":5},{"name":"jc/parsers/passwd.py","lines_changed":8},{"name":"jc/parsers/pip_list.py","lines_changed":9},{"name":"jc/parsers/pip_show.py","lines_changed":9},{"name":"jc/parsers/ps.py","lines_changed":6},{"name":"jc/parsers/route.py","lines_changed":6},{"name":"jc/parsers/shadow.py","lines_changed":8},{"name":"jc/parsers/ss.py","lines_changed":8},{"name":"jc/parsers/stat.py","lines_changed":7},{"name":"jc/parsers/systemctl.py","lines_changed":8},{"name":"jc/parsers/systemctl_lj.py","lines_changed":8},{"name":"jc/parsers/systemctl_ls.py","lines_changed":8},{"name":"jc/parsers/systemctl_luf.py","lines_changed":8},{"name":"jc/parsers/timedatectl.py","lines_changed":14},{"name":"jc/parsers/uname.py","lines_changed":6},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/w.py","lines_changed":5},{"name":"jc/parsers/who.py","lines_changed":8},{"name":"jc/parsers/xml.py","lines_changed":5},{"name":"jc/parsers/yaml.py","lines_changed":11},{"name":"jc/utils.py","lines_changed":4},{"name":"setup.py","lines_changed":2}]},"message":"Improve and standardize empty data check for all parsers","epoch":1592180260,"epoch_utc":null},{"commit":"2af61730f0f5b9bc6f1f4c5d9d808ff6ccb0faeb","merge":"07b179c 83f41b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 12 12:34:34 2020 -0700","message":"Merge pull request #68 from kellyjonbrazil/dev\n\nDev v1.11.5","epoch":1591990474,"epoch_utc":null},{"commit":"83f41b83dc01c462c6a2295e9fc56ad42a3b62f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 12 12:30:19 2020 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1591990219,"epoch_utc":null},{"commit":"1fb84fce88e0306c26a5771fa4c6dc14a21409a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 12 12:25:07 2020 -0700","stats":{"files_changed":16,"insertions":137,"deletions":67,"files":["changelog.txt","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/xml.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py","tests/test_timedatectl.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py","tests/test_who.py","tests/test_xml.py","tests/test_yaml.py"],"file_stats":[{"name":"changelog.txt","lines_changed":5},{"name":"jc/parsers/systemctl_lj.py","lines_changed":3},{"name":"jc/parsers/systemctl_ls.py","lines_changed":33},{"name":"jc/parsers/systemctl_luf.py","lines_changed":35},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/w.py","lines_changed":63},{"name":"jc/parsers/xml.py","lines_changed":6},{"name":"tests/test_systemctl_ls.py","lines_changed":6},{"name":"tests/test_systemctl_luf.py","lines_changed":6},{"name":"tests/test_timedatectl.py","lines_changed":6},{"name":"tests/test_uname.py","lines_changed":6},{"name":"tests/test_uptime.py","lines_changed":6},{"name":"tests/test_w.py","lines_changed":6},{"name":"tests/test_who.py","lines_changed":6},{"name":"tests/test_xml.py","lines_changed":6},{"name":"tests/test_yaml.py","lines_changed":6}]},"message":"fix for no data","epoch":1591989907,"epoch_utc":null},{"commit":"a8837e12447c52dbe438b19c07777b9b4a22081c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Jun 12 07:57:40 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"remove --upgrade from pip install","epoch":1591973860,"epoch_utc":null},{"commit":"04d2eec5581998d1a80e762b670af76c92111065","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 11 17:59:06 2020 -0700","stats":{"files_changed":6,"insertions":56,"deletions":30,"files":["changelog.txt","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","tests/test_stat.py","tests/test_systemctl.py","tests/test_systemctl_lj.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":33},{"name":"jc/parsers/systemctl_lj.py","lines_changed":33},{"name":"tests/test_stat.py","lines_changed":6},{"name":"tests/test_systemctl.py","lines_changed":6},{"name":"tests/test_systemctl_lj.py","lines_changed":6}]},"message":"fix for no data","epoch":1591923546,"epoch_utc":null},{"commit":"1b57ec92f052ddc8959540511512190a539262b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 11 17:52:03 2020 -0700","stats":{"files_changed":21,"insertions":152,"deletions":68,"files":["changelog.txt","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/pip_list.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","tests/fixtures/centos-7.7/ss-sudo-a.json","tests/fixtures/ubuntu-18.04/ss-sudo-a.json","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_ntpq.py","tests/test_passwd.py","tests/test_pip_list.py","tests/test_pip_show.py","tests/test_ps.py","tests/test_route.py","tests/test_shadow.py","tests/test_ss.py"],"file_stats":[{"name":"changelog.txt","lines_changed":8},{"name":"jc/parsers/mount.py","lines_changed":3},{"name":"jc/parsers/netstat.py","lines_changed":41},{"name":"jc/parsers/ntpq.py","lines_changed":35},{"name":"jc/parsers/pip_list.py","lines_changed":31},{"name":"jc/parsers/ps.py","lines_changed":9},{"name":"jc/parsers/route.py","lines_changed":9},{"name":"jc/parsers/ss.py","lines_changed":14},{"name":"tests/fixtures/centos-7.7/ss-sudo-a.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ss-sudo-a.json","lines_changed":2},{"name":"tests/test_lsof.py","lines_changed":6},{"name":"tests/test_mount.py","lines_changed":6},{"name":"tests/test_netstat.py","lines_changed":6},{"name":"tests/test_ntpq.py","lines_changed":6},{"name":"tests/test_passwd.py","lines_changed":6},{"name":"tests/test_pip_list.py","lines_changed":6},{"name":"tests/test_pip_show.py","lines_changed":6},{"name":"tests/test_ps.py","lines_changed":6},{"name":"tests/test_route.py","lines_changed":6},{"name":"tests/test_shadow.py","lines_changed":6},{"name":"tests/test_ss.py","lines_changed":6}]},"message":"fix for no data","epoch":1591923123,"epoch_utc":null},{"commit":"4d8859540417e99e273fda2cea959240f3c37ea3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 11 17:16:11 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":2}]},"message":"enhance empty data check","epoch":1591920971,"epoch_utc":null},{"commit":"52b1272a3aab09b5a8c4a277fbf9975a1b8b6921","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 11 17:13:45 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":2}]},"message":"enhance empty data check","epoch":1591920825,"epoch_utc":null},{"commit":"d2ccad6a83138fbf6eb863634fd354dc6c3fa238","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Jun 11 17:09:51 2020 -0700","stats":{"files_changed":4,"insertions":33,"deletions":15,"files":["jc/parsers/lsblk.py","jc/parsers/lsmod.py","tests/test_lsblk.py","tests/test_lsmod.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":21},{"name":"jc/parsers/lsmod.py","lines_changed":15},{"name":"tests/test_lsblk.py","lines_changed":6},{"name":"tests/test_lsmod.py","lines_changed":6}]},"message":"fix for no data","epoch":1591920591,"epoch_utc":null},{"commit":"cad6dde4ac66cf970a7f52d8e7958ea35c083629","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:54:06 2020 -0700","stats":{"files_changed":10,"insertions":60,"deletions":0,"files":["tests/test_group.py","tests/test_gshadow.py","tests/test_history.py","tests/test_hosts.py","tests/test_id.py","tests/test_ifconfig.py","tests/test_ini.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_last.py"],"file_stats":[{"name":"tests/test_group.py","lines_changed":6},{"name":"tests/test_gshadow.py","lines_changed":6},{"name":"tests/test_history.py","lines_changed":6},{"name":"tests/test_hosts.py","lines_changed":6},{"name":"tests/test_id.py","lines_changed":6},{"name":"tests/test_ifconfig.py","lines_changed":6},{"name":"tests/test_ini.py","lines_changed":6},{"name":"tests/test_iptables.py","lines_changed":6},{"name":"tests/test_jobs.py","lines_changed":6},{"name":"tests/test_last.py","lines_changed":6}]},"message":"fix for no data","epoch":1591836846,"epoch_utc":null},{"commit":"06811c3539b0d871e13e9b8d3b51f731d06fd2ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:41:54 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_fstab.py"],"file_stats":[{"name":"tests/test_fstab.py","lines_changed":6}]},"message":"add test for no data","epoch":1591836114,"epoch_utc":null},{"commit":"0cb23c2b21f464082609409261de8e95eb1b0d55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:40:18 2020 -0700","stats":{"files_changed":3,"insertions":17,"deletions":7,"files":["changelog.txt","jc/parsers/free.py","tests/test_free.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/free.py","lines_changed":17},{"name":"tests/test_free.py","lines_changed":6}]},"message":"add fix for no data","epoch":1591836018,"epoch_utc":null},{"commit":"ac4688dca22334385ec2c87027f2f14f9ca93ce4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:35:40 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_file.py"],"file_stats":[{"name":"tests/test_file.py","lines_changed":6}]},"message":"add test for no data","epoch":1591835740,"epoch_utc":null},{"commit":"326c3b4670a0e47cbe2988b38fb1c1b26a4db890","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:34:22 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_env.py"],"file_stats":[{"name":"tests/test_env.py","lines_changed":6}]},"message":"add test for no data","epoch":1591835662,"epoch_utc":null},{"commit":"9b29d0c2688eda2e4707aeba693ed14fa433a706","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:32:39 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_du.py"],"file_stats":[{"name":"tests/test_du.py","lines_changed":6}]},"message":"add test for no data","epoch":1591835559,"epoch_utc":null},{"commit":"e0013c38710b4ecf3a588a16d1d908effc23b485","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:31:14 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["tests/test_dmidecode.py"],"file_stats":[{"name":"tests/test_dmidecode.py","lines_changed":5}]},"message":"add test for no data","epoch":1591835474,"epoch_utc":null},{"commit":"a75744075b0628bdb711d8a929a759b4b4067edb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:29:41 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_dig.py"],"file_stats":[{"name":"tests/test_dig.py","lines_changed":6}]},"message":"add no data test","epoch":1591835381,"epoch_utc":null},{"commit":"525aec1a02380f17ab7827434616f981f7457bd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:27:46 2020 -0700","stats":{"files_changed":3,"insertions":16,"deletions":7,"files":["changelog.txt","jc/parsers/df.py","tests/test_df.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":16},{"name":"tests/test_df.py","lines_changed":6}]},"message":"fix for no data","epoch":1591835266,"epoch_utc":null},{"commit":"0bf9a7a072a80e10a29c6bb3943b107352dc1d45","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:22:59 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_csv.py"],"file_stats":[{"name":"tests/test_csv.py","lines_changed":6}]},"message":"add test for no data","epoch":1591834979,"epoch_utc":null},{"commit":"d8f2f4c95bc699386b9fe93d10e13637875a1dcf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:20:09 2020 -0700","stats":{"files_changed":5,"insertions":96,"deletions":80,"files":["changelog.txt","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/test_crontab.py","tests/test_crontab_u.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":79},{"name":"jc/parsers/crontab_u.py","lines_changed":83},{"name":"tests/test_crontab.py","lines_changed":6},{"name":"tests/test_crontab_u.py","lines_changed":6}]},"message":"fix for no data","epoch":1591834809,"epoch_utc":null},{"commit":"35d733b44f3705bed3dd8ce340379470f199f772","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 17:10:53 2020 -0700","stats":{"files_changed":5,"insertions":70,"deletions":60,"files":["changelog.txt","jc/parsers/arp.py","jc/parsers/blkid.py","tests/test_arp.py","tests/test_blkid.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":112},{"name":"jc/parsers/blkid.py","lines_changed":4},{"name":"tests/test_arp.py","lines_changed":6},{"name":"tests/test_blkid.py","lines_changed":6}]},"message":"fix for no data","epoch":1591834253,"epoch_utc":null},{"commit":"9179b4175c5063bed14ecb96ba24c517920c0d94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 16:40:11 2020 -0700","stats":{"files_changed":3,"insertions":16,"deletions":0,"files":["changelog.txt","tests/test_airport.py","tests/test_airport_s.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"tests/test_airport.py","lines_changed":6},{"name":"tests/test_airport_s.py","lines_changed":6}]},"message":"add nodata tests","epoch":1591832411,"epoch_utc":null},{"commit":"bb07d78c78ff5c5b2ee4d2086ffc6dd5ebedf0fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 16:39:49 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":8,"files":["jc/parsers/airport_s.py"],"file_stats":[{"name":"jc/parsers/airport_s.py","lines_changed":18}]},"message":"add nodata fix","epoch":1591832389,"epoch_utc":null},{"commit":"07b179cd7f8853ff6aca0b27a703e198c158ca72","merge":"12a80e7 054422d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 06:07:42 2020 -0700","message":"Merge pull request #67 from kellyjonbrazil/Dev\n\nDev v1.11.4","epoch":1591794462,"epoch_utc":null},{"commit":"054422d8373e7b8def18ddabd447062cb9cc3137","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 06:04:50 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_ls.py"],"file_stats":[{"name":"tests/test_ls.py","lines_changed":6}]},"message":"add test for empty directory","epoch":1591794290,"epoch_utc":null},{"commit":"3e052d18102e98a09cbba21866855691eaccc216","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 05:53:20 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1591793600,"epoch_utc":null},{"commit":"c8e72805cf9def478b56c925f4afcc0ece1daac0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Jun 10 05:51:12 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":10,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":19}]},"message":"fix error on empty directory","epoch":1591793472,"epoch_utc":null},{"commit":"12a80e7db0f6c7d536674ad8d34e26bba9a1f1f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 9 15:13:53 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":12}]},"message":"add fedora package info","epoch":1591740833,"epoch_utc":null},{"commit":"ee7ff9a09d3373f60ae1645376ccc0057803147e","merge":"346a14c f6478fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 9 11:22:39 2020 -0700","message":"Merge pull request #66 from kellyjonbrazil/dev\n\nDev v1.11.3","epoch":1591726959,"epoch_utc":null},{"commit":"f6478fb636ead8d1e53e4a88d59e55222df37a8f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Jun 9 11:18:47 2020 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1591726727,"epoch_utc":null},{"commit":"811a0b0495819925199d70db266066197cc6824e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 8 10:54:42 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add info regarding the local parser plugin files","epoch":1591638882,"epoch_utc":null},{"commit":"aeb48edf727f23cc4f8fd9b760cfb69f03098278","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 8 10:48:58 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"use $LOCALAPPDATA variable for windows","epoch":1591638538,"epoch_utc":null},{"commit":"b1e94f0df7041bcae97455508f423178aef9d61d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 8 10:44:09 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"heading formatting","epoch":1591638249,"epoch_utc":null},{"commit":"60050e3c0fe34980f7db5b8bd46430f953f0c3a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Jun 8 10:42:45 2020 -0700","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":26}]},"message":"fix linux/unix directory and add note about the XDG specification followed","epoch":1591638165,"epoch_utc":null},{"commit":"39ef09aa5b0d43b5128299511afe80336aa38203","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 13:30:22 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add local parser plugin feature","epoch":1591561822,"epoch_utc":null},{"commit":"8377d4311611c242e16eaebe66dafac9529150d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 13:26:03 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1591561563,"epoch_utc":null},{"commit":"54e4c447ab34ae54c73c92df40f1b4ca6ffb2277","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:52:16 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":10}]},"message":"clean up formatting","epoch":1591559536,"epoch_utc":null},{"commit":"937a9fa9cf2ede8e686ba853989f33e4a483a0ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:41:50 2020 -0700","stats":{"files_changed":4,"insertions":613,"deletions":3,"files":["jc/appdirs.py","jc/cli.py","requirements.txt","setup.py"],"file_stats":[{"name":"jc/appdirs.py","lines_changed":611},{"name":"jc/cli.py","lines_changed":3},{"name":"requirements.txt","lines_changed":1},{"name":"setup.py","lines_changed":1}]},"message":"vendorize appdirs module","epoch":1591558910,"epoch_utc":null},{"commit":"808ff6cf0e784cf0c2d523ff2e01197cb6e88c82","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:29:10 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":12}]},"message":"more acknowledgments updates","epoch":1591558150,"epoch_utc":null},{"commit":"7f5c649a95a871c3cd8d48731a6d26dcba6f725b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:23:28 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update acknowledgments","epoch":1591557808,"epoch_utc":null},{"commit":"b72727dec995de1ca5f68ee17a710b086c87d612","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:13:40 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":11}]},"message":"update custom parsers info","epoch":1591557220,"epoch_utc":null},{"commit":"3fc88bfb334143b68a9cb78d4034f33e7c0bcf76","merge":"346a14c 9f2279d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Jun 7 12:04:44 2020 -0700","message":"Merge pull request #65 from duelafn/local-parsers\n\nLoad custom parsers from /jc/jcparsers","epoch":1591556684,"epoch_utc":null},{"commit":"9f2279d5867eb89d4b4b7b4ffca290166ec97c48","author":"Dean Serenevy","author_email":"dean@serenevy.net","date":"Sat Jun 6 14:30:40 2020 -0400","stats":{"files_changed":4,"insertions":29,"deletions":2,"files":["README.md","jc/cli.py","requirements.txt","setup.py"],"file_stats":[{"name":"README.md","lines_changed":7},{"name":"jc/cli.py","lines_changed":22},{"name":"requirements.txt","lines_changed":1},{"name":"setup.py","lines_changed":1}]},"message":"Load custom parsers from /jc/jcparsers","epoch":1591479040,"epoch_utc":null},{"commit":"346a14cb9bb0d762fc3fa366ad97e5ff85f3992a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:44:14 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"change osx_device to unix_device","epoch":1590896654,"epoch_utc":null},{"commit":"dac00d17ff9f3d2bb959697b6e567015bfc2702b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:33:50 2020 -0700","stats":{"files_changed":3,"insertions":17,"deletions":0,"files":["tests/fixtures/nixos/route-ee.json","tests/fixtures/nixos/route-ee.out","tests/test_route.py"],"file_stats":[{"name":"tests/fixtures/nixos/route-ee.json","lines_changed":1},{"name":"tests/fixtures/nixos/route-ee.out","lines_changed":4},{"name":"tests/test_route.py","lines_changed":12}]},"message":"add nixos test","epoch":1590896030,"epoch_utc":null},{"commit":"9ca7cd40601b97829e8f88071fdfb928d939f7e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:33:39 2020 -0700","stats":{"files_changed":1,"insertions":17,"deletions":34,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":51}]},"message":"update docs","epoch":1590896019,"epoch_utc":null},{"commit":"aa31628970b12295a41dff20e829fcce9f8a4d07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:33:00 2020 -0700","stats":{"files_changed":5,"insertions":70,"deletions":63,"files":["README.md","docs/parsers/netstat.md","docs/parsers/route.md","docs/parsers/stat.md","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":46},{"name":"docs/parsers/netstat.md","lines_changed":16},{"name":"docs/parsers/route.md","lines_changed":51},{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":16}]},"message":"update docs","epoch":1590895980,"epoch_utc":null},{"commit":"bed694fcf5c8c31bbd4f3e88759fe7ab82382d24","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:13:21 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1590894801,"epoch_utc":null},{"commit":"4b4af69fa184896ec15b5be7dc8416f36f921d5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:12:51 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"fix date","epoch":1590894771,"epoch_utc":null},{"commit":"9d96190a5b19e8d71c3ac66eb0303d269dd4ce5d","merge":"96df396 fa44d48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 20:08:32 2020 -0700","message":"Merge pull request #64 from kellyjonbrazil/dev\n\nDev v1.11.2","epoch":1590894512,"epoch_utc":null},{"commit":"fa44d48c094a55e499c2c780d109bf277736b42e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 19:50:38 2020 -0700","stats":{"files_changed":6,"insertions":129,"deletions":7,"files":["changelog.txt","jc/parsers/stat.py","tests/fixtures/freebsd12/stat.json","tests/fixtures/freebsd12/stat.out","tests/fixtures/osx-10.14.6/stat.json","tests/test_stat.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":12},{"name":"tests/fixtures/freebsd12/stat.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/stat.out","lines_changed":107},{"name":"tests/fixtures/osx-10.14.6/stat.json","lines_changed":2},{"name":"tests/test_stat.py","lines_changed":12}]},"message":"freebsd fixes, tests, and fixtures","epoch":1590893438,"epoch_utc":null},{"commit":"4ef961c2788c935b1fea1c9777b976e7b89e7367","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 19:18:01 2020 -0700","stats":{"files_changed":3,"insertions":20,"deletions":0,"files":["tests/fixtures/freebsd12/ntpq-p.json","tests/fixtures/freebsd12/ntpq-p.out","tests/test_ntpq.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/ntpq-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ntpq-p.out","lines_changed":7},{"name":"tests/test_ntpq.py","lines_changed":12}]},"message":"add freebsd test and fixtures","epoch":1590891481,"epoch_utc":null},{"commit":"292a837d5c47165ccb155f079b0a114b5c17a98e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 18:54:09 2020 -0700","stats":{"files_changed":3,"insertions":22,"deletions":0,"files":["tests/fixtures/freebsd12/last.json","tests/fixtures/freebsd12/last.out","tests/test_last.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/last.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/last.out","lines_changed":9},{"name":"tests/test_last.py","lines_changed":12}]},"message":"add tests and fixtures for freebsd12","epoch":1590890049,"epoch_utc":null},{"commit":"aa7b915d847dbd29d2c09b2cc40b847e37174ffb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 18:53:46 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":2}]},"message":"version bump","epoch":1590890026,"epoch_utc":null},{"commit":"c46fe73236b912d2ee89dfb36ff259fe95fd0479","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 18:53:35 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"add last fixes for freebsd","epoch":1590890015,"epoch_utc":null},{"commit":"039b2c129cbe79d2d23b1194b043d8b730609956","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 18:42:26 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":1,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":11}]},"message":"freebsd fixes","epoch":1590889346,"epoch_utc":null},{"commit":"8f2e5e4808b30c658a4cb87125639e4d7d6c15d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 17:46:09 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"fix compatible logic","epoch":1590885969,"epoch_utc":null},{"commit":"c4da8e4f78e6b4aaa4aff76ae042be9aaec832a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 17:05:41 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":12}]},"message":"add nixos and freebsd to tested. update new arp fields","epoch":1590883541,"epoch_utc":null},{"commit":"bcab9078a4c2bfd6ae4dca9448b577d9ed0fc01c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 17:02:09 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"add w parser fix","epoch":1590883329,"epoch_utc":null},{"commit":"b3c6c1ea925bf7cd76368f5074fb8af52a844522","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 17:01:59 2020 -0700","stats":{"files_changed":4,"insertions":29,"deletions":5,"files":["jc/parsers/w.py","tests/fixtures/nixos/w.json","tests/fixtures/nixos/w.out","tests/test_w.py"],"file_stats":[{"name":"jc/parsers/w.py","lines_changed":8},{"name":"tests/fixtures/nixos/w.json","lines_changed":1},{"name":"tests/fixtures/nixos/w.out","lines_changed":5},{"name":"tests/test_w.py","lines_changed":20}]},"message":"strip whitespace in string fields and add tests","epoch":1590883319,"epoch_utc":null},{"commit":"a3af8662bd491e344c93d24afabd23e90efd8086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 16:26:07 2020 -0700","stats":{"files_changed":3,"insertions":205,"deletions":3,"files":["tests/fixtures/osx-10.11.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a2.json"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/arp-a.json","lines_changed":107},{"name":"tests/fixtures/osx-10.14.6/arp-a.json","lines_changed":99},{"name":"tests/fixtures/osx-10.14.6/arp-a2.json","lines_changed":2}]},"message":"add permanent field","epoch":1590881167,"epoch_utc":null},{"commit":"35940d0bc80bf61b11f40b1e1043835f26eb391c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 16:25:53 2020 -0700","stats":{"files_changed":6,"insertions":59,"deletions":4,"files":["changelog.txt","docs/parsers/arp.md","jc/parsers/arp.py","tests/fixtures/freebsd12/arp-a.json","tests/fixtures/freebsd12/arp-a.out","tests/test_arp.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":12},{"name":"jc/parsers/arp.py","lines_changed":33},{"name":"tests/fixtures/freebsd12/arp-a.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/arp-a.out","lines_changed":3},{"name":"tests/test_arp.py","lines_changed":12}]},"message":"add freebsd permanent and expires fields","epoch":1590881153,"epoch_utc":null},{"commit":"26994cdcb7148d2c9d1701bca9541d247356260b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:51:54 2020 -0700","stats":{"files_changed":8,"insertions":115,"deletions":85,"files":["docs/parsers/df.md","docs/parsers/fstab.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/route.md","docs/parsers/stat.md","docs/parsers/uname.md"],"file_stats":[{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":163},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":25},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2}]},"message":"add freebsd compatibility info","epoch":1590879114,"epoch_utc":null},{"commit":"017159a829691cb6a7174f123d024eb252179b75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:51:06 2020 -0700","stats":{"files_changed":15,"insertions":221,"deletions":0,"files":["tests/fixtures/freebsd12/netstat-Aa.json","tests/fixtures/freebsd12/netstat-AaT.json","tests/fixtures/freebsd12/netstat-AaT.out","tests/fixtures/freebsd12/netstat-AanP.json","tests/fixtures/freebsd12/netstat-AanP.out","tests/fixtures/freebsd12/netstat-Aax.json","tests/fixtures/freebsd12/netstat-Aax.out","tests/fixtures/freebsd12/netstat-aT.json","tests/fixtures/freebsd12/netstat-aT.out","tests/fixtures/freebsd12/netstat-an.json","tests/fixtures/freebsd12/netstat-i.json","tests/fixtures/freebsd12/netstat-ib.json","tests/fixtures/freebsd12/netstat-ib.out","tests/fixtures/freebsd12/netstat-r.json","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/netstat-Aa.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-AaT.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-AaT.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-AanP.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-AanP.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-Aax.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-Aax.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-aT.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-aT.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-an.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-i.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-ib.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-ib.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/netstat-r.json","lines_changed":1},{"name":"tests/test_netstat.py","lines_changed":108}]},"message":"add freebsd nestat tests and fixtures","epoch":1590879066,"epoch_utc":null},{"commit":"b4e9c85e08d199dad67f03c7603194278a022696","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:50:45 2020 -0700","stats":{"files_changed":1,"insertions":12,"deletions":0,"files":["jc/parsers/netstat_freebsd_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_freebsd_osx.py","lines_changed":12}]},"message":"fixup -T freebsd output and add whitespace stripping to parse_post","epoch":1590879045,"epoch_utc":null},{"commit":"189146cd84cfad262f2b2601bb0cb4b9dde2587e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:50:07 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":10}]},"message":"add more ints. remove whitespace strip code and move to freebsd_osx module","epoch":1590879007,"epoch_utc":null},{"commit":"af34153ffab10ca1ad7f44736d379d91ae43c813","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:48:56 2020 -0700","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["changelog.txt","jc/cli.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2}]},"message":"version bump","epoch":1590878936,"epoch_utc":null},{"commit":"bf2ff3ffbb639446779b1f04f2997707d99c0a1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 30 15:48:29 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":9}]},"message":"fix compatibility search for platform names that append the version number (e.g. freebsd12)","epoch":1590878909,"epoch_utc":null},{"commit":"6423c9efd69e938af38934a97ca6b65009e8f07e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 15:48:51 2020 -0700","stats":{"files_changed":1,"insertions":34,"deletions":5,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":39}]},"message":"integer and float updates","epoch":1590792531,"epoch_utc":null},{"commit":"58ab0d4ece7f006ce9431afb9e0fecbe60930be7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 15:14:44 2020 -0700","stats":{"files_changed":4,"insertions":12,"deletions":4,"files":["changelog.txt","jc/parsers/netstat.py","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":11},{"name":"tests/fixtures/osx-10.14.6/netstat-An.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat.json","lines_changed":2}]},"message":"strip whitespace from string fields","epoch":1590790484,"epoch_utc":null},{"commit":"83a738bf4d756036d6269b9153220d7f1018ac9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 14:16:11 2020 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/netstat-Abn.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-An.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat.json","lines_changed":2}]},"message":"update fixtures for osx_flags and osx_inode name change to unix_flags and unix_inode","epoch":1590786971,"epoch_utc":null},{"commit":"3640671fc6a67c9628fd47e19e9fe0a0738439ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 14:15:28 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/{netstat_osx.py => netstat_freebsd_osx.py}"],"file_stats":[{"name":"jc/parsers/{netstat_osx.py => netstat_freebsd_osx.py}","lines_changed":10}]},"message":"rename module","epoch":1590786928,"epoch_utc":null},{"commit":"1da623b30ef6f9b12ac231518d2d4e7dadcf717b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 14:14:48 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":9}]},"message":"add items","epoch":1590786888,"epoch_utc":null},{"commit":"b10ca64646e93d9797182ea046f4956a17b37627","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 14:14:37 2020 -0700","stats":{"files_changed":1,"insertions":71,"deletions":71,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":142}]},"message":"change osx_inode and osx_flags to unix_inode and unix_flags. Also rename netstat_osx module to netstat_freebsd_osx","epoch":1590786877,"epoch_utc":null},{"commit":"2128763ee67a07da6ebf123abeec39794bc1f4e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 13:25:19 2020 -0700","stats":{"files_changed":1,"insertions":12,"deletions":12,"files":["tests/test_netstat.py"],"file_stats":[{"name":"tests/test_netstat.py","lines_changed":24}]},"message":"fix osx version from 16.4 to 14.6","epoch":1590783919,"epoch_utc":null},{"commit":"a27e7ed39c63c04cfa78caceaada42f7a9496a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 13:24:52 2020 -0700","stats":{"files_changed":12,"insertions":12,"deletions":12,"files":["tests/fixtures/centos-7.7/netstat-r.json","tests/fixtures/centos-7.7/netstat-rne.json","tests/fixtures/centos-7.7/netstat-rnee.json","tests/fixtures/centos-7.7/route-vn.json","tests/fixtures/centos-7.7/route.json","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-rnl.json","tests/fixtures/ubuntu-18.04/netstat-r.json","tests/fixtures/ubuntu-18.04/netstat-rne.json","tests/fixtures/ubuntu-18.04/netstat-rnee.json","tests/fixtures/ubuntu-18.04/route-vn.json","tests/fixtures/ubuntu-18.04/route.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/netstat-r.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/netstat-rne.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/netstat-rnee.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/route-vn.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/route.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-r.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-rnl.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/netstat-r.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/netstat-rne.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/netstat-rnee.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/route-vn.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/route.json","lines_changed":2}]},"message":"test updates for added route_flags_pretty and flags_pretty fields","epoch":1590783892,"epoch_utc":null},{"commit":"f07b7eaa474eb87dbdbc7fbe41b9386feff7bee2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 12:55:16 2020 -0700","stats":{"files_changed":1,"insertions":38,"deletions":12,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":50}]},"message":"add flags_pretty","epoch":1590782116,"epoch_utc":null},{"commit":"6ce18de84ce16a926f9cd97c3210ef209c3352da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 12:51:04 2020 -0700","stats":{"files_changed":3,"insertions":130,"deletions":69,"files":["jc/parsers/netstat.py","jc/parsers/netstat_linux.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":139},{"name":"jc/parsers/netstat_linux.py","lines_changed":23},{"name":"jc/parsers/netstat_osx.py","lines_changed":37}]},"message":"add route_flags_pretty","epoch":1590781864,"epoch_utc":null},{"commit":"8631b756e7ab8cd71c2a3eb288e2d1823cec5782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 12:05:46 2020 -0700","stats":{"files_changed":4,"insertions":76,"deletions":0,"files":["tests/fixtures/freebsd12/netstat-Aa.out","tests/fixtures/freebsd12/netstat-an.out","tests/fixtures/freebsd12/netstat-i.out","tests/fixtures/freebsd12/netstat-r.out"],"file_stats":[{"name":"tests/fixtures/freebsd12/netstat-Aa.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-an.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-i.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/netstat-r.out","lines_changed":20}]},"message":"add freebsd test files","epoch":1590779146,"epoch_utc":null},{"commit":"7414d984125300164a5b6156d7a80128d4d6cb15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 12:05:34 2020 -0700","stats":{"files_changed":6,"insertions":18,"deletions":18,"files":["jc/parsers/df.py","jc/parsers/fstab.py","jc/parsers/mount.py","jc/parsers/ntpq.py","jc/parsers/stat.py","jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":6},{"name":"jc/parsers/fstab.py","lines_changed":6},{"name":"jc/parsers/mount.py","lines_changed":6},{"name":"jc/parsers/ntpq.py","lines_changed":6},{"name":"jc/parsers/stat.py","lines_changed":6},{"name":"jc/parsers/uname.py","lines_changed":6}]},"message":"add freebsd compatibility","epoch":1590779134,"epoch_utc":null},{"commit":"d7b19892e8fb11e17fcbadcdbb08d49897d7754f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 12:04:58 2020 -0700","stats":{"files_changed":2,"insertions":10,"deletions":7,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":13},{"name":"jc/parsers/netstat_osx.py","lines_changed":4}]},"message":"add freebsd support for netstat -i","epoch":1590779098,"epoch_utc":null},{"commit":"96df396eaf4e030113005a95e525d644c394dfe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 29 07:35:25 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1590762925,"epoch_utc":null},{"commit":"2f6f640317da5af894f34f187c4243ef0c599d07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 27 17:11:20 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"spelling","epoch":1590624680,"epoch_utc":null},{"commit":"c4a0a50f3a3ac5833ab5d2f8a0cb3f18da335812","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 27 17:08:54 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"add nix-env","epoch":1590624534,"epoch_utc":null},{"commit":"658f8a3842273cea049689b3aea15d89a7294b24","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 27 14:58:16 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":13}]},"message":"add zypper and ports info","epoch":1590616696,"epoch_utc":null},{"commit":"bfb876a1e394ff63c6773965ba0b65da4e109c1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 27 09:52:13 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"formatting","epoch":1590598333,"epoch_utc":null},{"commit":"90c34b1f4ee2d9ec8125346bb90b227f76ada2ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 26 17:31:56 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"fix dmidecode example","epoch":1590539516,"epoch_utc":null},{"commit":"3f9164ea77ec41e1b0671d0a642900d8e36faf9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 23 21:11:17 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"bold formatting","epoch":1590293477,"epoch_utc":null},{"commit":"7fd6fecbf5a08b1f13aa7e906e94be9bc126780a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 23 21:09:49 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1590293389,"epoch_utc":null},{"commit":"8029f72363a4d19938df07603f03a0147f6246a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 23 21:09:40 2020 -0700","stats":{"files_changed":6,"insertions":10,"deletions":7,"files":["changelog.txt","docs/parsers/stat.md","jc/cli.py","jc/parsers/stat.py","setup.py","tests/fixtures/osx-10.14.6/stat.json"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":6},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/stat.json","lines_changed":2}]},"message":"change osx_flags from integer to string","epoch":1590293380,"epoch_utc":null},{"commit":"c7fdce5d3b7566a7d290627767c47d9c196e02ad","merge":"f5627a4 84f48aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 16:37:50 2020 -0700","message":"Merge pull request #62 from kellyjonbrazil/dev\n\nDev v1.11.0","epoch":1590190670,"epoch_utc":null},{"commit":"84f48aa369a458f534523ecc1e3aaaf403d06f1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 16:30:22 2020 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1590190222,"epoch_utc":null},{"commit":"2e9a0a9c1221dd01bd683ecbc4871d03738da671","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 16:21:55 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]},"message":"add features","epoch":1590189715,"epoch_utc":null},{"commit":"c1f6f2b9508e558ab88b4a0a61e93a6cf5460bea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 16:21:40 2020 -0700","stats":{"files_changed":5,"insertions":116,"deletions":4,"files":["docs/parsers/stat.md","jc/parsers/stat.py","tests/fixtures/osx-10.14.6/stat.json","tests/fixtures/osx-10.14.6/stat.out","tests/test_stat.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":8},{"name":"jc/parsers/stat.py","lines_changed":5},{"name":"tests/fixtures/osx-10.14.6/stat.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/stat.out","lines_changed":94},{"name":"tests/test_stat.py","lines_changed":12}]},"message":"osx fixes and tests","epoch":1590189700,"epoch_utc":null},{"commit":"ede21bca13c4b46899721f01d979c8b063f861a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 16:05:04 2020 -0700","stats":{"files_changed":1,"insertions":110,"deletions":78,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":188}]},"message":"add OSX support for stat","epoch":1590188704,"epoch_utc":null},{"commit":"8dd9a9f9cbc70a19176f909f6ac76b2bcf670736","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 15:12:10 2020 -0700","stats":{"files_changed":5,"insertions":45,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-i.json","tests/fixtures/osx-10.14.6/netstat-i.json","tests/fixtures/ubuntu-18.04/netstat-i.json","tests/fixtures/ubuntu-18.04/netstat-i.out","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/netstat-i.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-i.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-i.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-i.out","lines_changed":4},{"name":"tests/test_netstat.py","lines_changed":38}]},"message":"add netstat -i tests","epoch":1590185530,"epoch_utc":null},{"commit":"04f92cd1330759e4bad1c0304b9e1c28e8d32d59","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 14:04:11 2020 -0700","stats":{"files_changed":5,"insertions":166,"deletions":4,"files":["README.md","docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_linux.py","tests/fixtures/centos-7.7/netstat-i.out"],"file_stats":[{"name":"README.md","lines_changed":32},{"name":"docs/parsers/netstat.md","lines_changed":50},{"name":"jc/parsers/netstat.py","lines_changed":44},{"name":"jc/parsers/netstat_linux.py","lines_changed":39},{"name":"tests/fixtures/centos-7.7/netstat-i.out","lines_changed":5}]},"message":"add linux support for netstat -i","epoch":1590181451,"epoch_utc":null},{"commit":"8be8d2393b276a9249e1c573ce19cf630f0942fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 13:38:25 2020 -0700","stats":{"files_changed":3,"insertions":99,"deletions":3,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-i.out"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":19},{"name":"jc/parsers/netstat_osx.py","lines_changed":40},{"name":"tests/fixtures/osx-10.14.6/netstat-i.out","lines_changed":43}]},"message":"add netstat -i support for OSX","epoch":1590179905,"epoch_utc":null},{"commit":"0a879681be68fe2e6e5c013ab0fe18de99b04f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 12:56:27 2020 -0700","stats":{"files_changed":3,"insertions":97,"deletions":282,"files":["README.md","docs/parsers/netstat.md","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":37},{"name":"docs/parsers/netstat.md","lines_changed":171},{"name":"jc/parsers/netstat.py","lines_changed":171}]},"message":"add netstat -r to docs","epoch":1590177387,"epoch_utc":null},{"commit":"2ca1587a49511899bf719e0b0c7de32158fc491d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 12:44:51 2020 -0700","stats":{"files_changed":10,"insertions":102,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-r.json","tests/fixtures/centos-7.7/netstat-rne.json","tests/fixtures/centos-7.7/netstat-rnee.json","tests/fixtures/ubuntu-18.04/netstat-r.json","tests/fixtures/ubuntu-18.04/netstat-r.out","tests/fixtures/ubuntu-18.04/netstat-rne.json","tests/fixtures/ubuntu-18.04/netstat-rne.out","tests/fixtures/ubuntu-18.04/netstat-rnee.json","tests/fixtures/ubuntu-18.04/netstat-rnee.out","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/netstat-r.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-rne.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-rnee.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-r.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-r.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/netstat-rne.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-rne.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/netstat-rnee.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-rnee.out","lines_changed":5},{"name":"tests/test_netstat.py","lines_changed":81}]},"message":"add linux netstat -r tests","epoch":1590176691,"epoch_utc":null},{"commit":"ec2cd2d708a57c0458657416bedcb4340cb40901","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 12:00:26 2020 -0700","stats":{"files_changed":9,"insertions":70,"deletions":11,"files":["docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_linux.py","jc/parsers/netstat_osx.py","tests/fixtures/centos-7.7/netstat-r.out","tests/fixtures/centos-7.7/netstat-rne.out","tests/fixtures/centos-7.7/netstat-rnee.out","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-rnl.json"],"file_stats":[{"name":"docs/parsers/netstat.md","lines_changed":11},{"name":"jc/parsers/netstat.py","lines_changed":13},{"name":"jc/parsers/netstat_linux.py","lines_changed":37},{"name":"jc/parsers/netstat_osx.py","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-r.out","lines_changed":5},{"name":"tests/fixtures/centos-7.7/netstat-rne.out","lines_changed":5},{"name":"tests/fixtures/centos-7.7/netstat-rnee.out","lines_changed":5},{"name":"tests/fixtures/osx-10.14.6/netstat-r.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-rnl.json","lines_changed":2}]},"message":"add netstat -r support for linux","epoch":1590174026,"epoch_utc":null},{"commit":"5d0dbece9317e84a47d9f4b2d18a9ffa33fbee6e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 11:09:41 2020 -0700","stats":{"files_changed":8,"insertions":288,"deletions":5,"files":["docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-r.out","tests/fixtures/osx-10.14.6/netstat-rnl.json","tests/fixtures/osx-10.14.6/netstat-rnl.out","tests/test_netstat.py"],"file_stats":[{"name":"docs/parsers/netstat.md","lines_changed":17},{"name":"jc/parsers/netstat.py","lines_changed":23},{"name":"jc/parsers/netstat_osx.py","lines_changed":37},{"name":"tests/fixtures/osx-10.14.6/netstat-r.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-r.out","lines_changed":93},{"name":"tests/fixtures/osx-10.14.6/netstat-rnl.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-rnl.out","lines_changed":96},{"name":"tests/test_netstat.py","lines_changed":25}]},"message":"add netstat -r functionality for OSX","epoch":1590170981,"epoch_utc":null},{"commit":"df1e4b414b2bda5be3153767cd854b2483ba600b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 08:00:18 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":[".gitignore"],"file_stats":[{"name":".gitignore","lines_changed":1}]},"message":"remove unused folder","epoch":1590159618,"epoch_utc":null},{"commit":"40760991e7dae43cd15134310f7bbb5ce0f58dae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 07:51:47 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["LICENSE.md"],"file_stats":[{"name":"LICENSE.md","lines_changed":2}]},"message":"update copyright date","epoch":1590159107,"epoch_utc":null},{"commit":"464f5f86cf2c8fe6a1a857b0ad4d221a3edf3d88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 22 07:50:22 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"update description","epoch":1590159022,"epoch_utc":null},{"commit":"7b09e9fccdd4f09218a500b54c898ada1b9843c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 21 17:01:17 2020 -0700","stats":{"files_changed":5,"insertions":8,"deletions":5,"files":["docs/parsers/dmidecode.md","jc/parsers/dmidecode.py","tests/fixtures/centos-7.7/dmidecode.json","tests/fixtures/fedora32/dmidecode.json","tests/fixtures/ubuntu-18.04/dmidecode.json"],"file_stats":[{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":5},{"name":"tests/fixtures/centos-7.7/dmidecode.json","lines_changed":2},{"name":"tests/fixtures/fedora32/dmidecode.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dmidecode.json","lines_changed":2}]},"message":"set empty values to Null and update fixtures","epoch":1590105677,"epoch_utc":null},{"commit":"6cba7d429898d331c674c778f8bd85ba75a8dca9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 21 11:10:00 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"remove linux from description","epoch":1590084600,"epoch_utc":null},{"commit":"9730f62e4970b5a4490f8dc24b6cfb9cacd0cbf2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 21 09:44:28 2020 -0700","stats":{"files_changed":5,"insertions":151,"deletions":133,"files":["jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json","tests/fixtures/osx-10.14.6/netstat.out"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":7},{"name":"tests/fixtures/osx-10.14.6/netstat-Abn.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-An.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat.out","lines_changed":271}]},"message":"fixup name field and update test fixtures","epoch":1590079468,"epoch_utc":null},{"commit":"e0c1c87f549eee000b93b5f5a3e8d0b052eb7d32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 21 09:07:01 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":8}]},"message":"formatting","epoch":1590077221,"epoch_utc":null},{"commit":"931b3d2b836b251590497f4cfa65f106762086c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 19:56:28 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1590029788,"epoch_utc":null},{"commit":"e5d561baeecf1fd83a884b3cd9d322762f750dfb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 17:31:51 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":1}]},"message":"add multipath condition for osx detection","epoch":1590021111,"epoch_utc":null},{"commit":"2867593e7aa12299686e2c6aa0f2a79a9b550b53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 17:28:44 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":6}]},"message":"changelog update","epoch":1590020924,"epoch_utc":null},{"commit":"dd52fee5635c977d5c77046ab9fe78d2ed10deef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 17:25:25 2020 -0700","stats":{"files_changed":7,"insertions":2141,"deletions":0,"files":["tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-Abn.out","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat-An.out","tests/fixtures/osx-10.14.6/netstat.json","tests/fixtures/osx-10.14.6/netstat.out","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/netstat-Abn.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-Abn.out","lines_changed":689},{"name":"tests/fixtures/osx-10.14.6/netstat-An.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-An.out","lines_changed":689},{"name":"tests/fixtures/osx-10.14.6/netstat.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat.out","lines_changed":724},{"name":"tests/test_netstat.py","lines_changed":36}]},"message":"osx netstat tests and fixtures","epoch":1590020725,"epoch_utc":null},{"commit":"8e1f8858273e671a882a07eae1c35b38f5298c94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 16:43:53 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":7}]},"message":"fix filtered netstat views","epoch":1590018233,"epoch_utc":null},{"commit":"2d39a58f902e6af77f8f96ffcd1d68b7cbadd56c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 16:14:03 2020 -0700","stats":{"files_changed":4,"insertions":81,"deletions":14,"files":["README.md","docs/parsers/dmidecode.md","docs/parsers/netstat.md","jc/parsers/dmidecode.py"],"file_stats":[{"name":"README.md","lines_changed":67},{"name":"docs/parsers/dmidecode.md","lines_changed":4},{"name":"docs/parsers/netstat.md","lines_changed":20},{"name":"jc/parsers/dmidecode.py","lines_changed":4}]},"message":"doc update","epoch":1590016443,"epoch_utc":null},{"commit":"9c4fa2ae2601ca4880c0b078fa917f01f1392e0e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 15:39:47 2020 -0700","stats":{"files_changed":2,"insertions":22,"deletions":2,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":21},{"name":"jc/parsers/netstat_osx.py","lines_changed":3}]},"message":"integer conversions and icmp fix","epoch":1590014387,"epoch_utc":null},{"commit":"de52d84e82df6d8c5e2416c6bc44e59c41c685da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 12:02:32 2020 -0700","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":17}]},"message":"fix udp state and udp46 entries","epoch":1590001352,"epoch_utc":null},{"commit":"ce9b55059a28d363b8b0ae4f3ccbdbdc4bf4b58e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 11:24:38 2020 -0700","stats":{"files_changed":2,"insertions":185,"deletions":167,"files":["jc/parsers/netstat.py","jc/parsers/netstat_linux.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":171},{"name":"jc/parsers/netstat_linux.py","lines_changed":181}]},"message":"organize files","epoch":1589999078,"epoch_utc":null},{"commit":"bcd370a6a01a115d470776f5690f8571d68d3930","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 08:19:45 2020 -0700","stats":{"files_changed":2,"insertions":5,"deletions":15,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":16},{"name":"jc/parsers/netstat_osx.py","lines_changed":4}]},"message":"code cleanup","epoch":1589987985,"epoch_utc":null},{"commit":"c8216850abd2d0b8cc6761453f853f296e8a28f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 20 07:19:24 2020 -0700","stats":{"files_changed":1,"insertions":19,"deletions":55,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":74}]},"message":"code cleanup","epoch":1589984364,"epoch_utc":null},{"commit":"f5feedb90b39e5c3f4564615482d47ccd145844f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 17:38:14 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":10,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":11}]},"message":"fix comments","epoch":1589935094,"epoch_utc":null},{"commit":"a4371cd187fe5077018edbfeee77eb17c6a90ad3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 17:36:16 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":6}]},"message":"support netstat -A","epoch":1589934976,"epoch_utc":null},{"commit":"9d5ba4c83404e4fab5c0f40c30b4735685499a31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 17:14:04 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":2}]},"message":"formatting","epoch":1589933644,"epoch_utc":null},{"commit":"1639dee1bb93f6f89e8bb7b37134dc1f561c479c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 17:13:03 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":35,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":45}]},"message":"fix parse_post","epoch":1589933583,"epoch_utc":null},{"commit":"9363f430f20951e6fa739f06c85c5b6b3421b60d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 16:26:41 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":3}]},"message":"use list extend method to simplify code","epoch":1589930801,"epoch_utc":null},{"commit":"9192a0907364c772558380be1373b8dcea972a6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 16:26:04 2020 -0700","stats":{"files_changed":1,"insertions":124,"deletions":34,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":158}]},"message":"parse all sections","epoch":1589930764,"epoch_utc":null},{"commit":"b915eb97556ccc5fc60e8d23f7298ffec2d8e3b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue May 19 15:15:08 2020 -0700","stats":{"files_changed":2,"insertions":237,"deletions":55,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":118},{"name":"jc/parsers/netstat_osx.py","lines_changed":174}]},"message":"initial osx parser","epoch":1589926508,"epoch_utc":null},{"commit":"1cfcc2b592f682d2b50a0c4188fa3ae832a6c682","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 14 09:58:16 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":2}]},"message":"tighten up line test logic when counting tabs","epoch":1589475496,"epoch_utc":null},{"commit":"7138dd02b73073441a52c9b574bf0d6e02f0d7d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 14 09:51:10 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":11}]},"message":"cleanup variables after adding to item","epoch":1589475070,"epoch_utc":null},{"commit":"b4276643b70f7820f8f53df22b32fffb54e30ca2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 14 09:43:13 2020 -0700","stats":{"files_changed":4,"insertions":56,"deletions":0,"files":["tests/fixtures/centos-7.7/dmidecode.json","tests/fixtures/fedora32/dmidecode.json","tests/fixtures/ubuntu-18.04/dmidecode.json","tests/test_dmidecode.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/dmidecode.json","lines_changed":1},{"name":"tests/fixtures/fedora32/dmidecode.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dmidecode.json","lines_changed":1},{"name":"tests/test_dmidecode.py","lines_changed":53}]},"message":"add dmidecode tests and fixtures","epoch":1589474593,"epoch_utc":null},{"commit":"2ef00763bfe7c4348f30026759941efe39861a0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 14 09:33:45 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":4}]},"message":"fix first item","epoch":1589474025,"epoch_utc":null},{"commit":"54364928fc826ead7774a4cec1bcb73a5cb9ee0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu May 14 08:57:23 2020 -0700","stats":{"files_changed":2,"insertions":74,"deletions":81,"files":["docs/parsers/dmidecode.md","jc/parsers/dmidecode.py"],"file_stats":[{"name":"docs/parsers/dmidecode.md","lines_changed":37},{"name":"jc/parsers/dmidecode.py","lines_changed":118}]},"message":"fix oddities like hybrid single/multiline data and items containing multiple records","epoch":1589471843,"epoch_utc":null},{"commit":"09b3b4932b0fa4a2b18c88a8465c15a194b727e6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 10:51:38 2020 -0700","stats":{"files_changed":3,"insertions":35430,"deletions":0,"files":["tests/fixtures/centos-7.7/dmidecode.out","tests/fixtures/fedora32/dmidecode.out","tests/fixtures/ubuntu-18.04/dmidecode.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/dmidecode.out","lines_changed":11810},{"name":"tests/fixtures/fedora32/dmidecode.out","lines_changed":11810},{"name":"tests/fixtures/ubuntu-18.04/dmidecode.out","lines_changed":11810}]},"message":"add dmidecode output fixtures","epoch":1589392298,"epoch_utc":null},{"commit":"29d6670119d8fcd0344e90f01bfb6260aa936e50","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 10:18:49 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":10}]},"message":"convert integers","epoch":1589390329,"epoch_utc":null},{"commit":"2f654b5f1acda01192294f4c18a5a31363e7f387","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 10:13:27 2020 -0700","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["docs/parsers/dmidecode.md"],"file_stats":[{"name":"docs/parsers/dmidecode.md","lines_changed":37}]},"message":"doc update","epoch":1589390007,"epoch_utc":null},{"commit":"e53b9f5992450b53efc886b4fa9ca16f3dd07530","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 10:12:40 2020 -0700","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":37}]},"message":"add caveats to documentation","epoch":1589389960,"epoch_utc":null},{"commit":"addb234e6162c58750cb67947bc4776635bf54fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:44:20 2020 -0700","stats":{"files_changed":1,"insertions":153,"deletions":0,"files":["docs/parsers/dmidecode.md"],"file_stats":[{"name":"docs/parsers/dmidecode.md","lines_changed":153}]},"message":"add dmidecode doc","epoch":1589388260,"epoch_utc":null},{"commit":"76eca3b65911a0a340d3d94322a8145ee89c50da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:43:35 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":1}]},"message":"add dmidecode","epoch":1589388215,"epoch_utc":null},{"commit":"f90dec4c0ecf88623fb22273b7527ec8884826c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:43:23 2020 -0700","stats":{"files_changed":1,"insertions":94,"deletions":5,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":99}]},"message":"add examples to documentation","epoch":1589388203,"epoch_utc":null},{"commit":"8900a59d4cb424ff58d1eb27f8fda7ea0a668a5c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:31:12 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":19,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":20}]},"message":"simplify logic by removing redundant block","epoch":1589387472,"epoch_utc":null},{"commit":"6685138200d5955115707d04aad0293ea8af5b15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:25:02 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":2}]},"message":"fix for missing multi-line values that come immediately after a previous multi-line value","epoch":1589387102,"epoch_utc":null},{"commit":"4d3e65b980d50164b8220e59560822b9871580ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 09:00:32 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":5}]},"message":"fix missing values","epoch":1589385632,"epoch_utc":null},{"commit":"e9282bb546f560da6396f44e2ce9e04136348e2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed May 13 08:22:52 2020 -0700","stats":{"files_changed":2,"insertions":175,"deletions":0,"files":["jc/cli.py","jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/dmidecode.py","lines_changed":174}]},"message":"add dmidecode parser","epoch":1589383372,"epoch_utc":null},{"commit":"f5627a45947e5e76e5f3e64d9b30099fe0b962a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 11 11:03:02 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1589220182,"epoch_utc":null},{"commit":"81ffdb25105c681c8ed12336d220a102b7f4215e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 11 10:54:26 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"remove shebang for Fedora packaging","epoch":1589219666,"epoch_utc":null},{"commit":"4c00a99850cb6f69713be7c6ad9ffba11924d9b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 11 10:37:14 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1589218634,"epoch_utc":null},{"commit":"2bfcb45b28e2174a8bbc27237e619b5c232ccae8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 11 10:32:42 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":0}]},"message":"make cli.py executable","epoch":1589218362,"epoch_utc":null},{"commit":"ab0c10e791283affb227d0d5306701ba7fd29d13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon May 11 10:27:16 2020 -0700","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["LICENSE.md","README.md"],"file_stats":[{"name":"LICENSE.md","lines_changed":0},{"name":"README.md","lines_changed":0}]},"message":"remove execute permissions","epoch":1589218036,"epoch_utc":null},{"commit":"2c1935115de03a28fe92674b04b2542b0eccb8fe","merge":"99070fa d98e43d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:47:05 2020 -0700","message":"Merge pull request #61 from kellyjonbrazil/dev\n\nDev v1.10.10","epoch":1589050025,"epoch_utc":null},{"commit":"d98e43dc78205d3224bfc1e67de2da3c5fb7ea9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:42:56 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"add netstat item","epoch":1589049776,"epoch_utc":null},{"commit":"9348988d646d9b9c9970c19e84f311554ae38e7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:41:30 2020 -0700","stats":{"files_changed":1,"insertions":12,"deletions":0,"files":["tests/test_netstat.py"],"file_stats":[{"name":"tests/test_netstat.py","lines_changed":12}]},"message":"add netstat test for Fedora32","epoch":1589049690,"epoch_utc":null},{"commit":"1285c664679c40b18327c89b85921a80b01f0191","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:36:23 2020 -0700","stats":{"files_changed":2,"insertions":140,"deletions":0,"files":["tests/fixtures/fedora32/netstat.json","tests/fixtures/fedora32/netstat.out"],"file_stats":[{"name":"tests/fixtures/fedora32/netstat.json","lines_changed":1},{"name":"tests/fixtures/fedora32/netstat.out","lines_changed":139}]},"message":"netstat with bluetooth section","epoch":1589049383,"epoch_utc":null},{"commit":"b7191bbc130e0f33d02c0a4819fa91ffff1599d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:36:03 2020 -0700","stats":{"files_changed":1,"insertions":14,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":15}]},"message":"handle bluetooth section (ignore for now)","epoch":1589049363,"epoch_utc":null},{"commit":"98b97509f7893cb95e9651ce9706db5c961aa997","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:25:13 2020 -0700","stats":{"files_changed":3,"insertions":6,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1589048713,"epoch_utc":null},{"commit":"2b2b570490f3834367a598579473001f45738e8a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:22:26 2020 -0700","stats":{"files_changed":3,"insertions":21,"deletions":0,"files":["tests/fixtures/fedora32/last.json","tests/fixtures/fedora32/last.out","tests/test_last.py"],"file_stats":[{"name":"tests/fixtures/fedora32/last.json","lines_changed":1},{"name":"tests/fixtures/fedora32/last.out","lines_changed":8},{"name":"tests/test_last.py","lines_changed":12}]},"message":"add tests for 'gone - no logout'","epoch":1589048546,"epoch_utc":null},{"commit":"cce2d1ff298f2284c43c4534144329f3533a81ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:22:01 2020 -0700","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":6}]},"message":"add condition for 'gone - no logout'","epoch":1589048521,"epoch_utc":null},{"commit":"b79600c57249cbb65805caad2524cc2492342be6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:01:48 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"version bump","epoch":1589047308,"epoch_utc":null},{"commit":"140f1a85437745296b56976bef1b46514e323a4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat May 9 11:00:04 2020 -0700","stats":{"files_changed":7,"insertions":7,"deletions":7,"files":["tests/fixtures/centos-7.7/ls-R-newlines.json","tests/fixtures/centos-7.7/ls-R.json","tests/fixtures/centos-7.7/ls-glob.json","tests/fixtures/osx-10.14.6/ls-glob.json","tests/fixtures/ubuntu-18.04/ls-R-newlines.json","tests/fixtures/ubuntu-18.04/ls-R.json","tests/fixtures/ubuntu-18.04/ls-glob.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ls-R-newlines.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ls-R.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ls-glob.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-glob.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ls-R-newlines.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ls-R.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ls-glob.json","lines_changed":2}]},"message":"test fixes for issue #60","epoch":1589047204,"epoch_utc":null},{"commit":"e34657cfde6816ab7a7415d83580df0a1d98a5a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 15:26:11 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"fix issue #60 that was skipping the first file in some instances using -R without -l","epoch":1588976771,"epoch_utc":null},{"commit":"99070fa6073c4415a6faf8ca69dd6aa089af4062","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 10:51:13 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1588960273,"epoch_utc":null},{"commit":"2b46785b1f1281ee63df9159e36068f4607ad9b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 10:49:30 2020 -0700","stats":{"files_changed":1,"insertions":25,"deletions":3,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":28}]},"message":"add MIT license to vendorized IfconfigParser class","epoch":1588960170,"epoch_utc":null},{"commit":"c72562524b2b9aaca0be372bb24343158829ba5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 09:30:31 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"fully remove tests from packaging","epoch":1588955431,"epoch_utc":null},{"commit":"b7dd6441c7e3f54f8a260fceef49aae6816c7151","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 08:20:33 2020 -0700","stats":{"files_changed":2,"insertions":5,"deletions":1,"files":["changelog.txt","jc/cli.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/cli.py","lines_changed":2}]},"message":"version bump","epoch":1588951233,"epoch_utc":null},{"commit":"31fcc2f755ad86622cf51a75879b14d44f246300","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 08:20:21 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["MANIFEST.in"],"file_stats":[{"name":"MANIFEST.in","lines_changed":1}]},"message":"remove manifest.in - no longer needed due to removing tests","epoch":1588951221,"epoch_utc":null},{"commit":"b391aa14bceffedb5a9c13f3f908923790edefc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 08:19:51 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["setup.cfg"],"file_stats":[{"name":"setup.cfg","lines_changed":2}]},"message":"add license_file to metadata","epoch":1588951191,"epoch_utc":null},{"commit":"d3c45debbb6690acd341fbcc9b99d1ae4cf0a43c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 8 08:19:31 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":5}]},"message":"remove tests and add license file","epoch":1588951171,"epoch_utc":null},{"commit":"5b08469b874553744bd5c5b1fa6581f4dcffacd0","merge":"8cf00a2 4a77ec6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 1 15:55:50 2020 -0700","message":"Merge pull request #57 from kellyjonbrazil/dev\n\nDev v1.10.7","epoch":1588373750,"epoch_utc":null},{"commit":"4a77ec63a46554c84e646d31564230774ed87431","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 1 14:57:50 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["docs/parsers/ifconfig.md"],"file_stats":[{"name":"docs/parsers/ifconfig.md","lines_changed":11}]},"message":"add IfconfigParser class","epoch":1588370270,"epoch_utc":null},{"commit":"d13606b6dc2c207be6dea89a2c3e713c18a574b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 1 14:37:23 2020 -0700","stats":{"files_changed":4,"insertions":7,"deletions":6,"files":["changelog.txt","jc/cli.py","requirements.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"requirements.txt","lines_changed":3},{"name":"setup.py","lines_changed":5}]},"message":"modify dependencies for easier packaging into Fedora","epoch":1588369043,"epoch_utc":null},{"commit":"05291c93bba1aa364ba1ac7f2508e24bb362a814","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri May 1 14:36:54 2020 -0700","stats":{"files_changed":1,"insertions":198,"deletions":3,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":201}]},"message":"vendorize ifconfig-parser module for easier packaging in Fedora","epoch":1588369014,"epoch_utc":null},{"commit":"8cf00a208eb8493300331e7361b72e4f9e3f140e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 29 15:57:55 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"change text to strings","epoch":1588201075,"epoch_utc":null},{"commit":"06d73c88767a5b4d6003231c897c447ee5e1faa5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 23 07:06:44 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1587650804,"epoch_utc":null},{"commit":"649c646ea25ac7f89900cffa8919df01671bd32d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 22 16:08:34 2020 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"add brew install option","epoch":1587596914,"epoch_utc":null},{"commit":"b7756d92501a7b8ba8e77d77d9d3718a58425beb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 20 16:33:26 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1587425606,"epoch_utc":null},{"commit":"1cd2cd954c21e5caec333507bd81819c82d45b49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Apr 20 16:31:22 2020 -0700","stats":{"files_changed":4,"insertions":2,"deletions":16,"files":["tests/fixtures/osx-10.11.6/du.json","tests/fixtures/osx-10.11.6/du.out","tests/fixtures/osx-10.14.6/du.json","tests/fixtures/osx-10.14.6/du.out"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/du.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/du.out","lines_changed":7},{"name":"tests/fixtures/osx-10.14.6/du.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/du.out","lines_changed":7}]},"message":"remove references to homebrew/shim to allow tests to pass in homebrew packaging ci/cd","epoch":1587425482,"epoch_utc":null},{"commit":"72020b8da999ddca6f9ba82da235c9f42e4f4273","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 17 10:20:25 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":22,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":24}]},"message":"move packages info to jc-packages github page","epoch":1587144025,"epoch_utc":null},{"commit":"cf9720b749e7fc8caed0d2f1f2b1727a22a156b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 16 14:03:31 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"update install info","epoch":1587071011,"epoch_utc":null},{"commit":"967b9db7f90a3c3a0352edde7f4455c5f5d45b18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 15 21:27:22 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":6}]},"message":"spelling","epoch":1587011242,"epoch_utc":null},{"commit":"bb3acb1182f4d509f9ddc7dfcffa4578e0a2bd5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 15 21:25:06 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1587011106,"epoch_utc":null},{"commit":"560c7f7e6d1f8a69ab026ddbff753d232ca1d00b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 15 21:23:55 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1587011035,"epoch_utc":null},{"commit":"79b28417644e00b933f531374d2f7fe8051e61be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Apr 15 21:22:43 2020 -0700","stats":{"files_changed":1,"insertions":26,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":26}]},"message":"add new binary package install info","epoch":1587010963,"epoch_utc":null},{"commit":"a06a89cbd11026aa3910fadd1eff7fe388d02507","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 14 11:15:24 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1586888124,"epoch_utc":null},{"commit":"431bd969eb4809424fe99a02a7decb98bce9ea51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 14 11:10:31 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"use sys.exit(0) instead of exit()","epoch":1586887831,"epoch_utc":null},{"commit":"c87b722aec6e6964c516bbb8e80667ad7d9c6bc7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:23:58 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"spelling","epoch":1586723038,"epoch_utc":null},{"commit":"3688b8b014a1cf753b2207fbf3ebf0292c3fd672","merge":"99f7842 07b8d9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:21:38 2020 -0700","message":"Merge pull request #56 from kellyjonbrazil/dev\n\nDev v1.10.4","epoch":1586722898,"epoch_utc":null},{"commit":"07b8d9e0c0d723d93e6c652f5b6156c467c451c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:18:28 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1586722708,"epoch_utc":null},{"commit":"7454b53e395e9122c00d4cf06b1c2af109913d7a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:13:28 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"formatting","epoch":1586722408,"epoch_utc":null},{"commit":"3d6a76024de0f9dcf91a4ab49cabe461074114fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:10:57 2020 -0700","stats":{"files_changed":1,"insertions":18,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":18}]},"message":"update with JC_COLORS info","epoch":1586722257,"epoch_utc":null},{"commit":"421b9809575a8de00229af4b851739889638ac74","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 13:03:09 2020 -0700","stats":{"files_changed":1,"insertions":18,"deletions":37,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":55}]},"message":"JC_COLORS working","epoch":1586721789,"epoch_utc":null},{"commit":"4a22e27d6a80a988f4de17bce421110d6abb8867","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Apr 12 12:43:51 2020 -0700","stats":{"files_changed":1,"insertions":64,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":64}]},"message":"add set_env_colors function","epoch":1586720631,"epoch_utc":null},{"commit":"99f7842dee0f79cf933fae185cf8b0ed7c8b210f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 9 13:38:33 2020 -0700","stats":{"files_changed":3,"insertions":11,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":8},{"name":"setup.py","lines_changed":2}]},"message":"fix brek on pipe error","epoch":1586464713,"epoch_utc":null},{"commit":"7f869b4b187d70752207a7e74c13b858446f898f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 9 07:31:21 2020 -0700","stats":{"files_changed":3,"insertions":9,"deletions":11,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":15},{"name":"setup.py","lines_changed":2}]},"message":"change colors to ansi and match jello style","epoch":1586442681,"epoch_utc":null},{"commit":"9665f4ee84680f3a8154b8a43ea668af2907782c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Apr 7 08:44:15 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add pypi badge","epoch":1586274255,"epoch_utc":null},{"commit":"606904d48b1c7e0c19a940b5be0b564d1b5be6c8","merge":"302f05c 3f5279b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:28:21 2020 -0700","message":"Merge pull request #53 from kellyjonbrazil/dev\n\nDev v1.10.1","epoch":1586046501,"epoch_utc":null},{"commit":"3f5279b97c386c736e0e2faa5c39d68ef89c46aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:25:55 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to 1.10.1","epoch":1586046355,"epoch_utc":null},{"commit":"f5ec21e6ac612566af93158fc3968b901322d04a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:19:32 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_luf.py"],"file_stats":[{"name":"jc/parsers/systemctl_luf.py","lines_changed":4}]},"message":"use in instead of find()","epoch":1586045972,"epoch_utc":null},{"commit":"578a284465f014fe71ad6ac00bd41dc24ab2ced9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:18:39 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_ls.py"],"file_stats":[{"name":"jc/parsers/systemctl_ls.py","lines_changed":4}]},"message":"use in instead of find()","epoch":1586045919,"epoch_utc":null},{"commit":"422e392d9d98a7864312fc7fbd7f45537b71acbe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:17:43 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_lj.py"],"file_stats":[{"name":"jc/parsers/systemctl_lj.py","lines_changed":4}]},"message":"use in instead of find()","epoch":1586045863,"epoch_utc":null},{"commit":"54dfffd34a17d1194690142ac403391fc65bb85f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:16:25 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl.py"],"file_stats":[{"name":"jc/parsers/systemctl.py","lines_changed":4}]},"message":"use in instead of find()","epoch":1586045785,"epoch_utc":null},{"commit":"cffba64d2b9165b44a8856665807111a2ad3a190","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:15:03 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":14}]},"message":"use in and startswith() instead of find()","epoch":1586045703,"epoch_utc":null},{"commit":"56a0c12a59bb252d3b7d0929f9fb19b4d96a8437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:12:22 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/pip_list.py"],"file_stats":[{"name":"jc/parsers/pip_list.py","lines_changed":6}]},"message":"use in instead of find()","epoch":1586045542,"epoch_utc":null},{"commit":"c174d3de18923b2b03befb5a7dfcbd977a8e147e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:10:46 2020 -0700","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":14}]},"message":"use in and startswith() instead of find()","epoch":1586045446,"epoch_utc":null},{"commit":"a9c59ef9fc1bb68c9d0d7beffbeb670baf5b1e3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:07:38 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/mount.py"],"file_stats":[{"name":"jc/parsers/mount.py","lines_changed":2}]},"message":"fix logic to not for ' type ' in cleandata[0]","epoch":1586045258,"epoch_utc":null},{"commit":"abdb9b26732a6a71f5938d665b2ca43a381e1b33","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:05:17 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/mount.py"],"file_stats":[{"name":"jc/parsers/mount.py","lines_changed":4}]},"message":"use in instead of find()","epoch":1586045117,"epoch_utc":null},{"commit":"548aaab6262878d21f8b9539950cfad48638e35c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:04:20 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":42,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":43}]},"message":"remove old commented code","epoch":1586045060,"epoch_utc":null},{"commit":"20571c87ae9e1ca8a1f3120511910751420a35ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 17:01:56 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":6}]},"message":"us in instead of find()","epoch":1586044916,"epoch_utc":null},{"commit":"19e49200de5c731f76b42e80388c5223e8097e39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:59:48 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":2}]},"message":"version bump","epoch":1586044788,"epoch_utc":null},{"commit":"d32f5c67a91ede572c88e431b2ad0ce4d6c87dec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:59:03 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":4}]},"message":"use startswith() instead of find()","epoch":1586044743,"epoch_utc":null},{"commit":"b83b626435c55d2aa63e56dd8f22603da59e7626","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:57:23 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":4}]},"message":"use startswith() instead of find()","epoch":1586044643,"epoch_utc":null},{"commit":"ab2c1b25ec5da5f2ba238868c4dfca95a44da30e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:56:11 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/hosts.py"],"file_stats":[{"name":"jc/parsers/hosts.py","lines_changed":6}]},"message":"use startswith() and in instead of find()","epoch":1586044571,"epoch_utc":null},{"commit":"f2d46313a4508f13656cdb360f83fdf4116cc7d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:53:55 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/fstab.py"],"file_stats":[{"name":"jc/parsers/fstab.py","lines_changed":4}]},"message":"use startswith() instead of find()","epoch":1586044435,"epoch_utc":null},{"commit":"87e4796a6c936793e2784346819c7033d59b91e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:52:45 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":4}]},"message":"use in instead of .find()","epoch":1586044365,"epoch_utc":null},{"commit":"0014a5c2f4c056c2683d6614a65d778b1f527932","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:51:36 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab_u.py"],"file_stats":[{"name":"jc/parsers/crontab_u.py","lines_changed":6}]},"message":"us startswith() and in instead of .find()","epoch":1586044296,"epoch_utc":null},{"commit":"7af56e0dadab7d8b9538f3b7a550ad6dd1ac217d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:50:05 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":6}]},"message":"use startswith() and in instead of find()","epoch":1586044205,"epoch_utc":null},{"commit":"a5ae6e3c017b041f9079ff12455b7551ad204cb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:48:16 2020 -0700","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":6}]},"message":"use startswith() instead of find()","epoch":1586044096,"epoch_utc":null},{"commit":"fe1a0d1faf46f55ed2888ed0065f3f3144691ed8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Apr 4 16:46:09 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":9,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":19}]},"message":"use in instead of .find()","epoch":1586043969,"epoch_utc":null},{"commit":"302f05cdda305e46e69b74d5b0096f64c17da637","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 3 14:50:20 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"prettify style block","epoch":1585950620,"epoch_utc":null},{"commit":"c0044be7b0b6dadcffb64cb88ad92bf653dd2b6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 3 14:48:19 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"rename color grey to gray","epoch":1585950499,"epoch_utc":null},{"commit":"01100788070b82b4b827ef356972fa9b8f737eeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 3 14:47:08 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update badge","epoch":1585950428,"epoch_utc":null},{"commit":"42eacb45f8fdf8085c6231bf5297629c2ec97c22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Apr 3 14:45:04 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"rename to Tests","epoch":1585950304,"epoch_utc":null},{"commit":"a43e2e19916662d509883457c160d7f95f97ae12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 2 17:40:06 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add -m option info","epoch":1585874406,"epoch_utc":null},{"commit":"c8b721d4f6e46a2db77e1140b9caeb3b403fef72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 2 17:35:35 2020 -0700","stats":{"files_changed":4,"insertions":9,"deletions":3,"files":["changelog.txt","jc/cli.py","requirements.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/cli.py","lines_changed":2},{"name":"requirements.txt","lines_changed":1},{"name":"setup.py","lines_changed":5}]},"message":"version bump to 1.10.0","epoch":1585874135,"epoch_utc":null},{"commit":"d0bfddc3d9989444757d6668726c916e5363620b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 2 17:29:25 2020 -0700","stats":{"files_changed":1,"insertions":41,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":47}]},"message":"add color and -m monochrome option","epoch":1585873765,"epoch_utc":null},{"commit":"6b925a16c87cf75bb30edfda38511e8f84a4f6d6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Apr 2 10:55:32 2020 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add tests badge","epoch":1585850132,"epoch_utc":null},{"commit":"89ebd9fc2271d2c76353d5707bfd4afb7dedc278","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 27 07:31:08 2020 -0700","stats":{"files_changed":2,"insertions":20,"deletions":0,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":10},{"name":"jc/parsers/dig.py","lines_changed":10}]},"message":"add axfr info to schema","epoch":1585319468,"epoch_utc":null},{"commit":"6b4ba662317629839aa62fbcfefb8ed3337c37ef","merge":"8ec8cd6 5b697dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 17:15:13 2020 -0700","message":"Merge pull request #52 from kellyjonbrazil/dev\n\nDev v1.9.3","epoch":1585268113,"epoch_utc":null},{"commit":"5b697dc38141cdd47fcdd63bf295a80a7da86697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 17:09:29 2020 -0700","stats":{"files_changed":1,"insertions":72,"deletions":0,"files":["tests/test_dig.py"],"file_stats":[{"name":"tests/test_dig.py","lines_changed":72}]},"message":"add more dig tests","epoch":1585267769,"epoch_utc":null},{"commit":"9ba73c95d1a528a9a92be4068805bb5aa027901e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 16:45:29 2020 -0700","stats":{"files_changed":7,"insertions":215,"deletions":0,"files":["tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/centos-7.7/dig-axfr.out","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-axfr.out","tests/fixtures/ubuntu-18.04/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-axfr.out","tests/test_dig.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/dig-axfr.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/dig-axfr.out","lines_changed":60},{"name":"tests/fixtures/osx-10.14.6/dig-axfr.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig-axfr.out","lines_changed":59},{"name":"tests/fixtures/ubuntu-18.04/dig-axfr.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dig-axfr.out","lines_changed":57},{"name":"tests/test_dig.py","lines_changed":36}]},"message":"add tests","epoch":1585266329,"epoch_utc":null},{"commit":"93aa39044749c4c0ed749f62fb00fc1c76dc5af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 16:30:17 2020 -0700","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to v1.9.3","epoch":1585265417,"epoch_utc":null},{"commit":"3cfb8945ddd83c00a720c44e2c1d97da0d8bad25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 16:29:59 2020 -0700","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":18}]},"message":"use startswith() instead of find","epoch":1585265399,"epoch_utc":null},{"commit":"cd8d38f2a136c4f35efc020b3476d09e965b71f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 26 16:22:53 2020 -0700","stats":{"files_changed":1,"insertions":50,"deletions":1,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":51}]},"message":"add axfr support","epoch":1585264973,"epoch_utc":null},{"commit":"8ec8cd62944c59c462ab9f520c1dcfd14218b1ed","merge":"e5bea9a c028113","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 17:09:04 2020 -0700","message":"Merge pull request #50 from kellyjonbrazil/dev\n\nDev v1.9.2","epoch":1584058144,"epoch_utc":null},{"commit":"c02811356153c2b4f8b2d7efb7f48bf8f7748068","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 17:06:55 2020 -0700","stats":{"files_changed":3,"insertions":6,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":5},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to v1.9.2","epoch":1584058015,"epoch_utc":null},{"commit":"5f22e1c8031b808ef02ffe078408bd58cc76e570","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 17:02:26 2020 -0700","stats":{"files_changed":3,"insertions":33,"deletions":0,"files":["tests/fixtures/osx-10.14.6/arp-a2.json","tests/fixtures/osx-10.14.6/arp-a2.out","tests/test_arp.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/arp-a2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/arp-a2.out","lines_changed":20},{"name":"tests/test_arp.py","lines_changed":12}]},"message":"fix and test for osx arp entries without ifscope","epoch":1584057746,"epoch_utc":null},{"commit":"d3351787e5cabd064c19e6617e9535e501686404","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 16:52:33 2020 -0700","stats":{"files_changed":1,"insertions":10,"deletions":9,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":19}]},"message":"change osx detection","epoch":1584057153,"epoch_utc":null},{"commit":"e5bea9ae3b0a70b38f7da7dd9184343dbbd18887","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 08:52:01 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/file.py"],"file_stats":[{"name":"jc/parsers/file.py","lines_changed":2}]},"message":"version bump","epoch":1584028321,"epoch_utc":null},{"commit":"93c710abe9171568f61f65c4f84c040ffc24870c","merge":"400f5a4 c29e7cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 08:23:10 2020 -0700","message":"Merge pull request #49 from kellyjonbrazil/dev\n\nDev v1.9.1","epoch":1584026590,"epoch_utc":null},{"commit":"c29e7cfe5cc4b2151912c6f618137d1b6c39c7be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 12 08:17:28 2020 -0700","stats":{"files_changed":4,"insertions":9,"deletions":6,"files":["README.md","changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to 1.9.1","epoch":1584026248,"epoch_utc":null},{"commit":"cb5c1ba00dc0e02bf6ad6c40096d99e319fa6171","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 17:04:48 2020 -0700","stats":{"files_changed":3,"insertions":101,"deletions":0,"files":["tests/fixtures/osx-10.14.6/file2.json","tests/fixtures/osx-10.14.6/file2.out","tests/test_file.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/file2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/file2.out","lines_changed":88},{"name":"tests/test_file.py","lines_changed":12}]},"message":"add tests for fix to make the file parser splitting more robust","epoch":1583971488,"epoch_utc":null},{"commit":"9a012b94e1942a14bc6dae3fb967ef618819c77b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 15:40:34 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/file.py"],"file_stats":[{"name":"jc/parsers/file.py","lines_changed":2}]},"message":"make splitting more robust","epoch":1583966434,"epoch_utc":null},{"commit":"400f5a44ece280cb0097d806b78a9490d2905600","merge":"c7cd2b6 a2ab5ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 13:37:22 2020 -0700","message":"Merge pull request #48 from kellyjonbrazil/dev\n\nDev v1.9.0","epoch":1583959042,"epoch_utc":null},{"commit":"a2ab5bab91ea980399df1afb9d8071fa3282d04e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 13:32:58 2020 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to v1.9.0","epoch":1583958778,"epoch_utc":null},{"commit":"fc8ab27361df3359b706125531b2643612d6996a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 13:24:55 2020 -0700","stats":{"files_changed":6,"insertions":93,"deletions":51,"files":["README.md","docs/parsers/ntpq.md","jc/parsers/ntpq.py","tests/fixtures/ubuntu-18.04/ntpq-p2.json","tests/fixtures/ubuntu-18.04/ntpq-p2.out","tests/test_ntpq.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"docs/parsers/ntpq.md","lines_changed":40},{"name":"jc/parsers/ntpq.py","lines_changed":59},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p2.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p2.out","lines_changed":24},{"name":"tests/test_ntpq.py","lines_changed":12}]},"message":"bugfix for misaligned columns and additional test for ntpq #31","epoch":1583958295,"epoch_utc":null},{"commit":"59f19d33a5c6677ea756a9424fdb032b430511a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 12:39:59 2020 -0700","stats":{"files_changed":7,"insertions":153,"deletions":0,"files":["tests/fixtures/centos-7.7/file.json","tests/fixtures/centos-7.7/file.out","tests/fixtures/osx-10.14.6/file.json","tests/fixtures/osx-10.14.6/file.out","tests/fixtures/ubuntu-18.04/file.json","tests/fixtures/ubuntu-18.04/file.out","tests/test_file.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/file.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/file.out","lines_changed":25},{"name":"tests/fixtures/osx-10.14.6/file.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/file.out","lines_changed":53},{"name":"tests/fixtures/ubuntu-18.04/file.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/file.out","lines_changed":20},{"name":"tests/test_file.py","lines_changed":52}]},"message":"add file command tests for #41","epoch":1583955599,"epoch_utc":null},{"commit":"dfc96181159748d019419a2cba7aa9cb3b7a2a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 12:20:58 2020 -0700","stats":{"files_changed":6,"insertions":260,"deletions":1,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/file.md","jc/cli.py","jc/parsers/file.py"],"file_stats":[{"name":"README.md","lines_changed":36},{"name":"changelog.txt","lines_changed":5},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/file.md","lines_changed":90},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/file.py","lines_changed":128}]},"message":"add file parser for issue #41","epoch":1583954458,"epoch_utc":null},{"commit":"8e02e5c75a11cf205299ee6f87b67f9b787cf55e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 09:21:14 2020 -0700","stats":{"files_changed":2,"insertions":6,"deletions":5,"files":["jc/cli.py","tests/test_cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8},{"name":"tests/test_cli.py","lines_changed":3}]},"message":"fix issue with getting options with some commands #47","epoch":1583943674,"epoch_utc":null},{"commit":"970493ab9346a344b21be7614903ad81bc65a6e9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 11 06:22:54 2020 -0700","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["jc/parsers/airport.py","jc/parsers/airport_s.py"],"file_stats":[{"name":"jc/parsers/airport.py","lines_changed":1},{"name":"jc/parsers/airport_s.py","lines_changed":1}]},"message":"add magic commands","epoch":1583932974,"epoch_utc":null},{"commit":"64d78956eb33ca0a2564fded3d12729ee036a915","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 22:18:26 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"update acknowledgment","epoch":1583903906,"epoch_utc":null},{"commit":"40c05346f4098f8eea14c42da07df3faa143587a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 22:16:40 2020 -0700","stats":{"files_changed":1,"insertions":12,"deletions":25,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":37}]},"message":"re-adding optimizations from https://github.com/philippeitis","epoch":1583903800,"epoch_utc":null},{"commit":"e9b0bc1409a824a82dabd2479892b7d18bad8c3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 22:03:54 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/airport.py"],"file_stats":[{"name":"jc/parsers/airport.py","lines_changed":2}]},"message":"doc update","epoch":1583903034,"epoch_utc":null},{"commit":"798e6bb7d939176bb36771a6d41bd55403d583be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 22:03:44 2020 -0700","stats":{"files_changed":2,"insertions":29,"deletions":0,"files":["tests/fixtures/osx-10.14.6/airport-s.json","tests/test_airport_s.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/airport-s.json","lines_changed":1},{"name":"tests/test_airport_s.py","lines_changed":28}]},"message":"tests passing for airport -s. issue #46","epoch":1583903024,"epoch_utc":null},{"commit":"12a370deed03ba42d7b7ebb410195ce5f32bb9c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 21:51:02 2020 -0700","stats":{"files_changed":8,"insertions":372,"deletions":9,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/airport.md","docs/parsers/airport_s.md","jc/cli.py","jc/parsers/airport.py","jc/parsers/airport_s.py"],"file_stats":[{"name":"README.md","lines_changed":47},{"name":"changelog.txt","lines_changed":2},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/airport.md","lines_changed":4},{"name":"docs/parsers/airport_s.md","lines_changed":136},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/airport.py","lines_changed":5},{"name":"jc/parsers/airport_s.py","lines_changed":185}]},"message":"add airport -s parser for issue #46","epoch":1583902262,"epoch_utc":null},{"commit":"553bfbe1a0dd866851ba7eca66e9295c2097ad86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 21:02:17 2020 -0700","stats":{"files_changed":3,"insertions":40,"deletions":6,"files":["docs/parsers/airport.md","jc/parsers/airport.py","tests/test_airport.py"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":9},{"name":"jc/parsers/airport.py","lines_changed":9},{"name":"tests/test_airport.py","lines_changed":28}]},"message":"tests passing for airport -I. Issue #46","epoch":1583899337,"epoch_utc":null},{"commit":"52494321fcfe0dc7ee71d8d78210b3c10372a237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 20:55:07 2020 -0700","stats":{"files_changed":5,"insertions":120,"deletions":15,"files":["README.md","docs/parsers/airport.md","jc/parsers/airport.py","tests/fixtures/osx-10.14.6/airport-I.json","tests/fixtures/osx-10.14.6/airport-I.out"],"file_stats":[{"name":"README.md","lines_changed":22},{"name":"docs/parsers/airport.md","lines_changed":48},{"name":"jc/parsers/airport.py","lines_changed":62},{"name":"tests/fixtures/osx-10.14.6/airport-I.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/airport-I.out","lines_changed":2}]},"message":"fixes and docs for airport parser issue #46","epoch":1583898907,"epoch_utc":null},{"commit":"c6c9e06496683d2dd3586d17085801c7e698d960","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 20:35:52 2020 -0700","stats":{"files_changed":7,"insertions":196,"deletions":1,"files":["changelog.txt","docgen.sh","docs/parsers/airport.md","jc/cli.py","jc/parsers/airport.py","tests/fixtures/osx-10.14.6/airport-I.out","tests/fixtures/osx-10.14.6/airport-s.out"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/airport.md","lines_changed":64},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/airport.py","lines_changed":98},{"name":"tests/fixtures/osx-10.14.6/airport-I.out","lines_changed":15},{"name":"tests/fixtures/osx-10.14.6/airport-s.out","lines_changed":15}]},"message":"added airport command parser","epoch":1583897752,"epoch_utc":null},{"commit":"e3a6c05a58a2451e70975d8fabf644c56603c73d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 20:26:53 2020 -0700","stats":{"files_changed":5,"insertions":64,"deletions":17,"files":["docs/parsers/timedatectl.md","jc/parsers/timedatectl.py","tests/fixtures/centos-7.7/timedatectl.json","tests/fixtures/ubuntu-18.04/timedatectl.json","tests/test_timedatectl.py"],"file_stats":[{"name":"docs/parsers/timedatectl.md","lines_changed":18},{"name":"jc/parsers/timedatectl.py","lines_changed":21},{"name":"tests/fixtures/centos-7.7/timedatectl.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/timedatectl.json","lines_changed":1},{"name":"tests/test_timedatectl.py","lines_changed":40}]},"message":"timedatectl fixes, tests, and fixtures for issue #42","epoch":1583897213,"epoch_utc":null},{"commit":"391d06f68d1f45d33590d5407d3a5e4f723af717","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 20:16:41 2020 -0700","stats":{"files_changed":7,"insertions":35,"deletions":35,"files":["README.md","docs/parsers/ntpq.md","jc/parsers/ntpq.py","tests/fixtures/centos-7.7/ntpq-p.json","tests/fixtures/centos-7.7/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-p.json","tests/fixtures/ubuntu-18.04/ntpq-pn.json"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docs/parsers/ntpq.md","lines_changed":26},{"name":"jc/parsers/ntpq.py","lines_changed":32},{"name":"tests/fixtures/centos-7.7/ntpq-p.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ntpq-pn.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ntpq-pn.json","lines_changed":2}]},"message":"change selection_state to state","epoch":1583896601,"epoch_utc":null},{"commit":"99804ea06e0c70e3a82ddc7f9c7a42343374d700","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 18:37:55 2020 -0700","stats":{"files_changed":6,"insertions":222,"deletions":0,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/timedatectl.md","jc/cli.py","jc/parsers/timedatectl.py"],"file_stats":[{"name":"README.md","lines_changed":15},{"name":"changelog.txt","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/timedatectl.md","lines_changed":85},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/timedatectl.py","lines_changed":119}]},"message":"added timedatectl status parser","epoch":1583890675,"epoch_utc":null},{"commit":"51935deb2ad18e4ea3ca16954ce810354f6095a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 18:00:47 2020 -0700","stats":{"files_changed":2,"insertions":21,"deletions":0,"files":["tests/fixtures/centos-7.7/timedatectl.out","tests/fixtures/ubuntu-18.04/timedatectl.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/timedatectl.out","lines_changed":14},{"name":"tests/fixtures/ubuntu-18.04/timedatectl.out","lines_changed":7}]},"message":"timedatectl test fixtures","epoch":1583888447,"epoch_utc":null},{"commit":"b24d0c3a475b88d9ccf1a8fe29715ee60972fcad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 18:00:26 2020 -0700","stats":{"files_changed":2,"insertions":34,"deletions":2,"files":["README.md","jc/parsers/ntpq.py"],"file_stats":[{"name":"README.md","lines_changed":33},{"name":"jc/parsers/ntpq.py","lines_changed":3}]},"message":"ntpq docs","epoch":1583888426,"epoch_utc":null},{"commit":"762a886d6fdf5c2ad21d81868d138fb32621ed1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 15:17:25 2020 -0700","stats":{"files_changed":8,"insertions":133,"deletions":0,"files":["tests/fixtures/centos-7.7/ntpq-p.json","tests/fixtures/centos-7.7/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-p.json","tests/fixtures/ubuntu-18.04/ntpq-p.out","tests/fixtures/ubuntu-18.04/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-pn.out","tests/fixtures/ubuntu-18.04/ntqp-p.out","tests/test_ntpq.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ntpq-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ntpq-pn.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-18.04/ntpq-pn.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ntpq-pn.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-18.04/ntqp-p.out","lines_changed":21},{"name":"tests/test_ntpq.py","lines_changed":66}]},"message":"add ntpq tests","epoch":1583878645,"epoch_utc":null},{"commit":"2c3e9ddfe47f56cd7edc2fdf6317f7ecec0b7918","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 10 14:18:55 2020 -0700","stats":{"files_changed":7,"insertions":543,"deletions":0,"files":["changelog.txt","docgen.sh","docs/parsers/ntpq.md","jc/cli.py","jc/parsers/ntpq.py","tests/fixtures/centos-7.7/ntpq-p.out","tests/fixtures/centos-7.7/ntpq-pn.out"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ntpq.md","lines_changed":235},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/ntpq.py","lines_changed":291},{"name":"tests/fixtures/centos-7.7/ntpq-p.out","lines_changed":6},{"name":"tests/fixtures/centos-7.7/ntpq-pn.out","lines_changed":6}]},"message":"add ntpq parser for issue #31","epoch":1583875135,"epoch_utc":null},{"commit":"c7cd2b63c8f24e9d17c458880fe401d8032395ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 9 11:46:17 2020 -0700","stats":{"files_changed":1,"insertions":0,"deletions":91,"files":["tests/fixtures/generic/oscar_age_male.csv"],"file_stats":[{"name":"tests/fixtures/generic/oscar_age_male.csv","lines_changed":91}]},"message":"delete unused test file","epoch":1583779577,"epoch_utc":null},{"commit":"f0528ea83112e71ff51c89be27fc9bbdfbbf1951","merge":"b5eaff2 5bc5596","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:54:13 2020 -0700","message":"Merge pull request #45 from kellyjonbrazil/dev\n\nDev v1.8.1","epoch":1583704453,"epoch_utc":null},{"commit":"5bc5596f604fb87dffbfdf44ce2395b16bf01297","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:49:23 2020 -0700","stats":{"files_changed":4,"insertions":17,"deletions":4,"files":["changelog.txt","jc/cli.py","setup.py","tests/test_ls.py"],"file_stats":[{"name":"changelog.txt","lines_changed":5},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2},{"name":"tests/test_ls.py","lines_changed":12}]},"message":"version bump to 1.8.1","epoch":1583704163,"epoch_utc":null},{"commit":"2c27ac46be803b583caf82c1765bd0c35cee8bc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:43:51 2020 -0700","stats":{"files_changed":2,"insertions":2454,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-lR-empty-folder.json","tests/fixtures/osx-10.14.6/ls-lR-empty-folder.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ls-lR-empty-folder.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-lR-empty-folder.out","lines_changed":2453}]},"message":"add ls test fixtures","epoch":1583703831,"epoch_utc":null},{"commit":"caad840153e40dc660a2d5e06a96f3451fef25f9","merge":"aff86ae 65bd7e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:19:37 2020 -0700","message":"Merge pull request #44 from philippeitis/patch-5\n\nMove core magic() logic into seperate function for testability, minor tweaks","epoch":1583702377,"epoch_utc":null},{"commit":"65bd7e2904016141c1ed53cdd437865c66d7628e","merge":"17b6efe c3d7d7d","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Sun Mar 8 14:10:35 2020 -0700","message":"Merge pull request #1 from kellyjonbrazil/pr/44\n\nMerge changes","epoch":1583701835,"epoch_utc":null},{"commit":"c3d7d7db12d4870fc4499e0e3445d85ae89f2aea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:03:08 2020 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"removed whitespace","epoch":1583701388,"epoch_utc":null},{"commit":"56053103625af6fb7fa749fc5bc3dbdc62fc223c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 14:02:54 2020 -0700","stats":{"files_changed":1,"insertions":11,"deletions":4,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":15}]},"message":"added tests, removed os import, changed to 'assertEqual'","epoch":1583701374,"epoch_utc":null},{"commit":"17b6efe82e6a558353b011c543489eaaf3a6d3ac","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Sun Mar 8 13:35:01 2020 -0700","stats":{"files_changed":1,"insertions":14,"deletions":0,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":14}]},"message":"Create basic tests for generate_magic_commands()","epoch":1583699701,"epoch_utc":null},{"commit":"a032ae56ae7d247e00415267b65b2a8b80a3302e","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Sun Mar 8 13:26:15 2020 -0700","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"Pass args to generate_magic_command() to allow testing.","epoch":1583699175,"epoch_utc":null},{"commit":"eab2f4b0566b4c76db661cbfa99a56a6bf8d6541","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Sun Mar 8 13:20:38 2020 -0700","stats":{"files_changed":1,"insertions":33,"deletions":19,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":52}]},"message":"Move core magic() logic into seperate function for testability, minor tweaks.\n\nWe only care about the command when testing magic() - by moving that out, we can easily test the command. I modified the code to return a boolean signalling that the command is valid, and the command itself to maintain the original functionality.\n\nI also made some small tweaks (removed a list() call, fixed a possible bug with no arguments., moved magic_dict instantiation past the fast path checks to avoid making a dict if not needed.)","epoch":1583698838,"epoch_utc":null},{"commit":"aff86ae6c71abfe1cbdba5c574a5f3707292ec19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 8 12:58:26 2020 -0700","stats":{"files_changed":1,"insertions":29,"deletions":39,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":68}]},"message":"reimpliment magic() based on the dictionary approach suggested by philippeitis","epoch":1583697506,"epoch_utc":null},{"commit":"7ece9ddc1a37551cdaaac50f37a48e6d98b18bf4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 7 17:26:42 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"version bump ls","epoch":1583630802,"epoch_utc":null},{"commit":"7cd048e839a7cc8404fd5abc153a3d315c207819","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 7 17:25:10 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update","epoch":1583630710,"epoch_utc":null},{"commit":"1e22f610a33903e8525d35a18b1dcf760a93791e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Mar 7 17:22:08 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"fix for osx - doesn't print 'total xx' line if empty directory (issue #40)","epoch":1583630528,"epoch_utc":null},{"commit":"5249c972ae25e9b289a2667bf471aad5e58c70a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 6 12:09:20 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":4}]},"message":"add to changelog","epoch":1583525360,"epoch_utc":null},{"commit":"fd45f856a050f6c56a7a6b50b97b3d8c4de28af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Mar 6 12:09:09 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":2}]},"message":"import jc.utils instead of jc","epoch":1583525349,"epoch_utc":null},{"commit":"c8ab40cd33b14a3a1937ecf64bb23e282f5bb921","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Mar 5 09:19:58 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"],"file_stats":[{"name":".gitignore","lines_changed":1}]},"message":"ignore .github folder","epoch":1583428798,"epoch_utc":null},{"commit":"b2c872925b37254dac74578c1803b4127f8411c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 19:47:03 2020 -0800","stats":{"files_changed":20,"insertions":208,"deletions":220,"files":["tests/test_ls.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_passwd.py","tests/test_pip_list.py","tests/test_ps.py","tests/test_route.py","tests/test_shadow.py","tests/test_ss.py","tests/test_systemctl_lj.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py","tests/test_who.py","tests/test_xml.py","tests/test_yaml.py"],"file_stats":[{"name":"tests/test_ls.py","lines_changed":132},{"name":"tests/test_lsmod.py","lines_changed":8},{"name":"tests/test_lsof.py","lines_changed":16},{"name":"tests/test_mount.py","lines_changed":16},{"name":"tests/test_netstat.py","lines_changed":40},{"name":"tests/test_passwd.py","lines_changed":12},{"name":"tests/test_pip_list.py","lines_changed":20},{"name":"tests/test_ps.py","lines_changed":32},{"name":"tests/test_route.py","lines_changed":16},{"name":"tests/test_shadow.py","lines_changed":8},{"name":"tests/test_ss.py","lines_changed":8},{"name":"tests/test_systemctl_lj.py","lines_changed":16},{"name":"tests/test_systemctl_ls.py","lines_changed":8},{"name":"tests/test_systemctl_luf.py","lines_changed":8},{"name":"tests/test_uname.py","lines_changed":16},{"name":"tests/test_uptime.py","lines_changed":16},{"name":"tests/test_w.py","lines_changed":16},{"name":"tests/test_who.py","lines_changed":24},{"name":"tests/test_xml.py","lines_changed":8},{"name":"tests/test_yaml.py","lines_changed":8}]},"message":"add utf-8 encoding for testing on Windows","epoch":1583380023,"epoch_utc":null},{"commit":"f48e229202f8ab1ebfa502ca57bb31cf673c7a62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 19:40:32 2020 -0800","stats":{"files_changed":21,"insertions":192,"deletions":192,"files":["tests/test_arp.py","tests/test_blkid.py","tests/test_crontab.py","tests/test_crontab_u.py","tests/test_csv.py","tests/test_df.py","tests/test_dig.py","tests/test_du.py","tests/test_env.py","tests/test_free.py","tests/test_fstab.py","tests/test_group.py","tests/test_gshadow.py","tests/test_history.py","tests/test_hosts.py","tests/test_id.py","tests/test_ifconfig.py","tests/test_ini.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_last.py"],"file_stats":[{"name":"tests/test_arp.py","lines_changed":32},{"name":"tests/test_blkid.py","lines_changed":40},{"name":"tests/test_crontab.py","lines_changed":4},{"name":"tests/test_crontab_u.py","lines_changed":8},{"name":"tests/test_csv.py","lines_changed":36},{"name":"tests/test_df.py","lines_changed":32},{"name":"tests/test_dig.py","lines_changed":24},{"name":"tests/test_du.py","lines_changed":16},{"name":"tests/test_env.py","lines_changed":8},{"name":"tests/test_free.py","lines_changed":16},{"name":"tests/test_fstab.py","lines_changed":8},{"name":"tests/test_group.py","lines_changed":12},{"name":"tests/test_gshadow.py","lines_changed":8},{"name":"tests/test_history.py","lines_changed":8},{"name":"tests/test_hosts.py","lines_changed":8},{"name":"tests/test_id.py","lines_changed":8},{"name":"tests/test_ifconfig.py","lines_changed":24},{"name":"tests/test_ini.py","lines_changed":8},{"name":"tests/test_iptables.py","lines_changed":48},{"name":"tests/test_jobs.py","lines_changed":8},{"name":"tests/test_last.py","lines_changed":28}]},"message":"utf-8 open for windows tests","epoch":1583379632,"epoch_utc":null},{"commit":"799fec92c39b1ff0696c6ebb182c4bef66b86e56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 19:33:45 2020 -0800","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["tests/test_pip_show.py","tests/test_systemctl.py"],"file_stats":[{"name":"tests/test_pip_show.py","lines_changed":16},{"name":"tests/test_systemctl.py","lines_changed":8}]},"message":"utf-8 for windows support","epoch":1583379225,"epoch_utc":null},{"commit":"87a41c2fcaa395f108b5a5126ed77f7cc7fe5d6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 19:30:30 2020 -0800","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["tests/test_lsblk.py","tests/test_stat.py"],"file_stats":[{"name":"tests/test_lsblk.py","lines_changed":16},{"name":"tests/test_stat.py","lines_changed":8}]},"message":"add utf-8 to open function","epoch":1583379030,"epoch_utc":null},{"commit":"7f85de0c46cda95d57b9677ba0ca3ea59690e502","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 19:28:21 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"add windows-latest","epoch":1583378901,"epoch_utc":null},{"commit":"13661b19934a74417713e98e3e1e4df6bb0f29ad","merge":"5f798d6 51d5c38","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 16:54:26 2020 -0800","message":"Merge pull request #37 from philippeitis/continuous_integration\n\nEnable Continuous Integration with GitHub Actions.","epoch":1583369666,"epoch_utc":null},{"commit":"51d5c3892d6ff1e2e6ac7c4f3e496e7d9ed4b6a7","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 16:21:06 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"Remove Windows tests, due to lack of support.","epoch":1583367666,"epoch_utc":null},{"commit":"e4eab4641ac15220f2787c5d27b443ab8c718b86","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 16:17:58 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":3}]},"message":"Change line in blkid.py to trigger CI","epoch":1583367478,"epoch_utc":null},{"commit":"9b148e0ba37e18749d95608e1bac6c090ab83ee2","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 16:16:19 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["requirements.txt"],"file_stats":[{"name":"requirements.txt","lines_changed":3}]},"message":"Add requirements.txt","epoch":1583367379,"epoch_utc":null},{"commit":"de28932650d5027e2781011f1243b89f053b241d","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 16:14:03 2020 -0800","stats":{"files_changed":1,"insertions":7,"deletions":6,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":13}]},"message":"Consolidate dictionary into creation, trigger CI","epoch":1583367243,"epoch_utc":null},{"commit":"5f798d603e461d2de5adf74662ba4d4b121f28f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 16:11:14 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":3}]},"message":"version bump and ack to philippeitis","epoch":1583367074,"epoch_utc":null},{"commit":"a0757b2dd3fc0f3e26622941d93bd909dae0a1f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 16:07:53 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":5,"files":["jc/parsers/foo.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":6}]},"message":"optimize line parsing","epoch":1583366873,"epoch_utc":null},{"commit":"498d51b4e802cb40cac58aae1eff1f723bbbd896","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 16:07:32 2020 -0800","stats":{"files_changed":1,"insertions":31,"deletions":0,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":31}]},"message":"Enable Continuous Integration with GitHub Actions.\n\nThis automatically runs unit tests on various operating systems and Python versions when Python files are modified to ensure that functionality remains correct.","epoch":1583366852,"epoch_utc":null},{"commit":"b06b6bae3f64f591c9075812dc1b632ef6d2da37","merge":"6aa2d5a 0652768","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 16:04:05 2020 -0800","message":"Merge pull request #36 from philippeitis/patch-3\n\nSimplify process() in history.py, avoid list allocation in parse()","epoch":1583366645,"epoch_utc":null},{"commit":"b5eaff21372a58aefb66e5afc5e863db8355fee1","merge":"d75c406 c01bcd3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 15:33:13 2020 -0800","message":"Merge pull request #35 from kellyjonbrazil/revert-34-patch-3\n\nRevert \"Simplify process() in history.py, avoid list allocation in parse()\"","epoch":1583364793,"epoch_utc":null},{"commit":"c01bcd3734382a0c388d9f4041fc888171ca7675","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 15:32:23 2020 -0800","stats":{"files_changed":1,"insertions":25,"deletions":12,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":37}]},"message":"Revert \"Simplify process() in history.py, avoid list allocation in parse()\"","epoch":1583364743,"epoch_utc":null},{"commit":"d75c4068caaf4adbe9a39fa452ae867421053673","merge":"d96b3a6 0652768","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 15:31:55 2020 -0800","message":"Merge pull request #34 from philippeitis/patch-3\n\nSimplify process() in history.py, avoid list allocation in parse()","epoch":1583364715,"epoch_utc":null},{"commit":"6aa2d5a3d26f9f00c3334928f6f0e501860433da","merge":"69576f6 a63408c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 15:28:09 2020 -0800","message":"Merge pull request #33 from philippeitis/patch-2\n\nHandle case where only options are passed.","epoch":1583364489,"epoch_utc":null},{"commit":"065276805f0f2dd23a6382f0120ca07e9eae116f","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 13:35:31 2020 -0800","stats":{"files_changed":1,"insertions":12,"deletions":25,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":37}]},"message":"Simplify process() in history.py, avoid list allocation in parse()","epoch":1583357731,"epoch_utc":null},{"commit":"a63408c8cf3f99646be2b375f651d6cf417f7ae0","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 13:16:35 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"Handle case where only options are passed.","epoch":1583356595,"epoch_utc":null},{"commit":"69576f6bfae073196627a0a39b5ececb8666d25c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 12:03:40 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6}]},"message":"minor sytax fixes","epoch":1583352220,"epoch_utc":null},{"commit":"19845624e2996da4653efc2f312aceb514feaf5c","merge":"d96b3a6 22ff296","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 11:59:29 2020 -0800","message":"Merge pull request #32 from philippeitis/patch-1\n\nSimplify main(), magic() methods.","epoch":1583351969,"epoch_utc":null},{"commit":"22ff2964e9889587711e779ac24f8f8034212f5e","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","date":"Wed Mar 4 10:33:42 2020 -0800","stats":{"files_changed":1,"insertions":62,"deletions":75,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":137}]},"message":"Simplify main(), magic() methods.","epoch":1583346822,"epoch_utc":null},{"commit":"d96b3a65a98bc135d21d4feafc0a43317b5a11fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Mar 4 08:30:52 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1583339452,"epoch_utc":null},{"commit":"4989445ef4bb8919d9b3b95e2fcee77ca7692aec","merge":"53ee2c3 6770892","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 11:46:09 2020 -0800","message":"Merge pull request #30 from kellyjonbrazil/dev\n\nDev v1.8.0","epoch":1583264769,"epoch_utc":null},{"commit":"6770892acd49aced225dbccf39290f33522c9001","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 11:37:59 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add release notes link","epoch":1583264279,"epoch_utc":null},{"commit":"d4eba8740fc325756f3db96ab37a5383540cbeff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 11:08:52 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"release date 3/3","epoch":1583262532,"epoch_utc":null},{"commit":"9f607605605e47990f97ccfd48fde19a14e036e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 10:54:27 2020 -0800","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["tests/test_group.py","tests/test_gshadow.py"],"file_stats":[{"name":"tests/test_group.py","lines_changed":52},{"name":"tests/test_gshadow.py","lines_changed":40}]},"message":"add group and gshadow tests","epoch":1583261667,"epoch_utc":null},{"commit":"0a8f8ac934f040141e6a4eec8cf7170e1ca73294","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:55:43 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"add group and gshadow parsers","epoch":1583258143,"epoch_utc":null},{"commit":"6ae24c82447bcff606e7027dd01b916293b49584","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:55:17 2020 -0800","stats":{"files_changed":10,"insertions":274,"deletions":0,"files":["tests/fixtures/centos-7.7/group.json","tests/fixtures/centos-7.7/group.out","tests/fixtures/centos-7.7/gshadow.json","tests/fixtures/centos-7.7/gshadow.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/group.json","tests/fixtures/osx-10.14.6/group.out","tests/fixtures/ubuntu-18.04/group.json","tests/fixtures/ubuntu-18.04/group.out","tests/fixtures/ubuntu-18.04/gshadow.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/group.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/group.out","lines_changed":39},{"name":"tests/fixtures/centos-7.7/gshadow.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/gshadow.out","lines_changed":39},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":3},{"name":"tests/fixtures/osx-10.14.6/group.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/group.out","lines_changed":135},{"name":"tests/fixtures/ubuntu-18.04/group.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/group.out","lines_changed":53},{"name":"tests/fixtures/ubuntu-18.04/gshadow.json","lines_changed":1}]},"message":"add group and gshadow test fixtures","epoch":1583258117,"epoch_utc":null},{"commit":"d3679082a8c5cff76eb7de67c33fe716a1402182","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:36:16 2020 -0800","stats":{"files_changed":1,"insertions":64,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":64}]},"message":"add group and gshadow parsers","epoch":1583256976,"epoch_utc":null},{"commit":"fb08b42dca135705a3759435335d95c898d47f60","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:32:56 2020 -0800","stats":{"files_changed":2,"insertions":21,"deletions":21,"files":["docs/parsers/group.md","jc/parsers/group.py"],"file_stats":[{"name":"docs/parsers/group.md","lines_changed":18},{"name":"jc/parsers/group.py","lines_changed":24}]},"message":"change 'group_list' to 'members'","epoch":1583256776,"epoch_utc":null},{"commit":"4aeaa9f42a88bf4e05c8780a35cc8c4d83c9b842","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:32:25 2020 -0800","stats":{"files_changed":5,"insertions":316,"deletions":0,"files":["docgen.sh","docs/parsers/gshadow.md","jc/cli.py","jc/parsers/gshadow.py","tests/fixtures/ubuntu-18.04/gshadow.out"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/gshadow.md","lines_changed":109},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/gshadow.py","lines_changed":152},{"name":"tests/fixtures/ubuntu-18.04/gshadow.out","lines_changed":53}]},"message":"add /etc/gshadow parser","epoch":1583256745,"epoch_utc":null},{"commit":"5f5693da048cb4739dc56500c672dc8fbccaaf32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:07:28 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["docs/parsers/csv.md"],"file_stats":[{"name":"docs/parsers/csv.md","lines_changed":3}]},"message":"spelling fix","epoch":1583255248,"epoch_utc":null},{"commit":"5eb0f61727f92a84fb3620e13db072167ef552ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Mar 3 09:07:09 2020 -0800","stats":{"files_changed":4,"insertions":333,"deletions":0,"files":["docgen.sh","docs/parsers/group.md","jc/cli.py","jc/parsers/group.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/group.md","lines_changed":141},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/group.py","lines_changed":190}]},"message":"add /etc/group file parser","epoch":1583255229,"epoch_utc":null},{"commit":"958e998991b1cc61dc1dc341b90cd53f4691cd43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 17:15:05 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/csv.py"],"file_stats":[{"name":"jc/parsers/csv.py","lines_changed":4}]},"message":"formatting","epoch":1583198105,"epoch_utc":null},{"commit":"b78c1509f67fb76d17ac97193a2851d8d9e17f62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 15:06:25 2020 -0800","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/csv.py"],"file_stats":[{"name":"jc/parsers/csv.py","lines_changed":10}]},"message":"try/except dialect detection","epoch":1583190385,"epoch_utc":null},{"commit":"ce184d4d57faa3f1bca5bcaa02da7a5a5d995eb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 15:05:56 2020 -0800","stats":{"files_changed":20,"insertions":24054,"deletions":0,"files":["tests/fixtures/generic/csv-biostats.csv","tests/fixtures/generic/csv-biostats.json","tests/fixtures/generic/csv-cities.csv","tests/fixtures/generic/csv-cities.json","tests/fixtures/generic/csv-deniro.csv","tests/fixtures/generic/csv-deniro.json","tests/fixtures/generic/csv-example.csv","tests/fixtures/generic/csv-example.json","tests/fixtures/generic/csv-flyrna.json","tests/fixtures/generic/csv-flyrna.tsv","tests/fixtures/generic/csv-flyrna2.json","tests/fixtures/generic/csv-flyrna2.tsv","tests/fixtures/generic/csv-homes-pipe.csv","tests/fixtures/generic/csv-homes-pipe.json","tests/fixtures/generic/csv-homes.csv","tests/fixtures/generic/csv-homes.json","tests/fixtures/generic/csv-insurance.csv","tests/fixtures/generic/csv-insurance.json","tests/fixtures/generic/oscar_age_male.csv","tests/test_csv.py"],"file_stats":[{"name":"tests/fixtures/generic/csv-biostats.csv","lines_changed":20},{"name":"tests/fixtures/generic/csv-biostats.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-cities.csv","lines_changed":130},{"name":"tests/fixtures/generic/csv-cities.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-deniro.csv","lines_changed":89},{"name":"tests/fixtures/generic/csv-deniro.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-example.csv","lines_changed":2},{"name":"tests/fixtures/generic/csv-example.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna.tsv","lines_changed":11767},{"name":"tests/fixtures/generic/csv-flyrna2.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna2.tsv","lines_changed":11767},{"name":"tests/fixtures/generic/csv-homes-pipe.csv","lines_changed":3},{"name":"tests/fixtures/generic/csv-homes-pipe.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-homes.csv","lines_changed":51},{"name":"tests/fixtures/generic/csv-homes.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-insurance.csv","lines_changed":1},{"name":"tests/fixtures/generic/csv-insurance.json","lines_changed":1},{"name":"tests/fixtures/generic/oscar_age_male.csv","lines_changed":91},{"name":"tests/test_csv.py","lines_changed":124}]},"message":"add csv parser tests","epoch":1583190356,"epoch_utc":null},{"commit":"b4c3714ced9ee5cc6a7ef0c59a43cf85e1cb9824","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 14:10:15 2020 -0800","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"removed [OPTIONS] PARSER syntax. still works but prefer the PARSER [OPTIONS] syntax for better performance","epoch":1583187015,"epoch_utc":null},{"commit":"5b7dfa043864f1a3f34aa4ef5c6554a2dfe185f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 14:07:56 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"formatting","epoch":1583186876,"epoch_utc":null},{"commit":"391a3884765780497dc34e0e9938ff5032c81291","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 14:07:29 2020 -0800","stats":{"files_changed":2,"insertions":49,"deletions":0,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":48},{"name":"changelog.txt","lines_changed":1}]},"message":"doc update","epoch":1583186849,"epoch_utc":null},{"commit":"d9c4e2ed4c0f908f4b63c2376b53ddfd32a0fae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 14:03:58 2020 -0800","stats":{"files_changed":4,"insertions":241,"deletions":0,"files":["docgen.sh","docs/parsers/csv.md","jc/cli.py","jc/parsers/csv.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/csv.md","lines_changed":104},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/csv.py","lines_changed":135}]},"message":"add csv file parser","epoch":1583186638,"epoch_utc":null},{"commit":"0c42db38b102987629e40cee2716b826161e6e94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 10:30:12 2020 -0800","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/who.md","jc/parsers/who.py"],"file_stats":[{"name":"docs/parsers/who.md","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":2}]},"message":"doc update","epoch":1583173812,"epoch_utc":null},{"commit":"2f9be8bf33f8be5651d06da9d316f7894606df19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 08:32:42 2020 -0800","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"simplify usage","epoch":1583166762,"epoch_utc":null},{"commit":"e8c00155e861b9eedfdf37a22912271bec581d62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Mar 2 07:43:45 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"add -b to warning message","epoch":1583163825,"epoch_utc":null},{"commit":"cc88fdd9ee3951d7ef2aa881cc12f0b7f96aef86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 21:17:50 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"update example","epoch":1583126270,"epoch_utc":null},{"commit":"d9de11ef1d846a9625dad0adb962b864404c90c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 21:16:57 2020 -0800","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":16}]},"message":"add another who example","epoch":1583126217,"epoch_utc":null},{"commit":"0ceda97d0968b67b70cdbb68f7a62657e79c9935","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 19:03:27 2020 -0800","stats":{"files_changed":1,"insertions":88,"deletions":0,"files":["tests/test_who.py"],"file_stats":[{"name":"tests/test_who.py","lines_changed":88}]},"message":"who parser tests","epoch":1583118207,"epoch_utc":null},{"commit":"d0dec92ba84640ddc40da7c6faa6568b76757e04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 18:57:51 2020 -0800","stats":{"files_changed":12,"insertions":36,"deletions":0,"files":["tests/fixtures/centos-7.7/who-a.json","tests/fixtures/centos-7.7/who-a.out","tests/fixtures/centos-7.7/who.json","tests/fixtures/centos-7.7/who.out","tests/fixtures/osx-10.14.6/who-a.json","tests/fixtures/osx-10.14.6/who-a.out","tests/fixtures/osx-10.14.6/who.json","tests/fixtures/osx-10.14.6/who.out","tests/fixtures/ubuntu-18.04/who-a.json","tests/fixtures/ubuntu-18.04/who-a.out","tests/fixtures/ubuntu-18.04/who.json","tests/fixtures/ubuntu-18.04/who.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/who-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/who-a.out","lines_changed":6},{"name":"tests/fixtures/centos-7.7/who.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/who.out","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/who-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/who-a.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/who.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/who.out","lines_changed":4},{"name":"tests/fixtures/ubuntu-18.04/who-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/who-a.out","lines_changed":6},{"name":"tests/fixtures/ubuntu-18.04/who.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/who.out","lines_changed":3}]},"message":"add who test fixtures","epoch":1583117871,"epoch_utc":null},{"commit":"d420c008d8aaa0879fa5a3f236d81acb506376c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 17:52:14 2020 -0800","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/who.py","lines_changed":9}]},"message":"fix for pts lines with no user info","epoch":1583113934,"epoch_utc":null},{"commit":"f0b32db4333477e22cc40de62cf026a6a7aa2eb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 17:39:02 2020 -0800","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","docs/parsers/who.md"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docs/parsers/who.md","lines_changed":8}]},"message":"who doc update","epoch":1583113142,"epoch_utc":null},{"commit":"bc838eda591473d32b11a885e60ef653925739d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 17:38:51 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/who.py","lines_changed":9}]},"message":"fix output for non-extended","epoch":1583113131,"epoch_utc":null},{"commit":"afe55b6af07b74816d33d9555ffaa1c1921dd27a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 17:07:28 2020 -0800","stats":{"files_changed":1,"insertions":46,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":46}]},"message":"add who parser","epoch":1583111248,"epoch_utc":null},{"commit":"dd3a3ac302d7b35beef1181e74aed0faf96fd3e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 17:04:06 2020 -0800","stats":{"files_changed":4,"insertions":255,"deletions":9,"files":["changelog.txt","docgen.sh","docs/parsers/who.md","jc/parsers/who.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/who.md","lines_changed":150},{"name":"jc/parsers/who.py","lines_changed":112}]},"message":"doc update and process pid integers","epoch":1583111046,"epoch_utc":null},{"commit":"f9982a79474c1838f37fc0ff88437980b228d7a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 16:49:52 2020 -0800","stats":{"files_changed":1,"insertions":11,"deletions":2,"files":["jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/who.py","lines_changed":13}]},"message":"fixes for from and comment fields","epoch":1583110192,"epoch_utc":null},{"commit":"07c1be9e9ad9f62cf76c23788152de8f3530ee16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 16:30:04 2020 -0800","stats":{"files_changed":2,"insertions":170,"deletions":0,"files":["jc/cli.py","jc/parsers/who.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/who.py","lines_changed":169}]},"message":"add who command parser","epoch":1583109004,"epoch_utc":null},{"commit":"f832b88755bfbd3878ec402e603180e6825279be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Mar 1 10:17:47 2020 -0800","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["tests/test_passwd.py","tests/test_shadow.py"],"file_stats":[{"name":"tests/test_passwd.py","lines_changed":52},{"name":"tests/test_shadow.py","lines_changed":40}]},"message":"add passwd and shadow tests","epoch":1583086667,"epoch_utc":null},{"commit":"0fac757efca41db062b2f65acc727963c5fb353c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 12:25:41 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"add passwd and shadow parsers","epoch":1583007941,"epoch_utc":null},{"commit":"fc15742065531152f3d5895042eeb806e33a192a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 12:25:22 2020 -0800","stats":{"files_changed":10,"insertions":215,"deletions":0,"files":["tests/fixtures/centos-7.7/passwd.json","tests/fixtures/centos-7.7/passwd.out","tests/fixtures/centos-7.7/shadow.json","tests/fixtures/centos-7.7/shadow.out","tests/fixtures/osx-10.14.6/passwd.json","tests/fixtures/osx-10.14.6/passwd.out","tests/fixtures/ubuntu-18.04/passwd.json","tests/fixtures/ubuntu-18.04/passwd.out","tests/fixtures/ubuntu-18.04/shadow.json","tests/fixtures/ubuntu-18.04/shadow.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/passwd.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/passwd.out","lines_changed":21},{"name":"tests/fixtures/centos-7.7/shadow.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/shadow.out","lines_changed":21},{"name":"tests/fixtures/osx-10.14.6/passwd.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/passwd.out","lines_changed":108},{"name":"tests/fixtures/ubuntu-18.04/passwd.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/passwd.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/shadow.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/shadow.out","lines_changed":30}]},"message":"passwd and shadow test fixtures","epoch":1583007922,"epoch_utc":null},{"commit":"6f2466a1319eaa4256ae7a2a0f23b3ff37882d37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 11:56:12 2020 -0800","stats":{"files_changed":1,"insertions":73,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":73}]},"message":"update readme with /etc/passwd and /etc/shadow file parsers","epoch":1583006172,"epoch_utc":null},{"commit":"4b90e22f0a9c6790bca62c8314945a7ffc6e267b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 11:50:46 2020 -0800","stats":{"files_changed":2,"insertions":137,"deletions":9,"files":["docs/parsers/shadow.md","jc/parsers/shadow.py"],"file_stats":[{"name":"docs/parsers/shadow.md","lines_changed":72},{"name":"jc/parsers/shadow.py","lines_changed":74}]},"message":"doc update","epoch":1583005846,"epoch_utc":null},{"commit":"c4935687853fb3b079ae42614793cdafe68e124e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 11:46:38 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/passwd.md","jc/parsers/passwd.py"],"file_stats":[{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":2}]},"message":"doc fix","epoch":1583005598,"epoch_utc":null},{"commit":"1cdf004b7728901dc137e57b0c8994edfdd6d417","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 11:46:24 2020 -0800","stats":{"files_changed":4,"insertions":190,"deletions":0,"files":["docgen.sh","docs/parsers/shadow.md","jc/cli.py","jc/parsers/shadow.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/shadow.md","lines_changed":69},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/shadow.py","lines_changed":119}]},"message":"add /etc/shadow parser","epoch":1583005584,"epoch_utc":null},{"commit":"a4ea50426184d30cbe849a8f80bfd5c975075c9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 29 11:33:14 2020 -0800","stats":{"files_changed":4,"insertions":303,"deletions":0,"files":["docgen.sh","docs/parsers/passwd.md","jc/cli.py","jc/parsers/passwd.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/passwd.md","lines_changed":126},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/passwd.py","lines_changed":175}]},"message":"add /etc/passwd parser","epoch":1583004794,"epoch_utc":null},{"commit":"4c2c234c3bf68d1aac66bd4d1f22b9f97e99128d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 15:15:24 2020 -0800","stats":{"files_changed":16,"insertions":673,"deletions":0,"files":["tests/fixtures/centos-7.7/last-w.json","tests/fixtures/centos-7.7/last-w.out","tests/fixtures/centos-7.7/last.json","tests/fixtures/centos-7.7/last.out","tests/fixtures/centos-7.7/lastb.json","tests/fixtures/centos-7.7/lastb.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/last.json","tests/fixtures/osx-10.14.6/last.out","tests/fixtures/ubuntu-18.04/last-w.json","tests/fixtures/ubuntu-18.04/last-w.out","tests/fixtures/ubuntu-18.04/last.json","tests/fixtures/ubuntu-18.04/last.out","tests/fixtures/ubuntu-18.04/lastb.json","tests/fixtures/ubuntu-18.04/lastb.out","tests/test_last.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/last-w.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/last-w.out","lines_changed":69},{"name":"tests/fixtures/centos-7.7/last.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/last.out","lines_changed":69},{"name":"tests/fixtures/centos-7.7/lastb.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lastb.out","lines_changed":6},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":4},{"name":"tests/fixtures/osx-10.14.6/last.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/last.out","lines_changed":383},{"name":"tests/fixtures/ubuntu-18.04/last-w.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/last-w.out","lines_changed":16},{"name":"tests/fixtures/ubuntu-18.04/last.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/last.out","lines_changed":16},{"name":"tests/fixtures/ubuntu-18.04/lastb.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lastb.out","lines_changed":3},{"name":"tests/test_last.py","lines_changed":100}]},"message":"add last and lastb tests","epoch":1582931724,"epoch_utc":null},{"commit":"3d4c0f3e89dab6496ff74df350e3238d6625933c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 14:50:29 2020 -0800","stats":{"files_changed":22,"insertions":285,"deletions":0,"files":["tests/fixtures/centos-7.7/blkid-ip-multi.json","tests/fixtures/centos-7.7/blkid-ip-multi.out","tests/fixtures/centos-7.7/blkid-ip-udev-multi.json","tests/fixtures/centos-7.7/blkid-ip-udev-multi.out","tests/fixtures/centos-7.7/blkid-ip-udev.json","tests/fixtures/centos-7.7/blkid-ip-udev.out","tests/fixtures/centos-7.7/blkid-sda2.json","tests/fixtures/centos-7.7/blkid-sda2.out","tests/fixtures/centos-7.7/blkid.json","tests/fixtures/centos-7.7/blkid.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/blkid-ip-multi.json","tests/fixtures/ubuntu-18.04/blkid-ip-multi.out",".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.json",".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.out","tests/fixtures/ubuntu-18.04/blkid-ip-udev.json","tests/fixtures/ubuntu-18.04/blkid-ip-udev.out","tests/fixtures/ubuntu-18.04/blkid-sda2.json","tests/fixtures/ubuntu-18.04/blkid-sda2.out","tests/fixtures/ubuntu-18.04/blkid.json","tests/fixtures/ubuntu-18.04/blkid.out","tests/test_blkid.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/blkid-ip-multi.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid-ip-multi.out","lines_changed":29},{"name":"tests/fixtures/centos-7.7/blkid-ip-udev-multi.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid-ip-udev-multi.out","lines_changed":29},{"name":"tests/fixtures/centos-7.7/blkid-ip-udev.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid-ip-udev.out","lines_changed":14},{"name":"tests/fixtures/centos-7.7/blkid-sda2.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid-sda2.out","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid.out","lines_changed":4},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":6},{"name":"tests/fixtures/ubuntu-18.04/blkid-ip-multi.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid-ip-multi.out","lines_changed":2},{"name":".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.json","lines_changed":1},{"name":".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/blkid-ip-udev.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid-ip-udev.out","lines_changed":12},{"name":"tests/fixtures/ubuntu-18.04/blkid-sda2.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid-sda2.out","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid.out","lines_changed":15},{"name":"tests/test_blkid.py","lines_changed":136}]},"message":"add blkid tests","epoch":1582930229,"epoch_utc":null},{"commit":"52fad02903468c05d2422a340ad8dbcdf18ed475","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 13:31:38 2020 -0800","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":12},{"name":"jc/parsers/ls.py","lines_changed":12}]},"message":"doc update","epoch":1582925498,"epoch_utc":null},{"commit":"9dcabc057c40e345971a08474b5b886e6b60a8de","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 10:57:14 2020 -0800","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":10}]},"message":"support multi device udev output","epoch":1582916234,"epoch_utc":null},{"commit":"db8c1079ddc25922ab6a20d0f71fb19af38f8092","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 09:54:07 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":8}]},"message":"use maxsplit=1 in case there are multiple '=' delimiters","epoch":1582912447,"epoch_utc":null},{"commit":"8f954673abdbbd4d9b9da3eacc61b335b4909f89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 09:07:36 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":5}]},"message":"use shlex split for values within quotations that have spaces","epoch":1582909656,"epoch_utc":null},{"commit":"79522d1c7dd4dec15b75b06dda002752f7d97e36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 08:51:48 2020 -0800","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"doc fixes","epoch":1582908708,"epoch_utc":null},{"commit":"a18bf030794efef125c70a32fe82855e47649b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 28 08:50:35 2020 -0800","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/parsers/last.py","jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":12}]},"message":"use raw strings for regular expressions","epoch":1582908635,"epoch_utc":null},{"commit":"c02b6b5d827d26b43db0a3457124714aa2dbbc98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 21:21:19 2020 -0800","stats":{"files_changed":3,"insertions":81,"deletions":1,"files":["README.md","changelog.txt","setup.py"],"file_stats":[{"name":"README.md","lines_changed":79},{"name":"changelog.txt","lines_changed":1},{"name":"setup.py","lines_changed":2}]},"message":"doc updates","epoch":1582867279,"epoch_utc":null},{"commit":"f99b4232848b0d868804acc4125836bfcf475bba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 21:04:24 2020 -0800","stats":{"files_changed":2,"insertions":134,"deletions":29,"files":["docs/parsers/blkid.md","jc/parsers/blkid.py"],"file_stats":[{"name":"docs/parsers/blkid.md","lines_changed":115},{"name":"jc/parsers/blkid.py","lines_changed":48}]},"message":"doc update","epoch":1582866264,"epoch_utc":null},{"commit":"d7d9d45d4fba89e74f7490c463eb26bf20a5d127","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:59:09 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":2}]},"message":"add missing comma","epoch":1582865949,"epoch_utc":null},{"commit":"90065ec0cdc8c5abc13bc0027f63658dacf3cfb2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:57:22 2020 -0800","stats":{"files_changed":1,"insertions":31,"deletions":26,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":57}]},"message":"add more integers","epoch":1582865842,"epoch_utc":null},{"commit":"51157ebb867a48332c768bf3086614944aebdb62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:49:14 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":4}]},"message":"another devname fix","epoch":1582865354,"epoch_utc":null},{"commit":"96d95c79ca0938e326f55f858f8153df9cb49e44","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:47:07 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":6}]},"message":"devname fix","epoch":1582865227,"epoch_utc":null},{"commit":"e5da34c23306463e8707b15676db0ca53bf66757","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:41:06 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":3}]},"message":"check if devname key exists before renaming","epoch":1582864866,"epoch_utc":null},{"commit":"f09d657f7728242947db3dc63ff6779d08c37866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:36:19 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":5}]},"message":"rename devname to device","epoch":1582864579,"epoch_utc":null},{"commit":"0f4b0189f54dc0b3622cd407c5565e53ea111379","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:31:17 2020 -0800","stats":{"files_changed":1,"insertions":35,"deletions":3,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":38}]},"message":"process integer values","epoch":1582864277,"epoch_utc":null},{"commit":"4666042abb3142e2cfb518db9ffe22d9e608e090","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 20:21:02 2020 -0800","stats":{"files_changed":4,"insertions":216,"deletions":0,"files":["docgen.sh","docs/parsers/blkid.md","jc/cli.py","jc/parsers/blkid.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/blkid.md","lines_changed":83},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/blkid.py","lines_changed":131}]},"message":"add blkid parser","epoch":1582863662,"epoch_utc":null},{"commit":"027d544c2bb778adc0ee9463832f19b10e099a0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 16:08:56 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add last and lastb parser","epoch":1582848536,"epoch_utc":null},{"commit":"f1967d0138d27bde864c2400aa75baa8a39bbfde","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 16:08:39 2020 -0800","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":3}]},"message":"system_boot fix","epoch":1582848519,"epoch_utc":null},{"commit":"c1d896027dd1ce021e048b3e77eab24ff59d08bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 15:58:12 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":3}]},"message":"fix system_boot tty","epoch":1582847892,"epoch_utc":null},{"commit":"5c2d2a66187d32d62b31b7c7f13e502fdb7f9635","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 15:44:36 2020 -0800","stats":{"files_changed":3,"insertions":190,"deletions":6,"files":["docgen.sh","docs/parsers/last.md","jc/parsers/last.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/last.md","lines_changed":118},{"name":"jc/parsers/last.py","lines_changed":77}]},"message":"process function and docs","epoch":1582847076,"epoch_utc":null},{"commit":"997b269b0b7e53a456e2a0bd997ead6c2ae843bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 15:26:09 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":3}]},"message":"btmp fix","epoch":1582845969,"epoch_utc":null},{"commit":"61257e7525c25827cb8057ed5c612e54ea9b9637","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 15:14:43 2020 -0800","stats":{"files_changed":2,"insertions":119,"deletions":1,"files":["jc/cli.py","jc/parsers/last.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/last.py","lines_changed":117}]},"message":"add last and lastb parser","epoch":1582845283,"epoch_utc":null},{"commit":"53ee2c36310cb84390ef96644aee6871769151c9","merge":"2ad3167 8bfa0bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 10:59:14 2020 -0800","message":"Merge pull request #29 from kellyjonbrazil/dev\n\nDev v1.7.5","epoch":1582829954,"epoch_utc":null},{"commit":"8bfa0bddec9ff1c21972019467dcf5738ab3afd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 10:50:05 2020 -0800","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to 1.7.5","epoch":1582829405,"epoch_utc":null},{"commit":"ad61e6bc81177a2add7d052bf1ddec5f1b3f2976","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 10:48:09 2020 -0800","stats":{"files_changed":26,"insertions":598,"deletions":133,"files":["tests/fixtures/centos-7.7/ls-R-newlines.json","tests/fixtures/centos-7.7/ls-R-newlines.out","tests/fixtures/centos-7.7/ls-l-newlines.json","tests/fixtures/centos-7.7/ls-l-newlines.out","tests/fixtures/centos-7.7/ls-lR-newlines.json","tests/fixtures/centos-7.7/ls-lR-newlines.out","tests/fixtures/centos-7.7/ls-newlines.json","tests/fixtures/centos-7.7/ls-newlines.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/ls-R-newlines.json","tests/fixtures/osx-10.14.6/ls-R-newlines.out","tests/fixtures/osx-10.14.6/ls-l-newlines.json","tests/fixtures/osx-10.14.6/ls-l-newlines.out","tests/fixtures/osx-10.14.6/ls-lR-newlines.json","tests/fixtures/osx-10.14.6/ls-lR-newlines.out","tests/fixtures/osx-10.14.6/ls-newlines.json","tests/fixtures/osx-10.14.6/ls-newlines.out","tests/fixtures/ubuntu-18.04/ls-R-newlines.json","tests/fixtures/ubuntu-18.04/ls-R-newlines.out","tests/fixtures/ubuntu-18.04/ls-l-newlines.json","tests/fixtures/ubuntu-18.04/ls-l-newlines.out","tests/fixtures/ubuntu-18.04/ls-lR-newlines.json","tests/fixtures/ubuntu-18.04/ls-lR-newlines.out","tests/fixtures/ubuntu-18.04/ls-newlines.json","tests/fixtures/ubuntu-18.04/ls-newlines.out","tests/test_ls.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ls-R-newlines.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-R-newlines.out","lines_changed":43},{"name":"tests/fixtures/centos-7.7/ls-l-newlines.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-l-newlines.out","lines_changed":34},{"name":"tests/fixtures/centos-7.7/ls-lR-newlines.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-lR-newlines.out","lines_changed":45},{"name":"tests/fixtures/centos-7.7/ls-newlines.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-newlines.out","lines_changed":33},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":15},{"name":"tests/fixtures/osx-10.14.6/ls-R-newlines.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-R-newlines.out","lines_changed":36},{"name":"tests/fixtures/osx-10.14.6/ls-l-newlines.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-l-newlines.out","lines_changed":34},{"name":"tests/fixtures/osx-10.14.6/ls-lR-newlines.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-lR-newlines.out","lines_changed":38},{"name":"tests/fixtures/osx-10.14.6/ls-newlines.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-newlines.out","lines_changed":148},{"name":"tests/fixtures/ubuntu-18.04/ls-R-newlines.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-R-newlines.out","lines_changed":40},{"name":"tests/fixtures/ubuntu-18.04/ls-l-newlines.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-l-newlines.out","lines_changed":34},{"name":"tests/fixtures/ubuntu-18.04/ls-lR-newlines.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-lR-newlines.out","lines_changed":42},{"name":"tests/fixtures/ubuntu-18.04/ls-newlines.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-newlines.out","lines_changed":33},{"name":"tests/test_ls.py","lines_changed":144}]},"message":"add ls tests for filenames with newline characters","epoch":1582829289,"epoch_utc":null},{"commit":"873b5ba8acf599d083d6031b818d5fca83cbca9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 27 09:36:57 2020 -0800","stats":{"files_changed":1,"insertions":27,"deletions":31,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":58}]},"message":"move examples to bottom","epoch":1582825017,"epoch_utc":null},{"commit":"6ae50054e2e8c7ca730013b43062eedc230c0ad4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 20:30:44 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"readme update","epoch":1582605044,"epoch_utc":null},{"commit":"22a35f41bf9c404d3532611f5929143d04b10010","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 17:50:56 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":10}]},"message":"move variables to top","epoch":1582595456,"epoch_utc":null},{"commit":"961696c963215a9dab56113ff89f21a6e9739df6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 17:47:31 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"add a warning if newlines are detected in naked ls","epoch":1582595251,"epoch_utc":null},{"commit":"c7b7f1a5dcf77a1f4c23ef6bbf5683fd1a055f72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 17:24:56 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"fix for files with newlines in naked ls","epoch":1582593896,"epoch_utc":null},{"commit":"b5a0d650b128d8af81bb14dd5d007349529cb66f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 17:01:33 2020 -0800","stats":{"files_changed":1,"insertions":151,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-newlines.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ls-newlines.out","lines_changed":151}]},"message":"ls output with newlines","epoch":1582592493,"epoch_utc":null},{"commit":"573b27946474276592ee7494689ce9a88f5a05f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 17:01:12 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":6}]},"message":"fixup for filenames that start with a newline character","epoch":1582592472,"epoch_utc":null},{"commit":"116e07f1614b4a45eb58ffcfe20b5efa71c473a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 16:38:29 2020 -0800","stats":{"files_changed":1,"insertions":6,"deletions":7,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":13}]},"message":"fixes for multiple consecutive newlines and trailing newlines in filenames","epoch":1582591109,"epoch_utc":null},{"commit":"964868c8aff99edf37b0db41c7d16f8b84ac4704","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 15:19:43 2020 -0800","stats":{"files_changed":2,"insertions":21,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":20}]},"message":"add support for newlines in filenames (only with ls -l)","epoch":1582586383,"epoch_utc":null},{"commit":"c8dac32df8102c2b782e87d55bb95ca2d9490185","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 24 13:05:35 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"readme update","epoch":1582578335,"epoch_utc":null},{"commit":"72a0016bd833699c3819baa899f335f75b8c1943","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 20 15:38:45 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"use link to anchor for Parsers","epoch":1582241925,"epoch_utc":null},{"commit":"2ad316743460bb6620e7ede251e1dc2739b073fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 19 07:12:43 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update doc url","epoch":1582125163,"epoch_utc":null},{"commit":"ddabfaa05c63f886b17e5b4d37cd83fcfdb9b221","merge":"873771d f857523","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 19 07:05:29 2020 -0800","message":"Merge pull request #25 from kellyjonbrazil/dev\n\nDev v1.7.4","epoch":1582124729,"epoch_utc":null},{"commit":"f857523ca756864211b6b18af5a8886e5db200bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 19 07:02:50 2020 -0800","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"bump to version 1.7.4","epoch":1582124570,"epoch_utc":null},{"commit":"00d53858e820f00ba015bc25629100c8e5495221","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 22:57:15 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add note about aliases not being supported","epoch":1582009035,"epoch_utc":null},{"commit":"c008167e660929a91606bb96498cdc113e815f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 22:48:44 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":1},{"name":"jc/parsers/ls.py","lines_changed":1}]},"message":"add time-style=full-iso option to doc","epoch":1582008524,"epoch_utc":null},{"commit":"102344a041e9e0aff8b6d9db1873ba1064f7e895","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 22:32:07 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"formatting","epoch":1582007527,"epoch_utc":null},{"commit":"c865298ef3613fe6ce17f41c15209a69940af1ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 22:29:39 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":3}]},"message":"remove unnecessary enumerate in for loop","epoch":1582007379,"epoch_utc":null},{"commit":"6ac03faf939bcda8930a48a5e832b557813e2129","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 18:58:07 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"Revert \"add ubuntu and centos default ls aliases to magic_commands\"\n\nThis reverts commit 49c2701743706b6cbf0e52b2c7f275e301315189.","epoch":1581994687,"epoch_utc":null},{"commit":"49c2701743706b6cbf0e52b2c7f275e301315189","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 18:55:03 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"add ubuntu and centos default ls aliases to magic_commands","epoch":1581994503,"epoch_utc":null},{"commit":"d1a271b08e64b42be8cec11377b0e18435a0caec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 18:33:55 2020 -0800","stats":{"files_changed":21,"insertions":35333,"deletions":1374,"files":["tests/fixtures/centos-7.7/ls-R.json","tests/fixtures/centos-7.7/ls-R.out","tests/fixtures/centos-7.7/ls-alR.json","tests/fixtures/centos-7.7/ls-alR.out","tests/fixtures/centos-7.7/ls-glob.json","tests/fixtures/centos-7.7/ls-glob.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/ls-R.json","tests/fixtures/osx-10.14.6/ls-R.out","tests/fixtures/osx-10.14.6/ls-alR.json","tests/fixtures/osx-10.14.6/ls-alR.out","tests/fixtures/osx-10.14.6/ls-glob.json","tests/fixtures/osx-10.14.6/ls-glob.out","tests/fixtures/ubuntu-18.04/ls-R.json","tests/fixtures/ubuntu-18.04/ls-R.out","tests/fixtures/ubuntu-18.04/ls-alR.json","tests/fixtures/ubuntu-18.04/ls-alR.out","tests/fixtures/ubuntu-18.04/ls-glob.json","tests/fixtures/ubuntu-18.04/ls-glob.out","tests/fixtures/ubuntu-18.04/ls-lR.out","tests/test_ls.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ls-R.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-R.out","lines_changed":5089},{"name":"tests/fixtures/centos-7.7/ls-alR.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-alR.out","lines_changed":4997},{"name":"tests/fixtures/centos-7.7/ls-glob.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-glob.out","lines_changed":1919},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":5},{"name":"tests/fixtures/osx-10.14.6/ls-R.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-R.out","lines_changed":5018},{"name":"tests/fixtures/osx-10.14.6/ls-alR.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-alR.out","lines_changed":4997},{"name":"tests/fixtures/osx-10.14.6/ls-glob.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-glob.out","lines_changed":1831},{"name":"tests/fixtures/ubuntu-18.04/ls-R.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-R.out","lines_changed":5639},{"name":"tests/fixtures/ubuntu-18.04/ls-alR.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-alR.out","lines_changed":5026},{"name":"tests/fixtures/ubuntu-18.04/ls-glob.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-glob.out","lines_changed":1357},{"name":"tests/fixtures/ubuntu-18.04/ls-lR.out","lines_changed":712},{"name":"tests/test_ls.py","lines_changed":108}]},"message":"add new ls tests for recursive and multiple directories with glob","epoch":1581993235,"epoch_utc":null},{"commit":"7388ad19b9d252d3e66659e4bc37171cef2a9748","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 17:31:15 2020 -0800","stats":{"files_changed":4,"insertions":6,"deletions":4,"files":["docs/parsers/ls.md","jc/cli.py","jc/parsers/ls.py","setup.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"setup.py","lines_changed":2}]},"message":"bump to v1.8.0","epoch":1581989475,"epoch_utc":null},{"commit":"2e63cb5fadd032c7cb54a618e8b374ee853abcca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 17:16:34 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"version bump ls to 1.1","epoch":1581988594,"epoch_utc":null},{"commit":"e7f14d02b12c7dcba309f2d28a0f171769d1ba37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 17:14:27 2020 -0800","stats":{"files_changed":3,"insertions":1438,"deletions":8,"files":["jc/parsers/ls.py","tests/fixtures/ubuntu-18.04/ls-R.out","tests/fixtures/ubuntu-18.04/ls-lR.out"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":48},{"name":"tests/fixtures/ubuntu-18.04/ls-R.out","lines_changed":686},{"name":"tests/fixtures/ubuntu-18.04/ls-lR.out","lines_changed":712}]},"message":"update ls to allow multi directory (glob and -R). Adds 'parent' key if found","epoch":1581988467,"epoch_utc":null},{"commit":"873771d05ab0b77163c95d2c37e11edf38451832","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 17 09:16:32 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting","epoch":1581959792,"epoch_utc":null},{"commit":"d7de122e36e0698e00f321fbac8dc0b543cf9e8a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 14 09:44:24 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"prettify link","epoch":1581702264,"epoch_utc":null},{"commit":"4ef0434f536c6658ddc2b48a3db113df2fd26000","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Feb 14 09:43:02 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":6}]},"message":"formatting update","epoch":1581702182,"epoch_utc":null},{"commit":"1aa2c9925996f2358b6272547db755ec3098a8a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 22:10:22 2020 -0800","stats":{"files_changed":2,"insertions":1,"deletions":2,"files":["README.md","jc/parsers/history.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":1}]},"message":"removed history from magic syntax","epoch":1581660622,"epoch_utc":null},{"commit":"c2450b27b079b02ed3f4ece9e36547f01cd4b139","merge":"028e136 14d6d8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 21:26:18 2020 -0500","message":"Merge pull request #22 from kellyjonbrazil/dev\n\nDev 1.7.3","epoch":1581657978,"epoch_utc":null},{"commit":"14d6d8b84f0ddeff984aff486e2e697a91ac6fb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 18:24:53 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump to 1.7.3","epoch":1581647093,"epoch_utc":null},{"commit":"f0e3846c038ec5507cd4a19980d83ee0fb969ef5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 18:20:22 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":5}]},"message":"formatting","epoch":1581646822,"epoch_utc":null},{"commit":"6ba64f1128373843b068226424a3af545ac9d22c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 18:19:19 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"usage update","epoch":1581646759,"epoch_utc":null},{"commit":"13bcdbc6c9a81bc5d52fe7a84e6a0a34908db8bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 17:50:51 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"doc update","epoch":1581645051,"epoch_utc":null},{"commit":"cfba62db20674d788601354211a10e2b1675a0c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 17:48:21 2020 -0800","stats":{"files_changed":1,"insertions":13,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":19}]},"message":"correct parser search in magic()","epoch":1581644901,"epoch_utc":null},{"commit":"18fb69e36e303a3f9530dcb80354b25bfdbb931d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 17:29:45 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"docs/parsers link","epoch":1581643785,"epoch_utc":null},{"commit":"474eb0f3fdeaa612e189d745b12a5ed9c6e0a31b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 17:24:10 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"doc updates","epoch":1581643450,"epoch_utc":null},{"commit":"7f47b533701e60449351d5da03cd5960e0dec9ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 17:20:00 2020 -0800","stats":{"files_changed":1,"insertions":90,"deletions":68,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":158}]},"message":"add alternate magic syntax","epoch":1581643200,"epoch_utc":null},{"commit":"dc2907d3ce101043b30bcce71abb4bb02897f43a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 16:58:25 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["docs/parsers/crontab.md"],"file_stats":[{"name":"docs/parsers/crontab.md","lines_changed":6}]},"message":"doc update","epoch":1581641905,"epoch_utc":null},{"commit":"1af85811e06c489051c456918284a746ce12c692","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 16:57:57 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/fstab.py"],"file_stats":[{"name":"jc/parsers/fstab.py","lines_changed":3}]},"message":"remove magic_command info","epoch":1581641877,"epoch_utc":null},{"commit":"1c1b19a478fe5c356a93cd165518429e77fcbdf0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 16:57:30 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":6}]},"message":"doc update","epoch":1581641850,"epoch_utc":null},{"commit":"66942d64babf932faeb887eb4ec0cab32829321a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 16:56:48 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":4}]},"message":"changelog update","epoch":1581641808,"epoch_utc":null},{"commit":"2fb6ae08d76e7a5727b2fcdd5def3e3822e0cf72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 12:17:41 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"fix shlex usage","epoch":1581625061,"epoch_utc":null},{"commit":"bf8811e03e2a5b736f4c084f42400fcde400ff3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 10:25:41 2020 -0500","stats":{"files_changed":1,"insertions":6,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]},"message":"add comments","epoch":1581618341,"epoch_utc":null},{"commit":"c8b502c571d3081ca3086e349a426ca252a3bb84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 10:14:32 2020 -0500","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6}]},"message":"remove unnecessary join and add comments","epoch":1581617672,"epoch_utc":null},{"commit":"81c11a975c6ee66a1f83350df8b065a6b07dcc9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 10:08:43 2020 -0500","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"added docstrings","epoch":1581617323,"epoch_utc":null},{"commit":"0d370eb403ab4d9ed11e36776efc08bdd3505c1a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 10:03:11 2020 -0500","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"doc update","epoch":1581616991,"epoch_utc":null},{"commit":"7492c3f1e312cdb0c58c2077db0d60d2cab1e58f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 09:48:42 2020 -0500","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"changelog update","epoch":1581616122,"epoch_utc":null},{"commit":"515a8a84b79c9bf6f3001d3c52faa82a6709b8d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 09:47:40 2020 -0500","stats":{"files_changed":33,"insertions":33,"deletions":33,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2}]},"message":"add \"command\" to description","epoch":1581616060,"epoch_utc":null},{"commit":"dd6680efb2b15bb8ed676016aae1c65193dfe147","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Feb 13 09:47:16 2020 -0500","stats":{"files_changed":2,"insertions":29,"deletions":14,"files":["changelog.txt","jc/cli.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":40}]},"message":"allow condensed options (-prdq is equivalent to -p -r -d -q)","epoch":1581616036,"epoch_utc":null},{"commit":"a7158373cd225685f5c398fa36b8d5208e20521c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 12 00:16:17 2020 -0500","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"comment update","epoch":1581495377,"epoch_utc":null},{"commit":"6d50ec71997cac9c898737de93b8a945f0351e53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 12 00:11:48 2020 -0500","stats":{"files_changed":1,"insertions":9,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":15}]},"message":"add try/except to fix bare jc command condition","epoch":1581495108,"epoch_utc":null},{"commit":"95dbf98e8e03486f74d986683f52699f4f9c9577","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 11 19:14:51 2020 -0800","stats":{"files_changed":1,"insertions":26,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":32}]},"message":"allow options in magic syntax","epoch":1581477291,"epoch_utc":null},{"commit":"d49323e4ebf2a8aebd1d8ea65ef0854ee8bcb29f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 11 18:09:21 2020 -0800","stats":{"files_changed":33,"insertions":33,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":1},{"name":"jc/parsers/crontab.py","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":1},{"name":"jc/parsers/du.py","lines_changed":1},{"name":"jc/parsers/env.py","lines_changed":1},{"name":"jc/parsers/foo.py","lines_changed":1},{"name":"jc/parsers/free.py","lines_changed":1},{"name":"jc/parsers/fstab.py","lines_changed":1},{"name":"jc/parsers/history.py","lines_changed":1},{"name":"jc/parsers/id.py","lines_changed":1},{"name":"jc/parsers/ifconfig.py","lines_changed":1},{"name":"jc/parsers/iptables.py","lines_changed":1},{"name":"jc/parsers/jobs.py","lines_changed":1},{"name":"jc/parsers/ls.py","lines_changed":1},{"name":"jc/parsers/lsblk.py","lines_changed":1},{"name":"jc/parsers/lsmod.py","lines_changed":1},{"name":"jc/parsers/lsof.py","lines_changed":1},{"name":"jc/parsers/mount.py","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":1},{"name":"jc/parsers/pip_list.py","lines_changed":1},{"name":"jc/parsers/pip_show.py","lines_changed":1},{"name":"jc/parsers/ps.py","lines_changed":1},{"name":"jc/parsers/route.py","lines_changed":1},{"name":"jc/parsers/ss.py","lines_changed":1},{"name":"jc/parsers/stat.py","lines_changed":1},{"name":"jc/parsers/systemctl.py","lines_changed":1},{"name":"jc/parsers/systemctl_lj.py","lines_changed":1},{"name":"jc/parsers/systemctl_ls.py","lines_changed":1},{"name":"jc/parsers/systemctl_luf.py","lines_changed":1},{"name":"jc/parsers/uname.py","lines_changed":1},{"name":"jc/parsers/uptime.py","lines_changed":1},{"name":"jc/parsers/w.py","lines_changed":1}]},"message":"add magic_commands list to info","epoch":1581473361,"epoch_utc":null},{"commit":"08c1e2aec9d6bb68653dc12ba2272535fb7cef09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 11 18:08:59 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add magic syntax","epoch":1581473339,"epoch_utc":null},{"commit":"a2c137df2e6d3b133df5df0bb3f9b1ca69990557","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 11 18:08:37 2020 -0800","stats":{"files_changed":2,"insertions":66,"deletions":299,"files":["jc/cli.py","jc/cli.py.old"],"file_stats":[{"name":"jc/cli.py","lines_changed":135},{"name":"jc/cli.py.old","lines_changed":230}]},"message":"better magic command syntax logic using introspection information from parser modules","epoch":1581473317,"epoch_utc":null},{"commit":"fe27dcdb8f72b5a288f978b87be2eb930099543e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 11 12:16:23 2020 -0800","stats":{"files_changed":2,"insertions":319,"deletions":45,"files":["jc/cli.py","jc/cli.py.old"],"file_stats":[{"name":"jc/cli.py","lines_changed":134},{"name":"jc/cli.py.old","lines_changed":230}]},"message":"proof of concept for magic syntax (e.g. jc ls -al)","epoch":1581452183,"epoch_utc":null},{"commit":"028e136161ac15f588845f87907b4565a6ee7be2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 8 12:46:42 2020 -0800","stats":{"files_changed":4,"insertions":7,"deletions":2,"files":["MANIFEST.in","changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"MANIFEST.in","lines_changed":1},{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":3}]},"message":"bump to 1.7.2: add test fixtures to package","epoch":1581194802,"epoch_utc":null},{"commit":"9a85a0a4d504447b32fb622bb17cebc5e47f687f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Feb 8 12:46:14 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/crontab_u.md","jc/parsers/crontab_u.py"],"file_stats":[{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2}]},"message":"fix doc","epoch":1581194774,"epoch_utc":null},{"commit":"3a1cbc4d5063344c3e3a4bf510d651a36beedfb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 22:26:47 2020 -0800","stats":{"files_changed":1,"insertions":14,"deletions":14,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":28}]},"message":"move info class to top","epoch":1580970407,"epoch_utc":null},{"commit":"77d334f7f386f79ec0571325500054fdab207f31","merge":"4de8f42 53cdf86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:59:52 2020 -0800","message":"Merge pull request #19 from kellyjonbrazil/dev-1.7.1\n\nDev v1.7.1","epoch":1580950792,"epoch_utc":null},{"commit":"53cdf863acc72dbdb671773e30277f42e9eadc0e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:53:17 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":4}]},"message":"changelog update","epoch":1580950397,"epoch_utc":null},{"commit":"7b7e7fe0fe92edef1e559bd7ae8272530d7ed5c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:50:55 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"changelog update","epoch":1580950255,"epoch_utc":null},{"commit":"0c03132847a3d2bcbdb0b743e1472865916cced4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:18:58 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"fix error codes using sys.exit()","epoch":1580948338,"epoch_utc":null},{"commit":"3b81f7e2a1381958b33962d4531f3fa223c6a83e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:12:09 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"exit code on ctrl-c exit","epoch":1580947929,"epoch_utc":null},{"commit":"3d76437b435660e92633c604c4ad32ee0500a28b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:00:23 2020 -0800","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ini.md","docs/parsers/xml.md","jc/parsers/ini.py","jc/parsers/xml.py"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/xml.py","lines_changed":2}]},"message":"doc fix","epoch":1580947223,"epoch_utc":null},{"commit":"4bc54c78cea48682ed0432ea56460a26a0e52f83","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 16:00:10 2020 -0800","stats":{"files_changed":4,"insertions":7,"deletions":7,"files":["docs/parsers/du.md","docs/parsers/history.md","jc/parsers/du.py","jc/parsers/history.py"],"file_stats":[{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":6},{"name":"jc/parsers/history.py","lines_changed":4}]},"message":"fix compatibility list","epoch":1580947210,"epoch_utc":null},{"commit":"3d303a96b9f6d582b1e99a632da539c3bee4df7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 15:52:39 2020 -0800","stats":{"files_changed":5,"insertions":16,"deletions":2,"files":["tests/fixtures/centos-7.7/crontab-u.json","tests/fixtures/centos-7.7/{crontab2.out => crontab-u.out}","tests/fixtures/centos-7.7/crontab.json","tests/fixtures/ubuntu-18.04/crontab-u.json","tests/test_crontab_u.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/crontab-u.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/{crontab2.out => crontab-u.out}","lines_changed":1},{"name":"tests/fixtures/centos-7.7/crontab.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/crontab-u.json","lines_changed":2},{"name":"tests/test_crontab_u.py","lines_changed":12}]},"message":"crontab bug fix and tests","epoch":1580946759,"epoch_utc":null},{"commit":"33c99d031d18e52a8ca85dfc1a8cba0acebfc3bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 15:12:59 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":2}]},"message":"fix line clobbering bug","epoch":1580944379,"epoch_utc":null},{"commit":"caf7e9f69a22f3c9b3d4624fd2238d6e54d932ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 15:11:51 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/crontab_u.py"],"file_stats":[{"name":"jc/parsers/crontab_u.py","lines_changed":6}]},"message":"fix line clobbering bug and add user field to shortcuts","epoch":1580944311,"epoch_utc":null},{"commit":"9449f1f5d5e7bc075549549758af5cc3a6c4524f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 14:44:49 2020 -0800","stats":{"files_changed":4,"insertions":9,"deletions":3,"files":["changelog.txt","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/fixtures/centos-7.7/crontab2.out"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/crontab.py","lines_changed":4},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/crontab2.out","lines_changed":5}]},"message":"crontab bugfix: inserting header row was clobbering the first data row","epoch":1580942689,"epoch_utc":null},{"commit":"6bad164b5e2a5b7c7ce82c69b6c091fc079ab2fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 14:10:22 2020 -0800","stats":{"files_changed":1,"insertions":7,"deletions":9,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":16}]},"message":"simplify by removing unnecessary getattr calls","epoch":1580940622,"epoch_utc":null},{"commit":"bb5ba7ddb146821db2efe095b6de5ae5b72bb335","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 13:57:34 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":7}]},"message":"add indent variable to helptext","epoch":1580939854,"epoch_utc":null},{"commit":"8b2e01d5404649e8f94c81ca3b5fa05fe8962220","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 13:50:12 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"doc update","epoch":1580939412,"epoch_utc":null},{"commit":"ff1159b1deb9b870382a6066166961902679b569","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 11:45:17 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"exit codes on error","epoch":1580931917,"epoch_utc":null},{"commit":"a2fd3202a0a3df336792f167c546ea3e53ea2332","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 11:34:33 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/pip_list.py","jc/parsers/pip_show.py"],"file_stats":[{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2}]},"message":"description formatting change","epoch":1580931273,"epoch_utc":null},{"commit":"7b53715b91787a8885d61ddc0079c7ee8f9348a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 11:08:58 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/crontab_u.py"],"file_stats":[{"name":"jc/parsers/crontab_u.py","lines_changed":2}]},"message":"change description","epoch":1580929738,"epoch_utc":null},{"commit":"e05fc0a5107b348af14ff4bea39d274939fab7dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 11:08:47 2020 -0800","stats":{"files_changed":1,"insertions":8,"deletions":8,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":16}]},"message":"change padding of helptext","epoch":1580929727,"epoch_utc":null},{"commit":"43604c33f654b8c19e8cce387ebbf31bd598b73b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 10:59:51 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"doc update","epoch":1580929191,"epoch_utc":null},{"commit":"eb67c484ff2a9530b434cd6a90c160f6936e1de7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 10:58:26 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"add crontab-u to parsers list","epoch":1580929106,"epoch_utc":null},{"commit":"a7b7bdd46781d07e6e70d74a41a3944855fde5fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Feb 5 10:55:08 2020 -0800","stats":{"files_changed":1,"insertions":94,"deletions":92,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":186}]},"message":"load parser modules 'just in time' so we don't need to load all modules at startup","epoch":1580928908,"epoch_utc":null},{"commit":"ab06989a18faf5378f1e73c7016ea02e1218ff9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:46:52 2020 -0800","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":10}]},"message":"description updates","epoch":1580881612,"epoch_utc":null},{"commit":"657b722f947b6a0aa7e52a786e4c84f177e9a5c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:44:10 2020 -0800","stats":{"files_changed":4,"insertions":8,"deletions":8,"files":["README.md","changelog.txt","docs/parsers/ini.md","jc/parsers/ini.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"changelog.txt","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"jc/parsers/ini.py","lines_changed":6}]},"message":"ini to INI","epoch":1580881450,"epoch_utc":null},{"commit":"dd2aecad2787186b3962723086bb7e13eff4874f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:37:07 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"description update","epoch":1580881027,"epoch_utc":null},{"commit":"c82c5c5c648384eb5a54205ba8590624a3ab4375","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:34:57 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":6}]},"message":"changelog update","epoch":1580880897,"epoch_utc":null},{"commit":"a1761cd68f91e2668d8d7e2fa7774f6496408be6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:25:33 2020 -0800","stats":{"files_changed":3,"insertions":42,"deletions":0,"files":["tests/fixtures/centos-7.7/id.json","tests/fixtures/osx-10.14.6/id.json","tests/test_id.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/id.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/id.json","lines_changed":1},{"name":"tests/test_id.py","lines_changed":40}]},"message":"id tests","epoch":1580880333,"epoch_utc":null},{"commit":"d618a7f583629bb7a7fc0854e7349cab07e3e003","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:17:03 2020 -0800","stats":{"files_changed":4,"insertions":143,"deletions":9,"files":["README.md","docgen.sh","docs/parsers/id.md","jc/parsers/id.py"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/id.md","lines_changed":133},{"name":"jc/parsers/id.py","lines_changed":12}]},"message":"doc update","epoch":1580879823,"epoch_utc":null},{"commit":"831a42f66096f5efbbf0f6882970c328120f9c9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:12:32 2020 -0800","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":48}]},"message":"id formatting","epoch":1580879552,"epoch_utc":null},{"commit":"3b36022e5a1056a28a83494b1ab8fab209399c2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 21:09:42 2020 -0800","stats":{"files_changed":5,"insertions":250,"deletions":1,"files":["README.md","jc/cli.py","jc/parsers/id.py","tests/fixtures/centos-7.7/id.out","tests/fixtures/osx-10.14.6/id.out"],"file_stats":[{"name":"README.md","lines_changed":33},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":214},{"name":"tests/fixtures/centos-7.7/id.out","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/id.out","lines_changed":1}]},"message":"add id parser","epoch":1580879382,"epoch_utc":null},{"commit":"d01dfa25f10f82cd201ae7b4c9cc18313773f8d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 15:22:36 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]},"message":"changelog updates","epoch":1580858556,"epoch_utc":null},{"commit":"395a99037b4816eb800b289f90372a9b8d7d36cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:36:03 2020 -0800","stats":{"files_changed":3,"insertions":89,"deletions":13,"files":["README.md","docs/parsers/history.md","jc/parsers/history.py"],"file_stats":[{"name":"README.md","lines_changed":84},{"name":"docs/parsers/history.md","lines_changed":10},{"name":"jc/parsers/history.py","lines_changed":8}]},"message":"crontab-u and history doc updates","epoch":1580855763,"epoch_utc":null},{"commit":"025986c51d2d4869b17de63a7dd96efa2988e3c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:31:28 2020 -0800","stats":{"files_changed":3,"insertions":13,"deletions":3,"files":["jc/parsers/history.py","tests/fixtures/centos-7.7/history.json","tests/fixtures/ubuntu-18.04/history.json"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":12},{"name":"tests/fixtures/centos-7.7/history.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/history.json","lines_changed":2}]},"message":"change history 'line' to integer","epoch":1580855488,"epoch_utc":null},{"commit":"c56b83093ff05f55ef4643c1731cff61d4b9e8ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:19:33 2020 -0800","stats":{"files_changed":3,"insertions":202,"deletions":2,"files":["docgen.sh","docs/parsers/crontab.md","docs/parsers/crontab_u.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"docs/parsers/crontab_u.md","lines_changed":199}]},"message":"doc update","epoch":1580854773,"epoch_utc":null},{"commit":"7c712a4133abd843d4da926e4c8d548abd1d6fa3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:18:14 2020 -0800","stats":{"files_changed":1,"insertions":52,"deletions":50,"files":["jc/parsers/crontab_u.py"],"file_stats":[{"name":"jc/parsers/crontab_u.py","lines_changed":102}]},"message":"doc update","epoch":1580854694,"epoch_utc":null},{"commit":"9a0cfe6dfa4888f435d35bd2d35126d031a556d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:18:01 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":4}]},"message":"minor formatting","epoch":1580854681,"epoch_utc":null},{"commit":"a116cdbcec1b27192dd0f9f4707629353edb3caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:11:34 2020 -0800","stats":{"files_changed":5,"insertions":29,"deletions":13,"files":["tests/fixtures/ubuntu-18.04/crontab-u.json",".../ubuntu-18.04/{crontab.out => crontab-u.out}","tests/fixtures/ubuntu-18.04/crontab.json","tests/test_crontab.py","tests/test_crontab_u.py"],"file_stats":[{"name":"tests/fixtures/ubuntu-18.04/crontab-u.json","lines_changed":1},{"name":".../ubuntu-18.04/{crontab.out => crontab-u.out}","lines_changed":0},{"name":"tests/fixtures/ubuntu-18.04/crontab.json","lines_changed":1},{"name":"tests/test_crontab.py","lines_changed":12},{"name":"tests/test_crontab_u.py","lines_changed":28}]},"message":"tests for crontab-u","epoch":1580854294,"epoch_utc":null},{"commit":"f2d616c98e049cdac5d667e63723f92110419a1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 14:02:27 2020 -0800","stats":{"files_changed":3,"insertions":272,"deletions":0,"files":["changelog.txt","jc/cli.py","jc/parsers/crontab_u.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":269}]},"message":"add crontab with user parser","epoch":1580853747,"epoch_utc":null},{"commit":"42cbd1777dbacc614d75f67f3f9156f72be46532","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 13:53:45 2020 -0800","stats":{"files_changed":2,"insertions":80,"deletions":0,"files":["tests/test_xml.py","tests/test_yaml.py"],"file_stats":[{"name":"tests/test_xml.py","lines_changed":40},{"name":"tests/test_yaml.py","lines_changed":40}]},"message":"add xml and yaml tests","epoch":1580853225,"epoch_utc":null},{"commit":"ebf375aac0473249cfd212068f6e6e33cc42449a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 12:18:31 2020 -0800","stats":{"files_changed":1,"insertions":40,"deletions":0,"files":["tests/test_ini.py"],"file_stats":[{"name":"tests/test_ini.py","lines_changed":40}]},"message":"add ini tests","epoch":1580847511,"epoch_utc":null},{"commit":"1f9050267eeb870c4c0f50000fc32985c4d8535b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 12:02:18 2020 -0800","stats":{"files_changed":12,"insertions":586,"deletions":0,"files":["tests/fixtures/generic/ini-iptelserver.ini","tests/fixtures/generic/ini-iptelserver.json","tests/fixtures/generic/ini-test.ini","tests/fixtures/generic/ini-test.json","tests/fixtures/generic/xml-cd_catalog.json","tests/fixtures/generic/xml-cd_catalog.xml","tests/fixtures/generic/xml-foodmenu.json","tests/fixtures/generic/xml-foodmenu.xml","tests/fixtures/generic/yaml-istio-sc.json","tests/fixtures/generic/yaml-istio-sc.yaml","tests/fixtures/generic/yaml-istio-sidecar.json","tests/fixtures/generic/yaml-istio-sidecar.yaml"],"file_stats":[{"name":"tests/fixtures/generic/ini-iptelserver.ini","lines_changed":133},{"name":"tests/fixtures/generic/ini-iptelserver.json","lines_changed":1},{"name":"tests/fixtures/generic/ini-test.ini","lines_changed":12},{"name":"tests/fixtures/generic/ini-test.json","lines_changed":1},{"name":"tests/fixtures/generic/xml-cd_catalog.json","lines_changed":1},{"name":"tests/fixtures/generic/xml-cd_catalog.xml","lines_changed":211},{"name":"tests/fixtures/generic/xml-foodmenu.json","lines_changed":1},{"name":"tests/fixtures/generic/xml-foodmenu.xml","lines_changed":33},{"name":"tests/fixtures/generic/yaml-istio-sc.json","lines_changed":1},{"name":"tests/fixtures/generic/yaml-istio-sc.yaml","lines_changed":17},{"name":"tests/fixtures/generic/yaml-istio-sidecar.json","lines_changed":1},{"name":"tests/fixtures/generic/yaml-istio-sidecar.yaml","lines_changed":174}]},"message":"add ini, xml, and yaml test files","epoch":1580846538,"epoch_utc":null},{"commit":"d7f9707a1521719ce051140b1a0b4ced7c5114c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 11:18:32 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/ini.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"minor formatting","epoch":1580843912,"epoch_utc":null},{"commit":"ab589ee3ed09b9d5e09d8c046f3a64cd2bd14c98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Feb 4 11:18:15 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"add __version__ variable","epoch":1580843895,"epoch_utc":null},{"commit":"c84ec0361fc4c877c698378b28ff9e8b502793b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 22:25:30 2020 -0800","stats":{"files_changed":4,"insertions":105,"deletions":3,"files":["README.md","docgen.sh","docs/parsers/xml.md","jc/parsers/xml.py"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/xml.md","lines_changed":99},{"name":"jc/parsers/xml.py","lines_changed":5}]},"message":"xml example update","epoch":1580797530,"epoch_utc":null},{"commit":"47d2f8968a8a9b68fc9fff45985f5e69f1a5cc40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 22:21:40 2020 -0800","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"changelog.txt","lines_changed":1}]},"message":"doc update","epoch":1580797300,"epoch_utc":null},{"commit":"019c480bcce7fe3821b75906fc673ce7bb1ffadc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 22:17:13 2020 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"update acknowledgments","epoch":1580797033,"epoch_utc":null},{"commit":"547c6d3d5956984d3c4fb5c2a1b76a595752b467","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 22:13:06 2020 -0800","stats":{"files_changed":5,"insertions":172,"deletions":2,"files":["README.md","changelog.txt","jc/cli.py","jc/parsers/xml.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":46},{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/xml.py","lines_changed":119},{"name":"setup.py","lines_changed":3}]},"message":"add xml parser","epoch":1580796786,"epoch_utc":null},{"commit":"b5ebf8b76afcd0e0190994048fe1f5b53f654451","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 21:41:53 2020 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add ruamel.yaml ack","epoch":1580794913,"epoch_utc":null},{"commit":"c690e328f23a69f592dfaaa949b74ba2190ad376","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 21:38:21 2020 -0800","stats":{"files_changed":2,"insertions":102,"deletions":14,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/yaml.md","lines_changed":58},{"name":"jc/parsers/yaml.py","lines_changed":58}]},"message":"add examples","epoch":1580794701,"epoch_utc":null},{"commit":"cbb92c1a9517234806f1c54398a69645b6f43669","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 21:38:08 2020 -0800","stats":{"files_changed":1,"insertions":94,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":94}]},"message":"add ini and yaml","epoch":1580794688,"epoch_utc":null},{"commit":"beb41997c9b3797e73a678ec1bcddcfb83b5ef0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 21:28:11 2020 -0800","stats":{"files_changed":3,"insertions":91,"deletions":2,"files":["docgen.sh","docs/parsers/ini.md","jc/parsers/ini.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ini.md","lines_changed":87},{"name":"jc/parsers/ini.py","lines_changed":5}]},"message":"doc update","epoch":1580794091,"epoch_utc":null},{"commit":"755a6faf1110f150fe2261b81439b7d17a9b424e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 21:22:30 2020 -0800","stats":{"files_changed":1,"insertions":4,"deletions":8,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":12}]},"message":"clean up multi-document support","epoch":1580793750,"epoch_utc":null},{"commit":"021f8350a31a49ecc539f02576303600b222b49d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 19:11:36 2020 -0800","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":4}]},"message":"update doc","epoch":1580785896,"epoch_utc":null},{"commit":"76583dcd2f5ef32e58ca87149154563b07e061cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 19:07:31 2020 -0800","stats":{"files_changed":2,"insertions":113,"deletions":0,"files":["jc/cli.py","jc/parsers/ini.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/ini.py","lines_changed":111}]},"message":"add ini file parser","epoch":1580785651,"epoch_utc":null},{"commit":"bf033239a706c42be3d7508c58a51c542f8a69b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 16:20:38 2020 -0800","stats":{"files_changed":2,"insertions":82,"deletions":7,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/yaml.md","lines_changed":69},{"name":"jc/parsers/yaml.py","lines_changed":20}]},"message":"doc update","epoch":1580775638,"epoch_utc":null},{"commit":"eb37fccd37fd625f701a14b6cfcf30e9f0bbff4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 16:17:29 2020 -0800","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":11}]},"message":"doc update","epoch":1580775449,"epoch_utc":null},{"commit":"d04ad453319fe45e302da87f970d2ac0806fae1a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 16:12:45 2020 -0800","stats":{"files_changed":3,"insertions":7,"deletions":2,"files":["changelog.txt","docgen.sh","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"setup.py","lines_changed":5}]},"message":"setup for 1.7.1","epoch":1580775165,"epoch_utc":null},{"commit":"db157b8ca7f7fa935676bafeaafdfd9818a89e6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 16:12:32 2020 -0800","stats":{"files_changed":2,"insertions":94,"deletions":2,"files":["jc/cli.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6},{"name":"jc/parsers/yaml.py","lines_changed":90}]},"message":"add yaml file parser","epoch":1580775152,"epoch_utc":null},{"commit":"68f277bb2081eb2cba14ffe7f0ee1ee0a982335b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Feb 3 16:11:58 2020 -0800","stats":{"files_changed":33,"insertions":99,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/crontab.py","lines_changed":3},{"name":"jc/parsers/df.py","lines_changed":3},{"name":"jc/parsers/dig.py","lines_changed":3},{"name":"jc/parsers/du.py","lines_changed":3},{"name":"jc/parsers/env.py","lines_changed":3},{"name":"jc/parsers/foo.py","lines_changed":3},{"name":"jc/parsers/free.py","lines_changed":3},{"name":"jc/parsers/fstab.py","lines_changed":3},{"name":"jc/parsers/history.py","lines_changed":3},{"name":"jc/parsers/hosts.py","lines_changed":3},{"name":"jc/parsers/ifconfig.py","lines_changed":3},{"name":"jc/parsers/iptables.py","lines_changed":3},{"name":"jc/parsers/jobs.py","lines_changed":3},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"jc/parsers/lsblk.py","lines_changed":3},{"name":"jc/parsers/lsmod.py","lines_changed":3},{"name":"jc/parsers/lsof.py","lines_changed":3},{"name":"jc/parsers/mount.py","lines_changed":3},{"name":"jc/parsers/netstat.py","lines_changed":3},{"name":"jc/parsers/pip_list.py","lines_changed":3},{"name":"jc/parsers/pip_show.py","lines_changed":3},{"name":"jc/parsers/ps.py","lines_changed":3},{"name":"jc/parsers/route.py","lines_changed":3},{"name":"jc/parsers/ss.py","lines_changed":3},{"name":"jc/parsers/stat.py","lines_changed":3},{"name":"jc/parsers/systemctl.py","lines_changed":3},{"name":"jc/parsers/systemctl_lj.py","lines_changed":3},{"name":"jc/parsers/systemctl_ls.py","lines_changed":3},{"name":"jc/parsers/systemctl_luf.py","lines_changed":3},{"name":"jc/parsers/uname.py","lines_changed":3},{"name":"jc/parsers/uptime.py","lines_changed":3},{"name":"jc/parsers/w.py","lines_changed":3}]},"message":"add __version__","epoch":1580775118,"epoch_utc":null},{"commit":"4de8f42664379570392552796e34324abb39fdc2","merge":"6633d92 4f11855","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 12:11:13 2019 -0800","message":"Merge pull request #17 from kellyjonbrazil/dev\n\nDev v1.6.1","epoch":1576613473,"epoch_utc":null},{"commit":"4f118559356edc1da866e1bec80830e7a75a0b26","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 12:09:24 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]},"message":"update version info","epoch":1576613364,"epoch_utc":null},{"commit":"2b9a5fcc32f85295faa55410efcaf142c42bd167","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 12:05:40 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":4}]},"message":"update version","epoch":1576613140,"epoch_utc":null},{"commit":"224948d1f23e01b7cd968820529579792f862f0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 11:44:43 2019 -0800","stats":{"files_changed":21,"insertions":428,"deletions":0,"files":["tests/fixtures/centos-7.7/pip-list.json","tests/fixtures/centos-7.7/pip-list.out","tests/fixtures/centos-7.7/pip-show.json","tests/fixtures/centos-7.7/pip-show.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.11.6/pip-list.json","tests/fixtures/osx-10.11.6/pip-list.out","tests/fixtures/osx-10.11.6/pip-show.json","tests/fixtures/osx-10.11.6/pip-show.out","tests/fixtures/osx-10.14.6/pip-list.json","tests/fixtures/osx-10.14.6/pip-list.out","tests/fixtures/osx-10.14.6/pip-show.json","tests/fixtures/osx-10.14.6/pip-show.out","tests/fixtures/ubuntu-18.04/pip-list-legacy.json","tests/fixtures/ubuntu-18.04/pip-list-legacy.out","tests/fixtures/ubuntu-18.04/pip-list.json","tests/fixtures/ubuntu-18.04/pip-list.out","tests/fixtures/ubuntu-18.04/pip-show.json","tests/fixtures/ubuntu-18.04/pip-show.out","tests/test_pip_list.py","tests/test_pip_show.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/pip-list.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/pip-list.out","lines_changed":22},{"name":"tests/fixtures/centos-7.7/pip-show.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/pip-show.out","lines_changed":32},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/pip-list.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/pip-list.out","lines_changed":7},{"name":"tests/fixtures/osx-10.11.6/pip-show.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/pip-show.out","lines_changed":32},{"name":"tests/fixtures/osx-10.14.6/pip-list.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/pip-list.out","lines_changed":7},{"name":"tests/fixtures/osx-10.14.6/pip-show.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/pip-show.out","lines_changed":32},{"name":"tests/fixtures/ubuntu-18.04/pip-list-legacy.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/pip-list-legacy.out","lines_changed":57},{"name":"tests/fixtures/ubuntu-18.04/pip-list.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/pip-list.out","lines_changed":59},{"name":"tests/fixtures/ubuntu-18.04/pip-show.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/pip-show.out","lines_changed":29},{"name":"tests/test_pip_list.py","lines_changed":76},{"name":"tests/test_pip_show.py","lines_changed":64}]},"message":"pip list and pip show tests","epoch":1576611883,"epoch_utc":null},{"commit":"36f2812d5a7a94c412e098233c026d99d5205b60","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 10:58:00 2019 -0800","stats":{"files_changed":1,"insertions":15,"deletions":7,"files":["jc/parsers/pip_list.py"],"file_stats":[{"name":"jc/parsers/pip_list.py","lines_changed":22}]},"message":"add support for legacy output","epoch":1576609080,"epoch_utc":null},{"commit":"be06aa2b31c057c56229e75c7fa70052b83053ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 10:09:19 2019 -0800","stats":{"files_changed":65,"insertions":70,"deletions":66,"files":["docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":3},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":3},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":3},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":3},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2}]},"message":"update parse() Return info","epoch":1576606159,"epoch_utc":null},{"commit":"41f8e3aba268ca0cd09931a04368615425c1aec8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 09:56:09 2019 -0800","stats":{"files_changed":65,"insertions":67,"deletions":65,"files":["docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":3},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":3},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2}]},"message":"update Return info","epoch":1576605369,"epoch_utc":null},{"commit":"093c0df8978ace842af5258f9aff72c63c6f843d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 09:38:50 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"schema info","epoch":1576604330,"epoch_utc":null},{"commit":"37afc7dc8ae30342d01f3f72e73646fa60bb5294","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 09:35:27 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"updte todo and compatibility","epoch":1576604127,"epoch_utc":null},{"commit":"efbf3549606fc77f8c16587ff04a0c316dfe5c00","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 09:24:08 2019 -0800","stats":{"files_changed":4,"insertions":126,"deletions":12,"files":["README.md","docgen.sh","docs/parsers/pip_show.md","jc/parsers/pip_show.py"],"file_stats":[{"name":"README.md","lines_changed":31},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/pip_show.md","lines_changed":94},{"name":"jc/parsers/pip_show.py","lines_changed":12}]},"message":"doc update for pip show","epoch":1576603448,"epoch_utc":null},{"commit":"5e39fe0d8044787389d8f206f3c863d4bdf1e2ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Dec 17 09:20:26 2019 -0800","stats":{"files_changed":1,"insertions":64,"deletions":5,"files":["jc/parsers/pip_show.py"],"file_stats":[{"name":"jc/parsers/pip_show.py","lines_changed":69}]},"message":"pip show parser working","epoch":1576603226,"epoch_utc":null},{"commit":"47328dc65969f149c8f027286774ff0847c18add","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 19:09:14 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add pip-show parser","epoch":1576552154,"epoch_utc":null},{"commit":"addeef50ba54f536855544937a6c98135ae5cd51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 19:07:51 2019 -0800","stats":{"files_changed":1,"insertions":84,"deletions":0,"files":["jc/parsers/pip_show.py"],"file_stats":[{"name":"jc/parsers/pip_show.py","lines_changed":84}]},"message":"initial pip show parser add","epoch":1576552071,"epoch_utc":null},{"commit":"ad338cc5b50a178091c47cbea9a1db135a7fb678","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:58:33 2019 -0800","stats":{"files_changed":2,"insertions":56,"deletions":42,"files":["docs/parsers/crontab.md","jc/parsers/crontab.py"],"file_stats":[{"name":"docs/parsers/crontab.md","lines_changed":49},{"name":"jc/parsers/crontab.py","lines_changed":49}]},"message":"schema doc update","epoch":1576551513,"epoch_utc":null},{"commit":"202bc8201e31fd453c682265347b4e2ac2d41718","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:54:19 2019 -0800","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["README.md","docs/parsers/crontab.md","jc/parsers/crontab.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"jc/parsers/crontab.py","lines_changed":4}]},"message":"doc update","epoch":1576551259,"epoch_utc":null},{"commit":"5ff99de405fbd8f79f9c2e301ac27184e0aba6fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:40:08 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add argument to parser info","epoch":1576550408,"epoch_utc":null},{"commit":"86ebe2cf9c6b336eacf217393c3c3c324ee29ec0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:36:13 2019 -0800","stats":{"files_changed":6,"insertions":205,"deletions":1,"files":["README.md","docgen.sh","docs/parsers/crontab.md","docs/parsers/pip_list.md","jc/cli.py","jc/parsers/pip_list.py"],"file_stats":[{"name":"README.md","lines_changed":21},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":75},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":105}]},"message":"initial add of pip list parser","epoch":1576550173,"epoch_utc":null},{"commit":"facf0b399c608d33f6a454ee24fd49fc62471742","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:09:29 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":4}]},"message":"add osx to campatible","epoch":1576548569,"epoch_utc":null},{"commit":"33db7b0bcb0f24979cad6e173737d75c8ed301af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 18:09:00 2019 -0800","stats":{"files_changed":4,"insertions":57,"deletions":0,"files":["tests/fixtures/centos-7.7/crontab.json","tests/fixtures/ubuntu-18.04/crontab.json","tests/fixtures/ubuntu-18.04/crontab.out","tests/test_crontab.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/crontab.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/crontab.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/crontab.out","lines_changed":15},{"name":"tests/test_crontab.py","lines_changed":40}]},"message":"add crontab tests","epoch":1576548540,"epoch_utc":null},{"commit":"663d07bca1181024d9d08b940237c52197c91729","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 17:52:09 2019 -0800","stats":{"files_changed":2,"insertions":191,"deletions":0,"files":["docgen.sh","docs/parsers/crontab.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/crontab.md","lines_changed":190}]},"message":"add crontab","epoch":1576547529,"epoch_utc":null},{"commit":"ba04e4997fcb28adbee446f633c121f1585b9f2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 17:51:11 2019 -0800","stats":{"files_changed":1,"insertions":113,"deletions":4,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":117}]},"message":"update docs","epoch":1576547471,"epoch_utc":null},{"commit":"c4fee1b658c91afa2abdd746af6c1b4697c44b35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 17:50:52 2019 -0800","stats":{"files_changed":1,"insertions":72,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":73}]},"message":"add crontab parser","epoch":1576547452,"epoch_utc":null},{"commit":"99b92a15bbebc5568f4455f388f945613c4a2759","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 17:45:34 2019 -0800","stats":{"files_changed":2,"insertions":37,"deletions":14,"files":["jc/parsers/crontab.py","tests/fixtures/centos-7.7/crontab.out"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":40},{"name":"tests/fixtures/centos-7.7/crontab.out","lines_changed":11}]},"message":"support shortcut schedules","epoch":1576547134,"epoch_utc":null},{"commit":"b076ab5b57a6a59db096485e5ff4eb9f91bae8be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 17:01:53 2019 -0800","stats":{"files_changed":3,"insertions":177,"deletions":0,"files":["jc/cli.py","jc/parsers/crontab.py","tests/fixtures/centos-7.7/crontab.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":132},{"name":"tests/fixtures/centos-7.7/crontab.out","lines_changed":43}]},"message":"initial crontab parser","epoch":1576544513,"epoch_utc":null},{"commit":"687759f75d0e80e81746a84f051e55cfdc870447","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 14:31:21 2019 -0800","stats":{"files_changed":1,"insertions":31,"deletions":31,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":62}]},"message":"alphabetize du entry","epoch":1576535481,"epoch_utc":null},{"commit":"9eaac7f3af0e0851c2d091d94c9920faa8a0fdfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 14:30:06 2019 -0800","stats":{"files_changed":1,"insertions":32,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":32}]},"message":"add du","epoch":1576535406,"epoch_utc":null},{"commit":"4c24e00cfc0748d98e220d08820b88fc156148db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 14:27:55 2019 -0800","stats":{"files_changed":5,"insertions":21738,"deletions":9,"files":["tests/fixtures/osx-10.11.6/du.json","tests/fixtures/osx-10.11.6/du.out","tests/fixtures/ubuntu-18.04/du.json","tests/fixtures/ubuntu-18.04/du.out","tests/test_du.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/du.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/du.out","lines_changed":2471},{"name":"tests/fixtures/ubuntu-18.04/du.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/du.out","lines_changed":19244},{"name":"tests/test_du.py","lines_changed":30}]},"message":"add osx-11 and ubuntu tests","epoch":1576535275,"epoch_utc":null},{"commit":"beb17011b03e720078b0752e79a6a0f6123d1d3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 13:57:42 2019 -0800","stats":{"files_changed":6,"insertions":131,"deletions":2,"files":["changelog.txt","docgen.sh","docs/parsers/du.md","docs/parsers/uname.md","tests/fixtures/osx-10.14.6/du.json","tests/test_du.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/du.md","lines_changed":115},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/du.json","lines_changed":1},{"name":"tests/test_du.py","lines_changed":12}]},"message":"du tests and docs","epoch":1576533462,"epoch_utc":null},{"commit":"e882bf55bcd1d3526423ed1ccc61fb4819395cce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 13:52:42 2019 -0800","stats":{"files_changed":7,"insertions":8755,"deletions":0,"files":["changelog.txt","jc/cli.py","jc/parsers/du.py","tests/fixtures/centos-7.7/du.json","tests/fixtures/centos-7.7/du.out","tests/fixtures/osx-10.14.6/du.out","tests/test_du.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":148},{"name":"tests/fixtures/centos-7.7/du.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/du.out","lines_changed":5199},{"name":"tests/fixtures/osx-10.14.6/du.out","lines_changed":3364},{"name":"tests/test_du.py","lines_changed":40}]},"message":"initial add du parser","epoch":1576533162,"epoch_utc":null},{"commit":"3a3016adb6d5b9e35f8a39908bfcdc65997cc5c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 11:52:18 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add parser_count to about","epoch":1576525938,"epoch_utc":null},{"commit":"1e8b68153ade8a1e3d2b4db36e0c402bbc887079","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 11:12:45 2019 -0800","stats":{"files_changed":4,"insertions":27,"deletions":1,"files":["tests/fixtures/osx-10.11.6/uname-a.json","tests/fixtures/osx-10.14.6/uname-a.json","tests/fixtures/osx-10.14.6/uname-a.out","tests/test_uname.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/uname-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/uname-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/uname-a.out","lines_changed":2},{"name":"tests/test_uname.py","lines_changed":24}]},"message":"add osx uname tests","epoch":1576523565,"epoch_utc":null},{"commit":"9335cf65fbb87e3a0a7da0c4e9bcd251cb829de2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 11:02:02 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"add uname osx support","epoch":1576522922,"epoch_utc":null},{"commit":"83f35256aee71f2619ddf880e2b8f2d6c63280bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 11:01:43 2019 -0800","stats":{"files_changed":1,"insertions":30,"deletions":19,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":49}]},"message":"add OSX support","epoch":1576522903,"epoch_utc":null},{"commit":"428333394817e4461a4eb095f4d6d128305a5f98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 10:03:47 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":2}]},"message":"version bump","epoch":1576519427,"epoch_utc":null},{"commit":"b8f902796b7fb23a41355b23f7ce235bd18edc58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 10:03:34 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]},"message":"shorten changelog","epoch":1576519414,"epoch_utc":null},{"commit":"8f99ab295cd15718b98781707def97539ad41920","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 09:08:47 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"info update","epoch":1576516127,"epoch_utc":null},{"commit":"882310e268e2022f0cd6da75f80f5356529cd05c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 09:04:52 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add name to about parser info","epoch":1576515892,"epoch_utc":null},{"commit":"56bce9521409d1850f75a3ae2be1363e765dd9dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 09:00:16 2019 -0800","stats":{"files_changed":1,"insertions":6,"deletions":10,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":16}]},"message":"about code cleanup","epoch":1576515616,"epoch_utc":null},{"commit":"c13ecbec2952c5d6765397f645e90653a4fd9d05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 08:59:41 2019 -0800","stats":{"files_changed":28,"insertions":2,"deletions":28,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":1},{"name":"jc/parsers/env.py","lines_changed":1},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":1},{"name":"jc/parsers/fstab.py","lines_changed":1},{"name":"jc/parsers/history.py","lines_changed":1},{"name":"jc/parsers/hosts.py","lines_changed":1},{"name":"jc/parsers/iptables.py","lines_changed":1},{"name":"jc/parsers/jobs.py","lines_changed":1},{"name":"jc/parsers/ls.py","lines_changed":1},{"name":"jc/parsers/lsblk.py","lines_changed":1},{"name":"jc/parsers/lsmod.py","lines_changed":1},{"name":"jc/parsers/lsof.py","lines_changed":1},{"name":"jc/parsers/mount.py","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":1},{"name":"jc/parsers/ps.py","lines_changed":1},{"name":"jc/parsers/route.py","lines_changed":1},{"name":"jc/parsers/ss.py","lines_changed":1},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":1},{"name":"jc/parsers/systemctl_lj.py","lines_changed":1},{"name":"jc/parsers/systemctl_ls.py","lines_changed":1},{"name":"jc/parsers/systemctl_luf.py","lines_changed":1},{"name":"jc/parsers/uname.py","lines_changed":1},{"name":"jc/parsers/uptime.py","lines_changed":1},{"name":"jc/parsers/w.py","lines_changed":1}]},"message":"clean up parser info","epoch":1576515581,"epoch_utc":null},{"commit":"0ffaaa6e73649d1f657af569ac0b912f166e8493","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 16 08:18:37 2019 -0800","stats":{"files_changed":1,"insertions":7,"deletions":9,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":16}]},"message":"clean up about code","epoch":1576513117,"epoch_utc":null},{"commit":"75eff3adea097157c005b2201e353a741241ce8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:56:40 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":8}]},"message":"remove whitespace","epoch":1576396600,"epoch_utc":null},{"commit":"bf5f80476cff642ae672187ea59d40bdb602101e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:56:22 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6}]},"message":"use real parser name in error message","epoch":1576396582,"epoch_utc":null},{"commit":"9aaf0fbb2f838c0af1e7f18fdb19104f9f5d3d39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:35:42 2019 -0800","stats":{"files_changed":29,"insertions":146,"deletions":1,"files":["changelog.txt","docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"docs/parsers/arp.md","lines_changed":11},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5}]},"message":"doc updates","epoch":1576395342,"epoch_utc":null},{"commit":"8f01ef79532743573632d716ceea41d5ea752c88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:27:56 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add -a option info","epoch":1576394876,"epoch_utc":null},{"commit":"da1d087452da02631296b1b3dc9ee10d4b7f764b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:21:47 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add parser version info","epoch":1576394507,"epoch_utc":null},{"commit":"e16bc7e882a27a1d5a4bd7cf9972208e6997f96f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Dec 14 23:15:15 2019 -0800","stats":{"files_changed":29,"insertions":82,"deletions":17,"files":["jc/cli.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":71},{"name":"jc/parsers/arp.py","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":1},{"name":"jc/parsers/env.py","lines_changed":1},{"name":"jc/parsers/foo.py","lines_changed":1},{"name":"jc/parsers/free.py","lines_changed":1},{"name":"jc/parsers/fstab.py","lines_changed":1},{"name":"jc/parsers/history.py","lines_changed":1},{"name":"jc/parsers/hosts.py","lines_changed":1},{"name":"jc/parsers/iptables.py","lines_changed":1},{"name":"jc/parsers/jobs.py","lines_changed":1},{"name":"jc/parsers/ls.py","lines_changed":1},{"name":"jc/parsers/lsblk.py","lines_changed":1},{"name":"jc/parsers/lsmod.py","lines_changed":1},{"name":"jc/parsers/lsof.py","lines_changed":1},{"name":"jc/parsers/mount.py","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":1},{"name":"jc/parsers/ps.py","lines_changed":1},{"name":"jc/parsers/route.py","lines_changed":1},{"name":"jc/parsers/ss.py","lines_changed":1},{"name":"jc/parsers/stat.py","lines_changed":1},{"name":"jc/parsers/systemctl.py","lines_changed":1},{"name":"jc/parsers/systemctl_lj.py","lines_changed":1},{"name":"jc/parsers/systemctl_ls.py","lines_changed":1},{"name":"jc/parsers/systemctl_luf.py","lines_changed":1},{"name":"jc/parsers/uname.py","lines_changed":1},{"name":"jc/parsers/uptime.py","lines_changed":1},{"name":"jc/parsers/w.py","lines_changed":1}]},"message":"add about information to parsers","epoch":1576394115,"epoch_utc":null},{"commit":"fe9bdd4811216257c05b16d6d61897929669d434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 13 20:01:51 2019 -0800","stats":{"files_changed":31,"insertions":384,"deletions":219,"files":["changelog.txt","jc/cli.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/cli.py","lines_changed":127},{"name":"jc/parsers/arp.py","lines_changed":25},{"name":"jc/parsers/df.py","lines_changed":15},{"name":"jc/parsers/dig.py","lines_changed":15},{"name":"jc/parsers/env.py","lines_changed":16},{"name":"jc/parsers/foo.py","lines_changed":16},{"name":"jc/parsers/free.py","lines_changed":16},{"name":"jc/parsers/fstab.py","lines_changed":16},{"name":"jc/parsers/history.py","lines_changed":16},{"name":"jc/parsers/hosts.py","lines_changed":16},{"name":"jc/parsers/ifconfig.py","lines_changed":17},{"name":"jc/parsers/iptables.py","lines_changed":16},{"name":"jc/parsers/jobs.py","lines_changed":16},{"name":"jc/parsers/ls.py","lines_changed":16},{"name":"jc/parsers/lsblk.py","lines_changed":17},{"name":"jc/parsers/lsmod.py","lines_changed":16},{"name":"jc/parsers/lsof.py","lines_changed":16},{"name":"jc/parsers/mount.py","lines_changed":16},{"name":"jc/parsers/netstat.py","lines_changed":16},{"name":"jc/parsers/ps.py","lines_changed":16},{"name":"jc/parsers/route.py","lines_changed":16},{"name":"jc/parsers/ss.py","lines_changed":16},{"name":"jc/parsers/stat.py","lines_changed":15},{"name":"jc/parsers/systemctl.py","lines_changed":16},{"name":"jc/parsers/systemctl_lj.py","lines_changed":16},{"name":"jc/parsers/systemctl_ls.py","lines_changed":16},{"name":"jc/parsers/systemctl_luf.py","lines_changed":16},{"name":"jc/parsers/uname.py","lines_changed":16},{"name":"jc/parsers/uptime.py","lines_changed":16},{"name":"jc/parsers/w.py","lines_changed":16}]},"message":"add info class","epoch":1576296111,"epoch_utc":null},{"commit":"17b6f3f6d6c398a52166849088a793d0e3b328b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 13 14:36:21 2019 -0800","stats":{"files_changed":3,"insertions":26,"deletions":0,"files":["tests/fixtures/osx-10.11.6/uptime.json","tests/fixtures/osx-10.14.6/uptime.json","tests/test_uptime.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/uptime.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/uptime.json","lines_changed":1},{"name":"tests/test_uptime.py","lines_changed":24}]},"message":"add osx tests","epoch":1576276581,"epoch_utc":null},{"commit":"90a6baf0ee3b8b27476badada4e590e22144f810","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 13 14:30:12 2019 -0800","stats":{"files_changed":6,"insertions":52,"deletions":0,"files":["tests/fixtures/osx-10.11.6/ps-axu.json","tests/fixtures/osx-10.11.6/ps-ef.json","tests/fixtures/osx-10.11.6/w.json","tests/fixtures/osx-10.14.6/w.json","tests/test_ps.py","tests/test_w.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/ps-axu.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ps-ef.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/w.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/w.json","lines_changed":1},{"name":"tests/test_ps.py","lines_changed":24},{"name":"tests/test_w.py","lines_changed":24}]},"message":"add osx tests","epoch":1576276212,"epoch_utc":null},{"commit":"f0e73d0e72d540292f41fff51652932c4e8b0315","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 13 10:50:01 2019 -0800","stats":{"files_changed":8,"insertions":444,"deletions":0,"files":["tests/fixtures/osx-10.11.6/ps-axu.out","tests/fixtures/osx-10.11.6/ps-ef.out","tests/fixtures/osx-10.11.6/uname-a.out","tests/fixtures/osx-10.11.6/uptime.out","tests/fixtures/osx-10.11.6/w.out","tests/fixtures/osx-10.14.6/uname-a.out","tests/fixtures/osx-10.14.6/uptime.out","tests/fixtures/osx-10.14.6/w.out"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/ps-axu.out","lines_changed":211},{"name":"tests/fixtures/osx-10.11.6/ps-ef.out","lines_changed":211},{"name":"tests/fixtures/osx-10.11.6/uname-a.out","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/uptime.out","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/w.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/uname-a.out","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/uptime.out","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/w.out","lines_changed":10}]},"message":"add osx tests","epoch":1576263001,"epoch_utc":null},{"commit":"a762882f1ccea6789ce7813b313f3242175b5bd6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 13 08:58:23 2019 -0800","stats":{"files_changed":4,"insertions":2,"deletions":88,"files":["tests/fixtures/osx-10.14.6/ps-axu.json","tests/fixtures/osx-10.14.6/ps-axu.out","tests/fixtures/osx-10.14.6/ps-ef.json","tests/fixtures/osx-10.14.6/ps-ef.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ps-axu.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ps-axu.out","lines_changed":43},{"name":"tests/fixtures/osx-10.14.6/ps-ef.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ps-ef.out","lines_changed":43}]},"message":"fixture updates","epoch":1576256303,"epoch_utc":null},{"commit":"4c1bc5923658bf463805ea33ec8d170a817909ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 17:05:40 2019 -0800","stats":{"files_changed":3,"insertions":4,"deletions":3,"files":["docs/parsers/mount.md","docs/parsers/ps.md","docs/parsers/stat.md"],"file_stats":[{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":3},{"name":"docs/parsers/stat.md","lines_changed":2}]},"message":"doc updates","epoch":1576199140,"epoch_utc":null},{"commit":"f2962083f80503f82c3eddf470674c776e616b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 17:04:40 2019 -0800","stats":{"files_changed":7,"insertions":93,"deletions":17,"files":["changelog.txt","jc/parsers/mount.py","tests/fixtures/osx-10.14.6/mount.json","tests/fixtures/osx-10.14.6/mount.out","tests/fixtures/osx-10.14.6/mount2.json","tests/fixtures/osx-10.14.6/mount2.out","tests/test_mount.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/parsers/mount.py","lines_changed":68},{"name":"tests/fixtures/osx-10.14.6/mount.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/mount.out","lines_changed":6},{"name":"tests/fixtures/osx-10.14.6/mount2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/mount2.out","lines_changed":7},{"name":"tests/test_mount.py","lines_changed":24}]},"message":"add osx support for mount parser","epoch":1576199080,"epoch_utc":null},{"commit":"a0b22a5bcfa0777895243088b2c0f3bb5b758775","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 16:14:46 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"help text formatting","epoch":1576196086,"epoch_utc":null},{"commit":"dcf393354cd57683aaeecbed7b884d19b0fe94d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 16:10:30 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":2}]},"message":"doc fix","epoch":1576195830,"epoch_utc":null},{"commit":"5f771656e3fdd703d449b2817faa4faeff1cd879","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 16:07:52 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":10}]},"message":"use universal parser","epoch":1576195672,"epoch_utc":null},{"commit":"f376aab79328a211a127f4f818e7007232f1fae3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:59:36 2019 -0800","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":3}]},"message":"doc update","epoch":1576195176,"epoch_utc":null},{"commit":"3c96464217a740571e16c74ad41c1d92f7585547","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:59:24 2019 -0800","stats":{"files_changed":6,"insertions":886,"deletions":13,"files":["jc/parsers/ps.py","tests/fixtures/osx-10.14.6/ps-axu.json","tests/fixtures/osx-10.14.6/ps-axu.out","tests/fixtures/osx-10.14.6/ps-ef.json","tests/fixtures/osx-10.14.6/ps-ef.out","tests/test_ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":31},{"name":"tests/fixtures/osx-10.14.6/ps-axu.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ps-axu.out","lines_changed":421},{"name":"tests/fixtures/osx-10.14.6/ps-ef.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ps-ef.out","lines_changed":421},{"name":"tests/test_ps.py","lines_changed":24}]},"message":"osx fixes and tests","epoch":1576195164,"epoch_utc":null},{"commit":"c9892833a16bb63f78537717be65670eb65a87b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:58:40 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/mount.py"],"file_stats":[{"name":"jc/parsers/mount.py","lines_changed":2}]},"message":"formatting change","epoch":1576195120,"epoch_utc":null},{"commit":"127c98affc7b122f0ced13852850214b9e07677e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:58:24 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update","epoch":1576195104,"epoch_utc":null},{"commit":"8687a772f53ecaf1a20464429060b94bbf660fe7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:33:34 2019 -0800","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":8}]},"message":"use universal parser","epoch":1576193614,"epoch_utc":null},{"commit":"b1162b14d42643fd53dbbe3f89ba042f030d9254","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:22:21 2019 -0800","stats":{"files_changed":1,"insertions":3,"deletions":6,"files":["jc/parsers/lsmod.py"],"file_stats":[{"name":"jc/parsers/lsmod.py","lines_changed":9}]},"message":"use universal parser","epoch":1576192941,"epoch_utc":null},{"commit":"8a8ee3570733c0c06b8cf53eb005e53ac2f9170f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 15:01:42 2019 -0800","stats":{"files_changed":1,"insertions":8,"deletions":60,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":68}]},"message":"use universal parser","epoch":1576191702,"epoch_utc":null},{"commit":"5e109a3665cf0c286ac9dcbe2a452348a14b90ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 14:12:36 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/fixtures/create_fixtures.sh"],"file_stats":[{"name":"tests/fixtures/create_fixtures.sh","lines_changed":2}]},"message":"add du","epoch":1576188756,"epoch_utc":null},{"commit":"11db478430515ef3e1020482792f23d1c40ca32b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 14:12:21 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"update changelog","epoch":1576188741,"epoch_utc":null},{"commit":"a85377014d9f93fcb9840715129b0e09d48d8584","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 14:11:59 2019 -0800","stats":{"files_changed":1,"insertions":5,"deletions":11,"files":["jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/free.py","lines_changed":16}]},"message":"use universal parser","epoch":1576188719,"epoch_utc":null},{"commit":"3aea86234d33160f5b3139cbfc2f4f032f655f3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 11:23:49 2019 -0800","stats":{"files_changed":6,"insertions":70,"deletions":61,"files":["tests/fixtures/osx-10.11.6/ls-al.json","tests/fixtures/osx-10.11.6/ls-al.out","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.11.6/ls-alh.out","tests/fixtures/osx-10.11.6/ls.json","tests/fixtures/osx-10.11.6/ls.out"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/ls-al.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ls-al.out","lines_changed":61},{"name":"tests/fixtures/osx-10.11.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ls-alh.out","lines_changed":61},{"name":"tests/fixtures/osx-10.11.6/ls.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ls.out","lines_changed":3}]},"message":"fix osx-10.11.6 tests","epoch":1576178629,"epoch_utc":null},{"commit":"916ec6ed6b858a8a496e4026b9bab5505abca2ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 10:11:24 2019 -0800","stats":{"files_changed":13,"insertions":193,"deletions":61,"files":["tests/fixtures/osx-10.11.6/ls-al.json","tests/fixtures/osx-10.11.6/ls-al.out","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.11.6/ls-alh.out","tests/fixtures/osx-10.11.6/ls.json","tests/fixtures/osx-10.11.6/ls.out","tests/fixtures/osx-10.14.6/ls-al.json","tests/fixtures/osx-10.14.6/ls-al.out","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.out","tests/fixtures/osx-10.14.6/ls.json","tests/fixtures/osx-10.14.6/ls.out","tests/test_ls.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/ls-al.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ls-al.out","lines_changed":29},{"name":"tests/fixtures/osx-10.11.6/ls-alh.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ls-alh.out","lines_changed":29},{"name":"tests/fixtures/osx-10.11.6/ls.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ls.out","lines_changed":18},{"name":"tests/fixtures/osx-10.14.6/ls-al.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-al.out","lines_changed":64},{"name":"tests/fixtures/osx-10.14.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-alh.out","lines_changed":64},{"name":"tests/fixtures/osx-10.14.6/ls.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls.out","lines_changed":5},{"name":"tests/test_ls.py","lines_changed":36}]},"message":"fix osx ls tests","epoch":1576174284,"epoch_utc":null},{"commit":"9dca6ba5393d8840ad7fc9509273715a71955bd1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:47:14 2019 -0800","stats":{"files_changed":55,"insertions":120,"deletions":6,"files":["docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":8},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":3},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":3},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":8},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":3},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":3},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2}]},"message":"doc formatting change","epoch":1576172834,"epoch_utc":null},{"commit":"0ebb89f561e1ced2e7f61ae19290e176c8a98bf2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:41:56 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["docs/parsers/arp.md"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2}]},"message":"doc update","epoch":1576172516,"epoch_utc":null},{"commit":"e237867e242211ba37206911ebf1b35c97b417fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:41:25 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":2}]},"message":"doc formatting","epoch":1576172485,"epoch_utc":null},{"commit":"78fa44fd9ac9790313de6f461eb46d9b8d6159d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:35:42 2019 -0800","stats":{"files_changed":24,"insertions":75,"deletions":3,"files":["docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/netstat.md","lines_changed":3},{"name":"docs/parsers/ps.md","lines_changed":3},{"name":"docs/parsers/route.md","lines_changed":3},{"name":"docs/parsers/ss.md","lines_changed":3},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":3},{"name":"docs/parsers/systemctl_lj.md","lines_changed":3},{"name":"docs/parsers/systemctl_ls.md","lines_changed":3},{"name":"docs/parsers/systemctl_luf.md","lines_changed":3},{"name":"docs/parsers/uname.md","lines_changed":3},{"name":"docs/parsers/uptime.md","lines_changed":3},{"name":"docs/parsers/w.md","lines_changed":3},{"name":"jc/parsers/netstat.py","lines_changed":3},{"name":"jc/parsers/ps.py","lines_changed":3},{"name":"jc/parsers/route.py","lines_changed":5},{"name":"jc/parsers/ss.py","lines_changed":3},{"name":"jc/parsers/stat.py","lines_changed":5},{"name":"jc/parsers/systemctl.py","lines_changed":3},{"name":"jc/parsers/systemctl_lj.py","lines_changed":3},{"name":"jc/parsers/systemctl_ls.py","lines_changed":3},{"name":"jc/parsers/systemctl_luf.py","lines_changed":3},{"name":"jc/parsers/uname.py","lines_changed":3},{"name":"jc/parsers/uptime.py","lines_changed":3},{"name":"jc/parsers/w.py","lines_changed":3}]},"message":"add compatibility to docs","epoch":1576172142,"epoch_utc":null},{"commit":"d615fa3b933ccd284bd8ee92baf5dfa6264507c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:21:20 2019 -0800","stats":{"files_changed":30,"insertions":91,"deletions":1,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":3},{"name":"docs/parsers/df.md","lines_changed":3},{"name":"docs/parsers/dig.md","lines_changed":3},{"name":"docs/parsers/env.md","lines_changed":3},{"name":"docs/parsers/free.md","lines_changed":3},{"name":"docs/parsers/fstab.md","lines_changed":3},{"name":"docs/parsers/history.md","lines_changed":3},{"name":"docs/parsers/hosts.md","lines_changed":3},{"name":"docs/parsers/ifconfig.md","lines_changed":3},{"name":"docs/parsers/iptables.md","lines_changed":3},{"name":"docs/parsers/jobs.md","lines_changed":3},{"name":"docs/parsers/ls.md","lines_changed":3},{"name":"docs/parsers/lsblk.md","lines_changed":3},{"name":"docs/parsers/lsmod.md","lines_changed":3},{"name":"docs/parsers/lsof.md","lines_changed":3},{"name":"docs/parsers/mount.md","lines_changed":3},{"name":"jc/parsers/env.py","lines_changed":3},{"name":"jc/parsers/foo.py","lines_changed":3},{"name":"jc/parsers/free.py","lines_changed":3},{"name":"jc/parsers/fstab.py","lines_changed":3},{"name":"jc/parsers/history.py","lines_changed":3},{"name":"jc/parsers/hosts.py","lines_changed":3},{"name":"jc/parsers/ifconfig.py","lines_changed":3},{"name":"jc/parsers/iptables.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":3},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"jc/parsers/lsblk.py","lines_changed":3},{"name":"jc/parsers/lsmod.py","lines_changed":3},{"name":"jc/parsers/lsof.py","lines_changed":3},{"name":"jc/parsers/mount.py","lines_changed":3}]},"message":"add compatibility to docs","epoch":1576171280,"epoch_utc":null},{"commit":"ce134dc332dd9175e0d1823a4959bed427a3ddce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Dec 12 09:09:57 2019 -0800","stats":{"files_changed":7,"insertions":115,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-al.json","tests/fixtures/osx-10.14.6/ls-al.out","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.out","tests/fixtures/osx-10.14.6/ls.json","tests/fixtures/osx-10.14.6/ls.out","tests/test_ls.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ls-al.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-al.out","lines_changed":29},{"name":"tests/fixtures/osx-10.14.6/ls-alh.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-alh.out","lines_changed":29},{"name":"tests/fixtures/osx-10.14.6/ls.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls.out","lines_changed":18},{"name":"tests/test_ls.py","lines_changed":36}]},"message":"Add OSX tests for ls","epoch":1576170597,"epoch_utc":null},{"commit":"a56e4dc752a01635fbd9fc31e21d390bbd629084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 17:27:48 2019 -0800","stats":{"files_changed":3,"insertions":28,"deletions":3,"files":["changelog.txt","jc/parsers/arp.py","jc/parsers/universal.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/arp.py","lines_changed":6},{"name":"jc/parsers/universal.py","lines_changed":24}]},"message":"use universal simple table parser","epoch":1576114068,"epoch_utc":null},{"commit":"d221b4aa29e80dda2b591059f4d64c416bff0a17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 17:19:38 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update","epoch":1576113578,"epoch_utc":null},{"commit":"d2cba6ad2f1f1cd35aa174239584a0291abb8e37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 17:18:21 2019 -0800","stats":{"files_changed":3,"insertions":9,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/df.py","lines_changed":3},{"name":"jc/parsers/dig.py","lines_changed":3}]},"message":"add compatibility info","epoch":1576113501,"epoch_utc":null},{"commit":"84b3c30b525ddf1f74eb7fd833050a0ec69621dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 17:18:04 2019 -0800","stats":{"files_changed":21,"insertions":254,"deletions":2,"files":["tests/fixtures/osx-10.11.6/df-h.json","tests/fixtures/osx-10.11.6/df-h.out","tests/fixtures/osx-10.11.6/df.json","tests/fixtures/osx-10.11.6/df.out","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-aaaa.out","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig-x.out","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.11.6/dig.out","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/osx-10.14.6/df-h.out","tests/fixtures/osx-10.14.6/df.json","tests/fixtures/osx-10.14.6/df.out","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-aaaa.out","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig-x.out","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/osx-10.14.6/dig.out","tests/test_df.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/df-h.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/df-h.out","lines_changed":7},{"name":"tests/fixtures/osx-10.11.6/df.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/df.out","lines_changed":7},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.out","lines_changed":20},{"name":"tests/fixtures/osx-10.11.6/dig-x.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/dig-x.out","lines_changed":20},{"name":"tests/fixtures/osx-10.11.6/dig.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/dig.out","lines_changed":41},{"name":"tests/fixtures/osx-10.14.6/df-h.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/df-h.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/df.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/df.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.out","lines_changed":20},{"name":"tests/fixtures/osx-10.14.6/dig-x.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig-x.out","lines_changed":20},{"name":"tests/fixtures/osx-10.14.6/dig.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig.out","lines_changed":41},{"name":"tests/test_df.py","lines_changed":52}]},"message":"add osx tests","epoch":1576113484,"epoch_utc":null},{"commit":"68eeec19a812b735627763bb7d7e2a58b72f7504","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 16:39:30 2019 -0800","stats":{"files_changed":3,"insertions":30,"deletions":25,"files":["README.md","docs/parsers/df.md","jc/parsers/df.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docs/parsers/df.md","lines_changed":31},{"name":"jc/parsers/df.py","lines_changed":20}]},"message":"doc update","epoch":1576111170,"epoch_utc":null},{"commit":"c6d1528a2ed302ea82828b733a98db415be83708","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Dec 11 16:37:13 2019 -0800","stats":{"files_changed":4,"insertions":19,"deletions":8,"files":["jc/parsers/df.py","jc/parsers/universal.py","tests/fixtures/centos-7.7/df.json","tests/fixtures/ubuntu-18.04/df.json"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":21},{"name":"jc/parsers/universal.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/df.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/df.json","lines_changed":2}]},"message":"use _ instead of -","epoch":1576111033,"epoch_utc":null},{"commit":"50a6b256b8a0936299f562c208ede6187feeb9a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 9 14:01:47 2019 -0800","stats":{"files_changed":1,"insertions":83,"deletions":0,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":83}]},"message":"new universal parsers to limit code duplication","epoch":1575928907,"epoch_utc":null},{"commit":"bbba1fe477014d0b7f370ce46ed821121be81a8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Dec 9 14:01:29 2019 -0800","stats":{"files_changed":1,"insertions":38,"deletions":19,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":57}]},"message":"update df to use universal sparse table parser for osx compatibility","epoch":1575928889,"epoch_utc":null},{"commit":"46b827da6b438be73fab168c3f05298483b141e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 13:22:51 2019 -0800","stats":{"files_changed":7,"insertions":75,"deletions":4,"files":["changelog.txt","jc/parsers/arp.py","tests/fixtures/osx-10.11.6/arp-a.json","tests/fixtures/osx-10.11.6/arp-a.out","tests/fixtures/osx-10.14.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a.out","tests/test_arp.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/arp.py","lines_changed":27},{"name":"tests/fixtures/osx-10.11.6/arp-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/arp-a.out","lines_changed":13},{"name":"tests/fixtures/osx-10.14.6/arp-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/arp-a.out","lines_changed":12},{"name":"tests/test_arp.py","lines_changed":24}]},"message":"add osx compatibility","epoch":1575667371,"epoch_utc":null},{"commit":"5e8c28a30a283b6ef525e9e78d3ef2a0e1526927","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 11:47:42 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2}]},"message":"comment fix","epoch":1575661662,"epoch_utc":null},{"commit":"e5d39031645ac897e0c0297f514ee62efe02f5f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 11:46:09 2019 -0800","stats":{"files_changed":1,"insertions":38,"deletions":17,"files":["docs/parsers/ifconfig.md"],"file_stats":[{"name":"docs/parsers/ifconfig.md","lines_changed":55}]},"message":"update ifconfig doc","epoch":1575661569,"epoch_utc":null},{"commit":"23975c9c9e1dd9d3e9fd7c05d231a86d646be048","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 11:44:57 2019 -0800","stats":{"files_changed":10,"insertions":132,"deletions":45,"files":["README.md","changelog.txt","jc/parsers/ifconfig.py","tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig2.json","tests/fixtures/osx-10.14.6/ifconfig.json","tests/fixtures/osx-10.14.6/ifconfig2.json","tests/fixtures/ubuntu-18.04/ifconfig.json","tests/test_ifconfig.py"],"file_stats":[{"name":"README.md","lines_changed":35},{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":80},{"name":"tests/fixtures/centos-7.7/ifconfig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ifconfig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ifconfig2.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ifconfig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ifconfig2.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ifconfig.json","lines_changed":2},{"name":"tests/test_ifconfig.py","lines_changed":48}]},"message":"fixup osx subnet mask and convert state to an array","epoch":1575661497,"epoch_utc":null},{"commit":"1e0dab8355e6fcb0ecde85270d4daac6ad93875b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 10:53:49 2019 -0800","stats":{"files_changed":10,"insertions":272,"deletions":2,"files":["tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.out","tests/fixtures/osx-10.11.6/ifconfig2.json","tests/fixtures/osx-10.11.6/ifconfig2.out","tests/fixtures/osx-10.14.6/ifconfig.json","tests/fixtures/osx-10.14.6/ifconfig.out","tests/fixtures/osx-10.14.6/ifconfig2.json","tests/fixtures/osx-10.14.6/ifconfig2.out","tests/fixtures/ubuntu-18.04/ifconfig.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ifconfig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ifconfig.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ifconfig.out","lines_changed":40},{"name":"tests/fixtures/osx-10.11.6/ifconfig2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ifconfig2.out","lines_changed":40},{"name":"tests/fixtures/osx-10.14.6/ifconfig.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ifconfig.out","lines_changed":91},{"name":"tests/fixtures/osx-10.14.6/ifconfig2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ifconfig2.out","lines_changed":95},{"name":"tests/fixtures/ubuntu-18.04/ifconfig.json","lines_changed":2}]},"message":"ifconfig fixture updates","epoch":1575658429,"epoch_utc":null},{"commit":"5f4c10ffd5a9cbe4e5e3d2b9adc34f36492eaf46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 10:39:11 2019 -0800","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"changelog.txt","lines_changed":4}]},"message":"doc update","epoch":1575657551,"epoch_utc":null},{"commit":"6f3d2b4b566b963fbf38572c587e8bd4e18881dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 10:30:01 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"require ifconfig-parser v0.0.5 for mac and bytes support","epoch":1575657001,"epoch_utc":null},{"commit":"fea8ace8446b64abe9e61a028951bc4e6df9f9c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Dec 6 10:27:11 2019 -0800","stats":{"files_changed":2,"insertions":20,"deletions":6,"files":["README.md","jc/parsers/ifconfig.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":22}]},"message":"add OSX compatibility","epoch":1575656831,"epoch_utc":null},{"commit":"6633d9262c936217d8e90e64505c66b006cdab56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Nov 30 13:52:24 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["_config.yml"],"file_stats":[{"name":"_config.yml","lines_changed":1}]},"message":"Set theme jekyll-theme-cayman","epoch":1575150744,"epoch_utc":null},{"commit":"7d54137140e6d0515bc23c131a097af5c70c3379","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 28 11:51:54 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"link update","epoch":1574970714,"epoch_utc":null},{"commit":"2fcda6f2480ae6bd5428a0147c19f9af527391b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 25 18:34:21 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add motivation to readme","epoch":1574735661,"epoch_utc":null},{"commit":"9c1b8bacf9a59a86feb2a91eb44919e800491d1e","merge":"d192745 4867655","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 11:55:06 2019 -0800","message":"Merge pull request #16 from kellyjonbrazil/dev\n\nDev v1.5.1","epoch":1574020506,"epoch_utc":null},{"commit":"4867655eb297b1da7a55e0d3a24c7ed7c8af55c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 11:49:36 2019 -0800","stats":{"files_changed":6,"insertions":172,"deletions":0,"files":[".../centos-7.7/iptables-filter-line-numbers.json",".../centos-7.7/iptables-filter-line-numbers.out","tests/fixtures/create_fixtures.sh",".../ubuntu-18.04/iptables-filter-line-numbers.json",".../ubuntu-18.04/iptables-filter-line-numbers.out","tests/test_iptables.py"],"file_stats":[{"name":".../centos-7.7/iptables-filter-line-numbers.json","lines_changed":1},{"name":".../centos-7.7/iptables-filter-line-numbers.out","lines_changed":128},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":1},{"name":".../ubuntu-18.04/iptables-filter-line-numbers.json","lines_changed":1},{"name":".../ubuntu-18.04/iptables-filter-line-numbers.out","lines_changed":17},{"name":"tests/test_iptables.py","lines_changed":24}]},"message":"add line-numbers tests","epoch":1574020176,"epoch_utc":null},{"commit":"47410d1a95406b0960aac705e7cfe925fea3172c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 11:05:46 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1574017546,"epoch_utc":null},{"commit":"5fa49f5e672fc6f8dc18fb4b1761c98b81362649","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 11:00:16 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update","epoch":1574017216,"epoch_utc":null},{"commit":"36c53827fab6ac38c0010250ec387db40fdeecfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 10:56:55 2019 -0800","stats":{"files_changed":19,"insertions":1316,"deletions":308,"files":["tests/fixtures/centos-7.7/systemctl-ls.json","tests/fixtures/centos-7.7/systemctl-ls.out","tests/fixtures/centos-7.7/systemctl-luf.json","tests/fixtures/centos-7.7/systemctl-luf.out","tests/fixtures/centos-7.7/systemctl.json","tests/fixtures/centos-7.7/systemctl.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/systemctl-lj.json","tests/fixtures/ubuntu-18.04/systemctl-lj.out","tests/fixtures/ubuntu-18.04/systemctl-ls.json","tests/fixtures/ubuntu-18.04/systemctl-ls.out","tests/fixtures/ubuntu-18.04/systemctl-luf.json","tests/fixtures/ubuntu-18.04/systemctl-luf.out","tests/fixtures/ubuntu-18.04/systemctl.json","tests/fixtures/ubuntu-18.04/systemctl.out","tests/test_systemctl.py","tests/test_systemctl_lj.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/systemctl-ls.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/systemctl-ls.out","lines_changed":17},{"name":"tests/fixtures/centos-7.7/systemctl-luf.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/systemctl-luf.out","lines_changed":247},{"name":"tests/fixtures/centos-7.7/systemctl.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/systemctl.out","lines_changed":334},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":8},{"name":"tests/fixtures/ubuntu-18.04/systemctl-lj.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/systemctl-lj.out","lines_changed":6},{"name":"tests/fixtures/ubuntu-18.04/systemctl-ls.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/systemctl-ls.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-18.04/systemctl-luf.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/systemctl-luf.out","lines_changed":324},{"name":"tests/fixtures/ubuntu-18.04/systemctl.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/systemctl.out","lines_changed":528},{"name":"tests/test_systemctl.py","lines_changed":4},{"name":"tests/test_systemctl_lj.py","lines_changed":40},{"name":"tests/test_systemctl_ls.py","lines_changed":40},{"name":"tests/test_systemctl_luf.py","lines_changed":40}]},"message":"add systemctl tests","epoch":1574017015,"epoch_utc":null},{"commit":"51631aef5b1b6fdeff4ab543510a9f9e15a0c2c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 10:31:58 2019 -0800","stats":{"files_changed":5,"insertions":358,"deletions":0,"files":["tests/fixtures/centos-7.7/systemctl.json","tests/fixtures/centos-7.7/systemctl.out","tests/fixtures/ubuntu-18.04/systemctl.json","tests/fixtures/ubuntu-18.04/systemctl.out","tests/test_systemctl.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/systemctl.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/systemctl.out","lines_changed":118},{"name":"tests/fixtures/ubuntu-18.04/systemctl.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/systemctl.out","lines_changed":198},{"name":"tests/test_systemctl.py","lines_changed":40}]},"message":"add systemctl tests","epoch":1574015518,"epoch_utc":null},{"commit":"a0298ac8a39093620b6859c909a78d11ab4a8e56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 17 10:26:48 2019 -0800","stats":{"files_changed":5,"insertions":55,"deletions":0,"files":["tests/fixtures/centos-7.7/fstab.json","tests/fixtures/centos-7.7/fstab.out","tests/fixtures/ubuntu-18.04/fstab.json","tests/fixtures/ubuntu-18.04/fstab.out","tests/test_fstab.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/fstab.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/fstab.out","lines_changed":11},{"name":"tests/fixtures/ubuntu-18.04/fstab.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/fstab.out","lines_changed":2},{"name":"tests/test_fstab.py","lines_changed":40}]},"message":"add fstab tests","epoch":1574015208,"epoch_utc":null},{"commit":"98c0188821ebaa71c5661f2e095cf464bec695f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:27:51 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/systemctl_ls.md","jc/parsers/systemctl_ls.py"],"file_stats":[{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2}]},"message":"formatting fix","epoch":1573874871,"epoch_utc":null},{"commit":"ab1dabe3e42997825707006b63cc0c03d28470d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:26:22 2019 -0800","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py"],"file_stats":[{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2}]},"message":"doc update","epoch":1573874782,"epoch_utc":null},{"commit":"94bdb11fdf0e16d89769046d317643334ef1acdd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:24:32 2019 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"remove systemctl from TODO","epoch":1573874672,"epoch_utc":null},{"commit":"b6727d68bab66164a3834b240ae868062aad9371","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:18:31 2019 -0800","stats":{"files_changed":1,"insertions":68,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":68}]},"message":"add systemctl parsers","epoch":1573874311,"epoch_utc":null},{"commit":"89bad7fc2b4023b10b6eeb7ff1f8f18b71731cb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:13:53 2019 -0800","stats":{"files_changed":5,"insertions":1,"deletions":191,"files":["changelog.txt","docgen.sh","docs/parsers/systemctl_lm.md","jc/cli.py","jc/parsers/systemctl_lm.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/systemctl_lm.md","lines_changed":76},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/systemctl_lm.py","lines_changed":110}]},"message":"remove systemctl list-machines parser","epoch":1573874033,"epoch_utc":null},{"commit":"c0b8b810a2616e77973c1223f9c39329112337ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:07:42 2019 -0800","stats":{"files_changed":5,"insertions":306,"deletions":0,"files":["docgen.sh","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_lm.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md"],"file_stats":[{"name":"docgen.sh","lines_changed":4},{"name":"docs/parsers/systemctl_lj.md","lines_changed":94},{"name":"docs/parsers/systemctl_lm.md","lines_changed":76},{"name":"docs/parsers/systemctl_ls.md","lines_changed":68},{"name":"docs/parsers/systemctl_luf.md","lines_changed":64}]},"message":"add systemctl list parsers","epoch":1573873662,"epoch_utc":null},{"commit":"31eb65acd18b6d9163de900dbe48807a41a23785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:05:49 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_lm.py"],"file_stats":[{"name":"jc/parsers/systemctl_lm.py","lines_changed":4}]},"message":"doc fix","epoch":1573873549,"epoch_utc":null},{"commit":"513bbeb4649c011476930e1d1bf739ff06c2d66f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 19:02:57 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/systemctl_lj.py"],"file_stats":[{"name":"jc/parsers/systemctl_lj.py","lines_changed":2}]},"message":"add break on footer condition","epoch":1573873377,"epoch_utc":null},{"commit":"3a52fb725a0e56b52a0ea430266400b268360737","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 18:58:17 2019 -0800","stats":{"files_changed":2,"insertions":55,"deletions":29,"files":["jc/cli.py","jc/parsers/systemctl_lj.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4},{"name":"jc/parsers/systemctl_lj.py","lines_changed":80}]},"message":"add systemctl list-jobs parser","epoch":1573873097,"epoch_utc":null},{"commit":"5affd444999de88b9bff7b49d790913540f97cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 18:36:12 2019 -0800","stats":{"files_changed":6,"insertions":342,"deletions":24,"files":["jc/cli.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_lm.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":11},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":110},{"name":"jc/parsers/systemctl_lm.py","lines_changed":110},{"name":"jc/parsers/systemctl_ls.py","lines_changed":101},{"name":"jc/parsers/systemctl_luf.py","lines_changed":32}]},"message":"add systemctl_lj, lm, ls, and luf","epoch":1573871772,"epoch_utc":null},{"commit":"5dbc6e806c5d05bfa1f7e2156ed2573341eb23c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 12:28:28 2019 -0800","stats":{"files_changed":2,"insertions":142,"deletions":29,"files":["jc/cli.py","jc/parsers/systemctl_luf.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":61},{"name":"jc/parsers/systemctl_luf.py","lines_changed":110}]},"message":"add systemctl_luf parser","epoch":1573849708,"epoch_utc":null},{"commit":"59ae31f3f342c9337037aac4630310c9b9eb8287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 11:58:17 2019 -0800","stats":{"files_changed":6,"insertions":219,"deletions":0,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/systemctl.md","jc/cli.py","jc/parsers/systemctl.py"],"file_stats":[{"name":"README.md","lines_changed":29},{"name":"changelog.txt","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/systemctl.md","lines_changed":76},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/systemctl.py","lines_changed":109}]},"message":"add systemctl parser","epoch":1573847897,"epoch_utc":null},{"commit":"230e921c2e8d931ea8a6abdf81215dbfc968b41c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 10:36:58 2019 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"remove fstab from TODO","epoch":1573843018,"epoch_utc":null},{"commit":"a7c3d88b08ab90b719035cb15d78afe708235742","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 10:01:29 2019 -0800","stats":{"files_changed":3,"insertions":136,"deletions":0,"files":["docgen.sh","docs/parsers/fstab.md","jc/parsers/fstab.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/fstab.md","lines_changed":107},{"name":"jc/parsers/fstab.py","lines_changed":28}]},"message":"update example and docs","epoch":1573840889,"epoch_utc":null},{"commit":"9b453bcb84dd9f2f566955eda1ab35c863b3e8a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 09:57:25 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":13,"files":["jc/parsers/fstab.py"],"file_stats":[{"name":"jc/parsers/fstab.py","lines_changed":14}]},"message":"remove commented code block","epoch":1573840645,"epoch_utc":null},{"commit":"ce43c782f601fc12267fa22279e8e0142ecc3a7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 09:32:12 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"fstab update","epoch":1573839132,"epoch_utc":null},{"commit":"cb16faaf4d1700379d53053fe06824fd03404f87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 09:31:28 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"helptext update","epoch":1573839088,"epoch_utc":null},{"commit":"3f1d3ff6d85422536e0adfb6433fd3ec0399ebe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 09:29:54 2019 -0800","stats":{"files_changed":2,"insertions":73,"deletions":6,"files":["README.md","jc/parsers/fstab.py"],"file_stats":[{"name":"README.md","lines_changed":31},{"name":"jc/parsers/fstab.py","lines_changed":48}]},"message":"add examples","epoch":1573838994,"epoch_utc":null},{"commit":"6f67eecd5ed46f8a692ff5dd607a2395a5c838ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 09:22:07 2019 -0800","stats":{"files_changed":2,"insertions":108,"deletions":0,"files":["jc/cli.py","jc/parsers/fstab.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/fstab.py","lines_changed":105}]},"message":"add fstab parser","epoch":1573838527,"epoch_utc":null},{"commit":"e75c819190634f0a9048942b39eda691831829ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 08:51:53 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"changelog update","epoch":1573836713,"epoch_utc":null},{"commit":"601e68d104dd43940acadaa574dfd9b5117b0476","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 08:40:13 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/hosts.md","jc/parsers/hosts.py"],"file_stats":[{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2}]},"message":"doc update","epoch":1573836013,"epoch_utc":null},{"commit":"8285ecfd1e7810102cdbc399398a16f999c841ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 15 08:40:01 2019 -0800","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["tests/fixtures/centos-7.7/hosts.out","tests/fixtures/ubuntu-18.04/hosts.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/hosts.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/hosts.out","lines_changed":3}]},"message":"enhance test file with comments","epoch":1573836001,"epoch_utc":null},{"commit":"8726de902e527b95a12afd79a53d533cc176703d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 22:04:59 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"add hosts parser","epoch":1573797899,"epoch_utc":null},{"commit":"4133585274b0e7faa0255a911468248eb390d673","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 22:04:48 2019 -0800","stats":{"files_changed":5,"insertions":53,"deletions":0,"files":["tests/fixtures/centos-7.7/hosts.json","tests/fixtures/centos-7.7/hosts.out","tests/fixtures/ubuntu-18.04/hosts.json","tests/fixtures/ubuntu-18.04/hosts.out","tests/test_hosts.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/hosts.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/hosts.out","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/hosts.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/hosts.out","lines_changed":9},{"name":"tests/test_hosts.py","lines_changed":40}]},"message":"add hosts tests","epoch":1573797888,"epoch_utc":null},{"commit":"ad913b141721655a72a7b2a6ad60037e5acd5f9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:59:06 2019 -0800","stats":{"files_changed":4,"insertions":148,"deletions":2,"files":["README.md","docgen.sh","docs/parsers/hosts.md","jc/parsers/hosts.py"],"file_stats":[{"name":"README.md","lines_changed":51},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/hosts.md","lines_changed":96},{"name":"jc/parsers/hosts.py","lines_changed":2}]},"message":"add hosts docs","epoch":1573797546,"epoch_utc":null},{"commit":"7113e5a844fc0304f62f4afe65b5cbc816f75372","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:55:08 2019 -0800","stats":{"files_changed":1,"insertions":10,"deletions":0,"files":["jc/parsers/hosts.py"],"file_stats":[{"name":"jc/parsers/hosts.py","lines_changed":10}]},"message":"filter out comments at the end of the line","epoch":1573797308,"epoch_utc":null},{"commit":"a3a8369dc0e7227072f595cef1e57d471eff4d2f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:36:02 2019 -0800","stats":{"files_changed":1,"insertions":51,"deletions":9,"files":["jc/parsers/hosts.py"],"file_stats":[{"name":"jc/parsers/hosts.py","lines_changed":60}]},"message":"add docs","epoch":1573796162,"epoch_utc":null},{"commit":"64016b8ef049d5d4f02b4371f5cc9632c19bcaa2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:31:25 2019 -0800","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["jc/cli.py","jc/parsers/hosts.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/hosts.py","lines_changed":89}]},"message":"add hosts parser","epoch":1573795885,"epoch_utc":null},{"commit":"1cb49d60c84054b0446f299f6b4bab7d102101c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:21:15 2019 -0800","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"remove sar and sadf","epoch":1573795275,"epoch_utc":null},{"commit":"c858adfd12144569d0b990a217c5bcd75bd23828","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:11:05 2019 -0800","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"remove stat from todo","epoch":1573794665,"epoch_utc":null},{"commit":"08d68327c777dd740d93a1b5fff8cf62f58904c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 21:08:09 2019 -0800","stats":{"files_changed":5,"insertions":8080,"deletions":0,"files":["tests/fixtures/centos-7.7/stat.json","tests/fixtures/centos-7.7/stat.out","tests/fixtures/ubuntu-18.04/stat.json","tests/fixtures/ubuntu-18.04/stat.out","tests/test_stat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/stat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/stat.out","lines_changed":6678},{"name":"tests/fixtures/ubuntu-18.04/stat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/stat.out","lines_changed":1360},{"name":"tests/test_stat.py","lines_changed":40}]},"message":"add stat tests","epoch":1573794489,"epoch_utc":null},{"commit":"0d7c6c5664911af7a41149d51dd6ae05b39d7648","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 20:57:49 2019 -0800","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/parsers/stat.md","jc/parsers/stat.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":8}]},"message":"doc fix and add continue lines","epoch":1573793869,"epoch_utc":null},{"commit":"8bfa41dbf485cb06c928bc00a68727d2ceac21fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 17:36:29 2019 -0800","stats":{"files_changed":3,"insertions":22,"deletions":14,"files":["README.md","docs/parsers/stat.md","jc/parsers/stat.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docs/parsers/stat.md","lines_changed":12},{"name":"jc/parsers/stat.py","lines_changed":20}]},"message":"change values to null if -","epoch":1573781789,"epoch_utc":null},{"commit":"7e2fa48ed4f3fd452082ce06e7306efd38b2d508","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 17:24:51 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"update changelog","epoch":1573781091,"epoch_utc":null},{"commit":"340635cad5224f2c715bf961956f4b9b6119d80b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 17:23:44 2019 -0800","stats":{"files_changed":3,"insertions":408,"deletions":111,"files":["docgen.sh","docs/parsers/ss.md","docs/parsers/stat.md"],"file_stats":[{"name":"docgen.sh","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":363},{"name":"docs/parsers/stat.md","lines_changed":154}]},"message":"fix stats doc","epoch":1573781024,"epoch_utc":null},{"commit":"8f77d1de098f035767d73a6965a695b95b75e161","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 17:21:56 2019 -0800","stats":{"files_changed":2,"insertions":111,"deletions":253,"files":["docgen.sh","docs/parsers/ss.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ss.md","lines_changed":363}]},"message":"add stat docs","epoch":1573780916,"epoch_utc":null},{"commit":"7dcf1b25ffb801375f0bf4263f34713ded904de9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 17:20:13 2019 -0800","stats":{"files_changed":1,"insertions":13,"deletions":0,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":13}]},"message":"add link_to field","epoch":1573780813,"epoch_utc":null},{"commit":"9b735381063a1167a6a74864a43b81aefd98009f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 16:44:12 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":2}]},"message":"set compatibility to linux only","epoch":1573778652,"epoch_utc":null},{"commit":"3bf8c8c6dbdf7e03e26b4581e35c3274084c07ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 16:40:52 2019 -0800","stats":{"files_changed":7,"insertions":27,"deletions":27,"files":["jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/mount.py","lines_changed":6},{"name":"jc/parsers/netstat.py","lines_changed":8},{"name":"jc/parsers/ps.py","lines_changed":8},{"name":"jc/parsers/route.py","lines_changed":8},{"name":"jc/parsers/uname.py","lines_changed":8},{"name":"jc/parsers/uptime.py","lines_changed":8},{"name":"jc/parsers/w.py","lines_changed":8}]},"message":"pep8 fixes","epoch":1573778452,"epoch_utc":null},{"commit":"04a1ff2ca7873d55cdbc831e521f3d4892074d98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 16:36:00 2019 -0800","stats":{"files_changed":8,"insertions":28,"deletions":28,"files":["jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":8},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":6},{"name":"jc/parsers/jobs.py","lines_changed":6},{"name":"jc/parsers/ls.py","lines_changed":8},{"name":"jc/parsers/lsblk.py","lines_changed":10},{"name":"jc/parsers/lsmod.py","lines_changed":8},{"name":"jc/parsers/lsof.py","lines_changed":8}]},"message":"pep8 fixes","epoch":1573778160,"epoch_utc":null},{"commit":"64647d230ac936cb43864481ae0f45d13707d7b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 16:32:11 2019 -0800","stats":{"files_changed":6,"insertions":21,"deletions":21,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":8},{"name":"jc/parsers/dig.py","lines_changed":8},{"name":"jc/parsers/env.py","lines_changed":8},{"name":"jc/parsers/foo.py","lines_changed":8},{"name":"jc/parsers/free.py","lines_changed":6}]},"message":"pep8 cleanup","epoch":1573777931,"epoch_utc":null},{"commit":"c2a67e1b70f33044aecabd8b46018117cb38cb9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 16:31:52 2019 -0800","stats":{"files_changed":2,"insertions":213,"deletions":16,"files":["README.md","jc/parsers/stat.py"],"file_stats":[{"name":"README.md","lines_changed":48},{"name":"jc/parsers/stat.py","lines_changed":181}]},"message":"add stat parser","epoch":1573777912,"epoch_utc":null},{"commit":"edb9a7c76e1fedaf37b6a226ad4e1cfc08a9a5ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 15:26:36 2019 -0800","stats":{"files_changed":2,"insertions":94,"deletions":0,"files":["jc/cli.py","jc/parsers/stat.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/stat.py","lines_changed":91}]},"message":"add stat parser","epoch":1573773996,"epoch_utc":null},{"commit":"a407f5b67833cc5f8dda9fe8265cd34e62f28d14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 14:01:04 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"minor update","epoch":1573768864,"epoch_utc":null},{"commit":"e5b4987acb70e854d9996350235c5535b4a46b69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 14:00:06 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"doc update","epoch":1573768806,"epoch_utc":null},{"commit":"ba8cc18eebe779742cff0ba4c8bebe376e787c8c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 13:56:09 2019 -0800","stats":{"files_changed":5,"insertions":405,"deletions":0,"files":["tests/fixtures/centos-7.7/ss-sudo-a.json","tests/fixtures/centos-7.7/ss-sudo-a.out","tests/fixtures/ubuntu-18.04/ss-sudo-a.json","tests/fixtures/ubuntu-18.04/ss-sudo-a.out","tests/test_ss.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ss-sudo-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ss-sudo-a.out","lines_changed":204},{"name":"tests/fixtures/ubuntu-18.04/ss-sudo-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ss-sudo-a.out","lines_changed":159},{"name":"tests/test_ss.py","lines_changed":40}]},"message":"add ss tests","epoch":1573768569,"epoch_utc":null},{"commit":"d2c7316e00b9aaf19231c05351821041458baf98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 13:43:07 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"update command options info","epoch":1573767787,"epoch_utc":null},{"commit":"609aa14d243206e81ed31f8438c3f42e8263e140","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 13:38:52 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/ss.md","jc/parsers/ss.py"],"file_stats":[{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2}]},"message":"spelling fix","epoch":1573767532,"epoch_utc":null},{"commit":"ef1ad4c700fcb740b5fbe1e12205b9a30ae427ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 13:37:55 2019 -0800","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["docs/parsers/ss.md","jc/parsers/ss.py"],"file_stats":[{"name":"docs/parsers/ss.md","lines_changed":3},{"name":"jc/parsers/ss.py","lines_changed":3}]},"message":"doc update","epoch":1573767475,"epoch_utc":null},{"commit":"a0e2732152dc3005914b9a3e4f03e937a113c67f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 09:46:10 2019 -0800","stats":{"files_changed":1,"insertions":64,"deletions":12,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":76}]},"message":"add ss example","epoch":1573753570,"epoch_utc":null},{"commit":"9b5d3e3be1ac07813e716f8426fe89cced478221","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 09:42:44 2019 -0800","stats":{"files_changed":1,"insertions":135,"deletions":25,"files":["docs/parsers/ss.md"],"file_stats":[{"name":"docs/parsers/ss.md","lines_changed":160}]},"message":"update doc","epoch":1573753364,"epoch_utc":null},{"commit":"2663ef31fbc1b69b89b8032640a25065cc953866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 14 09:38:19 2019 -0800","stats":{"files_changed":1,"insertions":159,"deletions":30,"files":["jc/parsers/ss.py"],"file_stats":[{"name":"jc/parsers/ss.py","lines_changed":189}]},"message":"fix field names per ss documentation","epoch":1573753099,"epoch_utc":null},{"commit":"a4cdd3378e6a031f16dd371ed5cd60ff018feb32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 13 08:17:41 2019 -0800","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":6}]},"message":"add compatibility info","epoch":1573661861,"epoch_utc":null},{"commit":"2f805da24d0e833e3d2a1f3a5ec34031fa911c05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 13 08:04:40 2019 -0800","stats":{"files_changed":45,"insertions":51,"deletions":51,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/utils.md","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/utils.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":8},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":8}]},"message":"add colon to parameter in docs","epoch":1573661080,"epoch_utc":null},{"commit":"79152a946d93e4facf9711bfa0f421e1978e0f1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 13 07:46:14 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":3}]},"message":"initialize network_list and socket_list variables","epoch":1573659974,"epoch_utc":null},{"commit":"de37bb37d01b397df2b5992b4acd64817380401d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 13 07:45:37 2019 -0800","stats":{"files_changed":3,"insertions":187,"deletions":1,"files":["docgen.sh","docs/parsers/ss.md","jc/parsers/ss.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ss.md","lines_changed":184},{"name":"jc/parsers/ss.py","lines_changed":3}]},"message":"add ss docs","epoch":1573659937,"epoch_utc":null},{"commit":"f783e44e5c0cd05733da5d24573f06d05760f993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 18:58:58 2019 -0800","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"changelog.txt","lines_changed":1}]},"message":"doc fix","epoch":1573613938,"epoch_utc":null},{"commit":"af82f2c991ac0668485e75ae78a26b9553ec8b13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 18:56:42 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update raw format note","epoch":1573613802,"epoch_utc":null},{"commit":"46774daf9d3e0612df8f79d4b6b724e612ceb725","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 18:51:21 2019 -0800","stats":{"files_changed":2,"insertions":194,"deletions":4,"files":["README.md","jc/parsers/ss.py"],"file_stats":[{"name":"README.md","lines_changed":68},{"name":"jc/parsers/ss.py","lines_changed":130}]},"message":"doc update","epoch":1573613481,"epoch_utc":null},{"commit":"648306b7856fe2e296ce463ff4c9c2a8632c92d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 18:04:40 2019 -0800","stats":{"files_changed":1,"insertions":44,"deletions":22,"files":["jc/parsers/ss.py"],"file_stats":[{"name":"jc/parsers/ss.py","lines_changed":66}]},"message":"process ss data","epoch":1573610680,"epoch_utc":null},{"commit":"b7a4f205b80c0a6a41aaabf59703525ac526c295","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 17:10:06 2019 -0800","stats":{"files_changed":1,"insertions":17,"deletions":14,"files":["jc/parsers/ss.py"],"file_stats":[{"name":"jc/parsers/ss.py","lines_changed":31}]},"message":"parser fixes","epoch":1573607406,"epoch_utc":null},{"commit":"fdb168b43a69358a97bf43b71a0adbc7b1ef56f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 16:34:42 2019 -0800","stats":{"files_changed":2,"insertions":120,"deletions":0,"files":["jc/cli.py","jc/parsers/ss.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/ss.py","lines_changed":117}]},"message":"add ss parser","epoch":1573605282,"epoch_utc":null},{"commit":"b6f65c93c462856f26201df0cbfe804b29a65169","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 15:05:21 2019 -0800","stats":{"files_changed":3,"insertions":43,"deletions":69,"files":["README.md","docs/parsers/ps.md","jc/parsers/ps.py"],"file_stats":[{"name":"README.md","lines_changed":26},{"name":"docs/parsers/ps.md","lines_changed":43},{"name":"jc/parsers/ps.py","lines_changed":43}]},"message":"ps doc update","epoch":1573599921,"epoch_utc":null},{"commit":"3f4838f17a81969718d9e5b6bafa21e0b92e1d95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 14:22:49 2019 -0800","stats":{"files_changed":2,"insertions":0,"deletions":6,"files":["docgen.sh","docs/cli.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/cli.md","lines_changed":5}]},"message":"remove cli.md","epoch":1573597369,"epoch_utc":null},{"commit":"eef0dee2aa206716d9cf011bec58a06c46bbee15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 14:20:59 2019 -0800","stats":{"files_changed":2,"insertions":8,"deletions":0,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":4},{"name":"jc/utils.py","lines_changed":4}]},"message":"doc update","epoch":1573597259,"epoch_utc":null},{"commit":"e17388d3b2d1521d963bf9dd9e7a4ba5ba9bb09d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 14:19:40 2019 -0800","stats":{"files_changed":2,"insertions":44,"deletions":4,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":22},{"name":"jc/utils.py","lines_changed":26}]},"message":"doc update","epoch":1573597180,"epoch_utc":null},{"commit":"7e6a1bc719b7160ba70cd326ff6aa182993a7380","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 14:15:22 2019 -0800","stats":{"files_changed":2,"insertions":41,"deletions":63,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":51},{"name":"jc/__init__.py","lines_changed":53}]},"message":"doc update","epoch":1573596922,"epoch_utc":null},{"commit":"37738a2ea2f15af847e4b8383aba911e2020a3e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 14:10:26 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update contributions","epoch":1573596626,"epoch_utc":null},{"commit":"c5834a57db8957723a1425b9db46c433e28a3af1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 13:35:32 2019 -0800","stats":{"files_changed":1,"insertions":14,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":14}]},"message":"add todo section","epoch":1573594532,"epoch_utc":null},{"commit":"91b9373f380e06f91888811edbfb21747ff08810","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 13:05:19 2019 -0800","stats":{"files_changed":1,"insertions":417,"deletions":673,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1090}]},"message":"new examples","epoch":1573592719,"epoch_utc":null},{"commit":"ce0bb5b816eed0c75542ead474c3dcb8401be2d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:52:16 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting fix","epoch":1573588336,"epoch_utc":null},{"commit":"f330ff0eff00586f46d18497f2441e94b6430e91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:49:14 2019 -0800","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":12}]},"message":"wrap example text","epoch":1573588154,"epoch_utc":null},{"commit":"4b02700414660b90518311485761870402368625","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:46:52 2019 -0800","stats":{"files_changed":1,"insertions":9,"deletions":20,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":29}]},"message":"update simple examples","epoch":1573588012,"epoch_utc":null},{"commit":"ee30180376b7acec46314bbc483866bff41c362a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:39:33 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"fix note","epoch":1573587573,"epoch_utc":null},{"commit":"338e0ff15c7fac84475c1ed107e6a23e7a009b1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:38:50 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add schema note","epoch":1573587530,"epoch_utc":null},{"commit":"3ac75305dfa33429646bb5d415567034cccfeee3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:28:10 2019 -0800","stats":{"files_changed":39,"insertions":351,"deletions":39,"files":["docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/df.md","lines_changed":10},{"name":"docs/parsers/dig.md","lines_changed":10},{"name":"docs/parsers/env.md","lines_changed":10},{"name":"docs/parsers/free.md","lines_changed":10},{"name":"docs/parsers/history.md","lines_changed":10},{"name":"docs/parsers/ifconfig.md","lines_changed":10},{"name":"docs/parsers/iptables.md","lines_changed":10},{"name":"docs/parsers/jobs.md","lines_changed":10},{"name":"docs/parsers/ls.md","lines_changed":10},{"name":"docs/parsers/lsblk.md","lines_changed":10},{"name":"docs/parsers/lsmod.md","lines_changed":10},{"name":"docs/parsers/lsof.md","lines_changed":10},{"name":"docs/parsers/mount.md","lines_changed":10},{"name":"docs/parsers/netstat.md","lines_changed":10},{"name":"docs/parsers/ps.md","lines_changed":10},{"name":"docs/parsers/route.md","lines_changed":10},{"name":"docs/parsers/uname.md","lines_changed":10},{"name":"docs/parsers/uptime.md","lines_changed":10},{"name":"docs/parsers/w.md","lines_changed":10},{"name":"jc/parsers/df.py","lines_changed":10},{"name":"jc/parsers/dig.py","lines_changed":10},{"name":"jc/parsers/env.py","lines_changed":10},{"name":"jc/parsers/foo.py","lines_changed":10},{"name":"jc/parsers/free.py","lines_changed":10},{"name":"jc/parsers/history.py","lines_changed":10},{"name":"jc/parsers/ifconfig.py","lines_changed":10},{"name":"jc/parsers/iptables.py","lines_changed":10},{"name":"jc/parsers/jobs.py","lines_changed":10},{"name":"jc/parsers/ls.py","lines_changed":10},{"name":"jc/parsers/lsblk.py","lines_changed":10},{"name":"jc/parsers/lsmod.py","lines_changed":10},{"name":"jc/parsers/lsof.py","lines_changed":10},{"name":"jc/parsers/mount.py","lines_changed":10},{"name":"jc/parsers/netstat.py","lines_changed":10},{"name":"jc/parsers/ps.py","lines_changed":10},{"name":"jc/parsers/route.py","lines_changed":10},{"name":"jc/parsers/uname.py","lines_changed":10},{"name":"jc/parsers/uptime.py","lines_changed":10},{"name":"jc/parsers/w.py","lines_changed":10}]},"message":"update process() doc","epoch":1573586890,"epoch_utc":null},{"commit":"3bdcf44afb708cf6a716a0847b119f895602c23e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:22:17 2019 -0800","stats":{"files_changed":2,"insertions":18,"deletions":2,"files":["docs/parsers/arp.md","jc/parsers/arp.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":10},{"name":"jc/parsers/arp.py","lines_changed":10}]},"message":"doc update","epoch":1573586537,"epoch_utc":null},{"commit":"e3f4ffede56fe48c0a282a021ac5cdfd7a8abee9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:18:00 2019 -0800","stats":{"files_changed":20,"insertions":172,"deletions":77,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":13},{"name":"docs/parsers/dig.md","lines_changed":13},{"name":"docs/parsers/env.md","lines_changed":13},{"name":"docs/parsers/free.md","lines_changed":13},{"name":"docs/parsers/history.md","lines_changed":13},{"name":"docs/parsers/ifconfig.md","lines_changed":13},{"name":"docs/parsers/iptables.md","lines_changed":13},{"name":"docs/parsers/jobs.md","lines_changed":13},{"name":"docs/parsers/ls.md","lines_changed":13},{"name":"docs/parsers/lsblk.md","lines_changed":13},{"name":"docs/parsers/lsmod.md","lines_changed":13},{"name":"docs/parsers/lsof.md","lines_changed":13},{"name":"docs/parsers/mount.md","lines_changed":13},{"name":"docs/parsers/netstat.md","lines_changed":13},{"name":"docs/parsers/ps.md","lines_changed":13},{"name":"docs/parsers/route.md","lines_changed":13},{"name":"docs/parsers/uname.md","lines_changed":13},{"name":"docs/parsers/uptime.md","lines_changed":13},{"name":"docs/parsers/w.md","lines_changed":13}]},"message":"doc update","epoch":1573586280,"epoch_utc":null},{"commit":"f0c8725d4355113f7690f20bb99078e488084ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:17:33 2019 -0800","stats":{"files_changed":21,"insertions":181,"deletions":81,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":13},{"name":"jc/parsers/dig.py","lines_changed":13},{"name":"jc/parsers/env.py","lines_changed":13},{"name":"jc/parsers/foo.py","lines_changed":13},{"name":"jc/parsers/free.py","lines_changed":13},{"name":"jc/parsers/history.py","lines_changed":13},{"name":"jc/parsers/ifconfig.py","lines_changed":13},{"name":"jc/parsers/iptables.py","lines_changed":13},{"name":"jc/parsers/jobs.py","lines_changed":13},{"name":"jc/parsers/ls.py","lines_changed":13},{"name":"jc/parsers/lsblk.py","lines_changed":13},{"name":"jc/parsers/lsmod.py","lines_changed":13},{"name":"jc/parsers/lsof.py","lines_changed":13},{"name":"jc/parsers/mount.py","lines_changed":13},{"name":"jc/parsers/netstat.py","lines_changed":13},{"name":"jc/parsers/ps.py","lines_changed":13},{"name":"jc/parsers/route.py","lines_changed":13},{"name":"jc/parsers/uname.py","lines_changed":13},{"name":"jc/parsers/uptime.py","lines_changed":13},{"name":"jc/parsers/w.py","lines_changed":13}]},"message":"doc update","epoch":1573586253,"epoch_utc":null},{"commit":"5473bc4eb697d00bd26a038287e1137e438cacb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 11:12:41 2019 -0800","stats":{"files_changed":2,"insertions":16,"deletions":6,"files":["docs/parsers/arp.md","jc/parsers/arp.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":11},{"name":"jc/parsers/arp.py","lines_changed":11}]},"message":"doc update","epoch":1573585961,"epoch_utc":null},{"commit":"b9bd9422bfa46144416fa65add2e041d4124357b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:19:01 2019 -0800","stats":{"files_changed":2,"insertions":380,"deletions":46,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":213},{"name":"jc/parsers/dig.py","lines_changed":213}]},"message":"doc update","epoch":1573571941,"epoch_utc":null},{"commit":"cb5729a070925a7fa29f762bd4b074532f5cba55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:18:27 2019 -0800","stats":{"files_changed":1,"insertions":62,"deletions":44,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":106}]},"message":"add options to docs","epoch":1573571907,"epoch_utc":null},{"commit":"f0b1ab42337746afd37365abdf44729d530d5410","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:08:35 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":1},{"name":"jc/utils.py","lines_changed":1}]},"message":"doc update","epoch":1573571315,"epoch_utc":null},{"commit":"b15386e849b9fea347e7b17307eedf779d8022fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:07:43 2019 -0800","stats":{"files_changed":2,"insertions":11,"deletions":5,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":7},{"name":"jc/utils.py","lines_changed":9}]},"message":"doc update","epoch":1573571263,"epoch_utc":null},{"commit":"d2a2c8da35ee44e9a7572885609548eb809bcdda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:03:02 2019 -0800","stats":{"files_changed":3,"insertions":1,"deletions":5,"files":["docs/parsers/iptables.md","docs/parsers/mount.md","docs/parsers/uname.md"],"file_stats":[{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2}]},"message":"doc updates","epoch":1573570982,"epoch_utc":null},{"commit":"7251548cbb09beae6971385a56036e9649bd9b2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 12 07:01:36 2019 -0800","stats":{"files_changed":3,"insertions":3,"deletions":5,"files":["jc/parsers/iptables.py","jc/parsers/mount.py","jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":3},{"name":"jc/parsers/uname.py","lines_changed":3}]},"message":"documentation updates","epoch":1573570896,"epoch_utc":null},{"commit":"146e29f7cbc0f396be67dbd7ae971a4ef4dafb7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 18:30:46 2019 -0800","stats":{"files_changed":47,"insertions":5386,"deletions":2249,"files":["docgen.sh","docs/cli.md","docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/readme.md","docs/utils.md","jc/__init__.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/utils.py"],"file_stats":[{"name":"docgen.sh","lines_changed":27},{"name":"docs/cli.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":110},{"name":"docs/parsers/df.md","lines_changed":97},{"name":"docs/parsers/dig.md","lines_changed":212},{"name":"docs/parsers/env.md","lines_changed":72},{"name":"docs/parsers/free.md","lines_changed":77},{"name":"docs/parsers/history.md","lines_changed":64},{"name":"docs/parsers/ifconfig.md","lines_changed":170},{"name":"docs/parsers/iptables.md","lines_changed":168},{"name":"docs/parsers/jobs.md","lines_changed":98},{"name":"docs/parsers/ls.md","lines_changed":168},{"name":"docs/parsers/lsblk.md","lines_changed":273},{"name":"docs/parsers/lsmod.md","lines_changed":130},{"name":"docs/parsers/lsof.md","lines_changed":124},{"name":"docs/parsers/mount.md","lines_changed":82},{"name":"docs/parsers/netstat.md","lines_changed":352},{"name":"docs/parsers/ps.md","lines_changed":223},{"name":"docs/parsers/route.md","lines_changed":129},{"name":"docs/parsers/uname.md","lines_changed":55},{"name":"docs/parsers/uptime.md","lines_changed":56},{"name":"docs/parsers/w.md","lines_changed":108},{"name":"docs/readme.md","lines_changed":79},{"name":"docs/utils.md","lines_changed":22},{"name":"jc/__init__.py","lines_changed":135},{"name":"jc/parsers/arp.py","lines_changed":176},{"name":"jc/parsers/df.py","lines_changed":129},{"name":"jc/parsers/dig.py","lines_changed":362},{"name":"jc/parsers/env.py","lines_changed":101},{"name":"jc/parsers/foo.py","lines_changed":37},{"name":"jc/parsers/free.py","lines_changed":111},{"name":"jc/parsers/history.py","lines_changed":85},{"name":"jc/parsers/ifconfig.py","lines_changed":294},{"name":"jc/parsers/iptables.py","lines_changed":271},{"name":"jc/parsers/jobs.py","lines_changed":150},{"name":"jc/parsers/ls.py","lines_changed":280},{"name":"jc/parsers/lsblk.py","lines_changed":499},{"name":"jc/parsers/lsmod.py","lines_changed":211},{"name":"jc/parsers/lsof.py","lines_changed":205},{"name":"jc/parsers/mount.py","lines_changed":115},{"name":"jc/parsers/netstat.py","lines_changed":661},{"name":"jc/parsers/ps.py","lines_changed":389},{"name":"jc/parsers/route.py","lines_changed":213},{"name":"jc/parsers/uname.py","lines_changed":57},{"name":"jc/parsers/uptime.py","lines_changed":69},{"name":"jc/parsers/w.py","lines_changed":173},{"name":"jc/utils.py","lines_changed":11}]},"message":"update docs","epoch":1573525846,"epoch_utc":null},{"commit":"363fd3eab409351121dab8a11c6b565829ccd84a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 16:27:28 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"move parser_name to except block","epoch":1573518448,"epoch_utc":null},{"commit":"4083dd4260ff3a8bb6649e1661cf3e058fdbad59","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 16:16:41 2019 -0800","stats":{"files_changed":2,"insertions":24,"deletions":5,"files":["changelog.txt","jc/cli.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/cli.py","lines_changed":28}]},"message":"add -d option","epoch":1573517801,"epoch_utc":null},{"commit":"b2b74547baaf33058d74fc08cb665777b19bd05a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 15:53:42 2019 -0800","stats":{"files_changed":6,"insertions":317,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-sudo-aeep.json","tests/fixtures/centos-7.7/netstat-sudo-aeep.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.json","tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.out","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/netstat-sudo-aeep.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-sudo-aeep.out","lines_changed":164},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.out","lines_changed":126},{"name":"tests/test_netstat.py","lines_changed":24}]},"message":"add netstat-sudo-aeep tests","epoch":1573516422,"epoch_utc":null},{"commit":"dddb0baabf8a78261ac80380b97e7c92c7ce4d89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 15:53:22 2019 -0800","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":8}]},"message":"use \\u2063 instead of \\u2026","epoch":1573516402,"epoch_utc":null},{"commit":"84b4f67ef9d4bb0db201a095d74400a56394589d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 14:34:36 2019 -0800","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["tests/fixtures/centos-7.7/ps-axu.json","tests/fixtures/ubuntu-18.04/ps-axu.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ps-axu.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ps-axu.json","lines_changed":2}]},"message":"new json output","epoch":1573511676,"epoch_utc":null},{"commit":"3a089138b8c269ba3c5f7aec87ae3f8ec368c3ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 14:31:27 2019 -0800","stats":{"files_changed":1,"insertions":129,"deletions":9,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":138}]},"message":"add int and float changes","epoch":1573511487,"epoch_utc":null},{"commit":"3ff0305c8e62ce3b5a8f3f9174c5a9da3bc22766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 13:00:17 2019 -0800","stats":{"files_changed":8,"insertions":54,"deletions":2,"files":["tests/fixtures/centos-7.7/lsblk-allcols.json","tests/fixtures/centos-7.7/lsblk-allcols.out","tests/fixtures/centos-7.7/lsblk.json","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/lsblk-allcols.json","tests/fixtures/ubuntu-18.04/lsblk-allcols.out","tests/fixtures/ubuntu-18.04/lsblk.json","tests/test_lsblk.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/lsblk-allcols.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsblk-allcols.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/lsblk.json","lines_changed":2},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsblk-allcols.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsblk-allcols.out","lines_changed":18},{"name":"tests/fixtures/ubuntu-18.04/lsblk.json","lines_changed":2},{"name":"tests/test_lsblk.py","lines_changed":24}]},"message":"add lsblk tests","epoch":1573506017,"epoch_utc":null},{"commit":"761edc3c6cfc215fe45c65ee2bb5462cb460b6a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 12:43:27 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":6,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":7}]},"message":"remove unused parse_pairs function","epoch":1573505007,"epoch_utc":null},{"commit":"3351c81f647ac97a5038cc0c14adb31e55832a77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 12:40:16 2019 -0800","stats":{"files_changed":1,"insertions":200,"deletions":2,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":202}]},"message":"add documentation","epoch":1573504816,"epoch_utc":null},{"commit":"3dfc6f67d770c59804bdeb371d5c78e3f3668f9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 12:00:23 2019 -0800","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":6}]},"message":"change empty values to Null","epoch":1573502423,"epoch_utc":null},{"commit":"1546ec3bd139ef687282f60786388b5207541c98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 11 11:53:16 2019 -0800","stats":{"files_changed":1,"insertions":17,"deletions":13,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":30}]},"message":"fixes for right justified columns","epoch":1573501996,"epoch_utc":null},{"commit":"2a953011f72e922c89b9af6dfebd1983da7c338d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sun Nov 10 15:18:53 2019 -0800","stats":{"files_changed":2,"insertions":50,"deletions":155,"files":["changelog.txt","jc/parsers/lsblk.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":203}]},"message":"rewrite of lsblk parser to use a custom delimiter","epoch":1573427933,"epoch_utc":null},{"commit":"d2f755de9d2be7b0af5f010042e1f4ca589c5464","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 17:08:41 2019 -0800","stats":{"files_changed":14,"insertions":250,"deletions":566,"files":["tests/test_ifconfig.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_ls.py","tests/test_lsblk.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_ps.py","tests/test_route.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py"],"file_stats":[{"name":"tests/test_ifconfig.py","lines_changed":59},{"name":"tests/test_iptables.py","lines_changed":249},{"name":"tests/test_jobs.py","lines_changed":19},{"name":"tests/test_ls.py","lines_changed":58},{"name":"tests/test_lsblk.py","lines_changed":25},{"name":"tests/test_lsmod.py","lines_changed":22},{"name":"tests/test_lsof.py","lines_changed":59},{"name":"tests/test_mount.py","lines_changed":30},{"name":"tests/test_netstat.py","lines_changed":110},{"name":"tests/test_ps.py","lines_changed":57},{"name":"tests/test_route.py","lines_changed":51},{"name":"tests/test_uname.py","lines_changed":27},{"name":"tests/test_uptime.py","lines_changed":23},{"name":"tests/test_w.py","lines_changed":27}]},"message":"updates tests","epoch":1573261721,"epoch_utc":null},{"commit":"f363334639c5fa3a43889794ea52409056a2d886","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 16:21:09 2019 -0800","stats":{"files_changed":5,"insertions":87,"deletions":219,"files":["tests/test_df.py","tests/test_dig.py","tests/test_env.py","tests/test_free.py","tests/test_history.py"],"file_stats":[{"name":"tests/test_df.py","lines_changed":43},{"name":"tests/test_dig.py","lines_changed":196},{"name":"tests/test_env.py","lines_changed":13},{"name":"tests/test_free.py","lines_changed":41},{"name":"tests/test_history.py","lines_changed":13}]},"message":"update tests","epoch":1573258869,"epoch_utc":null},{"commit":"750197e48596ad96804477053d3ff3c8063ea68a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 16:04:19 2019 -0800","stats":{"files_changed":1,"insertions":27,"deletions":70,"files":["tests/test_arp.py"],"file_stats":[{"name":"tests/test_arp.py","lines_changed":97}]},"message":"new tests","epoch":1573257859,"epoch_utc":null},{"commit":"36b349e4ed39fe611c7d87a47c378cc4d4627ad2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 16:03:41 2019 -0800","stats":{"files_changed":76,"insertions":76,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-a.json","tests/fixtures/centos-7.7/arp-v.json","tests/fixtures/centos-7.7/arp.json","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/df.json","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/centos-7.7/env.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/centos-7.7/free.json","tests/fixtures/centos-7.7/history.json","tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/centos-7.7/iptables-filter-nv.json","tests/fixtures/centos-7.7/iptables-filter.json","tests/fixtures/centos-7.7/iptables-mangle.json","tests/fixtures/centos-7.7/iptables-nat.json","tests/fixtures/centos-7.7/iptables-raw.json","tests/fixtures/centos-7.7/jobs.json","tests/fixtures/centos-7.7/ls-al.json","tests/fixtures/centos-7.7/ls-alh.json","tests/fixtures/centos-7.7/ls.json","tests/fixtures/centos-7.7/lsblk.json","tests/fixtures/centos-7.7/lsmod.json","tests/fixtures/centos-7.7/lsof-sudo.json","tests/fixtures/centos-7.7/lsof.json","tests/fixtures/centos-7.7/mount.json","tests/fixtures/centos-7.7/netstat-l.json","tests/fixtures/centos-7.7/netstat-p.json","tests/fixtures/centos-7.7/netstat-sudo-lnp.json","tests/fixtures/centos-7.7/netstat.json","tests/fixtures/centos-7.7/ps-axu.json","tests/fixtures/centos-7.7/ps-ef.json","tests/fixtures/centos-7.7/route-vn.json","tests/fixtures/centos-7.7/route.json","tests/fixtures/centos-7.7/uname-a.json","tests/fixtures/centos-7.7/uptime.json","tests/fixtures/centos-7.7/w.json","tests/fixtures/ubuntu-18.04/arp-a.json","tests/fixtures/ubuntu-18.04/arp-v.json","tests/fixtures/ubuntu-18.04/arp.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/df.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json","tests/fixtures/ubuntu-18.04/env.json","tests/fixtures/ubuntu-18.04/free-h.json","tests/fixtures/ubuntu-18.04/free.json","tests/fixtures/ubuntu-18.04/history.json","tests/fixtures/ubuntu-18.04/ifconfig.json","tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","tests/fixtures/ubuntu-18.04/iptables-filter.json","tests/fixtures/ubuntu-18.04/iptables-mangle.json","tests/fixtures/ubuntu-18.04/iptables-nat.json","tests/fixtures/ubuntu-18.04/iptables-raw.json","tests/fixtures/ubuntu-18.04/jobs.json","tests/fixtures/ubuntu-18.04/ls-al.json","tests/fixtures/ubuntu-18.04/ls-alh.json","tests/fixtures/ubuntu-18.04/ls.json","tests/fixtures/ubuntu-18.04/lsblk.json","tests/fixtures/ubuntu-18.04/lsmod.json","tests/fixtures/ubuntu-18.04/lsof-sudo.json","tests/fixtures/ubuntu-18.04/lsof.json","tests/fixtures/ubuntu-18.04/mount.json","tests/fixtures/ubuntu-18.04/netstat-l.json","tests/fixtures/ubuntu-18.04/netstat-p.json","tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.json","tests/fixtures/ubuntu-18.04/netstat.json","tests/fixtures/ubuntu-18.04/ps-axu.json","tests/fixtures/ubuntu-18.04/ps-ef.json","tests/fixtures/ubuntu-18.04/route-vn.json","tests/fixtures/ubuntu-18.04/route.json","tests/fixtures/ubuntu-18.04/uname-a.json","tests/fixtures/ubuntu-18.04/uptime.json","tests/fixtures/ubuntu-18.04/w.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/arp-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/arp-v.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/arp.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/df-h.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/df.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/dig-aaaa.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/dig-x.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/dig.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/env.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/free-h.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/free.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/history.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ifconfig.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-filter-nv.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-filter.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-mangle.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-nat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-raw.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/jobs.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-al.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-alh.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsblk.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsmod.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsof-sudo.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsof.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mount.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-l.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-sudo-lnp.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ps-axu.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ps-ef.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/route-vn.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/route.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/uname-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/uptime.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/w.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/arp-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/arp-v.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/arp.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/df-h.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/df.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dig-aaaa.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dig-x.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dig.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/env.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/free-h.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/free.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/history.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ifconfig.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-mangle.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-nat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-raw.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/jobs.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-al.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-alh.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsblk.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsmod.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsof-sudo.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsof.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/mount.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-l.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ps-axu.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ps-ef.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/route-vn.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/route.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/uname-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/uptime.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/w.json","lines_changed":1}]},"message":"json output files","epoch":1573257821,"epoch_utc":null},{"commit":"b5f1e94fe2859c4fbcf126f8f8fb20d71a9b6433","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 16:03:14 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":1}]},"message":"fix for space before '-' in program_name","epoch":1573257794,"epoch_utc":null},{"commit":"6a504fb0e10b1ef551ed9fe780926fe5ca02d267","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 16:02:44 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2}]},"message":"add exception type","epoch":1573257764,"epoch_utc":null},{"commit":"e02bad2240bacbc31097d931a902a34217d559db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 12:22:41 2019 -0800","stats":{"files_changed":1,"insertions":123,"deletions":175,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":298}]},"message":"update documentation","epoch":1573244561,"epoch_utc":null},{"commit":"1d4043a3b64c38a20a0db065c3bdc3c6a2d068bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 12:14:09 2019 -0800","stats":{"files_changed":1,"insertions":52,"deletions":0,"files":["jc/parsers/foo.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":52}]},"message":"add template parser","epoch":1573244049,"epoch_utc":null},{"commit":"039e034829789ca314a00abd4f1d9ad06f1a6eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 11:47:58 2019 -0800","stats":{"files_changed":1,"insertions":19,"deletions":6,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":25}]},"message":"fix parsing issues in program_name when spaces are in the name","epoch":1573242478,"epoch_utc":null},{"commit":"d828de4f4f2f4c3d582fddee79830d12511c3299","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 09:07:05 2019 -0800","stats":{"files_changed":1,"insertions":53,"deletions":9,"files":["jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/w.py","lines_changed":62}]},"message":"update documentation","epoch":1573232825,"epoch_utc":null},{"commit":"098000bb10a3f5ed33d285c6ba4f0dfb9a013fdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 8 09:04:03 2019 -0800","stats":{"files_changed":2,"insertions":24,"deletions":9,"files":["changelog.txt","jc/parsers/w.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/w.py","lines_changed":32}]},"message":"fix blank 'from' column issue","epoch":1573232643,"epoch_utc":null},{"commit":"b41165eff5cd7371e852cd33e084a919524ead9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 19:13:15 2019 -0800","stats":{"files_changed":1,"insertions":31,"deletions":1,"files":["jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/w.py","lines_changed":32}]},"message":"process w data","epoch":1573182795,"epoch_utc":null},{"commit":"6ad7891b2b34fae1a366568e4eba86e886a6dd84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 18:54:52 2019 -0800","stats":{"files_changed":1,"insertions":59,"deletions":14,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":73}]},"message":"process uptime data","epoch":1573181692,"epoch_utc":null},{"commit":"72138315598cd405bc0508b554108bf3f730dcb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 18:47:01 2019 -0800","stats":{"files_changed":1,"insertions":31,"deletions":10,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":41}]},"message":"add process boilerplate","epoch":1573181221,"epoch_utc":null},{"commit":"10eedd82e4c4678fbf989fe599d7ca75deced5a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 18:34:06 2019 -0800","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]},"message":"changelog update","epoch":1573180446,"epoch_utc":null},{"commit":"a55493da0f1457a46f29511e0835adfa9d748f7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 18:33:51 2019 -0800","stats":{"files_changed":1,"insertions":93,"deletions":6,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":99}]},"message":"process route data","epoch":1573180431,"epoch_utc":null},{"commit":"89973f4162317693b0d094a64115ee87d8479d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 15:33:12 2019 -0800","stats":{"files_changed":1,"insertions":45,"deletions":27,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":72}]},"message":"doc updates and tty fix","epoch":1573169592,"epoch_utc":null},{"commit":"4802222ad50d55372f2b883d83a61181086b0619","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 15:24:03 2019 -0800","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":11}]},"message":"process ps data","epoch":1573169043,"epoch_utc":null},{"commit":"bcd28f06f87a4260d1787399d723817afd6aee90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 15:09:57 2019 -0800","stats":{"files_changed":1,"insertions":23,"deletions":1,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":24}]},"message":"prep ps for process","epoch":1573168197,"epoch_utc":null},{"commit":"e17a47a7fa7f4c1bb4c4b55fb004963fc1b61434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 14:51:05 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":2}]},"message":"fix typo","epoch":1573167065,"epoch_utc":null},{"commit":"cad2e16c7aa54a70f476bf4268ff8e5985cff468","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 14:49:21 2019 -0800","stats":{"files_changed":1,"insertions":353,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":354}]},"message":"document examples","epoch":1573166961,"epoch_utc":null},{"commit":"5da5d278dac77bd4aa21819194e7f9e178bd1887","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 14:43:42 2019 -0800","stats":{"files_changed":1,"insertions":23,"deletions":0,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":23}]},"message":"process netstat data","epoch":1573166622,"epoch_utc":null},{"commit":"81b6776e57c113cbfb8346d1cfd83532a440c257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 13:58:55 2019 -0800","stats":{"files_changed":1,"insertions":0,"deletions":177,"files":["jc/parsers/netstat.py.old"],"file_stats":[{"name":"jc/parsers/netstat.py.old","lines_changed":177}]},"message":"remove old netstat parser","epoch":1573163935,"epoch_utc":null},{"commit":"5ecb6bd58b4ed91f63e4a0b5939378bd9925b7b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 13:58:37 2019 -0800","stats":{"files_changed":2,"insertions":4,"deletions":3,"files":["changelog.txt","jc/parsers/netstat.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":3}]},"message":"doc updates","epoch":1573163917,"epoch_utc":null},{"commit":"21b56096c57cfcf5c55fdf5f9bab88b6d5c7dd73","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 13:53:23 2019 -0800","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":37}]},"message":"finalize parse_post","epoch":1573163603,"epoch_utc":null},{"commit":"8c78f959731a25a05ee6361a14853c92f8fce69b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 12:13:25 2019 -0800","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":8}]},"message":"clean up trailing spaces on entries","epoch":1573157605,"epoch_utc":null},{"commit":"94a88bb5669d9a9a5dff085a4c4111bdd39df8f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 10:52:02 2019 -0800","stats":{"files_changed":1,"insertions":35,"deletions":17,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":52}]},"message":"post_parse flags and program_name","epoch":1573152722,"epoch_utc":null},{"commit":"579124475b0b517b36ddbe5bdb13be14807dea1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 09:02:27 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"simplify parser_map code","epoch":1573146147,"epoch_utc":null},{"commit":"5da83e020015eb5559d216bc3f39b3854e76adf3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:23:11 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"fix found variable error","epoch":1573143791,"epoch_utc":null},{"commit":"a90a76d004b923edece07a52a3aa400a9ef4b005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:15:19 2019 -0800","stats":{"files_changed":2,"insertions":177,"deletions":140,"files":["jc/parsers/netstat.py.old","jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/netstat.py.old","lines_changed":177},{"name":"jc/parsers/netstat2.py","lines_changed":140}]},"message":"move out old netstat parser","epoch":1573143319,"epoch_utc":null},{"commit":"bdfa95912398b2630fcb13e866f4013747fd0975","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:07:43 2019 -0800","stats":{"files_changed":20,"insertions":209,"deletions":212,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":10},{"name":"jc/parsers/env.py","lines_changed":10},{"name":"jc/parsers/free.py","lines_changed":10},{"name":"jc/parsers/history.py","lines_changed":8},{"name":"jc/parsers/ifconfig.py","lines_changed":10},{"name":"jc/parsers/iptables.py","lines_changed":10},{"name":"jc/parsers/jobs.py","lines_changed":10},{"name":"jc/parsers/ls.py","lines_changed":10},{"name":"jc/parsers/lsblk.py","lines_changed":10},{"name":"jc/parsers/lsmod.py","lines_changed":10},{"name":"jc/parsers/lsof.py","lines_changed":10},{"name":"jc/parsers/mount.py","lines_changed":10},{"name":"jc/parsers/netstat.py","lines_changed":245},{"name":"jc/parsers/ps.py","lines_changed":10},{"name":"jc/parsers/route.py","lines_changed":10},{"name":"jc/parsers/uname.py","lines_changed":10},{"name":"jc/parsers/uptime.py","lines_changed":10},{"name":"jc/parsers/w.py","lines_changed":10}]},"message":"fix compatibility code","epoch":1573142863,"epoch_utc":null},{"commit":"4380594275bc863e81839a6a7b032a6ff0cbb9b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:04:32 2019 -0800","stats":{"files_changed":1,"insertions":8,"deletions":46,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":54}]},"message":"remove cli functions from utils","epoch":1573142672,"epoch_utc":null},{"commit":"88bf252c0df3c583640286880d7992e4399e23f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:04:07 2019 -0800","stats":{"files_changed":2,"insertions":139,"deletions":128,"files":["jc/cli.py","jc/jc.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":139},{"name":"jc/jc.py","lines_changed":128}]},"message":"rename jc.py to cli.py","epoch":1573142647,"epoch_utc":null},{"commit":"a5efd8adce77fca7e3343f8f518c7bad578fdb4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Nov 7 08:03:45 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"rename jc.py to cli.py","epoch":1573142625,"epoch_utc":null},{"commit":"2ee392eefffde77ebdf83f5e4e0c43cf8c1a7d6e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 21:09:09 2019 -0800","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/netstat2.py","lines_changed":10}]},"message":"add quiet mode","epoch":1573103349,"epoch_utc":null},{"commit":"9c1d893e16ea17b16bec5fd0ec8839c4fe6f0590","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 21:07:25 2019 -0800","stats":{"files_changed":4,"insertions":102,"deletions":90,"files":["jc/jc.py","jc/parsers/arp.py","jc/parsers/df.py","jc/utils.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":107},{"name":"jc/parsers/arp.py","lines_changed":10},{"name":"jc/parsers/df.py","lines_changed":10},{"name":"jc/utils.py","lines_changed":65}]},"message":"move utils to own module and add quiet mode","epoch":1573103245,"epoch_utc":null},{"commit":"88dcb90c83b757285661c72429c5b60bb1ead94a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 21:05:25 2019 -0800","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":6}]},"message":"changelog update","epoch":1573103125,"epoch_utc":null},{"commit":"a3bcabc89c1f74d067da0046492dbc56e50b1005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 20:35:10 2019 -0800","stats":{"files_changed":1,"insertions":9,"deletions":62,"files":["jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/netstat2.py","lines_changed":71}]},"message":"mvp of netstat raw_data parser","epoch":1573101310,"epoch_utc":null},{"commit":"dafbf9fdcf53a8abbd006baef0be6697f860d2a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 19:17:01 2019 -0800","stats":{"files_changed":4,"insertions":247,"deletions":53,"files":["jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/lsmod.py","lines_changed":85},{"name":"jc/parsers/lsof.py","lines_changed":106},{"name":"jc/parsers/mount.py","lines_changed":31},{"name":"jc/parsers/netstat2.py","lines_changed":78}]},"message":"process lsmod data","epoch":1573096621,"epoch_utc":null},{"commit":"680cb2b2caa82e1e2c3225b3c44cae2ba03ba02c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 09:56:59 2019 -0600","stats":{"files_changed":1,"insertions":76,"deletions":7,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":83}]},"message":"doc update","epoch":1573063019,"epoch_utc":null},{"commit":"54818a06e0e0b981810f6aec45c308da81a9e2ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 09:21:55 2019 -0600","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":8}]},"message":"change bool variable names","epoch":1573060915,"epoch_utc":null},{"commit":"88f4c5b5a93da3938b84f97abfc54539ee19ac48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Nov 6 08:47:54 2019 -0600","stats":{"files_changed":6,"insertions":10,"deletions":10,"files":["jc/parsers/dig.py","jc/parsers/free.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":8},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":4},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"remove TypeError from exception check","epoch":1573058874,"epoch_utc":null},{"commit":"2bb7409887e8b7659613189daf58d02cb26bd6ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 23:10:49 2019 -0600","stats":{"files_changed":2,"insertions":36,"deletions":11,"files":["jc/parsers/df.py","jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/lsblk.py","lines_changed":42}]},"message":"process lsblk data","epoch":1573024249,"epoch_utc":null},{"commit":"c780aac3aba02cc042c6a3c984af198069956370","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 22:42:48 2019 -0600","stats":{"files_changed":22,"insertions":91,"deletions":5,"files":["jc/jc.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat2.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":8},{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/df.py","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":5},{"name":"jc/parsers/env.py","lines_changed":5},{"name":"jc/parsers/free.py","lines_changed":4},{"name":"jc/parsers/history.py","lines_changed":5},{"name":"jc/parsers/ifconfig.py","lines_changed":5},{"name":"jc/parsers/iptables.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"jc/parsers/lsblk.py","lines_changed":1},{"name":"jc/parsers/lsmod.py","lines_changed":4},{"name":"jc/parsers/lsof.py","lines_changed":5},{"name":"jc/parsers/mount.py","lines_changed":5},{"name":"jc/parsers/netstat.py","lines_changed":5},{"name":"jc/parsers/netstat2.py","lines_changed":5},{"name":"jc/parsers/ps.py","lines_changed":4},{"name":"jc/parsers/route.py","lines_changed":4},{"name":"jc/parsers/uname.py","lines_changed":5},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/w.py","lines_changed":4}]},"message":"add compatibility function","epoch":1573022568,"epoch_utc":null},{"commit":"5010aaec285e26ae9dbfdb3fcdc38a3bd36cd236","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:25:20 2019 -0600","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":2}]},"message":"put exit() back","epoch":1573003520,"epoch_utc":null},{"commit":"066e93cb075021ac94a0e2e6a36a34bc173ee6c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:23:46 2019 -0600","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":2}]},"message":"move exit() to errormessage()","epoch":1573003426,"epoch_utc":null},{"commit":"0bd2faa7f71a128babc68afea053159ccb91b702","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:17:07 2019 -0600","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":3}]},"message":"beautify compatibility list","epoch":1573003027,"epoch_utc":null},{"commit":"e2f926453ba386736204e358f8306dfc731b5005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:08:41 2019 -0600","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["install.sh"],"file_stats":[{"name":"install.sh","lines_changed":2}]},"message":"add install script","epoch":1573002521,"epoch_utc":null},{"commit":"b953b79f9c46d8c5398a6c1c2769167b5aed2805","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:04:18 2019 -0600","stats":{"files_changed":3,"insertions":11,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4}]},"message":"add compatibility","epoch":1573002258,"epoch_utc":null},{"commit":"7f9967780692bec2fcbe992eee0c392ab92efb7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 17:00:36 2019 -0600","stats":{"files_changed":2,"insertions":19,"deletions":1,"files":["jc/jc.py","jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":16},{"name":"jc/parsers/lsblk.py","lines_changed":4}]},"message":"compatibility function call","epoch":1573002036,"epoch_utc":null},{"commit":"721b54665924ad1657ee83cd5fca601e03700962","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 15:14:52 2019 -0600","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":8}]},"message":"finish schema","epoch":1572995692,"epoch_utc":null},{"commit":"2de5e41269421c73e07d4abd6ca99b38be736261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 15:07:40 2019 -0600","stats":{"files_changed":1,"insertions":95,"deletions":12,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":107}]},"message":"fix for more columns and build schema","epoch":1572995260,"epoch_utc":null},{"commit":"dfe0f6e99b6174734661fc43d9ad4b1d0dfd96e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 08:30:32 2019 -0800","stats":{"files_changed":1,"insertions":75,"deletions":9,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":84}]},"message":"process ls data","epoch":1572971432,"epoch_utc":null},{"commit":"8873b1bc697c8f9409fa676c88b5ebe109dc8717","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 08:07:39 2019 -0800","stats":{"files_changed":1,"insertions":24,"deletions":46,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":70}]},"message":"clean up process code","epoch":1572970059,"epoch_utc":null},{"commit":"9ff94707004fefed475603436fc0a7ffb19e6fee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Nov 5 07:21:58 2019 -0800","stats":{"files_changed":1,"insertions":9,"deletions":4,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":13}]},"message":"refactor helptext() function","epoch":1572967318,"epoch_utc":null},{"commit":"2c58fca53044892e15ceb5e8bcae1afb09fa3269","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 17:07:11 2019 -0800","stats":{"files_changed":1,"insertions":62,"deletions":4,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":66}]},"message":"process jobs data","epoch":1572916031,"epoch_utc":null},{"commit":"9e5cd90da7d92bbadbc0d25071d087a3dbd90a5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 16:59:14 2019 -0800","stats":{"files_changed":1,"insertions":131,"deletions":261,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":392}]},"message":"process iptables data","epoch":1572915554,"epoch_utc":null},{"commit":"7ee0d49424bba5274975d6c33e0721977660692f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 15:54:34 2019 -0800","stats":{"files_changed":1,"insertions":107,"deletions":28,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":135}]},"message":"process ifconfig data","epoch":1572911674,"epoch_utc":null},{"commit":"a9058ee21e87454aa423112239c4f4df7daca8c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 15:19:50 2019 -0800","stats":{"files_changed":3,"insertions":4,"deletions":1,"files":["jc/parsers/arp.py","jc/parsers/dig.py","jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/dig.py","lines_changed":1},{"name":"jc/parsers/free.py","lines_changed":1}]},"message":"doc formatting","epoch":1572909590,"epoch_utc":null},{"commit":"fcf0aac87dccac2ce28e6f55e66e2f0b8f6fbd36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 15:19:35 2019 -0800","stats":{"files_changed":1,"insertions":54,"deletions":10,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":64}]},"message":"add history processing","epoch":1572909575,"epoch_utc":null},{"commit":"daec5f068103aae547509ddacc2be56c84f39f17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 15:11:18 2019 -0800","stats":{"files_changed":1,"insertions":55,"deletions":6,"files":["jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/free.py","lines_changed":61}]},"message":"process free data","epoch":1572909078,"epoch_utc":null},{"commit":"5b2491d5ae72705758944e247fbca83367c0365f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 15:03:16 2019 -0800","stats":{"files_changed":1,"insertions":54,"deletions":5,"files":["jc/parsers/env.py"],"file_stats":[{"name":"jc/parsers/env.py","lines_changed":59}]},"message":"process env data","epoch":1572908596,"epoch_utc":null},{"commit":"d9b41ac73b234f5bf7ff3abfee198092424a1bbd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 13:52:45 2019 -0800","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":4}]},"message":"doc formatting","epoch":1572904365,"epoch_utc":null},{"commit":"7168ffddf8a8dfcdd5bcabd8bf943d6417de407d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 13:47:27 2019 -0800","stats":{"files_changed":1,"insertions":87,"deletions":5,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":92}]},"message":"process dig output","epoch":1572904047,"epoch_utc":null},{"commit":"a855344bec9f60d852de326953436ec76f25cffb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 13:05:56 2019 -0800","stats":{"files_changed":1,"insertions":13,"deletions":0,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":13}]},"message":"document schema","epoch":1572901556,"epoch_utc":null},{"commit":"d8b3b59fae924494fbcdfbdf6ad790f5234b0c69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 13:02:54 2019 -0800","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":16}]},"message":"add schema and rename 'avail' to 'available'","epoch":1572901374,"epoch_utc":null},{"commit":"4b7d7840d37be47c1c98c38a6d712e7090e5b68c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 12:50:37 2019 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"changelog.txt","lines_changed":2}]},"message":"add -r option","epoch":1572900637,"epoch_utc":null},{"commit":"58a094a9b4cab0fcb99581f37a21a450fc3a1aed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 12:40:19 2019 -0800","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update","epoch":1572900019,"epoch_utc":null},{"commit":"65adbb4189ac66de3283adb2af93a1251103f057","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 12:40:05 2019 -0800","stats":{"files_changed":1,"insertions":29,"deletions":7,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":36}]},"message":"doc update","epoch":1572900005,"epoch_utc":null},{"commit":"f7350959c9706486a3aed19a999e5ee756a1240c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 12:39:43 2019 -0800","stats":{"files_changed":1,"insertions":47,"deletions":24,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":71}]},"message":"df fix for changing header names when -h used","epoch":1572899983,"epoch_utc":null},{"commit":"8934a7d832b8e1375f0bbdd71031f37ae42f3929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 11:10:58 2019 -0800","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["jc/parsers/arp.py","jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":6}]},"message":"fix dictionary iteration","epoch":1572894658,"epoch_utc":null},{"commit":"669a424fd6508db91bf5cfa2607033fac85f442c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 11:02:02 2019 -0800","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":4}]},"message":"fix process function","epoch":1572894122,"epoch_utc":null},{"commit":"591a65c2bda26efcdd570a5f147f98a5be0473d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 10:56:33 2019 -0800","stats":{"files_changed":1,"insertions":46,"deletions":2,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":48}]},"message":"process df data","epoch":1572893793,"epoch_utc":null},{"commit":"a78fb890782a64b20c0c1b60afbd915ebdd88535","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 09:32:29 2019 -0800","stats":{"files_changed":1,"insertions":21,"deletions":5,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":26}]},"message":"add raw and processed output","epoch":1572888749,"epoch_utc":null},{"commit":"8979dab2a5371fce3a773004c2309e7483e4cd31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 09:32:09 2019 -0800","stats":{"files_changed":1,"insertions":25,"deletions":20,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":45}]},"message":"add raw mode","epoch":1572888729,"epoch_utc":null},{"commit":"0a891f0adda7f2f3233222a0cb5c1f737913ad6f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 08:09:19 2019 -0800","stats":{"files_changed":2,"insertions":4,"deletions":1,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"setup.py","lines_changed":2}]},"message":"bump python required version","epoch":1572883759,"epoch_utc":null},{"commit":"c220e35b14237c2cfc38aa661413af83ea13e393","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 08:06:50 2019 -0800","stats":{"files_changed":1,"insertions":34,"deletions":33,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":67}]},"message":"cleanup helptext","epoch":1572883610,"epoch_utc":null},{"commit":"f26c5818bd958c18f4ecc22611b9c058f6213a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Nov 4 07:57:47 2019 -0800","stats":{"files_changed":1,"insertions":36,"deletions":33,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":69}]},"message":"refactor helptext","epoch":1572883067,"epoch_utc":null},{"commit":"e712cd3fc4cec1b3137c73e199b2d89fd42fb3bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 1 22:29:08 2019 -0700","stats":{"files_changed":1,"insertions":138,"deletions":0,"files":["jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/netstat2.py","lines_changed":138}]},"message":"netstat2 skeleton","epoch":1572672548,"epoch_utc":null},{"commit":"0309c9ac67c5f65e0a584fd01e8104ef1990fa7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 1 08:55:52 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"setup cleanup","epoch":1572623752,"epoch_utc":null},{"commit":"9a9eb4120af7696cd3727ac0f0a014663e62b993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Nov 1 08:53:53 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":3}]},"message":"setup updates","epoch":1572623633,"epoch_utc":null},{"commit":"d1927456b02e6c2a6e6395cd6ce873b6565ec37d","merge":"0691cfc a3d9213","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 31 08:06:01 2019 -0700","message":"Merge pull request #6 from kellyjonbrazil/dev\n\nDev v1.1.1","epoch":1572534361,"epoch_utc":null},{"commit":"a3d9213a1e2fd52ba2cbc863d4d01d3ffeebe230","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 31 07:59:03 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add date","epoch":1572533943,"epoch_utc":null},{"commit":"3365c03a1e709835b4bd6bca023afbcb46912982","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 31 07:58:44 2019 -0700","stats":{"files_changed":2,"insertions":361,"deletions":0,"files":["tests/test_arp.py","tests/test_dig.py"],"file_stats":[{"name":"tests/test_arp.py","lines_changed":131},{"name":"tests/test_dig.py","lines_changed":230}]},"message":"add tests","epoch":1572533924,"epoch_utc":null},{"commit":"4f6c87389b313b368d9e833feef55fe6daf7aac9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 31 07:27:31 2019 -0700","stats":{"files_changed":7,"insertions":164,"deletions":1,"files":["tests/fixtures/centos-7.7/dig-aaaa.out","tests/fixtures/centos-7.7/dig-x.out","tests/fixtures/centos-7.7/dig.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/dig-aaaa.out","tests/fixtures/ubuntu-18.04/dig-x.out","tests/fixtures/ubuntu-18.04/dig.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/dig-aaaa.out","lines_changed":20},{"name":"tests/fixtures/centos-7.7/dig-x.out","lines_changed":20},{"name":"tests/fixtures/centos-7.7/dig.out","lines_changed":38},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":6},{"name":"tests/fixtures/ubuntu-18.04/dig-aaaa.out","lines_changed":20},{"name":"tests/fixtures/ubuntu-18.04/dig-x.out","lines_changed":20},{"name":"tests/fixtures/ubuntu-18.04/dig.out","lines_changed":41}]},"message":"add dig test files","epoch":1572532051,"epoch_utc":null},{"commit":"41a2a9adac7d3c29dfa11292f08b0877c69b1a5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 31 07:27:12 2019 -0700","stats":{"files_changed":2,"insertions":147,"deletions":3,"files":["README.md","jc/parsers/dig.py"],"file_stats":[{"name":"README.md","lines_changed":147},{"name":"jc/parsers/dig.py","lines_changed":3}]},"message":"remove unnecessary if statement","epoch":1572532032,"epoch_utc":null},{"commit":"74dae2905b2b0916f0be9fee2a4a343962760ff6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 17:23:35 2019 -0700","stats":{"files_changed":1,"insertions":143,"deletions":30,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":173}]},"message":"dig parser mvp","epoch":1572481415,"epoch_utc":null},{"commit":"d1f64214de00090c3faae0bf544c6c2602ab8c31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 17:18:14 2019 -0700","stats":{"files_changed":1,"insertions":19,"deletions":3,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":22}]},"message":"add authority parsing","epoch":1572481094,"epoch_utc":null},{"commit":"d3e1aa20a815d1d1d6ae82776ae18e3416f0966f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 17:03:35 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":2}]},"message":"fix when line","epoch":1572480215,"epoch_utc":null},{"commit":"72cae9577756c4355211a19f4dd77aaeb6f8e905","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 16:59:56 2019 -0700","stats":{"files_changed":1,"insertions":47,"deletions":9,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":56}]},"message":"dig fixes","epoch":1572479996,"epoch_utc":null},{"commit":"219bc8130f55f23e3be3abbe56104aefc2f84e86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 15:36:13 2019 -0700","stats":{"files_changed":2,"insertions":155,"deletions":0,"files":["jc/jc.py","jc/parsers/dig.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":150}]},"message":"dig parser skeleton","epoch":1572474973,"epoch_utc":null},{"commit":"e8c1a554c040ad8f9c6b518db5fd58e8345d2181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:52:53 2019 -0700","stats":{"files_changed":3,"insertions":7,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-a.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/arp-a.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/arp-a.out","lines_changed":3},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/arp-a.out","lines_changed":3}]},"message":"testfile updates","epoch":1572468773,"epoch_utc":null},{"commit":"087a60bc2adf64bfcedc1f264fef328f993b530c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:52:31 2019 -0700","stats":{"files_changed":2,"insertions":87,"deletions":5,"files":["README.md","jc/parsers/arp.py"],"file_stats":[{"name":"README.md","lines_changed":33},{"name":"jc/parsers/arp.py","lines_changed":59}]},"message":"documentation updates","epoch":1572468751,"epoch_utc":null},{"commit":"9c9823c3b8737b5de08af6278ca74414138e9263","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:29:06 2019 -0700","stats":{"files_changed":5,"insertions":16,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-v.out","tests/fixtures/centos-7.7/arp.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/arp-v.out","tests/fixtures/ubuntu-18.04/arp.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/arp-v.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/arp.out","lines_changed":3},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/arp-v.out","lines_changed":4},{"name":"tests/fixtures/ubuntu-18.04/arp.out","lines_changed":3}]},"message":"add arp testfiles","epoch":1572467346,"epoch_utc":null},{"commit":"cf8d13030bf67261a986c0f80fa20ec0e37a743a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:22:12 2019 -0700","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":21}]},"message":"add arp","epoch":1572466932,"epoch_utc":null},{"commit":"1eff69c187ca410ffaec7909bc2532553be1d80c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:21:05 2019 -0700","stats":{"files_changed":2,"insertions":17,"deletions":1,"files":["changelog.txt","jc/parsers/arp.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/arp.py","lines_changed":17}]},"message":"add documentation","epoch":1572466865,"epoch_utc":null},{"commit":"b10fb77d714b73a10a9bf28b45269b3530e01cee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:12:53 2019 -0700","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":10}]},"message":"fixup arp parser","epoch":1572466373,"epoch_utc":null},{"commit":"87cee8b230a06fa270b2e36afb56f337da814c80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 13:00:05 2019 -0700","stats":{"files_changed":2,"insertions":28,"deletions":1,"files":["jc/jc.py","jc/parsers/arp.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":7},{"name":"jc/parsers/arp.py","lines_changed":22}]},"message":"add arp parser","epoch":1572465605,"epoch_utc":null},{"commit":"83ab10d6282e26391bbf6bae5d0d29e040b209f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 30 12:50:05 2019 -0700","stats":{"files_changed":1,"insertions":44,"deletions":34,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":78}]},"message":"documentation update","epoch":1572465005,"epoch_utc":null},{"commit":"d58a6e1d1dc93155255922b65b0af1325439b033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 14:19:04 2019 -0700","stats":{"files_changed":1,"insertions":13,"deletions":15,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":28}]},"message":"readme update","epoch":1572383944,"epoch_utc":null},{"commit":"cb46ca5c2776a13c673a44d3e0fbd0661b32af9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 10:27:42 2019 -0700","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"readme update","epoch":1572370062,"epoch_utc":null},{"commit":"5528d979f0b45787d68ab79b962371df9acc527b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 09:16:03 2019 -0700","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":6},{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1572365763,"epoch_utc":null},{"commit":"ee94a038a61d60db72046d5bcceec58009decb39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 08:58:52 2019 -0700","stats":{"files_changed":3,"insertions":131,"deletions":0,"files":["tests/test_uname.py","tests/test_uptime.py","tests/test_w.py"],"file_stats":[{"name":"tests/test_uname.py","lines_changed":45},{"name":"tests/test_uptime.py","lines_changed":41},{"name":"tests/test_w.py","lines_changed":45}]},"message":"add tests","epoch":1572364732,"epoch_utc":null},{"commit":"1d658f7a9fc50873f76985b2fb9de92ada9d5547","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 08:45:11 2019 -0700","stats":{"files_changed":3,"insertions":265,"deletions":0,"files":["tests/test_netstat.py","tests/test_ps.py","tests/test_route.py"],"file_stats":[{"name":"tests/test_netstat.py","lines_changed":105},{"name":"tests/test_ps.py","lines_changed":83},{"name":"tests/test_route.py","lines_changed":77}]},"message":"add tests","epoch":1572363911,"epoch_utc":null},{"commit":"392cb44f9b19829a5ceba055e24c7af4d8ac5b3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 07:55:26 2019 -0700","stats":{"files_changed":80,"insertions":12667,"deletions":0,"files":["runtests.sh","tests/__init__.py","tests/fixtures/centos-7.7/df-h.out","tests/fixtures/centos-7.7/df.out","tests/fixtures/centos-7.7/env.out","tests/fixtures/centos-7.7/free-h.out","tests/fixtures/centos-7.7/free.out","tests/fixtures/centos-7.7/history.out","tests/fixtures/centos-7.7/ifconfig.out","tests/fixtures/centos-7.7/iptables-filter-nv.out","tests/fixtures/centos-7.7/iptables-filter.out","tests/fixtures/centos-7.7/iptables-mangle.out","tests/fixtures/centos-7.7/iptables-nat.out","tests/fixtures/centos-7.7/iptables-raw.out","tests/fixtures/centos-7.7/jobs.out","tests/fixtures/centos-7.7/ls-al.out","tests/fixtures/centos-7.7/ls-alh.out","tests/fixtures/centos-7.7/ls.out","tests/fixtures/centos-7.7/lsblk.out","tests/fixtures/centos-7.7/lsmod.out","tests/fixtures/centos-7.7/lsof-sudo.out","tests/fixtures/centos-7.7/lsof.out","tests/fixtures/centos-7.7/mount.out","tests/fixtures/centos-7.7/netstat-l.out","tests/fixtures/centos-7.7/netstat-p.out","tests/fixtures/centos-7.7/netstat-sudo-lnp.out","tests/fixtures/centos-7.7/netstat.out","tests/fixtures/centos-7.7/ps-axu.out","tests/fixtures/centos-7.7/ps-ef.out","tests/fixtures/centos-7.7/route-vn.out","tests/fixtures/centos-7.7/route.out","tests/fixtures/centos-7.7/uname-a.out","tests/fixtures/centos-7.7/uptime.out","tests/fixtures/centos-7.7/w.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/df-h.out","tests/fixtures/ubuntu-18.04/df.out","tests/fixtures/ubuntu-18.04/env.out","tests/fixtures/ubuntu-18.04/free-h.out","tests/fixtures/ubuntu-18.04/free.out","tests/fixtures/ubuntu-18.04/history.out","tests/fixtures/ubuntu-18.04/ifconfig.out","tests/fixtures/ubuntu-18.04/iptables-filter-nv.out","tests/fixtures/ubuntu-18.04/iptables-filter.out","tests/fixtures/ubuntu-18.04/iptables-mangle.out","tests/fixtures/ubuntu-18.04/iptables-nat.out","tests/fixtures/ubuntu-18.04/iptables-raw.out","tests/fixtures/ubuntu-18.04/jobs.out","tests/fixtures/ubuntu-18.04/ls-al.out","tests/fixtures/ubuntu-18.04/ls-alh.out","tests/fixtures/ubuntu-18.04/ls.out","tests/fixtures/ubuntu-18.04/lsblk.out","tests/fixtures/ubuntu-18.04/lsmod.out","tests/fixtures/ubuntu-18.04/lsof-sudo.out","tests/fixtures/ubuntu-18.04/lsof.out","tests/fixtures/ubuntu-18.04/mount.out","tests/fixtures/ubuntu-18.04/netstat-l.out","tests/fixtures/ubuntu-18.04/netstat-p.out","tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.out","tests/fixtures/ubuntu-18.04/netstat.out","tests/fixtures/ubuntu-18.04/ps-axu.out","tests/fixtures/ubuntu-18.04/ps-ef.out","tests/fixtures/ubuntu-18.04/route-vn.out","tests/fixtures/ubuntu-18.04/route.out","tests/fixtures/ubuntu-18.04/uname-a.out","tests/fixtures/ubuntu-18.04/uptime.out","tests/fixtures/ubuntu-18.04/w.out","tests/test_df.py","tests/test_env.py","tests/test_free.py","tests/test_history.py","tests/test_ifconfig.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_ls.py","tests/test_lsblk.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py"],"file_stats":[{"name":"runtests.sh","lines_changed":3},{"name":"tests/__init__.py","lines_changed":0},{"name":"tests/fixtures/centos-7.7/df-h.out","lines_changed":8},{"name":"tests/fixtures/centos-7.7/df.out","lines_changed":8},{"name":"tests/fixtures/centos-7.7/env.out","lines_changed":24},{"name":"tests/fixtures/centos-7.7/free-h.out","lines_changed":3},{"name":"tests/fixtures/centos-7.7/free.out","lines_changed":3},{"name":"tests/fixtures/centos-7.7/history.out","lines_changed":1000},{"name":"tests/fixtures/centos-7.7/ifconfig.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/iptables-filter-nv.out","lines_changed":134},{"name":"tests/fixtures/centos-7.7/iptables-filter.out","lines_changed":134},{"name":"tests/fixtures/centos-7.7/iptables-mangle.out","lines_changed":59},{"name":"tests/fixtures/centos-7.7/iptables-nat.out","lines_changed":80},{"name":"tests/fixtures/centos-7.7/iptables-raw.out","lines_changed":38},{"name":"tests/fixtures/centos-7.7/jobs.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/ls-al.out","lines_changed":22},{"name":"tests/fixtures/centos-7.7/ls-alh.out","lines_changed":22},{"name":"tests/fixtures/centos-7.7/ls.out","lines_changed":19},{"name":"tests/fixtures/centos-7.7/lsblk.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/lsmod.out","lines_changed":99},{"name":"tests/fixtures/centos-7.7/lsof-sudo.out","lines_changed":3390},{"name":"tests/fixtures/centos-7.7/lsof.out","lines_changed":639},{"name":"tests/fixtures/centos-7.7/mount.out","lines_changed":31},{"name":"tests/fixtures/centos-7.7/netstat-l.out","lines_changed":45},{"name":"tests/fixtures/centos-7.7/netstat-p.out","lines_changed":121},{"name":"tests/fixtures/centos-7.7/netstat-sudo-lnp.out","lines_changed":45},{"name":"tests/fixtures/centos-7.7/netstat.out","lines_changed":123},{"name":"tests/fixtures/centos-7.7/ps-axu.out","lines_changed":110},{"name":"tests/fixtures/centos-7.7/ps-ef.out","lines_changed":110},{"name":"tests/fixtures/centos-7.7/route-vn.out","lines_changed":5},{"name":"tests/fixtures/centos-7.7/route.out","lines_changed":5},{"name":"tests/fixtures/centos-7.7/uname-a.out","lines_changed":1},{"name":"tests/fixtures/centos-7.7/uptime.out","lines_changed":1},{"name":"tests/fixtures/centos-7.7/w.out","lines_changed":4},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":48},{"name":"tests/fixtures/ubuntu-18.04/df-h.out","lines_changed":19},{"name":"tests/fixtures/ubuntu-18.04/df.out","lines_changed":19},{"name":"tests/fixtures/ubuntu-18.04/env.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-18.04/free-h.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/free.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/history.out","lines_changed":453},{"name":"tests/fixtures/ubuntu-18.04/ifconfig.out","lines_changed":18},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter-nv.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/iptables-mangle.out","lines_changed":14},{"name":"tests/fixtures/ubuntu-18.04/iptables-nat.out","lines_changed":11},{"name":"tests/fixtures/ubuntu-18.04/iptables-raw.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/jobs.out","lines_changed":4},{"name":"tests/fixtures/ubuntu-18.04/ls-al.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/ls-alh.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/ls.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-18.04/lsblk.out","lines_changed":18},{"name":"tests/fixtures/ubuntu-18.04/lsmod.out","lines_changed":102},{"name":"tests/fixtures/ubuntu-18.04/lsof-sudo.out","lines_changed":2854},{"name":"tests/fixtures/ubuntu-18.04/lsof.out","lines_changed":976},{"name":"tests/fixtures/ubuntu-18.04/mount.out","lines_changed":43},{"name":"tests/fixtures/ubuntu-18.04/netstat-l.out","lines_changed":32},{"name":"tests/fixtures/ubuntu-18.04/netstat-p.out","lines_changed":97},{"name":"tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.out","lines_changed":32},{"name":"tests/fixtures/ubuntu-18.04/netstat.out","lines_changed":97},{"name":"tests/fixtures/ubuntu-18.04/ps-axu.out","lines_changed":173},{"name":"tests/fixtures/ubuntu-18.04/ps-ef.out","lines_changed":173},{"name":"tests/fixtures/ubuntu-18.04/route-vn.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/route.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/uname-a.out","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/uptime.out","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/w.out","lines_changed":4},{"name":"tests/test_df.py","lines_changed":69},{"name":"tests/test_env.py","lines_changed":31},{"name":"tests/test_free.py","lines_changed":67},{"name":"tests/test_history.py","lines_changed":31},{"name":"tests/test_ifconfig.py","lines_changed":77},{"name":"tests/test_iptables.py","lines_changed":299},{"name":"tests/test_jobs.py","lines_changed":37},{"name":"tests/test_ls.py","lines_changed":92},{"name":"tests/test_lsblk.py","lines_changed":43},{"name":"tests/test_lsmod.py","lines_changed":40},{"name":"tests/test_lsof.py","lines_changed":85},{"name":"tests/test_mount.py","lines_changed":48},{"name":"tests/test_netstat.py","lines_changed":47}]},"message":"initial add of tests and fixtures","epoch":1572360926,"epoch_utc":null},{"commit":"579bef079cdd7cfa298bc20e052b8eb75b586f5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 29 07:54:59 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":3}]},"message":"move global output variable inside function","epoch":1572360899,"epoch_utc":null},{"commit":"0691cfcab3f5f91908e06ec906d57e548d4e7a1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 26 18:49:43 2019 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog fix","epoch":1572140983,"epoch_utc":null},{"commit":"db29c7c186601fd4596d3eb121b37100601af907","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Sat Oct 26 18:49:13 2019 -0700","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":4}]},"message":"documentation fixes","epoch":1572140953,"epoch_utc":null},{"commit":"fb1e03637514b5ab02fd4c5df1db8b3cbacdd531","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 20:27:03 2019 -0700","stats":{"files_changed":1,"insertions":14,"deletions":10,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":24}]},"message":"formatting","epoch":1572060423,"epoch_utc":null},{"commit":"c3eaf59836538f4ab4c745e87b70115b4a4c5421","merge":"ea0cf0a c9849ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 19:43:24 2019 -0700","message":"Merge pull request #5 from kellyjonbrazil/dev\n\nDev v1.0.1","epoch":1572057804,"epoch_utc":null},{"commit":"c9849ce0db1f864d33739f8f6f942bf5672bc3b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 19:41:35 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"changelog update","epoch":1572057695,"epoch_utc":null},{"commit":"d3c89a3092973a7a8765463fff41c2469ed675cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 19:27:02 2019 -0700","stats":{"files_changed":1,"insertions":11,"deletions":9,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":20}]},"message":"check for enough info to parse","epoch":1572056822,"epoch_utc":null},{"commit":"a3d43f27f7bb0835b3593b7c303fe0ee8d896a58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 18:25:33 2019 -0700","stats":{"files_changed":1,"insertions":12,"deletions":10,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":22}]},"message":"fix odd uptime text parsing","epoch":1572053133,"epoch_utc":null},{"commit":"f4d9c1b699fa30bd297a40ccf3d5f6e7ba3d4253","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 17:16:02 2019 -0700","stats":{"files_changed":1,"insertions":8,"deletions":4,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":12}]},"message":"fix uptime for minutes and hours long uptime","epoch":1572048962,"epoch_utc":null},{"commit":"de647bba4aff84f7b513cf7f6fec8d3933b0d9da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 16:14:32 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"documentation update","epoch":1572045272,"epoch_utc":null},{"commit":"d7913070315e5e0c89006942250aaf37e9e3e18e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 16:12:45 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"documentation update","epoch":1572045165,"epoch_utc":null},{"commit":"1a4fc204e21f1555ae67c3147322c8d73fab630b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 16:09:31 2019 -0700","stats":{"files_changed":2,"insertions":10,"deletions":1,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":10},{"name":"changelog.txt","lines_changed":1}]},"message":"Documentation update","epoch":1572044971,"epoch_utc":null},{"commit":"0328e14c7c65a330093faa52fe48dae6cb173e42","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 16:05:34 2019 -0700","stats":{"files_changed":1,"insertions":7,"deletions":0,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":7}]},"message":"handle ctrl-c gracefully","epoch":1572044734,"epoch_utc":null},{"commit":"1acc4d6c29d136e286f82d607c4a3a59e2680b68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 15:52:53 2019 -0700","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":4}]},"message":"fix uptime parsing for short uptimes","epoch":1572043973,"epoch_utc":null},{"commit":"27245590ce28be933f1a55db4ee6b24783f4b63d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 15:40:53 2019 -0700","stats":{"files_changed":1,"insertions":12,"deletions":20,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":32}]},"message":"remove integers","epoch":1572043253,"epoch_utc":null},{"commit":"7ca2a4bdb939293e8d7364f8901ad1fd6d3ee808","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 15:39:48 2019 -0700","stats":{"files_changed":5,"insertions":182,"deletions":201,"files":["README.md","changelog.txt","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":199},{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":95},{"name":"jc/parsers/netstat.py","lines_changed":84}]},"message":"remove integer values","epoch":1572043188,"epoch_utc":null},{"commit":"5f1ec6734874651bee595961edf1fafaf5acf001","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 14:58:15 2019 -0700","stats":{"files_changed":10,"insertions":473,"deletions":456,"files":["README.md","jc/parsers/df.py","jc/parsers/history.py","jc/parsers/iptables.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/w.py"],"file_stats":[{"name":"README.md","lines_changed":453},{"name":"jc/parsers/df.py","lines_changed":52},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":73},{"name":"jc/parsers/lsmod.py","lines_changed":61},{"name":"jc/parsers/lsof.py","lines_changed":113},{"name":"jc/parsers/ps.py","lines_changed":81},{"name":"jc/parsers/route.py","lines_changed":60},{"name":"jc/parsers/w.py","lines_changed":32}]},"message":"lower() headers","epoch":1572040695,"epoch_utc":null},{"commit":"7e44c4278a75c7223d99200023160e8d77fde54d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:55:38 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":2}]},"message":"formatting","epoch":1572026138,"epoch_utc":null},{"commit":"eda726c4a3864008e2f700374b679ae68a965ef8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:55:26 2019 -0700","stats":{"files_changed":1,"insertions":80,"deletions":1,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":81}]},"message":"documentation update","epoch":1572026126,"epoch_utc":null},{"commit":"5f8e70d73054f1a106c0e75eee621bc0cefd1c6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:55:09 2019 -0700","stats":{"files_changed":9,"insertions":20,"deletions":22,"files":["changelog.txt","jc/parsers/df.py","jc/parsers/free.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/w.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":8},{"name":"jc/parsers/lsmod.py","lines_changed":9},{"name":"jc/parsers/lsof.py","lines_changed":8},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":6}]},"message":"convert headers to lowercase","epoch":1572026109,"epoch_utc":null},{"commit":"25b90546c652cafa9409f02bae1654cb523add88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:39:05 2019 -0700","stats":{"files_changed":3,"insertions":14,"deletions":9,"files":["README.md","changelog.txt","jc/parsers/df.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":13}]},"message":"change 'Use%' to 'Use_percent'","epoch":1572025145,"epoch_utc":null},{"commit":"75c084153845757e22c149ea4ae7909d42ec7118","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:32:54 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"changelog update","epoch":1572024774,"epoch_utc":null},{"commit":"5b532b9b71fdb9de575da0af9b7989ac537877c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:31:03 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":5}]},"message":"minor cleanup","epoch":1572024663,"epoch_utc":null},{"commit":"8c7b3193d131411f8766508fc27b2a6589bba1f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:28:19 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":2}]},"message":"documentation change","epoch":1572024499,"epoch_utc":null},{"commit":"0897c96ef3c180a1707e8f56c545f59b3a4e0672","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:22:23 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":2}]},"message":"formatting","epoch":1572024143,"epoch_utc":null},{"commit":"57d0ab2ed7f444862546da17cbbe8f8ce67bca8c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:22:10 2019 -0700","stats":{"files_changed":2,"insertions":9,"deletions":4,"files":["README.md","jc/parsers/w.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"jc/parsers/w.py","lines_changed":9}]},"message":"change LOGIN@ to LOGIN_AT","epoch":1572024130,"epoch_utc":null},{"commit":"a07d9a0e4bb76d369b4a9bf0d77c7590dc3c2861","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 10:04:29 2019 -0700","stats":{"files_changed":2,"insertions":22,"deletions":13,"files":["README.md","jc/parsers/lsof.py"],"file_stats":[{"name":"README.md","lines_changed":10},{"name":"jc/parsers/lsof.py","lines_changed":25}]},"message":"change SIZE/OFF key to SIZE_OFF","epoch":1572023069,"epoch_utc":null},{"commit":"b3996cb4dfed908d71b292dc0b0136c6675351e6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 09:54:42 2019 -0700","stats":{"files_changed":2,"insertions":14,"deletions":10,"files":["README.md","jc/parsers/lsblk.py"],"file_stats":[{"name":"README.md","lines_changed":10},{"name":"jc/parsers/lsblk.py","lines_changed":14}]},"message":"change MAJ:MIN key to MAJ_MIN","epoch":1572022482,"epoch_utc":null},{"commit":"4fa88c1ba38b34f9750625458c465d66f6531bc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 09:53:44 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":3}]},"message":"clear out non-ascii chars from data","epoch":1572022424,"epoch_utc":null},{"commit":"c8c5564b29588094721949b96bff1e623437835d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 25 09:46:03 2019 -0700","stats":{"files_changed":2,"insertions":6,"deletions":3,"files":["README.md","jc/parsers/free.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":7}]},"message":"change buff/cache key to buff_cache","epoch":1572021963,"epoch_utc":null},{"commit":"6d047486d9f577bc04d79af839f5eef9657a9d43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:53:56 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"doc fix","epoch":1571964836,"epoch_utc":null},{"commit":"42bdc058141c4a3ac6f2c8211f9c990590b1b5cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:41:51 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"changelog fix","epoch":1571964111,"epoch_utc":null},{"commit":"85bfb688862e78d5879df6973b88ba8023fa6086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:33:42 2019 -0700","stats":{"files_changed":2,"insertions":15,"deletions":10,"files":["README.md","jc/parsers/history.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"jc/parsers/history.py","lines_changed":17}]},"message":"history parser fixes","epoch":1571963622,"epoch_utc":null},{"commit":"08ec21556b553cd7e64932d68e01ba8ff3b0f210","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:12:27 2019 -0700","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/w.py","lines_changed":1}]},"message":"formatting","epoch":1571962347,"epoch_utc":null},{"commit":"320929bf2595026d32b80b80c3e4878db9cf083f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:11:17 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/env.py"],"file_stats":[{"name":"jc/parsers/env.py","lines_changed":2}]},"message":"documentation update","epoch":1571962277,"epoch_utc":null},{"commit":"41cd489c34502c42602bf64086670ba3b2b8e14b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 17:09:32 2019 -0700","stats":{"files_changed":5,"insertions":126,"deletions":0,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/history.py","jc/parsers/uptime.py"],"file_stats":[{"name":"README.md","lines_changed":46},{"name":"changelog.txt","lines_changed":3},{"name":"jc/jc.py","lines_changed":10},{"name":"jc/parsers/history.py","lines_changed":32},{"name":"jc/parsers/uptime.py","lines_changed":35}]},"message":"add history and uptime parsers","epoch":1571962172,"epoch_utc":null},{"commit":"f101d881a16e662e883818749d48e96858fba853","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 16:06:55 2019 -0700","stats":{"files_changed":4,"insertions":78,"deletions":3,"files":["README.md","jc/jc.py","jc/parsers/w.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":27},{"name":"jc/jc.py","lines_changed":9},{"name":"jc/parsers/w.py","lines_changed":43},{"name":"setup.py","lines_changed":2}]},"message":"add w parser","epoch":1571958415,"epoch_utc":null},{"commit":"fa7466022bb8947c1bbf9f7b01aa4d92300a8992","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 15:54:31 2019 -0700","stats":{"files_changed":3,"insertions":28,"deletions":56,"files":["README.md","changelog.txt","jc/parsers/env.py"],"file_stats":[{"name":"README.md","lines_changed":37},{"name":"changelog.txt","lines_changed":3},{"name":"jc/parsers/env.py","lines_changed":44}]},"message":"fix env parser","epoch":1571957671,"epoch_utc":null},{"commit":"ea0cf0acf22585fbf8828841cf50155636eae82f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 24 09:48:35 2019 -0700","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":3}]},"message":"documentation update","epoch":1571935715,"epoch_utc":null},{"commit":"e7921b65f5a250c10b08f78939f74968047af430","merge":"393e8bc 2cc1b1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 18:41:55 2019 -0700","message":"Merge pull request #4 from kellyjonbrazil/dev\n\nDev v0.9.1","epoch":1571881315,"epoch_utc":null},{"commit":"2cc1b1bd5451f31d71b0e2236bdee0ce2b25b5d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 18:39:24 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"version bump","epoch":1571881164,"epoch_utc":null},{"commit":"58ae976db0165730a75dd7450c698d2727a354ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 18:30:55 2019 -0700","stats":{"files_changed":3,"insertions":113,"deletions":4,"files":["README.md","jc/parsers/lsmod.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":55},{"name":"jc/parsers/lsmod.py","lines_changed":60},{"name":"setup.py","lines_changed":2}]},"message":"documentation update","epoch":1571880655,"epoch_utc":null},{"commit":"66772392ae78ef394e22070b127416b1d5b01332","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 18:04:54 2019 -0700","stats":{"files_changed":3,"insertions":32,"deletions":0,"files":["changelog.txt","jc/jc.py","jc/parsers/lsmod.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/lsmod.py","lines_changed":26}]},"message":"add lsmod parser","epoch":1571879094,"epoch_utc":null},{"commit":"29c47c03a64f9c6b0f44d34be5449396654849b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 17:37:25 2019 -0700","stats":{"files_changed":3,"insertions":134,"deletions":2,"files":["README.md","changelog.txt","jc/parsers/lsof.py"],"file_stats":[{"name":"README.md","lines_changed":68},{"name":"changelog.txt","lines_changed":3},{"name":"jc/parsers/lsof.py","lines_changed":65}]},"message":"documentation update","epoch":1571877445,"epoch_utc":null},{"commit":"91eb9a4d13e9254bd5bbde931196904c1947a28e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 17:27:23 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":4}]},"message":"use None instead of --","epoch":1571876843,"epoch_utc":null},{"commit":"a1a3de32ec14d6ef433e334b9694856698c26d41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 17:22:25 2019 -0700","stats":{"files_changed":2,"insertions":59,"deletions":0,"files":["jc/jc.py","jc/parsers/lsof.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/lsof.py","lines_changed":54}]},"message":"add lsof parser","epoch":1571876545,"epoch_utc":null},{"commit":"9c47fd05bf716c2e18ebf4da41b1a46b972b2518","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 14:11:13 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":2}]},"message":"doco fix","epoch":1571865073,"epoch_utc":null},{"commit":"649c0aa7c157f87691cc8eeac64c747e81f63594","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 14:10:10 2019 -0700","stats":{"files_changed":2,"insertions":76,"deletions":1,"files":["README.md","jc/parsers/jobs.py"],"file_stats":[{"name":"README.md","lines_changed":39},{"name":"jc/parsers/jobs.py","lines_changed":38}]},"message":"add documentation","epoch":1571865010,"epoch_utc":null},{"commit":"3db758764e50666e5ae40de8d89180de2ef5bc28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 14:05:47 2019 -0700","stats":{"files_changed":3,"insertions":83,"deletions":0,"files":["changelog.txt","jc/jc.py","jc/parsers/jobs.py"],"file_stats":[{"name":"changelog.txt","lines_changed":6},{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":72}]},"message":"add jobs parser","epoch":1571864747,"epoch_utc":null},{"commit":"802f1510eb6d621f9c760f28b83f16a4781b8d93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 10:27:05 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":2}]},"message":"tighten if statements","epoch":1571851625,"epoch_utc":null},{"commit":"56901788dee154890e70269ad48d4b22bb8c5437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 09:51:29 2019 -0700","stats":{"files_changed":1,"insertions":30,"deletions":19,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":49}]},"message":"stop blocking when no pipe and enhance help text","epoch":1571849489,"epoch_utc":null},{"commit":"679ae6d5dc7af26240dc00d8bc6499950f81d457","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 09:20:11 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1571847611,"epoch_utc":null},{"commit":"b15c8c352a87a9b3b1dece28af0287ef71ca02d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 23 08:46:54 2019 -0700","stats":{"files_changed":1,"insertions":14,"deletions":16,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":30}]},"message":"simplify state variables","epoch":1571845614,"epoch_utc":null},{"commit":"393e8bc56041a4be01b6c0b2f98895aa330afd04","merge":"e3750b4 976fd7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 17:26:40 2019 -0700","message":"Merge pull request #3 from kellyjonbrazil/dev\n\nDev v0.8.1","epoch":1571790400,"epoch_utc":null},{"commit":"976fd7d9bd49190a8b28ea5acf5af8979cdec537","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 17:24:56 2019 -0700","stats":{"files_changed":1,"insertions":27,"deletions":28,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":55}]},"message":"readme update","epoch":1571790296,"epoch_utc":null},{"commit":"d8337870cad042cdcc6a4ff3c61f756c3430fa96","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 17:21:00 2019 -0700","stats":{"files_changed":1,"insertions":27,"deletions":28,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":55}]},"message":"update documentation","epoch":1571790060,"epoch_utc":null},{"commit":"39a8aec77f5134b5b958e3f679910a1c3512e13a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 17:15:02 2019 -0700","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/parsers/ls.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"v0.8.1 build","epoch":1571789702,"epoch_utc":null},{"commit":"306d539b6bbfb272c7b955e4847adc3a6b4afa5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 16:50:01 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"readme update","epoch":1571788201,"epoch_utc":null},{"commit":"f3087b8a8ede88834285bb5d0655fc96341c174c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 16:40:27 2019 -0700","stats":{"files_changed":3,"insertions":635,"deletions":1,"files":["README.md","changelog.txt","jc/parsers/iptables.py"],"file_stats":[{"name":"README.md","lines_changed":319},{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/iptables.py","lines_changed":316}]},"message":"update readme and formatting","epoch":1571787627,"epoch_utc":null},{"commit":"414c2ecef88af2d2c098e6acfb507a5fd7bb8eda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 16:32:55 2019 -0700","stats":{"files_changed":1,"insertions":6,"deletions":10,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":16}]},"message":"fix iptables parser","epoch":1571787175,"epoch_utc":null},{"commit":"776ef2d1be81180b8b295fbc587446a326f2f7a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 15:42:29 2019 -0700","stats":{"files_changed":2,"insertions":61,"deletions":0,"files":["jc/jc.py","jc/parsers/iptables.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/iptables.py","lines_changed":56}]},"message":"add iptables parser","epoch":1571784149,"epoch_utc":null},{"commit":"9ac57469967443b195be09d580beaa76ce0e1095","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 13:28:15 2019 -0700","stats":{"files_changed":4,"insertions":64,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/uname.py"],"file_stats":[{"name":"README.md","lines_changed":15},{"name":"changelog.txt","lines_changed":1},{"name":"jc/jc.py","lines_changed":7},{"name":"jc/parsers/uname.py","lines_changed":42}]},"message":"add uname parser","epoch":1571776095,"epoch_utc":null},{"commit":"a3e55d97c0fd4397b42e9146afb0ba9558274fdb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 12:54:41 2019 -0700","stats":{"files_changed":4,"insertions":127,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/mount.py"],"file_stats":[{"name":"README.md","lines_changed":45},{"name":"changelog.txt","lines_changed":1},{"name":"jc/jc.py","lines_changed":7},{"name":"jc/parsers/mount.py","lines_changed":75}]},"message":"add mount parser","epoch":1571774081,"epoch_utc":null},{"commit":"b15227e7ba5377e5fb6799d1b9e4ed5a11c6d92f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:55:11 2019 -0700","stats":{"files_changed":4,"insertions":125,"deletions":0,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/lsblk.py"],"file_stats":[{"name":"README.md","lines_changed":49},{"name":"changelog.txt","lines_changed":1},{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/lsblk.py","lines_changed":70}]},"message":"add lsblk parser","epoch":1571770511,"epoch_utc":null},{"commit":"ec3d1f84ceccb492b4c968938714fafa2e6a6321","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:26:58 2019 -0700","stats":{"files_changed":1,"insertions":24,"deletions":2,"files":["jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/free.py","lines_changed":26}]},"message":"fix free parser","epoch":1571768818,"epoch_utc":null},{"commit":"753d5fd9fe5a8e4b67b1a0ec018a9f811e27f8bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:17:21 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"readme update","epoch":1571768241,"epoch_utc":null},{"commit":"73a0d70c9294ad392792e690a7bfbcc4f51b0a5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:15:44 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"readme update","epoch":1571768144,"epoch_utc":null},{"commit":"c2c189f3e6e900e5f3d35df9a9b9d033448baff6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:14:19 2019 -0700","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":5}]},"message":"readme update","epoch":1571768059,"epoch_utc":null},{"commit":"36bc55a3109278d663b675a09829200f5474c3d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:11:41 2019 -0700","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"fix df","epoch":1571767901,"epoch_utc":null},{"commit":"a023001cd350e320ce30f47af214ed7a9bb43185","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 11:10:11 2019 -0700","stats":{"files_changed":6,"insertions":226,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/df.py","jc/parsers/env.py","jc/parsers/free.py"],"file_stats":[{"name":"README.md","lines_changed":73},{"name":"changelog.txt","lines_changed":5},{"name":"jc/jc.py","lines_changed":17},{"name":"jc/parsers/df.py","lines_changed":56},{"name":"jc/parsers/env.py","lines_changed":53},{"name":"jc/parsers/free.py","lines_changed":23}]},"message":"add df, env, and free parsers","epoch":1571767811,"epoch_utc":null},{"commit":"e3750b49628794fd4d563013b1f3a7471c27ce68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 22 07:40:42 2019 -0700","stats":{"files_changed":2,"insertions":83,"deletions":51,"files":["README.md","jc/__init__.py"],"file_stats":[{"name":"README.md","lines_changed":30},{"name":"jc/__init__.py","lines_changed":104}]},"message":"documentation enhancements","epoch":1571755242,"epoch_utc":null},{"commit":"b5ea08e55bfd22c9da5ba73c124791012df119a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 18:22:51 2019 -0700","stats":{"files_changed":4,"insertions":20,"deletions":20,"files":["README.md","changelog.txt","jc/parsers/netstat.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":16},{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":20},{"name":"setup.py","lines_changed":2}]},"message":"fix transport protocol","epoch":1571707371,"epoch_utc":null},{"commit":"8e71b8e3522b9b1af4d869a0854223eb5c300b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 18:11:51 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"fix jq example","epoch":1571706711,"epoch_utc":null},{"commit":"4c8610c54ff4b643237d8f0e4c5781c277fc39f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:59:32 2019 -0700","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"setup.py","lines_changed":2}]},"message":"fixed build","epoch":1571705972,"epoch_utc":null},{"commit":"c8f886dc8fcdc58f8471d68c3d583200d0ea2f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:56:53 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":2}]},"message":"fix example","epoch":1571705813,"epoch_utc":null},{"commit":"4cfc2d22b3f9fd6f0cde8ad206edd7fe260b3071","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:38:40 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"update changelog","epoch":1571704720,"epoch_utc":null},{"commit":"59238c85408117748e78c5e87157381a828f3782","merge":"d54d906 30080c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:36:33 2019 -0700","message":"Merge pull request #2 from kellyjonbrazil/dev\n\nDev v0.6.2","epoch":1571704593,"epoch_utc":null},{"commit":"30080c01659cf611666876b7b063b7b329822352","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:26:00 2019 -0700","stats":{"files_changed":1,"insertions":35,"deletions":35,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":70}]},"message":"reorder parsers","epoch":1571703960,"epoch_utc":null},{"commit":"fab80bb3b4a1897da29d818e98e9b80ce45443dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 17:20:12 2019 -0700","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["README.md","setup.py"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"setup.py","lines_changed":2}]},"message":"readme update","epoch":1571703612,"epoch_utc":null},{"commit":"a9f2df805421754afb8e8adbcac7f2d3bd06c9ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 14:27:26 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":3}]},"message":"move parsed_line var lower","epoch":1571693246,"epoch_utc":null},{"commit":"1d110be6cb25d169ae0dde6532cbcdf05d93d42f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 14:13:31 2019 -0700","stats":{"files_changed":3,"insertions":13,"deletions":1,"files":["README.md","changelog.txt","setup.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"changelog.txt","lines_changed":4},{"name":"setup.py","lines_changed":2}]},"message":"update doco","epoch":1571692411,"epoch_utc":null},{"commit":"be81b5e1ed93eb65e5dbed4f52905439cde86f62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 13:47:22 2019 -0700","stats":{"files_changed":1,"insertions":112,"deletions":121,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":233}]},"message":"readme update","epoch":1571690842,"epoch_utc":null},{"commit":"5f88f7d8a071306be92cbfb65d6d62c5a68159f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 13:41:53 2019 -0700","stats":{"files_changed":1,"insertions":110,"deletions":137,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":247}]},"message":"netstat cleanup","epoch":1571690513,"epoch_utc":null},{"commit":"e57c7cc8ef3102cc41dee4ea5fd33d40ba666491","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 13:23:29 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":2}]},"message":"change output from dict to list","epoch":1571689409,"epoch_utc":null},{"commit":"b216627c1073ea645029e341b4d3376601e5468e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 13:19:00 2019 -0700","stats":{"files_changed":1,"insertions":19,"deletions":116,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":135}]},"message":"flatten netstat output","epoch":1571689140,"epoch_utc":null},{"commit":"6e925eab131024b5746d870cbd47e2791acf18bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Mon Oct 21 13:07:30 2019 -0700","stats":{"files_changed":1,"insertions":27,"deletions":18,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":45}]},"message":"clean up arg parsing","epoch":1571688450,"epoch_utc":null},{"commit":"d54d906c571b4683f01cab2eca63ae5f0725a87b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 19:03:11 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update readme","epoch":1571450591,"epoch_utc":null},{"commit":"0040febbf099ed8ab35f6ee343750fcf89f2e739","merge":"8073d15 e416c77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 18:57:32 2019 -0700","message":"Merge pull request #1 from kellyjonbrazil/dev\n\nDev v0.5.5","epoch":1571450252,"epoch_utc":null},{"commit":"e416c77bed1267254da972b0f95b7ff1d43fccef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 18:56:26 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"version bump","epoch":1571450186,"epoch_utc":null},{"commit":"9181d242aaed5219bb35fde01d672be88949cceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 18:47:20 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"bump version","epoch":1571449640,"epoch_utc":null},{"commit":"d6f94c53a4df84fb75554605477e49536a809dc2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 18:46:25 2019 -0700","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"fix blank output case in ls","epoch":1571449585,"epoch_utc":null},{"commit":"a9294f32a00709737d0b82ff434a311e75ad0bed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 18:40:56 2019 -0700","stats":{"files_changed":3,"insertions":39,"deletions":42,"files":["changelog.txt","jc/parsers/ls.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":7},{"name":"jc/parsers/ls.py","lines_changed":72},{"name":"setup.py","lines_changed":2}]},"message":"ls fixes","epoch":1571449256,"epoch_utc":null},{"commit":"4d93b38fe47329e3175025878e87f7c963061f98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 14:18:34 2019 -0700","stats":{"files_changed":2,"insertions":90,"deletions":1,"files":["README.md","jc/parsers/route.py"],"file_stats":[{"name":"README.md","lines_changed":47},{"name":"jc/parsers/route.py","lines_changed":44}]},"message":"add route documentation","epoch":1571433514,"epoch_utc":null},{"commit":"77b74c550795f96b808e48a9b0bfd1a8af9866f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:59:30 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"add route parser","epoch":1571432370,"epoch_utc":null},{"commit":"51a1d3e6f48cf7084267be4092f0dd3f778dcef3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:51:36 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump","epoch":1571431896,"epoch_utc":null},{"commit":"2eba30422b44f648c7356a44cbff7416c6648f19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:43:49 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":2}]},"message":"skip first line","epoch":1571431429,"epoch_utc":null},{"commit":"43ed09ce5ba53261dfd7ef50a2e187cb524c416c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:38:11 2019 -0700","stats":{"files_changed":3,"insertions":25,"deletions":1,"files":["jc/jc.py","jc/parsers/route.py","setup.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":3},{"name":"jc/parsers/route.py","lines_changed":21},{"name":"setup.py","lines_changed":2}]},"message":"add route parser","epoch":1571431091,"epoch_utc":null},{"commit":"367ab54f94bf7f456377ec9d20f8daf99dbdc1ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:34:28 2019 -0700","stats":{"files_changed":3,"insertions":99,"deletions":2,"files":["README.md","changelog.txt","jc/parsers/ps.py"],"file_stats":[{"name":"README.md","lines_changed":53},{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":46}]},"message":"formatting","epoch":1571430868,"epoch_utc":null},{"commit":"4f552e370e656cc1882a7dae231475a016f8aa14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:26:24 2019 -0700","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":4}]},"message":"acknowledgment","epoch":1571430384,"epoch_utc":null},{"commit":"7571139f7980f6e74c29d46971881e82ab0f04bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:20:38 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"bump version","epoch":1571430038,"epoch_utc":null},{"commit":"8ec1bec31711d2ef487da3e4a29a842d98d77626","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 13:19:39 2019 -0700","stats":{"files_changed":4,"insertions":29,"deletions":7,"files":["changelog.txt","jc/__init__.py","jc/jc.py","jc/parsers/ps.py"],"file_stats":[{"name":"changelog.txt","lines_changed":10},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/jc.py","lines_changed":3},{"name":"jc/parsers/ps.py","lines_changed":21}]},"message":"add ps parser","epoch":1571429979,"epoch_utc":null},{"commit":"c04895407f203aa0a3a080d5242faf8f6889ae41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 12:57:02 2019 -0700","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["changelog.txt","jc/parsers/netstat.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":9}]},"message":"ubuntu fixes","epoch":1571428622,"epoch_utc":null},{"commit":"cec73d61310591e4890605f61dc5c1bef5808ec4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 09:57:22 2019 -0700","stats":{"files_changed":4,"insertions":24,"deletions":16,"files":["jc/jc.py","jc/parsers/ifconfig.py","jc/parsers/ls.py","jc/parsers/netstat.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":7},{"name":"jc/parsers/ifconfig.py","lines_changed":7},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"jc/parsers/netstat.py","lines_changed":23}]},"message":"linting","epoch":1571417842,"epoch_utc":null},{"commit":"756c2bc9acd60111281b76085a40778e51ca06cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Fri Oct 18 09:57:10 2019 -0700","stats":{"files_changed":1,"insertions":20,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":23}]},"message":"add acknowledgments","epoch":1571417830,"epoch_utc":null},{"commit":"084048987c7afc6516f69e68d37d73b2402dc7f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 17:59:46 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"changelog update","epoch":1571360386,"epoch_utc":null},{"commit":"02d97394dd76a8782e6e7d3f8a85e1aed05e796b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 17:28:14 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update","epoch":1571358494,"epoch_utc":null},{"commit":"177f948f9740e3e33449b04b9136a346c9a2c265","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 16:11:55 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version update","epoch":1571353915,"epoch_utc":null},{"commit":"c2b013150ec1f1b1ab7d416f1aa8a62165a5bb95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 15:51:39 2019 -0700","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":9}]},"message":"add changelog","epoch":1571352699,"epoch_utc":null},{"commit":"0bec67c29ce5d965271440da41a0c4b4c2a1f0fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 15:39:12 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":4}]},"message":"double quotes to single quotes","epoch":1571351952,"epoch_utc":null},{"commit":"8073d15fe11546a17cacd81409e255bb8aecd602","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 15:03:32 2019 -0700","stats":{"files_changed":1,"insertions":12,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":16}]},"message":"readme update","epoch":1571349812,"epoch_utc":null},{"commit":"3b74afc39e58f801e75b7105e521c1469d30f991","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 15:00:42 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["pypi-upload.sh"],"file_stats":[{"name":"pypi-upload.sh","lines_changed":2}]},"message":"upload script","epoch":1571349642,"epoch_utc":null},{"commit":"ed320cf0f4bb11cee1e69e9dc9176ba109df1b86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 13:04:34 2019 -0700","stats":{"files_changed":3,"insertions":22,"deletions":22,"files":["README.md","jc/parsers/netstat.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":20},{"name":"jc/parsers/netstat.py","lines_changed":22},{"name":"setup.py","lines_changed":2}]},"message":"change netstat pid field to integer","epoch":1571342674,"epoch_utc":null},{"commit":"021b6924e24e1cf0f971246244b174cd3181c0a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 12:15:27 2019 -0700","stats":{"files_changed":2,"insertions":254,"deletions":5,"files":["README.md","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":124},{"name":"jc/parsers/netstat.py","lines_changed":135}]},"message":"documentation updates","epoch":1571339727,"epoch_utc":null},{"commit":"5fb21b077662f1cb172741945ba5036e5a280638","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 12:09:05 2019 -0700","stats":{"files_changed":1,"insertions":0,"deletions":8,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":8}]},"message":"remove debug print statements","epoch":1571339345,"epoch_utc":null},{"commit":"7b8540ae2a60f2400fe672a022ee00d1415a3500","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 12:07:01 2019 -0700","stats":{"files_changed":1,"insertions":19,"deletions":7,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":26}]},"message":"netstat fixes","epoch":1571339221,"epoch_utc":null},{"commit":"a5e039d4c2e07d52a0797833685c562ab285b49b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 10:54:37 2019 -0700","stats":{"files_changed":1,"insertions":17,"deletions":7,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":24}]},"message":"netstat debugging","epoch":1571334877,"epoch_utc":null},{"commit":"7071f60a302b7aefb8fb312699b0abec25548986","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 09:05:49 2019 -0700","stats":{"files_changed":1,"insertions":66,"deletions":18,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":84}]},"message":"netstat mvp","epoch":1571328349,"epoch_utc":null},{"commit":"0de1dff0253eb46b7336103f62f888940406ccc0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 08:09:19 2019 -0700","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":48}]},"message":"fix ands","epoch":1571324959,"epoch_utc":null},{"commit":"b3c52eb1ccf82e899dda62c332c0b217d80eb4c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Thu Oct 17 08:03:56 2019 -0700","stats":{"files_changed":2,"insertions":112,"deletions":40,"files":["jc/parsers/ifconfig.py","jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":150}]},"message":"add netstat parser","epoch":1571324636,"epoch_utc":null},{"commit":"366c5dbc010869bdb1d3b9d852e10510bd5c266f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 17:36:50 2019 -0700","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":4}]},"message":"fix help message","epoch":1571272610,"epoch_utc":null},{"commit":"a3ee02514b5fbd43a38ddf515a4aad49bb4e161a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 17:23:18 2019 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":12}]},"message":"fix imports and module names","epoch":1571271798,"epoch_utc":null},{"commit":"46ad1269cb58dc6f064d17eb0b04da62d8fd5fce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 17:15:43 2019 -0700","stats":{"files_changed":2,"insertions":4,"deletions":3,"files":["jc/jc.py","setup.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":6},{"name":"setup.py","lines_changed":1}]},"message":"packaging fixes","epoch":1571271343,"epoch_utc":null},{"commit":"7234afe568818678585ac423649a0ccce0f45d68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 16:22:52 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"entrypoint fix","epoch":1571268172,"epoch_utc":null},{"commit":"caf480c63aacb518805d48fba0fd454959d11023","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 16:01:34 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"module fix","epoch":1571266894,"epoch_utc":null},{"commit":"62851b48d5e5cd673e630a28996e1c24cc45aa58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 15:54:20 2019 -0700","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/jc.py","setup.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":12},{"name":"setup.py","lines_changed":2}]},"message":"fix modules","epoch":1571266460,"epoch_utc":null},{"commit":"46d6da92f0e196e150ab9dd44b1ba290c950905b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 15:08:06 2019 -0700","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["jc/{jc => jc.py}","setup.py"],"file_stats":[{"name":"jc/{jc => jc.py}","lines_changed":0},{"name":"setup.py","lines_changed":2}]},"message":"fix entry_points","epoch":1571263686,"epoch_utc":null},{"commit":"e572b2edfa993c5049ef3caeda7a8e4797f0c751","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 15:03:34 2019 -0700","stats":{"files_changed":2,"insertions":37,"deletions":29,"files":["jc/jc","setup.py"],"file_stats":[{"name":"jc/jc","lines_changed":58},{"name":"setup.py","lines_changed":8}]},"message":"use entry_points instead of scripts","epoch":1571263414,"epoch_utc":null},{"commit":"72c69e7de59029d623c9819dda6aa8cae91bc419","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 09:39:04 2019 -0700","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/jc"],"file_stats":[{"name":"jc/jc","lines_changed":12}]},"message":"fix package paths","epoch":1571243944,"epoch_utc":null},{"commit":"4d1565071e5cf7c38e026e08db8f4d2e79969691","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 09:03:05 2019 -0700","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["jc/{jc.py => jc}","setup.py"],"file_stats":[{"name":"jc/{jc.py => jc}","lines_changed":0},{"name":"setup.py","lines_changed":2}]},"message":"rename jc.py to jc","epoch":1571241785,"epoch_utc":null},{"commit":"3652e51693d7ba829f4699fd80de20856941d82f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Wed Oct 16 08:27:24 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"fix requirements","epoch":1571239644,"epoch_utc":null},{"commit":"49ce9f13e817266659400a8c19f5b078a48589df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 15 18:03:51 2019 -0700","stats":{"files_changed":3,"insertions":17,"deletions":20,"files":["jc/jc.py","jc/parsers/__init__.py","setup.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/__init__.py","lines_changed":5},{"name":"setup.py","lines_changed":27}]},"message":"setup updates","epoch":1571187831,"epoch_utc":null},{"commit":"e83170b7ec7ed2123bfde69be263b6034c7afa53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 15 16:28:42 2019 -0700","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"readme update","epoch":1571182122,"epoch_utc":null},{"commit":"ffb6eb754a87baad5fb0558e30a5bca1a9b9e0a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 15 16:10:24 2019 -0700","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/parsers/__init__.py","setup.py"],"file_stats":[{"name":"jc/parsers/__init__.py","lines_changed":8},{"name":"setup.py","lines_changed":6}]},"message":"setup fixes","epoch":1571181024,"epoch_utc":null},{"commit":"2597a18d95d01109d2250487b7550a501edaf77b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 15 15:32:23 2019 -0700","stats":{"files_changed":1,"insertions":82,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":82}]},"message":"readme update","epoch":1571178743,"epoch_utc":null},{"commit":"3e576250b1bfe1c62c556f2fa0425103b0ede1f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","date":"Tue Oct 15 15:06:09 2019 -0700","stats":{"files_changed":11,"insertions":429,"deletions":0,"files":[".gitignore","LICENSE.md","README.md","build-package.sh","jc/__init__.py","jc/jc.py","jc/parsers/__init__.py","jc/parsers/ifconfig.py","jc/parsers/ls.py","jc/parsers/netstat.py","setup.py"],"file_stats":[{"name":".gitignore","lines_changed":6},{"name":"LICENSE.md","lines_changed":21},{"name":"README.md","lines_changed":53},{"name":"build-package.sh","lines_changed":5},{"name":"jc/__init__.py","lines_changed":61},{"name":"jc/jc.py","lines_changed":38},{"name":"jc/parsers/__init__.py","lines_changed":3},{"name":"jc/parsers/ifconfig.py","lines_changed":30},{"name":"jc/parsers/ls.py","lines_changed":130},{"name":"jc/parsers/netstat.py","lines_changed":55},{"name":"setup.py","lines_changed":27}]},"message":"First commit","epoch":1571177169,"epoch_utc":null}] diff --git a/tests/fixtures/generic/git-log-oneline-stat-streaming.json b/tests/fixtures/generic/git-log-oneline-stat-streaming.json index 9583f6b5..7dd3ee71 100644 --- a/tests/fixtures/generic/git-log-oneline-stat-streaming.json +++ b/tests/fixtures/generic/git-log-oneline-stat-streaming.json @@ -1 +1 @@ -[{"commit":"096fffdb79807d34b99985b38df0a3df7f6a86c7","message":"use stat examples","stats":{"files_changed":2,"insertions":120,"deletions":36,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"]}},{"commit":"728d882ed007b3c8b785018874a0eb06e1143b66","message":"add timestamp docs and examples","stats":{"files_changed":2,"insertions":90,"deletions":12,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"]}},{"commit":"b53e42aca623181aa9bc72194e6eeef1e9a3a237","message":"add calculated timestamp","stats":{"files_changed":5,"insertions":29,"deletions":6,"files":["docs/parsers/git_log.md","docs/utils.md","jc/parsers/git_log.py","jc/utils.py","man/jc.1"]}},{"commit":"477329ce5b8f5c2a8e4384ba3f59289fc18c957d","message":"add linefeed to version text","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]}},{"commit":"283dc4efd55030188f17c7e1dfbc5315103494b7","message":"add python interpreter version and path to -v and -a output","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["CHANGELOG","jc/cli.py"]}},{"commit":"d490bbcaa0291a691b95fa5b61807eebb0b088eb","message":"normalize add/update","stats":{"files_changed":1,"insertions":26,"deletions":26,"files":["CHANGELOG"]}},{"commit":"f49ddf8e5c5009702155fc62d83c63e3c08c594d","message":"doc update","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"]}},{"commit":"e1e341652b51b823844e76ef7e68f9373a323435","message":"doc update","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]}},{"commit":"ecda667549137bed5622cca69f2022e7a75ea833","message":"process integers","stats":{"files_changed":2,"insertions":12,"deletions":8,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"]}},{"commit":"a0d96a188a9f875b2d59625aa97d4f80bba290f2","message":"doc update","stats":{"files_changed":2,"insertions":5,"deletions":1,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"]}},{"commit":"6c0f0cddfe4dd2d5169f7c55416c6725912557f6","message":"fix for datetime objects in yaml files","stats":{"files_changed":2,"insertions":14,"deletions":1,"files":["jc/parsers/yaml.py","tests/test_yaml.py"]}},{"commit":"c7173ecd89742c8cf8a7bc4a8021baac5c3cd483","message":"fix mypy issues","stats":{"files_changed":1,"insertions":8,"deletions":6,"files":["jc/parsers/git_log.py"]}},{"commit":"e98240c905394e3ebd6a45fa31b6d432c150afc4","message":"extend instead of append list","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/git_log.py"]}},{"commit":"6cb7e25974b11afe57d7d0e8550b3b1a56b14c67","message":"add docs","stats":{"files_changed":3,"insertions":93,"deletions":1,"files":["README.md","docs/parsers/git_log.md","man/jc.1"]}},{"commit":"c37980c05c7fbd4f811ce5fcfcfddaf5f3ab5414","message":"add stat support","stats":{"files_changed":1,"insertions":41,"deletions":7,"files":["jc/parsers/git_log.py"]}},{"commit":"b5943bd39d776fc4c3b3dea03c0f3d4b6f4bb260","message":"initial docstring","stats":{"files_changed":1,"insertions":23,"deletions":10,"files":["jc/parsers/git_log.py"]}},{"commit":"49a3a7db3b2b0b292489a41691c9dcbce816cfed","message":"initial git-log parser","stats":{"files_changed":2,"insertions":175,"deletions":0,"files":["jc/lib.py","jc/parsers/git_log.py"]}},{"commit":"0c55240e9da30ac4293cc324f1094de2abd3da91","message":"move test templates to fix test failures on some systems","stats":{"files_changed":3,"insertions":1,"deletions":0,"files":["CHANGELOG","tests/{ => templates}/_test_foo.py","tests/{ => templates}/_test_foo_s.py"]}},{"commit":"f91988aed5499d25acf7a7e87b2b0d0cd37b62af","message":"iterator -> iterable","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/lib.md"]}},{"commit":"3c3ad9fc6adf865b3814a1f03814d0bc17d1c6bd","message":"iterator -> iterable in doc","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]}},{"commit":"291ab79e22a59cb31814e7a5af9dbc9f2ec863e2","message":"fix arch linux command","stats":{"files_changed":3,"insertions":24,"deletions":24,"files":["README.md","man/jc.1","templates/readme_template"]}},{"commit":"e6d5892c146762cd41a966adadb77db333d98ace","message":"Merge pull request #226 from kellyjonbrazil/master"},{"commit":"dcca7a57d558721a61fbba44f07b1d53116827e1","message":"Merge pull request #225 from adrianteri/patch-1"},{"commit":"4ee8a69337b24e199983fe657643abcb0a56a8e6","message":"Update README","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]}},{"commit":"c0414e7db7f5d785b72ad616517f2ec63af151a2","message":"clean up background tasks","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["docgen.sh"]}},{"commit":"a419175fe6dffe9c5fd20cfbd82ee552bc82a993","message":"enhance parallelization","stats":{"files_changed":2,"insertions":34,"deletions":17,"files":["docgen.sh","updatedocs.sh"]}},{"commit":"cd6dead034f3c72aebd22afeb2aea6591ae6d94d","message":"man page update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]}},{"commit":"45342ea9fea29947d8d90260c7665ffbca612cce","message":"parallelize doc gneration","stats":{"files_changed":2,"insertions":16,"deletions":9,"files":["docgen.sh","updatedocs.sh"]}},{"commit":"585bf0e159c7839869cf3e458938dcc5fa2ceb81","message":"xrandr update","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]}},{"commit":"3a860b9babe93d455f68ef21436edf7470d375af","message":"add rotation field","stats":{"files_changed":2,"insertions":7,"deletions":5,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]}},{"commit":"269180df77f9ff953b07222e8ae790c7e7a8298e","message":"Merge pull request #223 from anekos/fix/support-rotated-devices"},{"commit":"a1afed8d95e33fbbc618c7b5778a9faeea2f628f","message":"doc update","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["docs/parsers/xrandr.md"]}},{"commit":"e39f150a216e4e184444dfc88a63e0f303e51631","message":"Support rotated devices","stats":{"files_changed":3,"insertions":9,"deletions":4,"files":["jc/parsers/xrandr.py","tests/fixtures/generic/xrandr_simple.json","tests/test_xrandr.py"]}},{"commit":"e85f11c6fcad5461bae612dd5a945c20d300e59a","message":"doc formatting","stats":{"files_changed":4,"insertions":12,"deletions":12,"files":["docs/parsers/ini.md","docs/parsers/kv.md","jc/parsers/ini.py","jc/parsers/kv.py"]}},{"commit":"49a9d7b07e89696f2e022655d7256b7d6ad4bf7b","message":"doc update","stats":{"files_changed":3,"insertions":12,"deletions":8,"files":["docs/parsers/ini.md","docs/parsers/kv.md","man/jc.1"]}},{"commit":"a2ef9c429e4bb9f70d033511dce77ccdb9013971","message":"allow duplicate keys","stats":{"files_changed":4,"insertions":38,"deletions":8,"files":["jc/parsers/ini.py","jc/parsers/kv.py","tests/test_ini.py","tests/test_kv.py"]}},{"commit":"d5e9074f1c8facb3f15b8c41a008917178626978","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/lib.py","setup.py"]}},{"commit":"774699f085d97f22ae2dab0cf64d72aa1e1709f7","message":"Merge pull request #220 from kellyjonbrazil/master"},{"commit":"7138eef3d137bc64286d4af453d8d4e7b3f4408d","message":"fix newline chars in doc","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py"]}},{"commit":"fad5e544aa9e57d31473190e196f59c616901207","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"]}},{"commit":"64757e2cf55448bccfbbd60d31930ab3f59af21b","message":"doc formatting","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"]}},{"commit":"e05be3f08beae1b600fc55a3a7b4e28163e15bc0","message":"Merge pull request #213 from kellyjonbrazil/dev"},{"commit":"789f0735dfd63e728b8716d97cf0c6045ede5011","message":"doc update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]}},{"commit":"34bc7753174be28d6c1a00dadc662bc374e554c1","message":"doc update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]}},{"commit":"38de059a1bc285c8681086d9fb43d0d23ac01d49","message":"doc update","stats":{"files_changed":3,"insertions":9,"deletions":3,"files":["docs/parsers/asciitable.md","docs/parsers/universal.md","man/jc.1"]}},{"commit":"304ae6268f4dff6e6f901628e7ff89db1d6e0767","message":"minor optimization by changing the expression order","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/parsers/asciitable_m.py"]}},{"commit":"978caf45221188a29c0e67147804f20f317c066d","message":"minor optimization by reordering expressions","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["jc/parsers/asciitable.py"]}},{"commit":"17df5bfcfc25f226a2976aa7ab8a80e4aaa915c3","message":"cache _is_separator function","stats":{"files_changed":2,"insertions":12,"deletions":2,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]}},{"commit":"5e6a5068cff71b3b30525d0a12868bdf6551456c","message":"allow iterables for simple table parser","stats":{"files_changed":1,"insertions":6,"deletions":2,"files":["jc/parsers/universal.py"]}},{"commit":"619de68a61be0117e635032347dde417d77c748c","message":"formatting","stats":{"files_changed":2,"insertions":8,"deletions":9,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]}},{"commit":"6748c3cc91f90bddea3d07b8b30a049ee55eaf35","message":"remove lines from corner detection and add rounded corners","stats":{"files_changed":2,"insertions":65,"deletions":61,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]}},{"commit":"0a462978b731770d1290187a502706c2322f5f91","message":"fix for special characters in headers","stats":{"files_changed":4,"insertions":101,"deletions":3,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py","tests/test_asciitable.py","tests/test_asciitable_m.py"]}},{"commit":"e66a82ff49b40a674f9ef373a12d59fc71bfa730","message":"doc update","stats":{"files_changed":3,"insertions":6,"deletions":5,"files":["CHANGELOG","jc/parsers/asciitable_m.py","man/jc.1"]}},{"commit":"f3aa797d96c8e2cef2124dbb2f49d1fadaee3fa2","message":"add more pretty table separators","stats":{"files_changed":2,"insertions":69,"deletions":9,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]}},{"commit":"e5b478218c4ba3781afd085056dba888c3f6ae02","message":"add quiet=True to parse tests","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_xrandr.py"]}},{"commit":"35e0e9c32afbc5450c661bcb3a23904d135358ad","message":"remove print statement","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable.py"]}},{"commit":"17c3c2f029a0a47eb02d681567619d471b99949c","message":"add bold bar seperator and ANSI code tests","stats":{"files_changed":4,"insertions":58,"deletions":2,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py","tests/test_asciitable.py","tests/test_asciitable_m.py"]}},{"commit":"cf83e6398b3314b233581eb313510872177de20a","message":"add fancy separators","stats":{"files_changed":2,"insertions":7,"deletions":0,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]}},{"commit":"94e061b881e2ed28d2b462ad038e5ba77182b6c4","message":"add asciitable parser tests","stats":{"files_changed":1,"insertions":275,"deletions":0,"files":["tests/test_asciitable.py"]}},{"commit":"720480e39ce3cc2079d7f4f5bcff2725081fec34","message":"doc update","stats":{"files_changed":4,"insertions":10,"deletions":2,"files":["docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]}},{"commit":"82a63fe15922456853aa4597aa10a5a02b20bdef","message":"doc update","stats":{"files_changed":2,"insertions":6,"deletions":8,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"]}},{"commit":"9c1ec9940e68ce9848da20e81b8c0b7e35a215df","message":"doc update","stats":{"files_changed":4,"insertions":82,"deletions":14,"files":["docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]}},{"commit":"f23f19da453a0f7bcf70e417a10f87e27571aa43","message":"doc update","stats":{"files_changed":5,"insertions":122,"deletions":9,"files":["README.md","docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py","man/jc.1"]}},{"commit":"aea2e1b0a9c6bb2a02a6e73889bb04e8f4f22588","message":"fix tests so blank strings are now None","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["tests/test_asciitable_m.py"]}},{"commit":"7d95d679bf4093ea77f30a1be55384b6dbf08341","message":"add asciitable parser","stats":{"files_changed":2,"insertions":212,"deletions":1,"files":["jc/lib.py","jc/parsers/asciitable.py"]}},{"commit":"b3b140066b74ee31dd1c460502caf2f26df321b6","message":"doc update","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py"]}},{"commit":"b204c423c1b947c17cb251a5dd3c444cd71dd2c0","message":"doc update","stats":{"files_changed":4,"insertions":193,"deletions":15,"files":["README.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py","man/jc.1"]}},{"commit":"d451c309bb0d8889dc09a698212bf01c2154a582","message":"change multiple or statements to any()","stats":{"files_changed":1,"insertions":11,"deletions":8,"files":["jc/parsers/asciitable_m.py"]}},{"commit":"01d53da68ed04b736934851137c59216ad02d8c8","message":"remove debug print","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable_m.py"]}},{"commit":"53dd05e52c329a15c30a756a36a165ac59ef8a14","message":"fix rstrip and add tests","stats":{"files_changed":2,"insertions":29,"deletions":1,"files":["jc/parsers/asciitable_m.py","tests/test_asciitable_m.py"]}},{"commit":"ab564f5be8282f1c7ee2d602bcef398fdfd4570f","message":"add tests","stats":{"files_changed":2,"insertions":237,"deletions":1,"files":["jc/parsers/asciitable_m.py","tests/test_asciitable_m.py"]}},{"commit":"00c39450f9878527b60545ad61c04cfb98f418dc","message":"enhance type annotation","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"]}},{"commit":"f611d08b50219f4e573c1d1f0beae27583e76432","message":"formatting","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/asciitable_m.py"]}},{"commit":"90e79b7df3a4d5b37835fdf1c2debc1bad0a40b9","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"]}},{"commit":"4eb2d725d5fe6f2cc7935c7dc891912cf7b8e940","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"]}},{"commit":"51ae5ebcac7263ef2571c11975b275eff352bbc5","message":"new streamlined parser","stats":{"files_changed":1,"insertions":148,"deletions":175,"files":["jc/parsers/asciitable_m.py"]}},{"commit":"9ecbdb09162da4d563799aa93d422db85b2c324b","message":"use generator instead of iterable in function return annotation","stats":{"files_changed":8,"insertions":35,"deletions":30,"files":["docs/parsers/mpstat_s.md","docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","docs/parsers/universal.md","jc/parsers/foo_s.py","jc/parsers/mpstat_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"]}},{"commit":"b3a2886fd0af0cd06890f37f1edfc6890bb83e6c","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["docs/lib.md"]}},{"commit":"ceacec0f462bd7c2d9e92ddb9029ccd71aef481c","message":"remove errant os sep import","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable_m.py"]}},{"commit":"ff0f794b01395ed9b65fac75a6b07f0772d45a2d","message":"working","stats":{"files_changed":1,"insertions":32,"deletions":10,"files":["jc/parsers/asciitable_m.py"]}},{"commit":"70fafbf3f80f35c5db2c306978b2a488adad40bb","message":"remove asciitable so tests pass for now","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]}},{"commit":"5a248a8fc58952a5eab3d4aac025d7422ba82d08","message":"add multiline asciitable parser","stats":{"files_changed":1,"insertions":344,"deletions":0,"files":["jc/parsers/asciitable_m.py"]}},{"commit":"4a3a4e10df8a552a4db3510640695f02b166dc40","message":"add asciitable and asciitable-m parsers","stats":{"files_changed":1,"insertions":3,"deletions":4,"files":["jc/lib.py"]}},{"commit":"c27bd5ff39f21c6377e661d4d7de1200d2fdd72f","message":"pad lines in sparse_table_parse and use str.isspace()","stats":{"files_changed":1,"insertions":23,"deletions":16,"files":["jc/parsers/universal.py"]}},{"commit":"f804c9627fb71341429ca80aec2887e23e0277db","message":"copy input list so we don't mutate the caller's data","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/universal.py"]}},{"commit":"3ab25d02f9dc248706aa1105e1766b2a84bc55a3","message":"use _parser_is_streaming from lib","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"9e80fd2b97b9bfe38fdaa6acdf2e8ed26d34b49d","message":"fallback if info and doc items don't exist","stats":{"files_changed":2,"insertions":15,"deletions":11,"files":["jc/cli.py","jc/lib.py"]}},{"commit":"ff9527a098a94c996641fb3fe2f905c8ae5e3063","message":"import cleanup and use all_parser_info in parsers_text","stats":{"files_changed":1,"insertions":9,"deletions":13,"files":["jc/cli.py"]}},{"commit":"7dac2f8dc3baf619105e3c6ca4d3e45300b86287","message":"doc update","stats":{"files_changed":3,"insertions":23,"deletions":9,"files":["docs/lib.md","docs/readme.md","man/jc.1"]}},{"commit":"32e4d55e86c3e7d94488ec69f13a4f6400c4cef3","message":"use parser_info for help_doc","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"]}},{"commit":"f9a9062147256d0949457cc7fde838f87202524d","message":"add documentation argument to parser_info and all_parser_info","stats":{"files_changed":3,"insertions":27,"deletions":10,"files":["CHANGELOG","jc/__init__.py","jc/lib.py"]}},{"commit":"89e5919796f7da585285901dca461aae21336415","message":"add -A to second example","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/mpstat_s.md","jc/parsers/mpstat_s.py"]}},{"commit":"e5f5b2591d8ac3abeb9571688c7fb8de34d647f4","message":"changelog update","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]}},{"commit":"77c667eec045daff5cbd062fe9d6e83f237727e5","message":"ubuntu fixes","stats":{"files_changed":9,"insertions":67,"deletions":6,"files":["docs/parsers/mpstat.md","docs/parsers/mpstat_s.md","jc/parsers/mpstat.py","jc/parsers/mpstat_s.py","tests/fixtures/ubuntu-18.04/mpstat-A-streaming.json","tests/fixtures/ubuntu-18.04/mpstat-A.json","tests/fixtures/ubuntu-18.04/mpstat-A.out","tests/test_mpstat.py","tests/test_mpstat_s.py"]}},{"commit":"b257ce8c2fe6825fe435b4d04b4184091030db10","message":"add mpstat_s tests","stats":{"files_changed":4,"insertions":65,"deletions":0,"files":[".../centos-7.7/mpstat-A-2-5-streaming.json","tests/fixtures/centos-7.7/mpstat-A-streaming.json","tests/fixtures/centos-7.7/mpstat-streaming.json","tests/test_mpstat_s.py"]}},{"commit":"c693c868cacbcd81f44fd383719723dd7a137c87","message":"add mpstat streaming parser","stats":{"files_changed":7,"insertions":352,"deletions":0,"files":["README.md","docs/parsers/mpstat.md","docs/parsers/mpstat_s.md","jc/lib.py","jc/parsers/mpstat.py","jc/parsers/mpstat_s.py","man/jc.1"]}},{"commit":"6f98b27a05d6e1f7571a97316b193f096521b959","message":"add mpstat tests","stats":{"files_changed":7,"insertions":168,"deletions":0,"files":["tests/fixtures/centos-7.7/mpstat-A-2-5.json","tests/fixtures/centos-7.7/mpstat-A-2-5.out","tests/fixtures/centos-7.7/mpstat-A.json","tests/fixtures/centos-7.7/mpstat-A.out","tests/fixtures/centos-7.7/mpstat.json","tests/fixtures/centos-7.7/mpstat.out","tests/test_mpstat.py"]}},{"commit":"d7efd25d88a8f489564ce48223845a16e4ab1cc7","message":"add mpstat to docs","stats":{"files_changed":4,"insertions":207,"deletions":1,"files":["EXAMPLES.md","README.md","docs/parsers/mpstat.md","man/jc.1"]}},{"commit":"2cddb1f0bb497be0be071cdcb56bf49d2dafc920","message":"working mpstat","stats":{"files_changed":1,"insertions":94,"deletions":15,"files":["jc/parsers/mpstat.py"]}},{"commit":"ae1c331595dd857d8ae7f8cf93daee1b26be2c3e","message":"initial working version","stats":{"files_changed":1,"insertions":30,"deletions":5,"files":["jc/parsers/mpstat.py"]}},{"commit":"bc97052ed4ee3bf3f25127968139f2e89a659fe3","message":"initial add mpstat parser","stats":{"files_changed":3,"insertions":109,"deletions":0,"files":["CHANGELOG","jc/lib.py","jc/parsers/mpstat.py"]}},{"commit":"6c3e0e2aa0e8cc375d9f7473930b18957d33f1aa","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]}},{"commit":"dd052e01469e9e3328f7326d3591365a8e7322eb","message":"add underscores to column examples","stats":{"files_changed":2,"insertions":26,"deletions":24,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]}},{"commit":"54e8f58145f6c4332fbd375d112259ea7abb2d72","message":"add table result examples","stats":{"files_changed":2,"insertions":28,"deletions":2,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]}},{"commit":"def7aa5764e69cd0cf2c5b70aa62c62023f76c9c","message":"formatting","stats":{"files_changed":2,"insertions":16,"deletions":16,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]}},{"commit":"6986c74f6dceca907ea2e469a332deeb093a122c","message":"remove direct parser module example from doc","stats":{"files_changed":169,"insertions":34,"deletions":837,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/pidstat.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/nmcli.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/pidstat.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/xrandr.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py"]}},{"commit":"b784db404d0569a4c630eb124b37b0b1d0846453","message":"streaming doc formatting update","stats":{"files_changed":17,"insertions":87,"deletions":166,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/pidstat_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/pidstat_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"]}},{"commit":"8aee4517bb4c2eebdd9873f7eb0827cd33b85519","message":"doc formatting","stats":{"files_changed":2,"insertions":12,"deletions":26,"files":["docs/parsers/pidstat_s.md","jc/parsers/pidstat_s.py"]}},{"commit":"a5fb8fbf94b3b80bef82f078ad6582260b13e374","message":"streaming doc update","stats":{"files_changed":17,"insertions":164,"deletions":148,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/pidstat_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/pidstat_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"]}},{"commit":"b9365e2ac28c3eacf53bc101857f7f1d7286ec20","message":"add pidstat-s tests","stats":{"files_changed":4,"insertions":74,"deletions":0,"files":[".../centos-7.7/pidstat-hdlrsuw-2-5-streaming.json",".../centos-7.7/pidstat-hdlrsuw-streaming.json",".../fixtures/centos-7.7/pidstat-hl-streaming.json","tests/test_pidstat_s.py"]}},{"commit":"696338c1a3d462afbe677a6f2ebe08d06ef4046a","message":"add streaming test template","stats":{"files_changed":1,"insertions":38,"deletions":0,"files":["tests/_test_foo_s.py"]}},{"commit":"4f0616190bb842411353d65650b78a65d8cbdc28","message":"doc update","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","man/jc.1"]}},{"commit":"3278cb0de301ee542b1fe8245a6c359193373b6b","message":"add type hints","stats":{"files_changed":2,"insertions":15,"deletions":10,"files":["docs/parsers/arp.md","jc/parsers/arp.py"]}},{"commit":"4fc04256a567c502a88ac8a1bd189746387c93f1","message":"rollback noReturn to tuple","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["jc/parsers/foo_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"]}},{"commit":"e4ae0fea63c0386c1b3239607fd6a58738d23633","message":"fix type annotation","stats":{"files_changed":5,"insertions":8,"deletions":8,"files":["docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","jc/parsers/foo_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"]}},{"commit":"d3727ea0906d6167aa48c340519242b010469d98","message":"doc update","stats":{"files_changed":4,"insertions":99,"deletions":1,"files":["CHANGELOG","README.md","docs/parsers/pidstat_s.md","man/jc.1"]}},{"commit":"0d13909cf63d14008607c5640d074ab4073115e5","message":"add pidstat-s parser","stats":{"files_changed":2,"insertions":168,"deletions":0,"files":["jc/lib.py","jc/parsers/pidstat_s.py"]}},{"commit":"c52ca20e285895d2afb685a2a5ca275de7901033","message":"fix comment","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/pidstat.py"]}},{"commit":"21f27f26c81c75234221a5193c7d3903323e2032","message":"add pidstat tests","stats":{"files_changed":4,"insertions":72,"deletions":0,"files":["tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.json","tests/fixtures/centos-7.7/pidstat-hdlrsuw.json","tests/fixtures/centos-7.7/pidstat-hl.json","tests/test_pidstat.py"]}},{"commit":"5e7a87f39782d12070a895440ff541800df91b9c","message":"add test template","stats":{"files_changed":1,"insertions":35,"deletions":0,"files":["tests/_test_foo.py"]}},{"commit":"845d763829acd03fff1d2fad6e9691f04bd1a2aa","message":"format docs to fit 80 columns","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/pidstat.md","jc/parsers/pidstat.py"]}},{"commit":"f5c7d52ec72f5ff4b77d5ac4491f330575b9f10f","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":10,"files":["man/jc.1","templates/manpage_template"]}},{"commit":"c3198a58744803f52113f80967c7259d781e2328","message":"formatting","stats":{"files_changed":2,"insertions":22,"deletions":12,"files":["man/jc.1","templates/manpage_template"]}},{"commit":"bbd4afa73542ba6596aed77426bb494fbcf23196","message":"add pidstat to docs","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["README.md","man/jc.1"]}},{"commit":"ae754a84bf5fc35b248bbc5f7b0fa8e871765819","message":"doc update","stats":{"files_changed":3,"insertions":263,"deletions":33,"files":["docs/parsers/arp.md","docs/parsers/pidstat.md","jc/parsers/pidstat.py"]}},{"commit":"3389eb5debe0f0ba01ece01e20048608bf357e70","message":"initial working parser","stats":{"files_changed":4,"insertions":219,"deletions":9,"files":["jc/parsers/pidstat.py","tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.out","tests/fixtures/centos-7.7/pidstat-hdlrsuw.out","tests/fixtures/centos-7.7/pidstat-hl.out"]}},{"commit":"01f2c1e71f87ab401d487be4d6d150cb67c91437","message":"add pidstat parser","stats":{"files_changed":5,"insertions":162,"deletions":2,"files":["CHANGELOG","jc/lib.py","jc/parsers/pidstat.py","setup.py","tests/fixtures/centos-7.7/pidstat.out"]}},{"commit":"8bfbf8f1bcd233a8ecd34012e140eb29164ca5fb","message":"simplify error message","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"f4242669bac3af5eb196c46d4146823aacec40ab","message":"minor cleanup","stats":{"files_changed":1,"insertions":2,"deletions":10,"files":["jc/parsers/arp.py"]}},{"commit":"bebd9331f1fb9b80f8cb4a5cfacd68461743004e","message":"Merge pull request #211 from kellyjonbrazil/master"},{"commit":"ac61e9ad2c9c4e864db02db04cbf907fb0efd99b","message":"add pypi link","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","templates/readme_template"]}},{"commit":"648ef4d8a9c33a36d4bb2c135fe59b031de8f24c","message":"update badge links","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"]}},{"commit":"727fc9a701e9aae75d3d2b708010da1d0dc8781a","message":"doc update","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/date.md","man/jc.1"]}},{"commit":"306512d6bb53af18516fc10b15c7ec79cb02cc98","message":"force AM/PM to uppercase in date parser","stats":{"files_changed":4,"insertions":7,"deletions":4,"files":["CHANGELOG","jc/lib.py","jc/parsers/date.py","setup.py"]}},{"commit":"6afb1d389ca9dfd7880386d380fee032b7eb92e2","message":"Merge pull request #209 from kellyjonbrazil/dev"},{"commit":"98619834818c181cb50a9605fe166b6153c46095","message":"doc update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]}},{"commit":"ca79053db08542849136ae13fdb4d1d90b79a7e5","message":"document pydoc version","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docgen.sh"]}},{"commit":"29c263f87810f8566ebdad2358e99896391adfd8","message":"pydoc formatting fixes","stats":{"files_changed":93,"insertions":115,"deletions":115,"files":["docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/streaming.md","docs/utils.md"]}},{"commit":"128c3c170abc6a702ae044b073fb9d992d4262b1","message":"doc update","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]}},{"commit":"a531ab8864fca27b55d83b55055eaef1c36128cd","message":"formatting","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"0c1be7cc11ec75a5738483d68d053e702eb34fc1","message":"reduce dig example size","stats":{"files_changed":2,"insertions":4,"deletions":18,"files":["README.md","templates/readme_template"]}},{"commit":"e4222b45f54e6179e22d7924c083e4642b9974ae","message":"fix names to mod names","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/lib.py"]}},{"commit":"ac32c69c31e8eff22252d7aded08f6cb14622086","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]}},{"commit":"cb2dfeac8d44b733ad9d364e8c6d233a381bfae1","message":"change name to JSON Convert","stats":{"files_changed":199,"insertions":334,"deletions":326,"files":["README.md","docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/streaming.md","docs/utils.md","jc/__init__.py","jc/cli.py","jc/exceptions.py","jc/lib.py","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat_freebsd_osx.py","jc/parsers/netstat_linux.py","jc/parsers/nmcli.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/xrandr.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py","jc/streaming.py","jc/utils.py","man/jc.1","templates/manpage_template","templates/readme_template"]}},{"commit":"9a3602e70b865a3015bd700b30d1076e17511a9b","message":"doc update","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/lib.md","jc/lib.py"]}},{"commit":"a9f53ee258e18bc90934e263d8dc96feee84e939","message":"optimize streaming parser detection in cli","stats":{"files_changed":2,"insertions":15,"deletions":4,"files":["jc/cli.py","jc/lib.py"]}},{"commit":"6be3d3d98222a262c5138bb09f2951ccfab96110","message":"doc update","stats":{"files_changed":3,"insertions":43,"deletions":1,"files":["CHANGELOG","docs/lib.md","docs/readme.md"]}},{"commit":"e49df7208377ab34a74240a06f35f17fee4b8203","message":"use streaming parser list to find streaming parsers","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]}},{"commit":"7ede7be7bf7b1a7d29d158b3b21c20fff4990e72","message":"add standard and streaming list functions","stats":{"files_changed":2,"insertions":42,"deletions":0,"files":["jc/__init__.py","jc/lib.py"]}},{"commit":"4758e28a36e2a55497e4f722d386a6b5cc30dc4d","message":"formatting","stats":{"files_changed":2,"insertions":20,"deletions":16,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"4a1ee151b3cb054d84cd964fd62f5855f765751d","message":"add dhcp6 options to docs","stats":{"files_changed":2,"insertions":9,"deletions":11,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py"]}},{"commit":"8c8afc1a922e3c30fcf501d169b33a68b65cd3e0","message":"formatting","stats":{"files_changed":2,"insertions":60,"deletions":24,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"ed205f7720d98c225c917c252ed7a6c9e6e8c2b8","message":"doc update","stats":{"files_changed":3,"insertions":9,"deletions":9,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py","man/jc.1"]}},{"commit":"d65f7ae992abc33140c00714d442290103661757","message":"add nmcli","stats":{"files_changed":1,"insertions":41,"deletions":0,"files":["EXAMPLES.md"]}},{"commit":"e2ffef57b9a474048fe72cf42aebfa6bfaf2e42b","message":"fix test","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_nmcli.py"]}},{"commit":"002caa9fb3b65f1ae64df25cc39c3de130403e76","message":"add fedora tests","stats":{"files_changed":7,"insertions":252,"deletions":0,"files":[".../fedora32/nmcli-connection-show-ens33.json",".../fedora32/nmcli-connection-show-ens33.out",".../fixtures/fedora32/nmcli-device-show-ens33.json",".../fixtures/fedora32/nmcli-device-show-ens33.out","tests/fixtures/fedora32/nmcli-device-show.json","tests/fixtures/fedora32/nmcli-device-show.out","tests/test_nmcli.py"]}},{"commit":"b7c6faf3daf8eb0c42a222778baa440c5a018c75","message":"enhance error message","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"554ca61d1764b81dea06b6b013d0444072f0662a","message":"add tests","stats":{"files_changed":11,"insertions":165,"deletions":0,"files":[".../fixtures/centos-7.7/nmcli-connection-all.json",".../centos-7.7/nmcli-connection-show-ens33.json","tests/fixtures/centos-7.7/nmcli-connection.json","tests/fixtures/centos-7.7/nmcli-device-all.json",".../centos-7.7/nmcli-device-show-ens33.json",".../fixtures/centos-7.7/nmcli-device-show-lo.json","tests/fixtures/centos-7.7/nmcli-device-show.json","tests/fixtures/centos-7.7/nmcli-device.json","tests/fixtures/centos-7.7/nmcli-general-all.json",".../centos-7.7/nmcli-general-permissions.json","tests/test_nmcli.py"]}},{"commit":"7b9722d255a16981099dc803beda7abe0d46106a","message":"fix formatting","stats":{"files_changed":2,"insertions":26,"deletions":34,"files":["man/jc.1","templates/manpage_template"]}},{"commit":"5505bde8ef77db0885f08d8d04160cbc4418dd67","message":"doc update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/zipinfo.md"]}},{"commit":"dbcd9a4060647be24bca2a8d577f11925a9ac210","message":"bump version to 1.0","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/zipinfo.py"]}},{"commit":"4bdeb2b3aa063c2772f5c44e52acbe16e915cc3a","message":"simplify warning message","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/xrandr.py"]}},{"commit":"6ae1d03187c6d4b669f6f74db1be7c9cf07adaed","message":"doc fix","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py"]}},{"commit":"f75b06abe4af152be094f8bc1ba5ce66b25e35e2","message":"doc update","stats":{"files_changed":4,"insertions":180,"deletions":3,"files":["README.md","docs/parsers/nmcli.md","jc/parsers/nmcli.py","man/jc.1"]}},{"commit":"1923925710dadc4116202855ae884ef18394d428","message":"update changelog","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["CHANGELOG"]}},{"commit":"2c5c57ae04df3b7abfb1c3423c3350c7c2ab5dcd","message":"version bump","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/lib.py","setup.py"]}},{"commit":"f4d11d697e000135720a971edf84dcad31a1bec8","message":"finish use cases and doc","stats":{"files_changed":1,"insertions":155,"deletions":15,"files":["jc/parsers/nmcli.py"]}},{"commit":"7f409b7082aa9525cc9280e3c5c92bc82089cf14","message":"enhance ParseError cli message","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"937fa5aad2519f588c6d0feb8f08211f6b99872f","message":"split dhcp options","stats":{"files_changed":1,"insertions":20,"deletions":0,"files":["jc/parsers/nmcli.py"]}},{"commit":"19dcef513565c34a31f6d735577da5e25f9bd2cd","message":"firm up flow. add/remove text. parse routes","stats":{"files_changed":1,"insertions":69,"deletions":2,"files":["jc/parsers/nmcli.py"]}},{"commit":"3d01356461eb2790f859968da7f5cb4fd2ee9898","message":"add text_kv function","stats":{"files_changed":1,"insertions":27,"deletions":3,"files":["jc/parsers/nmcli.py"]}},{"commit":"2d6f666fa4c791e7995f6b0c1490dac73ce224c3","message":"add dev show and conn show parsers","stats":{"files_changed":1,"insertions":61,"deletions":16,"files":["jc/parsers/nmcli.py"]}},{"commit":"4dda895f122ecc19b267ed1485cf656bae76ff07","message":"initial nmcli parser","stats":{"files_changed":13,"insertions":404,"deletions":0,"files":["jc/lib.py","jc/parsers/nmcli.py","tests/fixtures/centos-7.7/nmcli-connection-all.out",".../centos-7.7/nmcli-connection-show-ens33.out","tests/fixtures/centos-7.7/nmcli-connection.out","tests/fixtures/centos-7.7/nmcli-device-all.out",".../centos-7.7/nmcli-device-show-ens33.out","tests/fixtures/centos-7.7/nmcli-device-show-lo.out","tests/fixtures/centos-7.7/nmcli-device-show.out","tests/fixtures/centos-7.7/nmcli-device.out","tests/fixtures/centos-7.7/nmcli-general-all.out",".../centos-7.7/nmcli-general-permissions.out","tests/fixtures/centos-7.7/nmcli.out"]}},{"commit":"52617b1722ba2f089716b069f78f70a865430d61","message":"Merge pull request #208 from kellyjonbrazil/master"},{"commit":"961968a0fcaf37b64bc850c4945ba4b805a1fe54","message":"fix schema","stats":{"files_changed":2,"insertions":26,"deletions":23,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]}},{"commit":"f026a788e5ca1231927e71fdbb1dadb2365a6518","message":"add xrandr example","stats":{"files_changed":1,"insertions":62,"deletions":0,"files":["EXAMPLES.md"]}},{"commit":"2f7c03eb35520be916c28a687031f8c6425839ba","message":"Merge pull request #207 from kellyjonbrazil/dev"},{"commit":"3afaa48eee081e28262d1762c5ec23d318012822","message":"doc update","stats":{"files_changed":15,"insertions":15,"deletions":15,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"]}},{"commit":"3201452564fb0fb44ef9cc32217339370bd2521e","message":"add -p to example","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]}},{"commit":"7ee1e34fc71c0dbc08ba482b787d560fd5125f64","message":"doc update","stats":{"files_changed":2,"insertions":116,"deletions":4,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]}},{"commit":"67dbf050161201f5016899591e81ab6253ac2322","message":"add type annotations","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]}},{"commit":"4ac9f2e3dad4e7bd270bf5a8e61b729838b2c89c","message":"doc update","stats":{"files_changed":5,"insertions":10,"deletions":17,"files":["CHANGELOG","docs/parsers/rsync.md","docs/parsers/rsync_s.md","jc/parsers/rsync.py","jc/parsers/rsync_s.py"]}},{"commit":"3f5f6e39a777ef524cb3a06a01321bb8c31d930d","message":"formatting","stats":{"files_changed":2,"insertions":100,"deletions":98,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]}},{"commit":"4723db8e3cc4946b14c83b25d6e8c6d2309aa72e","message":"doc updates","stats":{"files_changed":8,"insertions":195,"deletions":77,"files":["README.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/xrandr.md","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/xrandr.py","man/jc.1"]}},{"commit":"ca914ec77d1fc77e42860189e62ac2fb203d4931","message":"add nodata test","stats":{"files_changed":1,"insertions":11,"deletions":2,"files":["tests/test_xrandr.py"]}},{"commit":"dcc7f3f357ef016b4583fc1320fd2394788f271f","message":"Merge pull request #204 from lyterk/xrandr"},{"commit":"cbdc66623671da335eafe132b7af79f884856f1d","message":"Return empty object if no results and filenames","stats":{"files_changed":3,"insertions":2,"deletions":30,"files":["jc/parsers/xrandr.py",".../{simple_xrandr.json => xrandr_simple.json}",".../{simple_xrandr.out => xrandr_simple.out}"]}},{"commit":"184ef3a1faeb406ce62076cff637ee86d61541fb","message":"doc update","stats":{"files_changed":3,"insertions":11,"deletions":3,"files":["docs/parsers/rsync.md","docs/parsers/rsync_s.md","man/jc.1"]}},{"commit":"c732f759445e335fe36586859b6fde7e27bb8901","message":"doc update","stats":{"files_changed":2,"insertions":10,"deletions":2,"files":["jc/parsers/rsync.py","jc/parsers/rsync_s.py"]}},{"commit":"7a1ae4f5fc5328c32bf77235cfbd9f83ec995053","message":"add library tests","stats":{"files_changed":3,"insertions":105,"deletions":0,"files":["tests/{test_lib.py => test_jc_lib.py}","tests/test_jc_streaming.py","tests/{test_utils.py => test_jc_utils.py}"]}},{"commit":"d04bc3757c482ec9062b2da91ded76c5dd6d106b","message":"add xrandr","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]}},{"commit":"73e8391653145412cd852aca349466018c8b9084","message":"formatting","stats":{"files_changed":1,"insertions":8,"deletions":3,"files":["jc/utils.py"]}},{"commit":"f6c1463c1578db264ccb3d4c2677857ed906e965","message":"formatting","stats":{"files_changed":1,"insertions":44,"deletions":24,"files":["jc/cli.py"]}},{"commit":"d392c7f901a9d7c57617fbd03bd3f88ee0bf4132","message":"doc update","stats":{"files_changed":12,"insertions":20,"deletions":13,"files":["docs/parsers/date.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/ls.md","docs/parsers/rpm_qi.md","docs/parsers/stat.md","docs/parsers/systeminfo.md","docs/parsers/timedatectl.md","docs/parsers/upower.md","docs/parsers/vmstat.md","docs/parsers/who.md","docs/utils.md"]}},{"commit":"d0387f58205b2fd9b9860ce9656bb29ceec54340","message":"add timestamp format hints for better performance","stats":{"files_changed":16,"insertions":34,"deletions":29,"files":["jc/parsers/date.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/systeminfo.py","jc/parsers/timedatectl.py","jc/parsers/upower.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/who.py"]}},{"commit":"76f92908a3ba9cbadcc8e972afa8b1c4a69509bd","message":"add format hints for performance optimization","stats":{"files_changed":1,"insertions":44,"deletions":9,"files":["jc/utils.py"]}},{"commit":"1a115da67bdce9acfefbfb71fbac37e234b1babd","message":"add lru_cache maxsize for python 3.7 support","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]}},{"commit":"f0a37ccf301eee5133a83b5dd96986fef0c38e7c","message":"use lru_cache for significant performance boost to timestamp","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/utils.py"]}},{"commit":"f331f53a531169520a4d8ea15d277560a49aedb5","message":"use !r formatting instead of quotes","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["CHANGELOG","jc/utils.py"]}},{"commit":"8611aff06b18212b7292d564beb27a2062fc3f41","message":"add examples","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/parsers/rsync_s.md","jc/parsers/rsync_s.py"]}},{"commit":"2f3f78e8d35a0ccccde0f84417400acdfe7fe0aa","message":"refine streaming parsers","stats":{"files_changed":16,"insertions":194,"deletions":185,"files":["docgen.sh","docs/parsers/rsync_s.md","docs/readme.md","docs/streaming.md","docs/utils.md","jc/__init__.py","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/streaming.py","man/jc.1"]}},{"commit":"d1e0ee6123dfecd48d074cb7a40e98a15b6adcb9","message":"use new streaming functions","stats":{"files_changed":1,"insertions":6,"deletions":8,"files":["jc/parsers/ping_s.py"]}},{"commit":"45314c98083067f1f6fae9c477c99fabec223f29","message":"move some functions to streaming","stats":{"files_changed":2,"insertions":112,"deletions":102,"files":["jc/streaming.py","jc/utils.py"]}},{"commit":"df00945b46e27e10107f48d186eedf80b55bd40e","message":"move try/except inside for loop","stats":{"files_changed":6,"insertions":59,"deletions":49,"files":["jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py"]}},{"commit":"fda0050d867bcbe4f1d7e024b08e9881d0f57735","message":"add rsync-s tests","stats":{"files_changed":13,"insertions":191,"deletions":0,"files":[".../centos-7.7/rsync-i-logfile-streaming.json","tests/fixtures/centos-7.7/rsync-i-streaming.json",".../centos-7.7/rsync-i-v-logfile-streaming.json",".../centos-7.7/rsync-i-vv-logfile-streaming.json",".../rsync-i-vvv-logfile-nochange-streaming.json",".../centos-7.7/rsync-i-vvv-logfile-streaming.json",".../centos-7.7/rsync-ivvv-nochange-streaming.json",".../fixtures/centos-7.7/rsync-ivvv-streaming.json","tests/fixtures/generic/rsync-i-streaming.json",".../rsync-i-vvv-logfile-nochange-streaming.json",".../rsync-i-vvv-nochange-streaming.json",".../osx-10.14.6/rsync-i-vvv-streaming.json","tests/test_rsync_s.py"]}},{"commit":"a76d46f9ecb1eff4d6cc7ad633c97cec0e99001a","message":"refactor ignore_exceptions","stats":{"files_changed":19,"insertions":110,"deletions":109,"files":["CHANGELOG","docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","docs/utils.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/utils.py","man/jc.1"]}},{"commit":"6b069a82d0fa19c8d83b19b934bace556cb758d7","message":"Add xrandr to lib.py","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/lib.py"]}},{"commit":"6b793d052147406f388c4d5dc04f506a3456f409","message":"Clean up types","stats":{"files_changed":1,"insertions":6,"deletions":11,"files":["jc/parsers/xrandr.py"]}},{"commit":"ce9103f7cc666895dc7840d32797d8c7274cf1b8","message":"Delete old files in template folder","stats":{"files_changed":2,"insertions":0,"deletions":287,"files":["templates/xrandr_sample.txt","templates/xrandr_sample_verbose.txt"]}},{"commit":"671d6dee36a37317257e09a080849205d301bceb","message":"doc update","stats":{"files_changed":8,"insertions":83,"deletions":15,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","docs/utils.md"]}},{"commit":"49929c714c2d71a310b1dd95138dbd02f8704138","message":"add add_jc_meta decorator","stats":{"files_changed":9,"insertions":139,"deletions":52,"files":["jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/utils.py"]}},{"commit":"2986771f07de87bfee44dd3bbb4f285e249aad76","message":"require python v3.7 and above since v3.6 is now deprecated","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"520082d963b93d2bafeff921da3899686b22cadf","message":"New parser: xrandr","stats":{"files_changed":9,"insertions":968,"deletions":0,"files":["jc/parsers/xrandr.py","templates/xrandr_sample.txt","templates/xrandr_sample_verbose.txt","tests/fixtures/generic/simple_xrandr.json","tests/fixtures/generic/simple_xrandr.out","tests/fixtures/generic/xrandr.out","tests/fixtures/generic/xrandr_2.out","tests/fixtures/generic/xrandr_device.out","tests/test_xrandr.py"]}},{"commit":"021e296d457140c32b5256c2b0acf66efc458896","message":"move variable inits and regexes up","stats":{"files_changed":1,"insertions":104,"deletions":100,"files":["jc/parsers/rsync_s.py"]}},{"commit":"42e56fbcea6db64ea7f7045e7755af492c95aec2","message":"move regex up","stats":{"files_changed":1,"insertions":11,"deletions":12,"files":["jc/parsers/rsync.py"]}},{"commit":"a5b62a4055df37b84751a7cdc14eb6f1ed907cd9","message":"add processing and docs","stats":{"files_changed":2,"insertions":230,"deletions":18,"files":["docs/parsers/rsync_s.md","jc/parsers/rsync_s.py"]}},{"commit":"be98c9b7f6c67e23ea101223934d67bba512e645","message":"simplify try/except by moving outside for loop","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/foo_s.py"]}},{"commit":"aceeb8450796ae748a4d4abf75643f309d0a42e5","message":"doc update","stats":{"files_changed":3,"insertions":12,"deletions":1,"files":["CHANGELOG","README.md","man/jc.1"]}},{"commit":"13910632173e7c815ff1161cf52fd1d17153c4a9","message":"first draft rsync streaming parser","stats":{"files_changed":2,"insertions":367,"deletions":0,"files":["jc/lib.py","jc/parsers/rsync_s.py"]}},{"commit":"52157addd0d6dff3bdb34f179ec14b07c8c27ccc","message":"fix compatible list","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/foo_s.py"]}},{"commit":"ec0bc6615e22fdc536623e290d88b9725cb6a0ec","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/utils.md","jc/utils.py"]}},{"commit":"2f80800e38256b363a4122195ec4aaffebe67d87","message":"simplify all_parser_info comprehension","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]}},{"commit":"3959d3347c8d3e838f8c3158c4db74e2fa2eb856","message":"doc update","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["docs/lib.md"]}},{"commit":"b57d25c69a193d3866ea86a3a34edd67049b198d","message":"clean up return type for parser_info","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/lib.py"]}},{"commit":"63e43a7cabb51c624c962cdcc92a1199f18c77e5","message":"doc updates","stats":{"files_changed":7,"insertions":188,"deletions":21,"files":["README.md","docs/lib.md","docs/parsers/rsync.md","docs/parsers/universal.md","docs/parsers/zipinfo.md","docs/utils.md","man/jc.1"]}},{"commit":"21719f9a26c25d896b0a5d49c9d7814175835e16","message":"type annotation updates","stats":{"files_changed":2,"insertions":18,"deletions":20,"files":["jc/lib.py","jc/utils.py"]}},{"commit":"96ec70de4f6178b0669fd9ab47cb303dc45e55c2","message":"remove unneeded optional","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["jc/parsers/universal.py","jc/utils.py"]}},{"commit":"a15a1967dc06169ceeda0fd5b4857ce1a351f3d5","message":"fix typo","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]}},{"commit":"a10d7566294fe5246e68a16e355ce56dd3557ac5","message":"fixy mypy issues","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/universal.py"]}},{"commit":"0700dc7a64b121cf0243416e2cbb82fcef15f5a0","message":"remove cygwin from compatible","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/rsync.py"]}},{"commit":"ca654b214057e19839b89e0d9a66f1110f679c1e","message":"fix parser order","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]}},{"commit":"4ff3b87c1c96d720f4e7fd39e613944e322cb388","message":"remove future field from docstring","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/rsync.py"]}},{"commit":"ea244fb7a91f1d1f8ffe0ea6dc10dfe5ab836878","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_rsync.py"]}},{"commit":"8061f30e6fa58d22ed1a52e02c4d9c7f0bf132cf","message":"add centos -i nochange test","stats":{"files_changed":3,"insertions":236,"deletions":6,"files":["tests/fixtures/centos-7.7/rsync-ivvv-nochange.json","tests/fixtures/centos-7.7/rsync-ivvv-nochange.out","tests/test_rsync.py"]}},{"commit":"8f3b12e81e1b4f0d4394c33db5b3a352f4cfb391","message":"add fixes for mac -i output","stats":{"files_changed":6,"insertions":299,"deletions":0,"files":["jc/parsers/rsync.py",".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.json",".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.out","tests/fixtures/osx-10.14.6/rsync-i-vvv.json","tests/fixtures/osx-10.14.6/rsync-i-vvv.out","tests/test_rsync.py"]}},{"commit":"d0694ce0db5ea2d06b5787429adf23095c4c2df0","message":"add nochange log test for mac","stats":{"files_changed":3,"insertions":245,"deletions":6,"files":[".../osx-10.14.6/rsync-i-vvv-logfile-nochange.json",".../osx-10.14.6/rsync-i-vvv-logfile-nochange.out","tests/test_rsync.py"]}},{"commit":"0cd4c4bc7f3ffe13cb2f1920187e25636b88af61","message":"add nochange tests","stats":{"files_changed":2,"insertions":658,"deletions":0,"files":[".../centos-7.7/rsync-i-vvv-logfile-nochange.json",".../centos-7.7/rsync-i-vvv-logfile-nochange.out"]}},{"commit":"12f90c349c903634def4225ce87924b475be46d0","message":"update regexes for unchanged files","stats":{"files_changed":2,"insertions":68,"deletions":20,"files":["jc/parsers/rsync.py","tests/test_rsync.py"]}},{"commit":"26b8a1f167c4b1ec3f9fb4077254a27ed8548933","message":"remove packages from binaries and packages header","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"]}},{"commit":"3abe382c064f605d915912f9b726d76784eba8a2","message":"add examples","stats":{"files_changed":2,"insertions":90,"deletions":3,"files":["EXAMPLES.md","jc/parsers/rsync.py"]}},{"commit":"1e2edc2c7b5dc104a9efe4da7df9be61b9e1be32","message":"add timestamp","stats":{"files_changed":5,"insertions":53,"deletions":29,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-logfile.json","tests/fixtures/centos-7.7/rsync-i-v-logfile.json","tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json"]}},{"commit":"5fe032a6741b7b6586c60eb28be74bd0e56277a0","message":"fix typo","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/zipinfo.py"]}},{"commit":"e825c02df1cdae67c7f335fe3c675685eb1a8d02","message":"add rsync tests","stats":{"files_changed":11,"insertions":605,"deletions":0,"files":["tests/fixtures/centos-7.7/rsync-i-logfile.json","tests/fixtures/centos-7.7/rsync-i-v-logfile.json","tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out","tests/fixtures/centos-7.7/rsync-i.json","tests/fixtures/centos-7.7/rsync-i.out","tests/fixtures/centos-7.7/rsync-ivvv.json","tests/fixtures/generic/rsync-i.json","tests/fixtures/generic/rsync-i.out","tests/test_rsync.py"]}},{"commit":"a4a4d170b5ae8c189de982adea5bdc9bf1f26e6c","message":"update docstring","stats":{"files_changed":1,"insertions":10,"deletions":5,"files":["jc/parsers/rsync.py"]}},{"commit":"d0fcd523cb2cbb59d0f90369721749b54222961d","message":"fix process conversions","stats":{"files_changed":1,"insertions":19,"deletions":17,"files":["jc/parsers/rsync.py"]}},{"commit":"f72b7dc75dbd1c3f5daee3ecee28487258a04873","message":"change keyname to files and remove future key","stats":{"files_changed":1,"insertions":4,"deletions":8,"files":["jc/parsers/rsync.py"]}},{"commit":"4101dc6bf7bab7d00899426e2f6271a7480d558f","message":"add log-file support","stats":{"files_changed":4,"insertions":1008,"deletions":19,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-v-logfile.out","tests/fixtures/centos-7.7/rsync-i-vv-logfile.out","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out"]}},{"commit":"ea5011b616365b5c10c04416d43035d84e3dacba","message":"updated schema. add log-file option support","stats":{"files_changed":2,"insertions":175,"deletions":41,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-logfile.out"]}},{"commit":"d6de81747fd92642dbd5cb1fb097e375aa38be35","message":"add int/float conversions","stats":{"files_changed":1,"insertions":11,"deletions":3,"files":["jc/parsers/rsync.py"]}},{"commit":"38f04b1c9699246d85332b20df5b6a91ae0c48d9","message":"add summary","stats":{"files_changed":1,"insertions":32,"deletions":7,"files":["jc/parsers/rsync.py"]}},{"commit":"84169e1a913d035744f71472be81fe3a7d774b97","message":"add rsync parser","stats":{"files_changed":4,"insertions":637,"deletions":2,"files":["jc/lib.py","jc/parsers/rsync.py","setup.py","tests/fixtures/centos-7.7/rsync-ivvv.out"]}},{"commit":"1f96586a5e883709f436526de6dcb21ff44bf97b","message":"reorder imports","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/foo.py"]}},{"commit":"681176e4c958157ef1f2151b3e57963a6ba48e09","message":"Merge pull request #203 from kellyjonbrazil/dev"},{"commit":"8bb266352207f95040b72750e5b3ae3b8ceb2b98","message":"date update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]}},{"commit":"663abf313931b49fad64b425ece6a5a257dc7938","message":"clean up scripts","stats":{"files_changed":4,"insertions":3,"deletions":4,"files":["MANIFEST.in","mangen.py","runtests.sh","updatedocs.sh"]}},{"commit":"f7ac41db95c16fd21d83fbce678c5dec28ab40f0","message":"final doc update","stats":{"files_changed":2,"insertions":1,"deletions":13,"files":["README.md","man/jc.1"]}},{"commit":"5502cda9e591b531d6b452b02d8ec322c3287800","message":"add additional test for dict inside list for all_parser_info()","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["tests/test_lib.py"]}},{"commit":"a2b165565f54d91489bf38577a0785e78a4523d8","message":"add lib tests for new functions","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["tests/test_lib.py"]}},{"commit":"b426369815984bd2aae8bcb14e306ba73b8cd4ae","message":"use all_parser_info() from lib in about function","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/cli.py"]}},{"commit":"ac0840cc0afb4aeee2c99076710c987e09cfa5f7","message":"fix typo","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"ee98ab0a4a7671ae34ee79f7b0b97c061a8c2944","message":"doc update","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/lib.md","docs/utils.md"]}},{"commit":"2adec2c0035b84ca0242f2494b6c2651b9898ca5","message":"update type hints with mypy help","stats":{"files_changed":4,"insertions":21,"deletions":19,"files":["jc/lib.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/utils.py"]}},{"commit":"f19c9c71bf4f592f55a5176458acd478b462fdbe","message":"add type hints","stats":{"files_changed":2,"insertions":15,"deletions":4,"files":["jc/parsers/foo.py","jc/parsers/foo_s.py"]}},{"commit":"e93adf1884c0006a64123513070a5fd96a940da2","message":"fix doc","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"254c4fc507842ca72064c0196418a7b939d54d06","message":"add new functions","stats":{"files_changed":2,"insertions":20,"deletions":6,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"74d5f60d14fc42cfd5768c7ffd6efc890a65d442","message":"update console interview description","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"]}},{"commit":"db7dc0634bc17b4daadc8bc21bba5975c093efe5","message":"make **kwargs optional","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/lib.md","jc/lib.py"]}},{"commit":"e156b0db453e99fb0f74b618fd343218f978ff68","message":"add type hints","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]}},{"commit":"50adc05fbd6a0dcd9e4fb38aa41917bb57332f36","message":"formatting","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/utils.md","jc/utils.py"]}},{"commit":"446cac7c217103eb66cfdee97e3a208b7144b644","message":"doc update","stats":{"files_changed":2,"insertions":15,"deletions":11,"files":["docs/utils.md","jc/utils.py"]}},{"commit":"28ffe3076bb5f23aeaf2624344856dbd02b4c0e8","message":"formatting","stats":{"files_changed":2,"insertions":8,"deletions":9,"files":["docs/lib.md","jc/lib.py"]}},{"commit":"d4d5e206cae14acd25445952f820810818b3fdce","message":"type hints update","stats":{"files_changed":3,"insertions":40,"deletions":28,"files":["docs/lib.md","docs/utils.md","jc/utils.py"]}},{"commit":"42fbe40a4ae02b9d09acdbf9b22573844959d2ad","message":"simplify type hints","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/lib.py"]}},{"commit":"27e4a120e21dcbb3eadc6c4cf224ddb33859328d","message":"remove trailing comma","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/lib.md","jc/lib.py"]}},{"commit":"b5d5b7c73a96d4335b178ccfac60af90913e6f0f","message":"remove private classes","stats":{"files_changed":3,"insertions":29,"deletions":148,"files":["docgen.sh","docs/parsers/ifconfig.md","docs/parsers/traceroute.md"]}},{"commit":"e7471556ba5fb0586ac5b0d7404cabd98a58db2e","message":"remove sed lines","stats":{"files_changed":1,"insertions":0,"deletions":5,"files":["docgen.sh"]}},{"commit":"640a21341bb1c562cb2124155b511dfc74277fc0","message":"fix indentation","stats":{"files_changed":2,"insertions":47,"deletions":42,"files":["docs/utils.md","jc/utils.py"]}},{"commit":"f5befad3e41ba2864abc795a2fdf63e0f1d37c21","message":"move docstring under __init__","stats":{"files_changed":2,"insertions":33,"deletions":25,"files":["docs/utils.md","jc/utils.py"]}},{"commit":"f8223023c31093c1a34130b4e4cfc23b1d80a30c","message":"change header depth","stats":{"files_changed":4,"insertions":24,"deletions":10,"files":["docgen.sh","docs/parsers/ifconfig.md","docs/parsers/traceroute.md","docs/utils.md"]}},{"commit":"7028e87f9b411c0cfb92eee7fc0667cdcb9a54ff","message":"remove TOC for parsers","stats":{"files_changed":87,"insertions":22,"deletions":445,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md"]}},{"commit":"590728f9c1ccfdc078e600d1f35ad4ba51f70d36","message":"try new pydoc-markdown formatting options","stats":{"files_changed":91,"insertions":506,"deletions":17,"files":["docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/utils.md","jc/lib.py"]}},{"commit":"7cc147fe2d7b278bcab905bc4c3b70b5265e1510","message":"increase heading size","stats":{"files_changed":2,"insertions":4,"deletions":44,"files":["docgen.sh","docgen.sh.old"]}},{"commit":"3cfb3965bb25024a7b03870b71f02194e278919b","message":"formatting","stats":{"files_changed":3,"insertions":19,"deletions":19,"files":["docs/lib.md","docs/parsers/universal.md","docs/utils.md"]}},{"commit":"155d4213225fe4fcf4a059fb63c1ab9fc493177e","message":"formatting","stats":{"files_changed":86,"insertions":182,"deletions":181,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"]}},{"commit":"d3e10bb87bdb32396bce95f74e62a023f4efaf99","message":"add lsusb docs","stats":{"files_changed":1,"insertions":291,"deletions":0,"files":["docs/parsers/lsusb.md"]}},{"commit":"fd5433ee6220357e59633c78b689aa432d056b43","message":"parse docstring formatting","stats":{"files_changed":3,"insertions":6,"deletions":293,"files":["docs/lib.md","docs/parsers/lsusb.md","jc/lib.py"]}},{"commit":"4568f2d06e8fc1c465c86c318d925586481af062","message":"formatting for parse docstring","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/lib.md","jc/lib.py"]}},{"commit":"c36e513d1bcc07cd8f01ff59199950e5396da51b","message":"formatting","stats":{"files_changed":86,"insertions":88,"deletions":91,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"]}},{"commit":"8e089baf3fe30fed80e1c5cdde7c3046bb70ca5a","message":"remove info class from docs","stats":{"files_changed":86,"insertions":8,"deletions":855,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"]}},{"commit":"386f6c317e104e797c2b55e3d21c8b064a83ac78","message":"update markdown processor settings","stats":{"files_changed":89,"insertions":9552,"deletions":9939,"files":["docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/utils.md"]}},{"commit":"75cd84ce8a86b3357c6cf5fe4fbc62d0f298a29a","message":"try new markdown conversion","stats":{"files_changed":94,"insertions":11423,"deletions":10081,"files":["README.md","docgen.sh","docgen.sh.old","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/utils.md","jc/cli.py","man/jc.1"]}},{"commit":"6fad44e35df5d0e33e716d0fcb84ed309e6fd30b","message":"fix type hint","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]}},{"commit":"1caac750daa25a5abeb1289964e918ec06289bfc","message":"Update type hints","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/lib.py"]}},{"commit":"16370dcb3d5cf1304c2340ef2253ef2987a982b4","message":"update type hints","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]}},{"commit":"c1302f2573993a6908001d6df0697486f54a9e7e","message":"add type-hints to public api","stats":{"files_changed":1,"insertions":19,"deletions":8,"files":["jc/lib.py"]}},{"commit":"6f0ffe0955e4d9d6cc82552cf4e4f419e3ff3756","message":"docu update","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]}},{"commit":"1f89745fe7cca3a0ac27445942098b717675a481","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"a46ac18ef775bb2c52675e61e11c5d92f33cbe81","message":"doc update","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["CHANGELOG"]}},{"commit":"1a05f1c575b57456481e41baaf551cef30115966","message":"add parser info functions. move _get_parser functionality from cli to lib","stats":{"files_changed":3,"insertions":64,"deletions":54,"files":["jc/__init__.py","jc/cli.py","jc/lib.py"]}},{"commit":"08f818aa42ca68050a79ec387c42bff265257fd5","message":"Merge pull request #199 from kellyjonbrazil/master"},{"commit":"b3896650c230b4acc73704a50c93ee74e4034eef","message":"revert column formatting","stats":{"files_changed":2,"insertions":62,"deletions":104,"files":["README.md","templates/readme_template"]}},{"commit":"f285539526998a5097943c71dcecb2979036b2b0","message":"conform to 80 columns","stats":{"files_changed":2,"insertions":104,"deletions":62,"files":["README.md","templates/readme_template"]}},{"commit":"a896dcdf3b31b60582ebb1b3bca5d1103f998dd6","message":"formatting","stats":{"files_changed":2,"insertions":338,"deletions":120,"files":["README.md","templates/readme_template"]}},{"commit":"0a187d4ed08173ec360a006ae2367bb1f2f96c52","message":"add console interview links","stats":{"files_changed":3,"insertions":7,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"]}},{"commit":"2d65bc57d5a396e6683f970194de29494b5c1272","message":"add quotes","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"ab63809fde0cefe1f0401d957a3736fdb760f0cf","message":"update description","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"6f04707dc63936efd0e533ae36e1b39ead10c466","message":"add python package doc info to top of page","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"]}},{"commit":"d14a86a9b58bdc3cb0c8df1dfa495aefdaab8033","message":"fix typo","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"8e6a31d3da19926ac46744e02b27a899ca5fbd7c","message":"minor fix for macOS binary","stats":{"files_changed":6,"insertions":14,"deletions":8,"files":["CHANGELOG","docs/readme.md","jc/__init__.py","jc/lib.py","man/jc.1","setup.py"]}},{"commit":"6e7b6afe87355e96422bb2560ffcbd5e79d28f04","message":"Merge pull request #198 from kellyjonbrazil/dev"},{"commit":"027c231097a002526350a93322407582a85db0cb","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]}},{"commit":"f1cf7d1f953586dd44a4463d924f1a1f52717c37","message":"add helper function info","stats":{"files_changed":2,"insertions":7,"deletions":5,"files":["jc/parsers/foo.py","jc/parsers/foo_s.py"]}},{"commit":"df611cc263f50285e74ceb3381f55b43a74870a0","message":"formatting","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"0f3143bbbb593340190e66729580146410012e14","message":"formatting","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"c280757b7624a46543e481ca47a6e084d2d6f519","message":"formatting","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"d30b9d84ef5ec3a2a504f7ea251c932b8c9ea878","message":"formatting","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"50ded1dbd97d26cf01d7e1a98b40e0f0f7d02202","message":"doc update","stats":{"files_changed":1,"insertions":10,"deletions":4,"files":["docs/readme.md"]}},{"commit":"e319aea5a45c598a44f35b4e58131d977509e4f3","message":"add doc version info","stats":{"files_changed":1,"insertions":10,"deletions":4,"files":["jc/__init__.py"]}},{"commit":"ba86509c1d8700a50fe14e9d931ee57261306c5f","message":"simplify OSError exception handling","stats":{"files_changed":1,"insertions":3,"deletions":9,"files":["jc/cli.py"]}},{"commit":"0a9279ae6bfdd1aa59f5e9b31ce0af3bfec19f96","message":"doc update","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["CHANGELOG","tests/test_lib.py"]}},{"commit":"a13dde12af01b4473aa9a34b8a0d7387fb48500a","message":"change raw output wording","stats":{"files_changed":173,"insertions":173,"deletions":173,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py","man/jc.1"]}},{"commit":"e2ed358de1abefd737c187a324cbe4734d6975e8","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["CHANGELOG"]}},{"commit":"a2cd3666210be3727a00c3405972f32fbd421046","message":"Delete _config.yml","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["docs/_config.yml"]}},{"commit":"15addd9bfc18a0e87beb97040b431c872b783662","message":"doc fix","stats":{"files_changed":2,"insertions":4,"deletions":8,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]}},{"commit":"a4e34b0053ec0c032f4783caaa3e07fc2c685a98","message":"add universal parser docs","stats":{"files_changed":2,"insertions":63,"deletions":0,"files":["docgen.sh","docs/parsers/universal.md"]}},{"commit":"d09529ac302fbcc156d58cf836f8397c98121a76","message":"changelog update","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]}},{"commit":"553097b5050dc02fbdaeec2e2e138e01bc6811d9","message":"docstring update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/universal.py"]}},{"commit":"49c556857708307f617b2b516f2d281398681b5b","message":"module doc update","stats":{"files_changed":7,"insertions":35,"deletions":15,"files":["README.md","docs/lib.md","docs/readme.md","jc/__init__.py","jc/lib.py","man/jc.1","templates/readme_template"]}},{"commit":"6962b9ee8a52c924dc2de6b79ddeea3636e80fe4","message":"formatting","stats":{"files_changed":2,"insertions":8,"deletions":6,"files":["docs/lib.md","jc/lib.py"]}},{"commit":"b4575a3f780f9aa2751c8b4789f67aaca32dd1cb","message":"add lib docs","stats":{"files_changed":3,"insertions":91,"deletions":1,"files":["docgen.sh","docs/lib.md","jc/lib.py"]}},{"commit":"35b54d235d73b2ce658223be3d6095906f142d89","message":"add python package doc info","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["README.md","templates/readme_template"]}},{"commit":"583a5757e454a4e36b331057d1266279b55ee16a","message":"formatting","stats":{"files_changed":18,"insertions":34,"deletions":30,"files":["docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/file.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/traceroute.md","docs/parsers/ufw_appinfo.md","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/file.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/traceroute.py","jc/parsers/ufw_appinfo.py"]}},{"commit":"f355333eeed3c4afba844dc7bed5224356552adc","message":"formatting","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"4d7df109604e4f8367904968602acfc05217a7fe","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"66b2c28f4bc75fb76800f9fb7ea485eee194a9a2","message":"formatting","stats":{"files_changed":2,"insertions":24,"deletions":24,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"299a9c6d88fdf1fede447b4057d8f4263daef733","message":"formatting","stats":{"files_changed":2,"insertions":25,"deletions":57,"files":["docs/parsers/csv.md","docs/readme.md"]}},{"commit":"bd391d979ce98b126dab0f012a56b3fcb1f73439","message":"add lib function docs","stats":{"files_changed":1,"insertions":23,"deletions":55,"files":["jc/__init__.py"]}},{"commit":"7309bd2282445f6daef0b1491ff60b8104500abb","message":"add get_help","stats":{"files_changed":3,"insertions":19,"deletions":10,"files":["jc/lib.py","jc/parsers/csv.py","jc/parsers/universal.py"]}},{"commit":"ce84c09d3394b598f19a3e012ef27ce4154e3b3b","message":"add get_help()","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/__init__.py"]}},{"commit":"b4fffbb6476daf78fbdf19dbf31bbeeab950d2dc","message":"formatting","stats":{"files_changed":46,"insertions":501,"deletions":304,"files":["docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/history.md","docs/parsers/ini.md","docs/parsers/iostat_s.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsusb.md","docs/parsers/netstat.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/ps.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/upower.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/who.md"]}},{"commit":"3701b4198aad1826ad6da571fbcaa530b057cc48","message":"formatting","stats":{"files_changed":86,"insertions":710,"deletions":606,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]}},{"commit":"d4c34098fa7ad2098076f0fa0564467e5d06f916","message":"formatting","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/lib.py"]}},{"commit":"b3c531193b3fc53697e7d7823576f481f9462d53","message":"formatting","stats":{"files_changed":3,"insertions":125,"deletions":71,"files":["CHANGELOG","docs/utils.md","jc/utils.py"]}},{"commit":"1d0e07c77bab5c48405323e52873c7952dd0a587","message":"formatting","stats":{"files_changed":3,"insertions":57,"deletions":55,"files":["docs/readme.md","jc/__init__.py","jc/lib.py"]}},{"commit":"06a322cf9c7468dc7e8ba05914e1d07bbc51f63a","message":"rename tests and add conversion function tests","stats":{"files_changed":1,"insertions":14,"deletions":8,"files":["tests/test_lib.py"]}},{"commit":"623d148712f93eacf9b7b5803140603f0af67acb","message":"doc update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]}},{"commit":"647e83d0439a0937db14a2cc97929e38a6b6a43b","message":"add test to ensure there are zero plugin parsers installed during tests","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["tests/test_lib.py"]}},{"commit":"91a554464444da0cc3ed3b4d212539232411f6cc","message":"doc update","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/lib.py"]}},{"commit":"a1190998aef1bf403ee34c38c1a0fbd6291ac38b","message":"add jc and jc.lib tests","stats":{"files_changed":2,"insertions":82,"deletions":0,"files":["tests/test_jc.py","tests/test_lib.py"]}},{"commit":"097d7a1850f6f6df73a5761c657b73ef9dbd3e29","message":"simplify __init__","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/__init__.py"]}},{"commit":"302bf72e720b3a67fbf1300eaff4f99fc343abeb","message":"Update high-level API docs","stats":{"files_changed":138,"insertions":718,"deletions":6,"files":["docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py"]}},{"commit":"2c42baf3a4dd6733c078f31a1becd708a05f2c36","message":"add new high-level api info","stats":{"files_changed":34,"insertions":174,"deletions":0,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py"]}},{"commit":"03feb89c84096c0ea1d6ae3a0634ae7b8b507e8f","message":"add module list info","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"9dd553192fbca3037b3afe5df6bae88f7a8a9365","message":"doc update","stats":{"files_changed":5,"insertions":29,"deletions":12,"files":["CHANGELOG","README.md","docs/readme.md","man/jc.1","templates/readme_template"]}},{"commit":"fa3f02e9d1ac7867e3465c2d214f4e4229ff4c66","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"0a9dde58c5235f78c4c9ae9c013f7454482c6067","message":"add jc.parse() high-level API","stats":{"files_changed":3,"insertions":228,"deletions":134,"files":["jc/__init__.py","jc/cli.py","jc/lib.py"]}},{"commit":"70cb4453bebb235130e2c287633ecb1de6c2b0aa","message":"Merge pull request #195 from kellyjonbrazil/dev"},{"commit":"830674cc6f19e107347a743baff7bbaab7f80b75","message":"version bump","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["CHANGELOG","jc/__init__.py","man/jc.1","setup.py"]}},{"commit":"fb406b58a12fdfe81bcff76671661af77e7f2fe5","message":"formatting","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["docs/parsers/stat_s.md","jc/parsers/stat_s.py","man/jc.1"]}},{"commit":"55b272e41259ddc835cf4eb513fb67e7b2cf1573","message":"tighten stat data detection","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat_s.py"]}},{"commit":"94f62a9bf36242310790a0f37c66b2e6c6fdc078","message":"formatting","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/stat_s.md","jc/parsers/stat_s.py"]}},{"commit":"8d19e4cb7b45e3b6cb8c404c959949b7593c9386","message":"doc update","stats":{"files_changed":4,"insertions":115,"deletions":1,"files":["CHANGELOG","README.md","docs/parsers/stat_s.md","man/jc.1"]}},{"commit":"7e510d48e0f8426a67cf8d70d06d0331c274d358","message":"simplify non-stat parse error logic","stats":{"files_changed":7,"insertions":106,"deletions":2,"files":["jc/parsers/stat_s.py","tests/fixtures/centos-7.7/stat-streaming.json","tests/fixtures/freebsd12/stat-streaming.json",".../stat-filename-with-spaces-streaming.json","tests/fixtures/osx-10.14.6/stat-streaming.json","tests/fixtures/ubuntu-18.04/stat-streaming.json","tests/test_stat_s.py"]}},{"commit":"7b20cffb143447f4497bc4e895eac2426e8a519f","message":"simplify last item logic","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/stat_s.py"]}},{"commit":"5c934c43c13b69183561da8a77280feb3363e950","message":"add continue to simplify logic","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/stat_s.py"]}},{"commit":"8609298449e997ba4804d818f4fc23cb393ded7d","message":"update docstring","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/parsers/stat_s.py"]}},{"commit":"72cb0dc10b2dac486d3e2a52cf44baf0d7496034","message":"fixup for first and last items","stats":{"files_changed":1,"insertions":14,"deletions":10,"files":["jc/parsers/stat_s.py"]}},{"commit":"7b22fa81ded0f6f59e250ffea63c5d2a0f928b25","message":"raise for non-stat data","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/parsers/stat_s.py"]}},{"commit":"0b6a1307790e0793917bc2781e4873aa9dd67225","message":"ignore blank lines","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/stat_s.py"]}},{"commit":"fdcf4338e0f099699f8d48df6382be1cc97dba84","message":"add examples to docstring","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["jc/parsers/stat_s.py"]}},{"commit":"ee43037f481286a34a766390568965fdd53af132","message":"remove unused continue lines","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/stat_s.py"]}},{"commit":"26e365563c314e694915c7a3feae490ea99a112c","message":"add schema and _process logic","stats":{"files_changed":1,"insertions":50,"deletions":11,"files":["jc/parsers/stat_s.py"]}},{"commit":"1b39586bb1b62aee8ae709512c2e3f79cefdb3d9","message":"add stat streaming parser","stats":{"files_changed":2,"insertions":227,"deletions":0,"files":["jc/cli.py","jc/parsers/stat_s.py"]}},{"commit":"8bb3a6bea34d60d49039f1ed72fd7e413edc05da","message":"Merge pull request #194 from kellyjonbrazil/master"},{"commit":"e6900e2000bf265dfcfc09ffbfda39e9238661af","message":"add jar-manifest","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["EXAMPLES.md"]}},{"commit":"0ee244756bf39123e4873eb231156edbe7f0e0ec","message":"spelling","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/jar_manifest.md","jc/parsers/jar_manifest.py"]}},{"commit":"6d5ac9abe6712e01887ce0d96c278a568319f405","message":"update docs","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["docs/parsers/csv.md","docs/parsers/csv_s.md","man/jc.1"]}},{"commit":"44f6d9e1321459be8196aeebf6db088cc5120e61","message":"changelog update","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]}},{"commit":"360154559c5dee6affa55bbdd5d2f473248b9168","message":"Merge pull request #193 from kellyjonbrazil/dev"},{"commit":"78672bd7ad66c418e0ecf31add73f887b0946d29","message":"Merge pull request #190 from shaikustin/csv-doubleqouted"},{"commit":"65d96e26b59e231c77c1dbba1dc91708c33de30c","message":"add streaming tests","stats":{"files_changed":2,"insertions":13,"deletions":0,"files":["tests/fixtures/generic/csv-doubleqouted-streaming.json","tests/test_csv_s.py"]}},{"commit":"241d53af9a5c9bba70e28835e22c52c0060269ba","message":"Merge pull request #192 from kellyjonbrazil/dev"},{"commit":"5563829df2849a899df2e9211d6c92bddc695f9b","message":"make dialect sniff behavior match non-streaming parser","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/csv_s.py"]}},{"commit":"3a4a27e1f94ee07352c7616c57ec655c1aea04f6","message":"version bump","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/csv.py"]}},{"commit":"9c887a36a804d817c3f669a55b9b1566d09d645d","message":"update csv_s parser with csv changes","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/csv_s.py"]}},{"commit":"bc7973af36e13006230b5faa9e201e300d468912","message":"update copyright","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","jc/cli.py","man/jc.1"]}},{"commit":"32972d8fdbdc71923978fd5c2a87fd6cfa4b7f8e","message":"doc update","stats":{"files_changed":7,"insertions":122,"deletions":9,"files":["CHANGELOG","README.md","docs/parsers/jar_manifest.md","jc/__init__.py","jc/parsers/jar_manifest.py","man/jc.1","setup.py"]}},{"commit":"b128d9109cbdb1176f2473d450023bb0be02531b","message":"add MANIFEST.MF tests","stats":{"files_changed":1,"insertions":46,"deletions":0,"files":["tests/test_jar_manifest.py"]}},{"commit":"929d7273a422c2bd5b83e5e19d32630f1a027f75","message":"doc updates","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/jar_manifest.py"]}},{"commit":"2a40f842743a8745d651b4b6cae645045e6c6aab","message":"fix doubleqoute in csv","stats":{"files_changed":4,"insertions":22,"deletions":1,"files":["jc/parsers/csv.py","tests/fixtures/generic/csv-doubleqouted.csv","tests/fixtures/generic/csv-doubleqouted.json","tests/test_csv.py"]}},{"commit":"9ff6fa818f0857321e4b3b089d288997f2ae27af","message":"add jar-manifest","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]}},{"commit":"dac73a4bfe24e36474fdf6ff60c23e784ca409bd","message":"Merge pull request #189 from kellyjonbrazil/master"},{"commit":"d7895547f74744e82317eabe4c870115701872be","message":"Merge pull request #188 from listuser/new_branch"},{"commit":"b7d439cb870e443e4f4e4a2137ab170835e77eff","message":"Renamed jar-manifest.py to jar_manifest.py, added multi manifest outputs to tests...","stats":{"files_changed":3,"insertions":2220,"deletions":9,"files":["jc/parsers/{jar-manifest.py => jar_manifest.py}","tests/fixtures/rhel-8/MANIFEST.MF.MULTI.json","tests/fixtures/rhel-8/MANIFEST.MF.MULTI.out"]}},{"commit":"7cc903a5f5ca368be97babadc72689375567a901","message":"Removed inflating from examples in jar-manifest.py","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/jar-manifest.py"]}},{"commit":"c495a8291bd3e1fd070ee2e018b9b550f9c86314","message":"Updated test output in MANIFEST.MF.json","stats":{"files_changed":1,"insertions":1,"deletions":292,"files":["tests/fixtures/rhel-8/MANIFEST.MF.json"]}},{"commit":"5e1d7d777c627fb17feda6e51d9640bbd0f03302","message":"Renamed metamf.py to jar-manifest.py, plus other changes","stats":{"files_changed":8,"insertions":304,"deletions":2544,"files":["jc/parsers/{metamf.py => jar-manifest.py}","tests/fixtures/rhel-8/MANIFEST.MF.json",".../rhel-8/{MANIFEST.MF => MANIFEST.MF.out}",".../rhel-8/cmds_used_to_generate_test_data.txt",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out"]}},{"commit":"7edad3f676fe5560017ca9cb05ede6f46787e78f","message":"Create key value pairs from a MANIFEST.MF file, to include key multiline value pairs.","stats":{"files_changed":8,"insertions":3042,"deletions":0,"files":["jc/parsers/metamf.py","tests/fixtures/rhel-8/MANIFEST.MF","tests/fixtures/rhel-8/MANIFEST.MF.json",".../rhel-8/cmds_used_to_generate_test_data.txt",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out"]}},{"commit":"f7331001d4ab976e311458a16b6e5337da2e3aab","message":"use github releases instead of packaging site","stats":{"files_changed":3,"insertions":9,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"]}},{"commit":"f8e09ae2ffe185d21305d566fad20f510df9890f","message":"Merge pull request #187 from kellyjonbrazil/master"},{"commit":"433c7cc0f05e321ffe024845a908f3e856d4cd2b","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/zipinfo.md","jc/parsers/zipinfo.py"]}},{"commit":"d753e71a7452310d45fa605a2e4c70320ed60dbb","message":"Merge pull request #186 from kellyjonbrazil/dev"},{"commit":"2e4f5a508b6c90f9e03dcbcf64efc0e2fc446666","message":"version bump","stats":{"files_changed":4,"insertions":6,"deletions":3,"files":["CHANGELOG","jc/__init__.py","man/jc.1","setup.py"]}},{"commit":"88b960eff6cb3739d0d243c8d8b3e8ad5b8eb97c","message":"doc update","stats":{"files_changed":4,"insertions":144,"deletions":1,"files":["EXAMPLES.md","README.md","docs/parsers/zipinfo.md","man/jc.1"]}},{"commit":"88c77bd89e2c2a5f023e6638816c9153b6276d35","message":"add zipinfo tests","stats":{"files_changed":2,"insertions":47,"deletions":0,"files":["tests/fixtures/osx-10.14.6/zipinfo-multi.json","tests/test_zipinfo.py"]}},{"commit":"51a7a4251fff518d8da78ffa41e7ba2e2cb47f12","message":"add multi-archive test output","stats":{"files_changed":1,"insertions":24,"deletions":0,"files":["tests/fixtures/osx-10.14.6/zipinfo-multi.out"]}},{"commit":"51d2f316f388d962c26aeb4f42affebec339e5a2","message":"add multi-archive support","stats":{"files_changed":1,"insertions":97,"deletions":72,"files":["jc/parsers/zipinfo.py"]}},{"commit":"ff78a46c4854339a097992701351ef471aff1671","message":"add zipinfo parser","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]}},{"commit":"ed4a9dc1d470f64bcc9de35b2d98568ffd50257d","message":"formatting","stats":{"files_changed":1,"insertions":21,"deletions":23,"files":["jc/parsers/zipinfo.py"]}},{"commit":"63182dba26040974cb8cada6f5910bb29b1fa3ed","message":"Merge pull request #185 from listuser/new_branch"},{"commit":"9c1eaa938934269fe4179da798acf5f119cde0cf","message":"revised zipinfo.py nested version","stats":{"files_changed":2,"insertions":68,"deletions":61,"files":["jc/parsers/zipinfo.py","tests/fixtures/rhel-8/zipinfo.json"]}},{"commit":"bc520fcbcdfad6a53e51944391fd24512bed8128","message":"added zipinfo.py nested version","stats":{"files_changed":2,"insertions":63,"deletions":53,"files":["jc/parsers/zipinfo.py","tests/fixtures/rhel-8/zipinfo.json"]}},{"commit":"46faac1a12a5b39d6a25427f6e8fdcca1204dbcd","message":"add test data zipinfo.json and zipinfo.out","stats":{"files_changed":2,"insertions":1222,"deletions":0,"files":["tests/fixtures/rhel-8/zipinfo.json","tests/fixtures/rhel-8/zipinfo.out"]}},{"commit":"3c424c0cb3cff462a963183585b57bea004e974f","message":"initial commit zipinfo.py to new_branch","stats":{"files_changed":1,"insertions":165,"deletions":0,"files":["jc/parsers/zipinfo.py"]}},{"commit":"3ac8d0362b4fb9999fc55a60a9cb20ac80d114f7","message":"use quotes around python versions","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]}},{"commit":"d88b998e6c7826a9ecae18663328e2d2915030fe","message":"formatting","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"]}},{"commit":"a9ed55c00652a563391a7930c7a4649967131ae1","message":"fix spelling","stats":{"files_changed":11,"insertions":11,"deletions":11,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]}},{"commit":"ea614341232e5272ee0c7fd46ba0f313033c761f","message":"fix schema docs","stats":{"files_changed":4,"insertions":16,"deletions":8,"files":["docs/parsers/crontab.md","docs/parsers/crontab_u.md","jc/parsers/crontab.py","jc/parsers/crontab_u.py"]}},{"commit":"a73d0d26cbe2860b8374661068e09e0717a3bab2","message":"Merge pull request #184 from kellyjonbrazil/dev"},{"commit":"b4506976e3c865397bc657183d49c484d8bcfd7a","message":"formatting","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["man/jc.1","templates/manpage_template"]}},{"commit":"34cb75a09697a06c3878f2f9a84eb3bd2a90ae62","message":"version bump","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/__init__.py","setup.py"]}},{"commit":"34df643f60712ae25645cb7cddff80e43c12262b","message":"add disable colors section","stats":{"files_changed":4,"insertions":18,"deletions":0,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"]}},{"commit":"ac7c13fcc013d386f34db51d634298fa3e97eccd","message":"add -C option to docs","stats":{"files_changed":4,"insertions":11,"deletions":1,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"]}},{"commit":"4fdb34c7d5fcaa65e2ccab814c3acf2f0f70c442","message":"add no-color.org","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]}},{"commit":"7ac468e35aac1a63c4e22f33aead74a6e41a22a6","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]}},{"commit":"df190aa299f1669d1fe09380026ae086839abc02","message":"add -C option to force color even with pipes","stats":{"files_changed":1,"insertions":15,"deletions":7,"files":["jc/cli.py"]}},{"commit":"9621475e86fe20fcdc2902b6ce7860a833ae2ca0","message":"changelog update","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["CHANGELOG"]}},{"commit":"82e0160de820ad2ed6143f58458711d600b929a3","message":"refactor NO_COLOR test","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"d03fb8b626a97e81006d0b108c8f400fe4e2ce3b","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"b300dfb3d75fe76e2ddbb087ff742dd0b5e6155b","message":"Add support for NO_COLOR env variable","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"a7de9111d97e687cafbc0709ec3ff7453d658a80","message":"Merge pull request #183 from kellyjonbrazil/dev"},{"commit":"7933dfdbe7bf400833d6f6b771362dfc518b9a8d","message":"Merge branch 'master' into dev"},{"commit":"f7cb5f7d01ac01538bee4da816408072b585768e","message":"update date","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]}},{"commit":"a26a298f1a3c141171e7d7ce459a27a297cec031","message":"doc update","stats":{"files_changed":4,"insertions":148,"deletions":1,"files":["README.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","man/jc.1"]}},{"commit":"dbd134d0dac2fc152183480958fd9e65919ac98d","message":"add examples to docs","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/iostat_s.py"]}},{"commit":"11aa01b0d9d6913059f98f9bd7591d7cad9037cf","message":"iostat-s tests","stats":{"files_changed":15,"insertions":15,"deletions":1,"files":["jc/parsers/iostat_s.py","tests/fixtures/centos-7.7/iostat-1-streaming.json","tests/fixtures/centos-7.7/iostat-m-streaming.json","tests/fixtures/centos-7.7/iostat-mx-streaming.json","tests/fixtures/centos-7.7/iostat-streaming.json","tests/fixtures/centos-7.7/iostat-x-streaming.json","tests/fixtures/ubuntu-18.04/iostat-1-streaming.json","tests/fixtures/ubuntu-18.04/iostat-m-streaming.json","tests/fixtures/ubuntu-18.04/iostat-mx-streaming.json","tests/fixtures/ubuntu-18.04/iostat-streaming.json","tests/fixtures/ubuntu-18.04/iostat-x-streaming.json","tests/fixtures/ubuntu-20.10/iostat-m-streaming.json","tests/fixtures/ubuntu-20.10/iostat-mx-streaming.json","tests/fixtures/ubuntu-20.10/iostat-streaming.json","tests/fixtures/ubuntu-20.10/iostat-x-streaming.json"]}},{"commit":"6f18e5344356684e845ec63158c570d82156254f","message":"fix for null lines","stats":{"files_changed":1,"insertions":203,"deletions":0,"files":["tests/test_iostat_s.py"]}},{"commit":"7b467c466568ad4e7986d4d7cf3ec606681b6d46","message":"add ubuntu 20.10 tests","stats":{"files_changed":9,"insertions":137,"deletions":0,"files":["tests/fixtures/ubuntu-20.10/iostat-m.json","tests/fixtures/ubuntu-20.10/iostat-m.out","tests/fixtures/ubuntu-20.10/iostat-mx.json","tests/fixtures/ubuntu-20.10/iostat-mx.out","tests/fixtures/ubuntu-20.10/iostat-x.json","tests/fixtures/ubuntu-20.10/iostat-x.out","tests/fixtures/ubuntu-20.10/iostat.json","tests/fixtures/ubuntu-20.10/iostat.out","tests/test_iostat.py"]}},{"commit":"537b8f263087894c02b5b7c121765cf96182a370","message":"add more int conversions","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"]}},{"commit":"4d823575e791999e200dedd491511c4fde64fc2e","message":"add more float fields","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"]}},{"commit":"541aa1d09f20ff6979eabaa66790decb3895f18d","message":"Add new field float conversions for iostat v11","stats":{"files_changed":2,"insertions":68,"deletions":8,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"]}},{"commit":"8f02021014b7b19acf1a8bbd777161aa82c65d66","message":"formatting","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/iostat_s.py"]}},{"commit":"158a15157c7e5dde95dc21766d0696bd82486688","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]}},{"commit":"2752e0d66a9ba0b57ac86913fd302ada23c280c0","message":"add iostat streaming parser","stats":{"files_changed":2,"insertions":166,"deletions":0,"files":["jc/cli.py","jc/parsers/iostat_s.py"]}},{"commit":"6c11e912afe3c4d16da9199b5c2fc10461928ac3","message":"update changelog","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]}},{"commit":"43d34461e27e3e4ac5f985786831c170b348c7c5","message":"update docs","stats":{"files_changed":83,"insertions":279,"deletions":81,"files":["README.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/utils.md","man/jc.1"]}},{"commit":"4dfdc9b0f65d8c950ed74545d0cc3f95c8abec6c","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"e2311cbb03f407414df953c8d1c07d0cf1a549ca","message":"add iostat tests","stats":{"files_changed":21,"insertions":400,"deletions":0,"files":["tests/fixtures/centos-7.7/iostat-1.json","tests/fixtures/centos-7.7/iostat-1.out","tests/fixtures/centos-7.7/iostat-m.json","tests/fixtures/centos-7.7/iostat-m.out","tests/fixtures/centos-7.7/iostat-mx.json","tests/fixtures/centos-7.7/iostat-mx.out","tests/fixtures/centos-7.7/iostat-x.json","tests/fixtures/centos-7.7/iostat-x.out","tests/fixtures/centos-7.7/iostat.json","tests/fixtures/centos-7.7/iostat.out","tests/fixtures/ubuntu-18.04/iostat-1.json","tests/fixtures/ubuntu-18.04/iostat-1.out","tests/fixtures/ubuntu-18.04/iostat-m.json","tests/fixtures/ubuntu-18.04/iostat-m.out","tests/fixtures/ubuntu-18.04/iostat-mx.json","tests/fixtures/ubuntu-18.04/iostat-mx.out","tests/fixtures/ubuntu-18.04/iostat-x.json","tests/fixtures/ubuntu-18.04/iostat-x.out","tests/fixtures/ubuntu-18.04/iostat.json","tests/fixtures/ubuntu-18.04/iostat.out","tests/test_iostat.py"]}},{"commit":"bf15575e90985cfec5c57dd11dfa2b86d53a41be","message":"fixes for ubunut","stats":{"files_changed":1,"insertions":14,"deletions":7,"files":["jc/parsers/iostat.py"]}},{"commit":"406336c7185b539b5e00532b58146d5b1b73f259","message":"add iostat example","stats":{"files_changed":1,"insertions":44,"deletions":0,"files":["EXAMPLES.md"]}},{"commit":"6665ffaeb8107e9db3b917db0663beaf44024533","message":"remove python 3.6 from tests","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]}},{"commit":"dcf552ca0c69aa5f0309a83dc33dee7c5ed81292","message":"add _process and cleanup","stats":{"files_changed":1,"insertions":138,"deletions":47,"files":["jc/parsers/iostat.py"]}},{"commit":"7a6ebf3c9555dd82df7dc0b71981cdd32ce0061d","message":"add iostat parser","stats":{"files_changed":2,"insertions":171,"deletions":0,"files":["jc/cli.py","jc/parsers/iostat.py"]}},{"commit":"d2dc4a983c86c538e13e568b908072de4ca0daaf","message":"changelog update","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"]}},{"commit":"1168259bc23862f671326d41f5282a3575205214","message":"add doc strings","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"]}},{"commit":"e8e4b46021557fbf5776c32dff46de022817fb6b","message":"use jc.utils type checks","stats":{"files_changed":5,"insertions":14,"deletions":19,"files":["jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]}},{"commit":"12d2de22821fd8f57f4d412e62f53db3d89d5e30","message":"use jc.utils.input_type_check() and simplify compatibility check","stats":{"files_changed":77,"insertions":181,"deletions":165,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/utils.py"]}},{"commit":"0e2fe401e1c49a9f947d7d17b72cfc4e90787f47","message":"version bump","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]}},{"commit":"14247adb0ae007924ca551a706eb0cfdbae97a41","message":"add input type checks","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["jc/parsers/csv_s.py","tests/test_csv_s.py"]}},{"commit":"3a9f0934c41c85ea7fa87165b9559f08814645cd","message":"add input type checks","stats":{"files_changed":2,"insertions":5,"deletions":3,"files":["jc/parsers/ls_s.py","tests/test_ls_s.py"]}},{"commit":"caf0a5c8713bf0d72951a2c6fd5a2c62c9eb59d3","message":"add input type checking","stats":{"files_changed":2,"insertions":7,"deletions":4,"files":["jc/parsers/vmstat_s.py","tests/test_vmstat_s.py"]}},{"commit":"cfb58b1cf3e3028f8e03fdd93f0165cf8d230e1e","message":"add input type checks","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/parsers/foo_s.py"]}},{"commit":"975cf195cc02774f50460ca479d9ebb7b73c7870","message":"formatting","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping_s.py"]}},{"commit":"8a46a259a36efc55bb0b2141acb9dd5ae52b7725","message":"add input type checks","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["jc/parsers/ping_s.py","tests/test_ping_s.py"]}},{"commit":"e395142e599aa78b4a7ec80dcc3f8ccf279f97b1","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"]}},{"commit":"caaeaf0d67cf44f8d2651cc53a7528d3ef0c74d3","message":"add 'str' type check on input","stats":{"files_changed":76,"insertions":227,"deletions":227,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]}},{"commit":"21e69a7cbf62240238f6fb78e874dda6ce2e922a","message":"ignore _config.yml","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"]}},{"commit":"603964935b58e02cf0614cf67ffacc6d94755e05","message":"remove trailing whitespace","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CHANGELOG"]}},{"commit":"47eb83ae55b9892716fff712bd2be21b6191b552","message":"add .vscode","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"]}},{"commit":"fc0ce6c95923ab124961e695a26c0b68dd0f359f","message":"add streaming parser to custom parsers info","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]}},{"commit":"077a29fb4eedcfccb026498c5c3a64b7b7601363","message":"add _jc_meta field info","stats":{"files_changed":2,"insertions":14,"deletions":2,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"]}},{"commit":"8568d0d328706a7a5b1476452e078d8cbe7b7391","message":"fix csv_s documentation","stats":{"files_changed":3,"insertions":7,"deletions":3,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py","man/jc.1"]}},{"commit":"597d39c28ea0c0fe3b072413e9d91ab5e27b62bd","message":"Merge pull request #180 from kellyjonbrazil/dev"},{"commit":"eb888dcbbcf83c9197bd59aab72f65ea6eb622ba","message":"version bump","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["jc/__init__.py","man/jc.1","setup.py"]}},{"commit":"d1b9ac0841b15ee15690c4066453a322618320ed","message":"doc update","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/df.md","docs/parsers/netstat.md","docs/parsers/ping.md","man/jc.1"]}},{"commit":"89a6d9c5c39b74f1b040f410659bfd7ae1a902d1","message":"add key-check to restore previous behavior even with non-df data","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/df.py"]}},{"commit":"85d983761637129cb85abfb0bbdde7c507061cd2","message":"add df info","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]}},{"commit":"cd7731484d826d84d835ecd460d746e78cadc5fc","message":"fix for cases where the Filesystem data overflows the column length (happens on older versions of df)","stats":{"files_changed":4,"insertions":62,"deletions":2,"files":["jc/parsers/df.py","tests/fixtures/generic/df-long-filesystem.json","tests/fixtures/generic/df-long-filesystem.out","tests/test_df.py"]}},{"commit":"086da16b1743c16a5ccdd102f889fb31f99e3caa","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"]}},{"commit":"20830528f04a5ecbe78420d8008249b089667767","message":"add test for older netstat version fix","stats":{"files_changed":4,"insertions":28,"deletions":0,"files":["CHANGELOG","tests/fixtures/generic/netstat-old.json","tests/fixtures/generic/netstat-old.out","tests/test_netstat.py"]}},{"commit":"83371edd8fe3d23dfa92fc707604086522c85ab9","message":"add space before inode to compensate for removed dash","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat_linux.py"]}},{"commit":"364a81decc16742e3caa070d90b1d605d96fe2c1","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ping.py"]}},{"commit":"ef09592ad3e5c9a77c1bdebe8f876fc4dde54834","message":"update for 1.17.2","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["CHANGELOG"]}},{"commit":"4a86e109ccb254d5195b782f84f3967c96ef726c","message":"Merge pull request #179 from shaikustin/ping-alpine-linux"},{"commit":"7fa5391b6613e62689c624041e03f9750c9c7972","message":"change alpine ping6 to ping","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_ping.py"]}},{"commit":"9b53ba5714819ff760f2d4546f5d2ee4d521c080","message":"support alpine linux ping","stats":{"files_changed":6,"insertions":45,"deletions":1,"files":["jc/parsers/ping.py",".../fixtures/alpine-linux-3.13/ping-hostname.json","tests/fixtures/alpine-linux-3.13/ping-hostname.out","tests/fixtures/alpine-linux-3.13/ping-ip.json","tests/fixtures/alpine-linux-3.13/ping-ip.out","tests/test_ping.py"]}},{"commit":"b59e38cfd2c8a7f5868e05d5562557b1c27e5e56","message":"Merge pull request #176 from kellyjonbrazil/dev"},{"commit":"5ba22dae597b9d154ca0a82f71cfbd8d8a6325db","message":"add JSON lines info","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"]}},{"commit":"4232e523acc523e510b4881d2a57a95b88ec8c8b","message":"Merge branch 'master' into dev"},{"commit":"bee80b35d2b8c15e6233f2798e9c02a11e9e1e9e","message":"update for version bump","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["CHANGELOG","docs/parsers/csv_s.md","man/jc.1"]}},{"commit":"c32395f6950d6294770ee93e8bf4d79c7d275ac3","message":"linting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_utils.py"]}},{"commit":"735c5e1078cc27b5cba03b8ebbae15aeca6b8fbd","message":"update comments for ParseError test: https://bugs.python.org/issue45617","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["tests/test_csv_s.py"]}},{"commit":"d09c94b292ca3beec92a00f8a51b7259dd30a1e5","message":"add python 3.10 testing info","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]}},{"commit":"4d04866f48f72b9ea0d213dc1533729d3b68a503","message":"add python bug https://bugs.python.org/issue45617 info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/csv_s.py"]}},{"commit":"a2d90f4dfcdc2cb00c6c0fa957493c95a21e256b","message":"force test","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_csv_s.py"]}},{"commit":"93a5002c8b530bd6f5f81e5d8595cde1f836ae41","message":"fix 3.10.0 version number","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]}},{"commit":"23bf5227a4c39ea017e55fc21150331e1af6fdb7","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"77c96fa2a96148221bde7d2274e0dfb5386a166f","message":"try tests on python 3.10","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["tests/test_csv_s.py"]}},{"commit":"3f5a1f015e9c0807e227b9f7300592e25502e014","message":"add python 3.10","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]}},{"commit":"b280c4fc18e60a85ab212b09aa5bf3a05a0eceff","message":"add ParseError test to streaming csv parser","stats":{"files_changed":2,"insertions":11,"deletions":19,"files":[".../fixtures/generic/csv-insurance-streaming.json","tests/test_csv_s.py"]}},{"commit":"3ab9b43a2eebf535be98c94810ac474bf32ec515","message":"raise ParseError on newline bug","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/csv_s.py"]}},{"commit":"46f568414a5c8d2f135486e86d0ada48cfcefeb0","message":"change streaming parser test names","stats":{"files_changed":3,"insertions":96,"deletions":89,"files":["tests/test_ls_s.py","tests/test_ping_s.py","tests/test_vmstat_s.py"]}},{"commit":"cba2fd299fff09a551b780e064a6e22bdf7e539a","message":"add tests","stats":{"files_changed":9,"insertions":75,"deletions":61,"files":[".../generic/csv-10k-sales-records-streaming.json","tests/fixtures/generic/csv-deniro-streaming.json","tests/fixtures/generic/csv-example-streaming.json","tests/fixtures/generic/csv-flyrna-streaming.json","tests/fixtures/generic/csv-flyrna2-streaming.json",".../fixtures/generic/csv-homes-pipe-streaming.json","tests/fixtures/generic/csv-homes-streaming.json",".../fixtures/generic/csv-insurance-streaming.json","tests/test_csv_s.py"]}},{"commit":"1e6e44f656f1bbb277eb38fb485f7b48e3b9e40b","message":"fix for piping data with non-platform newlines (e.g. windows csv files on unix)","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/csv_s.py"]}},{"commit":"acac0399946d9781193e9350dd7109f1dd3999fe","message":"working tests","stats":{"files_changed":3,"insertions":149,"deletions":0,"files":["tests/fixtures/generic/csv-biostats-streaming.json","tests/fixtures/generic/csv-cities-streaming.json","tests/test_csv_s.py"]}},{"commit":"50a3b340164b3139f04f67a2bee16e5343c8a2da","message":"optimizations and use iter() so we can exhaust data coming from list objects","stats":{"files_changed":1,"insertions":5,"deletions":8,"files":["jc/parsers/csv_s.py"]}},{"commit":"b45396070cf28fa36ecb44acd7be3e3bb81a712d","message":"update comment","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_vmstat_s.py"]}},{"commit":"218b9aec8ac397e26e6cd4ff407f3d10ef88ea9b","message":"doc update for streaming CSV parser","stats":{"files_changed":4,"insertions":87,"deletions":48,"files":["README.md","docs/parsers/csv_s.md","jc/parsers/csv_s.py","man/jc.1"]}},{"commit":"2b887debc647bd533040e392465967d12869cb02","message":"add csv streaming parser","stats":{"files_changed":4,"insertions":10172,"deletions":1,"files":["CHANGELOG","jc/cli.py","jc/parsers/csv_s.py","tests/fixtures/generic/csv-10k-sales-records.csv"]}},{"commit":"0313e3f8ca0e22e1575192d765d5afedf48e94df","message":"linting","stats":{"files_changed":1,"insertions":9,"deletions":6,"files":["jc/parsers/lsusb.py"]}},{"commit":"1669e6e20c3af3d28968558b76d0901a56775ac0","message":"linting","stats":{"files_changed":1,"insertions":23,"deletions":28,"files":["jc/parsers/lsusb.py"]}},{"commit":"ef6de75dda90c7221d53e0e0a942f0cac2247354","message":"add vmstat timestamp tests to utils","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["tests/test_utils.py"]}},{"commit":"a6bcec425a3f44ba3c7cd06b5ebaf522b66df109","message":"comment update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"]}},{"commit":"596ad9a64d002ced212b08512126e52707fe73d2","message":"update comment","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"]}},{"commit":"7a91c93319f75c37ba6bf268d8270947f0bf8b22","message":"add lsusb","stats":{"files_changed":1,"insertions":122,"deletions":0,"files":["EXAMPLES.md"]}},{"commit":"b5f7b35f89197879a9f13bd8fa5d2a0c77cc059a","message":"comment update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"]}},{"commit":"2f47fb7f14c4ff0e1c835897d94ee81d14590aba","message":"fix ParseError tests","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["tests/test_uname.py"]}},{"commit":"1b214c403657a50689f2a04892ce836dea669a1d","message":"raise ParseError if -t option is detected. add test","stats":{"files_changed":3,"insertions":30,"deletions":0,"files":["jc/parsers/lsusb.py","tests/fixtures/generic/lsusb-t.out","tests/test_lsusb.py"]}},{"commit":"8f94f8acc6bb53bbb19ba150551c7df2183a8863","message":"add tests and update docs","stats":{"files_changed":11,"insertions":384,"deletions":3,"files":["README.md","docs/parsers/file.md","docs/parsers/lsusb.md","docs/parsers/uname.md","man/jc.1","tests/fixtures/centos-7.7/lsusb-v-single.json","tests/fixtures/centos-7.7/lsusb-v.json","tests/fixtures/centos-7.7/lsusb.json","tests/fixtures/generic/lsusb-test-attributes.json","tests/fixtures/generic/lsusb-test-attributes2.json","tests/test_lsusb.py"]}},{"commit":"3a2a69cfa55e2f40d7536d923170a5cfc986998e","message":"formatting","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/parsers/lsusb.py"]}},{"commit":"f599c659881248b79c6dbc86d85a61311c9d3434","message":"add stress test examples","stats":{"files_changed":2,"insertions":464,"deletions":0,"files":["tests/fixtures/generic/lsusb-test-attributes.out","tests/fixtures/generic/lsusb-test-attributes2.out"]}},{"commit":"ad12849fd9fc2177afb30740acc63cf284dc394b","message":"update docs example and","stats":{"files_changed":1,"insertions":138,"deletions":26,"files":["jc/parsers/lsusb.py"]}},{"commit":"f36b3789e8df6673207d6c2d3d0796acfdfe011d","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsusb.py"]}},{"commit":"6d18c0ba61cd188dbff736f1be47b7362c841687","message":"change variable name last_attribute and last_attr to last_item","stats":{"files_changed":1,"insertions":47,"deletions":47,"files":["jc/parsers/lsusb.py"]}},{"commit":"17097abec9567a58b5a5f7bbed11ecfd69cbd28c","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":6,"files":["jc/parsers/lsusb.py"]}},{"commit":"b7ddd3b285f205211394edc70b611171cf72a4c5","message":"change variable names","stats":{"files_changed":1,"insertions":22,"deletions":22,"files":["jc/parsers/lsusb.py"]}},{"commit":"75b23f62c9d7b33907af92964d1a6234332fbc78","message":"working configuration_descriptor and device_descriptor attributes","stats":{"files_changed":1,"insertions":35,"deletions":7,"files":["jc/parsers/lsusb.py"]}},{"commit":"f88967b2a59d79e053554d1e141f71e9d2d87456","message":"add attribute lists up to interface_association","stats":{"files_changed":1,"insertions":126,"deletions":21,"files":["jc/parsers/lsusb.py"]}},{"commit":"ba2846664b35b2e94aa905431c55c029b24a64e3","message":"edpoint_descriptors attributes working","stats":{"files_changed":1,"insertions":22,"deletions":2,"files":["jc/parsers/lsusb.py"]}},{"commit":"10dba37ca2624e05eff246ef49df8ebd3f275d86","message":"hub_descriptor attributes working","stats":{"files_changed":1,"insertions":28,"deletions":1,"files":["jc/parsers/lsusb.py"]}},{"commit":"0e6f938514965503f1d86d56c047f9f8fc03ac65","message":"working hub_port_status section","stats":{"files_changed":1,"insertions":36,"deletions":45,"files":["jc/parsers/lsusb.py"]}},{"commit":"159d87c1126f4d79d5e34837bc2c353a5445803b","message":"add length guard and test for uname with no -a on linux","stats":{"files_changed":3,"insertions":18,"deletions":7,"files":["jc/parsers/uname.py","tests/fixtures/centos-7.7/uname.out","tests/test_uname.py"]}},{"commit":"9e7b1621cf232e9859bdf018737e536820f380a0","message":"device_status working","stats":{"files_changed":1,"insertions":18,"deletions":18,"files":["jc/parsers/lsusb.py"]}},{"commit":"2057817ef8fec85b2a978b682e7fe8bc16def828","message":"add uname tests","stats":{"files_changed":11,"insertions":89,"deletions":0,"files":["tests/fixtures/debian10/uname-a.json","tests/fixtures/debian10/uname-a.out","tests/fixtures/freebsd12/uname-a.json","tests/fixtures/freebsd12/uname-a.out","tests/fixtures/freebsd12/uname-a2.json","tests/fixtures/freebsd12/uname-a2.out","tests/fixtures/generic/uname-a-different-proc.json","tests/fixtures/generic/uname-a-different-proc.out","tests/fixtures/generic/uname-a.json","tests/fixtures/generic/uname-a.out","tests/test_uname.py"]}},{"commit":"a1eabad2d37bb0d0e9407edf7305e223eba67da2","message":"add comments","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/uname.py"]}},{"commit":"92bf2b1ca2a172d3977d6e3c36b5ca1a8c2bab63","message":"simplify fixup logic for uname","stats":{"files_changed":2,"insertions":8,"deletions":20,"files":["CHANGELOG","jc/parsers/uname.py"]}},{"commit":"2b2123a4ba9b77d2089d367fe85dcb5d2857a295","message":"add FreeBSD support","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","jc/parsers/uname.py"]}},{"commit":"908b2f9200ddcce4beb531a3c90908786b6a5b02","message":"add items","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"]}},{"commit":"deff0c7bfdf942b8d7e7bd140219e08bf80a50cb","message":"remove print debug","stats":{"files_changed":1,"insertions":1,"deletions":5,"files":["jc/parsers/uname.py"]}},{"commit":"7cd01efa64029775042a2c145997ce30ef6b4f6b","message":"fixup for cases where the 'process' and/or 'machine' fields are blank on linux","stats":{"files_changed":1,"insertions":25,"deletions":1,"files":["jc/parsers/uname.py"]}},{"commit":"2dbe56456bbea2bdfce7eacbf8b9f10a1b249f55","message":"add nested_dict. start work on hub_port_status and device_status","stats":{"files_changed":1,"insertions":49,"deletions":39,"files":["jc/parsers/lsusb.py"]}},{"commit":"6078a411ef612be8bad012aa404f34ebd74a1fd7","message":"add initial schema doc","stats":{"files_changed":1,"insertions":79,"deletions":4,"files":["jc/parsers/lsusb.py"]}},{"commit":"4a3656562f161a51f5cb6f0e9ccd271859b78d62","message":"del null keys","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["jc/parsers/lsusb.py"]}},{"commit":"ba75989a24839907723ed7c3d7a497473d489a34","message":"update comments","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/lsusb.py"]}},{"commit":"9e9e2c362894f0072ab839565829881d750c8912","message":"move state instantiation before has_data test","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsusb.py"]}},{"commit":"9a2a8c6b61a46a9bfb5a4492b86774a4a78672ab","message":"shorten set_sections","stats":{"files_changed":1,"insertions":20,"deletions":52,"files":["jc/parsers/lsusb.py"]}},{"commit":"dae42ef1619441637672d634f9e5d7ab26115f09","message":"add hub_port_status and device_status","stats":{"files_changed":1,"insertions":18,"deletions":1,"files":["jc/parsers/lsusb.py"]}},{"commit":"931f2cab78bda180443535c04b532d04c6e88dd0","message":"add hub_descriptor","stats":{"files_changed":1,"insertions":14,"deletions":11,"files":["jc/parsers/lsusb.py"]}},{"commit":"72b061bed4453686d264ccf8977cba6c2a4794ec","message":"add endpoint_descriptors","stats":{"files_changed":1,"insertions":32,"deletions":8,"files":["jc/parsers/lsusb.py"]}},{"commit":"29a7c73990d9620b15a4010d17fc9a9a859f44b4","message":"add hid_device_descriptor and report_descriptors","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/parsers/lsusb.py"]}},{"commit":"2d1d68e3007f76d4c34ac07ae822935ab6021e79","message":"simplify populate_lists. Add CDC lists","stats":{"files_changed":1,"insertions":87,"deletions":88,"files":["jc/parsers/lsusb.py"]}},{"commit":"c5c1e170d1f502de5c76e9e481a23b26ffcaf237","message":"interface descriptors working","stats":{"files_changed":1,"insertions":111,"deletions":76,"files":["jc/parsers/lsusb.py"]}},{"commit":"9c1bb66452838e704ef2277f313bb51a42dc03b9","message":"fix remove _state field during schema_populate","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/lsusb.py"]}},{"commit":"a4f3306bae90fbc807fdd9ff2ce71e25d36a663f","message":"initial schema build. need to figure out why deleting _state from output_line causes exceptions","stats":{"files_changed":1,"insertions":69,"deletions":28,"files":["jc/parsers/lsusb.py"]}},{"commit":"1bc638b6ee7a820406ba4b84d3408f7cd4fe779d","message":"add bus_list and add all device_list data to the list","stats":{"files_changed":1,"insertions":36,"deletions":32,"files":["jc/parsers/lsusb.py"]}},{"commit":"9ad0cd9dae8822235c37159541ce72471eb4263e","message":"now storing state within the objects to make building the schema (later) easier.","stats":{"files_changed":1,"insertions":116,"deletions":211,"files":["jc/parsers/lsusb.py"]}},{"commit":"6d4a4691276d8659253b2ac8f8bdbd71a1fece7d","message":"use class for state","stats":{"files_changed":1,"insertions":356,"deletions":333,"files":["jc/parsers/lsusb.py"]}},{"commit":"ed6997e3ff2e575a6d4daa7d7a2cbe7dddacdd4d","message":"add interface_association section","stats":{"files_changed":2,"insertions":170,"deletions":34,"files":["jc/parsers/lsusb.py","tests/fixtures/centos-7.7/lsusb-v-single.out"]}},{"commit":"eb788fca6e25eea1fa8a43b22360c852ecf5af35","message":"somewhat working lsusb parser. needs a lot more TLC","stats":{"files_changed":4,"insertions":919,"deletions":0,"files":["jc/cli.py","jc/parsers/lsusb.py","tests/fixtures/centos-7.7/lsusb-v.out","tests/fixtures/centos-7.7/lsusb.out"]}},{"commit":"9186f5f37739012b8c04c776310a20ef55b1469f","message":"fix file parser for gzip cases (has ': ' in the description, which is the delimiter)","stats":{"files_changed":7,"insertions":99,"deletions":4,"files":["CHANGELOG","jc/__init__.py","jc/parsers/file.py","setup.py","tests/fixtures/osx-10.14.6/file3.json","tests/fixtures/osx-10.14.6/file3.out","tests/test_file.py"]}},{"commit":"30cff5f28140a5b20a617c8145c13e43b7b6685b","message":"add note that the streaming parser outputs JSON Lines","stats":{"files_changed":8,"insertions":17,"deletions":3,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","man/jc.1"]}},{"commit":"b724e0969a0d6b22bed0c77eb8d629381179ea3f","message":"-qq instead of -q","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"]}},{"commit":"a62c49e8715873b068a96da5021ea24a783acd6b","message":"Merge pull request #172 from kellyjonbrazil/master"},{"commit":"9b160f6279bbbf0c15413c98922eef137ba2f3f4","message":"link update","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]}},{"commit":"338a4e2612f70bb3e2af31f61a7db75f647293fe","message":"formatting","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]}},{"commit":"0140688750be61dd752059ee66734ab1c7a8f30e","message":"link updates","stats":{"files_changed":6,"insertions":8,"deletions":4,"files":["README.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","templates/readme_template"]}},{"commit":"73e5ea98c1ca2b9299085e3832791162eca3b9ff","message":"Merge pull request #170 from kellyjonbrazil/dev"},{"commit":"77dcbc544da271edab5de5ad209117e98c846f9c","message":"final doc update","stats":{"files_changed":3,"insertions":2,"deletions":3,"files":["CHANGELOG","jc/__init__.py","man/jc.1"]}},{"commit":"c7bcb0947ae32acc9cdba7a6975d2f2557f10a39","message":"indent subsequent error and warning lines","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"]}},{"commit":"5cd3f7f71d38b560a88dd6057e9c7a94991a3d71","message":"Add example to raise ParseError if there is no output data to yield","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/foo_s.py"]}},{"commit":"5044388ab2e8d7d8b427fd51b0ab875611bd127f","message":"raise if line data is unrecognized","stats":{"files_changed":2,"insertions":6,"deletions":3,"files":["jc/parsers/vmstat_s.py","tests/test_vmstat_s.py"]}},{"commit":"ee075db59819d80e4dcb60ddbd9cfe2fd529dfe9","message":"linting","stats":{"files_changed":4,"insertions":5,"deletions":7,"files":["jc/cli.py","jc/parsers/foo_s.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"]}},{"commit":"9904e0be61e7c81b907bf3770f111346daeff481","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/utils.md","jc/utils.py"]}},{"commit":"31b69b3242eeca2c02f87c31d58193dd3f06fe49","message":"formatting","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/utils.md","jc/utils.py"]}},{"commit":"e6a80fea3228122dd84e17672c835c0460ad1342","message":"formatting","stats":{"files_changed":3,"insertions":7,"deletions":7,"files":["docs/utils.md","jc/utils.py","man/jc.1"]}},{"commit":"d6aec00e038d1ecfe43c13a6909d50630455b372","message":"add vmstat-1-long tests","stats":{"files_changed":4,"insertions":27,"deletions":1,"files":["tests/fixtures/ubuntu-18.04/vmstat-1-long-streaming.json","tests/fixtures/ubuntu-18.04/vmstat-1-long.json","tests/test_vmstat.py","tests/test_vmstat_s.py"]}},{"commit":"4aa7d81e11ea7fcfbb5c9d74337cde617b1a0d5d","message":"ignore re-printed header rows in output","stats":{"files_changed":3,"insertions":50,"deletions":2,"files":["jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","tests/fixtures/ubuntu-18.04/vmstat-1-long.out"]}},{"commit":"48cdabc3b0862d6291e1ec59ab385e0e146c31eb","message":"document timestamps","stats":{"files_changed":4,"insertions":16,"deletions":0,"files":["docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"]}},{"commit":"a1791ef5479749692c79bbe98fc7687d70cd6cda","message":"linting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"]}},{"commit":"7bc87f6c2d4cfcfa656a1c1b8973a4c0414c85d9","message":"change _meta to _jc_meta","stats":{"files_changed":8,"insertions":8,"deletions":8,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","man/jc.1"]}},{"commit":"bbed9e274b8252ba0518140fe7fc97029310771f","message":"linting","stats":{"files_changed":1,"insertions":154,"deletions":159,"files":["jc/parsers/ping_s.py"]}},{"commit":"486282b9856f5e56cf43ee1399d8e7cb78353b32","message":"linting","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/vmstat_s.py"]}},{"commit":"a4d45b653f794033978940da14910f5d607a8254","message":"linting","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["jc/parsers/foo_s.py","jc/parsers/vmstat.py"]}},{"commit":"22e151b01c0f97c141d912c9646e46df0320d622","message":"linting","stats":{"files_changed":2,"insertions":56,"deletions":60,"files":["jc/cli.py","jc/utils.py"]}},{"commit":"7a4ebcd1ecdb4929aae70e44b4f9b6b5ab52b393","message":"language hints","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CONTRIBUTING.md"]}},{"commit":"651cbfe02fbb354c4caf8e0d022655642e7caed3","message":"add streaming foo parser","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]}},{"commit":"8c3e764516e1c28961b09380b638a57ce98b1261","message":"add streaming parser to contrib guidelines","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]}},{"commit":"b4e75da7e3f23502723ce8b2a7261b376f296864","message":"formatting","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"]}},{"commit":"37223f086cabc8db5962415bd161fed151dafb9d","message":"formatting","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["README.md","templates/readme_template"]}},{"commit":"a404033735c2c8075a8e08194197eae59db70afd","message":"add error and warning message wrap info","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]}},{"commit":"b7433ed085c0ba22ea0d49330871a651a8d83fb4","message":"auto wrap warning and error messages","stats":{"files_changed":6,"insertions":80,"deletions":41,"files":["docs/utils.md","jc/cli.py","jc/parsers/file.py","jc/parsers/ls.py","jc/parsers/traceroute.py","jc/utils.py"]}},{"commit":"224d3d65ada4216e28e142d411b0c2c3358517b3","message":"Add exception class name to error message","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"a349fb0bdabaf74503831f22c4efbd02254f809d","message":"change _meta to _jc_meta","stats":{"files_changed":3,"insertions":10,"deletions":8,"files":["README.md","docs/utils.md","man/jc.1"]}},{"commit":"e7ddcfb83fb295034db44ade407476ff3a962cd8","message":"change _meta to _jc_meta","stats":{"files_changed":5,"insertions":14,"deletions":12,"files":["jc/utils.py","templates/manpage_template","templates/readme_template",".../centos-7.7/ping-ip-O-streaming-ignore-exceptions.json","tests/test_ping_s.py"]}},{"commit":"abd20dfe3662f65373ac582c70aa740e53b52f68","message":"formatting","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"]}},{"commit":"dc1fd3ef1be41aee349b159059f1febff76f6caf","message":"fix -qq docs","stats":{"files_changed":4,"insertions":12,"deletions":12,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"]}},{"commit":"98a7686db46fbd3ed98382867976249f307d0015","message":"use -qq to ignore streaming exceptions","stats":{"files_changed":18,"insertions":160,"deletions":152,"files":["README.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","docs/utils.md","jc/cli.py","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","jc/utils.py","man/jc.1","templates/manpage_template","templates/readme_template","... => ping-ip-O-streaming-ignore-exceptions.json}","tests/test_ls_s.py","tests/test_ping_s.py","tests/test_vmstat_s.py"]}},{"commit":"9c6c6c4330fc68115be012de254161f36e3a8328","message":"add next() info","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]}},{"commit":"f9be5651daa891e06ad0acd8980ffc0fe51fd29d","message":"add language hints","stats":{"files_changed":2,"insertions":4,"deletions":6,"files":["README.md","templates/readme_template"]}},{"commit":"df9835a3e62bb2b3b6ec8b55f06a25a00a799d92","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]}},{"commit":"92363be2dd633bdd3c2dd07c72ebd281d2cb4565","message":"fix streaming python module example","stats":{"files_changed":2,"insertions":2,"deletions":4,"files":["README.md","templates/readme_template"]}},{"commit":"31b62030156f9c826fe5c7d127e9dd0ace582dd0","message":"formatting","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","templates/readme_template"]}},{"commit":"18805858d685d456f9a38540bbaedbaa1a411546","message":"formatting","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["man/jc.1","templates/manpage_template"]}},{"commit":"e676f0e20fb6e96a536c4d182b0d287cdc1ad0f7","message":"add streaming parser info for python module use","stats":{"files_changed":2,"insertions":36,"deletions":6,"files":["README.md","templates/readme_template"]}},{"commit":"20652edefaa7705b8ba756bae3944ff362a295a6","message":"update changelog","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["CHANGELOG"]}},{"commit":"98c29d07478093e78f53ec633f2dd08cafc3e3ae","message":"add vmstat tests","stats":{"files_changed":8,"insertions":120,"deletions":0,"files":["tests/fixtures/centos-7.7/vmstat-a.json","tests/fixtures/centos-7.7/vmstat-at-5-10.json","tests/fixtures/centos-7.7/vmstat-awt.json","tests/fixtures/centos-7.7/vmstat-d.json","tests/fixtures/centos-7.7/vmstat-dt.json","tests/fixtures/centos-7.7/vmstat-w.json","tests/fixtures/centos-7.7/vmstat.json","tests/test_vmstat.py"]}},{"commit":"41a6311f6b3ed2cc94919d042aed51c46cdf3e2f","message":"add streaming parser tests","stats":{"files_changed":9,"insertions":132,"deletions":1,"files":["tests/fixtures/centos-7.7/vmstat-a-streaming.json",".../centos-7.7/vmstat-at-5-10-streaming.json",".../fixtures/centos-7.7/vmstat-awt-streaming.json","tests/fixtures/centos-7.7/vmstat-d-streaming.json","tests/fixtures/centos-7.7/vmstat-dt-streaming.json","tests/fixtures/centos-7.7/vmstat-streaming.json","tests/fixtures/centos-7.7/vmstat-w-streaming.json","tests/test_ping_s.py","tests/test_vmstat_s.py"]}},{"commit":"978760ec57e04e3ec347c8764bfad015b6dddbff","message":"add exception class name to error string","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]}},{"commit":"d410425537817964ceb7b61e0fdff6c03fdf8766","message":"replace single quotes with double quotes in doc","stats":{"files_changed":4,"insertions":136,"deletions":136,"files":["docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"]}},{"commit":"6b7430329cbe1bfb95b47bcfe031906641c127e1","message":"doc update","stats":{"files_changed":5,"insertions":269,"deletions":1,"files":["README.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat_s.py","man/jc.1"]}},{"commit":"40fe0d4a6081a1233bf5c3eb51a01da1f12bc4dc","message":"working parser","stats":{"files_changed":1,"insertions":141,"deletions":22,"files":["jc/parsers/vmstat_s.py"]}},{"commit":"365c5354a0349e470558d15243217a064e73da38","message":"remove debug print statement","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/vmstat.py"]}},{"commit":"b246a05cbb4c1c564f81b3e72cecb62edbe6ced6","message":"fix vmstat-s name","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"9e5a7a4abb8668d043625951a05eb5733cbbd56f","message":"add vmstat sample output","stats":{"files_changed":7,"insertions":37,"deletions":0,"files":["tests/fixtures/centos-7.7/vmstat-a.out","tests/fixtures/centos-7.7/vmstat-at-5-10.out","tests/fixtures/centos-7.7/vmstat-awt.out","tests/fixtures/centos-7.7/vmstat-d.out","tests/fixtures/centos-7.7/vmstat-dt.out","tests/fixtures/centos-7.7/vmstat-w.out","tests/fixtures/centos-7.7/vmstat.out"]}},{"commit":"f266acbccafc040c375723147b8e5d7fddb1e697","message":"add processing logic","stats":{"files_changed":1,"insertions":106,"deletions":14,"files":["jc/parsers/vmstat.py"]}},{"commit":"4e3b471f1801f1b9006b18cae2a3d816f361262e","message":"add format for vmstat","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/utils.py"]}},{"commit":"5e28736c2e0c951e71e6531e03a9619279d95d3a","message":"add vmstat and vmstat_s","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"]}},{"commit":"a91913a3b517ea0dbb25d6e4cc92850eb2fde5ab","message":"streaming parser template","stats":{"files_changed":1,"insertions":106,"deletions":0,"files":["jc/parsers/vmstat_s.py"]}},{"commit":"90c64f0ae0d97d025adee40970d89baca79ee4ac","message":"initial working parser","stats":{"files_changed":1,"insertions":182,"deletions":0,"files":["jc/parsers/vmstat.py"]}},{"commit":"7cc642ed1a476abda709ac9b79900a1de12e1ef7","message":"formatting","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/foo_s.py"]}},{"commit":"809f64d35a92bb3d7380fa9d78ac1421a10b81fc","message":"Merge pull request #169 from kellyjonbrazil/streaming"},{"commit":"a6f859a55edae50fcc185948736218404cfaa929","message":"add final ping_s tests","stats":{"files_changed":18,"insertions":168,"deletions":153,"files":[".../osx-10.14.6/ping-hostname-p-streaming.json",".../osx-10.14.6/ping-hostname-s-streaming.json",".../osx-10.14.6/ping-hostname-streaming.json",".../osx-10.14.6/ping-ip-dup-streaming.json",".../fixtures/osx-10.14.6/ping-ip-p-streaming.json",".../fixtures/osx-10.14.6/ping-ip-s-streaming.json","tests/fixtures/osx-10.14.6/ping-ip-streaming.json",".../osx-10.14.6/ping-ip-unreachable-streaming.json",".../osx-10.14.6/ping6-hostname-p-streaming.json",".../osx-10.14.6/ping6-hostname-s-streaming.json",".../osx-10.14.6/ping6-hostname-streaming.json",".../osx-10.14.6/ping6-ip-dup-streaming.json",".../fixtures/osx-10.14.6/ping6-ip-p-streaming.json",".../fixtures/osx-10.14.6/ping6-ip-s-streaming.json","tests/fixtures/osx-10.14.6/ping6-ip-streaming.json","tests/fixtures/pi/ping-ip-O-D-streaming.json","tests/fixtures/pi/ping-ip-O-streaming.json","tests/test_ping_s.py"]}},{"commit":"39ef88078f43708e470d3c1b2fd95e76b5cbeb08","message":"add destination_ip to error lines","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/ping_s.py"]}},{"commit":"aeea5e8d2eab2fef3e14637f512aed7b117c4a3f","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/test_ls_s.py"]}},{"commit":"1a0700bff4bdebbd9f1f92f2fc7a56c4d5ed6925","message":"add more ping-s tests","stats":{"files_changed":31,"insertions":240,"deletions":213,"files":[".../fedora32/ping-hostname-O-D-p-s-streaming.json",".../fedora32/ping-hostname-O-p-streaming.json",".../fedora32/ping-hostname-O-streaming.json","tests/fixtures/fedora32/ping-ip-O-D-streaming.json","tests/fixtures/fedora32/ping-ip-O-streaming.json",".../fedora32/ping6-hostname-O-D-p-s-streaming.json",".../fedora32/ping6-hostname-O-p-streaming.json",".../fedora32/ping6-ip-O-D-p-streaming.json",".../fixtures/fedora32/ping6-ip-O-p-streaming.json",".../freebsd12/ping-hostname-p-streaming.json",".../freebsd12/ping-hostname-s-streaming.json",".../freebsd12/ping-hostname-streaming.json","tests/fixtures/freebsd12/ping-ip-p-streaming.json","tests/fixtures/freebsd12/ping-ip-s-streaming.json","tests/fixtures/freebsd12/ping-ip-streaming.json",".../freebsd12/ping6-hostname-p-streaming.json",".../freebsd12/ping6-hostname-s-streaming.json",".../freebsd12/ping6-hostname-streaming.json","tests/fixtures/freebsd12/ping6-ip-p-streaming.json","tests/fixtures/freebsd12/ping6-ip-s-streaming.json","tests/fixtures/freebsd12/ping6-ip-streaming.json",".../ping-hostname-O-D-p-s-streaming.json",".../ubuntu-18.04/ping-hostname-O-p-streaming.json",".../ubuntu-18.04/ping-hostname-O-streaming.json",".../ubuntu-18.04/ping-ip-O-D-streaming.json",".../fixtures/ubuntu-18.04/ping-ip-O-streaming.json",".../ping6-hostname-O-D-p-s-streaming.json",".../ubuntu-18.04/ping6-hostname-O-p-streaming.json",".../ubuntu-18.04/ping6-ip-O-D-p-streaming.json",".../ubuntu-18.04/ping6-ip-O-p-streaming.json","tests/test_ping_s.py"]}},{"commit":"b5fa6d068f240671eb948b055cd4f7bf127e0ec0","message":"update docs","stats":{"files_changed":5,"insertions":25,"deletions":5,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"]}},{"commit":"1baec0b420feff068f2dc1e35499f78aa7d0a6e0","message":"add some streaming tests","stats":{"files_changed":13,"insertions":815,"deletions":0,"files":[".../ping-hostname-O-D-p-s-streaming.json",".../centos-7.7/ping-hostname-O-p-streaming.json",".../centos-7.7/ping-hostname-O-streaming.json",".../fixtures/centos-7.7/ping-ip-O-D-streaming.json",".../centos-7.7/ping-ip-O-streaming-quiet.json","tests/fixtures/centos-7.7/ping-ip-O-streaming.json",".../fixtures/centos-7.7/ping-ip-dup-streaming.json",".../ping6-hostname-O-D-p-s-streaming.json",".../centos-7.7/ping6-hostname-O-p-streaming.json",".../centos-7.7/ping6-ip-O-D-p-streaming.json",".../centos-7.7/ping6-ip-O-p-streaming.json",".../centos-7.7/ping6-ip-dup-streaming.json","tests/test_ping_s.py"]}},{"commit":"4f2a4e1dee9d722d2aa5ddf2c082a358c88cf640","message":"skip blank lines and warning lines","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/parsers/ping_s.py"]}},{"commit":"758d617668d1f9d0f27b52d46749e5b67a570cf1","message":"doc update","stats":{"files_changed":5,"insertions":5,"deletions":5,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"]}},{"commit":"55322c37f57a9c8e28641a61928fad2329f5e50d","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/foo_s.py"]}},{"commit":"d19ea5552bb3a379f7f92bcb58794c557ecc6647","message":"add streaming ls parser tests","stats":{"files_changed":12,"insertions":193,"deletions":0,"files":["tests/fixtures/centos-7.7/ls-al-streaming.json","tests/fixtures/centos-7.7/ls-alR-streaming.json","tests/fixtures/centos-7.7/ls-alh-streaming.json","tests/fixtures/osx-10.14.6/ls-al-streaming.json","tests/fixtures/osx-10.14.6/ls-alR-streaming.json","tests/fixtures/osx-10.14.6/ls-alh-streaming.json",".../osx-10.14.6/ls-lR-empty-folder-streaming.json","tests/fixtures/ubuntu-18.04/ls-al-streaming.json","tests/fixtures/ubuntu-18.04/ls-alR-streaming.json","tests/fixtures/ubuntu-18.04/ls-alh-streaming.json",".../fixtures/ubuntu-18.04/ls-l-iso-streaming.json","tests/test_ls_s.py"]}},{"commit":"130c3527c1083d399deef00ee8fcaa75f609b485","message":"update docstrings","stats":{"files_changed":6,"insertions":25,"deletions":25,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","man/jc.1"]}},{"commit":"3f221f471416766a860bd19850afda4899ee5eb3","message":"doc update","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"]}},{"commit":"d64c4cb39056bb869fc117477612ae5ae2ef3d85","message":"add streaming parsers section","stats":{"files_changed":2,"insertions":141,"deletions":1,"files":["man/jc.1","templates/manpage_template"]}},{"commit":"448c56aa46b72438e4a4c83b10a7eb889e3f50e7","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]}},{"commit":"9fbea15b6d031baa8c90f2602e39de7cf51408e2","message":"rename state class to _state","stats":{"files_changed":2,"insertions":2,"deletions":8,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"]}},{"commit":"932060314b3c1ce518b9f57532e124285cb3ad0a","message":"doc update","stats":{"files_changed":2,"insertions":41,"deletions":11,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"]}},{"commit":"5e68ae50097cb339f3390449db7e3f189a716320","message":"import exception. tighten up os detection","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/parsers/ping_s.py"]}},{"commit":"d03541beae44a4571a7d0481af01a5c19506207f","message":"add docstring examples. add exception raise when OS cannot be detected.","stats":{"files_changed":1,"insertions":12,"deletions":5,"files":["jc/parsers/ping_s.py"]}},{"commit":"516fa571d90a0c93134c953c15ce84dd31b96b4b","message":"remove unused variable. use elif instead of if for linux vs. bsd detection","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/ping_s.py"]}},{"commit":"a19c12096a8e8de02a6ff761cc9c13ec249d416e","message":"initial working parser for both linux and bsd","stats":{"files_changed":1,"insertions":373,"deletions":143,"files":["jc/parsers/ping_s.py"]}},{"commit":"758f27945de4f0897405eba02c7908d815ce6e9b","message":"change data_bytes and bytes to sent_bytes and response_bytes","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/ping_s.py"]}},{"commit":"8b1e8d58df22f8542ccaf7bf3e1eabe6132e7a42","message":"remove unneeded line","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping_s.py"]}},{"commit":"b967489d085319facee077958deaa04956a98343","message":"complete linux coverage including summary","stats":{"files_changed":1,"insertions":81,"deletions":40,"files":["jc/parsers/ping_s.py"]}},{"commit":"870d0218be2641e3eddb114c23d54deb23155f25","message":"add unbuffer note","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"]}},{"commit":"84020bc2af294cb065105f1399453aefc98eb180","message":"change error_msg to error in -q result docs","stats":{"files_changed":7,"insertions":12,"deletions":6,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/utils.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","man/jc.1"]}},{"commit":"4efe5344e069ed921f208bcbbd097705be2d3b4f","message":"add links to HN and Reddit","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"]}},{"commit":"9182c545134b3d56d27d2c1d9bda678532bdc3fb","message":"formatting","stats":{"files_changed":1,"insertions":3,"deletions":8,"files":["jc/utils.py"]}},{"commit":"28f0ab0b02d21fc060f1ac7181f85552798dc4bd","message":"update streaming error messages","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/ls_s.py","jc/utils.py"]}},{"commit":"90d1a30696b2cbfbb06a55cc0cf920cf8ecd89aa","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]}},{"commit":"130b3738cc57fe261e8ef881a57b7836acd7e7e9","message":"shorten successful yield to a single line","stats":{"files_changed":4,"insertions":21,"deletions":26,"files":["jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/utils.py"]}},{"commit":"92c7357615af7689db273aa78d666b35a2ec7a70","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/foo_s.py"]}},{"commit":"c80f8633349c00ea461b8927f9949fe19b2f46ee","message":"simplify return condition formatting","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/foo.py"]}},{"commit":"4642c20179d4643e0cf1970b264da7d9d91628de","message":"formatting","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"]}},{"commit":"5288eb22aadbbc1005b16428b94d2b07e9a75e3c","message":"add info about streaming parser performance characteristics","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]}},{"commit":"df8387a1a99df69eac5005662aaf56d506fa0efd","message":"streaming parsers cannot be used with the magic syntax","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"]}},{"commit":"cc38c27f44d3f088609b878304cab8eed75fc8f2","message":"formatting","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["README.md","templates/readme_template"]}},{"commit":"64f5357d69fe88b45d710d38948969699e1ca12f","message":"add streaming parsers section","stats":{"files_changed":2,"insertions":84,"deletions":0,"files":["README.md","templates/readme_template"]}},{"commit":"51debb5649bef431e51e543f1c9270e2810aa58f","message":"add vmstat parser and change from linebuffer to unbuffer","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"]}},{"commit":"b48d05a4313b27cf5e69d3e4259542e0b131b60f","message":"change from line buffer output to unbuffer output","stats":{"files_changed":5,"insertions":15,"deletions":15,"files":["README.md","jc/cli.py","man/jc.1","templates/manpage_template","templates/readme_template"]}},{"commit":"4e7f6b337db61b8a106cf958f6b874157909c87a","message":"simplify yield statements","stats":{"files_changed":3,"insertions":17,"deletions":25,"files":["jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"]}},{"commit":"a509d99cafd80862721595ee59ccc4a471b5e5a3","message":"add stream_success dictionary","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/utils.py"]}},{"commit":"481e45fb644ac88fa77ef35643b793f179fe6859","message":"limit parse error msg lenght","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"]}},{"commit":"e9038e1720e1c0e520e2f29b718aa8505cbbb9a2","message":"initial streaming ping docs","stats":{"files_changed":1,"insertions":66,"deletions":0,"files":["docs/parsers/ping_s.md"]}},{"commit":"8fd9e582bf29275c4daaa3be88ea8d196411b34a","message":"doc update","stats":{"files_changed":1,"insertions":15,"deletions":17,"files":["docs/parsers/ls_s.md"]}},{"commit":"c1fd6f48a5a3501499c9fca7239673b8555cc7c6","message":"add stream_error docs","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["docs/utils.md"]}},{"commit":"af615c7f4b3f589ffc1b37cf9834062a04c013cb","message":"add line buffer output option","stats":{"files_changed":6,"insertions":26,"deletions":5,"files":["CHANGELOG","README.md","jc/cli.py","man/jc.1","templates/manpage_template","templates/readme_template"]}},{"commit":"bf0bc32d7ae6cabe07906207f4f08c2e81802c80","message":"flush streamed text for better piping experience","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]}},{"commit":"2d6b53e012181a4c33bab441880c47c0fc0b0601","message":"add pattern support. move unparsable line detection to standard streaming parser style","stats":{"files_changed":1,"insertions":36,"deletions":42,"files":["jc/parsers/ping_s.py"]}},{"commit":"51271fea0fbd7bd63863ba05c399b4675dc5b4bf","message":"somewhat working parser","stats":{"files_changed":1,"insertions":139,"deletions":149,"files":["jc/parsers/ping_s.py"]}},{"commit":"2deb473e0bc96c0e39ec4074a6df4b941ba2172b","message":"initial streaming ping parser","stats":{"files_changed":1,"insertions":262,"deletions":0,"files":["jc/parsers/ping_s.py"]}},{"commit":"23eeb33b3da43a679c3bf3f3643cfa552a1164e1","message":"modify stream_error message","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]}},{"commit":"f50dfaef45632241f8f6972fa19bb17c54a457ff","message":"use stream_error function for exceptions. raise on non -l ls output","stats":{"files_changed":1,"insertions":6,"deletions":13,"files":["jc/parsers/ls_s.py"]}},{"commit":"55bb71e9d466cc9ee5f7fd8eca1101c941cbcb35","message":"add streaming ping parser. update streaming exception message","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]}},{"commit":"dab9357d286962b70224d6fafbf90a4c0cbc9980","message":"use stream_error function for exceptions","stats":{"files_changed":1,"insertions":1,"deletions":12,"files":["jc/parsers/foo_s.py"]}},{"commit":"27eb427245b5126335cef0adb5e57522272474b5","message":"add stream_error function","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/utils.py"]}},{"commit":"260f3685d944ded84396ae3395773d6898803fb6","message":"add streaming parser template","stats":{"files_changed":1,"insertions":112,"deletions":0,"files":["jc/parsers/foo_s.py"]}},{"commit":"76e78fc0c34b88a90fef876eebef92bd71cd772c","message":"doc updates","stats":{"files_changed":1,"insertions":9,"deletions":11,"files":["jc/parsers/ls_s.py"]}},{"commit":"1ac944fa028a400ae7b39b811fcf368c9bf5e259","message":"add -q option info to docstring","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/ls_s.py"]}},{"commit":"986bc9b042a940f8dd34f0541bcb9b5840df579e","message":"cleanup unused code","stats":{"files_changed":1,"insertions":9,"deletions":43,"files":["jc/parsers/ls_s.py"]}},{"commit":"5a7942069b1f3ef3b45992b482bfb6bb973f7e8e","message":"add support for parent field","stats":{"files_changed":1,"insertions":28,"deletions":28,"files":["jc/parsers/ls_s.py"]}},{"commit":"f6c6fc13ac4c779667807df12444a41ef28a8011","message":"enhance error msg when streaming parser is used","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/cli.py"]}},{"commit":"1d8cfae89f24192b6fab087f59c9b8988ef363dc","message":"only print _meta object if -q or quiet flag is used. Also, add message to the end of exceptions informing of the -q option to ignore errors","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/parsers/ls_s.py"]}},{"commit":"787df51239ffa8260b48d6a3a58e6ff07d5e0f64","message":"remove `\\n` from end of line in exception message","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"]}},{"commit":"5e7f302a9c45343c36e81944db38a435e6c8a20c","message":"Raise exceptions unless the -q or quiet flag are used","stats":{"files_changed":1,"insertions":12,"deletions":10,"files":["jc/parsers/ls_s.py"]}},{"commit":"3d10fd40b56264836874da19aa72351e6d5cfbf7","message":"remove print flush for better performance. Roll json.JSONDecodeError into the parse try/except block","stats":{"files_changed":1,"insertions":14,"deletions":13,"files":["jc/cli.py"]}},{"commit":"57e3bf239cc76d3b0ee0eddc618171eb90c28dec","message":"formatting for docs","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"]}},{"commit":"ccb09861e82044e17ec51277b3c8875e5ba9d87d","message":"formatting for docs","stats":{"files_changed":2,"insertions":20,"deletions":20,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"]}},{"commit":"94551d75dd926c7f558e5cab47ba9483a20c6b3c","message":"doc update","stats":{"files_changed":10,"insertions":116,"deletions":49,"files":["CHANGELOG","README.md","docs/parsers/ls_s.md","docs/readme.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz","mangen.py","setup.py"]}},{"commit":"6e21218425359210591827e936b8d48d9644df92","message":"working prototype of streaming ls parser","stats":{"files_changed":2,"insertions":234,"deletions":3,"files":["jc/cli.py","jc/parsers/ls_s.py"]}},{"commit":"ff0fda48fc48760a7293528155d222c6456f84c4","message":"Merge pull request #168 from kellyjonbrazil/master"},{"commit":"528aac7ad87feae2093aba563c83a29ebf75e5f9","message":"use subprocess in python example","stats":{"files_changed":2,"insertions":8,"deletions":38,"files":["README.md","templates/readme_template"]}},{"commit":"ab482e521d4cecfffa5393805b1d7de4389db49a","message":"Merge pull request #163 from kellyjonbrazil/dev"},{"commit":"e08b61fa81b1bd2304d04db5cdc8b809fe9c6032","message":"add schema note to sfdisk","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]}},{"commit":"ce61bd1d2b4323d9c2d0454c4f646521913ae20d","message":"add tests for -F fixes","stats":{"files_changed":7,"insertions":73,"deletions":7,"files":["tests/fixtures/debian10/sfdisk-F2.json","tests/fixtures/debian10/sfdisk-F2.out","tests/fixtures/debian10/sfdisk-l2.json","tests/fixtures/debian10/sfdisk-l2.out","tests/fixtures/debian10/sfdisk-l3.json","tests/fixtures/debian10/sfdisk-l3.out","tests/test_sfdisk.py"]}},{"commit":"7b708f75182bf3ed33478a7de62e9c2496f0b994","message":"Don't convert 'size' to int, except for legacy -d support. Change partition table detection logic to fix -F output","stats":{"files_changed":3,"insertions":11,"deletions":5,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-l.json","tests/fixtures/debian10/sfdisk-l.json"]}},{"commit":"89ca50c7fc1bf64f34c915e65031d0bc520e6466","message":"add -l to sfdisk raw example","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"]}},{"commit":"fb54899dcc2160450448e0d6111557cebdeb0d4d","message":"doc update","stats":{"files_changed":4,"insertions":38,"deletions":23,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]}},{"commit":"0a625ad7ddd9c804052d98930165cd22049546bd","message":"remove unneeded lines","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/sfdisk.py"]}},{"commit":"d32e45efbe0d71a9a132abfb2855f1f4ccee9916","message":"add sfdisk tests","stats":{"files_changed":6,"insertions":69,"deletions":1,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-F.json","tests/fixtures/centos-8/sfdisk-l.json","tests/fixtures/debian10/sfdisk-F.json","tests/fixtures/debian10/sfdisk-l.json","tests/test_sfdisk.py"]}},{"commit":"c77696bc789cdfd286a7479c3d9f67d23149d0ce","message":"version bump","stats":{"files_changed":3,"insertions":6,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"]}},{"commit":"736fde9e784587cb2ef344bbf31d876eafea7741","message":"add support for newer versions of sfdisk","stats":{"files_changed":5,"insertions":147,"deletions":28,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-F.out","tests/fixtures/centos-8/sfdisk-l.out","tests/fixtures/debian10/sfdisk-F.out","tests/fixtures/debian10/sfdisk-l.out"]}},{"commit":"9c1ad92fed9a4b3a0da66d6b71deec8d608edfa9","message":"fix examples","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["CONTRIBUTING.md"]}},{"commit":"1a9fd2139d156a51bf2d25db951e47e96da77f7d","message":"add \"For new parsers:\"","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]}},{"commit":"7661e7f27a4e5c379ea37c7f95496aca2c1e2910","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]}},{"commit":"f857b7fbf7862ddd7eb5ab20470f5dbaacc62119","message":"add custom parser folder info","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]}},{"commit":"d94d12dbc5fb3e3712b2f1aea949013cb8213e28","message":"add foo parser template info","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["CONTRIBUTING.md"]}},{"commit":"700916276ae8b0a106410e3dd2ea3e00248ee37a","message":"Merge pull request #159 from kellyjonbrazil/master"},{"commit":"834e52369ceb479776ddc8fc2931790af53b9c18","message":"update man page","stats":{"files_changed":3,"insertions":1,"deletions":5,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]}},{"commit":"1ce53365de61421c8bd43e04590038083894153b","message":"Merge pull request #156 from kellyjonbrazil/dev"},{"commit":"473f70668f04a38765559c5dbf0468af24d625c9","message":"Merge branch 'master' into dev"},{"commit":"0dbd2702f6ab2640b2ccdea92411ac0789673e66","message":"reformat doc_text for nicer indentation","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/cli.py"]}},{"commit":"01e3764a9b6ba902aea522bf6b7005fd37b3acbb","message":"fix join syntax","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"ff9c81722ae7221364e9bcb83d98b16b4263334e","message":"try/except for shlex.join since only available in python 3.8","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"]}},{"commit":"166aef7a022ed29862ab2e0702d53c591bb5cc77","message":"version bump","stats":{"files_changed":6,"insertions":4,"deletions":4,"files":["docs/parsers/stat.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz","setup.py"]}},{"commit":"78caf7646baf5d35602fd76771443cd64bd783af","message":"add stat fix","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]}},{"commit":"1f99d40cecc5d88a246f3558f71db376ebd885c6","message":"fix filename with spaces for osx/bsd","stats":{"files_changed":4,"insertions":17,"deletions":2,"files":["jc/parsers/stat.py","tests/fixtures/osx-10.14.6/stat-filename-with-spaces.json","tests/fixtures/osx-10.14.6/stat-filename-with-spaces.out","tests/test_stat.py"]}},{"commit":"4c2912d3d5ec1fd2d5d891f2b3c58a33dd8572be","message":"use shlex.join to quote run_command_str for better error messages","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]}},{"commit":"45e6e06be581f787f707e3f5645129c713478d16","message":"add glob and process substitution fixes","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["CHANGELOG"]}},{"commit":"fdbe3e05f323c95687a1137983f9623911008ca2","message":"fix issue with globs not including filenames with spaces with magic syntax (introduced during switch to use subprocess to grab process exit code). No longer need to shlex quote arguments.","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["jc/cli.py"]}},{"commit":"7cc168f6409af13fda815d0d2a6db25b7c9ba367","message":"add comment","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"ff2d609c9b5f5f57f3331e5593e8fe87c01654dd","message":"add close_fds=False in subprocess.Popen() to allow process substitution in magic syntax. Also check for too many open files exception","stats":{"files_changed":1,"insertions":12,"deletions":1,"files":["jc/cli.py"]}},{"commit":"2689697b4c21758903e5f74ec069e89be585aba2","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]}},{"commit":"f90a0ea8ab15629b7786e4431e9c968c3a896ee0","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["templates/readme_template"]}},{"commit":"caabe60f849fb2422e47b8f10e0ff35beb706dcd","message":"fix kv example","stats":{"files_changed":5,"insertions":3,"deletions":3,"files":["docs/parsers/kv.md","jc/man/jc.1.gz","jc/parsers/kv.py","man/jc.1","man/jc.1.gz"]}},{"commit":"2bef4ed6038201f54339e750a833260dc1998591","message":"package updates","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","README.md"]}},{"commit":"ee57be533b12593a33a2abbb2892697f0bd40c65","message":"fix sfdisk example","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"]}},{"commit":"c5b7aaca25d6b66d3e44256c2c6760a4cf2956ec","message":"Merge pull request #149 from kellyjonbrazil/dev"},{"commit":"7a1be905bb8654558afb5979b0bd78d4a8488874","message":"version bump","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]}},{"commit":"5798495a11afa2f72ce6f79be785d46240fcbeb4","message":"add 1.15.7 to 1.16.0 changes","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["CHANGELOG"]}},{"commit":"46171e220252ec92d18e744d2a57c1d6a6dc19f6","message":"add sfdisk example","stats":{"files_changed":1,"insertions":69,"deletions":0,"files":["EXAMPLES.md"]}},{"commit":"dd5c924ff505dcc2a9c851d2425677bdf16ea462","message":"add man page location change","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]}},{"commit":"30c4ab297658228a07ef9b1585516719af3febb0","message":"new man page location","stats":{"files_changed":3,"insertions":515,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]}},{"commit":"26ea4d47b33277efb0ddafe8f421791696277c07","message":"version bump and deprecate /man/jc.1.gz and /jc/man/jc.1.gz","stats":{"files_changed":5,"insertions":14,"deletions":3,"files":["CHANGELOG","MANIFEST.in","jc/__init__.py","mangen.py","setup.py"]}},{"commit":"2732cd175c1e878210707162de3928f33fb2f201","message":"include CHANGELOG in source distribution","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["CHANGELOG","MANIFEST.in"]}},{"commit":"3e54b597be88b0e342e4361b7f2c1af447f9482b","message":"add timezone change for unit tests","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]}},{"commit":"f10ebea20962084833e5c1ebd9bc90a251bf3ff4","message":"update tests to set correct timezone on POSIX systems","stats":{"files_changed":11,"insertions":78,"deletions":0,"files":["tests/test_date.py","tests/test_dig.py","tests/test_dir.py","tests/test_last.py","tests/test_ls.py","tests/test_rpm_qai.py","tests/test_stat.py","tests/test_systeminfo.py","tests/test_upower.py","tests/test_utils.py","tests/test_who.py"]}},{"commit":"2c6f3993cb4c5e559dbac7a479ec889aa2cba752","message":"remove extra comma","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/route.md","jc/man/jc.1.gz","jc/parsers/route.py","man/jc.1.gz"]}},{"commit":"708a696920b52c2614edcdba264912527b2dfbef","message":"remove extra lines","stats":{"files_changed":3,"insertions":0,"deletions":2,"files":["docs/parsers/route.md","jc/man/jc.1.gz","man/jc.1.gz"]}},{"commit":"20bbb5d331575c8fc33ba63643882a62650c97b8","message":"remove extra lines","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/route.py"]}},{"commit":"223e785b547d9376174efa15321d60a533847c57","message":"rename variable","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/sfdisk.py"]}},{"commit":"3d78692c59980e4d70361d3a9f74bacc3f21376e","message":"add sfdisk tests","stats":{"files_changed":11,"insertions":150,"deletions":1,"files":["tests/fixtures/centos-7.7/sfdisk-d-multi.json","tests/fixtures/centos-7.7/sfdisk-d-multi.out","tests/fixtures/centos-7.7/sfdisk-d.json","tests/fixtures/centos-7.7/sfdisk-d.out","tests/fixtures/centos-7.7/sfdisk-l-multi.json","tests/fixtures/centos-7.7/sfdisk-l-multi.out","tests/fixtures/centos-7.7/sfdisk-l.json","tests/fixtures/centos-7.7/sfdisk-luB.json","tests/fixtures/centos-7.7/sfdisk-luM.json","tests/fixtures/centos-7.7/sfdisk-luS.json","tests/test_sfdisk.py"]}},{"commit":"5321a15dcf13cf14efe578d0f66b651078c3d8a1","message":"update examples","stats":{"files_changed":4,"insertions":8,"deletions":8,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"]}},{"commit":"a452f8252a593f7914ebece53af9d73f4fd11a19","message":"fix integer conversion","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"]}},{"commit":"49267f09ac01fead3b20b2d481bb5e0d07af1439","message":"change to root prompt in examples","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/sfdisk.py"]}},{"commit":"db47f35783e46a8299533c22146d851509f6ceb2","message":"add working sfdisk parser","stats":{"files_changed":15,"insertions":610,"deletions":3,"files":["CHANGELOG","README.md","docs/parsers/sfdisk.md","jc/__init__.py","jc/cli.py","jc/man/jc.1.gz","jc/parsers/sfdisk.py","jc/utils.py","man/jc.1.gz","setup.py","tests/fixtures/centos-7.7/sfdisk-d.out","tests/fixtures/centos-7.7/sfdisk-l.out","tests/fixtures/centos-7.7/sfdisk-luB.out","tests/fixtures/centos-7.7/sfdisk-luM.out","tests/fixtures/centos-7.7/sfdisk-luS.out"]}},{"commit":"d48abf312c1f55ab31aa11da2b6cf6bc8166733b","message":"Merge pull request #147 from kellyjonbrazil/master"},{"commit":"3b22ce41105387e7f46a410460cf04759feef197","message":"fix local plugin parser issue where parser has .py in the name but it is not at the end","stats":{"files_changed":6,"insertions":6,"deletions":3,"files":["CHANGELOG","jc/__init__.py","jc/cli.py","jc/man/jc.1.gz","man/jc.1.gz","setup.py"]}},{"commit":"c521ca5bc9e2b035cfef6ff65f6b303b3ec44296","message":"change possible to available","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]}},{"commit":"3ddc1c665990e1e732314330db214a81ab810fe9","message":"add jello","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]}},{"commit":"a8e19402b7d1f9f06bc40b81a15dec401154180c","message":"remove temporary fix","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["ADVANCED_USAGE.md"]}},{"commit":"0927902b30654274743ab9092e90e768709a9937","message":"temp fix for wrong url","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["ADVANCED_USAGE.md"]}},{"commit":"572548b42fb6ed9d32a392503d44fac1a8f146d3","message":"Merge pull request #141 from kellyjonbrazil/dev"},{"commit":"ff7ab0a1ed7f468d0e84eb3bf0636f53913c490d","message":"doc updates for v1.15.5","stats":{"files_changed":3,"insertions":0,"deletions":1,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"]}},{"commit":"5db71b05cb28691bbbaa5d668bcd4a4ac7e68b85","message":"add en_US.UTF-8 to LANG info","stats":{"files_changed":5,"insertions":3,"deletions":3,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template","templates/readme_template"]}},{"commit":"f9b952885aa7f2b450786a08c3879d9e358886da","message":"add python 3.9.5 packaged info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]}},{"commit":"e7983bc0b29abaca2147038dfad018cba1e67cdf","message":"version bump","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xml.md","docs/parsers/yaml.md"]}},{"commit":"473a6431425fc24a4cc83939ff592e0d49535b9c","message":"add windows msi info","stats":{"files_changed":4,"insertions":10,"deletions":3,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"]}},{"commit":"14f3d442cb86250b8f2cdfd7977938634b8abd6d","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]}},{"commit":"d6f4ed9ab55fe9b7c2766fb437172af62a1d5c87","message":"add long-form UTC test","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/test_utils.py"]}},{"commit":"1b8d654444ff8c8b8171c7ac63e2736447a36c09","message":"add error message info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]}},{"commit":"6002af0dca334c0affaff3e9acdca416238c7d82","message":"add more error message detail to the user for ParseError and LibraryNotFound exceptions","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/cli.py"]}},{"commit":"0924d822a30c8806f65574c010561cd6f7c8e181","message":"add windows example","stats":{"files_changed":1,"insertions":8,"deletions":1,"files":["templates/readme_template"]}},{"commit":"72a37b928924c3edde3a4edb952f98c94aa05f0b","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"]}},{"commit":"5eef7bd769f8ffb03ba396833d1b33484041a99f","message":"use LibraryNotInstalled exception instead of exiting via sys.exit","stats":{"files_changed":2,"insertions":16,"deletions":16,"files":["jc/parsers/xml.py","jc/parsers/yaml.py"]}},{"commit":"c6893e1bd5283d982a7ecd6f84bdfdd0054ce7a7","message":"add LibraryNotInstalled exception","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/exceptions.py"]}},{"commit":"039f6612e491c6f821c001252e122e9b0a781104","message":"Merge pull request #139 from kellyjonbrazil/master"},{"commit":"95aec9c6f9aa8fb4d0dae227410a1346d550f47f","message":"add info about Magic syntax not supporting shell builtins","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["templates/manpage_template"]}},{"commit":"4e9652a8ec2482a64dc029b0ce0e1047a3e49867","message":"spelling","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]}},{"commit":"773b7f4b1f23e04c90e602aab05bc1a7e5aae37b","message":"add space before exit code table","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","templates/readme_template"]}},{"commit":"d17ffde9cdc35392ae25d8e9de5328e46067df2a","message":"Merge pull request #138 from kellyjonbrazil/dev"},{"commit":"9c57c09c00e64a9031391b9b70083ad6ecf0bc0b","message":"doc update for release","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]}},{"commit":"4d730a9de5a0d7c064a9a59e3add86e58d9ec492","message":"add UTC fix","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]}},{"commit":"fc57bcfce24af23f077d6a73f1db4591d8f99c13","message":"fix for when UTC is referenced as \"Coordinated Universal Time\"","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"]}},{"commit":"fa5571486c3c19bb7e836f043545ea4f2509ed4d","message":"simplify json_out function","stats":{"files_changed":1,"insertions":10,"deletions":10,"files":["jc/cli.py"]}},{"commit":"9996c4fe23564dfb52e3c7dbdbd8bd67edfb1e95","message":"update docs for shell builtins","stats":{"files_changed":7,"insertions":10,"deletions":10,"files":["EXAMPLES.md","docs/parsers/history.md","docs/parsers/jobs.md","jc/man/jc.1.gz","jc/parsers/history.py","jc/parsers/jobs.py","man/jc.1.gz"]}},{"commit":"038d4290248e6bb94762bb51f69e9958f7c1fecb","message":"doc updates","stats":{"files_changed":4,"insertions":4,"deletions":6,"files":["docs/parsers/dig.md","docs/parsers/dir.md","jc/man/jc.1.gz","man/jc.1.gz"]}},{"commit":"9bf6facb0d7d76583802309253e7d13ba5148997","message":"remove magic command capability since dir is a shell builtin","stats":{"files_changed":1,"insertions":3,"deletions":6,"files":["jc/parsers/dir.py"]}},{"commit":"965717886e4ebaa6a4a494f189d9fdd01e33eb21","message":"add exceptions module info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]}},{"commit":"e9bfc3dd29f914fd91e937f06d7f59c0f91b8449","message":"add time format, dig compatibility, windows colors fix","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["CHANGELOG"]}},{"commit":"f46b33eacf070b4dc72c8d8a66aae49abd149e5f","message":"add windows time format","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/utils.py","tests/test_utils.py"]}},{"commit":"f475fe44df2fb2661c5bce4d1e602a4bba7e87c7","message":"add new time format for systeminfo","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"]}},{"commit":"5fdbe2962d84dad89de23f103d97b76b90450206","message":"make dig compatible with all platforms","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dig.py"]}},{"commit":"ab291b9eef6ed5c8ab59b5652f676178941d5ce5","message":"only force enable colors when running on windows","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]}},{"commit":"fd411fd77273cb7cf872c03ed6a258ccdee4d261","message":"attempt to get colors working on windows","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"]}},{"commit":"b1e95a60a2461dc401ffc299ef6338b65ef12691","message":"remove unnecessary comment","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/cli.py"]}},{"commit":"bb1439f0d53e87f636fba05fbd30c3c79fb16002","message":"use ParseError exception from jc.exceptions module","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["jc/parsers/uname.py"]}},{"commit":"ba963d98a0a2b3a0dfca6b211096d802253da5fe","message":"add exceptions module including ParseError","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/exceptions.py"]}},{"commit":"83440ccb55d0db15b112b8b7d7352493ff516112","message":"error message capitalization","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]}},{"commit":"796f61bfa417afdc6ab48fddbb5502cd0659b840","message":"handle case where the user pipes data and uses magic syntax simultaneously","stats":{"files_changed":1,"insertions":10,"deletions":3,"files":["jc/cli.py"]}},{"commit":"070cac4ae12282458a1e1fc8618ebc473d23cacf","message":"remove commented line","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/cli.py"]}},{"commit":"3ed84f9f42e4e883ddaac28ab49d675600b49424","message":"reorganize main function. remove pass condition.","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/cli.py"]}},{"commit":"a205afb6f355edbb4b98200a980b9601ed0f0658","message":"set run_command_str if run_command is set","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]}},{"commit":"a6d983dd8f3871cbc2391c313340167829a575d9","message":"move run_command_str variable","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]}},{"commit":"b6c8d6d01d740827273265dbb0cfbaf7875ac7f3","message":"add exception handling for filenotfound or other subprocess.popen and json.dumps exceptions","stats":{"files_changed":1,"insertions":45,"deletions":17,"files":["jc/cli.py"]}},{"commit":"b5a5d5b133f1c0df8023776e59697b7579f8c18a","message":"set parser_name for magic syntax use","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]}},{"commit":"da528e7814b0cf25a359c3556d0e286e7bf004b8","message":"move separators to a variable","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"]}},{"commit":"4acebf4f621ac564f82e3a97e6810fbb08a9dbc5","message":"move variables","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/cli.py"]}},{"commit":"4d40808d2b70b7543eadcfd2d35c16ebe91f2f9f","message":"update comments","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/cli.py"]}},{"commit":"c543f00bd3c737f73144bb2980d12793042459b4","message":"simplify piped_output function","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["jc/cli.py"]}},{"commit":"947cf41dfab5811c0e76e371231c59a2d6372752","message":"add exit code info","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]}},{"commit":"8d8c58742e5106c3387a627cd1b1323a76cc9623","message":"formatting","stats":{"files_changed":5,"insertions":21,"deletions":15,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template","templates/readme_template"]}},{"commit":"995ecc9bfb0425b0ee9e4250395b0200b46c1e89","message":"add exit codes section","stats":{"files_changed":3,"insertions":15,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template"]}},{"commit":"21a15225ebff645439b12d6249dc3e28d7bc09ed","message":"add exit codes section","stats":{"files_changed":2,"insertions":18,"deletions":0,"files":["README.md","templates/readme_template"]}},{"commit":"48921d4584068fadb0f776ed7e81c21d89172e2e","message":"ensure exit code never exceeds 255","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"]}},{"commit":"342db45edc94ab1c3b3ae70e7cf4ca4076e2c7eb","message":"fix combined exit codes","stats":{"files_changed":1,"insertions":18,"deletions":10,"files":["jc/cli.py"]}},{"commit":"5f88ecf8443bc6e9a7cda5bc60858f37cc09f4f4","message":"add comments to magic_parser return","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/cli.py"]}},{"commit":"a56aebfe7024914d2c602278964b99d1443de335","message":"remove side-effect comment since it is no longer relevant","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/cli.py"]}},{"commit":"422bb744a82472546d62c72ba05eaa1d18d5068a","message":"update man pages","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]}},{"commit":"c3b814a15f571ac84a8ce0719d7fd88acf814caf","message":"move imports to the top","stats":{"files_changed":1,"insertions":3,"deletions":4,"files":["jc/cli.py"]}},{"commit":"e4574047a0ef6fcd4a47142421a1d05795c7925a","message":"update tests for magic_parser function","stats":{"files_changed":1,"insertions":21,"deletions":21,"files":["tests/test_cli.py"]}},{"commit":"0d7d7951f82627d1fb1e20d1398bd7f88c5ce1be","message":"don't reset sys.argv anymore. check for 'valid_command' instead","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/cli.py"]}},{"commit":"da904e4770a20ae85fc67476ae4a529564d0a3ff","message":"remove final \\n from stderr string when printing","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"19b540041add64fe6650c3634ec869421ffbc769","message":"proof of concept for passing command exit codes when using magic syntax. Needs more testing","stats":{"files_changed":1,"insertions":82,"deletions":51,"files":["jc/cli.py"]}},{"commit":"f2ffb93eeaf4c8b5aa93f3e8808bdc044582e8a0","message":"formatting","stats":{"files_changed":1,"insertions":0,"deletions":10,"files":["tests/test_ping.py"]}},{"commit":"c0c0e05642e0f473cde34178d815978fff8fe1ef","message":"add dig `+noall +answer` support","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]}},{"commit":"966978f17e40a338f982628825f30a19d4b84e4c","message":"add more unparsable line ping tests","stats":{"files_changed":5,"insertions":72,"deletions":0,"files":[".../centos-7.7/ping6-ip-O-p-unparsable.json",".../centos-7.7/ping6-ip-O-p-unparsable.out",".../fixtures/osx-10.14.6/ping6-ip-unparsable.json","tests/fixtures/osx-10.14.6/ping6-ip-unparsable.out","tests/test_ping.py"]}},{"commit":"8ab08a5231e082940a62fcde4be218b7ba94be31","message":"doc update","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]}},{"commit":"48e534fa03b92b2583c5c6269c76651f3aa420cb","message":"add +noall +answer test","stats":{"files_changed":3,"insertions":17,"deletions":2,"files":["tests/fixtures/osx-10.14.6/dig-noall-answer.json","tests/fixtures/osx-10.14.6/dig-noall-answer.out","tests/test_dig.py"]}},{"commit":"61851c1bd02aa82d5d82e68595e45630ead13d34","message":"add support for +noall +answer","stats":{"files_changed":2,"insertions":85,"deletions":3,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]}},{"commit":"3c51b2d83d301b4072bbb12fdba4f60b900573da","message":"add tests for unparsable lines on linux","stats":{"files_changed":3,"insertions":40,"deletions":0,"files":[".../centos-7.7/ping-ip-O-unparsedlines.json",".../centos-7.7/ping-ip-O-unparsedlines.out","tests/test_ping.py"]}},{"commit":"ee3a28528e152c61f05bdf71f264fe38274b4190","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"916bcdae3881fc9c9f9a91c8c901a714cff3e1da","message":"Merge pull request #136 from kellyjonbrazil/master"},{"commit":"efb1d3e6b2db920423511a9dcf4c5e5fd9d6af43","message":"add blog title and minor formatting","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"]}},{"commit":"4e6ae66bacc014e49c4a9229d10dcc8e95de436c","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]}},{"commit":"5ee88e7b679bc163a1916d560be6ff29f51699e8","message":"add use cases section","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["README.md"]}},{"commit":"c3b68903cbd898f80438af342195eec7575aafd3","message":"add use cases section","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["templates/readme_template"]}},{"commit":"fe1f1013a74bdf6b4284f11dd59db8ea17e5e5d1","message":"add use cases section","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["templates/readme_template"]}},{"commit":"fb14f5439f00d5eaf08651c552189fd4be7358d4","message":"fix and tests for unknown or unparsable errors","stats":{"files_changed":4,"insertions":52,"deletions":3,"files":["jc/parsers/ping.py",".../osx-10.14.6/ping-ip-unknown-errors.json",".../osx-10.14.6/ping-ip-unknown-errors.out","tests/test_ping.py"]}},{"commit":"5ca0fc364eb22d583bee5633cdd7183c1d70bb6c","message":"add unparsed_line to docs","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/parsers/ping.md"]}},{"commit":"a1fe7037e5267ec4aced719eff3715085eb35bca","message":"add unparsed_line field if line cannot be parsed","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["jc/parsers/ping.py"]}},{"commit":"c2af7d113ed8e8cf9af985c969cf29858a3c26a9","message":"add ping updates","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["CHANGELOG","docs/parsers/ping.md"]}},{"commit":"ff034e401d5c33efbc3c4bc2f0e386d81eaae7fc","message":"use try/except to make parser more resilient against unknown error types","stats":{"files_changed":1,"insertions":59,"deletions":43,"files":["jc/parsers/ping.py"]}},{"commit":"5abe095beb4b668e5f55fe8c9588677547e4c2a7","message":"update ping docs","stats":{"files_changed":1,"insertions":14,"deletions":3,"files":["docs/parsers/ping.md"]}},{"commit":"33de5f01e638953c83bb0960dc3550ca4547849b","message":"version bump","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["jc/__init__.py","setup.py"]}},{"commit":"8ce155d843806be4ad23491b4401e4eda02e2a1c","message":"add support for error replies in v4 ping on osx and bsd","stats":{"files_changed":5,"insertions":86,"deletions":23,"files":["CHANGELOG","jc/parsers/ping.py",".../fixtures/osx-10.14.6/ping-ip-unreachable.json","tests/fixtures/osx-10.14.6/ping-ip-unreachable.out","tests/test_ping.py"]}},{"commit":"b921d5ec9583c8f8e992613ae2eaf62165722054","message":"initial support for error replies in bsd/osx","stats":{"files_changed":1,"insertions":105,"deletions":6,"files":["jc/parsers/ping.py"]}},{"commit":"e21542aaa2aa5f2f287ddc227df41ae47d761332","message":"Merge pull request #135 from kellyjonbrazil/dev"},{"commit":"6150aae0aeabafba26d9f119406b0660d9221cb6","message":"clarify packaged binaries","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]}},{"commit":"f27b35f37104ad2012c3bddde0bd94941af06894","message":"Merge pull request #131 from kellyjonbrazil/master"},{"commit":"d24f9a885d3954035a98a488671486408f509dca","message":"fix contributing link","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["CONTRIBUTING.md","README.md","templates/readme_template"]}},{"commit":"48dd82c8d1b756c4e08d49b8234b8060080dc035","message":"trigger page build on github pages","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]}},{"commit":"e57167ad1f240de6ec5fc86c51cfb780535cd783","message":"empty commit"},{"commit":"ada91376426ff359c495fb31081404a2cce72b5f","message":"Merge pull request #130 from kellyjonbrazil/dev"},{"commit":"bd428a9fd75327710dce96f3c95f74ab9d1beaad","message":"fix link","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]}},{"commit":"934941332f91d9e2cc4e691b154bb5427166ed30","message":"minor link updates","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","templates/readme_template"]}},{"commit":"0c209dbd108638f89a43801126a332379be9ae8b","message":"Merge pull request #129 from kellyjonbrazil/dev"},{"commit":"56e041aa260b2daf2f5662fae98645a93137adb5","message":"add Practical JSON at the Command Line blog link","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"]}},{"commit":"cf9d48582e4e5df6c8498b916a2f9cf036869f3d","message":"Merge pull request #128 from kellyjonbrazil/master"},{"commit":"92e2252bee00482bb0eeae3074b107d4c8553e4c","message":"fix typo","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]}},{"commit":"fd7861db11e5aaa17c4e7bbce942c0c096116e30","message":"Merge pull request #127 from kellyjonbrazil/dev"},{"commit":"35464bbbfb6b424ef3ee1c855557ada1bf3769fa","message":"date update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]}},{"commit":"db8ddd7f0e0c2a8bd3e545619e81d3d3972a4d7c","message":"fix for scenarios where the default port range didn't always display, or overrode existing port ranges.","stats":{"files_changed":5,"insertions":11,"deletions":17,"files":["jc/man/jc.1.gz","jc/parsers/ufw.py","man/jc.1.gz","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json"]}},{"commit":"72207c54ee5734e3d2d3d1a063c8daf1edaa8815","message":"update ufw app info docs to support multiple apps (ufw app info all)","stats":{"files_changed":3,"insertions":102,"deletions":94,"files":["docs/parsers/ufw_appinfo.md","jc/man/jc.1.gz","man/jc.1.gz"]}},{"commit":"a683f68003ea64dd5e2c4f06b53a1561ad774f12","message":"change schema to a list of dictionaries to support `ufw app info all` use case","stats":{"files_changed":9,"insertions":285,"deletions":202,"files":["EXAMPLES.md","jc/parsers/ufw_appinfo.py","tests/fixtures/generic/ufw-appinfo-msn.json","tests/fixtures/generic/ufw-appinfo-test.json","tests/fixtures/generic/ufw-appinfo-test2.json","tests/fixtures/generic/ufw-appinfo-test3.json","tests/fixtures/ubuntu-18.04/ufw-appinfo-all.json","tests/fixtures/ubuntu-18.04/ufw-appinfo-all.out","tests/test_ufw_appinfo.py"]}},{"commit":"8d2d3db3fa969456342181a226bf54a3f1613542","message":"formatting","stats":{"files_changed":4,"insertions":4,"deletions":0,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"]}},{"commit":"eca785450d1c72687817d09259fa7cd33376fafc","message":"add caveats to readme and manpage","stats":{"files_changed":5,"insertions":34,"deletions":13,"files":["CHANGELOG","README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"]}},{"commit":"5b40a97ce417687b4e37f320b8a3f07dd7fd169c","message":"add caveats to man page","stats":{"files_changed":3,"insertions":13,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template"]}},{"commit":"66cb4e9bde81b9290c1addaf851de5d80a1b0702","message":"update ufw parser docs","stats":{"files_changed":5,"insertions":216,"deletions":234,"files":["EXAMPLES.md","docs/parsers/ufw.md","jc/man/jc.1.gz","jc/parsers/ufw.py","man/jc.1.gz"]}},{"commit":"d1f33645caccdb3a55576081c4d355f997ac033c","message":"update ufw tests","stats":{"files_changed":7,"insertions":26,"deletions":10,"files":["tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw-numbered2.json","tests/fixtures/generic/ufw.json","tests/fixtures/ubuntu-18.04/ufw-numbered.json","tests/fixtures/ubuntu-18.04/ufw-numbered.out","tests/fixtures/ubuntu-18.04/ufw-verbose.json","tests/fixtures/ubuntu-18.04/ufw-verbose.out"]}},{"commit":"5eff65c326675a449afd05a2af0a6c9bcf7b5e23","message":"update schema to support port lists and port range lists. Also support other transports than tcp and udp","stats":{"files_changed":1,"insertions":85,"deletions":268,"files":["jc/parsers/ufw.py"]}},{"commit":"929c38715d87bf9dd689507d319c22b90871ae1c","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]}},{"commit":"8c91a7b7601a967cd9d8096433ffd4ad62b65ceb","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CONTRIBUTING.md"]}},{"commit":"14289ecd6c022ad204444dff5b5e48f6024a5d0d","message":"more timezone info","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CONTRIBUTING.md"]}},{"commit":"b833c44783eb32f2fad24ca205b5b7eab854750f","message":"add ufw-appinfo parser","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]}},{"commit":"e23aa818eaa6d1a389ddef7dd2ad8f62b9f6ff25","message":"add tests section and timezone info","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["CONTRIBUTING.md"]}},{"commit":"473d919c1350a8dc34d233033a5a7d12c928e42d","message":"add another ufw test sample","stats":{"files_changed":4,"insertions":32,"deletions":0,"files":["runtests.sh","tests/fixtures/generic/ufw-numbered2.json","tests/fixtures/generic/ufw-numbered2.out","tests/test_ufw.py"]}},{"commit":"9f925d6ac989a4f21a8c00c84fcf97dfb141e8c2","message":"doc update","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]}},{"commit":"f6ca32b3a31f314fa0b31d9e8b5494491b928f7e","message":"update ufw docs with a note on lists of ports","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/ufw.md","jc/parsers/ufw.py"]}},{"commit":"4cbe84c3d6ac8a3b594feb525460f2a68f5d62b2","message":"add ufw-appinfo tests","stats":{"files_changed":9,"insertions":110,"deletions":0,"files":["tests/fixtures/generic/ufw-appinfo-msn.json","tests/fixtures/generic/ufw-appinfo-msn.out","tests/fixtures/generic/ufw-appinfo-test.json","tests/fixtures/generic/ufw-appinfo-test.out","tests/fixtures/generic/ufw-appinfo-test2.json","tests/fixtures/generic/ufw-appinfo-test2.out","tests/fixtures/generic/ufw-appinfo-test3.json","tests/fixtures/generic/ufw-appinfo-test3.out","tests/test_ufw_appinfo.py"]}},{"commit":"ffac5bf9d381305daa86e546f8570be092e5ff34","message":"doc update","stats":{"files_changed":3,"insertions":12,"deletions":12,"files":["docs/parsers/ufw.md","jc/man/jc.1.gz","man/jc.1.gz"]}},{"commit":"9aa424f9f8c7e4e0dc29e2c58dac481098beba7d","message":"fix ufw example","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["EXAMPLES.md"]}},{"commit":"0a8495c68e427e39bbda957dd933fa2a461092e7","message":"update docs","stats":{"files_changed":1,"insertions":12,"deletions":15,"files":["jc/parsers/ufw.py"]}},{"commit":"6aea066cf024f92adf4b94eebc7d51430c22332c","message":"make normalized list appear only when data exists. set magic commands","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/ufw_appinfo.py"]}},{"commit":"ff3c2d809ec3ea6e556c302909a228ee670578c9","message":"add ufw-appinfo to docs","stats":{"files_changed":6,"insertions":176,"deletions":25,"files":["EXAMPLES.md","README.md","docs/parsers/ufw_appinfo.md","jc/man/jc.1.gz","jc/parsers/ufw_appinfo.py","man/jc.1.gz"]}},{"commit":"145059fc8946b7026184139baea143c2869bc4e7","message":"clean up output if sections are blank","stats":{"files_changed":1,"insertions":20,"deletions":8,"files":["jc/parsers/ufw_appinfo.py"]}},{"commit":"20e5c19de448c1b979497817c887d8d2d6487839","message":"fix key error if tcp or udp don't exist","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/ufw_appinfo.py"]}},{"commit":"4c98fd4b877c54e1cf7d285a29e178321be12f7e","message":"doc update","stats":{"files_changed":2,"insertions":101,"deletions":1,"files":["docs/parsers/ufw_appinfo.md","jc/parsers/ufw_appinfo.py"]}},{"commit":"125e54213e8d4dcfe2e3271456af80b3f79c0544","message":"update schema and add normalized fields","stats":{"files_changed":1,"insertions":105,"deletions":48,"files":["jc/parsers/ufw_appinfo.py"]}},{"commit":"0152e0665f87833250561d743144af35416992f8","message":"initial working ufw-appinfo parser","stats":{"files_changed":2,"insertions":215,"deletions":0,"files":["jc/cli.py","jc/parsers/ufw_appinfo.py"]}},{"commit":"0679bcbc560ea3575555d8546afdd4e2474d05d7","message":"fix ufw tests","stats":{"files_changed":5,"insertions":31,"deletions":5,"files":["tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json","tests/fixtures/ubuntu-18.04/ufw-numbered.json","tests/fixtures/ubuntu-18.04/ufw-verbose.json","tests/test_ufw.py"]}},{"commit":"5500648aa0886ea5089856e5b33d7c8ebd78d5b0","message":"fix ufw docs for int conversions and service behavior","stats":{"files_changed":3,"insertions":46,"deletions":46,"files":["EXAMPLES.md","docs/parsers/ufw.md","jc/parsers/ufw.py"]}},{"commit":"bb50caad4dfaefa309e747fd05b650186c5a80f4","message":"fix prefix int conversions. don't reset _transport if service is really a list of ports","stats":{"files_changed":3,"insertions":31,"deletions":4,"files":["jc/parsers/ufw.py","tests/fixtures/ubuntu-18.04/ufw-numbered.out","tests/fixtures/ubuntu-18.04/ufw-verbose.out"]}},{"commit":"7eef5d94d591a3f70f6638b1b30f952a3bf35f9d","message":"ufw doc update","stats":{"files_changed":3,"insertions":5,"deletions":0,"files":["EXAMPLES.md","jc/man/jc.1.gz","man/jc.1.gz"]}},{"commit":"74f623f8d607c050db8f62ea4996c4e6aae43268","message":"add support for rule comments and LIMIT and REJECT actions","stats":{"files_changed":5,"insertions":43,"deletions":11,"files":["docs/parsers/ufw.md","jc/parsers/ufw.py","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json","tests/fixtures/generic/ufw.out"]}},{"commit":"f638aca092475bbae14fed765e90435c093fcb8b","message":"add deb package name fix","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]}},{"commit":"da35eaf80ad4f11e7482fc4734db4b2265e50548","message":"formatting","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["docs/parsers/ufw.md","jc/man/jc.1.gz","man/jc.1.gz"]}},{"commit":"ade0e8e8fc18ff9a0dd406206a85238f1f5a739d","message":"add ufw tests","stats":{"files_changed":7,"insertions":107,"deletions":0,"files":["tests/fixtures/generic/ufw-inactive.json","tests/fixtures/generic/ufw-inactive.out","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw-numbered.out","tests/fixtures/generic/ufw.json","tests/fixtures/generic/ufw.out","tests/test_ufw.py"]}},{"commit":"90076090f05a1f03e2fbff307418ee18d7d046ef","message":"fix int conversions if 'rules' key does not exist","stats":{"files_changed":1,"insertions":7,"deletions":5,"files":["jc/parsers/ufw.py"]}},{"commit":"23635def8b654097178f73ed1b57fc50965142d5","message":"add ufw to docs","stats":{"files_changed":6,"insertions":306,"deletions":4,"files":["README.md","docs/parsers/ping.md","docs/parsers/ufw.md","docs/utils.md","jc/man/jc.1.gz","man/jc.1.gz"]}},{"commit":"4eeec087bde98f90ab8425473d1fbeee6834852e","message":"add ufw example","stats":{"files_changed":1,"insertions":115,"deletions":0,"files":["EXAMPLES.md"]}},{"commit":"733196103897a1d84d242324ddcf96e783320329","message":"update docs with new examples that have `to_service` always existing.","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/ufw.py"]}},{"commit":"e4acb3d5b70a7d75741ef3e35cd6750d1362a80f","message":"always make to/from_service None if ports are assigned","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/ufw.py"]}},{"commit":"c60549a9947d5684bbfa58223bfbcfc40a3ed479","message":"change field name from to/from_subnet to to/from_ip_prefix","stats":{"files_changed":1,"insertions":29,"deletions":29,"files":["jc/parsers/ufw.py"]}},{"commit":"d46fc8bbfa15a80a1af6c64f70230f858c215223","message":"set to/from_transport to None if to/from_service is set","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/parsers/ufw.py"]}},{"commit":"b133d1f90d49362594508d8c475663754f0e7675","message":"strip interface value","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/ufw.py"]}},{"commit":"5be615a97e7c145c8351764234ac591028560c34","message":"add examples for docs","stats":{"files_changed":1,"insertions":219,"deletions":9,"files":["jc/parsers/ufw.py"]}},{"commit":"ea1d820f96321ddf4084b54ee2fdf397295beb21","message":"convert integer fields","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/parsers/ufw.py"]}},{"commit":"47e262cf7200b02ff0af97a70ffa6bec286c8f39","message":"clean up fields","stats":{"files_changed":1,"insertions":59,"deletions":14,"files":["jc/parsers/ufw.py"]}},{"commit":"eec673be9092e382694aa02682564510ce4e7f90","message":"working raw parser","stats":{"files_changed":1,"insertions":88,"deletions":3,"files":["jc/parsers/ufw.py"]}},{"commit":"9a0fb2a7c87e6fde0cc0d84fa8a1f131e28ea732","message":"parse major sections","stats":{"files_changed":1,"insertions":157,"deletions":0,"files":["jc/parsers/ufw.py"]}},{"commit":"b5145d6c14d7a51e7cfdebe126c9689dc90f7b27","message":"version bump to v1.15.3","stats":{"files_changed":4,"insertions":8,"deletions":4,"files":["CHANGELOG","jc/__init__.py","jc/cli.py","setup.py"]}},{"commit":"9747ca414dfb8218389c7b2199a080edabc2a184","message":"minor optimization to convert_to_int(). No longer runs through convert_to_float(), but uses standard float() function.","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/utils.py"]}},{"commit":"312d465b61a15592cc70d3734ad747b9a2be10ae","message":"update link","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"]}},{"commit":"7dcf87d24ad40eba6ba98de2b4b2bf177a76cd71","message":"formatting","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping.py"]}},{"commit":"cf3cfd16a9de05f30303b5952fbe609cde842d2e","message":"rename tests","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_utils.py"]}},{"commit":"fcc7e5294973d1a18943fa2ce2e836b0fe757d95","message":"Merge pull request #123 from kellyjonbrazil/dev"},{"commit":"3ab9d480149a692510ab9e0ac8e745b674683e3d","message":"update changelog","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CHANGELOG"]}},{"commit":"7eddf41c5f6310264359cd6d78bdfa4b65af7d06","message":"dont round up int conversions and fix tests","stats":{"files_changed":11,"insertions":96,"deletions":9,"files":["jc/man/jc.1.gz","jc/utils.py","man/jc.1.gz","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/df.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/free-h.json","tests/test_utils.py"]}},{"commit":"27a196c93862bd737603cfe402b35529eb412954","message":"doc update","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"]}},{"commit":"e4324f05fb6f89c34fa1567e70d8636457623edb","message":"fix indentation in doc","stats":{"files_changed":2,"insertions":14,"deletions":14,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]}},{"commit":"d36b332bd78b5bf5979cdc59b31da08d8e4104d7","message":"use jc.utils for conversions","stats":{"files_changed":53,"insertions":196,"deletions":274,"files":["docs/parsers/systemctl_lj.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/wc.md","docs/parsers/who.md","docs/utils.md","jc/parsers/acpi.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/hash.py","jc/parsers/hciconfig.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl_lj.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/utils.py"]}},{"commit":"1f034826f69c461495f7a302cc8fe35e3052e72f","message":"use jc.utils for conversions","stats":{"files_changed":42,"insertions":94,"deletions":185,"files":["docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","tests/fixtures/centos-7.7/ls-alh.json","tests/fixtures/centos-7.7/lsof-sudo.json","tests/fixtures/centos-7.7/lsof.json","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/ubuntu-18.04/ls-alh.json","tests/fixtures/ubuntu-18.04/lsof-sudo.json","tests/fixtures/ubuntu-18.04/lsof.json"]}},{"commit":"246c707c98d3128b4e38f5c4b23a1e0ceedc0b0c","message":"use jc.utils conversions","stats":{"files_changed":46,"insertions":190,"deletions":196,"files":["CHANGELOG","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/df.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/hash.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/utils.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/hash.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/utils.py","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/osx-10.11.6/df-h.json","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/free-h.json"]}},{"commit":"b5d8968144e76090870f8563dc1bce910fba668c","message":"add convert_to_int function","stats":{"files_changed":1,"insertions":19,"deletions":0,"files":["jc/utils.py"]}},{"commit":"f7b9fbefdde6973077573fec02342eb9946789c6","message":"add query_size info for dig","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]}},{"commit":"b1fc4533833ca25f59869bfec8ac114bf49c7847","message":"fix _IfconfigParser name","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"]}},{"commit":"7581c8d0f4262fc6a05240bb21ffe533b153f6e4","message":"add query_size field. handle user-specified dig output better - especially when querying dnssec","stats":{"files_changed":3,"insertions":45,"deletions":32,"files":["docs/parsers/dig.md","jc/parsers/dig.py","tests/fixtures/generic/dig-edns3.json"]}},{"commit":"32bf8ad6f4fff83fdfd83d66c1ba8f1af5a65a90","message":"update dig docs","stats":{"files_changed":4,"insertions":52,"deletions":24,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/dig.md","jc/parsers/dig.py"]}},{"commit":"b083bcc10fa1105fc09ce8d2c3297aa5575c9d51","message":"update man page","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]}},{"commit":"4f6fdd120d23468270c1d7111e4ef71b87759a1c","message":"use dig as example","stats":{"files_changed":2,"insertions":134,"deletions":100,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"eb0038be2490053d32803d30e1c3d4d34509d130","message":"update dig examples","stats":{"files_changed":1,"insertions":40,"deletions":19,"files":["EXAMPLES.md"]}},{"commit":"7ecdf819fa37c38ae6159ad8e7bc973ee4f34559","message":"remove dig example from readme,","stats":{"files_changed":2,"insertions":0,"deletions":84,"files":["README.md","templates/readme_template"]}},{"commit":"c6aa4d083550d25bcb621cad524047cfd6a08217","message":"update docs with new dig parser examples","stats":{"files_changed":6,"insertions":252,"deletions":317,"files":["README.md","docs/parsers/dig.md","jc/man/jc.1.gz","jc/parsers/dig.py","man/jc.1.gz","templates/readme_template"]}},{"commit":"7c584b89a6e6b924d53d50103b97f0c2405c33b1","message":"add additional section","stats":{"files_changed":15,"insertions":352,"deletions":52,"files":["jc/parsers/dig.py","tests/fixtures/generic/dig-additional.json","tests/fixtures/generic/dig-additional.out","tests/fixtures/generic/dig-additional2.json","tests/fixtures/generic/dig-additional2.out","tests/fixtures/generic/dig-additional3.json","tests/fixtures/generic/dig-additional3.out","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/generic/dig-edns.json","tests/fixtures/generic/dig-edns.out","tests/fixtures/generic/dig-edns2.json","tests/fixtures/generic/dig-edns2.out","tests/fixtures/generic/dig-edns3.json","tests/fixtures/generic/dig-edns3.out","tests/test_dig.py"]}},{"commit":"c166c0bfdafa922f57f021fa4d16e467fca02d58","message":"add opt_pseudosection section to output and fix existing tests","stats":{"files_changed":14,"insertions":55,"deletions":21,"files":["jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json"]}},{"commit":"a8dd3f7802bfe8fd3ffbedf89af45ddc580ee78d","message":"working dig axfr fixes","stats":{"files_changed":5,"insertions":54,"deletions":281,"files":["CHANGELOG","jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-axfr.json"]}},{"commit":"3b0e2f03f3b11398ff57b1daed542faaf0b80a62","message":"clean up examples","stats":{"files_changed":2,"insertions":24,"deletions":23,"files":["jc/cli.py","templates/manpage_template"]}},{"commit":"8390ae48c88ab1c7d5acbf40c0e60606953817bd","message":"fix server entry when IPv6 address is in value (maxsplit on colons)","stats":{"files_changed":7,"insertions":8,"deletions":8,"files":["jc/parsers/dig.py","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json"]}},{"commit":"2db82c0a7e19d596c876ede8a8ff106aaa733ee5","message":"add systeminfo example","stats":{"files_changed":1,"insertions":66,"deletions":0,"files":["EXAMPLES.md"]}},{"commit":"61479540756704f10853233300ceae8f954a8a95","message":"update tests","stats":{"files_changed":2,"insertions":5,"deletions":0,"files":["tests/test_systeminfo.py","tests/test_utils.py"]}},{"commit":"691df271fcfe057ae4b75ad40869e23deb37b886","message":"add info docstring","stats":{"files_changed":4,"insertions":2,"deletions":1,"files":["docs/parsers/systeminfo.md","jc/man/jc.1.gz","jc/parsers/systeminfo.py","man/jc.1.gz"]}},{"commit":"89f52b95f7055da9d7b5fa8dce0923d4c3435bd2","message":"update systeminfo parser with updated timestamps, normalized blank fields, and new doc style","stats":{"files_changed":13,"insertions":467,"deletions":821,"files":["README.md","docs/parsers/systeminfo.md","jc/man/jc.1.gz","jc/parsers/systeminfo.py","jc/utils.py","man/jc.1.gz",".../windows/windows-10/systeminfo-hyperv-utc.json",".../windows/windows-10/systeminfo-hyperv-utc.out",".../windows/windows-10/systeminfo-hyperv.json","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-10/systeminfo.out",".../windows/windows-2012r2/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"]}},{"commit":"146acc1bf69c402e38c2f1bc842b84e6cff7e2cb","message":"rename functions to make them private","stats":{"files_changed":1,"insertions":23,"deletions":29,"files":["jc/parsers/systeminfo.py"]}},{"commit":"c4a345f59aa090336b4e80f181493cd5bc2c17c5","message":"Merge pull request #106 from jon-rd/j/systeminfo"},{"commit":"dfd2703f75b907ba865fff266d0742d8931bc2d3","message":"bump dev to v1.15.2","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"]}},{"commit":"325fab2de7b8a4bfc452ab8d3cf333d47fdf4989","message":"update documentation for parsed structures","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/systeminfo.py"]}},{"commit":"f3d00cf38ad15aeda7eaa5644ebc30ff33de6a29","message":"append mb to memory key names; adjust expected timestamps to utc tz","stats":{"files_changed":5,"insertions":56,"deletions":48,"files":["jc/parsers/systeminfo.py",".../windows/windows-10/systeminfo-hyperv.json","tests/fixtures/windows/windows-10/systeminfo.json",".../windows/windows-2012r2/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"]}},{"commit":"14838f7f5d780896f1318cac2c3f34d249a158d4","message":"update schema with nic, hyperv, and process changes","stats":{"files_changed":9,"insertions":956,"deletions":116,"files":["jc/parsers/systeminfo.py","jc/utils.py",".../windows/windows-10/systeminfo-hyperv.json",".../windows/windows-10/systeminfo-hyperv.out","tests/fixtures/windows/windows-10/systeminfo.json",".../windows/windows-2012r2/systeminfo.json",".../fixtures/windows/windows-2012r2/systeminfo.out","tests/fixtures/windows/windows-7/systeminfo.json","tests/test_systeminfo.py"]}},{"commit":"af74047b81776c2ea32d82f9145ab60c346c8203","message":"update schema based on processor/hotfix changes","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/systeminfo.py"]}},{"commit":"660c59129cf4ba7889fb3c6fbafd9dd9b479ccd9","message":"Add parsing of processors/hotfixs","stats":{"files_changed":3,"insertions":41,"deletions":9,"files":["jc/parsers/systeminfo.py","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"]}},{"commit":"89a88e186ed71d84ea802cf08ab756b49cee3225","message":"Add systeminfo.md file","stats":{"files_changed":1,"insertions":152,"deletions":0,"files":["docs/parsers/systeminfo.md"]}},{"commit":"f861cf95b96a224a0a11f2cdc3261b94c02415ef","message":"Change to v0.5; add parser to cli.py; add to docgen","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["jc/cli.py","jc/parsers/systeminfo.py"]}},{"commit":"ee8f06cbdb03f8254bb6a3c56fa5b8a64ff9ca77","message":"Add windows systeminfo command parser","stats":{"files_changed":6,"insertions":688,"deletions":0,"files":["jc/parsers/systeminfo.py","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-10/systeminfo.out","tests/fixtures/windows/windows-7/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.out","tests/test_systeminfo.py"]}},{"commit":"a2e8b3c7b681605916b8950d035ee19889a125a5","message":"Merge pull request #121 from kellyjonbrazil/master"},{"commit":"6c838460752c7131f75cdab2da07266fee492060","message":"Merge pull request #120 from kellyjonbrazil/dev"},{"commit":"e0681eebb9881dc0ffddb478224455f434919104","message":"Merge branch 'master' into dev"},{"commit":"e5732d1cea1c882f6486cf288e45edb993989ea0","message":"update changelog","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]}},{"commit":"6e7ae3cd3f003fe9e1e587b7f8ebd16ba0895014","message":"formatting of timedatectl docs","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/timedatectl.md","jc/man/jc.1.gz","jc/parsers/timedatectl.py","man/jc.1.gz"]}},{"commit":"f95632d1aaee545ae0ce081ca0617be135c09220","message":"add install_date calculated fields","stats":{"files_changed":7,"insertions":83,"deletions":62,"files":["EXAMPLES.md","docs/parsers/rpm_qi.md","jc/man/jc.1.gz","jc/parsers/rpm_qi.py","man/jc.1.gz","tests/fixtures/centos-7.7/rpm-qai.json","tests/fixtures/centos-7.7/rpm-qi-package.json"]}},{"commit":"2f8b7b26e59bcd745fa1fcadb373455c7d404286","message":"update docs for v1.15.1","stats":{"files_changed":3,"insertions":1,"deletions":2,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"]}},{"commit":"10292f7502e4cb1c53b53ed39fed9288044c2ef8","message":"Merge pull request #119 from kellyjonbrazil/dpkg_l-fix"},{"commit":"aef54705f5267c633e0778e8dce0065978083139","message":"add _l to module name","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["docs/parsers/dpkg_l.md"]}},{"commit":"bba5980fa53767716bc35d8c904e7a2341346eeb","message":"man page update","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]}},{"commit":"977425abfb05a63ee372df36124ac6ba6a5a0aaa","message":"add _l to package name in docs","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"]}},{"commit":"37a3565a1bbd3d01663602673fed651509e69d8c","message":"Merge pull request #118 from kellyjonbrazil/rpm-qi-doc-fix"},{"commit":"13deb8bfb6e77aaf86942f0be87b59d06ee2a97c","message":"fix rpm-qi docs","stats":{"files_changed":2,"insertions":3,"deletions":194,"files":["docs/parsers/rpm_qai.md","docs/parsers/rpm_qi.md"]}},{"commit":"a3ed9d075aff41599452c3094f7d057c25fc8f89","message":"remove old parser doc","stats":{"files_changed":1,"insertions":0,"deletions":191,"files":["docs/parsers/rpm_qai.md"]}},{"commit":"fb0ced549e021916dee7da39859e8f85c8216e16","message":"fix rpm-qi docs (used underscore instead of dash in name)","stats":{"files_changed":4,"insertions":6,"deletions":6,"files":["docs/parsers/rpm_qi.md","jc/man/jc.1.gz","jc/parsers/rpm_qi.py","man/jc.1.gz"]}},{"commit":"7eb31bc7d290fcd09e53524ebbb11e59110df6a0","message":"update airport_s docs","stats":{"files_changed":4,"insertions":39,"deletions":48,"files":["docs/parsers/airport_s.md","jc/man/jc.1.gz","jc/parsers/airport_s.py","man/jc.1.gz"]}},{"commit":"6a06a3914273853742ac57433398968ccf7d9897","message":"use herestring instead of echo -e into jq","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["docgen.sh"]}},{"commit":"bdcdaee6c5299ea0750512e0943c7f58f56f2e35","message":"Merge pull request #117 from kellyjonbrazil/doc_update"},{"commit":"605353fdce3b8b5986d20a35d05f7210a6df0730","message":"add new docs","stats":{"files_changed":70,"insertions":1710,"deletions":2656,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md"]}},{"commit":"490c9e17699e8e4f70dcc1612e1a808f86e24b0a","message":"add more cli tests for magic command","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["tests/test_cli.py"]}},{"commit":"6ebebb659dc93daeaa869752ad135f6e1d2cb1ee","message":"update changelog","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"]}},{"commit":"0e70c5ee12e96f04a89de05153a2da9cd39f98ad","message":"update documentation link","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1.gz"]}},{"commit":"cd531acf6045660e022c932f62a01d4084433ad4","message":"clean up comment","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["docgen.sh"]}},{"commit":"908ac1f61c5cc011d05d550f933940dfed4431f2","message":"update docs - remove compatibility section since it is now automatically generated from info()","stats":{"files_changed":143,"insertions":0,"deletions":690,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/man/jc.1.gz","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","man/jc.1.gz"]}},{"commit":"f5c7e7e4046bc57b4fcad99390e31b121a7106ba","message":"add updated docs with home link and parser info at the bottom","stats":{"files_changed":70,"insertions":350,"deletions":0,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md"]}},{"commit":"001c700b5bd280cb1cb9e54169ae5f1b7918c257","message":"add home link to the top of the md file","stats":{"files_changed":3,"insertions":2,"deletions":1,"files":["docgen.sh","jc/man/jc.1.gz","man/jc.1.gz"]}},{"commit":"9b41e9bef0ff099e70f37fddc8fe2c6bd8457b19","message":"Add parser information header","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"]}},{"commit":"34bd6e32dc0c0bf7dfeedaadbf04115f43e9d060","message":"pull each parser as a json object into a bash array and iterate on it to add supplementary information like version, author, and compatibility","stats":{"files_changed":1,"insertions":20,"deletions":4,"files":["docgen.sh"]}},{"commit":"c5d058490beaa8f59875a8acfd7a400764768639","message":"move parser doc printing to its own function","stats":{"files_changed":1,"insertions":22,"deletions":13,"files":["jc/cli.py"]}},{"commit":"dd1ae6d9a7de5421830232deb42d933b9a652672","message":"add man page inside the pypi package for easier packaging in homebrew","stats":{"files_changed":4,"insertions":3,"deletions":1,"files":["MANIFEST.in","jc/man/jc.1.gz","man/jc.1.gz","mangen.py"]}},{"commit":"d8ea9bde823a7f5c146741150c3211737345c7dd","message":"doc update","stats":{"files_changed":3,"insertions":16,"deletions":16,"files":["docs/parsers/w.md","jc/parsers/w.py","man/jc.1.gz"]}},{"commit":"125edc9c906dc3650b6a683ed13830075acb7ab6","message":"bail out for -h, -a, and -v in magic()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]}},{"commit":"15ea43e394a9004f8ccec208b3a066c76e241866","message":"add man file to package for easier packaging in homebrew","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["MANIFEST.in"]}},{"commit":"b55b02687c00d1c50e30f30c9b9a7f36f783eb0f","message":"doc update","stats":{"files_changed":19,"insertions":371,"deletions":441,"files":["CHANGELOG","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","man/jc.1.gz","setup.py"]}},{"commit":"da611f0ac6321f7f52fdbc419f8b155c74393c28","message":"update docs","stats":{"files_changed":4,"insertions":63,"deletions":50,"files":["jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","man/jc.1.gz"]}},{"commit":"b8b8dfead4fdc4285585c44c2ebce3bdd42b2e7c","message":"update docs","stats":{"files_changed":61,"insertions":1501,"deletions":1848,"files":["docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py"]}},{"commit":"4290a3cbd135cacbf63664dc30768017ebbed28d","message":"make IfconfigParser class private","stats":{"files_changed":2,"insertions":3,"deletions":9,"files":["docs/parsers/ifconfig.md","jc/parsers/ifconfig.py"]}},{"commit":"a5e2203cee6a7bc398cf280f57d37638eeb1d2d8","message":"update ifconfig doc","stats":{"files_changed":3,"insertions":2,"deletions":1,"files":["docs/parsers/ifconfig.md","jc/parsers/ifconfig.py","man/jc.1.gz"]}},{"commit":"e28c08b1361161cfd123b9ebc11fa1ffa87d658f","message":"update documentation","stats":{"files_changed":46,"insertions":976,"deletions":1209,"files":["docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","man/jc.1.gz"]}},{"commit":"a4b6846f63b43168085275d73940265940badf46","message":"man update","stats":{"files_changed":2,"insertions":0,"deletions":467,"files":["man/jc.1","man/jc.1.gz"]}},{"commit":"2bc830786114fd57619f34b936dcf6e0bed7a109","message":"Merge branch 'master' into dev"},{"commit":"9b39917c798ed0310c9b82d87172cbf6d24ba111","message":"update docstrings for new help functionality","stats":{"files_changed":17,"insertions":391,"deletions":453,"files":["README.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","jc/cli.py","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","man/jc.1","templates/manpage_template","templates/readme_template"]}},{"commit":"57c13cc0a38ad89fda8b0e362bd6487257d0a26a","message":"add support for parser help","stats":{"files_changed":1,"insertions":23,"deletions":3,"files":["jc/cli.py"]}},{"commit":"b7355fd30d992a1bcc90227f5a1b02be073829e7","message":"new docstring format for improved documentation","stats":{"files_changed":2,"insertions":37,"deletions":48,"files":["docs/parsers/arp.md","jc/parsers/arp.py"]}},{"commit":"93ae309e407b26820b9f05b5b331d05fc77df57f","message":"bump version to 1.15.1","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/__init__.py","man/jc.1"]}},{"commit":"5d8f8365e24a7c3a587d4e71ebba4876de08203b","message":"gzip man page","stats":{"files_changed":3,"insertions":9,"deletions":461,"files":["man/jc.1","man/jc.1.gz","mangen.py"]}},{"commit":"f26909eefb236e9ebf63be53cd86ae13cc3d9ea3","message":"formatting","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["docs/parsers/dir.md"]}},{"commit":"55bfbb2797ede3aefbb14ecab950b108b1895ccc","message":"formatting","stats":{"files_changed":2,"insertions":5,"deletions":6,"files":["EXAMPLES.md","jc/parsers/dir.py"]}},{"commit":"8970b8342a855203aef649b60dad3e49a1d7fd2a","message":"Merge pull request #115 from kellyjonbrazil/master"},{"commit":"5285e699c30fdeaf56068f5a03ef1d1d33fa673c","message":"fix rpm-qi parser name","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","jc/cli.py","man/jc.1"]}},{"commit":"275f3860d5870303235b651d42650256e4db8ada","message":"Merge pull request #114 from kellyjonbrazil/dev"},{"commit":"a73fdb7478965f0f2c841ac01b2762db80ad0786","message":"update dates","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["CHANGELOG","man/jc.1"]}},{"commit":"f2d746403a0ed764f931ae9e14d180bab107dcca","message":"typo fix","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/rpm_qi.md","jc/parsers/rpm_qi.py"]}},{"commit":"b7dbf2c49be4beb793495a0aaee7f05dbea5a3a6","message":"doc formatting","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["jc/utils.py"]}},{"commit":"21f3c97788826e79b0c387f877c5adf269318e97","message":"rename rpm_qai to rpm_qi","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"]}},{"commit":"14b727cc717d04fefba1cc31b6f29b549ced986f","message":"add rpm_qi tests","stats":{"files_changed":3,"insertions":73,"deletions":0,"files":["tests/fixtures/centos-7.7/rpm-qi-package.json","tests/fixtures/centos-7.7/rpm-qi-package.out","tests/test_rpm_qai.py"]}},{"commit":"abee226591ed4ae37351efc995017d28b27827d9","message":"rename rpm_qia to rpm_qi","stats":{"files_changed":5,"insertions":205,"deletions":14,"files":["README.md","docs/parsers/rpm_qi.md","jc/cli.py","jc/parsers/{rpm_qai.py => rpm_qi.py}","man/jc.1"]}},{"commit":"293ad39f4bcf326186dd917d8bc58d3964e5e4d6","message":"typo fix","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]}},{"commit":"92443025811019f616f596abb60a2889f604c122","message":"rpm parser doc update","stats":{"files_changed":4,"insertions":7,"deletions":6,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/rpm_qai.md","jc/parsers/rpm_qai.py"]}},{"commit":"753cac25fb1e7e6cd2c742afa8d45ced068ea91d","message":"only add description if it exists","stats":{"files_changed":1,"insertions":6,"deletions":3,"files":["jc/parsers/rpm_qai.py"]}},{"commit":"0548263e898bf14f93d2fa423c0f0a9d9f2ff567","message":"add rpm -qai parser","stats":{"files_changed":8,"insertions":10468,"deletions":0,"files":["EXAMPLES.md","README.md","docs/parsers/rpm_qai.md","jc/cli.py","jc/parsers/rpm_qai.py","man/jc.1","tests/fixtures/centos-7.7/rpm-qai.json","tests/fixtures/centos-7.7/rpm-qai.out"]}},{"commit":"53776a9bf894988d6ef9221a62ab8b816c89560c","message":"note -a output is JSON","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["man/jc.1","templates/manpage_template"]}},{"commit":"cc7def9b76a7fa6de1e11b584676820f3acb0257","message":"add OSX finger tests","stats":{"files_changed":3,"insertions":18,"deletions":0,"files":["tests/fixtures/osx-10.14.6/finger.json","tests/fixtures/osx-10.14.6/finger.out","tests/test_finger.py"]}},{"commit":"11a4422c25ed905f33475677bcc2f59f49c62a23","message":"add centos 7.7 finger tests","stats":{"files_changed":3,"insertions":51,"deletions":0,"files":["tests/fixtures/centos-7.7/finger.json","tests/fixtures/centos-7.7/finger.out","tests/test_finger.py"]}},{"commit":"3a44785260514227b541530baf3e14b6c7ebe86a","message":"del details key if details are blank","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/finger.py"]}},{"commit":"e0d430c26c38db8de5a32741e05df412cffe45b7","message":"update -r raw option info","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]}},{"commit":"417b70020accfa4910016e9d3d12690a5488f6f5","message":"add idle time fields to finger parser","stats":{"files_changed":5,"insertions":129,"deletions":22,"files":["EXAMPLES.md","docs/parsers/finger.md","jc/parsers/finger.py","tests/fixtures/ubuntu-18.04/finger.json","tests/fixtures/ubuntu-18.04/finger.out"]}},{"commit":"7b29c464b72ef9a79bd872dab92cf65016490bcc","message":"date updated","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]}},{"commit":"26d5529d86e4e459ad94226465c3697a050af0ac","message":"remove aix support, add note for -s support. schema update","stats":{"files_changed":1,"insertions":10,"deletions":7,"files":["docs/parsers/finger.md"]}},{"commit":"852103c478321b84ffbbc0a876d5ece0c0881e1f","message":"tweak regex to support arbitrary 'detail' data","stats":{"files_changed":1,"insertions":27,"deletions":14,"files":["jc/parsers/finger.py"]}},{"commit":"26a115421b0888e23f4348f1124e2ef7b39df4cc","message":"add finger parser","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["CHANGELOG"]}},{"commit":"755b941a9aa602d95d9bc599f5c64e05f9e6216d","message":"doc update","stats":{"files_changed":3,"insertions":35,"deletions":30,"files":["EXAMPLES.md","docs/parsers/finger.md","jc/parsers/finger.py"]}},{"commit":"fd1ca82d86649adeb84968142665e5e4fae3fa0f","message":"add finger parser","stats":{"files_changed":5,"insertions":263,"deletions":0,"files":["README.md","docs/parsers/finger.md","jc/cli.py","jc/parsers/finger.py","man/jc.1"]}},{"commit":"6fe175344fc61d4996a9ea20f6c5d429efb1fac7","message":"change examples link to github.io","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]}},{"commit":"3590cda13a68616ee7eb8c85c5554ffb3fef036d","message":"docs formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/last.md","jc/parsers/last.py"]}},{"commit":"2f1011dd85ec9b3550138ac4a4e1729fa5b4fe17","message":"readme update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"2b155261b3f6e4879b592f5bc052649ded5e3d69","message":"use new github.io links for documentation","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"]}},{"commit":"02f4d606d0a446c7cc74aedac6035ee79805950d","message":"add documentation links to README.md","stats":{"files_changed":2,"insertions":69,"deletions":69,"files":["README.md","templates/readme_template"]}},{"commit":"577811f00b7fcd0396bb0e26a2985709bd2c65a0","message":"Set theme jekyll-theme-cayman","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/_config.yml"]}},{"commit":"b4098d67a3a4a617d42c1389e0a88833c77b89b4","message":"latest","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]}},{"commit":"88bd7554aeb511c19e55dc3dde9c9376efb0485b","message":"add status messages","stats":{"files_changed":2,"insertions":8,"deletions":3,"files":["docgen.sh","updatedocs.sh"]}},{"commit":"b5ec16c5cafb78db093861cc30d9646207f2227a","message":"formatting","stats":{"files_changed":2,"insertions":0,"deletions":8,"files":["mangen.py","readmegen.py"]}},{"commit":"68fcb60a1460a35500180ec05a8cf5ba5706ff17","message":"add updatedocs script","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["updatedocs.sh"]}},{"commit":"e4781d60ce251f6d47f19bbe042e97f8aa9e2f18","message":"update parser descriptions with backticks surrounding command names","stats":{"files_changed":65,"insertions":188,"deletions":189,"files":["README.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","man/jc.1"]}},{"commit":"6201fb346a66ba762651624cdaf03f08e08579a1","message":"test backticks in description","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","jc/parsers/iw_scan.py"]}},{"commit":"f88c8343f9dec5e0190df94a5109e6c749bda286","message":"update iw-scan description for documentation","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","jc/parsers/iw_scan.py"]}},{"commit":"25410d33168ee7142bd8f8c739ef22a62a47eb6c","message":"create readmegen.py script. move jinja2 templates to templates folder","stats":{"files_changed":5,"insertions":973,"deletions":70,"files":["README.md","mangen.py","readmegen.py","{man/template => templates}/manpage_template","templates/readme_template"]}},{"commit":"4ff9952938d0654376efc94ca7d8a12f6df171af","message":"change OSX to macOS","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["README.md"]}},{"commit":"5e3f63a412c5b23e7515337521ebba6273b5c11f","message":"add license and copyright info. use variables instead of hard-coded values","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["man/jc.1","man/template/manpage_template"]}},{"commit":"e1f57be69efdfd7facd07df6ef0955a36c4fc18b","message":"add license info","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"]}},{"commit":"2c65d5eeccdc95d2de00ac6575a9e8d8458486bc","message":"man page updates","stats":{"files_changed":2,"insertions":32,"deletions":8,"files":["man/jc.1","man/template/manpage_template"]}},{"commit":"aa621f2f1ee043611c440683dfb63e6577d8fac4","message":"enhance man page","stats":{"files_changed":3,"insertions":74,"deletions":9,"files":["CHANGELOG","man/jc.1","man/template/manpage_template"]}},{"commit":"ac932c6e59ad80115962d0ea91e6aaabc70c211e","message":"update timestamp docs","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/utils.md","jc/utils.py"]}},{"commit":"029f79da1647e53f97ca83ba92b1f36a131f3128","message":"added info regarding updated dev scripts for automating doc generation","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]}},{"commit":"153b2b4a7a216caae5b03f6d50d43980c13a705f","message":"use jc to help automate the generation of its own docs","stats":{"files_changed":1,"insertions":11,"deletions":68,"files":["docgen.sh"]}},{"commit":"709b2fe4eead06090f903718deeb06ec774fc26e","message":"add -h and -v options","stats":{"files_changed":2,"insertions":16,"deletions":0,"files":["man/jc.1","man/template/manpage_template"]}},{"commit":"09c1fccc584e3d0582e19b520586419085ea8d04","message":"manpage updates","stats":{"files_changed":3,"insertions":4,"deletions":6,"files":["man/jc.1","man/template/manpage_template","mangen.py"]}},{"commit":"fd254d99b782888fe7646e42a61f28aa99e7cba7","message":"add manpage generator","stats":{"files_changed":3,"insertions":193,"deletions":15,"files":["man/jc.1","man/template/manpage_template","mangen.py"]}},{"commit":"88bd2c172217c498431e8904e74313bc27978785","message":"fix typo","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]}},{"commit":"d03e2f0fc1d0310cd94702f4d3c959d71b0eb622","message":"add parser schema guidelines","stats":{"files_changed":1,"insertions":40,"deletions":0,"files":["CONTRIBUTING.md"]}},{"commit":"3f12a393bd37062cd1412128be495235b0c7351f","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]}},{"commit":"8c21284c5038bdc2e52ff4211fac747f33f52091","message":"remove redundant license info","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["CONTRIBUTING.md"]}},{"commit":"e7d396c2157a77500017967dfc68ffaf32507c2c","message":"update issues link","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]}},{"commit":"f238fac0eb0c8e5133c6c9abf9ca709f5df7a925","message":"add contributing guidelines","stats":{"files_changed":3,"insertions":49,"deletions":0,"files":["CHANGELOG","CONTRIBUTING.md","README.md"]}},{"commit":"017228f80d9a65ad7715f31c539d9fca1615296f","message":"add tested on Windows 10","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]}},{"commit":"286c5fa9434e25434ee8f4825621f68464296469","message":"add dir parser","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]}},{"commit":"74cfc13abe4cd09ca5470714caeaedd24c099770","message":"fixup dir parser tests","stats":{"files_changed":9,"insertions":12,"deletions":21,"files":["tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-S.json","tests/fixtures/windows-10/dir-dirs.json","tests/fixtures/windows-10/dir-files.json","tests/fixtures/windows-10/dir-mix.json","tests/fixtures/windows-10/dir-raw.json","tests/fixtures/windows-10/dir.json","tests/test_dir.py"]}},{"commit":"0ee4a6c377321cf6ff67ced38e9a07a8f6313943","message":"update schema and add epoch naive timestamp","stats":{"files_changed":2,"insertions":207,"deletions":460,"files":["docs/parsers/dir.md","jc/parsers/dir.py"]}},{"commit":"283433578dfc3f132ef35727ce5bafb3e390896c","message":"add dir parser","stats":{"files_changed":2,"insertions":46,"deletions":0,"files":["EXAMPLES.md","README.md"]}},{"commit":"9559c85057308e8815d4654bbe0062a5858c0b2b","message":"add windows dir format","stats":{"files_changed":2,"insertions":3,"deletions":0,"files":["jc/utils.py","tests/test_utils.py"]}},{"commit":"c5c020f5654038dacba542be3784a35d7333cbcc","message":"add /S option","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/parsers/dir.md"]}},{"commit":"95ec79bceb3d0c4245e36b7b16cfda6e16b01197","message":"Merge pull request #107 from rasheed-rd/add-dir-parser"},{"commit":"8f8be8aa33f0b708ebd9a35c6b288572443d7181","message":"add -1 option info","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]}},{"commit":"5b60c7445a3f8bd2ae1587aa0ffaeaf093966f9a","message":"Add support for /S and update documentation","stats":{"files_changed":5,"insertions":469,"deletions":400,"files":["docs/parsers/dir.md","jc/parsers/dir.py","tests/fixtures/windows-10/dir-S.json","tests/fixtures/windows-10/dir-S.out","tests/test_dir.py"]}},{"commit":"d9dbcc8b526c8de9c6d12ac580880fd606dc68cf","message":"Add parent dir to structure. Add test cases. Remove support for /Q","stats":{"files_changed":15,"insertions":149,"deletions":73,"files":["docs/parsers/dir.md","jc/parsers/dir.py","tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-Q.json","tests/fixtures/windows-10/dir-Q.out","tests/fixtures/windows-10/dir-dirs.json","tests/fixtures/windows-10/dir-dirs.out","tests/fixtures/windows-10/dir-files.json","tests/fixtures/windows-10/dir-files.out","tests/fixtures/windows-10/dir-mix.json","tests/fixtures/windows-10/dir-mix.out","tests/fixtures/windows-10/dir-raw.json","tests/fixtures/windows-10/dir.json","tests/test_dir.py"]}},{"commit":"79bc525970b38dea68b4859ac5dd32fc681e5994","message":"add codes field to schema","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"]}},{"commit":"9dae1091ddc6141694ebfdc5ae649582cb879ccd","message":"typo fix","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"]}},{"commit":"74d3ac686a69518c1048260e37a0245ff254ff57","message":"add dpkg-l tests","stats":{"files_changed":4,"insertions":61,"deletions":0,"files":["tests/fixtures/ubuntu-18.04/dpkg-l-codes.json","tests/fixtures/ubuntu-18.04/dpkg-l-columns500.json","tests/fixtures/ubuntu-18.04/dpkg-l.json","tests/test_dpkg_l.py"]}},{"commit":"cf3cc636badcf4ae6db1e5ee5e57ca0331ee5b0f","message":"add dpkg-l parser info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]}},{"commit":"a720441e1d34771c5a54876cb7dd63fb8c9f408e","message":"add dpkg -l example","stats":{"files_changed":1,"insertions":54,"deletions":0,"files":["EXAMPLES.md"]}},{"commit":"0a7ed0959df07e2f36d9ec3ca8c294cfdaf10396","message":"rename err to error","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"]}},{"commit":"eb83c9b86dc6d1ff15efed30993071834b65a7d1","message":"replace parse_datetime_to_timestamp with timestamp class","stats":{"files_changed":1,"insertions":8,"deletions":21,"files":["docs/utils.md"]}},{"commit":"5c0142dd19eee14f4f1c287f0543e29824f9ae70","message":"add dpkg-l parser","stats":{"files_changed":9,"insertions":1797,"deletions":2,"files":["CHANGELOG","docgen.sh","docs/parsers/dpkg_l.md","jc/cli.py","jc/parsers/dpkg_l.py","jc/parsers/universal.py","tests/fixtures/ubuntu-18.04/dpkg-l-codes.out","tests/fixtures/ubuntu-18.04/dpkg-l-columns500.out","tests/fixtures/ubuntu-18.04/dpkg-l.out"]}},{"commit":"c326c8dc8356b55bba13864156adf30607205ece","message":"add TypeError to except block. add /usr/bin/time tests","stats":{"files_changed":18,"insertions":194,"deletions":1,"files":["jc/parsers/time.py","tests/fixtures/osx-10.14.6/time-l.json","tests/fixtures/osx-10.14.6/time-l.out","tests/fixtures/osx-10.14.6/time-lp.json","tests/fixtures/osx-10.14.6/time-lp.out","tests/fixtures/osx-10.14.6/time-p.json","tests/fixtures/osx-10.14.6/time-p.out","tests/fixtures/osx-10.14.6/time.json","tests/fixtures/osx-10.14.6/time.out","tests/fixtures/ubuntu-18.04/time-p.json","tests/fixtures/ubuntu-18.04/time-p.out","tests/fixtures/ubuntu-18.04/time-verbose.json","tests/fixtures/ubuntu-18.04/time-verbose.out","tests/fixtures/ubuntu-18.04/time.json","tests/fixtures/ubuntu-18.04/time.out","tests/fixtures/ubuntu-18.04/time2.json","tests/fixtures/ubuntu-18.04/time2.out","tests/test_time.py"]}},{"commit":"fc4082a03feb5645a1ad687908782a2584a58956","message":"remove old parse_datetime_to_timestamp function","stats":{"files_changed":1,"insertions":0,"deletions":131,"files":["jc/utils.py"]}},{"commit":"c8655565ff8718f0f14d41696b81e6539529dde1","message":"use new timestamp class","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"]}},{"commit":"638f879f16c9e87edb60953f4fd0b1c7ad92f277","message":"use new timestamp class","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/dig.py"]}},{"commit":"1d221bf7e6128d57bd769c0fe8f37f7a94da8cd2","message":"use new timestamp class","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/who.py"]}},{"commit":"60ea71f0ef931dccf09e6eb0cb737ddad0b47f0c","message":"use new timestamp class","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/timedatectl.py"]}},{"commit":"d8bdd35a3f462efcdc871426309299e8aefb0a79","message":"use new timestamp class","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/stat.py"]}},{"commit":"7463891c53f3670710dfa72ed1422431c274fe4a","message":"use new timestamp class","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/last.py"]}},{"commit":"7537aec76fa07384c4439f34c50d4e3f001c0dfa","message":"use jc.utils.timestamp instead of jc.utils.parse_datetime_to_timestamp()","stats":{"files_changed":1,"insertions":8,"deletions":8,"files":["jc/parsers/date.py"]}},{"commit":"62234e39a8533362a20f106c64326ed69f430006","message":"use jc.utils.timestamp instead of jc.utils.parse_datetime_to_timestamp()","stats":{"files_changed":1,"insertions":5,"deletions":8,"files":["jc/parsers/upower.py"]}},{"commit":"be004b7b3fe9217160c6418907e7d8aad10e5fae","message":"make parse_datetime_to_timestamp function a class called timestamp for easier use","stats":{"files_changed":2,"insertions":172,"deletions":15,"files":["jc/utils.py","tests/test_utils.py"]}},{"commit":"82539444b24169b2eb762485ed032fc968a81f71","message":"fix indentation for int and float conversions. add real_time field to schema","stats":{"files_changed":2,"insertions":23,"deletions":21,"files":["docs/parsers/time.md","jc/parsers/time.py"]}},{"commit":"a571d3cbafd5048d1d59070e1791398ae410197f","message":"fix typo","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/time.md","jc/parsers/time.py"]}},{"commit":"a038c14c23ea27264df61a38e0301de8d1fa1b9a","message":"change microseconds to centiseconds","stats":{"files_changed":3,"insertions":8,"deletions":8,"files":["EXAMPLES.md","docs/parsers/time.md","jc/parsers/time.py"]}},{"commit":"25a85d874cd2b57a7700b0c2dca61132127732b1","message":"update docs","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iw_scan.py"]}},{"commit":"884c36ff42df4f580c8e2b4705def8e4c1182e39","message":"add /usr/bin/time parser","stats":{"files_changed":8,"insertions":536,"deletions":1,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","docs/parsers/iw_scan.md","docs/parsers/time.md","jc/cli.py","jc/parsers/time.py"]}},{"commit":"b98e72b8b4eda0ab5ede7725226e61634af572eb","message":"add ls parser info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]}},{"commit":"05885c0096b5ee142ecff2d17e37c446518998a0","message":"add epoch and epoch_utc timestamps","stats":{"files_changed":5,"insertions":931,"deletions":18,"files":["docs/parsers/ls.md","jc/parsers/ls.py","tests/fixtures/ubuntu-18.04/ls-l-iso.json","tests/fixtures/ubuntu-18.04/ls-l-iso.out","tests/test_ls.py"]}},{"commit":"4c9761231af897658c3a2c0abcc476aa8b43d1b3","message":"add when_epoch and when_epoch_utc fields","stats":{"files_changed":21,"insertions":118,"deletions":81,"files":["CHANGELOG","EXAMPLES.md","README.md","docs/parsers/dig.md","jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json"]}},{"commit":"656eaa150861948091ef9d6323805c2698039bc6","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"1560dcddcf82f55fffce22d1b46d372b25a9d0fd","message":"add acpi, upower parsers and -v version option","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"]}},{"commit":"08d4cd4870c7acaf3a453d1400b64d77d462437b","message":"add time calculations to acpi parser","stats":{"files_changed":7,"insertions":114,"deletions":43,"files":["EXAMPLES.md","docs/parsers/acpi.md","jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.json","tests/fixtures/generic/acpi-V2.json","tests/fixtures/generic/acpi-V3.json","tests/fixtures/generic/acpi-V4.json"]}},{"commit":"9767a50cededb140575e195abf79ce49c4f53789","message":"update who parser to add epoch naive timestamp","stats":{"files_changed":12,"insertions":48,"deletions":46,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/who.md","jc/parsers/who.py","jc/utils.py","tests/fixtures/centos-7.7/who-a.json","tests/fixtures/centos-7.7/who.json","tests/fixtures/osx-10.14.6/who-a.json","tests/fixtures/osx-10.14.6/who.json","tests/fixtures/ubuntu-18.04/who-a.json","tests/fixtures/ubuntu-18.04/who.json","tests/test_utils.py"]}},{"commit":"cd86890ed1493644e391e52e33561e9a77631a51","message":"add website to info and use variables for version info","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"]}},{"commit":"ba0dd3b9ca98a042c772898302fcfe5fdc84f79a","message":"add parse_timedate_to_timestamp test for format 7300","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["tests/test_utils.py"]}},{"commit":"8d7fa07ffd50f38336a448eb506a76d9d4849a6a","message":"unformat json","stats":{"files_changed":1,"insertions":1,"deletions":11,"files":["tests/fixtures/centos-7.7/timedatectl.json"]}},{"commit":"cade1bfe6e56b5926898b7204e911885efebd5a7","message":"update timedatectl tests for new epoch_utc field","stats":{"files_changed":2,"insertions":12,"deletions":2,"files":["tests/fixtures/centos-7.7/timedatectl.json","tests/fixtures/ubuntu-18.04/timedatectl.json"]}},{"commit":"daec4ab0a7f572e872b27b043d51f68e5e06300f","message":"add epoch_utc field to timedatectl parser","stats":{"files_changed":5,"insertions":20,"deletions":4,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/timedatectl.md","jc/parsers/timedatectl.py","jc/utils.py"]}},{"commit":"3c96bc319615c824a06c388e9e3c1d68a9bf4084","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"]}},{"commit":"7f7d8d4bd6f37015b11bac60a7bd99e8d3eca108","message":"update stat docs","stats":{"files_changed":2,"insertions":8,"deletions":0,"files":["docs/parsers/stat.md","jc/parsers/stat.py"]}},{"commit":"47263661a41987f334fd484e866e0aa8859cde5d","message":"update stat example","stats":{"files_changed":1,"insertions":18,"deletions":2,"files":["EXAMPLES.md"]}},{"commit":"4c42a086d206919dfe4f1c0801fe4fb1027cb1cd","message":"clean up debug code","stats":{"files_changed":1,"insertions":1,"deletions":6,"files":["jc/utils.py"]}},{"commit":"5d2541a5c4bc93f3943a491c76df7f8d4e2cf44b","message":"remove auto c locale and use a manual format rule for windows and linux compatibility","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/utils.py"]}},{"commit":"d91d170b49bfc88c0b2fb54475705c038172f1c8","message":"try manual c locale format for windows","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/utils.py"]}},{"commit":"6d1f4584a9ccd0f0f7ed4fdf408576a9e7f5046b","message":"try manually setting time format for windows compatibility","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"]}},{"commit":"1d76d96bcf4185cffb7066bec637913099399db5","message":"debug windows issue","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/utils.py"]}},{"commit":"e8847c998c91131acf5ee0f6485e9976c0fce3ae","message":"update stat tests","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["tests/fixtures/centos-7.7/stat.json","tests/fixtures/freebsd12/stat.json","tests/fixtures/osx-10.14.6/stat.json","tests/fixtures/ubuntu-18.04/stat.json"]}},{"commit":"da88e49bae2f3fecff623f52c20bf994b653583e","message":"add new examples","stats":{"files_changed":2,"insertions":69,"deletions":29,"files":["docs/parsers/stat.md","jc/parsers/stat.py"]}},{"commit":"65c3a12e5422782df40489c3c431677f5657dbf5","message":"simplify None data scenario","stats":{"files_changed":2,"insertions":35,"deletions":24,"files":["jc/parsers/stat.py","jc/utils.py"]}},{"commit":"d8d600cc36bde4e6216b935f87a765599e896714","message":"add reference to -h for help","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"507999b117b024fed1ccf067bd5dc411dbeb268c","message":"add stat command timestamp detection","stats":{"files_changed":3,"insertions":34,"deletions":19,"files":["docs/utils.md","jc/utils.py","tests/test_utils.py"]}},{"commit":"8ad164eb340e135eeeb10b721172916182f37e30","message":"fix tests for compact output","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_cli.py"]}},{"commit":"a507df140b245b83b1c46e8462b44e1145c42f2a","message":"add compact json info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]}},{"commit":"8912a99986a977ee6ca7bbe2368f5033644577b0","message":"make default json output more compact","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/cli.py"]}},{"commit":"1953f9882890cd0e8c515d43ce28c96f918b0ab4","message":"add version info. add json now supports unicode output","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"]}},{"commit":"7515218ddd2cdcfcebd67850140e842f2f121226","message":"use jc.utils for all warning and error messages. simply error and warning formatting.","stats":{"files_changed":2,"insertions":10,"deletions":14,"files":["jc/cli.py","jc/utils.py"]}},{"commit":"36c11201366cefedee4244fb71a4a9cc6507e6ae","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]}},{"commit":"8fa0fe64d8418093c7f28cdc70a7f409956aeb04","message":"add -v to helptext. minor formatting","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"]}},{"commit":"c1a8201b140c65579ff9f8427322b67653bf3006","message":"add copyright","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["EXAMPLES.md"]}},{"commit":"398bbac48c8a716b1872843d671aa6ceaeba6a78","message":"simplify return value for parse_datetime_to_timestamp()","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]}},{"commit":"ea71a42bbdd9b09a457727cfe763054625f7901a","message":"formatting","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/cli.py"]}},{"commit":"1c16d25b17a7282a62a5ebd9755df5569c57435f","message":"add version option (-v) and copyright information. add 'ensure_ascii=False' to json dumps to properly show UTF-8 copyright character","stats":{"files_changed":2,"insertions":30,"deletions":9,"files":["README.md","jc/cli.py"]}},{"commit":"9d12ded889f656656267cbf7a91d71267201f736","message":"help description change","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"5312701515ecb3a10598bb9dcf2f73b7eae71b93","message":"add - make all external python requirements optional","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]}},{"commit":"808c7bc0a94ecfd160ee2b257e5feec347829a5e","message":"make xmltodict library optional","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/xml.py"]}},{"commit":"4d394015f458f284d052ce2c1a0c8492916c5b3e","message":"make ruamel.yaml library optional","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/yaml.py"]}},{"commit":"3638298af8ebc01d54aa3ab5668d0adedca957e5","message":"make pygments library optional","stats":{"files_changed":1,"insertions":53,"deletions":44,"files":["jc/cli.py"]}},{"commit":"5f00973e400629bd68c0ab60ed9005410278f855","message":"remove parenthesis to normalize text for naive timezone detection","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/date.py"]}},{"commit":"0f6e2c14fcb69f664c29083ec5207326f842dfdc","message":"simplify timestamp failure logic","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/parsers/upower.py"]}},{"commit":"51813da61994226ba40478825d47f80c23413349","message":"add offset timezones. fix timestamp logic on conversion failure","stats":{"files_changed":1,"insertions":9,"deletions":4,"files":["jc/parsers/date.py"]}},{"commit":"e7751322ea195cac7f1921ba8e0364c442065d20","message":"formatting","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/iw_scan.py"]}},{"commit":"26ef29843784ade3d55410be13300dd6f4c06890","message":"change return to always include the entire object but all keys may be None if conversion fails","stats":{"files_changed":1,"insertions":10,"deletions":6,"files":["jc/utils.py"]}},{"commit":"badaf8ce73d7deb0ec2be244e27b4bf8cddbea19","message":"comment formatting","stats":{"files_changed":1,"insertions":14,"deletions":14,"files":["jc/utils.py"]}},{"commit":"b123a622039f3cc32643a3bfc0766154d660f8bc","message":"move locale change formats to the end of the list","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/utils.py"]}},{"commit":"cfd77e42522aa2ebeada9f45ac99bd1d3414f782","message":"reset locale to None on exception","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/utils.py"]}},{"commit":"38f814072eac5370059f1b4203316eee41cf535b","message":"better normalization of datetime string. better UTC detection. More formats supported with detected locale.","stats":{"files_changed":1,"insertions":26,"deletions":8,"files":["jc/utils.py"]}},{"commit":"a0db7754e384a0c95f2099bf894f3a22bd33c002","message":"add nixos install info","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"f07620afc7dc0d0d605eb483ef36c5979b33cdfd","message":"move version to jc.__init__.py add -h option for help instead of always showing on error use jc.utils.error_message for the following errors: missing/incorrect arguments, parser not found, missing piped data","stats":{"files_changed":3,"insertions":18,"deletions":7,"files":["README.md","jc/__init__.py","jc/cli.py"]}},{"commit":"c1b0d27752726989c6051f683a1194941bee598c","message":"remove old commented commands","stats":{"files_changed":1,"insertions":0,"deletions":10,"files":["runtests.sh"]}},{"commit":"430a5108aa265d4df0e4584eade54759da864c61","message":"move all tests to github actions","stats":{"files_changed":3,"insertions":19,"deletions":60,"files":["runtests.sh","tests/test_last.py","tests/test_last2.py"]}},{"commit":"111ce92fc9c33b82c7d1a1664dda046ea5993f6a","message":"attempt all tests in github actions with timezone correction","stats":{"files_changed":4,"insertions":0,"deletions":1,"files":["tests/{localtest_date.py => test_date.py}","tests/{localtest_last.py => test_last2.py}","tests/{localtest_upower.py => test_upower.py}","tests/test_utils.py"]}},{"commit":"c851e8a58d98b2a4907cf1e7cf7c7d8d8dc04dc6","message":"force github action","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_utils.py"]}},{"commit":"39f4bcd9b41450068903ea2843508586eccdf709","message":"Change Windows timezone","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]}},{"commit":"4a610c4c81493788b8351e8c74aabe819c981c02","message":"force github action","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["tests/test_utils.py"]}},{"commit":"89ee11945d4e2db107a33ef0d61e0c6015ac8ad7","message":"Change timezone provider","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]}},{"commit":"dadb09b74a69d1852f8433e0e32ccdd67bd91181","message":"force github action","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_utils.py"]}},{"commit":"1b1f638b97dc5e6f2767183eb363b79ae3c9b3c7","message":"Change timezone change provider","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":[".github/workflows/pythonapp.yml"]}},{"commit":"794fc4ed44d1565514303090403d68ba5d639cb3","message":"add parse_datetime_to_timestamp() tests","stats":{"files_changed":2,"insertions":36,"deletions":8,"files":["jc/utils.py","tests/test_utils.py"]}},{"commit":"72f735bf9211d7beddcf58819fe465722f5d7c5a","message":"Set Timezone to America/Los_Angeles","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":[".github/workflows/pythonapp.yml"]}},{"commit":"912877f25ad562ed4cafe7b2d7446bd48b477ea2","message":"additional timezone info","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"2772c5ae436ea437d833003372d53a3d3f955ea0","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]}},{"commit":"a7ad24d2cb61d84cf2846f8fa43af31f0597043e","message":"Add dir parser","stats":{"files_changed":13,"insertions":772,"deletions":0,"files":["docgen.sh","docs/parsers/dir.md","jc/cli.py","jc/parsers/dir.py","tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-C.out","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-ODTC.out","tests/fixtures/windows-10/dir-Q.json","tests/fixtures/windows-10/dir-Q.out","tests/fixtures/windows-10/dir.json","tests/fixtures/windows-10/dir.out","tests/test_dir.py"]}},{"commit":"a364a6a9faeb6aa290b790f3dec74e92b8670534","message":"add note regarding calculated timestamps","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"]}},{"commit":"7b2dc86a8d974e7984fe2540f56a66c2b9386acd","message":"update last example with new timestamp fields","stats":{"files_changed":1,"insertions":23,"deletions":19,"files":["EXAMPLES.md"]}},{"commit":"ad645636d07d0423253f19068a22b2a28251b05f","message":"update uptime docs","stats":{"files_changed":5,"insertions":86,"deletions":50,"files":["CHANGELOG","EXAMPLES.md","README.md","docs/parsers/uptime.md","jc/parsers/uptime.py"]}},{"commit":"2f2f297b29fbe3172647a81db084b3564a441d40","message":"update uptime fixtures with new fields","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["tests/fixtures/centos-7.7/uptime.json","tests/fixtures/osx-10.11.6/uptime.json","tests/fixtures/osx-10.14.6/uptime.json","tests/fixtures/ubuntu-18.04/uptime.json"]}},{"commit":"099ae3fde03f8157298f6b412bdddb8bd56da09a","message":"fix issue when there is no data","stats":{"files_changed":1,"insertions":26,"deletions":22,"files":["jc/parsers/uptime.py"]}},{"commit":"e9febe98ac5ec0e03791c5b6794446a2c3312fb1","message":"add localtest partition lines for readability","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["runtests.sh"]}},{"commit":"5fbd07cccf9fb697b996dcc3949eef5b1c09e655","message":"rewrite of uptime parser including new fields","stats":{"files_changed":1,"insertions":59,"deletions":26,"files":["jc/parsers/uptime.py"]}},{"commit":"5fed4698c2c1f1b7e05c5b4c51639f818e049b53","message":"update docs and version number","stats":{"files_changed":2,"insertions":5,"deletions":6,"files":["docs/parsers/last.md","jc/parsers/last.py"]}},{"commit":"ed7eb0983a4dfcc1d66a2957be3e10b2203d909e","message":"use parse_datetime_to_timestamp function instead of custom format string","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/last.py"]}},{"commit":"90c7e18e5fc5ea9fcf6157cc2656f47193d78411","message":"update date example","stats":{"files_changed":1,"insertions":16,"deletions":11,"files":["EXAMPLES.md"]}},{"commit":"953ab5c3bd0c8b6eef29b717edaf1aa2380c2b93","message":"make upower tests local only","stats":{"files_changed":2,"insertions":1,"deletions":0,"files":["runtests.sh","tests/{test_upower.py => localtest_upower.py}"]}},{"commit":"699c97d8a07f7575454746159ac4d19981cd1a5c","message":"add last parser info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]}},{"commit":"e4ca0de92a689ce93b91d86106a5da590226855a","message":"add upower tests","stats":{"files_changed":8,"insertions":100,"deletions":0,"files":["tests/fixtures/generic/upower-i-c-locale.json","tests/fixtures/generic/upower-i-non-utc.json","tests/fixtures/generic/upower-i-utc.json",".../{upower-i-utc.out2 => upower-i-utc.out}","tests/fixtures/ubuntu-18.04/upower-d-clocale.json","tests/fixtures/ubuntu-18.04/upower-d.json","tests/fixtures/ubuntu-18.04/upower-i.json","tests/test_upower.py"]}},{"commit":"04745a36b84cc79e56bde2a0e92a4ee9ab4a1538","message":"doc update","stats":{"files_changed":2,"insertions":8,"deletions":5,"files":["CHANGELOG","jc/utils.py"]}},{"commit":"5936940532b8b753e67c9f5cd9287f34cc84ae9f","message":"rewrite of date parser using datetime library","stats":{"files_changed":7,"insertions":136,"deletions":186,"files":["docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date-after-midnight.json","tests/fixtures/generic/date-before-midnight.json","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/fixtures/ubuntu-20.04/date2.json"]}},{"commit":"b3eb064b6753d6e894884e1c16054630c2396fe1","message":"clarify format definition comments","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"]}},{"commit":"e4b41057e302074ac2a81ad8c36b6f95cd6b7db2","message":"update upower fixture names","stats":{"files_changed":3,"insertions":24,"deletions":0,"files":[".../{upower-i.out => upower-i-c-locale.out}","tests/fixtures/generic/upower-i-non-utc.out",".../generic/{upower-i2.out => upower-i-utc.out2}"]}},{"commit":"1d41c46cc762ab0c78b819e56db7df39f1111d5d","message":"normalize datetime string to remove all timezones except UTC","stats":{"files_changed":1,"insertions":34,"deletions":5,"files":["jc/utils.py"]}},{"commit":"a5c444587b3f0874fcc2833dc4e759c2dc1c7834","message":"add before and after midnight date tests","stats":{"files_changed":5,"insertions":28,"deletions":0,"files":["tests/fixtures/generic/date-after-midnight.json","tests/fixtures/generic/date-after-midnight.out","tests/fixtures/generic/date-before-midnight.json","tests/fixtures/generic/date-before-midnight.out","tests/localtest_date.py"]}},{"commit":"a56f471be980be16e73d3a91e2b12aad26c6d38c","message":"update fixture to use UTC for better testing","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/fixtures/generic/upower-i2.out"]}},{"commit":"6a6b26ed8d97014c2a5c7d91a4cd9b23f49530fb","message":"fix 12 to 24 hour conversion for midnight cases","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/date.py"]}},{"commit":"f62446c152d89f2d37b22ffe9d9de5b5c9fa7049","message":"rename variables. add another european time format","stats":{"files_changed":1,"insertions":11,"deletions":10,"files":["jc/utils.py"]}},{"commit":"56011f1f172344cab2a8e869e7a6df6e45c45874","message":"updated upower examples","stats":{"files_changed":3,"insertions":73,"deletions":6,"files":["EXAMPLES.md","docs/parsers/upower.md","jc/parsers/upower.py"]}},{"commit":"6d44091c80318fde6c09cd850e6dc5afde7fe799","message":"refactor parse_datetime_to_timestamp()","stats":{"files_changed":1,"insertions":13,"deletions":53,"files":["jc/utils.py"]}},{"commit":"440c458eb42925dffe2d7b026279468fa2fa1bb7","message":"no need for ternary clause","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]}},{"commit":"798250af6116441385339806c8f26bc9720ad302","message":"use jc.utils.parse_datetime_to_timestamp() function for timestamp creation","stats":{"files_changed":2,"insertions":18,"deletions":24,"files":["docs/parsers/upower.md","jc/parsers/upower.py"]}},{"commit":"c762de29c6491790908451aa20f6aa12fdfa9722","message":"doc updates","stats":{"files_changed":2,"insertions":32,"deletions":2,"files":["docs/utils.md","jc/utils.py"]}},{"commit":"0701e65e97165efd40ab2ae5087897de3588ea32","message":"add parse_datetime_to_timestamp() function","stats":{"files_changed":1,"insertions":106,"deletions":0,"files":["jc/utils.py"]}},{"commit":"209d54e8b5be6476d896cee1a5274bd2b46219e2","message":"add hour_24 to schema docs","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/parsers/date.md","jc/parsers/date.py"]}},{"commit":"2b38462de7d2fa61dd5d2a184e853279f1a9c84b","message":"update examples","stats":{"files_changed":3,"insertions":33,"deletions":27,"files":["EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py"]}},{"commit":"1e8e5533162cb01053ee25e9dbc709a429e58070","message":"add hour_24 field","stats":{"files_changed":6,"insertions":31,"deletions":14,"files":["CHANGELOG","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/fixtures/ubuntu-20.04/date2.json","tests/localtest_date.py"]}},{"commit":"ab42e6bb15026d6c46e15197c62bc3e8ef95c80d","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/date.md","jc/parsers/date.py"]}},{"commit":"680288454090f3c48c7f0580cdcb919c0b5a883e","message":"ensure period is always uppercase in dict value. update period documentation","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["docs/parsers/date.md","jc/parsers/date.py"]}},{"commit":"7cb8577b9655f258f2910e7e7bcf3266d4cbece0","message":"correct epoch_utc calculation. Fix for 12 hour vs. 24 hour representation","stats":{"files_changed":3,"insertions":70,"deletions":48,"files":["docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/ubuntu-20.04/date2.out"]}},{"commit":"55810ccd1f17ef6a4b1cb72fc21f6cf990ef8bb3","message":"set epoch_dt conversion again if not C locale","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/upower.py"]}},{"commit":"f9921720cd0b9b0d76d66e6eb5bfe43481f5f52b","message":"revert to local testing for naive datetime objects","stats":{"files_changed":3,"insertions":4,"deletions":94,"files":["runtests.sh","tests/test_date.py","tests/test_last2.py"]}},{"commit":"cda1ebd271aa8fd1b716054a2149f876d8087230","message":"try tzset()","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["tests/test_date.py","tests/test_last2.py"]}},{"commit":"6901e4a23aad0b58cbbfac86c61917115d115dfe","message":"try setting timezone env variable before tests to ensure it is the same on all test systems","stats":{"files_changed":3,"insertions":89,"deletions":3,"files":["runtests.sh","tests/test_date.py","tests/test_last2.py"]}},{"commit":"6bc21d3c735edc7897e49afd2a5ea9e3aa56d7fb","message":"fix date parser tests - local tests only since timezones may not match on github actions VMs","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["runtests.sh","tests/{test_date.py => localtest_date.py}","tests/localtest_last.py"]}},{"commit":"1ef231e26a2898d2a01f341fb92014df92703f72","message":"add date parser updates","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]}},{"commit":"3cd43f0f985a3b8a4e74bf5632bd8dac92d751c4","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/upower.md","jc/parsers/upower.py"]}},{"commit":"156501996688e62dd61a8456206218582a6cbe1b","message":"fix weekday numbering to be ISO 8601 compliant. Add naive calculated epoch timestamp field","stats":{"files_changed":5,"insertions":85,"deletions":63,"files":["EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json"]}},{"commit":"0a4de2d3a1c235d1ac2d6e59346e77761fe51885","message":"add naive datetime calculation info to docs","stats":{"files_changed":2,"insertions":5,"deletions":2,"files":["docs/parsers/last.md","docs/parsers/upower.md"]}},{"commit":"a058f6c174e31f5e6040883bb544b83abd88c749","message":"added naive epoch calculation info to docs","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/last.py"]}},{"commit":"d8e5d03b01a87704424f5259cf6bd977274fd6ee","message":"naive updated_epoch timestamp calculation added","stats":{"files_changed":1,"insertions":20,"deletions":33,"files":["jc/parsers/upower.py"]}},{"commit":"9dc62eff2eaaafec89c5b8797d8ca8e4c77a07d4","message":"remove epoch conversions","stats":{"files_changed":1,"insertions":34,"deletions":21,"files":["jc/parsers/upower.py"]}},{"commit":"d4fea17c57a97d6914624b06208b9439bf2eb05f","message":"use UTC when calculating epoch timestamp. reset time locale to default after changing","stats":{"files_changed":3,"insertions":13,"deletions":6,"files":["docgen.sh","docs/parsers/upower.md","jc/parsers/upower.py"]}},{"commit":"3dd7a5b77ea708047bc12be9f2caddd9078723f1","message":"add upower docs","stats":{"files_changed":2,"insertions":230,"deletions":0,"files":["docgen.sh","docs/parsers/upower.md"]}},{"commit":"d77c90a3ba2036b216f4a612876ace988eafd217","message":"fix quoted values in detail level. Add examples","stats":{"files_changed":1,"insertions":114,"deletions":6,"files":["jc/parsers/upower.py"]}},{"commit":"01f0c20df09fd4aa12bd108928b97376b51ef31a","message":"add sample using C locale timestamp","stats":{"files_changed":1,"insertions":27,"deletions":0,"files":["tests/fixtures/ubuntu-18.04/upower-d-clocale.out"]}},{"commit":"aafbe576b3b754de91591d9ec2dae9e9f827dee4","message":"working parser and processor","stats":{"files_changed":1,"insertions":137,"deletions":36,"files":["jc/parsers/upower.py"]}},{"commit":"bd68ad40345fb1f69be0e0f87dc67134f826cd06","message":"don't modify detail_type value since it is no longer a key","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/upower.py"]}},{"commit":"bfee017c138bb30ec6af836685013b7124028974","message":"made the schema more explicit by hardcoding more items. still working on the schema","stats":{"files_changed":1,"insertions":61,"deletions":20,"files":["jc/parsers/upower.py"]}},{"commit":"61f532cfd0b7fbf14a58a0fd638bcbfb03fbde72","message":"working history list","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["jc/parsers/upower.py"]}},{"commit":"58dbbb75b607d0b29be185c3b8c3f0d8af21ecad","message":"simplified logic","stats":{"files_changed":1,"insertions":9,"deletions":21,"files":["jc/parsers/upower.py"]}},{"commit":"8d88b91fcf5060d7d54f687efec3e3a606bab767","message":"move if statements and generalize the history detail detection","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/upower.py"]}},{"commit":"ad39fc60299089f56f37baac71820e50cbe87ed3","message":"working upower parser. history lines are ignored","stats":{"files_changed":6,"insertions":268,"deletions":0,"files":["jc/cli.py","jc/parsers/upower.py","tests/fixtures/generic/upower-i.out","tests/fixtures/generic/upower-i2.out","tests/fixtures/ubuntu-18.04/upower-d.out","tests/fixtures/ubuntu-18.04/upower-i.out"]}},{"commit":"89f1fd96e6b7aa0acf6272e4f3469005d4f7c6bf","message":"add acpi tests","stats":{"files_changed":6,"insertions":87,"deletions":0,"files":["tests/fixtures/generic/acpi-V.json","tests/fixtures/generic/acpi-V2.json","tests/fixtures/generic/acpi-V3.json","tests/fixtures/generic/acpi-V4.json","tests/fixtures/ubuntu-18.04/acpi-V.json","tests/test_acpi.py"]}},{"commit":"bd425f2493b68949c1fa02cd1d3289ec882d9b0d","message":"version bump to v1.15.0. Add acpi docs","stats":{"files_changed":6,"insertions":321,"deletions":2,"files":["CHANGELOG","EXAMPLES.md","docgen.sh","docs/parsers/acpi.md","jc/cli.py","setup.py"]}},{"commit":"46962ff02a0630766a927babc92e11ec91b1f789","message":"remove redundant lines","stats":{"files_changed":1,"insertions":1,"deletions":11,"files":["jc/parsers/acpi.py"]}},{"commit":"e4cb88b05166815e8ad03b646bd3f2b1da7f0d4b","message":"remove unneeded line-state assignment","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/acpi.py"]}},{"commit":"32840703dc1d88412712b08db1c9bdaebbc34450","message":"remove redundant code","stats":{"files_changed":1,"insertions":8,"deletions":39,"files":["jc/parsers/acpi.py"]}},{"commit":"1f7aafd0415a79e0547cc6f1c008c1918f8fb460","message":"fix for full charge batter case. Clean up battery object logic","stats":{"files_changed":3,"insertions":19,"deletions":9,"files":["jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out","tests/fixtures/generic/acpi-V4.out"]}},{"commit":"7378d5dce43f75440cb57903e8ae0c1c615b0782","message":"remove comment","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/acpi.py"]}},{"commit":"84f76866cdf76f67b34de999fd987de8a02f0306","message":"working process function","stats":{"files_changed":1,"insertions":197,"deletions":3,"files":["jc/parsers/acpi.py"]}},{"commit":"322da9ea6a1ceea1152d720797adb8f3a7dc1199","message":"working parser","stats":{"files_changed":2,"insertions":59,"deletions":12,"files":["jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out"]}},{"commit":"58645301ec111bfeb2a618f5f169cc734042dc5f","message":"add acpi command parser","stats":{"files_changed":6,"insertions":236,"deletions":1,"files":["jc/cli.py","jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out","tests/fixtures/generic/acpi-V2.out","tests/fixtures/generic/acpi-V3.out","tests/fixtures/ubuntu-18.04/acpi-V.out"]}},{"commit":"1e18dd30a824b0463f0cad86e0da7094c47d34f9","message":"Merge pull request #102 from kellyjonbrazil/dev"},{"commit":"cc6a19adccea3e10243a166b87d852b6f95414b5","message":"fix typo in comments","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/yaml.py"]}},{"commit":"2a5588b177a24d5b78a4b5a515aba515804b7baa","message":"packaging fix for yaml parser and pyoxidizer","stats":{"files_changed":4,"insertions":13,"deletions":3,"files":["CHANGELOG","jc/cli.py","jc/parsers/yaml.py","setup.py"]}},{"commit":"20f9b7f88b97ed68aba46e102b8c7b72443b9c85","message":"fix typo","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]}},{"commit":"d7e32313cd9776b4a6af38cc2819d6e4ef8c0d55","message":"fix typo","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]}},{"commit":"fb5654d3c4549e84940e2518f2d214debdd42d51","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"258f1433b36a7ee117ac43953edb4fe964603e7b","message":"add locale info to readme","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]}},{"commit":"fb723ae8bd7bb51f9a4bab380ec1bc54cda0445b","message":"Merge pull request #101 from kellyjonbrazil/dev"},{"commit":"283b89e37c38a3082203e43e38569c8b0bb11e12","message":"simplify answer data logic","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["CHANGELOG","jc/parsers/dig.py"]}},{"commit":"f450f9eb8b7d382af316e88301e72af01a018be9","message":"add hciconfig tests","stats":{"files_changed":5,"insertions":74,"deletions":0,"files":["tests/fixtures/centos-7.7/hciconfig-a.json","tests/fixtures/centos-7.7/hciconfig.json","tests/fixtures/ubuntu-20.04/hciconfig-a.json","tests/fixtures/ubuntu-20.04/hciconfig.json","tests/test_hciconfig.py"]}},{"commit":"b3f8cf99a4874335c6b43e105e0c1562c08256dc","message":"work for both tabs and spaces","stats":{"files_changed":1,"insertions":15,"deletions":15,"files":["jc/parsers/hciconfig.py"]}},{"commit":"4301ea8caea7c14f59bcddf09668d0198e1115a8","message":"remove debug line","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/hciconfig.py"]}},{"commit":"c672d1c174a42ce44544dfaec0ebcf3c30fd7acf","message":"initial working hciconfig parser","stats":{"files_changed":7,"insertions":903,"deletions":22,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","docs/parsers/hciconfig.md","jc/parsers/hciconfig.py","man/jc.1"]}},{"commit":"229e953a38471cdd41af0810577d324329840a4b","message":"initial add of hciconfig parser","stats":{"files_changed":7,"insertions":205,"deletions":2,"files":["jc/cli.py","jc/parsers/hciconfig.py","setup.py","tests/fixtures/centos-7.7/hciconfig-a.out","tests/fixtures/centos-7.7/hciconfig.out","tests/fixtures/ubuntu-20.04/hciconfig-a.out","tests/fixtures/ubuntu-20.04/hciconfig.out"]}},{"commit":"87b506dc9b4831d11b4fd04fd6849532db074f90","message":"fix for spaces in dig answer data","stats":{"files_changed":7,"insertions":47,"deletions":4,"files":["CHANGELOG","jc/cli.py","jc/parsers/dig.py","setup.py","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/generic/dig-answer-spaces.out","tests/test_dig.py"]}},{"commit":"15c9002d9eff0f52d873fb3ab35dfafd03a8e919","message":"simplify logic by taking out 'not' in JC_COLORS parsing","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]}},{"commit":"042aaa61b96fc8472a8a460c49bde4cbbc359094","message":"minor updates","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]}},{"commit":"ef856c6ba5774cd8ec23acd71496846e794e3872","message":"clarify -q option","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"9cf5be73e3f975132d1ffbef412638b941a5664f","message":"typo fix","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]}},{"commit":"63fc149e2a097cbde60c2ce1aeb102d9becabd9b","message":"typo fix","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]}},{"commit":"3c25839350800c7e7d2c48fc032bb21efa0ac213","message":"Merge pull request #98 from kellyjonbrazil/dev"},{"commit":"58246e33b71bae0ca4a42ad5bdf31134948b1014","message":"update compatibility info and changelog date","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","README.md"]}},{"commit":"8b1407c7068e2105a83992bbb026138ea67bc07c","message":"pull env-specific tests from CI/CD and run locally only","stats":{"files_changed":3,"insertions":59,"deletions":10,"files":["runtests.sh","tests/localtest_last.py","tests/test_last.py"]}},{"commit":"2fde4a4e2299b98a9958e3a55849c6791e4b17dc","message":"doc updates","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["EXAMPLES.md","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]}},{"commit":"60b9e9798286121399d0f8b75d63ab0f3312c9bf","message":"last parser enhancements: augment hostname with CONSOLE for GUI login, add convenience fields when -F is used: login_epoch, logout_epoch, duration_seconds, calculate duration to hours:minutes","stats":{"files_changed":12,"insertions":80,"deletions":38,"files":["docs/parsers/last.md","jc/parsers/last.py","tests/fixtures/centos-7.7/last-crash.json","tests/fixtures/centos-7.7/last-w.json","tests/fixtures/centos-7.7/last-wF.json","tests/fixtures/centos-7.7/last-wF.out","tests/fixtures/centos-7.7/last.json","tests/fixtures/fedora32/last.json","tests/fixtures/osx-10.14.6/last.json","tests/fixtures/ubuntu-18.04/last-w.json","tests/fixtures/ubuntu-18.04/last.json","tests/fixtures/ubuntu-20.04/last-F.json"]}},{"commit":"0adac79c0f2a22b31dfef1432a029af06132467b","message":"Add last parser enhancements","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]}},{"commit":"9f485b5981a2ce49ac699b9dad39993c5605ae18","message":"change mac_address fieldname to bssid. Add credit to Phillip","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["jc/parsers/iw_scan.py","tests/fixtures/centos-7.7/iw-scan0.json","tests/fixtures/centos-7.7/iw-scan1.json"]}},{"commit":"db17d21b8f9b2f899760e648f1483d33d0bcf47a","message":"Merge pull request #97 from pschmitt/iw_scan_fix_space_detection"},{"commit":"996d394e89c732f327323ca340fce405bd5fb2e4","message":"iw_scan: Improve detection of lines starting with spaces","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/iw_scan.py"]}},{"commit":"5885b960f9b33a95ecec9f4a33233c2f8682fbc4","message":"doc updates","stats":{"files_changed":3,"insertions":7,"deletions":2,"files":["CHANGELOG","README.md","man/jc.1"]}},{"commit":"79987b35f332e287567e103f25cf91cb50e040c0","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"]}},{"commit":"661b3ef311ad26678030c70c11f2f955667311a4","message":"doc updates","stats":{"files_changed":4,"insertions":94,"deletions":2,"files":["EXAMPLES.md","README.md","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]}},{"commit":"fb422726a8366c7133f0712d3b05a26620eea785","message":"update test to add 'down' condition","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["tests/fixtures/ubuntu-20.04/last-F.json","tests/fixtures/ubuntu-20.04/last-F.out"]}},{"commit":"4fb6f3ea59c52515926a51a006e65a1c18e57720","message":"add support for down in addition to crash","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/last.py"]}},{"commit":"f78fe771e1c2fb4691858fa7f27b1febe5f8c6c0","message":"add iw-scan tests","stats":{"files_changed":3,"insertions":48,"deletions":0,"files":["tests/fixtures/centos-7.7/iw-scan0.json","tests/fixtures/centos-7.7/iw-scan1.json","tests/test_iw_scan.py"]}},{"commit":"567b8872538ac9f6b384b98741acd9794229d513","message":"doc updates","stats":{"files_changed":3,"insertions":252,"deletions":12,"files":["docgen.sh","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]}},{"commit":"e516e6b9466b29d40ec10070dd61551180eeef90","message":"fix country/environment fields and process int/float conversions","stats":{"files_changed":1,"insertions":29,"deletions":1,"files":["jc/parsers/iw_scan.py"]}},{"commit":"62748676aae3d5955191ed267215df33a5bd3a4d","message":"initial iw-scan parser","stats":{"files_changed":2,"insertions":225,"deletions":0,"files":["jc/cli.py","jc/parsers/iw_scan.py"]}},{"commit":"7351c72e45242b9eb08c51dea7b6fccf12366dfd","message":"add fixes and tests for entries that contain 'crash'","stats":{"files_changed":6,"insertions":402,"deletions":1,"files":["jc/parsers/last.py","tests/fixtures/centos-7.7/last-crash.json","tests/fixtures/centos-7.7/last-crash.out","tests/fixtures/centos-7.7/last-wF.json","tests/fixtures/centos-7.7/last-wF.out","tests/test_last.py"]}},{"commit":"2b7405c5e21db2488fc48b58f6c65cff947ca95d","message":"doc updates","stats":{"files_changed":5,"insertions":23,"deletions":16,"files":["CHANGELOG","README.md","docs/parsers/last.md","jc/parsers/last.py","man/jc.1"]}},{"commit":"e2c77cb935a5bd95dbe930d424e5a02e88e1fa76","message":"add test for last -F output","stats":{"files_changed":3,"insertions":15,"deletions":1,"files":["jc/parsers/last.py","tests/fixtures/ubuntu-20.04/last-F.json","tests/test_last.py"]}},{"commit":"7ac621e4c916373a03f379425033cb2d81a03578","message":"add -F support","stats":{"files_changed":3,"insertions":36,"deletions":6,"files":["docs/parsers/last.md","jc/parsers/last.py","tests/fixtures/ubuntu-20.04/last-F.out"]}},{"commit":"d8b5d6c66ced19dc16f2b4975d2293a903732ffe","message":"version bump to 1.14.1","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/cli.py","setup.py"]}},{"commit":"22b461eb4b1ca86ea9e8c1fde8a2c312d1526b5f","message":"Add period field for en_US.UTF-8 locale","stats":{"files_changed":7,"insertions":47,"deletions":12,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/test_date.py"]}},{"commit":"b37ee8555a2a108625a834a7990bc3320e79b08d","message":"changelog update","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["CHANGELOG"]}},{"commit":"1d0ad2f045733c5c690738d49951fdb9bcd3d66d","message":"doc fixes","stats":{"files_changed":123,"insertions":312,"deletions":312,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat_freebsd_osx.py","jc/parsers/netstat_linux.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]}},{"commit":"ceccfb2c815f57f1b6fd81f891d8b495de23f9f5","message":"add test output for iw-scan and date on ubuntu 20.04","stats":{"files_changed":3,"insertions":2036,"deletions":0,"files":["tests/fixtures/centos-7.7/iw-scan0.out","tests/fixtures/centos-7.7/iw-scan1.out","tests/fixtures/ubuntu-20.04/date.out"]}},{"commit":"03c02953cd7e3327b391f799c37a2990eb2cb24c","message":"add wc doc","stats":{"files_changed":2,"insertions":96,"deletions":0,"files":["docgen.sh","docs/parsers/wc.md"]}},{"commit":"f254a0eaa16fcda316f7a75424ee359058204b03","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"9e3b88727cd439e15f235dddb9dd5796e010797a","message":"Merge pull request #91 from kellyjonbrazil/dev"},{"commit":"b12217466e906829d19be4cfd80dfe7cf4008e57","message":"spelling","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]}},{"commit":"8b9c932f9b05295e63b3e7d0073f243458fd4dd9","message":"update date","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]}},{"commit":"5986ce03db6fcd1aa0f7b064eaa96c2120c06d2d","message":"add printenv info","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"a7b0e936e400d2f9e55629e2d722cc002e035e9f","message":"add vdir and printenv info","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]}},{"commit":"cb0221142455a6bcb904fbe9ade657be45815b63","message":"add wc tests","stats":{"files_changed":4,"insertions":61,"deletions":2,"files":["jc/parsers/wc.py","tests/fixtures/osx-10.14.6/wc-stdin.json","tests/fixtures/osx-10.14.6/wc-stdin.out","tests/test_wc.py"]}},{"commit":"bd443bf39227515ae5f8df65d07b30268dcc90a9","message":"add printenv to env docs","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/env.py"]}},{"commit":"1f547edd361e66b19ccbcb59f6ba0ae78f6080ce","message":"add printenv to env docs","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/env.md"]}},{"commit":"e4bac3a493705b09e301ddc90dd1b0cee7467c3f","message":"add wc parser","stats":{"files_changed":9,"insertions":378,"deletions":0,"files":["CHANGELOG","EXAMPLES.md","README.md","jc/cli.py","jc/parsers/wc.py","tests/fixtures/centos-7.7/wc.json","tests/fixtures/centos-7.7/wc.out","tests/fixtures/osx-10.14.6/wc.json","tests/fixtures/osx-10.14.6/wc.out"]}},{"commit":"5e6bfa681aff03fbd683f81a9f4daa56b49d1344","message":"add vdir info","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["README.md","docs/parsers/ls.md","jc/parsers/ls.py"]}},{"commit":"276160125e01553c75eaad68530177bcf4f9004d","message":"add new commands to README","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"]}},{"commit":"d4ae5543f2d5f28a0db5b8e2e19993c21c5d960c","message":"add hash tests","stats":{"files_changed":3,"insertions":39,"deletions":0,"files":["tests/fixtures/centos-7.7/hash.json","tests/fixtures/centos-7.7/hash.out","tests/test_hash.py"]}},{"commit":"55f360e267fdfcfef0c124ed6b88535cc181a8b0","message":"add hash command parser","stats":{"files_changed":6,"insertions":260,"deletions":0,"files":["CHANGELOG","EXAMPLES.md","docgen.sh","docs/parsers/hash.md","jc/cli.py","jc/parsers/hash.py"]}},{"commit":"fdedab2a0cf5af15df5803d87302397dd6d71741","message":"description updates","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/cksum.py","jc/parsers/hashsum.py"]}},{"commit":"a9be42e3031ab0d697cff67a9e384caa2265a3ad","message":"specify parser warnings for quiet option","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"6da9510e46e84ec1cb93384825184d2996cf0e08","message":"add cksum tests","stats":{"files_changed":9,"insertions":482,"deletions":0,"files":["tests/fixtures/centos-7.7/cksum.json","tests/fixtures/centos-7.7/cksum.out","tests/fixtures/centos-7.7/sum.json","tests/fixtures/centos-7.7/sum.out","tests/fixtures/osx-10.14.6/cksum.json","tests/fixtures/osx-10.14.6/cksum.out","tests/fixtures/osx-10.14.6/sum.json","tests/fixtures/osx-10.14.6/sum.out","tests/test_cksum.py"]}},{"commit":"0431798178740b03cdefececc6df958e5adf62fc","message":"add cksum parser","stats":{"files_changed":7,"insertions":229,"deletions":3,"files":["CHANGELOG","docgen.sh","docs/parsers/cksum.md","docs/parsers/hashsum.md","jc/cli.py","jc/parsers/cksum.py","jc/parsers/hashsum.py"]}},{"commit":"62432f3c484e74acb2b2dfd15d448b3f1b5d53c4","message":"update hashsum description","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/hashsum.py"]}},{"commit":"9fbbc30906b597e6afaf2030015a7a694d85f79e","message":"add supported commands to docs","stats":{"files_changed":2,"insertions":20,"deletions":0,"files":["docs/parsers/hashsum.md","jc/parsers/hashsum.py"]}},{"commit":"d1567d1f622902053f3df58645b4e39532e0c30a","message":"add hashsum documentation","stats":{"files_changed":3,"insertions":104,"deletions":0,"files":["CHANGELOG","docgen.sh","docs/parsers/hashsum.md"]}},{"commit":"6ca1f5970b3a518615a54ee7fcbc1bddab2db331","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"1c880b9e24ca53cd592cec1dbc52301308290fb4","message":"force git tests","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_hashsum.py"]}},{"commit":"3b7d54c720dfc93637328cf06eb10a85447c8793","message":"add python 3.9","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]}},{"commit":"44a740605705bd0ecfde2a6bcc7a826e1010dcf0","message":"add hashsum tests","stats":{"files_changed":6,"insertions":87,"deletions":0,"files":["tests/fixtures/centos-7.7/md5sum.json","tests/fixtures/centos-7.7/sha256sum.json","tests/fixtures/centos-7.7/sha384sum.json","tests/fixtures/osx-10.14.6/md5.json","tests/fixtures/osx-10.14.6/shasum.json","tests/test_hashsum.py"]}},{"commit":"8157dcfdb1868548b7c8ca692e6be25f80bb2c2c","message":"fix for files with spaces in the name","stats":{"files_changed":1,"insertions":36,"deletions":11,"files":["jc/parsers/hashsum.py"]}},{"commit":"28762aea15cabc9cd8293d725e7f1f0550f8e15d","message":"add hashsum parser","stats":{"files_changed":7,"insertions":524,"deletions":0,"files":["jc/cli.py","jc/parsers/hashsum.py","tests/fixtures/centos-7.7/md5sum.out","tests/fixtures/centos-7.7/sha256sum.out","tests/fixtures/centos-7.7/sha384sum.out","tests/fixtures/osx-10.14.6/md5.out","tests/fixtures/osx-10.14.6/shasum.out"]}},{"commit":"439871ea9f6b055a407e1faaf47e4f56d1829501","message":"add ubuntu","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"c9180b005c0547c8cbfe4809e66894f1123b0809","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"b14e0725f86853f0113116b1c06f54aaa563f365","message":"add ansible plugin blog post link","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"70fe3dcb4d5b97aba1d6c6dcd5088fecb27af181","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"8c554604a42a3ea7ca9131b65c64fd3ceb95f906","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]}},{"commit":"a0a35454bd2831c116cb598c686150b883412f94","message":"add link to the web demo","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]}},{"commit":"e8467e2af5b0c3f14832a9e6d4a96f219c27f3f2","message":"remove extra space","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"7515deb5669ef04623e9cbf58653b30c99a96430","message":"add ansible install command","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]}},{"commit":"ed9e52af241b609ee7f5d1b835c9f6c5306cd3c5","message":"spelling","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"592a3804104628c790997747a778b3b39d076dfe","message":"add Ansible note","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]}},{"commit":"1a458d2d5b4c16c0ad90671727ae9b19939e7f23","message":"update link","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"0e4cf53b92ff951a6390a4dacf8833c272473583","message":"add parser docs link","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"e2f06ccb33177173d984bc0cdda1aae1a3f4c681","message":"formatting","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/xml.py","jc/parsers/yaml.py"]}},{"commit":"8abff004cd8e09529e5d94be4883308152e11565","message":"indentation fix","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/yaml.md"]}},{"commit":"c4a0e2e3feb2e51eaaaa202064f352229017bcc3","message":"fix indentation","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/yaml.py"]}},{"commit":"4f10f79c73f8b3d6edc2c83e6a12d0ddc1a78555","message":"standardize doc","stats":{"files_changed":2,"insertions":4,"deletions":8,"files":["docs/parsers/uname.md","jc/parsers/uname.py"]}},{"commit":"69e7a560fd82337570c4bb4aa4780f513c18bd94","message":"add output info to docs","stats":{"files_changed":4,"insertions":8,"deletions":0,"files":["docs/parsers/env.md","docs/parsers/history.md","jc/parsers/env.py","jc/parsers/history.py"]}},{"commit":"59b105580805d78516abe1c1069d52a6f0a8131a","message":"enhance docs","stats":{"files_changed":97,"insertions":564,"deletions":269,"files":["docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]}},{"commit":"6ed48c6289214fe5114971c80772efdf9ac1b8c5","message":"enhance docs","stats":{"files_changed":16,"insertions":88,"deletions":37,"files":["jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py"]}},{"commit":"f2fb4d3f415fbc1c09eec6dedcf70fba78406b3f","message":"improve docs","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","jc/parsers/airport.py","jc/parsers/airport_s.py"]}},{"commit":"6aeea59ea84e56434e87ddf89cd5d4435b99e140","message":"doc updates","stats":{"files_changed":2,"insertions":14,"deletions":8,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md"]}},{"commit":"d016f3bbb307f85bd0f93a508323941a8bb9d872","message":"improve documentation","stats":{"files_changed":2,"insertions":14,"deletions":8,"files":["jc/parsers/airport.py","jc/parsers/airport_s.py"]}},{"commit":"7131c297180bfa195d0209d46fc70ab8e67efe2e","message":"add module usage info to docs","stats":{"files_changed":114,"insertions":686,"deletions":116,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]}},{"commit":"7432442983841b42c8d3d2459b55596c05d1e100","message":"add usage","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["docs/parsers/blkid.md"]}},{"commit":"5344883394a0662ee16bb5edd68df8e4410025f6","message":"spelling/add ping parser update","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"]}},{"commit":"3fcd2f6c2e015b0e65e7261c8e591ccd8a7d0e6c","message":"version bump","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/cli.py","setup.py"]}},{"commit":"f3d84bd5bf06349b681e9b72d904676e9f6bca19","message":"tighten crontab and crontab-u parser variable detection","stats":{"files_changed":6,"insertions":21,"deletions":3,"files":["CHANGELOG","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/fixtures/debian10/crontab-u.json","tests/fixtures/debian10/crontab-u.out","tests/test_crontab_u.py"]}},{"commit":"549780c23220bca3bcab58d7329ba8d44d1be55d","message":"add debian/apt-get info","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]}},{"commit":"2a6da69b82aa9ade6c01d490a32b57b415c62a9e","message":"improve linux/bsd check","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ping.py"]}},{"commit":"5c538816cf76686bac1a86a7c06e24664d25a2dc","message":"ping parser fix for raspberry pi","stats":{"files_changed":9,"insertions":55,"deletions":4,"files":["CHANGELOG","jc/cli.py","jc/parsers/ping.py","setup.py","tests/fixtures/pi/ping-ip-O-D.json","tests/fixtures/pi/ping-ip-O-D.out","tests/fixtures/pi/ping-ip-O.json","tests/fixtures/pi/ping-ip-O.out","tests/test_ping.py"]}},{"commit":"7b8b378a7df397c488fc54fbd6e77f5f3f23c10c","message":"add pydoc-markdown version requirement","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"]}},{"commit":"e30a75e25c4b43969bf9f874f89e18512a5e3a34","message":"Merge pull request #76 from kellyjonbrazil/dev"},{"commit":"85ad5cfd0bfb903ce35e37b343244fed88dbd979","message":"date change","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]}},{"commit":"88b9d5068c5bac0691fedb543114300d6afc7131","message":"finish date parser","stats":{"files_changed":6,"insertions":74,"deletions":15,"files":["EXAMPLES.md","README.md","docs/parsers/date.md","tests/fixtures/generic/date.json","tests/fixtures/generic/date.out","tests/test_date.py"]}},{"commit":"f8c4948a090642db595eda2ba2ea0773e560ba67","message":"remove comment","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/date.py"]}},{"commit":"412322447f019aec0b64888631bc965e9f21186d","message":"add month_num and weekday_num fields","stats":{"files_changed":1,"insertions":48,"deletions":17,"files":["jc/parsers/date.py"]}},{"commit":"d4f289e40fae621b87f0d49451fca4c3dde216b7","message":"documentation fixup","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/date.md","jc/parsers/date.py"]}},{"commit":"e1f3feb8f529172ae26ce4c7a66a4a1c21b722ce","message":"cover empty data case in process","stats":{"files_changed":1,"insertions":13,"deletions":10,"files":["jc/parsers/date.py"]}},{"commit":"37d3bc699c7be16955be06840d242980f05f1074","message":"add date parser","stats":{"files_changed":6,"insertions":224,"deletions":1,"files":["CHANGELOG","docgen.sh","docs/parsers/date.md","jc/cli.py","jc/parsers/date.py","man/jc.1"]}},{"commit":"672fd18016b8122510b6ab246b5675b7fd399b63","message":"date bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]}},{"commit":"bc2c23a2a09b96d34bb80f69fdc7751fb5ac3ed4","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]}},{"commit":"865f7e78124e382c6d315702fa6e48f2104cee46","message":"add kv parser to man page","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["man/jc.1"]}},{"commit":"720212b552e1bd2b9196dd5f06e4b3f85d463531","message":"fixup traceroute example with new behavior","stats":{"files_changed":1,"insertions":1,"deletions":9,"files":["EXAMPLES.md"]}},{"commit":"d3be61f60837801d5a505dc2520cc80c874a6092","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]}},{"commit":"13418b16b8fd78fdd97ac045ec3fe9aa59d46080","message":"doc update","stats":{"files_changed":2,"insertions":8,"deletions":2,"files":["docs/parsers/traceroute.md","jc/parsers/traceroute.py"]}},{"commit":"42d2017cd6f5ee1d1a92bd4958cd63366c1e715d","message":"traceroute updates: handle missing header row, add annotations, don't print timeouts as probes","stats":{"files_changed":18,"insertions":41,"deletions":24,"files":["CHANGELOG","jc/parsers/traceroute.py","tests/fixtures/centos-7.7/traceroute.json","tests/fixtures/freebsd12/traceroute.json","tests/fixtures/freebsd12/traceroute6.json","tests/fixtures/generic/traceroute1.json","tests/fixtures/generic/traceroute2.json","tests/fixtures/generic/traceroute3.json","tests/fixtures/generic/traceroute5.json","tests/fixtures/generic/traceroute6.json","tests/fixtures/generic/traceroute7.json","tests/fixtures/osx-10.14.6/traceroute-asn.json",".../fixtures/osx-10.14.6/traceroute-no-header.json","tests/fixtures/osx-10.14.6/traceroute-q.json","tests/fixtures/osx-10.14.6/traceroute.json",".../osx-10.14.6/traceroute6-mult-addresses.json","tests/fixtures/osx-10.14.6/traceroute6.json","tests/test_traceroute.py"]}},{"commit":"4345e76ead2a49ae0691077e9fbd2b6c5fdfd129","message":"change to use --kv for key/value files","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"]}},{"commit":"741431322ba2677355c361fcd6095ed8cd0a4349","message":"update tests for kv parser","stats":{"files_changed":2,"insertions":46,"deletions":24,"files":["tests/test_ini.py","tests/test_kv.py"]}},{"commit":"980beaaf41a04891f7c2f5daeb1e3a23d3c7ec19","message":"fix docgen issue","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/ifconfig.py"]}},{"commit":"2205034e0906b333c259648f7a0e5392945f12ef","message":"add kv parser","stats":{"files_changed":8,"insertions":105,"deletions":31,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","jc/cli.py","jc/parsers/ini.py","jc/parsers/kv.py","setup.py"]}},{"commit":"82b9c87a66fce5d8626c56858a8c6f1f3326e7fb","message":"update docs","stats":{"files_changed":58,"insertions":345,"deletions":62,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/readme.md","docs/utils.md"]}},{"commit":"dda517a937323b9888e081aea1032a9d63c4a6bf","message":"shorten more examples","stats":{"files_changed":1,"insertions":3,"deletions":163,"files":["README.md"]}},{"commit":"4e6d283b9eddf7759b4dd37bd643394ff73febd4","message":"shorten netstat example","stats":{"files_changed":1,"insertions":0,"deletions":65,"files":["README.md"]}},{"commit":"55acab05aa740dfd7534304f2678b60942cad116","message":"change name to CHANGELOG","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["changelog.txt => CHANGELOG"]}},{"commit":"ed38a18d236cdb991779f4f148e42359c139e61c","message":"remove more examples","stats":{"files_changed":1,"insertions":1,"deletions":86,"files":["README.md"]}},{"commit":"95b3c11203d3dd0627c5eeca39fe1d145bf2d733","message":"remove more examples","stats":{"files_changed":1,"insertions":0,"deletions":124,"files":["README.md"]}},{"commit":"dce318f4fd44b9c4013211bf233020e84566ddb7","message":"remove examples to reduce file size","stats":{"files_changed":1,"insertions":3,"deletions":1537,"files":["README.md"]}},{"commit":"85127f0fb8096192b19fca1f4ffe38ee391351be","message":"move examples to root","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["jc/examples.md => EXAMPLES.md"]}},{"commit":"fb45058244ce879f12bbb5b7267b0fd63fef1d63","message":"add examples file","stats":{"files_changed":1,"insertions":2640,"deletions":0,"files":["jc/examples.md"]}},{"commit":"45bb5ae389a00ed6a132a65c69ce76c7e5976858","message":"spelling","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"339238ab364d8735892a11cb16a62a651edae169","message":"version bump and add route -6 tests","stats":{"files_changed":8,"insertions":79,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py","tests/fixtures/centos-7.7/route-6-n.json","tests/fixtures/centos-7.7/route-6-n.out","tests/fixtures/centos-7.7/route-6.json","tests/fixtures/centos-7.7/route-6.out","tests/test_route.py"]}},{"commit":"032cda8b3db096b690d2557e3b918c50c716c543","message":"Merge pull request #74 from kellyjonbrazil/dev"},{"commit":"6badd3fb1e1cf6d1ee99614fadc20d54be8039aa","message":"add parser count test","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["tests/test_cli.py"]}},{"commit":"724d825745b6f1692eb3b068c3fb59d14892e690","message":"add tracepath parser","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["man/jc.1"]}},{"commit":"ff1e32ad2ee156f105f5069c6b14a65b22784dfa","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"a5f97febd3066b9e95a18d6b73162a7d206c5845","message":"update traceroute, tracepath, and uname tests","stats":{"files_changed":10,"insertions":132,"deletions":0,"files":["tests/fixtures/centos-7.7/tracepath.json","tests/fixtures/centos-7.7/tracepath6.json","tests/fixtures/freebsd12/traceroute.json","tests/fixtures/freebsd12/traceroute.out","tests/fixtures/freebsd12/traceroute6.json","tests/fixtures/freebsd12/traceroute6.out","tests/fixtures/osx-10.14.6/uname.out","tests/test_tracepath.py","tests/test_traceroute.py","tests/test_uname.py"]}},{"commit":"5baa6cc865634142690e78596c640db35e110b29","message":"add route parser update","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]}},{"commit":"7a4f30b843d8f11711abbb8f9bb263f945ff87ea","message":"fix for iface issue","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/route.py"]}},{"commit":"b2c385dc4f63e3e15f47e986deac0524967214a0","message":"change 'if' to 'iface'","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"]}},{"commit":"5d5da8d33fa6ab77c745d338d1a2e2e8f2e4c697","message":"more fixes for ipv6 fix","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/route.py"]}},{"commit":"e60457157839daba385202906997dec48c9c4950","message":"fix next_hop fix","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"]}},{"commit":"f9dacc3f95b32e1431914ae0b0dc5c8e8840d5a7","message":"fixup for ipv6","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/route.py"]}},{"commit":"6086920332575cd7db1b38262a3b4ba8fbfae7ab","message":"update ParseError message","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]}},{"commit":"f52f3163bcaf8d7e784f02505e81456e8240295b","message":"add tracepath example","stats":{"files_changed":1,"insertions":49,"deletions":0,"files":["README.md"]}},{"commit":"d18ff73e880c7d34957f2713857cc83094f914cc","message":"update author info","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/tracepath.py"]}},{"commit":"1e5d602caecd96c9056ad77f9fc50cf25bf6fdfd","message":"working tracepath parser","stats":{"files_changed":2,"insertions":288,"deletions":32,"files":["docs/parsers/tracepath.md","jc/parsers/tracepath.py"]}},{"commit":"12912521ecb376c36dfdd743b3c4195598fb9aac","message":"doc update","stats":{"files_changed":2,"insertions":0,"deletions":11,"files":["docs/parsers/traceroute.md","jc/parsers/traceroute.py"]}},{"commit":"842ea3a94bec3fcab76257fdde5514d1de3d57fa","message":"add tracepath parser skeleton","stats":{"files_changed":2,"insertions":153,"deletions":0,"files":["docs/parsers/tracepath.md","jc/parsers/tracepath.py"]}},{"commit":"a8560dbc1598fa97de87594228b4cc10282d4197","message":"add tracepath","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]}},{"commit":"a65e27540a8c5c7123d2fdf79fcbefa1e2f8afdc","message":"update docs","stats":{"files_changed":3,"insertions":1,"deletions":24,"files":["docgen.sh","docs/parsers/traceroute.md","jc/parsers/traceroute.py"]}},{"commit":"c3c5ed11e68938e35920144406d37ea3b21d63dd","message":"change name from tr to trparse","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]}},{"commit":"ce24149335cd8ed1e8513a2cf040432fe42d86b7","message":"formatting","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping.py"]}},{"commit":"0314ca8c4831d24c169a0e4948421ecd638fd699","message":"add trparse acknowledgement","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]}},{"commit":"ebd8ee49a9f43063850e30c745c8cae46ee13de1","message":"add key/value info to ini example","stats":{"files_changed":1,"insertions":26,"deletions":1,"files":["README.md"]}},{"commit":"38d10c97814ec69586c3b447c182f339772d6e22","message":"add ping and traceroute examples","stats":{"files_changed":1,"insertions":130,"deletions":1,"files":["README.md"]}},{"commit":"360106c24d24e6a9697c00a158a14aaa334a4b1f","message":"add tracepath","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]}},{"commit":"ca470a5d02fd9fbaf05d8b3b3bb1ffe9f4cf5af3","message":"add tracepath fixtures","stats":{"files_changed":2,"insertions":39,"deletions":0,"files":["tests/fixtures/centos-7.7/tracepath.out","tests/fixtures/centos-7.7/tracepath6.out"]}},{"commit":"57f66e6b1d554ff20b72959f5ebb9e7b2feffed2","message":"add exception with hint to use \"uname -a\"","stats":{"files_changed":2,"insertions":14,"deletions":2,"files":["changelog.txt","jc/parsers/uname.py"]}},{"commit":"e774f67924c0e6195f79829b2ac75ce95f76fbaa","message":"turn off interpolation and coerce None to ''","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["jc/parsers/ini.py"]}},{"commit":"ac10e576c167d20de259e47a6aa5b23fc998b4c3","message":"spelling","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/ini.md","jc/parsers/ini.py"]}},{"commit":"bcae0a99cd0ccce4ec8a67929f7c83a1095a5b88","message":"add key/value to ini description","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]}},{"commit":"c73c2ff879b3ed7a3e6f04e53e0a729e4f00ed21","message":"add ping, traceroute, and ini update","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["changelog.txt"]}},{"commit":"c39b1a3356881a11a8f6fe9432897e6d67162f07","message":"add ping, traceroute and update ini description","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["README.md"]}},{"commit":"125dc2d9e051a82a4a438afe2e520212338353f5","message":"add info about key/value files to doc","stats":{"files_changed":1,"insertions":8,"deletions":3,"files":["docs/parsers/ini.md"]}},{"commit":"b7d4ddc7ced2c3aabf3a857b53a0bf1b62eb6a2c","message":"add tests for key/value files","stats":{"files_changed":5,"insertions":50,"deletions":0,"files":["tests/fixtures/generic/keyvalue-ifcfg.json","tests/fixtures/generic/keyvalue-ifcfg.txt","tests/fixtures/generic/keyvalue.json","tests/fixtures/generic/keyvalue.txt","tests/test_ini.py"]}},{"commit":"f5e546c6fa7cba166284a0976887d6b82451d3e8","message":"add support for simple key/value pairs","stats":{"files_changed":1,"insertions":33,"deletions":9,"files":["jc/parsers/ini.py"]}},{"commit":"928e39cd103b96b8c3ccc8d85c930ffb419296c6","message":"add generic traceroute tests","stats":{"files_changed":9,"insertions":104,"deletions":0,"files":["tests/fixtures/generic/traceroute1.json","tests/fixtures/generic/traceroute2.json","tests/fixtures/generic/traceroute3.json","tests/fixtures/generic/traceroute4.json","tests/fixtures/generic/traceroute5.json","tests/fixtures/generic/traceroute6.json","tests/fixtures/generic/traceroute7.json","tests/fixtures/generic/traceroute8.json","tests/test_traceroute.py"]}},{"commit":"d0b7ea68a005daff313e44808b256656313a78a3","message":"check for key in dictionary","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/traceroute.py"]}},{"commit":"8444690133b6a7522822ab279e97ede6ded17ba9","message":"add traceroute","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["man/jc.1"]}},{"commit":"c03c42d76703ff8f423cf3c10ea6254a27a685cb","message":"add traceroute tests","stats":{"files_changed":9,"insertions":76,"deletions":9,"files":["tests/fixtures/centos-7.7/traceroute.json","tests/fixtures/osx-10.14.6/traceroute-asn.json",".../osx-10.14.6/traceroute-mult-addresses.json","tests/fixtures/osx-10.14.6/traceroute-q.json","tests/fixtures/osx-10.14.6/traceroute.json",".../osx-10.14.6/traceroute6-mult-addresses.json","...-address.out => traceroute6-mult-addresses.out}","tests/fixtures/osx-10.14.6/traceroute6.json","tests/test_traceroute.py"]}},{"commit":"ab67688a00ac335d2a5603e9cadef8b565957911","message":"add test skeleton","stats":{"files_changed":1,"insertions":55,"deletions":0,"files":["tests/test_traceroute.py"]}},{"commit":"5dcb7166daef3c53da65bba0d591672e64d3a90b","message":"add traceroute doc","stats":{"files_changed":2,"insertions":169,"deletions":0,"files":["docgen.sh","docs/parsers/traceroute.md"]}},{"commit":"14697b86d7fc1cfebb41e0fd2d9a9b9b60071d3b","message":"add MIT license","stats":{"files_changed":1,"insertions":24,"deletions":2,"files":["jc/parsers/traceroute.py"]}},{"commit":"4f4b6276d4bf798b17d996f39742bd0428fc2f19","message":"update docstring","stats":{"files_changed":1,"insertions":38,"deletions":33,"files":["jc/parsers/traceroute.py"]}},{"commit":"7bc497e1291059ae7858c9d2bd2d9a1b4c030dd1","message":"updated process() function to set integers and floats","stats":{"files_changed":1,"insertions":117,"deletions":14,"files":["jc/parsers/traceroute.py"]}},{"commit":"68a37a6a5a3f0ad0fa24c84d363050af9fa11f97","message":"remove unused function load()","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/parsers/traceroute.py"]}},{"commit":"6f5cd1d7c5f76d7d4da42171fdc30daf9fe3996e","message":"change to use f-string","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]}},{"commit":"126b1b121ca10183dc7e9dece83b42907becad39","message":"add traceroute6 example","stats":{"files_changed":1,"insertions":10,"deletions":0,"files":["tests/fixtures/generic/traceroute8.out"]}},{"commit":"2341e456a012564f86d533d2748a5887d79995e4","message":"use ParseError instead of generic Exception","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]}},{"commit":"72d80e95bb50ae2a7432082e65aba15235ba0955","message":"remove unused regex patterns","stats":{"files_changed":8,"insertions":115,"deletions":8,"files":["jc/parsers/traceroute.py","tests/fixtures/generic/traceroute1.out","tests/fixtures/generic/traceroute2.out","tests/fixtures/generic/traceroute3.out","tests/fixtures/generic/traceroute4.out","tests/fixtures/generic/traceroute5.out","tests/fixtures/generic/traceroute6.out","tests/fixtures/generic/traceroute7.out"]}},{"commit":"f5ec82440cd1c1b5ac9011d3517298d0cdcd8766","message":"simplify regex patterns","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/traceroute.py"]}},{"commit":"c8e526ead35b868733f57b4c114062a48b78a817","message":"fixes for bsd-style ipv6 output","stats":{"files_changed":2,"insertions":12,"deletions":3,"files":["jc/parsers/traceroute.py","tests/fixtures/osx-10.14.6/traceroute-q.out"]}},{"commit":"066adfb76479df7042bfb12bbb83b5dbd8a6d54c","message":"handle warning lines in the traceroute output","stats":{"files_changed":7,"insertions":83,"deletions":7,"files":["jc/parsers/traceroute.py","tests/fixtures/centos-7.7/traceroute.out","tests/fixtures/osx-10.14.6/traceroute-asn.out",".../osx-10.14.6/traceroute-mult-addresses.out",".../fixtures/osx-10.14.6/traceroute-no-header.out",".../osx-10.14.6/traceroute6-multi-address.out","tests/fixtures/osx-10.14.6/traceroute6.out"]}},{"commit":"5b444d4717b0b8528647e17e71d699907def3e18","message":"add traceroute parser","stats":{"files_changed":3,"insertions":307,"deletions":0,"files":["jc/cli.py","jc/parsers/traceroute.py","tests/fixtures/osx-10.14.6/traceroute.out"]}},{"commit":"69c95adc8d59927c1c00b7e766ca5003b7b6454c","message":"add osx ipv6 ping dup test","stats":{"files_changed":3,"insertions":81,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ping6-ip-dup.json","tests/fixtures/osx-10.14.6/ping6-ip-dup.out","tests/test_ping.py"]}},{"commit":"2b0e0d8f5c1a6a5450e362971f9ad5892093b2ce","message":"add ipv6 dup test","stats":{"files_changed":3,"insertions":27,"deletions":0,"files":["tests/fixtures/centos-7.7/ping6-ip-dup.json","tests/fixtures/centos-7.7/ping6-ip-dup.out","tests/test_ping.py"]}},{"commit":"778d1bacbf8df523d434b22f5e1517955e4c15ee","message":"update docs to add \"duplicates\" fields","stats":{"files_changed":2,"insertions":28,"deletions":12,"files":["docs/parsers/ping.md","jc/parsers/ping.py"]}},{"commit":"7e1b0410166c584775ebcd681a280ec7321560c7","message":"add duplicate replies tests","stats":{"files_changed":1,"insertions":24,"deletions":0,"files":["tests/test_ping.py"]}},{"commit":"313b9b329ca6b674069718839f55a4bd7834db80","message":"update fixtures for added 'duplicate' fields","stats":{"files_changed":55,"insertions":55,"deletions":53,"files":["tests/fixtures/centos-7.7/ping-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping-hostname-O-p.json","tests/fixtures/centos-7.7/ping-hostname-O.json","tests/fixtures/centos-7.7/ping-ip-O-D.json","tests/fixtures/centos-7.7/ping-ip-O.json","tests/fixtures/centos-7.7/ping-ip-dup.json","tests/fixtures/centos-7.7/ping6-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping6-hostname-O-p.json","tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","tests/fixtures/centos-7.7/ping6-ip-O-p.json","tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping-hostname-O-p.json","tests/fixtures/fedora32/ping-hostname-O.json","tests/fixtures/fedora32/ping-ip-O-D.json","tests/fixtures/fedora32/ping-ip-O.json","tests/fixtures/fedora32/ping6-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping6-hostname-O-D-p.json","tests/fixtures/fedora32/ping6-hostname-O-p.json","tests/fixtures/fedora32/ping6-ip-O-D-p.json","tests/fixtures/fedora32/ping6-ip-O-p.json","tests/fixtures/freebsd12/ping-hostname-p.json","tests/fixtures/freebsd12/ping-hostname-s.json","tests/fixtures/freebsd12/ping-hostname.json","tests/fixtures/freebsd12/ping-ip-p.json","tests/fixtures/freebsd12/ping-ip-s.json","tests/fixtures/freebsd12/ping-ip.json","tests/fixtures/freebsd12/ping6-hostname-p.json","tests/fixtures/freebsd12/ping6-hostname-s.json","tests/fixtures/freebsd12/ping6-hostname.json","tests/fixtures/freebsd12/ping6-ip-p.json","tests/fixtures/freebsd12/ping6-ip-s.json","tests/fixtures/freebsd12/ping6-ip.json","tests/fixtures/osx-10.14.6/ping-hostname-p.json","tests/fixtures/osx-10.14.6/ping-hostname-s.json","tests/fixtures/osx-10.14.6/ping-hostname.json","tests/fixtures/osx-10.14.6/ping-ip-dup.json","tests/fixtures/osx-10.14.6/ping-ip-p.json","tests/fixtures/osx-10.14.6/ping-ip-s.json","tests/fixtures/osx-10.14.6/ping-ip.json","tests/fixtures/osx-10.14.6/ping6-hostname-p.json","tests/fixtures/osx-10.14.6/ping6-hostname-s.json","tests/fixtures/osx-10.14.6/ping6-hostname.json","tests/fixtures/osx-10.14.6/ping6-ip-p.json","tests/fixtures/osx-10.14.6/ping6-ip-s.json","tests/fixtures/osx-10.14.6/ping6-ip.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping-hostname-O.json","tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","tests/fixtures/ubuntu-18.04/ping-ip-O.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json"]}},{"commit":"6830062256fbc453f87224f7ab8c10e4494b5a83","message":"add support for duplicate replies","stats":{"files_changed":4,"insertions":112,"deletions":24,"files":["docs/parsers/ping.md","jc/parsers/ping.py","tests/fixtures/centos-7.7/ping-ip-dup.out","tests/fixtures/osx-10.14.6/ping-ip-dup.out"]}},{"commit":"323072c9827c41c5d74433504b5efceb846cfe09","message":"add source_ip to schema doc","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/ping.md","jc/parsers/ping.py"]}},{"commit":"8719d96bddec80187e7ba3286ba93bfec8465744","message":"change description","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"dd5d318ab5bbb1027dd600fd3b0b6ec9b8adfdc3","message":"version bump and add ping command","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["man/jc.1"]}},{"commit":"d6dc7f5e65c097895c19000e59e8803a3b350fdc","message":"add osx ping tests","stats":{"files_changed":13,"insertions":135,"deletions":29,"files":["tests/fixtures/osx-10.14.6/ping-hostname-p.json","tests/fixtures/osx-10.14.6/ping-hostname-s.json","tests/fixtures/osx-10.14.6/ping-hostname.json","tests/fixtures/osx-10.14.6/ping-ip-p.json","tests/fixtures/osx-10.14.6/ping-ip-s.json","tests/fixtures/osx-10.14.6/ping-ip.json","tests/fixtures/osx-10.14.6/ping6-hostname-p.json","tests/fixtures/osx-10.14.6/ping6-hostname-s.json","tests/fixtures/osx-10.14.6/ping6-hostname.json","tests/fixtures/osx-10.14.6/ping6-ip-p.json","tests/fixtures/osx-10.14.6/ping6-ip-s.json","tests/fixtures/osx-10.14.6/ping6-ip.json","tests/test_ping.py"]}},{"commit":"c203664eb5aafa0afa3101b79e3fd13b3e009ec5","message":"freebsd ping tests","stats":{"files_changed":13,"insertions":171,"deletions":9,"files":["tests/fixtures/freebsd12/ping-hostname-p.json","tests/fixtures/freebsd12/ping-hostname-s.json","tests/fixtures/freebsd12/ping-hostname.json","tests/fixtures/freebsd12/ping-ip-p.json","tests/fixtures/freebsd12/ping-ip-s.json","tests/fixtures/freebsd12/ping-ip.json","tests/fixtures/freebsd12/ping6-hostname-p.json","tests/fixtures/freebsd12/ping6-hostname-s.json","tests/fixtures/freebsd12/ping6-hostname.json","tests/fixtures/freebsd12/ping6-ip-p.json","tests/fixtures/freebsd12/ping6-ip-s.json","tests/fixtures/freebsd12/ping6-ip.json","tests/test_ping.py"]}},{"commit":"19ecf1fa19e9fa0873002baf07fa670b71ed7752","message":"add Fedora32 tests","stats":{"files_changed":11,"insertions":118,"deletions":0,"files":["tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping-hostname-O-p.json","tests/fixtures/fedora32/ping-hostname-O.json","tests/fixtures/fedora32/ping-ip-O-D.json","tests/fixtures/fedora32/ping-ip-O.json",".../fixtures/fedora32/ping6-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping6-hostname-O-D-p.json","tests/fixtures/fedora32/ping6-hostname-O-p.json","tests/fixtures/fedora32/ping6-ip-O-D-p.json","tests/fixtures/fedora32/ping6-ip-O-p.json","tests/test_ping.py"]}},{"commit":"b8deb0426cc23333c0e0a9dc3776d9761d99abb0","message":"add ubuntu ping tests","stats":{"files_changed":11,"insertions":119,"deletions":8,"files":[".../ubuntu-18.04/ping-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping-hostname-O.json","tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","tests/fixtures/ubuntu-18.04/ping-ip-O.json",".../ubuntu-18.04/ping6-hostname-O-D-p-s.json",".../ubuntu-18.04/ping6-hostname-O-D-p.json",".../fixtures/ubuntu-18.04/ping6-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json","tests/test_ping.py"]}},{"commit":"3b8371f0208a097cb8a1c026348d3842e6702b9c","message":"add centos ping tests","stats":{"files_changed":10,"insertions":202,"deletions":0,"files":[".../fixtures/centos-7.7/ping-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping-hostname-O-p.json","tests/fixtures/centos-7.7/ping-hostname-O.json","tests/fixtures/centos-7.7/ping-ip-O-D.json","tests/fixtures/centos-7.7/ping-ip-O.json",".../centos-7.7/ping6-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping6-hostname-O-p.json","tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","tests/fixtures/centos-7.7/ping6-ip-O-p.json","tests/test_ping.py"]}},{"commit":"20bb1cdf396abdb3707b34fa146cbe913f9bbd6f","message":"add TypeError to except for None values","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/ping.py"]}},{"commit":"301daa48d0bfc28f97c8e46f028f8c6b875bf34e","message":"update documentation","stats":{"files_changed":2,"insertions":114,"deletions":16,"files":["docs/parsers/ping.md","jc/parsers/ping.py"]}},{"commit":"8421ec88033e02f472e4961d87551a0352663a16","message":"remove cygwin compatibility","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ping.py"]}},{"commit":"74211eb0129f6aa655a38ba4d4d8844d81441107","message":"add examples","stats":{"files_changed":1,"insertions":82,"deletions":5,"files":["jc/parsers/ping.py"]}},{"commit":"60bd42f298f309cbec6d24c9543ea3d51bd73b18","message":"add process() logic","stats":{"files_changed":1,"insertions":59,"deletions":11,"files":["jc/parsers/ping.py"]}},{"commit":"14bdd74526e400997c5bc247ea35ed40799e83ff","message":"add ping test fixtures","stats":{"files_changed":12,"insertions":100,"deletions":0,"files":["tests/fixtures/freebsd12/ping-hostname-p.out","tests/fixtures/freebsd12/ping-hostname-s.out","tests/fixtures/freebsd12/ping-hostname.out","tests/fixtures/freebsd12/ping-ip-p.out","tests/fixtures/freebsd12/ping-ip-s.out","tests/fixtures/freebsd12/ping-ip.out","tests/fixtures/freebsd12/ping6-hostname-p.out","tests/fixtures/freebsd12/ping6-hostname-s.out","tests/fixtures/freebsd12/ping6-hostname.out","tests/fixtures/freebsd12/ping6-ip-p.out","tests/fixtures/freebsd12/ping6-ip-s.out","tests/fixtures/freebsd12/ping6-ip.out"]}},{"commit":"fb0f3eda04a4b1dbb81da7d5791cbfe746bfd617","message":"add ping commands","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["tests/fixtures/create_fixtures.sh"]}},{"commit":"91ee6e6701307363336a39f9e16641465ddd05c2","message":"add osx ping test fixtures","stats":{"files_changed":12,"insertions":100,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ping-hostname-p.out","tests/fixtures/osx-10.14.6/ping-hostname-s.out","tests/fixtures/osx-10.14.6/ping-hostname.out","tests/fixtures/osx-10.14.6/ping-ip-p.out","tests/fixtures/osx-10.14.6/ping-ip-s.out","tests/fixtures/osx-10.14.6/ping-ip.out","tests/fixtures/osx-10.14.6/ping6-hostname-p.out","tests/fixtures/osx-10.14.6/ping6-hostname-s.out","tests/fixtures/osx-10.14.6/ping6-hostname.out","tests/fixtures/osx-10.14.6/ping6-ip-p.out","tests/fixtures/osx-10.14.6/ping6-ip-s.out","tests/fixtures/osx-10.14.6/ping6-ip.out"]}},{"commit":"51f4e6927c68a7e2a26954f564d10d316b98a984","message":"add support for pattern in osx/bsd","stats":{"files_changed":1,"insertions":12,"deletions":3,"files":["jc/parsers/ping.py"]}},{"commit":"94988d86674293faddc6f7e7c82575738d2dc791","message":"add fedora ping fixtures","stats":{"files_changed":10,"insertions":257,"deletions":0,"files":["tests/fixtures/fedora32/ping-hostname-O-D-p-s.out","tests/fixtures/fedora32/ping-hostname-O-p.out","tests/fixtures/fedora32/ping-hostname-O.out","tests/fixtures/fedora32/ping-ip-O-D.out","tests/fixtures/fedora32/ping-ip-O.out","tests/fixtures/fedora32/ping6-hostname-O-D-p-s.out","tests/fixtures/fedora32/ping6-hostname-O-D-p.out","tests/fixtures/fedora32/ping6-hostname-O-p.out","tests/fixtures/fedora32/ping6-ip-O-D-p.out","tests/fixtures/fedora32/ping6-ip-O-p.out"]}},{"commit":"fe36f5a98cd3ee7753e250b6553e4453d971f929","message":"add fixtures for ping","stats":{"files_changed":13,"insertions":318,"deletions":0,"files":["tests/fixtures/centos-7.7/ping-ip-O-D.out","tests/fixtures/centos-7.7/ping-ip-O.out","tests/fixtures/create_fixtures.sh",".../ubuntu-18.04/ping-hostname-O-D-p-s.out","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.out","tests/fixtures/ubuntu-18.04/ping-hostname-O.out","tests/fixtures/ubuntu-18.04/ping-ip-O-D.out","tests/fixtures/ubuntu-18.04/ping-ip-O.out",".../ubuntu-18.04/ping6-hostname-O-D-p-s.out",".../fixtures/ubuntu-18.04/ping6-hostname-O-D-p.out","tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.out","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.out","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.out"]}},{"commit":"f9eb18b9271b2428dd82f2dc26d3fa0435dad81d","message":"change 'request_timeout' field to 'type', fix compatibility, other formatting fixes","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/ping.py"]}},{"commit":"cc60f3674822c644933f286a0364b09d7e2a60b3","message":"add ping parser","stats":{"files_changed":3,"insertions":67,"deletions":1,"files":["docgen.sh","docs/parsers/ping.md","jc/cli.py"]}},{"commit":"604ade791f7bd33b37f64916befba27a2ea08b5b","message":"add ping parser","stats":{"files_changed":8,"insertions":506,"deletions":0,"files":["jc/parsers/ping.py",".../fixtures/centos-7.7/ping-hostname-O-D-p-s.out","tests/fixtures/centos-7.7/ping-hostname-O-p.out","tests/fixtures/centos-7.7/ping-hostname-O.out",".../fixtures/centos-7.7/ping6-hostname-O-D-p-s.out","tests/fixtures/centos-7.7/ping6-hostname-O-p.out","tests/fixtures/centos-7.7/ping6-ip-O-D-p.out","tests/fixtures/centos-7.7/ping6-ip-O-p.out"]}},{"commit":"690ac52a917200e46eac2feafc9f504f2734301c","message":"add man page","stats":{"files_changed":1,"insertions":261,"deletions":0,"files":["man/jc.1"]}},{"commit":"34ed772775f1f02ed148f24a3bfff532bc811607","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"d5ab95571f64f55d8194e9e5592ac538bb535229","message":"fix tests when using older versions of pygments","stats":{"files_changed":1,"insertions":26,"deletions":11,"files":["tests/test_cli.py"]}},{"commit":"ffb3a0ee5fb30a3f61d6cbedf877ab04acdbf624","message":"Merge pull request #73 from kellyjonbrazil/dev"},{"commit":"94b12b57aaa56170d1f31f4910fd1239f88de137","message":"spelling","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]}},{"commit":"6d149e84571d5d6dd1d8a1f219ba299de5173779","message":"version bump","stats":{"files_changed":2,"insertions":8,"deletions":1,"files":["changelog.txt","setup.py"]}},{"commit":"1ad89c90d890039b817f65b2635db1b5e849a9e7","message":"add pacman","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"fb71c7b020bc1eda9484595f30b0200a4f59aa45","message":"function name spelling","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_cli.py"]}},{"commit":"28ed17ad3bce866e5dc0179ef5de43380ac6ace1","message":"add parser_count test to test_cli_about_jc","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_cli.py"]}},{"commit":"0c2a4e2bf71dca50d4a9bb27ca99944909c022ff","message":"add cli tests","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["tests/test_cli.py"]}},{"commit":"62bec30de2f1a303f2ec411d89f7f9f9c6d1abaf","message":"add json_out tests","stats":{"files_changed":1,"insertions":20,"deletions":0,"files":["tests/test_cli.py"]}},{"commit":"3fced77e4e258dbf7db94a313e599c830a597b49","message":"add set_env_colors tests","stats":{"files_changed":1,"insertions":98,"deletions":1,"files":["tests/test_cli.py"]}},{"commit":"a09d1d8b7687912610598c88d172733d5e29b1ce","message":"move environment variable assignment to main() to simplify tests","stats":{"files_changed":1,"insertions":7,"deletions":6,"files":["jc/cli.py"]}},{"commit":"8f4243fbd8d70ca9fd019e984c564e37c81e07db","message":"formatting","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"]}},{"commit":"47aaf20549ea238443427e69d5841d6996b7afab","message":"add sysctl command parser","stats":{"files_changed":1,"insertions":17,"deletions":0,"files":["README.md"]}},{"commit":"0c5289ea50e4d3d35e80147b4cad32434c19a2a0","message":"add sysctl tests","stats":{"files_changed":3,"insertions":72,"deletions":2,"files":["tests/fixtures/freebsd12/sysctl-a.json","tests/fixtures/osx-10.14.6/sysctl-a.json","tests/test_sysctl.py"]}},{"commit":"3e53323514906fb84abfaeed0c2ee1fd9090ad8d","message":"don't filter out empty lines","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/sysctl.py"]}},{"commit":"a5ee9861b9b9b479aee59ea5b1d75f20d7c3c8e7","message":"update fixtures","stats":{"files_changed":3,"insertions":3785,"deletions":1,"files":["tests/fixtures/freebsd12/sysctl-a.json","tests/fixtures/freebsd12/sysctl-a.out","tests/fixtures/osx-10.14.6/sysctl-a.json"]}},{"commit":"feb8ca76545cba4fd0927273ddf90a77df994006","message":"spelling","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/sysctl.md"]}},{"commit":"a7abe4473b90c512466db9ae98cfac585689fe2a","message":"spelling","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/sysctl.py"]}},{"commit":"780b9b61dec3e142e46c9a82146d2af4e1144123","message":"specify IndexError exception in try/except block","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/sysctl.py"]}},{"commit":"19ace36ffa659bedf0ba2e43572c9e253592b2e7","message":"add fixtures","stats":{"files_changed":4,"insertions":2167,"deletions":0,"files":["tests/fixtures/osx-10.14.6/sysctl-a.json","tests/fixtures/osx-10.14.6/sysctl-a.out","tests/fixtures/ubuntu-18.04/sysctl-a.json","tests/fixtures/ubuntu-18.04/sysctl-a.out"]}},{"commit":"5fff8afc9f47f8cc6db8ed3613b90b5cdc683b43","message":"add fixes for freebsd where values can be on separate lines under the key","stats":{"files_changed":1,"insertions":33,"deletions":11,"files":["jc/parsers/sysctl.py"]}},{"commit":"4ad230c9279c5eb6c8ed6baf7254b8e9328e5af0","message":"doc update and add test fixtures","stats":{"files_changed":4,"insertions":929,"deletions":14,"files":["docs/parsers/sysctl.md","jc/parsers/sysctl.py","tests/fixtures/centos-7.7/sysctl-a.json","tests/fixtures/centos-7.7/sysctl-a.out"]}},{"commit":"dd98eb1ec8f451eb87a5094e76a7f758dee3fc69","message":"append duplicate key values to original key instead of adding unique keys","stats":{"files_changed":1,"insertions":4,"deletions":7,"files":["jc/parsers/sysctl.py"]}},{"commit":"c6baf42e72b4f41ed511e7db943297d03a39c0d5","message":"doc updates","stats":{"files_changed":3,"insertions":94,"deletions":7,"files":["docgen.sh","docs/parsers/sysctl.md","jc/parsers/sysctl.py"]}},{"commit":"e2bac97d563e5ef771ccd8ed1e5c42cbf588b120","message":"fix for multiple identical keys in sysctl output","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["jc/parsers/sysctl.py"]}},{"commit":"d112ee94d0ec534828c8508d0fb833b768975990","message":"use try/except and add support for floats in process()","stats":{"files_changed":1,"insertions":8,"deletions":4,"files":["jc/parsers/sysctl.py"]}},{"commit":"27b21b2fafab912f21b88b66c7f817cbce155765","message":"formatting and docstring updates","stats":{"files_changed":1,"insertions":8,"deletions":7,"files":["jc/cli.py"]}},{"commit":"8c96d5cd20448a4f7f9736c4d489d6ecc3068ad7","message":"reduce pygments version requirement","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["requirements.txt"]}},{"commit":"c29ed3fd695f725005333db5e6e2cd844bb4ca14","message":"formatting of quotation marks and docstrings","stats":{"files_changed":1,"insertions":14,"deletions":13,"files":["jc/cli.py"]}},{"commit":"cedf603f121636bdfa95432059c3c275c3ea3e9e","message":"minor formatting","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/cli.py"]}},{"commit":"279161c36f288c27a9789054ae372fe8ceb58a94","message":"Merge pull request #72 from duelafn/pygments-2.3"},{"commit":"ce0b43d919f07d96d1b94e9d14d03e935e80011d","message":"Remove dependency on 3rd party packaging library","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"]}},{"commit":"ddafa5bf06066bab8e9587be902d6752fcf51605","message":"Support older pygments","stats":{"files_changed":2,"insertions":47,"deletions":7,"files":["jc/cli.py","setup.py"]}},{"commit":"bc7116c31bacf3159aef775fd0e615187420b010","message":"fix JC_COLORS env bug and simplify set_env_colors()","stats":{"files_changed":1,"insertions":7,"deletions":8,"files":["jc/cli.py"]}},{"commit":"53b709272115e769dac905296fa3b000c1cdd66a","message":"remove side-effects from functions and print in main()","stats":{"files_changed":1,"insertions":11,"deletions":11,"files":["jc/cli.py"]}},{"commit":"beb9174b1b35937ae1fb99778369ae643a8f1005","message":"add sysctl parser","stats":{"files_changed":1,"insertions":123,"deletions":0,"files":["jc/parsers/sysctl.py"]}},{"commit":"aea41ed341c8d53cc07c35e8044e8f816ddd2fed","message":"move verbose_debug enable earlier in code to catch more issues. add sysctl and version bump","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/cli.py"]}},{"commit":"d789494cb1f691aa352419aaefc692f654477177","message":"change type check to use isinstance","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/tracebackplus.py"]}},{"commit":"608e7b4cff081f92177e4151ffa1a91a4a6895ca","message":"add license info","stats":{"files_changed":1,"insertions":61,"deletions":0,"files":["jc/tracebackplus.py"]}},{"commit":"4ee199c02a78c2707c5d1427d7c8fae56df5671c","message":"use tracebackplus instead of cgitb since cgitb is depricated","stats":{"files_changed":2,"insertions":189,"deletions":3,"files":["jc/cli.py","jc/tracebackplus.py"]}},{"commit":"fbf47d408501dadda4671fb530f5e11859e85d53","message":"add arch linux","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]}},{"commit":"5a238e4b4204f0552327534ef798c28d3ad4f578","message":"remove updates-testing from fedora command","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"f852b8246a8f9e5f7d9144fed3a0daa4eddfe035","message":"wrap warning message","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/utils.py"]}},{"commit":"88140d929a500ee78f807862c4912c399df2a460","message":"wrap error message in code","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]}},{"commit":"45f726824027af49c437b6e81e4700f7098af320","message":"add -dd to error message","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"3a3c8e4d4a77135eaee5cb30c3107a4531c300ce","message":"move verbose_debug under debug check","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/cli.py"]}},{"commit":"c1ac183a0472e93226c9ee1905f56c5183e3721f","message":"simplify debug option","stats":{"files_changed":1,"insertions":15,"deletions":22,"files":["jc/cli.py"]}},{"commit":"18bb779ee5cd5821764b03173f16e922f753c64d","message":"formatting: double quotes to single quotes","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]}},{"commit":"8b6612fe7911ab9e0bf8d29be60865d3b8aa3fd8","message":"move JC_COLORS parsing error message","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/cli.py"]}},{"commit":"fde0bc853415418e01616861ace5048770bd97f8","message":"improve package install info","stats":{"files_changed":1,"insertions":9,"deletions":34,"files":["README.md"]}},{"commit":"e661a78939ff067b8a61f08301c178dd10a344ab","message":"Merge pull request #71 from wigust/guix"},{"commit":"847e346602789bf58e3515319e9d080dfb897fc9","message":"add guix package info","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]}},{"commit":"b9697516887c61f08d8d7b1dc9130350e5bdba9c","message":"add other references","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]}},{"commit":"ad6f2ba03a293a7f55e456fa5f5b55ee3cbcd4ec","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"63c6a5edc0e9001b143595fd8b96f1b4a1377a3a","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]}},{"commit":"9f4cf9dd5efe94adfff0961fdb73097ca27c5463","message":"formatting","stats":{"files_changed":1,"insertions":197,"deletions":67,"files":["README.md"]}},{"commit":"51331b6dc01eee00847fa4be549ffde365373a01","message":"formatting","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["README.md"]}},{"commit":"efb6761033319644bf9cdae6288ff5609f6482ea","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"6a4f737a0f1c322bebccf69809d9816fc770c5ef","message":"update json syntax highlighting","stats":{"files_changed":1,"insertions":88,"deletions":115,"files":["README.md"]}},{"commit":"be6864b778ab721bcba5fc3221576153be7b2ed3","message":"add syntax highlighting tags","stats":{"files_changed":1,"insertions":26,"deletions":26,"files":["README.md"]}},{"commit":"de3b91a36cfcaf565b26b1da42f1e87835da4dc3","message":"add -dd option","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"ef5482c3b5afa0ee8e85851bebab1c104cb59936","message":"add verbose debug option","stats":{"files_changed":3,"insertions":15,"deletions":7,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"d20b795137036f8b889eb231cb4f14b756ec6479","message":"Merge pull request #70 from kellyjonbrazil/dev"},{"commit":"8a134065dff429551449c1ea16a36d745fdab580","message":"update fixtures for last chain fix","stats":{"files_changed":12,"insertions":12,"deletions":12,"files":["tests/fixtures/centos-7.7/iptables-filter-line-numbers.json","tests/fixtures/centos-7.7/iptables-filter-nv.json","tests/fixtures/centos-7.7/iptables-filter.json","tests/fixtures/centos-7.7/iptables-mangle.json","tests/fixtures/centos-7.7/iptables-nat.json","tests/fixtures/centos-7.7/iptables-raw.json","tests/fixtures/ubuntu-18.04/iptables-filter-line-numbers.json","tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","tests/fixtures/ubuntu-18.04/iptables-filter.json","tests/fixtures/ubuntu-18.04/iptables-mangle.json","tests/fixtures/ubuntu-18.04/iptables-nat.json","tests/fixtures/ubuntu-18.04/iptables-raw.json"]}},{"commit":"22aee1bfa40ed1d3c4df28cd934ef0edfc5c458c","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"b282820fd67dcc96c058198f97b066e7b402d1f3","message":"fix to include the final chain in output","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/iptables.py"]}},{"commit":"3ee098306daf903687cb0febf92773a81e216111","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"]}},{"commit":"09e8f379a64b3b37bb99b4291c10aa4a5cdedea4","message":"iptables code optimizations","stats":{"files_changed":1,"insertions":9,"deletions":11,"files":["jc/parsers/iptables.py"]}},{"commit":"69018cdb3a77fcdcb5648e3b89933148c55a6412","message":"fix date","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]}},{"commit":"d0d7254c6acc7be4341618d231a5b166f640b287","message":"add docstring","stats":{"files_changed":2,"insertions":26,"deletions":0,"files":["docs/utils.md","jc/utils.py"]}},{"commit":"cc0f0971d76b6f3dec8d989e83f5676db8f2c6d9","message":"Improve and standardize empty data check for all parsers","stats":{"files_changed":56,"insertions":476,"deletions":439,"files":["changelog.txt","jc/cli.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/utils.py","setup.py"]}},{"commit":"2af61730f0f5b9bc6f1f4c5d9d808ff6ccb0faeb","message":"Merge pull request #68 from kellyjonbrazil/dev"},{"commit":"83f41b83dc01c462c6a2295e9fc56ad42a3b62f4","message":"version bump","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"1fb84fce88e0306c26a5771fa4c6dc14a21409a1","message":"fix for no data","stats":{"files_changed":16,"insertions":137,"deletions":67,"files":["changelog.txt","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/xml.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py","tests/test_timedatectl.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py","tests/test_who.py","tests/test_xml.py","tests/test_yaml.py"]}},{"commit":"a8837e12447c52dbe438b19c07777b9b4a22081c","message":"remove --upgrade from pip install","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"04d2eec5581998d1a80e762b670af76c92111065","message":"fix for no data","stats":{"files_changed":6,"insertions":56,"deletions":30,"files":["changelog.txt","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","tests/test_stat.py","tests/test_systemctl.py","tests/test_systemctl_lj.py"]}},{"commit":"1b57ec92f052ddc8959540511512190a539262b7","message":"fix for no data","stats":{"files_changed":21,"insertions":152,"deletions":68,"files":["changelog.txt","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/pip_list.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","tests/fixtures/centos-7.7/ss-sudo-a.json","tests/fixtures/ubuntu-18.04/ss-sudo-a.json","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_ntpq.py","tests/test_passwd.py","tests/test_pip_list.py","tests/test_pip_show.py","tests/test_ps.py","tests/test_route.py","tests/test_shadow.py","tests/test_ss.py"]}},{"commit":"4d8859540417e99e273fda2cea959240f3c37ea3","message":"enhance empty data check","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/df.py"]}},{"commit":"52b1272a3aab09b5a8c4a277fbf9975a1b8b6921","message":"enhance empty data check","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/blkid.py"]}},{"commit":"d2ccad6a83138fbf6eb863634fd354dc6c3fa238","message":"fix for no data","stats":{"files_changed":4,"insertions":33,"deletions":15,"files":["jc/parsers/lsblk.py","jc/parsers/lsmod.py","tests/test_lsblk.py","tests/test_lsmod.py"]}},{"commit":"cad6dde4ac66cf970a7f52d8e7958ea35c083629","message":"fix for no data","stats":{"files_changed":10,"insertions":60,"deletions":0,"files":["tests/test_group.py","tests/test_gshadow.py","tests/test_history.py","tests/test_hosts.py","tests/test_id.py","tests/test_ifconfig.py","tests/test_ini.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_last.py"]}},{"commit":"06811c3539b0d871e13e9b8d3b51f731d06fd2ce","message":"add test for no data","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_fstab.py"]}},{"commit":"0cb23c2b21f464082609409261de8e95eb1b0d55","message":"add fix for no data","stats":{"files_changed":3,"insertions":17,"deletions":7,"files":["changelog.txt","jc/parsers/free.py","tests/test_free.py"]}},{"commit":"ac4688dca22334385ec2c87027f2f14f9ca93ce4","message":"add test for no data","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_file.py"]}},{"commit":"326c3b4670a0e47cbe2988b38fb1c1b26a4db890","message":"add test for no data","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_env.py"]}},{"commit":"9b29d0c2688eda2e4707aeba693ed14fa433a706","message":"add test for no data","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_du.py"]}},{"commit":"e0013c38710b4ecf3a588a16d1d908effc23b485","message":"add test for no data","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["tests/test_dmidecode.py"]}},{"commit":"a75744075b0628bdb711d8a929a759b4b4067edb","message":"add no data test","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_dig.py"]}},{"commit":"525aec1a02380f17ab7827434616f981f7457bd0","message":"fix for no data","stats":{"files_changed":3,"insertions":16,"deletions":7,"files":["changelog.txt","jc/parsers/df.py","tests/test_df.py"]}},{"commit":"0bf9a7a072a80e10a29c6bb3943b107352dc1d45","message":"add test for no data","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_csv.py"]}},{"commit":"d8f2f4c95bc699386b9fe93d10e13637875a1dcf","message":"fix for no data","stats":{"files_changed":5,"insertions":96,"deletions":80,"files":["changelog.txt","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/test_crontab.py","tests/test_crontab_u.py"]}},{"commit":"35d733b44f3705bed3dd8ce340379470f199f772","message":"fix for no data","stats":{"files_changed":5,"insertions":70,"deletions":60,"files":["changelog.txt","jc/parsers/arp.py","jc/parsers/blkid.py","tests/test_arp.py","tests/test_blkid.py"]}},{"commit":"9179b4175c5063bed14ecb96ba24c517920c0d94","message":"add nodata tests","stats":{"files_changed":3,"insertions":16,"deletions":0,"files":["changelog.txt","tests/test_airport.py","tests/test_airport_s.py"]}},{"commit":"bb07d78c78ff5c5b2ee4d2086ffc6dd5ebedf0fb","message":"add nodata fix","stats":{"files_changed":1,"insertions":10,"deletions":8,"files":["jc/parsers/airport_s.py"]}},{"commit":"07b179cd7f8853ff6aca0b27a703e198c158ca72","message":"Merge pull request #67 from kellyjonbrazil/Dev"},{"commit":"054422d8373e7b8def18ddabd447062cb9cc3137","message":"add test for empty directory","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_ls.py"]}},{"commit":"3e052d18102e98a09cbba21866855691eaccc216","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"c8e72805cf9def478b56c925f4afcc0ece1daac0","message":"fix error on empty directory","stats":{"files_changed":1,"insertions":9,"deletions":10,"files":["jc/parsers/ls.py"]}},{"commit":"12a80e7db0f6c7d536674ad8d34e26bba9a1f1f9","message":"add fedora package info","stats":{"files_changed":1,"insertions":10,"deletions":2,"files":["README.md"]}},{"commit":"ee7ff9a09d3373f60ae1645376ccc0057803147e","message":"Merge pull request #66 from kellyjonbrazil/dev"},{"commit":"f6478fb636ead8d1e53e4a88d59e55222df37a8f","message":"version bump","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"811a0b0495819925199d70db266066197cc6824e","message":"add info regarding the local parser plugin files","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"aeb48edf727f23cc4f8fd9b760cfb69f03098278","message":"use $LOCALAPPDATA variable for windows","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"b1e94f0df7041bcae97455508f423178aef9d61d","message":"heading formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"60050e3c0fe34980f7db5b8bd46430f953f0c3a3","message":"fix linux/unix directory and add note about the XDG specification followed","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["README.md"]}},{"commit":"39ef09aa5b0d43b5128299511afe80336aa38203","message":"add local parser plugin feature","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"]}},{"commit":"8377d4311611c242e16eaebe66dafac9529150d4","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"54e4c447ab34ae54c73c92df40f1b4ca6ffb2277","message":"clean up formatting","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"]}},{"commit":"937a9fa9cf2ede8e686ba853989f33e4a483a0ad","message":"vendorize appdirs module","stats":{"files_changed":4,"insertions":613,"deletions":3,"files":["jc/appdirs.py","jc/cli.py","requirements.txt","setup.py"]}},{"commit":"808ff6cf0e784cf0c2d523ff2e01197cb6e88c82","message":"more acknowledgments updates","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["README.md"]}},{"commit":"7f5c649a95a871c3cd8d48731a6d26dcba6f725b","message":"update acknowledgments","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"b72727dec995de1ca5f68ee17a710b086c87d612","message":"update custom parsers info","stats":{"files_changed":1,"insertions":9,"deletions":2,"files":["README.md"]}},{"commit":"3fc88bfb334143b68a9cb78d4034f33e7c0bcf76","message":"Merge pull request #65 from duelafn/local-parsers"},{"commit":"9f2279d5867eb89d4b4b7b4ffca290166ec97c48","message":"Load custom parsers from /jc/jcparsers","stats":{"files_changed":4,"insertions":29,"deletions":2,"files":["README.md","jc/cli.py","requirements.txt","setup.py"]}},{"commit":"346a14cb9bb0d762fc3fa366ad97e5ff85f3992a","message":"change osx_device to unix_device","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]}},{"commit":"dac00d17ff9f3d2bb959697b6e567015bfc2702b","message":"add nixos test","stats":{"files_changed":3,"insertions":17,"deletions":0,"files":["tests/fixtures/nixos/route-ee.json","tests/fixtures/nixos/route-ee.out","tests/test_route.py"]}},{"commit":"9ca7cd40601b97829e8f88071fdfb928d939f7e5","message":"update docs","stats":{"files_changed":1,"insertions":17,"deletions":34,"files":["jc/parsers/route.py"]}},{"commit":"aa31628970b12295a41dff20e829fcce9f8a4d07","message":"update docs","stats":{"files_changed":5,"insertions":70,"deletions":63,"files":["README.md","docs/parsers/netstat.md","docs/parsers/route.md","docs/parsers/stat.md","jc/parsers/netstat.py"]}},{"commit":"bed694fcf5c8c31bbd4f3e88759fe7ab82382d24","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"4b4af69fa184896ec15b5be7dc8416f36f921d5e","message":"fix date","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]}},{"commit":"9d96190a5b19e8d71c3ac66eb0303d269dd4ce5d","message":"Merge pull request #64 from kellyjonbrazil/dev"},{"commit":"fa44d48c094a55e499c2c780d109bf277736b42e","message":"freebsd fixes, tests, and fixtures","stats":{"files_changed":6,"insertions":129,"deletions":7,"files":["changelog.txt","jc/parsers/stat.py","tests/fixtures/freebsd12/stat.json","tests/fixtures/freebsd12/stat.out","tests/fixtures/osx-10.14.6/stat.json","tests/test_stat.py"]}},{"commit":"4ef961c2788c935b1fea1c9777b976e7b89e7367","message":"add freebsd test and fixtures","stats":{"files_changed":3,"insertions":20,"deletions":0,"files":["tests/fixtures/freebsd12/ntpq-p.json","tests/fixtures/freebsd12/ntpq-p.out","tests/test_ntpq.py"]}},{"commit":"292a837d5c47165ccb155f079b0a114b5c17a98e","message":"add tests and fixtures for freebsd12","stats":{"files_changed":3,"insertions":22,"deletions":0,"files":["tests/fixtures/freebsd12/last.json","tests/fixtures/freebsd12/last.out","tests/test_last.py"]}},{"commit":"aa7b915d847dbd29d2c09b2cc40b847e37174ffb","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/last.py"]}},{"commit":"c46fe73236b912d2ee89dfb36ff259fe95fd0479","message":"add last fixes for freebsd","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]}},{"commit":"039b2c129cbe79d2d23b1194b043d8b730609956","message":"freebsd fixes","stats":{"files_changed":1,"insertions":10,"deletions":1,"files":["jc/parsers/last.py"]}},{"commit":"8f2e5e4808b30c658a4cb87125639e4d7d6c15d8","message":"fix compatible logic","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]}},{"commit":"c4da8e4f78e6b4aaa4aff76ae042be9aaec832a7","message":"add nixos and freebsd to tested. update new arp fields","stats":{"files_changed":1,"insertions":9,"deletions":3,"files":["README.md"]}},{"commit":"bcab9078a4c2bfd6ae4dca9448b577d9ed0fc01c","message":"add w parser fix","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]}},{"commit":"b3c6c1ea925bf7cd76368f5074fb8af52a844522","message":"strip whitespace in string fields and add tests","stats":{"files_changed":4,"insertions":29,"deletions":5,"files":["jc/parsers/w.py","tests/fixtures/nixos/w.json","tests/fixtures/nixos/w.out","tests/test_w.py"]}},{"commit":"a3af8662bd491e344c93d24afabd23e90efd8086","message":"add permanent field","stats":{"files_changed":3,"insertions":205,"deletions":3,"files":["tests/fixtures/osx-10.11.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a2.json"]}},{"commit":"35940d0bc80bf61b11f40b1e1043835f26eb391c","message":"add freebsd permanent and expires fields","stats":{"files_changed":6,"insertions":59,"deletions":4,"files":["changelog.txt","docs/parsers/arp.md","jc/parsers/arp.py","tests/fixtures/freebsd12/arp-a.json","tests/fixtures/freebsd12/arp-a.out","tests/test_arp.py"]}},{"commit":"26994cdcb7148d2c9d1701bca9541d247356260b","message":"add freebsd compatibility info","stats":{"files_changed":8,"insertions":115,"deletions":85,"files":["docs/parsers/df.md","docs/parsers/fstab.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/route.md","docs/parsers/stat.md","docs/parsers/uname.md"]}},{"commit":"017159a829691cb6a7174f123d024eb252179b75","message":"add freebsd nestat tests and fixtures","stats":{"files_changed":15,"insertions":221,"deletions":0,"files":["tests/fixtures/freebsd12/netstat-Aa.json","tests/fixtures/freebsd12/netstat-AaT.json","tests/fixtures/freebsd12/netstat-AaT.out","tests/fixtures/freebsd12/netstat-AanP.json","tests/fixtures/freebsd12/netstat-AanP.out","tests/fixtures/freebsd12/netstat-Aax.json","tests/fixtures/freebsd12/netstat-Aax.out","tests/fixtures/freebsd12/netstat-aT.json","tests/fixtures/freebsd12/netstat-aT.out","tests/fixtures/freebsd12/netstat-an.json","tests/fixtures/freebsd12/netstat-i.json","tests/fixtures/freebsd12/netstat-ib.json","tests/fixtures/freebsd12/netstat-ib.out","tests/fixtures/freebsd12/netstat-r.json","tests/test_netstat.py"]}},{"commit":"b4e9c85e08d199dad67f03c7603194278a022696","message":"fixup -T freebsd output and add whitespace stripping to parse_post","stats":{"files_changed":1,"insertions":12,"deletions":0,"files":["jc/parsers/netstat_freebsd_osx.py"]}},{"commit":"189146cd84cfad262f2b2601bb0cb4b9dde2587e","message":"add more ints. remove whitespace strip code and move to freebsd_osx module","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/netstat.py"]}},{"commit":"af34153ffab10ca1ad7f44736d379d91ae43c813","message":"version bump","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["changelog.txt","jc/cli.py"]}},{"commit":"bf2ff3ffbb639446779b1f04f2997707d99c0a1f","message":"fix compatibility search for platform names that append the version number (e.g. freebsd12)","stats":{"files_changed":1,"insertions":8,"deletions":1,"files":["jc/utils.py"]}},{"commit":"6423c9efd69e938af38934a97ca6b65009e8f07e","message":"integer and float updates","stats":{"files_changed":1,"insertions":34,"deletions":5,"files":["jc/parsers/netstat.py"]}},{"commit":"58ab0d4ece7f006ce9431afb9e0fecbe60930be7","message":"strip whitespace from string fields","stats":{"files_changed":4,"insertions":12,"deletions":4,"files":["changelog.txt","jc/parsers/netstat.py","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json"]}},{"commit":"83a738bf4d756036d6269b9153220d7f1018ac9c","message":"update fixtures for osx_flags and osx_inode name change to unix_flags and unix_inode","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json"]}},{"commit":"3640671fc6a67c9628fd47e19e9fe0a0738439ce","message":"rename module","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/{netstat_osx.py => netstat_freebsd_osx.py}"]}},{"commit":"1da623b30ef6f9b12ac231518d2d4e7dadcf717b","message":"add items","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["changelog.txt"]}},{"commit":"b10ca64646e93d9797182ea046f4956a17b37627","message":"change osx_inode and osx_flags to unix_inode and unix_flags. Also rename netstat_osx module to netstat_freebsd_osx","stats":{"files_changed":1,"insertions":71,"deletions":71,"files":["jc/parsers/netstat.py"]}},{"commit":"2128763ee67a07da6ebf123abeec39794bc1f4e2","message":"fix osx version from 16.4 to 14.6","stats":{"files_changed":1,"insertions":12,"deletions":12,"files":["tests/test_netstat.py"]}},{"commit":"a27e7ed39c63c04cfa78caceaada42f7a9496a2c","message":"test updates for added route_flags_pretty and flags_pretty fields","stats":{"files_changed":12,"insertions":12,"deletions":12,"files":["tests/fixtures/centos-7.7/netstat-r.json","tests/fixtures/centos-7.7/netstat-rne.json","tests/fixtures/centos-7.7/netstat-rnee.json","tests/fixtures/centos-7.7/route-vn.json","tests/fixtures/centos-7.7/route.json","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-rnl.json","tests/fixtures/ubuntu-18.04/netstat-r.json","tests/fixtures/ubuntu-18.04/netstat-rne.json","tests/fixtures/ubuntu-18.04/netstat-rnee.json","tests/fixtures/ubuntu-18.04/route-vn.json","tests/fixtures/ubuntu-18.04/route.json"]}},{"commit":"f07b7eaa474eb87dbdbc7fbe41b9386feff7bee2","message":"add flags_pretty","stats":{"files_changed":1,"insertions":38,"deletions":12,"files":["jc/parsers/route.py"]}},{"commit":"6ce18de84ce16a926f9cd97c3210ef209c3352da","message":"add route_flags_pretty","stats":{"files_changed":3,"insertions":130,"deletions":69,"files":["jc/parsers/netstat.py","jc/parsers/netstat_linux.py","jc/parsers/netstat_osx.py"]}},{"commit":"8631b756e7ab8cd71c2a3eb288e2d1823cec5782","message":"add freebsd test files","stats":{"files_changed":4,"insertions":76,"deletions":0,"files":["tests/fixtures/freebsd12/netstat-Aa.out","tests/fixtures/freebsd12/netstat-an.out","tests/fixtures/freebsd12/netstat-i.out","tests/fixtures/freebsd12/netstat-r.out"]}},{"commit":"7414d984125300164a5b6156d7a80128d4d6cb15","message":"add freebsd compatibility","stats":{"files_changed":6,"insertions":18,"deletions":18,"files":["jc/parsers/df.py","jc/parsers/fstab.py","jc/parsers/mount.py","jc/parsers/ntpq.py","jc/parsers/stat.py","jc/parsers/uname.py"]}},{"commit":"d7b19892e8fb11e17fcbadcdbb08d49897d7754f","message":"add freebsd support for netstat -i","stats":{"files_changed":2,"insertions":10,"deletions":7,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"]}},{"commit":"96df396eaf4e030113005a95e525d644c394dfe1","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"2f6f640317da5af894f34f187c4243ef0c599d07","message":"spelling","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"c4a0a50f3a3ac5833ab5d2f8a0cb3f18da335812","message":"add nix-env","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]}},{"commit":"658f8a3842273cea049689b3aea15d89a7294b24","message":"add zypper and ports info","stats":{"files_changed":1,"insertions":10,"deletions":3,"files":["README.md"]}},{"commit":"bfb876a1e394ff63c6773965ba0b65da4e109c1b","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]}},{"commit":"90c34b1f4ee2d9ec8125346bb90b227f76ada2ba","message":"fix dmidecode example","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]}},{"commit":"3f9164ea77ec41e1b0671d0a642900d8e36faf9b","message":"bold formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"7fd6fecbf5a08b1f13aa7e906e94be9bc126780a","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"8029f72363a4d19938df07603f03a0147f6246a8","message":"change osx_flags from integer to string","stats":{"files_changed":6,"insertions":10,"deletions":7,"files":["changelog.txt","docs/parsers/stat.md","jc/cli.py","jc/parsers/stat.py","setup.py","tests/fixtures/osx-10.14.6/stat.json"]}},{"commit":"c7fdce5d3b7566a7d290627767c47d9c196e02ad","message":"Merge pull request #62 from kellyjonbrazil/dev"},{"commit":"84f48aa369a458f534523ecc1e3aaaf403d06f1c","message":"version bump","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"2e9a0a9c1221dd01bd683ecbc4871d03738da671","message":"add features","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["changelog.txt"]}},{"commit":"c1f6f2b9508e558ab88b4a0a61e93a6cf5460bea","message":"osx fixes and tests","stats":{"files_changed":5,"insertions":116,"deletions":4,"files":["docs/parsers/stat.md","jc/parsers/stat.py","tests/fixtures/osx-10.14.6/stat.json","tests/fixtures/osx-10.14.6/stat.out","tests/test_stat.py"]}},{"commit":"ede21bca13c4b46899721f01d979c8b063f861a3","message":"add OSX support for stat","stats":{"files_changed":1,"insertions":110,"deletions":78,"files":["jc/parsers/stat.py"]}},{"commit":"8dd9a9f9cbc70a19176f909f6ac76b2bcf670736","message":"add netstat -i tests","stats":{"files_changed":5,"insertions":45,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-i.json","tests/fixtures/osx-10.14.6/netstat-i.json","tests/fixtures/ubuntu-18.04/netstat-i.json","tests/fixtures/ubuntu-18.04/netstat-i.out","tests/test_netstat.py"]}},{"commit":"04f92cd1330759e4bad1c0304b9e1c28e8d32d59","message":"add linux support for netstat -i","stats":{"files_changed":5,"insertions":166,"deletions":4,"files":["README.md","docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_linux.py","tests/fixtures/centos-7.7/netstat-i.out"]}},{"commit":"8be8d2393b276a9249e1c573ce19cf630f0942fd","message":"add netstat -i support for OSX","stats":{"files_changed":3,"insertions":99,"deletions":3,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-i.out"]}},{"commit":"0a879681be68fe2e6e5c013ab0fe18de99b04f7e","message":"add netstat -r to docs","stats":{"files_changed":3,"insertions":97,"deletions":282,"files":["README.md","docs/parsers/netstat.md","jc/parsers/netstat.py"]}},{"commit":"2ca1587a49511899bf719e0b0c7de32158fc491d","message":"add linux netstat -r tests","stats":{"files_changed":10,"insertions":102,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-r.json","tests/fixtures/centos-7.7/netstat-rne.json","tests/fixtures/centos-7.7/netstat-rnee.json","tests/fixtures/ubuntu-18.04/netstat-r.json","tests/fixtures/ubuntu-18.04/netstat-r.out","tests/fixtures/ubuntu-18.04/netstat-rne.json","tests/fixtures/ubuntu-18.04/netstat-rne.out","tests/fixtures/ubuntu-18.04/netstat-rnee.json","tests/fixtures/ubuntu-18.04/netstat-rnee.out","tests/test_netstat.py"]}},{"commit":"ec2cd2d708a57c0458657416bedcb4340cb40901","message":"add netstat -r support for linux","stats":{"files_changed":9,"insertions":70,"deletions":11,"files":["docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_linux.py","jc/parsers/netstat_osx.py","tests/fixtures/centos-7.7/netstat-r.out","tests/fixtures/centos-7.7/netstat-rne.out","tests/fixtures/centos-7.7/netstat-rnee.out","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-rnl.json"]}},{"commit":"5d0dbece9317e84a47d9f4b2d18a9ffa33fbee6e","message":"add netstat -r functionality for OSX","stats":{"files_changed":8,"insertions":288,"deletions":5,"files":["docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-r.out","tests/fixtures/osx-10.14.6/netstat-rnl.json","tests/fixtures/osx-10.14.6/netstat-rnl.out","tests/test_netstat.py"]}},{"commit":"df1e4b414b2bda5be3153767cd854b2483ba600b","message":"remove unused folder","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":[".gitignore"]}},{"commit":"40760991e7dae43cd15134310f7bbb5ce0f58dae","message":"update copyright date","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["LICENSE.md"]}},{"commit":"464f5f86cf2c8fe6a1a857b0ad4d221a3edf3d88","message":"update description","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"7b09e9fccdd4f09218a500b54c898ada1b9843c7","message":"set empty values to Null and update fixtures","stats":{"files_changed":5,"insertions":8,"deletions":5,"files":["docs/parsers/dmidecode.md","jc/parsers/dmidecode.py","tests/fixtures/centos-7.7/dmidecode.json","tests/fixtures/fedora32/dmidecode.json","tests/fixtures/ubuntu-18.04/dmidecode.json"]}},{"commit":"6cba7d429898d331c674c778f8bd85ba75a8dca9","message":"remove linux from description","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"9730f62e4970b5a4490f8dc24b6cfb9cacd0cbf2","message":"fixup name field and update test fixtures","stats":{"files_changed":5,"insertions":151,"deletions":133,"files":["jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json","tests/fixtures/osx-10.14.6/netstat.out"]}},{"commit":"e0c1c87f549eee000b93b5f5a3e8d0b052eb7d32","message":"formatting","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["README.md"]}},{"commit":"931b3d2b836b251590497f4cfa65f106762086c1","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"e5d561baeecf1fd83a884b3cd9d322762f750dfb","message":"add multipath condition for osx detection","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/netstat.py"]}},{"commit":"2867593e7aa12299686e2c6aa0f2a79a9b550b53","message":"changelog update","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["changelog.txt"]}},{"commit":"dd52fee5635c977d5c77046ab9fe78d2ed10deef","message":"osx netstat tests and fixtures","stats":{"files_changed":7,"insertions":2141,"deletions":0,"files":["tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-Abn.out","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat-An.out","tests/fixtures/osx-10.14.6/netstat.json","tests/fixtures/osx-10.14.6/netstat.out","tests/test_netstat.py"]}},{"commit":"8e1f8858273e671a882a07eae1c35b38f5298c94","message":"fix filtered netstat views","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["jc/parsers/netstat.py"]}},{"commit":"2d39a58f902e6af77f8f96ffcd1d68b7cbadd56c","message":"doc update","stats":{"files_changed":4,"insertions":81,"deletions":14,"files":["README.md","docs/parsers/dmidecode.md","docs/parsers/netstat.md","jc/parsers/dmidecode.py"]}},{"commit":"9c4fa2ae2601ca4880c0b078fa917f01f1392e0e","message":"integer conversions and icmp fix","stats":{"files_changed":2,"insertions":22,"deletions":2,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"]}},{"commit":"de52d84e82df6d8c5e2416c6bc44e59c41c685da","message":"fix udp state and udp46 entries","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/netstat_osx.py"]}},{"commit":"ce9b55059a28d363b8b0ae4f3ccbdbdc4bf4b58e","message":"organize files","stats":{"files_changed":2,"insertions":185,"deletions":167,"files":["jc/parsers/netstat.py","jc/parsers/netstat_linux.py"]}},{"commit":"bcd370a6a01a115d470776f5690f8571d68d3930","message":"code cleanup","stats":{"files_changed":2,"insertions":5,"deletions":15,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"]}},{"commit":"c8216850abd2d0b8cc6761453f853f296e8a28f3","message":"code cleanup","stats":{"files_changed":1,"insertions":19,"deletions":55,"files":["jc/parsers/netstat_osx.py"]}},{"commit":"f5feedb90b39e5c3f4564615482d47ccd145844f","message":"fix comments","stats":{"files_changed":1,"insertions":1,"deletions":10,"files":["jc/parsers/netstat_osx.py"]}},{"commit":"a4371cd187fe5077018edbfeee77eb17c6a90ad3","message":"support netstat -A","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/netstat_osx.py"]}},{"commit":"9d5ba4c83404e4fab5c0f40c30b4735685499a31","message":"formatting","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/netstat_osx.py"]}},{"commit":"1639dee1bb93f6f89e8bb7b37134dc1f561c479c","message":"fix parse_post","stats":{"files_changed":1,"insertions":10,"deletions":35,"files":["jc/parsers/netstat_osx.py"]}},{"commit":"9363f430f20951e6fa739f06c85c5b6b3421b60d","message":"use list extend method to simplify code","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/netstat.py"]}},{"commit":"9192a0907364c772558380be1373b8dcea972a6d","message":"parse all sections","stats":{"files_changed":1,"insertions":124,"deletions":34,"files":["jc/parsers/netstat_osx.py"]}},{"commit":"b915eb97556ccc5fc60e8d23f7298ffec2d8e3b7","message":"initial osx parser","stats":{"files_changed":2,"insertions":237,"deletions":55,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"]}},{"commit":"1cfcc2b592f682d2b50a0c4188fa3ae832a6c682","message":"tighten up line test logic when counting tabs","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/dmidecode.py"]}},{"commit":"7138dd02b73073441a52c9b574bf0d6e02f0d7d9","message":"cleanup variables after adding to item","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/parsers/dmidecode.py"]}},{"commit":"b4276643b70f7820f8f53df22b32fffb54e30ca2","message":"add dmidecode tests and fixtures","stats":{"files_changed":4,"insertions":56,"deletions":0,"files":["tests/fixtures/centos-7.7/dmidecode.json","tests/fixtures/fedora32/dmidecode.json","tests/fixtures/ubuntu-18.04/dmidecode.json","tests/test_dmidecode.py"]}},{"commit":"2ef00763bfe7c4348f30026759941efe39861a0c","message":"fix first item","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/dmidecode.py"]}},{"commit":"54364928fc826ead7774a4cec1bcb73a5cb9ee0f","message":"fix oddities like hybrid single/multiline data and items containing multiple records","stats":{"files_changed":2,"insertions":74,"deletions":81,"files":["docs/parsers/dmidecode.md","jc/parsers/dmidecode.py"]}},{"commit":"09b3b4932b0fa4a2b18c88a8465c15a194b727e6","message":"add dmidecode output fixtures","stats":{"files_changed":3,"insertions":35430,"deletions":0,"files":["tests/fixtures/centos-7.7/dmidecode.out","tests/fixtures/fedora32/dmidecode.out","tests/fixtures/ubuntu-18.04/dmidecode.out"]}},{"commit":"29d6670119d8fcd0344e90f01bfb6260aa936e50","message":"convert integers","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/dmidecode.py"]}},{"commit":"2f654b5f1acda01192294f4c18a5a31363e7f387","message":"doc update","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["docs/parsers/dmidecode.md"]}},{"commit":"e53b9f5992450b53efc886b4fa9ca16f3dd07530","message":"add caveats to documentation","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["jc/parsers/dmidecode.py"]}},{"commit":"addb234e6162c58750cb67947bc4776635bf54fb","message":"add dmidecode doc","stats":{"files_changed":1,"insertions":153,"deletions":0,"files":["docs/parsers/dmidecode.md"]}},{"commit":"76eca3b65911a0a340d3d94322a8145ee89c50da","message":"add dmidecode","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"]}},{"commit":"f90dec4c0ecf88623fb22273b7527ec8884826c4","message":"add examples to documentation","stats":{"files_changed":1,"insertions":94,"deletions":5,"files":["jc/parsers/dmidecode.py"]}},{"commit":"8900a59d4cb424ff58d1eb27f8fda7ea0a668a5c","message":"simplify logic by removing redundant block","stats":{"files_changed":1,"insertions":1,"deletions":19,"files":["jc/parsers/dmidecode.py"]}},{"commit":"6685138200d5955115707d04aad0293ea8af5b15","message":"fix for missing multi-line values that come immediately after a previous multi-line value","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dmidecode.py"]}},{"commit":"4d3e65b980d50164b8220e59560822b9871580ea","message":"fix missing values","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/parsers/dmidecode.py"]}},{"commit":"e9282bb546f560da6396f44e2ce9e04136348e2c","message":"add dmidecode parser","stats":{"files_changed":2,"insertions":175,"deletions":0,"files":["jc/cli.py","jc/parsers/dmidecode.py"]}},{"commit":"f5627a45947e5e76e5f3e64d9b30099fe0b962a2","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"81ffdb25105c681c8ed12336d220a102b7f4215e","message":"remove shebang for Fedora packaging","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/cli.py"]}},{"commit":"4c00a99850cb6f69713be7c6ad9ffba11924d9b8","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"2bfcb45b28e2174a8bbc27237e619b5c232ccae8","message":"make cli.py executable","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["jc/cli.py"]}},{"commit":"ab0c10e791283affb227d0d5306701ba7fd29d13","message":"remove execute permissions","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["LICENSE.md","README.md"]}},{"commit":"2c1935115de03a28fe92674b04b2542b0eccb8fe","message":"Merge pull request #61 from kellyjonbrazil/dev"},{"commit":"d98e43dc78205d3224bfc1e67de2da3c5fb7ea9a","message":"add netstat item","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]}},{"commit":"9348988d646d9b9c9970c19e84f311554ae38e7b","message":"add netstat test for Fedora32","stats":{"files_changed":1,"insertions":12,"deletions":0,"files":["tests/test_netstat.py"]}},{"commit":"1285c664679c40b18327c89b85921a80b01f0191","message":"netstat with bluetooth section","stats":{"files_changed":2,"insertions":140,"deletions":0,"files":["tests/fixtures/fedora32/netstat.json","tests/fixtures/fedora32/netstat.out"]}},{"commit":"b7191bbc130e0f33d02c0a4819fa91ffff1599d3","message":"handle bluetooth section (ignore for now)","stats":{"files_changed":1,"insertions":14,"deletions":1,"files":["jc/parsers/netstat.py"]}},{"commit":"98b97509f7893cb95e9651ce9706db5c961aa997","message":"version bump","stats":{"files_changed":3,"insertions":6,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"2b2b570490f3834367a598579473001f45738e8a","message":"add tests for 'gone - no logout'","stats":{"files_changed":3,"insertions":21,"deletions":0,"files":["tests/fixtures/fedora32/last.json","tests/fixtures/fedora32/last.out","tests/test_last.py"]}},{"commit":"cce2d1ff298f2284c43c4534144329f3533a81ad","message":"add condition for 'gone - no logout'","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/last.py"]}},{"commit":"b79600c57249cbb65805caad2524cc2492342be6","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]}},{"commit":"140f1a85437745296b56976bef1b46514e323a4f","message":"test fixes for issue #60","stats":{"files_changed":7,"insertions":7,"deletions":7,"files":["tests/fixtures/centos-7.7/ls-R-newlines.json","tests/fixtures/centos-7.7/ls-R.json","tests/fixtures/centos-7.7/ls-glob.json","tests/fixtures/osx-10.14.6/ls-glob.json","tests/fixtures/ubuntu-18.04/ls-R-newlines.json","tests/fixtures/ubuntu-18.04/ls-R.json","tests/fixtures/ubuntu-18.04/ls-glob.json"]}},{"commit":"e34657cfde6816ab7a7415d83580df0a1d98a5a6","message":"fix issue #60 that was skipping the first file in some instances using -R without -l","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"]}},{"commit":"99070fa6073c4415a6faf8ca69dd6aa089af4062","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"2b46785b1f1281ee63df9159e36068f4607ad9b8","message":"add MIT license to vendorized IfconfigParser class","stats":{"files_changed":1,"insertions":25,"deletions":3,"files":["jc/parsers/ifconfig.py"]}},{"commit":"c72562524b2b9aaca0be372bb24343158829ba5a","message":"fully remove tests from packaging","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"b7dd6441c7e3f54f8a260fceef49aae6816c7151","message":"version bump","stats":{"files_changed":2,"insertions":5,"deletions":1,"files":["changelog.txt","jc/cli.py"]}},{"commit":"31fcc2f755ad86622cf51a75879b14d44f246300","message":"remove manifest.in - no longer needed due to removing tests","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["MANIFEST.in"]}},{"commit":"b391aa14bceffedb5a9c13f3f908923790edefc1","message":"add license_file to metadata","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["setup.cfg"]}},{"commit":"d3c45debbb6690acd341fbcc9b99d1ae4cf0a43c","message":"remove tests and add license file","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["setup.py"]}},{"commit":"5b08469b874553744bd5c5b1fa6581f4dcffacd0","message":"Merge pull request #57 from kellyjonbrazil/dev"},{"commit":"4a77ec63a46554c84e646d31564230774ed87431","message":"add IfconfigParser class","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["docs/parsers/ifconfig.md"]}},{"commit":"d13606b6dc2c207be6dea89a2c3e713c18a574b8","message":"modify dependencies for easier packaging into Fedora","stats":{"files_changed":4,"insertions":7,"deletions":6,"files":["changelog.txt","jc/cli.py","requirements.txt","setup.py"]}},{"commit":"05291c93bba1aa364ba1ac7f2508e24bb362a814","message":"vendorize ifconfig-parser module for easier packaging in Fedora","stats":{"files_changed":1,"insertions":198,"deletions":3,"files":["jc/parsers/ifconfig.py"]}},{"commit":"8cf00a208eb8493300331e7361b72e4f9e3f140e","message":"change text to strings","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"06d73c88767a5b4d6003231c897c447ee5e1faa5","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"649c646ea25ac7f89900cffa8919df01671bd32d","message":"add brew install option","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]}},{"commit":"b7756d92501a7b8ba8e77d77d9d3718a58425beb","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"1cd2cd954c21e5caec333507bd81819c82d45b49","message":"remove references to homebrew/shim to allow tests to pass in homebrew packaging ci/cd","stats":{"files_changed":4,"insertions":2,"deletions":16,"files":["tests/fixtures/osx-10.11.6/du.json","tests/fixtures/osx-10.11.6/du.out","tests/fixtures/osx-10.14.6/du.json","tests/fixtures/osx-10.14.6/du.out"]}},{"commit":"72020b8da999ddca6f9ba82da235c9f42e4f4273","message":"move packages info to jc-packages github page","stats":{"files_changed":1,"insertions":2,"deletions":22,"files":["README.md"]}},{"commit":"cf9720b749e7fc8caed0d2f1f2b1727a22a156b6","message":"update install info","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]}},{"commit":"967b9db7f90a3c3a0352edde7f4455c5f5d45b18","message":"spelling","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["README.md"]}},{"commit":"bb3acb1182f4d509f9ddc7dfcffa4578e0a2bd5e","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"560c7f7e6d1f8a69ab026ddbff753d232ca1d00b","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"79b28417644e00b933f531374d2f7fe8051e61be","message":"add new binary package install info","stats":{"files_changed":1,"insertions":26,"deletions":0,"files":["README.md"]}},{"commit":"a06a89cbd11026aa3910fadd1eff7fe388d02507","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"431bd969eb4809424fe99a02a7decb98bce9ea51","message":"use sys.exit(0) instead of exit()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]}},{"commit":"c87b722aec6e6964c516bbb8e80667ad7d9c6bc7","message":"spelling","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"3688b8b014a1cf753b2207fbf3ebf0292c3fd672","message":"Merge pull request #56 from kellyjonbrazil/dev"},{"commit":"07b8d9e0c0d723d93e6c652f5b6156c467c451c7","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"7454b53e395e9122c00d4cf06b1c2af109913d7a","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["README.md"]}},{"commit":"3d6a76024de0f9dcf91a4ab49cabe461074114fb","message":"update with JC_COLORS info","stats":{"files_changed":1,"insertions":18,"deletions":0,"files":["README.md"]}},{"commit":"421b9809575a8de00229af4b851739889638ac74","message":"JC_COLORS working","stats":{"files_changed":1,"insertions":18,"deletions":37,"files":["jc/cli.py"]}},{"commit":"4a22e27d6a80a988f4de17bce421110d6abb8867","message":"add set_env_colors function","stats":{"files_changed":1,"insertions":64,"deletions":0,"files":["jc/cli.py"]}},{"commit":"99f7842dee0f79cf933fae185cf8b0ed7c8b210f","message":"fix brek on pipe error","stats":{"files_changed":3,"insertions":11,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"7f869b4b187d70752207a7e74c13b858446f898f","message":"change colors to ansi and match jello style","stats":{"files_changed":3,"insertions":9,"deletions":11,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"9665f4ee84680f3a8154b8a43ea668af2907782c","message":"add pypi badge","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]}},{"commit":"606904d48b1c7e0c19a940b5be0b564d1b5be6c8","message":"Merge pull request #53 from kellyjonbrazil/dev"},{"commit":"3f5279b97c386c736e0e2faa5c39d68ef89c46aa","message":"version bump to 1.10.1","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"f5ec21e6ac612566af93158fc3968b901322d04a","message":"use in instead of find()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_luf.py"]}},{"commit":"578a284465f014fe71ad6ac00bd41dc24ab2ced9","message":"use in instead of find()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_ls.py"]}},{"commit":"422e392d9d98a7864312fc7fbd7f45537b71acbe","message":"use in instead of find()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_lj.py"]}},{"commit":"54dfffd34a17d1194690142ac403391fc65bb85f","message":"use in instead of find()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl.py"]}},{"commit":"cffba64d2b9165b44a8856665807111a2ad3a190","message":"use in and startswith() instead of find()","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/stat.py"]}},{"commit":"56a0c12a59bb252d3b7d0929f9fb19b4d96a8437","message":"use in instead of find()","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/pip_list.py"]}},{"commit":"c174d3de18923b2b03befb5a7dfcbd977a8e147e","message":"use in and startswith() instead of find()","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/netstat.py"]}},{"commit":"a9c59ef9fc1bb68c9d0d7beffbeb670baf5b1e3f","message":"fix logic to not for ' type ' in cleandata[0]","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/mount.py"]}},{"commit":"abdb9b26732a6a71f5938d665b2ca43a381e1b33","message":"use in instead of find()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/mount.py"]}},{"commit":"548aaab6262878d21f8b9539950cfad48638e35c","message":"remove old commented code","stats":{"files_changed":1,"insertions":1,"deletions":42,"files":["jc/parsers/lsof.py"]}},{"commit":"20571c87ae9e1ca8a1f3120511910751420a35ac","message":"us in instead of find()","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/jobs.py"]}},{"commit":"19e49200de5c731f76b42e80388c5223e8097e39","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"]}},{"commit":"d32f5c67a91ede572c88e431b2ad0ce4d6c87dec","message":"use startswith() instead of find()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/iptables.py"]}},{"commit":"b83b626435c55d2aa63e56dd8f22603da59e7626","message":"use startswith() instead of find()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ifconfig.py"]}},{"commit":"ab2c1b25ec5da5f2ba238868c4dfca95a44da30e","message":"use startswith() and in instead of find()","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/hosts.py"]}},{"commit":"f2d46313a4508f13656cdb360f83fdf4116cc7d7","message":"use startswith() instead of find()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/fstab.py"]}},{"commit":"87e4796a6c936793e2784346819c7033d59b91e4","message":"use in instead of .find()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/df.py"]}},{"commit":"0014a5c2f4c056c2683d6614a65d778b1f527932","message":"us startswith() and in instead of .find()","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab_u.py"]}},{"commit":"7af56e0dadab7d8b9538f3b7a550ad6dd1ac217d","message":"use startswith() and in instead of find()","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab.py"]}},{"commit":"a5ae6e3c017b041f9079ff12455b7551ad204cb3","message":"use startswith() instead of find()","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/arp.py"]}},{"commit":"fe1a0d1faf46f55ed2888ed0065f3f3144691ed8","message":"use in instead of .find()","stats":{"files_changed":1,"insertions":10,"deletions":9,"files":["jc/parsers/dig.py"]}},{"commit":"302f05cdda305e46e69b74d5b0096f64c17da637","message":"prettify style block","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]}},{"commit":"c0044be7b0b6dadcffb64cb88ad92bf653dd2b6b","message":"rename color grey to gray","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]}},{"commit":"01100788070b82b4b827ef356972fa9b8f737eeb","message":"update badge","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"42eacb45f8fdf8085c6231bf5297629c2ec97c22","message":"rename to Tests","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]}},{"commit":"a43e2e19916662d509883457c160d7f95f97ae12","message":"add -m option info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]}},{"commit":"c8b721d4f6e46a2db77e1140b9caeb3b403fef72","message":"version bump to 1.10.0","stats":{"files_changed":4,"insertions":9,"deletions":3,"files":["changelog.txt","jc/cli.py","requirements.txt","setup.py"]}},{"commit":"d0bfddc3d9989444757d6668726c916e5363620b","message":"add color and -m monochrome option","stats":{"files_changed":1,"insertions":41,"deletions":6,"files":["jc/cli.py"]}},{"commit":"6b925a16c87cf75bb30edfda38511e8f84a4f6d6","message":"add tests badge","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]}},{"commit":"89ebd9fc2271d2c76353d5707bfd4afb7dedc278","message":"add axfr info to schema","stats":{"files_changed":2,"insertions":20,"deletions":0,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]}},{"commit":"6b4ba662317629839aa62fbcfefb8ed3337c37ef","message":"Merge pull request #52 from kellyjonbrazil/dev"},{"commit":"5b697dc38141cdd47fcdd63bf295a80a7da86697","message":"add more dig tests","stats":{"files_changed":1,"insertions":72,"deletions":0,"files":["tests/test_dig.py"]}},{"commit":"9ba73c95d1a528a9a92be4068805bb5aa027901e","message":"add tests","stats":{"files_changed":7,"insertions":215,"deletions":0,"files":["tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/centos-7.7/dig-axfr.out","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-axfr.out","tests/fixtures/ubuntu-18.04/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-axfr.out","tests/test_dig.py"]}},{"commit":"93aa39044749c4c0ed749f62fb00fc1c76dc5af0","message":"version bump to v1.9.3","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"3cfb8945ddd83c00a720c44e2c1d97da0d8bad25","message":"use startswith() instead of find","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/dig.py"]}},{"commit":"cd8d38f2a136c4f35efc020b3476d09e965b71f1","message":"add axfr support","stats":{"files_changed":1,"insertions":50,"deletions":1,"files":["jc/parsers/dig.py"]}},{"commit":"8ec8cd62944c59c462ab9f520c1dcfd14218b1ed","message":"Merge pull request #50 from kellyjonbrazil/dev"},{"commit":"c02811356153c2b4f8b2d7efb7f48bf8f7748068","message":"version bump to v1.9.2","stats":{"files_changed":3,"insertions":6,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"5f22e1c8031b808ef02ffe078408bd58cc76e570","message":"fix and test for osx arp entries without ifscope","stats":{"files_changed":3,"insertions":33,"deletions":0,"files":["tests/fixtures/osx-10.14.6/arp-a2.json","tests/fixtures/osx-10.14.6/arp-a2.out","tests/test_arp.py"]}},{"commit":"d3351787e5cabd064c19e6617e9535e501686404","message":"change osx detection","stats":{"files_changed":1,"insertions":10,"deletions":9,"files":["jc/parsers/arp.py"]}},{"commit":"e5bea9ae3b0a70b38f7da7dd9184343dbbd18887","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/file.py"]}},{"commit":"93c710abe9171568f61f65c4f84c040ffc24870c","message":"Merge pull request #49 from kellyjonbrazil/dev"},{"commit":"c29e7cfe5cc4b2151912c6f618137d1b6c39c7be","message":"version bump to 1.9.1","stats":{"files_changed":4,"insertions":9,"deletions":6,"files":["README.md","changelog.txt","jc/cli.py","setup.py"]}},{"commit":"cb5c1ba00dc0e02bf6ad6c40096d99e319fa6171","message":"add tests for fix to make the file parser splitting more robust","stats":{"files_changed":3,"insertions":101,"deletions":0,"files":["tests/fixtures/osx-10.14.6/file2.json","tests/fixtures/osx-10.14.6/file2.out","tests/test_file.py"]}},{"commit":"9a012b94e1942a14bc6dae3fb967ef618819c77b","message":"make splitting more robust","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/file.py"]}},{"commit":"400f5a44ece280cb0097d806b78a9490d2905600","message":"Merge pull request #48 from kellyjonbrazil/dev"},{"commit":"a2ab5bab91ea980399df1afb9d8071fa3282d04e","message":"version bump to v1.9.0","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"fc8ab27361df3359b706125531b2643612d6996a","message":"bugfix for misaligned columns and additional test for ntpq #31","stats":{"files_changed":6,"insertions":93,"deletions":51,"files":["README.md","docs/parsers/ntpq.md","jc/parsers/ntpq.py","tests/fixtures/ubuntu-18.04/ntpq-p2.json","tests/fixtures/ubuntu-18.04/ntpq-p2.out","tests/test_ntpq.py"]}},{"commit":"59f19d33a5c6677ea756a9424fdb032b430511a2","message":"add file command tests for #41","stats":{"files_changed":7,"insertions":153,"deletions":0,"files":["tests/fixtures/centos-7.7/file.json","tests/fixtures/centos-7.7/file.out","tests/fixtures/osx-10.14.6/file.json","tests/fixtures/osx-10.14.6/file.out","tests/fixtures/ubuntu-18.04/file.json","tests/fixtures/ubuntu-18.04/file.out","tests/test_file.py"]}},{"commit":"dfc96181159748d019419a2cba7aa9cb3b7a2a2c","message":"add file parser for issue #41","stats":{"files_changed":6,"insertions":260,"deletions":1,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/file.md","jc/cli.py","jc/parsers/file.py"]}},{"commit":"8e02e5c75a11cf205299ee6f87b67f9b787cf55e","message":"fix issue with getting options with some commands #47","stats":{"files_changed":2,"insertions":6,"deletions":5,"files":["jc/cli.py","tests/test_cli.py"]}},{"commit":"970493ab9346a344b21be7614903ad81bc65a6e9","message":"add magic commands","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["jc/parsers/airport.py","jc/parsers/airport_s.py"]}},{"commit":"64d78956eb33ca0a2564fded3d12729ee036a915","message":"update acknowledgment","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]}},{"commit":"40c05346f4098f8eea14c42da07df3faa143587a","message":"re-adding optimizations from https://github.com/philippeitis","stats":{"files_changed":1,"insertions":12,"deletions":25,"files":["jc/parsers/history.py"]}},{"commit":"e9b0bc1409a824a82dabd2479892b7d18bad8c3f","message":"doc update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/airport.py"]}},{"commit":"798e6bb7d939176bb36771a6d41bd55403d583be","message":"tests passing for airport -s. issue #46","stats":{"files_changed":2,"insertions":29,"deletions":0,"files":["tests/fixtures/osx-10.14.6/airport-s.json","tests/test_airport_s.py"]}},{"commit":"12a370deed03ba42d7b7ebb410195ce5f32bb9c2","message":"add airport -s parser for issue #46","stats":{"files_changed":8,"insertions":372,"deletions":9,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/airport.md","docs/parsers/airport_s.md","jc/cli.py","jc/parsers/airport.py","jc/parsers/airport_s.py"]}},{"commit":"553bfbe1a0dd866851ba7eca66e9295c2097ad86","message":"tests passing for airport -I. Issue #46","stats":{"files_changed":3,"insertions":40,"deletions":6,"files":["docs/parsers/airport.md","jc/parsers/airport.py","tests/test_airport.py"]}},{"commit":"52494321fcfe0dc7ee71d8d78210b3c10372a237","message":"fixes and docs for airport parser issue #46","stats":{"files_changed":5,"insertions":120,"deletions":15,"files":["README.md","docs/parsers/airport.md","jc/parsers/airport.py","tests/fixtures/osx-10.14.6/airport-I.json","tests/fixtures/osx-10.14.6/airport-I.out"]}},{"commit":"c6c9e06496683d2dd3586d17085801c7e698d960","message":"added airport command parser","stats":{"files_changed":7,"insertions":196,"deletions":1,"files":["changelog.txt","docgen.sh","docs/parsers/airport.md","jc/cli.py","jc/parsers/airport.py","tests/fixtures/osx-10.14.6/airport-I.out","tests/fixtures/osx-10.14.6/airport-s.out"]}},{"commit":"e3a6c05a58a2451e70975d8fabf644c56603c73d","message":"timedatectl fixes, tests, and fixtures for issue #42","stats":{"files_changed":5,"insertions":64,"deletions":17,"files":["docs/parsers/timedatectl.md","jc/parsers/timedatectl.py","tests/fixtures/centos-7.7/timedatectl.json","tests/fixtures/ubuntu-18.04/timedatectl.json","tests/test_timedatectl.py"]}},{"commit":"391d06f68d1f45d33590d5407d3a5e4f723af717","message":"change selection_state to state","stats":{"files_changed":7,"insertions":35,"deletions":35,"files":["README.md","docs/parsers/ntpq.md","jc/parsers/ntpq.py","tests/fixtures/centos-7.7/ntpq-p.json","tests/fixtures/centos-7.7/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-p.json","tests/fixtures/ubuntu-18.04/ntpq-pn.json"]}},{"commit":"99804ea06e0c70e3a82ddc7f9c7a42343374d700","message":"added timedatectl status parser","stats":{"files_changed":6,"insertions":222,"deletions":0,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/timedatectl.md","jc/cli.py","jc/parsers/timedatectl.py"]}},{"commit":"51935deb2ad18e4ea3ca16954ce810354f6095a9","message":"timedatectl test fixtures","stats":{"files_changed":2,"insertions":21,"deletions":0,"files":["tests/fixtures/centos-7.7/timedatectl.out","tests/fixtures/ubuntu-18.04/timedatectl.out"]}},{"commit":"b24d0c3a475b88d9ccf1a8fe29715ee60972fcad","message":"ntpq docs","stats":{"files_changed":2,"insertions":34,"deletions":2,"files":["README.md","jc/parsers/ntpq.py"]}},{"commit":"762a886d6fdf5c2ad21d81868d138fb32621ed1c","message":"add ntpq tests","stats":{"files_changed":8,"insertions":133,"deletions":0,"files":["tests/fixtures/centos-7.7/ntpq-p.json","tests/fixtures/centos-7.7/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-p.json","tests/fixtures/ubuntu-18.04/ntpq-p.out","tests/fixtures/ubuntu-18.04/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-pn.out","tests/fixtures/ubuntu-18.04/ntqp-p.out","tests/test_ntpq.py"]}},{"commit":"2c3e9ddfe47f56cd7edc2fdf6317f7ecec0b7918","message":"add ntpq parser for issue #31","stats":{"files_changed":7,"insertions":543,"deletions":0,"files":["changelog.txt","docgen.sh","docs/parsers/ntpq.md","jc/cli.py","jc/parsers/ntpq.py","tests/fixtures/centos-7.7/ntpq-p.out","tests/fixtures/centos-7.7/ntpq-pn.out"]}},{"commit":"c7cd2b63c8f24e9d17c458880fe401d8032395ab","message":"delete unused test file","stats":{"files_changed":1,"insertions":0,"deletions":91,"files":["tests/fixtures/generic/oscar_age_male.csv"]}},{"commit":"f0528ea83112e71ff51c89be27fc9bbdfbbf1951","message":"Merge pull request #45 from kellyjonbrazil/dev"},{"commit":"5bc5596f604fb87dffbfdf44ce2395b16bf01297","message":"version bump to 1.8.1","stats":{"files_changed":4,"insertions":17,"deletions":4,"files":["changelog.txt","jc/cli.py","setup.py","tests/test_ls.py"]}},{"commit":"2c27ac46be803b583caf82c1765bd0c35cee8bc1","message":"add ls test fixtures","stats":{"files_changed":2,"insertions":2454,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-lR-empty-folder.json","tests/fixtures/osx-10.14.6/ls-lR-empty-folder.out"]}},{"commit":"caad840153e40dc660a2d5e06a96f3451fef25f9","message":"Merge pull request #44 from philippeitis/patch-5"},{"commit":"65bd7e2904016141c1ed53cdd437865c66d7628e","message":"Merge pull request #1 from kellyjonbrazil/pr/44"},{"commit":"c3d7d7db12d4870fc4499e0e3445d85ae89f2aea","message":"removed whitespace","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"56053103625af6fb7fa749fc5bc3dbdc62fc223c","message":"added tests, removed os import, changed to 'assertEqual'","stats":{"files_changed":1,"insertions":11,"deletions":4,"files":["tests/test_cli.py"]}},{"commit":"17b6efe82e6a558353b011c543489eaaf3a6d3ac","message":"Create basic tests for generate_magic_commands()","stats":{"files_changed":1,"insertions":14,"deletions":0,"files":["tests/test_cli.py"]}},{"commit":"a032ae56ae7d247e00415267b65b2a8b80a3302e","message":"Pass args to generate_magic_command() to allow testing.","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]}},{"commit":"eab2f4b0566b4c76db661cbfa99a56a6bf8d6541","message":"Move core magic() logic into seperate function for testability, minor tweaks.","stats":{"files_changed":1,"insertions":33,"deletions":19,"files":["jc/cli.py"]}},{"commit":"aff86ae6c71abfe1cbdba5c574a5f3707292ec19","message":"reimpliment magic() based on the dictionary approach suggested by philippeitis","stats":{"files_changed":1,"insertions":29,"deletions":39,"files":["jc/cli.py"]}},{"commit":"7ece9ddc1a37551cdaaac50f37a48e6d98b18bf4","message":"version bump ls","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]}},{"commit":"7cd048e839a7cc8404fd5abc153a3d315c207819","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]}},{"commit":"1e22f610a33903e8525d35a18b1dcf760a93791e","message":"fix for osx - doesn't print 'total xx' line if empty directory (issue #40)","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/ls.py"]}},{"commit":"5249c972ae25e9b289a2667bf471aad5e58c70a9","message":"add to changelog","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["changelog.txt"]}},{"commit":"fd45f856a050f6c56a7a6b50b97b3d8c4de28af0","message":"import jc.utils instead of jc","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/history.py"]}},{"commit":"c8ab40cd33b14a3a1937ecf64bb23e282f5bb921","message":"ignore .github folder","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"]}},{"commit":"b2c872925b37254dac74578c1803b4127f8411c4","message":"add utf-8 encoding for testing on Windows","stats":{"files_changed":20,"insertions":208,"deletions":220,"files":["tests/test_ls.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_passwd.py","tests/test_pip_list.py","tests/test_ps.py","tests/test_route.py","tests/test_shadow.py","tests/test_ss.py","tests/test_systemctl_lj.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py","tests/test_who.py","tests/test_xml.py","tests/test_yaml.py"]}},{"commit":"f48e229202f8ab1ebfa502ca57bb31cf673c7a62","message":"utf-8 open for windows tests","stats":{"files_changed":21,"insertions":192,"deletions":192,"files":["tests/test_arp.py","tests/test_blkid.py","tests/test_crontab.py","tests/test_crontab_u.py","tests/test_csv.py","tests/test_df.py","tests/test_dig.py","tests/test_du.py","tests/test_env.py","tests/test_free.py","tests/test_fstab.py","tests/test_group.py","tests/test_gshadow.py","tests/test_history.py","tests/test_hosts.py","tests/test_id.py","tests/test_ifconfig.py","tests/test_ini.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_last.py"]}},{"commit":"799fec92c39b1ff0696c6ebb182c4bef66b86e56","message":"utf-8 for windows support","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["tests/test_pip_show.py","tests/test_systemctl.py"]}},{"commit":"87a41c2fcaa395f108b5a5126ed77f7cc7fe5d6d","message":"add utf-8 to open function","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["tests/test_lsblk.py","tests/test_stat.py"]}},{"commit":"7f85de0c46cda95d57b9677ba0ca3ea59690e502","message":"add windows-latest","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]}},{"commit":"13661b19934a74417713e98e3e1e4df6bb0f29ad","message":"Merge pull request #37 from philippeitis/continuous_integration"},{"commit":"51d5c3892d6ff1e2e6ac7c4f3e496e7d9ed4b6a7","message":"Remove Windows tests, due to lack of support.","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]}},{"commit":"e4eab4641ac15220f2787c5d27b443ab8c718b86","message":"Change line in blkid.py to trigger CI","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/blkid.py"]}},{"commit":"9b148e0ba37e18749d95608e1bac6c090ab83ee2","message":"Add requirements.txt","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["requirements.txt"]}},{"commit":"de28932650d5027e2781011f1243b89f053b241d","message":"Consolidate dictionary into creation, trigger CI","stats":{"files_changed":1,"insertions":7,"deletions":6,"files":["jc/parsers/arp.py"]}},{"commit":"5f798d603e461d2de5adf74662ba4d4b121f28f2","message":"version bump and ack to philippeitis","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/history.py"]}},{"commit":"a0757b2dd3fc0f3e26622941d93bd909dae0a1f7","message":"optimize line parsing","stats":{"files_changed":1,"insertions":1,"deletions":5,"files":["jc/parsers/foo.py"]}},{"commit":"498d51b4e802cb40cac58aae1eff1f723bbbd896","message":"Enable Continuous Integration with GitHub Actions.","stats":{"files_changed":1,"insertions":31,"deletions":0,"files":[".github/workflows/pythonapp.yml"]}},{"commit":"b06b6bae3f64f591c9075812dc1b632ef6d2da37","message":"Merge pull request #36 from philippeitis/patch-3"},{"commit":"b5eaff21372a58aefb66e5afc5e863db8355fee1","message":"Merge pull request #35 from kellyjonbrazil/revert-34-patch-3"},{"commit":"c01bcd3734382a0c388d9f4041fc888171ca7675","message":"Revert \"Simplify process() in history.py, avoid list allocation in parse()\"","stats":{"files_changed":1,"insertions":25,"deletions":12,"files":["jc/parsers/history.py"]}},{"commit":"d75c4068caaf4adbe9a39fa452ae867421053673","message":"Merge pull request #34 from philippeitis/patch-3"},{"commit":"6aa2d5a3d26f9f00c3334928f6f0e501860433da","message":"Merge pull request #33 from philippeitis/patch-2"},{"commit":"065276805f0f2dd23a6382f0120ca07e9eae116f","message":"Simplify process() in history.py, avoid list allocation in parse()","stats":{"files_changed":1,"insertions":12,"deletions":25,"files":["jc/parsers/history.py"]}},{"commit":"a63408c8cf3f99646be2b375f651d6cf417f7ae0","message":"Handle case where only options are passed.","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/cli.py"]}},{"commit":"69576f6bfae073196627a0a39b5ececb8666d25c","message":"minor sytax fixes","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/cli.py"]}},{"commit":"19845624e2996da4653efc2f312aceb514feaf5c","message":"Merge pull request #32 from philippeitis/patch-1"},{"commit":"22ff2964e9889587711e779ac24f8f8034212f5e","message":"Simplify main(), magic() methods.","stats":{"files_changed":1,"insertions":62,"deletions":75,"files":["jc/cli.py"]}},{"commit":"d96b3a65a98bc135d21d4feafc0a43317b5a11fa","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"4989445ef4bb8919d9b3b95e2fcee77ca7692aec","message":"Merge pull request #30 from kellyjonbrazil/dev"},{"commit":"6770892acd49aced225dbccf39290f33522c9001","message":"add release notes link","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]}},{"commit":"d4eba8740fc325756f3db96ab37a5383540cbeff","message":"release date 3/3","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]}},{"commit":"9f607605605e47990f97ccfd48fde19a14e036e7","message":"add group and gshadow tests","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["tests/test_group.py","tests/test_gshadow.py"]}},{"commit":"0a8f8ac934f040141e6a4eec8cf7170e1ca73294","message":"add group and gshadow parsers","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]}},{"commit":"6ae24c82447bcff606e7027dd01b916293b49584","message":"add group and gshadow test fixtures","stats":{"files_changed":10,"insertions":274,"deletions":0,"files":["tests/fixtures/centos-7.7/group.json","tests/fixtures/centos-7.7/group.out","tests/fixtures/centos-7.7/gshadow.json","tests/fixtures/centos-7.7/gshadow.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/group.json","tests/fixtures/osx-10.14.6/group.out","tests/fixtures/ubuntu-18.04/group.json","tests/fixtures/ubuntu-18.04/group.out","tests/fixtures/ubuntu-18.04/gshadow.json"]}},{"commit":"d3679082a8c5cff76eb7de67c33fe716a1402182","message":"add group and gshadow parsers","stats":{"files_changed":1,"insertions":64,"deletions":0,"files":["README.md"]}},{"commit":"fb08b42dca135705a3759435335d95c898d47f60","message":"change 'group_list' to 'members'","stats":{"files_changed":2,"insertions":21,"deletions":21,"files":["docs/parsers/group.md","jc/parsers/group.py"]}},{"commit":"4aeaa9f42a88bf4e05c8780a35cc8c4d83c9b842","message":"add /etc/gshadow parser","stats":{"files_changed":5,"insertions":316,"deletions":0,"files":["docgen.sh","docs/parsers/gshadow.md","jc/cli.py","jc/parsers/gshadow.py","tests/fixtures/ubuntu-18.04/gshadow.out"]}},{"commit":"5f5693da048cb4739dc56500c672dc8fbccaaf32","message":"spelling fix","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["docs/parsers/csv.md"]}},{"commit":"5eb0f61727f92a84fb3620e13db072167ef552ef","message":"add /etc/group file parser","stats":{"files_changed":4,"insertions":333,"deletions":0,"files":["docgen.sh","docs/parsers/group.md","jc/cli.py","jc/parsers/group.py"]}},{"commit":"958e998991b1cc61dc1dc341b90cd53f4691cd43","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/csv.py"]}},{"commit":"b78c1509f67fb76d17ac97193a2851d8d9e17f62","message":"try/except dialect detection","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/csv.py"]}},{"commit":"ce184d4d57faa3f1bca5bcaa02da7a5a5d995eb3","message":"add csv parser tests","stats":{"files_changed":20,"insertions":24054,"deletions":0,"files":["tests/fixtures/generic/csv-biostats.csv","tests/fixtures/generic/csv-biostats.json","tests/fixtures/generic/csv-cities.csv","tests/fixtures/generic/csv-cities.json","tests/fixtures/generic/csv-deniro.csv","tests/fixtures/generic/csv-deniro.json","tests/fixtures/generic/csv-example.csv","tests/fixtures/generic/csv-example.json","tests/fixtures/generic/csv-flyrna.json","tests/fixtures/generic/csv-flyrna.tsv","tests/fixtures/generic/csv-flyrna2.json","tests/fixtures/generic/csv-flyrna2.tsv","tests/fixtures/generic/csv-homes-pipe.csv","tests/fixtures/generic/csv-homes-pipe.json","tests/fixtures/generic/csv-homes.csv","tests/fixtures/generic/csv-homes.json","tests/fixtures/generic/csv-insurance.csv","tests/fixtures/generic/csv-insurance.json","tests/fixtures/generic/oscar_age_male.csv","tests/test_csv.py"]}},{"commit":"b4c3714ced9ee5cc6a7ef0c59a43cf85e1cb9824","message":"removed [OPTIONS] PARSER syntax. still works but prefer the PARSER [OPTIONS] syntax for better performance","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["README.md"]}},{"commit":"5b7dfa043864f1a3f34aa4ef5c6554a2dfe185f9","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]}},{"commit":"391a3884765780497dc34e0e9938ff5032c81291","message":"doc update","stats":{"files_changed":2,"insertions":49,"deletions":0,"files":["README.md","changelog.txt"]}},{"commit":"d9c4e2ed4c0f908f4b63c2376b53ddfd32a0fae1","message":"add csv file parser","stats":{"files_changed":4,"insertions":241,"deletions":0,"files":["docgen.sh","docs/parsers/csv.md","jc/cli.py","jc/parsers/csv.py"]}},{"commit":"0c42db38b102987629e40cee2716b826161e6e94","message":"doc update","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/who.md","jc/parsers/who.py"]}},{"commit":"2f9be8bf33f8be5651d06da9d316f7894606df19","message":"simplify usage","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/cli.py"]}},{"commit":"e8c00155e861b9eedfdf37a22912271bec581d62","message":"add -b to warning message","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]}},{"commit":"cc88fdd9ee3951d7ef2aa881cc12f0b7f96aef86","message":"update example","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]}},{"commit":"d9de11ef1d846a9625dad0adb962b864404c90c1","message":"add another who example","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["README.md"]}},{"commit":"0ceda97d0968b67b70cdbb68f7a62657e79c9935","message":"who parser tests","stats":{"files_changed":1,"insertions":88,"deletions":0,"files":["tests/test_who.py"]}},{"commit":"d0dec92ba84640ddc40da7c6faa6568b76757e04","message":"add who test fixtures","stats":{"files_changed":12,"insertions":36,"deletions":0,"files":["tests/fixtures/centos-7.7/who-a.json","tests/fixtures/centos-7.7/who-a.out","tests/fixtures/centos-7.7/who.json","tests/fixtures/centos-7.7/who.out","tests/fixtures/osx-10.14.6/who-a.json","tests/fixtures/osx-10.14.6/who-a.out","tests/fixtures/osx-10.14.6/who.json","tests/fixtures/osx-10.14.6/who.out","tests/fixtures/ubuntu-18.04/who-a.json","tests/fixtures/ubuntu-18.04/who-a.out","tests/fixtures/ubuntu-18.04/who.json","tests/fixtures/ubuntu-18.04/who.out"]}},{"commit":"d420c008d8aaa0879fa5a3f236d81acb506376c3","message":"fix for pts lines with no user info","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["jc/parsers/who.py"]}},{"commit":"f0b32db4333477e22cc40de62cf026a6a7aa2eb6","message":"who doc update","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","docs/parsers/who.md"]}},{"commit":"bc838eda591473d32b11a885e60ef653925739d0","message":"fix output for non-extended","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/parsers/who.py"]}},{"commit":"afe55b6af07b74816d33d9555ffaa1c1921dd27a","message":"add who parser","stats":{"files_changed":1,"insertions":46,"deletions":0,"files":["README.md"]}},{"commit":"dd3a3ac302d7b35beef1181e74aed0faf96fd3e4","message":"doc update and process pid integers","stats":{"files_changed":4,"insertions":255,"deletions":9,"files":["changelog.txt","docgen.sh","docs/parsers/who.md","jc/parsers/who.py"]}},{"commit":"f9982a79474c1838f37fc0ff88437980b228d7a1","message":"fixes for from and comment fields","stats":{"files_changed":1,"insertions":11,"deletions":2,"files":["jc/parsers/who.py"]}},{"commit":"07c1be9e9ad9f62cf76c23788152de8f3530ee16","message":"add who command parser","stats":{"files_changed":2,"insertions":170,"deletions":0,"files":["jc/cli.py","jc/parsers/who.py"]}},{"commit":"f832b88755bfbd3878ec402e603180e6825279be","message":"add passwd and shadow tests","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["tests/test_passwd.py","tests/test_shadow.py"]}},{"commit":"0fac757efca41db062b2f65acc727963c5fb353c","message":"add passwd and shadow parsers","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]}},{"commit":"fc15742065531152f3d5895042eeb806e33a192a","message":"passwd and shadow test fixtures","stats":{"files_changed":10,"insertions":215,"deletions":0,"files":["tests/fixtures/centos-7.7/passwd.json","tests/fixtures/centos-7.7/passwd.out","tests/fixtures/centos-7.7/shadow.json","tests/fixtures/centos-7.7/shadow.out","tests/fixtures/osx-10.14.6/passwd.json","tests/fixtures/osx-10.14.6/passwd.out","tests/fixtures/ubuntu-18.04/passwd.json","tests/fixtures/ubuntu-18.04/passwd.out","tests/fixtures/ubuntu-18.04/shadow.json","tests/fixtures/ubuntu-18.04/shadow.out"]}},{"commit":"6f2466a1319eaa4256ae7a2a0f23b3ff37882d37","message":"update readme with /etc/passwd and /etc/shadow file parsers","stats":{"files_changed":1,"insertions":73,"deletions":0,"files":["README.md"]}},{"commit":"4b90e22f0a9c6790bca62c8314945a7ffc6e267b","message":"doc update","stats":{"files_changed":2,"insertions":137,"deletions":9,"files":["docs/parsers/shadow.md","jc/parsers/shadow.py"]}},{"commit":"c4935687853fb3b079ae42614793cdafe68e124e","message":"doc fix","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/passwd.md","jc/parsers/passwd.py"]}},{"commit":"1cdf004b7728901dc137e57b0c8994edfdd6d417","message":"add /etc/shadow parser","stats":{"files_changed":4,"insertions":190,"deletions":0,"files":["docgen.sh","docs/parsers/shadow.md","jc/cli.py","jc/parsers/shadow.py"]}},{"commit":"a4ea50426184d30cbe849a8f80bfd5c975075c9e","message":"add /etc/passwd parser","stats":{"files_changed":4,"insertions":303,"deletions":0,"files":["docgen.sh","docs/parsers/passwd.md","jc/cli.py","jc/parsers/passwd.py"]}},{"commit":"4c2c234c3bf68d1aac66bd4d1f22b9f97e99128d","message":"add last and lastb tests","stats":{"files_changed":16,"insertions":673,"deletions":0,"files":["tests/fixtures/centos-7.7/last-w.json","tests/fixtures/centos-7.7/last-w.out","tests/fixtures/centos-7.7/last.json","tests/fixtures/centos-7.7/last.out","tests/fixtures/centos-7.7/lastb.json","tests/fixtures/centos-7.7/lastb.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/last.json","tests/fixtures/osx-10.14.6/last.out","tests/fixtures/ubuntu-18.04/last-w.json","tests/fixtures/ubuntu-18.04/last-w.out","tests/fixtures/ubuntu-18.04/last.json","tests/fixtures/ubuntu-18.04/last.out","tests/fixtures/ubuntu-18.04/lastb.json","tests/fixtures/ubuntu-18.04/lastb.out","tests/test_last.py"]}},{"commit":"3d4c0f3e89dab6496ff74df350e3238d6625933c","message":"add blkid tests","stats":{"files_changed":22,"insertions":285,"deletions":0,"files":["tests/fixtures/centos-7.7/blkid-ip-multi.json","tests/fixtures/centos-7.7/blkid-ip-multi.out","tests/fixtures/centos-7.7/blkid-ip-udev-multi.json","tests/fixtures/centos-7.7/blkid-ip-udev-multi.out","tests/fixtures/centos-7.7/blkid-ip-udev.json","tests/fixtures/centos-7.7/blkid-ip-udev.out","tests/fixtures/centos-7.7/blkid-sda2.json","tests/fixtures/centos-7.7/blkid-sda2.out","tests/fixtures/centos-7.7/blkid.json","tests/fixtures/centos-7.7/blkid.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/blkid-ip-multi.json","tests/fixtures/ubuntu-18.04/blkid-ip-multi.out",".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.json",".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.out","tests/fixtures/ubuntu-18.04/blkid-ip-udev.json","tests/fixtures/ubuntu-18.04/blkid-ip-udev.out","tests/fixtures/ubuntu-18.04/blkid-sda2.json","tests/fixtures/ubuntu-18.04/blkid-sda2.out","tests/fixtures/ubuntu-18.04/blkid.json","tests/fixtures/ubuntu-18.04/blkid.out","tests/test_blkid.py"]}},{"commit":"52fad02903468c05d2422a340ad8dbcdf18ed475","message":"doc update","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]}},{"commit":"9dcabc057c40e345971a08474b5b886e6b60a8de","message":"support multi device udev output","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/blkid.py"]}},{"commit":"db8c1079ddc25922ab6a20d0f71fb19af38f8092","message":"use maxsplit=1 in case there are multiple '=' delimiters","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/blkid.py"]}},{"commit":"8f954673abdbbd4d9b9da3eacc61b335b4909f89","message":"use shlex split for values within quotations that have spaces","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/blkid.py"]}},{"commit":"79522d1c7dd4dec15b75b06dda002752f7d97e36","message":"doc fixes","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]}},{"commit":"a18bf030794efef125c70a32fe82855e47649b32","message":"use raw strings for regular expressions","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/parsers/last.py","jc/parsers/ls.py"]}},{"commit":"c02b6b5d827d26b43db0a3457124714aa2dbbc98","message":"doc updates","stats":{"files_changed":3,"insertions":81,"deletions":1,"files":["README.md","changelog.txt","setup.py"]}},{"commit":"f99b4232848b0d868804acc4125836bfcf475bba","message":"doc update","stats":{"files_changed":2,"insertions":134,"deletions":29,"files":["docs/parsers/blkid.md","jc/parsers/blkid.py"]}},{"commit":"d7d9d45d4fba89e74f7490c463eb26bf20a5d127","message":"add missing comma","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/blkid.py"]}},{"commit":"90065ec0cdc8c5abc13bc0027f63658dacf3cfb2","message":"add more integers","stats":{"files_changed":1,"insertions":31,"deletions":26,"files":["jc/parsers/blkid.py"]}},{"commit":"51157ebb867a48332c768bf3086614944aebdb62","message":"another devname fix","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/blkid.py"]}},{"commit":"96d95c79ca0938e326f55f858f8153df9cb49e44","message":"devname fix","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/blkid.py"]}},{"commit":"e5da34c23306463e8707b15676db0ca53bf66757","message":"check if devname key exists before renaming","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/blkid.py"]}},{"commit":"f09d657f7728242947db3dc63ff6779d08c37866","message":"rename devname to device","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/blkid.py"]}},{"commit":"0f4b0189f54dc0b3622cd407c5565e53ea111379","message":"process integer values","stats":{"files_changed":1,"insertions":35,"deletions":3,"files":["jc/parsers/blkid.py"]}},{"commit":"4666042abb3142e2cfb518db9ffe22d9e608e090","message":"add blkid parser","stats":{"files_changed":4,"insertions":216,"deletions":0,"files":["docgen.sh","docs/parsers/blkid.md","jc/cli.py","jc/parsers/blkid.py"]}},{"commit":"027d544c2bb778adc0ee9463832f19b10e099a0a","message":"add last and lastb parser","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"]}},{"commit":"f1967d0138d27bde864c2400aa75baa8a39bbfde","message":"system_boot fix","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/last.py"]}},{"commit":"c1d896027dd1ce021e048b3e77eab24ff59d08bd","message":"fix system_boot tty","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/last.py"]}},{"commit":"5c2d2a66187d32d62b31b7c7f13e502fdb7f9635","message":"process function and docs","stats":{"files_changed":3,"insertions":190,"deletions":6,"files":["docgen.sh","docs/parsers/last.md","jc/parsers/last.py"]}},{"commit":"997b269b0b7e53a456e2a0bd997ead6c2ae843bc","message":"btmp fix","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/last.py"]}},{"commit":"61257e7525c25827cb8057ed5c612e54ea9b9637","message":"add last and lastb parser","stats":{"files_changed":2,"insertions":119,"deletions":1,"files":["jc/cli.py","jc/parsers/last.py"]}},{"commit":"53ee2c36310cb84390ef96644aee6871769151c9","message":"Merge pull request #29 from kellyjonbrazil/dev"},{"commit":"8bfa0bddec9ff1c21972019467dcf5738ab3afd2","message":"version bump to 1.7.5","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"ad61e6bc81177a2add7d052bf1ddec5f1b3f2976","message":"add ls tests for filenames with newline characters","stats":{"files_changed":26,"insertions":598,"deletions":133,"files":["tests/fixtures/centos-7.7/ls-R-newlines.json","tests/fixtures/centos-7.7/ls-R-newlines.out","tests/fixtures/centos-7.7/ls-l-newlines.json","tests/fixtures/centos-7.7/ls-l-newlines.out","tests/fixtures/centos-7.7/ls-lR-newlines.json","tests/fixtures/centos-7.7/ls-lR-newlines.out","tests/fixtures/centos-7.7/ls-newlines.json","tests/fixtures/centos-7.7/ls-newlines.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/ls-R-newlines.json","tests/fixtures/osx-10.14.6/ls-R-newlines.out","tests/fixtures/osx-10.14.6/ls-l-newlines.json","tests/fixtures/osx-10.14.6/ls-l-newlines.out","tests/fixtures/osx-10.14.6/ls-lR-newlines.json","tests/fixtures/osx-10.14.6/ls-lR-newlines.out","tests/fixtures/osx-10.14.6/ls-newlines.json","tests/fixtures/osx-10.14.6/ls-newlines.out","tests/fixtures/ubuntu-18.04/ls-R-newlines.json","tests/fixtures/ubuntu-18.04/ls-R-newlines.out","tests/fixtures/ubuntu-18.04/ls-l-newlines.json","tests/fixtures/ubuntu-18.04/ls-l-newlines.out","tests/fixtures/ubuntu-18.04/ls-lR-newlines.json","tests/fixtures/ubuntu-18.04/ls-lR-newlines.out","tests/fixtures/ubuntu-18.04/ls-newlines.json","tests/fixtures/ubuntu-18.04/ls-newlines.out","tests/test_ls.py"]}},{"commit":"873b5ba8acf599d083d6031b818d5fca83cbca9e","message":"move examples to bottom","stats":{"files_changed":1,"insertions":27,"deletions":31,"files":["README.md"]}},{"commit":"6ae50054e2e8c7ca730013b43062eedc230c0ad4","message":"readme update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"22a35f41bf9c404d3532611f5929143d04b10010","message":"move variables to top","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/ls.py"]}},{"commit":"961696c963215a9dab56113ff89f21a6e9739df6","message":"add a warning if newlines are detected in naked ls","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/ls.py"]}},{"commit":"c7b7f1a5dcf77a1f4c23ef6bbf5683fd1a055f72","message":"fix for files with newlines in naked ls","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]}},{"commit":"b5a0d650b128d8af81bb14dd5d007349529cb66f","message":"ls output with newlines","stats":{"files_changed":1,"insertions":151,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-newlines.out"]}},{"commit":"573b27946474276592ee7494689ce9a88f5a05f7","message":"fixup for filenames that start with a newline character","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/ls.py"]}},{"commit":"116e07f1614b4a45eb58ffcfe20b5efa71c473a8","message":"fixes for multiple consecutive newlines and trailing newlines in filenames","stats":{"files_changed":1,"insertions":6,"deletions":7,"files":["jc/parsers/ls.py"]}},{"commit":"964868c8aff99edf37b0db41c7d16f8b84ac4704","message":"add support for newlines in filenames (only with ls -l)","stats":{"files_changed":2,"insertions":21,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]}},{"commit":"c8dac32df8102c2b782e87d55bb95ca2d9490185","message":"readme update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"72a0016bd833699c3819baa899f335f75b8c1943","message":"use link to anchor for Parsers","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"2ad316743460bb6620e7ede251e1dc2739b073fa","message":"update doc url","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"ddabfaa05c63f886b17e5b4d37cd83fcfdb9b221","message":"Merge pull request #25 from kellyjonbrazil/dev"},{"commit":"f857523ca756864211b6b18af5a8886e5db200bb","message":"bump to version 1.7.4","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"00d53858e820f00ba015bc25629100c8e5495221","message":"add note about aliases not being supported","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"c008167e660929a91606bb96498cdc113e815f7e","message":"add time-style=full-iso option to doc","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]}},{"commit":"102344a041e9e0aff8b6d9db1873ba1064f7e895","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/ls.py"]}},{"commit":"c865298ef3613fe6ce17f41c15209a69940af1ce","message":"remove unnecessary enumerate in for loop","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/ls.py"]}},{"commit":"6ac03faf939bcda8930a48a5e832b557813e2129","message":"Revert \"add ubuntu and centos default ls aliases to magic_commands\"","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]}},{"commit":"49c2701743706b6cbf0e52b2c7f275e301315189","message":"add ubuntu and centos default ls aliases to magic_commands","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]}},{"commit":"d1a271b08e64b42be8cec11377b0e18435a0caec","message":"add new ls tests for recursive and multiple directories with glob","stats":{"files_changed":21,"insertions":35333,"deletions":1374,"files":["tests/fixtures/centos-7.7/ls-R.json","tests/fixtures/centos-7.7/ls-R.out","tests/fixtures/centos-7.7/ls-alR.json","tests/fixtures/centos-7.7/ls-alR.out","tests/fixtures/centos-7.7/ls-glob.json","tests/fixtures/centos-7.7/ls-glob.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/ls-R.json","tests/fixtures/osx-10.14.6/ls-R.out","tests/fixtures/osx-10.14.6/ls-alR.json","tests/fixtures/osx-10.14.6/ls-alR.out","tests/fixtures/osx-10.14.6/ls-glob.json","tests/fixtures/osx-10.14.6/ls-glob.out","tests/fixtures/ubuntu-18.04/ls-R.json","tests/fixtures/ubuntu-18.04/ls-R.out","tests/fixtures/ubuntu-18.04/ls-alR.json","tests/fixtures/ubuntu-18.04/ls-alR.out","tests/fixtures/ubuntu-18.04/ls-glob.json","tests/fixtures/ubuntu-18.04/ls-glob.out","tests/fixtures/ubuntu-18.04/ls-lR.out","tests/test_ls.py"]}},{"commit":"7388ad19b9d252d3e66659e4bc37171cef2a9748","message":"bump to v1.8.0","stats":{"files_changed":4,"insertions":6,"deletions":4,"files":["docs/parsers/ls.md","jc/cli.py","jc/parsers/ls.py","setup.py"]}},{"commit":"2e63cb5fadd032c7cb54a618e8b374ee853abcca","message":"version bump ls to 1.1","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]}},{"commit":"e7f14d02b12c7dcba309f2d28a0f171769d1ba37","message":"update ls to allow multi directory (glob and -R). Adds 'parent' key if found","stats":{"files_changed":3,"insertions":1438,"deletions":8,"files":["jc/parsers/ls.py","tests/fixtures/ubuntu-18.04/ls-R.out","tests/fixtures/ubuntu-18.04/ls-lR.out"]}},{"commit":"873771d05ab0b77163c95d2c37e11edf38451832","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"d7de122e36e0698e00f321fbac8dc0b543cf9e8a","message":"prettify link","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"4ef0434f536c6658ddc2b48a3db113df2fd26000","message":"formatting update","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["README.md"]}},{"commit":"1aa2c9925996f2358b6272547db755ec3098a8a7","message":"removed history from magic syntax","stats":{"files_changed":2,"insertions":1,"deletions":2,"files":["README.md","jc/parsers/history.py"]}},{"commit":"c2450b27b079b02ed3f4ece9e36547f01cd4b139","message":"Merge pull request #22 from kellyjonbrazil/dev"},{"commit":"14d6d8b84f0ddeff984aff486e2e697a91ac6fb6","message":"version bump to 1.7.3","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"f0e3846c038ec5507cd4a19980d83ee0fb969ef5","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["README.md"]}},{"commit":"6ba64f1128373843b068226424a3af545ac9d22c","message":"usage update","stats":{"files_changed":1,"insertions":5,"deletions":2,"files":["README.md"]}},{"commit":"13bcdbc6c9a81bc5d52fe7a84e6a0a34908db8bc","message":"doc update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"cfba62db20674d788601354211a10e2b1675a0c9","message":"correct parser search in magic()","stats":{"files_changed":1,"insertions":13,"deletions":6,"files":["jc/cli.py"]}},{"commit":"18fb69e36e303a3f9530dcb80354b25bfdbb931d","message":"docs/parsers link","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"474eb0f3fdeaa612e189d745b12a5ed9c6e0a31b","message":"doc updates","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]}},{"commit":"7f47b533701e60449351d5da03cd5960e0dec9ad","message":"add alternate magic syntax","stats":{"files_changed":1,"insertions":90,"deletions":68,"files":["README.md"]}},{"commit":"dc2907d3ce101043b30bcce71abb4bb02897f43a","message":"doc update","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["docs/parsers/crontab.md"]}},{"commit":"1af85811e06c489051c456918284a746ce12c692","message":"remove magic_command info","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/fstab.py"]}},{"commit":"1c1b19a478fe5c356a93cd165518429e77fcbdf0","message":"doc update","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab.py"]}},{"commit":"66942d64babf932faeb887eb4ec0cab32829321a","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["changelog.txt"]}},{"commit":"2fb6ae08d76e7a5727b2fcdd5def3e3822e0cf72","message":"fix shlex usage","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"]}},{"commit":"bf8811e03e2a5b736f4c084f42400fcde400ff3f","message":"add comments","stats":{"files_changed":1,"insertions":6,"deletions":3,"files":["jc/cli.py"]}},{"commit":"c8b502c571d3081ca3086e349a426ca252a3bb84","message":"remove unnecessary join and add comments","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/cli.py"]}},{"commit":"81c11a975c6ee66a1f83350df8b065a6b07dcc9c","message":"added docstrings","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/cli.py"]}},{"commit":"0d370eb403ab4d9ed11e36776efc08bdd3505c1a","message":"doc update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"7492c3f1e312cdb0c58c2077db0d60d2cab1e58f","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]}},{"commit":"515a8a84b79c9bf6f3001d3c52faa82a6709b8d1","message":"add \"command\" to description","stats":{"files_changed":33,"insertions":33,"deletions":33,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]}},{"commit":"dd6680efb2b15bb8ed676016aae1c65193dfe147","message":"allow condensed options (-prdq is equivalent to -p -r -d -q)","stats":{"files_changed":2,"insertions":29,"deletions":14,"files":["changelog.txt","jc/cli.py"]}},{"commit":"a7158373cd225685f5c398fa36b8d5208e20521c","message":"comment update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"6d50ec71997cac9c898737de93b8a945f0351e53","message":"add try/except to fix bare jc command condition","stats":{"files_changed":1,"insertions":9,"deletions":6,"files":["jc/cli.py"]}},{"commit":"95dbf98e8e03486f74d986683f52699f4f9c9577","message":"allow options in magic syntax","stats":{"files_changed":1,"insertions":26,"deletions":6,"files":["jc/cli.py"]}},{"commit":"d49323e4ebf2a8aebd1d8ea65ef0854ee8bcb29f","message":"add magic_commands list to info","stats":{"files_changed":33,"insertions":33,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]}},{"commit":"08c1e2aec9d6bb68653dc12ba2272535fb7cef09","message":"add magic syntax","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"]}},{"commit":"a2c137df2e6d3b133df5df0bb3f9b1ca69990557","message":"better magic command syntax logic using introspection information from parser modules","stats":{"files_changed":2,"insertions":66,"deletions":299,"files":["jc/cli.py","jc/cli.py.old"]}},{"commit":"fe27dcdb8f72b5a288f978b87be2eb930099543e","message":"proof of concept for magic syntax (e.g. jc ls -al)","stats":{"files_changed":2,"insertions":319,"deletions":45,"files":["jc/cli.py","jc/cli.py.old"]}},{"commit":"028e136161ac15f588845f87907b4565a6ee7be2","message":"bump to 1.7.2: add test fixtures to package","stats":{"files_changed":4,"insertions":7,"deletions":2,"files":["MANIFEST.in","changelog.txt","jc/cli.py","setup.py"]}},{"commit":"9a85a0a4d504447b32fb622bb17cebc5e47f687f","message":"fix doc","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/crontab_u.md","jc/parsers/crontab_u.py"]}},{"commit":"3a1cbc4d5063344c3e3a4bf510d651a36beedfb3","message":"move info class to top","stats":{"files_changed":1,"insertions":14,"deletions":14,"files":["jc/cli.py"]}},{"commit":"77d334f7f386f79ec0571325500054fdab207f31","message":"Merge pull request #19 from kellyjonbrazil/dev-1.7.1"},{"commit":"53cdf863acc72dbdb671773e30277f42e9eadc0e","message":"changelog update","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["changelog.txt"]}},{"commit":"7b7e7fe0fe92edef1e559bd7ae8272530d7ed5c8","message":"changelog update","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]}},{"commit":"0c03132847a3d2bcbdb0b743e1472865916cced4","message":"fix error codes using sys.exit()","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]}},{"commit":"3b81f7e2a1381958b33962d4531f3fa223c6a83e","message":"exit code on ctrl-c exit","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"3d76437b435660e92633c604c4ad32ee0500a28b","message":"doc fix","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ini.md","docs/parsers/xml.md","jc/parsers/ini.py","jc/parsers/xml.py"]}},{"commit":"4bc54c78cea48682ed0432ea56460a26a0e52f83","message":"fix compatibility list","stats":{"files_changed":4,"insertions":7,"deletions":7,"files":["docs/parsers/du.md","docs/parsers/history.md","jc/parsers/du.py","jc/parsers/history.py"]}},{"commit":"3d303a96b9f6d582b1e99a632da539c3bee4df7f","message":"crontab bug fix and tests","stats":{"files_changed":5,"insertions":16,"deletions":2,"files":["tests/fixtures/centos-7.7/crontab-u.json","tests/fixtures/centos-7.7/{crontab2.out => crontab-u.out}","tests/fixtures/centos-7.7/crontab.json","tests/fixtures/ubuntu-18.04/crontab-u.json","tests/test_crontab_u.py"]}},{"commit":"33c99d031d18e52a8ca85dfc1a8cba0acebfc3bb","message":"fix line clobbering bug","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/crontab.py"]}},{"commit":"caf7e9f69a22f3c9b3d4624fd2238d6e54d932ac","message":"fix line clobbering bug and add user field to shortcuts","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/crontab_u.py"]}},{"commit":"9449f1f5d5e7bc075549549758af5cc3a6c4524f","message":"crontab bugfix: inserting header row was clobbering the first data row","stats":{"files_changed":4,"insertions":9,"deletions":3,"files":["changelog.txt","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/fixtures/centos-7.7/crontab2.out"]}},{"commit":"6bad164b5e2a5b7c7ce82c69b6c091fc079ab2fa","message":"simplify by removing unnecessary getattr calls","stats":{"files_changed":1,"insertions":7,"deletions":9,"files":["jc/cli.py"]}},{"commit":"bb5ba7ddb146821db2efe095b6de5ae5b72bb335","message":"add indent variable to helptext","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/cli.py"]}},{"commit":"8b2e01d5404649e8f94c81ca3b5fa05fe8962220","message":"doc update","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]}},{"commit":"ff1159b1deb9b870382a6066166961902679b569","message":"exit codes on error","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]}},{"commit":"a2fd3202a0a3df336792f167c546ea3e53ea2332","message":"description formatting change","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/pip_list.py","jc/parsers/pip_show.py"]}},{"commit":"7b53715b91787a8885d61ddc0079c7ee8f9348a8","message":"change description","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/crontab_u.py"]}},{"commit":"e05fc0a5107b348af14ff4bea39d274939fab7dd","message":"change padding of helptext","stats":{"files_changed":1,"insertions":8,"deletions":8,"files":["jc/cli.py"]}},{"commit":"43604c33f654b8c19e8cce387ebbf31bd598b73b","message":"doc update","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]}},{"commit":"eb67c484ff2a9530b434cd6a90c160f6936e1de7","message":"add crontab-u to parsers list","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]}},{"commit":"a7b7bdd46781d07e6e70d74a41a3944855fde5fc","message":"load parser modules 'just in time' so we don't need to load all modules at startup","stats":{"files_changed":1,"insertions":94,"deletions":92,"files":["jc/cli.py"]}},{"commit":"ab06989a18faf5378f1e73c7016ea02e1218ff9c","message":"description updates","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["README.md"]}},{"commit":"657b722f947b6a0aa7e52a786e4c84f177e9a5c7","message":"ini to INI","stats":{"files_changed":4,"insertions":8,"deletions":8,"files":["README.md","changelog.txt","docs/parsers/ini.md","jc/parsers/ini.py"]}},{"commit":"dd2aecad2787186b3962723086bb7e13eff4874f","message":"description update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"c82c5c5c648384eb5a54205ba8590624a3ab4375","message":"changelog update","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["changelog.txt"]}},{"commit":"a1761cd68f91e2668d8d7e2fa7774f6496408be6","message":"id tests","stats":{"files_changed":3,"insertions":42,"deletions":0,"files":["tests/fixtures/centos-7.7/id.json","tests/fixtures/osx-10.14.6/id.json","tests/test_id.py"]}},{"commit":"d618a7f583629bb7a7fc0854e7349cab07e3e003","message":"doc update","stats":{"files_changed":4,"insertions":143,"deletions":9,"files":["README.md","docgen.sh","docs/parsers/id.md","jc/parsers/id.py"]}},{"commit":"831a42f66096f5efbbf0f6882970c328120f9c9a","message":"id formatting","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["README.md"]}},{"commit":"3b36022e5a1056a28a83494b1ab8fab209399c2d","message":"add id parser","stats":{"files_changed":5,"insertions":250,"deletions":1,"files":["README.md","jc/cli.py","jc/parsers/id.py","tests/fixtures/centos-7.7/id.out","tests/fixtures/osx-10.14.6/id.out"]}},{"commit":"d01dfa25f10f82cd201ae7b4c9cc18313773f8d3","message":"changelog updates","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["changelog.txt"]}},{"commit":"395a99037b4816eb800b289f90372a9b8d7d36cc","message":"crontab-u and history doc updates","stats":{"files_changed":3,"insertions":89,"deletions":13,"files":["README.md","docs/parsers/history.md","jc/parsers/history.py"]}},{"commit":"025986c51d2d4869b17de63a7dd96efa2988e3c5","message":"change history 'line' to integer","stats":{"files_changed":3,"insertions":13,"deletions":3,"files":["jc/parsers/history.py","tests/fixtures/centos-7.7/history.json","tests/fixtures/ubuntu-18.04/history.json"]}},{"commit":"c56b83093ff05f55ef4643c1731cff61d4b9e8ce","message":"doc update","stats":{"files_changed":3,"insertions":202,"deletions":2,"files":["docgen.sh","docs/parsers/crontab.md","docs/parsers/crontab_u.md"]}},{"commit":"7c712a4133abd843d4da926e4c8d548abd1d6fa3","message":"doc update","stats":{"files_changed":1,"insertions":52,"deletions":50,"files":["jc/parsers/crontab_u.py"]}},{"commit":"9a0cfe6dfa4888f435d35bd2d35126d031a556d0","message":"minor formatting","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/crontab.py"]}},{"commit":"a116cdbcec1b27192dd0f9f4707629353edb3caf","message":"tests for crontab-u","stats":{"files_changed":5,"insertions":29,"deletions":13,"files":["tests/fixtures/ubuntu-18.04/crontab-u.json",".../ubuntu-18.04/{crontab.out => crontab-u.out}","tests/fixtures/ubuntu-18.04/crontab.json","tests/test_crontab.py","tests/test_crontab_u.py"]}},{"commit":"f2d616c98e049cdac5d667e63723f92110419a1b","message":"add crontab with user parser","stats":{"files_changed":3,"insertions":272,"deletions":0,"files":["changelog.txt","jc/cli.py","jc/parsers/crontab_u.py"]}},{"commit":"42cbd1777dbacc614d75f67f3f9156f72be46532","message":"add xml and yaml tests","stats":{"files_changed":2,"insertions":80,"deletions":0,"files":["tests/test_xml.py","tests/test_yaml.py"]}},{"commit":"ebf375aac0473249cfd212068f6e6e33cc42449a","message":"add ini tests","stats":{"files_changed":1,"insertions":40,"deletions":0,"files":["tests/test_ini.py"]}},{"commit":"1f9050267eeb870c4c0f50000fc32985c4d8535b","message":"add ini, xml, and yaml test files","stats":{"files_changed":12,"insertions":586,"deletions":0,"files":["tests/fixtures/generic/ini-iptelserver.ini","tests/fixtures/generic/ini-iptelserver.json","tests/fixtures/generic/ini-test.ini","tests/fixtures/generic/ini-test.json","tests/fixtures/generic/xml-cd_catalog.json","tests/fixtures/generic/xml-cd_catalog.xml","tests/fixtures/generic/xml-foodmenu.json","tests/fixtures/generic/xml-foodmenu.xml","tests/fixtures/generic/yaml-istio-sc.json","tests/fixtures/generic/yaml-istio-sc.yaml","tests/fixtures/generic/yaml-istio-sidecar.json","tests/fixtures/generic/yaml-istio-sidecar.yaml"]}},{"commit":"d7f9707a1521719ce051140b1a0b4ced7c5114c9","message":"minor formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/ini.py","jc/parsers/yaml.py"]}},{"commit":"ab589ee3ed09b9d5e09d8c046f3a64cd2bd14c98","message":"add __version__ variable","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/cli.py"]}},{"commit":"c84ec0361fc4c877c698378b28ff9e8b502793b0","message":"xml example update","stats":{"files_changed":4,"insertions":105,"deletions":3,"files":["README.md","docgen.sh","docs/parsers/xml.md","jc/parsers/xml.py"]}},{"commit":"47d2f8968a8a9b68fc9fff45985f5e69f1a5cc40","message":"doc update","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","changelog.txt"]}},{"commit":"019c480bcce7fe3821b75906fc673ce7bb1ffadc","message":"update acknowledgments","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]}},{"commit":"547c6d3d5956984d3c4fb5c2a1b76a595752b467","message":"add xml parser","stats":{"files_changed":5,"insertions":172,"deletions":2,"files":["README.md","changelog.txt","jc/cli.py","jc/parsers/xml.py","setup.py"]}},{"commit":"b5ebf8b76afcd0e0190994048fe1f5b53f654451","message":"add ruamel.yaml ack","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]}},{"commit":"c690e328f23a69f592dfaaa949b74ba2190ad376","message":"add examples","stats":{"files_changed":2,"insertions":102,"deletions":14,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"]}},{"commit":"cbb92c1a9517234806f1c54398a69645b6f43669","message":"add ini and yaml","stats":{"files_changed":1,"insertions":94,"deletions":0,"files":["README.md"]}},{"commit":"beb41997c9b3797e73a678ec1bcddcfb83b5ef0d","message":"doc update","stats":{"files_changed":3,"insertions":91,"deletions":2,"files":["docgen.sh","docs/parsers/ini.md","jc/parsers/ini.py"]}},{"commit":"755a6faf1110f150fe2261b81439b7d17a9b424e","message":"clean up multi-document support","stats":{"files_changed":1,"insertions":4,"deletions":8,"files":["jc/parsers/yaml.py"]}},{"commit":"021f8350a31a49ecc539f02576303600b222b49d","message":"update doc","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["changelog.txt"]}},{"commit":"76583dcd2f5ef32e58ca87149154563b07e061cb","message":"add ini file parser","stats":{"files_changed":2,"insertions":113,"deletions":0,"files":["jc/cli.py","jc/parsers/ini.py"]}},{"commit":"bf033239a706c42be3d7508c58a51c542f8a69b0","message":"doc update","stats":{"files_changed":2,"insertions":82,"deletions":7,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"]}},{"commit":"eb37fccd37fd625f701a14b6cfcf30e9f0bbff4d","message":"doc update","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/yaml.py"]}},{"commit":"d04ad453319fe45e302da87f970d2ac0806fae1a","message":"setup for 1.7.1","stats":{"files_changed":3,"insertions":7,"deletions":2,"files":["changelog.txt","docgen.sh","setup.py"]}},{"commit":"db157b8ca7f7fa935676bafeaafdfd9818a89e6a","message":"add yaml file parser","stats":{"files_changed":2,"insertions":94,"deletions":2,"files":["jc/cli.py","jc/parsers/yaml.py"]}},{"commit":"68f277bb2081eb2cba14ffe7f0ee1ee0a982335b","message":"add __version__","stats":{"files_changed":33,"insertions":99,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]}},{"commit":"4de8f42664379570392552796e34324abb39fdc2","message":"Merge pull request #17 from kellyjonbrazil/dev"},{"commit":"4f118559356edc1da866e1bec80830e7a75a0b26","message":"update version info","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["changelog.txt"]}},{"commit":"2b9a5fcc32f85295faa55410efcaf142c42bd167","message":"update version","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["setup.py"]}},{"commit":"224948d1f23e01b7cd968820529579792f862f0a","message":"pip list and pip show tests","stats":{"files_changed":21,"insertions":428,"deletions":0,"files":["tests/fixtures/centos-7.7/pip-list.json","tests/fixtures/centos-7.7/pip-list.out","tests/fixtures/centos-7.7/pip-show.json","tests/fixtures/centos-7.7/pip-show.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.11.6/pip-list.json","tests/fixtures/osx-10.11.6/pip-list.out","tests/fixtures/osx-10.11.6/pip-show.json","tests/fixtures/osx-10.11.6/pip-show.out","tests/fixtures/osx-10.14.6/pip-list.json","tests/fixtures/osx-10.14.6/pip-list.out","tests/fixtures/osx-10.14.6/pip-show.json","tests/fixtures/osx-10.14.6/pip-show.out","tests/fixtures/ubuntu-18.04/pip-list-legacy.json","tests/fixtures/ubuntu-18.04/pip-list-legacy.out","tests/fixtures/ubuntu-18.04/pip-list.json","tests/fixtures/ubuntu-18.04/pip-list.out","tests/fixtures/ubuntu-18.04/pip-show.json","tests/fixtures/ubuntu-18.04/pip-show.out","tests/test_pip_list.py","tests/test_pip_show.py"]}},{"commit":"36f2812d5a7a94c412e098233c026d99d5205b60","message":"add support for legacy output","stats":{"files_changed":1,"insertions":15,"deletions":7,"files":["jc/parsers/pip_list.py"]}},{"commit":"be06aa2b31c057c56229e75c7fa70052b83053ee","message":"update parse() Return info","stats":{"files_changed":65,"insertions":70,"deletions":66,"files":["docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]}},{"commit":"41f8e3aba268ca0cd09931a04368615425c1aec8","message":"update Return info","stats":{"files_changed":65,"insertions":67,"deletions":65,"files":["docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]}},{"commit":"093c0df8978ace842af5258f9aff72c63c6f843d","message":"schema info","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["README.md"]}},{"commit":"37afc7dc8ae30342d01f3f72e73646fa60bb5294","message":"updte todo and compatibility","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["README.md"]}},{"commit":"efbf3549606fc77f8c16587ff04a0c316dfe5c00","message":"doc update for pip show","stats":{"files_changed":4,"insertions":126,"deletions":12,"files":["README.md","docgen.sh","docs/parsers/pip_show.md","jc/parsers/pip_show.py"]}},{"commit":"5e39fe0d8044787389d8f206f3c863d4bdf1e2ed","message":"pip show parser working","stats":{"files_changed":1,"insertions":64,"deletions":5,"files":["jc/parsers/pip_show.py"]}},{"commit":"47328dc65969f149c8f027286774ff0847c18add","message":"add pip-show parser","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"]}},{"commit":"addeef50ba54f536855544937a6c98135ae5cd51","message":"initial pip show parser add","stats":{"files_changed":1,"insertions":84,"deletions":0,"files":["jc/parsers/pip_show.py"]}},{"commit":"ad338cc5b50a178091c47cbea9a1db135a7fb678","message":"schema doc update","stats":{"files_changed":2,"insertions":56,"deletions":42,"files":["docs/parsers/crontab.md","jc/parsers/crontab.py"]}},{"commit":"202bc8201e31fd453c682265347b4e2ac2d41718","message":"doc update","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["README.md","docs/parsers/crontab.md","jc/parsers/crontab.py"]}},{"commit":"5ff99de405fbd8f79f9c2e301ac27184e0aba6fc","message":"add argument to parser info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]}},{"commit":"86ebe2cf9c6b336eacf217393c3c3c324ee29ec0","message":"initial add of pip list parser","stats":{"files_changed":6,"insertions":205,"deletions":1,"files":["README.md","docgen.sh","docs/parsers/crontab.md","docs/parsers/pip_list.md","jc/cli.py","jc/parsers/pip_list.py"]}},{"commit":"facf0b399c608d33f6a454ee24fd49fc62471742","message":"add osx to campatible","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/crontab.py"]}},{"commit":"33db7b0bcb0f24979cad6e173737d75c8ed301af","message":"add crontab tests","stats":{"files_changed":4,"insertions":57,"deletions":0,"files":["tests/fixtures/centos-7.7/crontab.json","tests/fixtures/ubuntu-18.04/crontab.json","tests/fixtures/ubuntu-18.04/crontab.out","tests/test_crontab.py"]}},{"commit":"663d07bca1181024d9d08b940237c52197c91729","message":"add crontab","stats":{"files_changed":2,"insertions":191,"deletions":0,"files":["docgen.sh","docs/parsers/crontab.md"]}},{"commit":"ba04e4997fcb28adbee446f633c121f1585b9f2c","message":"update docs","stats":{"files_changed":1,"insertions":113,"deletions":4,"files":["jc/parsers/crontab.py"]}},{"commit":"c4fee1b658c91afa2abdd746af6c1b4697c44b35","message":"add crontab parser","stats":{"files_changed":1,"insertions":72,"deletions":1,"files":["README.md"]}},{"commit":"99b92a15bbebc5568f4455f388f945613c4a2759","message":"support shortcut schedules","stats":{"files_changed":2,"insertions":37,"deletions":14,"files":["jc/parsers/crontab.py","tests/fixtures/centos-7.7/crontab.out"]}},{"commit":"b076ab5b57a6a59db096485e5ff4eb9f91bae8be","message":"initial crontab parser","stats":{"files_changed":3,"insertions":177,"deletions":0,"files":["jc/cli.py","jc/parsers/crontab.py","tests/fixtures/centos-7.7/crontab.out"]}},{"commit":"687759f75d0e80e81746a84f051e55cfdc870447","message":"alphabetize du entry","stats":{"files_changed":1,"insertions":31,"deletions":31,"files":["README.md"]}},{"commit":"9eaac7f3af0e0851c2d091d94c9920faa8a0fdfc","message":"add du","stats":{"files_changed":1,"insertions":32,"deletions":0,"files":["README.md"]}},{"commit":"4c24e00cfc0748d98e220d08820b88fc156148db","message":"add osx-11 and ubuntu tests","stats":{"files_changed":5,"insertions":21738,"deletions":9,"files":["tests/fixtures/osx-10.11.6/du.json","tests/fixtures/osx-10.11.6/du.out","tests/fixtures/ubuntu-18.04/du.json","tests/fixtures/ubuntu-18.04/du.out","tests/test_du.py"]}},{"commit":"beb17011b03e720078b0752e79a6a0f6123d1d3c","message":"du tests and docs","stats":{"files_changed":6,"insertions":131,"deletions":2,"files":["changelog.txt","docgen.sh","docs/parsers/du.md","docs/parsers/uname.md","tests/fixtures/osx-10.14.6/du.json","tests/test_du.py"]}},{"commit":"e882bf55bcd1d3526423ed1ccc61fb4819395cce","message":"initial add du parser","stats":{"files_changed":7,"insertions":8755,"deletions":0,"files":["changelog.txt","jc/cli.py","jc/parsers/du.py","tests/fixtures/centos-7.7/du.json","tests/fixtures/centos-7.7/du.out","tests/fixtures/osx-10.14.6/du.out","tests/test_du.py"]}},{"commit":"3a3016adb6d5b9e35f8a39908bfcdc65997cc5c6","message":"add parser_count to about","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]}},{"commit":"1e8b68153ade8a1e3d2b4db36e0c402bbc887079","message":"add osx uname tests","stats":{"files_changed":4,"insertions":27,"deletions":1,"files":["tests/fixtures/osx-10.11.6/uname-a.json","tests/fixtures/osx-10.14.6/uname-a.json","tests/fixtures/osx-10.14.6/uname-a.out","tests/test_uname.py"]}},{"commit":"9335cf65fbb87e3a0a7da0c4e9bcd251cb829de2","message":"add uname osx support","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]}},{"commit":"83f35256aee71f2619ddf880e2b8f2d6c63280bc","message":"add OSX support","stats":{"files_changed":1,"insertions":30,"deletions":19,"files":["jc/parsers/uname.py"]}},{"commit":"428333394817e4461a4eb095f4d6d128305a5f98","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"]}},{"commit":"b8f902796b7fb23a41355b23f7ce235bd18edc58","message":"shorten changelog","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["changelog.txt"]}},{"commit":"8f99ab295cd15718b98781707def97539ad41920","message":"info update","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]}},{"commit":"882310e268e2022f0cd6da75f80f5356529cd05c","message":"add name to about parser info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]}},{"commit":"56bce9521409d1850f75a3ae2be1363e765dd9dc","message":"about code cleanup","stats":{"files_changed":1,"insertions":6,"deletions":10,"files":["jc/cli.py"]}},{"commit":"c13ecbec2952c5d6765397f645e90653a4fd9d05","message":"clean up parser info","stats":{"files_changed":28,"insertions":2,"deletions":28,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]}},{"commit":"0ffaaa6e73649d1f657af569ac0b912f166e8493","message":"clean up about code","stats":{"files_changed":1,"insertions":7,"deletions":9,"files":["jc/cli.py"]}},{"commit":"75eff3adea097157c005b2201e353a741241ce8b","message":"remove whitespace","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/utils.py"]}},{"commit":"bf5f80476cff642ae672187ea59d40bdb602101e","message":"use real parser name in error message","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["jc/cli.py"]}},{"commit":"9aaf0fbb2f838c0af1e7f18fdb19104f9f5d3d39","message":"doc updates","stats":{"files_changed":29,"insertions":146,"deletions":1,"files":["changelog.txt","docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md"]}},{"commit":"8f01ef79532743573632d716ceea41d5ea752c88","message":"add -a option info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]}},{"commit":"da1d087452da02631296b1b3dc9ee10d4b7f764b","message":"add parser version info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]}},{"commit":"e16bc7e882a27a1d5a4bd7cf9972208e6997f96f","message":"add about information to parsers","stats":{"files_changed":29,"insertions":82,"deletions":17,"files":["jc/cli.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]}},{"commit":"fe9bdd4811216257c05b16d6d61897929669d434","message":"add info class","stats":{"files_changed":31,"insertions":384,"deletions":219,"files":["changelog.txt","jc/cli.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]}},{"commit":"17b6f3f6d6c398a52166849088a793d0e3b328b7","message":"add osx tests","stats":{"files_changed":3,"insertions":26,"deletions":0,"files":["tests/fixtures/osx-10.11.6/uptime.json","tests/fixtures/osx-10.14.6/uptime.json","tests/test_uptime.py"]}},{"commit":"90a6baf0ee3b8b27476badada4e590e22144f810","message":"add osx tests","stats":{"files_changed":6,"insertions":52,"deletions":0,"files":["tests/fixtures/osx-10.11.6/ps-axu.json","tests/fixtures/osx-10.11.6/ps-ef.json","tests/fixtures/osx-10.11.6/w.json","tests/fixtures/osx-10.14.6/w.json","tests/test_ps.py","tests/test_w.py"]}},{"commit":"f0e73d0e72d540292f41fff51652932c4e8b0315","message":"add osx tests","stats":{"files_changed":8,"insertions":444,"deletions":0,"files":["tests/fixtures/osx-10.11.6/ps-axu.out","tests/fixtures/osx-10.11.6/ps-ef.out","tests/fixtures/osx-10.11.6/uname-a.out","tests/fixtures/osx-10.11.6/uptime.out","tests/fixtures/osx-10.11.6/w.out","tests/fixtures/osx-10.14.6/uname-a.out","tests/fixtures/osx-10.14.6/uptime.out","tests/fixtures/osx-10.14.6/w.out"]}},{"commit":"a762882f1ccea6789ce7813b313f3242175b5bd6","message":"fixture updates","stats":{"files_changed":4,"insertions":2,"deletions":88,"files":["tests/fixtures/osx-10.14.6/ps-axu.json","tests/fixtures/osx-10.14.6/ps-axu.out","tests/fixtures/osx-10.14.6/ps-ef.json","tests/fixtures/osx-10.14.6/ps-ef.out"]}},{"commit":"4c1bc5923658bf463805ea33ec8d170a817909ce","message":"doc updates","stats":{"files_changed":3,"insertions":4,"deletions":3,"files":["docs/parsers/mount.md","docs/parsers/ps.md","docs/parsers/stat.md"]}},{"commit":"f2962083f80503f82c3eddf470674c776e616b32","message":"add osx support for mount parser","stats":{"files_changed":7,"insertions":93,"deletions":17,"files":["changelog.txt","jc/parsers/mount.py","tests/fixtures/osx-10.14.6/mount.json","tests/fixtures/osx-10.14.6/mount.out","tests/fixtures/osx-10.14.6/mount2.json","tests/fixtures/osx-10.14.6/mount2.out","tests/test_mount.py"]}},{"commit":"a0b22a5bcfa0777895243088b2c0f3bb5b758775","message":"help text formatting","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]}},{"commit":"dcf393354cd57683aaeecbed7b884d19b0fe94d4","message":"doc fix","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"]}},{"commit":"5f771656e3fdd703d449b2817faa4faeff1cd879","message":"use universal parser","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/route.py"]}},{"commit":"f376aab79328a211a127f4f818e7007232f1fae3","message":"doc update","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/universal.py"]}},{"commit":"3c96464217a740571e16c74ad41c1d92f7585547","message":"osx fixes and tests","stats":{"files_changed":6,"insertions":886,"deletions":13,"files":["jc/parsers/ps.py","tests/fixtures/osx-10.14.6/ps-axu.json","tests/fixtures/osx-10.14.6/ps-axu.out","tests/fixtures/osx-10.14.6/ps-ef.json","tests/fixtures/osx-10.14.6/ps-ef.out","tests/test_ps.py"]}},{"commit":"c9892833a16bb63f78537717be65670eb65a87b7","message":"formatting change","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/mount.py"]}},{"commit":"127c98affc7b122f0ced13852850214b9e07677e","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]}},{"commit":"8687a772f53ecaf1a20464429060b94bbf660fe7","message":"use universal parser","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["jc/parsers/lsof.py"]}},{"commit":"b1162b14d42643fd53dbbe3f89ba042f030d9254","message":"use universal parser","stats":{"files_changed":1,"insertions":3,"deletions":6,"files":["jc/parsers/lsmod.py"]}},{"commit":"8a8ee3570733c0c06b8cf53eb005e53ac2f9170f","message":"use universal parser","stats":{"files_changed":1,"insertions":8,"deletions":60,"files":["jc/parsers/lsblk.py"]}},{"commit":"5e109a3665cf0c286ac9dcbe2a452348a14b90ab","message":"add du","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/fixtures/create_fixtures.sh"]}},{"commit":"11db478430515ef3e1020482792f23d1c40ca32b","message":"update changelog","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]}},{"commit":"a85377014d9f93fcb9840715129b0e09d48d8584","message":"use universal parser","stats":{"files_changed":1,"insertions":5,"deletions":11,"files":["jc/parsers/free.py"]}},{"commit":"3aea86234d33160f5b3139cbfc2f4f032f655f3a","message":"fix osx-10.11.6 tests","stats":{"files_changed":6,"insertions":70,"deletions":61,"files":["tests/fixtures/osx-10.11.6/ls-al.json","tests/fixtures/osx-10.11.6/ls-al.out","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.11.6/ls-alh.out","tests/fixtures/osx-10.11.6/ls.json","tests/fixtures/osx-10.11.6/ls.out"]}},{"commit":"916ec6ed6b858a8a496e4026b9bab5505abca2ff","message":"fix osx ls tests","stats":{"files_changed":13,"insertions":193,"deletions":61,"files":["tests/fixtures/osx-10.11.6/ls-al.json","tests/fixtures/osx-10.11.6/ls-al.out","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.11.6/ls-alh.out","tests/fixtures/osx-10.11.6/ls.json","tests/fixtures/osx-10.11.6/ls.out","tests/fixtures/osx-10.14.6/ls-al.json","tests/fixtures/osx-10.14.6/ls-al.out","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.out","tests/fixtures/osx-10.14.6/ls.json","tests/fixtures/osx-10.14.6/ls.out","tests/test_ls.py"]}},{"commit":"9dca6ba5393d8840ad7fc9509273715a71955bd1","message":"doc formatting change","stats":{"files_changed":55,"insertions":120,"deletions":6,"files":["docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]}},{"commit":"0ebb89f561e1ced2e7f61ae19290e176c8a98bf2","message":"doc update","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["docs/parsers/arp.md"]}},{"commit":"e237867e242211ba37206911ebf1b35c97b417fd","message":"doc formatting","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/arp.py"]}},{"commit":"78fa44fd9ac9790313de6f461eb46d9b8d6159d4","message":"add compatibility to docs","stats":{"files_changed":24,"insertions":75,"deletions":3,"files":["docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]}},{"commit":"d615fa3b933ccd284bd8ee92baf5dfa6264507c6","message":"add compatibility to docs","stats":{"files_changed":30,"insertions":91,"deletions":1,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py"]}},{"commit":"ce134dc332dd9175e0d1823a4959bed427a3ddce","message":"Add OSX tests for ls","stats":{"files_changed":7,"insertions":115,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-al.json","tests/fixtures/osx-10.14.6/ls-al.out","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.out","tests/fixtures/osx-10.14.6/ls.json","tests/fixtures/osx-10.14.6/ls.out","tests/test_ls.py"]}},{"commit":"a56e4dc752a01635fbd9fc31e21d390bbd629084","message":"use universal simple table parser","stats":{"files_changed":3,"insertions":28,"deletions":3,"files":["changelog.txt","jc/parsers/arp.py","jc/parsers/universal.py"]}},{"commit":"d221b4aa29e80dda2b591059f4d64c416bff0a17","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]}},{"commit":"d2cba6ad2f1f1cd35aa174239584a0291abb8e37","message":"add compatibility info","stats":{"files_changed":3,"insertions":9,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py"]}},{"commit":"84b3c30b525ddf1f74eb7fd833050a0ec69621dd","message":"add osx tests","stats":{"files_changed":21,"insertions":254,"deletions":2,"files":["tests/fixtures/osx-10.11.6/df-h.json","tests/fixtures/osx-10.11.6/df-h.out","tests/fixtures/osx-10.11.6/df.json","tests/fixtures/osx-10.11.6/df.out","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-aaaa.out","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig-x.out","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.11.6/dig.out","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/osx-10.14.6/df-h.out","tests/fixtures/osx-10.14.6/df.json","tests/fixtures/osx-10.14.6/df.out","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-aaaa.out","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig-x.out","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/osx-10.14.6/dig.out","tests/test_df.py"]}},{"commit":"68eeec19a812b735627763bb7d7e2a58b72f7504","message":"doc update","stats":{"files_changed":3,"insertions":30,"deletions":25,"files":["README.md","docs/parsers/df.md","jc/parsers/df.py"]}},{"commit":"c6d1528a2ed302ea82828b733a98db415be83708","message":"use _ instead of -","stats":{"files_changed":4,"insertions":19,"deletions":8,"files":["jc/parsers/df.py","jc/parsers/universal.py","tests/fixtures/centos-7.7/df.json","tests/fixtures/ubuntu-18.04/df.json"]}},{"commit":"50a6b256b8a0936299f562c208ede6187feeb9a7","message":"new universal parsers to limit code duplication","stats":{"files_changed":1,"insertions":83,"deletions":0,"files":["jc/parsers/universal.py"]}},{"commit":"bbba1fe477014d0b7f370ce46ed821121be81a8e","message":"update df to use universal sparse table parser for osx compatibility","stats":{"files_changed":1,"insertions":38,"deletions":19,"files":["jc/parsers/df.py"]}},{"commit":"46b827da6b438be73fab168c3f05298483b141e4","message":"add osx compatibility","stats":{"files_changed":7,"insertions":75,"deletions":4,"files":["changelog.txt","jc/parsers/arp.py","tests/fixtures/osx-10.11.6/arp-a.json","tests/fixtures/osx-10.11.6/arp-a.out","tests/fixtures/osx-10.14.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a.out","tests/test_arp.py"]}},{"commit":"5e8c28a30a283b6ef525e9e78d3ef2a0e1526927","message":"comment fix","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"]}},{"commit":"e5d39031645ac897e0c0297f514ee62efe02f5f9","message":"update ifconfig doc","stats":{"files_changed":1,"insertions":38,"deletions":17,"files":["docs/parsers/ifconfig.md"]}},{"commit":"23975c9c9e1dd9d3e9fd7c05d231a86d646be048","message":"fixup osx subnet mask and convert state to an array","stats":{"files_changed":10,"insertions":132,"deletions":45,"files":["README.md","changelog.txt","jc/parsers/ifconfig.py","tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig2.json","tests/fixtures/osx-10.14.6/ifconfig.json","tests/fixtures/osx-10.14.6/ifconfig2.json","tests/fixtures/ubuntu-18.04/ifconfig.json","tests/test_ifconfig.py"]}},{"commit":"1e0dab8355e6fcb0ecde85270d4daac6ad93875b","message":"ifconfig fixture updates","stats":{"files_changed":10,"insertions":272,"deletions":2,"files":["tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.out","tests/fixtures/osx-10.11.6/ifconfig2.json","tests/fixtures/osx-10.11.6/ifconfig2.out","tests/fixtures/osx-10.14.6/ifconfig.json","tests/fixtures/osx-10.14.6/ifconfig.out","tests/fixtures/osx-10.14.6/ifconfig2.json","tests/fixtures/osx-10.14.6/ifconfig2.out","tests/fixtures/ubuntu-18.04/ifconfig.json"]}},{"commit":"5f4c10ffd5a9cbe4e5e3d2b9adc34f36492eaf46","message":"doc update","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["README.md","changelog.txt"]}},{"commit":"6f3d2b4b566b963fbf38572c587e8bd4e18881dc","message":"require ifconfig-parser v0.0.5 for mac and bytes support","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"fea8ace8446b64abe9e61a028951bc4e6df9f9c9","message":"add OSX compatibility","stats":{"files_changed":2,"insertions":20,"deletions":6,"files":["README.md","jc/parsers/ifconfig.py"]}},{"commit":"6633d9262c936217d8e90e64505c66b006cdab56","message":"Set theme jekyll-theme-cayman","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["_config.yml"]}},{"commit":"7d54137140e6d0515bc23c131a097af5c70c3379","message":"link update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"2fcda6f2480ae6bd5428a0147c19f9af527391b8","message":"add motivation to readme","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]}},{"commit":"9c1b8bacf9a59a86feb2a91eb44919e800491d1e","message":"Merge pull request #16 from kellyjonbrazil/dev"},{"commit":"4867655eb297b1da7a55e0d3a24c7ed7c8af55c7","message":"add line-numbers tests","stats":{"files_changed":6,"insertions":172,"deletions":0,"files":[".../centos-7.7/iptables-filter-line-numbers.json",".../centos-7.7/iptables-filter-line-numbers.out","tests/fixtures/create_fixtures.sh",".../ubuntu-18.04/iptables-filter-line-numbers.json",".../ubuntu-18.04/iptables-filter-line-numbers.out","tests/test_iptables.py"]}},{"commit":"47410d1a95406b0960aac705e7cfe925fea3172c","message":"version bump","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["changelog.txt","setup.py"]}},{"commit":"5fa49f5e672fc6f8dc18fb4b1761c98b81362649","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]}},{"commit":"36c53827fab6ac38c0010250ec387db40fdeecfc","message":"add systemctl tests","stats":{"files_changed":19,"insertions":1316,"deletions":308,"files":["tests/fixtures/centos-7.7/systemctl-ls.json","tests/fixtures/centos-7.7/systemctl-ls.out","tests/fixtures/centos-7.7/systemctl-luf.json","tests/fixtures/centos-7.7/systemctl-luf.out","tests/fixtures/centos-7.7/systemctl.json","tests/fixtures/centos-7.7/systemctl.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/systemctl-lj.json","tests/fixtures/ubuntu-18.04/systemctl-lj.out","tests/fixtures/ubuntu-18.04/systemctl-ls.json","tests/fixtures/ubuntu-18.04/systemctl-ls.out","tests/fixtures/ubuntu-18.04/systemctl-luf.json","tests/fixtures/ubuntu-18.04/systemctl-luf.out","tests/fixtures/ubuntu-18.04/systemctl.json","tests/fixtures/ubuntu-18.04/systemctl.out","tests/test_systemctl.py","tests/test_systemctl_lj.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py"]}},{"commit":"51631aef5b1b6fdeff4ab543510a9f9e15a0c2c4","message":"add systemctl tests","stats":{"files_changed":5,"insertions":358,"deletions":0,"files":["tests/fixtures/centos-7.7/systemctl.json","tests/fixtures/centos-7.7/systemctl.out","tests/fixtures/ubuntu-18.04/systemctl.json","tests/fixtures/ubuntu-18.04/systemctl.out","tests/test_systemctl.py"]}},{"commit":"a0298ac8a39093620b6859c909a78d11ab4a8e56","message":"add fstab tests","stats":{"files_changed":5,"insertions":55,"deletions":0,"files":["tests/fixtures/centos-7.7/fstab.json","tests/fixtures/centos-7.7/fstab.out","tests/fixtures/ubuntu-18.04/fstab.json","tests/fixtures/ubuntu-18.04/fstab.out","tests/test_fstab.py"]}},{"commit":"98c0188821ebaa71c5661f2e095cf464bec695f2","message":"formatting fix","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/systemctl_ls.md","jc/parsers/systemctl_ls.py"]}},{"commit":"ab1dabe3e42997825707006b63cc0c03d28470d4","message":"doc update","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py"]}},{"commit":"94bdb11fdf0e16d89769046d317643334ef1acdd","message":"remove systemctl from TODO","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"]}},{"commit":"b6727d68bab66164a3834b240ae868062aad9371","message":"add systemctl parsers","stats":{"files_changed":1,"insertions":68,"deletions":0,"files":["README.md"]}},{"commit":"89bad7fc2b4023b10b6eeb7ff1f8f18b71731cb6","message":"remove systemctl list-machines parser","stats":{"files_changed":5,"insertions":1,"deletions":191,"files":["changelog.txt","docgen.sh","docs/parsers/systemctl_lm.md","jc/cli.py","jc/parsers/systemctl_lm.py"]}},{"commit":"c0b8b810a2616e77973c1223f9c39329112337ac","message":"add systemctl list parsers","stats":{"files_changed":5,"insertions":306,"deletions":0,"files":["docgen.sh","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_lm.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md"]}},{"commit":"31eb65acd18b6d9163de900dbe48807a41a23785","message":"doc fix","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_lm.py"]}},{"commit":"513bbeb4649c011476930e1d1bf739ff06c2d66f","message":"add break on footer condition","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/systemctl_lj.py"]}},{"commit":"3a52fb725a0e56b52a0ea430266400b268360737","message":"add systemctl list-jobs parser","stats":{"files_changed":2,"insertions":55,"deletions":29,"files":["jc/cli.py","jc/parsers/systemctl_lj.py"]}},{"commit":"5affd444999de88b9bff7b49d790913540f97cd2","message":"add systemctl_lj, lm, ls, and luf","stats":{"files_changed":6,"insertions":342,"deletions":24,"files":["jc/cli.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_lm.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py"]}},{"commit":"5dbc6e806c5d05bfa1f7e2156ed2573341eb23c9","message":"add systemctl_luf parser","stats":{"files_changed":2,"insertions":142,"deletions":29,"files":["jc/cli.py","jc/parsers/systemctl_luf.py"]}},{"commit":"59ae31f3f342c9337037aac4630310c9b9eb8287","message":"add systemctl parser","stats":{"files_changed":6,"insertions":219,"deletions":0,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/systemctl.md","jc/cli.py","jc/parsers/systemctl.py"]}},{"commit":"230e921c2e8d931ea8a6abdf81215dbfc968b41c","message":"remove fstab from TODO","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"]}},{"commit":"a7c3d88b08ab90b719035cb15d78afe708235742","message":"update example and docs","stats":{"files_changed":3,"insertions":136,"deletions":0,"files":["docgen.sh","docs/parsers/fstab.md","jc/parsers/fstab.py"]}},{"commit":"9b453bcb84dd9f2f566955eda1ab35c863b3e8a1","message":"remove commented code block","stats":{"files_changed":1,"insertions":1,"deletions":13,"files":["jc/parsers/fstab.py"]}},{"commit":"ce43c782f601fc12267fa22279e8e0142ecc3a7f","message":"fstab update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"cb16faaf4d1700379d53053fe06824fd03404f87","message":"helptext update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"3f1d3ff6d85422536e0adfb6433fd3ec0399ebe1","message":"add examples","stats":{"files_changed":2,"insertions":73,"deletions":6,"files":["README.md","jc/parsers/fstab.py"]}},{"commit":"6f67eecd5ed46f8a692ff5dd607a2395a5c838ff","message":"add fstab parser","stats":{"files_changed":2,"insertions":108,"deletions":0,"files":["jc/cli.py","jc/parsers/fstab.py"]}},{"commit":"e75c819190634f0a9048942b39eda691831829ee","message":"changelog update","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]}},{"commit":"601e68d104dd43940acadaa574dfd9b5117b0476","message":"doc update","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/hosts.md","jc/parsers/hosts.py"]}},{"commit":"8285ecfd1e7810102cdbc399398a16f999c841ee","message":"enhance test file with comments","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["tests/fixtures/centos-7.7/hosts.out","tests/fixtures/ubuntu-18.04/hosts.out"]}},{"commit":"8726de902e527b95a12afd79a53d533cc176703d","message":"add hosts parser","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]}},{"commit":"4133585274b0e7faa0255a911468248eb390d673","message":"add hosts tests","stats":{"files_changed":5,"insertions":53,"deletions":0,"files":["tests/fixtures/centos-7.7/hosts.json","tests/fixtures/centos-7.7/hosts.out","tests/fixtures/ubuntu-18.04/hosts.json","tests/fixtures/ubuntu-18.04/hosts.out","tests/test_hosts.py"]}},{"commit":"ad913b141721655a72a7b2a6ad60037e5acd5f9a","message":"add hosts docs","stats":{"files_changed":4,"insertions":148,"deletions":2,"files":["README.md","docgen.sh","docs/parsers/hosts.md","jc/parsers/hosts.py"]}},{"commit":"7113e5a844fc0304f62f4afe65b5cbc816f75372","message":"filter out comments at the end of the line","stats":{"files_changed":1,"insertions":10,"deletions":0,"files":["jc/parsers/hosts.py"]}},{"commit":"a3a8369dc0e7227072f595cef1e57d471eff4d2f","message":"add docs","stats":{"files_changed":1,"insertions":51,"deletions":9,"files":["jc/parsers/hosts.py"]}},{"commit":"64016b8ef049d5d4f02b4371f5cc9632c19bcaa2","message":"add hosts parser","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["jc/cli.py","jc/parsers/hosts.py"]}},{"commit":"1cb49d60c84054b0446f299f6b4bab7d102101c1","message":"remove sar and sadf","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["README.md"]}},{"commit":"c858adfd12144569d0b990a217c5bcd75bd23828","message":"remove stat from todo","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"]}},{"commit":"08d68327c777dd740d93a1b5fff8cf62f58904c6","message":"add stat tests","stats":{"files_changed":5,"insertions":8080,"deletions":0,"files":["tests/fixtures/centos-7.7/stat.json","tests/fixtures/centos-7.7/stat.out","tests/fixtures/ubuntu-18.04/stat.json","tests/fixtures/ubuntu-18.04/stat.out","tests/test_stat.py"]}},{"commit":"0d7c6c5664911af7a41149d51dd6ae05b39d7648","message":"doc fix and add continue lines","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/parsers/stat.md","jc/parsers/stat.py"]}},{"commit":"8bfa41dbf485cb06c928bc00a68727d2ceac21fa","message":"change values to null if -","stats":{"files_changed":3,"insertions":22,"deletions":14,"files":["README.md","docs/parsers/stat.md","jc/parsers/stat.py"]}},{"commit":"7e2fa48ed4f3fd452082ce06e7306efd38b2d508","message":"update changelog","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]}},{"commit":"340635cad5224f2c715bf961956f4b9b6119d80b","message":"fix stats doc","stats":{"files_changed":3,"insertions":408,"deletions":111,"files":["docgen.sh","docs/parsers/ss.md","docs/parsers/stat.md"]}},{"commit":"8f77d1de098f035767d73a6965a695b95b75e161","message":"add stat docs","stats":{"files_changed":2,"insertions":111,"deletions":253,"files":["docgen.sh","docs/parsers/ss.md"]}},{"commit":"7dcf1b25ffb801375f0bf4263f34713ded904de9","message":"add link_to field","stats":{"files_changed":1,"insertions":13,"deletions":0,"files":["jc/parsers/stat.py"]}},{"commit":"9b735381063a1167a6a74864a43b81aefd98009f","message":"set compatibility to linux only","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"]}},{"commit":"3bf8c8c6dbdf7e03e26b4581e35c3274084c07ef","message":"pep8 fixes","stats":{"files_changed":7,"insertions":27,"deletions":27,"files":["jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]}},{"commit":"04a1ff2ca7873d55cdbc831e521f3d4892074d98","message":"pep8 fixes","stats":{"files_changed":8,"insertions":28,"deletions":28,"files":["jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py"]}},{"commit":"64647d230ac936cb43864481ae0f45d13707d7b4","message":"pep8 cleanup","stats":{"files_changed":6,"insertions":21,"deletions":21,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py"]}},{"commit":"c2a67e1b70f33044aecabd8b46018117cb38cb9c","message":"add stat parser","stats":{"files_changed":2,"insertions":213,"deletions":16,"files":["README.md","jc/parsers/stat.py"]}},{"commit":"edb9a7c76e1fedaf37b6a226ad4e1cfc08a9a5ec","message":"add stat parser","stats":{"files_changed":2,"insertions":94,"deletions":0,"files":["jc/cli.py","jc/parsers/stat.py"]}},{"commit":"a407f5b67833cc5f8dda9fe8265cd34e62f28d14","message":"minor update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"e5b4987acb70e854d9996350235c5535b4a46b69","message":"doc update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"ba8cc18eebe779742cff0ba4c8bebe376e787c8c","message":"add ss tests","stats":{"files_changed":5,"insertions":405,"deletions":0,"files":["tests/fixtures/centos-7.7/ss-sudo-a.json","tests/fixtures/centos-7.7/ss-sudo-a.out","tests/fixtures/ubuntu-18.04/ss-sudo-a.json","tests/fixtures/ubuntu-18.04/ss-sudo-a.out","tests/test_ss.py"]}},{"commit":"d2c7316e00b9aaf19231c05351821041458baf98","message":"update command options info","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]}},{"commit":"609aa14d243206e81ed31f8438c3f42e8263e140","message":"spelling fix","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/ss.md","jc/parsers/ss.py"]}},{"commit":"ef1ad4c700fcb740b5fbe1e12205b9a30ae427ab","message":"doc update","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["docs/parsers/ss.md","jc/parsers/ss.py"]}},{"commit":"a0e2732152dc3005914b9a3e4f03e937a113c67f","message":"add ss example","stats":{"files_changed":1,"insertions":64,"deletions":12,"files":["README.md"]}},{"commit":"9b5d3e3be1ac07813e716f8426fe89cced478221","message":"update doc","stats":{"files_changed":1,"insertions":135,"deletions":25,"files":["docs/parsers/ss.md"]}},{"commit":"2663ef31fbc1b69b89b8032640a25065cc953866","message":"fix field names per ss documentation","stats":{"files_changed":1,"insertions":159,"deletions":30,"files":["jc/parsers/ss.py"]}},{"commit":"a4cdd3378e6a031f16dd371ed5cd60ff018feb32","message":"add compatibility info","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["README.md"]}},{"commit":"2f805da24d0e833e3d2a1f3a5ec34031fa911c05","message":"add colon to parameter in docs","stats":{"files_changed":45,"insertions":51,"deletions":51,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/utils.md","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/utils.py"]}},{"commit":"79152a946d93e4facf9711bfa0f421e1978e0f1f","message":"initialize network_list and socket_list variables","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/netstat.py"]}},{"commit":"de37bb37d01b397df2b5992b4acd64817380401d","message":"add ss docs","stats":{"files_changed":3,"insertions":187,"deletions":1,"files":["docgen.sh","docs/parsers/ss.md","jc/parsers/ss.py"]}},{"commit":"f783e44e5c0cd05733da5d24573f06d05760f993","message":"doc fix","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["README.md","changelog.txt"]}},{"commit":"af82f2c991ac0668485e75ae78a26b9553ec8b13","message":"update raw format note","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"46774daf9d3e0612df8f79d4b6b724e612ceb725","message":"doc update","stats":{"files_changed":2,"insertions":194,"deletions":4,"files":["README.md","jc/parsers/ss.py"]}},{"commit":"648306b7856fe2e296ce463ff4c9c2a8632c92d4","message":"process ss data","stats":{"files_changed":1,"insertions":44,"deletions":22,"files":["jc/parsers/ss.py"]}},{"commit":"b7a4f205b80c0a6a41aaabf59703525ac526c295","message":"parser fixes","stats":{"files_changed":1,"insertions":17,"deletions":14,"files":["jc/parsers/ss.py"]}},{"commit":"fdb168b43a69358a97bf43b71a0adbc7b1ef56f5","message":"add ss parser","stats":{"files_changed":2,"insertions":120,"deletions":0,"files":["jc/cli.py","jc/parsers/ss.py"]}},{"commit":"b6f65c93c462856f26201df0cbfe804b29a65169","message":"ps doc update","stats":{"files_changed":3,"insertions":43,"deletions":69,"files":["README.md","docs/parsers/ps.md","jc/parsers/ps.py"]}},{"commit":"3f4838f17a81969718d9e5b6bafa21e0b92e1d95","message":"remove cli.md","stats":{"files_changed":2,"insertions":0,"deletions":6,"files":["docgen.sh","docs/cli.md"]}},{"commit":"eef0dee2aa206716d9cf011bec58a06c46bbee15","message":"doc update","stats":{"files_changed":2,"insertions":8,"deletions":0,"files":["docs/utils.md","jc/utils.py"]}},{"commit":"e17388d3b2d1521d963bf9dd9e7a4ba5ba9bb09d","message":"doc update","stats":{"files_changed":2,"insertions":44,"deletions":4,"files":["docs/utils.md","jc/utils.py"]}},{"commit":"7e6a1bc719b7160ba70cd326ff6aa182993a7380","message":"doc update","stats":{"files_changed":2,"insertions":41,"deletions":63,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"37738a2ea2f15af847e4b8383aba911e2020a3e8","message":"update contributions","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"c5834a57db8957723a1425b9db46c433e28a3af1","message":"add todo section","stats":{"files_changed":1,"insertions":14,"deletions":0,"files":["README.md"]}},{"commit":"91b9373f380e06f91888811edbfb21747ff08810","message":"new examples","stats":{"files_changed":1,"insertions":417,"deletions":673,"files":["README.md"]}},{"commit":"ce0bb5b816eed0c75542ead474c3dcb8401be2d7","message":"formatting fix","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"f330ff0eff00586f46d18497f2441e94b6430e91","message":"wrap example text","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["README.md"]}},{"commit":"4b02700414660b90518311485761870402368625","message":"update simple examples","stats":{"files_changed":1,"insertions":9,"deletions":20,"files":["README.md"]}},{"commit":"ee30180376b7acec46314bbc483866bff41c362a","message":"fix note","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"338e0ff15c7fac84475c1ed107e6a23e7a009b1f","message":"add schema note","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]}},{"commit":"3ac75305dfa33429646bb5d415567034cccfeee3","message":"update process() doc","stats":{"files_changed":39,"insertions":351,"deletions":39,"files":["docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]}},{"commit":"3bdcf44afb708cf6a716a0847b119f895602c23e","message":"doc update","stats":{"files_changed":2,"insertions":18,"deletions":2,"files":["docs/parsers/arp.md","jc/parsers/arp.py"]}},{"commit":"e3f4ffede56fe48c0a282a021ac5cdfd7a8abee9","message":"doc update","stats":{"files_changed":20,"insertions":172,"deletions":77,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md"]}},{"commit":"f0c8725d4355113f7690f20bb99078e488084ad7","message":"doc update","stats":{"files_changed":21,"insertions":181,"deletions":81,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]}},{"commit":"5473bc4eb697d00bd26a038287e1137e438cacb5","message":"doc update","stats":{"files_changed":2,"insertions":16,"deletions":6,"files":["docs/parsers/arp.md","jc/parsers/arp.py"]}},{"commit":"b9bd9422bfa46144416fa65add2e041d4124357b","message":"doc update","stats":{"files_changed":2,"insertions":380,"deletions":46,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]}},{"commit":"cb5729a070925a7fa29f762bd4b074532f5cba55","message":"add options to docs","stats":{"files_changed":1,"insertions":62,"deletions":44,"files":["README.md"]}},{"commit":"f0b1ab42337746afd37365abdf44729d530d5410","message":"doc update","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/utils.md","jc/utils.py"]}},{"commit":"b15386e849b9fea347e7b17307eedf779d8022fc","message":"doc update","stats":{"files_changed":2,"insertions":11,"deletions":5,"files":["docs/utils.md","jc/utils.py"]}},{"commit":"d2a2c8da35ee44e9a7572885609548eb809bcdda","message":"doc updates","stats":{"files_changed":3,"insertions":1,"deletions":5,"files":["docs/parsers/iptables.md","docs/parsers/mount.md","docs/parsers/uname.md"]}},{"commit":"7251548cbb09beae6971385a56036e9649bd9b2c","message":"documentation updates","stats":{"files_changed":3,"insertions":3,"deletions":5,"files":["jc/parsers/iptables.py","jc/parsers/mount.py","jc/parsers/uname.py"]}},{"commit":"146e29f7cbc0f396be67dbd7ae971a4ef4dafb7b","message":"update docs","stats":{"files_changed":47,"insertions":5386,"deletions":2249,"files":["docgen.sh","docs/cli.md","docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/readme.md","docs/utils.md","jc/__init__.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/utils.py"]}},{"commit":"363fd3eab409351121dab8a11c6b565829ccd84a","message":"move parser_name to except block","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"4083dd4260ff3a8bb6649e1661cf3e058fdbad59","message":"add -d option","stats":{"files_changed":2,"insertions":24,"deletions":5,"files":["changelog.txt","jc/cli.py"]}},{"commit":"b2b74547baaf33058d74fc08cb665777b19bd05a","message":"add netstat-sudo-aeep tests","stats":{"files_changed":6,"insertions":317,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-sudo-aeep.json","tests/fixtures/centos-7.7/netstat-sudo-aeep.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.json","tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.out","tests/test_netstat.py"]}},{"commit":"dddb0baabf8a78261ac80380b97e7c92c7ce4d89","message":"use \\u2063 instead of \\u2026","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/netstat.py"]}},{"commit":"84b4f67ef9d4bb0db201a095d74400a56394589d","message":"new json output","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["tests/fixtures/centos-7.7/ps-axu.json","tests/fixtures/ubuntu-18.04/ps-axu.json"]}},{"commit":"3a089138b8c269ba3c5f7aec87ae3f8ec368c3ab","message":"add int and float changes","stats":{"files_changed":1,"insertions":129,"deletions":9,"files":["jc/parsers/ps.py"]}},{"commit":"3ff0305c8e62ce3b5a8f3f9174c5a9da3bc22766","message":"add lsblk tests","stats":{"files_changed":8,"insertions":54,"deletions":2,"files":["tests/fixtures/centos-7.7/lsblk-allcols.json","tests/fixtures/centos-7.7/lsblk-allcols.out","tests/fixtures/centos-7.7/lsblk.json","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/lsblk-allcols.json","tests/fixtures/ubuntu-18.04/lsblk-allcols.out","tests/fixtures/ubuntu-18.04/lsblk.json","tests/test_lsblk.py"]}},{"commit":"761edc3c6cfc215fe45c65ee2bb5462cb460b6a6","message":"remove unused parse_pairs function","stats":{"files_changed":1,"insertions":1,"deletions":6,"files":["jc/parsers/lsblk.py"]}},{"commit":"3351c81f647ac97a5038cc0c14adb31e55832a77","message":"add documentation","stats":{"files_changed":1,"insertions":200,"deletions":2,"files":["jc/parsers/lsblk.py"]}},{"commit":"3dfc6f67d770c59804bdeb371d5c78e3f3668f9e","message":"change empty values to Null","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/lsblk.py"]}},{"commit":"1546ec3bd139ef687282f60786388b5207541c98","message":"fixes for right justified columns","stats":{"files_changed":1,"insertions":17,"deletions":13,"files":["jc/parsers/lsblk.py"]}},{"commit":"2a953011f72e922c89b9af6dfebd1983da7c338d","message":"rewrite of lsblk parser to use a custom delimiter","stats":{"files_changed":2,"insertions":50,"deletions":155,"files":["changelog.txt","jc/parsers/lsblk.py"]}},{"commit":"d2f755de9d2be7b0af5f010042e1f4ca589c5464","message":"updates tests","stats":{"files_changed":14,"insertions":250,"deletions":566,"files":["tests/test_ifconfig.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_ls.py","tests/test_lsblk.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_ps.py","tests/test_route.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py"]}},{"commit":"f363334639c5fa3a43889794ea52409056a2d886","message":"update tests","stats":{"files_changed":5,"insertions":87,"deletions":219,"files":["tests/test_df.py","tests/test_dig.py","tests/test_env.py","tests/test_free.py","tests/test_history.py"]}},{"commit":"750197e48596ad96804477053d3ff3c8063ea68a","message":"new tests","stats":{"files_changed":1,"insertions":27,"deletions":70,"files":["tests/test_arp.py"]}},{"commit":"36b349e4ed39fe611c7d87a47c378cc4d4627ad2","message":"json output files","stats":{"files_changed":76,"insertions":76,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-a.json","tests/fixtures/centos-7.7/arp-v.json","tests/fixtures/centos-7.7/arp.json","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/df.json","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/centos-7.7/env.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/centos-7.7/free.json","tests/fixtures/centos-7.7/history.json","tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/centos-7.7/iptables-filter-nv.json","tests/fixtures/centos-7.7/iptables-filter.json","tests/fixtures/centos-7.7/iptables-mangle.json","tests/fixtures/centos-7.7/iptables-nat.json","tests/fixtures/centos-7.7/iptables-raw.json","tests/fixtures/centos-7.7/jobs.json","tests/fixtures/centos-7.7/ls-al.json","tests/fixtures/centos-7.7/ls-alh.json","tests/fixtures/centos-7.7/ls.json","tests/fixtures/centos-7.7/lsblk.json","tests/fixtures/centos-7.7/lsmod.json","tests/fixtures/centos-7.7/lsof-sudo.json","tests/fixtures/centos-7.7/lsof.json","tests/fixtures/centos-7.7/mount.json","tests/fixtures/centos-7.7/netstat-l.json","tests/fixtures/centos-7.7/netstat-p.json","tests/fixtures/centos-7.7/netstat-sudo-lnp.json","tests/fixtures/centos-7.7/netstat.json","tests/fixtures/centos-7.7/ps-axu.json","tests/fixtures/centos-7.7/ps-ef.json","tests/fixtures/centos-7.7/route-vn.json","tests/fixtures/centos-7.7/route.json","tests/fixtures/centos-7.7/uname-a.json","tests/fixtures/centos-7.7/uptime.json","tests/fixtures/centos-7.7/w.json","tests/fixtures/ubuntu-18.04/arp-a.json","tests/fixtures/ubuntu-18.04/arp-v.json","tests/fixtures/ubuntu-18.04/arp.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/df.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json","tests/fixtures/ubuntu-18.04/env.json","tests/fixtures/ubuntu-18.04/free-h.json","tests/fixtures/ubuntu-18.04/free.json","tests/fixtures/ubuntu-18.04/history.json","tests/fixtures/ubuntu-18.04/ifconfig.json","tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","tests/fixtures/ubuntu-18.04/iptables-filter.json","tests/fixtures/ubuntu-18.04/iptables-mangle.json","tests/fixtures/ubuntu-18.04/iptables-nat.json","tests/fixtures/ubuntu-18.04/iptables-raw.json","tests/fixtures/ubuntu-18.04/jobs.json","tests/fixtures/ubuntu-18.04/ls-al.json","tests/fixtures/ubuntu-18.04/ls-alh.json","tests/fixtures/ubuntu-18.04/ls.json","tests/fixtures/ubuntu-18.04/lsblk.json","tests/fixtures/ubuntu-18.04/lsmod.json","tests/fixtures/ubuntu-18.04/lsof-sudo.json","tests/fixtures/ubuntu-18.04/lsof.json","tests/fixtures/ubuntu-18.04/mount.json","tests/fixtures/ubuntu-18.04/netstat-l.json","tests/fixtures/ubuntu-18.04/netstat-p.json","tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.json","tests/fixtures/ubuntu-18.04/netstat.json","tests/fixtures/ubuntu-18.04/ps-axu.json","tests/fixtures/ubuntu-18.04/ps-ef.json","tests/fixtures/ubuntu-18.04/route-vn.json","tests/fixtures/ubuntu-18.04/route.json","tests/fixtures/ubuntu-18.04/uname-a.json","tests/fixtures/ubuntu-18.04/uptime.json","tests/fixtures/ubuntu-18.04/w.json"]}},{"commit":"b5f1e94fe2859c4fbcf126f8f8fb20d71a9b6433","message":"fix for space before '-' in program_name","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/netstat.py"]}},{"commit":"6a504fb0e10b1ef551ed9fe780926fe5ca02d267","message":"add exception type","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"]}},{"commit":"e02bad2240bacbc31097d931a902a34217d559db","message":"update documentation","stats":{"files_changed":1,"insertions":123,"deletions":175,"files":["jc/parsers/netstat.py"]}},{"commit":"1d4043a3b64c38a20a0db065c3bdc3c6a2d068bd","message":"add template parser","stats":{"files_changed":1,"insertions":52,"deletions":0,"files":["jc/parsers/foo.py"]}},{"commit":"039e034829789ca314a00abd4f1d9ad06f1a6eef","message":"fix parsing issues in program_name when spaces are in the name","stats":{"files_changed":1,"insertions":19,"deletions":6,"files":["jc/parsers/netstat.py"]}},{"commit":"d828de4f4f2f4c3d582fddee79830d12511c3299","message":"update documentation","stats":{"files_changed":1,"insertions":53,"deletions":9,"files":["jc/parsers/w.py"]}},{"commit":"098000bb10a3f5ed33d285c6ba4f0dfb9a013fdc","message":"fix blank 'from' column issue","stats":{"files_changed":2,"insertions":24,"deletions":9,"files":["changelog.txt","jc/parsers/w.py"]}},{"commit":"b41165eff5cd7371e852cd33e084a919524ead9b","message":"process w data","stats":{"files_changed":1,"insertions":31,"deletions":1,"files":["jc/parsers/w.py"]}},{"commit":"6ad7891b2b34fae1a366568e4eba86e886a6dd84","message":"process uptime data","stats":{"files_changed":1,"insertions":59,"deletions":14,"files":["jc/parsers/uptime.py"]}},{"commit":"72138315598cd405bc0508b554108bf3f730dcb0","message":"add process boilerplate","stats":{"files_changed":1,"insertions":31,"deletions":10,"files":["jc/parsers/uname.py"]}},{"commit":"10eedd82e4c4678fbf989fe599d7ca75deced5a8","message":"changelog update","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["changelog.txt"]}},{"commit":"a55493da0f1457a46f29511e0835adfa9d748f7b","message":"process route data","stats":{"files_changed":1,"insertions":93,"deletions":6,"files":["jc/parsers/route.py"]}},{"commit":"89973f4162317693b0d094a64115ee87d8479d51","message":"doc updates and tty fix","stats":{"files_changed":1,"insertions":45,"deletions":27,"files":["jc/parsers/ps.py"]}},{"commit":"4802222ad50d55372f2b883d83a61181086b0619","message":"process ps data","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/parsers/ps.py"]}},{"commit":"bcd28f06f87a4260d1787399d723817afd6aee90","message":"prep ps for process","stats":{"files_changed":1,"insertions":23,"deletions":1,"files":["jc/parsers/ps.py"]}},{"commit":"e17a47a7fa7f4c1bb4c4b55fb004963fc1b61434","message":"fix typo","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"]}},{"commit":"cad2e16c7aa54a70f476bf4268ff8e5985cff468","message":"document examples","stats":{"files_changed":1,"insertions":353,"deletions":1,"files":["jc/parsers/netstat.py"]}},{"commit":"5da5d278dac77bd4aa21819194e7f9e178bd1887","message":"process netstat data","stats":{"files_changed":1,"insertions":23,"deletions":0,"files":["jc/parsers/netstat.py"]}},{"commit":"81b6776e57c113cbfb8346d1cfd83532a440c257","message":"remove old netstat parser","stats":{"files_changed":1,"insertions":0,"deletions":177,"files":["jc/parsers/netstat.py.old"]}},{"commit":"5ecb6bd58b4ed91f63e4a0b5939378bd9925b7b7","message":"doc updates","stats":{"files_changed":2,"insertions":4,"deletions":3,"files":["changelog.txt","jc/parsers/netstat.py"]}},{"commit":"21b56096c57cfcf5c55fdf5f9bab88b6d5c7dd73","message":"finalize parse_post","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["jc/parsers/netstat.py"]}},{"commit":"8c78f959731a25a05ee6361a14853c92f8fce69b","message":"clean up trailing spaces on entries","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["jc/parsers/netstat.py"]}},{"commit":"94a88bb5669d9a9a5dff085a4c4111bdd39df8f6","message":"post_parse flags and program_name","stats":{"files_changed":1,"insertions":35,"deletions":17,"files":["jc/parsers/netstat.py"]}},{"commit":"579124475b0b517b36ddbe5bdb13be14807dea1f","message":"simplify parser_map code","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"5da83e020015eb5559d216bc3f39b3854e76adf3","message":"fix found variable error","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"]}},{"commit":"a90a76d004b923edece07a52a3aa400a9ef4b005","message":"move out old netstat parser","stats":{"files_changed":2,"insertions":177,"deletions":140,"files":["jc/parsers/netstat.py.old","jc/parsers/netstat2.py"]}},{"commit":"bdfa95912398b2630fcb13e866f4013747fd0975","message":"fix compatibility code","stats":{"files_changed":20,"insertions":209,"deletions":212,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]}},{"commit":"4380594275bc863e81839a6a7b032a6ff0cbb9b6","message":"remove cli functions from utils","stats":{"files_changed":1,"insertions":8,"deletions":46,"files":["jc/utils.py"]}},{"commit":"88bf252c0df3c583640286880d7992e4399e23f4","message":"rename jc.py to cli.py","stats":{"files_changed":2,"insertions":139,"deletions":128,"files":["jc/cli.py","jc/jc.py"]}},{"commit":"a5efd8adce77fca7e3343f8f518c7bad578fdb4f","message":"rename jc.py to cli.py","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"2ee392eefffde77ebdf83f5e4e0c43cf8c1a7d6e","message":"add quiet mode","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/netstat2.py"]}},{"commit":"9c1d893e16ea17b16bec5fd0ec8839c4fe6f0590","message":"move utils to own module and add quiet mode","stats":{"files_changed":4,"insertions":102,"deletions":90,"files":["jc/jc.py","jc/parsers/arp.py","jc/parsers/df.py","jc/utils.py"]}},{"commit":"88dcb90c83b757285661c72429c5b60bb1ead94a","message":"changelog update","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["changelog.txt"]}},{"commit":"a3bcabc89c1f74d067da0046492dbc56e50b1005","message":"mvp of netstat raw_data parser","stats":{"files_changed":1,"insertions":9,"deletions":62,"files":["jc/parsers/netstat2.py"]}},{"commit":"dafbf9fdcf53a8abbd006baef0be6697f860d2a1","message":"process lsmod data","stats":{"files_changed":4,"insertions":247,"deletions":53,"files":["jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat2.py"]}},{"commit":"680cb2b2caa82e1e2c3225b3c44cae2ba03ba02c","message":"doc update","stats":{"files_changed":1,"insertions":76,"deletions":7,"files":["jc/parsers/lsblk.py"]}},{"commit":"54818a06e0e0b981810f6aec45c308da81a9e2ea","message":"change bool variable names","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/lsblk.py"]}},{"commit":"88f4c5b5a93da3938b84f97abfc54539ee19ac48","message":"remove TypeError from exception check","stats":{"files_changed":6,"insertions":10,"deletions":10,"files":["jc/parsers/dig.py","jc/parsers/free.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py"]}},{"commit":"2bb7409887e8b7659613189daf58d02cb26bd6ba","message":"process lsblk data","stats":{"files_changed":2,"insertions":36,"deletions":11,"files":["jc/parsers/df.py","jc/parsers/lsblk.py"]}},{"commit":"c780aac3aba02cc042c6a3c984af198069956370","message":"add compatibility function","stats":{"files_changed":22,"insertions":91,"deletions":5,"files":["jc/jc.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat2.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]}},{"commit":"5010aaec285e26ae9dbfdb3fcdc38a3bd36cd236","message":"put exit() back","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"]}},{"commit":"066e93cb075021ac94a0e2e6a36a34bc173ee6c0","message":"move exit() to errormessage()","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"]}},{"commit":"0bd2faa7f71a128babc68afea053159ccb91b702","message":"beautify compatibility list","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/jc.py"]}},{"commit":"e2f926453ba386736204e358f8306dfc731b5005","message":"add install script","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["install.sh"]}},{"commit":"b953b79f9c46d8c5398a6c1c2769167b5aed2805","message":"add compatibility","stats":{"files_changed":3,"insertions":11,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/ls.py"]}},{"commit":"7f9967780692bec2fcbe992eee0c392ab92efb7f","message":"compatibility function call","stats":{"files_changed":2,"insertions":19,"deletions":1,"files":["jc/jc.py","jc/parsers/lsblk.py"]}},{"commit":"721b54665924ad1657ee83cd5fca601e03700962","message":"finish schema","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/lsblk.py"]}},{"commit":"2de5e41269421c73e07d4abd6ca99b38be736261","message":"fix for more columns and build schema","stats":{"files_changed":1,"insertions":95,"deletions":12,"files":["jc/parsers/lsblk.py"]}},{"commit":"dfe0f6e99b6174734661fc43d9ad4b1d0dfd96e5","message":"process ls data","stats":{"files_changed":1,"insertions":75,"deletions":9,"files":["jc/parsers/ls.py"]}},{"commit":"8873b1bc697c8f9409fa676c88b5ebe109dc8717","message":"clean up process code","stats":{"files_changed":1,"insertions":24,"deletions":46,"files":["jc/parsers/df.py"]}},{"commit":"9ff94707004fefed475603436fc0a7ffb19e6fee","message":"refactor helptext() function","stats":{"files_changed":1,"insertions":9,"deletions":4,"files":["jc/jc.py"]}},{"commit":"2c58fca53044892e15ceb5e8bcae1afb09fa3269","message":"process jobs data","stats":{"files_changed":1,"insertions":62,"deletions":4,"files":["jc/parsers/jobs.py"]}},{"commit":"9e5cd90da7d92bbadbc0d25071d087a3dbd90a5b","message":"process iptables data","stats":{"files_changed":1,"insertions":131,"deletions":261,"files":["jc/parsers/iptables.py"]}},{"commit":"7ee0d49424bba5274975d6c33e0721977660692f","message":"process ifconfig data","stats":{"files_changed":1,"insertions":107,"deletions":28,"files":["jc/parsers/ifconfig.py"]}},{"commit":"a9058ee21e87454aa423112239c4f4df7daca8c4","message":"doc formatting","stats":{"files_changed":3,"insertions":4,"deletions":1,"files":["jc/parsers/arp.py","jc/parsers/dig.py","jc/parsers/free.py"]}},{"commit":"fcf0aac87dccac2ce28e6f55e66e2f0b8f6fbd36","message":"add history processing","stats":{"files_changed":1,"insertions":54,"deletions":10,"files":["jc/parsers/history.py"]}},{"commit":"daec5f068103aae547509ddacc2be56c84f39f17","message":"process free data","stats":{"files_changed":1,"insertions":55,"deletions":6,"files":["jc/parsers/free.py"]}},{"commit":"5b2491d5ae72705758944e247fbca83367c0365f","message":"process env data","stats":{"files_changed":1,"insertions":54,"deletions":5,"files":["jc/parsers/env.py"]}},{"commit":"d9b41ac73b234f5bf7ff3abfee198092424a1bbd","message":"doc formatting","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/dig.py"]}},{"commit":"7168ffddf8a8dfcdd5bcabd8bf943d6417de407d","message":"process dig output","stats":{"files_changed":1,"insertions":87,"deletions":5,"files":["jc/parsers/dig.py"]}},{"commit":"a855344bec9f60d852de326953436ec76f25cffb","message":"document schema","stats":{"files_changed":1,"insertions":13,"deletions":0,"files":["jc/parsers/arp.py"]}},{"commit":"d8b3b59fae924494fbcdfbdf6ad790f5234b0c69","message":"add schema and rename 'avail' to 'available'","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/parsers/df.py"]}},{"commit":"4b7d7840d37be47c1c98c38a6d712e7090e5b68c","message":"add -r option","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","changelog.txt"]}},{"commit":"58a094a9b4cab0fcb99581f37a21a450fc3a1aed","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]}},{"commit":"65adbb4189ac66de3283adb2af93a1251103f057","message":"doc update","stats":{"files_changed":1,"insertions":29,"deletions":7,"files":["jc/parsers/arp.py"]}},{"commit":"f7350959c9706486a3aed19a999e5ee756a1240c","message":"df fix for changing header names when -h used","stats":{"files_changed":1,"insertions":47,"deletions":24,"files":["jc/parsers/df.py"]}},{"commit":"8934a7d832b8e1375f0bbdd71031f37ae42f3929","message":"fix dictionary iteration","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["jc/parsers/arp.py","jc/parsers/df.py"]}},{"commit":"669a424fd6508db91bf5cfa2607033fac85f442c","message":"fix process function","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/df.py"]}},{"commit":"591a65c2bda26efcdd570a5f147f98a5be0473d4","message":"process df data","stats":{"files_changed":1,"insertions":46,"deletions":2,"files":["jc/parsers/df.py"]}},{"commit":"a78fb890782a64b20c0c1b60afbd915ebdd88535","message":"add raw and processed output","stats":{"files_changed":1,"insertions":21,"deletions":5,"files":["jc/parsers/arp.py"]}},{"commit":"8979dab2a5371fce3a773004c2309e7483e4cd31","message":"add raw mode","stats":{"files_changed":1,"insertions":25,"deletions":20,"files":["jc/jc.py"]}},{"commit":"0a891f0adda7f2f3233222a0cb5c1f737913ad6f","message":"bump python required version","stats":{"files_changed":2,"insertions":4,"deletions":1,"files":["changelog.txt","setup.py"]}},{"commit":"c220e35b14237c2cfc38aa661413af83ea13e393","message":"cleanup helptext","stats":{"files_changed":1,"insertions":34,"deletions":33,"files":["jc/jc.py"]}},{"commit":"f26c5818bd958c18f4ecc22611b9c058f6213a2c","message":"refactor helptext","stats":{"files_changed":1,"insertions":36,"deletions":33,"files":["jc/jc.py"]}},{"commit":"e712cd3fc4cec1b3137c73e199b2d89fd42fb3bb","message":"netstat2 skeleton","stats":{"files_changed":1,"insertions":138,"deletions":0,"files":["jc/parsers/netstat2.py"]}},{"commit":"0309c9ac67c5f65e0a584fd01e8104ef1990fa7c","message":"setup cleanup","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"9a9eb4120af7696cd3727ac0f0a014663e62b993","message":"setup updates","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["setup.py"]}},{"commit":"d1927456b02e6c2a6e6395cd6ce873b6565ec37d","message":"Merge pull request #6 from kellyjonbrazil/dev"},{"commit":"a3d9213a1e2fd52ba2cbc863d4d01d3ffeebe230","message":"add date","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["changelog.txt"]}},{"commit":"3365c03a1e709835b4bd6bca023afbcb46912982","message":"add tests","stats":{"files_changed":2,"insertions":361,"deletions":0,"files":["tests/test_arp.py","tests/test_dig.py"]}},{"commit":"4f6c87389b313b368d9e833feef55fe6daf7aac9","message":"add dig test files","stats":{"files_changed":7,"insertions":164,"deletions":1,"files":["tests/fixtures/centos-7.7/dig-aaaa.out","tests/fixtures/centos-7.7/dig-x.out","tests/fixtures/centos-7.7/dig.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/dig-aaaa.out","tests/fixtures/ubuntu-18.04/dig-x.out","tests/fixtures/ubuntu-18.04/dig.out"]}},{"commit":"41a2a9adac7d3c29dfa11292f08b0877c69b1a5d","message":"remove unnecessary if statement","stats":{"files_changed":2,"insertions":147,"deletions":3,"files":["README.md","jc/parsers/dig.py"]}},{"commit":"74dae2905b2b0916f0be9fee2a4a343962760ff6","message":"dig parser mvp","stats":{"files_changed":1,"insertions":143,"deletions":30,"files":["jc/parsers/dig.py"]}},{"commit":"d1f64214de00090c3faae0bf544c6c2602ab8c31","message":"add authority parsing","stats":{"files_changed":1,"insertions":19,"deletions":3,"files":["jc/parsers/dig.py"]}},{"commit":"d3e1aa20a815d1d1d6ae82776ae18e3416f0966f","message":"fix when line","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dig.py"]}},{"commit":"72cae9577756c4355211a19f4dd77aaeb6f8e905","message":"dig fixes","stats":{"files_changed":1,"insertions":47,"deletions":9,"files":["jc/parsers/dig.py"]}},{"commit":"219bc8130f55f23e3be3abbe56104aefc2f84e86","message":"dig parser skeleton","stats":{"files_changed":2,"insertions":155,"deletions":0,"files":["jc/jc.py","jc/parsers/dig.py"]}},{"commit":"e8c1a554c040ad8f9c6b518db5fd58e8345d2181","message":"testfile updates","stats":{"files_changed":3,"insertions":7,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-a.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/arp-a.out"]}},{"commit":"087a60bc2adf64bfcedc1f264fef328f993b530c","message":"documentation updates","stats":{"files_changed":2,"insertions":87,"deletions":5,"files":["README.md","jc/parsers/arp.py"]}},{"commit":"9c9823c3b8737b5de08af6278ca74414138e9263","message":"add arp testfiles","stats":{"files_changed":5,"insertions":16,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-v.out","tests/fixtures/centos-7.7/arp.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/arp-v.out","tests/fixtures/ubuntu-18.04/arp.out"]}},{"commit":"cf8d13030bf67261a986c0f80fa20ec0e37a743a","message":"add arp","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["README.md"]}},{"commit":"1eff69c187ca410ffaec7909bc2532553be1d80c","message":"add documentation","stats":{"files_changed":2,"insertions":17,"deletions":1,"files":["changelog.txt","jc/parsers/arp.py"]}},{"commit":"b10fb77d714b73a10a9bf28b45269b3530e01cee","message":"fixup arp parser","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/arp.py"]}},{"commit":"87cee8b230a06fa270b2e36afb56f337da814c80","message":"add arp parser","stats":{"files_changed":2,"insertions":28,"deletions":1,"files":["jc/jc.py","jc/parsers/arp.py"]}},{"commit":"83ab10d6282e26391bbf6bae5d0d29e040b209f0","message":"documentation update","stats":{"files_changed":1,"insertions":44,"deletions":34,"files":["jc/__init__.py"]}},{"commit":"d58a6e1d1dc93155255922b65b0af1325439b033","message":"readme update","stats":{"files_changed":1,"insertions":13,"deletions":15,"files":["README.md"]}},{"commit":"cb46ca5c2776a13c673a44d3e0fbd0661b32af9f","message":"readme update","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]}},{"commit":"5528d979f0b45787d68ab79b962371df9acc527b","message":"version bump","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["changelog.txt","setup.py"]}},{"commit":"ee94a038a61d60db72046d5bcceec58009decb39","message":"add tests","stats":{"files_changed":3,"insertions":131,"deletions":0,"files":["tests/test_uname.py","tests/test_uptime.py","tests/test_w.py"]}},{"commit":"1d658f7a9fc50873f76985b2fb9de92ada9d5547","message":"add tests","stats":{"files_changed":3,"insertions":265,"deletions":0,"files":["tests/test_netstat.py","tests/test_ps.py","tests/test_route.py"]}},{"commit":"392cb44f9b19829a5ceba055e24c7af4d8ac5b3b","message":"initial add of tests and fixtures","stats":{"files_changed":80,"insertions":12667,"deletions":0,"files":["runtests.sh","tests/__init__.py","tests/fixtures/centos-7.7/df-h.out","tests/fixtures/centos-7.7/df.out","tests/fixtures/centos-7.7/env.out","tests/fixtures/centos-7.7/free-h.out","tests/fixtures/centos-7.7/free.out","tests/fixtures/centos-7.7/history.out","tests/fixtures/centos-7.7/ifconfig.out","tests/fixtures/centos-7.7/iptables-filter-nv.out","tests/fixtures/centos-7.7/iptables-filter.out","tests/fixtures/centos-7.7/iptables-mangle.out","tests/fixtures/centos-7.7/iptables-nat.out","tests/fixtures/centos-7.7/iptables-raw.out","tests/fixtures/centos-7.7/jobs.out","tests/fixtures/centos-7.7/ls-al.out","tests/fixtures/centos-7.7/ls-alh.out","tests/fixtures/centos-7.7/ls.out","tests/fixtures/centos-7.7/lsblk.out","tests/fixtures/centos-7.7/lsmod.out","tests/fixtures/centos-7.7/lsof-sudo.out","tests/fixtures/centos-7.7/lsof.out","tests/fixtures/centos-7.7/mount.out","tests/fixtures/centos-7.7/netstat-l.out","tests/fixtures/centos-7.7/netstat-p.out","tests/fixtures/centos-7.7/netstat-sudo-lnp.out","tests/fixtures/centos-7.7/netstat.out","tests/fixtures/centos-7.7/ps-axu.out","tests/fixtures/centos-7.7/ps-ef.out","tests/fixtures/centos-7.7/route-vn.out","tests/fixtures/centos-7.7/route.out","tests/fixtures/centos-7.7/uname-a.out","tests/fixtures/centos-7.7/uptime.out","tests/fixtures/centos-7.7/w.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/df-h.out","tests/fixtures/ubuntu-18.04/df.out","tests/fixtures/ubuntu-18.04/env.out","tests/fixtures/ubuntu-18.04/free-h.out","tests/fixtures/ubuntu-18.04/free.out","tests/fixtures/ubuntu-18.04/history.out","tests/fixtures/ubuntu-18.04/ifconfig.out","tests/fixtures/ubuntu-18.04/iptables-filter-nv.out","tests/fixtures/ubuntu-18.04/iptables-filter.out","tests/fixtures/ubuntu-18.04/iptables-mangle.out","tests/fixtures/ubuntu-18.04/iptables-nat.out","tests/fixtures/ubuntu-18.04/iptables-raw.out","tests/fixtures/ubuntu-18.04/jobs.out","tests/fixtures/ubuntu-18.04/ls-al.out","tests/fixtures/ubuntu-18.04/ls-alh.out","tests/fixtures/ubuntu-18.04/ls.out","tests/fixtures/ubuntu-18.04/lsblk.out","tests/fixtures/ubuntu-18.04/lsmod.out","tests/fixtures/ubuntu-18.04/lsof-sudo.out","tests/fixtures/ubuntu-18.04/lsof.out","tests/fixtures/ubuntu-18.04/mount.out","tests/fixtures/ubuntu-18.04/netstat-l.out","tests/fixtures/ubuntu-18.04/netstat-p.out","tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.out","tests/fixtures/ubuntu-18.04/netstat.out","tests/fixtures/ubuntu-18.04/ps-axu.out","tests/fixtures/ubuntu-18.04/ps-ef.out","tests/fixtures/ubuntu-18.04/route-vn.out","tests/fixtures/ubuntu-18.04/route.out","tests/fixtures/ubuntu-18.04/uname-a.out","tests/fixtures/ubuntu-18.04/uptime.out","tests/fixtures/ubuntu-18.04/w.out","tests/test_df.py","tests/test_env.py","tests/test_free.py","tests/test_history.py","tests/test_ifconfig.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_ls.py","tests/test_lsblk.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py"]}},{"commit":"579bef079cdd7cfa298bc20e052b8eb75b586f5e","message":"move global output variable inside function","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/netstat.py"]}},{"commit":"0691cfcab3f5f91908e06ec906d57e548d4e7a1f","message":"changelog fix","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["changelog.txt"]}},{"commit":"db29c7c186601fd4596d3eb121b37100601af907","message":"documentation fixes","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","jc/parsers/netstat.py"]}},{"commit":"fb1e03637514b5ab02fd4c5df1db8b3cbacdd531","message":"formatting","stats":{"files_changed":1,"insertions":14,"deletions":10,"files":["README.md"]}},{"commit":"c3eaf59836538f4ab4c745e87b70115b4a4c5421","message":"Merge pull request #5 from kellyjonbrazil/dev"},{"commit":"c9849ce0db1f864d33739f8f6f942bf5672bc3b7","message":"changelog update","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]}},{"commit":"d3c89a3092973a7a8765463fff41c2469ed675cd","message":"check for enough info to parse","stats":{"files_changed":1,"insertions":11,"deletions":9,"files":["jc/parsers/uname.py"]}},{"commit":"a3d43f27f7bb0835b3593b7c303fe0ee8d896a58","message":"fix odd uptime text parsing","stats":{"files_changed":1,"insertions":12,"deletions":10,"files":["jc/parsers/uptime.py"]}},{"commit":"f4d9c1b699fa30bd297a40ccf3d5f6e7ba3d4253","message":"fix uptime for minutes and hours long uptime","stats":{"files_changed":1,"insertions":8,"deletions":4,"files":["jc/parsers/uptime.py"]}},{"commit":"de647bba4aff84f7b513cf7f6fec8d3933b0d9da","message":"documentation update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"d7913070315e5e0c89006942250aaf37e9e3e18e","message":"documentation update","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]}},{"commit":"1a4fc204e21f1555ae67c3147322c8d73fab630b","message":"Documentation update","stats":{"files_changed":2,"insertions":10,"deletions":1,"files":["README.md","changelog.txt"]}},{"commit":"0328e14c7c65a330093faa52fe48dae6cb173e42","message":"handle ctrl-c gracefully","stats":{"files_changed":1,"insertions":7,"deletions":0,"files":["jc/jc.py"]}},{"commit":"1acc4d6c29d136e286f82d607c4a3a59e2680b68","message":"fix uptime parsing for short uptimes","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/uptime.py"]}},{"commit":"27245590ce28be933f1a55db4ee6b24783f4b63d","message":"remove integers","stats":{"files_changed":1,"insertions":12,"deletions":20,"files":["jc/parsers/jobs.py"]}},{"commit":"7ca2a4bdb939293e8d7364f8901ad1fd6d3ee808","message":"remove integer values","stats":{"files_changed":5,"insertions":182,"deletions":201,"files":["README.md","changelog.txt","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/netstat.py"]}},{"commit":"5f1ec6734874651bee595961edf1fafaf5acf001","message":"lower() headers","stats":{"files_changed":10,"insertions":473,"deletions":456,"files":["README.md","jc/parsers/df.py","jc/parsers/history.py","jc/parsers/iptables.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/w.py"]}},{"commit":"7e44c4278a75c7223d99200023160e8d77fde54d","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/jobs.py"]}},{"commit":"eda726c4a3864008e2f700374b679ae68a965ef8","message":"documentation update","stats":{"files_changed":1,"insertions":80,"deletions":1,"files":["jc/parsers/ifconfig.py"]}},{"commit":"5f8e70d73054f1a106c0e75eee621bc0cefd1c6b","message":"convert headers to lowercase","stats":{"files_changed":9,"insertions":20,"deletions":22,"files":["changelog.txt","jc/parsers/df.py","jc/parsers/free.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/w.py"]}},{"commit":"25b90546c652cafa9409f02bae1654cb523add88","message":"change 'Use%' to 'Use_percent'","stats":{"files_changed":3,"insertions":14,"deletions":9,"files":["README.md","changelog.txt","jc/parsers/df.py"]}},{"commit":"75c084153845757e22c149ea4ae7909d42ec7118","message":"changelog update","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]}},{"commit":"5b532b9b71fdb9de575da0af9b7989ac537877c4","message":"minor cleanup","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/parsers/lsof.py"]}},{"commit":"8c7b3193d131411f8766508fc27b2a6589bba1f2","message":"documentation change","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/history.py"]}},{"commit":"0897c96ef3c180a1707e8f56c545f59b3a4e0672","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/lsof.py"]}},{"commit":"57d0ab2ed7f444862546da17cbbe8f8ce67bca8c","message":"change LOGIN@ to LOGIN_AT","stats":{"files_changed":2,"insertions":9,"deletions":4,"files":["README.md","jc/parsers/w.py"]}},{"commit":"a07d9a0e4bb76d369b4a9bf0d77c7590dc3c2861","message":"change SIZE/OFF key to SIZE_OFF","stats":{"files_changed":2,"insertions":22,"deletions":13,"files":["README.md","jc/parsers/lsof.py"]}},{"commit":"b3996cb4dfed908d71b292dc0b0136c6675351e6","message":"change MAJ:MIN key to MAJ_MIN","stats":{"files_changed":2,"insertions":14,"deletions":10,"files":["README.md","jc/parsers/lsblk.py"]}},{"commit":"4fa88c1ba38b34f9750625458c465d66f6531bc3","message":"clear out non-ascii chars from data","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/history.py"]}},{"commit":"c8c5564b29588094721949b96bff1e623437835d","message":"change buff/cache key to buff_cache","stats":{"files_changed":2,"insertions":6,"deletions":3,"files":["README.md","jc/parsers/free.py"]}},{"commit":"6d047486d9f577bc04d79af839f5eef9657a9d43","message":"doc fix","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"42bdc058141c4a3ac6f2c8211f9c990590b1b5cf","message":"changelog fix","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]}},{"commit":"85bfb688862e78d5879df6973b88ba8023fa6086","message":"history parser fixes","stats":{"files_changed":2,"insertions":15,"deletions":10,"files":["README.md","jc/parsers/history.py"]}},{"commit":"08ec21556b553cd7e64932d68e01ba8ff3b0f210","message":"formatting","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/w.py"]}},{"commit":"320929bf2595026d32b80b80c3e4878db9cf083f","message":"documentation update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/env.py"]}},{"commit":"41cd489c34502c42602bf64086670ba3b2b8e14b","message":"add history and uptime parsers","stats":{"files_changed":5,"insertions":126,"deletions":0,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/history.py","jc/parsers/uptime.py"]}},{"commit":"f101d881a16e662e883818749d48e96858fba853","message":"add w parser","stats":{"files_changed":4,"insertions":78,"deletions":3,"files":["README.md","jc/jc.py","jc/parsers/w.py","setup.py"]}},{"commit":"fa7466022bb8947c1bbf9f7b01aa4d92300a8992","message":"fix env parser","stats":{"files_changed":3,"insertions":28,"deletions":56,"files":["README.md","changelog.txt","jc/parsers/env.py"]}},{"commit":"ea0cf0acf22585fbf8828841cf50155636eae82f","message":"documentation update","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/lsof.py"]}},{"commit":"e7921b65f5a250c10b08f78939f74968047af430","message":"Merge pull request #4 from kellyjonbrazil/dev"},{"commit":"2cc1b1bd5451f31d71b0e2236bdee0ce2b25b5d7","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]}},{"commit":"58ae976db0165730a75dd7450c698d2727a354ca","message":"documentation update","stats":{"files_changed":3,"insertions":113,"deletions":4,"files":["README.md","jc/parsers/lsmod.py","setup.py"]}},{"commit":"66772392ae78ef394e22070b127416b1d5b01332","message":"add lsmod parser","stats":{"files_changed":3,"insertions":32,"deletions":0,"files":["changelog.txt","jc/jc.py","jc/parsers/lsmod.py"]}},{"commit":"29c47c03a64f9c6b0f44d34be5449396654849b5","message":"documentation update","stats":{"files_changed":3,"insertions":134,"deletions":2,"files":["README.md","changelog.txt","jc/parsers/lsof.py"]}},{"commit":"91eb9a4d13e9254bd5bbde931196904c1947a28e","message":"use None instead of --","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsof.py"]}},{"commit":"a1a3de32ec14d6ef433e334b9694856698c26d41","message":"add lsof parser","stats":{"files_changed":2,"insertions":59,"deletions":0,"files":["jc/jc.py","jc/parsers/lsof.py"]}},{"commit":"9c47fd05bf716c2e18ebf4da41b1a46b972b2518","message":"doco fix","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/jobs.py"]}},{"commit":"649c0aa7c157f87691cc8eeac64c747e81f63594","message":"add documentation","stats":{"files_changed":2,"insertions":76,"deletions":1,"files":["README.md","jc/parsers/jobs.py"]}},{"commit":"3db758764e50666e5ae40de8d89180de2ef5bc28","message":"add jobs parser","stats":{"files_changed":3,"insertions":83,"deletions":0,"files":["changelog.txt","jc/jc.py","jc/parsers/jobs.py"]}},{"commit":"802f1510eb6d621f9c760f28b83f16a4781b8d93","message":"tighten if statements","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"]}},{"commit":"56901788dee154890e70269ad48d4b22bb8c5437","message":"stop blocking when no pipe and enhance help text","stats":{"files_changed":1,"insertions":30,"deletions":19,"files":["jc/jc.py"]}},{"commit":"679ae6d5dc7af26240dc00d8bc6499950f81d457","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"b15c8c352a87a9b3b1dece28af0287ef71ca02d0","message":"simplify state variables","stats":{"files_changed":1,"insertions":14,"deletions":16,"files":["jc/parsers/iptables.py"]}},{"commit":"393e8bc56041a4be01b6c0b2f98895aa330afd04","message":"Merge pull request #3 from kellyjonbrazil/dev"},{"commit":"976fd7d9bd49190a8b28ea5acf5af8979cdec537","message":"readme update","stats":{"files_changed":1,"insertions":27,"deletions":28,"files":["README.md"]}},{"commit":"d8337870cad042cdcc6a4ff3c61f756c3430fa96","message":"update documentation","stats":{"files_changed":1,"insertions":27,"deletions":28,"files":["jc/parsers/df.py"]}},{"commit":"39a8aec77f5134b5b958e3f679910a1c3512e13a","message":"v0.8.1 build","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/parsers/ls.py","setup.py"]}},{"commit":"306d539b6bbfb272c7b955e4847adc3a6b4afa5f","message":"readme update","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]}},{"commit":"f3087b8a8ede88834285bb5d0655fc96341c174c","message":"update readme and formatting","stats":{"files_changed":3,"insertions":635,"deletions":1,"files":["README.md","changelog.txt","jc/parsers/iptables.py"]}},{"commit":"414c2ecef88af2d2c098e6acfb507a5fd7bb8eda","message":"fix iptables parser","stats":{"files_changed":1,"insertions":6,"deletions":10,"files":["jc/parsers/iptables.py"]}},{"commit":"776ef2d1be81180b8b295fbc587446a326f2f7a6","message":"add iptables parser","stats":{"files_changed":2,"insertions":61,"deletions":0,"files":["jc/jc.py","jc/parsers/iptables.py"]}},{"commit":"9ac57469967443b195be09d580beaa76ce0e1095","message":"add uname parser","stats":{"files_changed":4,"insertions":64,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/uname.py"]}},{"commit":"a3e55d97c0fd4397b42e9146afb0ba9558274fdb","message":"add mount parser","stats":{"files_changed":4,"insertions":127,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/mount.py"]}},{"commit":"b15227e7ba5377e5fb6799d1b9e4ed5a11c6d92f","message":"add lsblk parser","stats":{"files_changed":4,"insertions":125,"deletions":0,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/lsblk.py"]}},{"commit":"ec3d1f84ceccb492b4c968938714fafa2e6a6321","message":"fix free parser","stats":{"files_changed":1,"insertions":24,"deletions":2,"files":["jc/parsers/free.py"]}},{"commit":"753d5fd9fe5a8e4b67b1a0ec018a9f811e27f8bf","message":"readme update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"73a0d70c9294ad392792e690a7bfbcc4f51b0a5b","message":"readme update","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]}},{"commit":"c2c189f3e6e900e5f3d35df9a9b9d033448baff6","message":"readme update","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["README.md"]}},{"commit":"36bc55a3109278d663b675a09829200f5474c3d8","message":"fix df","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["README.md"]}},{"commit":"a023001cd350e320ce30f47af214ed7a9bb43185","message":"add df, env, and free parsers","stats":{"files_changed":6,"insertions":226,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/df.py","jc/parsers/env.py","jc/parsers/free.py"]}},{"commit":"e3750b49628794fd4d563013b1f3a7471c27ce68","message":"documentation enhancements","stats":{"files_changed":2,"insertions":83,"deletions":51,"files":["README.md","jc/__init__.py"]}},{"commit":"b5ea08e55bfd22c9da5ba73c124791012df119a0","message":"fix transport protocol","stats":{"files_changed":4,"insertions":20,"deletions":20,"files":["README.md","changelog.txt","jc/parsers/netstat.py","setup.py"]}},{"commit":"8e71b8e3522b9b1af4d869a0854223eb5c300b63","message":"fix jq example","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"4c8610c54ff4b643237d8f0e4c5781c277fc39f5","message":"fixed build","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["changelog.txt","setup.py"]}},{"commit":"c8f886dc8fcdc58f8471d68c3d583200d0ea2f90","message":"fix example","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"]}},{"commit":"4cfc2d22b3f9fd6f0cde8ad206edd7fe260b3071","message":"update changelog","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]}},{"commit":"59238c85408117748e78c5e87157381a828f3782","message":"Merge pull request #2 from kellyjonbrazil/dev"},{"commit":"30080c01659cf611666876b7b063b7b329822352","message":"reorder parsers","stats":{"files_changed":1,"insertions":35,"deletions":35,"files":["README.md"]}},{"commit":"fab80bb3b4a1897da29d818e98e9b80ce45443dd","message":"readme update","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["README.md","setup.py"]}},{"commit":"a9f2df805421754afb8e8adbcac7f2d3bd06c9ef","message":"move parsed_line var lower","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/netstat.py"]}},{"commit":"1d110be6cb25d169ae0dde6532cbcdf05d93d42f","message":"update doco","stats":{"files_changed":3,"insertions":13,"deletions":1,"files":["README.md","changelog.txt","setup.py"]}},{"commit":"be81b5e1ed93eb65e5dbed4f52905439cde86f62","message":"readme update","stats":{"files_changed":1,"insertions":112,"deletions":121,"files":["README.md"]}},{"commit":"5f88f7d8a071306be92cbfb65d6d62c5a68159f3","message":"netstat cleanup","stats":{"files_changed":1,"insertions":110,"deletions":137,"files":["jc/parsers/netstat.py"]}},{"commit":"e57c7cc8ef3102cc41dee4ea5fd33d40ba666491","message":"change output from dict to list","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"]}},{"commit":"b216627c1073ea645029e341b4d3376601e5468e","message":"flatten netstat output","stats":{"files_changed":1,"insertions":19,"deletions":116,"files":["jc/parsers/netstat.py"]}},{"commit":"6e925eab131024b5746d870cbd47e2791acf18bf","message":"clean up arg parsing","stats":{"files_changed":1,"insertions":27,"deletions":18,"files":["jc/jc.py"]}},{"commit":"d54d906c571b4683f01cab2eca63ae5f0725a87b","message":"update readme","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"0040febbf099ed8ab35f6ee343750fcf89f2e739","message":"Merge pull request #1 from kellyjonbrazil/dev"},{"commit":"e416c77bed1267254da972b0f95b7ff1d43fccef","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]}},{"commit":"9181d242aaed5219bb35fde01d672be88949cceb","message":"bump version","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"d6f94c53a4df84fb75554605477e49536a809dc2","message":"fix blank output case in ls","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"]}},{"commit":"a9294f32a00709737d0b82ff434a311e75ad0bed","message":"ls fixes","stats":{"files_changed":3,"insertions":39,"deletions":42,"files":["changelog.txt","jc/parsers/ls.py","setup.py"]}},{"commit":"4d93b38fe47329e3175025878e87f7c963061f98","message":"add route documentation","stats":{"files_changed":2,"insertions":90,"deletions":1,"files":["README.md","jc/parsers/route.py"]}},{"commit":"77b74c550795f96b808e48a9b0bfd1a8af9866f9","message":"add route parser","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]}},{"commit":"51a1d3e6f48cf7084267be4092f0dd3f778dcef3","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"2eba30422b44f648c7356a44cbff7416c6648f19","message":"skip first line","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"]}},{"commit":"43ed09ce5ba53261dfd7ef50a2e187cb524c416c","message":"add route parser","stats":{"files_changed":3,"insertions":25,"deletions":1,"files":["jc/jc.py","jc/parsers/route.py","setup.py"]}},{"commit":"367ab54f94bf7f456377ec9d20f8daf99dbdc1ed","message":"formatting","stats":{"files_changed":3,"insertions":99,"deletions":2,"files":["README.md","changelog.txt","jc/parsers/ps.py"]}},{"commit":"4f552e370e656cc1882a7dae231475a016f8aa14","message":"acknowledgment","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/ps.py"]}},{"commit":"7571139f7980f6e74c29d46971881e82ab0f04bc","message":"bump version","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"8ec1bec31711d2ef487da3e4a29a842d98d77626","message":"add ps parser","stats":{"files_changed":4,"insertions":29,"deletions":7,"files":["changelog.txt","jc/__init__.py","jc/jc.py","jc/parsers/ps.py"]}},{"commit":"c04895407f203aa0a3a080d5242faf8f6889ae41","message":"ubuntu fixes","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["changelog.txt","jc/parsers/netstat.py"]}},{"commit":"cec73d61310591e4890605f61dc5c1bef5808ec4","message":"linting","stats":{"files_changed":4,"insertions":24,"deletions":16,"files":["jc/jc.py","jc/parsers/ifconfig.py","jc/parsers/ls.py","jc/parsers/netstat.py"]}},{"commit":"756c2bc9acd60111281b76085a40778e51ca06cc","message":"add acknowledgments","stats":{"files_changed":1,"insertions":20,"deletions":3,"files":["README.md"]}},{"commit":"084048987c7afc6516f69e68d37d73b2402dc7f2","message":"changelog update","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]}},{"commit":"02d97394dd76a8782e6e7d3f8a85e1aed05e796b","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]}},{"commit":"177f948f9740e3e33449b04b9136a346c9a2c265","message":"version update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"c2b013150ec1f1b1ab7d416f1aa8a62165a5bb95","message":"add changelog","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["changelog.txt"]}},{"commit":"0bec67c29ce5d965271440da41a0c4b4c2a1f0fb","message":"double quotes to single quotes","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/netstat.py"]}},{"commit":"8073d15fe11546a17cacd81409e255bb8aecd602","message":"readme update","stats":{"files_changed":1,"insertions":12,"deletions":4,"files":["README.md"]}},{"commit":"3b74afc39e58f801e75b7105e521c1469d30f991","message":"upload script","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["pypi-upload.sh"]}},{"commit":"ed320cf0f4bb11cee1e69e9dc9176ba109df1b86","message":"change netstat pid field to integer","stats":{"files_changed":3,"insertions":22,"deletions":22,"files":["README.md","jc/parsers/netstat.py","setup.py"]}},{"commit":"021b6924e24e1cf0f971246244b174cd3181c0a6","message":"documentation updates","stats":{"files_changed":2,"insertions":254,"deletions":5,"files":["README.md","jc/parsers/netstat.py"]}},{"commit":"5fb21b077662f1cb172741945ba5036e5a280638","message":"remove debug print statements","stats":{"files_changed":1,"insertions":0,"deletions":8,"files":["jc/parsers/netstat.py"]}},{"commit":"7b8540ae2a60f2400fe672a022ee00d1415a3500","message":"netstat fixes","stats":{"files_changed":1,"insertions":19,"deletions":7,"files":["jc/parsers/netstat.py"]}},{"commit":"a5e039d4c2e07d52a0797833685c562ab285b49b","message":"netstat debugging","stats":{"files_changed":1,"insertions":17,"deletions":7,"files":["jc/parsers/netstat.py"]}},{"commit":"7071f60a302b7aefb8fb312699b0abec25548986","message":"netstat mvp","stats":{"files_changed":1,"insertions":66,"deletions":18,"files":["jc/parsers/netstat.py"]}},{"commit":"0de1dff0253eb46b7336103f62f888940406ccc0","message":"fix ands","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["jc/parsers/netstat.py"]}},{"commit":"b3c52eb1ccf82e899dda62c332c0b217d80eb4c7","message":"add netstat parser","stats":{"files_changed":2,"insertions":112,"deletions":40,"files":["jc/parsers/ifconfig.py","jc/parsers/netstat.py"]}},{"commit":"366c5dbc010869bdb1d3b9d852e10510bd5c266f","message":"fix help message","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/jc.py"]}},{"commit":"a3ee02514b5fbd43a38ddf515a4aad49bb4e161a","message":"fix imports and module names","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/jc.py"]}},{"commit":"46ad1269cb58dc6f064d17eb0b04da62d8fd5fce","message":"packaging fixes","stats":{"files_changed":2,"insertions":4,"deletions":3,"files":["jc/jc.py","setup.py"]}},{"commit":"7234afe568818678585ac423649a0ccce0f45d68","message":"entrypoint fix","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"caf480c63aacb518805d48fba0fd454959d11023","message":"module fix","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"62851b48d5e5cd673e630a28996e1c24cc45aa58","message":"fix modules","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/jc.py","setup.py"]}},{"commit":"46d6da92f0e196e150ab9dd44b1ba290c950905b","message":"fix entry_points","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["jc/{jc => jc.py}","setup.py"]}},{"commit":"e572b2edfa993c5049ef3caeda7a8e4797f0c751","message":"use entry_points instead of scripts","stats":{"files_changed":2,"insertions":37,"deletions":29,"files":["jc/jc","setup.py"]}},{"commit":"72c69e7de59029d623c9819dda6aa8cae91bc419","message":"fix package paths","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/jc"]}},{"commit":"4d1565071e5cf7c38e026e08db8f4d2e79969691","message":"rename jc.py to jc","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["jc/{jc.py => jc}","setup.py"]}},{"commit":"3652e51693d7ba829f4699fd80de20856941d82f","message":"fix requirements","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"49ce9f13e817266659400a8c19f5b078a48589df","message":"setup updates","stats":{"files_changed":3,"insertions":17,"deletions":20,"files":["jc/jc.py","jc/parsers/__init__.py","setup.py"]}},{"commit":"e83170b7ec7ed2123bfde69be263b6034c7afa53","message":"readme update","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["README.md"]}},{"commit":"ffb6eb754a87baad5fb0558e30a5bca1a9b9e0a8","message":"setup fixes","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/parsers/__init__.py","setup.py"]}},{"commit":"2597a18d95d01109d2250487b7550a501edaf77b","message":"readme update","stats":{"files_changed":1,"insertions":82,"deletions":0,"files":["README.md"]}},{"commit":"3e576250b1bfe1c62c556f2fa0425103b0ede1f9","message":"First commit","stats":{"files_changed":11,"insertions":429,"deletions":0,"files":[".gitignore","LICENSE.md","README.md","build-package.sh","jc/__init__.py","jc/jc.py","jc/parsers/__init__.py","jc/parsers/ifconfig.py","jc/parsers/ls.py","jc/parsers/netstat.py","setup.py"]}}] +[{"commit":"096fffdb79807d34b99985b38df0a3df7f6a86c7","message":"use stat examples","stats":{"files_changed":2,"insertions":120,"deletions":36,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":78},{"name":"jc/parsers/git_log.py","lines_changed":78}]}},{"commit":"728d882ed007b3c8b785018874a0eb06e1143b66","message":"add timestamp docs and examples","stats":{"files_changed":2,"insertions":90,"deletions":12,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":51},{"name":"jc/parsers/git_log.py","lines_changed":51}]}},{"commit":"b53e42aca623181aa9bc72194e6eeef1e9a3a237","message":"add calculated timestamp","stats":{"files_changed":5,"insertions":29,"deletions":6,"files":["docs/parsers/git_log.md","docs/utils.md","jc/parsers/git_log.py","jc/utils.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":8},{"name":"docs/utils.md","lines_changed":4},{"name":"jc/parsers/git_log.py","lines_changed":14},{"name":"jc/utils.py","lines_changed":7},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"477329ce5b8f5c2a8e4384ba3f59289fc18c957d","message":"add linefeed to version text","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]}},{"commit":"283dc4efd55030188f17c7e1dfbc5315103494b7","message":"add python interpreter version and path to -v and -a output","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["CHANGELOG","jc/cli.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/cli.py","lines_changed":7}]}},{"commit":"d490bbcaa0291a691b95fa5b61807eebb0b088eb","message":"normalize add/update","stats":{"files_changed":1,"insertions":26,"deletions":26,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":52}]}},{"commit":"f49ddf8e5c5009702155fc62d83c63e3c08c594d","message":"doc update","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":4},{"name":"jc/parsers/git_log.py","lines_changed":4}]}},{"commit":"e1e341652b51b823844e76ef7e68f9373a323435","message":"doc update","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]}},{"commit":"ecda667549137bed5622cca69f2022e7a75ea833","message":"process integers","stats":{"files_changed":2,"insertions":12,"deletions":8,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":2},{"name":"jc/parsers/git_log.py","lines_changed":18}]}},{"commit":"a0d96a188a9f875b2d59625aa97d4f80bba290f2","message":"doc update","stats":{"files_changed":2,"insertions":5,"deletions":1,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"jc/parsers/yaml.py","lines_changed":2}]}},{"commit":"6c0f0cddfe4dd2d5169f7c55416c6725912557f6","message":"fix for datetime objects in yaml files","stats":{"files_changed":2,"insertions":14,"deletions":1,"files":["jc/parsers/yaml.py","tests/test_yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":7},{"name":"tests/test_yaml.py","lines_changed":8}]}},{"commit":"c7173ecd89742c8cf8a7bc4a8021baac5c3cd483","message":"fix mypy issues","stats":{"files_changed":1,"insertions":8,"deletions":6,"files":["jc/parsers/git_log.py"],"file_stats":[{"name":"jc/parsers/git_log.py","lines_changed":14}]}},{"commit":"e98240c905394e3ebd6a45fa31b6d432c150afc4","message":"extend instead of append list","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/git_log.py"],"file_stats":[{"name":"jc/parsers/git_log.py","lines_changed":8}]}},{"commit":"6cb7e25974b11afe57d7d0e8550b3b1a56b14c67","message":"add docs","stats":{"files_changed":3,"insertions":93,"deletions":1,"files":["README.md","docs/parsers/git_log.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/git_log.md","lines_changed":86},{"name":"man/jc.1","lines_changed":7}]}},{"commit":"c37980c05c7fbd4f811ce5fcfcfddaf5f3ab5414","message":"add stat support","stats":{"files_changed":1,"insertions":41,"deletions":7,"files":["jc/parsers/git_log.py"],"file_stats":[{"name":"jc/parsers/git_log.py","lines_changed":48}]}},{"commit":"b5943bd39d776fc4c3b3dea03c0f3d4b6f4bb260","message":"initial docstring","stats":{"files_changed":1,"insertions":23,"deletions":10,"files":["jc/parsers/git_log.py"],"file_stats":[{"name":"jc/parsers/git_log.py","lines_changed":33}]}},{"commit":"49a3a7db3b2b0b292489a41691c9dcbce816cfed","message":"initial git-log parser","stats":{"files_changed":2,"insertions":175,"deletions":0,"files":["jc/lib.py","jc/parsers/git_log.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/git_log.py","lines_changed":174}]}},{"commit":"0c55240e9da30ac4293cc324f1094de2abd3da91","message":"move test templates to fix test failures on some systems","stats":{"files_changed":3,"insertions":1,"deletions":0,"files":["CHANGELOG","tests/{ => templates}/_test_foo.py","tests/{ => templates}/_test_foo_s.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"tests/{ => templates}/_test_foo.py","lines_changed":0},{"name":"tests/{ => templates}/_test_foo_s.py","lines_changed":0}]}},{"commit":"f91988aed5499d25acf7a7e87b2b0d0cd37b62af","message":"iterator -> iterable","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/lib.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":2}]}},{"commit":"3c3ad9fc6adf865b3814a1f03814d0bc17d1c6bd","message":"iterator -> iterable in doc","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]}},{"commit":"291ab79e22a59cb31814e7a5af9dbc9f2ec863e2","message":"fix arch linux command","stats":{"files_changed":3,"insertions":24,"deletions":24,"files":["README.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":24},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":22}]}},{"commit":"e6d5892c146762cd41a966adadb77db333d98ace","message":"Merge pull request #226 from kellyjonbrazil/master"},{"commit":"dcca7a57d558721a61fbba44f07b1d53116827e1","message":"Merge pull request #225 from adrianteri/patch-1"},{"commit":"4ee8a69337b24e199983fe657643abcb0a56a8e6","message":"Update README","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]}},{"commit":"c0414e7db7f5d785b72ad616517f2ec63af151a2","message":"clean up background tasks","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":8}]}},{"commit":"a419175fe6dffe9c5fd20cfbd82ee552bc82a993","message":"enhance parallelization","stats":{"files_changed":2,"insertions":34,"deletions":17,"files":["docgen.sh","updatedocs.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":30},{"name":"updatedocs.sh","lines_changed":21}]}},{"commit":"cd6dead034f3c72aebd22afeb2aea6591ae6d94d","message":"man page update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]}},{"commit":"45342ea9fea29947d8d90260c7665ffbca612cce","message":"parallelize doc gneration","stats":{"files_changed":2,"insertions":16,"deletions":9,"files":["docgen.sh","updatedocs.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":16},{"name":"updatedocs.sh","lines_changed":9}]}},{"commit":"585bf0e159c7839869cf3e458938dcc5fa2ceb81","message":"xrandr update","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]}},{"commit":"3a860b9babe93d455f68ef21436edf7470d375af","message":"add rotation field","stats":{"files_changed":2,"insertions":7,"deletions":5,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":4},{"name":"jc/parsers/xrandr.py","lines_changed":8}]}},{"commit":"269180df77f9ff953b07222e8ae790c7e7a8298e","message":"Merge pull request #223 from anekos/fix/support-rotated-devices"},{"commit":"a1afed8d95e33fbbc618c7b5778a9faeea2f628f","message":"doc update","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["docs/parsers/xrandr.md"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":4}]}},{"commit":"e39f150a216e4e184444dfc88a63e0f303e51631","message":"Support rotated devices","stats":{"files_changed":3,"insertions":9,"deletions":4,"files":["jc/parsers/xrandr.py","tests/fixtures/generic/xrandr_simple.json","tests/test_xrandr.py"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":4},{"name":"tests/fixtures/generic/xrandr_simple.json","lines_changed":1},{"name":"tests/test_xrandr.py","lines_changed":8}]}},{"commit":"e85f11c6fcad5461bae612dd5a945c20d300e59a","message":"doc formatting","stats":{"files_changed":4,"insertions":12,"deletions":12,"files":["docs/parsers/ini.md","docs/parsers/kv.md","jc/parsers/ini.py","jc/parsers/kv.py"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":6},{"name":"docs/parsers/kv.md","lines_changed":6},{"name":"jc/parsers/ini.py","lines_changed":6},{"name":"jc/parsers/kv.py","lines_changed":6}]}},{"commit":"49a9d7b07e89696f2e022655d7256b7d6ad4bf7b","message":"doc update","stats":{"files_changed":3,"insertions":12,"deletions":8,"files":["docs/parsers/ini.md","docs/parsers/kv.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":8},{"name":"docs/parsers/kv.md","lines_changed":10},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"a2ef9c429e4bb9f70d033511dce77ccdb9013971","message":"allow duplicate keys","stats":{"files_changed":4,"insertions":38,"deletions":8,"files":["jc/parsers/ini.py","jc/parsers/kv.py","tests/test_ini.py","tests/test_kv.py"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":12},{"name":"jc/parsers/kv.py","lines_changed":10},{"name":"tests/test_ini.py","lines_changed":12},{"name":"tests/test_kv.py","lines_changed":12}]}},{"commit":"d5e9074f1c8facb3f15b8c41a008917178626978","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/lib.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/lib.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"774699f085d97f22ae2dab0cf64d72aa1e1709f7","message":"Merge pull request #220 from kellyjonbrazil/master"},{"commit":"7138eef3d137bc64286d4af453d8d4e7b3f4408d","message":"fix newline chars in doc","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"docs/parsers/asciitable_m.md","lines_changed":6},{"name":"jc/parsers/asciitable_m.py","lines_changed":6}]}},{"commit":"fad5e544aa9e57d31473190e196f59c616901207","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":2},{"name":"jc/parsers/asciitable.py","lines_changed":2}]}},{"commit":"64757e2cf55448bccfbbd60d31930ab3f59af21b","message":"doc formatting","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":12},{"name":"jc/parsers/asciitable.py","lines_changed":12}]}},{"commit":"e05be3f08beae1b600fc55a3a7b4e28163e15bc0","message":"Merge pull request #213 from kellyjonbrazil/dev"},{"commit":"789f0735dfd63e728b8716d97cf0c6045ede5011","message":"doc update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]}},{"commit":"34bc7753174be28d6c1a00dadc662bc374e554c1","message":"doc update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]}},{"commit":"38de059a1bc285c8681086d9fb43d0d23ac01d49","message":"doc update","stats":{"files_changed":3,"insertions":9,"deletions":3,"files":["docs/parsers/asciitable.md","docs/parsers/universal.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":6},{"name":"docs/parsers/universal.md","lines_changed":4},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"304ae6268f4dff6e6f901628e7ff89db1d6e0767","message":"minor optimization by changing the expression order","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":12}]}},{"commit":"978caf45221188a29c0e67147804f20f317c066d","message":"minor optimization by reordering expressions","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["jc/parsers/asciitable.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":26}]}},{"commit":"17df5bfcfc25f226a2976aa7ab8a80e4aaa915c3","message":"cache _is_separator function","stats":{"files_changed":2,"insertions":12,"deletions":2,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":10},{"name":"jc/parsers/asciitable_m.py","lines_changed":4}]}},{"commit":"5e6a5068cff71b3b30525d0a12868bdf6551456c","message":"allow iterables for simple table parser","stats":{"files_changed":1,"insertions":6,"deletions":2,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":8}]}},{"commit":"619de68a61be0117e635032347dde417d77c748c","message":"formatting","stats":{"files_changed":2,"insertions":8,"deletions":9,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":7},{"name":"jc/parsers/asciitable_m.py","lines_changed":10}]}},{"commit":"6748c3cc91f90bddea3d07b8b30a049ee55eaf35","message":"remove lines from corner detection and add rounded corners","stats":{"files_changed":2,"insertions":65,"deletions":61,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":52},{"name":"jc/parsers/asciitable_m.py","lines_changed":74}]}},{"commit":"0a462978b731770d1290187a502706c2322f5f91","message":"fix for special characters in headers","stats":{"files_changed":4,"insertions":101,"deletions":3,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py","tests/test_asciitable.py","tests/test_asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":25},{"name":"jc/parsers/asciitable_m.py","lines_changed":8},{"name":"tests/test_asciitable.py","lines_changed":43},{"name":"tests/test_asciitable_m.py","lines_changed":28}]}},{"commit":"e66a82ff49b40a674f9ef373a12d59fc71bfa730","message":"doc update","stats":{"files_changed":3,"insertions":6,"deletions":5,"files":["CHANGELOG","jc/parsers/asciitable_m.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":5},{"name":"jc/parsers/asciitable_m.py","lines_changed":4},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"f3aa797d96c8e2cef2124dbb2f49d1fadaee3fa2","message":"add more pretty table separators","stats":{"files_changed":2,"insertions":69,"deletions":9,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":43},{"name":"jc/parsers/asciitable_m.py","lines_changed":35}]}},{"commit":"e5b478218c4ba3781afd085056dba888c3f6ae02","message":"add quiet=True to parse tests","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_xrandr.py"],"file_stats":[{"name":"tests/test_xrandr.py","lines_changed":6}]}},{"commit":"35e0e9c32afbc5450c661bcb3a23904d135358ad","message":"remove print statement","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":1}]}},{"commit":"17c3c2f029a0a47eb02d681567619d471b99949c","message":"add bold bar seperator and ANSI code tests","stats":{"files_changed":4,"insertions":58,"deletions":2,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py","tests/test_asciitable.py","tests/test_asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":3},{"name":"jc/parsers/asciitable_m.py","lines_changed":2},{"name":"tests/test_asciitable.py","lines_changed":31},{"name":"tests/test_asciitable_m.py","lines_changed":24}]}},{"commit":"cf83e6398b3314b233581eb313510872177de20a","message":"add fancy separators","stats":{"files_changed":2,"insertions":7,"deletions":0,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":4},{"name":"jc/parsers/asciitable_m.py","lines_changed":3}]}},{"commit":"94e061b881e2ed28d2b462ad038e5ba77182b6c4","message":"add asciitable parser tests","stats":{"files_changed":1,"insertions":275,"deletions":0,"files":["tests/test_asciitable.py"],"file_stats":[{"name":"tests/test_asciitable.py","lines_changed":275}]}},{"commit":"720480e39ce3cc2079d7f4f5bcff2725081fec34","message":"doc update","stats":{"files_changed":4,"insertions":10,"deletions":2,"files":["docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":3},{"name":"docs/parsers/asciitable_m.md","lines_changed":3},{"name":"jc/parsers/asciitable.py","lines_changed":3},{"name":"jc/parsers/asciitable_m.py","lines_changed":3}]}},{"commit":"82a63fe15922456853aa4597aa10a5a02b20bdef","message":"doc update","stats":{"files_changed":2,"insertions":6,"deletions":8,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":7},{"name":"jc/parsers/asciitable.py","lines_changed":7}]}},{"commit":"9c1ec9940e68ce9848da20e81b8c0b7e35a215df","message":"doc update","stats":{"files_changed":4,"insertions":82,"deletions":14,"files":["docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":44},{"name":"docs/parsers/asciitable_m.md","lines_changed":4},{"name":"jc/parsers/asciitable.py","lines_changed":44},{"name":"jc/parsers/asciitable_m.py","lines_changed":4}]}},{"commit":"f23f19da453a0f7bcf70e417a10f87e27571aa43","message":"doc update","stats":{"files_changed":5,"insertions":122,"deletions":9,"files":["README.md","docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/asciitable.md","lines_changed":97},{"name":"docs/parsers/asciitable_m.md","lines_changed":4},{"name":"jc/parsers/asciitable_m.py","lines_changed":24},{"name":"man/jc.1","lines_changed":5}]}},{"commit":"aea2e1b0a9c6bb2a02a6e73889bb04e8f4f22588","message":"fix tests so blank strings are now None","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["tests/test_asciitable_m.py"],"file_stats":[{"name":"tests/test_asciitable_m.py","lines_changed":48}]}},{"commit":"7d95d679bf4093ea77f30a1be55384b6dbf08341","message":"add asciitable parser","stats":{"files_changed":2,"insertions":212,"deletions":1,"files":["jc/lib.py","jc/parsers/asciitable.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2},{"name":"jc/parsers/asciitable.py","lines_changed":211}]}},{"commit":"b3b140066b74ee31dd1c460502caf2f26df321b6","message":"doc update","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"docs/parsers/asciitable_m.md","lines_changed":4},{"name":"jc/parsers/asciitable_m.py","lines_changed":4}]}},{"commit":"b204c423c1b947c17cb251a5dd3c444cd71dd2c0","message":"doc update","stats":{"files_changed":4,"insertions":193,"deletions":15,"files":["README.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/asciitable_m.md","lines_changed":122},{"name":"jc/parsers/asciitable_m.py","lines_changed":78},{"name":"man/jc.1","lines_changed":7}]}},{"commit":"d451c309bb0d8889dc09a698212bf01c2154a582","message":"change multiple or statements to any()","stats":{"files_changed":1,"insertions":11,"deletions":8,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":19}]}},{"commit":"01d53da68ed04b736934851137c59216ad02d8c8","message":"remove debug print","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":1}]}},{"commit":"53dd05e52c329a15c30a756a36a165ac59ef8a14","message":"fix rstrip and add tests","stats":{"files_changed":2,"insertions":29,"deletions":1,"files":["jc/parsers/asciitable_m.py","tests/test_asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":3},{"name":"tests/test_asciitable_m.py","lines_changed":27}]}},{"commit":"ab564f5be8282f1c7ee2d602bcef398fdfd4570f","message":"add tests","stats":{"files_changed":2,"insertions":237,"deletions":1,"files":["jc/parsers/asciitable_m.py","tests/test_asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":16},{"name":"tests/test_asciitable_m.py","lines_changed":222}]}},{"commit":"00c39450f9878527b60545ad61c04cfb98f418dc","message":"enhance type annotation","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":2}]}},{"commit":"f611d08b50219f4e573c1d1f0beae27583e76432","message":"formatting","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":5}]}},{"commit":"90e79b7df3a4d5b37835fdf1c2debc1bad0a40b9","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":2}]}},{"commit":"4eb2d725d5fe6f2cc7935c7dc891912cf7b8e940","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":2}]}},{"commit":"51ae5ebcac7263ef2571c11975b275eff352bbc5","message":"new streamlined parser","stats":{"files_changed":1,"insertions":148,"deletions":175,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":323}]}},{"commit":"9ecbdb09162da4d563799aa93d422db85b2c324b","message":"use generator instead of iterable in function return annotation","stats":{"files_changed":8,"insertions":35,"deletions":30,"files":["docs/parsers/mpstat_s.md","docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","docs/parsers/universal.md","jc/parsers/foo_s.py","jc/parsers/mpstat_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"docs/parsers/mpstat_s.md","lines_changed":10},{"name":"docs/parsers/pidstat_s.md","lines_changed":10},{"name":"docs/parsers/rsync_s.md","lines_changed":10},{"name":"docs/parsers/universal.md","lines_changed":19},{"name":"jc/parsers/foo_s.py","lines_changed":4},{"name":"jc/parsers/mpstat_s.py","lines_changed":4},{"name":"jc/parsers/pidstat_s.py","lines_changed":4},{"name":"jc/parsers/rsync_s.py","lines_changed":4}]}},{"commit":"b3a2886fd0af0cd06890f37f1edfc6890bb83e6c","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["docs/lib.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":3}]}},{"commit":"ceacec0f462bd7c2d9e92ddb9029ccd71aef481c","message":"remove errant os sep import","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":1}]}},{"commit":"ff0f794b01395ed9b65fac75a6b07f0772d45a2d","message":"working","stats":{"files_changed":1,"insertions":32,"deletions":10,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":42}]}},{"commit":"70fafbf3f80f35c5db2c306978b2a488adad40bb","message":"remove asciitable so tests pass for now","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]}},{"commit":"5a248a8fc58952a5eab3d4aac025d7422ba82d08","message":"add multiline asciitable parser","stats":{"files_changed":1,"insertions":344,"deletions":0,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":344}]}},{"commit":"4a3a4e10df8a552a4db3510640695f02b166dc40","message":"add asciitable and asciitable-m parsers","stats":{"files_changed":1,"insertions":3,"deletions":4,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":7}]}},{"commit":"c27bd5ff39f21c6377e661d4d7de1200d2fdd72f","message":"pad lines in sparse_table_parse and use str.isspace()","stats":{"files_changed":1,"insertions":23,"deletions":16,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":39}]}},{"commit":"f804c9627fb71341429ca80aec2887e23e0277db","message":"copy input list so we don't mutate the caller's data","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":1}]}},{"commit":"3ab25d02f9dc248706aa1105e1766b2a84bc55a3","message":"use _parser_is_streaming from lib","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"9e80fd2b97b9bfe38fdaa6acdf2e8ed26d34b49d","message":"fallback if info and doc items don't exist","stats":{"files_changed":2,"insertions":15,"deletions":11,"files":["jc/cli.py","jc/lib.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":21},{"name":"jc/lib.py","lines_changed":5}]}},{"commit":"ff9527a098a94c996641fb3fe2f905c8ae5e3063","message":"import cleanup and use all_parser_info in parsers_text","stats":{"files_changed":1,"insertions":9,"deletions":13,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":22}]}},{"commit":"7dac2f8dc3baf619105e3c6ca4d3e45300b86287","message":"doc update","stats":{"files_changed":3,"insertions":23,"deletions":9,"files":["docs/lib.md","docs/readme.md","man/jc.1"],"file_stats":[{"name":"docs/lib.md","lines_changed":23},{"name":"docs/readme.md","lines_changed":7},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"32e4d55e86c3e7d94488ec69f13a4f6400c4cef3","message":"use parser_info for help_doc","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":10}]}},{"commit":"f9a9062147256d0949457cc7fde838f87202524d","message":"add documentation argument to parser_info and all_parser_info","stats":{"files_changed":3,"insertions":27,"deletions":10,"files":["CHANGELOG","jc/__init__.py","jc/lib.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/__init__.py","lines_changed":7},{"name":"jc/lib.py","lines_changed":29}]}},{"commit":"89e5919796f7da585285901dca461aae21336415","message":"add -A to second example","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/mpstat_s.md","jc/parsers/mpstat_s.py"],"file_stats":[{"name":"docs/parsers/mpstat_s.md","lines_changed":2},{"name":"jc/parsers/mpstat_s.py","lines_changed":2}]}},{"commit":"e5f5b2591d8ac3abeb9571688c7fb8de34d647f4","message":"changelog update","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]}},{"commit":"77c667eec045daff5cbd062fe9d6e83f237727e5","message":"ubuntu fixes","stats":{"files_changed":9,"insertions":67,"deletions":6,"files":["docs/parsers/mpstat.md","docs/parsers/mpstat_s.md","jc/parsers/mpstat.py","jc/parsers/mpstat_s.py","tests/fixtures/ubuntu-18.04/mpstat-A-streaming.json","tests/fixtures/ubuntu-18.04/mpstat-A.json","tests/fixtures/ubuntu-18.04/mpstat-A.out","tests/test_mpstat.py","tests/test_mpstat_s.py"],"file_stats":[{"name":"docs/parsers/mpstat.md","lines_changed":2},{"name":"docs/parsers/mpstat_s.md","lines_changed":2},{"name":"jc/parsers/mpstat.py","lines_changed":12},{"name":"jc/parsers/mpstat_s.py","lines_changed":12},{"name":"tests/fixtures/ubuntu-18.04/mpstat-A-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/mpstat-A.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/mpstat-A.out","lines_changed":19},{"name":"tests/test_mpstat.py","lines_changed":12},{"name":"tests/test_mpstat_s.py","lines_changed":12}]}},{"commit":"b257ce8c2fe6825fe435b4d04b4184091030db10","message":"add mpstat_s tests","stats":{"files_changed":4,"insertions":65,"deletions":0,"files":[".../centos-7.7/mpstat-A-2-5-streaming.json","tests/fixtures/centos-7.7/mpstat-A-streaming.json","tests/fixtures/centos-7.7/mpstat-streaming.json","tests/test_mpstat_s.py"],"file_stats":[{"name":".../centos-7.7/mpstat-A-2-5-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat-A-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat-streaming.json","lines_changed":1},{"name":"tests/test_mpstat_s.py","lines_changed":62}]}},{"commit":"c693c868cacbcd81f44fd383719723dd7a137c87","message":"add mpstat streaming parser","stats":{"files_changed":7,"insertions":352,"deletions":0,"files":["README.md","docs/parsers/mpstat.md","docs/parsers/mpstat_s.md","jc/lib.py","jc/parsers/mpstat.py","jc/parsers/mpstat_s.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/mpstat.md","lines_changed":2},{"name":"docs/parsers/mpstat_s.md","lines_changed":130},{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/mpstat.py","lines_changed":2},{"name":"jc/parsers/mpstat_s.py","lines_changed":211},{"name":"man/jc.1","lines_changed":5}]}},{"commit":"6f98b27a05d6e1f7571a97316b193f096521b959","message":"add mpstat tests","stats":{"files_changed":7,"insertions":168,"deletions":0,"files":["tests/fixtures/centos-7.7/mpstat-A-2-5.json","tests/fixtures/centos-7.7/mpstat-A-2-5.out","tests/fixtures/centos-7.7/mpstat-A.json","tests/fixtures/centos-7.7/mpstat-A.out","tests/fixtures/centos-7.7/mpstat.json","tests/fixtures/centos-7.7/mpstat.out","tests/test_mpstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/mpstat-A-2-5.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat-A-2-5.out","lines_changed":86},{"name":"tests/fixtures/centos-7.7/mpstat-A.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat-A.out","lines_changed":15},{"name":"tests/fixtures/centos-7.7/mpstat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat.out","lines_changed":5},{"name":"tests/test_mpstat.py","lines_changed":59}]}},{"commit":"d7efd25d88a8f489564ce48223845a16e4ab1cc7","message":"add mpstat to docs","stats":{"files_changed":4,"insertions":207,"deletions":1,"files":["EXAMPLES.md","README.md","docs/parsers/mpstat.md","man/jc.1"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":64},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/mpstat.md","lines_changed":136},{"name":"man/jc.1","lines_changed":7}]}},{"commit":"2cddb1f0bb497be0be071cdcb56bf49d2dafc920","message":"working mpstat","stats":{"files_changed":1,"insertions":94,"deletions":15,"files":["jc/parsers/mpstat.py"],"file_stats":[{"name":"jc/parsers/mpstat.py","lines_changed":109}]}},{"commit":"ae1c331595dd857d8ae7f8cf93daee1b26be2c3e","message":"initial working version","stats":{"files_changed":1,"insertions":30,"deletions":5,"files":["jc/parsers/mpstat.py"],"file_stats":[{"name":"jc/parsers/mpstat.py","lines_changed":35}]}},{"commit":"bc97052ed4ee3bf3f25127968139f2e89a659fe3","message":"initial add mpstat parser","stats":{"files_changed":3,"insertions":109,"deletions":0,"files":["CHANGELOG","jc/lib.py","jc/parsers/mpstat.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/mpstat.py","lines_changed":107}]}},{"commit":"6c3e0e2aa0e8cc375d9f7473930b18957d33f1aa","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]}},{"commit":"dd052e01469e9e3328f7326d3591365a8e7322eb","message":"add underscores to column examples","stats":{"files_changed":2,"insertions":26,"deletions":24,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":25},{"name":"jc/parsers/universal.py","lines_changed":25}]}},{"commit":"54e8f58145f6c4332fbd375d112259ea7abb2d72","message":"add table result examples","stats":{"files_changed":2,"insertions":28,"deletions":2,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":15},{"name":"jc/parsers/universal.py","lines_changed":15}]}},{"commit":"def7aa5764e69cd0cf2c5b70aa62c62023f76c9c","message":"formatting","stats":{"files_changed":2,"insertions":16,"deletions":16,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":16},{"name":"jc/parsers/universal.py","lines_changed":16}]}},{"commit":"6986c74f6dceca907ea2e469a332deeb093a122c","message":"remove direct parser module example from doc","stats":{"files_changed":169,"insertions":34,"deletions":837,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/pidstat.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/nmcli.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/pidstat.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/xrandr.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":5},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iostat.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jar_manifest.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/nmcli.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/pidstat.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/rsync.md","lines_changed":5},{"name":"docs/parsers/sfdisk.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/systeminfo.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"docs/parsers/ufw.md","lines_changed":5},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/universal.md","lines_changed":18},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/vmstat.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/xrandr.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5},{"name":"docs/parsers/zipinfo.md","lines_changed":5},{"name":"jc/parsers/acpi.py","lines_changed":5},{"name":"jc/parsers/airport.py","lines_changed":5},{"name":"jc/parsers/airport_s.py","lines_changed":5},{"name":"jc/parsers/arp.py","lines_changed":5},{"name":"jc/parsers/blkid.py","lines_changed":5},{"name":"jc/parsers/cksum.py","lines_changed":5},{"name":"jc/parsers/crontab.py","lines_changed":5},{"name":"jc/parsers/crontab_u.py","lines_changed":5},{"name":"jc/parsers/csv.py","lines_changed":5},{"name":"jc/parsers/date.py","lines_changed":5},{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":5},{"name":"jc/parsers/dir.py","lines_changed":5},{"name":"jc/parsers/dmidecode.py","lines_changed":5},{"name":"jc/parsers/dpkg_l.py","lines_changed":5},{"name":"jc/parsers/du.py","lines_changed":5},{"name":"jc/parsers/env.py","lines_changed":5},{"name":"jc/parsers/file.py","lines_changed":5},{"name":"jc/parsers/finger.py","lines_changed":5},{"name":"jc/parsers/foo.py","lines_changed":5},{"name":"jc/parsers/free.py","lines_changed":5},{"name":"jc/parsers/fstab.py","lines_changed":5},{"name":"jc/parsers/group.py","lines_changed":5},{"name":"jc/parsers/gshadow.py","lines_changed":5},{"name":"jc/parsers/hash.py","lines_changed":5},{"name":"jc/parsers/hashsum.py","lines_changed":5},{"name":"jc/parsers/hciconfig.py","lines_changed":5},{"name":"jc/parsers/history.py","lines_changed":5},{"name":"jc/parsers/hosts.py","lines_changed":5},{"name":"jc/parsers/id.py","lines_changed":5},{"name":"jc/parsers/ifconfig.py","lines_changed":5},{"name":"jc/parsers/ini.py","lines_changed":5},{"name":"jc/parsers/iostat.py","lines_changed":5},{"name":"jc/parsers/iptables.py","lines_changed":5},{"name":"jc/parsers/iw_scan.py","lines_changed":5},{"name":"jc/parsers/jar_manifest.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":5},{"name":"jc/parsers/kv.py","lines_changed":5},{"name":"jc/parsers/last.py","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":5},{"name":"jc/parsers/lsblk.py","lines_changed":5},{"name":"jc/parsers/lsmod.py","lines_changed":5},{"name":"jc/parsers/lsof.py","lines_changed":5},{"name":"jc/parsers/lsusb.py","lines_changed":5},{"name":"jc/parsers/mount.py","lines_changed":5},{"name":"jc/parsers/netstat.py","lines_changed":5},{"name":"jc/parsers/nmcli.py","lines_changed":5},{"name":"jc/parsers/ntpq.py","lines_changed":5},{"name":"jc/parsers/passwd.py","lines_changed":5},{"name":"jc/parsers/pidstat.py","lines_changed":5},{"name":"jc/parsers/ping.py","lines_changed":5},{"name":"jc/parsers/pip_list.py","lines_changed":5},{"name":"jc/parsers/pip_show.py","lines_changed":5},{"name":"jc/parsers/ps.py","lines_changed":5},{"name":"jc/parsers/route.py","lines_changed":5},{"name":"jc/parsers/rpm_qi.py","lines_changed":5},{"name":"jc/parsers/rsync.py","lines_changed":5},{"name":"jc/parsers/sfdisk.py","lines_changed":5},{"name":"jc/parsers/shadow.py","lines_changed":5},{"name":"jc/parsers/ss.py","lines_changed":5},{"name":"jc/parsers/stat.py","lines_changed":5},{"name":"jc/parsers/sysctl.py","lines_changed":5},{"name":"jc/parsers/systemctl.py","lines_changed":5},{"name":"jc/parsers/systemctl_lj.py","lines_changed":5},{"name":"jc/parsers/systemctl_ls.py","lines_changed":5},{"name":"jc/parsers/systemctl_luf.py","lines_changed":5},{"name":"jc/parsers/systeminfo.py","lines_changed":5},{"name":"jc/parsers/time.py","lines_changed":5},{"name":"jc/parsers/timedatectl.py","lines_changed":5},{"name":"jc/parsers/tracepath.py","lines_changed":5},{"name":"jc/parsers/traceroute.py","lines_changed":5},{"name":"jc/parsers/ufw.py","lines_changed":5},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":5},{"name":"jc/parsers/uname.py","lines_changed":5},{"name":"jc/parsers/universal.py","lines_changed":18},{"name":"jc/parsers/upower.py","lines_changed":5},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/vmstat.py","lines_changed":5},{"name":"jc/parsers/w.py","lines_changed":5},{"name":"jc/parsers/wc.py","lines_changed":5},{"name":"jc/parsers/who.py","lines_changed":5},{"name":"jc/parsers/xml.py","lines_changed":5},{"name":"jc/parsers/xrandr.py","lines_changed":5},{"name":"jc/parsers/yaml.py","lines_changed":5},{"name":"jc/parsers/zipinfo.py","lines_changed":5}]}},{"commit":"b784db404d0569a4c630eb124b37b0b1d0846453","message":"streaming doc formatting update","stats":{"files_changed":17,"insertions":87,"deletions":166,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/pidstat_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/pidstat_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":13},{"name":"docs/parsers/iostat_s.md","lines_changed":20},{"name":"docs/parsers/ls_s.md","lines_changed":16},{"name":"docs/parsers/pidstat_s.md","lines_changed":9},{"name":"docs/parsers/ping_s.md","lines_changed":13},{"name":"docs/parsers/rsync_s.md","lines_changed":13},{"name":"docs/parsers/stat_s.md","lines_changed":13},{"name":"docs/parsers/vmstat_s.md","lines_changed":23},{"name":"jc/parsers/csv_s.py","lines_changed":13},{"name":"jc/parsers/foo_s.py","lines_changed":13},{"name":"jc/parsers/iostat_s.py","lines_changed":20},{"name":"jc/parsers/ls_s.py","lines_changed":16},{"name":"jc/parsers/pidstat_s.py","lines_changed":9},{"name":"jc/parsers/ping_s.py","lines_changed":13},{"name":"jc/parsers/rsync_s.py","lines_changed":13},{"name":"jc/parsers/stat_s.py","lines_changed":13},{"name":"jc/parsers/vmstat_s.py","lines_changed":23}]}},{"commit":"8aee4517bb4c2eebdd9873f7eb0827cd33b85519","message":"doc formatting","stats":{"files_changed":2,"insertions":12,"deletions":26,"files":["docs/parsers/pidstat_s.md","jc/parsers/pidstat_s.py"],"file_stats":[{"name":"docs/parsers/pidstat_s.md","lines_changed":19},{"name":"jc/parsers/pidstat_s.py","lines_changed":19}]}},{"commit":"a5fb8fbf94b3b80bef82f078ad6582260b13e374","message":"streaming doc update","stats":{"files_changed":17,"insertions":164,"deletions":148,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/pidstat_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/pidstat_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":12},{"name":"docs/parsers/iostat_s.md","lines_changed":14},{"name":"docs/parsers/ls_s.md","lines_changed":14},{"name":"docs/parsers/pidstat_s.md","lines_changed":53},{"name":"docs/parsers/ping_s.md","lines_changed":14},{"name":"docs/parsers/rsync_s.md","lines_changed":14},{"name":"docs/parsers/stat_s.md","lines_changed":14},{"name":"docs/parsers/vmstat_s.md","lines_changed":14},{"name":"jc/parsers/csv_s.py","lines_changed":12},{"name":"jc/parsers/foo_s.py","lines_changed":14},{"name":"jc/parsers/iostat_s.py","lines_changed":14},{"name":"jc/parsers/ls_s.py","lines_changed":14},{"name":"jc/parsers/pidstat_s.py","lines_changed":53},{"name":"jc/parsers/ping_s.py","lines_changed":14},{"name":"jc/parsers/rsync_s.py","lines_changed":14},{"name":"jc/parsers/stat_s.py","lines_changed":14},{"name":"jc/parsers/vmstat_s.py","lines_changed":14}]}},{"commit":"b9365e2ac28c3eacf53bc101857f7f1d7286ec20","message":"add pidstat-s tests","stats":{"files_changed":4,"insertions":74,"deletions":0,"files":[".../centos-7.7/pidstat-hdlrsuw-2-5-streaming.json",".../centos-7.7/pidstat-hdlrsuw-streaming.json",".../fixtures/centos-7.7/pidstat-hl-streaming.json","tests/test_pidstat_s.py"],"file_stats":[{"name":".../centos-7.7/pidstat-hdlrsuw-2-5-streaming.json","lines_changed":1},{"name":".../centos-7.7/pidstat-hdlrsuw-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/pidstat-hl-streaming.json","lines_changed":1},{"name":"tests/test_pidstat_s.py","lines_changed":71}]}},{"commit":"696338c1a3d462afbe677a6f2ebe08d06ef4046a","message":"add streaming test template","stats":{"files_changed":1,"insertions":38,"deletions":0,"files":["tests/_test_foo_s.py"],"file_stats":[{"name":"tests/_test_foo_s.py","lines_changed":38}]}},{"commit":"4f0616190bb842411353d65650b78a65d8cbdc28","message":"doc update","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/pidstat_s.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"3278cb0de301ee542b1fe8245a6c359193373b6b","message":"add type hints","stats":{"files_changed":2,"insertions":15,"deletions":10,"files":["docs/parsers/arp.md","jc/parsers/arp.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":23}]}},{"commit":"4fc04256a567c502a88ac8a1bd189746387c93f1","message":"rollback noReturn to tuple","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["jc/parsers/foo_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":4},{"name":"jc/parsers/pidstat_s.py","lines_changed":4},{"name":"jc/parsers/rsync_s.py","lines_changed":4}]}},{"commit":"e4ae0fea63c0386c1b3239607fd6a58738d23633","message":"fix type annotation","stats":{"files_changed":5,"insertions":8,"deletions":8,"files":["docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","jc/parsers/foo_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"docs/parsers/pidstat_s.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":4},{"name":"jc/parsers/pidstat_s.py","lines_changed":4},{"name":"jc/parsers/rsync_s.py","lines_changed":4}]}},{"commit":"d3727ea0906d6167aa48c340519242b010469d98","message":"doc update","stats":{"files_changed":4,"insertions":99,"deletions":1,"files":["CHANGELOG","README.md","docs/parsers/pidstat_s.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/pidstat_s.md","lines_changed":91},{"name":"man/jc.1","lines_changed":5}]}},{"commit":"0d13909cf63d14008607c5640d074ab4073115e5","message":"add pidstat-s parser","stats":{"files_changed":2,"insertions":168,"deletions":0,"files":["jc/lib.py","jc/parsers/pidstat_s.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/pidstat_s.py","lines_changed":167}]}},{"commit":"c52ca20e285895d2afb685a2a5ca275de7901033","message":"fix comment","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/pidstat.py"],"file_stats":[{"name":"jc/parsers/pidstat.py","lines_changed":2}]}},{"commit":"21f27f26c81c75234221a5193c7d3903323e2032","message":"add pidstat tests","stats":{"files_changed":4,"insertions":72,"deletions":0,"files":["tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.json","tests/fixtures/centos-7.7/pidstat-hdlrsuw.json","tests/fixtures/centos-7.7/pidstat-hl.json","tests/test_pidstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/pidstat-hdlrsuw.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/pidstat-hl.json","lines_changed":1},{"name":"tests/test_pidstat.py","lines_changed":69}]}},{"commit":"5e7a87f39782d12070a895440ff541800df91b9c","message":"add test template","stats":{"files_changed":1,"insertions":35,"deletions":0,"files":["tests/_test_foo.py"],"file_stats":[{"name":"tests/_test_foo.py","lines_changed":35}]}},{"commit":"845d763829acd03fff1d2fad6e9691f04bd1a2aa","message":"format docs to fit 80 columns","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/pidstat.md","jc/parsers/pidstat.py"],"file_stats":[{"name":"docs/parsers/pidstat.md","lines_changed":4},{"name":"jc/parsers/pidstat.py","lines_changed":4}]}},{"commit":"f5c7d52ec72f5ff4b77d5ac4491f330575b9f10f","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":10,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":6},{"name":"templates/manpage_template","lines_changed":6}]}},{"commit":"c3198a58744803f52113f80967c7259d781e2328","message":"formatting","stats":{"files_changed":2,"insertions":22,"deletions":12,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":17},{"name":"templates/manpage_template","lines_changed":17}]}},{"commit":"bbd4afa73542ba6596aed77426bb494fbcf23196","message":"add pidstat to docs","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["README.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"man/jc.1","lines_changed":7}]}},{"commit":"ae754a84bf5fc35b248bbc5f7b0fa8e871765819","message":"doc update","stats":{"files_changed":3,"insertions":263,"deletions":33,"files":["docs/parsers/arp.md","docs/parsers/pidstat.md","jc/parsers/pidstat.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/pidstat.md","lines_changed":156},{"name":"jc/parsers/pidstat.py","lines_changed":138}]}},{"commit":"3389eb5debe0f0ba01ece01e20048608bf357e70","message":"initial working parser","stats":{"files_changed":4,"insertions":219,"deletions":9,"files":["jc/parsers/pidstat.py","tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.out","tests/fixtures/centos-7.7/pidstat-hdlrsuw.out","tests/fixtures/centos-7.7/pidstat-hl.out"],"file_stats":[{"name":"jc/parsers/pidstat.py","lines_changed":52},{"name":"tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.out","lines_changed":47},{"name":"tests/fixtures/centos-7.7/pidstat-hdlrsuw.out","lines_changed":83},{"name":"tests/fixtures/centos-7.7/pidstat-hl.out","lines_changed":46}]}},{"commit":"01f2c1e71f87ab401d487be4d6d150cb67c91437","message":"add pidstat parser","stats":{"files_changed":5,"insertions":162,"deletions":2,"files":["CHANGELOG","jc/lib.py","jc/parsers/pidstat.py","setup.py","tests/fixtures/centos-7.7/pidstat.out"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/lib.py","lines_changed":3},{"name":"jc/parsers/pidstat.py","lines_changed":112},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/pidstat.out","lines_changed":44}]}},{"commit":"8bfbf8f1bcd233a8ecd34012e140eb29164ca5fb","message":"simplify error message","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"f4242669bac3af5eb196c46d4146823aacec40ab","message":"minor cleanup","stats":{"files_changed":1,"insertions":2,"deletions":10,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":12}]}},{"commit":"bebd9331f1fb9b80f8cb4a5cfacd68461743004e","message":"Merge pull request #211 from kellyjonbrazil/master"},{"commit":"ac61e9ad2c9c4e864db02db04cbf907fb0efd99b","message":"add pypi link","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"templates/readme_template","lines_changed":1}]}},{"commit":"648ef4d8a9c33a36d4bb2c135fe59b031de8f24c","message":"update badge links","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"templates/readme_template","lines_changed":4}]}},{"commit":"727fc9a701e9aae75d3d2b708010da1d0dc8781a","message":"doc update","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/date.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"306512d6bb53af18516fc10b15c7ec79cb02cc98","message":"force AM/PM to uppercase in date parser","stats":{"files_changed":4,"insertions":7,"deletions":4,"files":["CHANGELOG","jc/lib.py","jc/parsers/date.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/lib.py","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":4},{"name":"setup.py","lines_changed":2}]}},{"commit":"6afb1d389ca9dfd7880386d380fee032b7eb92e2","message":"Merge pull request #209 from kellyjonbrazil/dev"},{"commit":"98619834818c181cb50a9605fe166b6153c46095","message":"doc update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]}},{"commit":"ca79053db08542849136ae13fdb4d1d90b79a7e5","message":"document pydoc version","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":2}]}},{"commit":"29c263f87810f8566ebdad2358e99896391adfd8","message":"pydoc formatting fixes","stats":{"files_changed":93,"insertions":115,"deletions":115,"files":["docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/streaming.md","docs/utils.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":16},{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/dpkg_l.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/finger.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/gshadow.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iostat.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/jar_manifest.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/kv.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/nmcli.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/rsync.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/stat_s.md","lines_changed":2},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/universal.md","lines_changed":4},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/xrandr.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"docs/parsers/zipinfo.md","lines_changed":2},{"name":"docs/streaming.md","lines_changed":12},{"name":"docs/utils.md","lines_changed":20}]}},{"commit":"128c3c170abc6a702ae044b073fb9d992d4262b1","message":"doc update","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]}},{"commit":"a531ab8864fca27b55d83b55055eaef1c36128cd","message":"formatting","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]}},{"commit":"0c1be7cc11ec75a5738483d68d053e702eb34fc1","message":"reduce dig example size","stats":{"files_changed":2,"insertions":4,"deletions":18,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":11},{"name":"templates/readme_template","lines_changed":11}]}},{"commit":"e4222b45f54e6179e22d7924c083e4642b9974ae","message":"fix names to mod names","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":4}]}},{"commit":"ac32c69c31e8eff22252d7aded08f6cb14622086","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":2},{"name":"jc/parsers/universal.py","lines_changed":2}]}},{"commit":"cb2dfeac8d44b733ad9d364e8c6d233a381bfae1","message":"change name to JSON Convert","stats":{"files_changed":199,"insertions":334,"deletions":326,"files":["README.md","docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/streaming.md","docs/utils.md","jc/__init__.py","jc/cli.py","jc/exceptions.py","jc/lib.py","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat_freebsd_osx.py","jc/parsers/netstat_linux.py","jc/parsers/nmcli.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/xrandr.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py","jc/streaming.py","jc/utils.py","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docgen.sh","lines_changed":6},{"name":"docs/lib.md","lines_changed":25},{"name":"docs/parsers/acpi.md","lines_changed":4},{"name":"docs/parsers/airport.md","lines_changed":4},{"name":"docs/parsers/airport_s.md","lines_changed":4},{"name":"docs/parsers/arp.md","lines_changed":4},{"name":"docs/parsers/blkid.md","lines_changed":4},{"name":"docs/parsers/cksum.md","lines_changed":4},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"docs/parsers/crontab_u.md","lines_changed":4},{"name":"docs/parsers/csv.md","lines_changed":4},{"name":"docs/parsers/csv_s.md","lines_changed":4},{"name":"docs/parsers/date.md","lines_changed":4},{"name":"docs/parsers/df.md","lines_changed":4},{"name":"docs/parsers/dig.md","lines_changed":4},{"name":"docs/parsers/dir.md","lines_changed":4},{"name":"docs/parsers/dmidecode.md","lines_changed":4},{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"docs/parsers/du.md","lines_changed":4},{"name":"docs/parsers/env.md","lines_changed":4},{"name":"docs/parsers/file.md","lines_changed":4},{"name":"docs/parsers/finger.md","lines_changed":4},{"name":"docs/parsers/free.md","lines_changed":4},{"name":"docs/parsers/fstab.md","lines_changed":4},{"name":"docs/parsers/group.md","lines_changed":4},{"name":"docs/parsers/gshadow.md","lines_changed":4},{"name":"docs/parsers/hash.md","lines_changed":4},{"name":"docs/parsers/hashsum.md","lines_changed":4},{"name":"docs/parsers/hciconfig.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":4},{"name":"docs/parsers/hosts.md","lines_changed":4},{"name":"docs/parsers/id.md","lines_changed":4},{"name":"docs/parsers/ifconfig.md","lines_changed":4},{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"docs/parsers/iostat.md","lines_changed":4},{"name":"docs/parsers/iostat_s.md","lines_changed":4},{"name":"docs/parsers/iptables.md","lines_changed":4},{"name":"docs/parsers/iw_scan.md","lines_changed":4},{"name":"docs/parsers/jar_manifest.md","lines_changed":4},{"name":"docs/parsers/jobs.md","lines_changed":4},{"name":"docs/parsers/kv.md","lines_changed":4},{"name":"docs/parsers/last.md","lines_changed":4},{"name":"docs/parsers/ls.md","lines_changed":4},{"name":"docs/parsers/ls_s.md","lines_changed":4},{"name":"docs/parsers/lsblk.md","lines_changed":4},{"name":"docs/parsers/lsmod.md","lines_changed":4},{"name":"docs/parsers/lsof.md","lines_changed":4},{"name":"docs/parsers/lsusb.md","lines_changed":4},{"name":"docs/parsers/mount.md","lines_changed":4},{"name":"docs/parsers/netstat.md","lines_changed":4},{"name":"docs/parsers/nmcli.md","lines_changed":4},{"name":"docs/parsers/ntpq.md","lines_changed":4},{"name":"docs/parsers/passwd.md","lines_changed":4},{"name":"docs/parsers/ping.md","lines_changed":4},{"name":"docs/parsers/ping_s.md","lines_changed":4},{"name":"docs/parsers/pip_list.md","lines_changed":4},{"name":"docs/parsers/pip_show.md","lines_changed":4},{"name":"docs/parsers/ps.md","lines_changed":4},{"name":"docs/parsers/route.md","lines_changed":4},{"name":"docs/parsers/rpm_qi.md","lines_changed":4},{"name":"docs/parsers/rsync.md","lines_changed":4},{"name":"docs/parsers/rsync_s.md","lines_changed":9},{"name":"docs/parsers/sfdisk.md","lines_changed":4},{"name":"docs/parsers/shadow.md","lines_changed":4},{"name":"docs/parsers/ss.md","lines_changed":4},{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"docs/parsers/stat_s.md","lines_changed":4},{"name":"docs/parsers/sysctl.md","lines_changed":4},{"name":"docs/parsers/systemctl.md","lines_changed":4},{"name":"docs/parsers/systemctl_lj.md","lines_changed":4},{"name":"docs/parsers/systemctl_ls.md","lines_changed":4},{"name":"docs/parsers/systemctl_luf.md","lines_changed":4},{"name":"docs/parsers/systeminfo.md","lines_changed":4},{"name":"docs/parsers/time.md","lines_changed":4},{"name":"docs/parsers/timedatectl.md","lines_changed":4},{"name":"docs/parsers/tracepath.md","lines_changed":4},{"name":"docs/parsers/traceroute.md","lines_changed":4},{"name":"docs/parsers/ufw.md","lines_changed":4},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":4},{"name":"docs/parsers/uname.md","lines_changed":4},{"name":"docs/parsers/universal.md","lines_changed":6},{"name":"docs/parsers/upower.md","lines_changed":4},{"name":"docs/parsers/uptime.md","lines_changed":4},{"name":"docs/parsers/vmstat.md","lines_changed":4},{"name":"docs/parsers/vmstat_s.md","lines_changed":4},{"name":"docs/parsers/w.md","lines_changed":4},{"name":"docs/parsers/wc.md","lines_changed":4},{"name":"docs/parsers/who.md","lines_changed":4},{"name":"docs/parsers/xml.md","lines_changed":4},{"name":"docs/parsers/xrandr.md","lines_changed":4},{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"docs/parsers/zipinfo.md","lines_changed":4},{"name":"docs/readme.md","lines_changed":2},{"name":"docs/streaming.md","lines_changed":17},{"name":"docs/utils.md","lines_changed":29},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/cli.py","lines_changed":4},{"name":"jc/exceptions.py","lines_changed":2},{"name":"jc/lib.py","lines_changed":2},{"name":"jc/parsers/acpi.py","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/blkid.py","lines_changed":2},{"name":"jc/parsers/cksum.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"jc/parsers/csv.py","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/dir.py","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":2},{"name":"jc/parsers/dpkg_l.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/finger.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/group.py","lines_changed":2},{"name":"jc/parsers/gshadow.py","lines_changed":2},{"name":"jc/parsers/hash.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":2},{"name":"jc/parsers/hciconfig.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/iostat.py","lines_changed":2},{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2},{"name":"jc/parsers/jar_manifest.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/kv.py","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/lsusb.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/netstat_freebsd_osx.py","lines_changed":2},{"name":"jc/parsers/netstat_linux.py","lines_changed":2},{"name":"jc/parsers/nmcli.py","lines_changed":2},{"name":"jc/parsers/ntpq.py","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":2},{"name":"jc/parsers/ping.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/rpm_qi.py","lines_changed":2},{"name":"jc/parsers/rsync.py","lines_changed":2},{"name":"jc/parsers/rsync_s.py","lines_changed":2},{"name":"jc/parsers/sfdisk.py","lines_changed":2},{"name":"jc/parsers/shadow.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/stat_s.py","lines_changed":2},{"name":"jc/parsers/sysctl.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/systeminfo.py","lines_changed":2},{"name":"jc/parsers/time.py","lines_changed":2},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/ufw.py","lines_changed":2},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/universal.py","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/parsers/wc.py","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":2},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/xrandr.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2},{"name":"jc/parsers/zipinfo.py","lines_changed":2},{"name":"jc/streaming.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"templates/manpage_template","lines_changed":2},{"name":"templates/readme_template","lines_changed":4}]}},{"commit":"9a3602e70b865a3015bd700b30d1076e17511a9b","message":"doc update","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":4},{"name":"jc/lib.py","lines_changed":4}]}},{"commit":"a9f53ee258e18bc90934e263d8dc96feee84e939","message":"optimize streaming parser detection in cli","stats":{"files_changed":2,"insertions":15,"deletions":4,"files":["jc/cli.py","jc/lib.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4},{"name":"jc/lib.py","lines_changed":15}]}},{"commit":"6be3d3d98222a262c5138bb09f2951ccfab96110","message":"doc update","stats":{"files_changed":3,"insertions":43,"deletions":1,"files":["CHANGELOG","docs/lib.md","docs/readme.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docs/lib.md","lines_changed":25},{"name":"docs/readme.md","lines_changed":16}]}},{"commit":"e49df7208377ab34a74240a06f35f17fee4b8203","message":"use streaming parser list to find streaming parsers","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]}},{"commit":"7ede7be7bf7b1a7d29d158b3b21c20fff4990e72","message":"add standard and streaming list functions","stats":{"files_changed":2,"insertions":42,"deletions":0,"files":["jc/__init__.py","jc/lib.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":17},{"name":"jc/lib.py","lines_changed":25}]}},{"commit":"4758e28a36e2a55497e4f722d386a6b5cc30dc4d","message":"formatting","stats":{"files_changed":2,"insertions":20,"deletions":16,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":18},{"name":"jc/__init__.py","lines_changed":18}]}},{"commit":"4a1ee151b3cb054d84cd964fd62f5855f765751d","message":"add dhcp6 options to docs","stats":{"files_changed":2,"insertions":9,"deletions":11,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py"],"file_stats":[{"name":"docs/parsers/nmcli.md","lines_changed":4},{"name":"jc/parsers/nmcli.py","lines_changed":16}]}},{"commit":"8c8afc1a922e3c30fcf501d169b33a68b65cd3e0","message":"formatting","stats":{"files_changed":2,"insertions":60,"deletions":24,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":42},{"name":"jc/__init__.py","lines_changed":42}]}},{"commit":"ed205f7720d98c225c917c252ed7a6c9e6e8c2b8","message":"doc update","stats":{"files_changed":3,"insertions":9,"deletions":9,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/nmcli.md","lines_changed":8},{"name":"jc/parsers/nmcli.py","lines_changed":8},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"d65f7ae992abc33140c00714d442290103661757","message":"add nmcli","stats":{"files_changed":1,"insertions":41,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":41}]}},{"commit":"e2ffef57b9a474048fe72cf42aebfa6bfaf2e42b","message":"fix test","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_nmcli.py"],"file_stats":[{"name":"tests/test_nmcli.py","lines_changed":2}]}},{"commit":"002caa9fb3b65f1ae64df25cc39c3de130403e76","message":"add fedora tests","stats":{"files_changed":7,"insertions":252,"deletions":0,"files":[".../fedora32/nmcli-connection-show-ens33.json",".../fedora32/nmcli-connection-show-ens33.out",".../fixtures/fedora32/nmcli-device-show-ens33.json",".../fixtures/fedora32/nmcli-device-show-ens33.out","tests/fixtures/fedora32/nmcli-device-show.json","tests/fixtures/fedora32/nmcli-device-show.out","tests/test_nmcli.py"],"file_stats":[{"name":".../fedora32/nmcli-connection-show-ens33.json","lines_changed":1},{"name":".../fedora32/nmcli-connection-show-ens33.out","lines_changed":148},{"name":".../fixtures/fedora32/nmcli-device-show-ens33.json","lines_changed":1},{"name":".../fixtures/fedora32/nmcli-device-show-ens33.out","lines_changed":26},{"name":"tests/fixtures/fedora32/nmcli-device-show.json","lines_changed":1},{"name":"tests/fixtures/fedora32/nmcli-device-show.out","lines_changed":39},{"name":"tests/test_nmcli.py","lines_changed":36}]}},{"commit":"b7c6faf3daf8eb0c42a222778baa440c5a018c75","message":"enhance error message","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"554ca61d1764b81dea06b6b013d0444072f0662a","message":"add tests","stats":{"files_changed":11,"insertions":165,"deletions":0,"files":[".../fixtures/centos-7.7/nmcli-connection-all.json",".../centos-7.7/nmcli-connection-show-ens33.json","tests/fixtures/centos-7.7/nmcli-connection.json","tests/fixtures/centos-7.7/nmcli-device-all.json",".../centos-7.7/nmcli-device-show-ens33.json",".../fixtures/centos-7.7/nmcli-device-show-lo.json","tests/fixtures/centos-7.7/nmcli-device-show.json","tests/fixtures/centos-7.7/nmcli-device.json","tests/fixtures/centos-7.7/nmcli-general-all.json",".../centos-7.7/nmcli-general-permissions.json","tests/test_nmcli.py"],"file_stats":[{"name":".../fixtures/centos-7.7/nmcli-connection-all.json","lines_changed":1},{"name":".../centos-7.7/nmcli-connection-show-ens33.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-connection.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-device-all.json","lines_changed":1},{"name":".../centos-7.7/nmcli-device-show-ens33.json","lines_changed":1},{"name":".../fixtures/centos-7.7/nmcli-device-show-lo.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-device-show.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-device.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-general-all.json","lines_changed":1},{"name":".../centos-7.7/nmcli-general-permissions.json","lines_changed":1},{"name":"tests/test_nmcli.py","lines_changed":155}]}},{"commit":"7b9722d255a16981099dc803beda7abe0d46106a","message":"fix formatting","stats":{"files_changed":2,"insertions":26,"deletions":34,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":30},{"name":"templates/manpage_template","lines_changed":30}]}},{"commit":"5505bde8ef77db0885f08d8d04160cbc4418dd67","message":"doc update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/zipinfo.md"],"file_stats":[{"name":"docs/parsers/zipinfo.md","lines_changed":2}]}},{"commit":"dbcd9a4060647be24bca2a8d577f11925a9ac210","message":"bump version to 1.0","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":2}]}},{"commit":"4bdeb2b3aa063c2772f5c44e52acbe16e915cc3a","message":"simplify warning message","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/xrandr.py"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":2}]}},{"commit":"6ae1d03187c6d4b669f6f74db1be7c9cf07adaed","message":"doc fix","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py"],"file_stats":[{"name":"docs/parsers/nmcli.md","lines_changed":2},{"name":"jc/parsers/nmcli.py","lines_changed":2}]}},{"commit":"f75b06abe4af152be094f8bc1ba5ce66b25e35e2","message":"doc update","stats":{"files_changed":4,"insertions":180,"deletions":3,"files":["README.md","docs/parsers/nmcli.md","jc/parsers/nmcli.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/nmcli.md","lines_changed":172},{"name":"jc/parsers/nmcli.py","lines_changed":3},{"name":"man/jc.1","lines_changed":7}]}},{"commit":"1923925710dadc4116202855ae884ef18394d428","message":"update changelog","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]}},{"commit":"2c5c57ae04df3b7abfb1c3423c3350c7c2ab5dcd","message":"version bump","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/lib.py","setup.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"f4d11d697e000135720a971edf84dcad31a1bec8","message":"finish use cases and doc","stats":{"files_changed":1,"insertions":155,"deletions":15,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":170}]}},{"commit":"7f409b7082aa9525cc9280e3c5c92bc82089cf14","message":"enhance ParseError cli message","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"937fa5aad2519f588c6d0feb8f08211f6b99872f","message":"split dhcp options","stats":{"files_changed":1,"insertions":20,"deletions":0,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":20}]}},{"commit":"19dcef513565c34a31f6d735577da5e25f9bd2cd","message":"firm up flow. add/remove text. parse routes","stats":{"files_changed":1,"insertions":69,"deletions":2,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":71}]}},{"commit":"3d01356461eb2790f859968da7f5cb4fd2ee9898","message":"add text_kv function","stats":{"files_changed":1,"insertions":27,"deletions":3,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":30}]}},{"commit":"2d6f666fa4c791e7995f6b0c1490dac73ce224c3","message":"add dev show and conn show parsers","stats":{"files_changed":1,"insertions":61,"deletions":16,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":77}]}},{"commit":"4dda895f122ecc19b267ed1485cf656bae76ff07","message":"initial nmcli parser","stats":{"files_changed":13,"insertions":404,"deletions":0,"files":["jc/lib.py","jc/parsers/nmcli.py","tests/fixtures/centos-7.7/nmcli-connection-all.out",".../centos-7.7/nmcli-connection-show-ens33.out","tests/fixtures/centos-7.7/nmcli-connection.out","tests/fixtures/centos-7.7/nmcli-device-all.out",".../centos-7.7/nmcli-device-show-ens33.out","tests/fixtures/centos-7.7/nmcli-device-show-lo.out","tests/fixtures/centos-7.7/nmcli-device-show.out","tests/fixtures/centos-7.7/nmcli-device.out","tests/fixtures/centos-7.7/nmcli-general-all.out",".../centos-7.7/nmcli-general-permissions.out","tests/fixtures/centos-7.7/nmcli.out"],"file_stats":[{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/nmcli.py","lines_changed":130},{"name":"tests/fixtures/centos-7.7/nmcli-connection-all.out","lines_changed":3},{"name":".../centos-7.7/nmcli-connection-show-ens33.out","lines_changed":136},{"name":"tests/fixtures/centos-7.7/nmcli-connection.out","lines_changed":3},{"name":"tests/fixtures/centos-7.7/nmcli-device-all.out","lines_changed":5},{"name":".../centos-7.7/nmcli-device-show-ens33.out","lines_changed":18},{"name":"tests/fixtures/centos-7.7/nmcli-device-show-lo.out","lines_changed":12},{"name":"tests/fixtures/centos-7.7/nmcli-device-show.out","lines_changed":42},{"name":"tests/fixtures/centos-7.7/nmcli-device.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/nmcli-general-all.out","lines_changed":3},{"name":".../centos-7.7/nmcli-general-permissions.out","lines_changed":18},{"name":"tests/fixtures/centos-7.7/nmcli.out","lines_changed":29}]}},{"commit":"52617b1722ba2f089716b069f78f70a865430d61","message":"Merge pull request #208 from kellyjonbrazil/master"},{"commit":"961968a0fcaf37b64bc850c4945ba4b805a1fe54","message":"fix schema","stats":{"files_changed":2,"insertions":26,"deletions":23,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":24},{"name":"jc/parsers/xrandr.py","lines_changed":25}]}},{"commit":"f026a788e5ca1231927e71fdbb1dadb2365a6518","message":"add xrandr example","stats":{"files_changed":1,"insertions":62,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":62}]}},{"commit":"2f7c03eb35520be916c28a687031f8c6425839ba","message":"Merge pull request #207 from kellyjonbrazil/dev"},{"commit":"3afaa48eee081e28262d1762c5ec23d318012822","message":"doc update","stats":{"files_changed":15,"insertions":15,"deletions":15,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"docs/parsers/stat_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/rsync_s.py","lines_changed":2},{"name":"jc/parsers/stat_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]}},{"commit":"3201452564fb0fb44ef9cc32217339370bd2521e","message":"add -p to example","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":2},{"name":"jc/parsers/xrandr.py","lines_changed":2}]}},{"commit":"7ee1e34fc71c0dbc08ba482b787d560fd5125f64","message":"doc update","stats":{"files_changed":2,"insertions":116,"deletions":4,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":60},{"name":"jc/parsers/xrandr.py","lines_changed":60}]}},{"commit":"67dbf050161201f5016899591e81ab6253ac2322","message":"add type annotations","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":2},{"name":"jc/parsers/xrandr.py","lines_changed":2}]}},{"commit":"4ac9f2e3dad4e7bd270bf5a8e61b729838b2c89c","message":"doc update","stats":{"files_changed":5,"insertions":10,"deletions":17,"files":["CHANGELOG","docs/parsers/rsync.md","docs/parsers/rsync_s.md","jc/parsers/rsync.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docs/parsers/rsync.md","lines_changed":6},{"name":"docs/parsers/rsync_s.md","lines_changed":6},{"name":"jc/parsers/rsync.py","lines_changed":6},{"name":"jc/parsers/rsync_s.py","lines_changed":6}]}},{"commit":"3f5f6e39a777ef524cb3a06a01321bb8c31d930d","message":"formatting","stats":{"files_changed":2,"insertions":100,"deletions":98,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":99},{"name":"jc/parsers/xrandr.py","lines_changed":99}]}},{"commit":"4723db8e3cc4946b14c83b25d6e8c6d2309aa72e","message":"doc updates","stats":{"files_changed":8,"insertions":195,"deletions":77,"files":["README.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/xrandr.md","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/xrandr.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/rsync.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"docs/parsers/xrandr.md","lines_changed":109},{"name":"jc/parsers/rsync.py","lines_changed":2},{"name":"jc/parsers/rsync_s.py","lines_changed":2},{"name":"jc/parsers/xrandr.py","lines_changed":147},{"name":"man/jc.1","lines_changed":7}]}},{"commit":"ca914ec77d1fc77e42860189e62ac2fb203d4931","message":"add nodata test","stats":{"files_changed":1,"insertions":11,"deletions":2,"files":["tests/test_xrandr.py"],"file_stats":[{"name":"tests/test_xrandr.py","lines_changed":13}]}},{"commit":"dcc7f3f357ef016b4583fc1320fd2394788f271f","message":"Merge pull request #204 from lyterk/xrandr"},{"commit":"cbdc66623671da335eafe132b7af79f884856f1d","message":"Return empty object if no results and filenames","stats":{"files_changed":3,"insertions":2,"deletions":30,"files":["jc/parsers/xrandr.py",".../{simple_xrandr.json => xrandr_simple.json}",".../{simple_xrandr.out => xrandr_simple.out}"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":32},{"name":".../{simple_xrandr.json => xrandr_simple.json}","lines_changed":0},{"name":".../{simple_xrandr.out => xrandr_simple.out}","lines_changed":0}]}},{"commit":"184ef3a1faeb406ce62076cff637ee86d61541fb","message":"doc update","stats":{"files_changed":3,"insertions":11,"deletions":3,"files":["docs/parsers/rsync.md","docs/parsers/rsync_s.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/rsync.md","lines_changed":6},{"name":"docs/parsers/rsync_s.md","lines_changed":6},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"c732f759445e335fe36586859b6fde7e27bb8901","message":"doc update","stats":{"files_changed":2,"insertions":10,"deletions":2,"files":["jc/parsers/rsync.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":6},{"name":"jc/parsers/rsync_s.py","lines_changed":6}]}},{"commit":"7a1ae4f5fc5328c32bf77235cfbd9f83ec995053","message":"add library tests","stats":{"files_changed":3,"insertions":105,"deletions":0,"files":["tests/{test_lib.py => test_jc_lib.py}","tests/test_jc_streaming.py","tests/{test_utils.py => test_jc_utils.py}"],"file_stats":[{"name":"tests/{test_lib.py => test_jc_lib.py}","lines_changed":0},{"name":"tests/test_jc_streaming.py","lines_changed":61},{"name":"tests/{test_utils.py => test_jc_utils.py}","lines_changed":44}]}},{"commit":"d04bc3757c482ec9062b2da91ded76c5dd6d106b","message":"add xrandr","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]}},{"commit":"73e8391653145412cd852aca349466018c8b9084","message":"formatting","stats":{"files_changed":1,"insertions":8,"deletions":3,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":11}]}},{"commit":"f6c1463c1578db264ccb3d4c2677857ed906e965","message":"formatting","stats":{"files_changed":1,"insertions":44,"deletions":24,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":68}]}},{"commit":"d392c7f901a9d7c57617fbd03bd3f88ee0bf4132","message":"doc update","stats":{"files_changed":12,"insertions":20,"deletions":13,"files":["docs/parsers/date.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/ls.md","docs/parsers/rpm_qi.md","docs/parsers/stat.md","docs/parsers/systeminfo.md","docs/parsers/timedatectl.md","docs/parsers/upower.md","docs/parsers/vmstat.md","docs/parsers/who.md","docs/utils.md"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":11}]}},{"commit":"d0387f58205b2fd9b9860ce9656bb29ceec54340","message":"add timestamp format hints for better performance","stats":{"files_changed":16,"insertions":34,"deletions":29,"files":["jc/parsers/date.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/systeminfo.py","jc/parsers/timedatectl.py","jc/parsers/upower.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":4},{"name":"jc/parsers/dir.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/rpm_qi.py","lines_changed":6},{"name":"jc/parsers/rsync.py","lines_changed":2},{"name":"jc/parsers/rsync_s.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"jc/parsers/stat_s.py","lines_changed":2},{"name":"jc/parsers/systeminfo.py","lines_changed":8},{"name":"jc/parsers/timedatectl.py","lines_changed":4},{"name":"jc/parsers/upower.py","lines_changed":5},{"name":"jc/parsers/vmstat.py","lines_changed":5},{"name":"jc/parsers/vmstat_s.py","lines_changed":3},{"name":"jc/parsers/who.py","lines_changed":4}]}},{"commit":"76f92908a3ba9cbadcc8e972afa8b1c4a69509bd","message":"add format hints for performance optimization","stats":{"files_changed":1,"insertions":44,"deletions":9,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":53}]}},{"commit":"1a115da67bdce9acfefbfb71fbac37e234b1babd","message":"add lru_cache maxsize for python 3.7 support","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]}},{"commit":"f0a37ccf301eee5133a83b5dd96986fef0c38e7c","message":"use lru_cache for significant performance boost to timestamp","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":11}]}},{"commit":"f331f53a531169520a4d8ea15d277560a49aedb5","message":"use !r formatting instead of quotes","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["CHANGELOG","jc/utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/utils.py","lines_changed":2}]}},{"commit":"8611aff06b18212b7292d564beb27a2062fc3f41","message":"add examples","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/parsers/rsync_s.md","jc/parsers/rsync_s.py"],"file_stats":[{"name":"docs/parsers/rsync_s.md","lines_changed":8},{"name":"jc/parsers/rsync_s.py","lines_changed":8}]}},{"commit":"2f3f78e8d35a0ccccde0f84417400acdfe7fe0aa","message":"refine streaming parsers","stats":{"files_changed":16,"insertions":194,"deletions":185,"files":["docgen.sh","docs/parsers/rsync_s.md","docs/readme.md","docs/streaming.md","docs/utils.md","jc/__init__.py","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/streaming.py","man/jc.1"],"file_stats":[{"name":"docgen.sh","lines_changed":3},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"docs/readme.md","lines_changed":2},{"name":"docs/streaming.md","lines_changed":114},{"name":"docs/utils.md","lines_changed":93},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":10},{"name":"jc/parsers/foo_s.py","lines_changed":14},{"name":"jc/parsers/iostat_s.py","lines_changed":15},{"name":"jc/parsers/ls_s.py","lines_changed":14},{"name":"jc/parsers/ping_s.py","lines_changed":4},{"name":"jc/parsers/rsync_s.py","lines_changed":25},{"name":"jc/parsers/stat_s.py","lines_changed":22},{"name":"jc/parsers/vmstat_s.py","lines_changed":16},{"name":"jc/streaming.py","lines_changed":41},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"d1e0ee6123dfecd48d074cb7a40e98a15b6adcb9","message":"use new streaming functions","stats":{"files_changed":1,"insertions":6,"deletions":8,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":14}]}},{"commit":"45314c98083067f1f6fae9c477c99fabec223f29","message":"move some functions to streaming","stats":{"files_changed":2,"insertions":112,"deletions":102,"files":["jc/streaming.py","jc/utils.py"],"file_stats":[{"name":"jc/streaming.py","lines_changed":111},{"name":"jc/utils.py","lines_changed":103}]}},{"commit":"df00945b46e27e10107f48d186eedf80b55bd40e","message":"move try/except inside for loop","stats":{"files_changed":6,"insertions":59,"deletions":49,"files":["jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":15},{"name":"jc/parsers/iostat_s.py","lines_changed":15},{"name":"jc/parsers/ls_s.py","lines_changed":17},{"name":"jc/parsers/ping_s.py","lines_changed":19},{"name":"jc/parsers/rsync_s.py","lines_changed":21},{"name":"jc/parsers/stat_s.py","lines_changed":21}]}},{"commit":"fda0050d867bcbe4f1d7e024b08e9881d0f57735","message":"add rsync-s tests","stats":{"files_changed":13,"insertions":191,"deletions":0,"files":[".../centos-7.7/rsync-i-logfile-streaming.json","tests/fixtures/centos-7.7/rsync-i-streaming.json",".../centos-7.7/rsync-i-v-logfile-streaming.json",".../centos-7.7/rsync-i-vv-logfile-streaming.json",".../rsync-i-vvv-logfile-nochange-streaming.json",".../centos-7.7/rsync-i-vvv-logfile-streaming.json",".../centos-7.7/rsync-ivvv-nochange-streaming.json",".../fixtures/centos-7.7/rsync-ivvv-streaming.json","tests/fixtures/generic/rsync-i-streaming.json",".../rsync-i-vvv-logfile-nochange-streaming.json",".../rsync-i-vvv-nochange-streaming.json",".../osx-10.14.6/rsync-i-vvv-streaming.json","tests/test_rsync_s.py"],"file_stats":[{"name":".../centos-7.7/rsync-i-logfile-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-streaming.json","lines_changed":1},{"name":".../centos-7.7/rsync-i-v-logfile-streaming.json","lines_changed":1},{"name":".../centos-7.7/rsync-i-vv-logfile-streaming.json","lines_changed":1},{"name":".../rsync-i-vvv-logfile-nochange-streaming.json","lines_changed":1},{"name":".../centos-7.7/rsync-i-vvv-logfile-streaming.json","lines_changed":1},{"name":".../centos-7.7/rsync-ivvv-nochange-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/rsync-ivvv-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/rsync-i-streaming.json","lines_changed":1},{"name":".../rsync-i-vvv-logfile-nochange-streaming.json","lines_changed":1},{"name":".../rsync-i-vvv-nochange-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/rsync-i-vvv-streaming.json","lines_changed":1},{"name":"tests/test_rsync_s.py","lines_changed":179}]}},{"commit":"a76d46f9ecb1eff4d6cc7ad633c97cec0e99001a","message":"refactor ignore_exceptions","stats":{"files_changed":19,"insertions":110,"deletions":109,"files":["CHANGELOG","docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","docs/utils.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/utils.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":5},{"name":"docs/parsers/iostat_s.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":5},{"name":"docs/parsers/ping_s.md","lines_changed":5},{"name":"docs/parsers/rsync_s.md","lines_changed":5},{"name":"docs/parsers/stat_s.md","lines_changed":5},{"name":"docs/parsers/vmstat_s.md","lines_changed":5},{"name":"docs/utils.md","lines_changed":15},{"name":"jc/parsers/csv_s.py","lines_changed":13},{"name":"jc/parsers/foo_s.py","lines_changed":11},{"name":"jc/parsers/iostat_s.py","lines_changed":23},{"name":"jc/parsers/ls_s.py","lines_changed":20},{"name":"jc/parsers/ping_s.py","lines_changed":22},{"name":"jc/parsers/rsync_s.py","lines_changed":11},{"name":"jc/parsers/stat_s.py","lines_changed":30},{"name":"jc/parsers/vmstat_s.py","lines_changed":11},{"name":"jc/utils.py","lines_changed":24},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"6b069a82d0fa19c8d83b19b934bace556cb758d7","message":"Add xrandr to lib.py","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":1}]}},{"commit":"6b793d052147406f388c4d5dc04f506a3456f409","message":"Clean up types","stats":{"files_changed":1,"insertions":6,"deletions":11,"files":["jc/parsers/xrandr.py"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":17}]}},{"commit":"ce9103f7cc666895dc7840d32797d8c7274cf1b8","message":"Delete old files in template folder","stats":{"files_changed":2,"insertions":0,"deletions":287,"files":["templates/xrandr_sample.txt","templates/xrandr_sample_verbose.txt"],"file_stats":[{"name":"templates/xrandr_sample.txt","lines_changed":38},{"name":"templates/xrandr_sample_verbose.txt","lines_changed":249}]}},{"commit":"671d6dee36a37317257e09a080849205d301bceb","message":"doc update","stats":{"files_changed":8,"insertions":83,"deletions":15,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","docs/utils.md"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":8},{"name":"docs/parsers/iostat_s.md","lines_changed":8},{"name":"docs/parsers/ls_s.md","lines_changed":8},{"name":"docs/parsers/ping_s.md","lines_changed":8},{"name":"docs/parsers/rsync_s.md","lines_changed":10},{"name":"docs/parsers/stat_s.md","lines_changed":8},{"name":"docs/parsers/vmstat_s.md","lines_changed":8},{"name":"docs/utils.md","lines_changed":40}]}},{"commit":"49929c714c2d71a310b1dd95138dbd02f8704138","message":"add add_jc_meta decorator","stats":{"files_changed":9,"insertions":139,"deletions":52,"files":["jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":14},{"name":"jc/parsers/foo_s.py","lines_changed":16},{"name":"jc/parsers/iostat_s.py","lines_changed":15},{"name":"jc/parsers/ls_s.py","lines_changed":14},{"name":"jc/parsers/ping_s.py","lines_changed":14},{"name":"jc/parsers/rsync_s.py","lines_changed":30},{"name":"jc/parsers/stat_s.py","lines_changed":21},{"name":"jc/parsers/vmstat_s.py","lines_changed":14},{"name":"jc/utils.py","lines_changed":53}]}},{"commit":"2986771f07de87bfee44dd3bbb4f285e249aad76","message":"require python v3.7 and above since v3.6 is now deprecated","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"520082d963b93d2bafeff921da3899686b22cadf","message":"New parser: xrandr","stats":{"files_changed":9,"insertions":968,"deletions":0,"files":["jc/parsers/xrandr.py","templates/xrandr_sample.txt","templates/xrandr_sample_verbose.txt","tests/fixtures/generic/simple_xrandr.json","tests/fixtures/generic/simple_xrandr.out","tests/fixtures/generic/xrandr.out","tests/fixtures/generic/xrandr_2.out","tests/fixtures/generic/xrandr_device.out","tests/test_xrandr.py"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":353},{"name":"templates/xrandr_sample.txt","lines_changed":38},{"name":"templates/xrandr_sample_verbose.txt","lines_changed":249},{"name":"tests/fixtures/generic/simple_xrandr.json","lines_changed":56},{"name":"tests/fixtures/generic/simple_xrandr.out","lines_changed":4},{"name":"tests/fixtures/generic/xrandr.out","lines_changed":38},{"name":"tests/fixtures/generic/xrandr_2.out","lines_changed":43},{"name":"tests/fixtures/generic/xrandr_device.out","lines_changed":15},{"name":"tests/test_xrandr.py","lines_changed":172}]}},{"commit":"021e296d457140c32b5256c2b0acf66efc458896","message":"move variable inits and regexes up","stats":{"files_changed":1,"insertions":104,"deletions":100,"files":["jc/parsers/rsync_s.py"],"file_stats":[{"name":"jc/parsers/rsync_s.py","lines_changed":204}]}},{"commit":"42e56fbcea6db64ea7f7045e7755af492c95aec2","message":"move regex up","stats":{"files_changed":1,"insertions":11,"deletions":12,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":23}]}},{"commit":"a5b62a4055df37b84751a7cdc14eb6f1ed907cd9","message":"add processing and docs","stats":{"files_changed":2,"insertions":230,"deletions":18,"files":["docs/parsers/rsync_s.md","jc/parsers/rsync_s.py"],"file_stats":[{"name":"docs/parsers/rsync_s.md","lines_changed":124},{"name":"jc/parsers/rsync_s.py","lines_changed":124}]}},{"commit":"be98c9b7f6c67e23ea101223934d67bba512e645","message":"simplify try/except by moving outside for loop","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":11}]}},{"commit":"aceeb8450796ae748a4d4abf75643f309d0a42e5","message":"doc update","stats":{"files_changed":3,"insertions":12,"deletions":1,"files":["CHANGELOG","README.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":5},{"name":"README.md","lines_changed":1},{"name":"man/jc.1","lines_changed":7}]}},{"commit":"13910632173e7c815ff1161cf52fd1d17153c4a9","message":"first draft rsync streaming parser","stats":{"files_changed":2,"insertions":367,"deletions":0,"files":["jc/lib.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/rsync_s.py","lines_changed":366}]}},{"commit":"52157addd0d6dff3bdb34f179ec14b07c8c27ccc","message":"fix compatible list","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":2}]}},{"commit":"ec0bc6615e22fdc536623e290d88b9725cb6a0ec","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":2},{"name":"jc/utils.py","lines_changed":2}]}},{"commit":"2f80800e38256b363a4122195ec4aaffebe67d87","message":"simplify all_parser_info comprehension","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]}},{"commit":"3959d3347c8d3e838f8c3158c4db74e2fa2eb856","message":"doc update","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["docs/lib.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":4}]}},{"commit":"b57d25c69a193d3866ea86a3a34edd67049b198d","message":"clean up return type for parser_info","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":12}]}},{"commit":"63e43a7cabb51c624c962cdcc92a1199f18c77e5","message":"doc updates","stats":{"files_changed":7,"insertions":188,"deletions":21,"files":["README.md","docs/lib.md","docs/parsers/rsync.md","docs/parsers/universal.md","docs/parsers/zipinfo.md","docs/utils.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"docs/lib.md","lines_changed":4},{"name":"docs/parsers/rsync.md","lines_changed":163},{"name":"docs/parsers/universal.md","lines_changed":2},{"name":"docs/parsers/zipinfo.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":28},{"name":"man/jc.1","lines_changed":7}]}},{"commit":"21719f9a26c25d896b0a5d49c9d7814175835e16","message":"type annotation updates","stats":{"files_changed":2,"insertions":18,"deletions":20,"files":["jc/lib.py","jc/utils.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":36}]}},{"commit":"96ec70de4f6178b0669fd9ab47cb303dc45e55c2","message":"remove unneeded optional","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["jc/parsers/universal.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":6},{"name":"jc/utils.py","lines_changed":4}]}},{"commit":"a15a1967dc06169ceeda0fd5b4857ce1a351f3d5","message":"fix typo","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]}},{"commit":"a10d7566294fe5246e68a16e355ce56dd3557ac5","message":"fixy mypy issues","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":8}]}},{"commit":"0700dc7a64b121cf0243416e2cbb82fcef15f5a0","message":"remove cygwin from compatible","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":2}]}},{"commit":"ca654b214057e19839b89e0d9a66f1110f679c1e","message":"fix parser order","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]}},{"commit":"4ff3b87c1c96d720f4e7fd39e613944e322cb388","message":"remove future field from docstring","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":1}]}},{"commit":"ea244fb7a91f1d1f8ffe0ea6dc10dfe5ab836878","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_rsync.py"],"file_stats":[{"name":"tests/test_rsync.py","lines_changed":2}]}},{"commit":"8061f30e6fa58d22ed1a52e02c4d9c7f0bf132cf","message":"add centos -i nochange test","stats":{"files_changed":3,"insertions":236,"deletions":6,"files":["tests/fixtures/centos-7.7/rsync-ivvv-nochange.json","tests/fixtures/centos-7.7/rsync-ivvv-nochange.out","tests/test_rsync.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/rsync-ivvv-nochange.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-ivvv-nochange.out","lines_changed":224},{"name":"tests/test_rsync.py","lines_changed":17}]}},{"commit":"8f3b12e81e1b4f0d4394c33db5b3a352f4cfb391","message":"add fixes for mac -i output","stats":{"files_changed":6,"insertions":299,"deletions":0,"files":["jc/parsers/rsync.py",".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.json",".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.out","tests/fixtures/osx-10.14.6/rsync-i-vvv.json","tests/fixtures/osx-10.14.6/rsync-i-vvv.out","tests/test_rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":22},{"name":".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.out","lines_changed":88},{"name":"tests/fixtures/osx-10.14.6/rsync-i-vvv.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/rsync-i-vvv.out","lines_changed":156},{"name":"tests/test_rsync.py","lines_changed":31}]}},{"commit":"d0694ce0db5ea2d06b5787429adf23095c4c2df0","message":"add nochange log test for mac","stats":{"files_changed":3,"insertions":245,"deletions":6,"files":[".../osx-10.14.6/rsync-i-vvv-logfile-nochange.json",".../osx-10.14.6/rsync-i-vvv-logfile-nochange.out","tests/test_rsync.py"],"file_stats":[{"name":".../osx-10.14.6/rsync-i-vvv-logfile-nochange.json","lines_changed":1},{"name":".../osx-10.14.6/rsync-i-vvv-logfile-nochange.out","lines_changed":233},{"name":"tests/test_rsync.py","lines_changed":17}]}},{"commit":"0cd4c4bc7f3ffe13cb2f1920187e25636b88af61","message":"add nochange tests","stats":{"files_changed":2,"insertions":658,"deletions":0,"files":[".../centos-7.7/rsync-i-vvv-logfile-nochange.json",".../centos-7.7/rsync-i-vvv-logfile-nochange.out"],"file_stats":[{"name":".../centos-7.7/rsync-i-vvv-logfile-nochange.json","lines_changed":1},{"name":".../centos-7.7/rsync-i-vvv-logfile-nochange.out","lines_changed":657}]}},{"commit":"12f90c349c903634def4225ce87924b475be46d0","message":"update regexes for unchanged files","stats":{"files_changed":2,"insertions":68,"deletions":20,"files":["jc/parsers/rsync.py","tests/test_rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":68},{"name":"tests/test_rsync.py","lines_changed":20}]}},{"commit":"26b8a1f167c4b1ec3f9fb4077254a27ed8548933","message":"remove packages from binaries and packages header","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"3abe382c064f605d915912f9b726d76784eba8a2","message":"add examples","stats":{"files_changed":2,"insertions":90,"deletions":3,"files":["EXAMPLES.md","jc/parsers/rsync.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":33},{"name":"jc/parsers/rsync.py","lines_changed":60}]}},{"commit":"1e2edc2c7b5dc104a9efe4da7df9be61b9e1be32","message":"add timestamp","stats":{"files_changed":5,"insertions":53,"deletions":29,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-logfile.json","tests/fixtures/centos-7.7/rsync-i-v-logfile.json","tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":74},{"name":"tests/fixtures/centos-7.7/rsync-i-logfile.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rsync-i-v-logfile.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json","lines_changed":2}]}},{"commit":"5fe032a6741b7b6586c60eb28be74bd0e56277a0","message":"fix typo","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":2}]}},{"commit":"e825c02df1cdae67c7f335fe3c675685eb1a8d02","message":"add rsync tests","stats":{"files_changed":11,"insertions":605,"deletions":0,"files":["tests/fixtures/centos-7.7/rsync-i-logfile.json","tests/fixtures/centos-7.7/rsync-i-v-logfile.json","tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out","tests/fixtures/centos-7.7/rsync-i.json","tests/fixtures/centos-7.7/rsync-i.out","tests/fixtures/centos-7.7/rsync-ivvv.json","tests/fixtures/generic/rsync-i.json","tests/fixtures/generic/rsync-i.out","tests/test_rsync.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/rsync-i-logfile.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-v-logfile.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out","lines_changed":434},{"name":"tests/fixtures/centos-7.7/rsync-i.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i.out","lines_changed":28},{"name":"tests/fixtures/centos-7.7/rsync-ivvv.json","lines_changed":1},{"name":"tests/fixtures/generic/rsync-i.json","lines_changed":1},{"name":"tests/fixtures/generic/rsync-i.out","lines_changed":11},{"name":"tests/test_rsync.py","lines_changed":125}]}},{"commit":"a4a4d170b5ae8c189de982adea5bdc9bf1f26e6c","message":"update docstring","stats":{"files_changed":1,"insertions":10,"deletions":5,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":15}]}},{"commit":"d0fcd523cb2cbb59d0f90369721749b54222961d","message":"fix process conversions","stats":{"files_changed":1,"insertions":19,"deletions":17,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":36}]}},{"commit":"f72b7dc75dbd1c3f5daee3ecee28487258a04873","message":"change keyname to files and remove future key","stats":{"files_changed":1,"insertions":4,"deletions":8,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":12}]}},{"commit":"4101dc6bf7bab7d00899426e2f6271a7480d558f","message":"add log-file support","stats":{"files_changed":4,"insertions":1008,"deletions":19,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-v-logfile.out","tests/fixtures/centos-7.7/rsync-i-vv-logfile.out","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":60},{"name":"tests/fixtures/centos-7.7/rsync-i-v-logfile.out","lines_changed":61},{"name":"tests/fixtures/centos-7.7/rsync-i-vv-logfile.out","lines_changed":65},{"name":"tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out","lines_changed":841}]}},{"commit":"ea5011b616365b5c10c04416d43035d84e3dacba","message":"updated schema. add log-file option support","stats":{"files_changed":2,"insertions":175,"deletions":41,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-logfile.out"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":157},{"name":"tests/fixtures/centos-7.7/rsync-i-logfile.out","lines_changed":59}]}},{"commit":"d6de81747fd92642dbd5cb1fb097e375aa38be35","message":"add int/float conversions","stats":{"files_changed":1,"insertions":11,"deletions":3,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":14}]}},{"commit":"38f04b1c9699246d85332b20df5b6a91ae0c48d9","message":"add summary","stats":{"files_changed":1,"insertions":32,"deletions":7,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":39}]}},{"commit":"84169e1a913d035744f71472be81fe3a7d774b97","message":"add rsync parser","stats":{"files_changed":4,"insertions":637,"deletions":2,"files":["jc/lib.py","jc/parsers/rsync.py","setup.py","tests/fixtures/centos-7.7/rsync-ivvv.out"],"file_stats":[{"name":"jc/lib.py","lines_changed":3},{"name":"jc/parsers/rsync.py","lines_changed":212},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rsync-ivvv.out","lines_changed":422}]}},{"commit":"1f96586a5e883709f436526de6dcb21ff44bf97b","message":"reorder imports","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/foo.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":2}]}},{"commit":"681176e4c958157ef1f2151b3e57963a6ba48e09","message":"Merge pull request #203 from kellyjonbrazil/dev"},{"commit":"8bb266352207f95040b72750e5b3ae3b8ceb2b98","message":"date update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]}},{"commit":"663abf313931b49fad64b425ece6a5a257dc7938","message":"clean up scripts","stats":{"files_changed":4,"insertions":3,"deletions":4,"files":["MANIFEST.in","mangen.py","runtests.sh","updatedocs.sh"],"file_stats":[{"name":"MANIFEST.in","lines_changed":1},{"name":"mangen.py","lines_changed":3},{"name":"runtests.sh","lines_changed":1},{"name":"updatedocs.sh","lines_changed":2}]}},{"commit":"f7ac41db95c16fd21d83fbce678c5dec28ab40f0","message":"final doc update","stats":{"files_changed":2,"insertions":1,"deletions":13,"files":["README.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"man/jc.1","lines_changed":12}]}},{"commit":"5502cda9e591b531d6b452b02d8ec322c3287800","message":"add additional test for dict inside list for all_parser_info()","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["tests/test_lib.py"],"file_stats":[{"name":"tests/test_lib.py","lines_changed":3}]}},{"commit":"a2b165565f54d91489bf38577a0785e78a4523d8","message":"add lib tests for new functions","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["tests/test_lib.py"],"file_stats":[{"name":"tests/test_lib.py","lines_changed":21}]}},{"commit":"b426369815984bd2aae8bcb14e306ba73b8cd4ae","message":"use all_parser_info() from lib in about function","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":12}]}},{"commit":"ac0840cc0afb4aeee2c99076710c987e09cfa5f7","message":"fix typo","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]}},{"commit":"ee98ab0a4a7671ae34ee79f7b0b97c061a8c2944","message":"doc update","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/lib.md","docs/utils.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":6},{"name":"docs/utils.md","lines_changed":4}]}},{"commit":"2adec2c0035b84ca0242f2494b6c2651b9898ca5","message":"update type hints with mypy help","stats":{"files_changed":4,"insertions":21,"deletions":19,"files":["jc/lib.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/utils.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":18},{"name":"jc/parsers/foo.py","lines_changed":8},{"name":"jc/parsers/foo_s.py","lines_changed":10},{"name":"jc/utils.py","lines_changed":4}]}},{"commit":"f19c9c71bf4f592f55a5176458acd478b462fdbe","message":"add type hints","stats":{"files_changed":2,"insertions":15,"deletions":4,"files":["jc/parsers/foo.py","jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":9},{"name":"jc/parsers/foo_s.py","lines_changed":10}]}},{"commit":"e93adf1884c0006a64123513070a5fd96a940da2","message":"fix doc","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":5},{"name":"jc/__init__.py","lines_changed":5}]}},{"commit":"254c4fc507842ca72064c0196418a7b939d54d06","message":"add new functions","stats":{"files_changed":2,"insertions":20,"deletions":6,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":13},{"name":"jc/__init__.py","lines_changed":13}]}},{"commit":"74d5f60d14fc42cfd5768c7ffd6efc890a65d442","message":"update console interview description","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"db7dc0634bc17b4daadc8bc21bba5975c093efe5","message":"make **kwargs optional","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":2},{"name":"jc/lib.py","lines_changed":2}]}},{"commit":"e156b0db453e99fb0f74b618fd343218f978ff68","message":"add type hints","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":4},{"name":"jc/parsers/universal.py","lines_changed":5}]}},{"commit":"50adc05fbd6a0dcd9e4fb38aa41917bb57332f36","message":"formatting","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":6},{"name":"jc/utils.py","lines_changed":6}]}},{"commit":"446cac7c217103eb66cfdee97e3a208b7144b644","message":"doc update","stats":{"files_changed":2,"insertions":15,"deletions":11,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":11},{"name":"jc/utils.py","lines_changed":15}]}},{"commit":"28ffe3076bb5f23aeaf2624344856dbd02b4c0e8","message":"formatting","stats":{"files_changed":2,"insertions":8,"deletions":9,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":8},{"name":"jc/lib.py","lines_changed":9}]}},{"commit":"d4d5e206cae14acd25445952f820810818b3fdce","message":"type hints update","stats":{"files_changed":3,"insertions":40,"deletions":28,"files":["docs/lib.md","docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":15},{"name":"docs/utils.md","lines_changed":26},{"name":"jc/utils.py","lines_changed":27}]}},{"commit":"42fbe40a4ae02b9d09acdbf9b22573844959d2ad","message":"simplify type hints","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":11}]}},{"commit":"27e4a120e21dcbb3eadc6c4cf224ddb33859328d","message":"remove trailing comma","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":2},{"name":"jc/lib.py","lines_changed":2}]}},{"commit":"b5d5b7c73a96d4335b178ccfac60af90913e6f0f","message":"remove private classes","stats":{"files_changed":3,"insertions":29,"deletions":148,"files":["docgen.sh","docs/parsers/ifconfig.md","docs/parsers/traceroute.md"],"file_stats":[{"name":"docgen.sh","lines_changed":35},{"name":"docs/parsers/ifconfig.md","lines_changed":94},{"name":"docs/parsers/traceroute.md","lines_changed":48}]}},{"commit":"e7471556ba5fb0586ac5b0d7404cabd98a58db2e","message":"remove sed lines","stats":{"files_changed":1,"insertions":0,"deletions":5,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":5}]}},{"commit":"640a21341bb1c562cb2124155b511dfc74277fc0","message":"fix indentation","stats":{"files_changed":2,"insertions":47,"deletions":42,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":20},{"name":"jc/utils.py","lines_changed":69}]}},{"commit":"f5befad3e41ba2864abc795a2fdf63e0f1d37c21","message":"move docstring under __init__","stats":{"files_changed":2,"insertions":33,"deletions":25,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":21},{"name":"jc/utils.py","lines_changed":37}]}},{"commit":"f8223023c31093c1a34130b4e4cfc23b1d80a30c","message":"change header depth","stats":{"files_changed":4,"insertions":24,"deletions":10,"files":["docgen.sh","docs/parsers/ifconfig.md","docs/parsers/traceroute.md","docs/utils.md"],"file_stats":[{"name":"docgen.sh","lines_changed":28},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":2}]}},{"commit":"7028e87f9b411c0cfb92eee7fc0667cdcb9a54ff","message":"remove TOC for parsers","stats":{"files_changed":87,"insertions":22,"deletions":445,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md"],"file_stats":[{"name":"docgen.sh","lines_changed":26},{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/csv_s.md","lines_changed":5},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":14},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iostat.md","lines_changed":5},{"name":"docs/parsers/iostat_s.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jar_manifest.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/ping_s.md","lines_changed":5},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/sfdisk.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/stat_s.md","lines_changed":5},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/systeminfo.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":8},{"name":"docs/parsers/ufw.md","lines_changed":5},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/vmstat.md","lines_changed":5},{"name":"docs/parsers/vmstat_s.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5},{"name":"docs/parsers/zipinfo.md","lines_changed":5},{"name":"docs/readme.md","lines_changed":4}]}},{"commit":"590728f9c1ccfdc078e600d1f35ad4ba51f70d36","message":"try new pydoc-markdown formatting options","stats":{"files_changed":91,"insertions":506,"deletions":17,"files":["docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/utils.md","jc/lib.py"],"file_stats":[{"name":"docgen.sh","lines_changed":28},{"name":"docs/lib.md","lines_changed":13},{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/csv_s.md","lines_changed":5},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":14},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iostat.md","lines_changed":5},{"name":"docs/parsers/iostat_s.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jar_manifest.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/ping_s.md","lines_changed":5},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/sfdisk.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/stat_s.md","lines_changed":5},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/systeminfo.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":8},{"name":"docs/parsers/ufw.md","lines_changed":5},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/universal.md","lines_changed":6},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/vmstat.md","lines_changed":5},{"name":"docs/parsers/vmstat_s.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5},{"name":"docs/parsers/zipinfo.md","lines_changed":5},{"name":"docs/readme.md","lines_changed":4},{"name":"docs/utils.md","lines_changed":17},{"name":"jc/lib.py","lines_changed":18}]}},{"commit":"7cc147fe2d7b278bcab905bc4c3b70b5265e1510","message":"increase heading size","stats":{"files_changed":2,"insertions":4,"deletions":44,"files":["docgen.sh","docgen.sh.old"],"file_stats":[{"name":"docgen.sh","lines_changed":4},{"name":"docgen.sh.old","lines_changed":44}]}},{"commit":"3cfb3965bb25024a7b03870b71f02194e278919b","message":"formatting","stats":{"files_changed":3,"insertions":19,"deletions":19,"files":["docs/lib.md","docs/parsers/universal.md","docs/utils.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":10},{"name":"docs/parsers/universal.md","lines_changed":4},{"name":"docs/utils.md","lines_changed":24}]}},{"commit":"155d4213225fe4fcf4a059fb63c1ab9fc493177e","message":"formatting","stats":{"files_changed":86,"insertions":182,"deletions":181,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"],"file_stats":[{"name":"docgen.sh","lines_changed":3},{"name":"docs/parsers/acpi.md","lines_changed":4},{"name":"docs/parsers/airport.md","lines_changed":4},{"name":"docs/parsers/airport_s.md","lines_changed":4},{"name":"docs/parsers/arp.md","lines_changed":4},{"name":"docs/parsers/blkid.md","lines_changed":4},{"name":"docs/parsers/cksum.md","lines_changed":4},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"docs/parsers/crontab_u.md","lines_changed":4},{"name":"docs/parsers/csv.md","lines_changed":4},{"name":"docs/parsers/csv_s.md","lines_changed":4},{"name":"docs/parsers/date.md","lines_changed":4},{"name":"docs/parsers/df.md","lines_changed":4},{"name":"docs/parsers/dig.md","lines_changed":4},{"name":"docs/parsers/dir.md","lines_changed":4},{"name":"docs/parsers/dmidecode.md","lines_changed":4},{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"docs/parsers/du.md","lines_changed":4},{"name":"docs/parsers/env.md","lines_changed":4},{"name":"docs/parsers/file.md","lines_changed":4},{"name":"docs/parsers/finger.md","lines_changed":4},{"name":"docs/parsers/free.md","lines_changed":4},{"name":"docs/parsers/fstab.md","lines_changed":4},{"name":"docs/parsers/group.md","lines_changed":4},{"name":"docs/parsers/gshadow.md","lines_changed":4},{"name":"docs/parsers/hash.md","lines_changed":4},{"name":"docs/parsers/hashsum.md","lines_changed":4},{"name":"docs/parsers/hciconfig.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":4},{"name":"docs/parsers/hosts.md","lines_changed":4},{"name":"docs/parsers/id.md","lines_changed":4},{"name":"docs/parsers/ifconfig.md","lines_changed":20},{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"docs/parsers/iostat.md","lines_changed":4},{"name":"docs/parsers/iostat_s.md","lines_changed":4},{"name":"docs/parsers/iptables.md","lines_changed":4},{"name":"docs/parsers/iw_scan.md","lines_changed":4},{"name":"docs/parsers/jar_manifest.md","lines_changed":4},{"name":"docs/parsers/jobs.md","lines_changed":4},{"name":"docs/parsers/kv.md","lines_changed":4},{"name":"docs/parsers/last.md","lines_changed":4},{"name":"docs/parsers/ls.md","lines_changed":4},{"name":"docs/parsers/ls_s.md","lines_changed":4},{"name":"docs/parsers/lsblk.md","lines_changed":4},{"name":"docs/parsers/lsmod.md","lines_changed":4},{"name":"docs/parsers/lsof.md","lines_changed":4},{"name":"docs/parsers/lsusb.md","lines_changed":4},{"name":"docs/parsers/mount.md","lines_changed":4},{"name":"docs/parsers/netstat.md","lines_changed":4},{"name":"docs/parsers/ntpq.md","lines_changed":4},{"name":"docs/parsers/passwd.md","lines_changed":4},{"name":"docs/parsers/ping.md","lines_changed":4},{"name":"docs/parsers/ping_s.md","lines_changed":4},{"name":"docs/parsers/pip_list.md","lines_changed":4},{"name":"docs/parsers/pip_show.md","lines_changed":4},{"name":"docs/parsers/ps.md","lines_changed":4},{"name":"docs/parsers/route.md","lines_changed":4},{"name":"docs/parsers/rpm_qi.md","lines_changed":4},{"name":"docs/parsers/sfdisk.md","lines_changed":4},{"name":"docs/parsers/shadow.md","lines_changed":4},{"name":"docs/parsers/ss.md","lines_changed":4},{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"docs/parsers/stat_s.md","lines_changed":4},{"name":"docs/parsers/sysctl.md","lines_changed":4},{"name":"docs/parsers/systemctl.md","lines_changed":4},{"name":"docs/parsers/systemctl_lj.md","lines_changed":4},{"name":"docs/parsers/systemctl_ls.md","lines_changed":4},{"name":"docs/parsers/systemctl_luf.md","lines_changed":4},{"name":"docs/parsers/systeminfo.md","lines_changed":4},{"name":"docs/parsers/time.md","lines_changed":4},{"name":"docs/parsers/timedatectl.md","lines_changed":4},{"name":"docs/parsers/tracepath.md","lines_changed":4},{"name":"docs/parsers/traceroute.md","lines_changed":8},{"name":"docs/parsers/ufw.md","lines_changed":4},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":4},{"name":"docs/parsers/uname.md","lines_changed":4},{"name":"docs/parsers/upower.md","lines_changed":4},{"name":"docs/parsers/uptime.md","lines_changed":4},{"name":"docs/parsers/vmstat.md","lines_changed":4},{"name":"docs/parsers/vmstat_s.md","lines_changed":4},{"name":"docs/parsers/w.md","lines_changed":4},{"name":"docs/parsers/wc.md","lines_changed":4},{"name":"docs/parsers/who.md","lines_changed":4},{"name":"docs/parsers/xml.md","lines_changed":4},{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"docs/parsers/zipinfo.md","lines_changed":4}]}},{"commit":"d3e10bb87bdb32396bce95f74e62a023f4efaf99","message":"add lsusb docs","stats":{"files_changed":1,"insertions":291,"deletions":0,"files":["docs/parsers/lsusb.md"],"file_stats":[{"name":"docs/parsers/lsusb.md","lines_changed":291}]}},{"commit":"fd5433ee6220357e59633c78b689aa432d056b43","message":"parse docstring formatting","stats":{"files_changed":3,"insertions":6,"deletions":293,"files":["docs/lib.md","docs/parsers/lsusb.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":4},{"name":"docs/parsers/lsusb.md","lines_changed":291},{"name":"jc/lib.py","lines_changed":4}]}},{"commit":"4568f2d06e8fc1c465c86c318d925586481af062","message":"formatting for parse docstring","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":4},{"name":"jc/lib.py","lines_changed":4}]}},{"commit":"c36e513d1bcc07cd8f01ff59199950e5396da51b","message":"formatting","stats":{"files_changed":86,"insertions":88,"deletions":91,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"],"file_stats":[{"name":"docgen.sh","lines_changed":9},{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/dpkg_l.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/finger.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/gshadow.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iostat.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/jar_manifest.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/kv.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/stat_s.md","lines_changed":2},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"docs/parsers/zipinfo.md","lines_changed":2}]}},{"commit":"8e089baf3fe30fed80e1c5cdde7c3046bb70ca5a","message":"remove info class from docs","stats":{"files_changed":86,"insertions":8,"deletions":855,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"],"file_stats":[{"name":"docgen.sh","lines_changed":13},{"name":"docs/parsers/acpi.md","lines_changed":10},{"name":"docs/parsers/airport.md","lines_changed":10},{"name":"docs/parsers/airport_s.md","lines_changed":10},{"name":"docs/parsers/arp.md","lines_changed":10},{"name":"docs/parsers/blkid.md","lines_changed":10},{"name":"docs/parsers/cksum.md","lines_changed":10},{"name":"docs/parsers/crontab.md","lines_changed":10},{"name":"docs/parsers/crontab_u.md","lines_changed":10},{"name":"docs/parsers/csv.md","lines_changed":10},{"name":"docs/parsers/csv_s.md","lines_changed":10},{"name":"docs/parsers/date.md","lines_changed":10},{"name":"docs/parsers/df.md","lines_changed":10},{"name":"docs/parsers/dig.md","lines_changed":10},{"name":"docs/parsers/dir.md","lines_changed":10},{"name":"docs/parsers/dmidecode.md","lines_changed":10},{"name":"docs/parsers/dpkg_l.md","lines_changed":10},{"name":"docs/parsers/du.md","lines_changed":10},{"name":"docs/parsers/env.md","lines_changed":10},{"name":"docs/parsers/file.md","lines_changed":10},{"name":"docs/parsers/finger.md","lines_changed":10},{"name":"docs/parsers/free.md","lines_changed":10},{"name":"docs/parsers/fstab.md","lines_changed":10},{"name":"docs/parsers/group.md","lines_changed":10},{"name":"docs/parsers/gshadow.md","lines_changed":10},{"name":"docs/parsers/hash.md","lines_changed":10},{"name":"docs/parsers/hashsum.md","lines_changed":10},{"name":"docs/parsers/hciconfig.md","lines_changed":10},{"name":"docs/parsers/history.md","lines_changed":10},{"name":"docs/parsers/hosts.md","lines_changed":10},{"name":"docs/parsers/id.md","lines_changed":10},{"name":"docs/parsers/ifconfig.md","lines_changed":10},{"name":"docs/parsers/ini.md","lines_changed":10},{"name":"docs/parsers/iostat.md","lines_changed":10},{"name":"docs/parsers/iostat_s.md","lines_changed":10},{"name":"docs/parsers/iptables.md","lines_changed":10},{"name":"docs/parsers/iw_scan.md","lines_changed":10},{"name":"docs/parsers/jar_manifest.md","lines_changed":10},{"name":"docs/parsers/jobs.md","lines_changed":10},{"name":"docs/parsers/kv.md","lines_changed":10},{"name":"docs/parsers/last.md","lines_changed":10},{"name":"docs/parsers/ls.md","lines_changed":10},{"name":"docs/parsers/ls_s.md","lines_changed":10},{"name":"docs/parsers/lsblk.md","lines_changed":10},{"name":"docs/parsers/lsmod.md","lines_changed":10},{"name":"docs/parsers/lsof.md","lines_changed":10},{"name":"docs/parsers/lsusb.md","lines_changed":10},{"name":"docs/parsers/mount.md","lines_changed":10},{"name":"docs/parsers/netstat.md","lines_changed":10},{"name":"docs/parsers/ntpq.md","lines_changed":10},{"name":"docs/parsers/passwd.md","lines_changed":10},{"name":"docs/parsers/ping.md","lines_changed":10},{"name":"docs/parsers/ping_s.md","lines_changed":10},{"name":"docs/parsers/pip_list.md","lines_changed":10},{"name":"docs/parsers/pip_show.md","lines_changed":10},{"name":"docs/parsers/ps.md","lines_changed":10},{"name":"docs/parsers/route.md","lines_changed":10},{"name":"docs/parsers/rpm_qi.md","lines_changed":10},{"name":"docs/parsers/sfdisk.md","lines_changed":10},{"name":"docs/parsers/shadow.md","lines_changed":10},{"name":"docs/parsers/ss.md","lines_changed":10},{"name":"docs/parsers/stat.md","lines_changed":10},{"name":"docs/parsers/stat_s.md","lines_changed":10},{"name":"docs/parsers/sysctl.md","lines_changed":10},{"name":"docs/parsers/systemctl.md","lines_changed":10},{"name":"docs/parsers/systemctl_lj.md","lines_changed":10},{"name":"docs/parsers/systemctl_ls.md","lines_changed":10},{"name":"docs/parsers/systemctl_luf.md","lines_changed":10},{"name":"docs/parsers/systeminfo.md","lines_changed":10},{"name":"docs/parsers/time.md","lines_changed":10},{"name":"docs/parsers/timedatectl.md","lines_changed":10},{"name":"docs/parsers/tracepath.md","lines_changed":10},{"name":"docs/parsers/traceroute.md","lines_changed":10},{"name":"docs/parsers/ufw.md","lines_changed":10},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":10},{"name":"docs/parsers/uname.md","lines_changed":10},{"name":"docs/parsers/upower.md","lines_changed":10},{"name":"docs/parsers/uptime.md","lines_changed":10},{"name":"docs/parsers/vmstat.md","lines_changed":10},{"name":"docs/parsers/vmstat_s.md","lines_changed":10},{"name":"docs/parsers/w.md","lines_changed":10},{"name":"docs/parsers/wc.md","lines_changed":10},{"name":"docs/parsers/who.md","lines_changed":10},{"name":"docs/parsers/xml.md","lines_changed":10},{"name":"docs/parsers/yaml.md","lines_changed":10},{"name":"docs/parsers/zipinfo.md","lines_changed":10}]}},{"commit":"386f6c317e104e797c2b55e3d21c8b064a83ac78","message":"update markdown processor settings","stats":{"files_changed":89,"insertions":9552,"deletions":9939,"files":["docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/utils.md"],"file_stats":[{"name":"docgen.sh","lines_changed":10},{"name":"docs/lib.md","lines_changed":105},{"name":"docs/parsers/acpi.md","lines_changed":440},{"name":"docs/parsers/airport.md","lines_changed":146},{"name":"docs/parsers/airport_s.md","lines_changed":202},{"name":"docs/parsers/arp.md","lines_changed":220},{"name":"docs/parsers/blkid.md","lines_changed":230},{"name":"docs/parsers/cksum.md","lines_changed":90},{"name":"docs/parsers/crontab.md","lines_changed":330},{"name":"docs/parsers/crontab_u.md","lines_changed":326},{"name":"docs/parsers/csv.md","lines_changed":140},{"name":"docs/parsers/csv_s.md","lines_changed":114},{"name":"docs/parsers/date.md","lines_changed":132},{"name":"docs/parsers/df.md","lines_changed":184},{"name":"docs/parsers/dig.md","lines_changed":614},{"name":"docs/parsers/dir.md","lines_changed":210},{"name":"docs/parsers/dmidecode.md","lines_changed":240},{"name":"docs/parsers/dpkg_l.md","lines_changed":244},{"name":"docs/parsers/du.md","lines_changed":164},{"name":"docs/parsers/env.md","lines_changed":126},{"name":"docs/parsers/file.md","lines_changed":114},{"name":"docs/parsers/finger.md","lines_changed":166},{"name":"docs/parsers/free.md","lines_changed":134},{"name":"docs/parsers/fstab.md","lines_changed":164},{"name":"docs/parsers/group.md","lines_changed":212},{"name":"docs/parsers/gshadow.md","lines_changed":148},{"name":"docs/parsers/hash.md","lines_changed":68},{"name":"docs/parsers/hashsum.md","lines_changed":106},{"name":"docs/parsers/hciconfig.md","lines_changed":620},{"name":"docs/parsers/history.md","lines_changed":106},{"name":"docs/parsers/hosts.md","lines_changed":142},{"name":"docs/parsers/id.md","lines_changed":200},{"name":"docs/parsers/ifconfig.md","lines_changed":388},{"name":"docs/parsers/ini.md","lines_changed":110},{"name":"docs/parsers/iostat.md","lines_changed":304},{"name":"docs/parsers/iostat_s.md","lines_changed":198},{"name":"docs/parsers/iptables.md","lines_changed":312},{"name":"docs/parsers/iw_scan.md","lines_changed":226},{"name":"docs/parsers/jar_manifest.md","lines_changed":148},{"name":"docs/parsers/jobs.md","lines_changed":170},{"name":"docs/parsers/kv.md","lines_changed":86},{"name":"docs/parsers/last.md","lines_changed":186},{"name":"docs/parsers/ls.md","lines_changed":190},{"name":"docs/parsers/ls_s.md","lines_changed":130},{"name":"docs/parsers/lsblk.md","lines_changed":534},{"name":"docs/parsers/lsmod.md","lines_changed":240},{"name":"docs/parsers/lsof.md","lines_changed":228},{"name":"docs/parsers/lsusb.md","lines_changed":502},{"name":"docs/parsers/mount.md","lines_changed":140},{"name":"docs/parsers/netstat.md","lines_changed":688},{"name":"docs/parsers/ntpq.md","lines_changed":402},{"name":"docs/parsers/passwd.md","lines_changed":182},{"name":"docs/parsers/ping.md","lines_changed":308},{"name":"docs/parsers/ping_s.md","lines_changed":160},{"name":"docs/parsers/pip_list.md","lines_changed":84},{"name":"docs/parsers/pip_show.md","lines_changed":120},{"name":"docs/parsers/ps.md","lines_changed":394},{"name":"docs/parsers/route.md","lines_changed":206},{"name":"docs/parsers/rpm_qi.md","lines_changed":296},{"name":"docs/parsers/sfdisk.md","lines_changed":376},{"name":"docs/parsers/shadow.md","lines_changed":196},{"name":"docs/parsers/ss.md","lines_changed":538},{"name":"docs/parsers/stat.md","lines_changed":318},{"name":"docs/parsers/stat_s.md","lines_changed":152},{"name":"docs/parsers/sysctl.md","lines_changed":100},{"name":"docs/parsers/systemctl.md","lines_changed":106},{"name":"docs/parsers/systemctl_lj.md","lines_changed":140},{"name":"docs/parsers/systemctl_ls.md","lines_changed":90},{"name":"docs/parsers/systemctl_luf.md","lines_changed":82},{"name":"docs/parsers/systeminfo.md","lines_changed":396},{"name":"docs/parsers/time.md","lines_changed":242},{"name":"docs/parsers/timedatectl.md","lines_changed":112},{"name":"docs/parsers/tracepath.md","lines_changed":248},{"name":"docs/parsers/traceroute.md","lines_changed":220},{"name":"docs/parsers/ufw.md","lines_changed":390},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":250},{"name":"docs/parsers/uname.md","lines_changed":80},{"name":"docs/parsers/universal.md","lines_changed":72},{"name":"docs/parsers/upower.md","lines_changed":374},{"name":"docs/parsers/uptime.md","lines_changed":120},{"name":"docs/parsers/vmstat.md","lines_changed":226},{"name":"docs/parsers/vmstat_s.md","lines_changed":172},{"name":"docs/parsers/w.md","lines_changed":196},{"name":"docs/parsers/wc.md","lines_changed":98},{"name":"docs/parsers/who.md","lines_changed":250},{"name":"docs/parsers/xml.md","lines_changed":134},{"name":"docs/parsers/yaml.md","lines_changed":162},{"name":"docs/parsers/zipinfo.md","lines_changed":138},{"name":"docs/utils.md","lines_changed":134}]}},{"commit":"75cd84ce8a86b3357c6cf5fe4fbc62d0f298a29a","message":"try new markdown conversion","stats":{"files_changed":94,"insertions":11423,"deletions":10081,"files":["README.md","docgen.sh","docgen.sh.old","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/utils.md","jc/cli.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docgen.sh","lines_changed":12},{"name":"docgen.sh.old","lines_changed":44},{"name":"docs/lib.md","lines_changed":151},{"name":"docs/parsers/acpi.md","lines_changed":454},{"name":"docs/parsers/airport.md","lines_changed":166},{"name":"docs/parsers/airport_s.md","lines_changed":224},{"name":"docs/parsers/arp.md","lines_changed":240},{"name":"docs/parsers/blkid.md","lines_changed":250},{"name":"docs/parsers/cksum.md","lines_changed":110},{"name":"docs/parsers/crontab.md","lines_changed":350},{"name":"docs/parsers/crontab_u.md","lines_changed":348},{"name":"docs/parsers/csv.md","lines_changed":160},{"name":"docs/parsers/csv_s.md","lines_changed":120},{"name":"docs/parsers/date.md","lines_changed":152},{"name":"docs/parsers/df.md","lines_changed":204},{"name":"docs/parsers/dig.md","lines_changed":634},{"name":"docs/parsers/dir.md","lines_changed":230},{"name":"docs/parsers/dmidecode.md","lines_changed":260},{"name":"docs/parsers/dpkg_l.md","lines_changed":266},{"name":"docs/parsers/du.md","lines_changed":184},{"name":"docs/parsers/env.md","lines_changed":146},{"name":"docs/parsers/file.md","lines_changed":134},{"name":"docs/parsers/finger.md","lines_changed":186},{"name":"docs/parsers/free.md","lines_changed":154},{"name":"docs/parsers/fstab.md","lines_changed":184},{"name":"docs/parsers/group.md","lines_changed":232},{"name":"docs/parsers/gshadow.md","lines_changed":168},{"name":"docs/parsers/hash.md","lines_changed":88},{"name":"docs/parsers/hashsum.md","lines_changed":126},{"name":"docs/parsers/hciconfig.md","lines_changed":634},{"name":"docs/parsers/history.md","lines_changed":126},{"name":"docs/parsers/hosts.md","lines_changed":162},{"name":"docs/parsers/id.md","lines_changed":220},{"name":"docs/parsers/ifconfig.md","lines_changed":472},{"name":"docs/parsers/ini.md","lines_changed":130},{"name":"docs/parsers/iostat.md","lines_changed":324},{"name":"docs/parsers/iostat_s.md","lines_changed":220},{"name":"docs/parsers/iptables.md","lines_changed":332},{"name":"docs/parsers/iw_scan.md","lines_changed":248},{"name":"docs/parsers/jar_manifest.md","lines_changed":170},{"name":"docs/parsers/jobs.md","lines_changed":190},{"name":"docs/parsers/kv.md","lines_changed":106},{"name":"docs/parsers/last.md","lines_changed":207},{"name":"docs/parsers/ls.md","lines_changed":210},{"name":"docs/parsers/ls_s.md","lines_changed":152},{"name":"docs/parsers/lsblk.md","lines_changed":548},{"name":"docs/parsers/lsmod.md","lines_changed":260},{"name":"docs/parsers/lsof.md","lines_changed":248},{"name":"docs/parsers/lsusb.md","lines_changed":518},{"name":"docs/parsers/mount.md","lines_changed":160},{"name":"docs/parsers/netstat.md","lines_changed":702},{"name":"docs/parsers/ntpq.md","lines_changed":422},{"name":"docs/parsers/passwd.md","lines_changed":202},{"name":"docs/parsers/ping.md","lines_changed":328},{"name":"docs/parsers/ping_s.md","lines_changed":182},{"name":"docs/parsers/pip_list.md","lines_changed":106},{"name":"docs/parsers/pip_show.md","lines_changed":142},{"name":"docs/parsers/ps.md","lines_changed":414},{"name":"docs/parsers/route.md","lines_changed":226},{"name":"docs/parsers/rpm_qi.md","lines_changed":318},{"name":"docs/parsers/sfdisk.md","lines_changed":396},{"name":"docs/parsers/shadow.md","lines_changed":216},{"name":"docs/parsers/ss.md","lines_changed":552},{"name":"docs/parsers/stat.md","lines_changed":338},{"name":"docs/parsers/stat_s.md","lines_changed":174},{"name":"docs/parsers/sysctl.md","lines_changed":120},{"name":"docs/parsers/systemctl.md","lines_changed":126},{"name":"docs/parsers/systemctl_lj.md","lines_changed":162},{"name":"docs/parsers/systemctl_ls.md","lines_changed":112},{"name":"docs/parsers/systemctl_luf.md","lines_changed":104},{"name":"docs/parsers/systeminfo.md","lines_changed":416},{"name":"docs/parsers/time.md","lines_changed":262},{"name":"docs/parsers/timedatectl.md","lines_changed":132},{"name":"docs/parsers/tracepath.md","lines_changed":268},{"name":"docs/parsers/traceroute.md","lines_changed":288},{"name":"docs/parsers/ufw.md","lines_changed":410},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":272},{"name":"docs/parsers/uname.md","lines_changed":100},{"name":"docs/parsers/universal.md","lines_changed":85},{"name":"docs/parsers/upower.md","lines_changed":394},{"name":"docs/parsers/uptime.md","lines_changed":140},{"name":"docs/parsers/vmstat.md","lines_changed":246},{"name":"docs/parsers/vmstat_s.md","lines_changed":194},{"name":"docs/parsers/w.md","lines_changed":216},{"name":"docs/parsers/wc.md","lines_changed":118},{"name":"docs/parsers/who.md","lines_changed":270},{"name":"docs/parsers/xml.md","lines_changed":154},{"name":"docs/parsers/yaml.md","lines_changed":182},{"name":"docs/parsers/zipinfo.md","lines_changed":158},{"name":"docs/readme.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":223},{"name":"jc/cli.py","lines_changed":4},{"name":"man/jc.1","lines_changed":12}]}},{"commit":"6fad44e35df5d0e33e716d0fcb84ed309e6fd30b","message":"fix type hint","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]}},{"commit":"1caac750daa25a5abeb1289964e918ec06289bfc","message":"Update type hints","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":4}]}},{"commit":"16370dcb3d5cf1304c2340ef2253ef2987a982b4","message":"update type hints","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]}},{"commit":"c1302f2573993a6908001d6df0697486f54a9e7e","message":"add type-hints to public api","stats":{"files_changed":1,"insertions":19,"deletions":8,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":27}]}},{"commit":"6f0ffe0955e4d9d6cc82552cf4e4f419e3ff3756","message":"docu update","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]}},{"commit":"1f89745fe7cca3a0ac27445942098b717675a481","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"a46ac18ef775bb2c52675e61e11c5d92f33cbe81","message":"doc update","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]}},{"commit":"1a05f1c575b57456481e41baaf551cef30115966","message":"add parser info functions. move _get_parser functionality from cli to lib","stats":{"files_changed":3,"insertions":64,"deletions":54,"files":["jc/__init__.py","jc/cli.py","jc/lib.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":4},{"name":"jc/cli.py","lines_changed":48},{"name":"jc/lib.py","lines_changed":66}]}},{"commit":"08f818aa42ca68050a79ec387c42bff265257fd5","message":"Merge pull request #199 from kellyjonbrazil/master"},{"commit":"b3896650c230b4acc73704a50c93ee74e4034eef","message":"revert column formatting","stats":{"files_changed":2,"insertions":62,"deletions":104,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":83},{"name":"templates/readme_template","lines_changed":83}]}},{"commit":"f285539526998a5097943c71dcecb2979036b2b0","message":"conform to 80 columns","stats":{"files_changed":2,"insertions":104,"deletions":62,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":83},{"name":"templates/readme_template","lines_changed":83}]}},{"commit":"a896dcdf3b31b60582ebb1b3bca5d1103f998dd6","message":"formatting","stats":{"files_changed":2,"insertions":338,"deletions":120,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":229},{"name":"templates/readme_template","lines_changed":229}]}},{"commit":"0a187d4ed08173ec360a006ae2367bb1f2f96c52","message":"add console interview links","stats":{"files_changed":3,"insertions":7,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":4}]}},{"commit":"2d65bc57d5a396e6683f970194de29494b5c1272","message":"add quotes","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":6},{"name":"jc/__init__.py","lines_changed":6}]}},{"commit":"ab63809fde0cefe1f0401d957a3736fdb760f0cf","message":"update description","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]}},{"commit":"6f04707dc63936efd0e533ae36e1b39ead10c466","message":"add python package doc info to top of page","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"d14a86a9b58bdc3cb0c8df1dfa495aefdaab8033","message":"fix typo","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2}]}},{"commit":"8e6a31d3da19926ac46744e02b27a899ca5fbd7c","message":"minor fix for macOS binary","stats":{"files_changed":6,"insertions":14,"deletions":8,"files":["CHANGELOG","docs/readme.md","jc/__init__.py","jc/lib.py","man/jc.1","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4},{"name":"jc/lib.py","lines_changed":7},{"name":"man/jc.1","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"6e7b6afe87355e96422bb2560ffcbd5e79d28f04","message":"Merge pull request #198 from kellyjonbrazil/dev"},{"commit":"027c231097a002526350a93322407582a85db0cb","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]}},{"commit":"f1cf7d1f953586dd44a4463d924f1a1f52717c37","message":"add helper function info","stats":{"files_changed":2,"insertions":7,"deletions":5,"files":["jc/parsers/foo.py","jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":6},{"name":"jc/parsers/foo_s.py","lines_changed":6}]}},{"commit":"df611cc263f50285e74ceb3381f55b43a74870a0","message":"formatting","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":6},{"name":"jc/__init__.py","lines_changed":6}]}},{"commit":"0f3143bbbb593340190e66729580146410012e14","message":"formatting","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":6},{"name":"jc/__init__.py","lines_changed":6}]}},{"commit":"c280757b7624a46543e481ca47a6e084d2d6f519","message":"formatting","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]}},{"commit":"d30b9d84ef5ec3a2a504f7ea251c932b8c9ea878","message":"formatting","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]}},{"commit":"50ded1dbd97d26cf01d7e1a98b40e0f0f7d02202","message":"doc update","stats":{"files_changed":1,"insertions":10,"deletions":4,"files":["docs/readme.md"],"file_stats":[{"name":"docs/readme.md","lines_changed":14}]}},{"commit":"e319aea5a45c598a44f35b4e58131d977509e4f3","message":"add doc version info","stats":{"files_changed":1,"insertions":10,"deletions":4,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":14}]}},{"commit":"ba86509c1d8700a50fe14e9d931ee57261306c5f","message":"simplify OSError exception handling","stats":{"files_changed":1,"insertions":3,"deletions":9,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":12}]}},{"commit":"0a9279ae6bfdd1aa59f5e9b31ce0af3bfec19f96","message":"doc update","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["CHANGELOG","tests/test_lib.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":5},{"name":"tests/test_lib.py","lines_changed":1}]}},{"commit":"a13dde12af01b4473aa9a34b8a0d7387fb48500a","message":"change raw output wording","stats":{"files_changed":173,"insertions":173,"deletions":173,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/dpkg_l.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/finger.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/gshadow.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iostat.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/jar_manifest.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/kv.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/stat_s.md","lines_changed":2},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"docs/parsers/zipinfo.md","lines_changed":2},{"name":"jc/parsers/acpi.py","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/blkid.py","lines_changed":2},{"name":"jc/parsers/cksum.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"jc/parsers/csv.py","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/dir.py","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":2},{"name":"jc/parsers/dpkg_l.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/finger.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/group.py","lines_changed":2},{"name":"jc/parsers/gshadow.py","lines_changed":2},{"name":"jc/parsers/hash.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":2},{"name":"jc/parsers/hciconfig.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/iostat.py","lines_changed":2},{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2},{"name":"jc/parsers/jar_manifest.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/kv.py","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/lsusb.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/ntpq.py","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":2},{"name":"jc/parsers/ping.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/rpm_qi.py","lines_changed":2},{"name":"jc/parsers/sfdisk.py","lines_changed":2},{"name":"jc/parsers/shadow.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/stat_s.py","lines_changed":2},{"name":"jc/parsers/sysctl.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/systeminfo.py","lines_changed":2},{"name":"jc/parsers/time.py","lines_changed":2},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/ufw.py","lines_changed":2},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/parsers/wc.py","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":2},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2},{"name":"jc/parsers/zipinfo.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"e2ed358de1abefd737c187a324cbe4734d6975e8","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]}},{"commit":"a2cd3666210be3727a00c3405972f32fbd421046","message":"Delete _config.yml","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["docs/_config.yml"],"file_stats":[{"name":"docs/_config.yml","lines_changed":1}]}},{"commit":"15addd9bfc18a0e87beb97040b431c872b783662","message":"doc fix","stats":{"files_changed":2,"insertions":4,"deletions":8,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":5},{"name":"jc/parsers/universal.py","lines_changed":7}]}},{"commit":"a4e34b0053ec0c032f4783caaa3e07fc2c685a98","message":"add universal parser docs","stats":{"files_changed":2,"insertions":63,"deletions":0,"files":["docgen.sh","docs/parsers/universal.md"],"file_stats":[{"name":"docgen.sh","lines_changed":3},{"name":"docs/parsers/universal.md","lines_changed":60}]}},{"commit":"d09529ac302fbcc156d58cf836f8397c98121a76","message":"changelog update","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]}},{"commit":"553097b5050dc02fbdaeec2e2e138e01bc6811d9","message":"docstring update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":2}]}},{"commit":"49c556857708307f617b2b516f2d281398681b5b","message":"module doc update","stats":{"files_changed":7,"insertions":35,"deletions":15,"files":["README.md","docs/lib.md","docs/readme.md","jc/__init__.py","jc/lib.py","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/lib.md","lines_changed":9},{"name":"docs/readme.md","lines_changed":13},{"name":"jc/__init__.py","lines_changed":13},{"name":"jc/lib.py","lines_changed":9},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"6962b9ee8a52c924dc2de6b79ddeea3636e80fe4","message":"formatting","stats":{"files_changed":2,"insertions":8,"deletions":6,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":7},{"name":"jc/lib.py","lines_changed":7}]}},{"commit":"b4575a3f780f9aa2751c8b4789f67aaca32dd1cb","message":"add lib docs","stats":{"files_changed":3,"insertions":91,"deletions":1,"files":["docgen.sh","docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docgen.sh","lines_changed":4},{"name":"docs/lib.md","lines_changed":86},{"name":"jc/lib.py","lines_changed":2}]}},{"commit":"35b54d235d73b2ce658223be3d6095906f142d89","message":"add python package doc info","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"templates/readme_template","lines_changed":3}]}},{"commit":"583a5757e454a4e36b331057d1266279b55ee16a","message":"formatting","stats":{"files_changed":18,"insertions":34,"deletions":30,"files":["docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/file.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/traceroute.md","docs/parsers/ufw_appinfo.md","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/file.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/traceroute.py","jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":6},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":9},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":6},{"name":"jc/parsers/ls.py","lines_changed":5},{"name":"jc/parsers/ls_s.py","lines_changed":9},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":2}]}},{"commit":"f355333eeed3c4afba844dc7bed5224356552adc","message":"formatting","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":8},{"name":"jc/__init__.py","lines_changed":8}]}},{"commit":"4d7df109604e4f8367904968602acfc05217a7fe","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]}},{"commit":"66b2c28f4bc75fb76800f9fb7ea485eee194a9a2","message":"formatting","stats":{"files_changed":2,"insertions":24,"deletions":24,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":24},{"name":"jc/__init__.py","lines_changed":24}]}},{"commit":"299a9c6d88fdf1fede447b4057d8f4263daef733","message":"formatting","stats":{"files_changed":2,"insertions":25,"deletions":57,"files":["docs/parsers/csv.md","docs/readme.md"],"file_stats":[{"name":"docs/parsers/csv.md","lines_changed":4},{"name":"docs/readme.md","lines_changed":78}]}},{"commit":"bd391d979ce98b126dab0f012a56b3fcb1f73439","message":"add lib function docs","stats":{"files_changed":1,"insertions":23,"deletions":55,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":78}]}},{"commit":"7309bd2282445f6daef0b1491ff60b8104500abb","message":"add get_help","stats":{"files_changed":3,"insertions":19,"deletions":10,"files":["jc/lib.py","jc/parsers/csv.py","jc/parsers/universal.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":15},{"name":"jc/parsers/csv.py","lines_changed":4},{"name":"jc/parsers/universal.py","lines_changed":10}]}},{"commit":"ce84c09d3394b598f19a3e012ef27ce4154e3b3b","message":"add get_help()","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":3}]}},{"commit":"b4fffbb6476daf78fbdf19dbf31bbeeab950d2dc","message":"formatting","stats":{"files_changed":46,"insertions":501,"deletions":304,"files":["docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/history.md","docs/parsers/ini.md","docs/parsers/iostat_s.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsusb.md","docs/parsers/netstat.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/ps.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/upower.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/who.md"],"file_stats":[{"name":"docs/parsers/crontab.md","lines_changed":3},{"name":"docs/parsers/crontab_u.md","lines_changed":22},{"name":"docs/parsers/csv.md","lines_changed":9},{"name":"docs/parsers/csv_s.md","lines_changed":35},{"name":"docs/parsers/date.md","lines_changed":18},{"name":"docs/parsers/dig.md","lines_changed":16},{"name":"docs/parsers/dir.md","lines_changed":6},{"name":"docs/parsers/dpkg_l.md","lines_changed":7},{"name":"docs/parsers/du.md","lines_changed":20},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":8},{"name":"docs/parsers/ini.md","lines_changed":15},{"name":"docs/parsers/iostat_s.md","lines_changed":25},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jar_manifest.md","lines_changed":25},{"name":"docs/parsers/jobs.md","lines_changed":3},{"name":"docs/parsers/kv.md","lines_changed":11},{"name":"docs/parsers/last.md","lines_changed":10},{"name":"docs/parsers/ls.md","lines_changed":19},{"name":"docs/parsers/ls_s.md","lines_changed":51},{"name":"docs/parsers/lsblk.md","lines_changed":10},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":3},{"name":"docs/parsers/ping.md","lines_changed":32},{"name":"docs/parsers/ping_s.md","lines_changed":85},{"name":"docs/parsers/ps.md","lines_changed":8},{"name":"docs/parsers/rpm_qi.md","lines_changed":37},{"name":"docs/parsers/sfdisk.md","lines_changed":8},{"name":"docs/parsers/ss.md","lines_changed":6},{"name":"docs/parsers/stat.md","lines_changed":6},{"name":"docs/parsers/stat_s.md","lines_changed":27},{"name":"docs/parsers/sysctl.md","lines_changed":7},{"name":"docs/parsers/systemctl.md","lines_changed":4},{"name":"docs/parsers/systemctl_ls.md","lines_changed":3},{"name":"docs/parsers/systemctl_luf.md","lines_changed":3},{"name":"docs/parsers/systeminfo.md","lines_changed":19},{"name":"docs/parsers/time.md","lines_changed":33},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"docs/parsers/ufw.md","lines_changed":7},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":28},{"name":"docs/parsers/upower.md","lines_changed":16},{"name":"docs/parsers/vmstat.md","lines_changed":13},{"name":"docs/parsers/vmstat_s.md","lines_changed":111},{"name":"docs/parsers/who.md","lines_changed":7}]}},{"commit":"3701b4198aad1826ad6da571fbcaa530b057cc48","message":"formatting","stats":{"files_changed":86,"insertions":710,"deletions":606,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":5},{"name":"jc/parsers/airport.py","lines_changed":7},{"name":"jc/parsers/airport_s.py","lines_changed":3},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/blkid.py","lines_changed":10},{"name":"jc/parsers/cksum.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":6},{"name":"jc/parsers/crontab_u.py","lines_changed":25},{"name":"jc/parsers/csv.py","lines_changed":14},{"name":"jc/parsers/csv_s.py","lines_changed":38},{"name":"jc/parsers/date.py","lines_changed":69},{"name":"jc/parsers/df.py","lines_changed":13},{"name":"jc/parsers/dig.py","lines_changed":28},{"name":"jc/parsers/dir.py","lines_changed":8},{"name":"jc/parsers/dmidecode.py","lines_changed":3},{"name":"jc/parsers/dpkg_l.py","lines_changed":10},{"name":"jc/parsers/du.py","lines_changed":23},{"name":"jc/parsers/env.py","lines_changed":7},{"name":"jc/parsers/file.py","lines_changed":6},{"name":"jc/parsers/finger.py","lines_changed":14},{"name":"jc/parsers/foo.py","lines_changed":3},{"name":"jc/parsers/foo_s.py","lines_changed":23},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/group.py","lines_changed":3},{"name":"jc/parsers/gshadow.py","lines_changed":3},{"name":"jc/parsers/hash.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":5},{"name":"jc/parsers/hciconfig.py","lines_changed":13},{"name":"jc/parsers/history.py","lines_changed":10},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":3},{"name":"jc/parsers/ifconfig.py","lines_changed":20},{"name":"jc/parsers/ini.py","lines_changed":23},{"name":"jc/parsers/iostat_s.py","lines_changed":25},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":11},{"name":"jc/parsers/jar_manifest.py","lines_changed":25},{"name":"jc/parsers/jobs.py","lines_changed":5},{"name":"jc/parsers/kv.py","lines_changed":13},{"name":"jc/parsers/last.py","lines_changed":17},{"name":"jc/parsers/ls.py","lines_changed":21},{"name":"jc/parsers/ls_s.py","lines_changed":53},{"name":"jc/parsers/lsblk.py","lines_changed":15},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/lsusb.py","lines_changed":5},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":20},{"name":"jc/parsers/ntpq.py","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":3},{"name":"jc/parsers/ping.py","lines_changed":46},{"name":"jc/parsers/ping_s.py","lines_changed":99},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":10},{"name":"jc/parsers/route.py","lines_changed":6},{"name":"jc/parsers/rpm_qi.py","lines_changed":40},{"name":"jc/parsers/sfdisk.py","lines_changed":16},{"name":"jc/parsers/shadow.py","lines_changed":3},{"name":"jc/parsers/ss.py","lines_changed":8},{"name":"jc/parsers/stat.py","lines_changed":12},{"name":"jc/parsers/stat_s.py","lines_changed":31},{"name":"jc/parsers/sysctl.py","lines_changed":10},{"name":"jc/parsers/systemctl.py","lines_changed":6},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":5},{"name":"jc/parsers/systemctl_luf.py","lines_changed":5},{"name":"jc/parsers/systeminfo.py","lines_changed":31},{"name":"jc/parsers/time.py","lines_changed":51},{"name":"jc/parsers/timedatectl.py","lines_changed":8},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":7},{"name":"jc/parsers/ufw.py","lines_changed":7},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":28},{"name":"jc/parsers/uname.py","lines_changed":4},{"name":"jc/parsers/universal.py","lines_changed":40},{"name":"jc/parsers/upower.py","lines_changed":32},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":28},{"name":"jc/parsers/vmstat_s.py","lines_changed":125},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/parsers/wc.py","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":10},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2}]}},{"commit":"d4c34098fa7ad2098076f0fa0564467e5d06f916","message":"formatting","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":5}]}},{"commit":"b3c531193b3fc53697e7d7823576f481f9462d53","message":"formatting","stats":{"files_changed":3,"insertions":125,"deletions":71,"files":["CHANGELOG","docs/utils.md","jc/utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docs/utils.md","lines_changed":79},{"name":"jc/utils.py","lines_changed":114}]}},{"commit":"1d0e07c77bab5c48405323e52873c7952dd0a587","message":"formatting","stats":{"files_changed":3,"insertions":57,"deletions":55,"files":["docs/readme.md","jc/__init__.py","jc/lib.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":33},{"name":"jc/__init__.py","lines_changed":33},{"name":"jc/lib.py","lines_changed":46}]}},{"commit":"06a322cf9c7468dc7e8ba05914e1d07bbc51f63a","message":"rename tests and add conversion function tests","stats":{"files_changed":1,"insertions":14,"deletions":8,"files":["tests/test_lib.py"],"file_stats":[{"name":"tests/test_lib.py","lines_changed":22}]}},{"commit":"623d148712f93eacf9b7b5803140603f0af67acb","message":"doc update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]}},{"commit":"647e83d0439a0937db14a2cc97929e38a6b6a43b","message":"add test to ensure there are zero plugin parsers installed during tests","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["tests/test_lib.py"],"file_stats":[{"name":"tests/test_lib.py","lines_changed":3}]}},{"commit":"91a554464444da0cc3ed3b4d212539232411f6cc","message":"doc update","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":5}]}},{"commit":"a1190998aef1bf403ee34c38c1a0fbd6291ac38b","message":"add jc and jc.lib tests","stats":{"files_changed":2,"insertions":82,"deletions":0,"files":["tests/test_jc.py","tests/test_lib.py"],"file_stats":[{"name":"tests/test_jc.py","lines_changed":41},{"name":"tests/test_lib.py","lines_changed":41}]}},{"commit":"097d7a1850f6f6df73a5761c657b73ef9dbd3e29","message":"simplify __init__","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":4}]}},{"commit":"302bf72e720b3a67fbf1300eaff4f99fc343abeb","message":"Update high-level API docs","stats":{"files_changed":138,"insertions":718,"deletions":6,"files":["docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py"],"file_stats":[{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":5},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iostat.md","lines_changed":5},{"name":"docs/parsers/iostat_s.md","lines_changed":7},{"name":"docs/parsers/iptables.md","lines_changed":7},{"name":"docs/parsers/iw_scan.md","lines_changed":9},{"name":"docs/parsers/jar_manifest.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":7},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/ping_s.md","lines_changed":7},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/sfdisk.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/stat_s.md","lines_changed":7},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/systeminfo.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"docs/parsers/ufw.md","lines_changed":5},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/vmstat.md","lines_changed":5},{"name":"docs/parsers/vmstat_s.md","lines_changed":7},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5},{"name":"docs/parsers/zipinfo.md","lines_changed":5},{"name":"jc/parsers/env.py","lines_changed":5},{"name":"jc/parsers/file.py","lines_changed":5},{"name":"jc/parsers/finger.py","lines_changed":5},{"name":"jc/parsers/foo.py","lines_changed":5},{"name":"jc/parsers/foo_s.py","lines_changed":7},{"name":"jc/parsers/free.py","lines_changed":5},{"name":"jc/parsers/fstab.py","lines_changed":5},{"name":"jc/parsers/group.py","lines_changed":5},{"name":"jc/parsers/gshadow.py","lines_changed":5},{"name":"jc/parsers/hash.py","lines_changed":5},{"name":"jc/parsers/hashsum.py","lines_changed":5},{"name":"jc/parsers/hciconfig.py","lines_changed":5},{"name":"jc/parsers/history.py","lines_changed":5},{"name":"jc/parsers/hosts.py","lines_changed":5},{"name":"jc/parsers/id.py","lines_changed":5},{"name":"jc/parsers/ifconfig.py","lines_changed":5},{"name":"jc/parsers/ini.py","lines_changed":5},{"name":"jc/parsers/iostat.py","lines_changed":5},{"name":"jc/parsers/iostat_s.py","lines_changed":7},{"name":"jc/parsers/iptables.py","lines_changed":7},{"name":"jc/parsers/iw_scan.py","lines_changed":9},{"name":"jc/parsers/jar_manifest.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":5},{"name":"jc/parsers/kv.py","lines_changed":5},{"name":"jc/parsers/last.py","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":5},{"name":"jc/parsers/ls_s.py","lines_changed":7},{"name":"jc/parsers/lsblk.py","lines_changed":5},{"name":"jc/parsers/lsmod.py","lines_changed":5},{"name":"jc/parsers/lsof.py","lines_changed":5},{"name":"jc/parsers/lsusb.py","lines_changed":5},{"name":"jc/parsers/mount.py","lines_changed":5},{"name":"jc/parsers/netstat.py","lines_changed":5},{"name":"jc/parsers/ntpq.py","lines_changed":5},{"name":"jc/parsers/passwd.py","lines_changed":5},{"name":"jc/parsers/ping.py","lines_changed":5},{"name":"jc/parsers/ping_s.py","lines_changed":7},{"name":"jc/parsers/pip_list.py","lines_changed":5},{"name":"jc/parsers/pip_show.py","lines_changed":5},{"name":"jc/parsers/ps.py","lines_changed":5},{"name":"jc/parsers/route.py","lines_changed":5},{"name":"jc/parsers/rpm_qi.py","lines_changed":5},{"name":"jc/parsers/sfdisk.py","lines_changed":5},{"name":"jc/parsers/shadow.py","lines_changed":5},{"name":"jc/parsers/ss.py","lines_changed":5},{"name":"jc/parsers/stat.py","lines_changed":5},{"name":"jc/parsers/stat_s.py","lines_changed":7},{"name":"jc/parsers/sysctl.py","lines_changed":5},{"name":"jc/parsers/systemctl.py","lines_changed":5},{"name":"jc/parsers/systemctl_lj.py","lines_changed":5},{"name":"jc/parsers/systemctl_ls.py","lines_changed":5},{"name":"jc/parsers/systemctl_luf.py","lines_changed":5},{"name":"jc/parsers/systeminfo.py","lines_changed":5},{"name":"jc/parsers/time.py","lines_changed":5},{"name":"jc/parsers/timedatectl.py","lines_changed":5},{"name":"jc/parsers/tracepath.py","lines_changed":5},{"name":"jc/parsers/traceroute.py","lines_changed":5},{"name":"jc/parsers/ufw.py","lines_changed":5},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":5},{"name":"jc/parsers/uname.py","lines_changed":5},{"name":"jc/parsers/upower.py","lines_changed":5},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/vmstat.py","lines_changed":5},{"name":"jc/parsers/vmstat_s.py","lines_changed":7},{"name":"jc/parsers/w.py","lines_changed":5},{"name":"jc/parsers/wc.py","lines_changed":5},{"name":"jc/parsers/who.py","lines_changed":5},{"name":"jc/parsers/xml.py","lines_changed":5},{"name":"jc/parsers/yaml.py","lines_changed":5},{"name":"jc/parsers/zipinfo.py","lines_changed":5}]}},{"commit":"2c42baf3a4dd6733c078f31a1becd708a05f2c36","message":"add new high-level api info","stats":{"files_changed":34,"insertions":174,"deletions":0,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/csv_s.md","lines_changed":7},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"jc/parsers/acpi.py","lines_changed":5},{"name":"jc/parsers/airport.py","lines_changed":5},{"name":"jc/parsers/airport_s.py","lines_changed":5},{"name":"jc/parsers/arp.py","lines_changed":5},{"name":"jc/parsers/blkid.py","lines_changed":5},{"name":"jc/parsers/cksum.py","lines_changed":5},{"name":"jc/parsers/crontab.py","lines_changed":5},{"name":"jc/parsers/crontab_u.py","lines_changed":5},{"name":"jc/parsers/csv.py","lines_changed":5},{"name":"jc/parsers/csv_s.py","lines_changed":7},{"name":"jc/parsers/date.py","lines_changed":5},{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":5},{"name":"jc/parsers/dir.py","lines_changed":5},{"name":"jc/parsers/dmidecode.py","lines_changed":5},{"name":"jc/parsers/dpkg_l.py","lines_changed":5},{"name":"jc/parsers/du.py","lines_changed":5}]}},{"commit":"03feb89c84096c0ea1d6ae3a0634ae7b8b507e8f","message":"add module list info","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2}]}},{"commit":"9dd553192fbca3037b3afe5df6bae88f7a8a9365","message":"doc update","stats":{"files_changed":5,"insertions":29,"deletions":12,"files":["CHANGELOG","README.md","docs/readme.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":10},{"name":"docs/readme.md","lines_changed":16},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":10}]}},{"commit":"fa3f02e9d1ac7867e3465c2d214f4e4229ff4c66","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"0a9dde58c5235f78c4c9ae9c013f7454482c6067","message":"add jc.parse() high-level API","stats":{"files_changed":3,"insertions":228,"deletions":134,"files":["jc/__init__.py","jc/cli.py","jc/lib.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":22},{"name":"jc/cli.py","lines_changed":154},{"name":"jc/lib.py","lines_changed":186}]}},{"commit":"70cb4453bebb235130e2c287633ecb1de6c2b0aa","message":"Merge pull request #195 from kellyjonbrazil/dev"},{"commit":"830674cc6f19e107347a743baff7bbaab7f80b75","message":"version bump","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["CHANGELOG","jc/__init__.py","man/jc.1","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"fb406b58a12fdfe81bcff76671661af77e7f2fe5","message":"formatting","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["docs/parsers/stat_s.md","jc/parsers/stat_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/stat_s.md","lines_changed":4},{"name":"jc/parsers/stat_s.py","lines_changed":4},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"55b272e41259ddc835cf4eb513fb67e7b2cf1573","message":"tighten stat data detection","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":2}]}},{"commit":"94f62a9bf36242310790a0f37c66b2e6c6fdc078","message":"formatting","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/stat_s.md","jc/parsers/stat_s.py"],"file_stats":[{"name":"docs/parsers/stat_s.md","lines_changed":6},{"name":"jc/parsers/stat_s.py","lines_changed":6}]}},{"commit":"8d19e4cb7b45e3b6cb8c404c959949b7593c9386","message":"doc update","stats":{"files_changed":4,"insertions":115,"deletions":1,"files":["CHANGELOG","README.md","docs/parsers/stat_s.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/stat_s.md","lines_changed":105},{"name":"man/jc.1","lines_changed":7}]}},{"commit":"7e510d48e0f8426a67cf8d70d06d0331c274d358","message":"simplify non-stat parse error logic","stats":{"files_changed":7,"insertions":106,"deletions":2,"files":["jc/parsers/stat_s.py","tests/fixtures/centos-7.7/stat-streaming.json","tests/fixtures/freebsd12/stat-streaming.json",".../stat-filename-with-spaces-streaming.json","tests/fixtures/osx-10.14.6/stat-streaming.json","tests/fixtures/ubuntu-18.04/stat-streaming.json","tests/test_stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":3},{"name":"tests/fixtures/centos-7.7/stat-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/stat-streaming.json","lines_changed":1},{"name":".../stat-filename-with-spaces-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/stat-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/stat-streaming.json","lines_changed":1},{"name":"tests/test_stat_s.py","lines_changed":100}]}},{"commit":"7b20cffb143447f4497bc4e895eac2426e8a519f","message":"simplify last item logic","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":8}]}},{"commit":"5c934c43c13b69183561da8a77280feb3363e950","message":"add continue to simplify logic","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":2}]}},{"commit":"8609298449e997ba4804d818f4fc23cb393ded7d","message":"update docstring","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":8}]}},{"commit":"72cb0dc10b2dac486d3e2a52cf44baf0d7496034","message":"fixup for first and last items","stats":{"files_changed":1,"insertions":14,"deletions":10,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":24}]}},{"commit":"7b22fa81ded0f6f59e250ffea63c5d2a0f928b25","message":"raise for non-stat data","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":8}]}},{"commit":"0b6a1307790e0793917bc2781e4873aa9dd67225","message":"ignore blank lines","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":4}]}},{"commit":"fdcf4338e0f099699f8d48df6382be1cc97dba84","message":"add examples to docstring","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":6}]}},{"commit":"ee43037f481286a34a766390568965fdd53af132","message":"remove unused continue lines","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":2}]}},{"commit":"26e365563c314e694915c7a3feae490ea99a112c","message":"add schema and _process logic","stats":{"files_changed":1,"insertions":50,"deletions":11,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":61}]}},{"commit":"1b39586bb1b62aee8ae709512c2e3f79cefdb3d9","message":"add stat streaming parser","stats":{"files_changed":2,"insertions":227,"deletions":0,"files":["jc/cli.py","jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/stat_s.py","lines_changed":226}]}},{"commit":"8bb3a6bea34d60d49039f1ed72fd7e413edc05da","message":"Merge pull request #194 from kellyjonbrazil/master"},{"commit":"e6900e2000bf265dfcfc09ffbfda39e9238661af","message":"add jar-manifest","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":21}]}},{"commit":"0ee244756bf39123e4873eb231156edbe7f0e0ec","message":"spelling","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/jar_manifest.md","jc/parsers/jar_manifest.py"],"file_stats":[{"name":"docs/parsers/jar_manifest.md","lines_changed":2},{"name":"jc/parsers/jar_manifest.py","lines_changed":2}]}},{"commit":"6d5ac9abe6712e01887ce0d96c278a568319f405","message":"update docs","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["docs/parsers/csv.md","docs/parsers/csv_s.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"44f6d9e1321459be8196aeebf6db088cc5120e61","message":"changelog update","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]}},{"commit":"360154559c5dee6affa55bbdd5d2f473248b9168","message":"Merge pull request #193 from kellyjonbrazil/dev"},{"commit":"78672bd7ad66c418e0ecf31add73f887b0946d29","message":"Merge pull request #190 from shaikustin/csv-doubleqouted"},{"commit":"65d96e26b59e231c77c1dbba1dc91708c33de30c","message":"add streaming tests","stats":{"files_changed":2,"insertions":13,"deletions":0,"files":["tests/fixtures/generic/csv-doubleqouted-streaming.json","tests/test_csv_s.py"],"file_stats":[{"name":"tests/fixtures/generic/csv-doubleqouted-streaming.json","lines_changed":1},{"name":"tests/test_csv_s.py","lines_changed":12}]}},{"commit":"241d53af9a5c9bba70e28835e22c52c0060269ba","message":"Merge pull request #192 from kellyjonbrazil/dev"},{"commit":"5563829df2849a899df2e9211d6c92bddc695f9b","message":"make dialect sniff behavior match non-streaming parser","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":8}]}},{"commit":"3a4a27e1f94ee07352c7616c57ec655c1aea04f6","message":"version bump","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/csv.py"],"file_stats":[{"name":"jc/parsers/csv.py","lines_changed":4}]}},{"commit":"9c887a36a804d817c3f669a55b9b1566d09d645d","message":"update csv_s parser with csv changes","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":6}]}},{"commit":"bc7973af36e13006230b5faa9e201e300d468912","message":"update copyright","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","jc/cli.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"32972d8fdbdc71923978fd5c2a87fd6cfa4b7f8e","message":"doc update","stats":{"files_changed":7,"insertions":122,"deletions":9,"files":["CHANGELOG","README.md","docs/parsers/jar_manifest.md","jc/__init__.py","jc/parsers/jar_manifest.py","man/jc.1","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/jar_manifest.md","lines_changed":104},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/parsers/jar_manifest.py","lines_changed":12},{"name":"man/jc.1","lines_changed":7},{"name":"setup.py","lines_changed":2}]}},{"commit":"b128d9109cbdb1176f2473d450023bb0be02531b","message":"add MANIFEST.MF tests","stats":{"files_changed":1,"insertions":46,"deletions":0,"files":["tests/test_jar_manifest.py"],"file_stats":[{"name":"tests/test_jar_manifest.py","lines_changed":46}]}},{"commit":"929d7273a422c2bd5b83e5e19d32630f1a027f75","message":"doc updates","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/jar_manifest.py"],"file_stats":[{"name":"jc/parsers/jar_manifest.py","lines_changed":8}]}},{"commit":"2a40f842743a8745d651b4b6cae645045e6c6aab","message":"fix doubleqoute in csv","stats":{"files_changed":4,"insertions":22,"deletions":1,"files":["jc/parsers/csv.py","tests/fixtures/generic/csv-doubleqouted.csv","tests/fixtures/generic/csv-doubleqouted.json","tests/test_csv.py"],"file_stats":[{"name":"jc/parsers/csv.py","lines_changed":4},{"name":"tests/fixtures/generic/csv-doubleqouted.csv","lines_changed":3},{"name":"tests/fixtures/generic/csv-doubleqouted.json","lines_changed":4},{"name":"tests/test_csv.py","lines_changed":12}]}},{"commit":"9ff6fa818f0857321e4b3b089d288997f2ae27af","message":"add jar-manifest","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]}},{"commit":"dac73a4bfe24e36474fdf6ff60c23e784ca409bd","message":"Merge pull request #189 from kellyjonbrazil/master"},{"commit":"d7895547f74744e82317eabe4c870115701872be","message":"Merge pull request #188 from listuser/new_branch"},{"commit":"b7d439cb870e443e4f4e4a2137ab170835e77eff","message":"Renamed jar-manifest.py to jar_manifest.py, added multi manifest outputs to tests...","stats":{"files_changed":3,"insertions":2220,"deletions":9,"files":["jc/parsers/{jar-manifest.py => jar_manifest.py}","tests/fixtures/rhel-8/MANIFEST.MF.MULTI.json","tests/fixtures/rhel-8/MANIFEST.MF.MULTI.out"],"file_stats":[{"name":"jc/parsers/{jar-manifest.py => jar_manifest.py}","lines_changed":18},{"name":"tests/fixtures/rhel-8/MANIFEST.MF.MULTI.json","lines_changed":1},{"name":"tests/fixtures/rhel-8/MANIFEST.MF.MULTI.out","lines_changed":2210}]}},{"commit":"7cc903a5f5ca368be97babadc72689375567a901","message":"Removed inflating from examples in jar-manifest.py","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/jar-manifest.py"],"file_stats":[{"name":"jc/parsers/jar-manifest.py","lines_changed":3}]}},{"commit":"c495a8291bd3e1fd070ee2e018b9b550f9c86314","message":"Updated test output in MANIFEST.MF.json","stats":{"files_changed":1,"insertions":1,"deletions":292,"files":["tests/fixtures/rhel-8/MANIFEST.MF.json"],"file_stats":[{"name":"tests/fixtures/rhel-8/MANIFEST.MF.json","lines_changed":293}]}},{"commit":"5e1d7d777c627fb17feda6e51d9640bbd0f03302","message":"Renamed metamf.py to jar-manifest.py, plus other changes","stats":{"files_changed":8,"insertions":304,"deletions":2544,"files":["jc/parsers/{metamf.py => jar-manifest.py}","tests/fixtures/rhel-8/MANIFEST.MF.json",".../rhel-8/{MANIFEST.MF => MANIFEST.MF.out}",".../rhel-8/cmds_used_to_generate_test_data.txt",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out"],"file_stats":[{"name":"jc/parsers/{metamf.py => jar-manifest.py}","lines_changed":34},{"name":"tests/fixtures/rhel-8/MANIFEST.MF.json","lines_changed":293},{"name":".../rhel-8/{MANIFEST.MF => MANIFEST.MF.out}","lines_changed":0},{"name":".../rhel-8/cmds_used_to_generate_test_data.txt","lines_changed":14},{"name":".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json","lines_changed":1},{"name":".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out","lines_changed":2210},{"name":".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json","lines_changed":1},{"name":".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out","lines_changed":295}]}},{"commit":"7edad3f676fe5560017ca9cb05ede6f46787e78f","message":"Create key value pairs from a MANIFEST.MF file, to include key multiline value pairs.","stats":{"files_changed":8,"insertions":3042,"deletions":0,"files":["jc/parsers/metamf.py","tests/fixtures/rhel-8/MANIFEST.MF","tests/fixtures/rhel-8/MANIFEST.MF.json",".../rhel-8/cmds_used_to_generate_test_data.txt",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out"],"file_stats":[{"name":"jc/parsers/metamf.py","lines_changed":228},{"name":"tests/fixtures/rhel-8/MANIFEST.MF","lines_changed":292},{"name":"tests/fixtures/rhel-8/MANIFEST.MF.json","lines_changed":1},{"name":".../rhel-8/cmds_used_to_generate_test_data.txt","lines_changed":14},{"name":".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json","lines_changed":1},{"name":".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out","lines_changed":2210},{"name":".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json","lines_changed":1},{"name":".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out","lines_changed":295}]}},{"commit":"f7331001d4ab976e311458a16b6e5337da2e3aab","message":"use github releases instead of packaging site","stats":{"files_changed":3,"insertions":9,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":5},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":5}]}},{"commit":"f8e09ae2ffe185d21305d566fad20f510df9890f","message":"Merge pull request #187 from kellyjonbrazil/master"},{"commit":"433c7cc0f05e321ffe024845a908f3e856d4cd2b","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/zipinfo.md","jc/parsers/zipinfo.py"],"file_stats":[{"name":"docs/parsers/zipinfo.md","lines_changed":1},{"name":"jc/parsers/zipinfo.py","lines_changed":1}]}},{"commit":"d753e71a7452310d45fa605a2e4c70320ed60dbb","message":"Merge pull request #186 from kellyjonbrazil/dev"},{"commit":"2e4f5a508b6c90f9e03dcbcf64efc0e2fc446666","message":"version bump","stats":{"files_changed":4,"insertions":6,"deletions":3,"files":["CHANGELOG","jc/__init__.py","man/jc.1","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"88b960eff6cb3739d0d243c8d8b3e8ad5b8eb97c","message":"doc update","stats":{"files_changed":4,"insertions":144,"deletions":1,"files":["EXAMPLES.md","README.md","docs/parsers/zipinfo.md","man/jc.1"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":31},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/zipinfo.md","lines_changed":106},{"name":"man/jc.1","lines_changed":7}]}},{"commit":"88c77bd89e2c2a5f023e6638816c9153b6276d35","message":"add zipinfo tests","stats":{"files_changed":2,"insertions":47,"deletions":0,"files":["tests/fixtures/osx-10.14.6/zipinfo-multi.json","tests/test_zipinfo.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/zipinfo-multi.json","lines_changed":1},{"name":"tests/test_zipinfo.py","lines_changed":46}]}},{"commit":"51a7a4251fff518d8da78ffa41e7ba2e2cb47f12","message":"add multi-archive test output","stats":{"files_changed":1,"insertions":24,"deletions":0,"files":["tests/fixtures/osx-10.14.6/zipinfo-multi.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/zipinfo-multi.out","lines_changed":24}]}},{"commit":"51d2f316f388d962c26aeb4f42affebec339e5a2","message":"add multi-archive support","stats":{"files_changed":1,"insertions":97,"deletions":72,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":169}]}},{"commit":"ff78a46c4854339a097992701351ef471aff1671","message":"add zipinfo parser","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]}},{"commit":"ed4a9dc1d470f64bcc9de35b2d98568ffd50257d","message":"formatting","stats":{"files_changed":1,"insertions":21,"deletions":23,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":44}]}},{"commit":"63182dba26040974cb8cada6f5910bb29b1fa3ed","message":"Merge pull request #185 from listuser/new_branch"},{"commit":"9c1eaa938934269fe4179da798acf5f119cde0cf","message":"revised zipinfo.py nested version","stats":{"files_changed":2,"insertions":68,"deletions":61,"files":["jc/parsers/zipinfo.py","tests/fixtures/rhel-8/zipinfo.json"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":127},{"name":"tests/fixtures/rhel-8/zipinfo.json","lines_changed":2}]}},{"commit":"bc520fcbcdfad6a53e51944391fd24512bed8128","message":"added zipinfo.py nested version","stats":{"files_changed":2,"insertions":63,"deletions":53,"files":["jc/parsers/zipinfo.py","tests/fixtures/rhel-8/zipinfo.json"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":114},{"name":"tests/fixtures/rhel-8/zipinfo.json","lines_changed":2}]}},{"commit":"46faac1a12a5b39d6a25427f6e8fdcca1204dbcd","message":"add test data zipinfo.json and zipinfo.out","stats":{"files_changed":2,"insertions":1222,"deletions":0,"files":["tests/fixtures/rhel-8/zipinfo.json","tests/fixtures/rhel-8/zipinfo.out"],"file_stats":[{"name":"tests/fixtures/rhel-8/zipinfo.json","lines_changed":1},{"name":"tests/fixtures/rhel-8/zipinfo.out","lines_changed":1221}]}},{"commit":"3c424c0cb3cff462a963183585b57bea004e974f","message":"initial commit zipinfo.py to new_branch","stats":{"files_changed":1,"insertions":165,"deletions":0,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":165}]}},{"commit":"3ac8d0362b4fb9999fc55a60a9cb20ac80d114f7","message":"use quotes around python versions","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]}},{"commit":"d88b998e6c7826a9ecae18663328e2d2915030fe","message":"formatting","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":8},{"name":"jc/parsers/csv_s.py","lines_changed":8}]}},{"commit":"a9ed55c00652a563391a7930c7a4649967131ae1","message":"fix spelling","stats":{"files_changed":11,"insertions":11,"deletions":11,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]}},{"commit":"ea614341232e5272ee0c7fd46ba0f313033c761f","message":"fix schema docs","stats":{"files_changed":4,"insertions":16,"deletions":8,"files":["docs/parsers/crontab.md","docs/parsers/crontab_u.md","jc/parsers/crontab.py","jc/parsers/crontab_u.py"],"file_stats":[{"name":"docs/parsers/crontab.md","lines_changed":6},{"name":"docs/parsers/crontab_u.md","lines_changed":6},{"name":"jc/parsers/crontab.py","lines_changed":6},{"name":"jc/parsers/crontab_u.py","lines_changed":6}]}},{"commit":"a73d0d26cbe2860b8374661068e09e0717a3bab2","message":"Merge pull request #184 from kellyjonbrazil/dev"},{"commit":"b4506976e3c865397bc657183d49c484d8bcfd7a","message":"formatting","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":8},{"name":"templates/manpage_template","lines_changed":6}]}},{"commit":"34cb75a09697a06c3878f2f9a84eb3bd2a90ae62","message":"version bump","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/__init__.py","setup.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"34df643f60712ae25645cb7cddff80e43c12262b","message":"add disable colors section","stats":{"files_changed":4,"insertions":18,"deletions":0,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"man/jc.1","lines_changed":6},{"name":"templates/manpage_template","lines_changed":6},{"name":"templates/readme_template","lines_changed":3}]}},{"commit":"ac7c13fcc013d386f34db51d634298fa3e97eccd","message":"add -C option to docs","stats":{"files_changed":4,"insertions":11,"deletions":1,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"man/jc.1","lines_changed":6},{"name":"templates/manpage_template","lines_changed":4},{"name":"templates/readme_template","lines_changed":1}]}},{"commit":"4fdb34c7d5fcaa65e2ccab814c3acf2f0f70c442","message":"add no-color.org","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]}},{"commit":"7ac468e35aac1a63c4e22f33aead74a6e41a22a6","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]}},{"commit":"df190aa299f1669d1fe09380026ae086839abc02","message":"add -C option to force color even with pipes","stats":{"files_changed":1,"insertions":15,"deletions":7,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":22}]}},{"commit":"9621475e86fe20fcdc2902b6ce7860a833ae2ca0","message":"changelog update","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]}},{"commit":"82e0160de820ad2ed6143f58458711d600b929a3","message":"refactor NO_COLOR test","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"d03fb8b626a97e81006d0b108c8f400fe4e2ce3b","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"b300dfb3d75fe76e2ddbb087ff742dd0b5e6155b","message":"Add support for NO_COLOR env variable","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"a7de9111d97e687cafbc0709ec3ff7453d658a80","message":"Merge pull request #183 from kellyjonbrazil/dev"},{"commit":"7933dfdbe7bf400833d6f6b771362dfc518b9a8d","message":"Merge branch 'master' into dev"},{"commit":"f7cb5f7d01ac01538bee4da816408072b585768e","message":"update date","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]}},{"commit":"a26a298f1a3c141171e7d7ce459a27a297cec031","message":"doc update","stats":{"files_changed":4,"insertions":148,"deletions":1,"files":["README.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/iostat.md","lines_changed":15},{"name":"docs/parsers/iostat_s.md","lines_changed":126},{"name":"man/jc.1","lines_changed":7}]}},{"commit":"dbd134d0dac2fc152183480958fd9e65919ac98d","message":"add examples to docs","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat_s.py","lines_changed":6}]}},{"commit":"11aa01b0d9d6913059f98f9bd7591d7cad9037cf","message":"iostat-s tests","stats":{"files_changed":15,"insertions":15,"deletions":1,"files":["jc/parsers/iostat_s.py","tests/fixtures/centos-7.7/iostat-1-streaming.json","tests/fixtures/centos-7.7/iostat-m-streaming.json","tests/fixtures/centos-7.7/iostat-mx-streaming.json","tests/fixtures/centos-7.7/iostat-streaming.json","tests/fixtures/centos-7.7/iostat-x-streaming.json","tests/fixtures/ubuntu-18.04/iostat-1-streaming.json","tests/fixtures/ubuntu-18.04/iostat-m-streaming.json","tests/fixtures/ubuntu-18.04/iostat-mx-streaming.json","tests/fixtures/ubuntu-18.04/iostat-streaming.json","tests/fixtures/ubuntu-18.04/iostat-x-streaming.json","tests/fixtures/ubuntu-20.10/iostat-m-streaming.json","tests/fixtures/ubuntu-20.10/iostat-mx-streaming.json","tests/fixtures/ubuntu-20.10/iostat-streaming.json","tests/fixtures/ubuntu-20.10/iostat-x-streaming.json"],"file_stats":[{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iostat-1-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-m-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-mx-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-x-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-1-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-m-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-mx-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-x-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-m-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-mx-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-x-streaming.json","lines_changed":1}]}},{"commit":"6f18e5344356684e845ec63158c570d82156254f","message":"fix for null lines","stats":{"files_changed":1,"insertions":203,"deletions":0,"files":["tests/test_iostat_s.py"],"file_stats":[{"name":"tests/test_iostat_s.py","lines_changed":203}]}},{"commit":"7b467c466568ad4e7986d4d7cf3ec606681b6d46","message":"add ubuntu 20.10 tests","stats":{"files_changed":9,"insertions":137,"deletions":0,"files":["tests/fixtures/ubuntu-20.10/iostat-m.json","tests/fixtures/ubuntu-20.10/iostat-m.out","tests/fixtures/ubuntu-20.10/iostat-mx.json","tests/fixtures/ubuntu-20.10/iostat-mx.out","tests/fixtures/ubuntu-20.10/iostat-x.json","tests/fixtures/ubuntu-20.10/iostat-x.out","tests/fixtures/ubuntu-20.10/iostat.json","tests/fixtures/ubuntu-20.10/iostat.out","tests/test_iostat.py"],"file_stats":[{"name":"tests/fixtures/ubuntu-20.10/iostat-m.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-m.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-20.10/iostat-mx.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-mx.out","lines_changed":22},{"name":"tests/fixtures/ubuntu-20.10/iostat-x.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-x.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-20.10/iostat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat.out","lines_changed":22},{"name":"tests/test_iostat.py","lines_changed":47}]}},{"commit":"537b8f263087894c02b5b7c121765cf96182a370","message":"add more int conversions","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":4},{"name":"jc/parsers/iostat_s.py","lines_changed":4}]}},{"commit":"4d823575e791999e200dedd491511c4fde64fc2e","message":"add more float fields","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":4},{"name":"jc/parsers/iostat_s.py","lines_changed":4}]}},{"commit":"541aa1d09f20ff6979eabaa66790decb3895f18d","message":"Add new field float conversions for iostat v11","stats":{"files_changed":2,"insertions":68,"deletions":8,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":15},{"name":"jc/parsers/iostat_s.py","lines_changed":61}]}},{"commit":"8f02021014b7b19acf1a8bbd777161aa82c65d66","message":"formatting","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat_s.py","lines_changed":1}]}},{"commit":"158a15157c7e5dde95dc21766d0696bd82486688","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]}},{"commit":"2752e0d66a9ba0b57ac86913fd302ada23c280c0","message":"add iostat streaming parser","stats":{"files_changed":2,"insertions":166,"deletions":0,"files":["jc/cli.py","jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/iostat_s.py","lines_changed":165}]}},{"commit":"6c11e912afe3c4d16da9199b5c2fc10461928ac3","message":"update changelog","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]}},{"commit":"43d34461e27e3e4ac5f985786831c170b348c7c5","message":"update docs","stats":{"files_changed":83,"insertions":279,"deletions":81,"files":["README.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/utils.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/dpkg_l.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/finger.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/gshadow.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iostat.md","lines_changed":172},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":22},{"name":"man/jc.1","lines_changed":7}]}},{"commit":"4dfdc9b0f65d8c950ed74545d0cc3f95c8abec6c","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"e2311cbb03f407414df953c8d1c07d0cf1a549ca","message":"add iostat tests","stats":{"files_changed":21,"insertions":400,"deletions":0,"files":["tests/fixtures/centos-7.7/iostat-1.json","tests/fixtures/centos-7.7/iostat-1.out","tests/fixtures/centos-7.7/iostat-m.json","tests/fixtures/centos-7.7/iostat-m.out","tests/fixtures/centos-7.7/iostat-mx.json","tests/fixtures/centos-7.7/iostat-mx.out","tests/fixtures/centos-7.7/iostat-x.json","tests/fixtures/centos-7.7/iostat-x.out","tests/fixtures/centos-7.7/iostat.json","tests/fixtures/centos-7.7/iostat.out","tests/fixtures/ubuntu-18.04/iostat-1.json","tests/fixtures/ubuntu-18.04/iostat-1.out","tests/fixtures/ubuntu-18.04/iostat-m.json","tests/fixtures/ubuntu-18.04/iostat-m.out","tests/fixtures/ubuntu-18.04/iostat-mx.json","tests/fixtures/ubuntu-18.04/iostat-mx.out","tests/fixtures/ubuntu-18.04/iostat-x.json","tests/fixtures/ubuntu-18.04/iostat-x.out","tests/fixtures/ubuntu-18.04/iostat.json","tests/fixtures/ubuntu-18.04/iostat.out","tests/test_iostat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/iostat-1.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-1.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/iostat-m.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-m.out","lines_changed":10},{"name":"tests/fixtures/centos-7.7/iostat-mx.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-mx.out","lines_changed":9},{"name":"tests/fixtures/centos-7.7/iostat-x.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-x.out","lines_changed":10},{"name":"tests/fixtures/centos-7.7/iostat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat.out","lines_changed":9},{"name":"tests/fixtures/ubuntu-18.04/iostat-1.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-1.out","lines_changed":77},{"name":"tests/fixtures/ubuntu-18.04/iostat-m.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-m.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-18.04/iostat-mx.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-mx.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/iostat-x.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-x.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/iostat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat.out","lines_changed":27},{"name":"tests/test_iostat.py","lines_changed":143}]}},{"commit":"bf15575e90985cfec5c57dd11dfa2b86d53a41be","message":"fixes for ubunut","stats":{"files_changed":1,"insertions":14,"deletions":7,"files":["jc/parsers/iostat.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":21}]}},{"commit":"406336c7185b539b5e00532b58146d5b1b73f259","message":"add iostat example","stats":{"files_changed":1,"insertions":44,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":44}]}},{"commit":"6665ffaeb8107e9db3b917db0663beaf44024533","message":"remove python 3.6 from tests","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]}},{"commit":"dcf552ca0c69aa5f0309a83dc33dee7c5ed81292","message":"add _process and cleanup","stats":{"files_changed":1,"insertions":138,"deletions":47,"files":["jc/parsers/iostat.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":185}]}},{"commit":"7a6ebf3c9555dd82df7dc0b71981cdd32ce0061d","message":"add iostat parser","stats":{"files_changed":2,"insertions":171,"deletions":0,"files":["jc/cli.py","jc/parsers/iostat.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/iostat.py","lines_changed":170}]}},{"commit":"d2dc4a983c86c538e13e568b908072de4ca0daaf","message":"changelog update","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]}},{"commit":"1168259bc23862f671326d41f5282a3575205214","message":"add doc strings","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":3}]}},{"commit":"e8e4b46021557fbf5776c32dff46de022817fb6b","message":"use jc.utils type checks","stats":{"files_changed":5,"insertions":14,"deletions":19,"files":["jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":5},{"name":"jc/parsers/foo_s.py","lines_changed":7},{"name":"jc/parsers/ls_s.py","lines_changed":7},{"name":"jc/parsers/ping_s.py","lines_changed":7},{"name":"jc/parsers/vmstat_s.py","lines_changed":7}]}},{"commit":"12d2de22821fd8f57f4d412e62f53db3d89d5e30","message":"use jc.utils.input_type_check() and simplify compatibility check","stats":{"files_changed":77,"insertions":181,"deletions":165,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":4},{"name":"jc/parsers/airport.py","lines_changed":4},{"name":"jc/parsers/airport_s.py","lines_changed":4},{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/blkid.py","lines_changed":4},{"name":"jc/parsers/cksum.py","lines_changed":4},{"name":"jc/parsers/crontab.py","lines_changed":4},{"name":"jc/parsers/crontab_u.py","lines_changed":4},{"name":"jc/parsers/csv.py","lines_changed":4},{"name":"jc/parsers/date.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":5},{"name":"jc/parsers/dir.py","lines_changed":4},{"name":"jc/parsers/dmidecode.py","lines_changed":4},{"name":"jc/parsers/dpkg_l.py","lines_changed":4},{"name":"jc/parsers/du.py","lines_changed":4},{"name":"jc/parsers/env.py","lines_changed":4},{"name":"jc/parsers/file.py","lines_changed":4},{"name":"jc/parsers/finger.py","lines_changed":4},{"name":"jc/parsers/foo.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":4},{"name":"jc/parsers/fstab.py","lines_changed":4},{"name":"jc/parsers/group.py","lines_changed":4},{"name":"jc/parsers/gshadow.py","lines_changed":4},{"name":"jc/parsers/hash.py","lines_changed":4},{"name":"jc/parsers/hashsum.py","lines_changed":4},{"name":"jc/parsers/hciconfig.py","lines_changed":4},{"name":"jc/parsers/history.py","lines_changed":4},{"name":"jc/parsers/hosts.py","lines_changed":4},{"name":"jc/parsers/id.py","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":4},{"name":"jc/parsers/ini.py","lines_changed":4},{"name":"jc/parsers/iptables.py","lines_changed":4},{"name":"jc/parsers/iw_scan.py","lines_changed":4},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/last.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4},{"name":"jc/parsers/lsblk.py","lines_changed":4},{"name":"jc/parsers/lsmod.py","lines_changed":4},{"name":"jc/parsers/lsof.py","lines_changed":4},{"name":"jc/parsers/lsusb.py","lines_changed":4},{"name":"jc/parsers/mount.py","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":4},{"name":"jc/parsers/ntpq.py","lines_changed":4},{"name":"jc/parsers/passwd.py","lines_changed":4},{"name":"jc/parsers/ping.py","lines_changed":4},{"name":"jc/parsers/pip_list.py","lines_changed":4},{"name":"jc/parsers/pip_show.py","lines_changed":4},{"name":"jc/parsers/ps.py","lines_changed":4},{"name":"jc/parsers/route.py","lines_changed":4},{"name":"jc/parsers/rpm_qi.py","lines_changed":4},{"name":"jc/parsers/sfdisk.py","lines_changed":4},{"name":"jc/parsers/shadow.py","lines_changed":4},{"name":"jc/parsers/ss.py","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"jc/parsers/sysctl.py","lines_changed":4},{"name":"jc/parsers/systemctl.py","lines_changed":4},{"name":"jc/parsers/systemctl_lj.py","lines_changed":4},{"name":"jc/parsers/systemctl_ls.py","lines_changed":4},{"name":"jc/parsers/systemctl_luf.py","lines_changed":4},{"name":"jc/parsers/systeminfo.py","lines_changed":4},{"name":"jc/parsers/time.py","lines_changed":4},{"name":"jc/parsers/timedatectl.py","lines_changed":4},{"name":"jc/parsers/tracepath.py","lines_changed":4},{"name":"jc/parsers/traceroute.py","lines_changed":4},{"name":"jc/parsers/ufw.py","lines_changed":4},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":4},{"name":"jc/parsers/uname.py","lines_changed":4},{"name":"jc/parsers/upower.py","lines_changed":4},{"name":"jc/parsers/uptime.py","lines_changed":4},{"name":"jc/parsers/vmstat.py","lines_changed":4},{"name":"jc/parsers/w.py","lines_changed":4},{"name":"jc/parsers/wc.py","lines_changed":4},{"name":"jc/parsers/who.py","lines_changed":4},{"name":"jc/parsers/xml.py","lines_changed":4},{"name":"jc/parsers/yaml.py","lines_changed":4},{"name":"jc/utils.py","lines_changed":40}]}},{"commit":"0e2fe401e1c49a9f947d7d17b72cfc4e90787f47","message":"version bump","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]}},{"commit":"14247adb0ae007924ca551a706eb0cfdbae97a41","message":"add input type checks","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["jc/parsers/csv_s.py","tests/test_csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":7},{"name":"tests/test_csv_s.py","lines_changed":2}]}},{"commit":"3a9f0934c41c85ea7fa87165b9559f08814645cd","message":"add input type checks","stats":{"files_changed":2,"insertions":5,"deletions":3,"files":["jc/parsers/ls_s.py","tests/test_ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":6},{"name":"tests/test_ls_s.py","lines_changed":2}]}},{"commit":"caf0a5c8713bf0d72951a2c6fd5a2c62c9eb59d3","message":"add input type checking","stats":{"files_changed":2,"insertions":7,"deletions":4,"files":["jc/parsers/vmstat_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":9},{"name":"tests/test_vmstat_s.py","lines_changed":2}]}},{"commit":"cfb58b1cf3e3028f8e03fdd93f0165cf8d230e1e","message":"add input type checks","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":8}]}},{"commit":"975cf195cc02774f50460ca479d9ebb7b73c7870","message":"formatting","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":1}]}},{"commit":"8a46a259a36efc55bb0b2141acb9dd5ae52b7725","message":"add input type checks","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["jc/parsers/ping_s.py","tests/test_ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":8},{"name":"tests/test_ping_s.py","lines_changed":2}]}},{"commit":"e395142e599aa78b4a7ec80dcc3f8ccf279f97b1","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"caaeaf0d67cf44f8d2651cc53a7528d3ef0c74d3","message":"add 'str' type check on input","stats":{"files_changed":76,"insertions":227,"deletions":227,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":6},{"name":"jc/parsers/airport.py","lines_changed":6},{"name":"jc/parsers/airport_s.py","lines_changed":6},{"name":"jc/parsers/arp.py","lines_changed":6},{"name":"jc/parsers/blkid.py","lines_changed":6},{"name":"jc/parsers/cksum.py","lines_changed":6},{"name":"jc/parsers/crontab.py","lines_changed":6},{"name":"jc/parsers/crontab_u.py","lines_changed":6},{"name":"jc/parsers/csv.py","lines_changed":6},{"name":"jc/parsers/date.py","lines_changed":6},{"name":"jc/parsers/df.py","lines_changed":6},{"name":"jc/parsers/dig.py","lines_changed":6},{"name":"jc/parsers/dir.py","lines_changed":6},{"name":"jc/parsers/dmidecode.py","lines_changed":6},{"name":"jc/parsers/dpkg_l.py","lines_changed":6},{"name":"jc/parsers/du.py","lines_changed":6},{"name":"jc/parsers/env.py","lines_changed":6},{"name":"jc/parsers/file.py","lines_changed":6},{"name":"jc/parsers/finger.py","lines_changed":6},{"name":"jc/parsers/foo.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":6},{"name":"jc/parsers/fstab.py","lines_changed":6},{"name":"jc/parsers/group.py","lines_changed":6},{"name":"jc/parsers/gshadow.py","lines_changed":6},{"name":"jc/parsers/hash.py","lines_changed":6},{"name":"jc/parsers/hashsum.py","lines_changed":6},{"name":"jc/parsers/hciconfig.py","lines_changed":6},{"name":"jc/parsers/history.py","lines_changed":6},{"name":"jc/parsers/hosts.py","lines_changed":6},{"name":"jc/parsers/id.py","lines_changed":6},{"name":"jc/parsers/ifconfig.py","lines_changed":6},{"name":"jc/parsers/ini.py","lines_changed":6},{"name":"jc/parsers/iptables.py","lines_changed":6},{"name":"jc/parsers/iw_scan.py","lines_changed":6},{"name":"jc/parsers/jobs.py","lines_changed":6},{"name":"jc/parsers/last.py","lines_changed":6},{"name":"jc/parsers/ls.py","lines_changed":6},{"name":"jc/parsers/lsblk.py","lines_changed":6},{"name":"jc/parsers/lsmod.py","lines_changed":6},{"name":"jc/parsers/lsof.py","lines_changed":6},{"name":"jc/parsers/lsusb.py","lines_changed":6},{"name":"jc/parsers/mount.py","lines_changed":6},{"name":"jc/parsers/netstat.py","lines_changed":6},{"name":"jc/parsers/ntpq.py","lines_changed":6},{"name":"jc/parsers/passwd.py","lines_changed":6},{"name":"jc/parsers/ping.py","lines_changed":6},{"name":"jc/parsers/pip_list.py","lines_changed":6},{"name":"jc/parsers/pip_show.py","lines_changed":6},{"name":"jc/parsers/ps.py","lines_changed":6},{"name":"jc/parsers/route.py","lines_changed":6},{"name":"jc/parsers/rpm_qi.py","lines_changed":6},{"name":"jc/parsers/sfdisk.py","lines_changed":6},{"name":"jc/parsers/shadow.py","lines_changed":6},{"name":"jc/parsers/ss.py","lines_changed":6},{"name":"jc/parsers/stat.py","lines_changed":6},{"name":"jc/parsers/sysctl.py","lines_changed":6},{"name":"jc/parsers/systemctl.py","lines_changed":6},{"name":"jc/parsers/systemctl_lj.py","lines_changed":6},{"name":"jc/parsers/systemctl_ls.py","lines_changed":6},{"name":"jc/parsers/systemctl_luf.py","lines_changed":6},{"name":"jc/parsers/systeminfo.py","lines_changed":6},{"name":"jc/parsers/time.py","lines_changed":6},{"name":"jc/parsers/timedatectl.py","lines_changed":6},{"name":"jc/parsers/tracepath.py","lines_changed":6},{"name":"jc/parsers/traceroute.py","lines_changed":6},{"name":"jc/parsers/ufw.py","lines_changed":6},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":6},{"name":"jc/parsers/uname.py","lines_changed":6},{"name":"jc/parsers/upower.py","lines_changed":6},{"name":"jc/parsers/uptime.py","lines_changed":6},{"name":"jc/parsers/vmstat.py","lines_changed":6},{"name":"jc/parsers/w.py","lines_changed":6},{"name":"jc/parsers/wc.py","lines_changed":6},{"name":"jc/parsers/who.py","lines_changed":6},{"name":"jc/parsers/xml.py","lines_changed":6},{"name":"jc/parsers/yaml.py","lines_changed":6}]}},{"commit":"21e69a7cbf62240238f6fb78e874dda6ce2e922a","message":"ignore _config.yml","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"],"file_stats":[{"name":".gitignore","lines_changed":1}]}},{"commit":"603964935b58e02cf0614cf67ffacc6d94755e05","message":"remove trailing whitespace","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]}},{"commit":"47eb83ae55b9892716fff712bd2be21b6191b552","message":"add .vscode","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"],"file_stats":[{"name":".gitignore","lines_changed":1}]}},{"commit":"fc0ce6c95923ab124961e695a26c0b68dd0f359f","message":"add streaming parser to custom parsers info","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"077a29fb4eedcfccb026498c5c3a64b7b7601363","message":"add _jc_meta field info","stats":{"files_changed":2,"insertions":14,"deletions":2,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":8},{"name":"jc/parsers/csv_s.py","lines_changed":8}]}},{"commit":"8568d0d328706a7a5b1476452e078d8cbe7b7391","message":"fix csv_s documentation","stats":{"files_changed":3,"insertions":7,"deletions":3,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":4},{"name":"jc/parsers/csv_s.py","lines_changed":4},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"597d39c28ea0c0fe3b072413e9d91ab5e27b62bd","message":"Merge pull request #180 from kellyjonbrazil/dev"},{"commit":"eb888dcbbcf83c9197bd59aab72f65ea6eb622ba","message":"version bump","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["jc/__init__.py","man/jc.1","setup.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"d1b9ac0841b15ee15690c4066453a322618320ed","message":"doc update","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/df.md","docs/parsers/netstat.md","docs/parsers/ping.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"89a6d9c5c39b74f1b040f410659bfd7ae1a902d1","message":"add key-check to restore previous behavior even with non-df data","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":5}]}},{"commit":"85d983761637129cb85abfb0bbdde7c507061cd2","message":"add df info","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]}},{"commit":"cd7731484d826d84d835ecd460d746e78cadc5fc","message":"fix for cases where the Filesystem data overflows the column length (happens on older versions of df)","stats":{"files_changed":4,"insertions":62,"deletions":2,"files":["jc/parsers/df.py","tests/fixtures/generic/df-long-filesystem.json","tests/fixtures/generic/df-long-filesystem.out","tests/test_df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":47},{"name":"tests/fixtures/generic/df-long-filesystem.json","lines_changed":1},{"name":"tests/fixtures/generic/df-long-filesystem.out","lines_changed":4},{"name":"tests/test_df.py","lines_changed":12}]}},{"commit":"086da16b1743c16a5ccdd102f889fb31f99e3caa","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":2}]}},{"commit":"20830528f04a5ecbe78420d8008249b089667767","message":"add test for older netstat version fix","stats":{"files_changed":4,"insertions":28,"deletions":0,"files":["CHANGELOG","tests/fixtures/generic/netstat-old.json","tests/fixtures/generic/netstat-old.out","tests/test_netstat.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"tests/fixtures/generic/netstat-old.json","lines_changed":1},{"name":"tests/fixtures/generic/netstat-old.out","lines_changed":14},{"name":"tests/test_netstat.py","lines_changed":12}]}},{"commit":"83371edd8fe3d23dfa92fc707604086522c85ab9","message":"add space before inode to compensate for removed dash","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat_linux.py"],"file_stats":[{"name":"jc/parsers/netstat_linux.py","lines_changed":2}]}},{"commit":"364a81decc16742e3caa070d90b1d605d96fe2c1","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":2}]}},{"commit":"ef09592ad3e5c9a77c1bdebe8f876fc4dde54834","message":"update for 1.17.2","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]}},{"commit":"4a86e109ccb254d5195b782f84f3967c96ef726c","message":"Merge pull request #179 from shaikustin/ping-alpine-linux"},{"commit":"7fa5391b6613e62689c624041e03f9750c9c7972","message":"change alpine ping6 to ping","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_ping.py"],"file_stats":[{"name":"tests/test_ping.py","lines_changed":2}]}},{"commit":"9b53ba5714819ff760f2d4546f5d2ee4d521c080","message":"support alpine linux ping","stats":{"files_changed":6,"insertions":45,"deletions":1,"files":["jc/parsers/ping.py",".../fixtures/alpine-linux-3.13/ping-hostname.json","tests/fixtures/alpine-linux-3.13/ping-hostname.out","tests/fixtures/alpine-linux-3.13/ping-ip.json","tests/fixtures/alpine-linux-3.13/ping-ip.out","tests/test_ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":2},{"name":".../fixtures/alpine-linux-3.13/ping-hostname.json","lines_changed":1},{"name":"tests/fixtures/alpine-linux-3.13/ping-hostname.out","lines_changed":9},{"name":"tests/fixtures/alpine-linux-3.13/ping-ip.json","lines_changed":1},{"name":"tests/fixtures/alpine-linux-3.13/ping-ip.out","lines_changed":6},{"name":"tests/test_ping.py","lines_changed":27}]}},{"commit":"b59e38cfd2c8a7f5868e05d5562557b1c27e5e56","message":"Merge pull request #176 from kellyjonbrazil/dev"},{"commit":"5ba22dae597b9d154ca0a82f71cfbd8d8a6325db","message":"add JSON lines info","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2}]}},{"commit":"4232e523acc523e510b4881d2a57a95b88ec8c8b","message":"Merge branch 'master' into dev"},{"commit":"bee80b35d2b8c15e6233f2798e9c02a11e9e1e9e","message":"update for version bump","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["CHANGELOG","docs/parsers/csv_s.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":8},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"c32395f6950d6294770ee93e8bf4d79c7d275ac3","message":"linting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":2}]}},{"commit":"735c5e1078cc27b5cba03b8ebbae15aeca6b8fbd","message":"update comments for ParseError test: https://bugs.python.org/issue45617","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["tests/test_csv_s.py"],"file_stats":[{"name":"tests/test_csv_s.py","lines_changed":5}]}},{"commit":"d09c94b292ca3beec92a00f8a51b7259dd30a1e5","message":"add python 3.10 testing info","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]}},{"commit":"4d04866f48f72b9ea0d213dc1533729d3b68a503","message":"add python bug https://bugs.python.org/issue45617 info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":1}]}},{"commit":"a2d90f4dfcdc2cb00c6c0fa957493c95a21e256b","message":"force test","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_csv_s.py"],"file_stats":[{"name":"tests/test_csv_s.py","lines_changed":2}]}},{"commit":"93a5002c8b530bd6f5f81e5d8595cde1f836ae41","message":"fix 3.10.0 version number","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]}},{"commit":"23bf5227a4c39ea017e55fc21150331e1af6fdb7","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"77c96fa2a96148221bde7d2274e0dfb5386a166f","message":"try tests on python 3.10","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["tests/test_csv_s.py"],"file_stats":[{"name":"tests/test_csv_s.py","lines_changed":3}]}},{"commit":"3f5a1f015e9c0807e227b9f7300592e25502e014","message":"add python 3.10","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]}},{"commit":"b280c4fc18e60a85ab212b09aa5bf3a05a0eceff","message":"add ParseError test to streaming csv parser","stats":{"files_changed":2,"insertions":11,"deletions":19,"files":[".../fixtures/generic/csv-insurance-streaming.json","tests/test_csv_s.py"],"file_stats":[{"name":".../fixtures/generic/csv-insurance-streaming.json","lines_changed":1},{"name":"tests/test_csv_s.py","lines_changed":29}]}},{"commit":"3ab9b43a2eebf535be98c94810ac474bf32ec515","message":"raise ParseError on newline bug","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":14}]}},{"commit":"46f568414a5c8d2f135486e86d0ada48cfcefeb0","message":"change streaming parser test names","stats":{"files_changed":3,"insertions":96,"deletions":89,"files":["tests/test_ls_s.py","tests/test_ping_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"tests/test_ls_s.py","lines_changed":26},{"name":"tests/test_ping_s.py","lines_changed":138},{"name":"tests/test_vmstat_s.py","lines_changed":21}]}},{"commit":"cba2fd299fff09a551b780e064a6e22bdf7e539a","message":"add tests","stats":{"files_changed":9,"insertions":75,"deletions":61,"files":[".../generic/csv-10k-sales-records-streaming.json","tests/fixtures/generic/csv-deniro-streaming.json","tests/fixtures/generic/csv-example-streaming.json","tests/fixtures/generic/csv-flyrna-streaming.json","tests/fixtures/generic/csv-flyrna2-streaming.json",".../fixtures/generic/csv-homes-pipe-streaming.json","tests/fixtures/generic/csv-homes-streaming.json",".../fixtures/generic/csv-insurance-streaming.json","tests/test_csv_s.py"],"file_stats":[{"name":".../generic/csv-10k-sales-records-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-deniro-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-example-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna2-streaming.json","lines_changed":1},{"name":".../fixtures/generic/csv-homes-pipe-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-homes-streaming.json","lines_changed":1},{"name":".../fixtures/generic/csv-insurance-streaming.json","lines_changed":1},{"name":"tests/test_csv_s.py","lines_changed":128}]}},{"commit":"1e6e44f656f1bbb277eb38fb485f7b48e3b9e40b","message":"fix for piping data with non-platform newlines (e.g. windows csv files on unix)","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":5}]}},{"commit":"acac0399946d9781193e9350dd7109f1dd3999fe","message":"working tests","stats":{"files_changed":3,"insertions":149,"deletions":0,"files":["tests/fixtures/generic/csv-biostats-streaming.json","tests/fixtures/generic/csv-cities-streaming.json","tests/test_csv_s.py"],"file_stats":[{"name":"tests/fixtures/generic/csv-biostats-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-cities-streaming.json","lines_changed":1},{"name":"tests/test_csv_s.py","lines_changed":147}]}},{"commit":"50a3b340164b3139f04f67a2bee16e5343c8a2da","message":"optimizations and use iter() so we can exhaust data coming from list objects","stats":{"files_changed":1,"insertions":5,"deletions":8,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":13}]}},{"commit":"b45396070cf28fa36ecb44acd7be3e3bb81a712d","message":"update comment","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_vmstat_s.py"],"file_stats":[{"name":"tests/test_vmstat_s.py","lines_changed":2}]}},{"commit":"218b9aec8ac397e26e6cd4ff407f3d10ef88ea9b","message":"doc update for streaming CSV parser","stats":{"files_changed":4,"insertions":87,"deletions":48,"files":["README.md","docs/parsers/csv_s.md","jc/parsers/csv_s.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/csv_s.md","lines_changed":75},{"name":"jc/parsers/csv_s.py","lines_changed":52},{"name":"man/jc.1","lines_changed":7}]}},{"commit":"2b887debc647bd533040e392465967d12869cb02","message":"add csv streaming parser","stats":{"files_changed":4,"insertions":10172,"deletions":1,"files":["CHANGELOG","jc/cli.py","jc/parsers/csv_s.py","tests/fixtures/generic/csv-10k-sales-records.csv"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/csv_s.py","lines_changed":168},{"name":"tests/fixtures/generic/csv-10k-sales-records.csv","lines_changed":10001}]}},{"commit":"0313e3f8ca0e22e1575192d765d5afedf48e94df","message":"linting","stats":{"files_changed":1,"insertions":9,"deletions":6,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":15}]}},{"commit":"1669e6e20c3af3d28968558b76d0901a56775ac0","message":"linting","stats":{"files_changed":1,"insertions":23,"deletions":28,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":51}]}},{"commit":"ef6de75dda90c7221d53e0e0a942f0cac2247354","message":"add vmstat timestamp tests to utils","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":4}]}},{"commit":"a6bcec425a3f44ba3c7cd06b5ebaf522b66df109","message":"comment update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":2}]}},{"commit":"596ad9a64d002ced212b08512126e52707fe73d2","message":"update comment","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":2}]}},{"commit":"7a91c93319f75c37ba6bf268d8270947f0bf8b22","message":"add lsusb","stats":{"files_changed":1,"insertions":122,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":122}]}},{"commit":"b5f7b35f89197879a9f13bd8fa5d2a0c77cc059a","message":"comment update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":2}]}},{"commit":"2f47fb7f14c4ff0e1c835897d94ee81d14590aba","message":"fix ParseError tests","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["tests/test_uname.py"],"file_stats":[{"name":"tests/test_uname.py","lines_changed":5}]}},{"commit":"1b214c403657a50689f2a04892ce836dea669a1d","message":"raise ParseError if -t option is detected. add test","stats":{"files_changed":3,"insertions":30,"deletions":0,"files":["jc/parsers/lsusb.py","tests/fixtures/generic/lsusb-t.out","tests/test_lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":5},{"name":"tests/fixtures/generic/lsusb-t.out","lines_changed":15},{"name":"tests/test_lsusb.py","lines_changed":10}]}},{"commit":"8f94f8acc6bb53bbb19ba150551c7df2183a8863","message":"add tests and update docs","stats":{"files_changed":11,"insertions":384,"deletions":3,"files":["README.md","docs/parsers/file.md","docs/parsers/lsusb.md","docs/parsers/uname.md","man/jc.1","tests/fixtures/centos-7.7/lsusb-v-single.json","tests/fixtures/centos-7.7/lsusb-v.json","tests/fixtures/centos-7.7/lsusb.json","tests/fixtures/generic/lsusb-test-attributes.json","tests/fixtures/generic/lsusb-test-attributes2.json","tests/test_lsusb.py"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":288},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"man/jc.1","lines_changed":7},{"name":"tests/fixtures/centos-7.7/lsusb-v-single.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsusb-v.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsusb.json","lines_changed":1},{"name":"tests/fixtures/generic/lsusb-test-attributes.json","lines_changed":1},{"name":"tests/fixtures/generic/lsusb-test-attributes2.json","lines_changed":1},{"name":"tests/test_lsusb.py","lines_changed":82}]}},{"commit":"3a2a69cfa55e2f40d7536d923170a5cfc986998e","message":"formatting","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":4}]}},{"commit":"f599c659881248b79c6dbc86d85a61311c9d3434","message":"add stress test examples","stats":{"files_changed":2,"insertions":464,"deletions":0,"files":["tests/fixtures/generic/lsusb-test-attributes.out","tests/fixtures/generic/lsusb-test-attributes2.out"],"file_stats":[{"name":"tests/fixtures/generic/lsusb-test-attributes.out","lines_changed":116},{"name":"tests/fixtures/generic/lsusb-test-attributes2.out","lines_changed":348}]}},{"commit":"ad12849fd9fc2177afb30740acc63cf284dc394b","message":"update docs example and","stats":{"files_changed":1,"insertions":138,"deletions":26,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":164}]}},{"commit":"f36b3789e8df6673207d6c2d3d0796acfdfe011d","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":4}]}},{"commit":"6d18c0ba61cd188dbff736f1be47b7362c841687","message":"change variable name last_attribute and last_attr to last_item","stats":{"files_changed":1,"insertions":47,"deletions":47,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":94}]}},{"commit":"17097abec9567a58b5a5f7bbed11ecfd69cbd28c","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":6,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":8}]}},{"commit":"b7ddd3b285f205211394edc70b611171cf72a4c5","message":"change variable names","stats":{"files_changed":1,"insertions":22,"deletions":22,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":44}]}},{"commit":"75b23f62c9d7b33907af92964d1a6234332fbc78","message":"working configuration_descriptor and device_descriptor attributes","stats":{"files_changed":1,"insertions":35,"deletions":7,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":42}]}},{"commit":"f88967b2a59d79e053554d1e141f71e9d2d87456","message":"add attribute lists up to interface_association","stats":{"files_changed":1,"insertions":126,"deletions":21,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":147}]}},{"commit":"ba2846664b35b2e94aa905431c55c029b24a64e3","message":"edpoint_descriptors attributes working","stats":{"files_changed":1,"insertions":22,"deletions":2,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":24}]}},{"commit":"10dba37ca2624e05eff246ef49df8ebd3f275d86","message":"hub_descriptor attributes working","stats":{"files_changed":1,"insertions":28,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":29}]}},{"commit":"0e6f938514965503f1d86d56c047f9f8fc03ac65","message":"working hub_port_status section","stats":{"files_changed":1,"insertions":36,"deletions":45,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":81}]}},{"commit":"159d87c1126f4d79d5e34837bc2c353a5445803b","message":"add length guard and test for uname with no -a on linux","stats":{"files_changed":3,"insertions":18,"deletions":7,"files":["jc/parsers/uname.py","tests/fixtures/centos-7.7/uname.out","tests/test_uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":11},{"name":"tests/fixtures/centos-7.7/uname.out","lines_changed":1},{"name":"tests/test_uname.py","lines_changed":13}]}},{"commit":"9e7b1621cf232e9859bdf018737e536820f380a0","message":"device_status working","stats":{"files_changed":1,"insertions":18,"deletions":18,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":36}]}},{"commit":"2057817ef8fec85b2a978b682e7fe8bc16def828","message":"add uname tests","stats":{"files_changed":11,"insertions":89,"deletions":0,"files":["tests/fixtures/debian10/uname-a.json","tests/fixtures/debian10/uname-a.out","tests/fixtures/freebsd12/uname-a.json","tests/fixtures/freebsd12/uname-a.out","tests/fixtures/freebsd12/uname-a2.json","tests/fixtures/freebsd12/uname-a2.out","tests/fixtures/generic/uname-a-different-proc.json","tests/fixtures/generic/uname-a-different-proc.out","tests/fixtures/generic/uname-a.json","tests/fixtures/generic/uname-a.out","tests/test_uname.py"],"file_stats":[{"name":"tests/fixtures/debian10/uname-a.json","lines_changed":10},{"name":"tests/fixtures/debian10/uname-a.out","lines_changed":2},{"name":"tests/fixtures/freebsd12/uname-a.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/uname-a.out","lines_changed":2},{"name":"tests/fixtures/freebsd12/uname-a2.json","lines_changed":7},{"name":"tests/fixtures/freebsd12/uname-a2.out","lines_changed":2},{"name":"tests/fixtures/generic/uname-a-different-proc.json","lines_changed":1},{"name":"tests/fixtures/generic/uname-a-different-proc.out","lines_changed":1},{"name":"tests/fixtures/generic/uname-a.json","lines_changed":1},{"name":"tests/fixtures/generic/uname-a.out","lines_changed":2},{"name":"tests/test_uname.py","lines_changed":60}]}},{"commit":"a1eabad2d37bb0d0e9407edf7305e223eba67da2","message":"add comments","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":6}]}},{"commit":"92bf2b1ca2a172d3977d6e3c36b5ca1a8c2bab63","message":"simplify fixup logic for uname","stats":{"files_changed":2,"insertions":8,"deletions":20,"files":["CHANGELOG","jc/parsers/uname.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":26}]}},{"commit":"2b2123a4ba9b77d2089d367fe85dcb5d2857a295","message":"add FreeBSD support","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","jc/parsers/uname.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/parsers/uname.py","lines_changed":4}]}},{"commit":"908b2f9200ddcce4beb531a3c90908786b6a5b02","message":"add items","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]}},{"commit":"deff0c7bfdf942b8d7e7bd140219e08bf80a50cb","message":"remove print debug","stats":{"files_changed":1,"insertions":1,"deletions":5,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":6}]}},{"commit":"7cd01efa64029775042a2c145997ce30ef6b4f6b","message":"fixup for cases where the 'process' and/or 'machine' fields are blank on linux","stats":{"files_changed":1,"insertions":25,"deletions":1,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":26}]}},{"commit":"2dbe56456bbea2bdfce7eacbf8b9f10a1b249f55","message":"add nested_dict. start work on hub_port_status and device_status","stats":{"files_changed":1,"insertions":49,"deletions":39,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":88}]}},{"commit":"6078a411ef612be8bad012aa404f34ebd74a1fd7","message":"add initial schema doc","stats":{"files_changed":1,"insertions":79,"deletions":4,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":83}]}},{"commit":"4a3656562f161a51f5cb6f0e9ccd271859b78d62","message":"del null keys","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":6}]}},{"commit":"ba75989a24839907723ed7c3d7a497473d489a34","message":"update comments","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":10}]}},{"commit":"9e9e2c362894f0072ab839565829881d750c8912","message":"move state instantiation before has_data test","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":4}]}},{"commit":"9a2a8c6b61a46a9bfb5a4492b86774a4a78672ab","message":"shorten set_sections","stats":{"files_changed":1,"insertions":20,"deletions":52,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":72}]}},{"commit":"dae42ef1619441637672d634f9e5d7ab26115f09","message":"add hub_port_status and device_status","stats":{"files_changed":1,"insertions":18,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":19}]}},{"commit":"931f2cab78bda180443535c04b532d04c6e88dd0","message":"add hub_descriptor","stats":{"files_changed":1,"insertions":14,"deletions":11,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":25}]}},{"commit":"72b061bed4453686d264ccf8977cba6c2a4794ec","message":"add endpoint_descriptors","stats":{"files_changed":1,"insertions":32,"deletions":8,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":40}]}},{"commit":"29a7c73990d9620b15a4010d17fc9a9a859f44b4","message":"add hid_device_descriptor and report_descriptors","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":16}]}},{"commit":"2d1d68e3007f76d4c34ac07ae822935ab6021e79","message":"simplify populate_lists. Add CDC lists","stats":{"files_changed":1,"insertions":87,"deletions":88,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":175}]}},{"commit":"c5c1e170d1f502de5c76e9e481a23b26ffcaf237","message":"interface descriptors working","stats":{"files_changed":1,"insertions":111,"deletions":76,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":187}]}},{"commit":"9c1bb66452838e704ef2277f313bb51a42dc03b9","message":"fix remove _state field during schema_populate","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":18}]}},{"commit":"a4f3306bae90fbc807fdd9ff2ce71e25d36a663f","message":"initial schema build. need to figure out why deleting _state from output_line causes exceptions","stats":{"files_changed":1,"insertions":69,"deletions":28,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":97}]}},{"commit":"1bc638b6ee7a820406ba4b84d3408f7cd4fe779d","message":"add bus_list and add all device_list data to the list","stats":{"files_changed":1,"insertions":36,"deletions":32,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":68}]}},{"commit":"9ad0cd9dae8822235c37159541ce72471eb4263e","message":"now storing state within the objects to make building the schema (later) easier.","stats":{"files_changed":1,"insertions":116,"deletions":211,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":327}]}},{"commit":"6d4a4691276d8659253b2ac8f8bdbd71a1fece7d","message":"use class for state","stats":{"files_changed":1,"insertions":356,"deletions":333,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":689}]}},{"commit":"ed6997e3ff2e575a6d4daa7d7a2cbe7dddacdd4d","message":"add interface_association section","stats":{"files_changed":2,"insertions":170,"deletions":34,"files":["jc/parsers/lsusb.py","tests/fixtures/centos-7.7/lsusb-v-single.out"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":104},{"name":"tests/fixtures/centos-7.7/lsusb-v-single.out","lines_changed":100}]}},{"commit":"eb788fca6e25eea1fa8a43b22360c852ecf5af35","message":"somewhat working lsusb parser. needs a lot more TLC","stats":{"files_changed":4,"insertions":919,"deletions":0,"files":["jc/cli.py","jc/parsers/lsusb.py","tests/fixtures/centos-7.7/lsusb-v.out","tests/fixtures/centos-7.7/lsusb.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/lsusb.py","lines_changed":404},{"name":"tests/fixtures/centos-7.7/lsusb-v.out","lines_changed":509},{"name":"tests/fixtures/centos-7.7/lsusb.out","lines_changed":5}]}},{"commit":"9186f5f37739012b8c04c776310a20ef55b1469f","message":"fix file parser for gzip cases (has ': ' in the description, which is the delimiter)","stats":{"files_changed":7,"insertions":99,"deletions":4,"files":["CHANGELOG","jc/__init__.py","jc/parsers/file.py","setup.py","tests/fixtures/osx-10.14.6/file3.json","tests/fixtures/osx-10.14.6/file3.out","tests/test_file.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":11},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/file3.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/file3.out","lines_changed":72},{"name":"tests/test_file.py","lines_changed":12}]}},{"commit":"30cff5f28140a5b20a617c8145c13e43b7b6685b","message":"add note that the streaming parser outputs JSON Lines","stats":{"files_changed":8,"insertions":17,"deletions":3,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":4},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":4},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"b724e0969a0d6b22bed0c77eb8d629381179ea3f","message":"-qq instead of -q","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2}]}},{"commit":"a62c49e8715873b068a96da5021ea24a783acd6b","message":"Merge pull request #172 from kellyjonbrazil/master"},{"commit":"9b160f6279bbbf0c15413c98922eef137ba2f3f4","message":"link update","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]}},{"commit":"338a4e2612f70bb3e2af31f61a7db75f647293fe","message":"formatting","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]}},{"commit":"0140688750be61dd752059ee66734ab1c7a8f30e","message":"link updates","stats":{"files_changed":6,"insertions":8,"deletions":4,"files":["README.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"73e5ea98c1ca2b9299085e3832791162eca3b9ff","message":"Merge pull request #170 from kellyjonbrazil/dev"},{"commit":"77dcbc544da271edab5de5ad209117e98c846f9c","message":"final doc update","stats":{"files_changed":3,"insertions":2,"deletions":3,"files":["CHANGELOG","jc/__init__.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"c7bcb0947ae32acc9cdba7a6975d2f2557f10a39","message":"indent subsequent error and warning lines","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":4}]}},{"commit":"5cd3f7f71d38b560a88dd6057e9c7a94991a3d71","message":"Add example to raise ParseError if there is no output data to yield","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":6}]}},{"commit":"5044388ab2e8d7d8b427fd51b0ab875611bd127f","message":"raise if line data is unrecognized","stats":{"files_changed":2,"insertions":6,"deletions":3,"files":["jc/parsers/vmstat_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":6},{"name":"tests/test_vmstat_s.py","lines_changed":3}]}},{"commit":"ee075db59819d80e4dcb60ddbd9cfe2fd529dfe9","message":"linting","stats":{"files_changed":4,"insertions":5,"deletions":7,"files":["jc/cli.py","jc/parsers/foo_s.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":5},{"name":"jc/parsers/vmstat_s.py","lines_changed":3}]}},{"commit":"9904e0be61e7c81b907bf3770f111346daeff481","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":2},{"name":"jc/utils.py","lines_changed":2}]}},{"commit":"31b69b3242eeca2c02f87c31d58193dd3f06fe49","message":"formatting","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":6},{"name":"jc/utils.py","lines_changed":6}]}},{"commit":"e6a80fea3228122dd84e17672c835c0460ad1342","message":"formatting","stats":{"files_changed":3,"insertions":7,"deletions":7,"files":["docs/utils.md","jc/utils.py","man/jc.1"],"file_stats":[{"name":"docs/utils.md","lines_changed":6},{"name":"jc/utils.py","lines_changed":6},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"d6aec00e038d1ecfe43c13a6909d50630455b372","message":"add vmstat-1-long tests","stats":{"files_changed":4,"insertions":27,"deletions":1,"files":["tests/fixtures/ubuntu-18.04/vmstat-1-long-streaming.json","tests/fixtures/ubuntu-18.04/vmstat-1-long.json","tests/test_vmstat.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"tests/fixtures/ubuntu-18.04/vmstat-1-long-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/vmstat-1-long.json","lines_changed":1},{"name":"tests/test_vmstat.py","lines_changed":12},{"name":"tests/test_vmstat_s.py","lines_changed":14}]}},{"commit":"4aa7d81e11ea7fcfbb5c9d74337cde617b1a0d5d","message":"ignore re-printed header rows in output","stats":{"files_changed":3,"insertions":50,"deletions":2,"files":["jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","tests/fixtures/ubuntu-18.04/vmstat-1-long.out"],"file_stats":[{"name":"jc/parsers/vmstat.py","lines_changed":3},{"name":"jc/parsers/vmstat_s.py","lines_changed":7},{"name":"tests/fixtures/ubuntu-18.04/vmstat-1-long.out","lines_changed":42}]}},{"commit":"48cdabc3b0862d6291e1ec59ab385e0e146c31eb","message":"document timestamps","stats":{"files_changed":4,"insertions":16,"deletions":0,"files":["docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/vmstat.md","lines_changed":4},{"name":"docs/parsers/vmstat_s.md","lines_changed":4},{"name":"jc/parsers/vmstat.py","lines_changed":4},{"name":"jc/parsers/vmstat_s.py","lines_changed":4}]}},{"commit":"a1791ef5479749692c79bbe98fc7687d70cd6cda","message":"linting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2}]}},{"commit":"7bc87f6c2d4cfcfa656a1c1b8973a4c0414c85d9","message":"change _meta to _jc_meta","stats":{"files_changed":8,"insertions":8,"deletions":8,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"bbed9e274b8252ba0518140fe7fc97029310771f","message":"linting","stats":{"files_changed":1,"insertions":154,"deletions":159,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":313}]}},{"commit":"486282b9856f5e56cf43ee1399d8e7cb78353b32","message":"linting","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":10}]}},{"commit":"a4d45b653f794033978940da14910f5d607a8254","message":"linting","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["jc/parsers/foo_s.py","jc/parsers/vmstat.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":8}]}},{"commit":"22e151b01c0f97c141d912c9646e46df0320d622","message":"linting","stats":{"files_changed":2,"insertions":56,"deletions":60,"files":["jc/cli.py","jc/utils.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":88},{"name":"jc/utils.py","lines_changed":28}]}},{"commit":"7a4ebcd1ecdb4929aae70e44b4f9b6b5ab52b393","message":"language hints","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":4}]}},{"commit":"651cbfe02fbb354c4caf8e0d022655642e7caed3","message":"add streaming foo parser","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]}},{"commit":"8c3e764516e1c28961b09380b638a57ce98b1261","message":"add streaming parser to contrib guidelines","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"b4e75da7e3f23502723ce8b2a7261b376f296864","message":"formatting","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"templates/readme_template","lines_changed":4}]}},{"commit":"37223f086cabc8db5962415bd161fed151dafb9d","message":"formatting","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":5},{"name":"templates/readme_template","lines_changed":5}]}},{"commit":"a404033735c2c8075a8e08194197eae59db70afd","message":"add error and warning message wrap info","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]}},{"commit":"b7433ed085c0ba22ea0d49330871a651a8d83fb4","message":"auto wrap warning and error messages","stats":{"files_changed":6,"insertions":80,"deletions":41,"files":["docs/utils.md","jc/cli.py","jc/parsers/file.py","jc/parsers/ls.py","jc/parsers/traceroute.py","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":16},{"name":"jc/cli.py","lines_changed":39},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":60}]}},{"commit":"224d3d65ada4216e28e142d411b0c2c3358517b3","message":"Add exception class name to error message","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"a349fb0bdabaf74503831f22c4efbd02254f809d","message":"change _meta to _jc_meta","stats":{"files_changed":3,"insertions":10,"deletions":8,"files":["README.md","docs/utils.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"docs/utils.md","lines_changed":6},{"name":"man/jc.1","lines_changed":6}]}},{"commit":"e7ddcfb83fb295034db44ade407476ff3a962cd8","message":"change _meta to _jc_meta","stats":{"files_changed":5,"insertions":14,"deletions":12,"files":["jc/utils.py","templates/manpage_template","templates/readme_template",".../centos-7.7/ping-ip-O-streaming-ignore-exceptions.json","tests/test_ping_s.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":10},{"name":"templates/manpage_template","lines_changed":6},{"name":"templates/readme_template","lines_changed":6},{"name":".../centos-7.7/ping-ip-O-streaming-ignore-exceptions.json","lines_changed":2},{"name":"tests/test_ping_s.py","lines_changed":2}]}},{"commit":"abd20dfe3662f65373ac582c70aa740e53b52f68","message":"formatting","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"templates/manpage_template","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"dc1fd3ef1be41aee349b159059f1febff76f6caf","message":"fix -qq docs","stats":{"files_changed":4,"insertions":12,"deletions":12,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"man/jc.1","lines_changed":6},{"name":"templates/manpage_template","lines_changed":6},{"name":"templates/readme_template","lines_changed":6}]}},{"commit":"98a7686db46fbd3ed98382867976249f307d0015","message":"use -qq to ignore streaming exceptions","stats":{"files_changed":18,"insertions":160,"deletions":152,"files":["README.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","docs/utils.md","jc/cli.py","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","jc/utils.py","man/jc.1","templates/manpage_template","templates/readme_template","... => ping-ip-O-streaming-ignore-exceptions.json}","tests/test_ls_s.py","tests/test_ping_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":9},{"name":"docs/parsers/ping_s.md","lines_changed":9},{"name":"docs/parsers/vmstat_s.md","lines_changed":9},{"name":"docs/utils.md","lines_changed":6},{"name":"jc/cli.py","lines_changed":23},{"name":"jc/parsers/foo_s.py","lines_changed":13},{"name":"jc/parsers/ls_s.py","lines_changed":13},{"name":"jc/parsers/ping_s.py","lines_changed":13},{"name":"jc/parsers/vmstat_s.py","lines_changed":13},{"name":"jc/utils.py","lines_changed":12},{"name":"man/jc.1","lines_changed":4},{"name":"templates/manpage_template","lines_changed":4},{"name":"templates/readme_template","lines_changed":2},{"name":"... => ping-ip-O-streaming-ignore-exceptions.json}","lines_changed":0},{"name":"tests/test_ls_s.py","lines_changed":24},{"name":"tests/test_ping_s.py","lines_changed":140},{"name":"tests/test_vmstat_s.py","lines_changed":16}]}},{"commit":"9c6c6c4330fc68115be012de254161f36e3a8328","message":"add next() info","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"f9be5651daa891e06ad0acd8980ffc0fe51fd29d","message":"add language hints","stats":{"files_changed":2,"insertions":4,"deletions":6,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":5},{"name":"templates/readme_template","lines_changed":5}]}},{"commit":"df9835a3e62bb2b3b6ec8b55f06a25a00a799d92","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"92363be2dd633bdd3c2dd07c72ebd281d2cb4565","message":"fix streaming python module example","stats":{"files_changed":2,"insertions":2,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"templates/readme_template","lines_changed":3}]}},{"commit":"31b62030156f9c826fe5c7d127e9dd0ace582dd0","message":"formatting","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"templates/readme_template","lines_changed":6}]}},{"commit":"18805858d685d456f9a38540bbaedbaa1a411546","message":"formatting","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":4},{"name":"templates/manpage_template","lines_changed":2}]}},{"commit":"e676f0e20fb6e96a536c4d182b0d287cdc1ad0f7","message":"add streaming parser info for python module use","stats":{"files_changed":2,"insertions":36,"deletions":6,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":21},{"name":"templates/readme_template","lines_changed":21}]}},{"commit":"20652edefaa7705b8ba756bae3944ff362a295a6","message":"update changelog","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":7}]}},{"commit":"98c29d07478093e78f53ec633f2dd08cafc3e3ae","message":"add vmstat tests","stats":{"files_changed":8,"insertions":120,"deletions":0,"files":["tests/fixtures/centos-7.7/vmstat-a.json","tests/fixtures/centos-7.7/vmstat-at-5-10.json","tests/fixtures/centos-7.7/vmstat-awt.json","tests/fixtures/centos-7.7/vmstat-d.json","tests/fixtures/centos-7.7/vmstat-dt.json","tests/fixtures/centos-7.7/vmstat-w.json","tests/fixtures/centos-7.7/vmstat.json","tests/test_vmstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/vmstat-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-at-5-10.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-awt.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-d.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-dt.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-w.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat.json","lines_changed":1},{"name":"tests/test_vmstat.py","lines_changed":113}]}},{"commit":"41a6311f6b3ed2cc94919d042aed51c46cdf3e2f","message":"add streaming parser tests","stats":{"files_changed":9,"insertions":132,"deletions":1,"files":["tests/fixtures/centos-7.7/vmstat-a-streaming.json",".../centos-7.7/vmstat-at-5-10-streaming.json",".../fixtures/centos-7.7/vmstat-awt-streaming.json","tests/fixtures/centos-7.7/vmstat-d-streaming.json","tests/fixtures/centos-7.7/vmstat-dt-streaming.json","tests/fixtures/centos-7.7/vmstat-streaming.json","tests/fixtures/centos-7.7/vmstat-w-streaming.json","tests/test_ping_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/vmstat-a-streaming.json","lines_changed":1},{"name":".../centos-7.7/vmstat-at-5-10-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/vmstat-awt-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-d-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-dt-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-w-streaming.json","lines_changed":1},{"name":"tests/test_ping_s.py","lines_changed":2},{"name":"tests/test_vmstat_s.py","lines_changed":124}]}},{"commit":"978760ec57e04e3ec347c8764bfad015b6dddbff","message":"add exception class name to error string","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]}},{"commit":"d410425537817964ceb7b61e0fdff6c03fdf8766","message":"replace single quotes with double quotes in doc","stats":{"files_changed":4,"insertions":136,"deletions":136,"files":["docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/vmstat.md","lines_changed":68},{"name":"docs/parsers/vmstat_s.md","lines_changed":68},{"name":"jc/parsers/vmstat.py","lines_changed":68},{"name":"jc/parsers/vmstat_s.py","lines_changed":68}]}},{"commit":"6b7430329cbe1bfb95b47bcfe031906641c127e1","message":"doc update","stats":{"files_changed":5,"insertions":269,"deletions":1,"files":["README.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat_s.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":145},{"name":"docs/parsers/vmstat_s.md","lines_changed":105},{"name":"jc/parsers/vmstat_s.py","lines_changed":6},{"name":"man/jc.1","lines_changed":12}]}},{"commit":"40fe0d4a6081a1233bf5c3eb51a01da1f12bc4dc","message":"working parser","stats":{"files_changed":1,"insertions":141,"deletions":22,"files":["jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":163}]}},{"commit":"365c5354a0349e470558d15243217a064e73da38","message":"remove debug print statement","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/vmstat.py"],"file_stats":[{"name":"jc/parsers/vmstat.py","lines_changed":1}]}},{"commit":"b246a05cbb4c1c564f81b3e72cecb62edbe6ced6","message":"fix vmstat-s name","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"9e5a7a4abb8668d043625951a05eb5733cbbd56f","message":"add vmstat sample output","stats":{"files_changed":7,"insertions":37,"deletions":0,"files":["tests/fixtures/centos-7.7/vmstat-a.out","tests/fixtures/centos-7.7/vmstat-at-5-10.out","tests/fixtures/centos-7.7/vmstat-awt.out","tests/fixtures/centos-7.7/vmstat-d.out","tests/fixtures/centos-7.7/vmstat-dt.out","tests/fixtures/centos-7.7/vmstat-w.out","tests/fixtures/centos-7.7/vmstat.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/vmstat-a.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/vmstat-at-5-10.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/vmstat-awt.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/vmstat-d.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/vmstat-dt.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/vmstat-w.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/vmstat.out","lines_changed":4}]}},{"commit":"f266acbccafc040c375723147b8e5d7fddb1e697","message":"add processing logic","stats":{"files_changed":1,"insertions":106,"deletions":14,"files":["jc/parsers/vmstat.py"],"file_stats":[{"name":"jc/parsers/vmstat.py","lines_changed":120}]}},{"commit":"4e3b471f1801f1b9006b18cae2a3d816f361262e","message":"add format for vmstat","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]}},{"commit":"5e28736c2e0c951e71e6531e03a9619279d95d3a","message":"add vmstat and vmstat_s","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"a91913a3b517ea0dbb25d6e4cc92850eb2fde5ab","message":"streaming parser template","stats":{"files_changed":1,"insertions":106,"deletions":0,"files":["jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":106}]}},{"commit":"90c64f0ae0d97d025adee40970d89baca79ee4ac","message":"initial working parser","stats":{"files_changed":1,"insertions":182,"deletions":0,"files":["jc/parsers/vmstat.py"],"file_stats":[{"name":"jc/parsers/vmstat.py","lines_changed":182}]}},{"commit":"7cc642ed1a476abda709ac9b79900a1de12e1ef7","message":"formatting","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":4}]}},{"commit":"809f64d35a92bb3d7380fa9d78ac1421a10b81fc","message":"Merge pull request #169 from kellyjonbrazil/streaming"},{"commit":"a6f859a55edae50fcc185948736218404cfaa929","message":"add final ping_s tests","stats":{"files_changed":18,"insertions":168,"deletions":153,"files":[".../osx-10.14.6/ping-hostname-p-streaming.json",".../osx-10.14.6/ping-hostname-s-streaming.json",".../osx-10.14.6/ping-hostname-streaming.json",".../osx-10.14.6/ping-ip-dup-streaming.json",".../fixtures/osx-10.14.6/ping-ip-p-streaming.json",".../fixtures/osx-10.14.6/ping-ip-s-streaming.json","tests/fixtures/osx-10.14.6/ping-ip-streaming.json",".../osx-10.14.6/ping-ip-unreachable-streaming.json",".../osx-10.14.6/ping6-hostname-p-streaming.json",".../osx-10.14.6/ping6-hostname-s-streaming.json",".../osx-10.14.6/ping6-hostname-streaming.json",".../osx-10.14.6/ping6-ip-dup-streaming.json",".../fixtures/osx-10.14.6/ping6-ip-p-streaming.json",".../fixtures/osx-10.14.6/ping6-ip-s-streaming.json","tests/fixtures/osx-10.14.6/ping6-ip-streaming.json","tests/fixtures/pi/ping-ip-O-D-streaming.json","tests/fixtures/pi/ping-ip-O-streaming.json","tests/test_ping_s.py"],"file_stats":[{"name":".../osx-10.14.6/ping-hostname-p-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping-hostname-s-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping-hostname-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping-ip-dup-streaming.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/ping-ip-p-streaming.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/ping-ip-s-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping-ip-unreachable-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping6-hostname-p-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping6-hostname-s-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping6-hostname-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping6-ip-dup-streaming.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/ping6-ip-p-streaming.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/ping6-ip-s-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-streaming.json","lines_changed":1},{"name":"tests/fixtures/pi/ping-ip-O-D-streaming.json","lines_changed":1},{"name":"tests/fixtures/pi/ping-ip-O-streaming.json","lines_changed":1},{"name":"tests/test_ping_s.py","lines_changed":304}]}},{"commit":"39ef88078f43708e470d3c1b2fd95e76b5cbeb08","message":"add destination_ip to error lines","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":1}]}},{"commit":"aeea5e8d2eab2fef3e14637f512aed7b117c4a3f","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/test_ls_s.py"],"file_stats":[{"name":"tests/test_ls_s.py","lines_changed":2}]}},{"commit":"1a0700bff4bdebbd9f1f92f2fc7a56c4d5ed6925","message":"add more ping-s tests","stats":{"files_changed":31,"insertions":240,"deletions":213,"files":[".../fedora32/ping-hostname-O-D-p-s-streaming.json",".../fedora32/ping-hostname-O-p-streaming.json",".../fedora32/ping-hostname-O-streaming.json","tests/fixtures/fedora32/ping-ip-O-D-streaming.json","tests/fixtures/fedora32/ping-ip-O-streaming.json",".../fedora32/ping6-hostname-O-D-p-s-streaming.json",".../fedora32/ping6-hostname-O-p-streaming.json",".../fedora32/ping6-ip-O-D-p-streaming.json",".../fixtures/fedora32/ping6-ip-O-p-streaming.json",".../freebsd12/ping-hostname-p-streaming.json",".../freebsd12/ping-hostname-s-streaming.json",".../freebsd12/ping-hostname-streaming.json","tests/fixtures/freebsd12/ping-ip-p-streaming.json","tests/fixtures/freebsd12/ping-ip-s-streaming.json","tests/fixtures/freebsd12/ping-ip-streaming.json",".../freebsd12/ping6-hostname-p-streaming.json",".../freebsd12/ping6-hostname-s-streaming.json",".../freebsd12/ping6-hostname-streaming.json","tests/fixtures/freebsd12/ping6-ip-p-streaming.json","tests/fixtures/freebsd12/ping6-ip-s-streaming.json","tests/fixtures/freebsd12/ping6-ip-streaming.json",".../ping-hostname-O-D-p-s-streaming.json",".../ubuntu-18.04/ping-hostname-O-p-streaming.json",".../ubuntu-18.04/ping-hostname-O-streaming.json",".../ubuntu-18.04/ping-ip-O-D-streaming.json",".../fixtures/ubuntu-18.04/ping-ip-O-streaming.json",".../ping6-hostname-O-D-p-s-streaming.json",".../ubuntu-18.04/ping6-hostname-O-p-streaming.json",".../ubuntu-18.04/ping6-ip-O-D-p-streaming.json",".../ubuntu-18.04/ping6-ip-O-p-streaming.json","tests/test_ping_s.py"],"file_stats":[{"name":".../fedora32/ping-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../fedora32/ping-hostname-O-p-streaming.json","lines_changed":1},{"name":".../fedora32/ping-hostname-O-streaming.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-ip-O-D-streaming.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-ip-O-streaming.json","lines_changed":1},{"name":".../fedora32/ping6-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../fedora32/ping6-hostname-O-p-streaming.json","lines_changed":1},{"name":".../fedora32/ping6-ip-O-D-p-streaming.json","lines_changed":1},{"name":".../fixtures/fedora32/ping6-ip-O-p-streaming.json","lines_changed":1},{"name":".../freebsd12/ping-hostname-p-streaming.json","lines_changed":1},{"name":".../freebsd12/ping-hostname-s-streaming.json","lines_changed":1},{"name":".../freebsd12/ping-hostname-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-p-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-s-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-streaming.json","lines_changed":1},{"name":".../freebsd12/ping6-hostname-p-streaming.json","lines_changed":1},{"name":".../freebsd12/ping6-hostname-s-streaming.json","lines_changed":1},{"name":".../freebsd12/ping6-hostname-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-p-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-s-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-streaming.json","lines_changed":1},{"name":".../ping-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping-hostname-O-p-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping-hostname-O-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping-ip-O-D-streaming.json","lines_changed":1},{"name":".../fixtures/ubuntu-18.04/ping-ip-O-streaming.json","lines_changed":1},{"name":".../ping6-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-hostname-O-p-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-ip-O-D-p-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-ip-O-p-streaming.json","lines_changed":1},{"name":"tests/test_ping_s.py","lines_changed":423}]}},{"commit":"b5fa6d068f240671eb948b055cd4f7bf127e0ec0","message":"update docs","stats":{"files_changed":5,"insertions":25,"deletions":5,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":6},{"name":"docs/parsers/ping_s.md","lines_changed":6},{"name":"jc/parsers/foo_s.py","lines_changed":6},{"name":"jc/parsers/ls_s.py","lines_changed":6},{"name":"jc/parsers/ping_s.py","lines_changed":6}]}},{"commit":"1baec0b420feff068f2dc1e35499f78aa7d0a6e0","message":"add some streaming tests","stats":{"files_changed":13,"insertions":815,"deletions":0,"files":[".../ping-hostname-O-D-p-s-streaming.json",".../centos-7.7/ping-hostname-O-p-streaming.json",".../centos-7.7/ping-hostname-O-streaming.json",".../fixtures/centos-7.7/ping-ip-O-D-streaming.json",".../centos-7.7/ping-ip-O-streaming-quiet.json","tests/fixtures/centos-7.7/ping-ip-O-streaming.json",".../fixtures/centos-7.7/ping-ip-dup-streaming.json",".../ping6-hostname-O-D-p-s-streaming.json",".../centos-7.7/ping6-hostname-O-p-streaming.json",".../centos-7.7/ping6-ip-O-D-p-streaming.json",".../centos-7.7/ping6-ip-O-p-streaming.json",".../centos-7.7/ping6-ip-dup-streaming.json","tests/test_ping_s.py"],"file_stats":[{"name":".../ping-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping-hostname-O-p-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping-hostname-O-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/ping-ip-O-D-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping-ip-O-streaming-quiet.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-ip-O-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/ping-ip-dup-streaming.json","lines_changed":1},{"name":".../ping6-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping6-hostname-O-p-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping6-ip-O-D-p-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping6-ip-O-p-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping6-ip-dup-streaming.json","lines_changed":1},{"name":"tests/test_ping_s.py","lines_changed":803}]}},{"commit":"4f2a4e1dee9d722d2aa5ddf2c082a358c88cf640","message":"skip blank lines and warning lines","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":8}]}},{"commit":"758d617668d1f9d0f27b52d46749e5b67a570cf1","message":"doc update","stats":{"files_changed":5,"insertions":5,"deletions":5,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2}]}},{"commit":"55322c37f57a9c8e28641a61928fad2329f5e50d","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":4}]}},{"commit":"d19ea5552bb3a379f7f92bcb58794c557ecc6647","message":"add streaming ls parser tests","stats":{"files_changed":12,"insertions":193,"deletions":0,"files":["tests/fixtures/centos-7.7/ls-al-streaming.json","tests/fixtures/centos-7.7/ls-alR-streaming.json","tests/fixtures/centos-7.7/ls-alh-streaming.json","tests/fixtures/osx-10.14.6/ls-al-streaming.json","tests/fixtures/osx-10.14.6/ls-alR-streaming.json","tests/fixtures/osx-10.14.6/ls-alh-streaming.json",".../osx-10.14.6/ls-lR-empty-folder-streaming.json","tests/fixtures/ubuntu-18.04/ls-al-streaming.json","tests/fixtures/ubuntu-18.04/ls-alR-streaming.json","tests/fixtures/ubuntu-18.04/ls-alh-streaming.json",".../fixtures/ubuntu-18.04/ls-l-iso-streaming.json","tests/test_ls_s.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ls-al-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-alR-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-alh-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-al-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-alR-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-alh-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ls-lR-empty-folder-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-al-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-alR-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-alh-streaming.json","lines_changed":1},{"name":".../fixtures/ubuntu-18.04/ls-l-iso-streaming.json","lines_changed":1},{"name":"tests/test_ls_s.py","lines_changed":182}]}},{"commit":"130c3527c1083d399deef00ee8fcaa75f609b485","message":"update docstrings","stats":{"files_changed":6,"insertions":25,"deletions":25,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":8},{"name":"docs/parsers/ping_s.md","lines_changed":12},{"name":"jc/parsers/foo_s.py","lines_changed":6},{"name":"jc/parsers/ls_s.py","lines_changed":10},{"name":"jc/parsers/ping_s.py","lines_changed":12},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"3f221f471416766a860bd19850afda4899ee5eb3","message":"doc update","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":6},{"name":"jc/parsers/ping_s.py","lines_changed":6}]}},{"commit":"d64c4cb39056bb869fc117477612ae5ae2ef3d85","message":"add streaming parsers section","stats":{"files_changed":2,"insertions":141,"deletions":1,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":72},{"name":"templates/manpage_template","lines_changed":70}]}},{"commit":"448c56aa46b72438e4a4c83b10a7eb889e3f50e7","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"9fbea15b6d031baa8c90f2602e39de7cf51408e2","message":"rename state class to _state","stats":{"files_changed":2,"insertions":2,"deletions":8,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":6},{"name":"jc/parsers/ping_s.py","lines_changed":4}]}},{"commit":"932060314b3c1ce518b9f57532e124285cb3ad0a","message":"doc update","stats":{"files_changed":2,"insertions":41,"deletions":11,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":50},{"name":"jc/parsers/ping_s.py","lines_changed":2}]}},{"commit":"5e68ae50097cb339f3390449db7e3f189a716320","message":"import exception. tighten up os detection","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":7}]}},{"commit":"d03541beae44a4571a7d0481af01a5c19506207f","message":"add docstring examples. add exception raise when OS cannot be detected.","stats":{"files_changed":1,"insertions":12,"deletions":5,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":17}]}},{"commit":"516fa571d90a0c93134c953c15ce84dd31b96b4b","message":"remove unused variable. use elif instead of if for linux vs. bsd detection","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":3}]}},{"commit":"a19c12096a8e8de02a6ff761cc9c13ec249d416e","message":"initial working parser for both linux and bsd","stats":{"files_changed":1,"insertions":373,"deletions":143,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":516}]}},{"commit":"758f27945de4f0897405eba02c7908d815ce6e9b","message":"change data_bytes and bytes to sent_bytes and response_bytes","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":18}]}},{"commit":"8b1e8d58df22f8542ccaf7bf3e1eabe6132e7a42","message":"remove unneeded line","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":1}]}},{"commit":"b967489d085319facee077958deaa04956a98343","message":"complete linux coverage including summary","stats":{"files_changed":1,"insertions":81,"deletions":40,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":121}]}},{"commit":"870d0218be2641e3eddb114c23d54deb23155f25","message":"add unbuffer note","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2}]}},{"commit":"84020bc2af294cb065105f1399453aefc98eb180","message":"change error_msg to error in -q result docs","stats":{"files_changed":7,"insertions":12,"deletions":6,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/utils.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":6},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"4efe5344e069ed921f208bcbbd097705be2d3b4f","message":"add links to HN and Reddit","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"9182c545134b3d56d27d2c1d9bda678532bdc3fb","message":"formatting","stats":{"files_changed":1,"insertions":3,"deletions":8,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":11}]}},{"commit":"28f0ab0b02d21fc060f1ac7181f85552798dc4bd","message":"update streaming error messages","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/ls_s.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":2}]}},{"commit":"90d1a30696b2cbfbb06a55cc0cf920cf8ecd89aa","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"130b3738cc57fe261e8ef881a57b7836acd7e7e9","message":"shorten successful yield to a single line","stats":{"files_changed":4,"insertions":21,"deletions":26,"files":["jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":8},{"name":"jc/parsers/ls_s.py","lines_changed":8},{"name":"jc/parsers/ping_s.py","lines_changed":14},{"name":"jc/utils.py","lines_changed":17}]}},{"commit":"92c7357615af7689db273aa78d666b35a2ec7a70","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":2}]}},{"commit":"c80f8633349c00ea461b8927f9949fe19b2f46ee","message":"simplify return condition formatting","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/foo.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":10}]}},{"commit":"4642c20179d4643e0cf1970b264da7d9d91628de","message":"formatting","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"templates/readme_template","lines_changed":4}]}},{"commit":"5288eb22aadbbc1005b16428b94d2b07e9a75e3c","message":"add info about streaming parser performance characteristics","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"df8387a1a99df69eac5005662aaf56d506fa0efd","message":"streaming parsers cannot be used with the magic syntax","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"cc38c27f44d3f088609b878304cab8eed75fc8f2","message":"formatting","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"templates/readme_template","lines_changed":3}]}},{"commit":"64f5357d69fe88b45d710d38948969699e1ca12f","message":"add streaming parsers section","stats":{"files_changed":2,"insertions":84,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":42},{"name":"templates/readme_template","lines_changed":42}]}},{"commit":"51debb5649bef431e51e543f1c9270e2810aa58f","message":"add vmstat parser and change from linebuffer to unbuffer","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]}},{"commit":"b48d05a4313b27cf5e69d3e4259542e0b131b60f","message":"change from line buffer output to unbuffer output","stats":{"files_changed":5,"insertions":15,"deletions":15,"files":["README.md","jc/cli.py","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":8},{"name":"man/jc.1","lines_changed":10},{"name":"templates/manpage_template","lines_changed":8},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"4e7f6b337db61b8a106cf958f6b874157909c87a","message":"simplify yield statements","stats":{"files_changed":3,"insertions":17,"deletions":25,"files":["jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":15},{"name":"jc/parsers/ls_s.py","lines_changed":9},{"name":"jc/parsers/ping_s.py","lines_changed":18}]}},{"commit":"a509d99cafd80862721595ee59ccc4a471b5e5a3","message":"add stream_success dictionary","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":8}]}},{"commit":"481e45fb644ac88fa77ef35643b793f179fe6859","message":"limit parse error msg lenght","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2}]}},{"commit":"e9038e1720e1c0e520e2f29b718aa8505cbbb9a2","message":"initial streaming ping docs","stats":{"files_changed":1,"insertions":66,"deletions":0,"files":["docs/parsers/ping_s.md"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":66}]}},{"commit":"8fd9e582bf29275c4daaa3be88ea8d196411b34a","message":"doc update","stats":{"files_changed":1,"insertions":15,"deletions":17,"files":["docs/parsers/ls_s.md"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":32}]}},{"commit":"c1fd6f48a5a3501499c9fca7239673b8555cc7c6","message":"add stream_error docs","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["docs/utils.md"],"file_stats":[{"name":"docs/utils.md","lines_changed":6}]}},{"commit":"af615c7f4b3f589ffc1b37cf9834062a04c013cb","message":"add line buffer output option","stats":{"files_changed":6,"insertions":26,"deletions":5,"files":["CHANGELOG","README.md","jc/cli.py","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"README.md","lines_changed":4},{"name":"jc/cli.py","lines_changed":7},{"name":"man/jc.1","lines_changed":11},{"name":"templates/manpage_template","lines_changed":4},{"name":"templates/readme_template","lines_changed":3}]}},{"commit":"bf0bc32d7ae6cabe07906207f4f08c2e81802c80","message":"flush streamed text for better piping experience","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]}},{"commit":"2d6b53e012181a4c33bab441880c47c0fc0b0601","message":"add pattern support. move unparsable line detection to standard streaming parser style","stats":{"files_changed":1,"insertions":36,"deletions":42,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":78}]}},{"commit":"51271fea0fbd7bd63863ba05c399b4675dc5b4bf","message":"somewhat working parser","stats":{"files_changed":1,"insertions":139,"deletions":149,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":288}]}},{"commit":"2deb473e0bc96c0e39ec4074a6df4b941ba2172b","message":"initial streaming ping parser","stats":{"files_changed":1,"insertions":262,"deletions":0,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":262}]}},{"commit":"23eeb33b3da43a679c3bf3f3643cfa552a1164e1","message":"modify stream_error message","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]}},{"commit":"f50dfaef45632241f8f6972fa19bb17c54a457ff","message":"use stream_error function for exceptions. raise on non -l ls output","stats":{"files_changed":1,"insertions":6,"deletions":13,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":19}]}},{"commit":"55bb71e9d466cc9ee5f7fd8eca1101c941cbcb35","message":"add streaming ping parser. update streaming exception message","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]}},{"commit":"dab9357d286962b70224d6fafbf90a4c0cbc9980","message":"use stream_error function for exceptions","stats":{"files_changed":1,"insertions":1,"deletions":12,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":13}]}},{"commit":"27eb427245b5126335cef0adb5e57522272474b5","message":"add stream_error function","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":16}]}},{"commit":"260f3685d944ded84396ae3395773d6898803fb6","message":"add streaming parser template","stats":{"files_changed":1,"insertions":112,"deletions":0,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":112}]}},{"commit":"76e78fc0c34b88a90fef876eebef92bd71cd772c","message":"doc updates","stats":{"files_changed":1,"insertions":9,"deletions":11,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":20}]}},{"commit":"1ac944fa028a400ae7b39b811fcf368c9bf5e259","message":"add -q option info to docstring","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2}]}},{"commit":"986bc9b042a940f8dd34f0541bcb9b5840df579e","message":"cleanup unused code","stats":{"files_changed":1,"insertions":9,"deletions":43,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":52}]}},{"commit":"5a7942069b1f3ef3b45992b482bfb6bb973f7e8e","message":"add support for parent field","stats":{"files_changed":1,"insertions":28,"deletions":28,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":56}]}},{"commit":"f6c6fc13ac4c779667807df12444a41ef28a8011","message":"enhance error msg when streaming parser is used","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]}},{"commit":"1d8cfae89f24192b6fab087f59c9b8988ef363dc","message":"only print _meta object if -q or quiet flag is used. Also, add message to the end of exceptions informing of the -q option to ignore errors","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":11}]}},{"commit":"787df51239ffa8260b48d6a3a58e6ff07d5e0f64","message":"remove `\\n` from end of line in exception message","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2}]}},{"commit":"5e7f302a9c45343c36e81944db38a435e6c8a20c","message":"Raise exceptions unless the -q or quiet flag are used","stats":{"files_changed":1,"insertions":12,"deletions":10,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":22}]}},{"commit":"3d10fd40b56264836874da19aa72351e6d5cfbf7","message":"remove print flush for better performance. Roll json.JSONDecodeError into the parse try/except block","stats":{"files_changed":1,"insertions":14,"deletions":13,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":27}]}},{"commit":"57e3bf239cc76d3b0ee0eddc618171eb90c28dec","message":"formatting for docs","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":6},{"name":"jc/parsers/ls_s.py","lines_changed":6}]}},{"commit":"ccb09861e82044e17ec51277b3c8875e5ba9d87d","message":"formatting for docs","stats":{"files_changed":2,"insertions":20,"deletions":20,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":20},{"name":"jc/parsers/ls_s.py","lines_changed":20}]}},{"commit":"94551d75dd926c7f558e5cab47ba9483a20c6b3c","message":"doc update","stats":{"files_changed":10,"insertions":116,"deletions":49,"files":["CHANGELOG","README.md","docs/parsers/ls_s.md","docs/readme.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz","mangen.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":6},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/ls_s.md","lines_changed":89},{"name":"docs/readme.md","lines_changed":25},{"name":"jc/__init__.py","lines_changed":27},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":7},{"name":"man/jc.1.gz","lines_changed":null},{"name":"mangen.py","lines_changed":8},{"name":"setup.py","lines_changed":2}]}},{"commit":"6e21218425359210591827e936b8d48d9644df92","message":"working prototype of streaming ls parser","stats":{"files_changed":2,"insertions":234,"deletions":3,"files":["jc/cli.py","jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":23},{"name":"jc/parsers/ls_s.py","lines_changed":214}]}},{"commit":"ff0fda48fc48760a7293528155d222c6456f84c4","message":"Merge pull request #168 from kellyjonbrazil/master"},{"commit":"528aac7ad87feae2093aba563c83a29ebf75e5f9","message":"use subprocess in python example","stats":{"files_changed":2,"insertions":8,"deletions":38,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":23},{"name":"templates/readme_template","lines_changed":23}]}},{"commit":"ab482e521d4cecfffa5393805b1d7de4389db49a","message":"Merge pull request #163 from kellyjonbrazil/dev"},{"commit":"e08b61fa81b1bd2304d04db5cdc8b809fe9c6032","message":"add schema note to sfdisk","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"ce61bd1d2b4323d9c2d0454c4f646521913ae20d","message":"add tests for -F fixes","stats":{"files_changed":7,"insertions":73,"deletions":7,"files":["tests/fixtures/debian10/sfdisk-F2.json","tests/fixtures/debian10/sfdisk-F2.out","tests/fixtures/debian10/sfdisk-l2.json","tests/fixtures/debian10/sfdisk-l2.out","tests/fixtures/debian10/sfdisk-l3.json","tests/fixtures/debian10/sfdisk-l3.out","tests/test_sfdisk.py"],"file_stats":[{"name":"tests/fixtures/debian10/sfdisk-F2.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-F2.out","lines_changed":6},{"name":"tests/fixtures/debian10/sfdisk-l2.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-l2.out","lines_changed":15},{"name":"tests/fixtures/debian10/sfdisk-l3.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-l3.out","lines_changed":13},{"name":"tests/test_sfdisk.py","lines_changed":43}]}},{"commit":"7b708f75182bf3ed33478a7de62e9c2496f0b994","message":"Don't convert 'size' to int, except for legacy -d support. Change partition table detection logic to fix -F output","stats":{"files_changed":3,"insertions":11,"deletions":5,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-l.json","tests/fixtures/debian10/sfdisk-l.json"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":12},{"name":"tests/fixtures/centos-8/sfdisk-l.json","lines_changed":2},{"name":"tests/fixtures/debian10/sfdisk-l.json","lines_changed":2}]}},{"commit":"89ca50c7fc1bf64f34c915e65031d0bc520e6466","message":"add -l to sfdisk raw example","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/sfdisk.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"fb54899dcc2160450448e0d6111557cebdeb0d4d","message":"doc update","stats":{"files_changed":4,"insertions":38,"deletions":23,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":59},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"0a625ad7ddd9c804052d98930165cd22049546bd","message":"remove unneeded lines","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/sfdisk.py"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":2}]}},{"commit":"d32e45efbe0d71a9a132abfb2855f1f4ccee9916","message":"add sfdisk tests","stats":{"files_changed":6,"insertions":69,"deletions":1,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-F.json","tests/fixtures/centos-8/sfdisk-l.json","tests/fixtures/debian10/sfdisk-F.json","tests/fixtures/debian10/sfdisk-l.json","tests/test_sfdisk.py"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":9},{"name":"tests/fixtures/centos-8/sfdisk-F.json","lines_changed":1},{"name":"tests/fixtures/centos-8/sfdisk-l.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-F.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-l.json","lines_changed":1},{"name":"tests/test_sfdisk.py","lines_changed":57}]}},{"commit":"c77696bc789cdfd286a7479c3d9f67d23149d0ce","message":"version bump","stats":{"files_changed":3,"insertions":6,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":4},{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"736fde9e784587cb2ef344bbf31d876eafea7741","message":"add support for newer versions of sfdisk","stats":{"files_changed":5,"insertions":147,"deletions":28,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-F.out","tests/fixtures/centos-8/sfdisk-l.out","tests/fixtures/debian10/sfdisk-F.out","tests/fixtures/debian10/sfdisk-l.out"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":127},{"name":"tests/fixtures/centos-8/sfdisk-F.out","lines_changed":9},{"name":"tests/fixtures/centos-8/sfdisk-l.out","lines_changed":24},{"name":"tests/fixtures/debian10/sfdisk-F.out","lines_changed":3},{"name":"tests/fixtures/debian10/sfdisk-l.out","lines_changed":12}]}},{"commit":"9c1ad92fed9a4b3a0da66d6b71deec8d608edfa9","message":"fix examples","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":12}]}},{"commit":"1a9fd2139d156a51bf2d25db951e47e96da77f7d","message":"add \"For new parsers:\"","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]}},{"commit":"7661e7f27a4e5c379ea37c7f95496aca2c1e2910","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]}},{"commit":"f857b7fbf7862ddd7eb5ab20470f5dbaacc62119","message":"add custom parser folder info","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]}},{"commit":"d94d12dbc5fb3e3712b2f1aea949013cb8213e28","message":"add foo parser template info","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":11}]}},{"commit":"700916276ae8b0a106410e3dd2ea3e00248ee37a","message":"Merge pull request #159 from kellyjonbrazil/master"},{"commit":"834e52369ceb479776ddc8fc2931790af53b9c18","message":"update man page","stats":{"files_changed":3,"insertions":1,"deletions":5,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":6},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"1ce53365de61421c8bd43e04590038083894153b","message":"Merge pull request #156 from kellyjonbrazil/dev"},{"commit":"473f70668f04a38765559c5dbf0468af24d625c9","message":"Merge branch 'master' into dev"},{"commit":"0dbd2702f6ab2640b2ccdea92411ac0789673e66","message":"reformat doc_text for nicer indentation","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]}},{"commit":"01e3764a9b6ba902aea522bf6b7005fd37b3acbb","message":"fix join syntax","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"ff9c81722ae7221364e9bcb83d98b16b4263334e","message":"try/except for shlex.join since only available in python 3.8","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]}},{"commit":"166aef7a022ed29862ab2e0702d53c591bb5cc77","message":"version bump","stats":{"files_changed":6,"insertions":4,"deletions":4,"files":["docs/parsers/stat.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz","setup.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null},{"name":"setup.py","lines_changed":2}]}},{"commit":"78caf7646baf5d35602fd76771443cd64bd783af","message":"add stat fix","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]}},{"commit":"1f99d40cecc5d88a246f3558f71db376ebd885c6","message":"fix filename with spaces for osx/bsd","stats":{"files_changed":4,"insertions":17,"deletions":2,"files":["jc/parsers/stat.py","tests/fixtures/osx-10.14.6/stat-filename-with-spaces.json","tests/fixtures/osx-10.14.6/stat-filename-with-spaces.out","tests/test_stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"tests/fixtures/osx-10.14.6/stat-filename-with-spaces.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/stat-filename-with-spaces.out","lines_changed":2},{"name":"tests/test_stat.py","lines_changed":12}]}},{"commit":"4c2912d3d5ec1fd2d5d891f2b3c58a33dd8572be","message":"use shlex.join to quote run_command_str for better error messages","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]}},{"commit":"45e6e06be581f787f707e3f5645129c713478d16","message":"add glob and process substitution fixes","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]}},{"commit":"fdbe3e05f323c95687a1137983f9623911008ca2","message":"fix issue with globs not including filenames with spaces with magic syntax (introduced during switch to use subprocess to grab process exit code). No longer need to shlex quote arguments.","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]}},{"commit":"7cc168f6409af13fda815d0d2a6db25b7c9ba367","message":"add comment","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"ff2d609c9b5f5f57f3331e5593e8fe87c01654dd","message":"add close_fds=False in subprocess.Popen() to allow process substitution in magic syntax. Also check for too many open files exception","stats":{"files_changed":1,"insertions":12,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":13}]}},{"commit":"2689697b4c21758903e5f74ec069e89be585aba2","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"f90a0ea8ab15629b7786e4431e9c968c3a896ee0","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":4}]}},{"commit":"caabe60f849fb2422e47b8f10e0ff35beb706dcd","message":"fix kv example","stats":{"files_changed":5,"insertions":3,"deletions":3,"files":["docs/parsers/kv.md","jc/man/jc.1.gz","jc/parsers/kv.py","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/kv.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/kv.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"2bef4ed6038201f54339e750a833260dc1998591","message":"package updates","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","README.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"README.md","lines_changed":4}]}},{"commit":"ee57be533b12593a33a2abbb2892697f0bd40c65","message":"fix sfdisk example","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2}]}},{"commit":"c5b7aaca25d6b66d3e44256c2c6760a4cf2956ec","message":"Merge pull request #149 from kellyjonbrazil/dev"},{"commit":"7a1be905bb8654558afb5979b0bd78d4a8488874","message":"version bump","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"5798495a11afa2f72ce6f79be785d46240fcbeb4","message":"add 1.15.7 to 1.16.0 changes","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":6}]}},{"commit":"46171e220252ec92d18e744d2a57c1d6a6dc19f6","message":"add sfdisk example","stats":{"files_changed":1,"insertions":69,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":69}]}},{"commit":"dd5c924ff505dcc2a9c851d2425677bdf16ea462","message":"add man page location change","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]}},{"commit":"30c4ab297658228a07ef9b1585516719af3febb0","message":"new man page location","stats":{"files_changed":3,"insertions":515,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":515},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"26ea4d47b33277efb0ddafe8f421791696277c07","message":"version bump and deprecate /man/jc.1.gz and /jc/man/jc.1.gz","stats":{"files_changed":5,"insertions":14,"deletions":3,"files":["CHANGELOG","MANIFEST.in","jc/__init__.py","mangen.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":10},{"name":"MANIFEST.in","lines_changed":1},{"name":"jc/__init__.py","lines_changed":2},{"name":"mangen.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"2732cd175c1e878210707162de3928f33fb2f201","message":"include CHANGELOG in source distribution","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["CHANGELOG","MANIFEST.in"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"MANIFEST.in","lines_changed":1}]}},{"commit":"3e54b597be88b0e342e4361b7f2c1af447f9482b","message":"add timezone change for unit tests","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]}},{"commit":"f10ebea20962084833e5c1ebd9bc90a251bf3ff4","message":"update tests to set correct timezone on POSIX systems","stats":{"files_changed":11,"insertions":78,"deletions":0,"files":["tests/test_date.py","tests/test_dig.py","tests/test_dir.py","tests/test_last.py","tests/test_ls.py","tests/test_rpm_qai.py","tests/test_stat.py","tests/test_systeminfo.py","tests/test_upower.py","tests/test_utils.py","tests/test_who.py"],"file_stats":[{"name":"tests/test_date.py","lines_changed":7},{"name":"tests/test_dig.py","lines_changed":7},{"name":"tests/test_dir.py","lines_changed":7},{"name":"tests/test_last.py","lines_changed":7},{"name":"tests/test_ls.py","lines_changed":7},{"name":"tests/test_rpm_qai.py","lines_changed":7},{"name":"tests/test_stat.py","lines_changed":7},{"name":"tests/test_systeminfo.py","lines_changed":7},{"name":"tests/test_upower.py","lines_changed":7},{"name":"tests/test_utils.py","lines_changed":8},{"name":"tests/test_who.py","lines_changed":7}]}},{"commit":"2c6f3993cb4c5e559dbac7a479ec889aa2cba752","message":"remove extra comma","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/route.md","jc/man/jc.1.gz","jc/parsers/route.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/route.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"708a696920b52c2614edcdba264912527b2dfbef","message":"remove extra lines","stats":{"files_changed":3,"insertions":0,"deletions":2,"files":["docs/parsers/route.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/route.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"20bbb5d331575c8fc33ba63643882a62650c97b8","message":"remove extra lines","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":2}]}},{"commit":"223e785b547d9376174efa15321d60a533847c57","message":"rename variable","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/sfdisk.py"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":8}]}},{"commit":"3d78692c59980e4d70361d3a9f74bacc3f21376e","message":"add sfdisk tests","stats":{"files_changed":11,"insertions":150,"deletions":1,"files":["tests/fixtures/centos-7.7/sfdisk-d-multi.json","tests/fixtures/centos-7.7/sfdisk-d-multi.out","tests/fixtures/centos-7.7/sfdisk-d.json","tests/fixtures/centos-7.7/sfdisk-d.out","tests/fixtures/centos-7.7/sfdisk-l-multi.json","tests/fixtures/centos-7.7/sfdisk-l-multi.out","tests/fixtures/centos-7.7/sfdisk-l.json","tests/fixtures/centos-7.7/sfdisk-luB.json","tests/fixtures/centos-7.7/sfdisk-luM.json","tests/fixtures/centos-7.7/sfdisk-luS.json","tests/test_sfdisk.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/sfdisk-d-multi.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-d-multi.out","lines_changed":16},{"name":"tests/fixtures/centos-7.7/sfdisk-d.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-d.out","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-l-multi.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-l-multi.out","lines_changed":21},{"name":"tests/fixtures/centos-7.7/sfdisk-l.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-luB.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-luM.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-luS.json","lines_changed":1},{"name":"tests/test_sfdisk.py","lines_changed":106}]}},{"commit":"5321a15dcf13cf14efe578d0f66b651078c3d8a1","message":"update examples","stats":{"files_changed":4,"insertions":8,"deletions":8,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":8},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/sfdisk.py","lines_changed":8},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"a452f8252a593f7914ebece53af9d73f4fd11a19","message":"fix integer conversion","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":4},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/sfdisk.py","lines_changed":4},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"49267f09ac01fead3b20b2d481bb5e0d07af1439","message":"change to root prompt in examples","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/sfdisk.py"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":4}]}},{"commit":"db47f35783e46a8299533c22146d851509f6ceb2","message":"add working sfdisk parser","stats":{"files_changed":15,"insertions":610,"deletions":3,"files":["CHANGELOG","README.md","docs/parsers/sfdisk.md","jc/__init__.py","jc/cli.py","jc/man/jc.1.gz","jc/parsers/sfdisk.py","jc/utils.py","man/jc.1.gz","setup.py","tests/fixtures/centos-7.7/sfdisk-d.out","tests/fixtures/centos-7.7/sfdisk-l.out","tests/fixtures/centos-7.7/sfdisk-luB.out","tests/fixtures/centos-7.7/sfdisk-luM.out","tests/fixtures/centos-7.7/sfdisk-luS.out"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/sfdisk.md","lines_changed":213},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/sfdisk.py","lines_changed":325},{"name":"jc/utils.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/sfdisk-d.out","lines_changed":8},{"name":"tests/fixtures/centos-7.7/sfdisk-l.out","lines_changed":14},{"name":"tests/fixtures/centos-7.7/sfdisk-luB.out","lines_changed":14},{"name":"tests/fixtures/centos-7.7/sfdisk-luM.out","lines_changed":14},{"name":"tests/fixtures/centos-7.7/sfdisk-luS.out","lines_changed":14}]}},{"commit":"d48abf312c1f55ab31aa11da2b6cf6bc8166733b","message":"Merge pull request #147 from kellyjonbrazil/master"},{"commit":"3b22ce41105387e7f46a410460cf04759feef197","message":"fix local plugin parser issue where parser has .py in the name but it is not at the end","stats":{"files_changed":6,"insertions":6,"deletions":3,"files":["CHANGELOG","jc/__init__.py","jc/cli.py","jc/man/jc.1.gz","man/jc.1.gz","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"setup.py","lines_changed":2}]}},{"commit":"c521ca5bc9e2b035cfef6ff65f6b303b3ec44296","message":"change possible to available","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"3ddc1c665990e1e732314330db214a81ab810fe9","message":"add jello","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"a8e19402b7d1f9f06bc40b81a15dec401154180c","message":"remove temporary fix","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["ADVANCED_USAGE.md"],"file_stats":[{"name":"ADVANCED_USAGE.md","lines_changed":4}]}},{"commit":"0927902b30654274743ab9092e90e768709a9937","message":"temp fix for wrong url","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["ADVANCED_USAGE.md"],"file_stats":[{"name":"ADVANCED_USAGE.md","lines_changed":4}]}},{"commit":"572548b42fb6ed9d32a392503d44fac1a8f146d3","message":"Merge pull request #141 from kellyjonbrazil/dev"},{"commit":"ff7ab0a1ed7f468d0e84eb3bf0636f53913c490d","message":"doc updates for v1.15.5","stats":{"files_changed":3,"insertions":0,"deletions":1,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"5db71b05cb28691bbbaa5d668bcd4a4ac7e68b85","message":"add en_US.UTF-8 to LANG info","stats":{"files_changed":5,"insertions":3,"deletions":3,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/manpage_template","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"f9b952885aa7f2b450786a08c3879d9e358886da","message":"add python 3.9.5 packaged info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]}},{"commit":"e7983bc0b29abaca2147038dfad018cba1e67cdf","message":"version bump","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xml.md","docs/parsers/yaml.md"],"file_stats":[{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2}]}},{"commit":"473a6431425fc24a4cc83939ff592e0d49535b9c","message":"add windows msi info","stats":{"files_changed":4,"insertions":10,"deletions":3,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":11},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"14f3d442cb86250b8f2cdfd7977938634b8abd6d","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]}},{"commit":"d6f4ed9ab55fe9b7c2766fb437172af62a1d5c87","message":"add long-form UTC test","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":2}]}},{"commit":"1b8d654444ff8c8b8171c7ac63e2736447a36c09","message":"add error message info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]}},{"commit":"6002af0dca334c0affaff3e9acdca416238c7d82","message":"add more error message detail to the user for ParseError and LibraryNotFound exceptions","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":11}]}},{"commit":"0924d822a30c8806f65574c010561cd6f7c8e181","message":"add windows example","stats":{"files_changed":1,"insertions":8,"deletions":1,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":9}]}},{"commit":"72a37b928924c3edde3a4edb952f98c94aa05f0b","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"5eef7bd769f8ffb03ba396833d1b33484041a99f","message":"use LibraryNotInstalled exception instead of exiting via sys.exit","stats":{"files_changed":2,"insertions":16,"deletions":16,"files":["jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/xml.py","lines_changed":16},{"name":"jc/parsers/yaml.py","lines_changed":16}]}},{"commit":"c6893e1bd5283d982a7ecd6f84bdfdd0054ce7a7","message":"add LibraryNotInstalled exception","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/exceptions.py"],"file_stats":[{"name":"jc/exceptions.py","lines_changed":4}]}},{"commit":"039f6612e491c6f821c001252e122e9b0a781104","message":"Merge pull request #139 from kellyjonbrazil/master"},{"commit":"95aec9c6f9aa8fb4d0dae227410a1346d550f47f","message":"add info about Magic syntax not supporting shell builtins","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["templates/manpage_template"],"file_stats":[{"name":"templates/manpage_template","lines_changed":6}]}},{"commit":"4e9652a8ec2482a64dc029b0ce0e1047a3e49867","message":"spelling","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]}},{"commit":"773b7f4b1f23e04c90e602aab05bc1a7e5aae37b","message":"add space before exit code table","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"templates/readme_template","lines_changed":1}]}},{"commit":"d17ffde9cdc35392ae25d8e9de5328e46067df2a","message":"Merge pull request #138 from kellyjonbrazil/dev"},{"commit":"9c57c09c00e64a9031391b9b70083ad6ecf0bc0b","message":"doc update for release","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"4d730a9de5a0d7c064a9a59e3add86e58d9ec492","message":"add UTC fix","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]}},{"commit":"fc57bcfce24af23f077d6a73f1db4591d8f99c13","message":"fix for when UTC is referenced as \"Coordinated Universal Time\"","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":3}]}},{"commit":"fa5571486c3c19bb7e836f043545ea4f2509ed4d","message":"simplify json_out function","stats":{"files_changed":1,"insertions":10,"deletions":10,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":20}]}},{"commit":"9996c4fe23564dfb52e3c7dbdbd8bd67edfb1e95","message":"update docs for shell builtins","stats":{"files_changed":7,"insertions":10,"deletions":10,"files":["EXAMPLES.md","docs/parsers/history.md","docs/parsers/jobs.md","jc/man/jc.1.gz","jc/parsers/history.py","jc/parsers/jobs.py","man/jc.1.gz"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":6},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":6},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"038d4290248e6bb94762bb51f69e9958f7c1fecb","message":"doc updates","stats":{"files_changed":4,"insertions":4,"deletions":6,"files":["docs/parsers/dig.md","docs/parsers/dir.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":8},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"9bf6facb0d7d76583802309253e7d13ba5148997","message":"remove magic command capability since dir is a shell builtin","stats":{"files_changed":1,"insertions":3,"deletions":6,"files":["jc/parsers/dir.py"],"file_stats":[{"name":"jc/parsers/dir.py","lines_changed":9}]}},{"commit":"965717886e4ebaa6a4a494f189d9fdd01e33eb21","message":"add exceptions module info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]}},{"commit":"e9bfc3dd29f914fd91e937f06d7f59c0f91b8449","message":"add time format, dig compatibility, windows colors fix","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]}},{"commit":"f46b33eacf070b4dc72c8d8a66aae49abd149e5f","message":"add windows time format","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2},{"name":"tests/test_utils.py","lines_changed":2}]}},{"commit":"f475fe44df2fb2661c5bce4d1e602a4bba7e87c7","message":"add new time format for systeminfo","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":3}]}},{"commit":"5fdbe2962d84dad89de23f103d97b76b90450206","message":"make dig compatible with all platforms","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":2}]}},{"commit":"ab291b9eef6ed5c8ab59b5652f676178941d5ce5","message":"only force enable colors when running on windows","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]}},{"commit":"fd411fd77273cb7cf872c03ed6a258ccdee4d261","message":"attempt to get colors working on windows","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]}},{"commit":"b1e95a60a2461dc401ffc299ef6338b65ef12691","message":"remove unnecessary comment","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]}},{"commit":"bb1439f0d53e87f636fba05fbd30c3c79fb16002","message":"use ParseError exception from jc.exceptions module","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":5}]}},{"commit":"ba963d98a0a2b3a0dfca6b211096d802253da5fe","message":"add exceptions module including ParseError","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/exceptions.py"],"file_stats":[{"name":"jc/exceptions.py","lines_changed":5}]}},{"commit":"83440ccb55d0db15b112b8b7d7352493ff516112","message":"error message capitalization","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]}},{"commit":"796f61bfa417afdc6ab48fddbb5502cd0659b840","message":"handle case where the user pipes data and uses magic syntax simultaneously","stats":{"files_changed":1,"insertions":10,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":13}]}},{"commit":"070cac4ae12282458a1e1fc8618ebc473d23cacf","message":"remove commented line","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]}},{"commit":"3ed84f9f42e4e883ddaac28ab49d675600b49424","message":"reorganize main function. remove pass condition.","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":18}]}},{"commit":"a205afb6f355edbb4b98200a980b9601ed0f0658","message":"set run_command_str if run_command is set","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]}},{"commit":"a6d983dd8f3871cbc2391c313340167829a575d9","message":"move run_command_str variable","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]}},{"commit":"b6c8d6d01d740827273265dbb0cfbaf7875ac7f3","message":"add exception handling for filenotfound or other subprocess.popen and json.dumps exceptions","stats":{"files_changed":1,"insertions":45,"deletions":17,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":62}]}},{"commit":"b5a5d5b133f1c0df8023776e59697b7579f8c18a","message":"set parser_name for magic syntax use","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]}},{"commit":"da528e7814b0cf25a359c3556d0e286e7bf004b8","message":"move separators to a variable","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]}},{"commit":"4acebf4f621ac564f82e3a97e6810fbb08a9dbc5","message":"move variables","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]}},{"commit":"4d40808d2b70b7543eadcfd2d35c16ebe91f2f9f","message":"update comments","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":7}]}},{"commit":"c543f00bd3c737f73144bb2980d12793042459b4","message":"simplify piped_output function","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]}},{"commit":"947cf41dfab5811c0e76e371231c59a2d6372752","message":"add exit code info","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]}},{"commit":"8d8c58742e5106c3387a627cd1b1323a76cc9623","message":"formatting","stats":{"files_changed":5,"insertions":21,"deletions":15,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":13},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/manpage_template","lines_changed":10},{"name":"templates/readme_template","lines_changed":13}]}},{"commit":"995ecc9bfb0425b0ee9e4250395b0200b46c1e89","message":"add exit codes section","stats":{"files_changed":3,"insertions":15,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/manpage_template","lines_changed":15}]}},{"commit":"21a15225ebff645439b12d6249dc3e28d7bc09ed","message":"add exit codes section","stats":{"files_changed":2,"insertions":18,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":9},{"name":"templates/readme_template","lines_changed":9}]}},{"commit":"48921d4584068fadb0f776ed7e81c21d89172e2e","message":"ensure exit code never exceeds 255","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]}},{"commit":"342db45edc94ab1c3b3ae70e7cf4ca4076e2c7eb","message":"fix combined exit codes","stats":{"files_changed":1,"insertions":18,"deletions":10,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":28}]}},{"commit":"5f88ecf8443bc6e9a7cda5bc60858f37cc09f4f4","message":"add comments to magic_parser return","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]}},{"commit":"a56aebfe7024914d2c602278964b99d1443de335","message":"remove side-effect comment since it is no longer relevant","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]}},{"commit":"422bb744a82472546d62c72ba05eaa1d18d5068a","message":"update man pages","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"c3b814a15f571ac84a8ce0719d7fd88acf814caf","message":"move imports to the top","stats":{"files_changed":1,"insertions":3,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":7}]}},{"commit":"e4574047a0ef6fcd4a47142421a1d05795c7925a","message":"update tests for magic_parser function","stats":{"files_changed":1,"insertions":21,"deletions":21,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":42}]}},{"commit":"0d7d7951f82627d1fb1e20d1398bd7f88c5ce1be","message":"don't reset sys.argv anymore. check for 'valid_command' instead","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":12}]}},{"commit":"da904e4770a20ae85fc67476ae4a529564d0a3ff","message":"remove final \\n from stderr string when printing","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"19b540041add64fe6650c3634ec869421ffbc769","message":"proof of concept for passing command exit codes when using magic syntax. Needs more testing","stats":{"files_changed":1,"insertions":82,"deletions":51,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":133}]}},{"commit":"f2ffb93eeaf4c8b5aa93f3e8808bdc044582e8a0","message":"formatting","stats":{"files_changed":1,"insertions":0,"deletions":10,"files":["tests/test_ping.py"],"file_stats":[{"name":"tests/test_ping.py","lines_changed":10}]}},{"commit":"c0c0e05642e0f473cde34178d815978fff8fe1ef","message":"add dig `+noall +answer` support","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]}},{"commit":"966978f17e40a338f982628825f30a19d4b84e4c","message":"add more unparsable line ping tests","stats":{"files_changed":5,"insertions":72,"deletions":0,"files":[".../centos-7.7/ping6-ip-O-p-unparsable.json",".../centos-7.7/ping6-ip-O-p-unparsable.out",".../fixtures/osx-10.14.6/ping6-ip-unparsable.json","tests/fixtures/osx-10.14.6/ping6-ip-unparsable.out","tests/test_ping.py"],"file_stats":[{"name":".../centos-7.7/ping6-ip-O-p-unparsable.json","lines_changed":1},{"name":".../centos-7.7/ping6-ip-O-p-unparsable.out","lines_changed":27},{"name":".../fixtures/osx-10.14.6/ping6-ip-unparsable.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-unparsable.out","lines_changed":9},{"name":"tests/test_ping.py","lines_changed":34}]}},{"commit":"8ab08a5231e082940a62fcde4be218b7ba94be31","message":"doc update","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":4}]}},{"commit":"48e534fa03b92b2583c5c6269c76651f3aa420cb","message":"add +noall +answer test","stats":{"files_changed":3,"insertions":17,"deletions":2,"files":["tests/fixtures/osx-10.14.6/dig-noall-answer.json","tests/fixtures/osx-10.14.6/dig-noall-answer.out","tests/test_dig.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/dig-noall-answer.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig-noall-answer.out","lines_changed":4},{"name":"tests/test_dig.py","lines_changed":14}]}},{"commit":"61851c1bd02aa82d5d82e68595e45630ead13d34","message":"add support for +noall +answer","stats":{"files_changed":2,"insertions":85,"deletions":3,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":40},{"name":"jc/parsers/dig.py","lines_changed":48}]}},{"commit":"3c51b2d83d301b4072bbb12fdba4f60b900573da","message":"add tests for unparsable lines on linux","stats":{"files_changed":3,"insertions":40,"deletions":0,"files":[".../centos-7.7/ping-ip-O-unparsedlines.json",".../centos-7.7/ping-ip-O-unparsedlines.out","tests/test_ping.py"],"file_stats":[{"name":".../centos-7.7/ping-ip-O-unparsedlines.json","lines_changed":1},{"name":".../centos-7.7/ping-ip-O-unparsedlines.out","lines_changed":27},{"name":"tests/test_ping.py","lines_changed":12}]}},{"commit":"ee3a28528e152c61f05bdf71f264fe38274b4190","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"916bcdae3881fc9c9f9a91c8c901a714cff3e1da","message":"Merge pull request #136 from kellyjonbrazil/master"},{"commit":"efb1d3e6b2db920423511a9dcf4c5e5fd9d6af43","message":"add blog title and minor formatting","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"templates/readme_template","lines_changed":4}]}},{"commit":"4e6ae66bacc014e49c4a9229d10dcc8e95de436c","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"5ee88e7b679bc163a1916d560be6ff29f51699e8","message":"add use cases section","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":10}]}},{"commit":"c3b68903cbd898f80438af342195eec7575aafd3","message":"add use cases section","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":10}]}},{"commit":"fe1f1013a74bdf6b4284f11dd59db8ea17e5e5d1","message":"add use cases section","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":10}]}},{"commit":"fb14f5439f00d5eaf08651c552189fd4be7358d4","message":"fix and tests for unknown or unparsable errors","stats":{"files_changed":4,"insertions":52,"deletions":3,"files":["jc/parsers/ping.py",".../osx-10.14.6/ping-ip-unknown-errors.json",".../osx-10.14.6/ping-ip-unknown-errors.out","tests/test_ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":7},{"name":".../osx-10.14.6/ping-ip-unknown-errors.json","lines_changed":1},{"name":".../osx-10.14.6/ping-ip-unknown-errors.out","lines_changed":35},{"name":"tests/test_ping.py","lines_changed":12}]}},{"commit":"5ca0fc364eb22d583bee5633cdd7183c1d70bb6c","message":"add unparsed_line to docs","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/parsers/ping.md"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":1}]}},{"commit":"a1fe7037e5267ec4aced719eff3715085eb35bca","message":"add unparsed_line field if line cannot be parsed","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":10}]}},{"commit":"c2af7d113ed8e8cf9af985c969cf29858a3c26a9","message":"add ping updates","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["CHANGELOG","docs/parsers/ping.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"docs/parsers/ping.md","lines_changed":2}]}},{"commit":"ff034e401d5c33efbc3c4bc2f0e386d81eaae7fc","message":"use try/except to make parser more resilient against unknown error types","stats":{"files_changed":1,"insertions":59,"deletions":43,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":102}]}},{"commit":"5abe095beb4b668e5f55fe8c9588677547e4c2a7","message":"update ping docs","stats":{"files_changed":1,"insertions":14,"deletions":3,"files":["docs/parsers/ping.md"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":17}]}},{"commit":"33de5f01e638953c83bb0960dc3550ca4547849b","message":"version bump","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["jc/__init__.py","setup.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":4},{"name":"setup.py","lines_changed":2}]}},{"commit":"8ce155d843806be4ad23491b4401e4eda02e2a1c","message":"add support for error replies in v4 ping on osx and bsd","stats":{"files_changed":5,"insertions":86,"deletions":23,"files":["CHANGELOG","jc/parsers/ping.py",".../fixtures/osx-10.14.6/ping-ip-unreachable.json","tests/fixtures/osx-10.14.6/ping-ip-unreachable.out","tests/test_ping.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/ping.py","lines_changed":56},{"name":".../fixtures/osx-10.14.6/ping-ip-unreachable.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-unreachable.out","lines_changed":35},{"name":"tests/test_ping.py","lines_changed":14}]}},{"commit":"b921d5ec9583c8f8e992613ae2eaf62165722054","message":"initial support for error replies in bsd/osx","stats":{"files_changed":1,"insertions":105,"deletions":6,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":111}]}},{"commit":"e21542aaa2aa5f2f287ddc227df41ae47d761332","message":"Merge pull request #135 from kellyjonbrazil/dev"},{"commit":"6150aae0aeabafba26d9f119406b0660d9221cb6","message":"clarify packaged binaries","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"f27b35f37104ad2012c3bddde0bd94941af06894","message":"Merge pull request #131 from kellyjonbrazil/master"},{"commit":"d24f9a885d3954035a98a488671486408f509dca","message":"fix contributing link","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["CONTRIBUTING.md","README.md","templates/readme_template"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2},{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"48dd82c8d1b756c4e08d49b8234b8060080dc035","message":"trigger page build on github pages","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]}},{"commit":"e57167ad1f240de6ec5fc86c51cfb780535cd783","message":"empty commit"},{"commit":"ada91376426ff359c495fb31081404a2cce72b5f","message":"Merge pull request #130 from kellyjonbrazil/dev"},{"commit":"bd428a9fd75327710dce96f3c95f74ab9d1beaad","message":"fix link","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"934941332f91d9e2cc4e691b154bb5427166ed30","message":"minor link updates","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"templates/readme_template","lines_changed":6}]}},{"commit":"0c209dbd108638f89a43801126a332379be9ae8b","message":"Merge pull request #129 from kellyjonbrazil/dev"},{"commit":"56e041aa260b2daf2f5662fae98645a93137adb5","message":"add Practical JSON at the Command Line blog link","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"cf9d48582e4e5df6c8498b916a2f9cf036869f3d","message":"Merge pull request #128 from kellyjonbrazil/master"},{"commit":"92e2252bee00482bb0eeae3074b107d4c8553e4c","message":"fix typo","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"fd7861db11e5aaa17c4e7bbce942c0c096116e30","message":"Merge pull request #127 from kellyjonbrazil/dev"},{"commit":"35464bbbfb6b424ef3ee1c855557ada1bf3769fa","message":"date update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]}},{"commit":"db8ddd7f0e0c2a8bd3e545619e81d3d3972a4d7c","message":"fix for scenarios where the default port range didn't always display, or overrode existing port ranges.","stats":{"files_changed":5,"insertions":11,"deletions":17,"files":["jc/man/jc.1.gz","jc/parsers/ufw.py","man/jc.1.gz","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/ufw.py","lines_changed":24},{"name":"man/jc.1.gz","lines_changed":null},{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.json","lines_changed":2}]}},{"commit":"72207c54ee5734e3d2d3d1a063c8daf1edaa8815","message":"update ufw app info docs to support multiple apps (ufw app info all)","stats":{"files_changed":3,"insertions":102,"deletions":94,"files":["docs/parsers/ufw_appinfo.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/ufw_appinfo.md","lines_changed":196},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"a683f68003ea64dd5e2c4f06b53a1561ad774f12","message":"change schema to a list of dictionaries to support `ufw app info all` use case","stats":{"files_changed":9,"insertions":285,"deletions":202,"files":["EXAMPLES.md","jc/parsers/ufw_appinfo.py","tests/fixtures/generic/ufw-appinfo-msn.json","tests/fixtures/generic/ufw-appinfo-test.json","tests/fixtures/generic/ufw-appinfo-test2.json","tests/fixtures/generic/ufw-appinfo-test3.json","tests/fixtures/ubuntu-18.04/ufw-appinfo-all.json","tests/fixtures/ubuntu-18.04/ufw-appinfo-all.out","tests/test_ufw_appinfo.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":68},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":345},{"name":"tests/fixtures/generic/ufw-appinfo-msn.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw-appinfo-test.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw-appinfo-test2.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw-appinfo-test3.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-appinfo-all.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ufw-appinfo-all.out","lines_changed":51},{"name":"tests/test_ufw_appinfo.py","lines_changed":14}]}},{"commit":"8d2d3db3fa969456342181a226bf54a3f1613542","message":"formatting","stats":{"files_changed":4,"insertions":4,"deletions":0,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"eca785450d1c72687817d09259fa7cd33376fafc","message":"add caveats to readme and manpage","stats":{"files_changed":5,"insertions":34,"deletions":13,"files":["CHANGELOG","README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":22},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/readme_template","lines_changed":22}]}},{"commit":"5b40a97ce417687b4e37f320b8a3f07dd7fd169c","message":"add caveats to man page","stats":{"files_changed":3,"insertions":13,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/manpage_template","lines_changed":13}]}},{"commit":"66cb4e9bde81b9290c1addaf851de5d80a1b0702","message":"update ufw parser docs","stats":{"files_changed":5,"insertions":216,"deletions":234,"files":["EXAMPLES.md","docs/parsers/ufw.md","jc/man/jc.1.gz","jc/parsers/ufw.py","man/jc.1.gz"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":96},{"name":"docs/parsers/ufw.md","lines_changed":226},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/ufw.py","lines_changed":128},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"d1f33645caccdb3a55576081c4d355f997ac033c","message":"update ufw tests","stats":{"files_changed":7,"insertions":26,"deletions":10,"files":["tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw-numbered2.json","tests/fixtures/generic/ufw.json","tests/fixtures/ubuntu-18.04/ufw-numbered.json","tests/fixtures/ubuntu-18.04/ufw-numbered.out","tests/fixtures/ubuntu-18.04/ufw-verbose.json","tests/fixtures/ubuntu-18.04/ufw-verbose.out"],"file_stats":[{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw-numbered2.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-numbered.out","lines_changed":16},{"name":"tests/fixtures/ubuntu-18.04/ufw-verbose.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-verbose.out","lines_changed":10}]}},{"commit":"5eff65c326675a449afd05a2af0a6c9bcf7b5e23","message":"update schema to support port lists and port range lists. Also support other transports than tcp and udp","stats":{"files_changed":1,"insertions":85,"deletions":268,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":353}]}},{"commit":"929c38715d87bf9dd689507d319c22b90871ae1c","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]}},{"commit":"8c91a7b7601a967cd9d8096433ffd4ad62b65ceb","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":4}]}},{"commit":"14289ecd6c022ad204444dff5b5e48f6024a5d0d","message":"more timezone info","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":4}]}},{"commit":"b833c44783eb32f2fad24ca205b5b7eab854750f","message":"add ufw-appinfo parser","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]}},{"commit":"e23aa818eaa6d1a389ddef7dd2ad8f62b9f6ff25","message":"add tests section and timezone info","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":5}]}},{"commit":"473d919c1350a8dc34d233033a5a7d12c928e42d","message":"add another ufw test sample","stats":{"files_changed":4,"insertions":32,"deletions":0,"files":["runtests.sh","tests/fixtures/generic/ufw-numbered2.json","tests/fixtures/generic/ufw-numbered2.out","tests/test_ufw.py"],"file_stats":[{"name":"runtests.sh","lines_changed":1},{"name":"tests/fixtures/generic/ufw-numbered2.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-numbered2.out","lines_changed":18},{"name":"tests/test_ufw.py","lines_changed":12}]}},{"commit":"9f925d6ac989a4f21a8c00c84fcf97dfb141e8c2","message":"doc update","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"f6ca32b3a31f314fa0b31d9e8b5494491b928f7e","message":"update ufw docs with a note on lists of ports","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/ufw.md","jc/parsers/ufw.py"],"file_stats":[{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"jc/parsers/ufw.py","lines_changed":2}]}},{"commit":"4cbe84c3d6ac8a3b594feb525460f2a68f5d62b2","message":"add ufw-appinfo tests","stats":{"files_changed":9,"insertions":110,"deletions":0,"files":["tests/fixtures/generic/ufw-appinfo-msn.json","tests/fixtures/generic/ufw-appinfo-msn.out","tests/fixtures/generic/ufw-appinfo-test.json","tests/fixtures/generic/ufw-appinfo-test.out","tests/fixtures/generic/ufw-appinfo-test2.json","tests/fixtures/generic/ufw-appinfo-test2.out","tests/fixtures/generic/ufw-appinfo-test3.json","tests/fixtures/generic/ufw-appinfo-test3.out","tests/test_ufw_appinfo.py"],"file_stats":[{"name":"tests/fixtures/generic/ufw-appinfo-msn.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-appinfo-msn.out","lines_changed":9},{"name":"tests/fixtures/generic/ufw-appinfo-test.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-appinfo-test.out","lines_changed":9},{"name":"tests/fixtures/generic/ufw-appinfo-test2.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-appinfo-test2.out","lines_changed":9},{"name":"tests/fixtures/generic/ufw-appinfo-test3.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-appinfo-test3.out","lines_changed":9},{"name":"tests/test_ufw_appinfo.py","lines_changed":70}]}},{"commit":"ffac5bf9d381305daa86e546f8570be092e5ff34","message":"doc update","stats":{"files_changed":3,"insertions":12,"deletions":12,"files":["docs/parsers/ufw.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/ufw.md","lines_changed":24},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"9aa424f9f8c7e4e0dc29e2c58dac481098beba7d","message":"fix ufw example","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":12}]}},{"commit":"0a8495c68e427e39bbda957dd933fa2a461092e7","message":"update docs","stats":{"files_changed":1,"insertions":12,"deletions":15,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":27}]}},{"commit":"6aea066cf024f92adf4b94eebc7d51430c22332c","message":"make normalized list appear only when data exists. set magic commands","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/parsers/ufw_appinfo.py","lines_changed":6}]}},{"commit":"ff3c2d809ec3ea6e556c302909a228ee670578c9","message":"add ufw-appinfo to docs","stats":{"files_changed":6,"insertions":176,"deletions":25,"files":["EXAMPLES.md","README.md","docs/parsers/ufw_appinfo.md","jc/man/jc.1.gz","jc/parsers/ufw_appinfo.py","man/jc.1.gz"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":39},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":58},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":103},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"145059fc8946b7026184139baea143c2869bc4e7","message":"clean up output if sections are blank","stats":{"files_changed":1,"insertions":20,"deletions":8,"files":["jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/parsers/ufw_appinfo.py","lines_changed":28}]}},{"commit":"20e5c19de448c1b979497817c887d8d2d6487839","message":"fix key error if tcp or udp don't exist","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/parsers/ufw_appinfo.py","lines_changed":3}]}},{"commit":"4c98fd4b877c54e1cf7d285a29e178321be12f7e","message":"doc update","stats":{"files_changed":2,"insertions":101,"deletions":1,"files":["docs/parsers/ufw_appinfo.md","jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"docs/parsers/ufw_appinfo.md","lines_changed":100},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":2}]}},{"commit":"125e54213e8d4dcfe2e3271456af80b3f79c0544","message":"update schema and add normalized fields","stats":{"files_changed":1,"insertions":105,"deletions":48,"files":["jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/parsers/ufw_appinfo.py","lines_changed":153}]}},{"commit":"0152e0665f87833250561d743144af35416992f8","message":"initial working ufw-appinfo parser","stats":{"files_changed":2,"insertions":215,"deletions":0,"files":["jc/cli.py","jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":214}]}},{"commit":"0679bcbc560ea3575555d8546afdd4e2474d05d7","message":"fix ufw tests","stats":{"files_changed":5,"insertions":31,"deletions":5,"files":["tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json","tests/fixtures/ubuntu-18.04/ufw-numbered.json","tests/fixtures/ubuntu-18.04/ufw-verbose.json","tests/test_ufw.py"],"file_stats":[{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-numbered.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ufw-verbose.json","lines_changed":1},{"name":"tests/test_ufw.py","lines_changed":30}]}},{"commit":"5500648aa0886ea5089856e5b33d7c8ebd78d5b0","message":"fix ufw docs for int conversions and service behavior","stats":{"files_changed":3,"insertions":46,"deletions":46,"files":["EXAMPLES.md","docs/parsers/ufw.md","jc/parsers/ufw.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":20},{"name":"docs/parsers/ufw.md","lines_changed":36},{"name":"jc/parsers/ufw.py","lines_changed":36}]}},{"commit":"bb50caad4dfaefa309e747fd05b650186c5a80f4","message":"fix prefix int conversions. don't reset _transport if service is really a list of ports","stats":{"files_changed":3,"insertions":31,"deletions":4,"files":["jc/parsers/ufw.py","tests/fixtures/ubuntu-18.04/ufw-numbered.out","tests/fixtures/ubuntu-18.04/ufw-verbose.out"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":10},{"name":"tests/fixtures/ubuntu-18.04/ufw-numbered.out","lines_changed":11},{"name":"tests/fixtures/ubuntu-18.04/ufw-verbose.out","lines_changed":14}]}},{"commit":"7eef5d94d591a3f70f6638b1b30f952a3bf35f9d","message":"ufw doc update","stats":{"files_changed":3,"insertions":5,"deletions":0,"files":["EXAMPLES.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":5},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"74f623f8d607c050db8f62ea4996c4e6aae43268","message":"add support for rule comments and LIMIT and REJECT actions","stats":{"files_changed":5,"insertions":43,"deletions":11,"files":["docs/parsers/ufw.md","jc/parsers/ufw.py","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json","tests/fixtures/generic/ufw.out"],"file_stats":[{"name":"docs/parsers/ufw.md","lines_changed":13},{"name":"jc/parsers/ufw.py","lines_changed":25},{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.out","lines_changed":12}]}},{"commit":"f638aca092475bbae14fed765e90435c093fcb8b","message":"add deb package name fix","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]}},{"commit":"da35eaf80ad4f11e7482fc4734db4b2265e50548","message":"formatting","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["docs/parsers/ufw.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"ade0e8e8fc18ff9a0dd406206a85238f1f5a739d","message":"add ufw tests","stats":{"files_changed":7,"insertions":107,"deletions":0,"files":["tests/fixtures/generic/ufw-inactive.json","tests/fixtures/generic/ufw-inactive.out","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw-numbered.out","tests/fixtures/generic/ufw.json","tests/fixtures/generic/ufw.out","tests/test_ufw.py"],"file_stats":[{"name":"tests/fixtures/generic/ufw-inactive.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-inactive.out","lines_changed":1},{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-numbered.out","lines_changed":23},{"name":"tests/fixtures/generic/ufw.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw.out","lines_changed":22},{"name":"tests/test_ufw.py","lines_changed":58}]}},{"commit":"90076090f05a1f03e2fbff307418ee18d7d046ef","message":"fix int conversions if 'rules' key does not exist","stats":{"files_changed":1,"insertions":7,"deletions":5,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":12}]}},{"commit":"23635def8b654097178f73ed1b57fc50965142d5","message":"add ufw to docs","stats":{"files_changed":6,"insertions":306,"deletions":4,"files":["README.md","docs/parsers/ping.md","docs/parsers/ufw.md","docs/utils.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"docs/parsers/ping.md","lines_changed":1},{"name":"docs/parsers/ufw.md","lines_changed":302},{"name":"docs/utils.md","lines_changed":4},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"4eeec087bde98f90ab8425473d1fbeee6834852e","message":"add ufw example","stats":{"files_changed":1,"insertions":115,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":115}]}},{"commit":"733196103897a1d84d242324ddcf96e783320329","message":"update docs with new examples that have `to_service` always existing.","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":4}]}},{"commit":"e4acb3d5b70a7d75741ef3e35cd6750d1362a80f","message":"always make to/from_service None if ports are assigned","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":4}]}},{"commit":"c60549a9947d5684bbfa58223bfbcfc40a3ed479","message":"change field name from to/from_subnet to to/from_ip_prefix","stats":{"files_changed":1,"insertions":29,"deletions":29,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":58}]}},{"commit":"d46fc8bbfa15a80a1af6c64f70230f858c215223","message":"set to/from_transport to None if to/from_service is set","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":9}]}},{"commit":"b133d1f90d49362594508d8c475663754f0e7675","message":"strip interface value","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":6}]}},{"commit":"5be615a97e7c145c8351764234ac591028560c34","message":"add examples for docs","stats":{"files_changed":1,"insertions":219,"deletions":9,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":228}]}},{"commit":"ea1d820f96321ddf4084b54ee2fdf397295beb21","message":"convert integer fields","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":11}]}},{"commit":"47e262cf7200b02ff0af97a70ffa6bec286c8f39","message":"clean up fields","stats":{"files_changed":1,"insertions":59,"deletions":14,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":73}]}},{"commit":"eec673be9092e382694aa02682564510ce4e7f90","message":"working raw parser","stats":{"files_changed":1,"insertions":88,"deletions":3,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":91}]}},{"commit":"9a0fb2a7c87e6fde0cc0d84fa8a1f131e28ea732","message":"parse major sections","stats":{"files_changed":1,"insertions":157,"deletions":0,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":157}]}},{"commit":"b5145d6c14d7a51e7cfdebe126c9689dc90f7b27","message":"version bump to v1.15.3","stats":{"files_changed":4,"insertions":8,"deletions":4,"files":["CHANGELOG","jc/__init__.py","jc/cli.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":6},{"name":"jc/cli.py","lines_changed":1},{"name":"setup.py","lines_changed":2}]}},{"commit":"9747ca414dfb8218389c7b2199a080edabc2a184","message":"minor optimization to convert_to_int(). No longer runs through convert_to_float(), but uses standard float() function.","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":11}]}},{"commit":"312d465b61a15592cc70d3734ad747b9a2be10ae","message":"update link","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"7dcf87d24ad40eba6ba98de2b4b2bf177a76cd71","message":"formatting","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":1}]}},{"commit":"cf3cfd16a9de05f30303b5952fbe609cde842d2e","message":"rename tests","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":6}]}},{"commit":"fcc7e5294973d1a18943fa2ce2e836b0fe757d95","message":"Merge pull request #123 from kellyjonbrazil/dev"},{"commit":"3ab9d480149a692510ab9e0ac8e745b674683e3d","message":"update changelog","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]}},{"commit":"7eddf41c5f6310264359cd6d78bdfa4b65af7d06","message":"dont round up int conversions and fix tests","stats":{"files_changed":11,"insertions":96,"deletions":9,"files":["jc/man/jc.1.gz","jc/utils.py","man/jc.1.gz","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/df.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/free-h.json","tests/test_utils.py"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/utils.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null},{"name":"tests/fixtures/centos-7.7/df-h.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/df.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/free-h.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/df-h.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/df-h.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/free-h.json","lines_changed":2},{"name":"tests/test_utils.py","lines_changed":89}]}},{"commit":"27a196c93862bd737603cfe402b35529eb412954","message":"doc update","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"e4324f05fb6f89c34fa1567e70d8636457623edb","message":"fix indentation in doc","stats":{"files_changed":2,"insertions":14,"deletions":14,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":14},{"name":"jc/parsers/dig.py","lines_changed":14}]}},{"commit":"d36b332bd78b5bf5979cdc59b31da08d8e4104d7","message":"use jc.utils for conversions","stats":{"files_changed":53,"insertions":196,"deletions":274,"files":["docs/parsers/systemctl_lj.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/wc.md","docs/parsers/who.md","docs/utils.md","jc/parsers/acpi.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/hash.py","jc/parsers/hciconfig.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl_lj.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/utils.py"],"file_stats":[{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":2},{"name":"jc/parsers/acpi.py","lines_changed":21},{"name":"jc/parsers/airport_s.py","lines_changed":9},{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/blkid.py","lines_changed":4},{"name":"jc/parsers/cksum.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":4},{"name":"jc/parsers/dir.py","lines_changed":4},{"name":"jc/parsers/dmidecode.py","lines_changed":4},{"name":"jc/parsers/du.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":4},{"name":"jc/parsers/fstab.py","lines_changed":4},{"name":"jc/parsers/group.py","lines_changed":4},{"name":"jc/parsers/hash.py","lines_changed":4},{"name":"jc/parsers/hciconfig.py","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":4},{"name":"jc/parsers/iptables.py","lines_changed":4},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4},{"name":"jc/parsers/lsblk.py","lines_changed":13},{"name":"jc/parsers/lsmod.py","lines_changed":4},{"name":"jc/parsers/lsof.py","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":16},{"name":"jc/parsers/ntpq.py","lines_changed":10},{"name":"jc/parsers/passwd.py","lines_changed":4},{"name":"jc/parsers/ps.py","lines_changed":13},{"name":"jc/parsers/route.py","lines_changed":4},{"name":"jc/parsers/rpm_qi.py","lines_changed":4},{"name":"jc/parsers/shadow.py","lines_changed":4},{"name":"jc/parsers/ss.py","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"jc/parsers/systemctl_lj.py","lines_changed":13},{"name":"jc/parsers/systeminfo.py","lines_changed":6},{"name":"jc/parsers/time.py","lines_changed":32},{"name":"jc/parsers/timedatectl.py","lines_changed":8},{"name":"jc/parsers/tracepath.py","lines_changed":42},{"name":"jc/parsers/traceroute.py","lines_changed":40},{"name":"jc/parsers/upower.py","lines_changed":24},{"name":"jc/parsers/uptime.py","lines_changed":39},{"name":"jc/parsers/w.py","lines_changed":4},{"name":"jc/parsers/wc.py","lines_changed":12},{"name":"jc/parsers/who.py","lines_changed":12},{"name":"jc/utils.py","lines_changed":36}]}},{"commit":"1f034826f69c461495f7a302cc8fe35e3052e72f","message":"use jc.utils for conversions","stats":{"files_changed":42,"insertions":94,"deletions":185,"files":["docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","tests/fixtures/centos-7.7/ls-alh.json","tests/fixtures/centos-7.7/lsof-sudo.json","tests/fixtures/centos-7.7/lsof.json","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/ubuntu-18.04/ls-alh.json","tests/fixtures/ubuntu-18.04/lsof-sudo.json","tests/fixtures/ubuntu-18.04/lsof.json"],"file_stats":[{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":3},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":10},{"name":"jc/parsers/jobs.py","lines_changed":8},{"name":"jc/parsers/last.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":9},{"name":"jc/parsers/lsblk.py","lines_changed":14},{"name":"jc/parsers/lsmod.py","lines_changed":9},{"name":"jc/parsers/lsof.py","lines_changed":10},{"name":"jc/parsers/netstat.py","lines_changed":37},{"name":"jc/parsers/ntpq.py","lines_changed":12},{"name":"jc/parsers/passwd.py","lines_changed":8},{"name":"jc/parsers/ping.py","lines_changed":34},{"name":"jc/parsers/ps.py","lines_changed":15},{"name":"jc/parsers/route.py","lines_changed":8},{"name":"jc/parsers/rpm_qi.py","lines_changed":9},{"name":"jc/parsers/shadow.py","lines_changed":8},{"name":"jc/parsers/ss.py","lines_changed":22},{"name":"jc/parsers/stat.py","lines_changed":11},{"name":"tests/fixtures/centos-7.7/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/lsof-sudo.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/lsof.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/lsof-sudo.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/lsof.json","lines_changed":2}]}},{"commit":"246c707c98d3128b4e38f5c4b23a1e0ceedc0b0c","message":"use jc.utils conversions","stats":{"files_changed":46,"insertions":190,"deletions":196,"files":["CHANGELOG","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/df.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/hash.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/utils.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/hash.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/utils.py","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/osx-10.11.6/df-h.json","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/free-h.json"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":48},{"name":"jc/parsers/acpi.py","lines_changed":22},{"name":"jc/parsers/airport.py","lines_changed":7},{"name":"jc/parsers/airport_s.py","lines_changed":12},{"name":"jc/parsers/arp.py","lines_changed":5},{"name":"jc/parsers/blkid.py","lines_changed":7},{"name":"jc/parsers/cksum.py","lines_changed":8},{"name":"jc/parsers/df.py","lines_changed":14},{"name":"jc/parsers/dig.py","lines_changed":50},{"name":"jc/parsers/dir.py","lines_changed":11},{"name":"jc/parsers/dmidecode.py","lines_changed":8},{"name":"jc/parsers/du.py","lines_changed":8},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":8},{"name":"jc/parsers/fstab.py","lines_changed":8},{"name":"jc/parsers/group.py","lines_changed":8},{"name":"jc/parsers/hash.py","lines_changed":9},{"name":"jc/parsers/hciconfig.py","lines_changed":8},{"name":"jc/parsers/history.py","lines_changed":6},{"name":"jc/parsers/id.py","lines_changed":17},{"name":"jc/parsers/ifconfig.py","lines_changed":11},{"name":"jc/utils.py","lines_changed":62},{"name":"tests/fixtures/centos-7.7/df-h.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/free-h.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/df-h.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/df-h.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/df-h.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/free-h.json","lines_changed":2}]}},{"commit":"b5d8968144e76090870f8563dc1bce910fba668c","message":"add convert_to_int function","stats":{"files_changed":1,"insertions":19,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":19}]}},{"commit":"f7b9fbefdde6973077573fec02342eb9946789c6","message":"add query_size info for dig","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]}},{"commit":"b1fc4533833ca25f59869bfec8ac114bf49c7847","message":"fix _IfconfigParser name","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2}]}},{"commit":"7581c8d0f4262fc6a05240bb21ffe533b153f6e4","message":"add query_size field. handle user-specified dig output better - especially when querying dnssec","stats":{"files_changed":3,"insertions":45,"deletions":32,"files":["docs/parsers/dig.md","jc/parsers/dig.py","tests/fixtures/generic/dig-edns3.json"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":74},{"name":"tests/fixtures/generic/dig-edns3.json","lines_changed":2}]}},{"commit":"32bf8ad6f4fff83fdfd83d66c1ba8f1af5a65a90","message":"update dig docs","stats":{"files_changed":4,"insertions":52,"deletions":24,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"EXAMPLES.md","lines_changed":10},{"name":"docs/parsers/dig.md","lines_changed":32},{"name":"jc/parsers/dig.py","lines_changed":32}]}},{"commit":"b083bcc10fa1105fc09ce8d2c3297aa5575c9d51","message":"update man page","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"4f6fdd120d23468270c1d7111e4ef71b87759a1c","message":"use dig as example","stats":{"files_changed":2,"insertions":134,"deletions":100,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":117},{"name":"jc/__init__.py","lines_changed":117}]}},{"commit":"eb0038be2490053d32803d30e1c3d4d34509d130","message":"update dig examples","stats":{"files_changed":1,"insertions":40,"deletions":19,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":59}]}},{"commit":"7ecdf819fa37c38ae6159ad8e7bc973ee4f34559","message":"remove dig example from readme,","stats":{"files_changed":2,"insertions":0,"deletions":84,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":42},{"name":"templates/readme_template","lines_changed":42}]}},{"commit":"c6aa4d083550d25bcb621cad524047cfd6a08217","message":"update docs with new dig parser examples","stats":{"files_changed":6,"insertions":252,"deletions":317,"files":["README.md","docs/parsers/dig.md","jc/man/jc.1.gz","jc/parsers/dig.py","man/jc.1.gz","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":84},{"name":"docs/parsers/dig.md","lines_changed":313},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/dig.py","lines_changed":88},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/readme_template","lines_changed":84}]}},{"commit":"7c584b89a6e6b924d53d50103b97f0c2405c33b1","message":"add additional section","stats":{"files_changed":15,"insertions":352,"deletions":52,"files":["jc/parsers/dig.py","tests/fixtures/generic/dig-additional.json","tests/fixtures/generic/dig-additional.out","tests/fixtures/generic/dig-additional2.json","tests/fixtures/generic/dig-additional2.out","tests/fixtures/generic/dig-additional3.json","tests/fixtures/generic/dig-additional3.out","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/generic/dig-edns.json","tests/fixtures/generic/dig-edns.out","tests/fixtures/generic/dig-edns2.json","tests/fixtures/generic/dig-edns2.out","tests/fixtures/generic/dig-edns3.json","tests/fixtures/generic/dig-edns3.out","tests/test_dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":123},{"name":"tests/fixtures/generic/dig-additional.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-additional.out","lines_changed":32},{"name":"tests/fixtures/generic/dig-additional2.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-additional2.out","lines_changed":34},{"name":"tests/fixtures/generic/dig-additional3.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-additional3.out","lines_changed":41},{"name":"tests/fixtures/generic/dig-answer-spaces.json","lines_changed":2},{"name":"tests/fixtures/generic/dig-edns.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-edns.out","lines_changed":20},{"name":"tests/fixtures/generic/dig-edns2.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-edns2.out","lines_changed":38},{"name":"tests/fixtures/generic/dig-edns3.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-edns3.out","lines_changed":34},{"name":"tests/test_dig.py","lines_changed":74}]}},{"commit":"c166c0bfdafa922f57f021fa4d16e467fca02d58","message":"add opt_pseudosection section to output and fix existing tests","stats":{"files_changed":14,"insertions":55,"deletions":21,"files":["jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":50},{"name":"tests/fixtures/centos-7.7/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig-x.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig.json","lines_changed":2},{"name":"tests/fixtures/generic/dig-answer-spaces.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-x.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig.json","lines_changed":2}]}},{"commit":"a8dd3f7802bfe8fd3ffbedf89af45ddc580ee78d","message":"working dig axfr fixes","stats":{"files_changed":5,"insertions":54,"deletions":281,"files":["CHANGELOG","jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-axfr.json"],"file_stats":[{"name":"CHANGELOG","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":325},{"name":"tests/fixtures/centos-7.7/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-axfr.json","lines_changed":2}]}},{"commit":"3b0e2f03f3b11398ff57b1daed542faaf0b80a62","message":"clean up examples","stats":{"files_changed":2,"insertions":24,"deletions":23,"files":["jc/cli.py","templates/manpage_template"],"file_stats":[{"name":"jc/cli.py","lines_changed":21},{"name":"templates/manpage_template","lines_changed":26}]}},{"commit":"8390ae48c88ab1c7d5acbf40c0e60606953817bd","message":"fix server entry when IPv6 address is in value (maxsplit on colons)","stats":{"files_changed":7,"insertions":8,"deletions":8,"files":["jc/parsers/dig.py","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":4},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig.json","lines_changed":2}]}},{"commit":"2db82c0a7e19d596c876ede8a8ff106aaa733ee5","message":"add systeminfo example","stats":{"files_changed":1,"insertions":66,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":66}]}},{"commit":"61479540756704f10853233300ceae8f954a8a95","message":"update tests","stats":{"files_changed":2,"insertions":5,"deletions":0,"files":["tests/test_systeminfo.py","tests/test_utils.py"],"file_stats":[{"name":"tests/test_systeminfo.py","lines_changed":1},{"name":"tests/test_utils.py","lines_changed":4}]}},{"commit":"691df271fcfe057ae4b75ad40869e23deb37b886","message":"add info docstring","stats":{"files_changed":4,"insertions":2,"deletions":1,"files":["docs/parsers/systeminfo.md","jc/man/jc.1.gz","jc/parsers/systeminfo.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/systeminfo.py","lines_changed":1},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"89f52b95f7055da9d7b5fa8dce0923d4c3435bd2","message":"update systeminfo parser with updated timestamps, normalized blank fields, and new doc style","stats":{"files_changed":13,"insertions":467,"deletions":821,"files":["README.md","docs/parsers/systeminfo.md","jc/man/jc.1.gz","jc/parsers/systeminfo.py","jc/utils.py","man/jc.1.gz",".../windows/windows-10/systeminfo-hyperv-utc.json",".../windows/windows-10/systeminfo-hyperv-utc.out",".../windows/windows-10/systeminfo-hyperv.json","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-10/systeminfo.out",".../windows/windows-2012r2/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/systeminfo.md","lines_changed":290},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/systeminfo.py","lines_changed":361},{"name":"jc/utils.py","lines_changed":5},{"name":"man/jc.1.gz","lines_changed":null},{"name":".../windows/windows-10/systeminfo-hyperv-utc.json","lines_changed":1},{"name":".../windows/windows-10/systeminfo-hyperv-utc.out","lines_changed":79},{"name":".../windows/windows-10/systeminfo-hyperv.json","lines_changed":112},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":57},{"name":"tests/fixtures/windows/windows-10/systeminfo.out","lines_changed":1},{"name":".../windows/windows-2012r2/systeminfo.json","lines_changed":55},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":326}]}},{"commit":"146acc1bf69c402e38c2f1bc842b84e6cff7e2cb","message":"rename functions to make them private","stats":{"files_changed":1,"insertions":23,"deletions":29,"files":["jc/parsers/systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":52}]}},{"commit":"c4a345f59aa090336b4e80f181493cd5bc2c17c5","message":"Merge pull request #106 from jon-rd/j/systeminfo"},{"commit":"dfd2703f75b907ba865fff266d0742d8931bc2d3","message":"bump dev to v1.15.2","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"325fab2de7b8a4bfc452ab8d3cf333d47fdf4989","message":"update documentation for parsed structures","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":10}]}},{"commit":"f3d00cf38ad15aeda7eaa5644ebc30ff33de6a29","message":"append mb to memory key names; adjust expected timestamps to utc tz","stats":{"files_changed":5,"insertions":56,"deletions":48,"files":["jc/parsers/systeminfo.py",".../windows/windows-10/systeminfo-hyperv.json","tests/fixtures/windows/windows-10/systeminfo.json",".../windows/windows-2012r2/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":48},{"name":".../windows/windows-10/systeminfo-hyperv.json","lines_changed":14},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":14},{"name":".../windows/windows-2012r2/systeminfo.json","lines_changed":14},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":14}]}},{"commit":"14838f7f5d780896f1318cac2c3f34d249a158d4","message":"update schema with nic, hyperv, and process changes","stats":{"files_changed":9,"insertions":956,"deletions":116,"files":["jc/parsers/systeminfo.py","jc/utils.py",".../windows/windows-10/systeminfo-hyperv.json",".../windows/windows-10/systeminfo-hyperv.out","tests/fixtures/windows/windows-10/systeminfo.json",".../windows/windows-2012r2/systeminfo.json",".../fixtures/windows/windows-2012r2/systeminfo.out","tests/fixtures/windows/windows-7/systeminfo.json","tests/test_systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":357},{"name":"jc/utils.py","lines_changed":1},{"name":".../windows/windows-10/systeminfo-hyperv.json","lines_changed":111},{"name":".../windows/windows-10/systeminfo-hyperv.out","lines_changed":79},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":43},{"name":".../windows/windows-2012r2/systeminfo.json","lines_changed":54},{"name":".../fixtures/windows/windows-2012r2/systeminfo.out","lines_changed":45},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":311},{"name":"tests/test_systeminfo.py","lines_changed":71}]}},{"commit":"af74047b81776c2ea32d82f9145ab60c346c8203","message":"update schema based on processor/hotfix changes","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":8}]}},{"commit":"660c59129cf4ba7889fb3c6fbafd9dd9b479ccd9","message":"Add parsing of processors/hotfixs","stats":{"files_changed":3,"insertions":41,"deletions":9,"files":["jc/parsers/systeminfo.py","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":42},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":4},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":4}]}},{"commit":"89a88e186ed71d84ea802cf08ab756b49cee3225","message":"Add systeminfo.md file","stats":{"files_changed":1,"insertions":152,"deletions":0,"files":["docs/parsers/systeminfo.md"],"file_stats":[{"name":"docs/parsers/systeminfo.md","lines_changed":152}]}},{"commit":"f861cf95b96a224a0a11f2cdc3261b94c02415ef","message":"Change to v0.5; add parser to cli.py; add to docgen","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["jc/cli.py","jc/parsers/systeminfo.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/systeminfo.py","lines_changed":2}]}},{"commit":"ee8f06cbdb03f8254bb6a3c56fa5b8a64ff9ca77","message":"Add windows systeminfo command parser","stats":{"files_changed":6,"insertions":688,"deletions":0,"files":["jc/parsers/systeminfo.py","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-10/systeminfo.out","tests/fixtures/windows/windows-7/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.out","tests/test_systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":209},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":35},{"name":"tests/fixtures/windows/windows-10/systeminfo.out","lines_changed":47},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":34},{"name":"tests/fixtures/windows/windows-7/systeminfo.out","lines_changed":298},{"name":"tests/test_systeminfo.py","lines_changed":65}]}},{"commit":"a2e8b3c7b681605916b8950d035ee19889a125a5","message":"Merge pull request #121 from kellyjonbrazil/master"},{"commit":"6c838460752c7131f75cdab2da07266fee492060","message":"Merge pull request #120 from kellyjonbrazil/dev"},{"commit":"e0681eebb9881dc0ffddb478224455f434919104","message":"Merge branch 'master' into dev"},{"commit":"e5732d1cea1c882f6486cf288e45edb993989ea0","message":"update changelog","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]}},{"commit":"6e7ae3cd3f003fe9e1e587b7f8ebd16ba0895014","message":"formatting of timedatectl docs","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/timedatectl.md","jc/man/jc.1.gz","jc/parsers/timedatectl.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"f95632d1aaee545ae0ce081ca0617be135c09220","message":"add install_date calculated fields","stats":{"files_changed":7,"insertions":83,"deletions":62,"files":["EXAMPLES.md","docs/parsers/rpm_qi.md","jc/man/jc.1.gz","jc/parsers/rpm_qi.py","man/jc.1.gz","tests/fixtures/centos-7.7/rpm-qai.json","tests/fixtures/centos-7.7/rpm-qi-package.json"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":12},{"name":"docs/parsers/rpm_qi.md","lines_changed":62},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/rpm_qi.py","lines_changed":67},{"name":"man/jc.1.gz","lines_changed":null},{"name":"tests/fixtures/centos-7.7/rpm-qai.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rpm-qi-package.json","lines_changed":2}]}},{"commit":"2f8b7b26e59bcd745fa1fcadb373455c7d404286","message":"update docs for v1.15.1","stats":{"files_changed":3,"insertions":1,"deletions":2,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"10292f7502e4cb1c53b53ed39fed9288044c2ef8","message":"Merge pull request #119 from kellyjonbrazil/dpkg_l-fix"},{"commit":"aef54705f5267c633e0778e8dce0065978083139","message":"add _l to module name","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["docs/parsers/dpkg_l.md"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":4}]}},{"commit":"bba5980fa53767716bc35d8c904e7a2341346eeb","message":"man page update","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"977425abfb05a63ee372df36124ac6ba6a5a0aaa","message":"add _l to package name in docs","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"jc/parsers/dpkg_l.py","lines_changed":4}]}},{"commit":"37a3565a1bbd3d01663602673fed651509e69d8c","message":"Merge pull request #118 from kellyjonbrazil/rpm-qi-doc-fix"},{"commit":"13deb8bfb6e77aaf86942f0be87b59d06ee2a97c","message":"fix rpm-qi docs","stats":{"files_changed":2,"insertions":3,"deletions":194,"files":["docs/parsers/rpm_qai.md","docs/parsers/rpm_qi.md"],"file_stats":[{"name":"docs/parsers/rpm_qai.md","lines_changed":191},{"name":"docs/parsers/rpm_qi.md","lines_changed":6}]}},{"commit":"a3ed9d075aff41599452c3094f7d057c25fc8f89","message":"remove old parser doc","stats":{"files_changed":1,"insertions":0,"deletions":191,"files":["docs/parsers/rpm_qai.md"],"file_stats":[{"name":"docs/parsers/rpm_qai.md","lines_changed":191}]}},{"commit":"fb0ced549e021916dee7da39859e8f85c8216e16","message":"fix rpm-qi docs (used underscore instead of dash in name)","stats":{"files_changed":4,"insertions":6,"deletions":6,"files":["docs/parsers/rpm_qi.md","jc/man/jc.1.gz","jc/parsers/rpm_qi.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/rpm_qi.md","lines_changed":6},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/rpm_qi.py","lines_changed":6},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"7eb31bc7d290fcd09e53524ebbb11e59110df6a0","message":"update airport_s docs","stats":{"files_changed":4,"insertions":39,"deletions":48,"files":["docs/parsers/airport_s.md","jc/man/jc.1.gz","jc/parsers/airport_s.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/airport_s.md","lines_changed":49},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/airport_s.py","lines_changed":38},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"6a06a3914273853742ac57433398968ccf7d9897","message":"use herestring instead of echo -e into jq","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":12}]}},{"commit":"bdcdaee6c5299ea0750512e0943c7f58f56f2e35","message":"Merge pull request #117 from kellyjonbrazil/doc_update"},{"commit":"605353fdce3b8b5986d20a35d05f7210a6df0730","message":"add new docs","stats":{"files_changed":70,"insertions":1710,"deletions":2656,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":99},{"name":"docs/parsers/airport.md","lines_changed":61},{"name":"docs/parsers/airport_s.md","lines_changed":9},{"name":"docs/parsers/arp.md","lines_changed":51},{"name":"docs/parsers/blkid.md","lines_changed":93},{"name":"docs/parsers/cksum.md","lines_changed":41},{"name":"docs/parsers/crontab.md","lines_changed":84},{"name":"docs/parsers/crontab_u.md","lines_changed":88},{"name":"docs/parsers/csv.md","lines_changed":41},{"name":"docs/parsers/date.md","lines_changed":68},{"name":"docs/parsers/df.md","lines_changed":59},{"name":"docs/parsers/dig.md","lines_changed":133},{"name":"docs/parsers/dir.md","lines_changed":49},{"name":"docs/parsers/dmidecode.md","lines_changed":55},{"name":"docs/parsers/dpkg_l.md","lines_changed":51},{"name":"docs/parsers/du.md","lines_changed":39},{"name":"docs/parsers/env.md","lines_changed":39},{"name":"docs/parsers/file.md","lines_changed":39},{"name":"docs/parsers/finger.md","lines_changed":57},{"name":"docs/parsers/free.md","lines_changed":49},{"name":"docs/parsers/fstab.md","lines_changed":47},{"name":"docs/parsers/group.md","lines_changed":47},{"name":"docs/parsers/gshadow.md","lines_changed":51},{"name":"docs/parsers/hash.md","lines_changed":39},{"name":"docs/parsers/hashsum.md","lines_changed":39},{"name":"docs/parsers/hciconfig.md","lines_changed":123},{"name":"docs/parsers/history.md","lines_changed":39},{"name":"docs/parsers/hosts.md","lines_changed":43},{"name":"docs/parsers/id.md","lines_changed":79},{"name":"docs/parsers/ifconfig.md","lines_changed":97},{"name":"docs/parsers/ini.md","lines_changed":44},{"name":"docs/parsers/iptables.md","lines_changed":67},{"name":"docs/parsers/iw_scan.md","lines_changed":40},{"name":"docs/parsers/jobs.md","lines_changed":45},{"name":"docs/parsers/kv.md","lines_changed":17},{"name":"docs/parsers/last.md","lines_changed":53},{"name":"docs/parsers/ls.md","lines_changed":118},{"name":"docs/parsers/lsblk.md","lines_changed":115},{"name":"docs/parsers/lsmod.md","lines_changed":47},{"name":"docs/parsers/lsof.md","lines_changed":55},{"name":"docs/parsers/mount.md","lines_changed":47},{"name":"docs/parsers/netstat.md","lines_changed":223},{"name":"docs/parsers/ntpq.md","lines_changed":58},{"name":"docs/parsers/passwd.md","lines_changed":49},{"name":"docs/parsers/ping.md","lines_changed":81},{"name":"docs/parsers/pip_list.md","lines_changed":41},{"name":"docs/parsers/pip_show.md","lines_changed":56},{"name":"docs/parsers/ps.md","lines_changed":69},{"name":"docs/parsers/route.md","lines_changed":63},{"name":"docs/parsers/rpm_qi.md","lines_changed":77},{"name":"docs/parsers/shadow.md","lines_changed":51},{"name":"docs/parsers/ss.md","lines_changed":73},{"name":"docs/parsers/stat.md","lines_changed":97},{"name":"docs/parsers/sysctl.md","lines_changed":37},{"name":"docs/parsers/systemctl.md","lines_changed":45},{"name":"docs/parsers/systemctl_lj.md","lines_changed":44},{"name":"docs/parsers/systemctl_ls.md","lines_changed":41},{"name":"docs/parsers/systemctl_luf.md","lines_changed":39},{"name":"docs/parsers/time.md","lines_changed":105},{"name":"docs/parsers/timedatectl.md","lines_changed":53},{"name":"docs/parsers/tracepath.md","lines_changed":60},{"name":"docs/parsers/traceroute.md","lines_changed":69},{"name":"docs/parsers/uname.md","lines_changed":47},{"name":"docs/parsers/upower.md","lines_changed":145},{"name":"docs/parsers/uptime.md","lines_changed":57},{"name":"docs/parsers/w.md","lines_changed":51},{"name":"docs/parsers/wc.md","lines_changed":43},{"name":"docs/parsers/who.md","lines_changed":55},{"name":"docs/parsers/xml.md","lines_changed":38},{"name":"docs/parsers/yaml.md","lines_changed":42}]}},{"commit":"490c9e17699e8e4f70dcc1612e1a808f86e24b0a","message":"add more cli tests for magic command","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":8}]}},{"commit":"6ebebb659dc93daeaa869752ad135f6e1d2cb1ee","message":"update changelog","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]}},{"commit":"0e70c5ee12e96f04a89de05153a2da9cd39f98ad","message":"update documentation link","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"cd531acf6045660e022c932f62a01d4084433ad4","message":"clean up comment","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":1}]}},{"commit":"908ac1f61c5cc011d05d550f933940dfed4431f2","message":"update docs - remove compatibility section since it is now automatically generated from info()","stats":{"files_changed":143,"insertions":0,"deletions":690,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/man/jc.1.gz","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":4},{"name":"docs/parsers/airport.md","lines_changed":4},{"name":"docs/parsers/airport_s.md","lines_changed":4},{"name":"docs/parsers/arp.md","lines_changed":4},{"name":"docs/parsers/blkid.md","lines_changed":4},{"name":"docs/parsers/cksum.md","lines_changed":4},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"docs/parsers/crontab_u.md","lines_changed":4},{"name":"docs/parsers/csv.md","lines_changed":4},{"name":"docs/parsers/date.md","lines_changed":4},{"name":"docs/parsers/df.md","lines_changed":4},{"name":"docs/parsers/dig.md","lines_changed":4},{"name":"docs/parsers/dir.md","lines_changed":4},{"name":"docs/parsers/dmidecode.md","lines_changed":4},{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"docs/parsers/du.md","lines_changed":4},{"name":"docs/parsers/env.md","lines_changed":4},{"name":"docs/parsers/file.md","lines_changed":4},{"name":"docs/parsers/finger.md","lines_changed":4},{"name":"docs/parsers/free.md","lines_changed":4},{"name":"docs/parsers/fstab.md","lines_changed":4},{"name":"docs/parsers/group.md","lines_changed":4},{"name":"docs/parsers/gshadow.md","lines_changed":4},{"name":"docs/parsers/hash.md","lines_changed":4},{"name":"docs/parsers/hashsum.md","lines_changed":4},{"name":"docs/parsers/hciconfig.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":4},{"name":"docs/parsers/hosts.md","lines_changed":4},{"name":"docs/parsers/id.md","lines_changed":4},{"name":"docs/parsers/ifconfig.md","lines_changed":4},{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"docs/parsers/iptables.md","lines_changed":4},{"name":"docs/parsers/iw_scan.md","lines_changed":4},{"name":"docs/parsers/jobs.md","lines_changed":4},{"name":"docs/parsers/kv.md","lines_changed":4},{"name":"docs/parsers/last.md","lines_changed":4},{"name":"docs/parsers/ls.md","lines_changed":67},{"name":"docs/parsers/lsblk.md","lines_changed":4},{"name":"docs/parsers/lsmod.md","lines_changed":4},{"name":"docs/parsers/lsof.md","lines_changed":4},{"name":"docs/parsers/mount.md","lines_changed":4},{"name":"docs/parsers/netstat.md","lines_changed":4},{"name":"docs/parsers/ntpq.md","lines_changed":4},{"name":"docs/parsers/passwd.md","lines_changed":4},{"name":"docs/parsers/ping.md","lines_changed":4},{"name":"docs/parsers/pip_list.md","lines_changed":4},{"name":"docs/parsers/pip_show.md","lines_changed":4},{"name":"docs/parsers/ps.md","lines_changed":4},{"name":"docs/parsers/route.md","lines_changed":4},{"name":"docs/parsers/rpm_qi.md","lines_changed":4},{"name":"docs/parsers/shadow.md","lines_changed":4},{"name":"docs/parsers/ss.md","lines_changed":4},{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"docs/parsers/sysctl.md","lines_changed":4},{"name":"docs/parsers/systemctl.md","lines_changed":4},{"name":"docs/parsers/systemctl_lj.md","lines_changed":4},{"name":"docs/parsers/systemctl_ls.md","lines_changed":4},{"name":"docs/parsers/systemctl_luf.md","lines_changed":4},{"name":"docs/parsers/time.md","lines_changed":4},{"name":"docs/parsers/timedatectl.md","lines_changed":4},{"name":"docs/parsers/tracepath.md","lines_changed":4},{"name":"docs/parsers/traceroute.md","lines_changed":4},{"name":"docs/parsers/uname.md","lines_changed":4},{"name":"docs/parsers/upower.md","lines_changed":4},{"name":"docs/parsers/uptime.md","lines_changed":4},{"name":"docs/parsers/w.md","lines_changed":4},{"name":"docs/parsers/wc.md","lines_changed":4},{"name":"docs/parsers/who.md","lines_changed":4},{"name":"docs/parsers/xml.md","lines_changed":4},{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/acpi.py","lines_changed":4},{"name":"jc/parsers/airport.py","lines_changed":4},{"name":"jc/parsers/airport_s.py","lines_changed":4},{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/blkid.py","lines_changed":4},{"name":"jc/parsers/cksum.py","lines_changed":4},{"name":"jc/parsers/crontab.py","lines_changed":4},{"name":"jc/parsers/crontab_u.py","lines_changed":4},{"name":"jc/parsers/csv.py","lines_changed":4},{"name":"jc/parsers/date.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":4},{"name":"jc/parsers/dir.py","lines_changed":4},{"name":"jc/parsers/dmidecode.py","lines_changed":4},{"name":"jc/parsers/dpkg_l.py","lines_changed":4},{"name":"jc/parsers/du.py","lines_changed":4},{"name":"jc/parsers/env.py","lines_changed":4},{"name":"jc/parsers/file.py","lines_changed":4},{"name":"jc/parsers/finger.py","lines_changed":4},{"name":"jc/parsers/foo.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":4},{"name":"jc/parsers/fstab.py","lines_changed":4},{"name":"jc/parsers/group.py","lines_changed":4},{"name":"jc/parsers/gshadow.py","lines_changed":4},{"name":"jc/parsers/hash.py","lines_changed":4},{"name":"jc/parsers/hashsum.py","lines_changed":4},{"name":"jc/parsers/hciconfig.py","lines_changed":4},{"name":"jc/parsers/history.py","lines_changed":4},{"name":"jc/parsers/hosts.py","lines_changed":4},{"name":"jc/parsers/id.py","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":4},{"name":"jc/parsers/ini.py","lines_changed":4},{"name":"jc/parsers/iptables.py","lines_changed":4},{"name":"jc/parsers/iw_scan.py","lines_changed":4},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/kv.py","lines_changed":4},{"name":"jc/parsers/last.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":67},{"name":"jc/parsers/lsblk.py","lines_changed":4},{"name":"jc/parsers/lsmod.py","lines_changed":4},{"name":"jc/parsers/lsof.py","lines_changed":4},{"name":"jc/parsers/mount.py","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":4},{"name":"jc/parsers/ntpq.py","lines_changed":4},{"name":"jc/parsers/passwd.py","lines_changed":4},{"name":"jc/parsers/ping.py","lines_changed":4},{"name":"jc/parsers/pip_list.py","lines_changed":4},{"name":"jc/parsers/pip_show.py","lines_changed":4},{"name":"jc/parsers/ps.py","lines_changed":4},{"name":"jc/parsers/route.py","lines_changed":4},{"name":"jc/parsers/rpm_qi.py","lines_changed":4},{"name":"jc/parsers/shadow.py","lines_changed":4},{"name":"jc/parsers/ss.py","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"jc/parsers/sysctl.py","lines_changed":4},{"name":"jc/parsers/systemctl.py","lines_changed":4},{"name":"jc/parsers/systemctl_lj.py","lines_changed":4},{"name":"jc/parsers/systemctl_ls.py","lines_changed":4},{"name":"jc/parsers/systemctl_luf.py","lines_changed":4},{"name":"jc/parsers/time.py","lines_changed":4},{"name":"jc/parsers/timedatectl.py","lines_changed":4},{"name":"jc/parsers/tracepath.py","lines_changed":4},{"name":"jc/parsers/traceroute.py","lines_changed":4},{"name":"jc/parsers/uname.py","lines_changed":4},{"name":"jc/parsers/upower.py","lines_changed":4},{"name":"jc/parsers/uptime.py","lines_changed":4},{"name":"jc/parsers/w.py","lines_changed":4},{"name":"jc/parsers/wc.py","lines_changed":4},{"name":"jc/parsers/who.py","lines_changed":4},{"name":"jc/parsers/xml.py","lines_changed":4},{"name":"jc/parsers/yaml.py","lines_changed":4},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"f5c7e7e4046bc57b4fcad99390e31b121a7106ba","message":"add updated docs with home link and parser info at the bottom","stats":{"files_changed":70,"insertions":350,"deletions":0,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":5},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5}]}},{"commit":"001c700b5bd280cb1cb9e54169ae5f1b7918c257","message":"add home link to the top of the md file","stats":{"files_changed":3,"insertions":2,"deletions":1,"files":["docgen.sh","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docgen.sh","lines_changed":3},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"9b41e9bef0ff099e70f37fddc8fe2c6bd8457b19","message":"Add parser information header","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":1}]}},{"commit":"34bd6e32dc0c0bf7dfeedaadbf04115f43e9d060","message":"pull each parser as a json object into a bash array and iterate on it to add supplementary information like version, author, and compatibility","stats":{"files_changed":1,"insertions":20,"deletions":4,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":24}]}},{"commit":"c5d058490beaa8f59875a8acfd7a400764768639","message":"move parser doc printing to its own function","stats":{"files_changed":1,"insertions":22,"deletions":13,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":35}]}},{"commit":"dd1ae6d9a7de5421830232deb42d933b9a652672","message":"add man page inside the pypi package for easier packaging in homebrew","stats":{"files_changed":4,"insertions":3,"deletions":1,"files":["MANIFEST.in","jc/man/jc.1.gz","man/jc.1.gz","mangen.py"],"file_stats":[{"name":"MANIFEST.in","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"mangen.py","lines_changed":2}]}},{"commit":"d8ea9bde823a7f5c146741150c3211737345c7dd","message":"doc update","stats":{"files_changed":3,"insertions":16,"deletions":16,"files":["docs/parsers/w.md","jc/parsers/w.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/w.md","lines_changed":16},{"name":"jc/parsers/w.py","lines_changed":16},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"125edc9c906dc3650b6a683ed13830075acb7ab6","message":"bail out for -h, -a, and -v in magic()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]}},{"commit":"15ea43e394a9004f8ccec208b3a066c76e241866","message":"add man file to package for easier packaging in homebrew","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["MANIFEST.in"],"file_stats":[{"name":"MANIFEST.in","lines_changed":1}]}},{"commit":"b55b02687c00d1c50e30f30c9b9a7f36f783eb0f","message":"doc update","stats":{"files_changed":19,"insertions":371,"deletions":441,"files":["CHANGELOG","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","man/jc.1.gz","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":6},{"name":"docs/parsers/uname.md","lines_changed":42},{"name":"docs/parsers/upower.md","lines_changed":140},{"name":"docs/parsers/uptime.md","lines_changed":52},{"name":"docs/parsers/w.md","lines_changed":46},{"name":"docs/parsers/wc.md","lines_changed":38},{"name":"docs/parsers/who.md","lines_changed":50},{"name":"docs/parsers/xml.md","lines_changed":33},{"name":"docs/parsers/yaml.md","lines_changed":37},{"name":"jc/parsers/uname.py","lines_changed":33},{"name":"jc/parsers/upower.py","lines_changed":131},{"name":"jc/parsers/uptime.py","lines_changed":43},{"name":"jc/parsers/w.py","lines_changed":37},{"name":"jc/parsers/wc.py","lines_changed":29},{"name":"jc/parsers/who.py","lines_changed":41},{"name":"jc/parsers/xml.py","lines_changed":24},{"name":"jc/parsers/yaml.py","lines_changed":28},{"name":"man/jc.1.gz","lines_changed":null},{"name":"setup.py","lines_changed":2}]}},{"commit":"da611f0ac6321f7f52fdbc419f8b155c74393c28","message":"update docs","stats":{"files_changed":4,"insertions":63,"deletions":50,"files":["jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","man/jc.1.gz"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":30},{"name":"jc/parsers/iptables.py","lines_changed":53},{"name":"jc/parsers/iw_scan.py","lines_changed":30},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"b8b8dfead4fdc4285585c44c2ebce3bdd42b2e7c","message":"update docs","stats":{"files_changed":61,"insertions":1501,"deletions":1848,"files":["docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":39},{"name":"docs/parsers/iptables.md","lines_changed":62},{"name":"docs/parsers/iw_scan.md","lines_changed":35},{"name":"docs/parsers/jobs.md","lines_changed":40},{"name":"docs/parsers/kv.md","lines_changed":12},{"name":"docs/parsers/last.md","lines_changed":48},{"name":"docs/parsers/ls.md","lines_changed":50},{"name":"docs/parsers/lsblk.md","lines_changed":110},{"name":"docs/parsers/lsmod.md","lines_changed":42},{"name":"docs/parsers/lsof.md","lines_changed":50},{"name":"docs/parsers/mount.md","lines_changed":42},{"name":"docs/parsers/netstat.md","lines_changed":218},{"name":"docs/parsers/ntpq.md","lines_changed":53},{"name":"docs/parsers/passwd.md","lines_changed":44},{"name":"docs/parsers/ping.md","lines_changed":76},{"name":"docs/parsers/pip_list.md","lines_changed":36},{"name":"docs/parsers/pip_show.md","lines_changed":51},{"name":"docs/parsers/ps.md","lines_changed":64},{"name":"docs/parsers/route.md","lines_changed":58},{"name":"docs/parsers/rpm_qi.md","lines_changed":72},{"name":"docs/parsers/shadow.md","lines_changed":46},{"name":"docs/parsers/ss.md","lines_changed":66},{"name":"docs/parsers/stat.md","lines_changed":92},{"name":"docs/parsers/sysctl.md","lines_changed":32},{"name":"docs/parsers/systemctl.md","lines_changed":40},{"name":"docs/parsers/systemctl_lj.md","lines_changed":39},{"name":"docs/parsers/systemctl_ls.md","lines_changed":36},{"name":"docs/parsers/systemctl_luf.md","lines_changed":34},{"name":"docs/parsers/time.md","lines_changed":100},{"name":"docs/parsers/timedatectl.md","lines_changed":48},{"name":"docs/parsers/tracepath.md","lines_changed":55},{"name":"docs/parsers/traceroute.md","lines_changed":64},{"name":"jc/parsers/jobs.py","lines_changed":31},{"name":"jc/parsers/kv.py","lines_changed":13},{"name":"jc/parsers/last.py","lines_changed":39},{"name":"jc/parsers/ls.py","lines_changed":41},{"name":"jc/parsers/lsblk.py","lines_changed":101},{"name":"jc/parsers/lsmod.py","lines_changed":33},{"name":"jc/parsers/lsof.py","lines_changed":41},{"name":"jc/parsers/mount.py","lines_changed":41},{"name":"jc/parsers/netstat.py","lines_changed":209},{"name":"jc/parsers/ntpq.py","lines_changed":44},{"name":"jc/parsers/passwd.py","lines_changed":35},{"name":"jc/parsers/ping.py","lines_changed":75},{"name":"jc/parsers/pip_list.py","lines_changed":27},{"name":"jc/parsers/pip_show.py","lines_changed":42},{"name":"jc/parsers/ps.py","lines_changed":55},{"name":"jc/parsers/route.py","lines_changed":49},{"name":"jc/parsers/rpm_qi.py","lines_changed":63},{"name":"jc/parsers/shadow.py","lines_changed":37},{"name":"jc/parsers/ss.py","lines_changed":59},{"name":"jc/parsers/stat.py","lines_changed":83},{"name":"jc/parsers/sysctl.py","lines_changed":23},{"name":"jc/parsers/systemctl.py","lines_changed":31},{"name":"jc/parsers/systemctl_lj.py","lines_changed":30},{"name":"jc/parsers/systemctl_ls.py","lines_changed":27},{"name":"jc/parsers/systemctl_luf.py","lines_changed":25},{"name":"jc/parsers/time.py","lines_changed":91},{"name":"jc/parsers/timedatectl.py","lines_changed":39},{"name":"jc/parsers/tracepath.py","lines_changed":46},{"name":"jc/parsers/traceroute.py","lines_changed":65}]}},{"commit":"4290a3cbd135cacbf63664dc30768017ebbed28d","message":"make IfconfigParser class private","stats":{"files_changed":2,"insertions":3,"deletions":9,"files":["docs/parsers/ifconfig.md","jc/parsers/ifconfig.py"],"file_stats":[{"name":"docs/parsers/ifconfig.md","lines_changed":6},{"name":"jc/parsers/ifconfig.py","lines_changed":6}]}},{"commit":"a5e2203cee6a7bc398cf280f57d37638eeb1d2d8","message":"update ifconfig doc","stats":{"files_changed":3,"insertions":2,"deletions":1,"files":["docs/parsers/ifconfig.md","jc/parsers/ifconfig.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":1},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"e28c08b1361161cfd123b9ebc11fa1ffa87d658f","message":"update documentation","stats":{"files_changed":46,"insertions":976,"deletions":1209,"files":["docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/csv.md","lines_changed":36},{"name":"docs/parsers/date.md","lines_changed":63},{"name":"docs/parsers/df.md","lines_changed":54},{"name":"docs/parsers/dig.md","lines_changed":128},{"name":"docs/parsers/dir.md","lines_changed":44},{"name":"docs/parsers/dmidecode.md","lines_changed":50},{"name":"docs/parsers/dpkg_l.md","lines_changed":46},{"name":"docs/parsers/du.md","lines_changed":34},{"name":"docs/parsers/env.md","lines_changed":34},{"name":"docs/parsers/file.md","lines_changed":34},{"name":"docs/parsers/finger.md","lines_changed":52},{"name":"docs/parsers/free.md","lines_changed":44},{"name":"docs/parsers/fstab.md","lines_changed":42},{"name":"docs/parsers/group.md","lines_changed":42},{"name":"docs/parsers/gshadow.md","lines_changed":46},{"name":"docs/parsers/hash.md","lines_changed":34},{"name":"docs/parsers/hashsum.md","lines_changed":34},{"name":"docs/parsers/hciconfig.md","lines_changed":118},{"name":"docs/parsers/history.md","lines_changed":34},{"name":"docs/parsers/hosts.md","lines_changed":38},{"name":"docs/parsers/id.md","lines_changed":74},{"name":"docs/parsers/ifconfig.md","lines_changed":86},{"name":"jc/parsers/csv.py","lines_changed":27},{"name":"jc/parsers/date.py","lines_changed":54},{"name":"jc/parsers/df.py","lines_changed":45},{"name":"jc/parsers/dig.py","lines_changed":143},{"name":"jc/parsers/dir.py","lines_changed":35},{"name":"jc/parsers/dmidecode.py","lines_changed":41},{"name":"jc/parsers/dpkg_l.py","lines_changed":37},{"name":"jc/parsers/du.py","lines_changed":25},{"name":"jc/parsers/env.py","lines_changed":25},{"name":"jc/parsers/file.py","lines_changed":25},{"name":"jc/parsers/finger.py","lines_changed":43},{"name":"jc/parsers/foo.py","lines_changed":25},{"name":"jc/parsers/free.py","lines_changed":35},{"name":"jc/parsers/fstab.py","lines_changed":33},{"name":"jc/parsers/group.py","lines_changed":33},{"name":"jc/parsers/gshadow.py","lines_changed":37},{"name":"jc/parsers/hash.py","lines_changed":25},{"name":"jc/parsers/hashsum.py","lines_changed":25},{"name":"jc/parsers/hciconfig.py","lines_changed":109},{"name":"jc/parsers/history.py","lines_changed":25},{"name":"jc/parsers/hosts.py","lines_changed":29},{"name":"jc/parsers/id.py","lines_changed":65},{"name":"jc/parsers/ifconfig.py","lines_changed":77},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"a4b6846f63b43168085275d73940265940badf46","message":"man update","stats":{"files_changed":2,"insertions":0,"deletions":467,"files":["man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"man/jc.1","lines_changed":467},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"2bc830786114fd57619f34b936dcf6e0bed7a109","message":"Merge branch 'master' into dev"},{"commit":"9b39917c798ed0310c9b82d87172cbf6d24ba111","message":"update docstrings for new help functionality","stats":{"files_changed":17,"insertions":391,"deletions":453,"files":["README.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","jc/cli.py","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/acpi.md","lines_changed":94},{"name":"docs/parsers/airport.md","lines_changed":56},{"name":"docs/parsers/blkid.md","lines_changed":88},{"name":"docs/parsers/cksum.md","lines_changed":36},{"name":"docs/parsers/crontab.md","lines_changed":79},{"name":"docs/parsers/crontab_u.md","lines_changed":83},{"name":"jc/cli.py","lines_changed":6},{"name":"jc/parsers/acpi.py","lines_changed":85},{"name":"jc/parsers/airport.py","lines_changed":47},{"name":"jc/parsers/blkid.py","lines_changed":79},{"name":"jc/parsers/cksum.py","lines_changed":27},{"name":"jc/parsers/crontab.py","lines_changed":70},{"name":"jc/parsers/crontab_u.py","lines_changed":74},{"name":"man/jc.1","lines_changed":8},{"name":"templates/manpage_template","lines_changed":8},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"57c13cc0a38ad89fda8b0e362bd6487257d0a26a","message":"add support for parser help","stats":{"files_changed":1,"insertions":23,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":26}]}},{"commit":"b7355fd30d992a1bcc90227f5a1b02be073829e7","message":"new docstring format for improved documentation","stats":{"files_changed":2,"insertions":37,"deletions":48,"files":["docs/parsers/arp.md","jc/parsers/arp.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":46},{"name":"jc/parsers/arp.py","lines_changed":39}]}},{"commit":"93ae309e407b26820b9f05b5b331d05fc77df57f","message":"bump version to 1.15.1","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/__init__.py","man/jc.1"],"file_stats":[{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"5d8f8365e24a7c3a587d4e71ebba4876de08203b","message":"gzip man page","stats":{"files_changed":3,"insertions":9,"deletions":461,"files":["man/jc.1","man/jc.1.gz","mangen.py"],"file_stats":[{"name":"man/jc.1","lines_changed":461},{"name":"man/jc.1.gz","lines_changed":null},{"name":"mangen.py","lines_changed":9}]}},{"commit":"f26909eefb236e9ebf63be53cd86ae13cc3d9ea3","message":"formatting","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["docs/parsers/dir.md"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":8}]}},{"commit":"55bfbb2797ede3aefbb14ecab950b108b1895ccc","message":"formatting","stats":{"files_changed":2,"insertions":5,"deletions":6,"files":["EXAMPLES.md","jc/parsers/dir.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":3},{"name":"jc/parsers/dir.py","lines_changed":8}]}},{"commit":"8970b8342a855203aef649b60dad3e49a1d7fd2a","message":"Merge pull request #115 from kellyjonbrazil/master"},{"commit":"5285e699c30fdeaf56068f5a03ef1d1d33fa673c","message":"fix rpm-qi parser name","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","jc/cli.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"275f3860d5870303235b651d42650256e4db8ada","message":"Merge pull request #114 from kellyjonbrazil/dev"},{"commit":"a73fdb7478965f0f2c841ac01b2762db80ad0786","message":"update dates","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["CHANGELOG","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"f2d746403a0ed764f931ae9e14d180bab107dcca","message":"typo fix","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/rpm_qi.md","jc/parsers/rpm_qi.py"],"file_stats":[{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"jc/parsers/rpm_qi.py","lines_changed":2}]}},{"commit":"b7dbf2c49be4beb793495a0aaee7f05dbea5a3a6","message":"doc formatting","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":26}]}},{"commit":"21f3c97788826e79b0c387f877c5adf269318e97","message":"rename rpm_qai to rpm_qi","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2}]}},{"commit":"14b727cc717d04fefba1cc31b6f29b549ced986f","message":"add rpm_qi tests","stats":{"files_changed":3,"insertions":73,"deletions":0,"files":["tests/fixtures/centos-7.7/rpm-qi-package.json","tests/fixtures/centos-7.7/rpm-qi-package.out","tests/test_rpm_qai.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/rpm-qi-package.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rpm-qi-package.out","lines_changed":26},{"name":"tests/test_rpm_qai.py","lines_changed":46}]}},{"commit":"abee226591ed4ae37351efc995017d28b27827d9","message":"rename rpm_qia to rpm_qi","stats":{"files_changed":5,"insertions":205,"deletions":14,"files":["README.md","docs/parsers/rpm_qi.md","jc/cli.py","jc/parsers/{rpm_qai.py => rpm_qi.py}","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":191},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/{rpm_qai.py => rpm_qi.py}","lines_changed":20},{"name":"man/jc.1","lines_changed":4}]}},{"commit":"293ad39f4bcf326186dd917d8bc58d3964e5e4d6","message":"typo fix","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"92443025811019f616f596abb60a2889f604c122","message":"rpm parser doc update","stats":{"files_changed":4,"insertions":7,"deletions":6,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/rpm_qai.md","jc/parsers/rpm_qai.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":4},{"name":"docs/parsers/rpm_qai.md","lines_changed":4},{"name":"jc/parsers/rpm_qai.py","lines_changed":4}]}},{"commit":"753cac25fb1e7e6cd2c742afa8d45ced068ea91d","message":"only add description if it exists","stats":{"files_changed":1,"insertions":6,"deletions":3,"files":["jc/parsers/rpm_qai.py"],"file_stats":[{"name":"jc/parsers/rpm_qai.py","lines_changed":9}]}},{"commit":"0548263e898bf14f93d2fa423c0f0a9d9f2ff567","message":"add rpm -qai parser","stats":{"files_changed":8,"insertions":10468,"deletions":0,"files":["EXAMPLES.md","README.md","docs/parsers/rpm_qai.md","jc/cli.py","jc/parsers/rpm_qai.py","man/jc.1","tests/fixtures/centos-7.7/rpm-qai.json","tests/fixtures/centos-7.7/rpm-qai.out"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":53},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/rpm_qai.md","lines_changed":191},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/rpm_qai.py","lines_changed":255},{"name":"man/jc.1","lines_changed":5},{"name":"tests/fixtures/centos-7.7/rpm-qai.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rpm-qai.out","lines_changed":9961}]}},{"commit":"53776a9bf894988d6ef9221a62ab8b816c89560c","message":"note -a output is JSON","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":2},{"name":"templates/manpage_template","lines_changed":2}]}},{"commit":"cc7def9b76a7fa6de1e11b584676820f3acb0257","message":"add OSX finger tests","stats":{"files_changed":3,"insertions":18,"deletions":0,"files":["tests/fixtures/osx-10.14.6/finger.json","tests/fixtures/osx-10.14.6/finger.out","tests/test_finger.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/finger.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/finger.out","lines_changed":5},{"name":"tests/test_finger.py","lines_changed":12}]}},{"commit":"11a4422c25ed905f33475677bcc2f59f49c62a23","message":"add centos 7.7 finger tests","stats":{"files_changed":3,"insertions":51,"deletions":0,"files":["tests/fixtures/centos-7.7/finger.json","tests/fixtures/centos-7.7/finger.out","tests/test_finger.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/finger.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/finger.out","lines_changed":3},{"name":"tests/test_finger.py","lines_changed":47}]}},{"commit":"3a44785260514227b541530baf3e14b6c7ebe86a","message":"del details key if details are blank","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/finger.py"],"file_stats":[{"name":"jc/parsers/finger.py","lines_changed":4}]}},{"commit":"e0d430c26c38db8de5a32741e05df412cffe45b7","message":"update -r raw option info","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"417b70020accfa4910016e9d3d12690a5488f6f5","message":"add idle time fields to finger parser","stats":{"files_changed":5,"insertions":129,"deletions":22,"files":["EXAMPLES.md","docs/parsers/finger.md","jc/parsers/finger.py","tests/fixtures/ubuntu-18.04/finger.json","tests/fixtures/ubuntu-18.04/finger.out"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":18},{"name":"docs/parsers/finger.md","lines_changed":53},{"name":"jc/parsers/finger.py","lines_changed":71},{"name":"tests/fixtures/ubuntu-18.04/finger.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/finger.out","lines_changed":8}]}},{"commit":"7b29c464b72ef9a79bd872dab92cf65016490bcc","message":"date updated","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]}},{"commit":"26d5529d86e4e459ad94226465c3697a050af0ac","message":"remove aix support, add note for -s support. schema update","stats":{"files_changed":1,"insertions":10,"deletions":7,"files":["docs/parsers/finger.md"],"file_stats":[{"name":"docs/parsers/finger.md","lines_changed":17}]}},{"commit":"852103c478321b84ffbbc0a876d5ece0c0881e1f","message":"tweak regex to support arbitrary 'detail' data","stats":{"files_changed":1,"insertions":27,"deletions":14,"files":["jc/parsers/finger.py"],"file_stats":[{"name":"jc/parsers/finger.py","lines_changed":41}]}},{"commit":"26a115421b0888e23f4348f1124e2ef7b39df4cc","message":"add finger parser","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":11}]}},{"commit":"755b941a9aa602d95d9bc599f5c64e05f9e6216d","message":"doc update","stats":{"files_changed":3,"insertions":35,"deletions":30,"files":["EXAMPLES.md","docs/parsers/finger.md","jc/parsers/finger.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":23},{"name":"docs/parsers/finger.md","lines_changed":21},{"name":"jc/parsers/finger.py","lines_changed":21}]}},{"commit":"fd1ca82d86649adeb84968142665e5e4fae3fa0f","message":"add finger parser","stats":{"files_changed":5,"insertions":263,"deletions":0,"files":["README.md","docs/parsers/finger.md","jc/cli.py","jc/parsers/finger.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/finger.md","lines_changed":102},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/finger.py","lines_changed":154},{"name":"man/jc.1","lines_changed":5}]}},{"commit":"6fe175344fc61d4996a9ea20f6c5d429efb1fac7","message":"change examples link to github.io","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"3590cda13a68616ee7eb8c85c5554ffb3fef036d","message":"docs formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/last.md","jc/parsers/last.py"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":2}]}},{"commit":"2f1011dd85ec9b3550138ac4a4e1729fa5b4fe17","message":"readme update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"2b155261b3f6e4879b592f5bc052649ded5e3d69","message":"use new github.io links for documentation","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"02f4d606d0a446c7cc74aedac6035ee79805950d","message":"add documentation links to README.md","stats":{"files_changed":2,"insertions":69,"deletions":69,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":136},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"577811f00b7fcd0396bb0e26a2985709bd2c65a0","message":"Set theme jekyll-theme-cayman","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/_config.yml"],"file_stats":[{"name":"docs/_config.yml","lines_changed":1}]}},{"commit":"b4098d67a3a4a617d42c1389e0a88833c77b89b4","message":"latest","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]}},{"commit":"88bd7554aeb511c19e55dc3dde9c9376efb0485b","message":"add status messages","stats":{"files_changed":2,"insertions":8,"deletions":3,"files":["docgen.sh","updatedocs.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":2},{"name":"updatedocs.sh","lines_changed":9}]}},{"commit":"b5ec16c5cafb78db093861cc30d9646207f2227a","message":"formatting","stats":{"files_changed":2,"insertions":0,"deletions":8,"files":["mangen.py","readmegen.py"],"file_stats":[{"name":"mangen.py","lines_changed":4},{"name":"readmegen.py","lines_changed":4}]}},{"commit":"68fcb60a1460a35500180ec05a8cf5ba5706ff17","message":"add updatedocs script","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["updatedocs.sh"],"file_stats":[{"name":"updatedocs.sh","lines_changed":6}]}},{"commit":"e4781d60ce251f6d47f19bbe042e97f8aa9e2f18","message":"update parser descriptions with backticks surrounding command names","stats":{"files_changed":65,"insertions":188,"deletions":189,"files":["README.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":124},{"name":"jc/parsers/acpi.py","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/blkid.py","lines_changed":2},{"name":"jc/parsers/cksum.py","lines_changed":3},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/dir.py","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":2},{"name":"jc/parsers/dpkg_l.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/group.py","lines_changed":2},{"name":"jc/parsers/gshadow.py","lines_changed":2},{"name":"jc/parsers/hash.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":2},{"name":"jc/parsers/hciconfig.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/ntpq.py","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":2},{"name":"jc/parsers/ping.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/shadow.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/sysctl.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/time.py","lines_changed":2},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/parsers/wc.py","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":2},{"name":"man/jc.1","lines_changed":126}]}},{"commit":"6201fb346a66ba762651624cdaf03f08e08579a1","message":"test backticks in description","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]}},{"commit":"f88c8343f9dec5e0190df94a5109e6c749bda286","message":"update iw-scan description for documentation","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]}},{"commit":"25410d33168ee7142bd8f8c739ef22a62a47eb6c","message":"create readmegen.py script. move jinja2 templates to templates folder","stats":{"files_changed":5,"insertions":973,"deletions":70,"files":["README.md","mangen.py","readmegen.py","{man/template => templates}/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":139},{"name":"mangen.py","lines_changed":2},{"name":"readmegen.py","lines_changed":16},{"name":"{man/template => templates}/manpage_template","lines_changed":0},{"name":"templates/readme_template","lines_changed":886}]}},{"commit":"4ff9952938d0654376efc94ca7d8a12f6df171af","message":"change OSX to macOS","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":10}]}},{"commit":"5e3f63a412c5b23e7515337521ebba6273b5c11f","message":"add license and copyright info. use variables instead of hard-coded values","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["man/jc.1","man/template/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":4},{"name":"man/template/manpage_template","lines_changed":8}]}},{"commit":"e1f57be69efdfd7facd07df6ef0955a36c4fc18b","message":"add license info","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"2c65d5eeccdc95d2de00ac6575a9e8d8458486bc","message":"man page updates","stats":{"files_changed":2,"insertions":32,"deletions":8,"files":["man/jc.1","man/template/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":20},{"name":"man/template/manpage_template","lines_changed":20}]}},{"commit":"aa621f2f1ee043611c440683dfb63e6577d8fac4","message":"enhance man page","stats":{"files_changed":3,"insertions":74,"deletions":9,"files":["CHANGELOG","man/jc.1","man/template/manpage_template"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"man/jc.1","lines_changed":42},{"name":"man/template/manpage_template","lines_changed":40}]}},{"commit":"ac932c6e59ad80115962d0ea91e6aaabc70c211e","message":"update timestamp docs","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":2},{"name":"jc/utils.py","lines_changed":2}]}},{"commit":"029f79da1647e53f97ca83ba92b1f36a131f3128","message":"added info regarding updated dev scripts for automating doc generation","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]}},{"commit":"153b2b4a7a216caae5b03f6d50d43980c13a705f","message":"use jc to help automate the generation of its own docs","stats":{"files_changed":1,"insertions":11,"deletions":68,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":79}]}},{"commit":"709b2fe4eead06090f903718deeb06ec774fc26e","message":"add -h and -v options","stats":{"files_changed":2,"insertions":16,"deletions":0,"files":["man/jc.1","man/template/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":8},{"name":"man/template/manpage_template","lines_changed":8}]}},{"commit":"09c1fccc584e3d0582e19b520586419085ea8d04","message":"manpage updates","stats":{"files_changed":3,"insertions":4,"deletions":6,"files":["man/jc.1","man/template/manpage_template","mangen.py"],"file_stats":[{"name":"man/jc.1","lines_changed":2},{"name":"man/template/manpage_template","lines_changed":2},{"name":"mangen.py","lines_changed":6}]}},{"commit":"fd254d99b782888fe7646e42a61f28aa99e7cba7","message":"add manpage generator","stats":{"files_changed":3,"insertions":193,"deletions":15,"files":["man/jc.1","man/template/manpage_template","mangen.py"],"file_stats":[{"name":"man/jc.1","lines_changed":124},{"name":"man/template/manpage_template","lines_changed":64},{"name":"mangen.py","lines_changed":20}]}},{"commit":"88bd2c172217c498431e8904e74313bc27978785","message":"fix typo","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]}},{"commit":"d03e2f0fc1d0310cd94702f4d3c959d71b0eb622","message":"add parser schema guidelines","stats":{"files_changed":1,"insertions":40,"deletions":0,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":40}]}},{"commit":"3f12a393bd37062cd1412128be495235b0c7351f","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]}},{"commit":"8c21284c5038bdc2e52ff4211fac747f33f52091","message":"remove redundant license info","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":3}]}},{"commit":"e7d396c2157a77500017967dfc68ffaf32507c2c","message":"update issues link","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]}},{"commit":"f238fac0eb0c8e5133c6c9abf9ca709f5df7a925","message":"add contributing guidelines","stats":{"files_changed":3,"insertions":49,"deletions":0,"files":["CHANGELOG","CONTRIBUTING.md","README.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"CONTRIBUTING.md","lines_changed":46},{"name":"README.md","lines_changed":2}]}},{"commit":"017228f80d9a65ad7715f31c539d9fca1615296f","message":"add tested on Windows 10","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]}},{"commit":"286c5fa9434e25434ee8f4825621f68464296469","message":"add dir parser","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]}},{"commit":"74cfc13abe4cd09ca5470714caeaedd24c099770","message":"fixup dir parser tests","stats":{"files_changed":9,"insertions":12,"deletions":21,"files":["tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-S.json","tests/fixtures/windows-10/dir-dirs.json","tests/fixtures/windows-10/dir-files.json","tests/fixtures/windows-10/dir-mix.json","tests/fixtures/windows-10/dir-raw.json","tests/fixtures/windows-10/dir.json","tests/test_dir.py"],"file_stats":[{"name":"tests/fixtures/windows-10/dir-C.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-ODTC.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-S.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-dirs.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-files.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-mix.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-raw.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir.json","lines_changed":2},{"name":"tests/test_dir.py","lines_changed":18}]}},{"commit":"0ee4a6c377321cf6ff67ced38e9a07a8f6313943","message":"update schema and add epoch naive timestamp","stats":{"files_changed":2,"insertions":207,"deletions":460,"files":["docs/parsers/dir.md","jc/parsers/dir.py"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":316},{"name":"jc/parsers/dir.py","lines_changed":351}]}},{"commit":"283433578dfc3f132ef35727ce5bafb3e390896c","message":"add dir parser","stats":{"files_changed":2,"insertions":46,"deletions":0,"files":["EXAMPLES.md","README.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":45},{"name":"README.md","lines_changed":1}]}},{"commit":"9559c85057308e8815d4654bbe0062a5858c0b2b","message":"add windows dir format","stats":{"files_changed":2,"insertions":3,"deletions":0,"files":["jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":1},{"name":"tests/test_utils.py","lines_changed":2}]}},{"commit":"c5c020f5654038dacba542be3784a35d7333cbcc","message":"add /S option","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/parsers/dir.md"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":1}]}},{"commit":"95ec79bceb3d0c4245e36b7b16cfda6e16b01197","message":"Merge pull request #107 from rasheed-rd/add-dir-parser"},{"commit":"8f8be8aa33f0b708ebd9a35c6b288572443d7181","message":"add -1 option info","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4}]}},{"commit":"5b60c7445a3f8bd2ae1587aa0ffaeaf093966f9a","message":"Add support for /S and update documentation","stats":{"files_changed":5,"insertions":469,"deletions":400,"files":["docs/parsers/dir.md","jc/parsers/dir.py","tests/fixtures/windows-10/dir-S.json","tests/fixtures/windows-10/dir-S.out","tests/test_dir.py"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":404},{"name":"jc/parsers/dir.py","lines_changed":405},{"name":"tests/fixtures/windows-10/dir-S.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-S.out","lines_changed":47},{"name":"tests/test_dir.py","lines_changed":12}]}},{"commit":"d9dbcc8b526c8de9c6d12ac580880fd606dc68cf","message":"Add parent dir to structure. Add test cases. Remove support for /Q","stats":{"files_changed":15,"insertions":149,"deletions":73,"files":["docs/parsers/dir.md","jc/parsers/dir.py","tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-Q.json","tests/fixtures/windows-10/dir-Q.out","tests/fixtures/windows-10/dir-dirs.json","tests/fixtures/windows-10/dir-dirs.out","tests/fixtures/windows-10/dir-files.json","tests/fixtures/windows-10/dir-files.out","tests/fixtures/windows-10/dir-mix.json","tests/fixtures/windows-10/dir-mix.out","tests/fixtures/windows-10/dir-raw.json","tests/fixtures/windows-10/dir.json","tests/test_dir.py"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":24},{"name":"jc/parsers/dir.py","lines_changed":59},{"name":"tests/fixtures/windows-10/dir-C.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-ODTC.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-Q.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-Q.out","lines_changed":21},{"name":"tests/fixtures/windows-10/dir-dirs.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-dirs.out","lines_changed":19},{"name":"tests/fixtures/windows-10/dir-files.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-files.out","lines_changed":16},{"name":"tests/fixtures/windows-10/dir-mix.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-mix.out","lines_changed":22},{"name":"tests/fixtures/windows-10/dir-raw.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir.json","lines_changed":2},{"name":"tests/test_dir.py","lines_changed":50}]}},{"commit":"79bc525970b38dea68b4859ac5dd32fc681e5994","message":"add codes field to schema","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":1},{"name":"jc/parsers/dpkg_l.py","lines_changed":1}]}},{"commit":"9dae1091ddc6141694ebfdc5ae649582cb879ccd","message":"typo fix","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":6},{"name":"jc/parsers/dpkg_l.py","lines_changed":4}]}},{"commit":"74d3ac686a69518c1048260e37a0245ff254ff57","message":"add dpkg-l tests","stats":{"files_changed":4,"insertions":61,"deletions":0,"files":["tests/fixtures/ubuntu-18.04/dpkg-l-codes.json","tests/fixtures/ubuntu-18.04/dpkg-l-columns500.json","tests/fixtures/ubuntu-18.04/dpkg-l.json","tests/test_dpkg_l.py"],"file_stats":[{"name":"tests/fixtures/ubuntu-18.04/dpkg-l-codes.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l-columns500.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l.json","lines_changed":1},{"name":"tests/test_dpkg_l.py","lines_changed":58}]}},{"commit":"cf3cc636badcf4ae6db1e5ee5e57ca0331ee5b0f","message":"add dpkg-l parser info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]}},{"commit":"a720441e1d34771c5a54876cb7dd63fb8c9f408e","message":"add dpkg -l example","stats":{"files_changed":1,"insertions":54,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":54}]}},{"commit":"0a7ed0959df07e2f36d9ec3ca8c294cfdaf10396","message":"rename err to error","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"jc/parsers/dpkg_l.py","lines_changed":6}]}},{"commit":"eb83c9b86dc6d1ff15efed30993071834b65a7d1","message":"replace parse_datetime_to_timestamp with timestamp class","stats":{"files_changed":1,"insertions":8,"deletions":21,"files":["docs/utils.md"],"file_stats":[{"name":"docs/utils.md","lines_changed":29}]}},{"commit":"5c0142dd19eee14f4f1c287f0543e29824f9ae70","message":"add dpkg-l parser","stats":{"files_changed":9,"insertions":1797,"deletions":2,"files":["CHANGELOG","docgen.sh","docs/parsers/dpkg_l.md","jc/cli.py","jc/parsers/dpkg_l.py","jc/parsers/universal.py","tests/fixtures/ubuntu-18.04/dpkg-l-codes.out","tests/fixtures/ubuntu-18.04/dpkg-l-columns500.out","tests/fixtures/ubuntu-18.04/dpkg-l.out"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/dpkg_l.md","lines_changed":170},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/dpkg_l.py","lines_changed":247},{"name":"jc/parsers/universal.py","lines_changed":4},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l-codes.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l-columns500.out","lines_changed":677},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l.out","lines_changed":677}]}},{"commit":"c326c8dc8356b55bba13864156adf30607205ece","message":"add TypeError to except block. add /usr/bin/time tests","stats":{"files_changed":18,"insertions":194,"deletions":1,"files":["jc/parsers/time.py","tests/fixtures/osx-10.14.6/time-l.json","tests/fixtures/osx-10.14.6/time-l.out","tests/fixtures/osx-10.14.6/time-lp.json","tests/fixtures/osx-10.14.6/time-lp.out","tests/fixtures/osx-10.14.6/time-p.json","tests/fixtures/osx-10.14.6/time-p.out","tests/fixtures/osx-10.14.6/time.json","tests/fixtures/osx-10.14.6/time.out","tests/fixtures/ubuntu-18.04/time-p.json","tests/fixtures/ubuntu-18.04/time-p.out","tests/fixtures/ubuntu-18.04/time-verbose.json","tests/fixtures/ubuntu-18.04/time-verbose.out","tests/fixtures/ubuntu-18.04/time.json","tests/fixtures/ubuntu-18.04/time.out","tests/fixtures/ubuntu-18.04/time2.json","tests/fixtures/ubuntu-18.04/time2.out","tests/test_time.py"],"file_stats":[{"name":"jc/parsers/time.py","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/time-l.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/time-l.out","lines_changed":15},{"name":"tests/fixtures/osx-10.14.6/time-lp.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/time-lp.out","lines_changed":17},{"name":"tests/fixtures/osx-10.14.6/time-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/time-p.out","lines_changed":3},{"name":"tests/fixtures/osx-10.14.6/time.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/time.out","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time-p.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/time-verbose.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time-verbose.out","lines_changed":23},{"name":"tests/fixtures/ubuntu-18.04/time.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/time2.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time2.out","lines_changed":2},{"name":"tests/test_time.py","lines_changed":118}]}},{"commit":"fc4082a03feb5645a1ad687908782a2584a58956","message":"remove old parse_datetime_to_timestamp function","stats":{"files_changed":1,"insertions":0,"deletions":131,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":131}]}},{"commit":"c8655565ff8718f0f14d41696b81e6539529dde1","message":"use new timestamp class","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]}},{"commit":"638f879f16c9e87edb60953f4fd0b1c7ad92f277","message":"use new timestamp class","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":5}]}},{"commit":"1d221bf7e6128d57bd769c0fe8f37f7a94da8cd2","message":"use new timestamp class","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/who.py","lines_changed":3}]}},{"commit":"60ea71f0ef931dccf09e6eb0cb737ddad0b47f0c","message":"use new timestamp class","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/timedatectl.py"],"file_stats":[{"name":"jc/parsers/timedatectl.py","lines_changed":3}]}},{"commit":"d8bdd35a3f462efcdc871426309299e8aefb0a79","message":"use new timestamp class","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":5}]}},{"commit":"7463891c53f3670710dfa72ed1422431c274fe4a","message":"use new timestamp class","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":6}]}},{"commit":"7537aec76fa07384c4439f34c50d4e3f001c0dfa","message":"use jc.utils.timestamp instead of jc.utils.parse_datetime_to_timestamp()","stats":{"files_changed":1,"insertions":8,"deletions":8,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":16}]}},{"commit":"62234e39a8533362a20f106c64326ed69f430006","message":"use jc.utils.timestamp instead of jc.utils.parse_datetime_to_timestamp()","stats":{"files_changed":1,"insertions":5,"deletions":8,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":13}]}},{"commit":"be004b7b3fe9217160c6418907e7d8aad10e5fae","message":"make parse_datetime_to_timestamp function a class called timestamp for easier use","stats":{"files_changed":2,"insertions":172,"deletions":15,"files":["jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":155},{"name":"tests/test_utils.py","lines_changed":32}]}},{"commit":"82539444b24169b2eb762485ed032fc968a81f71","message":"fix indentation for int and float conversions. add real_time field to schema","stats":{"files_changed":2,"insertions":23,"deletions":21,"files":["docs/parsers/time.md","jc/parsers/time.py"],"file_stats":[{"name":"docs/parsers/time.md","lines_changed":1},{"name":"jc/parsers/time.py","lines_changed":43}]}},{"commit":"a571d3cbafd5048d1d59070e1791398ae410197f","message":"fix typo","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/time.md","jc/parsers/time.py"],"file_stats":[{"name":"docs/parsers/time.md","lines_changed":2},{"name":"jc/parsers/time.py","lines_changed":2}]}},{"commit":"a038c14c23ea27264df61a38e0301de8d1fa1b9a","message":"change microseconds to centiseconds","stats":{"files_changed":3,"insertions":8,"deletions":8,"files":["EXAMPLES.md","docs/parsers/time.md","jc/parsers/time.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":4},{"name":"jc/parsers/time.py","lines_changed":10}]}},{"commit":"25a85d874cd2b57a7700b0c2dca61132127732b1","message":"update docs","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":2}]}},{"commit":"884c36ff42df4f580c8e2b4705def8e4c1182e39","message":"add /usr/bin/time parser","stats":{"files_changed":8,"insertions":536,"deletions":1,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","docs/parsers/iw_scan.md","docs/parsers/time.md","jc/cli.py","jc/parsers/time.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":36},{"name":"README.md","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":163},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/time.py","lines_changed":332}]}},{"commit":"b98e72b8b4eda0ab5ede7725226e61634af572eb","message":"add ls parser info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]}},{"commit":"05885c0096b5ee142ecff2d17e37c446518998a0","message":"add epoch and epoch_utc timestamps","stats":{"files_changed":5,"insertions":931,"deletions":18,"files":["docs/parsers/ls.md","jc/parsers/ls.py","tests/fixtures/ubuntu-18.04/ls-l-iso.json","tests/fixtures/ubuntu-18.04/ls-l-iso.out","tests/test_ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":22},{"name":"jc/parsers/ls.py","lines_changed":31},{"name":"tests/fixtures/ubuntu-18.04/ls-l-iso.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-l-iso.out","lines_changed":883},{"name":"tests/test_ls.py","lines_changed":12}]}},{"commit":"4c9761231af897658c3a2c0abcc476aa8b43d1b3","message":"add when_epoch and when_epoch_utc fields","stats":{"files_changed":21,"insertions":118,"deletions":81,"files":["CHANGELOG","EXAMPLES.md","README.md","docs/parsers/dig.md","jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":46},{"name":"README.md","lines_changed":14},{"name":"docs/parsers/dig.md","lines_changed":50},{"name":"jc/parsers/dig.py","lines_changed":56},{"name":"tests/fixtures/centos-7.7/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig-x.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig.json","lines_changed":2},{"name":"tests/fixtures/generic/dig-answer-spaces.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-x.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig.json","lines_changed":2}]}},{"commit":"656eaa150861948091ef9d6323805c2698039bc6","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"1560dcddcf82f55fffce22d1b46d372b25a9d0fd","message":"add acpi, upower parsers and -v version option","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]}},{"commit":"08d4cd4870c7acaf3a453d1400b64d77d462437b","message":"add time calculations to acpi parser","stats":{"files_changed":7,"insertions":114,"deletions":43,"files":["EXAMPLES.md","docs/parsers/acpi.md","jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.json","tests/fixtures/generic/acpi-V2.json","tests/fixtures/generic/acpi-V3.json","tests/fixtures/generic/acpi-V4.json"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":34},{"name":"docs/parsers/acpi.md","lines_changed":50},{"name":"jc/parsers/acpi.py","lines_changed":65},{"name":"tests/fixtures/generic/acpi-V.json","lines_changed":2},{"name":"tests/fixtures/generic/acpi-V2.json","lines_changed":2},{"name":"tests/fixtures/generic/acpi-V3.json","lines_changed":2},{"name":"tests/fixtures/generic/acpi-V4.json","lines_changed":2}]}},{"commit":"9767a50cededb140575e195abf79ce49c4f53789","message":"update who parser to add epoch naive timestamp","stats":{"files_changed":12,"insertions":48,"deletions":46,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/who.md","jc/parsers/who.py","jc/utils.py","tests/fixtures/centos-7.7/who-a.json","tests/fixtures/centos-7.7/who.json","tests/fixtures/osx-10.14.6/who-a.json","tests/fixtures/osx-10.14.6/who.json","tests/fixtures/ubuntu-18.04/who-a.json","tests/fixtures/ubuntu-18.04/who.json","tests/test_utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":37},{"name":"docs/parsers/who.md","lines_changed":18},{"name":"jc/parsers/who.py","lines_changed":23},{"name":"jc/utils.py","lines_changed":1},{"name":"tests/fixtures/centos-7.7/who-a.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/who.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/who-a.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/who.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/who-a.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/who.json","lines_changed":2},{"name":"tests/test_utils.py","lines_changed":2}]}},{"commit":"cd86890ed1493644e391e52e33561e9a77631a51","message":"add website to info and use variables for version info","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]}},{"commit":"ba0dd3b9ca98a042c772898302fcfe5fdc84f79a","message":"add parse_timedate_to_timestamp test for format 7300","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":4}]}},{"commit":"8d7fa07ffd50f38336a448eb506a76d9d4849a6a","message":"unformat json","stats":{"files_changed":1,"insertions":1,"deletions":11,"files":["tests/fixtures/centos-7.7/timedatectl.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/timedatectl.json","lines_changed":12}]}},{"commit":"cade1bfe6e56b5926898b7204e911885efebd5a7","message":"update timedatectl tests for new epoch_utc field","stats":{"files_changed":2,"insertions":12,"deletions":2,"files":["tests/fixtures/centos-7.7/timedatectl.json","tests/fixtures/ubuntu-18.04/timedatectl.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/timedatectl.json","lines_changed":12},{"name":"tests/fixtures/ubuntu-18.04/timedatectl.json","lines_changed":2}]}},{"commit":"daec4ab0a7f572e872b27b043d51f68e5e06300f","message":"add epoch_utc field to timedatectl parser","stats":{"files_changed":5,"insertions":20,"deletions":4,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/timedatectl.md","jc/parsers/timedatectl.py","jc/utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"EXAMPLES.md","lines_changed":3},{"name":"docs/parsers/timedatectl.md","lines_changed":6},{"name":"jc/parsers/timedatectl.py","lines_changed":11},{"name":"jc/utils.py","lines_changed":1}]}},{"commit":"3c96bc319615c824a06c388e9e3c1d68a9bf4084","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":2}]}},{"commit":"7f7d8d4bd6f37015b11bac60a7bd99e8d3eca108","message":"update stat docs","stats":{"files_changed":2,"insertions":8,"deletions":0,"files":["docs/parsers/stat.md","jc/parsers/stat.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":4}]}},{"commit":"47263661a41987f334fd484e866e0aa8859cde5d","message":"update stat example","stats":{"files_changed":1,"insertions":18,"deletions":2,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":20}]}},{"commit":"4c42a086d206919dfe4f1c0801fe4fb1027cb1cd","message":"clean up debug code","stats":{"files_changed":1,"insertions":1,"deletions":6,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":7}]}},{"commit":"5d2541a5c4bc93f3943a491c76df7f8d4e2cf44b","message":"remove auto c locale and use a manual format rule for windows and linux compatibility","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":5}]}},{"commit":"d91d170b49bfc88c0b2fb54475705c038172f1c8","message":"try manual c locale format for windows","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]}},{"commit":"6d1f4584a9ccd0f0f7ed4fdf408576a9e7f5046b","message":"try manually setting time format for windows compatibility","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":4}]}},{"commit":"1d76d96bcf4185cffb7066bec637913099399db5","message":"debug windows issue","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":4}]}},{"commit":"e8847c998c91131acf5ee0f6485e9976c0fce3ae","message":"update stat tests","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["tests/fixtures/centos-7.7/stat.json","tests/fixtures/freebsd12/stat.json","tests/fixtures/osx-10.14.6/stat.json","tests/fixtures/ubuntu-18.04/stat.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/stat.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/stat.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/stat.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/stat.json","lines_changed":2}]}},{"commit":"da88e49bae2f3fecff623f52c20bf994b653583e","message":"add new examples","stats":{"files_changed":2,"insertions":69,"deletions":29,"files":["docs/parsers/stat.md","jc/parsers/stat.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":76},{"name":"jc/parsers/stat.py","lines_changed":22}]}},{"commit":"65c3a12e5422782df40489c3c431677f5657dbf5","message":"simplify None data scenario","stats":{"files_changed":2,"insertions":35,"deletions":24,"files":["jc/parsers/stat.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":58},{"name":"jc/utils.py","lines_changed":1}]}},{"commit":"d8d600cc36bde4e6216b935f87a765599e896714","message":"add reference to -h for help","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"507999b117b024fed1ccf067bd5dc411dbeb268c","message":"add stat command timestamp detection","stats":{"files_changed":3,"insertions":34,"deletions":19,"files":["docs/utils.md","jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":32},{"name":"jc/utils.py","lines_changed":13},{"name":"tests/test_utils.py","lines_changed":8}]}},{"commit":"8ad164eb340e135eeeb10b721172916182f37e30","message":"fix tests for compact output","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":6}]}},{"commit":"a507df140b245b83b1c46e8462b44e1145c42f2a","message":"add compact json info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]}},{"commit":"8912a99986a977ee6ca7bbe2368f5033644577b0","message":"make default json output more compact","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]}},{"commit":"1953f9882890cd0e8c515d43ce28c96f918b0ab4","message":"add version info. add json now supports unicode output","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]}},{"commit":"7515218ddd2cdcfcebd67850140e842f2f121226","message":"use jc.utils for all warning and error messages. simply error and warning formatting.","stats":{"files_changed":2,"insertions":10,"deletions":14,"files":["jc/cli.py","jc/utils.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8},{"name":"jc/utils.py","lines_changed":16}]}},{"commit":"36c11201366cefedee4244fb71a4a9cc6507e6ae","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]}},{"commit":"8fa0fe64d8418093c7f28cdc70a7f409956aeb04","message":"add -v to helptext. minor formatting","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":10}]}},{"commit":"c1a8201b140c65579ff9f8427322b67653bf3006","message":"add copyright","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":4}]}},{"commit":"398bbac48c8a716b1872843d671aa6ceaeba6a78","message":"simplify return value for parse_datetime_to_timestamp()","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]}},{"commit":"ea71a42bbdd9b09a457727cfe763054625f7901a","message":"formatting","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"1c16d25b17a7282a62a5ebd9755df5569c57435f","message":"add version option (-v) and copyright information. add 'ensure_ascii=False' to json dumps to properly show UTF-8 copyright character","stats":{"files_changed":2,"insertions":30,"deletions":9,"files":["README.md","jc/cli.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"jc/cli.py","lines_changed":35}]}},{"commit":"9d12ded889f656656267cbf7a91d71267201f736","message":"help description change","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"5312701515ecb3a10598bb9dcf2f73b7eae71b93","message":"add - make all external python requirements optional","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]}},{"commit":"808c7bc0a94ecfd160ee2b257e5feec347829a5e","message":"make xmltodict library optional","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/xml.py"],"file_stats":[{"name":"jc/parsers/xml.py","lines_changed":10}]}},{"commit":"4d394015f458f284d052ce2c1a0c8492916c5b3e","message":"make ruamel.yaml library optional","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":10}]}},{"commit":"3638298af8ebc01d54aa3ab5668d0adedca957e5","message":"make pygments library optional","stats":{"files_changed":1,"insertions":53,"deletions":44,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":97}]}},{"commit":"5f00973e400629bd68c0ab60ed9005410278f855","message":"remove parenthesis to normalize text for naive timezone detection","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":2}]}},{"commit":"0f6e2c14fcb69f664c29083ec5207326f842dfdc","message":"simplify timestamp failure logic","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":9}]}},{"commit":"51813da61994226ba40478825d47f80c23413349","message":"add offset timezones. fix timestamp logic on conversion failure","stats":{"files_changed":1,"insertions":9,"deletions":4,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":13}]}},{"commit":"e7751322ea195cac7f1921ba8e0364c442065d20","message":"formatting","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":10}]}},{"commit":"26ef29843784ade3d55410be13300dd6f4c06890","message":"change return to always include the entire object but all keys may be None if conversion fails","stats":{"files_changed":1,"insertions":10,"deletions":6,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":16}]}},{"commit":"badaf8ce73d7deb0ec2be244e27b4bf8cddbea19","message":"comment formatting","stats":{"files_changed":1,"insertions":14,"deletions":14,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":28}]}},{"commit":"b123a622039f3cc32643a3bfc0766154d660f8bc","message":"move locale change formats to the end of the list","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":9}]}},{"commit":"cfd77e42522aa2ebeada9f45ac99bd1d3414f782","message":"reset locale to None on exception","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":1}]}},{"commit":"38f814072eac5370059f1b4203316eee41cf535b","message":"better normalization of datetime string. better UTC detection. More formats supported with detected locale.","stats":{"files_changed":1,"insertions":26,"deletions":8,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":34}]}},{"commit":"a0db7754e384a0c95f2099bf894f3a22bd33c002","message":"add nixos install info","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"f07620afc7dc0d0d605eb483ef36c5979b33cdfd","message":"move version to jc.__init__.py add -h option for help instead of always showing on error use jc.utils.error_message for the following errors: missing/incorrect arguments, parser not found, missing piped data","stats":{"files_changed":3,"insertions":18,"deletions":7,"files":["README.md","jc/__init__.py","jc/cli.py"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"jc/__init__.py","lines_changed":3},{"name":"jc/cli.py","lines_changed":21}]}},{"commit":"c1b0d27752726989c6051f683a1194941bee598c","message":"remove old commented commands","stats":{"files_changed":1,"insertions":0,"deletions":10,"files":["runtests.sh"],"file_stats":[{"name":"runtests.sh","lines_changed":10}]}},{"commit":"430a5108aa265d4df0e4584eade54759da864c61","message":"move all tests to github actions","stats":{"files_changed":3,"insertions":19,"deletions":60,"files":["runtests.sh","tests/test_last.py","tests/test_last2.py"],"file_stats":[{"name":"runtests.sh","lines_changed":16},{"name":"tests/test_last.py","lines_changed":23},{"name":"tests/test_last2.py","lines_changed":40}]}},{"commit":"111ce92fc9c33b82c7d1a1664dda046ea5993f6a","message":"attempt all tests in github actions with timezone correction","stats":{"files_changed":4,"insertions":0,"deletions":1,"files":["tests/{localtest_date.py => test_date.py}","tests/{localtest_last.py => test_last2.py}","tests/{localtest_upower.py => test_upower.py}","tests/test_utils.py"],"file_stats":[{"name":"tests/{localtest_date.py => test_date.py}","lines_changed":0},{"name":"tests/{localtest_last.py => test_last2.py}","lines_changed":0},{"name":"tests/{localtest_upower.py => test_upower.py}","lines_changed":0},{"name":"tests/test_utils.py","lines_changed":1}]}},{"commit":"c851e8a58d98b2a4907cf1e7cf7c7d8d8dc04dc6","message":"force github action","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":1}]}},{"commit":"39f4bcd9b41450068903ea2843508586eccdf709","message":"Change Windows timezone","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]}},{"commit":"4a610c4c81493788b8351e8c74aabe819c981c02","message":"force github action","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":1}]}},{"commit":"89ee11945d4e2db107a33ef0d61e0c6015ac8ad7","message":"Change timezone provider","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]}},{"commit":"dadb09b74a69d1852f8433e0e32ccdd67bd91181","message":"force github action","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":1}]}},{"commit":"1b1f638b97dc5e6f2767183eb363b79ae3c9b3c7","message":"Change timezone change provider","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":8}]}},{"commit":"794fc4ed44d1565514303090403d68ba5d639cb3","message":"add parse_datetime_to_timestamp() tests","stats":{"files_changed":2,"insertions":36,"deletions":8,"files":["jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":16},{"name":"tests/test_utils.py","lines_changed":28}]}},{"commit":"72f735bf9211d7beddcf58819fe465722f5d7c5a","message":"Set Timezone to America/Los_Angeles","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":4}]}},{"commit":"912877f25ad562ed4cafe7b2d7446bd48b477ea2","message":"additional timezone info","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"2772c5ae436ea437d833003372d53a3d3f955ea0","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]}},{"commit":"a7ad24d2cb61d84cf2846f8fa43af31f0597043e","message":"Add dir parser","stats":{"files_changed":13,"insertions":772,"deletions":0,"files":["docgen.sh","docs/parsers/dir.md","jc/cli.py","jc/parsers/dir.py","tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-C.out","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-ODTC.out","tests/fixtures/windows-10/dir-Q.json","tests/fixtures/windows-10/dir-Q.out","tests/fixtures/windows-10/dir.json","tests/fixtures/windows-10/dir.out","tests/test_dir.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/dir.md","lines_changed":286},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/dir.py","lines_changed":332},{"name":"tests/fixtures/windows-10/dir-C.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-C.out","lines_changed":21},{"name":"tests/fixtures/windows-10/dir-ODTC.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-ODTC.out","lines_changed":21},{"name":"tests/fixtures/windows-10/dir-Q.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-Q.out","lines_changed":21},{"name":"tests/fixtures/windows-10/dir.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir.out","lines_changed":21},{"name":"tests/test_dir.py","lines_changed":64}]}},{"commit":"a364a6a9faeb6aa290b790f3dec74e92b8670534","message":"add note regarding calculated timestamps","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]}},{"commit":"7b2dc86a8d974e7984fe2540f56a66c2b9386acd","message":"update last example with new timestamp fields","stats":{"files_changed":1,"insertions":23,"deletions":19,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":42}]}},{"commit":"ad645636d07d0423253f19068a22b2a28251b05f","message":"update uptime docs","stats":{"files_changed":5,"insertions":86,"deletions":50,"files":["CHANGELOG","EXAMPLES.md","README.md","docs/parsers/uptime.md","jc/parsers/uptime.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":9},{"name":"EXAMPLES.md","lines_changed":19},{"name":"README.md","lines_changed":19},{"name":"docs/parsers/uptime.md","lines_changed":50},{"name":"jc/parsers/uptime.py","lines_changed":39}]}},{"commit":"2f2f297b29fbe3172647a81db084b3564a441d40","message":"update uptime fixtures with new fields","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["tests/fixtures/centos-7.7/uptime.json","tests/fixtures/osx-10.11.6/uptime.json","tests/fixtures/osx-10.14.6/uptime.json","tests/fixtures/ubuntu-18.04/uptime.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/uptime.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/uptime.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/uptime.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/uptime.json","lines_changed":2}]}},{"commit":"099ae3fde03f8157298f6b412bdddb8bd56da09a","message":"fix issue when there is no data","stats":{"files_changed":1,"insertions":26,"deletions":22,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":48}]}},{"commit":"e9febe98ac5ec0e03791c5b6794446a2c3312fb1","message":"add localtest partition lines for readability","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["runtests.sh"],"file_stats":[{"name":"runtests.sh","lines_changed":2}]}},{"commit":"5fbd07cccf9fb697b996dcc3949eef5b1c09e655","message":"rewrite of uptime parser including new fields","stats":{"files_changed":1,"insertions":59,"deletions":26,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":85}]}},{"commit":"5fed4698c2c1f1b7e05c5b4c51639f818e049b53","message":"update docs and version number","stats":{"files_changed":2,"insertions":5,"deletions":6,"files":["docs/parsers/last.md","jc/parsers/last.py"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":4},{"name":"jc/parsers/last.py","lines_changed":7}]}},{"commit":"ed7eb0983a4dfcc1d66a2957be3e10b2203d909e","message":"use parse_datetime_to_timestamp function instead of custom format string","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":8}]}},{"commit":"90c7e18e5fc5ea9fcf6157cc2656f47193d78411","message":"update date example","stats":{"files_changed":1,"insertions":16,"deletions":11,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":27}]}},{"commit":"953ab5c3bd0c8b6eef29b717edaf1aa2380c2b93","message":"make upower tests local only","stats":{"files_changed":2,"insertions":1,"deletions":0,"files":["runtests.sh","tests/{test_upower.py => localtest_upower.py}"],"file_stats":[{"name":"runtests.sh","lines_changed":1},{"name":"tests/{test_upower.py => localtest_upower.py}","lines_changed":0}]}},{"commit":"699c97d8a07f7575454746159ac4d19981cd1a5c","message":"add last parser info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]}},{"commit":"e4ca0de92a689ce93b91d86106a5da590226855a","message":"add upower tests","stats":{"files_changed":8,"insertions":100,"deletions":0,"files":["tests/fixtures/generic/upower-i-c-locale.json","tests/fixtures/generic/upower-i-non-utc.json","tests/fixtures/generic/upower-i-utc.json",".../{upower-i-utc.out2 => upower-i-utc.out}","tests/fixtures/ubuntu-18.04/upower-d-clocale.json","tests/fixtures/ubuntu-18.04/upower-d.json","tests/fixtures/ubuntu-18.04/upower-i.json","tests/test_upower.py"],"file_stats":[{"name":"tests/fixtures/generic/upower-i-c-locale.json","lines_changed":1},{"name":"tests/fixtures/generic/upower-i-non-utc.json","lines_changed":1},{"name":"tests/fixtures/generic/upower-i-utc.json","lines_changed":1},{"name":".../{upower-i-utc.out2 => upower-i-utc.out}","lines_changed":0},{"name":"tests/fixtures/ubuntu-18.04/upower-d-clocale.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/upower-d.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/upower-i.json","lines_changed":1},{"name":"tests/test_upower.py","lines_changed":94}]}},{"commit":"04745a36b84cc79e56bde2a0e92a4ee9ab4a1538","message":"doc update","stats":{"files_changed":2,"insertions":8,"deletions":5,"files":["CHANGELOG","jc/utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":12},{"name":"jc/utils.py","lines_changed":1}]}},{"commit":"5936940532b8b753e67c9f5cd9287f34cc84ae9f","message":"rewrite of date parser using datetime library","stats":{"files_changed":7,"insertions":136,"deletions":186,"files":["docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date-after-midnight.json","tests/fixtures/generic/date-before-midnight.json","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/fixtures/ubuntu-20.04/date2.json"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":74},{"name":"jc/parsers/date.py","lines_changed":238},{"name":"tests/fixtures/generic/date-after-midnight.json","lines_changed":2},{"name":"tests/fixtures/generic/date-before-midnight.json","lines_changed":2},{"name":"tests/fixtures/generic/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date2.json","lines_changed":2}]}},{"commit":"b3eb064b6753d6e894884e1c16054630c2396fe1","message":"clarify format definition comments","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":4}]}},{"commit":"e4b41057e302074ac2a81ad8c36b6f95cd6b7db2","message":"update upower fixture names","stats":{"files_changed":3,"insertions":24,"deletions":0,"files":[".../{upower-i.out => upower-i-c-locale.out}","tests/fixtures/generic/upower-i-non-utc.out",".../generic/{upower-i2.out => upower-i-utc.out2}"],"file_stats":[{"name":".../{upower-i.out => upower-i-c-locale.out}","lines_changed":0},{"name":"tests/fixtures/generic/upower-i-non-utc.out","lines_changed":24},{"name":".../generic/{upower-i2.out => upower-i-utc.out2}","lines_changed":0}]}},{"commit":"1d41c46cc762ab0c78b819e56db7df39f1111d5d","message":"normalize datetime string to remove all timezones except UTC","stats":{"files_changed":1,"insertions":34,"deletions":5,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":39}]}},{"commit":"a5c444587b3f0874fcc2833dc4e759c2dc1c7834","message":"add before and after midnight date tests","stats":{"files_changed":5,"insertions":28,"deletions":0,"files":["tests/fixtures/generic/date-after-midnight.json","tests/fixtures/generic/date-after-midnight.out","tests/fixtures/generic/date-before-midnight.json","tests/fixtures/generic/date-before-midnight.out","tests/localtest_date.py"],"file_stats":[{"name":"tests/fixtures/generic/date-after-midnight.json","lines_changed":1},{"name":"tests/fixtures/generic/date-after-midnight.out","lines_changed":1},{"name":"tests/fixtures/generic/date-before-midnight.json","lines_changed":1},{"name":"tests/fixtures/generic/date-before-midnight.out","lines_changed":1},{"name":"tests/localtest_date.py","lines_changed":24}]}},{"commit":"a56f471be980be16e73d3a91e2b12aad26c6d38c","message":"update fixture to use UTC for better testing","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/fixtures/generic/upower-i2.out"],"file_stats":[{"name":"tests/fixtures/generic/upower-i2.out","lines_changed":2}]}},{"commit":"6a6b26ed8d97014c2a5c7d91a4cd9b23f49530fb","message":"fix 12 to 24 hour conversion for midnight cases","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":5}]}},{"commit":"f62446c152d89f2d37b22ffe9d9de5b5c9fa7049","message":"rename variables. add another european time format","stats":{"files_changed":1,"insertions":11,"deletions":10,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":21}]}},{"commit":"56011f1f172344cab2a8e869e7a6df6e45c45874","message":"updated upower examples","stats":{"files_changed":3,"insertions":73,"deletions":6,"files":["EXAMPLES.md","docs/parsers/upower.md","jc/parsers/upower.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":63},{"name":"docs/parsers/upower.md","lines_changed":8},{"name":"jc/parsers/upower.py","lines_changed":8}]}},{"commit":"6d44091c80318fde6c09cd850e6dc5afde7fe799","message":"refactor parse_datetime_to_timestamp()","stats":{"files_changed":1,"insertions":13,"deletions":53,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":66}]}},{"commit":"440c458eb42925dffe2d7b026279468fa2fa1bb7","message":"no need for ternary clause","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]}},{"commit":"798250af6116441385339806c8f26bc9720ad302","message":"use jc.utils.parse_datetime_to_timestamp() function for timestamp creation","stats":{"files_changed":2,"insertions":18,"deletions":24,"files":["docs/parsers/upower.md","jc/parsers/upower.py"],"file_stats":[{"name":"docs/parsers/upower.md","lines_changed":7},{"name":"jc/parsers/upower.py","lines_changed":35}]}},{"commit":"c762de29c6491790908451aa20f6aa12fdfa9722","message":"doc updates","stats":{"files_changed":2,"insertions":32,"deletions":2,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":30},{"name":"jc/utils.py","lines_changed":4}]}},{"commit":"0701e65e97165efd40ab2ae5087897de3588ea32","message":"add parse_datetime_to_timestamp() function","stats":{"files_changed":1,"insertions":106,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":106}]}},{"commit":"209d54e8b5be6476d896cee1a5274bd2b46219e2","message":"add hour_24 to schema docs","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":5},{"name":"jc/parsers/date.py","lines_changed":5}]}},{"commit":"2b38462de7d2fa61dd5d2a184e853279f1a9c84b","message":"update examples","stats":{"files_changed":3,"insertions":33,"deletions":27,"files":["EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":20},{"name":"docs/parsers/date.md","lines_changed":20},{"name":"jc/parsers/date.py","lines_changed":20}]}},{"commit":"1e8e5533162cb01053ee25e9dbc709a429e58070","message":"add hour_24 field","stats":{"files_changed":6,"insertions":31,"deletions":14,"files":["CHANGELOG","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/fixtures/ubuntu-20.04/date2.json","tests/localtest_date.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/date.py","lines_changed":21},{"name":"tests/fixtures/generic/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date2.json","lines_changed":1},{"name":"tests/localtest_date.py","lines_changed":16}]}},{"commit":"ab42e6bb15026d6c46e15197c62bc3e8ef95c80d","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":1},{"name":"jc/parsers/date.py","lines_changed":1}]}},{"commit":"680288454090f3c48c7f0580cdcb919c0b5a883e","message":"ensure period is always uppercase in dict value. update period documentation","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":4}]}},{"commit":"7cb8577b9655f258f2910e7e7bcf3266d4cbece0","message":"correct epoch_utc calculation. Fix for 12 hour vs. 24 hour representation","stats":{"files_changed":3,"insertions":70,"deletions":48,"files":["docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/ubuntu-20.04/date2.out"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":36},{"name":"jc/parsers/date.py","lines_changed":81},{"name":"tests/fixtures/ubuntu-20.04/date2.out","lines_changed":1}]}},{"commit":"55810ccd1f17ef6a4b1cb72fc21f6cf990ef8bb3","message":"set epoch_dt conversion again if not C locale","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":1}]}},{"commit":"f9921720cd0b9b0d76d66e6eb5bfe43481f5f52b","message":"revert to local testing for naive datetime objects","stats":{"files_changed":3,"insertions":4,"deletions":94,"files":["runtests.sh","tests/test_date.py","tests/test_last2.py"],"file_stats":[{"name":"runtests.sh","lines_changed":8},{"name":"tests/test_date.py","lines_changed":48},{"name":"tests/test_last2.py","lines_changed":42}]}},{"commit":"cda1ebd271aa8fd1b716054a2149f876d8087230","message":"try tzset()","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["tests/test_date.py","tests/test_last2.py"],"file_stats":[{"name":"tests/test_date.py","lines_changed":2},{"name":"tests/test_last2.py","lines_changed":2}]}},{"commit":"6901e4a23aad0b58cbbfac86c61917115d115dfe","message":"try setting timezone env variable before tests to ensure it is the same on all test systems","stats":{"files_changed":3,"insertions":89,"deletions":3,"files":["runtests.sh","tests/test_date.py","tests/test_last2.py"],"file_stats":[{"name":"runtests.sh","lines_changed":6},{"name":"tests/test_date.py","lines_changed":46},{"name":"tests/test_last2.py","lines_changed":40}]}},{"commit":"6bc21d3c735edc7897e49afd2a5ea9e3aa56d7fb","message":"fix date parser tests - local tests only since timezones may not match on github actions VMs","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["runtests.sh","tests/{test_date.py => localtest_date.py}","tests/localtest_last.py"],"file_stats":[{"name":"runtests.sh","lines_changed":1},{"name":"tests/{test_date.py => localtest_date.py}","lines_changed":0},{"name":"tests/localtest_last.py","lines_changed":1}]}},{"commit":"1ef231e26a2898d2a01f341fb92014df92703f72","message":"add date parser updates","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]}},{"commit":"3cd43f0f985a3b8a4e74bf5632bd8dac92d751c4","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/upower.md","jc/parsers/upower.py"],"file_stats":[{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":2}]}},{"commit":"156501996688e62dd61a8456206218582a6cbe1b","message":"fix weekday numbering to be ISO 8601 compliant. Add naive calculated epoch timestamp field","stats":{"files_changed":5,"insertions":85,"deletions":63,"files":["EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":21},{"name":"docs/parsers/date.md","lines_changed":41},{"name":"jc/parsers/date.py","lines_changed":82},{"name":"tests/fixtures/generic/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date.json","lines_changed":2}]}},{"commit":"0a4de2d3a1c235d1ac2d6e59346e77761fe51885","message":"add naive datetime calculation info to docs","stats":{"files_changed":2,"insertions":5,"deletions":2,"files":["docs/parsers/last.md","docs/parsers/upower.md"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":5}]}},{"commit":"a058f6c174e31f5e6040883bb544b83abd88c749","message":"added naive epoch calculation info to docs","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":2}]}},{"commit":"d8e5d03b01a87704424f5259cf6bd977274fd6ee","message":"naive updated_epoch timestamp calculation added","stats":{"files_changed":1,"insertions":20,"deletions":33,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":53}]}},{"commit":"9dc62eff2eaaafec89c5b8797d8ca8e4c77a07d4","message":"remove epoch conversions","stats":{"files_changed":1,"insertions":34,"deletions":21,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":55}]}},{"commit":"d4fea17c57a97d6914624b06208b9439bf2eb05f","message":"use UTC when calculating epoch timestamp. reset time locale to default after changing","stats":{"files_changed":3,"insertions":13,"deletions":6,"files":["docgen.sh","docs/parsers/upower.md","jc/parsers/upower.py"],"file_stats":[{"name":"docgen.sh","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":15}]}},{"commit":"3dd7a5b77ea708047bc12be9f2caddd9078723f1","message":"add upower docs","stats":{"files_changed":2,"insertions":230,"deletions":0,"files":["docgen.sh","docs/parsers/upower.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/upower.md","lines_changed":229}]}},{"commit":"d77c90a3ba2036b216f4a612876ace988eafd217","message":"fix quoted values in detail level. Add examples","stats":{"files_changed":1,"insertions":114,"deletions":6,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":120}]}},{"commit":"01f0c20df09fd4aa12bd108928b97376b51ef31a","message":"add sample using C locale timestamp","stats":{"files_changed":1,"insertions":27,"deletions":0,"files":["tests/fixtures/ubuntu-18.04/upower-d-clocale.out"],"file_stats":[{"name":"tests/fixtures/ubuntu-18.04/upower-d-clocale.out","lines_changed":27}]}},{"commit":"aafbe576b3b754de91591d9ec2dae9e9f827dee4","message":"working parser and processor","stats":{"files_changed":1,"insertions":137,"deletions":36,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":173}]}},{"commit":"bd68ad40345fb1f69be0e0f87dc67134f826cd06","message":"don't modify detail_type value since it is no longer a key","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":4}]}},{"commit":"bfee017c138bb30ec6af836685013b7124028974","message":"made the schema more explicit by hardcoding more items. still working on the schema","stats":{"files_changed":1,"insertions":61,"deletions":20,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":81}]}},{"commit":"61f532cfd0b7fbf14a58a0fd638bcbfb03fbde72","message":"working history list","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":12}]}},{"commit":"58dbbb75b607d0b29be185c3b8c3f0d8af21ecad","message":"simplified logic","stats":{"files_changed":1,"insertions":9,"deletions":21,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":30}]}},{"commit":"8d88b91fcf5060d7d54f687efec3e3a606bab767","message":"move if statements and generalize the history detail detection","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":17}]}},{"commit":"ad39fc60299089f56f37baac71820e50cbe87ed3","message":"working upower parser. history lines are ignored","stats":{"files_changed":6,"insertions":268,"deletions":0,"files":["jc/cli.py","jc/parsers/upower.py","tests/fixtures/generic/upower-i.out","tests/fixtures/generic/upower-i2.out","tests/fixtures/ubuntu-18.04/upower-d.out","tests/fixtures/ubuntu-18.04/upower-i.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/upower.py","lines_changed":173},{"name":"tests/fixtures/generic/upower-i.out","lines_changed":32},{"name":"tests/fixtures/generic/upower-i2.out","lines_changed":24},{"name":"tests/fixtures/ubuntu-18.04/upower-d.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-18.04/upower-i.out","lines_changed":11}]}},{"commit":"89f1fd96e6b7aa0acf6272e4f3469005d4f7c6bf","message":"add acpi tests","stats":{"files_changed":6,"insertions":87,"deletions":0,"files":["tests/fixtures/generic/acpi-V.json","tests/fixtures/generic/acpi-V2.json","tests/fixtures/generic/acpi-V3.json","tests/fixtures/generic/acpi-V4.json","tests/fixtures/ubuntu-18.04/acpi-V.json","tests/test_acpi.py"],"file_stats":[{"name":"tests/fixtures/generic/acpi-V.json","lines_changed":1},{"name":"tests/fixtures/generic/acpi-V2.json","lines_changed":1},{"name":"tests/fixtures/generic/acpi-V3.json","lines_changed":1},{"name":"tests/fixtures/generic/acpi-V4.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/acpi-V.json","lines_changed":1},{"name":"tests/test_acpi.py","lines_changed":82}]}},{"commit":"bd425f2493b68949c1fa02cd1d3289ec882d9b0d","message":"version bump to v1.15.0. Add acpi docs","stats":{"files_changed":6,"insertions":321,"deletions":2,"files":["CHANGELOG","EXAMPLES.md","docgen.sh","docs/parsers/acpi.md","jc/cli.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":4},{"name":"EXAMPLES.md","lines_changed":58},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/acpi.md","lines_changed":256},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"46962ff02a0630766a927babc92e11ec91b1f789","message":"remove redundant lines","stats":{"files_changed":1,"insertions":1,"deletions":11,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":12}]}},{"commit":"e4cb88b05166815e8ad03b646bd3f2b1da7f0d4b","message":"remove unneeded line-state assignment","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":1}]}},{"commit":"32840703dc1d88412712b08db1c9bdaebbc34450","message":"remove redundant code","stats":{"files_changed":1,"insertions":8,"deletions":39,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":47}]}},{"commit":"1f7aafd0415a79e0547cc6f1c008c1918f8fb460","message":"fix for full charge batter case. Clean up battery object logic","stats":{"files_changed":3,"insertions":19,"deletions":9,"files":["jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out","tests/fixtures/generic/acpi-V4.out"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":15},{"name":"tests/fixtures/generic/acpi-V.out","lines_changed":1},{"name":"tests/fixtures/generic/acpi-V4.out","lines_changed":12}]}},{"commit":"7378d5dce43f75440cb57903e8ae0c1c615b0782","message":"remove comment","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":1}]}},{"commit":"84f76866cdf76f67b34de999fd987de8a02f0306","message":"working process function","stats":{"files_changed":1,"insertions":197,"deletions":3,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":200}]}},{"commit":"322da9ea6a1ceea1152d720797adb8f3a7dc1199","message":"working parser","stats":{"files_changed":2,"insertions":59,"deletions":12,"files":["jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":67},{"name":"tests/fixtures/generic/acpi-V.out","lines_changed":4}]}},{"commit":"58645301ec111bfeb2a618f5f169cc734042dc5f","message":"add acpi command parser","stats":{"files_changed":6,"insertions":236,"deletions":1,"files":["jc/cli.py","jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out","tests/fixtures/generic/acpi-V2.out","tests/fixtures/generic/acpi-V3.out","tests/fixtures/ubuntu-18.04/acpi-V.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/acpi.py","lines_changed":191},{"name":"tests/fixtures/generic/acpi-V.out","lines_changed":16},{"name":"tests/fixtures/generic/acpi-V2.out","lines_changed":12},{"name":"tests/fixtures/generic/acpi-V3.out","lines_changed":13},{"name":"tests/fixtures/ubuntu-18.04/acpi-V.out","lines_changed":2}]}},{"commit":"1e18dd30a824b0463f0cad86e0da7094c47d34f9","message":"Merge pull request #102 from kellyjonbrazil/dev"},{"commit":"cc6a19adccea3e10243a166b87d852b6f95414b5","message":"fix typo in comments","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":2}]}},{"commit":"2a5588b177a24d5b78a4b5a515aba515804b7baa","message":"packaging fix for yaml parser and pyoxidizer","stats":{"files_changed":4,"insertions":13,"deletions":3,"files":["CHANGELOG","jc/cli.py","jc/parsers/yaml.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":5},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":7},{"name":"setup.py","lines_changed":2}]}},{"commit":"20f9b7f88b97ed68aba46e102b8c7b72443b9c85","message":"fix typo","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]}},{"commit":"d7e32313cd9776b4a6af38cc2819d6e4ef8c0d55","message":"fix typo","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]}},{"commit":"fb5654d3c4549e84940e2518f2d214debdd42d51","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"258f1433b36a7ee117ac43953edb4fe964603e7b","message":"add locale info to readme","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"fb723ae8bd7bb51f9a4bab380ec1bc54cda0445b","message":"Merge pull request #101 from kellyjonbrazil/dev"},{"commit":"283b89e37c38a3082203e43e38569c8b0bb11e12","message":"simplify answer data logic","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["CHANGELOG","jc/parsers/dig.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/dig.py","lines_changed":6}]}},{"commit":"f450f9eb8b7d382af316e88301e72af01a018be9","message":"add hciconfig tests","stats":{"files_changed":5,"insertions":74,"deletions":0,"files":["tests/fixtures/centos-7.7/hciconfig-a.json","tests/fixtures/centos-7.7/hciconfig.json","tests/fixtures/ubuntu-20.04/hciconfig-a.json","tests/fixtures/ubuntu-20.04/hciconfig.json","tests/test_hciconfig.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/hciconfig-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/hciconfig.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.04/hciconfig-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.04/hciconfig.json","lines_changed":1},{"name":"tests/test_hciconfig.py","lines_changed":70}]}},{"commit":"b3f8cf99a4874335c6b43e105e0c1562c08256dc","message":"work for both tabs and spaces","stats":{"files_changed":1,"insertions":15,"deletions":15,"files":["jc/parsers/hciconfig.py"],"file_stats":[{"name":"jc/parsers/hciconfig.py","lines_changed":30}]}},{"commit":"4301ea8caea7c14f59bcddf09668d0198e1115a8","message":"remove debug line","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/hciconfig.py"],"file_stats":[{"name":"jc/parsers/hciconfig.py","lines_changed":1}]}},{"commit":"c672d1c174a42ce44544dfaec0ebcf3c30fd7acf","message":"initial working hciconfig parser","stats":{"files_changed":7,"insertions":903,"deletions":22,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","docs/parsers/hciconfig.md","jc/parsers/hciconfig.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"EXAMPLES.md","lines_changed":126},{"name":"README.md","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/hciconfig.md","lines_changed":358},{"name":"jc/parsers/hciconfig.py","lines_changed":414},{"name":"man/jc.1","lines_changed":22}]}},{"commit":"229e953a38471cdd41af0810577d324329840a4b","message":"initial add of hciconfig parser","stats":{"files_changed":7,"insertions":205,"deletions":2,"files":["jc/cli.py","jc/parsers/hciconfig.py","setup.py","tests/fixtures/centos-7.7/hciconfig-a.out","tests/fixtures/centos-7.7/hciconfig.out","tests/fixtures/ubuntu-20.04/hciconfig-a.out","tests/fixtures/ubuntu-20.04/hciconfig.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/hciconfig.py","lines_changed":142},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/hciconfig-a.out","lines_changed":10},{"name":"tests/fixtures/centos-7.7/hciconfig.out","lines_changed":6},{"name":"tests/fixtures/ubuntu-20.04/hciconfig-a.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-20.04/hciconfig.out","lines_changed":17}]}},{"commit":"87b506dc9b4831d11b4fd04fd6849532db074f90","message":"fix for spaces in dig answer data","stats":{"files_changed":7,"insertions":47,"deletions":4,"files":["CHANGELOG","jc/cli.py","jc/parsers/dig.py","setup.py","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/generic/dig-answer-spaces.out","tests/test_dig.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":8},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/generic/dig-answer-spaces.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-answer-spaces.out","lines_changed":23},{"name":"tests/test_dig.py","lines_changed":12}]}},{"commit":"15c9002d9eff0f52d873fb3ab35dfafd03a8e919","message":"simplify logic by taking out 'not' in JC_COLORS parsing","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]}},{"commit":"042aaa61b96fc8472a8a460c49bde4cbbc359094","message":"minor updates","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]}},{"commit":"ef856c6ba5774cd8ec23acd71496846e794e3872","message":"clarify -q option","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"9cf5be73e3f975132d1ffbef412638b941a5664f","message":"typo fix","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]}},{"commit":"63fc149e2a097cbde60c2ce1aeb102d9becabd9b","message":"typo fix","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]}},{"commit":"3c25839350800c7e7d2c48fc032bb21efa0ac213","message":"Merge pull request #98 from kellyjonbrazil/dev"},{"commit":"58246e33b71bae0ca4a42ad5bdf31134948b1014","message":"update compatibility info and changelog date","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","README.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"README.md","lines_changed":3}]}},{"commit":"8b1407c7068e2105a83992bbb026138ea67bc07c","message":"pull env-specific tests from CI/CD and run locally only","stats":{"files_changed":3,"insertions":59,"deletions":10,"files":["runtests.sh","tests/localtest_last.py","tests/test_last.py"],"file_stats":[{"name":"runtests.sh","lines_changed":6},{"name":"tests/localtest_last.py","lines_changed":41},{"name":"tests/test_last.py","lines_changed":22}]}},{"commit":"2fde4a4e2299b98a9958e3a55849c6791e4b17dc","message":"doc updates","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["EXAMPLES.md","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]}},{"commit":"60b9e9798286121399d0f8b75d63ab0f3312c9bf","message":"last parser enhancements: augment hostname with CONSOLE for GUI login, add convenience fields when -F is used: login_epoch, logout_epoch, duration_seconds, calculate duration to hours:minutes","stats":{"files_changed":12,"insertions":80,"deletions":38,"files":["docs/parsers/last.md","jc/parsers/last.py","tests/fixtures/centos-7.7/last-crash.json","tests/fixtures/centos-7.7/last-w.json","tests/fixtures/centos-7.7/last-wF.json","tests/fixtures/centos-7.7/last-wF.out","tests/fixtures/centos-7.7/last.json","tests/fixtures/fedora32/last.json","tests/fixtures/osx-10.14.6/last.json","tests/fixtures/ubuntu-18.04/last-w.json","tests/fixtures/ubuntu-18.04/last.json","tests/fixtures/ubuntu-20.04/last-F.json"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":37},{"name":"jc/parsers/last.py","lines_changed":57},{"name":"tests/fixtures/centos-7.7/last-crash.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/last-w.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/last-wF.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/last-wF.out","lines_changed":6},{"name":"tests/fixtures/centos-7.7/last.json","lines_changed":2},{"name":"tests/fixtures/fedora32/last.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/last.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/last-w.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/last.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/last-F.json","lines_changed":2}]}},{"commit":"0adac79c0f2a22b31dfef1432a029af06132467b","message":"Add last parser enhancements","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]}},{"commit":"9f485b5981a2ce49ac699b9dad39993c5605ae18","message":"change mac_address fieldname to bssid. Add credit to Phillip","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["jc/parsers/iw_scan.py","tests/fixtures/centos-7.7/iw-scan0.json","tests/fixtures/centos-7.7/iw-scan1.json"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":6},{"name":"tests/fixtures/centos-7.7/iw-scan0.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iw-scan1.json","lines_changed":2}]}},{"commit":"db17d21b8f9b2f899760e648f1483d33d0bcf47a","message":"Merge pull request #97 from pschmitt/iw_scan_fix_space_detection"},{"commit":"996d394e89c732f327323ca340fce405bd5fb2e4","message":"iw_scan: Improve detection of lines starting with spaces","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":3}]}},{"commit":"5885b960f9b33a95ecec9f4a33233c2f8682fbc4","message":"doc updates","stats":{"files_changed":3,"insertions":7,"deletions":2,"files":["CHANGELOG","README.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":2},{"name":"man/jc.1","lines_changed":4}]}},{"commit":"79987b35f332e287567e103f25cf91cb50e040c0","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2}]}},{"commit":"661b3ef311ad26678030c70c11f2f955667311a4","message":"doc updates","stats":{"files_changed":4,"insertions":94,"deletions":2,"files":["EXAMPLES.md","README.md","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":91},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]}},{"commit":"fb422726a8366c7133f0712d3b05a26620eea785","message":"update test to add 'down' condition","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["tests/fixtures/ubuntu-20.04/last-F.json","tests/fixtures/ubuntu-20.04/last-F.out"],"file_stats":[{"name":"tests/fixtures/ubuntu-20.04/last-F.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/last-F.out","lines_changed":1}]}},{"commit":"4fb6f3ea59c52515926a51a006e65a1c18e57720","message":"add support for down in addition to crash","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":4}]}},{"commit":"f78fe771e1c2fb4691858fa7f27b1febe5f8c6c0","message":"add iw-scan tests","stats":{"files_changed":3,"insertions":48,"deletions":0,"files":["tests/fixtures/centos-7.7/iw-scan0.json","tests/fixtures/centos-7.7/iw-scan1.json","tests/test_iw_scan.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/iw-scan0.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iw-scan1.json","lines_changed":1},{"name":"tests/test_iw_scan.py","lines_changed":46}]}},{"commit":"567b8872538ac9f6b384b98741acd9794229d513","message":"doc updates","stats":{"files_changed":3,"insertions":252,"deletions":12,"files":["docgen.sh","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/iw_scan.md","lines_changed":160},{"name":"jc/parsers/iw_scan.py","lines_changed":103}]}},{"commit":"e516e6b9466b29d40ec10070dd61551180eeef90","message":"fix country/environment fields and process int/float conversions","stats":{"files_changed":1,"insertions":29,"deletions":1,"files":["jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":30}]}},{"commit":"62748676aae3d5955191ed267215df33a5bd3a4d","message":"initial iw-scan parser","stats":{"files_changed":2,"insertions":225,"deletions":0,"files":["jc/cli.py","jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/iw_scan.py","lines_changed":224}]}},{"commit":"7351c72e45242b9eb08c51dea7b6fccf12366dfd","message":"add fixes and tests for entries that contain 'crash'","stats":{"files_changed":6,"insertions":402,"deletions":1,"files":["jc/parsers/last.py","tests/fixtures/centos-7.7/last-crash.json","tests/fixtures/centos-7.7/last-crash.out","tests/fixtures/centos-7.7/last-wF.json","tests/fixtures/centos-7.7/last-wF.out","tests/test_last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":10},{"name":"tests/fixtures/centos-7.7/last-crash.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/last-crash.out","lines_changed":184},{"name":"tests/fixtures/centos-7.7/last-wF.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/last-wF.out","lines_changed":184},{"name":"tests/test_last.py","lines_changed":23}]}},{"commit":"2b7405c5e21db2488fc48b58f6c65cff947ca95d","message":"doc updates","stats":{"files_changed":5,"insertions":23,"deletions":16,"files":["CHANGELOG","README.md","docs/parsers/last.md","jc/parsers/last.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":6},{"name":"jc/parsers/last.py","lines_changed":6},{"name":"man/jc.1","lines_changed":22}]}},{"commit":"e2c77cb935a5bd95dbe930d424e5a02e88e1fa76","message":"add test for last -F output","stats":{"files_changed":3,"insertions":15,"deletions":1,"files":["jc/parsers/last.py","tests/fixtures/ubuntu-20.04/last-F.json","tests/test_last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":3},{"name":"tests/fixtures/ubuntu-20.04/last-F.json","lines_changed":1},{"name":"tests/test_last.py","lines_changed":12}]}},{"commit":"7ac621e4c916373a03f379425033cb2d81a03578","message":"add -F support","stats":{"files_changed":3,"insertions":36,"deletions":6,"files":["docs/parsers/last.md","jc/parsers/last.py","tests/fixtures/ubuntu-20.04/last-F.out"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":6},{"name":"jc/parsers/last.py","lines_changed":30},{"name":"tests/fixtures/ubuntu-20.04/last-F.out","lines_changed":6}]}},{"commit":"d8b5d6c66ced19dc16f2b4975d2293a903732ffe","message":"version bump to 1.14.1","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/cli.py","setup.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"22b461eb4b1ca86ea9e8c1fde8a2c312d1526b5f","message":"Add period field for en_US.UTF-8 locale","stats":{"files_changed":7,"insertions":47,"deletions":12,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/test_date.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":1},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":40},{"name":"tests/fixtures/generic/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date.json","lines_changed":1},{"name":"tests/test_date.py","lines_changed":12}]}},{"commit":"b37ee8555a2a108625a834a7990bc3320e79b08d","message":"changelog update","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":6}]}},{"commit":"1d0ad2f045733c5c690738d49951fdb9bcd3d66d","message":"doc fixes","stats":{"files_changed":123,"insertions":312,"deletions":312,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat_freebsd_osx.py","jc/parsers/netstat_linux.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":6},{"name":"docs/parsers/arp.md","lines_changed":6},{"name":"docs/parsers/blkid.md","lines_changed":6},{"name":"docs/parsers/cksum.md","lines_changed":6},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":6},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":6},{"name":"docs/parsers/dig.md","lines_changed":6},{"name":"docs/parsers/dmidecode.md","lines_changed":6},{"name":"docs/parsers/du.md","lines_changed":6},{"name":"docs/parsers/env.md","lines_changed":6},{"name":"docs/parsers/file.md","lines_changed":6},{"name":"docs/parsers/free.md","lines_changed":6},{"name":"docs/parsers/fstab.md","lines_changed":6},{"name":"docs/parsers/group.md","lines_changed":6},{"name":"docs/parsers/gshadow.md","lines_changed":6},{"name":"docs/parsers/hash.md","lines_changed":6},{"name":"docs/parsers/hashsum.md","lines_changed":6},{"name":"docs/parsers/history.md","lines_changed":6},{"name":"docs/parsers/hosts.md","lines_changed":6},{"name":"docs/parsers/id.md","lines_changed":4},{"name":"docs/parsers/ifconfig.md","lines_changed":6},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":6},{"name":"docs/parsers/jobs.md","lines_changed":6},{"name":"docs/parsers/last.md","lines_changed":6},{"name":"docs/parsers/ls.md","lines_changed":6},{"name":"docs/parsers/lsblk.md","lines_changed":6},{"name":"docs/parsers/lsmod.md","lines_changed":6},{"name":"docs/parsers/lsof.md","lines_changed":6},{"name":"docs/parsers/mount.md","lines_changed":6},{"name":"docs/parsers/netstat.md","lines_changed":6},{"name":"docs/parsers/ntpq.md","lines_changed":6},{"name":"docs/parsers/passwd.md","lines_changed":6},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":6},{"name":"docs/parsers/pip_show.md","lines_changed":6},{"name":"docs/parsers/ps.md","lines_changed":6},{"name":"docs/parsers/route.md","lines_changed":6},{"name":"docs/parsers/shadow.md","lines_changed":6},{"name":"docs/parsers/ss.md","lines_changed":6},{"name":"docs/parsers/stat.md","lines_changed":6},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":6},{"name":"docs/parsers/systemctl_lj.md","lines_changed":6},{"name":"docs/parsers/systemctl_ls.md","lines_changed":6},{"name":"docs/parsers/systemctl_luf.md","lines_changed":6},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":6},{"name":"docs/parsers/wc.md","lines_changed":6},{"name":"docs/parsers/who.md","lines_changed":6},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":6},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":6},{"name":"jc/parsers/arp.py","lines_changed":6},{"name":"jc/parsers/blkid.py","lines_changed":6},{"name":"jc/parsers/cksum.py","lines_changed":6},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"jc/parsers/csv.py","lines_changed":6},{"name":"jc/parsers/date.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":6},{"name":"jc/parsers/dig.py","lines_changed":6},{"name":"jc/parsers/dmidecode.py","lines_changed":6},{"name":"jc/parsers/du.py","lines_changed":6},{"name":"jc/parsers/env.py","lines_changed":6},{"name":"jc/parsers/file.py","lines_changed":6},{"name":"jc/parsers/foo.py","lines_changed":6},{"name":"jc/parsers/free.py","lines_changed":6},{"name":"jc/parsers/fstab.py","lines_changed":6},{"name":"jc/parsers/group.py","lines_changed":6},{"name":"jc/parsers/gshadow.py","lines_changed":6},{"name":"jc/parsers/hash.py","lines_changed":6},{"name":"jc/parsers/hashsum.py","lines_changed":6},{"name":"jc/parsers/history.py","lines_changed":6},{"name":"jc/parsers/hosts.py","lines_changed":6},{"name":"jc/parsers/id.py","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":6},{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":6},{"name":"jc/parsers/jobs.py","lines_changed":6},{"name":"jc/parsers/last.py","lines_changed":6},{"name":"jc/parsers/ls.py","lines_changed":6},{"name":"jc/parsers/lsblk.py","lines_changed":6},{"name":"jc/parsers/lsmod.py","lines_changed":6},{"name":"jc/parsers/lsof.py","lines_changed":6},{"name":"jc/parsers/mount.py","lines_changed":6},{"name":"jc/parsers/netstat.py","lines_changed":6},{"name":"jc/parsers/netstat_freebsd_osx.py","lines_changed":2},{"name":"jc/parsers/netstat_linux.py","lines_changed":2},{"name":"jc/parsers/ntpq.py","lines_changed":6},{"name":"jc/parsers/passwd.py","lines_changed":6},{"name":"jc/parsers/ping.py","lines_changed":4},{"name":"jc/parsers/pip_list.py","lines_changed":6},{"name":"jc/parsers/pip_show.py","lines_changed":6},{"name":"jc/parsers/ps.py","lines_changed":6},{"name":"jc/parsers/route.py","lines_changed":6},{"name":"jc/parsers/shadow.py","lines_changed":6},{"name":"jc/parsers/ss.py","lines_changed":6},{"name":"jc/parsers/stat.py","lines_changed":6},{"name":"jc/parsers/sysctl.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":6},{"name":"jc/parsers/systemctl_lj.py","lines_changed":6},{"name":"jc/parsers/systemctl_ls.py","lines_changed":6},{"name":"jc/parsers/systemctl_luf.py","lines_changed":6},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":6},{"name":"jc/parsers/wc.py","lines_changed":6},{"name":"jc/parsers/who.py","lines_changed":6},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":6}]}},{"commit":"ceccfb2c815f57f1b6fd81f891d8b495de23f9f5","message":"add test output for iw-scan and date on ubuntu 20.04","stats":{"files_changed":3,"insertions":2036,"deletions":0,"files":["tests/fixtures/centos-7.7/iw-scan0.out","tests/fixtures/centos-7.7/iw-scan1.out","tests/fixtures/ubuntu-20.04/date.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/iw-scan0.out","lines_changed":36},{"name":"tests/fixtures/centos-7.7/iw-scan1.out","lines_changed":1999},{"name":"tests/fixtures/ubuntu-20.04/date.out","lines_changed":1}]}},{"commit":"03c02953cd7e3327b391f799c37a2990eb2cb24c","message":"add wc doc","stats":{"files_changed":2,"insertions":96,"deletions":0,"files":["docgen.sh","docs/parsers/wc.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/wc.md","lines_changed":95}]}},{"commit":"f254a0eaa16fcda316f7a75424ee359058204b03","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"9e3b88727cd439e15f235dddb9dd5796e010797a","message":"Merge pull request #91 from kellyjonbrazil/dev"},{"commit":"b12217466e906829d19be4cfd80dfe7cf4008e57","message":"spelling","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]}},{"commit":"8b9c932f9b05295e63b3e7d0073f243458fd4dd9","message":"update date","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]}},{"commit":"5986ce03db6fcd1aa0f7b064eaa96c2120c06d2d","message":"add printenv info","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"a7b0e936e400d2f9e55629e2d722cc002e035e9f","message":"add vdir and printenv info","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]}},{"commit":"cb0221142455a6bcb904fbe9ade657be45815b63","message":"add wc tests","stats":{"files_changed":4,"insertions":61,"deletions":2,"files":["jc/parsers/wc.py","tests/fixtures/osx-10.14.6/wc-stdin.json","tests/fixtures/osx-10.14.6/wc-stdin.out","tests/test_wc.py"],"file_stats":[{"name":"jc/parsers/wc.py","lines_changed":3},{"name":"tests/fixtures/osx-10.14.6/wc-stdin.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/wc-stdin.out","lines_changed":1},{"name":"tests/test_wc.py","lines_changed":58}]}},{"commit":"bd443bf39227515ae5f8df65d07b30268dcc90a9","message":"add printenv to env docs","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/env.py"],"file_stats":[{"name":"jc/parsers/env.py","lines_changed":4}]}},{"commit":"1f547edd361e66b19ccbcb59f6ba0ae78f6080ce","message":"add printenv to env docs","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/env.md"],"file_stats":[{"name":"docs/parsers/env.md","lines_changed":2}]}},{"commit":"e4bac3a493705b09e301ddc90dd1b0cee7467c3f","message":"add wc parser","stats":{"files_changed":9,"insertions":378,"deletions":0,"files":["CHANGELOG","EXAMPLES.md","README.md","jc/cli.py","jc/parsers/wc.py","tests/fixtures/centos-7.7/wc.json","tests/fixtures/centos-7.7/wc.out","tests/fixtures/osx-10.14.6/wc.json","tests/fixtures/osx-10.14.6/wc.out"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":26},{"name":"README.md","lines_changed":1},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/wc.py","lines_changed":130},{"name":"tests/fixtures/centos-7.7/wc.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/wc.out","lines_changed":67},{"name":"tests/fixtures/osx-10.14.6/wc.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/wc.out","lines_changed":150}]}},{"commit":"5e6bfa681aff03fbd683f81a9f4daa56b49d1344","message":"add vdir info","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["README.md","docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":6}]}},{"commit":"276160125e01553c75eaad68530177bcf4f9004d","message":"add new commands to README","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]}},{"commit":"d4ae5543f2d5f28a0db5b8e2e19993c21c5d960c","message":"add hash tests","stats":{"files_changed":3,"insertions":39,"deletions":0,"files":["tests/fixtures/centos-7.7/hash.json","tests/fixtures/centos-7.7/hash.out","tests/test_hash.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/hash.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/hash.out","lines_changed":4},{"name":"tests/test_hash.py","lines_changed":34}]}},{"commit":"55f360e267fdfcfef0c124ed6b88535cc181a8b0","message":"add hash command parser","stats":{"files_changed":6,"insertions":260,"deletions":0,"files":["CHANGELOG","EXAMPLES.md","docgen.sh","docs/parsers/hash.md","jc/cli.py","jc/parsers/hash.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":71},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/hash.md","lines_changed":78},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/hash.py","lines_changed":108}]}},{"commit":"fdedab2a0cf5af15df5803d87302397dd6d71741","message":"description updates","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/cksum.py","jc/parsers/hashsum.py"],"file_stats":[{"name":"jc/parsers/cksum.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":2}]}},{"commit":"a9be42e3031ab0d697cff67a9e384caa2265a3ad","message":"specify parser warnings for quiet option","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"6da9510e46e84ec1cb93384825184d2996cf0e08","message":"add cksum tests","stats":{"files_changed":9,"insertions":482,"deletions":0,"files":["tests/fixtures/centos-7.7/cksum.json","tests/fixtures/centos-7.7/cksum.out","tests/fixtures/centos-7.7/sum.json","tests/fixtures/centos-7.7/sum.out","tests/fixtures/osx-10.14.6/cksum.json","tests/fixtures/osx-10.14.6/cksum.out","tests/fixtures/osx-10.14.6/sum.json","tests/fixtures/osx-10.14.6/sum.out","tests/test_cksum.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/cksum.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/cksum.out","lines_changed":59},{"name":"tests/fixtures/centos-7.7/sum.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sum.out","lines_changed":58},{"name":"tests/fixtures/osx-10.14.6/cksum.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/cksum.out","lines_changed":145},{"name":"tests/fixtures/osx-10.14.6/sum.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/sum.out","lines_changed":146},{"name":"tests/test_cksum.py","lines_changed":70}]}},{"commit":"0431798178740b03cdefececc6df958e5adf62fc","message":"add cksum parser","stats":{"files_changed":7,"insertions":229,"deletions":3,"files":["CHANGELOG","docgen.sh","docs/parsers/cksum.md","docs/parsers/hashsum.md","jc/cli.py","jc/parsers/cksum.py","jc/parsers/hashsum.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/cksum.md","lines_changed":95},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/cksum.py","lines_changed":128},{"name":"jc/parsers/hashsum.py","lines_changed":2}]}},{"commit":"62432f3c484e74acb2b2dfd15d448b3f1b5d53c4","message":"update hashsum description","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/hashsum.py"],"file_stats":[{"name":"jc/parsers/hashsum.py","lines_changed":2}]}},{"commit":"9fbbc30906b597e6afaf2030015a7a694d85f79e","message":"add supported commands to docs","stats":{"files_changed":2,"insertions":20,"deletions":0,"files":["docs/parsers/hashsum.md","jc/parsers/hashsum.py"],"file_stats":[{"name":"docs/parsers/hashsum.md","lines_changed":10},{"name":"jc/parsers/hashsum.py","lines_changed":10}]}},{"commit":"d1567d1f622902053f3df58645b4e39532e0c30a","message":"add hashsum documentation","stats":{"files_changed":3,"insertions":104,"deletions":0,"files":["CHANGELOG","docgen.sh","docs/parsers/hashsum.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":4},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/hashsum.md","lines_changed":99}]}},{"commit":"6ca1f5970b3a518615a54ee7fcbc1bddab2db331","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"1c880b9e24ca53cd592cec1dbc52301308290fb4","message":"force git tests","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_hashsum.py"],"file_stats":[{"name":"tests/test_hashsum.py","lines_changed":2}]}},{"commit":"3b7d54c720dfc93637328cf06eb10a85447c8793","message":"add python 3.9","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]}},{"commit":"44a740605705bd0ecfde2a6bcc7a826e1010dcf0","message":"add hashsum tests","stats":{"files_changed":6,"insertions":87,"deletions":0,"files":["tests/fixtures/centos-7.7/md5sum.json","tests/fixtures/centos-7.7/sha256sum.json","tests/fixtures/centos-7.7/sha384sum.json","tests/fixtures/osx-10.14.6/md5.json","tests/fixtures/osx-10.14.6/shasum.json","tests/test_hashsum.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/md5sum.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sha256sum.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sha384sum.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/md5.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/shasum.json","lines_changed":1},{"name":"tests/test_hashsum.py","lines_changed":82}]}},{"commit":"8157dcfdb1868548b7c8ca692e6be25f80bb2c2c","message":"fix for files with spaces in the name","stats":{"files_changed":1,"insertions":36,"deletions":11,"files":["jc/parsers/hashsum.py"],"file_stats":[{"name":"jc/parsers/hashsum.py","lines_changed":47}]}},{"commit":"28762aea15cabc9cd8293d725e7f1f0550f8e15d","message":"add hashsum parser","stats":{"files_changed":7,"insertions":524,"deletions":0,"files":["jc/cli.py","jc/parsers/hashsum.py","tests/fixtures/centos-7.7/md5sum.out","tests/fixtures/centos-7.7/sha256sum.out","tests/fixtures/centos-7.7/sha384sum.out","tests/fixtures/osx-10.14.6/md5.out","tests/fixtures/osx-10.14.6/shasum.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/hashsum.py","lines_changed":110},{"name":"tests/fixtures/centos-7.7/md5sum.out","lines_changed":56},{"name":"tests/fixtures/centos-7.7/sha256sum.out","lines_changed":55},{"name":"tests/fixtures/centos-7.7/sha384sum.out","lines_changed":56},{"name":"tests/fixtures/osx-10.14.6/md5.out","lines_changed":104},{"name":"tests/fixtures/osx-10.14.6/shasum.out","lines_changed":142}]}},{"commit":"439871ea9f6b055a407e1faaf47e4f56d1829501","message":"add ubuntu","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"c9180b005c0547c8cbfe4809e66894f1123b0809","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"b14e0725f86853f0113116b1c06f54aaa563f365","message":"add ansible plugin blog post link","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"70fe3dcb4d5b97aba1d6c6dcd5088fecb27af181","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"8c554604a42a3ea7ca9131b65c64fd3ceb95f906","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]}},{"commit":"a0a35454bd2831c116cb598c686150b883412f94","message":"add link to the web demo","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]}},{"commit":"e8467e2af5b0c3f14832a9e6d4a96f219c27f3f2","message":"remove extra space","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"7515deb5669ef04623e9cbf58653b30c99a96430","message":"add ansible install command","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]}},{"commit":"ed9e52af241b609ee7f5d1b835c9f6c5306cd3c5","message":"spelling","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"592a3804104628c790997747a778b3b39d076dfe","message":"add Ansible note","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"1a458d2d5b4c16c0ad90671727ae9b19939e7f23","message":"update link","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2}]}},{"commit":"0e4cf53b92ff951a6390a4dacf8833c272473583","message":"add parser docs link","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2}]}},{"commit":"e2f06ccb33177173d984bc0cdda1aae1a3f4c681","message":"formatting","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2}]}},{"commit":"8abff004cd8e09529e5d94be4883308152e11565","message":"indentation fix","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/yaml.md"],"file_stats":[{"name":"docs/parsers/yaml.md","lines_changed":2}]}},{"commit":"c4a0e2e3feb2e51eaaaa202064f352229017bcc3","message":"fix indentation","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":2}]}},{"commit":"4f10f79c73f8b3d6edc2c83e6a12d0ddc1a78555","message":"standardize doc","stats":{"files_changed":2,"insertions":4,"deletions":8,"files":["docs/parsers/uname.md","jc/parsers/uname.py"],"file_stats":[{"name":"docs/parsers/uname.md","lines_changed":6},{"name":"jc/parsers/uname.py","lines_changed":6}]}},{"commit":"69e7a560fd82337570c4bb4aa4780f513c18bd94","message":"add output info to docs","stats":{"files_changed":4,"insertions":8,"deletions":0,"files":["docs/parsers/env.md","docs/parsers/history.md","jc/parsers/env.py","jc/parsers/history.py"],"file_stats":[{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2}]}},{"commit":"59b105580805d78516abe1c1069d52a6f0a8131a","message":"enhance docs","stats":{"files_changed":97,"insertions":564,"deletions":269,"files":["docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":12},{"name":"docs/parsers/blkid.md","lines_changed":8},{"name":"docs/parsers/crontab.md","lines_changed":10},{"name":"docs/parsers/crontab_u.md","lines_changed":6},{"name":"docs/parsers/csv.md","lines_changed":9},{"name":"docs/parsers/date.md","lines_changed":8},{"name":"docs/parsers/df.md","lines_changed":8},{"name":"docs/parsers/dig.md","lines_changed":8},{"name":"docs/parsers/dmidecode.md","lines_changed":8},{"name":"docs/parsers/du.md","lines_changed":8},{"name":"docs/parsers/env.md","lines_changed":8},{"name":"docs/parsers/file.md","lines_changed":8},{"name":"docs/parsers/free.md","lines_changed":8},{"name":"docs/parsers/fstab.md","lines_changed":4},{"name":"docs/parsers/group.md","lines_changed":4},{"name":"docs/parsers/gshadow.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":4},{"name":"docs/parsers/hosts.md","lines_changed":4},{"name":"docs/parsers/id.md","lines_changed":8},{"name":"docs/parsers/ifconfig.md","lines_changed":10},{"name":"docs/parsers/ini.md","lines_changed":10},{"name":"docs/parsers/iptables.md","lines_changed":10},{"name":"docs/parsers/jobs.md","lines_changed":10},{"name":"docs/parsers/kv.md","lines_changed":11},{"name":"docs/parsers/last.md","lines_changed":8},{"name":"docs/parsers/ls.md","lines_changed":21},{"name":"docs/parsers/lsblk.md","lines_changed":8},{"name":"docs/parsers/lsmod.md","lines_changed":8},{"name":"docs/parsers/lsof.md","lines_changed":8},{"name":"docs/parsers/mount.md","lines_changed":8},{"name":"docs/parsers/netstat.md","lines_changed":17},{"name":"docs/parsers/ntpq.md","lines_changed":8},{"name":"docs/parsers/passwd.md","lines_changed":4},{"name":"docs/parsers/ping.md","lines_changed":12},{"name":"docs/parsers/pip_list.md","lines_changed":8},{"name":"docs/parsers/pip_show.md","lines_changed":8},{"name":"docs/parsers/ps.md","lines_changed":14},{"name":"docs/parsers/route.md","lines_changed":8},{"name":"docs/parsers/shadow.md","lines_changed":4},{"name":"docs/parsers/ss.md","lines_changed":8},{"name":"docs/parsers/stat.md","lines_changed":8},{"name":"docs/parsers/sysctl.md","lines_changed":16},{"name":"docs/parsers/systemctl.md","lines_changed":8},{"name":"docs/parsers/systemctl_lj.md","lines_changed":8},{"name":"docs/parsers/systemctl_ls.md","lines_changed":8},{"name":"docs/parsers/systemctl_luf.md","lines_changed":8},{"name":"docs/parsers/timedatectl.md","lines_changed":8},{"name":"docs/parsers/tracepath.md","lines_changed":10},{"name":"docs/parsers/traceroute.md","lines_changed":16},{"name":"docs/parsers/uname.md","lines_changed":8},{"name":"docs/parsers/uptime.md","lines_changed":8},{"name":"docs/parsers/w.md","lines_changed":8},{"name":"docs/parsers/who.md","lines_changed":10},{"name":"docs/parsers/xml.md","lines_changed":4},{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"jc/parsers/group.py","lines_changed":4},{"name":"jc/parsers/gshadow.py","lines_changed":4},{"name":"jc/parsers/history.py","lines_changed":4},{"name":"jc/parsers/hosts.py","lines_changed":4},{"name":"jc/parsers/id.py","lines_changed":8},{"name":"jc/parsers/ifconfig.py","lines_changed":10},{"name":"jc/parsers/ini.py","lines_changed":10},{"name":"jc/parsers/iptables.py","lines_changed":10},{"name":"jc/parsers/jobs.py","lines_changed":10},{"name":"jc/parsers/kv.py","lines_changed":11},{"name":"jc/parsers/last.py","lines_changed":8},{"name":"jc/parsers/ls.py","lines_changed":21},{"name":"jc/parsers/lsblk.py","lines_changed":8},{"name":"jc/parsers/lsmod.py","lines_changed":8},{"name":"jc/parsers/lsof.py","lines_changed":8},{"name":"jc/parsers/mount.py","lines_changed":8},{"name":"jc/parsers/netstat.py","lines_changed":17},{"name":"jc/parsers/ntpq.py","lines_changed":8},{"name":"jc/parsers/passwd.py","lines_changed":4},{"name":"jc/parsers/ping.py","lines_changed":12},{"name":"jc/parsers/pip_list.py","lines_changed":8},{"name":"jc/parsers/pip_show.py","lines_changed":8},{"name":"jc/parsers/ps.py","lines_changed":14},{"name":"jc/parsers/route.py","lines_changed":8},{"name":"jc/parsers/shadow.py","lines_changed":4},{"name":"jc/parsers/ss.py","lines_changed":8},{"name":"jc/parsers/stat.py","lines_changed":8},{"name":"jc/parsers/sysctl.py","lines_changed":16},{"name":"jc/parsers/systemctl.py","lines_changed":8},{"name":"jc/parsers/systemctl_lj.py","lines_changed":8},{"name":"jc/parsers/systemctl_ls.py","lines_changed":8},{"name":"jc/parsers/systemctl_luf.py","lines_changed":8},{"name":"jc/parsers/timedatectl.py","lines_changed":8},{"name":"jc/parsers/tracepath.py","lines_changed":10},{"name":"jc/parsers/traceroute.py","lines_changed":16},{"name":"jc/parsers/uname.py","lines_changed":8},{"name":"jc/parsers/uptime.py","lines_changed":8},{"name":"jc/parsers/w.py","lines_changed":8},{"name":"jc/parsers/who.py","lines_changed":10},{"name":"jc/parsers/xml.py","lines_changed":4},{"name":"jc/parsers/yaml.py","lines_changed":4}]}},{"commit":"6ed48c6289214fe5114971c80772efdf9ac1b8c5","message":"enhance docs","stats":{"files_changed":16,"insertions":88,"deletions":37,"files":["jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py"],"file_stats":[{"name":"jc/parsers/airport_s.py","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":12},{"name":"jc/parsers/blkid.py","lines_changed":8},{"name":"jc/parsers/crontab.py","lines_changed":10},{"name":"jc/parsers/crontab_u.py","lines_changed":6},{"name":"jc/parsers/csv.py","lines_changed":9},{"name":"jc/parsers/date.py","lines_changed":8},{"name":"jc/parsers/df.py","lines_changed":8},{"name":"jc/parsers/dig.py","lines_changed":8},{"name":"jc/parsers/dmidecode.py","lines_changed":8},{"name":"jc/parsers/du.py","lines_changed":8},{"name":"jc/parsers/env.py","lines_changed":8},{"name":"jc/parsers/file.py","lines_changed":8},{"name":"jc/parsers/foo.py","lines_changed":10},{"name":"jc/parsers/free.py","lines_changed":8},{"name":"jc/parsers/fstab.py","lines_changed":4}]}},{"commit":"f2fb4d3f415fbc1c09eec6dedcf70fba78406b3f","message":"improve docs","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","jc/parsers/airport.py","jc/parsers/airport_s.py"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":2}]}},{"commit":"6aeea59ea84e56434e87ddf89cd5d4435b99e140","message":"doc updates","stats":{"files_changed":2,"insertions":14,"deletions":8,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":11},{"name":"docs/parsers/airport_s.md","lines_changed":11}]}},{"commit":"d016f3bbb307f85bd0f93a508323941a8bb9d872","message":"improve documentation","stats":{"files_changed":2,"insertions":14,"deletions":8,"files":["jc/parsers/airport.py","jc/parsers/airport_s.py"],"file_stats":[{"name":"jc/parsers/airport.py","lines_changed":11},{"name":"jc/parsers/airport_s.py","lines_changed":11}]}},{"commit":"7131c297180bfa195d0209d46fc70ab8e67efe2e","message":"add module usage info to docs","stats":{"files_changed":114,"insertions":686,"deletions":116,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":7},{"name":"docs/parsers/airport_s.md","lines_changed":7},{"name":"docs/parsers/arp.md","lines_changed":7},{"name":"docs/parsers/crontab.md","lines_changed":7},{"name":"docs/parsers/crontab_u.md","lines_changed":7},{"name":"docs/parsers/csv.md","lines_changed":7},{"name":"docs/parsers/date.md","lines_changed":7},{"name":"docs/parsers/df.md","lines_changed":7},{"name":"docs/parsers/dig.md","lines_changed":7},{"name":"docs/parsers/dmidecode.md","lines_changed":7},{"name":"docs/parsers/du.md","lines_changed":7},{"name":"docs/parsers/env.md","lines_changed":7},{"name":"docs/parsers/file.md","lines_changed":7},{"name":"docs/parsers/free.md","lines_changed":7},{"name":"docs/parsers/fstab.md","lines_changed":7},{"name":"docs/parsers/group.md","lines_changed":7},{"name":"docs/parsers/gshadow.md","lines_changed":7},{"name":"docs/parsers/history.md","lines_changed":7},{"name":"docs/parsers/hosts.md","lines_changed":7},{"name":"docs/parsers/id.md","lines_changed":7},{"name":"docs/parsers/ifconfig.md","lines_changed":7},{"name":"docs/parsers/ini.md","lines_changed":7},{"name":"docs/parsers/iptables.md","lines_changed":7},{"name":"docs/parsers/jobs.md","lines_changed":7},{"name":"docs/parsers/kv.md","lines_changed":7},{"name":"docs/parsers/last.md","lines_changed":7},{"name":"docs/parsers/ls.md","lines_changed":7},{"name":"docs/parsers/lsblk.md","lines_changed":7},{"name":"docs/parsers/lsmod.md","lines_changed":7},{"name":"docs/parsers/lsof.md","lines_changed":7},{"name":"docs/parsers/mount.md","lines_changed":7},{"name":"docs/parsers/netstat.md","lines_changed":7},{"name":"docs/parsers/ntpq.md","lines_changed":7},{"name":"docs/parsers/passwd.md","lines_changed":7},{"name":"docs/parsers/ping.md","lines_changed":7},{"name":"docs/parsers/pip_list.md","lines_changed":7},{"name":"docs/parsers/pip_show.md","lines_changed":7},{"name":"docs/parsers/ps.md","lines_changed":7},{"name":"docs/parsers/route.md","lines_changed":7},{"name":"docs/parsers/shadow.md","lines_changed":7},{"name":"docs/parsers/ss.md","lines_changed":7},{"name":"docs/parsers/stat.md","lines_changed":7},{"name":"docs/parsers/sysctl.md","lines_changed":7},{"name":"docs/parsers/systemctl.md","lines_changed":7},{"name":"docs/parsers/systemctl_lj.md","lines_changed":7},{"name":"docs/parsers/systemctl_ls.md","lines_changed":7},{"name":"docs/parsers/systemctl_luf.md","lines_changed":7},{"name":"docs/parsers/timedatectl.md","lines_changed":7},{"name":"docs/parsers/tracepath.md","lines_changed":7},{"name":"docs/parsers/traceroute.md","lines_changed":7},{"name":"docs/parsers/uname.md","lines_changed":9},{"name":"docs/parsers/uptime.md","lines_changed":7},{"name":"docs/parsers/w.md","lines_changed":7},{"name":"docs/parsers/who.md","lines_changed":7},{"name":"docs/parsers/xml.md","lines_changed":7},{"name":"docs/parsers/yaml.md","lines_changed":7},{"name":"jc/parsers/airport.py","lines_changed":7},{"name":"jc/parsers/airport_s.py","lines_changed":7},{"name":"jc/parsers/arp.py","lines_changed":7},{"name":"jc/parsers/blkid.py","lines_changed":7},{"name":"jc/parsers/crontab.py","lines_changed":7},{"name":"jc/parsers/crontab_u.py","lines_changed":7},{"name":"jc/parsers/csv.py","lines_changed":7},{"name":"jc/parsers/date.py","lines_changed":7},{"name":"jc/parsers/df.py","lines_changed":7},{"name":"jc/parsers/dig.py","lines_changed":7},{"name":"jc/parsers/dmidecode.py","lines_changed":7},{"name":"jc/parsers/du.py","lines_changed":7},{"name":"jc/parsers/env.py","lines_changed":7},{"name":"jc/parsers/file.py","lines_changed":7},{"name":"jc/parsers/foo.py","lines_changed":7},{"name":"jc/parsers/free.py","lines_changed":7},{"name":"jc/parsers/fstab.py","lines_changed":7},{"name":"jc/parsers/group.py","lines_changed":7},{"name":"jc/parsers/gshadow.py","lines_changed":7},{"name":"jc/parsers/history.py","lines_changed":7},{"name":"jc/parsers/hosts.py","lines_changed":7},{"name":"jc/parsers/id.py","lines_changed":7},{"name":"jc/parsers/ifconfig.py","lines_changed":7},{"name":"jc/parsers/ini.py","lines_changed":7},{"name":"jc/parsers/iptables.py","lines_changed":7},{"name":"jc/parsers/jobs.py","lines_changed":7},{"name":"jc/parsers/kv.py","lines_changed":7},{"name":"jc/parsers/last.py","lines_changed":7},{"name":"jc/parsers/ls.py","lines_changed":7},{"name":"jc/parsers/lsblk.py","lines_changed":7},{"name":"jc/parsers/lsmod.py","lines_changed":7},{"name":"jc/parsers/lsof.py","lines_changed":7},{"name":"jc/parsers/mount.py","lines_changed":7},{"name":"jc/parsers/netstat.py","lines_changed":7},{"name":"jc/parsers/ntpq.py","lines_changed":7},{"name":"jc/parsers/passwd.py","lines_changed":7},{"name":"jc/parsers/ping.py","lines_changed":7},{"name":"jc/parsers/pip_list.py","lines_changed":7},{"name":"jc/parsers/pip_show.py","lines_changed":7},{"name":"jc/parsers/ps.py","lines_changed":7},{"name":"jc/parsers/route.py","lines_changed":7},{"name":"jc/parsers/shadow.py","lines_changed":7},{"name":"jc/parsers/ss.py","lines_changed":7},{"name":"jc/parsers/stat.py","lines_changed":7},{"name":"jc/parsers/sysctl.py","lines_changed":7},{"name":"jc/parsers/systemctl.py","lines_changed":7},{"name":"jc/parsers/systemctl_lj.py","lines_changed":7},{"name":"jc/parsers/systemctl_ls.py","lines_changed":7},{"name":"jc/parsers/systemctl_luf.py","lines_changed":7},{"name":"jc/parsers/timedatectl.py","lines_changed":7},{"name":"jc/parsers/tracepath.py","lines_changed":7},{"name":"jc/parsers/traceroute.py","lines_changed":7},{"name":"jc/parsers/uname.py","lines_changed":9},{"name":"jc/parsers/uptime.py","lines_changed":7},{"name":"jc/parsers/w.py","lines_changed":7},{"name":"jc/parsers/who.py","lines_changed":7},{"name":"jc/parsers/xml.py","lines_changed":7},{"name":"jc/parsers/yaml.py","lines_changed":7}]}},{"commit":"7432442983841b42c8d3d2459b55596c05d1e100","message":"add usage","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["docs/parsers/blkid.md"],"file_stats":[{"name":"docs/parsers/blkid.md","lines_changed":7}]}},{"commit":"5344883394a0662ee16bb5edd68df8e4410025f6","message":"spelling/add ping parser update","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]}},{"commit":"3fcd2f6c2e015b0e65e7261c8e591ccd8a7d0e6c","message":"version bump","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/cli.py","setup.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"f3d84bd5bf06349b681e9b72d904676e9f6bca19","message":"tighten crontab and crontab-u parser variable detection","stats":{"files_changed":6,"insertions":21,"deletions":3,"files":["CHANGELOG","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/fixtures/debian10/crontab-u.json","tests/fixtures/debian10/crontab-u.out","tests/test_crontab_u.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":4},{"name":"tests/fixtures/debian10/crontab-u.json","lines_changed":1},{"name":"tests/fixtures/debian10/crontab-u.out","lines_changed":2},{"name":"tests/test_crontab_u.py","lines_changed":12}]}},{"commit":"549780c23220bca3bcab58d7329ba8d44d1be55d","message":"add debian/apt-get info","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]}},{"commit":"2a6da69b82aa9ade6c01d490a32b57b415c62a9e","message":"improve linux/bsd check","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":4}]}},{"commit":"5c538816cf76686bac1a86a7c06e24664d25a2dc","message":"ping parser fix for raspberry pi","stats":{"files_changed":9,"insertions":55,"deletions":4,"files":["CHANGELOG","jc/cli.py","jc/parsers/ping.py","setup.py","tests/fixtures/pi/ping-ip-O-D.json","tests/fixtures/pi/ping-ip-O-D.out","tests/fixtures/pi/ping-ip-O.json","tests/fixtures/pi/ping-ip-O.out","tests/test_ping.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/ping.py","lines_changed":4},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/pi/ping-ip-O-D.json","lines_changed":1},{"name":"tests/fixtures/pi/ping-ip-O-D.out","lines_changed":10},{"name":"tests/fixtures/pi/ping-ip-O.json","lines_changed":1},{"name":"tests/fixtures/pi/ping-ip-O.out","lines_changed":10},{"name":"tests/test_ping.py","lines_changed":26}]}},{"commit":"7b8b378a7df397c488fc54fbd6e77f5f3f23c10c","message":"add pydoc-markdown version requirement","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":1}]}},{"commit":"e30a75e25c4b43969bf9f874f89e18512a5e3a34","message":"Merge pull request #76 from kellyjonbrazil/dev"},{"commit":"85ad5cfd0bfb903ce35e37b343244fed88dbd979","message":"date change","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]}},{"commit":"88b9d5068c5bac0691fedb543114300d6afc7131","message":"finish date parser","stats":{"files_changed":6,"insertions":74,"deletions":15,"files":["EXAMPLES.md","README.md","docs/parsers/date.md","tests/fixtures/generic/date.json","tests/fixtures/generic/date.out","tests/test_date.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":18},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/date.md","lines_changed":34},{"name":"tests/fixtures/generic/date.json","lines_changed":1},{"name":"tests/fixtures/generic/date.out","lines_changed":1},{"name":"tests/test_date.py","lines_changed":34}]}},{"commit":"f8c4948a090642db595eda2ba2ea0773e560ba67","message":"remove comment","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":1}]}},{"commit":"412322447f019aec0b64888631bc965e9f21186d","message":"add month_num and weekday_num fields","stats":{"files_changed":1,"insertions":48,"deletions":17,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":65}]}},{"commit":"d4f289e40fae621b87f0d49451fca4c3dde216b7","message":"documentation fixup","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":4},{"name":"jc/parsers/date.py","lines_changed":4}]}},{"commit":"e1f3feb8f529172ae26ce4c7a66a4a1c21b722ce","message":"cover empty data case in process","stats":{"files_changed":1,"insertions":13,"deletions":10,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":23}]}},{"commit":"37d3bc699c7be16955be06840d242980f05f1074","message":"add date parser","stats":{"files_changed":6,"insertions":224,"deletions":1,"files":["CHANGELOG","docgen.sh","docs/parsers/date.md","jc/cli.py","jc/parsers/date.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/date.md","lines_changed":89},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/date.py","lines_changed":127},{"name":"man/jc.1","lines_changed":4}]}},{"commit":"672fd18016b8122510b6ab246b5675b7fd399b63","message":"date bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]}},{"commit":"bc2c23a2a09b96d34bb80f69fdc7751fb5ac3ed4","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]}},{"commit":"865f7e78124e382c6d315702fa6e48f2104cee46","message":"add kv parser to man page","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":6}]}},{"commit":"720212b552e1bd2b9196dd5f06e4b3f85d463531","message":"fixup traceroute example with new behavior","stats":{"files_changed":1,"insertions":1,"deletions":9,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":10}]}},{"commit":"d3be61f60837801d5a505dc2520cc80c874a6092","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]}},{"commit":"13418b16b8fd78fdd97ac045ec3fe9aa59d46080","message":"doc update","stats":{"files_changed":2,"insertions":8,"deletions":2,"files":["docs/parsers/traceroute.md","jc/parsers/traceroute.py"],"file_stats":[{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"jc/parsers/traceroute.py","lines_changed":5}]}},{"commit":"42d2017cd6f5ee1d1a92bd4958cd63366c1e715d","message":"traceroute updates: handle missing header row, add annotations, don't print timeouts as probes","stats":{"files_changed":18,"insertions":41,"deletions":24,"files":["CHANGELOG","jc/parsers/traceroute.py","tests/fixtures/centos-7.7/traceroute.json","tests/fixtures/freebsd12/traceroute.json","tests/fixtures/freebsd12/traceroute6.json","tests/fixtures/generic/traceroute1.json","tests/fixtures/generic/traceroute2.json","tests/fixtures/generic/traceroute3.json","tests/fixtures/generic/traceroute5.json","tests/fixtures/generic/traceroute6.json","tests/fixtures/generic/traceroute7.json","tests/fixtures/osx-10.14.6/traceroute-asn.json",".../fixtures/osx-10.14.6/traceroute-no-header.json","tests/fixtures/osx-10.14.6/traceroute-q.json","tests/fixtures/osx-10.14.6/traceroute.json",".../osx-10.14.6/traceroute6-mult-addresses.json","tests/fixtures/osx-10.14.6/traceroute6.json","tests/test_traceroute.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/traceroute.py","lines_changed":26},{"name":"tests/fixtures/centos-7.7/traceroute.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/traceroute.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/traceroute6.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute1.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute2.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute3.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute5.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute6.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute7.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/traceroute-asn.json","lines_changed":2},{"name":".../fixtures/osx-10.14.6/traceroute-no-header.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/traceroute-q.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/traceroute.json","lines_changed":2},{"name":".../osx-10.14.6/traceroute6-mult-addresses.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/traceroute6.json","lines_changed":2},{"name":"tests/test_traceroute.py","lines_changed":7}]}},{"commit":"4345e76ead2a49ae0691077e9fbd2b6c5fdfd129","message":"change to use --kv for key/value files","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2}]}},{"commit":"741431322ba2677355c361fcd6095ed8cd0a4349","message":"update tests for kv parser","stats":{"files_changed":2,"insertions":46,"deletions":24,"files":["tests/test_ini.py","tests/test_kv.py"],"file_stats":[{"name":"tests/test_ini.py","lines_changed":24},{"name":"tests/test_kv.py","lines_changed":46}]}},{"commit":"980beaaf41a04891f7c2f5daeb1e3a23d3c7ec19","message":"fix docgen issue","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2}]}},{"commit":"2205034e0906b333c259648f7a0e5392945f12ef","message":"add kv parser","stats":{"files_changed":8,"insertions":105,"deletions":31,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","jc/cli.py","jc/parsers/ini.py","jc/parsers/kv.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"EXAMPLES.md","lines_changed":53},{"name":"README.md","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/ini.py","lines_changed":4},{"name":"jc/parsers/kv.py","lines_changed":67},{"name":"setup.py","lines_changed":2}]}},{"commit":"82b9c87a66fce5d8626c56858a8c6f1f3326e7fb","message":"update docs","stats":{"files_changed":58,"insertions":345,"deletions":62,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/readme.md","docs/utils.md"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":6},{"name":"docs/parsers/airport_s.md","lines_changed":6},{"name":"docs/parsers/arp.md","lines_changed":6},{"name":"docs/parsers/blkid.md","lines_changed":6},{"name":"docs/parsers/crontab.md","lines_changed":6},{"name":"docs/parsers/crontab_u.md","lines_changed":6},{"name":"docs/parsers/csv.md","lines_changed":6},{"name":"docs/parsers/df.md","lines_changed":6},{"name":"docs/parsers/dig.md","lines_changed":6},{"name":"docs/parsers/dmidecode.md","lines_changed":6},{"name":"docs/parsers/du.md","lines_changed":6},{"name":"docs/parsers/env.md","lines_changed":6},{"name":"docs/parsers/file.md","lines_changed":6},{"name":"docs/parsers/free.md","lines_changed":6},{"name":"docs/parsers/fstab.md","lines_changed":6},{"name":"docs/parsers/group.md","lines_changed":6},{"name":"docs/parsers/gshadow.md","lines_changed":6},{"name":"docs/parsers/history.md","lines_changed":6},{"name":"docs/parsers/hosts.md","lines_changed":6},{"name":"docs/parsers/id.md","lines_changed":6},{"name":"docs/parsers/ifconfig.md","lines_changed":13},{"name":"docs/parsers/ini.md","lines_changed":6},{"name":"docs/parsers/iptables.md","lines_changed":6},{"name":"docs/parsers/jobs.md","lines_changed":6},{"name":"docs/parsers/kv.md","lines_changed":61},{"name":"docs/parsers/last.md","lines_changed":6},{"name":"docs/parsers/ls.md","lines_changed":6},{"name":"docs/parsers/lsblk.md","lines_changed":6},{"name":"docs/parsers/lsmod.md","lines_changed":6},{"name":"docs/parsers/lsof.md","lines_changed":6},{"name":"docs/parsers/mount.md","lines_changed":6},{"name":"docs/parsers/netstat.md","lines_changed":6},{"name":"docs/parsers/ntpq.md","lines_changed":6},{"name":"docs/parsers/passwd.md","lines_changed":6},{"name":"docs/parsers/ping.md","lines_changed":6},{"name":"docs/parsers/pip_list.md","lines_changed":6},{"name":"docs/parsers/pip_show.md","lines_changed":6},{"name":"docs/parsers/ps.md","lines_changed":6},{"name":"docs/parsers/route.md","lines_changed":6},{"name":"docs/parsers/shadow.md","lines_changed":6},{"name":"docs/parsers/ss.md","lines_changed":6},{"name":"docs/parsers/stat.md","lines_changed":6},{"name":"docs/parsers/sysctl.md","lines_changed":6},{"name":"docs/parsers/systemctl.md","lines_changed":6},{"name":"docs/parsers/systemctl_lj.md","lines_changed":6},{"name":"docs/parsers/systemctl_ls.md","lines_changed":6},{"name":"docs/parsers/systemctl_luf.md","lines_changed":6},{"name":"docs/parsers/timedatectl.md","lines_changed":6},{"name":"docs/parsers/tracepath.md","lines_changed":6},{"name":"docs/parsers/traceroute.md","lines_changed":9},{"name":"docs/parsers/uname.md","lines_changed":6},{"name":"docs/parsers/uptime.md","lines_changed":6},{"name":"docs/parsers/w.md","lines_changed":6},{"name":"docs/parsers/who.md","lines_changed":6},{"name":"docs/parsers/xml.md","lines_changed":6},{"name":"docs/parsers/yaml.md","lines_changed":6},{"name":"docs/readme.md","lines_changed":1},{"name":"docs/utils.md","lines_changed":5}]}},{"commit":"dda517a937323b9888e081aea1032a9d63c4a6bf","message":"shorten more examples","stats":{"files_changed":1,"insertions":3,"deletions":163,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":166}]}},{"commit":"4e6d283b9eddf7759b4dd37bd643394ff73febd4","message":"shorten netstat example","stats":{"files_changed":1,"insertions":0,"deletions":65,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":65}]}},{"commit":"55acab05aa740dfd7534304f2678b60942cad116","message":"change name to CHANGELOG","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["changelog.txt => CHANGELOG"],"file_stats":[{"name":"changelog.txt => CHANGELOG","lines_changed":0}]}},{"commit":"ed38a18d236cdb991779f4f148e42359c139e61c","message":"remove more examples","stats":{"files_changed":1,"insertions":1,"deletions":86,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":87}]}},{"commit":"95b3c11203d3dd0627c5eeca39fe1d145bf2d733","message":"remove more examples","stats":{"files_changed":1,"insertions":0,"deletions":124,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":124}]}},{"commit":"dce318f4fd44b9c4013211bf233020e84566ddb7","message":"remove examples to reduce file size","stats":{"files_changed":1,"insertions":3,"deletions":1537,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1540}]}},{"commit":"85127f0fb8096192b19fca1f4ffe38ee391351be","message":"move examples to root","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["jc/examples.md => EXAMPLES.md"],"file_stats":[{"name":"jc/examples.md => EXAMPLES.md","lines_changed":0}]}},{"commit":"fb45058244ce879f12bbb5b7267b0fd63fef1d63","message":"add examples file","stats":{"files_changed":1,"insertions":2640,"deletions":0,"files":["jc/examples.md"],"file_stats":[{"name":"jc/examples.md","lines_changed":2640}]}},{"commit":"45bb5ae389a00ed6a132a65c69ce76c7e5976858","message":"spelling","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"339238ab364d8735892a11cb16a62a651edae169","message":"version bump and add route -6 tests","stats":{"files_changed":8,"insertions":79,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py","tests/fixtures/centos-7.7/route-6-n.json","tests/fixtures/centos-7.7/route-6-n.out","tests/fixtures/centos-7.7/route-6.json","tests/fixtures/centos-7.7/route-6.out","tests/test_route.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/route-6-n.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/route-6-n.out","lines_changed":24},{"name":"tests/fixtures/centos-7.7/route-6.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/route-6.out","lines_changed":24},{"name":"tests/test_route.py","lines_changed":24}]}},{"commit":"032cda8b3db096b690d2557e3b918c50c716c543","message":"Merge pull request #74 from kellyjonbrazil/dev"},{"commit":"6badd3fb1e1cf6d1ee99614fadc20d54be8039aa","message":"add parser count test","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":3}]}},{"commit":"724d825745b6f1692eb3b068c3fb59d14892e690","message":"add tracepath parser","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":4}]}},{"commit":"ff1e32ad2ee156f105f5069c6b14a65b22784dfa","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"a5f97febd3066b9e95a18d6b73162a7d206c5845","message":"update traceroute, tracepath, and uname tests","stats":{"files_changed":10,"insertions":132,"deletions":0,"files":["tests/fixtures/centos-7.7/tracepath.json","tests/fixtures/centos-7.7/tracepath6.json","tests/fixtures/freebsd12/traceroute.json","tests/fixtures/freebsd12/traceroute.out","tests/fixtures/freebsd12/traceroute6.json","tests/fixtures/freebsd12/traceroute6.out","tests/fixtures/osx-10.14.6/uname.out","tests/test_tracepath.py","tests/test_traceroute.py","tests/test_uname.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/tracepath.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/tracepath6.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/traceroute.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/traceroute.out","lines_changed":14},{"name":"tests/fixtures/freebsd12/traceroute6.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/traceroute6.out","lines_changed":34},{"name":"tests/fixtures/osx-10.14.6/uname.out","lines_changed":1},{"name":"tests/test_tracepath.py","lines_changed":46},{"name":"tests/test_traceroute.py","lines_changed":24},{"name":"tests/test_uname.py","lines_changed":9}]}},{"commit":"5baa6cc865634142690e78596c640db35e110b29","message":"add route parser update","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]}},{"commit":"7a4f30b843d8f11711abbb8f9bb263f945ff87ea","message":"fix for iface issue","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":6}]}},{"commit":"b2c385dc4f63e3e15f47e986deac0524967214a0","message":"change 'if' to 'iface'","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":2}]}},{"commit":"5d5da8d33fa6ab77c745d338d1a2e2e8f2e4c697","message":"more fixes for ipv6 fix","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":6}]}},{"commit":"e60457157839daba385202906997dec48c9c4950","message":"fix next_hop fix","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":2}]}},{"commit":"f9dacc3f95b32e1431914ae0b0dc5c8e8840d5a7","message":"fixup for ipv6","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":4}]}},{"commit":"6086920332575cd7db1b38262a3b4ba8fbfae7ab","message":"update ParseError message","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]}},{"commit":"f52f3163bcaf8d7e784f02505e81456e8240295b","message":"add tracepath example","stats":{"files_changed":1,"insertions":49,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":49}]}},{"commit":"d18ff73e880c7d34957f2713857cc83094f914cc","message":"update author info","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/tracepath.py"],"file_stats":[{"name":"jc/parsers/tracepath.py","lines_changed":4}]}},{"commit":"1e5d602caecd96c9056ad77f9fc50cf25bf6fdfd","message":"working tracepath parser","stats":{"files_changed":2,"insertions":288,"deletions":32,"files":["docs/parsers/tracepath.md","jc/parsers/tracepath.py"],"file_stats":[{"name":"docs/parsers/tracepath.md","lines_changed":122},{"name":"jc/parsers/tracepath.py","lines_changed":198}]}},{"commit":"12912521ecb376c36dfdd743b3c4195598fb9aac","message":"doc update","stats":{"files_changed":2,"insertions":0,"deletions":11,"files":["docs/parsers/traceroute.md","jc/parsers/traceroute.py"],"file_stats":[{"name":"docs/parsers/traceroute.md","lines_changed":7},{"name":"jc/parsers/traceroute.py","lines_changed":4}]}},{"commit":"842ea3a94bec3fcab76257fdde5514d1de3d57fa","message":"add tracepath parser skeleton","stats":{"files_changed":2,"insertions":153,"deletions":0,"files":["docs/parsers/tracepath.md","jc/parsers/tracepath.py"],"file_stats":[{"name":"docs/parsers/tracepath.md","lines_changed":64},{"name":"jc/parsers/tracepath.py","lines_changed":89}]}},{"commit":"a8560dbc1598fa97de87594228b4cc10282d4197","message":"add tracepath","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]}},{"commit":"a65e27540a8c5c7123d2fdf79fcbefa1e2f8afdc","message":"update docs","stats":{"files_changed":3,"insertions":1,"deletions":24,"files":["docgen.sh","docs/parsers/traceroute.md","jc/parsers/traceroute.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/traceroute.md","lines_changed":14},{"name":"jc/parsers/traceroute.py","lines_changed":10}]}},{"commit":"c3c5ed11e68938e35920144406d37ea3b21d63dd","message":"change name from tr to trparse","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]}},{"commit":"ce24149335cd8ed1e8513a2cf040432fe42d86b7","message":"formatting","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":1}]}},{"commit":"0314ca8c4831d24c169a0e4948421ecd638fd699","message":"add trparse acknowledgement","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]}},{"commit":"ebd8ee49a9f43063850e30c745c8cae46ee13de1","message":"add key/value info to ini example","stats":{"files_changed":1,"insertions":26,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":27}]}},{"commit":"38d10c97814ec69586c3b447c182f339772d6e22","message":"add ping and traceroute examples","stats":{"files_changed":1,"insertions":130,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":131}]}},{"commit":"360106c24d24e6a9697c00a158a14aaa334a4b1f","message":"add tracepath","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]}},{"commit":"ca470a5d02fd9fbaf05d8b3b3bb1ffe9f4cf5af3","message":"add tracepath fixtures","stats":{"files_changed":2,"insertions":39,"deletions":0,"files":["tests/fixtures/centos-7.7/tracepath.out","tests/fixtures/centos-7.7/tracepath6.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/tracepath.out","lines_changed":34},{"name":"tests/fixtures/centos-7.7/tracepath6.out","lines_changed":5}]}},{"commit":"57f66e6b1d554ff20b72959f5ebb9e7b2feffed2","message":"add exception with hint to use \"uname -a\"","stats":{"files_changed":2,"insertions":14,"deletions":2,"files":["changelog.txt","jc/parsers/uname.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":14}]}},{"commit":"e774f67924c0e6195f79829b2ac75ce95f76fbaa","message":"turn off interpolation and coerce None to ''","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["jc/parsers/ini.py"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":10}]}},{"commit":"ac10e576c167d20de259e47a6aa5b23fc998b4c3","message":"spelling","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/ini.md","jc/parsers/ini.py"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"jc/parsers/ini.py","lines_changed":4}]}},{"commit":"bcae0a99cd0ccce4ec8a67929f7c83a1095a5b88","message":"add key/value to ini description","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]}},{"commit":"c73c2ff879b3ed7a3e6f04e53e0a729e4f00ed21","message":"add ping, traceroute, and ini update","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":8}]}},{"commit":"c39b1a3356881a11a8f6fe9432897e6d67162f07","message":"add ping, traceroute and update ini description","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]}},{"commit":"125dc2d9e051a82a4a438afe2e520212338353f5","message":"add info about key/value files to doc","stats":{"files_changed":1,"insertions":8,"deletions":3,"files":["docs/parsers/ini.md"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":11}]}},{"commit":"b7d4ddc7ced2c3aabf3a857b53a0bf1b62eb6a2c","message":"add tests for key/value files","stats":{"files_changed":5,"insertions":50,"deletions":0,"files":["tests/fixtures/generic/keyvalue-ifcfg.json","tests/fixtures/generic/keyvalue-ifcfg.txt","tests/fixtures/generic/keyvalue.json","tests/fixtures/generic/keyvalue.txt","tests/test_ini.py"],"file_stats":[{"name":"tests/fixtures/generic/keyvalue-ifcfg.json","lines_changed":1},{"name":"tests/fixtures/generic/keyvalue-ifcfg.txt","lines_changed":19},{"name":"tests/fixtures/generic/keyvalue.json","lines_changed":1},{"name":"tests/fixtures/generic/keyvalue.txt","lines_changed":5},{"name":"tests/test_ini.py","lines_changed":24}]}},{"commit":"f5e546c6fa7cba166284a0976887d6b82451d3e8","message":"add support for simple key/value pairs","stats":{"files_changed":1,"insertions":33,"deletions":9,"files":["jc/parsers/ini.py"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":42}]}},{"commit":"928e39cd103b96b8c3ccc8d85c930ffb419296c6","message":"add generic traceroute tests","stats":{"files_changed":9,"insertions":104,"deletions":0,"files":["tests/fixtures/generic/traceroute1.json","tests/fixtures/generic/traceroute2.json","tests/fixtures/generic/traceroute3.json","tests/fixtures/generic/traceroute4.json","tests/fixtures/generic/traceroute5.json","tests/fixtures/generic/traceroute6.json","tests/fixtures/generic/traceroute7.json","tests/fixtures/generic/traceroute8.json","tests/test_traceroute.py"],"file_stats":[{"name":"tests/fixtures/generic/traceroute1.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute2.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute3.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute4.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute5.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute6.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute7.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute8.json","lines_changed":1},{"name":"tests/test_traceroute.py","lines_changed":96}]}},{"commit":"d0b7ea68a005daff313e44808b256656313a78a3","message":"check for key in dictionary","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":4}]}},{"commit":"8444690133b6a7522822ab279e97ede6ded17ba9","message":"add traceroute","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":4}]}},{"commit":"c03c42d76703ff8f423cf3c10ea6254a27a685cb","message":"add traceroute tests","stats":{"files_changed":9,"insertions":76,"deletions":9,"files":["tests/fixtures/centos-7.7/traceroute.json","tests/fixtures/osx-10.14.6/traceroute-asn.json",".../osx-10.14.6/traceroute-mult-addresses.json","tests/fixtures/osx-10.14.6/traceroute-q.json","tests/fixtures/osx-10.14.6/traceroute.json",".../osx-10.14.6/traceroute6-mult-addresses.json","...-address.out => traceroute6-mult-addresses.out}","tests/fixtures/osx-10.14.6/traceroute6.json","tests/test_traceroute.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/traceroute.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/traceroute-asn.json","lines_changed":1},{"name":".../osx-10.14.6/traceroute-mult-addresses.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/traceroute-q.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/traceroute.json","lines_changed":1},{"name":".../osx-10.14.6/traceroute6-mult-addresses.json","lines_changed":1},{"name":"...-address.out => traceroute6-mult-addresses.out}","lines_changed":0},{"name":"tests/fixtures/osx-10.14.6/traceroute6.json","lines_changed":1},{"name":"tests/test_traceroute.py","lines_changed":78}]}},{"commit":"ab67688a00ac335d2a5603e9cadef8b565957911","message":"add test skeleton","stats":{"files_changed":1,"insertions":55,"deletions":0,"files":["tests/test_traceroute.py"],"file_stats":[{"name":"tests/test_traceroute.py","lines_changed":55}]}},{"commit":"5dcb7166daef3c53da65bba0d591672e64d3a90b","message":"add traceroute doc","stats":{"files_changed":2,"insertions":169,"deletions":0,"files":["docgen.sh","docs/parsers/traceroute.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/traceroute.md","lines_changed":168}]}},{"commit":"14697b86d7fc1cfebb41e0fd2d9a9b9b60071d3b","message":"add MIT license","stats":{"files_changed":1,"insertions":24,"deletions":2,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":26}]}},{"commit":"4f4b6276d4bf798b17d996f39742bd0428fc2f19","message":"update docstring","stats":{"files_changed":1,"insertions":38,"deletions":33,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":71}]}},{"commit":"7bc497e1291059ae7858c9d2bd2d9a1b4c030dd1","message":"updated process() function to set integers and floats","stats":{"files_changed":1,"insertions":117,"deletions":14,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":131}]}},{"commit":"68a37a6a5a3f0ad0fa24c84d363050af9fa11f97","message":"remove unused function load()","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":4}]}},{"commit":"6f5cd1d7c5f76d7d4da42171fdc30daf9fe3996e","message":"change to use f-string","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]}},{"commit":"126b1b121ca10183dc7e9dece83b42907becad39","message":"add traceroute6 example","stats":{"files_changed":1,"insertions":10,"deletions":0,"files":["tests/fixtures/generic/traceroute8.out"],"file_stats":[{"name":"tests/fixtures/generic/traceroute8.out","lines_changed":10}]}},{"commit":"2341e456a012564f86d533d2748a5887d79995e4","message":"use ParseError instead of generic Exception","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]}},{"commit":"72d80e95bb50ae2a7432082e65aba15235ba0955","message":"remove unused regex patterns","stats":{"files_changed":8,"insertions":115,"deletions":8,"files":["jc/parsers/traceroute.py","tests/fixtures/generic/traceroute1.out","tests/fixtures/generic/traceroute2.out","tests/fixtures/generic/traceroute3.out","tests/fixtures/generic/traceroute4.out","tests/fixtures/generic/traceroute5.out","tests/fixtures/generic/traceroute6.out","tests/fixtures/generic/traceroute7.out"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":9},{"name":"tests/fixtures/generic/traceroute1.out","lines_changed":16},{"name":"tests/fixtures/generic/traceroute2.out","lines_changed":13},{"name":"tests/fixtures/generic/traceroute3.out","lines_changed":20},{"name":"tests/fixtures/generic/traceroute4.out","lines_changed":7},{"name":"tests/fixtures/generic/traceroute5.out","lines_changed":10},{"name":"tests/fixtures/generic/traceroute6.out","lines_changed":31},{"name":"tests/fixtures/generic/traceroute7.out","lines_changed":17}]}},{"commit":"f5ec82440cd1c1b5ac9011d3517298d0cdcd8766","message":"simplify regex patterns","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":11}]}},{"commit":"c8e526ead35b868733f57b4c114062a48b78a817","message":"fixes for bsd-style ipv6 output","stats":{"files_changed":2,"insertions":12,"deletions":3,"files":["jc/parsers/traceroute.py","tests/fixtures/osx-10.14.6/traceroute-q.out"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":11},{"name":"tests/fixtures/osx-10.14.6/traceroute-q.out","lines_changed":4}]}},{"commit":"066adfb76479df7042bfb12bbb83b5dbd8a6d54c","message":"handle warning lines in the traceroute output","stats":{"files_changed":7,"insertions":83,"deletions":7,"files":["jc/parsers/traceroute.py","tests/fixtures/centos-7.7/traceroute.out","tests/fixtures/osx-10.14.6/traceroute-asn.out",".../osx-10.14.6/traceroute-mult-addresses.out",".../fixtures/osx-10.14.6/traceroute-no-header.out",".../osx-10.14.6/traceroute6-multi-address.out","tests/fixtures/osx-10.14.6/traceroute6.out"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":30},{"name":"tests/fixtures/centos-7.7/traceroute.out","lines_changed":32},{"name":"tests/fixtures/osx-10.14.6/traceroute-asn.out","lines_changed":5},{"name":".../osx-10.14.6/traceroute-mult-addresses.out","lines_changed":5},{"name":".../fixtures/osx-10.14.6/traceroute-no-header.out","lines_changed":3},{"name":".../osx-10.14.6/traceroute6-multi-address.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/traceroute6.out","lines_changed":7}]}},{"commit":"5b444d4717b0b8528647e17e71d699907def3e18","message":"add traceroute parser","stats":{"files_changed":3,"insertions":307,"deletions":0,"files":["jc/cli.py","jc/parsers/traceroute.py","tests/fixtures/osx-10.14.6/traceroute.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/traceroute.py","lines_changed":295},{"name":"tests/fixtures/osx-10.14.6/traceroute.out","lines_changed":11}]}},{"commit":"69c95adc8d59927c1c00b7e766ca5003b7b6454c","message":"add osx ipv6 ping dup test","stats":{"files_changed":3,"insertions":81,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ping6-ip-dup.json","tests/fixtures/osx-10.14.6/ping6-ip-dup.out","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ping6-ip-dup.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-dup.out","lines_changed":68},{"name":"tests/test_ping.py","lines_changed":12}]}},{"commit":"2b0e0d8f5c1a6a5450e362971f9ad5892093b2ce","message":"add ipv6 dup test","stats":{"files_changed":3,"insertions":27,"deletions":0,"files":["tests/fixtures/centos-7.7/ping6-ip-dup.json","tests/fixtures/centos-7.7/ping6-ip-dup.out","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ping6-ip-dup.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-ip-dup.out","lines_changed":14},{"name":"tests/test_ping.py","lines_changed":12}]}},{"commit":"778d1bacbf8df523d434b22f5e1517955e4c15ee","message":"update docs to add \"duplicates\" fields","stats":{"files_changed":2,"insertions":28,"deletions":12,"files":["docs/parsers/ping.md","jc/parsers/ping.py"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":20},{"name":"jc/parsers/ping.py","lines_changed":20}]}},{"commit":"7e1b0410166c584775ebcd681a280ec7321560c7","message":"add duplicate replies tests","stats":{"files_changed":1,"insertions":24,"deletions":0,"files":["tests/test_ping.py"],"file_stats":[{"name":"tests/test_ping.py","lines_changed":24}]}},{"commit":"313b9b329ca6b674069718839f55a4bd7834db80","message":"update fixtures for added 'duplicate' fields","stats":{"files_changed":55,"insertions":55,"deletions":53,"files":["tests/fixtures/centos-7.7/ping-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping-hostname-O-p.json","tests/fixtures/centos-7.7/ping-hostname-O.json","tests/fixtures/centos-7.7/ping-ip-O-D.json","tests/fixtures/centos-7.7/ping-ip-O.json","tests/fixtures/centos-7.7/ping-ip-dup.json","tests/fixtures/centos-7.7/ping6-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping6-hostname-O-p.json","tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","tests/fixtures/centos-7.7/ping6-ip-O-p.json","tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping-hostname-O-p.json","tests/fixtures/fedora32/ping-hostname-O.json","tests/fixtures/fedora32/ping-ip-O-D.json","tests/fixtures/fedora32/ping-ip-O.json","tests/fixtures/fedora32/ping6-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping6-hostname-O-D-p.json","tests/fixtures/fedora32/ping6-hostname-O-p.json","tests/fixtures/fedora32/ping6-ip-O-D-p.json","tests/fixtures/fedora32/ping6-ip-O-p.json","tests/fixtures/freebsd12/ping-hostname-p.json","tests/fixtures/freebsd12/ping-hostname-s.json","tests/fixtures/freebsd12/ping-hostname.json","tests/fixtures/freebsd12/ping-ip-p.json","tests/fixtures/freebsd12/ping-ip-s.json","tests/fixtures/freebsd12/ping-ip.json","tests/fixtures/freebsd12/ping6-hostname-p.json","tests/fixtures/freebsd12/ping6-hostname-s.json","tests/fixtures/freebsd12/ping6-hostname.json","tests/fixtures/freebsd12/ping6-ip-p.json","tests/fixtures/freebsd12/ping6-ip-s.json","tests/fixtures/freebsd12/ping6-ip.json","tests/fixtures/osx-10.14.6/ping-hostname-p.json","tests/fixtures/osx-10.14.6/ping-hostname-s.json","tests/fixtures/osx-10.14.6/ping-hostname.json","tests/fixtures/osx-10.14.6/ping-ip-dup.json","tests/fixtures/osx-10.14.6/ping-ip-p.json","tests/fixtures/osx-10.14.6/ping-ip-s.json","tests/fixtures/osx-10.14.6/ping-ip.json","tests/fixtures/osx-10.14.6/ping6-hostname-p.json","tests/fixtures/osx-10.14.6/ping6-hostname-s.json","tests/fixtures/osx-10.14.6/ping6-hostname.json","tests/fixtures/osx-10.14.6/ping6-ip-p.json","tests/fixtures/osx-10.14.6/ping6-ip-s.json","tests/fixtures/osx-10.14.6/ping6-ip.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping-hostname-O.json","tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","tests/fixtures/ubuntu-18.04/ping-ip-O.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ping-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-hostname-O.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-ip-O-D.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-ip-O.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-ip-dup.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping6-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-hostname-O.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-ip-O-D.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-ip-O.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-ip-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-ip-O-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-hostname-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-hostname-s.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-hostname.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-ip-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-ip-s.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-ip.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-hostname-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-hostname-s.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-hostname.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-ip-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-ip-s.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-ip.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-hostname-p.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-hostname-s.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-hostname.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-ip-dup.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-p.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-ip-s.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-ip.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-p.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-s.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-p.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-s.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-ip.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json","lines_changed":2}]}},{"commit":"6830062256fbc453f87224f7ab8c10e4494b5a83","message":"add support for duplicate replies","stats":{"files_changed":4,"insertions":112,"deletions":24,"files":["docs/parsers/ping.md","jc/parsers/ping.py","tests/fixtures/centos-7.7/ping-ip-dup.out","tests/fixtures/osx-10.14.6/ping-ip-dup.out"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":6},{"name":"jc/parsers/ping.py","lines_changed":83},{"name":"tests/fixtures/centos-7.7/ping-ip-dup.out","lines_changed":27},{"name":"tests/fixtures/osx-10.14.6/ping-ip-dup.out","lines_changed":20}]}},{"commit":"323072c9827c41c5d74433504b5efceb846cfe09","message":"add source_ip to schema doc","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/ping.md","jc/parsers/ping.py"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":1},{"name":"jc/parsers/ping.py","lines_changed":1}]}},{"commit":"8719d96bddec80187e7ba3286ba93bfec8465744","message":"change description","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"dd5d318ab5bbb1027dd600fd3b0b6ec9b8adfdc3","message":"version bump and add ping command","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":6}]}},{"commit":"d6dc7f5e65c097895c19000e59e8803a3b350fdc","message":"add osx ping tests","stats":{"files_changed":13,"insertions":135,"deletions":29,"files":["tests/fixtures/osx-10.14.6/ping-hostname-p.json","tests/fixtures/osx-10.14.6/ping-hostname-s.json","tests/fixtures/osx-10.14.6/ping-hostname.json","tests/fixtures/osx-10.14.6/ping-ip-p.json","tests/fixtures/osx-10.14.6/ping-ip-s.json","tests/fixtures/osx-10.14.6/ping-ip.json","tests/fixtures/osx-10.14.6/ping6-hostname-p.json","tests/fixtures/osx-10.14.6/ping6-hostname-s.json","tests/fixtures/osx-10.14.6/ping6-hostname.json","tests/fixtures/osx-10.14.6/ping6-ip-p.json","tests/fixtures/osx-10.14.6/ping6-ip-s.json","tests/fixtures/osx-10.14.6/ping6-ip.json","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ping-hostname-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-hostname-s.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-hostname.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-s.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-s.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-s.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":152}]}},{"commit":"c203664eb5aafa0afa3101b79e3fd13b3e009ec5","message":"freebsd ping tests","stats":{"files_changed":13,"insertions":171,"deletions":9,"files":["tests/fixtures/freebsd12/ping-hostname-p.json","tests/fixtures/freebsd12/ping-hostname-s.json","tests/fixtures/freebsd12/ping-hostname.json","tests/fixtures/freebsd12/ping-ip-p.json","tests/fixtures/freebsd12/ping-ip-s.json","tests/fixtures/freebsd12/ping-ip.json","tests/fixtures/freebsd12/ping6-hostname-p.json","tests/fixtures/freebsd12/ping6-hostname-s.json","tests/fixtures/freebsd12/ping6-hostname.json","tests/fixtures/freebsd12/ping6-ip-p.json","tests/fixtures/freebsd12/ping6-ip-s.json","tests/fixtures/freebsd12/ping6-ip.json","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/ping-hostname-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-hostname-s.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-hostname.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-s.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-hostname-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-hostname-s.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-hostname.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-s.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":168}]}},{"commit":"19ecf1fa19e9fa0873002baf07fa670b71ed7752","message":"add Fedora32 tests","stats":{"files_changed":11,"insertions":118,"deletions":0,"files":["tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping-hostname-O-p.json","tests/fixtures/fedora32/ping-hostname-O.json","tests/fixtures/fedora32/ping-ip-O-D.json","tests/fixtures/fedora32/ping-ip-O.json",".../fixtures/fedora32/ping6-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping6-hostname-O-D-p.json","tests/fixtures/fedora32/ping6-hostname-O-p.json","tests/fixtures/fedora32/ping6-ip-O-D-p.json","tests/fixtures/fedora32/ping6-ip-O-p.json","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-hostname-O.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-ip-O-D.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-ip-O.json","lines_changed":1},{"name":".../fixtures/fedora32/ping6-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping6-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping6-ip-O-D-p.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping6-ip-O-p.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":108}]}},{"commit":"b8deb0426cc23333c0e0a9dc3776d9761d99abb0","message":"add ubuntu ping tests","stats":{"files_changed":11,"insertions":119,"deletions":8,"files":[".../ubuntu-18.04/ping-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping-hostname-O.json","tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","tests/fixtures/ubuntu-18.04/ping-ip-O.json",".../ubuntu-18.04/ping6-hostname-O-D-p-s.json",".../ubuntu-18.04/ping6-hostname-O-D-p.json",".../fixtures/ubuntu-18.04/ping6-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json","tests/test_ping.py"],"file_stats":[{"name":".../ubuntu-18.04/ping-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-hostname-O-D-p-s.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-hostname-O-D-p.json","lines_changed":1},{"name":".../fixtures/ubuntu-18.04/ping6-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":117}]}},{"commit":"3b8371f0208a097cb8a1c026348d3842e6702b9c","message":"add centos ping tests","stats":{"files_changed":10,"insertions":202,"deletions":0,"files":[".../fixtures/centos-7.7/ping-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping-hostname-O-p.json","tests/fixtures/centos-7.7/ping-hostname-O.json","tests/fixtures/centos-7.7/ping-ip-O-D.json","tests/fixtures/centos-7.7/ping-ip-O.json",".../centos-7.7/ping6-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping6-hostname-O-p.json","tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","tests/fixtures/centos-7.7/ping6-ip-O-p.json","tests/test_ping.py"],"file_stats":[{"name":".../fixtures/centos-7.7/ping-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-hostname-O.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-ip-O-D.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-ip-O.json","lines_changed":1},{"name":".../centos-7.7/ping6-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-p.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":193}]}},{"commit":"20bb1cdf396abdb3707b34fa146cbe913f9bbd6f","message":"add TypeError to except for None values","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":8}]}},{"commit":"301daa48d0bfc28f97c8e46f028f8c6b875bf34e","message":"update documentation","stats":{"files_changed":2,"insertions":114,"deletions":16,"files":["docs/parsers/ping.md","jc/parsers/ping.py"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":128},{"name":"jc/parsers/ping.py","lines_changed":2}]}},{"commit":"8421ec88033e02f472e4961d87551a0352663a16","message":"remove cygwin compatibility","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":4}]}},{"commit":"74211eb0129f6aa655a38ba4d4d8844d81441107","message":"add examples","stats":{"files_changed":1,"insertions":82,"deletions":5,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":87}]}},{"commit":"60bd42f298f309cbec6d24c9543ea3d51bd73b18","message":"add process() logic","stats":{"files_changed":1,"insertions":59,"deletions":11,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":70}]}},{"commit":"14bdd74526e400997c5bc247ea35ed40799e83ff","message":"add ping test fixtures","stats":{"files_changed":12,"insertions":100,"deletions":0,"files":["tests/fixtures/freebsd12/ping-hostname-p.out","tests/fixtures/freebsd12/ping-hostname-s.out","tests/fixtures/freebsd12/ping-hostname.out","tests/fixtures/freebsd12/ping-ip-p.out","tests/fixtures/freebsd12/ping-ip-s.out","tests/fixtures/freebsd12/ping-ip.out","tests/fixtures/freebsd12/ping6-hostname-p.out","tests/fixtures/freebsd12/ping6-hostname-s.out","tests/fixtures/freebsd12/ping6-hostname.out","tests/fixtures/freebsd12/ping6-ip-p.out","tests/fixtures/freebsd12/ping6-ip-s.out","tests/fixtures/freebsd12/ping6-ip.out"],"file_stats":[{"name":"tests/fixtures/freebsd12/ping-hostname-p.out","lines_changed":9},{"name":"tests/fixtures/freebsd12/ping-hostname-s.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping-hostname.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping-ip-p.out","lines_changed":9},{"name":"tests/fixtures/freebsd12/ping-ip-s.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping-ip.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping6-hostname-p.out","lines_changed":9},{"name":"tests/fixtures/freebsd12/ping6-hostname-s.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping6-hostname.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping6-ip-p.out","lines_changed":9},{"name":"tests/fixtures/freebsd12/ping6-ip-s.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping6-ip.out","lines_changed":8}]}},{"commit":"fb0f3eda04a4b1dbb81da7d5791cbfe746bfd617","message":"add ping commands","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["tests/fixtures/create_fixtures.sh"],"file_stats":[{"name":"tests/fixtures/create_fixtures.sh","lines_changed":16}]}},{"commit":"91ee6e6701307363336a39f9e16641465ddd05c2","message":"add osx ping test fixtures","stats":{"files_changed":12,"insertions":100,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ping-hostname-p.out","tests/fixtures/osx-10.14.6/ping-hostname-s.out","tests/fixtures/osx-10.14.6/ping-hostname.out","tests/fixtures/osx-10.14.6/ping-ip-p.out","tests/fixtures/osx-10.14.6/ping-ip-s.out","tests/fixtures/osx-10.14.6/ping-ip.out","tests/fixtures/osx-10.14.6/ping6-hostname-p.out","tests/fixtures/osx-10.14.6/ping6-hostname-s.out","tests/fixtures/osx-10.14.6/ping6-hostname.out","tests/fixtures/osx-10.14.6/ping6-ip-p.out","tests/fixtures/osx-10.14.6/ping6-ip-s.out","tests/fixtures/osx-10.14.6/ping6-ip.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ping-hostname-p.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/ping-hostname-s.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping-hostname.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping-ip-p.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/ping-ip-s.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping-ip.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-p.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-s.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-p.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-s.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping6-ip.out","lines_changed":8}]}},{"commit":"51f4e6927c68a7e2a26954f564d10d316b98a984","message":"add support for pattern in osx/bsd","stats":{"files_changed":1,"insertions":12,"deletions":3,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":15}]}},{"commit":"94988d86674293faddc6f7e7c82575738d2dc791","message":"add fedora ping fixtures","stats":{"files_changed":10,"insertions":257,"deletions":0,"files":["tests/fixtures/fedora32/ping-hostname-O-D-p-s.out","tests/fixtures/fedora32/ping-hostname-O-p.out","tests/fixtures/fedora32/ping-hostname-O.out","tests/fixtures/fedora32/ping-ip-O-D.out","tests/fixtures/fedora32/ping-ip-O.out","tests/fixtures/fedora32/ping6-hostname-O-D-p-s.out","tests/fixtures/fedora32/ping6-hostname-O-D-p.out","tests/fixtures/fedora32/ping6-hostname-O-p.out","tests/fixtures/fedora32/ping6-ip-O-D-p.out","tests/fixtures/fedora32/ping6-ip-O-p.out"],"file_stats":[{"name":"tests/fixtures/fedora32/ping-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping-hostname-O.out","lines_changed":25},{"name":"tests/fixtures/fedora32/ping-ip-O-D.out","lines_changed":25},{"name":"tests/fixtures/fedora32/ping-ip-O.out","lines_changed":25},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping6-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping6-ip-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping6-ip-O-p.out","lines_changed":26}]}},{"commit":"fe36f5a98cd3ee7753e250b6553e4453d971f929","message":"add fixtures for ping","stats":{"files_changed":13,"insertions":318,"deletions":0,"files":["tests/fixtures/centos-7.7/ping-ip-O-D.out","tests/fixtures/centos-7.7/ping-ip-O.out","tests/fixtures/create_fixtures.sh",".../ubuntu-18.04/ping-hostname-O-D-p-s.out","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.out","tests/fixtures/ubuntu-18.04/ping-hostname-O.out","tests/fixtures/ubuntu-18.04/ping-ip-O-D.out","tests/fixtures/ubuntu-18.04/ping-ip-O.out",".../ubuntu-18.04/ping6-hostname-O-D-p-s.out",".../fixtures/ubuntu-18.04/ping6-hostname-O-D-p.out","tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.out","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.out","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ping-ip-O-D.out","lines_changed":25},{"name":"tests/fixtures/centos-7.7/ping-ip-O.out","lines_changed":25},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":12},{"name":".../ubuntu-18.04/ping-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O.out","lines_changed":25},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O-D.out","lines_changed":25},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O.out","lines_changed":25},{"name":".../ubuntu-18.04/ping6-hostname-O-D-p-s.out","lines_changed":26},{"name":".../fixtures/ubuntu-18.04/ping6-hostname-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-p.out","lines_changed":25}]}},{"commit":"f9eb18b9271b2428dd82f2dc26d3fa0435dad81d","message":"change 'request_timeout' field to 'type', fix compatibility, other formatting fixes","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":17}]}},{"commit":"cc60f3674822c644933f286a0364b09d7e2a60b3","message":"add ping parser","stats":{"files_changed":3,"insertions":67,"deletions":1,"files":["docgen.sh","docs/parsers/ping.md","jc/cli.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ping.md","lines_changed":64},{"name":"jc/cli.py","lines_changed":3}]}},{"commit":"604ade791f7bd33b37f64916befba27a2ea08b5b","message":"add ping parser","stats":{"files_changed":8,"insertions":506,"deletions":0,"files":["jc/parsers/ping.py",".../fixtures/centos-7.7/ping-hostname-O-D-p-s.out","tests/fixtures/centos-7.7/ping-hostname-O-p.out","tests/fixtures/centos-7.7/ping-hostname-O.out",".../fixtures/centos-7.7/ping6-hostname-O-D-p-s.out","tests/fixtures/centos-7.7/ping6-hostname-O-p.out","tests/fixtures/centos-7.7/ping6-ip-O-D-p.out","tests/fixtures/centos-7.7/ping6-ip-O-p.out"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":325},{"name":".../fixtures/centos-7.7/ping-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping-hostname-O.out","lines_changed":25},{"name":".../fixtures/centos-7.7/ping6-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping6-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-p.out","lines_changed":26}]}},{"commit":"690ac52a917200e46eac2feafc9f504f2734301c","message":"add man page","stats":{"files_changed":1,"insertions":261,"deletions":0,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":261}]}},{"commit":"34ed772775f1f02ed148f24a3bfff532bc811607","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"d5ab95571f64f55d8194e9e5592ac538bb535229","message":"fix tests when using older versions of pygments","stats":{"files_changed":1,"insertions":26,"deletions":11,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":37}]}},{"commit":"ffb3a0ee5fb30a3f61d6cbedf877ab04acdbf624","message":"Merge pull request #73 from kellyjonbrazil/dev"},{"commit":"94b12b57aaa56170d1f31f4910fd1239f88de137","message":"spelling","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]}},{"commit":"6d149e84571d5d6dd1d8a1f219ba299de5173779","message":"version bump","stats":{"files_changed":2,"insertions":8,"deletions":1,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":7},{"name":"setup.py","lines_changed":2}]}},{"commit":"1ad89c90d890039b817f65b2635db1b5e849a9e7","message":"add pacman","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"fb71c7b020bc1eda9484595f30b0200a4f59aa45","message":"function name spelling","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":2}]}},{"commit":"28ed17ad3bce866e5dc0179ef5de43380ac6ace1","message":"add parser_count test to test_cli_about_jc","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":1}]}},{"commit":"0c2a4e2bf71dca50d4a9bb27ca99944909c022ff","message":"add cli tests","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":37}]}},{"commit":"62bec30de2f1a303f2ec411d89f7f9f9c6d1abaf","message":"add json_out tests","stats":{"files_changed":1,"insertions":20,"deletions":0,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":20}]}},{"commit":"3fced77e4e258dbf7db94a313e599c830a597b49","message":"add set_env_colors tests","stats":{"files_changed":1,"insertions":98,"deletions":1,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":99}]}},{"commit":"a09d1d8b7687912610598c88d172733d5e29b1ce","message":"move environment variable assignment to main() to simplify tests","stats":{"files_changed":1,"insertions":7,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":13}]}},{"commit":"8f4243fbd8d70ca9fd019e984c564e37c81e07db","message":"formatting","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]}},{"commit":"47aaf20549ea238443427e69d5841d6996b7afab","message":"add sysctl command parser","stats":{"files_changed":1,"insertions":17,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":17}]}},{"commit":"0c5289ea50e4d3d35e80147b4cad32434c19a2a0","message":"add sysctl tests","stats":{"files_changed":3,"insertions":72,"deletions":2,"files":["tests/fixtures/freebsd12/sysctl-a.json","tests/fixtures/osx-10.14.6/sysctl-a.json","tests/test_sysctl.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/sysctl-a.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/sysctl-a.json","lines_changed":2},{"name":"tests/test_sysctl.py","lines_changed":70}]}},{"commit":"3e53323514906fb84abfaeed0c2ee1fd9090ad8d","message":"don't filter out empty lines","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":2}]}},{"commit":"a5ee9861b9b9b479aee59ea5b1d75f20d7c3c8e7","message":"update fixtures","stats":{"files_changed":3,"insertions":3785,"deletions":1,"files":["tests/fixtures/freebsd12/sysctl-a.json","tests/fixtures/freebsd12/sysctl-a.out","tests/fixtures/osx-10.14.6/sysctl-a.json"],"file_stats":[{"name":"tests/fixtures/freebsd12/sysctl-a.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/sysctl-a.out","lines_changed":3783},{"name":"tests/fixtures/osx-10.14.6/sysctl-a.json","lines_changed":2}]}},{"commit":"feb8ca76545cba4fd0927273ddf90a77df994006","message":"spelling","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/sysctl.md"],"file_stats":[{"name":"docs/parsers/sysctl.md","lines_changed":2}]}},{"commit":"a7abe4473b90c512466db9ae98cfac585689fe2a","message":"spelling","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":2}]}},{"commit":"780b9b61dec3e142e46c9a82146d2af4e1144123","message":"specify IndexError exception in try/except block","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":6}]}},{"commit":"19ace36ffa659bedf0ba2e43572c9e253592b2e7","message":"add fixtures","stats":{"files_changed":4,"insertions":2167,"deletions":0,"files":["tests/fixtures/osx-10.14.6/sysctl-a.json","tests/fixtures/osx-10.14.6/sysctl-a.out","tests/fixtures/ubuntu-18.04/sysctl-a.json","tests/fixtures/ubuntu-18.04/sysctl-a.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/sysctl-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/sysctl-a.out","lines_changed":1287},{"name":"tests/fixtures/ubuntu-18.04/sysctl-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/sysctl-a.out","lines_changed":878}]}},{"commit":"5fff8afc9f47f8cc6db8ed3613b90b5cdc683b43","message":"add fixes for freebsd where values can be on separate lines under the key","stats":{"files_changed":1,"insertions":33,"deletions":11,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":44}]}},{"commit":"4ad230c9279c5eb6c8ed6baf7254b8e9328e5af0","message":"doc update and add test fixtures","stats":{"files_changed":4,"insertions":929,"deletions":14,"files":["docs/parsers/sysctl.md","jc/parsers/sysctl.py","tests/fixtures/centos-7.7/sysctl-a.json","tests/fixtures/centos-7.7/sysctl-a.out"],"file_stats":[{"name":"docs/parsers/sysctl.md","lines_changed":12},{"name":"jc/parsers/sysctl.py","lines_changed":12},{"name":"tests/fixtures/centos-7.7/sysctl-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sysctl-a.out","lines_changed":918}]}},{"commit":"dd98eb1ec8f451eb87a5094e76a7f758dee3fc69","message":"append duplicate key values to original key instead of adding unique keys","stats":{"files_changed":1,"insertions":4,"deletions":7,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":11}]}},{"commit":"c6baf42e72b4f41ed511e7db943297d03a39c0d5","message":"doc updates","stats":{"files_changed":3,"insertions":94,"deletions":7,"files":["docgen.sh","docs/parsers/sysctl.md","jc/parsers/sysctl.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/sysctl.md","lines_changed":86},{"name":"jc/parsers/sysctl.py","lines_changed":14}]}},{"commit":"e2bac97d563e5ef771ccd8ed1e5c42cbf588b120","message":"fix for multiple identical keys in sysctl output","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":12}]}},{"commit":"d112ee94d0ec534828c8508d0fb833b768975990","message":"use try/except and add support for floats in process()","stats":{"files_changed":1,"insertions":8,"deletions":4,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":12}]}},{"commit":"27b21b2fafab912f21b88b66c7f817cbce155765","message":"formatting and docstring updates","stats":{"files_changed":1,"insertions":8,"deletions":7,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":15}]}},{"commit":"8c96d5cd20448a4f7f9736c4d489d6ecc3068ad7","message":"reduce pygments version requirement","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["requirements.txt"],"file_stats":[{"name":"requirements.txt","lines_changed":2}]}},{"commit":"c29ed3fd695f725005333db5e6e2cd844bb4ca14","message":"formatting of quotation marks and docstrings","stats":{"files_changed":1,"insertions":14,"deletions":13,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":27}]}},{"commit":"cedf603f121636bdfa95432059c3c275c3ea3e9e","message":"minor formatting","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]}},{"commit":"279161c36f288c27a9789054ae372fe8ceb58a94","message":"Merge pull request #72 from duelafn/pygments-2.3"},{"commit":"ce0b43d919f07d96d1b94e9d14d03e935e80011d","message":"Remove dependency on 3rd party packaging library","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]}},{"commit":"ddafa5bf06066bab8e9587be902d6752fcf51605","message":"Support older pygments","stats":{"files_changed":2,"insertions":47,"deletions":7,"files":["jc/cli.py","setup.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":52},{"name":"setup.py","lines_changed":2}]}},{"commit":"bc7116c31bacf3159aef775fd0e615187420b010","message":"fix JC_COLORS env bug and simplify set_env_colors()","stats":{"files_changed":1,"insertions":7,"deletions":8,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":15}]}},{"commit":"53b709272115e769dac905296fa3b000c1cdd66a","message":"remove side-effects from functions and print in main()","stats":{"files_changed":1,"insertions":11,"deletions":11,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":22}]}},{"commit":"beb9174b1b35937ae1fb99778369ae643a8f1005","message":"add sysctl parser","stats":{"files_changed":1,"insertions":123,"deletions":0,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":123}]}},{"commit":"aea41ed341c8d53cc07c35e8044e8f816ddd2fed","message":"move verbose_debug enable earlier in code to catch more issues. add sysctl and version bump","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":11}]}},{"commit":"d789494cb1f691aa352419aaefc692f654477177","message":"change type check to use isinstance","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/tracebackplus.py"],"file_stats":[{"name":"jc/tracebackplus.py","lines_changed":2}]}},{"commit":"608e7b4cff081f92177e4151ffa1a91a4a6895ca","message":"add license info","stats":{"files_changed":1,"insertions":61,"deletions":0,"files":["jc/tracebackplus.py"],"file_stats":[{"name":"jc/tracebackplus.py","lines_changed":61}]}},{"commit":"4ee199c02a78c2707c5d1427d7c8fae56df5671c","message":"use tracebackplus instead of cgitb since cgitb is depricated","stats":{"files_changed":2,"insertions":189,"deletions":3,"files":["jc/cli.py","jc/tracebackplus.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6},{"name":"jc/tracebackplus.py","lines_changed":186}]}},{"commit":"fbf47d408501dadda4671fb530f5e11859e85d53","message":"add arch linux","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]}},{"commit":"5a238e4b4204f0552327534ef798c28d3ad4f578","message":"remove updates-testing from fedora command","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"f852b8246a8f9e5f7d9144fed3a0daa4eddfe035","message":"wrap warning message","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":3}]}},{"commit":"88140d929a500ee78f807862c4912c399df2a460","message":"wrap error message in code","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]}},{"commit":"45f726824027af49c437b6e81e4700f7098af320","message":"add -dd to error message","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"3a3c8e4d4a77135eaee5cb30c3107a4531c300ce","message":"move verbose_debug under debug check","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]}},{"commit":"c1ac183a0472e93226c9ee1905f56c5183e3721f","message":"simplify debug option","stats":{"files_changed":1,"insertions":15,"deletions":22,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":37}]}},{"commit":"18bb779ee5cd5821764b03173f16e922f753c64d","message":"formatting: double quotes to single quotes","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]}},{"commit":"8b6612fe7911ab9e0bf8d29be60865d3b8aa3fd8","message":"move JC_COLORS parsing error message","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]}},{"commit":"fde0bc853415418e01616861ace5048770bd97f8","message":"improve package install info","stats":{"files_changed":1,"insertions":9,"deletions":34,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":43}]}},{"commit":"e661a78939ff067b8a61f08301c178dd10a344ab","message":"Merge pull request #71 from wigust/guix"},{"commit":"847e346602789bf58e3515319e9d080dfb897fc9","message":"add guix package info","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]}},{"commit":"b9697516887c61f08d8d7b1dc9130350e5bdba9c","message":"add other references","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]}},{"commit":"ad6f2ba03a293a7f55e456fa5f5b55ee3cbcd4ec","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"63c6a5edc0e9001b143595fd8b96f1b4a1377a3a","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]}},{"commit":"9f4cf9dd5efe94adfff0961fdb73097ca27c5463","message":"formatting","stats":{"files_changed":1,"insertions":197,"deletions":67,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":264}]}},{"commit":"51331b6dc01eee00847fa4be549ffde365373a01","message":"formatting","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":5}]}},{"commit":"efb6761033319644bf9cdae6288ff5609f6482ea","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"6a4f737a0f1c322bebccf69809d9816fc770c5ef","message":"update json syntax highlighting","stats":{"files_changed":1,"insertions":88,"deletions":115,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":203}]}},{"commit":"be6864b778ab721bcba5fc3221576153be7b2ed3","message":"add syntax highlighting tags","stats":{"files_changed":1,"insertions":26,"deletions":26,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":52}]}},{"commit":"de3b91a36cfcaf565b26b1da42f1e87835da4dc3","message":"add -dd option","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"ef5482c3b5afa0ee8e85851bebab1c104cb59936","message":"add verbose debug option","stats":{"files_changed":3,"insertions":15,"deletions":7,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":17},{"name":"setup.py","lines_changed":2}]}},{"commit":"d20b795137036f8b889eb231cb4f14b756ec6479","message":"Merge pull request #70 from kellyjonbrazil/dev"},{"commit":"8a134065dff429551449c1ea16a36d745fdab580","message":"update fixtures for last chain fix","stats":{"files_changed":12,"insertions":12,"deletions":12,"files":["tests/fixtures/centos-7.7/iptables-filter-line-numbers.json","tests/fixtures/centos-7.7/iptables-filter-nv.json","tests/fixtures/centos-7.7/iptables-filter.json","tests/fixtures/centos-7.7/iptables-mangle.json","tests/fixtures/centos-7.7/iptables-nat.json","tests/fixtures/centos-7.7/iptables-raw.json","tests/fixtures/ubuntu-18.04/iptables-filter-line-numbers.json","tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","tests/fixtures/ubuntu-18.04/iptables-filter.json","tests/fixtures/ubuntu-18.04/iptables-mangle.json","tests/fixtures/ubuntu-18.04/iptables-nat.json","tests/fixtures/ubuntu-18.04/iptables-raw.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/iptables-filter-line-numbers.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-filter-nv.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-filter.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-mangle.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-nat.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-raw.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter-line-numbers.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-mangle.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-nat.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-raw.json","lines_changed":2}]}},{"commit":"22aee1bfa40ed1d3c4df28cd934ef0edfc5c458c","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"b282820fd67dcc96c058198f97b066e7b402d1f3","message":"fix to include the final chain in output","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":3}]}},{"commit":"3ee098306daf903687cb0febf92773a81e216111","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":2}]}},{"commit":"09e8f379a64b3b37bb99b4291c10aa4a5cdedea4","message":"iptables code optimizations","stats":{"files_changed":1,"insertions":9,"deletions":11,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":20}]}},{"commit":"69018cdb3a77fcdcb5648e3b89933148c55a6412","message":"fix date","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]}},{"commit":"d0d7254c6acc7be4341618d231a5b166f640b287","message":"add docstring","stats":{"files_changed":2,"insertions":26,"deletions":0,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":15},{"name":"jc/utils.py","lines_changed":11}]}},{"commit":"cc0f0971d76b6f3dec8d989e83f5676db8f2c6d9","message":"Improve and standardize empty data check for all parsers","stats":{"files_changed":56,"insertions":476,"deletions":439,"files":["changelog.txt","jc/cli.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/utils.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":10},{"name":"jc/parsers/airport_s.py","lines_changed":4},{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/blkid.py","lines_changed":5},{"name":"jc/parsers/crontab.py","lines_changed":5},{"name":"jc/parsers/crontab_u.py","lines_changed":5},{"name":"jc/parsers/csv.py","lines_changed":5},{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":193},{"name":"jc/parsers/dmidecode.py","lines_changed":264},{"name":"jc/parsers/du.py","lines_changed":8},{"name":"jc/parsers/env.py","lines_changed":8},{"name":"jc/parsers/file.py","lines_changed":39},{"name":"jc/parsers/foo.py","lines_changed":8},{"name":"jc/parsers/free.py","lines_changed":5},{"name":"jc/parsers/fstab.py","lines_changed":5},{"name":"jc/parsers/group.py","lines_changed":5},{"name":"jc/parsers/gshadow.py","lines_changed":5},{"name":"jc/parsers/history.py","lines_changed":26},{"name":"jc/parsers/hosts.py","lines_changed":8},{"name":"jc/parsers/id.py","lines_changed":8},{"name":"jc/parsers/ifconfig.py","lines_changed":18},{"name":"jc/parsers/ini.py","lines_changed":5},{"name":"jc/parsers/iptables.py","lines_changed":44},{"name":"jc/parsers/jobs.py","lines_changed":8},{"name":"jc/parsers/last.py","lines_changed":8},{"name":"jc/parsers/ls.py","lines_changed":5},{"name":"jc/parsers/lsblk.py","lines_changed":8},{"name":"jc/parsers/lsmod.py","lines_changed":5},{"name":"jc/parsers/lsof.py","lines_changed":9},{"name":"jc/parsers/mount.py","lines_changed":9},{"name":"jc/parsers/netstat.py","lines_changed":8},{"name":"jc/parsers/ntpq.py","lines_changed":5},{"name":"jc/parsers/passwd.py","lines_changed":8},{"name":"jc/parsers/pip_list.py","lines_changed":9},{"name":"jc/parsers/pip_show.py","lines_changed":9},{"name":"jc/parsers/ps.py","lines_changed":6},{"name":"jc/parsers/route.py","lines_changed":6},{"name":"jc/parsers/shadow.py","lines_changed":8},{"name":"jc/parsers/ss.py","lines_changed":8},{"name":"jc/parsers/stat.py","lines_changed":7},{"name":"jc/parsers/systemctl.py","lines_changed":8},{"name":"jc/parsers/systemctl_lj.py","lines_changed":8},{"name":"jc/parsers/systemctl_ls.py","lines_changed":8},{"name":"jc/parsers/systemctl_luf.py","lines_changed":8},{"name":"jc/parsers/timedatectl.py","lines_changed":14},{"name":"jc/parsers/uname.py","lines_changed":6},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/w.py","lines_changed":5},{"name":"jc/parsers/who.py","lines_changed":8},{"name":"jc/parsers/xml.py","lines_changed":5},{"name":"jc/parsers/yaml.py","lines_changed":11},{"name":"jc/utils.py","lines_changed":4},{"name":"setup.py","lines_changed":2}]}},{"commit":"2af61730f0f5b9bc6f1f4c5d9d808ff6ccb0faeb","message":"Merge pull request #68 from kellyjonbrazil/dev"},{"commit":"83f41b83dc01c462c6a2295e9fc56ad42a3b62f4","message":"version bump","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"1fb84fce88e0306c26a5771fa4c6dc14a21409a1","message":"fix for no data","stats":{"files_changed":16,"insertions":137,"deletions":67,"files":["changelog.txt","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/xml.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py","tests/test_timedatectl.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py","tests/test_who.py","tests/test_xml.py","tests/test_yaml.py"],"file_stats":[{"name":"changelog.txt","lines_changed":5},{"name":"jc/parsers/systemctl_lj.py","lines_changed":3},{"name":"jc/parsers/systemctl_ls.py","lines_changed":33},{"name":"jc/parsers/systemctl_luf.py","lines_changed":35},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/w.py","lines_changed":63},{"name":"jc/parsers/xml.py","lines_changed":6},{"name":"tests/test_systemctl_ls.py","lines_changed":6},{"name":"tests/test_systemctl_luf.py","lines_changed":6},{"name":"tests/test_timedatectl.py","lines_changed":6},{"name":"tests/test_uname.py","lines_changed":6},{"name":"tests/test_uptime.py","lines_changed":6},{"name":"tests/test_w.py","lines_changed":6},{"name":"tests/test_who.py","lines_changed":6},{"name":"tests/test_xml.py","lines_changed":6},{"name":"tests/test_yaml.py","lines_changed":6}]}},{"commit":"a8837e12447c52dbe438b19c07777b9b4a22081c","message":"remove --upgrade from pip install","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"04d2eec5581998d1a80e762b670af76c92111065","message":"fix for no data","stats":{"files_changed":6,"insertions":56,"deletions":30,"files":["changelog.txt","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","tests/test_stat.py","tests/test_systemctl.py","tests/test_systemctl_lj.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":33},{"name":"jc/parsers/systemctl_lj.py","lines_changed":33},{"name":"tests/test_stat.py","lines_changed":6},{"name":"tests/test_systemctl.py","lines_changed":6},{"name":"tests/test_systemctl_lj.py","lines_changed":6}]}},{"commit":"1b57ec92f052ddc8959540511512190a539262b7","message":"fix for no data","stats":{"files_changed":21,"insertions":152,"deletions":68,"files":["changelog.txt","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/pip_list.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","tests/fixtures/centos-7.7/ss-sudo-a.json","tests/fixtures/ubuntu-18.04/ss-sudo-a.json","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_ntpq.py","tests/test_passwd.py","tests/test_pip_list.py","tests/test_pip_show.py","tests/test_ps.py","tests/test_route.py","tests/test_shadow.py","tests/test_ss.py"],"file_stats":[{"name":"changelog.txt","lines_changed":8},{"name":"jc/parsers/mount.py","lines_changed":3},{"name":"jc/parsers/netstat.py","lines_changed":41},{"name":"jc/parsers/ntpq.py","lines_changed":35},{"name":"jc/parsers/pip_list.py","lines_changed":31},{"name":"jc/parsers/ps.py","lines_changed":9},{"name":"jc/parsers/route.py","lines_changed":9},{"name":"jc/parsers/ss.py","lines_changed":14},{"name":"tests/fixtures/centos-7.7/ss-sudo-a.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ss-sudo-a.json","lines_changed":2},{"name":"tests/test_lsof.py","lines_changed":6},{"name":"tests/test_mount.py","lines_changed":6},{"name":"tests/test_netstat.py","lines_changed":6},{"name":"tests/test_ntpq.py","lines_changed":6},{"name":"tests/test_passwd.py","lines_changed":6},{"name":"tests/test_pip_list.py","lines_changed":6},{"name":"tests/test_pip_show.py","lines_changed":6},{"name":"tests/test_ps.py","lines_changed":6},{"name":"tests/test_route.py","lines_changed":6},{"name":"tests/test_shadow.py","lines_changed":6},{"name":"tests/test_ss.py","lines_changed":6}]}},{"commit":"4d8859540417e99e273fda2cea959240f3c37ea3","message":"enhance empty data check","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":2}]}},{"commit":"52b1272a3aab09b5a8c4a277fbf9975a1b8b6921","message":"enhance empty data check","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":2}]}},{"commit":"d2ccad6a83138fbf6eb863634fd354dc6c3fa238","message":"fix for no data","stats":{"files_changed":4,"insertions":33,"deletions":15,"files":["jc/parsers/lsblk.py","jc/parsers/lsmod.py","tests/test_lsblk.py","tests/test_lsmod.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":21},{"name":"jc/parsers/lsmod.py","lines_changed":15},{"name":"tests/test_lsblk.py","lines_changed":6},{"name":"tests/test_lsmod.py","lines_changed":6}]}},{"commit":"cad6dde4ac66cf970a7f52d8e7958ea35c083629","message":"fix for no data","stats":{"files_changed":10,"insertions":60,"deletions":0,"files":["tests/test_group.py","tests/test_gshadow.py","tests/test_history.py","tests/test_hosts.py","tests/test_id.py","tests/test_ifconfig.py","tests/test_ini.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_last.py"],"file_stats":[{"name":"tests/test_group.py","lines_changed":6},{"name":"tests/test_gshadow.py","lines_changed":6},{"name":"tests/test_history.py","lines_changed":6},{"name":"tests/test_hosts.py","lines_changed":6},{"name":"tests/test_id.py","lines_changed":6},{"name":"tests/test_ifconfig.py","lines_changed":6},{"name":"tests/test_ini.py","lines_changed":6},{"name":"tests/test_iptables.py","lines_changed":6},{"name":"tests/test_jobs.py","lines_changed":6},{"name":"tests/test_last.py","lines_changed":6}]}},{"commit":"06811c3539b0d871e13e9b8d3b51f731d06fd2ce","message":"add test for no data","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_fstab.py"],"file_stats":[{"name":"tests/test_fstab.py","lines_changed":6}]}},{"commit":"0cb23c2b21f464082609409261de8e95eb1b0d55","message":"add fix for no data","stats":{"files_changed":3,"insertions":17,"deletions":7,"files":["changelog.txt","jc/parsers/free.py","tests/test_free.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/free.py","lines_changed":17},{"name":"tests/test_free.py","lines_changed":6}]}},{"commit":"ac4688dca22334385ec2c87027f2f14f9ca93ce4","message":"add test for no data","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_file.py"],"file_stats":[{"name":"tests/test_file.py","lines_changed":6}]}},{"commit":"326c3b4670a0e47cbe2988b38fb1c1b26a4db890","message":"add test for no data","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_env.py"],"file_stats":[{"name":"tests/test_env.py","lines_changed":6}]}},{"commit":"9b29d0c2688eda2e4707aeba693ed14fa433a706","message":"add test for no data","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_du.py"],"file_stats":[{"name":"tests/test_du.py","lines_changed":6}]}},{"commit":"e0013c38710b4ecf3a588a16d1d908effc23b485","message":"add test for no data","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["tests/test_dmidecode.py"],"file_stats":[{"name":"tests/test_dmidecode.py","lines_changed":5}]}},{"commit":"a75744075b0628bdb711d8a929a759b4b4067edb","message":"add no data test","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_dig.py"],"file_stats":[{"name":"tests/test_dig.py","lines_changed":6}]}},{"commit":"525aec1a02380f17ab7827434616f981f7457bd0","message":"fix for no data","stats":{"files_changed":3,"insertions":16,"deletions":7,"files":["changelog.txt","jc/parsers/df.py","tests/test_df.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":16},{"name":"tests/test_df.py","lines_changed":6}]}},{"commit":"0bf9a7a072a80e10a29c6bb3943b107352dc1d45","message":"add test for no data","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_csv.py"],"file_stats":[{"name":"tests/test_csv.py","lines_changed":6}]}},{"commit":"d8f2f4c95bc699386b9fe93d10e13637875a1dcf","message":"fix for no data","stats":{"files_changed":5,"insertions":96,"deletions":80,"files":["changelog.txt","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/test_crontab.py","tests/test_crontab_u.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":79},{"name":"jc/parsers/crontab_u.py","lines_changed":83},{"name":"tests/test_crontab.py","lines_changed":6},{"name":"tests/test_crontab_u.py","lines_changed":6}]}},{"commit":"35d733b44f3705bed3dd8ce340379470f199f772","message":"fix for no data","stats":{"files_changed":5,"insertions":70,"deletions":60,"files":["changelog.txt","jc/parsers/arp.py","jc/parsers/blkid.py","tests/test_arp.py","tests/test_blkid.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":112},{"name":"jc/parsers/blkid.py","lines_changed":4},{"name":"tests/test_arp.py","lines_changed":6},{"name":"tests/test_blkid.py","lines_changed":6}]}},{"commit":"9179b4175c5063bed14ecb96ba24c517920c0d94","message":"add nodata tests","stats":{"files_changed":3,"insertions":16,"deletions":0,"files":["changelog.txt","tests/test_airport.py","tests/test_airport_s.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"tests/test_airport.py","lines_changed":6},{"name":"tests/test_airport_s.py","lines_changed":6}]}},{"commit":"bb07d78c78ff5c5b2ee4d2086ffc6dd5ebedf0fb","message":"add nodata fix","stats":{"files_changed":1,"insertions":10,"deletions":8,"files":["jc/parsers/airport_s.py"],"file_stats":[{"name":"jc/parsers/airport_s.py","lines_changed":18}]}},{"commit":"07b179cd7f8853ff6aca0b27a703e198c158ca72","message":"Merge pull request #67 from kellyjonbrazil/Dev"},{"commit":"054422d8373e7b8def18ddabd447062cb9cc3137","message":"add test for empty directory","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_ls.py"],"file_stats":[{"name":"tests/test_ls.py","lines_changed":6}]}},{"commit":"3e052d18102e98a09cbba21866855691eaccc216","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"c8e72805cf9def478b56c925f4afcc0ece1daac0","message":"fix error on empty directory","stats":{"files_changed":1,"insertions":9,"deletions":10,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":19}]}},{"commit":"12a80e7db0f6c7d536674ad8d34e26bba9a1f1f9","message":"add fedora package info","stats":{"files_changed":1,"insertions":10,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":12}]}},{"commit":"ee7ff9a09d3373f60ae1645376ccc0057803147e","message":"Merge pull request #66 from kellyjonbrazil/dev"},{"commit":"f6478fb636ead8d1e53e4a88d59e55222df37a8f","message":"version bump","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"811a0b0495819925199d70db266066197cc6824e","message":"add info regarding the local parser plugin files","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"aeb48edf727f23cc4f8fd9b760cfb69f03098278","message":"use $LOCALAPPDATA variable for windows","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"b1e94f0df7041bcae97455508f423178aef9d61d","message":"heading formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"60050e3c0fe34980f7db5b8bd46430f953f0c3a3","message":"fix linux/unix directory and add note about the XDG specification followed","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":26}]}},{"commit":"39ef09aa5b0d43b5128299511afe80336aa38203","message":"add local parser plugin feature","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]}},{"commit":"8377d4311611c242e16eaebe66dafac9529150d4","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"54e4c447ab34ae54c73c92df40f1b4ca6ffb2277","message":"clean up formatting","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":10}]}},{"commit":"937a9fa9cf2ede8e686ba853989f33e4a483a0ad","message":"vendorize appdirs module","stats":{"files_changed":4,"insertions":613,"deletions":3,"files":["jc/appdirs.py","jc/cli.py","requirements.txt","setup.py"],"file_stats":[{"name":"jc/appdirs.py","lines_changed":611},{"name":"jc/cli.py","lines_changed":3},{"name":"requirements.txt","lines_changed":1},{"name":"setup.py","lines_changed":1}]}},{"commit":"808ff6cf0e784cf0c2d523ff2e01197cb6e88c82","message":"more acknowledgments updates","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":12}]}},{"commit":"7f5c649a95a871c3cd8d48731a6d26dcba6f725b","message":"update acknowledgments","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"b72727dec995de1ca5f68ee17a710b086c87d612","message":"update custom parsers info","stats":{"files_changed":1,"insertions":9,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":11}]}},{"commit":"3fc88bfb334143b68a9cb78d4034f33e7c0bcf76","message":"Merge pull request #65 from duelafn/local-parsers"},{"commit":"9f2279d5867eb89d4b4b7b4ffca290166ec97c48","message":"Load custom parsers from /jc/jcparsers","stats":{"files_changed":4,"insertions":29,"deletions":2,"files":["README.md","jc/cli.py","requirements.txt","setup.py"],"file_stats":[{"name":"README.md","lines_changed":7},{"name":"jc/cli.py","lines_changed":22},{"name":"requirements.txt","lines_changed":1},{"name":"setup.py","lines_changed":1}]}},{"commit":"346a14cb9bb0d762fc3fa366ad97e5ff85f3992a","message":"change osx_device to unix_device","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]}},{"commit":"dac00d17ff9f3d2bb959697b6e567015bfc2702b","message":"add nixos test","stats":{"files_changed":3,"insertions":17,"deletions":0,"files":["tests/fixtures/nixos/route-ee.json","tests/fixtures/nixos/route-ee.out","tests/test_route.py"],"file_stats":[{"name":"tests/fixtures/nixos/route-ee.json","lines_changed":1},{"name":"tests/fixtures/nixos/route-ee.out","lines_changed":4},{"name":"tests/test_route.py","lines_changed":12}]}},{"commit":"9ca7cd40601b97829e8f88071fdfb928d939f7e5","message":"update docs","stats":{"files_changed":1,"insertions":17,"deletions":34,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":51}]}},{"commit":"aa31628970b12295a41dff20e829fcce9f8a4d07","message":"update docs","stats":{"files_changed":5,"insertions":70,"deletions":63,"files":["README.md","docs/parsers/netstat.md","docs/parsers/route.md","docs/parsers/stat.md","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":46},{"name":"docs/parsers/netstat.md","lines_changed":16},{"name":"docs/parsers/route.md","lines_changed":51},{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":16}]}},{"commit":"bed694fcf5c8c31bbd4f3e88759fe7ab82382d24","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"4b4af69fa184896ec15b5be7dc8416f36f921d5e","message":"fix date","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]}},{"commit":"9d96190a5b19e8d71c3ac66eb0303d269dd4ce5d","message":"Merge pull request #64 from kellyjonbrazil/dev"},{"commit":"fa44d48c094a55e499c2c780d109bf277736b42e","message":"freebsd fixes, tests, and fixtures","stats":{"files_changed":6,"insertions":129,"deletions":7,"files":["changelog.txt","jc/parsers/stat.py","tests/fixtures/freebsd12/stat.json","tests/fixtures/freebsd12/stat.out","tests/fixtures/osx-10.14.6/stat.json","tests/test_stat.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":12},{"name":"tests/fixtures/freebsd12/stat.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/stat.out","lines_changed":107},{"name":"tests/fixtures/osx-10.14.6/stat.json","lines_changed":2},{"name":"tests/test_stat.py","lines_changed":12}]}},{"commit":"4ef961c2788c935b1fea1c9777b976e7b89e7367","message":"add freebsd test and fixtures","stats":{"files_changed":3,"insertions":20,"deletions":0,"files":["tests/fixtures/freebsd12/ntpq-p.json","tests/fixtures/freebsd12/ntpq-p.out","tests/test_ntpq.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/ntpq-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ntpq-p.out","lines_changed":7},{"name":"tests/test_ntpq.py","lines_changed":12}]}},{"commit":"292a837d5c47165ccb155f079b0a114b5c17a98e","message":"add tests and fixtures for freebsd12","stats":{"files_changed":3,"insertions":22,"deletions":0,"files":["tests/fixtures/freebsd12/last.json","tests/fixtures/freebsd12/last.out","tests/test_last.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/last.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/last.out","lines_changed":9},{"name":"tests/test_last.py","lines_changed":12}]}},{"commit":"aa7b915d847dbd29d2c09b2cc40b847e37174ffb","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":2}]}},{"commit":"c46fe73236b912d2ee89dfb36ff259fe95fd0479","message":"add last fixes for freebsd","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]}},{"commit":"039b2c129cbe79d2d23b1194b043d8b730609956","message":"freebsd fixes","stats":{"files_changed":1,"insertions":10,"deletions":1,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":11}]}},{"commit":"8f2e5e4808b30c658a4cb87125639e4d7d6c15d8","message":"fix compatible logic","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]}},{"commit":"c4da8e4f78e6b4aaa4aff76ae042be9aaec832a7","message":"add nixos and freebsd to tested. update new arp fields","stats":{"files_changed":1,"insertions":9,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":12}]}},{"commit":"bcab9078a4c2bfd6ae4dca9448b577d9ed0fc01c","message":"add w parser fix","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]}},{"commit":"b3c6c1ea925bf7cd76368f5074fb8af52a844522","message":"strip whitespace in string fields and add tests","stats":{"files_changed":4,"insertions":29,"deletions":5,"files":["jc/parsers/w.py","tests/fixtures/nixos/w.json","tests/fixtures/nixos/w.out","tests/test_w.py"],"file_stats":[{"name":"jc/parsers/w.py","lines_changed":8},{"name":"tests/fixtures/nixos/w.json","lines_changed":1},{"name":"tests/fixtures/nixos/w.out","lines_changed":5},{"name":"tests/test_w.py","lines_changed":20}]}},{"commit":"a3af8662bd491e344c93d24afabd23e90efd8086","message":"add permanent field","stats":{"files_changed":3,"insertions":205,"deletions":3,"files":["tests/fixtures/osx-10.11.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a2.json"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/arp-a.json","lines_changed":107},{"name":"tests/fixtures/osx-10.14.6/arp-a.json","lines_changed":99},{"name":"tests/fixtures/osx-10.14.6/arp-a2.json","lines_changed":2}]}},{"commit":"35940d0bc80bf61b11f40b1e1043835f26eb391c","message":"add freebsd permanent and expires fields","stats":{"files_changed":6,"insertions":59,"deletions":4,"files":["changelog.txt","docs/parsers/arp.md","jc/parsers/arp.py","tests/fixtures/freebsd12/arp-a.json","tests/fixtures/freebsd12/arp-a.out","tests/test_arp.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":12},{"name":"jc/parsers/arp.py","lines_changed":33},{"name":"tests/fixtures/freebsd12/arp-a.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/arp-a.out","lines_changed":3},{"name":"tests/test_arp.py","lines_changed":12}]}},{"commit":"26994cdcb7148d2c9d1701bca9541d247356260b","message":"add freebsd compatibility info","stats":{"files_changed":8,"insertions":115,"deletions":85,"files":["docs/parsers/df.md","docs/parsers/fstab.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/route.md","docs/parsers/stat.md","docs/parsers/uname.md"],"file_stats":[{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":163},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":25},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2}]}},{"commit":"017159a829691cb6a7174f123d024eb252179b75","message":"add freebsd nestat tests and fixtures","stats":{"files_changed":15,"insertions":221,"deletions":0,"files":["tests/fixtures/freebsd12/netstat-Aa.json","tests/fixtures/freebsd12/netstat-AaT.json","tests/fixtures/freebsd12/netstat-AaT.out","tests/fixtures/freebsd12/netstat-AanP.json","tests/fixtures/freebsd12/netstat-AanP.out","tests/fixtures/freebsd12/netstat-Aax.json","tests/fixtures/freebsd12/netstat-Aax.out","tests/fixtures/freebsd12/netstat-aT.json","tests/fixtures/freebsd12/netstat-aT.out","tests/fixtures/freebsd12/netstat-an.json","tests/fixtures/freebsd12/netstat-i.json","tests/fixtures/freebsd12/netstat-ib.json","tests/fixtures/freebsd12/netstat-ib.out","tests/fixtures/freebsd12/netstat-r.json","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/netstat-Aa.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-AaT.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-AaT.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-AanP.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-AanP.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-Aax.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-Aax.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-aT.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-aT.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-an.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-i.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-ib.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-ib.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/netstat-r.json","lines_changed":1},{"name":"tests/test_netstat.py","lines_changed":108}]}},{"commit":"b4e9c85e08d199dad67f03c7603194278a022696","message":"fixup -T freebsd output and add whitespace stripping to parse_post","stats":{"files_changed":1,"insertions":12,"deletions":0,"files":["jc/parsers/netstat_freebsd_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_freebsd_osx.py","lines_changed":12}]}},{"commit":"189146cd84cfad262f2b2601bb0cb4b9dde2587e","message":"add more ints. remove whitespace strip code and move to freebsd_osx module","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":10}]}},{"commit":"af34153ffab10ca1ad7f44736d379d91ae43c813","message":"version bump","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["changelog.txt","jc/cli.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"bf2ff3ffbb639446779b1f04f2997707d99c0a1f","message":"fix compatibility search for platform names that append the version number (e.g. freebsd12)","stats":{"files_changed":1,"insertions":8,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":9}]}},{"commit":"6423c9efd69e938af38934a97ca6b65009e8f07e","message":"integer and float updates","stats":{"files_changed":1,"insertions":34,"deletions":5,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":39}]}},{"commit":"58ab0d4ece7f006ce9431afb9e0fecbe60930be7","message":"strip whitespace from string fields","stats":{"files_changed":4,"insertions":12,"deletions":4,"files":["changelog.txt","jc/parsers/netstat.py","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":11},{"name":"tests/fixtures/osx-10.14.6/netstat-An.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat.json","lines_changed":2}]}},{"commit":"83a738bf4d756036d6269b9153220d7f1018ac9c","message":"update fixtures for osx_flags and osx_inode name change to unix_flags and unix_inode","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/netstat-Abn.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-An.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat.json","lines_changed":2}]}},{"commit":"3640671fc6a67c9628fd47e19e9fe0a0738439ce","message":"rename module","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/{netstat_osx.py => netstat_freebsd_osx.py}"],"file_stats":[{"name":"jc/parsers/{netstat_osx.py => netstat_freebsd_osx.py}","lines_changed":10}]}},{"commit":"1da623b30ef6f9b12ac231518d2d4e7dadcf717b","message":"add items","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":9}]}},{"commit":"b10ca64646e93d9797182ea046f4956a17b37627","message":"change osx_inode and osx_flags to unix_inode and unix_flags. Also rename netstat_osx module to netstat_freebsd_osx","stats":{"files_changed":1,"insertions":71,"deletions":71,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":142}]}},{"commit":"2128763ee67a07da6ebf123abeec39794bc1f4e2","message":"fix osx version from 16.4 to 14.6","stats":{"files_changed":1,"insertions":12,"deletions":12,"files":["tests/test_netstat.py"],"file_stats":[{"name":"tests/test_netstat.py","lines_changed":24}]}},{"commit":"a27e7ed39c63c04cfa78caceaada42f7a9496a2c","message":"test updates for added route_flags_pretty and flags_pretty fields","stats":{"files_changed":12,"insertions":12,"deletions":12,"files":["tests/fixtures/centos-7.7/netstat-r.json","tests/fixtures/centos-7.7/netstat-rne.json","tests/fixtures/centos-7.7/netstat-rnee.json","tests/fixtures/centos-7.7/route-vn.json","tests/fixtures/centos-7.7/route.json","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-rnl.json","tests/fixtures/ubuntu-18.04/netstat-r.json","tests/fixtures/ubuntu-18.04/netstat-rne.json","tests/fixtures/ubuntu-18.04/netstat-rnee.json","tests/fixtures/ubuntu-18.04/route-vn.json","tests/fixtures/ubuntu-18.04/route.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/netstat-r.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/netstat-rne.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/netstat-rnee.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/route-vn.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/route.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-r.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-rnl.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/netstat-r.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/netstat-rne.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/netstat-rnee.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/route-vn.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/route.json","lines_changed":2}]}},{"commit":"f07b7eaa474eb87dbdbc7fbe41b9386feff7bee2","message":"add flags_pretty","stats":{"files_changed":1,"insertions":38,"deletions":12,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":50}]}},{"commit":"6ce18de84ce16a926f9cd97c3210ef209c3352da","message":"add route_flags_pretty","stats":{"files_changed":3,"insertions":130,"deletions":69,"files":["jc/parsers/netstat.py","jc/parsers/netstat_linux.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":139},{"name":"jc/parsers/netstat_linux.py","lines_changed":23},{"name":"jc/parsers/netstat_osx.py","lines_changed":37}]}},{"commit":"8631b756e7ab8cd71c2a3eb288e2d1823cec5782","message":"add freebsd test files","stats":{"files_changed":4,"insertions":76,"deletions":0,"files":["tests/fixtures/freebsd12/netstat-Aa.out","tests/fixtures/freebsd12/netstat-an.out","tests/fixtures/freebsd12/netstat-i.out","tests/fixtures/freebsd12/netstat-r.out"],"file_stats":[{"name":"tests/fixtures/freebsd12/netstat-Aa.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-an.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-i.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/netstat-r.out","lines_changed":20}]}},{"commit":"7414d984125300164a5b6156d7a80128d4d6cb15","message":"add freebsd compatibility","stats":{"files_changed":6,"insertions":18,"deletions":18,"files":["jc/parsers/df.py","jc/parsers/fstab.py","jc/parsers/mount.py","jc/parsers/ntpq.py","jc/parsers/stat.py","jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":6},{"name":"jc/parsers/fstab.py","lines_changed":6},{"name":"jc/parsers/mount.py","lines_changed":6},{"name":"jc/parsers/ntpq.py","lines_changed":6},{"name":"jc/parsers/stat.py","lines_changed":6},{"name":"jc/parsers/uname.py","lines_changed":6}]}},{"commit":"d7b19892e8fb11e17fcbadcdbb08d49897d7754f","message":"add freebsd support for netstat -i","stats":{"files_changed":2,"insertions":10,"deletions":7,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":13},{"name":"jc/parsers/netstat_osx.py","lines_changed":4}]}},{"commit":"96df396eaf4e030113005a95e525d644c394dfe1","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"2f6f640317da5af894f34f187c4243ef0c599d07","message":"spelling","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"c4a0a50f3a3ac5833ab5d2f8a0cb3f18da335812","message":"add nix-env","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]}},{"commit":"658f8a3842273cea049689b3aea15d89a7294b24","message":"add zypper and ports info","stats":{"files_changed":1,"insertions":10,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":13}]}},{"commit":"bfb876a1e394ff63c6773965ba0b65da4e109c1b","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]}},{"commit":"90c34b1f4ee2d9ec8125346bb90b227f76ada2ba","message":"fix dmidecode example","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]}},{"commit":"3f9164ea77ec41e1b0671d0a642900d8e36faf9b","message":"bold formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"7fd6fecbf5a08b1f13aa7e906e94be9bc126780a","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"8029f72363a4d19938df07603f03a0147f6246a8","message":"change osx_flags from integer to string","stats":{"files_changed":6,"insertions":10,"deletions":7,"files":["changelog.txt","docs/parsers/stat.md","jc/cli.py","jc/parsers/stat.py","setup.py","tests/fixtures/osx-10.14.6/stat.json"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":6},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/stat.json","lines_changed":2}]}},{"commit":"c7fdce5d3b7566a7d290627767c47d9c196e02ad","message":"Merge pull request #62 from kellyjonbrazil/dev"},{"commit":"84f48aa369a458f534523ecc1e3aaaf403d06f1c","message":"version bump","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"2e9a0a9c1221dd01bd683ecbc4871d03738da671","message":"add features","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]}},{"commit":"c1f6f2b9508e558ab88b4a0a61e93a6cf5460bea","message":"osx fixes and tests","stats":{"files_changed":5,"insertions":116,"deletions":4,"files":["docs/parsers/stat.md","jc/parsers/stat.py","tests/fixtures/osx-10.14.6/stat.json","tests/fixtures/osx-10.14.6/stat.out","tests/test_stat.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":8},{"name":"jc/parsers/stat.py","lines_changed":5},{"name":"tests/fixtures/osx-10.14.6/stat.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/stat.out","lines_changed":94},{"name":"tests/test_stat.py","lines_changed":12}]}},{"commit":"ede21bca13c4b46899721f01d979c8b063f861a3","message":"add OSX support for stat","stats":{"files_changed":1,"insertions":110,"deletions":78,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":188}]}},{"commit":"8dd9a9f9cbc70a19176f909f6ac76b2bcf670736","message":"add netstat -i tests","stats":{"files_changed":5,"insertions":45,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-i.json","tests/fixtures/osx-10.14.6/netstat-i.json","tests/fixtures/ubuntu-18.04/netstat-i.json","tests/fixtures/ubuntu-18.04/netstat-i.out","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/netstat-i.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-i.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-i.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-i.out","lines_changed":4},{"name":"tests/test_netstat.py","lines_changed":38}]}},{"commit":"04f92cd1330759e4bad1c0304b9e1c28e8d32d59","message":"add linux support for netstat -i","stats":{"files_changed":5,"insertions":166,"deletions":4,"files":["README.md","docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_linux.py","tests/fixtures/centos-7.7/netstat-i.out"],"file_stats":[{"name":"README.md","lines_changed":32},{"name":"docs/parsers/netstat.md","lines_changed":50},{"name":"jc/parsers/netstat.py","lines_changed":44},{"name":"jc/parsers/netstat_linux.py","lines_changed":39},{"name":"tests/fixtures/centos-7.7/netstat-i.out","lines_changed":5}]}},{"commit":"8be8d2393b276a9249e1c573ce19cf630f0942fd","message":"add netstat -i support for OSX","stats":{"files_changed":3,"insertions":99,"deletions":3,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-i.out"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":19},{"name":"jc/parsers/netstat_osx.py","lines_changed":40},{"name":"tests/fixtures/osx-10.14.6/netstat-i.out","lines_changed":43}]}},{"commit":"0a879681be68fe2e6e5c013ab0fe18de99b04f7e","message":"add netstat -r to docs","stats":{"files_changed":3,"insertions":97,"deletions":282,"files":["README.md","docs/parsers/netstat.md","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":37},{"name":"docs/parsers/netstat.md","lines_changed":171},{"name":"jc/parsers/netstat.py","lines_changed":171}]}},{"commit":"2ca1587a49511899bf719e0b0c7de32158fc491d","message":"add linux netstat -r tests","stats":{"files_changed":10,"insertions":102,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-r.json","tests/fixtures/centos-7.7/netstat-rne.json","tests/fixtures/centos-7.7/netstat-rnee.json","tests/fixtures/ubuntu-18.04/netstat-r.json","tests/fixtures/ubuntu-18.04/netstat-r.out","tests/fixtures/ubuntu-18.04/netstat-rne.json","tests/fixtures/ubuntu-18.04/netstat-rne.out","tests/fixtures/ubuntu-18.04/netstat-rnee.json","tests/fixtures/ubuntu-18.04/netstat-rnee.out","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/netstat-r.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-rne.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-rnee.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-r.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-r.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/netstat-rne.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-rne.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/netstat-rnee.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-rnee.out","lines_changed":5},{"name":"tests/test_netstat.py","lines_changed":81}]}},{"commit":"ec2cd2d708a57c0458657416bedcb4340cb40901","message":"add netstat -r support for linux","stats":{"files_changed":9,"insertions":70,"deletions":11,"files":["docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_linux.py","jc/parsers/netstat_osx.py","tests/fixtures/centos-7.7/netstat-r.out","tests/fixtures/centos-7.7/netstat-rne.out","tests/fixtures/centos-7.7/netstat-rnee.out","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-rnl.json"],"file_stats":[{"name":"docs/parsers/netstat.md","lines_changed":11},{"name":"jc/parsers/netstat.py","lines_changed":13},{"name":"jc/parsers/netstat_linux.py","lines_changed":37},{"name":"jc/parsers/netstat_osx.py","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-r.out","lines_changed":5},{"name":"tests/fixtures/centos-7.7/netstat-rne.out","lines_changed":5},{"name":"tests/fixtures/centos-7.7/netstat-rnee.out","lines_changed":5},{"name":"tests/fixtures/osx-10.14.6/netstat-r.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-rnl.json","lines_changed":2}]}},{"commit":"5d0dbece9317e84a47d9f4b2d18a9ffa33fbee6e","message":"add netstat -r functionality for OSX","stats":{"files_changed":8,"insertions":288,"deletions":5,"files":["docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-r.out","tests/fixtures/osx-10.14.6/netstat-rnl.json","tests/fixtures/osx-10.14.6/netstat-rnl.out","tests/test_netstat.py"],"file_stats":[{"name":"docs/parsers/netstat.md","lines_changed":17},{"name":"jc/parsers/netstat.py","lines_changed":23},{"name":"jc/parsers/netstat_osx.py","lines_changed":37},{"name":"tests/fixtures/osx-10.14.6/netstat-r.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-r.out","lines_changed":93},{"name":"tests/fixtures/osx-10.14.6/netstat-rnl.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-rnl.out","lines_changed":96},{"name":"tests/test_netstat.py","lines_changed":25}]}},{"commit":"df1e4b414b2bda5be3153767cd854b2483ba600b","message":"remove unused folder","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":[".gitignore"],"file_stats":[{"name":".gitignore","lines_changed":1}]}},{"commit":"40760991e7dae43cd15134310f7bbb5ce0f58dae","message":"update copyright date","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["LICENSE.md"],"file_stats":[{"name":"LICENSE.md","lines_changed":2}]}},{"commit":"464f5f86cf2c8fe6a1a857b0ad4d221a3edf3d88","message":"update description","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"7b09e9fccdd4f09218a500b54c898ada1b9843c7","message":"set empty values to Null and update fixtures","stats":{"files_changed":5,"insertions":8,"deletions":5,"files":["docs/parsers/dmidecode.md","jc/parsers/dmidecode.py","tests/fixtures/centos-7.7/dmidecode.json","tests/fixtures/fedora32/dmidecode.json","tests/fixtures/ubuntu-18.04/dmidecode.json"],"file_stats":[{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":5},{"name":"tests/fixtures/centos-7.7/dmidecode.json","lines_changed":2},{"name":"tests/fixtures/fedora32/dmidecode.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dmidecode.json","lines_changed":2}]}},{"commit":"6cba7d429898d331c674c778f8bd85ba75a8dca9","message":"remove linux from description","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"9730f62e4970b5a4490f8dc24b6cfb9cacd0cbf2","message":"fixup name field and update test fixtures","stats":{"files_changed":5,"insertions":151,"deletions":133,"files":["jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json","tests/fixtures/osx-10.14.6/netstat.out"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":7},{"name":"tests/fixtures/osx-10.14.6/netstat-Abn.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-An.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat.out","lines_changed":271}]}},{"commit":"e0c1c87f549eee000b93b5f5a3e8d0b052eb7d32","message":"formatting","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":8}]}},{"commit":"931b3d2b836b251590497f4cfa65f106762086c1","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"e5d561baeecf1fd83a884b3cd9d322762f750dfb","message":"add multipath condition for osx detection","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":1}]}},{"commit":"2867593e7aa12299686e2c6aa0f2a79a9b550b53","message":"changelog update","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":6}]}},{"commit":"dd52fee5635c977d5c77046ab9fe78d2ed10deef","message":"osx netstat tests and fixtures","stats":{"files_changed":7,"insertions":2141,"deletions":0,"files":["tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-Abn.out","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat-An.out","tests/fixtures/osx-10.14.6/netstat.json","tests/fixtures/osx-10.14.6/netstat.out","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/netstat-Abn.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-Abn.out","lines_changed":689},{"name":"tests/fixtures/osx-10.14.6/netstat-An.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-An.out","lines_changed":689},{"name":"tests/fixtures/osx-10.14.6/netstat.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat.out","lines_changed":724},{"name":"tests/test_netstat.py","lines_changed":36}]}},{"commit":"8e1f8858273e671a882a07eae1c35b38f5298c94","message":"fix filtered netstat views","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":7}]}},{"commit":"2d39a58f902e6af77f8f96ffcd1d68b7cbadd56c","message":"doc update","stats":{"files_changed":4,"insertions":81,"deletions":14,"files":["README.md","docs/parsers/dmidecode.md","docs/parsers/netstat.md","jc/parsers/dmidecode.py"],"file_stats":[{"name":"README.md","lines_changed":67},{"name":"docs/parsers/dmidecode.md","lines_changed":4},{"name":"docs/parsers/netstat.md","lines_changed":20},{"name":"jc/parsers/dmidecode.py","lines_changed":4}]}},{"commit":"9c4fa2ae2601ca4880c0b078fa917f01f1392e0e","message":"integer conversions and icmp fix","stats":{"files_changed":2,"insertions":22,"deletions":2,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":21},{"name":"jc/parsers/netstat_osx.py","lines_changed":3}]}},{"commit":"de52d84e82df6d8c5e2416c6bc44e59c41c685da","message":"fix udp state and udp46 entries","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":17}]}},{"commit":"ce9b55059a28d363b8b0ae4f3ccbdbdc4bf4b58e","message":"organize files","stats":{"files_changed":2,"insertions":185,"deletions":167,"files":["jc/parsers/netstat.py","jc/parsers/netstat_linux.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":171},{"name":"jc/parsers/netstat_linux.py","lines_changed":181}]}},{"commit":"bcd370a6a01a115d470776f5690f8571d68d3930","message":"code cleanup","stats":{"files_changed":2,"insertions":5,"deletions":15,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":16},{"name":"jc/parsers/netstat_osx.py","lines_changed":4}]}},{"commit":"c8216850abd2d0b8cc6761453f853f296e8a28f3","message":"code cleanup","stats":{"files_changed":1,"insertions":19,"deletions":55,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":74}]}},{"commit":"f5feedb90b39e5c3f4564615482d47ccd145844f","message":"fix comments","stats":{"files_changed":1,"insertions":1,"deletions":10,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":11}]}},{"commit":"a4371cd187fe5077018edbfeee77eb17c6a90ad3","message":"support netstat -A","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":6}]}},{"commit":"9d5ba4c83404e4fab5c0f40c30b4735685499a31","message":"formatting","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":2}]}},{"commit":"1639dee1bb93f6f89e8bb7b37134dc1f561c479c","message":"fix parse_post","stats":{"files_changed":1,"insertions":10,"deletions":35,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":45}]}},{"commit":"9363f430f20951e6fa739f06c85c5b6b3421b60d","message":"use list extend method to simplify code","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":3}]}},{"commit":"9192a0907364c772558380be1373b8dcea972a6d","message":"parse all sections","stats":{"files_changed":1,"insertions":124,"deletions":34,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":158}]}},{"commit":"b915eb97556ccc5fc60e8d23f7298ffec2d8e3b7","message":"initial osx parser","stats":{"files_changed":2,"insertions":237,"deletions":55,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":118},{"name":"jc/parsers/netstat_osx.py","lines_changed":174}]}},{"commit":"1cfcc2b592f682d2b50a0c4188fa3ae832a6c682","message":"tighten up line test logic when counting tabs","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":2}]}},{"commit":"7138dd02b73073441a52c9b574bf0d6e02f0d7d9","message":"cleanup variables after adding to item","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":11}]}},{"commit":"b4276643b70f7820f8f53df22b32fffb54e30ca2","message":"add dmidecode tests and fixtures","stats":{"files_changed":4,"insertions":56,"deletions":0,"files":["tests/fixtures/centos-7.7/dmidecode.json","tests/fixtures/fedora32/dmidecode.json","tests/fixtures/ubuntu-18.04/dmidecode.json","tests/test_dmidecode.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/dmidecode.json","lines_changed":1},{"name":"tests/fixtures/fedora32/dmidecode.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dmidecode.json","lines_changed":1},{"name":"tests/test_dmidecode.py","lines_changed":53}]}},{"commit":"2ef00763bfe7c4348f30026759941efe39861a0c","message":"fix first item","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":4}]}},{"commit":"54364928fc826ead7774a4cec1bcb73a5cb9ee0f","message":"fix oddities like hybrid single/multiline data and items containing multiple records","stats":{"files_changed":2,"insertions":74,"deletions":81,"files":["docs/parsers/dmidecode.md","jc/parsers/dmidecode.py"],"file_stats":[{"name":"docs/parsers/dmidecode.md","lines_changed":37},{"name":"jc/parsers/dmidecode.py","lines_changed":118}]}},{"commit":"09b3b4932b0fa4a2b18c88a8465c15a194b727e6","message":"add dmidecode output fixtures","stats":{"files_changed":3,"insertions":35430,"deletions":0,"files":["tests/fixtures/centos-7.7/dmidecode.out","tests/fixtures/fedora32/dmidecode.out","tests/fixtures/ubuntu-18.04/dmidecode.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/dmidecode.out","lines_changed":11810},{"name":"tests/fixtures/fedora32/dmidecode.out","lines_changed":11810},{"name":"tests/fixtures/ubuntu-18.04/dmidecode.out","lines_changed":11810}]}},{"commit":"29d6670119d8fcd0344e90f01bfb6260aa936e50","message":"convert integers","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":10}]}},{"commit":"2f654b5f1acda01192294f4c18a5a31363e7f387","message":"doc update","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["docs/parsers/dmidecode.md"],"file_stats":[{"name":"docs/parsers/dmidecode.md","lines_changed":37}]}},{"commit":"e53b9f5992450b53efc886b4fa9ca16f3dd07530","message":"add caveats to documentation","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":37}]}},{"commit":"addb234e6162c58750cb67947bc4776635bf54fb","message":"add dmidecode doc","stats":{"files_changed":1,"insertions":153,"deletions":0,"files":["docs/parsers/dmidecode.md"],"file_stats":[{"name":"docs/parsers/dmidecode.md","lines_changed":153}]}},{"commit":"76eca3b65911a0a340d3d94322a8145ee89c50da","message":"add dmidecode","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":1}]}},{"commit":"f90dec4c0ecf88623fb22273b7527ec8884826c4","message":"add examples to documentation","stats":{"files_changed":1,"insertions":94,"deletions":5,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":99}]}},{"commit":"8900a59d4cb424ff58d1eb27f8fda7ea0a668a5c","message":"simplify logic by removing redundant block","stats":{"files_changed":1,"insertions":1,"deletions":19,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":20}]}},{"commit":"6685138200d5955115707d04aad0293ea8af5b15","message":"fix for missing multi-line values that come immediately after a previous multi-line value","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":2}]}},{"commit":"4d3e65b980d50164b8220e59560822b9871580ea","message":"fix missing values","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":5}]}},{"commit":"e9282bb546f560da6396f44e2ce9e04136348e2c","message":"add dmidecode parser","stats":{"files_changed":2,"insertions":175,"deletions":0,"files":["jc/cli.py","jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/dmidecode.py","lines_changed":174}]}},{"commit":"f5627a45947e5e76e5f3e64d9b30099fe0b962a2","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"81ffdb25105c681c8ed12336d220a102b7f4215e","message":"remove shebang for Fedora packaging","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]}},{"commit":"4c00a99850cb6f69713be7c6ad9ffba11924d9b8","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"2bfcb45b28e2174a8bbc27237e619b5c232ccae8","message":"make cli.py executable","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":0}]}},{"commit":"ab0c10e791283affb227d0d5306701ba7fd29d13","message":"remove execute permissions","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["LICENSE.md","README.md"],"file_stats":[{"name":"LICENSE.md","lines_changed":0},{"name":"README.md","lines_changed":0}]}},{"commit":"2c1935115de03a28fe92674b04b2542b0eccb8fe","message":"Merge pull request #61 from kellyjonbrazil/dev"},{"commit":"d98e43dc78205d3224bfc1e67de2da3c5fb7ea9a","message":"add netstat item","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]}},{"commit":"9348988d646d9b9c9970c19e84f311554ae38e7b","message":"add netstat test for Fedora32","stats":{"files_changed":1,"insertions":12,"deletions":0,"files":["tests/test_netstat.py"],"file_stats":[{"name":"tests/test_netstat.py","lines_changed":12}]}},{"commit":"1285c664679c40b18327c89b85921a80b01f0191","message":"netstat with bluetooth section","stats":{"files_changed":2,"insertions":140,"deletions":0,"files":["tests/fixtures/fedora32/netstat.json","tests/fixtures/fedora32/netstat.out"],"file_stats":[{"name":"tests/fixtures/fedora32/netstat.json","lines_changed":1},{"name":"tests/fixtures/fedora32/netstat.out","lines_changed":139}]}},{"commit":"b7191bbc130e0f33d02c0a4819fa91ffff1599d3","message":"handle bluetooth section (ignore for now)","stats":{"files_changed":1,"insertions":14,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":15}]}},{"commit":"98b97509f7893cb95e9651ce9706db5c961aa997","message":"version bump","stats":{"files_changed":3,"insertions":6,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"2b2b570490f3834367a598579473001f45738e8a","message":"add tests for 'gone - no logout'","stats":{"files_changed":3,"insertions":21,"deletions":0,"files":["tests/fixtures/fedora32/last.json","tests/fixtures/fedora32/last.out","tests/test_last.py"],"file_stats":[{"name":"tests/fixtures/fedora32/last.json","lines_changed":1},{"name":"tests/fixtures/fedora32/last.out","lines_changed":8},{"name":"tests/test_last.py","lines_changed":12}]}},{"commit":"cce2d1ff298f2284c43c4534144329f3533a81ad","message":"add condition for 'gone - no logout'","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":6}]}},{"commit":"b79600c57249cbb65805caad2524cc2492342be6","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]}},{"commit":"140f1a85437745296b56976bef1b46514e323a4f","message":"test fixes for issue #60","stats":{"files_changed":7,"insertions":7,"deletions":7,"files":["tests/fixtures/centos-7.7/ls-R-newlines.json","tests/fixtures/centos-7.7/ls-R.json","tests/fixtures/centos-7.7/ls-glob.json","tests/fixtures/osx-10.14.6/ls-glob.json","tests/fixtures/ubuntu-18.04/ls-R-newlines.json","tests/fixtures/ubuntu-18.04/ls-R.json","tests/fixtures/ubuntu-18.04/ls-glob.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ls-R-newlines.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ls-R.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ls-glob.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-glob.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ls-R-newlines.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ls-R.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ls-glob.json","lines_changed":2}]}},{"commit":"e34657cfde6816ab7a7415d83580df0a1d98a5a6","message":"fix issue #60 that was skipping the first file in some instances using -R without -l","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]}},{"commit":"99070fa6073c4415a6faf8ca69dd6aa089af4062","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"2b46785b1f1281ee63df9159e36068f4607ad9b8","message":"add MIT license to vendorized IfconfigParser class","stats":{"files_changed":1,"insertions":25,"deletions":3,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":28}]}},{"commit":"c72562524b2b9aaca0be372bb24343158829ba5a","message":"fully remove tests from packaging","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"b7dd6441c7e3f54f8a260fceef49aae6816c7151","message":"version bump","stats":{"files_changed":2,"insertions":5,"deletions":1,"files":["changelog.txt","jc/cli.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"31fcc2f755ad86622cf51a75879b14d44f246300","message":"remove manifest.in - no longer needed due to removing tests","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["MANIFEST.in"],"file_stats":[{"name":"MANIFEST.in","lines_changed":1}]}},{"commit":"b391aa14bceffedb5a9c13f3f908923790edefc1","message":"add license_file to metadata","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["setup.cfg"],"file_stats":[{"name":"setup.cfg","lines_changed":2}]}},{"commit":"d3c45debbb6690acd341fbcc9b99d1ae4cf0a43c","message":"remove tests and add license file","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":5}]}},{"commit":"5b08469b874553744bd5c5b1fa6581f4dcffacd0","message":"Merge pull request #57 from kellyjonbrazil/dev"},{"commit":"4a77ec63a46554c84e646d31564230774ed87431","message":"add IfconfigParser class","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["docs/parsers/ifconfig.md"],"file_stats":[{"name":"docs/parsers/ifconfig.md","lines_changed":11}]}},{"commit":"d13606b6dc2c207be6dea89a2c3e713c18a574b8","message":"modify dependencies for easier packaging into Fedora","stats":{"files_changed":4,"insertions":7,"deletions":6,"files":["changelog.txt","jc/cli.py","requirements.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"requirements.txt","lines_changed":3},{"name":"setup.py","lines_changed":5}]}},{"commit":"05291c93bba1aa364ba1ac7f2508e24bb362a814","message":"vendorize ifconfig-parser module for easier packaging in Fedora","stats":{"files_changed":1,"insertions":198,"deletions":3,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":201}]}},{"commit":"8cf00a208eb8493300331e7361b72e4f9e3f140e","message":"change text to strings","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"06d73c88767a5b4d6003231c897c447ee5e1faa5","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"649c646ea25ac7f89900cffa8919df01671bd32d","message":"add brew install option","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]}},{"commit":"b7756d92501a7b8ba8e77d77d9d3718a58425beb","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"1cd2cd954c21e5caec333507bd81819c82d45b49","message":"remove references to homebrew/shim to allow tests to pass in homebrew packaging ci/cd","stats":{"files_changed":4,"insertions":2,"deletions":16,"files":["tests/fixtures/osx-10.11.6/du.json","tests/fixtures/osx-10.11.6/du.out","tests/fixtures/osx-10.14.6/du.json","tests/fixtures/osx-10.14.6/du.out"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/du.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/du.out","lines_changed":7},{"name":"tests/fixtures/osx-10.14.6/du.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/du.out","lines_changed":7}]}},{"commit":"72020b8da999ddca6f9ba82da235c9f42e4f4273","message":"move packages info to jc-packages github page","stats":{"files_changed":1,"insertions":2,"deletions":22,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":24}]}},{"commit":"cf9720b749e7fc8caed0d2f1f2b1727a22a156b6","message":"update install info","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]}},{"commit":"967b9db7f90a3c3a0352edde7f4455c5f5d45b18","message":"spelling","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":6}]}},{"commit":"bb3acb1182f4d509f9ddc7dfcffa4578e0a2bd5e","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"560c7f7e6d1f8a69ab026ddbff753d232ca1d00b","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"79b28417644e00b933f531374d2f7fe8051e61be","message":"add new binary package install info","stats":{"files_changed":1,"insertions":26,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":26}]}},{"commit":"a06a89cbd11026aa3910fadd1eff7fe388d02507","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"431bd969eb4809424fe99a02a7decb98bce9ea51","message":"use sys.exit(0) instead of exit()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]}},{"commit":"c87b722aec6e6964c516bbb8e80667ad7d9c6bc7","message":"spelling","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"3688b8b014a1cf753b2207fbf3ebf0292c3fd672","message":"Merge pull request #56 from kellyjonbrazil/dev"},{"commit":"07b8d9e0c0d723d93e6c652f5b6156c467c451c7","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"7454b53e395e9122c00d4cf06b1c2af109913d7a","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]}},{"commit":"3d6a76024de0f9dcf91a4ab49cabe461074114fb","message":"update with JC_COLORS info","stats":{"files_changed":1,"insertions":18,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":18}]}},{"commit":"421b9809575a8de00229af4b851739889638ac74","message":"JC_COLORS working","stats":{"files_changed":1,"insertions":18,"deletions":37,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":55}]}},{"commit":"4a22e27d6a80a988f4de17bce421110d6abb8867","message":"add set_env_colors function","stats":{"files_changed":1,"insertions":64,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":64}]}},{"commit":"99f7842dee0f79cf933fae185cf8b0ed7c8b210f","message":"fix brek on pipe error","stats":{"files_changed":3,"insertions":11,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":8},{"name":"setup.py","lines_changed":2}]}},{"commit":"7f869b4b187d70752207a7e74c13b858446f898f","message":"change colors to ansi and match jello style","stats":{"files_changed":3,"insertions":9,"deletions":11,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":15},{"name":"setup.py","lines_changed":2}]}},{"commit":"9665f4ee84680f3a8154b8a43ea668af2907782c","message":"add pypi badge","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]}},{"commit":"606904d48b1c7e0c19a940b5be0b564d1b5be6c8","message":"Merge pull request #53 from kellyjonbrazil/dev"},{"commit":"3f5279b97c386c736e0e2faa5c39d68ef89c46aa","message":"version bump to 1.10.1","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"f5ec21e6ac612566af93158fc3968b901322d04a","message":"use in instead of find()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_luf.py"],"file_stats":[{"name":"jc/parsers/systemctl_luf.py","lines_changed":4}]}},{"commit":"578a284465f014fe71ad6ac00bd41dc24ab2ced9","message":"use in instead of find()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_ls.py"],"file_stats":[{"name":"jc/parsers/systemctl_ls.py","lines_changed":4}]}},{"commit":"422e392d9d98a7864312fc7fbd7f45537b71acbe","message":"use in instead of find()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_lj.py"],"file_stats":[{"name":"jc/parsers/systemctl_lj.py","lines_changed":4}]}},{"commit":"54dfffd34a17d1194690142ac403391fc65bb85f","message":"use in instead of find()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl.py"],"file_stats":[{"name":"jc/parsers/systemctl.py","lines_changed":4}]}},{"commit":"cffba64d2b9165b44a8856665807111a2ad3a190","message":"use in and startswith() instead of find()","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":14}]}},{"commit":"56a0c12a59bb252d3b7d0929f9fb19b4d96a8437","message":"use in instead of find()","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/pip_list.py"],"file_stats":[{"name":"jc/parsers/pip_list.py","lines_changed":6}]}},{"commit":"c174d3de18923b2b03befb5a7dfcbd977a8e147e","message":"use in and startswith() instead of find()","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":14}]}},{"commit":"a9c59ef9fc1bb68c9d0d7beffbeb670baf5b1e3f","message":"fix logic to not for ' type ' in cleandata[0]","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/mount.py"],"file_stats":[{"name":"jc/parsers/mount.py","lines_changed":2}]}},{"commit":"abdb9b26732a6a71f5938d665b2ca43a381e1b33","message":"use in instead of find()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/mount.py"],"file_stats":[{"name":"jc/parsers/mount.py","lines_changed":4}]}},{"commit":"548aaab6262878d21f8b9539950cfad48638e35c","message":"remove old commented code","stats":{"files_changed":1,"insertions":1,"deletions":42,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":43}]}},{"commit":"20571c87ae9e1ca8a1f3120511910751420a35ac","message":"us in instead of find()","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":6}]}},{"commit":"19e49200de5c731f76b42e80388c5223e8097e39","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":2}]}},{"commit":"d32f5c67a91ede572c88e431b2ad0ce4d6c87dec","message":"use startswith() instead of find()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":4}]}},{"commit":"b83b626435c55d2aa63e56dd8f22603da59e7626","message":"use startswith() instead of find()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":4}]}},{"commit":"ab2c1b25ec5da5f2ba238868c4dfca95a44da30e","message":"use startswith() and in instead of find()","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/hosts.py"],"file_stats":[{"name":"jc/parsers/hosts.py","lines_changed":6}]}},{"commit":"f2d46313a4508f13656cdb360f83fdf4116cc7d7","message":"use startswith() instead of find()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/fstab.py"],"file_stats":[{"name":"jc/parsers/fstab.py","lines_changed":4}]}},{"commit":"87e4796a6c936793e2784346819c7033d59b91e4","message":"use in instead of .find()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":4}]}},{"commit":"0014a5c2f4c056c2683d6614a65d778b1f527932","message":"us startswith() and in instead of .find()","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab_u.py"],"file_stats":[{"name":"jc/parsers/crontab_u.py","lines_changed":6}]}},{"commit":"7af56e0dadab7d8b9538f3b7a550ad6dd1ac217d","message":"use startswith() and in instead of find()","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":6}]}},{"commit":"a5ae6e3c017b041f9079ff12455b7551ad204cb3","message":"use startswith() instead of find()","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":6}]}},{"commit":"fe1a0d1faf46f55ed2888ed0065f3f3144691ed8","message":"use in instead of .find()","stats":{"files_changed":1,"insertions":10,"deletions":9,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":19}]}},{"commit":"302f05cdda305e46e69b74d5b0096f64c17da637","message":"prettify style block","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]}},{"commit":"c0044be7b0b6dadcffb64cb88ad92bf653dd2b6b","message":"rename color grey to gray","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]}},{"commit":"01100788070b82b4b827ef356972fa9b8f737eeb","message":"update badge","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"42eacb45f8fdf8085c6231bf5297629c2ec97c22","message":"rename to Tests","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]}},{"commit":"a43e2e19916662d509883457c160d7f95f97ae12","message":"add -m option info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]}},{"commit":"c8b721d4f6e46a2db77e1140b9caeb3b403fef72","message":"version bump to 1.10.0","stats":{"files_changed":4,"insertions":9,"deletions":3,"files":["changelog.txt","jc/cli.py","requirements.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/cli.py","lines_changed":2},{"name":"requirements.txt","lines_changed":1},{"name":"setup.py","lines_changed":5}]}},{"commit":"d0bfddc3d9989444757d6668726c916e5363620b","message":"add color and -m monochrome option","stats":{"files_changed":1,"insertions":41,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":47}]}},{"commit":"6b925a16c87cf75bb30edfda38511e8f84a4f6d6","message":"add tests badge","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"89ebd9fc2271d2c76353d5707bfd4afb7dedc278","message":"add axfr info to schema","stats":{"files_changed":2,"insertions":20,"deletions":0,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":10},{"name":"jc/parsers/dig.py","lines_changed":10}]}},{"commit":"6b4ba662317629839aa62fbcfefb8ed3337c37ef","message":"Merge pull request #52 from kellyjonbrazil/dev"},{"commit":"5b697dc38141cdd47fcdd63bf295a80a7da86697","message":"add more dig tests","stats":{"files_changed":1,"insertions":72,"deletions":0,"files":["tests/test_dig.py"],"file_stats":[{"name":"tests/test_dig.py","lines_changed":72}]}},{"commit":"9ba73c95d1a528a9a92be4068805bb5aa027901e","message":"add tests","stats":{"files_changed":7,"insertions":215,"deletions":0,"files":["tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/centos-7.7/dig-axfr.out","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-axfr.out","tests/fixtures/ubuntu-18.04/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-axfr.out","tests/test_dig.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/dig-axfr.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/dig-axfr.out","lines_changed":60},{"name":"tests/fixtures/osx-10.14.6/dig-axfr.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig-axfr.out","lines_changed":59},{"name":"tests/fixtures/ubuntu-18.04/dig-axfr.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dig-axfr.out","lines_changed":57},{"name":"tests/test_dig.py","lines_changed":36}]}},{"commit":"93aa39044749c4c0ed749f62fb00fc1c76dc5af0","message":"version bump to v1.9.3","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"3cfb8945ddd83c00a720c44e2c1d97da0d8bad25","message":"use startswith() instead of find","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":18}]}},{"commit":"cd8d38f2a136c4f35efc020b3476d09e965b71f1","message":"add axfr support","stats":{"files_changed":1,"insertions":50,"deletions":1,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":51}]}},{"commit":"8ec8cd62944c59c462ab9f520c1dcfd14218b1ed","message":"Merge pull request #50 from kellyjonbrazil/dev"},{"commit":"c02811356153c2b4f8b2d7efb7f48bf8f7748068","message":"version bump to v1.9.2","stats":{"files_changed":3,"insertions":6,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":5},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"5f22e1c8031b808ef02ffe078408bd58cc76e570","message":"fix and test for osx arp entries without ifscope","stats":{"files_changed":3,"insertions":33,"deletions":0,"files":["tests/fixtures/osx-10.14.6/arp-a2.json","tests/fixtures/osx-10.14.6/arp-a2.out","tests/test_arp.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/arp-a2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/arp-a2.out","lines_changed":20},{"name":"tests/test_arp.py","lines_changed":12}]}},{"commit":"d3351787e5cabd064c19e6617e9535e501686404","message":"change osx detection","stats":{"files_changed":1,"insertions":10,"deletions":9,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":19}]}},{"commit":"e5bea9ae3b0a70b38f7da7dd9184343dbbd18887","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/file.py"],"file_stats":[{"name":"jc/parsers/file.py","lines_changed":2}]}},{"commit":"93c710abe9171568f61f65c4f84c040ffc24870c","message":"Merge pull request #49 from kellyjonbrazil/dev"},{"commit":"c29e7cfe5cc4b2151912c6f618137d1b6c39c7be","message":"version bump to 1.9.1","stats":{"files_changed":4,"insertions":9,"deletions":6,"files":["README.md","changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"cb5c1ba00dc0e02bf6ad6c40096d99e319fa6171","message":"add tests for fix to make the file parser splitting more robust","stats":{"files_changed":3,"insertions":101,"deletions":0,"files":["tests/fixtures/osx-10.14.6/file2.json","tests/fixtures/osx-10.14.6/file2.out","tests/test_file.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/file2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/file2.out","lines_changed":88},{"name":"tests/test_file.py","lines_changed":12}]}},{"commit":"9a012b94e1942a14bc6dae3fb967ef618819c77b","message":"make splitting more robust","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/file.py"],"file_stats":[{"name":"jc/parsers/file.py","lines_changed":2}]}},{"commit":"400f5a44ece280cb0097d806b78a9490d2905600","message":"Merge pull request #48 from kellyjonbrazil/dev"},{"commit":"a2ab5bab91ea980399df1afb9d8071fa3282d04e","message":"version bump to v1.9.0","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"fc8ab27361df3359b706125531b2643612d6996a","message":"bugfix for misaligned columns and additional test for ntpq #31","stats":{"files_changed":6,"insertions":93,"deletions":51,"files":["README.md","docs/parsers/ntpq.md","jc/parsers/ntpq.py","tests/fixtures/ubuntu-18.04/ntpq-p2.json","tests/fixtures/ubuntu-18.04/ntpq-p2.out","tests/test_ntpq.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"docs/parsers/ntpq.md","lines_changed":40},{"name":"jc/parsers/ntpq.py","lines_changed":59},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p2.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p2.out","lines_changed":24},{"name":"tests/test_ntpq.py","lines_changed":12}]}},{"commit":"59f19d33a5c6677ea756a9424fdb032b430511a2","message":"add file command tests for #41","stats":{"files_changed":7,"insertions":153,"deletions":0,"files":["tests/fixtures/centos-7.7/file.json","tests/fixtures/centos-7.7/file.out","tests/fixtures/osx-10.14.6/file.json","tests/fixtures/osx-10.14.6/file.out","tests/fixtures/ubuntu-18.04/file.json","tests/fixtures/ubuntu-18.04/file.out","tests/test_file.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/file.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/file.out","lines_changed":25},{"name":"tests/fixtures/osx-10.14.6/file.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/file.out","lines_changed":53},{"name":"tests/fixtures/ubuntu-18.04/file.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/file.out","lines_changed":20},{"name":"tests/test_file.py","lines_changed":52}]}},{"commit":"dfc96181159748d019419a2cba7aa9cb3b7a2a2c","message":"add file parser for issue #41","stats":{"files_changed":6,"insertions":260,"deletions":1,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/file.md","jc/cli.py","jc/parsers/file.py"],"file_stats":[{"name":"README.md","lines_changed":36},{"name":"changelog.txt","lines_changed":5},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/file.md","lines_changed":90},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/file.py","lines_changed":128}]}},{"commit":"8e02e5c75a11cf205299ee6f87b67f9b787cf55e","message":"fix issue with getting options with some commands #47","stats":{"files_changed":2,"insertions":6,"deletions":5,"files":["jc/cli.py","tests/test_cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8},{"name":"tests/test_cli.py","lines_changed":3}]}},{"commit":"970493ab9346a344b21be7614903ad81bc65a6e9","message":"add magic commands","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["jc/parsers/airport.py","jc/parsers/airport_s.py"],"file_stats":[{"name":"jc/parsers/airport.py","lines_changed":1},{"name":"jc/parsers/airport_s.py","lines_changed":1}]}},{"commit":"64d78956eb33ca0a2564fded3d12729ee036a915","message":"update acknowledgment","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]}},{"commit":"40c05346f4098f8eea14c42da07df3faa143587a","message":"re-adding optimizations from https://github.com/philippeitis","stats":{"files_changed":1,"insertions":12,"deletions":25,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":37}]}},{"commit":"e9b0bc1409a824a82dabd2479892b7d18bad8c3f","message":"doc update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/airport.py"],"file_stats":[{"name":"jc/parsers/airport.py","lines_changed":2}]}},{"commit":"798e6bb7d939176bb36771a6d41bd55403d583be","message":"tests passing for airport -s. issue #46","stats":{"files_changed":2,"insertions":29,"deletions":0,"files":["tests/fixtures/osx-10.14.6/airport-s.json","tests/test_airport_s.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/airport-s.json","lines_changed":1},{"name":"tests/test_airport_s.py","lines_changed":28}]}},{"commit":"12a370deed03ba42d7b7ebb410195ce5f32bb9c2","message":"add airport -s parser for issue #46","stats":{"files_changed":8,"insertions":372,"deletions":9,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/airport.md","docs/parsers/airport_s.md","jc/cli.py","jc/parsers/airport.py","jc/parsers/airport_s.py"],"file_stats":[{"name":"README.md","lines_changed":47},{"name":"changelog.txt","lines_changed":2},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/airport.md","lines_changed":4},{"name":"docs/parsers/airport_s.md","lines_changed":136},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/airport.py","lines_changed":5},{"name":"jc/parsers/airport_s.py","lines_changed":185}]}},{"commit":"553bfbe1a0dd866851ba7eca66e9295c2097ad86","message":"tests passing for airport -I. Issue #46","stats":{"files_changed":3,"insertions":40,"deletions":6,"files":["docs/parsers/airport.md","jc/parsers/airport.py","tests/test_airport.py"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":9},{"name":"jc/parsers/airport.py","lines_changed":9},{"name":"tests/test_airport.py","lines_changed":28}]}},{"commit":"52494321fcfe0dc7ee71d8d78210b3c10372a237","message":"fixes and docs for airport parser issue #46","stats":{"files_changed":5,"insertions":120,"deletions":15,"files":["README.md","docs/parsers/airport.md","jc/parsers/airport.py","tests/fixtures/osx-10.14.6/airport-I.json","tests/fixtures/osx-10.14.6/airport-I.out"],"file_stats":[{"name":"README.md","lines_changed":22},{"name":"docs/parsers/airport.md","lines_changed":48},{"name":"jc/parsers/airport.py","lines_changed":62},{"name":"tests/fixtures/osx-10.14.6/airport-I.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/airport-I.out","lines_changed":2}]}},{"commit":"c6c9e06496683d2dd3586d17085801c7e698d960","message":"added airport command parser","stats":{"files_changed":7,"insertions":196,"deletions":1,"files":["changelog.txt","docgen.sh","docs/parsers/airport.md","jc/cli.py","jc/parsers/airport.py","tests/fixtures/osx-10.14.6/airport-I.out","tests/fixtures/osx-10.14.6/airport-s.out"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/airport.md","lines_changed":64},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/airport.py","lines_changed":98},{"name":"tests/fixtures/osx-10.14.6/airport-I.out","lines_changed":15},{"name":"tests/fixtures/osx-10.14.6/airport-s.out","lines_changed":15}]}},{"commit":"e3a6c05a58a2451e70975d8fabf644c56603c73d","message":"timedatectl fixes, tests, and fixtures for issue #42","stats":{"files_changed":5,"insertions":64,"deletions":17,"files":["docs/parsers/timedatectl.md","jc/parsers/timedatectl.py","tests/fixtures/centos-7.7/timedatectl.json","tests/fixtures/ubuntu-18.04/timedatectl.json","tests/test_timedatectl.py"],"file_stats":[{"name":"docs/parsers/timedatectl.md","lines_changed":18},{"name":"jc/parsers/timedatectl.py","lines_changed":21},{"name":"tests/fixtures/centos-7.7/timedatectl.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/timedatectl.json","lines_changed":1},{"name":"tests/test_timedatectl.py","lines_changed":40}]}},{"commit":"391d06f68d1f45d33590d5407d3a5e4f723af717","message":"change selection_state to state","stats":{"files_changed":7,"insertions":35,"deletions":35,"files":["README.md","docs/parsers/ntpq.md","jc/parsers/ntpq.py","tests/fixtures/centos-7.7/ntpq-p.json","tests/fixtures/centos-7.7/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-p.json","tests/fixtures/ubuntu-18.04/ntpq-pn.json"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docs/parsers/ntpq.md","lines_changed":26},{"name":"jc/parsers/ntpq.py","lines_changed":32},{"name":"tests/fixtures/centos-7.7/ntpq-p.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ntpq-pn.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ntpq-pn.json","lines_changed":2}]}},{"commit":"99804ea06e0c70e3a82ddc7f9c7a42343374d700","message":"added timedatectl status parser","stats":{"files_changed":6,"insertions":222,"deletions":0,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/timedatectl.md","jc/cli.py","jc/parsers/timedatectl.py"],"file_stats":[{"name":"README.md","lines_changed":15},{"name":"changelog.txt","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/timedatectl.md","lines_changed":85},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/timedatectl.py","lines_changed":119}]}},{"commit":"51935deb2ad18e4ea3ca16954ce810354f6095a9","message":"timedatectl test fixtures","stats":{"files_changed":2,"insertions":21,"deletions":0,"files":["tests/fixtures/centos-7.7/timedatectl.out","tests/fixtures/ubuntu-18.04/timedatectl.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/timedatectl.out","lines_changed":14},{"name":"tests/fixtures/ubuntu-18.04/timedatectl.out","lines_changed":7}]}},{"commit":"b24d0c3a475b88d9ccf1a8fe29715ee60972fcad","message":"ntpq docs","stats":{"files_changed":2,"insertions":34,"deletions":2,"files":["README.md","jc/parsers/ntpq.py"],"file_stats":[{"name":"README.md","lines_changed":33},{"name":"jc/parsers/ntpq.py","lines_changed":3}]}},{"commit":"762a886d6fdf5c2ad21d81868d138fb32621ed1c","message":"add ntpq tests","stats":{"files_changed":8,"insertions":133,"deletions":0,"files":["tests/fixtures/centos-7.7/ntpq-p.json","tests/fixtures/centos-7.7/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-p.json","tests/fixtures/ubuntu-18.04/ntpq-p.out","tests/fixtures/ubuntu-18.04/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-pn.out","tests/fixtures/ubuntu-18.04/ntqp-p.out","tests/test_ntpq.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ntpq-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ntpq-pn.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-18.04/ntpq-pn.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ntpq-pn.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-18.04/ntqp-p.out","lines_changed":21},{"name":"tests/test_ntpq.py","lines_changed":66}]}},{"commit":"2c3e9ddfe47f56cd7edc2fdf6317f7ecec0b7918","message":"add ntpq parser for issue #31","stats":{"files_changed":7,"insertions":543,"deletions":0,"files":["changelog.txt","docgen.sh","docs/parsers/ntpq.md","jc/cli.py","jc/parsers/ntpq.py","tests/fixtures/centos-7.7/ntpq-p.out","tests/fixtures/centos-7.7/ntpq-pn.out"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ntpq.md","lines_changed":235},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/ntpq.py","lines_changed":291},{"name":"tests/fixtures/centos-7.7/ntpq-p.out","lines_changed":6},{"name":"tests/fixtures/centos-7.7/ntpq-pn.out","lines_changed":6}]}},{"commit":"c7cd2b63c8f24e9d17c458880fe401d8032395ab","message":"delete unused test file","stats":{"files_changed":1,"insertions":0,"deletions":91,"files":["tests/fixtures/generic/oscar_age_male.csv"],"file_stats":[{"name":"tests/fixtures/generic/oscar_age_male.csv","lines_changed":91}]}},{"commit":"f0528ea83112e71ff51c89be27fc9bbdfbbf1951","message":"Merge pull request #45 from kellyjonbrazil/dev"},{"commit":"5bc5596f604fb87dffbfdf44ce2395b16bf01297","message":"version bump to 1.8.1","stats":{"files_changed":4,"insertions":17,"deletions":4,"files":["changelog.txt","jc/cli.py","setup.py","tests/test_ls.py"],"file_stats":[{"name":"changelog.txt","lines_changed":5},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2},{"name":"tests/test_ls.py","lines_changed":12}]}},{"commit":"2c27ac46be803b583caf82c1765bd0c35cee8bc1","message":"add ls test fixtures","stats":{"files_changed":2,"insertions":2454,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-lR-empty-folder.json","tests/fixtures/osx-10.14.6/ls-lR-empty-folder.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ls-lR-empty-folder.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-lR-empty-folder.out","lines_changed":2453}]}},{"commit":"caad840153e40dc660a2d5e06a96f3451fef25f9","message":"Merge pull request #44 from philippeitis/patch-5"},{"commit":"65bd7e2904016141c1ed53cdd437865c66d7628e","message":"Merge pull request #1 from kellyjonbrazil/pr/44"},{"commit":"c3d7d7db12d4870fc4499e0e3445d85ae89f2aea","message":"removed whitespace","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"56053103625af6fb7fa749fc5bc3dbdc62fc223c","message":"added tests, removed os import, changed to 'assertEqual'","stats":{"files_changed":1,"insertions":11,"deletions":4,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":15}]}},{"commit":"17b6efe82e6a558353b011c543489eaaf3a6d3ac","message":"Create basic tests for generate_magic_commands()","stats":{"files_changed":1,"insertions":14,"deletions":0,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":14}]}},{"commit":"a032ae56ae7d247e00415267b65b2a8b80a3302e","message":"Pass args to generate_magic_command() to allow testing.","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]}},{"commit":"eab2f4b0566b4c76db661cbfa99a56a6bf8d6541","message":"Move core magic() logic into seperate function for testability, minor tweaks.","stats":{"files_changed":1,"insertions":33,"deletions":19,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":52}]}},{"commit":"aff86ae6c71abfe1cbdba5c574a5f3707292ec19","message":"reimpliment magic() based on the dictionary approach suggested by philippeitis","stats":{"files_changed":1,"insertions":29,"deletions":39,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":68}]}},{"commit":"7ece9ddc1a37551cdaaac50f37a48e6d98b18bf4","message":"version bump ls","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]}},{"commit":"7cd048e839a7cc8404fd5abc153a3d315c207819","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]}},{"commit":"1e22f610a33903e8525d35a18b1dcf760a93791e","message":"fix for osx - doesn't print 'total xx' line if empty directory (issue #40)","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]}},{"commit":"5249c972ae25e9b289a2667bf471aad5e58c70a9","message":"add to changelog","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":4}]}},{"commit":"fd45f856a050f6c56a7a6b50b97b3d8c4de28af0","message":"import jc.utils instead of jc","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":2}]}},{"commit":"c8ab40cd33b14a3a1937ecf64bb23e282f5bb921","message":"ignore .github folder","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"],"file_stats":[{"name":".gitignore","lines_changed":1}]}},{"commit":"b2c872925b37254dac74578c1803b4127f8411c4","message":"add utf-8 encoding for testing on Windows","stats":{"files_changed":20,"insertions":208,"deletions":220,"files":["tests/test_ls.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_passwd.py","tests/test_pip_list.py","tests/test_ps.py","tests/test_route.py","tests/test_shadow.py","tests/test_ss.py","tests/test_systemctl_lj.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py","tests/test_who.py","tests/test_xml.py","tests/test_yaml.py"],"file_stats":[{"name":"tests/test_ls.py","lines_changed":132},{"name":"tests/test_lsmod.py","lines_changed":8},{"name":"tests/test_lsof.py","lines_changed":16},{"name":"tests/test_mount.py","lines_changed":16},{"name":"tests/test_netstat.py","lines_changed":40},{"name":"tests/test_passwd.py","lines_changed":12},{"name":"tests/test_pip_list.py","lines_changed":20},{"name":"tests/test_ps.py","lines_changed":32},{"name":"tests/test_route.py","lines_changed":16},{"name":"tests/test_shadow.py","lines_changed":8},{"name":"tests/test_ss.py","lines_changed":8},{"name":"tests/test_systemctl_lj.py","lines_changed":16},{"name":"tests/test_systemctl_ls.py","lines_changed":8},{"name":"tests/test_systemctl_luf.py","lines_changed":8},{"name":"tests/test_uname.py","lines_changed":16},{"name":"tests/test_uptime.py","lines_changed":16},{"name":"tests/test_w.py","lines_changed":16},{"name":"tests/test_who.py","lines_changed":24},{"name":"tests/test_xml.py","lines_changed":8},{"name":"tests/test_yaml.py","lines_changed":8}]}},{"commit":"f48e229202f8ab1ebfa502ca57bb31cf673c7a62","message":"utf-8 open for windows tests","stats":{"files_changed":21,"insertions":192,"deletions":192,"files":["tests/test_arp.py","tests/test_blkid.py","tests/test_crontab.py","tests/test_crontab_u.py","tests/test_csv.py","tests/test_df.py","tests/test_dig.py","tests/test_du.py","tests/test_env.py","tests/test_free.py","tests/test_fstab.py","tests/test_group.py","tests/test_gshadow.py","tests/test_history.py","tests/test_hosts.py","tests/test_id.py","tests/test_ifconfig.py","tests/test_ini.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_last.py"],"file_stats":[{"name":"tests/test_arp.py","lines_changed":32},{"name":"tests/test_blkid.py","lines_changed":40},{"name":"tests/test_crontab.py","lines_changed":4},{"name":"tests/test_crontab_u.py","lines_changed":8},{"name":"tests/test_csv.py","lines_changed":36},{"name":"tests/test_df.py","lines_changed":32},{"name":"tests/test_dig.py","lines_changed":24},{"name":"tests/test_du.py","lines_changed":16},{"name":"tests/test_env.py","lines_changed":8},{"name":"tests/test_free.py","lines_changed":16},{"name":"tests/test_fstab.py","lines_changed":8},{"name":"tests/test_group.py","lines_changed":12},{"name":"tests/test_gshadow.py","lines_changed":8},{"name":"tests/test_history.py","lines_changed":8},{"name":"tests/test_hosts.py","lines_changed":8},{"name":"tests/test_id.py","lines_changed":8},{"name":"tests/test_ifconfig.py","lines_changed":24},{"name":"tests/test_ini.py","lines_changed":8},{"name":"tests/test_iptables.py","lines_changed":48},{"name":"tests/test_jobs.py","lines_changed":8},{"name":"tests/test_last.py","lines_changed":28}]}},{"commit":"799fec92c39b1ff0696c6ebb182c4bef66b86e56","message":"utf-8 for windows support","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["tests/test_pip_show.py","tests/test_systemctl.py"],"file_stats":[{"name":"tests/test_pip_show.py","lines_changed":16},{"name":"tests/test_systemctl.py","lines_changed":8}]}},{"commit":"87a41c2fcaa395f108b5a5126ed77f7cc7fe5d6d","message":"add utf-8 to open function","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["tests/test_lsblk.py","tests/test_stat.py"],"file_stats":[{"name":"tests/test_lsblk.py","lines_changed":16},{"name":"tests/test_stat.py","lines_changed":8}]}},{"commit":"7f85de0c46cda95d57b9677ba0ca3ea59690e502","message":"add windows-latest","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]}},{"commit":"13661b19934a74417713e98e3e1e4df6bb0f29ad","message":"Merge pull request #37 from philippeitis/continuous_integration"},{"commit":"51d5c3892d6ff1e2e6ac7c4f3e496e7d9ed4b6a7","message":"Remove Windows tests, due to lack of support.","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]}},{"commit":"e4eab4641ac15220f2787c5d27b443ab8c718b86","message":"Change line in blkid.py to trigger CI","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":3}]}},{"commit":"9b148e0ba37e18749d95608e1bac6c090ab83ee2","message":"Add requirements.txt","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["requirements.txt"],"file_stats":[{"name":"requirements.txt","lines_changed":3}]}},{"commit":"de28932650d5027e2781011f1243b89f053b241d","message":"Consolidate dictionary into creation, trigger CI","stats":{"files_changed":1,"insertions":7,"deletions":6,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":13}]}},{"commit":"5f798d603e461d2de5adf74662ba4d4b121f28f2","message":"version bump and ack to philippeitis","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":3}]}},{"commit":"a0757b2dd3fc0f3e26622941d93bd909dae0a1f7","message":"optimize line parsing","stats":{"files_changed":1,"insertions":1,"deletions":5,"files":["jc/parsers/foo.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":6}]}},{"commit":"498d51b4e802cb40cac58aae1eff1f723bbbd896","message":"Enable Continuous Integration with GitHub Actions.","stats":{"files_changed":1,"insertions":31,"deletions":0,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":31}]}},{"commit":"b06b6bae3f64f591c9075812dc1b632ef6d2da37","message":"Merge pull request #36 from philippeitis/patch-3"},{"commit":"b5eaff21372a58aefb66e5afc5e863db8355fee1","message":"Merge pull request #35 from kellyjonbrazil/revert-34-patch-3"},{"commit":"c01bcd3734382a0c388d9f4041fc888171ca7675","message":"Revert \"Simplify process() in history.py, avoid list allocation in parse()\"","stats":{"files_changed":1,"insertions":25,"deletions":12,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":37}]}},{"commit":"d75c4068caaf4adbe9a39fa452ae867421053673","message":"Merge pull request #34 from philippeitis/patch-3"},{"commit":"6aa2d5a3d26f9f00c3334928f6f0e501860433da","message":"Merge pull request #33 from philippeitis/patch-2"},{"commit":"065276805f0f2dd23a6382f0120ca07e9eae116f","message":"Simplify process() in history.py, avoid list allocation in parse()","stats":{"files_changed":1,"insertions":12,"deletions":25,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":37}]}},{"commit":"a63408c8cf3f99646be2b375f651d6cf417f7ae0","message":"Handle case where only options are passed.","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]}},{"commit":"69576f6bfae073196627a0a39b5ececb8666d25c","message":"minor sytax fixes","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6}]}},{"commit":"19845624e2996da4653efc2f312aceb514feaf5c","message":"Merge pull request #32 from philippeitis/patch-1"},{"commit":"22ff2964e9889587711e779ac24f8f8034212f5e","message":"Simplify main(), magic() methods.","stats":{"files_changed":1,"insertions":62,"deletions":75,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":137}]}},{"commit":"d96b3a65a98bc135d21d4feafc0a43317b5a11fa","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"4989445ef4bb8919d9b3b95e2fcee77ca7692aec","message":"Merge pull request #30 from kellyjonbrazil/dev"},{"commit":"6770892acd49aced225dbccf39290f33522c9001","message":"add release notes link","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"d4eba8740fc325756f3db96ab37a5383540cbeff","message":"release date 3/3","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]}},{"commit":"9f607605605e47990f97ccfd48fde19a14e036e7","message":"add group and gshadow tests","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["tests/test_group.py","tests/test_gshadow.py"],"file_stats":[{"name":"tests/test_group.py","lines_changed":52},{"name":"tests/test_gshadow.py","lines_changed":40}]}},{"commit":"0a8f8ac934f040141e6a4eec8cf7170e1ca73294","message":"add group and gshadow parsers","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]}},{"commit":"6ae24c82447bcff606e7027dd01b916293b49584","message":"add group and gshadow test fixtures","stats":{"files_changed":10,"insertions":274,"deletions":0,"files":["tests/fixtures/centos-7.7/group.json","tests/fixtures/centos-7.7/group.out","tests/fixtures/centos-7.7/gshadow.json","tests/fixtures/centos-7.7/gshadow.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/group.json","tests/fixtures/osx-10.14.6/group.out","tests/fixtures/ubuntu-18.04/group.json","tests/fixtures/ubuntu-18.04/group.out","tests/fixtures/ubuntu-18.04/gshadow.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/group.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/group.out","lines_changed":39},{"name":"tests/fixtures/centos-7.7/gshadow.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/gshadow.out","lines_changed":39},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":3},{"name":"tests/fixtures/osx-10.14.6/group.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/group.out","lines_changed":135},{"name":"tests/fixtures/ubuntu-18.04/group.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/group.out","lines_changed":53},{"name":"tests/fixtures/ubuntu-18.04/gshadow.json","lines_changed":1}]}},{"commit":"d3679082a8c5cff76eb7de67c33fe716a1402182","message":"add group and gshadow parsers","stats":{"files_changed":1,"insertions":64,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":64}]}},{"commit":"fb08b42dca135705a3759435335d95c898d47f60","message":"change 'group_list' to 'members'","stats":{"files_changed":2,"insertions":21,"deletions":21,"files":["docs/parsers/group.md","jc/parsers/group.py"],"file_stats":[{"name":"docs/parsers/group.md","lines_changed":18},{"name":"jc/parsers/group.py","lines_changed":24}]}},{"commit":"4aeaa9f42a88bf4e05c8780a35cc8c4d83c9b842","message":"add /etc/gshadow parser","stats":{"files_changed":5,"insertions":316,"deletions":0,"files":["docgen.sh","docs/parsers/gshadow.md","jc/cli.py","jc/parsers/gshadow.py","tests/fixtures/ubuntu-18.04/gshadow.out"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/gshadow.md","lines_changed":109},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/gshadow.py","lines_changed":152},{"name":"tests/fixtures/ubuntu-18.04/gshadow.out","lines_changed":53}]}},{"commit":"5f5693da048cb4739dc56500c672dc8fbccaaf32","message":"spelling fix","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["docs/parsers/csv.md"],"file_stats":[{"name":"docs/parsers/csv.md","lines_changed":3}]}},{"commit":"5eb0f61727f92a84fb3620e13db072167ef552ef","message":"add /etc/group file parser","stats":{"files_changed":4,"insertions":333,"deletions":0,"files":["docgen.sh","docs/parsers/group.md","jc/cli.py","jc/parsers/group.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/group.md","lines_changed":141},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/group.py","lines_changed":190}]}},{"commit":"958e998991b1cc61dc1dc341b90cd53f4691cd43","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/csv.py"],"file_stats":[{"name":"jc/parsers/csv.py","lines_changed":4}]}},{"commit":"b78c1509f67fb76d17ac97193a2851d8d9e17f62","message":"try/except dialect detection","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/csv.py"],"file_stats":[{"name":"jc/parsers/csv.py","lines_changed":10}]}},{"commit":"ce184d4d57faa3f1bca5bcaa02da7a5a5d995eb3","message":"add csv parser tests","stats":{"files_changed":20,"insertions":24054,"deletions":0,"files":["tests/fixtures/generic/csv-biostats.csv","tests/fixtures/generic/csv-biostats.json","tests/fixtures/generic/csv-cities.csv","tests/fixtures/generic/csv-cities.json","tests/fixtures/generic/csv-deniro.csv","tests/fixtures/generic/csv-deniro.json","tests/fixtures/generic/csv-example.csv","tests/fixtures/generic/csv-example.json","tests/fixtures/generic/csv-flyrna.json","tests/fixtures/generic/csv-flyrna.tsv","tests/fixtures/generic/csv-flyrna2.json","tests/fixtures/generic/csv-flyrna2.tsv","tests/fixtures/generic/csv-homes-pipe.csv","tests/fixtures/generic/csv-homes-pipe.json","tests/fixtures/generic/csv-homes.csv","tests/fixtures/generic/csv-homes.json","tests/fixtures/generic/csv-insurance.csv","tests/fixtures/generic/csv-insurance.json","tests/fixtures/generic/oscar_age_male.csv","tests/test_csv.py"],"file_stats":[{"name":"tests/fixtures/generic/csv-biostats.csv","lines_changed":20},{"name":"tests/fixtures/generic/csv-biostats.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-cities.csv","lines_changed":130},{"name":"tests/fixtures/generic/csv-cities.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-deniro.csv","lines_changed":89},{"name":"tests/fixtures/generic/csv-deniro.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-example.csv","lines_changed":2},{"name":"tests/fixtures/generic/csv-example.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna.tsv","lines_changed":11767},{"name":"tests/fixtures/generic/csv-flyrna2.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna2.tsv","lines_changed":11767},{"name":"tests/fixtures/generic/csv-homes-pipe.csv","lines_changed":3},{"name":"tests/fixtures/generic/csv-homes-pipe.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-homes.csv","lines_changed":51},{"name":"tests/fixtures/generic/csv-homes.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-insurance.csv","lines_changed":1},{"name":"tests/fixtures/generic/csv-insurance.json","lines_changed":1},{"name":"tests/fixtures/generic/oscar_age_male.csv","lines_changed":91},{"name":"tests/test_csv.py","lines_changed":124}]}},{"commit":"b4c3714ced9ee5cc6a7ef0c59a43cf85e1cb9824","message":"removed [OPTIONS] PARSER syntax. still works but prefer the PARSER [OPTIONS] syntax for better performance","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]}},{"commit":"5b7dfa043864f1a3f34aa4ef5c6554a2dfe185f9","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]}},{"commit":"391a3884765780497dc34e0e9938ff5032c81291","message":"doc update","stats":{"files_changed":2,"insertions":49,"deletions":0,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":48},{"name":"changelog.txt","lines_changed":1}]}},{"commit":"d9c4e2ed4c0f908f4b63c2376b53ddfd32a0fae1","message":"add csv file parser","stats":{"files_changed":4,"insertions":241,"deletions":0,"files":["docgen.sh","docs/parsers/csv.md","jc/cli.py","jc/parsers/csv.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/csv.md","lines_changed":104},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/csv.py","lines_changed":135}]}},{"commit":"0c42db38b102987629e40cee2716b826161e6e94","message":"doc update","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/who.md","jc/parsers/who.py"],"file_stats":[{"name":"docs/parsers/who.md","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":2}]}},{"commit":"2f9be8bf33f8be5651d06da9d316f7894606df19","message":"simplify usage","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]}},{"commit":"e8c00155e861b9eedfdf37a22912271bec581d62","message":"add -b to warning message","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]}},{"commit":"cc88fdd9ee3951d7ef2aa881cc12f0b7f96aef86","message":"update example","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]}},{"commit":"d9de11ef1d846a9625dad0adb962b864404c90c1","message":"add another who example","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":16}]}},{"commit":"0ceda97d0968b67b70cdbb68f7a62657e79c9935","message":"who parser tests","stats":{"files_changed":1,"insertions":88,"deletions":0,"files":["tests/test_who.py"],"file_stats":[{"name":"tests/test_who.py","lines_changed":88}]}},{"commit":"d0dec92ba84640ddc40da7c6faa6568b76757e04","message":"add who test fixtures","stats":{"files_changed":12,"insertions":36,"deletions":0,"files":["tests/fixtures/centos-7.7/who-a.json","tests/fixtures/centos-7.7/who-a.out","tests/fixtures/centos-7.7/who.json","tests/fixtures/centos-7.7/who.out","tests/fixtures/osx-10.14.6/who-a.json","tests/fixtures/osx-10.14.6/who-a.out","tests/fixtures/osx-10.14.6/who.json","tests/fixtures/osx-10.14.6/who.out","tests/fixtures/ubuntu-18.04/who-a.json","tests/fixtures/ubuntu-18.04/who-a.out","tests/fixtures/ubuntu-18.04/who.json","tests/fixtures/ubuntu-18.04/who.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/who-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/who-a.out","lines_changed":6},{"name":"tests/fixtures/centos-7.7/who.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/who.out","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/who-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/who-a.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/who.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/who.out","lines_changed":4},{"name":"tests/fixtures/ubuntu-18.04/who-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/who-a.out","lines_changed":6},{"name":"tests/fixtures/ubuntu-18.04/who.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/who.out","lines_changed":3}]}},{"commit":"d420c008d8aaa0879fa5a3f236d81acb506376c3","message":"fix for pts lines with no user info","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/who.py","lines_changed":9}]}},{"commit":"f0b32db4333477e22cc40de62cf026a6a7aa2eb6","message":"who doc update","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","docs/parsers/who.md"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docs/parsers/who.md","lines_changed":8}]}},{"commit":"bc838eda591473d32b11a885e60ef653925739d0","message":"fix output for non-extended","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/who.py","lines_changed":9}]}},{"commit":"afe55b6af07b74816d33d9555ffaa1c1921dd27a","message":"add who parser","stats":{"files_changed":1,"insertions":46,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":46}]}},{"commit":"dd3a3ac302d7b35beef1181e74aed0faf96fd3e4","message":"doc update and process pid integers","stats":{"files_changed":4,"insertions":255,"deletions":9,"files":["changelog.txt","docgen.sh","docs/parsers/who.md","jc/parsers/who.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/who.md","lines_changed":150},{"name":"jc/parsers/who.py","lines_changed":112}]}},{"commit":"f9982a79474c1838f37fc0ff88437980b228d7a1","message":"fixes for from and comment fields","stats":{"files_changed":1,"insertions":11,"deletions":2,"files":["jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/who.py","lines_changed":13}]}},{"commit":"07c1be9e9ad9f62cf76c23788152de8f3530ee16","message":"add who command parser","stats":{"files_changed":2,"insertions":170,"deletions":0,"files":["jc/cli.py","jc/parsers/who.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/who.py","lines_changed":169}]}},{"commit":"f832b88755bfbd3878ec402e603180e6825279be","message":"add passwd and shadow tests","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["tests/test_passwd.py","tests/test_shadow.py"],"file_stats":[{"name":"tests/test_passwd.py","lines_changed":52},{"name":"tests/test_shadow.py","lines_changed":40}]}},{"commit":"0fac757efca41db062b2f65acc727963c5fb353c","message":"add passwd and shadow parsers","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]}},{"commit":"fc15742065531152f3d5895042eeb806e33a192a","message":"passwd and shadow test fixtures","stats":{"files_changed":10,"insertions":215,"deletions":0,"files":["tests/fixtures/centos-7.7/passwd.json","tests/fixtures/centos-7.7/passwd.out","tests/fixtures/centos-7.7/shadow.json","tests/fixtures/centos-7.7/shadow.out","tests/fixtures/osx-10.14.6/passwd.json","tests/fixtures/osx-10.14.6/passwd.out","tests/fixtures/ubuntu-18.04/passwd.json","tests/fixtures/ubuntu-18.04/passwd.out","tests/fixtures/ubuntu-18.04/shadow.json","tests/fixtures/ubuntu-18.04/shadow.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/passwd.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/passwd.out","lines_changed":21},{"name":"tests/fixtures/centos-7.7/shadow.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/shadow.out","lines_changed":21},{"name":"tests/fixtures/osx-10.14.6/passwd.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/passwd.out","lines_changed":108},{"name":"tests/fixtures/ubuntu-18.04/passwd.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/passwd.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/shadow.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/shadow.out","lines_changed":30}]}},{"commit":"6f2466a1319eaa4256ae7a2a0f23b3ff37882d37","message":"update readme with /etc/passwd and /etc/shadow file parsers","stats":{"files_changed":1,"insertions":73,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":73}]}},{"commit":"4b90e22f0a9c6790bca62c8314945a7ffc6e267b","message":"doc update","stats":{"files_changed":2,"insertions":137,"deletions":9,"files":["docs/parsers/shadow.md","jc/parsers/shadow.py"],"file_stats":[{"name":"docs/parsers/shadow.md","lines_changed":72},{"name":"jc/parsers/shadow.py","lines_changed":74}]}},{"commit":"c4935687853fb3b079ae42614793cdafe68e124e","message":"doc fix","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/passwd.md","jc/parsers/passwd.py"],"file_stats":[{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":2}]}},{"commit":"1cdf004b7728901dc137e57b0c8994edfdd6d417","message":"add /etc/shadow parser","stats":{"files_changed":4,"insertions":190,"deletions":0,"files":["docgen.sh","docs/parsers/shadow.md","jc/cli.py","jc/parsers/shadow.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/shadow.md","lines_changed":69},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/shadow.py","lines_changed":119}]}},{"commit":"a4ea50426184d30cbe849a8f80bfd5c975075c9e","message":"add /etc/passwd parser","stats":{"files_changed":4,"insertions":303,"deletions":0,"files":["docgen.sh","docs/parsers/passwd.md","jc/cli.py","jc/parsers/passwd.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/passwd.md","lines_changed":126},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/passwd.py","lines_changed":175}]}},{"commit":"4c2c234c3bf68d1aac66bd4d1f22b9f97e99128d","message":"add last and lastb tests","stats":{"files_changed":16,"insertions":673,"deletions":0,"files":["tests/fixtures/centos-7.7/last-w.json","tests/fixtures/centos-7.7/last-w.out","tests/fixtures/centos-7.7/last.json","tests/fixtures/centos-7.7/last.out","tests/fixtures/centos-7.7/lastb.json","tests/fixtures/centos-7.7/lastb.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/last.json","tests/fixtures/osx-10.14.6/last.out","tests/fixtures/ubuntu-18.04/last-w.json","tests/fixtures/ubuntu-18.04/last-w.out","tests/fixtures/ubuntu-18.04/last.json","tests/fixtures/ubuntu-18.04/last.out","tests/fixtures/ubuntu-18.04/lastb.json","tests/fixtures/ubuntu-18.04/lastb.out","tests/test_last.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/last-w.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/last-w.out","lines_changed":69},{"name":"tests/fixtures/centos-7.7/last.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/last.out","lines_changed":69},{"name":"tests/fixtures/centos-7.7/lastb.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lastb.out","lines_changed":6},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":4},{"name":"tests/fixtures/osx-10.14.6/last.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/last.out","lines_changed":383},{"name":"tests/fixtures/ubuntu-18.04/last-w.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/last-w.out","lines_changed":16},{"name":"tests/fixtures/ubuntu-18.04/last.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/last.out","lines_changed":16},{"name":"tests/fixtures/ubuntu-18.04/lastb.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lastb.out","lines_changed":3},{"name":"tests/test_last.py","lines_changed":100}]}},{"commit":"3d4c0f3e89dab6496ff74df350e3238d6625933c","message":"add blkid tests","stats":{"files_changed":22,"insertions":285,"deletions":0,"files":["tests/fixtures/centos-7.7/blkid-ip-multi.json","tests/fixtures/centos-7.7/blkid-ip-multi.out","tests/fixtures/centos-7.7/blkid-ip-udev-multi.json","tests/fixtures/centos-7.7/blkid-ip-udev-multi.out","tests/fixtures/centos-7.7/blkid-ip-udev.json","tests/fixtures/centos-7.7/blkid-ip-udev.out","tests/fixtures/centos-7.7/blkid-sda2.json","tests/fixtures/centos-7.7/blkid-sda2.out","tests/fixtures/centos-7.7/blkid.json","tests/fixtures/centos-7.7/blkid.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/blkid-ip-multi.json","tests/fixtures/ubuntu-18.04/blkid-ip-multi.out",".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.json",".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.out","tests/fixtures/ubuntu-18.04/blkid-ip-udev.json","tests/fixtures/ubuntu-18.04/blkid-ip-udev.out","tests/fixtures/ubuntu-18.04/blkid-sda2.json","tests/fixtures/ubuntu-18.04/blkid-sda2.out","tests/fixtures/ubuntu-18.04/blkid.json","tests/fixtures/ubuntu-18.04/blkid.out","tests/test_blkid.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/blkid-ip-multi.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid-ip-multi.out","lines_changed":29},{"name":"tests/fixtures/centos-7.7/blkid-ip-udev-multi.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid-ip-udev-multi.out","lines_changed":29},{"name":"tests/fixtures/centos-7.7/blkid-ip-udev.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid-ip-udev.out","lines_changed":14},{"name":"tests/fixtures/centos-7.7/blkid-sda2.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid-sda2.out","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid.out","lines_changed":4},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":6},{"name":"tests/fixtures/ubuntu-18.04/blkid-ip-multi.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid-ip-multi.out","lines_changed":2},{"name":".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.json","lines_changed":1},{"name":".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/blkid-ip-udev.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid-ip-udev.out","lines_changed":12},{"name":"tests/fixtures/ubuntu-18.04/blkid-sda2.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid-sda2.out","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid.out","lines_changed":15},{"name":"tests/test_blkid.py","lines_changed":136}]}},{"commit":"52fad02903468c05d2422a340ad8dbcdf18ed475","message":"doc update","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":12},{"name":"jc/parsers/ls.py","lines_changed":12}]}},{"commit":"9dcabc057c40e345971a08474b5b886e6b60a8de","message":"support multi device udev output","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":10}]}},{"commit":"db8c1079ddc25922ab6a20d0f71fb19af38f8092","message":"use maxsplit=1 in case there are multiple '=' delimiters","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":8}]}},{"commit":"8f954673abdbbd4d9b9da3eacc61b335b4909f89","message":"use shlex split for values within quotations that have spaces","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":5}]}},{"commit":"79522d1c7dd4dec15b75b06dda002752f7d97e36","message":"doc fixes","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":5}]}},{"commit":"a18bf030794efef125c70a32fe82855e47649b32","message":"use raw strings for regular expressions","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/parsers/last.py","jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":12}]}},{"commit":"c02b6b5d827d26b43db0a3457124714aa2dbbc98","message":"doc updates","stats":{"files_changed":3,"insertions":81,"deletions":1,"files":["README.md","changelog.txt","setup.py"],"file_stats":[{"name":"README.md","lines_changed":79},{"name":"changelog.txt","lines_changed":1},{"name":"setup.py","lines_changed":2}]}},{"commit":"f99b4232848b0d868804acc4125836bfcf475bba","message":"doc update","stats":{"files_changed":2,"insertions":134,"deletions":29,"files":["docs/parsers/blkid.md","jc/parsers/blkid.py"],"file_stats":[{"name":"docs/parsers/blkid.md","lines_changed":115},{"name":"jc/parsers/blkid.py","lines_changed":48}]}},{"commit":"d7d9d45d4fba89e74f7490c463eb26bf20a5d127","message":"add missing comma","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":2}]}},{"commit":"90065ec0cdc8c5abc13bc0027f63658dacf3cfb2","message":"add more integers","stats":{"files_changed":1,"insertions":31,"deletions":26,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":57}]}},{"commit":"51157ebb867a48332c768bf3086614944aebdb62","message":"another devname fix","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":4}]}},{"commit":"96d95c79ca0938e326f55f858f8153df9cb49e44","message":"devname fix","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":6}]}},{"commit":"e5da34c23306463e8707b15676db0ca53bf66757","message":"check if devname key exists before renaming","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":3}]}},{"commit":"f09d657f7728242947db3dc63ff6779d08c37866","message":"rename devname to device","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":5}]}},{"commit":"0f4b0189f54dc0b3622cd407c5565e53ea111379","message":"process integer values","stats":{"files_changed":1,"insertions":35,"deletions":3,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":38}]}},{"commit":"4666042abb3142e2cfb518db9ffe22d9e608e090","message":"add blkid parser","stats":{"files_changed":4,"insertions":216,"deletions":0,"files":["docgen.sh","docs/parsers/blkid.md","jc/cli.py","jc/parsers/blkid.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/blkid.md","lines_changed":83},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/blkid.py","lines_changed":131}]}},{"commit":"027d544c2bb778adc0ee9463832f19b10e099a0a","message":"add last and lastb parser","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]}},{"commit":"f1967d0138d27bde864c2400aa75baa8a39bbfde","message":"system_boot fix","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":3}]}},{"commit":"c1d896027dd1ce021e048b3e77eab24ff59d08bd","message":"fix system_boot tty","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":3}]}},{"commit":"5c2d2a66187d32d62b31b7c7f13e502fdb7f9635","message":"process function and docs","stats":{"files_changed":3,"insertions":190,"deletions":6,"files":["docgen.sh","docs/parsers/last.md","jc/parsers/last.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/last.md","lines_changed":118},{"name":"jc/parsers/last.py","lines_changed":77}]}},{"commit":"997b269b0b7e53a456e2a0bd997ead6c2ae843bc","message":"btmp fix","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":3}]}},{"commit":"61257e7525c25827cb8057ed5c612e54ea9b9637","message":"add last and lastb parser","stats":{"files_changed":2,"insertions":119,"deletions":1,"files":["jc/cli.py","jc/parsers/last.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/last.py","lines_changed":117}]}},{"commit":"53ee2c36310cb84390ef96644aee6871769151c9","message":"Merge pull request #29 from kellyjonbrazil/dev"},{"commit":"8bfa0bddec9ff1c21972019467dcf5738ab3afd2","message":"version bump to 1.7.5","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"ad61e6bc81177a2add7d052bf1ddec5f1b3f2976","message":"add ls tests for filenames with newline characters","stats":{"files_changed":26,"insertions":598,"deletions":133,"files":["tests/fixtures/centos-7.7/ls-R-newlines.json","tests/fixtures/centos-7.7/ls-R-newlines.out","tests/fixtures/centos-7.7/ls-l-newlines.json","tests/fixtures/centos-7.7/ls-l-newlines.out","tests/fixtures/centos-7.7/ls-lR-newlines.json","tests/fixtures/centos-7.7/ls-lR-newlines.out","tests/fixtures/centos-7.7/ls-newlines.json","tests/fixtures/centos-7.7/ls-newlines.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/ls-R-newlines.json","tests/fixtures/osx-10.14.6/ls-R-newlines.out","tests/fixtures/osx-10.14.6/ls-l-newlines.json","tests/fixtures/osx-10.14.6/ls-l-newlines.out","tests/fixtures/osx-10.14.6/ls-lR-newlines.json","tests/fixtures/osx-10.14.6/ls-lR-newlines.out","tests/fixtures/osx-10.14.6/ls-newlines.json","tests/fixtures/osx-10.14.6/ls-newlines.out","tests/fixtures/ubuntu-18.04/ls-R-newlines.json","tests/fixtures/ubuntu-18.04/ls-R-newlines.out","tests/fixtures/ubuntu-18.04/ls-l-newlines.json","tests/fixtures/ubuntu-18.04/ls-l-newlines.out","tests/fixtures/ubuntu-18.04/ls-lR-newlines.json","tests/fixtures/ubuntu-18.04/ls-lR-newlines.out","tests/fixtures/ubuntu-18.04/ls-newlines.json","tests/fixtures/ubuntu-18.04/ls-newlines.out","tests/test_ls.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ls-R-newlines.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-R-newlines.out","lines_changed":43},{"name":"tests/fixtures/centos-7.7/ls-l-newlines.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-l-newlines.out","lines_changed":34},{"name":"tests/fixtures/centos-7.7/ls-lR-newlines.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-lR-newlines.out","lines_changed":45},{"name":"tests/fixtures/centos-7.7/ls-newlines.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-newlines.out","lines_changed":33},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":15},{"name":"tests/fixtures/osx-10.14.6/ls-R-newlines.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-R-newlines.out","lines_changed":36},{"name":"tests/fixtures/osx-10.14.6/ls-l-newlines.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-l-newlines.out","lines_changed":34},{"name":"tests/fixtures/osx-10.14.6/ls-lR-newlines.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-lR-newlines.out","lines_changed":38},{"name":"tests/fixtures/osx-10.14.6/ls-newlines.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-newlines.out","lines_changed":148},{"name":"tests/fixtures/ubuntu-18.04/ls-R-newlines.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-R-newlines.out","lines_changed":40},{"name":"tests/fixtures/ubuntu-18.04/ls-l-newlines.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-l-newlines.out","lines_changed":34},{"name":"tests/fixtures/ubuntu-18.04/ls-lR-newlines.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-lR-newlines.out","lines_changed":42},{"name":"tests/fixtures/ubuntu-18.04/ls-newlines.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-newlines.out","lines_changed":33},{"name":"tests/test_ls.py","lines_changed":144}]}},{"commit":"873b5ba8acf599d083d6031b818d5fca83cbca9e","message":"move examples to bottom","stats":{"files_changed":1,"insertions":27,"deletions":31,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":58}]}},{"commit":"6ae50054e2e8c7ca730013b43062eedc230c0ad4","message":"readme update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"22a35f41bf9c404d3532611f5929143d04b10010","message":"move variables to top","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":10}]}},{"commit":"961696c963215a9dab56113ff89f21a6e9739df6","message":"add a warning if newlines are detected in naked ls","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]}},{"commit":"c7b7f1a5dcf77a1f4c23ef6bbf5683fd1a055f72","message":"fix for files with newlines in naked ls","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]}},{"commit":"b5a0d650b128d8af81bb14dd5d007349529cb66f","message":"ls output with newlines","stats":{"files_changed":1,"insertions":151,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-newlines.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ls-newlines.out","lines_changed":151}]}},{"commit":"573b27946474276592ee7494689ce9a88f5a05f7","message":"fixup for filenames that start with a newline character","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":6}]}},{"commit":"116e07f1614b4a45eb58ffcfe20b5efa71c473a8","message":"fixes for multiple consecutive newlines and trailing newlines in filenames","stats":{"files_changed":1,"insertions":6,"deletions":7,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":13}]}},{"commit":"964868c8aff99edf37b0db41c7d16f8b84ac4704","message":"add support for newlines in filenames (only with ls -l)","stats":{"files_changed":2,"insertions":21,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":20}]}},{"commit":"c8dac32df8102c2b782e87d55bb95ca2d9490185","message":"readme update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"72a0016bd833699c3819baa899f335f75b8c1943","message":"use link to anchor for Parsers","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"2ad316743460bb6620e7ede251e1dc2739b073fa","message":"update doc url","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"ddabfaa05c63f886b17e5b4d37cd83fcfdb9b221","message":"Merge pull request #25 from kellyjonbrazil/dev"},{"commit":"f857523ca756864211b6b18af5a8886e5db200bb","message":"bump to version 1.7.4","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"00d53858e820f00ba015bc25629100c8e5495221","message":"add note about aliases not being supported","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"c008167e660929a91606bb96498cdc113e815f7e","message":"add time-style=full-iso option to doc","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":1},{"name":"jc/parsers/ls.py","lines_changed":1}]}},{"commit":"102344a041e9e0aff8b6d9db1873ba1064f7e895","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]}},{"commit":"c865298ef3613fe6ce17f41c15209a69940af1ce","message":"remove unnecessary enumerate in for loop","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":3}]}},{"commit":"6ac03faf939bcda8930a48a5e832b557813e2129","message":"Revert \"add ubuntu and centos default ls aliases to magic_commands\"","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]}},{"commit":"49c2701743706b6cbf0e52b2c7f275e301315189","message":"add ubuntu and centos default ls aliases to magic_commands","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]}},{"commit":"d1a271b08e64b42be8cec11377b0e18435a0caec","message":"add new ls tests for recursive and multiple directories with glob","stats":{"files_changed":21,"insertions":35333,"deletions":1374,"files":["tests/fixtures/centos-7.7/ls-R.json","tests/fixtures/centos-7.7/ls-R.out","tests/fixtures/centos-7.7/ls-alR.json","tests/fixtures/centos-7.7/ls-alR.out","tests/fixtures/centos-7.7/ls-glob.json","tests/fixtures/centos-7.7/ls-glob.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/ls-R.json","tests/fixtures/osx-10.14.6/ls-R.out","tests/fixtures/osx-10.14.6/ls-alR.json","tests/fixtures/osx-10.14.6/ls-alR.out","tests/fixtures/osx-10.14.6/ls-glob.json","tests/fixtures/osx-10.14.6/ls-glob.out","tests/fixtures/ubuntu-18.04/ls-R.json","tests/fixtures/ubuntu-18.04/ls-R.out","tests/fixtures/ubuntu-18.04/ls-alR.json","tests/fixtures/ubuntu-18.04/ls-alR.out","tests/fixtures/ubuntu-18.04/ls-glob.json","tests/fixtures/ubuntu-18.04/ls-glob.out","tests/fixtures/ubuntu-18.04/ls-lR.out","tests/test_ls.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ls-R.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-R.out","lines_changed":5089},{"name":"tests/fixtures/centos-7.7/ls-alR.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-alR.out","lines_changed":4997},{"name":"tests/fixtures/centos-7.7/ls-glob.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-glob.out","lines_changed":1919},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":5},{"name":"tests/fixtures/osx-10.14.6/ls-R.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-R.out","lines_changed":5018},{"name":"tests/fixtures/osx-10.14.6/ls-alR.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-alR.out","lines_changed":4997},{"name":"tests/fixtures/osx-10.14.6/ls-glob.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-glob.out","lines_changed":1831},{"name":"tests/fixtures/ubuntu-18.04/ls-R.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-R.out","lines_changed":5639},{"name":"tests/fixtures/ubuntu-18.04/ls-alR.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-alR.out","lines_changed":5026},{"name":"tests/fixtures/ubuntu-18.04/ls-glob.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-glob.out","lines_changed":1357},{"name":"tests/fixtures/ubuntu-18.04/ls-lR.out","lines_changed":712},{"name":"tests/test_ls.py","lines_changed":108}]}},{"commit":"7388ad19b9d252d3e66659e4bc37171cef2a9748","message":"bump to v1.8.0","stats":{"files_changed":4,"insertions":6,"deletions":4,"files":["docs/parsers/ls.md","jc/cli.py","jc/parsers/ls.py","setup.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"setup.py","lines_changed":2}]}},{"commit":"2e63cb5fadd032c7cb54a618e8b374ee853abcca","message":"version bump ls to 1.1","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]}},{"commit":"e7f14d02b12c7dcba309f2d28a0f171769d1ba37","message":"update ls to allow multi directory (glob and -R). Adds 'parent' key if found","stats":{"files_changed":3,"insertions":1438,"deletions":8,"files":["jc/parsers/ls.py","tests/fixtures/ubuntu-18.04/ls-R.out","tests/fixtures/ubuntu-18.04/ls-lR.out"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":48},{"name":"tests/fixtures/ubuntu-18.04/ls-R.out","lines_changed":686},{"name":"tests/fixtures/ubuntu-18.04/ls-lR.out","lines_changed":712}]}},{"commit":"873771d05ab0b77163c95d2c37e11edf38451832","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"d7de122e36e0698e00f321fbac8dc0b543cf9e8a","message":"prettify link","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"4ef0434f536c6658ddc2b48a3db113df2fd26000","message":"formatting update","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":6}]}},{"commit":"1aa2c9925996f2358b6272547db755ec3098a8a7","message":"removed history from magic syntax","stats":{"files_changed":2,"insertions":1,"deletions":2,"files":["README.md","jc/parsers/history.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":1}]}},{"commit":"c2450b27b079b02ed3f4ece9e36547f01cd4b139","message":"Merge pull request #22 from kellyjonbrazil/dev"},{"commit":"14d6d8b84f0ddeff984aff486e2e697a91ac6fb6","message":"version bump to 1.7.3","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"f0e3846c038ec5507cd4a19980d83ee0fb969ef5","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":5}]}},{"commit":"6ba64f1128373843b068226424a3af545ac9d22c","message":"usage update","stats":{"files_changed":1,"insertions":5,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]}},{"commit":"13bcdbc6c9a81bc5d52fe7a84e6a0a34908db8bc","message":"doc update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"cfba62db20674d788601354211a10e2b1675a0c9","message":"correct parser search in magic()","stats":{"files_changed":1,"insertions":13,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":19}]}},{"commit":"18fb69e36e303a3f9530dcb80354b25bfdbb931d","message":"docs/parsers link","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"474eb0f3fdeaa612e189d745b12a5ed9c6e0a31b","message":"doc updates","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]}},{"commit":"7f47b533701e60449351d5da03cd5960e0dec9ad","message":"add alternate magic syntax","stats":{"files_changed":1,"insertions":90,"deletions":68,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":158}]}},{"commit":"dc2907d3ce101043b30bcce71abb4bb02897f43a","message":"doc update","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["docs/parsers/crontab.md"],"file_stats":[{"name":"docs/parsers/crontab.md","lines_changed":6}]}},{"commit":"1af85811e06c489051c456918284a746ce12c692","message":"remove magic_command info","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/fstab.py"],"file_stats":[{"name":"jc/parsers/fstab.py","lines_changed":3}]}},{"commit":"1c1b19a478fe5c356a93cd165518429e77fcbdf0","message":"doc update","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":6}]}},{"commit":"66942d64babf932faeb887eb4ec0cab32829321a","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":4}]}},{"commit":"2fb6ae08d76e7a5727b2fcdd5def3e3822e0cf72","message":"fix shlex usage","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]}},{"commit":"bf8811e03e2a5b736f4c084f42400fcde400ff3f","message":"add comments","stats":{"files_changed":1,"insertions":6,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]}},{"commit":"c8b502c571d3081ca3086e349a426ca252a3bb84","message":"remove unnecessary join and add comments","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6}]}},{"commit":"81c11a975c6ee66a1f83350df8b065a6b07dcc9c","message":"added docstrings","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]}},{"commit":"0d370eb403ab4d9ed11e36776efc08bdd3505c1a","message":"doc update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"7492c3f1e312cdb0c58c2077db0d60d2cab1e58f","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]}},{"commit":"515a8a84b79c9bf6f3001d3c52faa82a6709b8d1","message":"add \"command\" to description","stats":{"files_changed":33,"insertions":33,"deletions":33,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2}]}},{"commit":"dd6680efb2b15bb8ed676016aae1c65193dfe147","message":"allow condensed options (-prdq is equivalent to -p -r -d -q)","stats":{"files_changed":2,"insertions":29,"deletions":14,"files":["changelog.txt","jc/cli.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":40}]}},{"commit":"a7158373cd225685f5c398fa36b8d5208e20521c","message":"comment update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"6d50ec71997cac9c898737de93b8a945f0351e53","message":"add try/except to fix bare jc command condition","stats":{"files_changed":1,"insertions":9,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":15}]}},{"commit":"95dbf98e8e03486f74d986683f52699f4f9c9577","message":"allow options in magic syntax","stats":{"files_changed":1,"insertions":26,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":32}]}},{"commit":"d49323e4ebf2a8aebd1d8ea65ef0854ee8bcb29f","message":"add magic_commands list to info","stats":{"files_changed":33,"insertions":33,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":1},{"name":"jc/parsers/crontab.py","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":1},{"name":"jc/parsers/du.py","lines_changed":1},{"name":"jc/parsers/env.py","lines_changed":1},{"name":"jc/parsers/foo.py","lines_changed":1},{"name":"jc/parsers/free.py","lines_changed":1},{"name":"jc/parsers/fstab.py","lines_changed":1},{"name":"jc/parsers/history.py","lines_changed":1},{"name":"jc/parsers/id.py","lines_changed":1},{"name":"jc/parsers/ifconfig.py","lines_changed":1},{"name":"jc/parsers/iptables.py","lines_changed":1},{"name":"jc/parsers/jobs.py","lines_changed":1},{"name":"jc/parsers/ls.py","lines_changed":1},{"name":"jc/parsers/lsblk.py","lines_changed":1},{"name":"jc/parsers/lsmod.py","lines_changed":1},{"name":"jc/parsers/lsof.py","lines_changed":1},{"name":"jc/parsers/mount.py","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":1},{"name":"jc/parsers/pip_list.py","lines_changed":1},{"name":"jc/parsers/pip_show.py","lines_changed":1},{"name":"jc/parsers/ps.py","lines_changed":1},{"name":"jc/parsers/route.py","lines_changed":1},{"name":"jc/parsers/ss.py","lines_changed":1},{"name":"jc/parsers/stat.py","lines_changed":1},{"name":"jc/parsers/systemctl.py","lines_changed":1},{"name":"jc/parsers/systemctl_lj.py","lines_changed":1},{"name":"jc/parsers/systemctl_ls.py","lines_changed":1},{"name":"jc/parsers/systemctl_luf.py","lines_changed":1},{"name":"jc/parsers/uname.py","lines_changed":1},{"name":"jc/parsers/uptime.py","lines_changed":1},{"name":"jc/parsers/w.py","lines_changed":1}]}},{"commit":"08c1e2aec9d6bb68653dc12ba2272535fb7cef09","message":"add magic syntax","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]}},{"commit":"a2c137df2e6d3b133df5df0bb3f9b1ca69990557","message":"better magic command syntax logic using introspection information from parser modules","stats":{"files_changed":2,"insertions":66,"deletions":299,"files":["jc/cli.py","jc/cli.py.old"],"file_stats":[{"name":"jc/cli.py","lines_changed":135},{"name":"jc/cli.py.old","lines_changed":230}]}},{"commit":"fe27dcdb8f72b5a288f978b87be2eb930099543e","message":"proof of concept for magic syntax (e.g. jc ls -al)","stats":{"files_changed":2,"insertions":319,"deletions":45,"files":["jc/cli.py","jc/cli.py.old"],"file_stats":[{"name":"jc/cli.py","lines_changed":134},{"name":"jc/cli.py.old","lines_changed":230}]}},{"commit":"028e136161ac15f588845f87907b4565a6ee7be2","message":"bump to 1.7.2: add test fixtures to package","stats":{"files_changed":4,"insertions":7,"deletions":2,"files":["MANIFEST.in","changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"MANIFEST.in","lines_changed":1},{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":3}]}},{"commit":"9a85a0a4d504447b32fb622bb17cebc5e47f687f","message":"fix doc","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/crontab_u.md","jc/parsers/crontab_u.py"],"file_stats":[{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2}]}},{"commit":"3a1cbc4d5063344c3e3a4bf510d651a36beedfb3","message":"move info class to top","stats":{"files_changed":1,"insertions":14,"deletions":14,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":28}]}},{"commit":"77d334f7f386f79ec0571325500054fdab207f31","message":"Merge pull request #19 from kellyjonbrazil/dev-1.7.1"},{"commit":"53cdf863acc72dbdb671773e30277f42e9eadc0e","message":"changelog update","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":4}]}},{"commit":"7b7e7fe0fe92edef1e559bd7ae8272530d7ed5c8","message":"changelog update","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]}},{"commit":"0c03132847a3d2bcbdb0b743e1472865916cced4","message":"fix error codes using sys.exit()","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]}},{"commit":"3b81f7e2a1381958b33962d4531f3fa223c6a83e","message":"exit code on ctrl-c exit","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"3d76437b435660e92633c604c4ad32ee0500a28b","message":"doc fix","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ini.md","docs/parsers/xml.md","jc/parsers/ini.py","jc/parsers/xml.py"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/xml.py","lines_changed":2}]}},{"commit":"4bc54c78cea48682ed0432ea56460a26a0e52f83","message":"fix compatibility list","stats":{"files_changed":4,"insertions":7,"deletions":7,"files":["docs/parsers/du.md","docs/parsers/history.md","jc/parsers/du.py","jc/parsers/history.py"],"file_stats":[{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":6},{"name":"jc/parsers/history.py","lines_changed":4}]}},{"commit":"3d303a96b9f6d582b1e99a632da539c3bee4df7f","message":"crontab bug fix and tests","stats":{"files_changed":5,"insertions":16,"deletions":2,"files":["tests/fixtures/centos-7.7/crontab-u.json","tests/fixtures/centos-7.7/{crontab2.out => crontab-u.out}","tests/fixtures/centos-7.7/crontab.json","tests/fixtures/ubuntu-18.04/crontab-u.json","tests/test_crontab_u.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/crontab-u.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/{crontab2.out => crontab-u.out}","lines_changed":1},{"name":"tests/fixtures/centos-7.7/crontab.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/crontab-u.json","lines_changed":2},{"name":"tests/test_crontab_u.py","lines_changed":12}]}},{"commit":"33c99d031d18e52a8ca85dfc1a8cba0acebfc3bb","message":"fix line clobbering bug","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":2}]}},{"commit":"caf7e9f69a22f3c9b3d4624fd2238d6e54d932ac","message":"fix line clobbering bug and add user field to shortcuts","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/crontab_u.py"],"file_stats":[{"name":"jc/parsers/crontab_u.py","lines_changed":6}]}},{"commit":"9449f1f5d5e7bc075549549758af5cc3a6c4524f","message":"crontab bugfix: inserting header row was clobbering the first data row","stats":{"files_changed":4,"insertions":9,"deletions":3,"files":["changelog.txt","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/fixtures/centos-7.7/crontab2.out"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/crontab.py","lines_changed":4},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/crontab2.out","lines_changed":5}]}},{"commit":"6bad164b5e2a5b7c7ce82c69b6c091fc079ab2fa","message":"simplify by removing unnecessary getattr calls","stats":{"files_changed":1,"insertions":7,"deletions":9,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":16}]}},{"commit":"bb5ba7ddb146821db2efe095b6de5ae5b72bb335","message":"add indent variable to helptext","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":7}]}},{"commit":"8b2e01d5404649e8f94c81ca3b5fa05fe8962220","message":"doc update","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]}},{"commit":"ff1159b1deb9b870382a6066166961902679b569","message":"exit codes on error","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]}},{"commit":"a2fd3202a0a3df336792f167c546ea3e53ea2332","message":"description formatting change","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/pip_list.py","jc/parsers/pip_show.py"],"file_stats":[{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2}]}},{"commit":"7b53715b91787a8885d61ddc0079c7ee8f9348a8","message":"change description","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/crontab_u.py"],"file_stats":[{"name":"jc/parsers/crontab_u.py","lines_changed":2}]}},{"commit":"e05fc0a5107b348af14ff4bea39d274939fab7dd","message":"change padding of helptext","stats":{"files_changed":1,"insertions":8,"deletions":8,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":16}]}},{"commit":"43604c33f654b8c19e8cce387ebbf31bd598b73b","message":"doc update","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]}},{"commit":"eb67c484ff2a9530b434cd6a90c160f6936e1de7","message":"add crontab-u to parsers list","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]}},{"commit":"a7b7bdd46781d07e6e70d74a41a3944855fde5fc","message":"load parser modules 'just in time' so we don't need to load all modules at startup","stats":{"files_changed":1,"insertions":94,"deletions":92,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":186}]}},{"commit":"ab06989a18faf5378f1e73c7016ea02e1218ff9c","message":"description updates","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":10}]}},{"commit":"657b722f947b6a0aa7e52a786e4c84f177e9a5c7","message":"ini to INI","stats":{"files_changed":4,"insertions":8,"deletions":8,"files":["README.md","changelog.txt","docs/parsers/ini.md","jc/parsers/ini.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"changelog.txt","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"jc/parsers/ini.py","lines_changed":6}]}},{"commit":"dd2aecad2787186b3962723086bb7e13eff4874f","message":"description update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"c82c5c5c648384eb5a54205ba8590624a3ab4375","message":"changelog update","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":6}]}},{"commit":"a1761cd68f91e2668d8d7e2fa7774f6496408be6","message":"id tests","stats":{"files_changed":3,"insertions":42,"deletions":0,"files":["tests/fixtures/centos-7.7/id.json","tests/fixtures/osx-10.14.6/id.json","tests/test_id.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/id.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/id.json","lines_changed":1},{"name":"tests/test_id.py","lines_changed":40}]}},{"commit":"d618a7f583629bb7a7fc0854e7349cab07e3e003","message":"doc update","stats":{"files_changed":4,"insertions":143,"deletions":9,"files":["README.md","docgen.sh","docs/parsers/id.md","jc/parsers/id.py"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/id.md","lines_changed":133},{"name":"jc/parsers/id.py","lines_changed":12}]}},{"commit":"831a42f66096f5efbbf0f6882970c328120f9c9a","message":"id formatting","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":48}]}},{"commit":"3b36022e5a1056a28a83494b1ab8fab209399c2d","message":"add id parser","stats":{"files_changed":5,"insertions":250,"deletions":1,"files":["README.md","jc/cli.py","jc/parsers/id.py","tests/fixtures/centos-7.7/id.out","tests/fixtures/osx-10.14.6/id.out"],"file_stats":[{"name":"README.md","lines_changed":33},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":214},{"name":"tests/fixtures/centos-7.7/id.out","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/id.out","lines_changed":1}]}},{"commit":"d01dfa25f10f82cd201ae7b4c9cc18313773f8d3","message":"changelog updates","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]}},{"commit":"395a99037b4816eb800b289f90372a9b8d7d36cc","message":"crontab-u and history doc updates","stats":{"files_changed":3,"insertions":89,"deletions":13,"files":["README.md","docs/parsers/history.md","jc/parsers/history.py"],"file_stats":[{"name":"README.md","lines_changed":84},{"name":"docs/parsers/history.md","lines_changed":10},{"name":"jc/parsers/history.py","lines_changed":8}]}},{"commit":"025986c51d2d4869b17de63a7dd96efa2988e3c5","message":"change history 'line' to integer","stats":{"files_changed":3,"insertions":13,"deletions":3,"files":["jc/parsers/history.py","tests/fixtures/centos-7.7/history.json","tests/fixtures/ubuntu-18.04/history.json"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":12},{"name":"tests/fixtures/centos-7.7/history.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/history.json","lines_changed":2}]}},{"commit":"c56b83093ff05f55ef4643c1731cff61d4b9e8ce","message":"doc update","stats":{"files_changed":3,"insertions":202,"deletions":2,"files":["docgen.sh","docs/parsers/crontab.md","docs/parsers/crontab_u.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"docs/parsers/crontab_u.md","lines_changed":199}]}},{"commit":"7c712a4133abd843d4da926e4c8d548abd1d6fa3","message":"doc update","stats":{"files_changed":1,"insertions":52,"deletions":50,"files":["jc/parsers/crontab_u.py"],"file_stats":[{"name":"jc/parsers/crontab_u.py","lines_changed":102}]}},{"commit":"9a0cfe6dfa4888f435d35bd2d35126d031a556d0","message":"minor formatting","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":4}]}},{"commit":"a116cdbcec1b27192dd0f9f4707629353edb3caf","message":"tests for crontab-u","stats":{"files_changed":5,"insertions":29,"deletions":13,"files":["tests/fixtures/ubuntu-18.04/crontab-u.json",".../ubuntu-18.04/{crontab.out => crontab-u.out}","tests/fixtures/ubuntu-18.04/crontab.json","tests/test_crontab.py","tests/test_crontab_u.py"],"file_stats":[{"name":"tests/fixtures/ubuntu-18.04/crontab-u.json","lines_changed":1},{"name":".../ubuntu-18.04/{crontab.out => crontab-u.out}","lines_changed":0},{"name":"tests/fixtures/ubuntu-18.04/crontab.json","lines_changed":1},{"name":"tests/test_crontab.py","lines_changed":12},{"name":"tests/test_crontab_u.py","lines_changed":28}]}},{"commit":"f2d616c98e049cdac5d667e63723f92110419a1b","message":"add crontab with user parser","stats":{"files_changed":3,"insertions":272,"deletions":0,"files":["changelog.txt","jc/cli.py","jc/parsers/crontab_u.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":269}]}},{"commit":"42cbd1777dbacc614d75f67f3f9156f72be46532","message":"add xml and yaml tests","stats":{"files_changed":2,"insertions":80,"deletions":0,"files":["tests/test_xml.py","tests/test_yaml.py"],"file_stats":[{"name":"tests/test_xml.py","lines_changed":40},{"name":"tests/test_yaml.py","lines_changed":40}]}},{"commit":"ebf375aac0473249cfd212068f6e6e33cc42449a","message":"add ini tests","stats":{"files_changed":1,"insertions":40,"deletions":0,"files":["tests/test_ini.py"],"file_stats":[{"name":"tests/test_ini.py","lines_changed":40}]}},{"commit":"1f9050267eeb870c4c0f50000fc32985c4d8535b","message":"add ini, xml, and yaml test files","stats":{"files_changed":12,"insertions":586,"deletions":0,"files":["tests/fixtures/generic/ini-iptelserver.ini","tests/fixtures/generic/ini-iptelserver.json","tests/fixtures/generic/ini-test.ini","tests/fixtures/generic/ini-test.json","tests/fixtures/generic/xml-cd_catalog.json","tests/fixtures/generic/xml-cd_catalog.xml","tests/fixtures/generic/xml-foodmenu.json","tests/fixtures/generic/xml-foodmenu.xml","tests/fixtures/generic/yaml-istio-sc.json","tests/fixtures/generic/yaml-istio-sc.yaml","tests/fixtures/generic/yaml-istio-sidecar.json","tests/fixtures/generic/yaml-istio-sidecar.yaml"],"file_stats":[{"name":"tests/fixtures/generic/ini-iptelserver.ini","lines_changed":133},{"name":"tests/fixtures/generic/ini-iptelserver.json","lines_changed":1},{"name":"tests/fixtures/generic/ini-test.ini","lines_changed":12},{"name":"tests/fixtures/generic/ini-test.json","lines_changed":1},{"name":"tests/fixtures/generic/xml-cd_catalog.json","lines_changed":1},{"name":"tests/fixtures/generic/xml-cd_catalog.xml","lines_changed":211},{"name":"tests/fixtures/generic/xml-foodmenu.json","lines_changed":1},{"name":"tests/fixtures/generic/xml-foodmenu.xml","lines_changed":33},{"name":"tests/fixtures/generic/yaml-istio-sc.json","lines_changed":1},{"name":"tests/fixtures/generic/yaml-istio-sc.yaml","lines_changed":17},{"name":"tests/fixtures/generic/yaml-istio-sidecar.json","lines_changed":1},{"name":"tests/fixtures/generic/yaml-istio-sidecar.yaml","lines_changed":174}]}},{"commit":"d7f9707a1521719ce051140b1a0b4ced7c5114c9","message":"minor formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/ini.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2}]}},{"commit":"ab589ee3ed09b9d5e09d8c046f3a64cd2bd14c98","message":"add __version__ variable","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]}},{"commit":"c84ec0361fc4c877c698378b28ff9e8b502793b0","message":"xml example update","stats":{"files_changed":4,"insertions":105,"deletions":3,"files":["README.md","docgen.sh","docs/parsers/xml.md","jc/parsers/xml.py"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/xml.md","lines_changed":99},{"name":"jc/parsers/xml.py","lines_changed":5}]}},{"commit":"47d2f8968a8a9b68fc9fff45985f5e69f1a5cc40","message":"doc update","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"changelog.txt","lines_changed":1}]}},{"commit":"019c480bcce7fe3821b75906fc673ce7bb1ffadc","message":"update acknowledgments","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]}},{"commit":"547c6d3d5956984d3c4fb5c2a1b76a595752b467","message":"add xml parser","stats":{"files_changed":5,"insertions":172,"deletions":2,"files":["README.md","changelog.txt","jc/cli.py","jc/parsers/xml.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":46},{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/xml.py","lines_changed":119},{"name":"setup.py","lines_changed":3}]}},{"commit":"b5ebf8b76afcd0e0190994048fe1f5b53f654451","message":"add ruamel.yaml ack","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]}},{"commit":"c690e328f23a69f592dfaaa949b74ba2190ad376","message":"add examples","stats":{"files_changed":2,"insertions":102,"deletions":14,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/yaml.md","lines_changed":58},{"name":"jc/parsers/yaml.py","lines_changed":58}]}},{"commit":"cbb92c1a9517234806f1c54398a69645b6f43669","message":"add ini and yaml","stats":{"files_changed":1,"insertions":94,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":94}]}},{"commit":"beb41997c9b3797e73a678ec1bcddcfb83b5ef0d","message":"doc update","stats":{"files_changed":3,"insertions":91,"deletions":2,"files":["docgen.sh","docs/parsers/ini.md","jc/parsers/ini.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ini.md","lines_changed":87},{"name":"jc/parsers/ini.py","lines_changed":5}]}},{"commit":"755a6faf1110f150fe2261b81439b7d17a9b424e","message":"clean up multi-document support","stats":{"files_changed":1,"insertions":4,"deletions":8,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":12}]}},{"commit":"021f8350a31a49ecc539f02576303600b222b49d","message":"update doc","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":4}]}},{"commit":"76583dcd2f5ef32e58ca87149154563b07e061cb","message":"add ini file parser","stats":{"files_changed":2,"insertions":113,"deletions":0,"files":["jc/cli.py","jc/parsers/ini.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/ini.py","lines_changed":111}]}},{"commit":"bf033239a706c42be3d7508c58a51c542f8a69b0","message":"doc update","stats":{"files_changed":2,"insertions":82,"deletions":7,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/yaml.md","lines_changed":69},{"name":"jc/parsers/yaml.py","lines_changed":20}]}},{"commit":"eb37fccd37fd625f701a14b6cfcf30e9f0bbff4d","message":"doc update","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":11}]}},{"commit":"d04ad453319fe45e302da87f970d2ac0806fae1a","message":"setup for 1.7.1","stats":{"files_changed":3,"insertions":7,"deletions":2,"files":["changelog.txt","docgen.sh","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"setup.py","lines_changed":5}]}},{"commit":"db157b8ca7f7fa935676bafeaafdfd9818a89e6a","message":"add yaml file parser","stats":{"files_changed":2,"insertions":94,"deletions":2,"files":["jc/cli.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6},{"name":"jc/parsers/yaml.py","lines_changed":90}]}},{"commit":"68f277bb2081eb2cba14ffe7f0ee1ee0a982335b","message":"add __version__","stats":{"files_changed":33,"insertions":99,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/crontab.py","lines_changed":3},{"name":"jc/parsers/df.py","lines_changed":3},{"name":"jc/parsers/dig.py","lines_changed":3},{"name":"jc/parsers/du.py","lines_changed":3},{"name":"jc/parsers/env.py","lines_changed":3},{"name":"jc/parsers/foo.py","lines_changed":3},{"name":"jc/parsers/free.py","lines_changed":3},{"name":"jc/parsers/fstab.py","lines_changed":3},{"name":"jc/parsers/history.py","lines_changed":3},{"name":"jc/parsers/hosts.py","lines_changed":3},{"name":"jc/parsers/ifconfig.py","lines_changed":3},{"name":"jc/parsers/iptables.py","lines_changed":3},{"name":"jc/parsers/jobs.py","lines_changed":3},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"jc/parsers/lsblk.py","lines_changed":3},{"name":"jc/parsers/lsmod.py","lines_changed":3},{"name":"jc/parsers/lsof.py","lines_changed":3},{"name":"jc/parsers/mount.py","lines_changed":3},{"name":"jc/parsers/netstat.py","lines_changed":3},{"name":"jc/parsers/pip_list.py","lines_changed":3},{"name":"jc/parsers/pip_show.py","lines_changed":3},{"name":"jc/parsers/ps.py","lines_changed":3},{"name":"jc/parsers/route.py","lines_changed":3},{"name":"jc/parsers/ss.py","lines_changed":3},{"name":"jc/parsers/stat.py","lines_changed":3},{"name":"jc/parsers/systemctl.py","lines_changed":3},{"name":"jc/parsers/systemctl_lj.py","lines_changed":3},{"name":"jc/parsers/systemctl_ls.py","lines_changed":3},{"name":"jc/parsers/systemctl_luf.py","lines_changed":3},{"name":"jc/parsers/uname.py","lines_changed":3},{"name":"jc/parsers/uptime.py","lines_changed":3},{"name":"jc/parsers/w.py","lines_changed":3}]}},{"commit":"4de8f42664379570392552796e34324abb39fdc2","message":"Merge pull request #17 from kellyjonbrazil/dev"},{"commit":"4f118559356edc1da866e1bec80830e7a75a0b26","message":"update version info","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]}},{"commit":"2b9a5fcc32f85295faa55410efcaf142c42bd167","message":"update version","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":4}]}},{"commit":"224948d1f23e01b7cd968820529579792f862f0a","message":"pip list and pip show tests","stats":{"files_changed":21,"insertions":428,"deletions":0,"files":["tests/fixtures/centos-7.7/pip-list.json","tests/fixtures/centos-7.7/pip-list.out","tests/fixtures/centos-7.7/pip-show.json","tests/fixtures/centos-7.7/pip-show.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.11.6/pip-list.json","tests/fixtures/osx-10.11.6/pip-list.out","tests/fixtures/osx-10.11.6/pip-show.json","tests/fixtures/osx-10.11.6/pip-show.out","tests/fixtures/osx-10.14.6/pip-list.json","tests/fixtures/osx-10.14.6/pip-list.out","tests/fixtures/osx-10.14.6/pip-show.json","tests/fixtures/osx-10.14.6/pip-show.out","tests/fixtures/ubuntu-18.04/pip-list-legacy.json","tests/fixtures/ubuntu-18.04/pip-list-legacy.out","tests/fixtures/ubuntu-18.04/pip-list.json","tests/fixtures/ubuntu-18.04/pip-list.out","tests/fixtures/ubuntu-18.04/pip-show.json","tests/fixtures/ubuntu-18.04/pip-show.out","tests/test_pip_list.py","tests/test_pip_show.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/pip-list.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/pip-list.out","lines_changed":22},{"name":"tests/fixtures/centos-7.7/pip-show.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/pip-show.out","lines_changed":32},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/pip-list.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/pip-list.out","lines_changed":7},{"name":"tests/fixtures/osx-10.11.6/pip-show.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/pip-show.out","lines_changed":32},{"name":"tests/fixtures/osx-10.14.6/pip-list.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/pip-list.out","lines_changed":7},{"name":"tests/fixtures/osx-10.14.6/pip-show.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/pip-show.out","lines_changed":32},{"name":"tests/fixtures/ubuntu-18.04/pip-list-legacy.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/pip-list-legacy.out","lines_changed":57},{"name":"tests/fixtures/ubuntu-18.04/pip-list.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/pip-list.out","lines_changed":59},{"name":"tests/fixtures/ubuntu-18.04/pip-show.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/pip-show.out","lines_changed":29},{"name":"tests/test_pip_list.py","lines_changed":76},{"name":"tests/test_pip_show.py","lines_changed":64}]}},{"commit":"36f2812d5a7a94c412e098233c026d99d5205b60","message":"add support for legacy output","stats":{"files_changed":1,"insertions":15,"deletions":7,"files":["jc/parsers/pip_list.py"],"file_stats":[{"name":"jc/parsers/pip_list.py","lines_changed":22}]}},{"commit":"be06aa2b31c057c56229e75c7fa70052b83053ee","message":"update parse() Return info","stats":{"files_changed":65,"insertions":70,"deletions":66,"files":["docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":3},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":3},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":3},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":3},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2}]}},{"commit":"41f8e3aba268ca0cd09931a04368615425c1aec8","message":"update Return info","stats":{"files_changed":65,"insertions":67,"deletions":65,"files":["docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":3},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":3},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2}]}},{"commit":"093c0df8978ace842af5258f9aff72c63c6f843d","message":"schema info","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]}},{"commit":"37afc7dc8ae30342d01f3f72e73646fa60bb5294","message":"updte todo and compatibility","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]}},{"commit":"efbf3549606fc77f8c16587ff04a0c316dfe5c00","message":"doc update for pip show","stats":{"files_changed":4,"insertions":126,"deletions":12,"files":["README.md","docgen.sh","docs/parsers/pip_show.md","jc/parsers/pip_show.py"],"file_stats":[{"name":"README.md","lines_changed":31},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/pip_show.md","lines_changed":94},{"name":"jc/parsers/pip_show.py","lines_changed":12}]}},{"commit":"5e39fe0d8044787389d8f206f3c863d4bdf1e2ed","message":"pip show parser working","stats":{"files_changed":1,"insertions":64,"deletions":5,"files":["jc/parsers/pip_show.py"],"file_stats":[{"name":"jc/parsers/pip_show.py","lines_changed":69}]}},{"commit":"47328dc65969f149c8f027286774ff0847c18add","message":"add pip-show parser","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"addeef50ba54f536855544937a6c98135ae5cd51","message":"initial pip show parser add","stats":{"files_changed":1,"insertions":84,"deletions":0,"files":["jc/parsers/pip_show.py"],"file_stats":[{"name":"jc/parsers/pip_show.py","lines_changed":84}]}},{"commit":"ad338cc5b50a178091c47cbea9a1db135a7fb678","message":"schema doc update","stats":{"files_changed":2,"insertions":56,"deletions":42,"files":["docs/parsers/crontab.md","jc/parsers/crontab.py"],"file_stats":[{"name":"docs/parsers/crontab.md","lines_changed":49},{"name":"jc/parsers/crontab.py","lines_changed":49}]}},{"commit":"202bc8201e31fd453c682265347b4e2ac2d41718","message":"doc update","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["README.md","docs/parsers/crontab.md","jc/parsers/crontab.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"jc/parsers/crontab.py","lines_changed":4}]}},{"commit":"5ff99de405fbd8f79f9c2e301ac27184e0aba6fc","message":"add argument to parser info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]}},{"commit":"86ebe2cf9c6b336eacf217393c3c3c324ee29ec0","message":"initial add of pip list parser","stats":{"files_changed":6,"insertions":205,"deletions":1,"files":["README.md","docgen.sh","docs/parsers/crontab.md","docs/parsers/pip_list.md","jc/cli.py","jc/parsers/pip_list.py"],"file_stats":[{"name":"README.md","lines_changed":21},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":75},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":105}]}},{"commit":"facf0b399c608d33f6a454ee24fd49fc62471742","message":"add osx to campatible","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":4}]}},{"commit":"33db7b0bcb0f24979cad6e173737d75c8ed301af","message":"add crontab tests","stats":{"files_changed":4,"insertions":57,"deletions":0,"files":["tests/fixtures/centos-7.7/crontab.json","tests/fixtures/ubuntu-18.04/crontab.json","tests/fixtures/ubuntu-18.04/crontab.out","tests/test_crontab.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/crontab.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/crontab.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/crontab.out","lines_changed":15},{"name":"tests/test_crontab.py","lines_changed":40}]}},{"commit":"663d07bca1181024d9d08b940237c52197c91729","message":"add crontab","stats":{"files_changed":2,"insertions":191,"deletions":0,"files":["docgen.sh","docs/parsers/crontab.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/crontab.md","lines_changed":190}]}},{"commit":"ba04e4997fcb28adbee446f633c121f1585b9f2c","message":"update docs","stats":{"files_changed":1,"insertions":113,"deletions":4,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":117}]}},{"commit":"c4fee1b658c91afa2abdd746af6c1b4697c44b35","message":"add crontab parser","stats":{"files_changed":1,"insertions":72,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":73}]}},{"commit":"99b92a15bbebc5568f4455f388f945613c4a2759","message":"support shortcut schedules","stats":{"files_changed":2,"insertions":37,"deletions":14,"files":["jc/parsers/crontab.py","tests/fixtures/centos-7.7/crontab.out"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":40},{"name":"tests/fixtures/centos-7.7/crontab.out","lines_changed":11}]}},{"commit":"b076ab5b57a6a59db096485e5ff4eb9f91bae8be","message":"initial crontab parser","stats":{"files_changed":3,"insertions":177,"deletions":0,"files":["jc/cli.py","jc/parsers/crontab.py","tests/fixtures/centos-7.7/crontab.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":132},{"name":"tests/fixtures/centos-7.7/crontab.out","lines_changed":43}]}},{"commit":"687759f75d0e80e81746a84f051e55cfdc870447","message":"alphabetize du entry","stats":{"files_changed":1,"insertions":31,"deletions":31,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":62}]}},{"commit":"9eaac7f3af0e0851c2d091d94c9920faa8a0fdfc","message":"add du","stats":{"files_changed":1,"insertions":32,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":32}]}},{"commit":"4c24e00cfc0748d98e220d08820b88fc156148db","message":"add osx-11 and ubuntu tests","stats":{"files_changed":5,"insertions":21738,"deletions":9,"files":["tests/fixtures/osx-10.11.6/du.json","tests/fixtures/osx-10.11.6/du.out","tests/fixtures/ubuntu-18.04/du.json","tests/fixtures/ubuntu-18.04/du.out","tests/test_du.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/du.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/du.out","lines_changed":2471},{"name":"tests/fixtures/ubuntu-18.04/du.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/du.out","lines_changed":19244},{"name":"tests/test_du.py","lines_changed":30}]}},{"commit":"beb17011b03e720078b0752e79a6a0f6123d1d3c","message":"du tests and docs","stats":{"files_changed":6,"insertions":131,"deletions":2,"files":["changelog.txt","docgen.sh","docs/parsers/du.md","docs/parsers/uname.md","tests/fixtures/osx-10.14.6/du.json","tests/test_du.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/du.md","lines_changed":115},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/du.json","lines_changed":1},{"name":"tests/test_du.py","lines_changed":12}]}},{"commit":"e882bf55bcd1d3526423ed1ccc61fb4819395cce","message":"initial add du parser","stats":{"files_changed":7,"insertions":8755,"deletions":0,"files":["changelog.txt","jc/cli.py","jc/parsers/du.py","tests/fixtures/centos-7.7/du.json","tests/fixtures/centos-7.7/du.out","tests/fixtures/osx-10.14.6/du.out","tests/test_du.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":148},{"name":"tests/fixtures/centos-7.7/du.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/du.out","lines_changed":5199},{"name":"tests/fixtures/osx-10.14.6/du.out","lines_changed":3364},{"name":"tests/test_du.py","lines_changed":40}]}},{"commit":"3a3016adb6d5b9e35f8a39908bfcdc65997cc5c6","message":"add parser_count to about","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]}},{"commit":"1e8b68153ade8a1e3d2b4db36e0c402bbc887079","message":"add osx uname tests","stats":{"files_changed":4,"insertions":27,"deletions":1,"files":["tests/fixtures/osx-10.11.6/uname-a.json","tests/fixtures/osx-10.14.6/uname-a.json","tests/fixtures/osx-10.14.6/uname-a.out","tests/test_uname.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/uname-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/uname-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/uname-a.out","lines_changed":2},{"name":"tests/test_uname.py","lines_changed":24}]}},{"commit":"9335cf65fbb87e3a0a7da0c4e9bcd251cb829de2","message":"add uname osx support","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]}},{"commit":"83f35256aee71f2619ddf880e2b8f2d6c63280bc","message":"add OSX support","stats":{"files_changed":1,"insertions":30,"deletions":19,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":49}]}},{"commit":"428333394817e4461a4eb095f4d6d128305a5f98","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":2}]}},{"commit":"b8f902796b7fb23a41355b23f7ce235bd18edc58","message":"shorten changelog","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]}},{"commit":"8f99ab295cd15718b98781707def97539ad41920","message":"info update","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]}},{"commit":"882310e268e2022f0cd6da75f80f5356529cd05c","message":"add name to about parser info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]}},{"commit":"56bce9521409d1850f75a3ae2be1363e765dd9dc","message":"about code cleanup","stats":{"files_changed":1,"insertions":6,"deletions":10,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":16}]}},{"commit":"c13ecbec2952c5d6765397f645e90653a4fd9d05","message":"clean up parser info","stats":{"files_changed":28,"insertions":2,"deletions":28,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":1},{"name":"jc/parsers/env.py","lines_changed":1},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":1},{"name":"jc/parsers/fstab.py","lines_changed":1},{"name":"jc/parsers/history.py","lines_changed":1},{"name":"jc/parsers/hosts.py","lines_changed":1},{"name":"jc/parsers/iptables.py","lines_changed":1},{"name":"jc/parsers/jobs.py","lines_changed":1},{"name":"jc/parsers/ls.py","lines_changed":1},{"name":"jc/parsers/lsblk.py","lines_changed":1},{"name":"jc/parsers/lsmod.py","lines_changed":1},{"name":"jc/parsers/lsof.py","lines_changed":1},{"name":"jc/parsers/mount.py","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":1},{"name":"jc/parsers/ps.py","lines_changed":1},{"name":"jc/parsers/route.py","lines_changed":1},{"name":"jc/parsers/ss.py","lines_changed":1},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":1},{"name":"jc/parsers/systemctl_lj.py","lines_changed":1},{"name":"jc/parsers/systemctl_ls.py","lines_changed":1},{"name":"jc/parsers/systemctl_luf.py","lines_changed":1},{"name":"jc/parsers/uname.py","lines_changed":1},{"name":"jc/parsers/uptime.py","lines_changed":1},{"name":"jc/parsers/w.py","lines_changed":1}]}},{"commit":"0ffaaa6e73649d1f657af569ac0b912f166e8493","message":"clean up about code","stats":{"files_changed":1,"insertions":7,"deletions":9,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":16}]}},{"commit":"75eff3adea097157c005b2201e353a741241ce8b","message":"remove whitespace","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":8}]}},{"commit":"bf5f80476cff642ae672187ea59d40bdb602101e","message":"use real parser name in error message","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6}]}},{"commit":"9aaf0fbb2f838c0af1e7f18fdb19104f9f5d3d39","message":"doc updates","stats":{"files_changed":29,"insertions":146,"deletions":1,"files":["changelog.txt","docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"docs/parsers/arp.md","lines_changed":11},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5}]}},{"commit":"8f01ef79532743573632d716ceea41d5ea752c88","message":"add -a option info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]}},{"commit":"da1d087452da02631296b1b3dc9ee10d4b7f764b","message":"add parser version info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]}},{"commit":"e16bc7e882a27a1d5a4bd7cf9972208e6997f96f","message":"add about information to parsers","stats":{"files_changed":29,"insertions":82,"deletions":17,"files":["jc/cli.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":71},{"name":"jc/parsers/arp.py","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":1},{"name":"jc/parsers/env.py","lines_changed":1},{"name":"jc/parsers/foo.py","lines_changed":1},{"name":"jc/parsers/free.py","lines_changed":1},{"name":"jc/parsers/fstab.py","lines_changed":1},{"name":"jc/parsers/history.py","lines_changed":1},{"name":"jc/parsers/hosts.py","lines_changed":1},{"name":"jc/parsers/iptables.py","lines_changed":1},{"name":"jc/parsers/jobs.py","lines_changed":1},{"name":"jc/parsers/ls.py","lines_changed":1},{"name":"jc/parsers/lsblk.py","lines_changed":1},{"name":"jc/parsers/lsmod.py","lines_changed":1},{"name":"jc/parsers/lsof.py","lines_changed":1},{"name":"jc/parsers/mount.py","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":1},{"name":"jc/parsers/ps.py","lines_changed":1},{"name":"jc/parsers/route.py","lines_changed":1},{"name":"jc/parsers/ss.py","lines_changed":1},{"name":"jc/parsers/stat.py","lines_changed":1},{"name":"jc/parsers/systemctl.py","lines_changed":1},{"name":"jc/parsers/systemctl_lj.py","lines_changed":1},{"name":"jc/parsers/systemctl_ls.py","lines_changed":1},{"name":"jc/parsers/systemctl_luf.py","lines_changed":1},{"name":"jc/parsers/uname.py","lines_changed":1},{"name":"jc/parsers/uptime.py","lines_changed":1},{"name":"jc/parsers/w.py","lines_changed":1}]}},{"commit":"fe9bdd4811216257c05b16d6d61897929669d434","message":"add info class","stats":{"files_changed":31,"insertions":384,"deletions":219,"files":["changelog.txt","jc/cli.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/cli.py","lines_changed":127},{"name":"jc/parsers/arp.py","lines_changed":25},{"name":"jc/parsers/df.py","lines_changed":15},{"name":"jc/parsers/dig.py","lines_changed":15},{"name":"jc/parsers/env.py","lines_changed":16},{"name":"jc/parsers/foo.py","lines_changed":16},{"name":"jc/parsers/free.py","lines_changed":16},{"name":"jc/parsers/fstab.py","lines_changed":16},{"name":"jc/parsers/history.py","lines_changed":16},{"name":"jc/parsers/hosts.py","lines_changed":16},{"name":"jc/parsers/ifconfig.py","lines_changed":17},{"name":"jc/parsers/iptables.py","lines_changed":16},{"name":"jc/parsers/jobs.py","lines_changed":16},{"name":"jc/parsers/ls.py","lines_changed":16},{"name":"jc/parsers/lsblk.py","lines_changed":17},{"name":"jc/parsers/lsmod.py","lines_changed":16},{"name":"jc/parsers/lsof.py","lines_changed":16},{"name":"jc/parsers/mount.py","lines_changed":16},{"name":"jc/parsers/netstat.py","lines_changed":16},{"name":"jc/parsers/ps.py","lines_changed":16},{"name":"jc/parsers/route.py","lines_changed":16},{"name":"jc/parsers/ss.py","lines_changed":16},{"name":"jc/parsers/stat.py","lines_changed":15},{"name":"jc/parsers/systemctl.py","lines_changed":16},{"name":"jc/parsers/systemctl_lj.py","lines_changed":16},{"name":"jc/parsers/systemctl_ls.py","lines_changed":16},{"name":"jc/parsers/systemctl_luf.py","lines_changed":16},{"name":"jc/parsers/uname.py","lines_changed":16},{"name":"jc/parsers/uptime.py","lines_changed":16},{"name":"jc/parsers/w.py","lines_changed":16}]}},{"commit":"17b6f3f6d6c398a52166849088a793d0e3b328b7","message":"add osx tests","stats":{"files_changed":3,"insertions":26,"deletions":0,"files":["tests/fixtures/osx-10.11.6/uptime.json","tests/fixtures/osx-10.14.6/uptime.json","tests/test_uptime.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/uptime.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/uptime.json","lines_changed":1},{"name":"tests/test_uptime.py","lines_changed":24}]}},{"commit":"90a6baf0ee3b8b27476badada4e590e22144f810","message":"add osx tests","stats":{"files_changed":6,"insertions":52,"deletions":0,"files":["tests/fixtures/osx-10.11.6/ps-axu.json","tests/fixtures/osx-10.11.6/ps-ef.json","tests/fixtures/osx-10.11.6/w.json","tests/fixtures/osx-10.14.6/w.json","tests/test_ps.py","tests/test_w.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/ps-axu.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ps-ef.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/w.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/w.json","lines_changed":1},{"name":"tests/test_ps.py","lines_changed":24},{"name":"tests/test_w.py","lines_changed":24}]}},{"commit":"f0e73d0e72d540292f41fff51652932c4e8b0315","message":"add osx tests","stats":{"files_changed":8,"insertions":444,"deletions":0,"files":["tests/fixtures/osx-10.11.6/ps-axu.out","tests/fixtures/osx-10.11.6/ps-ef.out","tests/fixtures/osx-10.11.6/uname-a.out","tests/fixtures/osx-10.11.6/uptime.out","tests/fixtures/osx-10.11.6/w.out","tests/fixtures/osx-10.14.6/uname-a.out","tests/fixtures/osx-10.14.6/uptime.out","tests/fixtures/osx-10.14.6/w.out"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/ps-axu.out","lines_changed":211},{"name":"tests/fixtures/osx-10.11.6/ps-ef.out","lines_changed":211},{"name":"tests/fixtures/osx-10.11.6/uname-a.out","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/uptime.out","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/w.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/uname-a.out","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/uptime.out","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/w.out","lines_changed":10}]}},{"commit":"a762882f1ccea6789ce7813b313f3242175b5bd6","message":"fixture updates","stats":{"files_changed":4,"insertions":2,"deletions":88,"files":["tests/fixtures/osx-10.14.6/ps-axu.json","tests/fixtures/osx-10.14.6/ps-axu.out","tests/fixtures/osx-10.14.6/ps-ef.json","tests/fixtures/osx-10.14.6/ps-ef.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ps-axu.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ps-axu.out","lines_changed":43},{"name":"tests/fixtures/osx-10.14.6/ps-ef.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ps-ef.out","lines_changed":43}]}},{"commit":"4c1bc5923658bf463805ea33ec8d170a817909ce","message":"doc updates","stats":{"files_changed":3,"insertions":4,"deletions":3,"files":["docs/parsers/mount.md","docs/parsers/ps.md","docs/parsers/stat.md"],"file_stats":[{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":3},{"name":"docs/parsers/stat.md","lines_changed":2}]}},{"commit":"f2962083f80503f82c3eddf470674c776e616b32","message":"add osx support for mount parser","stats":{"files_changed":7,"insertions":93,"deletions":17,"files":["changelog.txt","jc/parsers/mount.py","tests/fixtures/osx-10.14.6/mount.json","tests/fixtures/osx-10.14.6/mount.out","tests/fixtures/osx-10.14.6/mount2.json","tests/fixtures/osx-10.14.6/mount2.out","tests/test_mount.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/parsers/mount.py","lines_changed":68},{"name":"tests/fixtures/osx-10.14.6/mount.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/mount.out","lines_changed":6},{"name":"tests/fixtures/osx-10.14.6/mount2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/mount2.out","lines_changed":7},{"name":"tests/test_mount.py","lines_changed":24}]}},{"commit":"a0b22a5bcfa0777895243088b2c0f3bb5b758775","message":"help text formatting","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]}},{"commit":"dcf393354cd57683aaeecbed7b884d19b0fe94d4","message":"doc fix","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":2}]}},{"commit":"5f771656e3fdd703d449b2817faa4faeff1cd879","message":"use universal parser","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":10}]}},{"commit":"f376aab79328a211a127f4f818e7007232f1fae3","message":"doc update","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":3}]}},{"commit":"3c96464217a740571e16c74ad41c1d92f7585547","message":"osx fixes and tests","stats":{"files_changed":6,"insertions":886,"deletions":13,"files":["jc/parsers/ps.py","tests/fixtures/osx-10.14.6/ps-axu.json","tests/fixtures/osx-10.14.6/ps-axu.out","tests/fixtures/osx-10.14.6/ps-ef.json","tests/fixtures/osx-10.14.6/ps-ef.out","tests/test_ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":31},{"name":"tests/fixtures/osx-10.14.6/ps-axu.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ps-axu.out","lines_changed":421},{"name":"tests/fixtures/osx-10.14.6/ps-ef.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ps-ef.out","lines_changed":421},{"name":"tests/test_ps.py","lines_changed":24}]}},{"commit":"c9892833a16bb63f78537717be65670eb65a87b7","message":"formatting change","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/mount.py"],"file_stats":[{"name":"jc/parsers/mount.py","lines_changed":2}]}},{"commit":"127c98affc7b122f0ced13852850214b9e07677e","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]}},{"commit":"8687a772f53ecaf1a20464429060b94bbf660fe7","message":"use universal parser","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":8}]}},{"commit":"b1162b14d42643fd53dbbe3f89ba042f030d9254","message":"use universal parser","stats":{"files_changed":1,"insertions":3,"deletions":6,"files":["jc/parsers/lsmod.py"],"file_stats":[{"name":"jc/parsers/lsmod.py","lines_changed":9}]}},{"commit":"8a8ee3570733c0c06b8cf53eb005e53ac2f9170f","message":"use universal parser","stats":{"files_changed":1,"insertions":8,"deletions":60,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":68}]}},{"commit":"5e109a3665cf0c286ac9dcbe2a452348a14b90ab","message":"add du","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/fixtures/create_fixtures.sh"],"file_stats":[{"name":"tests/fixtures/create_fixtures.sh","lines_changed":2}]}},{"commit":"11db478430515ef3e1020482792f23d1c40ca32b","message":"update changelog","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]}},{"commit":"a85377014d9f93fcb9840715129b0e09d48d8584","message":"use universal parser","stats":{"files_changed":1,"insertions":5,"deletions":11,"files":["jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/free.py","lines_changed":16}]}},{"commit":"3aea86234d33160f5b3139cbfc2f4f032f655f3a","message":"fix osx-10.11.6 tests","stats":{"files_changed":6,"insertions":70,"deletions":61,"files":["tests/fixtures/osx-10.11.6/ls-al.json","tests/fixtures/osx-10.11.6/ls-al.out","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.11.6/ls-alh.out","tests/fixtures/osx-10.11.6/ls.json","tests/fixtures/osx-10.11.6/ls.out"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/ls-al.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ls-al.out","lines_changed":61},{"name":"tests/fixtures/osx-10.11.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ls-alh.out","lines_changed":61},{"name":"tests/fixtures/osx-10.11.6/ls.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ls.out","lines_changed":3}]}},{"commit":"916ec6ed6b858a8a496e4026b9bab5505abca2ff","message":"fix osx ls tests","stats":{"files_changed":13,"insertions":193,"deletions":61,"files":["tests/fixtures/osx-10.11.6/ls-al.json","tests/fixtures/osx-10.11.6/ls-al.out","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.11.6/ls-alh.out","tests/fixtures/osx-10.11.6/ls.json","tests/fixtures/osx-10.11.6/ls.out","tests/fixtures/osx-10.14.6/ls-al.json","tests/fixtures/osx-10.14.6/ls-al.out","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.out","tests/fixtures/osx-10.14.6/ls.json","tests/fixtures/osx-10.14.6/ls.out","tests/test_ls.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/ls-al.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ls-al.out","lines_changed":29},{"name":"tests/fixtures/osx-10.11.6/ls-alh.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ls-alh.out","lines_changed":29},{"name":"tests/fixtures/osx-10.11.6/ls.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ls.out","lines_changed":18},{"name":"tests/fixtures/osx-10.14.6/ls-al.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-al.out","lines_changed":64},{"name":"tests/fixtures/osx-10.14.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-alh.out","lines_changed":64},{"name":"tests/fixtures/osx-10.14.6/ls.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls.out","lines_changed":5},{"name":"tests/test_ls.py","lines_changed":36}]}},{"commit":"9dca6ba5393d8840ad7fc9509273715a71955bd1","message":"doc formatting change","stats":{"files_changed":55,"insertions":120,"deletions":6,"files":["docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":8},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":3},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":3},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":8},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":3},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":3},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2}]}},{"commit":"0ebb89f561e1ced2e7f61ae19290e176c8a98bf2","message":"doc update","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["docs/parsers/arp.md"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2}]}},{"commit":"e237867e242211ba37206911ebf1b35c97b417fd","message":"doc formatting","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":2}]}},{"commit":"78fa44fd9ac9790313de6f461eb46d9b8d6159d4","message":"add compatibility to docs","stats":{"files_changed":24,"insertions":75,"deletions":3,"files":["docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/netstat.md","lines_changed":3},{"name":"docs/parsers/ps.md","lines_changed":3},{"name":"docs/parsers/route.md","lines_changed":3},{"name":"docs/parsers/ss.md","lines_changed":3},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":3},{"name":"docs/parsers/systemctl_lj.md","lines_changed":3},{"name":"docs/parsers/systemctl_ls.md","lines_changed":3},{"name":"docs/parsers/systemctl_luf.md","lines_changed":3},{"name":"docs/parsers/uname.md","lines_changed":3},{"name":"docs/parsers/uptime.md","lines_changed":3},{"name":"docs/parsers/w.md","lines_changed":3},{"name":"jc/parsers/netstat.py","lines_changed":3},{"name":"jc/parsers/ps.py","lines_changed":3},{"name":"jc/parsers/route.py","lines_changed":5},{"name":"jc/parsers/ss.py","lines_changed":3},{"name":"jc/parsers/stat.py","lines_changed":5},{"name":"jc/parsers/systemctl.py","lines_changed":3},{"name":"jc/parsers/systemctl_lj.py","lines_changed":3},{"name":"jc/parsers/systemctl_ls.py","lines_changed":3},{"name":"jc/parsers/systemctl_luf.py","lines_changed":3},{"name":"jc/parsers/uname.py","lines_changed":3},{"name":"jc/parsers/uptime.py","lines_changed":3},{"name":"jc/parsers/w.py","lines_changed":3}]}},{"commit":"d615fa3b933ccd284bd8ee92baf5dfa6264507c6","message":"add compatibility to docs","stats":{"files_changed":30,"insertions":91,"deletions":1,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":3},{"name":"docs/parsers/df.md","lines_changed":3},{"name":"docs/parsers/dig.md","lines_changed":3},{"name":"docs/parsers/env.md","lines_changed":3},{"name":"docs/parsers/free.md","lines_changed":3},{"name":"docs/parsers/fstab.md","lines_changed":3},{"name":"docs/parsers/history.md","lines_changed":3},{"name":"docs/parsers/hosts.md","lines_changed":3},{"name":"docs/parsers/ifconfig.md","lines_changed":3},{"name":"docs/parsers/iptables.md","lines_changed":3},{"name":"docs/parsers/jobs.md","lines_changed":3},{"name":"docs/parsers/ls.md","lines_changed":3},{"name":"docs/parsers/lsblk.md","lines_changed":3},{"name":"docs/parsers/lsmod.md","lines_changed":3},{"name":"docs/parsers/lsof.md","lines_changed":3},{"name":"docs/parsers/mount.md","lines_changed":3},{"name":"jc/parsers/env.py","lines_changed":3},{"name":"jc/parsers/foo.py","lines_changed":3},{"name":"jc/parsers/free.py","lines_changed":3},{"name":"jc/parsers/fstab.py","lines_changed":3},{"name":"jc/parsers/history.py","lines_changed":3},{"name":"jc/parsers/hosts.py","lines_changed":3},{"name":"jc/parsers/ifconfig.py","lines_changed":3},{"name":"jc/parsers/iptables.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":3},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"jc/parsers/lsblk.py","lines_changed":3},{"name":"jc/parsers/lsmod.py","lines_changed":3},{"name":"jc/parsers/lsof.py","lines_changed":3},{"name":"jc/parsers/mount.py","lines_changed":3}]}},{"commit":"ce134dc332dd9175e0d1823a4959bed427a3ddce","message":"Add OSX tests for ls","stats":{"files_changed":7,"insertions":115,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-al.json","tests/fixtures/osx-10.14.6/ls-al.out","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.out","tests/fixtures/osx-10.14.6/ls.json","tests/fixtures/osx-10.14.6/ls.out","tests/test_ls.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ls-al.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-al.out","lines_changed":29},{"name":"tests/fixtures/osx-10.14.6/ls-alh.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-alh.out","lines_changed":29},{"name":"tests/fixtures/osx-10.14.6/ls.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls.out","lines_changed":18},{"name":"tests/test_ls.py","lines_changed":36}]}},{"commit":"a56e4dc752a01635fbd9fc31e21d390bbd629084","message":"use universal simple table parser","stats":{"files_changed":3,"insertions":28,"deletions":3,"files":["changelog.txt","jc/parsers/arp.py","jc/parsers/universal.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/arp.py","lines_changed":6},{"name":"jc/parsers/universal.py","lines_changed":24}]}},{"commit":"d221b4aa29e80dda2b591059f4d64c416bff0a17","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]}},{"commit":"d2cba6ad2f1f1cd35aa174239584a0291abb8e37","message":"add compatibility info","stats":{"files_changed":3,"insertions":9,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/df.py","lines_changed":3},{"name":"jc/parsers/dig.py","lines_changed":3}]}},{"commit":"84b3c30b525ddf1f74eb7fd833050a0ec69621dd","message":"add osx tests","stats":{"files_changed":21,"insertions":254,"deletions":2,"files":["tests/fixtures/osx-10.11.6/df-h.json","tests/fixtures/osx-10.11.6/df-h.out","tests/fixtures/osx-10.11.6/df.json","tests/fixtures/osx-10.11.6/df.out","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-aaaa.out","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig-x.out","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.11.6/dig.out","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/osx-10.14.6/df-h.out","tests/fixtures/osx-10.14.6/df.json","tests/fixtures/osx-10.14.6/df.out","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-aaaa.out","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig-x.out","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/osx-10.14.6/dig.out","tests/test_df.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/df-h.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/df-h.out","lines_changed":7},{"name":"tests/fixtures/osx-10.11.6/df.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/df.out","lines_changed":7},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.out","lines_changed":20},{"name":"tests/fixtures/osx-10.11.6/dig-x.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/dig-x.out","lines_changed":20},{"name":"tests/fixtures/osx-10.11.6/dig.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/dig.out","lines_changed":41},{"name":"tests/fixtures/osx-10.14.6/df-h.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/df-h.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/df.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/df.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.out","lines_changed":20},{"name":"tests/fixtures/osx-10.14.6/dig-x.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig-x.out","lines_changed":20},{"name":"tests/fixtures/osx-10.14.6/dig.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig.out","lines_changed":41},{"name":"tests/test_df.py","lines_changed":52}]}},{"commit":"68eeec19a812b735627763bb7d7e2a58b72f7504","message":"doc update","stats":{"files_changed":3,"insertions":30,"deletions":25,"files":["README.md","docs/parsers/df.md","jc/parsers/df.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docs/parsers/df.md","lines_changed":31},{"name":"jc/parsers/df.py","lines_changed":20}]}},{"commit":"c6d1528a2ed302ea82828b733a98db415be83708","message":"use _ instead of -","stats":{"files_changed":4,"insertions":19,"deletions":8,"files":["jc/parsers/df.py","jc/parsers/universal.py","tests/fixtures/centos-7.7/df.json","tests/fixtures/ubuntu-18.04/df.json"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":21},{"name":"jc/parsers/universal.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/df.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/df.json","lines_changed":2}]}},{"commit":"50a6b256b8a0936299f562c208ede6187feeb9a7","message":"new universal parsers to limit code duplication","stats":{"files_changed":1,"insertions":83,"deletions":0,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":83}]}},{"commit":"bbba1fe477014d0b7f370ce46ed821121be81a8e","message":"update df to use universal sparse table parser for osx compatibility","stats":{"files_changed":1,"insertions":38,"deletions":19,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":57}]}},{"commit":"46b827da6b438be73fab168c3f05298483b141e4","message":"add osx compatibility","stats":{"files_changed":7,"insertions":75,"deletions":4,"files":["changelog.txt","jc/parsers/arp.py","tests/fixtures/osx-10.11.6/arp-a.json","tests/fixtures/osx-10.11.6/arp-a.out","tests/fixtures/osx-10.14.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a.out","tests/test_arp.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/arp.py","lines_changed":27},{"name":"tests/fixtures/osx-10.11.6/arp-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/arp-a.out","lines_changed":13},{"name":"tests/fixtures/osx-10.14.6/arp-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/arp-a.out","lines_changed":12},{"name":"tests/test_arp.py","lines_changed":24}]}},{"commit":"5e8c28a30a283b6ef525e9e78d3ef2a0e1526927","message":"comment fix","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2}]}},{"commit":"e5d39031645ac897e0c0297f514ee62efe02f5f9","message":"update ifconfig doc","stats":{"files_changed":1,"insertions":38,"deletions":17,"files":["docs/parsers/ifconfig.md"],"file_stats":[{"name":"docs/parsers/ifconfig.md","lines_changed":55}]}},{"commit":"23975c9c9e1dd9d3e9fd7c05d231a86d646be048","message":"fixup osx subnet mask and convert state to an array","stats":{"files_changed":10,"insertions":132,"deletions":45,"files":["README.md","changelog.txt","jc/parsers/ifconfig.py","tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig2.json","tests/fixtures/osx-10.14.6/ifconfig.json","tests/fixtures/osx-10.14.6/ifconfig2.json","tests/fixtures/ubuntu-18.04/ifconfig.json","tests/test_ifconfig.py"],"file_stats":[{"name":"README.md","lines_changed":35},{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":80},{"name":"tests/fixtures/centos-7.7/ifconfig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ifconfig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ifconfig2.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ifconfig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ifconfig2.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ifconfig.json","lines_changed":2},{"name":"tests/test_ifconfig.py","lines_changed":48}]}},{"commit":"1e0dab8355e6fcb0ecde85270d4daac6ad93875b","message":"ifconfig fixture updates","stats":{"files_changed":10,"insertions":272,"deletions":2,"files":["tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.out","tests/fixtures/osx-10.11.6/ifconfig2.json","tests/fixtures/osx-10.11.6/ifconfig2.out","tests/fixtures/osx-10.14.6/ifconfig.json","tests/fixtures/osx-10.14.6/ifconfig.out","tests/fixtures/osx-10.14.6/ifconfig2.json","tests/fixtures/osx-10.14.6/ifconfig2.out","tests/fixtures/ubuntu-18.04/ifconfig.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ifconfig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ifconfig.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ifconfig.out","lines_changed":40},{"name":"tests/fixtures/osx-10.11.6/ifconfig2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ifconfig2.out","lines_changed":40},{"name":"tests/fixtures/osx-10.14.6/ifconfig.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ifconfig.out","lines_changed":91},{"name":"tests/fixtures/osx-10.14.6/ifconfig2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ifconfig2.out","lines_changed":95},{"name":"tests/fixtures/ubuntu-18.04/ifconfig.json","lines_changed":2}]}},{"commit":"5f4c10ffd5a9cbe4e5e3d2b9adc34f36492eaf46","message":"doc update","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"changelog.txt","lines_changed":4}]}},{"commit":"6f3d2b4b566b963fbf38572c587e8bd4e18881dc","message":"require ifconfig-parser v0.0.5 for mac and bytes support","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"fea8ace8446b64abe9e61a028951bc4e6df9f9c9","message":"add OSX compatibility","stats":{"files_changed":2,"insertions":20,"deletions":6,"files":["README.md","jc/parsers/ifconfig.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":22}]}},{"commit":"6633d9262c936217d8e90e64505c66b006cdab56","message":"Set theme jekyll-theme-cayman","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["_config.yml"],"file_stats":[{"name":"_config.yml","lines_changed":1}]}},{"commit":"7d54137140e6d0515bc23c131a097af5c70c3379","message":"link update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"2fcda6f2480ae6bd5428a0147c19f9af527391b8","message":"add motivation to readme","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]}},{"commit":"9c1b8bacf9a59a86feb2a91eb44919e800491d1e","message":"Merge pull request #16 from kellyjonbrazil/dev"},{"commit":"4867655eb297b1da7a55e0d3a24c7ed7c8af55c7","message":"add line-numbers tests","stats":{"files_changed":6,"insertions":172,"deletions":0,"files":[".../centos-7.7/iptables-filter-line-numbers.json",".../centos-7.7/iptables-filter-line-numbers.out","tests/fixtures/create_fixtures.sh",".../ubuntu-18.04/iptables-filter-line-numbers.json",".../ubuntu-18.04/iptables-filter-line-numbers.out","tests/test_iptables.py"],"file_stats":[{"name":".../centos-7.7/iptables-filter-line-numbers.json","lines_changed":1},{"name":".../centos-7.7/iptables-filter-line-numbers.out","lines_changed":128},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":1},{"name":".../ubuntu-18.04/iptables-filter-line-numbers.json","lines_changed":1},{"name":".../ubuntu-18.04/iptables-filter-line-numbers.out","lines_changed":17},{"name":"tests/test_iptables.py","lines_changed":24}]}},{"commit":"47410d1a95406b0960aac705e7cfe925fea3172c","message":"version bump","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"5fa49f5e672fc6f8dc18fb4b1761c98b81362649","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]}},{"commit":"36c53827fab6ac38c0010250ec387db40fdeecfc","message":"add systemctl tests","stats":{"files_changed":19,"insertions":1316,"deletions":308,"files":["tests/fixtures/centos-7.7/systemctl-ls.json","tests/fixtures/centos-7.7/systemctl-ls.out","tests/fixtures/centos-7.7/systemctl-luf.json","tests/fixtures/centos-7.7/systemctl-luf.out","tests/fixtures/centos-7.7/systemctl.json","tests/fixtures/centos-7.7/systemctl.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/systemctl-lj.json","tests/fixtures/ubuntu-18.04/systemctl-lj.out","tests/fixtures/ubuntu-18.04/systemctl-ls.json","tests/fixtures/ubuntu-18.04/systemctl-ls.out","tests/fixtures/ubuntu-18.04/systemctl-luf.json","tests/fixtures/ubuntu-18.04/systemctl-luf.out","tests/fixtures/ubuntu-18.04/systemctl.json","tests/fixtures/ubuntu-18.04/systemctl.out","tests/test_systemctl.py","tests/test_systemctl_lj.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/systemctl-ls.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/systemctl-ls.out","lines_changed":17},{"name":"tests/fixtures/centos-7.7/systemctl-luf.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/systemctl-luf.out","lines_changed":247},{"name":"tests/fixtures/centos-7.7/systemctl.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/systemctl.out","lines_changed":334},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":8},{"name":"tests/fixtures/ubuntu-18.04/systemctl-lj.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/systemctl-lj.out","lines_changed":6},{"name":"tests/fixtures/ubuntu-18.04/systemctl-ls.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/systemctl-ls.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-18.04/systemctl-luf.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/systemctl-luf.out","lines_changed":324},{"name":"tests/fixtures/ubuntu-18.04/systemctl.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/systemctl.out","lines_changed":528},{"name":"tests/test_systemctl.py","lines_changed":4},{"name":"tests/test_systemctl_lj.py","lines_changed":40},{"name":"tests/test_systemctl_ls.py","lines_changed":40},{"name":"tests/test_systemctl_luf.py","lines_changed":40}]}},{"commit":"51631aef5b1b6fdeff4ab543510a9f9e15a0c2c4","message":"add systemctl tests","stats":{"files_changed":5,"insertions":358,"deletions":0,"files":["tests/fixtures/centos-7.7/systemctl.json","tests/fixtures/centos-7.7/systemctl.out","tests/fixtures/ubuntu-18.04/systemctl.json","tests/fixtures/ubuntu-18.04/systemctl.out","tests/test_systemctl.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/systemctl.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/systemctl.out","lines_changed":118},{"name":"tests/fixtures/ubuntu-18.04/systemctl.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/systemctl.out","lines_changed":198},{"name":"tests/test_systemctl.py","lines_changed":40}]}},{"commit":"a0298ac8a39093620b6859c909a78d11ab4a8e56","message":"add fstab tests","stats":{"files_changed":5,"insertions":55,"deletions":0,"files":["tests/fixtures/centos-7.7/fstab.json","tests/fixtures/centos-7.7/fstab.out","tests/fixtures/ubuntu-18.04/fstab.json","tests/fixtures/ubuntu-18.04/fstab.out","tests/test_fstab.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/fstab.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/fstab.out","lines_changed":11},{"name":"tests/fixtures/ubuntu-18.04/fstab.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/fstab.out","lines_changed":2},{"name":"tests/test_fstab.py","lines_changed":40}]}},{"commit":"98c0188821ebaa71c5661f2e095cf464bec695f2","message":"formatting fix","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/systemctl_ls.md","jc/parsers/systemctl_ls.py"],"file_stats":[{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2}]}},{"commit":"ab1dabe3e42997825707006b63cc0c03d28470d4","message":"doc update","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py"],"file_stats":[{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2}]}},{"commit":"94bdb11fdf0e16d89769046d317643334ef1acdd","message":"remove systemctl from TODO","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]}},{"commit":"b6727d68bab66164a3834b240ae868062aad9371","message":"add systemctl parsers","stats":{"files_changed":1,"insertions":68,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":68}]}},{"commit":"89bad7fc2b4023b10b6eeb7ff1f8f18b71731cb6","message":"remove systemctl list-machines parser","stats":{"files_changed":5,"insertions":1,"deletions":191,"files":["changelog.txt","docgen.sh","docs/parsers/systemctl_lm.md","jc/cli.py","jc/parsers/systemctl_lm.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/systemctl_lm.md","lines_changed":76},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/systemctl_lm.py","lines_changed":110}]}},{"commit":"c0b8b810a2616e77973c1223f9c39329112337ac","message":"add systemctl list parsers","stats":{"files_changed":5,"insertions":306,"deletions":0,"files":["docgen.sh","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_lm.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md"],"file_stats":[{"name":"docgen.sh","lines_changed":4},{"name":"docs/parsers/systemctl_lj.md","lines_changed":94},{"name":"docs/parsers/systemctl_lm.md","lines_changed":76},{"name":"docs/parsers/systemctl_ls.md","lines_changed":68},{"name":"docs/parsers/systemctl_luf.md","lines_changed":64}]}},{"commit":"31eb65acd18b6d9163de900dbe48807a41a23785","message":"doc fix","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_lm.py"],"file_stats":[{"name":"jc/parsers/systemctl_lm.py","lines_changed":4}]}},{"commit":"513bbeb4649c011476930e1d1bf739ff06c2d66f","message":"add break on footer condition","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/systemctl_lj.py"],"file_stats":[{"name":"jc/parsers/systemctl_lj.py","lines_changed":2}]}},{"commit":"3a52fb725a0e56b52a0ea430266400b268360737","message":"add systemctl list-jobs parser","stats":{"files_changed":2,"insertions":55,"deletions":29,"files":["jc/cli.py","jc/parsers/systemctl_lj.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4},{"name":"jc/parsers/systemctl_lj.py","lines_changed":80}]}},{"commit":"5affd444999de88b9bff7b49d790913540f97cd2","message":"add systemctl_lj, lm, ls, and luf","stats":{"files_changed":6,"insertions":342,"deletions":24,"files":["jc/cli.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_lm.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":11},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":110},{"name":"jc/parsers/systemctl_lm.py","lines_changed":110},{"name":"jc/parsers/systemctl_ls.py","lines_changed":101},{"name":"jc/parsers/systemctl_luf.py","lines_changed":32}]}},{"commit":"5dbc6e806c5d05bfa1f7e2156ed2573341eb23c9","message":"add systemctl_luf parser","stats":{"files_changed":2,"insertions":142,"deletions":29,"files":["jc/cli.py","jc/parsers/systemctl_luf.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":61},{"name":"jc/parsers/systemctl_luf.py","lines_changed":110}]}},{"commit":"59ae31f3f342c9337037aac4630310c9b9eb8287","message":"add systemctl parser","stats":{"files_changed":6,"insertions":219,"deletions":0,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/systemctl.md","jc/cli.py","jc/parsers/systemctl.py"],"file_stats":[{"name":"README.md","lines_changed":29},{"name":"changelog.txt","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/systemctl.md","lines_changed":76},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/systemctl.py","lines_changed":109}]}},{"commit":"230e921c2e8d931ea8a6abdf81215dbfc968b41c","message":"remove fstab from TODO","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]}},{"commit":"a7c3d88b08ab90b719035cb15d78afe708235742","message":"update example and docs","stats":{"files_changed":3,"insertions":136,"deletions":0,"files":["docgen.sh","docs/parsers/fstab.md","jc/parsers/fstab.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/fstab.md","lines_changed":107},{"name":"jc/parsers/fstab.py","lines_changed":28}]}},{"commit":"9b453bcb84dd9f2f566955eda1ab35c863b3e8a1","message":"remove commented code block","stats":{"files_changed":1,"insertions":1,"deletions":13,"files":["jc/parsers/fstab.py"],"file_stats":[{"name":"jc/parsers/fstab.py","lines_changed":14}]}},{"commit":"ce43c782f601fc12267fa22279e8e0142ecc3a7f","message":"fstab update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"cb16faaf4d1700379d53053fe06824fd03404f87","message":"helptext update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"3f1d3ff6d85422536e0adfb6433fd3ec0399ebe1","message":"add examples","stats":{"files_changed":2,"insertions":73,"deletions":6,"files":["README.md","jc/parsers/fstab.py"],"file_stats":[{"name":"README.md","lines_changed":31},{"name":"jc/parsers/fstab.py","lines_changed":48}]}},{"commit":"6f67eecd5ed46f8a692ff5dd607a2395a5c838ff","message":"add fstab parser","stats":{"files_changed":2,"insertions":108,"deletions":0,"files":["jc/cli.py","jc/parsers/fstab.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/fstab.py","lines_changed":105}]}},{"commit":"e75c819190634f0a9048942b39eda691831829ee","message":"changelog update","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]}},{"commit":"601e68d104dd43940acadaa574dfd9b5117b0476","message":"doc update","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/hosts.md","jc/parsers/hosts.py"],"file_stats":[{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2}]}},{"commit":"8285ecfd1e7810102cdbc399398a16f999c841ee","message":"enhance test file with comments","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["tests/fixtures/centos-7.7/hosts.out","tests/fixtures/ubuntu-18.04/hosts.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/hosts.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/hosts.out","lines_changed":3}]}},{"commit":"8726de902e527b95a12afd79a53d533cc176703d","message":"add hosts parser","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]}},{"commit":"4133585274b0e7faa0255a911468248eb390d673","message":"add hosts tests","stats":{"files_changed":5,"insertions":53,"deletions":0,"files":["tests/fixtures/centos-7.7/hosts.json","tests/fixtures/centos-7.7/hosts.out","tests/fixtures/ubuntu-18.04/hosts.json","tests/fixtures/ubuntu-18.04/hosts.out","tests/test_hosts.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/hosts.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/hosts.out","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/hosts.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/hosts.out","lines_changed":9},{"name":"tests/test_hosts.py","lines_changed":40}]}},{"commit":"ad913b141721655a72a7b2a6ad60037e5acd5f9a","message":"add hosts docs","stats":{"files_changed":4,"insertions":148,"deletions":2,"files":["README.md","docgen.sh","docs/parsers/hosts.md","jc/parsers/hosts.py"],"file_stats":[{"name":"README.md","lines_changed":51},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/hosts.md","lines_changed":96},{"name":"jc/parsers/hosts.py","lines_changed":2}]}},{"commit":"7113e5a844fc0304f62f4afe65b5cbc816f75372","message":"filter out comments at the end of the line","stats":{"files_changed":1,"insertions":10,"deletions":0,"files":["jc/parsers/hosts.py"],"file_stats":[{"name":"jc/parsers/hosts.py","lines_changed":10}]}},{"commit":"a3a8369dc0e7227072f595cef1e57d471eff4d2f","message":"add docs","stats":{"files_changed":1,"insertions":51,"deletions":9,"files":["jc/parsers/hosts.py"],"file_stats":[{"name":"jc/parsers/hosts.py","lines_changed":60}]}},{"commit":"64016b8ef049d5d4f02b4371f5cc9632c19bcaa2","message":"add hosts parser","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["jc/cli.py","jc/parsers/hosts.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/hosts.py","lines_changed":89}]}},{"commit":"1cb49d60c84054b0446f299f6b4bab7d102101c1","message":"remove sar and sadf","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"c858adfd12144569d0b990a217c5bcd75bd23828","message":"remove stat from todo","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]}},{"commit":"08d68327c777dd740d93a1b5fff8cf62f58904c6","message":"add stat tests","stats":{"files_changed":5,"insertions":8080,"deletions":0,"files":["tests/fixtures/centos-7.7/stat.json","tests/fixtures/centos-7.7/stat.out","tests/fixtures/ubuntu-18.04/stat.json","tests/fixtures/ubuntu-18.04/stat.out","tests/test_stat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/stat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/stat.out","lines_changed":6678},{"name":"tests/fixtures/ubuntu-18.04/stat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/stat.out","lines_changed":1360},{"name":"tests/test_stat.py","lines_changed":40}]}},{"commit":"0d7c6c5664911af7a41149d51dd6ae05b39d7648","message":"doc fix and add continue lines","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/parsers/stat.md","jc/parsers/stat.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":8}]}},{"commit":"8bfa41dbf485cb06c928bc00a68727d2ceac21fa","message":"change values to null if -","stats":{"files_changed":3,"insertions":22,"deletions":14,"files":["README.md","docs/parsers/stat.md","jc/parsers/stat.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docs/parsers/stat.md","lines_changed":12},{"name":"jc/parsers/stat.py","lines_changed":20}]}},{"commit":"7e2fa48ed4f3fd452082ce06e7306efd38b2d508","message":"update changelog","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]}},{"commit":"340635cad5224f2c715bf961956f4b9b6119d80b","message":"fix stats doc","stats":{"files_changed":3,"insertions":408,"deletions":111,"files":["docgen.sh","docs/parsers/ss.md","docs/parsers/stat.md"],"file_stats":[{"name":"docgen.sh","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":363},{"name":"docs/parsers/stat.md","lines_changed":154}]}},{"commit":"8f77d1de098f035767d73a6965a695b95b75e161","message":"add stat docs","stats":{"files_changed":2,"insertions":111,"deletions":253,"files":["docgen.sh","docs/parsers/ss.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ss.md","lines_changed":363}]}},{"commit":"7dcf1b25ffb801375f0bf4263f34713ded904de9","message":"add link_to field","stats":{"files_changed":1,"insertions":13,"deletions":0,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":13}]}},{"commit":"9b735381063a1167a6a74864a43b81aefd98009f","message":"set compatibility to linux only","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":2}]}},{"commit":"3bf8c8c6dbdf7e03e26b4581e35c3274084c07ef","message":"pep8 fixes","stats":{"files_changed":7,"insertions":27,"deletions":27,"files":["jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/mount.py","lines_changed":6},{"name":"jc/parsers/netstat.py","lines_changed":8},{"name":"jc/parsers/ps.py","lines_changed":8},{"name":"jc/parsers/route.py","lines_changed":8},{"name":"jc/parsers/uname.py","lines_changed":8},{"name":"jc/parsers/uptime.py","lines_changed":8},{"name":"jc/parsers/w.py","lines_changed":8}]}},{"commit":"04a1ff2ca7873d55cdbc831e521f3d4892074d98","message":"pep8 fixes","stats":{"files_changed":8,"insertions":28,"deletions":28,"files":["jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":8},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":6},{"name":"jc/parsers/jobs.py","lines_changed":6},{"name":"jc/parsers/ls.py","lines_changed":8},{"name":"jc/parsers/lsblk.py","lines_changed":10},{"name":"jc/parsers/lsmod.py","lines_changed":8},{"name":"jc/parsers/lsof.py","lines_changed":8}]}},{"commit":"64647d230ac936cb43864481ae0f45d13707d7b4","message":"pep8 cleanup","stats":{"files_changed":6,"insertions":21,"deletions":21,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":8},{"name":"jc/parsers/dig.py","lines_changed":8},{"name":"jc/parsers/env.py","lines_changed":8},{"name":"jc/parsers/foo.py","lines_changed":8},{"name":"jc/parsers/free.py","lines_changed":6}]}},{"commit":"c2a67e1b70f33044aecabd8b46018117cb38cb9c","message":"add stat parser","stats":{"files_changed":2,"insertions":213,"deletions":16,"files":["README.md","jc/parsers/stat.py"],"file_stats":[{"name":"README.md","lines_changed":48},{"name":"jc/parsers/stat.py","lines_changed":181}]}},{"commit":"edb9a7c76e1fedaf37b6a226ad4e1cfc08a9a5ec","message":"add stat parser","stats":{"files_changed":2,"insertions":94,"deletions":0,"files":["jc/cli.py","jc/parsers/stat.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/stat.py","lines_changed":91}]}},{"commit":"a407f5b67833cc5f8dda9fe8265cd34e62f28d14","message":"minor update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"e5b4987acb70e854d9996350235c5535b4a46b69","message":"doc update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"ba8cc18eebe779742cff0ba4c8bebe376e787c8c","message":"add ss tests","stats":{"files_changed":5,"insertions":405,"deletions":0,"files":["tests/fixtures/centos-7.7/ss-sudo-a.json","tests/fixtures/centos-7.7/ss-sudo-a.out","tests/fixtures/ubuntu-18.04/ss-sudo-a.json","tests/fixtures/ubuntu-18.04/ss-sudo-a.out","tests/test_ss.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ss-sudo-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ss-sudo-a.out","lines_changed":204},{"name":"tests/fixtures/ubuntu-18.04/ss-sudo-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ss-sudo-a.out","lines_changed":159},{"name":"tests/test_ss.py","lines_changed":40}]}},{"commit":"d2c7316e00b9aaf19231c05351821041458baf98","message":"update command options info","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]}},{"commit":"609aa14d243206e81ed31f8438c3f42e8263e140","message":"spelling fix","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/ss.md","jc/parsers/ss.py"],"file_stats":[{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2}]}},{"commit":"ef1ad4c700fcb740b5fbe1e12205b9a30ae427ab","message":"doc update","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["docs/parsers/ss.md","jc/parsers/ss.py"],"file_stats":[{"name":"docs/parsers/ss.md","lines_changed":3},{"name":"jc/parsers/ss.py","lines_changed":3}]}},{"commit":"a0e2732152dc3005914b9a3e4f03e937a113c67f","message":"add ss example","stats":{"files_changed":1,"insertions":64,"deletions":12,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":76}]}},{"commit":"9b5d3e3be1ac07813e716f8426fe89cced478221","message":"update doc","stats":{"files_changed":1,"insertions":135,"deletions":25,"files":["docs/parsers/ss.md"],"file_stats":[{"name":"docs/parsers/ss.md","lines_changed":160}]}},{"commit":"2663ef31fbc1b69b89b8032640a25065cc953866","message":"fix field names per ss documentation","stats":{"files_changed":1,"insertions":159,"deletions":30,"files":["jc/parsers/ss.py"],"file_stats":[{"name":"jc/parsers/ss.py","lines_changed":189}]}},{"commit":"a4cdd3378e6a031f16dd371ed5cd60ff018feb32","message":"add compatibility info","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":6}]}},{"commit":"2f805da24d0e833e3d2a1f3a5ec34031fa911c05","message":"add colon to parameter in docs","stats":{"files_changed":45,"insertions":51,"deletions":51,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/utils.md","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/utils.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":8},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":8}]}},{"commit":"79152a946d93e4facf9711bfa0f421e1978e0f1f","message":"initialize network_list and socket_list variables","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":3}]}},{"commit":"de37bb37d01b397df2b5992b4acd64817380401d","message":"add ss docs","stats":{"files_changed":3,"insertions":187,"deletions":1,"files":["docgen.sh","docs/parsers/ss.md","jc/parsers/ss.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ss.md","lines_changed":184},{"name":"jc/parsers/ss.py","lines_changed":3}]}},{"commit":"f783e44e5c0cd05733da5d24573f06d05760f993","message":"doc fix","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"changelog.txt","lines_changed":1}]}},{"commit":"af82f2c991ac0668485e75ae78a26b9553ec8b13","message":"update raw format note","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"46774daf9d3e0612df8f79d4b6b724e612ceb725","message":"doc update","stats":{"files_changed":2,"insertions":194,"deletions":4,"files":["README.md","jc/parsers/ss.py"],"file_stats":[{"name":"README.md","lines_changed":68},{"name":"jc/parsers/ss.py","lines_changed":130}]}},{"commit":"648306b7856fe2e296ce463ff4c9c2a8632c92d4","message":"process ss data","stats":{"files_changed":1,"insertions":44,"deletions":22,"files":["jc/parsers/ss.py"],"file_stats":[{"name":"jc/parsers/ss.py","lines_changed":66}]}},{"commit":"b7a4f205b80c0a6a41aaabf59703525ac526c295","message":"parser fixes","stats":{"files_changed":1,"insertions":17,"deletions":14,"files":["jc/parsers/ss.py"],"file_stats":[{"name":"jc/parsers/ss.py","lines_changed":31}]}},{"commit":"fdb168b43a69358a97bf43b71a0adbc7b1ef56f5","message":"add ss parser","stats":{"files_changed":2,"insertions":120,"deletions":0,"files":["jc/cli.py","jc/parsers/ss.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/ss.py","lines_changed":117}]}},{"commit":"b6f65c93c462856f26201df0cbfe804b29a65169","message":"ps doc update","stats":{"files_changed":3,"insertions":43,"deletions":69,"files":["README.md","docs/parsers/ps.md","jc/parsers/ps.py"],"file_stats":[{"name":"README.md","lines_changed":26},{"name":"docs/parsers/ps.md","lines_changed":43},{"name":"jc/parsers/ps.py","lines_changed":43}]}},{"commit":"3f4838f17a81969718d9e5b6bafa21e0b92e1d95","message":"remove cli.md","stats":{"files_changed":2,"insertions":0,"deletions":6,"files":["docgen.sh","docs/cli.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/cli.md","lines_changed":5}]}},{"commit":"eef0dee2aa206716d9cf011bec58a06c46bbee15","message":"doc update","stats":{"files_changed":2,"insertions":8,"deletions":0,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":4},{"name":"jc/utils.py","lines_changed":4}]}},{"commit":"e17388d3b2d1521d963bf9dd9e7a4ba5ba9bb09d","message":"doc update","stats":{"files_changed":2,"insertions":44,"deletions":4,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":22},{"name":"jc/utils.py","lines_changed":26}]}},{"commit":"7e6a1bc719b7160ba70cd326ff6aa182993a7380","message":"doc update","stats":{"files_changed":2,"insertions":41,"deletions":63,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":51},{"name":"jc/__init__.py","lines_changed":53}]}},{"commit":"37738a2ea2f15af847e4b8383aba911e2020a3e8","message":"update contributions","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"c5834a57db8957723a1425b9db46c433e28a3af1","message":"add todo section","stats":{"files_changed":1,"insertions":14,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":14}]}},{"commit":"91b9373f380e06f91888811edbfb21747ff08810","message":"new examples","stats":{"files_changed":1,"insertions":417,"deletions":673,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1090}]}},{"commit":"ce0bb5b816eed0c75542ead474c3dcb8401be2d7","message":"formatting fix","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"f330ff0eff00586f46d18497f2441e94b6430e91","message":"wrap example text","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":12}]}},{"commit":"4b02700414660b90518311485761870402368625","message":"update simple examples","stats":{"files_changed":1,"insertions":9,"deletions":20,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":29}]}},{"commit":"ee30180376b7acec46314bbc483866bff41c362a","message":"fix note","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"338e0ff15c7fac84475c1ed107e6a23e7a009b1f","message":"add schema note","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"3ac75305dfa33429646bb5d415567034cccfeee3","message":"update process() doc","stats":{"files_changed":39,"insertions":351,"deletions":39,"files":["docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/df.md","lines_changed":10},{"name":"docs/parsers/dig.md","lines_changed":10},{"name":"docs/parsers/env.md","lines_changed":10},{"name":"docs/parsers/free.md","lines_changed":10},{"name":"docs/parsers/history.md","lines_changed":10},{"name":"docs/parsers/ifconfig.md","lines_changed":10},{"name":"docs/parsers/iptables.md","lines_changed":10},{"name":"docs/parsers/jobs.md","lines_changed":10},{"name":"docs/parsers/ls.md","lines_changed":10},{"name":"docs/parsers/lsblk.md","lines_changed":10},{"name":"docs/parsers/lsmod.md","lines_changed":10},{"name":"docs/parsers/lsof.md","lines_changed":10},{"name":"docs/parsers/mount.md","lines_changed":10},{"name":"docs/parsers/netstat.md","lines_changed":10},{"name":"docs/parsers/ps.md","lines_changed":10},{"name":"docs/parsers/route.md","lines_changed":10},{"name":"docs/parsers/uname.md","lines_changed":10},{"name":"docs/parsers/uptime.md","lines_changed":10},{"name":"docs/parsers/w.md","lines_changed":10},{"name":"jc/parsers/df.py","lines_changed":10},{"name":"jc/parsers/dig.py","lines_changed":10},{"name":"jc/parsers/env.py","lines_changed":10},{"name":"jc/parsers/foo.py","lines_changed":10},{"name":"jc/parsers/free.py","lines_changed":10},{"name":"jc/parsers/history.py","lines_changed":10},{"name":"jc/parsers/ifconfig.py","lines_changed":10},{"name":"jc/parsers/iptables.py","lines_changed":10},{"name":"jc/parsers/jobs.py","lines_changed":10},{"name":"jc/parsers/ls.py","lines_changed":10},{"name":"jc/parsers/lsblk.py","lines_changed":10},{"name":"jc/parsers/lsmod.py","lines_changed":10},{"name":"jc/parsers/lsof.py","lines_changed":10},{"name":"jc/parsers/mount.py","lines_changed":10},{"name":"jc/parsers/netstat.py","lines_changed":10},{"name":"jc/parsers/ps.py","lines_changed":10},{"name":"jc/parsers/route.py","lines_changed":10},{"name":"jc/parsers/uname.py","lines_changed":10},{"name":"jc/parsers/uptime.py","lines_changed":10},{"name":"jc/parsers/w.py","lines_changed":10}]}},{"commit":"3bdcf44afb708cf6a716a0847b119f895602c23e","message":"doc update","stats":{"files_changed":2,"insertions":18,"deletions":2,"files":["docs/parsers/arp.md","jc/parsers/arp.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":10},{"name":"jc/parsers/arp.py","lines_changed":10}]}},{"commit":"e3f4ffede56fe48c0a282a021ac5cdfd7a8abee9","message":"doc update","stats":{"files_changed":20,"insertions":172,"deletions":77,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":13},{"name":"docs/parsers/dig.md","lines_changed":13},{"name":"docs/parsers/env.md","lines_changed":13},{"name":"docs/parsers/free.md","lines_changed":13},{"name":"docs/parsers/history.md","lines_changed":13},{"name":"docs/parsers/ifconfig.md","lines_changed":13},{"name":"docs/parsers/iptables.md","lines_changed":13},{"name":"docs/parsers/jobs.md","lines_changed":13},{"name":"docs/parsers/ls.md","lines_changed":13},{"name":"docs/parsers/lsblk.md","lines_changed":13},{"name":"docs/parsers/lsmod.md","lines_changed":13},{"name":"docs/parsers/lsof.md","lines_changed":13},{"name":"docs/parsers/mount.md","lines_changed":13},{"name":"docs/parsers/netstat.md","lines_changed":13},{"name":"docs/parsers/ps.md","lines_changed":13},{"name":"docs/parsers/route.md","lines_changed":13},{"name":"docs/parsers/uname.md","lines_changed":13},{"name":"docs/parsers/uptime.md","lines_changed":13},{"name":"docs/parsers/w.md","lines_changed":13}]}},{"commit":"f0c8725d4355113f7690f20bb99078e488084ad7","message":"doc update","stats":{"files_changed":21,"insertions":181,"deletions":81,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":13},{"name":"jc/parsers/dig.py","lines_changed":13},{"name":"jc/parsers/env.py","lines_changed":13},{"name":"jc/parsers/foo.py","lines_changed":13},{"name":"jc/parsers/free.py","lines_changed":13},{"name":"jc/parsers/history.py","lines_changed":13},{"name":"jc/parsers/ifconfig.py","lines_changed":13},{"name":"jc/parsers/iptables.py","lines_changed":13},{"name":"jc/parsers/jobs.py","lines_changed":13},{"name":"jc/parsers/ls.py","lines_changed":13},{"name":"jc/parsers/lsblk.py","lines_changed":13},{"name":"jc/parsers/lsmod.py","lines_changed":13},{"name":"jc/parsers/lsof.py","lines_changed":13},{"name":"jc/parsers/mount.py","lines_changed":13},{"name":"jc/parsers/netstat.py","lines_changed":13},{"name":"jc/parsers/ps.py","lines_changed":13},{"name":"jc/parsers/route.py","lines_changed":13},{"name":"jc/parsers/uname.py","lines_changed":13},{"name":"jc/parsers/uptime.py","lines_changed":13},{"name":"jc/parsers/w.py","lines_changed":13}]}},{"commit":"5473bc4eb697d00bd26a038287e1137e438cacb5","message":"doc update","stats":{"files_changed":2,"insertions":16,"deletions":6,"files":["docs/parsers/arp.md","jc/parsers/arp.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":11},{"name":"jc/parsers/arp.py","lines_changed":11}]}},{"commit":"b9bd9422bfa46144416fa65add2e041d4124357b","message":"doc update","stats":{"files_changed":2,"insertions":380,"deletions":46,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":213},{"name":"jc/parsers/dig.py","lines_changed":213}]}},{"commit":"cb5729a070925a7fa29f762bd4b074532f5cba55","message":"add options to docs","stats":{"files_changed":1,"insertions":62,"deletions":44,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":106}]}},{"commit":"f0b1ab42337746afd37365abdf44729d530d5410","message":"doc update","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":1},{"name":"jc/utils.py","lines_changed":1}]}},{"commit":"b15386e849b9fea347e7b17307eedf779d8022fc","message":"doc update","stats":{"files_changed":2,"insertions":11,"deletions":5,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":7},{"name":"jc/utils.py","lines_changed":9}]}},{"commit":"d2a2c8da35ee44e9a7572885609548eb809bcdda","message":"doc updates","stats":{"files_changed":3,"insertions":1,"deletions":5,"files":["docs/parsers/iptables.md","docs/parsers/mount.md","docs/parsers/uname.md"],"file_stats":[{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2}]}},{"commit":"7251548cbb09beae6971385a56036e9649bd9b2c","message":"documentation updates","stats":{"files_changed":3,"insertions":3,"deletions":5,"files":["jc/parsers/iptables.py","jc/parsers/mount.py","jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":3},{"name":"jc/parsers/uname.py","lines_changed":3}]}},{"commit":"146e29f7cbc0f396be67dbd7ae971a4ef4dafb7b","message":"update docs","stats":{"files_changed":47,"insertions":5386,"deletions":2249,"files":["docgen.sh","docs/cli.md","docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/readme.md","docs/utils.md","jc/__init__.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/utils.py"],"file_stats":[{"name":"docgen.sh","lines_changed":27},{"name":"docs/cli.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":110},{"name":"docs/parsers/df.md","lines_changed":97},{"name":"docs/parsers/dig.md","lines_changed":212},{"name":"docs/parsers/env.md","lines_changed":72},{"name":"docs/parsers/free.md","lines_changed":77},{"name":"docs/parsers/history.md","lines_changed":64},{"name":"docs/parsers/ifconfig.md","lines_changed":170},{"name":"docs/parsers/iptables.md","lines_changed":168},{"name":"docs/parsers/jobs.md","lines_changed":98},{"name":"docs/parsers/ls.md","lines_changed":168},{"name":"docs/parsers/lsblk.md","lines_changed":273},{"name":"docs/parsers/lsmod.md","lines_changed":130},{"name":"docs/parsers/lsof.md","lines_changed":124},{"name":"docs/parsers/mount.md","lines_changed":82},{"name":"docs/parsers/netstat.md","lines_changed":352},{"name":"docs/parsers/ps.md","lines_changed":223},{"name":"docs/parsers/route.md","lines_changed":129},{"name":"docs/parsers/uname.md","lines_changed":55},{"name":"docs/parsers/uptime.md","lines_changed":56},{"name":"docs/parsers/w.md","lines_changed":108},{"name":"docs/readme.md","lines_changed":79},{"name":"docs/utils.md","lines_changed":22},{"name":"jc/__init__.py","lines_changed":135},{"name":"jc/parsers/arp.py","lines_changed":176},{"name":"jc/parsers/df.py","lines_changed":129},{"name":"jc/parsers/dig.py","lines_changed":362},{"name":"jc/parsers/env.py","lines_changed":101},{"name":"jc/parsers/foo.py","lines_changed":37},{"name":"jc/parsers/free.py","lines_changed":111},{"name":"jc/parsers/history.py","lines_changed":85},{"name":"jc/parsers/ifconfig.py","lines_changed":294},{"name":"jc/parsers/iptables.py","lines_changed":271},{"name":"jc/parsers/jobs.py","lines_changed":150},{"name":"jc/parsers/ls.py","lines_changed":280},{"name":"jc/parsers/lsblk.py","lines_changed":499},{"name":"jc/parsers/lsmod.py","lines_changed":211},{"name":"jc/parsers/lsof.py","lines_changed":205},{"name":"jc/parsers/mount.py","lines_changed":115},{"name":"jc/parsers/netstat.py","lines_changed":661},{"name":"jc/parsers/ps.py","lines_changed":389},{"name":"jc/parsers/route.py","lines_changed":213},{"name":"jc/parsers/uname.py","lines_changed":57},{"name":"jc/parsers/uptime.py","lines_changed":69},{"name":"jc/parsers/w.py","lines_changed":173},{"name":"jc/utils.py","lines_changed":11}]}},{"commit":"363fd3eab409351121dab8a11c6b565829ccd84a","message":"move parser_name to except block","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"4083dd4260ff3a8bb6649e1661cf3e058fdbad59","message":"add -d option","stats":{"files_changed":2,"insertions":24,"deletions":5,"files":["changelog.txt","jc/cli.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/cli.py","lines_changed":28}]}},{"commit":"b2b74547baaf33058d74fc08cb665777b19bd05a","message":"add netstat-sudo-aeep tests","stats":{"files_changed":6,"insertions":317,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-sudo-aeep.json","tests/fixtures/centos-7.7/netstat-sudo-aeep.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.json","tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.out","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/netstat-sudo-aeep.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-sudo-aeep.out","lines_changed":164},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.out","lines_changed":126},{"name":"tests/test_netstat.py","lines_changed":24}]}},{"commit":"dddb0baabf8a78261ac80380b97e7c92c7ce4d89","message":"use \\u2063 instead of \\u2026","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":8}]}},{"commit":"84b4f67ef9d4bb0db201a095d74400a56394589d","message":"new json output","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["tests/fixtures/centos-7.7/ps-axu.json","tests/fixtures/ubuntu-18.04/ps-axu.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ps-axu.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ps-axu.json","lines_changed":2}]}},{"commit":"3a089138b8c269ba3c5f7aec87ae3f8ec368c3ab","message":"add int and float changes","stats":{"files_changed":1,"insertions":129,"deletions":9,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":138}]}},{"commit":"3ff0305c8e62ce3b5a8f3f9174c5a9da3bc22766","message":"add lsblk tests","stats":{"files_changed":8,"insertions":54,"deletions":2,"files":["tests/fixtures/centos-7.7/lsblk-allcols.json","tests/fixtures/centos-7.7/lsblk-allcols.out","tests/fixtures/centos-7.7/lsblk.json","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/lsblk-allcols.json","tests/fixtures/ubuntu-18.04/lsblk-allcols.out","tests/fixtures/ubuntu-18.04/lsblk.json","tests/test_lsblk.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/lsblk-allcols.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsblk-allcols.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/lsblk.json","lines_changed":2},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsblk-allcols.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsblk-allcols.out","lines_changed":18},{"name":"tests/fixtures/ubuntu-18.04/lsblk.json","lines_changed":2},{"name":"tests/test_lsblk.py","lines_changed":24}]}},{"commit":"761edc3c6cfc215fe45c65ee2bb5462cb460b6a6","message":"remove unused parse_pairs function","stats":{"files_changed":1,"insertions":1,"deletions":6,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":7}]}},{"commit":"3351c81f647ac97a5038cc0c14adb31e55832a77","message":"add documentation","stats":{"files_changed":1,"insertions":200,"deletions":2,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":202}]}},{"commit":"3dfc6f67d770c59804bdeb371d5c78e3f3668f9e","message":"change empty values to Null","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":6}]}},{"commit":"1546ec3bd139ef687282f60786388b5207541c98","message":"fixes for right justified columns","stats":{"files_changed":1,"insertions":17,"deletions":13,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":30}]}},{"commit":"2a953011f72e922c89b9af6dfebd1983da7c338d","message":"rewrite of lsblk parser to use a custom delimiter","stats":{"files_changed":2,"insertions":50,"deletions":155,"files":["changelog.txt","jc/parsers/lsblk.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":203}]}},{"commit":"d2f755de9d2be7b0af5f010042e1f4ca589c5464","message":"updates tests","stats":{"files_changed":14,"insertions":250,"deletions":566,"files":["tests/test_ifconfig.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_ls.py","tests/test_lsblk.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_ps.py","tests/test_route.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py"],"file_stats":[{"name":"tests/test_ifconfig.py","lines_changed":59},{"name":"tests/test_iptables.py","lines_changed":249},{"name":"tests/test_jobs.py","lines_changed":19},{"name":"tests/test_ls.py","lines_changed":58},{"name":"tests/test_lsblk.py","lines_changed":25},{"name":"tests/test_lsmod.py","lines_changed":22},{"name":"tests/test_lsof.py","lines_changed":59},{"name":"tests/test_mount.py","lines_changed":30},{"name":"tests/test_netstat.py","lines_changed":110},{"name":"tests/test_ps.py","lines_changed":57},{"name":"tests/test_route.py","lines_changed":51},{"name":"tests/test_uname.py","lines_changed":27},{"name":"tests/test_uptime.py","lines_changed":23},{"name":"tests/test_w.py","lines_changed":27}]}},{"commit":"f363334639c5fa3a43889794ea52409056a2d886","message":"update tests","stats":{"files_changed":5,"insertions":87,"deletions":219,"files":["tests/test_df.py","tests/test_dig.py","tests/test_env.py","tests/test_free.py","tests/test_history.py"],"file_stats":[{"name":"tests/test_df.py","lines_changed":43},{"name":"tests/test_dig.py","lines_changed":196},{"name":"tests/test_env.py","lines_changed":13},{"name":"tests/test_free.py","lines_changed":41},{"name":"tests/test_history.py","lines_changed":13}]}},{"commit":"750197e48596ad96804477053d3ff3c8063ea68a","message":"new tests","stats":{"files_changed":1,"insertions":27,"deletions":70,"files":["tests/test_arp.py"],"file_stats":[{"name":"tests/test_arp.py","lines_changed":97}]}},{"commit":"36b349e4ed39fe611c7d87a47c378cc4d4627ad2","message":"json output files","stats":{"files_changed":76,"insertions":76,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-a.json","tests/fixtures/centos-7.7/arp-v.json","tests/fixtures/centos-7.7/arp.json","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/df.json","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/centos-7.7/env.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/centos-7.7/free.json","tests/fixtures/centos-7.7/history.json","tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/centos-7.7/iptables-filter-nv.json","tests/fixtures/centos-7.7/iptables-filter.json","tests/fixtures/centos-7.7/iptables-mangle.json","tests/fixtures/centos-7.7/iptables-nat.json","tests/fixtures/centos-7.7/iptables-raw.json","tests/fixtures/centos-7.7/jobs.json","tests/fixtures/centos-7.7/ls-al.json","tests/fixtures/centos-7.7/ls-alh.json","tests/fixtures/centos-7.7/ls.json","tests/fixtures/centos-7.7/lsblk.json","tests/fixtures/centos-7.7/lsmod.json","tests/fixtures/centos-7.7/lsof-sudo.json","tests/fixtures/centos-7.7/lsof.json","tests/fixtures/centos-7.7/mount.json","tests/fixtures/centos-7.7/netstat-l.json","tests/fixtures/centos-7.7/netstat-p.json","tests/fixtures/centos-7.7/netstat-sudo-lnp.json","tests/fixtures/centos-7.7/netstat.json","tests/fixtures/centos-7.7/ps-axu.json","tests/fixtures/centos-7.7/ps-ef.json","tests/fixtures/centos-7.7/route-vn.json","tests/fixtures/centos-7.7/route.json","tests/fixtures/centos-7.7/uname-a.json","tests/fixtures/centos-7.7/uptime.json","tests/fixtures/centos-7.7/w.json","tests/fixtures/ubuntu-18.04/arp-a.json","tests/fixtures/ubuntu-18.04/arp-v.json","tests/fixtures/ubuntu-18.04/arp.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/df.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json","tests/fixtures/ubuntu-18.04/env.json","tests/fixtures/ubuntu-18.04/free-h.json","tests/fixtures/ubuntu-18.04/free.json","tests/fixtures/ubuntu-18.04/history.json","tests/fixtures/ubuntu-18.04/ifconfig.json","tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","tests/fixtures/ubuntu-18.04/iptables-filter.json","tests/fixtures/ubuntu-18.04/iptables-mangle.json","tests/fixtures/ubuntu-18.04/iptables-nat.json","tests/fixtures/ubuntu-18.04/iptables-raw.json","tests/fixtures/ubuntu-18.04/jobs.json","tests/fixtures/ubuntu-18.04/ls-al.json","tests/fixtures/ubuntu-18.04/ls-alh.json","tests/fixtures/ubuntu-18.04/ls.json","tests/fixtures/ubuntu-18.04/lsblk.json","tests/fixtures/ubuntu-18.04/lsmod.json","tests/fixtures/ubuntu-18.04/lsof-sudo.json","tests/fixtures/ubuntu-18.04/lsof.json","tests/fixtures/ubuntu-18.04/mount.json","tests/fixtures/ubuntu-18.04/netstat-l.json","tests/fixtures/ubuntu-18.04/netstat-p.json","tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.json","tests/fixtures/ubuntu-18.04/netstat.json","tests/fixtures/ubuntu-18.04/ps-axu.json","tests/fixtures/ubuntu-18.04/ps-ef.json","tests/fixtures/ubuntu-18.04/route-vn.json","tests/fixtures/ubuntu-18.04/route.json","tests/fixtures/ubuntu-18.04/uname-a.json","tests/fixtures/ubuntu-18.04/uptime.json","tests/fixtures/ubuntu-18.04/w.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/arp-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/arp-v.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/arp.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/df-h.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/df.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/dig-aaaa.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/dig-x.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/dig.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/env.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/free-h.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/free.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/history.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ifconfig.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-filter-nv.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-filter.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-mangle.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-nat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-raw.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/jobs.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-al.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-alh.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsblk.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsmod.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsof-sudo.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsof.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mount.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-l.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-sudo-lnp.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ps-axu.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ps-ef.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/route-vn.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/route.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/uname-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/uptime.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/w.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/arp-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/arp-v.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/arp.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/df-h.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/df.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dig-aaaa.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dig-x.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dig.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/env.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/free-h.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/free.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/history.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ifconfig.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-mangle.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-nat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-raw.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/jobs.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-al.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-alh.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsblk.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsmod.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsof-sudo.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsof.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/mount.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-l.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ps-axu.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ps-ef.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/route-vn.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/route.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/uname-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/uptime.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/w.json","lines_changed":1}]}},{"commit":"b5f1e94fe2859c4fbcf126f8f8fb20d71a9b6433","message":"fix for space before '-' in program_name","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":1}]}},{"commit":"6a504fb0e10b1ef551ed9fe780926fe5ca02d267","message":"add exception type","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2}]}},{"commit":"e02bad2240bacbc31097d931a902a34217d559db","message":"update documentation","stats":{"files_changed":1,"insertions":123,"deletions":175,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":298}]}},{"commit":"1d4043a3b64c38a20a0db065c3bdc3c6a2d068bd","message":"add template parser","stats":{"files_changed":1,"insertions":52,"deletions":0,"files":["jc/parsers/foo.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":52}]}},{"commit":"039e034829789ca314a00abd4f1d9ad06f1a6eef","message":"fix parsing issues in program_name when spaces are in the name","stats":{"files_changed":1,"insertions":19,"deletions":6,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":25}]}},{"commit":"d828de4f4f2f4c3d582fddee79830d12511c3299","message":"update documentation","stats":{"files_changed":1,"insertions":53,"deletions":9,"files":["jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/w.py","lines_changed":62}]}},{"commit":"098000bb10a3f5ed33d285c6ba4f0dfb9a013fdc","message":"fix blank 'from' column issue","stats":{"files_changed":2,"insertions":24,"deletions":9,"files":["changelog.txt","jc/parsers/w.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/w.py","lines_changed":32}]}},{"commit":"b41165eff5cd7371e852cd33e084a919524ead9b","message":"process w data","stats":{"files_changed":1,"insertions":31,"deletions":1,"files":["jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/w.py","lines_changed":32}]}},{"commit":"6ad7891b2b34fae1a366568e4eba86e886a6dd84","message":"process uptime data","stats":{"files_changed":1,"insertions":59,"deletions":14,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":73}]}},{"commit":"72138315598cd405bc0508b554108bf3f730dcb0","message":"add process boilerplate","stats":{"files_changed":1,"insertions":31,"deletions":10,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":41}]}},{"commit":"10eedd82e4c4678fbf989fe599d7ca75deced5a8","message":"changelog update","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]}},{"commit":"a55493da0f1457a46f29511e0835adfa9d748f7b","message":"process route data","stats":{"files_changed":1,"insertions":93,"deletions":6,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":99}]}},{"commit":"89973f4162317693b0d094a64115ee87d8479d51","message":"doc updates and tty fix","stats":{"files_changed":1,"insertions":45,"deletions":27,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":72}]}},{"commit":"4802222ad50d55372f2b883d83a61181086b0619","message":"process ps data","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":11}]}},{"commit":"bcd28f06f87a4260d1787399d723817afd6aee90","message":"prep ps for process","stats":{"files_changed":1,"insertions":23,"deletions":1,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":24}]}},{"commit":"e17a47a7fa7f4c1bb4c4b55fb004963fc1b61434","message":"fix typo","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":2}]}},{"commit":"cad2e16c7aa54a70f476bf4268ff8e5985cff468","message":"document examples","stats":{"files_changed":1,"insertions":353,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":354}]}},{"commit":"5da5d278dac77bd4aa21819194e7f9e178bd1887","message":"process netstat data","stats":{"files_changed":1,"insertions":23,"deletions":0,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":23}]}},{"commit":"81b6776e57c113cbfb8346d1cfd83532a440c257","message":"remove old netstat parser","stats":{"files_changed":1,"insertions":0,"deletions":177,"files":["jc/parsers/netstat.py.old"],"file_stats":[{"name":"jc/parsers/netstat.py.old","lines_changed":177}]}},{"commit":"5ecb6bd58b4ed91f63e4a0b5939378bd9925b7b7","message":"doc updates","stats":{"files_changed":2,"insertions":4,"deletions":3,"files":["changelog.txt","jc/parsers/netstat.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":3}]}},{"commit":"21b56096c57cfcf5c55fdf5f9bab88b6d5c7dd73","message":"finalize parse_post","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":37}]}},{"commit":"8c78f959731a25a05ee6361a14853c92f8fce69b","message":"clean up trailing spaces on entries","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":8}]}},{"commit":"94a88bb5669d9a9a5dff085a4c4111bdd39df8f6","message":"post_parse flags and program_name","stats":{"files_changed":1,"insertions":35,"deletions":17,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":52}]}},{"commit":"579124475b0b517b36ddbe5bdb13be14807dea1f","message":"simplify parser_map code","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"5da83e020015eb5559d216bc3f39b3854e76adf3","message":"fix found variable error","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"a90a76d004b923edece07a52a3aa400a9ef4b005","message":"move out old netstat parser","stats":{"files_changed":2,"insertions":177,"deletions":140,"files":["jc/parsers/netstat.py.old","jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/netstat.py.old","lines_changed":177},{"name":"jc/parsers/netstat2.py","lines_changed":140}]}},{"commit":"bdfa95912398b2630fcb13e866f4013747fd0975","message":"fix compatibility code","stats":{"files_changed":20,"insertions":209,"deletions":212,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":10},{"name":"jc/parsers/env.py","lines_changed":10},{"name":"jc/parsers/free.py","lines_changed":10},{"name":"jc/parsers/history.py","lines_changed":8},{"name":"jc/parsers/ifconfig.py","lines_changed":10},{"name":"jc/parsers/iptables.py","lines_changed":10},{"name":"jc/parsers/jobs.py","lines_changed":10},{"name":"jc/parsers/ls.py","lines_changed":10},{"name":"jc/parsers/lsblk.py","lines_changed":10},{"name":"jc/parsers/lsmod.py","lines_changed":10},{"name":"jc/parsers/lsof.py","lines_changed":10},{"name":"jc/parsers/mount.py","lines_changed":10},{"name":"jc/parsers/netstat.py","lines_changed":245},{"name":"jc/parsers/ps.py","lines_changed":10},{"name":"jc/parsers/route.py","lines_changed":10},{"name":"jc/parsers/uname.py","lines_changed":10},{"name":"jc/parsers/uptime.py","lines_changed":10},{"name":"jc/parsers/w.py","lines_changed":10}]}},{"commit":"4380594275bc863e81839a6a7b032a6ff0cbb9b6","message":"remove cli functions from utils","stats":{"files_changed":1,"insertions":8,"deletions":46,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":54}]}},{"commit":"88bf252c0df3c583640286880d7992e4399e23f4","message":"rename jc.py to cli.py","stats":{"files_changed":2,"insertions":139,"deletions":128,"files":["jc/cli.py","jc/jc.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":139},{"name":"jc/jc.py","lines_changed":128}]}},{"commit":"a5efd8adce77fca7e3343f8f518c7bad578fdb4f","message":"rename jc.py to cli.py","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"2ee392eefffde77ebdf83f5e4e0c43cf8c1a7d6e","message":"add quiet mode","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/netstat2.py","lines_changed":10}]}},{"commit":"9c1d893e16ea17b16bec5fd0ec8839c4fe6f0590","message":"move utils to own module and add quiet mode","stats":{"files_changed":4,"insertions":102,"deletions":90,"files":["jc/jc.py","jc/parsers/arp.py","jc/parsers/df.py","jc/utils.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":107},{"name":"jc/parsers/arp.py","lines_changed":10},{"name":"jc/parsers/df.py","lines_changed":10},{"name":"jc/utils.py","lines_changed":65}]}},{"commit":"88dcb90c83b757285661c72429c5b60bb1ead94a","message":"changelog update","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":6}]}},{"commit":"a3bcabc89c1f74d067da0046492dbc56e50b1005","message":"mvp of netstat raw_data parser","stats":{"files_changed":1,"insertions":9,"deletions":62,"files":["jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/netstat2.py","lines_changed":71}]}},{"commit":"dafbf9fdcf53a8abbd006baef0be6697f860d2a1","message":"process lsmod data","stats":{"files_changed":4,"insertions":247,"deletions":53,"files":["jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/lsmod.py","lines_changed":85},{"name":"jc/parsers/lsof.py","lines_changed":106},{"name":"jc/parsers/mount.py","lines_changed":31},{"name":"jc/parsers/netstat2.py","lines_changed":78}]}},{"commit":"680cb2b2caa82e1e2c3225b3c44cae2ba03ba02c","message":"doc update","stats":{"files_changed":1,"insertions":76,"deletions":7,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":83}]}},{"commit":"54818a06e0e0b981810f6aec45c308da81a9e2ea","message":"change bool variable names","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":8}]}},{"commit":"88f4c5b5a93da3938b84f97abfc54539ee19ac48","message":"remove TypeError from exception check","stats":{"files_changed":6,"insertions":10,"deletions":10,"files":["jc/parsers/dig.py","jc/parsers/free.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":8},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":4},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2}]}},{"commit":"2bb7409887e8b7659613189daf58d02cb26bd6ba","message":"process lsblk data","stats":{"files_changed":2,"insertions":36,"deletions":11,"files":["jc/parsers/df.py","jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/lsblk.py","lines_changed":42}]}},{"commit":"c780aac3aba02cc042c6a3c984af198069956370","message":"add compatibility function","stats":{"files_changed":22,"insertions":91,"deletions":5,"files":["jc/jc.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat2.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":8},{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/df.py","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":5},{"name":"jc/parsers/env.py","lines_changed":5},{"name":"jc/parsers/free.py","lines_changed":4},{"name":"jc/parsers/history.py","lines_changed":5},{"name":"jc/parsers/ifconfig.py","lines_changed":5},{"name":"jc/parsers/iptables.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"jc/parsers/lsblk.py","lines_changed":1},{"name":"jc/parsers/lsmod.py","lines_changed":4},{"name":"jc/parsers/lsof.py","lines_changed":5},{"name":"jc/parsers/mount.py","lines_changed":5},{"name":"jc/parsers/netstat.py","lines_changed":5},{"name":"jc/parsers/netstat2.py","lines_changed":5},{"name":"jc/parsers/ps.py","lines_changed":4},{"name":"jc/parsers/route.py","lines_changed":4},{"name":"jc/parsers/uname.py","lines_changed":5},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/w.py","lines_changed":4}]}},{"commit":"5010aaec285e26ae9dbfdb3fcdc38a3bd36cd236","message":"put exit() back","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":2}]}},{"commit":"066e93cb075021ac94a0e2e6a36a34bc173ee6c0","message":"move exit() to errormessage()","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":2}]}},{"commit":"0bd2faa7f71a128babc68afea053159ccb91b702","message":"beautify compatibility list","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":3}]}},{"commit":"e2f926453ba386736204e358f8306dfc731b5005","message":"add install script","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["install.sh"],"file_stats":[{"name":"install.sh","lines_changed":2}]}},{"commit":"b953b79f9c46d8c5398a6c1c2769167b5aed2805","message":"add compatibility","stats":{"files_changed":3,"insertions":11,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4}]}},{"commit":"7f9967780692bec2fcbe992eee0c392ab92efb7f","message":"compatibility function call","stats":{"files_changed":2,"insertions":19,"deletions":1,"files":["jc/jc.py","jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":16},{"name":"jc/parsers/lsblk.py","lines_changed":4}]}},{"commit":"721b54665924ad1657ee83cd5fca601e03700962","message":"finish schema","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":8}]}},{"commit":"2de5e41269421c73e07d4abd6ca99b38be736261","message":"fix for more columns and build schema","stats":{"files_changed":1,"insertions":95,"deletions":12,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":107}]}},{"commit":"dfe0f6e99b6174734661fc43d9ad4b1d0dfd96e5","message":"process ls data","stats":{"files_changed":1,"insertions":75,"deletions":9,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":84}]}},{"commit":"8873b1bc697c8f9409fa676c88b5ebe109dc8717","message":"clean up process code","stats":{"files_changed":1,"insertions":24,"deletions":46,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":70}]}},{"commit":"9ff94707004fefed475603436fc0a7ffb19e6fee","message":"refactor helptext() function","stats":{"files_changed":1,"insertions":9,"deletions":4,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":13}]}},{"commit":"2c58fca53044892e15ceb5e8bcae1afb09fa3269","message":"process jobs data","stats":{"files_changed":1,"insertions":62,"deletions":4,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":66}]}},{"commit":"9e5cd90da7d92bbadbc0d25071d087a3dbd90a5b","message":"process iptables data","stats":{"files_changed":1,"insertions":131,"deletions":261,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":392}]}},{"commit":"7ee0d49424bba5274975d6c33e0721977660692f","message":"process ifconfig data","stats":{"files_changed":1,"insertions":107,"deletions":28,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":135}]}},{"commit":"a9058ee21e87454aa423112239c4f4df7daca8c4","message":"doc formatting","stats":{"files_changed":3,"insertions":4,"deletions":1,"files":["jc/parsers/arp.py","jc/parsers/dig.py","jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/dig.py","lines_changed":1},{"name":"jc/parsers/free.py","lines_changed":1}]}},{"commit":"fcf0aac87dccac2ce28e6f55e66e2f0b8f6fbd36","message":"add history processing","stats":{"files_changed":1,"insertions":54,"deletions":10,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":64}]}},{"commit":"daec5f068103aae547509ddacc2be56c84f39f17","message":"process free data","stats":{"files_changed":1,"insertions":55,"deletions":6,"files":["jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/free.py","lines_changed":61}]}},{"commit":"5b2491d5ae72705758944e247fbca83367c0365f","message":"process env data","stats":{"files_changed":1,"insertions":54,"deletions":5,"files":["jc/parsers/env.py"],"file_stats":[{"name":"jc/parsers/env.py","lines_changed":59}]}},{"commit":"d9b41ac73b234f5bf7ff3abfee198092424a1bbd","message":"doc formatting","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":4}]}},{"commit":"7168ffddf8a8dfcdd5bcabd8bf943d6417de407d","message":"process dig output","stats":{"files_changed":1,"insertions":87,"deletions":5,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":92}]}},{"commit":"a855344bec9f60d852de326953436ec76f25cffb","message":"document schema","stats":{"files_changed":1,"insertions":13,"deletions":0,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":13}]}},{"commit":"d8b3b59fae924494fbcdfbdf6ad790f5234b0c69","message":"add schema and rename 'avail' to 'available'","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":16}]}},{"commit":"4b7d7840d37be47c1c98c38a6d712e7090e5b68c","message":"add -r option","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"changelog.txt","lines_changed":2}]}},{"commit":"58a094a9b4cab0fcb99581f37a21a450fc3a1aed","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]}},{"commit":"65adbb4189ac66de3283adb2af93a1251103f057","message":"doc update","stats":{"files_changed":1,"insertions":29,"deletions":7,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":36}]}},{"commit":"f7350959c9706486a3aed19a999e5ee756a1240c","message":"df fix for changing header names when -h used","stats":{"files_changed":1,"insertions":47,"deletions":24,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":71}]}},{"commit":"8934a7d832b8e1375f0bbdd71031f37ae42f3929","message":"fix dictionary iteration","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["jc/parsers/arp.py","jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":6}]}},{"commit":"669a424fd6508db91bf5cfa2607033fac85f442c","message":"fix process function","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":4}]}},{"commit":"591a65c2bda26efcdd570a5f147f98a5be0473d4","message":"process df data","stats":{"files_changed":1,"insertions":46,"deletions":2,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":48}]}},{"commit":"a78fb890782a64b20c0c1b60afbd915ebdd88535","message":"add raw and processed output","stats":{"files_changed":1,"insertions":21,"deletions":5,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":26}]}},{"commit":"8979dab2a5371fce3a773004c2309e7483e4cd31","message":"add raw mode","stats":{"files_changed":1,"insertions":25,"deletions":20,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":45}]}},{"commit":"0a891f0adda7f2f3233222a0cb5c1f737913ad6f","message":"bump python required version","stats":{"files_changed":2,"insertions":4,"deletions":1,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"setup.py","lines_changed":2}]}},{"commit":"c220e35b14237c2cfc38aa661413af83ea13e393","message":"cleanup helptext","stats":{"files_changed":1,"insertions":34,"deletions":33,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":67}]}},{"commit":"f26c5818bd958c18f4ecc22611b9c058f6213a2c","message":"refactor helptext","stats":{"files_changed":1,"insertions":36,"deletions":33,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":69}]}},{"commit":"e712cd3fc4cec1b3137c73e199b2d89fd42fb3bb","message":"netstat2 skeleton","stats":{"files_changed":1,"insertions":138,"deletions":0,"files":["jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/netstat2.py","lines_changed":138}]}},{"commit":"0309c9ac67c5f65e0a584fd01e8104ef1990fa7c","message":"setup cleanup","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"9a9eb4120af7696cd3727ac0f0a014663e62b993","message":"setup updates","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":3}]}},{"commit":"d1927456b02e6c2a6e6395cd6ce873b6565ec37d","message":"Merge pull request #6 from kellyjonbrazil/dev"},{"commit":"a3d9213a1e2fd52ba2cbc863d4d01d3ffeebe230","message":"add date","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]}},{"commit":"3365c03a1e709835b4bd6bca023afbcb46912982","message":"add tests","stats":{"files_changed":2,"insertions":361,"deletions":0,"files":["tests/test_arp.py","tests/test_dig.py"],"file_stats":[{"name":"tests/test_arp.py","lines_changed":131},{"name":"tests/test_dig.py","lines_changed":230}]}},{"commit":"4f6c87389b313b368d9e833feef55fe6daf7aac9","message":"add dig test files","stats":{"files_changed":7,"insertions":164,"deletions":1,"files":["tests/fixtures/centos-7.7/dig-aaaa.out","tests/fixtures/centos-7.7/dig-x.out","tests/fixtures/centos-7.7/dig.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/dig-aaaa.out","tests/fixtures/ubuntu-18.04/dig-x.out","tests/fixtures/ubuntu-18.04/dig.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/dig-aaaa.out","lines_changed":20},{"name":"tests/fixtures/centos-7.7/dig-x.out","lines_changed":20},{"name":"tests/fixtures/centos-7.7/dig.out","lines_changed":38},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":6},{"name":"tests/fixtures/ubuntu-18.04/dig-aaaa.out","lines_changed":20},{"name":"tests/fixtures/ubuntu-18.04/dig-x.out","lines_changed":20},{"name":"tests/fixtures/ubuntu-18.04/dig.out","lines_changed":41}]}},{"commit":"41a2a9adac7d3c29dfa11292f08b0877c69b1a5d","message":"remove unnecessary if statement","stats":{"files_changed":2,"insertions":147,"deletions":3,"files":["README.md","jc/parsers/dig.py"],"file_stats":[{"name":"README.md","lines_changed":147},{"name":"jc/parsers/dig.py","lines_changed":3}]}},{"commit":"74dae2905b2b0916f0be9fee2a4a343962760ff6","message":"dig parser mvp","stats":{"files_changed":1,"insertions":143,"deletions":30,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":173}]}},{"commit":"d1f64214de00090c3faae0bf544c6c2602ab8c31","message":"add authority parsing","stats":{"files_changed":1,"insertions":19,"deletions":3,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":22}]}},{"commit":"d3e1aa20a815d1d1d6ae82776ae18e3416f0966f","message":"fix when line","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":2}]}},{"commit":"72cae9577756c4355211a19f4dd77aaeb6f8e905","message":"dig fixes","stats":{"files_changed":1,"insertions":47,"deletions":9,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":56}]}},{"commit":"219bc8130f55f23e3be3abbe56104aefc2f84e86","message":"dig parser skeleton","stats":{"files_changed":2,"insertions":155,"deletions":0,"files":["jc/jc.py","jc/parsers/dig.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":150}]}},{"commit":"e8c1a554c040ad8f9c6b518db5fd58e8345d2181","message":"testfile updates","stats":{"files_changed":3,"insertions":7,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-a.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/arp-a.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/arp-a.out","lines_changed":3},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/arp-a.out","lines_changed":3}]}},{"commit":"087a60bc2adf64bfcedc1f264fef328f993b530c","message":"documentation updates","stats":{"files_changed":2,"insertions":87,"deletions":5,"files":["README.md","jc/parsers/arp.py"],"file_stats":[{"name":"README.md","lines_changed":33},{"name":"jc/parsers/arp.py","lines_changed":59}]}},{"commit":"9c9823c3b8737b5de08af6278ca74414138e9263","message":"add arp testfiles","stats":{"files_changed":5,"insertions":16,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-v.out","tests/fixtures/centos-7.7/arp.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/arp-v.out","tests/fixtures/ubuntu-18.04/arp.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/arp-v.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/arp.out","lines_changed":3},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/arp-v.out","lines_changed":4},{"name":"tests/fixtures/ubuntu-18.04/arp.out","lines_changed":3}]}},{"commit":"cf8d13030bf67261a986c0f80fa20ec0e37a743a","message":"add arp","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":21}]}},{"commit":"1eff69c187ca410ffaec7909bc2532553be1d80c","message":"add documentation","stats":{"files_changed":2,"insertions":17,"deletions":1,"files":["changelog.txt","jc/parsers/arp.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/arp.py","lines_changed":17}]}},{"commit":"b10fb77d714b73a10a9bf28b45269b3530e01cee","message":"fixup arp parser","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":10}]}},{"commit":"87cee8b230a06fa270b2e36afb56f337da814c80","message":"add arp parser","stats":{"files_changed":2,"insertions":28,"deletions":1,"files":["jc/jc.py","jc/parsers/arp.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":7},{"name":"jc/parsers/arp.py","lines_changed":22}]}},{"commit":"83ab10d6282e26391bbf6bae5d0d29e040b209f0","message":"documentation update","stats":{"files_changed":1,"insertions":44,"deletions":34,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":78}]}},{"commit":"d58a6e1d1dc93155255922b65b0af1325439b033","message":"readme update","stats":{"files_changed":1,"insertions":13,"deletions":15,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":28}]}},{"commit":"cb46ca5c2776a13c673a44d3e0fbd0661b32af9f","message":"readme update","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]}},{"commit":"5528d979f0b45787d68ab79b962371df9acc527b","message":"version bump","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":6},{"name":"setup.py","lines_changed":2}]}},{"commit":"ee94a038a61d60db72046d5bcceec58009decb39","message":"add tests","stats":{"files_changed":3,"insertions":131,"deletions":0,"files":["tests/test_uname.py","tests/test_uptime.py","tests/test_w.py"],"file_stats":[{"name":"tests/test_uname.py","lines_changed":45},{"name":"tests/test_uptime.py","lines_changed":41},{"name":"tests/test_w.py","lines_changed":45}]}},{"commit":"1d658f7a9fc50873f76985b2fb9de92ada9d5547","message":"add tests","stats":{"files_changed":3,"insertions":265,"deletions":0,"files":["tests/test_netstat.py","tests/test_ps.py","tests/test_route.py"],"file_stats":[{"name":"tests/test_netstat.py","lines_changed":105},{"name":"tests/test_ps.py","lines_changed":83},{"name":"tests/test_route.py","lines_changed":77}]}},{"commit":"392cb44f9b19829a5ceba055e24c7af4d8ac5b3b","message":"initial add of tests and fixtures","stats":{"files_changed":80,"insertions":12667,"deletions":0,"files":["runtests.sh","tests/__init__.py","tests/fixtures/centos-7.7/df-h.out","tests/fixtures/centos-7.7/df.out","tests/fixtures/centos-7.7/env.out","tests/fixtures/centos-7.7/free-h.out","tests/fixtures/centos-7.7/free.out","tests/fixtures/centos-7.7/history.out","tests/fixtures/centos-7.7/ifconfig.out","tests/fixtures/centos-7.7/iptables-filter-nv.out","tests/fixtures/centos-7.7/iptables-filter.out","tests/fixtures/centos-7.7/iptables-mangle.out","tests/fixtures/centos-7.7/iptables-nat.out","tests/fixtures/centos-7.7/iptables-raw.out","tests/fixtures/centos-7.7/jobs.out","tests/fixtures/centos-7.7/ls-al.out","tests/fixtures/centos-7.7/ls-alh.out","tests/fixtures/centos-7.7/ls.out","tests/fixtures/centos-7.7/lsblk.out","tests/fixtures/centos-7.7/lsmod.out","tests/fixtures/centos-7.7/lsof-sudo.out","tests/fixtures/centos-7.7/lsof.out","tests/fixtures/centos-7.7/mount.out","tests/fixtures/centos-7.7/netstat-l.out","tests/fixtures/centos-7.7/netstat-p.out","tests/fixtures/centos-7.7/netstat-sudo-lnp.out","tests/fixtures/centos-7.7/netstat.out","tests/fixtures/centos-7.7/ps-axu.out","tests/fixtures/centos-7.7/ps-ef.out","tests/fixtures/centos-7.7/route-vn.out","tests/fixtures/centos-7.7/route.out","tests/fixtures/centos-7.7/uname-a.out","tests/fixtures/centos-7.7/uptime.out","tests/fixtures/centos-7.7/w.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/df-h.out","tests/fixtures/ubuntu-18.04/df.out","tests/fixtures/ubuntu-18.04/env.out","tests/fixtures/ubuntu-18.04/free-h.out","tests/fixtures/ubuntu-18.04/free.out","tests/fixtures/ubuntu-18.04/history.out","tests/fixtures/ubuntu-18.04/ifconfig.out","tests/fixtures/ubuntu-18.04/iptables-filter-nv.out","tests/fixtures/ubuntu-18.04/iptables-filter.out","tests/fixtures/ubuntu-18.04/iptables-mangle.out","tests/fixtures/ubuntu-18.04/iptables-nat.out","tests/fixtures/ubuntu-18.04/iptables-raw.out","tests/fixtures/ubuntu-18.04/jobs.out","tests/fixtures/ubuntu-18.04/ls-al.out","tests/fixtures/ubuntu-18.04/ls-alh.out","tests/fixtures/ubuntu-18.04/ls.out","tests/fixtures/ubuntu-18.04/lsblk.out","tests/fixtures/ubuntu-18.04/lsmod.out","tests/fixtures/ubuntu-18.04/lsof-sudo.out","tests/fixtures/ubuntu-18.04/lsof.out","tests/fixtures/ubuntu-18.04/mount.out","tests/fixtures/ubuntu-18.04/netstat-l.out","tests/fixtures/ubuntu-18.04/netstat-p.out","tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.out","tests/fixtures/ubuntu-18.04/netstat.out","tests/fixtures/ubuntu-18.04/ps-axu.out","tests/fixtures/ubuntu-18.04/ps-ef.out","tests/fixtures/ubuntu-18.04/route-vn.out","tests/fixtures/ubuntu-18.04/route.out","tests/fixtures/ubuntu-18.04/uname-a.out","tests/fixtures/ubuntu-18.04/uptime.out","tests/fixtures/ubuntu-18.04/w.out","tests/test_df.py","tests/test_env.py","tests/test_free.py","tests/test_history.py","tests/test_ifconfig.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_ls.py","tests/test_lsblk.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py"],"file_stats":[{"name":"runtests.sh","lines_changed":3},{"name":"tests/__init__.py","lines_changed":0},{"name":"tests/fixtures/centos-7.7/df-h.out","lines_changed":8},{"name":"tests/fixtures/centos-7.7/df.out","lines_changed":8},{"name":"tests/fixtures/centos-7.7/env.out","lines_changed":24},{"name":"tests/fixtures/centos-7.7/free-h.out","lines_changed":3},{"name":"tests/fixtures/centos-7.7/free.out","lines_changed":3},{"name":"tests/fixtures/centos-7.7/history.out","lines_changed":1000},{"name":"tests/fixtures/centos-7.7/ifconfig.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/iptables-filter-nv.out","lines_changed":134},{"name":"tests/fixtures/centos-7.7/iptables-filter.out","lines_changed":134},{"name":"tests/fixtures/centos-7.7/iptables-mangle.out","lines_changed":59},{"name":"tests/fixtures/centos-7.7/iptables-nat.out","lines_changed":80},{"name":"tests/fixtures/centos-7.7/iptables-raw.out","lines_changed":38},{"name":"tests/fixtures/centos-7.7/jobs.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/ls-al.out","lines_changed":22},{"name":"tests/fixtures/centos-7.7/ls-alh.out","lines_changed":22},{"name":"tests/fixtures/centos-7.7/ls.out","lines_changed":19},{"name":"tests/fixtures/centos-7.7/lsblk.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/lsmod.out","lines_changed":99},{"name":"tests/fixtures/centos-7.7/lsof-sudo.out","lines_changed":3390},{"name":"tests/fixtures/centos-7.7/lsof.out","lines_changed":639},{"name":"tests/fixtures/centos-7.7/mount.out","lines_changed":31},{"name":"tests/fixtures/centos-7.7/netstat-l.out","lines_changed":45},{"name":"tests/fixtures/centos-7.7/netstat-p.out","lines_changed":121},{"name":"tests/fixtures/centos-7.7/netstat-sudo-lnp.out","lines_changed":45},{"name":"tests/fixtures/centos-7.7/netstat.out","lines_changed":123},{"name":"tests/fixtures/centos-7.7/ps-axu.out","lines_changed":110},{"name":"tests/fixtures/centos-7.7/ps-ef.out","lines_changed":110},{"name":"tests/fixtures/centos-7.7/route-vn.out","lines_changed":5},{"name":"tests/fixtures/centos-7.7/route.out","lines_changed":5},{"name":"tests/fixtures/centos-7.7/uname-a.out","lines_changed":1},{"name":"tests/fixtures/centos-7.7/uptime.out","lines_changed":1},{"name":"tests/fixtures/centos-7.7/w.out","lines_changed":4},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":48},{"name":"tests/fixtures/ubuntu-18.04/df-h.out","lines_changed":19},{"name":"tests/fixtures/ubuntu-18.04/df.out","lines_changed":19},{"name":"tests/fixtures/ubuntu-18.04/env.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-18.04/free-h.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/free.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/history.out","lines_changed":453},{"name":"tests/fixtures/ubuntu-18.04/ifconfig.out","lines_changed":18},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter-nv.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/iptables-mangle.out","lines_changed":14},{"name":"tests/fixtures/ubuntu-18.04/iptables-nat.out","lines_changed":11},{"name":"tests/fixtures/ubuntu-18.04/iptables-raw.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/jobs.out","lines_changed":4},{"name":"tests/fixtures/ubuntu-18.04/ls-al.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/ls-alh.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/ls.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-18.04/lsblk.out","lines_changed":18},{"name":"tests/fixtures/ubuntu-18.04/lsmod.out","lines_changed":102},{"name":"tests/fixtures/ubuntu-18.04/lsof-sudo.out","lines_changed":2854},{"name":"tests/fixtures/ubuntu-18.04/lsof.out","lines_changed":976},{"name":"tests/fixtures/ubuntu-18.04/mount.out","lines_changed":43},{"name":"tests/fixtures/ubuntu-18.04/netstat-l.out","lines_changed":32},{"name":"tests/fixtures/ubuntu-18.04/netstat-p.out","lines_changed":97},{"name":"tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.out","lines_changed":32},{"name":"tests/fixtures/ubuntu-18.04/netstat.out","lines_changed":97},{"name":"tests/fixtures/ubuntu-18.04/ps-axu.out","lines_changed":173},{"name":"tests/fixtures/ubuntu-18.04/ps-ef.out","lines_changed":173},{"name":"tests/fixtures/ubuntu-18.04/route-vn.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/route.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/uname-a.out","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/uptime.out","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/w.out","lines_changed":4},{"name":"tests/test_df.py","lines_changed":69},{"name":"tests/test_env.py","lines_changed":31},{"name":"tests/test_free.py","lines_changed":67},{"name":"tests/test_history.py","lines_changed":31},{"name":"tests/test_ifconfig.py","lines_changed":77},{"name":"tests/test_iptables.py","lines_changed":299},{"name":"tests/test_jobs.py","lines_changed":37},{"name":"tests/test_ls.py","lines_changed":92},{"name":"tests/test_lsblk.py","lines_changed":43},{"name":"tests/test_lsmod.py","lines_changed":40},{"name":"tests/test_lsof.py","lines_changed":85},{"name":"tests/test_mount.py","lines_changed":48},{"name":"tests/test_netstat.py","lines_changed":47}]}},{"commit":"579bef079cdd7cfa298bc20e052b8eb75b586f5e","message":"move global output variable inside function","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":3}]}},{"commit":"0691cfcab3f5f91908e06ec906d57e548d4e7a1f","message":"changelog fix","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]}},{"commit":"db29c7c186601fd4596d3eb121b37100601af907","message":"documentation fixes","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":4}]}},{"commit":"fb1e03637514b5ab02fd4c5df1db8b3cbacdd531","message":"formatting","stats":{"files_changed":1,"insertions":14,"deletions":10,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":24}]}},{"commit":"c3eaf59836538f4ab4c745e87b70115b4a4c5421","message":"Merge pull request #5 from kellyjonbrazil/dev"},{"commit":"c9849ce0db1f864d33739f8f6f942bf5672bc3b7","message":"changelog update","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]}},{"commit":"d3c89a3092973a7a8765463fff41c2469ed675cd","message":"check for enough info to parse","stats":{"files_changed":1,"insertions":11,"deletions":9,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":20}]}},{"commit":"a3d43f27f7bb0835b3593b7c303fe0ee8d896a58","message":"fix odd uptime text parsing","stats":{"files_changed":1,"insertions":12,"deletions":10,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":22}]}},{"commit":"f4d9c1b699fa30bd297a40ccf3d5f6e7ba3d4253","message":"fix uptime for minutes and hours long uptime","stats":{"files_changed":1,"insertions":8,"deletions":4,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":12}]}},{"commit":"de647bba4aff84f7b513cf7f6fec8d3933b0d9da","message":"documentation update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"d7913070315e5e0c89006942250aaf37e9e3e18e","message":"documentation update","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]}},{"commit":"1a4fc204e21f1555ae67c3147322c8d73fab630b","message":"Documentation update","stats":{"files_changed":2,"insertions":10,"deletions":1,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":10},{"name":"changelog.txt","lines_changed":1}]}},{"commit":"0328e14c7c65a330093faa52fe48dae6cb173e42","message":"handle ctrl-c gracefully","stats":{"files_changed":1,"insertions":7,"deletions":0,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":7}]}},{"commit":"1acc4d6c29d136e286f82d607c4a3a59e2680b68","message":"fix uptime parsing for short uptimes","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":4}]}},{"commit":"27245590ce28be933f1a55db4ee6b24783f4b63d","message":"remove integers","stats":{"files_changed":1,"insertions":12,"deletions":20,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":32}]}},{"commit":"7ca2a4bdb939293e8d7364f8901ad1fd6d3ee808","message":"remove integer values","stats":{"files_changed":5,"insertions":182,"deletions":201,"files":["README.md","changelog.txt","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":199},{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":95},{"name":"jc/parsers/netstat.py","lines_changed":84}]}},{"commit":"5f1ec6734874651bee595961edf1fafaf5acf001","message":"lower() headers","stats":{"files_changed":10,"insertions":473,"deletions":456,"files":["README.md","jc/parsers/df.py","jc/parsers/history.py","jc/parsers/iptables.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/w.py"],"file_stats":[{"name":"README.md","lines_changed":453},{"name":"jc/parsers/df.py","lines_changed":52},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":73},{"name":"jc/parsers/lsmod.py","lines_changed":61},{"name":"jc/parsers/lsof.py","lines_changed":113},{"name":"jc/parsers/ps.py","lines_changed":81},{"name":"jc/parsers/route.py","lines_changed":60},{"name":"jc/parsers/w.py","lines_changed":32}]}},{"commit":"7e44c4278a75c7223d99200023160e8d77fde54d","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":2}]}},{"commit":"eda726c4a3864008e2f700374b679ae68a965ef8","message":"documentation update","stats":{"files_changed":1,"insertions":80,"deletions":1,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":81}]}},{"commit":"5f8e70d73054f1a106c0e75eee621bc0cefd1c6b","message":"convert headers to lowercase","stats":{"files_changed":9,"insertions":20,"deletions":22,"files":["changelog.txt","jc/parsers/df.py","jc/parsers/free.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/w.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":8},{"name":"jc/parsers/lsmod.py","lines_changed":9},{"name":"jc/parsers/lsof.py","lines_changed":8},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":6}]}},{"commit":"25b90546c652cafa9409f02bae1654cb523add88","message":"change 'Use%' to 'Use_percent'","stats":{"files_changed":3,"insertions":14,"deletions":9,"files":["README.md","changelog.txt","jc/parsers/df.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":13}]}},{"commit":"75c084153845757e22c149ea4ae7909d42ec7118","message":"changelog update","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]}},{"commit":"5b532b9b71fdb9de575da0af9b7989ac537877c4","message":"minor cleanup","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":5}]}},{"commit":"8c7b3193d131411f8766508fc27b2a6589bba1f2","message":"documentation change","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":2}]}},{"commit":"0897c96ef3c180a1707e8f56c545f59b3a4e0672","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":2}]}},{"commit":"57d0ab2ed7f444862546da17cbbe8f8ce67bca8c","message":"change LOGIN@ to LOGIN_AT","stats":{"files_changed":2,"insertions":9,"deletions":4,"files":["README.md","jc/parsers/w.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"jc/parsers/w.py","lines_changed":9}]}},{"commit":"a07d9a0e4bb76d369b4a9bf0d77c7590dc3c2861","message":"change SIZE/OFF key to SIZE_OFF","stats":{"files_changed":2,"insertions":22,"deletions":13,"files":["README.md","jc/parsers/lsof.py"],"file_stats":[{"name":"README.md","lines_changed":10},{"name":"jc/parsers/lsof.py","lines_changed":25}]}},{"commit":"b3996cb4dfed908d71b292dc0b0136c6675351e6","message":"change MAJ:MIN key to MAJ_MIN","stats":{"files_changed":2,"insertions":14,"deletions":10,"files":["README.md","jc/parsers/lsblk.py"],"file_stats":[{"name":"README.md","lines_changed":10},{"name":"jc/parsers/lsblk.py","lines_changed":14}]}},{"commit":"4fa88c1ba38b34f9750625458c465d66f6531bc3","message":"clear out non-ascii chars from data","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":3}]}},{"commit":"c8c5564b29588094721949b96bff1e623437835d","message":"change buff/cache key to buff_cache","stats":{"files_changed":2,"insertions":6,"deletions":3,"files":["README.md","jc/parsers/free.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":7}]}},{"commit":"6d047486d9f577bc04d79af839f5eef9657a9d43","message":"doc fix","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"42bdc058141c4a3ac6f2c8211f9c990590b1b5cf","message":"changelog fix","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]}},{"commit":"85bfb688862e78d5879df6973b88ba8023fa6086","message":"history parser fixes","stats":{"files_changed":2,"insertions":15,"deletions":10,"files":["README.md","jc/parsers/history.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"jc/parsers/history.py","lines_changed":17}]}},{"commit":"08ec21556b553cd7e64932d68e01ba8ff3b0f210","message":"formatting","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/w.py","lines_changed":1}]}},{"commit":"320929bf2595026d32b80b80c3e4878db9cf083f","message":"documentation update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/env.py"],"file_stats":[{"name":"jc/parsers/env.py","lines_changed":2}]}},{"commit":"41cd489c34502c42602bf64086670ba3b2b8e14b","message":"add history and uptime parsers","stats":{"files_changed":5,"insertions":126,"deletions":0,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/history.py","jc/parsers/uptime.py"],"file_stats":[{"name":"README.md","lines_changed":46},{"name":"changelog.txt","lines_changed":3},{"name":"jc/jc.py","lines_changed":10},{"name":"jc/parsers/history.py","lines_changed":32},{"name":"jc/parsers/uptime.py","lines_changed":35}]}},{"commit":"f101d881a16e662e883818749d48e96858fba853","message":"add w parser","stats":{"files_changed":4,"insertions":78,"deletions":3,"files":["README.md","jc/jc.py","jc/parsers/w.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":27},{"name":"jc/jc.py","lines_changed":9},{"name":"jc/parsers/w.py","lines_changed":43},{"name":"setup.py","lines_changed":2}]}},{"commit":"fa7466022bb8947c1bbf9f7b01aa4d92300a8992","message":"fix env parser","stats":{"files_changed":3,"insertions":28,"deletions":56,"files":["README.md","changelog.txt","jc/parsers/env.py"],"file_stats":[{"name":"README.md","lines_changed":37},{"name":"changelog.txt","lines_changed":3},{"name":"jc/parsers/env.py","lines_changed":44}]}},{"commit":"ea0cf0acf22585fbf8828841cf50155636eae82f","message":"documentation update","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":3}]}},{"commit":"e7921b65f5a250c10b08f78939f74968047af430","message":"Merge pull request #4 from kellyjonbrazil/dev"},{"commit":"2cc1b1bd5451f31d71b0e2236bdee0ce2b25b5d7","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]}},{"commit":"58ae976db0165730a75dd7450c698d2727a354ca","message":"documentation update","stats":{"files_changed":3,"insertions":113,"deletions":4,"files":["README.md","jc/parsers/lsmod.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":55},{"name":"jc/parsers/lsmod.py","lines_changed":60},{"name":"setup.py","lines_changed":2}]}},{"commit":"66772392ae78ef394e22070b127416b1d5b01332","message":"add lsmod parser","stats":{"files_changed":3,"insertions":32,"deletions":0,"files":["changelog.txt","jc/jc.py","jc/parsers/lsmod.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/lsmod.py","lines_changed":26}]}},{"commit":"29c47c03a64f9c6b0f44d34be5449396654849b5","message":"documentation update","stats":{"files_changed":3,"insertions":134,"deletions":2,"files":["README.md","changelog.txt","jc/parsers/lsof.py"],"file_stats":[{"name":"README.md","lines_changed":68},{"name":"changelog.txt","lines_changed":3},{"name":"jc/parsers/lsof.py","lines_changed":65}]}},{"commit":"91eb9a4d13e9254bd5bbde931196904c1947a28e","message":"use None instead of --","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":4}]}},{"commit":"a1a3de32ec14d6ef433e334b9694856698c26d41","message":"add lsof parser","stats":{"files_changed":2,"insertions":59,"deletions":0,"files":["jc/jc.py","jc/parsers/lsof.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/lsof.py","lines_changed":54}]}},{"commit":"9c47fd05bf716c2e18ebf4da41b1a46b972b2518","message":"doco fix","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":2}]}},{"commit":"649c0aa7c157f87691cc8eeac64c747e81f63594","message":"add documentation","stats":{"files_changed":2,"insertions":76,"deletions":1,"files":["README.md","jc/parsers/jobs.py"],"file_stats":[{"name":"README.md","lines_changed":39},{"name":"jc/parsers/jobs.py","lines_changed":38}]}},{"commit":"3db758764e50666e5ae40de8d89180de2ef5bc28","message":"add jobs parser","stats":{"files_changed":3,"insertions":83,"deletions":0,"files":["changelog.txt","jc/jc.py","jc/parsers/jobs.py"],"file_stats":[{"name":"changelog.txt","lines_changed":6},{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":72}]}},{"commit":"802f1510eb6d621f9c760f28b83f16a4781b8d93","message":"tighten if statements","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":2}]}},{"commit":"56901788dee154890e70269ad48d4b22bb8c5437","message":"stop blocking when no pipe and enhance help text","stats":{"files_changed":1,"insertions":30,"deletions":19,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":49}]}},{"commit":"679ae6d5dc7af26240dc00d8bc6499950f81d457","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"b15c8c352a87a9b3b1dece28af0287ef71ca02d0","message":"simplify state variables","stats":{"files_changed":1,"insertions":14,"deletions":16,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":30}]}},{"commit":"393e8bc56041a4be01b6c0b2f98895aa330afd04","message":"Merge pull request #3 from kellyjonbrazil/dev"},{"commit":"976fd7d9bd49190a8b28ea5acf5af8979cdec537","message":"readme update","stats":{"files_changed":1,"insertions":27,"deletions":28,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":55}]}},{"commit":"d8337870cad042cdcc6a4ff3c61f756c3430fa96","message":"update documentation","stats":{"files_changed":1,"insertions":27,"deletions":28,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":55}]}},{"commit":"39a8aec77f5134b5b958e3f679910a1c3512e13a","message":"v0.8.1 build","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/parsers/ls.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"306d539b6bbfb272c7b955e4847adc3a6b4afa5f","message":"readme update","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]}},{"commit":"f3087b8a8ede88834285bb5d0655fc96341c174c","message":"update readme and formatting","stats":{"files_changed":3,"insertions":635,"deletions":1,"files":["README.md","changelog.txt","jc/parsers/iptables.py"],"file_stats":[{"name":"README.md","lines_changed":319},{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/iptables.py","lines_changed":316}]}},{"commit":"414c2ecef88af2d2c098e6acfb507a5fd7bb8eda","message":"fix iptables parser","stats":{"files_changed":1,"insertions":6,"deletions":10,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":16}]}},{"commit":"776ef2d1be81180b8b295fbc587446a326f2f7a6","message":"add iptables parser","stats":{"files_changed":2,"insertions":61,"deletions":0,"files":["jc/jc.py","jc/parsers/iptables.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/iptables.py","lines_changed":56}]}},{"commit":"9ac57469967443b195be09d580beaa76ce0e1095","message":"add uname parser","stats":{"files_changed":4,"insertions":64,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/uname.py"],"file_stats":[{"name":"README.md","lines_changed":15},{"name":"changelog.txt","lines_changed":1},{"name":"jc/jc.py","lines_changed":7},{"name":"jc/parsers/uname.py","lines_changed":42}]}},{"commit":"a3e55d97c0fd4397b42e9146afb0ba9558274fdb","message":"add mount parser","stats":{"files_changed":4,"insertions":127,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/mount.py"],"file_stats":[{"name":"README.md","lines_changed":45},{"name":"changelog.txt","lines_changed":1},{"name":"jc/jc.py","lines_changed":7},{"name":"jc/parsers/mount.py","lines_changed":75}]}},{"commit":"b15227e7ba5377e5fb6799d1b9e4ed5a11c6d92f","message":"add lsblk parser","stats":{"files_changed":4,"insertions":125,"deletions":0,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/lsblk.py"],"file_stats":[{"name":"README.md","lines_changed":49},{"name":"changelog.txt","lines_changed":1},{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/lsblk.py","lines_changed":70}]}},{"commit":"ec3d1f84ceccb492b4c968938714fafa2e6a6321","message":"fix free parser","stats":{"files_changed":1,"insertions":24,"deletions":2,"files":["jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/free.py","lines_changed":26}]}},{"commit":"753d5fd9fe5a8e4b67b1a0ec018a9f811e27f8bf","message":"readme update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"73a0d70c9294ad392792e690a7bfbcc4f51b0a5b","message":"readme update","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]}},{"commit":"c2c189f3e6e900e5f3d35df9a9b9d033448baff6","message":"readme update","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":5}]}},{"commit":"36bc55a3109278d663b675a09829200f5474c3d8","message":"fix df","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]}},{"commit":"a023001cd350e320ce30f47af214ed7a9bb43185","message":"add df, env, and free parsers","stats":{"files_changed":6,"insertions":226,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/df.py","jc/parsers/env.py","jc/parsers/free.py"],"file_stats":[{"name":"README.md","lines_changed":73},{"name":"changelog.txt","lines_changed":5},{"name":"jc/jc.py","lines_changed":17},{"name":"jc/parsers/df.py","lines_changed":56},{"name":"jc/parsers/env.py","lines_changed":53},{"name":"jc/parsers/free.py","lines_changed":23}]}},{"commit":"e3750b49628794fd4d563013b1f3a7471c27ce68","message":"documentation enhancements","stats":{"files_changed":2,"insertions":83,"deletions":51,"files":["README.md","jc/__init__.py"],"file_stats":[{"name":"README.md","lines_changed":30},{"name":"jc/__init__.py","lines_changed":104}]}},{"commit":"b5ea08e55bfd22c9da5ba73c124791012df119a0","message":"fix transport protocol","stats":{"files_changed":4,"insertions":20,"deletions":20,"files":["README.md","changelog.txt","jc/parsers/netstat.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":16},{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":20},{"name":"setup.py","lines_changed":2}]}},{"commit":"8e71b8e3522b9b1af4d869a0854223eb5c300b63","message":"fix jq example","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"4c8610c54ff4b643237d8f0e4c5781c277fc39f5","message":"fixed build","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"setup.py","lines_changed":2}]}},{"commit":"c8f886dc8fcdc58f8471d68c3d583200d0ea2f90","message":"fix example","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":2}]}},{"commit":"4cfc2d22b3f9fd6f0cde8ad206edd7fe260b3071","message":"update changelog","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]}},{"commit":"59238c85408117748e78c5e87157381a828f3782","message":"Merge pull request #2 from kellyjonbrazil/dev"},{"commit":"30080c01659cf611666876b7b063b7b329822352","message":"reorder parsers","stats":{"files_changed":1,"insertions":35,"deletions":35,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":70}]}},{"commit":"fab80bb3b4a1897da29d818e98e9b80ce45443dd","message":"readme update","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["README.md","setup.py"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"setup.py","lines_changed":2}]}},{"commit":"a9f2df805421754afb8e8adbcac7f2d3bd06c9ef","message":"move parsed_line var lower","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":3}]}},{"commit":"1d110be6cb25d169ae0dde6532cbcdf05d93d42f","message":"update doco","stats":{"files_changed":3,"insertions":13,"deletions":1,"files":["README.md","changelog.txt","setup.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"changelog.txt","lines_changed":4},{"name":"setup.py","lines_changed":2}]}},{"commit":"be81b5e1ed93eb65e5dbed4f52905439cde86f62","message":"readme update","stats":{"files_changed":1,"insertions":112,"deletions":121,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":233}]}},{"commit":"5f88f7d8a071306be92cbfb65d6d62c5a68159f3","message":"netstat cleanup","stats":{"files_changed":1,"insertions":110,"deletions":137,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":247}]}},{"commit":"e57c7cc8ef3102cc41dee4ea5fd33d40ba666491","message":"change output from dict to list","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":2}]}},{"commit":"b216627c1073ea645029e341b4d3376601e5468e","message":"flatten netstat output","stats":{"files_changed":1,"insertions":19,"deletions":116,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":135}]}},{"commit":"6e925eab131024b5746d870cbd47e2791acf18bf","message":"clean up arg parsing","stats":{"files_changed":1,"insertions":27,"deletions":18,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":45}]}},{"commit":"d54d906c571b4683f01cab2eca63ae5f0725a87b","message":"update readme","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"0040febbf099ed8ab35f6ee343750fcf89f2e739","message":"Merge pull request #1 from kellyjonbrazil/dev"},{"commit":"e416c77bed1267254da972b0f95b7ff1d43fccef","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]}},{"commit":"9181d242aaed5219bb35fde01d672be88949cceb","message":"bump version","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"d6f94c53a4df84fb75554605477e49536a809dc2","message":"fix blank output case in ls","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]}},{"commit":"a9294f32a00709737d0b82ff434a311e75ad0bed","message":"ls fixes","stats":{"files_changed":3,"insertions":39,"deletions":42,"files":["changelog.txt","jc/parsers/ls.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":7},{"name":"jc/parsers/ls.py","lines_changed":72},{"name":"setup.py","lines_changed":2}]}},{"commit":"4d93b38fe47329e3175025878e87f7c963061f98","message":"add route documentation","stats":{"files_changed":2,"insertions":90,"deletions":1,"files":["README.md","jc/parsers/route.py"],"file_stats":[{"name":"README.md","lines_changed":47},{"name":"jc/parsers/route.py","lines_changed":44}]}},{"commit":"77b74c550795f96b808e48a9b0bfd1a8af9866f9","message":"add route parser","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]}},{"commit":"51a1d3e6f48cf7084267be4092f0dd3f778dcef3","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"2eba30422b44f648c7356a44cbff7416c6648f19","message":"skip first line","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":2}]}},{"commit":"43ed09ce5ba53261dfd7ef50a2e187cb524c416c","message":"add route parser","stats":{"files_changed":3,"insertions":25,"deletions":1,"files":["jc/jc.py","jc/parsers/route.py","setup.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":3},{"name":"jc/parsers/route.py","lines_changed":21},{"name":"setup.py","lines_changed":2}]}},{"commit":"367ab54f94bf7f456377ec9d20f8daf99dbdc1ed","message":"formatting","stats":{"files_changed":3,"insertions":99,"deletions":2,"files":["README.md","changelog.txt","jc/parsers/ps.py"],"file_stats":[{"name":"README.md","lines_changed":53},{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":46}]}},{"commit":"4f552e370e656cc1882a7dae231475a016f8aa14","message":"acknowledgment","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":4}]}},{"commit":"7571139f7980f6e74c29d46971881e82ab0f04bc","message":"bump version","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"8ec1bec31711d2ef487da3e4a29a842d98d77626","message":"add ps parser","stats":{"files_changed":4,"insertions":29,"deletions":7,"files":["changelog.txt","jc/__init__.py","jc/jc.py","jc/parsers/ps.py"],"file_stats":[{"name":"changelog.txt","lines_changed":10},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/jc.py","lines_changed":3},{"name":"jc/parsers/ps.py","lines_changed":21}]}},{"commit":"c04895407f203aa0a3a080d5242faf8f6889ae41","message":"ubuntu fixes","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["changelog.txt","jc/parsers/netstat.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":9}]}},{"commit":"cec73d61310591e4890605f61dc5c1bef5808ec4","message":"linting","stats":{"files_changed":4,"insertions":24,"deletions":16,"files":["jc/jc.py","jc/parsers/ifconfig.py","jc/parsers/ls.py","jc/parsers/netstat.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":7},{"name":"jc/parsers/ifconfig.py","lines_changed":7},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"jc/parsers/netstat.py","lines_changed":23}]}},{"commit":"756c2bc9acd60111281b76085a40778e51ca06cc","message":"add acknowledgments","stats":{"files_changed":1,"insertions":20,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":23}]}},{"commit":"084048987c7afc6516f69e68d37d73b2402dc7f2","message":"changelog update","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]}},{"commit":"02d97394dd76a8782e6e7d3f8a85e1aed05e796b","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]}},{"commit":"177f948f9740e3e33449b04b9136a346c9a2c265","message":"version update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"c2b013150ec1f1b1ab7d416f1aa8a62165a5bb95","message":"add changelog","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":9}]}},{"commit":"0bec67c29ce5d965271440da41a0c4b4c2a1f0fb","message":"double quotes to single quotes","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":4}]}},{"commit":"8073d15fe11546a17cacd81409e255bb8aecd602","message":"readme update","stats":{"files_changed":1,"insertions":12,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":16}]}},{"commit":"3b74afc39e58f801e75b7105e521c1469d30f991","message":"upload script","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["pypi-upload.sh"],"file_stats":[{"name":"pypi-upload.sh","lines_changed":2}]}},{"commit":"ed320cf0f4bb11cee1e69e9dc9176ba109df1b86","message":"change netstat pid field to integer","stats":{"files_changed":3,"insertions":22,"deletions":22,"files":["README.md","jc/parsers/netstat.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":20},{"name":"jc/parsers/netstat.py","lines_changed":22},{"name":"setup.py","lines_changed":2}]}},{"commit":"021b6924e24e1cf0f971246244b174cd3181c0a6","message":"documentation updates","stats":{"files_changed":2,"insertions":254,"deletions":5,"files":["README.md","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":124},{"name":"jc/parsers/netstat.py","lines_changed":135}]}},{"commit":"5fb21b077662f1cb172741945ba5036e5a280638","message":"remove debug print statements","stats":{"files_changed":1,"insertions":0,"deletions":8,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":8}]}},{"commit":"7b8540ae2a60f2400fe672a022ee00d1415a3500","message":"netstat fixes","stats":{"files_changed":1,"insertions":19,"deletions":7,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":26}]}},{"commit":"a5e039d4c2e07d52a0797833685c562ab285b49b","message":"netstat debugging","stats":{"files_changed":1,"insertions":17,"deletions":7,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":24}]}},{"commit":"7071f60a302b7aefb8fb312699b0abec25548986","message":"netstat mvp","stats":{"files_changed":1,"insertions":66,"deletions":18,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":84}]}},{"commit":"0de1dff0253eb46b7336103f62f888940406ccc0","message":"fix ands","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":48}]}},{"commit":"b3c52eb1ccf82e899dda62c332c0b217d80eb4c7","message":"add netstat parser","stats":{"files_changed":2,"insertions":112,"deletions":40,"files":["jc/parsers/ifconfig.py","jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":150}]}},{"commit":"366c5dbc010869bdb1d3b9d852e10510bd5c266f","message":"fix help message","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":4}]}},{"commit":"a3ee02514b5fbd43a38ddf515a4aad49bb4e161a","message":"fix imports and module names","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":12}]}},{"commit":"46ad1269cb58dc6f064d17eb0b04da62d8fd5fce","message":"packaging fixes","stats":{"files_changed":2,"insertions":4,"deletions":3,"files":["jc/jc.py","setup.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":6},{"name":"setup.py","lines_changed":1}]}},{"commit":"7234afe568818678585ac423649a0ccce0f45d68","message":"entrypoint fix","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"caf480c63aacb518805d48fba0fd454959d11023","message":"module fix","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"62851b48d5e5cd673e630a28996e1c24cc45aa58","message":"fix modules","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/jc.py","setup.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":12},{"name":"setup.py","lines_changed":2}]}},{"commit":"46d6da92f0e196e150ab9dd44b1ba290c950905b","message":"fix entry_points","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["jc/{jc => jc.py}","setup.py"],"file_stats":[{"name":"jc/{jc => jc.py}","lines_changed":0},{"name":"setup.py","lines_changed":2}]}},{"commit":"e572b2edfa993c5049ef3caeda7a8e4797f0c751","message":"use entry_points instead of scripts","stats":{"files_changed":2,"insertions":37,"deletions":29,"files":["jc/jc","setup.py"],"file_stats":[{"name":"jc/jc","lines_changed":58},{"name":"setup.py","lines_changed":8}]}},{"commit":"72c69e7de59029d623c9819dda6aa8cae91bc419","message":"fix package paths","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/jc"],"file_stats":[{"name":"jc/jc","lines_changed":12}]}},{"commit":"4d1565071e5cf7c38e026e08db8f4d2e79969691","message":"rename jc.py to jc","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["jc/{jc.py => jc}","setup.py"],"file_stats":[{"name":"jc/{jc.py => jc}","lines_changed":0},{"name":"setup.py","lines_changed":2}]}},{"commit":"3652e51693d7ba829f4699fd80de20856941d82f","message":"fix requirements","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"49ce9f13e817266659400a8c19f5b078a48589df","message":"setup updates","stats":{"files_changed":3,"insertions":17,"deletions":20,"files":["jc/jc.py","jc/parsers/__init__.py","setup.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/__init__.py","lines_changed":5},{"name":"setup.py","lines_changed":27}]}},{"commit":"e83170b7ec7ed2123bfde69be263b6034c7afa53","message":"readme update","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]}},{"commit":"ffb6eb754a87baad5fb0558e30a5bca1a9b9e0a8","message":"setup fixes","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/parsers/__init__.py","setup.py"],"file_stats":[{"name":"jc/parsers/__init__.py","lines_changed":8},{"name":"setup.py","lines_changed":6}]}},{"commit":"2597a18d95d01109d2250487b7550a501edaf77b","message":"readme update","stats":{"files_changed":1,"insertions":82,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":82}]}},{"commit":"3e576250b1bfe1c62c556f2fa0425103b0ede1f9","message":"First commit","stats":{"files_changed":11,"insertions":429,"deletions":0,"files":[".gitignore","LICENSE.md","README.md","build-package.sh","jc/__init__.py","jc/jc.py","jc/parsers/__init__.py","jc/parsers/ifconfig.py","jc/parsers/ls.py","jc/parsers/netstat.py","setup.py"],"file_stats":[{"name":".gitignore","lines_changed":6},{"name":"LICENSE.md","lines_changed":21},{"name":"README.md","lines_changed":53},{"name":"build-package.sh","lines_changed":5},{"name":"jc/__init__.py","lines_changed":61},{"name":"jc/jc.py","lines_changed":38},{"name":"jc/parsers/__init__.py","lines_changed":3},{"name":"jc/parsers/ifconfig.py","lines_changed":30},{"name":"jc/parsers/ls.py","lines_changed":130},{"name":"jc/parsers/netstat.py","lines_changed":55},{"name":"setup.py","lines_changed":27}]}}] diff --git a/tests/fixtures/generic/git-log-oneline-stat.json b/tests/fixtures/generic/git-log-oneline-stat.json index 9583f6b5..7dd3ee71 100644 --- a/tests/fixtures/generic/git-log-oneline-stat.json +++ b/tests/fixtures/generic/git-log-oneline-stat.json @@ -1 +1 @@ -[{"commit":"096fffdb79807d34b99985b38df0a3df7f6a86c7","message":"use stat examples","stats":{"files_changed":2,"insertions":120,"deletions":36,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"]}},{"commit":"728d882ed007b3c8b785018874a0eb06e1143b66","message":"add timestamp docs and examples","stats":{"files_changed":2,"insertions":90,"deletions":12,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"]}},{"commit":"b53e42aca623181aa9bc72194e6eeef1e9a3a237","message":"add calculated timestamp","stats":{"files_changed":5,"insertions":29,"deletions":6,"files":["docs/parsers/git_log.md","docs/utils.md","jc/parsers/git_log.py","jc/utils.py","man/jc.1"]}},{"commit":"477329ce5b8f5c2a8e4384ba3f59289fc18c957d","message":"add linefeed to version text","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]}},{"commit":"283dc4efd55030188f17c7e1dfbc5315103494b7","message":"add python interpreter version and path to -v and -a output","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["CHANGELOG","jc/cli.py"]}},{"commit":"d490bbcaa0291a691b95fa5b61807eebb0b088eb","message":"normalize add/update","stats":{"files_changed":1,"insertions":26,"deletions":26,"files":["CHANGELOG"]}},{"commit":"f49ddf8e5c5009702155fc62d83c63e3c08c594d","message":"doc update","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"]}},{"commit":"e1e341652b51b823844e76ef7e68f9373a323435","message":"doc update","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]}},{"commit":"ecda667549137bed5622cca69f2022e7a75ea833","message":"process integers","stats":{"files_changed":2,"insertions":12,"deletions":8,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"]}},{"commit":"a0d96a188a9f875b2d59625aa97d4f80bba290f2","message":"doc update","stats":{"files_changed":2,"insertions":5,"deletions":1,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"]}},{"commit":"6c0f0cddfe4dd2d5169f7c55416c6725912557f6","message":"fix for datetime objects in yaml files","stats":{"files_changed":2,"insertions":14,"deletions":1,"files":["jc/parsers/yaml.py","tests/test_yaml.py"]}},{"commit":"c7173ecd89742c8cf8a7bc4a8021baac5c3cd483","message":"fix mypy issues","stats":{"files_changed":1,"insertions":8,"deletions":6,"files":["jc/parsers/git_log.py"]}},{"commit":"e98240c905394e3ebd6a45fa31b6d432c150afc4","message":"extend instead of append list","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/git_log.py"]}},{"commit":"6cb7e25974b11afe57d7d0e8550b3b1a56b14c67","message":"add docs","stats":{"files_changed":3,"insertions":93,"deletions":1,"files":["README.md","docs/parsers/git_log.md","man/jc.1"]}},{"commit":"c37980c05c7fbd4f811ce5fcfcfddaf5f3ab5414","message":"add stat support","stats":{"files_changed":1,"insertions":41,"deletions":7,"files":["jc/parsers/git_log.py"]}},{"commit":"b5943bd39d776fc4c3b3dea03c0f3d4b6f4bb260","message":"initial docstring","stats":{"files_changed":1,"insertions":23,"deletions":10,"files":["jc/parsers/git_log.py"]}},{"commit":"49a3a7db3b2b0b292489a41691c9dcbce816cfed","message":"initial git-log parser","stats":{"files_changed":2,"insertions":175,"deletions":0,"files":["jc/lib.py","jc/parsers/git_log.py"]}},{"commit":"0c55240e9da30ac4293cc324f1094de2abd3da91","message":"move test templates to fix test failures on some systems","stats":{"files_changed":3,"insertions":1,"deletions":0,"files":["CHANGELOG","tests/{ => templates}/_test_foo.py","tests/{ => templates}/_test_foo_s.py"]}},{"commit":"f91988aed5499d25acf7a7e87b2b0d0cd37b62af","message":"iterator -> iterable","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/lib.md"]}},{"commit":"3c3ad9fc6adf865b3814a1f03814d0bc17d1c6bd","message":"iterator -> iterable in doc","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]}},{"commit":"291ab79e22a59cb31814e7a5af9dbc9f2ec863e2","message":"fix arch linux command","stats":{"files_changed":3,"insertions":24,"deletions":24,"files":["README.md","man/jc.1","templates/readme_template"]}},{"commit":"e6d5892c146762cd41a966adadb77db333d98ace","message":"Merge pull request #226 from kellyjonbrazil/master"},{"commit":"dcca7a57d558721a61fbba44f07b1d53116827e1","message":"Merge pull request #225 from adrianteri/patch-1"},{"commit":"4ee8a69337b24e199983fe657643abcb0a56a8e6","message":"Update README","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]}},{"commit":"c0414e7db7f5d785b72ad616517f2ec63af151a2","message":"clean up background tasks","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["docgen.sh"]}},{"commit":"a419175fe6dffe9c5fd20cfbd82ee552bc82a993","message":"enhance parallelization","stats":{"files_changed":2,"insertions":34,"deletions":17,"files":["docgen.sh","updatedocs.sh"]}},{"commit":"cd6dead034f3c72aebd22afeb2aea6591ae6d94d","message":"man page update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]}},{"commit":"45342ea9fea29947d8d90260c7665ffbca612cce","message":"parallelize doc gneration","stats":{"files_changed":2,"insertions":16,"deletions":9,"files":["docgen.sh","updatedocs.sh"]}},{"commit":"585bf0e159c7839869cf3e458938dcc5fa2ceb81","message":"xrandr update","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]}},{"commit":"3a860b9babe93d455f68ef21436edf7470d375af","message":"add rotation field","stats":{"files_changed":2,"insertions":7,"deletions":5,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]}},{"commit":"269180df77f9ff953b07222e8ae790c7e7a8298e","message":"Merge pull request #223 from anekos/fix/support-rotated-devices"},{"commit":"a1afed8d95e33fbbc618c7b5778a9faeea2f628f","message":"doc update","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["docs/parsers/xrandr.md"]}},{"commit":"e39f150a216e4e184444dfc88a63e0f303e51631","message":"Support rotated devices","stats":{"files_changed":3,"insertions":9,"deletions":4,"files":["jc/parsers/xrandr.py","tests/fixtures/generic/xrandr_simple.json","tests/test_xrandr.py"]}},{"commit":"e85f11c6fcad5461bae612dd5a945c20d300e59a","message":"doc formatting","stats":{"files_changed":4,"insertions":12,"deletions":12,"files":["docs/parsers/ini.md","docs/parsers/kv.md","jc/parsers/ini.py","jc/parsers/kv.py"]}},{"commit":"49a9d7b07e89696f2e022655d7256b7d6ad4bf7b","message":"doc update","stats":{"files_changed":3,"insertions":12,"deletions":8,"files":["docs/parsers/ini.md","docs/parsers/kv.md","man/jc.1"]}},{"commit":"a2ef9c429e4bb9f70d033511dce77ccdb9013971","message":"allow duplicate keys","stats":{"files_changed":4,"insertions":38,"deletions":8,"files":["jc/parsers/ini.py","jc/parsers/kv.py","tests/test_ini.py","tests/test_kv.py"]}},{"commit":"d5e9074f1c8facb3f15b8c41a008917178626978","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/lib.py","setup.py"]}},{"commit":"774699f085d97f22ae2dab0cf64d72aa1e1709f7","message":"Merge pull request #220 from kellyjonbrazil/master"},{"commit":"7138eef3d137bc64286d4af453d8d4e7b3f4408d","message":"fix newline chars in doc","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py"]}},{"commit":"fad5e544aa9e57d31473190e196f59c616901207","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"]}},{"commit":"64757e2cf55448bccfbbd60d31930ab3f59af21b","message":"doc formatting","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"]}},{"commit":"e05be3f08beae1b600fc55a3a7b4e28163e15bc0","message":"Merge pull request #213 from kellyjonbrazil/dev"},{"commit":"789f0735dfd63e728b8716d97cf0c6045ede5011","message":"doc update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]}},{"commit":"34bc7753174be28d6c1a00dadc662bc374e554c1","message":"doc update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]}},{"commit":"38de059a1bc285c8681086d9fb43d0d23ac01d49","message":"doc update","stats":{"files_changed":3,"insertions":9,"deletions":3,"files":["docs/parsers/asciitable.md","docs/parsers/universal.md","man/jc.1"]}},{"commit":"304ae6268f4dff6e6f901628e7ff89db1d6e0767","message":"minor optimization by changing the expression order","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/parsers/asciitable_m.py"]}},{"commit":"978caf45221188a29c0e67147804f20f317c066d","message":"minor optimization by reordering expressions","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["jc/parsers/asciitable.py"]}},{"commit":"17df5bfcfc25f226a2976aa7ab8a80e4aaa915c3","message":"cache _is_separator function","stats":{"files_changed":2,"insertions":12,"deletions":2,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]}},{"commit":"5e6a5068cff71b3b30525d0a12868bdf6551456c","message":"allow iterables for simple table parser","stats":{"files_changed":1,"insertions":6,"deletions":2,"files":["jc/parsers/universal.py"]}},{"commit":"619de68a61be0117e635032347dde417d77c748c","message":"formatting","stats":{"files_changed":2,"insertions":8,"deletions":9,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]}},{"commit":"6748c3cc91f90bddea3d07b8b30a049ee55eaf35","message":"remove lines from corner detection and add rounded corners","stats":{"files_changed":2,"insertions":65,"deletions":61,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]}},{"commit":"0a462978b731770d1290187a502706c2322f5f91","message":"fix for special characters in headers","stats":{"files_changed":4,"insertions":101,"deletions":3,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py","tests/test_asciitable.py","tests/test_asciitable_m.py"]}},{"commit":"e66a82ff49b40a674f9ef373a12d59fc71bfa730","message":"doc update","stats":{"files_changed":3,"insertions":6,"deletions":5,"files":["CHANGELOG","jc/parsers/asciitable_m.py","man/jc.1"]}},{"commit":"f3aa797d96c8e2cef2124dbb2f49d1fadaee3fa2","message":"add more pretty table separators","stats":{"files_changed":2,"insertions":69,"deletions":9,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]}},{"commit":"e5b478218c4ba3781afd085056dba888c3f6ae02","message":"add quiet=True to parse tests","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_xrandr.py"]}},{"commit":"35e0e9c32afbc5450c661bcb3a23904d135358ad","message":"remove print statement","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable.py"]}},{"commit":"17c3c2f029a0a47eb02d681567619d471b99949c","message":"add bold bar seperator and ANSI code tests","stats":{"files_changed":4,"insertions":58,"deletions":2,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py","tests/test_asciitable.py","tests/test_asciitable_m.py"]}},{"commit":"cf83e6398b3314b233581eb313510872177de20a","message":"add fancy separators","stats":{"files_changed":2,"insertions":7,"deletions":0,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]}},{"commit":"94e061b881e2ed28d2b462ad038e5ba77182b6c4","message":"add asciitable parser tests","stats":{"files_changed":1,"insertions":275,"deletions":0,"files":["tests/test_asciitable.py"]}},{"commit":"720480e39ce3cc2079d7f4f5bcff2725081fec34","message":"doc update","stats":{"files_changed":4,"insertions":10,"deletions":2,"files":["docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]}},{"commit":"82a63fe15922456853aa4597aa10a5a02b20bdef","message":"doc update","stats":{"files_changed":2,"insertions":6,"deletions":8,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"]}},{"commit":"9c1ec9940e68ce9848da20e81b8c0b7e35a215df","message":"doc update","stats":{"files_changed":4,"insertions":82,"deletions":14,"files":["docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]}},{"commit":"f23f19da453a0f7bcf70e417a10f87e27571aa43","message":"doc update","stats":{"files_changed":5,"insertions":122,"deletions":9,"files":["README.md","docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py","man/jc.1"]}},{"commit":"aea2e1b0a9c6bb2a02a6e73889bb04e8f4f22588","message":"fix tests so blank strings are now None","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["tests/test_asciitable_m.py"]}},{"commit":"7d95d679bf4093ea77f30a1be55384b6dbf08341","message":"add asciitable parser","stats":{"files_changed":2,"insertions":212,"deletions":1,"files":["jc/lib.py","jc/parsers/asciitable.py"]}},{"commit":"b3b140066b74ee31dd1c460502caf2f26df321b6","message":"doc update","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py"]}},{"commit":"b204c423c1b947c17cb251a5dd3c444cd71dd2c0","message":"doc update","stats":{"files_changed":4,"insertions":193,"deletions":15,"files":["README.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py","man/jc.1"]}},{"commit":"d451c309bb0d8889dc09a698212bf01c2154a582","message":"change multiple or statements to any()","stats":{"files_changed":1,"insertions":11,"deletions":8,"files":["jc/parsers/asciitable_m.py"]}},{"commit":"01d53da68ed04b736934851137c59216ad02d8c8","message":"remove debug print","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable_m.py"]}},{"commit":"53dd05e52c329a15c30a756a36a165ac59ef8a14","message":"fix rstrip and add tests","stats":{"files_changed":2,"insertions":29,"deletions":1,"files":["jc/parsers/asciitable_m.py","tests/test_asciitable_m.py"]}},{"commit":"ab564f5be8282f1c7ee2d602bcef398fdfd4570f","message":"add tests","stats":{"files_changed":2,"insertions":237,"deletions":1,"files":["jc/parsers/asciitable_m.py","tests/test_asciitable_m.py"]}},{"commit":"00c39450f9878527b60545ad61c04cfb98f418dc","message":"enhance type annotation","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"]}},{"commit":"f611d08b50219f4e573c1d1f0beae27583e76432","message":"formatting","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/asciitable_m.py"]}},{"commit":"90e79b7df3a4d5b37835fdf1c2debc1bad0a40b9","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"]}},{"commit":"4eb2d725d5fe6f2cc7935c7dc891912cf7b8e940","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"]}},{"commit":"51ae5ebcac7263ef2571c11975b275eff352bbc5","message":"new streamlined parser","stats":{"files_changed":1,"insertions":148,"deletions":175,"files":["jc/parsers/asciitable_m.py"]}},{"commit":"9ecbdb09162da4d563799aa93d422db85b2c324b","message":"use generator instead of iterable in function return annotation","stats":{"files_changed":8,"insertions":35,"deletions":30,"files":["docs/parsers/mpstat_s.md","docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","docs/parsers/universal.md","jc/parsers/foo_s.py","jc/parsers/mpstat_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"]}},{"commit":"b3a2886fd0af0cd06890f37f1edfc6890bb83e6c","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["docs/lib.md"]}},{"commit":"ceacec0f462bd7c2d9e92ddb9029ccd71aef481c","message":"remove errant os sep import","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable_m.py"]}},{"commit":"ff0f794b01395ed9b65fac75a6b07f0772d45a2d","message":"working","stats":{"files_changed":1,"insertions":32,"deletions":10,"files":["jc/parsers/asciitable_m.py"]}},{"commit":"70fafbf3f80f35c5db2c306978b2a488adad40bb","message":"remove asciitable so tests pass for now","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]}},{"commit":"5a248a8fc58952a5eab3d4aac025d7422ba82d08","message":"add multiline asciitable parser","stats":{"files_changed":1,"insertions":344,"deletions":0,"files":["jc/parsers/asciitable_m.py"]}},{"commit":"4a3a4e10df8a552a4db3510640695f02b166dc40","message":"add asciitable and asciitable-m parsers","stats":{"files_changed":1,"insertions":3,"deletions":4,"files":["jc/lib.py"]}},{"commit":"c27bd5ff39f21c6377e661d4d7de1200d2fdd72f","message":"pad lines in sparse_table_parse and use str.isspace()","stats":{"files_changed":1,"insertions":23,"deletions":16,"files":["jc/parsers/universal.py"]}},{"commit":"f804c9627fb71341429ca80aec2887e23e0277db","message":"copy input list so we don't mutate the caller's data","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/universal.py"]}},{"commit":"3ab25d02f9dc248706aa1105e1766b2a84bc55a3","message":"use _parser_is_streaming from lib","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"9e80fd2b97b9bfe38fdaa6acdf2e8ed26d34b49d","message":"fallback if info and doc items don't exist","stats":{"files_changed":2,"insertions":15,"deletions":11,"files":["jc/cli.py","jc/lib.py"]}},{"commit":"ff9527a098a94c996641fb3fe2f905c8ae5e3063","message":"import cleanup and use all_parser_info in parsers_text","stats":{"files_changed":1,"insertions":9,"deletions":13,"files":["jc/cli.py"]}},{"commit":"7dac2f8dc3baf619105e3c6ca4d3e45300b86287","message":"doc update","stats":{"files_changed":3,"insertions":23,"deletions":9,"files":["docs/lib.md","docs/readme.md","man/jc.1"]}},{"commit":"32e4d55e86c3e7d94488ec69f13a4f6400c4cef3","message":"use parser_info for help_doc","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"]}},{"commit":"f9a9062147256d0949457cc7fde838f87202524d","message":"add documentation argument to parser_info and all_parser_info","stats":{"files_changed":3,"insertions":27,"deletions":10,"files":["CHANGELOG","jc/__init__.py","jc/lib.py"]}},{"commit":"89e5919796f7da585285901dca461aae21336415","message":"add -A to second example","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/mpstat_s.md","jc/parsers/mpstat_s.py"]}},{"commit":"e5f5b2591d8ac3abeb9571688c7fb8de34d647f4","message":"changelog update","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]}},{"commit":"77c667eec045daff5cbd062fe9d6e83f237727e5","message":"ubuntu fixes","stats":{"files_changed":9,"insertions":67,"deletions":6,"files":["docs/parsers/mpstat.md","docs/parsers/mpstat_s.md","jc/parsers/mpstat.py","jc/parsers/mpstat_s.py","tests/fixtures/ubuntu-18.04/mpstat-A-streaming.json","tests/fixtures/ubuntu-18.04/mpstat-A.json","tests/fixtures/ubuntu-18.04/mpstat-A.out","tests/test_mpstat.py","tests/test_mpstat_s.py"]}},{"commit":"b257ce8c2fe6825fe435b4d04b4184091030db10","message":"add mpstat_s tests","stats":{"files_changed":4,"insertions":65,"deletions":0,"files":[".../centos-7.7/mpstat-A-2-5-streaming.json","tests/fixtures/centos-7.7/mpstat-A-streaming.json","tests/fixtures/centos-7.7/mpstat-streaming.json","tests/test_mpstat_s.py"]}},{"commit":"c693c868cacbcd81f44fd383719723dd7a137c87","message":"add mpstat streaming parser","stats":{"files_changed":7,"insertions":352,"deletions":0,"files":["README.md","docs/parsers/mpstat.md","docs/parsers/mpstat_s.md","jc/lib.py","jc/parsers/mpstat.py","jc/parsers/mpstat_s.py","man/jc.1"]}},{"commit":"6f98b27a05d6e1f7571a97316b193f096521b959","message":"add mpstat tests","stats":{"files_changed":7,"insertions":168,"deletions":0,"files":["tests/fixtures/centos-7.7/mpstat-A-2-5.json","tests/fixtures/centos-7.7/mpstat-A-2-5.out","tests/fixtures/centos-7.7/mpstat-A.json","tests/fixtures/centos-7.7/mpstat-A.out","tests/fixtures/centos-7.7/mpstat.json","tests/fixtures/centos-7.7/mpstat.out","tests/test_mpstat.py"]}},{"commit":"d7efd25d88a8f489564ce48223845a16e4ab1cc7","message":"add mpstat to docs","stats":{"files_changed":4,"insertions":207,"deletions":1,"files":["EXAMPLES.md","README.md","docs/parsers/mpstat.md","man/jc.1"]}},{"commit":"2cddb1f0bb497be0be071cdcb56bf49d2dafc920","message":"working mpstat","stats":{"files_changed":1,"insertions":94,"deletions":15,"files":["jc/parsers/mpstat.py"]}},{"commit":"ae1c331595dd857d8ae7f8cf93daee1b26be2c3e","message":"initial working version","stats":{"files_changed":1,"insertions":30,"deletions":5,"files":["jc/parsers/mpstat.py"]}},{"commit":"bc97052ed4ee3bf3f25127968139f2e89a659fe3","message":"initial add mpstat parser","stats":{"files_changed":3,"insertions":109,"deletions":0,"files":["CHANGELOG","jc/lib.py","jc/parsers/mpstat.py"]}},{"commit":"6c3e0e2aa0e8cc375d9f7473930b18957d33f1aa","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]}},{"commit":"dd052e01469e9e3328f7326d3591365a8e7322eb","message":"add underscores to column examples","stats":{"files_changed":2,"insertions":26,"deletions":24,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]}},{"commit":"54e8f58145f6c4332fbd375d112259ea7abb2d72","message":"add table result examples","stats":{"files_changed":2,"insertions":28,"deletions":2,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]}},{"commit":"def7aa5764e69cd0cf2c5b70aa62c62023f76c9c","message":"formatting","stats":{"files_changed":2,"insertions":16,"deletions":16,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]}},{"commit":"6986c74f6dceca907ea2e469a332deeb093a122c","message":"remove direct parser module example from doc","stats":{"files_changed":169,"insertions":34,"deletions":837,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/pidstat.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/nmcli.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/pidstat.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/xrandr.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py"]}},{"commit":"b784db404d0569a4c630eb124b37b0b1d0846453","message":"streaming doc formatting update","stats":{"files_changed":17,"insertions":87,"deletions":166,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/pidstat_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/pidstat_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"]}},{"commit":"8aee4517bb4c2eebdd9873f7eb0827cd33b85519","message":"doc formatting","stats":{"files_changed":2,"insertions":12,"deletions":26,"files":["docs/parsers/pidstat_s.md","jc/parsers/pidstat_s.py"]}},{"commit":"a5fb8fbf94b3b80bef82f078ad6582260b13e374","message":"streaming doc update","stats":{"files_changed":17,"insertions":164,"deletions":148,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/pidstat_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/pidstat_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"]}},{"commit":"b9365e2ac28c3eacf53bc101857f7f1d7286ec20","message":"add pidstat-s tests","stats":{"files_changed":4,"insertions":74,"deletions":0,"files":[".../centos-7.7/pidstat-hdlrsuw-2-5-streaming.json",".../centos-7.7/pidstat-hdlrsuw-streaming.json",".../fixtures/centos-7.7/pidstat-hl-streaming.json","tests/test_pidstat_s.py"]}},{"commit":"696338c1a3d462afbe677a6f2ebe08d06ef4046a","message":"add streaming test template","stats":{"files_changed":1,"insertions":38,"deletions":0,"files":["tests/_test_foo_s.py"]}},{"commit":"4f0616190bb842411353d65650b78a65d8cbdc28","message":"doc update","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","man/jc.1"]}},{"commit":"3278cb0de301ee542b1fe8245a6c359193373b6b","message":"add type hints","stats":{"files_changed":2,"insertions":15,"deletions":10,"files":["docs/parsers/arp.md","jc/parsers/arp.py"]}},{"commit":"4fc04256a567c502a88ac8a1bd189746387c93f1","message":"rollback noReturn to tuple","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["jc/parsers/foo_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"]}},{"commit":"e4ae0fea63c0386c1b3239607fd6a58738d23633","message":"fix type annotation","stats":{"files_changed":5,"insertions":8,"deletions":8,"files":["docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","jc/parsers/foo_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"]}},{"commit":"d3727ea0906d6167aa48c340519242b010469d98","message":"doc update","stats":{"files_changed":4,"insertions":99,"deletions":1,"files":["CHANGELOG","README.md","docs/parsers/pidstat_s.md","man/jc.1"]}},{"commit":"0d13909cf63d14008607c5640d074ab4073115e5","message":"add pidstat-s parser","stats":{"files_changed":2,"insertions":168,"deletions":0,"files":["jc/lib.py","jc/parsers/pidstat_s.py"]}},{"commit":"c52ca20e285895d2afb685a2a5ca275de7901033","message":"fix comment","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/pidstat.py"]}},{"commit":"21f27f26c81c75234221a5193c7d3903323e2032","message":"add pidstat tests","stats":{"files_changed":4,"insertions":72,"deletions":0,"files":["tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.json","tests/fixtures/centos-7.7/pidstat-hdlrsuw.json","tests/fixtures/centos-7.7/pidstat-hl.json","tests/test_pidstat.py"]}},{"commit":"5e7a87f39782d12070a895440ff541800df91b9c","message":"add test template","stats":{"files_changed":1,"insertions":35,"deletions":0,"files":["tests/_test_foo.py"]}},{"commit":"845d763829acd03fff1d2fad6e9691f04bd1a2aa","message":"format docs to fit 80 columns","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/pidstat.md","jc/parsers/pidstat.py"]}},{"commit":"f5c7d52ec72f5ff4b77d5ac4491f330575b9f10f","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":10,"files":["man/jc.1","templates/manpage_template"]}},{"commit":"c3198a58744803f52113f80967c7259d781e2328","message":"formatting","stats":{"files_changed":2,"insertions":22,"deletions":12,"files":["man/jc.1","templates/manpage_template"]}},{"commit":"bbd4afa73542ba6596aed77426bb494fbcf23196","message":"add pidstat to docs","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["README.md","man/jc.1"]}},{"commit":"ae754a84bf5fc35b248bbc5f7b0fa8e871765819","message":"doc update","stats":{"files_changed":3,"insertions":263,"deletions":33,"files":["docs/parsers/arp.md","docs/parsers/pidstat.md","jc/parsers/pidstat.py"]}},{"commit":"3389eb5debe0f0ba01ece01e20048608bf357e70","message":"initial working parser","stats":{"files_changed":4,"insertions":219,"deletions":9,"files":["jc/parsers/pidstat.py","tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.out","tests/fixtures/centos-7.7/pidstat-hdlrsuw.out","tests/fixtures/centos-7.7/pidstat-hl.out"]}},{"commit":"01f2c1e71f87ab401d487be4d6d150cb67c91437","message":"add pidstat parser","stats":{"files_changed":5,"insertions":162,"deletions":2,"files":["CHANGELOG","jc/lib.py","jc/parsers/pidstat.py","setup.py","tests/fixtures/centos-7.7/pidstat.out"]}},{"commit":"8bfbf8f1bcd233a8ecd34012e140eb29164ca5fb","message":"simplify error message","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"f4242669bac3af5eb196c46d4146823aacec40ab","message":"minor cleanup","stats":{"files_changed":1,"insertions":2,"deletions":10,"files":["jc/parsers/arp.py"]}},{"commit":"bebd9331f1fb9b80f8cb4a5cfacd68461743004e","message":"Merge pull request #211 from kellyjonbrazil/master"},{"commit":"ac61e9ad2c9c4e864db02db04cbf907fb0efd99b","message":"add pypi link","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","templates/readme_template"]}},{"commit":"648ef4d8a9c33a36d4bb2c135fe59b031de8f24c","message":"update badge links","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"]}},{"commit":"727fc9a701e9aae75d3d2b708010da1d0dc8781a","message":"doc update","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/date.md","man/jc.1"]}},{"commit":"306512d6bb53af18516fc10b15c7ec79cb02cc98","message":"force AM/PM to uppercase in date parser","stats":{"files_changed":4,"insertions":7,"deletions":4,"files":["CHANGELOG","jc/lib.py","jc/parsers/date.py","setup.py"]}},{"commit":"6afb1d389ca9dfd7880386d380fee032b7eb92e2","message":"Merge pull request #209 from kellyjonbrazil/dev"},{"commit":"98619834818c181cb50a9605fe166b6153c46095","message":"doc update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]}},{"commit":"ca79053db08542849136ae13fdb4d1d90b79a7e5","message":"document pydoc version","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docgen.sh"]}},{"commit":"29c263f87810f8566ebdad2358e99896391adfd8","message":"pydoc formatting fixes","stats":{"files_changed":93,"insertions":115,"deletions":115,"files":["docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/streaming.md","docs/utils.md"]}},{"commit":"128c3c170abc6a702ae044b073fb9d992d4262b1","message":"doc update","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]}},{"commit":"a531ab8864fca27b55d83b55055eaef1c36128cd","message":"formatting","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"0c1be7cc11ec75a5738483d68d053e702eb34fc1","message":"reduce dig example size","stats":{"files_changed":2,"insertions":4,"deletions":18,"files":["README.md","templates/readme_template"]}},{"commit":"e4222b45f54e6179e22d7924c083e4642b9974ae","message":"fix names to mod names","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/lib.py"]}},{"commit":"ac32c69c31e8eff22252d7aded08f6cb14622086","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]}},{"commit":"cb2dfeac8d44b733ad9d364e8c6d233a381bfae1","message":"change name to JSON Convert","stats":{"files_changed":199,"insertions":334,"deletions":326,"files":["README.md","docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/streaming.md","docs/utils.md","jc/__init__.py","jc/cli.py","jc/exceptions.py","jc/lib.py","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat_freebsd_osx.py","jc/parsers/netstat_linux.py","jc/parsers/nmcli.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/xrandr.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py","jc/streaming.py","jc/utils.py","man/jc.1","templates/manpage_template","templates/readme_template"]}},{"commit":"9a3602e70b865a3015bd700b30d1076e17511a9b","message":"doc update","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/lib.md","jc/lib.py"]}},{"commit":"a9f53ee258e18bc90934e263d8dc96feee84e939","message":"optimize streaming parser detection in cli","stats":{"files_changed":2,"insertions":15,"deletions":4,"files":["jc/cli.py","jc/lib.py"]}},{"commit":"6be3d3d98222a262c5138bb09f2951ccfab96110","message":"doc update","stats":{"files_changed":3,"insertions":43,"deletions":1,"files":["CHANGELOG","docs/lib.md","docs/readme.md"]}},{"commit":"e49df7208377ab34a74240a06f35f17fee4b8203","message":"use streaming parser list to find streaming parsers","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]}},{"commit":"7ede7be7bf7b1a7d29d158b3b21c20fff4990e72","message":"add standard and streaming list functions","stats":{"files_changed":2,"insertions":42,"deletions":0,"files":["jc/__init__.py","jc/lib.py"]}},{"commit":"4758e28a36e2a55497e4f722d386a6b5cc30dc4d","message":"formatting","stats":{"files_changed":2,"insertions":20,"deletions":16,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"4a1ee151b3cb054d84cd964fd62f5855f765751d","message":"add dhcp6 options to docs","stats":{"files_changed":2,"insertions":9,"deletions":11,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py"]}},{"commit":"8c8afc1a922e3c30fcf501d169b33a68b65cd3e0","message":"formatting","stats":{"files_changed":2,"insertions":60,"deletions":24,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"ed205f7720d98c225c917c252ed7a6c9e6e8c2b8","message":"doc update","stats":{"files_changed":3,"insertions":9,"deletions":9,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py","man/jc.1"]}},{"commit":"d65f7ae992abc33140c00714d442290103661757","message":"add nmcli","stats":{"files_changed":1,"insertions":41,"deletions":0,"files":["EXAMPLES.md"]}},{"commit":"e2ffef57b9a474048fe72cf42aebfa6bfaf2e42b","message":"fix test","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_nmcli.py"]}},{"commit":"002caa9fb3b65f1ae64df25cc39c3de130403e76","message":"add fedora tests","stats":{"files_changed":7,"insertions":252,"deletions":0,"files":[".../fedora32/nmcli-connection-show-ens33.json",".../fedora32/nmcli-connection-show-ens33.out",".../fixtures/fedora32/nmcli-device-show-ens33.json",".../fixtures/fedora32/nmcli-device-show-ens33.out","tests/fixtures/fedora32/nmcli-device-show.json","tests/fixtures/fedora32/nmcli-device-show.out","tests/test_nmcli.py"]}},{"commit":"b7c6faf3daf8eb0c42a222778baa440c5a018c75","message":"enhance error message","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"554ca61d1764b81dea06b6b013d0444072f0662a","message":"add tests","stats":{"files_changed":11,"insertions":165,"deletions":0,"files":[".../fixtures/centos-7.7/nmcli-connection-all.json",".../centos-7.7/nmcli-connection-show-ens33.json","tests/fixtures/centos-7.7/nmcli-connection.json","tests/fixtures/centos-7.7/nmcli-device-all.json",".../centos-7.7/nmcli-device-show-ens33.json",".../fixtures/centos-7.7/nmcli-device-show-lo.json","tests/fixtures/centos-7.7/nmcli-device-show.json","tests/fixtures/centos-7.7/nmcli-device.json","tests/fixtures/centos-7.7/nmcli-general-all.json",".../centos-7.7/nmcli-general-permissions.json","tests/test_nmcli.py"]}},{"commit":"7b9722d255a16981099dc803beda7abe0d46106a","message":"fix formatting","stats":{"files_changed":2,"insertions":26,"deletions":34,"files":["man/jc.1","templates/manpage_template"]}},{"commit":"5505bde8ef77db0885f08d8d04160cbc4418dd67","message":"doc update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/zipinfo.md"]}},{"commit":"dbcd9a4060647be24bca2a8d577f11925a9ac210","message":"bump version to 1.0","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/zipinfo.py"]}},{"commit":"4bdeb2b3aa063c2772f5c44e52acbe16e915cc3a","message":"simplify warning message","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/xrandr.py"]}},{"commit":"6ae1d03187c6d4b669f6f74db1be7c9cf07adaed","message":"doc fix","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py"]}},{"commit":"f75b06abe4af152be094f8bc1ba5ce66b25e35e2","message":"doc update","stats":{"files_changed":4,"insertions":180,"deletions":3,"files":["README.md","docs/parsers/nmcli.md","jc/parsers/nmcli.py","man/jc.1"]}},{"commit":"1923925710dadc4116202855ae884ef18394d428","message":"update changelog","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["CHANGELOG"]}},{"commit":"2c5c57ae04df3b7abfb1c3423c3350c7c2ab5dcd","message":"version bump","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/lib.py","setup.py"]}},{"commit":"f4d11d697e000135720a971edf84dcad31a1bec8","message":"finish use cases and doc","stats":{"files_changed":1,"insertions":155,"deletions":15,"files":["jc/parsers/nmcli.py"]}},{"commit":"7f409b7082aa9525cc9280e3c5c92bc82089cf14","message":"enhance ParseError cli message","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"937fa5aad2519f588c6d0feb8f08211f6b99872f","message":"split dhcp options","stats":{"files_changed":1,"insertions":20,"deletions":0,"files":["jc/parsers/nmcli.py"]}},{"commit":"19dcef513565c34a31f6d735577da5e25f9bd2cd","message":"firm up flow. add/remove text. parse routes","stats":{"files_changed":1,"insertions":69,"deletions":2,"files":["jc/parsers/nmcli.py"]}},{"commit":"3d01356461eb2790f859968da7f5cb4fd2ee9898","message":"add text_kv function","stats":{"files_changed":1,"insertions":27,"deletions":3,"files":["jc/parsers/nmcli.py"]}},{"commit":"2d6f666fa4c791e7995f6b0c1490dac73ce224c3","message":"add dev show and conn show parsers","stats":{"files_changed":1,"insertions":61,"deletions":16,"files":["jc/parsers/nmcli.py"]}},{"commit":"4dda895f122ecc19b267ed1485cf656bae76ff07","message":"initial nmcli parser","stats":{"files_changed":13,"insertions":404,"deletions":0,"files":["jc/lib.py","jc/parsers/nmcli.py","tests/fixtures/centos-7.7/nmcli-connection-all.out",".../centos-7.7/nmcli-connection-show-ens33.out","tests/fixtures/centos-7.7/nmcli-connection.out","tests/fixtures/centos-7.7/nmcli-device-all.out",".../centos-7.7/nmcli-device-show-ens33.out","tests/fixtures/centos-7.7/nmcli-device-show-lo.out","tests/fixtures/centos-7.7/nmcli-device-show.out","tests/fixtures/centos-7.7/nmcli-device.out","tests/fixtures/centos-7.7/nmcli-general-all.out",".../centos-7.7/nmcli-general-permissions.out","tests/fixtures/centos-7.7/nmcli.out"]}},{"commit":"52617b1722ba2f089716b069f78f70a865430d61","message":"Merge pull request #208 from kellyjonbrazil/master"},{"commit":"961968a0fcaf37b64bc850c4945ba4b805a1fe54","message":"fix schema","stats":{"files_changed":2,"insertions":26,"deletions":23,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]}},{"commit":"f026a788e5ca1231927e71fdbb1dadb2365a6518","message":"add xrandr example","stats":{"files_changed":1,"insertions":62,"deletions":0,"files":["EXAMPLES.md"]}},{"commit":"2f7c03eb35520be916c28a687031f8c6425839ba","message":"Merge pull request #207 from kellyjonbrazil/dev"},{"commit":"3afaa48eee081e28262d1762c5ec23d318012822","message":"doc update","stats":{"files_changed":15,"insertions":15,"deletions":15,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"]}},{"commit":"3201452564fb0fb44ef9cc32217339370bd2521e","message":"add -p to example","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]}},{"commit":"7ee1e34fc71c0dbc08ba482b787d560fd5125f64","message":"doc update","stats":{"files_changed":2,"insertions":116,"deletions":4,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]}},{"commit":"67dbf050161201f5016899591e81ab6253ac2322","message":"add type annotations","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]}},{"commit":"4ac9f2e3dad4e7bd270bf5a8e61b729838b2c89c","message":"doc update","stats":{"files_changed":5,"insertions":10,"deletions":17,"files":["CHANGELOG","docs/parsers/rsync.md","docs/parsers/rsync_s.md","jc/parsers/rsync.py","jc/parsers/rsync_s.py"]}},{"commit":"3f5f6e39a777ef524cb3a06a01321bb8c31d930d","message":"formatting","stats":{"files_changed":2,"insertions":100,"deletions":98,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]}},{"commit":"4723db8e3cc4946b14c83b25d6e8c6d2309aa72e","message":"doc updates","stats":{"files_changed":8,"insertions":195,"deletions":77,"files":["README.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/xrandr.md","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/xrandr.py","man/jc.1"]}},{"commit":"ca914ec77d1fc77e42860189e62ac2fb203d4931","message":"add nodata test","stats":{"files_changed":1,"insertions":11,"deletions":2,"files":["tests/test_xrandr.py"]}},{"commit":"dcc7f3f357ef016b4583fc1320fd2394788f271f","message":"Merge pull request #204 from lyterk/xrandr"},{"commit":"cbdc66623671da335eafe132b7af79f884856f1d","message":"Return empty object if no results and filenames","stats":{"files_changed":3,"insertions":2,"deletions":30,"files":["jc/parsers/xrandr.py",".../{simple_xrandr.json => xrandr_simple.json}",".../{simple_xrandr.out => xrandr_simple.out}"]}},{"commit":"184ef3a1faeb406ce62076cff637ee86d61541fb","message":"doc update","stats":{"files_changed":3,"insertions":11,"deletions":3,"files":["docs/parsers/rsync.md","docs/parsers/rsync_s.md","man/jc.1"]}},{"commit":"c732f759445e335fe36586859b6fde7e27bb8901","message":"doc update","stats":{"files_changed":2,"insertions":10,"deletions":2,"files":["jc/parsers/rsync.py","jc/parsers/rsync_s.py"]}},{"commit":"7a1ae4f5fc5328c32bf77235cfbd9f83ec995053","message":"add library tests","stats":{"files_changed":3,"insertions":105,"deletions":0,"files":["tests/{test_lib.py => test_jc_lib.py}","tests/test_jc_streaming.py","tests/{test_utils.py => test_jc_utils.py}"]}},{"commit":"d04bc3757c482ec9062b2da91ded76c5dd6d106b","message":"add xrandr","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]}},{"commit":"73e8391653145412cd852aca349466018c8b9084","message":"formatting","stats":{"files_changed":1,"insertions":8,"deletions":3,"files":["jc/utils.py"]}},{"commit":"f6c1463c1578db264ccb3d4c2677857ed906e965","message":"formatting","stats":{"files_changed":1,"insertions":44,"deletions":24,"files":["jc/cli.py"]}},{"commit":"d392c7f901a9d7c57617fbd03bd3f88ee0bf4132","message":"doc update","stats":{"files_changed":12,"insertions":20,"deletions":13,"files":["docs/parsers/date.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/ls.md","docs/parsers/rpm_qi.md","docs/parsers/stat.md","docs/parsers/systeminfo.md","docs/parsers/timedatectl.md","docs/parsers/upower.md","docs/parsers/vmstat.md","docs/parsers/who.md","docs/utils.md"]}},{"commit":"d0387f58205b2fd9b9860ce9656bb29ceec54340","message":"add timestamp format hints for better performance","stats":{"files_changed":16,"insertions":34,"deletions":29,"files":["jc/parsers/date.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/systeminfo.py","jc/parsers/timedatectl.py","jc/parsers/upower.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/who.py"]}},{"commit":"76f92908a3ba9cbadcc8e972afa8b1c4a69509bd","message":"add format hints for performance optimization","stats":{"files_changed":1,"insertions":44,"deletions":9,"files":["jc/utils.py"]}},{"commit":"1a115da67bdce9acfefbfb71fbac37e234b1babd","message":"add lru_cache maxsize for python 3.7 support","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]}},{"commit":"f0a37ccf301eee5133a83b5dd96986fef0c38e7c","message":"use lru_cache for significant performance boost to timestamp","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/utils.py"]}},{"commit":"f331f53a531169520a4d8ea15d277560a49aedb5","message":"use !r formatting instead of quotes","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["CHANGELOG","jc/utils.py"]}},{"commit":"8611aff06b18212b7292d564beb27a2062fc3f41","message":"add examples","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/parsers/rsync_s.md","jc/parsers/rsync_s.py"]}},{"commit":"2f3f78e8d35a0ccccde0f84417400acdfe7fe0aa","message":"refine streaming parsers","stats":{"files_changed":16,"insertions":194,"deletions":185,"files":["docgen.sh","docs/parsers/rsync_s.md","docs/readme.md","docs/streaming.md","docs/utils.md","jc/__init__.py","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/streaming.py","man/jc.1"]}},{"commit":"d1e0ee6123dfecd48d074cb7a40e98a15b6adcb9","message":"use new streaming functions","stats":{"files_changed":1,"insertions":6,"deletions":8,"files":["jc/parsers/ping_s.py"]}},{"commit":"45314c98083067f1f6fae9c477c99fabec223f29","message":"move some functions to streaming","stats":{"files_changed":2,"insertions":112,"deletions":102,"files":["jc/streaming.py","jc/utils.py"]}},{"commit":"df00945b46e27e10107f48d186eedf80b55bd40e","message":"move try/except inside for loop","stats":{"files_changed":6,"insertions":59,"deletions":49,"files":["jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py"]}},{"commit":"fda0050d867bcbe4f1d7e024b08e9881d0f57735","message":"add rsync-s tests","stats":{"files_changed":13,"insertions":191,"deletions":0,"files":[".../centos-7.7/rsync-i-logfile-streaming.json","tests/fixtures/centos-7.7/rsync-i-streaming.json",".../centos-7.7/rsync-i-v-logfile-streaming.json",".../centos-7.7/rsync-i-vv-logfile-streaming.json",".../rsync-i-vvv-logfile-nochange-streaming.json",".../centos-7.7/rsync-i-vvv-logfile-streaming.json",".../centos-7.7/rsync-ivvv-nochange-streaming.json",".../fixtures/centos-7.7/rsync-ivvv-streaming.json","tests/fixtures/generic/rsync-i-streaming.json",".../rsync-i-vvv-logfile-nochange-streaming.json",".../rsync-i-vvv-nochange-streaming.json",".../osx-10.14.6/rsync-i-vvv-streaming.json","tests/test_rsync_s.py"]}},{"commit":"a76d46f9ecb1eff4d6cc7ad633c97cec0e99001a","message":"refactor ignore_exceptions","stats":{"files_changed":19,"insertions":110,"deletions":109,"files":["CHANGELOG","docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","docs/utils.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/utils.py","man/jc.1"]}},{"commit":"6b069a82d0fa19c8d83b19b934bace556cb758d7","message":"Add xrandr to lib.py","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/lib.py"]}},{"commit":"6b793d052147406f388c4d5dc04f506a3456f409","message":"Clean up types","stats":{"files_changed":1,"insertions":6,"deletions":11,"files":["jc/parsers/xrandr.py"]}},{"commit":"ce9103f7cc666895dc7840d32797d8c7274cf1b8","message":"Delete old files in template folder","stats":{"files_changed":2,"insertions":0,"deletions":287,"files":["templates/xrandr_sample.txt","templates/xrandr_sample_verbose.txt"]}},{"commit":"671d6dee36a37317257e09a080849205d301bceb","message":"doc update","stats":{"files_changed":8,"insertions":83,"deletions":15,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","docs/utils.md"]}},{"commit":"49929c714c2d71a310b1dd95138dbd02f8704138","message":"add add_jc_meta decorator","stats":{"files_changed":9,"insertions":139,"deletions":52,"files":["jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/utils.py"]}},{"commit":"2986771f07de87bfee44dd3bbb4f285e249aad76","message":"require python v3.7 and above since v3.6 is now deprecated","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"520082d963b93d2bafeff921da3899686b22cadf","message":"New parser: xrandr","stats":{"files_changed":9,"insertions":968,"deletions":0,"files":["jc/parsers/xrandr.py","templates/xrandr_sample.txt","templates/xrandr_sample_verbose.txt","tests/fixtures/generic/simple_xrandr.json","tests/fixtures/generic/simple_xrandr.out","tests/fixtures/generic/xrandr.out","tests/fixtures/generic/xrandr_2.out","tests/fixtures/generic/xrandr_device.out","tests/test_xrandr.py"]}},{"commit":"021e296d457140c32b5256c2b0acf66efc458896","message":"move variable inits and regexes up","stats":{"files_changed":1,"insertions":104,"deletions":100,"files":["jc/parsers/rsync_s.py"]}},{"commit":"42e56fbcea6db64ea7f7045e7755af492c95aec2","message":"move regex up","stats":{"files_changed":1,"insertions":11,"deletions":12,"files":["jc/parsers/rsync.py"]}},{"commit":"a5b62a4055df37b84751a7cdc14eb6f1ed907cd9","message":"add processing and docs","stats":{"files_changed":2,"insertions":230,"deletions":18,"files":["docs/parsers/rsync_s.md","jc/parsers/rsync_s.py"]}},{"commit":"be98c9b7f6c67e23ea101223934d67bba512e645","message":"simplify try/except by moving outside for loop","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/foo_s.py"]}},{"commit":"aceeb8450796ae748a4d4abf75643f309d0a42e5","message":"doc update","stats":{"files_changed":3,"insertions":12,"deletions":1,"files":["CHANGELOG","README.md","man/jc.1"]}},{"commit":"13910632173e7c815ff1161cf52fd1d17153c4a9","message":"first draft rsync streaming parser","stats":{"files_changed":2,"insertions":367,"deletions":0,"files":["jc/lib.py","jc/parsers/rsync_s.py"]}},{"commit":"52157addd0d6dff3bdb34f179ec14b07c8c27ccc","message":"fix compatible list","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/foo_s.py"]}},{"commit":"ec0bc6615e22fdc536623e290d88b9725cb6a0ec","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/utils.md","jc/utils.py"]}},{"commit":"2f80800e38256b363a4122195ec4aaffebe67d87","message":"simplify all_parser_info comprehension","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]}},{"commit":"3959d3347c8d3e838f8c3158c4db74e2fa2eb856","message":"doc update","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["docs/lib.md"]}},{"commit":"b57d25c69a193d3866ea86a3a34edd67049b198d","message":"clean up return type for parser_info","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/lib.py"]}},{"commit":"63e43a7cabb51c624c962cdcc92a1199f18c77e5","message":"doc updates","stats":{"files_changed":7,"insertions":188,"deletions":21,"files":["README.md","docs/lib.md","docs/parsers/rsync.md","docs/parsers/universal.md","docs/parsers/zipinfo.md","docs/utils.md","man/jc.1"]}},{"commit":"21719f9a26c25d896b0a5d49c9d7814175835e16","message":"type annotation updates","stats":{"files_changed":2,"insertions":18,"deletions":20,"files":["jc/lib.py","jc/utils.py"]}},{"commit":"96ec70de4f6178b0669fd9ab47cb303dc45e55c2","message":"remove unneeded optional","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["jc/parsers/universal.py","jc/utils.py"]}},{"commit":"a15a1967dc06169ceeda0fd5b4857ce1a351f3d5","message":"fix typo","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]}},{"commit":"a10d7566294fe5246e68a16e355ce56dd3557ac5","message":"fixy mypy issues","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/universal.py"]}},{"commit":"0700dc7a64b121cf0243416e2cbb82fcef15f5a0","message":"remove cygwin from compatible","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/rsync.py"]}},{"commit":"ca654b214057e19839b89e0d9a66f1110f679c1e","message":"fix parser order","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]}},{"commit":"4ff3b87c1c96d720f4e7fd39e613944e322cb388","message":"remove future field from docstring","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/rsync.py"]}},{"commit":"ea244fb7a91f1d1f8ffe0ea6dc10dfe5ab836878","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_rsync.py"]}},{"commit":"8061f30e6fa58d22ed1a52e02c4d9c7f0bf132cf","message":"add centos -i nochange test","stats":{"files_changed":3,"insertions":236,"deletions":6,"files":["tests/fixtures/centos-7.7/rsync-ivvv-nochange.json","tests/fixtures/centos-7.7/rsync-ivvv-nochange.out","tests/test_rsync.py"]}},{"commit":"8f3b12e81e1b4f0d4394c33db5b3a352f4cfb391","message":"add fixes for mac -i output","stats":{"files_changed":6,"insertions":299,"deletions":0,"files":["jc/parsers/rsync.py",".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.json",".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.out","tests/fixtures/osx-10.14.6/rsync-i-vvv.json","tests/fixtures/osx-10.14.6/rsync-i-vvv.out","tests/test_rsync.py"]}},{"commit":"d0694ce0db5ea2d06b5787429adf23095c4c2df0","message":"add nochange log test for mac","stats":{"files_changed":3,"insertions":245,"deletions":6,"files":[".../osx-10.14.6/rsync-i-vvv-logfile-nochange.json",".../osx-10.14.6/rsync-i-vvv-logfile-nochange.out","tests/test_rsync.py"]}},{"commit":"0cd4c4bc7f3ffe13cb2f1920187e25636b88af61","message":"add nochange tests","stats":{"files_changed":2,"insertions":658,"deletions":0,"files":[".../centos-7.7/rsync-i-vvv-logfile-nochange.json",".../centos-7.7/rsync-i-vvv-logfile-nochange.out"]}},{"commit":"12f90c349c903634def4225ce87924b475be46d0","message":"update regexes for unchanged files","stats":{"files_changed":2,"insertions":68,"deletions":20,"files":["jc/parsers/rsync.py","tests/test_rsync.py"]}},{"commit":"26b8a1f167c4b1ec3f9fb4077254a27ed8548933","message":"remove packages from binaries and packages header","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"]}},{"commit":"3abe382c064f605d915912f9b726d76784eba8a2","message":"add examples","stats":{"files_changed":2,"insertions":90,"deletions":3,"files":["EXAMPLES.md","jc/parsers/rsync.py"]}},{"commit":"1e2edc2c7b5dc104a9efe4da7df9be61b9e1be32","message":"add timestamp","stats":{"files_changed":5,"insertions":53,"deletions":29,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-logfile.json","tests/fixtures/centos-7.7/rsync-i-v-logfile.json","tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json"]}},{"commit":"5fe032a6741b7b6586c60eb28be74bd0e56277a0","message":"fix typo","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/zipinfo.py"]}},{"commit":"e825c02df1cdae67c7f335fe3c675685eb1a8d02","message":"add rsync tests","stats":{"files_changed":11,"insertions":605,"deletions":0,"files":["tests/fixtures/centos-7.7/rsync-i-logfile.json","tests/fixtures/centos-7.7/rsync-i-v-logfile.json","tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out","tests/fixtures/centos-7.7/rsync-i.json","tests/fixtures/centos-7.7/rsync-i.out","tests/fixtures/centos-7.7/rsync-ivvv.json","tests/fixtures/generic/rsync-i.json","tests/fixtures/generic/rsync-i.out","tests/test_rsync.py"]}},{"commit":"a4a4d170b5ae8c189de982adea5bdc9bf1f26e6c","message":"update docstring","stats":{"files_changed":1,"insertions":10,"deletions":5,"files":["jc/parsers/rsync.py"]}},{"commit":"d0fcd523cb2cbb59d0f90369721749b54222961d","message":"fix process conversions","stats":{"files_changed":1,"insertions":19,"deletions":17,"files":["jc/parsers/rsync.py"]}},{"commit":"f72b7dc75dbd1c3f5daee3ecee28487258a04873","message":"change keyname to files and remove future key","stats":{"files_changed":1,"insertions":4,"deletions":8,"files":["jc/parsers/rsync.py"]}},{"commit":"4101dc6bf7bab7d00899426e2f6271a7480d558f","message":"add log-file support","stats":{"files_changed":4,"insertions":1008,"deletions":19,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-v-logfile.out","tests/fixtures/centos-7.7/rsync-i-vv-logfile.out","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out"]}},{"commit":"ea5011b616365b5c10c04416d43035d84e3dacba","message":"updated schema. add log-file option support","stats":{"files_changed":2,"insertions":175,"deletions":41,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-logfile.out"]}},{"commit":"d6de81747fd92642dbd5cb1fb097e375aa38be35","message":"add int/float conversions","stats":{"files_changed":1,"insertions":11,"deletions":3,"files":["jc/parsers/rsync.py"]}},{"commit":"38f04b1c9699246d85332b20df5b6a91ae0c48d9","message":"add summary","stats":{"files_changed":1,"insertions":32,"deletions":7,"files":["jc/parsers/rsync.py"]}},{"commit":"84169e1a913d035744f71472be81fe3a7d774b97","message":"add rsync parser","stats":{"files_changed":4,"insertions":637,"deletions":2,"files":["jc/lib.py","jc/parsers/rsync.py","setup.py","tests/fixtures/centos-7.7/rsync-ivvv.out"]}},{"commit":"1f96586a5e883709f436526de6dcb21ff44bf97b","message":"reorder imports","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/foo.py"]}},{"commit":"681176e4c958157ef1f2151b3e57963a6ba48e09","message":"Merge pull request #203 from kellyjonbrazil/dev"},{"commit":"8bb266352207f95040b72750e5b3ae3b8ceb2b98","message":"date update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]}},{"commit":"663abf313931b49fad64b425ece6a5a257dc7938","message":"clean up scripts","stats":{"files_changed":4,"insertions":3,"deletions":4,"files":["MANIFEST.in","mangen.py","runtests.sh","updatedocs.sh"]}},{"commit":"f7ac41db95c16fd21d83fbce678c5dec28ab40f0","message":"final doc update","stats":{"files_changed":2,"insertions":1,"deletions":13,"files":["README.md","man/jc.1"]}},{"commit":"5502cda9e591b531d6b452b02d8ec322c3287800","message":"add additional test for dict inside list for all_parser_info()","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["tests/test_lib.py"]}},{"commit":"a2b165565f54d91489bf38577a0785e78a4523d8","message":"add lib tests for new functions","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["tests/test_lib.py"]}},{"commit":"b426369815984bd2aae8bcb14e306ba73b8cd4ae","message":"use all_parser_info() from lib in about function","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/cli.py"]}},{"commit":"ac0840cc0afb4aeee2c99076710c987e09cfa5f7","message":"fix typo","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"ee98ab0a4a7671ae34ee79f7b0b97c061a8c2944","message":"doc update","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/lib.md","docs/utils.md"]}},{"commit":"2adec2c0035b84ca0242f2494b6c2651b9898ca5","message":"update type hints with mypy help","stats":{"files_changed":4,"insertions":21,"deletions":19,"files":["jc/lib.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/utils.py"]}},{"commit":"f19c9c71bf4f592f55a5176458acd478b462fdbe","message":"add type hints","stats":{"files_changed":2,"insertions":15,"deletions":4,"files":["jc/parsers/foo.py","jc/parsers/foo_s.py"]}},{"commit":"e93adf1884c0006a64123513070a5fd96a940da2","message":"fix doc","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"254c4fc507842ca72064c0196418a7b939d54d06","message":"add new functions","stats":{"files_changed":2,"insertions":20,"deletions":6,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"74d5f60d14fc42cfd5768c7ffd6efc890a65d442","message":"update console interview description","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"]}},{"commit":"db7dc0634bc17b4daadc8bc21bba5975c093efe5","message":"make **kwargs optional","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/lib.md","jc/lib.py"]}},{"commit":"e156b0db453e99fb0f74b618fd343218f978ff68","message":"add type hints","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]}},{"commit":"50adc05fbd6a0dcd9e4fb38aa41917bb57332f36","message":"formatting","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/utils.md","jc/utils.py"]}},{"commit":"446cac7c217103eb66cfdee97e3a208b7144b644","message":"doc update","stats":{"files_changed":2,"insertions":15,"deletions":11,"files":["docs/utils.md","jc/utils.py"]}},{"commit":"28ffe3076bb5f23aeaf2624344856dbd02b4c0e8","message":"formatting","stats":{"files_changed":2,"insertions":8,"deletions":9,"files":["docs/lib.md","jc/lib.py"]}},{"commit":"d4d5e206cae14acd25445952f820810818b3fdce","message":"type hints update","stats":{"files_changed":3,"insertions":40,"deletions":28,"files":["docs/lib.md","docs/utils.md","jc/utils.py"]}},{"commit":"42fbe40a4ae02b9d09acdbf9b22573844959d2ad","message":"simplify type hints","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/lib.py"]}},{"commit":"27e4a120e21dcbb3eadc6c4cf224ddb33859328d","message":"remove trailing comma","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/lib.md","jc/lib.py"]}},{"commit":"b5d5b7c73a96d4335b178ccfac60af90913e6f0f","message":"remove private classes","stats":{"files_changed":3,"insertions":29,"deletions":148,"files":["docgen.sh","docs/parsers/ifconfig.md","docs/parsers/traceroute.md"]}},{"commit":"e7471556ba5fb0586ac5b0d7404cabd98a58db2e","message":"remove sed lines","stats":{"files_changed":1,"insertions":0,"deletions":5,"files":["docgen.sh"]}},{"commit":"640a21341bb1c562cb2124155b511dfc74277fc0","message":"fix indentation","stats":{"files_changed":2,"insertions":47,"deletions":42,"files":["docs/utils.md","jc/utils.py"]}},{"commit":"f5befad3e41ba2864abc795a2fdf63e0f1d37c21","message":"move docstring under __init__","stats":{"files_changed":2,"insertions":33,"deletions":25,"files":["docs/utils.md","jc/utils.py"]}},{"commit":"f8223023c31093c1a34130b4e4cfc23b1d80a30c","message":"change header depth","stats":{"files_changed":4,"insertions":24,"deletions":10,"files":["docgen.sh","docs/parsers/ifconfig.md","docs/parsers/traceroute.md","docs/utils.md"]}},{"commit":"7028e87f9b411c0cfb92eee7fc0667cdcb9a54ff","message":"remove TOC for parsers","stats":{"files_changed":87,"insertions":22,"deletions":445,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md"]}},{"commit":"590728f9c1ccfdc078e600d1f35ad4ba51f70d36","message":"try new pydoc-markdown formatting options","stats":{"files_changed":91,"insertions":506,"deletions":17,"files":["docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/utils.md","jc/lib.py"]}},{"commit":"7cc147fe2d7b278bcab905bc4c3b70b5265e1510","message":"increase heading size","stats":{"files_changed":2,"insertions":4,"deletions":44,"files":["docgen.sh","docgen.sh.old"]}},{"commit":"3cfb3965bb25024a7b03870b71f02194e278919b","message":"formatting","stats":{"files_changed":3,"insertions":19,"deletions":19,"files":["docs/lib.md","docs/parsers/universal.md","docs/utils.md"]}},{"commit":"155d4213225fe4fcf4a059fb63c1ab9fc493177e","message":"formatting","stats":{"files_changed":86,"insertions":182,"deletions":181,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"]}},{"commit":"d3e10bb87bdb32396bce95f74e62a023f4efaf99","message":"add lsusb docs","stats":{"files_changed":1,"insertions":291,"deletions":0,"files":["docs/parsers/lsusb.md"]}},{"commit":"fd5433ee6220357e59633c78b689aa432d056b43","message":"parse docstring formatting","stats":{"files_changed":3,"insertions":6,"deletions":293,"files":["docs/lib.md","docs/parsers/lsusb.md","jc/lib.py"]}},{"commit":"4568f2d06e8fc1c465c86c318d925586481af062","message":"formatting for parse docstring","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/lib.md","jc/lib.py"]}},{"commit":"c36e513d1bcc07cd8f01ff59199950e5396da51b","message":"formatting","stats":{"files_changed":86,"insertions":88,"deletions":91,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"]}},{"commit":"8e089baf3fe30fed80e1c5cdde7c3046bb70ca5a","message":"remove info class from docs","stats":{"files_changed":86,"insertions":8,"deletions":855,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"]}},{"commit":"386f6c317e104e797c2b55e3d21c8b064a83ac78","message":"update markdown processor settings","stats":{"files_changed":89,"insertions":9552,"deletions":9939,"files":["docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/utils.md"]}},{"commit":"75cd84ce8a86b3357c6cf5fe4fbc62d0f298a29a","message":"try new markdown conversion","stats":{"files_changed":94,"insertions":11423,"deletions":10081,"files":["README.md","docgen.sh","docgen.sh.old","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/utils.md","jc/cli.py","man/jc.1"]}},{"commit":"6fad44e35df5d0e33e716d0fcb84ed309e6fd30b","message":"fix type hint","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]}},{"commit":"1caac750daa25a5abeb1289964e918ec06289bfc","message":"Update type hints","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/lib.py"]}},{"commit":"16370dcb3d5cf1304c2340ef2253ef2987a982b4","message":"update type hints","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]}},{"commit":"c1302f2573993a6908001d6df0697486f54a9e7e","message":"add type-hints to public api","stats":{"files_changed":1,"insertions":19,"deletions":8,"files":["jc/lib.py"]}},{"commit":"6f0ffe0955e4d9d6cc82552cf4e4f419e3ff3756","message":"docu update","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]}},{"commit":"1f89745fe7cca3a0ac27445942098b717675a481","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"a46ac18ef775bb2c52675e61e11c5d92f33cbe81","message":"doc update","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["CHANGELOG"]}},{"commit":"1a05f1c575b57456481e41baaf551cef30115966","message":"add parser info functions. move _get_parser functionality from cli to lib","stats":{"files_changed":3,"insertions":64,"deletions":54,"files":["jc/__init__.py","jc/cli.py","jc/lib.py"]}},{"commit":"08f818aa42ca68050a79ec387c42bff265257fd5","message":"Merge pull request #199 from kellyjonbrazil/master"},{"commit":"b3896650c230b4acc73704a50c93ee74e4034eef","message":"revert column formatting","stats":{"files_changed":2,"insertions":62,"deletions":104,"files":["README.md","templates/readme_template"]}},{"commit":"f285539526998a5097943c71dcecb2979036b2b0","message":"conform to 80 columns","stats":{"files_changed":2,"insertions":104,"deletions":62,"files":["README.md","templates/readme_template"]}},{"commit":"a896dcdf3b31b60582ebb1b3bca5d1103f998dd6","message":"formatting","stats":{"files_changed":2,"insertions":338,"deletions":120,"files":["README.md","templates/readme_template"]}},{"commit":"0a187d4ed08173ec360a006ae2367bb1f2f96c52","message":"add console interview links","stats":{"files_changed":3,"insertions":7,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"]}},{"commit":"2d65bc57d5a396e6683f970194de29494b5c1272","message":"add quotes","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"ab63809fde0cefe1f0401d957a3736fdb760f0cf","message":"update description","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"6f04707dc63936efd0e533ae36e1b39ead10c466","message":"add python package doc info to top of page","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"]}},{"commit":"d14a86a9b58bdc3cb0c8df1dfa495aefdaab8033","message":"fix typo","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"8e6a31d3da19926ac46744e02b27a899ca5fbd7c","message":"minor fix for macOS binary","stats":{"files_changed":6,"insertions":14,"deletions":8,"files":["CHANGELOG","docs/readme.md","jc/__init__.py","jc/lib.py","man/jc.1","setup.py"]}},{"commit":"6e7b6afe87355e96422bb2560ffcbd5e79d28f04","message":"Merge pull request #198 from kellyjonbrazil/dev"},{"commit":"027c231097a002526350a93322407582a85db0cb","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]}},{"commit":"f1cf7d1f953586dd44a4463d924f1a1f52717c37","message":"add helper function info","stats":{"files_changed":2,"insertions":7,"deletions":5,"files":["jc/parsers/foo.py","jc/parsers/foo_s.py"]}},{"commit":"df611cc263f50285e74ceb3381f55b43a74870a0","message":"formatting","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"0f3143bbbb593340190e66729580146410012e14","message":"formatting","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"c280757b7624a46543e481ca47a6e084d2d6f519","message":"formatting","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"d30b9d84ef5ec3a2a504f7ea251c932b8c9ea878","message":"formatting","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"50ded1dbd97d26cf01d7e1a98b40e0f0f7d02202","message":"doc update","stats":{"files_changed":1,"insertions":10,"deletions":4,"files":["docs/readme.md"]}},{"commit":"e319aea5a45c598a44f35b4e58131d977509e4f3","message":"add doc version info","stats":{"files_changed":1,"insertions":10,"deletions":4,"files":["jc/__init__.py"]}},{"commit":"ba86509c1d8700a50fe14e9d931ee57261306c5f","message":"simplify OSError exception handling","stats":{"files_changed":1,"insertions":3,"deletions":9,"files":["jc/cli.py"]}},{"commit":"0a9279ae6bfdd1aa59f5e9b31ce0af3bfec19f96","message":"doc update","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["CHANGELOG","tests/test_lib.py"]}},{"commit":"a13dde12af01b4473aa9a34b8a0d7387fb48500a","message":"change raw output wording","stats":{"files_changed":173,"insertions":173,"deletions":173,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py","man/jc.1"]}},{"commit":"e2ed358de1abefd737c187a324cbe4734d6975e8","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["CHANGELOG"]}},{"commit":"a2cd3666210be3727a00c3405972f32fbd421046","message":"Delete _config.yml","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["docs/_config.yml"]}},{"commit":"15addd9bfc18a0e87beb97040b431c872b783662","message":"doc fix","stats":{"files_changed":2,"insertions":4,"deletions":8,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]}},{"commit":"a4e34b0053ec0c032f4783caaa3e07fc2c685a98","message":"add universal parser docs","stats":{"files_changed":2,"insertions":63,"deletions":0,"files":["docgen.sh","docs/parsers/universal.md"]}},{"commit":"d09529ac302fbcc156d58cf836f8397c98121a76","message":"changelog update","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]}},{"commit":"553097b5050dc02fbdaeec2e2e138e01bc6811d9","message":"docstring update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/universal.py"]}},{"commit":"49c556857708307f617b2b516f2d281398681b5b","message":"module doc update","stats":{"files_changed":7,"insertions":35,"deletions":15,"files":["README.md","docs/lib.md","docs/readme.md","jc/__init__.py","jc/lib.py","man/jc.1","templates/readme_template"]}},{"commit":"6962b9ee8a52c924dc2de6b79ddeea3636e80fe4","message":"formatting","stats":{"files_changed":2,"insertions":8,"deletions":6,"files":["docs/lib.md","jc/lib.py"]}},{"commit":"b4575a3f780f9aa2751c8b4789f67aaca32dd1cb","message":"add lib docs","stats":{"files_changed":3,"insertions":91,"deletions":1,"files":["docgen.sh","docs/lib.md","jc/lib.py"]}},{"commit":"35b54d235d73b2ce658223be3d6095906f142d89","message":"add python package doc info","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["README.md","templates/readme_template"]}},{"commit":"583a5757e454a4e36b331057d1266279b55ee16a","message":"formatting","stats":{"files_changed":18,"insertions":34,"deletions":30,"files":["docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/file.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/traceroute.md","docs/parsers/ufw_appinfo.md","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/file.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/traceroute.py","jc/parsers/ufw_appinfo.py"]}},{"commit":"f355333eeed3c4afba844dc7bed5224356552adc","message":"formatting","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"4d7df109604e4f8367904968602acfc05217a7fe","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"66b2c28f4bc75fb76800f9fb7ea485eee194a9a2","message":"formatting","stats":{"files_changed":2,"insertions":24,"deletions":24,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"299a9c6d88fdf1fede447b4057d8f4263daef733","message":"formatting","stats":{"files_changed":2,"insertions":25,"deletions":57,"files":["docs/parsers/csv.md","docs/readme.md"]}},{"commit":"bd391d979ce98b126dab0f012a56b3fcb1f73439","message":"add lib function docs","stats":{"files_changed":1,"insertions":23,"deletions":55,"files":["jc/__init__.py"]}},{"commit":"7309bd2282445f6daef0b1491ff60b8104500abb","message":"add get_help","stats":{"files_changed":3,"insertions":19,"deletions":10,"files":["jc/lib.py","jc/parsers/csv.py","jc/parsers/universal.py"]}},{"commit":"ce84c09d3394b598f19a3e012ef27ce4154e3b3b","message":"add get_help()","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/__init__.py"]}},{"commit":"b4fffbb6476daf78fbdf19dbf31bbeeab950d2dc","message":"formatting","stats":{"files_changed":46,"insertions":501,"deletions":304,"files":["docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/history.md","docs/parsers/ini.md","docs/parsers/iostat_s.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsusb.md","docs/parsers/netstat.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/ps.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/upower.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/who.md"]}},{"commit":"3701b4198aad1826ad6da571fbcaa530b057cc48","message":"formatting","stats":{"files_changed":86,"insertions":710,"deletions":606,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]}},{"commit":"d4c34098fa7ad2098076f0fa0564467e5d06f916","message":"formatting","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/lib.py"]}},{"commit":"b3c531193b3fc53697e7d7823576f481f9462d53","message":"formatting","stats":{"files_changed":3,"insertions":125,"deletions":71,"files":["CHANGELOG","docs/utils.md","jc/utils.py"]}},{"commit":"1d0e07c77bab5c48405323e52873c7952dd0a587","message":"formatting","stats":{"files_changed":3,"insertions":57,"deletions":55,"files":["docs/readme.md","jc/__init__.py","jc/lib.py"]}},{"commit":"06a322cf9c7468dc7e8ba05914e1d07bbc51f63a","message":"rename tests and add conversion function tests","stats":{"files_changed":1,"insertions":14,"deletions":8,"files":["tests/test_lib.py"]}},{"commit":"623d148712f93eacf9b7b5803140603f0af67acb","message":"doc update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]}},{"commit":"647e83d0439a0937db14a2cc97929e38a6b6a43b","message":"add test to ensure there are zero plugin parsers installed during tests","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["tests/test_lib.py"]}},{"commit":"91a554464444da0cc3ed3b4d212539232411f6cc","message":"doc update","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/lib.py"]}},{"commit":"a1190998aef1bf403ee34c38c1a0fbd6291ac38b","message":"add jc and jc.lib tests","stats":{"files_changed":2,"insertions":82,"deletions":0,"files":["tests/test_jc.py","tests/test_lib.py"]}},{"commit":"097d7a1850f6f6df73a5761c657b73ef9dbd3e29","message":"simplify __init__","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/__init__.py"]}},{"commit":"302bf72e720b3a67fbf1300eaff4f99fc343abeb","message":"Update high-level API docs","stats":{"files_changed":138,"insertions":718,"deletions":6,"files":["docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py"]}},{"commit":"2c42baf3a4dd6733c078f31a1becd708a05f2c36","message":"add new high-level api info","stats":{"files_changed":34,"insertions":174,"deletions":0,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py"]}},{"commit":"03feb89c84096c0ea1d6ae3a0634ae7b8b507e8f","message":"add module list info","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"9dd553192fbca3037b3afe5df6bae88f7a8a9365","message":"doc update","stats":{"files_changed":5,"insertions":29,"deletions":12,"files":["CHANGELOG","README.md","docs/readme.md","man/jc.1","templates/readme_template"]}},{"commit":"fa3f02e9d1ac7867e3465c2d214f4e4229ff4c66","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"0a9dde58c5235f78c4c9ae9c013f7454482c6067","message":"add jc.parse() high-level API","stats":{"files_changed":3,"insertions":228,"deletions":134,"files":["jc/__init__.py","jc/cli.py","jc/lib.py"]}},{"commit":"70cb4453bebb235130e2c287633ecb1de6c2b0aa","message":"Merge pull request #195 from kellyjonbrazil/dev"},{"commit":"830674cc6f19e107347a743baff7bbaab7f80b75","message":"version bump","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["CHANGELOG","jc/__init__.py","man/jc.1","setup.py"]}},{"commit":"fb406b58a12fdfe81bcff76671661af77e7f2fe5","message":"formatting","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["docs/parsers/stat_s.md","jc/parsers/stat_s.py","man/jc.1"]}},{"commit":"55b272e41259ddc835cf4eb513fb67e7b2cf1573","message":"tighten stat data detection","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat_s.py"]}},{"commit":"94f62a9bf36242310790a0f37c66b2e6c6fdc078","message":"formatting","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/stat_s.md","jc/parsers/stat_s.py"]}},{"commit":"8d19e4cb7b45e3b6cb8c404c959949b7593c9386","message":"doc update","stats":{"files_changed":4,"insertions":115,"deletions":1,"files":["CHANGELOG","README.md","docs/parsers/stat_s.md","man/jc.1"]}},{"commit":"7e510d48e0f8426a67cf8d70d06d0331c274d358","message":"simplify non-stat parse error logic","stats":{"files_changed":7,"insertions":106,"deletions":2,"files":["jc/parsers/stat_s.py","tests/fixtures/centos-7.7/stat-streaming.json","tests/fixtures/freebsd12/stat-streaming.json",".../stat-filename-with-spaces-streaming.json","tests/fixtures/osx-10.14.6/stat-streaming.json","tests/fixtures/ubuntu-18.04/stat-streaming.json","tests/test_stat_s.py"]}},{"commit":"7b20cffb143447f4497bc4e895eac2426e8a519f","message":"simplify last item logic","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/stat_s.py"]}},{"commit":"5c934c43c13b69183561da8a77280feb3363e950","message":"add continue to simplify logic","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/stat_s.py"]}},{"commit":"8609298449e997ba4804d818f4fc23cb393ded7d","message":"update docstring","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/parsers/stat_s.py"]}},{"commit":"72cb0dc10b2dac486d3e2a52cf44baf0d7496034","message":"fixup for first and last items","stats":{"files_changed":1,"insertions":14,"deletions":10,"files":["jc/parsers/stat_s.py"]}},{"commit":"7b22fa81ded0f6f59e250ffea63c5d2a0f928b25","message":"raise for non-stat data","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/parsers/stat_s.py"]}},{"commit":"0b6a1307790e0793917bc2781e4873aa9dd67225","message":"ignore blank lines","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/stat_s.py"]}},{"commit":"fdcf4338e0f099699f8d48df6382be1cc97dba84","message":"add examples to docstring","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["jc/parsers/stat_s.py"]}},{"commit":"ee43037f481286a34a766390568965fdd53af132","message":"remove unused continue lines","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/stat_s.py"]}},{"commit":"26e365563c314e694915c7a3feae490ea99a112c","message":"add schema and _process logic","stats":{"files_changed":1,"insertions":50,"deletions":11,"files":["jc/parsers/stat_s.py"]}},{"commit":"1b39586bb1b62aee8ae709512c2e3f79cefdb3d9","message":"add stat streaming parser","stats":{"files_changed":2,"insertions":227,"deletions":0,"files":["jc/cli.py","jc/parsers/stat_s.py"]}},{"commit":"8bb3a6bea34d60d49039f1ed72fd7e413edc05da","message":"Merge pull request #194 from kellyjonbrazil/master"},{"commit":"e6900e2000bf265dfcfc09ffbfda39e9238661af","message":"add jar-manifest","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["EXAMPLES.md"]}},{"commit":"0ee244756bf39123e4873eb231156edbe7f0e0ec","message":"spelling","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/jar_manifest.md","jc/parsers/jar_manifest.py"]}},{"commit":"6d5ac9abe6712e01887ce0d96c278a568319f405","message":"update docs","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["docs/parsers/csv.md","docs/parsers/csv_s.md","man/jc.1"]}},{"commit":"44f6d9e1321459be8196aeebf6db088cc5120e61","message":"changelog update","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]}},{"commit":"360154559c5dee6affa55bbdd5d2f473248b9168","message":"Merge pull request #193 from kellyjonbrazil/dev"},{"commit":"78672bd7ad66c418e0ecf31add73f887b0946d29","message":"Merge pull request #190 from shaikustin/csv-doubleqouted"},{"commit":"65d96e26b59e231c77c1dbba1dc91708c33de30c","message":"add streaming tests","stats":{"files_changed":2,"insertions":13,"deletions":0,"files":["tests/fixtures/generic/csv-doubleqouted-streaming.json","tests/test_csv_s.py"]}},{"commit":"241d53af9a5c9bba70e28835e22c52c0060269ba","message":"Merge pull request #192 from kellyjonbrazil/dev"},{"commit":"5563829df2849a899df2e9211d6c92bddc695f9b","message":"make dialect sniff behavior match non-streaming parser","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/csv_s.py"]}},{"commit":"3a4a27e1f94ee07352c7616c57ec655c1aea04f6","message":"version bump","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/csv.py"]}},{"commit":"9c887a36a804d817c3f669a55b9b1566d09d645d","message":"update csv_s parser with csv changes","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/csv_s.py"]}},{"commit":"bc7973af36e13006230b5faa9e201e300d468912","message":"update copyright","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","jc/cli.py","man/jc.1"]}},{"commit":"32972d8fdbdc71923978fd5c2a87fd6cfa4b7f8e","message":"doc update","stats":{"files_changed":7,"insertions":122,"deletions":9,"files":["CHANGELOG","README.md","docs/parsers/jar_manifest.md","jc/__init__.py","jc/parsers/jar_manifest.py","man/jc.1","setup.py"]}},{"commit":"b128d9109cbdb1176f2473d450023bb0be02531b","message":"add MANIFEST.MF tests","stats":{"files_changed":1,"insertions":46,"deletions":0,"files":["tests/test_jar_manifest.py"]}},{"commit":"929d7273a422c2bd5b83e5e19d32630f1a027f75","message":"doc updates","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/jar_manifest.py"]}},{"commit":"2a40f842743a8745d651b4b6cae645045e6c6aab","message":"fix doubleqoute in csv","stats":{"files_changed":4,"insertions":22,"deletions":1,"files":["jc/parsers/csv.py","tests/fixtures/generic/csv-doubleqouted.csv","tests/fixtures/generic/csv-doubleqouted.json","tests/test_csv.py"]}},{"commit":"9ff6fa818f0857321e4b3b089d288997f2ae27af","message":"add jar-manifest","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]}},{"commit":"dac73a4bfe24e36474fdf6ff60c23e784ca409bd","message":"Merge pull request #189 from kellyjonbrazil/master"},{"commit":"d7895547f74744e82317eabe4c870115701872be","message":"Merge pull request #188 from listuser/new_branch"},{"commit":"b7d439cb870e443e4f4e4a2137ab170835e77eff","message":"Renamed jar-manifest.py to jar_manifest.py, added multi manifest outputs to tests...","stats":{"files_changed":3,"insertions":2220,"deletions":9,"files":["jc/parsers/{jar-manifest.py => jar_manifest.py}","tests/fixtures/rhel-8/MANIFEST.MF.MULTI.json","tests/fixtures/rhel-8/MANIFEST.MF.MULTI.out"]}},{"commit":"7cc903a5f5ca368be97babadc72689375567a901","message":"Removed inflating from examples in jar-manifest.py","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/jar-manifest.py"]}},{"commit":"c495a8291bd3e1fd070ee2e018b9b550f9c86314","message":"Updated test output in MANIFEST.MF.json","stats":{"files_changed":1,"insertions":1,"deletions":292,"files":["tests/fixtures/rhel-8/MANIFEST.MF.json"]}},{"commit":"5e1d7d777c627fb17feda6e51d9640bbd0f03302","message":"Renamed metamf.py to jar-manifest.py, plus other changes","stats":{"files_changed":8,"insertions":304,"deletions":2544,"files":["jc/parsers/{metamf.py => jar-manifest.py}","tests/fixtures/rhel-8/MANIFEST.MF.json",".../rhel-8/{MANIFEST.MF => MANIFEST.MF.out}",".../rhel-8/cmds_used_to_generate_test_data.txt",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out"]}},{"commit":"7edad3f676fe5560017ca9cb05ede6f46787e78f","message":"Create key value pairs from a MANIFEST.MF file, to include key multiline value pairs.","stats":{"files_changed":8,"insertions":3042,"deletions":0,"files":["jc/parsers/metamf.py","tests/fixtures/rhel-8/MANIFEST.MF","tests/fixtures/rhel-8/MANIFEST.MF.json",".../rhel-8/cmds_used_to_generate_test_data.txt",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out"]}},{"commit":"f7331001d4ab976e311458a16b6e5337da2e3aab","message":"use github releases instead of packaging site","stats":{"files_changed":3,"insertions":9,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"]}},{"commit":"f8e09ae2ffe185d21305d566fad20f510df9890f","message":"Merge pull request #187 from kellyjonbrazil/master"},{"commit":"433c7cc0f05e321ffe024845a908f3e856d4cd2b","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/zipinfo.md","jc/parsers/zipinfo.py"]}},{"commit":"d753e71a7452310d45fa605a2e4c70320ed60dbb","message":"Merge pull request #186 from kellyjonbrazil/dev"},{"commit":"2e4f5a508b6c90f9e03dcbcf64efc0e2fc446666","message":"version bump","stats":{"files_changed":4,"insertions":6,"deletions":3,"files":["CHANGELOG","jc/__init__.py","man/jc.1","setup.py"]}},{"commit":"88b960eff6cb3739d0d243c8d8b3e8ad5b8eb97c","message":"doc update","stats":{"files_changed":4,"insertions":144,"deletions":1,"files":["EXAMPLES.md","README.md","docs/parsers/zipinfo.md","man/jc.1"]}},{"commit":"88c77bd89e2c2a5f023e6638816c9153b6276d35","message":"add zipinfo tests","stats":{"files_changed":2,"insertions":47,"deletions":0,"files":["tests/fixtures/osx-10.14.6/zipinfo-multi.json","tests/test_zipinfo.py"]}},{"commit":"51a7a4251fff518d8da78ffa41e7ba2e2cb47f12","message":"add multi-archive test output","stats":{"files_changed":1,"insertions":24,"deletions":0,"files":["tests/fixtures/osx-10.14.6/zipinfo-multi.out"]}},{"commit":"51d2f316f388d962c26aeb4f42affebec339e5a2","message":"add multi-archive support","stats":{"files_changed":1,"insertions":97,"deletions":72,"files":["jc/parsers/zipinfo.py"]}},{"commit":"ff78a46c4854339a097992701351ef471aff1671","message":"add zipinfo parser","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]}},{"commit":"ed4a9dc1d470f64bcc9de35b2d98568ffd50257d","message":"formatting","stats":{"files_changed":1,"insertions":21,"deletions":23,"files":["jc/parsers/zipinfo.py"]}},{"commit":"63182dba26040974cb8cada6f5910bb29b1fa3ed","message":"Merge pull request #185 from listuser/new_branch"},{"commit":"9c1eaa938934269fe4179da798acf5f119cde0cf","message":"revised zipinfo.py nested version","stats":{"files_changed":2,"insertions":68,"deletions":61,"files":["jc/parsers/zipinfo.py","tests/fixtures/rhel-8/zipinfo.json"]}},{"commit":"bc520fcbcdfad6a53e51944391fd24512bed8128","message":"added zipinfo.py nested version","stats":{"files_changed":2,"insertions":63,"deletions":53,"files":["jc/parsers/zipinfo.py","tests/fixtures/rhel-8/zipinfo.json"]}},{"commit":"46faac1a12a5b39d6a25427f6e8fdcca1204dbcd","message":"add test data zipinfo.json and zipinfo.out","stats":{"files_changed":2,"insertions":1222,"deletions":0,"files":["tests/fixtures/rhel-8/zipinfo.json","tests/fixtures/rhel-8/zipinfo.out"]}},{"commit":"3c424c0cb3cff462a963183585b57bea004e974f","message":"initial commit zipinfo.py to new_branch","stats":{"files_changed":1,"insertions":165,"deletions":0,"files":["jc/parsers/zipinfo.py"]}},{"commit":"3ac8d0362b4fb9999fc55a60a9cb20ac80d114f7","message":"use quotes around python versions","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]}},{"commit":"d88b998e6c7826a9ecae18663328e2d2915030fe","message":"formatting","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"]}},{"commit":"a9ed55c00652a563391a7930c7a4649967131ae1","message":"fix spelling","stats":{"files_changed":11,"insertions":11,"deletions":11,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]}},{"commit":"ea614341232e5272ee0c7fd46ba0f313033c761f","message":"fix schema docs","stats":{"files_changed":4,"insertions":16,"deletions":8,"files":["docs/parsers/crontab.md","docs/parsers/crontab_u.md","jc/parsers/crontab.py","jc/parsers/crontab_u.py"]}},{"commit":"a73d0d26cbe2860b8374661068e09e0717a3bab2","message":"Merge pull request #184 from kellyjonbrazil/dev"},{"commit":"b4506976e3c865397bc657183d49c484d8bcfd7a","message":"formatting","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["man/jc.1","templates/manpage_template"]}},{"commit":"34cb75a09697a06c3878f2f9a84eb3bd2a90ae62","message":"version bump","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/__init__.py","setup.py"]}},{"commit":"34df643f60712ae25645cb7cddff80e43c12262b","message":"add disable colors section","stats":{"files_changed":4,"insertions":18,"deletions":0,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"]}},{"commit":"ac7c13fcc013d386f34db51d634298fa3e97eccd","message":"add -C option to docs","stats":{"files_changed":4,"insertions":11,"deletions":1,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"]}},{"commit":"4fdb34c7d5fcaa65e2ccab814c3acf2f0f70c442","message":"add no-color.org","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]}},{"commit":"7ac468e35aac1a63c4e22f33aead74a6e41a22a6","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]}},{"commit":"df190aa299f1669d1fe09380026ae086839abc02","message":"add -C option to force color even with pipes","stats":{"files_changed":1,"insertions":15,"deletions":7,"files":["jc/cli.py"]}},{"commit":"9621475e86fe20fcdc2902b6ce7860a833ae2ca0","message":"changelog update","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["CHANGELOG"]}},{"commit":"82e0160de820ad2ed6143f58458711d600b929a3","message":"refactor NO_COLOR test","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"d03fb8b626a97e81006d0b108c8f400fe4e2ce3b","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"b300dfb3d75fe76e2ddbb087ff742dd0b5e6155b","message":"Add support for NO_COLOR env variable","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"a7de9111d97e687cafbc0709ec3ff7453d658a80","message":"Merge pull request #183 from kellyjonbrazil/dev"},{"commit":"7933dfdbe7bf400833d6f6b771362dfc518b9a8d","message":"Merge branch 'master' into dev"},{"commit":"f7cb5f7d01ac01538bee4da816408072b585768e","message":"update date","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]}},{"commit":"a26a298f1a3c141171e7d7ce459a27a297cec031","message":"doc update","stats":{"files_changed":4,"insertions":148,"deletions":1,"files":["README.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","man/jc.1"]}},{"commit":"dbd134d0dac2fc152183480958fd9e65919ac98d","message":"add examples to docs","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/iostat_s.py"]}},{"commit":"11aa01b0d9d6913059f98f9bd7591d7cad9037cf","message":"iostat-s tests","stats":{"files_changed":15,"insertions":15,"deletions":1,"files":["jc/parsers/iostat_s.py","tests/fixtures/centos-7.7/iostat-1-streaming.json","tests/fixtures/centos-7.7/iostat-m-streaming.json","tests/fixtures/centos-7.7/iostat-mx-streaming.json","tests/fixtures/centos-7.7/iostat-streaming.json","tests/fixtures/centos-7.7/iostat-x-streaming.json","tests/fixtures/ubuntu-18.04/iostat-1-streaming.json","tests/fixtures/ubuntu-18.04/iostat-m-streaming.json","tests/fixtures/ubuntu-18.04/iostat-mx-streaming.json","tests/fixtures/ubuntu-18.04/iostat-streaming.json","tests/fixtures/ubuntu-18.04/iostat-x-streaming.json","tests/fixtures/ubuntu-20.10/iostat-m-streaming.json","tests/fixtures/ubuntu-20.10/iostat-mx-streaming.json","tests/fixtures/ubuntu-20.10/iostat-streaming.json","tests/fixtures/ubuntu-20.10/iostat-x-streaming.json"]}},{"commit":"6f18e5344356684e845ec63158c570d82156254f","message":"fix for null lines","stats":{"files_changed":1,"insertions":203,"deletions":0,"files":["tests/test_iostat_s.py"]}},{"commit":"7b467c466568ad4e7986d4d7cf3ec606681b6d46","message":"add ubuntu 20.10 tests","stats":{"files_changed":9,"insertions":137,"deletions":0,"files":["tests/fixtures/ubuntu-20.10/iostat-m.json","tests/fixtures/ubuntu-20.10/iostat-m.out","tests/fixtures/ubuntu-20.10/iostat-mx.json","tests/fixtures/ubuntu-20.10/iostat-mx.out","tests/fixtures/ubuntu-20.10/iostat-x.json","tests/fixtures/ubuntu-20.10/iostat-x.out","tests/fixtures/ubuntu-20.10/iostat.json","tests/fixtures/ubuntu-20.10/iostat.out","tests/test_iostat.py"]}},{"commit":"537b8f263087894c02b5b7c121765cf96182a370","message":"add more int conversions","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"]}},{"commit":"4d823575e791999e200dedd491511c4fde64fc2e","message":"add more float fields","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"]}},{"commit":"541aa1d09f20ff6979eabaa66790decb3895f18d","message":"Add new field float conversions for iostat v11","stats":{"files_changed":2,"insertions":68,"deletions":8,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"]}},{"commit":"8f02021014b7b19acf1a8bbd777161aa82c65d66","message":"formatting","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/iostat_s.py"]}},{"commit":"158a15157c7e5dde95dc21766d0696bd82486688","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]}},{"commit":"2752e0d66a9ba0b57ac86913fd302ada23c280c0","message":"add iostat streaming parser","stats":{"files_changed":2,"insertions":166,"deletions":0,"files":["jc/cli.py","jc/parsers/iostat_s.py"]}},{"commit":"6c11e912afe3c4d16da9199b5c2fc10461928ac3","message":"update changelog","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]}},{"commit":"43d34461e27e3e4ac5f985786831c170b348c7c5","message":"update docs","stats":{"files_changed":83,"insertions":279,"deletions":81,"files":["README.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/utils.md","man/jc.1"]}},{"commit":"4dfdc9b0f65d8c950ed74545d0cc3f95c8abec6c","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"e2311cbb03f407414df953c8d1c07d0cf1a549ca","message":"add iostat tests","stats":{"files_changed":21,"insertions":400,"deletions":0,"files":["tests/fixtures/centos-7.7/iostat-1.json","tests/fixtures/centos-7.7/iostat-1.out","tests/fixtures/centos-7.7/iostat-m.json","tests/fixtures/centos-7.7/iostat-m.out","tests/fixtures/centos-7.7/iostat-mx.json","tests/fixtures/centos-7.7/iostat-mx.out","tests/fixtures/centos-7.7/iostat-x.json","tests/fixtures/centos-7.7/iostat-x.out","tests/fixtures/centos-7.7/iostat.json","tests/fixtures/centos-7.7/iostat.out","tests/fixtures/ubuntu-18.04/iostat-1.json","tests/fixtures/ubuntu-18.04/iostat-1.out","tests/fixtures/ubuntu-18.04/iostat-m.json","tests/fixtures/ubuntu-18.04/iostat-m.out","tests/fixtures/ubuntu-18.04/iostat-mx.json","tests/fixtures/ubuntu-18.04/iostat-mx.out","tests/fixtures/ubuntu-18.04/iostat-x.json","tests/fixtures/ubuntu-18.04/iostat-x.out","tests/fixtures/ubuntu-18.04/iostat.json","tests/fixtures/ubuntu-18.04/iostat.out","tests/test_iostat.py"]}},{"commit":"bf15575e90985cfec5c57dd11dfa2b86d53a41be","message":"fixes for ubunut","stats":{"files_changed":1,"insertions":14,"deletions":7,"files":["jc/parsers/iostat.py"]}},{"commit":"406336c7185b539b5e00532b58146d5b1b73f259","message":"add iostat example","stats":{"files_changed":1,"insertions":44,"deletions":0,"files":["EXAMPLES.md"]}},{"commit":"6665ffaeb8107e9db3b917db0663beaf44024533","message":"remove python 3.6 from tests","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]}},{"commit":"dcf552ca0c69aa5f0309a83dc33dee7c5ed81292","message":"add _process and cleanup","stats":{"files_changed":1,"insertions":138,"deletions":47,"files":["jc/parsers/iostat.py"]}},{"commit":"7a6ebf3c9555dd82df7dc0b71981cdd32ce0061d","message":"add iostat parser","stats":{"files_changed":2,"insertions":171,"deletions":0,"files":["jc/cli.py","jc/parsers/iostat.py"]}},{"commit":"d2dc4a983c86c538e13e568b908072de4ca0daaf","message":"changelog update","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"]}},{"commit":"1168259bc23862f671326d41f5282a3575205214","message":"add doc strings","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"]}},{"commit":"e8e4b46021557fbf5776c32dff46de022817fb6b","message":"use jc.utils type checks","stats":{"files_changed":5,"insertions":14,"deletions":19,"files":["jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]}},{"commit":"12d2de22821fd8f57f4d412e62f53db3d89d5e30","message":"use jc.utils.input_type_check() and simplify compatibility check","stats":{"files_changed":77,"insertions":181,"deletions":165,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/utils.py"]}},{"commit":"0e2fe401e1c49a9f947d7d17b72cfc4e90787f47","message":"version bump","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]}},{"commit":"14247adb0ae007924ca551a706eb0cfdbae97a41","message":"add input type checks","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["jc/parsers/csv_s.py","tests/test_csv_s.py"]}},{"commit":"3a9f0934c41c85ea7fa87165b9559f08814645cd","message":"add input type checks","stats":{"files_changed":2,"insertions":5,"deletions":3,"files":["jc/parsers/ls_s.py","tests/test_ls_s.py"]}},{"commit":"caf0a5c8713bf0d72951a2c6fd5a2c62c9eb59d3","message":"add input type checking","stats":{"files_changed":2,"insertions":7,"deletions":4,"files":["jc/parsers/vmstat_s.py","tests/test_vmstat_s.py"]}},{"commit":"cfb58b1cf3e3028f8e03fdd93f0165cf8d230e1e","message":"add input type checks","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/parsers/foo_s.py"]}},{"commit":"975cf195cc02774f50460ca479d9ebb7b73c7870","message":"formatting","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping_s.py"]}},{"commit":"8a46a259a36efc55bb0b2141acb9dd5ae52b7725","message":"add input type checks","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["jc/parsers/ping_s.py","tests/test_ping_s.py"]}},{"commit":"e395142e599aa78b4a7ec80dcc3f8ccf279f97b1","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"]}},{"commit":"caaeaf0d67cf44f8d2651cc53a7528d3ef0c74d3","message":"add 'str' type check on input","stats":{"files_changed":76,"insertions":227,"deletions":227,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]}},{"commit":"21e69a7cbf62240238f6fb78e874dda6ce2e922a","message":"ignore _config.yml","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"]}},{"commit":"603964935b58e02cf0614cf67ffacc6d94755e05","message":"remove trailing whitespace","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CHANGELOG"]}},{"commit":"47eb83ae55b9892716fff712bd2be21b6191b552","message":"add .vscode","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"]}},{"commit":"fc0ce6c95923ab124961e695a26c0b68dd0f359f","message":"add streaming parser to custom parsers info","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]}},{"commit":"077a29fb4eedcfccb026498c5c3a64b7b7601363","message":"add _jc_meta field info","stats":{"files_changed":2,"insertions":14,"deletions":2,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"]}},{"commit":"8568d0d328706a7a5b1476452e078d8cbe7b7391","message":"fix csv_s documentation","stats":{"files_changed":3,"insertions":7,"deletions":3,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py","man/jc.1"]}},{"commit":"597d39c28ea0c0fe3b072413e9d91ab5e27b62bd","message":"Merge pull request #180 from kellyjonbrazil/dev"},{"commit":"eb888dcbbcf83c9197bd59aab72f65ea6eb622ba","message":"version bump","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["jc/__init__.py","man/jc.1","setup.py"]}},{"commit":"d1b9ac0841b15ee15690c4066453a322618320ed","message":"doc update","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/df.md","docs/parsers/netstat.md","docs/parsers/ping.md","man/jc.1"]}},{"commit":"89a6d9c5c39b74f1b040f410659bfd7ae1a902d1","message":"add key-check to restore previous behavior even with non-df data","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/df.py"]}},{"commit":"85d983761637129cb85abfb0bbdde7c507061cd2","message":"add df info","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]}},{"commit":"cd7731484d826d84d835ecd460d746e78cadc5fc","message":"fix for cases where the Filesystem data overflows the column length (happens on older versions of df)","stats":{"files_changed":4,"insertions":62,"deletions":2,"files":["jc/parsers/df.py","tests/fixtures/generic/df-long-filesystem.json","tests/fixtures/generic/df-long-filesystem.out","tests/test_df.py"]}},{"commit":"086da16b1743c16a5ccdd102f889fb31f99e3caa","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"]}},{"commit":"20830528f04a5ecbe78420d8008249b089667767","message":"add test for older netstat version fix","stats":{"files_changed":4,"insertions":28,"deletions":0,"files":["CHANGELOG","tests/fixtures/generic/netstat-old.json","tests/fixtures/generic/netstat-old.out","tests/test_netstat.py"]}},{"commit":"83371edd8fe3d23dfa92fc707604086522c85ab9","message":"add space before inode to compensate for removed dash","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat_linux.py"]}},{"commit":"364a81decc16742e3caa070d90b1d605d96fe2c1","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ping.py"]}},{"commit":"ef09592ad3e5c9a77c1bdebe8f876fc4dde54834","message":"update for 1.17.2","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["CHANGELOG"]}},{"commit":"4a86e109ccb254d5195b782f84f3967c96ef726c","message":"Merge pull request #179 from shaikustin/ping-alpine-linux"},{"commit":"7fa5391b6613e62689c624041e03f9750c9c7972","message":"change alpine ping6 to ping","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_ping.py"]}},{"commit":"9b53ba5714819ff760f2d4546f5d2ee4d521c080","message":"support alpine linux ping","stats":{"files_changed":6,"insertions":45,"deletions":1,"files":["jc/parsers/ping.py",".../fixtures/alpine-linux-3.13/ping-hostname.json","tests/fixtures/alpine-linux-3.13/ping-hostname.out","tests/fixtures/alpine-linux-3.13/ping-ip.json","tests/fixtures/alpine-linux-3.13/ping-ip.out","tests/test_ping.py"]}},{"commit":"b59e38cfd2c8a7f5868e05d5562557b1c27e5e56","message":"Merge pull request #176 from kellyjonbrazil/dev"},{"commit":"5ba22dae597b9d154ca0a82f71cfbd8d8a6325db","message":"add JSON lines info","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"]}},{"commit":"4232e523acc523e510b4881d2a57a95b88ec8c8b","message":"Merge branch 'master' into dev"},{"commit":"bee80b35d2b8c15e6233f2798e9c02a11e9e1e9e","message":"update for version bump","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["CHANGELOG","docs/parsers/csv_s.md","man/jc.1"]}},{"commit":"c32395f6950d6294770ee93e8bf4d79c7d275ac3","message":"linting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_utils.py"]}},{"commit":"735c5e1078cc27b5cba03b8ebbae15aeca6b8fbd","message":"update comments for ParseError test: https://bugs.python.org/issue45617","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["tests/test_csv_s.py"]}},{"commit":"d09c94b292ca3beec92a00f8a51b7259dd30a1e5","message":"add python 3.10 testing info","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]}},{"commit":"4d04866f48f72b9ea0d213dc1533729d3b68a503","message":"add python bug https://bugs.python.org/issue45617 info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/csv_s.py"]}},{"commit":"a2d90f4dfcdc2cb00c6c0fa957493c95a21e256b","message":"force test","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_csv_s.py"]}},{"commit":"93a5002c8b530bd6f5f81e5d8595cde1f836ae41","message":"fix 3.10.0 version number","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]}},{"commit":"23bf5227a4c39ea017e55fc21150331e1af6fdb7","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"77c96fa2a96148221bde7d2274e0dfb5386a166f","message":"try tests on python 3.10","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["tests/test_csv_s.py"]}},{"commit":"3f5a1f015e9c0807e227b9f7300592e25502e014","message":"add python 3.10","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]}},{"commit":"b280c4fc18e60a85ab212b09aa5bf3a05a0eceff","message":"add ParseError test to streaming csv parser","stats":{"files_changed":2,"insertions":11,"deletions":19,"files":[".../fixtures/generic/csv-insurance-streaming.json","tests/test_csv_s.py"]}},{"commit":"3ab9b43a2eebf535be98c94810ac474bf32ec515","message":"raise ParseError on newline bug","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/csv_s.py"]}},{"commit":"46f568414a5c8d2f135486e86d0ada48cfcefeb0","message":"change streaming parser test names","stats":{"files_changed":3,"insertions":96,"deletions":89,"files":["tests/test_ls_s.py","tests/test_ping_s.py","tests/test_vmstat_s.py"]}},{"commit":"cba2fd299fff09a551b780e064a6e22bdf7e539a","message":"add tests","stats":{"files_changed":9,"insertions":75,"deletions":61,"files":[".../generic/csv-10k-sales-records-streaming.json","tests/fixtures/generic/csv-deniro-streaming.json","tests/fixtures/generic/csv-example-streaming.json","tests/fixtures/generic/csv-flyrna-streaming.json","tests/fixtures/generic/csv-flyrna2-streaming.json",".../fixtures/generic/csv-homes-pipe-streaming.json","tests/fixtures/generic/csv-homes-streaming.json",".../fixtures/generic/csv-insurance-streaming.json","tests/test_csv_s.py"]}},{"commit":"1e6e44f656f1bbb277eb38fb485f7b48e3b9e40b","message":"fix for piping data with non-platform newlines (e.g. windows csv files on unix)","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/csv_s.py"]}},{"commit":"acac0399946d9781193e9350dd7109f1dd3999fe","message":"working tests","stats":{"files_changed":3,"insertions":149,"deletions":0,"files":["tests/fixtures/generic/csv-biostats-streaming.json","tests/fixtures/generic/csv-cities-streaming.json","tests/test_csv_s.py"]}},{"commit":"50a3b340164b3139f04f67a2bee16e5343c8a2da","message":"optimizations and use iter() so we can exhaust data coming from list objects","stats":{"files_changed":1,"insertions":5,"deletions":8,"files":["jc/parsers/csv_s.py"]}},{"commit":"b45396070cf28fa36ecb44acd7be3e3bb81a712d","message":"update comment","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_vmstat_s.py"]}},{"commit":"218b9aec8ac397e26e6cd4ff407f3d10ef88ea9b","message":"doc update for streaming CSV parser","stats":{"files_changed":4,"insertions":87,"deletions":48,"files":["README.md","docs/parsers/csv_s.md","jc/parsers/csv_s.py","man/jc.1"]}},{"commit":"2b887debc647bd533040e392465967d12869cb02","message":"add csv streaming parser","stats":{"files_changed":4,"insertions":10172,"deletions":1,"files":["CHANGELOG","jc/cli.py","jc/parsers/csv_s.py","tests/fixtures/generic/csv-10k-sales-records.csv"]}},{"commit":"0313e3f8ca0e22e1575192d765d5afedf48e94df","message":"linting","stats":{"files_changed":1,"insertions":9,"deletions":6,"files":["jc/parsers/lsusb.py"]}},{"commit":"1669e6e20c3af3d28968558b76d0901a56775ac0","message":"linting","stats":{"files_changed":1,"insertions":23,"deletions":28,"files":["jc/parsers/lsusb.py"]}},{"commit":"ef6de75dda90c7221d53e0e0a942f0cac2247354","message":"add vmstat timestamp tests to utils","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["tests/test_utils.py"]}},{"commit":"a6bcec425a3f44ba3c7cd06b5ebaf522b66df109","message":"comment update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"]}},{"commit":"596ad9a64d002ced212b08512126e52707fe73d2","message":"update comment","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"]}},{"commit":"7a91c93319f75c37ba6bf268d8270947f0bf8b22","message":"add lsusb","stats":{"files_changed":1,"insertions":122,"deletions":0,"files":["EXAMPLES.md"]}},{"commit":"b5f7b35f89197879a9f13bd8fa5d2a0c77cc059a","message":"comment update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"]}},{"commit":"2f47fb7f14c4ff0e1c835897d94ee81d14590aba","message":"fix ParseError tests","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["tests/test_uname.py"]}},{"commit":"1b214c403657a50689f2a04892ce836dea669a1d","message":"raise ParseError if -t option is detected. add test","stats":{"files_changed":3,"insertions":30,"deletions":0,"files":["jc/parsers/lsusb.py","tests/fixtures/generic/lsusb-t.out","tests/test_lsusb.py"]}},{"commit":"8f94f8acc6bb53bbb19ba150551c7df2183a8863","message":"add tests and update docs","stats":{"files_changed":11,"insertions":384,"deletions":3,"files":["README.md","docs/parsers/file.md","docs/parsers/lsusb.md","docs/parsers/uname.md","man/jc.1","tests/fixtures/centos-7.7/lsusb-v-single.json","tests/fixtures/centos-7.7/lsusb-v.json","tests/fixtures/centos-7.7/lsusb.json","tests/fixtures/generic/lsusb-test-attributes.json","tests/fixtures/generic/lsusb-test-attributes2.json","tests/test_lsusb.py"]}},{"commit":"3a2a69cfa55e2f40d7536d923170a5cfc986998e","message":"formatting","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/parsers/lsusb.py"]}},{"commit":"f599c659881248b79c6dbc86d85a61311c9d3434","message":"add stress test examples","stats":{"files_changed":2,"insertions":464,"deletions":0,"files":["tests/fixtures/generic/lsusb-test-attributes.out","tests/fixtures/generic/lsusb-test-attributes2.out"]}},{"commit":"ad12849fd9fc2177afb30740acc63cf284dc394b","message":"update docs example and","stats":{"files_changed":1,"insertions":138,"deletions":26,"files":["jc/parsers/lsusb.py"]}},{"commit":"f36b3789e8df6673207d6c2d3d0796acfdfe011d","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsusb.py"]}},{"commit":"6d18c0ba61cd188dbff736f1be47b7362c841687","message":"change variable name last_attribute and last_attr to last_item","stats":{"files_changed":1,"insertions":47,"deletions":47,"files":["jc/parsers/lsusb.py"]}},{"commit":"17097abec9567a58b5a5f7bbed11ecfd69cbd28c","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":6,"files":["jc/parsers/lsusb.py"]}},{"commit":"b7ddd3b285f205211394edc70b611171cf72a4c5","message":"change variable names","stats":{"files_changed":1,"insertions":22,"deletions":22,"files":["jc/parsers/lsusb.py"]}},{"commit":"75b23f62c9d7b33907af92964d1a6234332fbc78","message":"working configuration_descriptor and device_descriptor attributes","stats":{"files_changed":1,"insertions":35,"deletions":7,"files":["jc/parsers/lsusb.py"]}},{"commit":"f88967b2a59d79e053554d1e141f71e9d2d87456","message":"add attribute lists up to interface_association","stats":{"files_changed":1,"insertions":126,"deletions":21,"files":["jc/parsers/lsusb.py"]}},{"commit":"ba2846664b35b2e94aa905431c55c029b24a64e3","message":"edpoint_descriptors attributes working","stats":{"files_changed":1,"insertions":22,"deletions":2,"files":["jc/parsers/lsusb.py"]}},{"commit":"10dba37ca2624e05eff246ef49df8ebd3f275d86","message":"hub_descriptor attributes working","stats":{"files_changed":1,"insertions":28,"deletions":1,"files":["jc/parsers/lsusb.py"]}},{"commit":"0e6f938514965503f1d86d56c047f9f8fc03ac65","message":"working hub_port_status section","stats":{"files_changed":1,"insertions":36,"deletions":45,"files":["jc/parsers/lsusb.py"]}},{"commit":"159d87c1126f4d79d5e34837bc2c353a5445803b","message":"add length guard and test for uname with no -a on linux","stats":{"files_changed":3,"insertions":18,"deletions":7,"files":["jc/parsers/uname.py","tests/fixtures/centos-7.7/uname.out","tests/test_uname.py"]}},{"commit":"9e7b1621cf232e9859bdf018737e536820f380a0","message":"device_status working","stats":{"files_changed":1,"insertions":18,"deletions":18,"files":["jc/parsers/lsusb.py"]}},{"commit":"2057817ef8fec85b2a978b682e7fe8bc16def828","message":"add uname tests","stats":{"files_changed":11,"insertions":89,"deletions":0,"files":["tests/fixtures/debian10/uname-a.json","tests/fixtures/debian10/uname-a.out","tests/fixtures/freebsd12/uname-a.json","tests/fixtures/freebsd12/uname-a.out","tests/fixtures/freebsd12/uname-a2.json","tests/fixtures/freebsd12/uname-a2.out","tests/fixtures/generic/uname-a-different-proc.json","tests/fixtures/generic/uname-a-different-proc.out","tests/fixtures/generic/uname-a.json","tests/fixtures/generic/uname-a.out","tests/test_uname.py"]}},{"commit":"a1eabad2d37bb0d0e9407edf7305e223eba67da2","message":"add comments","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/uname.py"]}},{"commit":"92bf2b1ca2a172d3977d6e3c36b5ca1a8c2bab63","message":"simplify fixup logic for uname","stats":{"files_changed":2,"insertions":8,"deletions":20,"files":["CHANGELOG","jc/parsers/uname.py"]}},{"commit":"2b2123a4ba9b77d2089d367fe85dcb5d2857a295","message":"add FreeBSD support","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","jc/parsers/uname.py"]}},{"commit":"908b2f9200ddcce4beb531a3c90908786b6a5b02","message":"add items","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"]}},{"commit":"deff0c7bfdf942b8d7e7bd140219e08bf80a50cb","message":"remove print debug","stats":{"files_changed":1,"insertions":1,"deletions":5,"files":["jc/parsers/uname.py"]}},{"commit":"7cd01efa64029775042a2c145997ce30ef6b4f6b","message":"fixup for cases where the 'process' and/or 'machine' fields are blank on linux","stats":{"files_changed":1,"insertions":25,"deletions":1,"files":["jc/parsers/uname.py"]}},{"commit":"2dbe56456bbea2bdfce7eacbf8b9f10a1b249f55","message":"add nested_dict. start work on hub_port_status and device_status","stats":{"files_changed":1,"insertions":49,"deletions":39,"files":["jc/parsers/lsusb.py"]}},{"commit":"6078a411ef612be8bad012aa404f34ebd74a1fd7","message":"add initial schema doc","stats":{"files_changed":1,"insertions":79,"deletions":4,"files":["jc/parsers/lsusb.py"]}},{"commit":"4a3656562f161a51f5cb6f0e9ccd271859b78d62","message":"del null keys","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["jc/parsers/lsusb.py"]}},{"commit":"ba75989a24839907723ed7c3d7a497473d489a34","message":"update comments","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/lsusb.py"]}},{"commit":"9e9e2c362894f0072ab839565829881d750c8912","message":"move state instantiation before has_data test","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsusb.py"]}},{"commit":"9a2a8c6b61a46a9bfb5a4492b86774a4a78672ab","message":"shorten set_sections","stats":{"files_changed":1,"insertions":20,"deletions":52,"files":["jc/parsers/lsusb.py"]}},{"commit":"dae42ef1619441637672d634f9e5d7ab26115f09","message":"add hub_port_status and device_status","stats":{"files_changed":1,"insertions":18,"deletions":1,"files":["jc/parsers/lsusb.py"]}},{"commit":"931f2cab78bda180443535c04b532d04c6e88dd0","message":"add hub_descriptor","stats":{"files_changed":1,"insertions":14,"deletions":11,"files":["jc/parsers/lsusb.py"]}},{"commit":"72b061bed4453686d264ccf8977cba6c2a4794ec","message":"add endpoint_descriptors","stats":{"files_changed":1,"insertions":32,"deletions":8,"files":["jc/parsers/lsusb.py"]}},{"commit":"29a7c73990d9620b15a4010d17fc9a9a859f44b4","message":"add hid_device_descriptor and report_descriptors","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/parsers/lsusb.py"]}},{"commit":"2d1d68e3007f76d4c34ac07ae822935ab6021e79","message":"simplify populate_lists. Add CDC lists","stats":{"files_changed":1,"insertions":87,"deletions":88,"files":["jc/parsers/lsusb.py"]}},{"commit":"c5c1e170d1f502de5c76e9e481a23b26ffcaf237","message":"interface descriptors working","stats":{"files_changed":1,"insertions":111,"deletions":76,"files":["jc/parsers/lsusb.py"]}},{"commit":"9c1bb66452838e704ef2277f313bb51a42dc03b9","message":"fix remove _state field during schema_populate","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/lsusb.py"]}},{"commit":"a4f3306bae90fbc807fdd9ff2ce71e25d36a663f","message":"initial schema build. need to figure out why deleting _state from output_line causes exceptions","stats":{"files_changed":1,"insertions":69,"deletions":28,"files":["jc/parsers/lsusb.py"]}},{"commit":"1bc638b6ee7a820406ba4b84d3408f7cd4fe779d","message":"add bus_list and add all device_list data to the list","stats":{"files_changed":1,"insertions":36,"deletions":32,"files":["jc/parsers/lsusb.py"]}},{"commit":"9ad0cd9dae8822235c37159541ce72471eb4263e","message":"now storing state within the objects to make building the schema (later) easier.","stats":{"files_changed":1,"insertions":116,"deletions":211,"files":["jc/parsers/lsusb.py"]}},{"commit":"6d4a4691276d8659253b2ac8f8bdbd71a1fece7d","message":"use class for state","stats":{"files_changed":1,"insertions":356,"deletions":333,"files":["jc/parsers/lsusb.py"]}},{"commit":"ed6997e3ff2e575a6d4daa7d7a2cbe7dddacdd4d","message":"add interface_association section","stats":{"files_changed":2,"insertions":170,"deletions":34,"files":["jc/parsers/lsusb.py","tests/fixtures/centos-7.7/lsusb-v-single.out"]}},{"commit":"eb788fca6e25eea1fa8a43b22360c852ecf5af35","message":"somewhat working lsusb parser. needs a lot more TLC","stats":{"files_changed":4,"insertions":919,"deletions":0,"files":["jc/cli.py","jc/parsers/lsusb.py","tests/fixtures/centos-7.7/lsusb-v.out","tests/fixtures/centos-7.7/lsusb.out"]}},{"commit":"9186f5f37739012b8c04c776310a20ef55b1469f","message":"fix file parser for gzip cases (has ': ' in the description, which is the delimiter)","stats":{"files_changed":7,"insertions":99,"deletions":4,"files":["CHANGELOG","jc/__init__.py","jc/parsers/file.py","setup.py","tests/fixtures/osx-10.14.6/file3.json","tests/fixtures/osx-10.14.6/file3.out","tests/test_file.py"]}},{"commit":"30cff5f28140a5b20a617c8145c13e43b7b6685b","message":"add note that the streaming parser outputs JSON Lines","stats":{"files_changed":8,"insertions":17,"deletions":3,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","man/jc.1"]}},{"commit":"b724e0969a0d6b22bed0c77eb8d629381179ea3f","message":"-qq instead of -q","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"]}},{"commit":"a62c49e8715873b068a96da5021ea24a783acd6b","message":"Merge pull request #172 from kellyjonbrazil/master"},{"commit":"9b160f6279bbbf0c15413c98922eef137ba2f3f4","message":"link update","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]}},{"commit":"338a4e2612f70bb3e2af31f61a7db75f647293fe","message":"formatting","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]}},{"commit":"0140688750be61dd752059ee66734ab1c7a8f30e","message":"link updates","stats":{"files_changed":6,"insertions":8,"deletions":4,"files":["README.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","templates/readme_template"]}},{"commit":"73e5ea98c1ca2b9299085e3832791162eca3b9ff","message":"Merge pull request #170 from kellyjonbrazil/dev"},{"commit":"77dcbc544da271edab5de5ad209117e98c846f9c","message":"final doc update","stats":{"files_changed":3,"insertions":2,"deletions":3,"files":["CHANGELOG","jc/__init__.py","man/jc.1"]}},{"commit":"c7bcb0947ae32acc9cdba7a6975d2f2557f10a39","message":"indent subsequent error and warning lines","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"]}},{"commit":"5cd3f7f71d38b560a88dd6057e9c7a94991a3d71","message":"Add example to raise ParseError if there is no output data to yield","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/foo_s.py"]}},{"commit":"5044388ab2e8d7d8b427fd51b0ab875611bd127f","message":"raise if line data is unrecognized","stats":{"files_changed":2,"insertions":6,"deletions":3,"files":["jc/parsers/vmstat_s.py","tests/test_vmstat_s.py"]}},{"commit":"ee075db59819d80e4dcb60ddbd9cfe2fd529dfe9","message":"linting","stats":{"files_changed":4,"insertions":5,"deletions":7,"files":["jc/cli.py","jc/parsers/foo_s.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"]}},{"commit":"9904e0be61e7c81b907bf3770f111346daeff481","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/utils.md","jc/utils.py"]}},{"commit":"31b69b3242eeca2c02f87c31d58193dd3f06fe49","message":"formatting","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/utils.md","jc/utils.py"]}},{"commit":"e6a80fea3228122dd84e17672c835c0460ad1342","message":"formatting","stats":{"files_changed":3,"insertions":7,"deletions":7,"files":["docs/utils.md","jc/utils.py","man/jc.1"]}},{"commit":"d6aec00e038d1ecfe43c13a6909d50630455b372","message":"add vmstat-1-long tests","stats":{"files_changed":4,"insertions":27,"deletions":1,"files":["tests/fixtures/ubuntu-18.04/vmstat-1-long-streaming.json","tests/fixtures/ubuntu-18.04/vmstat-1-long.json","tests/test_vmstat.py","tests/test_vmstat_s.py"]}},{"commit":"4aa7d81e11ea7fcfbb5c9d74337cde617b1a0d5d","message":"ignore re-printed header rows in output","stats":{"files_changed":3,"insertions":50,"deletions":2,"files":["jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","tests/fixtures/ubuntu-18.04/vmstat-1-long.out"]}},{"commit":"48cdabc3b0862d6291e1ec59ab385e0e146c31eb","message":"document timestamps","stats":{"files_changed":4,"insertions":16,"deletions":0,"files":["docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"]}},{"commit":"a1791ef5479749692c79bbe98fc7687d70cd6cda","message":"linting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"]}},{"commit":"7bc87f6c2d4cfcfa656a1c1b8973a4c0414c85d9","message":"change _meta to _jc_meta","stats":{"files_changed":8,"insertions":8,"deletions":8,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","man/jc.1"]}},{"commit":"bbed9e274b8252ba0518140fe7fc97029310771f","message":"linting","stats":{"files_changed":1,"insertions":154,"deletions":159,"files":["jc/parsers/ping_s.py"]}},{"commit":"486282b9856f5e56cf43ee1399d8e7cb78353b32","message":"linting","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/vmstat_s.py"]}},{"commit":"a4d45b653f794033978940da14910f5d607a8254","message":"linting","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["jc/parsers/foo_s.py","jc/parsers/vmstat.py"]}},{"commit":"22e151b01c0f97c141d912c9646e46df0320d622","message":"linting","stats":{"files_changed":2,"insertions":56,"deletions":60,"files":["jc/cli.py","jc/utils.py"]}},{"commit":"7a4ebcd1ecdb4929aae70e44b4f9b6b5ab52b393","message":"language hints","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CONTRIBUTING.md"]}},{"commit":"651cbfe02fbb354c4caf8e0d022655642e7caed3","message":"add streaming foo parser","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]}},{"commit":"8c3e764516e1c28961b09380b638a57ce98b1261","message":"add streaming parser to contrib guidelines","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]}},{"commit":"b4e75da7e3f23502723ce8b2a7261b376f296864","message":"formatting","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"]}},{"commit":"37223f086cabc8db5962415bd161fed151dafb9d","message":"formatting","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["README.md","templates/readme_template"]}},{"commit":"a404033735c2c8075a8e08194197eae59db70afd","message":"add error and warning message wrap info","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]}},{"commit":"b7433ed085c0ba22ea0d49330871a651a8d83fb4","message":"auto wrap warning and error messages","stats":{"files_changed":6,"insertions":80,"deletions":41,"files":["docs/utils.md","jc/cli.py","jc/parsers/file.py","jc/parsers/ls.py","jc/parsers/traceroute.py","jc/utils.py"]}},{"commit":"224d3d65ada4216e28e142d411b0c2c3358517b3","message":"Add exception class name to error message","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"a349fb0bdabaf74503831f22c4efbd02254f809d","message":"change _meta to _jc_meta","stats":{"files_changed":3,"insertions":10,"deletions":8,"files":["README.md","docs/utils.md","man/jc.1"]}},{"commit":"e7ddcfb83fb295034db44ade407476ff3a962cd8","message":"change _meta to _jc_meta","stats":{"files_changed":5,"insertions":14,"deletions":12,"files":["jc/utils.py","templates/manpage_template","templates/readme_template",".../centos-7.7/ping-ip-O-streaming-ignore-exceptions.json","tests/test_ping_s.py"]}},{"commit":"abd20dfe3662f65373ac582c70aa740e53b52f68","message":"formatting","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"]}},{"commit":"dc1fd3ef1be41aee349b159059f1febff76f6caf","message":"fix -qq docs","stats":{"files_changed":4,"insertions":12,"deletions":12,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"]}},{"commit":"98a7686db46fbd3ed98382867976249f307d0015","message":"use -qq to ignore streaming exceptions","stats":{"files_changed":18,"insertions":160,"deletions":152,"files":["README.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","docs/utils.md","jc/cli.py","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","jc/utils.py","man/jc.1","templates/manpage_template","templates/readme_template","... => ping-ip-O-streaming-ignore-exceptions.json}","tests/test_ls_s.py","tests/test_ping_s.py","tests/test_vmstat_s.py"]}},{"commit":"9c6c6c4330fc68115be012de254161f36e3a8328","message":"add next() info","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]}},{"commit":"f9be5651daa891e06ad0acd8980ffc0fe51fd29d","message":"add language hints","stats":{"files_changed":2,"insertions":4,"deletions":6,"files":["README.md","templates/readme_template"]}},{"commit":"df9835a3e62bb2b3b6ec8b55f06a25a00a799d92","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]}},{"commit":"92363be2dd633bdd3c2dd07c72ebd281d2cb4565","message":"fix streaming python module example","stats":{"files_changed":2,"insertions":2,"deletions":4,"files":["README.md","templates/readme_template"]}},{"commit":"31b62030156f9c826fe5c7d127e9dd0ace582dd0","message":"formatting","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","templates/readme_template"]}},{"commit":"18805858d685d456f9a38540bbaedbaa1a411546","message":"formatting","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["man/jc.1","templates/manpage_template"]}},{"commit":"e676f0e20fb6e96a536c4d182b0d287cdc1ad0f7","message":"add streaming parser info for python module use","stats":{"files_changed":2,"insertions":36,"deletions":6,"files":["README.md","templates/readme_template"]}},{"commit":"20652edefaa7705b8ba756bae3944ff362a295a6","message":"update changelog","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["CHANGELOG"]}},{"commit":"98c29d07478093e78f53ec633f2dd08cafc3e3ae","message":"add vmstat tests","stats":{"files_changed":8,"insertions":120,"deletions":0,"files":["tests/fixtures/centos-7.7/vmstat-a.json","tests/fixtures/centos-7.7/vmstat-at-5-10.json","tests/fixtures/centos-7.7/vmstat-awt.json","tests/fixtures/centos-7.7/vmstat-d.json","tests/fixtures/centos-7.7/vmstat-dt.json","tests/fixtures/centos-7.7/vmstat-w.json","tests/fixtures/centos-7.7/vmstat.json","tests/test_vmstat.py"]}},{"commit":"41a6311f6b3ed2cc94919d042aed51c46cdf3e2f","message":"add streaming parser tests","stats":{"files_changed":9,"insertions":132,"deletions":1,"files":["tests/fixtures/centos-7.7/vmstat-a-streaming.json",".../centos-7.7/vmstat-at-5-10-streaming.json",".../fixtures/centos-7.7/vmstat-awt-streaming.json","tests/fixtures/centos-7.7/vmstat-d-streaming.json","tests/fixtures/centos-7.7/vmstat-dt-streaming.json","tests/fixtures/centos-7.7/vmstat-streaming.json","tests/fixtures/centos-7.7/vmstat-w-streaming.json","tests/test_ping_s.py","tests/test_vmstat_s.py"]}},{"commit":"978760ec57e04e3ec347c8764bfad015b6dddbff","message":"add exception class name to error string","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]}},{"commit":"d410425537817964ceb7b61e0fdff6c03fdf8766","message":"replace single quotes with double quotes in doc","stats":{"files_changed":4,"insertions":136,"deletions":136,"files":["docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"]}},{"commit":"6b7430329cbe1bfb95b47bcfe031906641c127e1","message":"doc update","stats":{"files_changed":5,"insertions":269,"deletions":1,"files":["README.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat_s.py","man/jc.1"]}},{"commit":"40fe0d4a6081a1233bf5c3eb51a01da1f12bc4dc","message":"working parser","stats":{"files_changed":1,"insertions":141,"deletions":22,"files":["jc/parsers/vmstat_s.py"]}},{"commit":"365c5354a0349e470558d15243217a064e73da38","message":"remove debug print statement","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/vmstat.py"]}},{"commit":"b246a05cbb4c1c564f81b3e72cecb62edbe6ced6","message":"fix vmstat-s name","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"9e5a7a4abb8668d043625951a05eb5733cbbd56f","message":"add vmstat sample output","stats":{"files_changed":7,"insertions":37,"deletions":0,"files":["tests/fixtures/centos-7.7/vmstat-a.out","tests/fixtures/centos-7.7/vmstat-at-5-10.out","tests/fixtures/centos-7.7/vmstat-awt.out","tests/fixtures/centos-7.7/vmstat-d.out","tests/fixtures/centos-7.7/vmstat-dt.out","tests/fixtures/centos-7.7/vmstat-w.out","tests/fixtures/centos-7.7/vmstat.out"]}},{"commit":"f266acbccafc040c375723147b8e5d7fddb1e697","message":"add processing logic","stats":{"files_changed":1,"insertions":106,"deletions":14,"files":["jc/parsers/vmstat.py"]}},{"commit":"4e3b471f1801f1b9006b18cae2a3d816f361262e","message":"add format for vmstat","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/utils.py"]}},{"commit":"5e28736c2e0c951e71e6531e03a9619279d95d3a","message":"add vmstat and vmstat_s","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"]}},{"commit":"a91913a3b517ea0dbb25d6e4cc92850eb2fde5ab","message":"streaming parser template","stats":{"files_changed":1,"insertions":106,"deletions":0,"files":["jc/parsers/vmstat_s.py"]}},{"commit":"90c64f0ae0d97d025adee40970d89baca79ee4ac","message":"initial working parser","stats":{"files_changed":1,"insertions":182,"deletions":0,"files":["jc/parsers/vmstat.py"]}},{"commit":"7cc642ed1a476abda709ac9b79900a1de12e1ef7","message":"formatting","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/foo_s.py"]}},{"commit":"809f64d35a92bb3d7380fa9d78ac1421a10b81fc","message":"Merge pull request #169 from kellyjonbrazil/streaming"},{"commit":"a6f859a55edae50fcc185948736218404cfaa929","message":"add final ping_s tests","stats":{"files_changed":18,"insertions":168,"deletions":153,"files":[".../osx-10.14.6/ping-hostname-p-streaming.json",".../osx-10.14.6/ping-hostname-s-streaming.json",".../osx-10.14.6/ping-hostname-streaming.json",".../osx-10.14.6/ping-ip-dup-streaming.json",".../fixtures/osx-10.14.6/ping-ip-p-streaming.json",".../fixtures/osx-10.14.6/ping-ip-s-streaming.json","tests/fixtures/osx-10.14.6/ping-ip-streaming.json",".../osx-10.14.6/ping-ip-unreachable-streaming.json",".../osx-10.14.6/ping6-hostname-p-streaming.json",".../osx-10.14.6/ping6-hostname-s-streaming.json",".../osx-10.14.6/ping6-hostname-streaming.json",".../osx-10.14.6/ping6-ip-dup-streaming.json",".../fixtures/osx-10.14.6/ping6-ip-p-streaming.json",".../fixtures/osx-10.14.6/ping6-ip-s-streaming.json","tests/fixtures/osx-10.14.6/ping6-ip-streaming.json","tests/fixtures/pi/ping-ip-O-D-streaming.json","tests/fixtures/pi/ping-ip-O-streaming.json","tests/test_ping_s.py"]}},{"commit":"39ef88078f43708e470d3c1b2fd95e76b5cbeb08","message":"add destination_ip to error lines","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/ping_s.py"]}},{"commit":"aeea5e8d2eab2fef3e14637f512aed7b117c4a3f","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/test_ls_s.py"]}},{"commit":"1a0700bff4bdebbd9f1f92f2fc7a56c4d5ed6925","message":"add more ping-s tests","stats":{"files_changed":31,"insertions":240,"deletions":213,"files":[".../fedora32/ping-hostname-O-D-p-s-streaming.json",".../fedora32/ping-hostname-O-p-streaming.json",".../fedora32/ping-hostname-O-streaming.json","tests/fixtures/fedora32/ping-ip-O-D-streaming.json","tests/fixtures/fedora32/ping-ip-O-streaming.json",".../fedora32/ping6-hostname-O-D-p-s-streaming.json",".../fedora32/ping6-hostname-O-p-streaming.json",".../fedora32/ping6-ip-O-D-p-streaming.json",".../fixtures/fedora32/ping6-ip-O-p-streaming.json",".../freebsd12/ping-hostname-p-streaming.json",".../freebsd12/ping-hostname-s-streaming.json",".../freebsd12/ping-hostname-streaming.json","tests/fixtures/freebsd12/ping-ip-p-streaming.json","tests/fixtures/freebsd12/ping-ip-s-streaming.json","tests/fixtures/freebsd12/ping-ip-streaming.json",".../freebsd12/ping6-hostname-p-streaming.json",".../freebsd12/ping6-hostname-s-streaming.json",".../freebsd12/ping6-hostname-streaming.json","tests/fixtures/freebsd12/ping6-ip-p-streaming.json","tests/fixtures/freebsd12/ping6-ip-s-streaming.json","tests/fixtures/freebsd12/ping6-ip-streaming.json",".../ping-hostname-O-D-p-s-streaming.json",".../ubuntu-18.04/ping-hostname-O-p-streaming.json",".../ubuntu-18.04/ping-hostname-O-streaming.json",".../ubuntu-18.04/ping-ip-O-D-streaming.json",".../fixtures/ubuntu-18.04/ping-ip-O-streaming.json",".../ping6-hostname-O-D-p-s-streaming.json",".../ubuntu-18.04/ping6-hostname-O-p-streaming.json",".../ubuntu-18.04/ping6-ip-O-D-p-streaming.json",".../ubuntu-18.04/ping6-ip-O-p-streaming.json","tests/test_ping_s.py"]}},{"commit":"b5fa6d068f240671eb948b055cd4f7bf127e0ec0","message":"update docs","stats":{"files_changed":5,"insertions":25,"deletions":5,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"]}},{"commit":"1baec0b420feff068f2dc1e35499f78aa7d0a6e0","message":"add some streaming tests","stats":{"files_changed":13,"insertions":815,"deletions":0,"files":[".../ping-hostname-O-D-p-s-streaming.json",".../centos-7.7/ping-hostname-O-p-streaming.json",".../centos-7.7/ping-hostname-O-streaming.json",".../fixtures/centos-7.7/ping-ip-O-D-streaming.json",".../centos-7.7/ping-ip-O-streaming-quiet.json","tests/fixtures/centos-7.7/ping-ip-O-streaming.json",".../fixtures/centos-7.7/ping-ip-dup-streaming.json",".../ping6-hostname-O-D-p-s-streaming.json",".../centos-7.7/ping6-hostname-O-p-streaming.json",".../centos-7.7/ping6-ip-O-D-p-streaming.json",".../centos-7.7/ping6-ip-O-p-streaming.json",".../centos-7.7/ping6-ip-dup-streaming.json","tests/test_ping_s.py"]}},{"commit":"4f2a4e1dee9d722d2aa5ddf2c082a358c88cf640","message":"skip blank lines and warning lines","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/parsers/ping_s.py"]}},{"commit":"758d617668d1f9d0f27b52d46749e5b67a570cf1","message":"doc update","stats":{"files_changed":5,"insertions":5,"deletions":5,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"]}},{"commit":"55322c37f57a9c8e28641a61928fad2329f5e50d","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/foo_s.py"]}},{"commit":"d19ea5552bb3a379f7f92bcb58794c557ecc6647","message":"add streaming ls parser tests","stats":{"files_changed":12,"insertions":193,"deletions":0,"files":["tests/fixtures/centos-7.7/ls-al-streaming.json","tests/fixtures/centos-7.7/ls-alR-streaming.json","tests/fixtures/centos-7.7/ls-alh-streaming.json","tests/fixtures/osx-10.14.6/ls-al-streaming.json","tests/fixtures/osx-10.14.6/ls-alR-streaming.json","tests/fixtures/osx-10.14.6/ls-alh-streaming.json",".../osx-10.14.6/ls-lR-empty-folder-streaming.json","tests/fixtures/ubuntu-18.04/ls-al-streaming.json","tests/fixtures/ubuntu-18.04/ls-alR-streaming.json","tests/fixtures/ubuntu-18.04/ls-alh-streaming.json",".../fixtures/ubuntu-18.04/ls-l-iso-streaming.json","tests/test_ls_s.py"]}},{"commit":"130c3527c1083d399deef00ee8fcaa75f609b485","message":"update docstrings","stats":{"files_changed":6,"insertions":25,"deletions":25,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","man/jc.1"]}},{"commit":"3f221f471416766a860bd19850afda4899ee5eb3","message":"doc update","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"]}},{"commit":"d64c4cb39056bb869fc117477612ae5ae2ef3d85","message":"add streaming parsers section","stats":{"files_changed":2,"insertions":141,"deletions":1,"files":["man/jc.1","templates/manpage_template"]}},{"commit":"448c56aa46b72438e4a4c83b10a7eb889e3f50e7","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]}},{"commit":"9fbea15b6d031baa8c90f2602e39de7cf51408e2","message":"rename state class to _state","stats":{"files_changed":2,"insertions":2,"deletions":8,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"]}},{"commit":"932060314b3c1ce518b9f57532e124285cb3ad0a","message":"doc update","stats":{"files_changed":2,"insertions":41,"deletions":11,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"]}},{"commit":"5e68ae50097cb339f3390449db7e3f189a716320","message":"import exception. tighten up os detection","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/parsers/ping_s.py"]}},{"commit":"d03541beae44a4571a7d0481af01a5c19506207f","message":"add docstring examples. add exception raise when OS cannot be detected.","stats":{"files_changed":1,"insertions":12,"deletions":5,"files":["jc/parsers/ping_s.py"]}},{"commit":"516fa571d90a0c93134c953c15ce84dd31b96b4b","message":"remove unused variable. use elif instead of if for linux vs. bsd detection","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/ping_s.py"]}},{"commit":"a19c12096a8e8de02a6ff761cc9c13ec249d416e","message":"initial working parser for both linux and bsd","stats":{"files_changed":1,"insertions":373,"deletions":143,"files":["jc/parsers/ping_s.py"]}},{"commit":"758f27945de4f0897405eba02c7908d815ce6e9b","message":"change data_bytes and bytes to sent_bytes and response_bytes","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/ping_s.py"]}},{"commit":"8b1e8d58df22f8542ccaf7bf3e1eabe6132e7a42","message":"remove unneeded line","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping_s.py"]}},{"commit":"b967489d085319facee077958deaa04956a98343","message":"complete linux coverage including summary","stats":{"files_changed":1,"insertions":81,"deletions":40,"files":["jc/parsers/ping_s.py"]}},{"commit":"870d0218be2641e3eddb114c23d54deb23155f25","message":"add unbuffer note","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"]}},{"commit":"84020bc2af294cb065105f1399453aefc98eb180","message":"change error_msg to error in -q result docs","stats":{"files_changed":7,"insertions":12,"deletions":6,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/utils.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","man/jc.1"]}},{"commit":"4efe5344e069ed921f208bcbbd097705be2d3b4f","message":"add links to HN and Reddit","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"]}},{"commit":"9182c545134b3d56d27d2c1d9bda678532bdc3fb","message":"formatting","stats":{"files_changed":1,"insertions":3,"deletions":8,"files":["jc/utils.py"]}},{"commit":"28f0ab0b02d21fc060f1ac7181f85552798dc4bd","message":"update streaming error messages","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/ls_s.py","jc/utils.py"]}},{"commit":"90d1a30696b2cbfbb06a55cc0cf920cf8ecd89aa","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]}},{"commit":"130b3738cc57fe261e8ef881a57b7836acd7e7e9","message":"shorten successful yield to a single line","stats":{"files_changed":4,"insertions":21,"deletions":26,"files":["jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/utils.py"]}},{"commit":"92c7357615af7689db273aa78d666b35a2ec7a70","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/foo_s.py"]}},{"commit":"c80f8633349c00ea461b8927f9949fe19b2f46ee","message":"simplify return condition formatting","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/foo.py"]}},{"commit":"4642c20179d4643e0cf1970b264da7d9d91628de","message":"formatting","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"]}},{"commit":"5288eb22aadbbc1005b16428b94d2b07e9a75e3c","message":"add info about streaming parser performance characteristics","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]}},{"commit":"df8387a1a99df69eac5005662aaf56d506fa0efd","message":"streaming parsers cannot be used with the magic syntax","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"]}},{"commit":"cc38c27f44d3f088609b878304cab8eed75fc8f2","message":"formatting","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["README.md","templates/readme_template"]}},{"commit":"64f5357d69fe88b45d710d38948969699e1ca12f","message":"add streaming parsers section","stats":{"files_changed":2,"insertions":84,"deletions":0,"files":["README.md","templates/readme_template"]}},{"commit":"51debb5649bef431e51e543f1c9270e2810aa58f","message":"add vmstat parser and change from linebuffer to unbuffer","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"]}},{"commit":"b48d05a4313b27cf5e69d3e4259542e0b131b60f","message":"change from line buffer output to unbuffer output","stats":{"files_changed":5,"insertions":15,"deletions":15,"files":["README.md","jc/cli.py","man/jc.1","templates/manpage_template","templates/readme_template"]}},{"commit":"4e7f6b337db61b8a106cf958f6b874157909c87a","message":"simplify yield statements","stats":{"files_changed":3,"insertions":17,"deletions":25,"files":["jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"]}},{"commit":"a509d99cafd80862721595ee59ccc4a471b5e5a3","message":"add stream_success dictionary","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/utils.py"]}},{"commit":"481e45fb644ac88fa77ef35643b793f179fe6859","message":"limit parse error msg lenght","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"]}},{"commit":"e9038e1720e1c0e520e2f29b718aa8505cbbb9a2","message":"initial streaming ping docs","stats":{"files_changed":1,"insertions":66,"deletions":0,"files":["docs/parsers/ping_s.md"]}},{"commit":"8fd9e582bf29275c4daaa3be88ea8d196411b34a","message":"doc update","stats":{"files_changed":1,"insertions":15,"deletions":17,"files":["docs/parsers/ls_s.md"]}},{"commit":"c1fd6f48a5a3501499c9fca7239673b8555cc7c6","message":"add stream_error docs","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["docs/utils.md"]}},{"commit":"af615c7f4b3f589ffc1b37cf9834062a04c013cb","message":"add line buffer output option","stats":{"files_changed":6,"insertions":26,"deletions":5,"files":["CHANGELOG","README.md","jc/cli.py","man/jc.1","templates/manpage_template","templates/readme_template"]}},{"commit":"bf0bc32d7ae6cabe07906207f4f08c2e81802c80","message":"flush streamed text for better piping experience","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]}},{"commit":"2d6b53e012181a4c33bab441880c47c0fc0b0601","message":"add pattern support. move unparsable line detection to standard streaming parser style","stats":{"files_changed":1,"insertions":36,"deletions":42,"files":["jc/parsers/ping_s.py"]}},{"commit":"51271fea0fbd7bd63863ba05c399b4675dc5b4bf","message":"somewhat working parser","stats":{"files_changed":1,"insertions":139,"deletions":149,"files":["jc/parsers/ping_s.py"]}},{"commit":"2deb473e0bc96c0e39ec4074a6df4b941ba2172b","message":"initial streaming ping parser","stats":{"files_changed":1,"insertions":262,"deletions":0,"files":["jc/parsers/ping_s.py"]}},{"commit":"23eeb33b3da43a679c3bf3f3643cfa552a1164e1","message":"modify stream_error message","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]}},{"commit":"f50dfaef45632241f8f6972fa19bb17c54a457ff","message":"use stream_error function for exceptions. raise on non -l ls output","stats":{"files_changed":1,"insertions":6,"deletions":13,"files":["jc/parsers/ls_s.py"]}},{"commit":"55bb71e9d466cc9ee5f7fd8eca1101c941cbcb35","message":"add streaming ping parser. update streaming exception message","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]}},{"commit":"dab9357d286962b70224d6fafbf90a4c0cbc9980","message":"use stream_error function for exceptions","stats":{"files_changed":1,"insertions":1,"deletions":12,"files":["jc/parsers/foo_s.py"]}},{"commit":"27eb427245b5126335cef0adb5e57522272474b5","message":"add stream_error function","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/utils.py"]}},{"commit":"260f3685d944ded84396ae3395773d6898803fb6","message":"add streaming parser template","stats":{"files_changed":1,"insertions":112,"deletions":0,"files":["jc/parsers/foo_s.py"]}},{"commit":"76e78fc0c34b88a90fef876eebef92bd71cd772c","message":"doc updates","stats":{"files_changed":1,"insertions":9,"deletions":11,"files":["jc/parsers/ls_s.py"]}},{"commit":"1ac944fa028a400ae7b39b811fcf368c9bf5e259","message":"add -q option info to docstring","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/ls_s.py"]}},{"commit":"986bc9b042a940f8dd34f0541bcb9b5840df579e","message":"cleanup unused code","stats":{"files_changed":1,"insertions":9,"deletions":43,"files":["jc/parsers/ls_s.py"]}},{"commit":"5a7942069b1f3ef3b45992b482bfb6bb973f7e8e","message":"add support for parent field","stats":{"files_changed":1,"insertions":28,"deletions":28,"files":["jc/parsers/ls_s.py"]}},{"commit":"f6c6fc13ac4c779667807df12444a41ef28a8011","message":"enhance error msg when streaming parser is used","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/cli.py"]}},{"commit":"1d8cfae89f24192b6fab087f59c9b8988ef363dc","message":"only print _meta object if -q or quiet flag is used. Also, add message to the end of exceptions informing of the -q option to ignore errors","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/parsers/ls_s.py"]}},{"commit":"787df51239ffa8260b48d6a3a58e6ff07d5e0f64","message":"remove `\\n` from end of line in exception message","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"]}},{"commit":"5e7f302a9c45343c36e81944db38a435e6c8a20c","message":"Raise exceptions unless the -q or quiet flag are used","stats":{"files_changed":1,"insertions":12,"deletions":10,"files":["jc/parsers/ls_s.py"]}},{"commit":"3d10fd40b56264836874da19aa72351e6d5cfbf7","message":"remove print flush for better performance. Roll json.JSONDecodeError into the parse try/except block","stats":{"files_changed":1,"insertions":14,"deletions":13,"files":["jc/cli.py"]}},{"commit":"57e3bf239cc76d3b0ee0eddc618171eb90c28dec","message":"formatting for docs","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"]}},{"commit":"ccb09861e82044e17ec51277b3c8875e5ba9d87d","message":"formatting for docs","stats":{"files_changed":2,"insertions":20,"deletions":20,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"]}},{"commit":"94551d75dd926c7f558e5cab47ba9483a20c6b3c","message":"doc update","stats":{"files_changed":10,"insertions":116,"deletions":49,"files":["CHANGELOG","README.md","docs/parsers/ls_s.md","docs/readme.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz","mangen.py","setup.py"]}},{"commit":"6e21218425359210591827e936b8d48d9644df92","message":"working prototype of streaming ls parser","stats":{"files_changed":2,"insertions":234,"deletions":3,"files":["jc/cli.py","jc/parsers/ls_s.py"]}},{"commit":"ff0fda48fc48760a7293528155d222c6456f84c4","message":"Merge pull request #168 from kellyjonbrazil/master"},{"commit":"528aac7ad87feae2093aba563c83a29ebf75e5f9","message":"use subprocess in python example","stats":{"files_changed":2,"insertions":8,"deletions":38,"files":["README.md","templates/readme_template"]}},{"commit":"ab482e521d4cecfffa5393805b1d7de4389db49a","message":"Merge pull request #163 from kellyjonbrazil/dev"},{"commit":"e08b61fa81b1bd2304d04db5cdc8b809fe9c6032","message":"add schema note to sfdisk","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]}},{"commit":"ce61bd1d2b4323d9c2d0454c4f646521913ae20d","message":"add tests for -F fixes","stats":{"files_changed":7,"insertions":73,"deletions":7,"files":["tests/fixtures/debian10/sfdisk-F2.json","tests/fixtures/debian10/sfdisk-F2.out","tests/fixtures/debian10/sfdisk-l2.json","tests/fixtures/debian10/sfdisk-l2.out","tests/fixtures/debian10/sfdisk-l3.json","tests/fixtures/debian10/sfdisk-l3.out","tests/test_sfdisk.py"]}},{"commit":"7b708f75182bf3ed33478a7de62e9c2496f0b994","message":"Don't convert 'size' to int, except for legacy -d support. Change partition table detection logic to fix -F output","stats":{"files_changed":3,"insertions":11,"deletions":5,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-l.json","tests/fixtures/debian10/sfdisk-l.json"]}},{"commit":"89ca50c7fc1bf64f34c915e65031d0bc520e6466","message":"add -l to sfdisk raw example","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"]}},{"commit":"fb54899dcc2160450448e0d6111557cebdeb0d4d","message":"doc update","stats":{"files_changed":4,"insertions":38,"deletions":23,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]}},{"commit":"0a625ad7ddd9c804052d98930165cd22049546bd","message":"remove unneeded lines","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/sfdisk.py"]}},{"commit":"d32e45efbe0d71a9a132abfb2855f1f4ccee9916","message":"add sfdisk tests","stats":{"files_changed":6,"insertions":69,"deletions":1,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-F.json","tests/fixtures/centos-8/sfdisk-l.json","tests/fixtures/debian10/sfdisk-F.json","tests/fixtures/debian10/sfdisk-l.json","tests/test_sfdisk.py"]}},{"commit":"c77696bc789cdfd286a7479c3d9f67d23149d0ce","message":"version bump","stats":{"files_changed":3,"insertions":6,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"]}},{"commit":"736fde9e784587cb2ef344bbf31d876eafea7741","message":"add support for newer versions of sfdisk","stats":{"files_changed":5,"insertions":147,"deletions":28,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-F.out","tests/fixtures/centos-8/sfdisk-l.out","tests/fixtures/debian10/sfdisk-F.out","tests/fixtures/debian10/sfdisk-l.out"]}},{"commit":"9c1ad92fed9a4b3a0da66d6b71deec8d608edfa9","message":"fix examples","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["CONTRIBUTING.md"]}},{"commit":"1a9fd2139d156a51bf2d25db951e47e96da77f7d","message":"add \"For new parsers:\"","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]}},{"commit":"7661e7f27a4e5c379ea37c7f95496aca2c1e2910","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]}},{"commit":"f857b7fbf7862ddd7eb5ab20470f5dbaacc62119","message":"add custom parser folder info","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]}},{"commit":"d94d12dbc5fb3e3712b2f1aea949013cb8213e28","message":"add foo parser template info","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["CONTRIBUTING.md"]}},{"commit":"700916276ae8b0a106410e3dd2ea3e00248ee37a","message":"Merge pull request #159 from kellyjonbrazil/master"},{"commit":"834e52369ceb479776ddc8fc2931790af53b9c18","message":"update man page","stats":{"files_changed":3,"insertions":1,"deletions":5,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]}},{"commit":"1ce53365de61421c8bd43e04590038083894153b","message":"Merge pull request #156 from kellyjonbrazil/dev"},{"commit":"473f70668f04a38765559c5dbf0468af24d625c9","message":"Merge branch 'master' into dev"},{"commit":"0dbd2702f6ab2640b2ccdea92411ac0789673e66","message":"reformat doc_text for nicer indentation","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/cli.py"]}},{"commit":"01e3764a9b6ba902aea522bf6b7005fd37b3acbb","message":"fix join syntax","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"ff9c81722ae7221364e9bcb83d98b16b4263334e","message":"try/except for shlex.join since only available in python 3.8","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"]}},{"commit":"166aef7a022ed29862ab2e0702d53c591bb5cc77","message":"version bump","stats":{"files_changed":6,"insertions":4,"deletions":4,"files":["docs/parsers/stat.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz","setup.py"]}},{"commit":"78caf7646baf5d35602fd76771443cd64bd783af","message":"add stat fix","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]}},{"commit":"1f99d40cecc5d88a246f3558f71db376ebd885c6","message":"fix filename with spaces for osx/bsd","stats":{"files_changed":4,"insertions":17,"deletions":2,"files":["jc/parsers/stat.py","tests/fixtures/osx-10.14.6/stat-filename-with-spaces.json","tests/fixtures/osx-10.14.6/stat-filename-with-spaces.out","tests/test_stat.py"]}},{"commit":"4c2912d3d5ec1fd2d5d891f2b3c58a33dd8572be","message":"use shlex.join to quote run_command_str for better error messages","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]}},{"commit":"45e6e06be581f787f707e3f5645129c713478d16","message":"add glob and process substitution fixes","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["CHANGELOG"]}},{"commit":"fdbe3e05f323c95687a1137983f9623911008ca2","message":"fix issue with globs not including filenames with spaces with magic syntax (introduced during switch to use subprocess to grab process exit code). No longer need to shlex quote arguments.","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["jc/cli.py"]}},{"commit":"7cc168f6409af13fda815d0d2a6db25b7c9ba367","message":"add comment","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"ff2d609c9b5f5f57f3331e5593e8fe87c01654dd","message":"add close_fds=False in subprocess.Popen() to allow process substitution in magic syntax. Also check for too many open files exception","stats":{"files_changed":1,"insertions":12,"deletions":1,"files":["jc/cli.py"]}},{"commit":"2689697b4c21758903e5f74ec069e89be585aba2","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]}},{"commit":"f90a0ea8ab15629b7786e4431e9c968c3a896ee0","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["templates/readme_template"]}},{"commit":"caabe60f849fb2422e47b8f10e0ff35beb706dcd","message":"fix kv example","stats":{"files_changed":5,"insertions":3,"deletions":3,"files":["docs/parsers/kv.md","jc/man/jc.1.gz","jc/parsers/kv.py","man/jc.1","man/jc.1.gz"]}},{"commit":"2bef4ed6038201f54339e750a833260dc1998591","message":"package updates","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","README.md"]}},{"commit":"ee57be533b12593a33a2abbb2892697f0bd40c65","message":"fix sfdisk example","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"]}},{"commit":"c5b7aaca25d6b66d3e44256c2c6760a4cf2956ec","message":"Merge pull request #149 from kellyjonbrazil/dev"},{"commit":"7a1be905bb8654558afb5979b0bd78d4a8488874","message":"version bump","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]}},{"commit":"5798495a11afa2f72ce6f79be785d46240fcbeb4","message":"add 1.15.7 to 1.16.0 changes","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["CHANGELOG"]}},{"commit":"46171e220252ec92d18e744d2a57c1d6a6dc19f6","message":"add sfdisk example","stats":{"files_changed":1,"insertions":69,"deletions":0,"files":["EXAMPLES.md"]}},{"commit":"dd5c924ff505dcc2a9c851d2425677bdf16ea462","message":"add man page location change","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]}},{"commit":"30c4ab297658228a07ef9b1585516719af3febb0","message":"new man page location","stats":{"files_changed":3,"insertions":515,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]}},{"commit":"26ea4d47b33277efb0ddafe8f421791696277c07","message":"version bump and deprecate /man/jc.1.gz and /jc/man/jc.1.gz","stats":{"files_changed":5,"insertions":14,"deletions":3,"files":["CHANGELOG","MANIFEST.in","jc/__init__.py","mangen.py","setup.py"]}},{"commit":"2732cd175c1e878210707162de3928f33fb2f201","message":"include CHANGELOG in source distribution","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["CHANGELOG","MANIFEST.in"]}},{"commit":"3e54b597be88b0e342e4361b7f2c1af447f9482b","message":"add timezone change for unit tests","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]}},{"commit":"f10ebea20962084833e5c1ebd9bc90a251bf3ff4","message":"update tests to set correct timezone on POSIX systems","stats":{"files_changed":11,"insertions":78,"deletions":0,"files":["tests/test_date.py","tests/test_dig.py","tests/test_dir.py","tests/test_last.py","tests/test_ls.py","tests/test_rpm_qai.py","tests/test_stat.py","tests/test_systeminfo.py","tests/test_upower.py","tests/test_utils.py","tests/test_who.py"]}},{"commit":"2c6f3993cb4c5e559dbac7a479ec889aa2cba752","message":"remove extra comma","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/route.md","jc/man/jc.1.gz","jc/parsers/route.py","man/jc.1.gz"]}},{"commit":"708a696920b52c2614edcdba264912527b2dfbef","message":"remove extra lines","stats":{"files_changed":3,"insertions":0,"deletions":2,"files":["docs/parsers/route.md","jc/man/jc.1.gz","man/jc.1.gz"]}},{"commit":"20bbb5d331575c8fc33ba63643882a62650c97b8","message":"remove extra lines","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/route.py"]}},{"commit":"223e785b547d9376174efa15321d60a533847c57","message":"rename variable","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/sfdisk.py"]}},{"commit":"3d78692c59980e4d70361d3a9f74bacc3f21376e","message":"add sfdisk tests","stats":{"files_changed":11,"insertions":150,"deletions":1,"files":["tests/fixtures/centos-7.7/sfdisk-d-multi.json","tests/fixtures/centos-7.7/sfdisk-d-multi.out","tests/fixtures/centos-7.7/sfdisk-d.json","tests/fixtures/centos-7.7/sfdisk-d.out","tests/fixtures/centos-7.7/sfdisk-l-multi.json","tests/fixtures/centos-7.7/sfdisk-l-multi.out","tests/fixtures/centos-7.7/sfdisk-l.json","tests/fixtures/centos-7.7/sfdisk-luB.json","tests/fixtures/centos-7.7/sfdisk-luM.json","tests/fixtures/centos-7.7/sfdisk-luS.json","tests/test_sfdisk.py"]}},{"commit":"5321a15dcf13cf14efe578d0f66b651078c3d8a1","message":"update examples","stats":{"files_changed":4,"insertions":8,"deletions":8,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"]}},{"commit":"a452f8252a593f7914ebece53af9d73f4fd11a19","message":"fix integer conversion","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"]}},{"commit":"49267f09ac01fead3b20b2d481bb5e0d07af1439","message":"change to root prompt in examples","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/sfdisk.py"]}},{"commit":"db47f35783e46a8299533c22146d851509f6ceb2","message":"add working sfdisk parser","stats":{"files_changed":15,"insertions":610,"deletions":3,"files":["CHANGELOG","README.md","docs/parsers/sfdisk.md","jc/__init__.py","jc/cli.py","jc/man/jc.1.gz","jc/parsers/sfdisk.py","jc/utils.py","man/jc.1.gz","setup.py","tests/fixtures/centos-7.7/sfdisk-d.out","tests/fixtures/centos-7.7/sfdisk-l.out","tests/fixtures/centos-7.7/sfdisk-luB.out","tests/fixtures/centos-7.7/sfdisk-luM.out","tests/fixtures/centos-7.7/sfdisk-luS.out"]}},{"commit":"d48abf312c1f55ab31aa11da2b6cf6bc8166733b","message":"Merge pull request #147 from kellyjonbrazil/master"},{"commit":"3b22ce41105387e7f46a410460cf04759feef197","message":"fix local plugin parser issue where parser has .py in the name but it is not at the end","stats":{"files_changed":6,"insertions":6,"deletions":3,"files":["CHANGELOG","jc/__init__.py","jc/cli.py","jc/man/jc.1.gz","man/jc.1.gz","setup.py"]}},{"commit":"c521ca5bc9e2b035cfef6ff65f6b303b3ec44296","message":"change possible to available","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]}},{"commit":"3ddc1c665990e1e732314330db214a81ab810fe9","message":"add jello","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]}},{"commit":"a8e19402b7d1f9f06bc40b81a15dec401154180c","message":"remove temporary fix","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["ADVANCED_USAGE.md"]}},{"commit":"0927902b30654274743ab9092e90e768709a9937","message":"temp fix for wrong url","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["ADVANCED_USAGE.md"]}},{"commit":"572548b42fb6ed9d32a392503d44fac1a8f146d3","message":"Merge pull request #141 from kellyjonbrazil/dev"},{"commit":"ff7ab0a1ed7f468d0e84eb3bf0636f53913c490d","message":"doc updates for v1.15.5","stats":{"files_changed":3,"insertions":0,"deletions":1,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"]}},{"commit":"5db71b05cb28691bbbaa5d668bcd4a4ac7e68b85","message":"add en_US.UTF-8 to LANG info","stats":{"files_changed":5,"insertions":3,"deletions":3,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template","templates/readme_template"]}},{"commit":"f9b952885aa7f2b450786a08c3879d9e358886da","message":"add python 3.9.5 packaged info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]}},{"commit":"e7983bc0b29abaca2147038dfad018cba1e67cdf","message":"version bump","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xml.md","docs/parsers/yaml.md"]}},{"commit":"473a6431425fc24a4cc83939ff592e0d49535b9c","message":"add windows msi info","stats":{"files_changed":4,"insertions":10,"deletions":3,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"]}},{"commit":"14f3d442cb86250b8f2cdfd7977938634b8abd6d","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]}},{"commit":"d6f4ed9ab55fe9b7c2766fb437172af62a1d5c87","message":"add long-form UTC test","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/test_utils.py"]}},{"commit":"1b8d654444ff8c8b8171c7ac63e2736447a36c09","message":"add error message info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]}},{"commit":"6002af0dca334c0affaff3e9acdca416238c7d82","message":"add more error message detail to the user for ParseError and LibraryNotFound exceptions","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/cli.py"]}},{"commit":"0924d822a30c8806f65574c010561cd6f7c8e181","message":"add windows example","stats":{"files_changed":1,"insertions":8,"deletions":1,"files":["templates/readme_template"]}},{"commit":"72a37b928924c3edde3a4edb952f98c94aa05f0b","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"]}},{"commit":"5eef7bd769f8ffb03ba396833d1b33484041a99f","message":"use LibraryNotInstalled exception instead of exiting via sys.exit","stats":{"files_changed":2,"insertions":16,"deletions":16,"files":["jc/parsers/xml.py","jc/parsers/yaml.py"]}},{"commit":"c6893e1bd5283d982a7ecd6f84bdfdd0054ce7a7","message":"add LibraryNotInstalled exception","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/exceptions.py"]}},{"commit":"039f6612e491c6f821c001252e122e9b0a781104","message":"Merge pull request #139 from kellyjonbrazil/master"},{"commit":"95aec9c6f9aa8fb4d0dae227410a1346d550f47f","message":"add info about Magic syntax not supporting shell builtins","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["templates/manpage_template"]}},{"commit":"4e9652a8ec2482a64dc029b0ce0e1047a3e49867","message":"spelling","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]}},{"commit":"773b7f4b1f23e04c90e602aab05bc1a7e5aae37b","message":"add space before exit code table","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","templates/readme_template"]}},{"commit":"d17ffde9cdc35392ae25d8e9de5328e46067df2a","message":"Merge pull request #138 from kellyjonbrazil/dev"},{"commit":"9c57c09c00e64a9031391b9b70083ad6ecf0bc0b","message":"doc update for release","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]}},{"commit":"4d730a9de5a0d7c064a9a59e3add86e58d9ec492","message":"add UTC fix","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]}},{"commit":"fc57bcfce24af23f077d6a73f1db4591d8f99c13","message":"fix for when UTC is referenced as \"Coordinated Universal Time\"","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"]}},{"commit":"fa5571486c3c19bb7e836f043545ea4f2509ed4d","message":"simplify json_out function","stats":{"files_changed":1,"insertions":10,"deletions":10,"files":["jc/cli.py"]}},{"commit":"9996c4fe23564dfb52e3c7dbdbd8bd67edfb1e95","message":"update docs for shell builtins","stats":{"files_changed":7,"insertions":10,"deletions":10,"files":["EXAMPLES.md","docs/parsers/history.md","docs/parsers/jobs.md","jc/man/jc.1.gz","jc/parsers/history.py","jc/parsers/jobs.py","man/jc.1.gz"]}},{"commit":"038d4290248e6bb94762bb51f69e9958f7c1fecb","message":"doc updates","stats":{"files_changed":4,"insertions":4,"deletions":6,"files":["docs/parsers/dig.md","docs/parsers/dir.md","jc/man/jc.1.gz","man/jc.1.gz"]}},{"commit":"9bf6facb0d7d76583802309253e7d13ba5148997","message":"remove magic command capability since dir is a shell builtin","stats":{"files_changed":1,"insertions":3,"deletions":6,"files":["jc/parsers/dir.py"]}},{"commit":"965717886e4ebaa6a4a494f189d9fdd01e33eb21","message":"add exceptions module info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]}},{"commit":"e9bfc3dd29f914fd91e937f06d7f59c0f91b8449","message":"add time format, dig compatibility, windows colors fix","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["CHANGELOG"]}},{"commit":"f46b33eacf070b4dc72c8d8a66aae49abd149e5f","message":"add windows time format","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/utils.py","tests/test_utils.py"]}},{"commit":"f475fe44df2fb2661c5bce4d1e602a4bba7e87c7","message":"add new time format for systeminfo","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"]}},{"commit":"5fdbe2962d84dad89de23f103d97b76b90450206","message":"make dig compatible with all platforms","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dig.py"]}},{"commit":"ab291b9eef6ed5c8ab59b5652f676178941d5ce5","message":"only force enable colors when running on windows","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]}},{"commit":"fd411fd77273cb7cf872c03ed6a258ccdee4d261","message":"attempt to get colors working on windows","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"]}},{"commit":"b1e95a60a2461dc401ffc299ef6338b65ef12691","message":"remove unnecessary comment","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/cli.py"]}},{"commit":"bb1439f0d53e87f636fba05fbd30c3c79fb16002","message":"use ParseError exception from jc.exceptions module","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["jc/parsers/uname.py"]}},{"commit":"ba963d98a0a2b3a0dfca6b211096d802253da5fe","message":"add exceptions module including ParseError","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/exceptions.py"]}},{"commit":"83440ccb55d0db15b112b8b7d7352493ff516112","message":"error message capitalization","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]}},{"commit":"796f61bfa417afdc6ab48fddbb5502cd0659b840","message":"handle case where the user pipes data and uses magic syntax simultaneously","stats":{"files_changed":1,"insertions":10,"deletions":3,"files":["jc/cli.py"]}},{"commit":"070cac4ae12282458a1e1fc8618ebc473d23cacf","message":"remove commented line","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/cli.py"]}},{"commit":"3ed84f9f42e4e883ddaac28ab49d675600b49424","message":"reorganize main function. remove pass condition.","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/cli.py"]}},{"commit":"a205afb6f355edbb4b98200a980b9601ed0f0658","message":"set run_command_str if run_command is set","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]}},{"commit":"a6d983dd8f3871cbc2391c313340167829a575d9","message":"move run_command_str variable","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]}},{"commit":"b6c8d6d01d740827273265dbb0cfbaf7875ac7f3","message":"add exception handling for filenotfound or other subprocess.popen and json.dumps exceptions","stats":{"files_changed":1,"insertions":45,"deletions":17,"files":["jc/cli.py"]}},{"commit":"b5a5d5b133f1c0df8023776e59697b7579f8c18a","message":"set parser_name for magic syntax use","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]}},{"commit":"da528e7814b0cf25a359c3556d0e286e7bf004b8","message":"move separators to a variable","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"]}},{"commit":"4acebf4f621ac564f82e3a97e6810fbb08a9dbc5","message":"move variables","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/cli.py"]}},{"commit":"4d40808d2b70b7543eadcfd2d35c16ebe91f2f9f","message":"update comments","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/cli.py"]}},{"commit":"c543f00bd3c737f73144bb2980d12793042459b4","message":"simplify piped_output function","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["jc/cli.py"]}},{"commit":"947cf41dfab5811c0e76e371231c59a2d6372752","message":"add exit code info","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]}},{"commit":"8d8c58742e5106c3387a627cd1b1323a76cc9623","message":"formatting","stats":{"files_changed":5,"insertions":21,"deletions":15,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template","templates/readme_template"]}},{"commit":"995ecc9bfb0425b0ee9e4250395b0200b46c1e89","message":"add exit codes section","stats":{"files_changed":3,"insertions":15,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template"]}},{"commit":"21a15225ebff645439b12d6249dc3e28d7bc09ed","message":"add exit codes section","stats":{"files_changed":2,"insertions":18,"deletions":0,"files":["README.md","templates/readme_template"]}},{"commit":"48921d4584068fadb0f776ed7e81c21d89172e2e","message":"ensure exit code never exceeds 255","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"]}},{"commit":"342db45edc94ab1c3b3ae70e7cf4ca4076e2c7eb","message":"fix combined exit codes","stats":{"files_changed":1,"insertions":18,"deletions":10,"files":["jc/cli.py"]}},{"commit":"5f88ecf8443bc6e9a7cda5bc60858f37cc09f4f4","message":"add comments to magic_parser return","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/cli.py"]}},{"commit":"a56aebfe7024914d2c602278964b99d1443de335","message":"remove side-effect comment since it is no longer relevant","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/cli.py"]}},{"commit":"422bb744a82472546d62c72ba05eaa1d18d5068a","message":"update man pages","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]}},{"commit":"c3b814a15f571ac84a8ce0719d7fd88acf814caf","message":"move imports to the top","stats":{"files_changed":1,"insertions":3,"deletions":4,"files":["jc/cli.py"]}},{"commit":"e4574047a0ef6fcd4a47142421a1d05795c7925a","message":"update tests for magic_parser function","stats":{"files_changed":1,"insertions":21,"deletions":21,"files":["tests/test_cli.py"]}},{"commit":"0d7d7951f82627d1fb1e20d1398bd7f88c5ce1be","message":"don't reset sys.argv anymore. check for 'valid_command' instead","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/cli.py"]}},{"commit":"da904e4770a20ae85fc67476ae4a529564d0a3ff","message":"remove final \\n from stderr string when printing","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"19b540041add64fe6650c3634ec869421ffbc769","message":"proof of concept for passing command exit codes when using magic syntax. Needs more testing","stats":{"files_changed":1,"insertions":82,"deletions":51,"files":["jc/cli.py"]}},{"commit":"f2ffb93eeaf4c8b5aa93f3e8808bdc044582e8a0","message":"formatting","stats":{"files_changed":1,"insertions":0,"deletions":10,"files":["tests/test_ping.py"]}},{"commit":"c0c0e05642e0f473cde34178d815978fff8fe1ef","message":"add dig `+noall +answer` support","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]}},{"commit":"966978f17e40a338f982628825f30a19d4b84e4c","message":"add more unparsable line ping tests","stats":{"files_changed":5,"insertions":72,"deletions":0,"files":[".../centos-7.7/ping6-ip-O-p-unparsable.json",".../centos-7.7/ping6-ip-O-p-unparsable.out",".../fixtures/osx-10.14.6/ping6-ip-unparsable.json","tests/fixtures/osx-10.14.6/ping6-ip-unparsable.out","tests/test_ping.py"]}},{"commit":"8ab08a5231e082940a62fcde4be218b7ba94be31","message":"doc update","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]}},{"commit":"48e534fa03b92b2583c5c6269c76651f3aa420cb","message":"add +noall +answer test","stats":{"files_changed":3,"insertions":17,"deletions":2,"files":["tests/fixtures/osx-10.14.6/dig-noall-answer.json","tests/fixtures/osx-10.14.6/dig-noall-answer.out","tests/test_dig.py"]}},{"commit":"61851c1bd02aa82d5d82e68595e45630ead13d34","message":"add support for +noall +answer","stats":{"files_changed":2,"insertions":85,"deletions":3,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]}},{"commit":"3c51b2d83d301b4072bbb12fdba4f60b900573da","message":"add tests for unparsable lines on linux","stats":{"files_changed":3,"insertions":40,"deletions":0,"files":[".../centos-7.7/ping-ip-O-unparsedlines.json",".../centos-7.7/ping-ip-O-unparsedlines.out","tests/test_ping.py"]}},{"commit":"ee3a28528e152c61f05bdf71f264fe38274b4190","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"916bcdae3881fc9c9f9a91c8c901a714cff3e1da","message":"Merge pull request #136 from kellyjonbrazil/master"},{"commit":"efb1d3e6b2db920423511a9dcf4c5e5fd9d6af43","message":"add blog title and minor formatting","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"]}},{"commit":"4e6ae66bacc014e49c4a9229d10dcc8e95de436c","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]}},{"commit":"5ee88e7b679bc163a1916d560be6ff29f51699e8","message":"add use cases section","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["README.md"]}},{"commit":"c3b68903cbd898f80438af342195eec7575aafd3","message":"add use cases section","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["templates/readme_template"]}},{"commit":"fe1f1013a74bdf6b4284f11dd59db8ea17e5e5d1","message":"add use cases section","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["templates/readme_template"]}},{"commit":"fb14f5439f00d5eaf08651c552189fd4be7358d4","message":"fix and tests for unknown or unparsable errors","stats":{"files_changed":4,"insertions":52,"deletions":3,"files":["jc/parsers/ping.py",".../osx-10.14.6/ping-ip-unknown-errors.json",".../osx-10.14.6/ping-ip-unknown-errors.out","tests/test_ping.py"]}},{"commit":"5ca0fc364eb22d583bee5633cdd7183c1d70bb6c","message":"add unparsed_line to docs","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/parsers/ping.md"]}},{"commit":"a1fe7037e5267ec4aced719eff3715085eb35bca","message":"add unparsed_line field if line cannot be parsed","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["jc/parsers/ping.py"]}},{"commit":"c2af7d113ed8e8cf9af985c969cf29858a3c26a9","message":"add ping updates","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["CHANGELOG","docs/parsers/ping.md"]}},{"commit":"ff034e401d5c33efbc3c4bc2f0e386d81eaae7fc","message":"use try/except to make parser more resilient against unknown error types","stats":{"files_changed":1,"insertions":59,"deletions":43,"files":["jc/parsers/ping.py"]}},{"commit":"5abe095beb4b668e5f55fe8c9588677547e4c2a7","message":"update ping docs","stats":{"files_changed":1,"insertions":14,"deletions":3,"files":["docs/parsers/ping.md"]}},{"commit":"33de5f01e638953c83bb0960dc3550ca4547849b","message":"version bump","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["jc/__init__.py","setup.py"]}},{"commit":"8ce155d843806be4ad23491b4401e4eda02e2a1c","message":"add support for error replies in v4 ping on osx and bsd","stats":{"files_changed":5,"insertions":86,"deletions":23,"files":["CHANGELOG","jc/parsers/ping.py",".../fixtures/osx-10.14.6/ping-ip-unreachable.json","tests/fixtures/osx-10.14.6/ping-ip-unreachable.out","tests/test_ping.py"]}},{"commit":"b921d5ec9583c8f8e992613ae2eaf62165722054","message":"initial support for error replies in bsd/osx","stats":{"files_changed":1,"insertions":105,"deletions":6,"files":["jc/parsers/ping.py"]}},{"commit":"e21542aaa2aa5f2f287ddc227df41ae47d761332","message":"Merge pull request #135 from kellyjonbrazil/dev"},{"commit":"6150aae0aeabafba26d9f119406b0660d9221cb6","message":"clarify packaged binaries","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]}},{"commit":"f27b35f37104ad2012c3bddde0bd94941af06894","message":"Merge pull request #131 from kellyjonbrazil/master"},{"commit":"d24f9a885d3954035a98a488671486408f509dca","message":"fix contributing link","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["CONTRIBUTING.md","README.md","templates/readme_template"]}},{"commit":"48dd82c8d1b756c4e08d49b8234b8060080dc035","message":"trigger page build on github pages","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]}},{"commit":"e57167ad1f240de6ec5fc86c51cfb780535cd783","message":"empty commit"},{"commit":"ada91376426ff359c495fb31081404a2cce72b5f","message":"Merge pull request #130 from kellyjonbrazil/dev"},{"commit":"bd428a9fd75327710dce96f3c95f74ab9d1beaad","message":"fix link","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]}},{"commit":"934941332f91d9e2cc4e691b154bb5427166ed30","message":"minor link updates","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","templates/readme_template"]}},{"commit":"0c209dbd108638f89a43801126a332379be9ae8b","message":"Merge pull request #129 from kellyjonbrazil/dev"},{"commit":"56e041aa260b2daf2f5662fae98645a93137adb5","message":"add Practical JSON at the Command Line blog link","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"]}},{"commit":"cf9d48582e4e5df6c8498b916a2f9cf036869f3d","message":"Merge pull request #128 from kellyjonbrazil/master"},{"commit":"92e2252bee00482bb0eeae3074b107d4c8553e4c","message":"fix typo","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]}},{"commit":"fd7861db11e5aaa17c4e7bbce942c0c096116e30","message":"Merge pull request #127 from kellyjonbrazil/dev"},{"commit":"35464bbbfb6b424ef3ee1c855557ada1bf3769fa","message":"date update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]}},{"commit":"db8ddd7f0e0c2a8bd3e545619e81d3d3972a4d7c","message":"fix for scenarios where the default port range didn't always display, or overrode existing port ranges.","stats":{"files_changed":5,"insertions":11,"deletions":17,"files":["jc/man/jc.1.gz","jc/parsers/ufw.py","man/jc.1.gz","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json"]}},{"commit":"72207c54ee5734e3d2d3d1a063c8daf1edaa8815","message":"update ufw app info docs to support multiple apps (ufw app info all)","stats":{"files_changed":3,"insertions":102,"deletions":94,"files":["docs/parsers/ufw_appinfo.md","jc/man/jc.1.gz","man/jc.1.gz"]}},{"commit":"a683f68003ea64dd5e2c4f06b53a1561ad774f12","message":"change schema to a list of dictionaries to support `ufw app info all` use case","stats":{"files_changed":9,"insertions":285,"deletions":202,"files":["EXAMPLES.md","jc/parsers/ufw_appinfo.py","tests/fixtures/generic/ufw-appinfo-msn.json","tests/fixtures/generic/ufw-appinfo-test.json","tests/fixtures/generic/ufw-appinfo-test2.json","tests/fixtures/generic/ufw-appinfo-test3.json","tests/fixtures/ubuntu-18.04/ufw-appinfo-all.json","tests/fixtures/ubuntu-18.04/ufw-appinfo-all.out","tests/test_ufw_appinfo.py"]}},{"commit":"8d2d3db3fa969456342181a226bf54a3f1613542","message":"formatting","stats":{"files_changed":4,"insertions":4,"deletions":0,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"]}},{"commit":"eca785450d1c72687817d09259fa7cd33376fafc","message":"add caveats to readme and manpage","stats":{"files_changed":5,"insertions":34,"deletions":13,"files":["CHANGELOG","README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"]}},{"commit":"5b40a97ce417687b4e37f320b8a3f07dd7fd169c","message":"add caveats to man page","stats":{"files_changed":3,"insertions":13,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template"]}},{"commit":"66cb4e9bde81b9290c1addaf851de5d80a1b0702","message":"update ufw parser docs","stats":{"files_changed":5,"insertions":216,"deletions":234,"files":["EXAMPLES.md","docs/parsers/ufw.md","jc/man/jc.1.gz","jc/parsers/ufw.py","man/jc.1.gz"]}},{"commit":"d1f33645caccdb3a55576081c4d355f997ac033c","message":"update ufw tests","stats":{"files_changed":7,"insertions":26,"deletions":10,"files":["tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw-numbered2.json","tests/fixtures/generic/ufw.json","tests/fixtures/ubuntu-18.04/ufw-numbered.json","tests/fixtures/ubuntu-18.04/ufw-numbered.out","tests/fixtures/ubuntu-18.04/ufw-verbose.json","tests/fixtures/ubuntu-18.04/ufw-verbose.out"]}},{"commit":"5eff65c326675a449afd05a2af0a6c9bcf7b5e23","message":"update schema to support port lists and port range lists. Also support other transports than tcp and udp","stats":{"files_changed":1,"insertions":85,"deletions":268,"files":["jc/parsers/ufw.py"]}},{"commit":"929c38715d87bf9dd689507d319c22b90871ae1c","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]}},{"commit":"8c91a7b7601a967cd9d8096433ffd4ad62b65ceb","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CONTRIBUTING.md"]}},{"commit":"14289ecd6c022ad204444dff5b5e48f6024a5d0d","message":"more timezone info","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CONTRIBUTING.md"]}},{"commit":"b833c44783eb32f2fad24ca205b5b7eab854750f","message":"add ufw-appinfo parser","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]}},{"commit":"e23aa818eaa6d1a389ddef7dd2ad8f62b9f6ff25","message":"add tests section and timezone info","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["CONTRIBUTING.md"]}},{"commit":"473d919c1350a8dc34d233033a5a7d12c928e42d","message":"add another ufw test sample","stats":{"files_changed":4,"insertions":32,"deletions":0,"files":["runtests.sh","tests/fixtures/generic/ufw-numbered2.json","tests/fixtures/generic/ufw-numbered2.out","tests/test_ufw.py"]}},{"commit":"9f925d6ac989a4f21a8c00c84fcf97dfb141e8c2","message":"doc update","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]}},{"commit":"f6ca32b3a31f314fa0b31d9e8b5494491b928f7e","message":"update ufw docs with a note on lists of ports","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/ufw.md","jc/parsers/ufw.py"]}},{"commit":"4cbe84c3d6ac8a3b594feb525460f2a68f5d62b2","message":"add ufw-appinfo tests","stats":{"files_changed":9,"insertions":110,"deletions":0,"files":["tests/fixtures/generic/ufw-appinfo-msn.json","tests/fixtures/generic/ufw-appinfo-msn.out","tests/fixtures/generic/ufw-appinfo-test.json","tests/fixtures/generic/ufw-appinfo-test.out","tests/fixtures/generic/ufw-appinfo-test2.json","tests/fixtures/generic/ufw-appinfo-test2.out","tests/fixtures/generic/ufw-appinfo-test3.json","tests/fixtures/generic/ufw-appinfo-test3.out","tests/test_ufw_appinfo.py"]}},{"commit":"ffac5bf9d381305daa86e546f8570be092e5ff34","message":"doc update","stats":{"files_changed":3,"insertions":12,"deletions":12,"files":["docs/parsers/ufw.md","jc/man/jc.1.gz","man/jc.1.gz"]}},{"commit":"9aa424f9f8c7e4e0dc29e2c58dac481098beba7d","message":"fix ufw example","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["EXAMPLES.md"]}},{"commit":"0a8495c68e427e39bbda957dd933fa2a461092e7","message":"update docs","stats":{"files_changed":1,"insertions":12,"deletions":15,"files":["jc/parsers/ufw.py"]}},{"commit":"6aea066cf024f92adf4b94eebc7d51430c22332c","message":"make normalized list appear only when data exists. set magic commands","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/ufw_appinfo.py"]}},{"commit":"ff3c2d809ec3ea6e556c302909a228ee670578c9","message":"add ufw-appinfo to docs","stats":{"files_changed":6,"insertions":176,"deletions":25,"files":["EXAMPLES.md","README.md","docs/parsers/ufw_appinfo.md","jc/man/jc.1.gz","jc/parsers/ufw_appinfo.py","man/jc.1.gz"]}},{"commit":"145059fc8946b7026184139baea143c2869bc4e7","message":"clean up output if sections are blank","stats":{"files_changed":1,"insertions":20,"deletions":8,"files":["jc/parsers/ufw_appinfo.py"]}},{"commit":"20e5c19de448c1b979497817c887d8d2d6487839","message":"fix key error if tcp or udp don't exist","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/ufw_appinfo.py"]}},{"commit":"4c98fd4b877c54e1cf7d285a29e178321be12f7e","message":"doc update","stats":{"files_changed":2,"insertions":101,"deletions":1,"files":["docs/parsers/ufw_appinfo.md","jc/parsers/ufw_appinfo.py"]}},{"commit":"125e54213e8d4dcfe2e3271456af80b3f79c0544","message":"update schema and add normalized fields","stats":{"files_changed":1,"insertions":105,"deletions":48,"files":["jc/parsers/ufw_appinfo.py"]}},{"commit":"0152e0665f87833250561d743144af35416992f8","message":"initial working ufw-appinfo parser","stats":{"files_changed":2,"insertions":215,"deletions":0,"files":["jc/cli.py","jc/parsers/ufw_appinfo.py"]}},{"commit":"0679bcbc560ea3575555d8546afdd4e2474d05d7","message":"fix ufw tests","stats":{"files_changed":5,"insertions":31,"deletions":5,"files":["tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json","tests/fixtures/ubuntu-18.04/ufw-numbered.json","tests/fixtures/ubuntu-18.04/ufw-verbose.json","tests/test_ufw.py"]}},{"commit":"5500648aa0886ea5089856e5b33d7c8ebd78d5b0","message":"fix ufw docs for int conversions and service behavior","stats":{"files_changed":3,"insertions":46,"deletions":46,"files":["EXAMPLES.md","docs/parsers/ufw.md","jc/parsers/ufw.py"]}},{"commit":"bb50caad4dfaefa309e747fd05b650186c5a80f4","message":"fix prefix int conversions. don't reset _transport if service is really a list of ports","stats":{"files_changed":3,"insertions":31,"deletions":4,"files":["jc/parsers/ufw.py","tests/fixtures/ubuntu-18.04/ufw-numbered.out","tests/fixtures/ubuntu-18.04/ufw-verbose.out"]}},{"commit":"7eef5d94d591a3f70f6638b1b30f952a3bf35f9d","message":"ufw doc update","stats":{"files_changed":3,"insertions":5,"deletions":0,"files":["EXAMPLES.md","jc/man/jc.1.gz","man/jc.1.gz"]}},{"commit":"74f623f8d607c050db8f62ea4996c4e6aae43268","message":"add support for rule comments and LIMIT and REJECT actions","stats":{"files_changed":5,"insertions":43,"deletions":11,"files":["docs/parsers/ufw.md","jc/parsers/ufw.py","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json","tests/fixtures/generic/ufw.out"]}},{"commit":"f638aca092475bbae14fed765e90435c093fcb8b","message":"add deb package name fix","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]}},{"commit":"da35eaf80ad4f11e7482fc4734db4b2265e50548","message":"formatting","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["docs/parsers/ufw.md","jc/man/jc.1.gz","man/jc.1.gz"]}},{"commit":"ade0e8e8fc18ff9a0dd406206a85238f1f5a739d","message":"add ufw tests","stats":{"files_changed":7,"insertions":107,"deletions":0,"files":["tests/fixtures/generic/ufw-inactive.json","tests/fixtures/generic/ufw-inactive.out","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw-numbered.out","tests/fixtures/generic/ufw.json","tests/fixtures/generic/ufw.out","tests/test_ufw.py"]}},{"commit":"90076090f05a1f03e2fbff307418ee18d7d046ef","message":"fix int conversions if 'rules' key does not exist","stats":{"files_changed":1,"insertions":7,"deletions":5,"files":["jc/parsers/ufw.py"]}},{"commit":"23635def8b654097178f73ed1b57fc50965142d5","message":"add ufw to docs","stats":{"files_changed":6,"insertions":306,"deletions":4,"files":["README.md","docs/parsers/ping.md","docs/parsers/ufw.md","docs/utils.md","jc/man/jc.1.gz","man/jc.1.gz"]}},{"commit":"4eeec087bde98f90ab8425473d1fbeee6834852e","message":"add ufw example","stats":{"files_changed":1,"insertions":115,"deletions":0,"files":["EXAMPLES.md"]}},{"commit":"733196103897a1d84d242324ddcf96e783320329","message":"update docs with new examples that have `to_service` always existing.","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/ufw.py"]}},{"commit":"e4acb3d5b70a7d75741ef3e35cd6750d1362a80f","message":"always make to/from_service None if ports are assigned","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/ufw.py"]}},{"commit":"c60549a9947d5684bbfa58223bfbcfc40a3ed479","message":"change field name from to/from_subnet to to/from_ip_prefix","stats":{"files_changed":1,"insertions":29,"deletions":29,"files":["jc/parsers/ufw.py"]}},{"commit":"d46fc8bbfa15a80a1af6c64f70230f858c215223","message":"set to/from_transport to None if to/from_service is set","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/parsers/ufw.py"]}},{"commit":"b133d1f90d49362594508d8c475663754f0e7675","message":"strip interface value","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/ufw.py"]}},{"commit":"5be615a97e7c145c8351764234ac591028560c34","message":"add examples for docs","stats":{"files_changed":1,"insertions":219,"deletions":9,"files":["jc/parsers/ufw.py"]}},{"commit":"ea1d820f96321ddf4084b54ee2fdf397295beb21","message":"convert integer fields","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/parsers/ufw.py"]}},{"commit":"47e262cf7200b02ff0af97a70ffa6bec286c8f39","message":"clean up fields","stats":{"files_changed":1,"insertions":59,"deletions":14,"files":["jc/parsers/ufw.py"]}},{"commit":"eec673be9092e382694aa02682564510ce4e7f90","message":"working raw parser","stats":{"files_changed":1,"insertions":88,"deletions":3,"files":["jc/parsers/ufw.py"]}},{"commit":"9a0fb2a7c87e6fde0cc0d84fa8a1f131e28ea732","message":"parse major sections","stats":{"files_changed":1,"insertions":157,"deletions":0,"files":["jc/parsers/ufw.py"]}},{"commit":"b5145d6c14d7a51e7cfdebe126c9689dc90f7b27","message":"version bump to v1.15.3","stats":{"files_changed":4,"insertions":8,"deletions":4,"files":["CHANGELOG","jc/__init__.py","jc/cli.py","setup.py"]}},{"commit":"9747ca414dfb8218389c7b2199a080edabc2a184","message":"minor optimization to convert_to_int(). No longer runs through convert_to_float(), but uses standard float() function.","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/utils.py"]}},{"commit":"312d465b61a15592cc70d3734ad747b9a2be10ae","message":"update link","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"]}},{"commit":"7dcf87d24ad40eba6ba98de2b4b2bf177a76cd71","message":"formatting","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping.py"]}},{"commit":"cf3cfd16a9de05f30303b5952fbe609cde842d2e","message":"rename tests","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_utils.py"]}},{"commit":"fcc7e5294973d1a18943fa2ce2e836b0fe757d95","message":"Merge pull request #123 from kellyjonbrazil/dev"},{"commit":"3ab9d480149a692510ab9e0ac8e745b674683e3d","message":"update changelog","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CHANGELOG"]}},{"commit":"7eddf41c5f6310264359cd6d78bdfa4b65af7d06","message":"dont round up int conversions and fix tests","stats":{"files_changed":11,"insertions":96,"deletions":9,"files":["jc/man/jc.1.gz","jc/utils.py","man/jc.1.gz","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/df.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/free-h.json","tests/test_utils.py"]}},{"commit":"27a196c93862bd737603cfe402b35529eb412954","message":"doc update","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"]}},{"commit":"e4324f05fb6f89c34fa1567e70d8636457623edb","message":"fix indentation in doc","stats":{"files_changed":2,"insertions":14,"deletions":14,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]}},{"commit":"d36b332bd78b5bf5979cdc59b31da08d8e4104d7","message":"use jc.utils for conversions","stats":{"files_changed":53,"insertions":196,"deletions":274,"files":["docs/parsers/systemctl_lj.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/wc.md","docs/parsers/who.md","docs/utils.md","jc/parsers/acpi.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/hash.py","jc/parsers/hciconfig.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl_lj.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/utils.py"]}},{"commit":"1f034826f69c461495f7a302cc8fe35e3052e72f","message":"use jc.utils for conversions","stats":{"files_changed":42,"insertions":94,"deletions":185,"files":["docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","tests/fixtures/centos-7.7/ls-alh.json","tests/fixtures/centos-7.7/lsof-sudo.json","tests/fixtures/centos-7.7/lsof.json","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/ubuntu-18.04/ls-alh.json","tests/fixtures/ubuntu-18.04/lsof-sudo.json","tests/fixtures/ubuntu-18.04/lsof.json"]}},{"commit":"246c707c98d3128b4e38f5c4b23a1e0ceedc0b0c","message":"use jc.utils conversions","stats":{"files_changed":46,"insertions":190,"deletions":196,"files":["CHANGELOG","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/df.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/hash.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/utils.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/hash.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/utils.py","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/osx-10.11.6/df-h.json","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/free-h.json"]}},{"commit":"b5d8968144e76090870f8563dc1bce910fba668c","message":"add convert_to_int function","stats":{"files_changed":1,"insertions":19,"deletions":0,"files":["jc/utils.py"]}},{"commit":"f7b9fbefdde6973077573fec02342eb9946789c6","message":"add query_size info for dig","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]}},{"commit":"b1fc4533833ca25f59869bfec8ac114bf49c7847","message":"fix _IfconfigParser name","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"]}},{"commit":"7581c8d0f4262fc6a05240bb21ffe533b153f6e4","message":"add query_size field. handle user-specified dig output better - especially when querying dnssec","stats":{"files_changed":3,"insertions":45,"deletions":32,"files":["docs/parsers/dig.md","jc/parsers/dig.py","tests/fixtures/generic/dig-edns3.json"]}},{"commit":"32bf8ad6f4fff83fdfd83d66c1ba8f1af5a65a90","message":"update dig docs","stats":{"files_changed":4,"insertions":52,"deletions":24,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/dig.md","jc/parsers/dig.py"]}},{"commit":"b083bcc10fa1105fc09ce8d2c3297aa5575c9d51","message":"update man page","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]}},{"commit":"4f6fdd120d23468270c1d7111e4ef71b87759a1c","message":"use dig as example","stats":{"files_changed":2,"insertions":134,"deletions":100,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"eb0038be2490053d32803d30e1c3d4d34509d130","message":"update dig examples","stats":{"files_changed":1,"insertions":40,"deletions":19,"files":["EXAMPLES.md"]}},{"commit":"7ecdf819fa37c38ae6159ad8e7bc973ee4f34559","message":"remove dig example from readme,","stats":{"files_changed":2,"insertions":0,"deletions":84,"files":["README.md","templates/readme_template"]}},{"commit":"c6aa4d083550d25bcb621cad524047cfd6a08217","message":"update docs with new dig parser examples","stats":{"files_changed":6,"insertions":252,"deletions":317,"files":["README.md","docs/parsers/dig.md","jc/man/jc.1.gz","jc/parsers/dig.py","man/jc.1.gz","templates/readme_template"]}},{"commit":"7c584b89a6e6b924d53d50103b97f0c2405c33b1","message":"add additional section","stats":{"files_changed":15,"insertions":352,"deletions":52,"files":["jc/parsers/dig.py","tests/fixtures/generic/dig-additional.json","tests/fixtures/generic/dig-additional.out","tests/fixtures/generic/dig-additional2.json","tests/fixtures/generic/dig-additional2.out","tests/fixtures/generic/dig-additional3.json","tests/fixtures/generic/dig-additional3.out","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/generic/dig-edns.json","tests/fixtures/generic/dig-edns.out","tests/fixtures/generic/dig-edns2.json","tests/fixtures/generic/dig-edns2.out","tests/fixtures/generic/dig-edns3.json","tests/fixtures/generic/dig-edns3.out","tests/test_dig.py"]}},{"commit":"c166c0bfdafa922f57f021fa4d16e467fca02d58","message":"add opt_pseudosection section to output and fix existing tests","stats":{"files_changed":14,"insertions":55,"deletions":21,"files":["jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json"]}},{"commit":"a8dd3f7802bfe8fd3ffbedf89af45ddc580ee78d","message":"working dig axfr fixes","stats":{"files_changed":5,"insertions":54,"deletions":281,"files":["CHANGELOG","jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-axfr.json"]}},{"commit":"3b0e2f03f3b11398ff57b1daed542faaf0b80a62","message":"clean up examples","stats":{"files_changed":2,"insertions":24,"deletions":23,"files":["jc/cli.py","templates/manpage_template"]}},{"commit":"8390ae48c88ab1c7d5acbf40c0e60606953817bd","message":"fix server entry when IPv6 address is in value (maxsplit on colons)","stats":{"files_changed":7,"insertions":8,"deletions":8,"files":["jc/parsers/dig.py","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json"]}},{"commit":"2db82c0a7e19d596c876ede8a8ff106aaa733ee5","message":"add systeminfo example","stats":{"files_changed":1,"insertions":66,"deletions":0,"files":["EXAMPLES.md"]}},{"commit":"61479540756704f10853233300ceae8f954a8a95","message":"update tests","stats":{"files_changed":2,"insertions":5,"deletions":0,"files":["tests/test_systeminfo.py","tests/test_utils.py"]}},{"commit":"691df271fcfe057ae4b75ad40869e23deb37b886","message":"add info docstring","stats":{"files_changed":4,"insertions":2,"deletions":1,"files":["docs/parsers/systeminfo.md","jc/man/jc.1.gz","jc/parsers/systeminfo.py","man/jc.1.gz"]}},{"commit":"89f52b95f7055da9d7b5fa8dce0923d4c3435bd2","message":"update systeminfo parser with updated timestamps, normalized blank fields, and new doc style","stats":{"files_changed":13,"insertions":467,"deletions":821,"files":["README.md","docs/parsers/systeminfo.md","jc/man/jc.1.gz","jc/parsers/systeminfo.py","jc/utils.py","man/jc.1.gz",".../windows/windows-10/systeminfo-hyperv-utc.json",".../windows/windows-10/systeminfo-hyperv-utc.out",".../windows/windows-10/systeminfo-hyperv.json","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-10/systeminfo.out",".../windows/windows-2012r2/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"]}},{"commit":"146acc1bf69c402e38c2f1bc842b84e6cff7e2cb","message":"rename functions to make them private","stats":{"files_changed":1,"insertions":23,"deletions":29,"files":["jc/parsers/systeminfo.py"]}},{"commit":"c4a345f59aa090336b4e80f181493cd5bc2c17c5","message":"Merge pull request #106 from jon-rd/j/systeminfo"},{"commit":"dfd2703f75b907ba865fff266d0742d8931bc2d3","message":"bump dev to v1.15.2","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"]}},{"commit":"325fab2de7b8a4bfc452ab8d3cf333d47fdf4989","message":"update documentation for parsed structures","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/systeminfo.py"]}},{"commit":"f3d00cf38ad15aeda7eaa5644ebc30ff33de6a29","message":"append mb to memory key names; adjust expected timestamps to utc tz","stats":{"files_changed":5,"insertions":56,"deletions":48,"files":["jc/parsers/systeminfo.py",".../windows/windows-10/systeminfo-hyperv.json","tests/fixtures/windows/windows-10/systeminfo.json",".../windows/windows-2012r2/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"]}},{"commit":"14838f7f5d780896f1318cac2c3f34d249a158d4","message":"update schema with nic, hyperv, and process changes","stats":{"files_changed":9,"insertions":956,"deletions":116,"files":["jc/parsers/systeminfo.py","jc/utils.py",".../windows/windows-10/systeminfo-hyperv.json",".../windows/windows-10/systeminfo-hyperv.out","tests/fixtures/windows/windows-10/systeminfo.json",".../windows/windows-2012r2/systeminfo.json",".../fixtures/windows/windows-2012r2/systeminfo.out","tests/fixtures/windows/windows-7/systeminfo.json","tests/test_systeminfo.py"]}},{"commit":"af74047b81776c2ea32d82f9145ab60c346c8203","message":"update schema based on processor/hotfix changes","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/systeminfo.py"]}},{"commit":"660c59129cf4ba7889fb3c6fbafd9dd9b479ccd9","message":"Add parsing of processors/hotfixs","stats":{"files_changed":3,"insertions":41,"deletions":9,"files":["jc/parsers/systeminfo.py","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"]}},{"commit":"89a88e186ed71d84ea802cf08ab756b49cee3225","message":"Add systeminfo.md file","stats":{"files_changed":1,"insertions":152,"deletions":0,"files":["docs/parsers/systeminfo.md"]}},{"commit":"f861cf95b96a224a0a11f2cdc3261b94c02415ef","message":"Change to v0.5; add parser to cli.py; add to docgen","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["jc/cli.py","jc/parsers/systeminfo.py"]}},{"commit":"ee8f06cbdb03f8254bb6a3c56fa5b8a64ff9ca77","message":"Add windows systeminfo command parser","stats":{"files_changed":6,"insertions":688,"deletions":0,"files":["jc/parsers/systeminfo.py","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-10/systeminfo.out","tests/fixtures/windows/windows-7/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.out","tests/test_systeminfo.py"]}},{"commit":"a2e8b3c7b681605916b8950d035ee19889a125a5","message":"Merge pull request #121 from kellyjonbrazil/master"},{"commit":"6c838460752c7131f75cdab2da07266fee492060","message":"Merge pull request #120 from kellyjonbrazil/dev"},{"commit":"e0681eebb9881dc0ffddb478224455f434919104","message":"Merge branch 'master' into dev"},{"commit":"e5732d1cea1c882f6486cf288e45edb993989ea0","message":"update changelog","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]}},{"commit":"6e7ae3cd3f003fe9e1e587b7f8ebd16ba0895014","message":"formatting of timedatectl docs","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/timedatectl.md","jc/man/jc.1.gz","jc/parsers/timedatectl.py","man/jc.1.gz"]}},{"commit":"f95632d1aaee545ae0ce081ca0617be135c09220","message":"add install_date calculated fields","stats":{"files_changed":7,"insertions":83,"deletions":62,"files":["EXAMPLES.md","docs/parsers/rpm_qi.md","jc/man/jc.1.gz","jc/parsers/rpm_qi.py","man/jc.1.gz","tests/fixtures/centos-7.7/rpm-qai.json","tests/fixtures/centos-7.7/rpm-qi-package.json"]}},{"commit":"2f8b7b26e59bcd745fa1fcadb373455c7d404286","message":"update docs for v1.15.1","stats":{"files_changed":3,"insertions":1,"deletions":2,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"]}},{"commit":"10292f7502e4cb1c53b53ed39fed9288044c2ef8","message":"Merge pull request #119 from kellyjonbrazil/dpkg_l-fix"},{"commit":"aef54705f5267c633e0778e8dce0065978083139","message":"add _l to module name","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["docs/parsers/dpkg_l.md"]}},{"commit":"bba5980fa53767716bc35d8c904e7a2341346eeb","message":"man page update","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]}},{"commit":"977425abfb05a63ee372df36124ac6ba6a5a0aaa","message":"add _l to package name in docs","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"]}},{"commit":"37a3565a1bbd3d01663602673fed651509e69d8c","message":"Merge pull request #118 from kellyjonbrazil/rpm-qi-doc-fix"},{"commit":"13deb8bfb6e77aaf86942f0be87b59d06ee2a97c","message":"fix rpm-qi docs","stats":{"files_changed":2,"insertions":3,"deletions":194,"files":["docs/parsers/rpm_qai.md","docs/parsers/rpm_qi.md"]}},{"commit":"a3ed9d075aff41599452c3094f7d057c25fc8f89","message":"remove old parser doc","stats":{"files_changed":1,"insertions":0,"deletions":191,"files":["docs/parsers/rpm_qai.md"]}},{"commit":"fb0ced549e021916dee7da39859e8f85c8216e16","message":"fix rpm-qi docs (used underscore instead of dash in name)","stats":{"files_changed":4,"insertions":6,"deletions":6,"files":["docs/parsers/rpm_qi.md","jc/man/jc.1.gz","jc/parsers/rpm_qi.py","man/jc.1.gz"]}},{"commit":"7eb31bc7d290fcd09e53524ebbb11e59110df6a0","message":"update airport_s docs","stats":{"files_changed":4,"insertions":39,"deletions":48,"files":["docs/parsers/airport_s.md","jc/man/jc.1.gz","jc/parsers/airport_s.py","man/jc.1.gz"]}},{"commit":"6a06a3914273853742ac57433398968ccf7d9897","message":"use herestring instead of echo -e into jq","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["docgen.sh"]}},{"commit":"bdcdaee6c5299ea0750512e0943c7f58f56f2e35","message":"Merge pull request #117 from kellyjonbrazil/doc_update"},{"commit":"605353fdce3b8b5986d20a35d05f7210a6df0730","message":"add new docs","stats":{"files_changed":70,"insertions":1710,"deletions":2656,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md"]}},{"commit":"490c9e17699e8e4f70dcc1612e1a808f86e24b0a","message":"add more cli tests for magic command","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["tests/test_cli.py"]}},{"commit":"6ebebb659dc93daeaa869752ad135f6e1d2cb1ee","message":"update changelog","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"]}},{"commit":"0e70c5ee12e96f04a89de05153a2da9cd39f98ad","message":"update documentation link","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1.gz"]}},{"commit":"cd531acf6045660e022c932f62a01d4084433ad4","message":"clean up comment","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["docgen.sh"]}},{"commit":"908ac1f61c5cc011d05d550f933940dfed4431f2","message":"update docs - remove compatibility section since it is now automatically generated from info()","stats":{"files_changed":143,"insertions":0,"deletions":690,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/man/jc.1.gz","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","man/jc.1.gz"]}},{"commit":"f5c7e7e4046bc57b4fcad99390e31b121a7106ba","message":"add updated docs with home link and parser info at the bottom","stats":{"files_changed":70,"insertions":350,"deletions":0,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md"]}},{"commit":"001c700b5bd280cb1cb9e54169ae5f1b7918c257","message":"add home link to the top of the md file","stats":{"files_changed":3,"insertions":2,"deletions":1,"files":["docgen.sh","jc/man/jc.1.gz","man/jc.1.gz"]}},{"commit":"9b41e9bef0ff099e70f37fddc8fe2c6bd8457b19","message":"Add parser information header","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"]}},{"commit":"34bd6e32dc0c0bf7dfeedaadbf04115f43e9d060","message":"pull each parser as a json object into a bash array and iterate on it to add supplementary information like version, author, and compatibility","stats":{"files_changed":1,"insertions":20,"deletions":4,"files":["docgen.sh"]}},{"commit":"c5d058490beaa8f59875a8acfd7a400764768639","message":"move parser doc printing to its own function","stats":{"files_changed":1,"insertions":22,"deletions":13,"files":["jc/cli.py"]}},{"commit":"dd1ae6d9a7de5421830232deb42d933b9a652672","message":"add man page inside the pypi package for easier packaging in homebrew","stats":{"files_changed":4,"insertions":3,"deletions":1,"files":["MANIFEST.in","jc/man/jc.1.gz","man/jc.1.gz","mangen.py"]}},{"commit":"d8ea9bde823a7f5c146741150c3211737345c7dd","message":"doc update","stats":{"files_changed":3,"insertions":16,"deletions":16,"files":["docs/parsers/w.md","jc/parsers/w.py","man/jc.1.gz"]}},{"commit":"125edc9c906dc3650b6a683ed13830075acb7ab6","message":"bail out for -h, -a, and -v in magic()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]}},{"commit":"15ea43e394a9004f8ccec208b3a066c76e241866","message":"add man file to package for easier packaging in homebrew","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["MANIFEST.in"]}},{"commit":"b55b02687c00d1c50e30f30c9b9a7f36f783eb0f","message":"doc update","stats":{"files_changed":19,"insertions":371,"deletions":441,"files":["CHANGELOG","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","man/jc.1.gz","setup.py"]}},{"commit":"da611f0ac6321f7f52fdbc419f8b155c74393c28","message":"update docs","stats":{"files_changed":4,"insertions":63,"deletions":50,"files":["jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","man/jc.1.gz"]}},{"commit":"b8b8dfead4fdc4285585c44c2ebce3bdd42b2e7c","message":"update docs","stats":{"files_changed":61,"insertions":1501,"deletions":1848,"files":["docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py"]}},{"commit":"4290a3cbd135cacbf63664dc30768017ebbed28d","message":"make IfconfigParser class private","stats":{"files_changed":2,"insertions":3,"deletions":9,"files":["docs/parsers/ifconfig.md","jc/parsers/ifconfig.py"]}},{"commit":"a5e2203cee6a7bc398cf280f57d37638eeb1d2d8","message":"update ifconfig doc","stats":{"files_changed":3,"insertions":2,"deletions":1,"files":["docs/parsers/ifconfig.md","jc/parsers/ifconfig.py","man/jc.1.gz"]}},{"commit":"e28c08b1361161cfd123b9ebc11fa1ffa87d658f","message":"update documentation","stats":{"files_changed":46,"insertions":976,"deletions":1209,"files":["docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","man/jc.1.gz"]}},{"commit":"a4b6846f63b43168085275d73940265940badf46","message":"man update","stats":{"files_changed":2,"insertions":0,"deletions":467,"files":["man/jc.1","man/jc.1.gz"]}},{"commit":"2bc830786114fd57619f34b936dcf6e0bed7a109","message":"Merge branch 'master' into dev"},{"commit":"9b39917c798ed0310c9b82d87172cbf6d24ba111","message":"update docstrings for new help functionality","stats":{"files_changed":17,"insertions":391,"deletions":453,"files":["README.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","jc/cli.py","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","man/jc.1","templates/manpage_template","templates/readme_template"]}},{"commit":"57c13cc0a38ad89fda8b0e362bd6487257d0a26a","message":"add support for parser help","stats":{"files_changed":1,"insertions":23,"deletions":3,"files":["jc/cli.py"]}},{"commit":"b7355fd30d992a1bcc90227f5a1b02be073829e7","message":"new docstring format for improved documentation","stats":{"files_changed":2,"insertions":37,"deletions":48,"files":["docs/parsers/arp.md","jc/parsers/arp.py"]}},{"commit":"93ae309e407b26820b9f05b5b331d05fc77df57f","message":"bump version to 1.15.1","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/__init__.py","man/jc.1"]}},{"commit":"5d8f8365e24a7c3a587d4e71ebba4876de08203b","message":"gzip man page","stats":{"files_changed":3,"insertions":9,"deletions":461,"files":["man/jc.1","man/jc.1.gz","mangen.py"]}},{"commit":"f26909eefb236e9ebf63be53cd86ae13cc3d9ea3","message":"formatting","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["docs/parsers/dir.md"]}},{"commit":"55bfbb2797ede3aefbb14ecab950b108b1895ccc","message":"formatting","stats":{"files_changed":2,"insertions":5,"deletions":6,"files":["EXAMPLES.md","jc/parsers/dir.py"]}},{"commit":"8970b8342a855203aef649b60dad3e49a1d7fd2a","message":"Merge pull request #115 from kellyjonbrazil/master"},{"commit":"5285e699c30fdeaf56068f5a03ef1d1d33fa673c","message":"fix rpm-qi parser name","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","jc/cli.py","man/jc.1"]}},{"commit":"275f3860d5870303235b651d42650256e4db8ada","message":"Merge pull request #114 from kellyjonbrazil/dev"},{"commit":"a73fdb7478965f0f2c841ac01b2762db80ad0786","message":"update dates","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["CHANGELOG","man/jc.1"]}},{"commit":"f2d746403a0ed764f931ae9e14d180bab107dcca","message":"typo fix","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/rpm_qi.md","jc/parsers/rpm_qi.py"]}},{"commit":"b7dbf2c49be4beb793495a0aaee7f05dbea5a3a6","message":"doc formatting","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["jc/utils.py"]}},{"commit":"21f3c97788826e79b0c387f877c5adf269318e97","message":"rename rpm_qai to rpm_qi","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"]}},{"commit":"14b727cc717d04fefba1cc31b6f29b549ced986f","message":"add rpm_qi tests","stats":{"files_changed":3,"insertions":73,"deletions":0,"files":["tests/fixtures/centos-7.7/rpm-qi-package.json","tests/fixtures/centos-7.7/rpm-qi-package.out","tests/test_rpm_qai.py"]}},{"commit":"abee226591ed4ae37351efc995017d28b27827d9","message":"rename rpm_qia to rpm_qi","stats":{"files_changed":5,"insertions":205,"deletions":14,"files":["README.md","docs/parsers/rpm_qi.md","jc/cli.py","jc/parsers/{rpm_qai.py => rpm_qi.py}","man/jc.1"]}},{"commit":"293ad39f4bcf326186dd917d8bc58d3964e5e4d6","message":"typo fix","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]}},{"commit":"92443025811019f616f596abb60a2889f604c122","message":"rpm parser doc update","stats":{"files_changed":4,"insertions":7,"deletions":6,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/rpm_qai.md","jc/parsers/rpm_qai.py"]}},{"commit":"753cac25fb1e7e6cd2c742afa8d45ced068ea91d","message":"only add description if it exists","stats":{"files_changed":1,"insertions":6,"deletions":3,"files":["jc/parsers/rpm_qai.py"]}},{"commit":"0548263e898bf14f93d2fa423c0f0a9d9f2ff567","message":"add rpm -qai parser","stats":{"files_changed":8,"insertions":10468,"deletions":0,"files":["EXAMPLES.md","README.md","docs/parsers/rpm_qai.md","jc/cli.py","jc/parsers/rpm_qai.py","man/jc.1","tests/fixtures/centos-7.7/rpm-qai.json","tests/fixtures/centos-7.7/rpm-qai.out"]}},{"commit":"53776a9bf894988d6ef9221a62ab8b816c89560c","message":"note -a output is JSON","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["man/jc.1","templates/manpage_template"]}},{"commit":"cc7def9b76a7fa6de1e11b584676820f3acb0257","message":"add OSX finger tests","stats":{"files_changed":3,"insertions":18,"deletions":0,"files":["tests/fixtures/osx-10.14.6/finger.json","tests/fixtures/osx-10.14.6/finger.out","tests/test_finger.py"]}},{"commit":"11a4422c25ed905f33475677bcc2f59f49c62a23","message":"add centos 7.7 finger tests","stats":{"files_changed":3,"insertions":51,"deletions":0,"files":["tests/fixtures/centos-7.7/finger.json","tests/fixtures/centos-7.7/finger.out","tests/test_finger.py"]}},{"commit":"3a44785260514227b541530baf3e14b6c7ebe86a","message":"del details key if details are blank","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/finger.py"]}},{"commit":"e0d430c26c38db8de5a32741e05df412cffe45b7","message":"update -r raw option info","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]}},{"commit":"417b70020accfa4910016e9d3d12690a5488f6f5","message":"add idle time fields to finger parser","stats":{"files_changed":5,"insertions":129,"deletions":22,"files":["EXAMPLES.md","docs/parsers/finger.md","jc/parsers/finger.py","tests/fixtures/ubuntu-18.04/finger.json","tests/fixtures/ubuntu-18.04/finger.out"]}},{"commit":"7b29c464b72ef9a79bd872dab92cf65016490bcc","message":"date updated","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]}},{"commit":"26d5529d86e4e459ad94226465c3697a050af0ac","message":"remove aix support, add note for -s support. schema update","stats":{"files_changed":1,"insertions":10,"deletions":7,"files":["docs/parsers/finger.md"]}},{"commit":"852103c478321b84ffbbc0a876d5ece0c0881e1f","message":"tweak regex to support arbitrary 'detail' data","stats":{"files_changed":1,"insertions":27,"deletions":14,"files":["jc/parsers/finger.py"]}},{"commit":"26a115421b0888e23f4348f1124e2ef7b39df4cc","message":"add finger parser","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["CHANGELOG"]}},{"commit":"755b941a9aa602d95d9bc599f5c64e05f9e6216d","message":"doc update","stats":{"files_changed":3,"insertions":35,"deletions":30,"files":["EXAMPLES.md","docs/parsers/finger.md","jc/parsers/finger.py"]}},{"commit":"fd1ca82d86649adeb84968142665e5e4fae3fa0f","message":"add finger parser","stats":{"files_changed":5,"insertions":263,"deletions":0,"files":["README.md","docs/parsers/finger.md","jc/cli.py","jc/parsers/finger.py","man/jc.1"]}},{"commit":"6fe175344fc61d4996a9ea20f6c5d429efb1fac7","message":"change examples link to github.io","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]}},{"commit":"3590cda13a68616ee7eb8c85c5554ffb3fef036d","message":"docs formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/last.md","jc/parsers/last.py"]}},{"commit":"2f1011dd85ec9b3550138ac4a4e1729fa5b4fe17","message":"readme update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"2b155261b3f6e4879b592f5bc052649ded5e3d69","message":"use new github.io links for documentation","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"]}},{"commit":"02f4d606d0a446c7cc74aedac6035ee79805950d","message":"add documentation links to README.md","stats":{"files_changed":2,"insertions":69,"deletions":69,"files":["README.md","templates/readme_template"]}},{"commit":"577811f00b7fcd0396bb0e26a2985709bd2c65a0","message":"Set theme jekyll-theme-cayman","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/_config.yml"]}},{"commit":"b4098d67a3a4a617d42c1389e0a88833c77b89b4","message":"latest","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]}},{"commit":"88bd7554aeb511c19e55dc3dde9c9376efb0485b","message":"add status messages","stats":{"files_changed":2,"insertions":8,"deletions":3,"files":["docgen.sh","updatedocs.sh"]}},{"commit":"b5ec16c5cafb78db093861cc30d9646207f2227a","message":"formatting","stats":{"files_changed":2,"insertions":0,"deletions":8,"files":["mangen.py","readmegen.py"]}},{"commit":"68fcb60a1460a35500180ec05a8cf5ba5706ff17","message":"add updatedocs script","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["updatedocs.sh"]}},{"commit":"e4781d60ce251f6d47f19bbe042e97f8aa9e2f18","message":"update parser descriptions with backticks surrounding command names","stats":{"files_changed":65,"insertions":188,"deletions":189,"files":["README.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","man/jc.1"]}},{"commit":"6201fb346a66ba762651624cdaf03f08e08579a1","message":"test backticks in description","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","jc/parsers/iw_scan.py"]}},{"commit":"f88c8343f9dec5e0190df94a5109e6c749bda286","message":"update iw-scan description for documentation","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","jc/parsers/iw_scan.py"]}},{"commit":"25410d33168ee7142bd8f8c739ef22a62a47eb6c","message":"create readmegen.py script. move jinja2 templates to templates folder","stats":{"files_changed":5,"insertions":973,"deletions":70,"files":["README.md","mangen.py","readmegen.py","{man/template => templates}/manpage_template","templates/readme_template"]}},{"commit":"4ff9952938d0654376efc94ca7d8a12f6df171af","message":"change OSX to macOS","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["README.md"]}},{"commit":"5e3f63a412c5b23e7515337521ebba6273b5c11f","message":"add license and copyright info. use variables instead of hard-coded values","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["man/jc.1","man/template/manpage_template"]}},{"commit":"e1f57be69efdfd7facd07df6ef0955a36c4fc18b","message":"add license info","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"]}},{"commit":"2c65d5eeccdc95d2de00ac6575a9e8d8458486bc","message":"man page updates","stats":{"files_changed":2,"insertions":32,"deletions":8,"files":["man/jc.1","man/template/manpage_template"]}},{"commit":"aa621f2f1ee043611c440683dfb63e6577d8fac4","message":"enhance man page","stats":{"files_changed":3,"insertions":74,"deletions":9,"files":["CHANGELOG","man/jc.1","man/template/manpage_template"]}},{"commit":"ac932c6e59ad80115962d0ea91e6aaabc70c211e","message":"update timestamp docs","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/utils.md","jc/utils.py"]}},{"commit":"029f79da1647e53f97ca83ba92b1f36a131f3128","message":"added info regarding updated dev scripts for automating doc generation","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]}},{"commit":"153b2b4a7a216caae5b03f6d50d43980c13a705f","message":"use jc to help automate the generation of its own docs","stats":{"files_changed":1,"insertions":11,"deletions":68,"files":["docgen.sh"]}},{"commit":"709b2fe4eead06090f903718deeb06ec774fc26e","message":"add -h and -v options","stats":{"files_changed":2,"insertions":16,"deletions":0,"files":["man/jc.1","man/template/manpage_template"]}},{"commit":"09c1fccc584e3d0582e19b520586419085ea8d04","message":"manpage updates","stats":{"files_changed":3,"insertions":4,"deletions":6,"files":["man/jc.1","man/template/manpage_template","mangen.py"]}},{"commit":"fd254d99b782888fe7646e42a61f28aa99e7cba7","message":"add manpage generator","stats":{"files_changed":3,"insertions":193,"deletions":15,"files":["man/jc.1","man/template/manpage_template","mangen.py"]}},{"commit":"88bd2c172217c498431e8904e74313bc27978785","message":"fix typo","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]}},{"commit":"d03e2f0fc1d0310cd94702f4d3c959d71b0eb622","message":"add parser schema guidelines","stats":{"files_changed":1,"insertions":40,"deletions":0,"files":["CONTRIBUTING.md"]}},{"commit":"3f12a393bd37062cd1412128be495235b0c7351f","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]}},{"commit":"8c21284c5038bdc2e52ff4211fac747f33f52091","message":"remove redundant license info","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["CONTRIBUTING.md"]}},{"commit":"e7d396c2157a77500017967dfc68ffaf32507c2c","message":"update issues link","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]}},{"commit":"f238fac0eb0c8e5133c6c9abf9ca709f5df7a925","message":"add contributing guidelines","stats":{"files_changed":3,"insertions":49,"deletions":0,"files":["CHANGELOG","CONTRIBUTING.md","README.md"]}},{"commit":"017228f80d9a65ad7715f31c539d9fca1615296f","message":"add tested on Windows 10","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]}},{"commit":"286c5fa9434e25434ee8f4825621f68464296469","message":"add dir parser","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]}},{"commit":"74cfc13abe4cd09ca5470714caeaedd24c099770","message":"fixup dir parser tests","stats":{"files_changed":9,"insertions":12,"deletions":21,"files":["tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-S.json","tests/fixtures/windows-10/dir-dirs.json","tests/fixtures/windows-10/dir-files.json","tests/fixtures/windows-10/dir-mix.json","tests/fixtures/windows-10/dir-raw.json","tests/fixtures/windows-10/dir.json","tests/test_dir.py"]}},{"commit":"0ee4a6c377321cf6ff67ced38e9a07a8f6313943","message":"update schema and add epoch naive timestamp","stats":{"files_changed":2,"insertions":207,"deletions":460,"files":["docs/parsers/dir.md","jc/parsers/dir.py"]}},{"commit":"283433578dfc3f132ef35727ce5bafb3e390896c","message":"add dir parser","stats":{"files_changed":2,"insertions":46,"deletions":0,"files":["EXAMPLES.md","README.md"]}},{"commit":"9559c85057308e8815d4654bbe0062a5858c0b2b","message":"add windows dir format","stats":{"files_changed":2,"insertions":3,"deletions":0,"files":["jc/utils.py","tests/test_utils.py"]}},{"commit":"c5c020f5654038dacba542be3784a35d7333cbcc","message":"add /S option","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/parsers/dir.md"]}},{"commit":"95ec79bceb3d0c4245e36b7b16cfda6e16b01197","message":"Merge pull request #107 from rasheed-rd/add-dir-parser"},{"commit":"8f8be8aa33f0b708ebd9a35c6b288572443d7181","message":"add -1 option info","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]}},{"commit":"5b60c7445a3f8bd2ae1587aa0ffaeaf093966f9a","message":"Add support for /S and update documentation","stats":{"files_changed":5,"insertions":469,"deletions":400,"files":["docs/parsers/dir.md","jc/parsers/dir.py","tests/fixtures/windows-10/dir-S.json","tests/fixtures/windows-10/dir-S.out","tests/test_dir.py"]}},{"commit":"d9dbcc8b526c8de9c6d12ac580880fd606dc68cf","message":"Add parent dir to structure. Add test cases. Remove support for /Q","stats":{"files_changed":15,"insertions":149,"deletions":73,"files":["docs/parsers/dir.md","jc/parsers/dir.py","tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-Q.json","tests/fixtures/windows-10/dir-Q.out","tests/fixtures/windows-10/dir-dirs.json","tests/fixtures/windows-10/dir-dirs.out","tests/fixtures/windows-10/dir-files.json","tests/fixtures/windows-10/dir-files.out","tests/fixtures/windows-10/dir-mix.json","tests/fixtures/windows-10/dir-mix.out","tests/fixtures/windows-10/dir-raw.json","tests/fixtures/windows-10/dir.json","tests/test_dir.py"]}},{"commit":"79bc525970b38dea68b4859ac5dd32fc681e5994","message":"add codes field to schema","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"]}},{"commit":"9dae1091ddc6141694ebfdc5ae649582cb879ccd","message":"typo fix","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"]}},{"commit":"74d3ac686a69518c1048260e37a0245ff254ff57","message":"add dpkg-l tests","stats":{"files_changed":4,"insertions":61,"deletions":0,"files":["tests/fixtures/ubuntu-18.04/dpkg-l-codes.json","tests/fixtures/ubuntu-18.04/dpkg-l-columns500.json","tests/fixtures/ubuntu-18.04/dpkg-l.json","tests/test_dpkg_l.py"]}},{"commit":"cf3cc636badcf4ae6db1e5ee5e57ca0331ee5b0f","message":"add dpkg-l parser info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]}},{"commit":"a720441e1d34771c5a54876cb7dd63fb8c9f408e","message":"add dpkg -l example","stats":{"files_changed":1,"insertions":54,"deletions":0,"files":["EXAMPLES.md"]}},{"commit":"0a7ed0959df07e2f36d9ec3ca8c294cfdaf10396","message":"rename err to error","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"]}},{"commit":"eb83c9b86dc6d1ff15efed30993071834b65a7d1","message":"replace parse_datetime_to_timestamp with timestamp class","stats":{"files_changed":1,"insertions":8,"deletions":21,"files":["docs/utils.md"]}},{"commit":"5c0142dd19eee14f4f1c287f0543e29824f9ae70","message":"add dpkg-l parser","stats":{"files_changed":9,"insertions":1797,"deletions":2,"files":["CHANGELOG","docgen.sh","docs/parsers/dpkg_l.md","jc/cli.py","jc/parsers/dpkg_l.py","jc/parsers/universal.py","tests/fixtures/ubuntu-18.04/dpkg-l-codes.out","tests/fixtures/ubuntu-18.04/dpkg-l-columns500.out","tests/fixtures/ubuntu-18.04/dpkg-l.out"]}},{"commit":"c326c8dc8356b55bba13864156adf30607205ece","message":"add TypeError to except block. add /usr/bin/time tests","stats":{"files_changed":18,"insertions":194,"deletions":1,"files":["jc/parsers/time.py","tests/fixtures/osx-10.14.6/time-l.json","tests/fixtures/osx-10.14.6/time-l.out","tests/fixtures/osx-10.14.6/time-lp.json","tests/fixtures/osx-10.14.6/time-lp.out","tests/fixtures/osx-10.14.6/time-p.json","tests/fixtures/osx-10.14.6/time-p.out","tests/fixtures/osx-10.14.6/time.json","tests/fixtures/osx-10.14.6/time.out","tests/fixtures/ubuntu-18.04/time-p.json","tests/fixtures/ubuntu-18.04/time-p.out","tests/fixtures/ubuntu-18.04/time-verbose.json","tests/fixtures/ubuntu-18.04/time-verbose.out","tests/fixtures/ubuntu-18.04/time.json","tests/fixtures/ubuntu-18.04/time.out","tests/fixtures/ubuntu-18.04/time2.json","tests/fixtures/ubuntu-18.04/time2.out","tests/test_time.py"]}},{"commit":"fc4082a03feb5645a1ad687908782a2584a58956","message":"remove old parse_datetime_to_timestamp function","stats":{"files_changed":1,"insertions":0,"deletions":131,"files":["jc/utils.py"]}},{"commit":"c8655565ff8718f0f14d41696b81e6539529dde1","message":"use new timestamp class","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"]}},{"commit":"638f879f16c9e87edb60953f4fd0b1c7ad92f277","message":"use new timestamp class","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/dig.py"]}},{"commit":"1d221bf7e6128d57bd769c0fe8f37f7a94da8cd2","message":"use new timestamp class","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/who.py"]}},{"commit":"60ea71f0ef931dccf09e6eb0cb737ddad0b47f0c","message":"use new timestamp class","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/timedatectl.py"]}},{"commit":"d8bdd35a3f462efcdc871426309299e8aefb0a79","message":"use new timestamp class","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/stat.py"]}},{"commit":"7463891c53f3670710dfa72ed1422431c274fe4a","message":"use new timestamp class","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/last.py"]}},{"commit":"7537aec76fa07384c4439f34c50d4e3f001c0dfa","message":"use jc.utils.timestamp instead of jc.utils.parse_datetime_to_timestamp()","stats":{"files_changed":1,"insertions":8,"deletions":8,"files":["jc/parsers/date.py"]}},{"commit":"62234e39a8533362a20f106c64326ed69f430006","message":"use jc.utils.timestamp instead of jc.utils.parse_datetime_to_timestamp()","stats":{"files_changed":1,"insertions":5,"deletions":8,"files":["jc/parsers/upower.py"]}},{"commit":"be004b7b3fe9217160c6418907e7d8aad10e5fae","message":"make parse_datetime_to_timestamp function a class called timestamp for easier use","stats":{"files_changed":2,"insertions":172,"deletions":15,"files":["jc/utils.py","tests/test_utils.py"]}},{"commit":"82539444b24169b2eb762485ed032fc968a81f71","message":"fix indentation for int and float conversions. add real_time field to schema","stats":{"files_changed":2,"insertions":23,"deletions":21,"files":["docs/parsers/time.md","jc/parsers/time.py"]}},{"commit":"a571d3cbafd5048d1d59070e1791398ae410197f","message":"fix typo","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/time.md","jc/parsers/time.py"]}},{"commit":"a038c14c23ea27264df61a38e0301de8d1fa1b9a","message":"change microseconds to centiseconds","stats":{"files_changed":3,"insertions":8,"deletions":8,"files":["EXAMPLES.md","docs/parsers/time.md","jc/parsers/time.py"]}},{"commit":"25a85d874cd2b57a7700b0c2dca61132127732b1","message":"update docs","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iw_scan.py"]}},{"commit":"884c36ff42df4f580c8e2b4705def8e4c1182e39","message":"add /usr/bin/time parser","stats":{"files_changed":8,"insertions":536,"deletions":1,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","docs/parsers/iw_scan.md","docs/parsers/time.md","jc/cli.py","jc/parsers/time.py"]}},{"commit":"b98e72b8b4eda0ab5ede7725226e61634af572eb","message":"add ls parser info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]}},{"commit":"05885c0096b5ee142ecff2d17e37c446518998a0","message":"add epoch and epoch_utc timestamps","stats":{"files_changed":5,"insertions":931,"deletions":18,"files":["docs/parsers/ls.md","jc/parsers/ls.py","tests/fixtures/ubuntu-18.04/ls-l-iso.json","tests/fixtures/ubuntu-18.04/ls-l-iso.out","tests/test_ls.py"]}},{"commit":"4c9761231af897658c3a2c0abcc476aa8b43d1b3","message":"add when_epoch and when_epoch_utc fields","stats":{"files_changed":21,"insertions":118,"deletions":81,"files":["CHANGELOG","EXAMPLES.md","README.md","docs/parsers/dig.md","jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json"]}},{"commit":"656eaa150861948091ef9d6323805c2698039bc6","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"1560dcddcf82f55fffce22d1b46d372b25a9d0fd","message":"add acpi, upower parsers and -v version option","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"]}},{"commit":"08d4cd4870c7acaf3a453d1400b64d77d462437b","message":"add time calculations to acpi parser","stats":{"files_changed":7,"insertions":114,"deletions":43,"files":["EXAMPLES.md","docs/parsers/acpi.md","jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.json","tests/fixtures/generic/acpi-V2.json","tests/fixtures/generic/acpi-V3.json","tests/fixtures/generic/acpi-V4.json"]}},{"commit":"9767a50cededb140575e195abf79ce49c4f53789","message":"update who parser to add epoch naive timestamp","stats":{"files_changed":12,"insertions":48,"deletions":46,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/who.md","jc/parsers/who.py","jc/utils.py","tests/fixtures/centos-7.7/who-a.json","tests/fixtures/centos-7.7/who.json","tests/fixtures/osx-10.14.6/who-a.json","tests/fixtures/osx-10.14.6/who.json","tests/fixtures/ubuntu-18.04/who-a.json","tests/fixtures/ubuntu-18.04/who.json","tests/test_utils.py"]}},{"commit":"cd86890ed1493644e391e52e33561e9a77631a51","message":"add website to info and use variables for version info","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"]}},{"commit":"ba0dd3b9ca98a042c772898302fcfe5fdc84f79a","message":"add parse_timedate_to_timestamp test for format 7300","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["tests/test_utils.py"]}},{"commit":"8d7fa07ffd50f38336a448eb506a76d9d4849a6a","message":"unformat json","stats":{"files_changed":1,"insertions":1,"deletions":11,"files":["tests/fixtures/centos-7.7/timedatectl.json"]}},{"commit":"cade1bfe6e56b5926898b7204e911885efebd5a7","message":"update timedatectl tests for new epoch_utc field","stats":{"files_changed":2,"insertions":12,"deletions":2,"files":["tests/fixtures/centos-7.7/timedatectl.json","tests/fixtures/ubuntu-18.04/timedatectl.json"]}},{"commit":"daec4ab0a7f572e872b27b043d51f68e5e06300f","message":"add epoch_utc field to timedatectl parser","stats":{"files_changed":5,"insertions":20,"deletions":4,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/timedatectl.md","jc/parsers/timedatectl.py","jc/utils.py"]}},{"commit":"3c96bc319615c824a06c388e9e3c1d68a9bf4084","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"]}},{"commit":"7f7d8d4bd6f37015b11bac60a7bd99e8d3eca108","message":"update stat docs","stats":{"files_changed":2,"insertions":8,"deletions":0,"files":["docs/parsers/stat.md","jc/parsers/stat.py"]}},{"commit":"47263661a41987f334fd484e866e0aa8859cde5d","message":"update stat example","stats":{"files_changed":1,"insertions":18,"deletions":2,"files":["EXAMPLES.md"]}},{"commit":"4c42a086d206919dfe4f1c0801fe4fb1027cb1cd","message":"clean up debug code","stats":{"files_changed":1,"insertions":1,"deletions":6,"files":["jc/utils.py"]}},{"commit":"5d2541a5c4bc93f3943a491c76df7f8d4e2cf44b","message":"remove auto c locale and use a manual format rule for windows and linux compatibility","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/utils.py"]}},{"commit":"d91d170b49bfc88c0b2fb54475705c038172f1c8","message":"try manual c locale format for windows","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/utils.py"]}},{"commit":"6d1f4584a9ccd0f0f7ed4fdf408576a9e7f5046b","message":"try manually setting time format for windows compatibility","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"]}},{"commit":"1d76d96bcf4185cffb7066bec637913099399db5","message":"debug windows issue","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/utils.py"]}},{"commit":"e8847c998c91131acf5ee0f6485e9976c0fce3ae","message":"update stat tests","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["tests/fixtures/centos-7.7/stat.json","tests/fixtures/freebsd12/stat.json","tests/fixtures/osx-10.14.6/stat.json","tests/fixtures/ubuntu-18.04/stat.json"]}},{"commit":"da88e49bae2f3fecff623f52c20bf994b653583e","message":"add new examples","stats":{"files_changed":2,"insertions":69,"deletions":29,"files":["docs/parsers/stat.md","jc/parsers/stat.py"]}},{"commit":"65c3a12e5422782df40489c3c431677f5657dbf5","message":"simplify None data scenario","stats":{"files_changed":2,"insertions":35,"deletions":24,"files":["jc/parsers/stat.py","jc/utils.py"]}},{"commit":"d8d600cc36bde4e6216b935f87a765599e896714","message":"add reference to -h for help","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"507999b117b024fed1ccf067bd5dc411dbeb268c","message":"add stat command timestamp detection","stats":{"files_changed":3,"insertions":34,"deletions":19,"files":["docs/utils.md","jc/utils.py","tests/test_utils.py"]}},{"commit":"8ad164eb340e135eeeb10b721172916182f37e30","message":"fix tests for compact output","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_cli.py"]}},{"commit":"a507df140b245b83b1c46e8462b44e1145c42f2a","message":"add compact json info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]}},{"commit":"8912a99986a977ee6ca7bbe2368f5033644577b0","message":"make default json output more compact","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/cli.py"]}},{"commit":"1953f9882890cd0e8c515d43ce28c96f918b0ab4","message":"add version info. add json now supports unicode output","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"]}},{"commit":"7515218ddd2cdcfcebd67850140e842f2f121226","message":"use jc.utils for all warning and error messages. simply error and warning formatting.","stats":{"files_changed":2,"insertions":10,"deletions":14,"files":["jc/cli.py","jc/utils.py"]}},{"commit":"36c11201366cefedee4244fb71a4a9cc6507e6ae","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]}},{"commit":"8fa0fe64d8418093c7f28cdc70a7f409956aeb04","message":"add -v to helptext. minor formatting","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"]}},{"commit":"c1a8201b140c65579ff9f8427322b67653bf3006","message":"add copyright","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["EXAMPLES.md"]}},{"commit":"398bbac48c8a716b1872843d671aa6ceaeba6a78","message":"simplify return value for parse_datetime_to_timestamp()","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]}},{"commit":"ea71a42bbdd9b09a457727cfe763054625f7901a","message":"formatting","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/cli.py"]}},{"commit":"1c16d25b17a7282a62a5ebd9755df5569c57435f","message":"add version option (-v) and copyright information. add 'ensure_ascii=False' to json dumps to properly show UTF-8 copyright character","stats":{"files_changed":2,"insertions":30,"deletions":9,"files":["README.md","jc/cli.py"]}},{"commit":"9d12ded889f656656267cbf7a91d71267201f736","message":"help description change","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"5312701515ecb3a10598bb9dcf2f73b7eae71b93","message":"add - make all external python requirements optional","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]}},{"commit":"808c7bc0a94ecfd160ee2b257e5feec347829a5e","message":"make xmltodict library optional","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/xml.py"]}},{"commit":"4d394015f458f284d052ce2c1a0c8492916c5b3e","message":"make ruamel.yaml library optional","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/yaml.py"]}},{"commit":"3638298af8ebc01d54aa3ab5668d0adedca957e5","message":"make pygments library optional","stats":{"files_changed":1,"insertions":53,"deletions":44,"files":["jc/cli.py"]}},{"commit":"5f00973e400629bd68c0ab60ed9005410278f855","message":"remove parenthesis to normalize text for naive timezone detection","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/date.py"]}},{"commit":"0f6e2c14fcb69f664c29083ec5207326f842dfdc","message":"simplify timestamp failure logic","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/parsers/upower.py"]}},{"commit":"51813da61994226ba40478825d47f80c23413349","message":"add offset timezones. fix timestamp logic on conversion failure","stats":{"files_changed":1,"insertions":9,"deletions":4,"files":["jc/parsers/date.py"]}},{"commit":"e7751322ea195cac7f1921ba8e0364c442065d20","message":"formatting","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/iw_scan.py"]}},{"commit":"26ef29843784ade3d55410be13300dd6f4c06890","message":"change return to always include the entire object but all keys may be None if conversion fails","stats":{"files_changed":1,"insertions":10,"deletions":6,"files":["jc/utils.py"]}},{"commit":"badaf8ce73d7deb0ec2be244e27b4bf8cddbea19","message":"comment formatting","stats":{"files_changed":1,"insertions":14,"deletions":14,"files":["jc/utils.py"]}},{"commit":"b123a622039f3cc32643a3bfc0766154d660f8bc","message":"move locale change formats to the end of the list","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/utils.py"]}},{"commit":"cfd77e42522aa2ebeada9f45ac99bd1d3414f782","message":"reset locale to None on exception","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/utils.py"]}},{"commit":"38f814072eac5370059f1b4203316eee41cf535b","message":"better normalization of datetime string. better UTC detection. More formats supported with detected locale.","stats":{"files_changed":1,"insertions":26,"deletions":8,"files":["jc/utils.py"]}},{"commit":"a0db7754e384a0c95f2099bf894f3a22bd33c002","message":"add nixos install info","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"f07620afc7dc0d0d605eb483ef36c5979b33cdfd","message":"move version to jc.__init__.py add -h option for help instead of always showing on error use jc.utils.error_message for the following errors: missing/incorrect arguments, parser not found, missing piped data","stats":{"files_changed":3,"insertions":18,"deletions":7,"files":["README.md","jc/__init__.py","jc/cli.py"]}},{"commit":"c1b0d27752726989c6051f683a1194941bee598c","message":"remove old commented commands","stats":{"files_changed":1,"insertions":0,"deletions":10,"files":["runtests.sh"]}},{"commit":"430a5108aa265d4df0e4584eade54759da864c61","message":"move all tests to github actions","stats":{"files_changed":3,"insertions":19,"deletions":60,"files":["runtests.sh","tests/test_last.py","tests/test_last2.py"]}},{"commit":"111ce92fc9c33b82c7d1a1664dda046ea5993f6a","message":"attempt all tests in github actions with timezone correction","stats":{"files_changed":4,"insertions":0,"deletions":1,"files":["tests/{localtest_date.py => test_date.py}","tests/{localtest_last.py => test_last2.py}","tests/{localtest_upower.py => test_upower.py}","tests/test_utils.py"]}},{"commit":"c851e8a58d98b2a4907cf1e7cf7c7d8d8dc04dc6","message":"force github action","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_utils.py"]}},{"commit":"39f4bcd9b41450068903ea2843508586eccdf709","message":"Change Windows timezone","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]}},{"commit":"4a610c4c81493788b8351e8c74aabe819c981c02","message":"force github action","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["tests/test_utils.py"]}},{"commit":"89ee11945d4e2db107a33ef0d61e0c6015ac8ad7","message":"Change timezone provider","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]}},{"commit":"dadb09b74a69d1852f8433e0e32ccdd67bd91181","message":"force github action","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_utils.py"]}},{"commit":"1b1f638b97dc5e6f2767183eb363b79ae3c9b3c7","message":"Change timezone change provider","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":[".github/workflows/pythonapp.yml"]}},{"commit":"794fc4ed44d1565514303090403d68ba5d639cb3","message":"add parse_datetime_to_timestamp() tests","stats":{"files_changed":2,"insertions":36,"deletions":8,"files":["jc/utils.py","tests/test_utils.py"]}},{"commit":"72f735bf9211d7beddcf58819fe465722f5d7c5a","message":"Set Timezone to America/Los_Angeles","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":[".github/workflows/pythonapp.yml"]}},{"commit":"912877f25ad562ed4cafe7b2d7446bd48b477ea2","message":"additional timezone info","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"2772c5ae436ea437d833003372d53a3d3f955ea0","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]}},{"commit":"a7ad24d2cb61d84cf2846f8fa43af31f0597043e","message":"Add dir parser","stats":{"files_changed":13,"insertions":772,"deletions":0,"files":["docgen.sh","docs/parsers/dir.md","jc/cli.py","jc/parsers/dir.py","tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-C.out","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-ODTC.out","tests/fixtures/windows-10/dir-Q.json","tests/fixtures/windows-10/dir-Q.out","tests/fixtures/windows-10/dir.json","tests/fixtures/windows-10/dir.out","tests/test_dir.py"]}},{"commit":"a364a6a9faeb6aa290b790f3dec74e92b8670534","message":"add note regarding calculated timestamps","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"]}},{"commit":"7b2dc86a8d974e7984fe2540f56a66c2b9386acd","message":"update last example with new timestamp fields","stats":{"files_changed":1,"insertions":23,"deletions":19,"files":["EXAMPLES.md"]}},{"commit":"ad645636d07d0423253f19068a22b2a28251b05f","message":"update uptime docs","stats":{"files_changed":5,"insertions":86,"deletions":50,"files":["CHANGELOG","EXAMPLES.md","README.md","docs/parsers/uptime.md","jc/parsers/uptime.py"]}},{"commit":"2f2f297b29fbe3172647a81db084b3564a441d40","message":"update uptime fixtures with new fields","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["tests/fixtures/centos-7.7/uptime.json","tests/fixtures/osx-10.11.6/uptime.json","tests/fixtures/osx-10.14.6/uptime.json","tests/fixtures/ubuntu-18.04/uptime.json"]}},{"commit":"099ae3fde03f8157298f6b412bdddb8bd56da09a","message":"fix issue when there is no data","stats":{"files_changed":1,"insertions":26,"deletions":22,"files":["jc/parsers/uptime.py"]}},{"commit":"e9febe98ac5ec0e03791c5b6794446a2c3312fb1","message":"add localtest partition lines for readability","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["runtests.sh"]}},{"commit":"5fbd07cccf9fb697b996dcc3949eef5b1c09e655","message":"rewrite of uptime parser including new fields","stats":{"files_changed":1,"insertions":59,"deletions":26,"files":["jc/parsers/uptime.py"]}},{"commit":"5fed4698c2c1f1b7e05c5b4c51639f818e049b53","message":"update docs and version number","stats":{"files_changed":2,"insertions":5,"deletions":6,"files":["docs/parsers/last.md","jc/parsers/last.py"]}},{"commit":"ed7eb0983a4dfcc1d66a2957be3e10b2203d909e","message":"use parse_datetime_to_timestamp function instead of custom format string","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/last.py"]}},{"commit":"90c7e18e5fc5ea9fcf6157cc2656f47193d78411","message":"update date example","stats":{"files_changed":1,"insertions":16,"deletions":11,"files":["EXAMPLES.md"]}},{"commit":"953ab5c3bd0c8b6eef29b717edaf1aa2380c2b93","message":"make upower tests local only","stats":{"files_changed":2,"insertions":1,"deletions":0,"files":["runtests.sh","tests/{test_upower.py => localtest_upower.py}"]}},{"commit":"699c97d8a07f7575454746159ac4d19981cd1a5c","message":"add last parser info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]}},{"commit":"e4ca0de92a689ce93b91d86106a5da590226855a","message":"add upower tests","stats":{"files_changed":8,"insertions":100,"deletions":0,"files":["tests/fixtures/generic/upower-i-c-locale.json","tests/fixtures/generic/upower-i-non-utc.json","tests/fixtures/generic/upower-i-utc.json",".../{upower-i-utc.out2 => upower-i-utc.out}","tests/fixtures/ubuntu-18.04/upower-d-clocale.json","tests/fixtures/ubuntu-18.04/upower-d.json","tests/fixtures/ubuntu-18.04/upower-i.json","tests/test_upower.py"]}},{"commit":"04745a36b84cc79e56bde2a0e92a4ee9ab4a1538","message":"doc update","stats":{"files_changed":2,"insertions":8,"deletions":5,"files":["CHANGELOG","jc/utils.py"]}},{"commit":"5936940532b8b753e67c9f5cd9287f34cc84ae9f","message":"rewrite of date parser using datetime library","stats":{"files_changed":7,"insertions":136,"deletions":186,"files":["docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date-after-midnight.json","tests/fixtures/generic/date-before-midnight.json","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/fixtures/ubuntu-20.04/date2.json"]}},{"commit":"b3eb064b6753d6e894884e1c16054630c2396fe1","message":"clarify format definition comments","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"]}},{"commit":"e4b41057e302074ac2a81ad8c36b6f95cd6b7db2","message":"update upower fixture names","stats":{"files_changed":3,"insertions":24,"deletions":0,"files":[".../{upower-i.out => upower-i-c-locale.out}","tests/fixtures/generic/upower-i-non-utc.out",".../generic/{upower-i2.out => upower-i-utc.out2}"]}},{"commit":"1d41c46cc762ab0c78b819e56db7df39f1111d5d","message":"normalize datetime string to remove all timezones except UTC","stats":{"files_changed":1,"insertions":34,"deletions":5,"files":["jc/utils.py"]}},{"commit":"a5c444587b3f0874fcc2833dc4e759c2dc1c7834","message":"add before and after midnight date tests","stats":{"files_changed":5,"insertions":28,"deletions":0,"files":["tests/fixtures/generic/date-after-midnight.json","tests/fixtures/generic/date-after-midnight.out","tests/fixtures/generic/date-before-midnight.json","tests/fixtures/generic/date-before-midnight.out","tests/localtest_date.py"]}},{"commit":"a56f471be980be16e73d3a91e2b12aad26c6d38c","message":"update fixture to use UTC for better testing","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/fixtures/generic/upower-i2.out"]}},{"commit":"6a6b26ed8d97014c2a5c7d91a4cd9b23f49530fb","message":"fix 12 to 24 hour conversion for midnight cases","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/date.py"]}},{"commit":"f62446c152d89f2d37b22ffe9d9de5b5c9fa7049","message":"rename variables. add another european time format","stats":{"files_changed":1,"insertions":11,"deletions":10,"files":["jc/utils.py"]}},{"commit":"56011f1f172344cab2a8e869e7a6df6e45c45874","message":"updated upower examples","stats":{"files_changed":3,"insertions":73,"deletions":6,"files":["EXAMPLES.md","docs/parsers/upower.md","jc/parsers/upower.py"]}},{"commit":"6d44091c80318fde6c09cd850e6dc5afde7fe799","message":"refactor parse_datetime_to_timestamp()","stats":{"files_changed":1,"insertions":13,"deletions":53,"files":["jc/utils.py"]}},{"commit":"440c458eb42925dffe2d7b026279468fa2fa1bb7","message":"no need for ternary clause","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]}},{"commit":"798250af6116441385339806c8f26bc9720ad302","message":"use jc.utils.parse_datetime_to_timestamp() function for timestamp creation","stats":{"files_changed":2,"insertions":18,"deletions":24,"files":["docs/parsers/upower.md","jc/parsers/upower.py"]}},{"commit":"c762de29c6491790908451aa20f6aa12fdfa9722","message":"doc updates","stats":{"files_changed":2,"insertions":32,"deletions":2,"files":["docs/utils.md","jc/utils.py"]}},{"commit":"0701e65e97165efd40ab2ae5087897de3588ea32","message":"add parse_datetime_to_timestamp() function","stats":{"files_changed":1,"insertions":106,"deletions":0,"files":["jc/utils.py"]}},{"commit":"209d54e8b5be6476d896cee1a5274bd2b46219e2","message":"add hour_24 to schema docs","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/parsers/date.md","jc/parsers/date.py"]}},{"commit":"2b38462de7d2fa61dd5d2a184e853279f1a9c84b","message":"update examples","stats":{"files_changed":3,"insertions":33,"deletions":27,"files":["EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py"]}},{"commit":"1e8e5533162cb01053ee25e9dbc709a429e58070","message":"add hour_24 field","stats":{"files_changed":6,"insertions":31,"deletions":14,"files":["CHANGELOG","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/fixtures/ubuntu-20.04/date2.json","tests/localtest_date.py"]}},{"commit":"ab42e6bb15026d6c46e15197c62bc3e8ef95c80d","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/date.md","jc/parsers/date.py"]}},{"commit":"680288454090f3c48c7f0580cdcb919c0b5a883e","message":"ensure period is always uppercase in dict value. update period documentation","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["docs/parsers/date.md","jc/parsers/date.py"]}},{"commit":"7cb8577b9655f258f2910e7e7bcf3266d4cbece0","message":"correct epoch_utc calculation. Fix for 12 hour vs. 24 hour representation","stats":{"files_changed":3,"insertions":70,"deletions":48,"files":["docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/ubuntu-20.04/date2.out"]}},{"commit":"55810ccd1f17ef6a4b1cb72fc21f6cf990ef8bb3","message":"set epoch_dt conversion again if not C locale","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/upower.py"]}},{"commit":"f9921720cd0b9b0d76d66e6eb5bfe43481f5f52b","message":"revert to local testing for naive datetime objects","stats":{"files_changed":3,"insertions":4,"deletions":94,"files":["runtests.sh","tests/test_date.py","tests/test_last2.py"]}},{"commit":"cda1ebd271aa8fd1b716054a2149f876d8087230","message":"try tzset()","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["tests/test_date.py","tests/test_last2.py"]}},{"commit":"6901e4a23aad0b58cbbfac86c61917115d115dfe","message":"try setting timezone env variable before tests to ensure it is the same on all test systems","stats":{"files_changed":3,"insertions":89,"deletions":3,"files":["runtests.sh","tests/test_date.py","tests/test_last2.py"]}},{"commit":"6bc21d3c735edc7897e49afd2a5ea9e3aa56d7fb","message":"fix date parser tests - local tests only since timezones may not match on github actions VMs","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["runtests.sh","tests/{test_date.py => localtest_date.py}","tests/localtest_last.py"]}},{"commit":"1ef231e26a2898d2a01f341fb92014df92703f72","message":"add date parser updates","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]}},{"commit":"3cd43f0f985a3b8a4e74bf5632bd8dac92d751c4","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/upower.md","jc/parsers/upower.py"]}},{"commit":"156501996688e62dd61a8456206218582a6cbe1b","message":"fix weekday numbering to be ISO 8601 compliant. Add naive calculated epoch timestamp field","stats":{"files_changed":5,"insertions":85,"deletions":63,"files":["EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json"]}},{"commit":"0a4de2d3a1c235d1ac2d6e59346e77761fe51885","message":"add naive datetime calculation info to docs","stats":{"files_changed":2,"insertions":5,"deletions":2,"files":["docs/parsers/last.md","docs/parsers/upower.md"]}},{"commit":"a058f6c174e31f5e6040883bb544b83abd88c749","message":"added naive epoch calculation info to docs","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/last.py"]}},{"commit":"d8e5d03b01a87704424f5259cf6bd977274fd6ee","message":"naive updated_epoch timestamp calculation added","stats":{"files_changed":1,"insertions":20,"deletions":33,"files":["jc/parsers/upower.py"]}},{"commit":"9dc62eff2eaaafec89c5b8797d8ca8e4c77a07d4","message":"remove epoch conversions","stats":{"files_changed":1,"insertions":34,"deletions":21,"files":["jc/parsers/upower.py"]}},{"commit":"d4fea17c57a97d6914624b06208b9439bf2eb05f","message":"use UTC when calculating epoch timestamp. reset time locale to default after changing","stats":{"files_changed":3,"insertions":13,"deletions":6,"files":["docgen.sh","docs/parsers/upower.md","jc/parsers/upower.py"]}},{"commit":"3dd7a5b77ea708047bc12be9f2caddd9078723f1","message":"add upower docs","stats":{"files_changed":2,"insertions":230,"deletions":0,"files":["docgen.sh","docs/parsers/upower.md"]}},{"commit":"d77c90a3ba2036b216f4a612876ace988eafd217","message":"fix quoted values in detail level. Add examples","stats":{"files_changed":1,"insertions":114,"deletions":6,"files":["jc/parsers/upower.py"]}},{"commit":"01f0c20df09fd4aa12bd108928b97376b51ef31a","message":"add sample using C locale timestamp","stats":{"files_changed":1,"insertions":27,"deletions":0,"files":["tests/fixtures/ubuntu-18.04/upower-d-clocale.out"]}},{"commit":"aafbe576b3b754de91591d9ec2dae9e9f827dee4","message":"working parser and processor","stats":{"files_changed":1,"insertions":137,"deletions":36,"files":["jc/parsers/upower.py"]}},{"commit":"bd68ad40345fb1f69be0e0f87dc67134f826cd06","message":"don't modify detail_type value since it is no longer a key","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/upower.py"]}},{"commit":"bfee017c138bb30ec6af836685013b7124028974","message":"made the schema more explicit by hardcoding more items. still working on the schema","stats":{"files_changed":1,"insertions":61,"deletions":20,"files":["jc/parsers/upower.py"]}},{"commit":"61f532cfd0b7fbf14a58a0fd638bcbfb03fbde72","message":"working history list","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["jc/parsers/upower.py"]}},{"commit":"58dbbb75b607d0b29be185c3b8c3f0d8af21ecad","message":"simplified logic","stats":{"files_changed":1,"insertions":9,"deletions":21,"files":["jc/parsers/upower.py"]}},{"commit":"8d88b91fcf5060d7d54f687efec3e3a606bab767","message":"move if statements and generalize the history detail detection","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/upower.py"]}},{"commit":"ad39fc60299089f56f37baac71820e50cbe87ed3","message":"working upower parser. history lines are ignored","stats":{"files_changed":6,"insertions":268,"deletions":0,"files":["jc/cli.py","jc/parsers/upower.py","tests/fixtures/generic/upower-i.out","tests/fixtures/generic/upower-i2.out","tests/fixtures/ubuntu-18.04/upower-d.out","tests/fixtures/ubuntu-18.04/upower-i.out"]}},{"commit":"89f1fd96e6b7aa0acf6272e4f3469005d4f7c6bf","message":"add acpi tests","stats":{"files_changed":6,"insertions":87,"deletions":0,"files":["tests/fixtures/generic/acpi-V.json","tests/fixtures/generic/acpi-V2.json","tests/fixtures/generic/acpi-V3.json","tests/fixtures/generic/acpi-V4.json","tests/fixtures/ubuntu-18.04/acpi-V.json","tests/test_acpi.py"]}},{"commit":"bd425f2493b68949c1fa02cd1d3289ec882d9b0d","message":"version bump to v1.15.0. Add acpi docs","stats":{"files_changed":6,"insertions":321,"deletions":2,"files":["CHANGELOG","EXAMPLES.md","docgen.sh","docs/parsers/acpi.md","jc/cli.py","setup.py"]}},{"commit":"46962ff02a0630766a927babc92e11ec91b1f789","message":"remove redundant lines","stats":{"files_changed":1,"insertions":1,"deletions":11,"files":["jc/parsers/acpi.py"]}},{"commit":"e4cb88b05166815e8ad03b646bd3f2b1da7f0d4b","message":"remove unneeded line-state assignment","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/acpi.py"]}},{"commit":"32840703dc1d88412712b08db1c9bdaebbc34450","message":"remove redundant code","stats":{"files_changed":1,"insertions":8,"deletions":39,"files":["jc/parsers/acpi.py"]}},{"commit":"1f7aafd0415a79e0547cc6f1c008c1918f8fb460","message":"fix for full charge batter case. Clean up battery object logic","stats":{"files_changed":3,"insertions":19,"deletions":9,"files":["jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out","tests/fixtures/generic/acpi-V4.out"]}},{"commit":"7378d5dce43f75440cb57903e8ae0c1c615b0782","message":"remove comment","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/acpi.py"]}},{"commit":"84f76866cdf76f67b34de999fd987de8a02f0306","message":"working process function","stats":{"files_changed":1,"insertions":197,"deletions":3,"files":["jc/parsers/acpi.py"]}},{"commit":"322da9ea6a1ceea1152d720797adb8f3a7dc1199","message":"working parser","stats":{"files_changed":2,"insertions":59,"deletions":12,"files":["jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out"]}},{"commit":"58645301ec111bfeb2a618f5f169cc734042dc5f","message":"add acpi command parser","stats":{"files_changed":6,"insertions":236,"deletions":1,"files":["jc/cli.py","jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out","tests/fixtures/generic/acpi-V2.out","tests/fixtures/generic/acpi-V3.out","tests/fixtures/ubuntu-18.04/acpi-V.out"]}},{"commit":"1e18dd30a824b0463f0cad86e0da7094c47d34f9","message":"Merge pull request #102 from kellyjonbrazil/dev"},{"commit":"cc6a19adccea3e10243a166b87d852b6f95414b5","message":"fix typo in comments","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/yaml.py"]}},{"commit":"2a5588b177a24d5b78a4b5a515aba515804b7baa","message":"packaging fix for yaml parser and pyoxidizer","stats":{"files_changed":4,"insertions":13,"deletions":3,"files":["CHANGELOG","jc/cli.py","jc/parsers/yaml.py","setup.py"]}},{"commit":"20f9b7f88b97ed68aba46e102b8c7b72443b9c85","message":"fix typo","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]}},{"commit":"d7e32313cd9776b4a6af38cc2819d6e4ef8c0d55","message":"fix typo","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]}},{"commit":"fb5654d3c4549e84940e2518f2d214debdd42d51","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"258f1433b36a7ee117ac43953edb4fe964603e7b","message":"add locale info to readme","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]}},{"commit":"fb723ae8bd7bb51f9a4bab380ec1bc54cda0445b","message":"Merge pull request #101 from kellyjonbrazil/dev"},{"commit":"283b89e37c38a3082203e43e38569c8b0bb11e12","message":"simplify answer data logic","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["CHANGELOG","jc/parsers/dig.py"]}},{"commit":"f450f9eb8b7d382af316e88301e72af01a018be9","message":"add hciconfig tests","stats":{"files_changed":5,"insertions":74,"deletions":0,"files":["tests/fixtures/centos-7.7/hciconfig-a.json","tests/fixtures/centos-7.7/hciconfig.json","tests/fixtures/ubuntu-20.04/hciconfig-a.json","tests/fixtures/ubuntu-20.04/hciconfig.json","tests/test_hciconfig.py"]}},{"commit":"b3f8cf99a4874335c6b43e105e0c1562c08256dc","message":"work for both tabs and spaces","stats":{"files_changed":1,"insertions":15,"deletions":15,"files":["jc/parsers/hciconfig.py"]}},{"commit":"4301ea8caea7c14f59bcddf09668d0198e1115a8","message":"remove debug line","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/hciconfig.py"]}},{"commit":"c672d1c174a42ce44544dfaec0ebcf3c30fd7acf","message":"initial working hciconfig parser","stats":{"files_changed":7,"insertions":903,"deletions":22,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","docs/parsers/hciconfig.md","jc/parsers/hciconfig.py","man/jc.1"]}},{"commit":"229e953a38471cdd41af0810577d324329840a4b","message":"initial add of hciconfig parser","stats":{"files_changed":7,"insertions":205,"deletions":2,"files":["jc/cli.py","jc/parsers/hciconfig.py","setup.py","tests/fixtures/centos-7.7/hciconfig-a.out","tests/fixtures/centos-7.7/hciconfig.out","tests/fixtures/ubuntu-20.04/hciconfig-a.out","tests/fixtures/ubuntu-20.04/hciconfig.out"]}},{"commit":"87b506dc9b4831d11b4fd04fd6849532db074f90","message":"fix for spaces in dig answer data","stats":{"files_changed":7,"insertions":47,"deletions":4,"files":["CHANGELOG","jc/cli.py","jc/parsers/dig.py","setup.py","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/generic/dig-answer-spaces.out","tests/test_dig.py"]}},{"commit":"15c9002d9eff0f52d873fb3ab35dfafd03a8e919","message":"simplify logic by taking out 'not' in JC_COLORS parsing","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]}},{"commit":"042aaa61b96fc8472a8a460c49bde4cbbc359094","message":"minor updates","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]}},{"commit":"ef856c6ba5774cd8ec23acd71496846e794e3872","message":"clarify -q option","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"9cf5be73e3f975132d1ffbef412638b941a5664f","message":"typo fix","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]}},{"commit":"63fc149e2a097cbde60c2ce1aeb102d9becabd9b","message":"typo fix","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]}},{"commit":"3c25839350800c7e7d2c48fc032bb21efa0ac213","message":"Merge pull request #98 from kellyjonbrazil/dev"},{"commit":"58246e33b71bae0ca4a42ad5bdf31134948b1014","message":"update compatibility info and changelog date","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","README.md"]}},{"commit":"8b1407c7068e2105a83992bbb026138ea67bc07c","message":"pull env-specific tests from CI/CD and run locally only","stats":{"files_changed":3,"insertions":59,"deletions":10,"files":["runtests.sh","tests/localtest_last.py","tests/test_last.py"]}},{"commit":"2fde4a4e2299b98a9958e3a55849c6791e4b17dc","message":"doc updates","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["EXAMPLES.md","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]}},{"commit":"60b9e9798286121399d0f8b75d63ab0f3312c9bf","message":"last parser enhancements: augment hostname with CONSOLE for GUI login, add convenience fields when -F is used: login_epoch, logout_epoch, duration_seconds, calculate duration to hours:minutes","stats":{"files_changed":12,"insertions":80,"deletions":38,"files":["docs/parsers/last.md","jc/parsers/last.py","tests/fixtures/centos-7.7/last-crash.json","tests/fixtures/centos-7.7/last-w.json","tests/fixtures/centos-7.7/last-wF.json","tests/fixtures/centos-7.7/last-wF.out","tests/fixtures/centos-7.7/last.json","tests/fixtures/fedora32/last.json","tests/fixtures/osx-10.14.6/last.json","tests/fixtures/ubuntu-18.04/last-w.json","tests/fixtures/ubuntu-18.04/last.json","tests/fixtures/ubuntu-20.04/last-F.json"]}},{"commit":"0adac79c0f2a22b31dfef1432a029af06132467b","message":"Add last parser enhancements","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]}},{"commit":"9f485b5981a2ce49ac699b9dad39993c5605ae18","message":"change mac_address fieldname to bssid. Add credit to Phillip","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["jc/parsers/iw_scan.py","tests/fixtures/centos-7.7/iw-scan0.json","tests/fixtures/centos-7.7/iw-scan1.json"]}},{"commit":"db17d21b8f9b2f899760e648f1483d33d0bcf47a","message":"Merge pull request #97 from pschmitt/iw_scan_fix_space_detection"},{"commit":"996d394e89c732f327323ca340fce405bd5fb2e4","message":"iw_scan: Improve detection of lines starting with spaces","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/iw_scan.py"]}},{"commit":"5885b960f9b33a95ecec9f4a33233c2f8682fbc4","message":"doc updates","stats":{"files_changed":3,"insertions":7,"deletions":2,"files":["CHANGELOG","README.md","man/jc.1"]}},{"commit":"79987b35f332e287567e103f25cf91cb50e040c0","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"]}},{"commit":"661b3ef311ad26678030c70c11f2f955667311a4","message":"doc updates","stats":{"files_changed":4,"insertions":94,"deletions":2,"files":["EXAMPLES.md","README.md","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]}},{"commit":"fb422726a8366c7133f0712d3b05a26620eea785","message":"update test to add 'down' condition","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["tests/fixtures/ubuntu-20.04/last-F.json","tests/fixtures/ubuntu-20.04/last-F.out"]}},{"commit":"4fb6f3ea59c52515926a51a006e65a1c18e57720","message":"add support for down in addition to crash","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/last.py"]}},{"commit":"f78fe771e1c2fb4691858fa7f27b1febe5f8c6c0","message":"add iw-scan tests","stats":{"files_changed":3,"insertions":48,"deletions":0,"files":["tests/fixtures/centos-7.7/iw-scan0.json","tests/fixtures/centos-7.7/iw-scan1.json","tests/test_iw_scan.py"]}},{"commit":"567b8872538ac9f6b384b98741acd9794229d513","message":"doc updates","stats":{"files_changed":3,"insertions":252,"deletions":12,"files":["docgen.sh","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]}},{"commit":"e516e6b9466b29d40ec10070dd61551180eeef90","message":"fix country/environment fields and process int/float conversions","stats":{"files_changed":1,"insertions":29,"deletions":1,"files":["jc/parsers/iw_scan.py"]}},{"commit":"62748676aae3d5955191ed267215df33a5bd3a4d","message":"initial iw-scan parser","stats":{"files_changed":2,"insertions":225,"deletions":0,"files":["jc/cli.py","jc/parsers/iw_scan.py"]}},{"commit":"7351c72e45242b9eb08c51dea7b6fccf12366dfd","message":"add fixes and tests for entries that contain 'crash'","stats":{"files_changed":6,"insertions":402,"deletions":1,"files":["jc/parsers/last.py","tests/fixtures/centos-7.7/last-crash.json","tests/fixtures/centos-7.7/last-crash.out","tests/fixtures/centos-7.7/last-wF.json","tests/fixtures/centos-7.7/last-wF.out","tests/test_last.py"]}},{"commit":"2b7405c5e21db2488fc48b58f6c65cff947ca95d","message":"doc updates","stats":{"files_changed":5,"insertions":23,"deletions":16,"files":["CHANGELOG","README.md","docs/parsers/last.md","jc/parsers/last.py","man/jc.1"]}},{"commit":"e2c77cb935a5bd95dbe930d424e5a02e88e1fa76","message":"add test for last -F output","stats":{"files_changed":3,"insertions":15,"deletions":1,"files":["jc/parsers/last.py","tests/fixtures/ubuntu-20.04/last-F.json","tests/test_last.py"]}},{"commit":"7ac621e4c916373a03f379425033cb2d81a03578","message":"add -F support","stats":{"files_changed":3,"insertions":36,"deletions":6,"files":["docs/parsers/last.md","jc/parsers/last.py","tests/fixtures/ubuntu-20.04/last-F.out"]}},{"commit":"d8b5d6c66ced19dc16f2b4975d2293a903732ffe","message":"version bump to 1.14.1","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/cli.py","setup.py"]}},{"commit":"22b461eb4b1ca86ea9e8c1fde8a2c312d1526b5f","message":"Add period field for en_US.UTF-8 locale","stats":{"files_changed":7,"insertions":47,"deletions":12,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/test_date.py"]}},{"commit":"b37ee8555a2a108625a834a7990bc3320e79b08d","message":"changelog update","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["CHANGELOG"]}},{"commit":"1d0ad2f045733c5c690738d49951fdb9bcd3d66d","message":"doc fixes","stats":{"files_changed":123,"insertions":312,"deletions":312,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat_freebsd_osx.py","jc/parsers/netstat_linux.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]}},{"commit":"ceccfb2c815f57f1b6fd81f891d8b495de23f9f5","message":"add test output for iw-scan and date on ubuntu 20.04","stats":{"files_changed":3,"insertions":2036,"deletions":0,"files":["tests/fixtures/centos-7.7/iw-scan0.out","tests/fixtures/centos-7.7/iw-scan1.out","tests/fixtures/ubuntu-20.04/date.out"]}},{"commit":"03c02953cd7e3327b391f799c37a2990eb2cb24c","message":"add wc doc","stats":{"files_changed":2,"insertions":96,"deletions":0,"files":["docgen.sh","docs/parsers/wc.md"]}},{"commit":"f254a0eaa16fcda316f7a75424ee359058204b03","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"9e3b88727cd439e15f235dddb9dd5796e010797a","message":"Merge pull request #91 from kellyjonbrazil/dev"},{"commit":"b12217466e906829d19be4cfd80dfe7cf4008e57","message":"spelling","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]}},{"commit":"8b9c932f9b05295e63b3e7d0073f243458fd4dd9","message":"update date","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]}},{"commit":"5986ce03db6fcd1aa0f7b064eaa96c2120c06d2d","message":"add printenv info","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"a7b0e936e400d2f9e55629e2d722cc002e035e9f","message":"add vdir and printenv info","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]}},{"commit":"cb0221142455a6bcb904fbe9ade657be45815b63","message":"add wc tests","stats":{"files_changed":4,"insertions":61,"deletions":2,"files":["jc/parsers/wc.py","tests/fixtures/osx-10.14.6/wc-stdin.json","tests/fixtures/osx-10.14.6/wc-stdin.out","tests/test_wc.py"]}},{"commit":"bd443bf39227515ae5f8df65d07b30268dcc90a9","message":"add printenv to env docs","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/env.py"]}},{"commit":"1f547edd361e66b19ccbcb59f6ba0ae78f6080ce","message":"add printenv to env docs","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/env.md"]}},{"commit":"e4bac3a493705b09e301ddc90dd1b0cee7467c3f","message":"add wc parser","stats":{"files_changed":9,"insertions":378,"deletions":0,"files":["CHANGELOG","EXAMPLES.md","README.md","jc/cli.py","jc/parsers/wc.py","tests/fixtures/centos-7.7/wc.json","tests/fixtures/centos-7.7/wc.out","tests/fixtures/osx-10.14.6/wc.json","tests/fixtures/osx-10.14.6/wc.out"]}},{"commit":"5e6bfa681aff03fbd683f81a9f4daa56b49d1344","message":"add vdir info","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["README.md","docs/parsers/ls.md","jc/parsers/ls.py"]}},{"commit":"276160125e01553c75eaad68530177bcf4f9004d","message":"add new commands to README","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"]}},{"commit":"d4ae5543f2d5f28a0db5b8e2e19993c21c5d960c","message":"add hash tests","stats":{"files_changed":3,"insertions":39,"deletions":0,"files":["tests/fixtures/centos-7.7/hash.json","tests/fixtures/centos-7.7/hash.out","tests/test_hash.py"]}},{"commit":"55f360e267fdfcfef0c124ed6b88535cc181a8b0","message":"add hash command parser","stats":{"files_changed":6,"insertions":260,"deletions":0,"files":["CHANGELOG","EXAMPLES.md","docgen.sh","docs/parsers/hash.md","jc/cli.py","jc/parsers/hash.py"]}},{"commit":"fdedab2a0cf5af15df5803d87302397dd6d71741","message":"description updates","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/cksum.py","jc/parsers/hashsum.py"]}},{"commit":"a9be42e3031ab0d697cff67a9e384caa2265a3ad","message":"specify parser warnings for quiet option","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"6da9510e46e84ec1cb93384825184d2996cf0e08","message":"add cksum tests","stats":{"files_changed":9,"insertions":482,"deletions":0,"files":["tests/fixtures/centos-7.7/cksum.json","tests/fixtures/centos-7.7/cksum.out","tests/fixtures/centos-7.7/sum.json","tests/fixtures/centos-7.7/sum.out","tests/fixtures/osx-10.14.6/cksum.json","tests/fixtures/osx-10.14.6/cksum.out","tests/fixtures/osx-10.14.6/sum.json","tests/fixtures/osx-10.14.6/sum.out","tests/test_cksum.py"]}},{"commit":"0431798178740b03cdefececc6df958e5adf62fc","message":"add cksum parser","stats":{"files_changed":7,"insertions":229,"deletions":3,"files":["CHANGELOG","docgen.sh","docs/parsers/cksum.md","docs/parsers/hashsum.md","jc/cli.py","jc/parsers/cksum.py","jc/parsers/hashsum.py"]}},{"commit":"62432f3c484e74acb2b2dfd15d448b3f1b5d53c4","message":"update hashsum description","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/hashsum.py"]}},{"commit":"9fbbc30906b597e6afaf2030015a7a694d85f79e","message":"add supported commands to docs","stats":{"files_changed":2,"insertions":20,"deletions":0,"files":["docs/parsers/hashsum.md","jc/parsers/hashsum.py"]}},{"commit":"d1567d1f622902053f3df58645b4e39532e0c30a","message":"add hashsum documentation","stats":{"files_changed":3,"insertions":104,"deletions":0,"files":["CHANGELOG","docgen.sh","docs/parsers/hashsum.md"]}},{"commit":"6ca1f5970b3a518615a54ee7fcbc1bddab2db331","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"1c880b9e24ca53cd592cec1dbc52301308290fb4","message":"force git tests","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_hashsum.py"]}},{"commit":"3b7d54c720dfc93637328cf06eb10a85447c8793","message":"add python 3.9","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]}},{"commit":"44a740605705bd0ecfde2a6bcc7a826e1010dcf0","message":"add hashsum tests","stats":{"files_changed":6,"insertions":87,"deletions":0,"files":["tests/fixtures/centos-7.7/md5sum.json","tests/fixtures/centos-7.7/sha256sum.json","tests/fixtures/centos-7.7/sha384sum.json","tests/fixtures/osx-10.14.6/md5.json","tests/fixtures/osx-10.14.6/shasum.json","tests/test_hashsum.py"]}},{"commit":"8157dcfdb1868548b7c8ca692e6be25f80bb2c2c","message":"fix for files with spaces in the name","stats":{"files_changed":1,"insertions":36,"deletions":11,"files":["jc/parsers/hashsum.py"]}},{"commit":"28762aea15cabc9cd8293d725e7f1f0550f8e15d","message":"add hashsum parser","stats":{"files_changed":7,"insertions":524,"deletions":0,"files":["jc/cli.py","jc/parsers/hashsum.py","tests/fixtures/centos-7.7/md5sum.out","tests/fixtures/centos-7.7/sha256sum.out","tests/fixtures/centos-7.7/sha384sum.out","tests/fixtures/osx-10.14.6/md5.out","tests/fixtures/osx-10.14.6/shasum.out"]}},{"commit":"439871ea9f6b055a407e1faaf47e4f56d1829501","message":"add ubuntu","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"c9180b005c0547c8cbfe4809e66894f1123b0809","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"b14e0725f86853f0113116b1c06f54aaa563f365","message":"add ansible plugin blog post link","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"70fe3dcb4d5b97aba1d6c6dcd5088fecb27af181","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"8c554604a42a3ea7ca9131b65c64fd3ceb95f906","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]}},{"commit":"a0a35454bd2831c116cb598c686150b883412f94","message":"add link to the web demo","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]}},{"commit":"e8467e2af5b0c3f14832a9e6d4a96f219c27f3f2","message":"remove extra space","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"7515deb5669ef04623e9cbf58653b30c99a96430","message":"add ansible install command","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]}},{"commit":"ed9e52af241b609ee7f5d1b835c9f6c5306cd3c5","message":"spelling","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"592a3804104628c790997747a778b3b39d076dfe","message":"add Ansible note","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]}},{"commit":"1a458d2d5b4c16c0ad90671727ae9b19939e7f23","message":"update link","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"0e4cf53b92ff951a6390a4dacf8833c272473583","message":"add parser docs link","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"e2f06ccb33177173d984bc0cdda1aae1a3f4c681","message":"formatting","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/xml.py","jc/parsers/yaml.py"]}},{"commit":"8abff004cd8e09529e5d94be4883308152e11565","message":"indentation fix","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/yaml.md"]}},{"commit":"c4a0e2e3feb2e51eaaaa202064f352229017bcc3","message":"fix indentation","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/yaml.py"]}},{"commit":"4f10f79c73f8b3d6edc2c83e6a12d0ddc1a78555","message":"standardize doc","stats":{"files_changed":2,"insertions":4,"deletions":8,"files":["docs/parsers/uname.md","jc/parsers/uname.py"]}},{"commit":"69e7a560fd82337570c4bb4aa4780f513c18bd94","message":"add output info to docs","stats":{"files_changed":4,"insertions":8,"deletions":0,"files":["docs/parsers/env.md","docs/parsers/history.md","jc/parsers/env.py","jc/parsers/history.py"]}},{"commit":"59b105580805d78516abe1c1069d52a6f0a8131a","message":"enhance docs","stats":{"files_changed":97,"insertions":564,"deletions":269,"files":["docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]}},{"commit":"6ed48c6289214fe5114971c80772efdf9ac1b8c5","message":"enhance docs","stats":{"files_changed":16,"insertions":88,"deletions":37,"files":["jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py"]}},{"commit":"f2fb4d3f415fbc1c09eec6dedcf70fba78406b3f","message":"improve docs","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","jc/parsers/airport.py","jc/parsers/airport_s.py"]}},{"commit":"6aeea59ea84e56434e87ddf89cd5d4435b99e140","message":"doc updates","stats":{"files_changed":2,"insertions":14,"deletions":8,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md"]}},{"commit":"d016f3bbb307f85bd0f93a508323941a8bb9d872","message":"improve documentation","stats":{"files_changed":2,"insertions":14,"deletions":8,"files":["jc/parsers/airport.py","jc/parsers/airport_s.py"]}},{"commit":"7131c297180bfa195d0209d46fc70ab8e67efe2e","message":"add module usage info to docs","stats":{"files_changed":114,"insertions":686,"deletions":116,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]}},{"commit":"7432442983841b42c8d3d2459b55596c05d1e100","message":"add usage","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["docs/parsers/blkid.md"]}},{"commit":"5344883394a0662ee16bb5edd68df8e4410025f6","message":"spelling/add ping parser update","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"]}},{"commit":"3fcd2f6c2e015b0e65e7261c8e591ccd8a7d0e6c","message":"version bump","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/cli.py","setup.py"]}},{"commit":"f3d84bd5bf06349b681e9b72d904676e9f6bca19","message":"tighten crontab and crontab-u parser variable detection","stats":{"files_changed":6,"insertions":21,"deletions":3,"files":["CHANGELOG","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/fixtures/debian10/crontab-u.json","tests/fixtures/debian10/crontab-u.out","tests/test_crontab_u.py"]}},{"commit":"549780c23220bca3bcab58d7329ba8d44d1be55d","message":"add debian/apt-get info","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]}},{"commit":"2a6da69b82aa9ade6c01d490a32b57b415c62a9e","message":"improve linux/bsd check","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ping.py"]}},{"commit":"5c538816cf76686bac1a86a7c06e24664d25a2dc","message":"ping parser fix for raspberry pi","stats":{"files_changed":9,"insertions":55,"deletions":4,"files":["CHANGELOG","jc/cli.py","jc/parsers/ping.py","setup.py","tests/fixtures/pi/ping-ip-O-D.json","tests/fixtures/pi/ping-ip-O-D.out","tests/fixtures/pi/ping-ip-O.json","tests/fixtures/pi/ping-ip-O.out","tests/test_ping.py"]}},{"commit":"7b8b378a7df397c488fc54fbd6e77f5f3f23c10c","message":"add pydoc-markdown version requirement","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"]}},{"commit":"e30a75e25c4b43969bf9f874f89e18512a5e3a34","message":"Merge pull request #76 from kellyjonbrazil/dev"},{"commit":"85ad5cfd0bfb903ce35e37b343244fed88dbd979","message":"date change","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]}},{"commit":"88b9d5068c5bac0691fedb543114300d6afc7131","message":"finish date parser","stats":{"files_changed":6,"insertions":74,"deletions":15,"files":["EXAMPLES.md","README.md","docs/parsers/date.md","tests/fixtures/generic/date.json","tests/fixtures/generic/date.out","tests/test_date.py"]}},{"commit":"f8c4948a090642db595eda2ba2ea0773e560ba67","message":"remove comment","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/date.py"]}},{"commit":"412322447f019aec0b64888631bc965e9f21186d","message":"add month_num and weekday_num fields","stats":{"files_changed":1,"insertions":48,"deletions":17,"files":["jc/parsers/date.py"]}},{"commit":"d4f289e40fae621b87f0d49451fca4c3dde216b7","message":"documentation fixup","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/date.md","jc/parsers/date.py"]}},{"commit":"e1f3feb8f529172ae26ce4c7a66a4a1c21b722ce","message":"cover empty data case in process","stats":{"files_changed":1,"insertions":13,"deletions":10,"files":["jc/parsers/date.py"]}},{"commit":"37d3bc699c7be16955be06840d242980f05f1074","message":"add date parser","stats":{"files_changed":6,"insertions":224,"deletions":1,"files":["CHANGELOG","docgen.sh","docs/parsers/date.md","jc/cli.py","jc/parsers/date.py","man/jc.1"]}},{"commit":"672fd18016b8122510b6ab246b5675b7fd399b63","message":"date bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]}},{"commit":"bc2c23a2a09b96d34bb80f69fdc7751fb5ac3ed4","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]}},{"commit":"865f7e78124e382c6d315702fa6e48f2104cee46","message":"add kv parser to man page","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["man/jc.1"]}},{"commit":"720212b552e1bd2b9196dd5f06e4b3f85d463531","message":"fixup traceroute example with new behavior","stats":{"files_changed":1,"insertions":1,"deletions":9,"files":["EXAMPLES.md"]}},{"commit":"d3be61f60837801d5a505dc2520cc80c874a6092","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]}},{"commit":"13418b16b8fd78fdd97ac045ec3fe9aa59d46080","message":"doc update","stats":{"files_changed":2,"insertions":8,"deletions":2,"files":["docs/parsers/traceroute.md","jc/parsers/traceroute.py"]}},{"commit":"42d2017cd6f5ee1d1a92bd4958cd63366c1e715d","message":"traceroute updates: handle missing header row, add annotations, don't print timeouts as probes","stats":{"files_changed":18,"insertions":41,"deletions":24,"files":["CHANGELOG","jc/parsers/traceroute.py","tests/fixtures/centos-7.7/traceroute.json","tests/fixtures/freebsd12/traceroute.json","tests/fixtures/freebsd12/traceroute6.json","tests/fixtures/generic/traceroute1.json","tests/fixtures/generic/traceroute2.json","tests/fixtures/generic/traceroute3.json","tests/fixtures/generic/traceroute5.json","tests/fixtures/generic/traceroute6.json","tests/fixtures/generic/traceroute7.json","tests/fixtures/osx-10.14.6/traceroute-asn.json",".../fixtures/osx-10.14.6/traceroute-no-header.json","tests/fixtures/osx-10.14.6/traceroute-q.json","tests/fixtures/osx-10.14.6/traceroute.json",".../osx-10.14.6/traceroute6-mult-addresses.json","tests/fixtures/osx-10.14.6/traceroute6.json","tests/test_traceroute.py"]}},{"commit":"4345e76ead2a49ae0691077e9fbd2b6c5fdfd129","message":"change to use --kv for key/value files","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"]}},{"commit":"741431322ba2677355c361fcd6095ed8cd0a4349","message":"update tests for kv parser","stats":{"files_changed":2,"insertions":46,"deletions":24,"files":["tests/test_ini.py","tests/test_kv.py"]}},{"commit":"980beaaf41a04891f7c2f5daeb1e3a23d3c7ec19","message":"fix docgen issue","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/ifconfig.py"]}},{"commit":"2205034e0906b333c259648f7a0e5392945f12ef","message":"add kv parser","stats":{"files_changed":8,"insertions":105,"deletions":31,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","jc/cli.py","jc/parsers/ini.py","jc/parsers/kv.py","setup.py"]}},{"commit":"82b9c87a66fce5d8626c56858a8c6f1f3326e7fb","message":"update docs","stats":{"files_changed":58,"insertions":345,"deletions":62,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/readme.md","docs/utils.md"]}},{"commit":"dda517a937323b9888e081aea1032a9d63c4a6bf","message":"shorten more examples","stats":{"files_changed":1,"insertions":3,"deletions":163,"files":["README.md"]}},{"commit":"4e6d283b9eddf7759b4dd37bd643394ff73febd4","message":"shorten netstat example","stats":{"files_changed":1,"insertions":0,"deletions":65,"files":["README.md"]}},{"commit":"55acab05aa740dfd7534304f2678b60942cad116","message":"change name to CHANGELOG","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["changelog.txt => CHANGELOG"]}},{"commit":"ed38a18d236cdb991779f4f148e42359c139e61c","message":"remove more examples","stats":{"files_changed":1,"insertions":1,"deletions":86,"files":["README.md"]}},{"commit":"95b3c11203d3dd0627c5eeca39fe1d145bf2d733","message":"remove more examples","stats":{"files_changed":1,"insertions":0,"deletions":124,"files":["README.md"]}},{"commit":"dce318f4fd44b9c4013211bf233020e84566ddb7","message":"remove examples to reduce file size","stats":{"files_changed":1,"insertions":3,"deletions":1537,"files":["README.md"]}},{"commit":"85127f0fb8096192b19fca1f4ffe38ee391351be","message":"move examples to root","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["jc/examples.md => EXAMPLES.md"]}},{"commit":"fb45058244ce879f12bbb5b7267b0fd63fef1d63","message":"add examples file","stats":{"files_changed":1,"insertions":2640,"deletions":0,"files":["jc/examples.md"]}},{"commit":"45bb5ae389a00ed6a132a65c69ce76c7e5976858","message":"spelling","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"339238ab364d8735892a11cb16a62a651edae169","message":"version bump and add route -6 tests","stats":{"files_changed":8,"insertions":79,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py","tests/fixtures/centos-7.7/route-6-n.json","tests/fixtures/centos-7.7/route-6-n.out","tests/fixtures/centos-7.7/route-6.json","tests/fixtures/centos-7.7/route-6.out","tests/test_route.py"]}},{"commit":"032cda8b3db096b690d2557e3b918c50c716c543","message":"Merge pull request #74 from kellyjonbrazil/dev"},{"commit":"6badd3fb1e1cf6d1ee99614fadc20d54be8039aa","message":"add parser count test","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["tests/test_cli.py"]}},{"commit":"724d825745b6f1692eb3b068c3fb59d14892e690","message":"add tracepath parser","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["man/jc.1"]}},{"commit":"ff1e32ad2ee156f105f5069c6b14a65b22784dfa","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"a5f97febd3066b9e95a18d6b73162a7d206c5845","message":"update traceroute, tracepath, and uname tests","stats":{"files_changed":10,"insertions":132,"deletions":0,"files":["tests/fixtures/centos-7.7/tracepath.json","tests/fixtures/centos-7.7/tracepath6.json","tests/fixtures/freebsd12/traceroute.json","tests/fixtures/freebsd12/traceroute.out","tests/fixtures/freebsd12/traceroute6.json","tests/fixtures/freebsd12/traceroute6.out","tests/fixtures/osx-10.14.6/uname.out","tests/test_tracepath.py","tests/test_traceroute.py","tests/test_uname.py"]}},{"commit":"5baa6cc865634142690e78596c640db35e110b29","message":"add route parser update","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]}},{"commit":"7a4f30b843d8f11711abbb8f9bb263f945ff87ea","message":"fix for iface issue","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/route.py"]}},{"commit":"b2c385dc4f63e3e15f47e986deac0524967214a0","message":"change 'if' to 'iface'","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"]}},{"commit":"5d5da8d33fa6ab77c745d338d1a2e2e8f2e4c697","message":"more fixes for ipv6 fix","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/route.py"]}},{"commit":"e60457157839daba385202906997dec48c9c4950","message":"fix next_hop fix","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"]}},{"commit":"f9dacc3f95b32e1431914ae0b0dc5c8e8840d5a7","message":"fixup for ipv6","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/route.py"]}},{"commit":"6086920332575cd7db1b38262a3b4ba8fbfae7ab","message":"update ParseError message","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]}},{"commit":"f52f3163bcaf8d7e784f02505e81456e8240295b","message":"add tracepath example","stats":{"files_changed":1,"insertions":49,"deletions":0,"files":["README.md"]}},{"commit":"d18ff73e880c7d34957f2713857cc83094f914cc","message":"update author info","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/tracepath.py"]}},{"commit":"1e5d602caecd96c9056ad77f9fc50cf25bf6fdfd","message":"working tracepath parser","stats":{"files_changed":2,"insertions":288,"deletions":32,"files":["docs/parsers/tracepath.md","jc/parsers/tracepath.py"]}},{"commit":"12912521ecb376c36dfdd743b3c4195598fb9aac","message":"doc update","stats":{"files_changed":2,"insertions":0,"deletions":11,"files":["docs/parsers/traceroute.md","jc/parsers/traceroute.py"]}},{"commit":"842ea3a94bec3fcab76257fdde5514d1de3d57fa","message":"add tracepath parser skeleton","stats":{"files_changed":2,"insertions":153,"deletions":0,"files":["docs/parsers/tracepath.md","jc/parsers/tracepath.py"]}},{"commit":"a8560dbc1598fa97de87594228b4cc10282d4197","message":"add tracepath","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]}},{"commit":"a65e27540a8c5c7123d2fdf79fcbefa1e2f8afdc","message":"update docs","stats":{"files_changed":3,"insertions":1,"deletions":24,"files":["docgen.sh","docs/parsers/traceroute.md","jc/parsers/traceroute.py"]}},{"commit":"c3c5ed11e68938e35920144406d37ea3b21d63dd","message":"change name from tr to trparse","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]}},{"commit":"ce24149335cd8ed1e8513a2cf040432fe42d86b7","message":"formatting","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping.py"]}},{"commit":"0314ca8c4831d24c169a0e4948421ecd638fd699","message":"add trparse acknowledgement","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]}},{"commit":"ebd8ee49a9f43063850e30c745c8cae46ee13de1","message":"add key/value info to ini example","stats":{"files_changed":1,"insertions":26,"deletions":1,"files":["README.md"]}},{"commit":"38d10c97814ec69586c3b447c182f339772d6e22","message":"add ping and traceroute examples","stats":{"files_changed":1,"insertions":130,"deletions":1,"files":["README.md"]}},{"commit":"360106c24d24e6a9697c00a158a14aaa334a4b1f","message":"add tracepath","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]}},{"commit":"ca470a5d02fd9fbaf05d8b3b3bb1ffe9f4cf5af3","message":"add tracepath fixtures","stats":{"files_changed":2,"insertions":39,"deletions":0,"files":["tests/fixtures/centos-7.7/tracepath.out","tests/fixtures/centos-7.7/tracepath6.out"]}},{"commit":"57f66e6b1d554ff20b72959f5ebb9e7b2feffed2","message":"add exception with hint to use \"uname -a\"","stats":{"files_changed":2,"insertions":14,"deletions":2,"files":["changelog.txt","jc/parsers/uname.py"]}},{"commit":"e774f67924c0e6195f79829b2ac75ce95f76fbaa","message":"turn off interpolation and coerce None to ''","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["jc/parsers/ini.py"]}},{"commit":"ac10e576c167d20de259e47a6aa5b23fc998b4c3","message":"spelling","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/ini.md","jc/parsers/ini.py"]}},{"commit":"bcae0a99cd0ccce4ec8a67929f7c83a1095a5b88","message":"add key/value to ini description","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]}},{"commit":"c73c2ff879b3ed7a3e6f04e53e0a729e4f00ed21","message":"add ping, traceroute, and ini update","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["changelog.txt"]}},{"commit":"c39b1a3356881a11a8f6fe9432897e6d67162f07","message":"add ping, traceroute and update ini description","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["README.md"]}},{"commit":"125dc2d9e051a82a4a438afe2e520212338353f5","message":"add info about key/value files to doc","stats":{"files_changed":1,"insertions":8,"deletions":3,"files":["docs/parsers/ini.md"]}},{"commit":"b7d4ddc7ced2c3aabf3a857b53a0bf1b62eb6a2c","message":"add tests for key/value files","stats":{"files_changed":5,"insertions":50,"deletions":0,"files":["tests/fixtures/generic/keyvalue-ifcfg.json","tests/fixtures/generic/keyvalue-ifcfg.txt","tests/fixtures/generic/keyvalue.json","tests/fixtures/generic/keyvalue.txt","tests/test_ini.py"]}},{"commit":"f5e546c6fa7cba166284a0976887d6b82451d3e8","message":"add support for simple key/value pairs","stats":{"files_changed":1,"insertions":33,"deletions":9,"files":["jc/parsers/ini.py"]}},{"commit":"928e39cd103b96b8c3ccc8d85c930ffb419296c6","message":"add generic traceroute tests","stats":{"files_changed":9,"insertions":104,"deletions":0,"files":["tests/fixtures/generic/traceroute1.json","tests/fixtures/generic/traceroute2.json","tests/fixtures/generic/traceroute3.json","tests/fixtures/generic/traceroute4.json","tests/fixtures/generic/traceroute5.json","tests/fixtures/generic/traceroute6.json","tests/fixtures/generic/traceroute7.json","tests/fixtures/generic/traceroute8.json","tests/test_traceroute.py"]}},{"commit":"d0b7ea68a005daff313e44808b256656313a78a3","message":"check for key in dictionary","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/traceroute.py"]}},{"commit":"8444690133b6a7522822ab279e97ede6ded17ba9","message":"add traceroute","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["man/jc.1"]}},{"commit":"c03c42d76703ff8f423cf3c10ea6254a27a685cb","message":"add traceroute tests","stats":{"files_changed":9,"insertions":76,"deletions":9,"files":["tests/fixtures/centos-7.7/traceroute.json","tests/fixtures/osx-10.14.6/traceroute-asn.json",".../osx-10.14.6/traceroute-mult-addresses.json","tests/fixtures/osx-10.14.6/traceroute-q.json","tests/fixtures/osx-10.14.6/traceroute.json",".../osx-10.14.6/traceroute6-mult-addresses.json","...-address.out => traceroute6-mult-addresses.out}","tests/fixtures/osx-10.14.6/traceroute6.json","tests/test_traceroute.py"]}},{"commit":"ab67688a00ac335d2a5603e9cadef8b565957911","message":"add test skeleton","stats":{"files_changed":1,"insertions":55,"deletions":0,"files":["tests/test_traceroute.py"]}},{"commit":"5dcb7166daef3c53da65bba0d591672e64d3a90b","message":"add traceroute doc","stats":{"files_changed":2,"insertions":169,"deletions":0,"files":["docgen.sh","docs/parsers/traceroute.md"]}},{"commit":"14697b86d7fc1cfebb41e0fd2d9a9b9b60071d3b","message":"add MIT license","stats":{"files_changed":1,"insertions":24,"deletions":2,"files":["jc/parsers/traceroute.py"]}},{"commit":"4f4b6276d4bf798b17d996f39742bd0428fc2f19","message":"update docstring","stats":{"files_changed":1,"insertions":38,"deletions":33,"files":["jc/parsers/traceroute.py"]}},{"commit":"7bc497e1291059ae7858c9d2bd2d9a1b4c030dd1","message":"updated process() function to set integers and floats","stats":{"files_changed":1,"insertions":117,"deletions":14,"files":["jc/parsers/traceroute.py"]}},{"commit":"68a37a6a5a3f0ad0fa24c84d363050af9fa11f97","message":"remove unused function load()","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/parsers/traceroute.py"]}},{"commit":"6f5cd1d7c5f76d7d4da42171fdc30daf9fe3996e","message":"change to use f-string","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]}},{"commit":"126b1b121ca10183dc7e9dece83b42907becad39","message":"add traceroute6 example","stats":{"files_changed":1,"insertions":10,"deletions":0,"files":["tests/fixtures/generic/traceroute8.out"]}},{"commit":"2341e456a012564f86d533d2748a5887d79995e4","message":"use ParseError instead of generic Exception","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]}},{"commit":"72d80e95bb50ae2a7432082e65aba15235ba0955","message":"remove unused regex patterns","stats":{"files_changed":8,"insertions":115,"deletions":8,"files":["jc/parsers/traceroute.py","tests/fixtures/generic/traceroute1.out","tests/fixtures/generic/traceroute2.out","tests/fixtures/generic/traceroute3.out","tests/fixtures/generic/traceroute4.out","tests/fixtures/generic/traceroute5.out","tests/fixtures/generic/traceroute6.out","tests/fixtures/generic/traceroute7.out"]}},{"commit":"f5ec82440cd1c1b5ac9011d3517298d0cdcd8766","message":"simplify regex patterns","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/traceroute.py"]}},{"commit":"c8e526ead35b868733f57b4c114062a48b78a817","message":"fixes for bsd-style ipv6 output","stats":{"files_changed":2,"insertions":12,"deletions":3,"files":["jc/parsers/traceroute.py","tests/fixtures/osx-10.14.6/traceroute-q.out"]}},{"commit":"066adfb76479df7042bfb12bbb83b5dbd8a6d54c","message":"handle warning lines in the traceroute output","stats":{"files_changed":7,"insertions":83,"deletions":7,"files":["jc/parsers/traceroute.py","tests/fixtures/centos-7.7/traceroute.out","tests/fixtures/osx-10.14.6/traceroute-asn.out",".../osx-10.14.6/traceroute-mult-addresses.out",".../fixtures/osx-10.14.6/traceroute-no-header.out",".../osx-10.14.6/traceroute6-multi-address.out","tests/fixtures/osx-10.14.6/traceroute6.out"]}},{"commit":"5b444d4717b0b8528647e17e71d699907def3e18","message":"add traceroute parser","stats":{"files_changed":3,"insertions":307,"deletions":0,"files":["jc/cli.py","jc/parsers/traceroute.py","tests/fixtures/osx-10.14.6/traceroute.out"]}},{"commit":"69c95adc8d59927c1c00b7e766ca5003b7b6454c","message":"add osx ipv6 ping dup test","stats":{"files_changed":3,"insertions":81,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ping6-ip-dup.json","tests/fixtures/osx-10.14.6/ping6-ip-dup.out","tests/test_ping.py"]}},{"commit":"2b0e0d8f5c1a6a5450e362971f9ad5892093b2ce","message":"add ipv6 dup test","stats":{"files_changed":3,"insertions":27,"deletions":0,"files":["tests/fixtures/centos-7.7/ping6-ip-dup.json","tests/fixtures/centos-7.7/ping6-ip-dup.out","tests/test_ping.py"]}},{"commit":"778d1bacbf8df523d434b22f5e1517955e4c15ee","message":"update docs to add \"duplicates\" fields","stats":{"files_changed":2,"insertions":28,"deletions":12,"files":["docs/parsers/ping.md","jc/parsers/ping.py"]}},{"commit":"7e1b0410166c584775ebcd681a280ec7321560c7","message":"add duplicate replies tests","stats":{"files_changed":1,"insertions":24,"deletions":0,"files":["tests/test_ping.py"]}},{"commit":"313b9b329ca6b674069718839f55a4bd7834db80","message":"update fixtures for added 'duplicate' fields","stats":{"files_changed":55,"insertions":55,"deletions":53,"files":["tests/fixtures/centos-7.7/ping-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping-hostname-O-p.json","tests/fixtures/centos-7.7/ping-hostname-O.json","tests/fixtures/centos-7.7/ping-ip-O-D.json","tests/fixtures/centos-7.7/ping-ip-O.json","tests/fixtures/centos-7.7/ping-ip-dup.json","tests/fixtures/centos-7.7/ping6-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping6-hostname-O-p.json","tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","tests/fixtures/centos-7.7/ping6-ip-O-p.json","tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping-hostname-O-p.json","tests/fixtures/fedora32/ping-hostname-O.json","tests/fixtures/fedora32/ping-ip-O-D.json","tests/fixtures/fedora32/ping-ip-O.json","tests/fixtures/fedora32/ping6-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping6-hostname-O-D-p.json","tests/fixtures/fedora32/ping6-hostname-O-p.json","tests/fixtures/fedora32/ping6-ip-O-D-p.json","tests/fixtures/fedora32/ping6-ip-O-p.json","tests/fixtures/freebsd12/ping-hostname-p.json","tests/fixtures/freebsd12/ping-hostname-s.json","tests/fixtures/freebsd12/ping-hostname.json","tests/fixtures/freebsd12/ping-ip-p.json","tests/fixtures/freebsd12/ping-ip-s.json","tests/fixtures/freebsd12/ping-ip.json","tests/fixtures/freebsd12/ping6-hostname-p.json","tests/fixtures/freebsd12/ping6-hostname-s.json","tests/fixtures/freebsd12/ping6-hostname.json","tests/fixtures/freebsd12/ping6-ip-p.json","tests/fixtures/freebsd12/ping6-ip-s.json","tests/fixtures/freebsd12/ping6-ip.json","tests/fixtures/osx-10.14.6/ping-hostname-p.json","tests/fixtures/osx-10.14.6/ping-hostname-s.json","tests/fixtures/osx-10.14.6/ping-hostname.json","tests/fixtures/osx-10.14.6/ping-ip-dup.json","tests/fixtures/osx-10.14.6/ping-ip-p.json","tests/fixtures/osx-10.14.6/ping-ip-s.json","tests/fixtures/osx-10.14.6/ping-ip.json","tests/fixtures/osx-10.14.6/ping6-hostname-p.json","tests/fixtures/osx-10.14.6/ping6-hostname-s.json","tests/fixtures/osx-10.14.6/ping6-hostname.json","tests/fixtures/osx-10.14.6/ping6-ip-p.json","tests/fixtures/osx-10.14.6/ping6-ip-s.json","tests/fixtures/osx-10.14.6/ping6-ip.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping-hostname-O.json","tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","tests/fixtures/ubuntu-18.04/ping-ip-O.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json"]}},{"commit":"6830062256fbc453f87224f7ab8c10e4494b5a83","message":"add support for duplicate replies","stats":{"files_changed":4,"insertions":112,"deletions":24,"files":["docs/parsers/ping.md","jc/parsers/ping.py","tests/fixtures/centos-7.7/ping-ip-dup.out","tests/fixtures/osx-10.14.6/ping-ip-dup.out"]}},{"commit":"323072c9827c41c5d74433504b5efceb846cfe09","message":"add source_ip to schema doc","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/ping.md","jc/parsers/ping.py"]}},{"commit":"8719d96bddec80187e7ba3286ba93bfec8465744","message":"change description","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"dd5d318ab5bbb1027dd600fd3b0b6ec9b8adfdc3","message":"version bump and add ping command","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["man/jc.1"]}},{"commit":"d6dc7f5e65c097895c19000e59e8803a3b350fdc","message":"add osx ping tests","stats":{"files_changed":13,"insertions":135,"deletions":29,"files":["tests/fixtures/osx-10.14.6/ping-hostname-p.json","tests/fixtures/osx-10.14.6/ping-hostname-s.json","tests/fixtures/osx-10.14.6/ping-hostname.json","tests/fixtures/osx-10.14.6/ping-ip-p.json","tests/fixtures/osx-10.14.6/ping-ip-s.json","tests/fixtures/osx-10.14.6/ping-ip.json","tests/fixtures/osx-10.14.6/ping6-hostname-p.json","tests/fixtures/osx-10.14.6/ping6-hostname-s.json","tests/fixtures/osx-10.14.6/ping6-hostname.json","tests/fixtures/osx-10.14.6/ping6-ip-p.json","tests/fixtures/osx-10.14.6/ping6-ip-s.json","tests/fixtures/osx-10.14.6/ping6-ip.json","tests/test_ping.py"]}},{"commit":"c203664eb5aafa0afa3101b79e3fd13b3e009ec5","message":"freebsd ping tests","stats":{"files_changed":13,"insertions":171,"deletions":9,"files":["tests/fixtures/freebsd12/ping-hostname-p.json","tests/fixtures/freebsd12/ping-hostname-s.json","tests/fixtures/freebsd12/ping-hostname.json","tests/fixtures/freebsd12/ping-ip-p.json","tests/fixtures/freebsd12/ping-ip-s.json","tests/fixtures/freebsd12/ping-ip.json","tests/fixtures/freebsd12/ping6-hostname-p.json","tests/fixtures/freebsd12/ping6-hostname-s.json","tests/fixtures/freebsd12/ping6-hostname.json","tests/fixtures/freebsd12/ping6-ip-p.json","tests/fixtures/freebsd12/ping6-ip-s.json","tests/fixtures/freebsd12/ping6-ip.json","tests/test_ping.py"]}},{"commit":"19ecf1fa19e9fa0873002baf07fa670b71ed7752","message":"add Fedora32 tests","stats":{"files_changed":11,"insertions":118,"deletions":0,"files":["tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping-hostname-O-p.json","tests/fixtures/fedora32/ping-hostname-O.json","tests/fixtures/fedora32/ping-ip-O-D.json","tests/fixtures/fedora32/ping-ip-O.json",".../fixtures/fedora32/ping6-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping6-hostname-O-D-p.json","tests/fixtures/fedora32/ping6-hostname-O-p.json","tests/fixtures/fedora32/ping6-ip-O-D-p.json","tests/fixtures/fedora32/ping6-ip-O-p.json","tests/test_ping.py"]}},{"commit":"b8deb0426cc23333c0e0a9dc3776d9761d99abb0","message":"add ubuntu ping tests","stats":{"files_changed":11,"insertions":119,"deletions":8,"files":[".../ubuntu-18.04/ping-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping-hostname-O.json","tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","tests/fixtures/ubuntu-18.04/ping-ip-O.json",".../ubuntu-18.04/ping6-hostname-O-D-p-s.json",".../ubuntu-18.04/ping6-hostname-O-D-p.json",".../fixtures/ubuntu-18.04/ping6-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json","tests/test_ping.py"]}},{"commit":"3b8371f0208a097cb8a1c026348d3842e6702b9c","message":"add centos ping tests","stats":{"files_changed":10,"insertions":202,"deletions":0,"files":[".../fixtures/centos-7.7/ping-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping-hostname-O-p.json","tests/fixtures/centos-7.7/ping-hostname-O.json","tests/fixtures/centos-7.7/ping-ip-O-D.json","tests/fixtures/centos-7.7/ping-ip-O.json",".../centos-7.7/ping6-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping6-hostname-O-p.json","tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","tests/fixtures/centos-7.7/ping6-ip-O-p.json","tests/test_ping.py"]}},{"commit":"20bb1cdf396abdb3707b34fa146cbe913f9bbd6f","message":"add TypeError to except for None values","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/ping.py"]}},{"commit":"301daa48d0bfc28f97c8e46f028f8c6b875bf34e","message":"update documentation","stats":{"files_changed":2,"insertions":114,"deletions":16,"files":["docs/parsers/ping.md","jc/parsers/ping.py"]}},{"commit":"8421ec88033e02f472e4961d87551a0352663a16","message":"remove cygwin compatibility","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ping.py"]}},{"commit":"74211eb0129f6aa655a38ba4d4d8844d81441107","message":"add examples","stats":{"files_changed":1,"insertions":82,"deletions":5,"files":["jc/parsers/ping.py"]}},{"commit":"60bd42f298f309cbec6d24c9543ea3d51bd73b18","message":"add process() logic","stats":{"files_changed":1,"insertions":59,"deletions":11,"files":["jc/parsers/ping.py"]}},{"commit":"14bdd74526e400997c5bc247ea35ed40799e83ff","message":"add ping test fixtures","stats":{"files_changed":12,"insertions":100,"deletions":0,"files":["tests/fixtures/freebsd12/ping-hostname-p.out","tests/fixtures/freebsd12/ping-hostname-s.out","tests/fixtures/freebsd12/ping-hostname.out","tests/fixtures/freebsd12/ping-ip-p.out","tests/fixtures/freebsd12/ping-ip-s.out","tests/fixtures/freebsd12/ping-ip.out","tests/fixtures/freebsd12/ping6-hostname-p.out","tests/fixtures/freebsd12/ping6-hostname-s.out","tests/fixtures/freebsd12/ping6-hostname.out","tests/fixtures/freebsd12/ping6-ip-p.out","tests/fixtures/freebsd12/ping6-ip-s.out","tests/fixtures/freebsd12/ping6-ip.out"]}},{"commit":"fb0f3eda04a4b1dbb81da7d5791cbfe746bfd617","message":"add ping commands","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["tests/fixtures/create_fixtures.sh"]}},{"commit":"91ee6e6701307363336a39f9e16641465ddd05c2","message":"add osx ping test fixtures","stats":{"files_changed":12,"insertions":100,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ping-hostname-p.out","tests/fixtures/osx-10.14.6/ping-hostname-s.out","tests/fixtures/osx-10.14.6/ping-hostname.out","tests/fixtures/osx-10.14.6/ping-ip-p.out","tests/fixtures/osx-10.14.6/ping-ip-s.out","tests/fixtures/osx-10.14.6/ping-ip.out","tests/fixtures/osx-10.14.6/ping6-hostname-p.out","tests/fixtures/osx-10.14.6/ping6-hostname-s.out","tests/fixtures/osx-10.14.6/ping6-hostname.out","tests/fixtures/osx-10.14.6/ping6-ip-p.out","tests/fixtures/osx-10.14.6/ping6-ip-s.out","tests/fixtures/osx-10.14.6/ping6-ip.out"]}},{"commit":"51f4e6927c68a7e2a26954f564d10d316b98a984","message":"add support for pattern in osx/bsd","stats":{"files_changed":1,"insertions":12,"deletions":3,"files":["jc/parsers/ping.py"]}},{"commit":"94988d86674293faddc6f7e7c82575738d2dc791","message":"add fedora ping fixtures","stats":{"files_changed":10,"insertions":257,"deletions":0,"files":["tests/fixtures/fedora32/ping-hostname-O-D-p-s.out","tests/fixtures/fedora32/ping-hostname-O-p.out","tests/fixtures/fedora32/ping-hostname-O.out","tests/fixtures/fedora32/ping-ip-O-D.out","tests/fixtures/fedora32/ping-ip-O.out","tests/fixtures/fedora32/ping6-hostname-O-D-p-s.out","tests/fixtures/fedora32/ping6-hostname-O-D-p.out","tests/fixtures/fedora32/ping6-hostname-O-p.out","tests/fixtures/fedora32/ping6-ip-O-D-p.out","tests/fixtures/fedora32/ping6-ip-O-p.out"]}},{"commit":"fe36f5a98cd3ee7753e250b6553e4453d971f929","message":"add fixtures for ping","stats":{"files_changed":13,"insertions":318,"deletions":0,"files":["tests/fixtures/centos-7.7/ping-ip-O-D.out","tests/fixtures/centos-7.7/ping-ip-O.out","tests/fixtures/create_fixtures.sh",".../ubuntu-18.04/ping-hostname-O-D-p-s.out","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.out","tests/fixtures/ubuntu-18.04/ping-hostname-O.out","tests/fixtures/ubuntu-18.04/ping-ip-O-D.out","tests/fixtures/ubuntu-18.04/ping-ip-O.out",".../ubuntu-18.04/ping6-hostname-O-D-p-s.out",".../fixtures/ubuntu-18.04/ping6-hostname-O-D-p.out","tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.out","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.out","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.out"]}},{"commit":"f9eb18b9271b2428dd82f2dc26d3fa0435dad81d","message":"change 'request_timeout' field to 'type', fix compatibility, other formatting fixes","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/ping.py"]}},{"commit":"cc60f3674822c644933f286a0364b09d7e2a60b3","message":"add ping parser","stats":{"files_changed":3,"insertions":67,"deletions":1,"files":["docgen.sh","docs/parsers/ping.md","jc/cli.py"]}},{"commit":"604ade791f7bd33b37f64916befba27a2ea08b5b","message":"add ping parser","stats":{"files_changed":8,"insertions":506,"deletions":0,"files":["jc/parsers/ping.py",".../fixtures/centos-7.7/ping-hostname-O-D-p-s.out","tests/fixtures/centos-7.7/ping-hostname-O-p.out","tests/fixtures/centos-7.7/ping-hostname-O.out",".../fixtures/centos-7.7/ping6-hostname-O-D-p-s.out","tests/fixtures/centos-7.7/ping6-hostname-O-p.out","tests/fixtures/centos-7.7/ping6-ip-O-D-p.out","tests/fixtures/centos-7.7/ping6-ip-O-p.out"]}},{"commit":"690ac52a917200e46eac2feafc9f504f2734301c","message":"add man page","stats":{"files_changed":1,"insertions":261,"deletions":0,"files":["man/jc.1"]}},{"commit":"34ed772775f1f02ed148f24a3bfff532bc811607","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"d5ab95571f64f55d8194e9e5592ac538bb535229","message":"fix tests when using older versions of pygments","stats":{"files_changed":1,"insertions":26,"deletions":11,"files":["tests/test_cli.py"]}},{"commit":"ffb3a0ee5fb30a3f61d6cbedf877ab04acdbf624","message":"Merge pull request #73 from kellyjonbrazil/dev"},{"commit":"94b12b57aaa56170d1f31f4910fd1239f88de137","message":"spelling","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]}},{"commit":"6d149e84571d5d6dd1d8a1f219ba299de5173779","message":"version bump","stats":{"files_changed":2,"insertions":8,"deletions":1,"files":["changelog.txt","setup.py"]}},{"commit":"1ad89c90d890039b817f65b2635db1b5e849a9e7","message":"add pacman","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"fb71c7b020bc1eda9484595f30b0200a4f59aa45","message":"function name spelling","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_cli.py"]}},{"commit":"28ed17ad3bce866e5dc0179ef5de43380ac6ace1","message":"add parser_count test to test_cli_about_jc","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_cli.py"]}},{"commit":"0c2a4e2bf71dca50d4a9bb27ca99944909c022ff","message":"add cli tests","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["tests/test_cli.py"]}},{"commit":"62bec30de2f1a303f2ec411d89f7f9f9c6d1abaf","message":"add json_out tests","stats":{"files_changed":1,"insertions":20,"deletions":0,"files":["tests/test_cli.py"]}},{"commit":"3fced77e4e258dbf7db94a313e599c830a597b49","message":"add set_env_colors tests","stats":{"files_changed":1,"insertions":98,"deletions":1,"files":["tests/test_cli.py"]}},{"commit":"a09d1d8b7687912610598c88d172733d5e29b1ce","message":"move environment variable assignment to main() to simplify tests","stats":{"files_changed":1,"insertions":7,"deletions":6,"files":["jc/cli.py"]}},{"commit":"8f4243fbd8d70ca9fd019e984c564e37c81e07db","message":"formatting","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"]}},{"commit":"47aaf20549ea238443427e69d5841d6996b7afab","message":"add sysctl command parser","stats":{"files_changed":1,"insertions":17,"deletions":0,"files":["README.md"]}},{"commit":"0c5289ea50e4d3d35e80147b4cad32434c19a2a0","message":"add sysctl tests","stats":{"files_changed":3,"insertions":72,"deletions":2,"files":["tests/fixtures/freebsd12/sysctl-a.json","tests/fixtures/osx-10.14.6/sysctl-a.json","tests/test_sysctl.py"]}},{"commit":"3e53323514906fb84abfaeed0c2ee1fd9090ad8d","message":"don't filter out empty lines","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/sysctl.py"]}},{"commit":"a5ee9861b9b9b479aee59ea5b1d75f20d7c3c8e7","message":"update fixtures","stats":{"files_changed":3,"insertions":3785,"deletions":1,"files":["tests/fixtures/freebsd12/sysctl-a.json","tests/fixtures/freebsd12/sysctl-a.out","tests/fixtures/osx-10.14.6/sysctl-a.json"]}},{"commit":"feb8ca76545cba4fd0927273ddf90a77df994006","message":"spelling","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/sysctl.md"]}},{"commit":"a7abe4473b90c512466db9ae98cfac585689fe2a","message":"spelling","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/sysctl.py"]}},{"commit":"780b9b61dec3e142e46c9a82146d2af4e1144123","message":"specify IndexError exception in try/except block","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/sysctl.py"]}},{"commit":"19ace36ffa659bedf0ba2e43572c9e253592b2e7","message":"add fixtures","stats":{"files_changed":4,"insertions":2167,"deletions":0,"files":["tests/fixtures/osx-10.14.6/sysctl-a.json","tests/fixtures/osx-10.14.6/sysctl-a.out","tests/fixtures/ubuntu-18.04/sysctl-a.json","tests/fixtures/ubuntu-18.04/sysctl-a.out"]}},{"commit":"5fff8afc9f47f8cc6db8ed3613b90b5cdc683b43","message":"add fixes for freebsd where values can be on separate lines under the key","stats":{"files_changed":1,"insertions":33,"deletions":11,"files":["jc/parsers/sysctl.py"]}},{"commit":"4ad230c9279c5eb6c8ed6baf7254b8e9328e5af0","message":"doc update and add test fixtures","stats":{"files_changed":4,"insertions":929,"deletions":14,"files":["docs/parsers/sysctl.md","jc/parsers/sysctl.py","tests/fixtures/centos-7.7/sysctl-a.json","tests/fixtures/centos-7.7/sysctl-a.out"]}},{"commit":"dd98eb1ec8f451eb87a5094e76a7f758dee3fc69","message":"append duplicate key values to original key instead of adding unique keys","stats":{"files_changed":1,"insertions":4,"deletions":7,"files":["jc/parsers/sysctl.py"]}},{"commit":"c6baf42e72b4f41ed511e7db943297d03a39c0d5","message":"doc updates","stats":{"files_changed":3,"insertions":94,"deletions":7,"files":["docgen.sh","docs/parsers/sysctl.md","jc/parsers/sysctl.py"]}},{"commit":"e2bac97d563e5ef771ccd8ed1e5c42cbf588b120","message":"fix for multiple identical keys in sysctl output","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["jc/parsers/sysctl.py"]}},{"commit":"d112ee94d0ec534828c8508d0fb833b768975990","message":"use try/except and add support for floats in process()","stats":{"files_changed":1,"insertions":8,"deletions":4,"files":["jc/parsers/sysctl.py"]}},{"commit":"27b21b2fafab912f21b88b66c7f817cbce155765","message":"formatting and docstring updates","stats":{"files_changed":1,"insertions":8,"deletions":7,"files":["jc/cli.py"]}},{"commit":"8c96d5cd20448a4f7f9736c4d489d6ecc3068ad7","message":"reduce pygments version requirement","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["requirements.txt"]}},{"commit":"c29ed3fd695f725005333db5e6e2cd844bb4ca14","message":"formatting of quotation marks and docstrings","stats":{"files_changed":1,"insertions":14,"deletions":13,"files":["jc/cli.py"]}},{"commit":"cedf603f121636bdfa95432059c3c275c3ea3e9e","message":"minor formatting","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/cli.py"]}},{"commit":"279161c36f288c27a9789054ae372fe8ceb58a94","message":"Merge pull request #72 from duelafn/pygments-2.3"},{"commit":"ce0b43d919f07d96d1b94e9d14d03e935e80011d","message":"Remove dependency on 3rd party packaging library","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"]}},{"commit":"ddafa5bf06066bab8e9587be902d6752fcf51605","message":"Support older pygments","stats":{"files_changed":2,"insertions":47,"deletions":7,"files":["jc/cli.py","setup.py"]}},{"commit":"bc7116c31bacf3159aef775fd0e615187420b010","message":"fix JC_COLORS env bug and simplify set_env_colors()","stats":{"files_changed":1,"insertions":7,"deletions":8,"files":["jc/cli.py"]}},{"commit":"53b709272115e769dac905296fa3b000c1cdd66a","message":"remove side-effects from functions and print in main()","stats":{"files_changed":1,"insertions":11,"deletions":11,"files":["jc/cli.py"]}},{"commit":"beb9174b1b35937ae1fb99778369ae643a8f1005","message":"add sysctl parser","stats":{"files_changed":1,"insertions":123,"deletions":0,"files":["jc/parsers/sysctl.py"]}},{"commit":"aea41ed341c8d53cc07c35e8044e8f816ddd2fed","message":"move verbose_debug enable earlier in code to catch more issues. add sysctl and version bump","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/cli.py"]}},{"commit":"d789494cb1f691aa352419aaefc692f654477177","message":"change type check to use isinstance","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/tracebackplus.py"]}},{"commit":"608e7b4cff081f92177e4151ffa1a91a4a6895ca","message":"add license info","stats":{"files_changed":1,"insertions":61,"deletions":0,"files":["jc/tracebackplus.py"]}},{"commit":"4ee199c02a78c2707c5d1427d7c8fae56df5671c","message":"use tracebackplus instead of cgitb since cgitb is depricated","stats":{"files_changed":2,"insertions":189,"deletions":3,"files":["jc/cli.py","jc/tracebackplus.py"]}},{"commit":"fbf47d408501dadda4671fb530f5e11859e85d53","message":"add arch linux","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]}},{"commit":"5a238e4b4204f0552327534ef798c28d3ad4f578","message":"remove updates-testing from fedora command","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"f852b8246a8f9e5f7d9144fed3a0daa4eddfe035","message":"wrap warning message","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/utils.py"]}},{"commit":"88140d929a500ee78f807862c4912c399df2a460","message":"wrap error message in code","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]}},{"commit":"45f726824027af49c437b6e81e4700f7098af320","message":"add -dd to error message","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"3a3c8e4d4a77135eaee5cb30c3107a4531c300ce","message":"move verbose_debug under debug check","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/cli.py"]}},{"commit":"c1ac183a0472e93226c9ee1905f56c5183e3721f","message":"simplify debug option","stats":{"files_changed":1,"insertions":15,"deletions":22,"files":["jc/cli.py"]}},{"commit":"18bb779ee5cd5821764b03173f16e922f753c64d","message":"formatting: double quotes to single quotes","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]}},{"commit":"8b6612fe7911ab9e0bf8d29be60865d3b8aa3fd8","message":"move JC_COLORS parsing error message","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/cli.py"]}},{"commit":"fde0bc853415418e01616861ace5048770bd97f8","message":"improve package install info","stats":{"files_changed":1,"insertions":9,"deletions":34,"files":["README.md"]}},{"commit":"e661a78939ff067b8a61f08301c178dd10a344ab","message":"Merge pull request #71 from wigust/guix"},{"commit":"847e346602789bf58e3515319e9d080dfb897fc9","message":"add guix package info","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]}},{"commit":"b9697516887c61f08d8d7b1dc9130350e5bdba9c","message":"add other references","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]}},{"commit":"ad6f2ba03a293a7f55e456fa5f5b55ee3cbcd4ec","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"63c6a5edc0e9001b143595fd8b96f1b4a1377a3a","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]}},{"commit":"9f4cf9dd5efe94adfff0961fdb73097ca27c5463","message":"formatting","stats":{"files_changed":1,"insertions":197,"deletions":67,"files":["README.md"]}},{"commit":"51331b6dc01eee00847fa4be549ffde365373a01","message":"formatting","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["README.md"]}},{"commit":"efb6761033319644bf9cdae6288ff5609f6482ea","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"6a4f737a0f1c322bebccf69809d9816fc770c5ef","message":"update json syntax highlighting","stats":{"files_changed":1,"insertions":88,"deletions":115,"files":["README.md"]}},{"commit":"be6864b778ab721bcba5fc3221576153be7b2ed3","message":"add syntax highlighting tags","stats":{"files_changed":1,"insertions":26,"deletions":26,"files":["README.md"]}},{"commit":"de3b91a36cfcaf565b26b1da42f1e87835da4dc3","message":"add -dd option","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"ef5482c3b5afa0ee8e85851bebab1c104cb59936","message":"add verbose debug option","stats":{"files_changed":3,"insertions":15,"deletions":7,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"d20b795137036f8b889eb231cb4f14b756ec6479","message":"Merge pull request #70 from kellyjonbrazil/dev"},{"commit":"8a134065dff429551449c1ea16a36d745fdab580","message":"update fixtures for last chain fix","stats":{"files_changed":12,"insertions":12,"deletions":12,"files":["tests/fixtures/centos-7.7/iptables-filter-line-numbers.json","tests/fixtures/centos-7.7/iptables-filter-nv.json","tests/fixtures/centos-7.7/iptables-filter.json","tests/fixtures/centos-7.7/iptables-mangle.json","tests/fixtures/centos-7.7/iptables-nat.json","tests/fixtures/centos-7.7/iptables-raw.json","tests/fixtures/ubuntu-18.04/iptables-filter-line-numbers.json","tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","tests/fixtures/ubuntu-18.04/iptables-filter.json","tests/fixtures/ubuntu-18.04/iptables-mangle.json","tests/fixtures/ubuntu-18.04/iptables-nat.json","tests/fixtures/ubuntu-18.04/iptables-raw.json"]}},{"commit":"22aee1bfa40ed1d3c4df28cd934ef0edfc5c458c","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"b282820fd67dcc96c058198f97b066e7b402d1f3","message":"fix to include the final chain in output","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/iptables.py"]}},{"commit":"3ee098306daf903687cb0febf92773a81e216111","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"]}},{"commit":"09e8f379a64b3b37bb99b4291c10aa4a5cdedea4","message":"iptables code optimizations","stats":{"files_changed":1,"insertions":9,"deletions":11,"files":["jc/parsers/iptables.py"]}},{"commit":"69018cdb3a77fcdcb5648e3b89933148c55a6412","message":"fix date","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]}},{"commit":"d0d7254c6acc7be4341618d231a5b166f640b287","message":"add docstring","stats":{"files_changed":2,"insertions":26,"deletions":0,"files":["docs/utils.md","jc/utils.py"]}},{"commit":"cc0f0971d76b6f3dec8d989e83f5676db8f2c6d9","message":"Improve and standardize empty data check for all parsers","stats":{"files_changed":56,"insertions":476,"deletions":439,"files":["changelog.txt","jc/cli.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/utils.py","setup.py"]}},{"commit":"2af61730f0f5b9bc6f1f4c5d9d808ff6ccb0faeb","message":"Merge pull request #68 from kellyjonbrazil/dev"},{"commit":"83f41b83dc01c462c6a2295e9fc56ad42a3b62f4","message":"version bump","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"1fb84fce88e0306c26a5771fa4c6dc14a21409a1","message":"fix for no data","stats":{"files_changed":16,"insertions":137,"deletions":67,"files":["changelog.txt","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/xml.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py","tests/test_timedatectl.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py","tests/test_who.py","tests/test_xml.py","tests/test_yaml.py"]}},{"commit":"a8837e12447c52dbe438b19c07777b9b4a22081c","message":"remove --upgrade from pip install","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"04d2eec5581998d1a80e762b670af76c92111065","message":"fix for no data","stats":{"files_changed":6,"insertions":56,"deletions":30,"files":["changelog.txt","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","tests/test_stat.py","tests/test_systemctl.py","tests/test_systemctl_lj.py"]}},{"commit":"1b57ec92f052ddc8959540511512190a539262b7","message":"fix for no data","stats":{"files_changed":21,"insertions":152,"deletions":68,"files":["changelog.txt","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/pip_list.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","tests/fixtures/centos-7.7/ss-sudo-a.json","tests/fixtures/ubuntu-18.04/ss-sudo-a.json","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_ntpq.py","tests/test_passwd.py","tests/test_pip_list.py","tests/test_pip_show.py","tests/test_ps.py","tests/test_route.py","tests/test_shadow.py","tests/test_ss.py"]}},{"commit":"4d8859540417e99e273fda2cea959240f3c37ea3","message":"enhance empty data check","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/df.py"]}},{"commit":"52b1272a3aab09b5a8c4a277fbf9975a1b8b6921","message":"enhance empty data check","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/blkid.py"]}},{"commit":"d2ccad6a83138fbf6eb863634fd354dc6c3fa238","message":"fix for no data","stats":{"files_changed":4,"insertions":33,"deletions":15,"files":["jc/parsers/lsblk.py","jc/parsers/lsmod.py","tests/test_lsblk.py","tests/test_lsmod.py"]}},{"commit":"cad6dde4ac66cf970a7f52d8e7958ea35c083629","message":"fix for no data","stats":{"files_changed":10,"insertions":60,"deletions":0,"files":["tests/test_group.py","tests/test_gshadow.py","tests/test_history.py","tests/test_hosts.py","tests/test_id.py","tests/test_ifconfig.py","tests/test_ini.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_last.py"]}},{"commit":"06811c3539b0d871e13e9b8d3b51f731d06fd2ce","message":"add test for no data","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_fstab.py"]}},{"commit":"0cb23c2b21f464082609409261de8e95eb1b0d55","message":"add fix for no data","stats":{"files_changed":3,"insertions":17,"deletions":7,"files":["changelog.txt","jc/parsers/free.py","tests/test_free.py"]}},{"commit":"ac4688dca22334385ec2c87027f2f14f9ca93ce4","message":"add test for no data","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_file.py"]}},{"commit":"326c3b4670a0e47cbe2988b38fb1c1b26a4db890","message":"add test for no data","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_env.py"]}},{"commit":"9b29d0c2688eda2e4707aeba693ed14fa433a706","message":"add test for no data","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_du.py"]}},{"commit":"e0013c38710b4ecf3a588a16d1d908effc23b485","message":"add test for no data","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["tests/test_dmidecode.py"]}},{"commit":"a75744075b0628bdb711d8a929a759b4b4067edb","message":"add no data test","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_dig.py"]}},{"commit":"525aec1a02380f17ab7827434616f981f7457bd0","message":"fix for no data","stats":{"files_changed":3,"insertions":16,"deletions":7,"files":["changelog.txt","jc/parsers/df.py","tests/test_df.py"]}},{"commit":"0bf9a7a072a80e10a29c6bb3943b107352dc1d45","message":"add test for no data","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_csv.py"]}},{"commit":"d8f2f4c95bc699386b9fe93d10e13637875a1dcf","message":"fix for no data","stats":{"files_changed":5,"insertions":96,"deletions":80,"files":["changelog.txt","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/test_crontab.py","tests/test_crontab_u.py"]}},{"commit":"35d733b44f3705bed3dd8ce340379470f199f772","message":"fix for no data","stats":{"files_changed":5,"insertions":70,"deletions":60,"files":["changelog.txt","jc/parsers/arp.py","jc/parsers/blkid.py","tests/test_arp.py","tests/test_blkid.py"]}},{"commit":"9179b4175c5063bed14ecb96ba24c517920c0d94","message":"add nodata tests","stats":{"files_changed":3,"insertions":16,"deletions":0,"files":["changelog.txt","tests/test_airport.py","tests/test_airport_s.py"]}},{"commit":"bb07d78c78ff5c5b2ee4d2086ffc6dd5ebedf0fb","message":"add nodata fix","stats":{"files_changed":1,"insertions":10,"deletions":8,"files":["jc/parsers/airport_s.py"]}},{"commit":"07b179cd7f8853ff6aca0b27a703e198c158ca72","message":"Merge pull request #67 from kellyjonbrazil/Dev"},{"commit":"054422d8373e7b8def18ddabd447062cb9cc3137","message":"add test for empty directory","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_ls.py"]}},{"commit":"3e052d18102e98a09cbba21866855691eaccc216","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"c8e72805cf9def478b56c925f4afcc0ece1daac0","message":"fix error on empty directory","stats":{"files_changed":1,"insertions":9,"deletions":10,"files":["jc/parsers/ls.py"]}},{"commit":"12a80e7db0f6c7d536674ad8d34e26bba9a1f1f9","message":"add fedora package info","stats":{"files_changed":1,"insertions":10,"deletions":2,"files":["README.md"]}},{"commit":"ee7ff9a09d3373f60ae1645376ccc0057803147e","message":"Merge pull request #66 from kellyjonbrazil/dev"},{"commit":"f6478fb636ead8d1e53e4a88d59e55222df37a8f","message":"version bump","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"811a0b0495819925199d70db266066197cc6824e","message":"add info regarding the local parser plugin files","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"aeb48edf727f23cc4f8fd9b760cfb69f03098278","message":"use $LOCALAPPDATA variable for windows","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"b1e94f0df7041bcae97455508f423178aef9d61d","message":"heading formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"60050e3c0fe34980f7db5b8bd46430f953f0c3a3","message":"fix linux/unix directory and add note about the XDG specification followed","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["README.md"]}},{"commit":"39ef09aa5b0d43b5128299511afe80336aa38203","message":"add local parser plugin feature","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"]}},{"commit":"8377d4311611c242e16eaebe66dafac9529150d4","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"54e4c447ab34ae54c73c92df40f1b4ca6ffb2277","message":"clean up formatting","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"]}},{"commit":"937a9fa9cf2ede8e686ba853989f33e4a483a0ad","message":"vendorize appdirs module","stats":{"files_changed":4,"insertions":613,"deletions":3,"files":["jc/appdirs.py","jc/cli.py","requirements.txt","setup.py"]}},{"commit":"808ff6cf0e784cf0c2d523ff2e01197cb6e88c82","message":"more acknowledgments updates","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["README.md"]}},{"commit":"7f5c649a95a871c3cd8d48731a6d26dcba6f725b","message":"update acknowledgments","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"b72727dec995de1ca5f68ee17a710b086c87d612","message":"update custom parsers info","stats":{"files_changed":1,"insertions":9,"deletions":2,"files":["README.md"]}},{"commit":"3fc88bfb334143b68a9cb78d4034f33e7c0bcf76","message":"Merge pull request #65 from duelafn/local-parsers"},{"commit":"9f2279d5867eb89d4b4b7b4ffca290166ec97c48","message":"Load custom parsers from /jc/jcparsers","stats":{"files_changed":4,"insertions":29,"deletions":2,"files":["README.md","jc/cli.py","requirements.txt","setup.py"]}},{"commit":"346a14cb9bb0d762fc3fa366ad97e5ff85f3992a","message":"change osx_device to unix_device","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]}},{"commit":"dac00d17ff9f3d2bb959697b6e567015bfc2702b","message":"add nixos test","stats":{"files_changed":3,"insertions":17,"deletions":0,"files":["tests/fixtures/nixos/route-ee.json","tests/fixtures/nixos/route-ee.out","tests/test_route.py"]}},{"commit":"9ca7cd40601b97829e8f88071fdfb928d939f7e5","message":"update docs","stats":{"files_changed":1,"insertions":17,"deletions":34,"files":["jc/parsers/route.py"]}},{"commit":"aa31628970b12295a41dff20e829fcce9f8a4d07","message":"update docs","stats":{"files_changed":5,"insertions":70,"deletions":63,"files":["README.md","docs/parsers/netstat.md","docs/parsers/route.md","docs/parsers/stat.md","jc/parsers/netstat.py"]}},{"commit":"bed694fcf5c8c31bbd4f3e88759fe7ab82382d24","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"4b4af69fa184896ec15b5be7dc8416f36f921d5e","message":"fix date","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]}},{"commit":"9d96190a5b19e8d71c3ac66eb0303d269dd4ce5d","message":"Merge pull request #64 from kellyjonbrazil/dev"},{"commit":"fa44d48c094a55e499c2c780d109bf277736b42e","message":"freebsd fixes, tests, and fixtures","stats":{"files_changed":6,"insertions":129,"deletions":7,"files":["changelog.txt","jc/parsers/stat.py","tests/fixtures/freebsd12/stat.json","tests/fixtures/freebsd12/stat.out","tests/fixtures/osx-10.14.6/stat.json","tests/test_stat.py"]}},{"commit":"4ef961c2788c935b1fea1c9777b976e7b89e7367","message":"add freebsd test and fixtures","stats":{"files_changed":3,"insertions":20,"deletions":0,"files":["tests/fixtures/freebsd12/ntpq-p.json","tests/fixtures/freebsd12/ntpq-p.out","tests/test_ntpq.py"]}},{"commit":"292a837d5c47165ccb155f079b0a114b5c17a98e","message":"add tests and fixtures for freebsd12","stats":{"files_changed":3,"insertions":22,"deletions":0,"files":["tests/fixtures/freebsd12/last.json","tests/fixtures/freebsd12/last.out","tests/test_last.py"]}},{"commit":"aa7b915d847dbd29d2c09b2cc40b847e37174ffb","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/last.py"]}},{"commit":"c46fe73236b912d2ee89dfb36ff259fe95fd0479","message":"add last fixes for freebsd","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]}},{"commit":"039b2c129cbe79d2d23b1194b043d8b730609956","message":"freebsd fixes","stats":{"files_changed":1,"insertions":10,"deletions":1,"files":["jc/parsers/last.py"]}},{"commit":"8f2e5e4808b30c658a4cb87125639e4d7d6c15d8","message":"fix compatible logic","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]}},{"commit":"c4da8e4f78e6b4aaa4aff76ae042be9aaec832a7","message":"add nixos and freebsd to tested. update new arp fields","stats":{"files_changed":1,"insertions":9,"deletions":3,"files":["README.md"]}},{"commit":"bcab9078a4c2bfd6ae4dca9448b577d9ed0fc01c","message":"add w parser fix","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]}},{"commit":"b3c6c1ea925bf7cd76368f5074fb8af52a844522","message":"strip whitespace in string fields and add tests","stats":{"files_changed":4,"insertions":29,"deletions":5,"files":["jc/parsers/w.py","tests/fixtures/nixos/w.json","tests/fixtures/nixos/w.out","tests/test_w.py"]}},{"commit":"a3af8662bd491e344c93d24afabd23e90efd8086","message":"add permanent field","stats":{"files_changed":3,"insertions":205,"deletions":3,"files":["tests/fixtures/osx-10.11.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a2.json"]}},{"commit":"35940d0bc80bf61b11f40b1e1043835f26eb391c","message":"add freebsd permanent and expires fields","stats":{"files_changed":6,"insertions":59,"deletions":4,"files":["changelog.txt","docs/parsers/arp.md","jc/parsers/arp.py","tests/fixtures/freebsd12/arp-a.json","tests/fixtures/freebsd12/arp-a.out","tests/test_arp.py"]}},{"commit":"26994cdcb7148d2c9d1701bca9541d247356260b","message":"add freebsd compatibility info","stats":{"files_changed":8,"insertions":115,"deletions":85,"files":["docs/parsers/df.md","docs/parsers/fstab.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/route.md","docs/parsers/stat.md","docs/parsers/uname.md"]}},{"commit":"017159a829691cb6a7174f123d024eb252179b75","message":"add freebsd nestat tests and fixtures","stats":{"files_changed":15,"insertions":221,"deletions":0,"files":["tests/fixtures/freebsd12/netstat-Aa.json","tests/fixtures/freebsd12/netstat-AaT.json","tests/fixtures/freebsd12/netstat-AaT.out","tests/fixtures/freebsd12/netstat-AanP.json","tests/fixtures/freebsd12/netstat-AanP.out","tests/fixtures/freebsd12/netstat-Aax.json","tests/fixtures/freebsd12/netstat-Aax.out","tests/fixtures/freebsd12/netstat-aT.json","tests/fixtures/freebsd12/netstat-aT.out","tests/fixtures/freebsd12/netstat-an.json","tests/fixtures/freebsd12/netstat-i.json","tests/fixtures/freebsd12/netstat-ib.json","tests/fixtures/freebsd12/netstat-ib.out","tests/fixtures/freebsd12/netstat-r.json","tests/test_netstat.py"]}},{"commit":"b4e9c85e08d199dad67f03c7603194278a022696","message":"fixup -T freebsd output and add whitespace stripping to parse_post","stats":{"files_changed":1,"insertions":12,"deletions":0,"files":["jc/parsers/netstat_freebsd_osx.py"]}},{"commit":"189146cd84cfad262f2b2601bb0cb4b9dde2587e","message":"add more ints. remove whitespace strip code and move to freebsd_osx module","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/netstat.py"]}},{"commit":"af34153ffab10ca1ad7f44736d379d91ae43c813","message":"version bump","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["changelog.txt","jc/cli.py"]}},{"commit":"bf2ff3ffbb639446779b1f04f2997707d99c0a1f","message":"fix compatibility search for platform names that append the version number (e.g. freebsd12)","stats":{"files_changed":1,"insertions":8,"deletions":1,"files":["jc/utils.py"]}},{"commit":"6423c9efd69e938af38934a97ca6b65009e8f07e","message":"integer and float updates","stats":{"files_changed":1,"insertions":34,"deletions":5,"files":["jc/parsers/netstat.py"]}},{"commit":"58ab0d4ece7f006ce9431afb9e0fecbe60930be7","message":"strip whitespace from string fields","stats":{"files_changed":4,"insertions":12,"deletions":4,"files":["changelog.txt","jc/parsers/netstat.py","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json"]}},{"commit":"83a738bf4d756036d6269b9153220d7f1018ac9c","message":"update fixtures for osx_flags and osx_inode name change to unix_flags and unix_inode","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json"]}},{"commit":"3640671fc6a67c9628fd47e19e9fe0a0738439ce","message":"rename module","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/{netstat_osx.py => netstat_freebsd_osx.py}"]}},{"commit":"1da623b30ef6f9b12ac231518d2d4e7dadcf717b","message":"add items","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["changelog.txt"]}},{"commit":"b10ca64646e93d9797182ea046f4956a17b37627","message":"change osx_inode and osx_flags to unix_inode and unix_flags. Also rename netstat_osx module to netstat_freebsd_osx","stats":{"files_changed":1,"insertions":71,"deletions":71,"files":["jc/parsers/netstat.py"]}},{"commit":"2128763ee67a07da6ebf123abeec39794bc1f4e2","message":"fix osx version from 16.4 to 14.6","stats":{"files_changed":1,"insertions":12,"deletions":12,"files":["tests/test_netstat.py"]}},{"commit":"a27e7ed39c63c04cfa78caceaada42f7a9496a2c","message":"test updates for added route_flags_pretty and flags_pretty fields","stats":{"files_changed":12,"insertions":12,"deletions":12,"files":["tests/fixtures/centos-7.7/netstat-r.json","tests/fixtures/centos-7.7/netstat-rne.json","tests/fixtures/centos-7.7/netstat-rnee.json","tests/fixtures/centos-7.7/route-vn.json","tests/fixtures/centos-7.7/route.json","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-rnl.json","tests/fixtures/ubuntu-18.04/netstat-r.json","tests/fixtures/ubuntu-18.04/netstat-rne.json","tests/fixtures/ubuntu-18.04/netstat-rnee.json","tests/fixtures/ubuntu-18.04/route-vn.json","tests/fixtures/ubuntu-18.04/route.json"]}},{"commit":"f07b7eaa474eb87dbdbc7fbe41b9386feff7bee2","message":"add flags_pretty","stats":{"files_changed":1,"insertions":38,"deletions":12,"files":["jc/parsers/route.py"]}},{"commit":"6ce18de84ce16a926f9cd97c3210ef209c3352da","message":"add route_flags_pretty","stats":{"files_changed":3,"insertions":130,"deletions":69,"files":["jc/parsers/netstat.py","jc/parsers/netstat_linux.py","jc/parsers/netstat_osx.py"]}},{"commit":"8631b756e7ab8cd71c2a3eb288e2d1823cec5782","message":"add freebsd test files","stats":{"files_changed":4,"insertions":76,"deletions":0,"files":["tests/fixtures/freebsd12/netstat-Aa.out","tests/fixtures/freebsd12/netstat-an.out","tests/fixtures/freebsd12/netstat-i.out","tests/fixtures/freebsd12/netstat-r.out"]}},{"commit":"7414d984125300164a5b6156d7a80128d4d6cb15","message":"add freebsd compatibility","stats":{"files_changed":6,"insertions":18,"deletions":18,"files":["jc/parsers/df.py","jc/parsers/fstab.py","jc/parsers/mount.py","jc/parsers/ntpq.py","jc/parsers/stat.py","jc/parsers/uname.py"]}},{"commit":"d7b19892e8fb11e17fcbadcdbb08d49897d7754f","message":"add freebsd support for netstat -i","stats":{"files_changed":2,"insertions":10,"deletions":7,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"]}},{"commit":"96df396eaf4e030113005a95e525d644c394dfe1","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"2f6f640317da5af894f34f187c4243ef0c599d07","message":"spelling","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"c4a0a50f3a3ac5833ab5d2f8a0cb3f18da335812","message":"add nix-env","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]}},{"commit":"658f8a3842273cea049689b3aea15d89a7294b24","message":"add zypper and ports info","stats":{"files_changed":1,"insertions":10,"deletions":3,"files":["README.md"]}},{"commit":"bfb876a1e394ff63c6773965ba0b65da4e109c1b","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]}},{"commit":"90c34b1f4ee2d9ec8125346bb90b227f76ada2ba","message":"fix dmidecode example","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]}},{"commit":"3f9164ea77ec41e1b0671d0a642900d8e36faf9b","message":"bold formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"7fd6fecbf5a08b1f13aa7e906e94be9bc126780a","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"8029f72363a4d19938df07603f03a0147f6246a8","message":"change osx_flags from integer to string","stats":{"files_changed":6,"insertions":10,"deletions":7,"files":["changelog.txt","docs/parsers/stat.md","jc/cli.py","jc/parsers/stat.py","setup.py","tests/fixtures/osx-10.14.6/stat.json"]}},{"commit":"c7fdce5d3b7566a7d290627767c47d9c196e02ad","message":"Merge pull request #62 from kellyjonbrazil/dev"},{"commit":"84f48aa369a458f534523ecc1e3aaaf403d06f1c","message":"version bump","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"2e9a0a9c1221dd01bd683ecbc4871d03738da671","message":"add features","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["changelog.txt"]}},{"commit":"c1f6f2b9508e558ab88b4a0a61e93a6cf5460bea","message":"osx fixes and tests","stats":{"files_changed":5,"insertions":116,"deletions":4,"files":["docs/parsers/stat.md","jc/parsers/stat.py","tests/fixtures/osx-10.14.6/stat.json","tests/fixtures/osx-10.14.6/stat.out","tests/test_stat.py"]}},{"commit":"ede21bca13c4b46899721f01d979c8b063f861a3","message":"add OSX support for stat","stats":{"files_changed":1,"insertions":110,"deletions":78,"files":["jc/parsers/stat.py"]}},{"commit":"8dd9a9f9cbc70a19176f909f6ac76b2bcf670736","message":"add netstat -i tests","stats":{"files_changed":5,"insertions":45,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-i.json","tests/fixtures/osx-10.14.6/netstat-i.json","tests/fixtures/ubuntu-18.04/netstat-i.json","tests/fixtures/ubuntu-18.04/netstat-i.out","tests/test_netstat.py"]}},{"commit":"04f92cd1330759e4bad1c0304b9e1c28e8d32d59","message":"add linux support for netstat -i","stats":{"files_changed":5,"insertions":166,"deletions":4,"files":["README.md","docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_linux.py","tests/fixtures/centos-7.7/netstat-i.out"]}},{"commit":"8be8d2393b276a9249e1c573ce19cf630f0942fd","message":"add netstat -i support for OSX","stats":{"files_changed":3,"insertions":99,"deletions":3,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-i.out"]}},{"commit":"0a879681be68fe2e6e5c013ab0fe18de99b04f7e","message":"add netstat -r to docs","stats":{"files_changed":3,"insertions":97,"deletions":282,"files":["README.md","docs/parsers/netstat.md","jc/parsers/netstat.py"]}},{"commit":"2ca1587a49511899bf719e0b0c7de32158fc491d","message":"add linux netstat -r tests","stats":{"files_changed":10,"insertions":102,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-r.json","tests/fixtures/centos-7.7/netstat-rne.json","tests/fixtures/centos-7.7/netstat-rnee.json","tests/fixtures/ubuntu-18.04/netstat-r.json","tests/fixtures/ubuntu-18.04/netstat-r.out","tests/fixtures/ubuntu-18.04/netstat-rne.json","tests/fixtures/ubuntu-18.04/netstat-rne.out","tests/fixtures/ubuntu-18.04/netstat-rnee.json","tests/fixtures/ubuntu-18.04/netstat-rnee.out","tests/test_netstat.py"]}},{"commit":"ec2cd2d708a57c0458657416bedcb4340cb40901","message":"add netstat -r support for linux","stats":{"files_changed":9,"insertions":70,"deletions":11,"files":["docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_linux.py","jc/parsers/netstat_osx.py","tests/fixtures/centos-7.7/netstat-r.out","tests/fixtures/centos-7.7/netstat-rne.out","tests/fixtures/centos-7.7/netstat-rnee.out","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-rnl.json"]}},{"commit":"5d0dbece9317e84a47d9f4b2d18a9ffa33fbee6e","message":"add netstat -r functionality for OSX","stats":{"files_changed":8,"insertions":288,"deletions":5,"files":["docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-r.out","tests/fixtures/osx-10.14.6/netstat-rnl.json","tests/fixtures/osx-10.14.6/netstat-rnl.out","tests/test_netstat.py"]}},{"commit":"df1e4b414b2bda5be3153767cd854b2483ba600b","message":"remove unused folder","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":[".gitignore"]}},{"commit":"40760991e7dae43cd15134310f7bbb5ce0f58dae","message":"update copyright date","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["LICENSE.md"]}},{"commit":"464f5f86cf2c8fe6a1a857b0ad4d221a3edf3d88","message":"update description","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"7b09e9fccdd4f09218a500b54c898ada1b9843c7","message":"set empty values to Null and update fixtures","stats":{"files_changed":5,"insertions":8,"deletions":5,"files":["docs/parsers/dmidecode.md","jc/parsers/dmidecode.py","tests/fixtures/centos-7.7/dmidecode.json","tests/fixtures/fedora32/dmidecode.json","tests/fixtures/ubuntu-18.04/dmidecode.json"]}},{"commit":"6cba7d429898d331c674c778f8bd85ba75a8dca9","message":"remove linux from description","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"9730f62e4970b5a4490f8dc24b6cfb9cacd0cbf2","message":"fixup name field and update test fixtures","stats":{"files_changed":5,"insertions":151,"deletions":133,"files":["jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json","tests/fixtures/osx-10.14.6/netstat.out"]}},{"commit":"e0c1c87f549eee000b93b5f5a3e8d0b052eb7d32","message":"formatting","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["README.md"]}},{"commit":"931b3d2b836b251590497f4cfa65f106762086c1","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"e5d561baeecf1fd83a884b3cd9d322762f750dfb","message":"add multipath condition for osx detection","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/netstat.py"]}},{"commit":"2867593e7aa12299686e2c6aa0f2a79a9b550b53","message":"changelog update","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["changelog.txt"]}},{"commit":"dd52fee5635c977d5c77046ab9fe78d2ed10deef","message":"osx netstat tests and fixtures","stats":{"files_changed":7,"insertions":2141,"deletions":0,"files":["tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-Abn.out","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat-An.out","tests/fixtures/osx-10.14.6/netstat.json","tests/fixtures/osx-10.14.6/netstat.out","tests/test_netstat.py"]}},{"commit":"8e1f8858273e671a882a07eae1c35b38f5298c94","message":"fix filtered netstat views","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["jc/parsers/netstat.py"]}},{"commit":"2d39a58f902e6af77f8f96ffcd1d68b7cbadd56c","message":"doc update","stats":{"files_changed":4,"insertions":81,"deletions":14,"files":["README.md","docs/parsers/dmidecode.md","docs/parsers/netstat.md","jc/parsers/dmidecode.py"]}},{"commit":"9c4fa2ae2601ca4880c0b078fa917f01f1392e0e","message":"integer conversions and icmp fix","stats":{"files_changed":2,"insertions":22,"deletions":2,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"]}},{"commit":"de52d84e82df6d8c5e2416c6bc44e59c41c685da","message":"fix udp state and udp46 entries","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/netstat_osx.py"]}},{"commit":"ce9b55059a28d363b8b0ae4f3ccbdbdc4bf4b58e","message":"organize files","stats":{"files_changed":2,"insertions":185,"deletions":167,"files":["jc/parsers/netstat.py","jc/parsers/netstat_linux.py"]}},{"commit":"bcd370a6a01a115d470776f5690f8571d68d3930","message":"code cleanup","stats":{"files_changed":2,"insertions":5,"deletions":15,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"]}},{"commit":"c8216850abd2d0b8cc6761453f853f296e8a28f3","message":"code cleanup","stats":{"files_changed":1,"insertions":19,"deletions":55,"files":["jc/parsers/netstat_osx.py"]}},{"commit":"f5feedb90b39e5c3f4564615482d47ccd145844f","message":"fix comments","stats":{"files_changed":1,"insertions":1,"deletions":10,"files":["jc/parsers/netstat_osx.py"]}},{"commit":"a4371cd187fe5077018edbfeee77eb17c6a90ad3","message":"support netstat -A","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/netstat_osx.py"]}},{"commit":"9d5ba4c83404e4fab5c0f40c30b4735685499a31","message":"formatting","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/netstat_osx.py"]}},{"commit":"1639dee1bb93f6f89e8bb7b37134dc1f561c479c","message":"fix parse_post","stats":{"files_changed":1,"insertions":10,"deletions":35,"files":["jc/parsers/netstat_osx.py"]}},{"commit":"9363f430f20951e6fa739f06c85c5b6b3421b60d","message":"use list extend method to simplify code","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/netstat.py"]}},{"commit":"9192a0907364c772558380be1373b8dcea972a6d","message":"parse all sections","stats":{"files_changed":1,"insertions":124,"deletions":34,"files":["jc/parsers/netstat_osx.py"]}},{"commit":"b915eb97556ccc5fc60e8d23f7298ffec2d8e3b7","message":"initial osx parser","stats":{"files_changed":2,"insertions":237,"deletions":55,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"]}},{"commit":"1cfcc2b592f682d2b50a0c4188fa3ae832a6c682","message":"tighten up line test logic when counting tabs","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/dmidecode.py"]}},{"commit":"7138dd02b73073441a52c9b574bf0d6e02f0d7d9","message":"cleanup variables after adding to item","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/parsers/dmidecode.py"]}},{"commit":"b4276643b70f7820f8f53df22b32fffb54e30ca2","message":"add dmidecode tests and fixtures","stats":{"files_changed":4,"insertions":56,"deletions":0,"files":["tests/fixtures/centos-7.7/dmidecode.json","tests/fixtures/fedora32/dmidecode.json","tests/fixtures/ubuntu-18.04/dmidecode.json","tests/test_dmidecode.py"]}},{"commit":"2ef00763bfe7c4348f30026759941efe39861a0c","message":"fix first item","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/dmidecode.py"]}},{"commit":"54364928fc826ead7774a4cec1bcb73a5cb9ee0f","message":"fix oddities like hybrid single/multiline data and items containing multiple records","stats":{"files_changed":2,"insertions":74,"deletions":81,"files":["docs/parsers/dmidecode.md","jc/parsers/dmidecode.py"]}},{"commit":"09b3b4932b0fa4a2b18c88a8465c15a194b727e6","message":"add dmidecode output fixtures","stats":{"files_changed":3,"insertions":35430,"deletions":0,"files":["tests/fixtures/centos-7.7/dmidecode.out","tests/fixtures/fedora32/dmidecode.out","tests/fixtures/ubuntu-18.04/dmidecode.out"]}},{"commit":"29d6670119d8fcd0344e90f01bfb6260aa936e50","message":"convert integers","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/dmidecode.py"]}},{"commit":"2f654b5f1acda01192294f4c18a5a31363e7f387","message":"doc update","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["docs/parsers/dmidecode.md"]}},{"commit":"e53b9f5992450b53efc886b4fa9ca16f3dd07530","message":"add caveats to documentation","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["jc/parsers/dmidecode.py"]}},{"commit":"addb234e6162c58750cb67947bc4776635bf54fb","message":"add dmidecode doc","stats":{"files_changed":1,"insertions":153,"deletions":0,"files":["docs/parsers/dmidecode.md"]}},{"commit":"76eca3b65911a0a340d3d94322a8145ee89c50da","message":"add dmidecode","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"]}},{"commit":"f90dec4c0ecf88623fb22273b7527ec8884826c4","message":"add examples to documentation","stats":{"files_changed":1,"insertions":94,"deletions":5,"files":["jc/parsers/dmidecode.py"]}},{"commit":"8900a59d4cb424ff58d1eb27f8fda7ea0a668a5c","message":"simplify logic by removing redundant block","stats":{"files_changed":1,"insertions":1,"deletions":19,"files":["jc/parsers/dmidecode.py"]}},{"commit":"6685138200d5955115707d04aad0293ea8af5b15","message":"fix for missing multi-line values that come immediately after a previous multi-line value","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dmidecode.py"]}},{"commit":"4d3e65b980d50164b8220e59560822b9871580ea","message":"fix missing values","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/parsers/dmidecode.py"]}},{"commit":"e9282bb546f560da6396f44e2ce9e04136348e2c","message":"add dmidecode parser","stats":{"files_changed":2,"insertions":175,"deletions":0,"files":["jc/cli.py","jc/parsers/dmidecode.py"]}},{"commit":"f5627a45947e5e76e5f3e64d9b30099fe0b962a2","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"81ffdb25105c681c8ed12336d220a102b7f4215e","message":"remove shebang for Fedora packaging","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/cli.py"]}},{"commit":"4c00a99850cb6f69713be7c6ad9ffba11924d9b8","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"2bfcb45b28e2174a8bbc27237e619b5c232ccae8","message":"make cli.py executable","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["jc/cli.py"]}},{"commit":"ab0c10e791283affb227d0d5306701ba7fd29d13","message":"remove execute permissions","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["LICENSE.md","README.md"]}},{"commit":"2c1935115de03a28fe92674b04b2542b0eccb8fe","message":"Merge pull request #61 from kellyjonbrazil/dev"},{"commit":"d98e43dc78205d3224bfc1e67de2da3c5fb7ea9a","message":"add netstat item","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]}},{"commit":"9348988d646d9b9c9970c19e84f311554ae38e7b","message":"add netstat test for Fedora32","stats":{"files_changed":1,"insertions":12,"deletions":0,"files":["tests/test_netstat.py"]}},{"commit":"1285c664679c40b18327c89b85921a80b01f0191","message":"netstat with bluetooth section","stats":{"files_changed":2,"insertions":140,"deletions":0,"files":["tests/fixtures/fedora32/netstat.json","tests/fixtures/fedora32/netstat.out"]}},{"commit":"b7191bbc130e0f33d02c0a4819fa91ffff1599d3","message":"handle bluetooth section (ignore for now)","stats":{"files_changed":1,"insertions":14,"deletions":1,"files":["jc/parsers/netstat.py"]}},{"commit":"98b97509f7893cb95e9651ce9706db5c961aa997","message":"version bump","stats":{"files_changed":3,"insertions":6,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"2b2b570490f3834367a598579473001f45738e8a","message":"add tests for 'gone - no logout'","stats":{"files_changed":3,"insertions":21,"deletions":0,"files":["tests/fixtures/fedora32/last.json","tests/fixtures/fedora32/last.out","tests/test_last.py"]}},{"commit":"cce2d1ff298f2284c43c4534144329f3533a81ad","message":"add condition for 'gone - no logout'","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/last.py"]}},{"commit":"b79600c57249cbb65805caad2524cc2492342be6","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]}},{"commit":"140f1a85437745296b56976bef1b46514e323a4f","message":"test fixes for issue #60","stats":{"files_changed":7,"insertions":7,"deletions":7,"files":["tests/fixtures/centos-7.7/ls-R-newlines.json","tests/fixtures/centos-7.7/ls-R.json","tests/fixtures/centos-7.7/ls-glob.json","tests/fixtures/osx-10.14.6/ls-glob.json","tests/fixtures/ubuntu-18.04/ls-R-newlines.json","tests/fixtures/ubuntu-18.04/ls-R.json","tests/fixtures/ubuntu-18.04/ls-glob.json"]}},{"commit":"e34657cfde6816ab7a7415d83580df0a1d98a5a6","message":"fix issue #60 that was skipping the first file in some instances using -R without -l","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"]}},{"commit":"99070fa6073c4415a6faf8ca69dd6aa089af4062","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"2b46785b1f1281ee63df9159e36068f4607ad9b8","message":"add MIT license to vendorized IfconfigParser class","stats":{"files_changed":1,"insertions":25,"deletions":3,"files":["jc/parsers/ifconfig.py"]}},{"commit":"c72562524b2b9aaca0be372bb24343158829ba5a","message":"fully remove tests from packaging","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"b7dd6441c7e3f54f8a260fceef49aae6816c7151","message":"version bump","stats":{"files_changed":2,"insertions":5,"deletions":1,"files":["changelog.txt","jc/cli.py"]}},{"commit":"31fcc2f755ad86622cf51a75879b14d44f246300","message":"remove manifest.in - no longer needed due to removing tests","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["MANIFEST.in"]}},{"commit":"b391aa14bceffedb5a9c13f3f908923790edefc1","message":"add license_file to metadata","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["setup.cfg"]}},{"commit":"d3c45debbb6690acd341fbcc9b99d1ae4cf0a43c","message":"remove tests and add license file","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["setup.py"]}},{"commit":"5b08469b874553744bd5c5b1fa6581f4dcffacd0","message":"Merge pull request #57 from kellyjonbrazil/dev"},{"commit":"4a77ec63a46554c84e646d31564230774ed87431","message":"add IfconfigParser class","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["docs/parsers/ifconfig.md"]}},{"commit":"d13606b6dc2c207be6dea89a2c3e713c18a574b8","message":"modify dependencies for easier packaging into Fedora","stats":{"files_changed":4,"insertions":7,"deletions":6,"files":["changelog.txt","jc/cli.py","requirements.txt","setup.py"]}},{"commit":"05291c93bba1aa364ba1ac7f2508e24bb362a814","message":"vendorize ifconfig-parser module for easier packaging in Fedora","stats":{"files_changed":1,"insertions":198,"deletions":3,"files":["jc/parsers/ifconfig.py"]}},{"commit":"8cf00a208eb8493300331e7361b72e4f9e3f140e","message":"change text to strings","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"06d73c88767a5b4d6003231c897c447ee5e1faa5","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"649c646ea25ac7f89900cffa8919df01671bd32d","message":"add brew install option","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]}},{"commit":"b7756d92501a7b8ba8e77d77d9d3718a58425beb","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"1cd2cd954c21e5caec333507bd81819c82d45b49","message":"remove references to homebrew/shim to allow tests to pass in homebrew packaging ci/cd","stats":{"files_changed":4,"insertions":2,"deletions":16,"files":["tests/fixtures/osx-10.11.6/du.json","tests/fixtures/osx-10.11.6/du.out","tests/fixtures/osx-10.14.6/du.json","tests/fixtures/osx-10.14.6/du.out"]}},{"commit":"72020b8da999ddca6f9ba82da235c9f42e4f4273","message":"move packages info to jc-packages github page","stats":{"files_changed":1,"insertions":2,"deletions":22,"files":["README.md"]}},{"commit":"cf9720b749e7fc8caed0d2f1f2b1727a22a156b6","message":"update install info","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]}},{"commit":"967b9db7f90a3c3a0352edde7f4455c5f5d45b18","message":"spelling","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["README.md"]}},{"commit":"bb3acb1182f4d509f9ddc7dfcffa4578e0a2bd5e","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"560c7f7e6d1f8a69ab026ddbff753d232ca1d00b","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"79b28417644e00b933f531374d2f7fe8051e61be","message":"add new binary package install info","stats":{"files_changed":1,"insertions":26,"deletions":0,"files":["README.md"]}},{"commit":"a06a89cbd11026aa3910fadd1eff7fe388d02507","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"431bd969eb4809424fe99a02a7decb98bce9ea51","message":"use sys.exit(0) instead of exit()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]}},{"commit":"c87b722aec6e6964c516bbb8e80667ad7d9c6bc7","message":"spelling","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"3688b8b014a1cf753b2207fbf3ebf0292c3fd672","message":"Merge pull request #56 from kellyjonbrazil/dev"},{"commit":"07b8d9e0c0d723d93e6c652f5b6156c467c451c7","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"7454b53e395e9122c00d4cf06b1c2af109913d7a","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["README.md"]}},{"commit":"3d6a76024de0f9dcf91a4ab49cabe461074114fb","message":"update with JC_COLORS info","stats":{"files_changed":1,"insertions":18,"deletions":0,"files":["README.md"]}},{"commit":"421b9809575a8de00229af4b851739889638ac74","message":"JC_COLORS working","stats":{"files_changed":1,"insertions":18,"deletions":37,"files":["jc/cli.py"]}},{"commit":"4a22e27d6a80a988f4de17bce421110d6abb8867","message":"add set_env_colors function","stats":{"files_changed":1,"insertions":64,"deletions":0,"files":["jc/cli.py"]}},{"commit":"99f7842dee0f79cf933fae185cf8b0ed7c8b210f","message":"fix brek on pipe error","stats":{"files_changed":3,"insertions":11,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"7f869b4b187d70752207a7e74c13b858446f898f","message":"change colors to ansi and match jello style","stats":{"files_changed":3,"insertions":9,"deletions":11,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"9665f4ee84680f3a8154b8a43ea668af2907782c","message":"add pypi badge","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]}},{"commit":"606904d48b1c7e0c19a940b5be0b564d1b5be6c8","message":"Merge pull request #53 from kellyjonbrazil/dev"},{"commit":"3f5279b97c386c736e0e2faa5c39d68ef89c46aa","message":"version bump to 1.10.1","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"f5ec21e6ac612566af93158fc3968b901322d04a","message":"use in instead of find()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_luf.py"]}},{"commit":"578a284465f014fe71ad6ac00bd41dc24ab2ced9","message":"use in instead of find()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_ls.py"]}},{"commit":"422e392d9d98a7864312fc7fbd7f45537b71acbe","message":"use in instead of find()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_lj.py"]}},{"commit":"54dfffd34a17d1194690142ac403391fc65bb85f","message":"use in instead of find()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl.py"]}},{"commit":"cffba64d2b9165b44a8856665807111a2ad3a190","message":"use in and startswith() instead of find()","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/stat.py"]}},{"commit":"56a0c12a59bb252d3b7d0929f9fb19b4d96a8437","message":"use in instead of find()","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/pip_list.py"]}},{"commit":"c174d3de18923b2b03befb5a7dfcbd977a8e147e","message":"use in and startswith() instead of find()","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/netstat.py"]}},{"commit":"a9c59ef9fc1bb68c9d0d7beffbeb670baf5b1e3f","message":"fix logic to not for ' type ' in cleandata[0]","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/mount.py"]}},{"commit":"abdb9b26732a6a71f5938d665b2ca43a381e1b33","message":"use in instead of find()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/mount.py"]}},{"commit":"548aaab6262878d21f8b9539950cfad48638e35c","message":"remove old commented code","stats":{"files_changed":1,"insertions":1,"deletions":42,"files":["jc/parsers/lsof.py"]}},{"commit":"20571c87ae9e1ca8a1f3120511910751420a35ac","message":"us in instead of find()","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/jobs.py"]}},{"commit":"19e49200de5c731f76b42e80388c5223e8097e39","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"]}},{"commit":"d32f5c67a91ede572c88e431b2ad0ce4d6c87dec","message":"use startswith() instead of find()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/iptables.py"]}},{"commit":"b83b626435c55d2aa63e56dd8f22603da59e7626","message":"use startswith() instead of find()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ifconfig.py"]}},{"commit":"ab2c1b25ec5da5f2ba238868c4dfca95a44da30e","message":"use startswith() and in instead of find()","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/hosts.py"]}},{"commit":"f2d46313a4508f13656cdb360f83fdf4116cc7d7","message":"use startswith() instead of find()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/fstab.py"]}},{"commit":"87e4796a6c936793e2784346819c7033d59b91e4","message":"use in instead of .find()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/df.py"]}},{"commit":"0014a5c2f4c056c2683d6614a65d778b1f527932","message":"us startswith() and in instead of .find()","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab_u.py"]}},{"commit":"7af56e0dadab7d8b9538f3b7a550ad6dd1ac217d","message":"use startswith() and in instead of find()","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab.py"]}},{"commit":"a5ae6e3c017b041f9079ff12455b7551ad204cb3","message":"use startswith() instead of find()","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/arp.py"]}},{"commit":"fe1a0d1faf46f55ed2888ed0065f3f3144691ed8","message":"use in instead of .find()","stats":{"files_changed":1,"insertions":10,"deletions":9,"files":["jc/parsers/dig.py"]}},{"commit":"302f05cdda305e46e69b74d5b0096f64c17da637","message":"prettify style block","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]}},{"commit":"c0044be7b0b6dadcffb64cb88ad92bf653dd2b6b","message":"rename color grey to gray","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]}},{"commit":"01100788070b82b4b827ef356972fa9b8f737eeb","message":"update badge","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"42eacb45f8fdf8085c6231bf5297629c2ec97c22","message":"rename to Tests","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]}},{"commit":"a43e2e19916662d509883457c160d7f95f97ae12","message":"add -m option info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]}},{"commit":"c8b721d4f6e46a2db77e1140b9caeb3b403fef72","message":"version bump to 1.10.0","stats":{"files_changed":4,"insertions":9,"deletions":3,"files":["changelog.txt","jc/cli.py","requirements.txt","setup.py"]}},{"commit":"d0bfddc3d9989444757d6668726c916e5363620b","message":"add color and -m monochrome option","stats":{"files_changed":1,"insertions":41,"deletions":6,"files":["jc/cli.py"]}},{"commit":"6b925a16c87cf75bb30edfda38511e8f84a4f6d6","message":"add tests badge","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]}},{"commit":"89ebd9fc2271d2c76353d5707bfd4afb7dedc278","message":"add axfr info to schema","stats":{"files_changed":2,"insertions":20,"deletions":0,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]}},{"commit":"6b4ba662317629839aa62fbcfefb8ed3337c37ef","message":"Merge pull request #52 from kellyjonbrazil/dev"},{"commit":"5b697dc38141cdd47fcdd63bf295a80a7da86697","message":"add more dig tests","stats":{"files_changed":1,"insertions":72,"deletions":0,"files":["tests/test_dig.py"]}},{"commit":"9ba73c95d1a528a9a92be4068805bb5aa027901e","message":"add tests","stats":{"files_changed":7,"insertions":215,"deletions":0,"files":["tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/centos-7.7/dig-axfr.out","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-axfr.out","tests/fixtures/ubuntu-18.04/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-axfr.out","tests/test_dig.py"]}},{"commit":"93aa39044749c4c0ed749f62fb00fc1c76dc5af0","message":"version bump to v1.9.3","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"3cfb8945ddd83c00a720c44e2c1d97da0d8bad25","message":"use startswith() instead of find","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/dig.py"]}},{"commit":"cd8d38f2a136c4f35efc020b3476d09e965b71f1","message":"add axfr support","stats":{"files_changed":1,"insertions":50,"deletions":1,"files":["jc/parsers/dig.py"]}},{"commit":"8ec8cd62944c59c462ab9f520c1dcfd14218b1ed","message":"Merge pull request #50 from kellyjonbrazil/dev"},{"commit":"c02811356153c2b4f8b2d7efb7f48bf8f7748068","message":"version bump to v1.9.2","stats":{"files_changed":3,"insertions":6,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"5f22e1c8031b808ef02ffe078408bd58cc76e570","message":"fix and test for osx arp entries without ifscope","stats":{"files_changed":3,"insertions":33,"deletions":0,"files":["tests/fixtures/osx-10.14.6/arp-a2.json","tests/fixtures/osx-10.14.6/arp-a2.out","tests/test_arp.py"]}},{"commit":"d3351787e5cabd064c19e6617e9535e501686404","message":"change osx detection","stats":{"files_changed":1,"insertions":10,"deletions":9,"files":["jc/parsers/arp.py"]}},{"commit":"e5bea9ae3b0a70b38f7da7dd9184343dbbd18887","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/file.py"]}},{"commit":"93c710abe9171568f61f65c4f84c040ffc24870c","message":"Merge pull request #49 from kellyjonbrazil/dev"},{"commit":"c29e7cfe5cc4b2151912c6f618137d1b6c39c7be","message":"version bump to 1.9.1","stats":{"files_changed":4,"insertions":9,"deletions":6,"files":["README.md","changelog.txt","jc/cli.py","setup.py"]}},{"commit":"cb5c1ba00dc0e02bf6ad6c40096d99e319fa6171","message":"add tests for fix to make the file parser splitting more robust","stats":{"files_changed":3,"insertions":101,"deletions":0,"files":["tests/fixtures/osx-10.14.6/file2.json","tests/fixtures/osx-10.14.6/file2.out","tests/test_file.py"]}},{"commit":"9a012b94e1942a14bc6dae3fb967ef618819c77b","message":"make splitting more robust","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/file.py"]}},{"commit":"400f5a44ece280cb0097d806b78a9490d2905600","message":"Merge pull request #48 from kellyjonbrazil/dev"},{"commit":"a2ab5bab91ea980399df1afb9d8071fa3282d04e","message":"version bump to v1.9.0","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"fc8ab27361df3359b706125531b2643612d6996a","message":"bugfix for misaligned columns and additional test for ntpq #31","stats":{"files_changed":6,"insertions":93,"deletions":51,"files":["README.md","docs/parsers/ntpq.md","jc/parsers/ntpq.py","tests/fixtures/ubuntu-18.04/ntpq-p2.json","tests/fixtures/ubuntu-18.04/ntpq-p2.out","tests/test_ntpq.py"]}},{"commit":"59f19d33a5c6677ea756a9424fdb032b430511a2","message":"add file command tests for #41","stats":{"files_changed":7,"insertions":153,"deletions":0,"files":["tests/fixtures/centos-7.7/file.json","tests/fixtures/centos-7.7/file.out","tests/fixtures/osx-10.14.6/file.json","tests/fixtures/osx-10.14.6/file.out","tests/fixtures/ubuntu-18.04/file.json","tests/fixtures/ubuntu-18.04/file.out","tests/test_file.py"]}},{"commit":"dfc96181159748d019419a2cba7aa9cb3b7a2a2c","message":"add file parser for issue #41","stats":{"files_changed":6,"insertions":260,"deletions":1,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/file.md","jc/cli.py","jc/parsers/file.py"]}},{"commit":"8e02e5c75a11cf205299ee6f87b67f9b787cf55e","message":"fix issue with getting options with some commands #47","stats":{"files_changed":2,"insertions":6,"deletions":5,"files":["jc/cli.py","tests/test_cli.py"]}},{"commit":"970493ab9346a344b21be7614903ad81bc65a6e9","message":"add magic commands","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["jc/parsers/airport.py","jc/parsers/airport_s.py"]}},{"commit":"64d78956eb33ca0a2564fded3d12729ee036a915","message":"update acknowledgment","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]}},{"commit":"40c05346f4098f8eea14c42da07df3faa143587a","message":"re-adding optimizations from https://github.com/philippeitis","stats":{"files_changed":1,"insertions":12,"deletions":25,"files":["jc/parsers/history.py"]}},{"commit":"e9b0bc1409a824a82dabd2479892b7d18bad8c3f","message":"doc update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/airport.py"]}},{"commit":"798e6bb7d939176bb36771a6d41bd55403d583be","message":"tests passing for airport -s. issue #46","stats":{"files_changed":2,"insertions":29,"deletions":0,"files":["tests/fixtures/osx-10.14.6/airport-s.json","tests/test_airport_s.py"]}},{"commit":"12a370deed03ba42d7b7ebb410195ce5f32bb9c2","message":"add airport -s parser for issue #46","stats":{"files_changed":8,"insertions":372,"deletions":9,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/airport.md","docs/parsers/airport_s.md","jc/cli.py","jc/parsers/airport.py","jc/parsers/airport_s.py"]}},{"commit":"553bfbe1a0dd866851ba7eca66e9295c2097ad86","message":"tests passing for airport -I. Issue #46","stats":{"files_changed":3,"insertions":40,"deletions":6,"files":["docs/parsers/airport.md","jc/parsers/airport.py","tests/test_airport.py"]}},{"commit":"52494321fcfe0dc7ee71d8d78210b3c10372a237","message":"fixes and docs for airport parser issue #46","stats":{"files_changed":5,"insertions":120,"deletions":15,"files":["README.md","docs/parsers/airport.md","jc/parsers/airport.py","tests/fixtures/osx-10.14.6/airport-I.json","tests/fixtures/osx-10.14.6/airport-I.out"]}},{"commit":"c6c9e06496683d2dd3586d17085801c7e698d960","message":"added airport command parser","stats":{"files_changed":7,"insertions":196,"deletions":1,"files":["changelog.txt","docgen.sh","docs/parsers/airport.md","jc/cli.py","jc/parsers/airport.py","tests/fixtures/osx-10.14.6/airport-I.out","tests/fixtures/osx-10.14.6/airport-s.out"]}},{"commit":"e3a6c05a58a2451e70975d8fabf644c56603c73d","message":"timedatectl fixes, tests, and fixtures for issue #42","stats":{"files_changed":5,"insertions":64,"deletions":17,"files":["docs/parsers/timedatectl.md","jc/parsers/timedatectl.py","tests/fixtures/centos-7.7/timedatectl.json","tests/fixtures/ubuntu-18.04/timedatectl.json","tests/test_timedatectl.py"]}},{"commit":"391d06f68d1f45d33590d5407d3a5e4f723af717","message":"change selection_state to state","stats":{"files_changed":7,"insertions":35,"deletions":35,"files":["README.md","docs/parsers/ntpq.md","jc/parsers/ntpq.py","tests/fixtures/centos-7.7/ntpq-p.json","tests/fixtures/centos-7.7/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-p.json","tests/fixtures/ubuntu-18.04/ntpq-pn.json"]}},{"commit":"99804ea06e0c70e3a82ddc7f9c7a42343374d700","message":"added timedatectl status parser","stats":{"files_changed":6,"insertions":222,"deletions":0,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/timedatectl.md","jc/cli.py","jc/parsers/timedatectl.py"]}},{"commit":"51935deb2ad18e4ea3ca16954ce810354f6095a9","message":"timedatectl test fixtures","stats":{"files_changed":2,"insertions":21,"deletions":0,"files":["tests/fixtures/centos-7.7/timedatectl.out","tests/fixtures/ubuntu-18.04/timedatectl.out"]}},{"commit":"b24d0c3a475b88d9ccf1a8fe29715ee60972fcad","message":"ntpq docs","stats":{"files_changed":2,"insertions":34,"deletions":2,"files":["README.md","jc/parsers/ntpq.py"]}},{"commit":"762a886d6fdf5c2ad21d81868d138fb32621ed1c","message":"add ntpq tests","stats":{"files_changed":8,"insertions":133,"deletions":0,"files":["tests/fixtures/centos-7.7/ntpq-p.json","tests/fixtures/centos-7.7/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-p.json","tests/fixtures/ubuntu-18.04/ntpq-p.out","tests/fixtures/ubuntu-18.04/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-pn.out","tests/fixtures/ubuntu-18.04/ntqp-p.out","tests/test_ntpq.py"]}},{"commit":"2c3e9ddfe47f56cd7edc2fdf6317f7ecec0b7918","message":"add ntpq parser for issue #31","stats":{"files_changed":7,"insertions":543,"deletions":0,"files":["changelog.txt","docgen.sh","docs/parsers/ntpq.md","jc/cli.py","jc/parsers/ntpq.py","tests/fixtures/centos-7.7/ntpq-p.out","tests/fixtures/centos-7.7/ntpq-pn.out"]}},{"commit":"c7cd2b63c8f24e9d17c458880fe401d8032395ab","message":"delete unused test file","stats":{"files_changed":1,"insertions":0,"deletions":91,"files":["tests/fixtures/generic/oscar_age_male.csv"]}},{"commit":"f0528ea83112e71ff51c89be27fc9bbdfbbf1951","message":"Merge pull request #45 from kellyjonbrazil/dev"},{"commit":"5bc5596f604fb87dffbfdf44ce2395b16bf01297","message":"version bump to 1.8.1","stats":{"files_changed":4,"insertions":17,"deletions":4,"files":["changelog.txt","jc/cli.py","setup.py","tests/test_ls.py"]}},{"commit":"2c27ac46be803b583caf82c1765bd0c35cee8bc1","message":"add ls test fixtures","stats":{"files_changed":2,"insertions":2454,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-lR-empty-folder.json","tests/fixtures/osx-10.14.6/ls-lR-empty-folder.out"]}},{"commit":"caad840153e40dc660a2d5e06a96f3451fef25f9","message":"Merge pull request #44 from philippeitis/patch-5"},{"commit":"65bd7e2904016141c1ed53cdd437865c66d7628e","message":"Merge pull request #1 from kellyjonbrazil/pr/44"},{"commit":"c3d7d7db12d4870fc4499e0e3445d85ae89f2aea","message":"removed whitespace","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"56053103625af6fb7fa749fc5bc3dbdc62fc223c","message":"added tests, removed os import, changed to 'assertEqual'","stats":{"files_changed":1,"insertions":11,"deletions":4,"files":["tests/test_cli.py"]}},{"commit":"17b6efe82e6a558353b011c543489eaaf3a6d3ac","message":"Create basic tests for generate_magic_commands()","stats":{"files_changed":1,"insertions":14,"deletions":0,"files":["tests/test_cli.py"]}},{"commit":"a032ae56ae7d247e00415267b65b2a8b80a3302e","message":"Pass args to generate_magic_command() to allow testing.","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]}},{"commit":"eab2f4b0566b4c76db661cbfa99a56a6bf8d6541","message":"Move core magic() logic into seperate function for testability, minor tweaks.","stats":{"files_changed":1,"insertions":33,"deletions":19,"files":["jc/cli.py"]}},{"commit":"aff86ae6c71abfe1cbdba5c574a5f3707292ec19","message":"reimpliment magic() based on the dictionary approach suggested by philippeitis","stats":{"files_changed":1,"insertions":29,"deletions":39,"files":["jc/cli.py"]}},{"commit":"7ece9ddc1a37551cdaaac50f37a48e6d98b18bf4","message":"version bump ls","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]}},{"commit":"7cd048e839a7cc8404fd5abc153a3d315c207819","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]}},{"commit":"1e22f610a33903e8525d35a18b1dcf760a93791e","message":"fix for osx - doesn't print 'total xx' line if empty directory (issue #40)","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/ls.py"]}},{"commit":"5249c972ae25e9b289a2667bf471aad5e58c70a9","message":"add to changelog","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["changelog.txt"]}},{"commit":"fd45f856a050f6c56a7a6b50b97b3d8c4de28af0","message":"import jc.utils instead of jc","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/history.py"]}},{"commit":"c8ab40cd33b14a3a1937ecf64bb23e282f5bb921","message":"ignore .github folder","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"]}},{"commit":"b2c872925b37254dac74578c1803b4127f8411c4","message":"add utf-8 encoding for testing on Windows","stats":{"files_changed":20,"insertions":208,"deletions":220,"files":["tests/test_ls.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_passwd.py","tests/test_pip_list.py","tests/test_ps.py","tests/test_route.py","tests/test_shadow.py","tests/test_ss.py","tests/test_systemctl_lj.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py","tests/test_who.py","tests/test_xml.py","tests/test_yaml.py"]}},{"commit":"f48e229202f8ab1ebfa502ca57bb31cf673c7a62","message":"utf-8 open for windows tests","stats":{"files_changed":21,"insertions":192,"deletions":192,"files":["tests/test_arp.py","tests/test_blkid.py","tests/test_crontab.py","tests/test_crontab_u.py","tests/test_csv.py","tests/test_df.py","tests/test_dig.py","tests/test_du.py","tests/test_env.py","tests/test_free.py","tests/test_fstab.py","tests/test_group.py","tests/test_gshadow.py","tests/test_history.py","tests/test_hosts.py","tests/test_id.py","tests/test_ifconfig.py","tests/test_ini.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_last.py"]}},{"commit":"799fec92c39b1ff0696c6ebb182c4bef66b86e56","message":"utf-8 for windows support","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["tests/test_pip_show.py","tests/test_systemctl.py"]}},{"commit":"87a41c2fcaa395f108b5a5126ed77f7cc7fe5d6d","message":"add utf-8 to open function","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["tests/test_lsblk.py","tests/test_stat.py"]}},{"commit":"7f85de0c46cda95d57b9677ba0ca3ea59690e502","message":"add windows-latest","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]}},{"commit":"13661b19934a74417713e98e3e1e4df6bb0f29ad","message":"Merge pull request #37 from philippeitis/continuous_integration"},{"commit":"51d5c3892d6ff1e2e6ac7c4f3e496e7d9ed4b6a7","message":"Remove Windows tests, due to lack of support.","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]}},{"commit":"e4eab4641ac15220f2787c5d27b443ab8c718b86","message":"Change line in blkid.py to trigger CI","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/blkid.py"]}},{"commit":"9b148e0ba37e18749d95608e1bac6c090ab83ee2","message":"Add requirements.txt","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["requirements.txt"]}},{"commit":"de28932650d5027e2781011f1243b89f053b241d","message":"Consolidate dictionary into creation, trigger CI","stats":{"files_changed":1,"insertions":7,"deletions":6,"files":["jc/parsers/arp.py"]}},{"commit":"5f798d603e461d2de5adf74662ba4d4b121f28f2","message":"version bump and ack to philippeitis","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/history.py"]}},{"commit":"a0757b2dd3fc0f3e26622941d93bd909dae0a1f7","message":"optimize line parsing","stats":{"files_changed":1,"insertions":1,"deletions":5,"files":["jc/parsers/foo.py"]}},{"commit":"498d51b4e802cb40cac58aae1eff1f723bbbd896","message":"Enable Continuous Integration with GitHub Actions.","stats":{"files_changed":1,"insertions":31,"deletions":0,"files":[".github/workflows/pythonapp.yml"]}},{"commit":"b06b6bae3f64f591c9075812dc1b632ef6d2da37","message":"Merge pull request #36 from philippeitis/patch-3"},{"commit":"b5eaff21372a58aefb66e5afc5e863db8355fee1","message":"Merge pull request #35 from kellyjonbrazil/revert-34-patch-3"},{"commit":"c01bcd3734382a0c388d9f4041fc888171ca7675","message":"Revert \"Simplify process() in history.py, avoid list allocation in parse()\"","stats":{"files_changed":1,"insertions":25,"deletions":12,"files":["jc/parsers/history.py"]}},{"commit":"d75c4068caaf4adbe9a39fa452ae867421053673","message":"Merge pull request #34 from philippeitis/patch-3"},{"commit":"6aa2d5a3d26f9f00c3334928f6f0e501860433da","message":"Merge pull request #33 from philippeitis/patch-2"},{"commit":"065276805f0f2dd23a6382f0120ca07e9eae116f","message":"Simplify process() in history.py, avoid list allocation in parse()","stats":{"files_changed":1,"insertions":12,"deletions":25,"files":["jc/parsers/history.py"]}},{"commit":"a63408c8cf3f99646be2b375f651d6cf417f7ae0","message":"Handle case where only options are passed.","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/cli.py"]}},{"commit":"69576f6bfae073196627a0a39b5ececb8666d25c","message":"minor sytax fixes","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/cli.py"]}},{"commit":"19845624e2996da4653efc2f312aceb514feaf5c","message":"Merge pull request #32 from philippeitis/patch-1"},{"commit":"22ff2964e9889587711e779ac24f8f8034212f5e","message":"Simplify main(), magic() methods.","stats":{"files_changed":1,"insertions":62,"deletions":75,"files":["jc/cli.py"]}},{"commit":"d96b3a65a98bc135d21d4feafc0a43317b5a11fa","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"4989445ef4bb8919d9b3b95e2fcee77ca7692aec","message":"Merge pull request #30 from kellyjonbrazil/dev"},{"commit":"6770892acd49aced225dbccf39290f33522c9001","message":"add release notes link","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]}},{"commit":"d4eba8740fc325756f3db96ab37a5383540cbeff","message":"release date 3/3","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]}},{"commit":"9f607605605e47990f97ccfd48fde19a14e036e7","message":"add group and gshadow tests","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["tests/test_group.py","tests/test_gshadow.py"]}},{"commit":"0a8f8ac934f040141e6a4eec8cf7170e1ca73294","message":"add group and gshadow parsers","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]}},{"commit":"6ae24c82447bcff606e7027dd01b916293b49584","message":"add group and gshadow test fixtures","stats":{"files_changed":10,"insertions":274,"deletions":0,"files":["tests/fixtures/centos-7.7/group.json","tests/fixtures/centos-7.7/group.out","tests/fixtures/centos-7.7/gshadow.json","tests/fixtures/centos-7.7/gshadow.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/group.json","tests/fixtures/osx-10.14.6/group.out","tests/fixtures/ubuntu-18.04/group.json","tests/fixtures/ubuntu-18.04/group.out","tests/fixtures/ubuntu-18.04/gshadow.json"]}},{"commit":"d3679082a8c5cff76eb7de67c33fe716a1402182","message":"add group and gshadow parsers","stats":{"files_changed":1,"insertions":64,"deletions":0,"files":["README.md"]}},{"commit":"fb08b42dca135705a3759435335d95c898d47f60","message":"change 'group_list' to 'members'","stats":{"files_changed":2,"insertions":21,"deletions":21,"files":["docs/parsers/group.md","jc/parsers/group.py"]}},{"commit":"4aeaa9f42a88bf4e05c8780a35cc8c4d83c9b842","message":"add /etc/gshadow parser","stats":{"files_changed":5,"insertions":316,"deletions":0,"files":["docgen.sh","docs/parsers/gshadow.md","jc/cli.py","jc/parsers/gshadow.py","tests/fixtures/ubuntu-18.04/gshadow.out"]}},{"commit":"5f5693da048cb4739dc56500c672dc8fbccaaf32","message":"spelling fix","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["docs/parsers/csv.md"]}},{"commit":"5eb0f61727f92a84fb3620e13db072167ef552ef","message":"add /etc/group file parser","stats":{"files_changed":4,"insertions":333,"deletions":0,"files":["docgen.sh","docs/parsers/group.md","jc/cli.py","jc/parsers/group.py"]}},{"commit":"958e998991b1cc61dc1dc341b90cd53f4691cd43","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/csv.py"]}},{"commit":"b78c1509f67fb76d17ac97193a2851d8d9e17f62","message":"try/except dialect detection","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/csv.py"]}},{"commit":"ce184d4d57faa3f1bca5bcaa02da7a5a5d995eb3","message":"add csv parser tests","stats":{"files_changed":20,"insertions":24054,"deletions":0,"files":["tests/fixtures/generic/csv-biostats.csv","tests/fixtures/generic/csv-biostats.json","tests/fixtures/generic/csv-cities.csv","tests/fixtures/generic/csv-cities.json","tests/fixtures/generic/csv-deniro.csv","tests/fixtures/generic/csv-deniro.json","tests/fixtures/generic/csv-example.csv","tests/fixtures/generic/csv-example.json","tests/fixtures/generic/csv-flyrna.json","tests/fixtures/generic/csv-flyrna.tsv","tests/fixtures/generic/csv-flyrna2.json","tests/fixtures/generic/csv-flyrna2.tsv","tests/fixtures/generic/csv-homes-pipe.csv","tests/fixtures/generic/csv-homes-pipe.json","tests/fixtures/generic/csv-homes.csv","tests/fixtures/generic/csv-homes.json","tests/fixtures/generic/csv-insurance.csv","tests/fixtures/generic/csv-insurance.json","tests/fixtures/generic/oscar_age_male.csv","tests/test_csv.py"]}},{"commit":"b4c3714ced9ee5cc6a7ef0c59a43cf85e1cb9824","message":"removed [OPTIONS] PARSER syntax. still works but prefer the PARSER [OPTIONS] syntax for better performance","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["README.md"]}},{"commit":"5b7dfa043864f1a3f34aa4ef5c6554a2dfe185f9","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]}},{"commit":"391a3884765780497dc34e0e9938ff5032c81291","message":"doc update","stats":{"files_changed":2,"insertions":49,"deletions":0,"files":["README.md","changelog.txt"]}},{"commit":"d9c4e2ed4c0f908f4b63c2376b53ddfd32a0fae1","message":"add csv file parser","stats":{"files_changed":4,"insertions":241,"deletions":0,"files":["docgen.sh","docs/parsers/csv.md","jc/cli.py","jc/parsers/csv.py"]}},{"commit":"0c42db38b102987629e40cee2716b826161e6e94","message":"doc update","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/who.md","jc/parsers/who.py"]}},{"commit":"2f9be8bf33f8be5651d06da9d316f7894606df19","message":"simplify usage","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/cli.py"]}},{"commit":"e8c00155e861b9eedfdf37a22912271bec581d62","message":"add -b to warning message","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]}},{"commit":"cc88fdd9ee3951d7ef2aa881cc12f0b7f96aef86","message":"update example","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]}},{"commit":"d9de11ef1d846a9625dad0adb962b864404c90c1","message":"add another who example","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["README.md"]}},{"commit":"0ceda97d0968b67b70cdbb68f7a62657e79c9935","message":"who parser tests","stats":{"files_changed":1,"insertions":88,"deletions":0,"files":["tests/test_who.py"]}},{"commit":"d0dec92ba84640ddc40da7c6faa6568b76757e04","message":"add who test fixtures","stats":{"files_changed":12,"insertions":36,"deletions":0,"files":["tests/fixtures/centos-7.7/who-a.json","tests/fixtures/centos-7.7/who-a.out","tests/fixtures/centos-7.7/who.json","tests/fixtures/centos-7.7/who.out","tests/fixtures/osx-10.14.6/who-a.json","tests/fixtures/osx-10.14.6/who-a.out","tests/fixtures/osx-10.14.6/who.json","tests/fixtures/osx-10.14.6/who.out","tests/fixtures/ubuntu-18.04/who-a.json","tests/fixtures/ubuntu-18.04/who-a.out","tests/fixtures/ubuntu-18.04/who.json","tests/fixtures/ubuntu-18.04/who.out"]}},{"commit":"d420c008d8aaa0879fa5a3f236d81acb506376c3","message":"fix for pts lines with no user info","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["jc/parsers/who.py"]}},{"commit":"f0b32db4333477e22cc40de62cf026a6a7aa2eb6","message":"who doc update","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","docs/parsers/who.md"]}},{"commit":"bc838eda591473d32b11a885e60ef653925739d0","message":"fix output for non-extended","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/parsers/who.py"]}},{"commit":"afe55b6af07b74816d33d9555ffaa1c1921dd27a","message":"add who parser","stats":{"files_changed":1,"insertions":46,"deletions":0,"files":["README.md"]}},{"commit":"dd3a3ac302d7b35beef1181e74aed0faf96fd3e4","message":"doc update and process pid integers","stats":{"files_changed":4,"insertions":255,"deletions":9,"files":["changelog.txt","docgen.sh","docs/parsers/who.md","jc/parsers/who.py"]}},{"commit":"f9982a79474c1838f37fc0ff88437980b228d7a1","message":"fixes for from and comment fields","stats":{"files_changed":1,"insertions":11,"deletions":2,"files":["jc/parsers/who.py"]}},{"commit":"07c1be9e9ad9f62cf76c23788152de8f3530ee16","message":"add who command parser","stats":{"files_changed":2,"insertions":170,"deletions":0,"files":["jc/cli.py","jc/parsers/who.py"]}},{"commit":"f832b88755bfbd3878ec402e603180e6825279be","message":"add passwd and shadow tests","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["tests/test_passwd.py","tests/test_shadow.py"]}},{"commit":"0fac757efca41db062b2f65acc727963c5fb353c","message":"add passwd and shadow parsers","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]}},{"commit":"fc15742065531152f3d5895042eeb806e33a192a","message":"passwd and shadow test fixtures","stats":{"files_changed":10,"insertions":215,"deletions":0,"files":["tests/fixtures/centos-7.7/passwd.json","tests/fixtures/centos-7.7/passwd.out","tests/fixtures/centos-7.7/shadow.json","tests/fixtures/centos-7.7/shadow.out","tests/fixtures/osx-10.14.6/passwd.json","tests/fixtures/osx-10.14.6/passwd.out","tests/fixtures/ubuntu-18.04/passwd.json","tests/fixtures/ubuntu-18.04/passwd.out","tests/fixtures/ubuntu-18.04/shadow.json","tests/fixtures/ubuntu-18.04/shadow.out"]}},{"commit":"6f2466a1319eaa4256ae7a2a0f23b3ff37882d37","message":"update readme with /etc/passwd and /etc/shadow file parsers","stats":{"files_changed":1,"insertions":73,"deletions":0,"files":["README.md"]}},{"commit":"4b90e22f0a9c6790bca62c8314945a7ffc6e267b","message":"doc update","stats":{"files_changed":2,"insertions":137,"deletions":9,"files":["docs/parsers/shadow.md","jc/parsers/shadow.py"]}},{"commit":"c4935687853fb3b079ae42614793cdafe68e124e","message":"doc fix","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/passwd.md","jc/parsers/passwd.py"]}},{"commit":"1cdf004b7728901dc137e57b0c8994edfdd6d417","message":"add /etc/shadow parser","stats":{"files_changed":4,"insertions":190,"deletions":0,"files":["docgen.sh","docs/parsers/shadow.md","jc/cli.py","jc/parsers/shadow.py"]}},{"commit":"a4ea50426184d30cbe849a8f80bfd5c975075c9e","message":"add /etc/passwd parser","stats":{"files_changed":4,"insertions":303,"deletions":0,"files":["docgen.sh","docs/parsers/passwd.md","jc/cli.py","jc/parsers/passwd.py"]}},{"commit":"4c2c234c3bf68d1aac66bd4d1f22b9f97e99128d","message":"add last and lastb tests","stats":{"files_changed":16,"insertions":673,"deletions":0,"files":["tests/fixtures/centos-7.7/last-w.json","tests/fixtures/centos-7.7/last-w.out","tests/fixtures/centos-7.7/last.json","tests/fixtures/centos-7.7/last.out","tests/fixtures/centos-7.7/lastb.json","tests/fixtures/centos-7.7/lastb.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/last.json","tests/fixtures/osx-10.14.6/last.out","tests/fixtures/ubuntu-18.04/last-w.json","tests/fixtures/ubuntu-18.04/last-w.out","tests/fixtures/ubuntu-18.04/last.json","tests/fixtures/ubuntu-18.04/last.out","tests/fixtures/ubuntu-18.04/lastb.json","tests/fixtures/ubuntu-18.04/lastb.out","tests/test_last.py"]}},{"commit":"3d4c0f3e89dab6496ff74df350e3238d6625933c","message":"add blkid tests","stats":{"files_changed":22,"insertions":285,"deletions":0,"files":["tests/fixtures/centos-7.7/blkid-ip-multi.json","tests/fixtures/centos-7.7/blkid-ip-multi.out","tests/fixtures/centos-7.7/blkid-ip-udev-multi.json","tests/fixtures/centos-7.7/blkid-ip-udev-multi.out","tests/fixtures/centos-7.7/blkid-ip-udev.json","tests/fixtures/centos-7.7/blkid-ip-udev.out","tests/fixtures/centos-7.7/blkid-sda2.json","tests/fixtures/centos-7.7/blkid-sda2.out","tests/fixtures/centos-7.7/blkid.json","tests/fixtures/centos-7.7/blkid.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/blkid-ip-multi.json","tests/fixtures/ubuntu-18.04/blkid-ip-multi.out",".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.json",".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.out","tests/fixtures/ubuntu-18.04/blkid-ip-udev.json","tests/fixtures/ubuntu-18.04/blkid-ip-udev.out","tests/fixtures/ubuntu-18.04/blkid-sda2.json","tests/fixtures/ubuntu-18.04/blkid-sda2.out","tests/fixtures/ubuntu-18.04/blkid.json","tests/fixtures/ubuntu-18.04/blkid.out","tests/test_blkid.py"]}},{"commit":"52fad02903468c05d2422a340ad8dbcdf18ed475","message":"doc update","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]}},{"commit":"9dcabc057c40e345971a08474b5b886e6b60a8de","message":"support multi device udev output","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/blkid.py"]}},{"commit":"db8c1079ddc25922ab6a20d0f71fb19af38f8092","message":"use maxsplit=1 in case there are multiple '=' delimiters","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/blkid.py"]}},{"commit":"8f954673abdbbd4d9b9da3eacc61b335b4909f89","message":"use shlex split for values within quotations that have spaces","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/blkid.py"]}},{"commit":"79522d1c7dd4dec15b75b06dda002752f7d97e36","message":"doc fixes","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]}},{"commit":"a18bf030794efef125c70a32fe82855e47649b32","message":"use raw strings for regular expressions","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/parsers/last.py","jc/parsers/ls.py"]}},{"commit":"c02b6b5d827d26b43db0a3457124714aa2dbbc98","message":"doc updates","stats":{"files_changed":3,"insertions":81,"deletions":1,"files":["README.md","changelog.txt","setup.py"]}},{"commit":"f99b4232848b0d868804acc4125836bfcf475bba","message":"doc update","stats":{"files_changed":2,"insertions":134,"deletions":29,"files":["docs/parsers/blkid.md","jc/parsers/blkid.py"]}},{"commit":"d7d9d45d4fba89e74f7490c463eb26bf20a5d127","message":"add missing comma","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/blkid.py"]}},{"commit":"90065ec0cdc8c5abc13bc0027f63658dacf3cfb2","message":"add more integers","stats":{"files_changed":1,"insertions":31,"deletions":26,"files":["jc/parsers/blkid.py"]}},{"commit":"51157ebb867a48332c768bf3086614944aebdb62","message":"another devname fix","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/blkid.py"]}},{"commit":"96d95c79ca0938e326f55f858f8153df9cb49e44","message":"devname fix","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/blkid.py"]}},{"commit":"e5da34c23306463e8707b15676db0ca53bf66757","message":"check if devname key exists before renaming","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/blkid.py"]}},{"commit":"f09d657f7728242947db3dc63ff6779d08c37866","message":"rename devname to device","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/blkid.py"]}},{"commit":"0f4b0189f54dc0b3622cd407c5565e53ea111379","message":"process integer values","stats":{"files_changed":1,"insertions":35,"deletions":3,"files":["jc/parsers/blkid.py"]}},{"commit":"4666042abb3142e2cfb518db9ffe22d9e608e090","message":"add blkid parser","stats":{"files_changed":4,"insertions":216,"deletions":0,"files":["docgen.sh","docs/parsers/blkid.md","jc/cli.py","jc/parsers/blkid.py"]}},{"commit":"027d544c2bb778adc0ee9463832f19b10e099a0a","message":"add last and lastb parser","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"]}},{"commit":"f1967d0138d27bde864c2400aa75baa8a39bbfde","message":"system_boot fix","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/last.py"]}},{"commit":"c1d896027dd1ce021e048b3e77eab24ff59d08bd","message":"fix system_boot tty","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/last.py"]}},{"commit":"5c2d2a66187d32d62b31b7c7f13e502fdb7f9635","message":"process function and docs","stats":{"files_changed":3,"insertions":190,"deletions":6,"files":["docgen.sh","docs/parsers/last.md","jc/parsers/last.py"]}},{"commit":"997b269b0b7e53a456e2a0bd997ead6c2ae843bc","message":"btmp fix","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/last.py"]}},{"commit":"61257e7525c25827cb8057ed5c612e54ea9b9637","message":"add last and lastb parser","stats":{"files_changed":2,"insertions":119,"deletions":1,"files":["jc/cli.py","jc/parsers/last.py"]}},{"commit":"53ee2c36310cb84390ef96644aee6871769151c9","message":"Merge pull request #29 from kellyjonbrazil/dev"},{"commit":"8bfa0bddec9ff1c21972019467dcf5738ab3afd2","message":"version bump to 1.7.5","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"ad61e6bc81177a2add7d052bf1ddec5f1b3f2976","message":"add ls tests for filenames with newline characters","stats":{"files_changed":26,"insertions":598,"deletions":133,"files":["tests/fixtures/centos-7.7/ls-R-newlines.json","tests/fixtures/centos-7.7/ls-R-newlines.out","tests/fixtures/centos-7.7/ls-l-newlines.json","tests/fixtures/centos-7.7/ls-l-newlines.out","tests/fixtures/centos-7.7/ls-lR-newlines.json","tests/fixtures/centos-7.7/ls-lR-newlines.out","tests/fixtures/centos-7.7/ls-newlines.json","tests/fixtures/centos-7.7/ls-newlines.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/ls-R-newlines.json","tests/fixtures/osx-10.14.6/ls-R-newlines.out","tests/fixtures/osx-10.14.6/ls-l-newlines.json","tests/fixtures/osx-10.14.6/ls-l-newlines.out","tests/fixtures/osx-10.14.6/ls-lR-newlines.json","tests/fixtures/osx-10.14.6/ls-lR-newlines.out","tests/fixtures/osx-10.14.6/ls-newlines.json","tests/fixtures/osx-10.14.6/ls-newlines.out","tests/fixtures/ubuntu-18.04/ls-R-newlines.json","tests/fixtures/ubuntu-18.04/ls-R-newlines.out","tests/fixtures/ubuntu-18.04/ls-l-newlines.json","tests/fixtures/ubuntu-18.04/ls-l-newlines.out","tests/fixtures/ubuntu-18.04/ls-lR-newlines.json","tests/fixtures/ubuntu-18.04/ls-lR-newlines.out","tests/fixtures/ubuntu-18.04/ls-newlines.json","tests/fixtures/ubuntu-18.04/ls-newlines.out","tests/test_ls.py"]}},{"commit":"873b5ba8acf599d083d6031b818d5fca83cbca9e","message":"move examples to bottom","stats":{"files_changed":1,"insertions":27,"deletions":31,"files":["README.md"]}},{"commit":"6ae50054e2e8c7ca730013b43062eedc230c0ad4","message":"readme update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"22a35f41bf9c404d3532611f5929143d04b10010","message":"move variables to top","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/ls.py"]}},{"commit":"961696c963215a9dab56113ff89f21a6e9739df6","message":"add a warning if newlines are detected in naked ls","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/ls.py"]}},{"commit":"c7b7f1a5dcf77a1f4c23ef6bbf5683fd1a055f72","message":"fix for files with newlines in naked ls","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]}},{"commit":"b5a0d650b128d8af81bb14dd5d007349529cb66f","message":"ls output with newlines","stats":{"files_changed":1,"insertions":151,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-newlines.out"]}},{"commit":"573b27946474276592ee7494689ce9a88f5a05f7","message":"fixup for filenames that start with a newline character","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/ls.py"]}},{"commit":"116e07f1614b4a45eb58ffcfe20b5efa71c473a8","message":"fixes for multiple consecutive newlines and trailing newlines in filenames","stats":{"files_changed":1,"insertions":6,"deletions":7,"files":["jc/parsers/ls.py"]}},{"commit":"964868c8aff99edf37b0db41c7d16f8b84ac4704","message":"add support for newlines in filenames (only with ls -l)","stats":{"files_changed":2,"insertions":21,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]}},{"commit":"c8dac32df8102c2b782e87d55bb95ca2d9490185","message":"readme update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"72a0016bd833699c3819baa899f335f75b8c1943","message":"use link to anchor for Parsers","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"2ad316743460bb6620e7ede251e1dc2739b073fa","message":"update doc url","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"ddabfaa05c63f886b17e5b4d37cd83fcfdb9b221","message":"Merge pull request #25 from kellyjonbrazil/dev"},{"commit":"f857523ca756864211b6b18af5a8886e5db200bb","message":"bump to version 1.7.4","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]}},{"commit":"00d53858e820f00ba015bc25629100c8e5495221","message":"add note about aliases not being supported","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"c008167e660929a91606bb96498cdc113e815f7e","message":"add time-style=full-iso option to doc","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]}},{"commit":"102344a041e9e0aff8b6d9db1873ba1064f7e895","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/ls.py"]}},{"commit":"c865298ef3613fe6ce17f41c15209a69940af1ce","message":"remove unnecessary enumerate in for loop","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/ls.py"]}},{"commit":"6ac03faf939bcda8930a48a5e832b557813e2129","message":"Revert \"add ubuntu and centos default ls aliases to magic_commands\"","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]}},{"commit":"49c2701743706b6cbf0e52b2c7f275e301315189","message":"add ubuntu and centos default ls aliases to magic_commands","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]}},{"commit":"d1a271b08e64b42be8cec11377b0e18435a0caec","message":"add new ls tests for recursive and multiple directories with glob","stats":{"files_changed":21,"insertions":35333,"deletions":1374,"files":["tests/fixtures/centos-7.7/ls-R.json","tests/fixtures/centos-7.7/ls-R.out","tests/fixtures/centos-7.7/ls-alR.json","tests/fixtures/centos-7.7/ls-alR.out","tests/fixtures/centos-7.7/ls-glob.json","tests/fixtures/centos-7.7/ls-glob.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/ls-R.json","tests/fixtures/osx-10.14.6/ls-R.out","tests/fixtures/osx-10.14.6/ls-alR.json","tests/fixtures/osx-10.14.6/ls-alR.out","tests/fixtures/osx-10.14.6/ls-glob.json","tests/fixtures/osx-10.14.6/ls-glob.out","tests/fixtures/ubuntu-18.04/ls-R.json","tests/fixtures/ubuntu-18.04/ls-R.out","tests/fixtures/ubuntu-18.04/ls-alR.json","tests/fixtures/ubuntu-18.04/ls-alR.out","tests/fixtures/ubuntu-18.04/ls-glob.json","tests/fixtures/ubuntu-18.04/ls-glob.out","tests/fixtures/ubuntu-18.04/ls-lR.out","tests/test_ls.py"]}},{"commit":"7388ad19b9d252d3e66659e4bc37171cef2a9748","message":"bump to v1.8.0","stats":{"files_changed":4,"insertions":6,"deletions":4,"files":["docs/parsers/ls.md","jc/cli.py","jc/parsers/ls.py","setup.py"]}},{"commit":"2e63cb5fadd032c7cb54a618e8b374ee853abcca","message":"version bump ls to 1.1","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]}},{"commit":"e7f14d02b12c7dcba309f2d28a0f171769d1ba37","message":"update ls to allow multi directory (glob and -R). Adds 'parent' key if found","stats":{"files_changed":3,"insertions":1438,"deletions":8,"files":["jc/parsers/ls.py","tests/fixtures/ubuntu-18.04/ls-R.out","tests/fixtures/ubuntu-18.04/ls-lR.out"]}},{"commit":"873771d05ab0b77163c95d2c37e11edf38451832","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"d7de122e36e0698e00f321fbac8dc0b543cf9e8a","message":"prettify link","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"4ef0434f536c6658ddc2b48a3db113df2fd26000","message":"formatting update","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["README.md"]}},{"commit":"1aa2c9925996f2358b6272547db755ec3098a8a7","message":"removed history from magic syntax","stats":{"files_changed":2,"insertions":1,"deletions":2,"files":["README.md","jc/parsers/history.py"]}},{"commit":"c2450b27b079b02ed3f4ece9e36547f01cd4b139","message":"Merge pull request #22 from kellyjonbrazil/dev"},{"commit":"14d6d8b84f0ddeff984aff486e2e697a91ac6fb6","message":"version bump to 1.7.3","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"f0e3846c038ec5507cd4a19980d83ee0fb969ef5","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["README.md"]}},{"commit":"6ba64f1128373843b068226424a3af545ac9d22c","message":"usage update","stats":{"files_changed":1,"insertions":5,"deletions":2,"files":["README.md"]}},{"commit":"13bcdbc6c9a81bc5d52fe7a84e6a0a34908db8bc","message":"doc update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"cfba62db20674d788601354211a10e2b1675a0c9","message":"correct parser search in magic()","stats":{"files_changed":1,"insertions":13,"deletions":6,"files":["jc/cli.py"]}},{"commit":"18fb69e36e303a3f9530dcb80354b25bfdbb931d","message":"docs/parsers link","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"474eb0f3fdeaa612e189d745b12a5ed9c6e0a31b","message":"doc updates","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]}},{"commit":"7f47b533701e60449351d5da03cd5960e0dec9ad","message":"add alternate magic syntax","stats":{"files_changed":1,"insertions":90,"deletions":68,"files":["README.md"]}},{"commit":"dc2907d3ce101043b30bcce71abb4bb02897f43a","message":"doc update","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["docs/parsers/crontab.md"]}},{"commit":"1af85811e06c489051c456918284a746ce12c692","message":"remove magic_command info","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/fstab.py"]}},{"commit":"1c1b19a478fe5c356a93cd165518429e77fcbdf0","message":"doc update","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab.py"]}},{"commit":"66942d64babf932faeb887eb4ec0cab32829321a","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["changelog.txt"]}},{"commit":"2fb6ae08d76e7a5727b2fcdd5def3e3822e0cf72","message":"fix shlex usage","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"]}},{"commit":"bf8811e03e2a5b736f4c084f42400fcde400ff3f","message":"add comments","stats":{"files_changed":1,"insertions":6,"deletions":3,"files":["jc/cli.py"]}},{"commit":"c8b502c571d3081ca3086e349a426ca252a3bb84","message":"remove unnecessary join and add comments","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/cli.py"]}},{"commit":"81c11a975c6ee66a1f83350df8b065a6b07dcc9c","message":"added docstrings","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/cli.py"]}},{"commit":"0d370eb403ab4d9ed11e36776efc08bdd3505c1a","message":"doc update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"7492c3f1e312cdb0c58c2077db0d60d2cab1e58f","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]}},{"commit":"515a8a84b79c9bf6f3001d3c52faa82a6709b8d1","message":"add \"command\" to description","stats":{"files_changed":33,"insertions":33,"deletions":33,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]}},{"commit":"dd6680efb2b15bb8ed676016aae1c65193dfe147","message":"allow condensed options (-prdq is equivalent to -p -r -d -q)","stats":{"files_changed":2,"insertions":29,"deletions":14,"files":["changelog.txt","jc/cli.py"]}},{"commit":"a7158373cd225685f5c398fa36b8d5208e20521c","message":"comment update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"6d50ec71997cac9c898737de93b8a945f0351e53","message":"add try/except to fix bare jc command condition","stats":{"files_changed":1,"insertions":9,"deletions":6,"files":["jc/cli.py"]}},{"commit":"95dbf98e8e03486f74d986683f52699f4f9c9577","message":"allow options in magic syntax","stats":{"files_changed":1,"insertions":26,"deletions":6,"files":["jc/cli.py"]}},{"commit":"d49323e4ebf2a8aebd1d8ea65ef0854ee8bcb29f","message":"add magic_commands list to info","stats":{"files_changed":33,"insertions":33,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]}},{"commit":"08c1e2aec9d6bb68653dc12ba2272535fb7cef09","message":"add magic syntax","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"]}},{"commit":"a2c137df2e6d3b133df5df0bb3f9b1ca69990557","message":"better magic command syntax logic using introspection information from parser modules","stats":{"files_changed":2,"insertions":66,"deletions":299,"files":["jc/cli.py","jc/cli.py.old"]}},{"commit":"fe27dcdb8f72b5a288f978b87be2eb930099543e","message":"proof of concept for magic syntax (e.g. jc ls -al)","stats":{"files_changed":2,"insertions":319,"deletions":45,"files":["jc/cli.py","jc/cli.py.old"]}},{"commit":"028e136161ac15f588845f87907b4565a6ee7be2","message":"bump to 1.7.2: add test fixtures to package","stats":{"files_changed":4,"insertions":7,"deletions":2,"files":["MANIFEST.in","changelog.txt","jc/cli.py","setup.py"]}},{"commit":"9a85a0a4d504447b32fb622bb17cebc5e47f687f","message":"fix doc","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/crontab_u.md","jc/parsers/crontab_u.py"]}},{"commit":"3a1cbc4d5063344c3e3a4bf510d651a36beedfb3","message":"move info class to top","stats":{"files_changed":1,"insertions":14,"deletions":14,"files":["jc/cli.py"]}},{"commit":"77d334f7f386f79ec0571325500054fdab207f31","message":"Merge pull request #19 from kellyjonbrazil/dev-1.7.1"},{"commit":"53cdf863acc72dbdb671773e30277f42e9eadc0e","message":"changelog update","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["changelog.txt"]}},{"commit":"7b7e7fe0fe92edef1e559bd7ae8272530d7ed5c8","message":"changelog update","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]}},{"commit":"0c03132847a3d2bcbdb0b743e1472865916cced4","message":"fix error codes using sys.exit()","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]}},{"commit":"3b81f7e2a1381958b33962d4531f3fa223c6a83e","message":"exit code on ctrl-c exit","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"3d76437b435660e92633c604c4ad32ee0500a28b","message":"doc fix","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ini.md","docs/parsers/xml.md","jc/parsers/ini.py","jc/parsers/xml.py"]}},{"commit":"4bc54c78cea48682ed0432ea56460a26a0e52f83","message":"fix compatibility list","stats":{"files_changed":4,"insertions":7,"deletions":7,"files":["docs/parsers/du.md","docs/parsers/history.md","jc/parsers/du.py","jc/parsers/history.py"]}},{"commit":"3d303a96b9f6d582b1e99a632da539c3bee4df7f","message":"crontab bug fix and tests","stats":{"files_changed":5,"insertions":16,"deletions":2,"files":["tests/fixtures/centos-7.7/crontab-u.json","tests/fixtures/centos-7.7/{crontab2.out => crontab-u.out}","tests/fixtures/centos-7.7/crontab.json","tests/fixtures/ubuntu-18.04/crontab-u.json","tests/test_crontab_u.py"]}},{"commit":"33c99d031d18e52a8ca85dfc1a8cba0acebfc3bb","message":"fix line clobbering bug","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/crontab.py"]}},{"commit":"caf7e9f69a22f3c9b3d4624fd2238d6e54d932ac","message":"fix line clobbering bug and add user field to shortcuts","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/crontab_u.py"]}},{"commit":"9449f1f5d5e7bc075549549758af5cc3a6c4524f","message":"crontab bugfix: inserting header row was clobbering the first data row","stats":{"files_changed":4,"insertions":9,"deletions":3,"files":["changelog.txt","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/fixtures/centos-7.7/crontab2.out"]}},{"commit":"6bad164b5e2a5b7c7ce82c69b6c091fc079ab2fa","message":"simplify by removing unnecessary getattr calls","stats":{"files_changed":1,"insertions":7,"deletions":9,"files":["jc/cli.py"]}},{"commit":"bb5ba7ddb146821db2efe095b6de5ae5b72bb335","message":"add indent variable to helptext","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/cli.py"]}},{"commit":"8b2e01d5404649e8f94c81ca3b5fa05fe8962220","message":"doc update","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]}},{"commit":"ff1159b1deb9b870382a6066166961902679b569","message":"exit codes on error","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]}},{"commit":"a2fd3202a0a3df336792f167c546ea3e53ea2332","message":"description formatting change","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/pip_list.py","jc/parsers/pip_show.py"]}},{"commit":"7b53715b91787a8885d61ddc0079c7ee8f9348a8","message":"change description","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/crontab_u.py"]}},{"commit":"e05fc0a5107b348af14ff4bea39d274939fab7dd","message":"change padding of helptext","stats":{"files_changed":1,"insertions":8,"deletions":8,"files":["jc/cli.py"]}},{"commit":"43604c33f654b8c19e8cce387ebbf31bd598b73b","message":"doc update","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]}},{"commit":"eb67c484ff2a9530b434cd6a90c160f6936e1de7","message":"add crontab-u to parsers list","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]}},{"commit":"a7b7bdd46781d07e6e70d74a41a3944855fde5fc","message":"load parser modules 'just in time' so we don't need to load all modules at startup","stats":{"files_changed":1,"insertions":94,"deletions":92,"files":["jc/cli.py"]}},{"commit":"ab06989a18faf5378f1e73c7016ea02e1218ff9c","message":"description updates","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["README.md"]}},{"commit":"657b722f947b6a0aa7e52a786e4c84f177e9a5c7","message":"ini to INI","stats":{"files_changed":4,"insertions":8,"deletions":8,"files":["README.md","changelog.txt","docs/parsers/ini.md","jc/parsers/ini.py"]}},{"commit":"dd2aecad2787186b3962723086bb7e13eff4874f","message":"description update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"c82c5c5c648384eb5a54205ba8590624a3ab4375","message":"changelog update","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["changelog.txt"]}},{"commit":"a1761cd68f91e2668d8d7e2fa7774f6496408be6","message":"id tests","stats":{"files_changed":3,"insertions":42,"deletions":0,"files":["tests/fixtures/centos-7.7/id.json","tests/fixtures/osx-10.14.6/id.json","tests/test_id.py"]}},{"commit":"d618a7f583629bb7a7fc0854e7349cab07e3e003","message":"doc update","stats":{"files_changed":4,"insertions":143,"deletions":9,"files":["README.md","docgen.sh","docs/parsers/id.md","jc/parsers/id.py"]}},{"commit":"831a42f66096f5efbbf0f6882970c328120f9c9a","message":"id formatting","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["README.md"]}},{"commit":"3b36022e5a1056a28a83494b1ab8fab209399c2d","message":"add id parser","stats":{"files_changed":5,"insertions":250,"deletions":1,"files":["README.md","jc/cli.py","jc/parsers/id.py","tests/fixtures/centos-7.7/id.out","tests/fixtures/osx-10.14.6/id.out"]}},{"commit":"d01dfa25f10f82cd201ae7b4c9cc18313773f8d3","message":"changelog updates","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["changelog.txt"]}},{"commit":"395a99037b4816eb800b289f90372a9b8d7d36cc","message":"crontab-u and history doc updates","stats":{"files_changed":3,"insertions":89,"deletions":13,"files":["README.md","docs/parsers/history.md","jc/parsers/history.py"]}},{"commit":"025986c51d2d4869b17de63a7dd96efa2988e3c5","message":"change history 'line' to integer","stats":{"files_changed":3,"insertions":13,"deletions":3,"files":["jc/parsers/history.py","tests/fixtures/centos-7.7/history.json","tests/fixtures/ubuntu-18.04/history.json"]}},{"commit":"c56b83093ff05f55ef4643c1731cff61d4b9e8ce","message":"doc update","stats":{"files_changed":3,"insertions":202,"deletions":2,"files":["docgen.sh","docs/parsers/crontab.md","docs/parsers/crontab_u.md"]}},{"commit":"7c712a4133abd843d4da926e4c8d548abd1d6fa3","message":"doc update","stats":{"files_changed":1,"insertions":52,"deletions":50,"files":["jc/parsers/crontab_u.py"]}},{"commit":"9a0cfe6dfa4888f435d35bd2d35126d031a556d0","message":"minor formatting","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/crontab.py"]}},{"commit":"a116cdbcec1b27192dd0f9f4707629353edb3caf","message":"tests for crontab-u","stats":{"files_changed":5,"insertions":29,"deletions":13,"files":["tests/fixtures/ubuntu-18.04/crontab-u.json",".../ubuntu-18.04/{crontab.out => crontab-u.out}","tests/fixtures/ubuntu-18.04/crontab.json","tests/test_crontab.py","tests/test_crontab_u.py"]}},{"commit":"f2d616c98e049cdac5d667e63723f92110419a1b","message":"add crontab with user parser","stats":{"files_changed":3,"insertions":272,"deletions":0,"files":["changelog.txt","jc/cli.py","jc/parsers/crontab_u.py"]}},{"commit":"42cbd1777dbacc614d75f67f3f9156f72be46532","message":"add xml and yaml tests","stats":{"files_changed":2,"insertions":80,"deletions":0,"files":["tests/test_xml.py","tests/test_yaml.py"]}},{"commit":"ebf375aac0473249cfd212068f6e6e33cc42449a","message":"add ini tests","stats":{"files_changed":1,"insertions":40,"deletions":0,"files":["tests/test_ini.py"]}},{"commit":"1f9050267eeb870c4c0f50000fc32985c4d8535b","message":"add ini, xml, and yaml test files","stats":{"files_changed":12,"insertions":586,"deletions":0,"files":["tests/fixtures/generic/ini-iptelserver.ini","tests/fixtures/generic/ini-iptelserver.json","tests/fixtures/generic/ini-test.ini","tests/fixtures/generic/ini-test.json","tests/fixtures/generic/xml-cd_catalog.json","tests/fixtures/generic/xml-cd_catalog.xml","tests/fixtures/generic/xml-foodmenu.json","tests/fixtures/generic/xml-foodmenu.xml","tests/fixtures/generic/yaml-istio-sc.json","tests/fixtures/generic/yaml-istio-sc.yaml","tests/fixtures/generic/yaml-istio-sidecar.json","tests/fixtures/generic/yaml-istio-sidecar.yaml"]}},{"commit":"d7f9707a1521719ce051140b1a0b4ced7c5114c9","message":"minor formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/ini.py","jc/parsers/yaml.py"]}},{"commit":"ab589ee3ed09b9d5e09d8c046f3a64cd2bd14c98","message":"add __version__ variable","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/cli.py"]}},{"commit":"c84ec0361fc4c877c698378b28ff9e8b502793b0","message":"xml example update","stats":{"files_changed":4,"insertions":105,"deletions":3,"files":["README.md","docgen.sh","docs/parsers/xml.md","jc/parsers/xml.py"]}},{"commit":"47d2f8968a8a9b68fc9fff45985f5e69f1a5cc40","message":"doc update","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","changelog.txt"]}},{"commit":"019c480bcce7fe3821b75906fc673ce7bb1ffadc","message":"update acknowledgments","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]}},{"commit":"547c6d3d5956984d3c4fb5c2a1b76a595752b467","message":"add xml parser","stats":{"files_changed":5,"insertions":172,"deletions":2,"files":["README.md","changelog.txt","jc/cli.py","jc/parsers/xml.py","setup.py"]}},{"commit":"b5ebf8b76afcd0e0190994048fe1f5b53f654451","message":"add ruamel.yaml ack","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]}},{"commit":"c690e328f23a69f592dfaaa949b74ba2190ad376","message":"add examples","stats":{"files_changed":2,"insertions":102,"deletions":14,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"]}},{"commit":"cbb92c1a9517234806f1c54398a69645b6f43669","message":"add ini and yaml","stats":{"files_changed":1,"insertions":94,"deletions":0,"files":["README.md"]}},{"commit":"beb41997c9b3797e73a678ec1bcddcfb83b5ef0d","message":"doc update","stats":{"files_changed":3,"insertions":91,"deletions":2,"files":["docgen.sh","docs/parsers/ini.md","jc/parsers/ini.py"]}},{"commit":"755a6faf1110f150fe2261b81439b7d17a9b424e","message":"clean up multi-document support","stats":{"files_changed":1,"insertions":4,"deletions":8,"files":["jc/parsers/yaml.py"]}},{"commit":"021f8350a31a49ecc539f02576303600b222b49d","message":"update doc","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["changelog.txt"]}},{"commit":"76583dcd2f5ef32e58ca87149154563b07e061cb","message":"add ini file parser","stats":{"files_changed":2,"insertions":113,"deletions":0,"files":["jc/cli.py","jc/parsers/ini.py"]}},{"commit":"bf033239a706c42be3d7508c58a51c542f8a69b0","message":"doc update","stats":{"files_changed":2,"insertions":82,"deletions":7,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"]}},{"commit":"eb37fccd37fd625f701a14b6cfcf30e9f0bbff4d","message":"doc update","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/yaml.py"]}},{"commit":"d04ad453319fe45e302da87f970d2ac0806fae1a","message":"setup for 1.7.1","stats":{"files_changed":3,"insertions":7,"deletions":2,"files":["changelog.txt","docgen.sh","setup.py"]}},{"commit":"db157b8ca7f7fa935676bafeaafdfd9818a89e6a","message":"add yaml file parser","stats":{"files_changed":2,"insertions":94,"deletions":2,"files":["jc/cli.py","jc/parsers/yaml.py"]}},{"commit":"68f277bb2081eb2cba14ffe7f0ee1ee0a982335b","message":"add __version__","stats":{"files_changed":33,"insertions":99,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]}},{"commit":"4de8f42664379570392552796e34324abb39fdc2","message":"Merge pull request #17 from kellyjonbrazil/dev"},{"commit":"4f118559356edc1da866e1bec80830e7a75a0b26","message":"update version info","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["changelog.txt"]}},{"commit":"2b9a5fcc32f85295faa55410efcaf142c42bd167","message":"update version","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["setup.py"]}},{"commit":"224948d1f23e01b7cd968820529579792f862f0a","message":"pip list and pip show tests","stats":{"files_changed":21,"insertions":428,"deletions":0,"files":["tests/fixtures/centos-7.7/pip-list.json","tests/fixtures/centos-7.7/pip-list.out","tests/fixtures/centos-7.7/pip-show.json","tests/fixtures/centos-7.7/pip-show.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.11.6/pip-list.json","tests/fixtures/osx-10.11.6/pip-list.out","tests/fixtures/osx-10.11.6/pip-show.json","tests/fixtures/osx-10.11.6/pip-show.out","tests/fixtures/osx-10.14.6/pip-list.json","tests/fixtures/osx-10.14.6/pip-list.out","tests/fixtures/osx-10.14.6/pip-show.json","tests/fixtures/osx-10.14.6/pip-show.out","tests/fixtures/ubuntu-18.04/pip-list-legacy.json","tests/fixtures/ubuntu-18.04/pip-list-legacy.out","tests/fixtures/ubuntu-18.04/pip-list.json","tests/fixtures/ubuntu-18.04/pip-list.out","tests/fixtures/ubuntu-18.04/pip-show.json","tests/fixtures/ubuntu-18.04/pip-show.out","tests/test_pip_list.py","tests/test_pip_show.py"]}},{"commit":"36f2812d5a7a94c412e098233c026d99d5205b60","message":"add support for legacy output","stats":{"files_changed":1,"insertions":15,"deletions":7,"files":["jc/parsers/pip_list.py"]}},{"commit":"be06aa2b31c057c56229e75c7fa70052b83053ee","message":"update parse() Return info","stats":{"files_changed":65,"insertions":70,"deletions":66,"files":["docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]}},{"commit":"41f8e3aba268ca0cd09931a04368615425c1aec8","message":"update Return info","stats":{"files_changed":65,"insertions":67,"deletions":65,"files":["docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]}},{"commit":"093c0df8978ace842af5258f9aff72c63c6f843d","message":"schema info","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["README.md"]}},{"commit":"37afc7dc8ae30342d01f3f72e73646fa60bb5294","message":"updte todo and compatibility","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["README.md"]}},{"commit":"efbf3549606fc77f8c16587ff04a0c316dfe5c00","message":"doc update for pip show","stats":{"files_changed":4,"insertions":126,"deletions":12,"files":["README.md","docgen.sh","docs/parsers/pip_show.md","jc/parsers/pip_show.py"]}},{"commit":"5e39fe0d8044787389d8f206f3c863d4bdf1e2ed","message":"pip show parser working","stats":{"files_changed":1,"insertions":64,"deletions":5,"files":["jc/parsers/pip_show.py"]}},{"commit":"47328dc65969f149c8f027286774ff0847c18add","message":"add pip-show parser","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"]}},{"commit":"addeef50ba54f536855544937a6c98135ae5cd51","message":"initial pip show parser add","stats":{"files_changed":1,"insertions":84,"deletions":0,"files":["jc/parsers/pip_show.py"]}},{"commit":"ad338cc5b50a178091c47cbea9a1db135a7fb678","message":"schema doc update","stats":{"files_changed":2,"insertions":56,"deletions":42,"files":["docs/parsers/crontab.md","jc/parsers/crontab.py"]}},{"commit":"202bc8201e31fd453c682265347b4e2ac2d41718","message":"doc update","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["README.md","docs/parsers/crontab.md","jc/parsers/crontab.py"]}},{"commit":"5ff99de405fbd8f79f9c2e301ac27184e0aba6fc","message":"add argument to parser info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]}},{"commit":"86ebe2cf9c6b336eacf217393c3c3c324ee29ec0","message":"initial add of pip list parser","stats":{"files_changed":6,"insertions":205,"deletions":1,"files":["README.md","docgen.sh","docs/parsers/crontab.md","docs/parsers/pip_list.md","jc/cli.py","jc/parsers/pip_list.py"]}},{"commit":"facf0b399c608d33f6a454ee24fd49fc62471742","message":"add osx to campatible","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/crontab.py"]}},{"commit":"33db7b0bcb0f24979cad6e173737d75c8ed301af","message":"add crontab tests","stats":{"files_changed":4,"insertions":57,"deletions":0,"files":["tests/fixtures/centos-7.7/crontab.json","tests/fixtures/ubuntu-18.04/crontab.json","tests/fixtures/ubuntu-18.04/crontab.out","tests/test_crontab.py"]}},{"commit":"663d07bca1181024d9d08b940237c52197c91729","message":"add crontab","stats":{"files_changed":2,"insertions":191,"deletions":0,"files":["docgen.sh","docs/parsers/crontab.md"]}},{"commit":"ba04e4997fcb28adbee446f633c121f1585b9f2c","message":"update docs","stats":{"files_changed":1,"insertions":113,"deletions":4,"files":["jc/parsers/crontab.py"]}},{"commit":"c4fee1b658c91afa2abdd746af6c1b4697c44b35","message":"add crontab parser","stats":{"files_changed":1,"insertions":72,"deletions":1,"files":["README.md"]}},{"commit":"99b92a15bbebc5568f4455f388f945613c4a2759","message":"support shortcut schedules","stats":{"files_changed":2,"insertions":37,"deletions":14,"files":["jc/parsers/crontab.py","tests/fixtures/centos-7.7/crontab.out"]}},{"commit":"b076ab5b57a6a59db096485e5ff4eb9f91bae8be","message":"initial crontab parser","stats":{"files_changed":3,"insertions":177,"deletions":0,"files":["jc/cli.py","jc/parsers/crontab.py","tests/fixtures/centos-7.7/crontab.out"]}},{"commit":"687759f75d0e80e81746a84f051e55cfdc870447","message":"alphabetize du entry","stats":{"files_changed":1,"insertions":31,"deletions":31,"files":["README.md"]}},{"commit":"9eaac7f3af0e0851c2d091d94c9920faa8a0fdfc","message":"add du","stats":{"files_changed":1,"insertions":32,"deletions":0,"files":["README.md"]}},{"commit":"4c24e00cfc0748d98e220d08820b88fc156148db","message":"add osx-11 and ubuntu tests","stats":{"files_changed":5,"insertions":21738,"deletions":9,"files":["tests/fixtures/osx-10.11.6/du.json","tests/fixtures/osx-10.11.6/du.out","tests/fixtures/ubuntu-18.04/du.json","tests/fixtures/ubuntu-18.04/du.out","tests/test_du.py"]}},{"commit":"beb17011b03e720078b0752e79a6a0f6123d1d3c","message":"du tests and docs","stats":{"files_changed":6,"insertions":131,"deletions":2,"files":["changelog.txt","docgen.sh","docs/parsers/du.md","docs/parsers/uname.md","tests/fixtures/osx-10.14.6/du.json","tests/test_du.py"]}},{"commit":"e882bf55bcd1d3526423ed1ccc61fb4819395cce","message":"initial add du parser","stats":{"files_changed":7,"insertions":8755,"deletions":0,"files":["changelog.txt","jc/cli.py","jc/parsers/du.py","tests/fixtures/centos-7.7/du.json","tests/fixtures/centos-7.7/du.out","tests/fixtures/osx-10.14.6/du.out","tests/test_du.py"]}},{"commit":"3a3016adb6d5b9e35f8a39908bfcdc65997cc5c6","message":"add parser_count to about","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]}},{"commit":"1e8b68153ade8a1e3d2b4db36e0c402bbc887079","message":"add osx uname tests","stats":{"files_changed":4,"insertions":27,"deletions":1,"files":["tests/fixtures/osx-10.11.6/uname-a.json","tests/fixtures/osx-10.14.6/uname-a.json","tests/fixtures/osx-10.14.6/uname-a.out","tests/test_uname.py"]}},{"commit":"9335cf65fbb87e3a0a7da0c4e9bcd251cb829de2","message":"add uname osx support","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]}},{"commit":"83f35256aee71f2619ddf880e2b8f2d6c63280bc","message":"add OSX support","stats":{"files_changed":1,"insertions":30,"deletions":19,"files":["jc/parsers/uname.py"]}},{"commit":"428333394817e4461a4eb095f4d6d128305a5f98","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"]}},{"commit":"b8f902796b7fb23a41355b23f7ce235bd18edc58","message":"shorten changelog","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["changelog.txt"]}},{"commit":"8f99ab295cd15718b98781707def97539ad41920","message":"info update","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]}},{"commit":"882310e268e2022f0cd6da75f80f5356529cd05c","message":"add name to about parser info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]}},{"commit":"56bce9521409d1850f75a3ae2be1363e765dd9dc","message":"about code cleanup","stats":{"files_changed":1,"insertions":6,"deletions":10,"files":["jc/cli.py"]}},{"commit":"c13ecbec2952c5d6765397f645e90653a4fd9d05","message":"clean up parser info","stats":{"files_changed":28,"insertions":2,"deletions":28,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]}},{"commit":"0ffaaa6e73649d1f657af569ac0b912f166e8493","message":"clean up about code","stats":{"files_changed":1,"insertions":7,"deletions":9,"files":["jc/cli.py"]}},{"commit":"75eff3adea097157c005b2201e353a741241ce8b","message":"remove whitespace","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/utils.py"]}},{"commit":"bf5f80476cff642ae672187ea59d40bdb602101e","message":"use real parser name in error message","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["jc/cli.py"]}},{"commit":"9aaf0fbb2f838c0af1e7f18fdb19104f9f5d3d39","message":"doc updates","stats":{"files_changed":29,"insertions":146,"deletions":1,"files":["changelog.txt","docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md"]}},{"commit":"8f01ef79532743573632d716ceea41d5ea752c88","message":"add -a option info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]}},{"commit":"da1d087452da02631296b1b3dc9ee10d4b7f764b","message":"add parser version info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]}},{"commit":"e16bc7e882a27a1d5a4bd7cf9972208e6997f96f","message":"add about information to parsers","stats":{"files_changed":29,"insertions":82,"deletions":17,"files":["jc/cli.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]}},{"commit":"fe9bdd4811216257c05b16d6d61897929669d434","message":"add info class","stats":{"files_changed":31,"insertions":384,"deletions":219,"files":["changelog.txt","jc/cli.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]}},{"commit":"17b6f3f6d6c398a52166849088a793d0e3b328b7","message":"add osx tests","stats":{"files_changed":3,"insertions":26,"deletions":0,"files":["tests/fixtures/osx-10.11.6/uptime.json","tests/fixtures/osx-10.14.6/uptime.json","tests/test_uptime.py"]}},{"commit":"90a6baf0ee3b8b27476badada4e590e22144f810","message":"add osx tests","stats":{"files_changed":6,"insertions":52,"deletions":0,"files":["tests/fixtures/osx-10.11.6/ps-axu.json","tests/fixtures/osx-10.11.6/ps-ef.json","tests/fixtures/osx-10.11.6/w.json","tests/fixtures/osx-10.14.6/w.json","tests/test_ps.py","tests/test_w.py"]}},{"commit":"f0e73d0e72d540292f41fff51652932c4e8b0315","message":"add osx tests","stats":{"files_changed":8,"insertions":444,"deletions":0,"files":["tests/fixtures/osx-10.11.6/ps-axu.out","tests/fixtures/osx-10.11.6/ps-ef.out","tests/fixtures/osx-10.11.6/uname-a.out","tests/fixtures/osx-10.11.6/uptime.out","tests/fixtures/osx-10.11.6/w.out","tests/fixtures/osx-10.14.6/uname-a.out","tests/fixtures/osx-10.14.6/uptime.out","tests/fixtures/osx-10.14.6/w.out"]}},{"commit":"a762882f1ccea6789ce7813b313f3242175b5bd6","message":"fixture updates","stats":{"files_changed":4,"insertions":2,"deletions":88,"files":["tests/fixtures/osx-10.14.6/ps-axu.json","tests/fixtures/osx-10.14.6/ps-axu.out","tests/fixtures/osx-10.14.6/ps-ef.json","tests/fixtures/osx-10.14.6/ps-ef.out"]}},{"commit":"4c1bc5923658bf463805ea33ec8d170a817909ce","message":"doc updates","stats":{"files_changed":3,"insertions":4,"deletions":3,"files":["docs/parsers/mount.md","docs/parsers/ps.md","docs/parsers/stat.md"]}},{"commit":"f2962083f80503f82c3eddf470674c776e616b32","message":"add osx support for mount parser","stats":{"files_changed":7,"insertions":93,"deletions":17,"files":["changelog.txt","jc/parsers/mount.py","tests/fixtures/osx-10.14.6/mount.json","tests/fixtures/osx-10.14.6/mount.out","tests/fixtures/osx-10.14.6/mount2.json","tests/fixtures/osx-10.14.6/mount2.out","tests/test_mount.py"]}},{"commit":"a0b22a5bcfa0777895243088b2c0f3bb5b758775","message":"help text formatting","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]}},{"commit":"dcf393354cd57683aaeecbed7b884d19b0fe94d4","message":"doc fix","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"]}},{"commit":"5f771656e3fdd703d449b2817faa4faeff1cd879","message":"use universal parser","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/route.py"]}},{"commit":"f376aab79328a211a127f4f818e7007232f1fae3","message":"doc update","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/universal.py"]}},{"commit":"3c96464217a740571e16c74ad41c1d92f7585547","message":"osx fixes and tests","stats":{"files_changed":6,"insertions":886,"deletions":13,"files":["jc/parsers/ps.py","tests/fixtures/osx-10.14.6/ps-axu.json","tests/fixtures/osx-10.14.6/ps-axu.out","tests/fixtures/osx-10.14.6/ps-ef.json","tests/fixtures/osx-10.14.6/ps-ef.out","tests/test_ps.py"]}},{"commit":"c9892833a16bb63f78537717be65670eb65a87b7","message":"formatting change","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/mount.py"]}},{"commit":"127c98affc7b122f0ced13852850214b9e07677e","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]}},{"commit":"8687a772f53ecaf1a20464429060b94bbf660fe7","message":"use universal parser","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["jc/parsers/lsof.py"]}},{"commit":"b1162b14d42643fd53dbbe3f89ba042f030d9254","message":"use universal parser","stats":{"files_changed":1,"insertions":3,"deletions":6,"files":["jc/parsers/lsmod.py"]}},{"commit":"8a8ee3570733c0c06b8cf53eb005e53ac2f9170f","message":"use universal parser","stats":{"files_changed":1,"insertions":8,"deletions":60,"files":["jc/parsers/lsblk.py"]}},{"commit":"5e109a3665cf0c286ac9dcbe2a452348a14b90ab","message":"add du","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/fixtures/create_fixtures.sh"]}},{"commit":"11db478430515ef3e1020482792f23d1c40ca32b","message":"update changelog","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]}},{"commit":"a85377014d9f93fcb9840715129b0e09d48d8584","message":"use universal parser","stats":{"files_changed":1,"insertions":5,"deletions":11,"files":["jc/parsers/free.py"]}},{"commit":"3aea86234d33160f5b3139cbfc2f4f032f655f3a","message":"fix osx-10.11.6 tests","stats":{"files_changed":6,"insertions":70,"deletions":61,"files":["tests/fixtures/osx-10.11.6/ls-al.json","tests/fixtures/osx-10.11.6/ls-al.out","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.11.6/ls-alh.out","tests/fixtures/osx-10.11.6/ls.json","tests/fixtures/osx-10.11.6/ls.out"]}},{"commit":"916ec6ed6b858a8a496e4026b9bab5505abca2ff","message":"fix osx ls tests","stats":{"files_changed":13,"insertions":193,"deletions":61,"files":["tests/fixtures/osx-10.11.6/ls-al.json","tests/fixtures/osx-10.11.6/ls-al.out","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.11.6/ls-alh.out","tests/fixtures/osx-10.11.6/ls.json","tests/fixtures/osx-10.11.6/ls.out","tests/fixtures/osx-10.14.6/ls-al.json","tests/fixtures/osx-10.14.6/ls-al.out","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.out","tests/fixtures/osx-10.14.6/ls.json","tests/fixtures/osx-10.14.6/ls.out","tests/test_ls.py"]}},{"commit":"9dca6ba5393d8840ad7fc9509273715a71955bd1","message":"doc formatting change","stats":{"files_changed":55,"insertions":120,"deletions":6,"files":["docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]}},{"commit":"0ebb89f561e1ced2e7f61ae19290e176c8a98bf2","message":"doc update","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["docs/parsers/arp.md"]}},{"commit":"e237867e242211ba37206911ebf1b35c97b417fd","message":"doc formatting","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/arp.py"]}},{"commit":"78fa44fd9ac9790313de6f461eb46d9b8d6159d4","message":"add compatibility to docs","stats":{"files_changed":24,"insertions":75,"deletions":3,"files":["docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]}},{"commit":"d615fa3b933ccd284bd8ee92baf5dfa6264507c6","message":"add compatibility to docs","stats":{"files_changed":30,"insertions":91,"deletions":1,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py"]}},{"commit":"ce134dc332dd9175e0d1823a4959bed427a3ddce","message":"Add OSX tests for ls","stats":{"files_changed":7,"insertions":115,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-al.json","tests/fixtures/osx-10.14.6/ls-al.out","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.out","tests/fixtures/osx-10.14.6/ls.json","tests/fixtures/osx-10.14.6/ls.out","tests/test_ls.py"]}},{"commit":"a56e4dc752a01635fbd9fc31e21d390bbd629084","message":"use universal simple table parser","stats":{"files_changed":3,"insertions":28,"deletions":3,"files":["changelog.txt","jc/parsers/arp.py","jc/parsers/universal.py"]}},{"commit":"d221b4aa29e80dda2b591059f4d64c416bff0a17","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]}},{"commit":"d2cba6ad2f1f1cd35aa174239584a0291abb8e37","message":"add compatibility info","stats":{"files_changed":3,"insertions":9,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py"]}},{"commit":"84b3c30b525ddf1f74eb7fd833050a0ec69621dd","message":"add osx tests","stats":{"files_changed":21,"insertions":254,"deletions":2,"files":["tests/fixtures/osx-10.11.6/df-h.json","tests/fixtures/osx-10.11.6/df-h.out","tests/fixtures/osx-10.11.6/df.json","tests/fixtures/osx-10.11.6/df.out","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-aaaa.out","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig-x.out","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.11.6/dig.out","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/osx-10.14.6/df-h.out","tests/fixtures/osx-10.14.6/df.json","tests/fixtures/osx-10.14.6/df.out","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-aaaa.out","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig-x.out","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/osx-10.14.6/dig.out","tests/test_df.py"]}},{"commit":"68eeec19a812b735627763bb7d7e2a58b72f7504","message":"doc update","stats":{"files_changed":3,"insertions":30,"deletions":25,"files":["README.md","docs/parsers/df.md","jc/parsers/df.py"]}},{"commit":"c6d1528a2ed302ea82828b733a98db415be83708","message":"use _ instead of -","stats":{"files_changed":4,"insertions":19,"deletions":8,"files":["jc/parsers/df.py","jc/parsers/universal.py","tests/fixtures/centos-7.7/df.json","tests/fixtures/ubuntu-18.04/df.json"]}},{"commit":"50a6b256b8a0936299f562c208ede6187feeb9a7","message":"new universal parsers to limit code duplication","stats":{"files_changed":1,"insertions":83,"deletions":0,"files":["jc/parsers/universal.py"]}},{"commit":"bbba1fe477014d0b7f370ce46ed821121be81a8e","message":"update df to use universal sparse table parser for osx compatibility","stats":{"files_changed":1,"insertions":38,"deletions":19,"files":["jc/parsers/df.py"]}},{"commit":"46b827da6b438be73fab168c3f05298483b141e4","message":"add osx compatibility","stats":{"files_changed":7,"insertions":75,"deletions":4,"files":["changelog.txt","jc/parsers/arp.py","tests/fixtures/osx-10.11.6/arp-a.json","tests/fixtures/osx-10.11.6/arp-a.out","tests/fixtures/osx-10.14.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a.out","tests/test_arp.py"]}},{"commit":"5e8c28a30a283b6ef525e9e78d3ef2a0e1526927","message":"comment fix","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"]}},{"commit":"e5d39031645ac897e0c0297f514ee62efe02f5f9","message":"update ifconfig doc","stats":{"files_changed":1,"insertions":38,"deletions":17,"files":["docs/parsers/ifconfig.md"]}},{"commit":"23975c9c9e1dd9d3e9fd7c05d231a86d646be048","message":"fixup osx subnet mask and convert state to an array","stats":{"files_changed":10,"insertions":132,"deletions":45,"files":["README.md","changelog.txt","jc/parsers/ifconfig.py","tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig2.json","tests/fixtures/osx-10.14.6/ifconfig.json","tests/fixtures/osx-10.14.6/ifconfig2.json","tests/fixtures/ubuntu-18.04/ifconfig.json","tests/test_ifconfig.py"]}},{"commit":"1e0dab8355e6fcb0ecde85270d4daac6ad93875b","message":"ifconfig fixture updates","stats":{"files_changed":10,"insertions":272,"deletions":2,"files":["tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.out","tests/fixtures/osx-10.11.6/ifconfig2.json","tests/fixtures/osx-10.11.6/ifconfig2.out","tests/fixtures/osx-10.14.6/ifconfig.json","tests/fixtures/osx-10.14.6/ifconfig.out","tests/fixtures/osx-10.14.6/ifconfig2.json","tests/fixtures/osx-10.14.6/ifconfig2.out","tests/fixtures/ubuntu-18.04/ifconfig.json"]}},{"commit":"5f4c10ffd5a9cbe4e5e3d2b9adc34f36492eaf46","message":"doc update","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["README.md","changelog.txt"]}},{"commit":"6f3d2b4b566b963fbf38572c587e8bd4e18881dc","message":"require ifconfig-parser v0.0.5 for mac and bytes support","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"fea8ace8446b64abe9e61a028951bc4e6df9f9c9","message":"add OSX compatibility","stats":{"files_changed":2,"insertions":20,"deletions":6,"files":["README.md","jc/parsers/ifconfig.py"]}},{"commit":"6633d9262c936217d8e90e64505c66b006cdab56","message":"Set theme jekyll-theme-cayman","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["_config.yml"]}},{"commit":"7d54137140e6d0515bc23c131a097af5c70c3379","message":"link update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"2fcda6f2480ae6bd5428a0147c19f9af527391b8","message":"add motivation to readme","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]}},{"commit":"9c1b8bacf9a59a86feb2a91eb44919e800491d1e","message":"Merge pull request #16 from kellyjonbrazil/dev"},{"commit":"4867655eb297b1da7a55e0d3a24c7ed7c8af55c7","message":"add line-numbers tests","stats":{"files_changed":6,"insertions":172,"deletions":0,"files":[".../centos-7.7/iptables-filter-line-numbers.json",".../centos-7.7/iptables-filter-line-numbers.out","tests/fixtures/create_fixtures.sh",".../ubuntu-18.04/iptables-filter-line-numbers.json",".../ubuntu-18.04/iptables-filter-line-numbers.out","tests/test_iptables.py"]}},{"commit":"47410d1a95406b0960aac705e7cfe925fea3172c","message":"version bump","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["changelog.txt","setup.py"]}},{"commit":"5fa49f5e672fc6f8dc18fb4b1761c98b81362649","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]}},{"commit":"36c53827fab6ac38c0010250ec387db40fdeecfc","message":"add systemctl tests","stats":{"files_changed":19,"insertions":1316,"deletions":308,"files":["tests/fixtures/centos-7.7/systemctl-ls.json","tests/fixtures/centos-7.7/systemctl-ls.out","tests/fixtures/centos-7.7/systemctl-luf.json","tests/fixtures/centos-7.7/systemctl-luf.out","tests/fixtures/centos-7.7/systemctl.json","tests/fixtures/centos-7.7/systemctl.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/systemctl-lj.json","tests/fixtures/ubuntu-18.04/systemctl-lj.out","tests/fixtures/ubuntu-18.04/systemctl-ls.json","tests/fixtures/ubuntu-18.04/systemctl-ls.out","tests/fixtures/ubuntu-18.04/systemctl-luf.json","tests/fixtures/ubuntu-18.04/systemctl-luf.out","tests/fixtures/ubuntu-18.04/systemctl.json","tests/fixtures/ubuntu-18.04/systemctl.out","tests/test_systemctl.py","tests/test_systemctl_lj.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py"]}},{"commit":"51631aef5b1b6fdeff4ab543510a9f9e15a0c2c4","message":"add systemctl tests","stats":{"files_changed":5,"insertions":358,"deletions":0,"files":["tests/fixtures/centos-7.7/systemctl.json","tests/fixtures/centos-7.7/systemctl.out","tests/fixtures/ubuntu-18.04/systemctl.json","tests/fixtures/ubuntu-18.04/systemctl.out","tests/test_systemctl.py"]}},{"commit":"a0298ac8a39093620b6859c909a78d11ab4a8e56","message":"add fstab tests","stats":{"files_changed":5,"insertions":55,"deletions":0,"files":["tests/fixtures/centos-7.7/fstab.json","tests/fixtures/centos-7.7/fstab.out","tests/fixtures/ubuntu-18.04/fstab.json","tests/fixtures/ubuntu-18.04/fstab.out","tests/test_fstab.py"]}},{"commit":"98c0188821ebaa71c5661f2e095cf464bec695f2","message":"formatting fix","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/systemctl_ls.md","jc/parsers/systemctl_ls.py"]}},{"commit":"ab1dabe3e42997825707006b63cc0c03d28470d4","message":"doc update","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py"]}},{"commit":"94bdb11fdf0e16d89769046d317643334ef1acdd","message":"remove systemctl from TODO","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"]}},{"commit":"b6727d68bab66164a3834b240ae868062aad9371","message":"add systemctl parsers","stats":{"files_changed":1,"insertions":68,"deletions":0,"files":["README.md"]}},{"commit":"89bad7fc2b4023b10b6eeb7ff1f8f18b71731cb6","message":"remove systemctl list-machines parser","stats":{"files_changed":5,"insertions":1,"deletions":191,"files":["changelog.txt","docgen.sh","docs/parsers/systemctl_lm.md","jc/cli.py","jc/parsers/systemctl_lm.py"]}},{"commit":"c0b8b810a2616e77973c1223f9c39329112337ac","message":"add systemctl list parsers","stats":{"files_changed":5,"insertions":306,"deletions":0,"files":["docgen.sh","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_lm.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md"]}},{"commit":"31eb65acd18b6d9163de900dbe48807a41a23785","message":"doc fix","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_lm.py"]}},{"commit":"513bbeb4649c011476930e1d1bf739ff06c2d66f","message":"add break on footer condition","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/systemctl_lj.py"]}},{"commit":"3a52fb725a0e56b52a0ea430266400b268360737","message":"add systemctl list-jobs parser","stats":{"files_changed":2,"insertions":55,"deletions":29,"files":["jc/cli.py","jc/parsers/systemctl_lj.py"]}},{"commit":"5affd444999de88b9bff7b49d790913540f97cd2","message":"add systemctl_lj, lm, ls, and luf","stats":{"files_changed":6,"insertions":342,"deletions":24,"files":["jc/cli.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_lm.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py"]}},{"commit":"5dbc6e806c5d05bfa1f7e2156ed2573341eb23c9","message":"add systemctl_luf parser","stats":{"files_changed":2,"insertions":142,"deletions":29,"files":["jc/cli.py","jc/parsers/systemctl_luf.py"]}},{"commit":"59ae31f3f342c9337037aac4630310c9b9eb8287","message":"add systemctl parser","stats":{"files_changed":6,"insertions":219,"deletions":0,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/systemctl.md","jc/cli.py","jc/parsers/systemctl.py"]}},{"commit":"230e921c2e8d931ea8a6abdf81215dbfc968b41c","message":"remove fstab from TODO","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"]}},{"commit":"a7c3d88b08ab90b719035cb15d78afe708235742","message":"update example and docs","stats":{"files_changed":3,"insertions":136,"deletions":0,"files":["docgen.sh","docs/parsers/fstab.md","jc/parsers/fstab.py"]}},{"commit":"9b453bcb84dd9f2f566955eda1ab35c863b3e8a1","message":"remove commented code block","stats":{"files_changed":1,"insertions":1,"deletions":13,"files":["jc/parsers/fstab.py"]}},{"commit":"ce43c782f601fc12267fa22279e8e0142ecc3a7f","message":"fstab update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"cb16faaf4d1700379d53053fe06824fd03404f87","message":"helptext update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"3f1d3ff6d85422536e0adfb6433fd3ec0399ebe1","message":"add examples","stats":{"files_changed":2,"insertions":73,"deletions":6,"files":["README.md","jc/parsers/fstab.py"]}},{"commit":"6f67eecd5ed46f8a692ff5dd607a2395a5c838ff","message":"add fstab parser","stats":{"files_changed":2,"insertions":108,"deletions":0,"files":["jc/cli.py","jc/parsers/fstab.py"]}},{"commit":"e75c819190634f0a9048942b39eda691831829ee","message":"changelog update","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]}},{"commit":"601e68d104dd43940acadaa574dfd9b5117b0476","message":"doc update","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/hosts.md","jc/parsers/hosts.py"]}},{"commit":"8285ecfd1e7810102cdbc399398a16f999c841ee","message":"enhance test file with comments","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["tests/fixtures/centos-7.7/hosts.out","tests/fixtures/ubuntu-18.04/hosts.out"]}},{"commit":"8726de902e527b95a12afd79a53d533cc176703d","message":"add hosts parser","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]}},{"commit":"4133585274b0e7faa0255a911468248eb390d673","message":"add hosts tests","stats":{"files_changed":5,"insertions":53,"deletions":0,"files":["tests/fixtures/centos-7.7/hosts.json","tests/fixtures/centos-7.7/hosts.out","tests/fixtures/ubuntu-18.04/hosts.json","tests/fixtures/ubuntu-18.04/hosts.out","tests/test_hosts.py"]}},{"commit":"ad913b141721655a72a7b2a6ad60037e5acd5f9a","message":"add hosts docs","stats":{"files_changed":4,"insertions":148,"deletions":2,"files":["README.md","docgen.sh","docs/parsers/hosts.md","jc/parsers/hosts.py"]}},{"commit":"7113e5a844fc0304f62f4afe65b5cbc816f75372","message":"filter out comments at the end of the line","stats":{"files_changed":1,"insertions":10,"deletions":0,"files":["jc/parsers/hosts.py"]}},{"commit":"a3a8369dc0e7227072f595cef1e57d471eff4d2f","message":"add docs","stats":{"files_changed":1,"insertions":51,"deletions":9,"files":["jc/parsers/hosts.py"]}},{"commit":"64016b8ef049d5d4f02b4371f5cc9632c19bcaa2","message":"add hosts parser","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["jc/cli.py","jc/parsers/hosts.py"]}},{"commit":"1cb49d60c84054b0446f299f6b4bab7d102101c1","message":"remove sar and sadf","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["README.md"]}},{"commit":"c858adfd12144569d0b990a217c5bcd75bd23828","message":"remove stat from todo","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"]}},{"commit":"08d68327c777dd740d93a1b5fff8cf62f58904c6","message":"add stat tests","stats":{"files_changed":5,"insertions":8080,"deletions":0,"files":["tests/fixtures/centos-7.7/stat.json","tests/fixtures/centos-7.7/stat.out","tests/fixtures/ubuntu-18.04/stat.json","tests/fixtures/ubuntu-18.04/stat.out","tests/test_stat.py"]}},{"commit":"0d7c6c5664911af7a41149d51dd6ae05b39d7648","message":"doc fix and add continue lines","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/parsers/stat.md","jc/parsers/stat.py"]}},{"commit":"8bfa41dbf485cb06c928bc00a68727d2ceac21fa","message":"change values to null if -","stats":{"files_changed":3,"insertions":22,"deletions":14,"files":["README.md","docs/parsers/stat.md","jc/parsers/stat.py"]}},{"commit":"7e2fa48ed4f3fd452082ce06e7306efd38b2d508","message":"update changelog","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]}},{"commit":"340635cad5224f2c715bf961956f4b9b6119d80b","message":"fix stats doc","stats":{"files_changed":3,"insertions":408,"deletions":111,"files":["docgen.sh","docs/parsers/ss.md","docs/parsers/stat.md"]}},{"commit":"8f77d1de098f035767d73a6965a695b95b75e161","message":"add stat docs","stats":{"files_changed":2,"insertions":111,"deletions":253,"files":["docgen.sh","docs/parsers/ss.md"]}},{"commit":"7dcf1b25ffb801375f0bf4263f34713ded904de9","message":"add link_to field","stats":{"files_changed":1,"insertions":13,"deletions":0,"files":["jc/parsers/stat.py"]}},{"commit":"9b735381063a1167a6a74864a43b81aefd98009f","message":"set compatibility to linux only","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"]}},{"commit":"3bf8c8c6dbdf7e03e26b4581e35c3274084c07ef","message":"pep8 fixes","stats":{"files_changed":7,"insertions":27,"deletions":27,"files":["jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]}},{"commit":"04a1ff2ca7873d55cdbc831e521f3d4892074d98","message":"pep8 fixes","stats":{"files_changed":8,"insertions":28,"deletions":28,"files":["jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py"]}},{"commit":"64647d230ac936cb43864481ae0f45d13707d7b4","message":"pep8 cleanup","stats":{"files_changed":6,"insertions":21,"deletions":21,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py"]}},{"commit":"c2a67e1b70f33044aecabd8b46018117cb38cb9c","message":"add stat parser","stats":{"files_changed":2,"insertions":213,"deletions":16,"files":["README.md","jc/parsers/stat.py"]}},{"commit":"edb9a7c76e1fedaf37b6a226ad4e1cfc08a9a5ec","message":"add stat parser","stats":{"files_changed":2,"insertions":94,"deletions":0,"files":["jc/cli.py","jc/parsers/stat.py"]}},{"commit":"a407f5b67833cc5f8dda9fe8265cd34e62f28d14","message":"minor update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"e5b4987acb70e854d9996350235c5535b4a46b69","message":"doc update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"ba8cc18eebe779742cff0ba4c8bebe376e787c8c","message":"add ss tests","stats":{"files_changed":5,"insertions":405,"deletions":0,"files":["tests/fixtures/centos-7.7/ss-sudo-a.json","tests/fixtures/centos-7.7/ss-sudo-a.out","tests/fixtures/ubuntu-18.04/ss-sudo-a.json","tests/fixtures/ubuntu-18.04/ss-sudo-a.out","tests/test_ss.py"]}},{"commit":"d2c7316e00b9aaf19231c05351821041458baf98","message":"update command options info","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]}},{"commit":"609aa14d243206e81ed31f8438c3f42e8263e140","message":"spelling fix","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/ss.md","jc/parsers/ss.py"]}},{"commit":"ef1ad4c700fcb740b5fbe1e12205b9a30ae427ab","message":"doc update","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["docs/parsers/ss.md","jc/parsers/ss.py"]}},{"commit":"a0e2732152dc3005914b9a3e4f03e937a113c67f","message":"add ss example","stats":{"files_changed":1,"insertions":64,"deletions":12,"files":["README.md"]}},{"commit":"9b5d3e3be1ac07813e716f8426fe89cced478221","message":"update doc","stats":{"files_changed":1,"insertions":135,"deletions":25,"files":["docs/parsers/ss.md"]}},{"commit":"2663ef31fbc1b69b89b8032640a25065cc953866","message":"fix field names per ss documentation","stats":{"files_changed":1,"insertions":159,"deletions":30,"files":["jc/parsers/ss.py"]}},{"commit":"a4cdd3378e6a031f16dd371ed5cd60ff018feb32","message":"add compatibility info","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["README.md"]}},{"commit":"2f805da24d0e833e3d2a1f3a5ec34031fa911c05","message":"add colon to parameter in docs","stats":{"files_changed":45,"insertions":51,"deletions":51,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/utils.md","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/utils.py"]}},{"commit":"79152a946d93e4facf9711bfa0f421e1978e0f1f","message":"initialize network_list and socket_list variables","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/netstat.py"]}},{"commit":"de37bb37d01b397df2b5992b4acd64817380401d","message":"add ss docs","stats":{"files_changed":3,"insertions":187,"deletions":1,"files":["docgen.sh","docs/parsers/ss.md","jc/parsers/ss.py"]}},{"commit":"f783e44e5c0cd05733da5d24573f06d05760f993","message":"doc fix","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["README.md","changelog.txt"]}},{"commit":"af82f2c991ac0668485e75ae78a26b9553ec8b13","message":"update raw format note","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"46774daf9d3e0612df8f79d4b6b724e612ceb725","message":"doc update","stats":{"files_changed":2,"insertions":194,"deletions":4,"files":["README.md","jc/parsers/ss.py"]}},{"commit":"648306b7856fe2e296ce463ff4c9c2a8632c92d4","message":"process ss data","stats":{"files_changed":1,"insertions":44,"deletions":22,"files":["jc/parsers/ss.py"]}},{"commit":"b7a4f205b80c0a6a41aaabf59703525ac526c295","message":"parser fixes","stats":{"files_changed":1,"insertions":17,"deletions":14,"files":["jc/parsers/ss.py"]}},{"commit":"fdb168b43a69358a97bf43b71a0adbc7b1ef56f5","message":"add ss parser","stats":{"files_changed":2,"insertions":120,"deletions":0,"files":["jc/cli.py","jc/parsers/ss.py"]}},{"commit":"b6f65c93c462856f26201df0cbfe804b29a65169","message":"ps doc update","stats":{"files_changed":3,"insertions":43,"deletions":69,"files":["README.md","docs/parsers/ps.md","jc/parsers/ps.py"]}},{"commit":"3f4838f17a81969718d9e5b6bafa21e0b92e1d95","message":"remove cli.md","stats":{"files_changed":2,"insertions":0,"deletions":6,"files":["docgen.sh","docs/cli.md"]}},{"commit":"eef0dee2aa206716d9cf011bec58a06c46bbee15","message":"doc update","stats":{"files_changed":2,"insertions":8,"deletions":0,"files":["docs/utils.md","jc/utils.py"]}},{"commit":"e17388d3b2d1521d963bf9dd9e7a4ba5ba9bb09d","message":"doc update","stats":{"files_changed":2,"insertions":44,"deletions":4,"files":["docs/utils.md","jc/utils.py"]}},{"commit":"7e6a1bc719b7160ba70cd326ff6aa182993a7380","message":"doc update","stats":{"files_changed":2,"insertions":41,"deletions":63,"files":["docs/readme.md","jc/__init__.py"]}},{"commit":"37738a2ea2f15af847e4b8383aba911e2020a3e8","message":"update contributions","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"c5834a57db8957723a1425b9db46c433e28a3af1","message":"add todo section","stats":{"files_changed":1,"insertions":14,"deletions":0,"files":["README.md"]}},{"commit":"91b9373f380e06f91888811edbfb21747ff08810","message":"new examples","stats":{"files_changed":1,"insertions":417,"deletions":673,"files":["README.md"]}},{"commit":"ce0bb5b816eed0c75542ead474c3dcb8401be2d7","message":"formatting fix","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"f330ff0eff00586f46d18497f2441e94b6430e91","message":"wrap example text","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["README.md"]}},{"commit":"4b02700414660b90518311485761870402368625","message":"update simple examples","stats":{"files_changed":1,"insertions":9,"deletions":20,"files":["README.md"]}},{"commit":"ee30180376b7acec46314bbc483866bff41c362a","message":"fix note","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"338e0ff15c7fac84475c1ed107e6a23e7a009b1f","message":"add schema note","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]}},{"commit":"3ac75305dfa33429646bb5d415567034cccfeee3","message":"update process() doc","stats":{"files_changed":39,"insertions":351,"deletions":39,"files":["docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]}},{"commit":"3bdcf44afb708cf6a716a0847b119f895602c23e","message":"doc update","stats":{"files_changed":2,"insertions":18,"deletions":2,"files":["docs/parsers/arp.md","jc/parsers/arp.py"]}},{"commit":"e3f4ffede56fe48c0a282a021ac5cdfd7a8abee9","message":"doc update","stats":{"files_changed":20,"insertions":172,"deletions":77,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md"]}},{"commit":"f0c8725d4355113f7690f20bb99078e488084ad7","message":"doc update","stats":{"files_changed":21,"insertions":181,"deletions":81,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]}},{"commit":"5473bc4eb697d00bd26a038287e1137e438cacb5","message":"doc update","stats":{"files_changed":2,"insertions":16,"deletions":6,"files":["docs/parsers/arp.md","jc/parsers/arp.py"]}},{"commit":"b9bd9422bfa46144416fa65add2e041d4124357b","message":"doc update","stats":{"files_changed":2,"insertions":380,"deletions":46,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]}},{"commit":"cb5729a070925a7fa29f762bd4b074532f5cba55","message":"add options to docs","stats":{"files_changed":1,"insertions":62,"deletions":44,"files":["README.md"]}},{"commit":"f0b1ab42337746afd37365abdf44729d530d5410","message":"doc update","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/utils.md","jc/utils.py"]}},{"commit":"b15386e849b9fea347e7b17307eedf779d8022fc","message":"doc update","stats":{"files_changed":2,"insertions":11,"deletions":5,"files":["docs/utils.md","jc/utils.py"]}},{"commit":"d2a2c8da35ee44e9a7572885609548eb809bcdda","message":"doc updates","stats":{"files_changed":3,"insertions":1,"deletions":5,"files":["docs/parsers/iptables.md","docs/parsers/mount.md","docs/parsers/uname.md"]}},{"commit":"7251548cbb09beae6971385a56036e9649bd9b2c","message":"documentation updates","stats":{"files_changed":3,"insertions":3,"deletions":5,"files":["jc/parsers/iptables.py","jc/parsers/mount.py","jc/parsers/uname.py"]}},{"commit":"146e29f7cbc0f396be67dbd7ae971a4ef4dafb7b","message":"update docs","stats":{"files_changed":47,"insertions":5386,"deletions":2249,"files":["docgen.sh","docs/cli.md","docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/readme.md","docs/utils.md","jc/__init__.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/utils.py"]}},{"commit":"363fd3eab409351121dab8a11c6b565829ccd84a","message":"move parser_name to except block","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"4083dd4260ff3a8bb6649e1661cf3e058fdbad59","message":"add -d option","stats":{"files_changed":2,"insertions":24,"deletions":5,"files":["changelog.txt","jc/cli.py"]}},{"commit":"b2b74547baaf33058d74fc08cb665777b19bd05a","message":"add netstat-sudo-aeep tests","stats":{"files_changed":6,"insertions":317,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-sudo-aeep.json","tests/fixtures/centos-7.7/netstat-sudo-aeep.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.json","tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.out","tests/test_netstat.py"]}},{"commit":"dddb0baabf8a78261ac80380b97e7c92c7ce4d89","message":"use \\u2063 instead of \\u2026","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/netstat.py"]}},{"commit":"84b4f67ef9d4bb0db201a095d74400a56394589d","message":"new json output","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["tests/fixtures/centos-7.7/ps-axu.json","tests/fixtures/ubuntu-18.04/ps-axu.json"]}},{"commit":"3a089138b8c269ba3c5f7aec87ae3f8ec368c3ab","message":"add int and float changes","stats":{"files_changed":1,"insertions":129,"deletions":9,"files":["jc/parsers/ps.py"]}},{"commit":"3ff0305c8e62ce3b5a8f3f9174c5a9da3bc22766","message":"add lsblk tests","stats":{"files_changed":8,"insertions":54,"deletions":2,"files":["tests/fixtures/centos-7.7/lsblk-allcols.json","tests/fixtures/centos-7.7/lsblk-allcols.out","tests/fixtures/centos-7.7/lsblk.json","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/lsblk-allcols.json","tests/fixtures/ubuntu-18.04/lsblk-allcols.out","tests/fixtures/ubuntu-18.04/lsblk.json","tests/test_lsblk.py"]}},{"commit":"761edc3c6cfc215fe45c65ee2bb5462cb460b6a6","message":"remove unused parse_pairs function","stats":{"files_changed":1,"insertions":1,"deletions":6,"files":["jc/parsers/lsblk.py"]}},{"commit":"3351c81f647ac97a5038cc0c14adb31e55832a77","message":"add documentation","stats":{"files_changed":1,"insertions":200,"deletions":2,"files":["jc/parsers/lsblk.py"]}},{"commit":"3dfc6f67d770c59804bdeb371d5c78e3f3668f9e","message":"change empty values to Null","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/lsblk.py"]}},{"commit":"1546ec3bd139ef687282f60786388b5207541c98","message":"fixes for right justified columns","stats":{"files_changed":1,"insertions":17,"deletions":13,"files":["jc/parsers/lsblk.py"]}},{"commit":"2a953011f72e922c89b9af6dfebd1983da7c338d","message":"rewrite of lsblk parser to use a custom delimiter","stats":{"files_changed":2,"insertions":50,"deletions":155,"files":["changelog.txt","jc/parsers/lsblk.py"]}},{"commit":"d2f755de9d2be7b0af5f010042e1f4ca589c5464","message":"updates tests","stats":{"files_changed":14,"insertions":250,"deletions":566,"files":["tests/test_ifconfig.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_ls.py","tests/test_lsblk.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_ps.py","tests/test_route.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py"]}},{"commit":"f363334639c5fa3a43889794ea52409056a2d886","message":"update tests","stats":{"files_changed":5,"insertions":87,"deletions":219,"files":["tests/test_df.py","tests/test_dig.py","tests/test_env.py","tests/test_free.py","tests/test_history.py"]}},{"commit":"750197e48596ad96804477053d3ff3c8063ea68a","message":"new tests","stats":{"files_changed":1,"insertions":27,"deletions":70,"files":["tests/test_arp.py"]}},{"commit":"36b349e4ed39fe611c7d87a47c378cc4d4627ad2","message":"json output files","stats":{"files_changed":76,"insertions":76,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-a.json","tests/fixtures/centos-7.7/arp-v.json","tests/fixtures/centos-7.7/arp.json","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/df.json","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/centos-7.7/env.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/centos-7.7/free.json","tests/fixtures/centos-7.7/history.json","tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/centos-7.7/iptables-filter-nv.json","tests/fixtures/centos-7.7/iptables-filter.json","tests/fixtures/centos-7.7/iptables-mangle.json","tests/fixtures/centos-7.7/iptables-nat.json","tests/fixtures/centos-7.7/iptables-raw.json","tests/fixtures/centos-7.7/jobs.json","tests/fixtures/centos-7.7/ls-al.json","tests/fixtures/centos-7.7/ls-alh.json","tests/fixtures/centos-7.7/ls.json","tests/fixtures/centos-7.7/lsblk.json","tests/fixtures/centos-7.7/lsmod.json","tests/fixtures/centos-7.7/lsof-sudo.json","tests/fixtures/centos-7.7/lsof.json","tests/fixtures/centos-7.7/mount.json","tests/fixtures/centos-7.7/netstat-l.json","tests/fixtures/centos-7.7/netstat-p.json","tests/fixtures/centos-7.7/netstat-sudo-lnp.json","tests/fixtures/centos-7.7/netstat.json","tests/fixtures/centos-7.7/ps-axu.json","tests/fixtures/centos-7.7/ps-ef.json","tests/fixtures/centos-7.7/route-vn.json","tests/fixtures/centos-7.7/route.json","tests/fixtures/centos-7.7/uname-a.json","tests/fixtures/centos-7.7/uptime.json","tests/fixtures/centos-7.7/w.json","tests/fixtures/ubuntu-18.04/arp-a.json","tests/fixtures/ubuntu-18.04/arp-v.json","tests/fixtures/ubuntu-18.04/arp.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/df.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json","tests/fixtures/ubuntu-18.04/env.json","tests/fixtures/ubuntu-18.04/free-h.json","tests/fixtures/ubuntu-18.04/free.json","tests/fixtures/ubuntu-18.04/history.json","tests/fixtures/ubuntu-18.04/ifconfig.json","tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","tests/fixtures/ubuntu-18.04/iptables-filter.json","tests/fixtures/ubuntu-18.04/iptables-mangle.json","tests/fixtures/ubuntu-18.04/iptables-nat.json","tests/fixtures/ubuntu-18.04/iptables-raw.json","tests/fixtures/ubuntu-18.04/jobs.json","tests/fixtures/ubuntu-18.04/ls-al.json","tests/fixtures/ubuntu-18.04/ls-alh.json","tests/fixtures/ubuntu-18.04/ls.json","tests/fixtures/ubuntu-18.04/lsblk.json","tests/fixtures/ubuntu-18.04/lsmod.json","tests/fixtures/ubuntu-18.04/lsof-sudo.json","tests/fixtures/ubuntu-18.04/lsof.json","tests/fixtures/ubuntu-18.04/mount.json","tests/fixtures/ubuntu-18.04/netstat-l.json","tests/fixtures/ubuntu-18.04/netstat-p.json","tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.json","tests/fixtures/ubuntu-18.04/netstat.json","tests/fixtures/ubuntu-18.04/ps-axu.json","tests/fixtures/ubuntu-18.04/ps-ef.json","tests/fixtures/ubuntu-18.04/route-vn.json","tests/fixtures/ubuntu-18.04/route.json","tests/fixtures/ubuntu-18.04/uname-a.json","tests/fixtures/ubuntu-18.04/uptime.json","tests/fixtures/ubuntu-18.04/w.json"]}},{"commit":"b5f1e94fe2859c4fbcf126f8f8fb20d71a9b6433","message":"fix for space before '-' in program_name","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/netstat.py"]}},{"commit":"6a504fb0e10b1ef551ed9fe780926fe5ca02d267","message":"add exception type","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"]}},{"commit":"e02bad2240bacbc31097d931a902a34217d559db","message":"update documentation","stats":{"files_changed":1,"insertions":123,"deletions":175,"files":["jc/parsers/netstat.py"]}},{"commit":"1d4043a3b64c38a20a0db065c3bdc3c6a2d068bd","message":"add template parser","stats":{"files_changed":1,"insertions":52,"deletions":0,"files":["jc/parsers/foo.py"]}},{"commit":"039e034829789ca314a00abd4f1d9ad06f1a6eef","message":"fix parsing issues in program_name when spaces are in the name","stats":{"files_changed":1,"insertions":19,"deletions":6,"files":["jc/parsers/netstat.py"]}},{"commit":"d828de4f4f2f4c3d582fddee79830d12511c3299","message":"update documentation","stats":{"files_changed":1,"insertions":53,"deletions":9,"files":["jc/parsers/w.py"]}},{"commit":"098000bb10a3f5ed33d285c6ba4f0dfb9a013fdc","message":"fix blank 'from' column issue","stats":{"files_changed":2,"insertions":24,"deletions":9,"files":["changelog.txt","jc/parsers/w.py"]}},{"commit":"b41165eff5cd7371e852cd33e084a919524ead9b","message":"process w data","stats":{"files_changed":1,"insertions":31,"deletions":1,"files":["jc/parsers/w.py"]}},{"commit":"6ad7891b2b34fae1a366568e4eba86e886a6dd84","message":"process uptime data","stats":{"files_changed":1,"insertions":59,"deletions":14,"files":["jc/parsers/uptime.py"]}},{"commit":"72138315598cd405bc0508b554108bf3f730dcb0","message":"add process boilerplate","stats":{"files_changed":1,"insertions":31,"deletions":10,"files":["jc/parsers/uname.py"]}},{"commit":"10eedd82e4c4678fbf989fe599d7ca75deced5a8","message":"changelog update","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["changelog.txt"]}},{"commit":"a55493da0f1457a46f29511e0835adfa9d748f7b","message":"process route data","stats":{"files_changed":1,"insertions":93,"deletions":6,"files":["jc/parsers/route.py"]}},{"commit":"89973f4162317693b0d094a64115ee87d8479d51","message":"doc updates and tty fix","stats":{"files_changed":1,"insertions":45,"deletions":27,"files":["jc/parsers/ps.py"]}},{"commit":"4802222ad50d55372f2b883d83a61181086b0619","message":"process ps data","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/parsers/ps.py"]}},{"commit":"bcd28f06f87a4260d1787399d723817afd6aee90","message":"prep ps for process","stats":{"files_changed":1,"insertions":23,"deletions":1,"files":["jc/parsers/ps.py"]}},{"commit":"e17a47a7fa7f4c1bb4c4b55fb004963fc1b61434","message":"fix typo","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"]}},{"commit":"cad2e16c7aa54a70f476bf4268ff8e5985cff468","message":"document examples","stats":{"files_changed":1,"insertions":353,"deletions":1,"files":["jc/parsers/netstat.py"]}},{"commit":"5da5d278dac77bd4aa21819194e7f9e178bd1887","message":"process netstat data","stats":{"files_changed":1,"insertions":23,"deletions":0,"files":["jc/parsers/netstat.py"]}},{"commit":"81b6776e57c113cbfb8346d1cfd83532a440c257","message":"remove old netstat parser","stats":{"files_changed":1,"insertions":0,"deletions":177,"files":["jc/parsers/netstat.py.old"]}},{"commit":"5ecb6bd58b4ed91f63e4a0b5939378bd9925b7b7","message":"doc updates","stats":{"files_changed":2,"insertions":4,"deletions":3,"files":["changelog.txt","jc/parsers/netstat.py"]}},{"commit":"21b56096c57cfcf5c55fdf5f9bab88b6d5c7dd73","message":"finalize parse_post","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["jc/parsers/netstat.py"]}},{"commit":"8c78f959731a25a05ee6361a14853c92f8fce69b","message":"clean up trailing spaces on entries","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["jc/parsers/netstat.py"]}},{"commit":"94a88bb5669d9a9a5dff085a4c4111bdd39df8f6","message":"post_parse flags and program_name","stats":{"files_changed":1,"insertions":35,"deletions":17,"files":["jc/parsers/netstat.py"]}},{"commit":"579124475b0b517b36ddbe5bdb13be14807dea1f","message":"simplify parser_map code","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]}},{"commit":"5da83e020015eb5559d216bc3f39b3854e76adf3","message":"fix found variable error","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"]}},{"commit":"a90a76d004b923edece07a52a3aa400a9ef4b005","message":"move out old netstat parser","stats":{"files_changed":2,"insertions":177,"deletions":140,"files":["jc/parsers/netstat.py.old","jc/parsers/netstat2.py"]}},{"commit":"bdfa95912398b2630fcb13e866f4013747fd0975","message":"fix compatibility code","stats":{"files_changed":20,"insertions":209,"deletions":212,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]}},{"commit":"4380594275bc863e81839a6a7b032a6ff0cbb9b6","message":"remove cli functions from utils","stats":{"files_changed":1,"insertions":8,"deletions":46,"files":["jc/utils.py"]}},{"commit":"88bf252c0df3c583640286880d7992e4399e23f4","message":"rename jc.py to cli.py","stats":{"files_changed":2,"insertions":139,"deletions":128,"files":["jc/cli.py","jc/jc.py"]}},{"commit":"a5efd8adce77fca7e3343f8f518c7bad578fdb4f","message":"rename jc.py to cli.py","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"2ee392eefffde77ebdf83f5e4e0c43cf8c1a7d6e","message":"add quiet mode","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/netstat2.py"]}},{"commit":"9c1d893e16ea17b16bec5fd0ec8839c4fe6f0590","message":"move utils to own module and add quiet mode","stats":{"files_changed":4,"insertions":102,"deletions":90,"files":["jc/jc.py","jc/parsers/arp.py","jc/parsers/df.py","jc/utils.py"]}},{"commit":"88dcb90c83b757285661c72429c5b60bb1ead94a","message":"changelog update","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["changelog.txt"]}},{"commit":"a3bcabc89c1f74d067da0046492dbc56e50b1005","message":"mvp of netstat raw_data parser","stats":{"files_changed":1,"insertions":9,"deletions":62,"files":["jc/parsers/netstat2.py"]}},{"commit":"dafbf9fdcf53a8abbd006baef0be6697f860d2a1","message":"process lsmod data","stats":{"files_changed":4,"insertions":247,"deletions":53,"files":["jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat2.py"]}},{"commit":"680cb2b2caa82e1e2c3225b3c44cae2ba03ba02c","message":"doc update","stats":{"files_changed":1,"insertions":76,"deletions":7,"files":["jc/parsers/lsblk.py"]}},{"commit":"54818a06e0e0b981810f6aec45c308da81a9e2ea","message":"change bool variable names","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/lsblk.py"]}},{"commit":"88f4c5b5a93da3938b84f97abfc54539ee19ac48","message":"remove TypeError from exception check","stats":{"files_changed":6,"insertions":10,"deletions":10,"files":["jc/parsers/dig.py","jc/parsers/free.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py"]}},{"commit":"2bb7409887e8b7659613189daf58d02cb26bd6ba","message":"process lsblk data","stats":{"files_changed":2,"insertions":36,"deletions":11,"files":["jc/parsers/df.py","jc/parsers/lsblk.py"]}},{"commit":"c780aac3aba02cc042c6a3c984af198069956370","message":"add compatibility function","stats":{"files_changed":22,"insertions":91,"deletions":5,"files":["jc/jc.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat2.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]}},{"commit":"5010aaec285e26ae9dbfdb3fcdc38a3bd36cd236","message":"put exit() back","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"]}},{"commit":"066e93cb075021ac94a0e2e6a36a34bc173ee6c0","message":"move exit() to errormessage()","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"]}},{"commit":"0bd2faa7f71a128babc68afea053159ccb91b702","message":"beautify compatibility list","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/jc.py"]}},{"commit":"e2f926453ba386736204e358f8306dfc731b5005","message":"add install script","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["install.sh"]}},{"commit":"b953b79f9c46d8c5398a6c1c2769167b5aed2805","message":"add compatibility","stats":{"files_changed":3,"insertions":11,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/ls.py"]}},{"commit":"7f9967780692bec2fcbe992eee0c392ab92efb7f","message":"compatibility function call","stats":{"files_changed":2,"insertions":19,"deletions":1,"files":["jc/jc.py","jc/parsers/lsblk.py"]}},{"commit":"721b54665924ad1657ee83cd5fca601e03700962","message":"finish schema","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/lsblk.py"]}},{"commit":"2de5e41269421c73e07d4abd6ca99b38be736261","message":"fix for more columns and build schema","stats":{"files_changed":1,"insertions":95,"deletions":12,"files":["jc/parsers/lsblk.py"]}},{"commit":"dfe0f6e99b6174734661fc43d9ad4b1d0dfd96e5","message":"process ls data","stats":{"files_changed":1,"insertions":75,"deletions":9,"files":["jc/parsers/ls.py"]}},{"commit":"8873b1bc697c8f9409fa676c88b5ebe109dc8717","message":"clean up process code","stats":{"files_changed":1,"insertions":24,"deletions":46,"files":["jc/parsers/df.py"]}},{"commit":"9ff94707004fefed475603436fc0a7ffb19e6fee","message":"refactor helptext() function","stats":{"files_changed":1,"insertions":9,"deletions":4,"files":["jc/jc.py"]}},{"commit":"2c58fca53044892e15ceb5e8bcae1afb09fa3269","message":"process jobs data","stats":{"files_changed":1,"insertions":62,"deletions":4,"files":["jc/parsers/jobs.py"]}},{"commit":"9e5cd90da7d92bbadbc0d25071d087a3dbd90a5b","message":"process iptables data","stats":{"files_changed":1,"insertions":131,"deletions":261,"files":["jc/parsers/iptables.py"]}},{"commit":"7ee0d49424bba5274975d6c33e0721977660692f","message":"process ifconfig data","stats":{"files_changed":1,"insertions":107,"deletions":28,"files":["jc/parsers/ifconfig.py"]}},{"commit":"a9058ee21e87454aa423112239c4f4df7daca8c4","message":"doc formatting","stats":{"files_changed":3,"insertions":4,"deletions":1,"files":["jc/parsers/arp.py","jc/parsers/dig.py","jc/parsers/free.py"]}},{"commit":"fcf0aac87dccac2ce28e6f55e66e2f0b8f6fbd36","message":"add history processing","stats":{"files_changed":1,"insertions":54,"deletions":10,"files":["jc/parsers/history.py"]}},{"commit":"daec5f068103aae547509ddacc2be56c84f39f17","message":"process free data","stats":{"files_changed":1,"insertions":55,"deletions":6,"files":["jc/parsers/free.py"]}},{"commit":"5b2491d5ae72705758944e247fbca83367c0365f","message":"process env data","stats":{"files_changed":1,"insertions":54,"deletions":5,"files":["jc/parsers/env.py"]}},{"commit":"d9b41ac73b234f5bf7ff3abfee198092424a1bbd","message":"doc formatting","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/dig.py"]}},{"commit":"7168ffddf8a8dfcdd5bcabd8bf943d6417de407d","message":"process dig output","stats":{"files_changed":1,"insertions":87,"deletions":5,"files":["jc/parsers/dig.py"]}},{"commit":"a855344bec9f60d852de326953436ec76f25cffb","message":"document schema","stats":{"files_changed":1,"insertions":13,"deletions":0,"files":["jc/parsers/arp.py"]}},{"commit":"d8b3b59fae924494fbcdfbdf6ad790f5234b0c69","message":"add schema and rename 'avail' to 'available'","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/parsers/df.py"]}},{"commit":"4b7d7840d37be47c1c98c38a6d712e7090e5b68c","message":"add -r option","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","changelog.txt"]}},{"commit":"58a094a9b4cab0fcb99581f37a21a450fc3a1aed","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]}},{"commit":"65adbb4189ac66de3283adb2af93a1251103f057","message":"doc update","stats":{"files_changed":1,"insertions":29,"deletions":7,"files":["jc/parsers/arp.py"]}},{"commit":"f7350959c9706486a3aed19a999e5ee756a1240c","message":"df fix for changing header names when -h used","stats":{"files_changed":1,"insertions":47,"deletions":24,"files":["jc/parsers/df.py"]}},{"commit":"8934a7d832b8e1375f0bbdd71031f37ae42f3929","message":"fix dictionary iteration","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["jc/parsers/arp.py","jc/parsers/df.py"]}},{"commit":"669a424fd6508db91bf5cfa2607033fac85f442c","message":"fix process function","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/df.py"]}},{"commit":"591a65c2bda26efcdd570a5f147f98a5be0473d4","message":"process df data","stats":{"files_changed":1,"insertions":46,"deletions":2,"files":["jc/parsers/df.py"]}},{"commit":"a78fb890782a64b20c0c1b60afbd915ebdd88535","message":"add raw and processed output","stats":{"files_changed":1,"insertions":21,"deletions":5,"files":["jc/parsers/arp.py"]}},{"commit":"8979dab2a5371fce3a773004c2309e7483e4cd31","message":"add raw mode","stats":{"files_changed":1,"insertions":25,"deletions":20,"files":["jc/jc.py"]}},{"commit":"0a891f0adda7f2f3233222a0cb5c1f737913ad6f","message":"bump python required version","stats":{"files_changed":2,"insertions":4,"deletions":1,"files":["changelog.txt","setup.py"]}},{"commit":"c220e35b14237c2cfc38aa661413af83ea13e393","message":"cleanup helptext","stats":{"files_changed":1,"insertions":34,"deletions":33,"files":["jc/jc.py"]}},{"commit":"f26c5818bd958c18f4ecc22611b9c058f6213a2c","message":"refactor helptext","stats":{"files_changed":1,"insertions":36,"deletions":33,"files":["jc/jc.py"]}},{"commit":"e712cd3fc4cec1b3137c73e199b2d89fd42fb3bb","message":"netstat2 skeleton","stats":{"files_changed":1,"insertions":138,"deletions":0,"files":["jc/parsers/netstat2.py"]}},{"commit":"0309c9ac67c5f65e0a584fd01e8104ef1990fa7c","message":"setup cleanup","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"9a9eb4120af7696cd3727ac0f0a014663e62b993","message":"setup updates","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["setup.py"]}},{"commit":"d1927456b02e6c2a6e6395cd6ce873b6565ec37d","message":"Merge pull request #6 from kellyjonbrazil/dev"},{"commit":"a3d9213a1e2fd52ba2cbc863d4d01d3ffeebe230","message":"add date","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["changelog.txt"]}},{"commit":"3365c03a1e709835b4bd6bca023afbcb46912982","message":"add tests","stats":{"files_changed":2,"insertions":361,"deletions":0,"files":["tests/test_arp.py","tests/test_dig.py"]}},{"commit":"4f6c87389b313b368d9e833feef55fe6daf7aac9","message":"add dig test files","stats":{"files_changed":7,"insertions":164,"deletions":1,"files":["tests/fixtures/centos-7.7/dig-aaaa.out","tests/fixtures/centos-7.7/dig-x.out","tests/fixtures/centos-7.7/dig.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/dig-aaaa.out","tests/fixtures/ubuntu-18.04/dig-x.out","tests/fixtures/ubuntu-18.04/dig.out"]}},{"commit":"41a2a9adac7d3c29dfa11292f08b0877c69b1a5d","message":"remove unnecessary if statement","stats":{"files_changed":2,"insertions":147,"deletions":3,"files":["README.md","jc/parsers/dig.py"]}},{"commit":"74dae2905b2b0916f0be9fee2a4a343962760ff6","message":"dig parser mvp","stats":{"files_changed":1,"insertions":143,"deletions":30,"files":["jc/parsers/dig.py"]}},{"commit":"d1f64214de00090c3faae0bf544c6c2602ab8c31","message":"add authority parsing","stats":{"files_changed":1,"insertions":19,"deletions":3,"files":["jc/parsers/dig.py"]}},{"commit":"d3e1aa20a815d1d1d6ae82776ae18e3416f0966f","message":"fix when line","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dig.py"]}},{"commit":"72cae9577756c4355211a19f4dd77aaeb6f8e905","message":"dig fixes","stats":{"files_changed":1,"insertions":47,"deletions":9,"files":["jc/parsers/dig.py"]}},{"commit":"219bc8130f55f23e3be3abbe56104aefc2f84e86","message":"dig parser skeleton","stats":{"files_changed":2,"insertions":155,"deletions":0,"files":["jc/jc.py","jc/parsers/dig.py"]}},{"commit":"e8c1a554c040ad8f9c6b518db5fd58e8345d2181","message":"testfile updates","stats":{"files_changed":3,"insertions":7,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-a.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/arp-a.out"]}},{"commit":"087a60bc2adf64bfcedc1f264fef328f993b530c","message":"documentation updates","stats":{"files_changed":2,"insertions":87,"deletions":5,"files":["README.md","jc/parsers/arp.py"]}},{"commit":"9c9823c3b8737b5de08af6278ca74414138e9263","message":"add arp testfiles","stats":{"files_changed":5,"insertions":16,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-v.out","tests/fixtures/centos-7.7/arp.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/arp-v.out","tests/fixtures/ubuntu-18.04/arp.out"]}},{"commit":"cf8d13030bf67261a986c0f80fa20ec0e37a743a","message":"add arp","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["README.md"]}},{"commit":"1eff69c187ca410ffaec7909bc2532553be1d80c","message":"add documentation","stats":{"files_changed":2,"insertions":17,"deletions":1,"files":["changelog.txt","jc/parsers/arp.py"]}},{"commit":"b10fb77d714b73a10a9bf28b45269b3530e01cee","message":"fixup arp parser","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/arp.py"]}},{"commit":"87cee8b230a06fa270b2e36afb56f337da814c80","message":"add arp parser","stats":{"files_changed":2,"insertions":28,"deletions":1,"files":["jc/jc.py","jc/parsers/arp.py"]}},{"commit":"83ab10d6282e26391bbf6bae5d0d29e040b209f0","message":"documentation update","stats":{"files_changed":1,"insertions":44,"deletions":34,"files":["jc/__init__.py"]}},{"commit":"d58a6e1d1dc93155255922b65b0af1325439b033","message":"readme update","stats":{"files_changed":1,"insertions":13,"deletions":15,"files":["README.md"]}},{"commit":"cb46ca5c2776a13c673a44d3e0fbd0661b32af9f","message":"readme update","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]}},{"commit":"5528d979f0b45787d68ab79b962371df9acc527b","message":"version bump","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["changelog.txt","setup.py"]}},{"commit":"ee94a038a61d60db72046d5bcceec58009decb39","message":"add tests","stats":{"files_changed":3,"insertions":131,"deletions":0,"files":["tests/test_uname.py","tests/test_uptime.py","tests/test_w.py"]}},{"commit":"1d658f7a9fc50873f76985b2fb9de92ada9d5547","message":"add tests","stats":{"files_changed":3,"insertions":265,"deletions":0,"files":["tests/test_netstat.py","tests/test_ps.py","tests/test_route.py"]}},{"commit":"392cb44f9b19829a5ceba055e24c7af4d8ac5b3b","message":"initial add of tests and fixtures","stats":{"files_changed":80,"insertions":12667,"deletions":0,"files":["runtests.sh","tests/__init__.py","tests/fixtures/centos-7.7/df-h.out","tests/fixtures/centos-7.7/df.out","tests/fixtures/centos-7.7/env.out","tests/fixtures/centos-7.7/free-h.out","tests/fixtures/centos-7.7/free.out","tests/fixtures/centos-7.7/history.out","tests/fixtures/centos-7.7/ifconfig.out","tests/fixtures/centos-7.7/iptables-filter-nv.out","tests/fixtures/centos-7.7/iptables-filter.out","tests/fixtures/centos-7.7/iptables-mangle.out","tests/fixtures/centos-7.7/iptables-nat.out","tests/fixtures/centos-7.7/iptables-raw.out","tests/fixtures/centos-7.7/jobs.out","tests/fixtures/centos-7.7/ls-al.out","tests/fixtures/centos-7.7/ls-alh.out","tests/fixtures/centos-7.7/ls.out","tests/fixtures/centos-7.7/lsblk.out","tests/fixtures/centos-7.7/lsmod.out","tests/fixtures/centos-7.7/lsof-sudo.out","tests/fixtures/centos-7.7/lsof.out","tests/fixtures/centos-7.7/mount.out","tests/fixtures/centos-7.7/netstat-l.out","tests/fixtures/centos-7.7/netstat-p.out","tests/fixtures/centos-7.7/netstat-sudo-lnp.out","tests/fixtures/centos-7.7/netstat.out","tests/fixtures/centos-7.7/ps-axu.out","tests/fixtures/centos-7.7/ps-ef.out","tests/fixtures/centos-7.7/route-vn.out","tests/fixtures/centos-7.7/route.out","tests/fixtures/centos-7.7/uname-a.out","tests/fixtures/centos-7.7/uptime.out","tests/fixtures/centos-7.7/w.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/df-h.out","tests/fixtures/ubuntu-18.04/df.out","tests/fixtures/ubuntu-18.04/env.out","tests/fixtures/ubuntu-18.04/free-h.out","tests/fixtures/ubuntu-18.04/free.out","tests/fixtures/ubuntu-18.04/history.out","tests/fixtures/ubuntu-18.04/ifconfig.out","tests/fixtures/ubuntu-18.04/iptables-filter-nv.out","tests/fixtures/ubuntu-18.04/iptables-filter.out","tests/fixtures/ubuntu-18.04/iptables-mangle.out","tests/fixtures/ubuntu-18.04/iptables-nat.out","tests/fixtures/ubuntu-18.04/iptables-raw.out","tests/fixtures/ubuntu-18.04/jobs.out","tests/fixtures/ubuntu-18.04/ls-al.out","tests/fixtures/ubuntu-18.04/ls-alh.out","tests/fixtures/ubuntu-18.04/ls.out","tests/fixtures/ubuntu-18.04/lsblk.out","tests/fixtures/ubuntu-18.04/lsmod.out","tests/fixtures/ubuntu-18.04/lsof-sudo.out","tests/fixtures/ubuntu-18.04/lsof.out","tests/fixtures/ubuntu-18.04/mount.out","tests/fixtures/ubuntu-18.04/netstat-l.out","tests/fixtures/ubuntu-18.04/netstat-p.out","tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.out","tests/fixtures/ubuntu-18.04/netstat.out","tests/fixtures/ubuntu-18.04/ps-axu.out","tests/fixtures/ubuntu-18.04/ps-ef.out","tests/fixtures/ubuntu-18.04/route-vn.out","tests/fixtures/ubuntu-18.04/route.out","tests/fixtures/ubuntu-18.04/uname-a.out","tests/fixtures/ubuntu-18.04/uptime.out","tests/fixtures/ubuntu-18.04/w.out","tests/test_df.py","tests/test_env.py","tests/test_free.py","tests/test_history.py","tests/test_ifconfig.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_ls.py","tests/test_lsblk.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py"]}},{"commit":"579bef079cdd7cfa298bc20e052b8eb75b586f5e","message":"move global output variable inside function","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/netstat.py"]}},{"commit":"0691cfcab3f5f91908e06ec906d57e548d4e7a1f","message":"changelog fix","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["changelog.txt"]}},{"commit":"db29c7c186601fd4596d3eb121b37100601af907","message":"documentation fixes","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","jc/parsers/netstat.py"]}},{"commit":"fb1e03637514b5ab02fd4c5df1db8b3cbacdd531","message":"formatting","stats":{"files_changed":1,"insertions":14,"deletions":10,"files":["README.md"]}},{"commit":"c3eaf59836538f4ab4c745e87b70115b4a4c5421","message":"Merge pull request #5 from kellyjonbrazil/dev"},{"commit":"c9849ce0db1f864d33739f8f6f942bf5672bc3b7","message":"changelog update","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]}},{"commit":"d3c89a3092973a7a8765463fff41c2469ed675cd","message":"check for enough info to parse","stats":{"files_changed":1,"insertions":11,"deletions":9,"files":["jc/parsers/uname.py"]}},{"commit":"a3d43f27f7bb0835b3593b7c303fe0ee8d896a58","message":"fix odd uptime text parsing","stats":{"files_changed":1,"insertions":12,"deletions":10,"files":["jc/parsers/uptime.py"]}},{"commit":"f4d9c1b699fa30bd297a40ccf3d5f6e7ba3d4253","message":"fix uptime for minutes and hours long uptime","stats":{"files_changed":1,"insertions":8,"deletions":4,"files":["jc/parsers/uptime.py"]}},{"commit":"de647bba4aff84f7b513cf7f6fec8d3933b0d9da","message":"documentation update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"d7913070315e5e0c89006942250aaf37e9e3e18e","message":"documentation update","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]}},{"commit":"1a4fc204e21f1555ae67c3147322c8d73fab630b","message":"Documentation update","stats":{"files_changed":2,"insertions":10,"deletions":1,"files":["README.md","changelog.txt"]}},{"commit":"0328e14c7c65a330093faa52fe48dae6cb173e42","message":"handle ctrl-c gracefully","stats":{"files_changed":1,"insertions":7,"deletions":0,"files":["jc/jc.py"]}},{"commit":"1acc4d6c29d136e286f82d607c4a3a59e2680b68","message":"fix uptime parsing for short uptimes","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/uptime.py"]}},{"commit":"27245590ce28be933f1a55db4ee6b24783f4b63d","message":"remove integers","stats":{"files_changed":1,"insertions":12,"deletions":20,"files":["jc/parsers/jobs.py"]}},{"commit":"7ca2a4bdb939293e8d7364f8901ad1fd6d3ee808","message":"remove integer values","stats":{"files_changed":5,"insertions":182,"deletions":201,"files":["README.md","changelog.txt","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/netstat.py"]}},{"commit":"5f1ec6734874651bee595961edf1fafaf5acf001","message":"lower() headers","stats":{"files_changed":10,"insertions":473,"deletions":456,"files":["README.md","jc/parsers/df.py","jc/parsers/history.py","jc/parsers/iptables.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/w.py"]}},{"commit":"7e44c4278a75c7223d99200023160e8d77fde54d","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/jobs.py"]}},{"commit":"eda726c4a3864008e2f700374b679ae68a965ef8","message":"documentation update","stats":{"files_changed":1,"insertions":80,"deletions":1,"files":["jc/parsers/ifconfig.py"]}},{"commit":"5f8e70d73054f1a106c0e75eee621bc0cefd1c6b","message":"convert headers to lowercase","stats":{"files_changed":9,"insertions":20,"deletions":22,"files":["changelog.txt","jc/parsers/df.py","jc/parsers/free.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/w.py"]}},{"commit":"25b90546c652cafa9409f02bae1654cb523add88","message":"change 'Use%' to 'Use_percent'","stats":{"files_changed":3,"insertions":14,"deletions":9,"files":["README.md","changelog.txt","jc/parsers/df.py"]}},{"commit":"75c084153845757e22c149ea4ae7909d42ec7118","message":"changelog update","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]}},{"commit":"5b532b9b71fdb9de575da0af9b7989ac537877c4","message":"minor cleanup","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/parsers/lsof.py"]}},{"commit":"8c7b3193d131411f8766508fc27b2a6589bba1f2","message":"documentation change","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/history.py"]}},{"commit":"0897c96ef3c180a1707e8f56c545f59b3a4e0672","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/lsof.py"]}},{"commit":"57d0ab2ed7f444862546da17cbbe8f8ce67bca8c","message":"change LOGIN@ to LOGIN_AT","stats":{"files_changed":2,"insertions":9,"deletions":4,"files":["README.md","jc/parsers/w.py"]}},{"commit":"a07d9a0e4bb76d369b4a9bf0d77c7590dc3c2861","message":"change SIZE/OFF key to SIZE_OFF","stats":{"files_changed":2,"insertions":22,"deletions":13,"files":["README.md","jc/parsers/lsof.py"]}},{"commit":"b3996cb4dfed908d71b292dc0b0136c6675351e6","message":"change MAJ:MIN key to MAJ_MIN","stats":{"files_changed":2,"insertions":14,"deletions":10,"files":["README.md","jc/parsers/lsblk.py"]}},{"commit":"4fa88c1ba38b34f9750625458c465d66f6531bc3","message":"clear out non-ascii chars from data","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/history.py"]}},{"commit":"c8c5564b29588094721949b96bff1e623437835d","message":"change buff/cache key to buff_cache","stats":{"files_changed":2,"insertions":6,"deletions":3,"files":["README.md","jc/parsers/free.py"]}},{"commit":"6d047486d9f577bc04d79af839f5eef9657a9d43","message":"doc fix","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"42bdc058141c4a3ac6f2c8211f9c990590b1b5cf","message":"changelog fix","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]}},{"commit":"85bfb688862e78d5879df6973b88ba8023fa6086","message":"history parser fixes","stats":{"files_changed":2,"insertions":15,"deletions":10,"files":["README.md","jc/parsers/history.py"]}},{"commit":"08ec21556b553cd7e64932d68e01ba8ff3b0f210","message":"formatting","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/w.py"]}},{"commit":"320929bf2595026d32b80b80c3e4878db9cf083f","message":"documentation update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/env.py"]}},{"commit":"41cd489c34502c42602bf64086670ba3b2b8e14b","message":"add history and uptime parsers","stats":{"files_changed":5,"insertions":126,"deletions":0,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/history.py","jc/parsers/uptime.py"]}},{"commit":"f101d881a16e662e883818749d48e96858fba853","message":"add w parser","stats":{"files_changed":4,"insertions":78,"deletions":3,"files":["README.md","jc/jc.py","jc/parsers/w.py","setup.py"]}},{"commit":"fa7466022bb8947c1bbf9f7b01aa4d92300a8992","message":"fix env parser","stats":{"files_changed":3,"insertions":28,"deletions":56,"files":["README.md","changelog.txt","jc/parsers/env.py"]}},{"commit":"ea0cf0acf22585fbf8828841cf50155636eae82f","message":"documentation update","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/lsof.py"]}},{"commit":"e7921b65f5a250c10b08f78939f74968047af430","message":"Merge pull request #4 from kellyjonbrazil/dev"},{"commit":"2cc1b1bd5451f31d71b0e2236bdee0ce2b25b5d7","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]}},{"commit":"58ae976db0165730a75dd7450c698d2727a354ca","message":"documentation update","stats":{"files_changed":3,"insertions":113,"deletions":4,"files":["README.md","jc/parsers/lsmod.py","setup.py"]}},{"commit":"66772392ae78ef394e22070b127416b1d5b01332","message":"add lsmod parser","stats":{"files_changed":3,"insertions":32,"deletions":0,"files":["changelog.txt","jc/jc.py","jc/parsers/lsmod.py"]}},{"commit":"29c47c03a64f9c6b0f44d34be5449396654849b5","message":"documentation update","stats":{"files_changed":3,"insertions":134,"deletions":2,"files":["README.md","changelog.txt","jc/parsers/lsof.py"]}},{"commit":"91eb9a4d13e9254bd5bbde931196904c1947a28e","message":"use None instead of --","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsof.py"]}},{"commit":"a1a3de32ec14d6ef433e334b9694856698c26d41","message":"add lsof parser","stats":{"files_changed":2,"insertions":59,"deletions":0,"files":["jc/jc.py","jc/parsers/lsof.py"]}},{"commit":"9c47fd05bf716c2e18ebf4da41b1a46b972b2518","message":"doco fix","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/jobs.py"]}},{"commit":"649c0aa7c157f87691cc8eeac64c747e81f63594","message":"add documentation","stats":{"files_changed":2,"insertions":76,"deletions":1,"files":["README.md","jc/parsers/jobs.py"]}},{"commit":"3db758764e50666e5ae40de8d89180de2ef5bc28","message":"add jobs parser","stats":{"files_changed":3,"insertions":83,"deletions":0,"files":["changelog.txt","jc/jc.py","jc/parsers/jobs.py"]}},{"commit":"802f1510eb6d621f9c760f28b83f16a4781b8d93","message":"tighten if statements","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"]}},{"commit":"56901788dee154890e70269ad48d4b22bb8c5437","message":"stop blocking when no pipe and enhance help text","stats":{"files_changed":1,"insertions":30,"deletions":19,"files":["jc/jc.py"]}},{"commit":"679ae6d5dc7af26240dc00d8bc6499950f81d457","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"b15c8c352a87a9b3b1dece28af0287ef71ca02d0","message":"simplify state variables","stats":{"files_changed":1,"insertions":14,"deletions":16,"files":["jc/parsers/iptables.py"]}},{"commit":"393e8bc56041a4be01b6c0b2f98895aa330afd04","message":"Merge pull request #3 from kellyjonbrazil/dev"},{"commit":"976fd7d9bd49190a8b28ea5acf5af8979cdec537","message":"readme update","stats":{"files_changed":1,"insertions":27,"deletions":28,"files":["README.md"]}},{"commit":"d8337870cad042cdcc6a4ff3c61f756c3430fa96","message":"update documentation","stats":{"files_changed":1,"insertions":27,"deletions":28,"files":["jc/parsers/df.py"]}},{"commit":"39a8aec77f5134b5b958e3f679910a1c3512e13a","message":"v0.8.1 build","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/parsers/ls.py","setup.py"]}},{"commit":"306d539b6bbfb272c7b955e4847adc3a6b4afa5f","message":"readme update","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]}},{"commit":"f3087b8a8ede88834285bb5d0655fc96341c174c","message":"update readme and formatting","stats":{"files_changed":3,"insertions":635,"deletions":1,"files":["README.md","changelog.txt","jc/parsers/iptables.py"]}},{"commit":"414c2ecef88af2d2c098e6acfb507a5fd7bb8eda","message":"fix iptables parser","stats":{"files_changed":1,"insertions":6,"deletions":10,"files":["jc/parsers/iptables.py"]}},{"commit":"776ef2d1be81180b8b295fbc587446a326f2f7a6","message":"add iptables parser","stats":{"files_changed":2,"insertions":61,"deletions":0,"files":["jc/jc.py","jc/parsers/iptables.py"]}},{"commit":"9ac57469967443b195be09d580beaa76ce0e1095","message":"add uname parser","stats":{"files_changed":4,"insertions":64,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/uname.py"]}},{"commit":"a3e55d97c0fd4397b42e9146afb0ba9558274fdb","message":"add mount parser","stats":{"files_changed":4,"insertions":127,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/mount.py"]}},{"commit":"b15227e7ba5377e5fb6799d1b9e4ed5a11c6d92f","message":"add lsblk parser","stats":{"files_changed":4,"insertions":125,"deletions":0,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/lsblk.py"]}},{"commit":"ec3d1f84ceccb492b4c968938714fafa2e6a6321","message":"fix free parser","stats":{"files_changed":1,"insertions":24,"deletions":2,"files":["jc/parsers/free.py"]}},{"commit":"753d5fd9fe5a8e4b67b1a0ec018a9f811e27f8bf","message":"readme update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"73a0d70c9294ad392792e690a7bfbcc4f51b0a5b","message":"readme update","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]}},{"commit":"c2c189f3e6e900e5f3d35df9a9b9d033448baff6","message":"readme update","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["README.md"]}},{"commit":"36bc55a3109278d663b675a09829200f5474c3d8","message":"fix df","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["README.md"]}},{"commit":"a023001cd350e320ce30f47af214ed7a9bb43185","message":"add df, env, and free parsers","stats":{"files_changed":6,"insertions":226,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/df.py","jc/parsers/env.py","jc/parsers/free.py"]}},{"commit":"e3750b49628794fd4d563013b1f3a7471c27ce68","message":"documentation enhancements","stats":{"files_changed":2,"insertions":83,"deletions":51,"files":["README.md","jc/__init__.py"]}},{"commit":"b5ea08e55bfd22c9da5ba73c124791012df119a0","message":"fix transport protocol","stats":{"files_changed":4,"insertions":20,"deletions":20,"files":["README.md","changelog.txt","jc/parsers/netstat.py","setup.py"]}},{"commit":"8e71b8e3522b9b1af4d869a0854223eb5c300b63","message":"fix jq example","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"4c8610c54ff4b643237d8f0e4c5781c277fc39f5","message":"fixed build","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["changelog.txt","setup.py"]}},{"commit":"c8f886dc8fcdc58f8471d68c3d583200d0ea2f90","message":"fix example","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"]}},{"commit":"4cfc2d22b3f9fd6f0cde8ad206edd7fe260b3071","message":"update changelog","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]}},{"commit":"59238c85408117748e78c5e87157381a828f3782","message":"Merge pull request #2 from kellyjonbrazil/dev"},{"commit":"30080c01659cf611666876b7b063b7b329822352","message":"reorder parsers","stats":{"files_changed":1,"insertions":35,"deletions":35,"files":["README.md"]}},{"commit":"fab80bb3b4a1897da29d818e98e9b80ce45443dd","message":"readme update","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["README.md","setup.py"]}},{"commit":"a9f2df805421754afb8e8adbcac7f2d3bd06c9ef","message":"move parsed_line var lower","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/netstat.py"]}},{"commit":"1d110be6cb25d169ae0dde6532cbcdf05d93d42f","message":"update doco","stats":{"files_changed":3,"insertions":13,"deletions":1,"files":["README.md","changelog.txt","setup.py"]}},{"commit":"be81b5e1ed93eb65e5dbed4f52905439cde86f62","message":"readme update","stats":{"files_changed":1,"insertions":112,"deletions":121,"files":["README.md"]}},{"commit":"5f88f7d8a071306be92cbfb65d6d62c5a68159f3","message":"netstat cleanup","stats":{"files_changed":1,"insertions":110,"deletions":137,"files":["jc/parsers/netstat.py"]}},{"commit":"e57c7cc8ef3102cc41dee4ea5fd33d40ba666491","message":"change output from dict to list","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"]}},{"commit":"b216627c1073ea645029e341b4d3376601e5468e","message":"flatten netstat output","stats":{"files_changed":1,"insertions":19,"deletions":116,"files":["jc/parsers/netstat.py"]}},{"commit":"6e925eab131024b5746d870cbd47e2791acf18bf","message":"clean up arg parsing","stats":{"files_changed":1,"insertions":27,"deletions":18,"files":["jc/jc.py"]}},{"commit":"d54d906c571b4683f01cab2eca63ae5f0725a87b","message":"update readme","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]}},{"commit":"0040febbf099ed8ab35f6ee343750fcf89f2e739","message":"Merge pull request #1 from kellyjonbrazil/dev"},{"commit":"e416c77bed1267254da972b0f95b7ff1d43fccef","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]}},{"commit":"9181d242aaed5219bb35fde01d672be88949cceb","message":"bump version","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"d6f94c53a4df84fb75554605477e49536a809dc2","message":"fix blank output case in ls","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"]}},{"commit":"a9294f32a00709737d0b82ff434a311e75ad0bed","message":"ls fixes","stats":{"files_changed":3,"insertions":39,"deletions":42,"files":["changelog.txt","jc/parsers/ls.py","setup.py"]}},{"commit":"4d93b38fe47329e3175025878e87f7c963061f98","message":"add route documentation","stats":{"files_changed":2,"insertions":90,"deletions":1,"files":["README.md","jc/parsers/route.py"]}},{"commit":"77b74c550795f96b808e48a9b0bfd1a8af9866f9","message":"add route parser","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]}},{"commit":"51a1d3e6f48cf7084267be4092f0dd3f778dcef3","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"2eba30422b44f648c7356a44cbff7416c6648f19","message":"skip first line","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"]}},{"commit":"43ed09ce5ba53261dfd7ef50a2e187cb524c416c","message":"add route parser","stats":{"files_changed":3,"insertions":25,"deletions":1,"files":["jc/jc.py","jc/parsers/route.py","setup.py"]}},{"commit":"367ab54f94bf7f456377ec9d20f8daf99dbdc1ed","message":"formatting","stats":{"files_changed":3,"insertions":99,"deletions":2,"files":["README.md","changelog.txt","jc/parsers/ps.py"]}},{"commit":"4f552e370e656cc1882a7dae231475a016f8aa14","message":"acknowledgment","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/ps.py"]}},{"commit":"7571139f7980f6e74c29d46971881e82ab0f04bc","message":"bump version","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"8ec1bec31711d2ef487da3e4a29a842d98d77626","message":"add ps parser","stats":{"files_changed":4,"insertions":29,"deletions":7,"files":["changelog.txt","jc/__init__.py","jc/jc.py","jc/parsers/ps.py"]}},{"commit":"c04895407f203aa0a3a080d5242faf8f6889ae41","message":"ubuntu fixes","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["changelog.txt","jc/parsers/netstat.py"]}},{"commit":"cec73d61310591e4890605f61dc5c1bef5808ec4","message":"linting","stats":{"files_changed":4,"insertions":24,"deletions":16,"files":["jc/jc.py","jc/parsers/ifconfig.py","jc/parsers/ls.py","jc/parsers/netstat.py"]}},{"commit":"756c2bc9acd60111281b76085a40778e51ca06cc","message":"add acknowledgments","stats":{"files_changed":1,"insertions":20,"deletions":3,"files":["README.md"]}},{"commit":"084048987c7afc6516f69e68d37d73b2402dc7f2","message":"changelog update","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]}},{"commit":"02d97394dd76a8782e6e7d3f8a85e1aed05e796b","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]}},{"commit":"177f948f9740e3e33449b04b9136a346c9a2c265","message":"version update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"c2b013150ec1f1b1ab7d416f1aa8a62165a5bb95","message":"add changelog","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["changelog.txt"]}},{"commit":"0bec67c29ce5d965271440da41a0c4b4c2a1f0fb","message":"double quotes to single quotes","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/netstat.py"]}},{"commit":"8073d15fe11546a17cacd81409e255bb8aecd602","message":"readme update","stats":{"files_changed":1,"insertions":12,"deletions":4,"files":["README.md"]}},{"commit":"3b74afc39e58f801e75b7105e521c1469d30f991","message":"upload script","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["pypi-upload.sh"]}},{"commit":"ed320cf0f4bb11cee1e69e9dc9176ba109df1b86","message":"change netstat pid field to integer","stats":{"files_changed":3,"insertions":22,"deletions":22,"files":["README.md","jc/parsers/netstat.py","setup.py"]}},{"commit":"021b6924e24e1cf0f971246244b174cd3181c0a6","message":"documentation updates","stats":{"files_changed":2,"insertions":254,"deletions":5,"files":["README.md","jc/parsers/netstat.py"]}},{"commit":"5fb21b077662f1cb172741945ba5036e5a280638","message":"remove debug print statements","stats":{"files_changed":1,"insertions":0,"deletions":8,"files":["jc/parsers/netstat.py"]}},{"commit":"7b8540ae2a60f2400fe672a022ee00d1415a3500","message":"netstat fixes","stats":{"files_changed":1,"insertions":19,"deletions":7,"files":["jc/parsers/netstat.py"]}},{"commit":"a5e039d4c2e07d52a0797833685c562ab285b49b","message":"netstat debugging","stats":{"files_changed":1,"insertions":17,"deletions":7,"files":["jc/parsers/netstat.py"]}},{"commit":"7071f60a302b7aefb8fb312699b0abec25548986","message":"netstat mvp","stats":{"files_changed":1,"insertions":66,"deletions":18,"files":["jc/parsers/netstat.py"]}},{"commit":"0de1dff0253eb46b7336103f62f888940406ccc0","message":"fix ands","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["jc/parsers/netstat.py"]}},{"commit":"b3c52eb1ccf82e899dda62c332c0b217d80eb4c7","message":"add netstat parser","stats":{"files_changed":2,"insertions":112,"deletions":40,"files":["jc/parsers/ifconfig.py","jc/parsers/netstat.py"]}},{"commit":"366c5dbc010869bdb1d3b9d852e10510bd5c266f","message":"fix help message","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/jc.py"]}},{"commit":"a3ee02514b5fbd43a38ddf515a4aad49bb4e161a","message":"fix imports and module names","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/jc.py"]}},{"commit":"46ad1269cb58dc6f064d17eb0b04da62d8fd5fce","message":"packaging fixes","stats":{"files_changed":2,"insertions":4,"deletions":3,"files":["jc/jc.py","setup.py"]}},{"commit":"7234afe568818678585ac423649a0ccce0f45d68","message":"entrypoint fix","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"caf480c63aacb518805d48fba0fd454959d11023","message":"module fix","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"62851b48d5e5cd673e630a28996e1c24cc45aa58","message":"fix modules","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/jc.py","setup.py"]}},{"commit":"46d6da92f0e196e150ab9dd44b1ba290c950905b","message":"fix entry_points","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["jc/{jc => jc.py}","setup.py"]}},{"commit":"e572b2edfa993c5049ef3caeda7a8e4797f0c751","message":"use entry_points instead of scripts","stats":{"files_changed":2,"insertions":37,"deletions":29,"files":["jc/jc","setup.py"]}},{"commit":"72c69e7de59029d623c9819dda6aa8cae91bc419","message":"fix package paths","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/jc"]}},{"commit":"4d1565071e5cf7c38e026e08db8f4d2e79969691","message":"rename jc.py to jc","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["jc/{jc.py => jc}","setup.py"]}},{"commit":"3652e51693d7ba829f4699fd80de20856941d82f","message":"fix requirements","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]}},{"commit":"49ce9f13e817266659400a8c19f5b078a48589df","message":"setup updates","stats":{"files_changed":3,"insertions":17,"deletions":20,"files":["jc/jc.py","jc/parsers/__init__.py","setup.py"]}},{"commit":"e83170b7ec7ed2123bfde69be263b6034c7afa53","message":"readme update","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["README.md"]}},{"commit":"ffb6eb754a87baad5fb0558e30a5bca1a9b9e0a8","message":"setup fixes","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/parsers/__init__.py","setup.py"]}},{"commit":"2597a18d95d01109d2250487b7550a501edaf77b","message":"readme update","stats":{"files_changed":1,"insertions":82,"deletions":0,"files":["README.md"]}},{"commit":"3e576250b1bfe1c62c556f2fa0425103b0ede1f9","message":"First commit","stats":{"files_changed":11,"insertions":429,"deletions":0,"files":[".gitignore","LICENSE.md","README.md","build-package.sh","jc/__init__.py","jc/jc.py","jc/parsers/__init__.py","jc/parsers/ifconfig.py","jc/parsers/ls.py","jc/parsers/netstat.py","setup.py"]}}] +[{"commit":"096fffdb79807d34b99985b38df0a3df7f6a86c7","message":"use stat examples","stats":{"files_changed":2,"insertions":120,"deletions":36,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":78},{"name":"jc/parsers/git_log.py","lines_changed":78}]}},{"commit":"728d882ed007b3c8b785018874a0eb06e1143b66","message":"add timestamp docs and examples","stats":{"files_changed":2,"insertions":90,"deletions":12,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":51},{"name":"jc/parsers/git_log.py","lines_changed":51}]}},{"commit":"b53e42aca623181aa9bc72194e6eeef1e9a3a237","message":"add calculated timestamp","stats":{"files_changed":5,"insertions":29,"deletions":6,"files":["docs/parsers/git_log.md","docs/utils.md","jc/parsers/git_log.py","jc/utils.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":8},{"name":"docs/utils.md","lines_changed":4},{"name":"jc/parsers/git_log.py","lines_changed":14},{"name":"jc/utils.py","lines_changed":7},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"477329ce5b8f5c2a8e4384ba3f59289fc18c957d","message":"add linefeed to version text","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]}},{"commit":"283dc4efd55030188f17c7e1dfbc5315103494b7","message":"add python interpreter version and path to -v and -a output","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["CHANGELOG","jc/cli.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/cli.py","lines_changed":7}]}},{"commit":"d490bbcaa0291a691b95fa5b61807eebb0b088eb","message":"normalize add/update","stats":{"files_changed":1,"insertions":26,"deletions":26,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":52}]}},{"commit":"f49ddf8e5c5009702155fc62d83c63e3c08c594d","message":"doc update","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":4},{"name":"jc/parsers/git_log.py","lines_changed":4}]}},{"commit":"e1e341652b51b823844e76ef7e68f9373a323435","message":"doc update","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]}},{"commit":"ecda667549137bed5622cca69f2022e7a75ea833","message":"process integers","stats":{"files_changed":2,"insertions":12,"deletions":8,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":2},{"name":"jc/parsers/git_log.py","lines_changed":18}]}},{"commit":"a0d96a188a9f875b2d59625aa97d4f80bba290f2","message":"doc update","stats":{"files_changed":2,"insertions":5,"deletions":1,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"jc/parsers/yaml.py","lines_changed":2}]}},{"commit":"6c0f0cddfe4dd2d5169f7c55416c6725912557f6","message":"fix for datetime objects in yaml files","stats":{"files_changed":2,"insertions":14,"deletions":1,"files":["jc/parsers/yaml.py","tests/test_yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":7},{"name":"tests/test_yaml.py","lines_changed":8}]}},{"commit":"c7173ecd89742c8cf8a7bc4a8021baac5c3cd483","message":"fix mypy issues","stats":{"files_changed":1,"insertions":8,"deletions":6,"files":["jc/parsers/git_log.py"],"file_stats":[{"name":"jc/parsers/git_log.py","lines_changed":14}]}},{"commit":"e98240c905394e3ebd6a45fa31b6d432c150afc4","message":"extend instead of append list","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/git_log.py"],"file_stats":[{"name":"jc/parsers/git_log.py","lines_changed":8}]}},{"commit":"6cb7e25974b11afe57d7d0e8550b3b1a56b14c67","message":"add docs","stats":{"files_changed":3,"insertions":93,"deletions":1,"files":["README.md","docs/parsers/git_log.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/git_log.md","lines_changed":86},{"name":"man/jc.1","lines_changed":7}]}},{"commit":"c37980c05c7fbd4f811ce5fcfcfddaf5f3ab5414","message":"add stat support","stats":{"files_changed":1,"insertions":41,"deletions":7,"files":["jc/parsers/git_log.py"],"file_stats":[{"name":"jc/parsers/git_log.py","lines_changed":48}]}},{"commit":"b5943bd39d776fc4c3b3dea03c0f3d4b6f4bb260","message":"initial docstring","stats":{"files_changed":1,"insertions":23,"deletions":10,"files":["jc/parsers/git_log.py"],"file_stats":[{"name":"jc/parsers/git_log.py","lines_changed":33}]}},{"commit":"49a3a7db3b2b0b292489a41691c9dcbce816cfed","message":"initial git-log parser","stats":{"files_changed":2,"insertions":175,"deletions":0,"files":["jc/lib.py","jc/parsers/git_log.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/git_log.py","lines_changed":174}]}},{"commit":"0c55240e9da30ac4293cc324f1094de2abd3da91","message":"move test templates to fix test failures on some systems","stats":{"files_changed":3,"insertions":1,"deletions":0,"files":["CHANGELOG","tests/{ => templates}/_test_foo.py","tests/{ => templates}/_test_foo_s.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"tests/{ => templates}/_test_foo.py","lines_changed":0},{"name":"tests/{ => templates}/_test_foo_s.py","lines_changed":0}]}},{"commit":"f91988aed5499d25acf7a7e87b2b0d0cd37b62af","message":"iterator -> iterable","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/lib.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":2}]}},{"commit":"3c3ad9fc6adf865b3814a1f03814d0bc17d1c6bd","message":"iterator -> iterable in doc","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]}},{"commit":"291ab79e22a59cb31814e7a5af9dbc9f2ec863e2","message":"fix arch linux command","stats":{"files_changed":3,"insertions":24,"deletions":24,"files":["README.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":24},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":22}]}},{"commit":"e6d5892c146762cd41a966adadb77db333d98ace","message":"Merge pull request #226 from kellyjonbrazil/master"},{"commit":"dcca7a57d558721a61fbba44f07b1d53116827e1","message":"Merge pull request #225 from adrianteri/patch-1"},{"commit":"4ee8a69337b24e199983fe657643abcb0a56a8e6","message":"Update README","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]}},{"commit":"c0414e7db7f5d785b72ad616517f2ec63af151a2","message":"clean up background tasks","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":8}]}},{"commit":"a419175fe6dffe9c5fd20cfbd82ee552bc82a993","message":"enhance parallelization","stats":{"files_changed":2,"insertions":34,"deletions":17,"files":["docgen.sh","updatedocs.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":30},{"name":"updatedocs.sh","lines_changed":21}]}},{"commit":"cd6dead034f3c72aebd22afeb2aea6591ae6d94d","message":"man page update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]}},{"commit":"45342ea9fea29947d8d90260c7665ffbca612cce","message":"parallelize doc gneration","stats":{"files_changed":2,"insertions":16,"deletions":9,"files":["docgen.sh","updatedocs.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":16},{"name":"updatedocs.sh","lines_changed":9}]}},{"commit":"585bf0e159c7839869cf3e458938dcc5fa2ceb81","message":"xrandr update","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]}},{"commit":"3a860b9babe93d455f68ef21436edf7470d375af","message":"add rotation field","stats":{"files_changed":2,"insertions":7,"deletions":5,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":4},{"name":"jc/parsers/xrandr.py","lines_changed":8}]}},{"commit":"269180df77f9ff953b07222e8ae790c7e7a8298e","message":"Merge pull request #223 from anekos/fix/support-rotated-devices"},{"commit":"a1afed8d95e33fbbc618c7b5778a9faeea2f628f","message":"doc update","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["docs/parsers/xrandr.md"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":4}]}},{"commit":"e39f150a216e4e184444dfc88a63e0f303e51631","message":"Support rotated devices","stats":{"files_changed":3,"insertions":9,"deletions":4,"files":["jc/parsers/xrandr.py","tests/fixtures/generic/xrandr_simple.json","tests/test_xrandr.py"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":4},{"name":"tests/fixtures/generic/xrandr_simple.json","lines_changed":1},{"name":"tests/test_xrandr.py","lines_changed":8}]}},{"commit":"e85f11c6fcad5461bae612dd5a945c20d300e59a","message":"doc formatting","stats":{"files_changed":4,"insertions":12,"deletions":12,"files":["docs/parsers/ini.md","docs/parsers/kv.md","jc/parsers/ini.py","jc/parsers/kv.py"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":6},{"name":"docs/parsers/kv.md","lines_changed":6},{"name":"jc/parsers/ini.py","lines_changed":6},{"name":"jc/parsers/kv.py","lines_changed":6}]}},{"commit":"49a9d7b07e89696f2e022655d7256b7d6ad4bf7b","message":"doc update","stats":{"files_changed":3,"insertions":12,"deletions":8,"files":["docs/parsers/ini.md","docs/parsers/kv.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":8},{"name":"docs/parsers/kv.md","lines_changed":10},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"a2ef9c429e4bb9f70d033511dce77ccdb9013971","message":"allow duplicate keys","stats":{"files_changed":4,"insertions":38,"deletions":8,"files":["jc/parsers/ini.py","jc/parsers/kv.py","tests/test_ini.py","tests/test_kv.py"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":12},{"name":"jc/parsers/kv.py","lines_changed":10},{"name":"tests/test_ini.py","lines_changed":12},{"name":"tests/test_kv.py","lines_changed":12}]}},{"commit":"d5e9074f1c8facb3f15b8c41a008917178626978","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/lib.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/lib.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"774699f085d97f22ae2dab0cf64d72aa1e1709f7","message":"Merge pull request #220 from kellyjonbrazil/master"},{"commit":"7138eef3d137bc64286d4af453d8d4e7b3f4408d","message":"fix newline chars in doc","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"docs/parsers/asciitable_m.md","lines_changed":6},{"name":"jc/parsers/asciitable_m.py","lines_changed":6}]}},{"commit":"fad5e544aa9e57d31473190e196f59c616901207","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":2},{"name":"jc/parsers/asciitable.py","lines_changed":2}]}},{"commit":"64757e2cf55448bccfbbd60d31930ab3f59af21b","message":"doc formatting","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":12},{"name":"jc/parsers/asciitable.py","lines_changed":12}]}},{"commit":"e05be3f08beae1b600fc55a3a7b4e28163e15bc0","message":"Merge pull request #213 from kellyjonbrazil/dev"},{"commit":"789f0735dfd63e728b8716d97cf0c6045ede5011","message":"doc update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]}},{"commit":"34bc7753174be28d6c1a00dadc662bc374e554c1","message":"doc update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]}},{"commit":"38de059a1bc285c8681086d9fb43d0d23ac01d49","message":"doc update","stats":{"files_changed":3,"insertions":9,"deletions":3,"files":["docs/parsers/asciitable.md","docs/parsers/universal.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":6},{"name":"docs/parsers/universal.md","lines_changed":4},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"304ae6268f4dff6e6f901628e7ff89db1d6e0767","message":"minor optimization by changing the expression order","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":12}]}},{"commit":"978caf45221188a29c0e67147804f20f317c066d","message":"minor optimization by reordering expressions","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["jc/parsers/asciitable.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":26}]}},{"commit":"17df5bfcfc25f226a2976aa7ab8a80e4aaa915c3","message":"cache _is_separator function","stats":{"files_changed":2,"insertions":12,"deletions":2,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":10},{"name":"jc/parsers/asciitable_m.py","lines_changed":4}]}},{"commit":"5e6a5068cff71b3b30525d0a12868bdf6551456c","message":"allow iterables for simple table parser","stats":{"files_changed":1,"insertions":6,"deletions":2,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":8}]}},{"commit":"619de68a61be0117e635032347dde417d77c748c","message":"formatting","stats":{"files_changed":2,"insertions":8,"deletions":9,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":7},{"name":"jc/parsers/asciitable_m.py","lines_changed":10}]}},{"commit":"6748c3cc91f90bddea3d07b8b30a049ee55eaf35","message":"remove lines from corner detection and add rounded corners","stats":{"files_changed":2,"insertions":65,"deletions":61,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":52},{"name":"jc/parsers/asciitable_m.py","lines_changed":74}]}},{"commit":"0a462978b731770d1290187a502706c2322f5f91","message":"fix for special characters in headers","stats":{"files_changed":4,"insertions":101,"deletions":3,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py","tests/test_asciitable.py","tests/test_asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":25},{"name":"jc/parsers/asciitable_m.py","lines_changed":8},{"name":"tests/test_asciitable.py","lines_changed":43},{"name":"tests/test_asciitable_m.py","lines_changed":28}]}},{"commit":"e66a82ff49b40a674f9ef373a12d59fc71bfa730","message":"doc update","stats":{"files_changed":3,"insertions":6,"deletions":5,"files":["CHANGELOG","jc/parsers/asciitable_m.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":5},{"name":"jc/parsers/asciitable_m.py","lines_changed":4},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"f3aa797d96c8e2cef2124dbb2f49d1fadaee3fa2","message":"add more pretty table separators","stats":{"files_changed":2,"insertions":69,"deletions":9,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":43},{"name":"jc/parsers/asciitable_m.py","lines_changed":35}]}},{"commit":"e5b478218c4ba3781afd085056dba888c3f6ae02","message":"add quiet=True to parse tests","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_xrandr.py"],"file_stats":[{"name":"tests/test_xrandr.py","lines_changed":6}]}},{"commit":"35e0e9c32afbc5450c661bcb3a23904d135358ad","message":"remove print statement","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":1}]}},{"commit":"17c3c2f029a0a47eb02d681567619d471b99949c","message":"add bold bar seperator and ANSI code tests","stats":{"files_changed":4,"insertions":58,"deletions":2,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py","tests/test_asciitable.py","tests/test_asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":3},{"name":"jc/parsers/asciitable_m.py","lines_changed":2},{"name":"tests/test_asciitable.py","lines_changed":31},{"name":"tests/test_asciitable_m.py","lines_changed":24}]}},{"commit":"cf83e6398b3314b233581eb313510872177de20a","message":"add fancy separators","stats":{"files_changed":2,"insertions":7,"deletions":0,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":4},{"name":"jc/parsers/asciitable_m.py","lines_changed":3}]}},{"commit":"94e061b881e2ed28d2b462ad038e5ba77182b6c4","message":"add asciitable parser tests","stats":{"files_changed":1,"insertions":275,"deletions":0,"files":["tests/test_asciitable.py"],"file_stats":[{"name":"tests/test_asciitable.py","lines_changed":275}]}},{"commit":"720480e39ce3cc2079d7f4f5bcff2725081fec34","message":"doc update","stats":{"files_changed":4,"insertions":10,"deletions":2,"files":["docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":3},{"name":"docs/parsers/asciitable_m.md","lines_changed":3},{"name":"jc/parsers/asciitable.py","lines_changed":3},{"name":"jc/parsers/asciitable_m.py","lines_changed":3}]}},{"commit":"82a63fe15922456853aa4597aa10a5a02b20bdef","message":"doc update","stats":{"files_changed":2,"insertions":6,"deletions":8,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":7},{"name":"jc/parsers/asciitable.py","lines_changed":7}]}},{"commit":"9c1ec9940e68ce9848da20e81b8c0b7e35a215df","message":"doc update","stats":{"files_changed":4,"insertions":82,"deletions":14,"files":["docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":44},{"name":"docs/parsers/asciitable_m.md","lines_changed":4},{"name":"jc/parsers/asciitable.py","lines_changed":44},{"name":"jc/parsers/asciitable_m.py","lines_changed":4}]}},{"commit":"f23f19da453a0f7bcf70e417a10f87e27571aa43","message":"doc update","stats":{"files_changed":5,"insertions":122,"deletions":9,"files":["README.md","docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/asciitable.md","lines_changed":97},{"name":"docs/parsers/asciitable_m.md","lines_changed":4},{"name":"jc/parsers/asciitable_m.py","lines_changed":24},{"name":"man/jc.1","lines_changed":5}]}},{"commit":"aea2e1b0a9c6bb2a02a6e73889bb04e8f4f22588","message":"fix tests so blank strings are now None","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["tests/test_asciitable_m.py"],"file_stats":[{"name":"tests/test_asciitable_m.py","lines_changed":48}]}},{"commit":"7d95d679bf4093ea77f30a1be55384b6dbf08341","message":"add asciitable parser","stats":{"files_changed":2,"insertions":212,"deletions":1,"files":["jc/lib.py","jc/parsers/asciitable.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2},{"name":"jc/parsers/asciitable.py","lines_changed":211}]}},{"commit":"b3b140066b74ee31dd1c460502caf2f26df321b6","message":"doc update","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"docs/parsers/asciitable_m.md","lines_changed":4},{"name":"jc/parsers/asciitable_m.py","lines_changed":4}]}},{"commit":"b204c423c1b947c17cb251a5dd3c444cd71dd2c0","message":"doc update","stats":{"files_changed":4,"insertions":193,"deletions":15,"files":["README.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/asciitable_m.md","lines_changed":122},{"name":"jc/parsers/asciitable_m.py","lines_changed":78},{"name":"man/jc.1","lines_changed":7}]}},{"commit":"d451c309bb0d8889dc09a698212bf01c2154a582","message":"change multiple or statements to any()","stats":{"files_changed":1,"insertions":11,"deletions":8,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":19}]}},{"commit":"01d53da68ed04b736934851137c59216ad02d8c8","message":"remove debug print","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":1}]}},{"commit":"53dd05e52c329a15c30a756a36a165ac59ef8a14","message":"fix rstrip and add tests","stats":{"files_changed":2,"insertions":29,"deletions":1,"files":["jc/parsers/asciitable_m.py","tests/test_asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":3},{"name":"tests/test_asciitable_m.py","lines_changed":27}]}},{"commit":"ab564f5be8282f1c7ee2d602bcef398fdfd4570f","message":"add tests","stats":{"files_changed":2,"insertions":237,"deletions":1,"files":["jc/parsers/asciitable_m.py","tests/test_asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":16},{"name":"tests/test_asciitable_m.py","lines_changed":222}]}},{"commit":"00c39450f9878527b60545ad61c04cfb98f418dc","message":"enhance type annotation","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":2}]}},{"commit":"f611d08b50219f4e573c1d1f0beae27583e76432","message":"formatting","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":5}]}},{"commit":"90e79b7df3a4d5b37835fdf1c2debc1bad0a40b9","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":2}]}},{"commit":"4eb2d725d5fe6f2cc7935c7dc891912cf7b8e940","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":2}]}},{"commit":"51ae5ebcac7263ef2571c11975b275eff352bbc5","message":"new streamlined parser","stats":{"files_changed":1,"insertions":148,"deletions":175,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":323}]}},{"commit":"9ecbdb09162da4d563799aa93d422db85b2c324b","message":"use generator instead of iterable in function return annotation","stats":{"files_changed":8,"insertions":35,"deletions":30,"files":["docs/parsers/mpstat_s.md","docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","docs/parsers/universal.md","jc/parsers/foo_s.py","jc/parsers/mpstat_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"docs/parsers/mpstat_s.md","lines_changed":10},{"name":"docs/parsers/pidstat_s.md","lines_changed":10},{"name":"docs/parsers/rsync_s.md","lines_changed":10},{"name":"docs/parsers/universal.md","lines_changed":19},{"name":"jc/parsers/foo_s.py","lines_changed":4},{"name":"jc/parsers/mpstat_s.py","lines_changed":4},{"name":"jc/parsers/pidstat_s.py","lines_changed":4},{"name":"jc/parsers/rsync_s.py","lines_changed":4}]}},{"commit":"b3a2886fd0af0cd06890f37f1edfc6890bb83e6c","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["docs/lib.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":3}]}},{"commit":"ceacec0f462bd7c2d9e92ddb9029ccd71aef481c","message":"remove errant os sep import","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":1}]}},{"commit":"ff0f794b01395ed9b65fac75a6b07f0772d45a2d","message":"working","stats":{"files_changed":1,"insertions":32,"deletions":10,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":42}]}},{"commit":"70fafbf3f80f35c5db2c306978b2a488adad40bb","message":"remove asciitable so tests pass for now","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]}},{"commit":"5a248a8fc58952a5eab3d4aac025d7422ba82d08","message":"add multiline asciitable parser","stats":{"files_changed":1,"insertions":344,"deletions":0,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":344}]}},{"commit":"4a3a4e10df8a552a4db3510640695f02b166dc40","message":"add asciitable and asciitable-m parsers","stats":{"files_changed":1,"insertions":3,"deletions":4,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":7}]}},{"commit":"c27bd5ff39f21c6377e661d4d7de1200d2fdd72f","message":"pad lines in sparse_table_parse and use str.isspace()","stats":{"files_changed":1,"insertions":23,"deletions":16,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":39}]}},{"commit":"f804c9627fb71341429ca80aec2887e23e0277db","message":"copy input list so we don't mutate the caller's data","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":1}]}},{"commit":"3ab25d02f9dc248706aa1105e1766b2a84bc55a3","message":"use _parser_is_streaming from lib","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"9e80fd2b97b9bfe38fdaa6acdf2e8ed26d34b49d","message":"fallback if info and doc items don't exist","stats":{"files_changed":2,"insertions":15,"deletions":11,"files":["jc/cli.py","jc/lib.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":21},{"name":"jc/lib.py","lines_changed":5}]}},{"commit":"ff9527a098a94c996641fb3fe2f905c8ae5e3063","message":"import cleanup and use all_parser_info in parsers_text","stats":{"files_changed":1,"insertions":9,"deletions":13,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":22}]}},{"commit":"7dac2f8dc3baf619105e3c6ca4d3e45300b86287","message":"doc update","stats":{"files_changed":3,"insertions":23,"deletions":9,"files":["docs/lib.md","docs/readme.md","man/jc.1"],"file_stats":[{"name":"docs/lib.md","lines_changed":23},{"name":"docs/readme.md","lines_changed":7},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"32e4d55e86c3e7d94488ec69f13a4f6400c4cef3","message":"use parser_info for help_doc","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":10}]}},{"commit":"f9a9062147256d0949457cc7fde838f87202524d","message":"add documentation argument to parser_info and all_parser_info","stats":{"files_changed":3,"insertions":27,"deletions":10,"files":["CHANGELOG","jc/__init__.py","jc/lib.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/__init__.py","lines_changed":7},{"name":"jc/lib.py","lines_changed":29}]}},{"commit":"89e5919796f7da585285901dca461aae21336415","message":"add -A to second example","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/mpstat_s.md","jc/parsers/mpstat_s.py"],"file_stats":[{"name":"docs/parsers/mpstat_s.md","lines_changed":2},{"name":"jc/parsers/mpstat_s.py","lines_changed":2}]}},{"commit":"e5f5b2591d8ac3abeb9571688c7fb8de34d647f4","message":"changelog update","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]}},{"commit":"77c667eec045daff5cbd062fe9d6e83f237727e5","message":"ubuntu fixes","stats":{"files_changed":9,"insertions":67,"deletions":6,"files":["docs/parsers/mpstat.md","docs/parsers/mpstat_s.md","jc/parsers/mpstat.py","jc/parsers/mpstat_s.py","tests/fixtures/ubuntu-18.04/mpstat-A-streaming.json","tests/fixtures/ubuntu-18.04/mpstat-A.json","tests/fixtures/ubuntu-18.04/mpstat-A.out","tests/test_mpstat.py","tests/test_mpstat_s.py"],"file_stats":[{"name":"docs/parsers/mpstat.md","lines_changed":2},{"name":"docs/parsers/mpstat_s.md","lines_changed":2},{"name":"jc/parsers/mpstat.py","lines_changed":12},{"name":"jc/parsers/mpstat_s.py","lines_changed":12},{"name":"tests/fixtures/ubuntu-18.04/mpstat-A-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/mpstat-A.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/mpstat-A.out","lines_changed":19},{"name":"tests/test_mpstat.py","lines_changed":12},{"name":"tests/test_mpstat_s.py","lines_changed":12}]}},{"commit":"b257ce8c2fe6825fe435b4d04b4184091030db10","message":"add mpstat_s tests","stats":{"files_changed":4,"insertions":65,"deletions":0,"files":[".../centos-7.7/mpstat-A-2-5-streaming.json","tests/fixtures/centos-7.7/mpstat-A-streaming.json","tests/fixtures/centos-7.7/mpstat-streaming.json","tests/test_mpstat_s.py"],"file_stats":[{"name":".../centos-7.7/mpstat-A-2-5-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat-A-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat-streaming.json","lines_changed":1},{"name":"tests/test_mpstat_s.py","lines_changed":62}]}},{"commit":"c693c868cacbcd81f44fd383719723dd7a137c87","message":"add mpstat streaming parser","stats":{"files_changed":7,"insertions":352,"deletions":0,"files":["README.md","docs/parsers/mpstat.md","docs/parsers/mpstat_s.md","jc/lib.py","jc/parsers/mpstat.py","jc/parsers/mpstat_s.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/mpstat.md","lines_changed":2},{"name":"docs/parsers/mpstat_s.md","lines_changed":130},{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/mpstat.py","lines_changed":2},{"name":"jc/parsers/mpstat_s.py","lines_changed":211},{"name":"man/jc.1","lines_changed":5}]}},{"commit":"6f98b27a05d6e1f7571a97316b193f096521b959","message":"add mpstat tests","stats":{"files_changed":7,"insertions":168,"deletions":0,"files":["tests/fixtures/centos-7.7/mpstat-A-2-5.json","tests/fixtures/centos-7.7/mpstat-A-2-5.out","tests/fixtures/centos-7.7/mpstat-A.json","tests/fixtures/centos-7.7/mpstat-A.out","tests/fixtures/centos-7.7/mpstat.json","tests/fixtures/centos-7.7/mpstat.out","tests/test_mpstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/mpstat-A-2-5.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat-A-2-5.out","lines_changed":86},{"name":"tests/fixtures/centos-7.7/mpstat-A.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat-A.out","lines_changed":15},{"name":"tests/fixtures/centos-7.7/mpstat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat.out","lines_changed":5},{"name":"tests/test_mpstat.py","lines_changed":59}]}},{"commit":"d7efd25d88a8f489564ce48223845a16e4ab1cc7","message":"add mpstat to docs","stats":{"files_changed":4,"insertions":207,"deletions":1,"files":["EXAMPLES.md","README.md","docs/parsers/mpstat.md","man/jc.1"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":64},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/mpstat.md","lines_changed":136},{"name":"man/jc.1","lines_changed":7}]}},{"commit":"2cddb1f0bb497be0be071cdcb56bf49d2dafc920","message":"working mpstat","stats":{"files_changed":1,"insertions":94,"deletions":15,"files":["jc/parsers/mpstat.py"],"file_stats":[{"name":"jc/parsers/mpstat.py","lines_changed":109}]}},{"commit":"ae1c331595dd857d8ae7f8cf93daee1b26be2c3e","message":"initial working version","stats":{"files_changed":1,"insertions":30,"deletions":5,"files":["jc/parsers/mpstat.py"],"file_stats":[{"name":"jc/parsers/mpstat.py","lines_changed":35}]}},{"commit":"bc97052ed4ee3bf3f25127968139f2e89a659fe3","message":"initial add mpstat parser","stats":{"files_changed":3,"insertions":109,"deletions":0,"files":["CHANGELOG","jc/lib.py","jc/parsers/mpstat.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/mpstat.py","lines_changed":107}]}},{"commit":"6c3e0e2aa0e8cc375d9f7473930b18957d33f1aa","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]}},{"commit":"dd052e01469e9e3328f7326d3591365a8e7322eb","message":"add underscores to column examples","stats":{"files_changed":2,"insertions":26,"deletions":24,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":25},{"name":"jc/parsers/universal.py","lines_changed":25}]}},{"commit":"54e8f58145f6c4332fbd375d112259ea7abb2d72","message":"add table result examples","stats":{"files_changed":2,"insertions":28,"deletions":2,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":15},{"name":"jc/parsers/universal.py","lines_changed":15}]}},{"commit":"def7aa5764e69cd0cf2c5b70aa62c62023f76c9c","message":"formatting","stats":{"files_changed":2,"insertions":16,"deletions":16,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":16},{"name":"jc/parsers/universal.py","lines_changed":16}]}},{"commit":"6986c74f6dceca907ea2e469a332deeb093a122c","message":"remove direct parser module example from doc","stats":{"files_changed":169,"insertions":34,"deletions":837,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/pidstat.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/nmcli.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/pidstat.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/xrandr.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":5},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iostat.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jar_manifest.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/nmcli.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/pidstat.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/rsync.md","lines_changed":5},{"name":"docs/parsers/sfdisk.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/systeminfo.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"docs/parsers/ufw.md","lines_changed":5},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/universal.md","lines_changed":18},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/vmstat.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/xrandr.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5},{"name":"docs/parsers/zipinfo.md","lines_changed":5},{"name":"jc/parsers/acpi.py","lines_changed":5},{"name":"jc/parsers/airport.py","lines_changed":5},{"name":"jc/parsers/airport_s.py","lines_changed":5},{"name":"jc/parsers/arp.py","lines_changed":5},{"name":"jc/parsers/blkid.py","lines_changed":5},{"name":"jc/parsers/cksum.py","lines_changed":5},{"name":"jc/parsers/crontab.py","lines_changed":5},{"name":"jc/parsers/crontab_u.py","lines_changed":5},{"name":"jc/parsers/csv.py","lines_changed":5},{"name":"jc/parsers/date.py","lines_changed":5},{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":5},{"name":"jc/parsers/dir.py","lines_changed":5},{"name":"jc/parsers/dmidecode.py","lines_changed":5},{"name":"jc/parsers/dpkg_l.py","lines_changed":5},{"name":"jc/parsers/du.py","lines_changed":5},{"name":"jc/parsers/env.py","lines_changed":5},{"name":"jc/parsers/file.py","lines_changed":5},{"name":"jc/parsers/finger.py","lines_changed":5},{"name":"jc/parsers/foo.py","lines_changed":5},{"name":"jc/parsers/free.py","lines_changed":5},{"name":"jc/parsers/fstab.py","lines_changed":5},{"name":"jc/parsers/group.py","lines_changed":5},{"name":"jc/parsers/gshadow.py","lines_changed":5},{"name":"jc/parsers/hash.py","lines_changed":5},{"name":"jc/parsers/hashsum.py","lines_changed":5},{"name":"jc/parsers/hciconfig.py","lines_changed":5},{"name":"jc/parsers/history.py","lines_changed":5},{"name":"jc/parsers/hosts.py","lines_changed":5},{"name":"jc/parsers/id.py","lines_changed":5},{"name":"jc/parsers/ifconfig.py","lines_changed":5},{"name":"jc/parsers/ini.py","lines_changed":5},{"name":"jc/parsers/iostat.py","lines_changed":5},{"name":"jc/parsers/iptables.py","lines_changed":5},{"name":"jc/parsers/iw_scan.py","lines_changed":5},{"name":"jc/parsers/jar_manifest.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":5},{"name":"jc/parsers/kv.py","lines_changed":5},{"name":"jc/parsers/last.py","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":5},{"name":"jc/parsers/lsblk.py","lines_changed":5},{"name":"jc/parsers/lsmod.py","lines_changed":5},{"name":"jc/parsers/lsof.py","lines_changed":5},{"name":"jc/parsers/lsusb.py","lines_changed":5},{"name":"jc/parsers/mount.py","lines_changed":5},{"name":"jc/parsers/netstat.py","lines_changed":5},{"name":"jc/parsers/nmcli.py","lines_changed":5},{"name":"jc/parsers/ntpq.py","lines_changed":5},{"name":"jc/parsers/passwd.py","lines_changed":5},{"name":"jc/parsers/pidstat.py","lines_changed":5},{"name":"jc/parsers/ping.py","lines_changed":5},{"name":"jc/parsers/pip_list.py","lines_changed":5},{"name":"jc/parsers/pip_show.py","lines_changed":5},{"name":"jc/parsers/ps.py","lines_changed":5},{"name":"jc/parsers/route.py","lines_changed":5},{"name":"jc/parsers/rpm_qi.py","lines_changed":5},{"name":"jc/parsers/rsync.py","lines_changed":5},{"name":"jc/parsers/sfdisk.py","lines_changed":5},{"name":"jc/parsers/shadow.py","lines_changed":5},{"name":"jc/parsers/ss.py","lines_changed":5},{"name":"jc/parsers/stat.py","lines_changed":5},{"name":"jc/parsers/sysctl.py","lines_changed":5},{"name":"jc/parsers/systemctl.py","lines_changed":5},{"name":"jc/parsers/systemctl_lj.py","lines_changed":5},{"name":"jc/parsers/systemctl_ls.py","lines_changed":5},{"name":"jc/parsers/systemctl_luf.py","lines_changed":5},{"name":"jc/parsers/systeminfo.py","lines_changed":5},{"name":"jc/parsers/time.py","lines_changed":5},{"name":"jc/parsers/timedatectl.py","lines_changed":5},{"name":"jc/parsers/tracepath.py","lines_changed":5},{"name":"jc/parsers/traceroute.py","lines_changed":5},{"name":"jc/parsers/ufw.py","lines_changed":5},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":5},{"name":"jc/parsers/uname.py","lines_changed":5},{"name":"jc/parsers/universal.py","lines_changed":18},{"name":"jc/parsers/upower.py","lines_changed":5},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/vmstat.py","lines_changed":5},{"name":"jc/parsers/w.py","lines_changed":5},{"name":"jc/parsers/wc.py","lines_changed":5},{"name":"jc/parsers/who.py","lines_changed":5},{"name":"jc/parsers/xml.py","lines_changed":5},{"name":"jc/parsers/xrandr.py","lines_changed":5},{"name":"jc/parsers/yaml.py","lines_changed":5},{"name":"jc/parsers/zipinfo.py","lines_changed":5}]}},{"commit":"b784db404d0569a4c630eb124b37b0b1d0846453","message":"streaming doc formatting update","stats":{"files_changed":17,"insertions":87,"deletions":166,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/pidstat_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/pidstat_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":13},{"name":"docs/parsers/iostat_s.md","lines_changed":20},{"name":"docs/parsers/ls_s.md","lines_changed":16},{"name":"docs/parsers/pidstat_s.md","lines_changed":9},{"name":"docs/parsers/ping_s.md","lines_changed":13},{"name":"docs/parsers/rsync_s.md","lines_changed":13},{"name":"docs/parsers/stat_s.md","lines_changed":13},{"name":"docs/parsers/vmstat_s.md","lines_changed":23},{"name":"jc/parsers/csv_s.py","lines_changed":13},{"name":"jc/parsers/foo_s.py","lines_changed":13},{"name":"jc/parsers/iostat_s.py","lines_changed":20},{"name":"jc/parsers/ls_s.py","lines_changed":16},{"name":"jc/parsers/pidstat_s.py","lines_changed":9},{"name":"jc/parsers/ping_s.py","lines_changed":13},{"name":"jc/parsers/rsync_s.py","lines_changed":13},{"name":"jc/parsers/stat_s.py","lines_changed":13},{"name":"jc/parsers/vmstat_s.py","lines_changed":23}]}},{"commit":"8aee4517bb4c2eebdd9873f7eb0827cd33b85519","message":"doc formatting","stats":{"files_changed":2,"insertions":12,"deletions":26,"files":["docs/parsers/pidstat_s.md","jc/parsers/pidstat_s.py"],"file_stats":[{"name":"docs/parsers/pidstat_s.md","lines_changed":19},{"name":"jc/parsers/pidstat_s.py","lines_changed":19}]}},{"commit":"a5fb8fbf94b3b80bef82f078ad6582260b13e374","message":"streaming doc update","stats":{"files_changed":17,"insertions":164,"deletions":148,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/pidstat_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/pidstat_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":12},{"name":"docs/parsers/iostat_s.md","lines_changed":14},{"name":"docs/parsers/ls_s.md","lines_changed":14},{"name":"docs/parsers/pidstat_s.md","lines_changed":53},{"name":"docs/parsers/ping_s.md","lines_changed":14},{"name":"docs/parsers/rsync_s.md","lines_changed":14},{"name":"docs/parsers/stat_s.md","lines_changed":14},{"name":"docs/parsers/vmstat_s.md","lines_changed":14},{"name":"jc/parsers/csv_s.py","lines_changed":12},{"name":"jc/parsers/foo_s.py","lines_changed":14},{"name":"jc/parsers/iostat_s.py","lines_changed":14},{"name":"jc/parsers/ls_s.py","lines_changed":14},{"name":"jc/parsers/pidstat_s.py","lines_changed":53},{"name":"jc/parsers/ping_s.py","lines_changed":14},{"name":"jc/parsers/rsync_s.py","lines_changed":14},{"name":"jc/parsers/stat_s.py","lines_changed":14},{"name":"jc/parsers/vmstat_s.py","lines_changed":14}]}},{"commit":"b9365e2ac28c3eacf53bc101857f7f1d7286ec20","message":"add pidstat-s tests","stats":{"files_changed":4,"insertions":74,"deletions":0,"files":[".../centos-7.7/pidstat-hdlrsuw-2-5-streaming.json",".../centos-7.7/pidstat-hdlrsuw-streaming.json",".../fixtures/centos-7.7/pidstat-hl-streaming.json","tests/test_pidstat_s.py"],"file_stats":[{"name":".../centos-7.7/pidstat-hdlrsuw-2-5-streaming.json","lines_changed":1},{"name":".../centos-7.7/pidstat-hdlrsuw-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/pidstat-hl-streaming.json","lines_changed":1},{"name":"tests/test_pidstat_s.py","lines_changed":71}]}},{"commit":"696338c1a3d462afbe677a6f2ebe08d06ef4046a","message":"add streaming test template","stats":{"files_changed":1,"insertions":38,"deletions":0,"files":["tests/_test_foo_s.py"],"file_stats":[{"name":"tests/_test_foo_s.py","lines_changed":38}]}},{"commit":"4f0616190bb842411353d65650b78a65d8cbdc28","message":"doc update","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/pidstat_s.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"3278cb0de301ee542b1fe8245a6c359193373b6b","message":"add type hints","stats":{"files_changed":2,"insertions":15,"deletions":10,"files":["docs/parsers/arp.md","jc/parsers/arp.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":23}]}},{"commit":"4fc04256a567c502a88ac8a1bd189746387c93f1","message":"rollback noReturn to tuple","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["jc/parsers/foo_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":4},{"name":"jc/parsers/pidstat_s.py","lines_changed":4},{"name":"jc/parsers/rsync_s.py","lines_changed":4}]}},{"commit":"e4ae0fea63c0386c1b3239607fd6a58738d23633","message":"fix type annotation","stats":{"files_changed":5,"insertions":8,"deletions":8,"files":["docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","jc/parsers/foo_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"docs/parsers/pidstat_s.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":4},{"name":"jc/parsers/pidstat_s.py","lines_changed":4},{"name":"jc/parsers/rsync_s.py","lines_changed":4}]}},{"commit":"d3727ea0906d6167aa48c340519242b010469d98","message":"doc update","stats":{"files_changed":4,"insertions":99,"deletions":1,"files":["CHANGELOG","README.md","docs/parsers/pidstat_s.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/pidstat_s.md","lines_changed":91},{"name":"man/jc.1","lines_changed":5}]}},{"commit":"0d13909cf63d14008607c5640d074ab4073115e5","message":"add pidstat-s parser","stats":{"files_changed":2,"insertions":168,"deletions":0,"files":["jc/lib.py","jc/parsers/pidstat_s.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/pidstat_s.py","lines_changed":167}]}},{"commit":"c52ca20e285895d2afb685a2a5ca275de7901033","message":"fix comment","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/pidstat.py"],"file_stats":[{"name":"jc/parsers/pidstat.py","lines_changed":2}]}},{"commit":"21f27f26c81c75234221a5193c7d3903323e2032","message":"add pidstat tests","stats":{"files_changed":4,"insertions":72,"deletions":0,"files":["tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.json","tests/fixtures/centos-7.7/pidstat-hdlrsuw.json","tests/fixtures/centos-7.7/pidstat-hl.json","tests/test_pidstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/pidstat-hdlrsuw.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/pidstat-hl.json","lines_changed":1},{"name":"tests/test_pidstat.py","lines_changed":69}]}},{"commit":"5e7a87f39782d12070a895440ff541800df91b9c","message":"add test template","stats":{"files_changed":1,"insertions":35,"deletions":0,"files":["tests/_test_foo.py"],"file_stats":[{"name":"tests/_test_foo.py","lines_changed":35}]}},{"commit":"845d763829acd03fff1d2fad6e9691f04bd1a2aa","message":"format docs to fit 80 columns","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/pidstat.md","jc/parsers/pidstat.py"],"file_stats":[{"name":"docs/parsers/pidstat.md","lines_changed":4},{"name":"jc/parsers/pidstat.py","lines_changed":4}]}},{"commit":"f5c7d52ec72f5ff4b77d5ac4491f330575b9f10f","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":10,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":6},{"name":"templates/manpage_template","lines_changed":6}]}},{"commit":"c3198a58744803f52113f80967c7259d781e2328","message":"formatting","stats":{"files_changed":2,"insertions":22,"deletions":12,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":17},{"name":"templates/manpage_template","lines_changed":17}]}},{"commit":"bbd4afa73542ba6596aed77426bb494fbcf23196","message":"add pidstat to docs","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["README.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"man/jc.1","lines_changed":7}]}},{"commit":"ae754a84bf5fc35b248bbc5f7b0fa8e871765819","message":"doc update","stats":{"files_changed":3,"insertions":263,"deletions":33,"files":["docs/parsers/arp.md","docs/parsers/pidstat.md","jc/parsers/pidstat.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/pidstat.md","lines_changed":156},{"name":"jc/parsers/pidstat.py","lines_changed":138}]}},{"commit":"3389eb5debe0f0ba01ece01e20048608bf357e70","message":"initial working parser","stats":{"files_changed":4,"insertions":219,"deletions":9,"files":["jc/parsers/pidstat.py","tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.out","tests/fixtures/centos-7.7/pidstat-hdlrsuw.out","tests/fixtures/centos-7.7/pidstat-hl.out"],"file_stats":[{"name":"jc/parsers/pidstat.py","lines_changed":52},{"name":"tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.out","lines_changed":47},{"name":"tests/fixtures/centos-7.7/pidstat-hdlrsuw.out","lines_changed":83},{"name":"tests/fixtures/centos-7.7/pidstat-hl.out","lines_changed":46}]}},{"commit":"01f2c1e71f87ab401d487be4d6d150cb67c91437","message":"add pidstat parser","stats":{"files_changed":5,"insertions":162,"deletions":2,"files":["CHANGELOG","jc/lib.py","jc/parsers/pidstat.py","setup.py","tests/fixtures/centos-7.7/pidstat.out"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/lib.py","lines_changed":3},{"name":"jc/parsers/pidstat.py","lines_changed":112},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/pidstat.out","lines_changed":44}]}},{"commit":"8bfbf8f1bcd233a8ecd34012e140eb29164ca5fb","message":"simplify error message","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"f4242669bac3af5eb196c46d4146823aacec40ab","message":"minor cleanup","stats":{"files_changed":1,"insertions":2,"deletions":10,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":12}]}},{"commit":"bebd9331f1fb9b80f8cb4a5cfacd68461743004e","message":"Merge pull request #211 from kellyjonbrazil/master"},{"commit":"ac61e9ad2c9c4e864db02db04cbf907fb0efd99b","message":"add pypi link","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"templates/readme_template","lines_changed":1}]}},{"commit":"648ef4d8a9c33a36d4bb2c135fe59b031de8f24c","message":"update badge links","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"templates/readme_template","lines_changed":4}]}},{"commit":"727fc9a701e9aae75d3d2b708010da1d0dc8781a","message":"doc update","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/date.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"306512d6bb53af18516fc10b15c7ec79cb02cc98","message":"force AM/PM to uppercase in date parser","stats":{"files_changed":4,"insertions":7,"deletions":4,"files":["CHANGELOG","jc/lib.py","jc/parsers/date.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/lib.py","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":4},{"name":"setup.py","lines_changed":2}]}},{"commit":"6afb1d389ca9dfd7880386d380fee032b7eb92e2","message":"Merge pull request #209 from kellyjonbrazil/dev"},{"commit":"98619834818c181cb50a9605fe166b6153c46095","message":"doc update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]}},{"commit":"ca79053db08542849136ae13fdb4d1d90b79a7e5","message":"document pydoc version","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":2}]}},{"commit":"29c263f87810f8566ebdad2358e99896391adfd8","message":"pydoc formatting fixes","stats":{"files_changed":93,"insertions":115,"deletions":115,"files":["docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/streaming.md","docs/utils.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":16},{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/dpkg_l.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/finger.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/gshadow.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iostat.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/jar_manifest.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/kv.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/nmcli.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/rsync.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/stat_s.md","lines_changed":2},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/universal.md","lines_changed":4},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/xrandr.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"docs/parsers/zipinfo.md","lines_changed":2},{"name":"docs/streaming.md","lines_changed":12},{"name":"docs/utils.md","lines_changed":20}]}},{"commit":"128c3c170abc6a702ae044b073fb9d992d4262b1","message":"doc update","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]}},{"commit":"a531ab8864fca27b55d83b55055eaef1c36128cd","message":"formatting","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]}},{"commit":"0c1be7cc11ec75a5738483d68d053e702eb34fc1","message":"reduce dig example size","stats":{"files_changed":2,"insertions":4,"deletions":18,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":11},{"name":"templates/readme_template","lines_changed":11}]}},{"commit":"e4222b45f54e6179e22d7924c083e4642b9974ae","message":"fix names to mod names","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":4}]}},{"commit":"ac32c69c31e8eff22252d7aded08f6cb14622086","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":2},{"name":"jc/parsers/universal.py","lines_changed":2}]}},{"commit":"cb2dfeac8d44b733ad9d364e8c6d233a381bfae1","message":"change name to JSON Convert","stats":{"files_changed":199,"insertions":334,"deletions":326,"files":["README.md","docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/streaming.md","docs/utils.md","jc/__init__.py","jc/cli.py","jc/exceptions.py","jc/lib.py","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat_freebsd_osx.py","jc/parsers/netstat_linux.py","jc/parsers/nmcli.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/xrandr.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py","jc/streaming.py","jc/utils.py","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docgen.sh","lines_changed":6},{"name":"docs/lib.md","lines_changed":25},{"name":"docs/parsers/acpi.md","lines_changed":4},{"name":"docs/parsers/airport.md","lines_changed":4},{"name":"docs/parsers/airport_s.md","lines_changed":4},{"name":"docs/parsers/arp.md","lines_changed":4},{"name":"docs/parsers/blkid.md","lines_changed":4},{"name":"docs/parsers/cksum.md","lines_changed":4},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"docs/parsers/crontab_u.md","lines_changed":4},{"name":"docs/parsers/csv.md","lines_changed":4},{"name":"docs/parsers/csv_s.md","lines_changed":4},{"name":"docs/parsers/date.md","lines_changed":4},{"name":"docs/parsers/df.md","lines_changed":4},{"name":"docs/parsers/dig.md","lines_changed":4},{"name":"docs/parsers/dir.md","lines_changed":4},{"name":"docs/parsers/dmidecode.md","lines_changed":4},{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"docs/parsers/du.md","lines_changed":4},{"name":"docs/parsers/env.md","lines_changed":4},{"name":"docs/parsers/file.md","lines_changed":4},{"name":"docs/parsers/finger.md","lines_changed":4},{"name":"docs/parsers/free.md","lines_changed":4},{"name":"docs/parsers/fstab.md","lines_changed":4},{"name":"docs/parsers/group.md","lines_changed":4},{"name":"docs/parsers/gshadow.md","lines_changed":4},{"name":"docs/parsers/hash.md","lines_changed":4},{"name":"docs/parsers/hashsum.md","lines_changed":4},{"name":"docs/parsers/hciconfig.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":4},{"name":"docs/parsers/hosts.md","lines_changed":4},{"name":"docs/parsers/id.md","lines_changed":4},{"name":"docs/parsers/ifconfig.md","lines_changed":4},{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"docs/parsers/iostat.md","lines_changed":4},{"name":"docs/parsers/iostat_s.md","lines_changed":4},{"name":"docs/parsers/iptables.md","lines_changed":4},{"name":"docs/parsers/iw_scan.md","lines_changed":4},{"name":"docs/parsers/jar_manifest.md","lines_changed":4},{"name":"docs/parsers/jobs.md","lines_changed":4},{"name":"docs/parsers/kv.md","lines_changed":4},{"name":"docs/parsers/last.md","lines_changed":4},{"name":"docs/parsers/ls.md","lines_changed":4},{"name":"docs/parsers/ls_s.md","lines_changed":4},{"name":"docs/parsers/lsblk.md","lines_changed":4},{"name":"docs/parsers/lsmod.md","lines_changed":4},{"name":"docs/parsers/lsof.md","lines_changed":4},{"name":"docs/parsers/lsusb.md","lines_changed":4},{"name":"docs/parsers/mount.md","lines_changed":4},{"name":"docs/parsers/netstat.md","lines_changed":4},{"name":"docs/parsers/nmcli.md","lines_changed":4},{"name":"docs/parsers/ntpq.md","lines_changed":4},{"name":"docs/parsers/passwd.md","lines_changed":4},{"name":"docs/parsers/ping.md","lines_changed":4},{"name":"docs/parsers/ping_s.md","lines_changed":4},{"name":"docs/parsers/pip_list.md","lines_changed":4},{"name":"docs/parsers/pip_show.md","lines_changed":4},{"name":"docs/parsers/ps.md","lines_changed":4},{"name":"docs/parsers/route.md","lines_changed":4},{"name":"docs/parsers/rpm_qi.md","lines_changed":4},{"name":"docs/parsers/rsync.md","lines_changed":4},{"name":"docs/parsers/rsync_s.md","lines_changed":9},{"name":"docs/parsers/sfdisk.md","lines_changed":4},{"name":"docs/parsers/shadow.md","lines_changed":4},{"name":"docs/parsers/ss.md","lines_changed":4},{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"docs/parsers/stat_s.md","lines_changed":4},{"name":"docs/parsers/sysctl.md","lines_changed":4},{"name":"docs/parsers/systemctl.md","lines_changed":4},{"name":"docs/parsers/systemctl_lj.md","lines_changed":4},{"name":"docs/parsers/systemctl_ls.md","lines_changed":4},{"name":"docs/parsers/systemctl_luf.md","lines_changed":4},{"name":"docs/parsers/systeminfo.md","lines_changed":4},{"name":"docs/parsers/time.md","lines_changed":4},{"name":"docs/parsers/timedatectl.md","lines_changed":4},{"name":"docs/parsers/tracepath.md","lines_changed":4},{"name":"docs/parsers/traceroute.md","lines_changed":4},{"name":"docs/parsers/ufw.md","lines_changed":4},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":4},{"name":"docs/parsers/uname.md","lines_changed":4},{"name":"docs/parsers/universal.md","lines_changed":6},{"name":"docs/parsers/upower.md","lines_changed":4},{"name":"docs/parsers/uptime.md","lines_changed":4},{"name":"docs/parsers/vmstat.md","lines_changed":4},{"name":"docs/parsers/vmstat_s.md","lines_changed":4},{"name":"docs/parsers/w.md","lines_changed":4},{"name":"docs/parsers/wc.md","lines_changed":4},{"name":"docs/parsers/who.md","lines_changed":4},{"name":"docs/parsers/xml.md","lines_changed":4},{"name":"docs/parsers/xrandr.md","lines_changed":4},{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"docs/parsers/zipinfo.md","lines_changed":4},{"name":"docs/readme.md","lines_changed":2},{"name":"docs/streaming.md","lines_changed":17},{"name":"docs/utils.md","lines_changed":29},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/cli.py","lines_changed":4},{"name":"jc/exceptions.py","lines_changed":2},{"name":"jc/lib.py","lines_changed":2},{"name":"jc/parsers/acpi.py","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/blkid.py","lines_changed":2},{"name":"jc/parsers/cksum.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"jc/parsers/csv.py","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/dir.py","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":2},{"name":"jc/parsers/dpkg_l.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/finger.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/group.py","lines_changed":2},{"name":"jc/parsers/gshadow.py","lines_changed":2},{"name":"jc/parsers/hash.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":2},{"name":"jc/parsers/hciconfig.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/iostat.py","lines_changed":2},{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2},{"name":"jc/parsers/jar_manifest.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/kv.py","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/lsusb.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/netstat_freebsd_osx.py","lines_changed":2},{"name":"jc/parsers/netstat_linux.py","lines_changed":2},{"name":"jc/parsers/nmcli.py","lines_changed":2},{"name":"jc/parsers/ntpq.py","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":2},{"name":"jc/parsers/ping.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/rpm_qi.py","lines_changed":2},{"name":"jc/parsers/rsync.py","lines_changed":2},{"name":"jc/parsers/rsync_s.py","lines_changed":2},{"name":"jc/parsers/sfdisk.py","lines_changed":2},{"name":"jc/parsers/shadow.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/stat_s.py","lines_changed":2},{"name":"jc/parsers/sysctl.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/systeminfo.py","lines_changed":2},{"name":"jc/parsers/time.py","lines_changed":2},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/ufw.py","lines_changed":2},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/universal.py","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/parsers/wc.py","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":2},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/xrandr.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2},{"name":"jc/parsers/zipinfo.py","lines_changed":2},{"name":"jc/streaming.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"templates/manpage_template","lines_changed":2},{"name":"templates/readme_template","lines_changed":4}]}},{"commit":"9a3602e70b865a3015bd700b30d1076e17511a9b","message":"doc update","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":4},{"name":"jc/lib.py","lines_changed":4}]}},{"commit":"a9f53ee258e18bc90934e263d8dc96feee84e939","message":"optimize streaming parser detection in cli","stats":{"files_changed":2,"insertions":15,"deletions":4,"files":["jc/cli.py","jc/lib.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4},{"name":"jc/lib.py","lines_changed":15}]}},{"commit":"6be3d3d98222a262c5138bb09f2951ccfab96110","message":"doc update","stats":{"files_changed":3,"insertions":43,"deletions":1,"files":["CHANGELOG","docs/lib.md","docs/readme.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docs/lib.md","lines_changed":25},{"name":"docs/readme.md","lines_changed":16}]}},{"commit":"e49df7208377ab34a74240a06f35f17fee4b8203","message":"use streaming parser list to find streaming parsers","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]}},{"commit":"7ede7be7bf7b1a7d29d158b3b21c20fff4990e72","message":"add standard and streaming list functions","stats":{"files_changed":2,"insertions":42,"deletions":0,"files":["jc/__init__.py","jc/lib.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":17},{"name":"jc/lib.py","lines_changed":25}]}},{"commit":"4758e28a36e2a55497e4f722d386a6b5cc30dc4d","message":"formatting","stats":{"files_changed":2,"insertions":20,"deletions":16,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":18},{"name":"jc/__init__.py","lines_changed":18}]}},{"commit":"4a1ee151b3cb054d84cd964fd62f5855f765751d","message":"add dhcp6 options to docs","stats":{"files_changed":2,"insertions":9,"deletions":11,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py"],"file_stats":[{"name":"docs/parsers/nmcli.md","lines_changed":4},{"name":"jc/parsers/nmcli.py","lines_changed":16}]}},{"commit":"8c8afc1a922e3c30fcf501d169b33a68b65cd3e0","message":"formatting","stats":{"files_changed":2,"insertions":60,"deletions":24,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":42},{"name":"jc/__init__.py","lines_changed":42}]}},{"commit":"ed205f7720d98c225c917c252ed7a6c9e6e8c2b8","message":"doc update","stats":{"files_changed":3,"insertions":9,"deletions":9,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/nmcli.md","lines_changed":8},{"name":"jc/parsers/nmcli.py","lines_changed":8},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"d65f7ae992abc33140c00714d442290103661757","message":"add nmcli","stats":{"files_changed":1,"insertions":41,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":41}]}},{"commit":"e2ffef57b9a474048fe72cf42aebfa6bfaf2e42b","message":"fix test","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_nmcli.py"],"file_stats":[{"name":"tests/test_nmcli.py","lines_changed":2}]}},{"commit":"002caa9fb3b65f1ae64df25cc39c3de130403e76","message":"add fedora tests","stats":{"files_changed":7,"insertions":252,"deletions":0,"files":[".../fedora32/nmcli-connection-show-ens33.json",".../fedora32/nmcli-connection-show-ens33.out",".../fixtures/fedora32/nmcli-device-show-ens33.json",".../fixtures/fedora32/nmcli-device-show-ens33.out","tests/fixtures/fedora32/nmcli-device-show.json","tests/fixtures/fedora32/nmcli-device-show.out","tests/test_nmcli.py"],"file_stats":[{"name":".../fedora32/nmcli-connection-show-ens33.json","lines_changed":1},{"name":".../fedora32/nmcli-connection-show-ens33.out","lines_changed":148},{"name":".../fixtures/fedora32/nmcli-device-show-ens33.json","lines_changed":1},{"name":".../fixtures/fedora32/nmcli-device-show-ens33.out","lines_changed":26},{"name":"tests/fixtures/fedora32/nmcli-device-show.json","lines_changed":1},{"name":"tests/fixtures/fedora32/nmcli-device-show.out","lines_changed":39},{"name":"tests/test_nmcli.py","lines_changed":36}]}},{"commit":"b7c6faf3daf8eb0c42a222778baa440c5a018c75","message":"enhance error message","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"554ca61d1764b81dea06b6b013d0444072f0662a","message":"add tests","stats":{"files_changed":11,"insertions":165,"deletions":0,"files":[".../fixtures/centos-7.7/nmcli-connection-all.json",".../centos-7.7/nmcli-connection-show-ens33.json","tests/fixtures/centos-7.7/nmcli-connection.json","tests/fixtures/centos-7.7/nmcli-device-all.json",".../centos-7.7/nmcli-device-show-ens33.json",".../fixtures/centos-7.7/nmcli-device-show-lo.json","tests/fixtures/centos-7.7/nmcli-device-show.json","tests/fixtures/centos-7.7/nmcli-device.json","tests/fixtures/centos-7.7/nmcli-general-all.json",".../centos-7.7/nmcli-general-permissions.json","tests/test_nmcli.py"],"file_stats":[{"name":".../fixtures/centos-7.7/nmcli-connection-all.json","lines_changed":1},{"name":".../centos-7.7/nmcli-connection-show-ens33.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-connection.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-device-all.json","lines_changed":1},{"name":".../centos-7.7/nmcli-device-show-ens33.json","lines_changed":1},{"name":".../fixtures/centos-7.7/nmcli-device-show-lo.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-device-show.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-device.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-general-all.json","lines_changed":1},{"name":".../centos-7.7/nmcli-general-permissions.json","lines_changed":1},{"name":"tests/test_nmcli.py","lines_changed":155}]}},{"commit":"7b9722d255a16981099dc803beda7abe0d46106a","message":"fix formatting","stats":{"files_changed":2,"insertions":26,"deletions":34,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":30},{"name":"templates/manpage_template","lines_changed":30}]}},{"commit":"5505bde8ef77db0885f08d8d04160cbc4418dd67","message":"doc update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/zipinfo.md"],"file_stats":[{"name":"docs/parsers/zipinfo.md","lines_changed":2}]}},{"commit":"dbcd9a4060647be24bca2a8d577f11925a9ac210","message":"bump version to 1.0","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":2}]}},{"commit":"4bdeb2b3aa063c2772f5c44e52acbe16e915cc3a","message":"simplify warning message","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/xrandr.py"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":2}]}},{"commit":"6ae1d03187c6d4b669f6f74db1be7c9cf07adaed","message":"doc fix","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py"],"file_stats":[{"name":"docs/parsers/nmcli.md","lines_changed":2},{"name":"jc/parsers/nmcli.py","lines_changed":2}]}},{"commit":"f75b06abe4af152be094f8bc1ba5ce66b25e35e2","message":"doc update","stats":{"files_changed":4,"insertions":180,"deletions":3,"files":["README.md","docs/parsers/nmcli.md","jc/parsers/nmcli.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/nmcli.md","lines_changed":172},{"name":"jc/parsers/nmcli.py","lines_changed":3},{"name":"man/jc.1","lines_changed":7}]}},{"commit":"1923925710dadc4116202855ae884ef18394d428","message":"update changelog","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]}},{"commit":"2c5c57ae04df3b7abfb1c3423c3350c7c2ab5dcd","message":"version bump","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/lib.py","setup.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"f4d11d697e000135720a971edf84dcad31a1bec8","message":"finish use cases and doc","stats":{"files_changed":1,"insertions":155,"deletions":15,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":170}]}},{"commit":"7f409b7082aa9525cc9280e3c5c92bc82089cf14","message":"enhance ParseError cli message","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"937fa5aad2519f588c6d0feb8f08211f6b99872f","message":"split dhcp options","stats":{"files_changed":1,"insertions":20,"deletions":0,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":20}]}},{"commit":"19dcef513565c34a31f6d735577da5e25f9bd2cd","message":"firm up flow. add/remove text. parse routes","stats":{"files_changed":1,"insertions":69,"deletions":2,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":71}]}},{"commit":"3d01356461eb2790f859968da7f5cb4fd2ee9898","message":"add text_kv function","stats":{"files_changed":1,"insertions":27,"deletions":3,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":30}]}},{"commit":"2d6f666fa4c791e7995f6b0c1490dac73ce224c3","message":"add dev show and conn show parsers","stats":{"files_changed":1,"insertions":61,"deletions":16,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":77}]}},{"commit":"4dda895f122ecc19b267ed1485cf656bae76ff07","message":"initial nmcli parser","stats":{"files_changed":13,"insertions":404,"deletions":0,"files":["jc/lib.py","jc/parsers/nmcli.py","tests/fixtures/centos-7.7/nmcli-connection-all.out",".../centos-7.7/nmcli-connection-show-ens33.out","tests/fixtures/centos-7.7/nmcli-connection.out","tests/fixtures/centos-7.7/nmcli-device-all.out",".../centos-7.7/nmcli-device-show-ens33.out","tests/fixtures/centos-7.7/nmcli-device-show-lo.out","tests/fixtures/centos-7.7/nmcli-device-show.out","tests/fixtures/centos-7.7/nmcli-device.out","tests/fixtures/centos-7.7/nmcli-general-all.out",".../centos-7.7/nmcli-general-permissions.out","tests/fixtures/centos-7.7/nmcli.out"],"file_stats":[{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/nmcli.py","lines_changed":130},{"name":"tests/fixtures/centos-7.7/nmcli-connection-all.out","lines_changed":3},{"name":".../centos-7.7/nmcli-connection-show-ens33.out","lines_changed":136},{"name":"tests/fixtures/centos-7.7/nmcli-connection.out","lines_changed":3},{"name":"tests/fixtures/centos-7.7/nmcli-device-all.out","lines_changed":5},{"name":".../centos-7.7/nmcli-device-show-ens33.out","lines_changed":18},{"name":"tests/fixtures/centos-7.7/nmcli-device-show-lo.out","lines_changed":12},{"name":"tests/fixtures/centos-7.7/nmcli-device-show.out","lines_changed":42},{"name":"tests/fixtures/centos-7.7/nmcli-device.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/nmcli-general-all.out","lines_changed":3},{"name":".../centos-7.7/nmcli-general-permissions.out","lines_changed":18},{"name":"tests/fixtures/centos-7.7/nmcli.out","lines_changed":29}]}},{"commit":"52617b1722ba2f089716b069f78f70a865430d61","message":"Merge pull request #208 from kellyjonbrazil/master"},{"commit":"961968a0fcaf37b64bc850c4945ba4b805a1fe54","message":"fix schema","stats":{"files_changed":2,"insertions":26,"deletions":23,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":24},{"name":"jc/parsers/xrandr.py","lines_changed":25}]}},{"commit":"f026a788e5ca1231927e71fdbb1dadb2365a6518","message":"add xrandr example","stats":{"files_changed":1,"insertions":62,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":62}]}},{"commit":"2f7c03eb35520be916c28a687031f8c6425839ba","message":"Merge pull request #207 from kellyjonbrazil/dev"},{"commit":"3afaa48eee081e28262d1762c5ec23d318012822","message":"doc update","stats":{"files_changed":15,"insertions":15,"deletions":15,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"docs/parsers/stat_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/rsync_s.py","lines_changed":2},{"name":"jc/parsers/stat_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]}},{"commit":"3201452564fb0fb44ef9cc32217339370bd2521e","message":"add -p to example","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":2},{"name":"jc/parsers/xrandr.py","lines_changed":2}]}},{"commit":"7ee1e34fc71c0dbc08ba482b787d560fd5125f64","message":"doc update","stats":{"files_changed":2,"insertions":116,"deletions":4,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":60},{"name":"jc/parsers/xrandr.py","lines_changed":60}]}},{"commit":"67dbf050161201f5016899591e81ab6253ac2322","message":"add type annotations","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":2},{"name":"jc/parsers/xrandr.py","lines_changed":2}]}},{"commit":"4ac9f2e3dad4e7bd270bf5a8e61b729838b2c89c","message":"doc update","stats":{"files_changed":5,"insertions":10,"deletions":17,"files":["CHANGELOG","docs/parsers/rsync.md","docs/parsers/rsync_s.md","jc/parsers/rsync.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docs/parsers/rsync.md","lines_changed":6},{"name":"docs/parsers/rsync_s.md","lines_changed":6},{"name":"jc/parsers/rsync.py","lines_changed":6},{"name":"jc/parsers/rsync_s.py","lines_changed":6}]}},{"commit":"3f5f6e39a777ef524cb3a06a01321bb8c31d930d","message":"formatting","stats":{"files_changed":2,"insertions":100,"deletions":98,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":99},{"name":"jc/parsers/xrandr.py","lines_changed":99}]}},{"commit":"4723db8e3cc4946b14c83b25d6e8c6d2309aa72e","message":"doc updates","stats":{"files_changed":8,"insertions":195,"deletions":77,"files":["README.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/xrandr.md","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/xrandr.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/rsync.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"docs/parsers/xrandr.md","lines_changed":109},{"name":"jc/parsers/rsync.py","lines_changed":2},{"name":"jc/parsers/rsync_s.py","lines_changed":2},{"name":"jc/parsers/xrandr.py","lines_changed":147},{"name":"man/jc.1","lines_changed":7}]}},{"commit":"ca914ec77d1fc77e42860189e62ac2fb203d4931","message":"add nodata test","stats":{"files_changed":1,"insertions":11,"deletions":2,"files":["tests/test_xrandr.py"],"file_stats":[{"name":"tests/test_xrandr.py","lines_changed":13}]}},{"commit":"dcc7f3f357ef016b4583fc1320fd2394788f271f","message":"Merge pull request #204 from lyterk/xrandr"},{"commit":"cbdc66623671da335eafe132b7af79f884856f1d","message":"Return empty object if no results and filenames","stats":{"files_changed":3,"insertions":2,"deletions":30,"files":["jc/parsers/xrandr.py",".../{simple_xrandr.json => xrandr_simple.json}",".../{simple_xrandr.out => xrandr_simple.out}"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":32},{"name":".../{simple_xrandr.json => xrandr_simple.json}","lines_changed":0},{"name":".../{simple_xrandr.out => xrandr_simple.out}","lines_changed":0}]}},{"commit":"184ef3a1faeb406ce62076cff637ee86d61541fb","message":"doc update","stats":{"files_changed":3,"insertions":11,"deletions":3,"files":["docs/parsers/rsync.md","docs/parsers/rsync_s.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/rsync.md","lines_changed":6},{"name":"docs/parsers/rsync_s.md","lines_changed":6},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"c732f759445e335fe36586859b6fde7e27bb8901","message":"doc update","stats":{"files_changed":2,"insertions":10,"deletions":2,"files":["jc/parsers/rsync.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":6},{"name":"jc/parsers/rsync_s.py","lines_changed":6}]}},{"commit":"7a1ae4f5fc5328c32bf77235cfbd9f83ec995053","message":"add library tests","stats":{"files_changed":3,"insertions":105,"deletions":0,"files":["tests/{test_lib.py => test_jc_lib.py}","tests/test_jc_streaming.py","tests/{test_utils.py => test_jc_utils.py}"],"file_stats":[{"name":"tests/{test_lib.py => test_jc_lib.py}","lines_changed":0},{"name":"tests/test_jc_streaming.py","lines_changed":61},{"name":"tests/{test_utils.py => test_jc_utils.py}","lines_changed":44}]}},{"commit":"d04bc3757c482ec9062b2da91ded76c5dd6d106b","message":"add xrandr","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]}},{"commit":"73e8391653145412cd852aca349466018c8b9084","message":"formatting","stats":{"files_changed":1,"insertions":8,"deletions":3,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":11}]}},{"commit":"f6c1463c1578db264ccb3d4c2677857ed906e965","message":"formatting","stats":{"files_changed":1,"insertions":44,"deletions":24,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":68}]}},{"commit":"d392c7f901a9d7c57617fbd03bd3f88ee0bf4132","message":"doc update","stats":{"files_changed":12,"insertions":20,"deletions":13,"files":["docs/parsers/date.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/ls.md","docs/parsers/rpm_qi.md","docs/parsers/stat.md","docs/parsers/systeminfo.md","docs/parsers/timedatectl.md","docs/parsers/upower.md","docs/parsers/vmstat.md","docs/parsers/who.md","docs/utils.md"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":11}]}},{"commit":"d0387f58205b2fd9b9860ce9656bb29ceec54340","message":"add timestamp format hints for better performance","stats":{"files_changed":16,"insertions":34,"deletions":29,"files":["jc/parsers/date.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/systeminfo.py","jc/parsers/timedatectl.py","jc/parsers/upower.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":4},{"name":"jc/parsers/dir.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/rpm_qi.py","lines_changed":6},{"name":"jc/parsers/rsync.py","lines_changed":2},{"name":"jc/parsers/rsync_s.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"jc/parsers/stat_s.py","lines_changed":2},{"name":"jc/parsers/systeminfo.py","lines_changed":8},{"name":"jc/parsers/timedatectl.py","lines_changed":4},{"name":"jc/parsers/upower.py","lines_changed":5},{"name":"jc/parsers/vmstat.py","lines_changed":5},{"name":"jc/parsers/vmstat_s.py","lines_changed":3},{"name":"jc/parsers/who.py","lines_changed":4}]}},{"commit":"76f92908a3ba9cbadcc8e972afa8b1c4a69509bd","message":"add format hints for performance optimization","stats":{"files_changed":1,"insertions":44,"deletions":9,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":53}]}},{"commit":"1a115da67bdce9acfefbfb71fbac37e234b1babd","message":"add lru_cache maxsize for python 3.7 support","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]}},{"commit":"f0a37ccf301eee5133a83b5dd96986fef0c38e7c","message":"use lru_cache for significant performance boost to timestamp","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":11}]}},{"commit":"f331f53a531169520a4d8ea15d277560a49aedb5","message":"use !r formatting instead of quotes","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["CHANGELOG","jc/utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/utils.py","lines_changed":2}]}},{"commit":"8611aff06b18212b7292d564beb27a2062fc3f41","message":"add examples","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/parsers/rsync_s.md","jc/parsers/rsync_s.py"],"file_stats":[{"name":"docs/parsers/rsync_s.md","lines_changed":8},{"name":"jc/parsers/rsync_s.py","lines_changed":8}]}},{"commit":"2f3f78e8d35a0ccccde0f84417400acdfe7fe0aa","message":"refine streaming parsers","stats":{"files_changed":16,"insertions":194,"deletions":185,"files":["docgen.sh","docs/parsers/rsync_s.md","docs/readme.md","docs/streaming.md","docs/utils.md","jc/__init__.py","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/streaming.py","man/jc.1"],"file_stats":[{"name":"docgen.sh","lines_changed":3},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"docs/readme.md","lines_changed":2},{"name":"docs/streaming.md","lines_changed":114},{"name":"docs/utils.md","lines_changed":93},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":10},{"name":"jc/parsers/foo_s.py","lines_changed":14},{"name":"jc/parsers/iostat_s.py","lines_changed":15},{"name":"jc/parsers/ls_s.py","lines_changed":14},{"name":"jc/parsers/ping_s.py","lines_changed":4},{"name":"jc/parsers/rsync_s.py","lines_changed":25},{"name":"jc/parsers/stat_s.py","lines_changed":22},{"name":"jc/parsers/vmstat_s.py","lines_changed":16},{"name":"jc/streaming.py","lines_changed":41},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"d1e0ee6123dfecd48d074cb7a40e98a15b6adcb9","message":"use new streaming functions","stats":{"files_changed":1,"insertions":6,"deletions":8,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":14}]}},{"commit":"45314c98083067f1f6fae9c477c99fabec223f29","message":"move some functions to streaming","stats":{"files_changed":2,"insertions":112,"deletions":102,"files":["jc/streaming.py","jc/utils.py"],"file_stats":[{"name":"jc/streaming.py","lines_changed":111},{"name":"jc/utils.py","lines_changed":103}]}},{"commit":"df00945b46e27e10107f48d186eedf80b55bd40e","message":"move try/except inside for loop","stats":{"files_changed":6,"insertions":59,"deletions":49,"files":["jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":15},{"name":"jc/parsers/iostat_s.py","lines_changed":15},{"name":"jc/parsers/ls_s.py","lines_changed":17},{"name":"jc/parsers/ping_s.py","lines_changed":19},{"name":"jc/parsers/rsync_s.py","lines_changed":21},{"name":"jc/parsers/stat_s.py","lines_changed":21}]}},{"commit":"fda0050d867bcbe4f1d7e024b08e9881d0f57735","message":"add rsync-s tests","stats":{"files_changed":13,"insertions":191,"deletions":0,"files":[".../centos-7.7/rsync-i-logfile-streaming.json","tests/fixtures/centos-7.7/rsync-i-streaming.json",".../centos-7.7/rsync-i-v-logfile-streaming.json",".../centos-7.7/rsync-i-vv-logfile-streaming.json",".../rsync-i-vvv-logfile-nochange-streaming.json",".../centos-7.7/rsync-i-vvv-logfile-streaming.json",".../centos-7.7/rsync-ivvv-nochange-streaming.json",".../fixtures/centos-7.7/rsync-ivvv-streaming.json","tests/fixtures/generic/rsync-i-streaming.json",".../rsync-i-vvv-logfile-nochange-streaming.json",".../rsync-i-vvv-nochange-streaming.json",".../osx-10.14.6/rsync-i-vvv-streaming.json","tests/test_rsync_s.py"],"file_stats":[{"name":".../centos-7.7/rsync-i-logfile-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-streaming.json","lines_changed":1},{"name":".../centos-7.7/rsync-i-v-logfile-streaming.json","lines_changed":1},{"name":".../centos-7.7/rsync-i-vv-logfile-streaming.json","lines_changed":1},{"name":".../rsync-i-vvv-logfile-nochange-streaming.json","lines_changed":1},{"name":".../centos-7.7/rsync-i-vvv-logfile-streaming.json","lines_changed":1},{"name":".../centos-7.7/rsync-ivvv-nochange-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/rsync-ivvv-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/rsync-i-streaming.json","lines_changed":1},{"name":".../rsync-i-vvv-logfile-nochange-streaming.json","lines_changed":1},{"name":".../rsync-i-vvv-nochange-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/rsync-i-vvv-streaming.json","lines_changed":1},{"name":"tests/test_rsync_s.py","lines_changed":179}]}},{"commit":"a76d46f9ecb1eff4d6cc7ad633c97cec0e99001a","message":"refactor ignore_exceptions","stats":{"files_changed":19,"insertions":110,"deletions":109,"files":["CHANGELOG","docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","docs/utils.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/utils.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":5},{"name":"docs/parsers/iostat_s.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":5},{"name":"docs/parsers/ping_s.md","lines_changed":5},{"name":"docs/parsers/rsync_s.md","lines_changed":5},{"name":"docs/parsers/stat_s.md","lines_changed":5},{"name":"docs/parsers/vmstat_s.md","lines_changed":5},{"name":"docs/utils.md","lines_changed":15},{"name":"jc/parsers/csv_s.py","lines_changed":13},{"name":"jc/parsers/foo_s.py","lines_changed":11},{"name":"jc/parsers/iostat_s.py","lines_changed":23},{"name":"jc/parsers/ls_s.py","lines_changed":20},{"name":"jc/parsers/ping_s.py","lines_changed":22},{"name":"jc/parsers/rsync_s.py","lines_changed":11},{"name":"jc/parsers/stat_s.py","lines_changed":30},{"name":"jc/parsers/vmstat_s.py","lines_changed":11},{"name":"jc/utils.py","lines_changed":24},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"6b069a82d0fa19c8d83b19b934bace556cb758d7","message":"Add xrandr to lib.py","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":1}]}},{"commit":"6b793d052147406f388c4d5dc04f506a3456f409","message":"Clean up types","stats":{"files_changed":1,"insertions":6,"deletions":11,"files":["jc/parsers/xrandr.py"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":17}]}},{"commit":"ce9103f7cc666895dc7840d32797d8c7274cf1b8","message":"Delete old files in template folder","stats":{"files_changed":2,"insertions":0,"deletions":287,"files":["templates/xrandr_sample.txt","templates/xrandr_sample_verbose.txt"],"file_stats":[{"name":"templates/xrandr_sample.txt","lines_changed":38},{"name":"templates/xrandr_sample_verbose.txt","lines_changed":249}]}},{"commit":"671d6dee36a37317257e09a080849205d301bceb","message":"doc update","stats":{"files_changed":8,"insertions":83,"deletions":15,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","docs/utils.md"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":8},{"name":"docs/parsers/iostat_s.md","lines_changed":8},{"name":"docs/parsers/ls_s.md","lines_changed":8},{"name":"docs/parsers/ping_s.md","lines_changed":8},{"name":"docs/parsers/rsync_s.md","lines_changed":10},{"name":"docs/parsers/stat_s.md","lines_changed":8},{"name":"docs/parsers/vmstat_s.md","lines_changed":8},{"name":"docs/utils.md","lines_changed":40}]}},{"commit":"49929c714c2d71a310b1dd95138dbd02f8704138","message":"add add_jc_meta decorator","stats":{"files_changed":9,"insertions":139,"deletions":52,"files":["jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":14},{"name":"jc/parsers/foo_s.py","lines_changed":16},{"name":"jc/parsers/iostat_s.py","lines_changed":15},{"name":"jc/parsers/ls_s.py","lines_changed":14},{"name":"jc/parsers/ping_s.py","lines_changed":14},{"name":"jc/parsers/rsync_s.py","lines_changed":30},{"name":"jc/parsers/stat_s.py","lines_changed":21},{"name":"jc/parsers/vmstat_s.py","lines_changed":14},{"name":"jc/utils.py","lines_changed":53}]}},{"commit":"2986771f07de87bfee44dd3bbb4f285e249aad76","message":"require python v3.7 and above since v3.6 is now deprecated","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"520082d963b93d2bafeff921da3899686b22cadf","message":"New parser: xrandr","stats":{"files_changed":9,"insertions":968,"deletions":0,"files":["jc/parsers/xrandr.py","templates/xrandr_sample.txt","templates/xrandr_sample_verbose.txt","tests/fixtures/generic/simple_xrandr.json","tests/fixtures/generic/simple_xrandr.out","tests/fixtures/generic/xrandr.out","tests/fixtures/generic/xrandr_2.out","tests/fixtures/generic/xrandr_device.out","tests/test_xrandr.py"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":353},{"name":"templates/xrandr_sample.txt","lines_changed":38},{"name":"templates/xrandr_sample_verbose.txt","lines_changed":249},{"name":"tests/fixtures/generic/simple_xrandr.json","lines_changed":56},{"name":"tests/fixtures/generic/simple_xrandr.out","lines_changed":4},{"name":"tests/fixtures/generic/xrandr.out","lines_changed":38},{"name":"tests/fixtures/generic/xrandr_2.out","lines_changed":43},{"name":"tests/fixtures/generic/xrandr_device.out","lines_changed":15},{"name":"tests/test_xrandr.py","lines_changed":172}]}},{"commit":"021e296d457140c32b5256c2b0acf66efc458896","message":"move variable inits and regexes up","stats":{"files_changed":1,"insertions":104,"deletions":100,"files":["jc/parsers/rsync_s.py"],"file_stats":[{"name":"jc/parsers/rsync_s.py","lines_changed":204}]}},{"commit":"42e56fbcea6db64ea7f7045e7755af492c95aec2","message":"move regex up","stats":{"files_changed":1,"insertions":11,"deletions":12,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":23}]}},{"commit":"a5b62a4055df37b84751a7cdc14eb6f1ed907cd9","message":"add processing and docs","stats":{"files_changed":2,"insertions":230,"deletions":18,"files":["docs/parsers/rsync_s.md","jc/parsers/rsync_s.py"],"file_stats":[{"name":"docs/parsers/rsync_s.md","lines_changed":124},{"name":"jc/parsers/rsync_s.py","lines_changed":124}]}},{"commit":"be98c9b7f6c67e23ea101223934d67bba512e645","message":"simplify try/except by moving outside for loop","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":11}]}},{"commit":"aceeb8450796ae748a4d4abf75643f309d0a42e5","message":"doc update","stats":{"files_changed":3,"insertions":12,"deletions":1,"files":["CHANGELOG","README.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":5},{"name":"README.md","lines_changed":1},{"name":"man/jc.1","lines_changed":7}]}},{"commit":"13910632173e7c815ff1161cf52fd1d17153c4a9","message":"first draft rsync streaming parser","stats":{"files_changed":2,"insertions":367,"deletions":0,"files":["jc/lib.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/rsync_s.py","lines_changed":366}]}},{"commit":"52157addd0d6dff3bdb34f179ec14b07c8c27ccc","message":"fix compatible list","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":2}]}},{"commit":"ec0bc6615e22fdc536623e290d88b9725cb6a0ec","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":2},{"name":"jc/utils.py","lines_changed":2}]}},{"commit":"2f80800e38256b363a4122195ec4aaffebe67d87","message":"simplify all_parser_info comprehension","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]}},{"commit":"3959d3347c8d3e838f8c3158c4db74e2fa2eb856","message":"doc update","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["docs/lib.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":4}]}},{"commit":"b57d25c69a193d3866ea86a3a34edd67049b198d","message":"clean up return type for parser_info","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":12}]}},{"commit":"63e43a7cabb51c624c962cdcc92a1199f18c77e5","message":"doc updates","stats":{"files_changed":7,"insertions":188,"deletions":21,"files":["README.md","docs/lib.md","docs/parsers/rsync.md","docs/parsers/universal.md","docs/parsers/zipinfo.md","docs/utils.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"docs/lib.md","lines_changed":4},{"name":"docs/parsers/rsync.md","lines_changed":163},{"name":"docs/parsers/universal.md","lines_changed":2},{"name":"docs/parsers/zipinfo.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":28},{"name":"man/jc.1","lines_changed":7}]}},{"commit":"21719f9a26c25d896b0a5d49c9d7814175835e16","message":"type annotation updates","stats":{"files_changed":2,"insertions":18,"deletions":20,"files":["jc/lib.py","jc/utils.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":36}]}},{"commit":"96ec70de4f6178b0669fd9ab47cb303dc45e55c2","message":"remove unneeded optional","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["jc/parsers/universal.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":6},{"name":"jc/utils.py","lines_changed":4}]}},{"commit":"a15a1967dc06169ceeda0fd5b4857ce1a351f3d5","message":"fix typo","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]}},{"commit":"a10d7566294fe5246e68a16e355ce56dd3557ac5","message":"fixy mypy issues","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":8}]}},{"commit":"0700dc7a64b121cf0243416e2cbb82fcef15f5a0","message":"remove cygwin from compatible","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":2}]}},{"commit":"ca654b214057e19839b89e0d9a66f1110f679c1e","message":"fix parser order","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]}},{"commit":"4ff3b87c1c96d720f4e7fd39e613944e322cb388","message":"remove future field from docstring","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":1}]}},{"commit":"ea244fb7a91f1d1f8ffe0ea6dc10dfe5ab836878","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_rsync.py"],"file_stats":[{"name":"tests/test_rsync.py","lines_changed":2}]}},{"commit":"8061f30e6fa58d22ed1a52e02c4d9c7f0bf132cf","message":"add centos -i nochange test","stats":{"files_changed":3,"insertions":236,"deletions":6,"files":["tests/fixtures/centos-7.7/rsync-ivvv-nochange.json","tests/fixtures/centos-7.7/rsync-ivvv-nochange.out","tests/test_rsync.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/rsync-ivvv-nochange.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-ivvv-nochange.out","lines_changed":224},{"name":"tests/test_rsync.py","lines_changed":17}]}},{"commit":"8f3b12e81e1b4f0d4394c33db5b3a352f4cfb391","message":"add fixes for mac -i output","stats":{"files_changed":6,"insertions":299,"deletions":0,"files":["jc/parsers/rsync.py",".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.json",".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.out","tests/fixtures/osx-10.14.6/rsync-i-vvv.json","tests/fixtures/osx-10.14.6/rsync-i-vvv.out","tests/test_rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":22},{"name":".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.out","lines_changed":88},{"name":"tests/fixtures/osx-10.14.6/rsync-i-vvv.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/rsync-i-vvv.out","lines_changed":156},{"name":"tests/test_rsync.py","lines_changed":31}]}},{"commit":"d0694ce0db5ea2d06b5787429adf23095c4c2df0","message":"add nochange log test for mac","stats":{"files_changed":3,"insertions":245,"deletions":6,"files":[".../osx-10.14.6/rsync-i-vvv-logfile-nochange.json",".../osx-10.14.6/rsync-i-vvv-logfile-nochange.out","tests/test_rsync.py"],"file_stats":[{"name":".../osx-10.14.6/rsync-i-vvv-logfile-nochange.json","lines_changed":1},{"name":".../osx-10.14.6/rsync-i-vvv-logfile-nochange.out","lines_changed":233},{"name":"tests/test_rsync.py","lines_changed":17}]}},{"commit":"0cd4c4bc7f3ffe13cb2f1920187e25636b88af61","message":"add nochange tests","stats":{"files_changed":2,"insertions":658,"deletions":0,"files":[".../centos-7.7/rsync-i-vvv-logfile-nochange.json",".../centos-7.7/rsync-i-vvv-logfile-nochange.out"],"file_stats":[{"name":".../centos-7.7/rsync-i-vvv-logfile-nochange.json","lines_changed":1},{"name":".../centos-7.7/rsync-i-vvv-logfile-nochange.out","lines_changed":657}]}},{"commit":"12f90c349c903634def4225ce87924b475be46d0","message":"update regexes for unchanged files","stats":{"files_changed":2,"insertions":68,"deletions":20,"files":["jc/parsers/rsync.py","tests/test_rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":68},{"name":"tests/test_rsync.py","lines_changed":20}]}},{"commit":"26b8a1f167c4b1ec3f9fb4077254a27ed8548933","message":"remove packages from binaries and packages header","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"3abe382c064f605d915912f9b726d76784eba8a2","message":"add examples","stats":{"files_changed":2,"insertions":90,"deletions":3,"files":["EXAMPLES.md","jc/parsers/rsync.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":33},{"name":"jc/parsers/rsync.py","lines_changed":60}]}},{"commit":"1e2edc2c7b5dc104a9efe4da7df9be61b9e1be32","message":"add timestamp","stats":{"files_changed":5,"insertions":53,"deletions":29,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-logfile.json","tests/fixtures/centos-7.7/rsync-i-v-logfile.json","tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":74},{"name":"tests/fixtures/centos-7.7/rsync-i-logfile.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rsync-i-v-logfile.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json","lines_changed":2}]}},{"commit":"5fe032a6741b7b6586c60eb28be74bd0e56277a0","message":"fix typo","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":2}]}},{"commit":"e825c02df1cdae67c7f335fe3c675685eb1a8d02","message":"add rsync tests","stats":{"files_changed":11,"insertions":605,"deletions":0,"files":["tests/fixtures/centos-7.7/rsync-i-logfile.json","tests/fixtures/centos-7.7/rsync-i-v-logfile.json","tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out","tests/fixtures/centos-7.7/rsync-i.json","tests/fixtures/centos-7.7/rsync-i.out","tests/fixtures/centos-7.7/rsync-ivvv.json","tests/fixtures/generic/rsync-i.json","tests/fixtures/generic/rsync-i.out","tests/test_rsync.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/rsync-i-logfile.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-v-logfile.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out","lines_changed":434},{"name":"tests/fixtures/centos-7.7/rsync-i.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i.out","lines_changed":28},{"name":"tests/fixtures/centos-7.7/rsync-ivvv.json","lines_changed":1},{"name":"tests/fixtures/generic/rsync-i.json","lines_changed":1},{"name":"tests/fixtures/generic/rsync-i.out","lines_changed":11},{"name":"tests/test_rsync.py","lines_changed":125}]}},{"commit":"a4a4d170b5ae8c189de982adea5bdc9bf1f26e6c","message":"update docstring","stats":{"files_changed":1,"insertions":10,"deletions":5,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":15}]}},{"commit":"d0fcd523cb2cbb59d0f90369721749b54222961d","message":"fix process conversions","stats":{"files_changed":1,"insertions":19,"deletions":17,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":36}]}},{"commit":"f72b7dc75dbd1c3f5daee3ecee28487258a04873","message":"change keyname to files and remove future key","stats":{"files_changed":1,"insertions":4,"deletions":8,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":12}]}},{"commit":"4101dc6bf7bab7d00899426e2f6271a7480d558f","message":"add log-file support","stats":{"files_changed":4,"insertions":1008,"deletions":19,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-v-logfile.out","tests/fixtures/centos-7.7/rsync-i-vv-logfile.out","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":60},{"name":"tests/fixtures/centos-7.7/rsync-i-v-logfile.out","lines_changed":61},{"name":"tests/fixtures/centos-7.7/rsync-i-vv-logfile.out","lines_changed":65},{"name":"tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out","lines_changed":841}]}},{"commit":"ea5011b616365b5c10c04416d43035d84e3dacba","message":"updated schema. add log-file option support","stats":{"files_changed":2,"insertions":175,"deletions":41,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-logfile.out"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":157},{"name":"tests/fixtures/centos-7.7/rsync-i-logfile.out","lines_changed":59}]}},{"commit":"d6de81747fd92642dbd5cb1fb097e375aa38be35","message":"add int/float conversions","stats":{"files_changed":1,"insertions":11,"deletions":3,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":14}]}},{"commit":"38f04b1c9699246d85332b20df5b6a91ae0c48d9","message":"add summary","stats":{"files_changed":1,"insertions":32,"deletions":7,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":39}]}},{"commit":"84169e1a913d035744f71472be81fe3a7d774b97","message":"add rsync parser","stats":{"files_changed":4,"insertions":637,"deletions":2,"files":["jc/lib.py","jc/parsers/rsync.py","setup.py","tests/fixtures/centos-7.7/rsync-ivvv.out"],"file_stats":[{"name":"jc/lib.py","lines_changed":3},{"name":"jc/parsers/rsync.py","lines_changed":212},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rsync-ivvv.out","lines_changed":422}]}},{"commit":"1f96586a5e883709f436526de6dcb21ff44bf97b","message":"reorder imports","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/foo.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":2}]}},{"commit":"681176e4c958157ef1f2151b3e57963a6ba48e09","message":"Merge pull request #203 from kellyjonbrazil/dev"},{"commit":"8bb266352207f95040b72750e5b3ae3b8ceb2b98","message":"date update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]}},{"commit":"663abf313931b49fad64b425ece6a5a257dc7938","message":"clean up scripts","stats":{"files_changed":4,"insertions":3,"deletions":4,"files":["MANIFEST.in","mangen.py","runtests.sh","updatedocs.sh"],"file_stats":[{"name":"MANIFEST.in","lines_changed":1},{"name":"mangen.py","lines_changed":3},{"name":"runtests.sh","lines_changed":1},{"name":"updatedocs.sh","lines_changed":2}]}},{"commit":"f7ac41db95c16fd21d83fbce678c5dec28ab40f0","message":"final doc update","stats":{"files_changed":2,"insertions":1,"deletions":13,"files":["README.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"man/jc.1","lines_changed":12}]}},{"commit":"5502cda9e591b531d6b452b02d8ec322c3287800","message":"add additional test for dict inside list for all_parser_info()","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["tests/test_lib.py"],"file_stats":[{"name":"tests/test_lib.py","lines_changed":3}]}},{"commit":"a2b165565f54d91489bf38577a0785e78a4523d8","message":"add lib tests for new functions","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["tests/test_lib.py"],"file_stats":[{"name":"tests/test_lib.py","lines_changed":21}]}},{"commit":"b426369815984bd2aae8bcb14e306ba73b8cd4ae","message":"use all_parser_info() from lib in about function","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":12}]}},{"commit":"ac0840cc0afb4aeee2c99076710c987e09cfa5f7","message":"fix typo","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]}},{"commit":"ee98ab0a4a7671ae34ee79f7b0b97c061a8c2944","message":"doc update","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/lib.md","docs/utils.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":6},{"name":"docs/utils.md","lines_changed":4}]}},{"commit":"2adec2c0035b84ca0242f2494b6c2651b9898ca5","message":"update type hints with mypy help","stats":{"files_changed":4,"insertions":21,"deletions":19,"files":["jc/lib.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/utils.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":18},{"name":"jc/parsers/foo.py","lines_changed":8},{"name":"jc/parsers/foo_s.py","lines_changed":10},{"name":"jc/utils.py","lines_changed":4}]}},{"commit":"f19c9c71bf4f592f55a5176458acd478b462fdbe","message":"add type hints","stats":{"files_changed":2,"insertions":15,"deletions":4,"files":["jc/parsers/foo.py","jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":9},{"name":"jc/parsers/foo_s.py","lines_changed":10}]}},{"commit":"e93adf1884c0006a64123513070a5fd96a940da2","message":"fix doc","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":5},{"name":"jc/__init__.py","lines_changed":5}]}},{"commit":"254c4fc507842ca72064c0196418a7b939d54d06","message":"add new functions","stats":{"files_changed":2,"insertions":20,"deletions":6,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":13},{"name":"jc/__init__.py","lines_changed":13}]}},{"commit":"74d5f60d14fc42cfd5768c7ffd6efc890a65d442","message":"update console interview description","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"db7dc0634bc17b4daadc8bc21bba5975c093efe5","message":"make **kwargs optional","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":2},{"name":"jc/lib.py","lines_changed":2}]}},{"commit":"e156b0db453e99fb0f74b618fd343218f978ff68","message":"add type hints","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":4},{"name":"jc/parsers/universal.py","lines_changed":5}]}},{"commit":"50adc05fbd6a0dcd9e4fb38aa41917bb57332f36","message":"formatting","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":6},{"name":"jc/utils.py","lines_changed":6}]}},{"commit":"446cac7c217103eb66cfdee97e3a208b7144b644","message":"doc update","stats":{"files_changed":2,"insertions":15,"deletions":11,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":11},{"name":"jc/utils.py","lines_changed":15}]}},{"commit":"28ffe3076bb5f23aeaf2624344856dbd02b4c0e8","message":"formatting","stats":{"files_changed":2,"insertions":8,"deletions":9,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":8},{"name":"jc/lib.py","lines_changed":9}]}},{"commit":"d4d5e206cae14acd25445952f820810818b3fdce","message":"type hints update","stats":{"files_changed":3,"insertions":40,"deletions":28,"files":["docs/lib.md","docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":15},{"name":"docs/utils.md","lines_changed":26},{"name":"jc/utils.py","lines_changed":27}]}},{"commit":"42fbe40a4ae02b9d09acdbf9b22573844959d2ad","message":"simplify type hints","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":11}]}},{"commit":"27e4a120e21dcbb3eadc6c4cf224ddb33859328d","message":"remove trailing comma","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":2},{"name":"jc/lib.py","lines_changed":2}]}},{"commit":"b5d5b7c73a96d4335b178ccfac60af90913e6f0f","message":"remove private classes","stats":{"files_changed":3,"insertions":29,"deletions":148,"files":["docgen.sh","docs/parsers/ifconfig.md","docs/parsers/traceroute.md"],"file_stats":[{"name":"docgen.sh","lines_changed":35},{"name":"docs/parsers/ifconfig.md","lines_changed":94},{"name":"docs/parsers/traceroute.md","lines_changed":48}]}},{"commit":"e7471556ba5fb0586ac5b0d7404cabd98a58db2e","message":"remove sed lines","stats":{"files_changed":1,"insertions":0,"deletions":5,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":5}]}},{"commit":"640a21341bb1c562cb2124155b511dfc74277fc0","message":"fix indentation","stats":{"files_changed":2,"insertions":47,"deletions":42,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":20},{"name":"jc/utils.py","lines_changed":69}]}},{"commit":"f5befad3e41ba2864abc795a2fdf63e0f1d37c21","message":"move docstring under __init__","stats":{"files_changed":2,"insertions":33,"deletions":25,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":21},{"name":"jc/utils.py","lines_changed":37}]}},{"commit":"f8223023c31093c1a34130b4e4cfc23b1d80a30c","message":"change header depth","stats":{"files_changed":4,"insertions":24,"deletions":10,"files":["docgen.sh","docs/parsers/ifconfig.md","docs/parsers/traceroute.md","docs/utils.md"],"file_stats":[{"name":"docgen.sh","lines_changed":28},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":2}]}},{"commit":"7028e87f9b411c0cfb92eee7fc0667cdcb9a54ff","message":"remove TOC for parsers","stats":{"files_changed":87,"insertions":22,"deletions":445,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md"],"file_stats":[{"name":"docgen.sh","lines_changed":26},{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/csv_s.md","lines_changed":5},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":14},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iostat.md","lines_changed":5},{"name":"docs/parsers/iostat_s.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jar_manifest.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/ping_s.md","lines_changed":5},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/sfdisk.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/stat_s.md","lines_changed":5},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/systeminfo.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":8},{"name":"docs/parsers/ufw.md","lines_changed":5},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/vmstat.md","lines_changed":5},{"name":"docs/parsers/vmstat_s.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5},{"name":"docs/parsers/zipinfo.md","lines_changed":5},{"name":"docs/readme.md","lines_changed":4}]}},{"commit":"590728f9c1ccfdc078e600d1f35ad4ba51f70d36","message":"try new pydoc-markdown formatting options","stats":{"files_changed":91,"insertions":506,"deletions":17,"files":["docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/utils.md","jc/lib.py"],"file_stats":[{"name":"docgen.sh","lines_changed":28},{"name":"docs/lib.md","lines_changed":13},{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/csv_s.md","lines_changed":5},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":14},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iostat.md","lines_changed":5},{"name":"docs/parsers/iostat_s.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jar_manifest.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/ping_s.md","lines_changed":5},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/sfdisk.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/stat_s.md","lines_changed":5},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/systeminfo.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":8},{"name":"docs/parsers/ufw.md","lines_changed":5},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/universal.md","lines_changed":6},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/vmstat.md","lines_changed":5},{"name":"docs/parsers/vmstat_s.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5},{"name":"docs/parsers/zipinfo.md","lines_changed":5},{"name":"docs/readme.md","lines_changed":4},{"name":"docs/utils.md","lines_changed":17},{"name":"jc/lib.py","lines_changed":18}]}},{"commit":"7cc147fe2d7b278bcab905bc4c3b70b5265e1510","message":"increase heading size","stats":{"files_changed":2,"insertions":4,"deletions":44,"files":["docgen.sh","docgen.sh.old"],"file_stats":[{"name":"docgen.sh","lines_changed":4},{"name":"docgen.sh.old","lines_changed":44}]}},{"commit":"3cfb3965bb25024a7b03870b71f02194e278919b","message":"formatting","stats":{"files_changed":3,"insertions":19,"deletions":19,"files":["docs/lib.md","docs/parsers/universal.md","docs/utils.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":10},{"name":"docs/parsers/universal.md","lines_changed":4},{"name":"docs/utils.md","lines_changed":24}]}},{"commit":"155d4213225fe4fcf4a059fb63c1ab9fc493177e","message":"formatting","stats":{"files_changed":86,"insertions":182,"deletions":181,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"],"file_stats":[{"name":"docgen.sh","lines_changed":3},{"name":"docs/parsers/acpi.md","lines_changed":4},{"name":"docs/parsers/airport.md","lines_changed":4},{"name":"docs/parsers/airport_s.md","lines_changed":4},{"name":"docs/parsers/arp.md","lines_changed":4},{"name":"docs/parsers/blkid.md","lines_changed":4},{"name":"docs/parsers/cksum.md","lines_changed":4},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"docs/parsers/crontab_u.md","lines_changed":4},{"name":"docs/parsers/csv.md","lines_changed":4},{"name":"docs/parsers/csv_s.md","lines_changed":4},{"name":"docs/parsers/date.md","lines_changed":4},{"name":"docs/parsers/df.md","lines_changed":4},{"name":"docs/parsers/dig.md","lines_changed":4},{"name":"docs/parsers/dir.md","lines_changed":4},{"name":"docs/parsers/dmidecode.md","lines_changed":4},{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"docs/parsers/du.md","lines_changed":4},{"name":"docs/parsers/env.md","lines_changed":4},{"name":"docs/parsers/file.md","lines_changed":4},{"name":"docs/parsers/finger.md","lines_changed":4},{"name":"docs/parsers/free.md","lines_changed":4},{"name":"docs/parsers/fstab.md","lines_changed":4},{"name":"docs/parsers/group.md","lines_changed":4},{"name":"docs/parsers/gshadow.md","lines_changed":4},{"name":"docs/parsers/hash.md","lines_changed":4},{"name":"docs/parsers/hashsum.md","lines_changed":4},{"name":"docs/parsers/hciconfig.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":4},{"name":"docs/parsers/hosts.md","lines_changed":4},{"name":"docs/parsers/id.md","lines_changed":4},{"name":"docs/parsers/ifconfig.md","lines_changed":20},{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"docs/parsers/iostat.md","lines_changed":4},{"name":"docs/parsers/iostat_s.md","lines_changed":4},{"name":"docs/parsers/iptables.md","lines_changed":4},{"name":"docs/parsers/iw_scan.md","lines_changed":4},{"name":"docs/parsers/jar_manifest.md","lines_changed":4},{"name":"docs/parsers/jobs.md","lines_changed":4},{"name":"docs/parsers/kv.md","lines_changed":4},{"name":"docs/parsers/last.md","lines_changed":4},{"name":"docs/parsers/ls.md","lines_changed":4},{"name":"docs/parsers/ls_s.md","lines_changed":4},{"name":"docs/parsers/lsblk.md","lines_changed":4},{"name":"docs/parsers/lsmod.md","lines_changed":4},{"name":"docs/parsers/lsof.md","lines_changed":4},{"name":"docs/parsers/lsusb.md","lines_changed":4},{"name":"docs/parsers/mount.md","lines_changed":4},{"name":"docs/parsers/netstat.md","lines_changed":4},{"name":"docs/parsers/ntpq.md","lines_changed":4},{"name":"docs/parsers/passwd.md","lines_changed":4},{"name":"docs/parsers/ping.md","lines_changed":4},{"name":"docs/parsers/ping_s.md","lines_changed":4},{"name":"docs/parsers/pip_list.md","lines_changed":4},{"name":"docs/parsers/pip_show.md","lines_changed":4},{"name":"docs/parsers/ps.md","lines_changed":4},{"name":"docs/parsers/route.md","lines_changed":4},{"name":"docs/parsers/rpm_qi.md","lines_changed":4},{"name":"docs/parsers/sfdisk.md","lines_changed":4},{"name":"docs/parsers/shadow.md","lines_changed":4},{"name":"docs/parsers/ss.md","lines_changed":4},{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"docs/parsers/stat_s.md","lines_changed":4},{"name":"docs/parsers/sysctl.md","lines_changed":4},{"name":"docs/parsers/systemctl.md","lines_changed":4},{"name":"docs/parsers/systemctl_lj.md","lines_changed":4},{"name":"docs/parsers/systemctl_ls.md","lines_changed":4},{"name":"docs/parsers/systemctl_luf.md","lines_changed":4},{"name":"docs/parsers/systeminfo.md","lines_changed":4},{"name":"docs/parsers/time.md","lines_changed":4},{"name":"docs/parsers/timedatectl.md","lines_changed":4},{"name":"docs/parsers/tracepath.md","lines_changed":4},{"name":"docs/parsers/traceroute.md","lines_changed":8},{"name":"docs/parsers/ufw.md","lines_changed":4},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":4},{"name":"docs/parsers/uname.md","lines_changed":4},{"name":"docs/parsers/upower.md","lines_changed":4},{"name":"docs/parsers/uptime.md","lines_changed":4},{"name":"docs/parsers/vmstat.md","lines_changed":4},{"name":"docs/parsers/vmstat_s.md","lines_changed":4},{"name":"docs/parsers/w.md","lines_changed":4},{"name":"docs/parsers/wc.md","lines_changed":4},{"name":"docs/parsers/who.md","lines_changed":4},{"name":"docs/parsers/xml.md","lines_changed":4},{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"docs/parsers/zipinfo.md","lines_changed":4}]}},{"commit":"d3e10bb87bdb32396bce95f74e62a023f4efaf99","message":"add lsusb docs","stats":{"files_changed":1,"insertions":291,"deletions":0,"files":["docs/parsers/lsusb.md"],"file_stats":[{"name":"docs/parsers/lsusb.md","lines_changed":291}]}},{"commit":"fd5433ee6220357e59633c78b689aa432d056b43","message":"parse docstring formatting","stats":{"files_changed":3,"insertions":6,"deletions":293,"files":["docs/lib.md","docs/parsers/lsusb.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":4},{"name":"docs/parsers/lsusb.md","lines_changed":291},{"name":"jc/lib.py","lines_changed":4}]}},{"commit":"4568f2d06e8fc1c465c86c318d925586481af062","message":"formatting for parse docstring","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":4},{"name":"jc/lib.py","lines_changed":4}]}},{"commit":"c36e513d1bcc07cd8f01ff59199950e5396da51b","message":"formatting","stats":{"files_changed":86,"insertions":88,"deletions":91,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"],"file_stats":[{"name":"docgen.sh","lines_changed":9},{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/dpkg_l.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/finger.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/gshadow.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iostat.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/jar_manifest.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/kv.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/stat_s.md","lines_changed":2},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"docs/parsers/zipinfo.md","lines_changed":2}]}},{"commit":"8e089baf3fe30fed80e1c5cdde7c3046bb70ca5a","message":"remove info class from docs","stats":{"files_changed":86,"insertions":8,"deletions":855,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"],"file_stats":[{"name":"docgen.sh","lines_changed":13},{"name":"docs/parsers/acpi.md","lines_changed":10},{"name":"docs/parsers/airport.md","lines_changed":10},{"name":"docs/parsers/airport_s.md","lines_changed":10},{"name":"docs/parsers/arp.md","lines_changed":10},{"name":"docs/parsers/blkid.md","lines_changed":10},{"name":"docs/parsers/cksum.md","lines_changed":10},{"name":"docs/parsers/crontab.md","lines_changed":10},{"name":"docs/parsers/crontab_u.md","lines_changed":10},{"name":"docs/parsers/csv.md","lines_changed":10},{"name":"docs/parsers/csv_s.md","lines_changed":10},{"name":"docs/parsers/date.md","lines_changed":10},{"name":"docs/parsers/df.md","lines_changed":10},{"name":"docs/parsers/dig.md","lines_changed":10},{"name":"docs/parsers/dir.md","lines_changed":10},{"name":"docs/parsers/dmidecode.md","lines_changed":10},{"name":"docs/parsers/dpkg_l.md","lines_changed":10},{"name":"docs/parsers/du.md","lines_changed":10},{"name":"docs/parsers/env.md","lines_changed":10},{"name":"docs/parsers/file.md","lines_changed":10},{"name":"docs/parsers/finger.md","lines_changed":10},{"name":"docs/parsers/free.md","lines_changed":10},{"name":"docs/parsers/fstab.md","lines_changed":10},{"name":"docs/parsers/group.md","lines_changed":10},{"name":"docs/parsers/gshadow.md","lines_changed":10},{"name":"docs/parsers/hash.md","lines_changed":10},{"name":"docs/parsers/hashsum.md","lines_changed":10},{"name":"docs/parsers/hciconfig.md","lines_changed":10},{"name":"docs/parsers/history.md","lines_changed":10},{"name":"docs/parsers/hosts.md","lines_changed":10},{"name":"docs/parsers/id.md","lines_changed":10},{"name":"docs/parsers/ifconfig.md","lines_changed":10},{"name":"docs/parsers/ini.md","lines_changed":10},{"name":"docs/parsers/iostat.md","lines_changed":10},{"name":"docs/parsers/iostat_s.md","lines_changed":10},{"name":"docs/parsers/iptables.md","lines_changed":10},{"name":"docs/parsers/iw_scan.md","lines_changed":10},{"name":"docs/parsers/jar_manifest.md","lines_changed":10},{"name":"docs/parsers/jobs.md","lines_changed":10},{"name":"docs/parsers/kv.md","lines_changed":10},{"name":"docs/parsers/last.md","lines_changed":10},{"name":"docs/parsers/ls.md","lines_changed":10},{"name":"docs/parsers/ls_s.md","lines_changed":10},{"name":"docs/parsers/lsblk.md","lines_changed":10},{"name":"docs/parsers/lsmod.md","lines_changed":10},{"name":"docs/parsers/lsof.md","lines_changed":10},{"name":"docs/parsers/lsusb.md","lines_changed":10},{"name":"docs/parsers/mount.md","lines_changed":10},{"name":"docs/parsers/netstat.md","lines_changed":10},{"name":"docs/parsers/ntpq.md","lines_changed":10},{"name":"docs/parsers/passwd.md","lines_changed":10},{"name":"docs/parsers/ping.md","lines_changed":10},{"name":"docs/parsers/ping_s.md","lines_changed":10},{"name":"docs/parsers/pip_list.md","lines_changed":10},{"name":"docs/parsers/pip_show.md","lines_changed":10},{"name":"docs/parsers/ps.md","lines_changed":10},{"name":"docs/parsers/route.md","lines_changed":10},{"name":"docs/parsers/rpm_qi.md","lines_changed":10},{"name":"docs/parsers/sfdisk.md","lines_changed":10},{"name":"docs/parsers/shadow.md","lines_changed":10},{"name":"docs/parsers/ss.md","lines_changed":10},{"name":"docs/parsers/stat.md","lines_changed":10},{"name":"docs/parsers/stat_s.md","lines_changed":10},{"name":"docs/parsers/sysctl.md","lines_changed":10},{"name":"docs/parsers/systemctl.md","lines_changed":10},{"name":"docs/parsers/systemctl_lj.md","lines_changed":10},{"name":"docs/parsers/systemctl_ls.md","lines_changed":10},{"name":"docs/parsers/systemctl_luf.md","lines_changed":10},{"name":"docs/parsers/systeminfo.md","lines_changed":10},{"name":"docs/parsers/time.md","lines_changed":10},{"name":"docs/parsers/timedatectl.md","lines_changed":10},{"name":"docs/parsers/tracepath.md","lines_changed":10},{"name":"docs/parsers/traceroute.md","lines_changed":10},{"name":"docs/parsers/ufw.md","lines_changed":10},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":10},{"name":"docs/parsers/uname.md","lines_changed":10},{"name":"docs/parsers/upower.md","lines_changed":10},{"name":"docs/parsers/uptime.md","lines_changed":10},{"name":"docs/parsers/vmstat.md","lines_changed":10},{"name":"docs/parsers/vmstat_s.md","lines_changed":10},{"name":"docs/parsers/w.md","lines_changed":10},{"name":"docs/parsers/wc.md","lines_changed":10},{"name":"docs/parsers/who.md","lines_changed":10},{"name":"docs/parsers/xml.md","lines_changed":10},{"name":"docs/parsers/yaml.md","lines_changed":10},{"name":"docs/parsers/zipinfo.md","lines_changed":10}]}},{"commit":"386f6c317e104e797c2b55e3d21c8b064a83ac78","message":"update markdown processor settings","stats":{"files_changed":89,"insertions":9552,"deletions":9939,"files":["docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/utils.md"],"file_stats":[{"name":"docgen.sh","lines_changed":10},{"name":"docs/lib.md","lines_changed":105},{"name":"docs/parsers/acpi.md","lines_changed":440},{"name":"docs/parsers/airport.md","lines_changed":146},{"name":"docs/parsers/airport_s.md","lines_changed":202},{"name":"docs/parsers/arp.md","lines_changed":220},{"name":"docs/parsers/blkid.md","lines_changed":230},{"name":"docs/parsers/cksum.md","lines_changed":90},{"name":"docs/parsers/crontab.md","lines_changed":330},{"name":"docs/parsers/crontab_u.md","lines_changed":326},{"name":"docs/parsers/csv.md","lines_changed":140},{"name":"docs/parsers/csv_s.md","lines_changed":114},{"name":"docs/parsers/date.md","lines_changed":132},{"name":"docs/parsers/df.md","lines_changed":184},{"name":"docs/parsers/dig.md","lines_changed":614},{"name":"docs/parsers/dir.md","lines_changed":210},{"name":"docs/parsers/dmidecode.md","lines_changed":240},{"name":"docs/parsers/dpkg_l.md","lines_changed":244},{"name":"docs/parsers/du.md","lines_changed":164},{"name":"docs/parsers/env.md","lines_changed":126},{"name":"docs/parsers/file.md","lines_changed":114},{"name":"docs/parsers/finger.md","lines_changed":166},{"name":"docs/parsers/free.md","lines_changed":134},{"name":"docs/parsers/fstab.md","lines_changed":164},{"name":"docs/parsers/group.md","lines_changed":212},{"name":"docs/parsers/gshadow.md","lines_changed":148},{"name":"docs/parsers/hash.md","lines_changed":68},{"name":"docs/parsers/hashsum.md","lines_changed":106},{"name":"docs/parsers/hciconfig.md","lines_changed":620},{"name":"docs/parsers/history.md","lines_changed":106},{"name":"docs/parsers/hosts.md","lines_changed":142},{"name":"docs/parsers/id.md","lines_changed":200},{"name":"docs/parsers/ifconfig.md","lines_changed":388},{"name":"docs/parsers/ini.md","lines_changed":110},{"name":"docs/parsers/iostat.md","lines_changed":304},{"name":"docs/parsers/iostat_s.md","lines_changed":198},{"name":"docs/parsers/iptables.md","lines_changed":312},{"name":"docs/parsers/iw_scan.md","lines_changed":226},{"name":"docs/parsers/jar_manifest.md","lines_changed":148},{"name":"docs/parsers/jobs.md","lines_changed":170},{"name":"docs/parsers/kv.md","lines_changed":86},{"name":"docs/parsers/last.md","lines_changed":186},{"name":"docs/parsers/ls.md","lines_changed":190},{"name":"docs/parsers/ls_s.md","lines_changed":130},{"name":"docs/parsers/lsblk.md","lines_changed":534},{"name":"docs/parsers/lsmod.md","lines_changed":240},{"name":"docs/parsers/lsof.md","lines_changed":228},{"name":"docs/parsers/lsusb.md","lines_changed":502},{"name":"docs/parsers/mount.md","lines_changed":140},{"name":"docs/parsers/netstat.md","lines_changed":688},{"name":"docs/parsers/ntpq.md","lines_changed":402},{"name":"docs/parsers/passwd.md","lines_changed":182},{"name":"docs/parsers/ping.md","lines_changed":308},{"name":"docs/parsers/ping_s.md","lines_changed":160},{"name":"docs/parsers/pip_list.md","lines_changed":84},{"name":"docs/parsers/pip_show.md","lines_changed":120},{"name":"docs/parsers/ps.md","lines_changed":394},{"name":"docs/parsers/route.md","lines_changed":206},{"name":"docs/parsers/rpm_qi.md","lines_changed":296},{"name":"docs/parsers/sfdisk.md","lines_changed":376},{"name":"docs/parsers/shadow.md","lines_changed":196},{"name":"docs/parsers/ss.md","lines_changed":538},{"name":"docs/parsers/stat.md","lines_changed":318},{"name":"docs/parsers/stat_s.md","lines_changed":152},{"name":"docs/parsers/sysctl.md","lines_changed":100},{"name":"docs/parsers/systemctl.md","lines_changed":106},{"name":"docs/parsers/systemctl_lj.md","lines_changed":140},{"name":"docs/parsers/systemctl_ls.md","lines_changed":90},{"name":"docs/parsers/systemctl_luf.md","lines_changed":82},{"name":"docs/parsers/systeminfo.md","lines_changed":396},{"name":"docs/parsers/time.md","lines_changed":242},{"name":"docs/parsers/timedatectl.md","lines_changed":112},{"name":"docs/parsers/tracepath.md","lines_changed":248},{"name":"docs/parsers/traceroute.md","lines_changed":220},{"name":"docs/parsers/ufw.md","lines_changed":390},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":250},{"name":"docs/parsers/uname.md","lines_changed":80},{"name":"docs/parsers/universal.md","lines_changed":72},{"name":"docs/parsers/upower.md","lines_changed":374},{"name":"docs/parsers/uptime.md","lines_changed":120},{"name":"docs/parsers/vmstat.md","lines_changed":226},{"name":"docs/parsers/vmstat_s.md","lines_changed":172},{"name":"docs/parsers/w.md","lines_changed":196},{"name":"docs/parsers/wc.md","lines_changed":98},{"name":"docs/parsers/who.md","lines_changed":250},{"name":"docs/parsers/xml.md","lines_changed":134},{"name":"docs/parsers/yaml.md","lines_changed":162},{"name":"docs/parsers/zipinfo.md","lines_changed":138},{"name":"docs/utils.md","lines_changed":134}]}},{"commit":"75cd84ce8a86b3357c6cf5fe4fbc62d0f298a29a","message":"try new markdown conversion","stats":{"files_changed":94,"insertions":11423,"deletions":10081,"files":["README.md","docgen.sh","docgen.sh.old","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/utils.md","jc/cli.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docgen.sh","lines_changed":12},{"name":"docgen.sh.old","lines_changed":44},{"name":"docs/lib.md","lines_changed":151},{"name":"docs/parsers/acpi.md","lines_changed":454},{"name":"docs/parsers/airport.md","lines_changed":166},{"name":"docs/parsers/airport_s.md","lines_changed":224},{"name":"docs/parsers/arp.md","lines_changed":240},{"name":"docs/parsers/blkid.md","lines_changed":250},{"name":"docs/parsers/cksum.md","lines_changed":110},{"name":"docs/parsers/crontab.md","lines_changed":350},{"name":"docs/parsers/crontab_u.md","lines_changed":348},{"name":"docs/parsers/csv.md","lines_changed":160},{"name":"docs/parsers/csv_s.md","lines_changed":120},{"name":"docs/parsers/date.md","lines_changed":152},{"name":"docs/parsers/df.md","lines_changed":204},{"name":"docs/parsers/dig.md","lines_changed":634},{"name":"docs/parsers/dir.md","lines_changed":230},{"name":"docs/parsers/dmidecode.md","lines_changed":260},{"name":"docs/parsers/dpkg_l.md","lines_changed":266},{"name":"docs/parsers/du.md","lines_changed":184},{"name":"docs/parsers/env.md","lines_changed":146},{"name":"docs/parsers/file.md","lines_changed":134},{"name":"docs/parsers/finger.md","lines_changed":186},{"name":"docs/parsers/free.md","lines_changed":154},{"name":"docs/parsers/fstab.md","lines_changed":184},{"name":"docs/parsers/group.md","lines_changed":232},{"name":"docs/parsers/gshadow.md","lines_changed":168},{"name":"docs/parsers/hash.md","lines_changed":88},{"name":"docs/parsers/hashsum.md","lines_changed":126},{"name":"docs/parsers/hciconfig.md","lines_changed":634},{"name":"docs/parsers/history.md","lines_changed":126},{"name":"docs/parsers/hosts.md","lines_changed":162},{"name":"docs/parsers/id.md","lines_changed":220},{"name":"docs/parsers/ifconfig.md","lines_changed":472},{"name":"docs/parsers/ini.md","lines_changed":130},{"name":"docs/parsers/iostat.md","lines_changed":324},{"name":"docs/parsers/iostat_s.md","lines_changed":220},{"name":"docs/parsers/iptables.md","lines_changed":332},{"name":"docs/parsers/iw_scan.md","lines_changed":248},{"name":"docs/parsers/jar_manifest.md","lines_changed":170},{"name":"docs/parsers/jobs.md","lines_changed":190},{"name":"docs/parsers/kv.md","lines_changed":106},{"name":"docs/parsers/last.md","lines_changed":207},{"name":"docs/parsers/ls.md","lines_changed":210},{"name":"docs/parsers/ls_s.md","lines_changed":152},{"name":"docs/parsers/lsblk.md","lines_changed":548},{"name":"docs/parsers/lsmod.md","lines_changed":260},{"name":"docs/parsers/lsof.md","lines_changed":248},{"name":"docs/parsers/lsusb.md","lines_changed":518},{"name":"docs/parsers/mount.md","lines_changed":160},{"name":"docs/parsers/netstat.md","lines_changed":702},{"name":"docs/parsers/ntpq.md","lines_changed":422},{"name":"docs/parsers/passwd.md","lines_changed":202},{"name":"docs/parsers/ping.md","lines_changed":328},{"name":"docs/parsers/ping_s.md","lines_changed":182},{"name":"docs/parsers/pip_list.md","lines_changed":106},{"name":"docs/parsers/pip_show.md","lines_changed":142},{"name":"docs/parsers/ps.md","lines_changed":414},{"name":"docs/parsers/route.md","lines_changed":226},{"name":"docs/parsers/rpm_qi.md","lines_changed":318},{"name":"docs/parsers/sfdisk.md","lines_changed":396},{"name":"docs/parsers/shadow.md","lines_changed":216},{"name":"docs/parsers/ss.md","lines_changed":552},{"name":"docs/parsers/stat.md","lines_changed":338},{"name":"docs/parsers/stat_s.md","lines_changed":174},{"name":"docs/parsers/sysctl.md","lines_changed":120},{"name":"docs/parsers/systemctl.md","lines_changed":126},{"name":"docs/parsers/systemctl_lj.md","lines_changed":162},{"name":"docs/parsers/systemctl_ls.md","lines_changed":112},{"name":"docs/parsers/systemctl_luf.md","lines_changed":104},{"name":"docs/parsers/systeminfo.md","lines_changed":416},{"name":"docs/parsers/time.md","lines_changed":262},{"name":"docs/parsers/timedatectl.md","lines_changed":132},{"name":"docs/parsers/tracepath.md","lines_changed":268},{"name":"docs/parsers/traceroute.md","lines_changed":288},{"name":"docs/parsers/ufw.md","lines_changed":410},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":272},{"name":"docs/parsers/uname.md","lines_changed":100},{"name":"docs/parsers/universal.md","lines_changed":85},{"name":"docs/parsers/upower.md","lines_changed":394},{"name":"docs/parsers/uptime.md","lines_changed":140},{"name":"docs/parsers/vmstat.md","lines_changed":246},{"name":"docs/parsers/vmstat_s.md","lines_changed":194},{"name":"docs/parsers/w.md","lines_changed":216},{"name":"docs/parsers/wc.md","lines_changed":118},{"name":"docs/parsers/who.md","lines_changed":270},{"name":"docs/parsers/xml.md","lines_changed":154},{"name":"docs/parsers/yaml.md","lines_changed":182},{"name":"docs/parsers/zipinfo.md","lines_changed":158},{"name":"docs/readme.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":223},{"name":"jc/cli.py","lines_changed":4},{"name":"man/jc.1","lines_changed":12}]}},{"commit":"6fad44e35df5d0e33e716d0fcb84ed309e6fd30b","message":"fix type hint","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]}},{"commit":"1caac750daa25a5abeb1289964e918ec06289bfc","message":"Update type hints","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":4}]}},{"commit":"16370dcb3d5cf1304c2340ef2253ef2987a982b4","message":"update type hints","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]}},{"commit":"c1302f2573993a6908001d6df0697486f54a9e7e","message":"add type-hints to public api","stats":{"files_changed":1,"insertions":19,"deletions":8,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":27}]}},{"commit":"6f0ffe0955e4d9d6cc82552cf4e4f419e3ff3756","message":"docu update","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]}},{"commit":"1f89745fe7cca3a0ac27445942098b717675a481","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"a46ac18ef775bb2c52675e61e11c5d92f33cbe81","message":"doc update","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]}},{"commit":"1a05f1c575b57456481e41baaf551cef30115966","message":"add parser info functions. move _get_parser functionality from cli to lib","stats":{"files_changed":3,"insertions":64,"deletions":54,"files":["jc/__init__.py","jc/cli.py","jc/lib.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":4},{"name":"jc/cli.py","lines_changed":48},{"name":"jc/lib.py","lines_changed":66}]}},{"commit":"08f818aa42ca68050a79ec387c42bff265257fd5","message":"Merge pull request #199 from kellyjonbrazil/master"},{"commit":"b3896650c230b4acc73704a50c93ee74e4034eef","message":"revert column formatting","stats":{"files_changed":2,"insertions":62,"deletions":104,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":83},{"name":"templates/readme_template","lines_changed":83}]}},{"commit":"f285539526998a5097943c71dcecb2979036b2b0","message":"conform to 80 columns","stats":{"files_changed":2,"insertions":104,"deletions":62,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":83},{"name":"templates/readme_template","lines_changed":83}]}},{"commit":"a896dcdf3b31b60582ebb1b3bca5d1103f998dd6","message":"formatting","stats":{"files_changed":2,"insertions":338,"deletions":120,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":229},{"name":"templates/readme_template","lines_changed":229}]}},{"commit":"0a187d4ed08173ec360a006ae2367bb1f2f96c52","message":"add console interview links","stats":{"files_changed":3,"insertions":7,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":4}]}},{"commit":"2d65bc57d5a396e6683f970194de29494b5c1272","message":"add quotes","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":6},{"name":"jc/__init__.py","lines_changed":6}]}},{"commit":"ab63809fde0cefe1f0401d957a3736fdb760f0cf","message":"update description","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]}},{"commit":"6f04707dc63936efd0e533ae36e1b39ead10c466","message":"add python package doc info to top of page","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"d14a86a9b58bdc3cb0c8df1dfa495aefdaab8033","message":"fix typo","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2}]}},{"commit":"8e6a31d3da19926ac46744e02b27a899ca5fbd7c","message":"minor fix for macOS binary","stats":{"files_changed":6,"insertions":14,"deletions":8,"files":["CHANGELOG","docs/readme.md","jc/__init__.py","jc/lib.py","man/jc.1","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4},{"name":"jc/lib.py","lines_changed":7},{"name":"man/jc.1","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"6e7b6afe87355e96422bb2560ffcbd5e79d28f04","message":"Merge pull request #198 from kellyjonbrazil/dev"},{"commit":"027c231097a002526350a93322407582a85db0cb","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]}},{"commit":"f1cf7d1f953586dd44a4463d924f1a1f52717c37","message":"add helper function info","stats":{"files_changed":2,"insertions":7,"deletions":5,"files":["jc/parsers/foo.py","jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":6},{"name":"jc/parsers/foo_s.py","lines_changed":6}]}},{"commit":"df611cc263f50285e74ceb3381f55b43a74870a0","message":"formatting","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":6},{"name":"jc/__init__.py","lines_changed":6}]}},{"commit":"0f3143bbbb593340190e66729580146410012e14","message":"formatting","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":6},{"name":"jc/__init__.py","lines_changed":6}]}},{"commit":"c280757b7624a46543e481ca47a6e084d2d6f519","message":"formatting","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]}},{"commit":"d30b9d84ef5ec3a2a504f7ea251c932b8c9ea878","message":"formatting","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]}},{"commit":"50ded1dbd97d26cf01d7e1a98b40e0f0f7d02202","message":"doc update","stats":{"files_changed":1,"insertions":10,"deletions":4,"files":["docs/readme.md"],"file_stats":[{"name":"docs/readme.md","lines_changed":14}]}},{"commit":"e319aea5a45c598a44f35b4e58131d977509e4f3","message":"add doc version info","stats":{"files_changed":1,"insertions":10,"deletions":4,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":14}]}},{"commit":"ba86509c1d8700a50fe14e9d931ee57261306c5f","message":"simplify OSError exception handling","stats":{"files_changed":1,"insertions":3,"deletions":9,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":12}]}},{"commit":"0a9279ae6bfdd1aa59f5e9b31ce0af3bfec19f96","message":"doc update","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["CHANGELOG","tests/test_lib.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":5},{"name":"tests/test_lib.py","lines_changed":1}]}},{"commit":"a13dde12af01b4473aa9a34b8a0d7387fb48500a","message":"change raw output wording","stats":{"files_changed":173,"insertions":173,"deletions":173,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/dpkg_l.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/finger.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/gshadow.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iostat.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/jar_manifest.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/kv.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/stat_s.md","lines_changed":2},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"docs/parsers/zipinfo.md","lines_changed":2},{"name":"jc/parsers/acpi.py","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/blkid.py","lines_changed":2},{"name":"jc/parsers/cksum.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"jc/parsers/csv.py","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/dir.py","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":2},{"name":"jc/parsers/dpkg_l.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/finger.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/group.py","lines_changed":2},{"name":"jc/parsers/gshadow.py","lines_changed":2},{"name":"jc/parsers/hash.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":2},{"name":"jc/parsers/hciconfig.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/iostat.py","lines_changed":2},{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2},{"name":"jc/parsers/jar_manifest.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/kv.py","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/lsusb.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/ntpq.py","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":2},{"name":"jc/parsers/ping.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/rpm_qi.py","lines_changed":2},{"name":"jc/parsers/sfdisk.py","lines_changed":2},{"name":"jc/parsers/shadow.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/stat_s.py","lines_changed":2},{"name":"jc/parsers/sysctl.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/systeminfo.py","lines_changed":2},{"name":"jc/parsers/time.py","lines_changed":2},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/ufw.py","lines_changed":2},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/parsers/wc.py","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":2},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2},{"name":"jc/parsers/zipinfo.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"e2ed358de1abefd737c187a324cbe4734d6975e8","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]}},{"commit":"a2cd3666210be3727a00c3405972f32fbd421046","message":"Delete _config.yml","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["docs/_config.yml"],"file_stats":[{"name":"docs/_config.yml","lines_changed":1}]}},{"commit":"15addd9bfc18a0e87beb97040b431c872b783662","message":"doc fix","stats":{"files_changed":2,"insertions":4,"deletions":8,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":5},{"name":"jc/parsers/universal.py","lines_changed":7}]}},{"commit":"a4e34b0053ec0c032f4783caaa3e07fc2c685a98","message":"add universal parser docs","stats":{"files_changed":2,"insertions":63,"deletions":0,"files":["docgen.sh","docs/parsers/universal.md"],"file_stats":[{"name":"docgen.sh","lines_changed":3},{"name":"docs/parsers/universal.md","lines_changed":60}]}},{"commit":"d09529ac302fbcc156d58cf836f8397c98121a76","message":"changelog update","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]}},{"commit":"553097b5050dc02fbdaeec2e2e138e01bc6811d9","message":"docstring update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":2}]}},{"commit":"49c556857708307f617b2b516f2d281398681b5b","message":"module doc update","stats":{"files_changed":7,"insertions":35,"deletions":15,"files":["README.md","docs/lib.md","docs/readme.md","jc/__init__.py","jc/lib.py","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/lib.md","lines_changed":9},{"name":"docs/readme.md","lines_changed":13},{"name":"jc/__init__.py","lines_changed":13},{"name":"jc/lib.py","lines_changed":9},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"6962b9ee8a52c924dc2de6b79ddeea3636e80fe4","message":"formatting","stats":{"files_changed":2,"insertions":8,"deletions":6,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":7},{"name":"jc/lib.py","lines_changed":7}]}},{"commit":"b4575a3f780f9aa2751c8b4789f67aaca32dd1cb","message":"add lib docs","stats":{"files_changed":3,"insertions":91,"deletions":1,"files":["docgen.sh","docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docgen.sh","lines_changed":4},{"name":"docs/lib.md","lines_changed":86},{"name":"jc/lib.py","lines_changed":2}]}},{"commit":"35b54d235d73b2ce658223be3d6095906f142d89","message":"add python package doc info","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"templates/readme_template","lines_changed":3}]}},{"commit":"583a5757e454a4e36b331057d1266279b55ee16a","message":"formatting","stats":{"files_changed":18,"insertions":34,"deletions":30,"files":["docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/file.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/traceroute.md","docs/parsers/ufw_appinfo.md","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/file.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/traceroute.py","jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":6},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":9},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":6},{"name":"jc/parsers/ls.py","lines_changed":5},{"name":"jc/parsers/ls_s.py","lines_changed":9},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":2}]}},{"commit":"f355333eeed3c4afba844dc7bed5224356552adc","message":"formatting","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":8},{"name":"jc/__init__.py","lines_changed":8}]}},{"commit":"4d7df109604e4f8367904968602acfc05217a7fe","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]}},{"commit":"66b2c28f4bc75fb76800f9fb7ea485eee194a9a2","message":"formatting","stats":{"files_changed":2,"insertions":24,"deletions":24,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":24},{"name":"jc/__init__.py","lines_changed":24}]}},{"commit":"299a9c6d88fdf1fede447b4057d8f4263daef733","message":"formatting","stats":{"files_changed":2,"insertions":25,"deletions":57,"files":["docs/parsers/csv.md","docs/readme.md"],"file_stats":[{"name":"docs/parsers/csv.md","lines_changed":4},{"name":"docs/readme.md","lines_changed":78}]}},{"commit":"bd391d979ce98b126dab0f012a56b3fcb1f73439","message":"add lib function docs","stats":{"files_changed":1,"insertions":23,"deletions":55,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":78}]}},{"commit":"7309bd2282445f6daef0b1491ff60b8104500abb","message":"add get_help","stats":{"files_changed":3,"insertions":19,"deletions":10,"files":["jc/lib.py","jc/parsers/csv.py","jc/parsers/universal.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":15},{"name":"jc/parsers/csv.py","lines_changed":4},{"name":"jc/parsers/universal.py","lines_changed":10}]}},{"commit":"ce84c09d3394b598f19a3e012ef27ce4154e3b3b","message":"add get_help()","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":3}]}},{"commit":"b4fffbb6476daf78fbdf19dbf31bbeeab950d2dc","message":"formatting","stats":{"files_changed":46,"insertions":501,"deletions":304,"files":["docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/history.md","docs/parsers/ini.md","docs/parsers/iostat_s.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsusb.md","docs/parsers/netstat.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/ps.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/upower.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/who.md"],"file_stats":[{"name":"docs/parsers/crontab.md","lines_changed":3},{"name":"docs/parsers/crontab_u.md","lines_changed":22},{"name":"docs/parsers/csv.md","lines_changed":9},{"name":"docs/parsers/csv_s.md","lines_changed":35},{"name":"docs/parsers/date.md","lines_changed":18},{"name":"docs/parsers/dig.md","lines_changed":16},{"name":"docs/parsers/dir.md","lines_changed":6},{"name":"docs/parsers/dpkg_l.md","lines_changed":7},{"name":"docs/parsers/du.md","lines_changed":20},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":8},{"name":"docs/parsers/ini.md","lines_changed":15},{"name":"docs/parsers/iostat_s.md","lines_changed":25},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jar_manifest.md","lines_changed":25},{"name":"docs/parsers/jobs.md","lines_changed":3},{"name":"docs/parsers/kv.md","lines_changed":11},{"name":"docs/parsers/last.md","lines_changed":10},{"name":"docs/parsers/ls.md","lines_changed":19},{"name":"docs/parsers/ls_s.md","lines_changed":51},{"name":"docs/parsers/lsblk.md","lines_changed":10},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":3},{"name":"docs/parsers/ping.md","lines_changed":32},{"name":"docs/parsers/ping_s.md","lines_changed":85},{"name":"docs/parsers/ps.md","lines_changed":8},{"name":"docs/parsers/rpm_qi.md","lines_changed":37},{"name":"docs/parsers/sfdisk.md","lines_changed":8},{"name":"docs/parsers/ss.md","lines_changed":6},{"name":"docs/parsers/stat.md","lines_changed":6},{"name":"docs/parsers/stat_s.md","lines_changed":27},{"name":"docs/parsers/sysctl.md","lines_changed":7},{"name":"docs/parsers/systemctl.md","lines_changed":4},{"name":"docs/parsers/systemctl_ls.md","lines_changed":3},{"name":"docs/parsers/systemctl_luf.md","lines_changed":3},{"name":"docs/parsers/systeminfo.md","lines_changed":19},{"name":"docs/parsers/time.md","lines_changed":33},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"docs/parsers/ufw.md","lines_changed":7},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":28},{"name":"docs/parsers/upower.md","lines_changed":16},{"name":"docs/parsers/vmstat.md","lines_changed":13},{"name":"docs/parsers/vmstat_s.md","lines_changed":111},{"name":"docs/parsers/who.md","lines_changed":7}]}},{"commit":"3701b4198aad1826ad6da571fbcaa530b057cc48","message":"formatting","stats":{"files_changed":86,"insertions":710,"deletions":606,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":5},{"name":"jc/parsers/airport.py","lines_changed":7},{"name":"jc/parsers/airport_s.py","lines_changed":3},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/blkid.py","lines_changed":10},{"name":"jc/parsers/cksum.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":6},{"name":"jc/parsers/crontab_u.py","lines_changed":25},{"name":"jc/parsers/csv.py","lines_changed":14},{"name":"jc/parsers/csv_s.py","lines_changed":38},{"name":"jc/parsers/date.py","lines_changed":69},{"name":"jc/parsers/df.py","lines_changed":13},{"name":"jc/parsers/dig.py","lines_changed":28},{"name":"jc/parsers/dir.py","lines_changed":8},{"name":"jc/parsers/dmidecode.py","lines_changed":3},{"name":"jc/parsers/dpkg_l.py","lines_changed":10},{"name":"jc/parsers/du.py","lines_changed":23},{"name":"jc/parsers/env.py","lines_changed":7},{"name":"jc/parsers/file.py","lines_changed":6},{"name":"jc/parsers/finger.py","lines_changed":14},{"name":"jc/parsers/foo.py","lines_changed":3},{"name":"jc/parsers/foo_s.py","lines_changed":23},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/group.py","lines_changed":3},{"name":"jc/parsers/gshadow.py","lines_changed":3},{"name":"jc/parsers/hash.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":5},{"name":"jc/parsers/hciconfig.py","lines_changed":13},{"name":"jc/parsers/history.py","lines_changed":10},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":3},{"name":"jc/parsers/ifconfig.py","lines_changed":20},{"name":"jc/parsers/ini.py","lines_changed":23},{"name":"jc/parsers/iostat_s.py","lines_changed":25},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":11},{"name":"jc/parsers/jar_manifest.py","lines_changed":25},{"name":"jc/parsers/jobs.py","lines_changed":5},{"name":"jc/parsers/kv.py","lines_changed":13},{"name":"jc/parsers/last.py","lines_changed":17},{"name":"jc/parsers/ls.py","lines_changed":21},{"name":"jc/parsers/ls_s.py","lines_changed":53},{"name":"jc/parsers/lsblk.py","lines_changed":15},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/lsusb.py","lines_changed":5},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":20},{"name":"jc/parsers/ntpq.py","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":3},{"name":"jc/parsers/ping.py","lines_changed":46},{"name":"jc/parsers/ping_s.py","lines_changed":99},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":10},{"name":"jc/parsers/route.py","lines_changed":6},{"name":"jc/parsers/rpm_qi.py","lines_changed":40},{"name":"jc/parsers/sfdisk.py","lines_changed":16},{"name":"jc/parsers/shadow.py","lines_changed":3},{"name":"jc/parsers/ss.py","lines_changed":8},{"name":"jc/parsers/stat.py","lines_changed":12},{"name":"jc/parsers/stat_s.py","lines_changed":31},{"name":"jc/parsers/sysctl.py","lines_changed":10},{"name":"jc/parsers/systemctl.py","lines_changed":6},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":5},{"name":"jc/parsers/systemctl_luf.py","lines_changed":5},{"name":"jc/parsers/systeminfo.py","lines_changed":31},{"name":"jc/parsers/time.py","lines_changed":51},{"name":"jc/parsers/timedatectl.py","lines_changed":8},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":7},{"name":"jc/parsers/ufw.py","lines_changed":7},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":28},{"name":"jc/parsers/uname.py","lines_changed":4},{"name":"jc/parsers/universal.py","lines_changed":40},{"name":"jc/parsers/upower.py","lines_changed":32},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":28},{"name":"jc/parsers/vmstat_s.py","lines_changed":125},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/parsers/wc.py","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":10},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2}]}},{"commit":"d4c34098fa7ad2098076f0fa0564467e5d06f916","message":"formatting","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":5}]}},{"commit":"b3c531193b3fc53697e7d7823576f481f9462d53","message":"formatting","stats":{"files_changed":3,"insertions":125,"deletions":71,"files":["CHANGELOG","docs/utils.md","jc/utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docs/utils.md","lines_changed":79},{"name":"jc/utils.py","lines_changed":114}]}},{"commit":"1d0e07c77bab5c48405323e52873c7952dd0a587","message":"formatting","stats":{"files_changed":3,"insertions":57,"deletions":55,"files":["docs/readme.md","jc/__init__.py","jc/lib.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":33},{"name":"jc/__init__.py","lines_changed":33},{"name":"jc/lib.py","lines_changed":46}]}},{"commit":"06a322cf9c7468dc7e8ba05914e1d07bbc51f63a","message":"rename tests and add conversion function tests","stats":{"files_changed":1,"insertions":14,"deletions":8,"files":["tests/test_lib.py"],"file_stats":[{"name":"tests/test_lib.py","lines_changed":22}]}},{"commit":"623d148712f93eacf9b7b5803140603f0af67acb","message":"doc update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]}},{"commit":"647e83d0439a0937db14a2cc97929e38a6b6a43b","message":"add test to ensure there are zero plugin parsers installed during tests","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["tests/test_lib.py"],"file_stats":[{"name":"tests/test_lib.py","lines_changed":3}]}},{"commit":"91a554464444da0cc3ed3b4d212539232411f6cc","message":"doc update","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":5}]}},{"commit":"a1190998aef1bf403ee34c38c1a0fbd6291ac38b","message":"add jc and jc.lib tests","stats":{"files_changed":2,"insertions":82,"deletions":0,"files":["tests/test_jc.py","tests/test_lib.py"],"file_stats":[{"name":"tests/test_jc.py","lines_changed":41},{"name":"tests/test_lib.py","lines_changed":41}]}},{"commit":"097d7a1850f6f6df73a5761c657b73ef9dbd3e29","message":"simplify __init__","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":4}]}},{"commit":"302bf72e720b3a67fbf1300eaff4f99fc343abeb","message":"Update high-level API docs","stats":{"files_changed":138,"insertions":718,"deletions":6,"files":["docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py"],"file_stats":[{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":5},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iostat.md","lines_changed":5},{"name":"docs/parsers/iostat_s.md","lines_changed":7},{"name":"docs/parsers/iptables.md","lines_changed":7},{"name":"docs/parsers/iw_scan.md","lines_changed":9},{"name":"docs/parsers/jar_manifest.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":7},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/ping_s.md","lines_changed":7},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/sfdisk.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/stat_s.md","lines_changed":7},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/systeminfo.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"docs/parsers/ufw.md","lines_changed":5},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/vmstat.md","lines_changed":5},{"name":"docs/parsers/vmstat_s.md","lines_changed":7},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5},{"name":"docs/parsers/zipinfo.md","lines_changed":5},{"name":"jc/parsers/env.py","lines_changed":5},{"name":"jc/parsers/file.py","lines_changed":5},{"name":"jc/parsers/finger.py","lines_changed":5},{"name":"jc/parsers/foo.py","lines_changed":5},{"name":"jc/parsers/foo_s.py","lines_changed":7},{"name":"jc/parsers/free.py","lines_changed":5},{"name":"jc/parsers/fstab.py","lines_changed":5},{"name":"jc/parsers/group.py","lines_changed":5},{"name":"jc/parsers/gshadow.py","lines_changed":5},{"name":"jc/parsers/hash.py","lines_changed":5},{"name":"jc/parsers/hashsum.py","lines_changed":5},{"name":"jc/parsers/hciconfig.py","lines_changed":5},{"name":"jc/parsers/history.py","lines_changed":5},{"name":"jc/parsers/hosts.py","lines_changed":5},{"name":"jc/parsers/id.py","lines_changed":5},{"name":"jc/parsers/ifconfig.py","lines_changed":5},{"name":"jc/parsers/ini.py","lines_changed":5},{"name":"jc/parsers/iostat.py","lines_changed":5},{"name":"jc/parsers/iostat_s.py","lines_changed":7},{"name":"jc/parsers/iptables.py","lines_changed":7},{"name":"jc/parsers/iw_scan.py","lines_changed":9},{"name":"jc/parsers/jar_manifest.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":5},{"name":"jc/parsers/kv.py","lines_changed":5},{"name":"jc/parsers/last.py","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":5},{"name":"jc/parsers/ls_s.py","lines_changed":7},{"name":"jc/parsers/lsblk.py","lines_changed":5},{"name":"jc/parsers/lsmod.py","lines_changed":5},{"name":"jc/parsers/lsof.py","lines_changed":5},{"name":"jc/parsers/lsusb.py","lines_changed":5},{"name":"jc/parsers/mount.py","lines_changed":5},{"name":"jc/parsers/netstat.py","lines_changed":5},{"name":"jc/parsers/ntpq.py","lines_changed":5},{"name":"jc/parsers/passwd.py","lines_changed":5},{"name":"jc/parsers/ping.py","lines_changed":5},{"name":"jc/parsers/ping_s.py","lines_changed":7},{"name":"jc/parsers/pip_list.py","lines_changed":5},{"name":"jc/parsers/pip_show.py","lines_changed":5},{"name":"jc/parsers/ps.py","lines_changed":5},{"name":"jc/parsers/route.py","lines_changed":5},{"name":"jc/parsers/rpm_qi.py","lines_changed":5},{"name":"jc/parsers/sfdisk.py","lines_changed":5},{"name":"jc/parsers/shadow.py","lines_changed":5},{"name":"jc/parsers/ss.py","lines_changed":5},{"name":"jc/parsers/stat.py","lines_changed":5},{"name":"jc/parsers/stat_s.py","lines_changed":7},{"name":"jc/parsers/sysctl.py","lines_changed":5},{"name":"jc/parsers/systemctl.py","lines_changed":5},{"name":"jc/parsers/systemctl_lj.py","lines_changed":5},{"name":"jc/parsers/systemctl_ls.py","lines_changed":5},{"name":"jc/parsers/systemctl_luf.py","lines_changed":5},{"name":"jc/parsers/systeminfo.py","lines_changed":5},{"name":"jc/parsers/time.py","lines_changed":5},{"name":"jc/parsers/timedatectl.py","lines_changed":5},{"name":"jc/parsers/tracepath.py","lines_changed":5},{"name":"jc/parsers/traceroute.py","lines_changed":5},{"name":"jc/parsers/ufw.py","lines_changed":5},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":5},{"name":"jc/parsers/uname.py","lines_changed":5},{"name":"jc/parsers/upower.py","lines_changed":5},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/vmstat.py","lines_changed":5},{"name":"jc/parsers/vmstat_s.py","lines_changed":7},{"name":"jc/parsers/w.py","lines_changed":5},{"name":"jc/parsers/wc.py","lines_changed":5},{"name":"jc/parsers/who.py","lines_changed":5},{"name":"jc/parsers/xml.py","lines_changed":5},{"name":"jc/parsers/yaml.py","lines_changed":5},{"name":"jc/parsers/zipinfo.py","lines_changed":5}]}},{"commit":"2c42baf3a4dd6733c078f31a1becd708a05f2c36","message":"add new high-level api info","stats":{"files_changed":34,"insertions":174,"deletions":0,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/csv_s.md","lines_changed":7},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"jc/parsers/acpi.py","lines_changed":5},{"name":"jc/parsers/airport.py","lines_changed":5},{"name":"jc/parsers/airport_s.py","lines_changed":5},{"name":"jc/parsers/arp.py","lines_changed":5},{"name":"jc/parsers/blkid.py","lines_changed":5},{"name":"jc/parsers/cksum.py","lines_changed":5},{"name":"jc/parsers/crontab.py","lines_changed":5},{"name":"jc/parsers/crontab_u.py","lines_changed":5},{"name":"jc/parsers/csv.py","lines_changed":5},{"name":"jc/parsers/csv_s.py","lines_changed":7},{"name":"jc/parsers/date.py","lines_changed":5},{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":5},{"name":"jc/parsers/dir.py","lines_changed":5},{"name":"jc/parsers/dmidecode.py","lines_changed":5},{"name":"jc/parsers/dpkg_l.py","lines_changed":5},{"name":"jc/parsers/du.py","lines_changed":5}]}},{"commit":"03feb89c84096c0ea1d6ae3a0634ae7b8b507e8f","message":"add module list info","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2}]}},{"commit":"9dd553192fbca3037b3afe5df6bae88f7a8a9365","message":"doc update","stats":{"files_changed":5,"insertions":29,"deletions":12,"files":["CHANGELOG","README.md","docs/readme.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":10},{"name":"docs/readme.md","lines_changed":16},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":10}]}},{"commit":"fa3f02e9d1ac7867e3465c2d214f4e4229ff4c66","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"0a9dde58c5235f78c4c9ae9c013f7454482c6067","message":"add jc.parse() high-level API","stats":{"files_changed":3,"insertions":228,"deletions":134,"files":["jc/__init__.py","jc/cli.py","jc/lib.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":22},{"name":"jc/cli.py","lines_changed":154},{"name":"jc/lib.py","lines_changed":186}]}},{"commit":"70cb4453bebb235130e2c287633ecb1de6c2b0aa","message":"Merge pull request #195 from kellyjonbrazil/dev"},{"commit":"830674cc6f19e107347a743baff7bbaab7f80b75","message":"version bump","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["CHANGELOG","jc/__init__.py","man/jc.1","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"fb406b58a12fdfe81bcff76671661af77e7f2fe5","message":"formatting","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["docs/parsers/stat_s.md","jc/parsers/stat_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/stat_s.md","lines_changed":4},{"name":"jc/parsers/stat_s.py","lines_changed":4},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"55b272e41259ddc835cf4eb513fb67e7b2cf1573","message":"tighten stat data detection","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":2}]}},{"commit":"94f62a9bf36242310790a0f37c66b2e6c6fdc078","message":"formatting","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/stat_s.md","jc/parsers/stat_s.py"],"file_stats":[{"name":"docs/parsers/stat_s.md","lines_changed":6},{"name":"jc/parsers/stat_s.py","lines_changed":6}]}},{"commit":"8d19e4cb7b45e3b6cb8c404c959949b7593c9386","message":"doc update","stats":{"files_changed":4,"insertions":115,"deletions":1,"files":["CHANGELOG","README.md","docs/parsers/stat_s.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/stat_s.md","lines_changed":105},{"name":"man/jc.1","lines_changed":7}]}},{"commit":"7e510d48e0f8426a67cf8d70d06d0331c274d358","message":"simplify non-stat parse error logic","stats":{"files_changed":7,"insertions":106,"deletions":2,"files":["jc/parsers/stat_s.py","tests/fixtures/centos-7.7/stat-streaming.json","tests/fixtures/freebsd12/stat-streaming.json",".../stat-filename-with-spaces-streaming.json","tests/fixtures/osx-10.14.6/stat-streaming.json","tests/fixtures/ubuntu-18.04/stat-streaming.json","tests/test_stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":3},{"name":"tests/fixtures/centos-7.7/stat-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/stat-streaming.json","lines_changed":1},{"name":".../stat-filename-with-spaces-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/stat-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/stat-streaming.json","lines_changed":1},{"name":"tests/test_stat_s.py","lines_changed":100}]}},{"commit":"7b20cffb143447f4497bc4e895eac2426e8a519f","message":"simplify last item logic","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":8}]}},{"commit":"5c934c43c13b69183561da8a77280feb3363e950","message":"add continue to simplify logic","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":2}]}},{"commit":"8609298449e997ba4804d818f4fc23cb393ded7d","message":"update docstring","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":8}]}},{"commit":"72cb0dc10b2dac486d3e2a52cf44baf0d7496034","message":"fixup for first and last items","stats":{"files_changed":1,"insertions":14,"deletions":10,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":24}]}},{"commit":"7b22fa81ded0f6f59e250ffea63c5d2a0f928b25","message":"raise for non-stat data","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":8}]}},{"commit":"0b6a1307790e0793917bc2781e4873aa9dd67225","message":"ignore blank lines","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":4}]}},{"commit":"fdcf4338e0f099699f8d48df6382be1cc97dba84","message":"add examples to docstring","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":6}]}},{"commit":"ee43037f481286a34a766390568965fdd53af132","message":"remove unused continue lines","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":2}]}},{"commit":"26e365563c314e694915c7a3feae490ea99a112c","message":"add schema and _process logic","stats":{"files_changed":1,"insertions":50,"deletions":11,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":61}]}},{"commit":"1b39586bb1b62aee8ae709512c2e3f79cefdb3d9","message":"add stat streaming parser","stats":{"files_changed":2,"insertions":227,"deletions":0,"files":["jc/cli.py","jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/stat_s.py","lines_changed":226}]}},{"commit":"8bb3a6bea34d60d49039f1ed72fd7e413edc05da","message":"Merge pull request #194 from kellyjonbrazil/master"},{"commit":"e6900e2000bf265dfcfc09ffbfda39e9238661af","message":"add jar-manifest","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":21}]}},{"commit":"0ee244756bf39123e4873eb231156edbe7f0e0ec","message":"spelling","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/jar_manifest.md","jc/parsers/jar_manifest.py"],"file_stats":[{"name":"docs/parsers/jar_manifest.md","lines_changed":2},{"name":"jc/parsers/jar_manifest.py","lines_changed":2}]}},{"commit":"6d5ac9abe6712e01887ce0d96c278a568319f405","message":"update docs","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["docs/parsers/csv.md","docs/parsers/csv_s.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"44f6d9e1321459be8196aeebf6db088cc5120e61","message":"changelog update","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]}},{"commit":"360154559c5dee6affa55bbdd5d2f473248b9168","message":"Merge pull request #193 from kellyjonbrazil/dev"},{"commit":"78672bd7ad66c418e0ecf31add73f887b0946d29","message":"Merge pull request #190 from shaikustin/csv-doubleqouted"},{"commit":"65d96e26b59e231c77c1dbba1dc91708c33de30c","message":"add streaming tests","stats":{"files_changed":2,"insertions":13,"deletions":0,"files":["tests/fixtures/generic/csv-doubleqouted-streaming.json","tests/test_csv_s.py"],"file_stats":[{"name":"tests/fixtures/generic/csv-doubleqouted-streaming.json","lines_changed":1},{"name":"tests/test_csv_s.py","lines_changed":12}]}},{"commit":"241d53af9a5c9bba70e28835e22c52c0060269ba","message":"Merge pull request #192 from kellyjonbrazil/dev"},{"commit":"5563829df2849a899df2e9211d6c92bddc695f9b","message":"make dialect sniff behavior match non-streaming parser","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":8}]}},{"commit":"3a4a27e1f94ee07352c7616c57ec655c1aea04f6","message":"version bump","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/csv.py"],"file_stats":[{"name":"jc/parsers/csv.py","lines_changed":4}]}},{"commit":"9c887a36a804d817c3f669a55b9b1566d09d645d","message":"update csv_s parser with csv changes","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":6}]}},{"commit":"bc7973af36e13006230b5faa9e201e300d468912","message":"update copyright","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","jc/cli.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"32972d8fdbdc71923978fd5c2a87fd6cfa4b7f8e","message":"doc update","stats":{"files_changed":7,"insertions":122,"deletions":9,"files":["CHANGELOG","README.md","docs/parsers/jar_manifest.md","jc/__init__.py","jc/parsers/jar_manifest.py","man/jc.1","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/jar_manifest.md","lines_changed":104},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/parsers/jar_manifest.py","lines_changed":12},{"name":"man/jc.1","lines_changed":7},{"name":"setup.py","lines_changed":2}]}},{"commit":"b128d9109cbdb1176f2473d450023bb0be02531b","message":"add MANIFEST.MF tests","stats":{"files_changed":1,"insertions":46,"deletions":0,"files":["tests/test_jar_manifest.py"],"file_stats":[{"name":"tests/test_jar_manifest.py","lines_changed":46}]}},{"commit":"929d7273a422c2bd5b83e5e19d32630f1a027f75","message":"doc updates","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/jar_manifest.py"],"file_stats":[{"name":"jc/parsers/jar_manifest.py","lines_changed":8}]}},{"commit":"2a40f842743a8745d651b4b6cae645045e6c6aab","message":"fix doubleqoute in csv","stats":{"files_changed":4,"insertions":22,"deletions":1,"files":["jc/parsers/csv.py","tests/fixtures/generic/csv-doubleqouted.csv","tests/fixtures/generic/csv-doubleqouted.json","tests/test_csv.py"],"file_stats":[{"name":"jc/parsers/csv.py","lines_changed":4},{"name":"tests/fixtures/generic/csv-doubleqouted.csv","lines_changed":3},{"name":"tests/fixtures/generic/csv-doubleqouted.json","lines_changed":4},{"name":"tests/test_csv.py","lines_changed":12}]}},{"commit":"9ff6fa818f0857321e4b3b089d288997f2ae27af","message":"add jar-manifest","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]}},{"commit":"dac73a4bfe24e36474fdf6ff60c23e784ca409bd","message":"Merge pull request #189 from kellyjonbrazil/master"},{"commit":"d7895547f74744e82317eabe4c870115701872be","message":"Merge pull request #188 from listuser/new_branch"},{"commit":"b7d439cb870e443e4f4e4a2137ab170835e77eff","message":"Renamed jar-manifest.py to jar_manifest.py, added multi manifest outputs to tests...","stats":{"files_changed":3,"insertions":2220,"deletions":9,"files":["jc/parsers/{jar-manifest.py => jar_manifest.py}","tests/fixtures/rhel-8/MANIFEST.MF.MULTI.json","tests/fixtures/rhel-8/MANIFEST.MF.MULTI.out"],"file_stats":[{"name":"jc/parsers/{jar-manifest.py => jar_manifest.py}","lines_changed":18},{"name":"tests/fixtures/rhel-8/MANIFEST.MF.MULTI.json","lines_changed":1},{"name":"tests/fixtures/rhel-8/MANIFEST.MF.MULTI.out","lines_changed":2210}]}},{"commit":"7cc903a5f5ca368be97babadc72689375567a901","message":"Removed inflating from examples in jar-manifest.py","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/jar-manifest.py"],"file_stats":[{"name":"jc/parsers/jar-manifest.py","lines_changed":3}]}},{"commit":"c495a8291bd3e1fd070ee2e018b9b550f9c86314","message":"Updated test output in MANIFEST.MF.json","stats":{"files_changed":1,"insertions":1,"deletions":292,"files":["tests/fixtures/rhel-8/MANIFEST.MF.json"],"file_stats":[{"name":"tests/fixtures/rhel-8/MANIFEST.MF.json","lines_changed":293}]}},{"commit":"5e1d7d777c627fb17feda6e51d9640bbd0f03302","message":"Renamed metamf.py to jar-manifest.py, plus other changes","stats":{"files_changed":8,"insertions":304,"deletions":2544,"files":["jc/parsers/{metamf.py => jar-manifest.py}","tests/fixtures/rhel-8/MANIFEST.MF.json",".../rhel-8/{MANIFEST.MF => MANIFEST.MF.out}",".../rhel-8/cmds_used_to_generate_test_data.txt",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out"],"file_stats":[{"name":"jc/parsers/{metamf.py => jar-manifest.py}","lines_changed":34},{"name":"tests/fixtures/rhel-8/MANIFEST.MF.json","lines_changed":293},{"name":".../rhel-8/{MANIFEST.MF => MANIFEST.MF.out}","lines_changed":0},{"name":".../rhel-8/cmds_used_to_generate_test_data.txt","lines_changed":14},{"name":".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json","lines_changed":1},{"name":".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out","lines_changed":2210},{"name":".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json","lines_changed":1},{"name":".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out","lines_changed":295}]}},{"commit":"7edad3f676fe5560017ca9cb05ede6f46787e78f","message":"Create key value pairs from a MANIFEST.MF file, to include key multiline value pairs.","stats":{"files_changed":8,"insertions":3042,"deletions":0,"files":["jc/parsers/metamf.py","tests/fixtures/rhel-8/MANIFEST.MF","tests/fixtures/rhel-8/MANIFEST.MF.json",".../rhel-8/cmds_used_to_generate_test_data.txt",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out"],"file_stats":[{"name":"jc/parsers/metamf.py","lines_changed":228},{"name":"tests/fixtures/rhel-8/MANIFEST.MF","lines_changed":292},{"name":"tests/fixtures/rhel-8/MANIFEST.MF.json","lines_changed":1},{"name":".../rhel-8/cmds_used_to_generate_test_data.txt","lines_changed":14},{"name":".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json","lines_changed":1},{"name":".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out","lines_changed":2210},{"name":".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json","lines_changed":1},{"name":".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out","lines_changed":295}]}},{"commit":"f7331001d4ab976e311458a16b6e5337da2e3aab","message":"use github releases instead of packaging site","stats":{"files_changed":3,"insertions":9,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":5},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":5}]}},{"commit":"f8e09ae2ffe185d21305d566fad20f510df9890f","message":"Merge pull request #187 from kellyjonbrazil/master"},{"commit":"433c7cc0f05e321ffe024845a908f3e856d4cd2b","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/zipinfo.md","jc/parsers/zipinfo.py"],"file_stats":[{"name":"docs/parsers/zipinfo.md","lines_changed":1},{"name":"jc/parsers/zipinfo.py","lines_changed":1}]}},{"commit":"d753e71a7452310d45fa605a2e4c70320ed60dbb","message":"Merge pull request #186 from kellyjonbrazil/dev"},{"commit":"2e4f5a508b6c90f9e03dcbcf64efc0e2fc446666","message":"version bump","stats":{"files_changed":4,"insertions":6,"deletions":3,"files":["CHANGELOG","jc/__init__.py","man/jc.1","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"88b960eff6cb3739d0d243c8d8b3e8ad5b8eb97c","message":"doc update","stats":{"files_changed":4,"insertions":144,"deletions":1,"files":["EXAMPLES.md","README.md","docs/parsers/zipinfo.md","man/jc.1"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":31},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/zipinfo.md","lines_changed":106},{"name":"man/jc.1","lines_changed":7}]}},{"commit":"88c77bd89e2c2a5f023e6638816c9153b6276d35","message":"add zipinfo tests","stats":{"files_changed":2,"insertions":47,"deletions":0,"files":["tests/fixtures/osx-10.14.6/zipinfo-multi.json","tests/test_zipinfo.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/zipinfo-multi.json","lines_changed":1},{"name":"tests/test_zipinfo.py","lines_changed":46}]}},{"commit":"51a7a4251fff518d8da78ffa41e7ba2e2cb47f12","message":"add multi-archive test output","stats":{"files_changed":1,"insertions":24,"deletions":0,"files":["tests/fixtures/osx-10.14.6/zipinfo-multi.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/zipinfo-multi.out","lines_changed":24}]}},{"commit":"51d2f316f388d962c26aeb4f42affebec339e5a2","message":"add multi-archive support","stats":{"files_changed":1,"insertions":97,"deletions":72,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":169}]}},{"commit":"ff78a46c4854339a097992701351ef471aff1671","message":"add zipinfo parser","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]}},{"commit":"ed4a9dc1d470f64bcc9de35b2d98568ffd50257d","message":"formatting","stats":{"files_changed":1,"insertions":21,"deletions":23,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":44}]}},{"commit":"63182dba26040974cb8cada6f5910bb29b1fa3ed","message":"Merge pull request #185 from listuser/new_branch"},{"commit":"9c1eaa938934269fe4179da798acf5f119cde0cf","message":"revised zipinfo.py nested version","stats":{"files_changed":2,"insertions":68,"deletions":61,"files":["jc/parsers/zipinfo.py","tests/fixtures/rhel-8/zipinfo.json"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":127},{"name":"tests/fixtures/rhel-8/zipinfo.json","lines_changed":2}]}},{"commit":"bc520fcbcdfad6a53e51944391fd24512bed8128","message":"added zipinfo.py nested version","stats":{"files_changed":2,"insertions":63,"deletions":53,"files":["jc/parsers/zipinfo.py","tests/fixtures/rhel-8/zipinfo.json"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":114},{"name":"tests/fixtures/rhel-8/zipinfo.json","lines_changed":2}]}},{"commit":"46faac1a12a5b39d6a25427f6e8fdcca1204dbcd","message":"add test data zipinfo.json and zipinfo.out","stats":{"files_changed":2,"insertions":1222,"deletions":0,"files":["tests/fixtures/rhel-8/zipinfo.json","tests/fixtures/rhel-8/zipinfo.out"],"file_stats":[{"name":"tests/fixtures/rhel-8/zipinfo.json","lines_changed":1},{"name":"tests/fixtures/rhel-8/zipinfo.out","lines_changed":1221}]}},{"commit":"3c424c0cb3cff462a963183585b57bea004e974f","message":"initial commit zipinfo.py to new_branch","stats":{"files_changed":1,"insertions":165,"deletions":0,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":165}]}},{"commit":"3ac8d0362b4fb9999fc55a60a9cb20ac80d114f7","message":"use quotes around python versions","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]}},{"commit":"d88b998e6c7826a9ecae18663328e2d2915030fe","message":"formatting","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":8},{"name":"jc/parsers/csv_s.py","lines_changed":8}]}},{"commit":"a9ed55c00652a563391a7930c7a4649967131ae1","message":"fix spelling","stats":{"files_changed":11,"insertions":11,"deletions":11,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]}},{"commit":"ea614341232e5272ee0c7fd46ba0f313033c761f","message":"fix schema docs","stats":{"files_changed":4,"insertions":16,"deletions":8,"files":["docs/parsers/crontab.md","docs/parsers/crontab_u.md","jc/parsers/crontab.py","jc/parsers/crontab_u.py"],"file_stats":[{"name":"docs/parsers/crontab.md","lines_changed":6},{"name":"docs/parsers/crontab_u.md","lines_changed":6},{"name":"jc/parsers/crontab.py","lines_changed":6},{"name":"jc/parsers/crontab_u.py","lines_changed":6}]}},{"commit":"a73d0d26cbe2860b8374661068e09e0717a3bab2","message":"Merge pull request #184 from kellyjonbrazil/dev"},{"commit":"b4506976e3c865397bc657183d49c484d8bcfd7a","message":"formatting","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":8},{"name":"templates/manpage_template","lines_changed":6}]}},{"commit":"34cb75a09697a06c3878f2f9a84eb3bd2a90ae62","message":"version bump","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/__init__.py","setup.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"34df643f60712ae25645cb7cddff80e43c12262b","message":"add disable colors section","stats":{"files_changed":4,"insertions":18,"deletions":0,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"man/jc.1","lines_changed":6},{"name":"templates/manpage_template","lines_changed":6},{"name":"templates/readme_template","lines_changed":3}]}},{"commit":"ac7c13fcc013d386f34db51d634298fa3e97eccd","message":"add -C option to docs","stats":{"files_changed":4,"insertions":11,"deletions":1,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"man/jc.1","lines_changed":6},{"name":"templates/manpage_template","lines_changed":4},{"name":"templates/readme_template","lines_changed":1}]}},{"commit":"4fdb34c7d5fcaa65e2ccab814c3acf2f0f70c442","message":"add no-color.org","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]}},{"commit":"7ac468e35aac1a63c4e22f33aead74a6e41a22a6","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]}},{"commit":"df190aa299f1669d1fe09380026ae086839abc02","message":"add -C option to force color even with pipes","stats":{"files_changed":1,"insertions":15,"deletions":7,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":22}]}},{"commit":"9621475e86fe20fcdc2902b6ce7860a833ae2ca0","message":"changelog update","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]}},{"commit":"82e0160de820ad2ed6143f58458711d600b929a3","message":"refactor NO_COLOR test","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"d03fb8b626a97e81006d0b108c8f400fe4e2ce3b","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"b300dfb3d75fe76e2ddbb087ff742dd0b5e6155b","message":"Add support for NO_COLOR env variable","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"a7de9111d97e687cafbc0709ec3ff7453d658a80","message":"Merge pull request #183 from kellyjonbrazil/dev"},{"commit":"7933dfdbe7bf400833d6f6b771362dfc518b9a8d","message":"Merge branch 'master' into dev"},{"commit":"f7cb5f7d01ac01538bee4da816408072b585768e","message":"update date","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]}},{"commit":"a26a298f1a3c141171e7d7ce459a27a297cec031","message":"doc update","stats":{"files_changed":4,"insertions":148,"deletions":1,"files":["README.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/iostat.md","lines_changed":15},{"name":"docs/parsers/iostat_s.md","lines_changed":126},{"name":"man/jc.1","lines_changed":7}]}},{"commit":"dbd134d0dac2fc152183480958fd9e65919ac98d","message":"add examples to docs","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat_s.py","lines_changed":6}]}},{"commit":"11aa01b0d9d6913059f98f9bd7591d7cad9037cf","message":"iostat-s tests","stats":{"files_changed":15,"insertions":15,"deletions":1,"files":["jc/parsers/iostat_s.py","tests/fixtures/centos-7.7/iostat-1-streaming.json","tests/fixtures/centos-7.7/iostat-m-streaming.json","tests/fixtures/centos-7.7/iostat-mx-streaming.json","tests/fixtures/centos-7.7/iostat-streaming.json","tests/fixtures/centos-7.7/iostat-x-streaming.json","tests/fixtures/ubuntu-18.04/iostat-1-streaming.json","tests/fixtures/ubuntu-18.04/iostat-m-streaming.json","tests/fixtures/ubuntu-18.04/iostat-mx-streaming.json","tests/fixtures/ubuntu-18.04/iostat-streaming.json","tests/fixtures/ubuntu-18.04/iostat-x-streaming.json","tests/fixtures/ubuntu-20.10/iostat-m-streaming.json","tests/fixtures/ubuntu-20.10/iostat-mx-streaming.json","tests/fixtures/ubuntu-20.10/iostat-streaming.json","tests/fixtures/ubuntu-20.10/iostat-x-streaming.json"],"file_stats":[{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iostat-1-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-m-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-mx-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-x-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-1-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-m-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-mx-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-x-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-m-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-mx-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-x-streaming.json","lines_changed":1}]}},{"commit":"6f18e5344356684e845ec63158c570d82156254f","message":"fix for null lines","stats":{"files_changed":1,"insertions":203,"deletions":0,"files":["tests/test_iostat_s.py"],"file_stats":[{"name":"tests/test_iostat_s.py","lines_changed":203}]}},{"commit":"7b467c466568ad4e7986d4d7cf3ec606681b6d46","message":"add ubuntu 20.10 tests","stats":{"files_changed":9,"insertions":137,"deletions":0,"files":["tests/fixtures/ubuntu-20.10/iostat-m.json","tests/fixtures/ubuntu-20.10/iostat-m.out","tests/fixtures/ubuntu-20.10/iostat-mx.json","tests/fixtures/ubuntu-20.10/iostat-mx.out","tests/fixtures/ubuntu-20.10/iostat-x.json","tests/fixtures/ubuntu-20.10/iostat-x.out","tests/fixtures/ubuntu-20.10/iostat.json","tests/fixtures/ubuntu-20.10/iostat.out","tests/test_iostat.py"],"file_stats":[{"name":"tests/fixtures/ubuntu-20.10/iostat-m.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-m.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-20.10/iostat-mx.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-mx.out","lines_changed":22},{"name":"tests/fixtures/ubuntu-20.10/iostat-x.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-x.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-20.10/iostat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat.out","lines_changed":22},{"name":"tests/test_iostat.py","lines_changed":47}]}},{"commit":"537b8f263087894c02b5b7c121765cf96182a370","message":"add more int conversions","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":4},{"name":"jc/parsers/iostat_s.py","lines_changed":4}]}},{"commit":"4d823575e791999e200dedd491511c4fde64fc2e","message":"add more float fields","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":4},{"name":"jc/parsers/iostat_s.py","lines_changed":4}]}},{"commit":"541aa1d09f20ff6979eabaa66790decb3895f18d","message":"Add new field float conversions for iostat v11","stats":{"files_changed":2,"insertions":68,"deletions":8,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":15},{"name":"jc/parsers/iostat_s.py","lines_changed":61}]}},{"commit":"8f02021014b7b19acf1a8bbd777161aa82c65d66","message":"formatting","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat_s.py","lines_changed":1}]}},{"commit":"158a15157c7e5dde95dc21766d0696bd82486688","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]}},{"commit":"2752e0d66a9ba0b57ac86913fd302ada23c280c0","message":"add iostat streaming parser","stats":{"files_changed":2,"insertions":166,"deletions":0,"files":["jc/cli.py","jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/iostat_s.py","lines_changed":165}]}},{"commit":"6c11e912afe3c4d16da9199b5c2fc10461928ac3","message":"update changelog","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]}},{"commit":"43d34461e27e3e4ac5f985786831c170b348c7c5","message":"update docs","stats":{"files_changed":83,"insertions":279,"deletions":81,"files":["README.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/utils.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/dpkg_l.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/finger.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/gshadow.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iostat.md","lines_changed":172},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":22},{"name":"man/jc.1","lines_changed":7}]}},{"commit":"4dfdc9b0f65d8c950ed74545d0cc3f95c8abec6c","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"e2311cbb03f407414df953c8d1c07d0cf1a549ca","message":"add iostat tests","stats":{"files_changed":21,"insertions":400,"deletions":0,"files":["tests/fixtures/centos-7.7/iostat-1.json","tests/fixtures/centos-7.7/iostat-1.out","tests/fixtures/centos-7.7/iostat-m.json","tests/fixtures/centos-7.7/iostat-m.out","tests/fixtures/centos-7.7/iostat-mx.json","tests/fixtures/centos-7.7/iostat-mx.out","tests/fixtures/centos-7.7/iostat-x.json","tests/fixtures/centos-7.7/iostat-x.out","tests/fixtures/centos-7.7/iostat.json","tests/fixtures/centos-7.7/iostat.out","tests/fixtures/ubuntu-18.04/iostat-1.json","tests/fixtures/ubuntu-18.04/iostat-1.out","tests/fixtures/ubuntu-18.04/iostat-m.json","tests/fixtures/ubuntu-18.04/iostat-m.out","tests/fixtures/ubuntu-18.04/iostat-mx.json","tests/fixtures/ubuntu-18.04/iostat-mx.out","tests/fixtures/ubuntu-18.04/iostat-x.json","tests/fixtures/ubuntu-18.04/iostat-x.out","tests/fixtures/ubuntu-18.04/iostat.json","tests/fixtures/ubuntu-18.04/iostat.out","tests/test_iostat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/iostat-1.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-1.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/iostat-m.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-m.out","lines_changed":10},{"name":"tests/fixtures/centos-7.7/iostat-mx.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-mx.out","lines_changed":9},{"name":"tests/fixtures/centos-7.7/iostat-x.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-x.out","lines_changed":10},{"name":"tests/fixtures/centos-7.7/iostat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat.out","lines_changed":9},{"name":"tests/fixtures/ubuntu-18.04/iostat-1.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-1.out","lines_changed":77},{"name":"tests/fixtures/ubuntu-18.04/iostat-m.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-m.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-18.04/iostat-mx.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-mx.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/iostat-x.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-x.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/iostat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat.out","lines_changed":27},{"name":"tests/test_iostat.py","lines_changed":143}]}},{"commit":"bf15575e90985cfec5c57dd11dfa2b86d53a41be","message":"fixes for ubunut","stats":{"files_changed":1,"insertions":14,"deletions":7,"files":["jc/parsers/iostat.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":21}]}},{"commit":"406336c7185b539b5e00532b58146d5b1b73f259","message":"add iostat example","stats":{"files_changed":1,"insertions":44,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":44}]}},{"commit":"6665ffaeb8107e9db3b917db0663beaf44024533","message":"remove python 3.6 from tests","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]}},{"commit":"dcf552ca0c69aa5f0309a83dc33dee7c5ed81292","message":"add _process and cleanup","stats":{"files_changed":1,"insertions":138,"deletions":47,"files":["jc/parsers/iostat.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":185}]}},{"commit":"7a6ebf3c9555dd82df7dc0b71981cdd32ce0061d","message":"add iostat parser","stats":{"files_changed":2,"insertions":171,"deletions":0,"files":["jc/cli.py","jc/parsers/iostat.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/iostat.py","lines_changed":170}]}},{"commit":"d2dc4a983c86c538e13e568b908072de4ca0daaf","message":"changelog update","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]}},{"commit":"1168259bc23862f671326d41f5282a3575205214","message":"add doc strings","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":3}]}},{"commit":"e8e4b46021557fbf5776c32dff46de022817fb6b","message":"use jc.utils type checks","stats":{"files_changed":5,"insertions":14,"deletions":19,"files":["jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":5},{"name":"jc/parsers/foo_s.py","lines_changed":7},{"name":"jc/parsers/ls_s.py","lines_changed":7},{"name":"jc/parsers/ping_s.py","lines_changed":7},{"name":"jc/parsers/vmstat_s.py","lines_changed":7}]}},{"commit":"12d2de22821fd8f57f4d412e62f53db3d89d5e30","message":"use jc.utils.input_type_check() and simplify compatibility check","stats":{"files_changed":77,"insertions":181,"deletions":165,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":4},{"name":"jc/parsers/airport.py","lines_changed":4},{"name":"jc/parsers/airport_s.py","lines_changed":4},{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/blkid.py","lines_changed":4},{"name":"jc/parsers/cksum.py","lines_changed":4},{"name":"jc/parsers/crontab.py","lines_changed":4},{"name":"jc/parsers/crontab_u.py","lines_changed":4},{"name":"jc/parsers/csv.py","lines_changed":4},{"name":"jc/parsers/date.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":5},{"name":"jc/parsers/dir.py","lines_changed":4},{"name":"jc/parsers/dmidecode.py","lines_changed":4},{"name":"jc/parsers/dpkg_l.py","lines_changed":4},{"name":"jc/parsers/du.py","lines_changed":4},{"name":"jc/parsers/env.py","lines_changed":4},{"name":"jc/parsers/file.py","lines_changed":4},{"name":"jc/parsers/finger.py","lines_changed":4},{"name":"jc/parsers/foo.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":4},{"name":"jc/parsers/fstab.py","lines_changed":4},{"name":"jc/parsers/group.py","lines_changed":4},{"name":"jc/parsers/gshadow.py","lines_changed":4},{"name":"jc/parsers/hash.py","lines_changed":4},{"name":"jc/parsers/hashsum.py","lines_changed":4},{"name":"jc/parsers/hciconfig.py","lines_changed":4},{"name":"jc/parsers/history.py","lines_changed":4},{"name":"jc/parsers/hosts.py","lines_changed":4},{"name":"jc/parsers/id.py","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":4},{"name":"jc/parsers/ini.py","lines_changed":4},{"name":"jc/parsers/iptables.py","lines_changed":4},{"name":"jc/parsers/iw_scan.py","lines_changed":4},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/last.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4},{"name":"jc/parsers/lsblk.py","lines_changed":4},{"name":"jc/parsers/lsmod.py","lines_changed":4},{"name":"jc/parsers/lsof.py","lines_changed":4},{"name":"jc/parsers/lsusb.py","lines_changed":4},{"name":"jc/parsers/mount.py","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":4},{"name":"jc/parsers/ntpq.py","lines_changed":4},{"name":"jc/parsers/passwd.py","lines_changed":4},{"name":"jc/parsers/ping.py","lines_changed":4},{"name":"jc/parsers/pip_list.py","lines_changed":4},{"name":"jc/parsers/pip_show.py","lines_changed":4},{"name":"jc/parsers/ps.py","lines_changed":4},{"name":"jc/parsers/route.py","lines_changed":4},{"name":"jc/parsers/rpm_qi.py","lines_changed":4},{"name":"jc/parsers/sfdisk.py","lines_changed":4},{"name":"jc/parsers/shadow.py","lines_changed":4},{"name":"jc/parsers/ss.py","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"jc/parsers/sysctl.py","lines_changed":4},{"name":"jc/parsers/systemctl.py","lines_changed":4},{"name":"jc/parsers/systemctl_lj.py","lines_changed":4},{"name":"jc/parsers/systemctl_ls.py","lines_changed":4},{"name":"jc/parsers/systemctl_luf.py","lines_changed":4},{"name":"jc/parsers/systeminfo.py","lines_changed":4},{"name":"jc/parsers/time.py","lines_changed":4},{"name":"jc/parsers/timedatectl.py","lines_changed":4},{"name":"jc/parsers/tracepath.py","lines_changed":4},{"name":"jc/parsers/traceroute.py","lines_changed":4},{"name":"jc/parsers/ufw.py","lines_changed":4},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":4},{"name":"jc/parsers/uname.py","lines_changed":4},{"name":"jc/parsers/upower.py","lines_changed":4},{"name":"jc/parsers/uptime.py","lines_changed":4},{"name":"jc/parsers/vmstat.py","lines_changed":4},{"name":"jc/parsers/w.py","lines_changed":4},{"name":"jc/parsers/wc.py","lines_changed":4},{"name":"jc/parsers/who.py","lines_changed":4},{"name":"jc/parsers/xml.py","lines_changed":4},{"name":"jc/parsers/yaml.py","lines_changed":4},{"name":"jc/utils.py","lines_changed":40}]}},{"commit":"0e2fe401e1c49a9f947d7d17b72cfc4e90787f47","message":"version bump","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]}},{"commit":"14247adb0ae007924ca551a706eb0cfdbae97a41","message":"add input type checks","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["jc/parsers/csv_s.py","tests/test_csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":7},{"name":"tests/test_csv_s.py","lines_changed":2}]}},{"commit":"3a9f0934c41c85ea7fa87165b9559f08814645cd","message":"add input type checks","stats":{"files_changed":2,"insertions":5,"deletions":3,"files":["jc/parsers/ls_s.py","tests/test_ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":6},{"name":"tests/test_ls_s.py","lines_changed":2}]}},{"commit":"caf0a5c8713bf0d72951a2c6fd5a2c62c9eb59d3","message":"add input type checking","stats":{"files_changed":2,"insertions":7,"deletions":4,"files":["jc/parsers/vmstat_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":9},{"name":"tests/test_vmstat_s.py","lines_changed":2}]}},{"commit":"cfb58b1cf3e3028f8e03fdd93f0165cf8d230e1e","message":"add input type checks","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":8}]}},{"commit":"975cf195cc02774f50460ca479d9ebb7b73c7870","message":"formatting","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":1}]}},{"commit":"8a46a259a36efc55bb0b2141acb9dd5ae52b7725","message":"add input type checks","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["jc/parsers/ping_s.py","tests/test_ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":8},{"name":"tests/test_ping_s.py","lines_changed":2}]}},{"commit":"e395142e599aa78b4a7ec80dcc3f8ccf279f97b1","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"caaeaf0d67cf44f8d2651cc53a7528d3ef0c74d3","message":"add 'str' type check on input","stats":{"files_changed":76,"insertions":227,"deletions":227,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":6},{"name":"jc/parsers/airport.py","lines_changed":6},{"name":"jc/parsers/airport_s.py","lines_changed":6},{"name":"jc/parsers/arp.py","lines_changed":6},{"name":"jc/parsers/blkid.py","lines_changed":6},{"name":"jc/parsers/cksum.py","lines_changed":6},{"name":"jc/parsers/crontab.py","lines_changed":6},{"name":"jc/parsers/crontab_u.py","lines_changed":6},{"name":"jc/parsers/csv.py","lines_changed":6},{"name":"jc/parsers/date.py","lines_changed":6},{"name":"jc/parsers/df.py","lines_changed":6},{"name":"jc/parsers/dig.py","lines_changed":6},{"name":"jc/parsers/dir.py","lines_changed":6},{"name":"jc/parsers/dmidecode.py","lines_changed":6},{"name":"jc/parsers/dpkg_l.py","lines_changed":6},{"name":"jc/parsers/du.py","lines_changed":6},{"name":"jc/parsers/env.py","lines_changed":6},{"name":"jc/parsers/file.py","lines_changed":6},{"name":"jc/parsers/finger.py","lines_changed":6},{"name":"jc/parsers/foo.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":6},{"name":"jc/parsers/fstab.py","lines_changed":6},{"name":"jc/parsers/group.py","lines_changed":6},{"name":"jc/parsers/gshadow.py","lines_changed":6},{"name":"jc/parsers/hash.py","lines_changed":6},{"name":"jc/parsers/hashsum.py","lines_changed":6},{"name":"jc/parsers/hciconfig.py","lines_changed":6},{"name":"jc/parsers/history.py","lines_changed":6},{"name":"jc/parsers/hosts.py","lines_changed":6},{"name":"jc/parsers/id.py","lines_changed":6},{"name":"jc/parsers/ifconfig.py","lines_changed":6},{"name":"jc/parsers/ini.py","lines_changed":6},{"name":"jc/parsers/iptables.py","lines_changed":6},{"name":"jc/parsers/iw_scan.py","lines_changed":6},{"name":"jc/parsers/jobs.py","lines_changed":6},{"name":"jc/parsers/last.py","lines_changed":6},{"name":"jc/parsers/ls.py","lines_changed":6},{"name":"jc/parsers/lsblk.py","lines_changed":6},{"name":"jc/parsers/lsmod.py","lines_changed":6},{"name":"jc/parsers/lsof.py","lines_changed":6},{"name":"jc/parsers/lsusb.py","lines_changed":6},{"name":"jc/parsers/mount.py","lines_changed":6},{"name":"jc/parsers/netstat.py","lines_changed":6},{"name":"jc/parsers/ntpq.py","lines_changed":6},{"name":"jc/parsers/passwd.py","lines_changed":6},{"name":"jc/parsers/ping.py","lines_changed":6},{"name":"jc/parsers/pip_list.py","lines_changed":6},{"name":"jc/parsers/pip_show.py","lines_changed":6},{"name":"jc/parsers/ps.py","lines_changed":6},{"name":"jc/parsers/route.py","lines_changed":6},{"name":"jc/parsers/rpm_qi.py","lines_changed":6},{"name":"jc/parsers/sfdisk.py","lines_changed":6},{"name":"jc/parsers/shadow.py","lines_changed":6},{"name":"jc/parsers/ss.py","lines_changed":6},{"name":"jc/parsers/stat.py","lines_changed":6},{"name":"jc/parsers/sysctl.py","lines_changed":6},{"name":"jc/parsers/systemctl.py","lines_changed":6},{"name":"jc/parsers/systemctl_lj.py","lines_changed":6},{"name":"jc/parsers/systemctl_ls.py","lines_changed":6},{"name":"jc/parsers/systemctl_luf.py","lines_changed":6},{"name":"jc/parsers/systeminfo.py","lines_changed":6},{"name":"jc/parsers/time.py","lines_changed":6},{"name":"jc/parsers/timedatectl.py","lines_changed":6},{"name":"jc/parsers/tracepath.py","lines_changed":6},{"name":"jc/parsers/traceroute.py","lines_changed":6},{"name":"jc/parsers/ufw.py","lines_changed":6},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":6},{"name":"jc/parsers/uname.py","lines_changed":6},{"name":"jc/parsers/upower.py","lines_changed":6},{"name":"jc/parsers/uptime.py","lines_changed":6},{"name":"jc/parsers/vmstat.py","lines_changed":6},{"name":"jc/parsers/w.py","lines_changed":6},{"name":"jc/parsers/wc.py","lines_changed":6},{"name":"jc/parsers/who.py","lines_changed":6},{"name":"jc/parsers/xml.py","lines_changed":6},{"name":"jc/parsers/yaml.py","lines_changed":6}]}},{"commit":"21e69a7cbf62240238f6fb78e874dda6ce2e922a","message":"ignore _config.yml","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"],"file_stats":[{"name":".gitignore","lines_changed":1}]}},{"commit":"603964935b58e02cf0614cf67ffacc6d94755e05","message":"remove trailing whitespace","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]}},{"commit":"47eb83ae55b9892716fff712bd2be21b6191b552","message":"add .vscode","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"],"file_stats":[{"name":".gitignore","lines_changed":1}]}},{"commit":"fc0ce6c95923ab124961e695a26c0b68dd0f359f","message":"add streaming parser to custom parsers info","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"077a29fb4eedcfccb026498c5c3a64b7b7601363","message":"add _jc_meta field info","stats":{"files_changed":2,"insertions":14,"deletions":2,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":8},{"name":"jc/parsers/csv_s.py","lines_changed":8}]}},{"commit":"8568d0d328706a7a5b1476452e078d8cbe7b7391","message":"fix csv_s documentation","stats":{"files_changed":3,"insertions":7,"deletions":3,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":4},{"name":"jc/parsers/csv_s.py","lines_changed":4},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"597d39c28ea0c0fe3b072413e9d91ab5e27b62bd","message":"Merge pull request #180 from kellyjonbrazil/dev"},{"commit":"eb888dcbbcf83c9197bd59aab72f65ea6eb622ba","message":"version bump","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["jc/__init__.py","man/jc.1","setup.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"d1b9ac0841b15ee15690c4066453a322618320ed","message":"doc update","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/df.md","docs/parsers/netstat.md","docs/parsers/ping.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"89a6d9c5c39b74f1b040f410659bfd7ae1a902d1","message":"add key-check to restore previous behavior even with non-df data","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":5}]}},{"commit":"85d983761637129cb85abfb0bbdde7c507061cd2","message":"add df info","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]}},{"commit":"cd7731484d826d84d835ecd460d746e78cadc5fc","message":"fix for cases where the Filesystem data overflows the column length (happens on older versions of df)","stats":{"files_changed":4,"insertions":62,"deletions":2,"files":["jc/parsers/df.py","tests/fixtures/generic/df-long-filesystem.json","tests/fixtures/generic/df-long-filesystem.out","tests/test_df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":47},{"name":"tests/fixtures/generic/df-long-filesystem.json","lines_changed":1},{"name":"tests/fixtures/generic/df-long-filesystem.out","lines_changed":4},{"name":"tests/test_df.py","lines_changed":12}]}},{"commit":"086da16b1743c16a5ccdd102f889fb31f99e3caa","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":2}]}},{"commit":"20830528f04a5ecbe78420d8008249b089667767","message":"add test for older netstat version fix","stats":{"files_changed":4,"insertions":28,"deletions":0,"files":["CHANGELOG","tests/fixtures/generic/netstat-old.json","tests/fixtures/generic/netstat-old.out","tests/test_netstat.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"tests/fixtures/generic/netstat-old.json","lines_changed":1},{"name":"tests/fixtures/generic/netstat-old.out","lines_changed":14},{"name":"tests/test_netstat.py","lines_changed":12}]}},{"commit":"83371edd8fe3d23dfa92fc707604086522c85ab9","message":"add space before inode to compensate for removed dash","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat_linux.py"],"file_stats":[{"name":"jc/parsers/netstat_linux.py","lines_changed":2}]}},{"commit":"364a81decc16742e3caa070d90b1d605d96fe2c1","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":2}]}},{"commit":"ef09592ad3e5c9a77c1bdebe8f876fc4dde54834","message":"update for 1.17.2","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]}},{"commit":"4a86e109ccb254d5195b782f84f3967c96ef726c","message":"Merge pull request #179 from shaikustin/ping-alpine-linux"},{"commit":"7fa5391b6613e62689c624041e03f9750c9c7972","message":"change alpine ping6 to ping","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_ping.py"],"file_stats":[{"name":"tests/test_ping.py","lines_changed":2}]}},{"commit":"9b53ba5714819ff760f2d4546f5d2ee4d521c080","message":"support alpine linux ping","stats":{"files_changed":6,"insertions":45,"deletions":1,"files":["jc/parsers/ping.py",".../fixtures/alpine-linux-3.13/ping-hostname.json","tests/fixtures/alpine-linux-3.13/ping-hostname.out","tests/fixtures/alpine-linux-3.13/ping-ip.json","tests/fixtures/alpine-linux-3.13/ping-ip.out","tests/test_ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":2},{"name":".../fixtures/alpine-linux-3.13/ping-hostname.json","lines_changed":1},{"name":"tests/fixtures/alpine-linux-3.13/ping-hostname.out","lines_changed":9},{"name":"tests/fixtures/alpine-linux-3.13/ping-ip.json","lines_changed":1},{"name":"tests/fixtures/alpine-linux-3.13/ping-ip.out","lines_changed":6},{"name":"tests/test_ping.py","lines_changed":27}]}},{"commit":"b59e38cfd2c8a7f5868e05d5562557b1c27e5e56","message":"Merge pull request #176 from kellyjonbrazil/dev"},{"commit":"5ba22dae597b9d154ca0a82f71cfbd8d8a6325db","message":"add JSON lines info","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2}]}},{"commit":"4232e523acc523e510b4881d2a57a95b88ec8c8b","message":"Merge branch 'master' into dev"},{"commit":"bee80b35d2b8c15e6233f2798e9c02a11e9e1e9e","message":"update for version bump","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["CHANGELOG","docs/parsers/csv_s.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":8},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"c32395f6950d6294770ee93e8bf4d79c7d275ac3","message":"linting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":2}]}},{"commit":"735c5e1078cc27b5cba03b8ebbae15aeca6b8fbd","message":"update comments for ParseError test: https://bugs.python.org/issue45617","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["tests/test_csv_s.py"],"file_stats":[{"name":"tests/test_csv_s.py","lines_changed":5}]}},{"commit":"d09c94b292ca3beec92a00f8a51b7259dd30a1e5","message":"add python 3.10 testing info","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]}},{"commit":"4d04866f48f72b9ea0d213dc1533729d3b68a503","message":"add python bug https://bugs.python.org/issue45617 info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":1}]}},{"commit":"a2d90f4dfcdc2cb00c6c0fa957493c95a21e256b","message":"force test","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_csv_s.py"],"file_stats":[{"name":"tests/test_csv_s.py","lines_changed":2}]}},{"commit":"93a5002c8b530bd6f5f81e5d8595cde1f836ae41","message":"fix 3.10.0 version number","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]}},{"commit":"23bf5227a4c39ea017e55fc21150331e1af6fdb7","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"77c96fa2a96148221bde7d2274e0dfb5386a166f","message":"try tests on python 3.10","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["tests/test_csv_s.py"],"file_stats":[{"name":"tests/test_csv_s.py","lines_changed":3}]}},{"commit":"3f5a1f015e9c0807e227b9f7300592e25502e014","message":"add python 3.10","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]}},{"commit":"b280c4fc18e60a85ab212b09aa5bf3a05a0eceff","message":"add ParseError test to streaming csv parser","stats":{"files_changed":2,"insertions":11,"deletions":19,"files":[".../fixtures/generic/csv-insurance-streaming.json","tests/test_csv_s.py"],"file_stats":[{"name":".../fixtures/generic/csv-insurance-streaming.json","lines_changed":1},{"name":"tests/test_csv_s.py","lines_changed":29}]}},{"commit":"3ab9b43a2eebf535be98c94810ac474bf32ec515","message":"raise ParseError on newline bug","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":14}]}},{"commit":"46f568414a5c8d2f135486e86d0ada48cfcefeb0","message":"change streaming parser test names","stats":{"files_changed":3,"insertions":96,"deletions":89,"files":["tests/test_ls_s.py","tests/test_ping_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"tests/test_ls_s.py","lines_changed":26},{"name":"tests/test_ping_s.py","lines_changed":138},{"name":"tests/test_vmstat_s.py","lines_changed":21}]}},{"commit":"cba2fd299fff09a551b780e064a6e22bdf7e539a","message":"add tests","stats":{"files_changed":9,"insertions":75,"deletions":61,"files":[".../generic/csv-10k-sales-records-streaming.json","tests/fixtures/generic/csv-deniro-streaming.json","tests/fixtures/generic/csv-example-streaming.json","tests/fixtures/generic/csv-flyrna-streaming.json","tests/fixtures/generic/csv-flyrna2-streaming.json",".../fixtures/generic/csv-homes-pipe-streaming.json","tests/fixtures/generic/csv-homes-streaming.json",".../fixtures/generic/csv-insurance-streaming.json","tests/test_csv_s.py"],"file_stats":[{"name":".../generic/csv-10k-sales-records-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-deniro-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-example-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna2-streaming.json","lines_changed":1},{"name":".../fixtures/generic/csv-homes-pipe-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-homes-streaming.json","lines_changed":1},{"name":".../fixtures/generic/csv-insurance-streaming.json","lines_changed":1},{"name":"tests/test_csv_s.py","lines_changed":128}]}},{"commit":"1e6e44f656f1bbb277eb38fb485f7b48e3b9e40b","message":"fix for piping data with non-platform newlines (e.g. windows csv files on unix)","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":5}]}},{"commit":"acac0399946d9781193e9350dd7109f1dd3999fe","message":"working tests","stats":{"files_changed":3,"insertions":149,"deletions":0,"files":["tests/fixtures/generic/csv-biostats-streaming.json","tests/fixtures/generic/csv-cities-streaming.json","tests/test_csv_s.py"],"file_stats":[{"name":"tests/fixtures/generic/csv-biostats-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-cities-streaming.json","lines_changed":1},{"name":"tests/test_csv_s.py","lines_changed":147}]}},{"commit":"50a3b340164b3139f04f67a2bee16e5343c8a2da","message":"optimizations and use iter() so we can exhaust data coming from list objects","stats":{"files_changed":1,"insertions":5,"deletions":8,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":13}]}},{"commit":"b45396070cf28fa36ecb44acd7be3e3bb81a712d","message":"update comment","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_vmstat_s.py"],"file_stats":[{"name":"tests/test_vmstat_s.py","lines_changed":2}]}},{"commit":"218b9aec8ac397e26e6cd4ff407f3d10ef88ea9b","message":"doc update for streaming CSV parser","stats":{"files_changed":4,"insertions":87,"deletions":48,"files":["README.md","docs/parsers/csv_s.md","jc/parsers/csv_s.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/csv_s.md","lines_changed":75},{"name":"jc/parsers/csv_s.py","lines_changed":52},{"name":"man/jc.1","lines_changed":7}]}},{"commit":"2b887debc647bd533040e392465967d12869cb02","message":"add csv streaming parser","stats":{"files_changed":4,"insertions":10172,"deletions":1,"files":["CHANGELOG","jc/cli.py","jc/parsers/csv_s.py","tests/fixtures/generic/csv-10k-sales-records.csv"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/csv_s.py","lines_changed":168},{"name":"tests/fixtures/generic/csv-10k-sales-records.csv","lines_changed":10001}]}},{"commit":"0313e3f8ca0e22e1575192d765d5afedf48e94df","message":"linting","stats":{"files_changed":1,"insertions":9,"deletions":6,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":15}]}},{"commit":"1669e6e20c3af3d28968558b76d0901a56775ac0","message":"linting","stats":{"files_changed":1,"insertions":23,"deletions":28,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":51}]}},{"commit":"ef6de75dda90c7221d53e0e0a942f0cac2247354","message":"add vmstat timestamp tests to utils","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":4}]}},{"commit":"a6bcec425a3f44ba3c7cd06b5ebaf522b66df109","message":"comment update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":2}]}},{"commit":"596ad9a64d002ced212b08512126e52707fe73d2","message":"update comment","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":2}]}},{"commit":"7a91c93319f75c37ba6bf268d8270947f0bf8b22","message":"add lsusb","stats":{"files_changed":1,"insertions":122,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":122}]}},{"commit":"b5f7b35f89197879a9f13bd8fa5d2a0c77cc059a","message":"comment update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":2}]}},{"commit":"2f47fb7f14c4ff0e1c835897d94ee81d14590aba","message":"fix ParseError tests","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["tests/test_uname.py"],"file_stats":[{"name":"tests/test_uname.py","lines_changed":5}]}},{"commit":"1b214c403657a50689f2a04892ce836dea669a1d","message":"raise ParseError if -t option is detected. add test","stats":{"files_changed":3,"insertions":30,"deletions":0,"files":["jc/parsers/lsusb.py","tests/fixtures/generic/lsusb-t.out","tests/test_lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":5},{"name":"tests/fixtures/generic/lsusb-t.out","lines_changed":15},{"name":"tests/test_lsusb.py","lines_changed":10}]}},{"commit":"8f94f8acc6bb53bbb19ba150551c7df2183a8863","message":"add tests and update docs","stats":{"files_changed":11,"insertions":384,"deletions":3,"files":["README.md","docs/parsers/file.md","docs/parsers/lsusb.md","docs/parsers/uname.md","man/jc.1","tests/fixtures/centos-7.7/lsusb-v-single.json","tests/fixtures/centos-7.7/lsusb-v.json","tests/fixtures/centos-7.7/lsusb.json","tests/fixtures/generic/lsusb-test-attributes.json","tests/fixtures/generic/lsusb-test-attributes2.json","tests/test_lsusb.py"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":288},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"man/jc.1","lines_changed":7},{"name":"tests/fixtures/centos-7.7/lsusb-v-single.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsusb-v.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsusb.json","lines_changed":1},{"name":"tests/fixtures/generic/lsusb-test-attributes.json","lines_changed":1},{"name":"tests/fixtures/generic/lsusb-test-attributes2.json","lines_changed":1},{"name":"tests/test_lsusb.py","lines_changed":82}]}},{"commit":"3a2a69cfa55e2f40d7536d923170a5cfc986998e","message":"formatting","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":4}]}},{"commit":"f599c659881248b79c6dbc86d85a61311c9d3434","message":"add stress test examples","stats":{"files_changed":2,"insertions":464,"deletions":0,"files":["tests/fixtures/generic/lsusb-test-attributes.out","tests/fixtures/generic/lsusb-test-attributes2.out"],"file_stats":[{"name":"tests/fixtures/generic/lsusb-test-attributes.out","lines_changed":116},{"name":"tests/fixtures/generic/lsusb-test-attributes2.out","lines_changed":348}]}},{"commit":"ad12849fd9fc2177afb30740acc63cf284dc394b","message":"update docs example and","stats":{"files_changed":1,"insertions":138,"deletions":26,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":164}]}},{"commit":"f36b3789e8df6673207d6c2d3d0796acfdfe011d","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":4}]}},{"commit":"6d18c0ba61cd188dbff736f1be47b7362c841687","message":"change variable name last_attribute and last_attr to last_item","stats":{"files_changed":1,"insertions":47,"deletions":47,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":94}]}},{"commit":"17097abec9567a58b5a5f7bbed11ecfd69cbd28c","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":6,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":8}]}},{"commit":"b7ddd3b285f205211394edc70b611171cf72a4c5","message":"change variable names","stats":{"files_changed":1,"insertions":22,"deletions":22,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":44}]}},{"commit":"75b23f62c9d7b33907af92964d1a6234332fbc78","message":"working configuration_descriptor and device_descriptor attributes","stats":{"files_changed":1,"insertions":35,"deletions":7,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":42}]}},{"commit":"f88967b2a59d79e053554d1e141f71e9d2d87456","message":"add attribute lists up to interface_association","stats":{"files_changed":1,"insertions":126,"deletions":21,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":147}]}},{"commit":"ba2846664b35b2e94aa905431c55c029b24a64e3","message":"edpoint_descriptors attributes working","stats":{"files_changed":1,"insertions":22,"deletions":2,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":24}]}},{"commit":"10dba37ca2624e05eff246ef49df8ebd3f275d86","message":"hub_descriptor attributes working","stats":{"files_changed":1,"insertions":28,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":29}]}},{"commit":"0e6f938514965503f1d86d56c047f9f8fc03ac65","message":"working hub_port_status section","stats":{"files_changed":1,"insertions":36,"deletions":45,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":81}]}},{"commit":"159d87c1126f4d79d5e34837bc2c353a5445803b","message":"add length guard and test for uname with no -a on linux","stats":{"files_changed":3,"insertions":18,"deletions":7,"files":["jc/parsers/uname.py","tests/fixtures/centos-7.7/uname.out","tests/test_uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":11},{"name":"tests/fixtures/centos-7.7/uname.out","lines_changed":1},{"name":"tests/test_uname.py","lines_changed":13}]}},{"commit":"9e7b1621cf232e9859bdf018737e536820f380a0","message":"device_status working","stats":{"files_changed":1,"insertions":18,"deletions":18,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":36}]}},{"commit":"2057817ef8fec85b2a978b682e7fe8bc16def828","message":"add uname tests","stats":{"files_changed":11,"insertions":89,"deletions":0,"files":["tests/fixtures/debian10/uname-a.json","tests/fixtures/debian10/uname-a.out","tests/fixtures/freebsd12/uname-a.json","tests/fixtures/freebsd12/uname-a.out","tests/fixtures/freebsd12/uname-a2.json","tests/fixtures/freebsd12/uname-a2.out","tests/fixtures/generic/uname-a-different-proc.json","tests/fixtures/generic/uname-a-different-proc.out","tests/fixtures/generic/uname-a.json","tests/fixtures/generic/uname-a.out","tests/test_uname.py"],"file_stats":[{"name":"tests/fixtures/debian10/uname-a.json","lines_changed":10},{"name":"tests/fixtures/debian10/uname-a.out","lines_changed":2},{"name":"tests/fixtures/freebsd12/uname-a.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/uname-a.out","lines_changed":2},{"name":"tests/fixtures/freebsd12/uname-a2.json","lines_changed":7},{"name":"tests/fixtures/freebsd12/uname-a2.out","lines_changed":2},{"name":"tests/fixtures/generic/uname-a-different-proc.json","lines_changed":1},{"name":"tests/fixtures/generic/uname-a-different-proc.out","lines_changed":1},{"name":"tests/fixtures/generic/uname-a.json","lines_changed":1},{"name":"tests/fixtures/generic/uname-a.out","lines_changed":2},{"name":"tests/test_uname.py","lines_changed":60}]}},{"commit":"a1eabad2d37bb0d0e9407edf7305e223eba67da2","message":"add comments","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":6}]}},{"commit":"92bf2b1ca2a172d3977d6e3c36b5ca1a8c2bab63","message":"simplify fixup logic for uname","stats":{"files_changed":2,"insertions":8,"deletions":20,"files":["CHANGELOG","jc/parsers/uname.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":26}]}},{"commit":"2b2123a4ba9b77d2089d367fe85dcb5d2857a295","message":"add FreeBSD support","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","jc/parsers/uname.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/parsers/uname.py","lines_changed":4}]}},{"commit":"908b2f9200ddcce4beb531a3c90908786b6a5b02","message":"add items","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]}},{"commit":"deff0c7bfdf942b8d7e7bd140219e08bf80a50cb","message":"remove print debug","stats":{"files_changed":1,"insertions":1,"deletions":5,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":6}]}},{"commit":"7cd01efa64029775042a2c145997ce30ef6b4f6b","message":"fixup for cases where the 'process' and/or 'machine' fields are blank on linux","stats":{"files_changed":1,"insertions":25,"deletions":1,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":26}]}},{"commit":"2dbe56456bbea2bdfce7eacbf8b9f10a1b249f55","message":"add nested_dict. start work on hub_port_status and device_status","stats":{"files_changed":1,"insertions":49,"deletions":39,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":88}]}},{"commit":"6078a411ef612be8bad012aa404f34ebd74a1fd7","message":"add initial schema doc","stats":{"files_changed":1,"insertions":79,"deletions":4,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":83}]}},{"commit":"4a3656562f161a51f5cb6f0e9ccd271859b78d62","message":"del null keys","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":6}]}},{"commit":"ba75989a24839907723ed7c3d7a497473d489a34","message":"update comments","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":10}]}},{"commit":"9e9e2c362894f0072ab839565829881d750c8912","message":"move state instantiation before has_data test","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":4}]}},{"commit":"9a2a8c6b61a46a9bfb5a4492b86774a4a78672ab","message":"shorten set_sections","stats":{"files_changed":1,"insertions":20,"deletions":52,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":72}]}},{"commit":"dae42ef1619441637672d634f9e5d7ab26115f09","message":"add hub_port_status and device_status","stats":{"files_changed":1,"insertions":18,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":19}]}},{"commit":"931f2cab78bda180443535c04b532d04c6e88dd0","message":"add hub_descriptor","stats":{"files_changed":1,"insertions":14,"deletions":11,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":25}]}},{"commit":"72b061bed4453686d264ccf8977cba6c2a4794ec","message":"add endpoint_descriptors","stats":{"files_changed":1,"insertions":32,"deletions":8,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":40}]}},{"commit":"29a7c73990d9620b15a4010d17fc9a9a859f44b4","message":"add hid_device_descriptor and report_descriptors","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":16}]}},{"commit":"2d1d68e3007f76d4c34ac07ae822935ab6021e79","message":"simplify populate_lists. Add CDC lists","stats":{"files_changed":1,"insertions":87,"deletions":88,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":175}]}},{"commit":"c5c1e170d1f502de5c76e9e481a23b26ffcaf237","message":"interface descriptors working","stats":{"files_changed":1,"insertions":111,"deletions":76,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":187}]}},{"commit":"9c1bb66452838e704ef2277f313bb51a42dc03b9","message":"fix remove _state field during schema_populate","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":18}]}},{"commit":"a4f3306bae90fbc807fdd9ff2ce71e25d36a663f","message":"initial schema build. need to figure out why deleting _state from output_line causes exceptions","stats":{"files_changed":1,"insertions":69,"deletions":28,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":97}]}},{"commit":"1bc638b6ee7a820406ba4b84d3408f7cd4fe779d","message":"add bus_list and add all device_list data to the list","stats":{"files_changed":1,"insertions":36,"deletions":32,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":68}]}},{"commit":"9ad0cd9dae8822235c37159541ce72471eb4263e","message":"now storing state within the objects to make building the schema (later) easier.","stats":{"files_changed":1,"insertions":116,"deletions":211,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":327}]}},{"commit":"6d4a4691276d8659253b2ac8f8bdbd71a1fece7d","message":"use class for state","stats":{"files_changed":1,"insertions":356,"deletions":333,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":689}]}},{"commit":"ed6997e3ff2e575a6d4daa7d7a2cbe7dddacdd4d","message":"add interface_association section","stats":{"files_changed":2,"insertions":170,"deletions":34,"files":["jc/parsers/lsusb.py","tests/fixtures/centos-7.7/lsusb-v-single.out"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":104},{"name":"tests/fixtures/centos-7.7/lsusb-v-single.out","lines_changed":100}]}},{"commit":"eb788fca6e25eea1fa8a43b22360c852ecf5af35","message":"somewhat working lsusb parser. needs a lot more TLC","stats":{"files_changed":4,"insertions":919,"deletions":0,"files":["jc/cli.py","jc/parsers/lsusb.py","tests/fixtures/centos-7.7/lsusb-v.out","tests/fixtures/centos-7.7/lsusb.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/lsusb.py","lines_changed":404},{"name":"tests/fixtures/centos-7.7/lsusb-v.out","lines_changed":509},{"name":"tests/fixtures/centos-7.7/lsusb.out","lines_changed":5}]}},{"commit":"9186f5f37739012b8c04c776310a20ef55b1469f","message":"fix file parser for gzip cases (has ': ' in the description, which is the delimiter)","stats":{"files_changed":7,"insertions":99,"deletions":4,"files":["CHANGELOG","jc/__init__.py","jc/parsers/file.py","setup.py","tests/fixtures/osx-10.14.6/file3.json","tests/fixtures/osx-10.14.6/file3.out","tests/test_file.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":11},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/file3.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/file3.out","lines_changed":72},{"name":"tests/test_file.py","lines_changed":12}]}},{"commit":"30cff5f28140a5b20a617c8145c13e43b7b6685b","message":"add note that the streaming parser outputs JSON Lines","stats":{"files_changed":8,"insertions":17,"deletions":3,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":4},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":4},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"b724e0969a0d6b22bed0c77eb8d629381179ea3f","message":"-qq instead of -q","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2}]}},{"commit":"a62c49e8715873b068a96da5021ea24a783acd6b","message":"Merge pull request #172 from kellyjonbrazil/master"},{"commit":"9b160f6279bbbf0c15413c98922eef137ba2f3f4","message":"link update","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]}},{"commit":"338a4e2612f70bb3e2af31f61a7db75f647293fe","message":"formatting","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]}},{"commit":"0140688750be61dd752059ee66734ab1c7a8f30e","message":"link updates","stats":{"files_changed":6,"insertions":8,"deletions":4,"files":["README.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"73e5ea98c1ca2b9299085e3832791162eca3b9ff","message":"Merge pull request #170 from kellyjonbrazil/dev"},{"commit":"77dcbc544da271edab5de5ad209117e98c846f9c","message":"final doc update","stats":{"files_changed":3,"insertions":2,"deletions":3,"files":["CHANGELOG","jc/__init__.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"c7bcb0947ae32acc9cdba7a6975d2f2557f10a39","message":"indent subsequent error and warning lines","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":4}]}},{"commit":"5cd3f7f71d38b560a88dd6057e9c7a94991a3d71","message":"Add example to raise ParseError if there is no output data to yield","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":6}]}},{"commit":"5044388ab2e8d7d8b427fd51b0ab875611bd127f","message":"raise if line data is unrecognized","stats":{"files_changed":2,"insertions":6,"deletions":3,"files":["jc/parsers/vmstat_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":6},{"name":"tests/test_vmstat_s.py","lines_changed":3}]}},{"commit":"ee075db59819d80e4dcb60ddbd9cfe2fd529dfe9","message":"linting","stats":{"files_changed":4,"insertions":5,"deletions":7,"files":["jc/cli.py","jc/parsers/foo_s.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":5},{"name":"jc/parsers/vmstat_s.py","lines_changed":3}]}},{"commit":"9904e0be61e7c81b907bf3770f111346daeff481","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":2},{"name":"jc/utils.py","lines_changed":2}]}},{"commit":"31b69b3242eeca2c02f87c31d58193dd3f06fe49","message":"formatting","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":6},{"name":"jc/utils.py","lines_changed":6}]}},{"commit":"e6a80fea3228122dd84e17672c835c0460ad1342","message":"formatting","stats":{"files_changed":3,"insertions":7,"deletions":7,"files":["docs/utils.md","jc/utils.py","man/jc.1"],"file_stats":[{"name":"docs/utils.md","lines_changed":6},{"name":"jc/utils.py","lines_changed":6},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"d6aec00e038d1ecfe43c13a6909d50630455b372","message":"add vmstat-1-long tests","stats":{"files_changed":4,"insertions":27,"deletions":1,"files":["tests/fixtures/ubuntu-18.04/vmstat-1-long-streaming.json","tests/fixtures/ubuntu-18.04/vmstat-1-long.json","tests/test_vmstat.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"tests/fixtures/ubuntu-18.04/vmstat-1-long-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/vmstat-1-long.json","lines_changed":1},{"name":"tests/test_vmstat.py","lines_changed":12},{"name":"tests/test_vmstat_s.py","lines_changed":14}]}},{"commit":"4aa7d81e11ea7fcfbb5c9d74337cde617b1a0d5d","message":"ignore re-printed header rows in output","stats":{"files_changed":3,"insertions":50,"deletions":2,"files":["jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","tests/fixtures/ubuntu-18.04/vmstat-1-long.out"],"file_stats":[{"name":"jc/parsers/vmstat.py","lines_changed":3},{"name":"jc/parsers/vmstat_s.py","lines_changed":7},{"name":"tests/fixtures/ubuntu-18.04/vmstat-1-long.out","lines_changed":42}]}},{"commit":"48cdabc3b0862d6291e1ec59ab385e0e146c31eb","message":"document timestamps","stats":{"files_changed":4,"insertions":16,"deletions":0,"files":["docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/vmstat.md","lines_changed":4},{"name":"docs/parsers/vmstat_s.md","lines_changed":4},{"name":"jc/parsers/vmstat.py","lines_changed":4},{"name":"jc/parsers/vmstat_s.py","lines_changed":4}]}},{"commit":"a1791ef5479749692c79bbe98fc7687d70cd6cda","message":"linting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2}]}},{"commit":"7bc87f6c2d4cfcfa656a1c1b8973a4c0414c85d9","message":"change _meta to _jc_meta","stats":{"files_changed":8,"insertions":8,"deletions":8,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"bbed9e274b8252ba0518140fe7fc97029310771f","message":"linting","stats":{"files_changed":1,"insertions":154,"deletions":159,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":313}]}},{"commit":"486282b9856f5e56cf43ee1399d8e7cb78353b32","message":"linting","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":10}]}},{"commit":"a4d45b653f794033978940da14910f5d607a8254","message":"linting","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["jc/parsers/foo_s.py","jc/parsers/vmstat.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":8}]}},{"commit":"22e151b01c0f97c141d912c9646e46df0320d622","message":"linting","stats":{"files_changed":2,"insertions":56,"deletions":60,"files":["jc/cli.py","jc/utils.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":88},{"name":"jc/utils.py","lines_changed":28}]}},{"commit":"7a4ebcd1ecdb4929aae70e44b4f9b6b5ab52b393","message":"language hints","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":4}]}},{"commit":"651cbfe02fbb354c4caf8e0d022655642e7caed3","message":"add streaming foo parser","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]}},{"commit":"8c3e764516e1c28961b09380b638a57ce98b1261","message":"add streaming parser to contrib guidelines","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"b4e75da7e3f23502723ce8b2a7261b376f296864","message":"formatting","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"templates/readme_template","lines_changed":4}]}},{"commit":"37223f086cabc8db5962415bd161fed151dafb9d","message":"formatting","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":5},{"name":"templates/readme_template","lines_changed":5}]}},{"commit":"a404033735c2c8075a8e08194197eae59db70afd","message":"add error and warning message wrap info","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]}},{"commit":"b7433ed085c0ba22ea0d49330871a651a8d83fb4","message":"auto wrap warning and error messages","stats":{"files_changed":6,"insertions":80,"deletions":41,"files":["docs/utils.md","jc/cli.py","jc/parsers/file.py","jc/parsers/ls.py","jc/parsers/traceroute.py","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":16},{"name":"jc/cli.py","lines_changed":39},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":60}]}},{"commit":"224d3d65ada4216e28e142d411b0c2c3358517b3","message":"Add exception class name to error message","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"a349fb0bdabaf74503831f22c4efbd02254f809d","message":"change _meta to _jc_meta","stats":{"files_changed":3,"insertions":10,"deletions":8,"files":["README.md","docs/utils.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"docs/utils.md","lines_changed":6},{"name":"man/jc.1","lines_changed":6}]}},{"commit":"e7ddcfb83fb295034db44ade407476ff3a962cd8","message":"change _meta to _jc_meta","stats":{"files_changed":5,"insertions":14,"deletions":12,"files":["jc/utils.py","templates/manpage_template","templates/readme_template",".../centos-7.7/ping-ip-O-streaming-ignore-exceptions.json","tests/test_ping_s.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":10},{"name":"templates/manpage_template","lines_changed":6},{"name":"templates/readme_template","lines_changed":6},{"name":".../centos-7.7/ping-ip-O-streaming-ignore-exceptions.json","lines_changed":2},{"name":"tests/test_ping_s.py","lines_changed":2}]}},{"commit":"abd20dfe3662f65373ac582c70aa740e53b52f68","message":"formatting","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"templates/manpage_template","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"dc1fd3ef1be41aee349b159059f1febff76f6caf","message":"fix -qq docs","stats":{"files_changed":4,"insertions":12,"deletions":12,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"man/jc.1","lines_changed":6},{"name":"templates/manpage_template","lines_changed":6},{"name":"templates/readme_template","lines_changed":6}]}},{"commit":"98a7686db46fbd3ed98382867976249f307d0015","message":"use -qq to ignore streaming exceptions","stats":{"files_changed":18,"insertions":160,"deletions":152,"files":["README.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","docs/utils.md","jc/cli.py","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","jc/utils.py","man/jc.1","templates/manpage_template","templates/readme_template","... => ping-ip-O-streaming-ignore-exceptions.json}","tests/test_ls_s.py","tests/test_ping_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":9},{"name":"docs/parsers/ping_s.md","lines_changed":9},{"name":"docs/parsers/vmstat_s.md","lines_changed":9},{"name":"docs/utils.md","lines_changed":6},{"name":"jc/cli.py","lines_changed":23},{"name":"jc/parsers/foo_s.py","lines_changed":13},{"name":"jc/parsers/ls_s.py","lines_changed":13},{"name":"jc/parsers/ping_s.py","lines_changed":13},{"name":"jc/parsers/vmstat_s.py","lines_changed":13},{"name":"jc/utils.py","lines_changed":12},{"name":"man/jc.1","lines_changed":4},{"name":"templates/manpage_template","lines_changed":4},{"name":"templates/readme_template","lines_changed":2},{"name":"... => ping-ip-O-streaming-ignore-exceptions.json}","lines_changed":0},{"name":"tests/test_ls_s.py","lines_changed":24},{"name":"tests/test_ping_s.py","lines_changed":140},{"name":"tests/test_vmstat_s.py","lines_changed":16}]}},{"commit":"9c6c6c4330fc68115be012de254161f36e3a8328","message":"add next() info","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"f9be5651daa891e06ad0acd8980ffc0fe51fd29d","message":"add language hints","stats":{"files_changed":2,"insertions":4,"deletions":6,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":5},{"name":"templates/readme_template","lines_changed":5}]}},{"commit":"df9835a3e62bb2b3b6ec8b55f06a25a00a799d92","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"92363be2dd633bdd3c2dd07c72ebd281d2cb4565","message":"fix streaming python module example","stats":{"files_changed":2,"insertions":2,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"templates/readme_template","lines_changed":3}]}},{"commit":"31b62030156f9c826fe5c7d127e9dd0ace582dd0","message":"formatting","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"templates/readme_template","lines_changed":6}]}},{"commit":"18805858d685d456f9a38540bbaedbaa1a411546","message":"formatting","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":4},{"name":"templates/manpage_template","lines_changed":2}]}},{"commit":"e676f0e20fb6e96a536c4d182b0d287cdc1ad0f7","message":"add streaming parser info for python module use","stats":{"files_changed":2,"insertions":36,"deletions":6,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":21},{"name":"templates/readme_template","lines_changed":21}]}},{"commit":"20652edefaa7705b8ba756bae3944ff362a295a6","message":"update changelog","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":7}]}},{"commit":"98c29d07478093e78f53ec633f2dd08cafc3e3ae","message":"add vmstat tests","stats":{"files_changed":8,"insertions":120,"deletions":0,"files":["tests/fixtures/centos-7.7/vmstat-a.json","tests/fixtures/centos-7.7/vmstat-at-5-10.json","tests/fixtures/centos-7.7/vmstat-awt.json","tests/fixtures/centos-7.7/vmstat-d.json","tests/fixtures/centos-7.7/vmstat-dt.json","tests/fixtures/centos-7.7/vmstat-w.json","tests/fixtures/centos-7.7/vmstat.json","tests/test_vmstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/vmstat-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-at-5-10.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-awt.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-d.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-dt.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-w.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat.json","lines_changed":1},{"name":"tests/test_vmstat.py","lines_changed":113}]}},{"commit":"41a6311f6b3ed2cc94919d042aed51c46cdf3e2f","message":"add streaming parser tests","stats":{"files_changed":9,"insertions":132,"deletions":1,"files":["tests/fixtures/centos-7.7/vmstat-a-streaming.json",".../centos-7.7/vmstat-at-5-10-streaming.json",".../fixtures/centos-7.7/vmstat-awt-streaming.json","tests/fixtures/centos-7.7/vmstat-d-streaming.json","tests/fixtures/centos-7.7/vmstat-dt-streaming.json","tests/fixtures/centos-7.7/vmstat-streaming.json","tests/fixtures/centos-7.7/vmstat-w-streaming.json","tests/test_ping_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/vmstat-a-streaming.json","lines_changed":1},{"name":".../centos-7.7/vmstat-at-5-10-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/vmstat-awt-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-d-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-dt-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-w-streaming.json","lines_changed":1},{"name":"tests/test_ping_s.py","lines_changed":2},{"name":"tests/test_vmstat_s.py","lines_changed":124}]}},{"commit":"978760ec57e04e3ec347c8764bfad015b6dddbff","message":"add exception class name to error string","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]}},{"commit":"d410425537817964ceb7b61e0fdff6c03fdf8766","message":"replace single quotes with double quotes in doc","stats":{"files_changed":4,"insertions":136,"deletions":136,"files":["docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/vmstat.md","lines_changed":68},{"name":"docs/parsers/vmstat_s.md","lines_changed":68},{"name":"jc/parsers/vmstat.py","lines_changed":68},{"name":"jc/parsers/vmstat_s.py","lines_changed":68}]}},{"commit":"6b7430329cbe1bfb95b47bcfe031906641c127e1","message":"doc update","stats":{"files_changed":5,"insertions":269,"deletions":1,"files":["README.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat_s.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":145},{"name":"docs/parsers/vmstat_s.md","lines_changed":105},{"name":"jc/parsers/vmstat_s.py","lines_changed":6},{"name":"man/jc.1","lines_changed":12}]}},{"commit":"40fe0d4a6081a1233bf5c3eb51a01da1f12bc4dc","message":"working parser","stats":{"files_changed":1,"insertions":141,"deletions":22,"files":["jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":163}]}},{"commit":"365c5354a0349e470558d15243217a064e73da38","message":"remove debug print statement","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/vmstat.py"],"file_stats":[{"name":"jc/parsers/vmstat.py","lines_changed":1}]}},{"commit":"b246a05cbb4c1c564f81b3e72cecb62edbe6ced6","message":"fix vmstat-s name","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"9e5a7a4abb8668d043625951a05eb5733cbbd56f","message":"add vmstat sample output","stats":{"files_changed":7,"insertions":37,"deletions":0,"files":["tests/fixtures/centos-7.7/vmstat-a.out","tests/fixtures/centos-7.7/vmstat-at-5-10.out","tests/fixtures/centos-7.7/vmstat-awt.out","tests/fixtures/centos-7.7/vmstat-d.out","tests/fixtures/centos-7.7/vmstat-dt.out","tests/fixtures/centos-7.7/vmstat-w.out","tests/fixtures/centos-7.7/vmstat.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/vmstat-a.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/vmstat-at-5-10.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/vmstat-awt.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/vmstat-d.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/vmstat-dt.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/vmstat-w.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/vmstat.out","lines_changed":4}]}},{"commit":"f266acbccafc040c375723147b8e5d7fddb1e697","message":"add processing logic","stats":{"files_changed":1,"insertions":106,"deletions":14,"files":["jc/parsers/vmstat.py"],"file_stats":[{"name":"jc/parsers/vmstat.py","lines_changed":120}]}},{"commit":"4e3b471f1801f1b9006b18cae2a3d816f361262e","message":"add format for vmstat","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]}},{"commit":"5e28736c2e0c951e71e6531e03a9619279d95d3a","message":"add vmstat and vmstat_s","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"a91913a3b517ea0dbb25d6e4cc92850eb2fde5ab","message":"streaming parser template","stats":{"files_changed":1,"insertions":106,"deletions":0,"files":["jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":106}]}},{"commit":"90c64f0ae0d97d025adee40970d89baca79ee4ac","message":"initial working parser","stats":{"files_changed":1,"insertions":182,"deletions":0,"files":["jc/parsers/vmstat.py"],"file_stats":[{"name":"jc/parsers/vmstat.py","lines_changed":182}]}},{"commit":"7cc642ed1a476abda709ac9b79900a1de12e1ef7","message":"formatting","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":4}]}},{"commit":"809f64d35a92bb3d7380fa9d78ac1421a10b81fc","message":"Merge pull request #169 from kellyjonbrazil/streaming"},{"commit":"a6f859a55edae50fcc185948736218404cfaa929","message":"add final ping_s tests","stats":{"files_changed":18,"insertions":168,"deletions":153,"files":[".../osx-10.14.6/ping-hostname-p-streaming.json",".../osx-10.14.6/ping-hostname-s-streaming.json",".../osx-10.14.6/ping-hostname-streaming.json",".../osx-10.14.6/ping-ip-dup-streaming.json",".../fixtures/osx-10.14.6/ping-ip-p-streaming.json",".../fixtures/osx-10.14.6/ping-ip-s-streaming.json","tests/fixtures/osx-10.14.6/ping-ip-streaming.json",".../osx-10.14.6/ping-ip-unreachable-streaming.json",".../osx-10.14.6/ping6-hostname-p-streaming.json",".../osx-10.14.6/ping6-hostname-s-streaming.json",".../osx-10.14.6/ping6-hostname-streaming.json",".../osx-10.14.6/ping6-ip-dup-streaming.json",".../fixtures/osx-10.14.6/ping6-ip-p-streaming.json",".../fixtures/osx-10.14.6/ping6-ip-s-streaming.json","tests/fixtures/osx-10.14.6/ping6-ip-streaming.json","tests/fixtures/pi/ping-ip-O-D-streaming.json","tests/fixtures/pi/ping-ip-O-streaming.json","tests/test_ping_s.py"],"file_stats":[{"name":".../osx-10.14.6/ping-hostname-p-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping-hostname-s-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping-hostname-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping-ip-dup-streaming.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/ping-ip-p-streaming.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/ping-ip-s-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping-ip-unreachable-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping6-hostname-p-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping6-hostname-s-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping6-hostname-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping6-ip-dup-streaming.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/ping6-ip-p-streaming.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/ping6-ip-s-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-streaming.json","lines_changed":1},{"name":"tests/fixtures/pi/ping-ip-O-D-streaming.json","lines_changed":1},{"name":"tests/fixtures/pi/ping-ip-O-streaming.json","lines_changed":1},{"name":"tests/test_ping_s.py","lines_changed":304}]}},{"commit":"39ef88078f43708e470d3c1b2fd95e76b5cbeb08","message":"add destination_ip to error lines","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":1}]}},{"commit":"aeea5e8d2eab2fef3e14637f512aed7b117c4a3f","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/test_ls_s.py"],"file_stats":[{"name":"tests/test_ls_s.py","lines_changed":2}]}},{"commit":"1a0700bff4bdebbd9f1f92f2fc7a56c4d5ed6925","message":"add more ping-s tests","stats":{"files_changed":31,"insertions":240,"deletions":213,"files":[".../fedora32/ping-hostname-O-D-p-s-streaming.json",".../fedora32/ping-hostname-O-p-streaming.json",".../fedora32/ping-hostname-O-streaming.json","tests/fixtures/fedora32/ping-ip-O-D-streaming.json","tests/fixtures/fedora32/ping-ip-O-streaming.json",".../fedora32/ping6-hostname-O-D-p-s-streaming.json",".../fedora32/ping6-hostname-O-p-streaming.json",".../fedora32/ping6-ip-O-D-p-streaming.json",".../fixtures/fedora32/ping6-ip-O-p-streaming.json",".../freebsd12/ping-hostname-p-streaming.json",".../freebsd12/ping-hostname-s-streaming.json",".../freebsd12/ping-hostname-streaming.json","tests/fixtures/freebsd12/ping-ip-p-streaming.json","tests/fixtures/freebsd12/ping-ip-s-streaming.json","tests/fixtures/freebsd12/ping-ip-streaming.json",".../freebsd12/ping6-hostname-p-streaming.json",".../freebsd12/ping6-hostname-s-streaming.json",".../freebsd12/ping6-hostname-streaming.json","tests/fixtures/freebsd12/ping6-ip-p-streaming.json","tests/fixtures/freebsd12/ping6-ip-s-streaming.json","tests/fixtures/freebsd12/ping6-ip-streaming.json",".../ping-hostname-O-D-p-s-streaming.json",".../ubuntu-18.04/ping-hostname-O-p-streaming.json",".../ubuntu-18.04/ping-hostname-O-streaming.json",".../ubuntu-18.04/ping-ip-O-D-streaming.json",".../fixtures/ubuntu-18.04/ping-ip-O-streaming.json",".../ping6-hostname-O-D-p-s-streaming.json",".../ubuntu-18.04/ping6-hostname-O-p-streaming.json",".../ubuntu-18.04/ping6-ip-O-D-p-streaming.json",".../ubuntu-18.04/ping6-ip-O-p-streaming.json","tests/test_ping_s.py"],"file_stats":[{"name":".../fedora32/ping-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../fedora32/ping-hostname-O-p-streaming.json","lines_changed":1},{"name":".../fedora32/ping-hostname-O-streaming.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-ip-O-D-streaming.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-ip-O-streaming.json","lines_changed":1},{"name":".../fedora32/ping6-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../fedora32/ping6-hostname-O-p-streaming.json","lines_changed":1},{"name":".../fedora32/ping6-ip-O-D-p-streaming.json","lines_changed":1},{"name":".../fixtures/fedora32/ping6-ip-O-p-streaming.json","lines_changed":1},{"name":".../freebsd12/ping-hostname-p-streaming.json","lines_changed":1},{"name":".../freebsd12/ping-hostname-s-streaming.json","lines_changed":1},{"name":".../freebsd12/ping-hostname-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-p-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-s-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-streaming.json","lines_changed":1},{"name":".../freebsd12/ping6-hostname-p-streaming.json","lines_changed":1},{"name":".../freebsd12/ping6-hostname-s-streaming.json","lines_changed":1},{"name":".../freebsd12/ping6-hostname-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-p-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-s-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-streaming.json","lines_changed":1},{"name":".../ping-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping-hostname-O-p-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping-hostname-O-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping-ip-O-D-streaming.json","lines_changed":1},{"name":".../fixtures/ubuntu-18.04/ping-ip-O-streaming.json","lines_changed":1},{"name":".../ping6-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-hostname-O-p-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-ip-O-D-p-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-ip-O-p-streaming.json","lines_changed":1},{"name":"tests/test_ping_s.py","lines_changed":423}]}},{"commit":"b5fa6d068f240671eb948b055cd4f7bf127e0ec0","message":"update docs","stats":{"files_changed":5,"insertions":25,"deletions":5,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":6},{"name":"docs/parsers/ping_s.md","lines_changed":6},{"name":"jc/parsers/foo_s.py","lines_changed":6},{"name":"jc/parsers/ls_s.py","lines_changed":6},{"name":"jc/parsers/ping_s.py","lines_changed":6}]}},{"commit":"1baec0b420feff068f2dc1e35499f78aa7d0a6e0","message":"add some streaming tests","stats":{"files_changed":13,"insertions":815,"deletions":0,"files":[".../ping-hostname-O-D-p-s-streaming.json",".../centos-7.7/ping-hostname-O-p-streaming.json",".../centos-7.7/ping-hostname-O-streaming.json",".../fixtures/centos-7.7/ping-ip-O-D-streaming.json",".../centos-7.7/ping-ip-O-streaming-quiet.json","tests/fixtures/centos-7.7/ping-ip-O-streaming.json",".../fixtures/centos-7.7/ping-ip-dup-streaming.json",".../ping6-hostname-O-D-p-s-streaming.json",".../centos-7.7/ping6-hostname-O-p-streaming.json",".../centos-7.7/ping6-ip-O-D-p-streaming.json",".../centos-7.7/ping6-ip-O-p-streaming.json",".../centos-7.7/ping6-ip-dup-streaming.json","tests/test_ping_s.py"],"file_stats":[{"name":".../ping-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping-hostname-O-p-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping-hostname-O-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/ping-ip-O-D-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping-ip-O-streaming-quiet.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-ip-O-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/ping-ip-dup-streaming.json","lines_changed":1},{"name":".../ping6-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping6-hostname-O-p-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping6-ip-O-D-p-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping6-ip-O-p-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping6-ip-dup-streaming.json","lines_changed":1},{"name":"tests/test_ping_s.py","lines_changed":803}]}},{"commit":"4f2a4e1dee9d722d2aa5ddf2c082a358c88cf640","message":"skip blank lines and warning lines","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":8}]}},{"commit":"758d617668d1f9d0f27b52d46749e5b67a570cf1","message":"doc update","stats":{"files_changed":5,"insertions":5,"deletions":5,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2}]}},{"commit":"55322c37f57a9c8e28641a61928fad2329f5e50d","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":4}]}},{"commit":"d19ea5552bb3a379f7f92bcb58794c557ecc6647","message":"add streaming ls parser tests","stats":{"files_changed":12,"insertions":193,"deletions":0,"files":["tests/fixtures/centos-7.7/ls-al-streaming.json","tests/fixtures/centos-7.7/ls-alR-streaming.json","tests/fixtures/centos-7.7/ls-alh-streaming.json","tests/fixtures/osx-10.14.6/ls-al-streaming.json","tests/fixtures/osx-10.14.6/ls-alR-streaming.json","tests/fixtures/osx-10.14.6/ls-alh-streaming.json",".../osx-10.14.6/ls-lR-empty-folder-streaming.json","tests/fixtures/ubuntu-18.04/ls-al-streaming.json","tests/fixtures/ubuntu-18.04/ls-alR-streaming.json","tests/fixtures/ubuntu-18.04/ls-alh-streaming.json",".../fixtures/ubuntu-18.04/ls-l-iso-streaming.json","tests/test_ls_s.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ls-al-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-alR-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-alh-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-al-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-alR-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-alh-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ls-lR-empty-folder-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-al-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-alR-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-alh-streaming.json","lines_changed":1},{"name":".../fixtures/ubuntu-18.04/ls-l-iso-streaming.json","lines_changed":1},{"name":"tests/test_ls_s.py","lines_changed":182}]}},{"commit":"130c3527c1083d399deef00ee8fcaa75f609b485","message":"update docstrings","stats":{"files_changed":6,"insertions":25,"deletions":25,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":8},{"name":"docs/parsers/ping_s.md","lines_changed":12},{"name":"jc/parsers/foo_s.py","lines_changed":6},{"name":"jc/parsers/ls_s.py","lines_changed":10},{"name":"jc/parsers/ping_s.py","lines_changed":12},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"3f221f471416766a860bd19850afda4899ee5eb3","message":"doc update","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":6},{"name":"jc/parsers/ping_s.py","lines_changed":6}]}},{"commit":"d64c4cb39056bb869fc117477612ae5ae2ef3d85","message":"add streaming parsers section","stats":{"files_changed":2,"insertions":141,"deletions":1,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":72},{"name":"templates/manpage_template","lines_changed":70}]}},{"commit":"448c56aa46b72438e4a4c83b10a7eb889e3f50e7","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"9fbea15b6d031baa8c90f2602e39de7cf51408e2","message":"rename state class to _state","stats":{"files_changed":2,"insertions":2,"deletions":8,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":6},{"name":"jc/parsers/ping_s.py","lines_changed":4}]}},{"commit":"932060314b3c1ce518b9f57532e124285cb3ad0a","message":"doc update","stats":{"files_changed":2,"insertions":41,"deletions":11,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":50},{"name":"jc/parsers/ping_s.py","lines_changed":2}]}},{"commit":"5e68ae50097cb339f3390449db7e3f189a716320","message":"import exception. tighten up os detection","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":7}]}},{"commit":"d03541beae44a4571a7d0481af01a5c19506207f","message":"add docstring examples. add exception raise when OS cannot be detected.","stats":{"files_changed":1,"insertions":12,"deletions":5,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":17}]}},{"commit":"516fa571d90a0c93134c953c15ce84dd31b96b4b","message":"remove unused variable. use elif instead of if for linux vs. bsd detection","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":3}]}},{"commit":"a19c12096a8e8de02a6ff761cc9c13ec249d416e","message":"initial working parser for both linux and bsd","stats":{"files_changed":1,"insertions":373,"deletions":143,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":516}]}},{"commit":"758f27945de4f0897405eba02c7908d815ce6e9b","message":"change data_bytes and bytes to sent_bytes and response_bytes","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":18}]}},{"commit":"8b1e8d58df22f8542ccaf7bf3e1eabe6132e7a42","message":"remove unneeded line","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":1}]}},{"commit":"b967489d085319facee077958deaa04956a98343","message":"complete linux coverage including summary","stats":{"files_changed":1,"insertions":81,"deletions":40,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":121}]}},{"commit":"870d0218be2641e3eddb114c23d54deb23155f25","message":"add unbuffer note","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2}]}},{"commit":"84020bc2af294cb065105f1399453aefc98eb180","message":"change error_msg to error in -q result docs","stats":{"files_changed":7,"insertions":12,"deletions":6,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/utils.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":6},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"4efe5344e069ed921f208bcbbd097705be2d3b4f","message":"add links to HN and Reddit","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"9182c545134b3d56d27d2c1d9bda678532bdc3fb","message":"formatting","stats":{"files_changed":1,"insertions":3,"deletions":8,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":11}]}},{"commit":"28f0ab0b02d21fc060f1ac7181f85552798dc4bd","message":"update streaming error messages","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/ls_s.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":2}]}},{"commit":"90d1a30696b2cbfbb06a55cc0cf920cf8ecd89aa","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"130b3738cc57fe261e8ef881a57b7836acd7e7e9","message":"shorten successful yield to a single line","stats":{"files_changed":4,"insertions":21,"deletions":26,"files":["jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":8},{"name":"jc/parsers/ls_s.py","lines_changed":8},{"name":"jc/parsers/ping_s.py","lines_changed":14},{"name":"jc/utils.py","lines_changed":17}]}},{"commit":"92c7357615af7689db273aa78d666b35a2ec7a70","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":2}]}},{"commit":"c80f8633349c00ea461b8927f9949fe19b2f46ee","message":"simplify return condition formatting","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/foo.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":10}]}},{"commit":"4642c20179d4643e0cf1970b264da7d9d91628de","message":"formatting","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"templates/readme_template","lines_changed":4}]}},{"commit":"5288eb22aadbbc1005b16428b94d2b07e9a75e3c","message":"add info about streaming parser performance characteristics","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"df8387a1a99df69eac5005662aaf56d506fa0efd","message":"streaming parsers cannot be used with the magic syntax","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"cc38c27f44d3f088609b878304cab8eed75fc8f2","message":"formatting","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"templates/readme_template","lines_changed":3}]}},{"commit":"64f5357d69fe88b45d710d38948969699e1ca12f","message":"add streaming parsers section","stats":{"files_changed":2,"insertions":84,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":42},{"name":"templates/readme_template","lines_changed":42}]}},{"commit":"51debb5649bef431e51e543f1c9270e2810aa58f","message":"add vmstat parser and change from linebuffer to unbuffer","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]}},{"commit":"b48d05a4313b27cf5e69d3e4259542e0b131b60f","message":"change from line buffer output to unbuffer output","stats":{"files_changed":5,"insertions":15,"deletions":15,"files":["README.md","jc/cli.py","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":8},{"name":"man/jc.1","lines_changed":10},{"name":"templates/manpage_template","lines_changed":8},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"4e7f6b337db61b8a106cf958f6b874157909c87a","message":"simplify yield statements","stats":{"files_changed":3,"insertions":17,"deletions":25,"files":["jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":15},{"name":"jc/parsers/ls_s.py","lines_changed":9},{"name":"jc/parsers/ping_s.py","lines_changed":18}]}},{"commit":"a509d99cafd80862721595ee59ccc4a471b5e5a3","message":"add stream_success dictionary","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":8}]}},{"commit":"481e45fb644ac88fa77ef35643b793f179fe6859","message":"limit parse error msg lenght","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2}]}},{"commit":"e9038e1720e1c0e520e2f29b718aa8505cbbb9a2","message":"initial streaming ping docs","stats":{"files_changed":1,"insertions":66,"deletions":0,"files":["docs/parsers/ping_s.md"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":66}]}},{"commit":"8fd9e582bf29275c4daaa3be88ea8d196411b34a","message":"doc update","stats":{"files_changed":1,"insertions":15,"deletions":17,"files":["docs/parsers/ls_s.md"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":32}]}},{"commit":"c1fd6f48a5a3501499c9fca7239673b8555cc7c6","message":"add stream_error docs","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["docs/utils.md"],"file_stats":[{"name":"docs/utils.md","lines_changed":6}]}},{"commit":"af615c7f4b3f589ffc1b37cf9834062a04c013cb","message":"add line buffer output option","stats":{"files_changed":6,"insertions":26,"deletions":5,"files":["CHANGELOG","README.md","jc/cli.py","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"README.md","lines_changed":4},{"name":"jc/cli.py","lines_changed":7},{"name":"man/jc.1","lines_changed":11},{"name":"templates/manpage_template","lines_changed":4},{"name":"templates/readme_template","lines_changed":3}]}},{"commit":"bf0bc32d7ae6cabe07906207f4f08c2e81802c80","message":"flush streamed text for better piping experience","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]}},{"commit":"2d6b53e012181a4c33bab441880c47c0fc0b0601","message":"add pattern support. move unparsable line detection to standard streaming parser style","stats":{"files_changed":1,"insertions":36,"deletions":42,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":78}]}},{"commit":"51271fea0fbd7bd63863ba05c399b4675dc5b4bf","message":"somewhat working parser","stats":{"files_changed":1,"insertions":139,"deletions":149,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":288}]}},{"commit":"2deb473e0bc96c0e39ec4074a6df4b941ba2172b","message":"initial streaming ping parser","stats":{"files_changed":1,"insertions":262,"deletions":0,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":262}]}},{"commit":"23eeb33b3da43a679c3bf3f3643cfa552a1164e1","message":"modify stream_error message","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]}},{"commit":"f50dfaef45632241f8f6972fa19bb17c54a457ff","message":"use stream_error function for exceptions. raise on non -l ls output","stats":{"files_changed":1,"insertions":6,"deletions":13,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":19}]}},{"commit":"55bb71e9d466cc9ee5f7fd8eca1101c941cbcb35","message":"add streaming ping parser. update streaming exception message","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]}},{"commit":"dab9357d286962b70224d6fafbf90a4c0cbc9980","message":"use stream_error function for exceptions","stats":{"files_changed":1,"insertions":1,"deletions":12,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":13}]}},{"commit":"27eb427245b5126335cef0adb5e57522272474b5","message":"add stream_error function","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":16}]}},{"commit":"260f3685d944ded84396ae3395773d6898803fb6","message":"add streaming parser template","stats":{"files_changed":1,"insertions":112,"deletions":0,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":112}]}},{"commit":"76e78fc0c34b88a90fef876eebef92bd71cd772c","message":"doc updates","stats":{"files_changed":1,"insertions":9,"deletions":11,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":20}]}},{"commit":"1ac944fa028a400ae7b39b811fcf368c9bf5e259","message":"add -q option info to docstring","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2}]}},{"commit":"986bc9b042a940f8dd34f0541bcb9b5840df579e","message":"cleanup unused code","stats":{"files_changed":1,"insertions":9,"deletions":43,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":52}]}},{"commit":"5a7942069b1f3ef3b45992b482bfb6bb973f7e8e","message":"add support for parent field","stats":{"files_changed":1,"insertions":28,"deletions":28,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":56}]}},{"commit":"f6c6fc13ac4c779667807df12444a41ef28a8011","message":"enhance error msg when streaming parser is used","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]}},{"commit":"1d8cfae89f24192b6fab087f59c9b8988ef363dc","message":"only print _meta object if -q or quiet flag is used. Also, add message to the end of exceptions informing of the -q option to ignore errors","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":11}]}},{"commit":"787df51239ffa8260b48d6a3a58e6ff07d5e0f64","message":"remove `\\n` from end of line in exception message","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2}]}},{"commit":"5e7f302a9c45343c36e81944db38a435e6c8a20c","message":"Raise exceptions unless the -q or quiet flag are used","stats":{"files_changed":1,"insertions":12,"deletions":10,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":22}]}},{"commit":"3d10fd40b56264836874da19aa72351e6d5cfbf7","message":"remove print flush for better performance. Roll json.JSONDecodeError into the parse try/except block","stats":{"files_changed":1,"insertions":14,"deletions":13,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":27}]}},{"commit":"57e3bf239cc76d3b0ee0eddc618171eb90c28dec","message":"formatting for docs","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":6},{"name":"jc/parsers/ls_s.py","lines_changed":6}]}},{"commit":"ccb09861e82044e17ec51277b3c8875e5ba9d87d","message":"formatting for docs","stats":{"files_changed":2,"insertions":20,"deletions":20,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":20},{"name":"jc/parsers/ls_s.py","lines_changed":20}]}},{"commit":"94551d75dd926c7f558e5cab47ba9483a20c6b3c","message":"doc update","stats":{"files_changed":10,"insertions":116,"deletions":49,"files":["CHANGELOG","README.md","docs/parsers/ls_s.md","docs/readme.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz","mangen.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":6},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/ls_s.md","lines_changed":89},{"name":"docs/readme.md","lines_changed":25},{"name":"jc/__init__.py","lines_changed":27},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":7},{"name":"man/jc.1.gz","lines_changed":null},{"name":"mangen.py","lines_changed":8},{"name":"setup.py","lines_changed":2}]}},{"commit":"6e21218425359210591827e936b8d48d9644df92","message":"working prototype of streaming ls parser","stats":{"files_changed":2,"insertions":234,"deletions":3,"files":["jc/cli.py","jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":23},{"name":"jc/parsers/ls_s.py","lines_changed":214}]}},{"commit":"ff0fda48fc48760a7293528155d222c6456f84c4","message":"Merge pull request #168 from kellyjonbrazil/master"},{"commit":"528aac7ad87feae2093aba563c83a29ebf75e5f9","message":"use subprocess in python example","stats":{"files_changed":2,"insertions":8,"deletions":38,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":23},{"name":"templates/readme_template","lines_changed":23}]}},{"commit":"ab482e521d4cecfffa5393805b1d7de4389db49a","message":"Merge pull request #163 from kellyjonbrazil/dev"},{"commit":"e08b61fa81b1bd2304d04db5cdc8b809fe9c6032","message":"add schema note to sfdisk","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"ce61bd1d2b4323d9c2d0454c4f646521913ae20d","message":"add tests for -F fixes","stats":{"files_changed":7,"insertions":73,"deletions":7,"files":["tests/fixtures/debian10/sfdisk-F2.json","tests/fixtures/debian10/sfdisk-F2.out","tests/fixtures/debian10/sfdisk-l2.json","tests/fixtures/debian10/sfdisk-l2.out","tests/fixtures/debian10/sfdisk-l3.json","tests/fixtures/debian10/sfdisk-l3.out","tests/test_sfdisk.py"],"file_stats":[{"name":"tests/fixtures/debian10/sfdisk-F2.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-F2.out","lines_changed":6},{"name":"tests/fixtures/debian10/sfdisk-l2.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-l2.out","lines_changed":15},{"name":"tests/fixtures/debian10/sfdisk-l3.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-l3.out","lines_changed":13},{"name":"tests/test_sfdisk.py","lines_changed":43}]}},{"commit":"7b708f75182bf3ed33478a7de62e9c2496f0b994","message":"Don't convert 'size' to int, except for legacy -d support. Change partition table detection logic to fix -F output","stats":{"files_changed":3,"insertions":11,"deletions":5,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-l.json","tests/fixtures/debian10/sfdisk-l.json"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":12},{"name":"tests/fixtures/centos-8/sfdisk-l.json","lines_changed":2},{"name":"tests/fixtures/debian10/sfdisk-l.json","lines_changed":2}]}},{"commit":"89ca50c7fc1bf64f34c915e65031d0bc520e6466","message":"add -l to sfdisk raw example","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/sfdisk.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"fb54899dcc2160450448e0d6111557cebdeb0d4d","message":"doc update","stats":{"files_changed":4,"insertions":38,"deletions":23,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":59},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"0a625ad7ddd9c804052d98930165cd22049546bd","message":"remove unneeded lines","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/sfdisk.py"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":2}]}},{"commit":"d32e45efbe0d71a9a132abfb2855f1f4ccee9916","message":"add sfdisk tests","stats":{"files_changed":6,"insertions":69,"deletions":1,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-F.json","tests/fixtures/centos-8/sfdisk-l.json","tests/fixtures/debian10/sfdisk-F.json","tests/fixtures/debian10/sfdisk-l.json","tests/test_sfdisk.py"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":9},{"name":"tests/fixtures/centos-8/sfdisk-F.json","lines_changed":1},{"name":"tests/fixtures/centos-8/sfdisk-l.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-F.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-l.json","lines_changed":1},{"name":"tests/test_sfdisk.py","lines_changed":57}]}},{"commit":"c77696bc789cdfd286a7479c3d9f67d23149d0ce","message":"version bump","stats":{"files_changed":3,"insertions":6,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":4},{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"736fde9e784587cb2ef344bbf31d876eafea7741","message":"add support for newer versions of sfdisk","stats":{"files_changed":5,"insertions":147,"deletions":28,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-F.out","tests/fixtures/centos-8/sfdisk-l.out","tests/fixtures/debian10/sfdisk-F.out","tests/fixtures/debian10/sfdisk-l.out"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":127},{"name":"tests/fixtures/centos-8/sfdisk-F.out","lines_changed":9},{"name":"tests/fixtures/centos-8/sfdisk-l.out","lines_changed":24},{"name":"tests/fixtures/debian10/sfdisk-F.out","lines_changed":3},{"name":"tests/fixtures/debian10/sfdisk-l.out","lines_changed":12}]}},{"commit":"9c1ad92fed9a4b3a0da66d6b71deec8d608edfa9","message":"fix examples","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":12}]}},{"commit":"1a9fd2139d156a51bf2d25db951e47e96da77f7d","message":"add \"For new parsers:\"","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]}},{"commit":"7661e7f27a4e5c379ea37c7f95496aca2c1e2910","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]}},{"commit":"f857b7fbf7862ddd7eb5ab20470f5dbaacc62119","message":"add custom parser folder info","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]}},{"commit":"d94d12dbc5fb3e3712b2f1aea949013cb8213e28","message":"add foo parser template info","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":11}]}},{"commit":"700916276ae8b0a106410e3dd2ea3e00248ee37a","message":"Merge pull request #159 from kellyjonbrazil/master"},{"commit":"834e52369ceb479776ddc8fc2931790af53b9c18","message":"update man page","stats":{"files_changed":3,"insertions":1,"deletions":5,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":6},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"1ce53365de61421c8bd43e04590038083894153b","message":"Merge pull request #156 from kellyjonbrazil/dev"},{"commit":"473f70668f04a38765559c5dbf0468af24d625c9","message":"Merge branch 'master' into dev"},{"commit":"0dbd2702f6ab2640b2ccdea92411ac0789673e66","message":"reformat doc_text for nicer indentation","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]}},{"commit":"01e3764a9b6ba902aea522bf6b7005fd37b3acbb","message":"fix join syntax","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"ff9c81722ae7221364e9bcb83d98b16b4263334e","message":"try/except for shlex.join since only available in python 3.8","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]}},{"commit":"166aef7a022ed29862ab2e0702d53c591bb5cc77","message":"version bump","stats":{"files_changed":6,"insertions":4,"deletions":4,"files":["docs/parsers/stat.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz","setup.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null},{"name":"setup.py","lines_changed":2}]}},{"commit":"78caf7646baf5d35602fd76771443cd64bd783af","message":"add stat fix","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]}},{"commit":"1f99d40cecc5d88a246f3558f71db376ebd885c6","message":"fix filename with spaces for osx/bsd","stats":{"files_changed":4,"insertions":17,"deletions":2,"files":["jc/parsers/stat.py","tests/fixtures/osx-10.14.6/stat-filename-with-spaces.json","tests/fixtures/osx-10.14.6/stat-filename-with-spaces.out","tests/test_stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"tests/fixtures/osx-10.14.6/stat-filename-with-spaces.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/stat-filename-with-spaces.out","lines_changed":2},{"name":"tests/test_stat.py","lines_changed":12}]}},{"commit":"4c2912d3d5ec1fd2d5d891f2b3c58a33dd8572be","message":"use shlex.join to quote run_command_str for better error messages","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]}},{"commit":"45e6e06be581f787f707e3f5645129c713478d16","message":"add glob and process substitution fixes","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]}},{"commit":"fdbe3e05f323c95687a1137983f9623911008ca2","message":"fix issue with globs not including filenames with spaces with magic syntax (introduced during switch to use subprocess to grab process exit code). No longer need to shlex quote arguments.","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]}},{"commit":"7cc168f6409af13fda815d0d2a6db25b7c9ba367","message":"add comment","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"ff2d609c9b5f5f57f3331e5593e8fe87c01654dd","message":"add close_fds=False in subprocess.Popen() to allow process substitution in magic syntax. Also check for too many open files exception","stats":{"files_changed":1,"insertions":12,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":13}]}},{"commit":"2689697b4c21758903e5f74ec069e89be585aba2","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"f90a0ea8ab15629b7786e4431e9c968c3a896ee0","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":4}]}},{"commit":"caabe60f849fb2422e47b8f10e0ff35beb706dcd","message":"fix kv example","stats":{"files_changed":5,"insertions":3,"deletions":3,"files":["docs/parsers/kv.md","jc/man/jc.1.gz","jc/parsers/kv.py","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/kv.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/kv.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"2bef4ed6038201f54339e750a833260dc1998591","message":"package updates","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","README.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"README.md","lines_changed":4}]}},{"commit":"ee57be533b12593a33a2abbb2892697f0bd40c65","message":"fix sfdisk example","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2}]}},{"commit":"c5b7aaca25d6b66d3e44256c2c6760a4cf2956ec","message":"Merge pull request #149 from kellyjonbrazil/dev"},{"commit":"7a1be905bb8654558afb5979b0bd78d4a8488874","message":"version bump","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"5798495a11afa2f72ce6f79be785d46240fcbeb4","message":"add 1.15.7 to 1.16.0 changes","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":6}]}},{"commit":"46171e220252ec92d18e744d2a57c1d6a6dc19f6","message":"add sfdisk example","stats":{"files_changed":1,"insertions":69,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":69}]}},{"commit":"dd5c924ff505dcc2a9c851d2425677bdf16ea462","message":"add man page location change","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]}},{"commit":"30c4ab297658228a07ef9b1585516719af3febb0","message":"new man page location","stats":{"files_changed":3,"insertions":515,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":515},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"26ea4d47b33277efb0ddafe8f421791696277c07","message":"version bump and deprecate /man/jc.1.gz and /jc/man/jc.1.gz","stats":{"files_changed":5,"insertions":14,"deletions":3,"files":["CHANGELOG","MANIFEST.in","jc/__init__.py","mangen.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":10},{"name":"MANIFEST.in","lines_changed":1},{"name":"jc/__init__.py","lines_changed":2},{"name":"mangen.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"2732cd175c1e878210707162de3928f33fb2f201","message":"include CHANGELOG in source distribution","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["CHANGELOG","MANIFEST.in"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"MANIFEST.in","lines_changed":1}]}},{"commit":"3e54b597be88b0e342e4361b7f2c1af447f9482b","message":"add timezone change for unit tests","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]}},{"commit":"f10ebea20962084833e5c1ebd9bc90a251bf3ff4","message":"update tests to set correct timezone on POSIX systems","stats":{"files_changed":11,"insertions":78,"deletions":0,"files":["tests/test_date.py","tests/test_dig.py","tests/test_dir.py","tests/test_last.py","tests/test_ls.py","tests/test_rpm_qai.py","tests/test_stat.py","tests/test_systeminfo.py","tests/test_upower.py","tests/test_utils.py","tests/test_who.py"],"file_stats":[{"name":"tests/test_date.py","lines_changed":7},{"name":"tests/test_dig.py","lines_changed":7},{"name":"tests/test_dir.py","lines_changed":7},{"name":"tests/test_last.py","lines_changed":7},{"name":"tests/test_ls.py","lines_changed":7},{"name":"tests/test_rpm_qai.py","lines_changed":7},{"name":"tests/test_stat.py","lines_changed":7},{"name":"tests/test_systeminfo.py","lines_changed":7},{"name":"tests/test_upower.py","lines_changed":7},{"name":"tests/test_utils.py","lines_changed":8},{"name":"tests/test_who.py","lines_changed":7}]}},{"commit":"2c6f3993cb4c5e559dbac7a479ec889aa2cba752","message":"remove extra comma","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/route.md","jc/man/jc.1.gz","jc/parsers/route.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/route.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"708a696920b52c2614edcdba264912527b2dfbef","message":"remove extra lines","stats":{"files_changed":3,"insertions":0,"deletions":2,"files":["docs/parsers/route.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/route.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"20bbb5d331575c8fc33ba63643882a62650c97b8","message":"remove extra lines","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":2}]}},{"commit":"223e785b547d9376174efa15321d60a533847c57","message":"rename variable","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/sfdisk.py"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":8}]}},{"commit":"3d78692c59980e4d70361d3a9f74bacc3f21376e","message":"add sfdisk tests","stats":{"files_changed":11,"insertions":150,"deletions":1,"files":["tests/fixtures/centos-7.7/sfdisk-d-multi.json","tests/fixtures/centos-7.7/sfdisk-d-multi.out","tests/fixtures/centos-7.7/sfdisk-d.json","tests/fixtures/centos-7.7/sfdisk-d.out","tests/fixtures/centos-7.7/sfdisk-l-multi.json","tests/fixtures/centos-7.7/sfdisk-l-multi.out","tests/fixtures/centos-7.7/sfdisk-l.json","tests/fixtures/centos-7.7/sfdisk-luB.json","tests/fixtures/centos-7.7/sfdisk-luM.json","tests/fixtures/centos-7.7/sfdisk-luS.json","tests/test_sfdisk.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/sfdisk-d-multi.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-d-multi.out","lines_changed":16},{"name":"tests/fixtures/centos-7.7/sfdisk-d.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-d.out","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-l-multi.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-l-multi.out","lines_changed":21},{"name":"tests/fixtures/centos-7.7/sfdisk-l.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-luB.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-luM.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-luS.json","lines_changed":1},{"name":"tests/test_sfdisk.py","lines_changed":106}]}},{"commit":"5321a15dcf13cf14efe578d0f66b651078c3d8a1","message":"update examples","stats":{"files_changed":4,"insertions":8,"deletions":8,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":8},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/sfdisk.py","lines_changed":8},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"a452f8252a593f7914ebece53af9d73f4fd11a19","message":"fix integer conversion","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":4},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/sfdisk.py","lines_changed":4},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"49267f09ac01fead3b20b2d481bb5e0d07af1439","message":"change to root prompt in examples","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/sfdisk.py"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":4}]}},{"commit":"db47f35783e46a8299533c22146d851509f6ceb2","message":"add working sfdisk parser","stats":{"files_changed":15,"insertions":610,"deletions":3,"files":["CHANGELOG","README.md","docs/parsers/sfdisk.md","jc/__init__.py","jc/cli.py","jc/man/jc.1.gz","jc/parsers/sfdisk.py","jc/utils.py","man/jc.1.gz","setup.py","tests/fixtures/centos-7.7/sfdisk-d.out","tests/fixtures/centos-7.7/sfdisk-l.out","tests/fixtures/centos-7.7/sfdisk-luB.out","tests/fixtures/centos-7.7/sfdisk-luM.out","tests/fixtures/centos-7.7/sfdisk-luS.out"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/sfdisk.md","lines_changed":213},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/sfdisk.py","lines_changed":325},{"name":"jc/utils.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/sfdisk-d.out","lines_changed":8},{"name":"tests/fixtures/centos-7.7/sfdisk-l.out","lines_changed":14},{"name":"tests/fixtures/centos-7.7/sfdisk-luB.out","lines_changed":14},{"name":"tests/fixtures/centos-7.7/sfdisk-luM.out","lines_changed":14},{"name":"tests/fixtures/centos-7.7/sfdisk-luS.out","lines_changed":14}]}},{"commit":"d48abf312c1f55ab31aa11da2b6cf6bc8166733b","message":"Merge pull request #147 from kellyjonbrazil/master"},{"commit":"3b22ce41105387e7f46a410460cf04759feef197","message":"fix local plugin parser issue where parser has .py in the name but it is not at the end","stats":{"files_changed":6,"insertions":6,"deletions":3,"files":["CHANGELOG","jc/__init__.py","jc/cli.py","jc/man/jc.1.gz","man/jc.1.gz","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"setup.py","lines_changed":2}]}},{"commit":"c521ca5bc9e2b035cfef6ff65f6b303b3ec44296","message":"change possible to available","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"3ddc1c665990e1e732314330db214a81ab810fe9","message":"add jello","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"a8e19402b7d1f9f06bc40b81a15dec401154180c","message":"remove temporary fix","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["ADVANCED_USAGE.md"],"file_stats":[{"name":"ADVANCED_USAGE.md","lines_changed":4}]}},{"commit":"0927902b30654274743ab9092e90e768709a9937","message":"temp fix for wrong url","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["ADVANCED_USAGE.md"],"file_stats":[{"name":"ADVANCED_USAGE.md","lines_changed":4}]}},{"commit":"572548b42fb6ed9d32a392503d44fac1a8f146d3","message":"Merge pull request #141 from kellyjonbrazil/dev"},{"commit":"ff7ab0a1ed7f468d0e84eb3bf0636f53913c490d","message":"doc updates for v1.15.5","stats":{"files_changed":3,"insertions":0,"deletions":1,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"5db71b05cb28691bbbaa5d668bcd4a4ac7e68b85","message":"add en_US.UTF-8 to LANG info","stats":{"files_changed":5,"insertions":3,"deletions":3,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/manpage_template","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"f9b952885aa7f2b450786a08c3879d9e358886da","message":"add python 3.9.5 packaged info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]}},{"commit":"e7983bc0b29abaca2147038dfad018cba1e67cdf","message":"version bump","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xml.md","docs/parsers/yaml.md"],"file_stats":[{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2}]}},{"commit":"473a6431425fc24a4cc83939ff592e0d49535b9c","message":"add windows msi info","stats":{"files_changed":4,"insertions":10,"deletions":3,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":11},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"14f3d442cb86250b8f2cdfd7977938634b8abd6d","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]}},{"commit":"d6f4ed9ab55fe9b7c2766fb437172af62a1d5c87","message":"add long-form UTC test","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":2}]}},{"commit":"1b8d654444ff8c8b8171c7ac63e2736447a36c09","message":"add error message info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]}},{"commit":"6002af0dca334c0affaff3e9acdca416238c7d82","message":"add more error message detail to the user for ParseError and LibraryNotFound exceptions","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":11}]}},{"commit":"0924d822a30c8806f65574c010561cd6f7c8e181","message":"add windows example","stats":{"files_changed":1,"insertions":8,"deletions":1,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":9}]}},{"commit":"72a37b928924c3edde3a4edb952f98c94aa05f0b","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"5eef7bd769f8ffb03ba396833d1b33484041a99f","message":"use LibraryNotInstalled exception instead of exiting via sys.exit","stats":{"files_changed":2,"insertions":16,"deletions":16,"files":["jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/xml.py","lines_changed":16},{"name":"jc/parsers/yaml.py","lines_changed":16}]}},{"commit":"c6893e1bd5283d982a7ecd6f84bdfdd0054ce7a7","message":"add LibraryNotInstalled exception","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/exceptions.py"],"file_stats":[{"name":"jc/exceptions.py","lines_changed":4}]}},{"commit":"039f6612e491c6f821c001252e122e9b0a781104","message":"Merge pull request #139 from kellyjonbrazil/master"},{"commit":"95aec9c6f9aa8fb4d0dae227410a1346d550f47f","message":"add info about Magic syntax not supporting shell builtins","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["templates/manpage_template"],"file_stats":[{"name":"templates/manpage_template","lines_changed":6}]}},{"commit":"4e9652a8ec2482a64dc029b0ce0e1047a3e49867","message":"spelling","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]}},{"commit":"773b7f4b1f23e04c90e602aab05bc1a7e5aae37b","message":"add space before exit code table","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"templates/readme_template","lines_changed":1}]}},{"commit":"d17ffde9cdc35392ae25d8e9de5328e46067df2a","message":"Merge pull request #138 from kellyjonbrazil/dev"},{"commit":"9c57c09c00e64a9031391b9b70083ad6ecf0bc0b","message":"doc update for release","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"4d730a9de5a0d7c064a9a59e3add86e58d9ec492","message":"add UTC fix","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]}},{"commit":"fc57bcfce24af23f077d6a73f1db4591d8f99c13","message":"fix for when UTC is referenced as \"Coordinated Universal Time\"","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":3}]}},{"commit":"fa5571486c3c19bb7e836f043545ea4f2509ed4d","message":"simplify json_out function","stats":{"files_changed":1,"insertions":10,"deletions":10,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":20}]}},{"commit":"9996c4fe23564dfb52e3c7dbdbd8bd67edfb1e95","message":"update docs for shell builtins","stats":{"files_changed":7,"insertions":10,"deletions":10,"files":["EXAMPLES.md","docs/parsers/history.md","docs/parsers/jobs.md","jc/man/jc.1.gz","jc/parsers/history.py","jc/parsers/jobs.py","man/jc.1.gz"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":6},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":6},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"038d4290248e6bb94762bb51f69e9958f7c1fecb","message":"doc updates","stats":{"files_changed":4,"insertions":4,"deletions":6,"files":["docs/parsers/dig.md","docs/parsers/dir.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":8},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"9bf6facb0d7d76583802309253e7d13ba5148997","message":"remove magic command capability since dir is a shell builtin","stats":{"files_changed":1,"insertions":3,"deletions":6,"files":["jc/parsers/dir.py"],"file_stats":[{"name":"jc/parsers/dir.py","lines_changed":9}]}},{"commit":"965717886e4ebaa6a4a494f189d9fdd01e33eb21","message":"add exceptions module info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]}},{"commit":"e9bfc3dd29f914fd91e937f06d7f59c0f91b8449","message":"add time format, dig compatibility, windows colors fix","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]}},{"commit":"f46b33eacf070b4dc72c8d8a66aae49abd149e5f","message":"add windows time format","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2},{"name":"tests/test_utils.py","lines_changed":2}]}},{"commit":"f475fe44df2fb2661c5bce4d1e602a4bba7e87c7","message":"add new time format for systeminfo","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":3}]}},{"commit":"5fdbe2962d84dad89de23f103d97b76b90450206","message":"make dig compatible with all platforms","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":2}]}},{"commit":"ab291b9eef6ed5c8ab59b5652f676178941d5ce5","message":"only force enable colors when running on windows","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]}},{"commit":"fd411fd77273cb7cf872c03ed6a258ccdee4d261","message":"attempt to get colors working on windows","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]}},{"commit":"b1e95a60a2461dc401ffc299ef6338b65ef12691","message":"remove unnecessary comment","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]}},{"commit":"bb1439f0d53e87f636fba05fbd30c3c79fb16002","message":"use ParseError exception from jc.exceptions module","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":5}]}},{"commit":"ba963d98a0a2b3a0dfca6b211096d802253da5fe","message":"add exceptions module including ParseError","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/exceptions.py"],"file_stats":[{"name":"jc/exceptions.py","lines_changed":5}]}},{"commit":"83440ccb55d0db15b112b8b7d7352493ff516112","message":"error message capitalization","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]}},{"commit":"796f61bfa417afdc6ab48fddbb5502cd0659b840","message":"handle case where the user pipes data and uses magic syntax simultaneously","stats":{"files_changed":1,"insertions":10,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":13}]}},{"commit":"070cac4ae12282458a1e1fc8618ebc473d23cacf","message":"remove commented line","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]}},{"commit":"3ed84f9f42e4e883ddaac28ab49d675600b49424","message":"reorganize main function. remove pass condition.","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":18}]}},{"commit":"a205afb6f355edbb4b98200a980b9601ed0f0658","message":"set run_command_str if run_command is set","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]}},{"commit":"a6d983dd8f3871cbc2391c313340167829a575d9","message":"move run_command_str variable","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]}},{"commit":"b6c8d6d01d740827273265dbb0cfbaf7875ac7f3","message":"add exception handling for filenotfound or other subprocess.popen and json.dumps exceptions","stats":{"files_changed":1,"insertions":45,"deletions":17,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":62}]}},{"commit":"b5a5d5b133f1c0df8023776e59697b7579f8c18a","message":"set parser_name for magic syntax use","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]}},{"commit":"da528e7814b0cf25a359c3556d0e286e7bf004b8","message":"move separators to a variable","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]}},{"commit":"4acebf4f621ac564f82e3a97e6810fbb08a9dbc5","message":"move variables","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]}},{"commit":"4d40808d2b70b7543eadcfd2d35c16ebe91f2f9f","message":"update comments","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":7}]}},{"commit":"c543f00bd3c737f73144bb2980d12793042459b4","message":"simplify piped_output function","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]}},{"commit":"947cf41dfab5811c0e76e371231c59a2d6372752","message":"add exit code info","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]}},{"commit":"8d8c58742e5106c3387a627cd1b1323a76cc9623","message":"formatting","stats":{"files_changed":5,"insertions":21,"deletions":15,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":13},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/manpage_template","lines_changed":10},{"name":"templates/readme_template","lines_changed":13}]}},{"commit":"995ecc9bfb0425b0ee9e4250395b0200b46c1e89","message":"add exit codes section","stats":{"files_changed":3,"insertions":15,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/manpage_template","lines_changed":15}]}},{"commit":"21a15225ebff645439b12d6249dc3e28d7bc09ed","message":"add exit codes section","stats":{"files_changed":2,"insertions":18,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":9},{"name":"templates/readme_template","lines_changed":9}]}},{"commit":"48921d4584068fadb0f776ed7e81c21d89172e2e","message":"ensure exit code never exceeds 255","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]}},{"commit":"342db45edc94ab1c3b3ae70e7cf4ca4076e2c7eb","message":"fix combined exit codes","stats":{"files_changed":1,"insertions":18,"deletions":10,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":28}]}},{"commit":"5f88ecf8443bc6e9a7cda5bc60858f37cc09f4f4","message":"add comments to magic_parser return","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]}},{"commit":"a56aebfe7024914d2c602278964b99d1443de335","message":"remove side-effect comment since it is no longer relevant","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]}},{"commit":"422bb744a82472546d62c72ba05eaa1d18d5068a","message":"update man pages","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"c3b814a15f571ac84a8ce0719d7fd88acf814caf","message":"move imports to the top","stats":{"files_changed":1,"insertions":3,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":7}]}},{"commit":"e4574047a0ef6fcd4a47142421a1d05795c7925a","message":"update tests for magic_parser function","stats":{"files_changed":1,"insertions":21,"deletions":21,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":42}]}},{"commit":"0d7d7951f82627d1fb1e20d1398bd7f88c5ce1be","message":"don't reset sys.argv anymore. check for 'valid_command' instead","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":12}]}},{"commit":"da904e4770a20ae85fc67476ae4a529564d0a3ff","message":"remove final \\n from stderr string when printing","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"19b540041add64fe6650c3634ec869421ffbc769","message":"proof of concept for passing command exit codes when using magic syntax. Needs more testing","stats":{"files_changed":1,"insertions":82,"deletions":51,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":133}]}},{"commit":"f2ffb93eeaf4c8b5aa93f3e8808bdc044582e8a0","message":"formatting","stats":{"files_changed":1,"insertions":0,"deletions":10,"files":["tests/test_ping.py"],"file_stats":[{"name":"tests/test_ping.py","lines_changed":10}]}},{"commit":"c0c0e05642e0f473cde34178d815978fff8fe1ef","message":"add dig `+noall +answer` support","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]}},{"commit":"966978f17e40a338f982628825f30a19d4b84e4c","message":"add more unparsable line ping tests","stats":{"files_changed":5,"insertions":72,"deletions":0,"files":[".../centos-7.7/ping6-ip-O-p-unparsable.json",".../centos-7.7/ping6-ip-O-p-unparsable.out",".../fixtures/osx-10.14.6/ping6-ip-unparsable.json","tests/fixtures/osx-10.14.6/ping6-ip-unparsable.out","tests/test_ping.py"],"file_stats":[{"name":".../centos-7.7/ping6-ip-O-p-unparsable.json","lines_changed":1},{"name":".../centos-7.7/ping6-ip-O-p-unparsable.out","lines_changed":27},{"name":".../fixtures/osx-10.14.6/ping6-ip-unparsable.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-unparsable.out","lines_changed":9},{"name":"tests/test_ping.py","lines_changed":34}]}},{"commit":"8ab08a5231e082940a62fcde4be218b7ba94be31","message":"doc update","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":4}]}},{"commit":"48e534fa03b92b2583c5c6269c76651f3aa420cb","message":"add +noall +answer test","stats":{"files_changed":3,"insertions":17,"deletions":2,"files":["tests/fixtures/osx-10.14.6/dig-noall-answer.json","tests/fixtures/osx-10.14.6/dig-noall-answer.out","tests/test_dig.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/dig-noall-answer.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig-noall-answer.out","lines_changed":4},{"name":"tests/test_dig.py","lines_changed":14}]}},{"commit":"61851c1bd02aa82d5d82e68595e45630ead13d34","message":"add support for +noall +answer","stats":{"files_changed":2,"insertions":85,"deletions":3,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":40},{"name":"jc/parsers/dig.py","lines_changed":48}]}},{"commit":"3c51b2d83d301b4072bbb12fdba4f60b900573da","message":"add tests for unparsable lines on linux","stats":{"files_changed":3,"insertions":40,"deletions":0,"files":[".../centos-7.7/ping-ip-O-unparsedlines.json",".../centos-7.7/ping-ip-O-unparsedlines.out","tests/test_ping.py"],"file_stats":[{"name":".../centos-7.7/ping-ip-O-unparsedlines.json","lines_changed":1},{"name":".../centos-7.7/ping-ip-O-unparsedlines.out","lines_changed":27},{"name":"tests/test_ping.py","lines_changed":12}]}},{"commit":"ee3a28528e152c61f05bdf71f264fe38274b4190","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"916bcdae3881fc9c9f9a91c8c901a714cff3e1da","message":"Merge pull request #136 from kellyjonbrazil/master"},{"commit":"efb1d3e6b2db920423511a9dcf4c5e5fd9d6af43","message":"add blog title and minor formatting","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"templates/readme_template","lines_changed":4}]}},{"commit":"4e6ae66bacc014e49c4a9229d10dcc8e95de436c","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"5ee88e7b679bc163a1916d560be6ff29f51699e8","message":"add use cases section","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":10}]}},{"commit":"c3b68903cbd898f80438af342195eec7575aafd3","message":"add use cases section","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":10}]}},{"commit":"fe1f1013a74bdf6b4284f11dd59db8ea17e5e5d1","message":"add use cases section","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":10}]}},{"commit":"fb14f5439f00d5eaf08651c552189fd4be7358d4","message":"fix and tests for unknown or unparsable errors","stats":{"files_changed":4,"insertions":52,"deletions":3,"files":["jc/parsers/ping.py",".../osx-10.14.6/ping-ip-unknown-errors.json",".../osx-10.14.6/ping-ip-unknown-errors.out","tests/test_ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":7},{"name":".../osx-10.14.6/ping-ip-unknown-errors.json","lines_changed":1},{"name":".../osx-10.14.6/ping-ip-unknown-errors.out","lines_changed":35},{"name":"tests/test_ping.py","lines_changed":12}]}},{"commit":"5ca0fc364eb22d583bee5633cdd7183c1d70bb6c","message":"add unparsed_line to docs","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/parsers/ping.md"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":1}]}},{"commit":"a1fe7037e5267ec4aced719eff3715085eb35bca","message":"add unparsed_line field if line cannot be parsed","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":10}]}},{"commit":"c2af7d113ed8e8cf9af985c969cf29858a3c26a9","message":"add ping updates","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["CHANGELOG","docs/parsers/ping.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"docs/parsers/ping.md","lines_changed":2}]}},{"commit":"ff034e401d5c33efbc3c4bc2f0e386d81eaae7fc","message":"use try/except to make parser more resilient against unknown error types","stats":{"files_changed":1,"insertions":59,"deletions":43,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":102}]}},{"commit":"5abe095beb4b668e5f55fe8c9588677547e4c2a7","message":"update ping docs","stats":{"files_changed":1,"insertions":14,"deletions":3,"files":["docs/parsers/ping.md"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":17}]}},{"commit":"33de5f01e638953c83bb0960dc3550ca4547849b","message":"version bump","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["jc/__init__.py","setup.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":4},{"name":"setup.py","lines_changed":2}]}},{"commit":"8ce155d843806be4ad23491b4401e4eda02e2a1c","message":"add support for error replies in v4 ping on osx and bsd","stats":{"files_changed":5,"insertions":86,"deletions":23,"files":["CHANGELOG","jc/parsers/ping.py",".../fixtures/osx-10.14.6/ping-ip-unreachable.json","tests/fixtures/osx-10.14.6/ping-ip-unreachable.out","tests/test_ping.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/ping.py","lines_changed":56},{"name":".../fixtures/osx-10.14.6/ping-ip-unreachable.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-unreachable.out","lines_changed":35},{"name":"tests/test_ping.py","lines_changed":14}]}},{"commit":"b921d5ec9583c8f8e992613ae2eaf62165722054","message":"initial support for error replies in bsd/osx","stats":{"files_changed":1,"insertions":105,"deletions":6,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":111}]}},{"commit":"e21542aaa2aa5f2f287ddc227df41ae47d761332","message":"Merge pull request #135 from kellyjonbrazil/dev"},{"commit":"6150aae0aeabafba26d9f119406b0660d9221cb6","message":"clarify packaged binaries","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"f27b35f37104ad2012c3bddde0bd94941af06894","message":"Merge pull request #131 from kellyjonbrazil/master"},{"commit":"d24f9a885d3954035a98a488671486408f509dca","message":"fix contributing link","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["CONTRIBUTING.md","README.md","templates/readme_template"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2},{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"48dd82c8d1b756c4e08d49b8234b8060080dc035","message":"trigger page build on github pages","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]}},{"commit":"e57167ad1f240de6ec5fc86c51cfb780535cd783","message":"empty commit"},{"commit":"ada91376426ff359c495fb31081404a2cce72b5f","message":"Merge pull request #130 from kellyjonbrazil/dev"},{"commit":"bd428a9fd75327710dce96f3c95f74ab9d1beaad","message":"fix link","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"934941332f91d9e2cc4e691b154bb5427166ed30","message":"minor link updates","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"templates/readme_template","lines_changed":6}]}},{"commit":"0c209dbd108638f89a43801126a332379be9ae8b","message":"Merge pull request #129 from kellyjonbrazil/dev"},{"commit":"56e041aa260b2daf2f5662fae98645a93137adb5","message":"add Practical JSON at the Command Line blog link","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"cf9d48582e4e5df6c8498b916a2f9cf036869f3d","message":"Merge pull request #128 from kellyjonbrazil/master"},{"commit":"92e2252bee00482bb0eeae3074b107d4c8553e4c","message":"fix typo","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"fd7861db11e5aaa17c4e7bbce942c0c096116e30","message":"Merge pull request #127 from kellyjonbrazil/dev"},{"commit":"35464bbbfb6b424ef3ee1c855557ada1bf3769fa","message":"date update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]}},{"commit":"db8ddd7f0e0c2a8bd3e545619e81d3d3972a4d7c","message":"fix for scenarios where the default port range didn't always display, or overrode existing port ranges.","stats":{"files_changed":5,"insertions":11,"deletions":17,"files":["jc/man/jc.1.gz","jc/parsers/ufw.py","man/jc.1.gz","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/ufw.py","lines_changed":24},{"name":"man/jc.1.gz","lines_changed":null},{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.json","lines_changed":2}]}},{"commit":"72207c54ee5734e3d2d3d1a063c8daf1edaa8815","message":"update ufw app info docs to support multiple apps (ufw app info all)","stats":{"files_changed":3,"insertions":102,"deletions":94,"files":["docs/parsers/ufw_appinfo.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/ufw_appinfo.md","lines_changed":196},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"a683f68003ea64dd5e2c4f06b53a1561ad774f12","message":"change schema to a list of dictionaries to support `ufw app info all` use case","stats":{"files_changed":9,"insertions":285,"deletions":202,"files":["EXAMPLES.md","jc/parsers/ufw_appinfo.py","tests/fixtures/generic/ufw-appinfo-msn.json","tests/fixtures/generic/ufw-appinfo-test.json","tests/fixtures/generic/ufw-appinfo-test2.json","tests/fixtures/generic/ufw-appinfo-test3.json","tests/fixtures/ubuntu-18.04/ufw-appinfo-all.json","tests/fixtures/ubuntu-18.04/ufw-appinfo-all.out","tests/test_ufw_appinfo.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":68},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":345},{"name":"tests/fixtures/generic/ufw-appinfo-msn.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw-appinfo-test.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw-appinfo-test2.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw-appinfo-test3.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-appinfo-all.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ufw-appinfo-all.out","lines_changed":51},{"name":"tests/test_ufw_appinfo.py","lines_changed":14}]}},{"commit":"8d2d3db3fa969456342181a226bf54a3f1613542","message":"formatting","stats":{"files_changed":4,"insertions":4,"deletions":0,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"eca785450d1c72687817d09259fa7cd33376fafc","message":"add caveats to readme and manpage","stats":{"files_changed":5,"insertions":34,"deletions":13,"files":["CHANGELOG","README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":22},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/readme_template","lines_changed":22}]}},{"commit":"5b40a97ce417687b4e37f320b8a3f07dd7fd169c","message":"add caveats to man page","stats":{"files_changed":3,"insertions":13,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/manpage_template","lines_changed":13}]}},{"commit":"66cb4e9bde81b9290c1addaf851de5d80a1b0702","message":"update ufw parser docs","stats":{"files_changed":5,"insertions":216,"deletions":234,"files":["EXAMPLES.md","docs/parsers/ufw.md","jc/man/jc.1.gz","jc/parsers/ufw.py","man/jc.1.gz"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":96},{"name":"docs/parsers/ufw.md","lines_changed":226},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/ufw.py","lines_changed":128},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"d1f33645caccdb3a55576081c4d355f997ac033c","message":"update ufw tests","stats":{"files_changed":7,"insertions":26,"deletions":10,"files":["tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw-numbered2.json","tests/fixtures/generic/ufw.json","tests/fixtures/ubuntu-18.04/ufw-numbered.json","tests/fixtures/ubuntu-18.04/ufw-numbered.out","tests/fixtures/ubuntu-18.04/ufw-verbose.json","tests/fixtures/ubuntu-18.04/ufw-verbose.out"],"file_stats":[{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw-numbered2.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-numbered.out","lines_changed":16},{"name":"tests/fixtures/ubuntu-18.04/ufw-verbose.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-verbose.out","lines_changed":10}]}},{"commit":"5eff65c326675a449afd05a2af0a6c9bcf7b5e23","message":"update schema to support port lists and port range lists. Also support other transports than tcp and udp","stats":{"files_changed":1,"insertions":85,"deletions":268,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":353}]}},{"commit":"929c38715d87bf9dd689507d319c22b90871ae1c","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]}},{"commit":"8c91a7b7601a967cd9d8096433ffd4ad62b65ceb","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":4}]}},{"commit":"14289ecd6c022ad204444dff5b5e48f6024a5d0d","message":"more timezone info","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":4}]}},{"commit":"b833c44783eb32f2fad24ca205b5b7eab854750f","message":"add ufw-appinfo parser","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]}},{"commit":"e23aa818eaa6d1a389ddef7dd2ad8f62b9f6ff25","message":"add tests section and timezone info","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":5}]}},{"commit":"473d919c1350a8dc34d233033a5a7d12c928e42d","message":"add another ufw test sample","stats":{"files_changed":4,"insertions":32,"deletions":0,"files":["runtests.sh","tests/fixtures/generic/ufw-numbered2.json","tests/fixtures/generic/ufw-numbered2.out","tests/test_ufw.py"],"file_stats":[{"name":"runtests.sh","lines_changed":1},{"name":"tests/fixtures/generic/ufw-numbered2.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-numbered2.out","lines_changed":18},{"name":"tests/test_ufw.py","lines_changed":12}]}},{"commit":"9f925d6ac989a4f21a8c00c84fcf97dfb141e8c2","message":"doc update","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"f6ca32b3a31f314fa0b31d9e8b5494491b928f7e","message":"update ufw docs with a note on lists of ports","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/ufw.md","jc/parsers/ufw.py"],"file_stats":[{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"jc/parsers/ufw.py","lines_changed":2}]}},{"commit":"4cbe84c3d6ac8a3b594feb525460f2a68f5d62b2","message":"add ufw-appinfo tests","stats":{"files_changed":9,"insertions":110,"deletions":0,"files":["tests/fixtures/generic/ufw-appinfo-msn.json","tests/fixtures/generic/ufw-appinfo-msn.out","tests/fixtures/generic/ufw-appinfo-test.json","tests/fixtures/generic/ufw-appinfo-test.out","tests/fixtures/generic/ufw-appinfo-test2.json","tests/fixtures/generic/ufw-appinfo-test2.out","tests/fixtures/generic/ufw-appinfo-test3.json","tests/fixtures/generic/ufw-appinfo-test3.out","tests/test_ufw_appinfo.py"],"file_stats":[{"name":"tests/fixtures/generic/ufw-appinfo-msn.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-appinfo-msn.out","lines_changed":9},{"name":"tests/fixtures/generic/ufw-appinfo-test.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-appinfo-test.out","lines_changed":9},{"name":"tests/fixtures/generic/ufw-appinfo-test2.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-appinfo-test2.out","lines_changed":9},{"name":"tests/fixtures/generic/ufw-appinfo-test3.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-appinfo-test3.out","lines_changed":9},{"name":"tests/test_ufw_appinfo.py","lines_changed":70}]}},{"commit":"ffac5bf9d381305daa86e546f8570be092e5ff34","message":"doc update","stats":{"files_changed":3,"insertions":12,"deletions":12,"files":["docs/parsers/ufw.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/ufw.md","lines_changed":24},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"9aa424f9f8c7e4e0dc29e2c58dac481098beba7d","message":"fix ufw example","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":12}]}},{"commit":"0a8495c68e427e39bbda957dd933fa2a461092e7","message":"update docs","stats":{"files_changed":1,"insertions":12,"deletions":15,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":27}]}},{"commit":"6aea066cf024f92adf4b94eebc7d51430c22332c","message":"make normalized list appear only when data exists. set magic commands","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/parsers/ufw_appinfo.py","lines_changed":6}]}},{"commit":"ff3c2d809ec3ea6e556c302909a228ee670578c9","message":"add ufw-appinfo to docs","stats":{"files_changed":6,"insertions":176,"deletions":25,"files":["EXAMPLES.md","README.md","docs/parsers/ufw_appinfo.md","jc/man/jc.1.gz","jc/parsers/ufw_appinfo.py","man/jc.1.gz"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":39},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":58},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":103},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"145059fc8946b7026184139baea143c2869bc4e7","message":"clean up output if sections are blank","stats":{"files_changed":1,"insertions":20,"deletions":8,"files":["jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/parsers/ufw_appinfo.py","lines_changed":28}]}},{"commit":"20e5c19de448c1b979497817c887d8d2d6487839","message":"fix key error if tcp or udp don't exist","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/parsers/ufw_appinfo.py","lines_changed":3}]}},{"commit":"4c98fd4b877c54e1cf7d285a29e178321be12f7e","message":"doc update","stats":{"files_changed":2,"insertions":101,"deletions":1,"files":["docs/parsers/ufw_appinfo.md","jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"docs/parsers/ufw_appinfo.md","lines_changed":100},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":2}]}},{"commit":"125e54213e8d4dcfe2e3271456af80b3f79c0544","message":"update schema and add normalized fields","stats":{"files_changed":1,"insertions":105,"deletions":48,"files":["jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/parsers/ufw_appinfo.py","lines_changed":153}]}},{"commit":"0152e0665f87833250561d743144af35416992f8","message":"initial working ufw-appinfo parser","stats":{"files_changed":2,"insertions":215,"deletions":0,"files":["jc/cli.py","jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":214}]}},{"commit":"0679bcbc560ea3575555d8546afdd4e2474d05d7","message":"fix ufw tests","stats":{"files_changed":5,"insertions":31,"deletions":5,"files":["tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json","tests/fixtures/ubuntu-18.04/ufw-numbered.json","tests/fixtures/ubuntu-18.04/ufw-verbose.json","tests/test_ufw.py"],"file_stats":[{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-numbered.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ufw-verbose.json","lines_changed":1},{"name":"tests/test_ufw.py","lines_changed":30}]}},{"commit":"5500648aa0886ea5089856e5b33d7c8ebd78d5b0","message":"fix ufw docs for int conversions and service behavior","stats":{"files_changed":3,"insertions":46,"deletions":46,"files":["EXAMPLES.md","docs/parsers/ufw.md","jc/parsers/ufw.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":20},{"name":"docs/parsers/ufw.md","lines_changed":36},{"name":"jc/parsers/ufw.py","lines_changed":36}]}},{"commit":"bb50caad4dfaefa309e747fd05b650186c5a80f4","message":"fix prefix int conversions. don't reset _transport if service is really a list of ports","stats":{"files_changed":3,"insertions":31,"deletions":4,"files":["jc/parsers/ufw.py","tests/fixtures/ubuntu-18.04/ufw-numbered.out","tests/fixtures/ubuntu-18.04/ufw-verbose.out"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":10},{"name":"tests/fixtures/ubuntu-18.04/ufw-numbered.out","lines_changed":11},{"name":"tests/fixtures/ubuntu-18.04/ufw-verbose.out","lines_changed":14}]}},{"commit":"7eef5d94d591a3f70f6638b1b30f952a3bf35f9d","message":"ufw doc update","stats":{"files_changed":3,"insertions":5,"deletions":0,"files":["EXAMPLES.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":5},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"74f623f8d607c050db8f62ea4996c4e6aae43268","message":"add support for rule comments and LIMIT and REJECT actions","stats":{"files_changed":5,"insertions":43,"deletions":11,"files":["docs/parsers/ufw.md","jc/parsers/ufw.py","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json","tests/fixtures/generic/ufw.out"],"file_stats":[{"name":"docs/parsers/ufw.md","lines_changed":13},{"name":"jc/parsers/ufw.py","lines_changed":25},{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.out","lines_changed":12}]}},{"commit":"f638aca092475bbae14fed765e90435c093fcb8b","message":"add deb package name fix","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]}},{"commit":"da35eaf80ad4f11e7482fc4734db4b2265e50548","message":"formatting","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["docs/parsers/ufw.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"ade0e8e8fc18ff9a0dd406206a85238f1f5a739d","message":"add ufw tests","stats":{"files_changed":7,"insertions":107,"deletions":0,"files":["tests/fixtures/generic/ufw-inactive.json","tests/fixtures/generic/ufw-inactive.out","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw-numbered.out","tests/fixtures/generic/ufw.json","tests/fixtures/generic/ufw.out","tests/test_ufw.py"],"file_stats":[{"name":"tests/fixtures/generic/ufw-inactive.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-inactive.out","lines_changed":1},{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-numbered.out","lines_changed":23},{"name":"tests/fixtures/generic/ufw.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw.out","lines_changed":22},{"name":"tests/test_ufw.py","lines_changed":58}]}},{"commit":"90076090f05a1f03e2fbff307418ee18d7d046ef","message":"fix int conversions if 'rules' key does not exist","stats":{"files_changed":1,"insertions":7,"deletions":5,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":12}]}},{"commit":"23635def8b654097178f73ed1b57fc50965142d5","message":"add ufw to docs","stats":{"files_changed":6,"insertions":306,"deletions":4,"files":["README.md","docs/parsers/ping.md","docs/parsers/ufw.md","docs/utils.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"docs/parsers/ping.md","lines_changed":1},{"name":"docs/parsers/ufw.md","lines_changed":302},{"name":"docs/utils.md","lines_changed":4},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"4eeec087bde98f90ab8425473d1fbeee6834852e","message":"add ufw example","stats":{"files_changed":1,"insertions":115,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":115}]}},{"commit":"733196103897a1d84d242324ddcf96e783320329","message":"update docs with new examples that have `to_service` always existing.","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":4}]}},{"commit":"e4acb3d5b70a7d75741ef3e35cd6750d1362a80f","message":"always make to/from_service None if ports are assigned","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":4}]}},{"commit":"c60549a9947d5684bbfa58223bfbcfc40a3ed479","message":"change field name from to/from_subnet to to/from_ip_prefix","stats":{"files_changed":1,"insertions":29,"deletions":29,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":58}]}},{"commit":"d46fc8bbfa15a80a1af6c64f70230f858c215223","message":"set to/from_transport to None if to/from_service is set","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":9}]}},{"commit":"b133d1f90d49362594508d8c475663754f0e7675","message":"strip interface value","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":6}]}},{"commit":"5be615a97e7c145c8351764234ac591028560c34","message":"add examples for docs","stats":{"files_changed":1,"insertions":219,"deletions":9,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":228}]}},{"commit":"ea1d820f96321ddf4084b54ee2fdf397295beb21","message":"convert integer fields","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":11}]}},{"commit":"47e262cf7200b02ff0af97a70ffa6bec286c8f39","message":"clean up fields","stats":{"files_changed":1,"insertions":59,"deletions":14,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":73}]}},{"commit":"eec673be9092e382694aa02682564510ce4e7f90","message":"working raw parser","stats":{"files_changed":1,"insertions":88,"deletions":3,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":91}]}},{"commit":"9a0fb2a7c87e6fde0cc0d84fa8a1f131e28ea732","message":"parse major sections","stats":{"files_changed":1,"insertions":157,"deletions":0,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":157}]}},{"commit":"b5145d6c14d7a51e7cfdebe126c9689dc90f7b27","message":"version bump to v1.15.3","stats":{"files_changed":4,"insertions":8,"deletions":4,"files":["CHANGELOG","jc/__init__.py","jc/cli.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":6},{"name":"jc/cli.py","lines_changed":1},{"name":"setup.py","lines_changed":2}]}},{"commit":"9747ca414dfb8218389c7b2199a080edabc2a184","message":"minor optimization to convert_to_int(). No longer runs through convert_to_float(), but uses standard float() function.","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":11}]}},{"commit":"312d465b61a15592cc70d3734ad747b9a2be10ae","message":"update link","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"7dcf87d24ad40eba6ba98de2b4b2bf177a76cd71","message":"formatting","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":1}]}},{"commit":"cf3cfd16a9de05f30303b5952fbe609cde842d2e","message":"rename tests","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":6}]}},{"commit":"fcc7e5294973d1a18943fa2ce2e836b0fe757d95","message":"Merge pull request #123 from kellyjonbrazil/dev"},{"commit":"3ab9d480149a692510ab9e0ac8e745b674683e3d","message":"update changelog","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]}},{"commit":"7eddf41c5f6310264359cd6d78bdfa4b65af7d06","message":"dont round up int conversions and fix tests","stats":{"files_changed":11,"insertions":96,"deletions":9,"files":["jc/man/jc.1.gz","jc/utils.py","man/jc.1.gz","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/df.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/free-h.json","tests/test_utils.py"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/utils.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null},{"name":"tests/fixtures/centos-7.7/df-h.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/df.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/free-h.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/df-h.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/df-h.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/free-h.json","lines_changed":2},{"name":"tests/test_utils.py","lines_changed":89}]}},{"commit":"27a196c93862bd737603cfe402b35529eb412954","message":"doc update","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"e4324f05fb6f89c34fa1567e70d8636457623edb","message":"fix indentation in doc","stats":{"files_changed":2,"insertions":14,"deletions":14,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":14},{"name":"jc/parsers/dig.py","lines_changed":14}]}},{"commit":"d36b332bd78b5bf5979cdc59b31da08d8e4104d7","message":"use jc.utils for conversions","stats":{"files_changed":53,"insertions":196,"deletions":274,"files":["docs/parsers/systemctl_lj.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/wc.md","docs/parsers/who.md","docs/utils.md","jc/parsers/acpi.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/hash.py","jc/parsers/hciconfig.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl_lj.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/utils.py"],"file_stats":[{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":2},{"name":"jc/parsers/acpi.py","lines_changed":21},{"name":"jc/parsers/airport_s.py","lines_changed":9},{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/blkid.py","lines_changed":4},{"name":"jc/parsers/cksum.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":4},{"name":"jc/parsers/dir.py","lines_changed":4},{"name":"jc/parsers/dmidecode.py","lines_changed":4},{"name":"jc/parsers/du.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":4},{"name":"jc/parsers/fstab.py","lines_changed":4},{"name":"jc/parsers/group.py","lines_changed":4},{"name":"jc/parsers/hash.py","lines_changed":4},{"name":"jc/parsers/hciconfig.py","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":4},{"name":"jc/parsers/iptables.py","lines_changed":4},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4},{"name":"jc/parsers/lsblk.py","lines_changed":13},{"name":"jc/parsers/lsmod.py","lines_changed":4},{"name":"jc/parsers/lsof.py","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":16},{"name":"jc/parsers/ntpq.py","lines_changed":10},{"name":"jc/parsers/passwd.py","lines_changed":4},{"name":"jc/parsers/ps.py","lines_changed":13},{"name":"jc/parsers/route.py","lines_changed":4},{"name":"jc/parsers/rpm_qi.py","lines_changed":4},{"name":"jc/parsers/shadow.py","lines_changed":4},{"name":"jc/parsers/ss.py","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"jc/parsers/systemctl_lj.py","lines_changed":13},{"name":"jc/parsers/systeminfo.py","lines_changed":6},{"name":"jc/parsers/time.py","lines_changed":32},{"name":"jc/parsers/timedatectl.py","lines_changed":8},{"name":"jc/parsers/tracepath.py","lines_changed":42},{"name":"jc/parsers/traceroute.py","lines_changed":40},{"name":"jc/parsers/upower.py","lines_changed":24},{"name":"jc/parsers/uptime.py","lines_changed":39},{"name":"jc/parsers/w.py","lines_changed":4},{"name":"jc/parsers/wc.py","lines_changed":12},{"name":"jc/parsers/who.py","lines_changed":12},{"name":"jc/utils.py","lines_changed":36}]}},{"commit":"1f034826f69c461495f7a302cc8fe35e3052e72f","message":"use jc.utils for conversions","stats":{"files_changed":42,"insertions":94,"deletions":185,"files":["docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","tests/fixtures/centos-7.7/ls-alh.json","tests/fixtures/centos-7.7/lsof-sudo.json","tests/fixtures/centos-7.7/lsof.json","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/ubuntu-18.04/ls-alh.json","tests/fixtures/ubuntu-18.04/lsof-sudo.json","tests/fixtures/ubuntu-18.04/lsof.json"],"file_stats":[{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":3},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":10},{"name":"jc/parsers/jobs.py","lines_changed":8},{"name":"jc/parsers/last.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":9},{"name":"jc/parsers/lsblk.py","lines_changed":14},{"name":"jc/parsers/lsmod.py","lines_changed":9},{"name":"jc/parsers/lsof.py","lines_changed":10},{"name":"jc/parsers/netstat.py","lines_changed":37},{"name":"jc/parsers/ntpq.py","lines_changed":12},{"name":"jc/parsers/passwd.py","lines_changed":8},{"name":"jc/parsers/ping.py","lines_changed":34},{"name":"jc/parsers/ps.py","lines_changed":15},{"name":"jc/parsers/route.py","lines_changed":8},{"name":"jc/parsers/rpm_qi.py","lines_changed":9},{"name":"jc/parsers/shadow.py","lines_changed":8},{"name":"jc/parsers/ss.py","lines_changed":22},{"name":"jc/parsers/stat.py","lines_changed":11},{"name":"tests/fixtures/centos-7.7/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/lsof-sudo.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/lsof.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/lsof-sudo.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/lsof.json","lines_changed":2}]}},{"commit":"246c707c98d3128b4e38f5c4b23a1e0ceedc0b0c","message":"use jc.utils conversions","stats":{"files_changed":46,"insertions":190,"deletions":196,"files":["CHANGELOG","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/df.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/hash.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/utils.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/hash.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/utils.py","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/osx-10.11.6/df-h.json","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/free-h.json"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":48},{"name":"jc/parsers/acpi.py","lines_changed":22},{"name":"jc/parsers/airport.py","lines_changed":7},{"name":"jc/parsers/airport_s.py","lines_changed":12},{"name":"jc/parsers/arp.py","lines_changed":5},{"name":"jc/parsers/blkid.py","lines_changed":7},{"name":"jc/parsers/cksum.py","lines_changed":8},{"name":"jc/parsers/df.py","lines_changed":14},{"name":"jc/parsers/dig.py","lines_changed":50},{"name":"jc/parsers/dir.py","lines_changed":11},{"name":"jc/parsers/dmidecode.py","lines_changed":8},{"name":"jc/parsers/du.py","lines_changed":8},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":8},{"name":"jc/parsers/fstab.py","lines_changed":8},{"name":"jc/parsers/group.py","lines_changed":8},{"name":"jc/parsers/hash.py","lines_changed":9},{"name":"jc/parsers/hciconfig.py","lines_changed":8},{"name":"jc/parsers/history.py","lines_changed":6},{"name":"jc/parsers/id.py","lines_changed":17},{"name":"jc/parsers/ifconfig.py","lines_changed":11},{"name":"jc/utils.py","lines_changed":62},{"name":"tests/fixtures/centos-7.7/df-h.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/free-h.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/df-h.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/df-h.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/df-h.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/free-h.json","lines_changed":2}]}},{"commit":"b5d8968144e76090870f8563dc1bce910fba668c","message":"add convert_to_int function","stats":{"files_changed":1,"insertions":19,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":19}]}},{"commit":"f7b9fbefdde6973077573fec02342eb9946789c6","message":"add query_size info for dig","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]}},{"commit":"b1fc4533833ca25f59869bfec8ac114bf49c7847","message":"fix _IfconfigParser name","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2}]}},{"commit":"7581c8d0f4262fc6a05240bb21ffe533b153f6e4","message":"add query_size field. handle user-specified dig output better - especially when querying dnssec","stats":{"files_changed":3,"insertions":45,"deletions":32,"files":["docs/parsers/dig.md","jc/parsers/dig.py","tests/fixtures/generic/dig-edns3.json"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":74},{"name":"tests/fixtures/generic/dig-edns3.json","lines_changed":2}]}},{"commit":"32bf8ad6f4fff83fdfd83d66c1ba8f1af5a65a90","message":"update dig docs","stats":{"files_changed":4,"insertions":52,"deletions":24,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"EXAMPLES.md","lines_changed":10},{"name":"docs/parsers/dig.md","lines_changed":32},{"name":"jc/parsers/dig.py","lines_changed":32}]}},{"commit":"b083bcc10fa1105fc09ce8d2c3297aa5575c9d51","message":"update man page","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"4f6fdd120d23468270c1d7111e4ef71b87759a1c","message":"use dig as example","stats":{"files_changed":2,"insertions":134,"deletions":100,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":117},{"name":"jc/__init__.py","lines_changed":117}]}},{"commit":"eb0038be2490053d32803d30e1c3d4d34509d130","message":"update dig examples","stats":{"files_changed":1,"insertions":40,"deletions":19,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":59}]}},{"commit":"7ecdf819fa37c38ae6159ad8e7bc973ee4f34559","message":"remove dig example from readme,","stats":{"files_changed":2,"insertions":0,"deletions":84,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":42},{"name":"templates/readme_template","lines_changed":42}]}},{"commit":"c6aa4d083550d25bcb621cad524047cfd6a08217","message":"update docs with new dig parser examples","stats":{"files_changed":6,"insertions":252,"deletions":317,"files":["README.md","docs/parsers/dig.md","jc/man/jc.1.gz","jc/parsers/dig.py","man/jc.1.gz","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":84},{"name":"docs/parsers/dig.md","lines_changed":313},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/dig.py","lines_changed":88},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/readme_template","lines_changed":84}]}},{"commit":"7c584b89a6e6b924d53d50103b97f0c2405c33b1","message":"add additional section","stats":{"files_changed":15,"insertions":352,"deletions":52,"files":["jc/parsers/dig.py","tests/fixtures/generic/dig-additional.json","tests/fixtures/generic/dig-additional.out","tests/fixtures/generic/dig-additional2.json","tests/fixtures/generic/dig-additional2.out","tests/fixtures/generic/dig-additional3.json","tests/fixtures/generic/dig-additional3.out","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/generic/dig-edns.json","tests/fixtures/generic/dig-edns.out","tests/fixtures/generic/dig-edns2.json","tests/fixtures/generic/dig-edns2.out","tests/fixtures/generic/dig-edns3.json","tests/fixtures/generic/dig-edns3.out","tests/test_dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":123},{"name":"tests/fixtures/generic/dig-additional.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-additional.out","lines_changed":32},{"name":"tests/fixtures/generic/dig-additional2.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-additional2.out","lines_changed":34},{"name":"tests/fixtures/generic/dig-additional3.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-additional3.out","lines_changed":41},{"name":"tests/fixtures/generic/dig-answer-spaces.json","lines_changed":2},{"name":"tests/fixtures/generic/dig-edns.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-edns.out","lines_changed":20},{"name":"tests/fixtures/generic/dig-edns2.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-edns2.out","lines_changed":38},{"name":"tests/fixtures/generic/dig-edns3.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-edns3.out","lines_changed":34},{"name":"tests/test_dig.py","lines_changed":74}]}},{"commit":"c166c0bfdafa922f57f021fa4d16e467fca02d58","message":"add opt_pseudosection section to output and fix existing tests","stats":{"files_changed":14,"insertions":55,"deletions":21,"files":["jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":50},{"name":"tests/fixtures/centos-7.7/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig-x.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig.json","lines_changed":2},{"name":"tests/fixtures/generic/dig-answer-spaces.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-x.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig.json","lines_changed":2}]}},{"commit":"a8dd3f7802bfe8fd3ffbedf89af45ddc580ee78d","message":"working dig axfr fixes","stats":{"files_changed":5,"insertions":54,"deletions":281,"files":["CHANGELOG","jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-axfr.json"],"file_stats":[{"name":"CHANGELOG","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":325},{"name":"tests/fixtures/centos-7.7/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-axfr.json","lines_changed":2}]}},{"commit":"3b0e2f03f3b11398ff57b1daed542faaf0b80a62","message":"clean up examples","stats":{"files_changed":2,"insertions":24,"deletions":23,"files":["jc/cli.py","templates/manpage_template"],"file_stats":[{"name":"jc/cli.py","lines_changed":21},{"name":"templates/manpage_template","lines_changed":26}]}},{"commit":"8390ae48c88ab1c7d5acbf40c0e60606953817bd","message":"fix server entry when IPv6 address is in value (maxsplit on colons)","stats":{"files_changed":7,"insertions":8,"deletions":8,"files":["jc/parsers/dig.py","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":4},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig.json","lines_changed":2}]}},{"commit":"2db82c0a7e19d596c876ede8a8ff106aaa733ee5","message":"add systeminfo example","stats":{"files_changed":1,"insertions":66,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":66}]}},{"commit":"61479540756704f10853233300ceae8f954a8a95","message":"update tests","stats":{"files_changed":2,"insertions":5,"deletions":0,"files":["tests/test_systeminfo.py","tests/test_utils.py"],"file_stats":[{"name":"tests/test_systeminfo.py","lines_changed":1},{"name":"tests/test_utils.py","lines_changed":4}]}},{"commit":"691df271fcfe057ae4b75ad40869e23deb37b886","message":"add info docstring","stats":{"files_changed":4,"insertions":2,"deletions":1,"files":["docs/parsers/systeminfo.md","jc/man/jc.1.gz","jc/parsers/systeminfo.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/systeminfo.py","lines_changed":1},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"89f52b95f7055da9d7b5fa8dce0923d4c3435bd2","message":"update systeminfo parser with updated timestamps, normalized blank fields, and new doc style","stats":{"files_changed":13,"insertions":467,"deletions":821,"files":["README.md","docs/parsers/systeminfo.md","jc/man/jc.1.gz","jc/parsers/systeminfo.py","jc/utils.py","man/jc.1.gz",".../windows/windows-10/systeminfo-hyperv-utc.json",".../windows/windows-10/systeminfo-hyperv-utc.out",".../windows/windows-10/systeminfo-hyperv.json","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-10/systeminfo.out",".../windows/windows-2012r2/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/systeminfo.md","lines_changed":290},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/systeminfo.py","lines_changed":361},{"name":"jc/utils.py","lines_changed":5},{"name":"man/jc.1.gz","lines_changed":null},{"name":".../windows/windows-10/systeminfo-hyperv-utc.json","lines_changed":1},{"name":".../windows/windows-10/systeminfo-hyperv-utc.out","lines_changed":79},{"name":".../windows/windows-10/systeminfo-hyperv.json","lines_changed":112},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":57},{"name":"tests/fixtures/windows/windows-10/systeminfo.out","lines_changed":1},{"name":".../windows/windows-2012r2/systeminfo.json","lines_changed":55},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":326}]}},{"commit":"146acc1bf69c402e38c2f1bc842b84e6cff7e2cb","message":"rename functions to make them private","stats":{"files_changed":1,"insertions":23,"deletions":29,"files":["jc/parsers/systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":52}]}},{"commit":"c4a345f59aa090336b4e80f181493cd5bc2c17c5","message":"Merge pull request #106 from jon-rd/j/systeminfo"},{"commit":"dfd2703f75b907ba865fff266d0742d8931bc2d3","message":"bump dev to v1.15.2","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"325fab2de7b8a4bfc452ab8d3cf333d47fdf4989","message":"update documentation for parsed structures","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":10}]}},{"commit":"f3d00cf38ad15aeda7eaa5644ebc30ff33de6a29","message":"append mb to memory key names; adjust expected timestamps to utc tz","stats":{"files_changed":5,"insertions":56,"deletions":48,"files":["jc/parsers/systeminfo.py",".../windows/windows-10/systeminfo-hyperv.json","tests/fixtures/windows/windows-10/systeminfo.json",".../windows/windows-2012r2/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":48},{"name":".../windows/windows-10/systeminfo-hyperv.json","lines_changed":14},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":14},{"name":".../windows/windows-2012r2/systeminfo.json","lines_changed":14},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":14}]}},{"commit":"14838f7f5d780896f1318cac2c3f34d249a158d4","message":"update schema with nic, hyperv, and process changes","stats":{"files_changed":9,"insertions":956,"deletions":116,"files":["jc/parsers/systeminfo.py","jc/utils.py",".../windows/windows-10/systeminfo-hyperv.json",".../windows/windows-10/systeminfo-hyperv.out","tests/fixtures/windows/windows-10/systeminfo.json",".../windows/windows-2012r2/systeminfo.json",".../fixtures/windows/windows-2012r2/systeminfo.out","tests/fixtures/windows/windows-7/systeminfo.json","tests/test_systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":357},{"name":"jc/utils.py","lines_changed":1},{"name":".../windows/windows-10/systeminfo-hyperv.json","lines_changed":111},{"name":".../windows/windows-10/systeminfo-hyperv.out","lines_changed":79},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":43},{"name":".../windows/windows-2012r2/systeminfo.json","lines_changed":54},{"name":".../fixtures/windows/windows-2012r2/systeminfo.out","lines_changed":45},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":311},{"name":"tests/test_systeminfo.py","lines_changed":71}]}},{"commit":"af74047b81776c2ea32d82f9145ab60c346c8203","message":"update schema based on processor/hotfix changes","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":8}]}},{"commit":"660c59129cf4ba7889fb3c6fbafd9dd9b479ccd9","message":"Add parsing of processors/hotfixs","stats":{"files_changed":3,"insertions":41,"deletions":9,"files":["jc/parsers/systeminfo.py","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":42},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":4},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":4}]}},{"commit":"89a88e186ed71d84ea802cf08ab756b49cee3225","message":"Add systeminfo.md file","stats":{"files_changed":1,"insertions":152,"deletions":0,"files":["docs/parsers/systeminfo.md"],"file_stats":[{"name":"docs/parsers/systeminfo.md","lines_changed":152}]}},{"commit":"f861cf95b96a224a0a11f2cdc3261b94c02415ef","message":"Change to v0.5; add parser to cli.py; add to docgen","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["jc/cli.py","jc/parsers/systeminfo.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/systeminfo.py","lines_changed":2}]}},{"commit":"ee8f06cbdb03f8254bb6a3c56fa5b8a64ff9ca77","message":"Add windows systeminfo command parser","stats":{"files_changed":6,"insertions":688,"deletions":0,"files":["jc/parsers/systeminfo.py","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-10/systeminfo.out","tests/fixtures/windows/windows-7/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.out","tests/test_systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":209},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":35},{"name":"tests/fixtures/windows/windows-10/systeminfo.out","lines_changed":47},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":34},{"name":"tests/fixtures/windows/windows-7/systeminfo.out","lines_changed":298},{"name":"tests/test_systeminfo.py","lines_changed":65}]}},{"commit":"a2e8b3c7b681605916b8950d035ee19889a125a5","message":"Merge pull request #121 from kellyjonbrazil/master"},{"commit":"6c838460752c7131f75cdab2da07266fee492060","message":"Merge pull request #120 from kellyjonbrazil/dev"},{"commit":"e0681eebb9881dc0ffddb478224455f434919104","message":"Merge branch 'master' into dev"},{"commit":"e5732d1cea1c882f6486cf288e45edb993989ea0","message":"update changelog","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]}},{"commit":"6e7ae3cd3f003fe9e1e587b7f8ebd16ba0895014","message":"formatting of timedatectl docs","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/timedatectl.md","jc/man/jc.1.gz","jc/parsers/timedatectl.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"f95632d1aaee545ae0ce081ca0617be135c09220","message":"add install_date calculated fields","stats":{"files_changed":7,"insertions":83,"deletions":62,"files":["EXAMPLES.md","docs/parsers/rpm_qi.md","jc/man/jc.1.gz","jc/parsers/rpm_qi.py","man/jc.1.gz","tests/fixtures/centos-7.7/rpm-qai.json","tests/fixtures/centos-7.7/rpm-qi-package.json"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":12},{"name":"docs/parsers/rpm_qi.md","lines_changed":62},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/rpm_qi.py","lines_changed":67},{"name":"man/jc.1.gz","lines_changed":null},{"name":"tests/fixtures/centos-7.7/rpm-qai.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rpm-qi-package.json","lines_changed":2}]}},{"commit":"2f8b7b26e59bcd745fa1fcadb373455c7d404286","message":"update docs for v1.15.1","stats":{"files_changed":3,"insertions":1,"deletions":2,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"10292f7502e4cb1c53b53ed39fed9288044c2ef8","message":"Merge pull request #119 from kellyjonbrazil/dpkg_l-fix"},{"commit":"aef54705f5267c633e0778e8dce0065978083139","message":"add _l to module name","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["docs/parsers/dpkg_l.md"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":4}]}},{"commit":"bba5980fa53767716bc35d8c904e7a2341346eeb","message":"man page update","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"977425abfb05a63ee372df36124ac6ba6a5a0aaa","message":"add _l to package name in docs","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"jc/parsers/dpkg_l.py","lines_changed":4}]}},{"commit":"37a3565a1bbd3d01663602673fed651509e69d8c","message":"Merge pull request #118 from kellyjonbrazil/rpm-qi-doc-fix"},{"commit":"13deb8bfb6e77aaf86942f0be87b59d06ee2a97c","message":"fix rpm-qi docs","stats":{"files_changed":2,"insertions":3,"deletions":194,"files":["docs/parsers/rpm_qai.md","docs/parsers/rpm_qi.md"],"file_stats":[{"name":"docs/parsers/rpm_qai.md","lines_changed":191},{"name":"docs/parsers/rpm_qi.md","lines_changed":6}]}},{"commit":"a3ed9d075aff41599452c3094f7d057c25fc8f89","message":"remove old parser doc","stats":{"files_changed":1,"insertions":0,"deletions":191,"files":["docs/parsers/rpm_qai.md"],"file_stats":[{"name":"docs/parsers/rpm_qai.md","lines_changed":191}]}},{"commit":"fb0ced549e021916dee7da39859e8f85c8216e16","message":"fix rpm-qi docs (used underscore instead of dash in name)","stats":{"files_changed":4,"insertions":6,"deletions":6,"files":["docs/parsers/rpm_qi.md","jc/man/jc.1.gz","jc/parsers/rpm_qi.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/rpm_qi.md","lines_changed":6},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/rpm_qi.py","lines_changed":6},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"7eb31bc7d290fcd09e53524ebbb11e59110df6a0","message":"update airport_s docs","stats":{"files_changed":4,"insertions":39,"deletions":48,"files":["docs/parsers/airport_s.md","jc/man/jc.1.gz","jc/parsers/airport_s.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/airport_s.md","lines_changed":49},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/airport_s.py","lines_changed":38},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"6a06a3914273853742ac57433398968ccf7d9897","message":"use herestring instead of echo -e into jq","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":12}]}},{"commit":"bdcdaee6c5299ea0750512e0943c7f58f56f2e35","message":"Merge pull request #117 from kellyjonbrazil/doc_update"},{"commit":"605353fdce3b8b5986d20a35d05f7210a6df0730","message":"add new docs","stats":{"files_changed":70,"insertions":1710,"deletions":2656,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":99},{"name":"docs/parsers/airport.md","lines_changed":61},{"name":"docs/parsers/airport_s.md","lines_changed":9},{"name":"docs/parsers/arp.md","lines_changed":51},{"name":"docs/parsers/blkid.md","lines_changed":93},{"name":"docs/parsers/cksum.md","lines_changed":41},{"name":"docs/parsers/crontab.md","lines_changed":84},{"name":"docs/parsers/crontab_u.md","lines_changed":88},{"name":"docs/parsers/csv.md","lines_changed":41},{"name":"docs/parsers/date.md","lines_changed":68},{"name":"docs/parsers/df.md","lines_changed":59},{"name":"docs/parsers/dig.md","lines_changed":133},{"name":"docs/parsers/dir.md","lines_changed":49},{"name":"docs/parsers/dmidecode.md","lines_changed":55},{"name":"docs/parsers/dpkg_l.md","lines_changed":51},{"name":"docs/parsers/du.md","lines_changed":39},{"name":"docs/parsers/env.md","lines_changed":39},{"name":"docs/parsers/file.md","lines_changed":39},{"name":"docs/parsers/finger.md","lines_changed":57},{"name":"docs/parsers/free.md","lines_changed":49},{"name":"docs/parsers/fstab.md","lines_changed":47},{"name":"docs/parsers/group.md","lines_changed":47},{"name":"docs/parsers/gshadow.md","lines_changed":51},{"name":"docs/parsers/hash.md","lines_changed":39},{"name":"docs/parsers/hashsum.md","lines_changed":39},{"name":"docs/parsers/hciconfig.md","lines_changed":123},{"name":"docs/parsers/history.md","lines_changed":39},{"name":"docs/parsers/hosts.md","lines_changed":43},{"name":"docs/parsers/id.md","lines_changed":79},{"name":"docs/parsers/ifconfig.md","lines_changed":97},{"name":"docs/parsers/ini.md","lines_changed":44},{"name":"docs/parsers/iptables.md","lines_changed":67},{"name":"docs/parsers/iw_scan.md","lines_changed":40},{"name":"docs/parsers/jobs.md","lines_changed":45},{"name":"docs/parsers/kv.md","lines_changed":17},{"name":"docs/parsers/last.md","lines_changed":53},{"name":"docs/parsers/ls.md","lines_changed":118},{"name":"docs/parsers/lsblk.md","lines_changed":115},{"name":"docs/parsers/lsmod.md","lines_changed":47},{"name":"docs/parsers/lsof.md","lines_changed":55},{"name":"docs/parsers/mount.md","lines_changed":47},{"name":"docs/parsers/netstat.md","lines_changed":223},{"name":"docs/parsers/ntpq.md","lines_changed":58},{"name":"docs/parsers/passwd.md","lines_changed":49},{"name":"docs/parsers/ping.md","lines_changed":81},{"name":"docs/parsers/pip_list.md","lines_changed":41},{"name":"docs/parsers/pip_show.md","lines_changed":56},{"name":"docs/parsers/ps.md","lines_changed":69},{"name":"docs/parsers/route.md","lines_changed":63},{"name":"docs/parsers/rpm_qi.md","lines_changed":77},{"name":"docs/parsers/shadow.md","lines_changed":51},{"name":"docs/parsers/ss.md","lines_changed":73},{"name":"docs/parsers/stat.md","lines_changed":97},{"name":"docs/parsers/sysctl.md","lines_changed":37},{"name":"docs/parsers/systemctl.md","lines_changed":45},{"name":"docs/parsers/systemctl_lj.md","lines_changed":44},{"name":"docs/parsers/systemctl_ls.md","lines_changed":41},{"name":"docs/parsers/systemctl_luf.md","lines_changed":39},{"name":"docs/parsers/time.md","lines_changed":105},{"name":"docs/parsers/timedatectl.md","lines_changed":53},{"name":"docs/parsers/tracepath.md","lines_changed":60},{"name":"docs/parsers/traceroute.md","lines_changed":69},{"name":"docs/parsers/uname.md","lines_changed":47},{"name":"docs/parsers/upower.md","lines_changed":145},{"name":"docs/parsers/uptime.md","lines_changed":57},{"name":"docs/parsers/w.md","lines_changed":51},{"name":"docs/parsers/wc.md","lines_changed":43},{"name":"docs/parsers/who.md","lines_changed":55},{"name":"docs/parsers/xml.md","lines_changed":38},{"name":"docs/parsers/yaml.md","lines_changed":42}]}},{"commit":"490c9e17699e8e4f70dcc1612e1a808f86e24b0a","message":"add more cli tests for magic command","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":8}]}},{"commit":"6ebebb659dc93daeaa869752ad135f6e1d2cb1ee","message":"update changelog","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]}},{"commit":"0e70c5ee12e96f04a89de05153a2da9cd39f98ad","message":"update documentation link","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"cd531acf6045660e022c932f62a01d4084433ad4","message":"clean up comment","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":1}]}},{"commit":"908ac1f61c5cc011d05d550f933940dfed4431f2","message":"update docs - remove compatibility section since it is now automatically generated from info()","stats":{"files_changed":143,"insertions":0,"deletions":690,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/man/jc.1.gz","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":4},{"name":"docs/parsers/airport.md","lines_changed":4},{"name":"docs/parsers/airport_s.md","lines_changed":4},{"name":"docs/parsers/arp.md","lines_changed":4},{"name":"docs/parsers/blkid.md","lines_changed":4},{"name":"docs/parsers/cksum.md","lines_changed":4},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"docs/parsers/crontab_u.md","lines_changed":4},{"name":"docs/parsers/csv.md","lines_changed":4},{"name":"docs/parsers/date.md","lines_changed":4},{"name":"docs/parsers/df.md","lines_changed":4},{"name":"docs/parsers/dig.md","lines_changed":4},{"name":"docs/parsers/dir.md","lines_changed":4},{"name":"docs/parsers/dmidecode.md","lines_changed":4},{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"docs/parsers/du.md","lines_changed":4},{"name":"docs/parsers/env.md","lines_changed":4},{"name":"docs/parsers/file.md","lines_changed":4},{"name":"docs/parsers/finger.md","lines_changed":4},{"name":"docs/parsers/free.md","lines_changed":4},{"name":"docs/parsers/fstab.md","lines_changed":4},{"name":"docs/parsers/group.md","lines_changed":4},{"name":"docs/parsers/gshadow.md","lines_changed":4},{"name":"docs/parsers/hash.md","lines_changed":4},{"name":"docs/parsers/hashsum.md","lines_changed":4},{"name":"docs/parsers/hciconfig.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":4},{"name":"docs/parsers/hosts.md","lines_changed":4},{"name":"docs/parsers/id.md","lines_changed":4},{"name":"docs/parsers/ifconfig.md","lines_changed":4},{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"docs/parsers/iptables.md","lines_changed":4},{"name":"docs/parsers/iw_scan.md","lines_changed":4},{"name":"docs/parsers/jobs.md","lines_changed":4},{"name":"docs/parsers/kv.md","lines_changed":4},{"name":"docs/parsers/last.md","lines_changed":4},{"name":"docs/parsers/ls.md","lines_changed":67},{"name":"docs/parsers/lsblk.md","lines_changed":4},{"name":"docs/parsers/lsmod.md","lines_changed":4},{"name":"docs/parsers/lsof.md","lines_changed":4},{"name":"docs/parsers/mount.md","lines_changed":4},{"name":"docs/parsers/netstat.md","lines_changed":4},{"name":"docs/parsers/ntpq.md","lines_changed":4},{"name":"docs/parsers/passwd.md","lines_changed":4},{"name":"docs/parsers/ping.md","lines_changed":4},{"name":"docs/parsers/pip_list.md","lines_changed":4},{"name":"docs/parsers/pip_show.md","lines_changed":4},{"name":"docs/parsers/ps.md","lines_changed":4},{"name":"docs/parsers/route.md","lines_changed":4},{"name":"docs/parsers/rpm_qi.md","lines_changed":4},{"name":"docs/parsers/shadow.md","lines_changed":4},{"name":"docs/parsers/ss.md","lines_changed":4},{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"docs/parsers/sysctl.md","lines_changed":4},{"name":"docs/parsers/systemctl.md","lines_changed":4},{"name":"docs/parsers/systemctl_lj.md","lines_changed":4},{"name":"docs/parsers/systemctl_ls.md","lines_changed":4},{"name":"docs/parsers/systemctl_luf.md","lines_changed":4},{"name":"docs/parsers/time.md","lines_changed":4},{"name":"docs/parsers/timedatectl.md","lines_changed":4},{"name":"docs/parsers/tracepath.md","lines_changed":4},{"name":"docs/parsers/traceroute.md","lines_changed":4},{"name":"docs/parsers/uname.md","lines_changed":4},{"name":"docs/parsers/upower.md","lines_changed":4},{"name":"docs/parsers/uptime.md","lines_changed":4},{"name":"docs/parsers/w.md","lines_changed":4},{"name":"docs/parsers/wc.md","lines_changed":4},{"name":"docs/parsers/who.md","lines_changed":4},{"name":"docs/parsers/xml.md","lines_changed":4},{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/acpi.py","lines_changed":4},{"name":"jc/parsers/airport.py","lines_changed":4},{"name":"jc/parsers/airport_s.py","lines_changed":4},{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/blkid.py","lines_changed":4},{"name":"jc/parsers/cksum.py","lines_changed":4},{"name":"jc/parsers/crontab.py","lines_changed":4},{"name":"jc/parsers/crontab_u.py","lines_changed":4},{"name":"jc/parsers/csv.py","lines_changed":4},{"name":"jc/parsers/date.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":4},{"name":"jc/parsers/dir.py","lines_changed":4},{"name":"jc/parsers/dmidecode.py","lines_changed":4},{"name":"jc/parsers/dpkg_l.py","lines_changed":4},{"name":"jc/parsers/du.py","lines_changed":4},{"name":"jc/parsers/env.py","lines_changed":4},{"name":"jc/parsers/file.py","lines_changed":4},{"name":"jc/parsers/finger.py","lines_changed":4},{"name":"jc/parsers/foo.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":4},{"name":"jc/parsers/fstab.py","lines_changed":4},{"name":"jc/parsers/group.py","lines_changed":4},{"name":"jc/parsers/gshadow.py","lines_changed":4},{"name":"jc/parsers/hash.py","lines_changed":4},{"name":"jc/parsers/hashsum.py","lines_changed":4},{"name":"jc/parsers/hciconfig.py","lines_changed":4},{"name":"jc/parsers/history.py","lines_changed":4},{"name":"jc/parsers/hosts.py","lines_changed":4},{"name":"jc/parsers/id.py","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":4},{"name":"jc/parsers/ini.py","lines_changed":4},{"name":"jc/parsers/iptables.py","lines_changed":4},{"name":"jc/parsers/iw_scan.py","lines_changed":4},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/kv.py","lines_changed":4},{"name":"jc/parsers/last.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":67},{"name":"jc/parsers/lsblk.py","lines_changed":4},{"name":"jc/parsers/lsmod.py","lines_changed":4},{"name":"jc/parsers/lsof.py","lines_changed":4},{"name":"jc/parsers/mount.py","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":4},{"name":"jc/parsers/ntpq.py","lines_changed":4},{"name":"jc/parsers/passwd.py","lines_changed":4},{"name":"jc/parsers/ping.py","lines_changed":4},{"name":"jc/parsers/pip_list.py","lines_changed":4},{"name":"jc/parsers/pip_show.py","lines_changed":4},{"name":"jc/parsers/ps.py","lines_changed":4},{"name":"jc/parsers/route.py","lines_changed":4},{"name":"jc/parsers/rpm_qi.py","lines_changed":4},{"name":"jc/parsers/shadow.py","lines_changed":4},{"name":"jc/parsers/ss.py","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"jc/parsers/sysctl.py","lines_changed":4},{"name":"jc/parsers/systemctl.py","lines_changed":4},{"name":"jc/parsers/systemctl_lj.py","lines_changed":4},{"name":"jc/parsers/systemctl_ls.py","lines_changed":4},{"name":"jc/parsers/systemctl_luf.py","lines_changed":4},{"name":"jc/parsers/time.py","lines_changed":4},{"name":"jc/parsers/timedatectl.py","lines_changed":4},{"name":"jc/parsers/tracepath.py","lines_changed":4},{"name":"jc/parsers/traceroute.py","lines_changed":4},{"name":"jc/parsers/uname.py","lines_changed":4},{"name":"jc/parsers/upower.py","lines_changed":4},{"name":"jc/parsers/uptime.py","lines_changed":4},{"name":"jc/parsers/w.py","lines_changed":4},{"name":"jc/parsers/wc.py","lines_changed":4},{"name":"jc/parsers/who.py","lines_changed":4},{"name":"jc/parsers/xml.py","lines_changed":4},{"name":"jc/parsers/yaml.py","lines_changed":4},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"f5c7e7e4046bc57b4fcad99390e31b121a7106ba","message":"add updated docs with home link and parser info at the bottom","stats":{"files_changed":70,"insertions":350,"deletions":0,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":5},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5}]}},{"commit":"001c700b5bd280cb1cb9e54169ae5f1b7918c257","message":"add home link to the top of the md file","stats":{"files_changed":3,"insertions":2,"deletions":1,"files":["docgen.sh","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docgen.sh","lines_changed":3},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"9b41e9bef0ff099e70f37fddc8fe2c6bd8457b19","message":"Add parser information header","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":1}]}},{"commit":"34bd6e32dc0c0bf7dfeedaadbf04115f43e9d060","message":"pull each parser as a json object into a bash array and iterate on it to add supplementary information like version, author, and compatibility","stats":{"files_changed":1,"insertions":20,"deletions":4,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":24}]}},{"commit":"c5d058490beaa8f59875a8acfd7a400764768639","message":"move parser doc printing to its own function","stats":{"files_changed":1,"insertions":22,"deletions":13,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":35}]}},{"commit":"dd1ae6d9a7de5421830232deb42d933b9a652672","message":"add man page inside the pypi package for easier packaging in homebrew","stats":{"files_changed":4,"insertions":3,"deletions":1,"files":["MANIFEST.in","jc/man/jc.1.gz","man/jc.1.gz","mangen.py"],"file_stats":[{"name":"MANIFEST.in","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"mangen.py","lines_changed":2}]}},{"commit":"d8ea9bde823a7f5c146741150c3211737345c7dd","message":"doc update","stats":{"files_changed":3,"insertions":16,"deletions":16,"files":["docs/parsers/w.md","jc/parsers/w.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/w.md","lines_changed":16},{"name":"jc/parsers/w.py","lines_changed":16},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"125edc9c906dc3650b6a683ed13830075acb7ab6","message":"bail out for -h, -a, and -v in magic()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]}},{"commit":"15ea43e394a9004f8ccec208b3a066c76e241866","message":"add man file to package for easier packaging in homebrew","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["MANIFEST.in"],"file_stats":[{"name":"MANIFEST.in","lines_changed":1}]}},{"commit":"b55b02687c00d1c50e30f30c9b9a7f36f783eb0f","message":"doc update","stats":{"files_changed":19,"insertions":371,"deletions":441,"files":["CHANGELOG","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","man/jc.1.gz","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":6},{"name":"docs/parsers/uname.md","lines_changed":42},{"name":"docs/parsers/upower.md","lines_changed":140},{"name":"docs/parsers/uptime.md","lines_changed":52},{"name":"docs/parsers/w.md","lines_changed":46},{"name":"docs/parsers/wc.md","lines_changed":38},{"name":"docs/parsers/who.md","lines_changed":50},{"name":"docs/parsers/xml.md","lines_changed":33},{"name":"docs/parsers/yaml.md","lines_changed":37},{"name":"jc/parsers/uname.py","lines_changed":33},{"name":"jc/parsers/upower.py","lines_changed":131},{"name":"jc/parsers/uptime.py","lines_changed":43},{"name":"jc/parsers/w.py","lines_changed":37},{"name":"jc/parsers/wc.py","lines_changed":29},{"name":"jc/parsers/who.py","lines_changed":41},{"name":"jc/parsers/xml.py","lines_changed":24},{"name":"jc/parsers/yaml.py","lines_changed":28},{"name":"man/jc.1.gz","lines_changed":null},{"name":"setup.py","lines_changed":2}]}},{"commit":"da611f0ac6321f7f52fdbc419f8b155c74393c28","message":"update docs","stats":{"files_changed":4,"insertions":63,"deletions":50,"files":["jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","man/jc.1.gz"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":30},{"name":"jc/parsers/iptables.py","lines_changed":53},{"name":"jc/parsers/iw_scan.py","lines_changed":30},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"b8b8dfead4fdc4285585c44c2ebce3bdd42b2e7c","message":"update docs","stats":{"files_changed":61,"insertions":1501,"deletions":1848,"files":["docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":39},{"name":"docs/parsers/iptables.md","lines_changed":62},{"name":"docs/parsers/iw_scan.md","lines_changed":35},{"name":"docs/parsers/jobs.md","lines_changed":40},{"name":"docs/parsers/kv.md","lines_changed":12},{"name":"docs/parsers/last.md","lines_changed":48},{"name":"docs/parsers/ls.md","lines_changed":50},{"name":"docs/parsers/lsblk.md","lines_changed":110},{"name":"docs/parsers/lsmod.md","lines_changed":42},{"name":"docs/parsers/lsof.md","lines_changed":50},{"name":"docs/parsers/mount.md","lines_changed":42},{"name":"docs/parsers/netstat.md","lines_changed":218},{"name":"docs/parsers/ntpq.md","lines_changed":53},{"name":"docs/parsers/passwd.md","lines_changed":44},{"name":"docs/parsers/ping.md","lines_changed":76},{"name":"docs/parsers/pip_list.md","lines_changed":36},{"name":"docs/parsers/pip_show.md","lines_changed":51},{"name":"docs/parsers/ps.md","lines_changed":64},{"name":"docs/parsers/route.md","lines_changed":58},{"name":"docs/parsers/rpm_qi.md","lines_changed":72},{"name":"docs/parsers/shadow.md","lines_changed":46},{"name":"docs/parsers/ss.md","lines_changed":66},{"name":"docs/parsers/stat.md","lines_changed":92},{"name":"docs/parsers/sysctl.md","lines_changed":32},{"name":"docs/parsers/systemctl.md","lines_changed":40},{"name":"docs/parsers/systemctl_lj.md","lines_changed":39},{"name":"docs/parsers/systemctl_ls.md","lines_changed":36},{"name":"docs/parsers/systemctl_luf.md","lines_changed":34},{"name":"docs/parsers/time.md","lines_changed":100},{"name":"docs/parsers/timedatectl.md","lines_changed":48},{"name":"docs/parsers/tracepath.md","lines_changed":55},{"name":"docs/parsers/traceroute.md","lines_changed":64},{"name":"jc/parsers/jobs.py","lines_changed":31},{"name":"jc/parsers/kv.py","lines_changed":13},{"name":"jc/parsers/last.py","lines_changed":39},{"name":"jc/parsers/ls.py","lines_changed":41},{"name":"jc/parsers/lsblk.py","lines_changed":101},{"name":"jc/parsers/lsmod.py","lines_changed":33},{"name":"jc/parsers/lsof.py","lines_changed":41},{"name":"jc/parsers/mount.py","lines_changed":41},{"name":"jc/parsers/netstat.py","lines_changed":209},{"name":"jc/parsers/ntpq.py","lines_changed":44},{"name":"jc/parsers/passwd.py","lines_changed":35},{"name":"jc/parsers/ping.py","lines_changed":75},{"name":"jc/parsers/pip_list.py","lines_changed":27},{"name":"jc/parsers/pip_show.py","lines_changed":42},{"name":"jc/parsers/ps.py","lines_changed":55},{"name":"jc/parsers/route.py","lines_changed":49},{"name":"jc/parsers/rpm_qi.py","lines_changed":63},{"name":"jc/parsers/shadow.py","lines_changed":37},{"name":"jc/parsers/ss.py","lines_changed":59},{"name":"jc/parsers/stat.py","lines_changed":83},{"name":"jc/parsers/sysctl.py","lines_changed":23},{"name":"jc/parsers/systemctl.py","lines_changed":31},{"name":"jc/parsers/systemctl_lj.py","lines_changed":30},{"name":"jc/parsers/systemctl_ls.py","lines_changed":27},{"name":"jc/parsers/systemctl_luf.py","lines_changed":25},{"name":"jc/parsers/time.py","lines_changed":91},{"name":"jc/parsers/timedatectl.py","lines_changed":39},{"name":"jc/parsers/tracepath.py","lines_changed":46},{"name":"jc/parsers/traceroute.py","lines_changed":65}]}},{"commit":"4290a3cbd135cacbf63664dc30768017ebbed28d","message":"make IfconfigParser class private","stats":{"files_changed":2,"insertions":3,"deletions":9,"files":["docs/parsers/ifconfig.md","jc/parsers/ifconfig.py"],"file_stats":[{"name":"docs/parsers/ifconfig.md","lines_changed":6},{"name":"jc/parsers/ifconfig.py","lines_changed":6}]}},{"commit":"a5e2203cee6a7bc398cf280f57d37638eeb1d2d8","message":"update ifconfig doc","stats":{"files_changed":3,"insertions":2,"deletions":1,"files":["docs/parsers/ifconfig.md","jc/parsers/ifconfig.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":1},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"e28c08b1361161cfd123b9ebc11fa1ffa87d658f","message":"update documentation","stats":{"files_changed":46,"insertions":976,"deletions":1209,"files":["docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/csv.md","lines_changed":36},{"name":"docs/parsers/date.md","lines_changed":63},{"name":"docs/parsers/df.md","lines_changed":54},{"name":"docs/parsers/dig.md","lines_changed":128},{"name":"docs/parsers/dir.md","lines_changed":44},{"name":"docs/parsers/dmidecode.md","lines_changed":50},{"name":"docs/parsers/dpkg_l.md","lines_changed":46},{"name":"docs/parsers/du.md","lines_changed":34},{"name":"docs/parsers/env.md","lines_changed":34},{"name":"docs/parsers/file.md","lines_changed":34},{"name":"docs/parsers/finger.md","lines_changed":52},{"name":"docs/parsers/free.md","lines_changed":44},{"name":"docs/parsers/fstab.md","lines_changed":42},{"name":"docs/parsers/group.md","lines_changed":42},{"name":"docs/parsers/gshadow.md","lines_changed":46},{"name":"docs/parsers/hash.md","lines_changed":34},{"name":"docs/parsers/hashsum.md","lines_changed":34},{"name":"docs/parsers/hciconfig.md","lines_changed":118},{"name":"docs/parsers/history.md","lines_changed":34},{"name":"docs/parsers/hosts.md","lines_changed":38},{"name":"docs/parsers/id.md","lines_changed":74},{"name":"docs/parsers/ifconfig.md","lines_changed":86},{"name":"jc/parsers/csv.py","lines_changed":27},{"name":"jc/parsers/date.py","lines_changed":54},{"name":"jc/parsers/df.py","lines_changed":45},{"name":"jc/parsers/dig.py","lines_changed":143},{"name":"jc/parsers/dir.py","lines_changed":35},{"name":"jc/parsers/dmidecode.py","lines_changed":41},{"name":"jc/parsers/dpkg_l.py","lines_changed":37},{"name":"jc/parsers/du.py","lines_changed":25},{"name":"jc/parsers/env.py","lines_changed":25},{"name":"jc/parsers/file.py","lines_changed":25},{"name":"jc/parsers/finger.py","lines_changed":43},{"name":"jc/parsers/foo.py","lines_changed":25},{"name":"jc/parsers/free.py","lines_changed":35},{"name":"jc/parsers/fstab.py","lines_changed":33},{"name":"jc/parsers/group.py","lines_changed":33},{"name":"jc/parsers/gshadow.py","lines_changed":37},{"name":"jc/parsers/hash.py","lines_changed":25},{"name":"jc/parsers/hashsum.py","lines_changed":25},{"name":"jc/parsers/hciconfig.py","lines_changed":109},{"name":"jc/parsers/history.py","lines_changed":25},{"name":"jc/parsers/hosts.py","lines_changed":29},{"name":"jc/parsers/id.py","lines_changed":65},{"name":"jc/parsers/ifconfig.py","lines_changed":77},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"a4b6846f63b43168085275d73940265940badf46","message":"man update","stats":{"files_changed":2,"insertions":0,"deletions":467,"files":["man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"man/jc.1","lines_changed":467},{"name":"man/jc.1.gz","lines_changed":null}]}},{"commit":"2bc830786114fd57619f34b936dcf6e0bed7a109","message":"Merge branch 'master' into dev"},{"commit":"9b39917c798ed0310c9b82d87172cbf6d24ba111","message":"update docstrings for new help functionality","stats":{"files_changed":17,"insertions":391,"deletions":453,"files":["README.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","jc/cli.py","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/acpi.md","lines_changed":94},{"name":"docs/parsers/airport.md","lines_changed":56},{"name":"docs/parsers/blkid.md","lines_changed":88},{"name":"docs/parsers/cksum.md","lines_changed":36},{"name":"docs/parsers/crontab.md","lines_changed":79},{"name":"docs/parsers/crontab_u.md","lines_changed":83},{"name":"jc/cli.py","lines_changed":6},{"name":"jc/parsers/acpi.py","lines_changed":85},{"name":"jc/parsers/airport.py","lines_changed":47},{"name":"jc/parsers/blkid.py","lines_changed":79},{"name":"jc/parsers/cksum.py","lines_changed":27},{"name":"jc/parsers/crontab.py","lines_changed":70},{"name":"jc/parsers/crontab_u.py","lines_changed":74},{"name":"man/jc.1","lines_changed":8},{"name":"templates/manpage_template","lines_changed":8},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"57c13cc0a38ad89fda8b0e362bd6487257d0a26a","message":"add support for parser help","stats":{"files_changed":1,"insertions":23,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":26}]}},{"commit":"b7355fd30d992a1bcc90227f5a1b02be073829e7","message":"new docstring format for improved documentation","stats":{"files_changed":2,"insertions":37,"deletions":48,"files":["docs/parsers/arp.md","jc/parsers/arp.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":46},{"name":"jc/parsers/arp.py","lines_changed":39}]}},{"commit":"93ae309e407b26820b9f05b5b331d05fc77df57f","message":"bump version to 1.15.1","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/__init__.py","man/jc.1"],"file_stats":[{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"5d8f8365e24a7c3a587d4e71ebba4876de08203b","message":"gzip man page","stats":{"files_changed":3,"insertions":9,"deletions":461,"files":["man/jc.1","man/jc.1.gz","mangen.py"],"file_stats":[{"name":"man/jc.1","lines_changed":461},{"name":"man/jc.1.gz","lines_changed":null},{"name":"mangen.py","lines_changed":9}]}},{"commit":"f26909eefb236e9ebf63be53cd86ae13cc3d9ea3","message":"formatting","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["docs/parsers/dir.md"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":8}]}},{"commit":"55bfbb2797ede3aefbb14ecab950b108b1895ccc","message":"formatting","stats":{"files_changed":2,"insertions":5,"deletions":6,"files":["EXAMPLES.md","jc/parsers/dir.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":3},{"name":"jc/parsers/dir.py","lines_changed":8}]}},{"commit":"8970b8342a855203aef649b60dad3e49a1d7fd2a","message":"Merge pull request #115 from kellyjonbrazil/master"},{"commit":"5285e699c30fdeaf56068f5a03ef1d1d33fa673c","message":"fix rpm-qi parser name","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","jc/cli.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"275f3860d5870303235b651d42650256e4db8ada","message":"Merge pull request #114 from kellyjonbrazil/dev"},{"commit":"a73fdb7478965f0f2c841ac01b2762db80ad0786","message":"update dates","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["CHANGELOG","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]}},{"commit":"f2d746403a0ed764f931ae9e14d180bab107dcca","message":"typo fix","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/rpm_qi.md","jc/parsers/rpm_qi.py"],"file_stats":[{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"jc/parsers/rpm_qi.py","lines_changed":2}]}},{"commit":"b7dbf2c49be4beb793495a0aaee7f05dbea5a3a6","message":"doc formatting","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":26}]}},{"commit":"21f3c97788826e79b0c387f877c5adf269318e97","message":"rename rpm_qai to rpm_qi","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2}]}},{"commit":"14b727cc717d04fefba1cc31b6f29b549ced986f","message":"add rpm_qi tests","stats":{"files_changed":3,"insertions":73,"deletions":0,"files":["tests/fixtures/centos-7.7/rpm-qi-package.json","tests/fixtures/centos-7.7/rpm-qi-package.out","tests/test_rpm_qai.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/rpm-qi-package.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rpm-qi-package.out","lines_changed":26},{"name":"tests/test_rpm_qai.py","lines_changed":46}]}},{"commit":"abee226591ed4ae37351efc995017d28b27827d9","message":"rename rpm_qia to rpm_qi","stats":{"files_changed":5,"insertions":205,"deletions":14,"files":["README.md","docs/parsers/rpm_qi.md","jc/cli.py","jc/parsers/{rpm_qai.py => rpm_qi.py}","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":191},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/{rpm_qai.py => rpm_qi.py}","lines_changed":20},{"name":"man/jc.1","lines_changed":4}]}},{"commit":"293ad39f4bcf326186dd917d8bc58d3964e5e4d6","message":"typo fix","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"92443025811019f616f596abb60a2889f604c122","message":"rpm parser doc update","stats":{"files_changed":4,"insertions":7,"deletions":6,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/rpm_qai.md","jc/parsers/rpm_qai.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":4},{"name":"docs/parsers/rpm_qai.md","lines_changed":4},{"name":"jc/parsers/rpm_qai.py","lines_changed":4}]}},{"commit":"753cac25fb1e7e6cd2c742afa8d45ced068ea91d","message":"only add description if it exists","stats":{"files_changed":1,"insertions":6,"deletions":3,"files":["jc/parsers/rpm_qai.py"],"file_stats":[{"name":"jc/parsers/rpm_qai.py","lines_changed":9}]}},{"commit":"0548263e898bf14f93d2fa423c0f0a9d9f2ff567","message":"add rpm -qai parser","stats":{"files_changed":8,"insertions":10468,"deletions":0,"files":["EXAMPLES.md","README.md","docs/parsers/rpm_qai.md","jc/cli.py","jc/parsers/rpm_qai.py","man/jc.1","tests/fixtures/centos-7.7/rpm-qai.json","tests/fixtures/centos-7.7/rpm-qai.out"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":53},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/rpm_qai.md","lines_changed":191},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/rpm_qai.py","lines_changed":255},{"name":"man/jc.1","lines_changed":5},{"name":"tests/fixtures/centos-7.7/rpm-qai.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rpm-qai.out","lines_changed":9961}]}},{"commit":"53776a9bf894988d6ef9221a62ab8b816c89560c","message":"note -a output is JSON","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":2},{"name":"templates/manpage_template","lines_changed":2}]}},{"commit":"cc7def9b76a7fa6de1e11b584676820f3acb0257","message":"add OSX finger tests","stats":{"files_changed":3,"insertions":18,"deletions":0,"files":["tests/fixtures/osx-10.14.6/finger.json","tests/fixtures/osx-10.14.6/finger.out","tests/test_finger.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/finger.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/finger.out","lines_changed":5},{"name":"tests/test_finger.py","lines_changed":12}]}},{"commit":"11a4422c25ed905f33475677bcc2f59f49c62a23","message":"add centos 7.7 finger tests","stats":{"files_changed":3,"insertions":51,"deletions":0,"files":["tests/fixtures/centos-7.7/finger.json","tests/fixtures/centos-7.7/finger.out","tests/test_finger.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/finger.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/finger.out","lines_changed":3},{"name":"tests/test_finger.py","lines_changed":47}]}},{"commit":"3a44785260514227b541530baf3e14b6c7ebe86a","message":"del details key if details are blank","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/finger.py"],"file_stats":[{"name":"jc/parsers/finger.py","lines_changed":4}]}},{"commit":"e0d430c26c38db8de5a32741e05df412cffe45b7","message":"update -r raw option info","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"417b70020accfa4910016e9d3d12690a5488f6f5","message":"add idle time fields to finger parser","stats":{"files_changed":5,"insertions":129,"deletions":22,"files":["EXAMPLES.md","docs/parsers/finger.md","jc/parsers/finger.py","tests/fixtures/ubuntu-18.04/finger.json","tests/fixtures/ubuntu-18.04/finger.out"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":18},{"name":"docs/parsers/finger.md","lines_changed":53},{"name":"jc/parsers/finger.py","lines_changed":71},{"name":"tests/fixtures/ubuntu-18.04/finger.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/finger.out","lines_changed":8}]}},{"commit":"7b29c464b72ef9a79bd872dab92cf65016490bcc","message":"date updated","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]}},{"commit":"26d5529d86e4e459ad94226465c3697a050af0ac","message":"remove aix support, add note for -s support. schema update","stats":{"files_changed":1,"insertions":10,"deletions":7,"files":["docs/parsers/finger.md"],"file_stats":[{"name":"docs/parsers/finger.md","lines_changed":17}]}},{"commit":"852103c478321b84ffbbc0a876d5ece0c0881e1f","message":"tweak regex to support arbitrary 'detail' data","stats":{"files_changed":1,"insertions":27,"deletions":14,"files":["jc/parsers/finger.py"],"file_stats":[{"name":"jc/parsers/finger.py","lines_changed":41}]}},{"commit":"26a115421b0888e23f4348f1124e2ef7b39df4cc","message":"add finger parser","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":11}]}},{"commit":"755b941a9aa602d95d9bc599f5c64e05f9e6216d","message":"doc update","stats":{"files_changed":3,"insertions":35,"deletions":30,"files":["EXAMPLES.md","docs/parsers/finger.md","jc/parsers/finger.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":23},{"name":"docs/parsers/finger.md","lines_changed":21},{"name":"jc/parsers/finger.py","lines_changed":21}]}},{"commit":"fd1ca82d86649adeb84968142665e5e4fae3fa0f","message":"add finger parser","stats":{"files_changed":5,"insertions":263,"deletions":0,"files":["README.md","docs/parsers/finger.md","jc/cli.py","jc/parsers/finger.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/finger.md","lines_changed":102},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/finger.py","lines_changed":154},{"name":"man/jc.1","lines_changed":5}]}},{"commit":"6fe175344fc61d4996a9ea20f6c5d429efb1fac7","message":"change examples link to github.io","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"3590cda13a68616ee7eb8c85c5554ffb3fef036d","message":"docs formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/last.md","jc/parsers/last.py"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":2}]}},{"commit":"2f1011dd85ec9b3550138ac4a4e1729fa5b4fe17","message":"readme update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"2b155261b3f6e4879b592f5bc052649ded5e3d69","message":"use new github.io links for documentation","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"02f4d606d0a446c7cc74aedac6035ee79805950d","message":"add documentation links to README.md","stats":{"files_changed":2,"insertions":69,"deletions":69,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":136},{"name":"templates/readme_template","lines_changed":2}]}},{"commit":"577811f00b7fcd0396bb0e26a2985709bd2c65a0","message":"Set theme jekyll-theme-cayman","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/_config.yml"],"file_stats":[{"name":"docs/_config.yml","lines_changed":1}]}},{"commit":"b4098d67a3a4a617d42c1389e0a88833c77b89b4","message":"latest","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]}},{"commit":"88bd7554aeb511c19e55dc3dde9c9376efb0485b","message":"add status messages","stats":{"files_changed":2,"insertions":8,"deletions":3,"files":["docgen.sh","updatedocs.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":2},{"name":"updatedocs.sh","lines_changed":9}]}},{"commit":"b5ec16c5cafb78db093861cc30d9646207f2227a","message":"formatting","stats":{"files_changed":2,"insertions":0,"deletions":8,"files":["mangen.py","readmegen.py"],"file_stats":[{"name":"mangen.py","lines_changed":4},{"name":"readmegen.py","lines_changed":4}]}},{"commit":"68fcb60a1460a35500180ec05a8cf5ba5706ff17","message":"add updatedocs script","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["updatedocs.sh"],"file_stats":[{"name":"updatedocs.sh","lines_changed":6}]}},{"commit":"e4781d60ce251f6d47f19bbe042e97f8aa9e2f18","message":"update parser descriptions with backticks surrounding command names","stats":{"files_changed":65,"insertions":188,"deletions":189,"files":["README.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":124},{"name":"jc/parsers/acpi.py","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/blkid.py","lines_changed":2},{"name":"jc/parsers/cksum.py","lines_changed":3},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/dir.py","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":2},{"name":"jc/parsers/dpkg_l.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/group.py","lines_changed":2},{"name":"jc/parsers/gshadow.py","lines_changed":2},{"name":"jc/parsers/hash.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":2},{"name":"jc/parsers/hciconfig.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/ntpq.py","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":2},{"name":"jc/parsers/ping.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/shadow.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/sysctl.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/time.py","lines_changed":2},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/parsers/wc.py","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":2},{"name":"man/jc.1","lines_changed":126}]}},{"commit":"6201fb346a66ba762651624cdaf03f08e08579a1","message":"test backticks in description","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]}},{"commit":"f88c8343f9dec5e0190df94a5109e6c749bda286","message":"update iw-scan description for documentation","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]}},{"commit":"25410d33168ee7142bd8f8c739ef22a62a47eb6c","message":"create readmegen.py script. move jinja2 templates to templates folder","stats":{"files_changed":5,"insertions":973,"deletions":70,"files":["README.md","mangen.py","readmegen.py","{man/template => templates}/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":139},{"name":"mangen.py","lines_changed":2},{"name":"readmegen.py","lines_changed":16},{"name":"{man/template => templates}/manpage_template","lines_changed":0},{"name":"templates/readme_template","lines_changed":886}]}},{"commit":"4ff9952938d0654376efc94ca7d8a12f6df171af","message":"change OSX to macOS","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":10}]}},{"commit":"5e3f63a412c5b23e7515337521ebba6273b5c11f","message":"add license and copyright info. use variables instead of hard-coded values","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["man/jc.1","man/template/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":4},{"name":"man/template/manpage_template","lines_changed":8}]}},{"commit":"e1f57be69efdfd7facd07df6ef0955a36c4fc18b","message":"add license info","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"2c65d5eeccdc95d2de00ac6575a9e8d8458486bc","message":"man page updates","stats":{"files_changed":2,"insertions":32,"deletions":8,"files":["man/jc.1","man/template/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":20},{"name":"man/template/manpage_template","lines_changed":20}]}},{"commit":"aa621f2f1ee043611c440683dfb63e6577d8fac4","message":"enhance man page","stats":{"files_changed":3,"insertions":74,"deletions":9,"files":["CHANGELOG","man/jc.1","man/template/manpage_template"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"man/jc.1","lines_changed":42},{"name":"man/template/manpage_template","lines_changed":40}]}},{"commit":"ac932c6e59ad80115962d0ea91e6aaabc70c211e","message":"update timestamp docs","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":2},{"name":"jc/utils.py","lines_changed":2}]}},{"commit":"029f79da1647e53f97ca83ba92b1f36a131f3128","message":"added info regarding updated dev scripts for automating doc generation","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]}},{"commit":"153b2b4a7a216caae5b03f6d50d43980c13a705f","message":"use jc to help automate the generation of its own docs","stats":{"files_changed":1,"insertions":11,"deletions":68,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":79}]}},{"commit":"709b2fe4eead06090f903718deeb06ec774fc26e","message":"add -h and -v options","stats":{"files_changed":2,"insertions":16,"deletions":0,"files":["man/jc.1","man/template/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":8},{"name":"man/template/manpage_template","lines_changed":8}]}},{"commit":"09c1fccc584e3d0582e19b520586419085ea8d04","message":"manpage updates","stats":{"files_changed":3,"insertions":4,"deletions":6,"files":["man/jc.1","man/template/manpage_template","mangen.py"],"file_stats":[{"name":"man/jc.1","lines_changed":2},{"name":"man/template/manpage_template","lines_changed":2},{"name":"mangen.py","lines_changed":6}]}},{"commit":"fd254d99b782888fe7646e42a61f28aa99e7cba7","message":"add manpage generator","stats":{"files_changed":3,"insertions":193,"deletions":15,"files":["man/jc.1","man/template/manpage_template","mangen.py"],"file_stats":[{"name":"man/jc.1","lines_changed":124},{"name":"man/template/manpage_template","lines_changed":64},{"name":"mangen.py","lines_changed":20}]}},{"commit":"88bd2c172217c498431e8904e74313bc27978785","message":"fix typo","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]}},{"commit":"d03e2f0fc1d0310cd94702f4d3c959d71b0eb622","message":"add parser schema guidelines","stats":{"files_changed":1,"insertions":40,"deletions":0,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":40}]}},{"commit":"3f12a393bd37062cd1412128be495235b0c7351f","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]}},{"commit":"8c21284c5038bdc2e52ff4211fac747f33f52091","message":"remove redundant license info","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":3}]}},{"commit":"e7d396c2157a77500017967dfc68ffaf32507c2c","message":"update issues link","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]}},{"commit":"f238fac0eb0c8e5133c6c9abf9ca709f5df7a925","message":"add contributing guidelines","stats":{"files_changed":3,"insertions":49,"deletions":0,"files":["CHANGELOG","CONTRIBUTING.md","README.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"CONTRIBUTING.md","lines_changed":46},{"name":"README.md","lines_changed":2}]}},{"commit":"017228f80d9a65ad7715f31c539d9fca1615296f","message":"add tested on Windows 10","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]}},{"commit":"286c5fa9434e25434ee8f4825621f68464296469","message":"add dir parser","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]}},{"commit":"74cfc13abe4cd09ca5470714caeaedd24c099770","message":"fixup dir parser tests","stats":{"files_changed":9,"insertions":12,"deletions":21,"files":["tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-S.json","tests/fixtures/windows-10/dir-dirs.json","tests/fixtures/windows-10/dir-files.json","tests/fixtures/windows-10/dir-mix.json","tests/fixtures/windows-10/dir-raw.json","tests/fixtures/windows-10/dir.json","tests/test_dir.py"],"file_stats":[{"name":"tests/fixtures/windows-10/dir-C.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-ODTC.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-S.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-dirs.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-files.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-mix.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-raw.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir.json","lines_changed":2},{"name":"tests/test_dir.py","lines_changed":18}]}},{"commit":"0ee4a6c377321cf6ff67ced38e9a07a8f6313943","message":"update schema and add epoch naive timestamp","stats":{"files_changed":2,"insertions":207,"deletions":460,"files":["docs/parsers/dir.md","jc/parsers/dir.py"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":316},{"name":"jc/parsers/dir.py","lines_changed":351}]}},{"commit":"283433578dfc3f132ef35727ce5bafb3e390896c","message":"add dir parser","stats":{"files_changed":2,"insertions":46,"deletions":0,"files":["EXAMPLES.md","README.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":45},{"name":"README.md","lines_changed":1}]}},{"commit":"9559c85057308e8815d4654bbe0062a5858c0b2b","message":"add windows dir format","stats":{"files_changed":2,"insertions":3,"deletions":0,"files":["jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":1},{"name":"tests/test_utils.py","lines_changed":2}]}},{"commit":"c5c020f5654038dacba542be3784a35d7333cbcc","message":"add /S option","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/parsers/dir.md"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":1}]}},{"commit":"95ec79bceb3d0c4245e36b7b16cfda6e16b01197","message":"Merge pull request #107 from rasheed-rd/add-dir-parser"},{"commit":"8f8be8aa33f0b708ebd9a35c6b288572443d7181","message":"add -1 option info","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4}]}},{"commit":"5b60c7445a3f8bd2ae1587aa0ffaeaf093966f9a","message":"Add support for /S and update documentation","stats":{"files_changed":5,"insertions":469,"deletions":400,"files":["docs/parsers/dir.md","jc/parsers/dir.py","tests/fixtures/windows-10/dir-S.json","tests/fixtures/windows-10/dir-S.out","tests/test_dir.py"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":404},{"name":"jc/parsers/dir.py","lines_changed":405},{"name":"tests/fixtures/windows-10/dir-S.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-S.out","lines_changed":47},{"name":"tests/test_dir.py","lines_changed":12}]}},{"commit":"d9dbcc8b526c8de9c6d12ac580880fd606dc68cf","message":"Add parent dir to structure. Add test cases. Remove support for /Q","stats":{"files_changed":15,"insertions":149,"deletions":73,"files":["docs/parsers/dir.md","jc/parsers/dir.py","tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-Q.json","tests/fixtures/windows-10/dir-Q.out","tests/fixtures/windows-10/dir-dirs.json","tests/fixtures/windows-10/dir-dirs.out","tests/fixtures/windows-10/dir-files.json","tests/fixtures/windows-10/dir-files.out","tests/fixtures/windows-10/dir-mix.json","tests/fixtures/windows-10/dir-mix.out","tests/fixtures/windows-10/dir-raw.json","tests/fixtures/windows-10/dir.json","tests/test_dir.py"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":24},{"name":"jc/parsers/dir.py","lines_changed":59},{"name":"tests/fixtures/windows-10/dir-C.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-ODTC.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-Q.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-Q.out","lines_changed":21},{"name":"tests/fixtures/windows-10/dir-dirs.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-dirs.out","lines_changed":19},{"name":"tests/fixtures/windows-10/dir-files.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-files.out","lines_changed":16},{"name":"tests/fixtures/windows-10/dir-mix.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-mix.out","lines_changed":22},{"name":"tests/fixtures/windows-10/dir-raw.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir.json","lines_changed":2},{"name":"tests/test_dir.py","lines_changed":50}]}},{"commit":"79bc525970b38dea68b4859ac5dd32fc681e5994","message":"add codes field to schema","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":1},{"name":"jc/parsers/dpkg_l.py","lines_changed":1}]}},{"commit":"9dae1091ddc6141694ebfdc5ae649582cb879ccd","message":"typo fix","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":6},{"name":"jc/parsers/dpkg_l.py","lines_changed":4}]}},{"commit":"74d3ac686a69518c1048260e37a0245ff254ff57","message":"add dpkg-l tests","stats":{"files_changed":4,"insertions":61,"deletions":0,"files":["tests/fixtures/ubuntu-18.04/dpkg-l-codes.json","tests/fixtures/ubuntu-18.04/dpkg-l-columns500.json","tests/fixtures/ubuntu-18.04/dpkg-l.json","tests/test_dpkg_l.py"],"file_stats":[{"name":"tests/fixtures/ubuntu-18.04/dpkg-l-codes.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l-columns500.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l.json","lines_changed":1},{"name":"tests/test_dpkg_l.py","lines_changed":58}]}},{"commit":"cf3cc636badcf4ae6db1e5ee5e57ca0331ee5b0f","message":"add dpkg-l parser info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]}},{"commit":"a720441e1d34771c5a54876cb7dd63fb8c9f408e","message":"add dpkg -l example","stats":{"files_changed":1,"insertions":54,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":54}]}},{"commit":"0a7ed0959df07e2f36d9ec3ca8c294cfdaf10396","message":"rename err to error","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"jc/parsers/dpkg_l.py","lines_changed":6}]}},{"commit":"eb83c9b86dc6d1ff15efed30993071834b65a7d1","message":"replace parse_datetime_to_timestamp with timestamp class","stats":{"files_changed":1,"insertions":8,"deletions":21,"files":["docs/utils.md"],"file_stats":[{"name":"docs/utils.md","lines_changed":29}]}},{"commit":"5c0142dd19eee14f4f1c287f0543e29824f9ae70","message":"add dpkg-l parser","stats":{"files_changed":9,"insertions":1797,"deletions":2,"files":["CHANGELOG","docgen.sh","docs/parsers/dpkg_l.md","jc/cli.py","jc/parsers/dpkg_l.py","jc/parsers/universal.py","tests/fixtures/ubuntu-18.04/dpkg-l-codes.out","tests/fixtures/ubuntu-18.04/dpkg-l-columns500.out","tests/fixtures/ubuntu-18.04/dpkg-l.out"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/dpkg_l.md","lines_changed":170},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/dpkg_l.py","lines_changed":247},{"name":"jc/parsers/universal.py","lines_changed":4},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l-codes.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l-columns500.out","lines_changed":677},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l.out","lines_changed":677}]}},{"commit":"c326c8dc8356b55bba13864156adf30607205ece","message":"add TypeError to except block. add /usr/bin/time tests","stats":{"files_changed":18,"insertions":194,"deletions":1,"files":["jc/parsers/time.py","tests/fixtures/osx-10.14.6/time-l.json","tests/fixtures/osx-10.14.6/time-l.out","tests/fixtures/osx-10.14.6/time-lp.json","tests/fixtures/osx-10.14.6/time-lp.out","tests/fixtures/osx-10.14.6/time-p.json","tests/fixtures/osx-10.14.6/time-p.out","tests/fixtures/osx-10.14.6/time.json","tests/fixtures/osx-10.14.6/time.out","tests/fixtures/ubuntu-18.04/time-p.json","tests/fixtures/ubuntu-18.04/time-p.out","tests/fixtures/ubuntu-18.04/time-verbose.json","tests/fixtures/ubuntu-18.04/time-verbose.out","tests/fixtures/ubuntu-18.04/time.json","tests/fixtures/ubuntu-18.04/time.out","tests/fixtures/ubuntu-18.04/time2.json","tests/fixtures/ubuntu-18.04/time2.out","tests/test_time.py"],"file_stats":[{"name":"jc/parsers/time.py","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/time-l.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/time-l.out","lines_changed":15},{"name":"tests/fixtures/osx-10.14.6/time-lp.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/time-lp.out","lines_changed":17},{"name":"tests/fixtures/osx-10.14.6/time-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/time-p.out","lines_changed":3},{"name":"tests/fixtures/osx-10.14.6/time.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/time.out","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time-p.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/time-verbose.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time-verbose.out","lines_changed":23},{"name":"tests/fixtures/ubuntu-18.04/time.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/time2.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time2.out","lines_changed":2},{"name":"tests/test_time.py","lines_changed":118}]}},{"commit":"fc4082a03feb5645a1ad687908782a2584a58956","message":"remove old parse_datetime_to_timestamp function","stats":{"files_changed":1,"insertions":0,"deletions":131,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":131}]}},{"commit":"c8655565ff8718f0f14d41696b81e6539529dde1","message":"use new timestamp class","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]}},{"commit":"638f879f16c9e87edb60953f4fd0b1c7ad92f277","message":"use new timestamp class","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":5}]}},{"commit":"1d221bf7e6128d57bd769c0fe8f37f7a94da8cd2","message":"use new timestamp class","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/who.py","lines_changed":3}]}},{"commit":"60ea71f0ef931dccf09e6eb0cb737ddad0b47f0c","message":"use new timestamp class","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/timedatectl.py"],"file_stats":[{"name":"jc/parsers/timedatectl.py","lines_changed":3}]}},{"commit":"d8bdd35a3f462efcdc871426309299e8aefb0a79","message":"use new timestamp class","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":5}]}},{"commit":"7463891c53f3670710dfa72ed1422431c274fe4a","message":"use new timestamp class","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":6}]}},{"commit":"7537aec76fa07384c4439f34c50d4e3f001c0dfa","message":"use jc.utils.timestamp instead of jc.utils.parse_datetime_to_timestamp()","stats":{"files_changed":1,"insertions":8,"deletions":8,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":16}]}},{"commit":"62234e39a8533362a20f106c64326ed69f430006","message":"use jc.utils.timestamp instead of jc.utils.parse_datetime_to_timestamp()","stats":{"files_changed":1,"insertions":5,"deletions":8,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":13}]}},{"commit":"be004b7b3fe9217160c6418907e7d8aad10e5fae","message":"make parse_datetime_to_timestamp function a class called timestamp for easier use","stats":{"files_changed":2,"insertions":172,"deletions":15,"files":["jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":155},{"name":"tests/test_utils.py","lines_changed":32}]}},{"commit":"82539444b24169b2eb762485ed032fc968a81f71","message":"fix indentation for int and float conversions. add real_time field to schema","stats":{"files_changed":2,"insertions":23,"deletions":21,"files":["docs/parsers/time.md","jc/parsers/time.py"],"file_stats":[{"name":"docs/parsers/time.md","lines_changed":1},{"name":"jc/parsers/time.py","lines_changed":43}]}},{"commit":"a571d3cbafd5048d1d59070e1791398ae410197f","message":"fix typo","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/time.md","jc/parsers/time.py"],"file_stats":[{"name":"docs/parsers/time.md","lines_changed":2},{"name":"jc/parsers/time.py","lines_changed":2}]}},{"commit":"a038c14c23ea27264df61a38e0301de8d1fa1b9a","message":"change microseconds to centiseconds","stats":{"files_changed":3,"insertions":8,"deletions":8,"files":["EXAMPLES.md","docs/parsers/time.md","jc/parsers/time.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":4},{"name":"jc/parsers/time.py","lines_changed":10}]}},{"commit":"25a85d874cd2b57a7700b0c2dca61132127732b1","message":"update docs","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":2}]}},{"commit":"884c36ff42df4f580c8e2b4705def8e4c1182e39","message":"add /usr/bin/time parser","stats":{"files_changed":8,"insertions":536,"deletions":1,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","docs/parsers/iw_scan.md","docs/parsers/time.md","jc/cli.py","jc/parsers/time.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":36},{"name":"README.md","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":163},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/time.py","lines_changed":332}]}},{"commit":"b98e72b8b4eda0ab5ede7725226e61634af572eb","message":"add ls parser info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]}},{"commit":"05885c0096b5ee142ecff2d17e37c446518998a0","message":"add epoch and epoch_utc timestamps","stats":{"files_changed":5,"insertions":931,"deletions":18,"files":["docs/parsers/ls.md","jc/parsers/ls.py","tests/fixtures/ubuntu-18.04/ls-l-iso.json","tests/fixtures/ubuntu-18.04/ls-l-iso.out","tests/test_ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":22},{"name":"jc/parsers/ls.py","lines_changed":31},{"name":"tests/fixtures/ubuntu-18.04/ls-l-iso.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-l-iso.out","lines_changed":883},{"name":"tests/test_ls.py","lines_changed":12}]}},{"commit":"4c9761231af897658c3a2c0abcc476aa8b43d1b3","message":"add when_epoch and when_epoch_utc fields","stats":{"files_changed":21,"insertions":118,"deletions":81,"files":["CHANGELOG","EXAMPLES.md","README.md","docs/parsers/dig.md","jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":46},{"name":"README.md","lines_changed":14},{"name":"docs/parsers/dig.md","lines_changed":50},{"name":"jc/parsers/dig.py","lines_changed":56},{"name":"tests/fixtures/centos-7.7/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig-x.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig.json","lines_changed":2},{"name":"tests/fixtures/generic/dig-answer-spaces.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-x.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig.json","lines_changed":2}]}},{"commit":"656eaa150861948091ef9d6323805c2698039bc6","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"1560dcddcf82f55fffce22d1b46d372b25a9d0fd","message":"add acpi, upower parsers and -v version option","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]}},{"commit":"08d4cd4870c7acaf3a453d1400b64d77d462437b","message":"add time calculations to acpi parser","stats":{"files_changed":7,"insertions":114,"deletions":43,"files":["EXAMPLES.md","docs/parsers/acpi.md","jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.json","tests/fixtures/generic/acpi-V2.json","tests/fixtures/generic/acpi-V3.json","tests/fixtures/generic/acpi-V4.json"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":34},{"name":"docs/parsers/acpi.md","lines_changed":50},{"name":"jc/parsers/acpi.py","lines_changed":65},{"name":"tests/fixtures/generic/acpi-V.json","lines_changed":2},{"name":"tests/fixtures/generic/acpi-V2.json","lines_changed":2},{"name":"tests/fixtures/generic/acpi-V3.json","lines_changed":2},{"name":"tests/fixtures/generic/acpi-V4.json","lines_changed":2}]}},{"commit":"9767a50cededb140575e195abf79ce49c4f53789","message":"update who parser to add epoch naive timestamp","stats":{"files_changed":12,"insertions":48,"deletions":46,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/who.md","jc/parsers/who.py","jc/utils.py","tests/fixtures/centos-7.7/who-a.json","tests/fixtures/centos-7.7/who.json","tests/fixtures/osx-10.14.6/who-a.json","tests/fixtures/osx-10.14.6/who.json","tests/fixtures/ubuntu-18.04/who-a.json","tests/fixtures/ubuntu-18.04/who.json","tests/test_utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":37},{"name":"docs/parsers/who.md","lines_changed":18},{"name":"jc/parsers/who.py","lines_changed":23},{"name":"jc/utils.py","lines_changed":1},{"name":"tests/fixtures/centos-7.7/who-a.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/who.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/who-a.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/who.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/who-a.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/who.json","lines_changed":2},{"name":"tests/test_utils.py","lines_changed":2}]}},{"commit":"cd86890ed1493644e391e52e33561e9a77631a51","message":"add website to info and use variables for version info","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]}},{"commit":"ba0dd3b9ca98a042c772898302fcfe5fdc84f79a","message":"add parse_timedate_to_timestamp test for format 7300","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":4}]}},{"commit":"8d7fa07ffd50f38336a448eb506a76d9d4849a6a","message":"unformat json","stats":{"files_changed":1,"insertions":1,"deletions":11,"files":["tests/fixtures/centos-7.7/timedatectl.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/timedatectl.json","lines_changed":12}]}},{"commit":"cade1bfe6e56b5926898b7204e911885efebd5a7","message":"update timedatectl tests for new epoch_utc field","stats":{"files_changed":2,"insertions":12,"deletions":2,"files":["tests/fixtures/centos-7.7/timedatectl.json","tests/fixtures/ubuntu-18.04/timedatectl.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/timedatectl.json","lines_changed":12},{"name":"tests/fixtures/ubuntu-18.04/timedatectl.json","lines_changed":2}]}},{"commit":"daec4ab0a7f572e872b27b043d51f68e5e06300f","message":"add epoch_utc field to timedatectl parser","stats":{"files_changed":5,"insertions":20,"deletions":4,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/timedatectl.md","jc/parsers/timedatectl.py","jc/utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"EXAMPLES.md","lines_changed":3},{"name":"docs/parsers/timedatectl.md","lines_changed":6},{"name":"jc/parsers/timedatectl.py","lines_changed":11},{"name":"jc/utils.py","lines_changed":1}]}},{"commit":"3c96bc319615c824a06c388e9e3c1d68a9bf4084","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":2}]}},{"commit":"7f7d8d4bd6f37015b11bac60a7bd99e8d3eca108","message":"update stat docs","stats":{"files_changed":2,"insertions":8,"deletions":0,"files":["docs/parsers/stat.md","jc/parsers/stat.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":4}]}},{"commit":"47263661a41987f334fd484e866e0aa8859cde5d","message":"update stat example","stats":{"files_changed":1,"insertions":18,"deletions":2,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":20}]}},{"commit":"4c42a086d206919dfe4f1c0801fe4fb1027cb1cd","message":"clean up debug code","stats":{"files_changed":1,"insertions":1,"deletions":6,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":7}]}},{"commit":"5d2541a5c4bc93f3943a491c76df7f8d4e2cf44b","message":"remove auto c locale and use a manual format rule for windows and linux compatibility","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":5}]}},{"commit":"d91d170b49bfc88c0b2fb54475705c038172f1c8","message":"try manual c locale format for windows","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]}},{"commit":"6d1f4584a9ccd0f0f7ed4fdf408576a9e7f5046b","message":"try manually setting time format for windows compatibility","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":4}]}},{"commit":"1d76d96bcf4185cffb7066bec637913099399db5","message":"debug windows issue","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":4}]}},{"commit":"e8847c998c91131acf5ee0f6485e9976c0fce3ae","message":"update stat tests","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["tests/fixtures/centos-7.7/stat.json","tests/fixtures/freebsd12/stat.json","tests/fixtures/osx-10.14.6/stat.json","tests/fixtures/ubuntu-18.04/stat.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/stat.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/stat.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/stat.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/stat.json","lines_changed":2}]}},{"commit":"da88e49bae2f3fecff623f52c20bf994b653583e","message":"add new examples","stats":{"files_changed":2,"insertions":69,"deletions":29,"files":["docs/parsers/stat.md","jc/parsers/stat.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":76},{"name":"jc/parsers/stat.py","lines_changed":22}]}},{"commit":"65c3a12e5422782df40489c3c431677f5657dbf5","message":"simplify None data scenario","stats":{"files_changed":2,"insertions":35,"deletions":24,"files":["jc/parsers/stat.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":58},{"name":"jc/utils.py","lines_changed":1}]}},{"commit":"d8d600cc36bde4e6216b935f87a765599e896714","message":"add reference to -h for help","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"507999b117b024fed1ccf067bd5dc411dbeb268c","message":"add stat command timestamp detection","stats":{"files_changed":3,"insertions":34,"deletions":19,"files":["docs/utils.md","jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":32},{"name":"jc/utils.py","lines_changed":13},{"name":"tests/test_utils.py","lines_changed":8}]}},{"commit":"8ad164eb340e135eeeb10b721172916182f37e30","message":"fix tests for compact output","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":6}]}},{"commit":"a507df140b245b83b1c46e8462b44e1145c42f2a","message":"add compact json info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]}},{"commit":"8912a99986a977ee6ca7bbe2368f5033644577b0","message":"make default json output more compact","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]}},{"commit":"1953f9882890cd0e8c515d43ce28c96f918b0ab4","message":"add version info. add json now supports unicode output","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]}},{"commit":"7515218ddd2cdcfcebd67850140e842f2f121226","message":"use jc.utils for all warning and error messages. simply error and warning formatting.","stats":{"files_changed":2,"insertions":10,"deletions":14,"files":["jc/cli.py","jc/utils.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8},{"name":"jc/utils.py","lines_changed":16}]}},{"commit":"36c11201366cefedee4244fb71a4a9cc6507e6ae","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]}},{"commit":"8fa0fe64d8418093c7f28cdc70a7f409956aeb04","message":"add -v to helptext. minor formatting","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":10}]}},{"commit":"c1a8201b140c65579ff9f8427322b67653bf3006","message":"add copyright","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":4}]}},{"commit":"398bbac48c8a716b1872843d671aa6ceaeba6a78","message":"simplify return value for parse_datetime_to_timestamp()","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]}},{"commit":"ea71a42bbdd9b09a457727cfe763054625f7901a","message":"formatting","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"1c16d25b17a7282a62a5ebd9755df5569c57435f","message":"add version option (-v) and copyright information. add 'ensure_ascii=False' to json dumps to properly show UTF-8 copyright character","stats":{"files_changed":2,"insertions":30,"deletions":9,"files":["README.md","jc/cli.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"jc/cli.py","lines_changed":35}]}},{"commit":"9d12ded889f656656267cbf7a91d71267201f736","message":"help description change","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"5312701515ecb3a10598bb9dcf2f73b7eae71b93","message":"add - make all external python requirements optional","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]}},{"commit":"808c7bc0a94ecfd160ee2b257e5feec347829a5e","message":"make xmltodict library optional","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/xml.py"],"file_stats":[{"name":"jc/parsers/xml.py","lines_changed":10}]}},{"commit":"4d394015f458f284d052ce2c1a0c8492916c5b3e","message":"make ruamel.yaml library optional","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":10}]}},{"commit":"3638298af8ebc01d54aa3ab5668d0adedca957e5","message":"make pygments library optional","stats":{"files_changed":1,"insertions":53,"deletions":44,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":97}]}},{"commit":"5f00973e400629bd68c0ab60ed9005410278f855","message":"remove parenthesis to normalize text for naive timezone detection","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":2}]}},{"commit":"0f6e2c14fcb69f664c29083ec5207326f842dfdc","message":"simplify timestamp failure logic","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":9}]}},{"commit":"51813da61994226ba40478825d47f80c23413349","message":"add offset timezones. fix timestamp logic on conversion failure","stats":{"files_changed":1,"insertions":9,"deletions":4,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":13}]}},{"commit":"e7751322ea195cac7f1921ba8e0364c442065d20","message":"formatting","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":10}]}},{"commit":"26ef29843784ade3d55410be13300dd6f4c06890","message":"change return to always include the entire object but all keys may be None if conversion fails","stats":{"files_changed":1,"insertions":10,"deletions":6,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":16}]}},{"commit":"badaf8ce73d7deb0ec2be244e27b4bf8cddbea19","message":"comment formatting","stats":{"files_changed":1,"insertions":14,"deletions":14,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":28}]}},{"commit":"b123a622039f3cc32643a3bfc0766154d660f8bc","message":"move locale change formats to the end of the list","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":9}]}},{"commit":"cfd77e42522aa2ebeada9f45ac99bd1d3414f782","message":"reset locale to None on exception","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":1}]}},{"commit":"38f814072eac5370059f1b4203316eee41cf535b","message":"better normalization of datetime string. better UTC detection. More formats supported with detected locale.","stats":{"files_changed":1,"insertions":26,"deletions":8,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":34}]}},{"commit":"a0db7754e384a0c95f2099bf894f3a22bd33c002","message":"add nixos install info","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"f07620afc7dc0d0d605eb483ef36c5979b33cdfd","message":"move version to jc.__init__.py add -h option for help instead of always showing on error use jc.utils.error_message for the following errors: missing/incorrect arguments, parser not found, missing piped data","stats":{"files_changed":3,"insertions":18,"deletions":7,"files":["README.md","jc/__init__.py","jc/cli.py"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"jc/__init__.py","lines_changed":3},{"name":"jc/cli.py","lines_changed":21}]}},{"commit":"c1b0d27752726989c6051f683a1194941bee598c","message":"remove old commented commands","stats":{"files_changed":1,"insertions":0,"deletions":10,"files":["runtests.sh"],"file_stats":[{"name":"runtests.sh","lines_changed":10}]}},{"commit":"430a5108aa265d4df0e4584eade54759da864c61","message":"move all tests to github actions","stats":{"files_changed":3,"insertions":19,"deletions":60,"files":["runtests.sh","tests/test_last.py","tests/test_last2.py"],"file_stats":[{"name":"runtests.sh","lines_changed":16},{"name":"tests/test_last.py","lines_changed":23},{"name":"tests/test_last2.py","lines_changed":40}]}},{"commit":"111ce92fc9c33b82c7d1a1664dda046ea5993f6a","message":"attempt all tests in github actions with timezone correction","stats":{"files_changed":4,"insertions":0,"deletions":1,"files":["tests/{localtest_date.py => test_date.py}","tests/{localtest_last.py => test_last2.py}","tests/{localtest_upower.py => test_upower.py}","tests/test_utils.py"],"file_stats":[{"name":"tests/{localtest_date.py => test_date.py}","lines_changed":0},{"name":"tests/{localtest_last.py => test_last2.py}","lines_changed":0},{"name":"tests/{localtest_upower.py => test_upower.py}","lines_changed":0},{"name":"tests/test_utils.py","lines_changed":1}]}},{"commit":"c851e8a58d98b2a4907cf1e7cf7c7d8d8dc04dc6","message":"force github action","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":1}]}},{"commit":"39f4bcd9b41450068903ea2843508586eccdf709","message":"Change Windows timezone","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]}},{"commit":"4a610c4c81493788b8351e8c74aabe819c981c02","message":"force github action","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":1}]}},{"commit":"89ee11945d4e2db107a33ef0d61e0c6015ac8ad7","message":"Change timezone provider","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]}},{"commit":"dadb09b74a69d1852f8433e0e32ccdd67bd91181","message":"force github action","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":1}]}},{"commit":"1b1f638b97dc5e6f2767183eb363b79ae3c9b3c7","message":"Change timezone change provider","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":8}]}},{"commit":"794fc4ed44d1565514303090403d68ba5d639cb3","message":"add parse_datetime_to_timestamp() tests","stats":{"files_changed":2,"insertions":36,"deletions":8,"files":["jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":16},{"name":"tests/test_utils.py","lines_changed":28}]}},{"commit":"72f735bf9211d7beddcf58819fe465722f5d7c5a","message":"Set Timezone to America/Los_Angeles","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":4}]}},{"commit":"912877f25ad562ed4cafe7b2d7446bd48b477ea2","message":"additional timezone info","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"2772c5ae436ea437d833003372d53a3d3f955ea0","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]}},{"commit":"a7ad24d2cb61d84cf2846f8fa43af31f0597043e","message":"Add dir parser","stats":{"files_changed":13,"insertions":772,"deletions":0,"files":["docgen.sh","docs/parsers/dir.md","jc/cli.py","jc/parsers/dir.py","tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-C.out","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-ODTC.out","tests/fixtures/windows-10/dir-Q.json","tests/fixtures/windows-10/dir-Q.out","tests/fixtures/windows-10/dir.json","tests/fixtures/windows-10/dir.out","tests/test_dir.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/dir.md","lines_changed":286},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/dir.py","lines_changed":332},{"name":"tests/fixtures/windows-10/dir-C.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-C.out","lines_changed":21},{"name":"tests/fixtures/windows-10/dir-ODTC.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-ODTC.out","lines_changed":21},{"name":"tests/fixtures/windows-10/dir-Q.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-Q.out","lines_changed":21},{"name":"tests/fixtures/windows-10/dir.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir.out","lines_changed":21},{"name":"tests/test_dir.py","lines_changed":64}]}},{"commit":"a364a6a9faeb6aa290b790f3dec74e92b8670534","message":"add note regarding calculated timestamps","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]}},{"commit":"7b2dc86a8d974e7984fe2540f56a66c2b9386acd","message":"update last example with new timestamp fields","stats":{"files_changed":1,"insertions":23,"deletions":19,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":42}]}},{"commit":"ad645636d07d0423253f19068a22b2a28251b05f","message":"update uptime docs","stats":{"files_changed":5,"insertions":86,"deletions":50,"files":["CHANGELOG","EXAMPLES.md","README.md","docs/parsers/uptime.md","jc/parsers/uptime.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":9},{"name":"EXAMPLES.md","lines_changed":19},{"name":"README.md","lines_changed":19},{"name":"docs/parsers/uptime.md","lines_changed":50},{"name":"jc/parsers/uptime.py","lines_changed":39}]}},{"commit":"2f2f297b29fbe3172647a81db084b3564a441d40","message":"update uptime fixtures with new fields","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["tests/fixtures/centos-7.7/uptime.json","tests/fixtures/osx-10.11.6/uptime.json","tests/fixtures/osx-10.14.6/uptime.json","tests/fixtures/ubuntu-18.04/uptime.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/uptime.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/uptime.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/uptime.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/uptime.json","lines_changed":2}]}},{"commit":"099ae3fde03f8157298f6b412bdddb8bd56da09a","message":"fix issue when there is no data","stats":{"files_changed":1,"insertions":26,"deletions":22,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":48}]}},{"commit":"e9febe98ac5ec0e03791c5b6794446a2c3312fb1","message":"add localtest partition lines for readability","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["runtests.sh"],"file_stats":[{"name":"runtests.sh","lines_changed":2}]}},{"commit":"5fbd07cccf9fb697b996dcc3949eef5b1c09e655","message":"rewrite of uptime parser including new fields","stats":{"files_changed":1,"insertions":59,"deletions":26,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":85}]}},{"commit":"5fed4698c2c1f1b7e05c5b4c51639f818e049b53","message":"update docs and version number","stats":{"files_changed":2,"insertions":5,"deletions":6,"files":["docs/parsers/last.md","jc/parsers/last.py"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":4},{"name":"jc/parsers/last.py","lines_changed":7}]}},{"commit":"ed7eb0983a4dfcc1d66a2957be3e10b2203d909e","message":"use parse_datetime_to_timestamp function instead of custom format string","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":8}]}},{"commit":"90c7e18e5fc5ea9fcf6157cc2656f47193d78411","message":"update date example","stats":{"files_changed":1,"insertions":16,"deletions":11,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":27}]}},{"commit":"953ab5c3bd0c8b6eef29b717edaf1aa2380c2b93","message":"make upower tests local only","stats":{"files_changed":2,"insertions":1,"deletions":0,"files":["runtests.sh","tests/{test_upower.py => localtest_upower.py}"],"file_stats":[{"name":"runtests.sh","lines_changed":1},{"name":"tests/{test_upower.py => localtest_upower.py}","lines_changed":0}]}},{"commit":"699c97d8a07f7575454746159ac4d19981cd1a5c","message":"add last parser info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]}},{"commit":"e4ca0de92a689ce93b91d86106a5da590226855a","message":"add upower tests","stats":{"files_changed":8,"insertions":100,"deletions":0,"files":["tests/fixtures/generic/upower-i-c-locale.json","tests/fixtures/generic/upower-i-non-utc.json","tests/fixtures/generic/upower-i-utc.json",".../{upower-i-utc.out2 => upower-i-utc.out}","tests/fixtures/ubuntu-18.04/upower-d-clocale.json","tests/fixtures/ubuntu-18.04/upower-d.json","tests/fixtures/ubuntu-18.04/upower-i.json","tests/test_upower.py"],"file_stats":[{"name":"tests/fixtures/generic/upower-i-c-locale.json","lines_changed":1},{"name":"tests/fixtures/generic/upower-i-non-utc.json","lines_changed":1},{"name":"tests/fixtures/generic/upower-i-utc.json","lines_changed":1},{"name":".../{upower-i-utc.out2 => upower-i-utc.out}","lines_changed":0},{"name":"tests/fixtures/ubuntu-18.04/upower-d-clocale.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/upower-d.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/upower-i.json","lines_changed":1},{"name":"tests/test_upower.py","lines_changed":94}]}},{"commit":"04745a36b84cc79e56bde2a0e92a4ee9ab4a1538","message":"doc update","stats":{"files_changed":2,"insertions":8,"deletions":5,"files":["CHANGELOG","jc/utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":12},{"name":"jc/utils.py","lines_changed":1}]}},{"commit":"5936940532b8b753e67c9f5cd9287f34cc84ae9f","message":"rewrite of date parser using datetime library","stats":{"files_changed":7,"insertions":136,"deletions":186,"files":["docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date-after-midnight.json","tests/fixtures/generic/date-before-midnight.json","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/fixtures/ubuntu-20.04/date2.json"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":74},{"name":"jc/parsers/date.py","lines_changed":238},{"name":"tests/fixtures/generic/date-after-midnight.json","lines_changed":2},{"name":"tests/fixtures/generic/date-before-midnight.json","lines_changed":2},{"name":"tests/fixtures/generic/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date2.json","lines_changed":2}]}},{"commit":"b3eb064b6753d6e894884e1c16054630c2396fe1","message":"clarify format definition comments","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":4}]}},{"commit":"e4b41057e302074ac2a81ad8c36b6f95cd6b7db2","message":"update upower fixture names","stats":{"files_changed":3,"insertions":24,"deletions":0,"files":[".../{upower-i.out => upower-i-c-locale.out}","tests/fixtures/generic/upower-i-non-utc.out",".../generic/{upower-i2.out => upower-i-utc.out2}"],"file_stats":[{"name":".../{upower-i.out => upower-i-c-locale.out}","lines_changed":0},{"name":"tests/fixtures/generic/upower-i-non-utc.out","lines_changed":24},{"name":".../generic/{upower-i2.out => upower-i-utc.out2}","lines_changed":0}]}},{"commit":"1d41c46cc762ab0c78b819e56db7df39f1111d5d","message":"normalize datetime string to remove all timezones except UTC","stats":{"files_changed":1,"insertions":34,"deletions":5,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":39}]}},{"commit":"a5c444587b3f0874fcc2833dc4e759c2dc1c7834","message":"add before and after midnight date tests","stats":{"files_changed":5,"insertions":28,"deletions":0,"files":["tests/fixtures/generic/date-after-midnight.json","tests/fixtures/generic/date-after-midnight.out","tests/fixtures/generic/date-before-midnight.json","tests/fixtures/generic/date-before-midnight.out","tests/localtest_date.py"],"file_stats":[{"name":"tests/fixtures/generic/date-after-midnight.json","lines_changed":1},{"name":"tests/fixtures/generic/date-after-midnight.out","lines_changed":1},{"name":"tests/fixtures/generic/date-before-midnight.json","lines_changed":1},{"name":"tests/fixtures/generic/date-before-midnight.out","lines_changed":1},{"name":"tests/localtest_date.py","lines_changed":24}]}},{"commit":"a56f471be980be16e73d3a91e2b12aad26c6d38c","message":"update fixture to use UTC for better testing","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/fixtures/generic/upower-i2.out"],"file_stats":[{"name":"tests/fixtures/generic/upower-i2.out","lines_changed":2}]}},{"commit":"6a6b26ed8d97014c2a5c7d91a4cd9b23f49530fb","message":"fix 12 to 24 hour conversion for midnight cases","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":5}]}},{"commit":"f62446c152d89f2d37b22ffe9d9de5b5c9fa7049","message":"rename variables. add another european time format","stats":{"files_changed":1,"insertions":11,"deletions":10,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":21}]}},{"commit":"56011f1f172344cab2a8e869e7a6df6e45c45874","message":"updated upower examples","stats":{"files_changed":3,"insertions":73,"deletions":6,"files":["EXAMPLES.md","docs/parsers/upower.md","jc/parsers/upower.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":63},{"name":"docs/parsers/upower.md","lines_changed":8},{"name":"jc/parsers/upower.py","lines_changed":8}]}},{"commit":"6d44091c80318fde6c09cd850e6dc5afde7fe799","message":"refactor parse_datetime_to_timestamp()","stats":{"files_changed":1,"insertions":13,"deletions":53,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":66}]}},{"commit":"440c458eb42925dffe2d7b026279468fa2fa1bb7","message":"no need for ternary clause","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]}},{"commit":"798250af6116441385339806c8f26bc9720ad302","message":"use jc.utils.parse_datetime_to_timestamp() function for timestamp creation","stats":{"files_changed":2,"insertions":18,"deletions":24,"files":["docs/parsers/upower.md","jc/parsers/upower.py"],"file_stats":[{"name":"docs/parsers/upower.md","lines_changed":7},{"name":"jc/parsers/upower.py","lines_changed":35}]}},{"commit":"c762de29c6491790908451aa20f6aa12fdfa9722","message":"doc updates","stats":{"files_changed":2,"insertions":32,"deletions":2,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":30},{"name":"jc/utils.py","lines_changed":4}]}},{"commit":"0701e65e97165efd40ab2ae5087897de3588ea32","message":"add parse_datetime_to_timestamp() function","stats":{"files_changed":1,"insertions":106,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":106}]}},{"commit":"209d54e8b5be6476d896cee1a5274bd2b46219e2","message":"add hour_24 to schema docs","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":5},{"name":"jc/parsers/date.py","lines_changed":5}]}},{"commit":"2b38462de7d2fa61dd5d2a184e853279f1a9c84b","message":"update examples","stats":{"files_changed":3,"insertions":33,"deletions":27,"files":["EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":20},{"name":"docs/parsers/date.md","lines_changed":20},{"name":"jc/parsers/date.py","lines_changed":20}]}},{"commit":"1e8e5533162cb01053ee25e9dbc709a429e58070","message":"add hour_24 field","stats":{"files_changed":6,"insertions":31,"deletions":14,"files":["CHANGELOG","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/fixtures/ubuntu-20.04/date2.json","tests/localtest_date.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/date.py","lines_changed":21},{"name":"tests/fixtures/generic/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date2.json","lines_changed":1},{"name":"tests/localtest_date.py","lines_changed":16}]}},{"commit":"ab42e6bb15026d6c46e15197c62bc3e8ef95c80d","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":1},{"name":"jc/parsers/date.py","lines_changed":1}]}},{"commit":"680288454090f3c48c7f0580cdcb919c0b5a883e","message":"ensure period is always uppercase in dict value. update period documentation","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":4}]}},{"commit":"7cb8577b9655f258f2910e7e7bcf3266d4cbece0","message":"correct epoch_utc calculation. Fix for 12 hour vs. 24 hour representation","stats":{"files_changed":3,"insertions":70,"deletions":48,"files":["docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/ubuntu-20.04/date2.out"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":36},{"name":"jc/parsers/date.py","lines_changed":81},{"name":"tests/fixtures/ubuntu-20.04/date2.out","lines_changed":1}]}},{"commit":"55810ccd1f17ef6a4b1cb72fc21f6cf990ef8bb3","message":"set epoch_dt conversion again if not C locale","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":1}]}},{"commit":"f9921720cd0b9b0d76d66e6eb5bfe43481f5f52b","message":"revert to local testing for naive datetime objects","stats":{"files_changed":3,"insertions":4,"deletions":94,"files":["runtests.sh","tests/test_date.py","tests/test_last2.py"],"file_stats":[{"name":"runtests.sh","lines_changed":8},{"name":"tests/test_date.py","lines_changed":48},{"name":"tests/test_last2.py","lines_changed":42}]}},{"commit":"cda1ebd271aa8fd1b716054a2149f876d8087230","message":"try tzset()","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["tests/test_date.py","tests/test_last2.py"],"file_stats":[{"name":"tests/test_date.py","lines_changed":2},{"name":"tests/test_last2.py","lines_changed":2}]}},{"commit":"6901e4a23aad0b58cbbfac86c61917115d115dfe","message":"try setting timezone env variable before tests to ensure it is the same on all test systems","stats":{"files_changed":3,"insertions":89,"deletions":3,"files":["runtests.sh","tests/test_date.py","tests/test_last2.py"],"file_stats":[{"name":"runtests.sh","lines_changed":6},{"name":"tests/test_date.py","lines_changed":46},{"name":"tests/test_last2.py","lines_changed":40}]}},{"commit":"6bc21d3c735edc7897e49afd2a5ea9e3aa56d7fb","message":"fix date parser tests - local tests only since timezones may not match on github actions VMs","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["runtests.sh","tests/{test_date.py => localtest_date.py}","tests/localtest_last.py"],"file_stats":[{"name":"runtests.sh","lines_changed":1},{"name":"tests/{test_date.py => localtest_date.py}","lines_changed":0},{"name":"tests/localtest_last.py","lines_changed":1}]}},{"commit":"1ef231e26a2898d2a01f341fb92014df92703f72","message":"add date parser updates","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]}},{"commit":"3cd43f0f985a3b8a4e74bf5632bd8dac92d751c4","message":"formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/upower.md","jc/parsers/upower.py"],"file_stats":[{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":2}]}},{"commit":"156501996688e62dd61a8456206218582a6cbe1b","message":"fix weekday numbering to be ISO 8601 compliant. Add naive calculated epoch timestamp field","stats":{"files_changed":5,"insertions":85,"deletions":63,"files":["EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":21},{"name":"docs/parsers/date.md","lines_changed":41},{"name":"jc/parsers/date.py","lines_changed":82},{"name":"tests/fixtures/generic/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date.json","lines_changed":2}]}},{"commit":"0a4de2d3a1c235d1ac2d6e59346e77761fe51885","message":"add naive datetime calculation info to docs","stats":{"files_changed":2,"insertions":5,"deletions":2,"files":["docs/parsers/last.md","docs/parsers/upower.md"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":5}]}},{"commit":"a058f6c174e31f5e6040883bb544b83abd88c749","message":"added naive epoch calculation info to docs","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":2}]}},{"commit":"d8e5d03b01a87704424f5259cf6bd977274fd6ee","message":"naive updated_epoch timestamp calculation added","stats":{"files_changed":1,"insertions":20,"deletions":33,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":53}]}},{"commit":"9dc62eff2eaaafec89c5b8797d8ca8e4c77a07d4","message":"remove epoch conversions","stats":{"files_changed":1,"insertions":34,"deletions":21,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":55}]}},{"commit":"d4fea17c57a97d6914624b06208b9439bf2eb05f","message":"use UTC when calculating epoch timestamp. reset time locale to default after changing","stats":{"files_changed":3,"insertions":13,"deletions":6,"files":["docgen.sh","docs/parsers/upower.md","jc/parsers/upower.py"],"file_stats":[{"name":"docgen.sh","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":15}]}},{"commit":"3dd7a5b77ea708047bc12be9f2caddd9078723f1","message":"add upower docs","stats":{"files_changed":2,"insertions":230,"deletions":0,"files":["docgen.sh","docs/parsers/upower.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/upower.md","lines_changed":229}]}},{"commit":"d77c90a3ba2036b216f4a612876ace988eafd217","message":"fix quoted values in detail level. Add examples","stats":{"files_changed":1,"insertions":114,"deletions":6,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":120}]}},{"commit":"01f0c20df09fd4aa12bd108928b97376b51ef31a","message":"add sample using C locale timestamp","stats":{"files_changed":1,"insertions":27,"deletions":0,"files":["tests/fixtures/ubuntu-18.04/upower-d-clocale.out"],"file_stats":[{"name":"tests/fixtures/ubuntu-18.04/upower-d-clocale.out","lines_changed":27}]}},{"commit":"aafbe576b3b754de91591d9ec2dae9e9f827dee4","message":"working parser and processor","stats":{"files_changed":1,"insertions":137,"deletions":36,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":173}]}},{"commit":"bd68ad40345fb1f69be0e0f87dc67134f826cd06","message":"don't modify detail_type value since it is no longer a key","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":4}]}},{"commit":"bfee017c138bb30ec6af836685013b7124028974","message":"made the schema more explicit by hardcoding more items. still working on the schema","stats":{"files_changed":1,"insertions":61,"deletions":20,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":81}]}},{"commit":"61f532cfd0b7fbf14a58a0fd638bcbfb03fbde72","message":"working history list","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":12}]}},{"commit":"58dbbb75b607d0b29be185c3b8c3f0d8af21ecad","message":"simplified logic","stats":{"files_changed":1,"insertions":9,"deletions":21,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":30}]}},{"commit":"8d88b91fcf5060d7d54f687efec3e3a606bab767","message":"move if statements and generalize the history detail detection","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":17}]}},{"commit":"ad39fc60299089f56f37baac71820e50cbe87ed3","message":"working upower parser. history lines are ignored","stats":{"files_changed":6,"insertions":268,"deletions":0,"files":["jc/cli.py","jc/parsers/upower.py","tests/fixtures/generic/upower-i.out","tests/fixtures/generic/upower-i2.out","tests/fixtures/ubuntu-18.04/upower-d.out","tests/fixtures/ubuntu-18.04/upower-i.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/upower.py","lines_changed":173},{"name":"tests/fixtures/generic/upower-i.out","lines_changed":32},{"name":"tests/fixtures/generic/upower-i2.out","lines_changed":24},{"name":"tests/fixtures/ubuntu-18.04/upower-d.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-18.04/upower-i.out","lines_changed":11}]}},{"commit":"89f1fd96e6b7aa0acf6272e4f3469005d4f7c6bf","message":"add acpi tests","stats":{"files_changed":6,"insertions":87,"deletions":0,"files":["tests/fixtures/generic/acpi-V.json","tests/fixtures/generic/acpi-V2.json","tests/fixtures/generic/acpi-V3.json","tests/fixtures/generic/acpi-V4.json","tests/fixtures/ubuntu-18.04/acpi-V.json","tests/test_acpi.py"],"file_stats":[{"name":"tests/fixtures/generic/acpi-V.json","lines_changed":1},{"name":"tests/fixtures/generic/acpi-V2.json","lines_changed":1},{"name":"tests/fixtures/generic/acpi-V3.json","lines_changed":1},{"name":"tests/fixtures/generic/acpi-V4.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/acpi-V.json","lines_changed":1},{"name":"tests/test_acpi.py","lines_changed":82}]}},{"commit":"bd425f2493b68949c1fa02cd1d3289ec882d9b0d","message":"version bump to v1.15.0. Add acpi docs","stats":{"files_changed":6,"insertions":321,"deletions":2,"files":["CHANGELOG","EXAMPLES.md","docgen.sh","docs/parsers/acpi.md","jc/cli.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":4},{"name":"EXAMPLES.md","lines_changed":58},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/acpi.md","lines_changed":256},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"46962ff02a0630766a927babc92e11ec91b1f789","message":"remove redundant lines","stats":{"files_changed":1,"insertions":1,"deletions":11,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":12}]}},{"commit":"e4cb88b05166815e8ad03b646bd3f2b1da7f0d4b","message":"remove unneeded line-state assignment","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":1}]}},{"commit":"32840703dc1d88412712b08db1c9bdaebbc34450","message":"remove redundant code","stats":{"files_changed":1,"insertions":8,"deletions":39,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":47}]}},{"commit":"1f7aafd0415a79e0547cc6f1c008c1918f8fb460","message":"fix for full charge batter case. Clean up battery object logic","stats":{"files_changed":3,"insertions":19,"deletions":9,"files":["jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out","tests/fixtures/generic/acpi-V4.out"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":15},{"name":"tests/fixtures/generic/acpi-V.out","lines_changed":1},{"name":"tests/fixtures/generic/acpi-V4.out","lines_changed":12}]}},{"commit":"7378d5dce43f75440cb57903e8ae0c1c615b0782","message":"remove comment","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":1}]}},{"commit":"84f76866cdf76f67b34de999fd987de8a02f0306","message":"working process function","stats":{"files_changed":1,"insertions":197,"deletions":3,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":200}]}},{"commit":"322da9ea6a1ceea1152d720797adb8f3a7dc1199","message":"working parser","stats":{"files_changed":2,"insertions":59,"deletions":12,"files":["jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":67},{"name":"tests/fixtures/generic/acpi-V.out","lines_changed":4}]}},{"commit":"58645301ec111bfeb2a618f5f169cc734042dc5f","message":"add acpi command parser","stats":{"files_changed":6,"insertions":236,"deletions":1,"files":["jc/cli.py","jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out","tests/fixtures/generic/acpi-V2.out","tests/fixtures/generic/acpi-V3.out","tests/fixtures/ubuntu-18.04/acpi-V.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/acpi.py","lines_changed":191},{"name":"tests/fixtures/generic/acpi-V.out","lines_changed":16},{"name":"tests/fixtures/generic/acpi-V2.out","lines_changed":12},{"name":"tests/fixtures/generic/acpi-V3.out","lines_changed":13},{"name":"tests/fixtures/ubuntu-18.04/acpi-V.out","lines_changed":2}]}},{"commit":"1e18dd30a824b0463f0cad86e0da7094c47d34f9","message":"Merge pull request #102 from kellyjonbrazil/dev"},{"commit":"cc6a19adccea3e10243a166b87d852b6f95414b5","message":"fix typo in comments","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":2}]}},{"commit":"2a5588b177a24d5b78a4b5a515aba515804b7baa","message":"packaging fix for yaml parser and pyoxidizer","stats":{"files_changed":4,"insertions":13,"deletions":3,"files":["CHANGELOG","jc/cli.py","jc/parsers/yaml.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":5},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":7},{"name":"setup.py","lines_changed":2}]}},{"commit":"20f9b7f88b97ed68aba46e102b8c7b72443b9c85","message":"fix typo","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]}},{"commit":"d7e32313cd9776b4a6af38cc2819d6e4ef8c0d55","message":"fix typo","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]}},{"commit":"fb5654d3c4549e84940e2518f2d214debdd42d51","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"258f1433b36a7ee117ac43953edb4fe964603e7b","message":"add locale info to readme","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"fb723ae8bd7bb51f9a4bab380ec1bc54cda0445b","message":"Merge pull request #101 from kellyjonbrazil/dev"},{"commit":"283b89e37c38a3082203e43e38569c8b0bb11e12","message":"simplify answer data logic","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["CHANGELOG","jc/parsers/dig.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/dig.py","lines_changed":6}]}},{"commit":"f450f9eb8b7d382af316e88301e72af01a018be9","message":"add hciconfig tests","stats":{"files_changed":5,"insertions":74,"deletions":0,"files":["tests/fixtures/centos-7.7/hciconfig-a.json","tests/fixtures/centos-7.7/hciconfig.json","tests/fixtures/ubuntu-20.04/hciconfig-a.json","tests/fixtures/ubuntu-20.04/hciconfig.json","tests/test_hciconfig.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/hciconfig-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/hciconfig.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.04/hciconfig-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.04/hciconfig.json","lines_changed":1},{"name":"tests/test_hciconfig.py","lines_changed":70}]}},{"commit":"b3f8cf99a4874335c6b43e105e0c1562c08256dc","message":"work for both tabs and spaces","stats":{"files_changed":1,"insertions":15,"deletions":15,"files":["jc/parsers/hciconfig.py"],"file_stats":[{"name":"jc/parsers/hciconfig.py","lines_changed":30}]}},{"commit":"4301ea8caea7c14f59bcddf09668d0198e1115a8","message":"remove debug line","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/hciconfig.py"],"file_stats":[{"name":"jc/parsers/hciconfig.py","lines_changed":1}]}},{"commit":"c672d1c174a42ce44544dfaec0ebcf3c30fd7acf","message":"initial working hciconfig parser","stats":{"files_changed":7,"insertions":903,"deletions":22,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","docs/parsers/hciconfig.md","jc/parsers/hciconfig.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"EXAMPLES.md","lines_changed":126},{"name":"README.md","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/hciconfig.md","lines_changed":358},{"name":"jc/parsers/hciconfig.py","lines_changed":414},{"name":"man/jc.1","lines_changed":22}]}},{"commit":"229e953a38471cdd41af0810577d324329840a4b","message":"initial add of hciconfig parser","stats":{"files_changed":7,"insertions":205,"deletions":2,"files":["jc/cli.py","jc/parsers/hciconfig.py","setup.py","tests/fixtures/centos-7.7/hciconfig-a.out","tests/fixtures/centos-7.7/hciconfig.out","tests/fixtures/ubuntu-20.04/hciconfig-a.out","tests/fixtures/ubuntu-20.04/hciconfig.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/hciconfig.py","lines_changed":142},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/hciconfig-a.out","lines_changed":10},{"name":"tests/fixtures/centos-7.7/hciconfig.out","lines_changed":6},{"name":"tests/fixtures/ubuntu-20.04/hciconfig-a.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-20.04/hciconfig.out","lines_changed":17}]}},{"commit":"87b506dc9b4831d11b4fd04fd6849532db074f90","message":"fix for spaces in dig answer data","stats":{"files_changed":7,"insertions":47,"deletions":4,"files":["CHANGELOG","jc/cli.py","jc/parsers/dig.py","setup.py","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/generic/dig-answer-spaces.out","tests/test_dig.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":8},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/generic/dig-answer-spaces.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-answer-spaces.out","lines_changed":23},{"name":"tests/test_dig.py","lines_changed":12}]}},{"commit":"15c9002d9eff0f52d873fb3ab35dfafd03a8e919","message":"simplify logic by taking out 'not' in JC_COLORS parsing","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]}},{"commit":"042aaa61b96fc8472a8a460c49bde4cbbc359094","message":"minor updates","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]}},{"commit":"ef856c6ba5774cd8ec23acd71496846e794e3872","message":"clarify -q option","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"9cf5be73e3f975132d1ffbef412638b941a5664f","message":"typo fix","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]}},{"commit":"63fc149e2a097cbde60c2ce1aeb102d9becabd9b","message":"typo fix","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]}},{"commit":"3c25839350800c7e7d2c48fc032bb21efa0ac213","message":"Merge pull request #98 from kellyjonbrazil/dev"},{"commit":"58246e33b71bae0ca4a42ad5bdf31134948b1014","message":"update compatibility info and changelog date","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","README.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"README.md","lines_changed":3}]}},{"commit":"8b1407c7068e2105a83992bbb026138ea67bc07c","message":"pull env-specific tests from CI/CD and run locally only","stats":{"files_changed":3,"insertions":59,"deletions":10,"files":["runtests.sh","tests/localtest_last.py","tests/test_last.py"],"file_stats":[{"name":"runtests.sh","lines_changed":6},{"name":"tests/localtest_last.py","lines_changed":41},{"name":"tests/test_last.py","lines_changed":22}]}},{"commit":"2fde4a4e2299b98a9958e3a55849c6791e4b17dc","message":"doc updates","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["EXAMPLES.md","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]}},{"commit":"60b9e9798286121399d0f8b75d63ab0f3312c9bf","message":"last parser enhancements: augment hostname with CONSOLE for GUI login, add convenience fields when -F is used: login_epoch, logout_epoch, duration_seconds, calculate duration to hours:minutes","stats":{"files_changed":12,"insertions":80,"deletions":38,"files":["docs/parsers/last.md","jc/parsers/last.py","tests/fixtures/centos-7.7/last-crash.json","tests/fixtures/centos-7.7/last-w.json","tests/fixtures/centos-7.7/last-wF.json","tests/fixtures/centos-7.7/last-wF.out","tests/fixtures/centos-7.7/last.json","tests/fixtures/fedora32/last.json","tests/fixtures/osx-10.14.6/last.json","tests/fixtures/ubuntu-18.04/last-w.json","tests/fixtures/ubuntu-18.04/last.json","tests/fixtures/ubuntu-20.04/last-F.json"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":37},{"name":"jc/parsers/last.py","lines_changed":57},{"name":"tests/fixtures/centos-7.7/last-crash.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/last-w.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/last-wF.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/last-wF.out","lines_changed":6},{"name":"tests/fixtures/centos-7.7/last.json","lines_changed":2},{"name":"tests/fixtures/fedora32/last.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/last.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/last-w.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/last.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/last-F.json","lines_changed":2}]}},{"commit":"0adac79c0f2a22b31dfef1432a029af06132467b","message":"Add last parser enhancements","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]}},{"commit":"9f485b5981a2ce49ac699b9dad39993c5605ae18","message":"change mac_address fieldname to bssid. Add credit to Phillip","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["jc/parsers/iw_scan.py","tests/fixtures/centos-7.7/iw-scan0.json","tests/fixtures/centos-7.7/iw-scan1.json"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":6},{"name":"tests/fixtures/centos-7.7/iw-scan0.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iw-scan1.json","lines_changed":2}]}},{"commit":"db17d21b8f9b2f899760e648f1483d33d0bcf47a","message":"Merge pull request #97 from pschmitt/iw_scan_fix_space_detection"},{"commit":"996d394e89c732f327323ca340fce405bd5fb2e4","message":"iw_scan: Improve detection of lines starting with spaces","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":3}]}},{"commit":"5885b960f9b33a95ecec9f4a33233c2f8682fbc4","message":"doc updates","stats":{"files_changed":3,"insertions":7,"deletions":2,"files":["CHANGELOG","README.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":2},{"name":"man/jc.1","lines_changed":4}]}},{"commit":"79987b35f332e287567e103f25cf91cb50e040c0","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2}]}},{"commit":"661b3ef311ad26678030c70c11f2f955667311a4","message":"doc updates","stats":{"files_changed":4,"insertions":94,"deletions":2,"files":["EXAMPLES.md","README.md","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":91},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]}},{"commit":"fb422726a8366c7133f0712d3b05a26620eea785","message":"update test to add 'down' condition","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["tests/fixtures/ubuntu-20.04/last-F.json","tests/fixtures/ubuntu-20.04/last-F.out"],"file_stats":[{"name":"tests/fixtures/ubuntu-20.04/last-F.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/last-F.out","lines_changed":1}]}},{"commit":"4fb6f3ea59c52515926a51a006e65a1c18e57720","message":"add support for down in addition to crash","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":4}]}},{"commit":"f78fe771e1c2fb4691858fa7f27b1febe5f8c6c0","message":"add iw-scan tests","stats":{"files_changed":3,"insertions":48,"deletions":0,"files":["tests/fixtures/centos-7.7/iw-scan0.json","tests/fixtures/centos-7.7/iw-scan1.json","tests/test_iw_scan.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/iw-scan0.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iw-scan1.json","lines_changed":1},{"name":"tests/test_iw_scan.py","lines_changed":46}]}},{"commit":"567b8872538ac9f6b384b98741acd9794229d513","message":"doc updates","stats":{"files_changed":3,"insertions":252,"deletions":12,"files":["docgen.sh","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/iw_scan.md","lines_changed":160},{"name":"jc/parsers/iw_scan.py","lines_changed":103}]}},{"commit":"e516e6b9466b29d40ec10070dd61551180eeef90","message":"fix country/environment fields and process int/float conversions","stats":{"files_changed":1,"insertions":29,"deletions":1,"files":["jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":30}]}},{"commit":"62748676aae3d5955191ed267215df33a5bd3a4d","message":"initial iw-scan parser","stats":{"files_changed":2,"insertions":225,"deletions":0,"files":["jc/cli.py","jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/iw_scan.py","lines_changed":224}]}},{"commit":"7351c72e45242b9eb08c51dea7b6fccf12366dfd","message":"add fixes and tests for entries that contain 'crash'","stats":{"files_changed":6,"insertions":402,"deletions":1,"files":["jc/parsers/last.py","tests/fixtures/centos-7.7/last-crash.json","tests/fixtures/centos-7.7/last-crash.out","tests/fixtures/centos-7.7/last-wF.json","tests/fixtures/centos-7.7/last-wF.out","tests/test_last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":10},{"name":"tests/fixtures/centos-7.7/last-crash.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/last-crash.out","lines_changed":184},{"name":"tests/fixtures/centos-7.7/last-wF.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/last-wF.out","lines_changed":184},{"name":"tests/test_last.py","lines_changed":23}]}},{"commit":"2b7405c5e21db2488fc48b58f6c65cff947ca95d","message":"doc updates","stats":{"files_changed":5,"insertions":23,"deletions":16,"files":["CHANGELOG","README.md","docs/parsers/last.md","jc/parsers/last.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":6},{"name":"jc/parsers/last.py","lines_changed":6},{"name":"man/jc.1","lines_changed":22}]}},{"commit":"e2c77cb935a5bd95dbe930d424e5a02e88e1fa76","message":"add test for last -F output","stats":{"files_changed":3,"insertions":15,"deletions":1,"files":["jc/parsers/last.py","tests/fixtures/ubuntu-20.04/last-F.json","tests/test_last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":3},{"name":"tests/fixtures/ubuntu-20.04/last-F.json","lines_changed":1},{"name":"tests/test_last.py","lines_changed":12}]}},{"commit":"7ac621e4c916373a03f379425033cb2d81a03578","message":"add -F support","stats":{"files_changed":3,"insertions":36,"deletions":6,"files":["docs/parsers/last.md","jc/parsers/last.py","tests/fixtures/ubuntu-20.04/last-F.out"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":6},{"name":"jc/parsers/last.py","lines_changed":30},{"name":"tests/fixtures/ubuntu-20.04/last-F.out","lines_changed":6}]}},{"commit":"d8b5d6c66ced19dc16f2b4975d2293a903732ffe","message":"version bump to 1.14.1","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/cli.py","setup.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"22b461eb4b1ca86ea9e8c1fde8a2c312d1526b5f","message":"Add period field for en_US.UTF-8 locale","stats":{"files_changed":7,"insertions":47,"deletions":12,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/test_date.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":1},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":40},{"name":"tests/fixtures/generic/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date.json","lines_changed":1},{"name":"tests/test_date.py","lines_changed":12}]}},{"commit":"b37ee8555a2a108625a834a7990bc3320e79b08d","message":"changelog update","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":6}]}},{"commit":"1d0ad2f045733c5c690738d49951fdb9bcd3d66d","message":"doc fixes","stats":{"files_changed":123,"insertions":312,"deletions":312,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat_freebsd_osx.py","jc/parsers/netstat_linux.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":6},{"name":"docs/parsers/arp.md","lines_changed":6},{"name":"docs/parsers/blkid.md","lines_changed":6},{"name":"docs/parsers/cksum.md","lines_changed":6},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":6},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":6},{"name":"docs/parsers/dig.md","lines_changed":6},{"name":"docs/parsers/dmidecode.md","lines_changed":6},{"name":"docs/parsers/du.md","lines_changed":6},{"name":"docs/parsers/env.md","lines_changed":6},{"name":"docs/parsers/file.md","lines_changed":6},{"name":"docs/parsers/free.md","lines_changed":6},{"name":"docs/parsers/fstab.md","lines_changed":6},{"name":"docs/parsers/group.md","lines_changed":6},{"name":"docs/parsers/gshadow.md","lines_changed":6},{"name":"docs/parsers/hash.md","lines_changed":6},{"name":"docs/parsers/hashsum.md","lines_changed":6},{"name":"docs/parsers/history.md","lines_changed":6},{"name":"docs/parsers/hosts.md","lines_changed":6},{"name":"docs/parsers/id.md","lines_changed":4},{"name":"docs/parsers/ifconfig.md","lines_changed":6},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":6},{"name":"docs/parsers/jobs.md","lines_changed":6},{"name":"docs/parsers/last.md","lines_changed":6},{"name":"docs/parsers/ls.md","lines_changed":6},{"name":"docs/parsers/lsblk.md","lines_changed":6},{"name":"docs/parsers/lsmod.md","lines_changed":6},{"name":"docs/parsers/lsof.md","lines_changed":6},{"name":"docs/parsers/mount.md","lines_changed":6},{"name":"docs/parsers/netstat.md","lines_changed":6},{"name":"docs/parsers/ntpq.md","lines_changed":6},{"name":"docs/parsers/passwd.md","lines_changed":6},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":6},{"name":"docs/parsers/pip_show.md","lines_changed":6},{"name":"docs/parsers/ps.md","lines_changed":6},{"name":"docs/parsers/route.md","lines_changed":6},{"name":"docs/parsers/shadow.md","lines_changed":6},{"name":"docs/parsers/ss.md","lines_changed":6},{"name":"docs/parsers/stat.md","lines_changed":6},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":6},{"name":"docs/parsers/systemctl_lj.md","lines_changed":6},{"name":"docs/parsers/systemctl_ls.md","lines_changed":6},{"name":"docs/parsers/systemctl_luf.md","lines_changed":6},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":6},{"name":"docs/parsers/wc.md","lines_changed":6},{"name":"docs/parsers/who.md","lines_changed":6},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":6},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":6},{"name":"jc/parsers/arp.py","lines_changed":6},{"name":"jc/parsers/blkid.py","lines_changed":6},{"name":"jc/parsers/cksum.py","lines_changed":6},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"jc/parsers/csv.py","lines_changed":6},{"name":"jc/parsers/date.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":6},{"name":"jc/parsers/dig.py","lines_changed":6},{"name":"jc/parsers/dmidecode.py","lines_changed":6},{"name":"jc/parsers/du.py","lines_changed":6},{"name":"jc/parsers/env.py","lines_changed":6},{"name":"jc/parsers/file.py","lines_changed":6},{"name":"jc/parsers/foo.py","lines_changed":6},{"name":"jc/parsers/free.py","lines_changed":6},{"name":"jc/parsers/fstab.py","lines_changed":6},{"name":"jc/parsers/group.py","lines_changed":6},{"name":"jc/parsers/gshadow.py","lines_changed":6},{"name":"jc/parsers/hash.py","lines_changed":6},{"name":"jc/parsers/hashsum.py","lines_changed":6},{"name":"jc/parsers/history.py","lines_changed":6},{"name":"jc/parsers/hosts.py","lines_changed":6},{"name":"jc/parsers/id.py","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":6},{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":6},{"name":"jc/parsers/jobs.py","lines_changed":6},{"name":"jc/parsers/last.py","lines_changed":6},{"name":"jc/parsers/ls.py","lines_changed":6},{"name":"jc/parsers/lsblk.py","lines_changed":6},{"name":"jc/parsers/lsmod.py","lines_changed":6},{"name":"jc/parsers/lsof.py","lines_changed":6},{"name":"jc/parsers/mount.py","lines_changed":6},{"name":"jc/parsers/netstat.py","lines_changed":6},{"name":"jc/parsers/netstat_freebsd_osx.py","lines_changed":2},{"name":"jc/parsers/netstat_linux.py","lines_changed":2},{"name":"jc/parsers/ntpq.py","lines_changed":6},{"name":"jc/parsers/passwd.py","lines_changed":6},{"name":"jc/parsers/ping.py","lines_changed":4},{"name":"jc/parsers/pip_list.py","lines_changed":6},{"name":"jc/parsers/pip_show.py","lines_changed":6},{"name":"jc/parsers/ps.py","lines_changed":6},{"name":"jc/parsers/route.py","lines_changed":6},{"name":"jc/parsers/shadow.py","lines_changed":6},{"name":"jc/parsers/ss.py","lines_changed":6},{"name":"jc/parsers/stat.py","lines_changed":6},{"name":"jc/parsers/sysctl.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":6},{"name":"jc/parsers/systemctl_lj.py","lines_changed":6},{"name":"jc/parsers/systemctl_ls.py","lines_changed":6},{"name":"jc/parsers/systemctl_luf.py","lines_changed":6},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":6},{"name":"jc/parsers/wc.py","lines_changed":6},{"name":"jc/parsers/who.py","lines_changed":6},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":6}]}},{"commit":"ceccfb2c815f57f1b6fd81f891d8b495de23f9f5","message":"add test output for iw-scan and date on ubuntu 20.04","stats":{"files_changed":3,"insertions":2036,"deletions":0,"files":["tests/fixtures/centos-7.7/iw-scan0.out","tests/fixtures/centos-7.7/iw-scan1.out","tests/fixtures/ubuntu-20.04/date.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/iw-scan0.out","lines_changed":36},{"name":"tests/fixtures/centos-7.7/iw-scan1.out","lines_changed":1999},{"name":"tests/fixtures/ubuntu-20.04/date.out","lines_changed":1}]}},{"commit":"03c02953cd7e3327b391f799c37a2990eb2cb24c","message":"add wc doc","stats":{"files_changed":2,"insertions":96,"deletions":0,"files":["docgen.sh","docs/parsers/wc.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/wc.md","lines_changed":95}]}},{"commit":"f254a0eaa16fcda316f7a75424ee359058204b03","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"9e3b88727cd439e15f235dddb9dd5796e010797a","message":"Merge pull request #91 from kellyjonbrazil/dev"},{"commit":"b12217466e906829d19be4cfd80dfe7cf4008e57","message":"spelling","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]}},{"commit":"8b9c932f9b05295e63b3e7d0073f243458fd4dd9","message":"update date","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]}},{"commit":"5986ce03db6fcd1aa0f7b064eaa96c2120c06d2d","message":"add printenv info","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"a7b0e936e400d2f9e55629e2d722cc002e035e9f","message":"add vdir and printenv info","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]}},{"commit":"cb0221142455a6bcb904fbe9ade657be45815b63","message":"add wc tests","stats":{"files_changed":4,"insertions":61,"deletions":2,"files":["jc/parsers/wc.py","tests/fixtures/osx-10.14.6/wc-stdin.json","tests/fixtures/osx-10.14.6/wc-stdin.out","tests/test_wc.py"],"file_stats":[{"name":"jc/parsers/wc.py","lines_changed":3},{"name":"tests/fixtures/osx-10.14.6/wc-stdin.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/wc-stdin.out","lines_changed":1},{"name":"tests/test_wc.py","lines_changed":58}]}},{"commit":"bd443bf39227515ae5f8df65d07b30268dcc90a9","message":"add printenv to env docs","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/env.py"],"file_stats":[{"name":"jc/parsers/env.py","lines_changed":4}]}},{"commit":"1f547edd361e66b19ccbcb59f6ba0ae78f6080ce","message":"add printenv to env docs","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/env.md"],"file_stats":[{"name":"docs/parsers/env.md","lines_changed":2}]}},{"commit":"e4bac3a493705b09e301ddc90dd1b0cee7467c3f","message":"add wc parser","stats":{"files_changed":9,"insertions":378,"deletions":0,"files":["CHANGELOG","EXAMPLES.md","README.md","jc/cli.py","jc/parsers/wc.py","tests/fixtures/centos-7.7/wc.json","tests/fixtures/centos-7.7/wc.out","tests/fixtures/osx-10.14.6/wc.json","tests/fixtures/osx-10.14.6/wc.out"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":26},{"name":"README.md","lines_changed":1},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/wc.py","lines_changed":130},{"name":"tests/fixtures/centos-7.7/wc.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/wc.out","lines_changed":67},{"name":"tests/fixtures/osx-10.14.6/wc.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/wc.out","lines_changed":150}]}},{"commit":"5e6bfa681aff03fbd683f81a9f4daa56b49d1344","message":"add vdir info","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["README.md","docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":6}]}},{"commit":"276160125e01553c75eaad68530177bcf4f9004d","message":"add new commands to README","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]}},{"commit":"d4ae5543f2d5f28a0db5b8e2e19993c21c5d960c","message":"add hash tests","stats":{"files_changed":3,"insertions":39,"deletions":0,"files":["tests/fixtures/centos-7.7/hash.json","tests/fixtures/centos-7.7/hash.out","tests/test_hash.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/hash.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/hash.out","lines_changed":4},{"name":"tests/test_hash.py","lines_changed":34}]}},{"commit":"55f360e267fdfcfef0c124ed6b88535cc181a8b0","message":"add hash command parser","stats":{"files_changed":6,"insertions":260,"deletions":0,"files":["CHANGELOG","EXAMPLES.md","docgen.sh","docs/parsers/hash.md","jc/cli.py","jc/parsers/hash.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":71},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/hash.md","lines_changed":78},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/hash.py","lines_changed":108}]}},{"commit":"fdedab2a0cf5af15df5803d87302397dd6d71741","message":"description updates","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/cksum.py","jc/parsers/hashsum.py"],"file_stats":[{"name":"jc/parsers/cksum.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":2}]}},{"commit":"a9be42e3031ab0d697cff67a9e384caa2265a3ad","message":"specify parser warnings for quiet option","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"6da9510e46e84ec1cb93384825184d2996cf0e08","message":"add cksum tests","stats":{"files_changed":9,"insertions":482,"deletions":0,"files":["tests/fixtures/centos-7.7/cksum.json","tests/fixtures/centos-7.7/cksum.out","tests/fixtures/centos-7.7/sum.json","tests/fixtures/centos-7.7/sum.out","tests/fixtures/osx-10.14.6/cksum.json","tests/fixtures/osx-10.14.6/cksum.out","tests/fixtures/osx-10.14.6/sum.json","tests/fixtures/osx-10.14.6/sum.out","tests/test_cksum.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/cksum.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/cksum.out","lines_changed":59},{"name":"tests/fixtures/centos-7.7/sum.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sum.out","lines_changed":58},{"name":"tests/fixtures/osx-10.14.6/cksum.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/cksum.out","lines_changed":145},{"name":"tests/fixtures/osx-10.14.6/sum.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/sum.out","lines_changed":146},{"name":"tests/test_cksum.py","lines_changed":70}]}},{"commit":"0431798178740b03cdefececc6df958e5adf62fc","message":"add cksum parser","stats":{"files_changed":7,"insertions":229,"deletions":3,"files":["CHANGELOG","docgen.sh","docs/parsers/cksum.md","docs/parsers/hashsum.md","jc/cli.py","jc/parsers/cksum.py","jc/parsers/hashsum.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/cksum.md","lines_changed":95},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/cksum.py","lines_changed":128},{"name":"jc/parsers/hashsum.py","lines_changed":2}]}},{"commit":"62432f3c484e74acb2b2dfd15d448b3f1b5d53c4","message":"update hashsum description","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/hashsum.py"],"file_stats":[{"name":"jc/parsers/hashsum.py","lines_changed":2}]}},{"commit":"9fbbc30906b597e6afaf2030015a7a694d85f79e","message":"add supported commands to docs","stats":{"files_changed":2,"insertions":20,"deletions":0,"files":["docs/parsers/hashsum.md","jc/parsers/hashsum.py"],"file_stats":[{"name":"docs/parsers/hashsum.md","lines_changed":10},{"name":"jc/parsers/hashsum.py","lines_changed":10}]}},{"commit":"d1567d1f622902053f3df58645b4e39532e0c30a","message":"add hashsum documentation","stats":{"files_changed":3,"insertions":104,"deletions":0,"files":["CHANGELOG","docgen.sh","docs/parsers/hashsum.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":4},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/hashsum.md","lines_changed":99}]}},{"commit":"6ca1f5970b3a518615a54ee7fcbc1bddab2db331","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"1c880b9e24ca53cd592cec1dbc52301308290fb4","message":"force git tests","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_hashsum.py"],"file_stats":[{"name":"tests/test_hashsum.py","lines_changed":2}]}},{"commit":"3b7d54c720dfc93637328cf06eb10a85447c8793","message":"add python 3.9","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]}},{"commit":"44a740605705bd0ecfde2a6bcc7a826e1010dcf0","message":"add hashsum tests","stats":{"files_changed":6,"insertions":87,"deletions":0,"files":["tests/fixtures/centos-7.7/md5sum.json","tests/fixtures/centos-7.7/sha256sum.json","tests/fixtures/centos-7.7/sha384sum.json","tests/fixtures/osx-10.14.6/md5.json","tests/fixtures/osx-10.14.6/shasum.json","tests/test_hashsum.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/md5sum.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sha256sum.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sha384sum.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/md5.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/shasum.json","lines_changed":1},{"name":"tests/test_hashsum.py","lines_changed":82}]}},{"commit":"8157dcfdb1868548b7c8ca692e6be25f80bb2c2c","message":"fix for files with spaces in the name","stats":{"files_changed":1,"insertions":36,"deletions":11,"files":["jc/parsers/hashsum.py"],"file_stats":[{"name":"jc/parsers/hashsum.py","lines_changed":47}]}},{"commit":"28762aea15cabc9cd8293d725e7f1f0550f8e15d","message":"add hashsum parser","stats":{"files_changed":7,"insertions":524,"deletions":0,"files":["jc/cli.py","jc/parsers/hashsum.py","tests/fixtures/centos-7.7/md5sum.out","tests/fixtures/centos-7.7/sha256sum.out","tests/fixtures/centos-7.7/sha384sum.out","tests/fixtures/osx-10.14.6/md5.out","tests/fixtures/osx-10.14.6/shasum.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/hashsum.py","lines_changed":110},{"name":"tests/fixtures/centos-7.7/md5sum.out","lines_changed":56},{"name":"tests/fixtures/centos-7.7/sha256sum.out","lines_changed":55},{"name":"tests/fixtures/centos-7.7/sha384sum.out","lines_changed":56},{"name":"tests/fixtures/osx-10.14.6/md5.out","lines_changed":104},{"name":"tests/fixtures/osx-10.14.6/shasum.out","lines_changed":142}]}},{"commit":"439871ea9f6b055a407e1faaf47e4f56d1829501","message":"add ubuntu","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"c9180b005c0547c8cbfe4809e66894f1123b0809","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"b14e0725f86853f0113116b1c06f54aaa563f365","message":"add ansible plugin blog post link","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"70fe3dcb4d5b97aba1d6c6dcd5088fecb27af181","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"8c554604a42a3ea7ca9131b65c64fd3ceb95f906","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]}},{"commit":"a0a35454bd2831c116cb598c686150b883412f94","message":"add link to the web demo","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]}},{"commit":"e8467e2af5b0c3f14832a9e6d4a96f219c27f3f2","message":"remove extra space","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"7515deb5669ef04623e9cbf58653b30c99a96430","message":"add ansible install command","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]}},{"commit":"ed9e52af241b609ee7f5d1b835c9f6c5306cd3c5","message":"spelling","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"592a3804104628c790997747a778b3b39d076dfe","message":"add Ansible note","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"1a458d2d5b4c16c0ad90671727ae9b19939e7f23","message":"update link","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2}]}},{"commit":"0e4cf53b92ff951a6390a4dacf8833c272473583","message":"add parser docs link","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2}]}},{"commit":"e2f06ccb33177173d984bc0cdda1aae1a3f4c681","message":"formatting","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2}]}},{"commit":"8abff004cd8e09529e5d94be4883308152e11565","message":"indentation fix","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/yaml.md"],"file_stats":[{"name":"docs/parsers/yaml.md","lines_changed":2}]}},{"commit":"c4a0e2e3feb2e51eaaaa202064f352229017bcc3","message":"fix indentation","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":2}]}},{"commit":"4f10f79c73f8b3d6edc2c83e6a12d0ddc1a78555","message":"standardize doc","stats":{"files_changed":2,"insertions":4,"deletions":8,"files":["docs/parsers/uname.md","jc/parsers/uname.py"],"file_stats":[{"name":"docs/parsers/uname.md","lines_changed":6},{"name":"jc/parsers/uname.py","lines_changed":6}]}},{"commit":"69e7a560fd82337570c4bb4aa4780f513c18bd94","message":"add output info to docs","stats":{"files_changed":4,"insertions":8,"deletions":0,"files":["docs/parsers/env.md","docs/parsers/history.md","jc/parsers/env.py","jc/parsers/history.py"],"file_stats":[{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2}]}},{"commit":"59b105580805d78516abe1c1069d52a6f0a8131a","message":"enhance docs","stats":{"files_changed":97,"insertions":564,"deletions":269,"files":["docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":12},{"name":"docs/parsers/blkid.md","lines_changed":8},{"name":"docs/parsers/crontab.md","lines_changed":10},{"name":"docs/parsers/crontab_u.md","lines_changed":6},{"name":"docs/parsers/csv.md","lines_changed":9},{"name":"docs/parsers/date.md","lines_changed":8},{"name":"docs/parsers/df.md","lines_changed":8},{"name":"docs/parsers/dig.md","lines_changed":8},{"name":"docs/parsers/dmidecode.md","lines_changed":8},{"name":"docs/parsers/du.md","lines_changed":8},{"name":"docs/parsers/env.md","lines_changed":8},{"name":"docs/parsers/file.md","lines_changed":8},{"name":"docs/parsers/free.md","lines_changed":8},{"name":"docs/parsers/fstab.md","lines_changed":4},{"name":"docs/parsers/group.md","lines_changed":4},{"name":"docs/parsers/gshadow.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":4},{"name":"docs/parsers/hosts.md","lines_changed":4},{"name":"docs/parsers/id.md","lines_changed":8},{"name":"docs/parsers/ifconfig.md","lines_changed":10},{"name":"docs/parsers/ini.md","lines_changed":10},{"name":"docs/parsers/iptables.md","lines_changed":10},{"name":"docs/parsers/jobs.md","lines_changed":10},{"name":"docs/parsers/kv.md","lines_changed":11},{"name":"docs/parsers/last.md","lines_changed":8},{"name":"docs/parsers/ls.md","lines_changed":21},{"name":"docs/parsers/lsblk.md","lines_changed":8},{"name":"docs/parsers/lsmod.md","lines_changed":8},{"name":"docs/parsers/lsof.md","lines_changed":8},{"name":"docs/parsers/mount.md","lines_changed":8},{"name":"docs/parsers/netstat.md","lines_changed":17},{"name":"docs/parsers/ntpq.md","lines_changed":8},{"name":"docs/parsers/passwd.md","lines_changed":4},{"name":"docs/parsers/ping.md","lines_changed":12},{"name":"docs/parsers/pip_list.md","lines_changed":8},{"name":"docs/parsers/pip_show.md","lines_changed":8},{"name":"docs/parsers/ps.md","lines_changed":14},{"name":"docs/parsers/route.md","lines_changed":8},{"name":"docs/parsers/shadow.md","lines_changed":4},{"name":"docs/parsers/ss.md","lines_changed":8},{"name":"docs/parsers/stat.md","lines_changed":8},{"name":"docs/parsers/sysctl.md","lines_changed":16},{"name":"docs/parsers/systemctl.md","lines_changed":8},{"name":"docs/parsers/systemctl_lj.md","lines_changed":8},{"name":"docs/parsers/systemctl_ls.md","lines_changed":8},{"name":"docs/parsers/systemctl_luf.md","lines_changed":8},{"name":"docs/parsers/timedatectl.md","lines_changed":8},{"name":"docs/parsers/tracepath.md","lines_changed":10},{"name":"docs/parsers/traceroute.md","lines_changed":16},{"name":"docs/parsers/uname.md","lines_changed":8},{"name":"docs/parsers/uptime.md","lines_changed":8},{"name":"docs/parsers/w.md","lines_changed":8},{"name":"docs/parsers/who.md","lines_changed":10},{"name":"docs/parsers/xml.md","lines_changed":4},{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"jc/parsers/group.py","lines_changed":4},{"name":"jc/parsers/gshadow.py","lines_changed":4},{"name":"jc/parsers/history.py","lines_changed":4},{"name":"jc/parsers/hosts.py","lines_changed":4},{"name":"jc/parsers/id.py","lines_changed":8},{"name":"jc/parsers/ifconfig.py","lines_changed":10},{"name":"jc/parsers/ini.py","lines_changed":10},{"name":"jc/parsers/iptables.py","lines_changed":10},{"name":"jc/parsers/jobs.py","lines_changed":10},{"name":"jc/parsers/kv.py","lines_changed":11},{"name":"jc/parsers/last.py","lines_changed":8},{"name":"jc/parsers/ls.py","lines_changed":21},{"name":"jc/parsers/lsblk.py","lines_changed":8},{"name":"jc/parsers/lsmod.py","lines_changed":8},{"name":"jc/parsers/lsof.py","lines_changed":8},{"name":"jc/parsers/mount.py","lines_changed":8},{"name":"jc/parsers/netstat.py","lines_changed":17},{"name":"jc/parsers/ntpq.py","lines_changed":8},{"name":"jc/parsers/passwd.py","lines_changed":4},{"name":"jc/parsers/ping.py","lines_changed":12},{"name":"jc/parsers/pip_list.py","lines_changed":8},{"name":"jc/parsers/pip_show.py","lines_changed":8},{"name":"jc/parsers/ps.py","lines_changed":14},{"name":"jc/parsers/route.py","lines_changed":8},{"name":"jc/parsers/shadow.py","lines_changed":4},{"name":"jc/parsers/ss.py","lines_changed":8},{"name":"jc/parsers/stat.py","lines_changed":8},{"name":"jc/parsers/sysctl.py","lines_changed":16},{"name":"jc/parsers/systemctl.py","lines_changed":8},{"name":"jc/parsers/systemctl_lj.py","lines_changed":8},{"name":"jc/parsers/systemctl_ls.py","lines_changed":8},{"name":"jc/parsers/systemctl_luf.py","lines_changed":8},{"name":"jc/parsers/timedatectl.py","lines_changed":8},{"name":"jc/parsers/tracepath.py","lines_changed":10},{"name":"jc/parsers/traceroute.py","lines_changed":16},{"name":"jc/parsers/uname.py","lines_changed":8},{"name":"jc/parsers/uptime.py","lines_changed":8},{"name":"jc/parsers/w.py","lines_changed":8},{"name":"jc/parsers/who.py","lines_changed":10},{"name":"jc/parsers/xml.py","lines_changed":4},{"name":"jc/parsers/yaml.py","lines_changed":4}]}},{"commit":"6ed48c6289214fe5114971c80772efdf9ac1b8c5","message":"enhance docs","stats":{"files_changed":16,"insertions":88,"deletions":37,"files":["jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py"],"file_stats":[{"name":"jc/parsers/airport_s.py","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":12},{"name":"jc/parsers/blkid.py","lines_changed":8},{"name":"jc/parsers/crontab.py","lines_changed":10},{"name":"jc/parsers/crontab_u.py","lines_changed":6},{"name":"jc/parsers/csv.py","lines_changed":9},{"name":"jc/parsers/date.py","lines_changed":8},{"name":"jc/parsers/df.py","lines_changed":8},{"name":"jc/parsers/dig.py","lines_changed":8},{"name":"jc/parsers/dmidecode.py","lines_changed":8},{"name":"jc/parsers/du.py","lines_changed":8},{"name":"jc/parsers/env.py","lines_changed":8},{"name":"jc/parsers/file.py","lines_changed":8},{"name":"jc/parsers/foo.py","lines_changed":10},{"name":"jc/parsers/free.py","lines_changed":8},{"name":"jc/parsers/fstab.py","lines_changed":4}]}},{"commit":"f2fb4d3f415fbc1c09eec6dedcf70fba78406b3f","message":"improve docs","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","jc/parsers/airport.py","jc/parsers/airport_s.py"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":2}]}},{"commit":"6aeea59ea84e56434e87ddf89cd5d4435b99e140","message":"doc updates","stats":{"files_changed":2,"insertions":14,"deletions":8,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":11},{"name":"docs/parsers/airport_s.md","lines_changed":11}]}},{"commit":"d016f3bbb307f85bd0f93a508323941a8bb9d872","message":"improve documentation","stats":{"files_changed":2,"insertions":14,"deletions":8,"files":["jc/parsers/airport.py","jc/parsers/airport_s.py"],"file_stats":[{"name":"jc/parsers/airport.py","lines_changed":11},{"name":"jc/parsers/airport_s.py","lines_changed":11}]}},{"commit":"7131c297180bfa195d0209d46fc70ab8e67efe2e","message":"add module usage info to docs","stats":{"files_changed":114,"insertions":686,"deletions":116,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":7},{"name":"docs/parsers/airport_s.md","lines_changed":7},{"name":"docs/parsers/arp.md","lines_changed":7},{"name":"docs/parsers/crontab.md","lines_changed":7},{"name":"docs/parsers/crontab_u.md","lines_changed":7},{"name":"docs/parsers/csv.md","lines_changed":7},{"name":"docs/parsers/date.md","lines_changed":7},{"name":"docs/parsers/df.md","lines_changed":7},{"name":"docs/parsers/dig.md","lines_changed":7},{"name":"docs/parsers/dmidecode.md","lines_changed":7},{"name":"docs/parsers/du.md","lines_changed":7},{"name":"docs/parsers/env.md","lines_changed":7},{"name":"docs/parsers/file.md","lines_changed":7},{"name":"docs/parsers/free.md","lines_changed":7},{"name":"docs/parsers/fstab.md","lines_changed":7},{"name":"docs/parsers/group.md","lines_changed":7},{"name":"docs/parsers/gshadow.md","lines_changed":7},{"name":"docs/parsers/history.md","lines_changed":7},{"name":"docs/parsers/hosts.md","lines_changed":7},{"name":"docs/parsers/id.md","lines_changed":7},{"name":"docs/parsers/ifconfig.md","lines_changed":7},{"name":"docs/parsers/ini.md","lines_changed":7},{"name":"docs/parsers/iptables.md","lines_changed":7},{"name":"docs/parsers/jobs.md","lines_changed":7},{"name":"docs/parsers/kv.md","lines_changed":7},{"name":"docs/parsers/last.md","lines_changed":7},{"name":"docs/parsers/ls.md","lines_changed":7},{"name":"docs/parsers/lsblk.md","lines_changed":7},{"name":"docs/parsers/lsmod.md","lines_changed":7},{"name":"docs/parsers/lsof.md","lines_changed":7},{"name":"docs/parsers/mount.md","lines_changed":7},{"name":"docs/parsers/netstat.md","lines_changed":7},{"name":"docs/parsers/ntpq.md","lines_changed":7},{"name":"docs/parsers/passwd.md","lines_changed":7},{"name":"docs/parsers/ping.md","lines_changed":7},{"name":"docs/parsers/pip_list.md","lines_changed":7},{"name":"docs/parsers/pip_show.md","lines_changed":7},{"name":"docs/parsers/ps.md","lines_changed":7},{"name":"docs/parsers/route.md","lines_changed":7},{"name":"docs/parsers/shadow.md","lines_changed":7},{"name":"docs/parsers/ss.md","lines_changed":7},{"name":"docs/parsers/stat.md","lines_changed":7},{"name":"docs/parsers/sysctl.md","lines_changed":7},{"name":"docs/parsers/systemctl.md","lines_changed":7},{"name":"docs/parsers/systemctl_lj.md","lines_changed":7},{"name":"docs/parsers/systemctl_ls.md","lines_changed":7},{"name":"docs/parsers/systemctl_luf.md","lines_changed":7},{"name":"docs/parsers/timedatectl.md","lines_changed":7},{"name":"docs/parsers/tracepath.md","lines_changed":7},{"name":"docs/parsers/traceroute.md","lines_changed":7},{"name":"docs/parsers/uname.md","lines_changed":9},{"name":"docs/parsers/uptime.md","lines_changed":7},{"name":"docs/parsers/w.md","lines_changed":7},{"name":"docs/parsers/who.md","lines_changed":7},{"name":"docs/parsers/xml.md","lines_changed":7},{"name":"docs/parsers/yaml.md","lines_changed":7},{"name":"jc/parsers/airport.py","lines_changed":7},{"name":"jc/parsers/airport_s.py","lines_changed":7},{"name":"jc/parsers/arp.py","lines_changed":7},{"name":"jc/parsers/blkid.py","lines_changed":7},{"name":"jc/parsers/crontab.py","lines_changed":7},{"name":"jc/parsers/crontab_u.py","lines_changed":7},{"name":"jc/parsers/csv.py","lines_changed":7},{"name":"jc/parsers/date.py","lines_changed":7},{"name":"jc/parsers/df.py","lines_changed":7},{"name":"jc/parsers/dig.py","lines_changed":7},{"name":"jc/parsers/dmidecode.py","lines_changed":7},{"name":"jc/parsers/du.py","lines_changed":7},{"name":"jc/parsers/env.py","lines_changed":7},{"name":"jc/parsers/file.py","lines_changed":7},{"name":"jc/parsers/foo.py","lines_changed":7},{"name":"jc/parsers/free.py","lines_changed":7},{"name":"jc/parsers/fstab.py","lines_changed":7},{"name":"jc/parsers/group.py","lines_changed":7},{"name":"jc/parsers/gshadow.py","lines_changed":7},{"name":"jc/parsers/history.py","lines_changed":7},{"name":"jc/parsers/hosts.py","lines_changed":7},{"name":"jc/parsers/id.py","lines_changed":7},{"name":"jc/parsers/ifconfig.py","lines_changed":7},{"name":"jc/parsers/ini.py","lines_changed":7},{"name":"jc/parsers/iptables.py","lines_changed":7},{"name":"jc/parsers/jobs.py","lines_changed":7},{"name":"jc/parsers/kv.py","lines_changed":7},{"name":"jc/parsers/last.py","lines_changed":7},{"name":"jc/parsers/ls.py","lines_changed":7},{"name":"jc/parsers/lsblk.py","lines_changed":7},{"name":"jc/parsers/lsmod.py","lines_changed":7},{"name":"jc/parsers/lsof.py","lines_changed":7},{"name":"jc/parsers/mount.py","lines_changed":7},{"name":"jc/parsers/netstat.py","lines_changed":7},{"name":"jc/parsers/ntpq.py","lines_changed":7},{"name":"jc/parsers/passwd.py","lines_changed":7},{"name":"jc/parsers/ping.py","lines_changed":7},{"name":"jc/parsers/pip_list.py","lines_changed":7},{"name":"jc/parsers/pip_show.py","lines_changed":7},{"name":"jc/parsers/ps.py","lines_changed":7},{"name":"jc/parsers/route.py","lines_changed":7},{"name":"jc/parsers/shadow.py","lines_changed":7},{"name":"jc/parsers/ss.py","lines_changed":7},{"name":"jc/parsers/stat.py","lines_changed":7},{"name":"jc/parsers/sysctl.py","lines_changed":7},{"name":"jc/parsers/systemctl.py","lines_changed":7},{"name":"jc/parsers/systemctl_lj.py","lines_changed":7},{"name":"jc/parsers/systemctl_ls.py","lines_changed":7},{"name":"jc/parsers/systemctl_luf.py","lines_changed":7},{"name":"jc/parsers/timedatectl.py","lines_changed":7},{"name":"jc/parsers/tracepath.py","lines_changed":7},{"name":"jc/parsers/traceroute.py","lines_changed":7},{"name":"jc/parsers/uname.py","lines_changed":9},{"name":"jc/parsers/uptime.py","lines_changed":7},{"name":"jc/parsers/w.py","lines_changed":7},{"name":"jc/parsers/who.py","lines_changed":7},{"name":"jc/parsers/xml.py","lines_changed":7},{"name":"jc/parsers/yaml.py","lines_changed":7}]}},{"commit":"7432442983841b42c8d3d2459b55596c05d1e100","message":"add usage","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["docs/parsers/blkid.md"],"file_stats":[{"name":"docs/parsers/blkid.md","lines_changed":7}]}},{"commit":"5344883394a0662ee16bb5edd68df8e4410025f6","message":"spelling/add ping parser update","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]}},{"commit":"3fcd2f6c2e015b0e65e7261c8e591ccd8a7d0e6c","message":"version bump","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/cli.py","setup.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"f3d84bd5bf06349b681e9b72d904676e9f6bca19","message":"tighten crontab and crontab-u parser variable detection","stats":{"files_changed":6,"insertions":21,"deletions":3,"files":["CHANGELOG","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/fixtures/debian10/crontab-u.json","tests/fixtures/debian10/crontab-u.out","tests/test_crontab_u.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":4},{"name":"tests/fixtures/debian10/crontab-u.json","lines_changed":1},{"name":"tests/fixtures/debian10/crontab-u.out","lines_changed":2},{"name":"tests/test_crontab_u.py","lines_changed":12}]}},{"commit":"549780c23220bca3bcab58d7329ba8d44d1be55d","message":"add debian/apt-get info","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]}},{"commit":"2a6da69b82aa9ade6c01d490a32b57b415c62a9e","message":"improve linux/bsd check","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":4}]}},{"commit":"5c538816cf76686bac1a86a7c06e24664d25a2dc","message":"ping parser fix for raspberry pi","stats":{"files_changed":9,"insertions":55,"deletions":4,"files":["CHANGELOG","jc/cli.py","jc/parsers/ping.py","setup.py","tests/fixtures/pi/ping-ip-O-D.json","tests/fixtures/pi/ping-ip-O-D.out","tests/fixtures/pi/ping-ip-O.json","tests/fixtures/pi/ping-ip-O.out","tests/test_ping.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/ping.py","lines_changed":4},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/pi/ping-ip-O-D.json","lines_changed":1},{"name":"tests/fixtures/pi/ping-ip-O-D.out","lines_changed":10},{"name":"tests/fixtures/pi/ping-ip-O.json","lines_changed":1},{"name":"tests/fixtures/pi/ping-ip-O.out","lines_changed":10},{"name":"tests/test_ping.py","lines_changed":26}]}},{"commit":"7b8b378a7df397c488fc54fbd6e77f5f3f23c10c","message":"add pydoc-markdown version requirement","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":1}]}},{"commit":"e30a75e25c4b43969bf9f874f89e18512a5e3a34","message":"Merge pull request #76 from kellyjonbrazil/dev"},{"commit":"85ad5cfd0bfb903ce35e37b343244fed88dbd979","message":"date change","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]}},{"commit":"88b9d5068c5bac0691fedb543114300d6afc7131","message":"finish date parser","stats":{"files_changed":6,"insertions":74,"deletions":15,"files":["EXAMPLES.md","README.md","docs/parsers/date.md","tests/fixtures/generic/date.json","tests/fixtures/generic/date.out","tests/test_date.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":18},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/date.md","lines_changed":34},{"name":"tests/fixtures/generic/date.json","lines_changed":1},{"name":"tests/fixtures/generic/date.out","lines_changed":1},{"name":"tests/test_date.py","lines_changed":34}]}},{"commit":"f8c4948a090642db595eda2ba2ea0773e560ba67","message":"remove comment","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":1}]}},{"commit":"412322447f019aec0b64888631bc965e9f21186d","message":"add month_num and weekday_num fields","stats":{"files_changed":1,"insertions":48,"deletions":17,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":65}]}},{"commit":"d4f289e40fae621b87f0d49451fca4c3dde216b7","message":"documentation fixup","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":4},{"name":"jc/parsers/date.py","lines_changed":4}]}},{"commit":"e1f3feb8f529172ae26ce4c7a66a4a1c21b722ce","message":"cover empty data case in process","stats":{"files_changed":1,"insertions":13,"deletions":10,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":23}]}},{"commit":"37d3bc699c7be16955be06840d242980f05f1074","message":"add date parser","stats":{"files_changed":6,"insertions":224,"deletions":1,"files":["CHANGELOG","docgen.sh","docs/parsers/date.md","jc/cli.py","jc/parsers/date.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/date.md","lines_changed":89},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/date.py","lines_changed":127},{"name":"man/jc.1","lines_changed":4}]}},{"commit":"672fd18016b8122510b6ab246b5675b7fd399b63","message":"date bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]}},{"commit":"bc2c23a2a09b96d34bb80f69fdc7751fb5ac3ed4","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]}},{"commit":"865f7e78124e382c6d315702fa6e48f2104cee46","message":"add kv parser to man page","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":6}]}},{"commit":"720212b552e1bd2b9196dd5f06e4b3f85d463531","message":"fixup traceroute example with new behavior","stats":{"files_changed":1,"insertions":1,"deletions":9,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":10}]}},{"commit":"d3be61f60837801d5a505dc2520cc80c874a6092","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]}},{"commit":"13418b16b8fd78fdd97ac045ec3fe9aa59d46080","message":"doc update","stats":{"files_changed":2,"insertions":8,"deletions":2,"files":["docs/parsers/traceroute.md","jc/parsers/traceroute.py"],"file_stats":[{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"jc/parsers/traceroute.py","lines_changed":5}]}},{"commit":"42d2017cd6f5ee1d1a92bd4958cd63366c1e715d","message":"traceroute updates: handle missing header row, add annotations, don't print timeouts as probes","stats":{"files_changed":18,"insertions":41,"deletions":24,"files":["CHANGELOG","jc/parsers/traceroute.py","tests/fixtures/centos-7.7/traceroute.json","tests/fixtures/freebsd12/traceroute.json","tests/fixtures/freebsd12/traceroute6.json","tests/fixtures/generic/traceroute1.json","tests/fixtures/generic/traceroute2.json","tests/fixtures/generic/traceroute3.json","tests/fixtures/generic/traceroute5.json","tests/fixtures/generic/traceroute6.json","tests/fixtures/generic/traceroute7.json","tests/fixtures/osx-10.14.6/traceroute-asn.json",".../fixtures/osx-10.14.6/traceroute-no-header.json","tests/fixtures/osx-10.14.6/traceroute-q.json","tests/fixtures/osx-10.14.6/traceroute.json",".../osx-10.14.6/traceroute6-mult-addresses.json","tests/fixtures/osx-10.14.6/traceroute6.json","tests/test_traceroute.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/traceroute.py","lines_changed":26},{"name":"tests/fixtures/centos-7.7/traceroute.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/traceroute.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/traceroute6.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute1.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute2.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute3.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute5.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute6.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute7.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/traceroute-asn.json","lines_changed":2},{"name":".../fixtures/osx-10.14.6/traceroute-no-header.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/traceroute-q.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/traceroute.json","lines_changed":2},{"name":".../osx-10.14.6/traceroute6-mult-addresses.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/traceroute6.json","lines_changed":2},{"name":"tests/test_traceroute.py","lines_changed":7}]}},{"commit":"4345e76ead2a49ae0691077e9fbd2b6c5fdfd129","message":"change to use --kv for key/value files","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2}]}},{"commit":"741431322ba2677355c361fcd6095ed8cd0a4349","message":"update tests for kv parser","stats":{"files_changed":2,"insertions":46,"deletions":24,"files":["tests/test_ini.py","tests/test_kv.py"],"file_stats":[{"name":"tests/test_ini.py","lines_changed":24},{"name":"tests/test_kv.py","lines_changed":46}]}},{"commit":"980beaaf41a04891f7c2f5daeb1e3a23d3c7ec19","message":"fix docgen issue","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2}]}},{"commit":"2205034e0906b333c259648f7a0e5392945f12ef","message":"add kv parser","stats":{"files_changed":8,"insertions":105,"deletions":31,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","jc/cli.py","jc/parsers/ini.py","jc/parsers/kv.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"EXAMPLES.md","lines_changed":53},{"name":"README.md","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/ini.py","lines_changed":4},{"name":"jc/parsers/kv.py","lines_changed":67},{"name":"setup.py","lines_changed":2}]}},{"commit":"82b9c87a66fce5d8626c56858a8c6f1f3326e7fb","message":"update docs","stats":{"files_changed":58,"insertions":345,"deletions":62,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/readme.md","docs/utils.md"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":6},{"name":"docs/parsers/airport_s.md","lines_changed":6},{"name":"docs/parsers/arp.md","lines_changed":6},{"name":"docs/parsers/blkid.md","lines_changed":6},{"name":"docs/parsers/crontab.md","lines_changed":6},{"name":"docs/parsers/crontab_u.md","lines_changed":6},{"name":"docs/parsers/csv.md","lines_changed":6},{"name":"docs/parsers/df.md","lines_changed":6},{"name":"docs/parsers/dig.md","lines_changed":6},{"name":"docs/parsers/dmidecode.md","lines_changed":6},{"name":"docs/parsers/du.md","lines_changed":6},{"name":"docs/parsers/env.md","lines_changed":6},{"name":"docs/parsers/file.md","lines_changed":6},{"name":"docs/parsers/free.md","lines_changed":6},{"name":"docs/parsers/fstab.md","lines_changed":6},{"name":"docs/parsers/group.md","lines_changed":6},{"name":"docs/parsers/gshadow.md","lines_changed":6},{"name":"docs/parsers/history.md","lines_changed":6},{"name":"docs/parsers/hosts.md","lines_changed":6},{"name":"docs/parsers/id.md","lines_changed":6},{"name":"docs/parsers/ifconfig.md","lines_changed":13},{"name":"docs/parsers/ini.md","lines_changed":6},{"name":"docs/parsers/iptables.md","lines_changed":6},{"name":"docs/parsers/jobs.md","lines_changed":6},{"name":"docs/parsers/kv.md","lines_changed":61},{"name":"docs/parsers/last.md","lines_changed":6},{"name":"docs/parsers/ls.md","lines_changed":6},{"name":"docs/parsers/lsblk.md","lines_changed":6},{"name":"docs/parsers/lsmod.md","lines_changed":6},{"name":"docs/parsers/lsof.md","lines_changed":6},{"name":"docs/parsers/mount.md","lines_changed":6},{"name":"docs/parsers/netstat.md","lines_changed":6},{"name":"docs/parsers/ntpq.md","lines_changed":6},{"name":"docs/parsers/passwd.md","lines_changed":6},{"name":"docs/parsers/ping.md","lines_changed":6},{"name":"docs/parsers/pip_list.md","lines_changed":6},{"name":"docs/parsers/pip_show.md","lines_changed":6},{"name":"docs/parsers/ps.md","lines_changed":6},{"name":"docs/parsers/route.md","lines_changed":6},{"name":"docs/parsers/shadow.md","lines_changed":6},{"name":"docs/parsers/ss.md","lines_changed":6},{"name":"docs/parsers/stat.md","lines_changed":6},{"name":"docs/parsers/sysctl.md","lines_changed":6},{"name":"docs/parsers/systemctl.md","lines_changed":6},{"name":"docs/parsers/systemctl_lj.md","lines_changed":6},{"name":"docs/parsers/systemctl_ls.md","lines_changed":6},{"name":"docs/parsers/systemctl_luf.md","lines_changed":6},{"name":"docs/parsers/timedatectl.md","lines_changed":6},{"name":"docs/parsers/tracepath.md","lines_changed":6},{"name":"docs/parsers/traceroute.md","lines_changed":9},{"name":"docs/parsers/uname.md","lines_changed":6},{"name":"docs/parsers/uptime.md","lines_changed":6},{"name":"docs/parsers/w.md","lines_changed":6},{"name":"docs/parsers/who.md","lines_changed":6},{"name":"docs/parsers/xml.md","lines_changed":6},{"name":"docs/parsers/yaml.md","lines_changed":6},{"name":"docs/readme.md","lines_changed":1},{"name":"docs/utils.md","lines_changed":5}]}},{"commit":"dda517a937323b9888e081aea1032a9d63c4a6bf","message":"shorten more examples","stats":{"files_changed":1,"insertions":3,"deletions":163,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":166}]}},{"commit":"4e6d283b9eddf7759b4dd37bd643394ff73febd4","message":"shorten netstat example","stats":{"files_changed":1,"insertions":0,"deletions":65,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":65}]}},{"commit":"55acab05aa740dfd7534304f2678b60942cad116","message":"change name to CHANGELOG","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["changelog.txt => CHANGELOG"],"file_stats":[{"name":"changelog.txt => CHANGELOG","lines_changed":0}]}},{"commit":"ed38a18d236cdb991779f4f148e42359c139e61c","message":"remove more examples","stats":{"files_changed":1,"insertions":1,"deletions":86,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":87}]}},{"commit":"95b3c11203d3dd0627c5eeca39fe1d145bf2d733","message":"remove more examples","stats":{"files_changed":1,"insertions":0,"deletions":124,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":124}]}},{"commit":"dce318f4fd44b9c4013211bf233020e84566ddb7","message":"remove examples to reduce file size","stats":{"files_changed":1,"insertions":3,"deletions":1537,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1540}]}},{"commit":"85127f0fb8096192b19fca1f4ffe38ee391351be","message":"move examples to root","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["jc/examples.md => EXAMPLES.md"],"file_stats":[{"name":"jc/examples.md => EXAMPLES.md","lines_changed":0}]}},{"commit":"fb45058244ce879f12bbb5b7267b0fd63fef1d63","message":"add examples file","stats":{"files_changed":1,"insertions":2640,"deletions":0,"files":["jc/examples.md"],"file_stats":[{"name":"jc/examples.md","lines_changed":2640}]}},{"commit":"45bb5ae389a00ed6a132a65c69ce76c7e5976858","message":"spelling","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"339238ab364d8735892a11cb16a62a651edae169","message":"version bump and add route -6 tests","stats":{"files_changed":8,"insertions":79,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py","tests/fixtures/centos-7.7/route-6-n.json","tests/fixtures/centos-7.7/route-6-n.out","tests/fixtures/centos-7.7/route-6.json","tests/fixtures/centos-7.7/route-6.out","tests/test_route.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/route-6-n.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/route-6-n.out","lines_changed":24},{"name":"tests/fixtures/centos-7.7/route-6.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/route-6.out","lines_changed":24},{"name":"tests/test_route.py","lines_changed":24}]}},{"commit":"032cda8b3db096b690d2557e3b918c50c716c543","message":"Merge pull request #74 from kellyjonbrazil/dev"},{"commit":"6badd3fb1e1cf6d1ee99614fadc20d54be8039aa","message":"add parser count test","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":3}]}},{"commit":"724d825745b6f1692eb3b068c3fb59d14892e690","message":"add tracepath parser","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":4}]}},{"commit":"ff1e32ad2ee156f105f5069c6b14a65b22784dfa","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"a5f97febd3066b9e95a18d6b73162a7d206c5845","message":"update traceroute, tracepath, and uname tests","stats":{"files_changed":10,"insertions":132,"deletions":0,"files":["tests/fixtures/centos-7.7/tracepath.json","tests/fixtures/centos-7.7/tracepath6.json","tests/fixtures/freebsd12/traceroute.json","tests/fixtures/freebsd12/traceroute.out","tests/fixtures/freebsd12/traceroute6.json","tests/fixtures/freebsd12/traceroute6.out","tests/fixtures/osx-10.14.6/uname.out","tests/test_tracepath.py","tests/test_traceroute.py","tests/test_uname.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/tracepath.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/tracepath6.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/traceroute.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/traceroute.out","lines_changed":14},{"name":"tests/fixtures/freebsd12/traceroute6.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/traceroute6.out","lines_changed":34},{"name":"tests/fixtures/osx-10.14.6/uname.out","lines_changed":1},{"name":"tests/test_tracepath.py","lines_changed":46},{"name":"tests/test_traceroute.py","lines_changed":24},{"name":"tests/test_uname.py","lines_changed":9}]}},{"commit":"5baa6cc865634142690e78596c640db35e110b29","message":"add route parser update","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]}},{"commit":"7a4f30b843d8f11711abbb8f9bb263f945ff87ea","message":"fix for iface issue","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":6}]}},{"commit":"b2c385dc4f63e3e15f47e986deac0524967214a0","message":"change 'if' to 'iface'","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":2}]}},{"commit":"5d5da8d33fa6ab77c745d338d1a2e2e8f2e4c697","message":"more fixes for ipv6 fix","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":6}]}},{"commit":"e60457157839daba385202906997dec48c9c4950","message":"fix next_hop fix","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":2}]}},{"commit":"f9dacc3f95b32e1431914ae0b0dc5c8e8840d5a7","message":"fixup for ipv6","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":4}]}},{"commit":"6086920332575cd7db1b38262a3b4ba8fbfae7ab","message":"update ParseError message","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]}},{"commit":"f52f3163bcaf8d7e784f02505e81456e8240295b","message":"add tracepath example","stats":{"files_changed":1,"insertions":49,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":49}]}},{"commit":"d18ff73e880c7d34957f2713857cc83094f914cc","message":"update author info","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/tracepath.py"],"file_stats":[{"name":"jc/parsers/tracepath.py","lines_changed":4}]}},{"commit":"1e5d602caecd96c9056ad77f9fc50cf25bf6fdfd","message":"working tracepath parser","stats":{"files_changed":2,"insertions":288,"deletions":32,"files":["docs/parsers/tracepath.md","jc/parsers/tracepath.py"],"file_stats":[{"name":"docs/parsers/tracepath.md","lines_changed":122},{"name":"jc/parsers/tracepath.py","lines_changed":198}]}},{"commit":"12912521ecb376c36dfdd743b3c4195598fb9aac","message":"doc update","stats":{"files_changed":2,"insertions":0,"deletions":11,"files":["docs/parsers/traceroute.md","jc/parsers/traceroute.py"],"file_stats":[{"name":"docs/parsers/traceroute.md","lines_changed":7},{"name":"jc/parsers/traceroute.py","lines_changed":4}]}},{"commit":"842ea3a94bec3fcab76257fdde5514d1de3d57fa","message":"add tracepath parser skeleton","stats":{"files_changed":2,"insertions":153,"deletions":0,"files":["docs/parsers/tracepath.md","jc/parsers/tracepath.py"],"file_stats":[{"name":"docs/parsers/tracepath.md","lines_changed":64},{"name":"jc/parsers/tracepath.py","lines_changed":89}]}},{"commit":"a8560dbc1598fa97de87594228b4cc10282d4197","message":"add tracepath","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]}},{"commit":"a65e27540a8c5c7123d2fdf79fcbefa1e2f8afdc","message":"update docs","stats":{"files_changed":3,"insertions":1,"deletions":24,"files":["docgen.sh","docs/parsers/traceroute.md","jc/parsers/traceroute.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/traceroute.md","lines_changed":14},{"name":"jc/parsers/traceroute.py","lines_changed":10}]}},{"commit":"c3c5ed11e68938e35920144406d37ea3b21d63dd","message":"change name from tr to trparse","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]}},{"commit":"ce24149335cd8ed1e8513a2cf040432fe42d86b7","message":"formatting","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":1}]}},{"commit":"0314ca8c4831d24c169a0e4948421ecd638fd699","message":"add trparse acknowledgement","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]}},{"commit":"ebd8ee49a9f43063850e30c745c8cae46ee13de1","message":"add key/value info to ini example","stats":{"files_changed":1,"insertions":26,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":27}]}},{"commit":"38d10c97814ec69586c3b447c182f339772d6e22","message":"add ping and traceroute examples","stats":{"files_changed":1,"insertions":130,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":131}]}},{"commit":"360106c24d24e6a9697c00a158a14aaa334a4b1f","message":"add tracepath","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]}},{"commit":"ca470a5d02fd9fbaf05d8b3b3bb1ffe9f4cf5af3","message":"add tracepath fixtures","stats":{"files_changed":2,"insertions":39,"deletions":0,"files":["tests/fixtures/centos-7.7/tracepath.out","tests/fixtures/centos-7.7/tracepath6.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/tracepath.out","lines_changed":34},{"name":"tests/fixtures/centos-7.7/tracepath6.out","lines_changed":5}]}},{"commit":"57f66e6b1d554ff20b72959f5ebb9e7b2feffed2","message":"add exception with hint to use \"uname -a\"","stats":{"files_changed":2,"insertions":14,"deletions":2,"files":["changelog.txt","jc/parsers/uname.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":14}]}},{"commit":"e774f67924c0e6195f79829b2ac75ce95f76fbaa","message":"turn off interpolation and coerce None to ''","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["jc/parsers/ini.py"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":10}]}},{"commit":"ac10e576c167d20de259e47a6aa5b23fc998b4c3","message":"spelling","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/ini.md","jc/parsers/ini.py"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"jc/parsers/ini.py","lines_changed":4}]}},{"commit":"bcae0a99cd0ccce4ec8a67929f7c83a1095a5b88","message":"add key/value to ini description","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]}},{"commit":"c73c2ff879b3ed7a3e6f04e53e0a729e4f00ed21","message":"add ping, traceroute, and ini update","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":8}]}},{"commit":"c39b1a3356881a11a8f6fe9432897e6d67162f07","message":"add ping, traceroute and update ini description","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]}},{"commit":"125dc2d9e051a82a4a438afe2e520212338353f5","message":"add info about key/value files to doc","stats":{"files_changed":1,"insertions":8,"deletions":3,"files":["docs/parsers/ini.md"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":11}]}},{"commit":"b7d4ddc7ced2c3aabf3a857b53a0bf1b62eb6a2c","message":"add tests for key/value files","stats":{"files_changed":5,"insertions":50,"deletions":0,"files":["tests/fixtures/generic/keyvalue-ifcfg.json","tests/fixtures/generic/keyvalue-ifcfg.txt","tests/fixtures/generic/keyvalue.json","tests/fixtures/generic/keyvalue.txt","tests/test_ini.py"],"file_stats":[{"name":"tests/fixtures/generic/keyvalue-ifcfg.json","lines_changed":1},{"name":"tests/fixtures/generic/keyvalue-ifcfg.txt","lines_changed":19},{"name":"tests/fixtures/generic/keyvalue.json","lines_changed":1},{"name":"tests/fixtures/generic/keyvalue.txt","lines_changed":5},{"name":"tests/test_ini.py","lines_changed":24}]}},{"commit":"f5e546c6fa7cba166284a0976887d6b82451d3e8","message":"add support for simple key/value pairs","stats":{"files_changed":1,"insertions":33,"deletions":9,"files":["jc/parsers/ini.py"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":42}]}},{"commit":"928e39cd103b96b8c3ccc8d85c930ffb419296c6","message":"add generic traceroute tests","stats":{"files_changed":9,"insertions":104,"deletions":0,"files":["tests/fixtures/generic/traceroute1.json","tests/fixtures/generic/traceroute2.json","tests/fixtures/generic/traceroute3.json","tests/fixtures/generic/traceroute4.json","tests/fixtures/generic/traceroute5.json","tests/fixtures/generic/traceroute6.json","tests/fixtures/generic/traceroute7.json","tests/fixtures/generic/traceroute8.json","tests/test_traceroute.py"],"file_stats":[{"name":"tests/fixtures/generic/traceroute1.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute2.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute3.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute4.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute5.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute6.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute7.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute8.json","lines_changed":1},{"name":"tests/test_traceroute.py","lines_changed":96}]}},{"commit":"d0b7ea68a005daff313e44808b256656313a78a3","message":"check for key in dictionary","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":4}]}},{"commit":"8444690133b6a7522822ab279e97ede6ded17ba9","message":"add traceroute","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":4}]}},{"commit":"c03c42d76703ff8f423cf3c10ea6254a27a685cb","message":"add traceroute tests","stats":{"files_changed":9,"insertions":76,"deletions":9,"files":["tests/fixtures/centos-7.7/traceroute.json","tests/fixtures/osx-10.14.6/traceroute-asn.json",".../osx-10.14.6/traceroute-mult-addresses.json","tests/fixtures/osx-10.14.6/traceroute-q.json","tests/fixtures/osx-10.14.6/traceroute.json",".../osx-10.14.6/traceroute6-mult-addresses.json","...-address.out => traceroute6-mult-addresses.out}","tests/fixtures/osx-10.14.6/traceroute6.json","tests/test_traceroute.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/traceroute.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/traceroute-asn.json","lines_changed":1},{"name":".../osx-10.14.6/traceroute-mult-addresses.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/traceroute-q.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/traceroute.json","lines_changed":1},{"name":".../osx-10.14.6/traceroute6-mult-addresses.json","lines_changed":1},{"name":"...-address.out => traceroute6-mult-addresses.out}","lines_changed":0},{"name":"tests/fixtures/osx-10.14.6/traceroute6.json","lines_changed":1},{"name":"tests/test_traceroute.py","lines_changed":78}]}},{"commit":"ab67688a00ac335d2a5603e9cadef8b565957911","message":"add test skeleton","stats":{"files_changed":1,"insertions":55,"deletions":0,"files":["tests/test_traceroute.py"],"file_stats":[{"name":"tests/test_traceroute.py","lines_changed":55}]}},{"commit":"5dcb7166daef3c53da65bba0d591672e64d3a90b","message":"add traceroute doc","stats":{"files_changed":2,"insertions":169,"deletions":0,"files":["docgen.sh","docs/parsers/traceroute.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/traceroute.md","lines_changed":168}]}},{"commit":"14697b86d7fc1cfebb41e0fd2d9a9b9b60071d3b","message":"add MIT license","stats":{"files_changed":1,"insertions":24,"deletions":2,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":26}]}},{"commit":"4f4b6276d4bf798b17d996f39742bd0428fc2f19","message":"update docstring","stats":{"files_changed":1,"insertions":38,"deletions":33,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":71}]}},{"commit":"7bc497e1291059ae7858c9d2bd2d9a1b4c030dd1","message":"updated process() function to set integers and floats","stats":{"files_changed":1,"insertions":117,"deletions":14,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":131}]}},{"commit":"68a37a6a5a3f0ad0fa24c84d363050af9fa11f97","message":"remove unused function load()","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":4}]}},{"commit":"6f5cd1d7c5f76d7d4da42171fdc30daf9fe3996e","message":"change to use f-string","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]}},{"commit":"126b1b121ca10183dc7e9dece83b42907becad39","message":"add traceroute6 example","stats":{"files_changed":1,"insertions":10,"deletions":0,"files":["tests/fixtures/generic/traceroute8.out"],"file_stats":[{"name":"tests/fixtures/generic/traceroute8.out","lines_changed":10}]}},{"commit":"2341e456a012564f86d533d2748a5887d79995e4","message":"use ParseError instead of generic Exception","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]}},{"commit":"72d80e95bb50ae2a7432082e65aba15235ba0955","message":"remove unused regex patterns","stats":{"files_changed":8,"insertions":115,"deletions":8,"files":["jc/parsers/traceroute.py","tests/fixtures/generic/traceroute1.out","tests/fixtures/generic/traceroute2.out","tests/fixtures/generic/traceroute3.out","tests/fixtures/generic/traceroute4.out","tests/fixtures/generic/traceroute5.out","tests/fixtures/generic/traceroute6.out","tests/fixtures/generic/traceroute7.out"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":9},{"name":"tests/fixtures/generic/traceroute1.out","lines_changed":16},{"name":"tests/fixtures/generic/traceroute2.out","lines_changed":13},{"name":"tests/fixtures/generic/traceroute3.out","lines_changed":20},{"name":"tests/fixtures/generic/traceroute4.out","lines_changed":7},{"name":"tests/fixtures/generic/traceroute5.out","lines_changed":10},{"name":"tests/fixtures/generic/traceroute6.out","lines_changed":31},{"name":"tests/fixtures/generic/traceroute7.out","lines_changed":17}]}},{"commit":"f5ec82440cd1c1b5ac9011d3517298d0cdcd8766","message":"simplify regex patterns","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":11}]}},{"commit":"c8e526ead35b868733f57b4c114062a48b78a817","message":"fixes for bsd-style ipv6 output","stats":{"files_changed":2,"insertions":12,"deletions":3,"files":["jc/parsers/traceroute.py","tests/fixtures/osx-10.14.6/traceroute-q.out"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":11},{"name":"tests/fixtures/osx-10.14.6/traceroute-q.out","lines_changed":4}]}},{"commit":"066adfb76479df7042bfb12bbb83b5dbd8a6d54c","message":"handle warning lines in the traceroute output","stats":{"files_changed":7,"insertions":83,"deletions":7,"files":["jc/parsers/traceroute.py","tests/fixtures/centos-7.7/traceroute.out","tests/fixtures/osx-10.14.6/traceroute-asn.out",".../osx-10.14.6/traceroute-mult-addresses.out",".../fixtures/osx-10.14.6/traceroute-no-header.out",".../osx-10.14.6/traceroute6-multi-address.out","tests/fixtures/osx-10.14.6/traceroute6.out"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":30},{"name":"tests/fixtures/centos-7.7/traceroute.out","lines_changed":32},{"name":"tests/fixtures/osx-10.14.6/traceroute-asn.out","lines_changed":5},{"name":".../osx-10.14.6/traceroute-mult-addresses.out","lines_changed":5},{"name":".../fixtures/osx-10.14.6/traceroute-no-header.out","lines_changed":3},{"name":".../osx-10.14.6/traceroute6-multi-address.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/traceroute6.out","lines_changed":7}]}},{"commit":"5b444d4717b0b8528647e17e71d699907def3e18","message":"add traceroute parser","stats":{"files_changed":3,"insertions":307,"deletions":0,"files":["jc/cli.py","jc/parsers/traceroute.py","tests/fixtures/osx-10.14.6/traceroute.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/traceroute.py","lines_changed":295},{"name":"tests/fixtures/osx-10.14.6/traceroute.out","lines_changed":11}]}},{"commit":"69c95adc8d59927c1c00b7e766ca5003b7b6454c","message":"add osx ipv6 ping dup test","stats":{"files_changed":3,"insertions":81,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ping6-ip-dup.json","tests/fixtures/osx-10.14.6/ping6-ip-dup.out","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ping6-ip-dup.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-dup.out","lines_changed":68},{"name":"tests/test_ping.py","lines_changed":12}]}},{"commit":"2b0e0d8f5c1a6a5450e362971f9ad5892093b2ce","message":"add ipv6 dup test","stats":{"files_changed":3,"insertions":27,"deletions":0,"files":["tests/fixtures/centos-7.7/ping6-ip-dup.json","tests/fixtures/centos-7.7/ping6-ip-dup.out","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ping6-ip-dup.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-ip-dup.out","lines_changed":14},{"name":"tests/test_ping.py","lines_changed":12}]}},{"commit":"778d1bacbf8df523d434b22f5e1517955e4c15ee","message":"update docs to add \"duplicates\" fields","stats":{"files_changed":2,"insertions":28,"deletions":12,"files":["docs/parsers/ping.md","jc/parsers/ping.py"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":20},{"name":"jc/parsers/ping.py","lines_changed":20}]}},{"commit":"7e1b0410166c584775ebcd681a280ec7321560c7","message":"add duplicate replies tests","stats":{"files_changed":1,"insertions":24,"deletions":0,"files":["tests/test_ping.py"],"file_stats":[{"name":"tests/test_ping.py","lines_changed":24}]}},{"commit":"313b9b329ca6b674069718839f55a4bd7834db80","message":"update fixtures for added 'duplicate' fields","stats":{"files_changed":55,"insertions":55,"deletions":53,"files":["tests/fixtures/centos-7.7/ping-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping-hostname-O-p.json","tests/fixtures/centos-7.7/ping-hostname-O.json","tests/fixtures/centos-7.7/ping-ip-O-D.json","tests/fixtures/centos-7.7/ping-ip-O.json","tests/fixtures/centos-7.7/ping-ip-dup.json","tests/fixtures/centos-7.7/ping6-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping6-hostname-O-p.json","tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","tests/fixtures/centos-7.7/ping6-ip-O-p.json","tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping-hostname-O-p.json","tests/fixtures/fedora32/ping-hostname-O.json","tests/fixtures/fedora32/ping-ip-O-D.json","tests/fixtures/fedora32/ping-ip-O.json","tests/fixtures/fedora32/ping6-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping6-hostname-O-D-p.json","tests/fixtures/fedora32/ping6-hostname-O-p.json","tests/fixtures/fedora32/ping6-ip-O-D-p.json","tests/fixtures/fedora32/ping6-ip-O-p.json","tests/fixtures/freebsd12/ping-hostname-p.json","tests/fixtures/freebsd12/ping-hostname-s.json","tests/fixtures/freebsd12/ping-hostname.json","tests/fixtures/freebsd12/ping-ip-p.json","tests/fixtures/freebsd12/ping-ip-s.json","tests/fixtures/freebsd12/ping-ip.json","tests/fixtures/freebsd12/ping6-hostname-p.json","tests/fixtures/freebsd12/ping6-hostname-s.json","tests/fixtures/freebsd12/ping6-hostname.json","tests/fixtures/freebsd12/ping6-ip-p.json","tests/fixtures/freebsd12/ping6-ip-s.json","tests/fixtures/freebsd12/ping6-ip.json","tests/fixtures/osx-10.14.6/ping-hostname-p.json","tests/fixtures/osx-10.14.6/ping-hostname-s.json","tests/fixtures/osx-10.14.6/ping-hostname.json","tests/fixtures/osx-10.14.6/ping-ip-dup.json","tests/fixtures/osx-10.14.6/ping-ip-p.json","tests/fixtures/osx-10.14.6/ping-ip-s.json","tests/fixtures/osx-10.14.6/ping-ip.json","tests/fixtures/osx-10.14.6/ping6-hostname-p.json","tests/fixtures/osx-10.14.6/ping6-hostname-s.json","tests/fixtures/osx-10.14.6/ping6-hostname.json","tests/fixtures/osx-10.14.6/ping6-ip-p.json","tests/fixtures/osx-10.14.6/ping6-ip-s.json","tests/fixtures/osx-10.14.6/ping6-ip.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping-hostname-O.json","tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","tests/fixtures/ubuntu-18.04/ping-ip-O.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ping-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-hostname-O.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-ip-O-D.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-ip-O.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-ip-dup.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping6-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-hostname-O.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-ip-O-D.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-ip-O.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-ip-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-ip-O-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-hostname-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-hostname-s.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-hostname.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-ip-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-ip-s.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-ip.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-hostname-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-hostname-s.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-hostname.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-ip-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-ip-s.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-ip.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-hostname-p.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-hostname-s.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-hostname.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-ip-dup.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-p.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-ip-s.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-ip.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-p.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-s.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-p.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-s.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-ip.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json","lines_changed":2}]}},{"commit":"6830062256fbc453f87224f7ab8c10e4494b5a83","message":"add support for duplicate replies","stats":{"files_changed":4,"insertions":112,"deletions":24,"files":["docs/parsers/ping.md","jc/parsers/ping.py","tests/fixtures/centos-7.7/ping-ip-dup.out","tests/fixtures/osx-10.14.6/ping-ip-dup.out"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":6},{"name":"jc/parsers/ping.py","lines_changed":83},{"name":"tests/fixtures/centos-7.7/ping-ip-dup.out","lines_changed":27},{"name":"tests/fixtures/osx-10.14.6/ping-ip-dup.out","lines_changed":20}]}},{"commit":"323072c9827c41c5d74433504b5efceb846cfe09","message":"add source_ip to schema doc","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/ping.md","jc/parsers/ping.py"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":1},{"name":"jc/parsers/ping.py","lines_changed":1}]}},{"commit":"8719d96bddec80187e7ba3286ba93bfec8465744","message":"change description","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"dd5d318ab5bbb1027dd600fd3b0b6ec9b8adfdc3","message":"version bump and add ping command","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":6}]}},{"commit":"d6dc7f5e65c097895c19000e59e8803a3b350fdc","message":"add osx ping tests","stats":{"files_changed":13,"insertions":135,"deletions":29,"files":["tests/fixtures/osx-10.14.6/ping-hostname-p.json","tests/fixtures/osx-10.14.6/ping-hostname-s.json","tests/fixtures/osx-10.14.6/ping-hostname.json","tests/fixtures/osx-10.14.6/ping-ip-p.json","tests/fixtures/osx-10.14.6/ping-ip-s.json","tests/fixtures/osx-10.14.6/ping-ip.json","tests/fixtures/osx-10.14.6/ping6-hostname-p.json","tests/fixtures/osx-10.14.6/ping6-hostname-s.json","tests/fixtures/osx-10.14.6/ping6-hostname.json","tests/fixtures/osx-10.14.6/ping6-ip-p.json","tests/fixtures/osx-10.14.6/ping6-ip-s.json","tests/fixtures/osx-10.14.6/ping6-ip.json","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ping-hostname-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-hostname-s.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-hostname.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-s.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-s.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-s.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":152}]}},{"commit":"c203664eb5aafa0afa3101b79e3fd13b3e009ec5","message":"freebsd ping tests","stats":{"files_changed":13,"insertions":171,"deletions":9,"files":["tests/fixtures/freebsd12/ping-hostname-p.json","tests/fixtures/freebsd12/ping-hostname-s.json","tests/fixtures/freebsd12/ping-hostname.json","tests/fixtures/freebsd12/ping-ip-p.json","tests/fixtures/freebsd12/ping-ip-s.json","tests/fixtures/freebsd12/ping-ip.json","tests/fixtures/freebsd12/ping6-hostname-p.json","tests/fixtures/freebsd12/ping6-hostname-s.json","tests/fixtures/freebsd12/ping6-hostname.json","tests/fixtures/freebsd12/ping6-ip-p.json","tests/fixtures/freebsd12/ping6-ip-s.json","tests/fixtures/freebsd12/ping6-ip.json","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/ping-hostname-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-hostname-s.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-hostname.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-s.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-hostname-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-hostname-s.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-hostname.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-s.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":168}]}},{"commit":"19ecf1fa19e9fa0873002baf07fa670b71ed7752","message":"add Fedora32 tests","stats":{"files_changed":11,"insertions":118,"deletions":0,"files":["tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping-hostname-O-p.json","tests/fixtures/fedora32/ping-hostname-O.json","tests/fixtures/fedora32/ping-ip-O-D.json","tests/fixtures/fedora32/ping-ip-O.json",".../fixtures/fedora32/ping6-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping6-hostname-O-D-p.json","tests/fixtures/fedora32/ping6-hostname-O-p.json","tests/fixtures/fedora32/ping6-ip-O-D-p.json","tests/fixtures/fedora32/ping6-ip-O-p.json","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-hostname-O.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-ip-O-D.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-ip-O.json","lines_changed":1},{"name":".../fixtures/fedora32/ping6-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping6-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping6-ip-O-D-p.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping6-ip-O-p.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":108}]}},{"commit":"b8deb0426cc23333c0e0a9dc3776d9761d99abb0","message":"add ubuntu ping tests","stats":{"files_changed":11,"insertions":119,"deletions":8,"files":[".../ubuntu-18.04/ping-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping-hostname-O.json","tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","tests/fixtures/ubuntu-18.04/ping-ip-O.json",".../ubuntu-18.04/ping6-hostname-O-D-p-s.json",".../ubuntu-18.04/ping6-hostname-O-D-p.json",".../fixtures/ubuntu-18.04/ping6-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json","tests/test_ping.py"],"file_stats":[{"name":".../ubuntu-18.04/ping-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-hostname-O-D-p-s.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-hostname-O-D-p.json","lines_changed":1},{"name":".../fixtures/ubuntu-18.04/ping6-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":117}]}},{"commit":"3b8371f0208a097cb8a1c026348d3842e6702b9c","message":"add centos ping tests","stats":{"files_changed":10,"insertions":202,"deletions":0,"files":[".../fixtures/centos-7.7/ping-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping-hostname-O-p.json","tests/fixtures/centos-7.7/ping-hostname-O.json","tests/fixtures/centos-7.7/ping-ip-O-D.json","tests/fixtures/centos-7.7/ping-ip-O.json",".../centos-7.7/ping6-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping6-hostname-O-p.json","tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","tests/fixtures/centos-7.7/ping6-ip-O-p.json","tests/test_ping.py"],"file_stats":[{"name":".../fixtures/centos-7.7/ping-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-hostname-O.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-ip-O-D.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-ip-O.json","lines_changed":1},{"name":".../centos-7.7/ping6-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-p.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":193}]}},{"commit":"20bb1cdf396abdb3707b34fa146cbe913f9bbd6f","message":"add TypeError to except for None values","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":8}]}},{"commit":"301daa48d0bfc28f97c8e46f028f8c6b875bf34e","message":"update documentation","stats":{"files_changed":2,"insertions":114,"deletions":16,"files":["docs/parsers/ping.md","jc/parsers/ping.py"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":128},{"name":"jc/parsers/ping.py","lines_changed":2}]}},{"commit":"8421ec88033e02f472e4961d87551a0352663a16","message":"remove cygwin compatibility","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":4}]}},{"commit":"74211eb0129f6aa655a38ba4d4d8844d81441107","message":"add examples","stats":{"files_changed":1,"insertions":82,"deletions":5,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":87}]}},{"commit":"60bd42f298f309cbec6d24c9543ea3d51bd73b18","message":"add process() logic","stats":{"files_changed":1,"insertions":59,"deletions":11,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":70}]}},{"commit":"14bdd74526e400997c5bc247ea35ed40799e83ff","message":"add ping test fixtures","stats":{"files_changed":12,"insertions":100,"deletions":0,"files":["tests/fixtures/freebsd12/ping-hostname-p.out","tests/fixtures/freebsd12/ping-hostname-s.out","tests/fixtures/freebsd12/ping-hostname.out","tests/fixtures/freebsd12/ping-ip-p.out","tests/fixtures/freebsd12/ping-ip-s.out","tests/fixtures/freebsd12/ping-ip.out","tests/fixtures/freebsd12/ping6-hostname-p.out","tests/fixtures/freebsd12/ping6-hostname-s.out","tests/fixtures/freebsd12/ping6-hostname.out","tests/fixtures/freebsd12/ping6-ip-p.out","tests/fixtures/freebsd12/ping6-ip-s.out","tests/fixtures/freebsd12/ping6-ip.out"],"file_stats":[{"name":"tests/fixtures/freebsd12/ping-hostname-p.out","lines_changed":9},{"name":"tests/fixtures/freebsd12/ping-hostname-s.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping-hostname.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping-ip-p.out","lines_changed":9},{"name":"tests/fixtures/freebsd12/ping-ip-s.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping-ip.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping6-hostname-p.out","lines_changed":9},{"name":"tests/fixtures/freebsd12/ping6-hostname-s.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping6-hostname.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping6-ip-p.out","lines_changed":9},{"name":"tests/fixtures/freebsd12/ping6-ip-s.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping6-ip.out","lines_changed":8}]}},{"commit":"fb0f3eda04a4b1dbb81da7d5791cbfe746bfd617","message":"add ping commands","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["tests/fixtures/create_fixtures.sh"],"file_stats":[{"name":"tests/fixtures/create_fixtures.sh","lines_changed":16}]}},{"commit":"91ee6e6701307363336a39f9e16641465ddd05c2","message":"add osx ping test fixtures","stats":{"files_changed":12,"insertions":100,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ping-hostname-p.out","tests/fixtures/osx-10.14.6/ping-hostname-s.out","tests/fixtures/osx-10.14.6/ping-hostname.out","tests/fixtures/osx-10.14.6/ping-ip-p.out","tests/fixtures/osx-10.14.6/ping-ip-s.out","tests/fixtures/osx-10.14.6/ping-ip.out","tests/fixtures/osx-10.14.6/ping6-hostname-p.out","tests/fixtures/osx-10.14.6/ping6-hostname-s.out","tests/fixtures/osx-10.14.6/ping6-hostname.out","tests/fixtures/osx-10.14.6/ping6-ip-p.out","tests/fixtures/osx-10.14.6/ping6-ip-s.out","tests/fixtures/osx-10.14.6/ping6-ip.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ping-hostname-p.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/ping-hostname-s.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping-hostname.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping-ip-p.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/ping-ip-s.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping-ip.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-p.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-s.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-p.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-s.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping6-ip.out","lines_changed":8}]}},{"commit":"51f4e6927c68a7e2a26954f564d10d316b98a984","message":"add support for pattern in osx/bsd","stats":{"files_changed":1,"insertions":12,"deletions":3,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":15}]}},{"commit":"94988d86674293faddc6f7e7c82575738d2dc791","message":"add fedora ping fixtures","stats":{"files_changed":10,"insertions":257,"deletions":0,"files":["tests/fixtures/fedora32/ping-hostname-O-D-p-s.out","tests/fixtures/fedora32/ping-hostname-O-p.out","tests/fixtures/fedora32/ping-hostname-O.out","tests/fixtures/fedora32/ping-ip-O-D.out","tests/fixtures/fedora32/ping-ip-O.out","tests/fixtures/fedora32/ping6-hostname-O-D-p-s.out","tests/fixtures/fedora32/ping6-hostname-O-D-p.out","tests/fixtures/fedora32/ping6-hostname-O-p.out","tests/fixtures/fedora32/ping6-ip-O-D-p.out","tests/fixtures/fedora32/ping6-ip-O-p.out"],"file_stats":[{"name":"tests/fixtures/fedora32/ping-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping-hostname-O.out","lines_changed":25},{"name":"tests/fixtures/fedora32/ping-ip-O-D.out","lines_changed":25},{"name":"tests/fixtures/fedora32/ping-ip-O.out","lines_changed":25},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping6-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping6-ip-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping6-ip-O-p.out","lines_changed":26}]}},{"commit":"fe36f5a98cd3ee7753e250b6553e4453d971f929","message":"add fixtures for ping","stats":{"files_changed":13,"insertions":318,"deletions":0,"files":["tests/fixtures/centos-7.7/ping-ip-O-D.out","tests/fixtures/centos-7.7/ping-ip-O.out","tests/fixtures/create_fixtures.sh",".../ubuntu-18.04/ping-hostname-O-D-p-s.out","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.out","tests/fixtures/ubuntu-18.04/ping-hostname-O.out","tests/fixtures/ubuntu-18.04/ping-ip-O-D.out","tests/fixtures/ubuntu-18.04/ping-ip-O.out",".../ubuntu-18.04/ping6-hostname-O-D-p-s.out",".../fixtures/ubuntu-18.04/ping6-hostname-O-D-p.out","tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.out","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.out","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ping-ip-O-D.out","lines_changed":25},{"name":"tests/fixtures/centos-7.7/ping-ip-O.out","lines_changed":25},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":12},{"name":".../ubuntu-18.04/ping-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O.out","lines_changed":25},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O-D.out","lines_changed":25},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O.out","lines_changed":25},{"name":".../ubuntu-18.04/ping6-hostname-O-D-p-s.out","lines_changed":26},{"name":".../fixtures/ubuntu-18.04/ping6-hostname-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-p.out","lines_changed":25}]}},{"commit":"f9eb18b9271b2428dd82f2dc26d3fa0435dad81d","message":"change 'request_timeout' field to 'type', fix compatibility, other formatting fixes","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":17}]}},{"commit":"cc60f3674822c644933f286a0364b09d7e2a60b3","message":"add ping parser","stats":{"files_changed":3,"insertions":67,"deletions":1,"files":["docgen.sh","docs/parsers/ping.md","jc/cli.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ping.md","lines_changed":64},{"name":"jc/cli.py","lines_changed":3}]}},{"commit":"604ade791f7bd33b37f64916befba27a2ea08b5b","message":"add ping parser","stats":{"files_changed":8,"insertions":506,"deletions":0,"files":["jc/parsers/ping.py",".../fixtures/centos-7.7/ping-hostname-O-D-p-s.out","tests/fixtures/centos-7.7/ping-hostname-O-p.out","tests/fixtures/centos-7.7/ping-hostname-O.out",".../fixtures/centos-7.7/ping6-hostname-O-D-p-s.out","tests/fixtures/centos-7.7/ping6-hostname-O-p.out","tests/fixtures/centos-7.7/ping6-ip-O-D-p.out","tests/fixtures/centos-7.7/ping6-ip-O-p.out"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":325},{"name":".../fixtures/centos-7.7/ping-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping-hostname-O.out","lines_changed":25},{"name":".../fixtures/centos-7.7/ping6-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping6-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-p.out","lines_changed":26}]}},{"commit":"690ac52a917200e46eac2feafc9f504f2734301c","message":"add man page","stats":{"files_changed":1,"insertions":261,"deletions":0,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":261}]}},{"commit":"34ed772775f1f02ed148f24a3bfff532bc811607","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"d5ab95571f64f55d8194e9e5592ac538bb535229","message":"fix tests when using older versions of pygments","stats":{"files_changed":1,"insertions":26,"deletions":11,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":37}]}},{"commit":"ffb3a0ee5fb30a3f61d6cbedf877ab04acdbf624","message":"Merge pull request #73 from kellyjonbrazil/dev"},{"commit":"94b12b57aaa56170d1f31f4910fd1239f88de137","message":"spelling","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]}},{"commit":"6d149e84571d5d6dd1d8a1f219ba299de5173779","message":"version bump","stats":{"files_changed":2,"insertions":8,"deletions":1,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":7},{"name":"setup.py","lines_changed":2}]}},{"commit":"1ad89c90d890039b817f65b2635db1b5e849a9e7","message":"add pacman","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"fb71c7b020bc1eda9484595f30b0200a4f59aa45","message":"function name spelling","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":2}]}},{"commit":"28ed17ad3bce866e5dc0179ef5de43380ac6ace1","message":"add parser_count test to test_cli_about_jc","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":1}]}},{"commit":"0c2a4e2bf71dca50d4a9bb27ca99944909c022ff","message":"add cli tests","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":37}]}},{"commit":"62bec30de2f1a303f2ec411d89f7f9f9c6d1abaf","message":"add json_out tests","stats":{"files_changed":1,"insertions":20,"deletions":0,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":20}]}},{"commit":"3fced77e4e258dbf7db94a313e599c830a597b49","message":"add set_env_colors tests","stats":{"files_changed":1,"insertions":98,"deletions":1,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":99}]}},{"commit":"a09d1d8b7687912610598c88d172733d5e29b1ce","message":"move environment variable assignment to main() to simplify tests","stats":{"files_changed":1,"insertions":7,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":13}]}},{"commit":"8f4243fbd8d70ca9fd019e984c564e37c81e07db","message":"formatting","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]}},{"commit":"47aaf20549ea238443427e69d5841d6996b7afab","message":"add sysctl command parser","stats":{"files_changed":1,"insertions":17,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":17}]}},{"commit":"0c5289ea50e4d3d35e80147b4cad32434c19a2a0","message":"add sysctl tests","stats":{"files_changed":3,"insertions":72,"deletions":2,"files":["tests/fixtures/freebsd12/sysctl-a.json","tests/fixtures/osx-10.14.6/sysctl-a.json","tests/test_sysctl.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/sysctl-a.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/sysctl-a.json","lines_changed":2},{"name":"tests/test_sysctl.py","lines_changed":70}]}},{"commit":"3e53323514906fb84abfaeed0c2ee1fd9090ad8d","message":"don't filter out empty lines","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":2}]}},{"commit":"a5ee9861b9b9b479aee59ea5b1d75f20d7c3c8e7","message":"update fixtures","stats":{"files_changed":3,"insertions":3785,"deletions":1,"files":["tests/fixtures/freebsd12/sysctl-a.json","tests/fixtures/freebsd12/sysctl-a.out","tests/fixtures/osx-10.14.6/sysctl-a.json"],"file_stats":[{"name":"tests/fixtures/freebsd12/sysctl-a.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/sysctl-a.out","lines_changed":3783},{"name":"tests/fixtures/osx-10.14.6/sysctl-a.json","lines_changed":2}]}},{"commit":"feb8ca76545cba4fd0927273ddf90a77df994006","message":"spelling","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/sysctl.md"],"file_stats":[{"name":"docs/parsers/sysctl.md","lines_changed":2}]}},{"commit":"a7abe4473b90c512466db9ae98cfac585689fe2a","message":"spelling","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":2}]}},{"commit":"780b9b61dec3e142e46c9a82146d2af4e1144123","message":"specify IndexError exception in try/except block","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":6}]}},{"commit":"19ace36ffa659bedf0ba2e43572c9e253592b2e7","message":"add fixtures","stats":{"files_changed":4,"insertions":2167,"deletions":0,"files":["tests/fixtures/osx-10.14.6/sysctl-a.json","tests/fixtures/osx-10.14.6/sysctl-a.out","tests/fixtures/ubuntu-18.04/sysctl-a.json","tests/fixtures/ubuntu-18.04/sysctl-a.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/sysctl-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/sysctl-a.out","lines_changed":1287},{"name":"tests/fixtures/ubuntu-18.04/sysctl-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/sysctl-a.out","lines_changed":878}]}},{"commit":"5fff8afc9f47f8cc6db8ed3613b90b5cdc683b43","message":"add fixes for freebsd where values can be on separate lines under the key","stats":{"files_changed":1,"insertions":33,"deletions":11,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":44}]}},{"commit":"4ad230c9279c5eb6c8ed6baf7254b8e9328e5af0","message":"doc update and add test fixtures","stats":{"files_changed":4,"insertions":929,"deletions":14,"files":["docs/parsers/sysctl.md","jc/parsers/sysctl.py","tests/fixtures/centos-7.7/sysctl-a.json","tests/fixtures/centos-7.7/sysctl-a.out"],"file_stats":[{"name":"docs/parsers/sysctl.md","lines_changed":12},{"name":"jc/parsers/sysctl.py","lines_changed":12},{"name":"tests/fixtures/centos-7.7/sysctl-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sysctl-a.out","lines_changed":918}]}},{"commit":"dd98eb1ec8f451eb87a5094e76a7f758dee3fc69","message":"append duplicate key values to original key instead of adding unique keys","stats":{"files_changed":1,"insertions":4,"deletions":7,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":11}]}},{"commit":"c6baf42e72b4f41ed511e7db943297d03a39c0d5","message":"doc updates","stats":{"files_changed":3,"insertions":94,"deletions":7,"files":["docgen.sh","docs/parsers/sysctl.md","jc/parsers/sysctl.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/sysctl.md","lines_changed":86},{"name":"jc/parsers/sysctl.py","lines_changed":14}]}},{"commit":"e2bac97d563e5ef771ccd8ed1e5c42cbf588b120","message":"fix for multiple identical keys in sysctl output","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":12}]}},{"commit":"d112ee94d0ec534828c8508d0fb833b768975990","message":"use try/except and add support for floats in process()","stats":{"files_changed":1,"insertions":8,"deletions":4,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":12}]}},{"commit":"27b21b2fafab912f21b88b66c7f817cbce155765","message":"formatting and docstring updates","stats":{"files_changed":1,"insertions":8,"deletions":7,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":15}]}},{"commit":"8c96d5cd20448a4f7f9736c4d489d6ecc3068ad7","message":"reduce pygments version requirement","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["requirements.txt"],"file_stats":[{"name":"requirements.txt","lines_changed":2}]}},{"commit":"c29ed3fd695f725005333db5e6e2cd844bb4ca14","message":"formatting of quotation marks and docstrings","stats":{"files_changed":1,"insertions":14,"deletions":13,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":27}]}},{"commit":"cedf603f121636bdfa95432059c3c275c3ea3e9e","message":"minor formatting","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]}},{"commit":"279161c36f288c27a9789054ae372fe8ceb58a94","message":"Merge pull request #72 from duelafn/pygments-2.3"},{"commit":"ce0b43d919f07d96d1b94e9d14d03e935e80011d","message":"Remove dependency on 3rd party packaging library","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]}},{"commit":"ddafa5bf06066bab8e9587be902d6752fcf51605","message":"Support older pygments","stats":{"files_changed":2,"insertions":47,"deletions":7,"files":["jc/cli.py","setup.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":52},{"name":"setup.py","lines_changed":2}]}},{"commit":"bc7116c31bacf3159aef775fd0e615187420b010","message":"fix JC_COLORS env bug and simplify set_env_colors()","stats":{"files_changed":1,"insertions":7,"deletions":8,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":15}]}},{"commit":"53b709272115e769dac905296fa3b000c1cdd66a","message":"remove side-effects from functions and print in main()","stats":{"files_changed":1,"insertions":11,"deletions":11,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":22}]}},{"commit":"beb9174b1b35937ae1fb99778369ae643a8f1005","message":"add sysctl parser","stats":{"files_changed":1,"insertions":123,"deletions":0,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":123}]}},{"commit":"aea41ed341c8d53cc07c35e8044e8f816ddd2fed","message":"move verbose_debug enable earlier in code to catch more issues. add sysctl and version bump","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":11}]}},{"commit":"d789494cb1f691aa352419aaefc692f654477177","message":"change type check to use isinstance","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/tracebackplus.py"],"file_stats":[{"name":"jc/tracebackplus.py","lines_changed":2}]}},{"commit":"608e7b4cff081f92177e4151ffa1a91a4a6895ca","message":"add license info","stats":{"files_changed":1,"insertions":61,"deletions":0,"files":["jc/tracebackplus.py"],"file_stats":[{"name":"jc/tracebackplus.py","lines_changed":61}]}},{"commit":"4ee199c02a78c2707c5d1427d7c8fae56df5671c","message":"use tracebackplus instead of cgitb since cgitb is depricated","stats":{"files_changed":2,"insertions":189,"deletions":3,"files":["jc/cli.py","jc/tracebackplus.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6},{"name":"jc/tracebackplus.py","lines_changed":186}]}},{"commit":"fbf47d408501dadda4671fb530f5e11859e85d53","message":"add arch linux","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]}},{"commit":"5a238e4b4204f0552327534ef798c28d3ad4f578","message":"remove updates-testing from fedora command","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"f852b8246a8f9e5f7d9144fed3a0daa4eddfe035","message":"wrap warning message","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":3}]}},{"commit":"88140d929a500ee78f807862c4912c399df2a460","message":"wrap error message in code","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]}},{"commit":"45f726824027af49c437b6e81e4700f7098af320","message":"add -dd to error message","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"3a3c8e4d4a77135eaee5cb30c3107a4531c300ce","message":"move verbose_debug under debug check","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]}},{"commit":"c1ac183a0472e93226c9ee1905f56c5183e3721f","message":"simplify debug option","stats":{"files_changed":1,"insertions":15,"deletions":22,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":37}]}},{"commit":"18bb779ee5cd5821764b03173f16e922f753c64d","message":"formatting: double quotes to single quotes","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]}},{"commit":"8b6612fe7911ab9e0bf8d29be60865d3b8aa3fd8","message":"move JC_COLORS parsing error message","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]}},{"commit":"fde0bc853415418e01616861ace5048770bd97f8","message":"improve package install info","stats":{"files_changed":1,"insertions":9,"deletions":34,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":43}]}},{"commit":"e661a78939ff067b8a61f08301c178dd10a344ab","message":"Merge pull request #71 from wigust/guix"},{"commit":"847e346602789bf58e3515319e9d080dfb897fc9","message":"add guix package info","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]}},{"commit":"b9697516887c61f08d8d7b1dc9130350e5bdba9c","message":"add other references","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]}},{"commit":"ad6f2ba03a293a7f55e456fa5f5b55ee3cbcd4ec","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"63c6a5edc0e9001b143595fd8b96f1b4a1377a3a","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]}},{"commit":"9f4cf9dd5efe94adfff0961fdb73097ca27c5463","message":"formatting","stats":{"files_changed":1,"insertions":197,"deletions":67,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":264}]}},{"commit":"51331b6dc01eee00847fa4be549ffde365373a01","message":"formatting","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":5}]}},{"commit":"efb6761033319644bf9cdae6288ff5609f6482ea","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"6a4f737a0f1c322bebccf69809d9816fc770c5ef","message":"update json syntax highlighting","stats":{"files_changed":1,"insertions":88,"deletions":115,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":203}]}},{"commit":"be6864b778ab721bcba5fc3221576153be7b2ed3","message":"add syntax highlighting tags","stats":{"files_changed":1,"insertions":26,"deletions":26,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":52}]}},{"commit":"de3b91a36cfcaf565b26b1da42f1e87835da4dc3","message":"add -dd option","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"ef5482c3b5afa0ee8e85851bebab1c104cb59936","message":"add verbose debug option","stats":{"files_changed":3,"insertions":15,"deletions":7,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":17},{"name":"setup.py","lines_changed":2}]}},{"commit":"d20b795137036f8b889eb231cb4f14b756ec6479","message":"Merge pull request #70 from kellyjonbrazil/dev"},{"commit":"8a134065dff429551449c1ea16a36d745fdab580","message":"update fixtures for last chain fix","stats":{"files_changed":12,"insertions":12,"deletions":12,"files":["tests/fixtures/centos-7.7/iptables-filter-line-numbers.json","tests/fixtures/centos-7.7/iptables-filter-nv.json","tests/fixtures/centos-7.7/iptables-filter.json","tests/fixtures/centos-7.7/iptables-mangle.json","tests/fixtures/centos-7.7/iptables-nat.json","tests/fixtures/centos-7.7/iptables-raw.json","tests/fixtures/ubuntu-18.04/iptables-filter-line-numbers.json","tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","tests/fixtures/ubuntu-18.04/iptables-filter.json","tests/fixtures/ubuntu-18.04/iptables-mangle.json","tests/fixtures/ubuntu-18.04/iptables-nat.json","tests/fixtures/ubuntu-18.04/iptables-raw.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/iptables-filter-line-numbers.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-filter-nv.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-filter.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-mangle.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-nat.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-raw.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter-line-numbers.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-mangle.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-nat.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-raw.json","lines_changed":2}]}},{"commit":"22aee1bfa40ed1d3c4df28cd934ef0edfc5c458c","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"b282820fd67dcc96c058198f97b066e7b402d1f3","message":"fix to include the final chain in output","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":3}]}},{"commit":"3ee098306daf903687cb0febf92773a81e216111","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":2}]}},{"commit":"09e8f379a64b3b37bb99b4291c10aa4a5cdedea4","message":"iptables code optimizations","stats":{"files_changed":1,"insertions":9,"deletions":11,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":20}]}},{"commit":"69018cdb3a77fcdcb5648e3b89933148c55a6412","message":"fix date","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]}},{"commit":"d0d7254c6acc7be4341618d231a5b166f640b287","message":"add docstring","stats":{"files_changed":2,"insertions":26,"deletions":0,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":15},{"name":"jc/utils.py","lines_changed":11}]}},{"commit":"cc0f0971d76b6f3dec8d989e83f5676db8f2c6d9","message":"Improve and standardize empty data check for all parsers","stats":{"files_changed":56,"insertions":476,"deletions":439,"files":["changelog.txt","jc/cli.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/utils.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":10},{"name":"jc/parsers/airport_s.py","lines_changed":4},{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/blkid.py","lines_changed":5},{"name":"jc/parsers/crontab.py","lines_changed":5},{"name":"jc/parsers/crontab_u.py","lines_changed":5},{"name":"jc/parsers/csv.py","lines_changed":5},{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":193},{"name":"jc/parsers/dmidecode.py","lines_changed":264},{"name":"jc/parsers/du.py","lines_changed":8},{"name":"jc/parsers/env.py","lines_changed":8},{"name":"jc/parsers/file.py","lines_changed":39},{"name":"jc/parsers/foo.py","lines_changed":8},{"name":"jc/parsers/free.py","lines_changed":5},{"name":"jc/parsers/fstab.py","lines_changed":5},{"name":"jc/parsers/group.py","lines_changed":5},{"name":"jc/parsers/gshadow.py","lines_changed":5},{"name":"jc/parsers/history.py","lines_changed":26},{"name":"jc/parsers/hosts.py","lines_changed":8},{"name":"jc/parsers/id.py","lines_changed":8},{"name":"jc/parsers/ifconfig.py","lines_changed":18},{"name":"jc/parsers/ini.py","lines_changed":5},{"name":"jc/parsers/iptables.py","lines_changed":44},{"name":"jc/parsers/jobs.py","lines_changed":8},{"name":"jc/parsers/last.py","lines_changed":8},{"name":"jc/parsers/ls.py","lines_changed":5},{"name":"jc/parsers/lsblk.py","lines_changed":8},{"name":"jc/parsers/lsmod.py","lines_changed":5},{"name":"jc/parsers/lsof.py","lines_changed":9},{"name":"jc/parsers/mount.py","lines_changed":9},{"name":"jc/parsers/netstat.py","lines_changed":8},{"name":"jc/parsers/ntpq.py","lines_changed":5},{"name":"jc/parsers/passwd.py","lines_changed":8},{"name":"jc/parsers/pip_list.py","lines_changed":9},{"name":"jc/parsers/pip_show.py","lines_changed":9},{"name":"jc/parsers/ps.py","lines_changed":6},{"name":"jc/parsers/route.py","lines_changed":6},{"name":"jc/parsers/shadow.py","lines_changed":8},{"name":"jc/parsers/ss.py","lines_changed":8},{"name":"jc/parsers/stat.py","lines_changed":7},{"name":"jc/parsers/systemctl.py","lines_changed":8},{"name":"jc/parsers/systemctl_lj.py","lines_changed":8},{"name":"jc/parsers/systemctl_ls.py","lines_changed":8},{"name":"jc/parsers/systemctl_luf.py","lines_changed":8},{"name":"jc/parsers/timedatectl.py","lines_changed":14},{"name":"jc/parsers/uname.py","lines_changed":6},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/w.py","lines_changed":5},{"name":"jc/parsers/who.py","lines_changed":8},{"name":"jc/parsers/xml.py","lines_changed":5},{"name":"jc/parsers/yaml.py","lines_changed":11},{"name":"jc/utils.py","lines_changed":4},{"name":"setup.py","lines_changed":2}]}},{"commit":"2af61730f0f5b9bc6f1f4c5d9d808ff6ccb0faeb","message":"Merge pull request #68 from kellyjonbrazil/dev"},{"commit":"83f41b83dc01c462c6a2295e9fc56ad42a3b62f4","message":"version bump","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"1fb84fce88e0306c26a5771fa4c6dc14a21409a1","message":"fix for no data","stats":{"files_changed":16,"insertions":137,"deletions":67,"files":["changelog.txt","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/xml.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py","tests/test_timedatectl.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py","tests/test_who.py","tests/test_xml.py","tests/test_yaml.py"],"file_stats":[{"name":"changelog.txt","lines_changed":5},{"name":"jc/parsers/systemctl_lj.py","lines_changed":3},{"name":"jc/parsers/systemctl_ls.py","lines_changed":33},{"name":"jc/parsers/systemctl_luf.py","lines_changed":35},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/w.py","lines_changed":63},{"name":"jc/parsers/xml.py","lines_changed":6},{"name":"tests/test_systemctl_ls.py","lines_changed":6},{"name":"tests/test_systemctl_luf.py","lines_changed":6},{"name":"tests/test_timedatectl.py","lines_changed":6},{"name":"tests/test_uname.py","lines_changed":6},{"name":"tests/test_uptime.py","lines_changed":6},{"name":"tests/test_w.py","lines_changed":6},{"name":"tests/test_who.py","lines_changed":6},{"name":"tests/test_xml.py","lines_changed":6},{"name":"tests/test_yaml.py","lines_changed":6}]}},{"commit":"a8837e12447c52dbe438b19c07777b9b4a22081c","message":"remove --upgrade from pip install","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"04d2eec5581998d1a80e762b670af76c92111065","message":"fix for no data","stats":{"files_changed":6,"insertions":56,"deletions":30,"files":["changelog.txt","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","tests/test_stat.py","tests/test_systemctl.py","tests/test_systemctl_lj.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":33},{"name":"jc/parsers/systemctl_lj.py","lines_changed":33},{"name":"tests/test_stat.py","lines_changed":6},{"name":"tests/test_systemctl.py","lines_changed":6},{"name":"tests/test_systemctl_lj.py","lines_changed":6}]}},{"commit":"1b57ec92f052ddc8959540511512190a539262b7","message":"fix for no data","stats":{"files_changed":21,"insertions":152,"deletions":68,"files":["changelog.txt","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/pip_list.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","tests/fixtures/centos-7.7/ss-sudo-a.json","tests/fixtures/ubuntu-18.04/ss-sudo-a.json","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_ntpq.py","tests/test_passwd.py","tests/test_pip_list.py","tests/test_pip_show.py","tests/test_ps.py","tests/test_route.py","tests/test_shadow.py","tests/test_ss.py"],"file_stats":[{"name":"changelog.txt","lines_changed":8},{"name":"jc/parsers/mount.py","lines_changed":3},{"name":"jc/parsers/netstat.py","lines_changed":41},{"name":"jc/parsers/ntpq.py","lines_changed":35},{"name":"jc/parsers/pip_list.py","lines_changed":31},{"name":"jc/parsers/ps.py","lines_changed":9},{"name":"jc/parsers/route.py","lines_changed":9},{"name":"jc/parsers/ss.py","lines_changed":14},{"name":"tests/fixtures/centos-7.7/ss-sudo-a.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ss-sudo-a.json","lines_changed":2},{"name":"tests/test_lsof.py","lines_changed":6},{"name":"tests/test_mount.py","lines_changed":6},{"name":"tests/test_netstat.py","lines_changed":6},{"name":"tests/test_ntpq.py","lines_changed":6},{"name":"tests/test_passwd.py","lines_changed":6},{"name":"tests/test_pip_list.py","lines_changed":6},{"name":"tests/test_pip_show.py","lines_changed":6},{"name":"tests/test_ps.py","lines_changed":6},{"name":"tests/test_route.py","lines_changed":6},{"name":"tests/test_shadow.py","lines_changed":6},{"name":"tests/test_ss.py","lines_changed":6}]}},{"commit":"4d8859540417e99e273fda2cea959240f3c37ea3","message":"enhance empty data check","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":2}]}},{"commit":"52b1272a3aab09b5a8c4a277fbf9975a1b8b6921","message":"enhance empty data check","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":2}]}},{"commit":"d2ccad6a83138fbf6eb863634fd354dc6c3fa238","message":"fix for no data","stats":{"files_changed":4,"insertions":33,"deletions":15,"files":["jc/parsers/lsblk.py","jc/parsers/lsmod.py","tests/test_lsblk.py","tests/test_lsmod.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":21},{"name":"jc/parsers/lsmod.py","lines_changed":15},{"name":"tests/test_lsblk.py","lines_changed":6},{"name":"tests/test_lsmod.py","lines_changed":6}]}},{"commit":"cad6dde4ac66cf970a7f52d8e7958ea35c083629","message":"fix for no data","stats":{"files_changed":10,"insertions":60,"deletions":0,"files":["tests/test_group.py","tests/test_gshadow.py","tests/test_history.py","tests/test_hosts.py","tests/test_id.py","tests/test_ifconfig.py","tests/test_ini.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_last.py"],"file_stats":[{"name":"tests/test_group.py","lines_changed":6},{"name":"tests/test_gshadow.py","lines_changed":6},{"name":"tests/test_history.py","lines_changed":6},{"name":"tests/test_hosts.py","lines_changed":6},{"name":"tests/test_id.py","lines_changed":6},{"name":"tests/test_ifconfig.py","lines_changed":6},{"name":"tests/test_ini.py","lines_changed":6},{"name":"tests/test_iptables.py","lines_changed":6},{"name":"tests/test_jobs.py","lines_changed":6},{"name":"tests/test_last.py","lines_changed":6}]}},{"commit":"06811c3539b0d871e13e9b8d3b51f731d06fd2ce","message":"add test for no data","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_fstab.py"],"file_stats":[{"name":"tests/test_fstab.py","lines_changed":6}]}},{"commit":"0cb23c2b21f464082609409261de8e95eb1b0d55","message":"add fix for no data","stats":{"files_changed":3,"insertions":17,"deletions":7,"files":["changelog.txt","jc/parsers/free.py","tests/test_free.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/free.py","lines_changed":17},{"name":"tests/test_free.py","lines_changed":6}]}},{"commit":"ac4688dca22334385ec2c87027f2f14f9ca93ce4","message":"add test for no data","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_file.py"],"file_stats":[{"name":"tests/test_file.py","lines_changed":6}]}},{"commit":"326c3b4670a0e47cbe2988b38fb1c1b26a4db890","message":"add test for no data","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_env.py"],"file_stats":[{"name":"tests/test_env.py","lines_changed":6}]}},{"commit":"9b29d0c2688eda2e4707aeba693ed14fa433a706","message":"add test for no data","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_du.py"],"file_stats":[{"name":"tests/test_du.py","lines_changed":6}]}},{"commit":"e0013c38710b4ecf3a588a16d1d908effc23b485","message":"add test for no data","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["tests/test_dmidecode.py"],"file_stats":[{"name":"tests/test_dmidecode.py","lines_changed":5}]}},{"commit":"a75744075b0628bdb711d8a929a759b4b4067edb","message":"add no data test","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_dig.py"],"file_stats":[{"name":"tests/test_dig.py","lines_changed":6}]}},{"commit":"525aec1a02380f17ab7827434616f981f7457bd0","message":"fix for no data","stats":{"files_changed":3,"insertions":16,"deletions":7,"files":["changelog.txt","jc/parsers/df.py","tests/test_df.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":16},{"name":"tests/test_df.py","lines_changed":6}]}},{"commit":"0bf9a7a072a80e10a29c6bb3943b107352dc1d45","message":"add test for no data","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_csv.py"],"file_stats":[{"name":"tests/test_csv.py","lines_changed":6}]}},{"commit":"d8f2f4c95bc699386b9fe93d10e13637875a1dcf","message":"fix for no data","stats":{"files_changed":5,"insertions":96,"deletions":80,"files":["changelog.txt","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/test_crontab.py","tests/test_crontab_u.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":79},{"name":"jc/parsers/crontab_u.py","lines_changed":83},{"name":"tests/test_crontab.py","lines_changed":6},{"name":"tests/test_crontab_u.py","lines_changed":6}]}},{"commit":"35d733b44f3705bed3dd8ce340379470f199f772","message":"fix for no data","stats":{"files_changed":5,"insertions":70,"deletions":60,"files":["changelog.txt","jc/parsers/arp.py","jc/parsers/blkid.py","tests/test_arp.py","tests/test_blkid.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":112},{"name":"jc/parsers/blkid.py","lines_changed":4},{"name":"tests/test_arp.py","lines_changed":6},{"name":"tests/test_blkid.py","lines_changed":6}]}},{"commit":"9179b4175c5063bed14ecb96ba24c517920c0d94","message":"add nodata tests","stats":{"files_changed":3,"insertions":16,"deletions":0,"files":["changelog.txt","tests/test_airport.py","tests/test_airport_s.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"tests/test_airport.py","lines_changed":6},{"name":"tests/test_airport_s.py","lines_changed":6}]}},{"commit":"bb07d78c78ff5c5b2ee4d2086ffc6dd5ebedf0fb","message":"add nodata fix","stats":{"files_changed":1,"insertions":10,"deletions":8,"files":["jc/parsers/airport_s.py"],"file_stats":[{"name":"jc/parsers/airport_s.py","lines_changed":18}]}},{"commit":"07b179cd7f8853ff6aca0b27a703e198c158ca72","message":"Merge pull request #67 from kellyjonbrazil/Dev"},{"commit":"054422d8373e7b8def18ddabd447062cb9cc3137","message":"add test for empty directory","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_ls.py"],"file_stats":[{"name":"tests/test_ls.py","lines_changed":6}]}},{"commit":"3e052d18102e98a09cbba21866855691eaccc216","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"c8e72805cf9def478b56c925f4afcc0ece1daac0","message":"fix error on empty directory","stats":{"files_changed":1,"insertions":9,"deletions":10,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":19}]}},{"commit":"12a80e7db0f6c7d536674ad8d34e26bba9a1f1f9","message":"add fedora package info","stats":{"files_changed":1,"insertions":10,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":12}]}},{"commit":"ee7ff9a09d3373f60ae1645376ccc0057803147e","message":"Merge pull request #66 from kellyjonbrazil/dev"},{"commit":"f6478fb636ead8d1e53e4a88d59e55222df37a8f","message":"version bump","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"811a0b0495819925199d70db266066197cc6824e","message":"add info regarding the local parser plugin files","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"aeb48edf727f23cc4f8fd9b760cfb69f03098278","message":"use $LOCALAPPDATA variable for windows","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"b1e94f0df7041bcae97455508f423178aef9d61d","message":"heading formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"60050e3c0fe34980f7db5b8bd46430f953f0c3a3","message":"fix linux/unix directory and add note about the XDG specification followed","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":26}]}},{"commit":"39ef09aa5b0d43b5128299511afe80336aa38203","message":"add local parser plugin feature","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]}},{"commit":"8377d4311611c242e16eaebe66dafac9529150d4","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"54e4c447ab34ae54c73c92df40f1b4ca6ffb2277","message":"clean up formatting","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":10}]}},{"commit":"937a9fa9cf2ede8e686ba853989f33e4a483a0ad","message":"vendorize appdirs module","stats":{"files_changed":4,"insertions":613,"deletions":3,"files":["jc/appdirs.py","jc/cli.py","requirements.txt","setup.py"],"file_stats":[{"name":"jc/appdirs.py","lines_changed":611},{"name":"jc/cli.py","lines_changed":3},{"name":"requirements.txt","lines_changed":1},{"name":"setup.py","lines_changed":1}]}},{"commit":"808ff6cf0e784cf0c2d523ff2e01197cb6e88c82","message":"more acknowledgments updates","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":12}]}},{"commit":"7f5c649a95a871c3cd8d48731a6d26dcba6f725b","message":"update acknowledgments","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"b72727dec995de1ca5f68ee17a710b086c87d612","message":"update custom parsers info","stats":{"files_changed":1,"insertions":9,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":11}]}},{"commit":"3fc88bfb334143b68a9cb78d4034f33e7c0bcf76","message":"Merge pull request #65 from duelafn/local-parsers"},{"commit":"9f2279d5867eb89d4b4b7b4ffca290166ec97c48","message":"Load custom parsers from /jc/jcparsers","stats":{"files_changed":4,"insertions":29,"deletions":2,"files":["README.md","jc/cli.py","requirements.txt","setup.py"],"file_stats":[{"name":"README.md","lines_changed":7},{"name":"jc/cli.py","lines_changed":22},{"name":"requirements.txt","lines_changed":1},{"name":"setup.py","lines_changed":1}]}},{"commit":"346a14cb9bb0d762fc3fa366ad97e5ff85f3992a","message":"change osx_device to unix_device","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]}},{"commit":"dac00d17ff9f3d2bb959697b6e567015bfc2702b","message":"add nixos test","stats":{"files_changed":3,"insertions":17,"deletions":0,"files":["tests/fixtures/nixos/route-ee.json","tests/fixtures/nixos/route-ee.out","tests/test_route.py"],"file_stats":[{"name":"tests/fixtures/nixos/route-ee.json","lines_changed":1},{"name":"tests/fixtures/nixos/route-ee.out","lines_changed":4},{"name":"tests/test_route.py","lines_changed":12}]}},{"commit":"9ca7cd40601b97829e8f88071fdfb928d939f7e5","message":"update docs","stats":{"files_changed":1,"insertions":17,"deletions":34,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":51}]}},{"commit":"aa31628970b12295a41dff20e829fcce9f8a4d07","message":"update docs","stats":{"files_changed":5,"insertions":70,"deletions":63,"files":["README.md","docs/parsers/netstat.md","docs/parsers/route.md","docs/parsers/stat.md","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":46},{"name":"docs/parsers/netstat.md","lines_changed":16},{"name":"docs/parsers/route.md","lines_changed":51},{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":16}]}},{"commit":"bed694fcf5c8c31bbd4f3e88759fe7ab82382d24","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"4b4af69fa184896ec15b5be7dc8416f36f921d5e","message":"fix date","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]}},{"commit":"9d96190a5b19e8d71c3ac66eb0303d269dd4ce5d","message":"Merge pull request #64 from kellyjonbrazil/dev"},{"commit":"fa44d48c094a55e499c2c780d109bf277736b42e","message":"freebsd fixes, tests, and fixtures","stats":{"files_changed":6,"insertions":129,"deletions":7,"files":["changelog.txt","jc/parsers/stat.py","tests/fixtures/freebsd12/stat.json","tests/fixtures/freebsd12/stat.out","tests/fixtures/osx-10.14.6/stat.json","tests/test_stat.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":12},{"name":"tests/fixtures/freebsd12/stat.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/stat.out","lines_changed":107},{"name":"tests/fixtures/osx-10.14.6/stat.json","lines_changed":2},{"name":"tests/test_stat.py","lines_changed":12}]}},{"commit":"4ef961c2788c935b1fea1c9777b976e7b89e7367","message":"add freebsd test and fixtures","stats":{"files_changed":3,"insertions":20,"deletions":0,"files":["tests/fixtures/freebsd12/ntpq-p.json","tests/fixtures/freebsd12/ntpq-p.out","tests/test_ntpq.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/ntpq-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ntpq-p.out","lines_changed":7},{"name":"tests/test_ntpq.py","lines_changed":12}]}},{"commit":"292a837d5c47165ccb155f079b0a114b5c17a98e","message":"add tests and fixtures for freebsd12","stats":{"files_changed":3,"insertions":22,"deletions":0,"files":["tests/fixtures/freebsd12/last.json","tests/fixtures/freebsd12/last.out","tests/test_last.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/last.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/last.out","lines_changed":9},{"name":"tests/test_last.py","lines_changed":12}]}},{"commit":"aa7b915d847dbd29d2c09b2cc40b847e37174ffb","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":2}]}},{"commit":"c46fe73236b912d2ee89dfb36ff259fe95fd0479","message":"add last fixes for freebsd","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]}},{"commit":"039b2c129cbe79d2d23b1194b043d8b730609956","message":"freebsd fixes","stats":{"files_changed":1,"insertions":10,"deletions":1,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":11}]}},{"commit":"8f2e5e4808b30c658a4cb87125639e4d7d6c15d8","message":"fix compatible logic","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]}},{"commit":"c4da8e4f78e6b4aaa4aff76ae042be9aaec832a7","message":"add nixos and freebsd to tested. update new arp fields","stats":{"files_changed":1,"insertions":9,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":12}]}},{"commit":"bcab9078a4c2bfd6ae4dca9448b577d9ed0fc01c","message":"add w parser fix","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]}},{"commit":"b3c6c1ea925bf7cd76368f5074fb8af52a844522","message":"strip whitespace in string fields and add tests","stats":{"files_changed":4,"insertions":29,"deletions":5,"files":["jc/parsers/w.py","tests/fixtures/nixos/w.json","tests/fixtures/nixos/w.out","tests/test_w.py"],"file_stats":[{"name":"jc/parsers/w.py","lines_changed":8},{"name":"tests/fixtures/nixos/w.json","lines_changed":1},{"name":"tests/fixtures/nixos/w.out","lines_changed":5},{"name":"tests/test_w.py","lines_changed":20}]}},{"commit":"a3af8662bd491e344c93d24afabd23e90efd8086","message":"add permanent field","stats":{"files_changed":3,"insertions":205,"deletions":3,"files":["tests/fixtures/osx-10.11.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a2.json"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/arp-a.json","lines_changed":107},{"name":"tests/fixtures/osx-10.14.6/arp-a.json","lines_changed":99},{"name":"tests/fixtures/osx-10.14.6/arp-a2.json","lines_changed":2}]}},{"commit":"35940d0bc80bf61b11f40b1e1043835f26eb391c","message":"add freebsd permanent and expires fields","stats":{"files_changed":6,"insertions":59,"deletions":4,"files":["changelog.txt","docs/parsers/arp.md","jc/parsers/arp.py","tests/fixtures/freebsd12/arp-a.json","tests/fixtures/freebsd12/arp-a.out","tests/test_arp.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":12},{"name":"jc/parsers/arp.py","lines_changed":33},{"name":"tests/fixtures/freebsd12/arp-a.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/arp-a.out","lines_changed":3},{"name":"tests/test_arp.py","lines_changed":12}]}},{"commit":"26994cdcb7148d2c9d1701bca9541d247356260b","message":"add freebsd compatibility info","stats":{"files_changed":8,"insertions":115,"deletions":85,"files":["docs/parsers/df.md","docs/parsers/fstab.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/route.md","docs/parsers/stat.md","docs/parsers/uname.md"],"file_stats":[{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":163},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":25},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2}]}},{"commit":"017159a829691cb6a7174f123d024eb252179b75","message":"add freebsd nestat tests and fixtures","stats":{"files_changed":15,"insertions":221,"deletions":0,"files":["tests/fixtures/freebsd12/netstat-Aa.json","tests/fixtures/freebsd12/netstat-AaT.json","tests/fixtures/freebsd12/netstat-AaT.out","tests/fixtures/freebsd12/netstat-AanP.json","tests/fixtures/freebsd12/netstat-AanP.out","tests/fixtures/freebsd12/netstat-Aax.json","tests/fixtures/freebsd12/netstat-Aax.out","tests/fixtures/freebsd12/netstat-aT.json","tests/fixtures/freebsd12/netstat-aT.out","tests/fixtures/freebsd12/netstat-an.json","tests/fixtures/freebsd12/netstat-i.json","tests/fixtures/freebsd12/netstat-ib.json","tests/fixtures/freebsd12/netstat-ib.out","tests/fixtures/freebsd12/netstat-r.json","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/netstat-Aa.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-AaT.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-AaT.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-AanP.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-AanP.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-Aax.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-Aax.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-aT.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-aT.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-an.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-i.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-ib.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-ib.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/netstat-r.json","lines_changed":1},{"name":"tests/test_netstat.py","lines_changed":108}]}},{"commit":"b4e9c85e08d199dad67f03c7603194278a022696","message":"fixup -T freebsd output and add whitespace stripping to parse_post","stats":{"files_changed":1,"insertions":12,"deletions":0,"files":["jc/parsers/netstat_freebsd_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_freebsd_osx.py","lines_changed":12}]}},{"commit":"189146cd84cfad262f2b2601bb0cb4b9dde2587e","message":"add more ints. remove whitespace strip code and move to freebsd_osx module","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":10}]}},{"commit":"af34153ffab10ca1ad7f44736d379d91ae43c813","message":"version bump","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["changelog.txt","jc/cli.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"bf2ff3ffbb639446779b1f04f2997707d99c0a1f","message":"fix compatibility search for platform names that append the version number (e.g. freebsd12)","stats":{"files_changed":1,"insertions":8,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":9}]}},{"commit":"6423c9efd69e938af38934a97ca6b65009e8f07e","message":"integer and float updates","stats":{"files_changed":1,"insertions":34,"deletions":5,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":39}]}},{"commit":"58ab0d4ece7f006ce9431afb9e0fecbe60930be7","message":"strip whitespace from string fields","stats":{"files_changed":4,"insertions":12,"deletions":4,"files":["changelog.txt","jc/parsers/netstat.py","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":11},{"name":"tests/fixtures/osx-10.14.6/netstat-An.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat.json","lines_changed":2}]}},{"commit":"83a738bf4d756036d6269b9153220d7f1018ac9c","message":"update fixtures for osx_flags and osx_inode name change to unix_flags and unix_inode","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/netstat-Abn.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-An.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat.json","lines_changed":2}]}},{"commit":"3640671fc6a67c9628fd47e19e9fe0a0738439ce","message":"rename module","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/{netstat_osx.py => netstat_freebsd_osx.py}"],"file_stats":[{"name":"jc/parsers/{netstat_osx.py => netstat_freebsd_osx.py}","lines_changed":10}]}},{"commit":"1da623b30ef6f9b12ac231518d2d4e7dadcf717b","message":"add items","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":9}]}},{"commit":"b10ca64646e93d9797182ea046f4956a17b37627","message":"change osx_inode and osx_flags to unix_inode and unix_flags. Also rename netstat_osx module to netstat_freebsd_osx","stats":{"files_changed":1,"insertions":71,"deletions":71,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":142}]}},{"commit":"2128763ee67a07da6ebf123abeec39794bc1f4e2","message":"fix osx version from 16.4 to 14.6","stats":{"files_changed":1,"insertions":12,"deletions":12,"files":["tests/test_netstat.py"],"file_stats":[{"name":"tests/test_netstat.py","lines_changed":24}]}},{"commit":"a27e7ed39c63c04cfa78caceaada42f7a9496a2c","message":"test updates for added route_flags_pretty and flags_pretty fields","stats":{"files_changed":12,"insertions":12,"deletions":12,"files":["tests/fixtures/centos-7.7/netstat-r.json","tests/fixtures/centos-7.7/netstat-rne.json","tests/fixtures/centos-7.7/netstat-rnee.json","tests/fixtures/centos-7.7/route-vn.json","tests/fixtures/centos-7.7/route.json","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-rnl.json","tests/fixtures/ubuntu-18.04/netstat-r.json","tests/fixtures/ubuntu-18.04/netstat-rne.json","tests/fixtures/ubuntu-18.04/netstat-rnee.json","tests/fixtures/ubuntu-18.04/route-vn.json","tests/fixtures/ubuntu-18.04/route.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/netstat-r.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/netstat-rne.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/netstat-rnee.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/route-vn.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/route.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-r.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-rnl.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/netstat-r.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/netstat-rne.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/netstat-rnee.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/route-vn.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/route.json","lines_changed":2}]}},{"commit":"f07b7eaa474eb87dbdbc7fbe41b9386feff7bee2","message":"add flags_pretty","stats":{"files_changed":1,"insertions":38,"deletions":12,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":50}]}},{"commit":"6ce18de84ce16a926f9cd97c3210ef209c3352da","message":"add route_flags_pretty","stats":{"files_changed":3,"insertions":130,"deletions":69,"files":["jc/parsers/netstat.py","jc/parsers/netstat_linux.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":139},{"name":"jc/parsers/netstat_linux.py","lines_changed":23},{"name":"jc/parsers/netstat_osx.py","lines_changed":37}]}},{"commit":"8631b756e7ab8cd71c2a3eb288e2d1823cec5782","message":"add freebsd test files","stats":{"files_changed":4,"insertions":76,"deletions":0,"files":["tests/fixtures/freebsd12/netstat-Aa.out","tests/fixtures/freebsd12/netstat-an.out","tests/fixtures/freebsd12/netstat-i.out","tests/fixtures/freebsd12/netstat-r.out"],"file_stats":[{"name":"tests/fixtures/freebsd12/netstat-Aa.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-an.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-i.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/netstat-r.out","lines_changed":20}]}},{"commit":"7414d984125300164a5b6156d7a80128d4d6cb15","message":"add freebsd compatibility","stats":{"files_changed":6,"insertions":18,"deletions":18,"files":["jc/parsers/df.py","jc/parsers/fstab.py","jc/parsers/mount.py","jc/parsers/ntpq.py","jc/parsers/stat.py","jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":6},{"name":"jc/parsers/fstab.py","lines_changed":6},{"name":"jc/parsers/mount.py","lines_changed":6},{"name":"jc/parsers/ntpq.py","lines_changed":6},{"name":"jc/parsers/stat.py","lines_changed":6},{"name":"jc/parsers/uname.py","lines_changed":6}]}},{"commit":"d7b19892e8fb11e17fcbadcdbb08d49897d7754f","message":"add freebsd support for netstat -i","stats":{"files_changed":2,"insertions":10,"deletions":7,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":13},{"name":"jc/parsers/netstat_osx.py","lines_changed":4}]}},{"commit":"96df396eaf4e030113005a95e525d644c394dfe1","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"2f6f640317da5af894f34f187c4243ef0c599d07","message":"spelling","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"c4a0a50f3a3ac5833ab5d2f8a0cb3f18da335812","message":"add nix-env","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]}},{"commit":"658f8a3842273cea049689b3aea15d89a7294b24","message":"add zypper and ports info","stats":{"files_changed":1,"insertions":10,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":13}]}},{"commit":"bfb876a1e394ff63c6773965ba0b65da4e109c1b","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]}},{"commit":"90c34b1f4ee2d9ec8125346bb90b227f76ada2ba","message":"fix dmidecode example","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]}},{"commit":"3f9164ea77ec41e1b0671d0a642900d8e36faf9b","message":"bold formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"7fd6fecbf5a08b1f13aa7e906e94be9bc126780a","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"8029f72363a4d19938df07603f03a0147f6246a8","message":"change osx_flags from integer to string","stats":{"files_changed":6,"insertions":10,"deletions":7,"files":["changelog.txt","docs/parsers/stat.md","jc/cli.py","jc/parsers/stat.py","setup.py","tests/fixtures/osx-10.14.6/stat.json"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":6},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/stat.json","lines_changed":2}]}},{"commit":"c7fdce5d3b7566a7d290627767c47d9c196e02ad","message":"Merge pull request #62 from kellyjonbrazil/dev"},{"commit":"84f48aa369a458f534523ecc1e3aaaf403d06f1c","message":"version bump","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"2e9a0a9c1221dd01bd683ecbc4871d03738da671","message":"add features","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]}},{"commit":"c1f6f2b9508e558ab88b4a0a61e93a6cf5460bea","message":"osx fixes and tests","stats":{"files_changed":5,"insertions":116,"deletions":4,"files":["docs/parsers/stat.md","jc/parsers/stat.py","tests/fixtures/osx-10.14.6/stat.json","tests/fixtures/osx-10.14.6/stat.out","tests/test_stat.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":8},{"name":"jc/parsers/stat.py","lines_changed":5},{"name":"tests/fixtures/osx-10.14.6/stat.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/stat.out","lines_changed":94},{"name":"tests/test_stat.py","lines_changed":12}]}},{"commit":"ede21bca13c4b46899721f01d979c8b063f861a3","message":"add OSX support for stat","stats":{"files_changed":1,"insertions":110,"deletions":78,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":188}]}},{"commit":"8dd9a9f9cbc70a19176f909f6ac76b2bcf670736","message":"add netstat -i tests","stats":{"files_changed":5,"insertions":45,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-i.json","tests/fixtures/osx-10.14.6/netstat-i.json","tests/fixtures/ubuntu-18.04/netstat-i.json","tests/fixtures/ubuntu-18.04/netstat-i.out","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/netstat-i.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-i.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-i.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-i.out","lines_changed":4},{"name":"tests/test_netstat.py","lines_changed":38}]}},{"commit":"04f92cd1330759e4bad1c0304b9e1c28e8d32d59","message":"add linux support for netstat -i","stats":{"files_changed":5,"insertions":166,"deletions":4,"files":["README.md","docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_linux.py","tests/fixtures/centos-7.7/netstat-i.out"],"file_stats":[{"name":"README.md","lines_changed":32},{"name":"docs/parsers/netstat.md","lines_changed":50},{"name":"jc/parsers/netstat.py","lines_changed":44},{"name":"jc/parsers/netstat_linux.py","lines_changed":39},{"name":"tests/fixtures/centos-7.7/netstat-i.out","lines_changed":5}]}},{"commit":"8be8d2393b276a9249e1c573ce19cf630f0942fd","message":"add netstat -i support for OSX","stats":{"files_changed":3,"insertions":99,"deletions":3,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-i.out"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":19},{"name":"jc/parsers/netstat_osx.py","lines_changed":40},{"name":"tests/fixtures/osx-10.14.6/netstat-i.out","lines_changed":43}]}},{"commit":"0a879681be68fe2e6e5c013ab0fe18de99b04f7e","message":"add netstat -r to docs","stats":{"files_changed":3,"insertions":97,"deletions":282,"files":["README.md","docs/parsers/netstat.md","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":37},{"name":"docs/parsers/netstat.md","lines_changed":171},{"name":"jc/parsers/netstat.py","lines_changed":171}]}},{"commit":"2ca1587a49511899bf719e0b0c7de32158fc491d","message":"add linux netstat -r tests","stats":{"files_changed":10,"insertions":102,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-r.json","tests/fixtures/centos-7.7/netstat-rne.json","tests/fixtures/centos-7.7/netstat-rnee.json","tests/fixtures/ubuntu-18.04/netstat-r.json","tests/fixtures/ubuntu-18.04/netstat-r.out","tests/fixtures/ubuntu-18.04/netstat-rne.json","tests/fixtures/ubuntu-18.04/netstat-rne.out","tests/fixtures/ubuntu-18.04/netstat-rnee.json","tests/fixtures/ubuntu-18.04/netstat-rnee.out","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/netstat-r.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-rne.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-rnee.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-r.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-r.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/netstat-rne.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-rne.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/netstat-rnee.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-rnee.out","lines_changed":5},{"name":"tests/test_netstat.py","lines_changed":81}]}},{"commit":"ec2cd2d708a57c0458657416bedcb4340cb40901","message":"add netstat -r support for linux","stats":{"files_changed":9,"insertions":70,"deletions":11,"files":["docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_linux.py","jc/parsers/netstat_osx.py","tests/fixtures/centos-7.7/netstat-r.out","tests/fixtures/centos-7.7/netstat-rne.out","tests/fixtures/centos-7.7/netstat-rnee.out","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-rnl.json"],"file_stats":[{"name":"docs/parsers/netstat.md","lines_changed":11},{"name":"jc/parsers/netstat.py","lines_changed":13},{"name":"jc/parsers/netstat_linux.py","lines_changed":37},{"name":"jc/parsers/netstat_osx.py","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-r.out","lines_changed":5},{"name":"tests/fixtures/centos-7.7/netstat-rne.out","lines_changed":5},{"name":"tests/fixtures/centos-7.7/netstat-rnee.out","lines_changed":5},{"name":"tests/fixtures/osx-10.14.6/netstat-r.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-rnl.json","lines_changed":2}]}},{"commit":"5d0dbece9317e84a47d9f4b2d18a9ffa33fbee6e","message":"add netstat -r functionality for OSX","stats":{"files_changed":8,"insertions":288,"deletions":5,"files":["docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-r.out","tests/fixtures/osx-10.14.6/netstat-rnl.json","tests/fixtures/osx-10.14.6/netstat-rnl.out","tests/test_netstat.py"],"file_stats":[{"name":"docs/parsers/netstat.md","lines_changed":17},{"name":"jc/parsers/netstat.py","lines_changed":23},{"name":"jc/parsers/netstat_osx.py","lines_changed":37},{"name":"tests/fixtures/osx-10.14.6/netstat-r.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-r.out","lines_changed":93},{"name":"tests/fixtures/osx-10.14.6/netstat-rnl.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-rnl.out","lines_changed":96},{"name":"tests/test_netstat.py","lines_changed":25}]}},{"commit":"df1e4b414b2bda5be3153767cd854b2483ba600b","message":"remove unused folder","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":[".gitignore"],"file_stats":[{"name":".gitignore","lines_changed":1}]}},{"commit":"40760991e7dae43cd15134310f7bbb5ce0f58dae","message":"update copyright date","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["LICENSE.md"],"file_stats":[{"name":"LICENSE.md","lines_changed":2}]}},{"commit":"464f5f86cf2c8fe6a1a857b0ad4d221a3edf3d88","message":"update description","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"7b09e9fccdd4f09218a500b54c898ada1b9843c7","message":"set empty values to Null and update fixtures","stats":{"files_changed":5,"insertions":8,"deletions":5,"files":["docs/parsers/dmidecode.md","jc/parsers/dmidecode.py","tests/fixtures/centos-7.7/dmidecode.json","tests/fixtures/fedora32/dmidecode.json","tests/fixtures/ubuntu-18.04/dmidecode.json"],"file_stats":[{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":5},{"name":"tests/fixtures/centos-7.7/dmidecode.json","lines_changed":2},{"name":"tests/fixtures/fedora32/dmidecode.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dmidecode.json","lines_changed":2}]}},{"commit":"6cba7d429898d331c674c778f8bd85ba75a8dca9","message":"remove linux from description","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"9730f62e4970b5a4490f8dc24b6cfb9cacd0cbf2","message":"fixup name field and update test fixtures","stats":{"files_changed":5,"insertions":151,"deletions":133,"files":["jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json","tests/fixtures/osx-10.14.6/netstat.out"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":7},{"name":"tests/fixtures/osx-10.14.6/netstat-Abn.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-An.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat.out","lines_changed":271}]}},{"commit":"e0c1c87f549eee000b93b5f5a3e8d0b052eb7d32","message":"formatting","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":8}]}},{"commit":"931b3d2b836b251590497f4cfa65f106762086c1","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"e5d561baeecf1fd83a884b3cd9d322762f750dfb","message":"add multipath condition for osx detection","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":1}]}},{"commit":"2867593e7aa12299686e2c6aa0f2a79a9b550b53","message":"changelog update","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":6}]}},{"commit":"dd52fee5635c977d5c77046ab9fe78d2ed10deef","message":"osx netstat tests and fixtures","stats":{"files_changed":7,"insertions":2141,"deletions":0,"files":["tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-Abn.out","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat-An.out","tests/fixtures/osx-10.14.6/netstat.json","tests/fixtures/osx-10.14.6/netstat.out","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/netstat-Abn.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-Abn.out","lines_changed":689},{"name":"tests/fixtures/osx-10.14.6/netstat-An.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-An.out","lines_changed":689},{"name":"tests/fixtures/osx-10.14.6/netstat.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat.out","lines_changed":724},{"name":"tests/test_netstat.py","lines_changed":36}]}},{"commit":"8e1f8858273e671a882a07eae1c35b38f5298c94","message":"fix filtered netstat views","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":7}]}},{"commit":"2d39a58f902e6af77f8f96ffcd1d68b7cbadd56c","message":"doc update","stats":{"files_changed":4,"insertions":81,"deletions":14,"files":["README.md","docs/parsers/dmidecode.md","docs/parsers/netstat.md","jc/parsers/dmidecode.py"],"file_stats":[{"name":"README.md","lines_changed":67},{"name":"docs/parsers/dmidecode.md","lines_changed":4},{"name":"docs/parsers/netstat.md","lines_changed":20},{"name":"jc/parsers/dmidecode.py","lines_changed":4}]}},{"commit":"9c4fa2ae2601ca4880c0b078fa917f01f1392e0e","message":"integer conversions and icmp fix","stats":{"files_changed":2,"insertions":22,"deletions":2,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":21},{"name":"jc/parsers/netstat_osx.py","lines_changed":3}]}},{"commit":"de52d84e82df6d8c5e2416c6bc44e59c41c685da","message":"fix udp state and udp46 entries","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":17}]}},{"commit":"ce9b55059a28d363b8b0ae4f3ccbdbdc4bf4b58e","message":"organize files","stats":{"files_changed":2,"insertions":185,"deletions":167,"files":["jc/parsers/netstat.py","jc/parsers/netstat_linux.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":171},{"name":"jc/parsers/netstat_linux.py","lines_changed":181}]}},{"commit":"bcd370a6a01a115d470776f5690f8571d68d3930","message":"code cleanup","stats":{"files_changed":2,"insertions":5,"deletions":15,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":16},{"name":"jc/parsers/netstat_osx.py","lines_changed":4}]}},{"commit":"c8216850abd2d0b8cc6761453f853f296e8a28f3","message":"code cleanup","stats":{"files_changed":1,"insertions":19,"deletions":55,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":74}]}},{"commit":"f5feedb90b39e5c3f4564615482d47ccd145844f","message":"fix comments","stats":{"files_changed":1,"insertions":1,"deletions":10,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":11}]}},{"commit":"a4371cd187fe5077018edbfeee77eb17c6a90ad3","message":"support netstat -A","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":6}]}},{"commit":"9d5ba4c83404e4fab5c0f40c30b4735685499a31","message":"formatting","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":2}]}},{"commit":"1639dee1bb93f6f89e8bb7b37134dc1f561c479c","message":"fix parse_post","stats":{"files_changed":1,"insertions":10,"deletions":35,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":45}]}},{"commit":"9363f430f20951e6fa739f06c85c5b6b3421b60d","message":"use list extend method to simplify code","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":3}]}},{"commit":"9192a0907364c772558380be1373b8dcea972a6d","message":"parse all sections","stats":{"files_changed":1,"insertions":124,"deletions":34,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":158}]}},{"commit":"b915eb97556ccc5fc60e8d23f7298ffec2d8e3b7","message":"initial osx parser","stats":{"files_changed":2,"insertions":237,"deletions":55,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":118},{"name":"jc/parsers/netstat_osx.py","lines_changed":174}]}},{"commit":"1cfcc2b592f682d2b50a0c4188fa3ae832a6c682","message":"tighten up line test logic when counting tabs","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":2}]}},{"commit":"7138dd02b73073441a52c9b574bf0d6e02f0d7d9","message":"cleanup variables after adding to item","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":11}]}},{"commit":"b4276643b70f7820f8f53df22b32fffb54e30ca2","message":"add dmidecode tests and fixtures","stats":{"files_changed":4,"insertions":56,"deletions":0,"files":["tests/fixtures/centos-7.7/dmidecode.json","tests/fixtures/fedora32/dmidecode.json","tests/fixtures/ubuntu-18.04/dmidecode.json","tests/test_dmidecode.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/dmidecode.json","lines_changed":1},{"name":"tests/fixtures/fedora32/dmidecode.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dmidecode.json","lines_changed":1},{"name":"tests/test_dmidecode.py","lines_changed":53}]}},{"commit":"2ef00763bfe7c4348f30026759941efe39861a0c","message":"fix first item","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":4}]}},{"commit":"54364928fc826ead7774a4cec1bcb73a5cb9ee0f","message":"fix oddities like hybrid single/multiline data and items containing multiple records","stats":{"files_changed":2,"insertions":74,"deletions":81,"files":["docs/parsers/dmidecode.md","jc/parsers/dmidecode.py"],"file_stats":[{"name":"docs/parsers/dmidecode.md","lines_changed":37},{"name":"jc/parsers/dmidecode.py","lines_changed":118}]}},{"commit":"09b3b4932b0fa4a2b18c88a8465c15a194b727e6","message":"add dmidecode output fixtures","stats":{"files_changed":3,"insertions":35430,"deletions":0,"files":["tests/fixtures/centos-7.7/dmidecode.out","tests/fixtures/fedora32/dmidecode.out","tests/fixtures/ubuntu-18.04/dmidecode.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/dmidecode.out","lines_changed":11810},{"name":"tests/fixtures/fedora32/dmidecode.out","lines_changed":11810},{"name":"tests/fixtures/ubuntu-18.04/dmidecode.out","lines_changed":11810}]}},{"commit":"29d6670119d8fcd0344e90f01bfb6260aa936e50","message":"convert integers","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":10}]}},{"commit":"2f654b5f1acda01192294f4c18a5a31363e7f387","message":"doc update","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["docs/parsers/dmidecode.md"],"file_stats":[{"name":"docs/parsers/dmidecode.md","lines_changed":37}]}},{"commit":"e53b9f5992450b53efc886b4fa9ca16f3dd07530","message":"add caveats to documentation","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":37}]}},{"commit":"addb234e6162c58750cb67947bc4776635bf54fb","message":"add dmidecode doc","stats":{"files_changed":1,"insertions":153,"deletions":0,"files":["docs/parsers/dmidecode.md"],"file_stats":[{"name":"docs/parsers/dmidecode.md","lines_changed":153}]}},{"commit":"76eca3b65911a0a340d3d94322a8145ee89c50da","message":"add dmidecode","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":1}]}},{"commit":"f90dec4c0ecf88623fb22273b7527ec8884826c4","message":"add examples to documentation","stats":{"files_changed":1,"insertions":94,"deletions":5,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":99}]}},{"commit":"8900a59d4cb424ff58d1eb27f8fda7ea0a668a5c","message":"simplify logic by removing redundant block","stats":{"files_changed":1,"insertions":1,"deletions":19,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":20}]}},{"commit":"6685138200d5955115707d04aad0293ea8af5b15","message":"fix for missing multi-line values that come immediately after a previous multi-line value","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":2}]}},{"commit":"4d3e65b980d50164b8220e59560822b9871580ea","message":"fix missing values","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":5}]}},{"commit":"e9282bb546f560da6396f44e2ce9e04136348e2c","message":"add dmidecode parser","stats":{"files_changed":2,"insertions":175,"deletions":0,"files":["jc/cli.py","jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/dmidecode.py","lines_changed":174}]}},{"commit":"f5627a45947e5e76e5f3e64d9b30099fe0b962a2","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"81ffdb25105c681c8ed12336d220a102b7f4215e","message":"remove shebang for Fedora packaging","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]}},{"commit":"4c00a99850cb6f69713be7c6ad9ffba11924d9b8","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"2bfcb45b28e2174a8bbc27237e619b5c232ccae8","message":"make cli.py executable","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":0}]}},{"commit":"ab0c10e791283affb227d0d5306701ba7fd29d13","message":"remove execute permissions","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["LICENSE.md","README.md"],"file_stats":[{"name":"LICENSE.md","lines_changed":0},{"name":"README.md","lines_changed":0}]}},{"commit":"2c1935115de03a28fe92674b04b2542b0eccb8fe","message":"Merge pull request #61 from kellyjonbrazil/dev"},{"commit":"d98e43dc78205d3224bfc1e67de2da3c5fb7ea9a","message":"add netstat item","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]}},{"commit":"9348988d646d9b9c9970c19e84f311554ae38e7b","message":"add netstat test for Fedora32","stats":{"files_changed":1,"insertions":12,"deletions":0,"files":["tests/test_netstat.py"],"file_stats":[{"name":"tests/test_netstat.py","lines_changed":12}]}},{"commit":"1285c664679c40b18327c89b85921a80b01f0191","message":"netstat with bluetooth section","stats":{"files_changed":2,"insertions":140,"deletions":0,"files":["tests/fixtures/fedora32/netstat.json","tests/fixtures/fedora32/netstat.out"],"file_stats":[{"name":"tests/fixtures/fedora32/netstat.json","lines_changed":1},{"name":"tests/fixtures/fedora32/netstat.out","lines_changed":139}]}},{"commit":"b7191bbc130e0f33d02c0a4819fa91ffff1599d3","message":"handle bluetooth section (ignore for now)","stats":{"files_changed":1,"insertions":14,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":15}]}},{"commit":"98b97509f7893cb95e9651ce9706db5c961aa997","message":"version bump","stats":{"files_changed":3,"insertions":6,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"2b2b570490f3834367a598579473001f45738e8a","message":"add tests for 'gone - no logout'","stats":{"files_changed":3,"insertions":21,"deletions":0,"files":["tests/fixtures/fedora32/last.json","tests/fixtures/fedora32/last.out","tests/test_last.py"],"file_stats":[{"name":"tests/fixtures/fedora32/last.json","lines_changed":1},{"name":"tests/fixtures/fedora32/last.out","lines_changed":8},{"name":"tests/test_last.py","lines_changed":12}]}},{"commit":"cce2d1ff298f2284c43c4534144329f3533a81ad","message":"add condition for 'gone - no logout'","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":6}]}},{"commit":"b79600c57249cbb65805caad2524cc2492342be6","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]}},{"commit":"140f1a85437745296b56976bef1b46514e323a4f","message":"test fixes for issue #60","stats":{"files_changed":7,"insertions":7,"deletions":7,"files":["tests/fixtures/centos-7.7/ls-R-newlines.json","tests/fixtures/centos-7.7/ls-R.json","tests/fixtures/centos-7.7/ls-glob.json","tests/fixtures/osx-10.14.6/ls-glob.json","tests/fixtures/ubuntu-18.04/ls-R-newlines.json","tests/fixtures/ubuntu-18.04/ls-R.json","tests/fixtures/ubuntu-18.04/ls-glob.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ls-R-newlines.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ls-R.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ls-glob.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-glob.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ls-R-newlines.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ls-R.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ls-glob.json","lines_changed":2}]}},{"commit":"e34657cfde6816ab7a7415d83580df0a1d98a5a6","message":"fix issue #60 that was skipping the first file in some instances using -R without -l","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]}},{"commit":"99070fa6073c4415a6faf8ca69dd6aa089af4062","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"2b46785b1f1281ee63df9159e36068f4607ad9b8","message":"add MIT license to vendorized IfconfigParser class","stats":{"files_changed":1,"insertions":25,"deletions":3,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":28}]}},{"commit":"c72562524b2b9aaca0be372bb24343158829ba5a","message":"fully remove tests from packaging","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"b7dd6441c7e3f54f8a260fceef49aae6816c7151","message":"version bump","stats":{"files_changed":2,"insertions":5,"deletions":1,"files":["changelog.txt","jc/cli.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"31fcc2f755ad86622cf51a75879b14d44f246300","message":"remove manifest.in - no longer needed due to removing tests","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["MANIFEST.in"],"file_stats":[{"name":"MANIFEST.in","lines_changed":1}]}},{"commit":"b391aa14bceffedb5a9c13f3f908923790edefc1","message":"add license_file to metadata","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["setup.cfg"],"file_stats":[{"name":"setup.cfg","lines_changed":2}]}},{"commit":"d3c45debbb6690acd341fbcc9b99d1ae4cf0a43c","message":"remove tests and add license file","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":5}]}},{"commit":"5b08469b874553744bd5c5b1fa6581f4dcffacd0","message":"Merge pull request #57 from kellyjonbrazil/dev"},{"commit":"4a77ec63a46554c84e646d31564230774ed87431","message":"add IfconfigParser class","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["docs/parsers/ifconfig.md"],"file_stats":[{"name":"docs/parsers/ifconfig.md","lines_changed":11}]}},{"commit":"d13606b6dc2c207be6dea89a2c3e713c18a574b8","message":"modify dependencies for easier packaging into Fedora","stats":{"files_changed":4,"insertions":7,"deletions":6,"files":["changelog.txt","jc/cli.py","requirements.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"requirements.txt","lines_changed":3},{"name":"setup.py","lines_changed":5}]}},{"commit":"05291c93bba1aa364ba1ac7f2508e24bb362a814","message":"vendorize ifconfig-parser module for easier packaging in Fedora","stats":{"files_changed":1,"insertions":198,"deletions":3,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":201}]}},{"commit":"8cf00a208eb8493300331e7361b72e4f9e3f140e","message":"change text to strings","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"06d73c88767a5b4d6003231c897c447ee5e1faa5","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"649c646ea25ac7f89900cffa8919df01671bd32d","message":"add brew install option","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]}},{"commit":"b7756d92501a7b8ba8e77d77d9d3718a58425beb","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"1cd2cd954c21e5caec333507bd81819c82d45b49","message":"remove references to homebrew/shim to allow tests to pass in homebrew packaging ci/cd","stats":{"files_changed":4,"insertions":2,"deletions":16,"files":["tests/fixtures/osx-10.11.6/du.json","tests/fixtures/osx-10.11.6/du.out","tests/fixtures/osx-10.14.6/du.json","tests/fixtures/osx-10.14.6/du.out"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/du.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/du.out","lines_changed":7},{"name":"tests/fixtures/osx-10.14.6/du.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/du.out","lines_changed":7}]}},{"commit":"72020b8da999ddca6f9ba82da235c9f42e4f4273","message":"move packages info to jc-packages github page","stats":{"files_changed":1,"insertions":2,"deletions":22,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":24}]}},{"commit":"cf9720b749e7fc8caed0d2f1f2b1727a22a156b6","message":"update install info","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]}},{"commit":"967b9db7f90a3c3a0352edde7f4455c5f5d45b18","message":"spelling","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":6}]}},{"commit":"bb3acb1182f4d509f9ddc7dfcffa4578e0a2bd5e","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"560c7f7e6d1f8a69ab026ddbff753d232ca1d00b","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"79b28417644e00b933f531374d2f7fe8051e61be","message":"add new binary package install info","stats":{"files_changed":1,"insertions":26,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":26}]}},{"commit":"a06a89cbd11026aa3910fadd1eff7fe388d02507","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"431bd969eb4809424fe99a02a7decb98bce9ea51","message":"use sys.exit(0) instead of exit()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]}},{"commit":"c87b722aec6e6964c516bbb8e80667ad7d9c6bc7","message":"spelling","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"3688b8b014a1cf753b2207fbf3ebf0292c3fd672","message":"Merge pull request #56 from kellyjonbrazil/dev"},{"commit":"07b8d9e0c0d723d93e6c652f5b6156c467c451c7","message":"version bump","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"7454b53e395e9122c00d4cf06b1c2af109913d7a","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]}},{"commit":"3d6a76024de0f9dcf91a4ab49cabe461074114fb","message":"update with JC_COLORS info","stats":{"files_changed":1,"insertions":18,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":18}]}},{"commit":"421b9809575a8de00229af4b851739889638ac74","message":"JC_COLORS working","stats":{"files_changed":1,"insertions":18,"deletions":37,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":55}]}},{"commit":"4a22e27d6a80a988f4de17bce421110d6abb8867","message":"add set_env_colors function","stats":{"files_changed":1,"insertions":64,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":64}]}},{"commit":"99f7842dee0f79cf933fae185cf8b0ed7c8b210f","message":"fix brek on pipe error","stats":{"files_changed":3,"insertions":11,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":8},{"name":"setup.py","lines_changed":2}]}},{"commit":"7f869b4b187d70752207a7e74c13b858446f898f","message":"change colors to ansi and match jello style","stats":{"files_changed":3,"insertions":9,"deletions":11,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":15},{"name":"setup.py","lines_changed":2}]}},{"commit":"9665f4ee84680f3a8154b8a43ea668af2907782c","message":"add pypi badge","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]}},{"commit":"606904d48b1c7e0c19a940b5be0b564d1b5be6c8","message":"Merge pull request #53 from kellyjonbrazil/dev"},{"commit":"3f5279b97c386c736e0e2faa5c39d68ef89c46aa","message":"version bump to 1.10.1","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"f5ec21e6ac612566af93158fc3968b901322d04a","message":"use in instead of find()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_luf.py"],"file_stats":[{"name":"jc/parsers/systemctl_luf.py","lines_changed":4}]}},{"commit":"578a284465f014fe71ad6ac00bd41dc24ab2ced9","message":"use in instead of find()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_ls.py"],"file_stats":[{"name":"jc/parsers/systemctl_ls.py","lines_changed":4}]}},{"commit":"422e392d9d98a7864312fc7fbd7f45537b71acbe","message":"use in instead of find()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_lj.py"],"file_stats":[{"name":"jc/parsers/systemctl_lj.py","lines_changed":4}]}},{"commit":"54dfffd34a17d1194690142ac403391fc65bb85f","message":"use in instead of find()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl.py"],"file_stats":[{"name":"jc/parsers/systemctl.py","lines_changed":4}]}},{"commit":"cffba64d2b9165b44a8856665807111a2ad3a190","message":"use in and startswith() instead of find()","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":14}]}},{"commit":"56a0c12a59bb252d3b7d0929f9fb19b4d96a8437","message":"use in instead of find()","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/pip_list.py"],"file_stats":[{"name":"jc/parsers/pip_list.py","lines_changed":6}]}},{"commit":"c174d3de18923b2b03befb5a7dfcbd977a8e147e","message":"use in and startswith() instead of find()","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":14}]}},{"commit":"a9c59ef9fc1bb68c9d0d7beffbeb670baf5b1e3f","message":"fix logic to not for ' type ' in cleandata[0]","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/mount.py"],"file_stats":[{"name":"jc/parsers/mount.py","lines_changed":2}]}},{"commit":"abdb9b26732a6a71f5938d665b2ca43a381e1b33","message":"use in instead of find()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/mount.py"],"file_stats":[{"name":"jc/parsers/mount.py","lines_changed":4}]}},{"commit":"548aaab6262878d21f8b9539950cfad48638e35c","message":"remove old commented code","stats":{"files_changed":1,"insertions":1,"deletions":42,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":43}]}},{"commit":"20571c87ae9e1ca8a1f3120511910751420a35ac","message":"us in instead of find()","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":6}]}},{"commit":"19e49200de5c731f76b42e80388c5223e8097e39","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":2}]}},{"commit":"d32f5c67a91ede572c88e431b2ad0ce4d6c87dec","message":"use startswith() instead of find()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":4}]}},{"commit":"b83b626435c55d2aa63e56dd8f22603da59e7626","message":"use startswith() instead of find()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":4}]}},{"commit":"ab2c1b25ec5da5f2ba238868c4dfca95a44da30e","message":"use startswith() and in instead of find()","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/hosts.py"],"file_stats":[{"name":"jc/parsers/hosts.py","lines_changed":6}]}},{"commit":"f2d46313a4508f13656cdb360f83fdf4116cc7d7","message":"use startswith() instead of find()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/fstab.py"],"file_stats":[{"name":"jc/parsers/fstab.py","lines_changed":4}]}},{"commit":"87e4796a6c936793e2784346819c7033d59b91e4","message":"use in instead of .find()","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":4}]}},{"commit":"0014a5c2f4c056c2683d6614a65d778b1f527932","message":"us startswith() and in instead of .find()","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab_u.py"],"file_stats":[{"name":"jc/parsers/crontab_u.py","lines_changed":6}]}},{"commit":"7af56e0dadab7d8b9538f3b7a550ad6dd1ac217d","message":"use startswith() and in instead of find()","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":6}]}},{"commit":"a5ae6e3c017b041f9079ff12455b7551ad204cb3","message":"use startswith() instead of find()","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":6}]}},{"commit":"fe1a0d1faf46f55ed2888ed0065f3f3144691ed8","message":"use in instead of .find()","stats":{"files_changed":1,"insertions":10,"deletions":9,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":19}]}},{"commit":"302f05cdda305e46e69b74d5b0096f64c17da637","message":"prettify style block","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]}},{"commit":"c0044be7b0b6dadcffb64cb88ad92bf653dd2b6b","message":"rename color grey to gray","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]}},{"commit":"01100788070b82b4b827ef356972fa9b8f737eeb","message":"update badge","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"42eacb45f8fdf8085c6231bf5297629c2ec97c22","message":"rename to Tests","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]}},{"commit":"a43e2e19916662d509883457c160d7f95f97ae12","message":"add -m option info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]}},{"commit":"c8b721d4f6e46a2db77e1140b9caeb3b403fef72","message":"version bump to 1.10.0","stats":{"files_changed":4,"insertions":9,"deletions":3,"files":["changelog.txt","jc/cli.py","requirements.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/cli.py","lines_changed":2},{"name":"requirements.txt","lines_changed":1},{"name":"setup.py","lines_changed":5}]}},{"commit":"d0bfddc3d9989444757d6668726c916e5363620b","message":"add color and -m monochrome option","stats":{"files_changed":1,"insertions":41,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":47}]}},{"commit":"6b925a16c87cf75bb30edfda38511e8f84a4f6d6","message":"add tests badge","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"89ebd9fc2271d2c76353d5707bfd4afb7dedc278","message":"add axfr info to schema","stats":{"files_changed":2,"insertions":20,"deletions":0,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":10},{"name":"jc/parsers/dig.py","lines_changed":10}]}},{"commit":"6b4ba662317629839aa62fbcfefb8ed3337c37ef","message":"Merge pull request #52 from kellyjonbrazil/dev"},{"commit":"5b697dc38141cdd47fcdd63bf295a80a7da86697","message":"add more dig tests","stats":{"files_changed":1,"insertions":72,"deletions":0,"files":["tests/test_dig.py"],"file_stats":[{"name":"tests/test_dig.py","lines_changed":72}]}},{"commit":"9ba73c95d1a528a9a92be4068805bb5aa027901e","message":"add tests","stats":{"files_changed":7,"insertions":215,"deletions":0,"files":["tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/centos-7.7/dig-axfr.out","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-axfr.out","tests/fixtures/ubuntu-18.04/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-axfr.out","tests/test_dig.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/dig-axfr.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/dig-axfr.out","lines_changed":60},{"name":"tests/fixtures/osx-10.14.6/dig-axfr.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig-axfr.out","lines_changed":59},{"name":"tests/fixtures/ubuntu-18.04/dig-axfr.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dig-axfr.out","lines_changed":57},{"name":"tests/test_dig.py","lines_changed":36}]}},{"commit":"93aa39044749c4c0ed749f62fb00fc1c76dc5af0","message":"version bump to v1.9.3","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"3cfb8945ddd83c00a720c44e2c1d97da0d8bad25","message":"use startswith() instead of find","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":18}]}},{"commit":"cd8d38f2a136c4f35efc020b3476d09e965b71f1","message":"add axfr support","stats":{"files_changed":1,"insertions":50,"deletions":1,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":51}]}},{"commit":"8ec8cd62944c59c462ab9f520c1dcfd14218b1ed","message":"Merge pull request #50 from kellyjonbrazil/dev"},{"commit":"c02811356153c2b4f8b2d7efb7f48bf8f7748068","message":"version bump to v1.9.2","stats":{"files_changed":3,"insertions":6,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":5},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"5f22e1c8031b808ef02ffe078408bd58cc76e570","message":"fix and test for osx arp entries without ifscope","stats":{"files_changed":3,"insertions":33,"deletions":0,"files":["tests/fixtures/osx-10.14.6/arp-a2.json","tests/fixtures/osx-10.14.6/arp-a2.out","tests/test_arp.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/arp-a2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/arp-a2.out","lines_changed":20},{"name":"tests/test_arp.py","lines_changed":12}]}},{"commit":"d3351787e5cabd064c19e6617e9535e501686404","message":"change osx detection","stats":{"files_changed":1,"insertions":10,"deletions":9,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":19}]}},{"commit":"e5bea9ae3b0a70b38f7da7dd9184343dbbd18887","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/file.py"],"file_stats":[{"name":"jc/parsers/file.py","lines_changed":2}]}},{"commit":"93c710abe9171568f61f65c4f84c040ffc24870c","message":"Merge pull request #49 from kellyjonbrazil/dev"},{"commit":"c29e7cfe5cc4b2151912c6f618137d1b6c39c7be","message":"version bump to 1.9.1","stats":{"files_changed":4,"insertions":9,"deletions":6,"files":["README.md","changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"cb5c1ba00dc0e02bf6ad6c40096d99e319fa6171","message":"add tests for fix to make the file parser splitting more robust","stats":{"files_changed":3,"insertions":101,"deletions":0,"files":["tests/fixtures/osx-10.14.6/file2.json","tests/fixtures/osx-10.14.6/file2.out","tests/test_file.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/file2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/file2.out","lines_changed":88},{"name":"tests/test_file.py","lines_changed":12}]}},{"commit":"9a012b94e1942a14bc6dae3fb967ef618819c77b","message":"make splitting more robust","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/file.py"],"file_stats":[{"name":"jc/parsers/file.py","lines_changed":2}]}},{"commit":"400f5a44ece280cb0097d806b78a9490d2905600","message":"Merge pull request #48 from kellyjonbrazil/dev"},{"commit":"a2ab5bab91ea980399df1afb9d8071fa3282d04e","message":"version bump to v1.9.0","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"fc8ab27361df3359b706125531b2643612d6996a","message":"bugfix for misaligned columns and additional test for ntpq #31","stats":{"files_changed":6,"insertions":93,"deletions":51,"files":["README.md","docs/parsers/ntpq.md","jc/parsers/ntpq.py","tests/fixtures/ubuntu-18.04/ntpq-p2.json","tests/fixtures/ubuntu-18.04/ntpq-p2.out","tests/test_ntpq.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"docs/parsers/ntpq.md","lines_changed":40},{"name":"jc/parsers/ntpq.py","lines_changed":59},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p2.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p2.out","lines_changed":24},{"name":"tests/test_ntpq.py","lines_changed":12}]}},{"commit":"59f19d33a5c6677ea756a9424fdb032b430511a2","message":"add file command tests for #41","stats":{"files_changed":7,"insertions":153,"deletions":0,"files":["tests/fixtures/centos-7.7/file.json","tests/fixtures/centos-7.7/file.out","tests/fixtures/osx-10.14.6/file.json","tests/fixtures/osx-10.14.6/file.out","tests/fixtures/ubuntu-18.04/file.json","tests/fixtures/ubuntu-18.04/file.out","tests/test_file.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/file.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/file.out","lines_changed":25},{"name":"tests/fixtures/osx-10.14.6/file.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/file.out","lines_changed":53},{"name":"tests/fixtures/ubuntu-18.04/file.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/file.out","lines_changed":20},{"name":"tests/test_file.py","lines_changed":52}]}},{"commit":"dfc96181159748d019419a2cba7aa9cb3b7a2a2c","message":"add file parser for issue #41","stats":{"files_changed":6,"insertions":260,"deletions":1,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/file.md","jc/cli.py","jc/parsers/file.py"],"file_stats":[{"name":"README.md","lines_changed":36},{"name":"changelog.txt","lines_changed":5},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/file.md","lines_changed":90},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/file.py","lines_changed":128}]}},{"commit":"8e02e5c75a11cf205299ee6f87b67f9b787cf55e","message":"fix issue with getting options with some commands #47","stats":{"files_changed":2,"insertions":6,"deletions":5,"files":["jc/cli.py","tests/test_cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8},{"name":"tests/test_cli.py","lines_changed":3}]}},{"commit":"970493ab9346a344b21be7614903ad81bc65a6e9","message":"add magic commands","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["jc/parsers/airport.py","jc/parsers/airport_s.py"],"file_stats":[{"name":"jc/parsers/airport.py","lines_changed":1},{"name":"jc/parsers/airport_s.py","lines_changed":1}]}},{"commit":"64d78956eb33ca0a2564fded3d12729ee036a915","message":"update acknowledgment","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]}},{"commit":"40c05346f4098f8eea14c42da07df3faa143587a","message":"re-adding optimizations from https://github.com/philippeitis","stats":{"files_changed":1,"insertions":12,"deletions":25,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":37}]}},{"commit":"e9b0bc1409a824a82dabd2479892b7d18bad8c3f","message":"doc update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/airport.py"],"file_stats":[{"name":"jc/parsers/airport.py","lines_changed":2}]}},{"commit":"798e6bb7d939176bb36771a6d41bd55403d583be","message":"tests passing for airport -s. issue #46","stats":{"files_changed":2,"insertions":29,"deletions":0,"files":["tests/fixtures/osx-10.14.6/airport-s.json","tests/test_airport_s.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/airport-s.json","lines_changed":1},{"name":"tests/test_airport_s.py","lines_changed":28}]}},{"commit":"12a370deed03ba42d7b7ebb410195ce5f32bb9c2","message":"add airport -s parser for issue #46","stats":{"files_changed":8,"insertions":372,"deletions":9,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/airport.md","docs/parsers/airport_s.md","jc/cli.py","jc/parsers/airport.py","jc/parsers/airport_s.py"],"file_stats":[{"name":"README.md","lines_changed":47},{"name":"changelog.txt","lines_changed":2},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/airport.md","lines_changed":4},{"name":"docs/parsers/airport_s.md","lines_changed":136},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/airport.py","lines_changed":5},{"name":"jc/parsers/airport_s.py","lines_changed":185}]}},{"commit":"553bfbe1a0dd866851ba7eca66e9295c2097ad86","message":"tests passing for airport -I. Issue #46","stats":{"files_changed":3,"insertions":40,"deletions":6,"files":["docs/parsers/airport.md","jc/parsers/airport.py","tests/test_airport.py"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":9},{"name":"jc/parsers/airport.py","lines_changed":9},{"name":"tests/test_airport.py","lines_changed":28}]}},{"commit":"52494321fcfe0dc7ee71d8d78210b3c10372a237","message":"fixes and docs for airport parser issue #46","stats":{"files_changed":5,"insertions":120,"deletions":15,"files":["README.md","docs/parsers/airport.md","jc/parsers/airport.py","tests/fixtures/osx-10.14.6/airport-I.json","tests/fixtures/osx-10.14.6/airport-I.out"],"file_stats":[{"name":"README.md","lines_changed":22},{"name":"docs/parsers/airport.md","lines_changed":48},{"name":"jc/parsers/airport.py","lines_changed":62},{"name":"tests/fixtures/osx-10.14.6/airport-I.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/airport-I.out","lines_changed":2}]}},{"commit":"c6c9e06496683d2dd3586d17085801c7e698d960","message":"added airport command parser","stats":{"files_changed":7,"insertions":196,"deletions":1,"files":["changelog.txt","docgen.sh","docs/parsers/airport.md","jc/cli.py","jc/parsers/airport.py","tests/fixtures/osx-10.14.6/airport-I.out","tests/fixtures/osx-10.14.6/airport-s.out"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/airport.md","lines_changed":64},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/airport.py","lines_changed":98},{"name":"tests/fixtures/osx-10.14.6/airport-I.out","lines_changed":15},{"name":"tests/fixtures/osx-10.14.6/airport-s.out","lines_changed":15}]}},{"commit":"e3a6c05a58a2451e70975d8fabf644c56603c73d","message":"timedatectl fixes, tests, and fixtures for issue #42","stats":{"files_changed":5,"insertions":64,"deletions":17,"files":["docs/parsers/timedatectl.md","jc/parsers/timedatectl.py","tests/fixtures/centos-7.7/timedatectl.json","tests/fixtures/ubuntu-18.04/timedatectl.json","tests/test_timedatectl.py"],"file_stats":[{"name":"docs/parsers/timedatectl.md","lines_changed":18},{"name":"jc/parsers/timedatectl.py","lines_changed":21},{"name":"tests/fixtures/centos-7.7/timedatectl.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/timedatectl.json","lines_changed":1},{"name":"tests/test_timedatectl.py","lines_changed":40}]}},{"commit":"391d06f68d1f45d33590d5407d3a5e4f723af717","message":"change selection_state to state","stats":{"files_changed":7,"insertions":35,"deletions":35,"files":["README.md","docs/parsers/ntpq.md","jc/parsers/ntpq.py","tests/fixtures/centos-7.7/ntpq-p.json","tests/fixtures/centos-7.7/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-p.json","tests/fixtures/ubuntu-18.04/ntpq-pn.json"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docs/parsers/ntpq.md","lines_changed":26},{"name":"jc/parsers/ntpq.py","lines_changed":32},{"name":"tests/fixtures/centos-7.7/ntpq-p.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ntpq-pn.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ntpq-pn.json","lines_changed":2}]}},{"commit":"99804ea06e0c70e3a82ddc7f9c7a42343374d700","message":"added timedatectl status parser","stats":{"files_changed":6,"insertions":222,"deletions":0,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/timedatectl.md","jc/cli.py","jc/parsers/timedatectl.py"],"file_stats":[{"name":"README.md","lines_changed":15},{"name":"changelog.txt","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/timedatectl.md","lines_changed":85},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/timedatectl.py","lines_changed":119}]}},{"commit":"51935deb2ad18e4ea3ca16954ce810354f6095a9","message":"timedatectl test fixtures","stats":{"files_changed":2,"insertions":21,"deletions":0,"files":["tests/fixtures/centos-7.7/timedatectl.out","tests/fixtures/ubuntu-18.04/timedatectl.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/timedatectl.out","lines_changed":14},{"name":"tests/fixtures/ubuntu-18.04/timedatectl.out","lines_changed":7}]}},{"commit":"b24d0c3a475b88d9ccf1a8fe29715ee60972fcad","message":"ntpq docs","stats":{"files_changed":2,"insertions":34,"deletions":2,"files":["README.md","jc/parsers/ntpq.py"],"file_stats":[{"name":"README.md","lines_changed":33},{"name":"jc/parsers/ntpq.py","lines_changed":3}]}},{"commit":"762a886d6fdf5c2ad21d81868d138fb32621ed1c","message":"add ntpq tests","stats":{"files_changed":8,"insertions":133,"deletions":0,"files":["tests/fixtures/centos-7.7/ntpq-p.json","tests/fixtures/centos-7.7/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-p.json","tests/fixtures/ubuntu-18.04/ntpq-p.out","tests/fixtures/ubuntu-18.04/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-pn.out","tests/fixtures/ubuntu-18.04/ntqp-p.out","tests/test_ntpq.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ntpq-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ntpq-pn.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-18.04/ntpq-pn.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ntpq-pn.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-18.04/ntqp-p.out","lines_changed":21},{"name":"tests/test_ntpq.py","lines_changed":66}]}},{"commit":"2c3e9ddfe47f56cd7edc2fdf6317f7ecec0b7918","message":"add ntpq parser for issue #31","stats":{"files_changed":7,"insertions":543,"deletions":0,"files":["changelog.txt","docgen.sh","docs/parsers/ntpq.md","jc/cli.py","jc/parsers/ntpq.py","tests/fixtures/centos-7.7/ntpq-p.out","tests/fixtures/centos-7.7/ntpq-pn.out"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ntpq.md","lines_changed":235},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/ntpq.py","lines_changed":291},{"name":"tests/fixtures/centos-7.7/ntpq-p.out","lines_changed":6},{"name":"tests/fixtures/centos-7.7/ntpq-pn.out","lines_changed":6}]}},{"commit":"c7cd2b63c8f24e9d17c458880fe401d8032395ab","message":"delete unused test file","stats":{"files_changed":1,"insertions":0,"deletions":91,"files":["tests/fixtures/generic/oscar_age_male.csv"],"file_stats":[{"name":"tests/fixtures/generic/oscar_age_male.csv","lines_changed":91}]}},{"commit":"f0528ea83112e71ff51c89be27fc9bbdfbbf1951","message":"Merge pull request #45 from kellyjonbrazil/dev"},{"commit":"5bc5596f604fb87dffbfdf44ce2395b16bf01297","message":"version bump to 1.8.1","stats":{"files_changed":4,"insertions":17,"deletions":4,"files":["changelog.txt","jc/cli.py","setup.py","tests/test_ls.py"],"file_stats":[{"name":"changelog.txt","lines_changed":5},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2},{"name":"tests/test_ls.py","lines_changed":12}]}},{"commit":"2c27ac46be803b583caf82c1765bd0c35cee8bc1","message":"add ls test fixtures","stats":{"files_changed":2,"insertions":2454,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-lR-empty-folder.json","tests/fixtures/osx-10.14.6/ls-lR-empty-folder.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ls-lR-empty-folder.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-lR-empty-folder.out","lines_changed":2453}]}},{"commit":"caad840153e40dc660a2d5e06a96f3451fef25f9","message":"Merge pull request #44 from philippeitis/patch-5"},{"commit":"65bd7e2904016141c1ed53cdd437865c66d7628e","message":"Merge pull request #1 from kellyjonbrazil/pr/44"},{"commit":"c3d7d7db12d4870fc4499e0e3445d85ae89f2aea","message":"removed whitespace","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"56053103625af6fb7fa749fc5bc3dbdc62fc223c","message":"added tests, removed os import, changed to 'assertEqual'","stats":{"files_changed":1,"insertions":11,"deletions":4,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":15}]}},{"commit":"17b6efe82e6a558353b011c543489eaaf3a6d3ac","message":"Create basic tests for generate_magic_commands()","stats":{"files_changed":1,"insertions":14,"deletions":0,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":14}]}},{"commit":"a032ae56ae7d247e00415267b65b2a8b80a3302e","message":"Pass args to generate_magic_command() to allow testing.","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]}},{"commit":"eab2f4b0566b4c76db661cbfa99a56a6bf8d6541","message":"Move core magic() logic into seperate function for testability, minor tweaks.","stats":{"files_changed":1,"insertions":33,"deletions":19,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":52}]}},{"commit":"aff86ae6c71abfe1cbdba5c574a5f3707292ec19","message":"reimpliment magic() based on the dictionary approach suggested by philippeitis","stats":{"files_changed":1,"insertions":29,"deletions":39,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":68}]}},{"commit":"7ece9ddc1a37551cdaaac50f37a48e6d98b18bf4","message":"version bump ls","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]}},{"commit":"7cd048e839a7cc8404fd5abc153a3d315c207819","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]}},{"commit":"1e22f610a33903e8525d35a18b1dcf760a93791e","message":"fix for osx - doesn't print 'total xx' line if empty directory (issue #40)","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]}},{"commit":"5249c972ae25e9b289a2667bf471aad5e58c70a9","message":"add to changelog","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":4}]}},{"commit":"fd45f856a050f6c56a7a6b50b97b3d8c4de28af0","message":"import jc.utils instead of jc","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":2}]}},{"commit":"c8ab40cd33b14a3a1937ecf64bb23e282f5bb921","message":"ignore .github folder","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"],"file_stats":[{"name":".gitignore","lines_changed":1}]}},{"commit":"b2c872925b37254dac74578c1803b4127f8411c4","message":"add utf-8 encoding for testing on Windows","stats":{"files_changed":20,"insertions":208,"deletions":220,"files":["tests/test_ls.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_passwd.py","tests/test_pip_list.py","tests/test_ps.py","tests/test_route.py","tests/test_shadow.py","tests/test_ss.py","tests/test_systemctl_lj.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py","tests/test_who.py","tests/test_xml.py","tests/test_yaml.py"],"file_stats":[{"name":"tests/test_ls.py","lines_changed":132},{"name":"tests/test_lsmod.py","lines_changed":8},{"name":"tests/test_lsof.py","lines_changed":16},{"name":"tests/test_mount.py","lines_changed":16},{"name":"tests/test_netstat.py","lines_changed":40},{"name":"tests/test_passwd.py","lines_changed":12},{"name":"tests/test_pip_list.py","lines_changed":20},{"name":"tests/test_ps.py","lines_changed":32},{"name":"tests/test_route.py","lines_changed":16},{"name":"tests/test_shadow.py","lines_changed":8},{"name":"tests/test_ss.py","lines_changed":8},{"name":"tests/test_systemctl_lj.py","lines_changed":16},{"name":"tests/test_systemctl_ls.py","lines_changed":8},{"name":"tests/test_systemctl_luf.py","lines_changed":8},{"name":"tests/test_uname.py","lines_changed":16},{"name":"tests/test_uptime.py","lines_changed":16},{"name":"tests/test_w.py","lines_changed":16},{"name":"tests/test_who.py","lines_changed":24},{"name":"tests/test_xml.py","lines_changed":8},{"name":"tests/test_yaml.py","lines_changed":8}]}},{"commit":"f48e229202f8ab1ebfa502ca57bb31cf673c7a62","message":"utf-8 open for windows tests","stats":{"files_changed":21,"insertions":192,"deletions":192,"files":["tests/test_arp.py","tests/test_blkid.py","tests/test_crontab.py","tests/test_crontab_u.py","tests/test_csv.py","tests/test_df.py","tests/test_dig.py","tests/test_du.py","tests/test_env.py","tests/test_free.py","tests/test_fstab.py","tests/test_group.py","tests/test_gshadow.py","tests/test_history.py","tests/test_hosts.py","tests/test_id.py","tests/test_ifconfig.py","tests/test_ini.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_last.py"],"file_stats":[{"name":"tests/test_arp.py","lines_changed":32},{"name":"tests/test_blkid.py","lines_changed":40},{"name":"tests/test_crontab.py","lines_changed":4},{"name":"tests/test_crontab_u.py","lines_changed":8},{"name":"tests/test_csv.py","lines_changed":36},{"name":"tests/test_df.py","lines_changed":32},{"name":"tests/test_dig.py","lines_changed":24},{"name":"tests/test_du.py","lines_changed":16},{"name":"tests/test_env.py","lines_changed":8},{"name":"tests/test_free.py","lines_changed":16},{"name":"tests/test_fstab.py","lines_changed":8},{"name":"tests/test_group.py","lines_changed":12},{"name":"tests/test_gshadow.py","lines_changed":8},{"name":"tests/test_history.py","lines_changed":8},{"name":"tests/test_hosts.py","lines_changed":8},{"name":"tests/test_id.py","lines_changed":8},{"name":"tests/test_ifconfig.py","lines_changed":24},{"name":"tests/test_ini.py","lines_changed":8},{"name":"tests/test_iptables.py","lines_changed":48},{"name":"tests/test_jobs.py","lines_changed":8},{"name":"tests/test_last.py","lines_changed":28}]}},{"commit":"799fec92c39b1ff0696c6ebb182c4bef66b86e56","message":"utf-8 for windows support","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["tests/test_pip_show.py","tests/test_systemctl.py"],"file_stats":[{"name":"tests/test_pip_show.py","lines_changed":16},{"name":"tests/test_systemctl.py","lines_changed":8}]}},{"commit":"87a41c2fcaa395f108b5a5126ed77f7cc7fe5d6d","message":"add utf-8 to open function","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["tests/test_lsblk.py","tests/test_stat.py"],"file_stats":[{"name":"tests/test_lsblk.py","lines_changed":16},{"name":"tests/test_stat.py","lines_changed":8}]}},{"commit":"7f85de0c46cda95d57b9677ba0ca3ea59690e502","message":"add windows-latest","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]}},{"commit":"13661b19934a74417713e98e3e1e4df6bb0f29ad","message":"Merge pull request #37 from philippeitis/continuous_integration"},{"commit":"51d5c3892d6ff1e2e6ac7c4f3e496e7d9ed4b6a7","message":"Remove Windows tests, due to lack of support.","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]}},{"commit":"e4eab4641ac15220f2787c5d27b443ab8c718b86","message":"Change line in blkid.py to trigger CI","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":3}]}},{"commit":"9b148e0ba37e18749d95608e1bac6c090ab83ee2","message":"Add requirements.txt","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["requirements.txt"],"file_stats":[{"name":"requirements.txt","lines_changed":3}]}},{"commit":"de28932650d5027e2781011f1243b89f053b241d","message":"Consolidate dictionary into creation, trigger CI","stats":{"files_changed":1,"insertions":7,"deletions":6,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":13}]}},{"commit":"5f798d603e461d2de5adf74662ba4d4b121f28f2","message":"version bump and ack to philippeitis","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":3}]}},{"commit":"a0757b2dd3fc0f3e26622941d93bd909dae0a1f7","message":"optimize line parsing","stats":{"files_changed":1,"insertions":1,"deletions":5,"files":["jc/parsers/foo.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":6}]}},{"commit":"498d51b4e802cb40cac58aae1eff1f723bbbd896","message":"Enable Continuous Integration with GitHub Actions.","stats":{"files_changed":1,"insertions":31,"deletions":0,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":31}]}},{"commit":"b06b6bae3f64f591c9075812dc1b632ef6d2da37","message":"Merge pull request #36 from philippeitis/patch-3"},{"commit":"b5eaff21372a58aefb66e5afc5e863db8355fee1","message":"Merge pull request #35 from kellyjonbrazil/revert-34-patch-3"},{"commit":"c01bcd3734382a0c388d9f4041fc888171ca7675","message":"Revert \"Simplify process() in history.py, avoid list allocation in parse()\"","stats":{"files_changed":1,"insertions":25,"deletions":12,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":37}]}},{"commit":"d75c4068caaf4adbe9a39fa452ae867421053673","message":"Merge pull request #34 from philippeitis/patch-3"},{"commit":"6aa2d5a3d26f9f00c3334928f6f0e501860433da","message":"Merge pull request #33 from philippeitis/patch-2"},{"commit":"065276805f0f2dd23a6382f0120ca07e9eae116f","message":"Simplify process() in history.py, avoid list allocation in parse()","stats":{"files_changed":1,"insertions":12,"deletions":25,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":37}]}},{"commit":"a63408c8cf3f99646be2b375f651d6cf417f7ae0","message":"Handle case where only options are passed.","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]}},{"commit":"69576f6bfae073196627a0a39b5ececb8666d25c","message":"minor sytax fixes","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6}]}},{"commit":"19845624e2996da4653efc2f312aceb514feaf5c","message":"Merge pull request #32 from philippeitis/patch-1"},{"commit":"22ff2964e9889587711e779ac24f8f8034212f5e","message":"Simplify main(), magic() methods.","stats":{"files_changed":1,"insertions":62,"deletions":75,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":137}]}},{"commit":"d96b3a65a98bc135d21d4feafc0a43317b5a11fa","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"4989445ef4bb8919d9b3b95e2fcee77ca7692aec","message":"Merge pull request #30 from kellyjonbrazil/dev"},{"commit":"6770892acd49aced225dbccf39290f33522c9001","message":"add release notes link","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"d4eba8740fc325756f3db96ab37a5383540cbeff","message":"release date 3/3","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]}},{"commit":"9f607605605e47990f97ccfd48fde19a14e036e7","message":"add group and gshadow tests","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["tests/test_group.py","tests/test_gshadow.py"],"file_stats":[{"name":"tests/test_group.py","lines_changed":52},{"name":"tests/test_gshadow.py","lines_changed":40}]}},{"commit":"0a8f8ac934f040141e6a4eec8cf7170e1ca73294","message":"add group and gshadow parsers","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]}},{"commit":"6ae24c82447bcff606e7027dd01b916293b49584","message":"add group and gshadow test fixtures","stats":{"files_changed":10,"insertions":274,"deletions":0,"files":["tests/fixtures/centos-7.7/group.json","tests/fixtures/centos-7.7/group.out","tests/fixtures/centos-7.7/gshadow.json","tests/fixtures/centos-7.7/gshadow.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/group.json","tests/fixtures/osx-10.14.6/group.out","tests/fixtures/ubuntu-18.04/group.json","tests/fixtures/ubuntu-18.04/group.out","tests/fixtures/ubuntu-18.04/gshadow.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/group.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/group.out","lines_changed":39},{"name":"tests/fixtures/centos-7.7/gshadow.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/gshadow.out","lines_changed":39},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":3},{"name":"tests/fixtures/osx-10.14.6/group.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/group.out","lines_changed":135},{"name":"tests/fixtures/ubuntu-18.04/group.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/group.out","lines_changed":53},{"name":"tests/fixtures/ubuntu-18.04/gshadow.json","lines_changed":1}]}},{"commit":"d3679082a8c5cff76eb7de67c33fe716a1402182","message":"add group and gshadow parsers","stats":{"files_changed":1,"insertions":64,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":64}]}},{"commit":"fb08b42dca135705a3759435335d95c898d47f60","message":"change 'group_list' to 'members'","stats":{"files_changed":2,"insertions":21,"deletions":21,"files":["docs/parsers/group.md","jc/parsers/group.py"],"file_stats":[{"name":"docs/parsers/group.md","lines_changed":18},{"name":"jc/parsers/group.py","lines_changed":24}]}},{"commit":"4aeaa9f42a88bf4e05c8780a35cc8c4d83c9b842","message":"add /etc/gshadow parser","stats":{"files_changed":5,"insertions":316,"deletions":0,"files":["docgen.sh","docs/parsers/gshadow.md","jc/cli.py","jc/parsers/gshadow.py","tests/fixtures/ubuntu-18.04/gshadow.out"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/gshadow.md","lines_changed":109},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/gshadow.py","lines_changed":152},{"name":"tests/fixtures/ubuntu-18.04/gshadow.out","lines_changed":53}]}},{"commit":"5f5693da048cb4739dc56500c672dc8fbccaaf32","message":"spelling fix","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["docs/parsers/csv.md"],"file_stats":[{"name":"docs/parsers/csv.md","lines_changed":3}]}},{"commit":"5eb0f61727f92a84fb3620e13db072167ef552ef","message":"add /etc/group file parser","stats":{"files_changed":4,"insertions":333,"deletions":0,"files":["docgen.sh","docs/parsers/group.md","jc/cli.py","jc/parsers/group.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/group.md","lines_changed":141},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/group.py","lines_changed":190}]}},{"commit":"958e998991b1cc61dc1dc341b90cd53f4691cd43","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/csv.py"],"file_stats":[{"name":"jc/parsers/csv.py","lines_changed":4}]}},{"commit":"b78c1509f67fb76d17ac97193a2851d8d9e17f62","message":"try/except dialect detection","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/csv.py"],"file_stats":[{"name":"jc/parsers/csv.py","lines_changed":10}]}},{"commit":"ce184d4d57faa3f1bca5bcaa02da7a5a5d995eb3","message":"add csv parser tests","stats":{"files_changed":20,"insertions":24054,"deletions":0,"files":["tests/fixtures/generic/csv-biostats.csv","tests/fixtures/generic/csv-biostats.json","tests/fixtures/generic/csv-cities.csv","tests/fixtures/generic/csv-cities.json","tests/fixtures/generic/csv-deniro.csv","tests/fixtures/generic/csv-deniro.json","tests/fixtures/generic/csv-example.csv","tests/fixtures/generic/csv-example.json","tests/fixtures/generic/csv-flyrna.json","tests/fixtures/generic/csv-flyrna.tsv","tests/fixtures/generic/csv-flyrna2.json","tests/fixtures/generic/csv-flyrna2.tsv","tests/fixtures/generic/csv-homes-pipe.csv","tests/fixtures/generic/csv-homes-pipe.json","tests/fixtures/generic/csv-homes.csv","tests/fixtures/generic/csv-homes.json","tests/fixtures/generic/csv-insurance.csv","tests/fixtures/generic/csv-insurance.json","tests/fixtures/generic/oscar_age_male.csv","tests/test_csv.py"],"file_stats":[{"name":"tests/fixtures/generic/csv-biostats.csv","lines_changed":20},{"name":"tests/fixtures/generic/csv-biostats.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-cities.csv","lines_changed":130},{"name":"tests/fixtures/generic/csv-cities.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-deniro.csv","lines_changed":89},{"name":"tests/fixtures/generic/csv-deniro.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-example.csv","lines_changed":2},{"name":"tests/fixtures/generic/csv-example.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna.tsv","lines_changed":11767},{"name":"tests/fixtures/generic/csv-flyrna2.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna2.tsv","lines_changed":11767},{"name":"tests/fixtures/generic/csv-homes-pipe.csv","lines_changed":3},{"name":"tests/fixtures/generic/csv-homes-pipe.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-homes.csv","lines_changed":51},{"name":"tests/fixtures/generic/csv-homes.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-insurance.csv","lines_changed":1},{"name":"tests/fixtures/generic/csv-insurance.json","lines_changed":1},{"name":"tests/fixtures/generic/oscar_age_male.csv","lines_changed":91},{"name":"tests/test_csv.py","lines_changed":124}]}},{"commit":"b4c3714ced9ee5cc6a7ef0c59a43cf85e1cb9824","message":"removed [OPTIONS] PARSER syntax. still works but prefer the PARSER [OPTIONS] syntax for better performance","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]}},{"commit":"5b7dfa043864f1a3f34aa4ef5c6554a2dfe185f9","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]}},{"commit":"391a3884765780497dc34e0e9938ff5032c81291","message":"doc update","stats":{"files_changed":2,"insertions":49,"deletions":0,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":48},{"name":"changelog.txt","lines_changed":1}]}},{"commit":"d9c4e2ed4c0f908f4b63c2376b53ddfd32a0fae1","message":"add csv file parser","stats":{"files_changed":4,"insertions":241,"deletions":0,"files":["docgen.sh","docs/parsers/csv.md","jc/cli.py","jc/parsers/csv.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/csv.md","lines_changed":104},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/csv.py","lines_changed":135}]}},{"commit":"0c42db38b102987629e40cee2716b826161e6e94","message":"doc update","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/who.md","jc/parsers/who.py"],"file_stats":[{"name":"docs/parsers/who.md","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":2}]}},{"commit":"2f9be8bf33f8be5651d06da9d316f7894606df19","message":"simplify usage","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]}},{"commit":"e8c00155e861b9eedfdf37a22912271bec581d62","message":"add -b to warning message","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]}},{"commit":"cc88fdd9ee3951d7ef2aa881cc12f0b7f96aef86","message":"update example","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]}},{"commit":"d9de11ef1d846a9625dad0adb962b864404c90c1","message":"add another who example","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":16}]}},{"commit":"0ceda97d0968b67b70cdbb68f7a62657e79c9935","message":"who parser tests","stats":{"files_changed":1,"insertions":88,"deletions":0,"files":["tests/test_who.py"],"file_stats":[{"name":"tests/test_who.py","lines_changed":88}]}},{"commit":"d0dec92ba84640ddc40da7c6faa6568b76757e04","message":"add who test fixtures","stats":{"files_changed":12,"insertions":36,"deletions":0,"files":["tests/fixtures/centos-7.7/who-a.json","tests/fixtures/centos-7.7/who-a.out","tests/fixtures/centos-7.7/who.json","tests/fixtures/centos-7.7/who.out","tests/fixtures/osx-10.14.6/who-a.json","tests/fixtures/osx-10.14.6/who-a.out","tests/fixtures/osx-10.14.6/who.json","tests/fixtures/osx-10.14.6/who.out","tests/fixtures/ubuntu-18.04/who-a.json","tests/fixtures/ubuntu-18.04/who-a.out","tests/fixtures/ubuntu-18.04/who.json","tests/fixtures/ubuntu-18.04/who.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/who-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/who-a.out","lines_changed":6},{"name":"tests/fixtures/centos-7.7/who.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/who.out","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/who-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/who-a.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/who.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/who.out","lines_changed":4},{"name":"tests/fixtures/ubuntu-18.04/who-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/who-a.out","lines_changed":6},{"name":"tests/fixtures/ubuntu-18.04/who.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/who.out","lines_changed":3}]}},{"commit":"d420c008d8aaa0879fa5a3f236d81acb506376c3","message":"fix for pts lines with no user info","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/who.py","lines_changed":9}]}},{"commit":"f0b32db4333477e22cc40de62cf026a6a7aa2eb6","message":"who doc update","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","docs/parsers/who.md"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docs/parsers/who.md","lines_changed":8}]}},{"commit":"bc838eda591473d32b11a885e60ef653925739d0","message":"fix output for non-extended","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/who.py","lines_changed":9}]}},{"commit":"afe55b6af07b74816d33d9555ffaa1c1921dd27a","message":"add who parser","stats":{"files_changed":1,"insertions":46,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":46}]}},{"commit":"dd3a3ac302d7b35beef1181e74aed0faf96fd3e4","message":"doc update and process pid integers","stats":{"files_changed":4,"insertions":255,"deletions":9,"files":["changelog.txt","docgen.sh","docs/parsers/who.md","jc/parsers/who.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/who.md","lines_changed":150},{"name":"jc/parsers/who.py","lines_changed":112}]}},{"commit":"f9982a79474c1838f37fc0ff88437980b228d7a1","message":"fixes for from and comment fields","stats":{"files_changed":1,"insertions":11,"deletions":2,"files":["jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/who.py","lines_changed":13}]}},{"commit":"07c1be9e9ad9f62cf76c23788152de8f3530ee16","message":"add who command parser","stats":{"files_changed":2,"insertions":170,"deletions":0,"files":["jc/cli.py","jc/parsers/who.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/who.py","lines_changed":169}]}},{"commit":"f832b88755bfbd3878ec402e603180e6825279be","message":"add passwd and shadow tests","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["tests/test_passwd.py","tests/test_shadow.py"],"file_stats":[{"name":"tests/test_passwd.py","lines_changed":52},{"name":"tests/test_shadow.py","lines_changed":40}]}},{"commit":"0fac757efca41db062b2f65acc727963c5fb353c","message":"add passwd and shadow parsers","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]}},{"commit":"fc15742065531152f3d5895042eeb806e33a192a","message":"passwd and shadow test fixtures","stats":{"files_changed":10,"insertions":215,"deletions":0,"files":["tests/fixtures/centos-7.7/passwd.json","tests/fixtures/centos-7.7/passwd.out","tests/fixtures/centos-7.7/shadow.json","tests/fixtures/centos-7.7/shadow.out","tests/fixtures/osx-10.14.6/passwd.json","tests/fixtures/osx-10.14.6/passwd.out","tests/fixtures/ubuntu-18.04/passwd.json","tests/fixtures/ubuntu-18.04/passwd.out","tests/fixtures/ubuntu-18.04/shadow.json","tests/fixtures/ubuntu-18.04/shadow.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/passwd.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/passwd.out","lines_changed":21},{"name":"tests/fixtures/centos-7.7/shadow.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/shadow.out","lines_changed":21},{"name":"tests/fixtures/osx-10.14.6/passwd.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/passwd.out","lines_changed":108},{"name":"tests/fixtures/ubuntu-18.04/passwd.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/passwd.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/shadow.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/shadow.out","lines_changed":30}]}},{"commit":"6f2466a1319eaa4256ae7a2a0f23b3ff37882d37","message":"update readme with /etc/passwd and /etc/shadow file parsers","stats":{"files_changed":1,"insertions":73,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":73}]}},{"commit":"4b90e22f0a9c6790bca62c8314945a7ffc6e267b","message":"doc update","stats":{"files_changed":2,"insertions":137,"deletions":9,"files":["docs/parsers/shadow.md","jc/parsers/shadow.py"],"file_stats":[{"name":"docs/parsers/shadow.md","lines_changed":72},{"name":"jc/parsers/shadow.py","lines_changed":74}]}},{"commit":"c4935687853fb3b079ae42614793cdafe68e124e","message":"doc fix","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/passwd.md","jc/parsers/passwd.py"],"file_stats":[{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":2}]}},{"commit":"1cdf004b7728901dc137e57b0c8994edfdd6d417","message":"add /etc/shadow parser","stats":{"files_changed":4,"insertions":190,"deletions":0,"files":["docgen.sh","docs/parsers/shadow.md","jc/cli.py","jc/parsers/shadow.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/shadow.md","lines_changed":69},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/shadow.py","lines_changed":119}]}},{"commit":"a4ea50426184d30cbe849a8f80bfd5c975075c9e","message":"add /etc/passwd parser","stats":{"files_changed":4,"insertions":303,"deletions":0,"files":["docgen.sh","docs/parsers/passwd.md","jc/cli.py","jc/parsers/passwd.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/passwd.md","lines_changed":126},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/passwd.py","lines_changed":175}]}},{"commit":"4c2c234c3bf68d1aac66bd4d1f22b9f97e99128d","message":"add last and lastb tests","stats":{"files_changed":16,"insertions":673,"deletions":0,"files":["tests/fixtures/centos-7.7/last-w.json","tests/fixtures/centos-7.7/last-w.out","tests/fixtures/centos-7.7/last.json","tests/fixtures/centos-7.7/last.out","tests/fixtures/centos-7.7/lastb.json","tests/fixtures/centos-7.7/lastb.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/last.json","tests/fixtures/osx-10.14.6/last.out","tests/fixtures/ubuntu-18.04/last-w.json","tests/fixtures/ubuntu-18.04/last-w.out","tests/fixtures/ubuntu-18.04/last.json","tests/fixtures/ubuntu-18.04/last.out","tests/fixtures/ubuntu-18.04/lastb.json","tests/fixtures/ubuntu-18.04/lastb.out","tests/test_last.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/last-w.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/last-w.out","lines_changed":69},{"name":"tests/fixtures/centos-7.7/last.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/last.out","lines_changed":69},{"name":"tests/fixtures/centos-7.7/lastb.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lastb.out","lines_changed":6},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":4},{"name":"tests/fixtures/osx-10.14.6/last.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/last.out","lines_changed":383},{"name":"tests/fixtures/ubuntu-18.04/last-w.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/last-w.out","lines_changed":16},{"name":"tests/fixtures/ubuntu-18.04/last.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/last.out","lines_changed":16},{"name":"tests/fixtures/ubuntu-18.04/lastb.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lastb.out","lines_changed":3},{"name":"tests/test_last.py","lines_changed":100}]}},{"commit":"3d4c0f3e89dab6496ff74df350e3238d6625933c","message":"add blkid tests","stats":{"files_changed":22,"insertions":285,"deletions":0,"files":["tests/fixtures/centos-7.7/blkid-ip-multi.json","tests/fixtures/centos-7.7/blkid-ip-multi.out","tests/fixtures/centos-7.7/blkid-ip-udev-multi.json","tests/fixtures/centos-7.7/blkid-ip-udev-multi.out","tests/fixtures/centos-7.7/blkid-ip-udev.json","tests/fixtures/centos-7.7/blkid-ip-udev.out","tests/fixtures/centos-7.7/blkid-sda2.json","tests/fixtures/centos-7.7/blkid-sda2.out","tests/fixtures/centos-7.7/blkid.json","tests/fixtures/centos-7.7/blkid.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/blkid-ip-multi.json","tests/fixtures/ubuntu-18.04/blkid-ip-multi.out",".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.json",".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.out","tests/fixtures/ubuntu-18.04/blkid-ip-udev.json","tests/fixtures/ubuntu-18.04/blkid-ip-udev.out","tests/fixtures/ubuntu-18.04/blkid-sda2.json","tests/fixtures/ubuntu-18.04/blkid-sda2.out","tests/fixtures/ubuntu-18.04/blkid.json","tests/fixtures/ubuntu-18.04/blkid.out","tests/test_blkid.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/blkid-ip-multi.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid-ip-multi.out","lines_changed":29},{"name":"tests/fixtures/centos-7.7/blkid-ip-udev-multi.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid-ip-udev-multi.out","lines_changed":29},{"name":"tests/fixtures/centos-7.7/blkid-ip-udev.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid-ip-udev.out","lines_changed":14},{"name":"tests/fixtures/centos-7.7/blkid-sda2.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid-sda2.out","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid.out","lines_changed":4},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":6},{"name":"tests/fixtures/ubuntu-18.04/blkid-ip-multi.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid-ip-multi.out","lines_changed":2},{"name":".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.json","lines_changed":1},{"name":".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/blkid-ip-udev.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid-ip-udev.out","lines_changed":12},{"name":"tests/fixtures/ubuntu-18.04/blkid-sda2.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid-sda2.out","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid.out","lines_changed":15},{"name":"tests/test_blkid.py","lines_changed":136}]}},{"commit":"52fad02903468c05d2422a340ad8dbcdf18ed475","message":"doc update","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":12},{"name":"jc/parsers/ls.py","lines_changed":12}]}},{"commit":"9dcabc057c40e345971a08474b5b886e6b60a8de","message":"support multi device udev output","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":10}]}},{"commit":"db8c1079ddc25922ab6a20d0f71fb19af38f8092","message":"use maxsplit=1 in case there are multiple '=' delimiters","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":8}]}},{"commit":"8f954673abdbbd4d9b9da3eacc61b335b4909f89","message":"use shlex split for values within quotations that have spaces","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":5}]}},{"commit":"79522d1c7dd4dec15b75b06dda002752f7d97e36","message":"doc fixes","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":5}]}},{"commit":"a18bf030794efef125c70a32fe82855e47649b32","message":"use raw strings for regular expressions","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/parsers/last.py","jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":12}]}},{"commit":"c02b6b5d827d26b43db0a3457124714aa2dbbc98","message":"doc updates","stats":{"files_changed":3,"insertions":81,"deletions":1,"files":["README.md","changelog.txt","setup.py"],"file_stats":[{"name":"README.md","lines_changed":79},{"name":"changelog.txt","lines_changed":1},{"name":"setup.py","lines_changed":2}]}},{"commit":"f99b4232848b0d868804acc4125836bfcf475bba","message":"doc update","stats":{"files_changed":2,"insertions":134,"deletions":29,"files":["docs/parsers/blkid.md","jc/parsers/blkid.py"],"file_stats":[{"name":"docs/parsers/blkid.md","lines_changed":115},{"name":"jc/parsers/blkid.py","lines_changed":48}]}},{"commit":"d7d9d45d4fba89e74f7490c463eb26bf20a5d127","message":"add missing comma","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":2}]}},{"commit":"90065ec0cdc8c5abc13bc0027f63658dacf3cfb2","message":"add more integers","stats":{"files_changed":1,"insertions":31,"deletions":26,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":57}]}},{"commit":"51157ebb867a48332c768bf3086614944aebdb62","message":"another devname fix","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":4}]}},{"commit":"96d95c79ca0938e326f55f858f8153df9cb49e44","message":"devname fix","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":6}]}},{"commit":"e5da34c23306463e8707b15676db0ca53bf66757","message":"check if devname key exists before renaming","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":3}]}},{"commit":"f09d657f7728242947db3dc63ff6779d08c37866","message":"rename devname to device","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":5}]}},{"commit":"0f4b0189f54dc0b3622cd407c5565e53ea111379","message":"process integer values","stats":{"files_changed":1,"insertions":35,"deletions":3,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":38}]}},{"commit":"4666042abb3142e2cfb518db9ffe22d9e608e090","message":"add blkid parser","stats":{"files_changed":4,"insertions":216,"deletions":0,"files":["docgen.sh","docs/parsers/blkid.md","jc/cli.py","jc/parsers/blkid.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/blkid.md","lines_changed":83},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/blkid.py","lines_changed":131}]}},{"commit":"027d544c2bb778adc0ee9463832f19b10e099a0a","message":"add last and lastb parser","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]}},{"commit":"f1967d0138d27bde864c2400aa75baa8a39bbfde","message":"system_boot fix","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":3}]}},{"commit":"c1d896027dd1ce021e048b3e77eab24ff59d08bd","message":"fix system_boot tty","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":3}]}},{"commit":"5c2d2a66187d32d62b31b7c7f13e502fdb7f9635","message":"process function and docs","stats":{"files_changed":3,"insertions":190,"deletions":6,"files":["docgen.sh","docs/parsers/last.md","jc/parsers/last.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/last.md","lines_changed":118},{"name":"jc/parsers/last.py","lines_changed":77}]}},{"commit":"997b269b0b7e53a456e2a0bd997ead6c2ae843bc","message":"btmp fix","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":3}]}},{"commit":"61257e7525c25827cb8057ed5c612e54ea9b9637","message":"add last and lastb parser","stats":{"files_changed":2,"insertions":119,"deletions":1,"files":["jc/cli.py","jc/parsers/last.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/last.py","lines_changed":117}]}},{"commit":"53ee2c36310cb84390ef96644aee6871769151c9","message":"Merge pull request #29 from kellyjonbrazil/dev"},{"commit":"8bfa0bddec9ff1c21972019467dcf5738ab3afd2","message":"version bump to 1.7.5","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"ad61e6bc81177a2add7d052bf1ddec5f1b3f2976","message":"add ls tests for filenames with newline characters","stats":{"files_changed":26,"insertions":598,"deletions":133,"files":["tests/fixtures/centos-7.7/ls-R-newlines.json","tests/fixtures/centos-7.7/ls-R-newlines.out","tests/fixtures/centos-7.7/ls-l-newlines.json","tests/fixtures/centos-7.7/ls-l-newlines.out","tests/fixtures/centos-7.7/ls-lR-newlines.json","tests/fixtures/centos-7.7/ls-lR-newlines.out","tests/fixtures/centos-7.7/ls-newlines.json","tests/fixtures/centos-7.7/ls-newlines.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/ls-R-newlines.json","tests/fixtures/osx-10.14.6/ls-R-newlines.out","tests/fixtures/osx-10.14.6/ls-l-newlines.json","tests/fixtures/osx-10.14.6/ls-l-newlines.out","tests/fixtures/osx-10.14.6/ls-lR-newlines.json","tests/fixtures/osx-10.14.6/ls-lR-newlines.out","tests/fixtures/osx-10.14.6/ls-newlines.json","tests/fixtures/osx-10.14.6/ls-newlines.out","tests/fixtures/ubuntu-18.04/ls-R-newlines.json","tests/fixtures/ubuntu-18.04/ls-R-newlines.out","tests/fixtures/ubuntu-18.04/ls-l-newlines.json","tests/fixtures/ubuntu-18.04/ls-l-newlines.out","tests/fixtures/ubuntu-18.04/ls-lR-newlines.json","tests/fixtures/ubuntu-18.04/ls-lR-newlines.out","tests/fixtures/ubuntu-18.04/ls-newlines.json","tests/fixtures/ubuntu-18.04/ls-newlines.out","tests/test_ls.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ls-R-newlines.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-R-newlines.out","lines_changed":43},{"name":"tests/fixtures/centos-7.7/ls-l-newlines.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-l-newlines.out","lines_changed":34},{"name":"tests/fixtures/centos-7.7/ls-lR-newlines.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-lR-newlines.out","lines_changed":45},{"name":"tests/fixtures/centos-7.7/ls-newlines.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-newlines.out","lines_changed":33},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":15},{"name":"tests/fixtures/osx-10.14.6/ls-R-newlines.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-R-newlines.out","lines_changed":36},{"name":"tests/fixtures/osx-10.14.6/ls-l-newlines.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-l-newlines.out","lines_changed":34},{"name":"tests/fixtures/osx-10.14.6/ls-lR-newlines.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-lR-newlines.out","lines_changed":38},{"name":"tests/fixtures/osx-10.14.6/ls-newlines.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-newlines.out","lines_changed":148},{"name":"tests/fixtures/ubuntu-18.04/ls-R-newlines.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-R-newlines.out","lines_changed":40},{"name":"tests/fixtures/ubuntu-18.04/ls-l-newlines.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-l-newlines.out","lines_changed":34},{"name":"tests/fixtures/ubuntu-18.04/ls-lR-newlines.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-lR-newlines.out","lines_changed":42},{"name":"tests/fixtures/ubuntu-18.04/ls-newlines.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-newlines.out","lines_changed":33},{"name":"tests/test_ls.py","lines_changed":144}]}},{"commit":"873b5ba8acf599d083d6031b818d5fca83cbca9e","message":"move examples to bottom","stats":{"files_changed":1,"insertions":27,"deletions":31,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":58}]}},{"commit":"6ae50054e2e8c7ca730013b43062eedc230c0ad4","message":"readme update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"22a35f41bf9c404d3532611f5929143d04b10010","message":"move variables to top","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":10}]}},{"commit":"961696c963215a9dab56113ff89f21a6e9739df6","message":"add a warning if newlines are detected in naked ls","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]}},{"commit":"c7b7f1a5dcf77a1f4c23ef6bbf5683fd1a055f72","message":"fix for files with newlines in naked ls","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]}},{"commit":"b5a0d650b128d8af81bb14dd5d007349529cb66f","message":"ls output with newlines","stats":{"files_changed":1,"insertions":151,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-newlines.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ls-newlines.out","lines_changed":151}]}},{"commit":"573b27946474276592ee7494689ce9a88f5a05f7","message":"fixup for filenames that start with a newline character","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":6}]}},{"commit":"116e07f1614b4a45eb58ffcfe20b5efa71c473a8","message":"fixes for multiple consecutive newlines and trailing newlines in filenames","stats":{"files_changed":1,"insertions":6,"deletions":7,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":13}]}},{"commit":"964868c8aff99edf37b0db41c7d16f8b84ac4704","message":"add support for newlines in filenames (only with ls -l)","stats":{"files_changed":2,"insertions":21,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":20}]}},{"commit":"c8dac32df8102c2b782e87d55bb95ca2d9490185","message":"readme update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"72a0016bd833699c3819baa899f335f75b8c1943","message":"use link to anchor for Parsers","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"2ad316743460bb6620e7ede251e1dc2739b073fa","message":"update doc url","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"ddabfaa05c63f886b17e5b4d37cd83fcfdb9b221","message":"Merge pull request #25 from kellyjonbrazil/dev"},{"commit":"f857523ca756864211b6b18af5a8886e5db200bb","message":"bump to version 1.7.4","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"00d53858e820f00ba015bc25629100c8e5495221","message":"add note about aliases not being supported","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"c008167e660929a91606bb96498cdc113e815f7e","message":"add time-style=full-iso option to doc","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":1},{"name":"jc/parsers/ls.py","lines_changed":1}]}},{"commit":"102344a041e9e0aff8b6d9db1873ba1064f7e895","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]}},{"commit":"c865298ef3613fe6ce17f41c15209a69940af1ce","message":"remove unnecessary enumerate in for loop","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":3}]}},{"commit":"6ac03faf939bcda8930a48a5e832b557813e2129","message":"Revert \"add ubuntu and centos default ls aliases to magic_commands\"","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]}},{"commit":"49c2701743706b6cbf0e52b2c7f275e301315189","message":"add ubuntu and centos default ls aliases to magic_commands","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]}},{"commit":"d1a271b08e64b42be8cec11377b0e18435a0caec","message":"add new ls tests for recursive and multiple directories with glob","stats":{"files_changed":21,"insertions":35333,"deletions":1374,"files":["tests/fixtures/centos-7.7/ls-R.json","tests/fixtures/centos-7.7/ls-R.out","tests/fixtures/centos-7.7/ls-alR.json","tests/fixtures/centos-7.7/ls-alR.out","tests/fixtures/centos-7.7/ls-glob.json","tests/fixtures/centos-7.7/ls-glob.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/ls-R.json","tests/fixtures/osx-10.14.6/ls-R.out","tests/fixtures/osx-10.14.6/ls-alR.json","tests/fixtures/osx-10.14.6/ls-alR.out","tests/fixtures/osx-10.14.6/ls-glob.json","tests/fixtures/osx-10.14.6/ls-glob.out","tests/fixtures/ubuntu-18.04/ls-R.json","tests/fixtures/ubuntu-18.04/ls-R.out","tests/fixtures/ubuntu-18.04/ls-alR.json","tests/fixtures/ubuntu-18.04/ls-alR.out","tests/fixtures/ubuntu-18.04/ls-glob.json","tests/fixtures/ubuntu-18.04/ls-glob.out","tests/fixtures/ubuntu-18.04/ls-lR.out","tests/test_ls.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ls-R.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-R.out","lines_changed":5089},{"name":"tests/fixtures/centos-7.7/ls-alR.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-alR.out","lines_changed":4997},{"name":"tests/fixtures/centos-7.7/ls-glob.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-glob.out","lines_changed":1919},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":5},{"name":"tests/fixtures/osx-10.14.6/ls-R.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-R.out","lines_changed":5018},{"name":"tests/fixtures/osx-10.14.6/ls-alR.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-alR.out","lines_changed":4997},{"name":"tests/fixtures/osx-10.14.6/ls-glob.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-glob.out","lines_changed":1831},{"name":"tests/fixtures/ubuntu-18.04/ls-R.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-R.out","lines_changed":5639},{"name":"tests/fixtures/ubuntu-18.04/ls-alR.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-alR.out","lines_changed":5026},{"name":"tests/fixtures/ubuntu-18.04/ls-glob.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-glob.out","lines_changed":1357},{"name":"tests/fixtures/ubuntu-18.04/ls-lR.out","lines_changed":712},{"name":"tests/test_ls.py","lines_changed":108}]}},{"commit":"7388ad19b9d252d3e66659e4bc37171cef2a9748","message":"bump to v1.8.0","stats":{"files_changed":4,"insertions":6,"deletions":4,"files":["docs/parsers/ls.md","jc/cli.py","jc/parsers/ls.py","setup.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"setup.py","lines_changed":2}]}},{"commit":"2e63cb5fadd032c7cb54a618e8b374ee853abcca","message":"version bump ls to 1.1","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]}},{"commit":"e7f14d02b12c7dcba309f2d28a0f171769d1ba37","message":"update ls to allow multi directory (glob and -R). Adds 'parent' key if found","stats":{"files_changed":3,"insertions":1438,"deletions":8,"files":["jc/parsers/ls.py","tests/fixtures/ubuntu-18.04/ls-R.out","tests/fixtures/ubuntu-18.04/ls-lR.out"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":48},{"name":"tests/fixtures/ubuntu-18.04/ls-R.out","lines_changed":686},{"name":"tests/fixtures/ubuntu-18.04/ls-lR.out","lines_changed":712}]}},{"commit":"873771d05ab0b77163c95d2c37e11edf38451832","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"d7de122e36e0698e00f321fbac8dc0b543cf9e8a","message":"prettify link","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"4ef0434f536c6658ddc2b48a3db113df2fd26000","message":"formatting update","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":6}]}},{"commit":"1aa2c9925996f2358b6272547db755ec3098a8a7","message":"removed history from magic syntax","stats":{"files_changed":2,"insertions":1,"deletions":2,"files":["README.md","jc/parsers/history.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":1}]}},{"commit":"c2450b27b079b02ed3f4ece9e36547f01cd4b139","message":"Merge pull request #22 from kellyjonbrazil/dev"},{"commit":"14d6d8b84f0ddeff984aff486e2e697a91ac6fb6","message":"version bump to 1.7.3","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"f0e3846c038ec5507cd4a19980d83ee0fb969ef5","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":5}]}},{"commit":"6ba64f1128373843b068226424a3af545ac9d22c","message":"usage update","stats":{"files_changed":1,"insertions":5,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]}},{"commit":"13bcdbc6c9a81bc5d52fe7a84e6a0a34908db8bc","message":"doc update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"cfba62db20674d788601354211a10e2b1675a0c9","message":"correct parser search in magic()","stats":{"files_changed":1,"insertions":13,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":19}]}},{"commit":"18fb69e36e303a3f9530dcb80354b25bfdbb931d","message":"docs/parsers link","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"474eb0f3fdeaa612e189d745b12a5ed9c6e0a31b","message":"doc updates","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]}},{"commit":"7f47b533701e60449351d5da03cd5960e0dec9ad","message":"add alternate magic syntax","stats":{"files_changed":1,"insertions":90,"deletions":68,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":158}]}},{"commit":"dc2907d3ce101043b30bcce71abb4bb02897f43a","message":"doc update","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["docs/parsers/crontab.md"],"file_stats":[{"name":"docs/parsers/crontab.md","lines_changed":6}]}},{"commit":"1af85811e06c489051c456918284a746ce12c692","message":"remove magic_command info","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/fstab.py"],"file_stats":[{"name":"jc/parsers/fstab.py","lines_changed":3}]}},{"commit":"1c1b19a478fe5c356a93cd165518429e77fcbdf0","message":"doc update","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":6}]}},{"commit":"66942d64babf932faeb887eb4ec0cab32829321a","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":4}]}},{"commit":"2fb6ae08d76e7a5727b2fcdd5def3e3822e0cf72","message":"fix shlex usage","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]}},{"commit":"bf8811e03e2a5b736f4c084f42400fcde400ff3f","message":"add comments","stats":{"files_changed":1,"insertions":6,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]}},{"commit":"c8b502c571d3081ca3086e349a426ca252a3bb84","message":"remove unnecessary join and add comments","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6}]}},{"commit":"81c11a975c6ee66a1f83350df8b065a6b07dcc9c","message":"added docstrings","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]}},{"commit":"0d370eb403ab4d9ed11e36776efc08bdd3505c1a","message":"doc update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"7492c3f1e312cdb0c58c2077db0d60d2cab1e58f","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]}},{"commit":"515a8a84b79c9bf6f3001d3c52faa82a6709b8d1","message":"add \"command\" to description","stats":{"files_changed":33,"insertions":33,"deletions":33,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2}]}},{"commit":"dd6680efb2b15bb8ed676016aae1c65193dfe147","message":"allow condensed options (-prdq is equivalent to -p -r -d -q)","stats":{"files_changed":2,"insertions":29,"deletions":14,"files":["changelog.txt","jc/cli.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":40}]}},{"commit":"a7158373cd225685f5c398fa36b8d5208e20521c","message":"comment update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"6d50ec71997cac9c898737de93b8a945f0351e53","message":"add try/except to fix bare jc command condition","stats":{"files_changed":1,"insertions":9,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":15}]}},{"commit":"95dbf98e8e03486f74d986683f52699f4f9c9577","message":"allow options in magic syntax","stats":{"files_changed":1,"insertions":26,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":32}]}},{"commit":"d49323e4ebf2a8aebd1d8ea65ef0854ee8bcb29f","message":"add magic_commands list to info","stats":{"files_changed":33,"insertions":33,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":1},{"name":"jc/parsers/crontab.py","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":1},{"name":"jc/parsers/du.py","lines_changed":1},{"name":"jc/parsers/env.py","lines_changed":1},{"name":"jc/parsers/foo.py","lines_changed":1},{"name":"jc/parsers/free.py","lines_changed":1},{"name":"jc/parsers/fstab.py","lines_changed":1},{"name":"jc/parsers/history.py","lines_changed":1},{"name":"jc/parsers/id.py","lines_changed":1},{"name":"jc/parsers/ifconfig.py","lines_changed":1},{"name":"jc/parsers/iptables.py","lines_changed":1},{"name":"jc/parsers/jobs.py","lines_changed":1},{"name":"jc/parsers/ls.py","lines_changed":1},{"name":"jc/parsers/lsblk.py","lines_changed":1},{"name":"jc/parsers/lsmod.py","lines_changed":1},{"name":"jc/parsers/lsof.py","lines_changed":1},{"name":"jc/parsers/mount.py","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":1},{"name":"jc/parsers/pip_list.py","lines_changed":1},{"name":"jc/parsers/pip_show.py","lines_changed":1},{"name":"jc/parsers/ps.py","lines_changed":1},{"name":"jc/parsers/route.py","lines_changed":1},{"name":"jc/parsers/ss.py","lines_changed":1},{"name":"jc/parsers/stat.py","lines_changed":1},{"name":"jc/parsers/systemctl.py","lines_changed":1},{"name":"jc/parsers/systemctl_lj.py","lines_changed":1},{"name":"jc/parsers/systemctl_ls.py","lines_changed":1},{"name":"jc/parsers/systemctl_luf.py","lines_changed":1},{"name":"jc/parsers/uname.py","lines_changed":1},{"name":"jc/parsers/uptime.py","lines_changed":1},{"name":"jc/parsers/w.py","lines_changed":1}]}},{"commit":"08c1e2aec9d6bb68653dc12ba2272535fb7cef09","message":"add magic syntax","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]}},{"commit":"a2c137df2e6d3b133df5df0bb3f9b1ca69990557","message":"better magic command syntax logic using introspection information from parser modules","stats":{"files_changed":2,"insertions":66,"deletions":299,"files":["jc/cli.py","jc/cli.py.old"],"file_stats":[{"name":"jc/cli.py","lines_changed":135},{"name":"jc/cli.py.old","lines_changed":230}]}},{"commit":"fe27dcdb8f72b5a288f978b87be2eb930099543e","message":"proof of concept for magic syntax (e.g. jc ls -al)","stats":{"files_changed":2,"insertions":319,"deletions":45,"files":["jc/cli.py","jc/cli.py.old"],"file_stats":[{"name":"jc/cli.py","lines_changed":134},{"name":"jc/cli.py.old","lines_changed":230}]}},{"commit":"028e136161ac15f588845f87907b4565a6ee7be2","message":"bump to 1.7.2: add test fixtures to package","stats":{"files_changed":4,"insertions":7,"deletions":2,"files":["MANIFEST.in","changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"MANIFEST.in","lines_changed":1},{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":3}]}},{"commit":"9a85a0a4d504447b32fb622bb17cebc5e47f687f","message":"fix doc","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/crontab_u.md","jc/parsers/crontab_u.py"],"file_stats":[{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2}]}},{"commit":"3a1cbc4d5063344c3e3a4bf510d651a36beedfb3","message":"move info class to top","stats":{"files_changed":1,"insertions":14,"deletions":14,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":28}]}},{"commit":"77d334f7f386f79ec0571325500054fdab207f31","message":"Merge pull request #19 from kellyjonbrazil/dev-1.7.1"},{"commit":"53cdf863acc72dbdb671773e30277f42e9eadc0e","message":"changelog update","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":4}]}},{"commit":"7b7e7fe0fe92edef1e559bd7ae8272530d7ed5c8","message":"changelog update","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]}},{"commit":"0c03132847a3d2bcbdb0b743e1472865916cced4","message":"fix error codes using sys.exit()","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]}},{"commit":"3b81f7e2a1381958b33962d4531f3fa223c6a83e","message":"exit code on ctrl-c exit","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"3d76437b435660e92633c604c4ad32ee0500a28b","message":"doc fix","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ini.md","docs/parsers/xml.md","jc/parsers/ini.py","jc/parsers/xml.py"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/xml.py","lines_changed":2}]}},{"commit":"4bc54c78cea48682ed0432ea56460a26a0e52f83","message":"fix compatibility list","stats":{"files_changed":4,"insertions":7,"deletions":7,"files":["docs/parsers/du.md","docs/parsers/history.md","jc/parsers/du.py","jc/parsers/history.py"],"file_stats":[{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":6},{"name":"jc/parsers/history.py","lines_changed":4}]}},{"commit":"3d303a96b9f6d582b1e99a632da539c3bee4df7f","message":"crontab bug fix and tests","stats":{"files_changed":5,"insertions":16,"deletions":2,"files":["tests/fixtures/centos-7.7/crontab-u.json","tests/fixtures/centos-7.7/{crontab2.out => crontab-u.out}","tests/fixtures/centos-7.7/crontab.json","tests/fixtures/ubuntu-18.04/crontab-u.json","tests/test_crontab_u.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/crontab-u.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/{crontab2.out => crontab-u.out}","lines_changed":1},{"name":"tests/fixtures/centos-7.7/crontab.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/crontab-u.json","lines_changed":2},{"name":"tests/test_crontab_u.py","lines_changed":12}]}},{"commit":"33c99d031d18e52a8ca85dfc1a8cba0acebfc3bb","message":"fix line clobbering bug","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":2}]}},{"commit":"caf7e9f69a22f3c9b3d4624fd2238d6e54d932ac","message":"fix line clobbering bug and add user field to shortcuts","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/crontab_u.py"],"file_stats":[{"name":"jc/parsers/crontab_u.py","lines_changed":6}]}},{"commit":"9449f1f5d5e7bc075549549758af5cc3a6c4524f","message":"crontab bugfix: inserting header row was clobbering the first data row","stats":{"files_changed":4,"insertions":9,"deletions":3,"files":["changelog.txt","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/fixtures/centos-7.7/crontab2.out"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/crontab.py","lines_changed":4},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/crontab2.out","lines_changed":5}]}},{"commit":"6bad164b5e2a5b7c7ce82c69b6c091fc079ab2fa","message":"simplify by removing unnecessary getattr calls","stats":{"files_changed":1,"insertions":7,"deletions":9,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":16}]}},{"commit":"bb5ba7ddb146821db2efe095b6de5ae5b72bb335","message":"add indent variable to helptext","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":7}]}},{"commit":"8b2e01d5404649e8f94c81ca3b5fa05fe8962220","message":"doc update","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]}},{"commit":"ff1159b1deb9b870382a6066166961902679b569","message":"exit codes on error","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]}},{"commit":"a2fd3202a0a3df336792f167c546ea3e53ea2332","message":"description formatting change","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/pip_list.py","jc/parsers/pip_show.py"],"file_stats":[{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2}]}},{"commit":"7b53715b91787a8885d61ddc0079c7ee8f9348a8","message":"change description","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/crontab_u.py"],"file_stats":[{"name":"jc/parsers/crontab_u.py","lines_changed":2}]}},{"commit":"e05fc0a5107b348af14ff4bea39d274939fab7dd","message":"change padding of helptext","stats":{"files_changed":1,"insertions":8,"deletions":8,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":16}]}},{"commit":"43604c33f654b8c19e8cce387ebbf31bd598b73b","message":"doc update","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]}},{"commit":"eb67c484ff2a9530b434cd6a90c160f6936e1de7","message":"add crontab-u to parsers list","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]}},{"commit":"a7b7bdd46781d07e6e70d74a41a3944855fde5fc","message":"load parser modules 'just in time' so we don't need to load all modules at startup","stats":{"files_changed":1,"insertions":94,"deletions":92,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":186}]}},{"commit":"ab06989a18faf5378f1e73c7016ea02e1218ff9c","message":"description updates","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":10}]}},{"commit":"657b722f947b6a0aa7e52a786e4c84f177e9a5c7","message":"ini to INI","stats":{"files_changed":4,"insertions":8,"deletions":8,"files":["README.md","changelog.txt","docs/parsers/ini.md","jc/parsers/ini.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"changelog.txt","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"jc/parsers/ini.py","lines_changed":6}]}},{"commit":"dd2aecad2787186b3962723086bb7e13eff4874f","message":"description update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"c82c5c5c648384eb5a54205ba8590624a3ab4375","message":"changelog update","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":6}]}},{"commit":"a1761cd68f91e2668d8d7e2fa7774f6496408be6","message":"id tests","stats":{"files_changed":3,"insertions":42,"deletions":0,"files":["tests/fixtures/centos-7.7/id.json","tests/fixtures/osx-10.14.6/id.json","tests/test_id.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/id.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/id.json","lines_changed":1},{"name":"tests/test_id.py","lines_changed":40}]}},{"commit":"d618a7f583629bb7a7fc0854e7349cab07e3e003","message":"doc update","stats":{"files_changed":4,"insertions":143,"deletions":9,"files":["README.md","docgen.sh","docs/parsers/id.md","jc/parsers/id.py"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/id.md","lines_changed":133},{"name":"jc/parsers/id.py","lines_changed":12}]}},{"commit":"831a42f66096f5efbbf0f6882970c328120f9c9a","message":"id formatting","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":48}]}},{"commit":"3b36022e5a1056a28a83494b1ab8fab209399c2d","message":"add id parser","stats":{"files_changed":5,"insertions":250,"deletions":1,"files":["README.md","jc/cli.py","jc/parsers/id.py","tests/fixtures/centos-7.7/id.out","tests/fixtures/osx-10.14.6/id.out"],"file_stats":[{"name":"README.md","lines_changed":33},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":214},{"name":"tests/fixtures/centos-7.7/id.out","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/id.out","lines_changed":1}]}},{"commit":"d01dfa25f10f82cd201ae7b4c9cc18313773f8d3","message":"changelog updates","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]}},{"commit":"395a99037b4816eb800b289f90372a9b8d7d36cc","message":"crontab-u and history doc updates","stats":{"files_changed":3,"insertions":89,"deletions":13,"files":["README.md","docs/parsers/history.md","jc/parsers/history.py"],"file_stats":[{"name":"README.md","lines_changed":84},{"name":"docs/parsers/history.md","lines_changed":10},{"name":"jc/parsers/history.py","lines_changed":8}]}},{"commit":"025986c51d2d4869b17de63a7dd96efa2988e3c5","message":"change history 'line' to integer","stats":{"files_changed":3,"insertions":13,"deletions":3,"files":["jc/parsers/history.py","tests/fixtures/centos-7.7/history.json","tests/fixtures/ubuntu-18.04/history.json"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":12},{"name":"tests/fixtures/centos-7.7/history.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/history.json","lines_changed":2}]}},{"commit":"c56b83093ff05f55ef4643c1731cff61d4b9e8ce","message":"doc update","stats":{"files_changed":3,"insertions":202,"deletions":2,"files":["docgen.sh","docs/parsers/crontab.md","docs/parsers/crontab_u.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"docs/parsers/crontab_u.md","lines_changed":199}]}},{"commit":"7c712a4133abd843d4da926e4c8d548abd1d6fa3","message":"doc update","stats":{"files_changed":1,"insertions":52,"deletions":50,"files":["jc/parsers/crontab_u.py"],"file_stats":[{"name":"jc/parsers/crontab_u.py","lines_changed":102}]}},{"commit":"9a0cfe6dfa4888f435d35bd2d35126d031a556d0","message":"minor formatting","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":4}]}},{"commit":"a116cdbcec1b27192dd0f9f4707629353edb3caf","message":"tests for crontab-u","stats":{"files_changed":5,"insertions":29,"deletions":13,"files":["tests/fixtures/ubuntu-18.04/crontab-u.json",".../ubuntu-18.04/{crontab.out => crontab-u.out}","tests/fixtures/ubuntu-18.04/crontab.json","tests/test_crontab.py","tests/test_crontab_u.py"],"file_stats":[{"name":"tests/fixtures/ubuntu-18.04/crontab-u.json","lines_changed":1},{"name":".../ubuntu-18.04/{crontab.out => crontab-u.out}","lines_changed":0},{"name":"tests/fixtures/ubuntu-18.04/crontab.json","lines_changed":1},{"name":"tests/test_crontab.py","lines_changed":12},{"name":"tests/test_crontab_u.py","lines_changed":28}]}},{"commit":"f2d616c98e049cdac5d667e63723f92110419a1b","message":"add crontab with user parser","stats":{"files_changed":3,"insertions":272,"deletions":0,"files":["changelog.txt","jc/cli.py","jc/parsers/crontab_u.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":269}]}},{"commit":"42cbd1777dbacc614d75f67f3f9156f72be46532","message":"add xml and yaml tests","stats":{"files_changed":2,"insertions":80,"deletions":0,"files":["tests/test_xml.py","tests/test_yaml.py"],"file_stats":[{"name":"tests/test_xml.py","lines_changed":40},{"name":"tests/test_yaml.py","lines_changed":40}]}},{"commit":"ebf375aac0473249cfd212068f6e6e33cc42449a","message":"add ini tests","stats":{"files_changed":1,"insertions":40,"deletions":0,"files":["tests/test_ini.py"],"file_stats":[{"name":"tests/test_ini.py","lines_changed":40}]}},{"commit":"1f9050267eeb870c4c0f50000fc32985c4d8535b","message":"add ini, xml, and yaml test files","stats":{"files_changed":12,"insertions":586,"deletions":0,"files":["tests/fixtures/generic/ini-iptelserver.ini","tests/fixtures/generic/ini-iptelserver.json","tests/fixtures/generic/ini-test.ini","tests/fixtures/generic/ini-test.json","tests/fixtures/generic/xml-cd_catalog.json","tests/fixtures/generic/xml-cd_catalog.xml","tests/fixtures/generic/xml-foodmenu.json","tests/fixtures/generic/xml-foodmenu.xml","tests/fixtures/generic/yaml-istio-sc.json","tests/fixtures/generic/yaml-istio-sc.yaml","tests/fixtures/generic/yaml-istio-sidecar.json","tests/fixtures/generic/yaml-istio-sidecar.yaml"],"file_stats":[{"name":"tests/fixtures/generic/ini-iptelserver.ini","lines_changed":133},{"name":"tests/fixtures/generic/ini-iptelserver.json","lines_changed":1},{"name":"tests/fixtures/generic/ini-test.ini","lines_changed":12},{"name":"tests/fixtures/generic/ini-test.json","lines_changed":1},{"name":"tests/fixtures/generic/xml-cd_catalog.json","lines_changed":1},{"name":"tests/fixtures/generic/xml-cd_catalog.xml","lines_changed":211},{"name":"tests/fixtures/generic/xml-foodmenu.json","lines_changed":1},{"name":"tests/fixtures/generic/xml-foodmenu.xml","lines_changed":33},{"name":"tests/fixtures/generic/yaml-istio-sc.json","lines_changed":1},{"name":"tests/fixtures/generic/yaml-istio-sc.yaml","lines_changed":17},{"name":"tests/fixtures/generic/yaml-istio-sidecar.json","lines_changed":1},{"name":"tests/fixtures/generic/yaml-istio-sidecar.yaml","lines_changed":174}]}},{"commit":"d7f9707a1521719ce051140b1a0b4ced7c5114c9","message":"minor formatting","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/ini.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2}]}},{"commit":"ab589ee3ed09b9d5e09d8c046f3a64cd2bd14c98","message":"add __version__ variable","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]}},{"commit":"c84ec0361fc4c877c698378b28ff9e8b502793b0","message":"xml example update","stats":{"files_changed":4,"insertions":105,"deletions":3,"files":["README.md","docgen.sh","docs/parsers/xml.md","jc/parsers/xml.py"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/xml.md","lines_changed":99},{"name":"jc/parsers/xml.py","lines_changed":5}]}},{"commit":"47d2f8968a8a9b68fc9fff45985f5e69f1a5cc40","message":"doc update","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"changelog.txt","lines_changed":1}]}},{"commit":"019c480bcce7fe3821b75906fc673ce7bb1ffadc","message":"update acknowledgments","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]}},{"commit":"547c6d3d5956984d3c4fb5c2a1b76a595752b467","message":"add xml parser","stats":{"files_changed":5,"insertions":172,"deletions":2,"files":["README.md","changelog.txt","jc/cli.py","jc/parsers/xml.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":46},{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/xml.py","lines_changed":119},{"name":"setup.py","lines_changed":3}]}},{"commit":"b5ebf8b76afcd0e0190994048fe1f5b53f654451","message":"add ruamel.yaml ack","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]}},{"commit":"c690e328f23a69f592dfaaa949b74ba2190ad376","message":"add examples","stats":{"files_changed":2,"insertions":102,"deletions":14,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/yaml.md","lines_changed":58},{"name":"jc/parsers/yaml.py","lines_changed":58}]}},{"commit":"cbb92c1a9517234806f1c54398a69645b6f43669","message":"add ini and yaml","stats":{"files_changed":1,"insertions":94,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":94}]}},{"commit":"beb41997c9b3797e73a678ec1bcddcfb83b5ef0d","message":"doc update","stats":{"files_changed":3,"insertions":91,"deletions":2,"files":["docgen.sh","docs/parsers/ini.md","jc/parsers/ini.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ini.md","lines_changed":87},{"name":"jc/parsers/ini.py","lines_changed":5}]}},{"commit":"755a6faf1110f150fe2261b81439b7d17a9b424e","message":"clean up multi-document support","stats":{"files_changed":1,"insertions":4,"deletions":8,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":12}]}},{"commit":"021f8350a31a49ecc539f02576303600b222b49d","message":"update doc","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":4}]}},{"commit":"76583dcd2f5ef32e58ca87149154563b07e061cb","message":"add ini file parser","stats":{"files_changed":2,"insertions":113,"deletions":0,"files":["jc/cli.py","jc/parsers/ini.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/ini.py","lines_changed":111}]}},{"commit":"bf033239a706c42be3d7508c58a51c542f8a69b0","message":"doc update","stats":{"files_changed":2,"insertions":82,"deletions":7,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/yaml.md","lines_changed":69},{"name":"jc/parsers/yaml.py","lines_changed":20}]}},{"commit":"eb37fccd37fd625f701a14b6cfcf30e9f0bbff4d","message":"doc update","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":11}]}},{"commit":"d04ad453319fe45e302da87f970d2ac0806fae1a","message":"setup for 1.7.1","stats":{"files_changed":3,"insertions":7,"deletions":2,"files":["changelog.txt","docgen.sh","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"setup.py","lines_changed":5}]}},{"commit":"db157b8ca7f7fa935676bafeaafdfd9818a89e6a","message":"add yaml file parser","stats":{"files_changed":2,"insertions":94,"deletions":2,"files":["jc/cli.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6},{"name":"jc/parsers/yaml.py","lines_changed":90}]}},{"commit":"68f277bb2081eb2cba14ffe7f0ee1ee0a982335b","message":"add __version__","stats":{"files_changed":33,"insertions":99,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/crontab.py","lines_changed":3},{"name":"jc/parsers/df.py","lines_changed":3},{"name":"jc/parsers/dig.py","lines_changed":3},{"name":"jc/parsers/du.py","lines_changed":3},{"name":"jc/parsers/env.py","lines_changed":3},{"name":"jc/parsers/foo.py","lines_changed":3},{"name":"jc/parsers/free.py","lines_changed":3},{"name":"jc/parsers/fstab.py","lines_changed":3},{"name":"jc/parsers/history.py","lines_changed":3},{"name":"jc/parsers/hosts.py","lines_changed":3},{"name":"jc/parsers/ifconfig.py","lines_changed":3},{"name":"jc/parsers/iptables.py","lines_changed":3},{"name":"jc/parsers/jobs.py","lines_changed":3},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"jc/parsers/lsblk.py","lines_changed":3},{"name":"jc/parsers/lsmod.py","lines_changed":3},{"name":"jc/parsers/lsof.py","lines_changed":3},{"name":"jc/parsers/mount.py","lines_changed":3},{"name":"jc/parsers/netstat.py","lines_changed":3},{"name":"jc/parsers/pip_list.py","lines_changed":3},{"name":"jc/parsers/pip_show.py","lines_changed":3},{"name":"jc/parsers/ps.py","lines_changed":3},{"name":"jc/parsers/route.py","lines_changed":3},{"name":"jc/parsers/ss.py","lines_changed":3},{"name":"jc/parsers/stat.py","lines_changed":3},{"name":"jc/parsers/systemctl.py","lines_changed":3},{"name":"jc/parsers/systemctl_lj.py","lines_changed":3},{"name":"jc/parsers/systemctl_ls.py","lines_changed":3},{"name":"jc/parsers/systemctl_luf.py","lines_changed":3},{"name":"jc/parsers/uname.py","lines_changed":3},{"name":"jc/parsers/uptime.py","lines_changed":3},{"name":"jc/parsers/w.py","lines_changed":3}]}},{"commit":"4de8f42664379570392552796e34324abb39fdc2","message":"Merge pull request #17 from kellyjonbrazil/dev"},{"commit":"4f118559356edc1da866e1bec80830e7a75a0b26","message":"update version info","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]}},{"commit":"2b9a5fcc32f85295faa55410efcaf142c42bd167","message":"update version","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":4}]}},{"commit":"224948d1f23e01b7cd968820529579792f862f0a","message":"pip list and pip show tests","stats":{"files_changed":21,"insertions":428,"deletions":0,"files":["tests/fixtures/centos-7.7/pip-list.json","tests/fixtures/centos-7.7/pip-list.out","tests/fixtures/centos-7.7/pip-show.json","tests/fixtures/centos-7.7/pip-show.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.11.6/pip-list.json","tests/fixtures/osx-10.11.6/pip-list.out","tests/fixtures/osx-10.11.6/pip-show.json","tests/fixtures/osx-10.11.6/pip-show.out","tests/fixtures/osx-10.14.6/pip-list.json","tests/fixtures/osx-10.14.6/pip-list.out","tests/fixtures/osx-10.14.6/pip-show.json","tests/fixtures/osx-10.14.6/pip-show.out","tests/fixtures/ubuntu-18.04/pip-list-legacy.json","tests/fixtures/ubuntu-18.04/pip-list-legacy.out","tests/fixtures/ubuntu-18.04/pip-list.json","tests/fixtures/ubuntu-18.04/pip-list.out","tests/fixtures/ubuntu-18.04/pip-show.json","tests/fixtures/ubuntu-18.04/pip-show.out","tests/test_pip_list.py","tests/test_pip_show.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/pip-list.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/pip-list.out","lines_changed":22},{"name":"tests/fixtures/centos-7.7/pip-show.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/pip-show.out","lines_changed":32},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/pip-list.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/pip-list.out","lines_changed":7},{"name":"tests/fixtures/osx-10.11.6/pip-show.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/pip-show.out","lines_changed":32},{"name":"tests/fixtures/osx-10.14.6/pip-list.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/pip-list.out","lines_changed":7},{"name":"tests/fixtures/osx-10.14.6/pip-show.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/pip-show.out","lines_changed":32},{"name":"tests/fixtures/ubuntu-18.04/pip-list-legacy.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/pip-list-legacy.out","lines_changed":57},{"name":"tests/fixtures/ubuntu-18.04/pip-list.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/pip-list.out","lines_changed":59},{"name":"tests/fixtures/ubuntu-18.04/pip-show.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/pip-show.out","lines_changed":29},{"name":"tests/test_pip_list.py","lines_changed":76},{"name":"tests/test_pip_show.py","lines_changed":64}]}},{"commit":"36f2812d5a7a94c412e098233c026d99d5205b60","message":"add support for legacy output","stats":{"files_changed":1,"insertions":15,"deletions":7,"files":["jc/parsers/pip_list.py"],"file_stats":[{"name":"jc/parsers/pip_list.py","lines_changed":22}]}},{"commit":"be06aa2b31c057c56229e75c7fa70052b83053ee","message":"update parse() Return info","stats":{"files_changed":65,"insertions":70,"deletions":66,"files":["docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":3},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":3},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":3},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":3},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2}]}},{"commit":"41f8e3aba268ca0cd09931a04368615425c1aec8","message":"update Return info","stats":{"files_changed":65,"insertions":67,"deletions":65,"files":["docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":3},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":3},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2}]}},{"commit":"093c0df8978ace842af5258f9aff72c63c6f843d","message":"schema info","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]}},{"commit":"37afc7dc8ae30342d01f3f72e73646fa60bb5294","message":"updte todo and compatibility","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]}},{"commit":"efbf3549606fc77f8c16587ff04a0c316dfe5c00","message":"doc update for pip show","stats":{"files_changed":4,"insertions":126,"deletions":12,"files":["README.md","docgen.sh","docs/parsers/pip_show.md","jc/parsers/pip_show.py"],"file_stats":[{"name":"README.md","lines_changed":31},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/pip_show.md","lines_changed":94},{"name":"jc/parsers/pip_show.py","lines_changed":12}]}},{"commit":"5e39fe0d8044787389d8f206f3c863d4bdf1e2ed","message":"pip show parser working","stats":{"files_changed":1,"insertions":64,"deletions":5,"files":["jc/parsers/pip_show.py"],"file_stats":[{"name":"jc/parsers/pip_show.py","lines_changed":69}]}},{"commit":"47328dc65969f149c8f027286774ff0847c18add","message":"add pip-show parser","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"addeef50ba54f536855544937a6c98135ae5cd51","message":"initial pip show parser add","stats":{"files_changed":1,"insertions":84,"deletions":0,"files":["jc/parsers/pip_show.py"],"file_stats":[{"name":"jc/parsers/pip_show.py","lines_changed":84}]}},{"commit":"ad338cc5b50a178091c47cbea9a1db135a7fb678","message":"schema doc update","stats":{"files_changed":2,"insertions":56,"deletions":42,"files":["docs/parsers/crontab.md","jc/parsers/crontab.py"],"file_stats":[{"name":"docs/parsers/crontab.md","lines_changed":49},{"name":"jc/parsers/crontab.py","lines_changed":49}]}},{"commit":"202bc8201e31fd453c682265347b4e2ac2d41718","message":"doc update","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["README.md","docs/parsers/crontab.md","jc/parsers/crontab.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"jc/parsers/crontab.py","lines_changed":4}]}},{"commit":"5ff99de405fbd8f79f9c2e301ac27184e0aba6fc","message":"add argument to parser info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]}},{"commit":"86ebe2cf9c6b336eacf217393c3c3c324ee29ec0","message":"initial add of pip list parser","stats":{"files_changed":6,"insertions":205,"deletions":1,"files":["README.md","docgen.sh","docs/parsers/crontab.md","docs/parsers/pip_list.md","jc/cli.py","jc/parsers/pip_list.py"],"file_stats":[{"name":"README.md","lines_changed":21},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":75},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":105}]}},{"commit":"facf0b399c608d33f6a454ee24fd49fc62471742","message":"add osx to campatible","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":4}]}},{"commit":"33db7b0bcb0f24979cad6e173737d75c8ed301af","message":"add crontab tests","stats":{"files_changed":4,"insertions":57,"deletions":0,"files":["tests/fixtures/centos-7.7/crontab.json","tests/fixtures/ubuntu-18.04/crontab.json","tests/fixtures/ubuntu-18.04/crontab.out","tests/test_crontab.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/crontab.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/crontab.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/crontab.out","lines_changed":15},{"name":"tests/test_crontab.py","lines_changed":40}]}},{"commit":"663d07bca1181024d9d08b940237c52197c91729","message":"add crontab","stats":{"files_changed":2,"insertions":191,"deletions":0,"files":["docgen.sh","docs/parsers/crontab.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/crontab.md","lines_changed":190}]}},{"commit":"ba04e4997fcb28adbee446f633c121f1585b9f2c","message":"update docs","stats":{"files_changed":1,"insertions":113,"deletions":4,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":117}]}},{"commit":"c4fee1b658c91afa2abdd746af6c1b4697c44b35","message":"add crontab parser","stats":{"files_changed":1,"insertions":72,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":73}]}},{"commit":"99b92a15bbebc5568f4455f388f945613c4a2759","message":"support shortcut schedules","stats":{"files_changed":2,"insertions":37,"deletions":14,"files":["jc/parsers/crontab.py","tests/fixtures/centos-7.7/crontab.out"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":40},{"name":"tests/fixtures/centos-7.7/crontab.out","lines_changed":11}]}},{"commit":"b076ab5b57a6a59db096485e5ff4eb9f91bae8be","message":"initial crontab parser","stats":{"files_changed":3,"insertions":177,"deletions":0,"files":["jc/cli.py","jc/parsers/crontab.py","tests/fixtures/centos-7.7/crontab.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":132},{"name":"tests/fixtures/centos-7.7/crontab.out","lines_changed":43}]}},{"commit":"687759f75d0e80e81746a84f051e55cfdc870447","message":"alphabetize du entry","stats":{"files_changed":1,"insertions":31,"deletions":31,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":62}]}},{"commit":"9eaac7f3af0e0851c2d091d94c9920faa8a0fdfc","message":"add du","stats":{"files_changed":1,"insertions":32,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":32}]}},{"commit":"4c24e00cfc0748d98e220d08820b88fc156148db","message":"add osx-11 and ubuntu tests","stats":{"files_changed":5,"insertions":21738,"deletions":9,"files":["tests/fixtures/osx-10.11.6/du.json","tests/fixtures/osx-10.11.6/du.out","tests/fixtures/ubuntu-18.04/du.json","tests/fixtures/ubuntu-18.04/du.out","tests/test_du.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/du.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/du.out","lines_changed":2471},{"name":"tests/fixtures/ubuntu-18.04/du.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/du.out","lines_changed":19244},{"name":"tests/test_du.py","lines_changed":30}]}},{"commit":"beb17011b03e720078b0752e79a6a0f6123d1d3c","message":"du tests and docs","stats":{"files_changed":6,"insertions":131,"deletions":2,"files":["changelog.txt","docgen.sh","docs/parsers/du.md","docs/parsers/uname.md","tests/fixtures/osx-10.14.6/du.json","tests/test_du.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/du.md","lines_changed":115},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/du.json","lines_changed":1},{"name":"tests/test_du.py","lines_changed":12}]}},{"commit":"e882bf55bcd1d3526423ed1ccc61fb4819395cce","message":"initial add du parser","stats":{"files_changed":7,"insertions":8755,"deletions":0,"files":["changelog.txt","jc/cli.py","jc/parsers/du.py","tests/fixtures/centos-7.7/du.json","tests/fixtures/centos-7.7/du.out","tests/fixtures/osx-10.14.6/du.out","tests/test_du.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":148},{"name":"tests/fixtures/centos-7.7/du.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/du.out","lines_changed":5199},{"name":"tests/fixtures/osx-10.14.6/du.out","lines_changed":3364},{"name":"tests/test_du.py","lines_changed":40}]}},{"commit":"3a3016adb6d5b9e35f8a39908bfcdc65997cc5c6","message":"add parser_count to about","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]}},{"commit":"1e8b68153ade8a1e3d2b4db36e0c402bbc887079","message":"add osx uname tests","stats":{"files_changed":4,"insertions":27,"deletions":1,"files":["tests/fixtures/osx-10.11.6/uname-a.json","tests/fixtures/osx-10.14.6/uname-a.json","tests/fixtures/osx-10.14.6/uname-a.out","tests/test_uname.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/uname-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/uname-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/uname-a.out","lines_changed":2},{"name":"tests/test_uname.py","lines_changed":24}]}},{"commit":"9335cf65fbb87e3a0a7da0c4e9bcd251cb829de2","message":"add uname osx support","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]}},{"commit":"83f35256aee71f2619ddf880e2b8f2d6c63280bc","message":"add OSX support","stats":{"files_changed":1,"insertions":30,"deletions":19,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":49}]}},{"commit":"428333394817e4461a4eb095f4d6d128305a5f98","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":2}]}},{"commit":"b8f902796b7fb23a41355b23f7ce235bd18edc58","message":"shorten changelog","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]}},{"commit":"8f99ab295cd15718b98781707def97539ad41920","message":"info update","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]}},{"commit":"882310e268e2022f0cd6da75f80f5356529cd05c","message":"add name to about parser info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]}},{"commit":"56bce9521409d1850f75a3ae2be1363e765dd9dc","message":"about code cleanup","stats":{"files_changed":1,"insertions":6,"deletions":10,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":16}]}},{"commit":"c13ecbec2952c5d6765397f645e90653a4fd9d05","message":"clean up parser info","stats":{"files_changed":28,"insertions":2,"deletions":28,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":1},{"name":"jc/parsers/env.py","lines_changed":1},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":1},{"name":"jc/parsers/fstab.py","lines_changed":1},{"name":"jc/parsers/history.py","lines_changed":1},{"name":"jc/parsers/hosts.py","lines_changed":1},{"name":"jc/parsers/iptables.py","lines_changed":1},{"name":"jc/parsers/jobs.py","lines_changed":1},{"name":"jc/parsers/ls.py","lines_changed":1},{"name":"jc/parsers/lsblk.py","lines_changed":1},{"name":"jc/parsers/lsmod.py","lines_changed":1},{"name":"jc/parsers/lsof.py","lines_changed":1},{"name":"jc/parsers/mount.py","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":1},{"name":"jc/parsers/ps.py","lines_changed":1},{"name":"jc/parsers/route.py","lines_changed":1},{"name":"jc/parsers/ss.py","lines_changed":1},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":1},{"name":"jc/parsers/systemctl_lj.py","lines_changed":1},{"name":"jc/parsers/systemctl_ls.py","lines_changed":1},{"name":"jc/parsers/systemctl_luf.py","lines_changed":1},{"name":"jc/parsers/uname.py","lines_changed":1},{"name":"jc/parsers/uptime.py","lines_changed":1},{"name":"jc/parsers/w.py","lines_changed":1}]}},{"commit":"0ffaaa6e73649d1f657af569ac0b912f166e8493","message":"clean up about code","stats":{"files_changed":1,"insertions":7,"deletions":9,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":16}]}},{"commit":"75eff3adea097157c005b2201e353a741241ce8b","message":"remove whitespace","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":8}]}},{"commit":"bf5f80476cff642ae672187ea59d40bdb602101e","message":"use real parser name in error message","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6}]}},{"commit":"9aaf0fbb2f838c0af1e7f18fdb19104f9f5d3d39","message":"doc updates","stats":{"files_changed":29,"insertions":146,"deletions":1,"files":["changelog.txt","docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"docs/parsers/arp.md","lines_changed":11},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5}]}},{"commit":"8f01ef79532743573632d716ceea41d5ea752c88","message":"add -a option info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]}},{"commit":"da1d087452da02631296b1b3dc9ee10d4b7f764b","message":"add parser version info","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]}},{"commit":"e16bc7e882a27a1d5a4bd7cf9972208e6997f96f","message":"add about information to parsers","stats":{"files_changed":29,"insertions":82,"deletions":17,"files":["jc/cli.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":71},{"name":"jc/parsers/arp.py","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":1},{"name":"jc/parsers/env.py","lines_changed":1},{"name":"jc/parsers/foo.py","lines_changed":1},{"name":"jc/parsers/free.py","lines_changed":1},{"name":"jc/parsers/fstab.py","lines_changed":1},{"name":"jc/parsers/history.py","lines_changed":1},{"name":"jc/parsers/hosts.py","lines_changed":1},{"name":"jc/parsers/iptables.py","lines_changed":1},{"name":"jc/parsers/jobs.py","lines_changed":1},{"name":"jc/parsers/ls.py","lines_changed":1},{"name":"jc/parsers/lsblk.py","lines_changed":1},{"name":"jc/parsers/lsmod.py","lines_changed":1},{"name":"jc/parsers/lsof.py","lines_changed":1},{"name":"jc/parsers/mount.py","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":1},{"name":"jc/parsers/ps.py","lines_changed":1},{"name":"jc/parsers/route.py","lines_changed":1},{"name":"jc/parsers/ss.py","lines_changed":1},{"name":"jc/parsers/stat.py","lines_changed":1},{"name":"jc/parsers/systemctl.py","lines_changed":1},{"name":"jc/parsers/systemctl_lj.py","lines_changed":1},{"name":"jc/parsers/systemctl_ls.py","lines_changed":1},{"name":"jc/parsers/systemctl_luf.py","lines_changed":1},{"name":"jc/parsers/uname.py","lines_changed":1},{"name":"jc/parsers/uptime.py","lines_changed":1},{"name":"jc/parsers/w.py","lines_changed":1}]}},{"commit":"fe9bdd4811216257c05b16d6d61897929669d434","message":"add info class","stats":{"files_changed":31,"insertions":384,"deletions":219,"files":["changelog.txt","jc/cli.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/cli.py","lines_changed":127},{"name":"jc/parsers/arp.py","lines_changed":25},{"name":"jc/parsers/df.py","lines_changed":15},{"name":"jc/parsers/dig.py","lines_changed":15},{"name":"jc/parsers/env.py","lines_changed":16},{"name":"jc/parsers/foo.py","lines_changed":16},{"name":"jc/parsers/free.py","lines_changed":16},{"name":"jc/parsers/fstab.py","lines_changed":16},{"name":"jc/parsers/history.py","lines_changed":16},{"name":"jc/parsers/hosts.py","lines_changed":16},{"name":"jc/parsers/ifconfig.py","lines_changed":17},{"name":"jc/parsers/iptables.py","lines_changed":16},{"name":"jc/parsers/jobs.py","lines_changed":16},{"name":"jc/parsers/ls.py","lines_changed":16},{"name":"jc/parsers/lsblk.py","lines_changed":17},{"name":"jc/parsers/lsmod.py","lines_changed":16},{"name":"jc/parsers/lsof.py","lines_changed":16},{"name":"jc/parsers/mount.py","lines_changed":16},{"name":"jc/parsers/netstat.py","lines_changed":16},{"name":"jc/parsers/ps.py","lines_changed":16},{"name":"jc/parsers/route.py","lines_changed":16},{"name":"jc/parsers/ss.py","lines_changed":16},{"name":"jc/parsers/stat.py","lines_changed":15},{"name":"jc/parsers/systemctl.py","lines_changed":16},{"name":"jc/parsers/systemctl_lj.py","lines_changed":16},{"name":"jc/parsers/systemctl_ls.py","lines_changed":16},{"name":"jc/parsers/systemctl_luf.py","lines_changed":16},{"name":"jc/parsers/uname.py","lines_changed":16},{"name":"jc/parsers/uptime.py","lines_changed":16},{"name":"jc/parsers/w.py","lines_changed":16}]}},{"commit":"17b6f3f6d6c398a52166849088a793d0e3b328b7","message":"add osx tests","stats":{"files_changed":3,"insertions":26,"deletions":0,"files":["tests/fixtures/osx-10.11.6/uptime.json","tests/fixtures/osx-10.14.6/uptime.json","tests/test_uptime.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/uptime.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/uptime.json","lines_changed":1},{"name":"tests/test_uptime.py","lines_changed":24}]}},{"commit":"90a6baf0ee3b8b27476badada4e590e22144f810","message":"add osx tests","stats":{"files_changed":6,"insertions":52,"deletions":0,"files":["tests/fixtures/osx-10.11.6/ps-axu.json","tests/fixtures/osx-10.11.6/ps-ef.json","tests/fixtures/osx-10.11.6/w.json","tests/fixtures/osx-10.14.6/w.json","tests/test_ps.py","tests/test_w.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/ps-axu.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ps-ef.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/w.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/w.json","lines_changed":1},{"name":"tests/test_ps.py","lines_changed":24},{"name":"tests/test_w.py","lines_changed":24}]}},{"commit":"f0e73d0e72d540292f41fff51652932c4e8b0315","message":"add osx tests","stats":{"files_changed":8,"insertions":444,"deletions":0,"files":["tests/fixtures/osx-10.11.6/ps-axu.out","tests/fixtures/osx-10.11.6/ps-ef.out","tests/fixtures/osx-10.11.6/uname-a.out","tests/fixtures/osx-10.11.6/uptime.out","tests/fixtures/osx-10.11.6/w.out","tests/fixtures/osx-10.14.6/uname-a.out","tests/fixtures/osx-10.14.6/uptime.out","tests/fixtures/osx-10.14.6/w.out"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/ps-axu.out","lines_changed":211},{"name":"tests/fixtures/osx-10.11.6/ps-ef.out","lines_changed":211},{"name":"tests/fixtures/osx-10.11.6/uname-a.out","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/uptime.out","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/w.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/uname-a.out","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/uptime.out","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/w.out","lines_changed":10}]}},{"commit":"a762882f1ccea6789ce7813b313f3242175b5bd6","message":"fixture updates","stats":{"files_changed":4,"insertions":2,"deletions":88,"files":["tests/fixtures/osx-10.14.6/ps-axu.json","tests/fixtures/osx-10.14.6/ps-axu.out","tests/fixtures/osx-10.14.6/ps-ef.json","tests/fixtures/osx-10.14.6/ps-ef.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ps-axu.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ps-axu.out","lines_changed":43},{"name":"tests/fixtures/osx-10.14.6/ps-ef.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ps-ef.out","lines_changed":43}]}},{"commit":"4c1bc5923658bf463805ea33ec8d170a817909ce","message":"doc updates","stats":{"files_changed":3,"insertions":4,"deletions":3,"files":["docs/parsers/mount.md","docs/parsers/ps.md","docs/parsers/stat.md"],"file_stats":[{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":3},{"name":"docs/parsers/stat.md","lines_changed":2}]}},{"commit":"f2962083f80503f82c3eddf470674c776e616b32","message":"add osx support for mount parser","stats":{"files_changed":7,"insertions":93,"deletions":17,"files":["changelog.txt","jc/parsers/mount.py","tests/fixtures/osx-10.14.6/mount.json","tests/fixtures/osx-10.14.6/mount.out","tests/fixtures/osx-10.14.6/mount2.json","tests/fixtures/osx-10.14.6/mount2.out","tests/test_mount.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/parsers/mount.py","lines_changed":68},{"name":"tests/fixtures/osx-10.14.6/mount.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/mount.out","lines_changed":6},{"name":"tests/fixtures/osx-10.14.6/mount2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/mount2.out","lines_changed":7},{"name":"tests/test_mount.py","lines_changed":24}]}},{"commit":"a0b22a5bcfa0777895243088b2c0f3bb5b758775","message":"help text formatting","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]}},{"commit":"dcf393354cd57683aaeecbed7b884d19b0fe94d4","message":"doc fix","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":2}]}},{"commit":"5f771656e3fdd703d449b2817faa4faeff1cd879","message":"use universal parser","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":10}]}},{"commit":"f376aab79328a211a127f4f818e7007232f1fae3","message":"doc update","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":3}]}},{"commit":"3c96464217a740571e16c74ad41c1d92f7585547","message":"osx fixes and tests","stats":{"files_changed":6,"insertions":886,"deletions":13,"files":["jc/parsers/ps.py","tests/fixtures/osx-10.14.6/ps-axu.json","tests/fixtures/osx-10.14.6/ps-axu.out","tests/fixtures/osx-10.14.6/ps-ef.json","tests/fixtures/osx-10.14.6/ps-ef.out","tests/test_ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":31},{"name":"tests/fixtures/osx-10.14.6/ps-axu.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ps-axu.out","lines_changed":421},{"name":"tests/fixtures/osx-10.14.6/ps-ef.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ps-ef.out","lines_changed":421},{"name":"tests/test_ps.py","lines_changed":24}]}},{"commit":"c9892833a16bb63f78537717be65670eb65a87b7","message":"formatting change","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/mount.py"],"file_stats":[{"name":"jc/parsers/mount.py","lines_changed":2}]}},{"commit":"127c98affc7b122f0ced13852850214b9e07677e","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]}},{"commit":"8687a772f53ecaf1a20464429060b94bbf660fe7","message":"use universal parser","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":8}]}},{"commit":"b1162b14d42643fd53dbbe3f89ba042f030d9254","message":"use universal parser","stats":{"files_changed":1,"insertions":3,"deletions":6,"files":["jc/parsers/lsmod.py"],"file_stats":[{"name":"jc/parsers/lsmod.py","lines_changed":9}]}},{"commit":"8a8ee3570733c0c06b8cf53eb005e53ac2f9170f","message":"use universal parser","stats":{"files_changed":1,"insertions":8,"deletions":60,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":68}]}},{"commit":"5e109a3665cf0c286ac9dcbe2a452348a14b90ab","message":"add du","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/fixtures/create_fixtures.sh"],"file_stats":[{"name":"tests/fixtures/create_fixtures.sh","lines_changed":2}]}},{"commit":"11db478430515ef3e1020482792f23d1c40ca32b","message":"update changelog","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]}},{"commit":"a85377014d9f93fcb9840715129b0e09d48d8584","message":"use universal parser","stats":{"files_changed":1,"insertions":5,"deletions":11,"files":["jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/free.py","lines_changed":16}]}},{"commit":"3aea86234d33160f5b3139cbfc2f4f032f655f3a","message":"fix osx-10.11.6 tests","stats":{"files_changed":6,"insertions":70,"deletions":61,"files":["tests/fixtures/osx-10.11.6/ls-al.json","tests/fixtures/osx-10.11.6/ls-al.out","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.11.6/ls-alh.out","tests/fixtures/osx-10.11.6/ls.json","tests/fixtures/osx-10.11.6/ls.out"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/ls-al.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ls-al.out","lines_changed":61},{"name":"tests/fixtures/osx-10.11.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ls-alh.out","lines_changed":61},{"name":"tests/fixtures/osx-10.11.6/ls.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ls.out","lines_changed":3}]}},{"commit":"916ec6ed6b858a8a496e4026b9bab5505abca2ff","message":"fix osx ls tests","stats":{"files_changed":13,"insertions":193,"deletions":61,"files":["tests/fixtures/osx-10.11.6/ls-al.json","tests/fixtures/osx-10.11.6/ls-al.out","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.11.6/ls-alh.out","tests/fixtures/osx-10.11.6/ls.json","tests/fixtures/osx-10.11.6/ls.out","tests/fixtures/osx-10.14.6/ls-al.json","tests/fixtures/osx-10.14.6/ls-al.out","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.out","tests/fixtures/osx-10.14.6/ls.json","tests/fixtures/osx-10.14.6/ls.out","tests/test_ls.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/ls-al.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ls-al.out","lines_changed":29},{"name":"tests/fixtures/osx-10.11.6/ls-alh.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ls-alh.out","lines_changed":29},{"name":"tests/fixtures/osx-10.11.6/ls.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ls.out","lines_changed":18},{"name":"tests/fixtures/osx-10.14.6/ls-al.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-al.out","lines_changed":64},{"name":"tests/fixtures/osx-10.14.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-alh.out","lines_changed":64},{"name":"tests/fixtures/osx-10.14.6/ls.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls.out","lines_changed":5},{"name":"tests/test_ls.py","lines_changed":36}]}},{"commit":"9dca6ba5393d8840ad7fc9509273715a71955bd1","message":"doc formatting change","stats":{"files_changed":55,"insertions":120,"deletions":6,"files":["docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":8},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":3},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":3},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":8},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":3},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":3},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2}]}},{"commit":"0ebb89f561e1ced2e7f61ae19290e176c8a98bf2","message":"doc update","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["docs/parsers/arp.md"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2}]}},{"commit":"e237867e242211ba37206911ebf1b35c97b417fd","message":"doc formatting","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":2}]}},{"commit":"78fa44fd9ac9790313de6f461eb46d9b8d6159d4","message":"add compatibility to docs","stats":{"files_changed":24,"insertions":75,"deletions":3,"files":["docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/netstat.md","lines_changed":3},{"name":"docs/parsers/ps.md","lines_changed":3},{"name":"docs/parsers/route.md","lines_changed":3},{"name":"docs/parsers/ss.md","lines_changed":3},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":3},{"name":"docs/parsers/systemctl_lj.md","lines_changed":3},{"name":"docs/parsers/systemctl_ls.md","lines_changed":3},{"name":"docs/parsers/systemctl_luf.md","lines_changed":3},{"name":"docs/parsers/uname.md","lines_changed":3},{"name":"docs/parsers/uptime.md","lines_changed":3},{"name":"docs/parsers/w.md","lines_changed":3},{"name":"jc/parsers/netstat.py","lines_changed":3},{"name":"jc/parsers/ps.py","lines_changed":3},{"name":"jc/parsers/route.py","lines_changed":5},{"name":"jc/parsers/ss.py","lines_changed":3},{"name":"jc/parsers/stat.py","lines_changed":5},{"name":"jc/parsers/systemctl.py","lines_changed":3},{"name":"jc/parsers/systemctl_lj.py","lines_changed":3},{"name":"jc/parsers/systemctl_ls.py","lines_changed":3},{"name":"jc/parsers/systemctl_luf.py","lines_changed":3},{"name":"jc/parsers/uname.py","lines_changed":3},{"name":"jc/parsers/uptime.py","lines_changed":3},{"name":"jc/parsers/w.py","lines_changed":3}]}},{"commit":"d615fa3b933ccd284bd8ee92baf5dfa6264507c6","message":"add compatibility to docs","stats":{"files_changed":30,"insertions":91,"deletions":1,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":3},{"name":"docs/parsers/df.md","lines_changed":3},{"name":"docs/parsers/dig.md","lines_changed":3},{"name":"docs/parsers/env.md","lines_changed":3},{"name":"docs/parsers/free.md","lines_changed":3},{"name":"docs/parsers/fstab.md","lines_changed":3},{"name":"docs/parsers/history.md","lines_changed":3},{"name":"docs/parsers/hosts.md","lines_changed":3},{"name":"docs/parsers/ifconfig.md","lines_changed":3},{"name":"docs/parsers/iptables.md","lines_changed":3},{"name":"docs/parsers/jobs.md","lines_changed":3},{"name":"docs/parsers/ls.md","lines_changed":3},{"name":"docs/parsers/lsblk.md","lines_changed":3},{"name":"docs/parsers/lsmod.md","lines_changed":3},{"name":"docs/parsers/lsof.md","lines_changed":3},{"name":"docs/parsers/mount.md","lines_changed":3},{"name":"jc/parsers/env.py","lines_changed":3},{"name":"jc/parsers/foo.py","lines_changed":3},{"name":"jc/parsers/free.py","lines_changed":3},{"name":"jc/parsers/fstab.py","lines_changed":3},{"name":"jc/parsers/history.py","lines_changed":3},{"name":"jc/parsers/hosts.py","lines_changed":3},{"name":"jc/parsers/ifconfig.py","lines_changed":3},{"name":"jc/parsers/iptables.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":3},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"jc/parsers/lsblk.py","lines_changed":3},{"name":"jc/parsers/lsmod.py","lines_changed":3},{"name":"jc/parsers/lsof.py","lines_changed":3},{"name":"jc/parsers/mount.py","lines_changed":3}]}},{"commit":"ce134dc332dd9175e0d1823a4959bed427a3ddce","message":"Add OSX tests for ls","stats":{"files_changed":7,"insertions":115,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-al.json","tests/fixtures/osx-10.14.6/ls-al.out","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.out","tests/fixtures/osx-10.14.6/ls.json","tests/fixtures/osx-10.14.6/ls.out","tests/test_ls.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ls-al.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-al.out","lines_changed":29},{"name":"tests/fixtures/osx-10.14.6/ls-alh.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-alh.out","lines_changed":29},{"name":"tests/fixtures/osx-10.14.6/ls.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls.out","lines_changed":18},{"name":"tests/test_ls.py","lines_changed":36}]}},{"commit":"a56e4dc752a01635fbd9fc31e21d390bbd629084","message":"use universal simple table parser","stats":{"files_changed":3,"insertions":28,"deletions":3,"files":["changelog.txt","jc/parsers/arp.py","jc/parsers/universal.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/arp.py","lines_changed":6},{"name":"jc/parsers/universal.py","lines_changed":24}]}},{"commit":"d221b4aa29e80dda2b591059f4d64c416bff0a17","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]}},{"commit":"d2cba6ad2f1f1cd35aa174239584a0291abb8e37","message":"add compatibility info","stats":{"files_changed":3,"insertions":9,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/df.py","lines_changed":3},{"name":"jc/parsers/dig.py","lines_changed":3}]}},{"commit":"84b3c30b525ddf1f74eb7fd833050a0ec69621dd","message":"add osx tests","stats":{"files_changed":21,"insertions":254,"deletions":2,"files":["tests/fixtures/osx-10.11.6/df-h.json","tests/fixtures/osx-10.11.6/df-h.out","tests/fixtures/osx-10.11.6/df.json","tests/fixtures/osx-10.11.6/df.out","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-aaaa.out","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig-x.out","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.11.6/dig.out","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/osx-10.14.6/df-h.out","tests/fixtures/osx-10.14.6/df.json","tests/fixtures/osx-10.14.6/df.out","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-aaaa.out","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig-x.out","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/osx-10.14.6/dig.out","tests/test_df.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/df-h.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/df-h.out","lines_changed":7},{"name":"tests/fixtures/osx-10.11.6/df.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/df.out","lines_changed":7},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.out","lines_changed":20},{"name":"tests/fixtures/osx-10.11.6/dig-x.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/dig-x.out","lines_changed":20},{"name":"tests/fixtures/osx-10.11.6/dig.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/dig.out","lines_changed":41},{"name":"tests/fixtures/osx-10.14.6/df-h.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/df-h.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/df.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/df.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.out","lines_changed":20},{"name":"tests/fixtures/osx-10.14.6/dig-x.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig-x.out","lines_changed":20},{"name":"tests/fixtures/osx-10.14.6/dig.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig.out","lines_changed":41},{"name":"tests/test_df.py","lines_changed":52}]}},{"commit":"68eeec19a812b735627763bb7d7e2a58b72f7504","message":"doc update","stats":{"files_changed":3,"insertions":30,"deletions":25,"files":["README.md","docs/parsers/df.md","jc/parsers/df.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docs/parsers/df.md","lines_changed":31},{"name":"jc/parsers/df.py","lines_changed":20}]}},{"commit":"c6d1528a2ed302ea82828b733a98db415be83708","message":"use _ instead of -","stats":{"files_changed":4,"insertions":19,"deletions":8,"files":["jc/parsers/df.py","jc/parsers/universal.py","tests/fixtures/centos-7.7/df.json","tests/fixtures/ubuntu-18.04/df.json"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":21},{"name":"jc/parsers/universal.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/df.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/df.json","lines_changed":2}]}},{"commit":"50a6b256b8a0936299f562c208ede6187feeb9a7","message":"new universal parsers to limit code duplication","stats":{"files_changed":1,"insertions":83,"deletions":0,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":83}]}},{"commit":"bbba1fe477014d0b7f370ce46ed821121be81a8e","message":"update df to use universal sparse table parser for osx compatibility","stats":{"files_changed":1,"insertions":38,"deletions":19,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":57}]}},{"commit":"46b827da6b438be73fab168c3f05298483b141e4","message":"add osx compatibility","stats":{"files_changed":7,"insertions":75,"deletions":4,"files":["changelog.txt","jc/parsers/arp.py","tests/fixtures/osx-10.11.6/arp-a.json","tests/fixtures/osx-10.11.6/arp-a.out","tests/fixtures/osx-10.14.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a.out","tests/test_arp.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/arp.py","lines_changed":27},{"name":"tests/fixtures/osx-10.11.6/arp-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/arp-a.out","lines_changed":13},{"name":"tests/fixtures/osx-10.14.6/arp-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/arp-a.out","lines_changed":12},{"name":"tests/test_arp.py","lines_changed":24}]}},{"commit":"5e8c28a30a283b6ef525e9e78d3ef2a0e1526927","message":"comment fix","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2}]}},{"commit":"e5d39031645ac897e0c0297f514ee62efe02f5f9","message":"update ifconfig doc","stats":{"files_changed":1,"insertions":38,"deletions":17,"files":["docs/parsers/ifconfig.md"],"file_stats":[{"name":"docs/parsers/ifconfig.md","lines_changed":55}]}},{"commit":"23975c9c9e1dd9d3e9fd7c05d231a86d646be048","message":"fixup osx subnet mask and convert state to an array","stats":{"files_changed":10,"insertions":132,"deletions":45,"files":["README.md","changelog.txt","jc/parsers/ifconfig.py","tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig2.json","tests/fixtures/osx-10.14.6/ifconfig.json","tests/fixtures/osx-10.14.6/ifconfig2.json","tests/fixtures/ubuntu-18.04/ifconfig.json","tests/test_ifconfig.py"],"file_stats":[{"name":"README.md","lines_changed":35},{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":80},{"name":"tests/fixtures/centos-7.7/ifconfig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ifconfig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ifconfig2.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ifconfig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ifconfig2.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ifconfig.json","lines_changed":2},{"name":"tests/test_ifconfig.py","lines_changed":48}]}},{"commit":"1e0dab8355e6fcb0ecde85270d4daac6ad93875b","message":"ifconfig fixture updates","stats":{"files_changed":10,"insertions":272,"deletions":2,"files":["tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.out","tests/fixtures/osx-10.11.6/ifconfig2.json","tests/fixtures/osx-10.11.6/ifconfig2.out","tests/fixtures/osx-10.14.6/ifconfig.json","tests/fixtures/osx-10.14.6/ifconfig.out","tests/fixtures/osx-10.14.6/ifconfig2.json","tests/fixtures/osx-10.14.6/ifconfig2.out","tests/fixtures/ubuntu-18.04/ifconfig.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ifconfig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ifconfig.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ifconfig.out","lines_changed":40},{"name":"tests/fixtures/osx-10.11.6/ifconfig2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ifconfig2.out","lines_changed":40},{"name":"tests/fixtures/osx-10.14.6/ifconfig.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ifconfig.out","lines_changed":91},{"name":"tests/fixtures/osx-10.14.6/ifconfig2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ifconfig2.out","lines_changed":95},{"name":"tests/fixtures/ubuntu-18.04/ifconfig.json","lines_changed":2}]}},{"commit":"5f4c10ffd5a9cbe4e5e3d2b9adc34f36492eaf46","message":"doc update","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"changelog.txt","lines_changed":4}]}},{"commit":"6f3d2b4b566b963fbf38572c587e8bd4e18881dc","message":"require ifconfig-parser v0.0.5 for mac and bytes support","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"fea8ace8446b64abe9e61a028951bc4e6df9f9c9","message":"add OSX compatibility","stats":{"files_changed":2,"insertions":20,"deletions":6,"files":["README.md","jc/parsers/ifconfig.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":22}]}},{"commit":"6633d9262c936217d8e90e64505c66b006cdab56","message":"Set theme jekyll-theme-cayman","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["_config.yml"],"file_stats":[{"name":"_config.yml","lines_changed":1}]}},{"commit":"7d54137140e6d0515bc23c131a097af5c70c3379","message":"link update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"2fcda6f2480ae6bd5428a0147c19f9af527391b8","message":"add motivation to readme","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]}},{"commit":"9c1b8bacf9a59a86feb2a91eb44919e800491d1e","message":"Merge pull request #16 from kellyjonbrazil/dev"},{"commit":"4867655eb297b1da7a55e0d3a24c7ed7c8af55c7","message":"add line-numbers tests","stats":{"files_changed":6,"insertions":172,"deletions":0,"files":[".../centos-7.7/iptables-filter-line-numbers.json",".../centos-7.7/iptables-filter-line-numbers.out","tests/fixtures/create_fixtures.sh",".../ubuntu-18.04/iptables-filter-line-numbers.json",".../ubuntu-18.04/iptables-filter-line-numbers.out","tests/test_iptables.py"],"file_stats":[{"name":".../centos-7.7/iptables-filter-line-numbers.json","lines_changed":1},{"name":".../centos-7.7/iptables-filter-line-numbers.out","lines_changed":128},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":1},{"name":".../ubuntu-18.04/iptables-filter-line-numbers.json","lines_changed":1},{"name":".../ubuntu-18.04/iptables-filter-line-numbers.out","lines_changed":17},{"name":"tests/test_iptables.py","lines_changed":24}]}},{"commit":"47410d1a95406b0960aac705e7cfe925fea3172c","message":"version bump","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"5fa49f5e672fc6f8dc18fb4b1761c98b81362649","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]}},{"commit":"36c53827fab6ac38c0010250ec387db40fdeecfc","message":"add systemctl tests","stats":{"files_changed":19,"insertions":1316,"deletions":308,"files":["tests/fixtures/centos-7.7/systemctl-ls.json","tests/fixtures/centos-7.7/systemctl-ls.out","tests/fixtures/centos-7.7/systemctl-luf.json","tests/fixtures/centos-7.7/systemctl-luf.out","tests/fixtures/centos-7.7/systemctl.json","tests/fixtures/centos-7.7/systemctl.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/systemctl-lj.json","tests/fixtures/ubuntu-18.04/systemctl-lj.out","tests/fixtures/ubuntu-18.04/systemctl-ls.json","tests/fixtures/ubuntu-18.04/systemctl-ls.out","tests/fixtures/ubuntu-18.04/systemctl-luf.json","tests/fixtures/ubuntu-18.04/systemctl-luf.out","tests/fixtures/ubuntu-18.04/systemctl.json","tests/fixtures/ubuntu-18.04/systemctl.out","tests/test_systemctl.py","tests/test_systemctl_lj.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/systemctl-ls.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/systemctl-ls.out","lines_changed":17},{"name":"tests/fixtures/centos-7.7/systemctl-luf.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/systemctl-luf.out","lines_changed":247},{"name":"tests/fixtures/centos-7.7/systemctl.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/systemctl.out","lines_changed":334},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":8},{"name":"tests/fixtures/ubuntu-18.04/systemctl-lj.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/systemctl-lj.out","lines_changed":6},{"name":"tests/fixtures/ubuntu-18.04/systemctl-ls.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/systemctl-ls.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-18.04/systemctl-luf.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/systemctl-luf.out","lines_changed":324},{"name":"tests/fixtures/ubuntu-18.04/systemctl.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/systemctl.out","lines_changed":528},{"name":"tests/test_systemctl.py","lines_changed":4},{"name":"tests/test_systemctl_lj.py","lines_changed":40},{"name":"tests/test_systemctl_ls.py","lines_changed":40},{"name":"tests/test_systemctl_luf.py","lines_changed":40}]}},{"commit":"51631aef5b1b6fdeff4ab543510a9f9e15a0c2c4","message":"add systemctl tests","stats":{"files_changed":5,"insertions":358,"deletions":0,"files":["tests/fixtures/centos-7.7/systemctl.json","tests/fixtures/centos-7.7/systemctl.out","tests/fixtures/ubuntu-18.04/systemctl.json","tests/fixtures/ubuntu-18.04/systemctl.out","tests/test_systemctl.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/systemctl.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/systemctl.out","lines_changed":118},{"name":"tests/fixtures/ubuntu-18.04/systemctl.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/systemctl.out","lines_changed":198},{"name":"tests/test_systemctl.py","lines_changed":40}]}},{"commit":"a0298ac8a39093620b6859c909a78d11ab4a8e56","message":"add fstab tests","stats":{"files_changed":5,"insertions":55,"deletions":0,"files":["tests/fixtures/centos-7.7/fstab.json","tests/fixtures/centos-7.7/fstab.out","tests/fixtures/ubuntu-18.04/fstab.json","tests/fixtures/ubuntu-18.04/fstab.out","tests/test_fstab.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/fstab.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/fstab.out","lines_changed":11},{"name":"tests/fixtures/ubuntu-18.04/fstab.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/fstab.out","lines_changed":2},{"name":"tests/test_fstab.py","lines_changed":40}]}},{"commit":"98c0188821ebaa71c5661f2e095cf464bec695f2","message":"formatting fix","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/systemctl_ls.md","jc/parsers/systemctl_ls.py"],"file_stats":[{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2}]}},{"commit":"ab1dabe3e42997825707006b63cc0c03d28470d4","message":"doc update","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py"],"file_stats":[{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2}]}},{"commit":"94bdb11fdf0e16d89769046d317643334ef1acdd","message":"remove systemctl from TODO","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]}},{"commit":"b6727d68bab66164a3834b240ae868062aad9371","message":"add systemctl parsers","stats":{"files_changed":1,"insertions":68,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":68}]}},{"commit":"89bad7fc2b4023b10b6eeb7ff1f8f18b71731cb6","message":"remove systemctl list-machines parser","stats":{"files_changed":5,"insertions":1,"deletions":191,"files":["changelog.txt","docgen.sh","docs/parsers/systemctl_lm.md","jc/cli.py","jc/parsers/systemctl_lm.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/systemctl_lm.md","lines_changed":76},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/systemctl_lm.py","lines_changed":110}]}},{"commit":"c0b8b810a2616e77973c1223f9c39329112337ac","message":"add systemctl list parsers","stats":{"files_changed":5,"insertions":306,"deletions":0,"files":["docgen.sh","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_lm.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md"],"file_stats":[{"name":"docgen.sh","lines_changed":4},{"name":"docs/parsers/systemctl_lj.md","lines_changed":94},{"name":"docs/parsers/systemctl_lm.md","lines_changed":76},{"name":"docs/parsers/systemctl_ls.md","lines_changed":68},{"name":"docs/parsers/systemctl_luf.md","lines_changed":64}]}},{"commit":"31eb65acd18b6d9163de900dbe48807a41a23785","message":"doc fix","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_lm.py"],"file_stats":[{"name":"jc/parsers/systemctl_lm.py","lines_changed":4}]}},{"commit":"513bbeb4649c011476930e1d1bf739ff06c2d66f","message":"add break on footer condition","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/systemctl_lj.py"],"file_stats":[{"name":"jc/parsers/systemctl_lj.py","lines_changed":2}]}},{"commit":"3a52fb725a0e56b52a0ea430266400b268360737","message":"add systemctl list-jobs parser","stats":{"files_changed":2,"insertions":55,"deletions":29,"files":["jc/cli.py","jc/parsers/systemctl_lj.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4},{"name":"jc/parsers/systemctl_lj.py","lines_changed":80}]}},{"commit":"5affd444999de88b9bff7b49d790913540f97cd2","message":"add systemctl_lj, lm, ls, and luf","stats":{"files_changed":6,"insertions":342,"deletions":24,"files":["jc/cli.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_lm.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":11},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":110},{"name":"jc/parsers/systemctl_lm.py","lines_changed":110},{"name":"jc/parsers/systemctl_ls.py","lines_changed":101},{"name":"jc/parsers/systemctl_luf.py","lines_changed":32}]}},{"commit":"5dbc6e806c5d05bfa1f7e2156ed2573341eb23c9","message":"add systemctl_luf parser","stats":{"files_changed":2,"insertions":142,"deletions":29,"files":["jc/cli.py","jc/parsers/systemctl_luf.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":61},{"name":"jc/parsers/systemctl_luf.py","lines_changed":110}]}},{"commit":"59ae31f3f342c9337037aac4630310c9b9eb8287","message":"add systemctl parser","stats":{"files_changed":6,"insertions":219,"deletions":0,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/systemctl.md","jc/cli.py","jc/parsers/systemctl.py"],"file_stats":[{"name":"README.md","lines_changed":29},{"name":"changelog.txt","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/systemctl.md","lines_changed":76},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/systemctl.py","lines_changed":109}]}},{"commit":"230e921c2e8d931ea8a6abdf81215dbfc968b41c","message":"remove fstab from TODO","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]}},{"commit":"a7c3d88b08ab90b719035cb15d78afe708235742","message":"update example and docs","stats":{"files_changed":3,"insertions":136,"deletions":0,"files":["docgen.sh","docs/parsers/fstab.md","jc/parsers/fstab.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/fstab.md","lines_changed":107},{"name":"jc/parsers/fstab.py","lines_changed":28}]}},{"commit":"9b453bcb84dd9f2f566955eda1ab35c863b3e8a1","message":"remove commented code block","stats":{"files_changed":1,"insertions":1,"deletions":13,"files":["jc/parsers/fstab.py"],"file_stats":[{"name":"jc/parsers/fstab.py","lines_changed":14}]}},{"commit":"ce43c782f601fc12267fa22279e8e0142ecc3a7f","message":"fstab update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"cb16faaf4d1700379d53053fe06824fd03404f87","message":"helptext update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"3f1d3ff6d85422536e0adfb6433fd3ec0399ebe1","message":"add examples","stats":{"files_changed":2,"insertions":73,"deletions":6,"files":["README.md","jc/parsers/fstab.py"],"file_stats":[{"name":"README.md","lines_changed":31},{"name":"jc/parsers/fstab.py","lines_changed":48}]}},{"commit":"6f67eecd5ed46f8a692ff5dd607a2395a5c838ff","message":"add fstab parser","stats":{"files_changed":2,"insertions":108,"deletions":0,"files":["jc/cli.py","jc/parsers/fstab.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/fstab.py","lines_changed":105}]}},{"commit":"e75c819190634f0a9048942b39eda691831829ee","message":"changelog update","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]}},{"commit":"601e68d104dd43940acadaa574dfd9b5117b0476","message":"doc update","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/hosts.md","jc/parsers/hosts.py"],"file_stats":[{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2}]}},{"commit":"8285ecfd1e7810102cdbc399398a16f999c841ee","message":"enhance test file with comments","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["tests/fixtures/centos-7.7/hosts.out","tests/fixtures/ubuntu-18.04/hosts.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/hosts.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/hosts.out","lines_changed":3}]}},{"commit":"8726de902e527b95a12afd79a53d533cc176703d","message":"add hosts parser","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]}},{"commit":"4133585274b0e7faa0255a911468248eb390d673","message":"add hosts tests","stats":{"files_changed":5,"insertions":53,"deletions":0,"files":["tests/fixtures/centos-7.7/hosts.json","tests/fixtures/centos-7.7/hosts.out","tests/fixtures/ubuntu-18.04/hosts.json","tests/fixtures/ubuntu-18.04/hosts.out","tests/test_hosts.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/hosts.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/hosts.out","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/hosts.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/hosts.out","lines_changed":9},{"name":"tests/test_hosts.py","lines_changed":40}]}},{"commit":"ad913b141721655a72a7b2a6ad60037e5acd5f9a","message":"add hosts docs","stats":{"files_changed":4,"insertions":148,"deletions":2,"files":["README.md","docgen.sh","docs/parsers/hosts.md","jc/parsers/hosts.py"],"file_stats":[{"name":"README.md","lines_changed":51},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/hosts.md","lines_changed":96},{"name":"jc/parsers/hosts.py","lines_changed":2}]}},{"commit":"7113e5a844fc0304f62f4afe65b5cbc816f75372","message":"filter out comments at the end of the line","stats":{"files_changed":1,"insertions":10,"deletions":0,"files":["jc/parsers/hosts.py"],"file_stats":[{"name":"jc/parsers/hosts.py","lines_changed":10}]}},{"commit":"a3a8369dc0e7227072f595cef1e57d471eff4d2f","message":"add docs","stats":{"files_changed":1,"insertions":51,"deletions":9,"files":["jc/parsers/hosts.py"],"file_stats":[{"name":"jc/parsers/hosts.py","lines_changed":60}]}},{"commit":"64016b8ef049d5d4f02b4371f5cc9632c19bcaa2","message":"add hosts parser","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["jc/cli.py","jc/parsers/hosts.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/hosts.py","lines_changed":89}]}},{"commit":"1cb49d60c84054b0446f299f6b4bab7d102101c1","message":"remove sar and sadf","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"c858adfd12144569d0b990a217c5bcd75bd23828","message":"remove stat from todo","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]}},{"commit":"08d68327c777dd740d93a1b5fff8cf62f58904c6","message":"add stat tests","stats":{"files_changed":5,"insertions":8080,"deletions":0,"files":["tests/fixtures/centos-7.7/stat.json","tests/fixtures/centos-7.7/stat.out","tests/fixtures/ubuntu-18.04/stat.json","tests/fixtures/ubuntu-18.04/stat.out","tests/test_stat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/stat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/stat.out","lines_changed":6678},{"name":"tests/fixtures/ubuntu-18.04/stat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/stat.out","lines_changed":1360},{"name":"tests/test_stat.py","lines_changed":40}]}},{"commit":"0d7c6c5664911af7a41149d51dd6ae05b39d7648","message":"doc fix and add continue lines","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/parsers/stat.md","jc/parsers/stat.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":8}]}},{"commit":"8bfa41dbf485cb06c928bc00a68727d2ceac21fa","message":"change values to null if -","stats":{"files_changed":3,"insertions":22,"deletions":14,"files":["README.md","docs/parsers/stat.md","jc/parsers/stat.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docs/parsers/stat.md","lines_changed":12},{"name":"jc/parsers/stat.py","lines_changed":20}]}},{"commit":"7e2fa48ed4f3fd452082ce06e7306efd38b2d508","message":"update changelog","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]}},{"commit":"340635cad5224f2c715bf961956f4b9b6119d80b","message":"fix stats doc","stats":{"files_changed":3,"insertions":408,"deletions":111,"files":["docgen.sh","docs/parsers/ss.md","docs/parsers/stat.md"],"file_stats":[{"name":"docgen.sh","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":363},{"name":"docs/parsers/stat.md","lines_changed":154}]}},{"commit":"8f77d1de098f035767d73a6965a695b95b75e161","message":"add stat docs","stats":{"files_changed":2,"insertions":111,"deletions":253,"files":["docgen.sh","docs/parsers/ss.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ss.md","lines_changed":363}]}},{"commit":"7dcf1b25ffb801375f0bf4263f34713ded904de9","message":"add link_to field","stats":{"files_changed":1,"insertions":13,"deletions":0,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":13}]}},{"commit":"9b735381063a1167a6a74864a43b81aefd98009f","message":"set compatibility to linux only","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":2}]}},{"commit":"3bf8c8c6dbdf7e03e26b4581e35c3274084c07ef","message":"pep8 fixes","stats":{"files_changed":7,"insertions":27,"deletions":27,"files":["jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/mount.py","lines_changed":6},{"name":"jc/parsers/netstat.py","lines_changed":8},{"name":"jc/parsers/ps.py","lines_changed":8},{"name":"jc/parsers/route.py","lines_changed":8},{"name":"jc/parsers/uname.py","lines_changed":8},{"name":"jc/parsers/uptime.py","lines_changed":8},{"name":"jc/parsers/w.py","lines_changed":8}]}},{"commit":"04a1ff2ca7873d55cdbc831e521f3d4892074d98","message":"pep8 fixes","stats":{"files_changed":8,"insertions":28,"deletions":28,"files":["jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":8},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":6},{"name":"jc/parsers/jobs.py","lines_changed":6},{"name":"jc/parsers/ls.py","lines_changed":8},{"name":"jc/parsers/lsblk.py","lines_changed":10},{"name":"jc/parsers/lsmod.py","lines_changed":8},{"name":"jc/parsers/lsof.py","lines_changed":8}]}},{"commit":"64647d230ac936cb43864481ae0f45d13707d7b4","message":"pep8 cleanup","stats":{"files_changed":6,"insertions":21,"deletions":21,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":8},{"name":"jc/parsers/dig.py","lines_changed":8},{"name":"jc/parsers/env.py","lines_changed":8},{"name":"jc/parsers/foo.py","lines_changed":8},{"name":"jc/parsers/free.py","lines_changed":6}]}},{"commit":"c2a67e1b70f33044aecabd8b46018117cb38cb9c","message":"add stat parser","stats":{"files_changed":2,"insertions":213,"deletions":16,"files":["README.md","jc/parsers/stat.py"],"file_stats":[{"name":"README.md","lines_changed":48},{"name":"jc/parsers/stat.py","lines_changed":181}]}},{"commit":"edb9a7c76e1fedaf37b6a226ad4e1cfc08a9a5ec","message":"add stat parser","stats":{"files_changed":2,"insertions":94,"deletions":0,"files":["jc/cli.py","jc/parsers/stat.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/stat.py","lines_changed":91}]}},{"commit":"a407f5b67833cc5f8dda9fe8265cd34e62f28d14","message":"minor update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"e5b4987acb70e854d9996350235c5535b4a46b69","message":"doc update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"ba8cc18eebe779742cff0ba4c8bebe376e787c8c","message":"add ss tests","stats":{"files_changed":5,"insertions":405,"deletions":0,"files":["tests/fixtures/centos-7.7/ss-sudo-a.json","tests/fixtures/centos-7.7/ss-sudo-a.out","tests/fixtures/ubuntu-18.04/ss-sudo-a.json","tests/fixtures/ubuntu-18.04/ss-sudo-a.out","tests/test_ss.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ss-sudo-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ss-sudo-a.out","lines_changed":204},{"name":"tests/fixtures/ubuntu-18.04/ss-sudo-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ss-sudo-a.out","lines_changed":159},{"name":"tests/test_ss.py","lines_changed":40}]}},{"commit":"d2c7316e00b9aaf19231c05351821041458baf98","message":"update command options info","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]}},{"commit":"609aa14d243206e81ed31f8438c3f42e8263e140","message":"spelling fix","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/ss.md","jc/parsers/ss.py"],"file_stats":[{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2}]}},{"commit":"ef1ad4c700fcb740b5fbe1e12205b9a30ae427ab","message":"doc update","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["docs/parsers/ss.md","jc/parsers/ss.py"],"file_stats":[{"name":"docs/parsers/ss.md","lines_changed":3},{"name":"jc/parsers/ss.py","lines_changed":3}]}},{"commit":"a0e2732152dc3005914b9a3e4f03e937a113c67f","message":"add ss example","stats":{"files_changed":1,"insertions":64,"deletions":12,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":76}]}},{"commit":"9b5d3e3be1ac07813e716f8426fe89cced478221","message":"update doc","stats":{"files_changed":1,"insertions":135,"deletions":25,"files":["docs/parsers/ss.md"],"file_stats":[{"name":"docs/parsers/ss.md","lines_changed":160}]}},{"commit":"2663ef31fbc1b69b89b8032640a25065cc953866","message":"fix field names per ss documentation","stats":{"files_changed":1,"insertions":159,"deletions":30,"files":["jc/parsers/ss.py"],"file_stats":[{"name":"jc/parsers/ss.py","lines_changed":189}]}},{"commit":"a4cdd3378e6a031f16dd371ed5cd60ff018feb32","message":"add compatibility info","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":6}]}},{"commit":"2f805da24d0e833e3d2a1f3a5ec34031fa911c05","message":"add colon to parameter in docs","stats":{"files_changed":45,"insertions":51,"deletions":51,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/utils.md","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/utils.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":8},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":8}]}},{"commit":"79152a946d93e4facf9711bfa0f421e1978e0f1f","message":"initialize network_list and socket_list variables","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":3}]}},{"commit":"de37bb37d01b397df2b5992b4acd64817380401d","message":"add ss docs","stats":{"files_changed":3,"insertions":187,"deletions":1,"files":["docgen.sh","docs/parsers/ss.md","jc/parsers/ss.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ss.md","lines_changed":184},{"name":"jc/parsers/ss.py","lines_changed":3}]}},{"commit":"f783e44e5c0cd05733da5d24573f06d05760f993","message":"doc fix","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"changelog.txt","lines_changed":1}]}},{"commit":"af82f2c991ac0668485e75ae78a26b9553ec8b13","message":"update raw format note","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"46774daf9d3e0612df8f79d4b6b724e612ceb725","message":"doc update","stats":{"files_changed":2,"insertions":194,"deletions":4,"files":["README.md","jc/parsers/ss.py"],"file_stats":[{"name":"README.md","lines_changed":68},{"name":"jc/parsers/ss.py","lines_changed":130}]}},{"commit":"648306b7856fe2e296ce463ff4c9c2a8632c92d4","message":"process ss data","stats":{"files_changed":1,"insertions":44,"deletions":22,"files":["jc/parsers/ss.py"],"file_stats":[{"name":"jc/parsers/ss.py","lines_changed":66}]}},{"commit":"b7a4f205b80c0a6a41aaabf59703525ac526c295","message":"parser fixes","stats":{"files_changed":1,"insertions":17,"deletions":14,"files":["jc/parsers/ss.py"],"file_stats":[{"name":"jc/parsers/ss.py","lines_changed":31}]}},{"commit":"fdb168b43a69358a97bf43b71a0adbc7b1ef56f5","message":"add ss parser","stats":{"files_changed":2,"insertions":120,"deletions":0,"files":["jc/cli.py","jc/parsers/ss.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/ss.py","lines_changed":117}]}},{"commit":"b6f65c93c462856f26201df0cbfe804b29a65169","message":"ps doc update","stats":{"files_changed":3,"insertions":43,"deletions":69,"files":["README.md","docs/parsers/ps.md","jc/parsers/ps.py"],"file_stats":[{"name":"README.md","lines_changed":26},{"name":"docs/parsers/ps.md","lines_changed":43},{"name":"jc/parsers/ps.py","lines_changed":43}]}},{"commit":"3f4838f17a81969718d9e5b6bafa21e0b92e1d95","message":"remove cli.md","stats":{"files_changed":2,"insertions":0,"deletions":6,"files":["docgen.sh","docs/cli.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/cli.md","lines_changed":5}]}},{"commit":"eef0dee2aa206716d9cf011bec58a06c46bbee15","message":"doc update","stats":{"files_changed":2,"insertions":8,"deletions":0,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":4},{"name":"jc/utils.py","lines_changed":4}]}},{"commit":"e17388d3b2d1521d963bf9dd9e7a4ba5ba9bb09d","message":"doc update","stats":{"files_changed":2,"insertions":44,"deletions":4,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":22},{"name":"jc/utils.py","lines_changed":26}]}},{"commit":"7e6a1bc719b7160ba70cd326ff6aa182993a7380","message":"doc update","stats":{"files_changed":2,"insertions":41,"deletions":63,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":51},{"name":"jc/__init__.py","lines_changed":53}]}},{"commit":"37738a2ea2f15af847e4b8383aba911e2020a3e8","message":"update contributions","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"c5834a57db8957723a1425b9db46c433e28a3af1","message":"add todo section","stats":{"files_changed":1,"insertions":14,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":14}]}},{"commit":"91b9373f380e06f91888811edbfb21747ff08810","message":"new examples","stats":{"files_changed":1,"insertions":417,"deletions":673,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1090}]}},{"commit":"ce0bb5b816eed0c75542ead474c3dcb8401be2d7","message":"formatting fix","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"f330ff0eff00586f46d18497f2441e94b6430e91","message":"wrap example text","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":12}]}},{"commit":"4b02700414660b90518311485761870402368625","message":"update simple examples","stats":{"files_changed":1,"insertions":9,"deletions":20,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":29}]}},{"commit":"ee30180376b7acec46314bbc483866bff41c362a","message":"fix note","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"338e0ff15c7fac84475c1ed107e6a23e7a009b1f","message":"add schema note","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"3ac75305dfa33429646bb5d415567034cccfeee3","message":"update process() doc","stats":{"files_changed":39,"insertions":351,"deletions":39,"files":["docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/df.md","lines_changed":10},{"name":"docs/parsers/dig.md","lines_changed":10},{"name":"docs/parsers/env.md","lines_changed":10},{"name":"docs/parsers/free.md","lines_changed":10},{"name":"docs/parsers/history.md","lines_changed":10},{"name":"docs/parsers/ifconfig.md","lines_changed":10},{"name":"docs/parsers/iptables.md","lines_changed":10},{"name":"docs/parsers/jobs.md","lines_changed":10},{"name":"docs/parsers/ls.md","lines_changed":10},{"name":"docs/parsers/lsblk.md","lines_changed":10},{"name":"docs/parsers/lsmod.md","lines_changed":10},{"name":"docs/parsers/lsof.md","lines_changed":10},{"name":"docs/parsers/mount.md","lines_changed":10},{"name":"docs/parsers/netstat.md","lines_changed":10},{"name":"docs/parsers/ps.md","lines_changed":10},{"name":"docs/parsers/route.md","lines_changed":10},{"name":"docs/parsers/uname.md","lines_changed":10},{"name":"docs/parsers/uptime.md","lines_changed":10},{"name":"docs/parsers/w.md","lines_changed":10},{"name":"jc/parsers/df.py","lines_changed":10},{"name":"jc/parsers/dig.py","lines_changed":10},{"name":"jc/parsers/env.py","lines_changed":10},{"name":"jc/parsers/foo.py","lines_changed":10},{"name":"jc/parsers/free.py","lines_changed":10},{"name":"jc/parsers/history.py","lines_changed":10},{"name":"jc/parsers/ifconfig.py","lines_changed":10},{"name":"jc/parsers/iptables.py","lines_changed":10},{"name":"jc/parsers/jobs.py","lines_changed":10},{"name":"jc/parsers/ls.py","lines_changed":10},{"name":"jc/parsers/lsblk.py","lines_changed":10},{"name":"jc/parsers/lsmod.py","lines_changed":10},{"name":"jc/parsers/lsof.py","lines_changed":10},{"name":"jc/parsers/mount.py","lines_changed":10},{"name":"jc/parsers/netstat.py","lines_changed":10},{"name":"jc/parsers/ps.py","lines_changed":10},{"name":"jc/parsers/route.py","lines_changed":10},{"name":"jc/parsers/uname.py","lines_changed":10},{"name":"jc/parsers/uptime.py","lines_changed":10},{"name":"jc/parsers/w.py","lines_changed":10}]}},{"commit":"3bdcf44afb708cf6a716a0847b119f895602c23e","message":"doc update","stats":{"files_changed":2,"insertions":18,"deletions":2,"files":["docs/parsers/arp.md","jc/parsers/arp.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":10},{"name":"jc/parsers/arp.py","lines_changed":10}]}},{"commit":"e3f4ffede56fe48c0a282a021ac5cdfd7a8abee9","message":"doc update","stats":{"files_changed":20,"insertions":172,"deletions":77,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":13},{"name":"docs/parsers/dig.md","lines_changed":13},{"name":"docs/parsers/env.md","lines_changed":13},{"name":"docs/parsers/free.md","lines_changed":13},{"name":"docs/parsers/history.md","lines_changed":13},{"name":"docs/parsers/ifconfig.md","lines_changed":13},{"name":"docs/parsers/iptables.md","lines_changed":13},{"name":"docs/parsers/jobs.md","lines_changed":13},{"name":"docs/parsers/ls.md","lines_changed":13},{"name":"docs/parsers/lsblk.md","lines_changed":13},{"name":"docs/parsers/lsmod.md","lines_changed":13},{"name":"docs/parsers/lsof.md","lines_changed":13},{"name":"docs/parsers/mount.md","lines_changed":13},{"name":"docs/parsers/netstat.md","lines_changed":13},{"name":"docs/parsers/ps.md","lines_changed":13},{"name":"docs/parsers/route.md","lines_changed":13},{"name":"docs/parsers/uname.md","lines_changed":13},{"name":"docs/parsers/uptime.md","lines_changed":13},{"name":"docs/parsers/w.md","lines_changed":13}]}},{"commit":"f0c8725d4355113f7690f20bb99078e488084ad7","message":"doc update","stats":{"files_changed":21,"insertions":181,"deletions":81,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":13},{"name":"jc/parsers/dig.py","lines_changed":13},{"name":"jc/parsers/env.py","lines_changed":13},{"name":"jc/parsers/foo.py","lines_changed":13},{"name":"jc/parsers/free.py","lines_changed":13},{"name":"jc/parsers/history.py","lines_changed":13},{"name":"jc/parsers/ifconfig.py","lines_changed":13},{"name":"jc/parsers/iptables.py","lines_changed":13},{"name":"jc/parsers/jobs.py","lines_changed":13},{"name":"jc/parsers/ls.py","lines_changed":13},{"name":"jc/parsers/lsblk.py","lines_changed":13},{"name":"jc/parsers/lsmod.py","lines_changed":13},{"name":"jc/parsers/lsof.py","lines_changed":13},{"name":"jc/parsers/mount.py","lines_changed":13},{"name":"jc/parsers/netstat.py","lines_changed":13},{"name":"jc/parsers/ps.py","lines_changed":13},{"name":"jc/parsers/route.py","lines_changed":13},{"name":"jc/parsers/uname.py","lines_changed":13},{"name":"jc/parsers/uptime.py","lines_changed":13},{"name":"jc/parsers/w.py","lines_changed":13}]}},{"commit":"5473bc4eb697d00bd26a038287e1137e438cacb5","message":"doc update","stats":{"files_changed":2,"insertions":16,"deletions":6,"files":["docs/parsers/arp.md","jc/parsers/arp.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":11},{"name":"jc/parsers/arp.py","lines_changed":11}]}},{"commit":"b9bd9422bfa46144416fa65add2e041d4124357b","message":"doc update","stats":{"files_changed":2,"insertions":380,"deletions":46,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":213},{"name":"jc/parsers/dig.py","lines_changed":213}]}},{"commit":"cb5729a070925a7fa29f762bd4b074532f5cba55","message":"add options to docs","stats":{"files_changed":1,"insertions":62,"deletions":44,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":106}]}},{"commit":"f0b1ab42337746afd37365abdf44729d530d5410","message":"doc update","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":1},{"name":"jc/utils.py","lines_changed":1}]}},{"commit":"b15386e849b9fea347e7b17307eedf779d8022fc","message":"doc update","stats":{"files_changed":2,"insertions":11,"deletions":5,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":7},{"name":"jc/utils.py","lines_changed":9}]}},{"commit":"d2a2c8da35ee44e9a7572885609548eb809bcdda","message":"doc updates","stats":{"files_changed":3,"insertions":1,"deletions":5,"files":["docs/parsers/iptables.md","docs/parsers/mount.md","docs/parsers/uname.md"],"file_stats":[{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2}]}},{"commit":"7251548cbb09beae6971385a56036e9649bd9b2c","message":"documentation updates","stats":{"files_changed":3,"insertions":3,"deletions":5,"files":["jc/parsers/iptables.py","jc/parsers/mount.py","jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":3},{"name":"jc/parsers/uname.py","lines_changed":3}]}},{"commit":"146e29f7cbc0f396be67dbd7ae971a4ef4dafb7b","message":"update docs","stats":{"files_changed":47,"insertions":5386,"deletions":2249,"files":["docgen.sh","docs/cli.md","docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/readme.md","docs/utils.md","jc/__init__.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/utils.py"],"file_stats":[{"name":"docgen.sh","lines_changed":27},{"name":"docs/cli.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":110},{"name":"docs/parsers/df.md","lines_changed":97},{"name":"docs/parsers/dig.md","lines_changed":212},{"name":"docs/parsers/env.md","lines_changed":72},{"name":"docs/parsers/free.md","lines_changed":77},{"name":"docs/parsers/history.md","lines_changed":64},{"name":"docs/parsers/ifconfig.md","lines_changed":170},{"name":"docs/parsers/iptables.md","lines_changed":168},{"name":"docs/parsers/jobs.md","lines_changed":98},{"name":"docs/parsers/ls.md","lines_changed":168},{"name":"docs/parsers/lsblk.md","lines_changed":273},{"name":"docs/parsers/lsmod.md","lines_changed":130},{"name":"docs/parsers/lsof.md","lines_changed":124},{"name":"docs/parsers/mount.md","lines_changed":82},{"name":"docs/parsers/netstat.md","lines_changed":352},{"name":"docs/parsers/ps.md","lines_changed":223},{"name":"docs/parsers/route.md","lines_changed":129},{"name":"docs/parsers/uname.md","lines_changed":55},{"name":"docs/parsers/uptime.md","lines_changed":56},{"name":"docs/parsers/w.md","lines_changed":108},{"name":"docs/readme.md","lines_changed":79},{"name":"docs/utils.md","lines_changed":22},{"name":"jc/__init__.py","lines_changed":135},{"name":"jc/parsers/arp.py","lines_changed":176},{"name":"jc/parsers/df.py","lines_changed":129},{"name":"jc/parsers/dig.py","lines_changed":362},{"name":"jc/parsers/env.py","lines_changed":101},{"name":"jc/parsers/foo.py","lines_changed":37},{"name":"jc/parsers/free.py","lines_changed":111},{"name":"jc/parsers/history.py","lines_changed":85},{"name":"jc/parsers/ifconfig.py","lines_changed":294},{"name":"jc/parsers/iptables.py","lines_changed":271},{"name":"jc/parsers/jobs.py","lines_changed":150},{"name":"jc/parsers/ls.py","lines_changed":280},{"name":"jc/parsers/lsblk.py","lines_changed":499},{"name":"jc/parsers/lsmod.py","lines_changed":211},{"name":"jc/parsers/lsof.py","lines_changed":205},{"name":"jc/parsers/mount.py","lines_changed":115},{"name":"jc/parsers/netstat.py","lines_changed":661},{"name":"jc/parsers/ps.py","lines_changed":389},{"name":"jc/parsers/route.py","lines_changed":213},{"name":"jc/parsers/uname.py","lines_changed":57},{"name":"jc/parsers/uptime.py","lines_changed":69},{"name":"jc/parsers/w.py","lines_changed":173},{"name":"jc/utils.py","lines_changed":11}]}},{"commit":"363fd3eab409351121dab8a11c6b565829ccd84a","message":"move parser_name to except block","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"4083dd4260ff3a8bb6649e1661cf3e058fdbad59","message":"add -d option","stats":{"files_changed":2,"insertions":24,"deletions":5,"files":["changelog.txt","jc/cli.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/cli.py","lines_changed":28}]}},{"commit":"b2b74547baaf33058d74fc08cb665777b19bd05a","message":"add netstat-sudo-aeep tests","stats":{"files_changed":6,"insertions":317,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-sudo-aeep.json","tests/fixtures/centos-7.7/netstat-sudo-aeep.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.json","tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.out","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/netstat-sudo-aeep.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-sudo-aeep.out","lines_changed":164},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.out","lines_changed":126},{"name":"tests/test_netstat.py","lines_changed":24}]}},{"commit":"dddb0baabf8a78261ac80380b97e7c92c7ce4d89","message":"use \\u2063 instead of \\u2026","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":8}]}},{"commit":"84b4f67ef9d4bb0db201a095d74400a56394589d","message":"new json output","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["tests/fixtures/centos-7.7/ps-axu.json","tests/fixtures/ubuntu-18.04/ps-axu.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ps-axu.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ps-axu.json","lines_changed":2}]}},{"commit":"3a089138b8c269ba3c5f7aec87ae3f8ec368c3ab","message":"add int and float changes","stats":{"files_changed":1,"insertions":129,"deletions":9,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":138}]}},{"commit":"3ff0305c8e62ce3b5a8f3f9174c5a9da3bc22766","message":"add lsblk tests","stats":{"files_changed":8,"insertions":54,"deletions":2,"files":["tests/fixtures/centos-7.7/lsblk-allcols.json","tests/fixtures/centos-7.7/lsblk-allcols.out","tests/fixtures/centos-7.7/lsblk.json","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/lsblk-allcols.json","tests/fixtures/ubuntu-18.04/lsblk-allcols.out","tests/fixtures/ubuntu-18.04/lsblk.json","tests/test_lsblk.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/lsblk-allcols.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsblk-allcols.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/lsblk.json","lines_changed":2},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsblk-allcols.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsblk-allcols.out","lines_changed":18},{"name":"tests/fixtures/ubuntu-18.04/lsblk.json","lines_changed":2},{"name":"tests/test_lsblk.py","lines_changed":24}]}},{"commit":"761edc3c6cfc215fe45c65ee2bb5462cb460b6a6","message":"remove unused parse_pairs function","stats":{"files_changed":1,"insertions":1,"deletions":6,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":7}]}},{"commit":"3351c81f647ac97a5038cc0c14adb31e55832a77","message":"add documentation","stats":{"files_changed":1,"insertions":200,"deletions":2,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":202}]}},{"commit":"3dfc6f67d770c59804bdeb371d5c78e3f3668f9e","message":"change empty values to Null","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":6}]}},{"commit":"1546ec3bd139ef687282f60786388b5207541c98","message":"fixes for right justified columns","stats":{"files_changed":1,"insertions":17,"deletions":13,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":30}]}},{"commit":"2a953011f72e922c89b9af6dfebd1983da7c338d","message":"rewrite of lsblk parser to use a custom delimiter","stats":{"files_changed":2,"insertions":50,"deletions":155,"files":["changelog.txt","jc/parsers/lsblk.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":203}]}},{"commit":"d2f755de9d2be7b0af5f010042e1f4ca589c5464","message":"updates tests","stats":{"files_changed":14,"insertions":250,"deletions":566,"files":["tests/test_ifconfig.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_ls.py","tests/test_lsblk.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_ps.py","tests/test_route.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py"],"file_stats":[{"name":"tests/test_ifconfig.py","lines_changed":59},{"name":"tests/test_iptables.py","lines_changed":249},{"name":"tests/test_jobs.py","lines_changed":19},{"name":"tests/test_ls.py","lines_changed":58},{"name":"tests/test_lsblk.py","lines_changed":25},{"name":"tests/test_lsmod.py","lines_changed":22},{"name":"tests/test_lsof.py","lines_changed":59},{"name":"tests/test_mount.py","lines_changed":30},{"name":"tests/test_netstat.py","lines_changed":110},{"name":"tests/test_ps.py","lines_changed":57},{"name":"tests/test_route.py","lines_changed":51},{"name":"tests/test_uname.py","lines_changed":27},{"name":"tests/test_uptime.py","lines_changed":23},{"name":"tests/test_w.py","lines_changed":27}]}},{"commit":"f363334639c5fa3a43889794ea52409056a2d886","message":"update tests","stats":{"files_changed":5,"insertions":87,"deletions":219,"files":["tests/test_df.py","tests/test_dig.py","tests/test_env.py","tests/test_free.py","tests/test_history.py"],"file_stats":[{"name":"tests/test_df.py","lines_changed":43},{"name":"tests/test_dig.py","lines_changed":196},{"name":"tests/test_env.py","lines_changed":13},{"name":"tests/test_free.py","lines_changed":41},{"name":"tests/test_history.py","lines_changed":13}]}},{"commit":"750197e48596ad96804477053d3ff3c8063ea68a","message":"new tests","stats":{"files_changed":1,"insertions":27,"deletions":70,"files":["tests/test_arp.py"],"file_stats":[{"name":"tests/test_arp.py","lines_changed":97}]}},{"commit":"36b349e4ed39fe611c7d87a47c378cc4d4627ad2","message":"json output files","stats":{"files_changed":76,"insertions":76,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-a.json","tests/fixtures/centos-7.7/arp-v.json","tests/fixtures/centos-7.7/arp.json","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/df.json","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/centos-7.7/env.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/centos-7.7/free.json","tests/fixtures/centos-7.7/history.json","tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/centos-7.7/iptables-filter-nv.json","tests/fixtures/centos-7.7/iptables-filter.json","tests/fixtures/centos-7.7/iptables-mangle.json","tests/fixtures/centos-7.7/iptables-nat.json","tests/fixtures/centos-7.7/iptables-raw.json","tests/fixtures/centos-7.7/jobs.json","tests/fixtures/centos-7.7/ls-al.json","tests/fixtures/centos-7.7/ls-alh.json","tests/fixtures/centos-7.7/ls.json","tests/fixtures/centos-7.7/lsblk.json","tests/fixtures/centos-7.7/lsmod.json","tests/fixtures/centos-7.7/lsof-sudo.json","tests/fixtures/centos-7.7/lsof.json","tests/fixtures/centos-7.7/mount.json","tests/fixtures/centos-7.7/netstat-l.json","tests/fixtures/centos-7.7/netstat-p.json","tests/fixtures/centos-7.7/netstat-sudo-lnp.json","tests/fixtures/centos-7.7/netstat.json","tests/fixtures/centos-7.7/ps-axu.json","tests/fixtures/centos-7.7/ps-ef.json","tests/fixtures/centos-7.7/route-vn.json","tests/fixtures/centos-7.7/route.json","tests/fixtures/centos-7.7/uname-a.json","tests/fixtures/centos-7.7/uptime.json","tests/fixtures/centos-7.7/w.json","tests/fixtures/ubuntu-18.04/arp-a.json","tests/fixtures/ubuntu-18.04/arp-v.json","tests/fixtures/ubuntu-18.04/arp.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/df.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json","tests/fixtures/ubuntu-18.04/env.json","tests/fixtures/ubuntu-18.04/free-h.json","tests/fixtures/ubuntu-18.04/free.json","tests/fixtures/ubuntu-18.04/history.json","tests/fixtures/ubuntu-18.04/ifconfig.json","tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","tests/fixtures/ubuntu-18.04/iptables-filter.json","tests/fixtures/ubuntu-18.04/iptables-mangle.json","tests/fixtures/ubuntu-18.04/iptables-nat.json","tests/fixtures/ubuntu-18.04/iptables-raw.json","tests/fixtures/ubuntu-18.04/jobs.json","tests/fixtures/ubuntu-18.04/ls-al.json","tests/fixtures/ubuntu-18.04/ls-alh.json","tests/fixtures/ubuntu-18.04/ls.json","tests/fixtures/ubuntu-18.04/lsblk.json","tests/fixtures/ubuntu-18.04/lsmod.json","tests/fixtures/ubuntu-18.04/lsof-sudo.json","tests/fixtures/ubuntu-18.04/lsof.json","tests/fixtures/ubuntu-18.04/mount.json","tests/fixtures/ubuntu-18.04/netstat-l.json","tests/fixtures/ubuntu-18.04/netstat-p.json","tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.json","tests/fixtures/ubuntu-18.04/netstat.json","tests/fixtures/ubuntu-18.04/ps-axu.json","tests/fixtures/ubuntu-18.04/ps-ef.json","tests/fixtures/ubuntu-18.04/route-vn.json","tests/fixtures/ubuntu-18.04/route.json","tests/fixtures/ubuntu-18.04/uname-a.json","tests/fixtures/ubuntu-18.04/uptime.json","tests/fixtures/ubuntu-18.04/w.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/arp-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/arp-v.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/arp.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/df-h.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/df.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/dig-aaaa.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/dig-x.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/dig.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/env.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/free-h.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/free.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/history.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ifconfig.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-filter-nv.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-filter.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-mangle.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-nat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-raw.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/jobs.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-al.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-alh.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsblk.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsmod.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsof-sudo.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsof.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mount.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-l.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-sudo-lnp.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ps-axu.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ps-ef.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/route-vn.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/route.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/uname-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/uptime.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/w.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/arp-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/arp-v.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/arp.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/df-h.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/df.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dig-aaaa.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dig-x.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dig.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/env.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/free-h.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/free.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/history.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ifconfig.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-mangle.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-nat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-raw.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/jobs.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-al.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-alh.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsblk.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsmod.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsof-sudo.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsof.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/mount.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-l.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ps-axu.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ps-ef.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/route-vn.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/route.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/uname-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/uptime.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/w.json","lines_changed":1}]}},{"commit":"b5f1e94fe2859c4fbcf126f8f8fb20d71a9b6433","message":"fix for space before '-' in program_name","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":1}]}},{"commit":"6a504fb0e10b1ef551ed9fe780926fe5ca02d267","message":"add exception type","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2}]}},{"commit":"e02bad2240bacbc31097d931a902a34217d559db","message":"update documentation","stats":{"files_changed":1,"insertions":123,"deletions":175,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":298}]}},{"commit":"1d4043a3b64c38a20a0db065c3bdc3c6a2d068bd","message":"add template parser","stats":{"files_changed":1,"insertions":52,"deletions":0,"files":["jc/parsers/foo.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":52}]}},{"commit":"039e034829789ca314a00abd4f1d9ad06f1a6eef","message":"fix parsing issues in program_name when spaces are in the name","stats":{"files_changed":1,"insertions":19,"deletions":6,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":25}]}},{"commit":"d828de4f4f2f4c3d582fddee79830d12511c3299","message":"update documentation","stats":{"files_changed":1,"insertions":53,"deletions":9,"files":["jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/w.py","lines_changed":62}]}},{"commit":"098000bb10a3f5ed33d285c6ba4f0dfb9a013fdc","message":"fix blank 'from' column issue","stats":{"files_changed":2,"insertions":24,"deletions":9,"files":["changelog.txt","jc/parsers/w.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/w.py","lines_changed":32}]}},{"commit":"b41165eff5cd7371e852cd33e084a919524ead9b","message":"process w data","stats":{"files_changed":1,"insertions":31,"deletions":1,"files":["jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/w.py","lines_changed":32}]}},{"commit":"6ad7891b2b34fae1a366568e4eba86e886a6dd84","message":"process uptime data","stats":{"files_changed":1,"insertions":59,"deletions":14,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":73}]}},{"commit":"72138315598cd405bc0508b554108bf3f730dcb0","message":"add process boilerplate","stats":{"files_changed":1,"insertions":31,"deletions":10,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":41}]}},{"commit":"10eedd82e4c4678fbf989fe599d7ca75deced5a8","message":"changelog update","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]}},{"commit":"a55493da0f1457a46f29511e0835adfa9d748f7b","message":"process route data","stats":{"files_changed":1,"insertions":93,"deletions":6,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":99}]}},{"commit":"89973f4162317693b0d094a64115ee87d8479d51","message":"doc updates and tty fix","stats":{"files_changed":1,"insertions":45,"deletions":27,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":72}]}},{"commit":"4802222ad50d55372f2b883d83a61181086b0619","message":"process ps data","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":11}]}},{"commit":"bcd28f06f87a4260d1787399d723817afd6aee90","message":"prep ps for process","stats":{"files_changed":1,"insertions":23,"deletions":1,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":24}]}},{"commit":"e17a47a7fa7f4c1bb4c4b55fb004963fc1b61434","message":"fix typo","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":2}]}},{"commit":"cad2e16c7aa54a70f476bf4268ff8e5985cff468","message":"document examples","stats":{"files_changed":1,"insertions":353,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":354}]}},{"commit":"5da5d278dac77bd4aa21819194e7f9e178bd1887","message":"process netstat data","stats":{"files_changed":1,"insertions":23,"deletions":0,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":23}]}},{"commit":"81b6776e57c113cbfb8346d1cfd83532a440c257","message":"remove old netstat parser","stats":{"files_changed":1,"insertions":0,"deletions":177,"files":["jc/parsers/netstat.py.old"],"file_stats":[{"name":"jc/parsers/netstat.py.old","lines_changed":177}]}},{"commit":"5ecb6bd58b4ed91f63e4a0b5939378bd9925b7b7","message":"doc updates","stats":{"files_changed":2,"insertions":4,"deletions":3,"files":["changelog.txt","jc/parsers/netstat.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":3}]}},{"commit":"21b56096c57cfcf5c55fdf5f9bab88b6d5c7dd73","message":"finalize parse_post","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":37}]}},{"commit":"8c78f959731a25a05ee6361a14853c92f8fce69b","message":"clean up trailing spaces on entries","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":8}]}},{"commit":"94a88bb5669d9a9a5dff085a4c4111bdd39df8f6","message":"post_parse flags and program_name","stats":{"files_changed":1,"insertions":35,"deletions":17,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":52}]}},{"commit":"579124475b0b517b36ddbe5bdb13be14807dea1f","message":"simplify parser_map code","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"5da83e020015eb5559d216bc3f39b3854e76adf3","message":"fix found variable error","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]}},{"commit":"a90a76d004b923edece07a52a3aa400a9ef4b005","message":"move out old netstat parser","stats":{"files_changed":2,"insertions":177,"deletions":140,"files":["jc/parsers/netstat.py.old","jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/netstat.py.old","lines_changed":177},{"name":"jc/parsers/netstat2.py","lines_changed":140}]}},{"commit":"bdfa95912398b2630fcb13e866f4013747fd0975","message":"fix compatibility code","stats":{"files_changed":20,"insertions":209,"deletions":212,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":10},{"name":"jc/parsers/env.py","lines_changed":10},{"name":"jc/parsers/free.py","lines_changed":10},{"name":"jc/parsers/history.py","lines_changed":8},{"name":"jc/parsers/ifconfig.py","lines_changed":10},{"name":"jc/parsers/iptables.py","lines_changed":10},{"name":"jc/parsers/jobs.py","lines_changed":10},{"name":"jc/parsers/ls.py","lines_changed":10},{"name":"jc/parsers/lsblk.py","lines_changed":10},{"name":"jc/parsers/lsmod.py","lines_changed":10},{"name":"jc/parsers/lsof.py","lines_changed":10},{"name":"jc/parsers/mount.py","lines_changed":10},{"name":"jc/parsers/netstat.py","lines_changed":245},{"name":"jc/parsers/ps.py","lines_changed":10},{"name":"jc/parsers/route.py","lines_changed":10},{"name":"jc/parsers/uname.py","lines_changed":10},{"name":"jc/parsers/uptime.py","lines_changed":10},{"name":"jc/parsers/w.py","lines_changed":10}]}},{"commit":"4380594275bc863e81839a6a7b032a6ff0cbb9b6","message":"remove cli functions from utils","stats":{"files_changed":1,"insertions":8,"deletions":46,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":54}]}},{"commit":"88bf252c0df3c583640286880d7992e4399e23f4","message":"rename jc.py to cli.py","stats":{"files_changed":2,"insertions":139,"deletions":128,"files":["jc/cli.py","jc/jc.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":139},{"name":"jc/jc.py","lines_changed":128}]}},{"commit":"a5efd8adce77fca7e3343f8f518c7bad578fdb4f","message":"rename jc.py to cli.py","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"2ee392eefffde77ebdf83f5e4e0c43cf8c1a7d6e","message":"add quiet mode","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/netstat2.py","lines_changed":10}]}},{"commit":"9c1d893e16ea17b16bec5fd0ec8839c4fe6f0590","message":"move utils to own module and add quiet mode","stats":{"files_changed":4,"insertions":102,"deletions":90,"files":["jc/jc.py","jc/parsers/arp.py","jc/parsers/df.py","jc/utils.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":107},{"name":"jc/parsers/arp.py","lines_changed":10},{"name":"jc/parsers/df.py","lines_changed":10},{"name":"jc/utils.py","lines_changed":65}]}},{"commit":"88dcb90c83b757285661c72429c5b60bb1ead94a","message":"changelog update","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":6}]}},{"commit":"a3bcabc89c1f74d067da0046492dbc56e50b1005","message":"mvp of netstat raw_data parser","stats":{"files_changed":1,"insertions":9,"deletions":62,"files":["jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/netstat2.py","lines_changed":71}]}},{"commit":"dafbf9fdcf53a8abbd006baef0be6697f860d2a1","message":"process lsmod data","stats":{"files_changed":4,"insertions":247,"deletions":53,"files":["jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/lsmod.py","lines_changed":85},{"name":"jc/parsers/lsof.py","lines_changed":106},{"name":"jc/parsers/mount.py","lines_changed":31},{"name":"jc/parsers/netstat2.py","lines_changed":78}]}},{"commit":"680cb2b2caa82e1e2c3225b3c44cae2ba03ba02c","message":"doc update","stats":{"files_changed":1,"insertions":76,"deletions":7,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":83}]}},{"commit":"54818a06e0e0b981810f6aec45c308da81a9e2ea","message":"change bool variable names","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":8}]}},{"commit":"88f4c5b5a93da3938b84f97abfc54539ee19ac48","message":"remove TypeError from exception check","stats":{"files_changed":6,"insertions":10,"deletions":10,"files":["jc/parsers/dig.py","jc/parsers/free.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":8},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":4},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2}]}},{"commit":"2bb7409887e8b7659613189daf58d02cb26bd6ba","message":"process lsblk data","stats":{"files_changed":2,"insertions":36,"deletions":11,"files":["jc/parsers/df.py","jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/lsblk.py","lines_changed":42}]}},{"commit":"c780aac3aba02cc042c6a3c984af198069956370","message":"add compatibility function","stats":{"files_changed":22,"insertions":91,"deletions":5,"files":["jc/jc.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat2.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":8},{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/df.py","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":5},{"name":"jc/parsers/env.py","lines_changed":5},{"name":"jc/parsers/free.py","lines_changed":4},{"name":"jc/parsers/history.py","lines_changed":5},{"name":"jc/parsers/ifconfig.py","lines_changed":5},{"name":"jc/parsers/iptables.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"jc/parsers/lsblk.py","lines_changed":1},{"name":"jc/parsers/lsmod.py","lines_changed":4},{"name":"jc/parsers/lsof.py","lines_changed":5},{"name":"jc/parsers/mount.py","lines_changed":5},{"name":"jc/parsers/netstat.py","lines_changed":5},{"name":"jc/parsers/netstat2.py","lines_changed":5},{"name":"jc/parsers/ps.py","lines_changed":4},{"name":"jc/parsers/route.py","lines_changed":4},{"name":"jc/parsers/uname.py","lines_changed":5},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/w.py","lines_changed":4}]}},{"commit":"5010aaec285e26ae9dbfdb3fcdc38a3bd36cd236","message":"put exit() back","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":2}]}},{"commit":"066e93cb075021ac94a0e2e6a36a34bc173ee6c0","message":"move exit() to errormessage()","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":2}]}},{"commit":"0bd2faa7f71a128babc68afea053159ccb91b702","message":"beautify compatibility list","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":3}]}},{"commit":"e2f926453ba386736204e358f8306dfc731b5005","message":"add install script","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["install.sh"],"file_stats":[{"name":"install.sh","lines_changed":2}]}},{"commit":"b953b79f9c46d8c5398a6c1c2769167b5aed2805","message":"add compatibility","stats":{"files_changed":3,"insertions":11,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4}]}},{"commit":"7f9967780692bec2fcbe992eee0c392ab92efb7f","message":"compatibility function call","stats":{"files_changed":2,"insertions":19,"deletions":1,"files":["jc/jc.py","jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":16},{"name":"jc/parsers/lsblk.py","lines_changed":4}]}},{"commit":"721b54665924ad1657ee83cd5fca601e03700962","message":"finish schema","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":8}]}},{"commit":"2de5e41269421c73e07d4abd6ca99b38be736261","message":"fix for more columns and build schema","stats":{"files_changed":1,"insertions":95,"deletions":12,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":107}]}},{"commit":"dfe0f6e99b6174734661fc43d9ad4b1d0dfd96e5","message":"process ls data","stats":{"files_changed":1,"insertions":75,"deletions":9,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":84}]}},{"commit":"8873b1bc697c8f9409fa676c88b5ebe109dc8717","message":"clean up process code","stats":{"files_changed":1,"insertions":24,"deletions":46,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":70}]}},{"commit":"9ff94707004fefed475603436fc0a7ffb19e6fee","message":"refactor helptext() function","stats":{"files_changed":1,"insertions":9,"deletions":4,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":13}]}},{"commit":"2c58fca53044892e15ceb5e8bcae1afb09fa3269","message":"process jobs data","stats":{"files_changed":1,"insertions":62,"deletions":4,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":66}]}},{"commit":"9e5cd90da7d92bbadbc0d25071d087a3dbd90a5b","message":"process iptables data","stats":{"files_changed":1,"insertions":131,"deletions":261,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":392}]}},{"commit":"7ee0d49424bba5274975d6c33e0721977660692f","message":"process ifconfig data","stats":{"files_changed":1,"insertions":107,"deletions":28,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":135}]}},{"commit":"a9058ee21e87454aa423112239c4f4df7daca8c4","message":"doc formatting","stats":{"files_changed":3,"insertions":4,"deletions":1,"files":["jc/parsers/arp.py","jc/parsers/dig.py","jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/dig.py","lines_changed":1},{"name":"jc/parsers/free.py","lines_changed":1}]}},{"commit":"fcf0aac87dccac2ce28e6f55e66e2f0b8f6fbd36","message":"add history processing","stats":{"files_changed":1,"insertions":54,"deletions":10,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":64}]}},{"commit":"daec5f068103aae547509ddacc2be56c84f39f17","message":"process free data","stats":{"files_changed":1,"insertions":55,"deletions":6,"files":["jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/free.py","lines_changed":61}]}},{"commit":"5b2491d5ae72705758944e247fbca83367c0365f","message":"process env data","stats":{"files_changed":1,"insertions":54,"deletions":5,"files":["jc/parsers/env.py"],"file_stats":[{"name":"jc/parsers/env.py","lines_changed":59}]}},{"commit":"d9b41ac73b234f5bf7ff3abfee198092424a1bbd","message":"doc formatting","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":4}]}},{"commit":"7168ffddf8a8dfcdd5bcabd8bf943d6417de407d","message":"process dig output","stats":{"files_changed":1,"insertions":87,"deletions":5,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":92}]}},{"commit":"a855344bec9f60d852de326953436ec76f25cffb","message":"document schema","stats":{"files_changed":1,"insertions":13,"deletions":0,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":13}]}},{"commit":"d8b3b59fae924494fbcdfbdf6ad790f5234b0c69","message":"add schema and rename 'avail' to 'available'","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":16}]}},{"commit":"4b7d7840d37be47c1c98c38a6d712e7090e5b68c","message":"add -r option","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"changelog.txt","lines_changed":2}]}},{"commit":"58a094a9b4cab0fcb99581f37a21a450fc3a1aed","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]}},{"commit":"65adbb4189ac66de3283adb2af93a1251103f057","message":"doc update","stats":{"files_changed":1,"insertions":29,"deletions":7,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":36}]}},{"commit":"f7350959c9706486a3aed19a999e5ee756a1240c","message":"df fix for changing header names when -h used","stats":{"files_changed":1,"insertions":47,"deletions":24,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":71}]}},{"commit":"8934a7d832b8e1375f0bbdd71031f37ae42f3929","message":"fix dictionary iteration","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["jc/parsers/arp.py","jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":6}]}},{"commit":"669a424fd6508db91bf5cfa2607033fac85f442c","message":"fix process function","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":4}]}},{"commit":"591a65c2bda26efcdd570a5f147f98a5be0473d4","message":"process df data","stats":{"files_changed":1,"insertions":46,"deletions":2,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":48}]}},{"commit":"a78fb890782a64b20c0c1b60afbd915ebdd88535","message":"add raw and processed output","stats":{"files_changed":1,"insertions":21,"deletions":5,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":26}]}},{"commit":"8979dab2a5371fce3a773004c2309e7483e4cd31","message":"add raw mode","stats":{"files_changed":1,"insertions":25,"deletions":20,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":45}]}},{"commit":"0a891f0adda7f2f3233222a0cb5c1f737913ad6f","message":"bump python required version","stats":{"files_changed":2,"insertions":4,"deletions":1,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"setup.py","lines_changed":2}]}},{"commit":"c220e35b14237c2cfc38aa661413af83ea13e393","message":"cleanup helptext","stats":{"files_changed":1,"insertions":34,"deletions":33,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":67}]}},{"commit":"f26c5818bd958c18f4ecc22611b9c058f6213a2c","message":"refactor helptext","stats":{"files_changed":1,"insertions":36,"deletions":33,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":69}]}},{"commit":"e712cd3fc4cec1b3137c73e199b2d89fd42fb3bb","message":"netstat2 skeleton","stats":{"files_changed":1,"insertions":138,"deletions":0,"files":["jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/netstat2.py","lines_changed":138}]}},{"commit":"0309c9ac67c5f65e0a584fd01e8104ef1990fa7c","message":"setup cleanup","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"9a9eb4120af7696cd3727ac0f0a014663e62b993","message":"setup updates","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":3}]}},{"commit":"d1927456b02e6c2a6e6395cd6ce873b6565ec37d","message":"Merge pull request #6 from kellyjonbrazil/dev"},{"commit":"a3d9213a1e2fd52ba2cbc863d4d01d3ffeebe230","message":"add date","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]}},{"commit":"3365c03a1e709835b4bd6bca023afbcb46912982","message":"add tests","stats":{"files_changed":2,"insertions":361,"deletions":0,"files":["tests/test_arp.py","tests/test_dig.py"],"file_stats":[{"name":"tests/test_arp.py","lines_changed":131},{"name":"tests/test_dig.py","lines_changed":230}]}},{"commit":"4f6c87389b313b368d9e833feef55fe6daf7aac9","message":"add dig test files","stats":{"files_changed":7,"insertions":164,"deletions":1,"files":["tests/fixtures/centos-7.7/dig-aaaa.out","tests/fixtures/centos-7.7/dig-x.out","tests/fixtures/centos-7.7/dig.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/dig-aaaa.out","tests/fixtures/ubuntu-18.04/dig-x.out","tests/fixtures/ubuntu-18.04/dig.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/dig-aaaa.out","lines_changed":20},{"name":"tests/fixtures/centos-7.7/dig-x.out","lines_changed":20},{"name":"tests/fixtures/centos-7.7/dig.out","lines_changed":38},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":6},{"name":"tests/fixtures/ubuntu-18.04/dig-aaaa.out","lines_changed":20},{"name":"tests/fixtures/ubuntu-18.04/dig-x.out","lines_changed":20},{"name":"tests/fixtures/ubuntu-18.04/dig.out","lines_changed":41}]}},{"commit":"41a2a9adac7d3c29dfa11292f08b0877c69b1a5d","message":"remove unnecessary if statement","stats":{"files_changed":2,"insertions":147,"deletions":3,"files":["README.md","jc/parsers/dig.py"],"file_stats":[{"name":"README.md","lines_changed":147},{"name":"jc/parsers/dig.py","lines_changed":3}]}},{"commit":"74dae2905b2b0916f0be9fee2a4a343962760ff6","message":"dig parser mvp","stats":{"files_changed":1,"insertions":143,"deletions":30,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":173}]}},{"commit":"d1f64214de00090c3faae0bf544c6c2602ab8c31","message":"add authority parsing","stats":{"files_changed":1,"insertions":19,"deletions":3,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":22}]}},{"commit":"d3e1aa20a815d1d1d6ae82776ae18e3416f0966f","message":"fix when line","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":2}]}},{"commit":"72cae9577756c4355211a19f4dd77aaeb6f8e905","message":"dig fixes","stats":{"files_changed":1,"insertions":47,"deletions":9,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":56}]}},{"commit":"219bc8130f55f23e3be3abbe56104aefc2f84e86","message":"dig parser skeleton","stats":{"files_changed":2,"insertions":155,"deletions":0,"files":["jc/jc.py","jc/parsers/dig.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":150}]}},{"commit":"e8c1a554c040ad8f9c6b518db5fd58e8345d2181","message":"testfile updates","stats":{"files_changed":3,"insertions":7,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-a.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/arp-a.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/arp-a.out","lines_changed":3},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/arp-a.out","lines_changed":3}]}},{"commit":"087a60bc2adf64bfcedc1f264fef328f993b530c","message":"documentation updates","stats":{"files_changed":2,"insertions":87,"deletions":5,"files":["README.md","jc/parsers/arp.py"],"file_stats":[{"name":"README.md","lines_changed":33},{"name":"jc/parsers/arp.py","lines_changed":59}]}},{"commit":"9c9823c3b8737b5de08af6278ca74414138e9263","message":"add arp testfiles","stats":{"files_changed":5,"insertions":16,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-v.out","tests/fixtures/centos-7.7/arp.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/arp-v.out","tests/fixtures/ubuntu-18.04/arp.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/arp-v.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/arp.out","lines_changed":3},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/arp-v.out","lines_changed":4},{"name":"tests/fixtures/ubuntu-18.04/arp.out","lines_changed":3}]}},{"commit":"cf8d13030bf67261a986c0f80fa20ec0e37a743a","message":"add arp","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":21}]}},{"commit":"1eff69c187ca410ffaec7909bc2532553be1d80c","message":"add documentation","stats":{"files_changed":2,"insertions":17,"deletions":1,"files":["changelog.txt","jc/parsers/arp.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/arp.py","lines_changed":17}]}},{"commit":"b10fb77d714b73a10a9bf28b45269b3530e01cee","message":"fixup arp parser","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":10}]}},{"commit":"87cee8b230a06fa270b2e36afb56f337da814c80","message":"add arp parser","stats":{"files_changed":2,"insertions":28,"deletions":1,"files":["jc/jc.py","jc/parsers/arp.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":7},{"name":"jc/parsers/arp.py","lines_changed":22}]}},{"commit":"83ab10d6282e26391bbf6bae5d0d29e040b209f0","message":"documentation update","stats":{"files_changed":1,"insertions":44,"deletions":34,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":78}]}},{"commit":"d58a6e1d1dc93155255922b65b0af1325439b033","message":"readme update","stats":{"files_changed":1,"insertions":13,"deletions":15,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":28}]}},{"commit":"cb46ca5c2776a13c673a44d3e0fbd0661b32af9f","message":"readme update","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]}},{"commit":"5528d979f0b45787d68ab79b962371df9acc527b","message":"version bump","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":6},{"name":"setup.py","lines_changed":2}]}},{"commit":"ee94a038a61d60db72046d5bcceec58009decb39","message":"add tests","stats":{"files_changed":3,"insertions":131,"deletions":0,"files":["tests/test_uname.py","tests/test_uptime.py","tests/test_w.py"],"file_stats":[{"name":"tests/test_uname.py","lines_changed":45},{"name":"tests/test_uptime.py","lines_changed":41},{"name":"tests/test_w.py","lines_changed":45}]}},{"commit":"1d658f7a9fc50873f76985b2fb9de92ada9d5547","message":"add tests","stats":{"files_changed":3,"insertions":265,"deletions":0,"files":["tests/test_netstat.py","tests/test_ps.py","tests/test_route.py"],"file_stats":[{"name":"tests/test_netstat.py","lines_changed":105},{"name":"tests/test_ps.py","lines_changed":83},{"name":"tests/test_route.py","lines_changed":77}]}},{"commit":"392cb44f9b19829a5ceba055e24c7af4d8ac5b3b","message":"initial add of tests and fixtures","stats":{"files_changed":80,"insertions":12667,"deletions":0,"files":["runtests.sh","tests/__init__.py","tests/fixtures/centos-7.7/df-h.out","tests/fixtures/centos-7.7/df.out","tests/fixtures/centos-7.7/env.out","tests/fixtures/centos-7.7/free-h.out","tests/fixtures/centos-7.7/free.out","tests/fixtures/centos-7.7/history.out","tests/fixtures/centos-7.7/ifconfig.out","tests/fixtures/centos-7.7/iptables-filter-nv.out","tests/fixtures/centos-7.7/iptables-filter.out","tests/fixtures/centos-7.7/iptables-mangle.out","tests/fixtures/centos-7.7/iptables-nat.out","tests/fixtures/centos-7.7/iptables-raw.out","tests/fixtures/centos-7.7/jobs.out","tests/fixtures/centos-7.7/ls-al.out","tests/fixtures/centos-7.7/ls-alh.out","tests/fixtures/centos-7.7/ls.out","tests/fixtures/centos-7.7/lsblk.out","tests/fixtures/centos-7.7/lsmod.out","tests/fixtures/centos-7.7/lsof-sudo.out","tests/fixtures/centos-7.7/lsof.out","tests/fixtures/centos-7.7/mount.out","tests/fixtures/centos-7.7/netstat-l.out","tests/fixtures/centos-7.7/netstat-p.out","tests/fixtures/centos-7.7/netstat-sudo-lnp.out","tests/fixtures/centos-7.7/netstat.out","tests/fixtures/centos-7.7/ps-axu.out","tests/fixtures/centos-7.7/ps-ef.out","tests/fixtures/centos-7.7/route-vn.out","tests/fixtures/centos-7.7/route.out","tests/fixtures/centos-7.7/uname-a.out","tests/fixtures/centos-7.7/uptime.out","tests/fixtures/centos-7.7/w.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/df-h.out","tests/fixtures/ubuntu-18.04/df.out","tests/fixtures/ubuntu-18.04/env.out","tests/fixtures/ubuntu-18.04/free-h.out","tests/fixtures/ubuntu-18.04/free.out","tests/fixtures/ubuntu-18.04/history.out","tests/fixtures/ubuntu-18.04/ifconfig.out","tests/fixtures/ubuntu-18.04/iptables-filter-nv.out","tests/fixtures/ubuntu-18.04/iptables-filter.out","tests/fixtures/ubuntu-18.04/iptables-mangle.out","tests/fixtures/ubuntu-18.04/iptables-nat.out","tests/fixtures/ubuntu-18.04/iptables-raw.out","tests/fixtures/ubuntu-18.04/jobs.out","tests/fixtures/ubuntu-18.04/ls-al.out","tests/fixtures/ubuntu-18.04/ls-alh.out","tests/fixtures/ubuntu-18.04/ls.out","tests/fixtures/ubuntu-18.04/lsblk.out","tests/fixtures/ubuntu-18.04/lsmod.out","tests/fixtures/ubuntu-18.04/lsof-sudo.out","tests/fixtures/ubuntu-18.04/lsof.out","tests/fixtures/ubuntu-18.04/mount.out","tests/fixtures/ubuntu-18.04/netstat-l.out","tests/fixtures/ubuntu-18.04/netstat-p.out","tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.out","tests/fixtures/ubuntu-18.04/netstat.out","tests/fixtures/ubuntu-18.04/ps-axu.out","tests/fixtures/ubuntu-18.04/ps-ef.out","tests/fixtures/ubuntu-18.04/route-vn.out","tests/fixtures/ubuntu-18.04/route.out","tests/fixtures/ubuntu-18.04/uname-a.out","tests/fixtures/ubuntu-18.04/uptime.out","tests/fixtures/ubuntu-18.04/w.out","tests/test_df.py","tests/test_env.py","tests/test_free.py","tests/test_history.py","tests/test_ifconfig.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_ls.py","tests/test_lsblk.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py"],"file_stats":[{"name":"runtests.sh","lines_changed":3},{"name":"tests/__init__.py","lines_changed":0},{"name":"tests/fixtures/centos-7.7/df-h.out","lines_changed":8},{"name":"tests/fixtures/centos-7.7/df.out","lines_changed":8},{"name":"tests/fixtures/centos-7.7/env.out","lines_changed":24},{"name":"tests/fixtures/centos-7.7/free-h.out","lines_changed":3},{"name":"tests/fixtures/centos-7.7/free.out","lines_changed":3},{"name":"tests/fixtures/centos-7.7/history.out","lines_changed":1000},{"name":"tests/fixtures/centos-7.7/ifconfig.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/iptables-filter-nv.out","lines_changed":134},{"name":"tests/fixtures/centos-7.7/iptables-filter.out","lines_changed":134},{"name":"tests/fixtures/centos-7.7/iptables-mangle.out","lines_changed":59},{"name":"tests/fixtures/centos-7.7/iptables-nat.out","lines_changed":80},{"name":"tests/fixtures/centos-7.7/iptables-raw.out","lines_changed":38},{"name":"tests/fixtures/centos-7.7/jobs.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/ls-al.out","lines_changed":22},{"name":"tests/fixtures/centos-7.7/ls-alh.out","lines_changed":22},{"name":"tests/fixtures/centos-7.7/ls.out","lines_changed":19},{"name":"tests/fixtures/centos-7.7/lsblk.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/lsmod.out","lines_changed":99},{"name":"tests/fixtures/centos-7.7/lsof-sudo.out","lines_changed":3390},{"name":"tests/fixtures/centos-7.7/lsof.out","lines_changed":639},{"name":"tests/fixtures/centos-7.7/mount.out","lines_changed":31},{"name":"tests/fixtures/centos-7.7/netstat-l.out","lines_changed":45},{"name":"tests/fixtures/centos-7.7/netstat-p.out","lines_changed":121},{"name":"tests/fixtures/centos-7.7/netstat-sudo-lnp.out","lines_changed":45},{"name":"tests/fixtures/centos-7.7/netstat.out","lines_changed":123},{"name":"tests/fixtures/centos-7.7/ps-axu.out","lines_changed":110},{"name":"tests/fixtures/centos-7.7/ps-ef.out","lines_changed":110},{"name":"tests/fixtures/centos-7.7/route-vn.out","lines_changed":5},{"name":"tests/fixtures/centos-7.7/route.out","lines_changed":5},{"name":"tests/fixtures/centos-7.7/uname-a.out","lines_changed":1},{"name":"tests/fixtures/centos-7.7/uptime.out","lines_changed":1},{"name":"tests/fixtures/centos-7.7/w.out","lines_changed":4},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":48},{"name":"tests/fixtures/ubuntu-18.04/df-h.out","lines_changed":19},{"name":"tests/fixtures/ubuntu-18.04/df.out","lines_changed":19},{"name":"tests/fixtures/ubuntu-18.04/env.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-18.04/free-h.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/free.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/history.out","lines_changed":453},{"name":"tests/fixtures/ubuntu-18.04/ifconfig.out","lines_changed":18},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter-nv.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/iptables-mangle.out","lines_changed":14},{"name":"tests/fixtures/ubuntu-18.04/iptables-nat.out","lines_changed":11},{"name":"tests/fixtures/ubuntu-18.04/iptables-raw.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/jobs.out","lines_changed":4},{"name":"tests/fixtures/ubuntu-18.04/ls-al.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/ls-alh.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/ls.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-18.04/lsblk.out","lines_changed":18},{"name":"tests/fixtures/ubuntu-18.04/lsmod.out","lines_changed":102},{"name":"tests/fixtures/ubuntu-18.04/lsof-sudo.out","lines_changed":2854},{"name":"tests/fixtures/ubuntu-18.04/lsof.out","lines_changed":976},{"name":"tests/fixtures/ubuntu-18.04/mount.out","lines_changed":43},{"name":"tests/fixtures/ubuntu-18.04/netstat-l.out","lines_changed":32},{"name":"tests/fixtures/ubuntu-18.04/netstat-p.out","lines_changed":97},{"name":"tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.out","lines_changed":32},{"name":"tests/fixtures/ubuntu-18.04/netstat.out","lines_changed":97},{"name":"tests/fixtures/ubuntu-18.04/ps-axu.out","lines_changed":173},{"name":"tests/fixtures/ubuntu-18.04/ps-ef.out","lines_changed":173},{"name":"tests/fixtures/ubuntu-18.04/route-vn.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/route.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/uname-a.out","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/uptime.out","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/w.out","lines_changed":4},{"name":"tests/test_df.py","lines_changed":69},{"name":"tests/test_env.py","lines_changed":31},{"name":"tests/test_free.py","lines_changed":67},{"name":"tests/test_history.py","lines_changed":31},{"name":"tests/test_ifconfig.py","lines_changed":77},{"name":"tests/test_iptables.py","lines_changed":299},{"name":"tests/test_jobs.py","lines_changed":37},{"name":"tests/test_ls.py","lines_changed":92},{"name":"tests/test_lsblk.py","lines_changed":43},{"name":"tests/test_lsmod.py","lines_changed":40},{"name":"tests/test_lsof.py","lines_changed":85},{"name":"tests/test_mount.py","lines_changed":48},{"name":"tests/test_netstat.py","lines_changed":47}]}},{"commit":"579bef079cdd7cfa298bc20e052b8eb75b586f5e","message":"move global output variable inside function","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":3}]}},{"commit":"0691cfcab3f5f91908e06ec906d57e548d4e7a1f","message":"changelog fix","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]}},{"commit":"db29c7c186601fd4596d3eb121b37100601af907","message":"documentation fixes","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":4}]}},{"commit":"fb1e03637514b5ab02fd4c5df1db8b3cbacdd531","message":"formatting","stats":{"files_changed":1,"insertions":14,"deletions":10,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":24}]}},{"commit":"c3eaf59836538f4ab4c745e87b70115b4a4c5421","message":"Merge pull request #5 from kellyjonbrazil/dev"},{"commit":"c9849ce0db1f864d33739f8f6f942bf5672bc3b7","message":"changelog update","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]}},{"commit":"d3c89a3092973a7a8765463fff41c2469ed675cd","message":"check for enough info to parse","stats":{"files_changed":1,"insertions":11,"deletions":9,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":20}]}},{"commit":"a3d43f27f7bb0835b3593b7c303fe0ee8d896a58","message":"fix odd uptime text parsing","stats":{"files_changed":1,"insertions":12,"deletions":10,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":22}]}},{"commit":"f4d9c1b699fa30bd297a40ccf3d5f6e7ba3d4253","message":"fix uptime for minutes and hours long uptime","stats":{"files_changed":1,"insertions":8,"deletions":4,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":12}]}},{"commit":"de647bba4aff84f7b513cf7f6fec8d3933b0d9da","message":"documentation update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"d7913070315e5e0c89006942250aaf37e9e3e18e","message":"documentation update","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]}},{"commit":"1a4fc204e21f1555ae67c3147322c8d73fab630b","message":"Documentation update","stats":{"files_changed":2,"insertions":10,"deletions":1,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":10},{"name":"changelog.txt","lines_changed":1}]}},{"commit":"0328e14c7c65a330093faa52fe48dae6cb173e42","message":"handle ctrl-c gracefully","stats":{"files_changed":1,"insertions":7,"deletions":0,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":7}]}},{"commit":"1acc4d6c29d136e286f82d607c4a3a59e2680b68","message":"fix uptime parsing for short uptimes","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":4}]}},{"commit":"27245590ce28be933f1a55db4ee6b24783f4b63d","message":"remove integers","stats":{"files_changed":1,"insertions":12,"deletions":20,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":32}]}},{"commit":"7ca2a4bdb939293e8d7364f8901ad1fd6d3ee808","message":"remove integer values","stats":{"files_changed":5,"insertions":182,"deletions":201,"files":["README.md","changelog.txt","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":199},{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":95},{"name":"jc/parsers/netstat.py","lines_changed":84}]}},{"commit":"5f1ec6734874651bee595961edf1fafaf5acf001","message":"lower() headers","stats":{"files_changed":10,"insertions":473,"deletions":456,"files":["README.md","jc/parsers/df.py","jc/parsers/history.py","jc/parsers/iptables.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/w.py"],"file_stats":[{"name":"README.md","lines_changed":453},{"name":"jc/parsers/df.py","lines_changed":52},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":73},{"name":"jc/parsers/lsmod.py","lines_changed":61},{"name":"jc/parsers/lsof.py","lines_changed":113},{"name":"jc/parsers/ps.py","lines_changed":81},{"name":"jc/parsers/route.py","lines_changed":60},{"name":"jc/parsers/w.py","lines_changed":32}]}},{"commit":"7e44c4278a75c7223d99200023160e8d77fde54d","message":"formatting","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":2}]}},{"commit":"eda726c4a3864008e2f700374b679ae68a965ef8","message":"documentation update","stats":{"files_changed":1,"insertions":80,"deletions":1,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":81}]}},{"commit":"5f8e70d73054f1a106c0e75eee621bc0cefd1c6b","message":"convert headers to lowercase","stats":{"files_changed":9,"insertions":20,"deletions":22,"files":["changelog.txt","jc/parsers/df.py","jc/parsers/free.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/w.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":8},{"name":"jc/parsers/lsmod.py","lines_changed":9},{"name":"jc/parsers/lsof.py","lines_changed":8},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":6}]}},{"commit":"25b90546c652cafa9409f02bae1654cb523add88","message":"change 'Use%' to 'Use_percent'","stats":{"files_changed":3,"insertions":14,"deletions":9,"files":["README.md","changelog.txt","jc/parsers/df.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":13}]}},{"commit":"75c084153845757e22c149ea4ae7909d42ec7118","message":"changelog update","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]}},{"commit":"5b532b9b71fdb9de575da0af9b7989ac537877c4","message":"minor cleanup","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":5}]}},{"commit":"8c7b3193d131411f8766508fc27b2a6589bba1f2","message":"documentation change","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":2}]}},{"commit":"0897c96ef3c180a1707e8f56c545f59b3a4e0672","message":"formatting","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":2}]}},{"commit":"57d0ab2ed7f444862546da17cbbe8f8ce67bca8c","message":"change LOGIN@ to LOGIN_AT","stats":{"files_changed":2,"insertions":9,"deletions":4,"files":["README.md","jc/parsers/w.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"jc/parsers/w.py","lines_changed":9}]}},{"commit":"a07d9a0e4bb76d369b4a9bf0d77c7590dc3c2861","message":"change SIZE/OFF key to SIZE_OFF","stats":{"files_changed":2,"insertions":22,"deletions":13,"files":["README.md","jc/parsers/lsof.py"],"file_stats":[{"name":"README.md","lines_changed":10},{"name":"jc/parsers/lsof.py","lines_changed":25}]}},{"commit":"b3996cb4dfed908d71b292dc0b0136c6675351e6","message":"change MAJ:MIN key to MAJ_MIN","stats":{"files_changed":2,"insertions":14,"deletions":10,"files":["README.md","jc/parsers/lsblk.py"],"file_stats":[{"name":"README.md","lines_changed":10},{"name":"jc/parsers/lsblk.py","lines_changed":14}]}},{"commit":"4fa88c1ba38b34f9750625458c465d66f6531bc3","message":"clear out non-ascii chars from data","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":3}]}},{"commit":"c8c5564b29588094721949b96bff1e623437835d","message":"change buff/cache key to buff_cache","stats":{"files_changed":2,"insertions":6,"deletions":3,"files":["README.md","jc/parsers/free.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":7}]}},{"commit":"6d047486d9f577bc04d79af839f5eef9657a9d43","message":"doc fix","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"42bdc058141c4a3ac6f2c8211f9c990590b1b5cf","message":"changelog fix","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]}},{"commit":"85bfb688862e78d5879df6973b88ba8023fa6086","message":"history parser fixes","stats":{"files_changed":2,"insertions":15,"deletions":10,"files":["README.md","jc/parsers/history.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"jc/parsers/history.py","lines_changed":17}]}},{"commit":"08ec21556b553cd7e64932d68e01ba8ff3b0f210","message":"formatting","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/w.py","lines_changed":1}]}},{"commit":"320929bf2595026d32b80b80c3e4878db9cf083f","message":"documentation update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/env.py"],"file_stats":[{"name":"jc/parsers/env.py","lines_changed":2}]}},{"commit":"41cd489c34502c42602bf64086670ba3b2b8e14b","message":"add history and uptime parsers","stats":{"files_changed":5,"insertions":126,"deletions":0,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/history.py","jc/parsers/uptime.py"],"file_stats":[{"name":"README.md","lines_changed":46},{"name":"changelog.txt","lines_changed":3},{"name":"jc/jc.py","lines_changed":10},{"name":"jc/parsers/history.py","lines_changed":32},{"name":"jc/parsers/uptime.py","lines_changed":35}]}},{"commit":"f101d881a16e662e883818749d48e96858fba853","message":"add w parser","stats":{"files_changed":4,"insertions":78,"deletions":3,"files":["README.md","jc/jc.py","jc/parsers/w.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":27},{"name":"jc/jc.py","lines_changed":9},{"name":"jc/parsers/w.py","lines_changed":43},{"name":"setup.py","lines_changed":2}]}},{"commit":"fa7466022bb8947c1bbf9f7b01aa4d92300a8992","message":"fix env parser","stats":{"files_changed":3,"insertions":28,"deletions":56,"files":["README.md","changelog.txt","jc/parsers/env.py"],"file_stats":[{"name":"README.md","lines_changed":37},{"name":"changelog.txt","lines_changed":3},{"name":"jc/parsers/env.py","lines_changed":44}]}},{"commit":"ea0cf0acf22585fbf8828841cf50155636eae82f","message":"documentation update","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":3}]}},{"commit":"e7921b65f5a250c10b08f78939f74968047af430","message":"Merge pull request #4 from kellyjonbrazil/dev"},{"commit":"2cc1b1bd5451f31d71b0e2236bdee0ce2b25b5d7","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]}},{"commit":"58ae976db0165730a75dd7450c698d2727a354ca","message":"documentation update","stats":{"files_changed":3,"insertions":113,"deletions":4,"files":["README.md","jc/parsers/lsmod.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":55},{"name":"jc/parsers/lsmod.py","lines_changed":60},{"name":"setup.py","lines_changed":2}]}},{"commit":"66772392ae78ef394e22070b127416b1d5b01332","message":"add lsmod parser","stats":{"files_changed":3,"insertions":32,"deletions":0,"files":["changelog.txt","jc/jc.py","jc/parsers/lsmod.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/lsmod.py","lines_changed":26}]}},{"commit":"29c47c03a64f9c6b0f44d34be5449396654849b5","message":"documentation update","stats":{"files_changed":3,"insertions":134,"deletions":2,"files":["README.md","changelog.txt","jc/parsers/lsof.py"],"file_stats":[{"name":"README.md","lines_changed":68},{"name":"changelog.txt","lines_changed":3},{"name":"jc/parsers/lsof.py","lines_changed":65}]}},{"commit":"91eb9a4d13e9254bd5bbde931196904c1947a28e","message":"use None instead of --","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":4}]}},{"commit":"a1a3de32ec14d6ef433e334b9694856698c26d41","message":"add lsof parser","stats":{"files_changed":2,"insertions":59,"deletions":0,"files":["jc/jc.py","jc/parsers/lsof.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/lsof.py","lines_changed":54}]}},{"commit":"9c47fd05bf716c2e18ebf4da41b1a46b972b2518","message":"doco fix","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":2}]}},{"commit":"649c0aa7c157f87691cc8eeac64c747e81f63594","message":"add documentation","stats":{"files_changed":2,"insertions":76,"deletions":1,"files":["README.md","jc/parsers/jobs.py"],"file_stats":[{"name":"README.md","lines_changed":39},{"name":"jc/parsers/jobs.py","lines_changed":38}]}},{"commit":"3db758764e50666e5ae40de8d89180de2ef5bc28","message":"add jobs parser","stats":{"files_changed":3,"insertions":83,"deletions":0,"files":["changelog.txt","jc/jc.py","jc/parsers/jobs.py"],"file_stats":[{"name":"changelog.txt","lines_changed":6},{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":72}]}},{"commit":"802f1510eb6d621f9c760f28b83f16a4781b8d93","message":"tighten if statements","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":2}]}},{"commit":"56901788dee154890e70269ad48d4b22bb8c5437","message":"stop blocking when no pipe and enhance help text","stats":{"files_changed":1,"insertions":30,"deletions":19,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":49}]}},{"commit":"679ae6d5dc7af26240dc00d8bc6499950f81d457","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"b15c8c352a87a9b3b1dece28af0287ef71ca02d0","message":"simplify state variables","stats":{"files_changed":1,"insertions":14,"deletions":16,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":30}]}},{"commit":"393e8bc56041a4be01b6c0b2f98895aa330afd04","message":"Merge pull request #3 from kellyjonbrazil/dev"},{"commit":"976fd7d9bd49190a8b28ea5acf5af8979cdec537","message":"readme update","stats":{"files_changed":1,"insertions":27,"deletions":28,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":55}]}},{"commit":"d8337870cad042cdcc6a4ff3c61f756c3430fa96","message":"update documentation","stats":{"files_changed":1,"insertions":27,"deletions":28,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":55}]}},{"commit":"39a8aec77f5134b5b958e3f679910a1c3512e13a","message":"v0.8.1 build","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/parsers/ls.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]}},{"commit":"306d539b6bbfb272c7b955e4847adc3a6b4afa5f","message":"readme update","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]}},{"commit":"f3087b8a8ede88834285bb5d0655fc96341c174c","message":"update readme and formatting","stats":{"files_changed":3,"insertions":635,"deletions":1,"files":["README.md","changelog.txt","jc/parsers/iptables.py"],"file_stats":[{"name":"README.md","lines_changed":319},{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/iptables.py","lines_changed":316}]}},{"commit":"414c2ecef88af2d2c098e6acfb507a5fd7bb8eda","message":"fix iptables parser","stats":{"files_changed":1,"insertions":6,"deletions":10,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":16}]}},{"commit":"776ef2d1be81180b8b295fbc587446a326f2f7a6","message":"add iptables parser","stats":{"files_changed":2,"insertions":61,"deletions":0,"files":["jc/jc.py","jc/parsers/iptables.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/iptables.py","lines_changed":56}]}},{"commit":"9ac57469967443b195be09d580beaa76ce0e1095","message":"add uname parser","stats":{"files_changed":4,"insertions":64,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/uname.py"],"file_stats":[{"name":"README.md","lines_changed":15},{"name":"changelog.txt","lines_changed":1},{"name":"jc/jc.py","lines_changed":7},{"name":"jc/parsers/uname.py","lines_changed":42}]}},{"commit":"a3e55d97c0fd4397b42e9146afb0ba9558274fdb","message":"add mount parser","stats":{"files_changed":4,"insertions":127,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/mount.py"],"file_stats":[{"name":"README.md","lines_changed":45},{"name":"changelog.txt","lines_changed":1},{"name":"jc/jc.py","lines_changed":7},{"name":"jc/parsers/mount.py","lines_changed":75}]}},{"commit":"b15227e7ba5377e5fb6799d1b9e4ed5a11c6d92f","message":"add lsblk parser","stats":{"files_changed":4,"insertions":125,"deletions":0,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/lsblk.py"],"file_stats":[{"name":"README.md","lines_changed":49},{"name":"changelog.txt","lines_changed":1},{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/lsblk.py","lines_changed":70}]}},{"commit":"ec3d1f84ceccb492b4c968938714fafa2e6a6321","message":"fix free parser","stats":{"files_changed":1,"insertions":24,"deletions":2,"files":["jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/free.py","lines_changed":26}]}},{"commit":"753d5fd9fe5a8e4b67b1a0ec018a9f811e27f8bf","message":"readme update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"73a0d70c9294ad392792e690a7bfbcc4f51b0a5b","message":"readme update","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]}},{"commit":"c2c189f3e6e900e5f3d35df9a9b9d033448baff6","message":"readme update","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":5}]}},{"commit":"36bc55a3109278d663b675a09829200f5474c3d8","message":"fix df","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]}},{"commit":"a023001cd350e320ce30f47af214ed7a9bb43185","message":"add df, env, and free parsers","stats":{"files_changed":6,"insertions":226,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/df.py","jc/parsers/env.py","jc/parsers/free.py"],"file_stats":[{"name":"README.md","lines_changed":73},{"name":"changelog.txt","lines_changed":5},{"name":"jc/jc.py","lines_changed":17},{"name":"jc/parsers/df.py","lines_changed":56},{"name":"jc/parsers/env.py","lines_changed":53},{"name":"jc/parsers/free.py","lines_changed":23}]}},{"commit":"e3750b49628794fd4d563013b1f3a7471c27ce68","message":"documentation enhancements","stats":{"files_changed":2,"insertions":83,"deletions":51,"files":["README.md","jc/__init__.py"],"file_stats":[{"name":"README.md","lines_changed":30},{"name":"jc/__init__.py","lines_changed":104}]}},{"commit":"b5ea08e55bfd22c9da5ba73c124791012df119a0","message":"fix transport protocol","stats":{"files_changed":4,"insertions":20,"deletions":20,"files":["README.md","changelog.txt","jc/parsers/netstat.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":16},{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":20},{"name":"setup.py","lines_changed":2}]}},{"commit":"8e71b8e3522b9b1af4d869a0854223eb5c300b63","message":"fix jq example","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"4c8610c54ff4b643237d8f0e4c5781c277fc39f5","message":"fixed build","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"setup.py","lines_changed":2}]}},{"commit":"c8f886dc8fcdc58f8471d68c3d583200d0ea2f90","message":"fix example","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":2}]}},{"commit":"4cfc2d22b3f9fd6f0cde8ad206edd7fe260b3071","message":"update changelog","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]}},{"commit":"59238c85408117748e78c5e87157381a828f3782","message":"Merge pull request #2 from kellyjonbrazil/dev"},{"commit":"30080c01659cf611666876b7b063b7b329822352","message":"reorder parsers","stats":{"files_changed":1,"insertions":35,"deletions":35,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":70}]}},{"commit":"fab80bb3b4a1897da29d818e98e9b80ce45443dd","message":"readme update","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["README.md","setup.py"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"setup.py","lines_changed":2}]}},{"commit":"a9f2df805421754afb8e8adbcac7f2d3bd06c9ef","message":"move parsed_line var lower","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":3}]}},{"commit":"1d110be6cb25d169ae0dde6532cbcdf05d93d42f","message":"update doco","stats":{"files_changed":3,"insertions":13,"deletions":1,"files":["README.md","changelog.txt","setup.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"changelog.txt","lines_changed":4},{"name":"setup.py","lines_changed":2}]}},{"commit":"be81b5e1ed93eb65e5dbed4f52905439cde86f62","message":"readme update","stats":{"files_changed":1,"insertions":112,"deletions":121,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":233}]}},{"commit":"5f88f7d8a071306be92cbfb65d6d62c5a68159f3","message":"netstat cleanup","stats":{"files_changed":1,"insertions":110,"deletions":137,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":247}]}},{"commit":"e57c7cc8ef3102cc41dee4ea5fd33d40ba666491","message":"change output from dict to list","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":2}]}},{"commit":"b216627c1073ea645029e341b4d3376601e5468e","message":"flatten netstat output","stats":{"files_changed":1,"insertions":19,"deletions":116,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":135}]}},{"commit":"6e925eab131024b5746d870cbd47e2791acf18bf","message":"clean up arg parsing","stats":{"files_changed":1,"insertions":27,"deletions":18,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":45}]}},{"commit":"d54d906c571b4683f01cab2eca63ae5f0725a87b","message":"update readme","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]}},{"commit":"0040febbf099ed8ab35f6ee343750fcf89f2e739","message":"Merge pull request #1 from kellyjonbrazil/dev"},{"commit":"e416c77bed1267254da972b0f95b7ff1d43fccef","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]}},{"commit":"9181d242aaed5219bb35fde01d672be88949cceb","message":"bump version","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"d6f94c53a4df84fb75554605477e49536a809dc2","message":"fix blank output case in ls","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]}},{"commit":"a9294f32a00709737d0b82ff434a311e75ad0bed","message":"ls fixes","stats":{"files_changed":3,"insertions":39,"deletions":42,"files":["changelog.txt","jc/parsers/ls.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":7},{"name":"jc/parsers/ls.py","lines_changed":72},{"name":"setup.py","lines_changed":2}]}},{"commit":"4d93b38fe47329e3175025878e87f7c963061f98","message":"add route documentation","stats":{"files_changed":2,"insertions":90,"deletions":1,"files":["README.md","jc/parsers/route.py"],"file_stats":[{"name":"README.md","lines_changed":47},{"name":"jc/parsers/route.py","lines_changed":44}]}},{"commit":"77b74c550795f96b808e48a9b0bfd1a8af9866f9","message":"add route parser","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]}},{"commit":"51a1d3e6f48cf7084267be4092f0dd3f778dcef3","message":"version bump","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"2eba30422b44f648c7356a44cbff7416c6648f19","message":"skip first line","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":2}]}},{"commit":"43ed09ce5ba53261dfd7ef50a2e187cb524c416c","message":"add route parser","stats":{"files_changed":3,"insertions":25,"deletions":1,"files":["jc/jc.py","jc/parsers/route.py","setup.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":3},{"name":"jc/parsers/route.py","lines_changed":21},{"name":"setup.py","lines_changed":2}]}},{"commit":"367ab54f94bf7f456377ec9d20f8daf99dbdc1ed","message":"formatting","stats":{"files_changed":3,"insertions":99,"deletions":2,"files":["README.md","changelog.txt","jc/parsers/ps.py"],"file_stats":[{"name":"README.md","lines_changed":53},{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":46}]}},{"commit":"4f552e370e656cc1882a7dae231475a016f8aa14","message":"acknowledgment","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":4}]}},{"commit":"7571139f7980f6e74c29d46971881e82ab0f04bc","message":"bump version","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"8ec1bec31711d2ef487da3e4a29a842d98d77626","message":"add ps parser","stats":{"files_changed":4,"insertions":29,"deletions":7,"files":["changelog.txt","jc/__init__.py","jc/jc.py","jc/parsers/ps.py"],"file_stats":[{"name":"changelog.txt","lines_changed":10},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/jc.py","lines_changed":3},{"name":"jc/parsers/ps.py","lines_changed":21}]}},{"commit":"c04895407f203aa0a3a080d5242faf8f6889ae41","message":"ubuntu fixes","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["changelog.txt","jc/parsers/netstat.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":9}]}},{"commit":"cec73d61310591e4890605f61dc5c1bef5808ec4","message":"linting","stats":{"files_changed":4,"insertions":24,"deletions":16,"files":["jc/jc.py","jc/parsers/ifconfig.py","jc/parsers/ls.py","jc/parsers/netstat.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":7},{"name":"jc/parsers/ifconfig.py","lines_changed":7},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"jc/parsers/netstat.py","lines_changed":23}]}},{"commit":"756c2bc9acd60111281b76085a40778e51ca06cc","message":"add acknowledgments","stats":{"files_changed":1,"insertions":20,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":23}]}},{"commit":"084048987c7afc6516f69e68d37d73b2402dc7f2","message":"changelog update","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]}},{"commit":"02d97394dd76a8782e6e7d3f8a85e1aed05e796b","message":"changelog update","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]}},{"commit":"177f948f9740e3e33449b04b9136a346c9a2c265","message":"version update","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"c2b013150ec1f1b1ab7d416f1aa8a62165a5bb95","message":"add changelog","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":9}]}},{"commit":"0bec67c29ce5d965271440da41a0c4b4c2a1f0fb","message":"double quotes to single quotes","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":4}]}},{"commit":"8073d15fe11546a17cacd81409e255bb8aecd602","message":"readme update","stats":{"files_changed":1,"insertions":12,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":16}]}},{"commit":"3b74afc39e58f801e75b7105e521c1469d30f991","message":"upload script","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["pypi-upload.sh"],"file_stats":[{"name":"pypi-upload.sh","lines_changed":2}]}},{"commit":"ed320cf0f4bb11cee1e69e9dc9176ba109df1b86","message":"change netstat pid field to integer","stats":{"files_changed":3,"insertions":22,"deletions":22,"files":["README.md","jc/parsers/netstat.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":20},{"name":"jc/parsers/netstat.py","lines_changed":22},{"name":"setup.py","lines_changed":2}]}},{"commit":"021b6924e24e1cf0f971246244b174cd3181c0a6","message":"documentation updates","stats":{"files_changed":2,"insertions":254,"deletions":5,"files":["README.md","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":124},{"name":"jc/parsers/netstat.py","lines_changed":135}]}},{"commit":"5fb21b077662f1cb172741945ba5036e5a280638","message":"remove debug print statements","stats":{"files_changed":1,"insertions":0,"deletions":8,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":8}]}},{"commit":"7b8540ae2a60f2400fe672a022ee00d1415a3500","message":"netstat fixes","stats":{"files_changed":1,"insertions":19,"deletions":7,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":26}]}},{"commit":"a5e039d4c2e07d52a0797833685c562ab285b49b","message":"netstat debugging","stats":{"files_changed":1,"insertions":17,"deletions":7,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":24}]}},{"commit":"7071f60a302b7aefb8fb312699b0abec25548986","message":"netstat mvp","stats":{"files_changed":1,"insertions":66,"deletions":18,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":84}]}},{"commit":"0de1dff0253eb46b7336103f62f888940406ccc0","message":"fix ands","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":48}]}},{"commit":"b3c52eb1ccf82e899dda62c332c0b217d80eb4c7","message":"add netstat parser","stats":{"files_changed":2,"insertions":112,"deletions":40,"files":["jc/parsers/ifconfig.py","jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":150}]}},{"commit":"366c5dbc010869bdb1d3b9d852e10510bd5c266f","message":"fix help message","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":4}]}},{"commit":"a3ee02514b5fbd43a38ddf515a4aad49bb4e161a","message":"fix imports and module names","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":12}]}},{"commit":"46ad1269cb58dc6f064d17eb0b04da62d8fd5fce","message":"packaging fixes","stats":{"files_changed":2,"insertions":4,"deletions":3,"files":["jc/jc.py","setup.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":6},{"name":"setup.py","lines_changed":1}]}},{"commit":"7234afe568818678585ac423649a0ccce0f45d68","message":"entrypoint fix","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"caf480c63aacb518805d48fba0fd454959d11023","message":"module fix","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"62851b48d5e5cd673e630a28996e1c24cc45aa58","message":"fix modules","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/jc.py","setup.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":12},{"name":"setup.py","lines_changed":2}]}},{"commit":"46d6da92f0e196e150ab9dd44b1ba290c950905b","message":"fix entry_points","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["jc/{jc => jc.py}","setup.py"],"file_stats":[{"name":"jc/{jc => jc.py}","lines_changed":0},{"name":"setup.py","lines_changed":2}]}},{"commit":"e572b2edfa993c5049ef3caeda7a8e4797f0c751","message":"use entry_points instead of scripts","stats":{"files_changed":2,"insertions":37,"deletions":29,"files":["jc/jc","setup.py"],"file_stats":[{"name":"jc/jc","lines_changed":58},{"name":"setup.py","lines_changed":8}]}},{"commit":"72c69e7de59029d623c9819dda6aa8cae91bc419","message":"fix package paths","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/jc"],"file_stats":[{"name":"jc/jc","lines_changed":12}]}},{"commit":"4d1565071e5cf7c38e026e08db8f4d2e79969691","message":"rename jc.py to jc","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["jc/{jc.py => jc}","setup.py"],"file_stats":[{"name":"jc/{jc.py => jc}","lines_changed":0},{"name":"setup.py","lines_changed":2}]}},{"commit":"3652e51693d7ba829f4699fd80de20856941d82f","message":"fix requirements","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]}},{"commit":"49ce9f13e817266659400a8c19f5b078a48589df","message":"setup updates","stats":{"files_changed":3,"insertions":17,"deletions":20,"files":["jc/jc.py","jc/parsers/__init__.py","setup.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/__init__.py","lines_changed":5},{"name":"setup.py","lines_changed":27}]}},{"commit":"e83170b7ec7ed2123bfde69be263b6034c7afa53","message":"readme update","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]}},{"commit":"ffb6eb754a87baad5fb0558e30a5bca1a9b9e0a8","message":"setup fixes","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/parsers/__init__.py","setup.py"],"file_stats":[{"name":"jc/parsers/__init__.py","lines_changed":8},{"name":"setup.py","lines_changed":6}]}},{"commit":"2597a18d95d01109d2250487b7550a501edaf77b","message":"readme update","stats":{"files_changed":1,"insertions":82,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":82}]}},{"commit":"3e576250b1bfe1c62c556f2fa0425103b0ede1f9","message":"First commit","stats":{"files_changed":11,"insertions":429,"deletions":0,"files":[".gitignore","LICENSE.md","README.md","build-package.sh","jc/__init__.py","jc/jc.py","jc/parsers/__init__.py","jc/parsers/ifconfig.py","jc/parsers/ls.py","jc/parsers/netstat.py","setup.py"],"file_stats":[{"name":".gitignore","lines_changed":6},{"name":"LICENSE.md","lines_changed":21},{"name":"README.md","lines_changed":53},{"name":"build-package.sh","lines_changed":5},{"name":"jc/__init__.py","lines_changed":61},{"name":"jc/jc.py","lines_changed":38},{"name":"jc/parsers/__init__.py","lines_changed":3},{"name":"jc/parsers/ifconfig.py","lines_changed":30},{"name":"jc/parsers/ls.py","lines_changed":130},{"name":"jc/parsers/netstat.py","lines_changed":55},{"name":"setup.py","lines_changed":27}]}}] diff --git a/tests/fixtures/generic/git-log-short-stat-streaming.json b/tests/fixtures/generic/git-log-short-stat-streaming.json index af7e3de9..44bdb298 100644 --- a/tests/fixtures/generic/git-log-short-stat-streaming.json +++ b/tests/fixtures/generic/git-log-short-stat-streaming.json @@ -1 +1 @@ -[{"commit":"096fffdb79807d34b99985b38df0a3df7f6a86c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":120,"deletions":36,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"]},"message":"use stat examples"},{"commit":"728d882ed007b3c8b785018874a0eb06e1143b66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":90,"deletions":12,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"]},"message":"add timestamp docs and examples"},{"commit":"b53e42aca623181aa9bc72194e6eeef1e9a3a237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":29,"deletions":6,"files":["docs/parsers/git_log.md","docs/utils.md","jc/parsers/git_log.py","jc/utils.py","man/jc.1"]},"message":"add calculated timestamp"},{"commit":"477329ce5b8f5c2a8e4384ba3f59289fc18c957d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add linefeed to version text"},{"commit":"283dc4efd55030188f17c7e1dfbc5315103494b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["CHANGELOG","jc/cli.py"]},"message":"add python interpreter version and path to -v and -a output"},{"commit":"d490bbcaa0291a691b95fa5b61807eebb0b088eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":26,"files":["CHANGELOG"]},"message":"normalize add/update"},{"commit":"f49ddf8e5c5009702155fc62d83c63e3c08c594d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"]},"message":"doc update"},{"commit":"e1e341652b51b823844e76ef7e68f9373a323435","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"doc update"},{"commit":"ecda667549137bed5622cca69f2022e7a75ea833","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":8,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"]},"message":"process integers"},{"commit":"a0d96a188a9f875b2d59625aa97d4f80bba290f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":1,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"]},"message":"doc update"},{"commit":"6c0f0cddfe4dd2d5169f7c55416c6725912557f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":1,"files":["jc/parsers/yaml.py","tests/test_yaml.py"]},"message":"fix for datetime objects in yaml files"},{"commit":"c7173ecd89742c8cf8a7bc4a8021baac5c3cd483","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":6,"files":["jc/parsers/git_log.py"]},"message":"fix mypy issues"},{"commit":"e98240c905394e3ebd6a45fa31b6d432c150afc4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/git_log.py"]},"message":"extend instead of append list"},{"commit":"6cb7e25974b11afe57d7d0e8550b3b1a56b14c67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":93,"deletions":1,"files":["README.md","docs/parsers/git_log.md","man/jc.1"]},"message":"add docs"},{"commit":"c37980c05c7fbd4f811ce5fcfcfddaf5f3ab5414","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":41,"deletions":7,"files":["jc/parsers/git_log.py"]},"message":"add stat support"},{"commit":"b5943bd39d776fc4c3b3dea03c0f3d4b6f4bb260","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":10,"files":["jc/parsers/git_log.py"]},"message":"initial docstring"},{"commit":"49a3a7db3b2b0b292489a41691c9dcbce816cfed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":175,"deletions":0,"files":["jc/lib.py","jc/parsers/git_log.py"]},"message":"initial git-log parser"},{"commit":"0c55240e9da30ac4293cc324f1094de2abd3da91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":0,"files":["CHANGELOG","tests/{ => templates}/_test_foo.py","tests/{ => templates}/_test_foo_s.py"]},"message":"move test templates to fix test failures on some systems"},{"commit":"f91988aed5499d25acf7a7e87b2b0d0cd37b62af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/lib.md"]},"message":"iterator -> iterable"},{"commit":"3c3ad9fc6adf865b3814a1f03814d0bc17d1c6bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"iterator -> iterable in doc"},{"commit":"291ab79e22a59cb31814e7a5af9dbc9f2ec863e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":24,"deletions":24,"files":["README.md","man/jc.1","templates/readme_template"]},"message":"fix arch linux command"},{"commit":"e6d5892c146762cd41a966adadb77db333d98ace","merge":"c0414e7 dcca7a5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #226 from kellyjonbrazil/master"},{"commit":"dcca7a57d558721a61fbba44f07b1d53116827e1","merge":"7138eef 4ee8a69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #225 from adrianteri/patch-1"},{"commit":"4ee8a69337b24e199983fe657643abcb0a56a8e6","author":"003","author_email":"adriateri@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"Update README"},{"commit":"c0414e7db7f5d785b72ad616517f2ec63af151a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["docgen.sh"]},"message":"clean up background tasks"},{"commit":"a419175fe6dffe9c5fd20cfbd82ee552bc82a993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":34,"deletions":17,"files":["docgen.sh","updatedocs.sh"]},"message":"enhance parallelization"},{"commit":"cd6dead034f3c72aebd22afeb2aea6591ae6d94d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"man page update"},{"commit":"45342ea9fea29947d8d90260c7665ffbca612cce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":16,"deletions":9,"files":["docgen.sh","updatedocs.sh"]},"message":"parallelize doc gneration"},{"commit":"585bf0e159c7839869cf3e458938dcc5fa2ceb81","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"xrandr update"},{"commit":"3a860b9babe93d455f68ef21436edf7470d375af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":5,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"add rotation field"},{"commit":"269180df77f9ff953b07222e8ae790c7e7a8298e","merge":"e85f11c a1afed8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #223 from anekos/fix/support-rotated-devices"},{"commit":"a1afed8d95e33fbbc618c7b5778a9faeea2f628f","author":"anekos","author_email":"anekos@snca.net","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["docs/parsers/xrandr.md"]},"message":"doc update"},{"commit":"e39f150a216e4e184444dfc88a63e0f303e51631","author":"anekos","author_email":"anekos@snca.net","stats":{"files_changed":3,"insertions":9,"deletions":4,"files":["jc/parsers/xrandr.py","tests/fixtures/generic/xrandr_simple.json","tests/test_xrandr.py"]},"message":"Support rotated devices"},{"commit":"e85f11c6fcad5461bae612dd5a945c20d300e59a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":12,"deletions":12,"files":["docs/parsers/ini.md","docs/parsers/kv.md","jc/parsers/ini.py","jc/parsers/kv.py"]},"message":"doc formatting"},{"commit":"49a9d7b07e89696f2e022655d7256b7d6ad4bf7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":12,"deletions":8,"files":["docs/parsers/ini.md","docs/parsers/kv.md","man/jc.1"]},"message":"doc update"},{"commit":"a2ef9c429e4bb9f70d033511dce77ccdb9013971","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":38,"deletions":8,"files":["jc/parsers/ini.py","jc/parsers/kv.py","tests/test_ini.py","tests/test_kv.py"]},"message":"allow duplicate keys"},{"commit":"d5e9074f1c8facb3f15b8c41a008917178626978","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/lib.py","setup.py"]},"message":"version bump"},{"commit":"774699f085d97f22ae2dab0cf64d72aa1e1709f7","merge":"789f073 7138eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #220 from kellyjonbrazil/master"},{"commit":"7138eef3d137bc64286d4af453d8d4e7b3f4408d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py"]},"message":"fix newline chars in doc"},{"commit":"fad5e544aa9e57d31473190e196f59c616901207","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"]},"message":"formatting"},{"commit":"64757e2cf55448bccfbbd60d31930ab3f59af21b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"]},"message":"doc formatting"},{"commit":"e05be3f08beae1b600fc55a3a7b4e28163e15bc0","merge":"ac61e9a 789f073","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #213 from kellyjonbrazil/dev"},{"commit":"789f0735dfd63e728b8716d97cf0c6045ede5011","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"doc update"},{"commit":"34bc7753174be28d6c1a00dadc662bc374e554c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"doc update"},{"commit":"38de059a1bc285c8681086d9fb43d0d23ac01d49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":3,"files":["docs/parsers/asciitable.md","docs/parsers/universal.md","man/jc.1"]},"message":"doc update"},{"commit":"304ae6268f4dff6e6f901628e7ff89db1d6e0767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/parsers/asciitable_m.py"]},"message":"minor optimization by changing the expression order"},{"commit":"978caf45221188a29c0e67147804f20f317c066d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["jc/parsers/asciitable.py"]},"message":"minor optimization by reordering expressions"},{"commit":"17df5bfcfc25f226a2976aa7ab8a80e4aaa915c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":2,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"cache _is_separator function"},{"commit":"5e6a5068cff71b3b30525d0a12868bdf6551456c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":2,"files":["jc/parsers/universal.py"]},"message":"allow iterables for simple table parser"},{"commit":"619de68a61be0117e635032347dde417d77c748c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":9,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"formatting"},{"commit":"6748c3cc91f90bddea3d07b8b30a049ee55eaf35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":65,"deletions":61,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"remove lines from corner detection and add rounded corners"},{"commit":"0a462978b731770d1290187a502706c2322f5f91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":101,"deletions":3,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py","tests/test_asciitable.py","tests/test_asciitable_m.py"]},"message":"fix for special characters in headers"},{"commit":"e66a82ff49b40a674f9ef373a12d59fc71bfa730","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":5,"files":["CHANGELOG","jc/parsers/asciitable_m.py","man/jc.1"]},"message":"doc update"},{"commit":"f3aa797d96c8e2cef2124dbb2f49d1fadaee3fa2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":69,"deletions":9,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"add more pretty table separators"},{"commit":"e5b478218c4ba3781afd085056dba888c3f6ae02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_xrandr.py"]},"message":"add quiet=True to parse tests"},{"commit":"35e0e9c32afbc5450c661bcb3a23904d135358ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable.py"]},"message":"remove print statement"},{"commit":"17c3c2f029a0a47eb02d681567619d471b99949c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":58,"deletions":2,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py","tests/test_asciitable.py","tests/test_asciitable_m.py"]},"message":"add bold bar seperator and ANSI code tests"},{"commit":"cf83e6398b3314b233581eb313510872177de20a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":0,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"add fancy separators"},{"commit":"94e061b881e2ed28d2b462ad038e5ba77182b6c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":275,"deletions":0,"files":["tests/test_asciitable.py"]},"message":"add asciitable parser tests"},{"commit":"720480e39ce3cc2079d7f4f5bcff2725081fec34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":10,"deletions":2,"files":["docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"doc update"},{"commit":"82a63fe15922456853aa4597aa10a5a02b20bdef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":8,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"]},"message":"doc update"},{"commit":"9c1ec9940e68ce9848da20e81b8c0b7e35a215df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":82,"deletions":14,"files":["docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"doc update"},{"commit":"f23f19da453a0f7bcf70e417a10f87e27571aa43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":122,"deletions":9,"files":["README.md","docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py","man/jc.1"]},"message":"doc update"},{"commit":"aea2e1b0a9c6bb2a02a6e73889bb04e8f4f22588","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["tests/test_asciitable_m.py"]},"message":"fix tests so blank strings are now None"},{"commit":"7d95d679bf4093ea77f30a1be55384b6dbf08341","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":212,"deletions":1,"files":["jc/lib.py","jc/parsers/asciitable.py"]},"message":"add asciitable parser"},{"commit":"b3b140066b74ee31dd1c460502caf2f26df321b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py"]},"message":"doc update"},{"commit":"b204c423c1b947c17cb251a5dd3c444cd71dd2c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":193,"deletions":15,"files":["README.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py","man/jc.1"]},"message":"doc update"},{"commit":"d451c309bb0d8889dc09a698212bf01c2154a582","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":8,"files":["jc/parsers/asciitable_m.py"]},"message":"change multiple or statements to any()"},{"commit":"01d53da68ed04b736934851137c59216ad02d8c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable_m.py"]},"message":"remove debug print"},{"commit":"53dd05e52c329a15c30a756a36a165ac59ef8a14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":29,"deletions":1,"files":["jc/parsers/asciitable_m.py","tests/test_asciitable_m.py"]},"message":"fix rstrip and add tests"},{"commit":"ab564f5be8282f1c7ee2d602bcef398fdfd4570f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":237,"deletions":1,"files":["jc/parsers/asciitable_m.py","tests/test_asciitable_m.py"]},"message":"add tests"},{"commit":"00c39450f9878527b60545ad61c04cfb98f418dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"]},"message":"enhance type annotation"},{"commit":"f611d08b50219f4e573c1d1f0beae27583e76432","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/asciitable_m.py"]},"message":"formatting"},{"commit":"90e79b7df3a4d5b37835fdf1c2debc1bad0a40b9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"]},"message":"formatting"},{"commit":"4eb2d725d5fe6f2cc7935c7dc891912cf7b8e940","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"]},"message":"formatting"},{"commit":"51ae5ebcac7263ef2571c11975b275eff352bbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":148,"deletions":175,"files":["jc/parsers/asciitable_m.py"]},"message":"new streamlined parser"},{"commit":"9ecbdb09162da4d563799aa93d422db85b2c324b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":35,"deletions":30,"files":["docs/parsers/mpstat_s.md","docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","docs/parsers/universal.md","jc/parsers/foo_s.py","jc/parsers/mpstat_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"]},"message":"use generator instead of iterable in function return annotation"},{"commit":"b3a2886fd0af0cd06890f37f1edfc6890bb83e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["docs/lib.md"]},"message":"formatting"},{"commit":"ceacec0f462bd7c2d9e92ddb9029ccd71aef481c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable_m.py"]},"message":"remove errant os sep import"},{"commit":"ff0f794b01395ed9b65fac75a6b07f0772d45a2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":32,"deletions":10,"files":["jc/parsers/asciitable_m.py"]},"message":"working"},{"commit":"70fafbf3f80f35c5db2c306978b2a488adad40bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"remove asciitable so tests pass for now"},{"commit":"5a248a8fc58952a5eab3d4aac025d7422ba82d08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":344,"deletions":0,"files":["jc/parsers/asciitable_m.py"]},"message":"add multiline asciitable parser"},{"commit":"4a3a4e10df8a552a4db3510640695f02b166dc40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":4,"files":["jc/lib.py"]},"message":"add asciitable and asciitable-m parsers"},{"commit":"c27bd5ff39f21c6377e661d4d7de1200d2fdd72f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":16,"files":["jc/parsers/universal.py"]},"message":"pad lines in sparse_table_parse and use str.isspace()"},{"commit":"f804c9627fb71341429ca80aec2887e23e0277db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/universal.py"]},"message":"copy input list so we don't mutate the caller's data"},{"commit":"3ab25d02f9dc248706aa1105e1766b2a84bc55a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"use _parser_is_streaming from lib"},{"commit":"9e80fd2b97b9bfe38fdaa6acdf2e8ed26d34b49d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":11,"files":["jc/cli.py","jc/lib.py"]},"message":"fallback if info and doc items don't exist"},{"commit":"ff9527a098a94c996641fb3fe2f905c8ae5e3063","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":13,"files":["jc/cli.py"]},"message":"import cleanup and use all_parser_info in parsers_text"},{"commit":"7dac2f8dc3baf619105e3c6ca4d3e45300b86287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":23,"deletions":9,"files":["docs/lib.md","docs/readme.md","man/jc.1"]},"message":"doc update"},{"commit":"32e4d55e86c3e7d94488ec69f13a4f6400c4cef3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"]},"message":"use parser_info for help_doc"},{"commit":"f9a9062147256d0949457cc7fde838f87202524d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":27,"deletions":10,"files":["CHANGELOG","jc/__init__.py","jc/lib.py"]},"message":"add documentation argument to parser_info and all_parser_info"},{"commit":"89e5919796f7da585285901dca461aae21336415","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/mpstat_s.md","jc/parsers/mpstat_s.py"]},"message":"add -A to second example"},{"commit":"e5f5b2591d8ac3abeb9571688c7fb8de34d647f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update"},{"commit":"77c667eec045daff5cbd062fe9d6e83f237727e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":67,"deletions":6,"files":["docs/parsers/mpstat.md","docs/parsers/mpstat_s.md","jc/parsers/mpstat.py","jc/parsers/mpstat_s.py","tests/fixtures/ubuntu-18.04/mpstat-A-streaming.json","tests/fixtures/ubuntu-18.04/mpstat-A.json","tests/fixtures/ubuntu-18.04/mpstat-A.out","tests/test_mpstat.py","tests/test_mpstat_s.py"]},"message":"ubuntu fixes"},{"commit":"b257ce8c2fe6825fe435b4d04b4184091030db10","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":65,"deletions":0,"files":[".../centos-7.7/mpstat-A-2-5-streaming.json","tests/fixtures/centos-7.7/mpstat-A-streaming.json","tests/fixtures/centos-7.7/mpstat-streaming.json","tests/test_mpstat_s.py"]},"message":"add mpstat_s tests"},{"commit":"c693c868cacbcd81f44fd383719723dd7a137c87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":352,"deletions":0,"files":["README.md","docs/parsers/mpstat.md","docs/parsers/mpstat_s.md","jc/lib.py","jc/parsers/mpstat.py","jc/parsers/mpstat_s.py","man/jc.1"]},"message":"add mpstat streaming parser"},{"commit":"6f98b27a05d6e1f7571a97316b193f096521b959","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":168,"deletions":0,"files":["tests/fixtures/centos-7.7/mpstat-A-2-5.json","tests/fixtures/centos-7.7/mpstat-A-2-5.out","tests/fixtures/centos-7.7/mpstat-A.json","tests/fixtures/centos-7.7/mpstat-A.out","tests/fixtures/centos-7.7/mpstat.json","tests/fixtures/centos-7.7/mpstat.out","tests/test_mpstat.py"]},"message":"add mpstat tests"},{"commit":"d7efd25d88a8f489564ce48223845a16e4ab1cc7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":207,"deletions":1,"files":["EXAMPLES.md","README.md","docs/parsers/mpstat.md","man/jc.1"]},"message":"add mpstat to docs"},{"commit":"2cddb1f0bb497be0be071cdcb56bf49d2dafc920","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":94,"deletions":15,"files":["jc/parsers/mpstat.py"]},"message":"working mpstat"},{"commit":"ae1c331595dd857d8ae7f8cf93daee1b26be2c3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":30,"deletions":5,"files":["jc/parsers/mpstat.py"]},"message":"initial working version"},{"commit":"bc97052ed4ee3bf3f25127968139f2e89a659fe3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":109,"deletions":0,"files":["CHANGELOG","jc/lib.py","jc/parsers/mpstat.py"]},"message":"initial add mpstat parser"},{"commit":"6c3e0e2aa0e8cc375d9f7473930b18957d33f1aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"formatting"},{"commit":"dd052e01469e9e3328f7326d3591365a8e7322eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":26,"deletions":24,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"add underscores to column examples"},{"commit":"54e8f58145f6c4332fbd375d112259ea7abb2d72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":28,"deletions":2,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"add table result examples"},{"commit":"def7aa5764e69cd0cf2c5b70aa62c62023f76c9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":16,"deletions":16,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"formatting"},{"commit":"6986c74f6dceca907ea2e469a332deeb093a122c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":169,"insertions":34,"deletions":837,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/pidstat.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/nmcli.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/pidstat.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/xrandr.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py"]},"message":"remove direct parser module example from doc"},{"commit":"b784db404d0569a4c630eb124b37b0b1d0846453","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":17,"insertions":87,"deletions":166,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/pidstat_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/pidstat_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"]},"message":"streaming doc formatting update"},{"commit":"8aee4517bb4c2eebdd9873f7eb0827cd33b85519","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":26,"files":["docs/parsers/pidstat_s.md","jc/parsers/pidstat_s.py"]},"message":"doc formatting"},{"commit":"a5fb8fbf94b3b80bef82f078ad6582260b13e374","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":17,"insertions":164,"deletions":148,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/pidstat_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/pidstat_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"]},"message":"streaming doc update"},{"commit":"b9365e2ac28c3eacf53bc101857f7f1d7286ec20","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":74,"deletions":0,"files":[".../centos-7.7/pidstat-hdlrsuw-2-5-streaming.json",".../centos-7.7/pidstat-hdlrsuw-streaming.json",".../fixtures/centos-7.7/pidstat-hl-streaming.json","tests/test_pidstat_s.py"]},"message":"add pidstat-s tests"},{"commit":"696338c1a3d462afbe677a6f2ebe08d06ef4046a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":38,"deletions":0,"files":["tests/_test_foo_s.py"]},"message":"add streaming test template"},{"commit":"4f0616190bb842411353d65650b78a65d8cbdc28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","man/jc.1"]},"message":"doc update"},{"commit":"3278cb0de301ee542b1fe8245a6c359193373b6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":10,"files":["docs/parsers/arp.md","jc/parsers/arp.py"]},"message":"add type hints"},{"commit":"4fc04256a567c502a88ac8a1bd189746387c93f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["jc/parsers/foo_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"]},"message":"rollback noReturn to tuple"},{"commit":"e4ae0fea63c0386c1b3239607fd6a58738d23633","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":8,"deletions":8,"files":["docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","jc/parsers/foo_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"]},"message":"fix type annotation"},{"commit":"d3727ea0906d6167aa48c340519242b010469d98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":99,"deletions":1,"files":["CHANGELOG","README.md","docs/parsers/pidstat_s.md","man/jc.1"]},"message":"doc update"},{"commit":"0d13909cf63d14008607c5640d074ab4073115e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":168,"deletions":0,"files":["jc/lib.py","jc/parsers/pidstat_s.py"]},"message":"add pidstat-s parser"},{"commit":"c52ca20e285895d2afb685a2a5ca275de7901033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/pidstat.py"]},"message":"fix comment"},{"commit":"21f27f26c81c75234221a5193c7d3903323e2032","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":72,"deletions":0,"files":["tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.json","tests/fixtures/centos-7.7/pidstat-hdlrsuw.json","tests/fixtures/centos-7.7/pidstat-hl.json","tests/test_pidstat.py"]},"message":"add pidstat tests"},{"commit":"5e7a87f39782d12070a895440ff541800df91b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":35,"deletions":0,"files":["tests/_test_foo.py"]},"message":"add test template"},{"commit":"845d763829acd03fff1d2fad6e9691f04bd1a2aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/pidstat.md","jc/parsers/pidstat.py"]},"message":"format docs to fit 80 columns"},{"commit":"f5c7d52ec72f5ff4b77d5ac4491f330575b9f10f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":10,"files":["man/jc.1","templates/manpage_template"]},"message":"formatting"},{"commit":"c3198a58744803f52113f80967c7259d781e2328","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":22,"deletions":12,"files":["man/jc.1","templates/manpage_template"]},"message":"formatting"},{"commit":"bbd4afa73542ba6596aed77426bb494fbcf23196","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["README.md","man/jc.1"]},"message":"add pidstat to docs"},{"commit":"ae754a84bf5fc35b248bbc5f7b0fa8e871765819","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":263,"deletions":33,"files":["docs/parsers/arp.md","docs/parsers/pidstat.md","jc/parsers/pidstat.py"]},"message":"doc update"},{"commit":"3389eb5debe0f0ba01ece01e20048608bf357e70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":219,"deletions":9,"files":["jc/parsers/pidstat.py","tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.out","tests/fixtures/centos-7.7/pidstat-hdlrsuw.out","tests/fixtures/centos-7.7/pidstat-hl.out"]},"message":"initial working parser"},{"commit":"01f2c1e71f87ab401d487be4d6d150cb67c91437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":162,"deletions":2,"files":["CHANGELOG","jc/lib.py","jc/parsers/pidstat.py","setup.py","tests/fixtures/centos-7.7/pidstat.out"]},"message":"add pidstat parser"},{"commit":"8bfbf8f1bcd233a8ecd34012e140eb29164ca5fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"simplify error message"},{"commit":"f4242669bac3af5eb196c46d4146823aacec40ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":10,"files":["jc/parsers/arp.py"]},"message":"minor cleanup"},{"commit":"bebd9331f1fb9b80f8cb4a5cfacd68461743004e","merge":"9861983 ac61e9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #211 from kellyjonbrazil/master"},{"commit":"ac61e9ad2c9c4e864db02db04cbf907fb0efd99b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add pypi link"},{"commit":"648ef4d8a9c33a36d4bb2c135fe59b031de8f24c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"update badge links"},{"commit":"727fc9a701e9aae75d3d2b708010da1d0dc8781a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/date.md","man/jc.1"]},"message":"doc update"},{"commit":"306512d6bb53af18516fc10b15c7ec79cb02cc98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":7,"deletions":4,"files":["CHANGELOG","jc/lib.py","jc/parsers/date.py","setup.py"]},"message":"force AM/PM to uppercase in date parser"},{"commit":"6afb1d389ca9dfd7880386d380fee032b7eb92e2","merge":"961968a 9861983","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #209 from kellyjonbrazil/dev"},{"commit":"98619834818c181cb50a9605fe166b6153c46095","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"doc update"},{"commit":"ca79053db08542849136ae13fdb4d1d90b79a7e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docgen.sh"]},"message":"document pydoc version"},{"commit":"29c263f87810f8566ebdad2358e99896391adfd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":93,"insertions":115,"deletions":115,"files":["docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/streaming.md","docs/utils.md"]},"message":"pydoc formatting fixes"},{"commit":"128c3c170abc6a702ae044b073fb9d992d4262b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"doc update"},{"commit":"a531ab8864fca27b55d83b55055eaef1c36128cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting"},{"commit":"0c1be7cc11ec75a5738483d68d053e702eb34fc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":18,"files":["README.md","templates/readme_template"]},"message":"reduce dig example size"},{"commit":"e4222b45f54e6179e22d7924c083e4642b9974ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/lib.py"]},"message":"fix names to mod names"},{"commit":"ac32c69c31e8eff22252d7aded08f6cb14622086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"formatting"},{"commit":"cb2dfeac8d44b733ad9d364e8c6d233a381bfae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":199,"insertions":334,"deletions":326,"files":["README.md","docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/streaming.md","docs/utils.md","jc/__init__.py","jc/cli.py","jc/exceptions.py","jc/lib.py","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat_freebsd_osx.py","jc/parsers/netstat_linux.py","jc/parsers/nmcli.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/xrandr.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py","jc/streaming.py","jc/utils.py","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"change name to JSON Convert"},{"commit":"9a3602e70b865a3015bd700b30d1076e17511a9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/lib.md","jc/lib.py"]},"message":"doc update"},{"commit":"a9f53ee258e18bc90934e263d8dc96feee84e939","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":4,"files":["jc/cli.py","jc/lib.py"]},"message":"optimize streaming parser detection in cli"},{"commit":"6be3d3d98222a262c5138bb09f2951ccfab96110","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":43,"deletions":1,"files":["CHANGELOG","docs/lib.md","docs/readme.md"]},"message":"doc update"},{"commit":"e49df7208377ab34a74240a06f35f17fee4b8203","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"use streaming parser list to find streaming parsers"},{"commit":"7ede7be7bf7b1a7d29d158b3b21c20fff4990e72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":42,"deletions":0,"files":["jc/__init__.py","jc/lib.py"]},"message":"add standard and streaming list functions"},{"commit":"4758e28a36e2a55497e4f722d386a6b5cc30dc4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":16,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting"},{"commit":"4a1ee151b3cb054d84cd964fd62f5855f765751d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":9,"deletions":11,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py"]},"message":"add dhcp6 options to docs"},{"commit":"8c8afc1a922e3c30fcf501d169b33a68b65cd3e0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":60,"deletions":24,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting"},{"commit":"ed205f7720d98c225c917c252ed7a6c9e6e8c2b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":9,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py","man/jc.1"]},"message":"doc update"},{"commit":"d65f7ae992abc33140c00714d442290103661757","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":41,"deletions":0,"files":["EXAMPLES.md"]},"message":"add nmcli"},{"commit":"e2ffef57b9a474048fe72cf42aebfa6bfaf2e42b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_nmcli.py"]},"message":"fix test"},{"commit":"002caa9fb3b65f1ae64df25cc39c3de130403e76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":252,"deletions":0,"files":[".../fedora32/nmcli-connection-show-ens33.json",".../fedora32/nmcli-connection-show-ens33.out",".../fixtures/fedora32/nmcli-device-show-ens33.json",".../fixtures/fedora32/nmcli-device-show-ens33.out","tests/fixtures/fedora32/nmcli-device-show.json","tests/fixtures/fedora32/nmcli-device-show.out","tests/test_nmcli.py"]},"message":"add fedora tests"},{"commit":"b7c6faf3daf8eb0c42a222778baa440c5a018c75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"enhance error message"},{"commit":"554ca61d1764b81dea06b6b013d0444072f0662a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":165,"deletions":0,"files":[".../fixtures/centos-7.7/nmcli-connection-all.json",".../centos-7.7/nmcli-connection-show-ens33.json","tests/fixtures/centos-7.7/nmcli-connection.json","tests/fixtures/centos-7.7/nmcli-device-all.json",".../centos-7.7/nmcli-device-show-ens33.json",".../fixtures/centos-7.7/nmcli-device-show-lo.json","tests/fixtures/centos-7.7/nmcli-device-show.json","tests/fixtures/centos-7.7/nmcli-device.json","tests/fixtures/centos-7.7/nmcli-general-all.json",".../centos-7.7/nmcli-general-permissions.json","tests/test_nmcli.py"]},"message":"add tests"},{"commit":"7b9722d255a16981099dc803beda7abe0d46106a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":26,"deletions":34,"files":["man/jc.1","templates/manpage_template"]},"message":"fix formatting"},{"commit":"5505bde8ef77db0885f08d8d04160cbc4418dd67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/zipinfo.md"]},"message":"doc update"},{"commit":"dbcd9a4060647be24bca2a8d577f11925a9ac210","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/zipinfo.py"]},"message":"bump version to 1.0"},{"commit":"4bdeb2b3aa063c2772f5c44e52acbe16e915cc3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/xrandr.py"]},"message":"simplify warning message"},{"commit":"6ae1d03187c6d4b669f6f74db1be7c9cf07adaed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py"]},"message":"doc fix"},{"commit":"f75b06abe4af152be094f8bc1ba5ce66b25e35e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":180,"deletions":3,"files":["README.md","docs/parsers/nmcli.md","jc/parsers/nmcli.py","man/jc.1"]},"message":"doc update"},{"commit":"1923925710dadc4116202855ae884ef18394d428","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["CHANGELOG"]},"message":"update changelog"},{"commit":"2c5c57ae04df3b7abfb1c3423c3350c7c2ab5dcd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/lib.py","setup.py"]},"message":"version bump"},{"commit":"f4d11d697e000135720a971edf84dcad31a1bec8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":155,"deletions":15,"files":["jc/parsers/nmcli.py"]},"message":"finish use cases and doc"},{"commit":"7f409b7082aa9525cc9280e3c5c92bc82089cf14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"enhance ParseError cli message"},{"commit":"937fa5aad2519f588c6d0feb8f08211f6b99872f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":0,"files":["jc/parsers/nmcli.py"]},"message":"split dhcp options"},{"commit":"19dcef513565c34a31f6d735577da5e25f9bd2cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":69,"deletions":2,"files":["jc/parsers/nmcli.py"]},"message":"firm up flow. add/remove text. parse routes"},{"commit":"3d01356461eb2790f859968da7f5cb4fd2ee9898","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":3,"files":["jc/parsers/nmcli.py"]},"message":"add text_kv function"},{"commit":"2d6f666fa4c791e7995f6b0c1490dac73ce224c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":61,"deletions":16,"files":["jc/parsers/nmcli.py"]},"message":"add dev show and conn show parsers"},{"commit":"4dda895f122ecc19b267ed1485cf656bae76ff07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":404,"deletions":0,"files":["jc/lib.py","jc/parsers/nmcli.py","tests/fixtures/centos-7.7/nmcli-connection-all.out",".../centos-7.7/nmcli-connection-show-ens33.out","tests/fixtures/centos-7.7/nmcli-connection.out","tests/fixtures/centos-7.7/nmcli-device-all.out",".../centos-7.7/nmcli-device-show-ens33.out","tests/fixtures/centos-7.7/nmcli-device-show-lo.out","tests/fixtures/centos-7.7/nmcli-device-show.out","tests/fixtures/centos-7.7/nmcli-device.out","tests/fixtures/centos-7.7/nmcli-general-all.out",".../centos-7.7/nmcli-general-permissions.out","tests/fixtures/centos-7.7/nmcli.out"]},"message":"initial nmcli parser"},{"commit":"52617b1722ba2f089716b069f78f70a865430d61","merge":"3afaa48 961968a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #208 from kellyjonbrazil/master"},{"commit":"961968a0fcaf37b64bc850c4945ba4b805a1fe54","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":26,"deletions":23,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"fix schema"},{"commit":"f026a788e5ca1231927e71fdbb1dadb2365a6518","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":62,"deletions":0,"files":["EXAMPLES.md"]},"message":"add xrandr example"},{"commit":"2f7c03eb35520be916c28a687031f8c6425839ba","merge":"681176e 3afaa48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #207 from kellyjonbrazil/dev"},{"commit":"3afaa48eee081e28262d1762c5ec23d318012822","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":15,"insertions":15,"deletions":15,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"]},"message":"doc update"},{"commit":"3201452564fb0fb44ef9cc32217339370bd2521e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"add -p to example"},{"commit":"7ee1e34fc71c0dbc08ba482b787d560fd5125f64","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":116,"deletions":4,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"doc update"},{"commit":"67dbf050161201f5016899591e81ab6253ac2322","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"add type annotations"},{"commit":"4ac9f2e3dad4e7bd270bf5a8e61b729838b2c89c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":10,"deletions":17,"files":["CHANGELOG","docs/parsers/rsync.md","docs/parsers/rsync_s.md","jc/parsers/rsync.py","jc/parsers/rsync_s.py"]},"message":"doc update"},{"commit":"3f5f6e39a777ef524cb3a06a01321bb8c31d930d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":100,"deletions":98,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"formatting"},{"commit":"4723db8e3cc4946b14c83b25d6e8c6d2309aa72e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":195,"deletions":77,"files":["README.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/xrandr.md","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/xrandr.py","man/jc.1"]},"message":"doc updates"},{"commit":"ca914ec77d1fc77e42860189e62ac2fb203d4931","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":2,"files":["tests/test_xrandr.py"]},"message":"add nodata test"},{"commit":"dcc7f3f357ef016b4583fc1320fd2394788f271f","merge":"184ef3a cbdc666","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #204 from lyterk/xrandr"},{"commit":"cbdc66623671da335eafe132b7af79f884856f1d","author":"Kevin Lyter","author_email":"lyterk@sent.com","stats":{"files_changed":3,"insertions":2,"deletions":30,"files":["jc/parsers/xrandr.py",".../{simple_xrandr.json => xrandr_simple.json}",".../{simple_xrandr.out => xrandr_simple.out}"]},"message":"Return empty object if no results and filenames"},{"commit":"184ef3a1faeb406ce62076cff637ee86d61541fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":11,"deletions":3,"files":["docs/parsers/rsync.md","docs/parsers/rsync_s.md","man/jc.1"]},"message":"doc update"},{"commit":"c732f759445e335fe36586859b6fde7e27bb8901","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":10,"deletions":2,"files":["jc/parsers/rsync.py","jc/parsers/rsync_s.py"]},"message":"doc update"},{"commit":"7a1ae4f5fc5328c32bf77235cfbd9f83ec995053","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":105,"deletions":0,"files":["tests/{test_lib.py => test_jc_lib.py}","tests/test_jc_streaming.py","tests/{test_utils.py => test_jc_utils.py}"]},"message":"add library tests"},{"commit":"d04bc3757c482ec9062b2da91ded76c5dd6d106b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add xrandr"},{"commit":"73e8391653145412cd852aca349466018c8b9084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":3,"files":["jc/utils.py"]},"message":"formatting"},{"commit":"f6c1463c1578db264ccb3d4c2677857ed906e965","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":44,"deletions":24,"files":["jc/cli.py"]},"message":"formatting"},{"commit":"d392c7f901a9d7c57617fbd03bd3f88ee0bf4132","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":20,"deletions":13,"files":["docs/parsers/date.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/ls.md","docs/parsers/rpm_qi.md","docs/parsers/stat.md","docs/parsers/systeminfo.md","docs/parsers/timedatectl.md","docs/parsers/upower.md","docs/parsers/vmstat.md","docs/parsers/who.md","docs/utils.md"]},"message":"doc update"},{"commit":"d0387f58205b2fd9b9860ce9656bb29ceec54340","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":16,"insertions":34,"deletions":29,"files":["jc/parsers/date.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/systeminfo.py","jc/parsers/timedatectl.py","jc/parsers/upower.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/who.py"]},"message":"add timestamp format hints for better performance"},{"commit":"76f92908a3ba9cbadcc8e972afa8b1c4a69509bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":44,"deletions":9,"files":["jc/utils.py"]},"message":"add format hints for performance optimization"},{"commit":"1a115da67bdce9acfefbfb71fbac37e234b1babd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"add lru_cache maxsize for python 3.7 support"},{"commit":"f0a37ccf301eee5133a83b5dd96986fef0c38e7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/utils.py"]},"message":"use lru_cache for significant performance boost to timestamp"},{"commit":"f331f53a531169520a4d8ea15d277560a49aedb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["CHANGELOG","jc/utils.py"]},"message":"use !r formatting instead of quotes"},{"commit":"8611aff06b18212b7292d564beb27a2062fc3f41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/parsers/rsync_s.md","jc/parsers/rsync_s.py"]},"message":"add examples"},{"commit":"2f3f78e8d35a0ccccde0f84417400acdfe7fe0aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":16,"insertions":194,"deletions":185,"files":["docgen.sh","docs/parsers/rsync_s.md","docs/readme.md","docs/streaming.md","docs/utils.md","jc/__init__.py","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/streaming.py","man/jc.1"]},"message":"refine streaming parsers"},{"commit":"d1e0ee6123dfecd48d074cb7a40e98a15b6adcb9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":8,"files":["jc/parsers/ping_s.py"]},"message":"use new streaming functions"},{"commit":"45314c98083067f1f6fae9c477c99fabec223f29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":112,"deletions":102,"files":["jc/streaming.py","jc/utils.py"]},"message":"move some functions to streaming"},{"commit":"df00945b46e27e10107f48d186eedf80b55bd40e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":59,"deletions":49,"files":["jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py"]},"message":"move try/except inside for loop"},{"commit":"fda0050d867bcbe4f1d7e024b08e9881d0f57735","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":191,"deletions":0,"files":[".../centos-7.7/rsync-i-logfile-streaming.json","tests/fixtures/centos-7.7/rsync-i-streaming.json",".../centos-7.7/rsync-i-v-logfile-streaming.json",".../centos-7.7/rsync-i-vv-logfile-streaming.json",".../rsync-i-vvv-logfile-nochange-streaming.json",".../centos-7.7/rsync-i-vvv-logfile-streaming.json",".../centos-7.7/rsync-ivvv-nochange-streaming.json",".../fixtures/centos-7.7/rsync-ivvv-streaming.json","tests/fixtures/generic/rsync-i-streaming.json",".../rsync-i-vvv-logfile-nochange-streaming.json",".../rsync-i-vvv-nochange-streaming.json",".../osx-10.14.6/rsync-i-vvv-streaming.json","tests/test_rsync_s.py"]},"message":"add rsync-s tests"},{"commit":"a76d46f9ecb1eff4d6cc7ad633c97cec0e99001a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":19,"insertions":110,"deletions":109,"files":["CHANGELOG","docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","docs/utils.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/utils.py","man/jc.1"]},"message":"refactor ignore_exceptions"},{"commit":"6b069a82d0fa19c8d83b19b934bace556cb758d7","author":"Kevin Lyter","author_email":"lyterk@sent.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/lib.py"]},"message":"Add xrandr to lib.py"},{"commit":"6b793d052147406f388c4d5dc04f506a3456f409","author":"Kevin Lyter","author_email":"lyterk@sent.com","stats":{"files_changed":1,"insertions":6,"deletions":11,"files":["jc/parsers/xrandr.py"]},"message":"Clean up types"},{"commit":"ce9103f7cc666895dc7840d32797d8c7274cf1b8","author":"Kevin Lyter","author_email":"lyterk@sent.com","stats":{"files_changed":2,"insertions":0,"deletions":287,"files":["templates/xrandr_sample.txt","templates/xrandr_sample_verbose.txt"]},"message":"Delete old files in template folder"},{"commit":"671d6dee36a37317257e09a080849205d301bceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":83,"deletions":15,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","docs/utils.md"]},"message":"doc update"},{"commit":"49929c714c2d71a310b1dd95138dbd02f8704138","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":139,"deletions":52,"files":["jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/utils.py"]},"message":"add add_jc_meta decorator"},{"commit":"2986771f07de87bfee44dd3bbb4f285e249aad76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"require python v3.7 and above since v3.6 is now deprecated"},{"commit":"520082d963b93d2bafeff921da3899686b22cadf","author":"Kevin Lyter","author_email":"lyterk@sent.com","stats":{"files_changed":9,"insertions":968,"deletions":0,"files":["jc/parsers/xrandr.py","templates/xrandr_sample.txt","templates/xrandr_sample_verbose.txt","tests/fixtures/generic/simple_xrandr.json","tests/fixtures/generic/simple_xrandr.out","tests/fixtures/generic/xrandr.out","tests/fixtures/generic/xrandr_2.out","tests/fixtures/generic/xrandr_device.out","tests/test_xrandr.py"]},"message":"New parser: xrandr"},{"commit":"021e296d457140c32b5256c2b0acf66efc458896","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":104,"deletions":100,"files":["jc/parsers/rsync_s.py"]},"message":"move variable inits and regexes up"},{"commit":"42e56fbcea6db64ea7f7045e7755af492c95aec2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":12,"files":["jc/parsers/rsync.py"]},"message":"move regex up"},{"commit":"a5b62a4055df37b84751a7cdc14eb6f1ed907cd9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":230,"deletions":18,"files":["docs/parsers/rsync_s.md","jc/parsers/rsync_s.py"]},"message":"add processing and docs"},{"commit":"be98c9b7f6c67e23ea101223934d67bba512e645","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/foo_s.py"]},"message":"simplify try/except by moving outside for loop"},{"commit":"aceeb8450796ae748a4d4abf75643f309d0a42e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":12,"deletions":1,"files":["CHANGELOG","README.md","man/jc.1"]},"message":"doc update"},{"commit":"13910632173e7c815ff1161cf52fd1d17153c4a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":367,"deletions":0,"files":["jc/lib.py","jc/parsers/rsync_s.py"]},"message":"first draft rsync streaming parser"},{"commit":"52157addd0d6dff3bdb34f179ec14b07c8c27ccc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/foo_s.py"]},"message":"fix compatible list"},{"commit":"ec0bc6615e22fdc536623e290d88b9725cb6a0ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/utils.md","jc/utils.py"]},"message":"formatting"},{"commit":"2f80800e38256b363a4122195ec4aaffebe67d87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"simplify all_parser_info comprehension"},{"commit":"3959d3347c8d3e838f8c3158c4db74e2fa2eb856","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["docs/lib.md"]},"message":"doc update"},{"commit":"b57d25c69a193d3866ea86a3a34edd67049b198d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/lib.py"]},"message":"clean up return type for parser_info"},{"commit":"63e43a7cabb51c624c962cdcc92a1199f18c77e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":188,"deletions":21,"files":["README.md","docs/lib.md","docs/parsers/rsync.md","docs/parsers/universal.md","docs/parsers/zipinfo.md","docs/utils.md","man/jc.1"]},"message":"doc updates"},{"commit":"21719f9a26c25d896b0a5d49c9d7814175835e16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":18,"deletions":20,"files":["jc/lib.py","jc/utils.py"]},"message":"type annotation updates"},{"commit":"96ec70de4f6178b0669fd9ab47cb303dc45e55c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["jc/parsers/universal.py","jc/utils.py"]},"message":"remove unneeded optional"},{"commit":"a15a1967dc06169ceeda0fd5b4857ce1a351f3d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"fix typo"},{"commit":"a10d7566294fe5246e68a16e355ce56dd3557ac5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/universal.py"]},"message":"fixy mypy issues"},{"commit":"0700dc7a64b121cf0243416e2cbb82fcef15f5a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/rsync.py"]},"message":"remove cygwin from compatible"},{"commit":"ca654b214057e19839b89e0d9a66f1110f679c1e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"fix parser order"},{"commit":"4ff3b87c1c96d720f4e7fd39e613944e322cb388","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/rsync.py"]},"message":"remove future field from docstring"},{"commit":"ea244fb7a91f1d1f8ffe0ea6dc10dfe5ab836878","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_rsync.py"]},"message":"formatting"},{"commit":"8061f30e6fa58d22ed1a52e02c4d9c7f0bf132cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":236,"deletions":6,"files":["tests/fixtures/centos-7.7/rsync-ivvv-nochange.json","tests/fixtures/centos-7.7/rsync-ivvv-nochange.out","tests/test_rsync.py"]},"message":"add centos -i nochange test"},{"commit":"8f3b12e81e1b4f0d4394c33db5b3a352f4cfb391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":299,"deletions":0,"files":["jc/parsers/rsync.py",".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.json",".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.out","tests/fixtures/osx-10.14.6/rsync-i-vvv.json","tests/fixtures/osx-10.14.6/rsync-i-vvv.out","tests/test_rsync.py"]},"message":"add fixes for mac -i output"},{"commit":"d0694ce0db5ea2d06b5787429adf23095c4c2df0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":245,"deletions":6,"files":[".../osx-10.14.6/rsync-i-vvv-logfile-nochange.json",".../osx-10.14.6/rsync-i-vvv-logfile-nochange.out","tests/test_rsync.py"]},"message":"add nochange log test for mac"},{"commit":"0cd4c4bc7f3ffe13cb2f1920187e25636b88af61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":658,"deletions":0,"files":[".../centos-7.7/rsync-i-vvv-logfile-nochange.json",".../centos-7.7/rsync-i-vvv-logfile-nochange.out"]},"message":"add nochange tests"},{"commit":"12f90c349c903634def4225ce87924b475be46d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":68,"deletions":20,"files":["jc/parsers/rsync.py","tests/test_rsync.py"]},"message":"update regexes for unchanged files"},{"commit":"26b8a1f167c4b1ec3f9fb4077254a27ed8548933","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"]},"message":"remove packages from binaries and packages header"},{"commit":"3abe382c064f605d915912f9b726d76784eba8a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":90,"deletions":3,"files":["EXAMPLES.md","jc/parsers/rsync.py"]},"message":"add examples"},{"commit":"1e2edc2c7b5dc104a9efe4da7df9be61b9e1be32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":53,"deletions":29,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-logfile.json","tests/fixtures/centos-7.7/rsync-i-v-logfile.json","tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json"]},"message":"add timestamp"},{"commit":"5fe032a6741b7b6586c60eb28be74bd0e56277a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/zipinfo.py"]},"message":"fix typo"},{"commit":"e825c02df1cdae67c7f335fe3c675685eb1a8d02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":605,"deletions":0,"files":["tests/fixtures/centos-7.7/rsync-i-logfile.json","tests/fixtures/centos-7.7/rsync-i-v-logfile.json","tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out","tests/fixtures/centos-7.7/rsync-i.json","tests/fixtures/centos-7.7/rsync-i.out","tests/fixtures/centos-7.7/rsync-ivvv.json","tests/fixtures/generic/rsync-i.json","tests/fixtures/generic/rsync-i.out","tests/test_rsync.py"]},"message":"add rsync tests"},{"commit":"a4a4d170b5ae8c189de982adea5bdc9bf1f26e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":5,"files":["jc/parsers/rsync.py"]},"message":"update docstring"},{"commit":"d0fcd523cb2cbb59d0f90369721749b54222961d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":17,"files":["jc/parsers/rsync.py"]},"message":"fix process conversions"},{"commit":"f72b7dc75dbd1c3f5daee3ecee28487258a04873","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":8,"files":["jc/parsers/rsync.py"]},"message":"change keyname to files and remove future key"},{"commit":"4101dc6bf7bab7d00899426e2f6271a7480d558f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":1008,"deletions":19,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-v-logfile.out","tests/fixtures/centos-7.7/rsync-i-vv-logfile.out","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out"]},"message":"add log-file support"},{"commit":"ea5011b616365b5c10c04416d43035d84e3dacba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":175,"deletions":41,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-logfile.out"]},"message":"updated schema. add log-file option support"},{"commit":"d6de81747fd92642dbd5cb1fb097e375aa38be35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":3,"files":["jc/parsers/rsync.py"]},"message":"add int/float conversions"},{"commit":"38f04b1c9699246d85332b20df5b6a91ae0c48d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":32,"deletions":7,"files":["jc/parsers/rsync.py"]},"message":"add summary"},{"commit":"84169e1a913d035744f71472be81fe3a7d774b97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":637,"deletions":2,"files":["jc/lib.py","jc/parsers/rsync.py","setup.py","tests/fixtures/centos-7.7/rsync-ivvv.out"]},"message":"add rsync parser"},{"commit":"1f96586a5e883709f436526de6dcb21ff44bf97b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/foo.py"]},"message":"reorder imports"},{"commit":"681176e4c958157ef1f2151b3e57963a6ba48e09","merge":"b389665 8bb2663","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #203 from kellyjonbrazil/dev"},{"commit":"8bb266352207f95040b72750e5b3ae3b8ceb2b98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"date update"},{"commit":"663abf313931b49fad64b425ece6a5a257dc7938","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":3,"deletions":4,"files":["MANIFEST.in","mangen.py","runtests.sh","updatedocs.sh"]},"message":"clean up scripts"},{"commit":"f7ac41db95c16fd21d83fbce678c5dec28ab40f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":13,"files":["README.md","man/jc.1"]},"message":"final doc update"},{"commit":"5502cda9e591b531d6b452b02d8ec322c3287800","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["tests/test_lib.py"]},"message":"add additional test for dict inside list for all_parser_info()"},{"commit":"a2b165565f54d91489bf38577a0785e78a4523d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["tests/test_lib.py"]},"message":"add lib tests for new functions"},{"commit":"b426369815984bd2aae8bcb14e306ba73b8cd4ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/cli.py"]},"message":"use all_parser_info() from lib in about function"},{"commit":"ac0840cc0afb4aeee2c99076710c987e09cfa5f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"fix typo"},{"commit":"ee98ab0a4a7671ae34ee79f7b0b97c061a8c2944","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/lib.md","docs/utils.md"]},"message":"doc update"},{"commit":"2adec2c0035b84ca0242f2494b6c2651b9898ca5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":21,"deletions":19,"files":["jc/lib.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/utils.py"]},"message":"update type hints with mypy help"},{"commit":"f19c9c71bf4f592f55a5176458acd478b462fdbe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":4,"files":["jc/parsers/foo.py","jc/parsers/foo_s.py"]},"message":"add type hints"},{"commit":"e93adf1884c0006a64123513070a5fd96a940da2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"fix doc"},{"commit":"254c4fc507842ca72064c0196418a7b939d54d06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":6,"files":["docs/readme.md","jc/__init__.py"]},"message":"add new functions"},{"commit":"74d5f60d14fc42cfd5768c7ffd6efc890a65d442","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"]},"message":"update console interview description"},{"commit":"db7dc0634bc17b4daadc8bc21bba5975c093efe5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/lib.md","jc/lib.py"]},"message":"make **kwargs optional"},{"commit":"e156b0db453e99fb0f74b618fd343218f978ff68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"add type hints"},{"commit":"50adc05fbd6a0dcd9e4fb38aa41917bb57332f36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/utils.md","jc/utils.py"]},"message":"formatting"},{"commit":"446cac7c217103eb66cfdee97e3a208b7144b644","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":11,"files":["docs/utils.md","jc/utils.py"]},"message":"doc update"},{"commit":"28ffe3076bb5f23aeaf2624344856dbd02b4c0e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":9,"files":["docs/lib.md","jc/lib.py"]},"message":"formatting"},{"commit":"d4d5e206cae14acd25445952f820810818b3fdce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":40,"deletions":28,"files":["docs/lib.md","docs/utils.md","jc/utils.py"]},"message":"type hints update"},{"commit":"42fbe40a4ae02b9d09acdbf9b22573844959d2ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/lib.py"]},"message":"simplify type hints"},{"commit":"27e4a120e21dcbb3eadc6c4cf224ddb33859328d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/lib.md","jc/lib.py"]},"message":"remove trailing comma"},{"commit":"b5d5b7c73a96d4335b178ccfac60af90913e6f0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":29,"deletions":148,"files":["docgen.sh","docs/parsers/ifconfig.md","docs/parsers/traceroute.md"]},"message":"remove private classes"},{"commit":"e7471556ba5fb0586ac5b0d7404cabd98a58db2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":5,"files":["docgen.sh"]},"message":"remove sed lines"},{"commit":"640a21341bb1c562cb2124155b511dfc74277fc0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":47,"deletions":42,"files":["docs/utils.md","jc/utils.py"]},"message":"fix indentation"},{"commit":"f5befad3e41ba2864abc795a2fdf63e0f1d37c21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":33,"deletions":25,"files":["docs/utils.md","jc/utils.py"]},"message":"move docstring under __init__"},{"commit":"f8223023c31093c1a34130b4e4cfc23b1d80a30c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":24,"deletions":10,"files":["docgen.sh","docs/parsers/ifconfig.md","docs/parsers/traceroute.md","docs/utils.md"]},"message":"change header depth"},{"commit":"7028e87f9b411c0cfb92eee7fc0667cdcb9a54ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":87,"insertions":22,"deletions":445,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md"]},"message":"remove TOC for parsers"},{"commit":"590728f9c1ccfdc078e600d1f35ad4ba51f70d36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":91,"insertions":506,"deletions":17,"files":["docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/utils.md","jc/lib.py"]},"message":"try new pydoc-markdown formatting options"},{"commit":"7cc147fe2d7b278bcab905bc4c3b70b5265e1510","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":44,"files":["docgen.sh","docgen.sh.old"]},"message":"increase heading size"},{"commit":"3cfb3965bb25024a7b03870b71f02194e278919b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":19,"deletions":19,"files":["docs/lib.md","docs/parsers/universal.md","docs/utils.md"]},"message":"formatting"},{"commit":"155d4213225fe4fcf4a059fb63c1ab9fc493177e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":86,"insertions":182,"deletions":181,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"]},"message":"formatting"},{"commit":"d3e10bb87bdb32396bce95f74e62a023f4efaf99","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":291,"deletions":0,"files":["docs/parsers/lsusb.md"]},"message":"add lsusb docs"},{"commit":"fd5433ee6220357e59633c78b689aa432d056b43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":293,"files":["docs/lib.md","docs/parsers/lsusb.md","jc/lib.py"]},"message":"parse docstring formatting"},{"commit":"4568f2d06e8fc1c465c86c318d925586481af062","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/lib.md","jc/lib.py"]},"message":"formatting for parse docstring"},{"commit":"c36e513d1bcc07cd8f01ff59199950e5396da51b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":86,"insertions":88,"deletions":91,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"]},"message":"formatting"},{"commit":"8e089baf3fe30fed80e1c5cdde7c3046bb70ca5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":86,"insertions":8,"deletions":855,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"]},"message":"remove info class from docs"},{"commit":"386f6c317e104e797c2b55e3d21c8b064a83ac78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":89,"insertions":9552,"deletions":9939,"files":["docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/utils.md"]},"message":"update markdown processor settings"},{"commit":"75cd84ce8a86b3357c6cf5fe4fbc62d0f298a29a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":94,"insertions":11423,"deletions":10081,"files":["README.md","docgen.sh","docgen.sh.old","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/utils.md","jc/cli.py","man/jc.1"]},"message":"try new markdown conversion"},{"commit":"6fad44e35df5d0e33e716d0fcb84ed309e6fd30b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"fix type hint"},{"commit":"1caac750daa25a5abeb1289964e918ec06289bfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/lib.py"]},"message":"Update type hints"},{"commit":"16370dcb3d5cf1304c2340ef2253ef2987a982b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"update type hints"},{"commit":"c1302f2573993a6908001d6df0697486f54a9e7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":8,"files":["jc/lib.py"]},"message":"add type-hints to public api"},{"commit":"6f0ffe0955e4d9d6cc82552cf4e4f419e3ff3756","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"docu update"},{"commit":"1f89745fe7cca3a0ac27445942098b717675a481","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump"},{"commit":"a46ac18ef775bb2c52675e61e11c5d92f33cbe81","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["CHANGELOG"]},"message":"doc update"},{"commit":"1a05f1c575b57456481e41baaf551cef30115966","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":64,"deletions":54,"files":["jc/__init__.py","jc/cli.py","jc/lib.py"]},"message":"add parser info functions. move _get_parser functionality from cli to lib"},{"commit":"08f818aa42ca68050a79ec387c42bff265257fd5","merge":"027c231 b389665","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #199 from kellyjonbrazil/master"},{"commit":"b3896650c230b4acc73704a50c93ee74e4034eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":62,"deletions":104,"files":["README.md","templates/readme_template"]},"message":"revert column formatting"},{"commit":"f285539526998a5097943c71dcecb2979036b2b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":104,"deletions":62,"files":["README.md","templates/readme_template"]},"message":"conform to 80 columns"},{"commit":"a896dcdf3b31b60582ebb1b3bca5d1103f998dd6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":338,"deletions":120,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"0a187d4ed08173ec360a006ae2367bb1f2f96c52","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"]},"message":"add console interview links"},{"commit":"2d65bc57d5a396e6683f970194de29494b5c1272","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/readme.md","jc/__init__.py"]},"message":"add quotes"},{"commit":"ab63809fde0cefe1f0401d957a3736fdb760f0cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"update description"},{"commit":"6f04707dc63936efd0e533ae36e1b39ead10c466","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add python package doc info to top of page"},{"commit":"d14a86a9b58bdc3cb0c8df1dfa495aefdaab8033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py"]},"message":"fix typo"},{"commit":"8e6a31d3da19926ac46744e02b27a899ca5fbd7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":14,"deletions":8,"files":["CHANGELOG","docs/readme.md","jc/__init__.py","jc/lib.py","man/jc.1","setup.py"]},"message":"minor fix for macOS binary"},{"commit":"6e7b6afe87355e96422bb2560ffcbd5e79d28f04","merge":"70cb445 027c231","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #198 from kellyjonbrazil/dev"},{"commit":"027c231097a002526350a93322407582a85db0cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"formatting"},{"commit":"f1cf7d1f953586dd44a4463d924f1a1f52717c37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":5,"files":["jc/parsers/foo.py","jc/parsers/foo_s.py"]},"message":"add helper function info"},{"commit":"df611cc263f50285e74ceb3381f55b43a74870a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting"},{"commit":"0f3143bbbb593340190e66729580146410012e14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting"},{"commit":"c280757b7624a46543e481ca47a6e084d2d6f519","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting"},{"commit":"d30b9d84ef5ec3a2a504f7ea251c932b8c9ea878","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting"},{"commit":"50ded1dbd97d26cf01d7e1a98b40e0f0f7d02202","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":4,"files":["docs/readme.md"]},"message":"doc update"},{"commit":"e319aea5a45c598a44f35b4e58131d977509e4f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":4,"files":["jc/__init__.py"]},"message":"add doc version info"},{"commit":"ba86509c1d8700a50fe14e9d931ee57261306c5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":9,"files":["jc/cli.py"]},"message":"simplify OSError exception handling"},{"commit":"0a9279ae6bfdd1aa59f5e9b31ce0af3bfec19f96","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["CHANGELOG","tests/test_lib.py"]},"message":"doc update"},{"commit":"a13dde12af01b4473aa9a34b8a0d7387fb48500a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":173,"insertions":173,"deletions":173,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py","man/jc.1"]},"message":"change raw output wording"},{"commit":"e2ed358de1abefd737c187a324cbe4734d6975e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["CHANGELOG"]},"message":"changelog update"},{"commit":"a2cd3666210be3727a00c3405972f32fbd421046","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["docs/_config.yml"]},"message":"Delete _config.yml"},{"commit":"15addd9bfc18a0e87beb97040b431c872b783662","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":8,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"doc fix"},{"commit":"a4e34b0053ec0c032f4783caaa3e07fc2c685a98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":63,"deletions":0,"files":["docgen.sh","docs/parsers/universal.md"]},"message":"add universal parser docs"},{"commit":"d09529ac302fbcc156d58cf836f8397c98121a76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update"},{"commit":"553097b5050dc02fbdaeec2e2e138e01bc6811d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/universal.py"]},"message":"docstring update"},{"commit":"49c556857708307f617b2b516f2d281398681b5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":35,"deletions":15,"files":["README.md","docs/lib.md","docs/readme.md","jc/__init__.py","jc/lib.py","man/jc.1","templates/readme_template"]},"message":"module doc update"},{"commit":"6962b9ee8a52c924dc2de6b79ddeea3636e80fe4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":6,"files":["docs/lib.md","jc/lib.py"]},"message":"formatting"},{"commit":"b4575a3f780f9aa2751c8b4789f67aaca32dd1cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":91,"deletions":1,"files":["docgen.sh","docs/lib.md","jc/lib.py"]},"message":"add lib docs"},{"commit":"35b54d235d73b2ce658223be3d6095906f142d89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add python package doc info"},{"commit":"583a5757e454a4e36b331057d1266279b55ee16a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":18,"insertions":34,"deletions":30,"files":["docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/file.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/traceroute.md","docs/parsers/ufw_appinfo.md","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/file.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/traceroute.py","jc/parsers/ufw_appinfo.py"]},"message":"formatting"},{"commit":"f355333eeed3c4afba844dc7bed5224356552adc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting"},{"commit":"4d7df109604e4f8367904968602acfc05217a7fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting"},{"commit":"66b2c28f4bc75fb76800f9fb7ea485eee194a9a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":24,"deletions":24,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting"},{"commit":"299a9c6d88fdf1fede447b4057d8f4263daef733","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":25,"deletions":57,"files":["docs/parsers/csv.md","docs/readme.md"]},"message":"formatting"},{"commit":"bd391d979ce98b126dab0f012a56b3fcb1f73439","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":55,"files":["jc/__init__.py"]},"message":"add lib function docs"},{"commit":"7309bd2282445f6daef0b1491ff60b8104500abb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":19,"deletions":10,"files":["jc/lib.py","jc/parsers/csv.py","jc/parsers/universal.py"]},"message":"add get_help"},{"commit":"ce84c09d3394b598f19a3e012ef27ce4154e3b3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/__init__.py"]},"message":"add get_help()"},{"commit":"b4fffbb6476daf78fbdf19dbf31bbeeab950d2dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":46,"insertions":501,"deletions":304,"files":["docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/history.md","docs/parsers/ini.md","docs/parsers/iostat_s.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsusb.md","docs/parsers/netstat.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/ps.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/upower.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/who.md"]},"message":"formatting"},{"commit":"3701b4198aad1826ad6da571fbcaa530b057cc48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":86,"insertions":710,"deletions":606,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"formatting"},{"commit":"d4c34098fa7ad2098076f0fa0564467e5d06f916","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/lib.py"]},"message":"formatting"},{"commit":"b3c531193b3fc53697e7d7823576f481f9462d53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":125,"deletions":71,"files":["CHANGELOG","docs/utils.md","jc/utils.py"]},"message":"formatting"},{"commit":"1d0e07c77bab5c48405323e52873c7952dd0a587","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":57,"deletions":55,"files":["docs/readme.md","jc/__init__.py","jc/lib.py"]},"message":"formatting"},{"commit":"06a322cf9c7468dc7e8ba05914e1d07bbc51f63a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":8,"files":["tests/test_lib.py"]},"message":"rename tests and add conversion function tests"},{"commit":"623d148712f93eacf9b7b5803140603f0af67acb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"doc update"},{"commit":"647e83d0439a0937db14a2cc97929e38a6b6a43b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["tests/test_lib.py"]},"message":"add test to ensure there are zero plugin parsers installed during tests"},{"commit":"91a554464444da0cc3ed3b4d212539232411f6cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/lib.py"]},"message":"doc update"},{"commit":"a1190998aef1bf403ee34c38c1a0fbd6291ac38b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":82,"deletions":0,"files":["tests/test_jc.py","tests/test_lib.py"]},"message":"add jc and jc.lib tests"},{"commit":"097d7a1850f6f6df73a5761c657b73ef9dbd3e29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/__init__.py"]},"message":"simplify __init__"},{"commit":"302bf72e720b3a67fbf1300eaff4f99fc343abeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":138,"insertions":718,"deletions":6,"files":["docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py"]},"message":"Update high-level API docs"},{"commit":"2c42baf3a4dd6733c078f31a1becd708a05f2c36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":34,"insertions":174,"deletions":0,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py"]},"message":"add new high-level api info"},{"commit":"03feb89c84096c0ea1d6ae3a0634ae7b8b507e8f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/readme.md","jc/__init__.py"]},"message":"add module list info"},{"commit":"9dd553192fbca3037b3afe5df6bae88f7a8a9365","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":29,"deletions":12,"files":["CHANGELOG","README.md","docs/readme.md","man/jc.1","templates/readme_template"]},"message":"doc update"},{"commit":"fa3f02e9d1ac7867e3465c2d214f4e4229ff4c66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump"},{"commit":"0a9dde58c5235f78c4c9ae9c013f7454482c6067","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":228,"deletions":134,"files":["jc/__init__.py","jc/cli.py","jc/lib.py"]},"message":"add jc.parse() high-level API"},{"commit":"70cb4453bebb235130e2c287633ecb1de6c2b0aa","merge":"e6900e2 830674c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #195 from kellyjonbrazil/dev"},{"commit":"830674cc6f19e107347a743baff7bbaab7f80b75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["CHANGELOG","jc/__init__.py","man/jc.1","setup.py"]},"message":"version bump"},{"commit":"fb406b58a12fdfe81bcff76671661af77e7f2fe5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["docs/parsers/stat_s.md","jc/parsers/stat_s.py","man/jc.1"]},"message":"formatting"},{"commit":"55b272e41259ddc835cf4eb513fb67e7b2cf1573","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat_s.py"]},"message":"tighten stat data detection"},{"commit":"94f62a9bf36242310790a0f37c66b2e6c6fdc078","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/stat_s.md","jc/parsers/stat_s.py"]},"message":"formatting"},{"commit":"8d19e4cb7b45e3b6cb8c404c959949b7593c9386","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":115,"deletions":1,"files":["CHANGELOG","README.md","docs/parsers/stat_s.md","man/jc.1"]},"message":"doc update"},{"commit":"7e510d48e0f8426a67cf8d70d06d0331c274d358","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":106,"deletions":2,"files":["jc/parsers/stat_s.py","tests/fixtures/centos-7.7/stat-streaming.json","tests/fixtures/freebsd12/stat-streaming.json",".../stat-filename-with-spaces-streaming.json","tests/fixtures/osx-10.14.6/stat-streaming.json","tests/fixtures/ubuntu-18.04/stat-streaming.json","tests/test_stat_s.py"]},"message":"simplify non-stat parse error logic"},{"commit":"7b20cffb143447f4497bc4e895eac2426e8a519f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/stat_s.py"]},"message":"simplify last item logic"},{"commit":"5c934c43c13b69183561da8a77280feb3363e950","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/stat_s.py"]},"message":"add continue to simplify logic"},{"commit":"8609298449e997ba4804d818f4fc23cb393ded7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/parsers/stat_s.py"]},"message":"update docstring"},{"commit":"72cb0dc10b2dac486d3e2a52cf44baf0d7496034","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":10,"files":["jc/parsers/stat_s.py"]},"message":"fixup for first and last items"},{"commit":"7b22fa81ded0f6f59e250ffea63c5d2a0f928b25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/parsers/stat_s.py"]},"message":"raise for non-stat data"},{"commit":"0b6a1307790e0793917bc2781e4873aa9dd67225","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/stat_s.py"]},"message":"ignore blank lines"},{"commit":"fdcf4338e0f099699f8d48df6382be1cc97dba84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["jc/parsers/stat_s.py"]},"message":"add examples to docstring"},{"commit":"ee43037f481286a34a766390568965fdd53af132","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/stat_s.py"]},"message":"remove unused continue lines"},{"commit":"26e365563c314e694915c7a3feae490ea99a112c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":50,"deletions":11,"files":["jc/parsers/stat_s.py"]},"message":"add schema and _process logic"},{"commit":"1b39586bb1b62aee8ae709512c2e3f79cefdb3d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":227,"deletions":0,"files":["jc/cli.py","jc/parsers/stat_s.py"]},"message":"add stat streaming parser"},{"commit":"8bb3a6bea34d60d49039f1ed72fd7e413edc05da","merge":"78672bd e6900e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #194 from kellyjonbrazil/master"},{"commit":"e6900e2000bf265dfcfc09ffbfda39e9238661af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["EXAMPLES.md"]},"message":"add jar-manifest"},{"commit":"0ee244756bf39123e4873eb231156edbe7f0e0ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/jar_manifest.md","jc/parsers/jar_manifest.py"]},"message":"spelling"},{"commit":"6d5ac9abe6712e01887ce0d96c278a568319f405","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["docs/parsers/csv.md","docs/parsers/csv_s.md","man/jc.1"]},"message":"update docs"},{"commit":"44f6d9e1321459be8196aeebf6db088cc5120e61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"changelog update"},{"commit":"360154559c5dee6affa55bbdd5d2f473248b9168","merge":"241d53a 78672bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #193 from kellyjonbrazil/dev"},{"commit":"78672bd7ad66c418e0ecf31add73f887b0946d29","merge":"bc7973a 65d96e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #190 from shaikustin/csv-doubleqouted"},{"commit":"65d96e26b59e231c77c1dbba1dc91708c33de30c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":13,"deletions":0,"files":["tests/fixtures/generic/csv-doubleqouted-streaming.json","tests/test_csv_s.py"]},"message":"add streaming tests"},{"commit":"241d53af9a5c9bba70e28835e22c52c0060269ba","merge":"f733100 bc7973a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #192 from kellyjonbrazil/dev"},{"commit":"5563829df2849a899df2e9211d6c92bddc695f9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/csv_s.py"]},"message":"make dialect sniff behavior match non-streaming parser"},{"commit":"3a4a27e1f94ee07352c7616c57ec655c1aea04f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/csv.py"]},"message":"version bump"},{"commit":"9c887a36a804d817c3f669a55b9b1566d09d645d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/csv_s.py"]},"message":"update csv_s parser with csv changes"},{"commit":"bc7973af36e13006230b5faa9e201e300d468912","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","jc/cli.py","man/jc.1"]},"message":"update copyright"},{"commit":"32972d8fdbdc71923978fd5c2a87fd6cfa4b7f8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":122,"deletions":9,"files":["CHANGELOG","README.md","docs/parsers/jar_manifest.md","jc/__init__.py","jc/parsers/jar_manifest.py","man/jc.1","setup.py"]},"message":"doc update"},{"commit":"b128d9109cbdb1176f2473d450023bb0be02531b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":46,"deletions":0,"files":["tests/test_jar_manifest.py"]},"message":"add MANIFEST.MF tests"},{"commit":"929d7273a422c2bd5b83e5e19d32630f1a027f75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/jar_manifest.py"]},"message":"doc updates"},{"commit":"2a40f842743a8745d651b4b6cae645045e6c6aab","author":"shaik","author_email":"shai.kustin@torq.io","stats":{"files_changed":4,"insertions":22,"deletions":1,"files":["jc/parsers/csv.py","tests/fixtures/generic/csv-doubleqouted.csv","tests/fixtures/generic/csv-doubleqouted.json","tests/test_csv.py"]},"message":"fix doubleqoute in csv"},{"commit":"9ff6fa818f0857321e4b3b089d288997f2ae27af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add jar-manifest"},{"commit":"dac73a4bfe24e36474fdf6ff60c23e784ca409bd","merge":"d789554 f733100","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #189 from kellyjonbrazil/master"},{"commit":"d7895547f74744e82317eabe4c870115701872be","merge":"f8e09ae b7d439c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #188 from listuser/new_branch"},{"commit":"b7d439cb870e443e4f4e4a2137ab170835e77eff","author":"listuser","author_email":null,"stats":{"files_changed":3,"insertions":2220,"deletions":9,"files":["jc/parsers/{jar-manifest.py => jar_manifest.py}","tests/fixtures/rhel-8/MANIFEST.MF.MULTI.json","tests/fixtures/rhel-8/MANIFEST.MF.MULTI.out"]},"message":"Renamed jar-manifest.py to jar_manifest.py, added multi manifest outputs to tests..."},{"commit":"7cc903a5f5ca368be97babadc72689375567a901","author":"listuser","author_email":null,"stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/jar-manifest.py"]},"message":"Removed inflating from examples in jar-manifest.py"},{"commit":"c495a8291bd3e1fd070ee2e018b9b550f9c86314","author":"listuser","author_email":null,"stats":{"files_changed":1,"insertions":1,"deletions":292,"files":["tests/fixtures/rhel-8/MANIFEST.MF.json"]},"message":"Updated test output in MANIFEST.MF.json"},{"commit":"5e1d7d777c627fb17feda6e51d9640bbd0f03302","author":"listuser","author_email":null,"stats":{"files_changed":8,"insertions":304,"deletions":2544,"files":["jc/parsers/{metamf.py => jar-manifest.py}","tests/fixtures/rhel-8/MANIFEST.MF.json",".../rhel-8/{MANIFEST.MF => MANIFEST.MF.out}",".../rhel-8/cmds_used_to_generate_test_data.txt",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out"]},"message":"Renamed metamf.py to jar-manifest.py, plus other changes"},{"commit":"7edad3f676fe5560017ca9cb05ede6f46787e78f","author":"listuser","author_email":null,"stats":{"files_changed":8,"insertions":3042,"deletions":0,"files":["jc/parsers/metamf.py","tests/fixtures/rhel-8/MANIFEST.MF","tests/fixtures/rhel-8/MANIFEST.MF.json",".../rhel-8/cmds_used_to_generate_test_data.txt",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out"]},"message":"Create key value pairs from a MANIFEST.MF file, to include key multiline value pairs."},{"commit":"f7331001d4ab976e311458a16b6e5337da2e3aab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"]},"message":"use github releases instead of packaging site"},{"commit":"f8e09ae2ffe185d21305d566fad20f510df9890f","merge":"2e4f5a5 433c7cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #187 from kellyjonbrazil/master"},{"commit":"433c7cc0f05e321ffe024845a908f3e856d4cd2b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/zipinfo.md","jc/parsers/zipinfo.py"]},"message":"formatting"},{"commit":"d753e71a7452310d45fa605a2e4c70320ed60dbb","merge":"3ac8d03 2e4f5a5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #186 from kellyjonbrazil/dev"},{"commit":"2e4f5a508b6c90f9e03dcbcf64efc0e2fc446666","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":6,"deletions":3,"files":["CHANGELOG","jc/__init__.py","man/jc.1","setup.py"]},"message":"version bump"},{"commit":"88b960eff6cb3739d0d243c8d8b3e8ad5b8eb97c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":144,"deletions":1,"files":["EXAMPLES.md","README.md","docs/parsers/zipinfo.md","man/jc.1"]},"message":"doc update"},{"commit":"88c77bd89e2c2a5f023e6638816c9153b6276d35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":47,"deletions":0,"files":["tests/fixtures/osx-10.14.6/zipinfo-multi.json","tests/test_zipinfo.py"]},"message":"add zipinfo tests"},{"commit":"51a7a4251fff518d8da78ffa41e7ba2e2cb47f12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":0,"files":["tests/fixtures/osx-10.14.6/zipinfo-multi.out"]},"message":"add multi-archive test output"},{"commit":"51d2f316f388d962c26aeb4f42affebec339e5a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":97,"deletions":72,"files":["jc/parsers/zipinfo.py"]},"message":"add multi-archive support"},{"commit":"ff78a46c4854339a097992701351ef471aff1671","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"add zipinfo parser"},{"commit":"ed4a9dc1d470f64bcc9de35b2d98568ffd50257d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":23,"files":["jc/parsers/zipinfo.py"]},"message":"formatting"},{"commit":"63182dba26040974cb8cada6f5910bb29b1fa3ed","merge":"b450697 9c1eaa9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #185 from listuser/new_branch"},{"commit":"9c1eaa938934269fe4179da798acf5f119cde0cf","author":"Matt J","author_email":"none","stats":{"files_changed":2,"insertions":68,"deletions":61,"files":["jc/parsers/zipinfo.py","tests/fixtures/rhel-8/zipinfo.json"]},"message":"revised zipinfo.py nested version"},{"commit":"bc520fcbcdfad6a53e51944391fd24512bed8128","author":"Matt J","author_email":"none","stats":{"files_changed":2,"insertions":63,"deletions":53,"files":["jc/parsers/zipinfo.py","tests/fixtures/rhel-8/zipinfo.json"]},"message":"added zipinfo.py nested version"},{"commit":"46faac1a12a5b39d6a25427f6e8fdcca1204dbcd","author":"Matt J","author_email":"none","stats":{"files_changed":2,"insertions":1222,"deletions":0,"files":["tests/fixtures/rhel-8/zipinfo.json","tests/fixtures/rhel-8/zipinfo.out"]},"message":"add test data zipinfo.json and zipinfo.out"},{"commit":"3c424c0cb3cff462a963183585b57bea004e974f","author":"Matt J","author_email":"none","stats":{"files_changed":1,"insertions":165,"deletions":0,"files":["jc/parsers/zipinfo.py"]},"message":"initial commit zipinfo.py to new_branch"},{"commit":"3ac8d0362b4fb9999fc55a60a9cb20ac80d114f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"use quotes around python versions"},{"commit":"d88b998e6c7826a9ecae18663328e2d2915030fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"]},"message":"formatting"},{"commit":"a9ed55c00652a563391a7930c7a4649967131ae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":11,"deletions":11,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]},"message":"fix spelling"},{"commit":"ea614341232e5272ee0c7fd46ba0f313033c761f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":16,"deletions":8,"files":["docs/parsers/crontab.md","docs/parsers/crontab_u.md","jc/parsers/crontab.py","jc/parsers/crontab_u.py"]},"message":"fix schema docs"},{"commit":"a73d0d26cbe2860b8374661068e09e0717a3bab2","merge":"a7de911 b450697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #184 from kellyjonbrazil/dev"},{"commit":"b4506976e3c865397bc657183d49c484d8bcfd7a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["man/jc.1","templates/manpage_template"]},"message":"formatting"},{"commit":"34cb75a09697a06c3878f2f9a84eb3bd2a90ae62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/__init__.py","setup.py"]},"message":"version bump"},{"commit":"34df643f60712ae25645cb7cddff80e43c12262b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":18,"deletions":0,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"add disable colors section"},{"commit":"ac7c13fcc013d386f34db51d634298fa3e97eccd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":11,"deletions":1,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"add -C option to docs"},{"commit":"4fdb34c7d5fcaa65e2ccab814c3acf2f0f70c442","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"add no-color.org"},{"commit":"7ac468e35aac1a63c4e22f33aead74a6e41a22a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update"},{"commit":"df190aa299f1669d1fe09380026ae086839abc02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":15,"deletions":7,"files":["jc/cli.py"]},"message":"add -C option to force color even with pipes"},{"commit":"9621475e86fe20fcdc2902b6ce7860a833ae2ca0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update"},{"commit":"82e0160de820ad2ed6143f58458711d600b929a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"refactor NO_COLOR test"},{"commit":"d03fb8b626a97e81006d0b108c8f400fe4e2ce3b","merge":"b300dfb 7933dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"b300dfb3d75fe76e2ddbb087ff742dd0b5e6155b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"Add support for NO_COLOR env variable"},{"commit":"a7de9111d97e687cafbc0709ec3ff7453d658a80","merge":"21e69a7 7933dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #183 from kellyjonbrazil/dev"},{"commit":"7933dfdbe7bf400833d6f6b771362dfc518b9a8d","merge":"f7cb5f7 21e69a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'master' into dev"},{"commit":"f7cb5f7d01ac01538bee4da816408072b585768e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"update date"},{"commit":"a26a298f1a3c141171e7d7ce459a27a297cec031","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":148,"deletions":1,"files":["README.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","man/jc.1"]},"message":"doc update"},{"commit":"dbd134d0dac2fc152183480958fd9e65919ac98d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/iostat_s.py"]},"message":"add examples to docs"},{"commit":"11aa01b0d9d6913059f98f9bd7591d7cad9037cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":15,"insertions":15,"deletions":1,"files":["jc/parsers/iostat_s.py","tests/fixtures/centos-7.7/iostat-1-streaming.json","tests/fixtures/centos-7.7/iostat-m-streaming.json","tests/fixtures/centos-7.7/iostat-mx-streaming.json","tests/fixtures/centos-7.7/iostat-streaming.json","tests/fixtures/centos-7.7/iostat-x-streaming.json","tests/fixtures/ubuntu-18.04/iostat-1-streaming.json","tests/fixtures/ubuntu-18.04/iostat-m-streaming.json","tests/fixtures/ubuntu-18.04/iostat-mx-streaming.json","tests/fixtures/ubuntu-18.04/iostat-streaming.json","tests/fixtures/ubuntu-18.04/iostat-x-streaming.json","tests/fixtures/ubuntu-20.10/iostat-m-streaming.json","tests/fixtures/ubuntu-20.10/iostat-mx-streaming.json","tests/fixtures/ubuntu-20.10/iostat-streaming.json","tests/fixtures/ubuntu-20.10/iostat-x-streaming.json"]},"message":"iostat-s tests"},{"commit":"6f18e5344356684e845ec63158c570d82156254f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":203,"deletions":0,"files":["tests/test_iostat_s.py"]},"message":"fix for null lines"},{"commit":"7b467c466568ad4e7986d4d7cf3ec606681b6d46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":137,"deletions":0,"files":["tests/fixtures/ubuntu-20.10/iostat-m.json","tests/fixtures/ubuntu-20.10/iostat-m.out","tests/fixtures/ubuntu-20.10/iostat-mx.json","tests/fixtures/ubuntu-20.10/iostat-mx.out","tests/fixtures/ubuntu-20.10/iostat-x.json","tests/fixtures/ubuntu-20.10/iostat-x.out","tests/fixtures/ubuntu-20.10/iostat.json","tests/fixtures/ubuntu-20.10/iostat.out","tests/test_iostat.py"]},"message":"add ubuntu 20.10 tests"},{"commit":"537b8f263087894c02b5b7c121765cf96182a370","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"]},"message":"add more int conversions"},{"commit":"4d823575e791999e200dedd491511c4fde64fc2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"]},"message":"add more float fields"},{"commit":"541aa1d09f20ff6979eabaa66790decb3895f18d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":68,"deletions":8,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"]},"message":"Add new field float conversions for iostat v11"},{"commit":"8f02021014b7b19acf1a8bbd777161aa82c65d66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/iostat_s.py"]},"message":"formatting"},{"commit":"158a15157c7e5dde95dc21766d0696bd82486688","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update"},{"commit":"2752e0d66a9ba0b57ac86913fd302ada23c280c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":166,"deletions":0,"files":["jc/cli.py","jc/parsers/iostat_s.py"]},"message":"add iostat streaming parser"},{"commit":"6c11e912afe3c4d16da9199b5c2fc10461928ac3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"update changelog"},{"commit":"43d34461e27e3e4ac5f985786831c170b348c7c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":83,"insertions":279,"deletions":81,"files":["README.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/utils.md","man/jc.1"]},"message":"update docs"},{"commit":"4dfdc9b0f65d8c950ed74545d0cc3f95c8abec6c","merge":"e2311cb 6665ffa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"e2311cbb03f407414df953c8d1c07d0cf1a549ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":400,"deletions":0,"files":["tests/fixtures/centos-7.7/iostat-1.json","tests/fixtures/centos-7.7/iostat-1.out","tests/fixtures/centos-7.7/iostat-m.json","tests/fixtures/centos-7.7/iostat-m.out","tests/fixtures/centos-7.7/iostat-mx.json","tests/fixtures/centos-7.7/iostat-mx.out","tests/fixtures/centos-7.7/iostat-x.json","tests/fixtures/centos-7.7/iostat-x.out","tests/fixtures/centos-7.7/iostat.json","tests/fixtures/centos-7.7/iostat.out","tests/fixtures/ubuntu-18.04/iostat-1.json","tests/fixtures/ubuntu-18.04/iostat-1.out","tests/fixtures/ubuntu-18.04/iostat-m.json","tests/fixtures/ubuntu-18.04/iostat-m.out","tests/fixtures/ubuntu-18.04/iostat-mx.json","tests/fixtures/ubuntu-18.04/iostat-mx.out","tests/fixtures/ubuntu-18.04/iostat-x.json","tests/fixtures/ubuntu-18.04/iostat-x.out","tests/fixtures/ubuntu-18.04/iostat.json","tests/fixtures/ubuntu-18.04/iostat.out","tests/test_iostat.py"]},"message":"add iostat tests"},{"commit":"bf15575e90985cfec5c57dd11dfa2b86d53a41be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":7,"files":["jc/parsers/iostat.py"]},"message":"fixes for ubunut"},{"commit":"406336c7185b539b5e00532b58146d5b1b73f259","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":44,"deletions":0,"files":["EXAMPLES.md"]},"message":"add iostat example"},{"commit":"6665ffaeb8107e9db3b917db0663beaf44024533","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"remove python 3.6 from tests"},{"commit":"dcf552ca0c69aa5f0309a83dc33dee7c5ed81292","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":138,"deletions":47,"files":["jc/parsers/iostat.py"]},"message":"add _process and cleanup"},{"commit":"7a6ebf3c9555dd82df7dc0b71981cdd32ce0061d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":171,"deletions":0,"files":["jc/cli.py","jc/parsers/iostat.py"]},"message":"add iostat parser"},{"commit":"d2dc4a983c86c538e13e568b908072de4ca0daaf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"]},"message":"changelog update"},{"commit":"1168259bc23862f671326d41f5282a3575205214","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"]},"message":"add doc strings"},{"commit":"e8e4b46021557fbf5776c32dff46de022817fb6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":14,"deletions":19,"files":["jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]},"message":"use jc.utils type checks"},{"commit":"12d2de22821fd8f57f4d412e62f53db3d89d5e30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":77,"insertions":181,"deletions":165,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/utils.py"]},"message":"use jc.utils.input_type_check() and simplify compatibility check"},{"commit":"0e2fe401e1c49a9f947d7d17b72cfc4e90787f47","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]},"message":"version bump"},{"commit":"14247adb0ae007924ca551a706eb0cfdbae97a41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["jc/parsers/csv_s.py","tests/test_csv_s.py"]},"message":"add input type checks"},{"commit":"3a9f0934c41c85ea7fa87165b9559f08814645cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":3,"files":["jc/parsers/ls_s.py","tests/test_ls_s.py"]},"message":"add input type checks"},{"commit":"caf0a5c8713bf0d72951a2c6fd5a2c62c9eb59d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":4,"files":["jc/parsers/vmstat_s.py","tests/test_vmstat_s.py"]},"message":"add input type checking"},{"commit":"cfb58b1cf3e3028f8e03fdd93f0165cf8d230e1e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/parsers/foo_s.py"]},"message":"add input type checks"},{"commit":"975cf195cc02774f50460ca479d9ebb7b73c7870","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping_s.py"]},"message":"formatting"},{"commit":"8a46a259a36efc55bb0b2141acb9dd5ae52b7725","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["jc/parsers/ping_s.py","tests/test_ping_s.py"]},"message":"add input type checks"},{"commit":"e395142e599aa78b4a7ec80dcc3f8ccf279f97b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"]},"message":"version bump"},{"commit":"caaeaf0d67cf44f8d2651cc53a7528d3ef0c74d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":76,"insertions":227,"deletions":227,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"add 'str' type check on input"},{"commit":"21e69a7cbf62240238f6fb78e874dda6ce2e922a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"]},"message":"ignore _config.yml"},{"commit":"603964935b58e02cf0614cf67ffacc6d94755e05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CHANGELOG"]},"message":"remove trailing whitespace"},{"commit":"47eb83ae55b9892716fff712bd2be21b6191b552","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"]},"message":"add .vscode"},{"commit":"fc0ce6c95923ab124961e695a26c0b68dd0f359f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"add streaming parser to custom parsers info"},{"commit":"077a29fb4eedcfccb026498c5c3a64b7b7601363","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":2,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"]},"message":"add _jc_meta field info"},{"commit":"8568d0d328706a7a5b1476452e078d8cbe7b7391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":3,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py","man/jc.1"]},"message":"fix csv_s documentation"},{"commit":"597d39c28ea0c0fe3b072413e9d91ab5e27b62bd","merge":"b59e38c eb888dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #180 from kellyjonbrazil/dev"},{"commit":"eb888dcbbcf83c9197bd59aab72f65ea6eb622ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["jc/__init__.py","man/jc.1","setup.py"]},"message":"version bump"},{"commit":"d1b9ac0841b15ee15690c4066453a322618320ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/df.md","docs/parsers/netstat.md","docs/parsers/ping.md","man/jc.1"]},"message":"doc update"},{"commit":"89a6d9c5c39b74f1b040f410659bfd7ae1a902d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/df.py"]},"message":"add key-check to restore previous behavior even with non-df data"},{"commit":"85d983761637129cb85abfb0bbdde7c507061cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add df info"},{"commit":"cd7731484d826d84d835ecd460d746e78cadc5fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":62,"deletions":2,"files":["jc/parsers/df.py","tests/fixtures/generic/df-long-filesystem.json","tests/fixtures/generic/df-long-filesystem.out","tests/test_df.py"]},"message":"fix for cases where the Filesystem data overflows the column length (happens on older versions of df)"},{"commit":"086da16b1743c16a5ccdd102f889fb31f99e3caa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"version bump"},{"commit":"20830528f04a5ecbe78420d8008249b089667767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":28,"deletions":0,"files":["CHANGELOG","tests/fixtures/generic/netstat-old.json","tests/fixtures/generic/netstat-old.out","tests/test_netstat.py"]},"message":"add test for older netstat version fix"},{"commit":"83371edd8fe3d23dfa92fc707604086522c85ab9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat_linux.py"]},"message":"add space before inode to compensate for removed dash"},{"commit":"364a81decc16742e3caa070d90b1d605d96fe2c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ping.py"]},"message":"version bump"},{"commit":"ef09592ad3e5c9a77c1bdebe8f876fc4dde54834","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["CHANGELOG"]},"message":"update for 1.17.2"},{"commit":"4a86e109ccb254d5195b782f84f3967c96ef726c","merge":"5ba22da 7fa5391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #179 from shaikustin/ping-alpine-linux"},{"commit":"7fa5391b6613e62689c624041e03f9750c9c7972","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_ping.py"]},"message":"change alpine ping6 to ping"},{"commit":"9b53ba5714819ff760f2d4546f5d2ee4d521c080","author":"shaik","author_email":"shai.kustin@torq.io","stats":{"files_changed":6,"insertions":45,"deletions":1,"files":["jc/parsers/ping.py",".../fixtures/alpine-linux-3.13/ping-hostname.json","tests/fixtures/alpine-linux-3.13/ping-hostname.out","tests/fixtures/alpine-linux-3.13/ping-ip.json","tests/fixtures/alpine-linux-3.13/ping-ip.out","tests/test_ping.py"]},"message":"support alpine linux ping"},{"commit":"b59e38cfd2c8a7f5868e05d5562557b1c27e5e56","merge":"30cff5f 5ba22da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #176 from kellyjonbrazil/dev"},{"commit":"5ba22dae597b9d154ca0a82f71cfbd8d8a6325db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"]},"message":"add JSON lines info"},{"commit":"4232e523acc523e510b4881d2a57a95b88ec8c8b","merge":"bee80b3 30cff5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'master' into dev"},{"commit":"bee80b35d2b8c15e6233f2798e9c02a11e9e1e9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["CHANGELOG","docs/parsers/csv_s.md","man/jc.1"]},"message":"update for version bump"},{"commit":"c32395f6950d6294770ee93e8bf4d79c7d275ac3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_utils.py"]},"message":"linting"},{"commit":"735c5e1078cc27b5cba03b8ebbae15aeca6b8fbd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["tests/test_csv_s.py"]},"message":"update comments for ParseError test: https://bugs.python.org/issue45617"},{"commit":"d09c94b292ca3beec92a00f8a51b7259dd30a1e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add python 3.10 testing info"},{"commit":"4d04866f48f72b9ea0d213dc1533729d3b68a503","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/csv_s.py"]},"message":"add python bug https://bugs.python.org/issue45617 info"},{"commit":"a2d90f4dfcdc2cb00c6c0fa957493c95a21e256b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_csv_s.py"]},"message":"force test"},{"commit":"93a5002c8b530bd6f5f81e5d8595cde1f836ae41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"fix 3.10.0 version number"},{"commit":"23bf5227a4c39ea017e55fc21150331e1af6fdb7","merge":"77c96fa 3f5a1f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"77c96fa2a96148221bde7d2274e0dfb5386a166f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["tests/test_csv_s.py"]},"message":"try tests on python 3.10"},{"commit":"3f5a1f015e9c0807e227b9f7300592e25502e014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"add python 3.10"},{"commit":"b280c4fc18e60a85ab212b09aa5bf3a05a0eceff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":11,"deletions":19,"files":[".../fixtures/generic/csv-insurance-streaming.json","tests/test_csv_s.py"]},"message":"add ParseError test to streaming csv parser"},{"commit":"3ab9b43a2eebf535be98c94810ac474bf32ec515","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/csv_s.py"]},"message":"raise ParseError on newline bug"},{"commit":"46f568414a5c8d2f135486e86d0ada48cfcefeb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":96,"deletions":89,"files":["tests/test_ls_s.py","tests/test_ping_s.py","tests/test_vmstat_s.py"]},"message":"change streaming parser test names"},{"commit":"cba2fd299fff09a551b780e064a6e22bdf7e539a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":75,"deletions":61,"files":[".../generic/csv-10k-sales-records-streaming.json","tests/fixtures/generic/csv-deniro-streaming.json","tests/fixtures/generic/csv-example-streaming.json","tests/fixtures/generic/csv-flyrna-streaming.json","tests/fixtures/generic/csv-flyrna2-streaming.json",".../fixtures/generic/csv-homes-pipe-streaming.json","tests/fixtures/generic/csv-homes-streaming.json",".../fixtures/generic/csv-insurance-streaming.json","tests/test_csv_s.py"]},"message":"add tests"},{"commit":"1e6e44f656f1bbb277eb38fb485f7b48e3b9e40b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/csv_s.py"]},"message":"fix for piping data with non-platform newlines (e.g. windows csv files on unix)"},{"commit":"acac0399946d9781193e9350dd7109f1dd3999fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":149,"deletions":0,"files":["tests/fixtures/generic/csv-biostats-streaming.json","tests/fixtures/generic/csv-cities-streaming.json","tests/test_csv_s.py"]},"message":"working tests"},{"commit":"50a3b340164b3139f04f67a2bee16e5343c8a2da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":8,"files":["jc/parsers/csv_s.py"]},"message":"optimizations and use iter() so we can exhaust data coming from list objects"},{"commit":"b45396070cf28fa36ecb44acd7be3e3bb81a712d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_vmstat_s.py"]},"message":"update comment"},{"commit":"218b9aec8ac397e26e6cd4ff407f3d10ef88ea9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":87,"deletions":48,"files":["README.md","docs/parsers/csv_s.md","jc/parsers/csv_s.py","man/jc.1"]},"message":"doc update for streaming CSV parser"},{"commit":"2b887debc647bd533040e392465967d12869cb02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":10172,"deletions":1,"files":["CHANGELOG","jc/cli.py","jc/parsers/csv_s.py","tests/fixtures/generic/csv-10k-sales-records.csv"]},"message":"add csv streaming parser"},{"commit":"0313e3f8ca0e22e1575192d765d5afedf48e94df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":6,"files":["jc/parsers/lsusb.py"]},"message":"linting"},{"commit":"1669e6e20c3af3d28968558b76d0901a56775ac0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":28,"files":["jc/parsers/lsusb.py"]},"message":"linting"},{"commit":"ef6de75dda90c7221d53e0e0a942f0cac2247354","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["tests/test_utils.py"]},"message":"add vmstat timestamp tests to utils"},{"commit":"a6bcec425a3f44ba3c7cd06b5ebaf522b66df109","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"]},"message":"comment update"},{"commit":"596ad9a64d002ced212b08512126e52707fe73d2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"]},"message":"update comment"},{"commit":"7a91c93319f75c37ba6bf268d8270947f0bf8b22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":122,"deletions":0,"files":["EXAMPLES.md"]},"message":"add lsusb"},{"commit":"b5f7b35f89197879a9f13bd8fa5d2a0c77cc059a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"]},"message":"comment update"},{"commit":"2f47fb7f14c4ff0e1c835897d94ee81d14590aba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["tests/test_uname.py"]},"message":"fix ParseError tests"},{"commit":"1b214c403657a50689f2a04892ce836dea669a1d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":30,"deletions":0,"files":["jc/parsers/lsusb.py","tests/fixtures/generic/lsusb-t.out","tests/test_lsusb.py"]},"message":"raise ParseError if -t option is detected. add test"},{"commit":"8f94f8acc6bb53bbb19ba150551c7df2183a8863","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":384,"deletions":3,"files":["README.md","docs/parsers/file.md","docs/parsers/lsusb.md","docs/parsers/uname.md","man/jc.1","tests/fixtures/centos-7.7/lsusb-v-single.json","tests/fixtures/centos-7.7/lsusb-v.json","tests/fixtures/centos-7.7/lsusb.json","tests/fixtures/generic/lsusb-test-attributes.json","tests/fixtures/generic/lsusb-test-attributes2.json","tests/test_lsusb.py"]},"message":"add tests and update docs"},{"commit":"3a2a69cfa55e2f40d7536d923170a5cfc986998e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/parsers/lsusb.py"]},"message":"formatting"},{"commit":"f599c659881248b79c6dbc86d85a61311c9d3434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":464,"deletions":0,"files":["tests/fixtures/generic/lsusb-test-attributes.out","tests/fixtures/generic/lsusb-test-attributes2.out"]},"message":"add stress test examples"},{"commit":"ad12849fd9fc2177afb30740acc63cf284dc394b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":138,"deletions":26,"files":["jc/parsers/lsusb.py"]},"message":"update docs example and"},{"commit":"f36b3789e8df6673207d6c2d3d0796acfdfe011d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsusb.py"]},"message":"formatting"},{"commit":"6d18c0ba61cd188dbff736f1be47b7362c841687","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":47,"deletions":47,"files":["jc/parsers/lsusb.py"]},"message":"change variable name last_attribute and last_attr to last_item"},{"commit":"17097abec9567a58b5a5f7bbed11ecfd69cbd28c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":6,"files":["jc/parsers/lsusb.py"]},"message":"formatting"},{"commit":"b7ddd3b285f205211394edc70b611171cf72a4c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":22,"deletions":22,"files":["jc/parsers/lsusb.py"]},"message":"change variable names"},{"commit":"75b23f62c9d7b33907af92964d1a6234332fbc78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":35,"deletions":7,"files":["jc/parsers/lsusb.py"]},"message":"working configuration_descriptor and device_descriptor attributes"},{"commit":"f88967b2a59d79e053554d1e141f71e9d2d87456","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":126,"deletions":21,"files":["jc/parsers/lsusb.py"]},"message":"add attribute lists up to interface_association"},{"commit":"ba2846664b35b2e94aa905431c55c029b24a64e3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":22,"deletions":2,"files":["jc/parsers/lsusb.py"]},"message":"edpoint_descriptors attributes working"},{"commit":"10dba37ca2624e05eff246ef49df8ebd3f275d86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":28,"deletions":1,"files":["jc/parsers/lsusb.py"]},"message":"hub_descriptor attributes working"},{"commit":"0e6f938514965503f1d86d56c047f9f8fc03ac65","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":36,"deletions":45,"files":["jc/parsers/lsusb.py"]},"message":"working hub_port_status section"},{"commit":"159d87c1126f4d79d5e34837bc2c353a5445803b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":18,"deletions":7,"files":["jc/parsers/uname.py","tests/fixtures/centos-7.7/uname.out","tests/test_uname.py"]},"message":"add length guard and test for uname with no -a on linux"},{"commit":"9e7b1621cf232e9859bdf018737e536820f380a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":18,"files":["jc/parsers/lsusb.py"]},"message":"device_status working"},{"commit":"2057817ef8fec85b2a978b682e7fe8bc16def828","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":89,"deletions":0,"files":["tests/fixtures/debian10/uname-a.json","tests/fixtures/debian10/uname-a.out","tests/fixtures/freebsd12/uname-a.json","tests/fixtures/freebsd12/uname-a.out","tests/fixtures/freebsd12/uname-a2.json","tests/fixtures/freebsd12/uname-a2.out","tests/fixtures/generic/uname-a-different-proc.json","tests/fixtures/generic/uname-a-different-proc.out","tests/fixtures/generic/uname-a.json","tests/fixtures/generic/uname-a.out","tests/test_uname.py"]},"message":"add uname tests"},{"commit":"a1eabad2d37bb0d0e9407edf7305e223eba67da2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/uname.py"]},"message":"add comments"},{"commit":"92bf2b1ca2a172d3977d6e3c36b5ca1a8c2bab63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":20,"files":["CHANGELOG","jc/parsers/uname.py"]},"message":"simplify fixup logic for uname"},{"commit":"2b2123a4ba9b77d2089d367fe85dcb5d2857a295","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","jc/parsers/uname.py"]},"message":"add FreeBSD support"},{"commit":"908b2f9200ddcce4beb531a3c90908786b6a5b02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"]},"message":"add items"},{"commit":"deff0c7bfdf942b8d7e7bd140219e08bf80a50cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":5,"files":["jc/parsers/uname.py"]},"message":"remove print debug"},{"commit":"7cd01efa64029775042a2c145997ce30ef6b4f6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":25,"deletions":1,"files":["jc/parsers/uname.py"]},"message":"fixup for cases where the 'process' and/or 'machine' fields are blank on linux"},{"commit":"2dbe56456bbea2bdfce7eacbf8b9f10a1b249f55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":49,"deletions":39,"files":["jc/parsers/lsusb.py"]},"message":"add nested_dict. start work on hub_port_status and device_status"},{"commit":"6078a411ef612be8bad012aa404f34ebd74a1fd7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":79,"deletions":4,"files":["jc/parsers/lsusb.py"]},"message":"add initial schema doc"},{"commit":"4a3656562f161a51f5cb6f0e9ccd271859b78d62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["jc/parsers/lsusb.py"]},"message":"del null keys"},{"commit":"ba75989a24839907723ed7c3d7a497473d489a34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/lsusb.py"]},"message":"update comments"},{"commit":"9e9e2c362894f0072ab839565829881d750c8912","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsusb.py"]},"message":"move state instantiation before has_data test"},{"commit":"9a2a8c6b61a46a9bfb5a4492b86774a4a78672ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":52,"files":["jc/parsers/lsusb.py"]},"message":"shorten set_sections"},{"commit":"dae42ef1619441637672d634f9e5d7ab26115f09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":1,"files":["jc/parsers/lsusb.py"]},"message":"add hub_port_status and device_status"},{"commit":"931f2cab78bda180443535c04b532d04c6e88dd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":11,"files":["jc/parsers/lsusb.py"]},"message":"add hub_descriptor"},{"commit":"72b061bed4453686d264ccf8977cba6c2a4794ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":32,"deletions":8,"files":["jc/parsers/lsusb.py"]},"message":"add endpoint_descriptors"},{"commit":"29a7c73990d9620b15a4010d17fc9a9a859f44b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/parsers/lsusb.py"]},"message":"add hid_device_descriptor and report_descriptors"},{"commit":"2d1d68e3007f76d4c34ac07ae822935ab6021e79","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":87,"deletions":88,"files":["jc/parsers/lsusb.py"]},"message":"simplify populate_lists. Add CDC lists"},{"commit":"c5c1e170d1f502de5c76e9e481a23b26ffcaf237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":111,"deletions":76,"files":["jc/parsers/lsusb.py"]},"message":"interface descriptors working"},{"commit":"9c1bb66452838e704ef2277f313bb51a42dc03b9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/lsusb.py"]},"message":"fix remove _state field during schema_populate"},{"commit":"a4f3306bae90fbc807fdd9ff2ce71e25d36a663f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":69,"deletions":28,"files":["jc/parsers/lsusb.py"]},"message":"initial schema build. need to figure out why deleting _state from output_line causes exceptions"},{"commit":"1bc638b6ee7a820406ba4b84d3408f7cd4fe779d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":36,"deletions":32,"files":["jc/parsers/lsusb.py"]},"message":"add bus_list and add all device_list data to the list"},{"commit":"9ad0cd9dae8822235c37159541ce72471eb4263e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":116,"deletions":211,"files":["jc/parsers/lsusb.py"]},"message":"now storing state within the objects to make building the schema (later) easier."},{"commit":"6d4a4691276d8659253b2ac8f8bdbd71a1fece7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":356,"deletions":333,"files":["jc/parsers/lsusb.py"]},"message":"use class for state"},{"commit":"ed6997e3ff2e575a6d4daa7d7a2cbe7dddacdd4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":170,"deletions":34,"files":["jc/parsers/lsusb.py","tests/fixtures/centos-7.7/lsusb-v-single.out"]},"message":"add interface_association section"},{"commit":"eb788fca6e25eea1fa8a43b22360c852ecf5af35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":919,"deletions":0,"files":["jc/cli.py","jc/parsers/lsusb.py","tests/fixtures/centos-7.7/lsusb-v.out","tests/fixtures/centos-7.7/lsusb.out"]},"message":"somewhat working lsusb parser. needs a lot more TLC"},{"commit":"9186f5f37739012b8c04c776310a20ef55b1469f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":99,"deletions":4,"files":["CHANGELOG","jc/__init__.py","jc/parsers/file.py","setup.py","tests/fixtures/osx-10.14.6/file3.json","tests/fixtures/osx-10.14.6/file3.out","tests/test_file.py"]},"message":"fix file parser for gzip cases (has ': ' in the description, which is the delimiter)"},{"commit":"30cff5f28140a5b20a617c8145c13e43b7b6685b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":17,"deletions":3,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","man/jc.1"]},"message":"add note that the streaming parser outputs JSON Lines"},{"commit":"b724e0969a0d6b22bed0c77eb8d629381179ea3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"]},"message":"-qq instead of -q"},{"commit":"a62c49e8715873b068a96da5021ea24a783acd6b","merge":"77dcbc5 9b160f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #172 from kellyjonbrazil/master"},{"commit":"9b160f6279bbbf0c15413c98922eef137ba2f3f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]},"message":"link update"},{"commit":"338a4e2612f70bb3e2af31f61a7db75f647293fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]},"message":"formatting"},{"commit":"0140688750be61dd752059ee66734ab1c7a8f30e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":8,"deletions":4,"files":["README.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","templates/readme_template"]},"message":"link updates"},{"commit":"73e5ea98c1ca2b9299085e3832791162eca3b9ff","merge":"528aac7 77dcbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #170 from kellyjonbrazil/dev"},{"commit":"77dcbc544da271edab5de5ad209117e98c846f9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":2,"deletions":3,"files":["CHANGELOG","jc/__init__.py","man/jc.1"]},"message":"final doc update"},{"commit":"c7bcb0947ae32acc9cdba7a6975d2f2557f10a39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"]},"message":"indent subsequent error and warning lines"},{"commit":"5cd3f7f71d38b560a88dd6057e9c7a94991a3d71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/foo_s.py"]},"message":"Add example to raise ParseError if there is no output data to yield"},{"commit":"5044388ab2e8d7d8b427fd51b0ab875611bd127f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":3,"files":["jc/parsers/vmstat_s.py","tests/test_vmstat_s.py"]},"message":"raise if line data is unrecognized"},{"commit":"ee075db59819d80e4dcb60ddbd9cfe2fd529dfe9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":5,"deletions":7,"files":["jc/cli.py","jc/parsers/foo_s.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"]},"message":"linting"},{"commit":"9904e0be61e7c81b907bf3770f111346daeff481","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/utils.md","jc/utils.py"]},"message":"formatting"},{"commit":"31b69b3242eeca2c02f87c31d58193dd3f06fe49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/utils.md","jc/utils.py"]},"message":"formatting"},{"commit":"e6a80fea3228122dd84e17672c835c0460ad1342","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":7,"files":["docs/utils.md","jc/utils.py","man/jc.1"]},"message":"formatting"},{"commit":"d6aec00e038d1ecfe43c13a6909d50630455b372","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":27,"deletions":1,"files":["tests/fixtures/ubuntu-18.04/vmstat-1-long-streaming.json","tests/fixtures/ubuntu-18.04/vmstat-1-long.json","tests/test_vmstat.py","tests/test_vmstat_s.py"]},"message":"add vmstat-1-long tests"},{"commit":"4aa7d81e11ea7fcfbb5c9d74337cde617b1a0d5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":50,"deletions":2,"files":["jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","tests/fixtures/ubuntu-18.04/vmstat-1-long.out"]},"message":"ignore re-printed header rows in output"},{"commit":"48cdabc3b0862d6291e1ec59ab385e0e146c31eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":16,"deletions":0,"files":["docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"]},"message":"document timestamps"},{"commit":"a1791ef5479749692c79bbe98fc7687d70cd6cda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"]},"message":"linting"},{"commit":"7bc87f6c2d4cfcfa656a1c1b8973a4c0414c85d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":8,"deletions":8,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","man/jc.1"]},"message":"change _meta to _jc_meta"},{"commit":"bbed9e274b8252ba0518140fe7fc97029310771f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":154,"deletions":159,"files":["jc/parsers/ping_s.py"]},"message":"linting"},{"commit":"486282b9856f5e56cf43ee1399d8e7cb78353b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/vmstat_s.py"]},"message":"linting"},{"commit":"a4d45b653f794033978940da14910f5d607a8254","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["jc/parsers/foo_s.py","jc/parsers/vmstat.py"]},"message":"linting"},{"commit":"22e151b01c0f97c141d912c9646e46df0320d622","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":56,"deletions":60,"files":["jc/cli.py","jc/utils.py"]},"message":"linting"},{"commit":"7a4ebcd1ecdb4929aae70e44b4f9b6b5ab52b393","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CONTRIBUTING.md"]},"message":"language hints"},{"commit":"651cbfe02fbb354c4caf8e0d022655642e7caed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"add streaming foo parser"},{"commit":"8c3e764516e1c28961b09380b638a57ce98b1261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"add streaming parser to contrib guidelines"},{"commit":"b4e75da7e3f23502723ce8b2a7261b376f296864","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"37223f086cabc8db5962415bd161fed151dafb9d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"a404033735c2c8075a8e08194197eae59db70afd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add error and warning message wrap info"},{"commit":"b7433ed085c0ba22ea0d49330871a651a8d83fb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":80,"deletions":41,"files":["docs/utils.md","jc/cli.py","jc/parsers/file.py","jc/parsers/ls.py","jc/parsers/traceroute.py","jc/utils.py"]},"message":"auto wrap warning and error messages"},{"commit":"224d3d65ada4216e28e142d411b0c2c3358517b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"Add exception class name to error message"},{"commit":"a349fb0bdabaf74503831f22c4efbd02254f809d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":10,"deletions":8,"files":["README.md","docs/utils.md","man/jc.1"]},"message":"change _meta to _jc_meta"},{"commit":"e7ddcfb83fb295034db44ade407476ff3a962cd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":14,"deletions":12,"files":["jc/utils.py","templates/manpage_template","templates/readme_template",".../centos-7.7/ping-ip-O-streaming-ignore-exceptions.json","tests/test_ping_s.py"]},"message":"change _meta to _jc_meta"},{"commit":"abd20dfe3662f65373ac582c70aa740e53b52f68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"formatting"},{"commit":"dc1fd3ef1be41aee349b159059f1febff76f6caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":12,"deletions":12,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"fix -qq docs"},{"commit":"98a7686db46fbd3ed98382867976249f307d0015","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":18,"insertions":160,"deletions":152,"files":["README.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","docs/utils.md","jc/cli.py","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","jc/utils.py","man/jc.1","templates/manpage_template","templates/readme_template","... => ping-ip-O-streaming-ignore-exceptions.json}","tests/test_ls_s.py","tests/test_ping_s.py","tests/test_vmstat_s.py"]},"message":"use -qq to ignore streaming exceptions"},{"commit":"9c6c6c4330fc68115be012de254161f36e3a8328","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"add next() info"},{"commit":"f9be5651daa891e06ad0acd8980ffc0fe51fd29d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":6,"files":["README.md","templates/readme_template"]},"message":"add language hints"},{"commit":"df9835a3e62bb2b3b6ec8b55f06a25a00a799d92","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"92363be2dd633bdd3c2dd07c72ebd281d2cb4565","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"fix streaming python module example"},{"commit":"31b62030156f9c826fe5c7d127e9dd0ace582dd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"18805858d685d456f9a38540bbaedbaa1a411546","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["man/jc.1","templates/manpage_template"]},"message":"formatting"},{"commit":"e676f0e20fb6e96a536c4d182b0d287cdc1ad0f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":36,"deletions":6,"files":["README.md","templates/readme_template"]},"message":"add streaming parser info for python module use"},{"commit":"20652edefaa7705b8ba756bae3944ff362a295a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["CHANGELOG"]},"message":"update changelog"},{"commit":"98c29d07478093e78f53ec633f2dd08cafc3e3ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":120,"deletions":0,"files":["tests/fixtures/centos-7.7/vmstat-a.json","tests/fixtures/centos-7.7/vmstat-at-5-10.json","tests/fixtures/centos-7.7/vmstat-awt.json","tests/fixtures/centos-7.7/vmstat-d.json","tests/fixtures/centos-7.7/vmstat-dt.json","tests/fixtures/centos-7.7/vmstat-w.json","tests/fixtures/centos-7.7/vmstat.json","tests/test_vmstat.py"]},"message":"add vmstat tests"},{"commit":"41a6311f6b3ed2cc94919d042aed51c46cdf3e2f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":132,"deletions":1,"files":["tests/fixtures/centos-7.7/vmstat-a-streaming.json",".../centos-7.7/vmstat-at-5-10-streaming.json",".../fixtures/centos-7.7/vmstat-awt-streaming.json","tests/fixtures/centos-7.7/vmstat-d-streaming.json","tests/fixtures/centos-7.7/vmstat-dt-streaming.json","tests/fixtures/centos-7.7/vmstat-streaming.json","tests/fixtures/centos-7.7/vmstat-w-streaming.json","tests/test_ping_s.py","tests/test_vmstat_s.py"]},"message":"add streaming parser tests"},{"commit":"978760ec57e04e3ec347c8764bfad015b6dddbff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"add exception class name to error string"},{"commit":"d410425537817964ceb7b61e0fdff6c03fdf8766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":136,"deletions":136,"files":["docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"]},"message":"replace single quotes with double quotes in doc"},{"commit":"6b7430329cbe1bfb95b47bcfe031906641c127e1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":269,"deletions":1,"files":["README.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat_s.py","man/jc.1"]},"message":"doc update"},{"commit":"40fe0d4a6081a1233bf5c3eb51a01da1f12bc4dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":141,"deletions":22,"files":["jc/parsers/vmstat_s.py"]},"message":"working parser"},{"commit":"365c5354a0349e470558d15243217a064e73da38","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/vmstat.py"]},"message":"remove debug print statement"},{"commit":"b246a05cbb4c1c564f81b3e72cecb62edbe6ced6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"fix vmstat-s name"},{"commit":"9e5a7a4abb8668d043625951a05eb5733cbbd56f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":37,"deletions":0,"files":["tests/fixtures/centos-7.7/vmstat-a.out","tests/fixtures/centos-7.7/vmstat-at-5-10.out","tests/fixtures/centos-7.7/vmstat-awt.out","tests/fixtures/centos-7.7/vmstat-d.out","tests/fixtures/centos-7.7/vmstat-dt.out","tests/fixtures/centos-7.7/vmstat-w.out","tests/fixtures/centos-7.7/vmstat.out"]},"message":"add vmstat sample output"},{"commit":"f266acbccafc040c375723147b8e5d7fddb1e697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":106,"deletions":14,"files":["jc/parsers/vmstat.py"]},"message":"add processing logic"},{"commit":"4e3b471f1801f1b9006b18cae2a3d816f361262e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/utils.py"]},"message":"add format for vmstat"},{"commit":"5e28736c2e0c951e71e6531e03a9619279d95d3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"]},"message":"add vmstat and vmstat_s"},{"commit":"a91913a3b517ea0dbb25d6e4cc92850eb2fde5ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":106,"deletions":0,"files":["jc/parsers/vmstat_s.py"]},"message":"streaming parser template"},{"commit":"90c64f0ae0d97d025adee40970d89baca79ee4ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":182,"deletions":0,"files":["jc/parsers/vmstat.py"]},"message":"initial working parser"},{"commit":"7cc642ed1a476abda709ac9b79900a1de12e1ef7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/foo_s.py"]},"message":"formatting"},{"commit":"809f64d35a92bb3d7380fa9d78ac1421a10b81fc","merge":"ff0fda4 a6f859a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #169 from kellyjonbrazil/streaming"},{"commit":"a6f859a55edae50fcc185948736218404cfaa929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":18,"insertions":168,"deletions":153,"files":[".../osx-10.14.6/ping-hostname-p-streaming.json",".../osx-10.14.6/ping-hostname-s-streaming.json",".../osx-10.14.6/ping-hostname-streaming.json",".../osx-10.14.6/ping-ip-dup-streaming.json",".../fixtures/osx-10.14.6/ping-ip-p-streaming.json",".../fixtures/osx-10.14.6/ping-ip-s-streaming.json","tests/fixtures/osx-10.14.6/ping-ip-streaming.json",".../osx-10.14.6/ping-ip-unreachable-streaming.json",".../osx-10.14.6/ping6-hostname-p-streaming.json",".../osx-10.14.6/ping6-hostname-s-streaming.json",".../osx-10.14.6/ping6-hostname-streaming.json",".../osx-10.14.6/ping6-ip-dup-streaming.json",".../fixtures/osx-10.14.6/ping6-ip-p-streaming.json",".../fixtures/osx-10.14.6/ping6-ip-s-streaming.json","tests/fixtures/osx-10.14.6/ping6-ip-streaming.json","tests/fixtures/pi/ping-ip-O-D-streaming.json","tests/fixtures/pi/ping-ip-O-streaming.json","tests/test_ping_s.py"]},"message":"add final ping_s tests"},{"commit":"39ef88078f43708e470d3c1b2fd95e76b5cbeb08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/ping_s.py"]},"message":"add destination_ip to error lines"},{"commit":"aeea5e8d2eab2fef3e14637f512aed7b117c4a3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/test_ls_s.py"]},"message":"formatting"},{"commit":"1a0700bff4bdebbd9f1f92f2fc7a56c4d5ed6925","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":31,"insertions":240,"deletions":213,"files":[".../fedora32/ping-hostname-O-D-p-s-streaming.json",".../fedora32/ping-hostname-O-p-streaming.json",".../fedora32/ping-hostname-O-streaming.json","tests/fixtures/fedora32/ping-ip-O-D-streaming.json","tests/fixtures/fedora32/ping-ip-O-streaming.json",".../fedora32/ping6-hostname-O-D-p-s-streaming.json",".../fedora32/ping6-hostname-O-p-streaming.json",".../fedora32/ping6-ip-O-D-p-streaming.json",".../fixtures/fedora32/ping6-ip-O-p-streaming.json",".../freebsd12/ping-hostname-p-streaming.json",".../freebsd12/ping-hostname-s-streaming.json",".../freebsd12/ping-hostname-streaming.json","tests/fixtures/freebsd12/ping-ip-p-streaming.json","tests/fixtures/freebsd12/ping-ip-s-streaming.json","tests/fixtures/freebsd12/ping-ip-streaming.json",".../freebsd12/ping6-hostname-p-streaming.json",".../freebsd12/ping6-hostname-s-streaming.json",".../freebsd12/ping6-hostname-streaming.json","tests/fixtures/freebsd12/ping6-ip-p-streaming.json","tests/fixtures/freebsd12/ping6-ip-s-streaming.json","tests/fixtures/freebsd12/ping6-ip-streaming.json",".../ping-hostname-O-D-p-s-streaming.json",".../ubuntu-18.04/ping-hostname-O-p-streaming.json",".../ubuntu-18.04/ping-hostname-O-streaming.json",".../ubuntu-18.04/ping-ip-O-D-streaming.json",".../fixtures/ubuntu-18.04/ping-ip-O-streaming.json",".../ping6-hostname-O-D-p-s-streaming.json",".../ubuntu-18.04/ping6-hostname-O-p-streaming.json",".../ubuntu-18.04/ping6-ip-O-D-p-streaming.json",".../ubuntu-18.04/ping6-ip-O-p-streaming.json","tests/test_ping_s.py"]},"message":"add more ping-s tests"},{"commit":"b5fa6d068f240671eb948b055cd4f7bf127e0ec0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":25,"deletions":5,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"]},"message":"update docs"},{"commit":"1baec0b420feff068f2dc1e35499f78aa7d0a6e0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":815,"deletions":0,"files":[".../ping-hostname-O-D-p-s-streaming.json",".../centos-7.7/ping-hostname-O-p-streaming.json",".../centos-7.7/ping-hostname-O-streaming.json",".../fixtures/centos-7.7/ping-ip-O-D-streaming.json",".../centos-7.7/ping-ip-O-streaming-quiet.json","tests/fixtures/centos-7.7/ping-ip-O-streaming.json",".../fixtures/centos-7.7/ping-ip-dup-streaming.json",".../ping6-hostname-O-D-p-s-streaming.json",".../centos-7.7/ping6-hostname-O-p-streaming.json",".../centos-7.7/ping6-ip-O-D-p-streaming.json",".../centos-7.7/ping6-ip-O-p-streaming.json",".../centos-7.7/ping6-ip-dup-streaming.json","tests/test_ping_s.py"]},"message":"add some streaming tests"},{"commit":"4f2a4e1dee9d722d2aa5ddf2c082a358c88cf640","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/parsers/ping_s.py"]},"message":"skip blank lines and warning lines"},{"commit":"758d617668d1f9d0f27b52d46749e5b67a570cf1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":5,"deletions":5,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"]},"message":"doc update"},{"commit":"55322c37f57a9c8e28641a61928fad2329f5e50d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/foo_s.py"]},"message":"formatting"},{"commit":"d19ea5552bb3a379f7f92bcb58794c557ecc6647","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":193,"deletions":0,"files":["tests/fixtures/centos-7.7/ls-al-streaming.json","tests/fixtures/centos-7.7/ls-alR-streaming.json","tests/fixtures/centos-7.7/ls-alh-streaming.json","tests/fixtures/osx-10.14.6/ls-al-streaming.json","tests/fixtures/osx-10.14.6/ls-alR-streaming.json","tests/fixtures/osx-10.14.6/ls-alh-streaming.json",".../osx-10.14.6/ls-lR-empty-folder-streaming.json","tests/fixtures/ubuntu-18.04/ls-al-streaming.json","tests/fixtures/ubuntu-18.04/ls-alR-streaming.json","tests/fixtures/ubuntu-18.04/ls-alh-streaming.json",".../fixtures/ubuntu-18.04/ls-l-iso-streaming.json","tests/test_ls_s.py"]},"message":"add streaming ls parser tests"},{"commit":"130c3527c1083d399deef00ee8fcaa75f609b485","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":25,"deletions":25,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","man/jc.1"]},"message":"update docstrings"},{"commit":"3f221f471416766a860bd19850afda4899ee5eb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"]},"message":"doc update"},{"commit":"d64c4cb39056bb869fc117477612ae5ae2ef3d85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":141,"deletions":1,"files":["man/jc.1","templates/manpage_template"]},"message":"add streaming parsers section"},{"commit":"448c56aa46b72438e4a4c83b10a7eb889e3f50e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"9fbea15b6d031baa8c90f2602e39de7cf51408e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":8,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"]},"message":"rename state class to _state"},{"commit":"932060314b3c1ce518b9f57532e124285cb3ad0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":41,"deletions":11,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"]},"message":"doc update"},{"commit":"5e68ae50097cb339f3390449db7e3f189a716320","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/parsers/ping_s.py"]},"message":"import exception. tighten up os detection"},{"commit":"d03541beae44a4571a7d0481af01a5c19506207f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":5,"files":["jc/parsers/ping_s.py"]},"message":"add docstring examples. add exception raise when OS cannot be detected."},{"commit":"516fa571d90a0c93134c953c15ce84dd31b96b4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/ping_s.py"]},"message":"remove unused variable. use elif instead of if for linux vs. bsd detection"},{"commit":"a19c12096a8e8de02a6ff761cc9c13ec249d416e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":373,"deletions":143,"files":["jc/parsers/ping_s.py"]},"message":"initial working parser for both linux and bsd"},{"commit":"758f27945de4f0897405eba02c7908d815ce6e9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/ping_s.py"]},"message":"change data_bytes and bytes to sent_bytes and response_bytes"},{"commit":"8b1e8d58df22f8542ccaf7bf3e1eabe6132e7a42","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping_s.py"]},"message":"remove unneeded line"},{"commit":"b967489d085319facee077958deaa04956a98343","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":81,"deletions":40,"files":["jc/parsers/ping_s.py"]},"message":"complete linux coverage including summary"},{"commit":"870d0218be2641e3eddb114c23d54deb23155f25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"]},"message":"add unbuffer note"},{"commit":"84020bc2af294cb065105f1399453aefc98eb180","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":12,"deletions":6,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/utils.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","man/jc.1"]},"message":"change error_msg to error in -q result docs"},{"commit":"4efe5344e069ed921f208bcbbd097705be2d3b4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add links to HN and Reddit"},{"commit":"9182c545134b3d56d27d2c1d9bda678532bdc3fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":8,"files":["jc/utils.py"]},"message":"formatting"},{"commit":"28f0ab0b02d21fc060f1ac7181f85552798dc4bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/ls_s.py","jc/utils.py"]},"message":"update streaming error messages"},{"commit":"90d1a30696b2cbfbb06a55cc0cf920cf8ecd89aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"130b3738cc57fe261e8ef881a57b7836acd7e7e9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":21,"deletions":26,"files":["jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/utils.py"]},"message":"shorten successful yield to a single line"},{"commit":"92c7357615af7689db273aa78d666b35a2ec7a70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/foo_s.py"]},"message":"formatting"},{"commit":"c80f8633349c00ea461b8927f9949fe19b2f46ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/foo.py"]},"message":"simplify return condition formatting"},{"commit":"4642c20179d4643e0cf1970b264da7d9d91628de","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"5288eb22aadbbc1005b16428b94d2b07e9a75e3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"add info about streaming parser performance characteristics"},{"commit":"df8387a1a99df69eac5005662aaf56d506fa0efd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"streaming parsers cannot be used with the magic syntax"},{"commit":"cc38c27f44d3f088609b878304cab8eed75fc8f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"64f5357d69fe88b45d710d38948969699e1ca12f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":84,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add streaming parsers section"},{"commit":"51debb5649bef431e51e543f1c9270e2810aa58f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"]},"message":"add vmstat parser and change from linebuffer to unbuffer"},{"commit":"b48d05a4313b27cf5e69d3e4259542e0b131b60f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":15,"deletions":15,"files":["README.md","jc/cli.py","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"change from line buffer output to unbuffer output"},{"commit":"4e7f6b337db61b8a106cf958f6b874157909c87a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":17,"deletions":25,"files":["jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"]},"message":"simplify yield statements"},{"commit":"a509d99cafd80862721595ee59ccc4a471b5e5a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/utils.py"]},"message":"add stream_success dictionary"},{"commit":"481e45fb644ac88fa77ef35643b793f179fe6859","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"]},"message":"limit parse error msg lenght"},{"commit":"e9038e1720e1c0e520e2f29b718aa8505cbbb9a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":66,"deletions":0,"files":["docs/parsers/ping_s.md"]},"message":"initial streaming ping docs"},{"commit":"8fd9e582bf29275c4daaa3be88ea8d196411b34a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":15,"deletions":17,"files":["docs/parsers/ls_s.md"]},"message":"doc update"},{"commit":"c1fd6f48a5a3501499c9fca7239673b8555cc7c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["docs/utils.md"]},"message":"add stream_error docs"},{"commit":"af615c7f4b3f589ffc1b37cf9834062a04c013cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":26,"deletions":5,"files":["CHANGELOG","README.md","jc/cli.py","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"add line buffer output option"},{"commit":"bf0bc32d7ae6cabe07906207f4f08c2e81802c80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"flush streamed text for better piping experience"},{"commit":"2d6b53e012181a4c33bab441880c47c0fc0b0601","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":36,"deletions":42,"files":["jc/parsers/ping_s.py"]},"message":"add pattern support. move unparsable line detection to standard streaming parser style"},{"commit":"51271fea0fbd7bd63863ba05c399b4675dc5b4bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":139,"deletions":149,"files":["jc/parsers/ping_s.py"]},"message":"somewhat working parser"},{"commit":"2deb473e0bc96c0e39ec4074a6df4b941ba2172b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":262,"deletions":0,"files":["jc/parsers/ping_s.py"]},"message":"initial streaming ping parser"},{"commit":"23eeb33b3da43a679c3bf3f3643cfa552a1164e1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"modify stream_error message"},{"commit":"f50dfaef45632241f8f6972fa19bb17c54a457ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":13,"files":["jc/parsers/ls_s.py"]},"message":"use stream_error function for exceptions. raise on non -l ls output"},{"commit":"55bb71e9d466cc9ee5f7fd8eca1101c941cbcb35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"add streaming ping parser. update streaming exception message"},{"commit":"dab9357d286962b70224d6fafbf90a4c0cbc9980","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":12,"files":["jc/parsers/foo_s.py"]},"message":"use stream_error function for exceptions"},{"commit":"27eb427245b5126335cef0adb5e57522272474b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/utils.py"]},"message":"add stream_error function"},{"commit":"260f3685d944ded84396ae3395773d6898803fb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":112,"deletions":0,"files":["jc/parsers/foo_s.py"]},"message":"add streaming parser template"},{"commit":"76e78fc0c34b88a90fef876eebef92bd71cd772c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":11,"files":["jc/parsers/ls_s.py"]},"message":"doc updates"},{"commit":"1ac944fa028a400ae7b39b811fcf368c9bf5e259","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/ls_s.py"]},"message":"add -q option info to docstring"},{"commit":"986bc9b042a940f8dd34f0541bcb9b5840df579e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":43,"files":["jc/parsers/ls_s.py"]},"message":"cleanup unused code"},{"commit":"5a7942069b1f3ef3b45992b482bfb6bb973f7e8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":28,"deletions":28,"files":["jc/parsers/ls_s.py"]},"message":"add support for parent field"},{"commit":"f6c6fc13ac4c779667807df12444a41ef28a8011","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/cli.py"]},"message":"enhance error msg when streaming parser is used"},{"commit":"1d8cfae89f24192b6fab087f59c9b8988ef363dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/parsers/ls_s.py"]},"message":"only print _meta object if -q or quiet flag is used. Also, add message to the end of exceptions informing of the -q option to ignore errors"},{"commit":"787df51239ffa8260b48d6a3a58e6ff07d5e0f64","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"]},"message":"remove `\\n` from end of line in exception message"},{"commit":"5e7f302a9c45343c36e81944db38a435e6c8a20c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":10,"files":["jc/parsers/ls_s.py"]},"message":"Raise exceptions unless the -q or quiet flag are used"},{"commit":"3d10fd40b56264836874da19aa72351e6d5cfbf7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":13,"files":["jc/cli.py"]},"message":"remove print flush for better performance. Roll json.JSONDecodeError into the parse try/except block"},{"commit":"57e3bf239cc76d3b0ee0eddc618171eb90c28dec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"]},"message":"formatting for docs"},{"commit":"ccb09861e82044e17ec51277b3c8875e5ba9d87d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":20,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"]},"message":"formatting for docs"},{"commit":"94551d75dd926c7f558e5cab47ba9483a20c6b3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":116,"deletions":49,"files":["CHANGELOG","README.md","docs/parsers/ls_s.md","docs/readme.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz","mangen.py","setup.py"]},"message":"doc update"},{"commit":"6e21218425359210591827e936b8d48d9644df92","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":234,"deletions":3,"files":["jc/cli.py","jc/parsers/ls_s.py"]},"message":"working prototype of streaming ls parser"},{"commit":"ff0fda48fc48760a7293528155d222c6456f84c4","merge":"e08b61f 528aac7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #168 from kellyjonbrazil/master"},{"commit":"528aac7ad87feae2093aba563c83a29ebf75e5f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":38,"files":["README.md","templates/readme_template"]},"message":"use subprocess in python example"},{"commit":"ab482e521d4cecfffa5393805b1d7de4389db49a","merge":"9c1ad92 e08b61f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #163 from kellyjonbrazil/dev"},{"commit":"e08b61fa81b1bd2304d04db5cdc8b809fe9c6032","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]},"message":"add schema note to sfdisk"},{"commit":"ce61bd1d2b4323d9c2d0454c4f646521913ae20d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":73,"deletions":7,"files":["tests/fixtures/debian10/sfdisk-F2.json","tests/fixtures/debian10/sfdisk-F2.out","tests/fixtures/debian10/sfdisk-l2.json","tests/fixtures/debian10/sfdisk-l2.out","tests/fixtures/debian10/sfdisk-l3.json","tests/fixtures/debian10/sfdisk-l3.out","tests/test_sfdisk.py"]},"message":"add tests for -F fixes"},{"commit":"7b708f75182bf3ed33478a7de62e9c2496f0b994","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":11,"deletions":5,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-l.json","tests/fixtures/debian10/sfdisk-l.json"]},"message":"Don't convert 'size' to int, except for legacy -d support. Change partition table detection logic to fix -F output"},{"commit":"89ca50c7fc1bf64f34c915e65031d0bc520e6466","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"]},"message":"add -l to sfdisk raw example"},{"commit":"fb54899dcc2160450448e0d6111557cebdeb0d4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":38,"deletions":23,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]},"message":"doc update"},{"commit":"0a625ad7ddd9c804052d98930165cd22049546bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/sfdisk.py"]},"message":"remove unneeded lines"},{"commit":"d32e45efbe0d71a9a132abfb2855f1f4ccee9916","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":69,"deletions":1,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-F.json","tests/fixtures/centos-8/sfdisk-l.json","tests/fixtures/debian10/sfdisk-F.json","tests/fixtures/debian10/sfdisk-l.json","tests/test_sfdisk.py"]},"message":"add sfdisk tests"},{"commit":"c77696bc789cdfd286a7479c3d9f67d23149d0ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"]},"message":"version bump"},{"commit":"736fde9e784587cb2ef344bbf31d876eafea7741","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":147,"deletions":28,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-F.out","tests/fixtures/centos-8/sfdisk-l.out","tests/fixtures/debian10/sfdisk-F.out","tests/fixtures/debian10/sfdisk-l.out"]},"message":"add support for newer versions of sfdisk"},{"commit":"9c1ad92fed9a4b3a0da66d6b71deec8d608edfa9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["CONTRIBUTING.md"]},"message":"fix examples"},{"commit":"1a9fd2139d156a51bf2d25db951e47e96da77f7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"add \"For new parsers:\""},{"commit":"7661e7f27a4e5c379ea37c7f95496aca2c1e2910","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"formatting"},{"commit":"f857b7fbf7862ddd7eb5ab20470f5dbaacc62119","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"add custom parser folder info"},{"commit":"d94d12dbc5fb3e3712b2f1aea949013cb8213e28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["CONTRIBUTING.md"]},"message":"add foo parser template info"},{"commit":"700916276ae8b0a106410e3dd2ea3e00248ee37a","merge":"473f706 834e523","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #159 from kellyjonbrazil/master"},{"commit":"834e52369ceb479776ddc8fc2931790af53b9c18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":5,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]},"message":"update man page"},{"commit":"1ce53365de61421c8bd43e04590038083894153b","merge":"2689697 473f706","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #156 from kellyjonbrazil/dev"},{"commit":"473f70668f04a38765559c5dbf0468af24d625c9","merge":"0dbd270 2689697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'master' into dev"},{"commit":"0dbd2702f6ab2640b2ccdea92411ac0789673e66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/cli.py"]},"message":"reformat doc_text for nicer indentation"},{"commit":"01e3764a9b6ba902aea522bf6b7005fd37b3acbb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"fix join syntax"},{"commit":"ff9c81722ae7221364e9bcb83d98b16b4263334e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"]},"message":"try/except for shlex.join since only available in python 3.8"},{"commit":"166aef7a022ed29862ab2e0702d53c591bb5cc77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":4,"deletions":4,"files":["docs/parsers/stat.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz","setup.py"]},"message":"version bump"},{"commit":"78caf7646baf5d35602fd76771443cd64bd783af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add stat fix"},{"commit":"1f99d40cecc5d88a246f3558f71db376ebd885c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":17,"deletions":2,"files":["jc/parsers/stat.py","tests/fixtures/osx-10.14.6/stat-filename-with-spaces.json","tests/fixtures/osx-10.14.6/stat-filename-with-spaces.out","tests/test_stat.py"]},"message":"fix filename with spaces for osx/bsd"},{"commit":"4c2912d3d5ec1fd2d5d891f2b3c58a33dd8572be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"use shlex.join to quote run_command_str for better error messages"},{"commit":"45e6e06be581f787f707e3f5645129c713478d16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["CHANGELOG"]},"message":"add glob and process substitution fixes"},{"commit":"fdbe3e05f323c95687a1137983f9623911008ca2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["jc/cli.py"]},"message":"fix issue with globs not including filenames with spaces with magic syntax (introduced during switch to use subprocess to grab process exit code). No longer need to shlex quote arguments."},{"commit":"7cc168f6409af13fda815d0d2a6db25b7c9ba367","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"add comment"},{"commit":"ff2d609c9b5f5f57f3331e5593e8fe87c01654dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":1,"files":["jc/cli.py"]},"message":"add close_fds=False in subprocess.Popen() to allow process substitution in magic syntax. Also check for too many open files exception"},{"commit":"2689697b4c21758903e5f74ec069e89be585aba2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"f90a0ea8ab15629b7786e4431e9c968c3a896ee0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["templates/readme_template"]},"message":"formatting"},{"commit":"caabe60f849fb2422e47b8f10e0ff35beb706dcd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":3,"deletions":3,"files":["docs/parsers/kv.md","jc/man/jc.1.gz","jc/parsers/kv.py","man/jc.1","man/jc.1.gz"]},"message":"fix kv example"},{"commit":"2bef4ed6038201f54339e750a833260dc1998591","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","README.md"]},"message":"package updates"},{"commit":"ee57be533b12593a33a2abbb2892697f0bd40c65","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"]},"message":"fix sfdisk example"},{"commit":"c5b7aaca25d6b66d3e44256c2c6760a4cf2956ec","merge":"3b22ce4 7a1be90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #149 from kellyjonbrazil/dev"},{"commit":"7a1be905bb8654558afb5979b0bd78d4a8488874","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]},"message":"version bump"},{"commit":"5798495a11afa2f72ce6f79be785d46240fcbeb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["CHANGELOG"]},"message":"add 1.15.7 to 1.16.0 changes"},{"commit":"46171e220252ec92d18e744d2a57c1d6a6dc19f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":69,"deletions":0,"files":["EXAMPLES.md"]},"message":"add sfdisk example"},{"commit":"dd5c924ff505dcc2a9c851d2425677bdf16ea462","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add man page location change"},{"commit":"30c4ab297658228a07ef9b1585516719af3febb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":515,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]},"message":"new man page location"},{"commit":"26ea4d47b33277efb0ddafe8f421791696277c07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":14,"deletions":3,"files":["CHANGELOG","MANIFEST.in","jc/__init__.py","mangen.py","setup.py"]},"message":"version bump and deprecate /man/jc.1.gz and /jc/man/jc.1.gz"},{"commit":"2732cd175c1e878210707162de3928f33fb2f201","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["CHANGELOG","MANIFEST.in"]},"message":"include CHANGELOG in source distribution"},{"commit":"3e54b597be88b0e342e4361b7f2c1af447f9482b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add timezone change for unit tests"},{"commit":"f10ebea20962084833e5c1ebd9bc90a251bf3ff4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":78,"deletions":0,"files":["tests/test_date.py","tests/test_dig.py","tests/test_dir.py","tests/test_last.py","tests/test_ls.py","tests/test_rpm_qai.py","tests/test_stat.py","tests/test_systeminfo.py","tests/test_upower.py","tests/test_utils.py","tests/test_who.py"]},"message":"update tests to set correct timezone on POSIX systems"},{"commit":"2c6f3993cb4c5e559dbac7a479ec889aa2cba752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/route.md","jc/man/jc.1.gz","jc/parsers/route.py","man/jc.1.gz"]},"message":"remove extra comma"},{"commit":"708a696920b52c2614edcdba264912527b2dfbef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":0,"deletions":2,"files":["docs/parsers/route.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"remove extra lines"},{"commit":"20bbb5d331575c8fc33ba63643882a62650c97b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/route.py"]},"message":"remove extra lines"},{"commit":"223e785b547d9376174efa15321d60a533847c57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/sfdisk.py"]},"message":"rename variable"},{"commit":"3d78692c59980e4d70361d3a9f74bacc3f21376e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":150,"deletions":1,"files":["tests/fixtures/centos-7.7/sfdisk-d-multi.json","tests/fixtures/centos-7.7/sfdisk-d-multi.out","tests/fixtures/centos-7.7/sfdisk-d.json","tests/fixtures/centos-7.7/sfdisk-d.out","tests/fixtures/centos-7.7/sfdisk-l-multi.json","tests/fixtures/centos-7.7/sfdisk-l-multi.out","tests/fixtures/centos-7.7/sfdisk-l.json","tests/fixtures/centos-7.7/sfdisk-luB.json","tests/fixtures/centos-7.7/sfdisk-luM.json","tests/fixtures/centos-7.7/sfdisk-luS.json","tests/test_sfdisk.py"]},"message":"add sfdisk tests"},{"commit":"5321a15dcf13cf14efe578d0f66b651078c3d8a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":8,"deletions":8,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"]},"message":"update examples"},{"commit":"a452f8252a593f7914ebece53af9d73f4fd11a19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"]},"message":"fix integer conversion"},{"commit":"49267f09ac01fead3b20b2d481bb5e0d07af1439","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/sfdisk.py"]},"message":"change to root prompt in examples"},{"commit":"db47f35783e46a8299533c22146d851509f6ceb2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":15,"insertions":610,"deletions":3,"files":["CHANGELOG","README.md","docs/parsers/sfdisk.md","jc/__init__.py","jc/cli.py","jc/man/jc.1.gz","jc/parsers/sfdisk.py","jc/utils.py","man/jc.1.gz","setup.py","tests/fixtures/centos-7.7/sfdisk-d.out","tests/fixtures/centos-7.7/sfdisk-l.out","tests/fixtures/centos-7.7/sfdisk-luB.out","tests/fixtures/centos-7.7/sfdisk-luM.out","tests/fixtures/centos-7.7/sfdisk-luS.out"]},"message":"add working sfdisk parser"},{"commit":"d48abf312c1f55ab31aa11da2b6cf6bc8166733b","merge":"ff7ab0a 3b22ce4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #147 from kellyjonbrazil/master"},{"commit":"3b22ce41105387e7f46a410460cf04759feef197","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":6,"deletions":3,"files":["CHANGELOG","jc/__init__.py","jc/cli.py","jc/man/jc.1.gz","man/jc.1.gz","setup.py"]},"message":"fix local plugin parser issue where parser has .py in the name but it is not at the end"},{"commit":"c521ca5bc9e2b035cfef6ff65f6b303b3ec44296","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"change possible to available"},{"commit":"3ddc1c665990e1e732314330db214a81ab810fe9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"add jello"},{"commit":"a8e19402b7d1f9f06bc40b81a15dec401154180c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["ADVANCED_USAGE.md"]},"message":"remove temporary fix"},{"commit":"0927902b30654274743ab9092e90e768709a9937","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["ADVANCED_USAGE.md"]},"message":"temp fix for wrong url"},{"commit":"572548b42fb6ed9d32a392503d44fac1a8f146d3","merge":"95aec9c ff7ab0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #141 from kellyjonbrazil/dev"},{"commit":"ff7ab0a1ed7f468d0e84eb3bf0636f53913c490d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":0,"deletions":1,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc updates for v1.15.5"},{"commit":"5db71b05cb28691bbbaa5d668bcd4a4ac7e68b85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":3,"deletions":3,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template","templates/readme_template"]},"message":"add en_US.UTF-8 to LANG info"},{"commit":"f9b952885aa7f2b450786a08c3879d9e358886da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add python 3.9.5 packaged info"},{"commit":"e7983bc0b29abaca2147038dfad018cba1e67cdf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xml.md","docs/parsers/yaml.md"]},"message":"version bump"},{"commit":"473a6431425fc24a4cc83939ff592e0d49535b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":10,"deletions":3,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"]},"message":"add windows msi info"},{"commit":"14f3d442cb86250b8f2cdfd7977938634b8abd6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"formatting"},{"commit":"d6f4ed9ab55fe9b7c2766fb437172af62a1d5c87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/test_utils.py"]},"message":"add long-form UTC test"},{"commit":"1b8d654444ff8c8b8171c7ac63e2736447a36c09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add error message info"},{"commit":"6002af0dca334c0affaff3e9acdca416238c7d82","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/cli.py"]},"message":"add more error message detail to the user for ParseError and LibraryNotFound exceptions"},{"commit":"0924d822a30c8806f65574c010561cd6f7c8e181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":1,"files":["templates/readme_template"]},"message":"add windows example"},{"commit":"72a37b928924c3edde3a4edb952f98c94aa05f0b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"]},"message":"version bump"},{"commit":"5eef7bd769f8ffb03ba396833d1b33484041a99f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":16,"deletions":16,"files":["jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"use LibraryNotInstalled exception instead of exiting via sys.exit"},{"commit":"c6893e1bd5283d982a7ecd6f84bdfdd0054ce7a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/exceptions.py"]},"message":"add LibraryNotInstalled exception"},{"commit":"039f6612e491c6f821c001252e122e9b0a781104","merge":"9c57c09 95aec9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #139 from kellyjonbrazil/master"},{"commit":"95aec9c6f9aa8fb4d0dae227410a1346d550f47f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["templates/manpage_template"]},"message":"add info about Magic syntax not supporting shell builtins"},{"commit":"4e9652a8ec2482a64dc029b0ce0e1047a3e49867","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"spelling"},{"commit":"773b7f4b1f23e04c90e602aab05bc1a7e5aae37b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add space before exit code table"},{"commit":"d17ffde9cdc35392ae25d8e9de5328e46067df2a","merge":"efb1d3e 9c57c09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #138 from kellyjonbrazil/dev"},{"commit":"9c57c09c00e64a9031391b9b70083ad6ecf0bc0b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc update for release"},{"commit":"4d730a9de5a0d7c064a9a59e3add86e58d9ec492","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add UTC fix"},{"commit":"fc57bcfce24af23f077d6a73f1db4591d8f99c13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"]},"message":"fix for when UTC is referenced as \"Coordinated Universal Time\""},{"commit":"fa5571486c3c19bb7e836f043545ea4f2509ed4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":10,"files":["jc/cli.py"]},"message":"simplify json_out function"},{"commit":"9996c4fe23564dfb52e3c7dbdbd8bd67edfb1e95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":10,"deletions":10,"files":["EXAMPLES.md","docs/parsers/history.md","docs/parsers/jobs.md","jc/man/jc.1.gz","jc/parsers/history.py","jc/parsers/jobs.py","man/jc.1.gz"]},"message":"update docs for shell builtins"},{"commit":"038d4290248e6bb94762bb51f69e9958f7c1fecb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":6,"files":["docs/parsers/dig.md","docs/parsers/dir.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc updates"},{"commit":"9bf6facb0d7d76583802309253e7d13ba5148997","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":6,"files":["jc/parsers/dir.py"]},"message":"remove magic command capability since dir is a shell builtin"},{"commit":"965717886e4ebaa6a4a494f189d9fdd01e33eb21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add exceptions module info"},{"commit":"e9bfc3dd29f914fd91e937f06d7f59c0f91b8449","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["CHANGELOG"]},"message":"add time format, dig compatibility, windows colors fix"},{"commit":"f46b33eacf070b4dc72c8d8a66aae49abd149e5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/utils.py","tests/test_utils.py"]},"message":"add windows time format"},{"commit":"f475fe44df2fb2661c5bce4d1e602a4bba7e87c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"]},"message":"add new time format for systeminfo"},{"commit":"5fdbe2962d84dad89de23f103d97b76b90450206","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dig.py"]},"message":"make dig compatible with all platforms"},{"commit":"ab291b9eef6ed5c8ab59b5652f676178941d5ce5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"only force enable colors when running on windows"},{"commit":"fd411fd77273cb7cf872c03ed6a258ccdee4d261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"]},"message":"attempt to get colors working on windows"},{"commit":"b1e95a60a2461dc401ffc299ef6338b65ef12691","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/cli.py"]},"message":"remove unnecessary comment"},{"commit":"bb1439f0d53e87f636fba05fbd30c3c79fb16002","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["jc/parsers/uname.py"]},"message":"use ParseError exception from jc.exceptions module"},{"commit":"ba963d98a0a2b3a0dfca6b211096d802253da5fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/exceptions.py"]},"message":"add exceptions module including ParseError"},{"commit":"83440ccb55d0db15b112b8b7d7352493ff516112","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"error message capitalization"},{"commit":"796f61bfa417afdc6ab48fddbb5502cd0659b840","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":3,"files":["jc/cli.py"]},"message":"handle case where the user pipes data and uses magic syntax simultaneously"},{"commit":"070cac4ae12282458a1e1fc8618ebc473d23cacf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/cli.py"]},"message":"remove commented line"},{"commit":"3ed84f9f42e4e883ddaac28ab49d675600b49424","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/cli.py"]},"message":"reorganize main function. remove pass condition."},{"commit":"a205afb6f355edbb4b98200a980b9601ed0f0658","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"set run_command_str if run_command is set"},{"commit":"a6d983dd8f3871cbc2391c313340167829a575d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"move run_command_str variable"},{"commit":"b6c8d6d01d740827273265dbb0cfbaf7875ac7f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":45,"deletions":17,"files":["jc/cli.py"]},"message":"add exception handling for filenotfound or other subprocess.popen and json.dumps exceptions"},{"commit":"b5a5d5b133f1c0df8023776e59697b7579f8c18a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"set parser_name for magic syntax use"},{"commit":"da528e7814b0cf25a359c3556d0e286e7bf004b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"]},"message":"move separators to a variable"},{"commit":"4acebf4f621ac564f82e3a97e6810fbb08a9dbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/cli.py"]},"message":"move variables"},{"commit":"4d40808d2b70b7543eadcfd2d35c16ebe91f2f9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/cli.py"]},"message":"update comments"},{"commit":"c543f00bd3c737f73144bb2980d12793042459b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["jc/cli.py"]},"message":"simplify piped_output function"},{"commit":"947cf41dfab5811c0e76e371231c59a2d6372752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add exit code info"},{"commit":"8d8c58742e5106c3387a627cd1b1323a76cc9623","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":21,"deletions":15,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template","templates/readme_template"]},"message":"formatting"},{"commit":"995ecc9bfb0425b0ee9e4250395b0200b46c1e89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":15,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template"]},"message":"add exit codes section"},{"commit":"21a15225ebff645439b12d6249dc3e28d7bc09ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":18,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add exit codes section"},{"commit":"48921d4584068fadb0f776ed7e81c21d89172e2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"]},"message":"ensure exit code never exceeds 255"},{"commit":"342db45edc94ab1c3b3ae70e7cf4ca4076e2c7eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":10,"files":["jc/cli.py"]},"message":"fix combined exit codes"},{"commit":"5f88ecf8443bc6e9a7cda5bc60858f37cc09f4f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/cli.py"]},"message":"add comments to magic_parser return"},{"commit":"a56aebfe7024914d2c602278964b99d1443de335","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/cli.py"]},"message":"remove side-effect comment since it is no longer relevant"},{"commit":"422bb744a82472546d62c72ba05eaa1d18d5068a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]},"message":"update man pages"},{"commit":"c3b814a15f571ac84a8ce0719d7fd88acf814caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":4,"files":["jc/cli.py"]},"message":"move imports to the top"},{"commit":"e4574047a0ef6fcd4a47142421a1d05795c7925a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":21,"files":["tests/test_cli.py"]},"message":"update tests for magic_parser function"},{"commit":"0d7d7951f82627d1fb1e20d1398bd7f88c5ce1be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/cli.py"]},"message":"don't reset sys.argv anymore. check for 'valid_command' instead"},{"commit":"da904e4770a20ae85fc67476ae4a529564d0a3ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"remove final \\n from stderr string when printing"},{"commit":"19b540041add64fe6650c3634ec869421ffbc769","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":82,"deletions":51,"files":["jc/cli.py"]},"message":"proof of concept for passing command exit codes when using magic syntax. Needs more testing"},{"commit":"f2ffb93eeaf4c8b5aa93f3e8808bdc044582e8a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":10,"files":["tests/test_ping.py"]},"message":"formatting"},{"commit":"c0c0e05642e0f473cde34178d815978fff8fe1ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add dig `+noall +answer` support"},{"commit":"966978f17e40a338f982628825f30a19d4b84e4c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":72,"deletions":0,"files":[".../centos-7.7/ping6-ip-O-p-unparsable.json",".../centos-7.7/ping6-ip-O-p-unparsable.out",".../fixtures/osx-10.14.6/ping6-ip-unparsable.json","tests/fixtures/osx-10.14.6/ping6-ip-unparsable.out","tests/test_ping.py"]},"message":"add more unparsable line ping tests"},{"commit":"8ab08a5231e082940a62fcde4be218b7ba94be31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"doc update"},{"commit":"48e534fa03b92b2583c5c6269c76651f3aa420cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":17,"deletions":2,"files":["tests/fixtures/osx-10.14.6/dig-noall-answer.json","tests/fixtures/osx-10.14.6/dig-noall-answer.out","tests/test_dig.py"]},"message":"add +noall +answer test"},{"commit":"61851c1bd02aa82d5d82e68595e45630ead13d34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":85,"deletions":3,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"add support for +noall +answer"},{"commit":"3c51b2d83d301b4072bbb12fdba4f60b900573da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":40,"deletions":0,"files":[".../centos-7.7/ping-ip-O-unparsedlines.json",".../centos-7.7/ping-ip-O-unparsedlines.out","tests/test_ping.py"]},"message":"add tests for unparsable lines on linux"},{"commit":"ee3a28528e152c61f05bdf71f264fe38274b4190","merge":"fe1f101 916bcda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"916bcdae3881fc9c9f9a91c8c901a714cff3e1da","merge":"fb14f54 efb1d3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #136 from kellyjonbrazil/master"},{"commit":"efb1d3e6b2db920423511a9dcf4c5e5fd9d6af43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"add blog title and minor formatting"},{"commit":"4e6ae66bacc014e49c4a9229d10dcc8e95de436c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"5ee88e7b679bc163a1916d560be6ff29f51699e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["README.md"]},"message":"add use cases section"},{"commit":"c3b68903cbd898f80438af342195eec7575aafd3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["templates/readme_template"]},"message":"add use cases section"},{"commit":"fe1f1013a74bdf6b4284f11dd59db8ea17e5e5d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["templates/readme_template"]},"message":"add use cases section"},{"commit":"fb14f5439f00d5eaf08651c552189fd4be7358d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":52,"deletions":3,"files":["jc/parsers/ping.py",".../osx-10.14.6/ping-ip-unknown-errors.json",".../osx-10.14.6/ping-ip-unknown-errors.out","tests/test_ping.py"]},"message":"fix and tests for unknown or unparsable errors"},{"commit":"5ca0fc364eb22d583bee5633cdd7183c1d70bb6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/parsers/ping.md"]},"message":"add unparsed_line to docs"},{"commit":"a1fe7037e5267ec4aced719eff3715085eb35bca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["jc/parsers/ping.py"]},"message":"add unparsed_line field if line cannot be parsed"},{"commit":"c2af7d113ed8e8cf9af985c969cf29858a3c26a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["CHANGELOG","docs/parsers/ping.md"]},"message":"add ping updates"},{"commit":"ff034e401d5c33efbc3c4bc2f0e386d81eaae7fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":59,"deletions":43,"files":["jc/parsers/ping.py"]},"message":"use try/except to make parser more resilient against unknown error types"},{"commit":"5abe095beb4b668e5f55fe8c9588677547e4c2a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":3,"files":["docs/parsers/ping.md"]},"message":"update ping docs"},{"commit":"33de5f01e638953c83bb0960dc3550ca4547849b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["jc/__init__.py","setup.py"]},"message":"version bump"},{"commit":"8ce155d843806be4ad23491b4401e4eda02e2a1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":86,"deletions":23,"files":["CHANGELOG","jc/parsers/ping.py",".../fixtures/osx-10.14.6/ping-ip-unreachable.json","tests/fixtures/osx-10.14.6/ping-ip-unreachable.out","tests/test_ping.py"]},"message":"add support for error replies in v4 ping on osx and bsd"},{"commit":"b921d5ec9583c8f8e992613ae2eaf62165722054","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":105,"deletions":6,"files":["jc/parsers/ping.py"]},"message":"initial support for error replies in bsd/osx"},{"commit":"e21542aaa2aa5f2f287ddc227df41ae47d761332","merge":"d24f9a8 6150aae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #135 from kellyjonbrazil/dev"},{"commit":"6150aae0aeabafba26d9f119406b0660d9221cb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"clarify packaged binaries"},{"commit":"f27b35f37104ad2012c3bddde0bd94941af06894","merge":"bd428a9 d24f9a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #131 from kellyjonbrazil/master"},{"commit":"d24f9a885d3954035a98a488671486408f509dca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["CONTRIBUTING.md","README.md","templates/readme_template"]},"message":"fix contributing link"},{"commit":"48dd82c8d1b756c4e08d49b8234b8060080dc035","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"trigger page build on github pages"},{"commit":"e57167ad1f240de6ec5fc86c51cfb780535cd783","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"empty commit"},{"commit":"ada91376426ff359c495fb31081404a2cce72b5f","merge":"0c209db bd428a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #130 from kellyjonbrazil/dev"},{"commit":"bd428a9fd75327710dce96f3c95f74ab9d1beaad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"fix link"},{"commit":"934941332f91d9e2cc4e691b154bb5427166ed30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","templates/readme_template"]},"message":"minor link updates"},{"commit":"0c209dbd108638f89a43801126a332379be9ae8b","merge":"92e2252 56e041a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #129 from kellyjonbrazil/dev"},{"commit":"56e041aa260b2daf2f5662fae98645a93137adb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add Practical JSON at the Command Line blog link"},{"commit":"cf9d48582e4e5df6c8498b916a2f9cf036869f3d","merge":"35464bb 92e2252","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #128 from kellyjonbrazil/master"},{"commit":"92e2252bee00482bb0eeae3074b107d4c8553e4c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"fix typo"},{"commit":"fd7861db11e5aaa17c4e7bbce942c0c096116e30","merge":"fcc7e52 35464bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #127 from kellyjonbrazil/dev"},{"commit":"35464bbbfb6b424ef3ee1c855557ada1bf3769fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"date update"},{"commit":"db8ddd7f0e0c2a8bd3e545619e81d3d3972a4d7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":11,"deletions":17,"files":["jc/man/jc.1.gz","jc/parsers/ufw.py","man/jc.1.gz","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json"]},"message":"fix for scenarios where the default port range didn't always display, or overrode existing port ranges."},{"commit":"72207c54ee5734e3d2d3d1a063c8daf1edaa8815","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":102,"deletions":94,"files":["docs/parsers/ufw_appinfo.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"update ufw app info docs to support multiple apps (ufw app info all)"},{"commit":"a683f68003ea64dd5e2c4f06b53a1561ad774f12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":285,"deletions":202,"files":["EXAMPLES.md","jc/parsers/ufw_appinfo.py","tests/fixtures/generic/ufw-appinfo-msn.json","tests/fixtures/generic/ufw-appinfo-test.json","tests/fixtures/generic/ufw-appinfo-test2.json","tests/fixtures/generic/ufw-appinfo-test3.json","tests/fixtures/ubuntu-18.04/ufw-appinfo-all.json","tests/fixtures/ubuntu-18.04/ufw-appinfo-all.out","tests/test_ufw_appinfo.py"]},"message":"change schema to a list of dictionaries to support `ufw app info all` use case"},{"commit":"8d2d3db3fa969456342181a226bf54a3f1613542","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":0,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"]},"message":"formatting"},{"commit":"eca785450d1c72687817d09259fa7cd33376fafc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":34,"deletions":13,"files":["CHANGELOG","README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"]},"message":"add caveats to readme and manpage"},{"commit":"5b40a97ce417687b4e37f320b8a3f07dd7fd169c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":13,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template"]},"message":"add caveats to man page"},{"commit":"66cb4e9bde81b9290c1addaf851de5d80a1b0702","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":216,"deletions":234,"files":["EXAMPLES.md","docs/parsers/ufw.md","jc/man/jc.1.gz","jc/parsers/ufw.py","man/jc.1.gz"]},"message":"update ufw parser docs"},{"commit":"d1f33645caccdb3a55576081c4d355f997ac033c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":26,"deletions":10,"files":["tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw-numbered2.json","tests/fixtures/generic/ufw.json","tests/fixtures/ubuntu-18.04/ufw-numbered.json","tests/fixtures/ubuntu-18.04/ufw-numbered.out","tests/fixtures/ubuntu-18.04/ufw-verbose.json","tests/fixtures/ubuntu-18.04/ufw-verbose.out"]},"message":"update ufw tests"},{"commit":"5eff65c326675a449afd05a2af0a6c9bcf7b5e23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":85,"deletions":268,"files":["jc/parsers/ufw.py"]},"message":"update schema to support port lists and port range lists. Also support other transports than tcp and udp"},{"commit":"929c38715d87bf9dd689507d319c22b90871ae1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"formatting"},{"commit":"8c91a7b7601a967cd9d8096433ffd4ad62b65ceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CONTRIBUTING.md"]},"message":"formatting"},{"commit":"14289ecd6c022ad204444dff5b5e48f6024a5d0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"more timezone info"},{"commit":"b833c44783eb32f2fad24ca205b5b7eab854750f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add ufw-appinfo parser"},{"commit":"e23aa818eaa6d1a389ddef7dd2ad8f62b9f6ff25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"add tests section and timezone info"},{"commit":"473d919c1350a8dc34d233033a5a7d12c928e42d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":32,"deletions":0,"files":["runtests.sh","tests/fixtures/generic/ufw-numbered2.json","tests/fixtures/generic/ufw-numbered2.out","tests/test_ufw.py"]},"message":"add another ufw test sample"},{"commit":"9f925d6ac989a4f21a8c00c84fcf97dfb141e8c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc update"},{"commit":"f6ca32b3a31f314fa0b31d9e8b5494491b928f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/ufw.md","jc/parsers/ufw.py"]},"message":"update ufw docs with a note on lists of ports"},{"commit":"4cbe84c3d6ac8a3b594feb525460f2a68f5d62b2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":110,"deletions":0,"files":["tests/fixtures/generic/ufw-appinfo-msn.json","tests/fixtures/generic/ufw-appinfo-msn.out","tests/fixtures/generic/ufw-appinfo-test.json","tests/fixtures/generic/ufw-appinfo-test.out","tests/fixtures/generic/ufw-appinfo-test2.json","tests/fixtures/generic/ufw-appinfo-test2.out","tests/fixtures/generic/ufw-appinfo-test3.json","tests/fixtures/generic/ufw-appinfo-test3.out","tests/test_ufw_appinfo.py"]},"message":"add ufw-appinfo tests"},{"commit":"ffac5bf9d381305daa86e546f8570be092e5ff34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":12,"deletions":12,"files":["docs/parsers/ufw.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc update"},{"commit":"9aa424f9f8c7e4e0dc29e2c58dac481098beba7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["EXAMPLES.md"]},"message":"fix ufw example"},{"commit":"0a8495c68e427e39bbda957dd933fa2a461092e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":15,"files":["jc/parsers/ufw.py"]},"message":"update docs"},{"commit":"6aea066cf024f92adf4b94eebc7d51430c22332c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/ufw_appinfo.py"]},"message":"make normalized list appear only when data exists. set magic commands"},{"commit":"ff3c2d809ec3ea6e556c302909a228ee670578c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":176,"deletions":25,"files":["EXAMPLES.md","README.md","docs/parsers/ufw_appinfo.md","jc/man/jc.1.gz","jc/parsers/ufw_appinfo.py","man/jc.1.gz"]},"message":"add ufw-appinfo to docs"},{"commit":"145059fc8946b7026184139baea143c2869bc4e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":8,"files":["jc/parsers/ufw_appinfo.py"]},"message":"clean up output if sections are blank"},{"commit":"20e5c19de448c1b979497817c887d8d2d6487839","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/ufw_appinfo.py"]},"message":"fix key error if tcp or udp don't exist"},{"commit":"4c98fd4b877c54e1cf7d285a29e178321be12f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":101,"deletions":1,"files":["docs/parsers/ufw_appinfo.md","jc/parsers/ufw_appinfo.py"]},"message":"doc update"},{"commit":"125e54213e8d4dcfe2e3271456af80b3f79c0544","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":105,"deletions":48,"files":["jc/parsers/ufw_appinfo.py"]},"message":"update schema and add normalized fields"},{"commit":"0152e0665f87833250561d743144af35416992f8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":215,"deletions":0,"files":["jc/cli.py","jc/parsers/ufw_appinfo.py"]},"message":"initial working ufw-appinfo parser"},{"commit":"0679bcbc560ea3575555d8546afdd4e2474d05d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":31,"deletions":5,"files":["tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json","tests/fixtures/ubuntu-18.04/ufw-numbered.json","tests/fixtures/ubuntu-18.04/ufw-verbose.json","tests/test_ufw.py"]},"message":"fix ufw tests"},{"commit":"5500648aa0886ea5089856e5b33d7c8ebd78d5b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":46,"deletions":46,"files":["EXAMPLES.md","docs/parsers/ufw.md","jc/parsers/ufw.py"]},"message":"fix ufw docs for int conversions and service behavior"},{"commit":"bb50caad4dfaefa309e747fd05b650186c5a80f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":31,"deletions":4,"files":["jc/parsers/ufw.py","tests/fixtures/ubuntu-18.04/ufw-numbered.out","tests/fixtures/ubuntu-18.04/ufw-verbose.out"]},"message":"fix prefix int conversions. don't reset _transport if service is really a list of ports"},{"commit":"7eef5d94d591a3f70f6638b1b30f952a3bf35f9d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":0,"files":["EXAMPLES.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"ufw doc update"},{"commit":"74f623f8d607c050db8f62ea4996c4e6aae43268","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":43,"deletions":11,"files":["docs/parsers/ufw.md","jc/parsers/ufw.py","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json","tests/fixtures/generic/ufw.out"]},"message":"add support for rule comments and LIMIT and REJECT actions"},{"commit":"f638aca092475bbae14fed765e90435c093fcb8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add deb package name fix"},{"commit":"da35eaf80ad4f11e7482fc4734db4b2265e50548","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["docs/parsers/ufw.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"formatting"},{"commit":"ade0e8e8fc18ff9a0dd406206a85238f1f5a739d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":107,"deletions":0,"files":["tests/fixtures/generic/ufw-inactive.json","tests/fixtures/generic/ufw-inactive.out","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw-numbered.out","tests/fixtures/generic/ufw.json","tests/fixtures/generic/ufw.out","tests/test_ufw.py"]},"message":"add ufw tests"},{"commit":"90076090f05a1f03e2fbff307418ee18d7d046ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":5,"files":["jc/parsers/ufw.py"]},"message":"fix int conversions if 'rules' key does not exist"},{"commit":"23635def8b654097178f73ed1b57fc50965142d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":306,"deletions":4,"files":["README.md","docs/parsers/ping.md","docs/parsers/ufw.md","docs/utils.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"add ufw to docs"},{"commit":"4eeec087bde98f90ab8425473d1fbeee6834852e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":115,"deletions":0,"files":["EXAMPLES.md"]},"message":"add ufw example"},{"commit":"733196103897a1d84d242324ddcf96e783320329","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/ufw.py"]},"message":"update docs with new examples that have `to_service` always existing."},{"commit":"e4acb3d5b70a7d75741ef3e35cd6750d1362a80f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/ufw.py"]},"message":"always make to/from_service None if ports are assigned"},{"commit":"c60549a9947d5684bbfa58223bfbcfc40a3ed479","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":29,"deletions":29,"files":["jc/parsers/ufw.py"]},"message":"change field name from to/from_subnet to to/from_ip_prefix"},{"commit":"d46fc8bbfa15a80a1af6c64f70230f858c215223","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/parsers/ufw.py"]},"message":"set to/from_transport to None if to/from_service is set"},{"commit":"b133d1f90d49362594508d8c475663754f0e7675","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/ufw.py"]},"message":"strip interface value"},{"commit":"5be615a97e7c145c8351764234ac591028560c34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":219,"deletions":9,"files":["jc/parsers/ufw.py"]},"message":"add examples for docs"},{"commit":"ea1d820f96321ddf4084b54ee2fdf397295beb21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/parsers/ufw.py"]},"message":"convert integer fields"},{"commit":"47e262cf7200b02ff0af97a70ffa6bec286c8f39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":59,"deletions":14,"files":["jc/parsers/ufw.py"]},"message":"clean up fields"},{"commit":"eec673be9092e382694aa02682564510ce4e7f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":88,"deletions":3,"files":["jc/parsers/ufw.py"]},"message":"working raw parser"},{"commit":"9a0fb2a7c87e6fde0cc0d84fa8a1f131e28ea732","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":157,"deletions":0,"files":["jc/parsers/ufw.py"]},"message":"parse major sections"},{"commit":"b5145d6c14d7a51e7cfdebe126c9689dc90f7b27","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":8,"deletions":4,"files":["CHANGELOG","jc/__init__.py","jc/cli.py","setup.py"]},"message":"version bump to v1.15.3"},{"commit":"9747ca414dfb8218389c7b2199a080edabc2a184","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/utils.py"]},"message":"minor optimization to convert_to_int(). No longer runs through convert_to_float(), but uses standard float() function."},{"commit":"312d465b61a15592cc70d3734ad747b9a2be10ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"]},"message":"update link"},{"commit":"7dcf87d24ad40eba6ba98de2b4b2bf177a76cd71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping.py"]},"message":"formatting"},{"commit":"cf3cfd16a9de05f30303b5952fbe609cde842d2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_utils.py"]},"message":"rename tests"},{"commit":"fcc7e5294973d1a18943fa2ce2e836b0fe757d95","merge":"6c83846 3ab9d48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #123 from kellyjonbrazil/dev"},{"commit":"3ab9d480149a692510ab9e0ac8e745b674683e3d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CHANGELOG"]},"message":"update changelog"},{"commit":"7eddf41c5f6310264359cd6d78bdfa4b65af7d06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":96,"deletions":9,"files":["jc/man/jc.1.gz","jc/utils.py","man/jc.1.gz","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/df.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/free-h.json","tests/test_utils.py"]},"message":"dont round up int conversions and fix tests"},{"commit":"27a196c93862bd737603cfe402b35529eb412954","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc update"},{"commit":"e4324f05fb6f89c34fa1567e70d8636457623edb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":14,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"fix indentation in doc"},{"commit":"d36b332bd78b5bf5979cdc59b31da08d8e4104d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":53,"insertions":196,"deletions":274,"files":["docs/parsers/systemctl_lj.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/wc.md","docs/parsers/who.md","docs/utils.md","jc/parsers/acpi.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/hash.py","jc/parsers/hciconfig.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl_lj.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/utils.py"]},"message":"use jc.utils for conversions"},{"commit":"1f034826f69c461495f7a302cc8fe35e3052e72f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":42,"insertions":94,"deletions":185,"files":["docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","tests/fixtures/centos-7.7/ls-alh.json","tests/fixtures/centos-7.7/lsof-sudo.json","tests/fixtures/centos-7.7/lsof.json","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/ubuntu-18.04/ls-alh.json","tests/fixtures/ubuntu-18.04/lsof-sudo.json","tests/fixtures/ubuntu-18.04/lsof.json"]},"message":"use jc.utils for conversions"},{"commit":"246c707c98d3128b4e38f5c4b23a1e0ceedc0b0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":46,"insertions":190,"deletions":196,"files":["CHANGELOG","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/df.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/hash.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/utils.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/hash.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/utils.py","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/osx-10.11.6/df-h.json","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/free-h.json"]},"message":"use jc.utils conversions"},{"commit":"b5d8968144e76090870f8563dc1bce910fba668c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":0,"files":["jc/utils.py"]},"message":"add convert_to_int function"},{"commit":"f7b9fbefdde6973077573fec02342eb9946789c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add query_size info for dig"},{"commit":"b1fc4533833ca25f59869bfec8ac114bf49c7847","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"]},"message":"fix _IfconfigParser name"},{"commit":"7581c8d0f4262fc6a05240bb21ffe533b153f6e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":45,"deletions":32,"files":["docs/parsers/dig.md","jc/parsers/dig.py","tests/fixtures/generic/dig-edns3.json"]},"message":"add query_size field. handle user-specified dig output better - especially when querying dnssec"},{"commit":"32bf8ad6f4fff83fdfd83d66c1ba8f1af5a65a90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":52,"deletions":24,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"update dig docs"},{"commit":"b083bcc10fa1105fc09ce8d2c3297aa5575c9d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]},"message":"update man page"},{"commit":"4f6fdd120d23468270c1d7111e4ef71b87759a1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":134,"deletions":100,"files":["docs/readme.md","jc/__init__.py"]},"message":"use dig as example"},{"commit":"eb0038be2490053d32803d30e1c3d4d34509d130","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":40,"deletions":19,"files":["EXAMPLES.md"]},"message":"update dig examples"},{"commit":"7ecdf819fa37c38ae6159ad8e7bc973ee4f34559","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":84,"files":["README.md","templates/readme_template"]},"message":"remove dig example from readme,"},{"commit":"c6aa4d083550d25bcb621cad524047cfd6a08217","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":252,"deletions":317,"files":["README.md","docs/parsers/dig.md","jc/man/jc.1.gz","jc/parsers/dig.py","man/jc.1.gz","templates/readme_template"]},"message":"update docs with new dig parser examples"},{"commit":"7c584b89a6e6b924d53d50103b97f0c2405c33b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":15,"insertions":352,"deletions":52,"files":["jc/parsers/dig.py","tests/fixtures/generic/dig-additional.json","tests/fixtures/generic/dig-additional.out","tests/fixtures/generic/dig-additional2.json","tests/fixtures/generic/dig-additional2.out","tests/fixtures/generic/dig-additional3.json","tests/fixtures/generic/dig-additional3.out","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/generic/dig-edns.json","tests/fixtures/generic/dig-edns.out","tests/fixtures/generic/dig-edns2.json","tests/fixtures/generic/dig-edns2.out","tests/fixtures/generic/dig-edns3.json","tests/fixtures/generic/dig-edns3.out","tests/test_dig.py"]},"message":"add additional section"},{"commit":"c166c0bfdafa922f57f021fa4d16e467fca02d58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":14,"insertions":55,"deletions":21,"files":["jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json"]},"message":"add opt_pseudosection section to output and fix existing tests"},{"commit":"a8dd3f7802bfe8fd3ffbedf89af45ddc580ee78d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":54,"deletions":281,"files":["CHANGELOG","jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-axfr.json"]},"message":"working dig axfr fixes"},{"commit":"3b0e2f03f3b11398ff57b1daed542faaf0b80a62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":24,"deletions":23,"files":["jc/cli.py","templates/manpage_template"]},"message":"clean up examples"},{"commit":"8390ae48c88ab1c7d5acbf40c0e60606953817bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":8,"deletions":8,"files":["jc/parsers/dig.py","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json"]},"message":"fix server entry when IPv6 address is in value (maxsplit on colons)"},{"commit":"2db82c0a7e19d596c876ede8a8ff106aaa733ee5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":66,"deletions":0,"files":["EXAMPLES.md"]},"message":"add systeminfo example"},{"commit":"61479540756704f10853233300ceae8f954a8a95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":0,"files":["tests/test_systeminfo.py","tests/test_utils.py"]},"message":"update tests"},{"commit":"691df271fcfe057ae4b75ad40869e23deb37b886","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":1,"files":["docs/parsers/systeminfo.md","jc/man/jc.1.gz","jc/parsers/systeminfo.py","man/jc.1.gz"]},"message":"add info docstring"},{"commit":"89f52b95f7055da9d7b5fa8dce0923d4c3435bd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":467,"deletions":821,"files":["README.md","docs/parsers/systeminfo.md","jc/man/jc.1.gz","jc/parsers/systeminfo.py","jc/utils.py","man/jc.1.gz",".../windows/windows-10/systeminfo-hyperv-utc.json",".../windows/windows-10/systeminfo-hyperv-utc.out",".../windows/windows-10/systeminfo-hyperv.json","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-10/systeminfo.out",".../windows/windows-2012r2/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"]},"message":"update systeminfo parser with updated timestamps, normalized blank fields, and new doc style"},{"commit":"146acc1bf69c402e38c2f1bc842b84e6cff7e2cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":29,"files":["jc/parsers/systeminfo.py"]},"message":"rename functions to make them private"},{"commit":"c4a345f59aa090336b4e80f181493cd5bc2c17c5","merge":"dfd2703 325fab2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #106 from jon-rd/j/systeminfo"},{"commit":"dfd2703f75b907ba865fff266d0742d8931bc2d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"]},"message":"bump dev to v1.15.2"},{"commit":"325fab2de7b8a4bfc452ab8d3cf333d47fdf4989","author":"Jon Smith","author_email":"jon@rebelliondefense.com","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/systeminfo.py"]},"message":"update documentation for parsed structures"},{"commit":"f3d00cf38ad15aeda7eaa5644ebc30ff33de6a29","author":"Jon Smith","author_email":"jon@rebelliondefense.com","stats":{"files_changed":5,"insertions":56,"deletions":48,"files":["jc/parsers/systeminfo.py",".../windows/windows-10/systeminfo-hyperv.json","tests/fixtures/windows/windows-10/systeminfo.json",".../windows/windows-2012r2/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"]},"message":"append mb to memory key names; adjust expected timestamps to utc tz"},{"commit":"14838f7f5d780896f1318cac2c3f34d249a158d4","author":"Jon Smith","author_email":"jon@rebelliondefense.com","stats":{"files_changed":9,"insertions":956,"deletions":116,"files":["jc/parsers/systeminfo.py","jc/utils.py",".../windows/windows-10/systeminfo-hyperv.json",".../windows/windows-10/systeminfo-hyperv.out","tests/fixtures/windows/windows-10/systeminfo.json",".../windows/windows-2012r2/systeminfo.json",".../fixtures/windows/windows-2012r2/systeminfo.out","tests/fixtures/windows/windows-7/systeminfo.json","tests/test_systeminfo.py"]},"message":"update schema with nic, hyperv, and process changes"},{"commit":"af74047b81776c2ea32d82f9145ab60c346c8203","author":"Jon Smith","author_email":"jon@rebelliondefense.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/systeminfo.py"]},"message":"update schema based on processor/hotfix changes"},{"commit":"660c59129cf4ba7889fb3c6fbafd9dd9b479ccd9","author":"Jon Smith","author_email":"jon@rebelliondefense.com","stats":{"files_changed":3,"insertions":41,"deletions":9,"files":["jc/parsers/systeminfo.py","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"]},"message":"Add parsing of processors/hotfixs"},{"commit":"89a88e186ed71d84ea802cf08ab756b49cee3225","author":"Jon Smith","author_email":"jon@rebelliondefense.com","stats":{"files_changed":1,"insertions":152,"deletions":0,"files":["docs/parsers/systeminfo.md"]},"message":"Add systeminfo.md file"},{"commit":"f861cf95b96a224a0a11f2cdc3261b94c02415ef","author":"Jon Smith","author_email":"jon@rebelliondefense.com","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["jc/cli.py","jc/parsers/systeminfo.py"]},"message":"Change to v0.5; add parser to cli.py; add to docgen"},{"commit":"ee8f06cbdb03f8254bb6a3c56fa5b8a64ff9ca77","author":"Jon Smith","author_email":"jon@rebelliondefense.com","stats":{"files_changed":6,"insertions":688,"deletions":0,"files":["jc/parsers/systeminfo.py","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-10/systeminfo.out","tests/fixtures/windows/windows-7/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.out","tests/test_systeminfo.py"]},"message":"Add windows systeminfo command parser"},{"commit":"a2e8b3c7b681605916b8950d035ee19889a125a5","merge":"e0681ee 6c83846","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #121 from kellyjonbrazil/master"},{"commit":"6c838460752c7131f75cdab2da07266fee492060","merge":"10292f7 e0681ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #120 from kellyjonbrazil/dev"},{"commit":"e0681eebb9881dc0ffddb478224455f434919104","merge":"e5732d1 10292f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'master' into dev"},{"commit":"e5732d1cea1c882f6486cf288e45edb993989ea0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"update changelog"},{"commit":"6e7ae3cd3f003fe9e1e587b7f8ebd16ba0895014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/timedatectl.md","jc/man/jc.1.gz","jc/parsers/timedatectl.py","man/jc.1.gz"]},"message":"formatting of timedatectl docs"},{"commit":"f95632d1aaee545ae0ce081ca0617be135c09220","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":83,"deletions":62,"files":["EXAMPLES.md","docs/parsers/rpm_qi.md","jc/man/jc.1.gz","jc/parsers/rpm_qi.py","man/jc.1.gz","tests/fixtures/centos-7.7/rpm-qai.json","tests/fixtures/centos-7.7/rpm-qi-package.json"]},"message":"add install_date calculated fields"},{"commit":"2f8b7b26e59bcd745fa1fcadb373455c7d404286","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":2,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"update docs for v1.15.1"},{"commit":"10292f7502e4cb1c53b53ed39fed9288044c2ef8","merge":"37a3565 aef5470","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #119 from kellyjonbrazil/dpkg_l-fix"},{"commit":"aef54705f5267c633e0778e8dce0065978083139","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["docs/parsers/dpkg_l.md"]},"message":"add _l to module name"},{"commit":"bba5980fa53767716bc35d8c904e7a2341346eeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]},"message":"man page update"},{"commit":"977425abfb05a63ee372df36124ac6ba6a5a0aaa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"]},"message":"add _l to package name in docs"},{"commit":"37a3565a1bbd3d01663602673fed651509e69d8c","merge":"bdcdaee 13deb8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #118 from kellyjonbrazil/rpm-qi-doc-fix"},{"commit":"13deb8bfb6e77aaf86942f0be87b59d06ee2a97c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":194,"files":["docs/parsers/rpm_qai.md","docs/parsers/rpm_qi.md"]},"message":"fix rpm-qi docs"},{"commit":"a3ed9d075aff41599452c3094f7d057c25fc8f89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":191,"files":["docs/parsers/rpm_qai.md"]},"message":"remove old parser doc"},{"commit":"fb0ced549e021916dee7da39859e8f85c8216e16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":6,"deletions":6,"files":["docs/parsers/rpm_qi.md","jc/man/jc.1.gz","jc/parsers/rpm_qi.py","man/jc.1.gz"]},"message":"fix rpm-qi docs (used underscore instead of dash in name)"},{"commit":"7eb31bc7d290fcd09e53524ebbb11e59110df6a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":39,"deletions":48,"files":["docs/parsers/airport_s.md","jc/man/jc.1.gz","jc/parsers/airport_s.py","man/jc.1.gz"]},"message":"update airport_s docs"},{"commit":"6a06a3914273853742ac57433398968ccf7d9897","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["docgen.sh"]},"message":"use herestring instead of echo -e into jq"},{"commit":"bdcdaee6c5299ea0750512e0943c7f58f56f2e35","merge":"5d8f836 605353f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #117 from kellyjonbrazil/doc_update"},{"commit":"605353fdce3b8b5986d20a35d05f7210a6df0730","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":70,"insertions":1710,"deletions":2656,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md"]},"message":"add new docs"},{"commit":"490c9e17699e8e4f70dcc1612e1a808f86e24b0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["tests/test_cli.py"]},"message":"add more cli tests for magic command"},{"commit":"6ebebb659dc93daeaa869752ad135f6e1d2cb1ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"]},"message":"update changelog"},{"commit":"0e70c5ee12e96f04a89de05153a2da9cd39f98ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"update documentation link"},{"commit":"cd531acf6045660e022c932f62a01d4084433ad4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["docgen.sh"]},"message":"clean up comment"},{"commit":"908ac1f61c5cc011d05d550f933940dfed4431f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":143,"insertions":0,"deletions":690,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/man/jc.1.gz","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","man/jc.1.gz"]},"message":"update docs - remove compatibility section since it is now automatically generated from info()"},{"commit":"f5c7e7e4046bc57b4fcad99390e31b121a7106ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":70,"insertions":350,"deletions":0,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md"]},"message":"add updated docs with home link and parser info at the bottom"},{"commit":"001c700b5bd280cb1cb9e54169ae5f1b7918c257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":2,"deletions":1,"files":["docgen.sh","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"add home link to the top of the md file"},{"commit":"9b41e9bef0ff099e70f37fddc8fe2c6bd8457b19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"]},"message":"Add parser information header"},{"commit":"34bd6e32dc0c0bf7dfeedaadbf04115f43e9d060","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":4,"files":["docgen.sh"]},"message":"pull each parser as a json object into a bash array and iterate on it to add supplementary information like version, author, and compatibility"},{"commit":"c5d058490beaa8f59875a8acfd7a400764768639","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":22,"deletions":13,"files":["jc/cli.py"]},"message":"move parser doc printing to its own function"},{"commit":"dd1ae6d9a7de5421830232deb42d933b9a652672","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":3,"deletions":1,"files":["MANIFEST.in","jc/man/jc.1.gz","man/jc.1.gz","mangen.py"]},"message":"add man page inside the pypi package for easier packaging in homebrew"},{"commit":"d8ea9bde823a7f5c146741150c3211737345c7dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":16,"deletions":16,"files":["docs/parsers/w.md","jc/parsers/w.py","man/jc.1.gz"]},"message":"doc update"},{"commit":"125edc9c906dc3650b6a683ed13830075acb7ab6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"bail out for -h, -a, and -v in magic()"},{"commit":"15ea43e394a9004f8ccec208b3a066c76e241866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["MANIFEST.in"]},"message":"add man file to package for easier packaging in homebrew"},{"commit":"b55b02687c00d1c50e30f30c9b9a7f36f783eb0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":19,"insertions":371,"deletions":441,"files":["CHANGELOG","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","man/jc.1.gz","setup.py"]},"message":"doc update"},{"commit":"da611f0ac6321f7f52fdbc419f8b155c74393c28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":63,"deletions":50,"files":["jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","man/jc.1.gz"]},"message":"update docs"},{"commit":"b8b8dfead4fdc4285585c44c2ebce3bdd42b2e7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":61,"insertions":1501,"deletions":1848,"files":["docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py"]},"message":"update docs"},{"commit":"4290a3cbd135cacbf63664dc30768017ebbed28d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":9,"files":["docs/parsers/ifconfig.md","jc/parsers/ifconfig.py"]},"message":"make IfconfigParser class private"},{"commit":"a5e2203cee6a7bc398cf280f57d37638eeb1d2d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":2,"deletions":1,"files":["docs/parsers/ifconfig.md","jc/parsers/ifconfig.py","man/jc.1.gz"]},"message":"update ifconfig doc"},{"commit":"e28c08b1361161cfd123b9ebc11fa1ffa87d658f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":46,"insertions":976,"deletions":1209,"files":["docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","man/jc.1.gz"]},"message":"update documentation"},{"commit":"a4b6846f63b43168085275d73940265940badf46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":467,"files":["man/jc.1","man/jc.1.gz"]},"message":"man update"},{"commit":"2bc830786114fd57619f34b936dcf6e0bed7a109","merge":"9b39917 5d8f836","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'master' into dev"},{"commit":"9b39917c798ed0310c9b82d87172cbf6d24ba111","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":17,"insertions":391,"deletions":453,"files":["README.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","jc/cli.py","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"update docstrings for new help functionality"},{"commit":"57c13cc0a38ad89fda8b0e362bd6487257d0a26a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":3,"files":["jc/cli.py"]},"message":"add support for parser help"},{"commit":"b7355fd30d992a1bcc90227f5a1b02be073829e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":37,"deletions":48,"files":["docs/parsers/arp.md","jc/parsers/arp.py"]},"message":"new docstring format for improved documentation"},{"commit":"93ae309e407b26820b9f05b5b331d05fc77df57f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/__init__.py","man/jc.1"]},"message":"bump version to 1.15.1"},{"commit":"5d8f8365e24a7c3a587d4e71ebba4876de08203b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":461,"files":["man/jc.1","man/jc.1.gz","mangen.py"]},"message":"gzip man page"},{"commit":"f26909eefb236e9ebf63be53cd86ae13cc3d9ea3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["docs/parsers/dir.md"]},"message":"formatting"},{"commit":"55bfbb2797ede3aefbb14ecab950b108b1895ccc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":6,"files":["EXAMPLES.md","jc/parsers/dir.py"]},"message":"formatting"},{"commit":"8970b8342a855203aef649b60dad3e49a1d7fd2a","merge":"a73fdb7 5285e69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #115 from kellyjonbrazil/master"},{"commit":"5285e699c30fdeaf56068f5a03ef1d1d33fa673c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","jc/cli.py","man/jc.1"]},"message":"fix rpm-qi parser name"},{"commit":"275f3860d5870303235b651d42650256e4db8ada","merge":"577811f a73fdb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #114 from kellyjonbrazil/dev"},{"commit":"a73fdb7478965f0f2c841ac01b2762db80ad0786","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["CHANGELOG","man/jc.1"]},"message":"update dates"},{"commit":"f2d746403a0ed764f931ae9e14d180bab107dcca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/rpm_qi.md","jc/parsers/rpm_qi.py"]},"message":"typo fix"},{"commit":"b7dbf2c49be4beb793495a0aaee7f05dbea5a3a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["jc/utils.py"]},"message":"doc formatting"},{"commit":"21f3c97788826e79b0c387f877c5adf269318e97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"]},"message":"rename rpm_qai to rpm_qi"},{"commit":"14b727cc717d04fefba1cc31b6f29b549ced986f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":73,"deletions":0,"files":["tests/fixtures/centos-7.7/rpm-qi-package.json","tests/fixtures/centos-7.7/rpm-qi-package.out","tests/test_rpm_qai.py"]},"message":"add rpm_qi tests"},{"commit":"abee226591ed4ae37351efc995017d28b27827d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":205,"deletions":14,"files":["README.md","docs/parsers/rpm_qi.md","jc/cli.py","jc/parsers/{rpm_qai.py => rpm_qi.py}","man/jc.1"]},"message":"rename rpm_qia to rpm_qi"},{"commit":"293ad39f4bcf326186dd917d8bc58d3964e5e4d6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"typo fix"},{"commit":"92443025811019f616f596abb60a2889f604c122","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":7,"deletions":6,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/rpm_qai.md","jc/parsers/rpm_qai.py"]},"message":"rpm parser doc update"},{"commit":"753cac25fb1e7e6cd2c742afa8d45ced068ea91d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":3,"files":["jc/parsers/rpm_qai.py"]},"message":"only add description if it exists"},{"commit":"0548263e898bf14f93d2fa423c0f0a9d9f2ff567","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":10468,"deletions":0,"files":["EXAMPLES.md","README.md","docs/parsers/rpm_qai.md","jc/cli.py","jc/parsers/rpm_qai.py","man/jc.1","tests/fixtures/centos-7.7/rpm-qai.json","tests/fixtures/centos-7.7/rpm-qai.out"]},"message":"add rpm -qai parser"},{"commit":"53776a9bf894988d6ef9221a62ab8b816c89560c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["man/jc.1","templates/manpage_template"]},"message":"note -a output is JSON"},{"commit":"cc7def9b76a7fa6de1e11b584676820f3acb0257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":18,"deletions":0,"files":["tests/fixtures/osx-10.14.6/finger.json","tests/fixtures/osx-10.14.6/finger.out","tests/test_finger.py"]},"message":"add OSX finger tests"},{"commit":"11a4422c25ed905f33475677bcc2f59f49c62a23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":51,"deletions":0,"files":["tests/fixtures/centos-7.7/finger.json","tests/fixtures/centos-7.7/finger.out","tests/test_finger.py"]},"message":"add centos 7.7 finger tests"},{"commit":"3a44785260514227b541530baf3e14b6c7ebe86a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/finger.py"]},"message":"del details key if details are blank"},{"commit":"e0d430c26c38db8de5a32741e05df412cffe45b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"update -r raw option info"},{"commit":"417b70020accfa4910016e9d3d12690a5488f6f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":129,"deletions":22,"files":["EXAMPLES.md","docs/parsers/finger.md","jc/parsers/finger.py","tests/fixtures/ubuntu-18.04/finger.json","tests/fixtures/ubuntu-18.04/finger.out"]},"message":"add idle time fields to finger parser"},{"commit":"7b29c464b72ef9a79bd872dab92cf65016490bcc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"date updated"},{"commit":"26d5529d86e4e459ad94226465c3697a050af0ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":7,"files":["docs/parsers/finger.md"]},"message":"remove aix support, add note for -s support. schema update"},{"commit":"852103c478321b84ffbbc0a876d5ece0c0881e1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":14,"files":["jc/parsers/finger.py"]},"message":"tweak regex to support arbitrary 'detail' data"},{"commit":"26a115421b0888e23f4348f1124e2ef7b39df4cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["CHANGELOG"]},"message":"add finger parser"},{"commit":"755b941a9aa602d95d9bc599f5c64e05f9e6216d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":35,"deletions":30,"files":["EXAMPLES.md","docs/parsers/finger.md","jc/parsers/finger.py"]},"message":"doc update"},{"commit":"fd1ca82d86649adeb84968142665e5e4fae3fa0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":263,"deletions":0,"files":["README.md","docs/parsers/finger.md","jc/cli.py","jc/parsers/finger.py","man/jc.1"]},"message":"add finger parser"},{"commit":"6fe175344fc61d4996a9ea20f6c5d429efb1fac7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"change examples link to github.io"},{"commit":"3590cda13a68616ee7eb8c85c5554ffb3fef036d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/last.md","jc/parsers/last.py"]},"message":"docs formatting"},{"commit":"2f1011dd85ec9b3550138ac4a4e1729fa5b4fe17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"readme update"},{"commit":"2b155261b3f6e4879b592f5bc052649ded5e3d69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"]},"message":"use new github.io links for documentation"},{"commit":"02f4d606d0a446c7cc74aedac6035ee79805950d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":69,"deletions":69,"files":["README.md","templates/readme_template"]},"message":"add documentation links to README.md"},{"commit":"577811f00b7fcd0396bb0e26a2985709bd2c65a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/_config.yml"]},"message":"Set theme jekyll-theme-cayman"},{"commit":"b4098d67a3a4a617d42c1389e0a88833c77b89b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"latest"},{"commit":"88bd7554aeb511c19e55dc3dde9c9376efb0485b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":3,"files":["docgen.sh","updatedocs.sh"]},"message":"add status messages"},{"commit":"b5ec16c5cafb78db093861cc30d9646207f2227a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":8,"files":["mangen.py","readmegen.py"]},"message":"formatting"},{"commit":"68fcb60a1460a35500180ec05a8cf5ba5706ff17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["updatedocs.sh"]},"message":"add updatedocs script"},{"commit":"e4781d60ce251f6d47f19bbe042e97f8aa9e2f18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":65,"insertions":188,"deletions":189,"files":["README.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","man/jc.1"]},"message":"update parser descriptions with backticks surrounding command names"},{"commit":"6201fb346a66ba762651624cdaf03f08e08579a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","jc/parsers/iw_scan.py"]},"message":"test backticks in description"},{"commit":"f88c8343f9dec5e0190df94a5109e6c749bda286","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","jc/parsers/iw_scan.py"]},"message":"update iw-scan description for documentation"},{"commit":"25410d33168ee7142bd8f8c739ef22a62a47eb6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":973,"deletions":70,"files":["README.md","mangen.py","readmegen.py","{man/template => templates}/manpage_template","templates/readme_template"]},"message":"create readmegen.py script. move jinja2 templates to templates folder"},{"commit":"4ff9952938d0654376efc94ca7d8a12f6df171af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["README.md"]},"message":"change OSX to macOS"},{"commit":"5e3f63a412c5b23e7515337521ebba6273b5c11f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["man/jc.1","man/template/manpage_template"]},"message":"add license and copyright info. use variables instead of hard-coded values"},{"commit":"e1f57be69efdfd7facd07df6ef0955a36c4fc18b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"]},"message":"add license info"},{"commit":"2c65d5eeccdc95d2de00ac6575a9e8d8458486bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":32,"deletions":8,"files":["man/jc.1","man/template/manpage_template"]},"message":"man page updates"},{"commit":"aa621f2f1ee043611c440683dfb63e6577d8fac4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":74,"deletions":9,"files":["CHANGELOG","man/jc.1","man/template/manpage_template"]},"message":"enhance man page"},{"commit":"ac932c6e59ad80115962d0ea91e6aaabc70c211e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/utils.md","jc/utils.py"]},"message":"update timestamp docs"},{"commit":"029f79da1647e53f97ca83ba92b1f36a131f3128","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"added info regarding updated dev scripts for automating doc generation"},{"commit":"153b2b4a7a216caae5b03f6d50d43980c13a705f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":68,"files":["docgen.sh"]},"message":"use jc to help automate the generation of its own docs"},{"commit":"709b2fe4eead06090f903718deeb06ec774fc26e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":16,"deletions":0,"files":["man/jc.1","man/template/manpage_template"]},"message":"add -h and -v options"},{"commit":"09c1fccc584e3d0582e19b520586419085ea8d04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":4,"deletions":6,"files":["man/jc.1","man/template/manpage_template","mangen.py"]},"message":"manpage updates"},{"commit":"fd254d99b782888fe7646e42a61f28aa99e7cba7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":193,"deletions":15,"files":["man/jc.1","man/template/manpage_template","mangen.py"]},"message":"add manpage generator"},{"commit":"88bd2c172217c498431e8904e74313bc27978785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"fix typo"},{"commit":"d03e2f0fc1d0310cd94702f4d3c959d71b0eb622","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":40,"deletions":0,"files":["CONTRIBUTING.md"]},"message":"add parser schema guidelines"},{"commit":"3f12a393bd37062cd1412128be495235b0c7351f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"formatting"},{"commit":"8c21284c5038bdc2e52ff4211fac747f33f52091","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["CONTRIBUTING.md"]},"message":"remove redundant license info"},{"commit":"e7d396c2157a77500017967dfc68ffaf32507c2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"update issues link"},{"commit":"f238fac0eb0c8e5133c6c9abf9ca709f5df7a925","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":49,"deletions":0,"files":["CHANGELOG","CONTRIBUTING.md","README.md"]},"message":"add contributing guidelines"},{"commit":"017228f80d9a65ad7715f31c539d9fca1615296f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add tested on Windows 10"},{"commit":"286c5fa9434e25434ee8f4825621f68464296469","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add dir parser"},{"commit":"74cfc13abe4cd09ca5470714caeaedd24c099770","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":12,"deletions":21,"files":["tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-S.json","tests/fixtures/windows-10/dir-dirs.json","tests/fixtures/windows-10/dir-files.json","tests/fixtures/windows-10/dir-mix.json","tests/fixtures/windows-10/dir-raw.json","tests/fixtures/windows-10/dir.json","tests/test_dir.py"]},"message":"fixup dir parser tests"},{"commit":"0ee4a6c377321cf6ff67ced38e9a07a8f6313943","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":207,"deletions":460,"files":["docs/parsers/dir.md","jc/parsers/dir.py"]},"message":"update schema and add epoch naive timestamp"},{"commit":"283433578dfc3f132ef35727ce5bafb3e390896c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":46,"deletions":0,"files":["EXAMPLES.md","README.md"]},"message":"add dir parser"},{"commit":"9559c85057308e8815d4654bbe0062a5858c0b2b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":0,"files":["jc/utils.py","tests/test_utils.py"]},"message":"add windows dir format"},{"commit":"c5c020f5654038dacba542be3784a35d7333cbcc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/parsers/dir.md"]},"message":"add /S option"},{"commit":"95ec79bceb3d0c4245e36b7b16cfda6e16b01197","merge":"8f8be8a 5b60c74","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #107 from rasheed-rd/add-dir-parser"},{"commit":"8f8be8aa33f0b708ebd9a35c6b288572443d7181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"add -1 option info"},{"commit":"5b60c7445a3f8bd2ae1587aa0ffaeaf093966f9a","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","stats":{"files_changed":5,"insertions":469,"deletions":400,"files":["docs/parsers/dir.md","jc/parsers/dir.py","tests/fixtures/windows-10/dir-S.json","tests/fixtures/windows-10/dir-S.out","tests/test_dir.py"]},"message":"Add support for /S and update documentation"},{"commit":"d9dbcc8b526c8de9c6d12ac580880fd606dc68cf","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","stats":{"files_changed":15,"insertions":149,"deletions":73,"files":["docs/parsers/dir.md","jc/parsers/dir.py","tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-Q.json","tests/fixtures/windows-10/dir-Q.out","tests/fixtures/windows-10/dir-dirs.json","tests/fixtures/windows-10/dir-dirs.out","tests/fixtures/windows-10/dir-files.json","tests/fixtures/windows-10/dir-files.out","tests/fixtures/windows-10/dir-mix.json","tests/fixtures/windows-10/dir-mix.out","tests/fixtures/windows-10/dir-raw.json","tests/fixtures/windows-10/dir.json","tests/test_dir.py"]},"message":"Add parent dir to structure. Add test cases. Remove support for /Q"},{"commit":"79bc525970b38dea68b4859ac5dd32fc681e5994","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"]},"message":"add codes field to schema"},{"commit":"9dae1091ddc6141694ebfdc5ae649582cb879ccd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"]},"message":"typo fix"},{"commit":"74d3ac686a69518c1048260e37a0245ff254ff57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":61,"deletions":0,"files":["tests/fixtures/ubuntu-18.04/dpkg-l-codes.json","tests/fixtures/ubuntu-18.04/dpkg-l-columns500.json","tests/fixtures/ubuntu-18.04/dpkg-l.json","tests/test_dpkg_l.py"]},"message":"add dpkg-l tests"},{"commit":"cf3cc636badcf4ae6db1e5ee5e57ca0331ee5b0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add dpkg-l parser info"},{"commit":"a720441e1d34771c5a54876cb7dd63fb8c9f408e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":54,"deletions":0,"files":["EXAMPLES.md"]},"message":"add dpkg -l example"},{"commit":"0a7ed0959df07e2f36d9ec3ca8c294cfdaf10396","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"]},"message":"rename err to error"},{"commit":"eb83c9b86dc6d1ff15efed30993071834b65a7d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":21,"files":["docs/utils.md"]},"message":"replace parse_datetime_to_timestamp with timestamp class"},{"commit":"5c0142dd19eee14f4f1c287f0543e29824f9ae70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":1797,"deletions":2,"files":["CHANGELOG","docgen.sh","docs/parsers/dpkg_l.md","jc/cli.py","jc/parsers/dpkg_l.py","jc/parsers/universal.py","tests/fixtures/ubuntu-18.04/dpkg-l-codes.out","tests/fixtures/ubuntu-18.04/dpkg-l-columns500.out","tests/fixtures/ubuntu-18.04/dpkg-l.out"]},"message":"add dpkg-l parser"},{"commit":"c326c8dc8356b55bba13864156adf30607205ece","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":18,"insertions":194,"deletions":1,"files":["jc/parsers/time.py","tests/fixtures/osx-10.14.6/time-l.json","tests/fixtures/osx-10.14.6/time-l.out","tests/fixtures/osx-10.14.6/time-lp.json","tests/fixtures/osx-10.14.6/time-lp.out","tests/fixtures/osx-10.14.6/time-p.json","tests/fixtures/osx-10.14.6/time-p.out","tests/fixtures/osx-10.14.6/time.json","tests/fixtures/osx-10.14.6/time.out","tests/fixtures/ubuntu-18.04/time-p.json","tests/fixtures/ubuntu-18.04/time-p.out","tests/fixtures/ubuntu-18.04/time-verbose.json","tests/fixtures/ubuntu-18.04/time-verbose.out","tests/fixtures/ubuntu-18.04/time.json","tests/fixtures/ubuntu-18.04/time.out","tests/fixtures/ubuntu-18.04/time2.json","tests/fixtures/ubuntu-18.04/time2.out","tests/test_time.py"]},"message":"add TypeError to except block. add /usr/bin/time tests"},{"commit":"fc4082a03feb5645a1ad687908782a2584a58956","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":131,"files":["jc/utils.py"]},"message":"remove old parse_datetime_to_timestamp function"},{"commit":"c8655565ff8718f0f14d41696b81e6539529dde1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"]},"message":"use new timestamp class"},{"commit":"638f879f16c9e87edb60953f4fd0b1c7ad92f277","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/dig.py"]},"message":"use new timestamp class"},{"commit":"1d221bf7e6128d57bd769c0fe8f37f7a94da8cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/who.py"]},"message":"use new timestamp class"},{"commit":"60ea71f0ef931dccf09e6eb0cb737ddad0b47f0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/timedatectl.py"]},"message":"use new timestamp class"},{"commit":"d8bdd35a3f462efcdc871426309299e8aefb0a79","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/stat.py"]},"message":"use new timestamp class"},{"commit":"7463891c53f3670710dfa72ed1422431c274fe4a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/last.py"]},"message":"use new timestamp class"},{"commit":"7537aec76fa07384c4439f34c50d4e3f001c0dfa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":8,"files":["jc/parsers/date.py"]},"message":"use jc.utils.timestamp instead of jc.utils.parse_datetime_to_timestamp()"},{"commit":"62234e39a8533362a20f106c64326ed69f430006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":8,"files":["jc/parsers/upower.py"]},"message":"use jc.utils.timestamp instead of jc.utils.parse_datetime_to_timestamp()"},{"commit":"be004b7b3fe9217160c6418907e7d8aad10e5fae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":172,"deletions":15,"files":["jc/utils.py","tests/test_utils.py"]},"message":"make parse_datetime_to_timestamp function a class called timestamp for easier use"},{"commit":"82539444b24169b2eb762485ed032fc968a81f71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":23,"deletions":21,"files":["docs/parsers/time.md","jc/parsers/time.py"]},"message":"fix indentation for int and float conversions. add real_time field to schema"},{"commit":"a571d3cbafd5048d1d59070e1791398ae410197f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/time.md","jc/parsers/time.py"]},"message":"fix typo"},{"commit":"a038c14c23ea27264df61a38e0301de8d1fa1b9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":8,"deletions":8,"files":["EXAMPLES.md","docs/parsers/time.md","jc/parsers/time.py"]},"message":"change microseconds to centiseconds"},{"commit":"25a85d874cd2b57a7700b0c2dca61132127732b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iw_scan.py"]},"message":"update docs"},{"commit":"884c36ff42df4f580c8e2b4705def8e4c1182e39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":536,"deletions":1,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","docs/parsers/iw_scan.md","docs/parsers/time.md","jc/cli.py","jc/parsers/time.py"]},"message":"add /usr/bin/time parser"},{"commit":"b98e72b8b4eda0ab5ede7725226e61634af572eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add ls parser info"},{"commit":"05885c0096b5ee142ecff2d17e37c446518998a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":931,"deletions":18,"files":["docs/parsers/ls.md","jc/parsers/ls.py","tests/fixtures/ubuntu-18.04/ls-l-iso.json","tests/fixtures/ubuntu-18.04/ls-l-iso.out","tests/test_ls.py"]},"message":"add epoch and epoch_utc timestamps"},{"commit":"4c9761231af897658c3a2c0abcc476aa8b43d1b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":118,"deletions":81,"files":["CHANGELOG","EXAMPLES.md","README.md","docs/parsers/dig.md","jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json"]},"message":"add when_epoch and when_epoch_utc fields"},{"commit":"656eaa150861948091ef9d6323805c2698039bc6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"1560dcddcf82f55fffce22d1b46d372b25a9d0fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"]},"message":"add acpi, upower parsers and -v version option"},{"commit":"08d4cd4870c7acaf3a453d1400b64d77d462437b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":114,"deletions":43,"files":["EXAMPLES.md","docs/parsers/acpi.md","jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.json","tests/fixtures/generic/acpi-V2.json","tests/fixtures/generic/acpi-V3.json","tests/fixtures/generic/acpi-V4.json"]},"message":"add time calculations to acpi parser"},{"commit":"9767a50cededb140575e195abf79ce49c4f53789","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":48,"deletions":46,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/who.md","jc/parsers/who.py","jc/utils.py","tests/fixtures/centos-7.7/who-a.json","tests/fixtures/centos-7.7/who.json","tests/fixtures/osx-10.14.6/who-a.json","tests/fixtures/osx-10.14.6/who.json","tests/fixtures/ubuntu-18.04/who-a.json","tests/fixtures/ubuntu-18.04/who.json","tests/test_utils.py"]},"message":"update who parser to add epoch naive timestamp"},{"commit":"cd86890ed1493644e391e52e33561e9a77631a51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"]},"message":"add website to info and use variables for version info"},{"commit":"ba0dd3b9ca98a042c772898302fcfe5fdc84f79a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["tests/test_utils.py"]},"message":"add parse_timedate_to_timestamp test for format 7300"},{"commit":"8d7fa07ffd50f38336a448eb506a76d9d4849a6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":11,"files":["tests/fixtures/centos-7.7/timedatectl.json"]},"message":"unformat json"},{"commit":"cade1bfe6e56b5926898b7204e911885efebd5a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":2,"files":["tests/fixtures/centos-7.7/timedatectl.json","tests/fixtures/ubuntu-18.04/timedatectl.json"]},"message":"update timedatectl tests for new epoch_utc field"},{"commit":"daec4ab0a7f572e872b27b043d51f68e5e06300f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":20,"deletions":4,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/timedatectl.md","jc/parsers/timedatectl.py","jc/utils.py"]},"message":"add epoch_utc field to timedatectl parser"},{"commit":"3c96bc319615c824a06c388e9e3c1d68a9bf4084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"]},"message":"version bump"},{"commit":"7f7d8d4bd6f37015b11bac60a7bd99e8d3eca108","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":0,"files":["docs/parsers/stat.md","jc/parsers/stat.py"]},"message":"update stat docs"},{"commit":"47263661a41987f334fd484e866e0aa8859cde5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":2,"files":["EXAMPLES.md"]},"message":"update stat example"},{"commit":"4c42a086d206919dfe4f1c0801fe4fb1027cb1cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":6,"files":["jc/utils.py"]},"message":"clean up debug code"},{"commit":"5d2541a5c4bc93f3943a491c76df7f8d4e2cf44b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/utils.py"]},"message":"remove auto c locale and use a manual format rule for windows and linux compatibility"},{"commit":"d91d170b49bfc88c0b2fb54475705c038172f1c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/utils.py"]},"message":"try manual c locale format for windows"},{"commit":"6d1f4584a9ccd0f0f7ed4fdf408576a9e7f5046b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"]},"message":"try manually setting time format for windows compatibility"},{"commit":"1d76d96bcf4185cffb7066bec637913099399db5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/utils.py"]},"message":"debug windows issue"},{"commit":"e8847c998c91131acf5ee0f6485e9976c0fce3ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["tests/fixtures/centos-7.7/stat.json","tests/fixtures/freebsd12/stat.json","tests/fixtures/osx-10.14.6/stat.json","tests/fixtures/ubuntu-18.04/stat.json"]},"message":"update stat tests"},{"commit":"da88e49bae2f3fecff623f52c20bf994b653583e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":69,"deletions":29,"files":["docs/parsers/stat.md","jc/parsers/stat.py"]},"message":"add new examples"},{"commit":"65c3a12e5422782df40489c3c431677f5657dbf5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":35,"deletions":24,"files":["jc/parsers/stat.py","jc/utils.py"]},"message":"simplify None data scenario"},{"commit":"d8d600cc36bde4e6216b935f87a765599e896714","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"add reference to -h for help"},{"commit":"507999b117b024fed1ccf067bd5dc411dbeb268c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":34,"deletions":19,"files":["docs/utils.md","jc/utils.py","tests/test_utils.py"]},"message":"add stat command timestamp detection"},{"commit":"8ad164eb340e135eeeb10b721172916182f37e30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_cli.py"]},"message":"fix tests for compact output"},{"commit":"a507df140b245b83b1c46e8462b44e1145c42f2a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add compact json info"},{"commit":"8912a99986a977ee6ca7bbe2368f5033644577b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/cli.py"]},"message":"make default json output more compact"},{"commit":"1953f9882890cd0e8c515d43ce28c96f918b0ab4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"]},"message":"add version info. add json now supports unicode output"},{"commit":"7515218ddd2cdcfcebd67850140e842f2f121226","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":10,"deletions":14,"files":["jc/cli.py","jc/utils.py"]},"message":"use jc.utils for all warning and error messages. simply error and warning formatting."},{"commit":"36c11201366cefedee4244fb71a4a9cc6507e6ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"formatting"},{"commit":"8fa0fe64d8418093c7f28cdc70a7f409956aeb04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"]},"message":"add -v to helptext. minor formatting"},{"commit":"c1a8201b140c65579ff9f8427322b67653bf3006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["EXAMPLES.md"]},"message":"add copyright"},{"commit":"398bbac48c8a716b1872843d671aa6ceaeba6a78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"simplify return value for parse_datetime_to_timestamp()"},{"commit":"ea71a42bbdd9b09a457727cfe763054625f7901a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/cli.py"]},"message":"formatting"},{"commit":"1c16d25b17a7282a62a5ebd9755df5569c57435f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":30,"deletions":9,"files":["README.md","jc/cli.py"]},"message":"add version option (-v) and copyright information. add 'ensure_ascii=False' to json dumps to properly show UTF-8 copyright character"},{"commit":"9d12ded889f656656267cbf7a91d71267201f736","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"help description change"},{"commit":"5312701515ecb3a10598bb9dcf2f73b7eae71b93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add - make all external python requirements optional"},{"commit":"808c7bc0a94ecfd160ee2b257e5feec347829a5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/xml.py"]},"message":"make xmltodict library optional"},{"commit":"4d394015f458f284d052ce2c1a0c8492916c5b3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/yaml.py"]},"message":"make ruamel.yaml library optional"},{"commit":"3638298af8ebc01d54aa3ab5668d0adedca957e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":53,"deletions":44,"files":["jc/cli.py"]},"message":"make pygments library optional"},{"commit":"5f00973e400629bd68c0ab60ed9005410278f855","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/date.py"]},"message":"remove parenthesis to normalize text for naive timezone detection"},{"commit":"0f6e2c14fcb69f664c29083ec5207326f842dfdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/parsers/upower.py"]},"message":"simplify timestamp failure logic"},{"commit":"51813da61994226ba40478825d47f80c23413349","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":4,"files":["jc/parsers/date.py"]},"message":"add offset timezones. fix timestamp logic on conversion failure"},{"commit":"e7751322ea195cac7f1921ba8e0364c442065d20","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/iw_scan.py"]},"message":"formatting"},{"commit":"26ef29843784ade3d55410be13300dd6f4c06890","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":6,"files":["jc/utils.py"]},"message":"change return to always include the entire object but all keys may be None if conversion fails"},{"commit":"badaf8ce73d7deb0ec2be244e27b4bf8cddbea19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":14,"files":["jc/utils.py"]},"message":"comment formatting"},{"commit":"b123a622039f3cc32643a3bfc0766154d660f8bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/utils.py"]},"message":"move locale change formats to the end of the list"},{"commit":"cfd77e42522aa2ebeada9f45ac99bd1d3414f782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/utils.py"]},"message":"reset locale to None on exception"},{"commit":"38f814072eac5370059f1b4203316eee41cf535b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":8,"files":["jc/utils.py"]},"message":"better normalization of datetime string. better UTC detection. More formats supported with detected locale."},{"commit":"a0db7754e384a0c95f2099bf894f3a22bd33c002","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add nixos install info"},{"commit":"f07620afc7dc0d0d605eb483ef36c5979b33cdfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":18,"deletions":7,"files":["README.md","jc/__init__.py","jc/cli.py"]},"message":"move version to jc.__init__.py\nadd -h option for help instead of always showing on error\nuse jc.utils.error_message for the following errors: missing/incorrect arguments, parser not found, missing piped data"},{"commit":"c1b0d27752726989c6051f683a1194941bee598c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":10,"files":["runtests.sh"]},"message":"remove old commented commands"},{"commit":"430a5108aa265d4df0e4584eade54759da864c61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":19,"deletions":60,"files":["runtests.sh","tests/test_last.py","tests/test_last2.py"]},"message":"move all tests to github actions"},{"commit":"111ce92fc9c33b82c7d1a1664dda046ea5993f6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":0,"deletions":1,"files":["tests/{localtest_date.py => test_date.py}","tests/{localtest_last.py => test_last2.py}","tests/{localtest_upower.py => test_upower.py}","tests/test_utils.py"]},"message":"attempt all tests in github actions with timezone correction"},{"commit":"c851e8a58d98b2a4907cf1e7cf7c7d8d8dc04dc6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_utils.py"]},"message":"force github action"},{"commit":"39f4bcd9b41450068903ea2843508586eccdf709","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"Change Windows timezone"},{"commit":"4a610c4c81493788b8351e8c74aabe819c981c02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["tests/test_utils.py"]},"message":"force github action"},{"commit":"89ee11945d4e2db107a33ef0d61e0c6015ac8ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"Change timezone provider"},{"commit":"dadb09b74a69d1852f8433e0e32ccdd67bd91181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_utils.py"]},"message":"force github action"},{"commit":"1b1f638b97dc5e6f2767183eb363b79ae3c9b3c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":[".github/workflows/pythonapp.yml"]},"message":"Change timezone change provider"},{"commit":"794fc4ed44d1565514303090403d68ba5d639cb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":36,"deletions":8,"files":["jc/utils.py","tests/test_utils.py"]},"message":"add parse_datetime_to_timestamp() tests"},{"commit":"72f735bf9211d7beddcf58819fe465722f5d7c5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":[".github/workflows/pythonapp.yml"]},"message":"Set Timezone to America/Los_Angeles"},{"commit":"912877f25ad562ed4cafe7b2d7446bd48b477ea2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"additional timezone info"},{"commit":"2772c5ae436ea437d833003372d53a3d3f955ea0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"a7ad24d2cb61d84cf2846f8fa43af31f0597043e","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","stats":{"files_changed":13,"insertions":772,"deletions":0,"files":["docgen.sh","docs/parsers/dir.md","jc/cli.py","jc/parsers/dir.py","tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-C.out","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-ODTC.out","tests/fixtures/windows-10/dir-Q.json","tests/fixtures/windows-10/dir-Q.out","tests/fixtures/windows-10/dir.json","tests/fixtures/windows-10/dir.out","tests/test_dir.py"]},"message":"Add dir parser"},{"commit":"a364a6a9faeb6aa290b790f3dec74e92b8670534","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"]},"message":"add note regarding calculated timestamps"},{"commit":"7b2dc86a8d974e7984fe2540f56a66c2b9386acd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":19,"files":["EXAMPLES.md"]},"message":"update last example with new timestamp fields"},{"commit":"ad645636d07d0423253f19068a22b2a28251b05f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":86,"deletions":50,"files":["CHANGELOG","EXAMPLES.md","README.md","docs/parsers/uptime.md","jc/parsers/uptime.py"]},"message":"update uptime docs"},{"commit":"2f2f297b29fbe3172647a81db084b3564a441d40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["tests/fixtures/centos-7.7/uptime.json","tests/fixtures/osx-10.11.6/uptime.json","tests/fixtures/osx-10.14.6/uptime.json","tests/fixtures/ubuntu-18.04/uptime.json"]},"message":"update uptime fixtures with new fields"},{"commit":"099ae3fde03f8157298f6b412bdddb8bd56da09a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":22,"files":["jc/parsers/uptime.py"]},"message":"fix issue when there is no data"},{"commit":"e9febe98ac5ec0e03791c5b6794446a2c3312fb1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["runtests.sh"]},"message":"add localtest partition lines for readability"},{"commit":"5fbd07cccf9fb697b996dcc3949eef5b1c09e655","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":59,"deletions":26,"files":["jc/parsers/uptime.py"]},"message":"rewrite of uptime parser including new fields"},{"commit":"5fed4698c2c1f1b7e05c5b4c51639f818e049b53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":6,"files":["docs/parsers/last.md","jc/parsers/last.py"]},"message":"update docs and version number"},{"commit":"ed7eb0983a4dfcc1d66a2957be3e10b2203d909e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/last.py"]},"message":"use parse_datetime_to_timestamp function instead of custom format string"},{"commit":"90c7e18e5fc5ea9fcf6157cc2656f47193d78411","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":11,"files":["EXAMPLES.md"]},"message":"update date example"},{"commit":"953ab5c3bd0c8b6eef29b717edaf1aa2380c2b93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":0,"files":["runtests.sh","tests/{test_upower.py => localtest_upower.py}"]},"message":"make upower tests local only"},{"commit":"699c97d8a07f7575454746159ac4d19981cd1a5c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add last parser info"},{"commit":"e4ca0de92a689ce93b91d86106a5da590226855a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":100,"deletions":0,"files":["tests/fixtures/generic/upower-i-c-locale.json","tests/fixtures/generic/upower-i-non-utc.json","tests/fixtures/generic/upower-i-utc.json",".../{upower-i-utc.out2 => upower-i-utc.out}","tests/fixtures/ubuntu-18.04/upower-d-clocale.json","tests/fixtures/ubuntu-18.04/upower-d.json","tests/fixtures/ubuntu-18.04/upower-i.json","tests/test_upower.py"]},"message":"add upower tests"},{"commit":"04745a36b84cc79e56bde2a0e92a4ee9ab4a1538","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":5,"files":["CHANGELOG","jc/utils.py"]},"message":"doc update"},{"commit":"5936940532b8b753e67c9f5cd9287f34cc84ae9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":136,"deletions":186,"files":["docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date-after-midnight.json","tests/fixtures/generic/date-before-midnight.json","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/fixtures/ubuntu-20.04/date2.json"]},"message":"rewrite of date parser using datetime library"},{"commit":"b3eb064b6753d6e894884e1c16054630c2396fe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"]},"message":"clarify format definition comments"},{"commit":"e4b41057e302074ac2a81ad8c36b6f95cd6b7db2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":24,"deletions":0,"files":[".../{upower-i.out => upower-i-c-locale.out}","tests/fixtures/generic/upower-i-non-utc.out",".../generic/{upower-i2.out => upower-i-utc.out2}"]},"message":"update upower fixture names"},{"commit":"1d41c46cc762ab0c78b819e56db7df39f1111d5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":34,"deletions":5,"files":["jc/utils.py"]},"message":"normalize datetime string to remove all timezones except UTC"},{"commit":"a5c444587b3f0874fcc2833dc4e759c2dc1c7834","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":28,"deletions":0,"files":["tests/fixtures/generic/date-after-midnight.json","tests/fixtures/generic/date-after-midnight.out","tests/fixtures/generic/date-before-midnight.json","tests/fixtures/generic/date-before-midnight.out","tests/localtest_date.py"]},"message":"add before and after midnight date tests"},{"commit":"a56f471be980be16e73d3a91e2b12aad26c6d38c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/fixtures/generic/upower-i2.out"]},"message":"update fixture to use UTC for better testing"},{"commit":"6a6b26ed8d97014c2a5c7d91a4cd9b23f49530fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/date.py"]},"message":"fix 12 to 24 hour conversion for midnight cases"},{"commit":"f62446c152d89f2d37b22ffe9d9de5b5c9fa7049","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":10,"files":["jc/utils.py"]},"message":"rename variables. add another european time format"},{"commit":"56011f1f172344cab2a8e869e7a6df6e45c45874","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":73,"deletions":6,"files":["EXAMPLES.md","docs/parsers/upower.md","jc/parsers/upower.py"]},"message":"updated upower examples"},{"commit":"6d44091c80318fde6c09cd850e6dc5afde7fe799","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":53,"files":["jc/utils.py"]},"message":"refactor parse_datetime_to_timestamp()"},{"commit":"440c458eb42925dffe2d7b026279468fa2fa1bb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"no need for ternary clause"},{"commit":"798250af6116441385339806c8f26bc9720ad302","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":18,"deletions":24,"files":["docs/parsers/upower.md","jc/parsers/upower.py"]},"message":"use jc.utils.parse_datetime_to_timestamp() function for timestamp creation"},{"commit":"c762de29c6491790908451aa20f6aa12fdfa9722","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":32,"deletions":2,"files":["docs/utils.md","jc/utils.py"]},"message":"doc updates"},{"commit":"0701e65e97165efd40ab2ae5087897de3588ea32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":106,"deletions":0,"files":["jc/utils.py"]},"message":"add parse_datetime_to_timestamp() function"},{"commit":"209d54e8b5be6476d896cee1a5274bd2b46219e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/parsers/date.md","jc/parsers/date.py"]},"message":"add hour_24 to schema docs"},{"commit":"2b38462de7d2fa61dd5d2a184e853279f1a9c84b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":33,"deletions":27,"files":["EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py"]},"message":"update examples"},{"commit":"1e8e5533162cb01053ee25e9dbc709a429e58070","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":31,"deletions":14,"files":["CHANGELOG","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/fixtures/ubuntu-20.04/date2.json","tests/localtest_date.py"]},"message":"add hour_24 field"},{"commit":"ab42e6bb15026d6c46e15197c62bc3e8ef95c80d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/date.md","jc/parsers/date.py"]},"message":"formatting"},{"commit":"680288454090f3c48c7f0580cdcb919c0b5a883e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["docs/parsers/date.md","jc/parsers/date.py"]},"message":"ensure period is always uppercase in dict value. update period documentation"},{"commit":"7cb8577b9655f258f2910e7e7bcf3266d4cbece0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":70,"deletions":48,"files":["docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/ubuntu-20.04/date2.out"]},"message":"correct epoch_utc calculation. Fix for 12 hour vs. 24 hour representation"},{"commit":"55810ccd1f17ef6a4b1cb72fc21f6cf990ef8bb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/upower.py"]},"message":"set epoch_dt conversion again if not C locale"},{"commit":"f9921720cd0b9b0d76d66e6eb5bfe43481f5f52b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":4,"deletions":94,"files":["runtests.sh","tests/test_date.py","tests/test_last2.py"]},"message":"revert to local testing for naive datetime objects"},{"commit":"cda1ebd271aa8fd1b716054a2149f876d8087230","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["tests/test_date.py","tests/test_last2.py"]},"message":"try tzset()"},{"commit":"6901e4a23aad0b58cbbfac86c61917115d115dfe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":89,"deletions":3,"files":["runtests.sh","tests/test_date.py","tests/test_last2.py"]},"message":"try setting timezone env variable before tests to ensure it is the same on all test systems"},{"commit":"6bc21d3c735edc7897e49afd2a5ea9e3aa56d7fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["runtests.sh","tests/{test_date.py => localtest_date.py}","tests/localtest_last.py"]},"message":"fix date parser tests - local tests only since timezones may not match on github actions VMs"},{"commit":"1ef231e26a2898d2a01f341fb92014df92703f72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"add date parser updates"},{"commit":"3cd43f0f985a3b8a4e74bf5632bd8dac92d751c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/upower.md","jc/parsers/upower.py"]},"message":"formatting"},{"commit":"156501996688e62dd61a8456206218582a6cbe1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":85,"deletions":63,"files":["EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json"]},"message":"fix weekday numbering to be ISO 8601 compliant. Add naive calculated epoch timestamp field"},{"commit":"0a4de2d3a1c235d1ac2d6e59346e77761fe51885","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":2,"files":["docs/parsers/last.md","docs/parsers/upower.md"]},"message":"add naive datetime calculation info to docs"},{"commit":"a058f6c174e31f5e6040883bb544b83abd88c749","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/last.py"]},"message":"added naive epoch calculation info to docs"},{"commit":"d8e5d03b01a87704424f5259cf6bd977274fd6ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":33,"files":["jc/parsers/upower.py"]},"message":"naive updated_epoch timestamp calculation added"},{"commit":"9dc62eff2eaaafec89c5b8797d8ca8e4c77a07d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":34,"deletions":21,"files":["jc/parsers/upower.py"]},"message":"remove epoch conversions"},{"commit":"d4fea17c57a97d6914624b06208b9439bf2eb05f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":13,"deletions":6,"files":["docgen.sh","docs/parsers/upower.md","jc/parsers/upower.py"]},"message":"use UTC when calculating epoch timestamp. reset time locale to default after changing"},{"commit":"3dd7a5b77ea708047bc12be9f2caddd9078723f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":230,"deletions":0,"files":["docgen.sh","docs/parsers/upower.md"]},"message":"add upower docs"},{"commit":"d77c90a3ba2036b216f4a612876ace988eafd217","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":114,"deletions":6,"files":["jc/parsers/upower.py"]},"message":"fix quoted values in detail level. Add examples"},{"commit":"01f0c20df09fd4aa12bd108928b97376b51ef31a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":0,"files":["tests/fixtures/ubuntu-18.04/upower-d-clocale.out"]},"message":"add sample using C locale timestamp"},{"commit":"aafbe576b3b754de91591d9ec2dae9e9f827dee4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":137,"deletions":36,"files":["jc/parsers/upower.py"]},"message":"working parser and processor"},{"commit":"bd68ad40345fb1f69be0e0f87dc67134f826cd06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/upower.py"]},"message":"don't modify detail_type value since it is no longer a key"},{"commit":"bfee017c138bb30ec6af836685013b7124028974","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":61,"deletions":20,"files":["jc/parsers/upower.py"]},"message":"made the schema more explicit by hardcoding more items. still working on the schema"},{"commit":"61f532cfd0b7fbf14a58a0fd638bcbfb03fbde72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["jc/parsers/upower.py"]},"message":"working history list"},{"commit":"58dbbb75b607d0b29be185c3b8c3f0d8af21ecad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":21,"files":["jc/parsers/upower.py"]},"message":"simplified logic"},{"commit":"8d88b91fcf5060d7d54f687efec3e3a606bab767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/upower.py"]},"message":"move if statements and generalize the history detail detection"},{"commit":"ad39fc60299089f56f37baac71820e50cbe87ed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":268,"deletions":0,"files":["jc/cli.py","jc/parsers/upower.py","tests/fixtures/generic/upower-i.out","tests/fixtures/generic/upower-i2.out","tests/fixtures/ubuntu-18.04/upower-d.out","tests/fixtures/ubuntu-18.04/upower-i.out"]},"message":"working upower parser. history lines are ignored"},{"commit":"89f1fd96e6b7aa0acf6272e4f3469005d4f7c6bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":87,"deletions":0,"files":["tests/fixtures/generic/acpi-V.json","tests/fixtures/generic/acpi-V2.json","tests/fixtures/generic/acpi-V3.json","tests/fixtures/generic/acpi-V4.json","tests/fixtures/ubuntu-18.04/acpi-V.json","tests/test_acpi.py"]},"message":"add acpi tests"},{"commit":"bd425f2493b68949c1fa02cd1d3289ec882d9b0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":321,"deletions":2,"files":["CHANGELOG","EXAMPLES.md","docgen.sh","docs/parsers/acpi.md","jc/cli.py","setup.py"]},"message":"version bump to v1.15.0. Add acpi docs"},{"commit":"46962ff02a0630766a927babc92e11ec91b1f789","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":11,"files":["jc/parsers/acpi.py"]},"message":"remove redundant lines"},{"commit":"e4cb88b05166815e8ad03b646bd3f2b1da7f0d4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/acpi.py"]},"message":"remove unneeded line-state assignment"},{"commit":"32840703dc1d88412712b08db1c9bdaebbc34450","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":39,"files":["jc/parsers/acpi.py"]},"message":"remove redundant code"},{"commit":"1f7aafd0415a79e0547cc6f1c008c1918f8fb460","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":19,"deletions":9,"files":["jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out","tests/fixtures/generic/acpi-V4.out"]},"message":"fix for full charge batter case. Clean up battery object logic"},{"commit":"7378d5dce43f75440cb57903e8ae0c1c615b0782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/acpi.py"]},"message":"remove comment"},{"commit":"84f76866cdf76f67b34de999fd987de8a02f0306","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":197,"deletions":3,"files":["jc/parsers/acpi.py"]},"message":"working process function"},{"commit":"322da9ea6a1ceea1152d720797adb8f3a7dc1199","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":59,"deletions":12,"files":["jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out"]},"message":"working parser"},{"commit":"58645301ec111bfeb2a618f5f169cc734042dc5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":236,"deletions":1,"files":["jc/cli.py","jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out","tests/fixtures/generic/acpi-V2.out","tests/fixtures/generic/acpi-V3.out","tests/fixtures/ubuntu-18.04/acpi-V.out"]},"message":"add acpi command parser"},{"commit":"1e18dd30a824b0463f0cad86e0da7094c47d34f9","merge":"20f9b7f cc6a19a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #102 from kellyjonbrazil/dev"},{"commit":"cc6a19adccea3e10243a166b87d852b6f95414b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/yaml.py"]},"message":"fix typo in comments"},{"commit":"2a5588b177a24d5b78a4b5a515aba515804b7baa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":13,"deletions":3,"files":["CHANGELOG","jc/cli.py","jc/parsers/yaml.py","setup.py"]},"message":"packaging fix for yaml parser and pyoxidizer"},{"commit":"20f9b7f88b97ed68aba46e102b8c7b72443b9c85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"fix typo"},{"commit":"d7e32313cd9776b4a6af38cc2819d6e4ef8c0d55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"fix typo"},{"commit":"fb5654d3c4549e84940e2518f2d214debdd42d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"258f1433b36a7ee117ac43953edb4fe964603e7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]},"message":"add locale info to readme"},{"commit":"fb723ae8bd7bb51f9a4bab380ec1bc54cda0445b","merge":"87b506d 283b89e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #101 from kellyjonbrazil/dev"},{"commit":"283b89e37c38a3082203e43e38569c8b0bb11e12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["CHANGELOG","jc/parsers/dig.py"]},"message":"simplify answer data logic"},{"commit":"f450f9eb8b7d382af316e88301e72af01a018be9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":74,"deletions":0,"files":["tests/fixtures/centos-7.7/hciconfig-a.json","tests/fixtures/centos-7.7/hciconfig.json","tests/fixtures/ubuntu-20.04/hciconfig-a.json","tests/fixtures/ubuntu-20.04/hciconfig.json","tests/test_hciconfig.py"]},"message":"add hciconfig tests"},{"commit":"b3f8cf99a4874335c6b43e105e0c1562c08256dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":15,"deletions":15,"files":["jc/parsers/hciconfig.py"]},"message":"work for both tabs and spaces"},{"commit":"4301ea8caea7c14f59bcddf09668d0198e1115a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/hciconfig.py"]},"message":"remove debug line"},{"commit":"c672d1c174a42ce44544dfaec0ebcf3c30fd7acf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":903,"deletions":22,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","docs/parsers/hciconfig.md","jc/parsers/hciconfig.py","man/jc.1"]},"message":"initial working hciconfig parser"},{"commit":"229e953a38471cdd41af0810577d324329840a4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":205,"deletions":2,"files":["jc/cli.py","jc/parsers/hciconfig.py","setup.py","tests/fixtures/centos-7.7/hciconfig-a.out","tests/fixtures/centos-7.7/hciconfig.out","tests/fixtures/ubuntu-20.04/hciconfig-a.out","tests/fixtures/ubuntu-20.04/hciconfig.out"]},"message":"initial add of hciconfig parser"},{"commit":"87b506dc9b4831d11b4fd04fd6849532db074f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":47,"deletions":4,"files":["CHANGELOG","jc/cli.py","jc/parsers/dig.py","setup.py","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/generic/dig-answer-spaces.out","tests/test_dig.py"]},"message":"fix for spaces in dig answer data"},{"commit":"15c9002d9eff0f52d873fb3ab35dfafd03a8e919","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"simplify logic by taking out 'not' in JC_COLORS parsing"},{"commit":"042aaa61b96fc8472a8a460c49bde4cbbc359094","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"minor updates"},{"commit":"ef856c6ba5774cd8ec23acd71496846e794e3872","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"clarify -q option"},{"commit":"9cf5be73e3f975132d1ffbef412638b941a5664f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]},"message":"typo fix"},{"commit":"63fc149e2a097cbde60c2ce1aeb102d9becabd9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]},"message":"typo fix"},{"commit":"3c25839350800c7e7d2c48fc032bb21efa0ac213","merge":"03c0295 58246e3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #98 from kellyjonbrazil/dev"},{"commit":"58246e33b71bae0ca4a42ad5bdf31134948b1014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","README.md"]},"message":"update compatibility info and changelog date"},{"commit":"8b1407c7068e2105a83992bbb026138ea67bc07c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":59,"deletions":10,"files":["runtests.sh","tests/localtest_last.py","tests/test_last.py"]},"message":"pull env-specific tests from CI/CD and run locally only"},{"commit":"2fde4a4e2299b98a9958e3a55849c6791e4b17dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["EXAMPLES.md","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]},"message":"doc updates"},{"commit":"60b9e9798286121399d0f8b75d63ab0f3312c9bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":80,"deletions":38,"files":["docs/parsers/last.md","jc/parsers/last.py","tests/fixtures/centos-7.7/last-crash.json","tests/fixtures/centos-7.7/last-w.json","tests/fixtures/centos-7.7/last-wF.json","tests/fixtures/centos-7.7/last-wF.out","tests/fixtures/centos-7.7/last.json","tests/fixtures/fedora32/last.json","tests/fixtures/osx-10.14.6/last.json","tests/fixtures/ubuntu-18.04/last-w.json","tests/fixtures/ubuntu-18.04/last.json","tests/fixtures/ubuntu-20.04/last-F.json"]},"message":"last parser enhancements: augment hostname with CONSOLE for GUI login, add convenience fields when -F is used: login_epoch, logout_epoch, duration_seconds, calculate duration to hours:minutes"},{"commit":"0adac79c0f2a22b31dfef1432a029af06132467b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"Add last parser enhancements"},{"commit":"9f485b5981a2ce49ac699b9dad39993c5605ae18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["jc/parsers/iw_scan.py","tests/fixtures/centos-7.7/iw-scan0.json","tests/fixtures/centos-7.7/iw-scan1.json"]},"message":"change mac_address fieldname to bssid. Add credit to Phillip"},{"commit":"db17d21b8f9b2f899760e648f1483d33d0bcf47a","merge":"5885b96 996d394","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #97 from pschmitt/iw_scan_fix_space_detection"},{"commit":"996d394e89c732f327323ca340fce405bd5fb2e4","author":"Philipp Schmitt","author_email":"philipp@schmitt.co","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/iw_scan.py"]},"message":"iw_scan: Improve detection of lines starting with spaces"},{"commit":"5885b960f9b33a95ecec9f4a33233c2f8682fbc4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":2,"files":["CHANGELOG","README.md","man/jc.1"]},"message":"doc updates"},{"commit":"79987b35f332e287567e103f25cf91cb50e040c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"]},"message":"formatting"},{"commit":"661b3ef311ad26678030c70c11f2f955667311a4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":94,"deletions":2,"files":["EXAMPLES.md","README.md","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]},"message":"doc updates"},{"commit":"fb422726a8366c7133f0712d3b05a26620eea785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["tests/fixtures/ubuntu-20.04/last-F.json","tests/fixtures/ubuntu-20.04/last-F.out"]},"message":"update test to add 'down' condition"},{"commit":"4fb6f3ea59c52515926a51a006e65a1c18e57720","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/last.py"]},"message":"add support for down in addition to crash"},{"commit":"f78fe771e1c2fb4691858fa7f27b1febe5f8c6c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":48,"deletions":0,"files":["tests/fixtures/centos-7.7/iw-scan0.json","tests/fixtures/centos-7.7/iw-scan1.json","tests/test_iw_scan.py"]},"message":"add iw-scan tests"},{"commit":"567b8872538ac9f6b384b98741acd9794229d513","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":252,"deletions":12,"files":["docgen.sh","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]},"message":"doc updates"},{"commit":"e516e6b9466b29d40ec10070dd61551180eeef90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":29,"deletions":1,"files":["jc/parsers/iw_scan.py"]},"message":"fix country/environment fields and process int/float conversions"},{"commit":"62748676aae3d5955191ed267215df33a5bd3a4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":225,"deletions":0,"files":["jc/cli.py","jc/parsers/iw_scan.py"]},"message":"initial iw-scan parser"},{"commit":"7351c72e45242b9eb08c51dea7b6fccf12366dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":402,"deletions":1,"files":["jc/parsers/last.py","tests/fixtures/centos-7.7/last-crash.json","tests/fixtures/centos-7.7/last-crash.out","tests/fixtures/centos-7.7/last-wF.json","tests/fixtures/centos-7.7/last-wF.out","tests/test_last.py"]},"message":"add fixes and tests for entries that contain 'crash'"},{"commit":"2b7405c5e21db2488fc48b58f6c65cff947ca95d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":23,"deletions":16,"files":["CHANGELOG","README.md","docs/parsers/last.md","jc/parsers/last.py","man/jc.1"]},"message":"doc updates"},{"commit":"e2c77cb935a5bd95dbe930d424e5a02e88e1fa76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":15,"deletions":1,"files":["jc/parsers/last.py","tests/fixtures/ubuntu-20.04/last-F.json","tests/test_last.py"]},"message":"add test for last -F output"},{"commit":"7ac621e4c916373a03f379425033cb2d81a03578","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":36,"deletions":6,"files":["docs/parsers/last.md","jc/parsers/last.py","tests/fixtures/ubuntu-20.04/last-F.out"]},"message":"add -F support"},{"commit":"d8b5d6c66ced19dc16f2b4975d2293a903732ffe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/cli.py","setup.py"]},"message":"version bump to 1.14.1"},{"commit":"22b461eb4b1ca86ea9e8c1fde8a2c312d1526b5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":47,"deletions":12,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/test_date.py"]},"message":"Add period field for en_US.UTF-8 locale"},{"commit":"b37ee8555a2a108625a834a7990bc3320e79b08d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update"},{"commit":"1d0ad2f045733c5c690738d49951fdb9bcd3d66d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":123,"insertions":312,"deletions":312,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat_freebsd_osx.py","jc/parsers/netstat_linux.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"doc fixes"},{"commit":"ceccfb2c815f57f1b6fd81f891d8b495de23f9f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":2036,"deletions":0,"files":["tests/fixtures/centos-7.7/iw-scan0.out","tests/fixtures/centos-7.7/iw-scan1.out","tests/fixtures/ubuntu-20.04/date.out"]},"message":"add test output for iw-scan and date on ubuntu 20.04"},{"commit":"03c02953cd7e3327b391f799c37a2990eb2cb24c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":96,"deletions":0,"files":["docgen.sh","docs/parsers/wc.md"]},"message":"add wc doc"},{"commit":"f254a0eaa16fcda316f7a75424ee359058204b03","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump"},{"commit":"9e3b88727cd439e15f235dddb9dd5796e010797a","merge":"439871e b122174","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #91 from kellyjonbrazil/dev"},{"commit":"b12217466e906829d19be4cfd80dfe7cf4008e57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"spelling"},{"commit":"8b9c932f9b05295e63b3e7d0073f243458fd4dd9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"update date"},{"commit":"5986ce03db6fcd1aa0f7b064eaa96c2120c06d2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add printenv info"},{"commit":"a7b0e936e400d2f9e55629e2d722cc002e035e9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"add vdir and printenv info"},{"commit":"cb0221142455a6bcb904fbe9ade657be45815b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":61,"deletions":2,"files":["jc/parsers/wc.py","tests/fixtures/osx-10.14.6/wc-stdin.json","tests/fixtures/osx-10.14.6/wc-stdin.out","tests/test_wc.py"]},"message":"add wc tests"},{"commit":"bd443bf39227515ae5f8df65d07b30268dcc90a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/env.py"]},"message":"add printenv to env docs"},{"commit":"1f547edd361e66b19ccbcb59f6ba0ae78f6080ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/env.md"]},"message":"add printenv to env docs"},{"commit":"e4bac3a493705b09e301ddc90dd1b0cee7467c3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":378,"deletions":0,"files":["CHANGELOG","EXAMPLES.md","README.md","jc/cli.py","jc/parsers/wc.py","tests/fixtures/centos-7.7/wc.json","tests/fixtures/centos-7.7/wc.out","tests/fixtures/osx-10.14.6/wc.json","tests/fixtures/osx-10.14.6/wc.out"]},"message":"add wc parser"},{"commit":"5e6bfa681aff03fbd683f81a9f4daa56b49d1344","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["README.md","docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"add vdir info"},{"commit":"276160125e01553c75eaad68530177bcf4f9004d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"]},"message":"add new commands to README"},{"commit":"d4ae5543f2d5f28a0db5b8e2e19993c21c5d960c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":39,"deletions":0,"files":["tests/fixtures/centos-7.7/hash.json","tests/fixtures/centos-7.7/hash.out","tests/test_hash.py"]},"message":"add hash tests"},{"commit":"55f360e267fdfcfef0c124ed6b88535cc181a8b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":260,"deletions":0,"files":["CHANGELOG","EXAMPLES.md","docgen.sh","docs/parsers/hash.md","jc/cli.py","jc/parsers/hash.py"]},"message":"add hash command parser"},{"commit":"fdedab2a0cf5af15df5803d87302397dd6d71741","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/cksum.py","jc/parsers/hashsum.py"]},"message":"description updates"},{"commit":"a9be42e3031ab0d697cff67a9e384caa2265a3ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"specify parser warnings for quiet option"},{"commit":"6da9510e46e84ec1cb93384825184d2996cf0e08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":482,"deletions":0,"files":["tests/fixtures/centos-7.7/cksum.json","tests/fixtures/centos-7.7/cksum.out","tests/fixtures/centos-7.7/sum.json","tests/fixtures/centos-7.7/sum.out","tests/fixtures/osx-10.14.6/cksum.json","tests/fixtures/osx-10.14.6/cksum.out","tests/fixtures/osx-10.14.6/sum.json","tests/fixtures/osx-10.14.6/sum.out","tests/test_cksum.py"]},"message":"add cksum tests"},{"commit":"0431798178740b03cdefececc6df958e5adf62fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":229,"deletions":3,"files":["CHANGELOG","docgen.sh","docs/parsers/cksum.md","docs/parsers/hashsum.md","jc/cli.py","jc/parsers/cksum.py","jc/parsers/hashsum.py"]},"message":"add cksum parser"},{"commit":"62432f3c484e74acb2b2dfd15d448b3f1b5d53c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/hashsum.py"]},"message":"update hashsum description"},{"commit":"9fbbc30906b597e6afaf2030015a7a694d85f79e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":0,"files":["docs/parsers/hashsum.md","jc/parsers/hashsum.py"]},"message":"add supported commands to docs"},{"commit":"d1567d1f622902053f3df58645b4e39532e0c30a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":104,"deletions":0,"files":["CHANGELOG","docgen.sh","docs/parsers/hashsum.md"]},"message":"add hashsum documentation"},{"commit":"6ca1f5970b3a518615a54ee7fcbc1bddab2db331","merge":"1c880b9 3b7d54c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"1c880b9e24ca53cd592cec1dbc52301308290fb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_hashsum.py"]},"message":"force git tests"},{"commit":"3b7d54c720dfc93637328cf06eb10a85447c8793","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"add python 3.9"},{"commit":"44a740605705bd0ecfde2a6bcc7a826e1010dcf0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":87,"deletions":0,"files":["tests/fixtures/centos-7.7/md5sum.json","tests/fixtures/centos-7.7/sha256sum.json","tests/fixtures/centos-7.7/sha384sum.json","tests/fixtures/osx-10.14.6/md5.json","tests/fixtures/osx-10.14.6/shasum.json","tests/test_hashsum.py"]},"message":"add hashsum tests"},{"commit":"8157dcfdb1868548b7c8ca692e6be25f80bb2c2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":36,"deletions":11,"files":["jc/parsers/hashsum.py"]},"message":"fix for files with spaces in the name"},{"commit":"28762aea15cabc9cd8293d725e7f1f0550f8e15d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":524,"deletions":0,"files":["jc/cli.py","jc/parsers/hashsum.py","tests/fixtures/centos-7.7/md5sum.out","tests/fixtures/centos-7.7/sha256sum.out","tests/fixtures/centos-7.7/sha384sum.out","tests/fixtures/osx-10.14.6/md5.out","tests/fixtures/osx-10.14.6/shasum.out"]},"message":"add hashsum parser"},{"commit":"439871ea9f6b055a407e1faaf47e4f56d1829501","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add ubuntu"},{"commit":"c9180b005c0547c8cbfe4809e66894f1123b0809","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"b14e0725f86853f0113116b1c06f54aaa563f365","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add ansible plugin blog post link"},{"commit":"70fe3dcb4d5b97aba1d6c6dcd5088fecb27af181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"8c554604a42a3ea7ca9131b65c64fd3ceb95f906","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"formatting"},{"commit":"a0a35454bd2831c116cb598c686150b883412f94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add link to the web demo"},{"commit":"e8467e2af5b0c3f14832a9e6d4a96f219c27f3f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"remove extra space"},{"commit":"7515deb5669ef04623e9cbf58653b30c99a96430","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add ansible install command"},{"commit":"ed9e52af241b609ee7f5d1b835c9f6c5306cd3c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"spelling"},{"commit":"592a3804104628c790997747a778b3b39d076dfe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]},"message":"add Ansible note"},{"commit":"1a458d2d5b4c16c0ad90671727ae9b19939e7f23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py"]},"message":"update link"},{"commit":"0e4cf53b92ff951a6390a4dacf8833c272473583","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/readme.md","jc/__init__.py"]},"message":"add parser docs link"},{"commit":"e2f06ccb33177173d984bc0cdda1aae1a3f4c681","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"formatting"},{"commit":"8abff004cd8e09529e5d94be4883308152e11565","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/yaml.md"]},"message":"indentation fix"},{"commit":"c4a0e2e3feb2e51eaaaa202064f352229017bcc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/yaml.py"]},"message":"fix indentation"},{"commit":"4f10f79c73f8b3d6edc2c83e6a12d0ddc1a78555","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":8,"files":["docs/parsers/uname.md","jc/parsers/uname.py"]},"message":"standardize doc"},{"commit":"69e7a560fd82337570c4bb4aa4780f513c18bd94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":8,"deletions":0,"files":["docs/parsers/env.md","docs/parsers/history.md","jc/parsers/env.py","jc/parsers/history.py"]},"message":"add output info to docs"},{"commit":"59b105580805d78516abe1c1069d52a6f0a8131a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":97,"insertions":564,"deletions":269,"files":["docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"enhance docs"},{"commit":"6ed48c6289214fe5114971c80772efdf9ac1b8c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":16,"insertions":88,"deletions":37,"files":["jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py"]},"message":"enhance docs"},{"commit":"f2fb4d3f415fbc1c09eec6dedcf70fba78406b3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","jc/parsers/airport.py","jc/parsers/airport_s.py"]},"message":"improve docs"},{"commit":"6aeea59ea84e56434e87ddf89cd5d4435b99e140","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":8,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md"]},"message":"doc updates"},{"commit":"d016f3bbb307f85bd0f93a508323941a8bb9d872","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":8,"files":["jc/parsers/airport.py","jc/parsers/airport_s.py"]},"message":"improve documentation"},{"commit":"7131c297180bfa195d0209d46fc70ab8e67efe2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":114,"insertions":686,"deletions":116,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"add module usage info to docs"},{"commit":"7432442983841b42c8d3d2459b55596c05d1e100","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["docs/parsers/blkid.md"]},"message":"add usage"},{"commit":"5344883394a0662ee16bb5edd68df8e4410025f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"]},"message":"spelling/add ping parser update"},{"commit":"3fcd2f6c2e015b0e65e7261c8e591ccd8a7d0e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"f3d84bd5bf06349b681e9b72d904676e9f6bca19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":21,"deletions":3,"files":["CHANGELOG","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/fixtures/debian10/crontab-u.json","tests/fixtures/debian10/crontab-u.out","tests/test_crontab_u.py"]},"message":"tighten crontab and crontab-u parser variable detection"},{"commit":"549780c23220bca3bcab58d7329ba8d44d1be55d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"add debian/apt-get info"},{"commit":"2a6da69b82aa9ade6c01d490a32b57b415c62a9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ping.py"]},"message":"improve linux/bsd check"},{"commit":"5c538816cf76686bac1a86a7c06e24664d25a2dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":55,"deletions":4,"files":["CHANGELOG","jc/cli.py","jc/parsers/ping.py","setup.py","tests/fixtures/pi/ping-ip-O-D.json","tests/fixtures/pi/ping-ip-O-D.out","tests/fixtures/pi/ping-ip-O.json","tests/fixtures/pi/ping-ip-O.out","tests/test_ping.py"]},"message":"ping parser fix for raspberry pi"},{"commit":"7b8b378a7df397c488fc54fbd6e77f5f3f23c10c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"]},"message":"add pydoc-markdown version requirement"},{"commit":"e30a75e25c4b43969bf9f874f89e18512a5e3a34","merge":"dda517a 85ad5cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #76 from kellyjonbrazil/dev"},{"commit":"85ad5cfd0bfb903ce35e37b343244fed88dbd979","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"date change"},{"commit":"88b9d5068c5bac0691fedb543114300d6afc7131","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":74,"deletions":15,"files":["EXAMPLES.md","README.md","docs/parsers/date.md","tests/fixtures/generic/date.json","tests/fixtures/generic/date.out","tests/test_date.py"]},"message":"finish date parser"},{"commit":"f8c4948a090642db595eda2ba2ea0773e560ba67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/date.py"]},"message":"remove comment"},{"commit":"412322447f019aec0b64888631bc965e9f21186d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":48,"deletions":17,"files":["jc/parsers/date.py"]},"message":"add month_num and weekday_num fields"},{"commit":"d4f289e40fae621b87f0d49451fca4c3dde216b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/date.md","jc/parsers/date.py"]},"message":"documentation fixup"},{"commit":"e1f3feb8f529172ae26ce4c7a66a4a1c21b722ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":10,"files":["jc/parsers/date.py"]},"message":"cover empty data case in process"},{"commit":"37d3bc699c7be16955be06840d242980f05f1074","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":224,"deletions":1,"files":["CHANGELOG","docgen.sh","docs/parsers/date.md","jc/cli.py","jc/parsers/date.py","man/jc.1"]},"message":"add date parser"},{"commit":"672fd18016b8122510b6ab246b5675b7fd399b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"date bump"},{"commit":"bc2c23a2a09b96d34bb80f69fdc7751fb5ac3ed4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"version bump"},{"commit":"865f7e78124e382c6d315702fa6e48f2104cee46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["man/jc.1"]},"message":"add kv parser to man page"},{"commit":"720212b552e1bd2b9196dd5f06e4b3f85d463531","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":9,"files":["EXAMPLES.md"]},"message":"fixup traceroute example with new behavior"},{"commit":"d3be61f60837801d5a505dc2520cc80c874a6092","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]},"message":"version bump"},{"commit":"13418b16b8fd78fdd97ac045ec3fe9aa59d46080","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":2,"files":["docs/parsers/traceroute.md","jc/parsers/traceroute.py"]},"message":"doc update"},{"commit":"42d2017cd6f5ee1d1a92bd4958cd63366c1e715d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":18,"insertions":41,"deletions":24,"files":["CHANGELOG","jc/parsers/traceroute.py","tests/fixtures/centos-7.7/traceroute.json","tests/fixtures/freebsd12/traceroute.json","tests/fixtures/freebsd12/traceroute6.json","tests/fixtures/generic/traceroute1.json","tests/fixtures/generic/traceroute2.json","tests/fixtures/generic/traceroute3.json","tests/fixtures/generic/traceroute5.json","tests/fixtures/generic/traceroute6.json","tests/fixtures/generic/traceroute7.json","tests/fixtures/osx-10.14.6/traceroute-asn.json",".../fixtures/osx-10.14.6/traceroute-no-header.json","tests/fixtures/osx-10.14.6/traceroute-q.json","tests/fixtures/osx-10.14.6/traceroute.json",".../osx-10.14.6/traceroute6-mult-addresses.json","tests/fixtures/osx-10.14.6/traceroute6.json","tests/test_traceroute.py"]},"message":"traceroute updates: handle missing header row, add annotations, don't print timeouts as probes"},{"commit":"4345e76ead2a49ae0691077e9fbd2b6c5fdfd129","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"]},"message":"change to use --kv for key/value files"},{"commit":"741431322ba2677355c361fcd6095ed8cd0a4349","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":46,"deletions":24,"files":["tests/test_ini.py","tests/test_kv.py"]},"message":"update tests for kv parser"},{"commit":"980beaaf41a04891f7c2f5daeb1e3a23d3c7ec19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/ifconfig.py"]},"message":"fix docgen issue"},{"commit":"2205034e0906b333c259648f7a0e5392945f12ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":105,"deletions":31,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","jc/cli.py","jc/parsers/ini.py","jc/parsers/kv.py","setup.py"]},"message":"add kv parser"},{"commit":"82b9c87a66fce5d8626c56858a8c6f1f3326e7fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":58,"insertions":345,"deletions":62,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/readme.md","docs/utils.md"]},"message":"update docs"},{"commit":"dda517a937323b9888e081aea1032a9d63c4a6bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":163,"files":["README.md"]},"message":"shorten more examples"},{"commit":"4e6d283b9eddf7759b4dd37bd643394ff73febd4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":65,"files":["README.md"]},"message":"shorten netstat example"},{"commit":"55acab05aa740dfd7534304f2678b60942cad116","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["changelog.txt => CHANGELOG"]},"message":"change name to CHANGELOG"},{"commit":"ed38a18d236cdb991779f4f148e42359c139e61c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":86,"files":["README.md"]},"message":"remove more examples"},{"commit":"95b3c11203d3dd0627c5eeca39fe1d145bf2d733","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":124,"files":["README.md"]},"message":"remove more examples"},{"commit":"dce318f4fd44b9c4013211bf233020e84566ddb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1537,"files":["README.md"]},"message":"remove examples to reduce file size"},{"commit":"85127f0fb8096192b19fca1f4ffe38ee391351be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["jc/examples.md => EXAMPLES.md"]},"message":"move examples to root"},{"commit":"fb45058244ce879f12bbb5b7267b0fd63fef1d63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2640,"deletions":0,"files":["jc/examples.md"]},"message":"add examples file"},{"commit":"45bb5ae389a00ed6a132a65c69ce76c7e5976858","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"spelling"},{"commit":"339238ab364d8735892a11cb16a62a651edae169","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":79,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py","tests/fixtures/centos-7.7/route-6-n.json","tests/fixtures/centos-7.7/route-6-n.out","tests/fixtures/centos-7.7/route-6.json","tests/fixtures/centos-7.7/route-6.out","tests/test_route.py"]},"message":"version bump and add route -6 tests"},{"commit":"032cda8b3db096b690d2557e3b918c50c716c543","merge":"690ac52 6badd3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #74 from kellyjonbrazil/dev"},{"commit":"6badd3fb1e1cf6d1ee99614fadc20d54be8039aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["tests/test_cli.py"]},"message":"add parser count test"},{"commit":"724d825745b6f1692eb3b068c3fb59d14892e690","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["man/jc.1"]},"message":"add tracepath parser"},{"commit":"ff1e32ad2ee156f105f5069c6b14a65b22784dfa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump"},{"commit":"a5f97febd3066b9e95a18d6b73162a7d206c5845","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":132,"deletions":0,"files":["tests/fixtures/centos-7.7/tracepath.json","tests/fixtures/centos-7.7/tracepath6.json","tests/fixtures/freebsd12/traceroute.json","tests/fixtures/freebsd12/traceroute.out","tests/fixtures/freebsd12/traceroute6.json","tests/fixtures/freebsd12/traceroute6.out","tests/fixtures/osx-10.14.6/uname.out","tests/test_tracepath.py","tests/test_traceroute.py","tests/test_uname.py"]},"message":"update traceroute, tracepath, and uname tests"},{"commit":"5baa6cc865634142690e78596c640db35e110b29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]},"message":"add route parser update"},{"commit":"7a4f30b843d8f11711abbb8f9bb263f945ff87ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/route.py"]},"message":"fix for iface issue"},{"commit":"b2c385dc4f63e3e15f47e986deac0524967214a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"]},"message":"change 'if' to 'iface'"},{"commit":"5d5da8d33fa6ab77c745d338d1a2e2e8f2e4c697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/route.py"]},"message":"more fixes for ipv6 fix"},{"commit":"e60457157839daba385202906997dec48c9c4950","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"]},"message":"fix next_hop fix"},{"commit":"f9dacc3f95b32e1431914ae0b0dc5c8e8840d5a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/route.py"]},"message":"fixup for ipv6"},{"commit":"6086920332575cd7db1b38262a3b4ba8fbfae7ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]},"message":"update ParseError message"},{"commit":"f52f3163bcaf8d7e784f02505e81456e8240295b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":49,"deletions":0,"files":["README.md"]},"message":"add tracepath example"},{"commit":"d18ff73e880c7d34957f2713857cc83094f914cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/tracepath.py"]},"message":"update author info"},{"commit":"1e5d602caecd96c9056ad77f9fc50cf25bf6fdfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":288,"deletions":32,"files":["docs/parsers/tracepath.md","jc/parsers/tracepath.py"]},"message":"working tracepath parser"},{"commit":"12912521ecb376c36dfdd743b3c4195598fb9aac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":11,"files":["docs/parsers/traceroute.md","jc/parsers/traceroute.py"]},"message":"doc update"},{"commit":"842ea3a94bec3fcab76257fdde5514d1de3d57fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":153,"deletions":0,"files":["docs/parsers/tracepath.md","jc/parsers/tracepath.py"]},"message":"add tracepath parser skeleton"},{"commit":"a8560dbc1598fa97de87594228b4cc10282d4197","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add tracepath"},{"commit":"a65e27540a8c5c7123d2fdf79fcbefa1e2f8afdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":24,"files":["docgen.sh","docs/parsers/traceroute.md","jc/parsers/traceroute.py"]},"message":"update docs"},{"commit":"c3c5ed11e68938e35920144406d37ea3b21d63dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]},"message":"change name from tr to trparse"},{"commit":"ce24149335cd8ed1e8513a2cf040432fe42d86b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping.py"]},"message":"formatting"},{"commit":"0314ca8c4831d24c169a0e4948421ecd638fd699","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add trparse acknowledgement"},{"commit":"ebd8ee49a9f43063850e30c745c8cae46ee13de1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":1,"files":["README.md"]},"message":"add key/value info to ini example"},{"commit":"38d10c97814ec69586c3b447c182f339772d6e22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":130,"deletions":1,"files":["README.md"]},"message":"add ping and traceroute examples"},{"commit":"360106c24d24e6a9697c00a158a14aaa334a4b1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]},"message":"add tracepath"},{"commit":"ca470a5d02fd9fbaf05d8b3b3bb1ffe9f4cf5af3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":39,"deletions":0,"files":["tests/fixtures/centos-7.7/tracepath.out","tests/fixtures/centos-7.7/tracepath6.out"]},"message":"add tracepath fixtures"},{"commit":"57f66e6b1d554ff20b72959f5ebb9e7b2feffed2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":2,"files":["changelog.txt","jc/parsers/uname.py"]},"message":"add exception with hint to use \"uname -a\""},{"commit":"e774f67924c0e6195f79829b2ac75ce95f76fbaa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["jc/parsers/ini.py"]},"message":"turn off interpolation and coerce None to ''"},{"commit":"ac10e576c167d20de259e47a6aa5b23fc998b4c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/ini.md","jc/parsers/ini.py"]},"message":"spelling"},{"commit":"bcae0a99cd0ccce4ec8a67929f7c83a1095a5b88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"add key/value to ini description"},{"commit":"c73c2ff879b3ed7a3e6f04e53e0a729e4f00ed21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["changelog.txt"]},"message":"add ping, traceroute, and ini update"},{"commit":"c39b1a3356881a11a8f6fe9432897e6d67162f07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["README.md"]},"message":"add ping, traceroute and update ini description"},{"commit":"125dc2d9e051a82a4a438afe2e520212338353f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":3,"files":["docs/parsers/ini.md"]},"message":"add info about key/value files to doc"},{"commit":"b7d4ddc7ced2c3aabf3a857b53a0bf1b62eb6a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":50,"deletions":0,"files":["tests/fixtures/generic/keyvalue-ifcfg.json","tests/fixtures/generic/keyvalue-ifcfg.txt","tests/fixtures/generic/keyvalue.json","tests/fixtures/generic/keyvalue.txt","tests/test_ini.py"]},"message":"add tests for key/value files"},{"commit":"f5e546c6fa7cba166284a0976887d6b82451d3e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":33,"deletions":9,"files":["jc/parsers/ini.py"]},"message":"add support for simple key/value pairs"},{"commit":"928e39cd103b96b8c3ccc8d85c930ffb419296c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":104,"deletions":0,"files":["tests/fixtures/generic/traceroute1.json","tests/fixtures/generic/traceroute2.json","tests/fixtures/generic/traceroute3.json","tests/fixtures/generic/traceroute4.json","tests/fixtures/generic/traceroute5.json","tests/fixtures/generic/traceroute6.json","tests/fixtures/generic/traceroute7.json","tests/fixtures/generic/traceroute8.json","tests/test_traceroute.py"]},"message":"add generic traceroute tests"},{"commit":"d0b7ea68a005daff313e44808b256656313a78a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/traceroute.py"]},"message":"check for key in dictionary"},{"commit":"8444690133b6a7522822ab279e97ede6ded17ba9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["man/jc.1"]},"message":"add traceroute"},{"commit":"c03c42d76703ff8f423cf3c10ea6254a27a685cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":76,"deletions":9,"files":["tests/fixtures/centos-7.7/traceroute.json","tests/fixtures/osx-10.14.6/traceroute-asn.json",".../osx-10.14.6/traceroute-mult-addresses.json","tests/fixtures/osx-10.14.6/traceroute-q.json","tests/fixtures/osx-10.14.6/traceroute.json",".../osx-10.14.6/traceroute6-mult-addresses.json","...-address.out => traceroute6-mult-addresses.out}","tests/fixtures/osx-10.14.6/traceroute6.json","tests/test_traceroute.py"]},"message":"add traceroute tests"},{"commit":"ab67688a00ac335d2a5603e9cadef8b565957911","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":55,"deletions":0,"files":["tests/test_traceroute.py"]},"message":"add test skeleton"},{"commit":"5dcb7166daef3c53da65bba0d591672e64d3a90b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":169,"deletions":0,"files":["docgen.sh","docs/parsers/traceroute.md"]},"message":"add traceroute doc"},{"commit":"14697b86d7fc1cfebb41e0fd2d9a9b9b60071d3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":2,"files":["jc/parsers/traceroute.py"]},"message":"add MIT license"},{"commit":"4f4b6276d4bf798b17d996f39742bd0428fc2f19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":38,"deletions":33,"files":["jc/parsers/traceroute.py"]},"message":"update docstring"},{"commit":"7bc497e1291059ae7858c9d2bd2d9a1b4c030dd1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":117,"deletions":14,"files":["jc/parsers/traceroute.py"]},"message":"updated process() function to set integers and floats"},{"commit":"68a37a6a5a3f0ad0fa24c84d363050af9fa11f97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/parsers/traceroute.py"]},"message":"remove unused function load()"},{"commit":"6f5cd1d7c5f76d7d4da42171fdc30daf9fe3996e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]},"message":"change to use f-string"},{"commit":"126b1b121ca10183dc7e9dece83b42907becad39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":0,"files":["tests/fixtures/generic/traceroute8.out"]},"message":"add traceroute6 example"},{"commit":"2341e456a012564f86d533d2748a5887d79995e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]},"message":"use ParseError instead of generic Exception"},{"commit":"72d80e95bb50ae2a7432082e65aba15235ba0955","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":115,"deletions":8,"files":["jc/parsers/traceroute.py","tests/fixtures/generic/traceroute1.out","tests/fixtures/generic/traceroute2.out","tests/fixtures/generic/traceroute3.out","tests/fixtures/generic/traceroute4.out","tests/fixtures/generic/traceroute5.out","tests/fixtures/generic/traceroute6.out","tests/fixtures/generic/traceroute7.out"]},"message":"remove unused regex patterns"},{"commit":"f5ec82440cd1c1b5ac9011d3517298d0cdcd8766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/traceroute.py"]},"message":"simplify regex patterns"},{"commit":"c8e526ead35b868733f57b4c114062a48b78a817","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":3,"files":["jc/parsers/traceroute.py","tests/fixtures/osx-10.14.6/traceroute-q.out"]},"message":"fixes for bsd-style ipv6 output"},{"commit":"066adfb76479df7042bfb12bbb83b5dbd8a6d54c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":83,"deletions":7,"files":["jc/parsers/traceroute.py","tests/fixtures/centos-7.7/traceroute.out","tests/fixtures/osx-10.14.6/traceroute-asn.out",".../osx-10.14.6/traceroute-mult-addresses.out",".../fixtures/osx-10.14.6/traceroute-no-header.out",".../osx-10.14.6/traceroute6-multi-address.out","tests/fixtures/osx-10.14.6/traceroute6.out"]},"message":"handle warning lines in the traceroute output"},{"commit":"5b444d4717b0b8528647e17e71d699907def3e18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":307,"deletions":0,"files":["jc/cli.py","jc/parsers/traceroute.py","tests/fixtures/osx-10.14.6/traceroute.out"]},"message":"add traceroute parser"},{"commit":"69c95adc8d59927c1c00b7e766ca5003b7b6454c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":81,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ping6-ip-dup.json","tests/fixtures/osx-10.14.6/ping6-ip-dup.out","tests/test_ping.py"]},"message":"add osx ipv6 ping dup test"},{"commit":"2b0e0d8f5c1a6a5450e362971f9ad5892093b2ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":27,"deletions":0,"files":["tests/fixtures/centos-7.7/ping6-ip-dup.json","tests/fixtures/centos-7.7/ping6-ip-dup.out","tests/test_ping.py"]},"message":"add ipv6 dup test"},{"commit":"778d1bacbf8df523d434b22f5e1517955e4c15ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":28,"deletions":12,"files":["docs/parsers/ping.md","jc/parsers/ping.py"]},"message":"update docs to add \"duplicates\" fields"},{"commit":"7e1b0410166c584775ebcd681a280ec7321560c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":0,"files":["tests/test_ping.py"]},"message":"add duplicate replies tests"},{"commit":"313b9b329ca6b674069718839f55a4bd7834db80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":55,"insertions":55,"deletions":53,"files":["tests/fixtures/centos-7.7/ping-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping-hostname-O-p.json","tests/fixtures/centos-7.7/ping-hostname-O.json","tests/fixtures/centos-7.7/ping-ip-O-D.json","tests/fixtures/centos-7.7/ping-ip-O.json","tests/fixtures/centos-7.7/ping-ip-dup.json","tests/fixtures/centos-7.7/ping6-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping6-hostname-O-p.json","tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","tests/fixtures/centos-7.7/ping6-ip-O-p.json","tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping-hostname-O-p.json","tests/fixtures/fedora32/ping-hostname-O.json","tests/fixtures/fedora32/ping-ip-O-D.json","tests/fixtures/fedora32/ping-ip-O.json","tests/fixtures/fedora32/ping6-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping6-hostname-O-D-p.json","tests/fixtures/fedora32/ping6-hostname-O-p.json","tests/fixtures/fedora32/ping6-ip-O-D-p.json","tests/fixtures/fedora32/ping6-ip-O-p.json","tests/fixtures/freebsd12/ping-hostname-p.json","tests/fixtures/freebsd12/ping-hostname-s.json","tests/fixtures/freebsd12/ping-hostname.json","tests/fixtures/freebsd12/ping-ip-p.json","tests/fixtures/freebsd12/ping-ip-s.json","tests/fixtures/freebsd12/ping-ip.json","tests/fixtures/freebsd12/ping6-hostname-p.json","tests/fixtures/freebsd12/ping6-hostname-s.json","tests/fixtures/freebsd12/ping6-hostname.json","tests/fixtures/freebsd12/ping6-ip-p.json","tests/fixtures/freebsd12/ping6-ip-s.json","tests/fixtures/freebsd12/ping6-ip.json","tests/fixtures/osx-10.14.6/ping-hostname-p.json","tests/fixtures/osx-10.14.6/ping-hostname-s.json","tests/fixtures/osx-10.14.6/ping-hostname.json","tests/fixtures/osx-10.14.6/ping-ip-dup.json","tests/fixtures/osx-10.14.6/ping-ip-p.json","tests/fixtures/osx-10.14.6/ping-ip-s.json","tests/fixtures/osx-10.14.6/ping-ip.json","tests/fixtures/osx-10.14.6/ping6-hostname-p.json","tests/fixtures/osx-10.14.6/ping6-hostname-s.json","tests/fixtures/osx-10.14.6/ping6-hostname.json","tests/fixtures/osx-10.14.6/ping6-ip-p.json","tests/fixtures/osx-10.14.6/ping6-ip-s.json","tests/fixtures/osx-10.14.6/ping6-ip.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping-hostname-O.json","tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","tests/fixtures/ubuntu-18.04/ping-ip-O.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json"]},"message":"update fixtures for added 'duplicate' fields"},{"commit":"6830062256fbc453f87224f7ab8c10e4494b5a83","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":112,"deletions":24,"files":["docs/parsers/ping.md","jc/parsers/ping.py","tests/fixtures/centos-7.7/ping-ip-dup.out","tests/fixtures/osx-10.14.6/ping-ip-dup.out"]},"message":"add support for duplicate replies"},{"commit":"323072c9827c41c5d74433504b5efceb846cfe09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/ping.md","jc/parsers/ping.py"]},"message":"add source_ip to schema doc"},{"commit":"8719d96bddec80187e7ba3286ba93bfec8465744","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"change description"},{"commit":"dd5d318ab5bbb1027dd600fd3b0b6ec9b8adfdc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["man/jc.1"]},"message":"version bump and add ping command"},{"commit":"d6dc7f5e65c097895c19000e59e8803a3b350fdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":135,"deletions":29,"files":["tests/fixtures/osx-10.14.6/ping-hostname-p.json","tests/fixtures/osx-10.14.6/ping-hostname-s.json","tests/fixtures/osx-10.14.6/ping-hostname.json","tests/fixtures/osx-10.14.6/ping-ip-p.json","tests/fixtures/osx-10.14.6/ping-ip-s.json","tests/fixtures/osx-10.14.6/ping-ip.json","tests/fixtures/osx-10.14.6/ping6-hostname-p.json","tests/fixtures/osx-10.14.6/ping6-hostname-s.json","tests/fixtures/osx-10.14.6/ping6-hostname.json","tests/fixtures/osx-10.14.6/ping6-ip-p.json","tests/fixtures/osx-10.14.6/ping6-ip-s.json","tests/fixtures/osx-10.14.6/ping6-ip.json","tests/test_ping.py"]},"message":"add osx ping tests"},{"commit":"c203664eb5aafa0afa3101b79e3fd13b3e009ec5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":171,"deletions":9,"files":["tests/fixtures/freebsd12/ping-hostname-p.json","tests/fixtures/freebsd12/ping-hostname-s.json","tests/fixtures/freebsd12/ping-hostname.json","tests/fixtures/freebsd12/ping-ip-p.json","tests/fixtures/freebsd12/ping-ip-s.json","tests/fixtures/freebsd12/ping-ip.json","tests/fixtures/freebsd12/ping6-hostname-p.json","tests/fixtures/freebsd12/ping6-hostname-s.json","tests/fixtures/freebsd12/ping6-hostname.json","tests/fixtures/freebsd12/ping6-ip-p.json","tests/fixtures/freebsd12/ping6-ip-s.json","tests/fixtures/freebsd12/ping6-ip.json","tests/test_ping.py"]},"message":"freebsd ping tests"},{"commit":"19ecf1fa19e9fa0873002baf07fa670b71ed7752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":118,"deletions":0,"files":["tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping-hostname-O-p.json","tests/fixtures/fedora32/ping-hostname-O.json","tests/fixtures/fedora32/ping-ip-O-D.json","tests/fixtures/fedora32/ping-ip-O.json",".../fixtures/fedora32/ping6-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping6-hostname-O-D-p.json","tests/fixtures/fedora32/ping6-hostname-O-p.json","tests/fixtures/fedora32/ping6-ip-O-D-p.json","tests/fixtures/fedora32/ping6-ip-O-p.json","tests/test_ping.py"]},"message":"add Fedora32 tests"},{"commit":"b8deb0426cc23333c0e0a9dc3776d9761d99abb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":119,"deletions":8,"files":[".../ubuntu-18.04/ping-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping-hostname-O.json","tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","tests/fixtures/ubuntu-18.04/ping-ip-O.json",".../ubuntu-18.04/ping6-hostname-O-D-p-s.json",".../ubuntu-18.04/ping6-hostname-O-D-p.json",".../fixtures/ubuntu-18.04/ping6-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json","tests/test_ping.py"]},"message":"add ubuntu ping tests"},{"commit":"3b8371f0208a097cb8a1c026348d3842e6702b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":202,"deletions":0,"files":[".../fixtures/centos-7.7/ping-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping-hostname-O-p.json","tests/fixtures/centos-7.7/ping-hostname-O.json","tests/fixtures/centos-7.7/ping-ip-O-D.json","tests/fixtures/centos-7.7/ping-ip-O.json",".../centos-7.7/ping6-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping6-hostname-O-p.json","tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","tests/fixtures/centos-7.7/ping6-ip-O-p.json","tests/test_ping.py"]},"message":"add centos ping tests"},{"commit":"20bb1cdf396abdb3707b34fa146cbe913f9bbd6f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/ping.py"]},"message":"add TypeError to except for None values"},{"commit":"301daa48d0bfc28f97c8e46f028f8c6b875bf34e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":114,"deletions":16,"files":["docs/parsers/ping.md","jc/parsers/ping.py"]},"message":"update documentation"},{"commit":"8421ec88033e02f472e4961d87551a0352663a16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ping.py"]},"message":"remove cygwin compatibility"},{"commit":"74211eb0129f6aa655a38ba4d4d8844d81441107","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":82,"deletions":5,"files":["jc/parsers/ping.py"]},"message":"add examples"},{"commit":"60bd42f298f309cbec6d24c9543ea3d51bd73b18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":59,"deletions":11,"files":["jc/parsers/ping.py"]},"message":"add process() logic"},{"commit":"14bdd74526e400997c5bc247ea35ed40799e83ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":100,"deletions":0,"files":["tests/fixtures/freebsd12/ping-hostname-p.out","tests/fixtures/freebsd12/ping-hostname-s.out","tests/fixtures/freebsd12/ping-hostname.out","tests/fixtures/freebsd12/ping-ip-p.out","tests/fixtures/freebsd12/ping-ip-s.out","tests/fixtures/freebsd12/ping-ip.out","tests/fixtures/freebsd12/ping6-hostname-p.out","tests/fixtures/freebsd12/ping6-hostname-s.out","tests/fixtures/freebsd12/ping6-hostname.out","tests/fixtures/freebsd12/ping6-ip-p.out","tests/fixtures/freebsd12/ping6-ip-s.out","tests/fixtures/freebsd12/ping6-ip.out"]},"message":"add ping test fixtures"},{"commit":"fb0f3eda04a4b1dbb81da7d5791cbfe746bfd617","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["tests/fixtures/create_fixtures.sh"]},"message":"add ping commands"},{"commit":"91ee6e6701307363336a39f9e16641465ddd05c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":100,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ping-hostname-p.out","tests/fixtures/osx-10.14.6/ping-hostname-s.out","tests/fixtures/osx-10.14.6/ping-hostname.out","tests/fixtures/osx-10.14.6/ping-ip-p.out","tests/fixtures/osx-10.14.6/ping-ip-s.out","tests/fixtures/osx-10.14.6/ping-ip.out","tests/fixtures/osx-10.14.6/ping6-hostname-p.out","tests/fixtures/osx-10.14.6/ping6-hostname-s.out","tests/fixtures/osx-10.14.6/ping6-hostname.out","tests/fixtures/osx-10.14.6/ping6-ip-p.out","tests/fixtures/osx-10.14.6/ping6-ip-s.out","tests/fixtures/osx-10.14.6/ping6-ip.out"]},"message":"add osx ping test fixtures"},{"commit":"51f4e6927c68a7e2a26954f564d10d316b98a984","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":3,"files":["jc/parsers/ping.py"]},"message":"add support for pattern in osx/bsd"},{"commit":"94988d86674293faddc6f7e7c82575738d2dc791","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":257,"deletions":0,"files":["tests/fixtures/fedora32/ping-hostname-O-D-p-s.out","tests/fixtures/fedora32/ping-hostname-O-p.out","tests/fixtures/fedora32/ping-hostname-O.out","tests/fixtures/fedora32/ping-ip-O-D.out","tests/fixtures/fedora32/ping-ip-O.out","tests/fixtures/fedora32/ping6-hostname-O-D-p-s.out","tests/fixtures/fedora32/ping6-hostname-O-D-p.out","tests/fixtures/fedora32/ping6-hostname-O-p.out","tests/fixtures/fedora32/ping6-ip-O-D-p.out","tests/fixtures/fedora32/ping6-ip-O-p.out"]},"message":"add fedora ping fixtures"},{"commit":"fe36f5a98cd3ee7753e250b6553e4453d971f929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":318,"deletions":0,"files":["tests/fixtures/centos-7.7/ping-ip-O-D.out","tests/fixtures/centos-7.7/ping-ip-O.out","tests/fixtures/create_fixtures.sh",".../ubuntu-18.04/ping-hostname-O-D-p-s.out","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.out","tests/fixtures/ubuntu-18.04/ping-hostname-O.out","tests/fixtures/ubuntu-18.04/ping-ip-O-D.out","tests/fixtures/ubuntu-18.04/ping-ip-O.out",".../ubuntu-18.04/ping6-hostname-O-D-p-s.out",".../fixtures/ubuntu-18.04/ping6-hostname-O-D-p.out","tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.out","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.out","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.out"]},"message":"add fixtures for ping"},{"commit":"f9eb18b9271b2428dd82f2dc26d3fa0435dad81d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/ping.py"]},"message":"change 'request_timeout' field to 'type', fix compatibility, other formatting fixes"},{"commit":"cc60f3674822c644933f286a0364b09d7e2a60b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":67,"deletions":1,"files":["docgen.sh","docs/parsers/ping.md","jc/cli.py"]},"message":"add ping parser"},{"commit":"604ade791f7bd33b37f64916befba27a2ea08b5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":506,"deletions":0,"files":["jc/parsers/ping.py",".../fixtures/centos-7.7/ping-hostname-O-D-p-s.out","tests/fixtures/centos-7.7/ping-hostname-O-p.out","tests/fixtures/centos-7.7/ping-hostname-O.out",".../fixtures/centos-7.7/ping6-hostname-O-D-p-s.out","tests/fixtures/centos-7.7/ping6-hostname-O-p.out","tests/fixtures/centos-7.7/ping6-ip-O-D-p.out","tests/fixtures/centos-7.7/ping6-ip-O-p.out"]},"message":"add ping parser"},{"commit":"690ac52a917200e46eac2feafc9f504f2734301c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":261,"deletions":0,"files":["man/jc.1"]},"message":"add man page"},{"commit":"34ed772775f1f02ed148f24a3bfff532bc811607","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"d5ab95571f64f55d8194e9e5592ac538bb535229","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":11,"files":["tests/test_cli.py"]},"message":"fix tests when using older versions of pygments"},{"commit":"ffb3a0ee5fb30a3f61d6cbedf877ab04acdbf624","merge":"fde0bc8 94b12b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #73 from kellyjonbrazil/dev"},{"commit":"94b12b57aaa56170d1f31f4910fd1239f88de137","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"spelling"},{"commit":"6d149e84571d5d6dd1d8a1f219ba299de5173779","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":1,"files":["changelog.txt","setup.py"]},"message":"version bump"},{"commit":"1ad89c90d890039b817f65b2635db1b5e849a9e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add pacman"},{"commit":"fb71c7b020bc1eda9484595f30b0200a4f59aa45","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_cli.py"]},"message":"function name spelling"},{"commit":"28ed17ad3bce866e5dc0179ef5de43380ac6ace1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_cli.py"]},"message":"add parser_count test to test_cli_about_jc"},{"commit":"0c2a4e2bf71dca50d4a9bb27ca99944909c022ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["tests/test_cli.py"]},"message":"add cli tests"},{"commit":"62bec30de2f1a303f2ec411d89f7f9f9c6d1abaf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":0,"files":["tests/test_cli.py"]},"message":"add json_out tests"},{"commit":"3fced77e4e258dbf7db94a313e599c830a597b49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":98,"deletions":1,"files":["tests/test_cli.py"]},"message":"add set_env_colors tests"},{"commit":"a09d1d8b7687912610598c88d172733d5e29b1ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":6,"files":["jc/cli.py"]},"message":"move environment variable assignment to main() to simplify tests"},{"commit":"8f4243fbd8d70ca9fd019e984c564e37c81e07db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"47aaf20549ea238443427e69d5841d6996b7afab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":17,"deletions":0,"files":["README.md"]},"message":"add sysctl command parser"},{"commit":"0c5289ea50e4d3d35e80147b4cad32434c19a2a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":72,"deletions":2,"files":["tests/fixtures/freebsd12/sysctl-a.json","tests/fixtures/osx-10.14.6/sysctl-a.json","tests/test_sysctl.py"]},"message":"add sysctl tests"},{"commit":"3e53323514906fb84abfaeed0c2ee1fd9090ad8d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/sysctl.py"]},"message":"don't filter out empty lines"},{"commit":"a5ee9861b9b9b479aee59ea5b1d75f20d7c3c8e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3785,"deletions":1,"files":["tests/fixtures/freebsd12/sysctl-a.json","tests/fixtures/freebsd12/sysctl-a.out","tests/fixtures/osx-10.14.6/sysctl-a.json"]},"message":"update fixtures"},{"commit":"feb8ca76545cba4fd0927273ddf90a77df994006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/sysctl.md"]},"message":"spelling"},{"commit":"a7abe4473b90c512466db9ae98cfac585689fe2a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/sysctl.py"]},"message":"spelling"},{"commit":"780b9b61dec3e142e46c9a82146d2af4e1144123","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/sysctl.py"]},"message":"specify IndexError exception in try/except block"},{"commit":"19ace36ffa659bedf0ba2e43572c9e253592b2e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2167,"deletions":0,"files":["tests/fixtures/osx-10.14.6/sysctl-a.json","tests/fixtures/osx-10.14.6/sysctl-a.out","tests/fixtures/ubuntu-18.04/sysctl-a.json","tests/fixtures/ubuntu-18.04/sysctl-a.out"]},"message":"add fixtures"},{"commit":"5fff8afc9f47f8cc6db8ed3613b90b5cdc683b43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":33,"deletions":11,"files":["jc/parsers/sysctl.py"]},"message":"add fixes for freebsd where values can be on separate lines under the key"},{"commit":"4ad230c9279c5eb6c8ed6baf7254b8e9328e5af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":929,"deletions":14,"files":["docs/parsers/sysctl.md","jc/parsers/sysctl.py","tests/fixtures/centos-7.7/sysctl-a.json","tests/fixtures/centos-7.7/sysctl-a.out"]},"message":"doc update and add test fixtures"},{"commit":"dd98eb1ec8f451eb87a5094e76a7f758dee3fc69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":7,"files":["jc/parsers/sysctl.py"]},"message":"append duplicate key values to original key instead of adding unique keys"},{"commit":"c6baf42e72b4f41ed511e7db943297d03a39c0d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":94,"deletions":7,"files":["docgen.sh","docs/parsers/sysctl.md","jc/parsers/sysctl.py"]},"message":"doc updates"},{"commit":"e2bac97d563e5ef771ccd8ed1e5c42cbf588b120","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["jc/parsers/sysctl.py"]},"message":"fix for multiple identical keys in sysctl output"},{"commit":"d112ee94d0ec534828c8508d0fb833b768975990","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":4,"files":["jc/parsers/sysctl.py"]},"message":"use try/except and add support for floats in process()"},{"commit":"27b21b2fafab912f21b88b66c7f817cbce155765","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":7,"files":["jc/cli.py"]},"message":"formatting and docstring updates"},{"commit":"8c96d5cd20448a4f7f9736c4d489d6ecc3068ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["requirements.txt"]},"message":"reduce pygments version requirement"},{"commit":"c29ed3fd695f725005333db5e6e2cd844bb4ca14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":13,"files":["jc/cli.py"]},"message":"formatting of quotation marks and docstrings"},{"commit":"cedf603f121636bdfa95432059c3c275c3ea3e9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/cli.py"]},"message":"minor formatting"},{"commit":"279161c36f288c27a9789054ae372fe8ceb58a94","merge":"bc7116c ce0b43d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #72 from duelafn/pygments-2.3"},{"commit":"ce0b43d919f07d96d1b94e9d14d03e935e80011d","author":"Dean Serenevy","author_email":"dean@serenevy.net","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"]},"message":"Remove dependency on 3rd party packaging library"},{"commit":"ddafa5bf06066bab8e9587be902d6752fcf51605","author":"Dean Serenevy","author_email":"dean@serenevy.net","stats":{"files_changed":2,"insertions":47,"deletions":7,"files":["jc/cli.py","setup.py"]},"message":"Support older pygments"},{"commit":"bc7116c31bacf3159aef775fd0e615187420b010","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":8,"files":["jc/cli.py"]},"message":"fix JC_COLORS env bug and simplify set_env_colors()"},{"commit":"53b709272115e769dac905296fa3b000c1cdd66a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":11,"files":["jc/cli.py"]},"message":"remove side-effects from functions and print in main()"},{"commit":"beb9174b1b35937ae1fb99778369ae643a8f1005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":123,"deletions":0,"files":["jc/parsers/sysctl.py"]},"message":"add sysctl parser"},{"commit":"aea41ed341c8d53cc07c35e8044e8f816ddd2fed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/cli.py"]},"message":"move verbose_debug enable earlier in code to catch more issues. add sysctl and version bump"},{"commit":"d789494cb1f691aa352419aaefc692f654477177","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/tracebackplus.py"]},"message":"change type check to use isinstance"},{"commit":"608e7b4cff081f92177e4151ffa1a91a4a6895ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":61,"deletions":0,"files":["jc/tracebackplus.py"]},"message":"add license info"},{"commit":"4ee199c02a78c2707c5d1427d7c8fae56df5671c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":189,"deletions":3,"files":["jc/cli.py","jc/tracebackplus.py"]},"message":"use tracebackplus instead of cgitb since cgitb is depricated"},{"commit":"fbf47d408501dadda4671fb530f5e11859e85d53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add arch linux"},{"commit":"5a238e4b4204f0552327534ef798c28d3ad4f578","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"remove updates-testing from fedora command"},{"commit":"f852b8246a8f9e5f7d9144fed3a0daa4eddfe035","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/utils.py"]},"message":"wrap warning message"},{"commit":"88140d929a500ee78f807862c4912c399df2a460","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"wrap error message in code"},{"commit":"45f726824027af49c437b6e81e4700f7098af320","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"add -dd to error message"},{"commit":"3a3c8e4d4a77135eaee5cb30c3107a4531c300ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/cli.py"]},"message":"move verbose_debug under debug check"},{"commit":"c1ac183a0472e93226c9ee1905f56c5183e3721f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":15,"deletions":22,"files":["jc/cli.py"]},"message":"simplify debug option"},{"commit":"18bb779ee5cd5821764b03173f16e922f753c64d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"formatting: double quotes to single quotes"},{"commit":"8b6612fe7911ab9e0bf8d29be60865d3b8aa3fd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/cli.py"]},"message":"move JC_COLORS parsing error message"},{"commit":"fde0bc853415418e01616861ace5048770bd97f8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":34,"files":["README.md"]},"message":"improve package install info"},{"commit":"e661a78939ff067b8a61f08301c178dd10a344ab","merge":"b969751 847e346","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #71 from wigust/guix"},{"commit":"847e346602789bf58e3515319e9d080dfb897fc9","author":"Oleg Pykhalov","author_email":"go.wigust@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]},"message":"add guix package info"},{"commit":"b9697516887c61f08d8d7b1dc9130350e5bdba9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]},"message":"add other references"},{"commit":"ad6f2ba03a293a7f55e456fa5f5b55ee3cbcd4ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"63c6a5edc0e9001b143595fd8b96f1b4a1377a3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"formatting"},{"commit":"9f4cf9dd5efe94adfff0961fdb73097ca27c5463","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":197,"deletions":67,"files":["README.md"]},"message":"formatting"},{"commit":"51331b6dc01eee00847fa4be549ffde365373a01","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["README.md"]},"message":"formatting"},{"commit":"efb6761033319644bf9cdae6288ff5609f6482ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"6a4f737a0f1c322bebccf69809d9816fc770c5ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":88,"deletions":115,"files":["README.md"]},"message":"update json syntax highlighting"},{"commit":"be6864b778ab721bcba5fc3221576153be7b2ed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":26,"files":["README.md"]},"message":"add syntax highlighting tags"},{"commit":"de3b91a36cfcaf565b26b1da42f1e87835da4dc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add -dd option"},{"commit":"ef5482c3b5afa0ee8e85851bebab1c104cb59936","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":15,"deletions":7,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"add verbose debug option"},{"commit":"d20b795137036f8b889eb231cb4f14b756ec6479","merge":"69018cd 8a13406","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #70 from kellyjonbrazil/dev"},{"commit":"8a134065dff429551449c1ea16a36d745fdab580","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":12,"deletions":12,"files":["tests/fixtures/centos-7.7/iptables-filter-line-numbers.json","tests/fixtures/centos-7.7/iptables-filter-nv.json","tests/fixtures/centos-7.7/iptables-filter.json","tests/fixtures/centos-7.7/iptables-mangle.json","tests/fixtures/centos-7.7/iptables-nat.json","tests/fixtures/centos-7.7/iptables-raw.json","tests/fixtures/ubuntu-18.04/iptables-filter-line-numbers.json","tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","tests/fixtures/ubuntu-18.04/iptables-filter.json","tests/fixtures/ubuntu-18.04/iptables-mangle.json","tests/fixtures/ubuntu-18.04/iptables-nat.json","tests/fixtures/ubuntu-18.04/iptables-raw.json"]},"message":"update fixtures for last chain fix"},{"commit":"22aee1bfa40ed1d3c4df28cd934ef0edfc5c458c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"b282820fd67dcc96c058198f97b066e7b402d1f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/iptables.py"]},"message":"fix to include the final chain in output"},{"commit":"3ee098306daf903687cb0febf92773a81e216111","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"]},"message":"version bump"},{"commit":"09e8f379a64b3b37bb99b4291c10aa4a5cdedea4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":11,"files":["jc/parsers/iptables.py"]},"message":"iptables code optimizations"},{"commit":"69018cdb3a77fcdcb5648e3b89933148c55a6412","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"fix date"},{"commit":"d0d7254c6acc7be4341618d231a5b166f640b287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":26,"deletions":0,"files":["docs/utils.md","jc/utils.py"]},"message":"add docstring"},{"commit":"cc0f0971d76b6f3dec8d989e83f5676db8f2c6d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":56,"insertions":476,"deletions":439,"files":["changelog.txt","jc/cli.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/utils.py","setup.py"]},"message":"Improve and standardize empty data check for all parsers"},{"commit":"2af61730f0f5b9bc6f1f4c5d9d808ff6ccb0faeb","merge":"07b179c 83f41b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #68 from kellyjonbrazil/dev"},{"commit":"83f41b83dc01c462c6a2295e9fc56ad42a3b62f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"1fb84fce88e0306c26a5771fa4c6dc14a21409a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":16,"insertions":137,"deletions":67,"files":["changelog.txt","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/xml.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py","tests/test_timedatectl.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py","tests/test_who.py","tests/test_xml.py","tests/test_yaml.py"]},"message":"fix for no data"},{"commit":"a8837e12447c52dbe438b19c07777b9b4a22081c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"remove --upgrade from pip install"},{"commit":"04d2eec5581998d1a80e762b670af76c92111065","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":56,"deletions":30,"files":["changelog.txt","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","tests/test_stat.py","tests/test_systemctl.py","tests/test_systemctl_lj.py"]},"message":"fix for no data"},{"commit":"1b57ec92f052ddc8959540511512190a539262b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":152,"deletions":68,"files":["changelog.txt","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/pip_list.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","tests/fixtures/centos-7.7/ss-sudo-a.json","tests/fixtures/ubuntu-18.04/ss-sudo-a.json","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_ntpq.py","tests/test_passwd.py","tests/test_pip_list.py","tests/test_pip_show.py","tests/test_ps.py","tests/test_route.py","tests/test_shadow.py","tests/test_ss.py"]},"message":"fix for no data"},{"commit":"4d8859540417e99e273fda2cea959240f3c37ea3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/df.py"]},"message":"enhance empty data check"},{"commit":"52b1272a3aab09b5a8c4a277fbf9975a1b8b6921","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/blkid.py"]},"message":"enhance empty data check"},{"commit":"d2ccad6a83138fbf6eb863634fd354dc6c3fa238","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":33,"deletions":15,"files":["jc/parsers/lsblk.py","jc/parsers/lsmod.py","tests/test_lsblk.py","tests/test_lsmod.py"]},"message":"fix for no data"},{"commit":"cad6dde4ac66cf970a7f52d8e7958ea35c083629","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":60,"deletions":0,"files":["tests/test_group.py","tests/test_gshadow.py","tests/test_history.py","tests/test_hosts.py","tests/test_id.py","tests/test_ifconfig.py","tests/test_ini.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_last.py"]},"message":"fix for no data"},{"commit":"06811c3539b0d871e13e9b8d3b51f731d06fd2ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_fstab.py"]},"message":"add test for no data"},{"commit":"0cb23c2b21f464082609409261de8e95eb1b0d55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":17,"deletions":7,"files":["changelog.txt","jc/parsers/free.py","tests/test_free.py"]},"message":"add fix for no data"},{"commit":"ac4688dca22334385ec2c87027f2f14f9ca93ce4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_file.py"]},"message":"add test for no data"},{"commit":"326c3b4670a0e47cbe2988b38fb1c1b26a4db890","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_env.py"]},"message":"add test for no data"},{"commit":"9b29d0c2688eda2e4707aeba693ed14fa433a706","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_du.py"]},"message":"add test for no data"},{"commit":"e0013c38710b4ecf3a588a16d1d908effc23b485","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["tests/test_dmidecode.py"]},"message":"add test for no data"},{"commit":"a75744075b0628bdb711d8a929a759b4b4067edb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_dig.py"]},"message":"add no data test"},{"commit":"525aec1a02380f17ab7827434616f981f7457bd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":16,"deletions":7,"files":["changelog.txt","jc/parsers/df.py","tests/test_df.py"]},"message":"fix for no data"},{"commit":"0bf9a7a072a80e10a29c6bb3943b107352dc1d45","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_csv.py"]},"message":"add test for no data"},{"commit":"d8f2f4c95bc699386b9fe93d10e13637875a1dcf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":96,"deletions":80,"files":["changelog.txt","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/test_crontab.py","tests/test_crontab_u.py"]},"message":"fix for no data"},{"commit":"35d733b44f3705bed3dd8ce340379470f199f772","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":70,"deletions":60,"files":["changelog.txt","jc/parsers/arp.py","jc/parsers/blkid.py","tests/test_arp.py","tests/test_blkid.py"]},"message":"fix for no data"},{"commit":"9179b4175c5063bed14ecb96ba24c517920c0d94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":16,"deletions":0,"files":["changelog.txt","tests/test_airport.py","tests/test_airport_s.py"]},"message":"add nodata tests"},{"commit":"bb07d78c78ff5c5b2ee4d2086ffc6dd5ebedf0fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":8,"files":["jc/parsers/airport_s.py"]},"message":"add nodata fix"},{"commit":"07b179cd7f8853ff6aca0b27a703e198c158ca72","merge":"12a80e7 054422d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #67 from kellyjonbrazil/Dev"},{"commit":"054422d8373e7b8def18ddabd447062cb9cc3137","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_ls.py"]},"message":"add test for empty directory"},{"commit":"3e052d18102e98a09cbba21866855691eaccc216","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"c8e72805cf9def478b56c925f4afcc0ece1daac0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":10,"files":["jc/parsers/ls.py"]},"message":"fix error on empty directory"},{"commit":"12a80e7db0f6c7d536674ad8d34e26bba9a1f1f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":2,"files":["README.md"]},"message":"add fedora package info"},{"commit":"ee7ff9a09d3373f60ae1645376ccc0057803147e","merge":"346a14c f6478fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #66 from kellyjonbrazil/dev"},{"commit":"f6478fb636ead8d1e53e4a88d59e55222df37a8f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"811a0b0495819925199d70db266066197cc6824e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add info regarding the local parser plugin files"},{"commit":"aeb48edf727f23cc4f8fd9b760cfb69f03098278","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"use $LOCALAPPDATA variable for windows"},{"commit":"b1e94f0df7041bcae97455508f423178aef9d61d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"heading formatting"},{"commit":"60050e3c0fe34980f7db5b8bd46430f953f0c3a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["README.md"]},"message":"fix linux/unix directory and add note about the XDG specification followed"},{"commit":"39ef09aa5b0d43b5128299511afe80336aa38203","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"]},"message":"add local parser plugin feature"},{"commit":"8377d4311611c242e16eaebe66dafac9529150d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"54e4c447ab34ae54c73c92df40f1b4ca6ffb2277","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"]},"message":"clean up formatting"},{"commit":"937a9fa9cf2ede8e686ba853989f33e4a483a0ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":613,"deletions":3,"files":["jc/appdirs.py","jc/cli.py","requirements.txt","setup.py"]},"message":"vendorize appdirs module"},{"commit":"808ff6cf0e784cf0c2d523ff2e01197cb6e88c82","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["README.md"]},"message":"more acknowledgments updates"},{"commit":"7f5c649a95a871c3cd8d48731a6d26dcba6f725b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update acknowledgments"},{"commit":"b72727dec995de1ca5f68ee17a710b086c87d612","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":2,"files":["README.md"]},"message":"update custom parsers info"},{"commit":"3fc88bfb334143b68a9cb78d4034f33e7c0bcf76","merge":"346a14c 9f2279d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #65 from duelafn/local-parsers"},{"commit":"9f2279d5867eb89d4b4b7b4ffca290166ec97c48","author":"Dean Serenevy","author_email":"dean@serenevy.net","stats":{"files_changed":4,"insertions":29,"deletions":2,"files":["README.md","jc/cli.py","requirements.txt","setup.py"]},"message":"Load custom parsers from /jc/jcparsers"},{"commit":"346a14cb9bb0d762fc3fa366ad97e5ff85f3992a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"change osx_device to unix_device"},{"commit":"dac00d17ff9f3d2bb959697b6e567015bfc2702b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":17,"deletions":0,"files":["tests/fixtures/nixos/route-ee.json","tests/fixtures/nixos/route-ee.out","tests/test_route.py"]},"message":"add nixos test"},{"commit":"9ca7cd40601b97829e8f88071fdfb928d939f7e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":17,"deletions":34,"files":["jc/parsers/route.py"]},"message":"update docs"},{"commit":"aa31628970b12295a41dff20e829fcce9f8a4d07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":70,"deletions":63,"files":["README.md","docs/parsers/netstat.md","docs/parsers/route.md","docs/parsers/stat.md","jc/parsers/netstat.py"]},"message":"update docs"},{"commit":"bed694fcf5c8c31bbd4f3e88759fe7ab82382d24","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump"},{"commit":"4b4af69fa184896ec15b5be7dc8416f36f921d5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"fix date"},{"commit":"9d96190a5b19e8d71c3ac66eb0303d269dd4ce5d","merge":"96df396 fa44d48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #64 from kellyjonbrazil/dev"},{"commit":"fa44d48c094a55e499c2c780d109bf277736b42e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":129,"deletions":7,"files":["changelog.txt","jc/parsers/stat.py","tests/fixtures/freebsd12/stat.json","tests/fixtures/freebsd12/stat.out","tests/fixtures/osx-10.14.6/stat.json","tests/test_stat.py"]},"message":"freebsd fixes, tests, and fixtures"},{"commit":"4ef961c2788c935b1fea1c9777b976e7b89e7367","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":20,"deletions":0,"files":["tests/fixtures/freebsd12/ntpq-p.json","tests/fixtures/freebsd12/ntpq-p.out","tests/test_ntpq.py"]},"message":"add freebsd test and fixtures"},{"commit":"292a837d5c47165ccb155f079b0a114b5c17a98e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":22,"deletions":0,"files":["tests/fixtures/freebsd12/last.json","tests/fixtures/freebsd12/last.out","tests/test_last.py"]},"message":"add tests and fixtures for freebsd12"},{"commit":"aa7b915d847dbd29d2c09b2cc40b847e37174ffb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/last.py"]},"message":"version bump"},{"commit":"c46fe73236b912d2ee89dfb36ff259fe95fd0479","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"add last fixes for freebsd"},{"commit":"039b2c129cbe79d2d23b1194b043d8b730609956","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":1,"files":["jc/parsers/last.py"]},"message":"freebsd fixes"},{"commit":"8f2e5e4808b30c658a4cb87125639e4d7d6c15d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"fix compatible logic"},{"commit":"c4da8e4f78e6b4aaa4aff76ae042be9aaec832a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":3,"files":["README.md"]},"message":"add nixos and freebsd to tested. update new arp fields"},{"commit":"bcab9078a4c2bfd6ae4dca9448b577d9ed0fc01c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"add w parser fix"},{"commit":"b3c6c1ea925bf7cd76368f5074fb8af52a844522","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":29,"deletions":5,"files":["jc/parsers/w.py","tests/fixtures/nixos/w.json","tests/fixtures/nixos/w.out","tests/test_w.py"]},"message":"strip whitespace in string fields and add tests"},{"commit":"a3af8662bd491e344c93d24afabd23e90efd8086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":205,"deletions":3,"files":["tests/fixtures/osx-10.11.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a2.json"]},"message":"add permanent field"},{"commit":"35940d0bc80bf61b11f40b1e1043835f26eb391c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":59,"deletions":4,"files":["changelog.txt","docs/parsers/arp.md","jc/parsers/arp.py","tests/fixtures/freebsd12/arp-a.json","tests/fixtures/freebsd12/arp-a.out","tests/test_arp.py"]},"message":"add freebsd permanent and expires fields"},{"commit":"26994cdcb7148d2c9d1701bca9541d247356260b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":115,"deletions":85,"files":["docs/parsers/df.md","docs/parsers/fstab.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/route.md","docs/parsers/stat.md","docs/parsers/uname.md"]},"message":"add freebsd compatibility info"},{"commit":"017159a829691cb6a7174f123d024eb252179b75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":15,"insertions":221,"deletions":0,"files":["tests/fixtures/freebsd12/netstat-Aa.json","tests/fixtures/freebsd12/netstat-AaT.json","tests/fixtures/freebsd12/netstat-AaT.out","tests/fixtures/freebsd12/netstat-AanP.json","tests/fixtures/freebsd12/netstat-AanP.out","tests/fixtures/freebsd12/netstat-Aax.json","tests/fixtures/freebsd12/netstat-Aax.out","tests/fixtures/freebsd12/netstat-aT.json","tests/fixtures/freebsd12/netstat-aT.out","tests/fixtures/freebsd12/netstat-an.json","tests/fixtures/freebsd12/netstat-i.json","tests/fixtures/freebsd12/netstat-ib.json","tests/fixtures/freebsd12/netstat-ib.out","tests/fixtures/freebsd12/netstat-r.json","tests/test_netstat.py"]},"message":"add freebsd nestat tests and fixtures"},{"commit":"b4e9c85e08d199dad67f03c7603194278a022696","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":0,"files":["jc/parsers/netstat_freebsd_osx.py"]},"message":"fixup -T freebsd output and add whitespace stripping to parse_post"},{"commit":"189146cd84cfad262f2b2601bb0cb4b9dde2587e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/netstat.py"]},"message":"add more ints. remove whitespace strip code and move to freebsd_osx module"},{"commit":"af34153ffab10ca1ad7f44736d379d91ae43c813","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["changelog.txt","jc/cli.py"]},"message":"version bump"},{"commit":"bf2ff3ffbb639446779b1f04f2997707d99c0a1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":1,"files":["jc/utils.py"]},"message":"fix compatibility search for platform names that append the version number (e.g. freebsd12)"},{"commit":"6423c9efd69e938af38934a97ca6b65009e8f07e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":34,"deletions":5,"files":["jc/parsers/netstat.py"]},"message":"integer and float updates"},{"commit":"58ab0d4ece7f006ce9431afb9e0fecbe60930be7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":12,"deletions":4,"files":["changelog.txt","jc/parsers/netstat.py","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json"]},"message":"strip whitespace from string fields"},{"commit":"83a738bf4d756036d6269b9153220d7f1018ac9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json"]},"message":"update fixtures for osx_flags and osx_inode name change to unix_flags and unix_inode"},{"commit":"3640671fc6a67c9628fd47e19e9fe0a0738439ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/{netstat_osx.py => netstat_freebsd_osx.py}"]},"message":"rename module"},{"commit":"1da623b30ef6f9b12ac231518d2d4e7dadcf717b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["changelog.txt"]},"message":"add items"},{"commit":"b10ca64646e93d9797182ea046f4956a17b37627","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":71,"deletions":71,"files":["jc/parsers/netstat.py"]},"message":"change osx_inode and osx_flags to unix_inode and unix_flags. Also rename netstat_osx module to netstat_freebsd_osx"},{"commit":"2128763ee67a07da6ebf123abeec39794bc1f4e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":12,"files":["tests/test_netstat.py"]},"message":"fix osx version from 16.4 to 14.6"},{"commit":"a27e7ed39c63c04cfa78caceaada42f7a9496a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":12,"deletions":12,"files":["tests/fixtures/centos-7.7/netstat-r.json","tests/fixtures/centos-7.7/netstat-rne.json","tests/fixtures/centos-7.7/netstat-rnee.json","tests/fixtures/centos-7.7/route-vn.json","tests/fixtures/centos-7.7/route.json","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-rnl.json","tests/fixtures/ubuntu-18.04/netstat-r.json","tests/fixtures/ubuntu-18.04/netstat-rne.json","tests/fixtures/ubuntu-18.04/netstat-rnee.json","tests/fixtures/ubuntu-18.04/route-vn.json","tests/fixtures/ubuntu-18.04/route.json"]},"message":"test updates for added route_flags_pretty and flags_pretty fields"},{"commit":"f07b7eaa474eb87dbdbc7fbe41b9386feff7bee2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":38,"deletions":12,"files":["jc/parsers/route.py"]},"message":"add flags_pretty"},{"commit":"6ce18de84ce16a926f9cd97c3210ef209c3352da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":130,"deletions":69,"files":["jc/parsers/netstat.py","jc/parsers/netstat_linux.py","jc/parsers/netstat_osx.py"]},"message":"add route_flags_pretty"},{"commit":"8631b756e7ab8cd71c2a3eb288e2d1823cec5782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":76,"deletions":0,"files":["tests/fixtures/freebsd12/netstat-Aa.out","tests/fixtures/freebsd12/netstat-an.out","tests/fixtures/freebsd12/netstat-i.out","tests/fixtures/freebsd12/netstat-r.out"]},"message":"add freebsd test files"},{"commit":"7414d984125300164a5b6156d7a80128d4d6cb15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":18,"deletions":18,"files":["jc/parsers/df.py","jc/parsers/fstab.py","jc/parsers/mount.py","jc/parsers/ntpq.py","jc/parsers/stat.py","jc/parsers/uname.py"]},"message":"add freebsd compatibility"},{"commit":"d7b19892e8fb11e17fcbadcdbb08d49897d7754f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":10,"deletions":7,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"]},"message":"add freebsd support for netstat -i"},{"commit":"96df396eaf4e030113005a95e525d644c394dfe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"2f6f640317da5af894f34f187c4243ef0c599d07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"spelling"},{"commit":"c4a0a50f3a3ac5833ab5d2f8a0cb3f18da335812","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]},"message":"add nix-env"},{"commit":"658f8a3842273cea049689b3aea15d89a7294b24","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":3,"files":["README.md"]},"message":"add zypper and ports info"},{"commit":"bfb876a1e394ff63c6773965ba0b65da4e109c1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"90c34b1f4ee2d9ec8125346bb90b227f76ada2ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"fix dmidecode example"},{"commit":"3f9164ea77ec41e1b0671d0a642900d8e36faf9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"bold formatting"},{"commit":"7fd6fecbf5a08b1f13aa7e906e94be9bc126780a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"8029f72363a4d19938df07603f03a0147f6246a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":10,"deletions":7,"files":["changelog.txt","docs/parsers/stat.md","jc/cli.py","jc/parsers/stat.py","setup.py","tests/fixtures/osx-10.14.6/stat.json"]},"message":"change osx_flags from integer to string"},{"commit":"c7fdce5d3b7566a7d290627767c47d9c196e02ad","merge":"f5627a4 84f48aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #62 from kellyjonbrazil/dev"},{"commit":"84f48aa369a458f534523ecc1e3aaaf403d06f1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"2e9a0a9c1221dd01bd683ecbc4871d03738da671","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["changelog.txt"]},"message":"add features"},{"commit":"c1f6f2b9508e558ab88b4a0a61e93a6cf5460bea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":116,"deletions":4,"files":["docs/parsers/stat.md","jc/parsers/stat.py","tests/fixtures/osx-10.14.6/stat.json","tests/fixtures/osx-10.14.6/stat.out","tests/test_stat.py"]},"message":"osx fixes and tests"},{"commit":"ede21bca13c4b46899721f01d979c8b063f861a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":110,"deletions":78,"files":["jc/parsers/stat.py"]},"message":"add OSX support for stat"},{"commit":"8dd9a9f9cbc70a19176f909f6ac76b2bcf670736","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":45,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-i.json","tests/fixtures/osx-10.14.6/netstat-i.json","tests/fixtures/ubuntu-18.04/netstat-i.json","tests/fixtures/ubuntu-18.04/netstat-i.out","tests/test_netstat.py"]},"message":"add netstat -i tests"},{"commit":"04f92cd1330759e4bad1c0304b9e1c28e8d32d59","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":166,"deletions":4,"files":["README.md","docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_linux.py","tests/fixtures/centos-7.7/netstat-i.out"]},"message":"add linux support for netstat -i"},{"commit":"8be8d2393b276a9249e1c573ce19cf630f0942fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":99,"deletions":3,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-i.out"]},"message":"add netstat -i support for OSX"},{"commit":"0a879681be68fe2e6e5c013ab0fe18de99b04f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":97,"deletions":282,"files":["README.md","docs/parsers/netstat.md","jc/parsers/netstat.py"]},"message":"add netstat -r to docs"},{"commit":"2ca1587a49511899bf719e0b0c7de32158fc491d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":102,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-r.json","tests/fixtures/centos-7.7/netstat-rne.json","tests/fixtures/centos-7.7/netstat-rnee.json","tests/fixtures/ubuntu-18.04/netstat-r.json","tests/fixtures/ubuntu-18.04/netstat-r.out","tests/fixtures/ubuntu-18.04/netstat-rne.json","tests/fixtures/ubuntu-18.04/netstat-rne.out","tests/fixtures/ubuntu-18.04/netstat-rnee.json","tests/fixtures/ubuntu-18.04/netstat-rnee.out","tests/test_netstat.py"]},"message":"add linux netstat -r tests"},{"commit":"ec2cd2d708a57c0458657416bedcb4340cb40901","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":70,"deletions":11,"files":["docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_linux.py","jc/parsers/netstat_osx.py","tests/fixtures/centos-7.7/netstat-r.out","tests/fixtures/centos-7.7/netstat-rne.out","tests/fixtures/centos-7.7/netstat-rnee.out","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-rnl.json"]},"message":"add netstat -r support for linux"},{"commit":"5d0dbece9317e84a47d9f4b2d18a9ffa33fbee6e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":288,"deletions":5,"files":["docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-r.out","tests/fixtures/osx-10.14.6/netstat-rnl.json","tests/fixtures/osx-10.14.6/netstat-rnl.out","tests/test_netstat.py"]},"message":"add netstat -r functionality for OSX"},{"commit":"df1e4b414b2bda5be3153767cd854b2483ba600b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":[".gitignore"]},"message":"remove unused folder"},{"commit":"40760991e7dae43cd15134310f7bbb5ce0f58dae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["LICENSE.md"]},"message":"update copyright date"},{"commit":"464f5f86cf2c8fe6a1a857b0ad4d221a3edf3d88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"update description"},{"commit":"7b09e9fccdd4f09218a500b54c898ada1b9843c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":8,"deletions":5,"files":["docs/parsers/dmidecode.md","jc/parsers/dmidecode.py","tests/fixtures/centos-7.7/dmidecode.json","tests/fixtures/fedora32/dmidecode.json","tests/fixtures/ubuntu-18.04/dmidecode.json"]},"message":"set empty values to Null and update fixtures"},{"commit":"6cba7d429898d331c674c778f8bd85ba75a8dca9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"remove linux from description"},{"commit":"9730f62e4970b5a4490f8dc24b6cfb9cacd0cbf2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":151,"deletions":133,"files":["jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json","tests/fixtures/osx-10.14.6/netstat.out"]},"message":"fixup name field and update test fixtures"},{"commit":"e0c1c87f549eee000b93b5f5a3e8d0b052eb7d32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["README.md"]},"message":"formatting"},{"commit":"931b3d2b836b251590497f4cfa65f106762086c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"e5d561baeecf1fd83a884b3cd9d322762f750dfb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/netstat.py"]},"message":"add multipath condition for osx detection"},{"commit":"2867593e7aa12299686e2c6aa0f2a79a9b550b53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"dd52fee5635c977d5c77046ab9fe78d2ed10deef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":2141,"deletions":0,"files":["tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-Abn.out","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat-An.out","tests/fixtures/osx-10.14.6/netstat.json","tests/fixtures/osx-10.14.6/netstat.out","tests/test_netstat.py"]},"message":"osx netstat tests and fixtures"},{"commit":"8e1f8858273e671a882a07eae1c35b38f5298c94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"fix filtered netstat views"},{"commit":"2d39a58f902e6af77f8f96ffcd1d68b7cbadd56c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":81,"deletions":14,"files":["README.md","docs/parsers/dmidecode.md","docs/parsers/netstat.md","jc/parsers/dmidecode.py"]},"message":"doc update"},{"commit":"9c4fa2ae2601ca4880c0b078fa917f01f1392e0e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":22,"deletions":2,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"]},"message":"integer conversions and icmp fix"},{"commit":"de52d84e82df6d8c5e2416c6bc44e59c41c685da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/netstat_osx.py"]},"message":"fix udp state and udp46 entries"},{"commit":"ce9b55059a28d363b8b0ae4f3ccbdbdc4bf4b58e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":185,"deletions":167,"files":["jc/parsers/netstat.py","jc/parsers/netstat_linux.py"]},"message":"organize files"},{"commit":"bcd370a6a01a115d470776f5690f8571d68d3930","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":15,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"]},"message":"code cleanup"},{"commit":"c8216850abd2d0b8cc6761453f853f296e8a28f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":55,"files":["jc/parsers/netstat_osx.py"]},"message":"code cleanup"},{"commit":"f5feedb90b39e5c3f4564615482d47ccd145844f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":10,"files":["jc/parsers/netstat_osx.py"]},"message":"fix comments"},{"commit":"a4371cd187fe5077018edbfeee77eb17c6a90ad3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/netstat_osx.py"]},"message":"support netstat -A"},{"commit":"9d5ba4c83404e4fab5c0f40c30b4735685499a31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/netstat_osx.py"]},"message":"formatting"},{"commit":"1639dee1bb93f6f89e8bb7b37134dc1f561c479c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":35,"files":["jc/parsers/netstat_osx.py"]},"message":"fix parse_post"},{"commit":"9363f430f20951e6fa739f06c85c5b6b3421b60d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/netstat.py"]},"message":"use list extend method to simplify code"},{"commit":"9192a0907364c772558380be1373b8dcea972a6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":124,"deletions":34,"files":["jc/parsers/netstat_osx.py"]},"message":"parse all sections"},{"commit":"b915eb97556ccc5fc60e8d23f7298ffec2d8e3b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":237,"deletions":55,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"]},"message":"initial osx parser"},{"commit":"1cfcc2b592f682d2b50a0c4188fa3ae832a6c682","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/dmidecode.py"]},"message":"tighten up line test logic when counting tabs"},{"commit":"7138dd02b73073441a52c9b574bf0d6e02f0d7d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/parsers/dmidecode.py"]},"message":"cleanup variables after adding to item"},{"commit":"b4276643b70f7820f8f53df22b32fffb54e30ca2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":56,"deletions":0,"files":["tests/fixtures/centos-7.7/dmidecode.json","tests/fixtures/fedora32/dmidecode.json","tests/fixtures/ubuntu-18.04/dmidecode.json","tests/test_dmidecode.py"]},"message":"add dmidecode tests and fixtures"},{"commit":"2ef00763bfe7c4348f30026759941efe39861a0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/dmidecode.py"]},"message":"fix first item"},{"commit":"54364928fc826ead7774a4cec1bcb73a5cb9ee0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":74,"deletions":81,"files":["docs/parsers/dmidecode.md","jc/parsers/dmidecode.py"]},"message":"fix oddities like hybrid single/multiline data and items containing multiple records"},{"commit":"09b3b4932b0fa4a2b18c88a8465c15a194b727e6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":35430,"deletions":0,"files":["tests/fixtures/centos-7.7/dmidecode.out","tests/fixtures/fedora32/dmidecode.out","tests/fixtures/ubuntu-18.04/dmidecode.out"]},"message":"add dmidecode output fixtures"},{"commit":"29d6670119d8fcd0344e90f01bfb6260aa936e50","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/dmidecode.py"]},"message":"convert integers"},{"commit":"2f654b5f1acda01192294f4c18a5a31363e7f387","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["docs/parsers/dmidecode.md"]},"message":"doc update"},{"commit":"e53b9f5992450b53efc886b4fa9ca16f3dd07530","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["jc/parsers/dmidecode.py"]},"message":"add caveats to documentation"},{"commit":"addb234e6162c58750cb67947bc4776635bf54fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":153,"deletions":0,"files":["docs/parsers/dmidecode.md"]},"message":"add dmidecode doc"},{"commit":"76eca3b65911a0a340d3d94322a8145ee89c50da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"]},"message":"add dmidecode"},{"commit":"f90dec4c0ecf88623fb22273b7527ec8884826c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":94,"deletions":5,"files":["jc/parsers/dmidecode.py"]},"message":"add examples to documentation"},{"commit":"8900a59d4cb424ff58d1eb27f8fda7ea0a668a5c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":19,"files":["jc/parsers/dmidecode.py"]},"message":"simplify logic by removing redundant block"},{"commit":"6685138200d5955115707d04aad0293ea8af5b15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dmidecode.py"]},"message":"fix for missing multi-line values that come immediately after a previous multi-line value"},{"commit":"4d3e65b980d50164b8220e59560822b9871580ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/parsers/dmidecode.py"]},"message":"fix missing values"},{"commit":"e9282bb546f560da6396f44e2ce9e04136348e2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":175,"deletions":0,"files":["jc/cli.py","jc/parsers/dmidecode.py"]},"message":"add dmidecode parser"},{"commit":"f5627a45947e5e76e5f3e64d9b30099fe0b962a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"81ffdb25105c681c8ed12336d220a102b7f4215e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/cli.py"]},"message":"remove shebang for Fedora packaging"},{"commit":"4c00a99850cb6f69713be7c6ad9ffba11924d9b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"2bfcb45b28e2174a8bbc27237e619b5c232ccae8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["jc/cli.py"]},"message":"make cli.py executable"},{"commit":"ab0c10e791283affb227d0d5306701ba7fd29d13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["LICENSE.md","README.md"]},"message":"remove execute permissions"},{"commit":"2c1935115de03a28fe92674b04b2542b0eccb8fe","merge":"99070fa d98e43d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #61 from kellyjonbrazil/dev"},{"commit":"d98e43dc78205d3224bfc1e67de2da3c5fb7ea9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"add netstat item"},{"commit":"9348988d646d9b9c9970c19e84f311554ae38e7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":0,"files":["tests/test_netstat.py"]},"message":"add netstat test for Fedora32"},{"commit":"1285c664679c40b18327c89b85921a80b01f0191","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":140,"deletions":0,"files":["tests/fixtures/fedora32/netstat.json","tests/fixtures/fedora32/netstat.out"]},"message":"netstat with bluetooth section"},{"commit":"b7191bbc130e0f33d02c0a4819fa91ffff1599d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"handle bluetooth section (ignore for now)"},{"commit":"98b97509f7893cb95e9651ce9706db5c961aa997","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"2b2b570490f3834367a598579473001f45738e8a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":21,"deletions":0,"files":["tests/fixtures/fedora32/last.json","tests/fixtures/fedora32/last.out","tests/test_last.py"]},"message":"add tests for 'gone - no logout'"},{"commit":"cce2d1ff298f2284c43c4534144329f3533a81ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/last.py"]},"message":"add condition for 'gone - no logout'"},{"commit":"b79600c57249cbb65805caad2524cc2492342be6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"version bump"},{"commit":"140f1a85437745296b56976bef1b46514e323a4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":7,"deletions":7,"files":["tests/fixtures/centos-7.7/ls-R-newlines.json","tests/fixtures/centos-7.7/ls-R.json","tests/fixtures/centos-7.7/ls-glob.json","tests/fixtures/osx-10.14.6/ls-glob.json","tests/fixtures/ubuntu-18.04/ls-R-newlines.json","tests/fixtures/ubuntu-18.04/ls-R.json","tests/fixtures/ubuntu-18.04/ls-glob.json"]},"message":"test fixes for issue #60"},{"commit":"e34657cfde6816ab7a7415d83580df0a1d98a5a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"]},"message":"fix issue #60 that was skipping the first file in some instances using -R without -l"},{"commit":"99070fa6073c4415a6faf8ca69dd6aa089af4062","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"2b46785b1f1281ee63df9159e36068f4607ad9b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":25,"deletions":3,"files":["jc/parsers/ifconfig.py"]},"message":"add MIT license to vendorized IfconfigParser class"},{"commit":"c72562524b2b9aaca0be372bb24343158829ba5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"fully remove tests from packaging"},{"commit":"b7dd6441c7e3f54f8a260fceef49aae6816c7151","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":1,"files":["changelog.txt","jc/cli.py"]},"message":"version bump"},{"commit":"31fcc2f755ad86622cf51a75879b14d44f246300","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["MANIFEST.in"]},"message":"remove manifest.in - no longer needed due to removing tests"},{"commit":"b391aa14bceffedb5a9c13f3f908923790edefc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["setup.cfg"]},"message":"add license_file to metadata"},{"commit":"d3c45debbb6690acd341fbcc9b99d1ae4cf0a43c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["setup.py"]},"message":"remove tests and add license file"},{"commit":"5b08469b874553744bd5c5b1fa6581f4dcffacd0","merge":"8cf00a2 4a77ec6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #57 from kellyjonbrazil/dev"},{"commit":"4a77ec63a46554c84e646d31564230774ed87431","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["docs/parsers/ifconfig.md"]},"message":"add IfconfigParser class"},{"commit":"d13606b6dc2c207be6dea89a2c3e713c18a574b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":7,"deletions":6,"files":["changelog.txt","jc/cli.py","requirements.txt","setup.py"]},"message":"modify dependencies for easier packaging into Fedora"},{"commit":"05291c93bba1aa364ba1ac7f2508e24bb362a814","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":198,"deletions":3,"files":["jc/parsers/ifconfig.py"]},"message":"vendorize ifconfig-parser module for easier packaging in Fedora"},{"commit":"8cf00a208eb8493300331e7361b72e4f9e3f140e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"change text to strings"},{"commit":"06d73c88767a5b4d6003231c897c447ee5e1faa5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"649c646ea25ac7f89900cffa8919df01671bd32d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]},"message":"add brew install option"},{"commit":"b7756d92501a7b8ba8e77d77d9d3718a58425beb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"1cd2cd954c21e5caec333507bd81819c82d45b49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":16,"files":["tests/fixtures/osx-10.11.6/du.json","tests/fixtures/osx-10.11.6/du.out","tests/fixtures/osx-10.14.6/du.json","tests/fixtures/osx-10.14.6/du.out"]},"message":"remove references to homebrew/shim to allow tests to pass in homebrew packaging ci/cd"},{"commit":"72020b8da999ddca6f9ba82da235c9f42e4f4273","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":22,"files":["README.md"]},"message":"move packages info to jc-packages github page"},{"commit":"cf9720b749e7fc8caed0d2f1f2b1727a22a156b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"update install info"},{"commit":"967b9db7f90a3c3a0352edde7f4455c5f5d45b18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["README.md"]},"message":"spelling"},{"commit":"bb3acb1182f4d509f9ddc7dfcffa4578e0a2bd5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"560c7f7e6d1f8a69ab026ddbff753d232ca1d00b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"79b28417644e00b933f531374d2f7fe8051e61be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":0,"files":["README.md"]},"message":"add new binary package install info"},{"commit":"a06a89cbd11026aa3910fadd1eff7fe388d02507","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"431bd969eb4809424fe99a02a7decb98bce9ea51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"use sys.exit(0) instead of exit()"},{"commit":"c87b722aec6e6964c516bbb8e80667ad7d9c6bc7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"spelling"},{"commit":"3688b8b014a1cf753b2207fbf3ebf0292c3fd672","merge":"99f7842 07b8d9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #56 from kellyjonbrazil/dev"},{"commit":"07b8d9e0c0d723d93e6c652f5b6156c467c451c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"7454b53e395e9122c00d4cf06b1c2af109913d7a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["README.md"]},"message":"formatting"},{"commit":"3d6a76024de0f9dcf91a4ab49cabe461074114fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":0,"files":["README.md"]},"message":"update with JC_COLORS info"},{"commit":"421b9809575a8de00229af4b851739889638ac74","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":37,"files":["jc/cli.py"]},"message":"JC_COLORS working"},{"commit":"4a22e27d6a80a988f4de17bce421110d6abb8867","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":64,"deletions":0,"files":["jc/cli.py"]},"message":"add set_env_colors function"},{"commit":"99f7842dee0f79cf933fae185cf8b0ed7c8b210f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":11,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"fix brek on pipe error"},{"commit":"7f869b4b187d70752207a7e74c13b858446f898f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":11,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"change colors to ansi and match jello style"},{"commit":"9665f4ee84680f3a8154b8a43ea668af2907782c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add pypi badge"},{"commit":"606904d48b1c7e0c19a940b5be0b564d1b5be6c8","merge":"302f05c 3f5279b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #53 from kellyjonbrazil/dev"},{"commit":"3f5279b97c386c736e0e2faa5c39d68ef89c46aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to 1.10.1"},{"commit":"f5ec21e6ac612566af93158fc3968b901322d04a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_luf.py"]},"message":"use in instead of find()"},{"commit":"578a284465f014fe71ad6ac00bd41dc24ab2ced9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_ls.py"]},"message":"use in instead of find()"},{"commit":"422e392d9d98a7864312fc7fbd7f45537b71acbe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_lj.py"]},"message":"use in instead of find()"},{"commit":"54dfffd34a17d1194690142ac403391fc65bb85f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl.py"]},"message":"use in instead of find()"},{"commit":"cffba64d2b9165b44a8856665807111a2ad3a190","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/stat.py"]},"message":"use in and startswith() instead of find()"},{"commit":"56a0c12a59bb252d3b7d0929f9fb19b4d96a8437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/pip_list.py"]},"message":"use in instead of find()"},{"commit":"c174d3de18923b2b03befb5a7dfcbd977a8e147e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/netstat.py"]},"message":"use in and startswith() instead of find()"},{"commit":"a9c59ef9fc1bb68c9d0d7beffbeb670baf5b1e3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/mount.py"]},"message":"fix logic to not for ' type ' in cleandata[0]"},{"commit":"abdb9b26732a6a71f5938d665b2ca43a381e1b33","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/mount.py"]},"message":"use in instead of find()"},{"commit":"548aaab6262878d21f8b9539950cfad48638e35c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":42,"files":["jc/parsers/lsof.py"]},"message":"remove old commented code"},{"commit":"20571c87ae9e1ca8a1f3120511910751420a35ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/jobs.py"]},"message":"us in instead of find()"},{"commit":"19e49200de5c731f76b42e80388c5223e8097e39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"]},"message":"version bump"},{"commit":"d32f5c67a91ede572c88e431b2ad0ce4d6c87dec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/iptables.py"]},"message":"use startswith() instead of find()"},{"commit":"b83b626435c55d2aa63e56dd8f22603da59e7626","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ifconfig.py"]},"message":"use startswith() instead of find()"},{"commit":"ab2c1b25ec5da5f2ba238868c4dfca95a44da30e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/hosts.py"]},"message":"use startswith() and in instead of find()"},{"commit":"f2d46313a4508f13656cdb360f83fdf4116cc7d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/fstab.py"]},"message":"use startswith() instead of find()"},{"commit":"87e4796a6c936793e2784346819c7033d59b91e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/df.py"]},"message":"use in instead of .find()"},{"commit":"0014a5c2f4c056c2683d6614a65d778b1f527932","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab_u.py"]},"message":"us startswith() and in instead of .find()"},{"commit":"7af56e0dadab7d8b9538f3b7a550ad6dd1ac217d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab.py"]},"message":"use startswith() and in instead of find()"},{"commit":"a5ae6e3c017b041f9079ff12455b7551ad204cb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/arp.py"]},"message":"use startswith() instead of find()"},{"commit":"fe1a0d1faf46f55ed2888ed0065f3f3144691ed8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":9,"files":["jc/parsers/dig.py"]},"message":"use in instead of .find()"},{"commit":"302f05cdda305e46e69b74d5b0096f64c17da637","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"prettify style block"},{"commit":"c0044be7b0b6dadcffb64cb88ad92bf653dd2b6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"rename color grey to gray"},{"commit":"01100788070b82b4b827ef356972fa9b8f737eeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update badge"},{"commit":"42eacb45f8fdf8085c6231bf5297629c2ec97c22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"rename to Tests"},{"commit":"a43e2e19916662d509883457c160d7f95f97ae12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add -m option info"},{"commit":"c8b721d4f6e46a2db77e1140b9caeb3b403fef72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":9,"deletions":3,"files":["changelog.txt","jc/cli.py","requirements.txt","setup.py"]},"message":"version bump to 1.10.0"},{"commit":"d0bfddc3d9989444757d6668726c916e5363620b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":41,"deletions":6,"files":["jc/cli.py"]},"message":"add color and -m monochrome option"},{"commit":"6b925a16c87cf75bb30edfda38511e8f84a4f6d6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]},"message":"add tests badge"},{"commit":"89ebd9fc2271d2c76353d5707bfd4afb7dedc278","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":0,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"add axfr info to schema"},{"commit":"6b4ba662317629839aa62fbcfefb8ed3337c37ef","merge":"8ec8cd6 5b697dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #52 from kellyjonbrazil/dev"},{"commit":"5b697dc38141cdd47fcdd63bf295a80a7da86697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":72,"deletions":0,"files":["tests/test_dig.py"]},"message":"add more dig tests"},{"commit":"9ba73c95d1a528a9a92be4068805bb5aa027901e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":215,"deletions":0,"files":["tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/centos-7.7/dig-axfr.out","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-axfr.out","tests/fixtures/ubuntu-18.04/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-axfr.out","tests/test_dig.py"]},"message":"add tests"},{"commit":"93aa39044749c4c0ed749f62fb00fc1c76dc5af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to v1.9.3"},{"commit":"3cfb8945ddd83c00a720c44e2c1d97da0d8bad25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/dig.py"]},"message":"use startswith() instead of find"},{"commit":"cd8d38f2a136c4f35efc020b3476d09e965b71f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":50,"deletions":1,"files":["jc/parsers/dig.py"]},"message":"add axfr support"},{"commit":"8ec8cd62944c59c462ab9f520c1dcfd14218b1ed","merge":"e5bea9a c028113","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #50 from kellyjonbrazil/dev"},{"commit":"c02811356153c2b4f8b2d7efb7f48bf8f7748068","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to v1.9.2"},{"commit":"5f22e1c8031b808ef02ffe078408bd58cc76e570","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":33,"deletions":0,"files":["tests/fixtures/osx-10.14.6/arp-a2.json","tests/fixtures/osx-10.14.6/arp-a2.out","tests/test_arp.py"]},"message":"fix and test for osx arp entries without ifscope"},{"commit":"d3351787e5cabd064c19e6617e9535e501686404","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":9,"files":["jc/parsers/arp.py"]},"message":"change osx detection"},{"commit":"e5bea9ae3b0a70b38f7da7dd9184343dbbd18887","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/file.py"]},"message":"version bump"},{"commit":"93c710abe9171568f61f65c4f84c040ffc24870c","merge":"400f5a4 c29e7cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #49 from kellyjonbrazil/dev"},{"commit":"c29e7cfe5cc4b2151912c6f618137d1b6c39c7be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":9,"deletions":6,"files":["README.md","changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to 1.9.1"},{"commit":"cb5c1ba00dc0e02bf6ad6c40096d99e319fa6171","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":101,"deletions":0,"files":["tests/fixtures/osx-10.14.6/file2.json","tests/fixtures/osx-10.14.6/file2.out","tests/test_file.py"]},"message":"add tests for fix to make the file parser splitting more robust"},{"commit":"9a012b94e1942a14bc6dae3fb967ef618819c77b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/file.py"]},"message":"make splitting more robust"},{"commit":"400f5a44ece280cb0097d806b78a9490d2905600","merge":"c7cd2b6 a2ab5ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #48 from kellyjonbrazil/dev"},{"commit":"a2ab5bab91ea980399df1afb9d8071fa3282d04e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to v1.9.0"},{"commit":"fc8ab27361df3359b706125531b2643612d6996a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":93,"deletions":51,"files":["README.md","docs/parsers/ntpq.md","jc/parsers/ntpq.py","tests/fixtures/ubuntu-18.04/ntpq-p2.json","tests/fixtures/ubuntu-18.04/ntpq-p2.out","tests/test_ntpq.py"]},"message":"bugfix for misaligned columns and additional test for ntpq #31"},{"commit":"59f19d33a5c6677ea756a9424fdb032b430511a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":153,"deletions":0,"files":["tests/fixtures/centos-7.7/file.json","tests/fixtures/centos-7.7/file.out","tests/fixtures/osx-10.14.6/file.json","tests/fixtures/osx-10.14.6/file.out","tests/fixtures/ubuntu-18.04/file.json","tests/fixtures/ubuntu-18.04/file.out","tests/test_file.py"]},"message":"add file command tests for #41"},{"commit":"dfc96181159748d019419a2cba7aa9cb3b7a2a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":260,"deletions":1,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/file.md","jc/cli.py","jc/parsers/file.py"]},"message":"add file parser for issue #41"},{"commit":"8e02e5c75a11cf205299ee6f87b67f9b787cf55e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":5,"files":["jc/cli.py","tests/test_cli.py"]},"message":"fix issue with getting options with some commands #47"},{"commit":"970493ab9346a344b21be7614903ad81bc65a6e9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["jc/parsers/airport.py","jc/parsers/airport_s.py"]},"message":"add magic commands"},{"commit":"64d78956eb33ca0a2564fded3d12729ee036a915","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"update acknowledgment"},{"commit":"40c05346f4098f8eea14c42da07df3faa143587a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":25,"files":["jc/parsers/history.py"]},"message":"re-adding optimizations from https://github.com/philippeitis"},{"commit":"e9b0bc1409a824a82dabd2479892b7d18bad8c3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/airport.py"]},"message":"doc update"},{"commit":"798e6bb7d939176bb36771a6d41bd55403d583be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":29,"deletions":0,"files":["tests/fixtures/osx-10.14.6/airport-s.json","tests/test_airport_s.py"]},"message":"tests passing for airport -s. issue #46"},{"commit":"12a370deed03ba42d7b7ebb410195ce5f32bb9c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":372,"deletions":9,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/airport.md","docs/parsers/airport_s.md","jc/cli.py","jc/parsers/airport.py","jc/parsers/airport_s.py"]},"message":"add airport -s parser for issue #46"},{"commit":"553bfbe1a0dd866851ba7eca66e9295c2097ad86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":40,"deletions":6,"files":["docs/parsers/airport.md","jc/parsers/airport.py","tests/test_airport.py"]},"message":"tests passing for airport -I. Issue #46"},{"commit":"52494321fcfe0dc7ee71d8d78210b3c10372a237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":120,"deletions":15,"files":["README.md","docs/parsers/airport.md","jc/parsers/airport.py","tests/fixtures/osx-10.14.6/airport-I.json","tests/fixtures/osx-10.14.6/airport-I.out"]},"message":"fixes and docs for airport parser issue #46"},{"commit":"c6c9e06496683d2dd3586d17085801c7e698d960","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":196,"deletions":1,"files":["changelog.txt","docgen.sh","docs/parsers/airport.md","jc/cli.py","jc/parsers/airport.py","tests/fixtures/osx-10.14.6/airport-I.out","tests/fixtures/osx-10.14.6/airport-s.out"]},"message":"added airport command parser"},{"commit":"e3a6c05a58a2451e70975d8fabf644c56603c73d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":64,"deletions":17,"files":["docs/parsers/timedatectl.md","jc/parsers/timedatectl.py","tests/fixtures/centos-7.7/timedatectl.json","tests/fixtures/ubuntu-18.04/timedatectl.json","tests/test_timedatectl.py"]},"message":"timedatectl fixes, tests, and fixtures for issue #42"},{"commit":"391d06f68d1f45d33590d5407d3a5e4f723af717","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":35,"deletions":35,"files":["README.md","docs/parsers/ntpq.md","jc/parsers/ntpq.py","tests/fixtures/centos-7.7/ntpq-p.json","tests/fixtures/centos-7.7/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-p.json","tests/fixtures/ubuntu-18.04/ntpq-pn.json"]},"message":"change selection_state to state"},{"commit":"99804ea06e0c70e3a82ddc7f9c7a42343374d700","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":222,"deletions":0,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/timedatectl.md","jc/cli.py","jc/parsers/timedatectl.py"]},"message":"added timedatectl status parser"},{"commit":"51935deb2ad18e4ea3ca16954ce810354f6095a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":21,"deletions":0,"files":["tests/fixtures/centos-7.7/timedatectl.out","tests/fixtures/ubuntu-18.04/timedatectl.out"]},"message":"timedatectl test fixtures"},{"commit":"b24d0c3a475b88d9ccf1a8fe29715ee60972fcad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":34,"deletions":2,"files":["README.md","jc/parsers/ntpq.py"]},"message":"ntpq docs"},{"commit":"762a886d6fdf5c2ad21d81868d138fb32621ed1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":133,"deletions":0,"files":["tests/fixtures/centos-7.7/ntpq-p.json","tests/fixtures/centos-7.7/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-p.json","tests/fixtures/ubuntu-18.04/ntpq-p.out","tests/fixtures/ubuntu-18.04/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-pn.out","tests/fixtures/ubuntu-18.04/ntqp-p.out","tests/test_ntpq.py"]},"message":"add ntpq tests"},{"commit":"2c3e9ddfe47f56cd7edc2fdf6317f7ecec0b7918","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":543,"deletions":0,"files":["changelog.txt","docgen.sh","docs/parsers/ntpq.md","jc/cli.py","jc/parsers/ntpq.py","tests/fixtures/centos-7.7/ntpq-p.out","tests/fixtures/centos-7.7/ntpq-pn.out"]},"message":"add ntpq parser for issue #31"},{"commit":"c7cd2b63c8f24e9d17c458880fe401d8032395ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":91,"files":["tests/fixtures/generic/oscar_age_male.csv"]},"message":"delete unused test file"},{"commit":"f0528ea83112e71ff51c89be27fc9bbdfbbf1951","merge":"b5eaff2 5bc5596","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #45 from kellyjonbrazil/dev"},{"commit":"5bc5596f604fb87dffbfdf44ce2395b16bf01297","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":17,"deletions":4,"files":["changelog.txt","jc/cli.py","setup.py","tests/test_ls.py"]},"message":"version bump to 1.8.1"},{"commit":"2c27ac46be803b583caf82c1765bd0c35cee8bc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2454,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-lR-empty-folder.json","tests/fixtures/osx-10.14.6/ls-lR-empty-folder.out"]},"message":"add ls test fixtures"},{"commit":"caad840153e40dc660a2d5e06a96f3451fef25f9","merge":"aff86ae 65bd7e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #44 from philippeitis/patch-5"},{"commit":"65bd7e2904016141c1ed53cdd437865c66d7628e","merge":"17b6efe c3d7d7d","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","message":"Merge pull request #1 from kellyjonbrazil/pr/44"},{"commit":"c3d7d7db12d4870fc4499e0e3445d85ae89f2aea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"removed whitespace"},{"commit":"56053103625af6fb7fa749fc5bc3dbdc62fc223c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":4,"files":["tests/test_cli.py"]},"message":"added tests, removed os import, changed to 'assertEqual'"},{"commit":"17b6efe82e6a558353b011c543489eaaf3a6d3ac","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":14,"deletions":0,"files":["tests/test_cli.py"]},"message":"Create basic tests for generate_magic_commands()"},{"commit":"a032ae56ae7d247e00415267b65b2a8b80a3302e","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"Pass args to generate_magic_command() to allow testing."},{"commit":"eab2f4b0566b4c76db661cbfa99a56a6bf8d6541","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":33,"deletions":19,"files":["jc/cli.py"]},"message":"Move core magic() logic into seperate function for testability, minor tweaks."},{"commit":"aff86ae6c71abfe1cbdba5c574a5f3707292ec19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":29,"deletions":39,"files":["jc/cli.py"]},"message":"reimpliment magic() based on the dictionary approach suggested by philippeitis"},{"commit":"7ece9ddc1a37551cdaaac50f37a48e6d98b18bf4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"version bump ls"},{"commit":"7cd048e839a7cc8404fd5abc153a3d315c207819","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"1e22f610a33903e8525d35a18b1dcf760a93791e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/ls.py"]},"message":"fix for osx - doesn't print 'total xx' line if empty directory (issue #40)"},{"commit":"5249c972ae25e9b289a2667bf471aad5e58c70a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["changelog.txt"]},"message":"add to changelog"},{"commit":"fd45f856a050f6c56a7a6b50b97b3d8c4de28af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/history.py"]},"message":"import jc.utils instead of jc"},{"commit":"c8ab40cd33b14a3a1937ecf64bb23e282f5bb921","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"]},"message":"ignore .github folder"},{"commit":"b2c872925b37254dac74578c1803b4127f8411c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":20,"insertions":208,"deletions":220,"files":["tests/test_ls.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_passwd.py","tests/test_pip_list.py","tests/test_ps.py","tests/test_route.py","tests/test_shadow.py","tests/test_ss.py","tests/test_systemctl_lj.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py","tests/test_who.py","tests/test_xml.py","tests/test_yaml.py"]},"message":"add utf-8 encoding for testing on Windows"},{"commit":"f48e229202f8ab1ebfa502ca57bb31cf673c7a62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":192,"deletions":192,"files":["tests/test_arp.py","tests/test_blkid.py","tests/test_crontab.py","tests/test_crontab_u.py","tests/test_csv.py","tests/test_df.py","tests/test_dig.py","tests/test_du.py","tests/test_env.py","tests/test_free.py","tests/test_fstab.py","tests/test_group.py","tests/test_gshadow.py","tests/test_history.py","tests/test_hosts.py","tests/test_id.py","tests/test_ifconfig.py","tests/test_ini.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_last.py"]},"message":"utf-8 open for windows tests"},{"commit":"799fec92c39b1ff0696c6ebb182c4bef66b86e56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["tests/test_pip_show.py","tests/test_systemctl.py"]},"message":"utf-8 for windows support"},{"commit":"87a41c2fcaa395f108b5a5126ed77f7cc7fe5d6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["tests/test_lsblk.py","tests/test_stat.py"]},"message":"add utf-8 to open function"},{"commit":"7f85de0c46cda95d57b9677ba0ca3ea59690e502","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"add windows-latest"},{"commit":"13661b19934a74417713e98e3e1e4df6bb0f29ad","merge":"5f798d6 51d5c38","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #37 from philippeitis/continuous_integration"},{"commit":"51d5c3892d6ff1e2e6ac7c4f3e496e7d9ed4b6a7","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"Remove Windows tests, due to lack of support."},{"commit":"e4eab4641ac15220f2787c5d27b443ab8c718b86","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/blkid.py"]},"message":"Change line in blkid.py to trigger CI"},{"commit":"9b148e0ba37e18749d95608e1bac6c090ab83ee2","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["requirements.txt"]},"message":"Add requirements.txt"},{"commit":"de28932650d5027e2781011f1243b89f053b241d","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":7,"deletions":6,"files":["jc/parsers/arp.py"]},"message":"Consolidate dictionary into creation, trigger CI"},{"commit":"5f798d603e461d2de5adf74662ba4d4b121f28f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/history.py"]},"message":"version bump and ack to philippeitis"},{"commit":"a0757b2dd3fc0f3e26622941d93bd909dae0a1f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":5,"files":["jc/parsers/foo.py"]},"message":"optimize line parsing"},{"commit":"498d51b4e802cb40cac58aae1eff1f723bbbd896","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":31,"deletions":0,"files":[".github/workflows/pythonapp.yml"]},"message":"Enable Continuous Integration with GitHub Actions."},{"commit":"b06b6bae3f64f591c9075812dc1b632ef6d2da37","merge":"6aa2d5a 0652768","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #36 from philippeitis/patch-3"},{"commit":"b5eaff21372a58aefb66e5afc5e863db8355fee1","merge":"d75c406 c01bcd3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #35 from kellyjonbrazil/revert-34-patch-3"},{"commit":"c01bcd3734382a0c388d9f4041fc888171ca7675","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":25,"deletions":12,"files":["jc/parsers/history.py"]},"message":"Revert \"Simplify process() in history.py, avoid list allocation in parse()\""},{"commit":"d75c4068caaf4adbe9a39fa452ae867421053673","merge":"d96b3a6 0652768","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #34 from philippeitis/patch-3"},{"commit":"6aa2d5a3d26f9f00c3334928f6f0e501860433da","merge":"69576f6 a63408c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #33 from philippeitis/patch-2"},{"commit":"065276805f0f2dd23a6382f0120ca07e9eae116f","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":12,"deletions":25,"files":["jc/parsers/history.py"]},"message":"Simplify process() in history.py, avoid list allocation in parse()"},{"commit":"a63408c8cf3f99646be2b375f651d6cf417f7ae0","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/cli.py"]},"message":"Handle case where only options are passed."},{"commit":"69576f6bfae073196627a0a39b5ececb8666d25c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/cli.py"]},"message":"minor sytax fixes"},{"commit":"19845624e2996da4653efc2f312aceb514feaf5c","merge":"d96b3a6 22ff296","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #32 from philippeitis/patch-1"},{"commit":"22ff2964e9889587711e779ac24f8f8034212f5e","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":62,"deletions":75,"files":["jc/cli.py"]},"message":"Simplify main(), magic() methods."},{"commit":"d96b3a65a98bc135d21d4feafc0a43317b5a11fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"4989445ef4bb8919d9b3b95e2fcee77ca7692aec","merge":"53ee2c3 6770892","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #30 from kellyjonbrazil/dev"},{"commit":"6770892acd49aced225dbccf39290f33522c9001","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]},"message":"add release notes link"},{"commit":"d4eba8740fc325756f3db96ab37a5383540cbeff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"release date 3/3"},{"commit":"9f607605605e47990f97ccfd48fde19a14e036e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["tests/test_group.py","tests/test_gshadow.py"]},"message":"add group and gshadow tests"},{"commit":"0a8f8ac934f040141e6a4eec8cf7170e1ca73294","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"add group and gshadow parsers"},{"commit":"6ae24c82447bcff606e7027dd01b916293b49584","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":274,"deletions":0,"files":["tests/fixtures/centos-7.7/group.json","tests/fixtures/centos-7.7/group.out","tests/fixtures/centos-7.7/gshadow.json","tests/fixtures/centos-7.7/gshadow.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/group.json","tests/fixtures/osx-10.14.6/group.out","tests/fixtures/ubuntu-18.04/group.json","tests/fixtures/ubuntu-18.04/group.out","tests/fixtures/ubuntu-18.04/gshadow.json"]},"message":"add group and gshadow test fixtures"},{"commit":"d3679082a8c5cff76eb7de67c33fe716a1402182","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":64,"deletions":0,"files":["README.md"]},"message":"add group and gshadow parsers"},{"commit":"fb08b42dca135705a3759435335d95c898d47f60","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":21,"deletions":21,"files":["docs/parsers/group.md","jc/parsers/group.py"]},"message":"change 'group_list' to 'members'"},{"commit":"4aeaa9f42a88bf4e05c8780a35cc8c4d83c9b842","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":316,"deletions":0,"files":["docgen.sh","docs/parsers/gshadow.md","jc/cli.py","jc/parsers/gshadow.py","tests/fixtures/ubuntu-18.04/gshadow.out"]},"message":"add /etc/gshadow parser"},{"commit":"5f5693da048cb4739dc56500c672dc8fbccaaf32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["docs/parsers/csv.md"]},"message":"spelling fix"},{"commit":"5eb0f61727f92a84fb3620e13db072167ef552ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":333,"deletions":0,"files":["docgen.sh","docs/parsers/group.md","jc/cli.py","jc/parsers/group.py"]},"message":"add /etc/group file parser"},{"commit":"958e998991b1cc61dc1dc341b90cd53f4691cd43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/csv.py"]},"message":"formatting"},{"commit":"b78c1509f67fb76d17ac97193a2851d8d9e17f62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/csv.py"]},"message":"try/except dialect detection"},{"commit":"ce184d4d57faa3f1bca5bcaa02da7a5a5d995eb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":20,"insertions":24054,"deletions":0,"files":["tests/fixtures/generic/csv-biostats.csv","tests/fixtures/generic/csv-biostats.json","tests/fixtures/generic/csv-cities.csv","tests/fixtures/generic/csv-cities.json","tests/fixtures/generic/csv-deniro.csv","tests/fixtures/generic/csv-deniro.json","tests/fixtures/generic/csv-example.csv","tests/fixtures/generic/csv-example.json","tests/fixtures/generic/csv-flyrna.json","tests/fixtures/generic/csv-flyrna.tsv","tests/fixtures/generic/csv-flyrna2.json","tests/fixtures/generic/csv-flyrna2.tsv","tests/fixtures/generic/csv-homes-pipe.csv","tests/fixtures/generic/csv-homes-pipe.json","tests/fixtures/generic/csv-homes.csv","tests/fixtures/generic/csv-homes.json","tests/fixtures/generic/csv-insurance.csv","tests/fixtures/generic/csv-insurance.json","tests/fixtures/generic/oscar_age_male.csv","tests/test_csv.py"]},"message":"add csv parser tests"},{"commit":"b4c3714ced9ee5cc6a7ef0c59a43cf85e1cb9824","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["README.md"]},"message":"removed [OPTIONS] PARSER syntax. still works but prefer the PARSER [OPTIONS] syntax for better performance"},{"commit":"5b7dfa043864f1a3f34aa4ef5c6554a2dfe185f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"formatting"},{"commit":"391a3884765780497dc34e0e9938ff5032c81291","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":49,"deletions":0,"files":["README.md","changelog.txt"]},"message":"doc update"},{"commit":"d9c4e2ed4c0f908f4b63c2376b53ddfd32a0fae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":241,"deletions":0,"files":["docgen.sh","docs/parsers/csv.md","jc/cli.py","jc/parsers/csv.py"]},"message":"add csv file parser"},{"commit":"0c42db38b102987629e40cee2716b826161e6e94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/who.md","jc/parsers/who.py"]},"message":"doc update"},{"commit":"2f9be8bf33f8be5651d06da9d316f7894606df19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/cli.py"]},"message":"simplify usage"},{"commit":"e8c00155e861b9eedfdf37a22912271bec581d62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"add -b to warning message"},{"commit":"cc88fdd9ee3951d7ef2aa881cc12f0b7f96aef86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"update example"},{"commit":"d9de11ef1d846a9625dad0adb962b864404c90c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["README.md"]},"message":"add another who example"},{"commit":"0ceda97d0968b67b70cdbb68f7a62657e79c9935","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":88,"deletions":0,"files":["tests/test_who.py"]},"message":"who parser tests"},{"commit":"d0dec92ba84640ddc40da7c6faa6568b76757e04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":36,"deletions":0,"files":["tests/fixtures/centos-7.7/who-a.json","tests/fixtures/centos-7.7/who-a.out","tests/fixtures/centos-7.7/who.json","tests/fixtures/centos-7.7/who.out","tests/fixtures/osx-10.14.6/who-a.json","tests/fixtures/osx-10.14.6/who-a.out","tests/fixtures/osx-10.14.6/who.json","tests/fixtures/osx-10.14.6/who.out","tests/fixtures/ubuntu-18.04/who-a.json","tests/fixtures/ubuntu-18.04/who-a.out","tests/fixtures/ubuntu-18.04/who.json","tests/fixtures/ubuntu-18.04/who.out"]},"message":"add who test fixtures"},{"commit":"d420c008d8aaa0879fa5a3f236d81acb506376c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["jc/parsers/who.py"]},"message":"fix for pts lines with no user info"},{"commit":"f0b32db4333477e22cc40de62cf026a6a7aa2eb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","docs/parsers/who.md"]},"message":"who doc update"},{"commit":"bc838eda591473d32b11a885e60ef653925739d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/parsers/who.py"]},"message":"fix output for non-extended"},{"commit":"afe55b6af07b74816d33d9555ffaa1c1921dd27a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":46,"deletions":0,"files":["README.md"]},"message":"add who parser"},{"commit":"dd3a3ac302d7b35beef1181e74aed0faf96fd3e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":255,"deletions":9,"files":["changelog.txt","docgen.sh","docs/parsers/who.md","jc/parsers/who.py"]},"message":"doc update and process pid integers"},{"commit":"f9982a79474c1838f37fc0ff88437980b228d7a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":2,"files":["jc/parsers/who.py"]},"message":"fixes for from and comment fields"},{"commit":"07c1be9e9ad9f62cf76c23788152de8f3530ee16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":170,"deletions":0,"files":["jc/cli.py","jc/parsers/who.py"]},"message":"add who command parser"},{"commit":"f832b88755bfbd3878ec402e603180e6825279be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["tests/test_passwd.py","tests/test_shadow.py"]},"message":"add passwd and shadow tests"},{"commit":"0fac757efca41db062b2f65acc727963c5fb353c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"add passwd and shadow parsers"},{"commit":"fc15742065531152f3d5895042eeb806e33a192a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":215,"deletions":0,"files":["tests/fixtures/centos-7.7/passwd.json","tests/fixtures/centos-7.7/passwd.out","tests/fixtures/centos-7.7/shadow.json","tests/fixtures/centos-7.7/shadow.out","tests/fixtures/osx-10.14.6/passwd.json","tests/fixtures/osx-10.14.6/passwd.out","tests/fixtures/ubuntu-18.04/passwd.json","tests/fixtures/ubuntu-18.04/passwd.out","tests/fixtures/ubuntu-18.04/shadow.json","tests/fixtures/ubuntu-18.04/shadow.out"]},"message":"passwd and shadow test fixtures"},{"commit":"6f2466a1319eaa4256ae7a2a0f23b3ff37882d37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":73,"deletions":0,"files":["README.md"]},"message":"update readme with /etc/passwd and /etc/shadow file parsers"},{"commit":"4b90e22f0a9c6790bca62c8314945a7ffc6e267b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":137,"deletions":9,"files":["docs/parsers/shadow.md","jc/parsers/shadow.py"]},"message":"doc update"},{"commit":"c4935687853fb3b079ae42614793cdafe68e124e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/passwd.md","jc/parsers/passwd.py"]},"message":"doc fix"},{"commit":"1cdf004b7728901dc137e57b0c8994edfdd6d417","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":190,"deletions":0,"files":["docgen.sh","docs/parsers/shadow.md","jc/cli.py","jc/parsers/shadow.py"]},"message":"add /etc/shadow parser"},{"commit":"a4ea50426184d30cbe849a8f80bfd5c975075c9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":303,"deletions":0,"files":["docgen.sh","docs/parsers/passwd.md","jc/cli.py","jc/parsers/passwd.py"]},"message":"add /etc/passwd parser"},{"commit":"4c2c234c3bf68d1aac66bd4d1f22b9f97e99128d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":16,"insertions":673,"deletions":0,"files":["tests/fixtures/centos-7.7/last-w.json","tests/fixtures/centos-7.7/last-w.out","tests/fixtures/centos-7.7/last.json","tests/fixtures/centos-7.7/last.out","tests/fixtures/centos-7.7/lastb.json","tests/fixtures/centos-7.7/lastb.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/last.json","tests/fixtures/osx-10.14.6/last.out","tests/fixtures/ubuntu-18.04/last-w.json","tests/fixtures/ubuntu-18.04/last-w.out","tests/fixtures/ubuntu-18.04/last.json","tests/fixtures/ubuntu-18.04/last.out","tests/fixtures/ubuntu-18.04/lastb.json","tests/fixtures/ubuntu-18.04/lastb.out","tests/test_last.py"]},"message":"add last and lastb tests"},{"commit":"3d4c0f3e89dab6496ff74df350e3238d6625933c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":22,"insertions":285,"deletions":0,"files":["tests/fixtures/centos-7.7/blkid-ip-multi.json","tests/fixtures/centos-7.7/blkid-ip-multi.out","tests/fixtures/centos-7.7/blkid-ip-udev-multi.json","tests/fixtures/centos-7.7/blkid-ip-udev-multi.out","tests/fixtures/centos-7.7/blkid-ip-udev.json","tests/fixtures/centos-7.7/blkid-ip-udev.out","tests/fixtures/centos-7.7/blkid-sda2.json","tests/fixtures/centos-7.7/blkid-sda2.out","tests/fixtures/centos-7.7/blkid.json","tests/fixtures/centos-7.7/blkid.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/blkid-ip-multi.json","tests/fixtures/ubuntu-18.04/blkid-ip-multi.out",".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.json",".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.out","tests/fixtures/ubuntu-18.04/blkid-ip-udev.json","tests/fixtures/ubuntu-18.04/blkid-ip-udev.out","tests/fixtures/ubuntu-18.04/blkid-sda2.json","tests/fixtures/ubuntu-18.04/blkid-sda2.out","tests/fixtures/ubuntu-18.04/blkid.json","tests/fixtures/ubuntu-18.04/blkid.out","tests/test_blkid.py"]},"message":"add blkid tests"},{"commit":"52fad02903468c05d2422a340ad8dbcdf18ed475","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"doc update"},{"commit":"9dcabc057c40e345971a08474b5b886e6b60a8de","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/blkid.py"]},"message":"support multi device udev output"},{"commit":"db8c1079ddc25922ab6a20d0f71fb19af38f8092","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/blkid.py"]},"message":"use maxsplit=1 in case there are multiple '=' delimiters"},{"commit":"8f954673abdbbd4d9b9da3eacc61b335b4909f89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/blkid.py"]},"message":"use shlex split for values within quotations that have spaces"},{"commit":"79522d1c7dd4dec15b75b06dda002752f7d97e36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"doc fixes"},{"commit":"a18bf030794efef125c70a32fe82855e47649b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/parsers/last.py","jc/parsers/ls.py"]},"message":"use raw strings for regular expressions"},{"commit":"c02b6b5d827d26b43db0a3457124714aa2dbbc98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":81,"deletions":1,"files":["README.md","changelog.txt","setup.py"]},"message":"doc updates"},{"commit":"f99b4232848b0d868804acc4125836bfcf475bba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":134,"deletions":29,"files":["docs/parsers/blkid.md","jc/parsers/blkid.py"]},"message":"doc update"},{"commit":"d7d9d45d4fba89e74f7490c463eb26bf20a5d127","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/blkid.py"]},"message":"add missing comma"},{"commit":"90065ec0cdc8c5abc13bc0027f63658dacf3cfb2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":31,"deletions":26,"files":["jc/parsers/blkid.py"]},"message":"add more integers"},{"commit":"51157ebb867a48332c768bf3086614944aebdb62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/blkid.py"]},"message":"another devname fix"},{"commit":"96d95c79ca0938e326f55f858f8153df9cb49e44","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/blkid.py"]},"message":"devname fix"},{"commit":"e5da34c23306463e8707b15676db0ca53bf66757","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/blkid.py"]},"message":"check if devname key exists before renaming"},{"commit":"f09d657f7728242947db3dc63ff6779d08c37866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/blkid.py"]},"message":"rename devname to device"},{"commit":"0f4b0189f54dc0b3622cd407c5565e53ea111379","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":35,"deletions":3,"files":["jc/parsers/blkid.py"]},"message":"process integer values"},{"commit":"4666042abb3142e2cfb518db9ffe22d9e608e090","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":216,"deletions":0,"files":["docgen.sh","docs/parsers/blkid.md","jc/cli.py","jc/parsers/blkid.py"]},"message":"add blkid parser"},{"commit":"027d544c2bb778adc0ee9463832f19b10e099a0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"]},"message":"add last and lastb parser"},{"commit":"f1967d0138d27bde864c2400aa75baa8a39bbfde","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/last.py"]},"message":"system_boot fix"},{"commit":"c1d896027dd1ce021e048b3e77eab24ff59d08bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/last.py"]},"message":"fix system_boot tty"},{"commit":"5c2d2a66187d32d62b31b7c7f13e502fdb7f9635","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":190,"deletions":6,"files":["docgen.sh","docs/parsers/last.md","jc/parsers/last.py"]},"message":"process function and docs"},{"commit":"997b269b0b7e53a456e2a0bd997ead6c2ae843bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/last.py"]},"message":"btmp fix"},{"commit":"61257e7525c25827cb8057ed5c612e54ea9b9637","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":119,"deletions":1,"files":["jc/cli.py","jc/parsers/last.py"]},"message":"add last and lastb parser"},{"commit":"53ee2c36310cb84390ef96644aee6871769151c9","merge":"2ad3167 8bfa0bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #29 from kellyjonbrazil/dev"},{"commit":"8bfa0bddec9ff1c21972019467dcf5738ab3afd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to 1.7.5"},{"commit":"ad61e6bc81177a2add7d052bf1ddec5f1b3f2976","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":26,"insertions":598,"deletions":133,"files":["tests/fixtures/centos-7.7/ls-R-newlines.json","tests/fixtures/centos-7.7/ls-R-newlines.out","tests/fixtures/centos-7.7/ls-l-newlines.json","tests/fixtures/centos-7.7/ls-l-newlines.out","tests/fixtures/centos-7.7/ls-lR-newlines.json","tests/fixtures/centos-7.7/ls-lR-newlines.out","tests/fixtures/centos-7.7/ls-newlines.json","tests/fixtures/centos-7.7/ls-newlines.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/ls-R-newlines.json","tests/fixtures/osx-10.14.6/ls-R-newlines.out","tests/fixtures/osx-10.14.6/ls-l-newlines.json","tests/fixtures/osx-10.14.6/ls-l-newlines.out","tests/fixtures/osx-10.14.6/ls-lR-newlines.json","tests/fixtures/osx-10.14.6/ls-lR-newlines.out","tests/fixtures/osx-10.14.6/ls-newlines.json","tests/fixtures/osx-10.14.6/ls-newlines.out","tests/fixtures/ubuntu-18.04/ls-R-newlines.json","tests/fixtures/ubuntu-18.04/ls-R-newlines.out","tests/fixtures/ubuntu-18.04/ls-l-newlines.json","tests/fixtures/ubuntu-18.04/ls-l-newlines.out","tests/fixtures/ubuntu-18.04/ls-lR-newlines.json","tests/fixtures/ubuntu-18.04/ls-lR-newlines.out","tests/fixtures/ubuntu-18.04/ls-newlines.json","tests/fixtures/ubuntu-18.04/ls-newlines.out","tests/test_ls.py"]},"message":"add ls tests for filenames with newline characters"},{"commit":"873b5ba8acf599d083d6031b818d5fca83cbca9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":31,"files":["README.md"]},"message":"move examples to bottom"},{"commit":"6ae50054e2e8c7ca730013b43062eedc230c0ad4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"readme update"},{"commit":"22a35f41bf9c404d3532611f5929143d04b10010","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/ls.py"]},"message":"move variables to top"},{"commit":"961696c963215a9dab56113ff89f21a6e9739df6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/ls.py"]},"message":"add a warning if newlines are detected in naked ls"},{"commit":"c7b7f1a5dcf77a1f4c23ef6bbf5683fd1a055f72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"fix for files with newlines in naked ls"},{"commit":"b5a0d650b128d8af81bb14dd5d007349529cb66f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":151,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-newlines.out"]},"message":"ls output with newlines"},{"commit":"573b27946474276592ee7494689ce9a88f5a05f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"fixup for filenames that start with a newline character"},{"commit":"116e07f1614b4a45eb58ffcfe20b5efa71c473a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":7,"files":["jc/parsers/ls.py"]},"message":"fixes for multiple consecutive newlines and trailing newlines in filenames"},{"commit":"964868c8aff99edf37b0db41c7d16f8b84ac4704","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":21,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"add support for newlines in filenames (only with ls -l)"},{"commit":"c8dac32df8102c2b782e87d55bb95ca2d9490185","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"readme update"},{"commit":"72a0016bd833699c3819baa899f335f75b8c1943","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"use link to anchor for Parsers"},{"commit":"2ad316743460bb6620e7ede251e1dc2739b073fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update doc url"},{"commit":"ddabfaa05c63f886b17e5b4d37cd83fcfdb9b221","merge":"873771d f857523","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #25 from kellyjonbrazil/dev"},{"commit":"f857523ca756864211b6b18af5a8886e5db200bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"bump to version 1.7.4"},{"commit":"00d53858e820f00ba015bc25629100c8e5495221","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add note about aliases not being supported"},{"commit":"c008167e660929a91606bb96498cdc113e815f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"add time-style=full-iso option to doc"},{"commit":"102344a041e9e0aff8b6d9db1873ba1064f7e895","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/ls.py"]},"message":"formatting"},{"commit":"c865298ef3613fe6ce17f41c15209a69940af1ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"remove unnecessary enumerate in for loop"},{"commit":"6ac03faf939bcda8930a48a5e832b557813e2129","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"Revert \"add ubuntu and centos default ls aliases to magic_commands\""},{"commit":"49c2701743706b6cbf0e52b2c7f275e301315189","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"add ubuntu and centos default ls aliases to magic_commands"},{"commit":"d1a271b08e64b42be8cec11377b0e18435a0caec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":35333,"deletions":1374,"files":["tests/fixtures/centos-7.7/ls-R.json","tests/fixtures/centos-7.7/ls-R.out","tests/fixtures/centos-7.7/ls-alR.json","tests/fixtures/centos-7.7/ls-alR.out","tests/fixtures/centos-7.7/ls-glob.json","tests/fixtures/centos-7.7/ls-glob.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/ls-R.json","tests/fixtures/osx-10.14.6/ls-R.out","tests/fixtures/osx-10.14.6/ls-alR.json","tests/fixtures/osx-10.14.6/ls-alR.out","tests/fixtures/osx-10.14.6/ls-glob.json","tests/fixtures/osx-10.14.6/ls-glob.out","tests/fixtures/ubuntu-18.04/ls-R.json","tests/fixtures/ubuntu-18.04/ls-R.out","tests/fixtures/ubuntu-18.04/ls-alR.json","tests/fixtures/ubuntu-18.04/ls-alR.out","tests/fixtures/ubuntu-18.04/ls-glob.json","tests/fixtures/ubuntu-18.04/ls-glob.out","tests/fixtures/ubuntu-18.04/ls-lR.out","tests/test_ls.py"]},"message":"add new ls tests for recursive and multiple directories with glob"},{"commit":"7388ad19b9d252d3e66659e4bc37171cef2a9748","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":6,"deletions":4,"files":["docs/parsers/ls.md","jc/cli.py","jc/parsers/ls.py","setup.py"]},"message":"bump to v1.8.0"},{"commit":"2e63cb5fadd032c7cb54a618e8b374ee853abcca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"version bump ls to 1.1"},{"commit":"e7f14d02b12c7dcba309f2d28a0f171769d1ba37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1438,"deletions":8,"files":["jc/parsers/ls.py","tests/fixtures/ubuntu-18.04/ls-R.out","tests/fixtures/ubuntu-18.04/ls-lR.out"]},"message":"update ls to allow multi directory (glob and -R). Adds 'parent' key if found"},{"commit":"873771d05ab0b77163c95d2c37e11edf38451832","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"d7de122e36e0698e00f321fbac8dc0b543cf9e8a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"prettify link"},{"commit":"4ef0434f536c6658ddc2b48a3db113df2fd26000","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["README.md"]},"message":"formatting update"},{"commit":"1aa2c9925996f2358b6272547db755ec3098a8a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":2,"files":["README.md","jc/parsers/history.py"]},"message":"removed history from magic syntax"},{"commit":"c2450b27b079b02ed3f4ece9e36547f01cd4b139","merge":"028e136 14d6d8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #22 from kellyjonbrazil/dev"},{"commit":"14d6d8b84f0ddeff984aff486e2e697a91ac6fb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump to 1.7.3"},{"commit":"f0e3846c038ec5507cd4a19980d83ee0fb969ef5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["README.md"]},"message":"formatting"},{"commit":"6ba64f1128373843b068226424a3af545ac9d22c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":2,"files":["README.md"]},"message":"usage update"},{"commit":"13bcdbc6c9a81bc5d52fe7a84e6a0a34908db8bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"doc update"},{"commit":"cfba62db20674d788601354211a10e2b1675a0c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":6,"files":["jc/cli.py"]},"message":"correct parser search in magic()"},{"commit":"18fb69e36e303a3f9530dcb80354b25bfdbb931d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"docs/parsers link"},{"commit":"474eb0f3fdeaa612e189d745b12a5ed9c6e0a31b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"doc updates"},{"commit":"7f47b533701e60449351d5da03cd5960e0dec9ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":90,"deletions":68,"files":["README.md"]},"message":"add alternate magic syntax"},{"commit":"dc2907d3ce101043b30bcce71abb4bb02897f43a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["docs/parsers/crontab.md"]},"message":"doc update"},{"commit":"1af85811e06c489051c456918284a746ce12c692","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/fstab.py"]},"message":"remove magic_command info"},{"commit":"1c1b19a478fe5c356a93cd165518429e77fcbdf0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab.py"]},"message":"doc update"},{"commit":"66942d64babf932faeb887eb4ec0cab32829321a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"2fb6ae08d76e7a5727b2fcdd5def3e3822e0cf72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"]},"message":"fix shlex usage"},{"commit":"bf8811e03e2a5b736f4c084f42400fcde400ff3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":3,"files":["jc/cli.py"]},"message":"add comments"},{"commit":"c8b502c571d3081ca3086e349a426ca252a3bb84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/cli.py"]},"message":"remove unnecessary join and add comments"},{"commit":"81c11a975c6ee66a1f83350df8b065a6b07dcc9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/cli.py"]},"message":"added docstrings"},{"commit":"0d370eb403ab4d9ed11e36776efc08bdd3505c1a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"doc update"},{"commit":"7492c3f1e312cdb0c58c2077db0d60d2cab1e58f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"515a8a84b79c9bf6f3001d3c52faa82a6709b8d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":33,"insertions":33,"deletions":33,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add \"command\" to description"},{"commit":"dd6680efb2b15bb8ed676016aae1c65193dfe147","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":29,"deletions":14,"files":["changelog.txt","jc/cli.py"]},"message":"allow condensed options (-prdq is equivalent to -p -r -d -q)"},{"commit":"a7158373cd225685f5c398fa36b8d5208e20521c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"comment update"},{"commit":"6d50ec71997cac9c898737de93b8a945f0351e53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":6,"files":["jc/cli.py"]},"message":"add try/except to fix bare jc command condition"},{"commit":"95dbf98e8e03486f74d986683f52699f4f9c9577","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":6,"files":["jc/cli.py"]},"message":"allow options in magic syntax"},{"commit":"d49323e4ebf2a8aebd1d8ea65ef0854ee8bcb29f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":33,"insertions":33,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add magic_commands list to info"},{"commit":"08c1e2aec9d6bb68653dc12ba2272535fb7cef09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"]},"message":"add magic syntax"},{"commit":"a2c137df2e6d3b133df5df0bb3f9b1ca69990557","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":66,"deletions":299,"files":["jc/cli.py","jc/cli.py.old"]},"message":"better magic command syntax logic using introspection information from parser modules"},{"commit":"fe27dcdb8f72b5a288f978b87be2eb930099543e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":319,"deletions":45,"files":["jc/cli.py","jc/cli.py.old"]},"message":"proof of concept for magic syntax (e.g. jc ls -al)"},{"commit":"028e136161ac15f588845f87907b4565a6ee7be2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":7,"deletions":2,"files":["MANIFEST.in","changelog.txt","jc/cli.py","setup.py"]},"message":"bump to 1.7.2: add test fixtures to package"},{"commit":"9a85a0a4d504447b32fb622bb17cebc5e47f687f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/crontab_u.md","jc/parsers/crontab_u.py"]},"message":"fix doc"},{"commit":"3a1cbc4d5063344c3e3a4bf510d651a36beedfb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":14,"files":["jc/cli.py"]},"message":"move info class to top"},{"commit":"77d334f7f386f79ec0571325500054fdab207f31","merge":"4de8f42 53cdf86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #19 from kellyjonbrazil/dev-1.7.1"},{"commit":"53cdf863acc72dbdb671773e30277f42e9eadc0e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"7b7e7fe0fe92edef1e559bd7ae8272530d7ed5c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"0c03132847a3d2bcbdb0b743e1472865916cced4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"fix error codes using sys.exit()"},{"commit":"3b81f7e2a1381958b33962d4531f3fa223c6a83e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"exit code on ctrl-c exit"},{"commit":"3d76437b435660e92633c604c4ad32ee0500a28b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ini.md","docs/parsers/xml.md","jc/parsers/ini.py","jc/parsers/xml.py"]},"message":"doc fix"},{"commit":"4bc54c78cea48682ed0432ea56460a26a0e52f83","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":7,"deletions":7,"files":["docs/parsers/du.md","docs/parsers/history.md","jc/parsers/du.py","jc/parsers/history.py"]},"message":"fix compatibility list"},{"commit":"3d303a96b9f6d582b1e99a632da539c3bee4df7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":16,"deletions":2,"files":["tests/fixtures/centos-7.7/crontab-u.json","tests/fixtures/centos-7.7/{crontab2.out => crontab-u.out}","tests/fixtures/centos-7.7/crontab.json","tests/fixtures/ubuntu-18.04/crontab-u.json","tests/test_crontab_u.py"]},"message":"crontab bug fix and tests"},{"commit":"33c99d031d18e52a8ca85dfc1a8cba0acebfc3bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/crontab.py"]},"message":"fix line clobbering bug"},{"commit":"caf7e9f69a22f3c9b3d4624fd2238d6e54d932ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/crontab_u.py"]},"message":"fix line clobbering bug and add user field to shortcuts"},{"commit":"9449f1f5d5e7bc075549549758af5cc3a6c4524f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":9,"deletions":3,"files":["changelog.txt","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/fixtures/centos-7.7/crontab2.out"]},"message":"crontab bugfix: inserting header row was clobbering the first data row"},{"commit":"6bad164b5e2a5b7c7ce82c69b6c091fc079ab2fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":9,"files":["jc/cli.py"]},"message":"simplify by removing unnecessary getattr calls"},{"commit":"bb5ba7ddb146821db2efe095b6de5ae5b72bb335","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/cli.py"]},"message":"add indent variable to helptext"},{"commit":"8b2e01d5404649e8f94c81ca3b5fa05fe8962220","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"doc update"},{"commit":"ff1159b1deb9b870382a6066166961902679b569","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"exit codes on error"},{"commit":"a2fd3202a0a3df336792f167c546ea3e53ea2332","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/pip_list.py","jc/parsers/pip_show.py"]},"message":"description formatting change"},{"commit":"7b53715b91787a8885d61ddc0079c7ee8f9348a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/crontab_u.py"]},"message":"change description"},{"commit":"e05fc0a5107b348af14ff4bea39d274939fab7dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":8,"files":["jc/cli.py"]},"message":"change padding of helptext"},{"commit":"43604c33f654b8c19e8cce387ebbf31bd598b73b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]},"message":"doc update"},{"commit":"eb67c484ff2a9530b434cd6a90c160f6936e1de7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"add crontab-u to parsers list"},{"commit":"a7b7bdd46781d07e6e70d74a41a3944855fde5fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":94,"deletions":92,"files":["jc/cli.py"]},"message":"load parser modules 'just in time' so we don't need to load all modules at startup"},{"commit":"ab06989a18faf5378f1e73c7016ea02e1218ff9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["README.md"]},"message":"description updates"},{"commit":"657b722f947b6a0aa7e52a786e4c84f177e9a5c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":8,"deletions":8,"files":["README.md","changelog.txt","docs/parsers/ini.md","jc/parsers/ini.py"]},"message":"ini to INI"},{"commit":"dd2aecad2787186b3962723086bb7e13eff4874f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"description update"},{"commit":"c82c5c5c648384eb5a54205ba8590624a3ab4375","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"a1761cd68f91e2668d8d7e2fa7774f6496408be6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":42,"deletions":0,"files":["tests/fixtures/centos-7.7/id.json","tests/fixtures/osx-10.14.6/id.json","tests/test_id.py"]},"message":"id tests"},{"commit":"d618a7f583629bb7a7fc0854e7349cab07e3e003","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":143,"deletions":9,"files":["README.md","docgen.sh","docs/parsers/id.md","jc/parsers/id.py"]},"message":"doc update"},{"commit":"831a42f66096f5efbbf0f6882970c328120f9c9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["README.md"]},"message":"id formatting"},{"commit":"3b36022e5a1056a28a83494b1ab8fab209399c2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":250,"deletions":1,"files":["README.md","jc/cli.py","jc/parsers/id.py","tests/fixtures/centos-7.7/id.out","tests/fixtures/osx-10.14.6/id.out"]},"message":"add id parser"},{"commit":"d01dfa25f10f82cd201ae7b4c9cc18313773f8d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["changelog.txt"]},"message":"changelog updates"},{"commit":"395a99037b4816eb800b289f90372a9b8d7d36cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":89,"deletions":13,"files":["README.md","docs/parsers/history.md","jc/parsers/history.py"]},"message":"crontab-u and history doc updates"},{"commit":"025986c51d2d4869b17de63a7dd96efa2988e3c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":13,"deletions":3,"files":["jc/parsers/history.py","tests/fixtures/centos-7.7/history.json","tests/fixtures/ubuntu-18.04/history.json"]},"message":"change history 'line' to integer"},{"commit":"c56b83093ff05f55ef4643c1731cff61d4b9e8ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":202,"deletions":2,"files":["docgen.sh","docs/parsers/crontab.md","docs/parsers/crontab_u.md"]},"message":"doc update"},{"commit":"7c712a4133abd843d4da926e4c8d548abd1d6fa3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":52,"deletions":50,"files":["jc/parsers/crontab_u.py"]},"message":"doc update"},{"commit":"9a0cfe6dfa4888f435d35bd2d35126d031a556d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/crontab.py"]},"message":"minor formatting"},{"commit":"a116cdbcec1b27192dd0f9f4707629353edb3caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":29,"deletions":13,"files":["tests/fixtures/ubuntu-18.04/crontab-u.json",".../ubuntu-18.04/{crontab.out => crontab-u.out}","tests/fixtures/ubuntu-18.04/crontab.json","tests/test_crontab.py","tests/test_crontab_u.py"]},"message":"tests for crontab-u"},{"commit":"f2d616c98e049cdac5d667e63723f92110419a1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":272,"deletions":0,"files":["changelog.txt","jc/cli.py","jc/parsers/crontab_u.py"]},"message":"add crontab with user parser"},{"commit":"42cbd1777dbacc614d75f67f3f9156f72be46532","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":80,"deletions":0,"files":["tests/test_xml.py","tests/test_yaml.py"]},"message":"add xml and yaml tests"},{"commit":"ebf375aac0473249cfd212068f6e6e33cc42449a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":40,"deletions":0,"files":["tests/test_ini.py"]},"message":"add ini tests"},{"commit":"1f9050267eeb870c4c0f50000fc32985c4d8535b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":586,"deletions":0,"files":["tests/fixtures/generic/ini-iptelserver.ini","tests/fixtures/generic/ini-iptelserver.json","tests/fixtures/generic/ini-test.ini","tests/fixtures/generic/ini-test.json","tests/fixtures/generic/xml-cd_catalog.json","tests/fixtures/generic/xml-cd_catalog.xml","tests/fixtures/generic/xml-foodmenu.json","tests/fixtures/generic/xml-foodmenu.xml","tests/fixtures/generic/yaml-istio-sc.json","tests/fixtures/generic/yaml-istio-sc.yaml","tests/fixtures/generic/yaml-istio-sidecar.json","tests/fixtures/generic/yaml-istio-sidecar.yaml"]},"message":"add ini, xml, and yaml test files"},{"commit":"d7f9707a1521719ce051140b1a0b4ced7c5114c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/ini.py","jc/parsers/yaml.py"]},"message":"minor formatting"},{"commit":"ab589ee3ed09b9d5e09d8c046f3a64cd2bd14c98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/cli.py"]},"message":"add __version__ variable"},{"commit":"c84ec0361fc4c877c698378b28ff9e8b502793b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":105,"deletions":3,"files":["README.md","docgen.sh","docs/parsers/xml.md","jc/parsers/xml.py"]},"message":"xml example update"},{"commit":"47d2f8968a8a9b68fc9fff45985f5e69f1a5cc40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","changelog.txt"]},"message":"doc update"},{"commit":"019c480bcce7fe3821b75906fc673ce7bb1ffadc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"update acknowledgments"},{"commit":"547c6d3d5956984d3c4fb5c2a1b76a595752b467","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":172,"deletions":2,"files":["README.md","changelog.txt","jc/cli.py","jc/parsers/xml.py","setup.py"]},"message":"add xml parser"},{"commit":"b5ebf8b76afcd0e0190994048fe1f5b53f654451","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add ruamel.yaml ack"},{"commit":"c690e328f23a69f592dfaaa949b74ba2190ad376","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":102,"deletions":14,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"]},"message":"add examples"},{"commit":"cbb92c1a9517234806f1c54398a69645b6f43669","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":94,"deletions":0,"files":["README.md"]},"message":"add ini and yaml"},{"commit":"beb41997c9b3797e73a678ec1bcddcfb83b5ef0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":91,"deletions":2,"files":["docgen.sh","docs/parsers/ini.md","jc/parsers/ini.py"]},"message":"doc update"},{"commit":"755a6faf1110f150fe2261b81439b7d17a9b424e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":8,"files":["jc/parsers/yaml.py"]},"message":"clean up multi-document support"},{"commit":"021f8350a31a49ecc539f02576303600b222b49d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["changelog.txt"]},"message":"update doc"},{"commit":"76583dcd2f5ef32e58ca87149154563b07e061cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":113,"deletions":0,"files":["jc/cli.py","jc/parsers/ini.py"]},"message":"add ini file parser"},{"commit":"bf033239a706c42be3d7508c58a51c542f8a69b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":82,"deletions":7,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"]},"message":"doc update"},{"commit":"eb37fccd37fd625f701a14b6cfcf30e9f0bbff4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/yaml.py"]},"message":"doc update"},{"commit":"d04ad453319fe45e302da87f970d2ac0806fae1a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":2,"files":["changelog.txt","docgen.sh","setup.py"]},"message":"setup for 1.7.1"},{"commit":"db157b8ca7f7fa935676bafeaafdfd9818a89e6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":94,"deletions":2,"files":["jc/cli.py","jc/parsers/yaml.py"]},"message":"add yaml file parser"},{"commit":"68f277bb2081eb2cba14ffe7f0ee1ee0a982335b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":33,"insertions":99,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add __version__"},{"commit":"4de8f42664379570392552796e34324abb39fdc2","merge":"6633d92 4f11855","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #17 from kellyjonbrazil/dev"},{"commit":"4f118559356edc1da866e1bec80830e7a75a0b26","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["changelog.txt"]},"message":"update version info"},{"commit":"2b9a5fcc32f85295faa55410efcaf142c42bd167","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["setup.py"]},"message":"update version"},{"commit":"224948d1f23e01b7cd968820529579792f862f0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":428,"deletions":0,"files":["tests/fixtures/centos-7.7/pip-list.json","tests/fixtures/centos-7.7/pip-list.out","tests/fixtures/centos-7.7/pip-show.json","tests/fixtures/centos-7.7/pip-show.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.11.6/pip-list.json","tests/fixtures/osx-10.11.6/pip-list.out","tests/fixtures/osx-10.11.6/pip-show.json","tests/fixtures/osx-10.11.6/pip-show.out","tests/fixtures/osx-10.14.6/pip-list.json","tests/fixtures/osx-10.14.6/pip-list.out","tests/fixtures/osx-10.14.6/pip-show.json","tests/fixtures/osx-10.14.6/pip-show.out","tests/fixtures/ubuntu-18.04/pip-list-legacy.json","tests/fixtures/ubuntu-18.04/pip-list-legacy.out","tests/fixtures/ubuntu-18.04/pip-list.json","tests/fixtures/ubuntu-18.04/pip-list.out","tests/fixtures/ubuntu-18.04/pip-show.json","tests/fixtures/ubuntu-18.04/pip-show.out","tests/test_pip_list.py","tests/test_pip_show.py"]},"message":"pip list and pip show tests"},{"commit":"36f2812d5a7a94c412e098233c026d99d5205b60","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":15,"deletions":7,"files":["jc/parsers/pip_list.py"]},"message":"add support for legacy output"},{"commit":"be06aa2b31c057c56229e75c7fa70052b83053ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":65,"insertions":70,"deletions":66,"files":["docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"update parse() Return info"},{"commit":"41f8e3aba268ca0cd09931a04368615425c1aec8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":65,"insertions":67,"deletions":65,"files":["docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"update Return info"},{"commit":"093c0df8978ace842af5258f9aff72c63c6f843d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["README.md"]},"message":"schema info"},{"commit":"37afc7dc8ae30342d01f3f72e73646fa60bb5294","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["README.md"]},"message":"updte todo and compatibility"},{"commit":"efbf3549606fc77f8c16587ff04a0c316dfe5c00","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":126,"deletions":12,"files":["README.md","docgen.sh","docs/parsers/pip_show.md","jc/parsers/pip_show.py"]},"message":"doc update for pip show"},{"commit":"5e39fe0d8044787389d8f206f3c863d4bdf1e2ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":64,"deletions":5,"files":["jc/parsers/pip_show.py"]},"message":"pip show parser working"},{"commit":"47328dc65969f149c8f027286774ff0847c18add","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"]},"message":"add pip-show parser"},{"commit":"addeef50ba54f536855544937a6c98135ae5cd51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":84,"deletions":0,"files":["jc/parsers/pip_show.py"]},"message":"initial pip show parser add"},{"commit":"ad338cc5b50a178091c47cbea9a1db135a7fb678","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":56,"deletions":42,"files":["docs/parsers/crontab.md","jc/parsers/crontab.py"]},"message":"schema doc update"},{"commit":"202bc8201e31fd453c682265347b4e2ac2d41718","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["README.md","docs/parsers/crontab.md","jc/parsers/crontab.py"]},"message":"doc update"},{"commit":"5ff99de405fbd8f79f9c2e301ac27184e0aba6fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add argument to parser info"},{"commit":"86ebe2cf9c6b336eacf217393c3c3c324ee29ec0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":205,"deletions":1,"files":["README.md","docgen.sh","docs/parsers/crontab.md","docs/parsers/pip_list.md","jc/cli.py","jc/parsers/pip_list.py"]},"message":"initial add of pip list parser"},{"commit":"facf0b399c608d33f6a454ee24fd49fc62471742","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/crontab.py"]},"message":"add osx to campatible"},{"commit":"33db7b0bcb0f24979cad6e173737d75c8ed301af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":57,"deletions":0,"files":["tests/fixtures/centos-7.7/crontab.json","tests/fixtures/ubuntu-18.04/crontab.json","tests/fixtures/ubuntu-18.04/crontab.out","tests/test_crontab.py"]},"message":"add crontab tests"},{"commit":"663d07bca1181024d9d08b940237c52197c91729","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":191,"deletions":0,"files":["docgen.sh","docs/parsers/crontab.md"]},"message":"add crontab"},{"commit":"ba04e4997fcb28adbee446f633c121f1585b9f2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":113,"deletions":4,"files":["jc/parsers/crontab.py"]},"message":"update docs"},{"commit":"c4fee1b658c91afa2abdd746af6c1b4697c44b35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":72,"deletions":1,"files":["README.md"]},"message":"add crontab parser"},{"commit":"99b92a15bbebc5568f4455f388f945613c4a2759","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":37,"deletions":14,"files":["jc/parsers/crontab.py","tests/fixtures/centos-7.7/crontab.out"]},"message":"support shortcut schedules"},{"commit":"b076ab5b57a6a59db096485e5ff4eb9f91bae8be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":177,"deletions":0,"files":["jc/cli.py","jc/parsers/crontab.py","tests/fixtures/centos-7.7/crontab.out"]},"message":"initial crontab parser"},{"commit":"687759f75d0e80e81746a84f051e55cfdc870447","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":31,"deletions":31,"files":["README.md"]},"message":"alphabetize du entry"},{"commit":"9eaac7f3af0e0851c2d091d94c9920faa8a0fdfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":32,"deletions":0,"files":["README.md"]},"message":"add du"},{"commit":"4c24e00cfc0748d98e220d08820b88fc156148db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":21738,"deletions":9,"files":["tests/fixtures/osx-10.11.6/du.json","tests/fixtures/osx-10.11.6/du.out","tests/fixtures/ubuntu-18.04/du.json","tests/fixtures/ubuntu-18.04/du.out","tests/test_du.py"]},"message":"add osx-11 and ubuntu tests"},{"commit":"beb17011b03e720078b0752e79a6a0f6123d1d3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":131,"deletions":2,"files":["changelog.txt","docgen.sh","docs/parsers/du.md","docs/parsers/uname.md","tests/fixtures/osx-10.14.6/du.json","tests/test_du.py"]},"message":"du tests and docs"},{"commit":"e882bf55bcd1d3526423ed1ccc61fb4819395cce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":8755,"deletions":0,"files":["changelog.txt","jc/cli.py","jc/parsers/du.py","tests/fixtures/centos-7.7/du.json","tests/fixtures/centos-7.7/du.out","tests/fixtures/osx-10.14.6/du.out","tests/test_du.py"]},"message":"initial add du parser"},{"commit":"3a3016adb6d5b9e35f8a39908bfcdc65997cc5c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add parser_count to about"},{"commit":"1e8b68153ade8a1e3d2b4db36e0c402bbc887079","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":27,"deletions":1,"files":["tests/fixtures/osx-10.11.6/uname-a.json","tests/fixtures/osx-10.14.6/uname-a.json","tests/fixtures/osx-10.14.6/uname-a.out","tests/test_uname.py"]},"message":"add osx uname tests"},{"commit":"9335cf65fbb87e3a0a7da0c4e9bcd251cb829de2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"add uname osx support"},{"commit":"83f35256aee71f2619ddf880e2b8f2d6c63280bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":30,"deletions":19,"files":["jc/parsers/uname.py"]},"message":"add OSX support"},{"commit":"428333394817e4461a4eb095f4d6d128305a5f98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"version bump"},{"commit":"b8f902796b7fb23a41355b23f7ce235bd18edc58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["changelog.txt"]},"message":"shorten changelog"},{"commit":"8f99ab295cd15718b98781707def97539ad41920","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"info update"},{"commit":"882310e268e2022f0cd6da75f80f5356529cd05c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add name to about parser info"},{"commit":"56bce9521409d1850f75a3ae2be1363e765dd9dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":10,"files":["jc/cli.py"]},"message":"about code cleanup"},{"commit":"c13ecbec2952c5d6765397f645e90653a4fd9d05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":28,"insertions":2,"deletions":28,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"clean up parser info"},{"commit":"0ffaaa6e73649d1f657af569ac0b912f166e8493","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":9,"files":["jc/cli.py"]},"message":"clean up about code"},{"commit":"75eff3adea097157c005b2201e353a741241ce8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/utils.py"]},"message":"remove whitespace"},{"commit":"bf5f80476cff642ae672187ea59d40bdb602101e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["jc/cli.py"]},"message":"use real parser name in error message"},{"commit":"9aaf0fbb2f838c0af1e7f18fdb19104f9f5d3d39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":29,"insertions":146,"deletions":1,"files":["changelog.txt","docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md"]},"message":"doc updates"},{"commit":"8f01ef79532743573632d716ceea41d5ea752c88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add -a option info"},{"commit":"da1d087452da02631296b1b3dc9ee10d4b7f764b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add parser version info"},{"commit":"e16bc7e882a27a1d5a4bd7cf9972208e6997f96f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":29,"insertions":82,"deletions":17,"files":["jc/cli.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add about information to parsers"},{"commit":"fe9bdd4811216257c05b16d6d61897929669d434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":31,"insertions":384,"deletions":219,"files":["changelog.txt","jc/cli.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add info class"},{"commit":"17b6f3f6d6c398a52166849088a793d0e3b328b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":26,"deletions":0,"files":["tests/fixtures/osx-10.11.6/uptime.json","tests/fixtures/osx-10.14.6/uptime.json","tests/test_uptime.py"]},"message":"add osx tests"},{"commit":"90a6baf0ee3b8b27476badada4e590e22144f810","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":52,"deletions":0,"files":["tests/fixtures/osx-10.11.6/ps-axu.json","tests/fixtures/osx-10.11.6/ps-ef.json","tests/fixtures/osx-10.11.6/w.json","tests/fixtures/osx-10.14.6/w.json","tests/test_ps.py","tests/test_w.py"]},"message":"add osx tests"},{"commit":"f0e73d0e72d540292f41fff51652932c4e8b0315","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":444,"deletions":0,"files":["tests/fixtures/osx-10.11.6/ps-axu.out","tests/fixtures/osx-10.11.6/ps-ef.out","tests/fixtures/osx-10.11.6/uname-a.out","tests/fixtures/osx-10.11.6/uptime.out","tests/fixtures/osx-10.11.6/w.out","tests/fixtures/osx-10.14.6/uname-a.out","tests/fixtures/osx-10.14.6/uptime.out","tests/fixtures/osx-10.14.6/w.out"]},"message":"add osx tests"},{"commit":"a762882f1ccea6789ce7813b313f3242175b5bd6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":88,"files":["tests/fixtures/osx-10.14.6/ps-axu.json","tests/fixtures/osx-10.14.6/ps-axu.out","tests/fixtures/osx-10.14.6/ps-ef.json","tests/fixtures/osx-10.14.6/ps-ef.out"]},"message":"fixture updates"},{"commit":"4c1bc5923658bf463805ea33ec8d170a817909ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":4,"deletions":3,"files":["docs/parsers/mount.md","docs/parsers/ps.md","docs/parsers/stat.md"]},"message":"doc updates"},{"commit":"f2962083f80503f82c3eddf470674c776e616b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":93,"deletions":17,"files":["changelog.txt","jc/parsers/mount.py","tests/fixtures/osx-10.14.6/mount.json","tests/fixtures/osx-10.14.6/mount.out","tests/fixtures/osx-10.14.6/mount2.json","tests/fixtures/osx-10.14.6/mount2.out","tests/test_mount.py"]},"message":"add osx support for mount parser"},{"commit":"a0b22a5bcfa0777895243088b2c0f3bb5b758775","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"help text formatting"},{"commit":"dcf393354cd57683aaeecbed7b884d19b0fe94d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"]},"message":"doc fix"},{"commit":"5f771656e3fdd703d449b2817faa4faeff1cd879","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/route.py"]},"message":"use universal parser"},{"commit":"f376aab79328a211a127f4f818e7007232f1fae3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/universal.py"]},"message":"doc update"},{"commit":"3c96464217a740571e16c74ad41c1d92f7585547","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":886,"deletions":13,"files":["jc/parsers/ps.py","tests/fixtures/osx-10.14.6/ps-axu.json","tests/fixtures/osx-10.14.6/ps-axu.out","tests/fixtures/osx-10.14.6/ps-ef.json","tests/fixtures/osx-10.14.6/ps-ef.out","tests/test_ps.py"]},"message":"osx fixes and tests"},{"commit":"c9892833a16bb63f78537717be65670eb65a87b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/mount.py"]},"message":"formatting change"},{"commit":"127c98affc7b122f0ced13852850214b9e07677e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"8687a772f53ecaf1a20464429060b94bbf660fe7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["jc/parsers/lsof.py"]},"message":"use universal parser"},{"commit":"b1162b14d42643fd53dbbe3f89ba042f030d9254","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":6,"files":["jc/parsers/lsmod.py"]},"message":"use universal parser"},{"commit":"8a8ee3570733c0c06b8cf53eb005e53ac2f9170f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":60,"files":["jc/parsers/lsblk.py"]},"message":"use universal parser"},{"commit":"5e109a3665cf0c286ac9dcbe2a452348a14b90ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/fixtures/create_fixtures.sh"]},"message":"add du"},{"commit":"11db478430515ef3e1020482792f23d1c40ca32b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"update changelog"},{"commit":"a85377014d9f93fcb9840715129b0e09d48d8584","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":11,"files":["jc/parsers/free.py"]},"message":"use universal parser"},{"commit":"3aea86234d33160f5b3139cbfc2f4f032f655f3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":70,"deletions":61,"files":["tests/fixtures/osx-10.11.6/ls-al.json","tests/fixtures/osx-10.11.6/ls-al.out","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.11.6/ls-alh.out","tests/fixtures/osx-10.11.6/ls.json","tests/fixtures/osx-10.11.6/ls.out"]},"message":"fix osx-10.11.6 tests"},{"commit":"916ec6ed6b858a8a496e4026b9bab5505abca2ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":193,"deletions":61,"files":["tests/fixtures/osx-10.11.6/ls-al.json","tests/fixtures/osx-10.11.6/ls-al.out","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.11.6/ls-alh.out","tests/fixtures/osx-10.11.6/ls.json","tests/fixtures/osx-10.11.6/ls.out","tests/fixtures/osx-10.14.6/ls-al.json","tests/fixtures/osx-10.14.6/ls-al.out","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.out","tests/fixtures/osx-10.14.6/ls.json","tests/fixtures/osx-10.14.6/ls.out","tests/test_ls.py"]},"message":"fix osx ls tests"},{"commit":"9dca6ba5393d8840ad7fc9509273715a71955bd1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":55,"insertions":120,"deletions":6,"files":["docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"doc formatting change"},{"commit":"0ebb89f561e1ced2e7f61ae19290e176c8a98bf2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["docs/parsers/arp.md"]},"message":"doc update"},{"commit":"e237867e242211ba37206911ebf1b35c97b417fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/arp.py"]},"message":"doc formatting"},{"commit":"78fa44fd9ac9790313de6f461eb46d9b8d6159d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":24,"insertions":75,"deletions":3,"files":["docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add compatibility to docs"},{"commit":"d615fa3b933ccd284bd8ee92baf5dfa6264507c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":30,"insertions":91,"deletions":1,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py"]},"message":"add compatibility to docs"},{"commit":"ce134dc332dd9175e0d1823a4959bed427a3ddce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":115,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-al.json","tests/fixtures/osx-10.14.6/ls-al.out","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.out","tests/fixtures/osx-10.14.6/ls.json","tests/fixtures/osx-10.14.6/ls.out","tests/test_ls.py"]},"message":"Add OSX tests for ls"},{"commit":"a56e4dc752a01635fbd9fc31e21d390bbd629084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":28,"deletions":3,"files":["changelog.txt","jc/parsers/arp.py","jc/parsers/universal.py"]},"message":"use universal simple table parser"},{"commit":"d221b4aa29e80dda2b591059f4d64c416bff0a17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"d2cba6ad2f1f1cd35aa174239584a0291abb8e37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py"]},"message":"add compatibility info"},{"commit":"84b3c30b525ddf1f74eb7fd833050a0ec69621dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":254,"deletions":2,"files":["tests/fixtures/osx-10.11.6/df-h.json","tests/fixtures/osx-10.11.6/df-h.out","tests/fixtures/osx-10.11.6/df.json","tests/fixtures/osx-10.11.6/df.out","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-aaaa.out","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig-x.out","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.11.6/dig.out","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/osx-10.14.6/df-h.out","tests/fixtures/osx-10.14.6/df.json","tests/fixtures/osx-10.14.6/df.out","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-aaaa.out","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig-x.out","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/osx-10.14.6/dig.out","tests/test_df.py"]},"message":"add osx tests"},{"commit":"68eeec19a812b735627763bb7d7e2a58b72f7504","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":30,"deletions":25,"files":["README.md","docs/parsers/df.md","jc/parsers/df.py"]},"message":"doc update"},{"commit":"c6d1528a2ed302ea82828b733a98db415be83708","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":19,"deletions":8,"files":["jc/parsers/df.py","jc/parsers/universal.py","tests/fixtures/centos-7.7/df.json","tests/fixtures/ubuntu-18.04/df.json"]},"message":"use _ instead of -"},{"commit":"50a6b256b8a0936299f562c208ede6187feeb9a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":83,"deletions":0,"files":["jc/parsers/universal.py"]},"message":"new universal parsers to limit code duplication"},{"commit":"bbba1fe477014d0b7f370ce46ed821121be81a8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":38,"deletions":19,"files":["jc/parsers/df.py"]},"message":"update df to use universal sparse table parser for osx compatibility"},{"commit":"46b827da6b438be73fab168c3f05298483b141e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":75,"deletions":4,"files":["changelog.txt","jc/parsers/arp.py","tests/fixtures/osx-10.11.6/arp-a.json","tests/fixtures/osx-10.11.6/arp-a.out","tests/fixtures/osx-10.14.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a.out","tests/test_arp.py"]},"message":"add osx compatibility"},{"commit":"5e8c28a30a283b6ef525e9e78d3ef2a0e1526927","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"]},"message":"comment fix"},{"commit":"e5d39031645ac897e0c0297f514ee62efe02f5f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":38,"deletions":17,"files":["docs/parsers/ifconfig.md"]},"message":"update ifconfig doc"},{"commit":"23975c9c9e1dd9d3e9fd7c05d231a86d646be048","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":132,"deletions":45,"files":["README.md","changelog.txt","jc/parsers/ifconfig.py","tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig2.json","tests/fixtures/osx-10.14.6/ifconfig.json","tests/fixtures/osx-10.14.6/ifconfig2.json","tests/fixtures/ubuntu-18.04/ifconfig.json","tests/test_ifconfig.py"]},"message":"fixup osx subnet mask and convert state to an array"},{"commit":"1e0dab8355e6fcb0ecde85270d4daac6ad93875b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":272,"deletions":2,"files":["tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.out","tests/fixtures/osx-10.11.6/ifconfig2.json","tests/fixtures/osx-10.11.6/ifconfig2.out","tests/fixtures/osx-10.14.6/ifconfig.json","tests/fixtures/osx-10.14.6/ifconfig.out","tests/fixtures/osx-10.14.6/ifconfig2.json","tests/fixtures/osx-10.14.6/ifconfig2.out","tests/fixtures/ubuntu-18.04/ifconfig.json"]},"message":"ifconfig fixture updates"},{"commit":"5f4c10ffd5a9cbe4e5e3d2b9adc34f36492eaf46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["README.md","changelog.txt"]},"message":"doc update"},{"commit":"6f3d2b4b566b963fbf38572c587e8bd4e18881dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"require ifconfig-parser v0.0.5 for mac and bytes support"},{"commit":"fea8ace8446b64abe9e61a028951bc4e6df9f9c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":6,"files":["README.md","jc/parsers/ifconfig.py"]},"message":"add OSX compatibility"},{"commit":"6633d9262c936217d8e90e64505c66b006cdab56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["_config.yml"]},"message":"Set theme jekyll-theme-cayman"},{"commit":"7d54137140e6d0515bc23c131a097af5c70c3379","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"link update"},{"commit":"2fcda6f2480ae6bd5428a0147c19f9af527391b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add motivation to readme"},{"commit":"9c1b8bacf9a59a86feb2a91eb44919e800491d1e","merge":"d192745 4867655","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #16 from kellyjonbrazil/dev"},{"commit":"4867655eb297b1da7a55e0d3a24c7ed7c8af55c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":172,"deletions":0,"files":[".../centos-7.7/iptables-filter-line-numbers.json",".../centos-7.7/iptables-filter-line-numbers.out","tests/fixtures/create_fixtures.sh",".../ubuntu-18.04/iptables-filter-line-numbers.json",".../ubuntu-18.04/iptables-filter-line-numbers.out","tests/test_iptables.py"]},"message":"add line-numbers tests"},{"commit":"47410d1a95406b0960aac705e7cfe925fea3172c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["changelog.txt","setup.py"]},"message":"version bump"},{"commit":"5fa49f5e672fc6f8dc18fb4b1761c98b81362649","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"36c53827fab6ac38c0010250ec387db40fdeecfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":19,"insertions":1316,"deletions":308,"files":["tests/fixtures/centos-7.7/systemctl-ls.json","tests/fixtures/centos-7.7/systemctl-ls.out","tests/fixtures/centos-7.7/systemctl-luf.json","tests/fixtures/centos-7.7/systemctl-luf.out","tests/fixtures/centos-7.7/systemctl.json","tests/fixtures/centos-7.7/systemctl.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/systemctl-lj.json","tests/fixtures/ubuntu-18.04/systemctl-lj.out","tests/fixtures/ubuntu-18.04/systemctl-ls.json","tests/fixtures/ubuntu-18.04/systemctl-ls.out","tests/fixtures/ubuntu-18.04/systemctl-luf.json","tests/fixtures/ubuntu-18.04/systemctl-luf.out","tests/fixtures/ubuntu-18.04/systemctl.json","tests/fixtures/ubuntu-18.04/systemctl.out","tests/test_systemctl.py","tests/test_systemctl_lj.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py"]},"message":"add systemctl tests"},{"commit":"51631aef5b1b6fdeff4ab543510a9f9e15a0c2c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":358,"deletions":0,"files":["tests/fixtures/centos-7.7/systemctl.json","tests/fixtures/centos-7.7/systemctl.out","tests/fixtures/ubuntu-18.04/systemctl.json","tests/fixtures/ubuntu-18.04/systemctl.out","tests/test_systemctl.py"]},"message":"add systemctl tests"},{"commit":"a0298ac8a39093620b6859c909a78d11ab4a8e56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":55,"deletions":0,"files":["tests/fixtures/centos-7.7/fstab.json","tests/fixtures/centos-7.7/fstab.out","tests/fixtures/ubuntu-18.04/fstab.json","tests/fixtures/ubuntu-18.04/fstab.out","tests/test_fstab.py"]},"message":"add fstab tests"},{"commit":"98c0188821ebaa71c5661f2e095cf464bec695f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/systemctl_ls.md","jc/parsers/systemctl_ls.py"]},"message":"formatting fix"},{"commit":"ab1dabe3e42997825707006b63cc0c03d28470d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py"]},"message":"doc update"},{"commit":"94bdb11fdf0e16d89769046d317643334ef1acdd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"]},"message":"remove systemctl from TODO"},{"commit":"b6727d68bab66164a3834b240ae868062aad9371","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":68,"deletions":0,"files":["README.md"]},"message":"add systemctl parsers"},{"commit":"89bad7fc2b4023b10b6eeb7ff1f8f18b71731cb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":1,"deletions":191,"files":["changelog.txt","docgen.sh","docs/parsers/systemctl_lm.md","jc/cli.py","jc/parsers/systemctl_lm.py"]},"message":"remove systemctl list-machines parser"},{"commit":"c0b8b810a2616e77973c1223f9c39329112337ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":306,"deletions":0,"files":["docgen.sh","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_lm.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md"]},"message":"add systemctl list parsers"},{"commit":"31eb65acd18b6d9163de900dbe48807a41a23785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_lm.py"]},"message":"doc fix"},{"commit":"513bbeb4649c011476930e1d1bf739ff06c2d66f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/systemctl_lj.py"]},"message":"add break on footer condition"},{"commit":"3a52fb725a0e56b52a0ea430266400b268360737","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":55,"deletions":29,"files":["jc/cli.py","jc/parsers/systemctl_lj.py"]},"message":"add systemctl list-jobs parser"},{"commit":"5affd444999de88b9bff7b49d790913540f97cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":342,"deletions":24,"files":["jc/cli.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_lm.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py"]},"message":"add systemctl_lj, lm, ls, and luf"},{"commit":"5dbc6e806c5d05bfa1f7e2156ed2573341eb23c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":142,"deletions":29,"files":["jc/cli.py","jc/parsers/systemctl_luf.py"]},"message":"add systemctl_luf parser"},{"commit":"59ae31f3f342c9337037aac4630310c9b9eb8287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":219,"deletions":0,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/systemctl.md","jc/cli.py","jc/parsers/systemctl.py"]},"message":"add systemctl parser"},{"commit":"230e921c2e8d931ea8a6abdf81215dbfc968b41c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"]},"message":"remove fstab from TODO"},{"commit":"a7c3d88b08ab90b719035cb15d78afe708235742","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":136,"deletions":0,"files":["docgen.sh","docs/parsers/fstab.md","jc/parsers/fstab.py"]},"message":"update example and docs"},{"commit":"9b453bcb84dd9f2f566955eda1ab35c863b3e8a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":13,"files":["jc/parsers/fstab.py"]},"message":"remove commented code block"},{"commit":"ce43c782f601fc12267fa22279e8e0142ecc3a7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"fstab update"},{"commit":"cb16faaf4d1700379d53053fe06824fd03404f87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"helptext update"},{"commit":"3f1d3ff6d85422536e0adfb6433fd3ec0399ebe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":73,"deletions":6,"files":["README.md","jc/parsers/fstab.py"]},"message":"add examples"},{"commit":"6f67eecd5ed46f8a692ff5dd607a2395a5c838ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":108,"deletions":0,"files":["jc/cli.py","jc/parsers/fstab.py"]},"message":"add fstab parser"},{"commit":"e75c819190634f0a9048942b39eda691831829ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"601e68d104dd43940acadaa574dfd9b5117b0476","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/hosts.md","jc/parsers/hosts.py"]},"message":"doc update"},{"commit":"8285ecfd1e7810102cdbc399398a16f999c841ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["tests/fixtures/centos-7.7/hosts.out","tests/fixtures/ubuntu-18.04/hosts.out"]},"message":"enhance test file with comments"},{"commit":"8726de902e527b95a12afd79a53d533cc176703d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"add hosts parser"},{"commit":"4133585274b0e7faa0255a911468248eb390d673","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":53,"deletions":0,"files":["tests/fixtures/centos-7.7/hosts.json","tests/fixtures/centos-7.7/hosts.out","tests/fixtures/ubuntu-18.04/hosts.json","tests/fixtures/ubuntu-18.04/hosts.out","tests/test_hosts.py"]},"message":"add hosts tests"},{"commit":"ad913b141721655a72a7b2a6ad60037e5acd5f9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":148,"deletions":2,"files":["README.md","docgen.sh","docs/parsers/hosts.md","jc/parsers/hosts.py"]},"message":"add hosts docs"},{"commit":"7113e5a844fc0304f62f4afe65b5cbc816f75372","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":0,"files":["jc/parsers/hosts.py"]},"message":"filter out comments at the end of the line"},{"commit":"a3a8369dc0e7227072f595cef1e57d471eff4d2f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":51,"deletions":9,"files":["jc/parsers/hosts.py"]},"message":"add docs"},{"commit":"64016b8ef049d5d4f02b4371f5cc9632c19bcaa2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["jc/cli.py","jc/parsers/hosts.py"]},"message":"add hosts parser"},{"commit":"1cb49d60c84054b0446f299f6b4bab7d102101c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["README.md"]},"message":"remove sar and sadf"},{"commit":"c858adfd12144569d0b990a217c5bcd75bd23828","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"]},"message":"remove stat from todo"},{"commit":"08d68327c777dd740d93a1b5fff8cf62f58904c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":8080,"deletions":0,"files":["tests/fixtures/centos-7.7/stat.json","tests/fixtures/centos-7.7/stat.out","tests/fixtures/ubuntu-18.04/stat.json","tests/fixtures/ubuntu-18.04/stat.out","tests/test_stat.py"]},"message":"add stat tests"},{"commit":"0d7c6c5664911af7a41149d51dd6ae05b39d7648","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/parsers/stat.md","jc/parsers/stat.py"]},"message":"doc fix and add continue lines"},{"commit":"8bfa41dbf485cb06c928bc00a68727d2ceac21fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":22,"deletions":14,"files":["README.md","docs/parsers/stat.md","jc/parsers/stat.py"]},"message":"change values to null if -"},{"commit":"7e2fa48ed4f3fd452082ce06e7306efd38b2d508","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"update changelog"},{"commit":"340635cad5224f2c715bf961956f4b9b6119d80b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":408,"deletions":111,"files":["docgen.sh","docs/parsers/ss.md","docs/parsers/stat.md"]},"message":"fix stats doc"},{"commit":"8f77d1de098f035767d73a6965a695b95b75e161","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":111,"deletions":253,"files":["docgen.sh","docs/parsers/ss.md"]},"message":"add stat docs"},{"commit":"7dcf1b25ffb801375f0bf4263f34713ded904de9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":0,"files":["jc/parsers/stat.py"]},"message":"add link_to field"},{"commit":"9b735381063a1167a6a74864a43b81aefd98009f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"]},"message":"set compatibility to linux only"},{"commit":"3bf8c8c6dbdf7e03e26b4581e35c3274084c07ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":27,"deletions":27,"files":["jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"pep8 fixes"},{"commit":"04a1ff2ca7873d55cdbc831e521f3d4892074d98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":28,"deletions":28,"files":["jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py"]},"message":"pep8 fixes"},{"commit":"64647d230ac936cb43864481ae0f45d13707d7b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":21,"deletions":21,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py"]},"message":"pep8 cleanup"},{"commit":"c2a67e1b70f33044aecabd8b46018117cb38cb9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":213,"deletions":16,"files":["README.md","jc/parsers/stat.py"]},"message":"add stat parser"},{"commit":"edb9a7c76e1fedaf37b6a226ad4e1cfc08a9a5ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":94,"deletions":0,"files":["jc/cli.py","jc/parsers/stat.py"]},"message":"add stat parser"},{"commit":"a407f5b67833cc5f8dda9fe8265cd34e62f28d14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"minor update"},{"commit":"e5b4987acb70e854d9996350235c5535b4a46b69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"doc update"},{"commit":"ba8cc18eebe779742cff0ba4c8bebe376e787c8c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":405,"deletions":0,"files":["tests/fixtures/centos-7.7/ss-sudo-a.json","tests/fixtures/centos-7.7/ss-sudo-a.out","tests/fixtures/ubuntu-18.04/ss-sudo-a.json","tests/fixtures/ubuntu-18.04/ss-sudo-a.out","tests/test_ss.py"]},"message":"add ss tests"},{"commit":"d2c7316e00b9aaf19231c05351821041458baf98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"update command options info"},{"commit":"609aa14d243206e81ed31f8438c3f42e8263e140","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/ss.md","jc/parsers/ss.py"]},"message":"spelling fix"},{"commit":"ef1ad4c700fcb740b5fbe1e12205b9a30ae427ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["docs/parsers/ss.md","jc/parsers/ss.py"]},"message":"doc update"},{"commit":"a0e2732152dc3005914b9a3e4f03e937a113c67f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":64,"deletions":12,"files":["README.md"]},"message":"add ss example"},{"commit":"9b5d3e3be1ac07813e716f8426fe89cced478221","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":135,"deletions":25,"files":["docs/parsers/ss.md"]},"message":"update doc"},{"commit":"2663ef31fbc1b69b89b8032640a25065cc953866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":159,"deletions":30,"files":["jc/parsers/ss.py"]},"message":"fix field names per ss documentation"},{"commit":"a4cdd3378e6a031f16dd371ed5cd60ff018feb32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["README.md"]},"message":"add compatibility info"},{"commit":"2f805da24d0e833e3d2a1f3a5ec34031fa911c05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":45,"insertions":51,"deletions":51,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/utils.md","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/utils.py"]},"message":"add colon to parameter in docs"},{"commit":"79152a946d93e4facf9711bfa0f421e1978e0f1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"initialize network_list and socket_list variables"},{"commit":"de37bb37d01b397df2b5992b4acd64817380401d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":187,"deletions":1,"files":["docgen.sh","docs/parsers/ss.md","jc/parsers/ss.py"]},"message":"add ss docs"},{"commit":"f783e44e5c0cd05733da5d24573f06d05760f993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["README.md","changelog.txt"]},"message":"doc fix"},{"commit":"af82f2c991ac0668485e75ae78a26b9553ec8b13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update raw format note"},{"commit":"46774daf9d3e0612df8f79d4b6b724e612ceb725","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":194,"deletions":4,"files":["README.md","jc/parsers/ss.py"]},"message":"doc update"},{"commit":"648306b7856fe2e296ce463ff4c9c2a8632c92d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":44,"deletions":22,"files":["jc/parsers/ss.py"]},"message":"process ss data"},{"commit":"b7a4f205b80c0a6a41aaabf59703525ac526c295","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":17,"deletions":14,"files":["jc/parsers/ss.py"]},"message":"parser fixes"},{"commit":"fdb168b43a69358a97bf43b71a0adbc7b1ef56f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":120,"deletions":0,"files":["jc/cli.py","jc/parsers/ss.py"]},"message":"add ss parser"},{"commit":"b6f65c93c462856f26201df0cbfe804b29a65169","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":43,"deletions":69,"files":["README.md","docs/parsers/ps.md","jc/parsers/ps.py"]},"message":"ps doc update"},{"commit":"3f4838f17a81969718d9e5b6bafa21e0b92e1d95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":6,"files":["docgen.sh","docs/cli.md"]},"message":"remove cli.md"},{"commit":"eef0dee2aa206716d9cf011bec58a06c46bbee15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":0,"files":["docs/utils.md","jc/utils.py"]},"message":"doc update"},{"commit":"e17388d3b2d1521d963bf9dd9e7a4ba5ba9bb09d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":44,"deletions":4,"files":["docs/utils.md","jc/utils.py"]},"message":"doc update"},{"commit":"7e6a1bc719b7160ba70cd326ff6aa182993a7380","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":41,"deletions":63,"files":["docs/readme.md","jc/__init__.py"]},"message":"doc update"},{"commit":"37738a2ea2f15af847e4b8383aba911e2020a3e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update contributions"},{"commit":"c5834a57db8957723a1425b9db46c433e28a3af1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":0,"files":["README.md"]},"message":"add todo section"},{"commit":"91b9373f380e06f91888811edbfb21747ff08810","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":417,"deletions":673,"files":["README.md"]},"message":"new examples"},{"commit":"ce0bb5b816eed0c75542ead474c3dcb8401be2d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting fix"},{"commit":"f330ff0eff00586f46d18497f2441e94b6430e91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["README.md"]},"message":"wrap example text"},{"commit":"4b02700414660b90518311485761870402368625","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":20,"files":["README.md"]},"message":"update simple examples"},{"commit":"ee30180376b7acec46314bbc483866bff41c362a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"fix note"},{"commit":"338e0ff15c7fac84475c1ed107e6a23e7a009b1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]},"message":"add schema note"},{"commit":"3ac75305dfa33429646bb5d415567034cccfeee3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":39,"insertions":351,"deletions":39,"files":["docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"update process() doc"},{"commit":"3bdcf44afb708cf6a716a0847b119f895602c23e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":18,"deletions":2,"files":["docs/parsers/arp.md","jc/parsers/arp.py"]},"message":"doc update"},{"commit":"e3f4ffede56fe48c0a282a021ac5cdfd7a8abee9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":20,"insertions":172,"deletions":77,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md"]},"message":"doc update"},{"commit":"f0c8725d4355113f7690f20bb99078e488084ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":181,"deletions":81,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"doc update"},{"commit":"5473bc4eb697d00bd26a038287e1137e438cacb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":16,"deletions":6,"files":["docs/parsers/arp.md","jc/parsers/arp.py"]},"message":"doc update"},{"commit":"b9bd9422bfa46144416fa65add2e041d4124357b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":380,"deletions":46,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"doc update"},{"commit":"cb5729a070925a7fa29f762bd4b074532f5cba55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":62,"deletions":44,"files":["README.md"]},"message":"add options to docs"},{"commit":"f0b1ab42337746afd37365abdf44729d530d5410","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/utils.md","jc/utils.py"]},"message":"doc update"},{"commit":"b15386e849b9fea347e7b17307eedf779d8022fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":11,"deletions":5,"files":["docs/utils.md","jc/utils.py"]},"message":"doc update"},{"commit":"d2a2c8da35ee44e9a7572885609548eb809bcdda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":5,"files":["docs/parsers/iptables.md","docs/parsers/mount.md","docs/parsers/uname.md"]},"message":"doc updates"},{"commit":"7251548cbb09beae6971385a56036e9649bd9b2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":5,"files":["jc/parsers/iptables.py","jc/parsers/mount.py","jc/parsers/uname.py"]},"message":"documentation updates"},{"commit":"146e29f7cbc0f396be67dbd7ae971a4ef4dafb7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":47,"insertions":5386,"deletions":2249,"files":["docgen.sh","docs/cli.md","docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/readme.md","docs/utils.md","jc/__init__.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/utils.py"]},"message":"update docs"},{"commit":"363fd3eab409351121dab8a11c6b565829ccd84a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"move parser_name to except block"},{"commit":"4083dd4260ff3a8bb6649e1661cf3e058fdbad59","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":24,"deletions":5,"files":["changelog.txt","jc/cli.py"]},"message":"add -d option"},{"commit":"b2b74547baaf33058d74fc08cb665777b19bd05a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":317,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-sudo-aeep.json","tests/fixtures/centos-7.7/netstat-sudo-aeep.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.json","tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.out","tests/test_netstat.py"]},"message":"add netstat-sudo-aeep tests"},{"commit":"dddb0baabf8a78261ac80380b97e7c92c7ce4d89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/netstat.py"]},"message":"use \\u2063 instead of \\u2026"},{"commit":"84b4f67ef9d4bb0db201a095d74400a56394589d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["tests/fixtures/centos-7.7/ps-axu.json","tests/fixtures/ubuntu-18.04/ps-axu.json"]},"message":"new json output"},{"commit":"3a089138b8c269ba3c5f7aec87ae3f8ec368c3ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":129,"deletions":9,"files":["jc/parsers/ps.py"]},"message":"add int and float changes"},{"commit":"3ff0305c8e62ce3b5a8f3f9174c5a9da3bc22766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":54,"deletions":2,"files":["tests/fixtures/centos-7.7/lsblk-allcols.json","tests/fixtures/centos-7.7/lsblk-allcols.out","tests/fixtures/centos-7.7/lsblk.json","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/lsblk-allcols.json","tests/fixtures/ubuntu-18.04/lsblk-allcols.out","tests/fixtures/ubuntu-18.04/lsblk.json","tests/test_lsblk.py"]},"message":"add lsblk tests"},{"commit":"761edc3c6cfc215fe45c65ee2bb5462cb460b6a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":6,"files":["jc/parsers/lsblk.py"]},"message":"remove unused parse_pairs function"},{"commit":"3351c81f647ac97a5038cc0c14adb31e55832a77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":200,"deletions":2,"files":["jc/parsers/lsblk.py"]},"message":"add documentation"},{"commit":"3dfc6f67d770c59804bdeb371d5c78e3f3668f9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/lsblk.py"]},"message":"change empty values to Null"},{"commit":"1546ec3bd139ef687282f60786388b5207541c98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":17,"deletions":13,"files":["jc/parsers/lsblk.py"]},"message":"fixes for right justified columns"},{"commit":"2a953011f72e922c89b9af6dfebd1983da7c338d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":50,"deletions":155,"files":["changelog.txt","jc/parsers/lsblk.py"]},"message":"rewrite of lsblk parser to use a custom delimiter"},{"commit":"d2f755de9d2be7b0af5f010042e1f4ca589c5464","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":14,"insertions":250,"deletions":566,"files":["tests/test_ifconfig.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_ls.py","tests/test_lsblk.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_ps.py","tests/test_route.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py"]},"message":"updates tests"},{"commit":"f363334639c5fa3a43889794ea52409056a2d886","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":87,"deletions":219,"files":["tests/test_df.py","tests/test_dig.py","tests/test_env.py","tests/test_free.py","tests/test_history.py"]},"message":"update tests"},{"commit":"750197e48596ad96804477053d3ff3c8063ea68a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":70,"files":["tests/test_arp.py"]},"message":"new tests"},{"commit":"36b349e4ed39fe611c7d87a47c378cc4d4627ad2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":76,"insertions":76,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-a.json","tests/fixtures/centos-7.7/arp-v.json","tests/fixtures/centos-7.7/arp.json","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/df.json","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/centos-7.7/env.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/centos-7.7/free.json","tests/fixtures/centos-7.7/history.json","tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/centos-7.7/iptables-filter-nv.json","tests/fixtures/centos-7.7/iptables-filter.json","tests/fixtures/centos-7.7/iptables-mangle.json","tests/fixtures/centos-7.7/iptables-nat.json","tests/fixtures/centos-7.7/iptables-raw.json","tests/fixtures/centos-7.7/jobs.json","tests/fixtures/centos-7.7/ls-al.json","tests/fixtures/centos-7.7/ls-alh.json","tests/fixtures/centos-7.7/ls.json","tests/fixtures/centos-7.7/lsblk.json","tests/fixtures/centos-7.7/lsmod.json","tests/fixtures/centos-7.7/lsof-sudo.json","tests/fixtures/centos-7.7/lsof.json","tests/fixtures/centos-7.7/mount.json","tests/fixtures/centos-7.7/netstat-l.json","tests/fixtures/centos-7.7/netstat-p.json","tests/fixtures/centos-7.7/netstat-sudo-lnp.json","tests/fixtures/centos-7.7/netstat.json","tests/fixtures/centos-7.7/ps-axu.json","tests/fixtures/centos-7.7/ps-ef.json","tests/fixtures/centos-7.7/route-vn.json","tests/fixtures/centos-7.7/route.json","tests/fixtures/centos-7.7/uname-a.json","tests/fixtures/centos-7.7/uptime.json","tests/fixtures/centos-7.7/w.json","tests/fixtures/ubuntu-18.04/arp-a.json","tests/fixtures/ubuntu-18.04/arp-v.json","tests/fixtures/ubuntu-18.04/arp.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/df.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json","tests/fixtures/ubuntu-18.04/env.json","tests/fixtures/ubuntu-18.04/free-h.json","tests/fixtures/ubuntu-18.04/free.json","tests/fixtures/ubuntu-18.04/history.json","tests/fixtures/ubuntu-18.04/ifconfig.json","tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","tests/fixtures/ubuntu-18.04/iptables-filter.json","tests/fixtures/ubuntu-18.04/iptables-mangle.json","tests/fixtures/ubuntu-18.04/iptables-nat.json","tests/fixtures/ubuntu-18.04/iptables-raw.json","tests/fixtures/ubuntu-18.04/jobs.json","tests/fixtures/ubuntu-18.04/ls-al.json","tests/fixtures/ubuntu-18.04/ls-alh.json","tests/fixtures/ubuntu-18.04/ls.json","tests/fixtures/ubuntu-18.04/lsblk.json","tests/fixtures/ubuntu-18.04/lsmod.json","tests/fixtures/ubuntu-18.04/lsof-sudo.json","tests/fixtures/ubuntu-18.04/lsof.json","tests/fixtures/ubuntu-18.04/mount.json","tests/fixtures/ubuntu-18.04/netstat-l.json","tests/fixtures/ubuntu-18.04/netstat-p.json","tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.json","tests/fixtures/ubuntu-18.04/netstat.json","tests/fixtures/ubuntu-18.04/ps-axu.json","tests/fixtures/ubuntu-18.04/ps-ef.json","tests/fixtures/ubuntu-18.04/route-vn.json","tests/fixtures/ubuntu-18.04/route.json","tests/fixtures/ubuntu-18.04/uname-a.json","tests/fixtures/ubuntu-18.04/uptime.json","tests/fixtures/ubuntu-18.04/w.json"]},"message":"json output files"},{"commit":"b5f1e94fe2859c4fbcf126f8f8fb20d71a9b6433","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/netstat.py"]},"message":"fix for space before '-' in program_name"},{"commit":"6a504fb0e10b1ef551ed9fe780926fe5ca02d267","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"]},"message":"add exception type"},{"commit":"e02bad2240bacbc31097d931a902a34217d559db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":123,"deletions":175,"files":["jc/parsers/netstat.py"]},"message":"update documentation"},{"commit":"1d4043a3b64c38a20a0db065c3bdc3c6a2d068bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":52,"deletions":0,"files":["jc/parsers/foo.py"]},"message":"add template parser"},{"commit":"039e034829789ca314a00abd4f1d9ad06f1a6eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":6,"files":["jc/parsers/netstat.py"]},"message":"fix parsing issues in program_name when spaces are in the name"},{"commit":"d828de4f4f2f4c3d582fddee79830d12511c3299","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":53,"deletions":9,"files":["jc/parsers/w.py"]},"message":"update documentation"},{"commit":"098000bb10a3f5ed33d285c6ba4f0dfb9a013fdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":24,"deletions":9,"files":["changelog.txt","jc/parsers/w.py"]},"message":"fix blank 'from' column issue"},{"commit":"b41165eff5cd7371e852cd33e084a919524ead9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":31,"deletions":1,"files":["jc/parsers/w.py"]},"message":"process w data"},{"commit":"6ad7891b2b34fae1a366568e4eba86e886a6dd84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":59,"deletions":14,"files":["jc/parsers/uptime.py"]},"message":"process uptime data"},{"commit":"72138315598cd405bc0508b554108bf3f730dcb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":31,"deletions":10,"files":["jc/parsers/uname.py"]},"message":"add process boilerplate"},{"commit":"10eedd82e4c4678fbf989fe599d7ca75deced5a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"a55493da0f1457a46f29511e0835adfa9d748f7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":93,"deletions":6,"files":["jc/parsers/route.py"]},"message":"process route data"},{"commit":"89973f4162317693b0d094a64115ee87d8479d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":45,"deletions":27,"files":["jc/parsers/ps.py"]},"message":"doc updates and tty fix"},{"commit":"4802222ad50d55372f2b883d83a61181086b0619","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/parsers/ps.py"]},"message":"process ps data"},{"commit":"bcd28f06f87a4260d1787399d723817afd6aee90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":1,"files":["jc/parsers/ps.py"]},"message":"prep ps for process"},{"commit":"e17a47a7fa7f4c1bb4c4b55fb004963fc1b61434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"fix typo"},{"commit":"cad2e16c7aa54a70f476bf4268ff8e5985cff468","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":353,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"document examples"},{"commit":"5da5d278dac77bd4aa21819194e7f9e178bd1887","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":0,"files":["jc/parsers/netstat.py"]},"message":"process netstat data"},{"commit":"81b6776e57c113cbfb8346d1cfd83532a440c257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":177,"files":["jc/parsers/netstat.py.old"]},"message":"remove old netstat parser"},{"commit":"5ecb6bd58b4ed91f63e4a0b5939378bd9925b7b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":3,"files":["changelog.txt","jc/parsers/netstat.py"]},"message":"doc updates"},{"commit":"21b56096c57cfcf5c55fdf5f9bab88b6d5c7dd73","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["jc/parsers/netstat.py"]},"message":"finalize parse_post"},{"commit":"8c78f959731a25a05ee6361a14853c92f8fce69b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"clean up trailing spaces on entries"},{"commit":"94a88bb5669d9a9a5dff085a4c4111bdd39df8f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":35,"deletions":17,"files":["jc/parsers/netstat.py"]},"message":"post_parse flags and program_name"},{"commit":"579124475b0b517b36ddbe5bdb13be14807dea1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"simplify parser_map code"},{"commit":"5da83e020015eb5559d216bc3f39b3854e76adf3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"]},"message":"fix found variable error"},{"commit":"a90a76d004b923edece07a52a3aa400a9ef4b005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":177,"deletions":140,"files":["jc/parsers/netstat.py.old","jc/parsers/netstat2.py"]},"message":"move out old netstat parser"},{"commit":"bdfa95912398b2630fcb13e866f4013747fd0975","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":20,"insertions":209,"deletions":212,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"fix compatibility code"},{"commit":"4380594275bc863e81839a6a7b032a6ff0cbb9b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":46,"files":["jc/utils.py"]},"message":"remove cli functions from utils"},{"commit":"88bf252c0df3c583640286880d7992e4399e23f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":139,"deletions":128,"files":["jc/cli.py","jc/jc.py"]},"message":"rename jc.py to cli.py"},{"commit":"a5efd8adce77fca7e3343f8f518c7bad578fdb4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"rename jc.py to cli.py"},{"commit":"2ee392eefffde77ebdf83f5e4e0c43cf8c1a7d6e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/netstat2.py"]},"message":"add quiet mode"},{"commit":"9c1d893e16ea17b16bec5fd0ec8839c4fe6f0590","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":102,"deletions":90,"files":["jc/jc.py","jc/parsers/arp.py","jc/parsers/df.py","jc/utils.py"]},"message":"move utils to own module and add quiet mode"},{"commit":"88dcb90c83b757285661c72429c5b60bb1ead94a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"a3bcabc89c1f74d067da0046492dbc56e50b1005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":62,"files":["jc/parsers/netstat2.py"]},"message":"mvp of netstat raw_data parser"},{"commit":"dafbf9fdcf53a8abbd006baef0be6697f860d2a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":247,"deletions":53,"files":["jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat2.py"]},"message":"process lsmod data"},{"commit":"680cb2b2caa82e1e2c3225b3c44cae2ba03ba02c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":76,"deletions":7,"files":["jc/parsers/lsblk.py"]},"message":"doc update"},{"commit":"54818a06e0e0b981810f6aec45c308da81a9e2ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/lsblk.py"]},"message":"change bool variable names"},{"commit":"88f4c5b5a93da3938b84f97abfc54539ee19ac48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":10,"deletions":10,"files":["jc/parsers/dig.py","jc/parsers/free.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py"]},"message":"remove TypeError from exception check"},{"commit":"2bb7409887e8b7659613189daf58d02cb26bd6ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":36,"deletions":11,"files":["jc/parsers/df.py","jc/parsers/lsblk.py"]},"message":"process lsblk data"},{"commit":"c780aac3aba02cc042c6a3c984af198069956370","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":22,"insertions":91,"deletions":5,"files":["jc/jc.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat2.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add compatibility function"},{"commit":"5010aaec285e26ae9dbfdb3fcdc38a3bd36cd236","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"]},"message":"put exit() back"},{"commit":"066e93cb075021ac94a0e2e6a36a34bc173ee6c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"]},"message":"move exit() to errormessage()"},{"commit":"0bd2faa7f71a128babc68afea053159ccb91b702","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/jc.py"]},"message":"beautify compatibility list"},{"commit":"e2f926453ba386736204e358f8306dfc731b5005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["install.sh"]},"message":"add install script"},{"commit":"b953b79f9c46d8c5398a6c1c2769167b5aed2805","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":11,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/ls.py"]},"message":"add compatibility"},{"commit":"7f9967780692bec2fcbe992eee0c392ab92efb7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":19,"deletions":1,"files":["jc/jc.py","jc/parsers/lsblk.py"]},"message":"compatibility function call"},{"commit":"721b54665924ad1657ee83cd5fca601e03700962","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/lsblk.py"]},"message":"finish schema"},{"commit":"2de5e41269421c73e07d4abd6ca99b38be736261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":95,"deletions":12,"files":["jc/parsers/lsblk.py"]},"message":"fix for more columns and build schema"},{"commit":"dfe0f6e99b6174734661fc43d9ad4b1d0dfd96e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":75,"deletions":9,"files":["jc/parsers/ls.py"]},"message":"process ls data"},{"commit":"8873b1bc697c8f9409fa676c88b5ebe109dc8717","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":46,"files":["jc/parsers/df.py"]},"message":"clean up process code"},{"commit":"9ff94707004fefed475603436fc0a7ffb19e6fee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":4,"files":["jc/jc.py"]},"message":"refactor helptext() function"},{"commit":"2c58fca53044892e15ceb5e8bcae1afb09fa3269","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":62,"deletions":4,"files":["jc/parsers/jobs.py"]},"message":"process jobs data"},{"commit":"9e5cd90da7d92bbadbc0d25071d087a3dbd90a5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":131,"deletions":261,"files":["jc/parsers/iptables.py"]},"message":"process iptables data"},{"commit":"7ee0d49424bba5274975d6c33e0721977660692f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":107,"deletions":28,"files":["jc/parsers/ifconfig.py"]},"message":"process ifconfig data"},{"commit":"a9058ee21e87454aa423112239c4f4df7daca8c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":4,"deletions":1,"files":["jc/parsers/arp.py","jc/parsers/dig.py","jc/parsers/free.py"]},"message":"doc formatting"},{"commit":"fcf0aac87dccac2ce28e6f55e66e2f0b8f6fbd36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":54,"deletions":10,"files":["jc/parsers/history.py"]},"message":"add history processing"},{"commit":"daec5f068103aae547509ddacc2be56c84f39f17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":55,"deletions":6,"files":["jc/parsers/free.py"]},"message":"process free data"},{"commit":"5b2491d5ae72705758944e247fbca83367c0365f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":54,"deletions":5,"files":["jc/parsers/env.py"]},"message":"process env data"},{"commit":"d9b41ac73b234f5bf7ff3abfee198092424a1bbd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/dig.py"]},"message":"doc formatting"},{"commit":"7168ffddf8a8dfcdd5bcabd8bf943d6417de407d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":87,"deletions":5,"files":["jc/parsers/dig.py"]},"message":"process dig output"},{"commit":"a855344bec9f60d852de326953436ec76f25cffb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":0,"files":["jc/parsers/arp.py"]},"message":"document schema"},{"commit":"d8b3b59fae924494fbcdfbdf6ad790f5234b0c69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/parsers/df.py"]},"message":"add schema and rename 'avail' to 'available'"},{"commit":"4b7d7840d37be47c1c98c38a6d712e7090e5b68c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","changelog.txt"]},"message":"add -r option"},{"commit":"58a094a9b4cab0fcb99581f37a21a450fc3a1aed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"65adbb4189ac66de3283adb2af93a1251103f057","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":29,"deletions":7,"files":["jc/parsers/arp.py"]},"message":"doc update"},{"commit":"f7350959c9706486a3aed19a999e5ee756a1240c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":47,"deletions":24,"files":["jc/parsers/df.py"]},"message":"df fix for changing header names when -h used"},{"commit":"8934a7d832b8e1375f0bbdd71031f37ae42f3929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["jc/parsers/arp.py","jc/parsers/df.py"]},"message":"fix dictionary iteration"},{"commit":"669a424fd6508db91bf5cfa2607033fac85f442c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/df.py"]},"message":"fix process function"},{"commit":"591a65c2bda26efcdd570a5f147f98a5be0473d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":46,"deletions":2,"files":["jc/parsers/df.py"]},"message":"process df data"},{"commit":"a78fb890782a64b20c0c1b60afbd915ebdd88535","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":5,"files":["jc/parsers/arp.py"]},"message":"add raw and processed output"},{"commit":"8979dab2a5371fce3a773004c2309e7483e4cd31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":25,"deletions":20,"files":["jc/jc.py"]},"message":"add raw mode"},{"commit":"0a891f0adda7f2f3233222a0cb5c1f737913ad6f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":1,"files":["changelog.txt","setup.py"]},"message":"bump python required version"},{"commit":"c220e35b14237c2cfc38aa661413af83ea13e393","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":34,"deletions":33,"files":["jc/jc.py"]},"message":"cleanup helptext"},{"commit":"f26c5818bd958c18f4ecc22611b9c058f6213a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":36,"deletions":33,"files":["jc/jc.py"]},"message":"refactor helptext"},{"commit":"e712cd3fc4cec1b3137c73e199b2d89fd42fb3bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":138,"deletions":0,"files":["jc/parsers/netstat2.py"]},"message":"netstat2 skeleton"},{"commit":"0309c9ac67c5f65e0a584fd01e8104ef1990fa7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"setup cleanup"},{"commit":"9a9eb4120af7696cd3727ac0f0a014663e62b993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["setup.py"]},"message":"setup updates"},{"commit":"d1927456b02e6c2a6e6395cd6ce873b6565ec37d","merge":"0691cfc a3d9213","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #6 from kellyjonbrazil/dev"},{"commit":"a3d9213a1e2fd52ba2cbc863d4d01d3ffeebe230","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["changelog.txt"]},"message":"add date"},{"commit":"3365c03a1e709835b4bd6bca023afbcb46912982","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":361,"deletions":0,"files":["tests/test_arp.py","tests/test_dig.py"]},"message":"add tests"},{"commit":"4f6c87389b313b368d9e833feef55fe6daf7aac9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":164,"deletions":1,"files":["tests/fixtures/centos-7.7/dig-aaaa.out","tests/fixtures/centos-7.7/dig-x.out","tests/fixtures/centos-7.7/dig.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/dig-aaaa.out","tests/fixtures/ubuntu-18.04/dig-x.out","tests/fixtures/ubuntu-18.04/dig.out"]},"message":"add dig test files"},{"commit":"41a2a9adac7d3c29dfa11292f08b0877c69b1a5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":147,"deletions":3,"files":["README.md","jc/parsers/dig.py"]},"message":"remove unnecessary if statement"},{"commit":"74dae2905b2b0916f0be9fee2a4a343962760ff6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":143,"deletions":30,"files":["jc/parsers/dig.py"]},"message":"dig parser mvp"},{"commit":"d1f64214de00090c3faae0bf544c6c2602ab8c31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":3,"files":["jc/parsers/dig.py"]},"message":"add authority parsing"},{"commit":"d3e1aa20a815d1d1d6ae82776ae18e3416f0966f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dig.py"]},"message":"fix when line"},{"commit":"72cae9577756c4355211a19f4dd77aaeb6f8e905","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":47,"deletions":9,"files":["jc/parsers/dig.py"]},"message":"dig fixes"},{"commit":"219bc8130f55f23e3be3abbe56104aefc2f84e86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":155,"deletions":0,"files":["jc/jc.py","jc/parsers/dig.py"]},"message":"dig parser skeleton"},{"commit":"e8c1a554c040ad8f9c6b518db5fd58e8345d2181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-a.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/arp-a.out"]},"message":"testfile updates"},{"commit":"087a60bc2adf64bfcedc1f264fef328f993b530c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":87,"deletions":5,"files":["README.md","jc/parsers/arp.py"]},"message":"documentation updates"},{"commit":"9c9823c3b8737b5de08af6278ca74414138e9263","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":16,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-v.out","tests/fixtures/centos-7.7/arp.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/arp-v.out","tests/fixtures/ubuntu-18.04/arp.out"]},"message":"add arp testfiles"},{"commit":"cf8d13030bf67261a986c0f80fa20ec0e37a743a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["README.md"]},"message":"add arp"},{"commit":"1eff69c187ca410ffaec7909bc2532553be1d80c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":17,"deletions":1,"files":["changelog.txt","jc/parsers/arp.py"]},"message":"add documentation"},{"commit":"b10fb77d714b73a10a9bf28b45269b3530e01cee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/arp.py"]},"message":"fixup arp parser"},{"commit":"87cee8b230a06fa270b2e36afb56f337da814c80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":28,"deletions":1,"files":["jc/jc.py","jc/parsers/arp.py"]},"message":"add arp parser"},{"commit":"83ab10d6282e26391bbf6bae5d0d29e040b209f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":44,"deletions":34,"files":["jc/__init__.py"]},"message":"documentation update"},{"commit":"d58a6e1d1dc93155255922b65b0af1325439b033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":15,"files":["README.md"]},"message":"readme update"},{"commit":"cb46ca5c2776a13c673a44d3e0fbd0661b32af9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]},"message":"readme update"},{"commit":"5528d979f0b45787d68ab79b962371df9acc527b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["changelog.txt","setup.py"]},"message":"version bump"},{"commit":"ee94a038a61d60db72046d5bcceec58009decb39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":131,"deletions":0,"files":["tests/test_uname.py","tests/test_uptime.py","tests/test_w.py"]},"message":"add tests"},{"commit":"1d658f7a9fc50873f76985b2fb9de92ada9d5547","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":265,"deletions":0,"files":["tests/test_netstat.py","tests/test_ps.py","tests/test_route.py"]},"message":"add tests"},{"commit":"392cb44f9b19829a5ceba055e24c7af4d8ac5b3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":80,"insertions":12667,"deletions":0,"files":["runtests.sh","tests/__init__.py","tests/fixtures/centos-7.7/df-h.out","tests/fixtures/centos-7.7/df.out","tests/fixtures/centos-7.7/env.out","tests/fixtures/centos-7.7/free-h.out","tests/fixtures/centos-7.7/free.out","tests/fixtures/centos-7.7/history.out","tests/fixtures/centos-7.7/ifconfig.out","tests/fixtures/centos-7.7/iptables-filter-nv.out","tests/fixtures/centos-7.7/iptables-filter.out","tests/fixtures/centos-7.7/iptables-mangle.out","tests/fixtures/centos-7.7/iptables-nat.out","tests/fixtures/centos-7.7/iptables-raw.out","tests/fixtures/centos-7.7/jobs.out","tests/fixtures/centos-7.7/ls-al.out","tests/fixtures/centos-7.7/ls-alh.out","tests/fixtures/centos-7.7/ls.out","tests/fixtures/centos-7.7/lsblk.out","tests/fixtures/centos-7.7/lsmod.out","tests/fixtures/centos-7.7/lsof-sudo.out","tests/fixtures/centos-7.7/lsof.out","tests/fixtures/centos-7.7/mount.out","tests/fixtures/centos-7.7/netstat-l.out","tests/fixtures/centos-7.7/netstat-p.out","tests/fixtures/centos-7.7/netstat-sudo-lnp.out","tests/fixtures/centos-7.7/netstat.out","tests/fixtures/centos-7.7/ps-axu.out","tests/fixtures/centos-7.7/ps-ef.out","tests/fixtures/centos-7.7/route-vn.out","tests/fixtures/centos-7.7/route.out","tests/fixtures/centos-7.7/uname-a.out","tests/fixtures/centos-7.7/uptime.out","tests/fixtures/centos-7.7/w.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/df-h.out","tests/fixtures/ubuntu-18.04/df.out","tests/fixtures/ubuntu-18.04/env.out","tests/fixtures/ubuntu-18.04/free-h.out","tests/fixtures/ubuntu-18.04/free.out","tests/fixtures/ubuntu-18.04/history.out","tests/fixtures/ubuntu-18.04/ifconfig.out","tests/fixtures/ubuntu-18.04/iptables-filter-nv.out","tests/fixtures/ubuntu-18.04/iptables-filter.out","tests/fixtures/ubuntu-18.04/iptables-mangle.out","tests/fixtures/ubuntu-18.04/iptables-nat.out","tests/fixtures/ubuntu-18.04/iptables-raw.out","tests/fixtures/ubuntu-18.04/jobs.out","tests/fixtures/ubuntu-18.04/ls-al.out","tests/fixtures/ubuntu-18.04/ls-alh.out","tests/fixtures/ubuntu-18.04/ls.out","tests/fixtures/ubuntu-18.04/lsblk.out","tests/fixtures/ubuntu-18.04/lsmod.out","tests/fixtures/ubuntu-18.04/lsof-sudo.out","tests/fixtures/ubuntu-18.04/lsof.out","tests/fixtures/ubuntu-18.04/mount.out","tests/fixtures/ubuntu-18.04/netstat-l.out","tests/fixtures/ubuntu-18.04/netstat-p.out","tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.out","tests/fixtures/ubuntu-18.04/netstat.out","tests/fixtures/ubuntu-18.04/ps-axu.out","tests/fixtures/ubuntu-18.04/ps-ef.out","tests/fixtures/ubuntu-18.04/route-vn.out","tests/fixtures/ubuntu-18.04/route.out","tests/fixtures/ubuntu-18.04/uname-a.out","tests/fixtures/ubuntu-18.04/uptime.out","tests/fixtures/ubuntu-18.04/w.out","tests/test_df.py","tests/test_env.py","tests/test_free.py","tests/test_history.py","tests/test_ifconfig.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_ls.py","tests/test_lsblk.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py"]},"message":"initial add of tests and fixtures"},{"commit":"579bef079cdd7cfa298bc20e052b8eb75b586f5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/netstat.py"]},"message":"move global output variable inside function"},{"commit":"0691cfcab3f5f91908e06ec906d57e548d4e7a1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["changelog.txt"]},"message":"changelog fix"},{"commit":"db29c7c186601fd4596d3eb121b37100601af907","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","jc/parsers/netstat.py"]},"message":"documentation fixes"},{"commit":"fb1e03637514b5ab02fd4c5df1db8b3cbacdd531","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":10,"files":["README.md"]},"message":"formatting"},{"commit":"c3eaf59836538f4ab4c745e87b70115b4a4c5421","merge":"ea0cf0a c9849ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #5 from kellyjonbrazil/dev"},{"commit":"c9849ce0db1f864d33739f8f6f942bf5672bc3b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"d3c89a3092973a7a8765463fff41c2469ed675cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":9,"files":["jc/parsers/uname.py"]},"message":"check for enough info to parse"},{"commit":"a3d43f27f7bb0835b3593b7c303fe0ee8d896a58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":10,"files":["jc/parsers/uptime.py"]},"message":"fix odd uptime text parsing"},{"commit":"f4d9c1b699fa30bd297a40ccf3d5f6e7ba3d4253","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":4,"files":["jc/parsers/uptime.py"]},"message":"fix uptime for minutes and hours long uptime"},{"commit":"de647bba4aff84f7b513cf7f6fec8d3933b0d9da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"documentation update"},{"commit":"d7913070315e5e0c89006942250aaf37e9e3e18e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"documentation update"},{"commit":"1a4fc204e21f1555ae67c3147322c8d73fab630b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":10,"deletions":1,"files":["README.md","changelog.txt"]},"message":"Documentation update"},{"commit":"0328e14c7c65a330093faa52fe48dae6cb173e42","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":0,"files":["jc/jc.py"]},"message":"handle ctrl-c gracefully"},{"commit":"1acc4d6c29d136e286f82d607c4a3a59e2680b68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/uptime.py"]},"message":"fix uptime parsing for short uptimes"},{"commit":"27245590ce28be933f1a55db4ee6b24783f4b63d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":20,"files":["jc/parsers/jobs.py"]},"message":"remove integers"},{"commit":"7ca2a4bdb939293e8d7364f8901ad1fd6d3ee808","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":182,"deletions":201,"files":["README.md","changelog.txt","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/netstat.py"]},"message":"remove integer values"},{"commit":"5f1ec6734874651bee595961edf1fafaf5acf001","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":473,"deletions":456,"files":["README.md","jc/parsers/df.py","jc/parsers/history.py","jc/parsers/iptables.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/w.py"]},"message":"lower() headers"},{"commit":"7e44c4278a75c7223d99200023160e8d77fde54d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/jobs.py"]},"message":"formatting"},{"commit":"eda726c4a3864008e2f700374b679ae68a965ef8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":80,"deletions":1,"files":["jc/parsers/ifconfig.py"]},"message":"documentation update"},{"commit":"5f8e70d73054f1a106c0e75eee621bc0cefd1c6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":20,"deletions":22,"files":["changelog.txt","jc/parsers/df.py","jc/parsers/free.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/w.py"]},"message":"convert headers to lowercase"},{"commit":"25b90546c652cafa9409f02bae1654cb523add88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":14,"deletions":9,"files":["README.md","changelog.txt","jc/parsers/df.py"]},"message":"change 'Use%' to 'Use_percent'"},{"commit":"75c084153845757e22c149ea4ae7909d42ec7118","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"5b532b9b71fdb9de575da0af9b7989ac537877c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/parsers/lsof.py"]},"message":"minor cleanup"},{"commit":"8c7b3193d131411f8766508fc27b2a6589bba1f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/history.py"]},"message":"documentation change"},{"commit":"0897c96ef3c180a1707e8f56c545f59b3a4e0672","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/lsof.py"]},"message":"formatting"},{"commit":"57d0ab2ed7f444862546da17cbbe8f8ce67bca8c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":9,"deletions":4,"files":["README.md","jc/parsers/w.py"]},"message":"change LOGIN@ to LOGIN_AT"},{"commit":"a07d9a0e4bb76d369b4a9bf0d77c7590dc3c2861","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":22,"deletions":13,"files":["README.md","jc/parsers/lsof.py"]},"message":"change SIZE/OFF key to SIZE_OFF"},{"commit":"b3996cb4dfed908d71b292dc0b0136c6675351e6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":10,"files":["README.md","jc/parsers/lsblk.py"]},"message":"change MAJ:MIN key to MAJ_MIN"},{"commit":"4fa88c1ba38b34f9750625458c465d66f6531bc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/history.py"]},"message":"clear out non-ascii chars from data"},{"commit":"c8c5564b29588094721949b96bff1e623437835d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":3,"files":["README.md","jc/parsers/free.py"]},"message":"change buff/cache key to buff_cache"},{"commit":"6d047486d9f577bc04d79af839f5eef9657a9d43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"doc fix"},{"commit":"42bdc058141c4a3ac6f2c8211f9c990590b1b5cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"changelog fix"},{"commit":"85bfb688862e78d5879df6973b88ba8023fa6086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":10,"files":["README.md","jc/parsers/history.py"]},"message":"history parser fixes"},{"commit":"08ec21556b553cd7e64932d68e01ba8ff3b0f210","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/w.py"]},"message":"formatting"},{"commit":"320929bf2595026d32b80b80c3e4878db9cf083f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/env.py"]},"message":"documentation update"},{"commit":"41cd489c34502c42602bf64086670ba3b2b8e14b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":126,"deletions":0,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/history.py","jc/parsers/uptime.py"]},"message":"add history and uptime parsers"},{"commit":"f101d881a16e662e883818749d48e96858fba853","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":78,"deletions":3,"files":["README.md","jc/jc.py","jc/parsers/w.py","setup.py"]},"message":"add w parser"},{"commit":"fa7466022bb8947c1bbf9f7b01aa4d92300a8992","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":28,"deletions":56,"files":["README.md","changelog.txt","jc/parsers/env.py"]},"message":"fix env parser"},{"commit":"ea0cf0acf22585fbf8828841cf50155636eae82f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/lsof.py"]},"message":"documentation update"},{"commit":"e7921b65f5a250c10b08f78939f74968047af430","merge":"393e8bc 2cc1b1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #4 from kellyjonbrazil/dev"},{"commit":"2cc1b1bd5451f31d71b0e2236bdee0ce2b25b5d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"version bump"},{"commit":"58ae976db0165730a75dd7450c698d2727a354ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":113,"deletions":4,"files":["README.md","jc/parsers/lsmod.py","setup.py"]},"message":"documentation update"},{"commit":"66772392ae78ef394e22070b127416b1d5b01332","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":32,"deletions":0,"files":["changelog.txt","jc/jc.py","jc/parsers/lsmod.py"]},"message":"add lsmod parser"},{"commit":"29c47c03a64f9c6b0f44d34be5449396654849b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":134,"deletions":2,"files":["README.md","changelog.txt","jc/parsers/lsof.py"]},"message":"documentation update"},{"commit":"91eb9a4d13e9254bd5bbde931196904c1947a28e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsof.py"]},"message":"use None instead of --"},{"commit":"a1a3de32ec14d6ef433e334b9694856698c26d41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":59,"deletions":0,"files":["jc/jc.py","jc/parsers/lsof.py"]},"message":"add lsof parser"},{"commit":"9c47fd05bf716c2e18ebf4da41b1a46b972b2518","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/jobs.py"]},"message":"doco fix"},{"commit":"649c0aa7c157f87691cc8eeac64c747e81f63594","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":76,"deletions":1,"files":["README.md","jc/parsers/jobs.py"]},"message":"add documentation"},{"commit":"3db758764e50666e5ae40de8d89180de2ef5bc28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":83,"deletions":0,"files":["changelog.txt","jc/jc.py","jc/parsers/jobs.py"]},"message":"add jobs parser"},{"commit":"802f1510eb6d621f9c760f28b83f16a4781b8d93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"]},"message":"tighten if statements"},{"commit":"56901788dee154890e70269ad48d4b22bb8c5437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":30,"deletions":19,"files":["jc/jc.py"]},"message":"stop blocking when no pipe and enhance help text"},{"commit":"679ae6d5dc7af26240dc00d8bc6499950f81d457","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump"},{"commit":"b15c8c352a87a9b3b1dece28af0287ef71ca02d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":16,"files":["jc/parsers/iptables.py"]},"message":"simplify state variables"},{"commit":"393e8bc56041a4be01b6c0b2f98895aa330afd04","merge":"e3750b4 976fd7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #3 from kellyjonbrazil/dev"},{"commit":"976fd7d9bd49190a8b28ea5acf5af8979cdec537","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":28,"files":["README.md"]},"message":"readme update"},{"commit":"d8337870cad042cdcc6a4ff3c61f756c3430fa96","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":28,"files":["jc/parsers/df.py"]},"message":"update documentation"},{"commit":"39a8aec77f5134b5b958e3f679910a1c3512e13a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/parsers/ls.py","setup.py"]},"message":"v0.8.1 build"},{"commit":"306d539b6bbfb272c7b955e4847adc3a6b4afa5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"readme update"},{"commit":"f3087b8a8ede88834285bb5d0655fc96341c174c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":635,"deletions":1,"files":["README.md","changelog.txt","jc/parsers/iptables.py"]},"message":"update readme and formatting"},{"commit":"414c2ecef88af2d2c098e6acfb507a5fd7bb8eda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":10,"files":["jc/parsers/iptables.py"]},"message":"fix iptables parser"},{"commit":"776ef2d1be81180b8b295fbc587446a326f2f7a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":61,"deletions":0,"files":["jc/jc.py","jc/parsers/iptables.py"]},"message":"add iptables parser"},{"commit":"9ac57469967443b195be09d580beaa76ce0e1095","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":64,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/uname.py"]},"message":"add uname parser"},{"commit":"a3e55d97c0fd4397b42e9146afb0ba9558274fdb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":127,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/mount.py"]},"message":"add mount parser"},{"commit":"b15227e7ba5377e5fb6799d1b9e4ed5a11c6d92f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":125,"deletions":0,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/lsblk.py"]},"message":"add lsblk parser"},{"commit":"ec3d1f84ceccb492b4c968938714fafa2e6a6321","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":2,"files":["jc/parsers/free.py"]},"message":"fix free parser"},{"commit":"753d5fd9fe5a8e4b67b1a0ec018a9f811e27f8bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"readme update"},{"commit":"73a0d70c9294ad392792e690a7bfbcc4f51b0a5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"readme update"},{"commit":"c2c189f3e6e900e5f3d35df9a9b9d033448baff6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["README.md"]},"message":"readme update"},{"commit":"36bc55a3109278d663b675a09829200f5474c3d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["README.md"]},"message":"fix df"},{"commit":"a023001cd350e320ce30f47af214ed7a9bb43185","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":226,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/df.py","jc/parsers/env.py","jc/parsers/free.py"]},"message":"add df, env, and free parsers"},{"commit":"e3750b49628794fd4d563013b1f3a7471c27ce68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":83,"deletions":51,"files":["README.md","jc/__init__.py"]},"message":"documentation enhancements"},{"commit":"b5ea08e55bfd22c9da5ba73c124791012df119a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":20,"deletions":20,"files":["README.md","changelog.txt","jc/parsers/netstat.py","setup.py"]},"message":"fix transport protocol"},{"commit":"8e71b8e3522b9b1af4d869a0854223eb5c300b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"fix jq example"},{"commit":"4c8610c54ff4b643237d8f0e4c5781c277fc39f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["changelog.txt","setup.py"]},"message":"fixed build"},{"commit":"c8f886dc8fcdc58f8471d68c3d583200d0ea2f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"]},"message":"fix example"},{"commit":"4cfc2d22b3f9fd6f0cde8ad206edd7fe260b3071","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"update changelog"},{"commit":"59238c85408117748e78c5e87157381a828f3782","merge":"d54d906 30080c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #2 from kellyjonbrazil/dev"},{"commit":"30080c01659cf611666876b7b063b7b329822352","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":35,"deletions":35,"files":["README.md"]},"message":"reorder parsers"},{"commit":"fab80bb3b4a1897da29d818e98e9b80ce45443dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["README.md","setup.py"]},"message":"readme update"},{"commit":"a9f2df805421754afb8e8adbcac7f2d3bd06c9ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"move parsed_line var lower"},{"commit":"1d110be6cb25d169ae0dde6532cbcdf05d93d42f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":13,"deletions":1,"files":["README.md","changelog.txt","setup.py"]},"message":"update doco"},{"commit":"be81b5e1ed93eb65e5dbed4f52905439cde86f62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":112,"deletions":121,"files":["README.md"]},"message":"readme update"},{"commit":"5f88f7d8a071306be92cbfb65d6d62c5a68159f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":110,"deletions":137,"files":["jc/parsers/netstat.py"]},"message":"netstat cleanup"},{"commit":"e57c7cc8ef3102cc41dee4ea5fd33d40ba666491","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"change output from dict to list"},{"commit":"b216627c1073ea645029e341b4d3376601e5468e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":116,"files":["jc/parsers/netstat.py"]},"message":"flatten netstat output"},{"commit":"6e925eab131024b5746d870cbd47e2791acf18bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":18,"files":["jc/jc.py"]},"message":"clean up arg parsing"},{"commit":"d54d906c571b4683f01cab2eca63ae5f0725a87b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update readme"},{"commit":"0040febbf099ed8ab35f6ee343750fcf89f2e739","merge":"8073d15 e416c77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #1 from kellyjonbrazil/dev"},{"commit":"e416c77bed1267254da972b0f95b7ff1d43fccef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"version bump"},{"commit":"9181d242aaed5219bb35fde01d672be88949cceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"bump version"},{"commit":"d6f94c53a4df84fb75554605477e49536a809dc2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"]},"message":"fix blank output case in ls"},{"commit":"a9294f32a00709737d0b82ff434a311e75ad0bed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":39,"deletions":42,"files":["changelog.txt","jc/parsers/ls.py","setup.py"]},"message":"ls fixes"},{"commit":"4d93b38fe47329e3175025878e87f7c963061f98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":90,"deletions":1,"files":["README.md","jc/parsers/route.py"]},"message":"add route documentation"},{"commit":"77b74c550795f96b808e48a9b0bfd1a8af9866f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"add route parser"},{"commit":"51a1d3e6f48cf7084267be4092f0dd3f778dcef3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump"},{"commit":"2eba30422b44f648c7356a44cbff7416c6648f19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"]},"message":"skip first line"},{"commit":"43ed09ce5ba53261dfd7ef50a2e187cb524c416c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":25,"deletions":1,"files":["jc/jc.py","jc/parsers/route.py","setup.py"]},"message":"add route parser"},{"commit":"367ab54f94bf7f456377ec9d20f8daf99dbdc1ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":99,"deletions":2,"files":["README.md","changelog.txt","jc/parsers/ps.py"]},"message":"formatting"},{"commit":"4f552e370e656cc1882a7dae231475a016f8aa14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/ps.py"]},"message":"acknowledgment"},{"commit":"7571139f7980f6e74c29d46971881e82ab0f04bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"bump version"},{"commit":"8ec1bec31711d2ef487da3e4a29a842d98d77626","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":29,"deletions":7,"files":["changelog.txt","jc/__init__.py","jc/jc.py","jc/parsers/ps.py"]},"message":"add ps parser"},{"commit":"c04895407f203aa0a3a080d5242faf8f6889ae41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["changelog.txt","jc/parsers/netstat.py"]},"message":"ubuntu fixes"},{"commit":"cec73d61310591e4890605f61dc5c1bef5808ec4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":24,"deletions":16,"files":["jc/jc.py","jc/parsers/ifconfig.py","jc/parsers/ls.py","jc/parsers/netstat.py"]},"message":"linting"},{"commit":"756c2bc9acd60111281b76085a40778e51ca06cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":3,"files":["README.md"]},"message":"add acknowledgments"},{"commit":"084048987c7afc6516f69e68d37d73b2402dc7f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"02d97394dd76a8782e6e7d3f8a85e1aed05e796b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"177f948f9740e3e33449b04b9136a346c9a2c265","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version update"},{"commit":"c2b013150ec1f1b1ab7d416f1aa8a62165a5bb95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["changelog.txt"]},"message":"add changelog"},{"commit":"0bec67c29ce5d965271440da41a0c4b4c2a1f0fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/netstat.py"]},"message":"double quotes to single quotes"},{"commit":"8073d15fe11546a17cacd81409e255bb8aecd602","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":4,"files":["README.md"]},"message":"readme update"},{"commit":"3b74afc39e58f801e75b7105e521c1469d30f991","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["pypi-upload.sh"]},"message":"upload script"},{"commit":"ed320cf0f4bb11cee1e69e9dc9176ba109df1b86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":22,"deletions":22,"files":["README.md","jc/parsers/netstat.py","setup.py"]},"message":"change netstat pid field to integer"},{"commit":"021b6924e24e1cf0f971246244b174cd3181c0a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":254,"deletions":5,"files":["README.md","jc/parsers/netstat.py"]},"message":"documentation updates"},{"commit":"5fb21b077662f1cb172741945ba5036e5a280638","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":8,"files":["jc/parsers/netstat.py"]},"message":"remove debug print statements"},{"commit":"7b8540ae2a60f2400fe672a022ee00d1415a3500","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":7,"files":["jc/parsers/netstat.py"]},"message":"netstat fixes"},{"commit":"a5e039d4c2e07d52a0797833685c562ab285b49b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":17,"deletions":7,"files":["jc/parsers/netstat.py"]},"message":"netstat debugging"},{"commit":"7071f60a302b7aefb8fb312699b0abec25548986","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":66,"deletions":18,"files":["jc/parsers/netstat.py"]},"message":"netstat mvp"},{"commit":"0de1dff0253eb46b7336103f62f888940406ccc0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["jc/parsers/netstat.py"]},"message":"fix ands"},{"commit":"b3c52eb1ccf82e899dda62c332c0b217d80eb4c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":112,"deletions":40,"files":["jc/parsers/ifconfig.py","jc/parsers/netstat.py"]},"message":"add netstat parser"},{"commit":"366c5dbc010869bdb1d3b9d852e10510bd5c266f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/jc.py"]},"message":"fix help message"},{"commit":"a3ee02514b5fbd43a38ddf515a4aad49bb4e161a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/jc.py"]},"message":"fix imports and module names"},{"commit":"46ad1269cb58dc6f064d17eb0b04da62d8fd5fce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":3,"files":["jc/jc.py","setup.py"]},"message":"packaging fixes"},{"commit":"7234afe568818678585ac423649a0ccce0f45d68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"entrypoint fix"},{"commit":"caf480c63aacb518805d48fba0fd454959d11023","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"module fix"},{"commit":"62851b48d5e5cd673e630a28996e1c24cc45aa58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/jc.py","setup.py"]},"message":"fix modules"},{"commit":"46d6da92f0e196e150ab9dd44b1ba290c950905b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["jc/{jc => jc.py}","setup.py"]},"message":"fix entry_points"},{"commit":"e572b2edfa993c5049ef3caeda7a8e4797f0c751","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":37,"deletions":29,"files":["jc/jc","setup.py"]},"message":"use entry_points instead of scripts"},{"commit":"72c69e7de59029d623c9819dda6aa8cae91bc419","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/jc"]},"message":"fix package paths"},{"commit":"4d1565071e5cf7c38e026e08db8f4d2e79969691","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["jc/{jc.py => jc}","setup.py"]},"message":"rename jc.py to jc"},{"commit":"3652e51693d7ba829f4699fd80de20856941d82f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"fix requirements"},{"commit":"49ce9f13e817266659400a8c19f5b078a48589df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":17,"deletions":20,"files":["jc/jc.py","jc/parsers/__init__.py","setup.py"]},"message":"setup updates"},{"commit":"e83170b7ec7ed2123bfde69be263b6034c7afa53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["README.md"]},"message":"readme update"},{"commit":"ffb6eb754a87baad5fb0558e30a5bca1a9b9e0a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/parsers/__init__.py","setup.py"]},"message":"setup fixes"},{"commit":"2597a18d95d01109d2250487b7550a501edaf77b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":82,"deletions":0,"files":["README.md"]},"message":"readme update"},{"commit":"3e576250b1bfe1c62c556f2fa0425103b0ede1f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":429,"deletions":0,"files":[".gitignore","LICENSE.md","README.md","build-package.sh","jc/__init__.py","jc/jc.py","jc/parsers/__init__.py","jc/parsers/ifconfig.py","jc/parsers/ls.py","jc/parsers/netstat.py","setup.py"]},"message":"First commit"}] +[{"commit":"096fffdb79807d34b99985b38df0a3df7f6a86c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":120,"deletions":36,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":78},{"name":"jc/parsers/git_log.py","lines_changed":78}]},"message":"use stat examples"},{"commit":"728d882ed007b3c8b785018874a0eb06e1143b66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":90,"deletions":12,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":51},{"name":"jc/parsers/git_log.py","lines_changed":51}]},"message":"add timestamp docs and examples"},{"commit":"b53e42aca623181aa9bc72194e6eeef1e9a3a237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":29,"deletions":6,"files":["docs/parsers/git_log.md","docs/utils.md","jc/parsers/git_log.py","jc/utils.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":8},{"name":"docs/utils.md","lines_changed":4},{"name":"jc/parsers/git_log.py","lines_changed":14},{"name":"jc/utils.py","lines_changed":7},{"name":"man/jc.1","lines_changed":2}]},"message":"add calculated timestamp"},{"commit":"477329ce5b8f5c2a8e4384ba3f59289fc18c957d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add linefeed to version text"},{"commit":"283dc4efd55030188f17c7e1dfbc5315103494b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["CHANGELOG","jc/cli.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/cli.py","lines_changed":7}]},"message":"add python interpreter version and path to -v and -a output"},{"commit":"d490bbcaa0291a691b95fa5b61807eebb0b088eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":26,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":52}]},"message":"normalize add/update"},{"commit":"f49ddf8e5c5009702155fc62d83c63e3c08c594d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":4},{"name":"jc/parsers/git_log.py","lines_changed":4}]},"message":"doc update"},{"commit":"e1e341652b51b823844e76ef7e68f9373a323435","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"doc update"},{"commit":"ecda667549137bed5622cca69f2022e7a75ea833","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":8,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":2},{"name":"jc/parsers/git_log.py","lines_changed":18}]},"message":"process integers"},{"commit":"a0d96a188a9f875b2d59625aa97d4f80bba290f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":1,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"doc update"},{"commit":"6c0f0cddfe4dd2d5169f7c55416c6725912557f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":1,"files":["jc/parsers/yaml.py","tests/test_yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":7},{"name":"tests/test_yaml.py","lines_changed":8}]},"message":"fix for datetime objects in yaml files"},{"commit":"c7173ecd89742c8cf8a7bc4a8021baac5c3cd483","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":6,"files":["jc/parsers/git_log.py"],"file_stats":[{"name":"jc/parsers/git_log.py","lines_changed":14}]},"message":"fix mypy issues"},{"commit":"e98240c905394e3ebd6a45fa31b6d432c150afc4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/git_log.py"],"file_stats":[{"name":"jc/parsers/git_log.py","lines_changed":8}]},"message":"extend instead of append list"},{"commit":"6cb7e25974b11afe57d7d0e8550b3b1a56b14c67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":93,"deletions":1,"files":["README.md","docs/parsers/git_log.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/git_log.md","lines_changed":86},{"name":"man/jc.1","lines_changed":7}]},"message":"add docs"},{"commit":"c37980c05c7fbd4f811ce5fcfcfddaf5f3ab5414","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":41,"deletions":7,"files":["jc/parsers/git_log.py"],"file_stats":[{"name":"jc/parsers/git_log.py","lines_changed":48}]},"message":"add stat support"},{"commit":"b5943bd39d776fc4c3b3dea03c0f3d4b6f4bb260","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":10,"files":["jc/parsers/git_log.py"],"file_stats":[{"name":"jc/parsers/git_log.py","lines_changed":33}]},"message":"initial docstring"},{"commit":"49a3a7db3b2b0b292489a41691c9dcbce816cfed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":175,"deletions":0,"files":["jc/lib.py","jc/parsers/git_log.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/git_log.py","lines_changed":174}]},"message":"initial git-log parser"},{"commit":"0c55240e9da30ac4293cc324f1094de2abd3da91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":0,"files":["CHANGELOG","tests/{ => templates}/_test_foo.py","tests/{ => templates}/_test_foo_s.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"tests/{ => templates}/_test_foo.py","lines_changed":0},{"name":"tests/{ => templates}/_test_foo_s.py","lines_changed":0}]},"message":"move test templates to fix test failures on some systems"},{"commit":"f91988aed5499d25acf7a7e87b2b0d0cd37b62af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/lib.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":2}]},"message":"iterator -> iterable"},{"commit":"3c3ad9fc6adf865b3814a1f03814d0bc17d1c6bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"iterator -> iterable in doc"},{"commit":"291ab79e22a59cb31814e7a5af9dbc9f2ec863e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":24,"deletions":24,"files":["README.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":24},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":22}]},"message":"fix arch linux command"},{"commit":"e6d5892c146762cd41a966adadb77db333d98ace","merge":"c0414e7 dcca7a5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #226 from kellyjonbrazil/master"},{"commit":"dcca7a57d558721a61fbba44f07b1d53116827e1","merge":"7138eef 4ee8a69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #225 from adrianteri/patch-1"},{"commit":"4ee8a69337b24e199983fe657643abcb0a56a8e6","author":"003","author_email":"adriateri@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"Update README"},{"commit":"c0414e7db7f5d785b72ad616517f2ec63af151a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":8}]},"message":"clean up background tasks"},{"commit":"a419175fe6dffe9c5fd20cfbd82ee552bc82a993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":34,"deletions":17,"files":["docgen.sh","updatedocs.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":30},{"name":"updatedocs.sh","lines_changed":21}]},"message":"enhance parallelization"},{"commit":"cd6dead034f3c72aebd22afeb2aea6591ae6d94d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"man page update"},{"commit":"45342ea9fea29947d8d90260c7665ffbca612cce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":16,"deletions":9,"files":["docgen.sh","updatedocs.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":16},{"name":"updatedocs.sh","lines_changed":9}]},"message":"parallelize doc gneration"},{"commit":"585bf0e159c7839869cf3e458938dcc5fa2ceb81","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"xrandr update"},{"commit":"3a860b9babe93d455f68ef21436edf7470d375af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":5,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":4},{"name":"jc/parsers/xrandr.py","lines_changed":8}]},"message":"add rotation field"},{"commit":"269180df77f9ff953b07222e8ae790c7e7a8298e","merge":"e85f11c a1afed8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #223 from anekos/fix/support-rotated-devices"},{"commit":"a1afed8d95e33fbbc618c7b5778a9faeea2f628f","author":"anekos","author_email":"anekos@snca.net","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["docs/parsers/xrandr.md"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":4}]},"message":"doc update"},{"commit":"e39f150a216e4e184444dfc88a63e0f303e51631","author":"anekos","author_email":"anekos@snca.net","stats":{"files_changed":3,"insertions":9,"deletions":4,"files":["jc/parsers/xrandr.py","tests/fixtures/generic/xrandr_simple.json","tests/test_xrandr.py"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":4},{"name":"tests/fixtures/generic/xrandr_simple.json","lines_changed":1},{"name":"tests/test_xrandr.py","lines_changed":8}]},"message":"Support rotated devices"},{"commit":"e85f11c6fcad5461bae612dd5a945c20d300e59a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":12,"deletions":12,"files":["docs/parsers/ini.md","docs/parsers/kv.md","jc/parsers/ini.py","jc/parsers/kv.py"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":6},{"name":"docs/parsers/kv.md","lines_changed":6},{"name":"jc/parsers/ini.py","lines_changed":6},{"name":"jc/parsers/kv.py","lines_changed":6}]},"message":"doc formatting"},{"commit":"49a9d7b07e89696f2e022655d7256b7d6ad4bf7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":12,"deletions":8,"files":["docs/parsers/ini.md","docs/parsers/kv.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":8},{"name":"docs/parsers/kv.md","lines_changed":10},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"a2ef9c429e4bb9f70d033511dce77ccdb9013971","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":38,"deletions":8,"files":["jc/parsers/ini.py","jc/parsers/kv.py","tests/test_ini.py","tests/test_kv.py"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":12},{"name":"jc/parsers/kv.py","lines_changed":10},{"name":"tests/test_ini.py","lines_changed":12},{"name":"tests/test_kv.py","lines_changed":12}]},"message":"allow duplicate keys"},{"commit":"d5e9074f1c8facb3f15b8c41a008917178626978","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/lib.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/lib.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"774699f085d97f22ae2dab0cf64d72aa1e1709f7","merge":"789f073 7138eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #220 from kellyjonbrazil/master"},{"commit":"7138eef3d137bc64286d4af453d8d4e7b3f4408d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"docs/parsers/asciitable_m.md","lines_changed":6},{"name":"jc/parsers/asciitable_m.py","lines_changed":6}]},"message":"fix newline chars in doc"},{"commit":"fad5e544aa9e57d31473190e196f59c616901207","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":2},{"name":"jc/parsers/asciitable.py","lines_changed":2}]},"message":"formatting"},{"commit":"64757e2cf55448bccfbbd60d31930ab3f59af21b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":12},{"name":"jc/parsers/asciitable.py","lines_changed":12}]},"message":"doc formatting"},{"commit":"e05be3f08beae1b600fc55a3a7b4e28163e15bc0","merge":"ac61e9a 789f073","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #213 from kellyjonbrazil/dev"},{"commit":"789f0735dfd63e728b8716d97cf0c6045ede5011","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"doc update"},{"commit":"34bc7753174be28d6c1a00dadc662bc374e554c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"38de059a1bc285c8681086d9fb43d0d23ac01d49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":3,"files":["docs/parsers/asciitable.md","docs/parsers/universal.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":6},{"name":"docs/parsers/universal.md","lines_changed":4},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"304ae6268f4dff6e6f901628e7ff89db1d6e0767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":12}]},"message":"minor optimization by changing the expression order"},{"commit":"978caf45221188a29c0e67147804f20f317c066d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["jc/parsers/asciitable.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":26}]},"message":"minor optimization by reordering expressions"},{"commit":"17df5bfcfc25f226a2976aa7ab8a80e4aaa915c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":2,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":10},{"name":"jc/parsers/asciitable_m.py","lines_changed":4}]},"message":"cache _is_separator function"},{"commit":"5e6a5068cff71b3b30525d0a12868bdf6551456c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":2,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":8}]},"message":"allow iterables for simple table parser"},{"commit":"619de68a61be0117e635032347dde417d77c748c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":9,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":7},{"name":"jc/parsers/asciitable_m.py","lines_changed":10}]},"message":"formatting"},{"commit":"6748c3cc91f90bddea3d07b8b30a049ee55eaf35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":65,"deletions":61,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":52},{"name":"jc/parsers/asciitable_m.py","lines_changed":74}]},"message":"remove lines from corner detection and add rounded corners"},{"commit":"0a462978b731770d1290187a502706c2322f5f91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":101,"deletions":3,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py","tests/test_asciitable.py","tests/test_asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":25},{"name":"jc/parsers/asciitable_m.py","lines_changed":8},{"name":"tests/test_asciitable.py","lines_changed":43},{"name":"tests/test_asciitable_m.py","lines_changed":28}]},"message":"fix for special characters in headers"},{"commit":"e66a82ff49b40a674f9ef373a12d59fc71bfa730","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":5,"files":["CHANGELOG","jc/parsers/asciitable_m.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":5},{"name":"jc/parsers/asciitable_m.py","lines_changed":4},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"f3aa797d96c8e2cef2124dbb2f49d1fadaee3fa2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":69,"deletions":9,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":43},{"name":"jc/parsers/asciitable_m.py","lines_changed":35}]},"message":"add more pretty table separators"},{"commit":"e5b478218c4ba3781afd085056dba888c3f6ae02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_xrandr.py"],"file_stats":[{"name":"tests/test_xrandr.py","lines_changed":6}]},"message":"add quiet=True to parse tests"},{"commit":"35e0e9c32afbc5450c661bcb3a23904d135358ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":1}]},"message":"remove print statement"},{"commit":"17c3c2f029a0a47eb02d681567619d471b99949c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":58,"deletions":2,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py","tests/test_asciitable.py","tests/test_asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":3},{"name":"jc/parsers/asciitable_m.py","lines_changed":2},{"name":"tests/test_asciitable.py","lines_changed":31},{"name":"tests/test_asciitable_m.py","lines_changed":24}]},"message":"add bold bar seperator and ANSI code tests"},{"commit":"cf83e6398b3314b233581eb313510872177de20a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":0,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":4},{"name":"jc/parsers/asciitable_m.py","lines_changed":3}]},"message":"add fancy separators"},{"commit":"94e061b881e2ed28d2b462ad038e5ba77182b6c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":275,"deletions":0,"files":["tests/test_asciitable.py"],"file_stats":[{"name":"tests/test_asciitable.py","lines_changed":275}]},"message":"add asciitable parser tests"},{"commit":"720480e39ce3cc2079d7f4f5bcff2725081fec34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":10,"deletions":2,"files":["docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":3},{"name":"docs/parsers/asciitable_m.md","lines_changed":3},{"name":"jc/parsers/asciitable.py","lines_changed":3},{"name":"jc/parsers/asciitable_m.py","lines_changed":3}]},"message":"doc update"},{"commit":"82a63fe15922456853aa4597aa10a5a02b20bdef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":8,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":7},{"name":"jc/parsers/asciitable.py","lines_changed":7}]},"message":"doc update"},{"commit":"9c1ec9940e68ce9848da20e81b8c0b7e35a215df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":82,"deletions":14,"files":["docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":44},{"name":"docs/parsers/asciitable_m.md","lines_changed":4},{"name":"jc/parsers/asciitable.py","lines_changed":44},{"name":"jc/parsers/asciitable_m.py","lines_changed":4}]},"message":"doc update"},{"commit":"f23f19da453a0f7bcf70e417a10f87e27571aa43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":122,"deletions":9,"files":["README.md","docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/asciitable.md","lines_changed":97},{"name":"docs/parsers/asciitable_m.md","lines_changed":4},{"name":"jc/parsers/asciitable_m.py","lines_changed":24},{"name":"man/jc.1","lines_changed":5}]},"message":"doc update"},{"commit":"aea2e1b0a9c6bb2a02a6e73889bb04e8f4f22588","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["tests/test_asciitable_m.py"],"file_stats":[{"name":"tests/test_asciitable_m.py","lines_changed":48}]},"message":"fix tests so blank strings are now None"},{"commit":"7d95d679bf4093ea77f30a1be55384b6dbf08341","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":212,"deletions":1,"files":["jc/lib.py","jc/parsers/asciitable.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2},{"name":"jc/parsers/asciitable.py","lines_changed":211}]},"message":"add asciitable parser"},{"commit":"b3b140066b74ee31dd1c460502caf2f26df321b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"docs/parsers/asciitable_m.md","lines_changed":4},{"name":"jc/parsers/asciitable_m.py","lines_changed":4}]},"message":"doc update"},{"commit":"b204c423c1b947c17cb251a5dd3c444cd71dd2c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":193,"deletions":15,"files":["README.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/asciitable_m.md","lines_changed":122},{"name":"jc/parsers/asciitable_m.py","lines_changed":78},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update"},{"commit":"d451c309bb0d8889dc09a698212bf01c2154a582","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":8,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":19}]},"message":"change multiple or statements to any()"},{"commit":"01d53da68ed04b736934851137c59216ad02d8c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":1}]},"message":"remove debug print"},{"commit":"53dd05e52c329a15c30a756a36a165ac59ef8a14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":29,"deletions":1,"files":["jc/parsers/asciitable_m.py","tests/test_asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":3},{"name":"tests/test_asciitable_m.py","lines_changed":27}]},"message":"fix rstrip and add tests"},{"commit":"ab564f5be8282f1c7ee2d602bcef398fdfd4570f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":237,"deletions":1,"files":["jc/parsers/asciitable_m.py","tests/test_asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":16},{"name":"tests/test_asciitable_m.py","lines_changed":222}]},"message":"add tests"},{"commit":"00c39450f9878527b60545ad61c04cfb98f418dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":2}]},"message":"enhance type annotation"},{"commit":"f611d08b50219f4e573c1d1f0beae27583e76432","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":5}]},"message":"formatting"},{"commit":"90e79b7df3a4d5b37835fdf1c2debc1bad0a40b9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":2}]},"message":"formatting"},{"commit":"4eb2d725d5fe6f2cc7935c7dc891912cf7b8e940","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":2}]},"message":"formatting"},{"commit":"51ae5ebcac7263ef2571c11975b275eff352bbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":148,"deletions":175,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":323}]},"message":"new streamlined parser"},{"commit":"9ecbdb09162da4d563799aa93d422db85b2c324b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":35,"deletions":30,"files":["docs/parsers/mpstat_s.md","docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","docs/parsers/universal.md","jc/parsers/foo_s.py","jc/parsers/mpstat_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"docs/parsers/mpstat_s.md","lines_changed":10},{"name":"docs/parsers/pidstat_s.md","lines_changed":10},{"name":"docs/parsers/rsync_s.md","lines_changed":10},{"name":"docs/parsers/universal.md","lines_changed":19},{"name":"jc/parsers/foo_s.py","lines_changed":4},{"name":"jc/parsers/mpstat_s.py","lines_changed":4},{"name":"jc/parsers/pidstat_s.py","lines_changed":4},{"name":"jc/parsers/rsync_s.py","lines_changed":4}]},"message":"use generator instead of iterable in function return annotation"},{"commit":"b3a2886fd0af0cd06890f37f1edfc6890bb83e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["docs/lib.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":3}]},"message":"formatting"},{"commit":"ceacec0f462bd7c2d9e92ddb9029ccd71aef481c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":1}]},"message":"remove errant os sep import"},{"commit":"ff0f794b01395ed9b65fac75a6b07f0772d45a2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":32,"deletions":10,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":42}]},"message":"working"},{"commit":"70fafbf3f80f35c5db2c306978b2a488adad40bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"remove asciitable so tests pass for now"},{"commit":"5a248a8fc58952a5eab3d4aac025d7422ba82d08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":344,"deletions":0,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":344}]},"message":"add multiline asciitable parser"},{"commit":"4a3a4e10df8a552a4db3510640695f02b166dc40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":4,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":7}]},"message":"add asciitable and asciitable-m parsers"},{"commit":"c27bd5ff39f21c6377e661d4d7de1200d2fdd72f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":16,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":39}]},"message":"pad lines in sparse_table_parse and use str.isspace()"},{"commit":"f804c9627fb71341429ca80aec2887e23e0277db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":1}]},"message":"copy input list so we don't mutate the caller's data"},{"commit":"3ab25d02f9dc248706aa1105e1766b2a84bc55a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"use _parser_is_streaming from lib"},{"commit":"9e80fd2b97b9bfe38fdaa6acdf2e8ed26d34b49d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":11,"files":["jc/cli.py","jc/lib.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":21},{"name":"jc/lib.py","lines_changed":5}]},"message":"fallback if info and doc items don't exist"},{"commit":"ff9527a098a94c996641fb3fe2f905c8ae5e3063","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":13,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":22}]},"message":"import cleanup and use all_parser_info in parsers_text"},{"commit":"7dac2f8dc3baf619105e3c6ca4d3e45300b86287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":23,"deletions":9,"files":["docs/lib.md","docs/readme.md","man/jc.1"],"file_stats":[{"name":"docs/lib.md","lines_changed":23},{"name":"docs/readme.md","lines_changed":7},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"32e4d55e86c3e7d94488ec69f13a4f6400c4cef3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":10}]},"message":"use parser_info for help_doc"},{"commit":"f9a9062147256d0949457cc7fde838f87202524d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":27,"deletions":10,"files":["CHANGELOG","jc/__init__.py","jc/lib.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/__init__.py","lines_changed":7},{"name":"jc/lib.py","lines_changed":29}]},"message":"add documentation argument to parser_info and all_parser_info"},{"commit":"89e5919796f7da585285901dca461aae21336415","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/mpstat_s.md","jc/parsers/mpstat_s.py"],"file_stats":[{"name":"docs/parsers/mpstat_s.md","lines_changed":2},{"name":"jc/parsers/mpstat_s.py","lines_changed":2}]},"message":"add -A to second example"},{"commit":"e5f5b2591d8ac3abeb9571688c7fb8de34d647f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"changelog update"},{"commit":"77c667eec045daff5cbd062fe9d6e83f237727e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":67,"deletions":6,"files":["docs/parsers/mpstat.md","docs/parsers/mpstat_s.md","jc/parsers/mpstat.py","jc/parsers/mpstat_s.py","tests/fixtures/ubuntu-18.04/mpstat-A-streaming.json","tests/fixtures/ubuntu-18.04/mpstat-A.json","tests/fixtures/ubuntu-18.04/mpstat-A.out","tests/test_mpstat.py","tests/test_mpstat_s.py"],"file_stats":[{"name":"docs/parsers/mpstat.md","lines_changed":2},{"name":"docs/parsers/mpstat_s.md","lines_changed":2},{"name":"jc/parsers/mpstat.py","lines_changed":12},{"name":"jc/parsers/mpstat_s.py","lines_changed":12},{"name":"tests/fixtures/ubuntu-18.04/mpstat-A-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/mpstat-A.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/mpstat-A.out","lines_changed":19},{"name":"tests/test_mpstat.py","lines_changed":12},{"name":"tests/test_mpstat_s.py","lines_changed":12}]},"message":"ubuntu fixes"},{"commit":"b257ce8c2fe6825fe435b4d04b4184091030db10","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":65,"deletions":0,"files":[".../centos-7.7/mpstat-A-2-5-streaming.json","tests/fixtures/centos-7.7/mpstat-A-streaming.json","tests/fixtures/centos-7.7/mpstat-streaming.json","tests/test_mpstat_s.py"],"file_stats":[{"name":".../centos-7.7/mpstat-A-2-5-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat-A-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat-streaming.json","lines_changed":1},{"name":"tests/test_mpstat_s.py","lines_changed":62}]},"message":"add mpstat_s tests"},{"commit":"c693c868cacbcd81f44fd383719723dd7a137c87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":352,"deletions":0,"files":["README.md","docs/parsers/mpstat.md","docs/parsers/mpstat_s.md","jc/lib.py","jc/parsers/mpstat.py","jc/parsers/mpstat_s.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/mpstat.md","lines_changed":2},{"name":"docs/parsers/mpstat_s.md","lines_changed":130},{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/mpstat.py","lines_changed":2},{"name":"jc/parsers/mpstat_s.py","lines_changed":211},{"name":"man/jc.1","lines_changed":5}]},"message":"add mpstat streaming parser"},{"commit":"6f98b27a05d6e1f7571a97316b193f096521b959","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":168,"deletions":0,"files":["tests/fixtures/centos-7.7/mpstat-A-2-5.json","tests/fixtures/centos-7.7/mpstat-A-2-5.out","tests/fixtures/centos-7.7/mpstat-A.json","tests/fixtures/centos-7.7/mpstat-A.out","tests/fixtures/centos-7.7/mpstat.json","tests/fixtures/centos-7.7/mpstat.out","tests/test_mpstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/mpstat-A-2-5.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat-A-2-5.out","lines_changed":86},{"name":"tests/fixtures/centos-7.7/mpstat-A.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat-A.out","lines_changed":15},{"name":"tests/fixtures/centos-7.7/mpstat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat.out","lines_changed":5},{"name":"tests/test_mpstat.py","lines_changed":59}]},"message":"add mpstat tests"},{"commit":"d7efd25d88a8f489564ce48223845a16e4ab1cc7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":207,"deletions":1,"files":["EXAMPLES.md","README.md","docs/parsers/mpstat.md","man/jc.1"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":64},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/mpstat.md","lines_changed":136},{"name":"man/jc.1","lines_changed":7}]},"message":"add mpstat to docs"},{"commit":"2cddb1f0bb497be0be071cdcb56bf49d2dafc920","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":94,"deletions":15,"files":["jc/parsers/mpstat.py"],"file_stats":[{"name":"jc/parsers/mpstat.py","lines_changed":109}]},"message":"working mpstat"},{"commit":"ae1c331595dd857d8ae7f8cf93daee1b26be2c3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":30,"deletions":5,"files":["jc/parsers/mpstat.py"],"file_stats":[{"name":"jc/parsers/mpstat.py","lines_changed":35}]},"message":"initial working version"},{"commit":"bc97052ed4ee3bf3f25127968139f2e89a659fe3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":109,"deletions":0,"files":["CHANGELOG","jc/lib.py","jc/parsers/mpstat.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/mpstat.py","lines_changed":107}]},"message":"initial add mpstat parser"},{"commit":"6c3e0e2aa0e8cc375d9f7473930b18957d33f1aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"formatting"},{"commit":"dd052e01469e9e3328f7326d3591365a8e7322eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":26,"deletions":24,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":25},{"name":"jc/parsers/universal.py","lines_changed":25}]},"message":"add underscores to column examples"},{"commit":"54e8f58145f6c4332fbd375d112259ea7abb2d72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":28,"deletions":2,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":15},{"name":"jc/parsers/universal.py","lines_changed":15}]},"message":"add table result examples"},{"commit":"def7aa5764e69cd0cf2c5b70aa62c62023f76c9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":16,"deletions":16,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":16},{"name":"jc/parsers/universal.py","lines_changed":16}]},"message":"formatting"},{"commit":"6986c74f6dceca907ea2e469a332deeb093a122c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":169,"insertions":34,"deletions":837,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/pidstat.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/nmcli.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/pidstat.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/xrandr.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":5},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iostat.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jar_manifest.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/nmcli.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/pidstat.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/rsync.md","lines_changed":5},{"name":"docs/parsers/sfdisk.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/systeminfo.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"docs/parsers/ufw.md","lines_changed":5},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/universal.md","lines_changed":18},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/vmstat.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/xrandr.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5},{"name":"docs/parsers/zipinfo.md","lines_changed":5},{"name":"jc/parsers/acpi.py","lines_changed":5},{"name":"jc/parsers/airport.py","lines_changed":5},{"name":"jc/parsers/airport_s.py","lines_changed":5},{"name":"jc/parsers/arp.py","lines_changed":5},{"name":"jc/parsers/blkid.py","lines_changed":5},{"name":"jc/parsers/cksum.py","lines_changed":5},{"name":"jc/parsers/crontab.py","lines_changed":5},{"name":"jc/parsers/crontab_u.py","lines_changed":5},{"name":"jc/parsers/csv.py","lines_changed":5},{"name":"jc/parsers/date.py","lines_changed":5},{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":5},{"name":"jc/parsers/dir.py","lines_changed":5},{"name":"jc/parsers/dmidecode.py","lines_changed":5},{"name":"jc/parsers/dpkg_l.py","lines_changed":5},{"name":"jc/parsers/du.py","lines_changed":5},{"name":"jc/parsers/env.py","lines_changed":5},{"name":"jc/parsers/file.py","lines_changed":5},{"name":"jc/parsers/finger.py","lines_changed":5},{"name":"jc/parsers/foo.py","lines_changed":5},{"name":"jc/parsers/free.py","lines_changed":5},{"name":"jc/parsers/fstab.py","lines_changed":5},{"name":"jc/parsers/group.py","lines_changed":5},{"name":"jc/parsers/gshadow.py","lines_changed":5},{"name":"jc/parsers/hash.py","lines_changed":5},{"name":"jc/parsers/hashsum.py","lines_changed":5},{"name":"jc/parsers/hciconfig.py","lines_changed":5},{"name":"jc/parsers/history.py","lines_changed":5},{"name":"jc/parsers/hosts.py","lines_changed":5},{"name":"jc/parsers/id.py","lines_changed":5},{"name":"jc/parsers/ifconfig.py","lines_changed":5},{"name":"jc/parsers/ini.py","lines_changed":5},{"name":"jc/parsers/iostat.py","lines_changed":5},{"name":"jc/parsers/iptables.py","lines_changed":5},{"name":"jc/parsers/iw_scan.py","lines_changed":5},{"name":"jc/parsers/jar_manifest.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":5},{"name":"jc/parsers/kv.py","lines_changed":5},{"name":"jc/parsers/last.py","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":5},{"name":"jc/parsers/lsblk.py","lines_changed":5},{"name":"jc/parsers/lsmod.py","lines_changed":5},{"name":"jc/parsers/lsof.py","lines_changed":5},{"name":"jc/parsers/lsusb.py","lines_changed":5},{"name":"jc/parsers/mount.py","lines_changed":5},{"name":"jc/parsers/netstat.py","lines_changed":5},{"name":"jc/parsers/nmcli.py","lines_changed":5},{"name":"jc/parsers/ntpq.py","lines_changed":5},{"name":"jc/parsers/passwd.py","lines_changed":5},{"name":"jc/parsers/pidstat.py","lines_changed":5},{"name":"jc/parsers/ping.py","lines_changed":5},{"name":"jc/parsers/pip_list.py","lines_changed":5},{"name":"jc/parsers/pip_show.py","lines_changed":5},{"name":"jc/parsers/ps.py","lines_changed":5},{"name":"jc/parsers/route.py","lines_changed":5},{"name":"jc/parsers/rpm_qi.py","lines_changed":5},{"name":"jc/parsers/rsync.py","lines_changed":5},{"name":"jc/parsers/sfdisk.py","lines_changed":5},{"name":"jc/parsers/shadow.py","lines_changed":5},{"name":"jc/parsers/ss.py","lines_changed":5},{"name":"jc/parsers/stat.py","lines_changed":5},{"name":"jc/parsers/sysctl.py","lines_changed":5},{"name":"jc/parsers/systemctl.py","lines_changed":5},{"name":"jc/parsers/systemctl_lj.py","lines_changed":5},{"name":"jc/parsers/systemctl_ls.py","lines_changed":5},{"name":"jc/parsers/systemctl_luf.py","lines_changed":5},{"name":"jc/parsers/systeminfo.py","lines_changed":5},{"name":"jc/parsers/time.py","lines_changed":5},{"name":"jc/parsers/timedatectl.py","lines_changed":5},{"name":"jc/parsers/tracepath.py","lines_changed":5},{"name":"jc/parsers/traceroute.py","lines_changed":5},{"name":"jc/parsers/ufw.py","lines_changed":5},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":5},{"name":"jc/parsers/uname.py","lines_changed":5},{"name":"jc/parsers/universal.py","lines_changed":18},{"name":"jc/parsers/upower.py","lines_changed":5},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/vmstat.py","lines_changed":5},{"name":"jc/parsers/w.py","lines_changed":5},{"name":"jc/parsers/wc.py","lines_changed":5},{"name":"jc/parsers/who.py","lines_changed":5},{"name":"jc/parsers/xml.py","lines_changed":5},{"name":"jc/parsers/xrandr.py","lines_changed":5},{"name":"jc/parsers/yaml.py","lines_changed":5},{"name":"jc/parsers/zipinfo.py","lines_changed":5}]},"message":"remove direct parser module example from doc"},{"commit":"b784db404d0569a4c630eb124b37b0b1d0846453","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":17,"insertions":87,"deletions":166,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/pidstat_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/pidstat_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":13},{"name":"docs/parsers/iostat_s.md","lines_changed":20},{"name":"docs/parsers/ls_s.md","lines_changed":16},{"name":"docs/parsers/pidstat_s.md","lines_changed":9},{"name":"docs/parsers/ping_s.md","lines_changed":13},{"name":"docs/parsers/rsync_s.md","lines_changed":13},{"name":"docs/parsers/stat_s.md","lines_changed":13},{"name":"docs/parsers/vmstat_s.md","lines_changed":23},{"name":"jc/parsers/csv_s.py","lines_changed":13},{"name":"jc/parsers/foo_s.py","lines_changed":13},{"name":"jc/parsers/iostat_s.py","lines_changed":20},{"name":"jc/parsers/ls_s.py","lines_changed":16},{"name":"jc/parsers/pidstat_s.py","lines_changed":9},{"name":"jc/parsers/ping_s.py","lines_changed":13},{"name":"jc/parsers/rsync_s.py","lines_changed":13},{"name":"jc/parsers/stat_s.py","lines_changed":13},{"name":"jc/parsers/vmstat_s.py","lines_changed":23}]},"message":"streaming doc formatting update"},{"commit":"8aee4517bb4c2eebdd9873f7eb0827cd33b85519","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":26,"files":["docs/parsers/pidstat_s.md","jc/parsers/pidstat_s.py"],"file_stats":[{"name":"docs/parsers/pidstat_s.md","lines_changed":19},{"name":"jc/parsers/pidstat_s.py","lines_changed":19}]},"message":"doc formatting"},{"commit":"a5fb8fbf94b3b80bef82f078ad6582260b13e374","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":17,"insertions":164,"deletions":148,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/pidstat_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/pidstat_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":12},{"name":"docs/parsers/iostat_s.md","lines_changed":14},{"name":"docs/parsers/ls_s.md","lines_changed":14},{"name":"docs/parsers/pidstat_s.md","lines_changed":53},{"name":"docs/parsers/ping_s.md","lines_changed":14},{"name":"docs/parsers/rsync_s.md","lines_changed":14},{"name":"docs/parsers/stat_s.md","lines_changed":14},{"name":"docs/parsers/vmstat_s.md","lines_changed":14},{"name":"jc/parsers/csv_s.py","lines_changed":12},{"name":"jc/parsers/foo_s.py","lines_changed":14},{"name":"jc/parsers/iostat_s.py","lines_changed":14},{"name":"jc/parsers/ls_s.py","lines_changed":14},{"name":"jc/parsers/pidstat_s.py","lines_changed":53},{"name":"jc/parsers/ping_s.py","lines_changed":14},{"name":"jc/parsers/rsync_s.py","lines_changed":14},{"name":"jc/parsers/stat_s.py","lines_changed":14},{"name":"jc/parsers/vmstat_s.py","lines_changed":14}]},"message":"streaming doc update"},{"commit":"b9365e2ac28c3eacf53bc101857f7f1d7286ec20","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":74,"deletions":0,"files":[".../centos-7.7/pidstat-hdlrsuw-2-5-streaming.json",".../centos-7.7/pidstat-hdlrsuw-streaming.json",".../fixtures/centos-7.7/pidstat-hl-streaming.json","tests/test_pidstat_s.py"],"file_stats":[{"name":".../centos-7.7/pidstat-hdlrsuw-2-5-streaming.json","lines_changed":1},{"name":".../centos-7.7/pidstat-hdlrsuw-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/pidstat-hl-streaming.json","lines_changed":1},{"name":"tests/test_pidstat_s.py","lines_changed":71}]},"message":"add pidstat-s tests"},{"commit":"696338c1a3d462afbe677a6f2ebe08d06ef4046a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":38,"deletions":0,"files":["tests/_test_foo_s.py"],"file_stats":[{"name":"tests/_test_foo_s.py","lines_changed":38}]},"message":"add streaming test template"},{"commit":"4f0616190bb842411353d65650b78a65d8cbdc28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/pidstat_s.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"3278cb0de301ee542b1fe8245a6c359193373b6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":10,"files":["docs/parsers/arp.md","jc/parsers/arp.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":23}]},"message":"add type hints"},{"commit":"4fc04256a567c502a88ac8a1bd189746387c93f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["jc/parsers/foo_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":4},{"name":"jc/parsers/pidstat_s.py","lines_changed":4},{"name":"jc/parsers/rsync_s.py","lines_changed":4}]},"message":"rollback noReturn to tuple"},{"commit":"e4ae0fea63c0386c1b3239607fd6a58738d23633","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":8,"deletions":8,"files":["docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","jc/parsers/foo_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"docs/parsers/pidstat_s.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":4},{"name":"jc/parsers/pidstat_s.py","lines_changed":4},{"name":"jc/parsers/rsync_s.py","lines_changed":4}]},"message":"fix type annotation"},{"commit":"d3727ea0906d6167aa48c340519242b010469d98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":99,"deletions":1,"files":["CHANGELOG","README.md","docs/parsers/pidstat_s.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/pidstat_s.md","lines_changed":91},{"name":"man/jc.1","lines_changed":5}]},"message":"doc update"},{"commit":"0d13909cf63d14008607c5640d074ab4073115e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":168,"deletions":0,"files":["jc/lib.py","jc/parsers/pidstat_s.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/pidstat_s.py","lines_changed":167}]},"message":"add pidstat-s parser"},{"commit":"c52ca20e285895d2afb685a2a5ca275de7901033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/pidstat.py"],"file_stats":[{"name":"jc/parsers/pidstat.py","lines_changed":2}]},"message":"fix comment"},{"commit":"21f27f26c81c75234221a5193c7d3903323e2032","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":72,"deletions":0,"files":["tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.json","tests/fixtures/centos-7.7/pidstat-hdlrsuw.json","tests/fixtures/centos-7.7/pidstat-hl.json","tests/test_pidstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/pidstat-hdlrsuw.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/pidstat-hl.json","lines_changed":1},{"name":"tests/test_pidstat.py","lines_changed":69}]},"message":"add pidstat tests"},{"commit":"5e7a87f39782d12070a895440ff541800df91b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":35,"deletions":0,"files":["tests/_test_foo.py"],"file_stats":[{"name":"tests/_test_foo.py","lines_changed":35}]},"message":"add test template"},{"commit":"845d763829acd03fff1d2fad6e9691f04bd1a2aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/pidstat.md","jc/parsers/pidstat.py"],"file_stats":[{"name":"docs/parsers/pidstat.md","lines_changed":4},{"name":"jc/parsers/pidstat.py","lines_changed":4}]},"message":"format docs to fit 80 columns"},{"commit":"f5c7d52ec72f5ff4b77d5ac4491f330575b9f10f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":10,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":6},{"name":"templates/manpage_template","lines_changed":6}]},"message":"formatting"},{"commit":"c3198a58744803f52113f80967c7259d781e2328","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":22,"deletions":12,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":17},{"name":"templates/manpage_template","lines_changed":17}]},"message":"formatting"},{"commit":"bbd4afa73542ba6596aed77426bb494fbcf23196","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["README.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"man/jc.1","lines_changed":7}]},"message":"add pidstat to docs"},{"commit":"ae754a84bf5fc35b248bbc5f7b0fa8e871765819","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":263,"deletions":33,"files":["docs/parsers/arp.md","docs/parsers/pidstat.md","jc/parsers/pidstat.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/pidstat.md","lines_changed":156},{"name":"jc/parsers/pidstat.py","lines_changed":138}]},"message":"doc update"},{"commit":"3389eb5debe0f0ba01ece01e20048608bf357e70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":219,"deletions":9,"files":["jc/parsers/pidstat.py","tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.out","tests/fixtures/centos-7.7/pidstat-hdlrsuw.out","tests/fixtures/centos-7.7/pidstat-hl.out"],"file_stats":[{"name":"jc/parsers/pidstat.py","lines_changed":52},{"name":"tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.out","lines_changed":47},{"name":"tests/fixtures/centos-7.7/pidstat-hdlrsuw.out","lines_changed":83},{"name":"tests/fixtures/centos-7.7/pidstat-hl.out","lines_changed":46}]},"message":"initial working parser"},{"commit":"01f2c1e71f87ab401d487be4d6d150cb67c91437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":162,"deletions":2,"files":["CHANGELOG","jc/lib.py","jc/parsers/pidstat.py","setup.py","tests/fixtures/centos-7.7/pidstat.out"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/lib.py","lines_changed":3},{"name":"jc/parsers/pidstat.py","lines_changed":112},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/pidstat.out","lines_changed":44}]},"message":"add pidstat parser"},{"commit":"8bfbf8f1bcd233a8ecd34012e140eb29164ca5fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"simplify error message"},{"commit":"f4242669bac3af5eb196c46d4146823aacec40ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":10,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":12}]},"message":"minor cleanup"},{"commit":"bebd9331f1fb9b80f8cb4a5cfacd68461743004e","merge":"9861983 ac61e9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #211 from kellyjonbrazil/master"},{"commit":"ac61e9ad2c9c4e864db02db04cbf907fb0efd99b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"templates/readme_template","lines_changed":1}]},"message":"add pypi link"},{"commit":"648ef4d8a9c33a36d4bb2c135fe59b031de8f24c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"templates/readme_template","lines_changed":4}]},"message":"update badge links"},{"commit":"727fc9a701e9aae75d3d2b708010da1d0dc8781a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/date.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"306512d6bb53af18516fc10b15c7ec79cb02cc98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":7,"deletions":4,"files":["CHANGELOG","jc/lib.py","jc/parsers/date.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/lib.py","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":4},{"name":"setup.py","lines_changed":2}]},"message":"force AM/PM to uppercase in date parser"},{"commit":"6afb1d389ca9dfd7880386d380fee032b7eb92e2","merge":"961968a 9861983","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #209 from kellyjonbrazil/dev"},{"commit":"98619834818c181cb50a9605fe166b6153c46095","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"ca79053db08542849136ae13fdb4d1d90b79a7e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":2}]},"message":"document pydoc version"},{"commit":"29c263f87810f8566ebdad2358e99896391adfd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":93,"insertions":115,"deletions":115,"files":["docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/streaming.md","docs/utils.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":16},{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/dpkg_l.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/finger.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/gshadow.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iostat.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/jar_manifest.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/kv.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/nmcli.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/rsync.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/stat_s.md","lines_changed":2},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/universal.md","lines_changed":4},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/xrandr.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"docs/parsers/zipinfo.md","lines_changed":2},{"name":"docs/streaming.md","lines_changed":12},{"name":"docs/utils.md","lines_changed":20}]},"message":"pydoc formatting fixes"},{"commit":"128c3c170abc6a702ae044b073fb9d992d4262b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"doc update"},{"commit":"a531ab8864fca27b55d83b55055eaef1c36128cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"formatting"},{"commit":"0c1be7cc11ec75a5738483d68d053e702eb34fc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":18,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":11},{"name":"templates/readme_template","lines_changed":11}]},"message":"reduce dig example size"},{"commit":"e4222b45f54e6179e22d7924c083e4642b9974ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":4}]},"message":"fix names to mod names"},{"commit":"ac32c69c31e8eff22252d7aded08f6cb14622086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":2},{"name":"jc/parsers/universal.py","lines_changed":2}]},"message":"formatting"},{"commit":"cb2dfeac8d44b733ad9d364e8c6d233a381bfae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":199,"insertions":334,"deletions":326,"files":["README.md","docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/streaming.md","docs/utils.md","jc/__init__.py","jc/cli.py","jc/exceptions.py","jc/lib.py","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat_freebsd_osx.py","jc/parsers/netstat_linux.py","jc/parsers/nmcli.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/xrandr.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py","jc/streaming.py","jc/utils.py","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docgen.sh","lines_changed":6},{"name":"docs/lib.md","lines_changed":25},{"name":"docs/parsers/acpi.md","lines_changed":4},{"name":"docs/parsers/airport.md","lines_changed":4},{"name":"docs/parsers/airport_s.md","lines_changed":4},{"name":"docs/parsers/arp.md","lines_changed":4},{"name":"docs/parsers/blkid.md","lines_changed":4},{"name":"docs/parsers/cksum.md","lines_changed":4},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"docs/parsers/crontab_u.md","lines_changed":4},{"name":"docs/parsers/csv.md","lines_changed":4},{"name":"docs/parsers/csv_s.md","lines_changed":4},{"name":"docs/parsers/date.md","lines_changed":4},{"name":"docs/parsers/df.md","lines_changed":4},{"name":"docs/parsers/dig.md","lines_changed":4},{"name":"docs/parsers/dir.md","lines_changed":4},{"name":"docs/parsers/dmidecode.md","lines_changed":4},{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"docs/parsers/du.md","lines_changed":4},{"name":"docs/parsers/env.md","lines_changed":4},{"name":"docs/parsers/file.md","lines_changed":4},{"name":"docs/parsers/finger.md","lines_changed":4},{"name":"docs/parsers/free.md","lines_changed":4},{"name":"docs/parsers/fstab.md","lines_changed":4},{"name":"docs/parsers/group.md","lines_changed":4},{"name":"docs/parsers/gshadow.md","lines_changed":4},{"name":"docs/parsers/hash.md","lines_changed":4},{"name":"docs/parsers/hashsum.md","lines_changed":4},{"name":"docs/parsers/hciconfig.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":4},{"name":"docs/parsers/hosts.md","lines_changed":4},{"name":"docs/parsers/id.md","lines_changed":4},{"name":"docs/parsers/ifconfig.md","lines_changed":4},{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"docs/parsers/iostat.md","lines_changed":4},{"name":"docs/parsers/iostat_s.md","lines_changed":4},{"name":"docs/parsers/iptables.md","lines_changed":4},{"name":"docs/parsers/iw_scan.md","lines_changed":4},{"name":"docs/parsers/jar_manifest.md","lines_changed":4},{"name":"docs/parsers/jobs.md","lines_changed":4},{"name":"docs/parsers/kv.md","lines_changed":4},{"name":"docs/parsers/last.md","lines_changed":4},{"name":"docs/parsers/ls.md","lines_changed":4},{"name":"docs/parsers/ls_s.md","lines_changed":4},{"name":"docs/parsers/lsblk.md","lines_changed":4},{"name":"docs/parsers/lsmod.md","lines_changed":4},{"name":"docs/parsers/lsof.md","lines_changed":4},{"name":"docs/parsers/lsusb.md","lines_changed":4},{"name":"docs/parsers/mount.md","lines_changed":4},{"name":"docs/parsers/netstat.md","lines_changed":4},{"name":"docs/parsers/nmcli.md","lines_changed":4},{"name":"docs/parsers/ntpq.md","lines_changed":4},{"name":"docs/parsers/passwd.md","lines_changed":4},{"name":"docs/parsers/ping.md","lines_changed":4},{"name":"docs/parsers/ping_s.md","lines_changed":4},{"name":"docs/parsers/pip_list.md","lines_changed":4},{"name":"docs/parsers/pip_show.md","lines_changed":4},{"name":"docs/parsers/ps.md","lines_changed":4},{"name":"docs/parsers/route.md","lines_changed":4},{"name":"docs/parsers/rpm_qi.md","lines_changed":4},{"name":"docs/parsers/rsync.md","lines_changed":4},{"name":"docs/parsers/rsync_s.md","lines_changed":9},{"name":"docs/parsers/sfdisk.md","lines_changed":4},{"name":"docs/parsers/shadow.md","lines_changed":4},{"name":"docs/parsers/ss.md","lines_changed":4},{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"docs/parsers/stat_s.md","lines_changed":4},{"name":"docs/parsers/sysctl.md","lines_changed":4},{"name":"docs/parsers/systemctl.md","lines_changed":4},{"name":"docs/parsers/systemctl_lj.md","lines_changed":4},{"name":"docs/parsers/systemctl_ls.md","lines_changed":4},{"name":"docs/parsers/systemctl_luf.md","lines_changed":4},{"name":"docs/parsers/systeminfo.md","lines_changed":4},{"name":"docs/parsers/time.md","lines_changed":4},{"name":"docs/parsers/timedatectl.md","lines_changed":4},{"name":"docs/parsers/tracepath.md","lines_changed":4},{"name":"docs/parsers/traceroute.md","lines_changed":4},{"name":"docs/parsers/ufw.md","lines_changed":4},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":4},{"name":"docs/parsers/uname.md","lines_changed":4},{"name":"docs/parsers/universal.md","lines_changed":6},{"name":"docs/parsers/upower.md","lines_changed":4},{"name":"docs/parsers/uptime.md","lines_changed":4},{"name":"docs/parsers/vmstat.md","lines_changed":4},{"name":"docs/parsers/vmstat_s.md","lines_changed":4},{"name":"docs/parsers/w.md","lines_changed":4},{"name":"docs/parsers/wc.md","lines_changed":4},{"name":"docs/parsers/who.md","lines_changed":4},{"name":"docs/parsers/xml.md","lines_changed":4},{"name":"docs/parsers/xrandr.md","lines_changed":4},{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"docs/parsers/zipinfo.md","lines_changed":4},{"name":"docs/readme.md","lines_changed":2},{"name":"docs/streaming.md","lines_changed":17},{"name":"docs/utils.md","lines_changed":29},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/cli.py","lines_changed":4},{"name":"jc/exceptions.py","lines_changed":2},{"name":"jc/lib.py","lines_changed":2},{"name":"jc/parsers/acpi.py","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/blkid.py","lines_changed":2},{"name":"jc/parsers/cksum.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"jc/parsers/csv.py","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/dir.py","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":2},{"name":"jc/parsers/dpkg_l.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/finger.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/group.py","lines_changed":2},{"name":"jc/parsers/gshadow.py","lines_changed":2},{"name":"jc/parsers/hash.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":2},{"name":"jc/parsers/hciconfig.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/iostat.py","lines_changed":2},{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2},{"name":"jc/parsers/jar_manifest.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/kv.py","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/lsusb.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/netstat_freebsd_osx.py","lines_changed":2},{"name":"jc/parsers/netstat_linux.py","lines_changed":2},{"name":"jc/parsers/nmcli.py","lines_changed":2},{"name":"jc/parsers/ntpq.py","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":2},{"name":"jc/parsers/ping.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/rpm_qi.py","lines_changed":2},{"name":"jc/parsers/rsync.py","lines_changed":2},{"name":"jc/parsers/rsync_s.py","lines_changed":2},{"name":"jc/parsers/sfdisk.py","lines_changed":2},{"name":"jc/parsers/shadow.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/stat_s.py","lines_changed":2},{"name":"jc/parsers/sysctl.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/systeminfo.py","lines_changed":2},{"name":"jc/parsers/time.py","lines_changed":2},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/ufw.py","lines_changed":2},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/universal.py","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/parsers/wc.py","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":2},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/xrandr.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2},{"name":"jc/parsers/zipinfo.py","lines_changed":2},{"name":"jc/streaming.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"templates/manpage_template","lines_changed":2},{"name":"templates/readme_template","lines_changed":4}]},"message":"change name to JSON Convert"},{"commit":"9a3602e70b865a3015bd700b30d1076e17511a9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":4},{"name":"jc/lib.py","lines_changed":4}]},"message":"doc update"},{"commit":"a9f53ee258e18bc90934e263d8dc96feee84e939","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":4,"files":["jc/cli.py","jc/lib.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4},{"name":"jc/lib.py","lines_changed":15}]},"message":"optimize streaming parser detection in cli"},{"commit":"6be3d3d98222a262c5138bb09f2951ccfab96110","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":43,"deletions":1,"files":["CHANGELOG","docs/lib.md","docs/readme.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docs/lib.md","lines_changed":25},{"name":"docs/readme.md","lines_changed":16}]},"message":"doc update"},{"commit":"e49df7208377ab34a74240a06f35f17fee4b8203","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"use streaming parser list to find streaming parsers"},{"commit":"7ede7be7bf7b1a7d29d158b3b21c20fff4990e72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":42,"deletions":0,"files":["jc/__init__.py","jc/lib.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":17},{"name":"jc/lib.py","lines_changed":25}]},"message":"add standard and streaming list functions"},{"commit":"4758e28a36e2a55497e4f722d386a6b5cc30dc4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":16,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":18},{"name":"jc/__init__.py","lines_changed":18}]},"message":"formatting"},{"commit":"4a1ee151b3cb054d84cd964fd62f5855f765751d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":9,"deletions":11,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py"],"file_stats":[{"name":"docs/parsers/nmcli.md","lines_changed":4},{"name":"jc/parsers/nmcli.py","lines_changed":16}]},"message":"add dhcp6 options to docs"},{"commit":"8c8afc1a922e3c30fcf501d169b33a68b65cd3e0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":60,"deletions":24,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":42},{"name":"jc/__init__.py","lines_changed":42}]},"message":"formatting"},{"commit":"ed205f7720d98c225c917c252ed7a6c9e6e8c2b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":9,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/nmcli.md","lines_changed":8},{"name":"jc/parsers/nmcli.py","lines_changed":8},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"d65f7ae992abc33140c00714d442290103661757","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":41,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":41}]},"message":"add nmcli"},{"commit":"e2ffef57b9a474048fe72cf42aebfa6bfaf2e42b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_nmcli.py"],"file_stats":[{"name":"tests/test_nmcli.py","lines_changed":2}]},"message":"fix test"},{"commit":"002caa9fb3b65f1ae64df25cc39c3de130403e76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":252,"deletions":0,"files":[".../fedora32/nmcli-connection-show-ens33.json",".../fedora32/nmcli-connection-show-ens33.out",".../fixtures/fedora32/nmcli-device-show-ens33.json",".../fixtures/fedora32/nmcli-device-show-ens33.out","tests/fixtures/fedora32/nmcli-device-show.json","tests/fixtures/fedora32/nmcli-device-show.out","tests/test_nmcli.py"],"file_stats":[{"name":".../fedora32/nmcli-connection-show-ens33.json","lines_changed":1},{"name":".../fedora32/nmcli-connection-show-ens33.out","lines_changed":148},{"name":".../fixtures/fedora32/nmcli-device-show-ens33.json","lines_changed":1},{"name":".../fixtures/fedora32/nmcli-device-show-ens33.out","lines_changed":26},{"name":"tests/fixtures/fedora32/nmcli-device-show.json","lines_changed":1},{"name":"tests/fixtures/fedora32/nmcli-device-show.out","lines_changed":39},{"name":"tests/test_nmcli.py","lines_changed":36}]},"message":"add fedora tests"},{"commit":"b7c6faf3daf8eb0c42a222778baa440c5a018c75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"enhance error message"},{"commit":"554ca61d1764b81dea06b6b013d0444072f0662a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":165,"deletions":0,"files":[".../fixtures/centos-7.7/nmcli-connection-all.json",".../centos-7.7/nmcli-connection-show-ens33.json","tests/fixtures/centos-7.7/nmcli-connection.json","tests/fixtures/centos-7.7/nmcli-device-all.json",".../centos-7.7/nmcli-device-show-ens33.json",".../fixtures/centos-7.7/nmcli-device-show-lo.json","tests/fixtures/centos-7.7/nmcli-device-show.json","tests/fixtures/centos-7.7/nmcli-device.json","tests/fixtures/centos-7.7/nmcli-general-all.json",".../centos-7.7/nmcli-general-permissions.json","tests/test_nmcli.py"],"file_stats":[{"name":".../fixtures/centos-7.7/nmcli-connection-all.json","lines_changed":1},{"name":".../centos-7.7/nmcli-connection-show-ens33.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-connection.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-device-all.json","lines_changed":1},{"name":".../centos-7.7/nmcli-device-show-ens33.json","lines_changed":1},{"name":".../fixtures/centos-7.7/nmcli-device-show-lo.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-device-show.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-device.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-general-all.json","lines_changed":1},{"name":".../centos-7.7/nmcli-general-permissions.json","lines_changed":1},{"name":"tests/test_nmcli.py","lines_changed":155}]},"message":"add tests"},{"commit":"7b9722d255a16981099dc803beda7abe0d46106a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":26,"deletions":34,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":30},{"name":"templates/manpage_template","lines_changed":30}]},"message":"fix formatting"},{"commit":"5505bde8ef77db0885f08d8d04160cbc4418dd67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/zipinfo.md"],"file_stats":[{"name":"docs/parsers/zipinfo.md","lines_changed":2}]},"message":"doc update"},{"commit":"dbcd9a4060647be24bca2a8d577f11925a9ac210","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":2}]},"message":"bump version to 1.0"},{"commit":"4bdeb2b3aa063c2772f5c44e52acbe16e915cc3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/xrandr.py"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":2}]},"message":"simplify warning message"},{"commit":"6ae1d03187c6d4b669f6f74db1be7c9cf07adaed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py"],"file_stats":[{"name":"docs/parsers/nmcli.md","lines_changed":2},{"name":"jc/parsers/nmcli.py","lines_changed":2}]},"message":"doc fix"},{"commit":"f75b06abe4af152be094f8bc1ba5ce66b25e35e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":180,"deletions":3,"files":["README.md","docs/parsers/nmcli.md","jc/parsers/nmcli.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/nmcli.md","lines_changed":172},{"name":"jc/parsers/nmcli.py","lines_changed":3},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update"},{"commit":"1923925710dadc4116202855ae884ef18394d428","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"update changelog"},{"commit":"2c5c57ae04df3b7abfb1c3423c3350c7c2ab5dcd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/lib.py","setup.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"f4d11d697e000135720a971edf84dcad31a1bec8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":155,"deletions":15,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":170}]},"message":"finish use cases and doc"},{"commit":"7f409b7082aa9525cc9280e3c5c92bc82089cf14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"enhance ParseError cli message"},{"commit":"937fa5aad2519f588c6d0feb8f08211f6b99872f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":0,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":20}]},"message":"split dhcp options"},{"commit":"19dcef513565c34a31f6d735577da5e25f9bd2cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":69,"deletions":2,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":71}]},"message":"firm up flow. add/remove text. parse routes"},{"commit":"3d01356461eb2790f859968da7f5cb4fd2ee9898","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":3,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":30}]},"message":"add text_kv function"},{"commit":"2d6f666fa4c791e7995f6b0c1490dac73ce224c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":61,"deletions":16,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":77}]},"message":"add dev show and conn show parsers"},{"commit":"4dda895f122ecc19b267ed1485cf656bae76ff07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":404,"deletions":0,"files":["jc/lib.py","jc/parsers/nmcli.py","tests/fixtures/centos-7.7/nmcli-connection-all.out",".../centos-7.7/nmcli-connection-show-ens33.out","tests/fixtures/centos-7.7/nmcli-connection.out","tests/fixtures/centos-7.7/nmcli-device-all.out",".../centos-7.7/nmcli-device-show-ens33.out","tests/fixtures/centos-7.7/nmcli-device-show-lo.out","tests/fixtures/centos-7.7/nmcli-device-show.out","tests/fixtures/centos-7.7/nmcli-device.out","tests/fixtures/centos-7.7/nmcli-general-all.out",".../centos-7.7/nmcli-general-permissions.out","tests/fixtures/centos-7.7/nmcli.out"],"file_stats":[{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/nmcli.py","lines_changed":130},{"name":"tests/fixtures/centos-7.7/nmcli-connection-all.out","lines_changed":3},{"name":".../centos-7.7/nmcli-connection-show-ens33.out","lines_changed":136},{"name":"tests/fixtures/centos-7.7/nmcli-connection.out","lines_changed":3},{"name":"tests/fixtures/centos-7.7/nmcli-device-all.out","lines_changed":5},{"name":".../centos-7.7/nmcli-device-show-ens33.out","lines_changed":18},{"name":"tests/fixtures/centos-7.7/nmcli-device-show-lo.out","lines_changed":12},{"name":"tests/fixtures/centos-7.7/nmcli-device-show.out","lines_changed":42},{"name":"tests/fixtures/centos-7.7/nmcli-device.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/nmcli-general-all.out","lines_changed":3},{"name":".../centos-7.7/nmcli-general-permissions.out","lines_changed":18},{"name":"tests/fixtures/centos-7.7/nmcli.out","lines_changed":29}]},"message":"initial nmcli parser"},{"commit":"52617b1722ba2f089716b069f78f70a865430d61","merge":"3afaa48 961968a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #208 from kellyjonbrazil/master"},{"commit":"961968a0fcaf37b64bc850c4945ba4b805a1fe54","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":26,"deletions":23,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":24},{"name":"jc/parsers/xrandr.py","lines_changed":25}]},"message":"fix schema"},{"commit":"f026a788e5ca1231927e71fdbb1dadb2365a6518","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":62,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":62}]},"message":"add xrandr example"},{"commit":"2f7c03eb35520be916c28a687031f8c6425839ba","merge":"681176e 3afaa48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #207 from kellyjonbrazil/dev"},{"commit":"3afaa48eee081e28262d1762c5ec23d318012822","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":15,"insertions":15,"deletions":15,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"docs/parsers/stat_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/rsync_s.py","lines_changed":2},{"name":"jc/parsers/stat_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]},"message":"doc update"},{"commit":"3201452564fb0fb44ef9cc32217339370bd2521e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":2},{"name":"jc/parsers/xrandr.py","lines_changed":2}]},"message":"add -p to example"},{"commit":"7ee1e34fc71c0dbc08ba482b787d560fd5125f64","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":116,"deletions":4,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":60},{"name":"jc/parsers/xrandr.py","lines_changed":60}]},"message":"doc update"},{"commit":"67dbf050161201f5016899591e81ab6253ac2322","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":2},{"name":"jc/parsers/xrandr.py","lines_changed":2}]},"message":"add type annotations"},{"commit":"4ac9f2e3dad4e7bd270bf5a8e61b729838b2c89c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":10,"deletions":17,"files":["CHANGELOG","docs/parsers/rsync.md","docs/parsers/rsync_s.md","jc/parsers/rsync.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docs/parsers/rsync.md","lines_changed":6},{"name":"docs/parsers/rsync_s.md","lines_changed":6},{"name":"jc/parsers/rsync.py","lines_changed":6},{"name":"jc/parsers/rsync_s.py","lines_changed":6}]},"message":"doc update"},{"commit":"3f5f6e39a777ef524cb3a06a01321bb8c31d930d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":100,"deletions":98,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":99},{"name":"jc/parsers/xrandr.py","lines_changed":99}]},"message":"formatting"},{"commit":"4723db8e3cc4946b14c83b25d6e8c6d2309aa72e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":195,"deletions":77,"files":["README.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/xrandr.md","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/xrandr.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/rsync.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"docs/parsers/xrandr.md","lines_changed":109},{"name":"jc/parsers/rsync.py","lines_changed":2},{"name":"jc/parsers/rsync_s.py","lines_changed":2},{"name":"jc/parsers/xrandr.py","lines_changed":147},{"name":"man/jc.1","lines_changed":7}]},"message":"doc updates"},{"commit":"ca914ec77d1fc77e42860189e62ac2fb203d4931","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":2,"files":["tests/test_xrandr.py"],"file_stats":[{"name":"tests/test_xrandr.py","lines_changed":13}]},"message":"add nodata test"},{"commit":"dcc7f3f357ef016b4583fc1320fd2394788f271f","merge":"184ef3a cbdc666","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #204 from lyterk/xrandr"},{"commit":"cbdc66623671da335eafe132b7af79f884856f1d","author":"Kevin Lyter","author_email":"lyterk@sent.com","stats":{"files_changed":3,"insertions":2,"deletions":30,"files":["jc/parsers/xrandr.py",".../{simple_xrandr.json => xrandr_simple.json}",".../{simple_xrandr.out => xrandr_simple.out}"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":32},{"name":".../{simple_xrandr.json => xrandr_simple.json}","lines_changed":0},{"name":".../{simple_xrandr.out => xrandr_simple.out}","lines_changed":0}]},"message":"Return empty object if no results and filenames"},{"commit":"184ef3a1faeb406ce62076cff637ee86d61541fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":11,"deletions":3,"files":["docs/parsers/rsync.md","docs/parsers/rsync_s.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/rsync.md","lines_changed":6},{"name":"docs/parsers/rsync_s.md","lines_changed":6},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"c732f759445e335fe36586859b6fde7e27bb8901","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":10,"deletions":2,"files":["jc/parsers/rsync.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":6},{"name":"jc/parsers/rsync_s.py","lines_changed":6}]},"message":"doc update"},{"commit":"7a1ae4f5fc5328c32bf77235cfbd9f83ec995053","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":105,"deletions":0,"files":["tests/{test_lib.py => test_jc_lib.py}","tests/test_jc_streaming.py","tests/{test_utils.py => test_jc_utils.py}"],"file_stats":[{"name":"tests/{test_lib.py => test_jc_lib.py}","lines_changed":0},{"name":"tests/test_jc_streaming.py","lines_changed":61},{"name":"tests/{test_utils.py => test_jc_utils.py}","lines_changed":44}]},"message":"add library tests"},{"commit":"d04bc3757c482ec9062b2da91ded76c5dd6d106b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add xrandr"},{"commit":"73e8391653145412cd852aca349466018c8b9084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":3,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":11}]},"message":"formatting"},{"commit":"f6c1463c1578db264ccb3d4c2677857ed906e965","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":44,"deletions":24,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":68}]},"message":"formatting"},{"commit":"d392c7f901a9d7c57617fbd03bd3f88ee0bf4132","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":20,"deletions":13,"files":["docs/parsers/date.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/ls.md","docs/parsers/rpm_qi.md","docs/parsers/stat.md","docs/parsers/systeminfo.md","docs/parsers/timedatectl.md","docs/parsers/upower.md","docs/parsers/vmstat.md","docs/parsers/who.md","docs/utils.md"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":11}]},"message":"doc update"},{"commit":"d0387f58205b2fd9b9860ce9656bb29ceec54340","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":16,"insertions":34,"deletions":29,"files":["jc/parsers/date.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/systeminfo.py","jc/parsers/timedatectl.py","jc/parsers/upower.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":4},{"name":"jc/parsers/dir.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/rpm_qi.py","lines_changed":6},{"name":"jc/parsers/rsync.py","lines_changed":2},{"name":"jc/parsers/rsync_s.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"jc/parsers/stat_s.py","lines_changed":2},{"name":"jc/parsers/systeminfo.py","lines_changed":8},{"name":"jc/parsers/timedatectl.py","lines_changed":4},{"name":"jc/parsers/upower.py","lines_changed":5},{"name":"jc/parsers/vmstat.py","lines_changed":5},{"name":"jc/parsers/vmstat_s.py","lines_changed":3},{"name":"jc/parsers/who.py","lines_changed":4}]},"message":"add timestamp format hints for better performance"},{"commit":"76f92908a3ba9cbadcc8e972afa8b1c4a69509bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":44,"deletions":9,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":53}]},"message":"add format hints for performance optimization"},{"commit":"1a115da67bdce9acfefbfb71fbac37e234b1babd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"add lru_cache maxsize for python 3.7 support"},{"commit":"f0a37ccf301eee5133a83b5dd96986fef0c38e7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":11}]},"message":"use lru_cache for significant performance boost to timestamp"},{"commit":"f331f53a531169520a4d8ea15d277560a49aedb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["CHANGELOG","jc/utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/utils.py","lines_changed":2}]},"message":"use !r formatting instead of quotes"},{"commit":"8611aff06b18212b7292d564beb27a2062fc3f41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/parsers/rsync_s.md","jc/parsers/rsync_s.py"],"file_stats":[{"name":"docs/parsers/rsync_s.md","lines_changed":8},{"name":"jc/parsers/rsync_s.py","lines_changed":8}]},"message":"add examples"},{"commit":"2f3f78e8d35a0ccccde0f84417400acdfe7fe0aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":16,"insertions":194,"deletions":185,"files":["docgen.sh","docs/parsers/rsync_s.md","docs/readme.md","docs/streaming.md","docs/utils.md","jc/__init__.py","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/streaming.py","man/jc.1"],"file_stats":[{"name":"docgen.sh","lines_changed":3},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"docs/readme.md","lines_changed":2},{"name":"docs/streaming.md","lines_changed":114},{"name":"docs/utils.md","lines_changed":93},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":10},{"name":"jc/parsers/foo_s.py","lines_changed":14},{"name":"jc/parsers/iostat_s.py","lines_changed":15},{"name":"jc/parsers/ls_s.py","lines_changed":14},{"name":"jc/parsers/ping_s.py","lines_changed":4},{"name":"jc/parsers/rsync_s.py","lines_changed":25},{"name":"jc/parsers/stat_s.py","lines_changed":22},{"name":"jc/parsers/vmstat_s.py","lines_changed":16},{"name":"jc/streaming.py","lines_changed":41},{"name":"man/jc.1","lines_changed":2}]},"message":"refine streaming parsers"},{"commit":"d1e0ee6123dfecd48d074cb7a40e98a15b6adcb9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":8,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":14}]},"message":"use new streaming functions"},{"commit":"45314c98083067f1f6fae9c477c99fabec223f29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":112,"deletions":102,"files":["jc/streaming.py","jc/utils.py"],"file_stats":[{"name":"jc/streaming.py","lines_changed":111},{"name":"jc/utils.py","lines_changed":103}]},"message":"move some functions to streaming"},{"commit":"df00945b46e27e10107f48d186eedf80b55bd40e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":59,"deletions":49,"files":["jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":15},{"name":"jc/parsers/iostat_s.py","lines_changed":15},{"name":"jc/parsers/ls_s.py","lines_changed":17},{"name":"jc/parsers/ping_s.py","lines_changed":19},{"name":"jc/parsers/rsync_s.py","lines_changed":21},{"name":"jc/parsers/stat_s.py","lines_changed":21}]},"message":"move try/except inside for loop"},{"commit":"fda0050d867bcbe4f1d7e024b08e9881d0f57735","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":191,"deletions":0,"files":[".../centos-7.7/rsync-i-logfile-streaming.json","tests/fixtures/centos-7.7/rsync-i-streaming.json",".../centos-7.7/rsync-i-v-logfile-streaming.json",".../centos-7.7/rsync-i-vv-logfile-streaming.json",".../rsync-i-vvv-logfile-nochange-streaming.json",".../centos-7.7/rsync-i-vvv-logfile-streaming.json",".../centos-7.7/rsync-ivvv-nochange-streaming.json",".../fixtures/centos-7.7/rsync-ivvv-streaming.json","tests/fixtures/generic/rsync-i-streaming.json",".../rsync-i-vvv-logfile-nochange-streaming.json",".../rsync-i-vvv-nochange-streaming.json",".../osx-10.14.6/rsync-i-vvv-streaming.json","tests/test_rsync_s.py"],"file_stats":[{"name":".../centos-7.7/rsync-i-logfile-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-streaming.json","lines_changed":1},{"name":".../centos-7.7/rsync-i-v-logfile-streaming.json","lines_changed":1},{"name":".../centos-7.7/rsync-i-vv-logfile-streaming.json","lines_changed":1},{"name":".../rsync-i-vvv-logfile-nochange-streaming.json","lines_changed":1},{"name":".../centos-7.7/rsync-i-vvv-logfile-streaming.json","lines_changed":1},{"name":".../centos-7.7/rsync-ivvv-nochange-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/rsync-ivvv-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/rsync-i-streaming.json","lines_changed":1},{"name":".../rsync-i-vvv-logfile-nochange-streaming.json","lines_changed":1},{"name":".../rsync-i-vvv-nochange-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/rsync-i-vvv-streaming.json","lines_changed":1},{"name":"tests/test_rsync_s.py","lines_changed":179}]},"message":"add rsync-s tests"},{"commit":"a76d46f9ecb1eff4d6cc7ad633c97cec0e99001a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":19,"insertions":110,"deletions":109,"files":["CHANGELOG","docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","docs/utils.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/utils.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":5},{"name":"docs/parsers/iostat_s.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":5},{"name":"docs/parsers/ping_s.md","lines_changed":5},{"name":"docs/parsers/rsync_s.md","lines_changed":5},{"name":"docs/parsers/stat_s.md","lines_changed":5},{"name":"docs/parsers/vmstat_s.md","lines_changed":5},{"name":"docs/utils.md","lines_changed":15},{"name":"jc/parsers/csv_s.py","lines_changed":13},{"name":"jc/parsers/foo_s.py","lines_changed":11},{"name":"jc/parsers/iostat_s.py","lines_changed":23},{"name":"jc/parsers/ls_s.py","lines_changed":20},{"name":"jc/parsers/ping_s.py","lines_changed":22},{"name":"jc/parsers/rsync_s.py","lines_changed":11},{"name":"jc/parsers/stat_s.py","lines_changed":30},{"name":"jc/parsers/vmstat_s.py","lines_changed":11},{"name":"jc/utils.py","lines_changed":24},{"name":"man/jc.1","lines_changed":2}]},"message":"refactor ignore_exceptions"},{"commit":"6b069a82d0fa19c8d83b19b934bace556cb758d7","author":"Kevin Lyter","author_email":"lyterk@sent.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":1}]},"message":"Add xrandr to lib.py"},{"commit":"6b793d052147406f388c4d5dc04f506a3456f409","author":"Kevin Lyter","author_email":"lyterk@sent.com","stats":{"files_changed":1,"insertions":6,"deletions":11,"files":["jc/parsers/xrandr.py"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":17}]},"message":"Clean up types"},{"commit":"ce9103f7cc666895dc7840d32797d8c7274cf1b8","author":"Kevin Lyter","author_email":"lyterk@sent.com","stats":{"files_changed":2,"insertions":0,"deletions":287,"files":["templates/xrandr_sample.txt","templates/xrandr_sample_verbose.txt"],"file_stats":[{"name":"templates/xrandr_sample.txt","lines_changed":38},{"name":"templates/xrandr_sample_verbose.txt","lines_changed":249}]},"message":"Delete old files in template folder"},{"commit":"671d6dee36a37317257e09a080849205d301bceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":83,"deletions":15,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","docs/utils.md"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":8},{"name":"docs/parsers/iostat_s.md","lines_changed":8},{"name":"docs/parsers/ls_s.md","lines_changed":8},{"name":"docs/parsers/ping_s.md","lines_changed":8},{"name":"docs/parsers/rsync_s.md","lines_changed":10},{"name":"docs/parsers/stat_s.md","lines_changed":8},{"name":"docs/parsers/vmstat_s.md","lines_changed":8},{"name":"docs/utils.md","lines_changed":40}]},"message":"doc update"},{"commit":"49929c714c2d71a310b1dd95138dbd02f8704138","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":139,"deletions":52,"files":["jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":14},{"name":"jc/parsers/foo_s.py","lines_changed":16},{"name":"jc/parsers/iostat_s.py","lines_changed":15},{"name":"jc/parsers/ls_s.py","lines_changed":14},{"name":"jc/parsers/ping_s.py","lines_changed":14},{"name":"jc/parsers/rsync_s.py","lines_changed":30},{"name":"jc/parsers/stat_s.py","lines_changed":21},{"name":"jc/parsers/vmstat_s.py","lines_changed":14},{"name":"jc/utils.py","lines_changed":53}]},"message":"add add_jc_meta decorator"},{"commit":"2986771f07de87bfee44dd3bbb4f285e249aad76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"require python v3.7 and above since v3.6 is now deprecated"},{"commit":"520082d963b93d2bafeff921da3899686b22cadf","author":"Kevin Lyter","author_email":"lyterk@sent.com","stats":{"files_changed":9,"insertions":968,"deletions":0,"files":["jc/parsers/xrandr.py","templates/xrandr_sample.txt","templates/xrandr_sample_verbose.txt","tests/fixtures/generic/simple_xrandr.json","tests/fixtures/generic/simple_xrandr.out","tests/fixtures/generic/xrandr.out","tests/fixtures/generic/xrandr_2.out","tests/fixtures/generic/xrandr_device.out","tests/test_xrandr.py"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":353},{"name":"templates/xrandr_sample.txt","lines_changed":38},{"name":"templates/xrandr_sample_verbose.txt","lines_changed":249},{"name":"tests/fixtures/generic/simple_xrandr.json","lines_changed":56},{"name":"tests/fixtures/generic/simple_xrandr.out","lines_changed":4},{"name":"tests/fixtures/generic/xrandr.out","lines_changed":38},{"name":"tests/fixtures/generic/xrandr_2.out","lines_changed":43},{"name":"tests/fixtures/generic/xrandr_device.out","lines_changed":15},{"name":"tests/test_xrandr.py","lines_changed":172}]},"message":"New parser: xrandr"},{"commit":"021e296d457140c32b5256c2b0acf66efc458896","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":104,"deletions":100,"files":["jc/parsers/rsync_s.py"],"file_stats":[{"name":"jc/parsers/rsync_s.py","lines_changed":204}]},"message":"move variable inits and regexes up"},{"commit":"42e56fbcea6db64ea7f7045e7755af492c95aec2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":12,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":23}]},"message":"move regex up"},{"commit":"a5b62a4055df37b84751a7cdc14eb6f1ed907cd9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":230,"deletions":18,"files":["docs/parsers/rsync_s.md","jc/parsers/rsync_s.py"],"file_stats":[{"name":"docs/parsers/rsync_s.md","lines_changed":124},{"name":"jc/parsers/rsync_s.py","lines_changed":124}]},"message":"add processing and docs"},{"commit":"be98c9b7f6c67e23ea101223934d67bba512e645","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":11}]},"message":"simplify try/except by moving outside for loop"},{"commit":"aceeb8450796ae748a4d4abf75643f309d0a42e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":12,"deletions":1,"files":["CHANGELOG","README.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":5},{"name":"README.md","lines_changed":1},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update"},{"commit":"13910632173e7c815ff1161cf52fd1d17153c4a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":367,"deletions":0,"files":["jc/lib.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/rsync_s.py","lines_changed":366}]},"message":"first draft rsync streaming parser"},{"commit":"52157addd0d6dff3bdb34f179ec14b07c8c27ccc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":2}]},"message":"fix compatible list"},{"commit":"ec0bc6615e22fdc536623e290d88b9725cb6a0ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":2},{"name":"jc/utils.py","lines_changed":2}]},"message":"formatting"},{"commit":"2f80800e38256b363a4122195ec4aaffebe67d87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"simplify all_parser_info comprehension"},{"commit":"3959d3347c8d3e838f8c3158c4db74e2fa2eb856","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["docs/lib.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":4}]},"message":"doc update"},{"commit":"b57d25c69a193d3866ea86a3a34edd67049b198d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":12}]},"message":"clean up return type for parser_info"},{"commit":"63e43a7cabb51c624c962cdcc92a1199f18c77e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":188,"deletions":21,"files":["README.md","docs/lib.md","docs/parsers/rsync.md","docs/parsers/universal.md","docs/parsers/zipinfo.md","docs/utils.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"docs/lib.md","lines_changed":4},{"name":"docs/parsers/rsync.md","lines_changed":163},{"name":"docs/parsers/universal.md","lines_changed":2},{"name":"docs/parsers/zipinfo.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":28},{"name":"man/jc.1","lines_changed":7}]},"message":"doc updates"},{"commit":"21719f9a26c25d896b0a5d49c9d7814175835e16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":18,"deletions":20,"files":["jc/lib.py","jc/utils.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":36}]},"message":"type annotation updates"},{"commit":"96ec70de4f6178b0669fd9ab47cb303dc45e55c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["jc/parsers/universal.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":6},{"name":"jc/utils.py","lines_changed":4}]},"message":"remove unneeded optional"},{"commit":"a15a1967dc06169ceeda0fd5b4857ce1a351f3d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"fix typo"},{"commit":"a10d7566294fe5246e68a16e355ce56dd3557ac5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":8}]},"message":"fixy mypy issues"},{"commit":"0700dc7a64b121cf0243416e2cbb82fcef15f5a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":2}]},"message":"remove cygwin from compatible"},{"commit":"ca654b214057e19839b89e0d9a66f1110f679c1e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"fix parser order"},{"commit":"4ff3b87c1c96d720f4e7fd39e613944e322cb388","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":1}]},"message":"remove future field from docstring"},{"commit":"ea244fb7a91f1d1f8ffe0ea6dc10dfe5ab836878","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_rsync.py"],"file_stats":[{"name":"tests/test_rsync.py","lines_changed":2}]},"message":"formatting"},{"commit":"8061f30e6fa58d22ed1a52e02c4d9c7f0bf132cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":236,"deletions":6,"files":["tests/fixtures/centos-7.7/rsync-ivvv-nochange.json","tests/fixtures/centos-7.7/rsync-ivvv-nochange.out","tests/test_rsync.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/rsync-ivvv-nochange.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-ivvv-nochange.out","lines_changed":224},{"name":"tests/test_rsync.py","lines_changed":17}]},"message":"add centos -i nochange test"},{"commit":"8f3b12e81e1b4f0d4394c33db5b3a352f4cfb391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":299,"deletions":0,"files":["jc/parsers/rsync.py",".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.json",".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.out","tests/fixtures/osx-10.14.6/rsync-i-vvv.json","tests/fixtures/osx-10.14.6/rsync-i-vvv.out","tests/test_rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":22},{"name":".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.out","lines_changed":88},{"name":"tests/fixtures/osx-10.14.6/rsync-i-vvv.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/rsync-i-vvv.out","lines_changed":156},{"name":"tests/test_rsync.py","lines_changed":31}]},"message":"add fixes for mac -i output"},{"commit":"d0694ce0db5ea2d06b5787429adf23095c4c2df0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":245,"deletions":6,"files":[".../osx-10.14.6/rsync-i-vvv-logfile-nochange.json",".../osx-10.14.6/rsync-i-vvv-logfile-nochange.out","tests/test_rsync.py"],"file_stats":[{"name":".../osx-10.14.6/rsync-i-vvv-logfile-nochange.json","lines_changed":1},{"name":".../osx-10.14.6/rsync-i-vvv-logfile-nochange.out","lines_changed":233},{"name":"tests/test_rsync.py","lines_changed":17}]},"message":"add nochange log test for mac"},{"commit":"0cd4c4bc7f3ffe13cb2f1920187e25636b88af61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":658,"deletions":0,"files":[".../centos-7.7/rsync-i-vvv-logfile-nochange.json",".../centos-7.7/rsync-i-vvv-logfile-nochange.out"],"file_stats":[{"name":".../centos-7.7/rsync-i-vvv-logfile-nochange.json","lines_changed":1},{"name":".../centos-7.7/rsync-i-vvv-logfile-nochange.out","lines_changed":657}]},"message":"add nochange tests"},{"commit":"12f90c349c903634def4225ce87924b475be46d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":68,"deletions":20,"files":["jc/parsers/rsync.py","tests/test_rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":68},{"name":"tests/test_rsync.py","lines_changed":20}]},"message":"update regexes for unchanged files"},{"commit":"26b8a1f167c4b1ec3f9fb4077254a27ed8548933","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":2}]},"message":"remove packages from binaries and packages header"},{"commit":"3abe382c064f605d915912f9b726d76784eba8a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":90,"deletions":3,"files":["EXAMPLES.md","jc/parsers/rsync.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":33},{"name":"jc/parsers/rsync.py","lines_changed":60}]},"message":"add examples"},{"commit":"1e2edc2c7b5dc104a9efe4da7df9be61b9e1be32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":53,"deletions":29,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-logfile.json","tests/fixtures/centos-7.7/rsync-i-v-logfile.json","tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":74},{"name":"tests/fixtures/centos-7.7/rsync-i-logfile.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rsync-i-v-logfile.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json","lines_changed":2}]},"message":"add timestamp"},{"commit":"5fe032a6741b7b6586c60eb28be74bd0e56277a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":2}]},"message":"fix typo"},{"commit":"e825c02df1cdae67c7f335fe3c675685eb1a8d02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":605,"deletions":0,"files":["tests/fixtures/centos-7.7/rsync-i-logfile.json","tests/fixtures/centos-7.7/rsync-i-v-logfile.json","tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out","tests/fixtures/centos-7.7/rsync-i.json","tests/fixtures/centos-7.7/rsync-i.out","tests/fixtures/centos-7.7/rsync-ivvv.json","tests/fixtures/generic/rsync-i.json","tests/fixtures/generic/rsync-i.out","tests/test_rsync.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/rsync-i-logfile.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-v-logfile.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out","lines_changed":434},{"name":"tests/fixtures/centos-7.7/rsync-i.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i.out","lines_changed":28},{"name":"tests/fixtures/centos-7.7/rsync-ivvv.json","lines_changed":1},{"name":"tests/fixtures/generic/rsync-i.json","lines_changed":1},{"name":"tests/fixtures/generic/rsync-i.out","lines_changed":11},{"name":"tests/test_rsync.py","lines_changed":125}]},"message":"add rsync tests"},{"commit":"a4a4d170b5ae8c189de982adea5bdc9bf1f26e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":5,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":15}]},"message":"update docstring"},{"commit":"d0fcd523cb2cbb59d0f90369721749b54222961d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":17,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":36}]},"message":"fix process conversions"},{"commit":"f72b7dc75dbd1c3f5daee3ecee28487258a04873","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":8,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":12}]},"message":"change keyname to files and remove future key"},{"commit":"4101dc6bf7bab7d00899426e2f6271a7480d558f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":1008,"deletions":19,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-v-logfile.out","tests/fixtures/centos-7.7/rsync-i-vv-logfile.out","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":60},{"name":"tests/fixtures/centos-7.7/rsync-i-v-logfile.out","lines_changed":61},{"name":"tests/fixtures/centos-7.7/rsync-i-vv-logfile.out","lines_changed":65},{"name":"tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out","lines_changed":841}]},"message":"add log-file support"},{"commit":"ea5011b616365b5c10c04416d43035d84e3dacba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":175,"deletions":41,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-logfile.out"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":157},{"name":"tests/fixtures/centos-7.7/rsync-i-logfile.out","lines_changed":59}]},"message":"updated schema. add log-file option support"},{"commit":"d6de81747fd92642dbd5cb1fb097e375aa38be35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":3,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":14}]},"message":"add int/float conversions"},{"commit":"38f04b1c9699246d85332b20df5b6a91ae0c48d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":32,"deletions":7,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":39}]},"message":"add summary"},{"commit":"84169e1a913d035744f71472be81fe3a7d774b97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":637,"deletions":2,"files":["jc/lib.py","jc/parsers/rsync.py","setup.py","tests/fixtures/centos-7.7/rsync-ivvv.out"],"file_stats":[{"name":"jc/lib.py","lines_changed":3},{"name":"jc/parsers/rsync.py","lines_changed":212},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rsync-ivvv.out","lines_changed":422}]},"message":"add rsync parser"},{"commit":"1f96586a5e883709f436526de6dcb21ff44bf97b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/foo.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":2}]},"message":"reorder imports"},{"commit":"681176e4c958157ef1f2151b3e57963a6ba48e09","merge":"b389665 8bb2663","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #203 from kellyjonbrazil/dev"},{"commit":"8bb266352207f95040b72750e5b3ae3b8ceb2b98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"date update"},{"commit":"663abf313931b49fad64b425ece6a5a257dc7938","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":3,"deletions":4,"files":["MANIFEST.in","mangen.py","runtests.sh","updatedocs.sh"],"file_stats":[{"name":"MANIFEST.in","lines_changed":1},{"name":"mangen.py","lines_changed":3},{"name":"runtests.sh","lines_changed":1},{"name":"updatedocs.sh","lines_changed":2}]},"message":"clean up scripts"},{"commit":"f7ac41db95c16fd21d83fbce678c5dec28ab40f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":13,"files":["README.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"man/jc.1","lines_changed":12}]},"message":"final doc update"},{"commit":"5502cda9e591b531d6b452b02d8ec322c3287800","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["tests/test_lib.py"],"file_stats":[{"name":"tests/test_lib.py","lines_changed":3}]},"message":"add additional test for dict inside list for all_parser_info()"},{"commit":"a2b165565f54d91489bf38577a0785e78a4523d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["tests/test_lib.py"],"file_stats":[{"name":"tests/test_lib.py","lines_changed":21}]},"message":"add lib tests for new functions"},{"commit":"b426369815984bd2aae8bcb14e306ba73b8cd4ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":12}]},"message":"use all_parser_info() from lib in about function"},{"commit":"ac0840cc0afb4aeee2c99076710c987e09cfa5f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"fix typo"},{"commit":"ee98ab0a4a7671ae34ee79f7b0b97c061a8c2944","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/lib.md","docs/utils.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":6},{"name":"docs/utils.md","lines_changed":4}]},"message":"doc update"},{"commit":"2adec2c0035b84ca0242f2494b6c2651b9898ca5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":21,"deletions":19,"files":["jc/lib.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/utils.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":18},{"name":"jc/parsers/foo.py","lines_changed":8},{"name":"jc/parsers/foo_s.py","lines_changed":10},{"name":"jc/utils.py","lines_changed":4}]},"message":"update type hints with mypy help"},{"commit":"f19c9c71bf4f592f55a5176458acd478b462fdbe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":4,"files":["jc/parsers/foo.py","jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":9},{"name":"jc/parsers/foo_s.py","lines_changed":10}]},"message":"add type hints"},{"commit":"e93adf1884c0006a64123513070a5fd96a940da2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":5},{"name":"jc/__init__.py","lines_changed":5}]},"message":"fix doc"},{"commit":"254c4fc507842ca72064c0196418a7b939d54d06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":6,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":13},{"name":"jc/__init__.py","lines_changed":13}]},"message":"add new functions"},{"commit":"74d5f60d14fc42cfd5768c7ffd6efc890a65d442","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"update console interview description"},{"commit":"db7dc0634bc17b4daadc8bc21bba5975c093efe5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":2},{"name":"jc/lib.py","lines_changed":2}]},"message":"make **kwargs optional"},{"commit":"e156b0db453e99fb0f74b618fd343218f978ff68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":4},{"name":"jc/parsers/universal.py","lines_changed":5}]},"message":"add type hints"},{"commit":"50adc05fbd6a0dcd9e4fb38aa41917bb57332f36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":6},{"name":"jc/utils.py","lines_changed":6}]},"message":"formatting"},{"commit":"446cac7c217103eb66cfdee97e3a208b7144b644","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":11,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":11},{"name":"jc/utils.py","lines_changed":15}]},"message":"doc update"},{"commit":"28ffe3076bb5f23aeaf2624344856dbd02b4c0e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":9,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":8},{"name":"jc/lib.py","lines_changed":9}]},"message":"formatting"},{"commit":"d4d5e206cae14acd25445952f820810818b3fdce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":40,"deletions":28,"files":["docs/lib.md","docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":15},{"name":"docs/utils.md","lines_changed":26},{"name":"jc/utils.py","lines_changed":27}]},"message":"type hints update"},{"commit":"42fbe40a4ae02b9d09acdbf9b22573844959d2ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":11}]},"message":"simplify type hints"},{"commit":"27e4a120e21dcbb3eadc6c4cf224ddb33859328d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":2},{"name":"jc/lib.py","lines_changed":2}]},"message":"remove trailing comma"},{"commit":"b5d5b7c73a96d4335b178ccfac60af90913e6f0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":29,"deletions":148,"files":["docgen.sh","docs/parsers/ifconfig.md","docs/parsers/traceroute.md"],"file_stats":[{"name":"docgen.sh","lines_changed":35},{"name":"docs/parsers/ifconfig.md","lines_changed":94},{"name":"docs/parsers/traceroute.md","lines_changed":48}]},"message":"remove private classes"},{"commit":"e7471556ba5fb0586ac5b0d7404cabd98a58db2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":5,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":5}]},"message":"remove sed lines"},{"commit":"640a21341bb1c562cb2124155b511dfc74277fc0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":47,"deletions":42,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":20},{"name":"jc/utils.py","lines_changed":69}]},"message":"fix indentation"},{"commit":"f5befad3e41ba2864abc795a2fdf63e0f1d37c21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":33,"deletions":25,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":21},{"name":"jc/utils.py","lines_changed":37}]},"message":"move docstring under __init__"},{"commit":"f8223023c31093c1a34130b4e4cfc23b1d80a30c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":24,"deletions":10,"files":["docgen.sh","docs/parsers/ifconfig.md","docs/parsers/traceroute.md","docs/utils.md"],"file_stats":[{"name":"docgen.sh","lines_changed":28},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":2}]},"message":"change header depth"},{"commit":"7028e87f9b411c0cfb92eee7fc0667cdcb9a54ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":87,"insertions":22,"deletions":445,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md"],"file_stats":[{"name":"docgen.sh","lines_changed":26},{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/csv_s.md","lines_changed":5},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":14},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iostat.md","lines_changed":5},{"name":"docs/parsers/iostat_s.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jar_manifest.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/ping_s.md","lines_changed":5},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/sfdisk.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/stat_s.md","lines_changed":5},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/systeminfo.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":8},{"name":"docs/parsers/ufw.md","lines_changed":5},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/vmstat.md","lines_changed":5},{"name":"docs/parsers/vmstat_s.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5},{"name":"docs/parsers/zipinfo.md","lines_changed":5},{"name":"docs/readme.md","lines_changed":4}]},"message":"remove TOC for parsers"},{"commit":"590728f9c1ccfdc078e600d1f35ad4ba51f70d36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":91,"insertions":506,"deletions":17,"files":["docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/utils.md","jc/lib.py"],"file_stats":[{"name":"docgen.sh","lines_changed":28},{"name":"docs/lib.md","lines_changed":13},{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/csv_s.md","lines_changed":5},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":14},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iostat.md","lines_changed":5},{"name":"docs/parsers/iostat_s.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jar_manifest.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/ping_s.md","lines_changed":5},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/sfdisk.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/stat_s.md","lines_changed":5},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/systeminfo.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":8},{"name":"docs/parsers/ufw.md","lines_changed":5},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/universal.md","lines_changed":6},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/vmstat.md","lines_changed":5},{"name":"docs/parsers/vmstat_s.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5},{"name":"docs/parsers/zipinfo.md","lines_changed":5},{"name":"docs/readme.md","lines_changed":4},{"name":"docs/utils.md","lines_changed":17},{"name":"jc/lib.py","lines_changed":18}]},"message":"try new pydoc-markdown formatting options"},{"commit":"7cc147fe2d7b278bcab905bc4c3b70b5265e1510","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":44,"files":["docgen.sh","docgen.sh.old"],"file_stats":[{"name":"docgen.sh","lines_changed":4},{"name":"docgen.sh.old","lines_changed":44}]},"message":"increase heading size"},{"commit":"3cfb3965bb25024a7b03870b71f02194e278919b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":19,"deletions":19,"files":["docs/lib.md","docs/parsers/universal.md","docs/utils.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":10},{"name":"docs/parsers/universal.md","lines_changed":4},{"name":"docs/utils.md","lines_changed":24}]},"message":"formatting"},{"commit":"155d4213225fe4fcf4a059fb63c1ab9fc493177e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":86,"insertions":182,"deletions":181,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"],"file_stats":[{"name":"docgen.sh","lines_changed":3},{"name":"docs/parsers/acpi.md","lines_changed":4},{"name":"docs/parsers/airport.md","lines_changed":4},{"name":"docs/parsers/airport_s.md","lines_changed":4},{"name":"docs/parsers/arp.md","lines_changed":4},{"name":"docs/parsers/blkid.md","lines_changed":4},{"name":"docs/parsers/cksum.md","lines_changed":4},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"docs/parsers/crontab_u.md","lines_changed":4},{"name":"docs/parsers/csv.md","lines_changed":4},{"name":"docs/parsers/csv_s.md","lines_changed":4},{"name":"docs/parsers/date.md","lines_changed":4},{"name":"docs/parsers/df.md","lines_changed":4},{"name":"docs/parsers/dig.md","lines_changed":4},{"name":"docs/parsers/dir.md","lines_changed":4},{"name":"docs/parsers/dmidecode.md","lines_changed":4},{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"docs/parsers/du.md","lines_changed":4},{"name":"docs/parsers/env.md","lines_changed":4},{"name":"docs/parsers/file.md","lines_changed":4},{"name":"docs/parsers/finger.md","lines_changed":4},{"name":"docs/parsers/free.md","lines_changed":4},{"name":"docs/parsers/fstab.md","lines_changed":4},{"name":"docs/parsers/group.md","lines_changed":4},{"name":"docs/parsers/gshadow.md","lines_changed":4},{"name":"docs/parsers/hash.md","lines_changed":4},{"name":"docs/parsers/hashsum.md","lines_changed":4},{"name":"docs/parsers/hciconfig.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":4},{"name":"docs/parsers/hosts.md","lines_changed":4},{"name":"docs/parsers/id.md","lines_changed":4},{"name":"docs/parsers/ifconfig.md","lines_changed":20},{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"docs/parsers/iostat.md","lines_changed":4},{"name":"docs/parsers/iostat_s.md","lines_changed":4},{"name":"docs/parsers/iptables.md","lines_changed":4},{"name":"docs/parsers/iw_scan.md","lines_changed":4},{"name":"docs/parsers/jar_manifest.md","lines_changed":4},{"name":"docs/parsers/jobs.md","lines_changed":4},{"name":"docs/parsers/kv.md","lines_changed":4},{"name":"docs/parsers/last.md","lines_changed":4},{"name":"docs/parsers/ls.md","lines_changed":4},{"name":"docs/parsers/ls_s.md","lines_changed":4},{"name":"docs/parsers/lsblk.md","lines_changed":4},{"name":"docs/parsers/lsmod.md","lines_changed":4},{"name":"docs/parsers/lsof.md","lines_changed":4},{"name":"docs/parsers/lsusb.md","lines_changed":4},{"name":"docs/parsers/mount.md","lines_changed":4},{"name":"docs/parsers/netstat.md","lines_changed":4},{"name":"docs/parsers/ntpq.md","lines_changed":4},{"name":"docs/parsers/passwd.md","lines_changed":4},{"name":"docs/parsers/ping.md","lines_changed":4},{"name":"docs/parsers/ping_s.md","lines_changed":4},{"name":"docs/parsers/pip_list.md","lines_changed":4},{"name":"docs/parsers/pip_show.md","lines_changed":4},{"name":"docs/parsers/ps.md","lines_changed":4},{"name":"docs/parsers/route.md","lines_changed":4},{"name":"docs/parsers/rpm_qi.md","lines_changed":4},{"name":"docs/parsers/sfdisk.md","lines_changed":4},{"name":"docs/parsers/shadow.md","lines_changed":4},{"name":"docs/parsers/ss.md","lines_changed":4},{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"docs/parsers/stat_s.md","lines_changed":4},{"name":"docs/parsers/sysctl.md","lines_changed":4},{"name":"docs/parsers/systemctl.md","lines_changed":4},{"name":"docs/parsers/systemctl_lj.md","lines_changed":4},{"name":"docs/parsers/systemctl_ls.md","lines_changed":4},{"name":"docs/parsers/systemctl_luf.md","lines_changed":4},{"name":"docs/parsers/systeminfo.md","lines_changed":4},{"name":"docs/parsers/time.md","lines_changed":4},{"name":"docs/parsers/timedatectl.md","lines_changed":4},{"name":"docs/parsers/tracepath.md","lines_changed":4},{"name":"docs/parsers/traceroute.md","lines_changed":8},{"name":"docs/parsers/ufw.md","lines_changed":4},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":4},{"name":"docs/parsers/uname.md","lines_changed":4},{"name":"docs/parsers/upower.md","lines_changed":4},{"name":"docs/parsers/uptime.md","lines_changed":4},{"name":"docs/parsers/vmstat.md","lines_changed":4},{"name":"docs/parsers/vmstat_s.md","lines_changed":4},{"name":"docs/parsers/w.md","lines_changed":4},{"name":"docs/parsers/wc.md","lines_changed":4},{"name":"docs/parsers/who.md","lines_changed":4},{"name":"docs/parsers/xml.md","lines_changed":4},{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"docs/parsers/zipinfo.md","lines_changed":4}]},"message":"formatting"},{"commit":"d3e10bb87bdb32396bce95f74e62a023f4efaf99","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":291,"deletions":0,"files":["docs/parsers/lsusb.md"],"file_stats":[{"name":"docs/parsers/lsusb.md","lines_changed":291}]},"message":"add lsusb docs"},{"commit":"fd5433ee6220357e59633c78b689aa432d056b43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":293,"files":["docs/lib.md","docs/parsers/lsusb.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":4},{"name":"docs/parsers/lsusb.md","lines_changed":291},{"name":"jc/lib.py","lines_changed":4}]},"message":"parse docstring formatting"},{"commit":"4568f2d06e8fc1c465c86c318d925586481af062","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":4},{"name":"jc/lib.py","lines_changed":4}]},"message":"formatting for parse docstring"},{"commit":"c36e513d1bcc07cd8f01ff59199950e5396da51b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":86,"insertions":88,"deletions":91,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"],"file_stats":[{"name":"docgen.sh","lines_changed":9},{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/dpkg_l.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/finger.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/gshadow.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iostat.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/jar_manifest.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/kv.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/stat_s.md","lines_changed":2},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"docs/parsers/zipinfo.md","lines_changed":2}]},"message":"formatting"},{"commit":"8e089baf3fe30fed80e1c5cdde7c3046bb70ca5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":86,"insertions":8,"deletions":855,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"],"file_stats":[{"name":"docgen.sh","lines_changed":13},{"name":"docs/parsers/acpi.md","lines_changed":10},{"name":"docs/parsers/airport.md","lines_changed":10},{"name":"docs/parsers/airport_s.md","lines_changed":10},{"name":"docs/parsers/arp.md","lines_changed":10},{"name":"docs/parsers/blkid.md","lines_changed":10},{"name":"docs/parsers/cksum.md","lines_changed":10},{"name":"docs/parsers/crontab.md","lines_changed":10},{"name":"docs/parsers/crontab_u.md","lines_changed":10},{"name":"docs/parsers/csv.md","lines_changed":10},{"name":"docs/parsers/csv_s.md","lines_changed":10},{"name":"docs/parsers/date.md","lines_changed":10},{"name":"docs/parsers/df.md","lines_changed":10},{"name":"docs/parsers/dig.md","lines_changed":10},{"name":"docs/parsers/dir.md","lines_changed":10},{"name":"docs/parsers/dmidecode.md","lines_changed":10},{"name":"docs/parsers/dpkg_l.md","lines_changed":10},{"name":"docs/parsers/du.md","lines_changed":10},{"name":"docs/parsers/env.md","lines_changed":10},{"name":"docs/parsers/file.md","lines_changed":10},{"name":"docs/parsers/finger.md","lines_changed":10},{"name":"docs/parsers/free.md","lines_changed":10},{"name":"docs/parsers/fstab.md","lines_changed":10},{"name":"docs/parsers/group.md","lines_changed":10},{"name":"docs/parsers/gshadow.md","lines_changed":10},{"name":"docs/parsers/hash.md","lines_changed":10},{"name":"docs/parsers/hashsum.md","lines_changed":10},{"name":"docs/parsers/hciconfig.md","lines_changed":10},{"name":"docs/parsers/history.md","lines_changed":10},{"name":"docs/parsers/hosts.md","lines_changed":10},{"name":"docs/parsers/id.md","lines_changed":10},{"name":"docs/parsers/ifconfig.md","lines_changed":10},{"name":"docs/parsers/ini.md","lines_changed":10},{"name":"docs/parsers/iostat.md","lines_changed":10},{"name":"docs/parsers/iostat_s.md","lines_changed":10},{"name":"docs/parsers/iptables.md","lines_changed":10},{"name":"docs/parsers/iw_scan.md","lines_changed":10},{"name":"docs/parsers/jar_manifest.md","lines_changed":10},{"name":"docs/parsers/jobs.md","lines_changed":10},{"name":"docs/parsers/kv.md","lines_changed":10},{"name":"docs/parsers/last.md","lines_changed":10},{"name":"docs/parsers/ls.md","lines_changed":10},{"name":"docs/parsers/ls_s.md","lines_changed":10},{"name":"docs/parsers/lsblk.md","lines_changed":10},{"name":"docs/parsers/lsmod.md","lines_changed":10},{"name":"docs/parsers/lsof.md","lines_changed":10},{"name":"docs/parsers/lsusb.md","lines_changed":10},{"name":"docs/parsers/mount.md","lines_changed":10},{"name":"docs/parsers/netstat.md","lines_changed":10},{"name":"docs/parsers/ntpq.md","lines_changed":10},{"name":"docs/parsers/passwd.md","lines_changed":10},{"name":"docs/parsers/ping.md","lines_changed":10},{"name":"docs/parsers/ping_s.md","lines_changed":10},{"name":"docs/parsers/pip_list.md","lines_changed":10},{"name":"docs/parsers/pip_show.md","lines_changed":10},{"name":"docs/parsers/ps.md","lines_changed":10},{"name":"docs/parsers/route.md","lines_changed":10},{"name":"docs/parsers/rpm_qi.md","lines_changed":10},{"name":"docs/parsers/sfdisk.md","lines_changed":10},{"name":"docs/parsers/shadow.md","lines_changed":10},{"name":"docs/parsers/ss.md","lines_changed":10},{"name":"docs/parsers/stat.md","lines_changed":10},{"name":"docs/parsers/stat_s.md","lines_changed":10},{"name":"docs/parsers/sysctl.md","lines_changed":10},{"name":"docs/parsers/systemctl.md","lines_changed":10},{"name":"docs/parsers/systemctl_lj.md","lines_changed":10},{"name":"docs/parsers/systemctl_ls.md","lines_changed":10},{"name":"docs/parsers/systemctl_luf.md","lines_changed":10},{"name":"docs/parsers/systeminfo.md","lines_changed":10},{"name":"docs/parsers/time.md","lines_changed":10},{"name":"docs/parsers/timedatectl.md","lines_changed":10},{"name":"docs/parsers/tracepath.md","lines_changed":10},{"name":"docs/parsers/traceroute.md","lines_changed":10},{"name":"docs/parsers/ufw.md","lines_changed":10},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":10},{"name":"docs/parsers/uname.md","lines_changed":10},{"name":"docs/parsers/upower.md","lines_changed":10},{"name":"docs/parsers/uptime.md","lines_changed":10},{"name":"docs/parsers/vmstat.md","lines_changed":10},{"name":"docs/parsers/vmstat_s.md","lines_changed":10},{"name":"docs/parsers/w.md","lines_changed":10},{"name":"docs/parsers/wc.md","lines_changed":10},{"name":"docs/parsers/who.md","lines_changed":10},{"name":"docs/parsers/xml.md","lines_changed":10},{"name":"docs/parsers/yaml.md","lines_changed":10},{"name":"docs/parsers/zipinfo.md","lines_changed":10}]},"message":"remove info class from docs"},{"commit":"386f6c317e104e797c2b55e3d21c8b064a83ac78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":89,"insertions":9552,"deletions":9939,"files":["docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/utils.md"],"file_stats":[{"name":"docgen.sh","lines_changed":10},{"name":"docs/lib.md","lines_changed":105},{"name":"docs/parsers/acpi.md","lines_changed":440},{"name":"docs/parsers/airport.md","lines_changed":146},{"name":"docs/parsers/airport_s.md","lines_changed":202},{"name":"docs/parsers/arp.md","lines_changed":220},{"name":"docs/parsers/blkid.md","lines_changed":230},{"name":"docs/parsers/cksum.md","lines_changed":90},{"name":"docs/parsers/crontab.md","lines_changed":330},{"name":"docs/parsers/crontab_u.md","lines_changed":326},{"name":"docs/parsers/csv.md","lines_changed":140},{"name":"docs/parsers/csv_s.md","lines_changed":114},{"name":"docs/parsers/date.md","lines_changed":132},{"name":"docs/parsers/df.md","lines_changed":184},{"name":"docs/parsers/dig.md","lines_changed":614},{"name":"docs/parsers/dir.md","lines_changed":210},{"name":"docs/parsers/dmidecode.md","lines_changed":240},{"name":"docs/parsers/dpkg_l.md","lines_changed":244},{"name":"docs/parsers/du.md","lines_changed":164},{"name":"docs/parsers/env.md","lines_changed":126},{"name":"docs/parsers/file.md","lines_changed":114},{"name":"docs/parsers/finger.md","lines_changed":166},{"name":"docs/parsers/free.md","lines_changed":134},{"name":"docs/parsers/fstab.md","lines_changed":164},{"name":"docs/parsers/group.md","lines_changed":212},{"name":"docs/parsers/gshadow.md","lines_changed":148},{"name":"docs/parsers/hash.md","lines_changed":68},{"name":"docs/parsers/hashsum.md","lines_changed":106},{"name":"docs/parsers/hciconfig.md","lines_changed":620},{"name":"docs/parsers/history.md","lines_changed":106},{"name":"docs/parsers/hosts.md","lines_changed":142},{"name":"docs/parsers/id.md","lines_changed":200},{"name":"docs/parsers/ifconfig.md","lines_changed":388},{"name":"docs/parsers/ini.md","lines_changed":110},{"name":"docs/parsers/iostat.md","lines_changed":304},{"name":"docs/parsers/iostat_s.md","lines_changed":198},{"name":"docs/parsers/iptables.md","lines_changed":312},{"name":"docs/parsers/iw_scan.md","lines_changed":226},{"name":"docs/parsers/jar_manifest.md","lines_changed":148},{"name":"docs/parsers/jobs.md","lines_changed":170},{"name":"docs/parsers/kv.md","lines_changed":86},{"name":"docs/parsers/last.md","lines_changed":186},{"name":"docs/parsers/ls.md","lines_changed":190},{"name":"docs/parsers/ls_s.md","lines_changed":130},{"name":"docs/parsers/lsblk.md","lines_changed":534},{"name":"docs/parsers/lsmod.md","lines_changed":240},{"name":"docs/parsers/lsof.md","lines_changed":228},{"name":"docs/parsers/lsusb.md","lines_changed":502},{"name":"docs/parsers/mount.md","lines_changed":140},{"name":"docs/parsers/netstat.md","lines_changed":688},{"name":"docs/parsers/ntpq.md","lines_changed":402},{"name":"docs/parsers/passwd.md","lines_changed":182},{"name":"docs/parsers/ping.md","lines_changed":308},{"name":"docs/parsers/ping_s.md","lines_changed":160},{"name":"docs/parsers/pip_list.md","lines_changed":84},{"name":"docs/parsers/pip_show.md","lines_changed":120},{"name":"docs/parsers/ps.md","lines_changed":394},{"name":"docs/parsers/route.md","lines_changed":206},{"name":"docs/parsers/rpm_qi.md","lines_changed":296},{"name":"docs/parsers/sfdisk.md","lines_changed":376},{"name":"docs/parsers/shadow.md","lines_changed":196},{"name":"docs/parsers/ss.md","lines_changed":538},{"name":"docs/parsers/stat.md","lines_changed":318},{"name":"docs/parsers/stat_s.md","lines_changed":152},{"name":"docs/parsers/sysctl.md","lines_changed":100},{"name":"docs/parsers/systemctl.md","lines_changed":106},{"name":"docs/parsers/systemctl_lj.md","lines_changed":140},{"name":"docs/parsers/systemctl_ls.md","lines_changed":90},{"name":"docs/parsers/systemctl_luf.md","lines_changed":82},{"name":"docs/parsers/systeminfo.md","lines_changed":396},{"name":"docs/parsers/time.md","lines_changed":242},{"name":"docs/parsers/timedatectl.md","lines_changed":112},{"name":"docs/parsers/tracepath.md","lines_changed":248},{"name":"docs/parsers/traceroute.md","lines_changed":220},{"name":"docs/parsers/ufw.md","lines_changed":390},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":250},{"name":"docs/parsers/uname.md","lines_changed":80},{"name":"docs/parsers/universal.md","lines_changed":72},{"name":"docs/parsers/upower.md","lines_changed":374},{"name":"docs/parsers/uptime.md","lines_changed":120},{"name":"docs/parsers/vmstat.md","lines_changed":226},{"name":"docs/parsers/vmstat_s.md","lines_changed":172},{"name":"docs/parsers/w.md","lines_changed":196},{"name":"docs/parsers/wc.md","lines_changed":98},{"name":"docs/parsers/who.md","lines_changed":250},{"name":"docs/parsers/xml.md","lines_changed":134},{"name":"docs/parsers/yaml.md","lines_changed":162},{"name":"docs/parsers/zipinfo.md","lines_changed":138},{"name":"docs/utils.md","lines_changed":134}]},"message":"update markdown processor settings"},{"commit":"75cd84ce8a86b3357c6cf5fe4fbc62d0f298a29a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":94,"insertions":11423,"deletions":10081,"files":["README.md","docgen.sh","docgen.sh.old","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/utils.md","jc/cli.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docgen.sh","lines_changed":12},{"name":"docgen.sh.old","lines_changed":44},{"name":"docs/lib.md","lines_changed":151},{"name":"docs/parsers/acpi.md","lines_changed":454},{"name":"docs/parsers/airport.md","lines_changed":166},{"name":"docs/parsers/airport_s.md","lines_changed":224},{"name":"docs/parsers/arp.md","lines_changed":240},{"name":"docs/parsers/blkid.md","lines_changed":250},{"name":"docs/parsers/cksum.md","lines_changed":110},{"name":"docs/parsers/crontab.md","lines_changed":350},{"name":"docs/parsers/crontab_u.md","lines_changed":348},{"name":"docs/parsers/csv.md","lines_changed":160},{"name":"docs/parsers/csv_s.md","lines_changed":120},{"name":"docs/parsers/date.md","lines_changed":152},{"name":"docs/parsers/df.md","lines_changed":204},{"name":"docs/parsers/dig.md","lines_changed":634},{"name":"docs/parsers/dir.md","lines_changed":230},{"name":"docs/parsers/dmidecode.md","lines_changed":260},{"name":"docs/parsers/dpkg_l.md","lines_changed":266},{"name":"docs/parsers/du.md","lines_changed":184},{"name":"docs/parsers/env.md","lines_changed":146},{"name":"docs/parsers/file.md","lines_changed":134},{"name":"docs/parsers/finger.md","lines_changed":186},{"name":"docs/parsers/free.md","lines_changed":154},{"name":"docs/parsers/fstab.md","lines_changed":184},{"name":"docs/parsers/group.md","lines_changed":232},{"name":"docs/parsers/gshadow.md","lines_changed":168},{"name":"docs/parsers/hash.md","lines_changed":88},{"name":"docs/parsers/hashsum.md","lines_changed":126},{"name":"docs/parsers/hciconfig.md","lines_changed":634},{"name":"docs/parsers/history.md","lines_changed":126},{"name":"docs/parsers/hosts.md","lines_changed":162},{"name":"docs/parsers/id.md","lines_changed":220},{"name":"docs/parsers/ifconfig.md","lines_changed":472},{"name":"docs/parsers/ini.md","lines_changed":130},{"name":"docs/parsers/iostat.md","lines_changed":324},{"name":"docs/parsers/iostat_s.md","lines_changed":220},{"name":"docs/parsers/iptables.md","lines_changed":332},{"name":"docs/parsers/iw_scan.md","lines_changed":248},{"name":"docs/parsers/jar_manifest.md","lines_changed":170},{"name":"docs/parsers/jobs.md","lines_changed":190},{"name":"docs/parsers/kv.md","lines_changed":106},{"name":"docs/parsers/last.md","lines_changed":207},{"name":"docs/parsers/ls.md","lines_changed":210},{"name":"docs/parsers/ls_s.md","lines_changed":152},{"name":"docs/parsers/lsblk.md","lines_changed":548},{"name":"docs/parsers/lsmod.md","lines_changed":260},{"name":"docs/parsers/lsof.md","lines_changed":248},{"name":"docs/parsers/lsusb.md","lines_changed":518},{"name":"docs/parsers/mount.md","lines_changed":160},{"name":"docs/parsers/netstat.md","lines_changed":702},{"name":"docs/parsers/ntpq.md","lines_changed":422},{"name":"docs/parsers/passwd.md","lines_changed":202},{"name":"docs/parsers/ping.md","lines_changed":328},{"name":"docs/parsers/ping_s.md","lines_changed":182},{"name":"docs/parsers/pip_list.md","lines_changed":106},{"name":"docs/parsers/pip_show.md","lines_changed":142},{"name":"docs/parsers/ps.md","lines_changed":414},{"name":"docs/parsers/route.md","lines_changed":226},{"name":"docs/parsers/rpm_qi.md","lines_changed":318},{"name":"docs/parsers/sfdisk.md","lines_changed":396},{"name":"docs/parsers/shadow.md","lines_changed":216},{"name":"docs/parsers/ss.md","lines_changed":552},{"name":"docs/parsers/stat.md","lines_changed":338},{"name":"docs/parsers/stat_s.md","lines_changed":174},{"name":"docs/parsers/sysctl.md","lines_changed":120},{"name":"docs/parsers/systemctl.md","lines_changed":126},{"name":"docs/parsers/systemctl_lj.md","lines_changed":162},{"name":"docs/parsers/systemctl_ls.md","lines_changed":112},{"name":"docs/parsers/systemctl_luf.md","lines_changed":104},{"name":"docs/parsers/systeminfo.md","lines_changed":416},{"name":"docs/parsers/time.md","lines_changed":262},{"name":"docs/parsers/timedatectl.md","lines_changed":132},{"name":"docs/parsers/tracepath.md","lines_changed":268},{"name":"docs/parsers/traceroute.md","lines_changed":288},{"name":"docs/parsers/ufw.md","lines_changed":410},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":272},{"name":"docs/parsers/uname.md","lines_changed":100},{"name":"docs/parsers/universal.md","lines_changed":85},{"name":"docs/parsers/upower.md","lines_changed":394},{"name":"docs/parsers/uptime.md","lines_changed":140},{"name":"docs/parsers/vmstat.md","lines_changed":246},{"name":"docs/parsers/vmstat_s.md","lines_changed":194},{"name":"docs/parsers/w.md","lines_changed":216},{"name":"docs/parsers/wc.md","lines_changed":118},{"name":"docs/parsers/who.md","lines_changed":270},{"name":"docs/parsers/xml.md","lines_changed":154},{"name":"docs/parsers/yaml.md","lines_changed":182},{"name":"docs/parsers/zipinfo.md","lines_changed":158},{"name":"docs/readme.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":223},{"name":"jc/cli.py","lines_changed":4},{"name":"man/jc.1","lines_changed":12}]},"message":"try new markdown conversion"},{"commit":"6fad44e35df5d0e33e716d0fcb84ed309e6fd30b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"fix type hint"},{"commit":"1caac750daa25a5abeb1289964e918ec06289bfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":4}]},"message":"Update type hints"},{"commit":"16370dcb3d5cf1304c2340ef2253ef2987a982b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"update type hints"},{"commit":"c1302f2573993a6908001d6df0697486f54a9e7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":8,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":27}]},"message":"add type-hints to public api"},{"commit":"6f0ffe0955e4d9d6cc82552cf4e4f419e3ff3756","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"docu update"},{"commit":"1f89745fe7cca3a0ac27445942098b717675a481","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"a46ac18ef775bb2c52675e61e11c5d92f33cbe81","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"doc update"},{"commit":"1a05f1c575b57456481e41baaf551cef30115966","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":64,"deletions":54,"files":["jc/__init__.py","jc/cli.py","jc/lib.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":4},{"name":"jc/cli.py","lines_changed":48},{"name":"jc/lib.py","lines_changed":66}]},"message":"add parser info functions. move _get_parser functionality from cli to lib"},{"commit":"08f818aa42ca68050a79ec387c42bff265257fd5","merge":"027c231 b389665","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #199 from kellyjonbrazil/master"},{"commit":"b3896650c230b4acc73704a50c93ee74e4034eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":62,"deletions":104,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":83},{"name":"templates/readme_template","lines_changed":83}]},"message":"revert column formatting"},{"commit":"f285539526998a5097943c71dcecb2979036b2b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":104,"deletions":62,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":83},{"name":"templates/readme_template","lines_changed":83}]},"message":"conform to 80 columns"},{"commit":"a896dcdf3b31b60582ebb1b3bca5d1103f998dd6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":338,"deletions":120,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":229},{"name":"templates/readme_template","lines_changed":229}]},"message":"formatting"},{"commit":"0a187d4ed08173ec360a006ae2367bb1f2f96c52","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":4}]},"message":"add console interview links"},{"commit":"2d65bc57d5a396e6683f970194de29494b5c1272","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":6},{"name":"jc/__init__.py","lines_changed":6}]},"message":"add quotes"},{"commit":"ab63809fde0cefe1f0401d957a3736fdb760f0cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"update description"},{"commit":"6f04707dc63936efd0e533ae36e1b39ead10c466","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add python package doc info to top of page"},{"commit":"d14a86a9b58bdc3cb0c8df1dfa495aefdaab8033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2}]},"message":"fix typo"},{"commit":"8e6a31d3da19926ac46744e02b27a899ca5fbd7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":14,"deletions":8,"files":["CHANGELOG","docs/readme.md","jc/__init__.py","jc/lib.py","man/jc.1","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4},{"name":"jc/lib.py","lines_changed":7},{"name":"man/jc.1","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"minor fix for macOS binary"},{"commit":"6e7b6afe87355e96422bb2560ffcbd5e79d28f04","merge":"70cb445 027c231","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #198 from kellyjonbrazil/dev"},{"commit":"027c231097a002526350a93322407582a85db0cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"formatting"},{"commit":"f1cf7d1f953586dd44a4463d924f1a1f52717c37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":5,"files":["jc/parsers/foo.py","jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":6},{"name":"jc/parsers/foo_s.py","lines_changed":6}]},"message":"add helper function info"},{"commit":"df611cc263f50285e74ceb3381f55b43a74870a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":6},{"name":"jc/__init__.py","lines_changed":6}]},"message":"formatting"},{"commit":"0f3143bbbb593340190e66729580146410012e14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":6},{"name":"jc/__init__.py","lines_changed":6}]},"message":"formatting"},{"commit":"c280757b7624a46543e481ca47a6e084d2d6f519","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"formatting"},{"commit":"d30b9d84ef5ec3a2a504f7ea251c932b8c9ea878","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"formatting"},{"commit":"50ded1dbd97d26cf01d7e1a98b40e0f0f7d02202","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":4,"files":["docs/readme.md"],"file_stats":[{"name":"docs/readme.md","lines_changed":14}]},"message":"doc update"},{"commit":"e319aea5a45c598a44f35b4e58131d977509e4f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":4,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":14}]},"message":"add doc version info"},{"commit":"ba86509c1d8700a50fe14e9d931ee57261306c5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":9,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":12}]},"message":"simplify OSError exception handling"},{"commit":"0a9279ae6bfdd1aa59f5e9b31ce0af3bfec19f96","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["CHANGELOG","tests/test_lib.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":5},{"name":"tests/test_lib.py","lines_changed":1}]},"message":"doc update"},{"commit":"a13dde12af01b4473aa9a34b8a0d7387fb48500a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":173,"insertions":173,"deletions":173,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/dpkg_l.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/finger.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/gshadow.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iostat.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/jar_manifest.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/kv.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/stat_s.md","lines_changed":2},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"docs/parsers/zipinfo.md","lines_changed":2},{"name":"jc/parsers/acpi.py","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/blkid.py","lines_changed":2},{"name":"jc/parsers/cksum.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"jc/parsers/csv.py","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/dir.py","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":2},{"name":"jc/parsers/dpkg_l.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/finger.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/group.py","lines_changed":2},{"name":"jc/parsers/gshadow.py","lines_changed":2},{"name":"jc/parsers/hash.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":2},{"name":"jc/parsers/hciconfig.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/iostat.py","lines_changed":2},{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2},{"name":"jc/parsers/jar_manifest.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/kv.py","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/lsusb.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/ntpq.py","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":2},{"name":"jc/parsers/ping.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/rpm_qi.py","lines_changed":2},{"name":"jc/parsers/sfdisk.py","lines_changed":2},{"name":"jc/parsers/shadow.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/stat_s.py","lines_changed":2},{"name":"jc/parsers/sysctl.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/systeminfo.py","lines_changed":2},{"name":"jc/parsers/time.py","lines_changed":2},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/ufw.py","lines_changed":2},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/parsers/wc.py","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":2},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2},{"name":"jc/parsers/zipinfo.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"change raw output wording"},{"commit":"e2ed358de1abefd737c187a324cbe4734d6975e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"changelog update"},{"commit":"a2cd3666210be3727a00c3405972f32fbd421046","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["docs/_config.yml"],"file_stats":[{"name":"docs/_config.yml","lines_changed":1}]},"message":"Delete _config.yml"},{"commit":"15addd9bfc18a0e87beb97040b431c872b783662","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":8,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":5},{"name":"jc/parsers/universal.py","lines_changed":7}]},"message":"doc fix"},{"commit":"a4e34b0053ec0c032f4783caaa3e07fc2c685a98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":63,"deletions":0,"files":["docgen.sh","docs/parsers/universal.md"],"file_stats":[{"name":"docgen.sh","lines_changed":3},{"name":"docs/parsers/universal.md","lines_changed":60}]},"message":"add universal parser docs"},{"commit":"d09529ac302fbcc156d58cf836f8397c98121a76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"changelog update"},{"commit":"553097b5050dc02fbdaeec2e2e138e01bc6811d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":2}]},"message":"docstring update"},{"commit":"49c556857708307f617b2b516f2d281398681b5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":35,"deletions":15,"files":["README.md","docs/lib.md","docs/readme.md","jc/__init__.py","jc/lib.py","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/lib.md","lines_changed":9},{"name":"docs/readme.md","lines_changed":13},{"name":"jc/__init__.py","lines_changed":13},{"name":"jc/lib.py","lines_changed":9},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"module doc update"},{"commit":"6962b9ee8a52c924dc2de6b79ddeea3636e80fe4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":6,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":7},{"name":"jc/lib.py","lines_changed":7}]},"message":"formatting"},{"commit":"b4575a3f780f9aa2751c8b4789f67aaca32dd1cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":91,"deletions":1,"files":["docgen.sh","docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docgen.sh","lines_changed":4},{"name":"docs/lib.md","lines_changed":86},{"name":"jc/lib.py","lines_changed":2}]},"message":"add lib docs"},{"commit":"35b54d235d73b2ce658223be3d6095906f142d89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"templates/readme_template","lines_changed":3}]},"message":"add python package doc info"},{"commit":"583a5757e454a4e36b331057d1266279b55ee16a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":18,"insertions":34,"deletions":30,"files":["docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/file.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/traceroute.md","docs/parsers/ufw_appinfo.md","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/file.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/traceroute.py","jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":6},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":9},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":6},{"name":"jc/parsers/ls.py","lines_changed":5},{"name":"jc/parsers/ls_s.py","lines_changed":9},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":2}]},"message":"formatting"},{"commit":"f355333eeed3c4afba844dc7bed5224356552adc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":8},{"name":"jc/__init__.py","lines_changed":8}]},"message":"formatting"},{"commit":"4d7df109604e4f8367904968602acfc05217a7fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"formatting"},{"commit":"66b2c28f4bc75fb76800f9fb7ea485eee194a9a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":24,"deletions":24,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":24},{"name":"jc/__init__.py","lines_changed":24}]},"message":"formatting"},{"commit":"299a9c6d88fdf1fede447b4057d8f4263daef733","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":25,"deletions":57,"files":["docs/parsers/csv.md","docs/readme.md"],"file_stats":[{"name":"docs/parsers/csv.md","lines_changed":4},{"name":"docs/readme.md","lines_changed":78}]},"message":"formatting"},{"commit":"bd391d979ce98b126dab0f012a56b3fcb1f73439","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":55,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":78}]},"message":"add lib function docs"},{"commit":"7309bd2282445f6daef0b1491ff60b8104500abb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":19,"deletions":10,"files":["jc/lib.py","jc/parsers/csv.py","jc/parsers/universal.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":15},{"name":"jc/parsers/csv.py","lines_changed":4},{"name":"jc/parsers/universal.py","lines_changed":10}]},"message":"add get_help"},{"commit":"ce84c09d3394b598f19a3e012ef27ce4154e3b3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":3}]},"message":"add get_help()"},{"commit":"b4fffbb6476daf78fbdf19dbf31bbeeab950d2dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":46,"insertions":501,"deletions":304,"files":["docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/history.md","docs/parsers/ini.md","docs/parsers/iostat_s.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsusb.md","docs/parsers/netstat.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/ps.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/upower.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/who.md"],"file_stats":[{"name":"docs/parsers/crontab.md","lines_changed":3},{"name":"docs/parsers/crontab_u.md","lines_changed":22},{"name":"docs/parsers/csv.md","lines_changed":9},{"name":"docs/parsers/csv_s.md","lines_changed":35},{"name":"docs/parsers/date.md","lines_changed":18},{"name":"docs/parsers/dig.md","lines_changed":16},{"name":"docs/parsers/dir.md","lines_changed":6},{"name":"docs/parsers/dpkg_l.md","lines_changed":7},{"name":"docs/parsers/du.md","lines_changed":20},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":8},{"name":"docs/parsers/ini.md","lines_changed":15},{"name":"docs/parsers/iostat_s.md","lines_changed":25},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jar_manifest.md","lines_changed":25},{"name":"docs/parsers/jobs.md","lines_changed":3},{"name":"docs/parsers/kv.md","lines_changed":11},{"name":"docs/parsers/last.md","lines_changed":10},{"name":"docs/parsers/ls.md","lines_changed":19},{"name":"docs/parsers/ls_s.md","lines_changed":51},{"name":"docs/parsers/lsblk.md","lines_changed":10},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":3},{"name":"docs/parsers/ping.md","lines_changed":32},{"name":"docs/parsers/ping_s.md","lines_changed":85},{"name":"docs/parsers/ps.md","lines_changed":8},{"name":"docs/parsers/rpm_qi.md","lines_changed":37},{"name":"docs/parsers/sfdisk.md","lines_changed":8},{"name":"docs/parsers/ss.md","lines_changed":6},{"name":"docs/parsers/stat.md","lines_changed":6},{"name":"docs/parsers/stat_s.md","lines_changed":27},{"name":"docs/parsers/sysctl.md","lines_changed":7},{"name":"docs/parsers/systemctl.md","lines_changed":4},{"name":"docs/parsers/systemctl_ls.md","lines_changed":3},{"name":"docs/parsers/systemctl_luf.md","lines_changed":3},{"name":"docs/parsers/systeminfo.md","lines_changed":19},{"name":"docs/parsers/time.md","lines_changed":33},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"docs/parsers/ufw.md","lines_changed":7},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":28},{"name":"docs/parsers/upower.md","lines_changed":16},{"name":"docs/parsers/vmstat.md","lines_changed":13},{"name":"docs/parsers/vmstat_s.md","lines_changed":111},{"name":"docs/parsers/who.md","lines_changed":7}]},"message":"formatting"},{"commit":"3701b4198aad1826ad6da571fbcaa530b057cc48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":86,"insertions":710,"deletions":606,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":5},{"name":"jc/parsers/airport.py","lines_changed":7},{"name":"jc/parsers/airport_s.py","lines_changed":3},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/blkid.py","lines_changed":10},{"name":"jc/parsers/cksum.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":6},{"name":"jc/parsers/crontab_u.py","lines_changed":25},{"name":"jc/parsers/csv.py","lines_changed":14},{"name":"jc/parsers/csv_s.py","lines_changed":38},{"name":"jc/parsers/date.py","lines_changed":69},{"name":"jc/parsers/df.py","lines_changed":13},{"name":"jc/parsers/dig.py","lines_changed":28},{"name":"jc/parsers/dir.py","lines_changed":8},{"name":"jc/parsers/dmidecode.py","lines_changed":3},{"name":"jc/parsers/dpkg_l.py","lines_changed":10},{"name":"jc/parsers/du.py","lines_changed":23},{"name":"jc/parsers/env.py","lines_changed":7},{"name":"jc/parsers/file.py","lines_changed":6},{"name":"jc/parsers/finger.py","lines_changed":14},{"name":"jc/parsers/foo.py","lines_changed":3},{"name":"jc/parsers/foo_s.py","lines_changed":23},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/group.py","lines_changed":3},{"name":"jc/parsers/gshadow.py","lines_changed":3},{"name":"jc/parsers/hash.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":5},{"name":"jc/parsers/hciconfig.py","lines_changed":13},{"name":"jc/parsers/history.py","lines_changed":10},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":3},{"name":"jc/parsers/ifconfig.py","lines_changed":20},{"name":"jc/parsers/ini.py","lines_changed":23},{"name":"jc/parsers/iostat_s.py","lines_changed":25},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":11},{"name":"jc/parsers/jar_manifest.py","lines_changed":25},{"name":"jc/parsers/jobs.py","lines_changed":5},{"name":"jc/parsers/kv.py","lines_changed":13},{"name":"jc/parsers/last.py","lines_changed":17},{"name":"jc/parsers/ls.py","lines_changed":21},{"name":"jc/parsers/ls_s.py","lines_changed":53},{"name":"jc/parsers/lsblk.py","lines_changed":15},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/lsusb.py","lines_changed":5},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":20},{"name":"jc/parsers/ntpq.py","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":3},{"name":"jc/parsers/ping.py","lines_changed":46},{"name":"jc/parsers/ping_s.py","lines_changed":99},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":10},{"name":"jc/parsers/route.py","lines_changed":6},{"name":"jc/parsers/rpm_qi.py","lines_changed":40},{"name":"jc/parsers/sfdisk.py","lines_changed":16},{"name":"jc/parsers/shadow.py","lines_changed":3},{"name":"jc/parsers/ss.py","lines_changed":8},{"name":"jc/parsers/stat.py","lines_changed":12},{"name":"jc/parsers/stat_s.py","lines_changed":31},{"name":"jc/parsers/sysctl.py","lines_changed":10},{"name":"jc/parsers/systemctl.py","lines_changed":6},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":5},{"name":"jc/parsers/systemctl_luf.py","lines_changed":5},{"name":"jc/parsers/systeminfo.py","lines_changed":31},{"name":"jc/parsers/time.py","lines_changed":51},{"name":"jc/parsers/timedatectl.py","lines_changed":8},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":7},{"name":"jc/parsers/ufw.py","lines_changed":7},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":28},{"name":"jc/parsers/uname.py","lines_changed":4},{"name":"jc/parsers/universal.py","lines_changed":40},{"name":"jc/parsers/upower.py","lines_changed":32},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":28},{"name":"jc/parsers/vmstat_s.py","lines_changed":125},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/parsers/wc.py","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":10},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"formatting"},{"commit":"d4c34098fa7ad2098076f0fa0564467e5d06f916","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":5}]},"message":"formatting"},{"commit":"b3c531193b3fc53697e7d7823576f481f9462d53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":125,"deletions":71,"files":["CHANGELOG","docs/utils.md","jc/utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docs/utils.md","lines_changed":79},{"name":"jc/utils.py","lines_changed":114}]},"message":"formatting"},{"commit":"1d0e07c77bab5c48405323e52873c7952dd0a587","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":57,"deletions":55,"files":["docs/readme.md","jc/__init__.py","jc/lib.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":33},{"name":"jc/__init__.py","lines_changed":33},{"name":"jc/lib.py","lines_changed":46}]},"message":"formatting"},{"commit":"06a322cf9c7468dc7e8ba05914e1d07bbc51f63a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":8,"files":["tests/test_lib.py"],"file_stats":[{"name":"tests/test_lib.py","lines_changed":22}]},"message":"rename tests and add conversion function tests"},{"commit":"623d148712f93eacf9b7b5803140603f0af67acb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"647e83d0439a0937db14a2cc97929e38a6b6a43b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["tests/test_lib.py"],"file_stats":[{"name":"tests/test_lib.py","lines_changed":3}]},"message":"add test to ensure there are zero plugin parsers installed during tests"},{"commit":"91a554464444da0cc3ed3b4d212539232411f6cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":5}]},"message":"doc update"},{"commit":"a1190998aef1bf403ee34c38c1a0fbd6291ac38b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":82,"deletions":0,"files":["tests/test_jc.py","tests/test_lib.py"],"file_stats":[{"name":"tests/test_jc.py","lines_changed":41},{"name":"tests/test_lib.py","lines_changed":41}]},"message":"add jc and jc.lib tests"},{"commit":"097d7a1850f6f6df73a5761c657b73ef9dbd3e29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":4}]},"message":"simplify __init__"},{"commit":"302bf72e720b3a67fbf1300eaff4f99fc343abeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":138,"insertions":718,"deletions":6,"files":["docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py"],"file_stats":[{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":5},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iostat.md","lines_changed":5},{"name":"docs/parsers/iostat_s.md","lines_changed":7},{"name":"docs/parsers/iptables.md","lines_changed":7},{"name":"docs/parsers/iw_scan.md","lines_changed":9},{"name":"docs/parsers/jar_manifest.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":7},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/ping_s.md","lines_changed":7},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/sfdisk.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/stat_s.md","lines_changed":7},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/systeminfo.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"docs/parsers/ufw.md","lines_changed":5},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/vmstat.md","lines_changed":5},{"name":"docs/parsers/vmstat_s.md","lines_changed":7},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5},{"name":"docs/parsers/zipinfo.md","lines_changed":5},{"name":"jc/parsers/env.py","lines_changed":5},{"name":"jc/parsers/file.py","lines_changed":5},{"name":"jc/parsers/finger.py","lines_changed":5},{"name":"jc/parsers/foo.py","lines_changed":5},{"name":"jc/parsers/foo_s.py","lines_changed":7},{"name":"jc/parsers/free.py","lines_changed":5},{"name":"jc/parsers/fstab.py","lines_changed":5},{"name":"jc/parsers/group.py","lines_changed":5},{"name":"jc/parsers/gshadow.py","lines_changed":5},{"name":"jc/parsers/hash.py","lines_changed":5},{"name":"jc/parsers/hashsum.py","lines_changed":5},{"name":"jc/parsers/hciconfig.py","lines_changed":5},{"name":"jc/parsers/history.py","lines_changed":5},{"name":"jc/parsers/hosts.py","lines_changed":5},{"name":"jc/parsers/id.py","lines_changed":5},{"name":"jc/parsers/ifconfig.py","lines_changed":5},{"name":"jc/parsers/ini.py","lines_changed":5},{"name":"jc/parsers/iostat.py","lines_changed":5},{"name":"jc/parsers/iostat_s.py","lines_changed":7},{"name":"jc/parsers/iptables.py","lines_changed":7},{"name":"jc/parsers/iw_scan.py","lines_changed":9},{"name":"jc/parsers/jar_manifest.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":5},{"name":"jc/parsers/kv.py","lines_changed":5},{"name":"jc/parsers/last.py","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":5},{"name":"jc/parsers/ls_s.py","lines_changed":7},{"name":"jc/parsers/lsblk.py","lines_changed":5},{"name":"jc/parsers/lsmod.py","lines_changed":5},{"name":"jc/parsers/lsof.py","lines_changed":5},{"name":"jc/parsers/lsusb.py","lines_changed":5},{"name":"jc/parsers/mount.py","lines_changed":5},{"name":"jc/parsers/netstat.py","lines_changed":5},{"name":"jc/parsers/ntpq.py","lines_changed":5},{"name":"jc/parsers/passwd.py","lines_changed":5},{"name":"jc/parsers/ping.py","lines_changed":5},{"name":"jc/parsers/ping_s.py","lines_changed":7},{"name":"jc/parsers/pip_list.py","lines_changed":5},{"name":"jc/parsers/pip_show.py","lines_changed":5},{"name":"jc/parsers/ps.py","lines_changed":5},{"name":"jc/parsers/route.py","lines_changed":5},{"name":"jc/parsers/rpm_qi.py","lines_changed":5},{"name":"jc/parsers/sfdisk.py","lines_changed":5},{"name":"jc/parsers/shadow.py","lines_changed":5},{"name":"jc/parsers/ss.py","lines_changed":5},{"name":"jc/parsers/stat.py","lines_changed":5},{"name":"jc/parsers/stat_s.py","lines_changed":7},{"name":"jc/parsers/sysctl.py","lines_changed":5},{"name":"jc/parsers/systemctl.py","lines_changed":5},{"name":"jc/parsers/systemctl_lj.py","lines_changed":5},{"name":"jc/parsers/systemctl_ls.py","lines_changed":5},{"name":"jc/parsers/systemctl_luf.py","lines_changed":5},{"name":"jc/parsers/systeminfo.py","lines_changed":5},{"name":"jc/parsers/time.py","lines_changed":5},{"name":"jc/parsers/timedatectl.py","lines_changed":5},{"name":"jc/parsers/tracepath.py","lines_changed":5},{"name":"jc/parsers/traceroute.py","lines_changed":5},{"name":"jc/parsers/ufw.py","lines_changed":5},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":5},{"name":"jc/parsers/uname.py","lines_changed":5},{"name":"jc/parsers/upower.py","lines_changed":5},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/vmstat.py","lines_changed":5},{"name":"jc/parsers/vmstat_s.py","lines_changed":7},{"name":"jc/parsers/w.py","lines_changed":5},{"name":"jc/parsers/wc.py","lines_changed":5},{"name":"jc/parsers/who.py","lines_changed":5},{"name":"jc/parsers/xml.py","lines_changed":5},{"name":"jc/parsers/yaml.py","lines_changed":5},{"name":"jc/parsers/zipinfo.py","lines_changed":5}]},"message":"Update high-level API docs"},{"commit":"2c42baf3a4dd6733c078f31a1becd708a05f2c36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":34,"insertions":174,"deletions":0,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/csv_s.md","lines_changed":7},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"jc/parsers/acpi.py","lines_changed":5},{"name":"jc/parsers/airport.py","lines_changed":5},{"name":"jc/parsers/airport_s.py","lines_changed":5},{"name":"jc/parsers/arp.py","lines_changed":5},{"name":"jc/parsers/blkid.py","lines_changed":5},{"name":"jc/parsers/cksum.py","lines_changed":5},{"name":"jc/parsers/crontab.py","lines_changed":5},{"name":"jc/parsers/crontab_u.py","lines_changed":5},{"name":"jc/parsers/csv.py","lines_changed":5},{"name":"jc/parsers/csv_s.py","lines_changed":7},{"name":"jc/parsers/date.py","lines_changed":5},{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":5},{"name":"jc/parsers/dir.py","lines_changed":5},{"name":"jc/parsers/dmidecode.py","lines_changed":5},{"name":"jc/parsers/dpkg_l.py","lines_changed":5},{"name":"jc/parsers/du.py","lines_changed":5}]},"message":"add new high-level api info"},{"commit":"03feb89c84096c0ea1d6ae3a0634ae7b8b507e8f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2}]},"message":"add module list info"},{"commit":"9dd553192fbca3037b3afe5df6bae88f7a8a9365","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":29,"deletions":12,"files":["CHANGELOG","README.md","docs/readme.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":10},{"name":"docs/readme.md","lines_changed":16},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":10}]},"message":"doc update"},{"commit":"fa3f02e9d1ac7867e3465c2d214f4e4229ff4c66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"0a9dde58c5235f78c4c9ae9c013f7454482c6067","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":228,"deletions":134,"files":["jc/__init__.py","jc/cli.py","jc/lib.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":22},{"name":"jc/cli.py","lines_changed":154},{"name":"jc/lib.py","lines_changed":186}]},"message":"add jc.parse() high-level API"},{"commit":"70cb4453bebb235130e2c287633ecb1de6c2b0aa","merge":"e6900e2 830674c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #195 from kellyjonbrazil/dev"},{"commit":"830674cc6f19e107347a743baff7bbaab7f80b75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["CHANGELOG","jc/__init__.py","man/jc.1","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"fb406b58a12fdfe81bcff76671661af77e7f2fe5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["docs/parsers/stat_s.md","jc/parsers/stat_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/stat_s.md","lines_changed":4},{"name":"jc/parsers/stat_s.py","lines_changed":4},{"name":"man/jc.1","lines_changed":2}]},"message":"formatting"},{"commit":"55b272e41259ddc835cf4eb513fb67e7b2cf1573","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":2}]},"message":"tighten stat data detection"},{"commit":"94f62a9bf36242310790a0f37c66b2e6c6fdc078","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/stat_s.md","jc/parsers/stat_s.py"],"file_stats":[{"name":"docs/parsers/stat_s.md","lines_changed":6},{"name":"jc/parsers/stat_s.py","lines_changed":6}]},"message":"formatting"},{"commit":"8d19e4cb7b45e3b6cb8c404c959949b7593c9386","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":115,"deletions":1,"files":["CHANGELOG","README.md","docs/parsers/stat_s.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/stat_s.md","lines_changed":105},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update"},{"commit":"7e510d48e0f8426a67cf8d70d06d0331c274d358","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":106,"deletions":2,"files":["jc/parsers/stat_s.py","tests/fixtures/centos-7.7/stat-streaming.json","tests/fixtures/freebsd12/stat-streaming.json",".../stat-filename-with-spaces-streaming.json","tests/fixtures/osx-10.14.6/stat-streaming.json","tests/fixtures/ubuntu-18.04/stat-streaming.json","tests/test_stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":3},{"name":"tests/fixtures/centos-7.7/stat-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/stat-streaming.json","lines_changed":1},{"name":".../stat-filename-with-spaces-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/stat-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/stat-streaming.json","lines_changed":1},{"name":"tests/test_stat_s.py","lines_changed":100}]},"message":"simplify non-stat parse error logic"},{"commit":"7b20cffb143447f4497bc4e895eac2426e8a519f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":8}]},"message":"simplify last item logic"},{"commit":"5c934c43c13b69183561da8a77280feb3363e950","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":2}]},"message":"add continue to simplify logic"},{"commit":"8609298449e997ba4804d818f4fc23cb393ded7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":8}]},"message":"update docstring"},{"commit":"72cb0dc10b2dac486d3e2a52cf44baf0d7496034","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":10,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":24}]},"message":"fixup for first and last items"},{"commit":"7b22fa81ded0f6f59e250ffea63c5d2a0f928b25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":8}]},"message":"raise for non-stat data"},{"commit":"0b6a1307790e0793917bc2781e4873aa9dd67225","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":4}]},"message":"ignore blank lines"},{"commit":"fdcf4338e0f099699f8d48df6382be1cc97dba84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":6}]},"message":"add examples to docstring"},{"commit":"ee43037f481286a34a766390568965fdd53af132","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":2}]},"message":"remove unused continue lines"},{"commit":"26e365563c314e694915c7a3feae490ea99a112c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":50,"deletions":11,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":61}]},"message":"add schema and _process logic"},{"commit":"1b39586bb1b62aee8ae709512c2e3f79cefdb3d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":227,"deletions":0,"files":["jc/cli.py","jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/stat_s.py","lines_changed":226}]},"message":"add stat streaming parser"},{"commit":"8bb3a6bea34d60d49039f1ed72fd7e413edc05da","merge":"78672bd e6900e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #194 from kellyjonbrazil/master"},{"commit":"e6900e2000bf265dfcfc09ffbfda39e9238661af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":21}]},"message":"add jar-manifest"},{"commit":"0ee244756bf39123e4873eb231156edbe7f0e0ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/jar_manifest.md","jc/parsers/jar_manifest.py"],"file_stats":[{"name":"docs/parsers/jar_manifest.md","lines_changed":2},{"name":"jc/parsers/jar_manifest.py","lines_changed":2}]},"message":"spelling"},{"commit":"6d5ac9abe6712e01887ce0d96c278a568319f405","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["docs/parsers/csv.md","docs/parsers/csv_s.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"update docs"},{"commit":"44f6d9e1321459be8196aeebf6db088cc5120e61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"changelog update"},{"commit":"360154559c5dee6affa55bbdd5d2f473248b9168","merge":"241d53a 78672bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #193 from kellyjonbrazil/dev"},{"commit":"78672bd7ad66c418e0ecf31add73f887b0946d29","merge":"bc7973a 65d96e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #190 from shaikustin/csv-doubleqouted"},{"commit":"65d96e26b59e231c77c1dbba1dc91708c33de30c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":13,"deletions":0,"files":["tests/fixtures/generic/csv-doubleqouted-streaming.json","tests/test_csv_s.py"],"file_stats":[{"name":"tests/fixtures/generic/csv-doubleqouted-streaming.json","lines_changed":1},{"name":"tests/test_csv_s.py","lines_changed":12}]},"message":"add streaming tests"},{"commit":"241d53af9a5c9bba70e28835e22c52c0060269ba","merge":"f733100 bc7973a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #192 from kellyjonbrazil/dev"},{"commit":"5563829df2849a899df2e9211d6c92bddc695f9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":8}]},"message":"make dialect sniff behavior match non-streaming parser"},{"commit":"3a4a27e1f94ee07352c7616c57ec655c1aea04f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/csv.py"],"file_stats":[{"name":"jc/parsers/csv.py","lines_changed":4}]},"message":"version bump"},{"commit":"9c887a36a804d817c3f669a55b9b1566d09d645d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":6}]},"message":"update csv_s parser with csv changes"},{"commit":"bc7973af36e13006230b5faa9e201e300d468912","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","jc/cli.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"update copyright"},{"commit":"32972d8fdbdc71923978fd5c2a87fd6cfa4b7f8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":122,"deletions":9,"files":["CHANGELOG","README.md","docs/parsers/jar_manifest.md","jc/__init__.py","jc/parsers/jar_manifest.py","man/jc.1","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/jar_manifest.md","lines_changed":104},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/parsers/jar_manifest.py","lines_changed":12},{"name":"man/jc.1","lines_changed":7},{"name":"setup.py","lines_changed":2}]},"message":"doc update"},{"commit":"b128d9109cbdb1176f2473d450023bb0be02531b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":46,"deletions":0,"files":["tests/test_jar_manifest.py"],"file_stats":[{"name":"tests/test_jar_manifest.py","lines_changed":46}]},"message":"add MANIFEST.MF tests"},{"commit":"929d7273a422c2bd5b83e5e19d32630f1a027f75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/jar_manifest.py"],"file_stats":[{"name":"jc/parsers/jar_manifest.py","lines_changed":8}]},"message":"doc updates"},{"commit":"2a40f842743a8745d651b4b6cae645045e6c6aab","author":"shaik","author_email":"shai.kustin@torq.io","stats":{"files_changed":4,"insertions":22,"deletions":1,"files":["jc/parsers/csv.py","tests/fixtures/generic/csv-doubleqouted.csv","tests/fixtures/generic/csv-doubleqouted.json","tests/test_csv.py"],"file_stats":[{"name":"jc/parsers/csv.py","lines_changed":4},{"name":"tests/fixtures/generic/csv-doubleqouted.csv","lines_changed":3},{"name":"tests/fixtures/generic/csv-doubleqouted.json","lines_changed":4},{"name":"tests/test_csv.py","lines_changed":12}]},"message":"fix doubleqoute in csv"},{"commit":"9ff6fa818f0857321e4b3b089d288997f2ae27af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add jar-manifest"},{"commit":"dac73a4bfe24e36474fdf6ff60c23e784ca409bd","merge":"d789554 f733100","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #189 from kellyjonbrazil/master"},{"commit":"d7895547f74744e82317eabe4c870115701872be","merge":"f8e09ae b7d439c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #188 from listuser/new_branch"},{"commit":"b7d439cb870e443e4f4e4a2137ab170835e77eff","author":"listuser","author_email":null,"stats":{"files_changed":3,"insertions":2220,"deletions":9,"files":["jc/parsers/{jar-manifest.py => jar_manifest.py}","tests/fixtures/rhel-8/MANIFEST.MF.MULTI.json","tests/fixtures/rhel-8/MANIFEST.MF.MULTI.out"],"file_stats":[{"name":"jc/parsers/{jar-manifest.py => jar_manifest.py}","lines_changed":18},{"name":"tests/fixtures/rhel-8/MANIFEST.MF.MULTI.json","lines_changed":1},{"name":"tests/fixtures/rhel-8/MANIFEST.MF.MULTI.out","lines_changed":2210}]},"message":"Renamed jar-manifest.py to jar_manifest.py, added multi manifest outputs to tests..."},{"commit":"7cc903a5f5ca368be97babadc72689375567a901","author":"listuser","author_email":null,"stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/jar-manifest.py"],"file_stats":[{"name":"jc/parsers/jar-manifest.py","lines_changed":3}]},"message":"Removed inflating from examples in jar-manifest.py"},{"commit":"c495a8291bd3e1fd070ee2e018b9b550f9c86314","author":"listuser","author_email":null,"stats":{"files_changed":1,"insertions":1,"deletions":292,"files":["tests/fixtures/rhel-8/MANIFEST.MF.json"],"file_stats":[{"name":"tests/fixtures/rhel-8/MANIFEST.MF.json","lines_changed":293}]},"message":"Updated test output in MANIFEST.MF.json"},{"commit":"5e1d7d777c627fb17feda6e51d9640bbd0f03302","author":"listuser","author_email":null,"stats":{"files_changed":8,"insertions":304,"deletions":2544,"files":["jc/parsers/{metamf.py => jar-manifest.py}","tests/fixtures/rhel-8/MANIFEST.MF.json",".../rhel-8/{MANIFEST.MF => MANIFEST.MF.out}",".../rhel-8/cmds_used_to_generate_test_data.txt",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out"],"file_stats":[{"name":"jc/parsers/{metamf.py => jar-manifest.py}","lines_changed":34},{"name":"tests/fixtures/rhel-8/MANIFEST.MF.json","lines_changed":293},{"name":".../rhel-8/{MANIFEST.MF => MANIFEST.MF.out}","lines_changed":0},{"name":".../rhel-8/cmds_used_to_generate_test_data.txt","lines_changed":14},{"name":".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json","lines_changed":1},{"name":".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out","lines_changed":2210},{"name":".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json","lines_changed":1},{"name":".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out","lines_changed":295}]},"message":"Renamed metamf.py to jar-manifest.py, plus other changes"},{"commit":"7edad3f676fe5560017ca9cb05ede6f46787e78f","author":"listuser","author_email":null,"stats":{"files_changed":8,"insertions":3042,"deletions":0,"files":["jc/parsers/metamf.py","tests/fixtures/rhel-8/MANIFEST.MF","tests/fixtures/rhel-8/MANIFEST.MF.json",".../rhel-8/cmds_used_to_generate_test_data.txt",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out"],"file_stats":[{"name":"jc/parsers/metamf.py","lines_changed":228},{"name":"tests/fixtures/rhel-8/MANIFEST.MF","lines_changed":292},{"name":"tests/fixtures/rhel-8/MANIFEST.MF.json","lines_changed":1},{"name":".../rhel-8/cmds_used_to_generate_test_data.txt","lines_changed":14},{"name":".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json","lines_changed":1},{"name":".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out","lines_changed":2210},{"name":".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json","lines_changed":1},{"name":".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out","lines_changed":295}]},"message":"Create key value pairs from a MANIFEST.MF file, to include key multiline value pairs."},{"commit":"f7331001d4ab976e311458a16b6e5337da2e3aab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":5},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":5}]},"message":"use github releases instead of packaging site"},{"commit":"f8e09ae2ffe185d21305d566fad20f510df9890f","merge":"2e4f5a5 433c7cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #187 from kellyjonbrazil/master"},{"commit":"433c7cc0f05e321ffe024845a908f3e856d4cd2b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/zipinfo.md","jc/parsers/zipinfo.py"],"file_stats":[{"name":"docs/parsers/zipinfo.md","lines_changed":1},{"name":"jc/parsers/zipinfo.py","lines_changed":1}]},"message":"formatting"},{"commit":"d753e71a7452310d45fa605a2e4c70320ed60dbb","merge":"3ac8d03 2e4f5a5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #186 from kellyjonbrazil/dev"},{"commit":"2e4f5a508b6c90f9e03dcbcf64efc0e2fc446666","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":6,"deletions":3,"files":["CHANGELOG","jc/__init__.py","man/jc.1","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"88b960eff6cb3739d0d243c8d8b3e8ad5b8eb97c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":144,"deletions":1,"files":["EXAMPLES.md","README.md","docs/parsers/zipinfo.md","man/jc.1"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":31},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/zipinfo.md","lines_changed":106},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update"},{"commit":"88c77bd89e2c2a5f023e6638816c9153b6276d35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":47,"deletions":0,"files":["tests/fixtures/osx-10.14.6/zipinfo-multi.json","tests/test_zipinfo.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/zipinfo-multi.json","lines_changed":1},{"name":"tests/test_zipinfo.py","lines_changed":46}]},"message":"add zipinfo tests"},{"commit":"51a7a4251fff518d8da78ffa41e7ba2e2cb47f12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":0,"files":["tests/fixtures/osx-10.14.6/zipinfo-multi.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/zipinfo-multi.out","lines_changed":24}]},"message":"add multi-archive test output"},{"commit":"51d2f316f388d962c26aeb4f42affebec339e5a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":97,"deletions":72,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":169}]},"message":"add multi-archive support"},{"commit":"ff78a46c4854339a097992701351ef471aff1671","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"add zipinfo parser"},{"commit":"ed4a9dc1d470f64bcc9de35b2d98568ffd50257d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":23,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":44}]},"message":"formatting"},{"commit":"63182dba26040974cb8cada6f5910bb29b1fa3ed","merge":"b450697 9c1eaa9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #185 from listuser/new_branch"},{"commit":"9c1eaa938934269fe4179da798acf5f119cde0cf","author":"Matt J","author_email":"none","stats":{"files_changed":2,"insertions":68,"deletions":61,"files":["jc/parsers/zipinfo.py","tests/fixtures/rhel-8/zipinfo.json"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":127},{"name":"tests/fixtures/rhel-8/zipinfo.json","lines_changed":2}]},"message":"revised zipinfo.py nested version"},{"commit":"bc520fcbcdfad6a53e51944391fd24512bed8128","author":"Matt J","author_email":"none","stats":{"files_changed":2,"insertions":63,"deletions":53,"files":["jc/parsers/zipinfo.py","tests/fixtures/rhel-8/zipinfo.json"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":114},{"name":"tests/fixtures/rhel-8/zipinfo.json","lines_changed":2}]},"message":"added zipinfo.py nested version"},{"commit":"46faac1a12a5b39d6a25427f6e8fdcca1204dbcd","author":"Matt J","author_email":"none","stats":{"files_changed":2,"insertions":1222,"deletions":0,"files":["tests/fixtures/rhel-8/zipinfo.json","tests/fixtures/rhel-8/zipinfo.out"],"file_stats":[{"name":"tests/fixtures/rhel-8/zipinfo.json","lines_changed":1},{"name":"tests/fixtures/rhel-8/zipinfo.out","lines_changed":1221}]},"message":"add test data zipinfo.json and zipinfo.out"},{"commit":"3c424c0cb3cff462a963183585b57bea004e974f","author":"Matt J","author_email":"none","stats":{"files_changed":1,"insertions":165,"deletions":0,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":165}]},"message":"initial commit zipinfo.py to new_branch"},{"commit":"3ac8d0362b4fb9999fc55a60a9cb20ac80d114f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"use quotes around python versions"},{"commit":"d88b998e6c7826a9ecae18663328e2d2915030fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":8},{"name":"jc/parsers/csv_s.py","lines_changed":8}]},"message":"formatting"},{"commit":"a9ed55c00652a563391a7930c7a4649967131ae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":11,"deletions":11,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]},"message":"fix spelling"},{"commit":"ea614341232e5272ee0c7fd46ba0f313033c761f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":16,"deletions":8,"files":["docs/parsers/crontab.md","docs/parsers/crontab_u.md","jc/parsers/crontab.py","jc/parsers/crontab_u.py"],"file_stats":[{"name":"docs/parsers/crontab.md","lines_changed":6},{"name":"docs/parsers/crontab_u.md","lines_changed":6},{"name":"jc/parsers/crontab.py","lines_changed":6},{"name":"jc/parsers/crontab_u.py","lines_changed":6}]},"message":"fix schema docs"},{"commit":"a73d0d26cbe2860b8374661068e09e0717a3bab2","merge":"a7de911 b450697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #184 from kellyjonbrazil/dev"},{"commit":"b4506976e3c865397bc657183d49c484d8bcfd7a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":8},{"name":"templates/manpage_template","lines_changed":6}]},"message":"formatting"},{"commit":"34cb75a09697a06c3878f2f9a84eb3bd2a90ae62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/__init__.py","setup.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"34df643f60712ae25645cb7cddff80e43c12262b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":18,"deletions":0,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"man/jc.1","lines_changed":6},{"name":"templates/manpage_template","lines_changed":6},{"name":"templates/readme_template","lines_changed":3}]},"message":"add disable colors section"},{"commit":"ac7c13fcc013d386f34db51d634298fa3e97eccd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":11,"deletions":1,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"man/jc.1","lines_changed":6},{"name":"templates/manpage_template","lines_changed":4},{"name":"templates/readme_template","lines_changed":1}]},"message":"add -C option to docs"},{"commit":"4fdb34c7d5fcaa65e2ccab814c3acf2f0f70c442","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"add no-color.org"},{"commit":"7ac468e35aac1a63c4e22f33aead74a6e41a22a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"changelog update"},{"commit":"df190aa299f1669d1fe09380026ae086839abc02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":15,"deletions":7,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":22}]},"message":"add -C option to force color even with pipes"},{"commit":"9621475e86fe20fcdc2902b6ce7860a833ae2ca0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"changelog update"},{"commit":"82e0160de820ad2ed6143f58458711d600b929a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"refactor NO_COLOR test"},{"commit":"d03fb8b626a97e81006d0b108c8f400fe4e2ce3b","merge":"b300dfb 7933dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"b300dfb3d75fe76e2ddbb087ff742dd0b5e6155b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"Add support for NO_COLOR env variable"},{"commit":"a7de9111d97e687cafbc0709ec3ff7453d658a80","merge":"21e69a7 7933dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #183 from kellyjonbrazil/dev"},{"commit":"7933dfdbe7bf400833d6f6b771362dfc518b9a8d","merge":"f7cb5f7 21e69a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'master' into dev"},{"commit":"f7cb5f7d01ac01538bee4da816408072b585768e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"update date"},{"commit":"a26a298f1a3c141171e7d7ce459a27a297cec031","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":148,"deletions":1,"files":["README.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/iostat.md","lines_changed":15},{"name":"docs/parsers/iostat_s.md","lines_changed":126},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update"},{"commit":"dbd134d0dac2fc152183480958fd9e65919ac98d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat_s.py","lines_changed":6}]},"message":"add examples to docs"},{"commit":"11aa01b0d9d6913059f98f9bd7591d7cad9037cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":15,"insertions":15,"deletions":1,"files":["jc/parsers/iostat_s.py","tests/fixtures/centos-7.7/iostat-1-streaming.json","tests/fixtures/centos-7.7/iostat-m-streaming.json","tests/fixtures/centos-7.7/iostat-mx-streaming.json","tests/fixtures/centos-7.7/iostat-streaming.json","tests/fixtures/centos-7.7/iostat-x-streaming.json","tests/fixtures/ubuntu-18.04/iostat-1-streaming.json","tests/fixtures/ubuntu-18.04/iostat-m-streaming.json","tests/fixtures/ubuntu-18.04/iostat-mx-streaming.json","tests/fixtures/ubuntu-18.04/iostat-streaming.json","tests/fixtures/ubuntu-18.04/iostat-x-streaming.json","tests/fixtures/ubuntu-20.10/iostat-m-streaming.json","tests/fixtures/ubuntu-20.10/iostat-mx-streaming.json","tests/fixtures/ubuntu-20.10/iostat-streaming.json","tests/fixtures/ubuntu-20.10/iostat-x-streaming.json"],"file_stats":[{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iostat-1-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-m-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-mx-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-x-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-1-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-m-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-mx-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-x-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-m-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-mx-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-x-streaming.json","lines_changed":1}]},"message":"iostat-s tests"},{"commit":"6f18e5344356684e845ec63158c570d82156254f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":203,"deletions":0,"files":["tests/test_iostat_s.py"],"file_stats":[{"name":"tests/test_iostat_s.py","lines_changed":203}]},"message":"fix for null lines"},{"commit":"7b467c466568ad4e7986d4d7cf3ec606681b6d46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":137,"deletions":0,"files":["tests/fixtures/ubuntu-20.10/iostat-m.json","tests/fixtures/ubuntu-20.10/iostat-m.out","tests/fixtures/ubuntu-20.10/iostat-mx.json","tests/fixtures/ubuntu-20.10/iostat-mx.out","tests/fixtures/ubuntu-20.10/iostat-x.json","tests/fixtures/ubuntu-20.10/iostat-x.out","tests/fixtures/ubuntu-20.10/iostat.json","tests/fixtures/ubuntu-20.10/iostat.out","tests/test_iostat.py"],"file_stats":[{"name":"tests/fixtures/ubuntu-20.10/iostat-m.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-m.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-20.10/iostat-mx.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-mx.out","lines_changed":22},{"name":"tests/fixtures/ubuntu-20.10/iostat-x.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-x.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-20.10/iostat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat.out","lines_changed":22},{"name":"tests/test_iostat.py","lines_changed":47}]},"message":"add ubuntu 20.10 tests"},{"commit":"537b8f263087894c02b5b7c121765cf96182a370","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":4},{"name":"jc/parsers/iostat_s.py","lines_changed":4}]},"message":"add more int conversions"},{"commit":"4d823575e791999e200dedd491511c4fde64fc2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":4},{"name":"jc/parsers/iostat_s.py","lines_changed":4}]},"message":"add more float fields"},{"commit":"541aa1d09f20ff6979eabaa66790decb3895f18d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":68,"deletions":8,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":15},{"name":"jc/parsers/iostat_s.py","lines_changed":61}]},"message":"Add new field float conversions for iostat v11"},{"commit":"8f02021014b7b19acf1a8bbd777161aa82c65d66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat_s.py","lines_changed":1}]},"message":"formatting"},{"commit":"158a15157c7e5dde95dc21766d0696bd82486688","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"changelog update"},{"commit":"2752e0d66a9ba0b57ac86913fd302ada23c280c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":166,"deletions":0,"files":["jc/cli.py","jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/iostat_s.py","lines_changed":165}]},"message":"add iostat streaming parser"},{"commit":"6c11e912afe3c4d16da9199b5c2fc10461928ac3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"update changelog"},{"commit":"43d34461e27e3e4ac5f985786831c170b348c7c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":83,"insertions":279,"deletions":81,"files":["README.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/utils.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/dpkg_l.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/finger.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/gshadow.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iostat.md","lines_changed":172},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":22},{"name":"man/jc.1","lines_changed":7}]},"message":"update docs"},{"commit":"4dfdc9b0f65d8c950ed74545d0cc3f95c8abec6c","merge":"e2311cb 6665ffa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"e2311cbb03f407414df953c8d1c07d0cf1a549ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":400,"deletions":0,"files":["tests/fixtures/centos-7.7/iostat-1.json","tests/fixtures/centos-7.7/iostat-1.out","tests/fixtures/centos-7.7/iostat-m.json","tests/fixtures/centos-7.7/iostat-m.out","tests/fixtures/centos-7.7/iostat-mx.json","tests/fixtures/centos-7.7/iostat-mx.out","tests/fixtures/centos-7.7/iostat-x.json","tests/fixtures/centos-7.7/iostat-x.out","tests/fixtures/centos-7.7/iostat.json","tests/fixtures/centos-7.7/iostat.out","tests/fixtures/ubuntu-18.04/iostat-1.json","tests/fixtures/ubuntu-18.04/iostat-1.out","tests/fixtures/ubuntu-18.04/iostat-m.json","tests/fixtures/ubuntu-18.04/iostat-m.out","tests/fixtures/ubuntu-18.04/iostat-mx.json","tests/fixtures/ubuntu-18.04/iostat-mx.out","tests/fixtures/ubuntu-18.04/iostat-x.json","tests/fixtures/ubuntu-18.04/iostat-x.out","tests/fixtures/ubuntu-18.04/iostat.json","tests/fixtures/ubuntu-18.04/iostat.out","tests/test_iostat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/iostat-1.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-1.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/iostat-m.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-m.out","lines_changed":10},{"name":"tests/fixtures/centos-7.7/iostat-mx.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-mx.out","lines_changed":9},{"name":"tests/fixtures/centos-7.7/iostat-x.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-x.out","lines_changed":10},{"name":"tests/fixtures/centos-7.7/iostat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat.out","lines_changed":9},{"name":"tests/fixtures/ubuntu-18.04/iostat-1.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-1.out","lines_changed":77},{"name":"tests/fixtures/ubuntu-18.04/iostat-m.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-m.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-18.04/iostat-mx.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-mx.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/iostat-x.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-x.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/iostat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat.out","lines_changed":27},{"name":"tests/test_iostat.py","lines_changed":143}]},"message":"add iostat tests"},{"commit":"bf15575e90985cfec5c57dd11dfa2b86d53a41be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":7,"files":["jc/parsers/iostat.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":21}]},"message":"fixes for ubunut"},{"commit":"406336c7185b539b5e00532b58146d5b1b73f259","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":44,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":44}]},"message":"add iostat example"},{"commit":"6665ffaeb8107e9db3b917db0663beaf44024533","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"remove python 3.6 from tests"},{"commit":"dcf552ca0c69aa5f0309a83dc33dee7c5ed81292","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":138,"deletions":47,"files":["jc/parsers/iostat.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":185}]},"message":"add _process and cleanup"},{"commit":"7a6ebf3c9555dd82df7dc0b71981cdd32ce0061d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":171,"deletions":0,"files":["jc/cli.py","jc/parsers/iostat.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/iostat.py","lines_changed":170}]},"message":"add iostat parser"},{"commit":"d2dc4a983c86c538e13e568b908072de4ca0daaf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"changelog update"},{"commit":"1168259bc23862f671326d41f5282a3575205214","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":3}]},"message":"add doc strings"},{"commit":"e8e4b46021557fbf5776c32dff46de022817fb6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":14,"deletions":19,"files":["jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":5},{"name":"jc/parsers/foo_s.py","lines_changed":7},{"name":"jc/parsers/ls_s.py","lines_changed":7},{"name":"jc/parsers/ping_s.py","lines_changed":7},{"name":"jc/parsers/vmstat_s.py","lines_changed":7}]},"message":"use jc.utils type checks"},{"commit":"12d2de22821fd8f57f4d412e62f53db3d89d5e30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":77,"insertions":181,"deletions":165,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":4},{"name":"jc/parsers/airport.py","lines_changed":4},{"name":"jc/parsers/airport_s.py","lines_changed":4},{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/blkid.py","lines_changed":4},{"name":"jc/parsers/cksum.py","lines_changed":4},{"name":"jc/parsers/crontab.py","lines_changed":4},{"name":"jc/parsers/crontab_u.py","lines_changed":4},{"name":"jc/parsers/csv.py","lines_changed":4},{"name":"jc/parsers/date.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":5},{"name":"jc/parsers/dir.py","lines_changed":4},{"name":"jc/parsers/dmidecode.py","lines_changed":4},{"name":"jc/parsers/dpkg_l.py","lines_changed":4},{"name":"jc/parsers/du.py","lines_changed":4},{"name":"jc/parsers/env.py","lines_changed":4},{"name":"jc/parsers/file.py","lines_changed":4},{"name":"jc/parsers/finger.py","lines_changed":4},{"name":"jc/parsers/foo.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":4},{"name":"jc/parsers/fstab.py","lines_changed":4},{"name":"jc/parsers/group.py","lines_changed":4},{"name":"jc/parsers/gshadow.py","lines_changed":4},{"name":"jc/parsers/hash.py","lines_changed":4},{"name":"jc/parsers/hashsum.py","lines_changed":4},{"name":"jc/parsers/hciconfig.py","lines_changed":4},{"name":"jc/parsers/history.py","lines_changed":4},{"name":"jc/parsers/hosts.py","lines_changed":4},{"name":"jc/parsers/id.py","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":4},{"name":"jc/parsers/ini.py","lines_changed":4},{"name":"jc/parsers/iptables.py","lines_changed":4},{"name":"jc/parsers/iw_scan.py","lines_changed":4},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/last.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4},{"name":"jc/parsers/lsblk.py","lines_changed":4},{"name":"jc/parsers/lsmod.py","lines_changed":4},{"name":"jc/parsers/lsof.py","lines_changed":4},{"name":"jc/parsers/lsusb.py","lines_changed":4},{"name":"jc/parsers/mount.py","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":4},{"name":"jc/parsers/ntpq.py","lines_changed":4},{"name":"jc/parsers/passwd.py","lines_changed":4},{"name":"jc/parsers/ping.py","lines_changed":4},{"name":"jc/parsers/pip_list.py","lines_changed":4},{"name":"jc/parsers/pip_show.py","lines_changed":4},{"name":"jc/parsers/ps.py","lines_changed":4},{"name":"jc/parsers/route.py","lines_changed":4},{"name":"jc/parsers/rpm_qi.py","lines_changed":4},{"name":"jc/parsers/sfdisk.py","lines_changed":4},{"name":"jc/parsers/shadow.py","lines_changed":4},{"name":"jc/parsers/ss.py","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"jc/parsers/sysctl.py","lines_changed":4},{"name":"jc/parsers/systemctl.py","lines_changed":4},{"name":"jc/parsers/systemctl_lj.py","lines_changed":4},{"name":"jc/parsers/systemctl_ls.py","lines_changed":4},{"name":"jc/parsers/systemctl_luf.py","lines_changed":4},{"name":"jc/parsers/systeminfo.py","lines_changed":4},{"name":"jc/parsers/time.py","lines_changed":4},{"name":"jc/parsers/timedatectl.py","lines_changed":4},{"name":"jc/parsers/tracepath.py","lines_changed":4},{"name":"jc/parsers/traceroute.py","lines_changed":4},{"name":"jc/parsers/ufw.py","lines_changed":4},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":4},{"name":"jc/parsers/uname.py","lines_changed":4},{"name":"jc/parsers/upower.py","lines_changed":4},{"name":"jc/parsers/uptime.py","lines_changed":4},{"name":"jc/parsers/vmstat.py","lines_changed":4},{"name":"jc/parsers/w.py","lines_changed":4},{"name":"jc/parsers/wc.py","lines_changed":4},{"name":"jc/parsers/who.py","lines_changed":4},{"name":"jc/parsers/xml.py","lines_changed":4},{"name":"jc/parsers/yaml.py","lines_changed":4},{"name":"jc/utils.py","lines_changed":40}]},"message":"use jc.utils.input_type_check() and simplify compatibility check"},{"commit":"0e2fe401e1c49a9f947d7d17b72cfc4e90787f47","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]},"message":"version bump"},{"commit":"14247adb0ae007924ca551a706eb0cfdbae97a41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["jc/parsers/csv_s.py","tests/test_csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":7},{"name":"tests/test_csv_s.py","lines_changed":2}]},"message":"add input type checks"},{"commit":"3a9f0934c41c85ea7fa87165b9559f08814645cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":3,"files":["jc/parsers/ls_s.py","tests/test_ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":6},{"name":"tests/test_ls_s.py","lines_changed":2}]},"message":"add input type checks"},{"commit":"caf0a5c8713bf0d72951a2c6fd5a2c62c9eb59d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":4,"files":["jc/parsers/vmstat_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":9},{"name":"tests/test_vmstat_s.py","lines_changed":2}]},"message":"add input type checking"},{"commit":"cfb58b1cf3e3028f8e03fdd93f0165cf8d230e1e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":8}]},"message":"add input type checks"},{"commit":"975cf195cc02774f50460ca479d9ebb7b73c7870","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":1}]},"message":"formatting"},{"commit":"8a46a259a36efc55bb0b2141acb9dd5ae52b7725","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["jc/parsers/ping_s.py","tests/test_ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":8},{"name":"tests/test_ping_s.py","lines_changed":2}]},"message":"add input type checks"},{"commit":"e395142e599aa78b4a7ec80dcc3f8ccf279f97b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"caaeaf0d67cf44f8d2651cc53a7528d3ef0c74d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":76,"insertions":227,"deletions":227,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":6},{"name":"jc/parsers/airport.py","lines_changed":6},{"name":"jc/parsers/airport_s.py","lines_changed":6},{"name":"jc/parsers/arp.py","lines_changed":6},{"name":"jc/parsers/blkid.py","lines_changed":6},{"name":"jc/parsers/cksum.py","lines_changed":6},{"name":"jc/parsers/crontab.py","lines_changed":6},{"name":"jc/parsers/crontab_u.py","lines_changed":6},{"name":"jc/parsers/csv.py","lines_changed":6},{"name":"jc/parsers/date.py","lines_changed":6},{"name":"jc/parsers/df.py","lines_changed":6},{"name":"jc/parsers/dig.py","lines_changed":6},{"name":"jc/parsers/dir.py","lines_changed":6},{"name":"jc/parsers/dmidecode.py","lines_changed":6},{"name":"jc/parsers/dpkg_l.py","lines_changed":6},{"name":"jc/parsers/du.py","lines_changed":6},{"name":"jc/parsers/env.py","lines_changed":6},{"name":"jc/parsers/file.py","lines_changed":6},{"name":"jc/parsers/finger.py","lines_changed":6},{"name":"jc/parsers/foo.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":6},{"name":"jc/parsers/fstab.py","lines_changed":6},{"name":"jc/parsers/group.py","lines_changed":6},{"name":"jc/parsers/gshadow.py","lines_changed":6},{"name":"jc/parsers/hash.py","lines_changed":6},{"name":"jc/parsers/hashsum.py","lines_changed":6},{"name":"jc/parsers/hciconfig.py","lines_changed":6},{"name":"jc/parsers/history.py","lines_changed":6},{"name":"jc/parsers/hosts.py","lines_changed":6},{"name":"jc/parsers/id.py","lines_changed":6},{"name":"jc/parsers/ifconfig.py","lines_changed":6},{"name":"jc/parsers/ini.py","lines_changed":6},{"name":"jc/parsers/iptables.py","lines_changed":6},{"name":"jc/parsers/iw_scan.py","lines_changed":6},{"name":"jc/parsers/jobs.py","lines_changed":6},{"name":"jc/parsers/last.py","lines_changed":6},{"name":"jc/parsers/ls.py","lines_changed":6},{"name":"jc/parsers/lsblk.py","lines_changed":6},{"name":"jc/parsers/lsmod.py","lines_changed":6},{"name":"jc/parsers/lsof.py","lines_changed":6},{"name":"jc/parsers/lsusb.py","lines_changed":6},{"name":"jc/parsers/mount.py","lines_changed":6},{"name":"jc/parsers/netstat.py","lines_changed":6},{"name":"jc/parsers/ntpq.py","lines_changed":6},{"name":"jc/parsers/passwd.py","lines_changed":6},{"name":"jc/parsers/ping.py","lines_changed":6},{"name":"jc/parsers/pip_list.py","lines_changed":6},{"name":"jc/parsers/pip_show.py","lines_changed":6},{"name":"jc/parsers/ps.py","lines_changed":6},{"name":"jc/parsers/route.py","lines_changed":6},{"name":"jc/parsers/rpm_qi.py","lines_changed":6},{"name":"jc/parsers/sfdisk.py","lines_changed":6},{"name":"jc/parsers/shadow.py","lines_changed":6},{"name":"jc/parsers/ss.py","lines_changed":6},{"name":"jc/parsers/stat.py","lines_changed":6},{"name":"jc/parsers/sysctl.py","lines_changed":6},{"name":"jc/parsers/systemctl.py","lines_changed":6},{"name":"jc/parsers/systemctl_lj.py","lines_changed":6},{"name":"jc/parsers/systemctl_ls.py","lines_changed":6},{"name":"jc/parsers/systemctl_luf.py","lines_changed":6},{"name":"jc/parsers/systeminfo.py","lines_changed":6},{"name":"jc/parsers/time.py","lines_changed":6},{"name":"jc/parsers/timedatectl.py","lines_changed":6},{"name":"jc/parsers/tracepath.py","lines_changed":6},{"name":"jc/parsers/traceroute.py","lines_changed":6},{"name":"jc/parsers/ufw.py","lines_changed":6},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":6},{"name":"jc/parsers/uname.py","lines_changed":6},{"name":"jc/parsers/upower.py","lines_changed":6},{"name":"jc/parsers/uptime.py","lines_changed":6},{"name":"jc/parsers/vmstat.py","lines_changed":6},{"name":"jc/parsers/w.py","lines_changed":6},{"name":"jc/parsers/wc.py","lines_changed":6},{"name":"jc/parsers/who.py","lines_changed":6},{"name":"jc/parsers/xml.py","lines_changed":6},{"name":"jc/parsers/yaml.py","lines_changed":6}]},"message":"add 'str' type check on input"},{"commit":"21e69a7cbf62240238f6fb78e874dda6ce2e922a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"],"file_stats":[{"name":".gitignore","lines_changed":1}]},"message":"ignore _config.yml"},{"commit":"603964935b58e02cf0614cf67ffacc6d94755e05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"remove trailing whitespace"},{"commit":"47eb83ae55b9892716fff712bd2be21b6191b552","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"],"file_stats":[{"name":".gitignore","lines_changed":1}]},"message":"add .vscode"},{"commit":"fc0ce6c95923ab124961e695a26c0b68dd0f359f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add streaming parser to custom parsers info"},{"commit":"077a29fb4eedcfccb026498c5c3a64b7b7601363","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":2,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":8},{"name":"jc/parsers/csv_s.py","lines_changed":8}]},"message":"add _jc_meta field info"},{"commit":"8568d0d328706a7a5b1476452e078d8cbe7b7391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":3,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":4},{"name":"jc/parsers/csv_s.py","lines_changed":4},{"name":"man/jc.1","lines_changed":2}]},"message":"fix csv_s documentation"},{"commit":"597d39c28ea0c0fe3b072413e9d91ab5e27b62bd","merge":"b59e38c eb888dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #180 from kellyjonbrazil/dev"},{"commit":"eb888dcbbcf83c9197bd59aab72f65ea6eb622ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["jc/__init__.py","man/jc.1","setup.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"d1b9ac0841b15ee15690c4066453a322618320ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/df.md","docs/parsers/netstat.md","docs/parsers/ping.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"89a6d9c5c39b74f1b040f410659bfd7ae1a902d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":5}]},"message":"add key-check to restore previous behavior even with non-df data"},{"commit":"85d983761637129cb85abfb0bbdde7c507061cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add df info"},{"commit":"cd7731484d826d84d835ecd460d746e78cadc5fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":62,"deletions":2,"files":["jc/parsers/df.py","tests/fixtures/generic/df-long-filesystem.json","tests/fixtures/generic/df-long-filesystem.out","tests/test_df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":47},{"name":"tests/fixtures/generic/df-long-filesystem.json","lines_changed":1},{"name":"tests/fixtures/generic/df-long-filesystem.out","lines_changed":4},{"name":"tests/test_df.py","lines_changed":12}]},"message":"fix for cases where the Filesystem data overflows the column length (happens on older versions of df)"},{"commit":"086da16b1743c16a5ccdd102f889fb31f99e3caa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":2}]},"message":"version bump"},{"commit":"20830528f04a5ecbe78420d8008249b089667767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":28,"deletions":0,"files":["CHANGELOG","tests/fixtures/generic/netstat-old.json","tests/fixtures/generic/netstat-old.out","tests/test_netstat.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"tests/fixtures/generic/netstat-old.json","lines_changed":1},{"name":"tests/fixtures/generic/netstat-old.out","lines_changed":14},{"name":"tests/test_netstat.py","lines_changed":12}]},"message":"add test for older netstat version fix"},{"commit":"83371edd8fe3d23dfa92fc707604086522c85ab9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat_linux.py"],"file_stats":[{"name":"jc/parsers/netstat_linux.py","lines_changed":2}]},"message":"add space before inode to compensate for removed dash"},{"commit":"364a81decc16742e3caa070d90b1d605d96fe2c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":2}]},"message":"version bump"},{"commit":"ef09592ad3e5c9a77c1bdebe8f876fc4dde54834","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"update for 1.17.2"},{"commit":"4a86e109ccb254d5195b782f84f3967c96ef726c","merge":"5ba22da 7fa5391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #179 from shaikustin/ping-alpine-linux"},{"commit":"7fa5391b6613e62689c624041e03f9750c9c7972","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_ping.py"],"file_stats":[{"name":"tests/test_ping.py","lines_changed":2}]},"message":"change alpine ping6 to ping"},{"commit":"9b53ba5714819ff760f2d4546f5d2ee4d521c080","author":"shaik","author_email":"shai.kustin@torq.io","stats":{"files_changed":6,"insertions":45,"deletions":1,"files":["jc/parsers/ping.py",".../fixtures/alpine-linux-3.13/ping-hostname.json","tests/fixtures/alpine-linux-3.13/ping-hostname.out","tests/fixtures/alpine-linux-3.13/ping-ip.json","tests/fixtures/alpine-linux-3.13/ping-ip.out","tests/test_ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":2},{"name":".../fixtures/alpine-linux-3.13/ping-hostname.json","lines_changed":1},{"name":"tests/fixtures/alpine-linux-3.13/ping-hostname.out","lines_changed":9},{"name":"tests/fixtures/alpine-linux-3.13/ping-ip.json","lines_changed":1},{"name":"tests/fixtures/alpine-linux-3.13/ping-ip.out","lines_changed":6},{"name":"tests/test_ping.py","lines_changed":27}]},"message":"support alpine linux ping"},{"commit":"b59e38cfd2c8a7f5868e05d5562557b1c27e5e56","merge":"30cff5f 5ba22da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #176 from kellyjonbrazil/dev"},{"commit":"5ba22dae597b9d154ca0a82f71cfbd8d8a6325db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2}]},"message":"add JSON lines info"},{"commit":"4232e523acc523e510b4881d2a57a95b88ec8c8b","merge":"bee80b3 30cff5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'master' into dev"},{"commit":"bee80b35d2b8c15e6233f2798e9c02a11e9e1e9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["CHANGELOG","docs/parsers/csv_s.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":8},{"name":"man/jc.1","lines_changed":2}]},"message":"update for version bump"},{"commit":"c32395f6950d6294770ee93e8bf4d79c7d275ac3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":2}]},"message":"linting"},{"commit":"735c5e1078cc27b5cba03b8ebbae15aeca6b8fbd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["tests/test_csv_s.py"],"file_stats":[{"name":"tests/test_csv_s.py","lines_changed":5}]},"message":"update comments for ParseError test: https://bugs.python.org/issue45617"},{"commit":"d09c94b292ca3beec92a00f8a51b7259dd30a1e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add python 3.10 testing info"},{"commit":"4d04866f48f72b9ea0d213dc1533729d3b68a503","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":1}]},"message":"add python bug https://bugs.python.org/issue45617 info"},{"commit":"a2d90f4dfcdc2cb00c6c0fa957493c95a21e256b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_csv_s.py"],"file_stats":[{"name":"tests/test_csv_s.py","lines_changed":2}]},"message":"force test"},{"commit":"93a5002c8b530bd6f5f81e5d8595cde1f836ae41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"fix 3.10.0 version number"},{"commit":"23bf5227a4c39ea017e55fc21150331e1af6fdb7","merge":"77c96fa 3f5a1f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"77c96fa2a96148221bde7d2274e0dfb5386a166f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["tests/test_csv_s.py"],"file_stats":[{"name":"tests/test_csv_s.py","lines_changed":3}]},"message":"try tests on python 3.10"},{"commit":"3f5a1f015e9c0807e227b9f7300592e25502e014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"add python 3.10"},{"commit":"b280c4fc18e60a85ab212b09aa5bf3a05a0eceff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":11,"deletions":19,"files":[".../fixtures/generic/csv-insurance-streaming.json","tests/test_csv_s.py"],"file_stats":[{"name":".../fixtures/generic/csv-insurance-streaming.json","lines_changed":1},{"name":"tests/test_csv_s.py","lines_changed":29}]},"message":"add ParseError test to streaming csv parser"},{"commit":"3ab9b43a2eebf535be98c94810ac474bf32ec515","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":14}]},"message":"raise ParseError on newline bug"},{"commit":"46f568414a5c8d2f135486e86d0ada48cfcefeb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":96,"deletions":89,"files":["tests/test_ls_s.py","tests/test_ping_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"tests/test_ls_s.py","lines_changed":26},{"name":"tests/test_ping_s.py","lines_changed":138},{"name":"tests/test_vmstat_s.py","lines_changed":21}]},"message":"change streaming parser test names"},{"commit":"cba2fd299fff09a551b780e064a6e22bdf7e539a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":75,"deletions":61,"files":[".../generic/csv-10k-sales-records-streaming.json","tests/fixtures/generic/csv-deniro-streaming.json","tests/fixtures/generic/csv-example-streaming.json","tests/fixtures/generic/csv-flyrna-streaming.json","tests/fixtures/generic/csv-flyrna2-streaming.json",".../fixtures/generic/csv-homes-pipe-streaming.json","tests/fixtures/generic/csv-homes-streaming.json",".../fixtures/generic/csv-insurance-streaming.json","tests/test_csv_s.py"],"file_stats":[{"name":".../generic/csv-10k-sales-records-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-deniro-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-example-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna2-streaming.json","lines_changed":1},{"name":".../fixtures/generic/csv-homes-pipe-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-homes-streaming.json","lines_changed":1},{"name":".../fixtures/generic/csv-insurance-streaming.json","lines_changed":1},{"name":"tests/test_csv_s.py","lines_changed":128}]},"message":"add tests"},{"commit":"1e6e44f656f1bbb277eb38fb485f7b48e3b9e40b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":5}]},"message":"fix for piping data with non-platform newlines (e.g. windows csv files on unix)"},{"commit":"acac0399946d9781193e9350dd7109f1dd3999fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":149,"deletions":0,"files":["tests/fixtures/generic/csv-biostats-streaming.json","tests/fixtures/generic/csv-cities-streaming.json","tests/test_csv_s.py"],"file_stats":[{"name":"tests/fixtures/generic/csv-biostats-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-cities-streaming.json","lines_changed":1},{"name":"tests/test_csv_s.py","lines_changed":147}]},"message":"working tests"},{"commit":"50a3b340164b3139f04f67a2bee16e5343c8a2da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":8,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":13}]},"message":"optimizations and use iter() so we can exhaust data coming from list objects"},{"commit":"b45396070cf28fa36ecb44acd7be3e3bb81a712d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_vmstat_s.py"],"file_stats":[{"name":"tests/test_vmstat_s.py","lines_changed":2}]},"message":"update comment"},{"commit":"218b9aec8ac397e26e6cd4ff407f3d10ef88ea9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":87,"deletions":48,"files":["README.md","docs/parsers/csv_s.md","jc/parsers/csv_s.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/csv_s.md","lines_changed":75},{"name":"jc/parsers/csv_s.py","lines_changed":52},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update for streaming CSV parser"},{"commit":"2b887debc647bd533040e392465967d12869cb02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":10172,"deletions":1,"files":["CHANGELOG","jc/cli.py","jc/parsers/csv_s.py","tests/fixtures/generic/csv-10k-sales-records.csv"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/csv_s.py","lines_changed":168},{"name":"tests/fixtures/generic/csv-10k-sales-records.csv","lines_changed":10001}]},"message":"add csv streaming parser"},{"commit":"0313e3f8ca0e22e1575192d765d5afedf48e94df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":6,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":15}]},"message":"linting"},{"commit":"1669e6e20c3af3d28968558b76d0901a56775ac0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":28,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":51}]},"message":"linting"},{"commit":"ef6de75dda90c7221d53e0e0a942f0cac2247354","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":4}]},"message":"add vmstat timestamp tests to utils"},{"commit":"a6bcec425a3f44ba3c7cd06b5ebaf522b66df109","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":2}]},"message":"comment update"},{"commit":"596ad9a64d002ced212b08512126e52707fe73d2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":2}]},"message":"update comment"},{"commit":"7a91c93319f75c37ba6bf268d8270947f0bf8b22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":122,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":122}]},"message":"add lsusb"},{"commit":"b5f7b35f89197879a9f13bd8fa5d2a0c77cc059a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":2}]},"message":"comment update"},{"commit":"2f47fb7f14c4ff0e1c835897d94ee81d14590aba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["tests/test_uname.py"],"file_stats":[{"name":"tests/test_uname.py","lines_changed":5}]},"message":"fix ParseError tests"},{"commit":"1b214c403657a50689f2a04892ce836dea669a1d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":30,"deletions":0,"files":["jc/parsers/lsusb.py","tests/fixtures/generic/lsusb-t.out","tests/test_lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":5},{"name":"tests/fixtures/generic/lsusb-t.out","lines_changed":15},{"name":"tests/test_lsusb.py","lines_changed":10}]},"message":"raise ParseError if -t option is detected. add test"},{"commit":"8f94f8acc6bb53bbb19ba150551c7df2183a8863","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":384,"deletions":3,"files":["README.md","docs/parsers/file.md","docs/parsers/lsusb.md","docs/parsers/uname.md","man/jc.1","tests/fixtures/centos-7.7/lsusb-v-single.json","tests/fixtures/centos-7.7/lsusb-v.json","tests/fixtures/centos-7.7/lsusb.json","tests/fixtures/generic/lsusb-test-attributes.json","tests/fixtures/generic/lsusb-test-attributes2.json","tests/test_lsusb.py"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":288},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"man/jc.1","lines_changed":7},{"name":"tests/fixtures/centos-7.7/lsusb-v-single.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsusb-v.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsusb.json","lines_changed":1},{"name":"tests/fixtures/generic/lsusb-test-attributes.json","lines_changed":1},{"name":"tests/fixtures/generic/lsusb-test-attributes2.json","lines_changed":1},{"name":"tests/test_lsusb.py","lines_changed":82}]},"message":"add tests and update docs"},{"commit":"3a2a69cfa55e2f40d7536d923170a5cfc986998e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":4}]},"message":"formatting"},{"commit":"f599c659881248b79c6dbc86d85a61311c9d3434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":464,"deletions":0,"files":["tests/fixtures/generic/lsusb-test-attributes.out","tests/fixtures/generic/lsusb-test-attributes2.out"],"file_stats":[{"name":"tests/fixtures/generic/lsusb-test-attributes.out","lines_changed":116},{"name":"tests/fixtures/generic/lsusb-test-attributes2.out","lines_changed":348}]},"message":"add stress test examples"},{"commit":"ad12849fd9fc2177afb30740acc63cf284dc394b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":138,"deletions":26,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":164}]},"message":"update docs example and"},{"commit":"f36b3789e8df6673207d6c2d3d0796acfdfe011d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":4}]},"message":"formatting"},{"commit":"6d18c0ba61cd188dbff736f1be47b7362c841687","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":47,"deletions":47,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":94}]},"message":"change variable name last_attribute and last_attr to last_item"},{"commit":"17097abec9567a58b5a5f7bbed11ecfd69cbd28c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":6,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":8}]},"message":"formatting"},{"commit":"b7ddd3b285f205211394edc70b611171cf72a4c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":22,"deletions":22,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":44}]},"message":"change variable names"},{"commit":"75b23f62c9d7b33907af92964d1a6234332fbc78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":35,"deletions":7,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":42}]},"message":"working configuration_descriptor and device_descriptor attributes"},{"commit":"f88967b2a59d79e053554d1e141f71e9d2d87456","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":126,"deletions":21,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":147}]},"message":"add attribute lists up to interface_association"},{"commit":"ba2846664b35b2e94aa905431c55c029b24a64e3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":22,"deletions":2,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":24}]},"message":"edpoint_descriptors attributes working"},{"commit":"10dba37ca2624e05eff246ef49df8ebd3f275d86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":28,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":29}]},"message":"hub_descriptor attributes working"},{"commit":"0e6f938514965503f1d86d56c047f9f8fc03ac65","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":36,"deletions":45,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":81}]},"message":"working hub_port_status section"},{"commit":"159d87c1126f4d79d5e34837bc2c353a5445803b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":18,"deletions":7,"files":["jc/parsers/uname.py","tests/fixtures/centos-7.7/uname.out","tests/test_uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":11},{"name":"tests/fixtures/centos-7.7/uname.out","lines_changed":1},{"name":"tests/test_uname.py","lines_changed":13}]},"message":"add length guard and test for uname with no -a on linux"},{"commit":"9e7b1621cf232e9859bdf018737e536820f380a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":18,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":36}]},"message":"device_status working"},{"commit":"2057817ef8fec85b2a978b682e7fe8bc16def828","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":89,"deletions":0,"files":["tests/fixtures/debian10/uname-a.json","tests/fixtures/debian10/uname-a.out","tests/fixtures/freebsd12/uname-a.json","tests/fixtures/freebsd12/uname-a.out","tests/fixtures/freebsd12/uname-a2.json","tests/fixtures/freebsd12/uname-a2.out","tests/fixtures/generic/uname-a-different-proc.json","tests/fixtures/generic/uname-a-different-proc.out","tests/fixtures/generic/uname-a.json","tests/fixtures/generic/uname-a.out","tests/test_uname.py"],"file_stats":[{"name":"tests/fixtures/debian10/uname-a.json","lines_changed":10},{"name":"tests/fixtures/debian10/uname-a.out","lines_changed":2},{"name":"tests/fixtures/freebsd12/uname-a.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/uname-a.out","lines_changed":2},{"name":"tests/fixtures/freebsd12/uname-a2.json","lines_changed":7},{"name":"tests/fixtures/freebsd12/uname-a2.out","lines_changed":2},{"name":"tests/fixtures/generic/uname-a-different-proc.json","lines_changed":1},{"name":"tests/fixtures/generic/uname-a-different-proc.out","lines_changed":1},{"name":"tests/fixtures/generic/uname-a.json","lines_changed":1},{"name":"tests/fixtures/generic/uname-a.out","lines_changed":2},{"name":"tests/test_uname.py","lines_changed":60}]},"message":"add uname tests"},{"commit":"a1eabad2d37bb0d0e9407edf7305e223eba67da2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":6}]},"message":"add comments"},{"commit":"92bf2b1ca2a172d3977d6e3c36b5ca1a8c2bab63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":20,"files":["CHANGELOG","jc/parsers/uname.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":26}]},"message":"simplify fixup logic for uname"},{"commit":"2b2123a4ba9b77d2089d367fe85dcb5d2857a295","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","jc/parsers/uname.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/parsers/uname.py","lines_changed":4}]},"message":"add FreeBSD support"},{"commit":"908b2f9200ddcce4beb531a3c90908786b6a5b02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"add items"},{"commit":"deff0c7bfdf942b8d7e7bd140219e08bf80a50cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":5,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":6}]},"message":"remove print debug"},{"commit":"7cd01efa64029775042a2c145997ce30ef6b4f6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":25,"deletions":1,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":26}]},"message":"fixup for cases where the 'process' and/or 'machine' fields are blank on linux"},{"commit":"2dbe56456bbea2bdfce7eacbf8b9f10a1b249f55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":49,"deletions":39,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":88}]},"message":"add nested_dict. start work on hub_port_status and device_status"},{"commit":"6078a411ef612be8bad012aa404f34ebd74a1fd7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":79,"deletions":4,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":83}]},"message":"add initial schema doc"},{"commit":"4a3656562f161a51f5cb6f0e9ccd271859b78d62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":6}]},"message":"del null keys"},{"commit":"ba75989a24839907723ed7c3d7a497473d489a34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":10}]},"message":"update comments"},{"commit":"9e9e2c362894f0072ab839565829881d750c8912","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":4}]},"message":"move state instantiation before has_data test"},{"commit":"9a2a8c6b61a46a9bfb5a4492b86774a4a78672ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":52,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":72}]},"message":"shorten set_sections"},{"commit":"dae42ef1619441637672d634f9e5d7ab26115f09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":19}]},"message":"add hub_port_status and device_status"},{"commit":"931f2cab78bda180443535c04b532d04c6e88dd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":11,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":25}]},"message":"add hub_descriptor"},{"commit":"72b061bed4453686d264ccf8977cba6c2a4794ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":32,"deletions":8,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":40}]},"message":"add endpoint_descriptors"},{"commit":"29a7c73990d9620b15a4010d17fc9a9a859f44b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":16}]},"message":"add hid_device_descriptor and report_descriptors"},{"commit":"2d1d68e3007f76d4c34ac07ae822935ab6021e79","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":87,"deletions":88,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":175}]},"message":"simplify populate_lists. Add CDC lists"},{"commit":"c5c1e170d1f502de5c76e9e481a23b26ffcaf237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":111,"deletions":76,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":187}]},"message":"interface descriptors working"},{"commit":"9c1bb66452838e704ef2277f313bb51a42dc03b9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":18}]},"message":"fix remove _state field during schema_populate"},{"commit":"a4f3306bae90fbc807fdd9ff2ce71e25d36a663f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":69,"deletions":28,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":97}]},"message":"initial schema build. need to figure out why deleting _state from output_line causes exceptions"},{"commit":"1bc638b6ee7a820406ba4b84d3408f7cd4fe779d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":36,"deletions":32,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":68}]},"message":"add bus_list and add all device_list data to the list"},{"commit":"9ad0cd9dae8822235c37159541ce72471eb4263e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":116,"deletions":211,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":327}]},"message":"now storing state within the objects to make building the schema (later) easier."},{"commit":"6d4a4691276d8659253b2ac8f8bdbd71a1fece7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":356,"deletions":333,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":689}]},"message":"use class for state"},{"commit":"ed6997e3ff2e575a6d4daa7d7a2cbe7dddacdd4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":170,"deletions":34,"files":["jc/parsers/lsusb.py","tests/fixtures/centos-7.7/lsusb-v-single.out"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":104},{"name":"tests/fixtures/centos-7.7/lsusb-v-single.out","lines_changed":100}]},"message":"add interface_association section"},{"commit":"eb788fca6e25eea1fa8a43b22360c852ecf5af35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":919,"deletions":0,"files":["jc/cli.py","jc/parsers/lsusb.py","tests/fixtures/centos-7.7/lsusb-v.out","tests/fixtures/centos-7.7/lsusb.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/lsusb.py","lines_changed":404},{"name":"tests/fixtures/centos-7.7/lsusb-v.out","lines_changed":509},{"name":"tests/fixtures/centos-7.7/lsusb.out","lines_changed":5}]},"message":"somewhat working lsusb parser. needs a lot more TLC"},{"commit":"9186f5f37739012b8c04c776310a20ef55b1469f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":99,"deletions":4,"files":["CHANGELOG","jc/__init__.py","jc/parsers/file.py","setup.py","tests/fixtures/osx-10.14.6/file3.json","tests/fixtures/osx-10.14.6/file3.out","tests/test_file.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":11},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/file3.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/file3.out","lines_changed":72},{"name":"tests/test_file.py","lines_changed":12}]},"message":"fix file parser for gzip cases (has ': ' in the description, which is the delimiter)"},{"commit":"30cff5f28140a5b20a617c8145c13e43b7b6685b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":17,"deletions":3,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":4},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":4},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"add note that the streaming parser outputs JSON Lines"},{"commit":"b724e0969a0d6b22bed0c77eb8d629381179ea3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2}]},"message":"-qq instead of -q"},{"commit":"a62c49e8715873b068a96da5021ea24a783acd6b","merge":"77dcbc5 9b160f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #172 from kellyjonbrazil/master"},{"commit":"9b160f6279bbbf0c15413c98922eef137ba2f3f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]},"message":"link update"},{"commit":"338a4e2612f70bb3e2af31f61a7db75f647293fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]},"message":"formatting"},{"commit":"0140688750be61dd752059ee66734ab1c7a8f30e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":8,"deletions":4,"files":["README.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"link updates"},{"commit":"73e5ea98c1ca2b9299085e3832791162eca3b9ff","merge":"528aac7 77dcbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #170 from kellyjonbrazil/dev"},{"commit":"77dcbc544da271edab5de5ad209117e98c846f9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":2,"deletions":3,"files":["CHANGELOG","jc/__init__.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"final doc update"},{"commit":"c7bcb0947ae32acc9cdba7a6975d2f2557f10a39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":4}]},"message":"indent subsequent error and warning lines"},{"commit":"5cd3f7f71d38b560a88dd6057e9c7a94991a3d71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":6}]},"message":"Add example to raise ParseError if there is no output data to yield"},{"commit":"5044388ab2e8d7d8b427fd51b0ab875611bd127f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":3,"files":["jc/parsers/vmstat_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":6},{"name":"tests/test_vmstat_s.py","lines_changed":3}]},"message":"raise if line data is unrecognized"},{"commit":"ee075db59819d80e4dcb60ddbd9cfe2fd529dfe9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":5,"deletions":7,"files":["jc/cli.py","jc/parsers/foo_s.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":5},{"name":"jc/parsers/vmstat_s.py","lines_changed":3}]},"message":"linting"},{"commit":"9904e0be61e7c81b907bf3770f111346daeff481","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":2},{"name":"jc/utils.py","lines_changed":2}]},"message":"formatting"},{"commit":"31b69b3242eeca2c02f87c31d58193dd3f06fe49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":6},{"name":"jc/utils.py","lines_changed":6}]},"message":"formatting"},{"commit":"e6a80fea3228122dd84e17672c835c0460ad1342","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":7,"files":["docs/utils.md","jc/utils.py","man/jc.1"],"file_stats":[{"name":"docs/utils.md","lines_changed":6},{"name":"jc/utils.py","lines_changed":6},{"name":"man/jc.1","lines_changed":2}]},"message":"formatting"},{"commit":"d6aec00e038d1ecfe43c13a6909d50630455b372","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":27,"deletions":1,"files":["tests/fixtures/ubuntu-18.04/vmstat-1-long-streaming.json","tests/fixtures/ubuntu-18.04/vmstat-1-long.json","tests/test_vmstat.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"tests/fixtures/ubuntu-18.04/vmstat-1-long-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/vmstat-1-long.json","lines_changed":1},{"name":"tests/test_vmstat.py","lines_changed":12},{"name":"tests/test_vmstat_s.py","lines_changed":14}]},"message":"add vmstat-1-long tests"},{"commit":"4aa7d81e11ea7fcfbb5c9d74337cde617b1a0d5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":50,"deletions":2,"files":["jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","tests/fixtures/ubuntu-18.04/vmstat-1-long.out"],"file_stats":[{"name":"jc/parsers/vmstat.py","lines_changed":3},{"name":"jc/parsers/vmstat_s.py","lines_changed":7},{"name":"tests/fixtures/ubuntu-18.04/vmstat-1-long.out","lines_changed":42}]},"message":"ignore re-printed header rows in output"},{"commit":"48cdabc3b0862d6291e1ec59ab385e0e146c31eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":16,"deletions":0,"files":["docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/vmstat.md","lines_changed":4},{"name":"docs/parsers/vmstat_s.md","lines_changed":4},{"name":"jc/parsers/vmstat.py","lines_changed":4},{"name":"jc/parsers/vmstat_s.py","lines_changed":4}]},"message":"document timestamps"},{"commit":"a1791ef5479749692c79bbe98fc7687d70cd6cda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2}]},"message":"linting"},{"commit":"7bc87f6c2d4cfcfa656a1c1b8973a4c0414c85d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":8,"deletions":8,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"change _meta to _jc_meta"},{"commit":"bbed9e274b8252ba0518140fe7fc97029310771f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":154,"deletions":159,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":313}]},"message":"linting"},{"commit":"486282b9856f5e56cf43ee1399d8e7cb78353b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":10}]},"message":"linting"},{"commit":"a4d45b653f794033978940da14910f5d607a8254","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["jc/parsers/foo_s.py","jc/parsers/vmstat.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":8}]},"message":"linting"},{"commit":"22e151b01c0f97c141d912c9646e46df0320d622","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":56,"deletions":60,"files":["jc/cli.py","jc/utils.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":88},{"name":"jc/utils.py","lines_changed":28}]},"message":"linting"},{"commit":"7a4ebcd1ecdb4929aae70e44b4f9b6b5ab52b393","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":4}]},"message":"language hints"},{"commit":"651cbfe02fbb354c4caf8e0d022655642e7caed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"add streaming foo parser"},{"commit":"8c3e764516e1c28961b09380b638a57ce98b1261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add streaming parser to contrib guidelines"},{"commit":"b4e75da7e3f23502723ce8b2a7261b376f296864","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"templates/readme_template","lines_changed":4}]},"message":"formatting"},{"commit":"37223f086cabc8db5962415bd161fed151dafb9d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":5},{"name":"templates/readme_template","lines_changed":5}]},"message":"formatting"},{"commit":"a404033735c2c8075a8e08194197eae59db70afd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add error and warning message wrap info"},{"commit":"b7433ed085c0ba22ea0d49330871a651a8d83fb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":80,"deletions":41,"files":["docs/utils.md","jc/cli.py","jc/parsers/file.py","jc/parsers/ls.py","jc/parsers/traceroute.py","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":16},{"name":"jc/cli.py","lines_changed":39},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":60}]},"message":"auto wrap warning and error messages"},{"commit":"224d3d65ada4216e28e142d411b0c2c3358517b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"Add exception class name to error message"},{"commit":"a349fb0bdabaf74503831f22c4efbd02254f809d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":10,"deletions":8,"files":["README.md","docs/utils.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"docs/utils.md","lines_changed":6},{"name":"man/jc.1","lines_changed":6}]},"message":"change _meta to _jc_meta"},{"commit":"e7ddcfb83fb295034db44ade407476ff3a962cd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":14,"deletions":12,"files":["jc/utils.py","templates/manpage_template","templates/readme_template",".../centos-7.7/ping-ip-O-streaming-ignore-exceptions.json","tests/test_ping_s.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":10},{"name":"templates/manpage_template","lines_changed":6},{"name":"templates/readme_template","lines_changed":6},{"name":".../centos-7.7/ping-ip-O-streaming-ignore-exceptions.json","lines_changed":2},{"name":"tests/test_ping_s.py","lines_changed":2}]},"message":"change _meta to _jc_meta"},{"commit":"abd20dfe3662f65373ac582c70aa740e53b52f68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"templates/manpage_template","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting"},{"commit":"dc1fd3ef1be41aee349b159059f1febff76f6caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":12,"deletions":12,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"man/jc.1","lines_changed":6},{"name":"templates/manpage_template","lines_changed":6},{"name":"templates/readme_template","lines_changed":6}]},"message":"fix -qq docs"},{"commit":"98a7686db46fbd3ed98382867976249f307d0015","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":18,"insertions":160,"deletions":152,"files":["README.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","docs/utils.md","jc/cli.py","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","jc/utils.py","man/jc.1","templates/manpage_template","templates/readme_template","... => ping-ip-O-streaming-ignore-exceptions.json}","tests/test_ls_s.py","tests/test_ping_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":9},{"name":"docs/parsers/ping_s.md","lines_changed":9},{"name":"docs/parsers/vmstat_s.md","lines_changed":9},{"name":"docs/utils.md","lines_changed":6},{"name":"jc/cli.py","lines_changed":23},{"name":"jc/parsers/foo_s.py","lines_changed":13},{"name":"jc/parsers/ls_s.py","lines_changed":13},{"name":"jc/parsers/ping_s.py","lines_changed":13},{"name":"jc/parsers/vmstat_s.py","lines_changed":13},{"name":"jc/utils.py","lines_changed":12},{"name":"man/jc.1","lines_changed":4},{"name":"templates/manpage_template","lines_changed":4},{"name":"templates/readme_template","lines_changed":2},{"name":"... => ping-ip-O-streaming-ignore-exceptions.json}","lines_changed":0},{"name":"tests/test_ls_s.py","lines_changed":24},{"name":"tests/test_ping_s.py","lines_changed":140},{"name":"tests/test_vmstat_s.py","lines_changed":16}]},"message":"use -qq to ignore streaming exceptions"},{"commit":"9c6c6c4330fc68115be012de254161f36e3a8328","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add next() info"},{"commit":"f9be5651daa891e06ad0acd8980ffc0fe51fd29d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":6,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":5},{"name":"templates/readme_template","lines_changed":5}]},"message":"add language hints"},{"commit":"df9835a3e62bb2b3b6ec8b55f06a25a00a799d92","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting"},{"commit":"92363be2dd633bdd3c2dd07c72ebd281d2cb4565","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"templates/readme_template","lines_changed":3}]},"message":"fix streaming python module example"},{"commit":"31b62030156f9c826fe5c7d127e9dd0ace582dd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"templates/readme_template","lines_changed":6}]},"message":"formatting"},{"commit":"18805858d685d456f9a38540bbaedbaa1a411546","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":4},{"name":"templates/manpage_template","lines_changed":2}]},"message":"formatting"},{"commit":"e676f0e20fb6e96a536c4d182b0d287cdc1ad0f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":36,"deletions":6,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":21},{"name":"templates/readme_template","lines_changed":21}]},"message":"add streaming parser info for python module use"},{"commit":"20652edefaa7705b8ba756bae3944ff362a295a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":7}]},"message":"update changelog"},{"commit":"98c29d07478093e78f53ec633f2dd08cafc3e3ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":120,"deletions":0,"files":["tests/fixtures/centos-7.7/vmstat-a.json","tests/fixtures/centos-7.7/vmstat-at-5-10.json","tests/fixtures/centos-7.7/vmstat-awt.json","tests/fixtures/centos-7.7/vmstat-d.json","tests/fixtures/centos-7.7/vmstat-dt.json","tests/fixtures/centos-7.7/vmstat-w.json","tests/fixtures/centos-7.7/vmstat.json","tests/test_vmstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/vmstat-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-at-5-10.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-awt.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-d.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-dt.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-w.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat.json","lines_changed":1},{"name":"tests/test_vmstat.py","lines_changed":113}]},"message":"add vmstat tests"},{"commit":"41a6311f6b3ed2cc94919d042aed51c46cdf3e2f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":132,"deletions":1,"files":["tests/fixtures/centos-7.7/vmstat-a-streaming.json",".../centos-7.7/vmstat-at-5-10-streaming.json",".../fixtures/centos-7.7/vmstat-awt-streaming.json","tests/fixtures/centos-7.7/vmstat-d-streaming.json","tests/fixtures/centos-7.7/vmstat-dt-streaming.json","tests/fixtures/centos-7.7/vmstat-streaming.json","tests/fixtures/centos-7.7/vmstat-w-streaming.json","tests/test_ping_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/vmstat-a-streaming.json","lines_changed":1},{"name":".../centos-7.7/vmstat-at-5-10-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/vmstat-awt-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-d-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-dt-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-w-streaming.json","lines_changed":1},{"name":"tests/test_ping_s.py","lines_changed":2},{"name":"tests/test_vmstat_s.py","lines_changed":124}]},"message":"add streaming parser tests"},{"commit":"978760ec57e04e3ec347c8764bfad015b6dddbff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"add exception class name to error string"},{"commit":"d410425537817964ceb7b61e0fdff6c03fdf8766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":136,"deletions":136,"files":["docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/vmstat.md","lines_changed":68},{"name":"docs/parsers/vmstat_s.md","lines_changed":68},{"name":"jc/parsers/vmstat.py","lines_changed":68},{"name":"jc/parsers/vmstat_s.py","lines_changed":68}]},"message":"replace single quotes with double quotes in doc"},{"commit":"6b7430329cbe1bfb95b47bcfe031906641c127e1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":269,"deletions":1,"files":["README.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat_s.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":145},{"name":"docs/parsers/vmstat_s.md","lines_changed":105},{"name":"jc/parsers/vmstat_s.py","lines_changed":6},{"name":"man/jc.1","lines_changed":12}]},"message":"doc update"},{"commit":"40fe0d4a6081a1233bf5c3eb51a01da1f12bc4dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":141,"deletions":22,"files":["jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":163}]},"message":"working parser"},{"commit":"365c5354a0349e470558d15243217a064e73da38","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/vmstat.py"],"file_stats":[{"name":"jc/parsers/vmstat.py","lines_changed":1}]},"message":"remove debug print statement"},{"commit":"b246a05cbb4c1c564f81b3e72cecb62edbe6ced6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"fix vmstat-s name"},{"commit":"9e5a7a4abb8668d043625951a05eb5733cbbd56f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":37,"deletions":0,"files":["tests/fixtures/centos-7.7/vmstat-a.out","tests/fixtures/centos-7.7/vmstat-at-5-10.out","tests/fixtures/centos-7.7/vmstat-awt.out","tests/fixtures/centos-7.7/vmstat-d.out","tests/fixtures/centos-7.7/vmstat-dt.out","tests/fixtures/centos-7.7/vmstat-w.out","tests/fixtures/centos-7.7/vmstat.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/vmstat-a.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/vmstat-at-5-10.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/vmstat-awt.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/vmstat-d.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/vmstat-dt.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/vmstat-w.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/vmstat.out","lines_changed":4}]},"message":"add vmstat sample output"},{"commit":"f266acbccafc040c375723147b8e5d7fddb1e697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":106,"deletions":14,"files":["jc/parsers/vmstat.py"],"file_stats":[{"name":"jc/parsers/vmstat.py","lines_changed":120}]},"message":"add processing logic"},{"commit":"4e3b471f1801f1b9006b18cae2a3d816f361262e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"add format for vmstat"},{"commit":"5e28736c2e0c951e71e6531e03a9619279d95d3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add vmstat and vmstat_s"},{"commit":"a91913a3b517ea0dbb25d6e4cc92850eb2fde5ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":106,"deletions":0,"files":["jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":106}]},"message":"streaming parser template"},{"commit":"90c64f0ae0d97d025adee40970d89baca79ee4ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":182,"deletions":0,"files":["jc/parsers/vmstat.py"],"file_stats":[{"name":"jc/parsers/vmstat.py","lines_changed":182}]},"message":"initial working parser"},{"commit":"7cc642ed1a476abda709ac9b79900a1de12e1ef7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":4}]},"message":"formatting"},{"commit":"809f64d35a92bb3d7380fa9d78ac1421a10b81fc","merge":"ff0fda4 a6f859a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #169 from kellyjonbrazil/streaming"},{"commit":"a6f859a55edae50fcc185948736218404cfaa929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":18,"insertions":168,"deletions":153,"files":[".../osx-10.14.6/ping-hostname-p-streaming.json",".../osx-10.14.6/ping-hostname-s-streaming.json",".../osx-10.14.6/ping-hostname-streaming.json",".../osx-10.14.6/ping-ip-dup-streaming.json",".../fixtures/osx-10.14.6/ping-ip-p-streaming.json",".../fixtures/osx-10.14.6/ping-ip-s-streaming.json","tests/fixtures/osx-10.14.6/ping-ip-streaming.json",".../osx-10.14.6/ping-ip-unreachable-streaming.json",".../osx-10.14.6/ping6-hostname-p-streaming.json",".../osx-10.14.6/ping6-hostname-s-streaming.json",".../osx-10.14.6/ping6-hostname-streaming.json",".../osx-10.14.6/ping6-ip-dup-streaming.json",".../fixtures/osx-10.14.6/ping6-ip-p-streaming.json",".../fixtures/osx-10.14.6/ping6-ip-s-streaming.json","tests/fixtures/osx-10.14.6/ping6-ip-streaming.json","tests/fixtures/pi/ping-ip-O-D-streaming.json","tests/fixtures/pi/ping-ip-O-streaming.json","tests/test_ping_s.py"],"file_stats":[{"name":".../osx-10.14.6/ping-hostname-p-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping-hostname-s-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping-hostname-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping-ip-dup-streaming.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/ping-ip-p-streaming.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/ping-ip-s-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping-ip-unreachable-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping6-hostname-p-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping6-hostname-s-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping6-hostname-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping6-ip-dup-streaming.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/ping6-ip-p-streaming.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/ping6-ip-s-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-streaming.json","lines_changed":1},{"name":"tests/fixtures/pi/ping-ip-O-D-streaming.json","lines_changed":1},{"name":"tests/fixtures/pi/ping-ip-O-streaming.json","lines_changed":1},{"name":"tests/test_ping_s.py","lines_changed":304}]},"message":"add final ping_s tests"},{"commit":"39ef88078f43708e470d3c1b2fd95e76b5cbeb08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":1}]},"message":"add destination_ip to error lines"},{"commit":"aeea5e8d2eab2fef3e14637f512aed7b117c4a3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/test_ls_s.py"],"file_stats":[{"name":"tests/test_ls_s.py","lines_changed":2}]},"message":"formatting"},{"commit":"1a0700bff4bdebbd9f1f92f2fc7a56c4d5ed6925","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":31,"insertions":240,"deletions":213,"files":[".../fedora32/ping-hostname-O-D-p-s-streaming.json",".../fedora32/ping-hostname-O-p-streaming.json",".../fedora32/ping-hostname-O-streaming.json","tests/fixtures/fedora32/ping-ip-O-D-streaming.json","tests/fixtures/fedora32/ping-ip-O-streaming.json",".../fedora32/ping6-hostname-O-D-p-s-streaming.json",".../fedora32/ping6-hostname-O-p-streaming.json",".../fedora32/ping6-ip-O-D-p-streaming.json",".../fixtures/fedora32/ping6-ip-O-p-streaming.json",".../freebsd12/ping-hostname-p-streaming.json",".../freebsd12/ping-hostname-s-streaming.json",".../freebsd12/ping-hostname-streaming.json","tests/fixtures/freebsd12/ping-ip-p-streaming.json","tests/fixtures/freebsd12/ping-ip-s-streaming.json","tests/fixtures/freebsd12/ping-ip-streaming.json",".../freebsd12/ping6-hostname-p-streaming.json",".../freebsd12/ping6-hostname-s-streaming.json",".../freebsd12/ping6-hostname-streaming.json","tests/fixtures/freebsd12/ping6-ip-p-streaming.json","tests/fixtures/freebsd12/ping6-ip-s-streaming.json","tests/fixtures/freebsd12/ping6-ip-streaming.json",".../ping-hostname-O-D-p-s-streaming.json",".../ubuntu-18.04/ping-hostname-O-p-streaming.json",".../ubuntu-18.04/ping-hostname-O-streaming.json",".../ubuntu-18.04/ping-ip-O-D-streaming.json",".../fixtures/ubuntu-18.04/ping-ip-O-streaming.json",".../ping6-hostname-O-D-p-s-streaming.json",".../ubuntu-18.04/ping6-hostname-O-p-streaming.json",".../ubuntu-18.04/ping6-ip-O-D-p-streaming.json",".../ubuntu-18.04/ping6-ip-O-p-streaming.json","tests/test_ping_s.py"],"file_stats":[{"name":".../fedora32/ping-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../fedora32/ping-hostname-O-p-streaming.json","lines_changed":1},{"name":".../fedora32/ping-hostname-O-streaming.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-ip-O-D-streaming.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-ip-O-streaming.json","lines_changed":1},{"name":".../fedora32/ping6-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../fedora32/ping6-hostname-O-p-streaming.json","lines_changed":1},{"name":".../fedora32/ping6-ip-O-D-p-streaming.json","lines_changed":1},{"name":".../fixtures/fedora32/ping6-ip-O-p-streaming.json","lines_changed":1},{"name":".../freebsd12/ping-hostname-p-streaming.json","lines_changed":1},{"name":".../freebsd12/ping-hostname-s-streaming.json","lines_changed":1},{"name":".../freebsd12/ping-hostname-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-p-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-s-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-streaming.json","lines_changed":1},{"name":".../freebsd12/ping6-hostname-p-streaming.json","lines_changed":1},{"name":".../freebsd12/ping6-hostname-s-streaming.json","lines_changed":1},{"name":".../freebsd12/ping6-hostname-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-p-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-s-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-streaming.json","lines_changed":1},{"name":".../ping-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping-hostname-O-p-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping-hostname-O-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping-ip-O-D-streaming.json","lines_changed":1},{"name":".../fixtures/ubuntu-18.04/ping-ip-O-streaming.json","lines_changed":1},{"name":".../ping6-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-hostname-O-p-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-ip-O-D-p-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-ip-O-p-streaming.json","lines_changed":1},{"name":"tests/test_ping_s.py","lines_changed":423}]},"message":"add more ping-s tests"},{"commit":"b5fa6d068f240671eb948b055cd4f7bf127e0ec0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":25,"deletions":5,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":6},{"name":"docs/parsers/ping_s.md","lines_changed":6},{"name":"jc/parsers/foo_s.py","lines_changed":6},{"name":"jc/parsers/ls_s.py","lines_changed":6},{"name":"jc/parsers/ping_s.py","lines_changed":6}]},"message":"update docs"},{"commit":"1baec0b420feff068f2dc1e35499f78aa7d0a6e0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":815,"deletions":0,"files":[".../ping-hostname-O-D-p-s-streaming.json",".../centos-7.7/ping-hostname-O-p-streaming.json",".../centos-7.7/ping-hostname-O-streaming.json",".../fixtures/centos-7.7/ping-ip-O-D-streaming.json",".../centos-7.7/ping-ip-O-streaming-quiet.json","tests/fixtures/centos-7.7/ping-ip-O-streaming.json",".../fixtures/centos-7.7/ping-ip-dup-streaming.json",".../ping6-hostname-O-D-p-s-streaming.json",".../centos-7.7/ping6-hostname-O-p-streaming.json",".../centos-7.7/ping6-ip-O-D-p-streaming.json",".../centos-7.7/ping6-ip-O-p-streaming.json",".../centos-7.7/ping6-ip-dup-streaming.json","tests/test_ping_s.py"],"file_stats":[{"name":".../ping-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping-hostname-O-p-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping-hostname-O-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/ping-ip-O-D-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping-ip-O-streaming-quiet.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-ip-O-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/ping-ip-dup-streaming.json","lines_changed":1},{"name":".../ping6-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping6-hostname-O-p-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping6-ip-O-D-p-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping6-ip-O-p-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping6-ip-dup-streaming.json","lines_changed":1},{"name":"tests/test_ping_s.py","lines_changed":803}]},"message":"add some streaming tests"},{"commit":"4f2a4e1dee9d722d2aa5ddf2c082a358c88cf640","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":8}]},"message":"skip blank lines and warning lines"},{"commit":"758d617668d1f9d0f27b52d46749e5b67a570cf1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":5,"deletions":5,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2}]},"message":"doc update"},{"commit":"55322c37f57a9c8e28641a61928fad2329f5e50d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":4}]},"message":"formatting"},{"commit":"d19ea5552bb3a379f7f92bcb58794c557ecc6647","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":193,"deletions":0,"files":["tests/fixtures/centos-7.7/ls-al-streaming.json","tests/fixtures/centos-7.7/ls-alR-streaming.json","tests/fixtures/centos-7.7/ls-alh-streaming.json","tests/fixtures/osx-10.14.6/ls-al-streaming.json","tests/fixtures/osx-10.14.6/ls-alR-streaming.json","tests/fixtures/osx-10.14.6/ls-alh-streaming.json",".../osx-10.14.6/ls-lR-empty-folder-streaming.json","tests/fixtures/ubuntu-18.04/ls-al-streaming.json","tests/fixtures/ubuntu-18.04/ls-alR-streaming.json","tests/fixtures/ubuntu-18.04/ls-alh-streaming.json",".../fixtures/ubuntu-18.04/ls-l-iso-streaming.json","tests/test_ls_s.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ls-al-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-alR-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-alh-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-al-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-alR-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-alh-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ls-lR-empty-folder-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-al-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-alR-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-alh-streaming.json","lines_changed":1},{"name":".../fixtures/ubuntu-18.04/ls-l-iso-streaming.json","lines_changed":1},{"name":"tests/test_ls_s.py","lines_changed":182}]},"message":"add streaming ls parser tests"},{"commit":"130c3527c1083d399deef00ee8fcaa75f609b485","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":25,"deletions":25,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":8},{"name":"docs/parsers/ping_s.md","lines_changed":12},{"name":"jc/parsers/foo_s.py","lines_changed":6},{"name":"jc/parsers/ls_s.py","lines_changed":10},{"name":"jc/parsers/ping_s.py","lines_changed":12},{"name":"man/jc.1","lines_changed":2}]},"message":"update docstrings"},{"commit":"3f221f471416766a860bd19850afda4899ee5eb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":6},{"name":"jc/parsers/ping_s.py","lines_changed":6}]},"message":"doc update"},{"commit":"d64c4cb39056bb869fc117477612ae5ae2ef3d85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":141,"deletions":1,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":72},{"name":"templates/manpage_template","lines_changed":70}]},"message":"add streaming parsers section"},{"commit":"448c56aa46b72438e4a4c83b10a7eb889e3f50e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting"},{"commit":"9fbea15b6d031baa8c90f2602e39de7cf51408e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":8,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":6},{"name":"jc/parsers/ping_s.py","lines_changed":4}]},"message":"rename state class to _state"},{"commit":"932060314b3c1ce518b9f57532e124285cb3ad0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":41,"deletions":11,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":50},{"name":"jc/parsers/ping_s.py","lines_changed":2}]},"message":"doc update"},{"commit":"5e68ae50097cb339f3390449db7e3f189a716320","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":7}]},"message":"import exception. tighten up os detection"},{"commit":"d03541beae44a4571a7d0481af01a5c19506207f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":5,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":17}]},"message":"add docstring examples. add exception raise when OS cannot be detected."},{"commit":"516fa571d90a0c93134c953c15ce84dd31b96b4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":3}]},"message":"remove unused variable. use elif instead of if for linux vs. bsd detection"},{"commit":"a19c12096a8e8de02a6ff761cc9c13ec249d416e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":373,"deletions":143,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":516}]},"message":"initial working parser for both linux and bsd"},{"commit":"758f27945de4f0897405eba02c7908d815ce6e9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":18}]},"message":"change data_bytes and bytes to sent_bytes and response_bytes"},{"commit":"8b1e8d58df22f8542ccaf7bf3e1eabe6132e7a42","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":1}]},"message":"remove unneeded line"},{"commit":"b967489d085319facee077958deaa04956a98343","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":81,"deletions":40,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":121}]},"message":"complete linux coverage including summary"},{"commit":"870d0218be2641e3eddb114c23d54deb23155f25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2}]},"message":"add unbuffer note"},{"commit":"84020bc2af294cb065105f1399453aefc98eb180","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":12,"deletions":6,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/utils.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":6},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"change error_msg to error in -q result docs"},{"commit":"4efe5344e069ed921f208bcbbd097705be2d3b4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add links to HN and Reddit"},{"commit":"9182c545134b3d56d27d2c1d9bda678532bdc3fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":8,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":11}]},"message":"formatting"},{"commit":"28f0ab0b02d21fc060f1ac7181f85552798dc4bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/ls_s.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":2}]},"message":"update streaming error messages"},{"commit":"90d1a30696b2cbfbb06a55cc0cf920cf8ecd89aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting"},{"commit":"130b3738cc57fe261e8ef881a57b7836acd7e7e9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":21,"deletions":26,"files":["jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":8},{"name":"jc/parsers/ls_s.py","lines_changed":8},{"name":"jc/parsers/ping_s.py","lines_changed":14},{"name":"jc/utils.py","lines_changed":17}]},"message":"shorten successful yield to a single line"},{"commit":"92c7357615af7689db273aa78d666b35a2ec7a70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":2}]},"message":"formatting"},{"commit":"c80f8633349c00ea461b8927f9949fe19b2f46ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/foo.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":10}]},"message":"simplify return condition formatting"},{"commit":"4642c20179d4643e0cf1970b264da7d9d91628de","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"templates/readme_template","lines_changed":4}]},"message":"formatting"},{"commit":"5288eb22aadbbc1005b16428b94d2b07e9a75e3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add info about streaming parser performance characteristics"},{"commit":"df8387a1a99df69eac5005662aaf56d506fa0efd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"streaming parsers cannot be used with the magic syntax"},{"commit":"cc38c27f44d3f088609b878304cab8eed75fc8f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"templates/readme_template","lines_changed":3}]},"message":"formatting"},{"commit":"64f5357d69fe88b45d710d38948969699e1ca12f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":84,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":42},{"name":"templates/readme_template","lines_changed":42}]},"message":"add streaming parsers section"},{"commit":"51debb5649bef431e51e543f1c9270e2810aa58f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"add vmstat parser and change from linebuffer to unbuffer"},{"commit":"b48d05a4313b27cf5e69d3e4259542e0b131b60f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":15,"deletions":15,"files":["README.md","jc/cli.py","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":8},{"name":"man/jc.1","lines_changed":10},{"name":"templates/manpage_template","lines_changed":8},{"name":"templates/readme_template","lines_changed":2}]},"message":"change from line buffer output to unbuffer output"},{"commit":"4e7f6b337db61b8a106cf958f6b874157909c87a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":17,"deletions":25,"files":["jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":15},{"name":"jc/parsers/ls_s.py","lines_changed":9},{"name":"jc/parsers/ping_s.py","lines_changed":18}]},"message":"simplify yield statements"},{"commit":"a509d99cafd80862721595ee59ccc4a471b5e5a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":8}]},"message":"add stream_success dictionary"},{"commit":"481e45fb644ac88fa77ef35643b793f179fe6859","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2}]},"message":"limit parse error msg lenght"},{"commit":"e9038e1720e1c0e520e2f29b718aa8505cbbb9a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":66,"deletions":0,"files":["docs/parsers/ping_s.md"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":66}]},"message":"initial streaming ping docs"},{"commit":"8fd9e582bf29275c4daaa3be88ea8d196411b34a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":15,"deletions":17,"files":["docs/parsers/ls_s.md"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":32}]},"message":"doc update"},{"commit":"c1fd6f48a5a3501499c9fca7239673b8555cc7c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["docs/utils.md"],"file_stats":[{"name":"docs/utils.md","lines_changed":6}]},"message":"add stream_error docs"},{"commit":"af615c7f4b3f589ffc1b37cf9834062a04c013cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":26,"deletions":5,"files":["CHANGELOG","README.md","jc/cli.py","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"README.md","lines_changed":4},{"name":"jc/cli.py","lines_changed":7},{"name":"man/jc.1","lines_changed":11},{"name":"templates/manpage_template","lines_changed":4},{"name":"templates/readme_template","lines_changed":3}]},"message":"add line buffer output option"},{"commit":"bf0bc32d7ae6cabe07906207f4f08c2e81802c80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"flush streamed text for better piping experience"},{"commit":"2d6b53e012181a4c33bab441880c47c0fc0b0601","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":36,"deletions":42,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":78}]},"message":"add pattern support. move unparsable line detection to standard streaming parser style"},{"commit":"51271fea0fbd7bd63863ba05c399b4675dc5b4bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":139,"deletions":149,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":288}]},"message":"somewhat working parser"},{"commit":"2deb473e0bc96c0e39ec4074a6df4b941ba2172b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":262,"deletions":0,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":262}]},"message":"initial streaming ping parser"},{"commit":"23eeb33b3da43a679c3bf3f3643cfa552a1164e1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"modify stream_error message"},{"commit":"f50dfaef45632241f8f6972fa19bb17c54a457ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":13,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":19}]},"message":"use stream_error function for exceptions. raise on non -l ls output"},{"commit":"55bb71e9d466cc9ee5f7fd8eca1101c941cbcb35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"add streaming ping parser. update streaming exception message"},{"commit":"dab9357d286962b70224d6fafbf90a4c0cbc9980","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":12,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":13}]},"message":"use stream_error function for exceptions"},{"commit":"27eb427245b5126335cef0adb5e57522272474b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":16}]},"message":"add stream_error function"},{"commit":"260f3685d944ded84396ae3395773d6898803fb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":112,"deletions":0,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":112}]},"message":"add streaming parser template"},{"commit":"76e78fc0c34b88a90fef876eebef92bd71cd772c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":11,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":20}]},"message":"doc updates"},{"commit":"1ac944fa028a400ae7b39b811fcf368c9bf5e259","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2}]},"message":"add -q option info to docstring"},{"commit":"986bc9b042a940f8dd34f0541bcb9b5840df579e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":43,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":52}]},"message":"cleanup unused code"},{"commit":"5a7942069b1f3ef3b45992b482bfb6bb973f7e8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":28,"deletions":28,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":56}]},"message":"add support for parent field"},{"commit":"f6c6fc13ac4c779667807df12444a41ef28a8011","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"enhance error msg when streaming parser is used"},{"commit":"1d8cfae89f24192b6fab087f59c9b8988ef363dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":11}]},"message":"only print _meta object if -q or quiet flag is used. Also, add message to the end of exceptions informing of the -q option to ignore errors"},{"commit":"787df51239ffa8260b48d6a3a58e6ff07d5e0f64","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2}]},"message":"remove `\\n` from end of line in exception message"},{"commit":"5e7f302a9c45343c36e81944db38a435e6c8a20c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":10,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":22}]},"message":"Raise exceptions unless the -q or quiet flag are used"},{"commit":"3d10fd40b56264836874da19aa72351e6d5cfbf7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":13,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":27}]},"message":"remove print flush for better performance. Roll json.JSONDecodeError into the parse try/except block"},{"commit":"57e3bf239cc76d3b0ee0eddc618171eb90c28dec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":6},{"name":"jc/parsers/ls_s.py","lines_changed":6}]},"message":"formatting for docs"},{"commit":"ccb09861e82044e17ec51277b3c8875e5ba9d87d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":20,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":20},{"name":"jc/parsers/ls_s.py","lines_changed":20}]},"message":"formatting for docs"},{"commit":"94551d75dd926c7f558e5cab47ba9483a20c6b3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":116,"deletions":49,"files":["CHANGELOG","README.md","docs/parsers/ls_s.md","docs/readme.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz","mangen.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":6},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/ls_s.md","lines_changed":89},{"name":"docs/readme.md","lines_changed":25},{"name":"jc/__init__.py","lines_changed":27},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":7},{"name":"man/jc.1.gz","lines_changed":null},{"name":"mangen.py","lines_changed":8},{"name":"setup.py","lines_changed":2}]},"message":"doc update"},{"commit":"6e21218425359210591827e936b8d48d9644df92","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":234,"deletions":3,"files":["jc/cli.py","jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":23},{"name":"jc/parsers/ls_s.py","lines_changed":214}]},"message":"working prototype of streaming ls parser"},{"commit":"ff0fda48fc48760a7293528155d222c6456f84c4","merge":"e08b61f 528aac7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #168 from kellyjonbrazil/master"},{"commit":"528aac7ad87feae2093aba563c83a29ebf75e5f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":38,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":23},{"name":"templates/readme_template","lines_changed":23}]},"message":"use subprocess in python example"},{"commit":"ab482e521d4cecfffa5393805b1d7de4389db49a","merge":"9c1ad92 e08b61f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #163 from kellyjonbrazil/dev"},{"commit":"e08b61fa81b1bd2304d04db5cdc8b809fe9c6032","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add schema note to sfdisk"},{"commit":"ce61bd1d2b4323d9c2d0454c4f646521913ae20d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":73,"deletions":7,"files":["tests/fixtures/debian10/sfdisk-F2.json","tests/fixtures/debian10/sfdisk-F2.out","tests/fixtures/debian10/sfdisk-l2.json","tests/fixtures/debian10/sfdisk-l2.out","tests/fixtures/debian10/sfdisk-l3.json","tests/fixtures/debian10/sfdisk-l3.out","tests/test_sfdisk.py"],"file_stats":[{"name":"tests/fixtures/debian10/sfdisk-F2.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-F2.out","lines_changed":6},{"name":"tests/fixtures/debian10/sfdisk-l2.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-l2.out","lines_changed":15},{"name":"tests/fixtures/debian10/sfdisk-l3.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-l3.out","lines_changed":13},{"name":"tests/test_sfdisk.py","lines_changed":43}]},"message":"add tests for -F fixes"},{"commit":"7b708f75182bf3ed33478a7de62e9c2496f0b994","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":11,"deletions":5,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-l.json","tests/fixtures/debian10/sfdisk-l.json"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":12},{"name":"tests/fixtures/centos-8/sfdisk-l.json","lines_changed":2},{"name":"tests/fixtures/debian10/sfdisk-l.json","lines_changed":2}]},"message":"Don't convert 'size' to int, except for legacy -d support. Change partition table detection logic to fix -F output"},{"commit":"89ca50c7fc1bf64f34c915e65031d0bc520e6466","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/sfdisk.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add -l to sfdisk raw example"},{"commit":"fb54899dcc2160450448e0d6111557cebdeb0d4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":38,"deletions":23,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":59},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update"},{"commit":"0a625ad7ddd9c804052d98930165cd22049546bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/sfdisk.py"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":2}]},"message":"remove unneeded lines"},{"commit":"d32e45efbe0d71a9a132abfb2855f1f4ccee9916","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":69,"deletions":1,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-F.json","tests/fixtures/centos-8/sfdisk-l.json","tests/fixtures/debian10/sfdisk-F.json","tests/fixtures/debian10/sfdisk-l.json","tests/test_sfdisk.py"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":9},{"name":"tests/fixtures/centos-8/sfdisk-F.json","lines_changed":1},{"name":"tests/fixtures/centos-8/sfdisk-l.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-F.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-l.json","lines_changed":1},{"name":"tests/test_sfdisk.py","lines_changed":57}]},"message":"add sfdisk tests"},{"commit":"c77696bc789cdfd286a7479c3d9f67d23149d0ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":4},{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"736fde9e784587cb2ef344bbf31d876eafea7741","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":147,"deletions":28,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-F.out","tests/fixtures/centos-8/sfdisk-l.out","tests/fixtures/debian10/sfdisk-F.out","tests/fixtures/debian10/sfdisk-l.out"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":127},{"name":"tests/fixtures/centos-8/sfdisk-F.out","lines_changed":9},{"name":"tests/fixtures/centos-8/sfdisk-l.out","lines_changed":24},{"name":"tests/fixtures/debian10/sfdisk-F.out","lines_changed":3},{"name":"tests/fixtures/debian10/sfdisk-l.out","lines_changed":12}]},"message":"add support for newer versions of sfdisk"},{"commit":"9c1ad92fed9a4b3a0da66d6b71deec8d608edfa9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":12}]},"message":"fix examples"},{"commit":"1a9fd2139d156a51bf2d25db951e47e96da77f7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"add \"For new parsers:\""},{"commit":"7661e7f27a4e5c379ea37c7f95496aca2c1e2910","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"formatting"},{"commit":"f857b7fbf7862ddd7eb5ab20470f5dbaacc62119","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"add custom parser folder info"},{"commit":"d94d12dbc5fb3e3712b2f1aea949013cb8213e28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":11}]},"message":"add foo parser template info"},{"commit":"700916276ae8b0a106410e3dd2ea3e00248ee37a","merge":"473f706 834e523","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #159 from kellyjonbrazil/master"},{"commit":"834e52369ceb479776ddc8fc2931790af53b9c18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":5,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":6},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update man page"},{"commit":"1ce53365de61421c8bd43e04590038083894153b","merge":"2689697 473f706","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #156 from kellyjonbrazil/dev"},{"commit":"473f70668f04a38765559c5dbf0468af24d625c9","merge":"0dbd270 2689697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'master' into dev"},{"commit":"0dbd2702f6ab2640b2ccdea92411ac0789673e66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]},"message":"reformat doc_text for nicer indentation"},{"commit":"01e3764a9b6ba902aea522bf6b7005fd37b3acbb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"fix join syntax"},{"commit":"ff9c81722ae7221364e9bcb83d98b16b4263334e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"try/except for shlex.join since only available in python 3.8"},{"commit":"166aef7a022ed29862ab2e0702d53c591bb5cc77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":4,"deletions":4,"files":["docs/parsers/stat.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz","setup.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"78caf7646baf5d35602fd76771443cd64bd783af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add stat fix"},{"commit":"1f99d40cecc5d88a246f3558f71db376ebd885c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":17,"deletions":2,"files":["jc/parsers/stat.py","tests/fixtures/osx-10.14.6/stat-filename-with-spaces.json","tests/fixtures/osx-10.14.6/stat-filename-with-spaces.out","tests/test_stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"tests/fixtures/osx-10.14.6/stat-filename-with-spaces.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/stat-filename-with-spaces.out","lines_changed":2},{"name":"tests/test_stat.py","lines_changed":12}]},"message":"fix filename with spaces for osx/bsd"},{"commit":"4c2912d3d5ec1fd2d5d891f2b3c58a33dd8572be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"use shlex.join to quote run_command_str for better error messages"},{"commit":"45e6e06be581f787f707e3f5645129c713478d16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"add glob and process substitution fixes"},{"commit":"fdbe3e05f323c95687a1137983f9623911008ca2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"fix issue with globs not including filenames with spaces with magic syntax (introduced during switch to use subprocess to grab process exit code). No longer need to shlex quote arguments."},{"commit":"7cc168f6409af13fda815d0d2a6db25b7c9ba367","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add comment"},{"commit":"ff2d609c9b5f5f57f3331e5593e8fe87c01654dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":13}]},"message":"add close_fds=False in subprocess.Popen() to allow process substitution in magic syntax. Also check for too many open files exception"},{"commit":"2689697b4c21758903e5f74ec069e89be585aba2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting"},{"commit":"f90a0ea8ab15629b7786e4431e9c968c3a896ee0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":4}]},"message":"formatting"},{"commit":"caabe60f849fb2422e47b8f10e0ff35beb706dcd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":3,"deletions":3,"files":["docs/parsers/kv.md","jc/man/jc.1.gz","jc/parsers/kv.py","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/kv.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/kv.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"fix kv example"},{"commit":"2bef4ed6038201f54339e750a833260dc1998591","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","README.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"README.md","lines_changed":4}]},"message":"package updates"},{"commit":"ee57be533b12593a33a2abbb2892697f0bd40c65","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2}]},"message":"fix sfdisk example"},{"commit":"c5b7aaca25d6b66d3e44256c2c6760a4cf2956ec","merge":"3b22ce4 7a1be90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #149 from kellyjonbrazil/dev"},{"commit":"7a1be905bb8654558afb5979b0bd78d4a8488874","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"version bump"},{"commit":"5798495a11afa2f72ce6f79be785d46240fcbeb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":6}]},"message":"add 1.15.7 to 1.16.0 changes"},{"commit":"46171e220252ec92d18e744d2a57c1d6a6dc19f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":69,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":69}]},"message":"add sfdisk example"},{"commit":"dd5c924ff505dcc2a9c851d2425677bdf16ea462","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add man page location change"},{"commit":"30c4ab297658228a07ef9b1585516719af3febb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":515,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":515},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"new man page location"},{"commit":"26ea4d47b33277efb0ddafe8f421791696277c07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":14,"deletions":3,"files":["CHANGELOG","MANIFEST.in","jc/__init__.py","mangen.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":10},{"name":"MANIFEST.in","lines_changed":1},{"name":"jc/__init__.py","lines_changed":2},{"name":"mangen.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump and deprecate /man/jc.1.gz and /jc/man/jc.1.gz"},{"commit":"2732cd175c1e878210707162de3928f33fb2f201","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["CHANGELOG","MANIFEST.in"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"MANIFEST.in","lines_changed":1}]},"message":"include CHANGELOG in source distribution"},{"commit":"3e54b597be88b0e342e4361b7f2c1af447f9482b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add timezone change for unit tests"},{"commit":"f10ebea20962084833e5c1ebd9bc90a251bf3ff4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":78,"deletions":0,"files":["tests/test_date.py","tests/test_dig.py","tests/test_dir.py","tests/test_last.py","tests/test_ls.py","tests/test_rpm_qai.py","tests/test_stat.py","tests/test_systeminfo.py","tests/test_upower.py","tests/test_utils.py","tests/test_who.py"],"file_stats":[{"name":"tests/test_date.py","lines_changed":7},{"name":"tests/test_dig.py","lines_changed":7},{"name":"tests/test_dir.py","lines_changed":7},{"name":"tests/test_last.py","lines_changed":7},{"name":"tests/test_ls.py","lines_changed":7},{"name":"tests/test_rpm_qai.py","lines_changed":7},{"name":"tests/test_stat.py","lines_changed":7},{"name":"tests/test_systeminfo.py","lines_changed":7},{"name":"tests/test_upower.py","lines_changed":7},{"name":"tests/test_utils.py","lines_changed":8},{"name":"tests/test_who.py","lines_changed":7}]},"message":"update tests to set correct timezone on POSIX systems"},{"commit":"2c6f3993cb4c5e559dbac7a479ec889aa2cba752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/route.md","jc/man/jc.1.gz","jc/parsers/route.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/route.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"remove extra comma"},{"commit":"708a696920b52c2614edcdba264912527b2dfbef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":0,"deletions":2,"files":["docs/parsers/route.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/route.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"remove extra lines"},{"commit":"20bbb5d331575c8fc33ba63643882a62650c97b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":2}]},"message":"remove extra lines"},{"commit":"223e785b547d9376174efa15321d60a533847c57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/sfdisk.py"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":8}]},"message":"rename variable"},{"commit":"3d78692c59980e4d70361d3a9f74bacc3f21376e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":150,"deletions":1,"files":["tests/fixtures/centos-7.7/sfdisk-d-multi.json","tests/fixtures/centos-7.7/sfdisk-d-multi.out","tests/fixtures/centos-7.7/sfdisk-d.json","tests/fixtures/centos-7.7/sfdisk-d.out","tests/fixtures/centos-7.7/sfdisk-l-multi.json","tests/fixtures/centos-7.7/sfdisk-l-multi.out","tests/fixtures/centos-7.7/sfdisk-l.json","tests/fixtures/centos-7.7/sfdisk-luB.json","tests/fixtures/centos-7.7/sfdisk-luM.json","tests/fixtures/centos-7.7/sfdisk-luS.json","tests/test_sfdisk.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/sfdisk-d-multi.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-d-multi.out","lines_changed":16},{"name":"tests/fixtures/centos-7.7/sfdisk-d.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-d.out","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-l-multi.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-l-multi.out","lines_changed":21},{"name":"tests/fixtures/centos-7.7/sfdisk-l.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-luB.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-luM.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-luS.json","lines_changed":1},{"name":"tests/test_sfdisk.py","lines_changed":106}]},"message":"add sfdisk tests"},{"commit":"5321a15dcf13cf14efe578d0f66b651078c3d8a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":8,"deletions":8,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":8},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/sfdisk.py","lines_changed":8},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update examples"},{"commit":"a452f8252a593f7914ebece53af9d73f4fd11a19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":4},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/sfdisk.py","lines_changed":4},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"fix integer conversion"},{"commit":"49267f09ac01fead3b20b2d481bb5e0d07af1439","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/sfdisk.py"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":4}]},"message":"change to root prompt in examples"},{"commit":"db47f35783e46a8299533c22146d851509f6ceb2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":15,"insertions":610,"deletions":3,"files":["CHANGELOG","README.md","docs/parsers/sfdisk.md","jc/__init__.py","jc/cli.py","jc/man/jc.1.gz","jc/parsers/sfdisk.py","jc/utils.py","man/jc.1.gz","setup.py","tests/fixtures/centos-7.7/sfdisk-d.out","tests/fixtures/centos-7.7/sfdisk-l.out","tests/fixtures/centos-7.7/sfdisk-luB.out","tests/fixtures/centos-7.7/sfdisk-luM.out","tests/fixtures/centos-7.7/sfdisk-luS.out"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/sfdisk.md","lines_changed":213},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/sfdisk.py","lines_changed":325},{"name":"jc/utils.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/sfdisk-d.out","lines_changed":8},{"name":"tests/fixtures/centos-7.7/sfdisk-l.out","lines_changed":14},{"name":"tests/fixtures/centos-7.7/sfdisk-luB.out","lines_changed":14},{"name":"tests/fixtures/centos-7.7/sfdisk-luM.out","lines_changed":14},{"name":"tests/fixtures/centos-7.7/sfdisk-luS.out","lines_changed":14}]},"message":"add working sfdisk parser"},{"commit":"d48abf312c1f55ab31aa11da2b6cf6bc8166733b","merge":"ff7ab0a 3b22ce4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #147 from kellyjonbrazil/master"},{"commit":"3b22ce41105387e7f46a410460cf04759feef197","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":6,"deletions":3,"files":["CHANGELOG","jc/__init__.py","jc/cli.py","jc/man/jc.1.gz","man/jc.1.gz","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"setup.py","lines_changed":2}]},"message":"fix local plugin parser issue where parser has .py in the name but it is not at the end"},{"commit":"c521ca5bc9e2b035cfef6ff65f6b303b3ec44296","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"change possible to available"},{"commit":"3ddc1c665990e1e732314330db214a81ab810fe9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add jello"},{"commit":"a8e19402b7d1f9f06bc40b81a15dec401154180c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["ADVANCED_USAGE.md"],"file_stats":[{"name":"ADVANCED_USAGE.md","lines_changed":4}]},"message":"remove temporary fix"},{"commit":"0927902b30654274743ab9092e90e768709a9937","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["ADVANCED_USAGE.md"],"file_stats":[{"name":"ADVANCED_USAGE.md","lines_changed":4}]},"message":"temp fix for wrong url"},{"commit":"572548b42fb6ed9d32a392503d44fac1a8f146d3","merge":"95aec9c ff7ab0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #141 from kellyjonbrazil/dev"},{"commit":"ff7ab0a1ed7f468d0e84eb3bf0636f53913c490d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":0,"deletions":1,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc updates for v1.15.5"},{"commit":"5db71b05cb28691bbbaa5d668bcd4a4ac7e68b85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":3,"deletions":3,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/manpage_template","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add en_US.UTF-8 to LANG info"},{"commit":"f9b952885aa7f2b450786a08c3879d9e358886da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add python 3.9.5 packaged info"},{"commit":"e7983bc0b29abaca2147038dfad018cba1e67cdf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xml.md","docs/parsers/yaml.md"],"file_stats":[{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2}]},"message":"version bump"},{"commit":"473a6431425fc24a4cc83939ff592e0d49535b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":10,"deletions":3,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":11},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/readme_template","lines_changed":2}]},"message":"add windows msi info"},{"commit":"14f3d442cb86250b8f2cdfd7977938634b8abd6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"formatting"},{"commit":"d6f4ed9ab55fe9b7c2766fb437172af62a1d5c87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":2}]},"message":"add long-form UTC test"},{"commit":"1b8d654444ff8c8b8171c7ac63e2736447a36c09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add error message info"},{"commit":"6002af0dca334c0affaff3e9acdca416238c7d82","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":11}]},"message":"add more error message detail to the user for ParseError and LibraryNotFound exceptions"},{"commit":"0924d822a30c8806f65574c010561cd6f7c8e181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":1,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":9}]},"message":"add windows example"},{"commit":"72a37b928924c3edde3a4edb952f98c94aa05f0b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"5eef7bd769f8ffb03ba396833d1b33484041a99f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":16,"deletions":16,"files":["jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/xml.py","lines_changed":16},{"name":"jc/parsers/yaml.py","lines_changed":16}]},"message":"use LibraryNotInstalled exception instead of exiting via sys.exit"},{"commit":"c6893e1bd5283d982a7ecd6f84bdfdd0054ce7a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/exceptions.py"],"file_stats":[{"name":"jc/exceptions.py","lines_changed":4}]},"message":"add LibraryNotInstalled exception"},{"commit":"039f6612e491c6f821c001252e122e9b0a781104","merge":"9c57c09 95aec9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #139 from kellyjonbrazil/master"},{"commit":"95aec9c6f9aa8fb4d0dae227410a1346d550f47f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["templates/manpage_template"],"file_stats":[{"name":"templates/manpage_template","lines_changed":6}]},"message":"add info about Magic syntax not supporting shell builtins"},{"commit":"4e9652a8ec2482a64dc029b0ce0e1047a3e49867","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"spelling"},{"commit":"773b7f4b1f23e04c90e602aab05bc1a7e5aae37b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"templates/readme_template","lines_changed":1}]},"message":"add space before exit code table"},{"commit":"d17ffde9cdc35392ae25d8e9de5328e46067df2a","merge":"efb1d3e 9c57c09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #138 from kellyjonbrazil/dev"},{"commit":"9c57c09c00e64a9031391b9b70083ad6ecf0bc0b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update for release"},{"commit":"4d730a9de5a0d7c064a9a59e3add86e58d9ec492","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add UTC fix"},{"commit":"fc57bcfce24af23f077d6a73f1db4591d8f99c13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":3}]},"message":"fix for when UTC is referenced as \"Coordinated Universal Time\""},{"commit":"fa5571486c3c19bb7e836f043545ea4f2509ed4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":10,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":20}]},"message":"simplify json_out function"},{"commit":"9996c4fe23564dfb52e3c7dbdbd8bd67edfb1e95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":10,"deletions":10,"files":["EXAMPLES.md","docs/parsers/history.md","docs/parsers/jobs.md","jc/man/jc.1.gz","jc/parsers/history.py","jc/parsers/jobs.py","man/jc.1.gz"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":6},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":6},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update docs for shell builtins"},{"commit":"038d4290248e6bb94762bb51f69e9958f7c1fecb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":6,"files":["docs/parsers/dig.md","docs/parsers/dir.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":8},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc updates"},{"commit":"9bf6facb0d7d76583802309253e7d13ba5148997","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":6,"files":["jc/parsers/dir.py"],"file_stats":[{"name":"jc/parsers/dir.py","lines_changed":9}]},"message":"remove magic command capability since dir is a shell builtin"},{"commit":"965717886e4ebaa6a4a494f189d9fdd01e33eb21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add exceptions module info"},{"commit":"e9bfc3dd29f914fd91e937f06d7f59c0f91b8449","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"add time format, dig compatibility, windows colors fix"},{"commit":"f46b33eacf070b4dc72c8d8a66aae49abd149e5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2},{"name":"tests/test_utils.py","lines_changed":2}]},"message":"add windows time format"},{"commit":"f475fe44df2fb2661c5bce4d1e602a4bba7e87c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":3}]},"message":"add new time format for systeminfo"},{"commit":"5fdbe2962d84dad89de23f103d97b76b90450206","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":2}]},"message":"make dig compatible with all platforms"},{"commit":"ab291b9eef6ed5c8ab59b5652f676178941d5ce5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"only force enable colors when running on windows"},{"commit":"fd411fd77273cb7cf872c03ed6a258ccdee4d261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"attempt to get colors working on windows"},{"commit":"b1e95a60a2461dc401ffc299ef6338b65ef12691","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"remove unnecessary comment"},{"commit":"bb1439f0d53e87f636fba05fbd30c3c79fb16002","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":5}]},"message":"use ParseError exception from jc.exceptions module"},{"commit":"ba963d98a0a2b3a0dfca6b211096d802253da5fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/exceptions.py"],"file_stats":[{"name":"jc/exceptions.py","lines_changed":5}]},"message":"add exceptions module including ParseError"},{"commit":"83440ccb55d0db15b112b8b7d7352493ff516112","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"error message capitalization"},{"commit":"796f61bfa417afdc6ab48fddbb5502cd0659b840","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":13}]},"message":"handle case where the user pipes data and uses magic syntax simultaneously"},{"commit":"070cac4ae12282458a1e1fc8618ebc473d23cacf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"remove commented line"},{"commit":"3ed84f9f42e4e883ddaac28ab49d675600b49424","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":18}]},"message":"reorganize main function. remove pass condition."},{"commit":"a205afb6f355edbb4b98200a980b9601ed0f0658","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"set run_command_str if run_command is set"},{"commit":"a6d983dd8f3871cbc2391c313340167829a575d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"move run_command_str variable"},{"commit":"b6c8d6d01d740827273265dbb0cfbaf7875ac7f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":45,"deletions":17,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":62}]},"message":"add exception handling for filenotfound or other subprocess.popen and json.dumps exceptions"},{"commit":"b5a5d5b133f1c0df8023776e59697b7579f8c18a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"set parser_name for magic syntax use"},{"commit":"da528e7814b0cf25a359c3556d0e286e7bf004b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"move separators to a variable"},{"commit":"4acebf4f621ac564f82e3a97e6810fbb08a9dbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"move variables"},{"commit":"4d40808d2b70b7543eadcfd2d35c16ebe91f2f9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":7}]},"message":"update comments"},{"commit":"c543f00bd3c737f73144bb2980d12793042459b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"simplify piped_output function"},{"commit":"947cf41dfab5811c0e76e371231c59a2d6372752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add exit code info"},{"commit":"8d8c58742e5106c3387a627cd1b1323a76cc9623","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":21,"deletions":15,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":13},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/manpage_template","lines_changed":10},{"name":"templates/readme_template","lines_changed":13}]},"message":"formatting"},{"commit":"995ecc9bfb0425b0ee9e4250395b0200b46c1e89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":15,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/manpage_template","lines_changed":15}]},"message":"add exit codes section"},{"commit":"21a15225ebff645439b12d6249dc3e28d7bc09ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":18,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":9},{"name":"templates/readme_template","lines_changed":9}]},"message":"add exit codes section"},{"commit":"48921d4584068fadb0f776ed7e81c21d89172e2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"ensure exit code never exceeds 255"},{"commit":"342db45edc94ab1c3b3ae70e7cf4ca4076e2c7eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":10,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":28}]},"message":"fix combined exit codes"},{"commit":"5f88ecf8443bc6e9a7cda5bc60858f37cc09f4f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]},"message":"add comments to magic_parser return"},{"commit":"a56aebfe7024914d2c602278964b99d1443de335","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"remove side-effect comment since it is no longer relevant"},{"commit":"422bb744a82472546d62c72ba05eaa1d18d5068a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update man pages"},{"commit":"c3b814a15f571ac84a8ce0719d7fd88acf814caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":7}]},"message":"move imports to the top"},{"commit":"e4574047a0ef6fcd4a47142421a1d05795c7925a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":21,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":42}]},"message":"update tests for magic_parser function"},{"commit":"0d7d7951f82627d1fb1e20d1398bd7f88c5ce1be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":12}]},"message":"don't reset sys.argv anymore. check for 'valid_command' instead"},{"commit":"da904e4770a20ae85fc67476ae4a529564d0a3ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"remove final \\n from stderr string when printing"},{"commit":"19b540041add64fe6650c3634ec869421ffbc769","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":82,"deletions":51,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":133}]},"message":"proof of concept for passing command exit codes when using magic syntax. Needs more testing"},{"commit":"f2ffb93eeaf4c8b5aa93f3e8808bdc044582e8a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":10,"files":["tests/test_ping.py"],"file_stats":[{"name":"tests/test_ping.py","lines_changed":10}]},"message":"formatting"},{"commit":"c0c0e05642e0f473cde34178d815978fff8fe1ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add dig `+noall +answer` support"},{"commit":"966978f17e40a338f982628825f30a19d4b84e4c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":72,"deletions":0,"files":[".../centos-7.7/ping6-ip-O-p-unparsable.json",".../centos-7.7/ping6-ip-O-p-unparsable.out",".../fixtures/osx-10.14.6/ping6-ip-unparsable.json","tests/fixtures/osx-10.14.6/ping6-ip-unparsable.out","tests/test_ping.py"],"file_stats":[{"name":".../centos-7.7/ping6-ip-O-p-unparsable.json","lines_changed":1},{"name":".../centos-7.7/ping6-ip-O-p-unparsable.out","lines_changed":27},{"name":".../fixtures/osx-10.14.6/ping6-ip-unparsable.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-unparsable.out","lines_changed":9},{"name":"tests/test_ping.py","lines_changed":34}]},"message":"add more unparsable line ping tests"},{"commit":"8ab08a5231e082940a62fcde4be218b7ba94be31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":4}]},"message":"doc update"},{"commit":"48e534fa03b92b2583c5c6269c76651f3aa420cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":17,"deletions":2,"files":["tests/fixtures/osx-10.14.6/dig-noall-answer.json","tests/fixtures/osx-10.14.6/dig-noall-answer.out","tests/test_dig.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/dig-noall-answer.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig-noall-answer.out","lines_changed":4},{"name":"tests/test_dig.py","lines_changed":14}]},"message":"add +noall +answer test"},{"commit":"61851c1bd02aa82d5d82e68595e45630ead13d34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":85,"deletions":3,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":40},{"name":"jc/parsers/dig.py","lines_changed":48}]},"message":"add support for +noall +answer"},{"commit":"3c51b2d83d301b4072bbb12fdba4f60b900573da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":40,"deletions":0,"files":[".../centos-7.7/ping-ip-O-unparsedlines.json",".../centos-7.7/ping-ip-O-unparsedlines.out","tests/test_ping.py"],"file_stats":[{"name":".../centos-7.7/ping-ip-O-unparsedlines.json","lines_changed":1},{"name":".../centos-7.7/ping-ip-O-unparsedlines.out","lines_changed":27},{"name":"tests/test_ping.py","lines_changed":12}]},"message":"add tests for unparsable lines on linux"},{"commit":"ee3a28528e152c61f05bdf71f264fe38274b4190","merge":"fe1f101 916bcda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"916bcdae3881fc9c9f9a91c8c901a714cff3e1da","merge":"fb14f54 efb1d3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #136 from kellyjonbrazil/master"},{"commit":"efb1d3e6b2db920423511a9dcf4c5e5fd9d6af43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"templates/readme_template","lines_changed":4}]},"message":"add blog title and minor formatting"},{"commit":"4e6ae66bacc014e49c4a9229d10dcc8e95de436c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting"},{"commit":"5ee88e7b679bc163a1916d560be6ff29f51699e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":10}]},"message":"add use cases section"},{"commit":"c3b68903cbd898f80438af342195eec7575aafd3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":10}]},"message":"add use cases section"},{"commit":"fe1f1013a74bdf6b4284f11dd59db8ea17e5e5d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":10}]},"message":"add use cases section"},{"commit":"fb14f5439f00d5eaf08651c552189fd4be7358d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":52,"deletions":3,"files":["jc/parsers/ping.py",".../osx-10.14.6/ping-ip-unknown-errors.json",".../osx-10.14.6/ping-ip-unknown-errors.out","tests/test_ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":7},{"name":".../osx-10.14.6/ping-ip-unknown-errors.json","lines_changed":1},{"name":".../osx-10.14.6/ping-ip-unknown-errors.out","lines_changed":35},{"name":"tests/test_ping.py","lines_changed":12}]},"message":"fix and tests for unknown or unparsable errors"},{"commit":"5ca0fc364eb22d583bee5633cdd7183c1d70bb6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/parsers/ping.md"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":1}]},"message":"add unparsed_line to docs"},{"commit":"a1fe7037e5267ec4aced719eff3715085eb35bca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":10}]},"message":"add unparsed_line field if line cannot be parsed"},{"commit":"c2af7d113ed8e8cf9af985c969cf29858a3c26a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["CHANGELOG","docs/parsers/ping.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"docs/parsers/ping.md","lines_changed":2}]},"message":"add ping updates"},{"commit":"ff034e401d5c33efbc3c4bc2f0e386d81eaae7fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":59,"deletions":43,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":102}]},"message":"use try/except to make parser more resilient against unknown error types"},{"commit":"5abe095beb4b668e5f55fe8c9588677547e4c2a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":3,"files":["docs/parsers/ping.md"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":17}]},"message":"update ping docs"},{"commit":"33de5f01e638953c83bb0960dc3550ca4547849b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["jc/__init__.py","setup.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":4},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"8ce155d843806be4ad23491b4401e4eda02e2a1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":86,"deletions":23,"files":["CHANGELOG","jc/parsers/ping.py",".../fixtures/osx-10.14.6/ping-ip-unreachable.json","tests/fixtures/osx-10.14.6/ping-ip-unreachable.out","tests/test_ping.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/ping.py","lines_changed":56},{"name":".../fixtures/osx-10.14.6/ping-ip-unreachable.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-unreachable.out","lines_changed":35},{"name":"tests/test_ping.py","lines_changed":14}]},"message":"add support for error replies in v4 ping on osx and bsd"},{"commit":"b921d5ec9583c8f8e992613ae2eaf62165722054","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":105,"deletions":6,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":111}]},"message":"initial support for error replies in bsd/osx"},{"commit":"e21542aaa2aa5f2f287ddc227df41ae47d761332","merge":"d24f9a8 6150aae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #135 from kellyjonbrazil/dev"},{"commit":"6150aae0aeabafba26d9f119406b0660d9221cb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"clarify packaged binaries"},{"commit":"f27b35f37104ad2012c3bddde0bd94941af06894","merge":"bd428a9 d24f9a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #131 from kellyjonbrazil/master"},{"commit":"d24f9a885d3954035a98a488671486408f509dca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["CONTRIBUTING.md","README.md","templates/readme_template"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2},{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"fix contributing link"},{"commit":"48dd82c8d1b756c4e08d49b8234b8060080dc035","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"trigger page build on github pages"},{"commit":"e57167ad1f240de6ec5fc86c51cfb780535cd783","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"empty commit"},{"commit":"ada91376426ff359c495fb31081404a2cce72b5f","merge":"0c209db bd428a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #130 from kellyjonbrazil/dev"},{"commit":"bd428a9fd75327710dce96f3c95f74ab9d1beaad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"fix link"},{"commit":"934941332f91d9e2cc4e691b154bb5427166ed30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"templates/readme_template","lines_changed":6}]},"message":"minor link updates"},{"commit":"0c209dbd108638f89a43801126a332379be9ae8b","merge":"92e2252 56e041a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #129 from kellyjonbrazil/dev"},{"commit":"56e041aa260b2daf2f5662fae98645a93137adb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add Practical JSON at the Command Line blog link"},{"commit":"cf9d48582e4e5df6c8498b916a2f9cf036869f3d","merge":"35464bb 92e2252","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #128 from kellyjonbrazil/master"},{"commit":"92e2252bee00482bb0eeae3074b107d4c8553e4c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"fix typo"},{"commit":"fd7861db11e5aaa17c4e7bbce942c0c096116e30","merge":"fcc7e52 35464bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #127 from kellyjonbrazil/dev"},{"commit":"35464bbbfb6b424ef3ee1c855557ada1bf3769fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"date update"},{"commit":"db8ddd7f0e0c2a8bd3e545619e81d3d3972a4d7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":11,"deletions":17,"files":["jc/man/jc.1.gz","jc/parsers/ufw.py","man/jc.1.gz","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/ufw.py","lines_changed":24},{"name":"man/jc.1.gz","lines_changed":null},{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.json","lines_changed":2}]},"message":"fix for scenarios where the default port range didn't always display, or overrode existing port ranges."},{"commit":"72207c54ee5734e3d2d3d1a063c8daf1edaa8815","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":102,"deletions":94,"files":["docs/parsers/ufw_appinfo.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/ufw_appinfo.md","lines_changed":196},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update ufw app info docs to support multiple apps (ufw app info all)"},{"commit":"a683f68003ea64dd5e2c4f06b53a1561ad774f12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":285,"deletions":202,"files":["EXAMPLES.md","jc/parsers/ufw_appinfo.py","tests/fixtures/generic/ufw-appinfo-msn.json","tests/fixtures/generic/ufw-appinfo-test.json","tests/fixtures/generic/ufw-appinfo-test2.json","tests/fixtures/generic/ufw-appinfo-test3.json","tests/fixtures/ubuntu-18.04/ufw-appinfo-all.json","tests/fixtures/ubuntu-18.04/ufw-appinfo-all.out","tests/test_ufw_appinfo.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":68},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":345},{"name":"tests/fixtures/generic/ufw-appinfo-msn.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw-appinfo-test.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw-appinfo-test2.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw-appinfo-test3.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-appinfo-all.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ufw-appinfo-all.out","lines_changed":51},{"name":"tests/test_ufw_appinfo.py","lines_changed":14}]},"message":"change schema to a list of dictionaries to support `ufw app info all` use case"},{"commit":"8d2d3db3fa969456342181a226bf54a3f1613542","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":0,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting"},{"commit":"eca785450d1c72687817d09259fa7cd33376fafc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":34,"deletions":13,"files":["CHANGELOG","README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":22},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/readme_template","lines_changed":22}]},"message":"add caveats to readme and manpage"},{"commit":"5b40a97ce417687b4e37f320b8a3f07dd7fd169c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":13,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/manpage_template","lines_changed":13}]},"message":"add caveats to man page"},{"commit":"66cb4e9bde81b9290c1addaf851de5d80a1b0702","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":216,"deletions":234,"files":["EXAMPLES.md","docs/parsers/ufw.md","jc/man/jc.1.gz","jc/parsers/ufw.py","man/jc.1.gz"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":96},{"name":"docs/parsers/ufw.md","lines_changed":226},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/ufw.py","lines_changed":128},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update ufw parser docs"},{"commit":"d1f33645caccdb3a55576081c4d355f997ac033c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":26,"deletions":10,"files":["tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw-numbered2.json","tests/fixtures/generic/ufw.json","tests/fixtures/ubuntu-18.04/ufw-numbered.json","tests/fixtures/ubuntu-18.04/ufw-numbered.out","tests/fixtures/ubuntu-18.04/ufw-verbose.json","tests/fixtures/ubuntu-18.04/ufw-verbose.out"],"file_stats":[{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw-numbered2.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-numbered.out","lines_changed":16},{"name":"tests/fixtures/ubuntu-18.04/ufw-verbose.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-verbose.out","lines_changed":10}]},"message":"update ufw tests"},{"commit":"5eff65c326675a449afd05a2af0a6c9bcf7b5e23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":85,"deletions":268,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":353}]},"message":"update schema to support port lists and port range lists. Also support other transports than tcp and udp"},{"commit":"929c38715d87bf9dd689507d319c22b90871ae1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"formatting"},{"commit":"8c91a7b7601a967cd9d8096433ffd4ad62b65ceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":4}]},"message":"formatting"},{"commit":"14289ecd6c022ad204444dff5b5e48f6024a5d0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":4}]},"message":"more timezone info"},{"commit":"b833c44783eb32f2fad24ca205b5b7eab854750f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add ufw-appinfo parser"},{"commit":"e23aa818eaa6d1a389ddef7dd2ad8f62b9f6ff25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":5}]},"message":"add tests section and timezone info"},{"commit":"473d919c1350a8dc34d233033a5a7d12c928e42d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":32,"deletions":0,"files":["runtests.sh","tests/fixtures/generic/ufw-numbered2.json","tests/fixtures/generic/ufw-numbered2.out","tests/test_ufw.py"],"file_stats":[{"name":"runtests.sh","lines_changed":1},{"name":"tests/fixtures/generic/ufw-numbered2.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-numbered2.out","lines_changed":18},{"name":"tests/test_ufw.py","lines_changed":12}]},"message":"add another ufw test sample"},{"commit":"9f925d6ac989a4f21a8c00c84fcf97dfb141e8c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update"},{"commit":"f6ca32b3a31f314fa0b31d9e8b5494491b928f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/ufw.md","jc/parsers/ufw.py"],"file_stats":[{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"jc/parsers/ufw.py","lines_changed":2}]},"message":"update ufw docs with a note on lists of ports"},{"commit":"4cbe84c3d6ac8a3b594feb525460f2a68f5d62b2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":110,"deletions":0,"files":["tests/fixtures/generic/ufw-appinfo-msn.json","tests/fixtures/generic/ufw-appinfo-msn.out","tests/fixtures/generic/ufw-appinfo-test.json","tests/fixtures/generic/ufw-appinfo-test.out","tests/fixtures/generic/ufw-appinfo-test2.json","tests/fixtures/generic/ufw-appinfo-test2.out","tests/fixtures/generic/ufw-appinfo-test3.json","tests/fixtures/generic/ufw-appinfo-test3.out","tests/test_ufw_appinfo.py"],"file_stats":[{"name":"tests/fixtures/generic/ufw-appinfo-msn.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-appinfo-msn.out","lines_changed":9},{"name":"tests/fixtures/generic/ufw-appinfo-test.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-appinfo-test.out","lines_changed":9},{"name":"tests/fixtures/generic/ufw-appinfo-test2.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-appinfo-test2.out","lines_changed":9},{"name":"tests/fixtures/generic/ufw-appinfo-test3.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-appinfo-test3.out","lines_changed":9},{"name":"tests/test_ufw_appinfo.py","lines_changed":70}]},"message":"add ufw-appinfo tests"},{"commit":"ffac5bf9d381305daa86e546f8570be092e5ff34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":12,"deletions":12,"files":["docs/parsers/ufw.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/ufw.md","lines_changed":24},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update"},{"commit":"9aa424f9f8c7e4e0dc29e2c58dac481098beba7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":12}]},"message":"fix ufw example"},{"commit":"0a8495c68e427e39bbda957dd933fa2a461092e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":15,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":27}]},"message":"update docs"},{"commit":"6aea066cf024f92adf4b94eebc7d51430c22332c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/parsers/ufw_appinfo.py","lines_changed":6}]},"message":"make normalized list appear only when data exists. set magic commands"},{"commit":"ff3c2d809ec3ea6e556c302909a228ee670578c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":176,"deletions":25,"files":["EXAMPLES.md","README.md","docs/parsers/ufw_appinfo.md","jc/man/jc.1.gz","jc/parsers/ufw_appinfo.py","man/jc.1.gz"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":39},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":58},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":103},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add ufw-appinfo to docs"},{"commit":"145059fc8946b7026184139baea143c2869bc4e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":8,"files":["jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/parsers/ufw_appinfo.py","lines_changed":28}]},"message":"clean up output if sections are blank"},{"commit":"20e5c19de448c1b979497817c887d8d2d6487839","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/parsers/ufw_appinfo.py","lines_changed":3}]},"message":"fix key error if tcp or udp don't exist"},{"commit":"4c98fd4b877c54e1cf7d285a29e178321be12f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":101,"deletions":1,"files":["docs/parsers/ufw_appinfo.md","jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"docs/parsers/ufw_appinfo.md","lines_changed":100},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":2}]},"message":"doc update"},{"commit":"125e54213e8d4dcfe2e3271456af80b3f79c0544","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":105,"deletions":48,"files":["jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/parsers/ufw_appinfo.py","lines_changed":153}]},"message":"update schema and add normalized fields"},{"commit":"0152e0665f87833250561d743144af35416992f8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":215,"deletions":0,"files":["jc/cli.py","jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":214}]},"message":"initial working ufw-appinfo parser"},{"commit":"0679bcbc560ea3575555d8546afdd4e2474d05d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":31,"deletions":5,"files":["tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json","tests/fixtures/ubuntu-18.04/ufw-numbered.json","tests/fixtures/ubuntu-18.04/ufw-verbose.json","tests/test_ufw.py"],"file_stats":[{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-numbered.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ufw-verbose.json","lines_changed":1},{"name":"tests/test_ufw.py","lines_changed":30}]},"message":"fix ufw tests"},{"commit":"5500648aa0886ea5089856e5b33d7c8ebd78d5b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":46,"deletions":46,"files":["EXAMPLES.md","docs/parsers/ufw.md","jc/parsers/ufw.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":20},{"name":"docs/parsers/ufw.md","lines_changed":36},{"name":"jc/parsers/ufw.py","lines_changed":36}]},"message":"fix ufw docs for int conversions and service behavior"},{"commit":"bb50caad4dfaefa309e747fd05b650186c5a80f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":31,"deletions":4,"files":["jc/parsers/ufw.py","tests/fixtures/ubuntu-18.04/ufw-numbered.out","tests/fixtures/ubuntu-18.04/ufw-verbose.out"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":10},{"name":"tests/fixtures/ubuntu-18.04/ufw-numbered.out","lines_changed":11},{"name":"tests/fixtures/ubuntu-18.04/ufw-verbose.out","lines_changed":14}]},"message":"fix prefix int conversions. don't reset _transport if service is really a list of ports"},{"commit":"7eef5d94d591a3f70f6638b1b30f952a3bf35f9d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":0,"files":["EXAMPLES.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":5},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"ufw doc update"},{"commit":"74f623f8d607c050db8f62ea4996c4e6aae43268","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":43,"deletions":11,"files":["docs/parsers/ufw.md","jc/parsers/ufw.py","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json","tests/fixtures/generic/ufw.out"],"file_stats":[{"name":"docs/parsers/ufw.md","lines_changed":13},{"name":"jc/parsers/ufw.py","lines_changed":25},{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.out","lines_changed":12}]},"message":"add support for rule comments and LIMIT and REJECT actions"},{"commit":"f638aca092475bbae14fed765e90435c093fcb8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add deb package name fix"},{"commit":"da35eaf80ad4f11e7482fc4734db4b2265e50548","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["docs/parsers/ufw.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"formatting"},{"commit":"ade0e8e8fc18ff9a0dd406206a85238f1f5a739d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":107,"deletions":0,"files":["tests/fixtures/generic/ufw-inactive.json","tests/fixtures/generic/ufw-inactive.out","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw-numbered.out","tests/fixtures/generic/ufw.json","tests/fixtures/generic/ufw.out","tests/test_ufw.py"],"file_stats":[{"name":"tests/fixtures/generic/ufw-inactive.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-inactive.out","lines_changed":1},{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-numbered.out","lines_changed":23},{"name":"tests/fixtures/generic/ufw.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw.out","lines_changed":22},{"name":"tests/test_ufw.py","lines_changed":58}]},"message":"add ufw tests"},{"commit":"90076090f05a1f03e2fbff307418ee18d7d046ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":5,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":12}]},"message":"fix int conversions if 'rules' key does not exist"},{"commit":"23635def8b654097178f73ed1b57fc50965142d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":306,"deletions":4,"files":["README.md","docs/parsers/ping.md","docs/parsers/ufw.md","docs/utils.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"docs/parsers/ping.md","lines_changed":1},{"name":"docs/parsers/ufw.md","lines_changed":302},{"name":"docs/utils.md","lines_changed":4},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add ufw to docs"},{"commit":"4eeec087bde98f90ab8425473d1fbeee6834852e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":115,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":115}]},"message":"add ufw example"},{"commit":"733196103897a1d84d242324ddcf96e783320329","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":4}]},"message":"update docs with new examples that have `to_service` always existing."},{"commit":"e4acb3d5b70a7d75741ef3e35cd6750d1362a80f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":4}]},"message":"always make to/from_service None if ports are assigned"},{"commit":"c60549a9947d5684bbfa58223bfbcfc40a3ed479","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":29,"deletions":29,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":58}]},"message":"change field name from to/from_subnet to to/from_ip_prefix"},{"commit":"d46fc8bbfa15a80a1af6c64f70230f858c215223","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":9}]},"message":"set to/from_transport to None if to/from_service is set"},{"commit":"b133d1f90d49362594508d8c475663754f0e7675","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":6}]},"message":"strip interface value"},{"commit":"5be615a97e7c145c8351764234ac591028560c34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":219,"deletions":9,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":228}]},"message":"add examples for docs"},{"commit":"ea1d820f96321ddf4084b54ee2fdf397295beb21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":11}]},"message":"convert integer fields"},{"commit":"47e262cf7200b02ff0af97a70ffa6bec286c8f39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":59,"deletions":14,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":73}]},"message":"clean up fields"},{"commit":"eec673be9092e382694aa02682564510ce4e7f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":88,"deletions":3,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":91}]},"message":"working raw parser"},{"commit":"9a0fb2a7c87e6fde0cc0d84fa8a1f131e28ea732","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":157,"deletions":0,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":157}]},"message":"parse major sections"},{"commit":"b5145d6c14d7a51e7cfdebe126c9689dc90f7b27","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":8,"deletions":4,"files":["CHANGELOG","jc/__init__.py","jc/cli.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":6},{"name":"jc/cli.py","lines_changed":1},{"name":"setup.py","lines_changed":2}]},"message":"version bump to v1.15.3"},{"commit":"9747ca414dfb8218389c7b2199a080edabc2a184","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":11}]},"message":"minor optimization to convert_to_int(). No longer runs through convert_to_float(), but uses standard float() function."},{"commit":"312d465b61a15592cc70d3734ad747b9a2be10ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":2}]},"message":"update link"},{"commit":"7dcf87d24ad40eba6ba98de2b4b2bf177a76cd71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":1}]},"message":"formatting"},{"commit":"cf3cfd16a9de05f30303b5952fbe609cde842d2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":6}]},"message":"rename tests"},{"commit":"fcc7e5294973d1a18943fa2ce2e836b0fe757d95","merge":"6c83846 3ab9d48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #123 from kellyjonbrazil/dev"},{"commit":"3ab9d480149a692510ab9e0ac8e745b674683e3d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"update changelog"},{"commit":"7eddf41c5f6310264359cd6d78bdfa4b65af7d06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":96,"deletions":9,"files":["jc/man/jc.1.gz","jc/utils.py","man/jc.1.gz","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/df.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/free-h.json","tests/test_utils.py"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/utils.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null},{"name":"tests/fixtures/centos-7.7/df-h.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/df.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/free-h.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/df-h.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/df-h.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/free-h.json","lines_changed":2},{"name":"tests/test_utils.py","lines_changed":89}]},"message":"dont round up int conversions and fix tests"},{"commit":"27a196c93862bd737603cfe402b35529eb412954","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update"},{"commit":"e4324f05fb6f89c34fa1567e70d8636457623edb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":14,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":14},{"name":"jc/parsers/dig.py","lines_changed":14}]},"message":"fix indentation in doc"},{"commit":"d36b332bd78b5bf5979cdc59b31da08d8e4104d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":53,"insertions":196,"deletions":274,"files":["docs/parsers/systemctl_lj.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/wc.md","docs/parsers/who.md","docs/utils.md","jc/parsers/acpi.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/hash.py","jc/parsers/hciconfig.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl_lj.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/utils.py"],"file_stats":[{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":2},{"name":"jc/parsers/acpi.py","lines_changed":21},{"name":"jc/parsers/airport_s.py","lines_changed":9},{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/blkid.py","lines_changed":4},{"name":"jc/parsers/cksum.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":4},{"name":"jc/parsers/dir.py","lines_changed":4},{"name":"jc/parsers/dmidecode.py","lines_changed":4},{"name":"jc/parsers/du.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":4},{"name":"jc/parsers/fstab.py","lines_changed":4},{"name":"jc/parsers/group.py","lines_changed":4},{"name":"jc/parsers/hash.py","lines_changed":4},{"name":"jc/parsers/hciconfig.py","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":4},{"name":"jc/parsers/iptables.py","lines_changed":4},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4},{"name":"jc/parsers/lsblk.py","lines_changed":13},{"name":"jc/parsers/lsmod.py","lines_changed":4},{"name":"jc/parsers/lsof.py","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":16},{"name":"jc/parsers/ntpq.py","lines_changed":10},{"name":"jc/parsers/passwd.py","lines_changed":4},{"name":"jc/parsers/ps.py","lines_changed":13},{"name":"jc/parsers/route.py","lines_changed":4},{"name":"jc/parsers/rpm_qi.py","lines_changed":4},{"name":"jc/parsers/shadow.py","lines_changed":4},{"name":"jc/parsers/ss.py","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"jc/parsers/systemctl_lj.py","lines_changed":13},{"name":"jc/parsers/systeminfo.py","lines_changed":6},{"name":"jc/parsers/time.py","lines_changed":32},{"name":"jc/parsers/timedatectl.py","lines_changed":8},{"name":"jc/parsers/tracepath.py","lines_changed":42},{"name":"jc/parsers/traceroute.py","lines_changed":40},{"name":"jc/parsers/upower.py","lines_changed":24},{"name":"jc/parsers/uptime.py","lines_changed":39},{"name":"jc/parsers/w.py","lines_changed":4},{"name":"jc/parsers/wc.py","lines_changed":12},{"name":"jc/parsers/who.py","lines_changed":12},{"name":"jc/utils.py","lines_changed":36}]},"message":"use jc.utils for conversions"},{"commit":"1f034826f69c461495f7a302cc8fe35e3052e72f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":42,"insertions":94,"deletions":185,"files":["docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","tests/fixtures/centos-7.7/ls-alh.json","tests/fixtures/centos-7.7/lsof-sudo.json","tests/fixtures/centos-7.7/lsof.json","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/ubuntu-18.04/ls-alh.json","tests/fixtures/ubuntu-18.04/lsof-sudo.json","tests/fixtures/ubuntu-18.04/lsof.json"],"file_stats":[{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":3},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":10},{"name":"jc/parsers/jobs.py","lines_changed":8},{"name":"jc/parsers/last.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":9},{"name":"jc/parsers/lsblk.py","lines_changed":14},{"name":"jc/parsers/lsmod.py","lines_changed":9},{"name":"jc/parsers/lsof.py","lines_changed":10},{"name":"jc/parsers/netstat.py","lines_changed":37},{"name":"jc/parsers/ntpq.py","lines_changed":12},{"name":"jc/parsers/passwd.py","lines_changed":8},{"name":"jc/parsers/ping.py","lines_changed":34},{"name":"jc/parsers/ps.py","lines_changed":15},{"name":"jc/parsers/route.py","lines_changed":8},{"name":"jc/parsers/rpm_qi.py","lines_changed":9},{"name":"jc/parsers/shadow.py","lines_changed":8},{"name":"jc/parsers/ss.py","lines_changed":22},{"name":"jc/parsers/stat.py","lines_changed":11},{"name":"tests/fixtures/centos-7.7/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/lsof-sudo.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/lsof.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/lsof-sudo.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/lsof.json","lines_changed":2}]},"message":"use jc.utils for conversions"},{"commit":"246c707c98d3128b4e38f5c4b23a1e0ceedc0b0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":46,"insertions":190,"deletions":196,"files":["CHANGELOG","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/df.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/hash.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/utils.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/hash.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/utils.py","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/osx-10.11.6/df-h.json","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/free-h.json"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":48},{"name":"jc/parsers/acpi.py","lines_changed":22},{"name":"jc/parsers/airport.py","lines_changed":7},{"name":"jc/parsers/airport_s.py","lines_changed":12},{"name":"jc/parsers/arp.py","lines_changed":5},{"name":"jc/parsers/blkid.py","lines_changed":7},{"name":"jc/parsers/cksum.py","lines_changed":8},{"name":"jc/parsers/df.py","lines_changed":14},{"name":"jc/parsers/dig.py","lines_changed":50},{"name":"jc/parsers/dir.py","lines_changed":11},{"name":"jc/parsers/dmidecode.py","lines_changed":8},{"name":"jc/parsers/du.py","lines_changed":8},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":8},{"name":"jc/parsers/fstab.py","lines_changed":8},{"name":"jc/parsers/group.py","lines_changed":8},{"name":"jc/parsers/hash.py","lines_changed":9},{"name":"jc/parsers/hciconfig.py","lines_changed":8},{"name":"jc/parsers/history.py","lines_changed":6},{"name":"jc/parsers/id.py","lines_changed":17},{"name":"jc/parsers/ifconfig.py","lines_changed":11},{"name":"jc/utils.py","lines_changed":62},{"name":"tests/fixtures/centos-7.7/df-h.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/free-h.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/df-h.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/df-h.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/df-h.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/free-h.json","lines_changed":2}]},"message":"use jc.utils conversions"},{"commit":"b5d8968144e76090870f8563dc1bce910fba668c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":19}]},"message":"add convert_to_int function"},{"commit":"f7b9fbefdde6973077573fec02342eb9946789c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add query_size info for dig"},{"commit":"b1fc4533833ca25f59869bfec8ac114bf49c7847","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2}]},"message":"fix _IfconfigParser name"},{"commit":"7581c8d0f4262fc6a05240bb21ffe533b153f6e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":45,"deletions":32,"files":["docs/parsers/dig.md","jc/parsers/dig.py","tests/fixtures/generic/dig-edns3.json"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":74},{"name":"tests/fixtures/generic/dig-edns3.json","lines_changed":2}]},"message":"add query_size field. handle user-specified dig output better - especially when querying dnssec"},{"commit":"32bf8ad6f4fff83fdfd83d66c1ba8f1af5a65a90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":52,"deletions":24,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"EXAMPLES.md","lines_changed":10},{"name":"docs/parsers/dig.md","lines_changed":32},{"name":"jc/parsers/dig.py","lines_changed":32}]},"message":"update dig docs"},{"commit":"b083bcc10fa1105fc09ce8d2c3297aa5575c9d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update man page"},{"commit":"4f6fdd120d23468270c1d7111e4ef71b87759a1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":134,"deletions":100,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":117},{"name":"jc/__init__.py","lines_changed":117}]},"message":"use dig as example"},{"commit":"eb0038be2490053d32803d30e1c3d4d34509d130","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":40,"deletions":19,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":59}]},"message":"update dig examples"},{"commit":"7ecdf819fa37c38ae6159ad8e7bc973ee4f34559","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":84,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":42},{"name":"templates/readme_template","lines_changed":42}]},"message":"remove dig example from readme,"},{"commit":"c6aa4d083550d25bcb621cad524047cfd6a08217","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":252,"deletions":317,"files":["README.md","docs/parsers/dig.md","jc/man/jc.1.gz","jc/parsers/dig.py","man/jc.1.gz","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":84},{"name":"docs/parsers/dig.md","lines_changed":313},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/dig.py","lines_changed":88},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/readme_template","lines_changed":84}]},"message":"update docs with new dig parser examples"},{"commit":"7c584b89a6e6b924d53d50103b97f0c2405c33b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":15,"insertions":352,"deletions":52,"files":["jc/parsers/dig.py","tests/fixtures/generic/dig-additional.json","tests/fixtures/generic/dig-additional.out","tests/fixtures/generic/dig-additional2.json","tests/fixtures/generic/dig-additional2.out","tests/fixtures/generic/dig-additional3.json","tests/fixtures/generic/dig-additional3.out","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/generic/dig-edns.json","tests/fixtures/generic/dig-edns.out","tests/fixtures/generic/dig-edns2.json","tests/fixtures/generic/dig-edns2.out","tests/fixtures/generic/dig-edns3.json","tests/fixtures/generic/dig-edns3.out","tests/test_dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":123},{"name":"tests/fixtures/generic/dig-additional.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-additional.out","lines_changed":32},{"name":"tests/fixtures/generic/dig-additional2.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-additional2.out","lines_changed":34},{"name":"tests/fixtures/generic/dig-additional3.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-additional3.out","lines_changed":41},{"name":"tests/fixtures/generic/dig-answer-spaces.json","lines_changed":2},{"name":"tests/fixtures/generic/dig-edns.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-edns.out","lines_changed":20},{"name":"tests/fixtures/generic/dig-edns2.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-edns2.out","lines_changed":38},{"name":"tests/fixtures/generic/dig-edns3.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-edns3.out","lines_changed":34},{"name":"tests/test_dig.py","lines_changed":74}]},"message":"add additional section"},{"commit":"c166c0bfdafa922f57f021fa4d16e467fca02d58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":14,"insertions":55,"deletions":21,"files":["jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":50},{"name":"tests/fixtures/centos-7.7/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig-x.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig.json","lines_changed":2},{"name":"tests/fixtures/generic/dig-answer-spaces.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-x.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig.json","lines_changed":2}]},"message":"add opt_pseudosection section to output and fix existing tests"},{"commit":"a8dd3f7802bfe8fd3ffbedf89af45ddc580ee78d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":54,"deletions":281,"files":["CHANGELOG","jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-axfr.json"],"file_stats":[{"name":"CHANGELOG","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":325},{"name":"tests/fixtures/centos-7.7/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-axfr.json","lines_changed":2}]},"message":"working dig axfr fixes"},{"commit":"3b0e2f03f3b11398ff57b1daed542faaf0b80a62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":24,"deletions":23,"files":["jc/cli.py","templates/manpage_template"],"file_stats":[{"name":"jc/cli.py","lines_changed":21},{"name":"templates/manpage_template","lines_changed":26}]},"message":"clean up examples"},{"commit":"8390ae48c88ab1c7d5acbf40c0e60606953817bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":8,"deletions":8,"files":["jc/parsers/dig.py","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":4},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig.json","lines_changed":2}]},"message":"fix server entry when IPv6 address is in value (maxsplit on colons)"},{"commit":"2db82c0a7e19d596c876ede8a8ff106aaa733ee5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":66,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":66}]},"message":"add systeminfo example"},{"commit":"61479540756704f10853233300ceae8f954a8a95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":0,"files":["tests/test_systeminfo.py","tests/test_utils.py"],"file_stats":[{"name":"tests/test_systeminfo.py","lines_changed":1},{"name":"tests/test_utils.py","lines_changed":4}]},"message":"update tests"},{"commit":"691df271fcfe057ae4b75ad40869e23deb37b886","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":1,"files":["docs/parsers/systeminfo.md","jc/man/jc.1.gz","jc/parsers/systeminfo.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/systeminfo.py","lines_changed":1},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add info docstring"},{"commit":"89f52b95f7055da9d7b5fa8dce0923d4c3435bd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":467,"deletions":821,"files":["README.md","docs/parsers/systeminfo.md","jc/man/jc.1.gz","jc/parsers/systeminfo.py","jc/utils.py","man/jc.1.gz",".../windows/windows-10/systeminfo-hyperv-utc.json",".../windows/windows-10/systeminfo-hyperv-utc.out",".../windows/windows-10/systeminfo-hyperv.json","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-10/systeminfo.out",".../windows/windows-2012r2/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/systeminfo.md","lines_changed":290},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/systeminfo.py","lines_changed":361},{"name":"jc/utils.py","lines_changed":5},{"name":"man/jc.1.gz","lines_changed":null},{"name":".../windows/windows-10/systeminfo-hyperv-utc.json","lines_changed":1},{"name":".../windows/windows-10/systeminfo-hyperv-utc.out","lines_changed":79},{"name":".../windows/windows-10/systeminfo-hyperv.json","lines_changed":112},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":57},{"name":"tests/fixtures/windows/windows-10/systeminfo.out","lines_changed":1},{"name":".../windows/windows-2012r2/systeminfo.json","lines_changed":55},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":326}]},"message":"update systeminfo parser with updated timestamps, normalized blank fields, and new doc style"},{"commit":"146acc1bf69c402e38c2f1bc842b84e6cff7e2cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":29,"files":["jc/parsers/systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":52}]},"message":"rename functions to make them private"},{"commit":"c4a345f59aa090336b4e80f181493cd5bc2c17c5","merge":"dfd2703 325fab2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #106 from jon-rd/j/systeminfo"},{"commit":"dfd2703f75b907ba865fff266d0742d8931bc2d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"bump dev to v1.15.2"},{"commit":"325fab2de7b8a4bfc452ab8d3cf333d47fdf4989","author":"Jon Smith","author_email":"jon@rebelliondefense.com","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":10}]},"message":"update documentation for parsed structures"},{"commit":"f3d00cf38ad15aeda7eaa5644ebc30ff33de6a29","author":"Jon Smith","author_email":"jon@rebelliondefense.com","stats":{"files_changed":5,"insertions":56,"deletions":48,"files":["jc/parsers/systeminfo.py",".../windows/windows-10/systeminfo-hyperv.json","tests/fixtures/windows/windows-10/systeminfo.json",".../windows/windows-2012r2/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":48},{"name":".../windows/windows-10/systeminfo-hyperv.json","lines_changed":14},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":14},{"name":".../windows/windows-2012r2/systeminfo.json","lines_changed":14},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":14}]},"message":"append mb to memory key names; adjust expected timestamps to utc tz"},{"commit":"14838f7f5d780896f1318cac2c3f34d249a158d4","author":"Jon Smith","author_email":"jon@rebelliondefense.com","stats":{"files_changed":9,"insertions":956,"deletions":116,"files":["jc/parsers/systeminfo.py","jc/utils.py",".../windows/windows-10/systeminfo-hyperv.json",".../windows/windows-10/systeminfo-hyperv.out","tests/fixtures/windows/windows-10/systeminfo.json",".../windows/windows-2012r2/systeminfo.json",".../fixtures/windows/windows-2012r2/systeminfo.out","tests/fixtures/windows/windows-7/systeminfo.json","tests/test_systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":357},{"name":"jc/utils.py","lines_changed":1},{"name":".../windows/windows-10/systeminfo-hyperv.json","lines_changed":111},{"name":".../windows/windows-10/systeminfo-hyperv.out","lines_changed":79},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":43},{"name":".../windows/windows-2012r2/systeminfo.json","lines_changed":54},{"name":".../fixtures/windows/windows-2012r2/systeminfo.out","lines_changed":45},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":311},{"name":"tests/test_systeminfo.py","lines_changed":71}]},"message":"update schema with nic, hyperv, and process changes"},{"commit":"af74047b81776c2ea32d82f9145ab60c346c8203","author":"Jon Smith","author_email":"jon@rebelliondefense.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":8}]},"message":"update schema based on processor/hotfix changes"},{"commit":"660c59129cf4ba7889fb3c6fbafd9dd9b479ccd9","author":"Jon Smith","author_email":"jon@rebelliondefense.com","stats":{"files_changed":3,"insertions":41,"deletions":9,"files":["jc/parsers/systeminfo.py","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":42},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":4},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":4}]},"message":"Add parsing of processors/hotfixs"},{"commit":"89a88e186ed71d84ea802cf08ab756b49cee3225","author":"Jon Smith","author_email":"jon@rebelliondefense.com","stats":{"files_changed":1,"insertions":152,"deletions":0,"files":["docs/parsers/systeminfo.md"],"file_stats":[{"name":"docs/parsers/systeminfo.md","lines_changed":152}]},"message":"Add systeminfo.md file"},{"commit":"f861cf95b96a224a0a11f2cdc3261b94c02415ef","author":"Jon Smith","author_email":"jon@rebelliondefense.com","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["jc/cli.py","jc/parsers/systeminfo.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/systeminfo.py","lines_changed":2}]},"message":"Change to v0.5; add parser to cli.py; add to docgen"},{"commit":"ee8f06cbdb03f8254bb6a3c56fa5b8a64ff9ca77","author":"Jon Smith","author_email":"jon@rebelliondefense.com","stats":{"files_changed":6,"insertions":688,"deletions":0,"files":["jc/parsers/systeminfo.py","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-10/systeminfo.out","tests/fixtures/windows/windows-7/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.out","tests/test_systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":209},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":35},{"name":"tests/fixtures/windows/windows-10/systeminfo.out","lines_changed":47},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":34},{"name":"tests/fixtures/windows/windows-7/systeminfo.out","lines_changed":298},{"name":"tests/test_systeminfo.py","lines_changed":65}]},"message":"Add windows systeminfo command parser"},{"commit":"a2e8b3c7b681605916b8950d035ee19889a125a5","merge":"e0681ee 6c83846","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #121 from kellyjonbrazil/master"},{"commit":"6c838460752c7131f75cdab2da07266fee492060","merge":"10292f7 e0681ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #120 from kellyjonbrazil/dev"},{"commit":"e0681eebb9881dc0ffddb478224455f434919104","merge":"e5732d1 10292f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'master' into dev"},{"commit":"e5732d1cea1c882f6486cf288e45edb993989ea0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"update changelog"},{"commit":"6e7ae3cd3f003fe9e1e587b7f8ebd16ba0895014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/timedatectl.md","jc/man/jc.1.gz","jc/parsers/timedatectl.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"formatting of timedatectl docs"},{"commit":"f95632d1aaee545ae0ce081ca0617be135c09220","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":83,"deletions":62,"files":["EXAMPLES.md","docs/parsers/rpm_qi.md","jc/man/jc.1.gz","jc/parsers/rpm_qi.py","man/jc.1.gz","tests/fixtures/centos-7.7/rpm-qai.json","tests/fixtures/centos-7.7/rpm-qi-package.json"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":12},{"name":"docs/parsers/rpm_qi.md","lines_changed":62},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/rpm_qi.py","lines_changed":67},{"name":"man/jc.1.gz","lines_changed":null},{"name":"tests/fixtures/centos-7.7/rpm-qai.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rpm-qi-package.json","lines_changed":2}]},"message":"add install_date calculated fields"},{"commit":"2f8b7b26e59bcd745fa1fcadb373455c7d404286","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":2,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update docs for v1.15.1"},{"commit":"10292f7502e4cb1c53b53ed39fed9288044c2ef8","merge":"37a3565 aef5470","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #119 from kellyjonbrazil/dpkg_l-fix"},{"commit":"aef54705f5267c633e0778e8dce0065978083139","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["docs/parsers/dpkg_l.md"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":4}]},"message":"add _l to module name"},{"commit":"bba5980fa53767716bc35d8c904e7a2341346eeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"man page update"},{"commit":"977425abfb05a63ee372df36124ac6ba6a5a0aaa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"jc/parsers/dpkg_l.py","lines_changed":4}]},"message":"add _l to package name in docs"},{"commit":"37a3565a1bbd3d01663602673fed651509e69d8c","merge":"bdcdaee 13deb8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #118 from kellyjonbrazil/rpm-qi-doc-fix"},{"commit":"13deb8bfb6e77aaf86942f0be87b59d06ee2a97c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":194,"files":["docs/parsers/rpm_qai.md","docs/parsers/rpm_qi.md"],"file_stats":[{"name":"docs/parsers/rpm_qai.md","lines_changed":191},{"name":"docs/parsers/rpm_qi.md","lines_changed":6}]},"message":"fix rpm-qi docs"},{"commit":"a3ed9d075aff41599452c3094f7d057c25fc8f89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":191,"files":["docs/parsers/rpm_qai.md"],"file_stats":[{"name":"docs/parsers/rpm_qai.md","lines_changed":191}]},"message":"remove old parser doc"},{"commit":"fb0ced549e021916dee7da39859e8f85c8216e16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":6,"deletions":6,"files":["docs/parsers/rpm_qi.md","jc/man/jc.1.gz","jc/parsers/rpm_qi.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/rpm_qi.md","lines_changed":6},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/rpm_qi.py","lines_changed":6},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"fix rpm-qi docs (used underscore instead of dash in name)"},{"commit":"7eb31bc7d290fcd09e53524ebbb11e59110df6a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":39,"deletions":48,"files":["docs/parsers/airport_s.md","jc/man/jc.1.gz","jc/parsers/airport_s.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/airport_s.md","lines_changed":49},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/airport_s.py","lines_changed":38},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update airport_s docs"},{"commit":"6a06a3914273853742ac57433398968ccf7d9897","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":12}]},"message":"use herestring instead of echo -e into jq"},{"commit":"bdcdaee6c5299ea0750512e0943c7f58f56f2e35","merge":"5d8f836 605353f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #117 from kellyjonbrazil/doc_update"},{"commit":"605353fdce3b8b5986d20a35d05f7210a6df0730","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":70,"insertions":1710,"deletions":2656,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":99},{"name":"docs/parsers/airport.md","lines_changed":61},{"name":"docs/parsers/airport_s.md","lines_changed":9},{"name":"docs/parsers/arp.md","lines_changed":51},{"name":"docs/parsers/blkid.md","lines_changed":93},{"name":"docs/parsers/cksum.md","lines_changed":41},{"name":"docs/parsers/crontab.md","lines_changed":84},{"name":"docs/parsers/crontab_u.md","lines_changed":88},{"name":"docs/parsers/csv.md","lines_changed":41},{"name":"docs/parsers/date.md","lines_changed":68},{"name":"docs/parsers/df.md","lines_changed":59},{"name":"docs/parsers/dig.md","lines_changed":133},{"name":"docs/parsers/dir.md","lines_changed":49},{"name":"docs/parsers/dmidecode.md","lines_changed":55},{"name":"docs/parsers/dpkg_l.md","lines_changed":51},{"name":"docs/parsers/du.md","lines_changed":39},{"name":"docs/parsers/env.md","lines_changed":39},{"name":"docs/parsers/file.md","lines_changed":39},{"name":"docs/parsers/finger.md","lines_changed":57},{"name":"docs/parsers/free.md","lines_changed":49},{"name":"docs/parsers/fstab.md","lines_changed":47},{"name":"docs/parsers/group.md","lines_changed":47},{"name":"docs/parsers/gshadow.md","lines_changed":51},{"name":"docs/parsers/hash.md","lines_changed":39},{"name":"docs/parsers/hashsum.md","lines_changed":39},{"name":"docs/parsers/hciconfig.md","lines_changed":123},{"name":"docs/parsers/history.md","lines_changed":39},{"name":"docs/parsers/hosts.md","lines_changed":43},{"name":"docs/parsers/id.md","lines_changed":79},{"name":"docs/parsers/ifconfig.md","lines_changed":97},{"name":"docs/parsers/ini.md","lines_changed":44},{"name":"docs/parsers/iptables.md","lines_changed":67},{"name":"docs/parsers/iw_scan.md","lines_changed":40},{"name":"docs/parsers/jobs.md","lines_changed":45},{"name":"docs/parsers/kv.md","lines_changed":17},{"name":"docs/parsers/last.md","lines_changed":53},{"name":"docs/parsers/ls.md","lines_changed":118},{"name":"docs/parsers/lsblk.md","lines_changed":115},{"name":"docs/parsers/lsmod.md","lines_changed":47},{"name":"docs/parsers/lsof.md","lines_changed":55},{"name":"docs/parsers/mount.md","lines_changed":47},{"name":"docs/parsers/netstat.md","lines_changed":223},{"name":"docs/parsers/ntpq.md","lines_changed":58},{"name":"docs/parsers/passwd.md","lines_changed":49},{"name":"docs/parsers/ping.md","lines_changed":81},{"name":"docs/parsers/pip_list.md","lines_changed":41},{"name":"docs/parsers/pip_show.md","lines_changed":56},{"name":"docs/parsers/ps.md","lines_changed":69},{"name":"docs/parsers/route.md","lines_changed":63},{"name":"docs/parsers/rpm_qi.md","lines_changed":77},{"name":"docs/parsers/shadow.md","lines_changed":51},{"name":"docs/parsers/ss.md","lines_changed":73},{"name":"docs/parsers/stat.md","lines_changed":97},{"name":"docs/parsers/sysctl.md","lines_changed":37},{"name":"docs/parsers/systemctl.md","lines_changed":45},{"name":"docs/parsers/systemctl_lj.md","lines_changed":44},{"name":"docs/parsers/systemctl_ls.md","lines_changed":41},{"name":"docs/parsers/systemctl_luf.md","lines_changed":39},{"name":"docs/parsers/time.md","lines_changed":105},{"name":"docs/parsers/timedatectl.md","lines_changed":53},{"name":"docs/parsers/tracepath.md","lines_changed":60},{"name":"docs/parsers/traceroute.md","lines_changed":69},{"name":"docs/parsers/uname.md","lines_changed":47},{"name":"docs/parsers/upower.md","lines_changed":145},{"name":"docs/parsers/uptime.md","lines_changed":57},{"name":"docs/parsers/w.md","lines_changed":51},{"name":"docs/parsers/wc.md","lines_changed":43},{"name":"docs/parsers/who.md","lines_changed":55},{"name":"docs/parsers/xml.md","lines_changed":38},{"name":"docs/parsers/yaml.md","lines_changed":42}]},"message":"add new docs"},{"commit":"490c9e17699e8e4f70dcc1612e1a808f86e24b0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":8}]},"message":"add more cli tests for magic command"},{"commit":"6ebebb659dc93daeaa869752ad135f6e1d2cb1ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"update changelog"},{"commit":"0e70c5ee12e96f04a89de05153a2da9cd39f98ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update documentation link"},{"commit":"cd531acf6045660e022c932f62a01d4084433ad4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":1}]},"message":"clean up comment"},{"commit":"908ac1f61c5cc011d05d550f933940dfed4431f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":143,"insertions":0,"deletions":690,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/man/jc.1.gz","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":4},{"name":"docs/parsers/airport.md","lines_changed":4},{"name":"docs/parsers/airport_s.md","lines_changed":4},{"name":"docs/parsers/arp.md","lines_changed":4},{"name":"docs/parsers/blkid.md","lines_changed":4},{"name":"docs/parsers/cksum.md","lines_changed":4},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"docs/parsers/crontab_u.md","lines_changed":4},{"name":"docs/parsers/csv.md","lines_changed":4},{"name":"docs/parsers/date.md","lines_changed":4},{"name":"docs/parsers/df.md","lines_changed":4},{"name":"docs/parsers/dig.md","lines_changed":4},{"name":"docs/parsers/dir.md","lines_changed":4},{"name":"docs/parsers/dmidecode.md","lines_changed":4},{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"docs/parsers/du.md","lines_changed":4},{"name":"docs/parsers/env.md","lines_changed":4},{"name":"docs/parsers/file.md","lines_changed":4},{"name":"docs/parsers/finger.md","lines_changed":4},{"name":"docs/parsers/free.md","lines_changed":4},{"name":"docs/parsers/fstab.md","lines_changed":4},{"name":"docs/parsers/group.md","lines_changed":4},{"name":"docs/parsers/gshadow.md","lines_changed":4},{"name":"docs/parsers/hash.md","lines_changed":4},{"name":"docs/parsers/hashsum.md","lines_changed":4},{"name":"docs/parsers/hciconfig.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":4},{"name":"docs/parsers/hosts.md","lines_changed":4},{"name":"docs/parsers/id.md","lines_changed":4},{"name":"docs/parsers/ifconfig.md","lines_changed":4},{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"docs/parsers/iptables.md","lines_changed":4},{"name":"docs/parsers/iw_scan.md","lines_changed":4},{"name":"docs/parsers/jobs.md","lines_changed":4},{"name":"docs/parsers/kv.md","lines_changed":4},{"name":"docs/parsers/last.md","lines_changed":4},{"name":"docs/parsers/ls.md","lines_changed":67},{"name":"docs/parsers/lsblk.md","lines_changed":4},{"name":"docs/parsers/lsmod.md","lines_changed":4},{"name":"docs/parsers/lsof.md","lines_changed":4},{"name":"docs/parsers/mount.md","lines_changed":4},{"name":"docs/parsers/netstat.md","lines_changed":4},{"name":"docs/parsers/ntpq.md","lines_changed":4},{"name":"docs/parsers/passwd.md","lines_changed":4},{"name":"docs/parsers/ping.md","lines_changed":4},{"name":"docs/parsers/pip_list.md","lines_changed":4},{"name":"docs/parsers/pip_show.md","lines_changed":4},{"name":"docs/parsers/ps.md","lines_changed":4},{"name":"docs/parsers/route.md","lines_changed":4},{"name":"docs/parsers/rpm_qi.md","lines_changed":4},{"name":"docs/parsers/shadow.md","lines_changed":4},{"name":"docs/parsers/ss.md","lines_changed":4},{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"docs/parsers/sysctl.md","lines_changed":4},{"name":"docs/parsers/systemctl.md","lines_changed":4},{"name":"docs/parsers/systemctl_lj.md","lines_changed":4},{"name":"docs/parsers/systemctl_ls.md","lines_changed":4},{"name":"docs/parsers/systemctl_luf.md","lines_changed":4},{"name":"docs/parsers/time.md","lines_changed":4},{"name":"docs/parsers/timedatectl.md","lines_changed":4},{"name":"docs/parsers/tracepath.md","lines_changed":4},{"name":"docs/parsers/traceroute.md","lines_changed":4},{"name":"docs/parsers/uname.md","lines_changed":4},{"name":"docs/parsers/upower.md","lines_changed":4},{"name":"docs/parsers/uptime.md","lines_changed":4},{"name":"docs/parsers/w.md","lines_changed":4},{"name":"docs/parsers/wc.md","lines_changed":4},{"name":"docs/parsers/who.md","lines_changed":4},{"name":"docs/parsers/xml.md","lines_changed":4},{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/acpi.py","lines_changed":4},{"name":"jc/parsers/airport.py","lines_changed":4},{"name":"jc/parsers/airport_s.py","lines_changed":4},{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/blkid.py","lines_changed":4},{"name":"jc/parsers/cksum.py","lines_changed":4},{"name":"jc/parsers/crontab.py","lines_changed":4},{"name":"jc/parsers/crontab_u.py","lines_changed":4},{"name":"jc/parsers/csv.py","lines_changed":4},{"name":"jc/parsers/date.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":4},{"name":"jc/parsers/dir.py","lines_changed":4},{"name":"jc/parsers/dmidecode.py","lines_changed":4},{"name":"jc/parsers/dpkg_l.py","lines_changed":4},{"name":"jc/parsers/du.py","lines_changed":4},{"name":"jc/parsers/env.py","lines_changed":4},{"name":"jc/parsers/file.py","lines_changed":4},{"name":"jc/parsers/finger.py","lines_changed":4},{"name":"jc/parsers/foo.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":4},{"name":"jc/parsers/fstab.py","lines_changed":4},{"name":"jc/parsers/group.py","lines_changed":4},{"name":"jc/parsers/gshadow.py","lines_changed":4},{"name":"jc/parsers/hash.py","lines_changed":4},{"name":"jc/parsers/hashsum.py","lines_changed":4},{"name":"jc/parsers/hciconfig.py","lines_changed":4},{"name":"jc/parsers/history.py","lines_changed":4},{"name":"jc/parsers/hosts.py","lines_changed":4},{"name":"jc/parsers/id.py","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":4},{"name":"jc/parsers/ini.py","lines_changed":4},{"name":"jc/parsers/iptables.py","lines_changed":4},{"name":"jc/parsers/iw_scan.py","lines_changed":4},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/kv.py","lines_changed":4},{"name":"jc/parsers/last.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":67},{"name":"jc/parsers/lsblk.py","lines_changed":4},{"name":"jc/parsers/lsmod.py","lines_changed":4},{"name":"jc/parsers/lsof.py","lines_changed":4},{"name":"jc/parsers/mount.py","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":4},{"name":"jc/parsers/ntpq.py","lines_changed":4},{"name":"jc/parsers/passwd.py","lines_changed":4},{"name":"jc/parsers/ping.py","lines_changed":4},{"name":"jc/parsers/pip_list.py","lines_changed":4},{"name":"jc/parsers/pip_show.py","lines_changed":4},{"name":"jc/parsers/ps.py","lines_changed":4},{"name":"jc/parsers/route.py","lines_changed":4},{"name":"jc/parsers/rpm_qi.py","lines_changed":4},{"name":"jc/parsers/shadow.py","lines_changed":4},{"name":"jc/parsers/ss.py","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"jc/parsers/sysctl.py","lines_changed":4},{"name":"jc/parsers/systemctl.py","lines_changed":4},{"name":"jc/parsers/systemctl_lj.py","lines_changed":4},{"name":"jc/parsers/systemctl_ls.py","lines_changed":4},{"name":"jc/parsers/systemctl_luf.py","lines_changed":4},{"name":"jc/parsers/time.py","lines_changed":4},{"name":"jc/parsers/timedatectl.py","lines_changed":4},{"name":"jc/parsers/tracepath.py","lines_changed":4},{"name":"jc/parsers/traceroute.py","lines_changed":4},{"name":"jc/parsers/uname.py","lines_changed":4},{"name":"jc/parsers/upower.py","lines_changed":4},{"name":"jc/parsers/uptime.py","lines_changed":4},{"name":"jc/parsers/w.py","lines_changed":4},{"name":"jc/parsers/wc.py","lines_changed":4},{"name":"jc/parsers/who.py","lines_changed":4},{"name":"jc/parsers/xml.py","lines_changed":4},{"name":"jc/parsers/yaml.py","lines_changed":4},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update docs - remove compatibility section since it is now automatically generated from info()"},{"commit":"f5c7e7e4046bc57b4fcad99390e31b121a7106ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":70,"insertions":350,"deletions":0,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":5},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5}]},"message":"add updated docs with home link and parser info at the bottom"},{"commit":"001c700b5bd280cb1cb9e54169ae5f1b7918c257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":2,"deletions":1,"files":["docgen.sh","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docgen.sh","lines_changed":3},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add home link to the top of the md file"},{"commit":"9b41e9bef0ff099e70f37fddc8fe2c6bd8457b19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":1}]},"message":"Add parser information header"},{"commit":"34bd6e32dc0c0bf7dfeedaadbf04115f43e9d060","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":4,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":24}]},"message":"pull each parser as a json object into a bash array and iterate on it to add supplementary information like version, author, and compatibility"},{"commit":"c5d058490beaa8f59875a8acfd7a400764768639","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":22,"deletions":13,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":35}]},"message":"move parser doc printing to its own function"},{"commit":"dd1ae6d9a7de5421830232deb42d933b9a652672","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":3,"deletions":1,"files":["MANIFEST.in","jc/man/jc.1.gz","man/jc.1.gz","mangen.py"],"file_stats":[{"name":"MANIFEST.in","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"mangen.py","lines_changed":2}]},"message":"add man page inside the pypi package for easier packaging in homebrew"},{"commit":"d8ea9bde823a7f5c146741150c3211737345c7dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":16,"deletions":16,"files":["docs/parsers/w.md","jc/parsers/w.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/w.md","lines_changed":16},{"name":"jc/parsers/w.py","lines_changed":16},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update"},{"commit":"125edc9c906dc3650b6a683ed13830075acb7ab6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"bail out for -h, -a, and -v in magic()"},{"commit":"15ea43e394a9004f8ccec208b3a066c76e241866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["MANIFEST.in"],"file_stats":[{"name":"MANIFEST.in","lines_changed":1}]},"message":"add man file to package for easier packaging in homebrew"},{"commit":"b55b02687c00d1c50e30f30c9b9a7f36f783eb0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":19,"insertions":371,"deletions":441,"files":["CHANGELOG","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","man/jc.1.gz","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":6},{"name":"docs/parsers/uname.md","lines_changed":42},{"name":"docs/parsers/upower.md","lines_changed":140},{"name":"docs/parsers/uptime.md","lines_changed":52},{"name":"docs/parsers/w.md","lines_changed":46},{"name":"docs/parsers/wc.md","lines_changed":38},{"name":"docs/parsers/who.md","lines_changed":50},{"name":"docs/parsers/xml.md","lines_changed":33},{"name":"docs/parsers/yaml.md","lines_changed":37},{"name":"jc/parsers/uname.py","lines_changed":33},{"name":"jc/parsers/upower.py","lines_changed":131},{"name":"jc/parsers/uptime.py","lines_changed":43},{"name":"jc/parsers/w.py","lines_changed":37},{"name":"jc/parsers/wc.py","lines_changed":29},{"name":"jc/parsers/who.py","lines_changed":41},{"name":"jc/parsers/xml.py","lines_changed":24},{"name":"jc/parsers/yaml.py","lines_changed":28},{"name":"man/jc.1.gz","lines_changed":null},{"name":"setup.py","lines_changed":2}]},"message":"doc update"},{"commit":"da611f0ac6321f7f52fdbc419f8b155c74393c28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":63,"deletions":50,"files":["jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","man/jc.1.gz"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":30},{"name":"jc/parsers/iptables.py","lines_changed":53},{"name":"jc/parsers/iw_scan.py","lines_changed":30},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update docs"},{"commit":"b8b8dfead4fdc4285585c44c2ebce3bdd42b2e7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":61,"insertions":1501,"deletions":1848,"files":["docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":39},{"name":"docs/parsers/iptables.md","lines_changed":62},{"name":"docs/parsers/iw_scan.md","lines_changed":35},{"name":"docs/parsers/jobs.md","lines_changed":40},{"name":"docs/parsers/kv.md","lines_changed":12},{"name":"docs/parsers/last.md","lines_changed":48},{"name":"docs/parsers/ls.md","lines_changed":50},{"name":"docs/parsers/lsblk.md","lines_changed":110},{"name":"docs/parsers/lsmod.md","lines_changed":42},{"name":"docs/parsers/lsof.md","lines_changed":50},{"name":"docs/parsers/mount.md","lines_changed":42},{"name":"docs/parsers/netstat.md","lines_changed":218},{"name":"docs/parsers/ntpq.md","lines_changed":53},{"name":"docs/parsers/passwd.md","lines_changed":44},{"name":"docs/parsers/ping.md","lines_changed":76},{"name":"docs/parsers/pip_list.md","lines_changed":36},{"name":"docs/parsers/pip_show.md","lines_changed":51},{"name":"docs/parsers/ps.md","lines_changed":64},{"name":"docs/parsers/route.md","lines_changed":58},{"name":"docs/parsers/rpm_qi.md","lines_changed":72},{"name":"docs/parsers/shadow.md","lines_changed":46},{"name":"docs/parsers/ss.md","lines_changed":66},{"name":"docs/parsers/stat.md","lines_changed":92},{"name":"docs/parsers/sysctl.md","lines_changed":32},{"name":"docs/parsers/systemctl.md","lines_changed":40},{"name":"docs/parsers/systemctl_lj.md","lines_changed":39},{"name":"docs/parsers/systemctl_ls.md","lines_changed":36},{"name":"docs/parsers/systemctl_luf.md","lines_changed":34},{"name":"docs/parsers/time.md","lines_changed":100},{"name":"docs/parsers/timedatectl.md","lines_changed":48},{"name":"docs/parsers/tracepath.md","lines_changed":55},{"name":"docs/parsers/traceroute.md","lines_changed":64},{"name":"jc/parsers/jobs.py","lines_changed":31},{"name":"jc/parsers/kv.py","lines_changed":13},{"name":"jc/parsers/last.py","lines_changed":39},{"name":"jc/parsers/ls.py","lines_changed":41},{"name":"jc/parsers/lsblk.py","lines_changed":101},{"name":"jc/parsers/lsmod.py","lines_changed":33},{"name":"jc/parsers/lsof.py","lines_changed":41},{"name":"jc/parsers/mount.py","lines_changed":41},{"name":"jc/parsers/netstat.py","lines_changed":209},{"name":"jc/parsers/ntpq.py","lines_changed":44},{"name":"jc/parsers/passwd.py","lines_changed":35},{"name":"jc/parsers/ping.py","lines_changed":75},{"name":"jc/parsers/pip_list.py","lines_changed":27},{"name":"jc/parsers/pip_show.py","lines_changed":42},{"name":"jc/parsers/ps.py","lines_changed":55},{"name":"jc/parsers/route.py","lines_changed":49},{"name":"jc/parsers/rpm_qi.py","lines_changed":63},{"name":"jc/parsers/shadow.py","lines_changed":37},{"name":"jc/parsers/ss.py","lines_changed":59},{"name":"jc/parsers/stat.py","lines_changed":83},{"name":"jc/parsers/sysctl.py","lines_changed":23},{"name":"jc/parsers/systemctl.py","lines_changed":31},{"name":"jc/parsers/systemctl_lj.py","lines_changed":30},{"name":"jc/parsers/systemctl_ls.py","lines_changed":27},{"name":"jc/parsers/systemctl_luf.py","lines_changed":25},{"name":"jc/parsers/time.py","lines_changed":91},{"name":"jc/parsers/timedatectl.py","lines_changed":39},{"name":"jc/parsers/tracepath.py","lines_changed":46},{"name":"jc/parsers/traceroute.py","lines_changed":65}]},"message":"update docs"},{"commit":"4290a3cbd135cacbf63664dc30768017ebbed28d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":9,"files":["docs/parsers/ifconfig.md","jc/parsers/ifconfig.py"],"file_stats":[{"name":"docs/parsers/ifconfig.md","lines_changed":6},{"name":"jc/parsers/ifconfig.py","lines_changed":6}]},"message":"make IfconfigParser class private"},{"commit":"a5e2203cee6a7bc398cf280f57d37638eeb1d2d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":2,"deletions":1,"files":["docs/parsers/ifconfig.md","jc/parsers/ifconfig.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":1},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update ifconfig doc"},{"commit":"e28c08b1361161cfd123b9ebc11fa1ffa87d658f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":46,"insertions":976,"deletions":1209,"files":["docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/csv.md","lines_changed":36},{"name":"docs/parsers/date.md","lines_changed":63},{"name":"docs/parsers/df.md","lines_changed":54},{"name":"docs/parsers/dig.md","lines_changed":128},{"name":"docs/parsers/dir.md","lines_changed":44},{"name":"docs/parsers/dmidecode.md","lines_changed":50},{"name":"docs/parsers/dpkg_l.md","lines_changed":46},{"name":"docs/parsers/du.md","lines_changed":34},{"name":"docs/parsers/env.md","lines_changed":34},{"name":"docs/parsers/file.md","lines_changed":34},{"name":"docs/parsers/finger.md","lines_changed":52},{"name":"docs/parsers/free.md","lines_changed":44},{"name":"docs/parsers/fstab.md","lines_changed":42},{"name":"docs/parsers/group.md","lines_changed":42},{"name":"docs/parsers/gshadow.md","lines_changed":46},{"name":"docs/parsers/hash.md","lines_changed":34},{"name":"docs/parsers/hashsum.md","lines_changed":34},{"name":"docs/parsers/hciconfig.md","lines_changed":118},{"name":"docs/parsers/history.md","lines_changed":34},{"name":"docs/parsers/hosts.md","lines_changed":38},{"name":"docs/parsers/id.md","lines_changed":74},{"name":"docs/parsers/ifconfig.md","lines_changed":86},{"name":"jc/parsers/csv.py","lines_changed":27},{"name":"jc/parsers/date.py","lines_changed":54},{"name":"jc/parsers/df.py","lines_changed":45},{"name":"jc/parsers/dig.py","lines_changed":143},{"name":"jc/parsers/dir.py","lines_changed":35},{"name":"jc/parsers/dmidecode.py","lines_changed":41},{"name":"jc/parsers/dpkg_l.py","lines_changed":37},{"name":"jc/parsers/du.py","lines_changed":25},{"name":"jc/parsers/env.py","lines_changed":25},{"name":"jc/parsers/file.py","lines_changed":25},{"name":"jc/parsers/finger.py","lines_changed":43},{"name":"jc/parsers/foo.py","lines_changed":25},{"name":"jc/parsers/free.py","lines_changed":35},{"name":"jc/parsers/fstab.py","lines_changed":33},{"name":"jc/parsers/group.py","lines_changed":33},{"name":"jc/parsers/gshadow.py","lines_changed":37},{"name":"jc/parsers/hash.py","lines_changed":25},{"name":"jc/parsers/hashsum.py","lines_changed":25},{"name":"jc/parsers/hciconfig.py","lines_changed":109},{"name":"jc/parsers/history.py","lines_changed":25},{"name":"jc/parsers/hosts.py","lines_changed":29},{"name":"jc/parsers/id.py","lines_changed":65},{"name":"jc/parsers/ifconfig.py","lines_changed":77},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update documentation"},{"commit":"a4b6846f63b43168085275d73940265940badf46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":467,"files":["man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"man/jc.1","lines_changed":467},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"man update"},{"commit":"2bc830786114fd57619f34b936dcf6e0bed7a109","merge":"9b39917 5d8f836","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'master' into dev"},{"commit":"9b39917c798ed0310c9b82d87172cbf6d24ba111","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":17,"insertions":391,"deletions":453,"files":["README.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","jc/cli.py","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/acpi.md","lines_changed":94},{"name":"docs/parsers/airport.md","lines_changed":56},{"name":"docs/parsers/blkid.md","lines_changed":88},{"name":"docs/parsers/cksum.md","lines_changed":36},{"name":"docs/parsers/crontab.md","lines_changed":79},{"name":"docs/parsers/crontab_u.md","lines_changed":83},{"name":"jc/cli.py","lines_changed":6},{"name":"jc/parsers/acpi.py","lines_changed":85},{"name":"jc/parsers/airport.py","lines_changed":47},{"name":"jc/parsers/blkid.py","lines_changed":79},{"name":"jc/parsers/cksum.py","lines_changed":27},{"name":"jc/parsers/crontab.py","lines_changed":70},{"name":"jc/parsers/crontab_u.py","lines_changed":74},{"name":"man/jc.1","lines_changed":8},{"name":"templates/manpage_template","lines_changed":8},{"name":"templates/readme_template","lines_changed":2}]},"message":"update docstrings for new help functionality"},{"commit":"57c13cc0a38ad89fda8b0e362bd6487257d0a26a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":26}]},"message":"add support for parser help"},{"commit":"b7355fd30d992a1bcc90227f5a1b02be073829e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":37,"deletions":48,"files":["docs/parsers/arp.md","jc/parsers/arp.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":46},{"name":"jc/parsers/arp.py","lines_changed":39}]},"message":"new docstring format for improved documentation"},{"commit":"93ae309e407b26820b9f05b5b331d05fc77df57f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/__init__.py","man/jc.1"],"file_stats":[{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"bump version to 1.15.1"},{"commit":"5d8f8365e24a7c3a587d4e71ebba4876de08203b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":461,"files":["man/jc.1","man/jc.1.gz","mangen.py"],"file_stats":[{"name":"man/jc.1","lines_changed":461},{"name":"man/jc.1.gz","lines_changed":null},{"name":"mangen.py","lines_changed":9}]},"message":"gzip man page"},{"commit":"f26909eefb236e9ebf63be53cd86ae13cc3d9ea3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["docs/parsers/dir.md"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":8}]},"message":"formatting"},{"commit":"55bfbb2797ede3aefbb14ecab950b108b1895ccc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":6,"files":["EXAMPLES.md","jc/parsers/dir.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":3},{"name":"jc/parsers/dir.py","lines_changed":8}]},"message":"formatting"},{"commit":"8970b8342a855203aef649b60dad3e49a1d7fd2a","merge":"a73fdb7 5285e69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #115 from kellyjonbrazil/master"},{"commit":"5285e699c30fdeaf56068f5a03ef1d1d33fa673c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","jc/cli.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"fix rpm-qi parser name"},{"commit":"275f3860d5870303235b651d42650256e4db8ada","merge":"577811f a73fdb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #114 from kellyjonbrazil/dev"},{"commit":"a73fdb7478965f0f2c841ac01b2762db80ad0786","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["CHANGELOG","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"update dates"},{"commit":"f2d746403a0ed764f931ae9e14d180bab107dcca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/rpm_qi.md","jc/parsers/rpm_qi.py"],"file_stats":[{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"jc/parsers/rpm_qi.py","lines_changed":2}]},"message":"typo fix"},{"commit":"b7dbf2c49be4beb793495a0aaee7f05dbea5a3a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":26}]},"message":"doc formatting"},{"commit":"21f3c97788826e79b0c387f877c5adf269318e97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2}]},"message":"rename rpm_qai to rpm_qi"},{"commit":"14b727cc717d04fefba1cc31b6f29b549ced986f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":73,"deletions":0,"files":["tests/fixtures/centos-7.7/rpm-qi-package.json","tests/fixtures/centos-7.7/rpm-qi-package.out","tests/test_rpm_qai.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/rpm-qi-package.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rpm-qi-package.out","lines_changed":26},{"name":"tests/test_rpm_qai.py","lines_changed":46}]},"message":"add rpm_qi tests"},{"commit":"abee226591ed4ae37351efc995017d28b27827d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":205,"deletions":14,"files":["README.md","docs/parsers/rpm_qi.md","jc/cli.py","jc/parsers/{rpm_qai.py => rpm_qi.py}","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":191},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/{rpm_qai.py => rpm_qi.py}","lines_changed":20},{"name":"man/jc.1","lines_changed":4}]},"message":"rename rpm_qia to rpm_qi"},{"commit":"293ad39f4bcf326186dd917d8bc58d3964e5e4d6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"typo fix"},{"commit":"92443025811019f616f596abb60a2889f604c122","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":7,"deletions":6,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/rpm_qai.md","jc/parsers/rpm_qai.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":4},{"name":"docs/parsers/rpm_qai.md","lines_changed":4},{"name":"jc/parsers/rpm_qai.py","lines_changed":4}]},"message":"rpm parser doc update"},{"commit":"753cac25fb1e7e6cd2c742afa8d45ced068ea91d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":3,"files":["jc/parsers/rpm_qai.py"],"file_stats":[{"name":"jc/parsers/rpm_qai.py","lines_changed":9}]},"message":"only add description if it exists"},{"commit":"0548263e898bf14f93d2fa423c0f0a9d9f2ff567","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":10468,"deletions":0,"files":["EXAMPLES.md","README.md","docs/parsers/rpm_qai.md","jc/cli.py","jc/parsers/rpm_qai.py","man/jc.1","tests/fixtures/centos-7.7/rpm-qai.json","tests/fixtures/centos-7.7/rpm-qai.out"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":53},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/rpm_qai.md","lines_changed":191},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/rpm_qai.py","lines_changed":255},{"name":"man/jc.1","lines_changed":5},{"name":"tests/fixtures/centos-7.7/rpm-qai.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rpm-qai.out","lines_changed":9961}]},"message":"add rpm -qai parser"},{"commit":"53776a9bf894988d6ef9221a62ab8b816c89560c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":2},{"name":"templates/manpage_template","lines_changed":2}]},"message":"note -a output is JSON"},{"commit":"cc7def9b76a7fa6de1e11b584676820f3acb0257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":18,"deletions":0,"files":["tests/fixtures/osx-10.14.6/finger.json","tests/fixtures/osx-10.14.6/finger.out","tests/test_finger.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/finger.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/finger.out","lines_changed":5},{"name":"tests/test_finger.py","lines_changed":12}]},"message":"add OSX finger tests"},{"commit":"11a4422c25ed905f33475677bcc2f59f49c62a23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":51,"deletions":0,"files":["tests/fixtures/centos-7.7/finger.json","tests/fixtures/centos-7.7/finger.out","tests/test_finger.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/finger.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/finger.out","lines_changed":3},{"name":"tests/test_finger.py","lines_changed":47}]},"message":"add centos 7.7 finger tests"},{"commit":"3a44785260514227b541530baf3e14b6c7ebe86a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/finger.py"],"file_stats":[{"name":"jc/parsers/finger.py","lines_changed":4}]},"message":"del details key if details are blank"},{"commit":"e0d430c26c38db8de5a32741e05df412cffe45b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"update -r raw option info"},{"commit":"417b70020accfa4910016e9d3d12690a5488f6f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":129,"deletions":22,"files":["EXAMPLES.md","docs/parsers/finger.md","jc/parsers/finger.py","tests/fixtures/ubuntu-18.04/finger.json","tests/fixtures/ubuntu-18.04/finger.out"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":18},{"name":"docs/parsers/finger.md","lines_changed":53},{"name":"jc/parsers/finger.py","lines_changed":71},{"name":"tests/fixtures/ubuntu-18.04/finger.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/finger.out","lines_changed":8}]},"message":"add idle time fields to finger parser"},{"commit":"7b29c464b72ef9a79bd872dab92cf65016490bcc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"date updated"},{"commit":"26d5529d86e4e459ad94226465c3697a050af0ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":7,"files":["docs/parsers/finger.md"],"file_stats":[{"name":"docs/parsers/finger.md","lines_changed":17}]},"message":"remove aix support, add note for -s support. schema update"},{"commit":"852103c478321b84ffbbc0a876d5ece0c0881e1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":14,"files":["jc/parsers/finger.py"],"file_stats":[{"name":"jc/parsers/finger.py","lines_changed":41}]},"message":"tweak regex to support arbitrary 'detail' data"},{"commit":"26a115421b0888e23f4348f1124e2ef7b39df4cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":11}]},"message":"add finger parser"},{"commit":"755b941a9aa602d95d9bc599f5c64e05f9e6216d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":35,"deletions":30,"files":["EXAMPLES.md","docs/parsers/finger.md","jc/parsers/finger.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":23},{"name":"docs/parsers/finger.md","lines_changed":21},{"name":"jc/parsers/finger.py","lines_changed":21}]},"message":"doc update"},{"commit":"fd1ca82d86649adeb84968142665e5e4fae3fa0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":263,"deletions":0,"files":["README.md","docs/parsers/finger.md","jc/cli.py","jc/parsers/finger.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/finger.md","lines_changed":102},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/finger.py","lines_changed":154},{"name":"man/jc.1","lines_changed":5}]},"message":"add finger parser"},{"commit":"6fe175344fc61d4996a9ea20f6c5d429efb1fac7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"change examples link to github.io"},{"commit":"3590cda13a68616ee7eb8c85c5554ffb3fef036d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/last.md","jc/parsers/last.py"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":2}]},"message":"docs formatting"},{"commit":"2f1011dd85ec9b3550138ac4a4e1729fa5b4fe17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"readme update"},{"commit":"2b155261b3f6e4879b592f5bc052649ded5e3d69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":2}]},"message":"use new github.io links for documentation"},{"commit":"02f4d606d0a446c7cc74aedac6035ee79805950d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":69,"deletions":69,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":136},{"name":"templates/readme_template","lines_changed":2}]},"message":"add documentation links to README.md"},{"commit":"577811f00b7fcd0396bb0e26a2985709bd2c65a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/_config.yml"],"file_stats":[{"name":"docs/_config.yml","lines_changed":1}]},"message":"Set theme jekyll-theme-cayman"},{"commit":"b4098d67a3a4a617d42c1389e0a88833c77b89b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"latest"},{"commit":"88bd7554aeb511c19e55dc3dde9c9376efb0485b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":3,"files":["docgen.sh","updatedocs.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":2},{"name":"updatedocs.sh","lines_changed":9}]},"message":"add status messages"},{"commit":"b5ec16c5cafb78db093861cc30d9646207f2227a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":8,"files":["mangen.py","readmegen.py"],"file_stats":[{"name":"mangen.py","lines_changed":4},{"name":"readmegen.py","lines_changed":4}]},"message":"formatting"},{"commit":"68fcb60a1460a35500180ec05a8cf5ba5706ff17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["updatedocs.sh"],"file_stats":[{"name":"updatedocs.sh","lines_changed":6}]},"message":"add updatedocs script"},{"commit":"e4781d60ce251f6d47f19bbe042e97f8aa9e2f18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":65,"insertions":188,"deletions":189,"files":["README.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":124},{"name":"jc/parsers/acpi.py","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/blkid.py","lines_changed":2},{"name":"jc/parsers/cksum.py","lines_changed":3},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/dir.py","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":2},{"name":"jc/parsers/dpkg_l.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/group.py","lines_changed":2},{"name":"jc/parsers/gshadow.py","lines_changed":2},{"name":"jc/parsers/hash.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":2},{"name":"jc/parsers/hciconfig.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/ntpq.py","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":2},{"name":"jc/parsers/ping.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/shadow.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/sysctl.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/time.py","lines_changed":2},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/parsers/wc.py","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":2},{"name":"man/jc.1","lines_changed":126}]},"message":"update parser descriptions with backticks surrounding command names"},{"commit":"6201fb346a66ba762651624cdaf03f08e08579a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"test backticks in description"},{"commit":"f88c8343f9dec5e0190df94a5109e6c749bda286","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"update iw-scan description for documentation"},{"commit":"25410d33168ee7142bd8f8c739ef22a62a47eb6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":973,"deletions":70,"files":["README.md","mangen.py","readmegen.py","{man/template => templates}/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":139},{"name":"mangen.py","lines_changed":2},{"name":"readmegen.py","lines_changed":16},{"name":"{man/template => templates}/manpage_template","lines_changed":0},{"name":"templates/readme_template","lines_changed":886}]},"message":"create readmegen.py script. move jinja2 templates to templates folder"},{"commit":"4ff9952938d0654376efc94ca7d8a12f6df171af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":10}]},"message":"change OSX to macOS"},{"commit":"5e3f63a412c5b23e7515337521ebba6273b5c11f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["man/jc.1","man/template/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":4},{"name":"man/template/manpage_template","lines_changed":8}]},"message":"add license and copyright info. use variables instead of hard-coded values"},{"commit":"e1f57be69efdfd7facd07df6ef0955a36c4fc18b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add license info"},{"commit":"2c65d5eeccdc95d2de00ac6575a9e8d8458486bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":32,"deletions":8,"files":["man/jc.1","man/template/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":20},{"name":"man/template/manpage_template","lines_changed":20}]},"message":"man page updates"},{"commit":"aa621f2f1ee043611c440683dfb63e6577d8fac4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":74,"deletions":9,"files":["CHANGELOG","man/jc.1","man/template/manpage_template"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"man/jc.1","lines_changed":42},{"name":"man/template/manpage_template","lines_changed":40}]},"message":"enhance man page"},{"commit":"ac932c6e59ad80115962d0ea91e6aaabc70c211e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":2},{"name":"jc/utils.py","lines_changed":2}]},"message":"update timestamp docs"},{"commit":"029f79da1647e53f97ca83ba92b1f36a131f3128","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"added info regarding updated dev scripts for automating doc generation"},{"commit":"153b2b4a7a216caae5b03f6d50d43980c13a705f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":68,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":79}]},"message":"use jc to help automate the generation of its own docs"},{"commit":"709b2fe4eead06090f903718deeb06ec774fc26e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":16,"deletions":0,"files":["man/jc.1","man/template/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":8},{"name":"man/template/manpage_template","lines_changed":8}]},"message":"add -h and -v options"},{"commit":"09c1fccc584e3d0582e19b520586419085ea8d04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":4,"deletions":6,"files":["man/jc.1","man/template/manpage_template","mangen.py"],"file_stats":[{"name":"man/jc.1","lines_changed":2},{"name":"man/template/manpage_template","lines_changed":2},{"name":"mangen.py","lines_changed":6}]},"message":"manpage updates"},{"commit":"fd254d99b782888fe7646e42a61f28aa99e7cba7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":193,"deletions":15,"files":["man/jc.1","man/template/manpage_template","mangen.py"],"file_stats":[{"name":"man/jc.1","lines_changed":124},{"name":"man/template/manpage_template","lines_changed":64},{"name":"mangen.py","lines_changed":20}]},"message":"add manpage generator"},{"commit":"88bd2c172217c498431e8904e74313bc27978785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"fix typo"},{"commit":"d03e2f0fc1d0310cd94702f4d3c959d71b0eb622","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":40,"deletions":0,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":40}]},"message":"add parser schema guidelines"},{"commit":"3f12a393bd37062cd1412128be495235b0c7351f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"formatting"},{"commit":"8c21284c5038bdc2e52ff4211fac747f33f52091","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":3}]},"message":"remove redundant license info"},{"commit":"e7d396c2157a77500017967dfc68ffaf32507c2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"update issues link"},{"commit":"f238fac0eb0c8e5133c6c9abf9ca709f5df7a925","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":49,"deletions":0,"files":["CHANGELOG","CONTRIBUTING.md","README.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"CONTRIBUTING.md","lines_changed":46},{"name":"README.md","lines_changed":2}]},"message":"add contributing guidelines"},{"commit":"017228f80d9a65ad7715f31c539d9fca1615296f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add tested on Windows 10"},{"commit":"286c5fa9434e25434ee8f4825621f68464296469","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add dir parser"},{"commit":"74cfc13abe4cd09ca5470714caeaedd24c099770","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":12,"deletions":21,"files":["tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-S.json","tests/fixtures/windows-10/dir-dirs.json","tests/fixtures/windows-10/dir-files.json","tests/fixtures/windows-10/dir-mix.json","tests/fixtures/windows-10/dir-raw.json","tests/fixtures/windows-10/dir.json","tests/test_dir.py"],"file_stats":[{"name":"tests/fixtures/windows-10/dir-C.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-ODTC.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-S.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-dirs.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-files.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-mix.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-raw.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir.json","lines_changed":2},{"name":"tests/test_dir.py","lines_changed":18}]},"message":"fixup dir parser tests"},{"commit":"0ee4a6c377321cf6ff67ced38e9a07a8f6313943","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":207,"deletions":460,"files":["docs/parsers/dir.md","jc/parsers/dir.py"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":316},{"name":"jc/parsers/dir.py","lines_changed":351}]},"message":"update schema and add epoch naive timestamp"},{"commit":"283433578dfc3f132ef35727ce5bafb3e390896c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":46,"deletions":0,"files":["EXAMPLES.md","README.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":45},{"name":"README.md","lines_changed":1}]},"message":"add dir parser"},{"commit":"9559c85057308e8815d4654bbe0062a5858c0b2b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":0,"files":["jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":1},{"name":"tests/test_utils.py","lines_changed":2}]},"message":"add windows dir format"},{"commit":"c5c020f5654038dacba542be3784a35d7333cbcc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/parsers/dir.md"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":1}]},"message":"add /S option"},{"commit":"95ec79bceb3d0c4245e36b7b16cfda6e16b01197","merge":"8f8be8a 5b60c74","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #107 from rasheed-rd/add-dir-parser"},{"commit":"8f8be8aa33f0b708ebd9a35c6b288572443d7181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4}]},"message":"add -1 option info"},{"commit":"5b60c7445a3f8bd2ae1587aa0ffaeaf093966f9a","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","stats":{"files_changed":5,"insertions":469,"deletions":400,"files":["docs/parsers/dir.md","jc/parsers/dir.py","tests/fixtures/windows-10/dir-S.json","tests/fixtures/windows-10/dir-S.out","tests/test_dir.py"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":404},{"name":"jc/parsers/dir.py","lines_changed":405},{"name":"tests/fixtures/windows-10/dir-S.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-S.out","lines_changed":47},{"name":"tests/test_dir.py","lines_changed":12}]},"message":"Add support for /S and update documentation"},{"commit":"d9dbcc8b526c8de9c6d12ac580880fd606dc68cf","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","stats":{"files_changed":15,"insertions":149,"deletions":73,"files":["docs/parsers/dir.md","jc/parsers/dir.py","tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-Q.json","tests/fixtures/windows-10/dir-Q.out","tests/fixtures/windows-10/dir-dirs.json","tests/fixtures/windows-10/dir-dirs.out","tests/fixtures/windows-10/dir-files.json","tests/fixtures/windows-10/dir-files.out","tests/fixtures/windows-10/dir-mix.json","tests/fixtures/windows-10/dir-mix.out","tests/fixtures/windows-10/dir-raw.json","tests/fixtures/windows-10/dir.json","tests/test_dir.py"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":24},{"name":"jc/parsers/dir.py","lines_changed":59},{"name":"tests/fixtures/windows-10/dir-C.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-ODTC.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-Q.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-Q.out","lines_changed":21},{"name":"tests/fixtures/windows-10/dir-dirs.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-dirs.out","lines_changed":19},{"name":"tests/fixtures/windows-10/dir-files.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-files.out","lines_changed":16},{"name":"tests/fixtures/windows-10/dir-mix.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-mix.out","lines_changed":22},{"name":"tests/fixtures/windows-10/dir-raw.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir.json","lines_changed":2},{"name":"tests/test_dir.py","lines_changed":50}]},"message":"Add parent dir to structure. Add test cases. Remove support for /Q"},{"commit":"79bc525970b38dea68b4859ac5dd32fc681e5994","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":1},{"name":"jc/parsers/dpkg_l.py","lines_changed":1}]},"message":"add codes field to schema"},{"commit":"9dae1091ddc6141694ebfdc5ae649582cb879ccd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":6},{"name":"jc/parsers/dpkg_l.py","lines_changed":4}]},"message":"typo fix"},{"commit":"74d3ac686a69518c1048260e37a0245ff254ff57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":61,"deletions":0,"files":["tests/fixtures/ubuntu-18.04/dpkg-l-codes.json","tests/fixtures/ubuntu-18.04/dpkg-l-columns500.json","tests/fixtures/ubuntu-18.04/dpkg-l.json","tests/test_dpkg_l.py"],"file_stats":[{"name":"tests/fixtures/ubuntu-18.04/dpkg-l-codes.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l-columns500.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l.json","lines_changed":1},{"name":"tests/test_dpkg_l.py","lines_changed":58}]},"message":"add dpkg-l tests"},{"commit":"cf3cc636badcf4ae6db1e5ee5e57ca0331ee5b0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add dpkg-l parser info"},{"commit":"a720441e1d34771c5a54876cb7dd63fb8c9f408e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":54,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":54}]},"message":"add dpkg -l example"},{"commit":"0a7ed0959df07e2f36d9ec3ca8c294cfdaf10396","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"jc/parsers/dpkg_l.py","lines_changed":6}]},"message":"rename err to error"},{"commit":"eb83c9b86dc6d1ff15efed30993071834b65a7d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":21,"files":["docs/utils.md"],"file_stats":[{"name":"docs/utils.md","lines_changed":29}]},"message":"replace parse_datetime_to_timestamp with timestamp class"},{"commit":"5c0142dd19eee14f4f1c287f0543e29824f9ae70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":1797,"deletions":2,"files":["CHANGELOG","docgen.sh","docs/parsers/dpkg_l.md","jc/cli.py","jc/parsers/dpkg_l.py","jc/parsers/universal.py","tests/fixtures/ubuntu-18.04/dpkg-l-codes.out","tests/fixtures/ubuntu-18.04/dpkg-l-columns500.out","tests/fixtures/ubuntu-18.04/dpkg-l.out"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/dpkg_l.md","lines_changed":170},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/dpkg_l.py","lines_changed":247},{"name":"jc/parsers/universal.py","lines_changed":4},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l-codes.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l-columns500.out","lines_changed":677},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l.out","lines_changed":677}]},"message":"add dpkg-l parser"},{"commit":"c326c8dc8356b55bba13864156adf30607205ece","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":18,"insertions":194,"deletions":1,"files":["jc/parsers/time.py","tests/fixtures/osx-10.14.6/time-l.json","tests/fixtures/osx-10.14.6/time-l.out","tests/fixtures/osx-10.14.6/time-lp.json","tests/fixtures/osx-10.14.6/time-lp.out","tests/fixtures/osx-10.14.6/time-p.json","tests/fixtures/osx-10.14.6/time-p.out","tests/fixtures/osx-10.14.6/time.json","tests/fixtures/osx-10.14.6/time.out","tests/fixtures/ubuntu-18.04/time-p.json","tests/fixtures/ubuntu-18.04/time-p.out","tests/fixtures/ubuntu-18.04/time-verbose.json","tests/fixtures/ubuntu-18.04/time-verbose.out","tests/fixtures/ubuntu-18.04/time.json","tests/fixtures/ubuntu-18.04/time.out","tests/fixtures/ubuntu-18.04/time2.json","tests/fixtures/ubuntu-18.04/time2.out","tests/test_time.py"],"file_stats":[{"name":"jc/parsers/time.py","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/time-l.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/time-l.out","lines_changed":15},{"name":"tests/fixtures/osx-10.14.6/time-lp.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/time-lp.out","lines_changed":17},{"name":"tests/fixtures/osx-10.14.6/time-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/time-p.out","lines_changed":3},{"name":"tests/fixtures/osx-10.14.6/time.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/time.out","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time-p.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/time-verbose.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time-verbose.out","lines_changed":23},{"name":"tests/fixtures/ubuntu-18.04/time.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/time2.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time2.out","lines_changed":2},{"name":"tests/test_time.py","lines_changed":118}]},"message":"add TypeError to except block. add /usr/bin/time tests"},{"commit":"fc4082a03feb5645a1ad687908782a2584a58956","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":131,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":131}]},"message":"remove old parse_datetime_to_timestamp function"},{"commit":"c8655565ff8718f0f14d41696b81e6539529dde1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"use new timestamp class"},{"commit":"638f879f16c9e87edb60953f4fd0b1c7ad92f277","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":5}]},"message":"use new timestamp class"},{"commit":"1d221bf7e6128d57bd769c0fe8f37f7a94da8cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/who.py","lines_changed":3}]},"message":"use new timestamp class"},{"commit":"60ea71f0ef931dccf09e6eb0cb737ddad0b47f0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/timedatectl.py"],"file_stats":[{"name":"jc/parsers/timedatectl.py","lines_changed":3}]},"message":"use new timestamp class"},{"commit":"d8bdd35a3f462efcdc871426309299e8aefb0a79","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":5}]},"message":"use new timestamp class"},{"commit":"7463891c53f3670710dfa72ed1422431c274fe4a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":6}]},"message":"use new timestamp class"},{"commit":"7537aec76fa07384c4439f34c50d4e3f001c0dfa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":8,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":16}]},"message":"use jc.utils.timestamp instead of jc.utils.parse_datetime_to_timestamp()"},{"commit":"62234e39a8533362a20f106c64326ed69f430006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":8,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":13}]},"message":"use jc.utils.timestamp instead of jc.utils.parse_datetime_to_timestamp()"},{"commit":"be004b7b3fe9217160c6418907e7d8aad10e5fae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":172,"deletions":15,"files":["jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":155},{"name":"tests/test_utils.py","lines_changed":32}]},"message":"make parse_datetime_to_timestamp function a class called timestamp for easier use"},{"commit":"82539444b24169b2eb762485ed032fc968a81f71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":23,"deletions":21,"files":["docs/parsers/time.md","jc/parsers/time.py"],"file_stats":[{"name":"docs/parsers/time.md","lines_changed":1},{"name":"jc/parsers/time.py","lines_changed":43}]},"message":"fix indentation for int and float conversions. add real_time field to schema"},{"commit":"a571d3cbafd5048d1d59070e1791398ae410197f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/time.md","jc/parsers/time.py"],"file_stats":[{"name":"docs/parsers/time.md","lines_changed":2},{"name":"jc/parsers/time.py","lines_changed":2}]},"message":"fix typo"},{"commit":"a038c14c23ea27264df61a38e0301de8d1fa1b9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":8,"deletions":8,"files":["EXAMPLES.md","docs/parsers/time.md","jc/parsers/time.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":4},{"name":"jc/parsers/time.py","lines_changed":10}]},"message":"change microseconds to centiseconds"},{"commit":"25a85d874cd2b57a7700b0c2dca61132127732b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"update docs"},{"commit":"884c36ff42df4f580c8e2b4705def8e4c1182e39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":536,"deletions":1,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","docs/parsers/iw_scan.md","docs/parsers/time.md","jc/cli.py","jc/parsers/time.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":36},{"name":"README.md","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":163},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/time.py","lines_changed":332}]},"message":"add /usr/bin/time parser"},{"commit":"b98e72b8b4eda0ab5ede7725226e61634af572eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add ls parser info"},{"commit":"05885c0096b5ee142ecff2d17e37c446518998a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":931,"deletions":18,"files":["docs/parsers/ls.md","jc/parsers/ls.py","tests/fixtures/ubuntu-18.04/ls-l-iso.json","tests/fixtures/ubuntu-18.04/ls-l-iso.out","tests/test_ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":22},{"name":"jc/parsers/ls.py","lines_changed":31},{"name":"tests/fixtures/ubuntu-18.04/ls-l-iso.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-l-iso.out","lines_changed":883},{"name":"tests/test_ls.py","lines_changed":12}]},"message":"add epoch and epoch_utc timestamps"},{"commit":"4c9761231af897658c3a2c0abcc476aa8b43d1b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":118,"deletions":81,"files":["CHANGELOG","EXAMPLES.md","README.md","docs/parsers/dig.md","jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":46},{"name":"README.md","lines_changed":14},{"name":"docs/parsers/dig.md","lines_changed":50},{"name":"jc/parsers/dig.py","lines_changed":56},{"name":"tests/fixtures/centos-7.7/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig-x.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig.json","lines_changed":2},{"name":"tests/fixtures/generic/dig-answer-spaces.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-x.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig.json","lines_changed":2}]},"message":"add when_epoch and when_epoch_utc fields"},{"commit":"656eaa150861948091ef9d6323805c2698039bc6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"1560dcddcf82f55fffce22d1b46d372b25a9d0fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"add acpi, upower parsers and -v version option"},{"commit":"08d4cd4870c7acaf3a453d1400b64d77d462437b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":114,"deletions":43,"files":["EXAMPLES.md","docs/parsers/acpi.md","jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.json","tests/fixtures/generic/acpi-V2.json","tests/fixtures/generic/acpi-V3.json","tests/fixtures/generic/acpi-V4.json"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":34},{"name":"docs/parsers/acpi.md","lines_changed":50},{"name":"jc/parsers/acpi.py","lines_changed":65},{"name":"tests/fixtures/generic/acpi-V.json","lines_changed":2},{"name":"tests/fixtures/generic/acpi-V2.json","lines_changed":2},{"name":"tests/fixtures/generic/acpi-V3.json","lines_changed":2},{"name":"tests/fixtures/generic/acpi-V4.json","lines_changed":2}]},"message":"add time calculations to acpi parser"},{"commit":"9767a50cededb140575e195abf79ce49c4f53789","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":48,"deletions":46,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/who.md","jc/parsers/who.py","jc/utils.py","tests/fixtures/centos-7.7/who-a.json","tests/fixtures/centos-7.7/who.json","tests/fixtures/osx-10.14.6/who-a.json","tests/fixtures/osx-10.14.6/who.json","tests/fixtures/ubuntu-18.04/who-a.json","tests/fixtures/ubuntu-18.04/who.json","tests/test_utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":37},{"name":"docs/parsers/who.md","lines_changed":18},{"name":"jc/parsers/who.py","lines_changed":23},{"name":"jc/utils.py","lines_changed":1},{"name":"tests/fixtures/centos-7.7/who-a.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/who.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/who-a.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/who.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/who-a.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/who.json","lines_changed":2},{"name":"tests/test_utils.py","lines_changed":2}]},"message":"update who parser to add epoch naive timestamp"},{"commit":"cd86890ed1493644e391e52e33561e9a77631a51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"add website to info and use variables for version info"},{"commit":"ba0dd3b9ca98a042c772898302fcfe5fdc84f79a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":4}]},"message":"add parse_timedate_to_timestamp test for format 7300"},{"commit":"8d7fa07ffd50f38336a448eb506a76d9d4849a6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":11,"files":["tests/fixtures/centos-7.7/timedatectl.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/timedatectl.json","lines_changed":12}]},"message":"unformat json"},{"commit":"cade1bfe6e56b5926898b7204e911885efebd5a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":2,"files":["tests/fixtures/centos-7.7/timedatectl.json","tests/fixtures/ubuntu-18.04/timedatectl.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/timedatectl.json","lines_changed":12},{"name":"tests/fixtures/ubuntu-18.04/timedatectl.json","lines_changed":2}]},"message":"update timedatectl tests for new epoch_utc field"},{"commit":"daec4ab0a7f572e872b27b043d51f68e5e06300f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":20,"deletions":4,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/timedatectl.md","jc/parsers/timedatectl.py","jc/utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"EXAMPLES.md","lines_changed":3},{"name":"docs/parsers/timedatectl.md","lines_changed":6},{"name":"jc/parsers/timedatectl.py","lines_changed":11},{"name":"jc/utils.py","lines_changed":1}]},"message":"add epoch_utc field to timedatectl parser"},{"commit":"3c96bc319615c824a06c388e9e3c1d68a9bf4084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":2}]},"message":"version bump"},{"commit":"7f7d8d4bd6f37015b11bac60a7bd99e8d3eca108","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":0,"files":["docs/parsers/stat.md","jc/parsers/stat.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":4}]},"message":"update stat docs"},{"commit":"47263661a41987f334fd484e866e0aa8859cde5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":2,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":20}]},"message":"update stat example"},{"commit":"4c42a086d206919dfe4f1c0801fe4fb1027cb1cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":6,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":7}]},"message":"clean up debug code"},{"commit":"5d2541a5c4bc93f3943a491c76df7f8d4e2cf44b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":5}]},"message":"remove auto c locale and use a manual format rule for windows and linux compatibility"},{"commit":"d91d170b49bfc88c0b2fb54475705c038172f1c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"try manual c locale format for windows"},{"commit":"6d1f4584a9ccd0f0f7ed4fdf408576a9e7f5046b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":4}]},"message":"try manually setting time format for windows compatibility"},{"commit":"1d76d96bcf4185cffb7066bec637913099399db5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":4}]},"message":"debug windows issue"},{"commit":"e8847c998c91131acf5ee0f6485e9976c0fce3ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["tests/fixtures/centos-7.7/stat.json","tests/fixtures/freebsd12/stat.json","tests/fixtures/osx-10.14.6/stat.json","tests/fixtures/ubuntu-18.04/stat.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/stat.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/stat.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/stat.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/stat.json","lines_changed":2}]},"message":"update stat tests"},{"commit":"da88e49bae2f3fecff623f52c20bf994b653583e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":69,"deletions":29,"files":["docs/parsers/stat.md","jc/parsers/stat.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":76},{"name":"jc/parsers/stat.py","lines_changed":22}]},"message":"add new examples"},{"commit":"65c3a12e5422782df40489c3c431677f5657dbf5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":35,"deletions":24,"files":["jc/parsers/stat.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":58},{"name":"jc/utils.py","lines_changed":1}]},"message":"simplify None data scenario"},{"commit":"d8d600cc36bde4e6216b935f87a765599e896714","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add reference to -h for help"},{"commit":"507999b117b024fed1ccf067bd5dc411dbeb268c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":34,"deletions":19,"files":["docs/utils.md","jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":32},{"name":"jc/utils.py","lines_changed":13},{"name":"tests/test_utils.py","lines_changed":8}]},"message":"add stat command timestamp detection"},{"commit":"8ad164eb340e135eeeb10b721172916182f37e30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":6}]},"message":"fix tests for compact output"},{"commit":"a507df140b245b83b1c46e8462b44e1145c42f2a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add compact json info"},{"commit":"8912a99986a977ee6ca7bbe2368f5033644577b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"make default json output more compact"},{"commit":"1953f9882890cd0e8c515d43ce28c96f918b0ab4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"add version info. add json now supports unicode output"},{"commit":"7515218ddd2cdcfcebd67850140e842f2f121226","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":10,"deletions":14,"files":["jc/cli.py","jc/utils.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8},{"name":"jc/utils.py","lines_changed":16}]},"message":"use jc.utils for all warning and error messages. simply error and warning formatting."},{"commit":"36c11201366cefedee4244fb71a4a9cc6507e6ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"formatting"},{"commit":"8fa0fe64d8418093c7f28cdc70a7f409956aeb04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":10}]},"message":"add -v to helptext. minor formatting"},{"commit":"c1a8201b140c65579ff9f8427322b67653bf3006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":4}]},"message":"add copyright"},{"commit":"398bbac48c8a716b1872843d671aa6ceaeba6a78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"simplify return value for parse_datetime_to_timestamp()"},{"commit":"ea71a42bbdd9b09a457727cfe763054625f7901a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"formatting"},{"commit":"1c16d25b17a7282a62a5ebd9755df5569c57435f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":30,"deletions":9,"files":["README.md","jc/cli.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"jc/cli.py","lines_changed":35}]},"message":"add version option (-v) and copyright information. add 'ensure_ascii=False' to json dumps to properly show UTF-8 copyright character"},{"commit":"9d12ded889f656656267cbf7a91d71267201f736","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"help description change"},{"commit":"5312701515ecb3a10598bb9dcf2f73b7eae71b93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add - make all external python requirements optional"},{"commit":"808c7bc0a94ecfd160ee2b257e5feec347829a5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/xml.py"],"file_stats":[{"name":"jc/parsers/xml.py","lines_changed":10}]},"message":"make xmltodict library optional"},{"commit":"4d394015f458f284d052ce2c1a0c8492916c5b3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":10}]},"message":"make ruamel.yaml library optional"},{"commit":"3638298af8ebc01d54aa3ab5668d0adedca957e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":53,"deletions":44,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":97}]},"message":"make pygments library optional"},{"commit":"5f00973e400629bd68c0ab60ed9005410278f855","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":2}]},"message":"remove parenthesis to normalize text for naive timezone detection"},{"commit":"0f6e2c14fcb69f664c29083ec5207326f842dfdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":9}]},"message":"simplify timestamp failure logic"},{"commit":"51813da61994226ba40478825d47f80c23413349","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":4,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":13}]},"message":"add offset timezones. fix timestamp logic on conversion failure"},{"commit":"e7751322ea195cac7f1921ba8e0364c442065d20","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":10}]},"message":"formatting"},{"commit":"26ef29843784ade3d55410be13300dd6f4c06890","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":6,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":16}]},"message":"change return to always include the entire object but all keys may be None if conversion fails"},{"commit":"badaf8ce73d7deb0ec2be244e27b4bf8cddbea19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":14,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":28}]},"message":"comment formatting"},{"commit":"b123a622039f3cc32643a3bfc0766154d660f8bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":9}]},"message":"move locale change formats to the end of the list"},{"commit":"cfd77e42522aa2ebeada9f45ac99bd1d3414f782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":1}]},"message":"reset locale to None on exception"},{"commit":"38f814072eac5370059f1b4203316eee41cf535b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":8,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":34}]},"message":"better normalization of datetime string. better UTC detection. More formats supported with detected locale."},{"commit":"a0db7754e384a0c95f2099bf894f3a22bd33c002","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add nixos install info"},{"commit":"f07620afc7dc0d0d605eb483ef36c5979b33cdfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":18,"deletions":7,"files":["README.md","jc/__init__.py","jc/cli.py"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"jc/__init__.py","lines_changed":3},{"name":"jc/cli.py","lines_changed":21}]},"message":"move version to jc.__init__.py\nadd -h option for help instead of always showing on error\nuse jc.utils.error_message for the following errors: missing/incorrect arguments, parser not found, missing piped data"},{"commit":"c1b0d27752726989c6051f683a1194941bee598c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":10,"files":["runtests.sh"],"file_stats":[{"name":"runtests.sh","lines_changed":10}]},"message":"remove old commented commands"},{"commit":"430a5108aa265d4df0e4584eade54759da864c61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":19,"deletions":60,"files":["runtests.sh","tests/test_last.py","tests/test_last2.py"],"file_stats":[{"name":"runtests.sh","lines_changed":16},{"name":"tests/test_last.py","lines_changed":23},{"name":"tests/test_last2.py","lines_changed":40}]},"message":"move all tests to github actions"},{"commit":"111ce92fc9c33b82c7d1a1664dda046ea5993f6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":0,"deletions":1,"files":["tests/{localtest_date.py => test_date.py}","tests/{localtest_last.py => test_last2.py}","tests/{localtest_upower.py => test_upower.py}","tests/test_utils.py"],"file_stats":[{"name":"tests/{localtest_date.py => test_date.py}","lines_changed":0},{"name":"tests/{localtest_last.py => test_last2.py}","lines_changed":0},{"name":"tests/{localtest_upower.py => test_upower.py}","lines_changed":0},{"name":"tests/test_utils.py","lines_changed":1}]},"message":"attempt all tests in github actions with timezone correction"},{"commit":"c851e8a58d98b2a4907cf1e7cf7c7d8d8dc04dc6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":1}]},"message":"force github action"},{"commit":"39f4bcd9b41450068903ea2843508586eccdf709","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"Change Windows timezone"},{"commit":"4a610c4c81493788b8351e8c74aabe819c981c02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":1}]},"message":"force github action"},{"commit":"89ee11945d4e2db107a33ef0d61e0c6015ac8ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"Change timezone provider"},{"commit":"dadb09b74a69d1852f8433e0e32ccdd67bd91181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":1}]},"message":"force github action"},{"commit":"1b1f638b97dc5e6f2767183eb363b79ae3c9b3c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":8}]},"message":"Change timezone change provider"},{"commit":"794fc4ed44d1565514303090403d68ba5d639cb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":36,"deletions":8,"files":["jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":16},{"name":"tests/test_utils.py","lines_changed":28}]},"message":"add parse_datetime_to_timestamp() tests"},{"commit":"72f735bf9211d7beddcf58819fe465722f5d7c5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":4}]},"message":"Set Timezone to America/Los_Angeles"},{"commit":"912877f25ad562ed4cafe7b2d7446bd48b477ea2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"additional timezone info"},{"commit":"2772c5ae436ea437d833003372d53a3d3f955ea0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"formatting"},{"commit":"a7ad24d2cb61d84cf2846f8fa43af31f0597043e","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","stats":{"files_changed":13,"insertions":772,"deletions":0,"files":["docgen.sh","docs/parsers/dir.md","jc/cli.py","jc/parsers/dir.py","tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-C.out","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-ODTC.out","tests/fixtures/windows-10/dir-Q.json","tests/fixtures/windows-10/dir-Q.out","tests/fixtures/windows-10/dir.json","tests/fixtures/windows-10/dir.out","tests/test_dir.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/dir.md","lines_changed":286},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/dir.py","lines_changed":332},{"name":"tests/fixtures/windows-10/dir-C.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-C.out","lines_changed":21},{"name":"tests/fixtures/windows-10/dir-ODTC.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-ODTC.out","lines_changed":21},{"name":"tests/fixtures/windows-10/dir-Q.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-Q.out","lines_changed":21},{"name":"tests/fixtures/windows-10/dir.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir.out","lines_changed":21},{"name":"tests/test_dir.py","lines_changed":64}]},"message":"Add dir parser"},{"commit":"a364a6a9faeb6aa290b790f3dec74e92b8670534","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"add note regarding calculated timestamps"},{"commit":"7b2dc86a8d974e7984fe2540f56a66c2b9386acd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":19,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":42}]},"message":"update last example with new timestamp fields"},{"commit":"ad645636d07d0423253f19068a22b2a28251b05f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":86,"deletions":50,"files":["CHANGELOG","EXAMPLES.md","README.md","docs/parsers/uptime.md","jc/parsers/uptime.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":9},{"name":"EXAMPLES.md","lines_changed":19},{"name":"README.md","lines_changed":19},{"name":"docs/parsers/uptime.md","lines_changed":50},{"name":"jc/parsers/uptime.py","lines_changed":39}]},"message":"update uptime docs"},{"commit":"2f2f297b29fbe3172647a81db084b3564a441d40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["tests/fixtures/centos-7.7/uptime.json","tests/fixtures/osx-10.11.6/uptime.json","tests/fixtures/osx-10.14.6/uptime.json","tests/fixtures/ubuntu-18.04/uptime.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/uptime.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/uptime.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/uptime.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/uptime.json","lines_changed":2}]},"message":"update uptime fixtures with new fields"},{"commit":"099ae3fde03f8157298f6b412bdddb8bd56da09a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":22,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":48}]},"message":"fix issue when there is no data"},{"commit":"e9febe98ac5ec0e03791c5b6794446a2c3312fb1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["runtests.sh"],"file_stats":[{"name":"runtests.sh","lines_changed":2}]},"message":"add localtest partition lines for readability"},{"commit":"5fbd07cccf9fb697b996dcc3949eef5b1c09e655","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":59,"deletions":26,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":85}]},"message":"rewrite of uptime parser including new fields"},{"commit":"5fed4698c2c1f1b7e05c5b4c51639f818e049b53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":6,"files":["docs/parsers/last.md","jc/parsers/last.py"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":4},{"name":"jc/parsers/last.py","lines_changed":7}]},"message":"update docs and version number"},{"commit":"ed7eb0983a4dfcc1d66a2957be3e10b2203d909e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":8}]},"message":"use parse_datetime_to_timestamp function instead of custom format string"},{"commit":"90c7e18e5fc5ea9fcf6157cc2656f47193d78411","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":11,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":27}]},"message":"update date example"},{"commit":"953ab5c3bd0c8b6eef29b717edaf1aa2380c2b93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":0,"files":["runtests.sh","tests/{test_upower.py => localtest_upower.py}"],"file_stats":[{"name":"runtests.sh","lines_changed":1},{"name":"tests/{test_upower.py => localtest_upower.py}","lines_changed":0}]},"message":"make upower tests local only"},{"commit":"699c97d8a07f7575454746159ac4d19981cd1a5c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add last parser info"},{"commit":"e4ca0de92a689ce93b91d86106a5da590226855a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":100,"deletions":0,"files":["tests/fixtures/generic/upower-i-c-locale.json","tests/fixtures/generic/upower-i-non-utc.json","tests/fixtures/generic/upower-i-utc.json",".../{upower-i-utc.out2 => upower-i-utc.out}","tests/fixtures/ubuntu-18.04/upower-d-clocale.json","tests/fixtures/ubuntu-18.04/upower-d.json","tests/fixtures/ubuntu-18.04/upower-i.json","tests/test_upower.py"],"file_stats":[{"name":"tests/fixtures/generic/upower-i-c-locale.json","lines_changed":1},{"name":"tests/fixtures/generic/upower-i-non-utc.json","lines_changed":1},{"name":"tests/fixtures/generic/upower-i-utc.json","lines_changed":1},{"name":".../{upower-i-utc.out2 => upower-i-utc.out}","lines_changed":0},{"name":"tests/fixtures/ubuntu-18.04/upower-d-clocale.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/upower-d.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/upower-i.json","lines_changed":1},{"name":"tests/test_upower.py","lines_changed":94}]},"message":"add upower tests"},{"commit":"04745a36b84cc79e56bde2a0e92a4ee9ab4a1538","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":5,"files":["CHANGELOG","jc/utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":12},{"name":"jc/utils.py","lines_changed":1}]},"message":"doc update"},{"commit":"5936940532b8b753e67c9f5cd9287f34cc84ae9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":136,"deletions":186,"files":["docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date-after-midnight.json","tests/fixtures/generic/date-before-midnight.json","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/fixtures/ubuntu-20.04/date2.json"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":74},{"name":"jc/parsers/date.py","lines_changed":238},{"name":"tests/fixtures/generic/date-after-midnight.json","lines_changed":2},{"name":"tests/fixtures/generic/date-before-midnight.json","lines_changed":2},{"name":"tests/fixtures/generic/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date2.json","lines_changed":2}]},"message":"rewrite of date parser using datetime library"},{"commit":"b3eb064b6753d6e894884e1c16054630c2396fe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":4}]},"message":"clarify format definition comments"},{"commit":"e4b41057e302074ac2a81ad8c36b6f95cd6b7db2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":24,"deletions":0,"files":[".../{upower-i.out => upower-i-c-locale.out}","tests/fixtures/generic/upower-i-non-utc.out",".../generic/{upower-i2.out => upower-i-utc.out2}"],"file_stats":[{"name":".../{upower-i.out => upower-i-c-locale.out}","lines_changed":0},{"name":"tests/fixtures/generic/upower-i-non-utc.out","lines_changed":24},{"name":".../generic/{upower-i2.out => upower-i-utc.out2}","lines_changed":0}]},"message":"update upower fixture names"},{"commit":"1d41c46cc762ab0c78b819e56db7df39f1111d5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":34,"deletions":5,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":39}]},"message":"normalize datetime string to remove all timezones except UTC"},{"commit":"a5c444587b3f0874fcc2833dc4e759c2dc1c7834","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":28,"deletions":0,"files":["tests/fixtures/generic/date-after-midnight.json","tests/fixtures/generic/date-after-midnight.out","tests/fixtures/generic/date-before-midnight.json","tests/fixtures/generic/date-before-midnight.out","tests/localtest_date.py"],"file_stats":[{"name":"tests/fixtures/generic/date-after-midnight.json","lines_changed":1},{"name":"tests/fixtures/generic/date-after-midnight.out","lines_changed":1},{"name":"tests/fixtures/generic/date-before-midnight.json","lines_changed":1},{"name":"tests/fixtures/generic/date-before-midnight.out","lines_changed":1},{"name":"tests/localtest_date.py","lines_changed":24}]},"message":"add before and after midnight date tests"},{"commit":"a56f471be980be16e73d3a91e2b12aad26c6d38c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/fixtures/generic/upower-i2.out"],"file_stats":[{"name":"tests/fixtures/generic/upower-i2.out","lines_changed":2}]},"message":"update fixture to use UTC for better testing"},{"commit":"6a6b26ed8d97014c2a5c7d91a4cd9b23f49530fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":5}]},"message":"fix 12 to 24 hour conversion for midnight cases"},{"commit":"f62446c152d89f2d37b22ffe9d9de5b5c9fa7049","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":10,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":21}]},"message":"rename variables. add another european time format"},{"commit":"56011f1f172344cab2a8e869e7a6df6e45c45874","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":73,"deletions":6,"files":["EXAMPLES.md","docs/parsers/upower.md","jc/parsers/upower.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":63},{"name":"docs/parsers/upower.md","lines_changed":8},{"name":"jc/parsers/upower.py","lines_changed":8}]},"message":"updated upower examples"},{"commit":"6d44091c80318fde6c09cd850e6dc5afde7fe799","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":53,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":66}]},"message":"refactor parse_datetime_to_timestamp()"},{"commit":"440c458eb42925dffe2d7b026279468fa2fa1bb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"no need for ternary clause"},{"commit":"798250af6116441385339806c8f26bc9720ad302","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":18,"deletions":24,"files":["docs/parsers/upower.md","jc/parsers/upower.py"],"file_stats":[{"name":"docs/parsers/upower.md","lines_changed":7},{"name":"jc/parsers/upower.py","lines_changed":35}]},"message":"use jc.utils.parse_datetime_to_timestamp() function for timestamp creation"},{"commit":"c762de29c6491790908451aa20f6aa12fdfa9722","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":32,"deletions":2,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":30},{"name":"jc/utils.py","lines_changed":4}]},"message":"doc updates"},{"commit":"0701e65e97165efd40ab2ae5087897de3588ea32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":106,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":106}]},"message":"add parse_datetime_to_timestamp() function"},{"commit":"209d54e8b5be6476d896cee1a5274bd2b46219e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":5},{"name":"jc/parsers/date.py","lines_changed":5}]},"message":"add hour_24 to schema docs"},{"commit":"2b38462de7d2fa61dd5d2a184e853279f1a9c84b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":33,"deletions":27,"files":["EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":20},{"name":"docs/parsers/date.md","lines_changed":20},{"name":"jc/parsers/date.py","lines_changed":20}]},"message":"update examples"},{"commit":"1e8e5533162cb01053ee25e9dbc709a429e58070","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":31,"deletions":14,"files":["CHANGELOG","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/fixtures/ubuntu-20.04/date2.json","tests/localtest_date.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/date.py","lines_changed":21},{"name":"tests/fixtures/generic/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date2.json","lines_changed":1},{"name":"tests/localtest_date.py","lines_changed":16}]},"message":"add hour_24 field"},{"commit":"ab42e6bb15026d6c46e15197c62bc3e8ef95c80d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":1},{"name":"jc/parsers/date.py","lines_changed":1}]},"message":"formatting"},{"commit":"680288454090f3c48c7f0580cdcb919c0b5a883e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":4}]},"message":"ensure period is always uppercase in dict value. update period documentation"},{"commit":"7cb8577b9655f258f2910e7e7bcf3266d4cbece0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":70,"deletions":48,"files":["docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/ubuntu-20.04/date2.out"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":36},{"name":"jc/parsers/date.py","lines_changed":81},{"name":"tests/fixtures/ubuntu-20.04/date2.out","lines_changed":1}]},"message":"correct epoch_utc calculation. Fix for 12 hour vs. 24 hour representation"},{"commit":"55810ccd1f17ef6a4b1cb72fc21f6cf990ef8bb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":1}]},"message":"set epoch_dt conversion again if not C locale"},{"commit":"f9921720cd0b9b0d76d66e6eb5bfe43481f5f52b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":4,"deletions":94,"files":["runtests.sh","tests/test_date.py","tests/test_last2.py"],"file_stats":[{"name":"runtests.sh","lines_changed":8},{"name":"tests/test_date.py","lines_changed":48},{"name":"tests/test_last2.py","lines_changed":42}]},"message":"revert to local testing for naive datetime objects"},{"commit":"cda1ebd271aa8fd1b716054a2149f876d8087230","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["tests/test_date.py","tests/test_last2.py"],"file_stats":[{"name":"tests/test_date.py","lines_changed":2},{"name":"tests/test_last2.py","lines_changed":2}]},"message":"try tzset()"},{"commit":"6901e4a23aad0b58cbbfac86c61917115d115dfe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":89,"deletions":3,"files":["runtests.sh","tests/test_date.py","tests/test_last2.py"],"file_stats":[{"name":"runtests.sh","lines_changed":6},{"name":"tests/test_date.py","lines_changed":46},{"name":"tests/test_last2.py","lines_changed":40}]},"message":"try setting timezone env variable before tests to ensure it is the same on all test systems"},{"commit":"6bc21d3c735edc7897e49afd2a5ea9e3aa56d7fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["runtests.sh","tests/{test_date.py => localtest_date.py}","tests/localtest_last.py"],"file_stats":[{"name":"runtests.sh","lines_changed":1},{"name":"tests/{test_date.py => localtest_date.py}","lines_changed":0},{"name":"tests/localtest_last.py","lines_changed":1}]},"message":"fix date parser tests - local tests only since timezones may not match on github actions VMs"},{"commit":"1ef231e26a2898d2a01f341fb92014df92703f72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"add date parser updates"},{"commit":"3cd43f0f985a3b8a4e74bf5632bd8dac92d751c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/upower.md","jc/parsers/upower.py"],"file_stats":[{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":2}]},"message":"formatting"},{"commit":"156501996688e62dd61a8456206218582a6cbe1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":85,"deletions":63,"files":["EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":21},{"name":"docs/parsers/date.md","lines_changed":41},{"name":"jc/parsers/date.py","lines_changed":82},{"name":"tests/fixtures/generic/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date.json","lines_changed":2}]},"message":"fix weekday numbering to be ISO 8601 compliant. Add naive calculated epoch timestamp field"},{"commit":"0a4de2d3a1c235d1ac2d6e59346e77761fe51885","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":2,"files":["docs/parsers/last.md","docs/parsers/upower.md"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":5}]},"message":"add naive datetime calculation info to docs"},{"commit":"a058f6c174e31f5e6040883bb544b83abd88c749","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":2}]},"message":"added naive epoch calculation info to docs"},{"commit":"d8e5d03b01a87704424f5259cf6bd977274fd6ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":33,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":53}]},"message":"naive updated_epoch timestamp calculation added"},{"commit":"9dc62eff2eaaafec89c5b8797d8ca8e4c77a07d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":34,"deletions":21,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":55}]},"message":"remove epoch conversions"},{"commit":"d4fea17c57a97d6914624b06208b9439bf2eb05f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":13,"deletions":6,"files":["docgen.sh","docs/parsers/upower.md","jc/parsers/upower.py"],"file_stats":[{"name":"docgen.sh","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":15}]},"message":"use UTC when calculating epoch timestamp. reset time locale to default after changing"},{"commit":"3dd7a5b77ea708047bc12be9f2caddd9078723f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":230,"deletions":0,"files":["docgen.sh","docs/parsers/upower.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/upower.md","lines_changed":229}]},"message":"add upower docs"},{"commit":"d77c90a3ba2036b216f4a612876ace988eafd217","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":114,"deletions":6,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":120}]},"message":"fix quoted values in detail level. Add examples"},{"commit":"01f0c20df09fd4aa12bd108928b97376b51ef31a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":0,"files":["tests/fixtures/ubuntu-18.04/upower-d-clocale.out"],"file_stats":[{"name":"tests/fixtures/ubuntu-18.04/upower-d-clocale.out","lines_changed":27}]},"message":"add sample using C locale timestamp"},{"commit":"aafbe576b3b754de91591d9ec2dae9e9f827dee4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":137,"deletions":36,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":173}]},"message":"working parser and processor"},{"commit":"bd68ad40345fb1f69be0e0f87dc67134f826cd06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":4}]},"message":"don't modify detail_type value since it is no longer a key"},{"commit":"bfee017c138bb30ec6af836685013b7124028974","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":61,"deletions":20,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":81}]},"message":"made the schema more explicit by hardcoding more items. still working on the schema"},{"commit":"61f532cfd0b7fbf14a58a0fd638bcbfb03fbde72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":12}]},"message":"working history list"},{"commit":"58dbbb75b607d0b29be185c3b8c3f0d8af21ecad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":21,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":30}]},"message":"simplified logic"},{"commit":"8d88b91fcf5060d7d54f687efec3e3a606bab767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":17}]},"message":"move if statements and generalize the history detail detection"},{"commit":"ad39fc60299089f56f37baac71820e50cbe87ed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":268,"deletions":0,"files":["jc/cli.py","jc/parsers/upower.py","tests/fixtures/generic/upower-i.out","tests/fixtures/generic/upower-i2.out","tests/fixtures/ubuntu-18.04/upower-d.out","tests/fixtures/ubuntu-18.04/upower-i.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/upower.py","lines_changed":173},{"name":"tests/fixtures/generic/upower-i.out","lines_changed":32},{"name":"tests/fixtures/generic/upower-i2.out","lines_changed":24},{"name":"tests/fixtures/ubuntu-18.04/upower-d.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-18.04/upower-i.out","lines_changed":11}]},"message":"working upower parser. history lines are ignored"},{"commit":"89f1fd96e6b7aa0acf6272e4f3469005d4f7c6bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":87,"deletions":0,"files":["tests/fixtures/generic/acpi-V.json","tests/fixtures/generic/acpi-V2.json","tests/fixtures/generic/acpi-V3.json","tests/fixtures/generic/acpi-V4.json","tests/fixtures/ubuntu-18.04/acpi-V.json","tests/test_acpi.py"],"file_stats":[{"name":"tests/fixtures/generic/acpi-V.json","lines_changed":1},{"name":"tests/fixtures/generic/acpi-V2.json","lines_changed":1},{"name":"tests/fixtures/generic/acpi-V3.json","lines_changed":1},{"name":"tests/fixtures/generic/acpi-V4.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/acpi-V.json","lines_changed":1},{"name":"tests/test_acpi.py","lines_changed":82}]},"message":"add acpi tests"},{"commit":"bd425f2493b68949c1fa02cd1d3289ec882d9b0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":321,"deletions":2,"files":["CHANGELOG","EXAMPLES.md","docgen.sh","docs/parsers/acpi.md","jc/cli.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":4},{"name":"EXAMPLES.md","lines_changed":58},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/acpi.md","lines_changed":256},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to v1.15.0. Add acpi docs"},{"commit":"46962ff02a0630766a927babc92e11ec91b1f789","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":11,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":12}]},"message":"remove redundant lines"},{"commit":"e4cb88b05166815e8ad03b646bd3f2b1da7f0d4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":1}]},"message":"remove unneeded line-state assignment"},{"commit":"32840703dc1d88412712b08db1c9bdaebbc34450","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":39,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":47}]},"message":"remove redundant code"},{"commit":"1f7aafd0415a79e0547cc6f1c008c1918f8fb460","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":19,"deletions":9,"files":["jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out","tests/fixtures/generic/acpi-V4.out"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":15},{"name":"tests/fixtures/generic/acpi-V.out","lines_changed":1},{"name":"tests/fixtures/generic/acpi-V4.out","lines_changed":12}]},"message":"fix for full charge batter case. Clean up battery object logic"},{"commit":"7378d5dce43f75440cb57903e8ae0c1c615b0782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":1}]},"message":"remove comment"},{"commit":"84f76866cdf76f67b34de999fd987de8a02f0306","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":197,"deletions":3,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":200}]},"message":"working process function"},{"commit":"322da9ea6a1ceea1152d720797adb8f3a7dc1199","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":59,"deletions":12,"files":["jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":67},{"name":"tests/fixtures/generic/acpi-V.out","lines_changed":4}]},"message":"working parser"},{"commit":"58645301ec111bfeb2a618f5f169cc734042dc5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":236,"deletions":1,"files":["jc/cli.py","jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out","tests/fixtures/generic/acpi-V2.out","tests/fixtures/generic/acpi-V3.out","tests/fixtures/ubuntu-18.04/acpi-V.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/acpi.py","lines_changed":191},{"name":"tests/fixtures/generic/acpi-V.out","lines_changed":16},{"name":"tests/fixtures/generic/acpi-V2.out","lines_changed":12},{"name":"tests/fixtures/generic/acpi-V3.out","lines_changed":13},{"name":"tests/fixtures/ubuntu-18.04/acpi-V.out","lines_changed":2}]},"message":"add acpi command parser"},{"commit":"1e18dd30a824b0463f0cad86e0da7094c47d34f9","merge":"20f9b7f cc6a19a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #102 from kellyjonbrazil/dev"},{"commit":"cc6a19adccea3e10243a166b87d852b6f95414b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"fix typo in comments"},{"commit":"2a5588b177a24d5b78a4b5a515aba515804b7baa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":13,"deletions":3,"files":["CHANGELOG","jc/cli.py","jc/parsers/yaml.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":5},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":7},{"name":"setup.py","lines_changed":2}]},"message":"packaging fix for yaml parser and pyoxidizer"},{"commit":"20f9b7f88b97ed68aba46e102b8c7b72443b9c85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"fix typo"},{"commit":"d7e32313cd9776b4a6af38cc2819d6e4ef8c0d55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"fix typo"},{"commit":"fb5654d3c4549e84940e2518f2d214debdd42d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"258f1433b36a7ee117ac43953edb4fe964603e7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add locale info to readme"},{"commit":"fb723ae8bd7bb51f9a4bab380ec1bc54cda0445b","merge":"87b506d 283b89e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #101 from kellyjonbrazil/dev"},{"commit":"283b89e37c38a3082203e43e38569c8b0bb11e12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["CHANGELOG","jc/parsers/dig.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/dig.py","lines_changed":6}]},"message":"simplify answer data logic"},{"commit":"f450f9eb8b7d382af316e88301e72af01a018be9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":74,"deletions":0,"files":["tests/fixtures/centos-7.7/hciconfig-a.json","tests/fixtures/centos-7.7/hciconfig.json","tests/fixtures/ubuntu-20.04/hciconfig-a.json","tests/fixtures/ubuntu-20.04/hciconfig.json","tests/test_hciconfig.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/hciconfig-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/hciconfig.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.04/hciconfig-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.04/hciconfig.json","lines_changed":1},{"name":"tests/test_hciconfig.py","lines_changed":70}]},"message":"add hciconfig tests"},{"commit":"b3f8cf99a4874335c6b43e105e0c1562c08256dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":15,"deletions":15,"files":["jc/parsers/hciconfig.py"],"file_stats":[{"name":"jc/parsers/hciconfig.py","lines_changed":30}]},"message":"work for both tabs and spaces"},{"commit":"4301ea8caea7c14f59bcddf09668d0198e1115a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/hciconfig.py"],"file_stats":[{"name":"jc/parsers/hciconfig.py","lines_changed":1}]},"message":"remove debug line"},{"commit":"c672d1c174a42ce44544dfaec0ebcf3c30fd7acf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":903,"deletions":22,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","docs/parsers/hciconfig.md","jc/parsers/hciconfig.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"EXAMPLES.md","lines_changed":126},{"name":"README.md","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/hciconfig.md","lines_changed":358},{"name":"jc/parsers/hciconfig.py","lines_changed":414},{"name":"man/jc.1","lines_changed":22}]},"message":"initial working hciconfig parser"},{"commit":"229e953a38471cdd41af0810577d324329840a4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":205,"deletions":2,"files":["jc/cli.py","jc/parsers/hciconfig.py","setup.py","tests/fixtures/centos-7.7/hciconfig-a.out","tests/fixtures/centos-7.7/hciconfig.out","tests/fixtures/ubuntu-20.04/hciconfig-a.out","tests/fixtures/ubuntu-20.04/hciconfig.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/hciconfig.py","lines_changed":142},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/hciconfig-a.out","lines_changed":10},{"name":"tests/fixtures/centos-7.7/hciconfig.out","lines_changed":6},{"name":"tests/fixtures/ubuntu-20.04/hciconfig-a.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-20.04/hciconfig.out","lines_changed":17}]},"message":"initial add of hciconfig parser"},{"commit":"87b506dc9b4831d11b4fd04fd6849532db074f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":47,"deletions":4,"files":["CHANGELOG","jc/cli.py","jc/parsers/dig.py","setup.py","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/generic/dig-answer-spaces.out","tests/test_dig.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":8},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/generic/dig-answer-spaces.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-answer-spaces.out","lines_changed":23},{"name":"tests/test_dig.py","lines_changed":12}]},"message":"fix for spaces in dig answer data"},{"commit":"15c9002d9eff0f52d873fb3ab35dfafd03a8e919","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"simplify logic by taking out 'not' in JC_COLORS parsing"},{"commit":"042aaa61b96fc8472a8a460c49bde4cbbc359094","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"minor updates"},{"commit":"ef856c6ba5774cd8ec23acd71496846e794e3872","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"clarify -q option"},{"commit":"9cf5be73e3f975132d1ffbef412638b941a5664f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"typo fix"},{"commit":"63fc149e2a097cbde60c2ce1aeb102d9becabd9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"typo fix"},{"commit":"3c25839350800c7e7d2c48fc032bb21efa0ac213","merge":"03c0295 58246e3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #98 from kellyjonbrazil/dev"},{"commit":"58246e33b71bae0ca4a42ad5bdf31134948b1014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","README.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"README.md","lines_changed":3}]},"message":"update compatibility info and changelog date"},{"commit":"8b1407c7068e2105a83992bbb026138ea67bc07c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":59,"deletions":10,"files":["runtests.sh","tests/localtest_last.py","tests/test_last.py"],"file_stats":[{"name":"runtests.sh","lines_changed":6},{"name":"tests/localtest_last.py","lines_changed":41},{"name":"tests/test_last.py","lines_changed":22}]},"message":"pull env-specific tests from CI/CD and run locally only"},{"commit":"2fde4a4e2299b98a9958e3a55849c6791e4b17dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["EXAMPLES.md","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"doc updates"},{"commit":"60b9e9798286121399d0f8b75d63ab0f3312c9bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":80,"deletions":38,"files":["docs/parsers/last.md","jc/parsers/last.py","tests/fixtures/centos-7.7/last-crash.json","tests/fixtures/centos-7.7/last-w.json","tests/fixtures/centos-7.7/last-wF.json","tests/fixtures/centos-7.7/last-wF.out","tests/fixtures/centos-7.7/last.json","tests/fixtures/fedora32/last.json","tests/fixtures/osx-10.14.6/last.json","tests/fixtures/ubuntu-18.04/last-w.json","tests/fixtures/ubuntu-18.04/last.json","tests/fixtures/ubuntu-20.04/last-F.json"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":37},{"name":"jc/parsers/last.py","lines_changed":57},{"name":"tests/fixtures/centos-7.7/last-crash.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/last-w.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/last-wF.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/last-wF.out","lines_changed":6},{"name":"tests/fixtures/centos-7.7/last.json","lines_changed":2},{"name":"tests/fixtures/fedora32/last.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/last.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/last-w.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/last.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/last-F.json","lines_changed":2}]},"message":"last parser enhancements: augment hostname with CONSOLE for GUI login, add convenience fields when -F is used: login_epoch, logout_epoch, duration_seconds, calculate duration to hours:minutes"},{"commit":"0adac79c0f2a22b31dfef1432a029af06132467b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"Add last parser enhancements"},{"commit":"9f485b5981a2ce49ac699b9dad39993c5605ae18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["jc/parsers/iw_scan.py","tests/fixtures/centos-7.7/iw-scan0.json","tests/fixtures/centos-7.7/iw-scan1.json"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":6},{"name":"tests/fixtures/centos-7.7/iw-scan0.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iw-scan1.json","lines_changed":2}]},"message":"change mac_address fieldname to bssid. Add credit to Phillip"},{"commit":"db17d21b8f9b2f899760e648f1483d33d0bcf47a","merge":"5885b96 996d394","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #97 from pschmitt/iw_scan_fix_space_detection"},{"commit":"996d394e89c732f327323ca340fce405bd5fb2e4","author":"Philipp Schmitt","author_email":"philipp@schmitt.co","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":3}]},"message":"iw_scan: Improve detection of lines starting with spaces"},{"commit":"5885b960f9b33a95ecec9f4a33233c2f8682fbc4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":2,"files":["CHANGELOG","README.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":2},{"name":"man/jc.1","lines_changed":4}]},"message":"doc updates"},{"commit":"79987b35f332e287567e103f25cf91cb50e040c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2}]},"message":"formatting"},{"commit":"661b3ef311ad26678030c70c11f2f955667311a4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":94,"deletions":2,"files":["EXAMPLES.md","README.md","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":91},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"doc updates"},{"commit":"fb422726a8366c7133f0712d3b05a26620eea785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["tests/fixtures/ubuntu-20.04/last-F.json","tests/fixtures/ubuntu-20.04/last-F.out"],"file_stats":[{"name":"tests/fixtures/ubuntu-20.04/last-F.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/last-F.out","lines_changed":1}]},"message":"update test to add 'down' condition"},{"commit":"4fb6f3ea59c52515926a51a006e65a1c18e57720","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":4}]},"message":"add support for down in addition to crash"},{"commit":"f78fe771e1c2fb4691858fa7f27b1febe5f8c6c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":48,"deletions":0,"files":["tests/fixtures/centos-7.7/iw-scan0.json","tests/fixtures/centos-7.7/iw-scan1.json","tests/test_iw_scan.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/iw-scan0.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iw-scan1.json","lines_changed":1},{"name":"tests/test_iw_scan.py","lines_changed":46}]},"message":"add iw-scan tests"},{"commit":"567b8872538ac9f6b384b98741acd9794229d513","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":252,"deletions":12,"files":["docgen.sh","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/iw_scan.md","lines_changed":160},{"name":"jc/parsers/iw_scan.py","lines_changed":103}]},"message":"doc updates"},{"commit":"e516e6b9466b29d40ec10070dd61551180eeef90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":29,"deletions":1,"files":["jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":30}]},"message":"fix country/environment fields and process int/float conversions"},{"commit":"62748676aae3d5955191ed267215df33a5bd3a4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":225,"deletions":0,"files":["jc/cli.py","jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/iw_scan.py","lines_changed":224}]},"message":"initial iw-scan parser"},{"commit":"7351c72e45242b9eb08c51dea7b6fccf12366dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":402,"deletions":1,"files":["jc/parsers/last.py","tests/fixtures/centos-7.7/last-crash.json","tests/fixtures/centos-7.7/last-crash.out","tests/fixtures/centos-7.7/last-wF.json","tests/fixtures/centos-7.7/last-wF.out","tests/test_last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":10},{"name":"tests/fixtures/centos-7.7/last-crash.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/last-crash.out","lines_changed":184},{"name":"tests/fixtures/centos-7.7/last-wF.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/last-wF.out","lines_changed":184},{"name":"tests/test_last.py","lines_changed":23}]},"message":"add fixes and tests for entries that contain 'crash'"},{"commit":"2b7405c5e21db2488fc48b58f6c65cff947ca95d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":23,"deletions":16,"files":["CHANGELOG","README.md","docs/parsers/last.md","jc/parsers/last.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":6},{"name":"jc/parsers/last.py","lines_changed":6},{"name":"man/jc.1","lines_changed":22}]},"message":"doc updates"},{"commit":"e2c77cb935a5bd95dbe930d424e5a02e88e1fa76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":15,"deletions":1,"files":["jc/parsers/last.py","tests/fixtures/ubuntu-20.04/last-F.json","tests/test_last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":3},{"name":"tests/fixtures/ubuntu-20.04/last-F.json","lines_changed":1},{"name":"tests/test_last.py","lines_changed":12}]},"message":"add test for last -F output"},{"commit":"7ac621e4c916373a03f379425033cb2d81a03578","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":36,"deletions":6,"files":["docs/parsers/last.md","jc/parsers/last.py","tests/fixtures/ubuntu-20.04/last-F.out"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":6},{"name":"jc/parsers/last.py","lines_changed":30},{"name":"tests/fixtures/ubuntu-20.04/last-F.out","lines_changed":6}]},"message":"add -F support"},{"commit":"d8b5d6c66ced19dc16f2b4975d2293a903732ffe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/cli.py","setup.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to 1.14.1"},{"commit":"22b461eb4b1ca86ea9e8c1fde8a2c312d1526b5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":47,"deletions":12,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/test_date.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":1},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":40},{"name":"tests/fixtures/generic/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date.json","lines_changed":1},{"name":"tests/test_date.py","lines_changed":12}]},"message":"Add period field for en_US.UTF-8 locale"},{"commit":"b37ee8555a2a108625a834a7990bc3320e79b08d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":6}]},"message":"changelog update"},{"commit":"1d0ad2f045733c5c690738d49951fdb9bcd3d66d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":123,"insertions":312,"deletions":312,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat_freebsd_osx.py","jc/parsers/netstat_linux.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":6},{"name":"docs/parsers/arp.md","lines_changed":6},{"name":"docs/parsers/blkid.md","lines_changed":6},{"name":"docs/parsers/cksum.md","lines_changed":6},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":6},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":6},{"name":"docs/parsers/dig.md","lines_changed":6},{"name":"docs/parsers/dmidecode.md","lines_changed":6},{"name":"docs/parsers/du.md","lines_changed":6},{"name":"docs/parsers/env.md","lines_changed":6},{"name":"docs/parsers/file.md","lines_changed":6},{"name":"docs/parsers/free.md","lines_changed":6},{"name":"docs/parsers/fstab.md","lines_changed":6},{"name":"docs/parsers/group.md","lines_changed":6},{"name":"docs/parsers/gshadow.md","lines_changed":6},{"name":"docs/parsers/hash.md","lines_changed":6},{"name":"docs/parsers/hashsum.md","lines_changed":6},{"name":"docs/parsers/history.md","lines_changed":6},{"name":"docs/parsers/hosts.md","lines_changed":6},{"name":"docs/parsers/id.md","lines_changed":4},{"name":"docs/parsers/ifconfig.md","lines_changed":6},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":6},{"name":"docs/parsers/jobs.md","lines_changed":6},{"name":"docs/parsers/last.md","lines_changed":6},{"name":"docs/parsers/ls.md","lines_changed":6},{"name":"docs/parsers/lsblk.md","lines_changed":6},{"name":"docs/parsers/lsmod.md","lines_changed":6},{"name":"docs/parsers/lsof.md","lines_changed":6},{"name":"docs/parsers/mount.md","lines_changed":6},{"name":"docs/parsers/netstat.md","lines_changed":6},{"name":"docs/parsers/ntpq.md","lines_changed":6},{"name":"docs/parsers/passwd.md","lines_changed":6},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":6},{"name":"docs/parsers/pip_show.md","lines_changed":6},{"name":"docs/parsers/ps.md","lines_changed":6},{"name":"docs/parsers/route.md","lines_changed":6},{"name":"docs/parsers/shadow.md","lines_changed":6},{"name":"docs/parsers/ss.md","lines_changed":6},{"name":"docs/parsers/stat.md","lines_changed":6},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":6},{"name":"docs/parsers/systemctl_lj.md","lines_changed":6},{"name":"docs/parsers/systemctl_ls.md","lines_changed":6},{"name":"docs/parsers/systemctl_luf.md","lines_changed":6},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":6},{"name":"docs/parsers/wc.md","lines_changed":6},{"name":"docs/parsers/who.md","lines_changed":6},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":6},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":6},{"name":"jc/parsers/arp.py","lines_changed":6},{"name":"jc/parsers/blkid.py","lines_changed":6},{"name":"jc/parsers/cksum.py","lines_changed":6},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"jc/parsers/csv.py","lines_changed":6},{"name":"jc/parsers/date.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":6},{"name":"jc/parsers/dig.py","lines_changed":6},{"name":"jc/parsers/dmidecode.py","lines_changed":6},{"name":"jc/parsers/du.py","lines_changed":6},{"name":"jc/parsers/env.py","lines_changed":6},{"name":"jc/parsers/file.py","lines_changed":6},{"name":"jc/parsers/foo.py","lines_changed":6},{"name":"jc/parsers/free.py","lines_changed":6},{"name":"jc/parsers/fstab.py","lines_changed":6},{"name":"jc/parsers/group.py","lines_changed":6},{"name":"jc/parsers/gshadow.py","lines_changed":6},{"name":"jc/parsers/hash.py","lines_changed":6},{"name":"jc/parsers/hashsum.py","lines_changed":6},{"name":"jc/parsers/history.py","lines_changed":6},{"name":"jc/parsers/hosts.py","lines_changed":6},{"name":"jc/parsers/id.py","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":6},{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":6},{"name":"jc/parsers/jobs.py","lines_changed":6},{"name":"jc/parsers/last.py","lines_changed":6},{"name":"jc/parsers/ls.py","lines_changed":6},{"name":"jc/parsers/lsblk.py","lines_changed":6},{"name":"jc/parsers/lsmod.py","lines_changed":6},{"name":"jc/parsers/lsof.py","lines_changed":6},{"name":"jc/parsers/mount.py","lines_changed":6},{"name":"jc/parsers/netstat.py","lines_changed":6},{"name":"jc/parsers/netstat_freebsd_osx.py","lines_changed":2},{"name":"jc/parsers/netstat_linux.py","lines_changed":2},{"name":"jc/parsers/ntpq.py","lines_changed":6},{"name":"jc/parsers/passwd.py","lines_changed":6},{"name":"jc/parsers/ping.py","lines_changed":4},{"name":"jc/parsers/pip_list.py","lines_changed":6},{"name":"jc/parsers/pip_show.py","lines_changed":6},{"name":"jc/parsers/ps.py","lines_changed":6},{"name":"jc/parsers/route.py","lines_changed":6},{"name":"jc/parsers/shadow.py","lines_changed":6},{"name":"jc/parsers/ss.py","lines_changed":6},{"name":"jc/parsers/stat.py","lines_changed":6},{"name":"jc/parsers/sysctl.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":6},{"name":"jc/parsers/systemctl_lj.py","lines_changed":6},{"name":"jc/parsers/systemctl_ls.py","lines_changed":6},{"name":"jc/parsers/systemctl_luf.py","lines_changed":6},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":6},{"name":"jc/parsers/wc.py","lines_changed":6},{"name":"jc/parsers/who.py","lines_changed":6},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":6}]},"message":"doc fixes"},{"commit":"ceccfb2c815f57f1b6fd81f891d8b495de23f9f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":2036,"deletions":0,"files":["tests/fixtures/centos-7.7/iw-scan0.out","tests/fixtures/centos-7.7/iw-scan1.out","tests/fixtures/ubuntu-20.04/date.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/iw-scan0.out","lines_changed":36},{"name":"tests/fixtures/centos-7.7/iw-scan1.out","lines_changed":1999},{"name":"tests/fixtures/ubuntu-20.04/date.out","lines_changed":1}]},"message":"add test output for iw-scan and date on ubuntu 20.04"},{"commit":"03c02953cd7e3327b391f799c37a2990eb2cb24c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":96,"deletions":0,"files":["docgen.sh","docs/parsers/wc.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/wc.md","lines_changed":95}]},"message":"add wc doc"},{"commit":"f254a0eaa16fcda316f7a75424ee359058204b03","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"9e3b88727cd439e15f235dddb9dd5796e010797a","merge":"439871e b122174","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #91 from kellyjonbrazil/dev"},{"commit":"b12217466e906829d19be4cfd80dfe7cf4008e57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"spelling"},{"commit":"8b9c932f9b05295e63b3e7d0073f243458fd4dd9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"update date"},{"commit":"5986ce03db6fcd1aa0f7b064eaa96c2120c06d2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add printenv info"},{"commit":"a7b0e936e400d2f9e55629e2d722cc002e035e9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"add vdir and printenv info"},{"commit":"cb0221142455a6bcb904fbe9ade657be45815b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":61,"deletions":2,"files":["jc/parsers/wc.py","tests/fixtures/osx-10.14.6/wc-stdin.json","tests/fixtures/osx-10.14.6/wc-stdin.out","tests/test_wc.py"],"file_stats":[{"name":"jc/parsers/wc.py","lines_changed":3},{"name":"tests/fixtures/osx-10.14.6/wc-stdin.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/wc-stdin.out","lines_changed":1},{"name":"tests/test_wc.py","lines_changed":58}]},"message":"add wc tests"},{"commit":"bd443bf39227515ae5f8df65d07b30268dcc90a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/env.py"],"file_stats":[{"name":"jc/parsers/env.py","lines_changed":4}]},"message":"add printenv to env docs"},{"commit":"1f547edd361e66b19ccbcb59f6ba0ae78f6080ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/env.md"],"file_stats":[{"name":"docs/parsers/env.md","lines_changed":2}]},"message":"add printenv to env docs"},{"commit":"e4bac3a493705b09e301ddc90dd1b0cee7467c3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":378,"deletions":0,"files":["CHANGELOG","EXAMPLES.md","README.md","jc/cli.py","jc/parsers/wc.py","tests/fixtures/centos-7.7/wc.json","tests/fixtures/centos-7.7/wc.out","tests/fixtures/osx-10.14.6/wc.json","tests/fixtures/osx-10.14.6/wc.out"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":26},{"name":"README.md","lines_changed":1},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/wc.py","lines_changed":130},{"name":"tests/fixtures/centos-7.7/wc.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/wc.out","lines_changed":67},{"name":"tests/fixtures/osx-10.14.6/wc.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/wc.out","lines_changed":150}]},"message":"add wc parser"},{"commit":"5e6bfa681aff03fbd683f81a9f4daa56b49d1344","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["README.md","docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":6}]},"message":"add vdir info"},{"commit":"276160125e01553c75eaad68530177bcf4f9004d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"add new commands to README"},{"commit":"d4ae5543f2d5f28a0db5b8e2e19993c21c5d960c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":39,"deletions":0,"files":["tests/fixtures/centos-7.7/hash.json","tests/fixtures/centos-7.7/hash.out","tests/test_hash.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/hash.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/hash.out","lines_changed":4},{"name":"tests/test_hash.py","lines_changed":34}]},"message":"add hash tests"},{"commit":"55f360e267fdfcfef0c124ed6b88535cc181a8b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":260,"deletions":0,"files":["CHANGELOG","EXAMPLES.md","docgen.sh","docs/parsers/hash.md","jc/cli.py","jc/parsers/hash.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":71},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/hash.md","lines_changed":78},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/hash.py","lines_changed":108}]},"message":"add hash command parser"},{"commit":"fdedab2a0cf5af15df5803d87302397dd6d71741","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/cksum.py","jc/parsers/hashsum.py"],"file_stats":[{"name":"jc/parsers/cksum.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":2}]},"message":"description updates"},{"commit":"a9be42e3031ab0d697cff67a9e384caa2265a3ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"specify parser warnings for quiet option"},{"commit":"6da9510e46e84ec1cb93384825184d2996cf0e08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":482,"deletions":0,"files":["tests/fixtures/centos-7.7/cksum.json","tests/fixtures/centos-7.7/cksum.out","tests/fixtures/centos-7.7/sum.json","tests/fixtures/centos-7.7/sum.out","tests/fixtures/osx-10.14.6/cksum.json","tests/fixtures/osx-10.14.6/cksum.out","tests/fixtures/osx-10.14.6/sum.json","tests/fixtures/osx-10.14.6/sum.out","tests/test_cksum.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/cksum.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/cksum.out","lines_changed":59},{"name":"tests/fixtures/centos-7.7/sum.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sum.out","lines_changed":58},{"name":"tests/fixtures/osx-10.14.6/cksum.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/cksum.out","lines_changed":145},{"name":"tests/fixtures/osx-10.14.6/sum.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/sum.out","lines_changed":146},{"name":"tests/test_cksum.py","lines_changed":70}]},"message":"add cksum tests"},{"commit":"0431798178740b03cdefececc6df958e5adf62fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":229,"deletions":3,"files":["CHANGELOG","docgen.sh","docs/parsers/cksum.md","docs/parsers/hashsum.md","jc/cli.py","jc/parsers/cksum.py","jc/parsers/hashsum.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/cksum.md","lines_changed":95},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/cksum.py","lines_changed":128},{"name":"jc/parsers/hashsum.py","lines_changed":2}]},"message":"add cksum parser"},{"commit":"62432f3c484e74acb2b2dfd15d448b3f1b5d53c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/hashsum.py"],"file_stats":[{"name":"jc/parsers/hashsum.py","lines_changed":2}]},"message":"update hashsum description"},{"commit":"9fbbc30906b597e6afaf2030015a7a694d85f79e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":0,"files":["docs/parsers/hashsum.md","jc/parsers/hashsum.py"],"file_stats":[{"name":"docs/parsers/hashsum.md","lines_changed":10},{"name":"jc/parsers/hashsum.py","lines_changed":10}]},"message":"add supported commands to docs"},{"commit":"d1567d1f622902053f3df58645b4e39532e0c30a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":104,"deletions":0,"files":["CHANGELOG","docgen.sh","docs/parsers/hashsum.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":4},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/hashsum.md","lines_changed":99}]},"message":"add hashsum documentation"},{"commit":"6ca1f5970b3a518615a54ee7fcbc1bddab2db331","merge":"1c880b9 3b7d54c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"1c880b9e24ca53cd592cec1dbc52301308290fb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_hashsum.py"],"file_stats":[{"name":"tests/test_hashsum.py","lines_changed":2}]},"message":"force git tests"},{"commit":"3b7d54c720dfc93637328cf06eb10a85447c8793","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"add python 3.9"},{"commit":"44a740605705bd0ecfde2a6bcc7a826e1010dcf0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":87,"deletions":0,"files":["tests/fixtures/centos-7.7/md5sum.json","tests/fixtures/centos-7.7/sha256sum.json","tests/fixtures/centos-7.7/sha384sum.json","tests/fixtures/osx-10.14.6/md5.json","tests/fixtures/osx-10.14.6/shasum.json","tests/test_hashsum.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/md5sum.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sha256sum.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sha384sum.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/md5.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/shasum.json","lines_changed":1},{"name":"tests/test_hashsum.py","lines_changed":82}]},"message":"add hashsum tests"},{"commit":"8157dcfdb1868548b7c8ca692e6be25f80bb2c2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":36,"deletions":11,"files":["jc/parsers/hashsum.py"],"file_stats":[{"name":"jc/parsers/hashsum.py","lines_changed":47}]},"message":"fix for files with spaces in the name"},{"commit":"28762aea15cabc9cd8293d725e7f1f0550f8e15d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":524,"deletions":0,"files":["jc/cli.py","jc/parsers/hashsum.py","tests/fixtures/centos-7.7/md5sum.out","tests/fixtures/centos-7.7/sha256sum.out","tests/fixtures/centos-7.7/sha384sum.out","tests/fixtures/osx-10.14.6/md5.out","tests/fixtures/osx-10.14.6/shasum.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/hashsum.py","lines_changed":110},{"name":"tests/fixtures/centos-7.7/md5sum.out","lines_changed":56},{"name":"tests/fixtures/centos-7.7/sha256sum.out","lines_changed":55},{"name":"tests/fixtures/centos-7.7/sha384sum.out","lines_changed":56},{"name":"tests/fixtures/osx-10.14.6/md5.out","lines_changed":104},{"name":"tests/fixtures/osx-10.14.6/shasum.out","lines_changed":142}]},"message":"add hashsum parser"},{"commit":"439871ea9f6b055a407e1faaf47e4f56d1829501","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add ubuntu"},{"commit":"c9180b005c0547c8cbfe4809e66894f1123b0809","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"b14e0725f86853f0113116b1c06f54aaa563f365","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add ansible plugin blog post link"},{"commit":"70fe3dcb4d5b97aba1d6c6dcd5088fecb27af181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"8c554604a42a3ea7ca9131b65c64fd3ceb95f906","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"formatting"},{"commit":"a0a35454bd2831c116cb598c686150b883412f94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add link to the web demo"},{"commit":"e8467e2af5b0c3f14832a9e6d4a96f219c27f3f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"remove extra space"},{"commit":"7515deb5669ef04623e9cbf58653b30c99a96430","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add ansible install command"},{"commit":"ed9e52af241b609ee7f5d1b835c9f6c5306cd3c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"spelling"},{"commit":"592a3804104628c790997747a778b3b39d076dfe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add Ansible note"},{"commit":"1a458d2d5b4c16c0ad90671727ae9b19939e7f23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2}]},"message":"update link"},{"commit":"0e4cf53b92ff951a6390a4dacf8833c272473583","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2}]},"message":"add parser docs link"},{"commit":"e2f06ccb33177173d984bc0cdda1aae1a3f4c681","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"formatting"},{"commit":"8abff004cd8e09529e5d94be4883308152e11565","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/yaml.md"],"file_stats":[{"name":"docs/parsers/yaml.md","lines_changed":2}]},"message":"indentation fix"},{"commit":"c4a0e2e3feb2e51eaaaa202064f352229017bcc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"fix indentation"},{"commit":"4f10f79c73f8b3d6edc2c83e6a12d0ddc1a78555","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":8,"files":["docs/parsers/uname.md","jc/parsers/uname.py"],"file_stats":[{"name":"docs/parsers/uname.md","lines_changed":6},{"name":"jc/parsers/uname.py","lines_changed":6}]},"message":"standardize doc"},{"commit":"69e7a560fd82337570c4bb4aa4780f513c18bd94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":8,"deletions":0,"files":["docs/parsers/env.md","docs/parsers/history.md","jc/parsers/env.py","jc/parsers/history.py"],"file_stats":[{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2}]},"message":"add output info to docs"},{"commit":"59b105580805d78516abe1c1069d52a6f0a8131a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":97,"insertions":564,"deletions":269,"files":["docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":12},{"name":"docs/parsers/blkid.md","lines_changed":8},{"name":"docs/parsers/crontab.md","lines_changed":10},{"name":"docs/parsers/crontab_u.md","lines_changed":6},{"name":"docs/parsers/csv.md","lines_changed":9},{"name":"docs/parsers/date.md","lines_changed":8},{"name":"docs/parsers/df.md","lines_changed":8},{"name":"docs/parsers/dig.md","lines_changed":8},{"name":"docs/parsers/dmidecode.md","lines_changed":8},{"name":"docs/parsers/du.md","lines_changed":8},{"name":"docs/parsers/env.md","lines_changed":8},{"name":"docs/parsers/file.md","lines_changed":8},{"name":"docs/parsers/free.md","lines_changed":8},{"name":"docs/parsers/fstab.md","lines_changed":4},{"name":"docs/parsers/group.md","lines_changed":4},{"name":"docs/parsers/gshadow.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":4},{"name":"docs/parsers/hosts.md","lines_changed":4},{"name":"docs/parsers/id.md","lines_changed":8},{"name":"docs/parsers/ifconfig.md","lines_changed":10},{"name":"docs/parsers/ini.md","lines_changed":10},{"name":"docs/parsers/iptables.md","lines_changed":10},{"name":"docs/parsers/jobs.md","lines_changed":10},{"name":"docs/parsers/kv.md","lines_changed":11},{"name":"docs/parsers/last.md","lines_changed":8},{"name":"docs/parsers/ls.md","lines_changed":21},{"name":"docs/parsers/lsblk.md","lines_changed":8},{"name":"docs/parsers/lsmod.md","lines_changed":8},{"name":"docs/parsers/lsof.md","lines_changed":8},{"name":"docs/parsers/mount.md","lines_changed":8},{"name":"docs/parsers/netstat.md","lines_changed":17},{"name":"docs/parsers/ntpq.md","lines_changed":8},{"name":"docs/parsers/passwd.md","lines_changed":4},{"name":"docs/parsers/ping.md","lines_changed":12},{"name":"docs/parsers/pip_list.md","lines_changed":8},{"name":"docs/parsers/pip_show.md","lines_changed":8},{"name":"docs/parsers/ps.md","lines_changed":14},{"name":"docs/parsers/route.md","lines_changed":8},{"name":"docs/parsers/shadow.md","lines_changed":4},{"name":"docs/parsers/ss.md","lines_changed":8},{"name":"docs/parsers/stat.md","lines_changed":8},{"name":"docs/parsers/sysctl.md","lines_changed":16},{"name":"docs/parsers/systemctl.md","lines_changed":8},{"name":"docs/parsers/systemctl_lj.md","lines_changed":8},{"name":"docs/parsers/systemctl_ls.md","lines_changed":8},{"name":"docs/parsers/systemctl_luf.md","lines_changed":8},{"name":"docs/parsers/timedatectl.md","lines_changed":8},{"name":"docs/parsers/tracepath.md","lines_changed":10},{"name":"docs/parsers/traceroute.md","lines_changed":16},{"name":"docs/parsers/uname.md","lines_changed":8},{"name":"docs/parsers/uptime.md","lines_changed":8},{"name":"docs/parsers/w.md","lines_changed":8},{"name":"docs/parsers/who.md","lines_changed":10},{"name":"docs/parsers/xml.md","lines_changed":4},{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"jc/parsers/group.py","lines_changed":4},{"name":"jc/parsers/gshadow.py","lines_changed":4},{"name":"jc/parsers/history.py","lines_changed":4},{"name":"jc/parsers/hosts.py","lines_changed":4},{"name":"jc/parsers/id.py","lines_changed":8},{"name":"jc/parsers/ifconfig.py","lines_changed":10},{"name":"jc/parsers/ini.py","lines_changed":10},{"name":"jc/parsers/iptables.py","lines_changed":10},{"name":"jc/parsers/jobs.py","lines_changed":10},{"name":"jc/parsers/kv.py","lines_changed":11},{"name":"jc/parsers/last.py","lines_changed":8},{"name":"jc/parsers/ls.py","lines_changed":21},{"name":"jc/parsers/lsblk.py","lines_changed":8},{"name":"jc/parsers/lsmod.py","lines_changed":8},{"name":"jc/parsers/lsof.py","lines_changed":8},{"name":"jc/parsers/mount.py","lines_changed":8},{"name":"jc/parsers/netstat.py","lines_changed":17},{"name":"jc/parsers/ntpq.py","lines_changed":8},{"name":"jc/parsers/passwd.py","lines_changed":4},{"name":"jc/parsers/ping.py","lines_changed":12},{"name":"jc/parsers/pip_list.py","lines_changed":8},{"name":"jc/parsers/pip_show.py","lines_changed":8},{"name":"jc/parsers/ps.py","lines_changed":14},{"name":"jc/parsers/route.py","lines_changed":8},{"name":"jc/parsers/shadow.py","lines_changed":4},{"name":"jc/parsers/ss.py","lines_changed":8},{"name":"jc/parsers/stat.py","lines_changed":8},{"name":"jc/parsers/sysctl.py","lines_changed":16},{"name":"jc/parsers/systemctl.py","lines_changed":8},{"name":"jc/parsers/systemctl_lj.py","lines_changed":8},{"name":"jc/parsers/systemctl_ls.py","lines_changed":8},{"name":"jc/parsers/systemctl_luf.py","lines_changed":8},{"name":"jc/parsers/timedatectl.py","lines_changed":8},{"name":"jc/parsers/tracepath.py","lines_changed":10},{"name":"jc/parsers/traceroute.py","lines_changed":16},{"name":"jc/parsers/uname.py","lines_changed":8},{"name":"jc/parsers/uptime.py","lines_changed":8},{"name":"jc/parsers/w.py","lines_changed":8},{"name":"jc/parsers/who.py","lines_changed":10},{"name":"jc/parsers/xml.py","lines_changed":4},{"name":"jc/parsers/yaml.py","lines_changed":4}]},"message":"enhance docs"},{"commit":"6ed48c6289214fe5114971c80772efdf9ac1b8c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":16,"insertions":88,"deletions":37,"files":["jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py"],"file_stats":[{"name":"jc/parsers/airport_s.py","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":12},{"name":"jc/parsers/blkid.py","lines_changed":8},{"name":"jc/parsers/crontab.py","lines_changed":10},{"name":"jc/parsers/crontab_u.py","lines_changed":6},{"name":"jc/parsers/csv.py","lines_changed":9},{"name":"jc/parsers/date.py","lines_changed":8},{"name":"jc/parsers/df.py","lines_changed":8},{"name":"jc/parsers/dig.py","lines_changed":8},{"name":"jc/parsers/dmidecode.py","lines_changed":8},{"name":"jc/parsers/du.py","lines_changed":8},{"name":"jc/parsers/env.py","lines_changed":8},{"name":"jc/parsers/file.py","lines_changed":8},{"name":"jc/parsers/foo.py","lines_changed":10},{"name":"jc/parsers/free.py","lines_changed":8},{"name":"jc/parsers/fstab.py","lines_changed":4}]},"message":"enhance docs"},{"commit":"f2fb4d3f415fbc1c09eec6dedcf70fba78406b3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","jc/parsers/airport.py","jc/parsers/airport_s.py"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":2}]},"message":"improve docs"},{"commit":"6aeea59ea84e56434e87ddf89cd5d4435b99e140","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":8,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":11},{"name":"docs/parsers/airport_s.md","lines_changed":11}]},"message":"doc updates"},{"commit":"d016f3bbb307f85bd0f93a508323941a8bb9d872","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":8,"files":["jc/parsers/airport.py","jc/parsers/airport_s.py"],"file_stats":[{"name":"jc/parsers/airport.py","lines_changed":11},{"name":"jc/parsers/airport_s.py","lines_changed":11}]},"message":"improve documentation"},{"commit":"7131c297180bfa195d0209d46fc70ab8e67efe2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":114,"insertions":686,"deletions":116,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":7},{"name":"docs/parsers/airport_s.md","lines_changed":7},{"name":"docs/parsers/arp.md","lines_changed":7},{"name":"docs/parsers/crontab.md","lines_changed":7},{"name":"docs/parsers/crontab_u.md","lines_changed":7},{"name":"docs/parsers/csv.md","lines_changed":7},{"name":"docs/parsers/date.md","lines_changed":7},{"name":"docs/parsers/df.md","lines_changed":7},{"name":"docs/parsers/dig.md","lines_changed":7},{"name":"docs/parsers/dmidecode.md","lines_changed":7},{"name":"docs/parsers/du.md","lines_changed":7},{"name":"docs/parsers/env.md","lines_changed":7},{"name":"docs/parsers/file.md","lines_changed":7},{"name":"docs/parsers/free.md","lines_changed":7},{"name":"docs/parsers/fstab.md","lines_changed":7},{"name":"docs/parsers/group.md","lines_changed":7},{"name":"docs/parsers/gshadow.md","lines_changed":7},{"name":"docs/parsers/history.md","lines_changed":7},{"name":"docs/parsers/hosts.md","lines_changed":7},{"name":"docs/parsers/id.md","lines_changed":7},{"name":"docs/parsers/ifconfig.md","lines_changed":7},{"name":"docs/parsers/ini.md","lines_changed":7},{"name":"docs/parsers/iptables.md","lines_changed":7},{"name":"docs/parsers/jobs.md","lines_changed":7},{"name":"docs/parsers/kv.md","lines_changed":7},{"name":"docs/parsers/last.md","lines_changed":7},{"name":"docs/parsers/ls.md","lines_changed":7},{"name":"docs/parsers/lsblk.md","lines_changed":7},{"name":"docs/parsers/lsmod.md","lines_changed":7},{"name":"docs/parsers/lsof.md","lines_changed":7},{"name":"docs/parsers/mount.md","lines_changed":7},{"name":"docs/parsers/netstat.md","lines_changed":7},{"name":"docs/parsers/ntpq.md","lines_changed":7},{"name":"docs/parsers/passwd.md","lines_changed":7},{"name":"docs/parsers/ping.md","lines_changed":7},{"name":"docs/parsers/pip_list.md","lines_changed":7},{"name":"docs/parsers/pip_show.md","lines_changed":7},{"name":"docs/parsers/ps.md","lines_changed":7},{"name":"docs/parsers/route.md","lines_changed":7},{"name":"docs/parsers/shadow.md","lines_changed":7},{"name":"docs/parsers/ss.md","lines_changed":7},{"name":"docs/parsers/stat.md","lines_changed":7},{"name":"docs/parsers/sysctl.md","lines_changed":7},{"name":"docs/parsers/systemctl.md","lines_changed":7},{"name":"docs/parsers/systemctl_lj.md","lines_changed":7},{"name":"docs/parsers/systemctl_ls.md","lines_changed":7},{"name":"docs/parsers/systemctl_luf.md","lines_changed":7},{"name":"docs/parsers/timedatectl.md","lines_changed":7},{"name":"docs/parsers/tracepath.md","lines_changed":7},{"name":"docs/parsers/traceroute.md","lines_changed":7},{"name":"docs/parsers/uname.md","lines_changed":9},{"name":"docs/parsers/uptime.md","lines_changed":7},{"name":"docs/parsers/w.md","lines_changed":7},{"name":"docs/parsers/who.md","lines_changed":7},{"name":"docs/parsers/xml.md","lines_changed":7},{"name":"docs/parsers/yaml.md","lines_changed":7},{"name":"jc/parsers/airport.py","lines_changed":7},{"name":"jc/parsers/airport_s.py","lines_changed":7},{"name":"jc/parsers/arp.py","lines_changed":7},{"name":"jc/parsers/blkid.py","lines_changed":7},{"name":"jc/parsers/crontab.py","lines_changed":7},{"name":"jc/parsers/crontab_u.py","lines_changed":7},{"name":"jc/parsers/csv.py","lines_changed":7},{"name":"jc/parsers/date.py","lines_changed":7},{"name":"jc/parsers/df.py","lines_changed":7},{"name":"jc/parsers/dig.py","lines_changed":7},{"name":"jc/parsers/dmidecode.py","lines_changed":7},{"name":"jc/parsers/du.py","lines_changed":7},{"name":"jc/parsers/env.py","lines_changed":7},{"name":"jc/parsers/file.py","lines_changed":7},{"name":"jc/parsers/foo.py","lines_changed":7},{"name":"jc/parsers/free.py","lines_changed":7},{"name":"jc/parsers/fstab.py","lines_changed":7},{"name":"jc/parsers/group.py","lines_changed":7},{"name":"jc/parsers/gshadow.py","lines_changed":7},{"name":"jc/parsers/history.py","lines_changed":7},{"name":"jc/parsers/hosts.py","lines_changed":7},{"name":"jc/parsers/id.py","lines_changed":7},{"name":"jc/parsers/ifconfig.py","lines_changed":7},{"name":"jc/parsers/ini.py","lines_changed":7},{"name":"jc/parsers/iptables.py","lines_changed":7},{"name":"jc/parsers/jobs.py","lines_changed":7},{"name":"jc/parsers/kv.py","lines_changed":7},{"name":"jc/parsers/last.py","lines_changed":7},{"name":"jc/parsers/ls.py","lines_changed":7},{"name":"jc/parsers/lsblk.py","lines_changed":7},{"name":"jc/parsers/lsmod.py","lines_changed":7},{"name":"jc/parsers/lsof.py","lines_changed":7},{"name":"jc/parsers/mount.py","lines_changed":7},{"name":"jc/parsers/netstat.py","lines_changed":7},{"name":"jc/parsers/ntpq.py","lines_changed":7},{"name":"jc/parsers/passwd.py","lines_changed":7},{"name":"jc/parsers/ping.py","lines_changed":7},{"name":"jc/parsers/pip_list.py","lines_changed":7},{"name":"jc/parsers/pip_show.py","lines_changed":7},{"name":"jc/parsers/ps.py","lines_changed":7},{"name":"jc/parsers/route.py","lines_changed":7},{"name":"jc/parsers/shadow.py","lines_changed":7},{"name":"jc/parsers/ss.py","lines_changed":7},{"name":"jc/parsers/stat.py","lines_changed":7},{"name":"jc/parsers/sysctl.py","lines_changed":7},{"name":"jc/parsers/systemctl.py","lines_changed":7},{"name":"jc/parsers/systemctl_lj.py","lines_changed":7},{"name":"jc/parsers/systemctl_ls.py","lines_changed":7},{"name":"jc/parsers/systemctl_luf.py","lines_changed":7},{"name":"jc/parsers/timedatectl.py","lines_changed":7},{"name":"jc/parsers/tracepath.py","lines_changed":7},{"name":"jc/parsers/traceroute.py","lines_changed":7},{"name":"jc/parsers/uname.py","lines_changed":9},{"name":"jc/parsers/uptime.py","lines_changed":7},{"name":"jc/parsers/w.py","lines_changed":7},{"name":"jc/parsers/who.py","lines_changed":7},{"name":"jc/parsers/xml.py","lines_changed":7},{"name":"jc/parsers/yaml.py","lines_changed":7}]},"message":"add module usage info to docs"},{"commit":"7432442983841b42c8d3d2459b55596c05d1e100","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["docs/parsers/blkid.md"],"file_stats":[{"name":"docs/parsers/blkid.md","lines_changed":7}]},"message":"add usage"},{"commit":"5344883394a0662ee16bb5edd68df8e4410025f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"spelling/add ping parser update"},{"commit":"3fcd2f6c2e015b0e65e7261c8e591ccd8a7d0e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/cli.py","setup.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"f3d84bd5bf06349b681e9b72d904676e9f6bca19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":21,"deletions":3,"files":["CHANGELOG","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/fixtures/debian10/crontab-u.json","tests/fixtures/debian10/crontab-u.out","tests/test_crontab_u.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":4},{"name":"tests/fixtures/debian10/crontab-u.json","lines_changed":1},{"name":"tests/fixtures/debian10/crontab-u.out","lines_changed":2},{"name":"tests/test_crontab_u.py","lines_changed":12}]},"message":"tighten crontab and crontab-u parser variable detection"},{"commit":"549780c23220bca3bcab58d7329ba8d44d1be55d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"add debian/apt-get info"},{"commit":"2a6da69b82aa9ade6c01d490a32b57b415c62a9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":4}]},"message":"improve linux/bsd check"},{"commit":"5c538816cf76686bac1a86a7c06e24664d25a2dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":55,"deletions":4,"files":["CHANGELOG","jc/cli.py","jc/parsers/ping.py","setup.py","tests/fixtures/pi/ping-ip-O-D.json","tests/fixtures/pi/ping-ip-O-D.out","tests/fixtures/pi/ping-ip-O.json","tests/fixtures/pi/ping-ip-O.out","tests/test_ping.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/ping.py","lines_changed":4},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/pi/ping-ip-O-D.json","lines_changed":1},{"name":"tests/fixtures/pi/ping-ip-O-D.out","lines_changed":10},{"name":"tests/fixtures/pi/ping-ip-O.json","lines_changed":1},{"name":"tests/fixtures/pi/ping-ip-O.out","lines_changed":10},{"name":"tests/test_ping.py","lines_changed":26}]},"message":"ping parser fix for raspberry pi"},{"commit":"7b8b378a7df397c488fc54fbd6e77f5f3f23c10c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":1}]},"message":"add pydoc-markdown version requirement"},{"commit":"e30a75e25c4b43969bf9f874f89e18512a5e3a34","merge":"dda517a 85ad5cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #76 from kellyjonbrazil/dev"},{"commit":"85ad5cfd0bfb903ce35e37b343244fed88dbd979","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"date change"},{"commit":"88b9d5068c5bac0691fedb543114300d6afc7131","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":74,"deletions":15,"files":["EXAMPLES.md","README.md","docs/parsers/date.md","tests/fixtures/generic/date.json","tests/fixtures/generic/date.out","tests/test_date.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":18},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/date.md","lines_changed":34},{"name":"tests/fixtures/generic/date.json","lines_changed":1},{"name":"tests/fixtures/generic/date.out","lines_changed":1},{"name":"tests/test_date.py","lines_changed":34}]},"message":"finish date parser"},{"commit":"f8c4948a090642db595eda2ba2ea0773e560ba67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":1}]},"message":"remove comment"},{"commit":"412322447f019aec0b64888631bc965e9f21186d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":48,"deletions":17,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":65}]},"message":"add month_num and weekday_num fields"},{"commit":"d4f289e40fae621b87f0d49451fca4c3dde216b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":4},{"name":"jc/parsers/date.py","lines_changed":4}]},"message":"documentation fixup"},{"commit":"e1f3feb8f529172ae26ce4c7a66a4a1c21b722ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":10,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":23}]},"message":"cover empty data case in process"},{"commit":"37d3bc699c7be16955be06840d242980f05f1074","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":224,"deletions":1,"files":["CHANGELOG","docgen.sh","docs/parsers/date.md","jc/cli.py","jc/parsers/date.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/date.md","lines_changed":89},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/date.py","lines_changed":127},{"name":"man/jc.1","lines_changed":4}]},"message":"add date parser"},{"commit":"672fd18016b8122510b6ab246b5675b7fd399b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"date bump"},{"commit":"bc2c23a2a09b96d34bb80f69fdc7751fb5ac3ed4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"version bump"},{"commit":"865f7e78124e382c6d315702fa6e48f2104cee46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":6}]},"message":"add kv parser to man page"},{"commit":"720212b552e1bd2b9196dd5f06e4b3f85d463531","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":9,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":10}]},"message":"fixup traceroute example with new behavior"},{"commit":"d3be61f60837801d5a505dc2520cc80c874a6092","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]},"message":"version bump"},{"commit":"13418b16b8fd78fdd97ac045ec3fe9aa59d46080","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":2,"files":["docs/parsers/traceroute.md","jc/parsers/traceroute.py"],"file_stats":[{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"jc/parsers/traceroute.py","lines_changed":5}]},"message":"doc update"},{"commit":"42d2017cd6f5ee1d1a92bd4958cd63366c1e715d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":18,"insertions":41,"deletions":24,"files":["CHANGELOG","jc/parsers/traceroute.py","tests/fixtures/centos-7.7/traceroute.json","tests/fixtures/freebsd12/traceroute.json","tests/fixtures/freebsd12/traceroute6.json","tests/fixtures/generic/traceroute1.json","tests/fixtures/generic/traceroute2.json","tests/fixtures/generic/traceroute3.json","tests/fixtures/generic/traceroute5.json","tests/fixtures/generic/traceroute6.json","tests/fixtures/generic/traceroute7.json","tests/fixtures/osx-10.14.6/traceroute-asn.json",".../fixtures/osx-10.14.6/traceroute-no-header.json","tests/fixtures/osx-10.14.6/traceroute-q.json","tests/fixtures/osx-10.14.6/traceroute.json",".../osx-10.14.6/traceroute6-mult-addresses.json","tests/fixtures/osx-10.14.6/traceroute6.json","tests/test_traceroute.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/traceroute.py","lines_changed":26},{"name":"tests/fixtures/centos-7.7/traceroute.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/traceroute.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/traceroute6.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute1.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute2.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute3.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute5.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute6.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute7.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/traceroute-asn.json","lines_changed":2},{"name":".../fixtures/osx-10.14.6/traceroute-no-header.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/traceroute-q.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/traceroute.json","lines_changed":2},{"name":".../osx-10.14.6/traceroute6-mult-addresses.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/traceroute6.json","lines_changed":2},{"name":"tests/test_traceroute.py","lines_changed":7}]},"message":"traceroute updates: handle missing header row, add annotations, don't print timeouts as probes"},{"commit":"4345e76ead2a49ae0691077e9fbd2b6c5fdfd129","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2}]},"message":"change to use --kv for key/value files"},{"commit":"741431322ba2677355c361fcd6095ed8cd0a4349","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":46,"deletions":24,"files":["tests/test_ini.py","tests/test_kv.py"],"file_stats":[{"name":"tests/test_ini.py","lines_changed":24},{"name":"tests/test_kv.py","lines_changed":46}]},"message":"update tests for kv parser"},{"commit":"980beaaf41a04891f7c2f5daeb1e3a23d3c7ec19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2}]},"message":"fix docgen issue"},{"commit":"2205034e0906b333c259648f7a0e5392945f12ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":105,"deletions":31,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","jc/cli.py","jc/parsers/ini.py","jc/parsers/kv.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"EXAMPLES.md","lines_changed":53},{"name":"README.md","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/ini.py","lines_changed":4},{"name":"jc/parsers/kv.py","lines_changed":67},{"name":"setup.py","lines_changed":2}]},"message":"add kv parser"},{"commit":"82b9c87a66fce5d8626c56858a8c6f1f3326e7fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":58,"insertions":345,"deletions":62,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/readme.md","docs/utils.md"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":6},{"name":"docs/parsers/airport_s.md","lines_changed":6},{"name":"docs/parsers/arp.md","lines_changed":6},{"name":"docs/parsers/blkid.md","lines_changed":6},{"name":"docs/parsers/crontab.md","lines_changed":6},{"name":"docs/parsers/crontab_u.md","lines_changed":6},{"name":"docs/parsers/csv.md","lines_changed":6},{"name":"docs/parsers/df.md","lines_changed":6},{"name":"docs/parsers/dig.md","lines_changed":6},{"name":"docs/parsers/dmidecode.md","lines_changed":6},{"name":"docs/parsers/du.md","lines_changed":6},{"name":"docs/parsers/env.md","lines_changed":6},{"name":"docs/parsers/file.md","lines_changed":6},{"name":"docs/parsers/free.md","lines_changed":6},{"name":"docs/parsers/fstab.md","lines_changed":6},{"name":"docs/parsers/group.md","lines_changed":6},{"name":"docs/parsers/gshadow.md","lines_changed":6},{"name":"docs/parsers/history.md","lines_changed":6},{"name":"docs/parsers/hosts.md","lines_changed":6},{"name":"docs/parsers/id.md","lines_changed":6},{"name":"docs/parsers/ifconfig.md","lines_changed":13},{"name":"docs/parsers/ini.md","lines_changed":6},{"name":"docs/parsers/iptables.md","lines_changed":6},{"name":"docs/parsers/jobs.md","lines_changed":6},{"name":"docs/parsers/kv.md","lines_changed":61},{"name":"docs/parsers/last.md","lines_changed":6},{"name":"docs/parsers/ls.md","lines_changed":6},{"name":"docs/parsers/lsblk.md","lines_changed":6},{"name":"docs/parsers/lsmod.md","lines_changed":6},{"name":"docs/parsers/lsof.md","lines_changed":6},{"name":"docs/parsers/mount.md","lines_changed":6},{"name":"docs/parsers/netstat.md","lines_changed":6},{"name":"docs/parsers/ntpq.md","lines_changed":6},{"name":"docs/parsers/passwd.md","lines_changed":6},{"name":"docs/parsers/ping.md","lines_changed":6},{"name":"docs/parsers/pip_list.md","lines_changed":6},{"name":"docs/parsers/pip_show.md","lines_changed":6},{"name":"docs/parsers/ps.md","lines_changed":6},{"name":"docs/parsers/route.md","lines_changed":6},{"name":"docs/parsers/shadow.md","lines_changed":6},{"name":"docs/parsers/ss.md","lines_changed":6},{"name":"docs/parsers/stat.md","lines_changed":6},{"name":"docs/parsers/sysctl.md","lines_changed":6},{"name":"docs/parsers/systemctl.md","lines_changed":6},{"name":"docs/parsers/systemctl_lj.md","lines_changed":6},{"name":"docs/parsers/systemctl_ls.md","lines_changed":6},{"name":"docs/parsers/systemctl_luf.md","lines_changed":6},{"name":"docs/parsers/timedatectl.md","lines_changed":6},{"name":"docs/parsers/tracepath.md","lines_changed":6},{"name":"docs/parsers/traceroute.md","lines_changed":9},{"name":"docs/parsers/uname.md","lines_changed":6},{"name":"docs/parsers/uptime.md","lines_changed":6},{"name":"docs/parsers/w.md","lines_changed":6},{"name":"docs/parsers/who.md","lines_changed":6},{"name":"docs/parsers/xml.md","lines_changed":6},{"name":"docs/parsers/yaml.md","lines_changed":6},{"name":"docs/readme.md","lines_changed":1},{"name":"docs/utils.md","lines_changed":5}]},"message":"update docs"},{"commit":"dda517a937323b9888e081aea1032a9d63c4a6bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":163,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":166}]},"message":"shorten more examples"},{"commit":"4e6d283b9eddf7759b4dd37bd643394ff73febd4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":65,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":65}]},"message":"shorten netstat example"},{"commit":"55acab05aa740dfd7534304f2678b60942cad116","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["changelog.txt => CHANGELOG"],"file_stats":[{"name":"changelog.txt => CHANGELOG","lines_changed":0}]},"message":"change name to CHANGELOG"},{"commit":"ed38a18d236cdb991779f4f148e42359c139e61c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":86,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":87}]},"message":"remove more examples"},{"commit":"95b3c11203d3dd0627c5eeca39fe1d145bf2d733","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":124,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":124}]},"message":"remove more examples"},{"commit":"dce318f4fd44b9c4013211bf233020e84566ddb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1537,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1540}]},"message":"remove examples to reduce file size"},{"commit":"85127f0fb8096192b19fca1f4ffe38ee391351be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["jc/examples.md => EXAMPLES.md"],"file_stats":[{"name":"jc/examples.md => EXAMPLES.md","lines_changed":0}]},"message":"move examples to root"},{"commit":"fb45058244ce879f12bbb5b7267b0fd63fef1d63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2640,"deletions":0,"files":["jc/examples.md"],"file_stats":[{"name":"jc/examples.md","lines_changed":2640}]},"message":"add examples file"},{"commit":"45bb5ae389a00ed6a132a65c69ce76c7e5976858","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"spelling"},{"commit":"339238ab364d8735892a11cb16a62a651edae169","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":79,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py","tests/fixtures/centos-7.7/route-6-n.json","tests/fixtures/centos-7.7/route-6-n.out","tests/fixtures/centos-7.7/route-6.json","tests/fixtures/centos-7.7/route-6.out","tests/test_route.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/route-6-n.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/route-6-n.out","lines_changed":24},{"name":"tests/fixtures/centos-7.7/route-6.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/route-6.out","lines_changed":24},{"name":"tests/test_route.py","lines_changed":24}]},"message":"version bump and add route -6 tests"},{"commit":"032cda8b3db096b690d2557e3b918c50c716c543","merge":"690ac52 6badd3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #74 from kellyjonbrazil/dev"},{"commit":"6badd3fb1e1cf6d1ee99614fadc20d54be8039aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":3}]},"message":"add parser count test"},{"commit":"724d825745b6f1692eb3b068c3fb59d14892e690","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":4}]},"message":"add tracepath parser"},{"commit":"ff1e32ad2ee156f105f5069c6b14a65b22784dfa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"a5f97febd3066b9e95a18d6b73162a7d206c5845","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":132,"deletions":0,"files":["tests/fixtures/centos-7.7/tracepath.json","tests/fixtures/centos-7.7/tracepath6.json","tests/fixtures/freebsd12/traceroute.json","tests/fixtures/freebsd12/traceroute.out","tests/fixtures/freebsd12/traceroute6.json","tests/fixtures/freebsd12/traceroute6.out","tests/fixtures/osx-10.14.6/uname.out","tests/test_tracepath.py","tests/test_traceroute.py","tests/test_uname.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/tracepath.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/tracepath6.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/traceroute.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/traceroute.out","lines_changed":14},{"name":"tests/fixtures/freebsd12/traceroute6.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/traceroute6.out","lines_changed":34},{"name":"tests/fixtures/osx-10.14.6/uname.out","lines_changed":1},{"name":"tests/test_tracepath.py","lines_changed":46},{"name":"tests/test_traceroute.py","lines_changed":24},{"name":"tests/test_uname.py","lines_changed":9}]},"message":"update traceroute, tracepath, and uname tests"},{"commit":"5baa6cc865634142690e78596c640db35e110b29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add route parser update"},{"commit":"7a4f30b843d8f11711abbb8f9bb263f945ff87ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":6}]},"message":"fix for iface issue"},{"commit":"b2c385dc4f63e3e15f47e986deac0524967214a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":2}]},"message":"change 'if' to 'iface'"},{"commit":"5d5da8d33fa6ab77c745d338d1a2e2e8f2e4c697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":6}]},"message":"more fixes for ipv6 fix"},{"commit":"e60457157839daba385202906997dec48c9c4950","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":2}]},"message":"fix next_hop fix"},{"commit":"f9dacc3f95b32e1431914ae0b0dc5c8e8840d5a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":4}]},"message":"fixup for ipv6"},{"commit":"6086920332575cd7db1b38262a3b4ba8fbfae7ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]},"message":"update ParseError message"},{"commit":"f52f3163bcaf8d7e784f02505e81456e8240295b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":49,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":49}]},"message":"add tracepath example"},{"commit":"d18ff73e880c7d34957f2713857cc83094f914cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/tracepath.py"],"file_stats":[{"name":"jc/parsers/tracepath.py","lines_changed":4}]},"message":"update author info"},{"commit":"1e5d602caecd96c9056ad77f9fc50cf25bf6fdfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":288,"deletions":32,"files":["docs/parsers/tracepath.md","jc/parsers/tracepath.py"],"file_stats":[{"name":"docs/parsers/tracepath.md","lines_changed":122},{"name":"jc/parsers/tracepath.py","lines_changed":198}]},"message":"working tracepath parser"},{"commit":"12912521ecb376c36dfdd743b3c4195598fb9aac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":11,"files":["docs/parsers/traceroute.md","jc/parsers/traceroute.py"],"file_stats":[{"name":"docs/parsers/traceroute.md","lines_changed":7},{"name":"jc/parsers/traceroute.py","lines_changed":4}]},"message":"doc update"},{"commit":"842ea3a94bec3fcab76257fdde5514d1de3d57fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":153,"deletions":0,"files":["docs/parsers/tracepath.md","jc/parsers/tracepath.py"],"file_stats":[{"name":"docs/parsers/tracepath.md","lines_changed":64},{"name":"jc/parsers/tracepath.py","lines_changed":89}]},"message":"add tracepath parser skeleton"},{"commit":"a8560dbc1598fa97de87594228b4cc10282d4197","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add tracepath"},{"commit":"a65e27540a8c5c7123d2fdf79fcbefa1e2f8afdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":24,"files":["docgen.sh","docs/parsers/traceroute.md","jc/parsers/traceroute.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/traceroute.md","lines_changed":14},{"name":"jc/parsers/traceroute.py","lines_changed":10}]},"message":"update docs"},{"commit":"c3c5ed11e68938e35920144406d37ea3b21d63dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]},"message":"change name from tr to trparse"},{"commit":"ce24149335cd8ed1e8513a2cf040432fe42d86b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":1}]},"message":"formatting"},{"commit":"0314ca8c4831d24c169a0e4948421ecd638fd699","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add trparse acknowledgement"},{"commit":"ebd8ee49a9f43063850e30c745c8cae46ee13de1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":27}]},"message":"add key/value info to ini example"},{"commit":"38d10c97814ec69586c3b447c182f339772d6e22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":130,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":131}]},"message":"add ping and traceroute examples"},{"commit":"360106c24d24e6a9697c00a158a14aaa334a4b1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add tracepath"},{"commit":"ca470a5d02fd9fbaf05d8b3b3bb1ffe9f4cf5af3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":39,"deletions":0,"files":["tests/fixtures/centos-7.7/tracepath.out","tests/fixtures/centos-7.7/tracepath6.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/tracepath.out","lines_changed":34},{"name":"tests/fixtures/centos-7.7/tracepath6.out","lines_changed":5}]},"message":"add tracepath fixtures"},{"commit":"57f66e6b1d554ff20b72959f5ebb9e7b2feffed2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":2,"files":["changelog.txt","jc/parsers/uname.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":14}]},"message":"add exception with hint to use \"uname -a\""},{"commit":"e774f67924c0e6195f79829b2ac75ce95f76fbaa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["jc/parsers/ini.py"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":10}]},"message":"turn off interpolation and coerce None to ''"},{"commit":"ac10e576c167d20de259e47a6aa5b23fc998b4c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/ini.md","jc/parsers/ini.py"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"jc/parsers/ini.py","lines_changed":4}]},"message":"spelling"},{"commit":"bcae0a99cd0ccce4ec8a67929f7c83a1095a5b88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"add key/value to ini description"},{"commit":"c73c2ff879b3ed7a3e6f04e53e0a729e4f00ed21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":8}]},"message":"add ping, traceroute, and ini update"},{"commit":"c39b1a3356881a11a8f6fe9432897e6d67162f07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"add ping, traceroute and update ini description"},{"commit":"125dc2d9e051a82a4a438afe2e520212338353f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":3,"files":["docs/parsers/ini.md"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":11}]},"message":"add info about key/value files to doc"},{"commit":"b7d4ddc7ced2c3aabf3a857b53a0bf1b62eb6a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":50,"deletions":0,"files":["tests/fixtures/generic/keyvalue-ifcfg.json","tests/fixtures/generic/keyvalue-ifcfg.txt","tests/fixtures/generic/keyvalue.json","tests/fixtures/generic/keyvalue.txt","tests/test_ini.py"],"file_stats":[{"name":"tests/fixtures/generic/keyvalue-ifcfg.json","lines_changed":1},{"name":"tests/fixtures/generic/keyvalue-ifcfg.txt","lines_changed":19},{"name":"tests/fixtures/generic/keyvalue.json","lines_changed":1},{"name":"tests/fixtures/generic/keyvalue.txt","lines_changed":5},{"name":"tests/test_ini.py","lines_changed":24}]},"message":"add tests for key/value files"},{"commit":"f5e546c6fa7cba166284a0976887d6b82451d3e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":33,"deletions":9,"files":["jc/parsers/ini.py"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":42}]},"message":"add support for simple key/value pairs"},{"commit":"928e39cd103b96b8c3ccc8d85c930ffb419296c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":104,"deletions":0,"files":["tests/fixtures/generic/traceroute1.json","tests/fixtures/generic/traceroute2.json","tests/fixtures/generic/traceroute3.json","tests/fixtures/generic/traceroute4.json","tests/fixtures/generic/traceroute5.json","tests/fixtures/generic/traceroute6.json","tests/fixtures/generic/traceroute7.json","tests/fixtures/generic/traceroute8.json","tests/test_traceroute.py"],"file_stats":[{"name":"tests/fixtures/generic/traceroute1.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute2.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute3.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute4.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute5.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute6.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute7.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute8.json","lines_changed":1},{"name":"tests/test_traceroute.py","lines_changed":96}]},"message":"add generic traceroute tests"},{"commit":"d0b7ea68a005daff313e44808b256656313a78a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":4}]},"message":"check for key in dictionary"},{"commit":"8444690133b6a7522822ab279e97ede6ded17ba9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":4}]},"message":"add traceroute"},{"commit":"c03c42d76703ff8f423cf3c10ea6254a27a685cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":76,"deletions":9,"files":["tests/fixtures/centos-7.7/traceroute.json","tests/fixtures/osx-10.14.6/traceroute-asn.json",".../osx-10.14.6/traceroute-mult-addresses.json","tests/fixtures/osx-10.14.6/traceroute-q.json","tests/fixtures/osx-10.14.6/traceroute.json",".../osx-10.14.6/traceroute6-mult-addresses.json","...-address.out => traceroute6-mult-addresses.out}","tests/fixtures/osx-10.14.6/traceroute6.json","tests/test_traceroute.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/traceroute.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/traceroute-asn.json","lines_changed":1},{"name":".../osx-10.14.6/traceroute-mult-addresses.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/traceroute-q.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/traceroute.json","lines_changed":1},{"name":".../osx-10.14.6/traceroute6-mult-addresses.json","lines_changed":1},{"name":"...-address.out => traceroute6-mult-addresses.out}","lines_changed":0},{"name":"tests/fixtures/osx-10.14.6/traceroute6.json","lines_changed":1},{"name":"tests/test_traceroute.py","lines_changed":78}]},"message":"add traceroute tests"},{"commit":"ab67688a00ac335d2a5603e9cadef8b565957911","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":55,"deletions":0,"files":["tests/test_traceroute.py"],"file_stats":[{"name":"tests/test_traceroute.py","lines_changed":55}]},"message":"add test skeleton"},{"commit":"5dcb7166daef3c53da65bba0d591672e64d3a90b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":169,"deletions":0,"files":["docgen.sh","docs/parsers/traceroute.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/traceroute.md","lines_changed":168}]},"message":"add traceroute doc"},{"commit":"14697b86d7fc1cfebb41e0fd2d9a9b9b60071d3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":2,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":26}]},"message":"add MIT license"},{"commit":"4f4b6276d4bf798b17d996f39742bd0428fc2f19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":38,"deletions":33,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":71}]},"message":"update docstring"},{"commit":"7bc497e1291059ae7858c9d2bd2d9a1b4c030dd1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":117,"deletions":14,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":131}]},"message":"updated process() function to set integers and floats"},{"commit":"68a37a6a5a3f0ad0fa24c84d363050af9fa11f97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":4}]},"message":"remove unused function load()"},{"commit":"6f5cd1d7c5f76d7d4da42171fdc30daf9fe3996e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]},"message":"change to use f-string"},{"commit":"126b1b121ca10183dc7e9dece83b42907becad39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":0,"files":["tests/fixtures/generic/traceroute8.out"],"file_stats":[{"name":"tests/fixtures/generic/traceroute8.out","lines_changed":10}]},"message":"add traceroute6 example"},{"commit":"2341e456a012564f86d533d2748a5887d79995e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]},"message":"use ParseError instead of generic Exception"},{"commit":"72d80e95bb50ae2a7432082e65aba15235ba0955","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":115,"deletions":8,"files":["jc/parsers/traceroute.py","tests/fixtures/generic/traceroute1.out","tests/fixtures/generic/traceroute2.out","tests/fixtures/generic/traceroute3.out","tests/fixtures/generic/traceroute4.out","tests/fixtures/generic/traceroute5.out","tests/fixtures/generic/traceroute6.out","tests/fixtures/generic/traceroute7.out"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":9},{"name":"tests/fixtures/generic/traceroute1.out","lines_changed":16},{"name":"tests/fixtures/generic/traceroute2.out","lines_changed":13},{"name":"tests/fixtures/generic/traceroute3.out","lines_changed":20},{"name":"tests/fixtures/generic/traceroute4.out","lines_changed":7},{"name":"tests/fixtures/generic/traceroute5.out","lines_changed":10},{"name":"tests/fixtures/generic/traceroute6.out","lines_changed":31},{"name":"tests/fixtures/generic/traceroute7.out","lines_changed":17}]},"message":"remove unused regex patterns"},{"commit":"f5ec82440cd1c1b5ac9011d3517298d0cdcd8766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":11}]},"message":"simplify regex patterns"},{"commit":"c8e526ead35b868733f57b4c114062a48b78a817","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":3,"files":["jc/parsers/traceroute.py","tests/fixtures/osx-10.14.6/traceroute-q.out"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":11},{"name":"tests/fixtures/osx-10.14.6/traceroute-q.out","lines_changed":4}]},"message":"fixes for bsd-style ipv6 output"},{"commit":"066adfb76479df7042bfb12bbb83b5dbd8a6d54c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":83,"deletions":7,"files":["jc/parsers/traceroute.py","tests/fixtures/centos-7.7/traceroute.out","tests/fixtures/osx-10.14.6/traceroute-asn.out",".../osx-10.14.6/traceroute-mult-addresses.out",".../fixtures/osx-10.14.6/traceroute-no-header.out",".../osx-10.14.6/traceroute6-multi-address.out","tests/fixtures/osx-10.14.6/traceroute6.out"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":30},{"name":"tests/fixtures/centos-7.7/traceroute.out","lines_changed":32},{"name":"tests/fixtures/osx-10.14.6/traceroute-asn.out","lines_changed":5},{"name":".../osx-10.14.6/traceroute-mult-addresses.out","lines_changed":5},{"name":".../fixtures/osx-10.14.6/traceroute-no-header.out","lines_changed":3},{"name":".../osx-10.14.6/traceroute6-multi-address.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/traceroute6.out","lines_changed":7}]},"message":"handle warning lines in the traceroute output"},{"commit":"5b444d4717b0b8528647e17e71d699907def3e18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":307,"deletions":0,"files":["jc/cli.py","jc/parsers/traceroute.py","tests/fixtures/osx-10.14.6/traceroute.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/traceroute.py","lines_changed":295},{"name":"tests/fixtures/osx-10.14.6/traceroute.out","lines_changed":11}]},"message":"add traceroute parser"},{"commit":"69c95adc8d59927c1c00b7e766ca5003b7b6454c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":81,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ping6-ip-dup.json","tests/fixtures/osx-10.14.6/ping6-ip-dup.out","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ping6-ip-dup.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-dup.out","lines_changed":68},{"name":"tests/test_ping.py","lines_changed":12}]},"message":"add osx ipv6 ping dup test"},{"commit":"2b0e0d8f5c1a6a5450e362971f9ad5892093b2ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":27,"deletions":0,"files":["tests/fixtures/centos-7.7/ping6-ip-dup.json","tests/fixtures/centos-7.7/ping6-ip-dup.out","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ping6-ip-dup.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-ip-dup.out","lines_changed":14},{"name":"tests/test_ping.py","lines_changed":12}]},"message":"add ipv6 dup test"},{"commit":"778d1bacbf8df523d434b22f5e1517955e4c15ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":28,"deletions":12,"files":["docs/parsers/ping.md","jc/parsers/ping.py"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":20},{"name":"jc/parsers/ping.py","lines_changed":20}]},"message":"update docs to add \"duplicates\" fields"},{"commit":"7e1b0410166c584775ebcd681a280ec7321560c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":0,"files":["tests/test_ping.py"],"file_stats":[{"name":"tests/test_ping.py","lines_changed":24}]},"message":"add duplicate replies tests"},{"commit":"313b9b329ca6b674069718839f55a4bd7834db80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":55,"insertions":55,"deletions":53,"files":["tests/fixtures/centos-7.7/ping-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping-hostname-O-p.json","tests/fixtures/centos-7.7/ping-hostname-O.json","tests/fixtures/centos-7.7/ping-ip-O-D.json","tests/fixtures/centos-7.7/ping-ip-O.json","tests/fixtures/centos-7.7/ping-ip-dup.json","tests/fixtures/centos-7.7/ping6-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping6-hostname-O-p.json","tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","tests/fixtures/centos-7.7/ping6-ip-O-p.json","tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping-hostname-O-p.json","tests/fixtures/fedora32/ping-hostname-O.json","tests/fixtures/fedora32/ping-ip-O-D.json","tests/fixtures/fedora32/ping-ip-O.json","tests/fixtures/fedora32/ping6-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping6-hostname-O-D-p.json","tests/fixtures/fedora32/ping6-hostname-O-p.json","tests/fixtures/fedora32/ping6-ip-O-D-p.json","tests/fixtures/fedora32/ping6-ip-O-p.json","tests/fixtures/freebsd12/ping-hostname-p.json","tests/fixtures/freebsd12/ping-hostname-s.json","tests/fixtures/freebsd12/ping-hostname.json","tests/fixtures/freebsd12/ping-ip-p.json","tests/fixtures/freebsd12/ping-ip-s.json","tests/fixtures/freebsd12/ping-ip.json","tests/fixtures/freebsd12/ping6-hostname-p.json","tests/fixtures/freebsd12/ping6-hostname-s.json","tests/fixtures/freebsd12/ping6-hostname.json","tests/fixtures/freebsd12/ping6-ip-p.json","tests/fixtures/freebsd12/ping6-ip-s.json","tests/fixtures/freebsd12/ping6-ip.json","tests/fixtures/osx-10.14.6/ping-hostname-p.json","tests/fixtures/osx-10.14.6/ping-hostname-s.json","tests/fixtures/osx-10.14.6/ping-hostname.json","tests/fixtures/osx-10.14.6/ping-ip-dup.json","tests/fixtures/osx-10.14.6/ping-ip-p.json","tests/fixtures/osx-10.14.6/ping-ip-s.json","tests/fixtures/osx-10.14.6/ping-ip.json","tests/fixtures/osx-10.14.6/ping6-hostname-p.json","tests/fixtures/osx-10.14.6/ping6-hostname-s.json","tests/fixtures/osx-10.14.6/ping6-hostname.json","tests/fixtures/osx-10.14.6/ping6-ip-p.json","tests/fixtures/osx-10.14.6/ping6-ip-s.json","tests/fixtures/osx-10.14.6/ping6-ip.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping-hostname-O.json","tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","tests/fixtures/ubuntu-18.04/ping-ip-O.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ping-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-hostname-O.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-ip-O-D.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-ip-O.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-ip-dup.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping6-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-hostname-O.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-ip-O-D.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-ip-O.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-ip-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-ip-O-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-hostname-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-hostname-s.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-hostname.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-ip-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-ip-s.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-ip.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-hostname-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-hostname-s.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-hostname.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-ip-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-ip-s.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-ip.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-hostname-p.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-hostname-s.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-hostname.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-ip-dup.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-p.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-ip-s.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-ip.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-p.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-s.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-p.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-s.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-ip.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json","lines_changed":2}]},"message":"update fixtures for added 'duplicate' fields"},{"commit":"6830062256fbc453f87224f7ab8c10e4494b5a83","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":112,"deletions":24,"files":["docs/parsers/ping.md","jc/parsers/ping.py","tests/fixtures/centos-7.7/ping-ip-dup.out","tests/fixtures/osx-10.14.6/ping-ip-dup.out"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":6},{"name":"jc/parsers/ping.py","lines_changed":83},{"name":"tests/fixtures/centos-7.7/ping-ip-dup.out","lines_changed":27},{"name":"tests/fixtures/osx-10.14.6/ping-ip-dup.out","lines_changed":20}]},"message":"add support for duplicate replies"},{"commit":"323072c9827c41c5d74433504b5efceb846cfe09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/ping.md","jc/parsers/ping.py"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":1},{"name":"jc/parsers/ping.py","lines_changed":1}]},"message":"add source_ip to schema doc"},{"commit":"8719d96bddec80187e7ba3286ba93bfec8465744","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"change description"},{"commit":"dd5d318ab5bbb1027dd600fd3b0b6ec9b8adfdc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":6}]},"message":"version bump and add ping command"},{"commit":"d6dc7f5e65c097895c19000e59e8803a3b350fdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":135,"deletions":29,"files":["tests/fixtures/osx-10.14.6/ping-hostname-p.json","tests/fixtures/osx-10.14.6/ping-hostname-s.json","tests/fixtures/osx-10.14.6/ping-hostname.json","tests/fixtures/osx-10.14.6/ping-ip-p.json","tests/fixtures/osx-10.14.6/ping-ip-s.json","tests/fixtures/osx-10.14.6/ping-ip.json","tests/fixtures/osx-10.14.6/ping6-hostname-p.json","tests/fixtures/osx-10.14.6/ping6-hostname-s.json","tests/fixtures/osx-10.14.6/ping6-hostname.json","tests/fixtures/osx-10.14.6/ping6-ip-p.json","tests/fixtures/osx-10.14.6/ping6-ip-s.json","tests/fixtures/osx-10.14.6/ping6-ip.json","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ping-hostname-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-hostname-s.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-hostname.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-s.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-s.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-s.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":152}]},"message":"add osx ping tests"},{"commit":"c203664eb5aafa0afa3101b79e3fd13b3e009ec5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":171,"deletions":9,"files":["tests/fixtures/freebsd12/ping-hostname-p.json","tests/fixtures/freebsd12/ping-hostname-s.json","tests/fixtures/freebsd12/ping-hostname.json","tests/fixtures/freebsd12/ping-ip-p.json","tests/fixtures/freebsd12/ping-ip-s.json","tests/fixtures/freebsd12/ping-ip.json","tests/fixtures/freebsd12/ping6-hostname-p.json","tests/fixtures/freebsd12/ping6-hostname-s.json","tests/fixtures/freebsd12/ping6-hostname.json","tests/fixtures/freebsd12/ping6-ip-p.json","tests/fixtures/freebsd12/ping6-ip-s.json","tests/fixtures/freebsd12/ping6-ip.json","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/ping-hostname-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-hostname-s.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-hostname.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-s.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-hostname-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-hostname-s.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-hostname.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-s.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":168}]},"message":"freebsd ping tests"},{"commit":"19ecf1fa19e9fa0873002baf07fa670b71ed7752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":118,"deletions":0,"files":["tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping-hostname-O-p.json","tests/fixtures/fedora32/ping-hostname-O.json","tests/fixtures/fedora32/ping-ip-O-D.json","tests/fixtures/fedora32/ping-ip-O.json",".../fixtures/fedora32/ping6-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping6-hostname-O-D-p.json","tests/fixtures/fedora32/ping6-hostname-O-p.json","tests/fixtures/fedora32/ping6-ip-O-D-p.json","tests/fixtures/fedora32/ping6-ip-O-p.json","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-hostname-O.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-ip-O-D.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-ip-O.json","lines_changed":1},{"name":".../fixtures/fedora32/ping6-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping6-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping6-ip-O-D-p.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping6-ip-O-p.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":108}]},"message":"add Fedora32 tests"},{"commit":"b8deb0426cc23333c0e0a9dc3776d9761d99abb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":119,"deletions":8,"files":[".../ubuntu-18.04/ping-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping-hostname-O.json","tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","tests/fixtures/ubuntu-18.04/ping-ip-O.json",".../ubuntu-18.04/ping6-hostname-O-D-p-s.json",".../ubuntu-18.04/ping6-hostname-O-D-p.json",".../fixtures/ubuntu-18.04/ping6-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json","tests/test_ping.py"],"file_stats":[{"name":".../ubuntu-18.04/ping-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-hostname-O-D-p-s.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-hostname-O-D-p.json","lines_changed":1},{"name":".../fixtures/ubuntu-18.04/ping6-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":117}]},"message":"add ubuntu ping tests"},{"commit":"3b8371f0208a097cb8a1c026348d3842e6702b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":202,"deletions":0,"files":[".../fixtures/centos-7.7/ping-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping-hostname-O-p.json","tests/fixtures/centos-7.7/ping-hostname-O.json","tests/fixtures/centos-7.7/ping-ip-O-D.json","tests/fixtures/centos-7.7/ping-ip-O.json",".../centos-7.7/ping6-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping6-hostname-O-p.json","tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","tests/fixtures/centos-7.7/ping6-ip-O-p.json","tests/test_ping.py"],"file_stats":[{"name":".../fixtures/centos-7.7/ping-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-hostname-O.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-ip-O-D.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-ip-O.json","lines_changed":1},{"name":".../centos-7.7/ping6-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-p.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":193}]},"message":"add centos ping tests"},{"commit":"20bb1cdf396abdb3707b34fa146cbe913f9bbd6f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":8}]},"message":"add TypeError to except for None values"},{"commit":"301daa48d0bfc28f97c8e46f028f8c6b875bf34e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":114,"deletions":16,"files":["docs/parsers/ping.md","jc/parsers/ping.py"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":128},{"name":"jc/parsers/ping.py","lines_changed":2}]},"message":"update documentation"},{"commit":"8421ec88033e02f472e4961d87551a0352663a16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":4}]},"message":"remove cygwin compatibility"},{"commit":"74211eb0129f6aa655a38ba4d4d8844d81441107","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":82,"deletions":5,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":87}]},"message":"add examples"},{"commit":"60bd42f298f309cbec6d24c9543ea3d51bd73b18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":59,"deletions":11,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":70}]},"message":"add process() logic"},{"commit":"14bdd74526e400997c5bc247ea35ed40799e83ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":100,"deletions":0,"files":["tests/fixtures/freebsd12/ping-hostname-p.out","tests/fixtures/freebsd12/ping-hostname-s.out","tests/fixtures/freebsd12/ping-hostname.out","tests/fixtures/freebsd12/ping-ip-p.out","tests/fixtures/freebsd12/ping-ip-s.out","tests/fixtures/freebsd12/ping-ip.out","tests/fixtures/freebsd12/ping6-hostname-p.out","tests/fixtures/freebsd12/ping6-hostname-s.out","tests/fixtures/freebsd12/ping6-hostname.out","tests/fixtures/freebsd12/ping6-ip-p.out","tests/fixtures/freebsd12/ping6-ip-s.out","tests/fixtures/freebsd12/ping6-ip.out"],"file_stats":[{"name":"tests/fixtures/freebsd12/ping-hostname-p.out","lines_changed":9},{"name":"tests/fixtures/freebsd12/ping-hostname-s.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping-hostname.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping-ip-p.out","lines_changed":9},{"name":"tests/fixtures/freebsd12/ping-ip-s.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping-ip.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping6-hostname-p.out","lines_changed":9},{"name":"tests/fixtures/freebsd12/ping6-hostname-s.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping6-hostname.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping6-ip-p.out","lines_changed":9},{"name":"tests/fixtures/freebsd12/ping6-ip-s.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping6-ip.out","lines_changed":8}]},"message":"add ping test fixtures"},{"commit":"fb0f3eda04a4b1dbb81da7d5791cbfe746bfd617","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["tests/fixtures/create_fixtures.sh"],"file_stats":[{"name":"tests/fixtures/create_fixtures.sh","lines_changed":16}]},"message":"add ping commands"},{"commit":"91ee6e6701307363336a39f9e16641465ddd05c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":100,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ping-hostname-p.out","tests/fixtures/osx-10.14.6/ping-hostname-s.out","tests/fixtures/osx-10.14.6/ping-hostname.out","tests/fixtures/osx-10.14.6/ping-ip-p.out","tests/fixtures/osx-10.14.6/ping-ip-s.out","tests/fixtures/osx-10.14.6/ping-ip.out","tests/fixtures/osx-10.14.6/ping6-hostname-p.out","tests/fixtures/osx-10.14.6/ping6-hostname-s.out","tests/fixtures/osx-10.14.6/ping6-hostname.out","tests/fixtures/osx-10.14.6/ping6-ip-p.out","tests/fixtures/osx-10.14.6/ping6-ip-s.out","tests/fixtures/osx-10.14.6/ping6-ip.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ping-hostname-p.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/ping-hostname-s.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping-hostname.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping-ip-p.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/ping-ip-s.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping-ip.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-p.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-s.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-p.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-s.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping6-ip.out","lines_changed":8}]},"message":"add osx ping test fixtures"},{"commit":"51f4e6927c68a7e2a26954f564d10d316b98a984","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":3,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":15}]},"message":"add support for pattern in osx/bsd"},{"commit":"94988d86674293faddc6f7e7c82575738d2dc791","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":257,"deletions":0,"files":["tests/fixtures/fedora32/ping-hostname-O-D-p-s.out","tests/fixtures/fedora32/ping-hostname-O-p.out","tests/fixtures/fedora32/ping-hostname-O.out","tests/fixtures/fedora32/ping-ip-O-D.out","tests/fixtures/fedora32/ping-ip-O.out","tests/fixtures/fedora32/ping6-hostname-O-D-p-s.out","tests/fixtures/fedora32/ping6-hostname-O-D-p.out","tests/fixtures/fedora32/ping6-hostname-O-p.out","tests/fixtures/fedora32/ping6-ip-O-D-p.out","tests/fixtures/fedora32/ping6-ip-O-p.out"],"file_stats":[{"name":"tests/fixtures/fedora32/ping-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping-hostname-O.out","lines_changed":25},{"name":"tests/fixtures/fedora32/ping-ip-O-D.out","lines_changed":25},{"name":"tests/fixtures/fedora32/ping-ip-O.out","lines_changed":25},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping6-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping6-ip-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping6-ip-O-p.out","lines_changed":26}]},"message":"add fedora ping fixtures"},{"commit":"fe36f5a98cd3ee7753e250b6553e4453d971f929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":318,"deletions":0,"files":["tests/fixtures/centos-7.7/ping-ip-O-D.out","tests/fixtures/centos-7.7/ping-ip-O.out","tests/fixtures/create_fixtures.sh",".../ubuntu-18.04/ping-hostname-O-D-p-s.out","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.out","tests/fixtures/ubuntu-18.04/ping-hostname-O.out","tests/fixtures/ubuntu-18.04/ping-ip-O-D.out","tests/fixtures/ubuntu-18.04/ping-ip-O.out",".../ubuntu-18.04/ping6-hostname-O-D-p-s.out",".../fixtures/ubuntu-18.04/ping6-hostname-O-D-p.out","tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.out","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.out","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ping-ip-O-D.out","lines_changed":25},{"name":"tests/fixtures/centos-7.7/ping-ip-O.out","lines_changed":25},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":12},{"name":".../ubuntu-18.04/ping-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O.out","lines_changed":25},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O-D.out","lines_changed":25},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O.out","lines_changed":25},{"name":".../ubuntu-18.04/ping6-hostname-O-D-p-s.out","lines_changed":26},{"name":".../fixtures/ubuntu-18.04/ping6-hostname-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-p.out","lines_changed":25}]},"message":"add fixtures for ping"},{"commit":"f9eb18b9271b2428dd82f2dc26d3fa0435dad81d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":17}]},"message":"change 'request_timeout' field to 'type', fix compatibility, other formatting fixes"},{"commit":"cc60f3674822c644933f286a0364b09d7e2a60b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":67,"deletions":1,"files":["docgen.sh","docs/parsers/ping.md","jc/cli.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ping.md","lines_changed":64},{"name":"jc/cli.py","lines_changed":3}]},"message":"add ping parser"},{"commit":"604ade791f7bd33b37f64916befba27a2ea08b5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":506,"deletions":0,"files":["jc/parsers/ping.py",".../fixtures/centos-7.7/ping-hostname-O-D-p-s.out","tests/fixtures/centos-7.7/ping-hostname-O-p.out","tests/fixtures/centos-7.7/ping-hostname-O.out",".../fixtures/centos-7.7/ping6-hostname-O-D-p-s.out","tests/fixtures/centos-7.7/ping6-hostname-O-p.out","tests/fixtures/centos-7.7/ping6-ip-O-D-p.out","tests/fixtures/centos-7.7/ping6-ip-O-p.out"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":325},{"name":".../fixtures/centos-7.7/ping-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping-hostname-O.out","lines_changed":25},{"name":".../fixtures/centos-7.7/ping6-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping6-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-p.out","lines_changed":26}]},"message":"add ping parser"},{"commit":"690ac52a917200e46eac2feafc9f504f2734301c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":261,"deletions":0,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":261}]},"message":"add man page"},{"commit":"34ed772775f1f02ed148f24a3bfff532bc811607","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"d5ab95571f64f55d8194e9e5592ac538bb535229","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":11,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":37}]},"message":"fix tests when using older versions of pygments"},{"commit":"ffb3a0ee5fb30a3f61d6cbedf877ab04acdbf624","merge":"fde0bc8 94b12b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #73 from kellyjonbrazil/dev"},{"commit":"94b12b57aaa56170d1f31f4910fd1239f88de137","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"spelling"},{"commit":"6d149e84571d5d6dd1d8a1f219ba299de5173779","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":1,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":7},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"1ad89c90d890039b817f65b2635db1b5e849a9e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add pacman"},{"commit":"fb71c7b020bc1eda9484595f30b0200a4f59aa45","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":2}]},"message":"function name spelling"},{"commit":"28ed17ad3bce866e5dc0179ef5de43380ac6ace1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":1}]},"message":"add parser_count test to test_cli_about_jc"},{"commit":"0c2a4e2bf71dca50d4a9bb27ca99944909c022ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":37}]},"message":"add cli tests"},{"commit":"62bec30de2f1a303f2ec411d89f7f9f9c6d1abaf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":0,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":20}]},"message":"add json_out tests"},{"commit":"3fced77e4e258dbf7db94a313e599c830a597b49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":98,"deletions":1,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":99}]},"message":"add set_env_colors tests"},{"commit":"a09d1d8b7687912610598c88d172733d5e29b1ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":13}]},"message":"move environment variable assignment to main() to simplify tests"},{"commit":"8f4243fbd8d70ca9fd019e984c564e37c81e07db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"formatting"},{"commit":"47aaf20549ea238443427e69d5841d6996b7afab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":17,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":17}]},"message":"add sysctl command parser"},{"commit":"0c5289ea50e4d3d35e80147b4cad32434c19a2a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":72,"deletions":2,"files":["tests/fixtures/freebsd12/sysctl-a.json","tests/fixtures/osx-10.14.6/sysctl-a.json","tests/test_sysctl.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/sysctl-a.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/sysctl-a.json","lines_changed":2},{"name":"tests/test_sysctl.py","lines_changed":70}]},"message":"add sysctl tests"},{"commit":"3e53323514906fb84abfaeed0c2ee1fd9090ad8d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":2}]},"message":"don't filter out empty lines"},{"commit":"a5ee9861b9b9b479aee59ea5b1d75f20d7c3c8e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3785,"deletions":1,"files":["tests/fixtures/freebsd12/sysctl-a.json","tests/fixtures/freebsd12/sysctl-a.out","tests/fixtures/osx-10.14.6/sysctl-a.json"],"file_stats":[{"name":"tests/fixtures/freebsd12/sysctl-a.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/sysctl-a.out","lines_changed":3783},{"name":"tests/fixtures/osx-10.14.6/sysctl-a.json","lines_changed":2}]},"message":"update fixtures"},{"commit":"feb8ca76545cba4fd0927273ddf90a77df994006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/sysctl.md"],"file_stats":[{"name":"docs/parsers/sysctl.md","lines_changed":2}]},"message":"spelling"},{"commit":"a7abe4473b90c512466db9ae98cfac585689fe2a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":2}]},"message":"spelling"},{"commit":"780b9b61dec3e142e46c9a82146d2af4e1144123","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":6}]},"message":"specify IndexError exception in try/except block"},{"commit":"19ace36ffa659bedf0ba2e43572c9e253592b2e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2167,"deletions":0,"files":["tests/fixtures/osx-10.14.6/sysctl-a.json","tests/fixtures/osx-10.14.6/sysctl-a.out","tests/fixtures/ubuntu-18.04/sysctl-a.json","tests/fixtures/ubuntu-18.04/sysctl-a.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/sysctl-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/sysctl-a.out","lines_changed":1287},{"name":"tests/fixtures/ubuntu-18.04/sysctl-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/sysctl-a.out","lines_changed":878}]},"message":"add fixtures"},{"commit":"5fff8afc9f47f8cc6db8ed3613b90b5cdc683b43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":33,"deletions":11,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":44}]},"message":"add fixes for freebsd where values can be on separate lines under the key"},{"commit":"4ad230c9279c5eb6c8ed6baf7254b8e9328e5af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":929,"deletions":14,"files":["docs/parsers/sysctl.md","jc/parsers/sysctl.py","tests/fixtures/centos-7.7/sysctl-a.json","tests/fixtures/centos-7.7/sysctl-a.out"],"file_stats":[{"name":"docs/parsers/sysctl.md","lines_changed":12},{"name":"jc/parsers/sysctl.py","lines_changed":12},{"name":"tests/fixtures/centos-7.7/sysctl-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sysctl-a.out","lines_changed":918}]},"message":"doc update and add test fixtures"},{"commit":"dd98eb1ec8f451eb87a5094e76a7f758dee3fc69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":7,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":11}]},"message":"append duplicate key values to original key instead of adding unique keys"},{"commit":"c6baf42e72b4f41ed511e7db943297d03a39c0d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":94,"deletions":7,"files":["docgen.sh","docs/parsers/sysctl.md","jc/parsers/sysctl.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/sysctl.md","lines_changed":86},{"name":"jc/parsers/sysctl.py","lines_changed":14}]},"message":"doc updates"},{"commit":"e2bac97d563e5ef771ccd8ed1e5c42cbf588b120","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":12}]},"message":"fix for multiple identical keys in sysctl output"},{"commit":"d112ee94d0ec534828c8508d0fb833b768975990","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":4,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":12}]},"message":"use try/except and add support for floats in process()"},{"commit":"27b21b2fafab912f21b88b66c7f817cbce155765","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":7,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":15}]},"message":"formatting and docstring updates"},{"commit":"8c96d5cd20448a4f7f9736c4d489d6ecc3068ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["requirements.txt"],"file_stats":[{"name":"requirements.txt","lines_changed":2}]},"message":"reduce pygments version requirement"},{"commit":"c29ed3fd695f725005333db5e6e2cd844bb4ca14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":13,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":27}]},"message":"formatting of quotation marks and docstrings"},{"commit":"cedf603f121636bdfa95432059c3c275c3ea3e9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]},"message":"minor formatting"},{"commit":"279161c36f288c27a9789054ae372fe8ceb58a94","merge":"bc7116c ce0b43d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #72 from duelafn/pygments-2.3"},{"commit":"ce0b43d919f07d96d1b94e9d14d03e935e80011d","author":"Dean Serenevy","author_email":"dean@serenevy.net","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"Remove dependency on 3rd party packaging library"},{"commit":"ddafa5bf06066bab8e9587be902d6752fcf51605","author":"Dean Serenevy","author_email":"dean@serenevy.net","stats":{"files_changed":2,"insertions":47,"deletions":7,"files":["jc/cli.py","setup.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":52},{"name":"setup.py","lines_changed":2}]},"message":"Support older pygments"},{"commit":"bc7116c31bacf3159aef775fd0e615187420b010","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":8,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":15}]},"message":"fix JC_COLORS env bug and simplify set_env_colors()"},{"commit":"53b709272115e769dac905296fa3b000c1cdd66a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":11,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":22}]},"message":"remove side-effects from functions and print in main()"},{"commit":"beb9174b1b35937ae1fb99778369ae643a8f1005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":123,"deletions":0,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":123}]},"message":"add sysctl parser"},{"commit":"aea41ed341c8d53cc07c35e8044e8f816ddd2fed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":11}]},"message":"move verbose_debug enable earlier in code to catch more issues. add sysctl and version bump"},{"commit":"d789494cb1f691aa352419aaefc692f654477177","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/tracebackplus.py"],"file_stats":[{"name":"jc/tracebackplus.py","lines_changed":2}]},"message":"change type check to use isinstance"},{"commit":"608e7b4cff081f92177e4151ffa1a91a4a6895ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":61,"deletions":0,"files":["jc/tracebackplus.py"],"file_stats":[{"name":"jc/tracebackplus.py","lines_changed":61}]},"message":"add license info"},{"commit":"4ee199c02a78c2707c5d1427d7c8fae56df5671c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":189,"deletions":3,"files":["jc/cli.py","jc/tracebackplus.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6},{"name":"jc/tracebackplus.py","lines_changed":186}]},"message":"use tracebackplus instead of cgitb since cgitb is depricated"},{"commit":"fbf47d408501dadda4671fb530f5e11859e85d53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add arch linux"},{"commit":"5a238e4b4204f0552327534ef798c28d3ad4f578","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"remove updates-testing from fedora command"},{"commit":"f852b8246a8f9e5f7d9144fed3a0daa4eddfe035","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":3}]},"message":"wrap warning message"},{"commit":"88140d929a500ee78f807862c4912c399df2a460","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"wrap error message in code"},{"commit":"45f726824027af49c437b6e81e4700f7098af320","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add -dd to error message"},{"commit":"3a3c8e4d4a77135eaee5cb30c3107a4531c300ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]},"message":"move verbose_debug under debug check"},{"commit":"c1ac183a0472e93226c9ee1905f56c5183e3721f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":15,"deletions":22,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":37}]},"message":"simplify debug option"},{"commit":"18bb779ee5cd5821764b03173f16e922f753c64d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"formatting: double quotes to single quotes"},{"commit":"8b6612fe7911ab9e0bf8d29be60865d3b8aa3fd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"move JC_COLORS parsing error message"},{"commit":"fde0bc853415418e01616861ace5048770bd97f8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":34,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":43}]},"message":"improve package install info"},{"commit":"e661a78939ff067b8a61f08301c178dd10a344ab","merge":"b969751 847e346","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #71 from wigust/guix"},{"commit":"847e346602789bf58e3515319e9d080dfb897fc9","author":"Oleg Pykhalov","author_email":"go.wigust@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"add guix package info"},{"commit":"b9697516887c61f08d8d7b1dc9130350e5bdba9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"add other references"},{"commit":"ad6f2ba03a293a7f55e456fa5f5b55ee3cbcd4ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"63c6a5edc0e9001b143595fd8b96f1b4a1377a3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"formatting"},{"commit":"9f4cf9dd5efe94adfff0961fdb73097ca27c5463","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":197,"deletions":67,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":264}]},"message":"formatting"},{"commit":"51331b6dc01eee00847fa4be549ffde365373a01","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":5}]},"message":"formatting"},{"commit":"efb6761033319644bf9cdae6288ff5609f6482ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"6a4f737a0f1c322bebccf69809d9816fc770c5ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":88,"deletions":115,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":203}]},"message":"update json syntax highlighting"},{"commit":"be6864b778ab721bcba5fc3221576153be7b2ed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":26,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":52}]},"message":"add syntax highlighting tags"},{"commit":"de3b91a36cfcaf565b26b1da42f1e87835da4dc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add -dd option"},{"commit":"ef5482c3b5afa0ee8e85851bebab1c104cb59936","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":15,"deletions":7,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":17},{"name":"setup.py","lines_changed":2}]},"message":"add verbose debug option"},{"commit":"d20b795137036f8b889eb231cb4f14b756ec6479","merge":"69018cd 8a13406","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #70 from kellyjonbrazil/dev"},{"commit":"8a134065dff429551449c1ea16a36d745fdab580","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":12,"deletions":12,"files":["tests/fixtures/centos-7.7/iptables-filter-line-numbers.json","tests/fixtures/centos-7.7/iptables-filter-nv.json","tests/fixtures/centos-7.7/iptables-filter.json","tests/fixtures/centos-7.7/iptables-mangle.json","tests/fixtures/centos-7.7/iptables-nat.json","tests/fixtures/centos-7.7/iptables-raw.json","tests/fixtures/ubuntu-18.04/iptables-filter-line-numbers.json","tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","tests/fixtures/ubuntu-18.04/iptables-filter.json","tests/fixtures/ubuntu-18.04/iptables-mangle.json","tests/fixtures/ubuntu-18.04/iptables-nat.json","tests/fixtures/ubuntu-18.04/iptables-raw.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/iptables-filter-line-numbers.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-filter-nv.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-filter.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-mangle.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-nat.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-raw.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter-line-numbers.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-mangle.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-nat.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-raw.json","lines_changed":2}]},"message":"update fixtures for last chain fix"},{"commit":"22aee1bfa40ed1d3c4df28cd934ef0edfc5c458c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"b282820fd67dcc96c058198f97b066e7b402d1f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":3}]},"message":"fix to include the final chain in output"},{"commit":"3ee098306daf903687cb0febf92773a81e216111","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":2}]},"message":"version bump"},{"commit":"09e8f379a64b3b37bb99b4291c10aa4a5cdedea4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":11,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":20}]},"message":"iptables code optimizations"},{"commit":"69018cdb3a77fcdcb5648e3b89933148c55a6412","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"fix date"},{"commit":"d0d7254c6acc7be4341618d231a5b166f640b287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":26,"deletions":0,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":15},{"name":"jc/utils.py","lines_changed":11}]},"message":"add docstring"},{"commit":"cc0f0971d76b6f3dec8d989e83f5676db8f2c6d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":56,"insertions":476,"deletions":439,"files":["changelog.txt","jc/cli.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/utils.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":10},{"name":"jc/parsers/airport_s.py","lines_changed":4},{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/blkid.py","lines_changed":5},{"name":"jc/parsers/crontab.py","lines_changed":5},{"name":"jc/parsers/crontab_u.py","lines_changed":5},{"name":"jc/parsers/csv.py","lines_changed":5},{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":193},{"name":"jc/parsers/dmidecode.py","lines_changed":264},{"name":"jc/parsers/du.py","lines_changed":8},{"name":"jc/parsers/env.py","lines_changed":8},{"name":"jc/parsers/file.py","lines_changed":39},{"name":"jc/parsers/foo.py","lines_changed":8},{"name":"jc/parsers/free.py","lines_changed":5},{"name":"jc/parsers/fstab.py","lines_changed":5},{"name":"jc/parsers/group.py","lines_changed":5},{"name":"jc/parsers/gshadow.py","lines_changed":5},{"name":"jc/parsers/history.py","lines_changed":26},{"name":"jc/parsers/hosts.py","lines_changed":8},{"name":"jc/parsers/id.py","lines_changed":8},{"name":"jc/parsers/ifconfig.py","lines_changed":18},{"name":"jc/parsers/ini.py","lines_changed":5},{"name":"jc/parsers/iptables.py","lines_changed":44},{"name":"jc/parsers/jobs.py","lines_changed":8},{"name":"jc/parsers/last.py","lines_changed":8},{"name":"jc/parsers/ls.py","lines_changed":5},{"name":"jc/parsers/lsblk.py","lines_changed":8},{"name":"jc/parsers/lsmod.py","lines_changed":5},{"name":"jc/parsers/lsof.py","lines_changed":9},{"name":"jc/parsers/mount.py","lines_changed":9},{"name":"jc/parsers/netstat.py","lines_changed":8},{"name":"jc/parsers/ntpq.py","lines_changed":5},{"name":"jc/parsers/passwd.py","lines_changed":8},{"name":"jc/parsers/pip_list.py","lines_changed":9},{"name":"jc/parsers/pip_show.py","lines_changed":9},{"name":"jc/parsers/ps.py","lines_changed":6},{"name":"jc/parsers/route.py","lines_changed":6},{"name":"jc/parsers/shadow.py","lines_changed":8},{"name":"jc/parsers/ss.py","lines_changed":8},{"name":"jc/parsers/stat.py","lines_changed":7},{"name":"jc/parsers/systemctl.py","lines_changed":8},{"name":"jc/parsers/systemctl_lj.py","lines_changed":8},{"name":"jc/parsers/systemctl_ls.py","lines_changed":8},{"name":"jc/parsers/systemctl_luf.py","lines_changed":8},{"name":"jc/parsers/timedatectl.py","lines_changed":14},{"name":"jc/parsers/uname.py","lines_changed":6},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/w.py","lines_changed":5},{"name":"jc/parsers/who.py","lines_changed":8},{"name":"jc/parsers/xml.py","lines_changed":5},{"name":"jc/parsers/yaml.py","lines_changed":11},{"name":"jc/utils.py","lines_changed":4},{"name":"setup.py","lines_changed":2}]},"message":"Improve and standardize empty data check for all parsers"},{"commit":"2af61730f0f5b9bc6f1f4c5d9d808ff6ccb0faeb","merge":"07b179c 83f41b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #68 from kellyjonbrazil/dev"},{"commit":"83f41b83dc01c462c6a2295e9fc56ad42a3b62f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"1fb84fce88e0306c26a5771fa4c6dc14a21409a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":16,"insertions":137,"deletions":67,"files":["changelog.txt","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/xml.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py","tests/test_timedatectl.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py","tests/test_who.py","tests/test_xml.py","tests/test_yaml.py"],"file_stats":[{"name":"changelog.txt","lines_changed":5},{"name":"jc/parsers/systemctl_lj.py","lines_changed":3},{"name":"jc/parsers/systemctl_ls.py","lines_changed":33},{"name":"jc/parsers/systemctl_luf.py","lines_changed":35},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/w.py","lines_changed":63},{"name":"jc/parsers/xml.py","lines_changed":6},{"name":"tests/test_systemctl_ls.py","lines_changed":6},{"name":"tests/test_systemctl_luf.py","lines_changed":6},{"name":"tests/test_timedatectl.py","lines_changed":6},{"name":"tests/test_uname.py","lines_changed":6},{"name":"tests/test_uptime.py","lines_changed":6},{"name":"tests/test_w.py","lines_changed":6},{"name":"tests/test_who.py","lines_changed":6},{"name":"tests/test_xml.py","lines_changed":6},{"name":"tests/test_yaml.py","lines_changed":6}]},"message":"fix for no data"},{"commit":"a8837e12447c52dbe438b19c07777b9b4a22081c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"remove --upgrade from pip install"},{"commit":"04d2eec5581998d1a80e762b670af76c92111065","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":56,"deletions":30,"files":["changelog.txt","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","tests/test_stat.py","tests/test_systemctl.py","tests/test_systemctl_lj.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":33},{"name":"jc/parsers/systemctl_lj.py","lines_changed":33},{"name":"tests/test_stat.py","lines_changed":6},{"name":"tests/test_systemctl.py","lines_changed":6},{"name":"tests/test_systemctl_lj.py","lines_changed":6}]},"message":"fix for no data"},{"commit":"1b57ec92f052ddc8959540511512190a539262b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":152,"deletions":68,"files":["changelog.txt","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/pip_list.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","tests/fixtures/centos-7.7/ss-sudo-a.json","tests/fixtures/ubuntu-18.04/ss-sudo-a.json","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_ntpq.py","tests/test_passwd.py","tests/test_pip_list.py","tests/test_pip_show.py","tests/test_ps.py","tests/test_route.py","tests/test_shadow.py","tests/test_ss.py"],"file_stats":[{"name":"changelog.txt","lines_changed":8},{"name":"jc/parsers/mount.py","lines_changed":3},{"name":"jc/parsers/netstat.py","lines_changed":41},{"name":"jc/parsers/ntpq.py","lines_changed":35},{"name":"jc/parsers/pip_list.py","lines_changed":31},{"name":"jc/parsers/ps.py","lines_changed":9},{"name":"jc/parsers/route.py","lines_changed":9},{"name":"jc/parsers/ss.py","lines_changed":14},{"name":"tests/fixtures/centos-7.7/ss-sudo-a.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ss-sudo-a.json","lines_changed":2},{"name":"tests/test_lsof.py","lines_changed":6},{"name":"tests/test_mount.py","lines_changed":6},{"name":"tests/test_netstat.py","lines_changed":6},{"name":"tests/test_ntpq.py","lines_changed":6},{"name":"tests/test_passwd.py","lines_changed":6},{"name":"tests/test_pip_list.py","lines_changed":6},{"name":"tests/test_pip_show.py","lines_changed":6},{"name":"tests/test_ps.py","lines_changed":6},{"name":"tests/test_route.py","lines_changed":6},{"name":"tests/test_shadow.py","lines_changed":6},{"name":"tests/test_ss.py","lines_changed":6}]},"message":"fix for no data"},{"commit":"4d8859540417e99e273fda2cea959240f3c37ea3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":2}]},"message":"enhance empty data check"},{"commit":"52b1272a3aab09b5a8c4a277fbf9975a1b8b6921","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":2}]},"message":"enhance empty data check"},{"commit":"d2ccad6a83138fbf6eb863634fd354dc6c3fa238","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":33,"deletions":15,"files":["jc/parsers/lsblk.py","jc/parsers/lsmod.py","tests/test_lsblk.py","tests/test_lsmod.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":21},{"name":"jc/parsers/lsmod.py","lines_changed":15},{"name":"tests/test_lsblk.py","lines_changed":6},{"name":"tests/test_lsmod.py","lines_changed":6}]},"message":"fix for no data"},{"commit":"cad6dde4ac66cf970a7f52d8e7958ea35c083629","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":60,"deletions":0,"files":["tests/test_group.py","tests/test_gshadow.py","tests/test_history.py","tests/test_hosts.py","tests/test_id.py","tests/test_ifconfig.py","tests/test_ini.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_last.py"],"file_stats":[{"name":"tests/test_group.py","lines_changed":6},{"name":"tests/test_gshadow.py","lines_changed":6},{"name":"tests/test_history.py","lines_changed":6},{"name":"tests/test_hosts.py","lines_changed":6},{"name":"tests/test_id.py","lines_changed":6},{"name":"tests/test_ifconfig.py","lines_changed":6},{"name":"tests/test_ini.py","lines_changed":6},{"name":"tests/test_iptables.py","lines_changed":6},{"name":"tests/test_jobs.py","lines_changed":6},{"name":"tests/test_last.py","lines_changed":6}]},"message":"fix for no data"},{"commit":"06811c3539b0d871e13e9b8d3b51f731d06fd2ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_fstab.py"],"file_stats":[{"name":"tests/test_fstab.py","lines_changed":6}]},"message":"add test for no data"},{"commit":"0cb23c2b21f464082609409261de8e95eb1b0d55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":17,"deletions":7,"files":["changelog.txt","jc/parsers/free.py","tests/test_free.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/free.py","lines_changed":17},{"name":"tests/test_free.py","lines_changed":6}]},"message":"add fix for no data"},{"commit":"ac4688dca22334385ec2c87027f2f14f9ca93ce4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_file.py"],"file_stats":[{"name":"tests/test_file.py","lines_changed":6}]},"message":"add test for no data"},{"commit":"326c3b4670a0e47cbe2988b38fb1c1b26a4db890","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_env.py"],"file_stats":[{"name":"tests/test_env.py","lines_changed":6}]},"message":"add test for no data"},{"commit":"9b29d0c2688eda2e4707aeba693ed14fa433a706","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_du.py"],"file_stats":[{"name":"tests/test_du.py","lines_changed":6}]},"message":"add test for no data"},{"commit":"e0013c38710b4ecf3a588a16d1d908effc23b485","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["tests/test_dmidecode.py"],"file_stats":[{"name":"tests/test_dmidecode.py","lines_changed":5}]},"message":"add test for no data"},{"commit":"a75744075b0628bdb711d8a929a759b4b4067edb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_dig.py"],"file_stats":[{"name":"tests/test_dig.py","lines_changed":6}]},"message":"add no data test"},{"commit":"525aec1a02380f17ab7827434616f981f7457bd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":16,"deletions":7,"files":["changelog.txt","jc/parsers/df.py","tests/test_df.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":16},{"name":"tests/test_df.py","lines_changed":6}]},"message":"fix for no data"},{"commit":"0bf9a7a072a80e10a29c6bb3943b107352dc1d45","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_csv.py"],"file_stats":[{"name":"tests/test_csv.py","lines_changed":6}]},"message":"add test for no data"},{"commit":"d8f2f4c95bc699386b9fe93d10e13637875a1dcf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":96,"deletions":80,"files":["changelog.txt","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/test_crontab.py","tests/test_crontab_u.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":79},{"name":"jc/parsers/crontab_u.py","lines_changed":83},{"name":"tests/test_crontab.py","lines_changed":6},{"name":"tests/test_crontab_u.py","lines_changed":6}]},"message":"fix for no data"},{"commit":"35d733b44f3705bed3dd8ce340379470f199f772","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":70,"deletions":60,"files":["changelog.txt","jc/parsers/arp.py","jc/parsers/blkid.py","tests/test_arp.py","tests/test_blkid.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":112},{"name":"jc/parsers/blkid.py","lines_changed":4},{"name":"tests/test_arp.py","lines_changed":6},{"name":"tests/test_blkid.py","lines_changed":6}]},"message":"fix for no data"},{"commit":"9179b4175c5063bed14ecb96ba24c517920c0d94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":16,"deletions":0,"files":["changelog.txt","tests/test_airport.py","tests/test_airport_s.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"tests/test_airport.py","lines_changed":6},{"name":"tests/test_airport_s.py","lines_changed":6}]},"message":"add nodata tests"},{"commit":"bb07d78c78ff5c5b2ee4d2086ffc6dd5ebedf0fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":8,"files":["jc/parsers/airport_s.py"],"file_stats":[{"name":"jc/parsers/airport_s.py","lines_changed":18}]},"message":"add nodata fix"},{"commit":"07b179cd7f8853ff6aca0b27a703e198c158ca72","merge":"12a80e7 054422d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #67 from kellyjonbrazil/Dev"},{"commit":"054422d8373e7b8def18ddabd447062cb9cc3137","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_ls.py"],"file_stats":[{"name":"tests/test_ls.py","lines_changed":6}]},"message":"add test for empty directory"},{"commit":"3e052d18102e98a09cbba21866855691eaccc216","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"c8e72805cf9def478b56c925f4afcc0ece1daac0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":10,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":19}]},"message":"fix error on empty directory"},{"commit":"12a80e7db0f6c7d536674ad8d34e26bba9a1f1f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":12}]},"message":"add fedora package info"},{"commit":"ee7ff9a09d3373f60ae1645376ccc0057803147e","merge":"346a14c f6478fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #66 from kellyjonbrazil/dev"},{"commit":"f6478fb636ead8d1e53e4a88d59e55222df37a8f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"811a0b0495819925199d70db266066197cc6824e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add info regarding the local parser plugin files"},{"commit":"aeb48edf727f23cc4f8fd9b760cfb69f03098278","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"use $LOCALAPPDATA variable for windows"},{"commit":"b1e94f0df7041bcae97455508f423178aef9d61d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"heading formatting"},{"commit":"60050e3c0fe34980f7db5b8bd46430f953f0c3a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":26}]},"message":"fix linux/unix directory and add note about the XDG specification followed"},{"commit":"39ef09aa5b0d43b5128299511afe80336aa38203","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add local parser plugin feature"},{"commit":"8377d4311611c242e16eaebe66dafac9529150d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"54e4c447ab34ae54c73c92df40f1b4ca6ffb2277","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":10}]},"message":"clean up formatting"},{"commit":"937a9fa9cf2ede8e686ba853989f33e4a483a0ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":613,"deletions":3,"files":["jc/appdirs.py","jc/cli.py","requirements.txt","setup.py"],"file_stats":[{"name":"jc/appdirs.py","lines_changed":611},{"name":"jc/cli.py","lines_changed":3},{"name":"requirements.txt","lines_changed":1},{"name":"setup.py","lines_changed":1}]},"message":"vendorize appdirs module"},{"commit":"808ff6cf0e784cf0c2d523ff2e01197cb6e88c82","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":12}]},"message":"more acknowledgments updates"},{"commit":"7f5c649a95a871c3cd8d48731a6d26dcba6f725b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update acknowledgments"},{"commit":"b72727dec995de1ca5f68ee17a710b086c87d612","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":11}]},"message":"update custom parsers info"},{"commit":"3fc88bfb334143b68a9cb78d4034f33e7c0bcf76","merge":"346a14c 9f2279d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #65 from duelafn/local-parsers"},{"commit":"9f2279d5867eb89d4b4b7b4ffca290166ec97c48","author":"Dean Serenevy","author_email":"dean@serenevy.net","stats":{"files_changed":4,"insertions":29,"deletions":2,"files":["README.md","jc/cli.py","requirements.txt","setup.py"],"file_stats":[{"name":"README.md","lines_changed":7},{"name":"jc/cli.py","lines_changed":22},{"name":"requirements.txt","lines_changed":1},{"name":"setup.py","lines_changed":1}]},"message":"Load custom parsers from /jc/jcparsers"},{"commit":"346a14cb9bb0d762fc3fa366ad97e5ff85f3992a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"change osx_device to unix_device"},{"commit":"dac00d17ff9f3d2bb959697b6e567015bfc2702b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":17,"deletions":0,"files":["tests/fixtures/nixos/route-ee.json","tests/fixtures/nixos/route-ee.out","tests/test_route.py"],"file_stats":[{"name":"tests/fixtures/nixos/route-ee.json","lines_changed":1},{"name":"tests/fixtures/nixos/route-ee.out","lines_changed":4},{"name":"tests/test_route.py","lines_changed":12}]},"message":"add nixos test"},{"commit":"9ca7cd40601b97829e8f88071fdfb928d939f7e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":17,"deletions":34,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":51}]},"message":"update docs"},{"commit":"aa31628970b12295a41dff20e829fcce9f8a4d07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":70,"deletions":63,"files":["README.md","docs/parsers/netstat.md","docs/parsers/route.md","docs/parsers/stat.md","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":46},{"name":"docs/parsers/netstat.md","lines_changed":16},{"name":"docs/parsers/route.md","lines_changed":51},{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":16}]},"message":"update docs"},{"commit":"bed694fcf5c8c31bbd4f3e88759fe7ab82382d24","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"4b4af69fa184896ec15b5be7dc8416f36f921d5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"fix date"},{"commit":"9d96190a5b19e8d71c3ac66eb0303d269dd4ce5d","merge":"96df396 fa44d48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #64 from kellyjonbrazil/dev"},{"commit":"fa44d48c094a55e499c2c780d109bf277736b42e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":129,"deletions":7,"files":["changelog.txt","jc/parsers/stat.py","tests/fixtures/freebsd12/stat.json","tests/fixtures/freebsd12/stat.out","tests/fixtures/osx-10.14.6/stat.json","tests/test_stat.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":12},{"name":"tests/fixtures/freebsd12/stat.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/stat.out","lines_changed":107},{"name":"tests/fixtures/osx-10.14.6/stat.json","lines_changed":2},{"name":"tests/test_stat.py","lines_changed":12}]},"message":"freebsd fixes, tests, and fixtures"},{"commit":"4ef961c2788c935b1fea1c9777b976e7b89e7367","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":20,"deletions":0,"files":["tests/fixtures/freebsd12/ntpq-p.json","tests/fixtures/freebsd12/ntpq-p.out","tests/test_ntpq.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/ntpq-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ntpq-p.out","lines_changed":7},{"name":"tests/test_ntpq.py","lines_changed":12}]},"message":"add freebsd test and fixtures"},{"commit":"292a837d5c47165ccb155f079b0a114b5c17a98e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":22,"deletions":0,"files":["tests/fixtures/freebsd12/last.json","tests/fixtures/freebsd12/last.out","tests/test_last.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/last.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/last.out","lines_changed":9},{"name":"tests/test_last.py","lines_changed":12}]},"message":"add tests and fixtures for freebsd12"},{"commit":"aa7b915d847dbd29d2c09b2cc40b847e37174ffb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":2}]},"message":"version bump"},{"commit":"c46fe73236b912d2ee89dfb36ff259fe95fd0479","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"add last fixes for freebsd"},{"commit":"039b2c129cbe79d2d23b1194b043d8b730609956","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":1,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":11}]},"message":"freebsd fixes"},{"commit":"8f2e5e4808b30c658a4cb87125639e4d7d6c15d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"fix compatible logic"},{"commit":"c4da8e4f78e6b4aaa4aff76ae042be9aaec832a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":12}]},"message":"add nixos and freebsd to tested. update new arp fields"},{"commit":"bcab9078a4c2bfd6ae4dca9448b577d9ed0fc01c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"add w parser fix"},{"commit":"b3c6c1ea925bf7cd76368f5074fb8af52a844522","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":29,"deletions":5,"files":["jc/parsers/w.py","tests/fixtures/nixos/w.json","tests/fixtures/nixos/w.out","tests/test_w.py"],"file_stats":[{"name":"jc/parsers/w.py","lines_changed":8},{"name":"tests/fixtures/nixos/w.json","lines_changed":1},{"name":"tests/fixtures/nixos/w.out","lines_changed":5},{"name":"tests/test_w.py","lines_changed":20}]},"message":"strip whitespace in string fields and add tests"},{"commit":"a3af8662bd491e344c93d24afabd23e90efd8086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":205,"deletions":3,"files":["tests/fixtures/osx-10.11.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a2.json"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/arp-a.json","lines_changed":107},{"name":"tests/fixtures/osx-10.14.6/arp-a.json","lines_changed":99},{"name":"tests/fixtures/osx-10.14.6/arp-a2.json","lines_changed":2}]},"message":"add permanent field"},{"commit":"35940d0bc80bf61b11f40b1e1043835f26eb391c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":59,"deletions":4,"files":["changelog.txt","docs/parsers/arp.md","jc/parsers/arp.py","tests/fixtures/freebsd12/arp-a.json","tests/fixtures/freebsd12/arp-a.out","tests/test_arp.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":12},{"name":"jc/parsers/arp.py","lines_changed":33},{"name":"tests/fixtures/freebsd12/arp-a.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/arp-a.out","lines_changed":3},{"name":"tests/test_arp.py","lines_changed":12}]},"message":"add freebsd permanent and expires fields"},{"commit":"26994cdcb7148d2c9d1701bca9541d247356260b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":115,"deletions":85,"files":["docs/parsers/df.md","docs/parsers/fstab.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/route.md","docs/parsers/stat.md","docs/parsers/uname.md"],"file_stats":[{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":163},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":25},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2}]},"message":"add freebsd compatibility info"},{"commit":"017159a829691cb6a7174f123d024eb252179b75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":15,"insertions":221,"deletions":0,"files":["tests/fixtures/freebsd12/netstat-Aa.json","tests/fixtures/freebsd12/netstat-AaT.json","tests/fixtures/freebsd12/netstat-AaT.out","tests/fixtures/freebsd12/netstat-AanP.json","tests/fixtures/freebsd12/netstat-AanP.out","tests/fixtures/freebsd12/netstat-Aax.json","tests/fixtures/freebsd12/netstat-Aax.out","tests/fixtures/freebsd12/netstat-aT.json","tests/fixtures/freebsd12/netstat-aT.out","tests/fixtures/freebsd12/netstat-an.json","tests/fixtures/freebsd12/netstat-i.json","tests/fixtures/freebsd12/netstat-ib.json","tests/fixtures/freebsd12/netstat-ib.out","tests/fixtures/freebsd12/netstat-r.json","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/netstat-Aa.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-AaT.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-AaT.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-AanP.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-AanP.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-Aax.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-Aax.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-aT.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-aT.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-an.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-i.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-ib.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-ib.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/netstat-r.json","lines_changed":1},{"name":"tests/test_netstat.py","lines_changed":108}]},"message":"add freebsd nestat tests and fixtures"},{"commit":"b4e9c85e08d199dad67f03c7603194278a022696","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":0,"files":["jc/parsers/netstat_freebsd_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_freebsd_osx.py","lines_changed":12}]},"message":"fixup -T freebsd output and add whitespace stripping to parse_post"},{"commit":"189146cd84cfad262f2b2601bb0cb4b9dde2587e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":10}]},"message":"add more ints. remove whitespace strip code and move to freebsd_osx module"},{"commit":"af34153ffab10ca1ad7f44736d379d91ae43c813","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["changelog.txt","jc/cli.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2}]},"message":"version bump"},{"commit":"bf2ff3ffbb639446779b1f04f2997707d99c0a1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":9}]},"message":"fix compatibility search for platform names that append the version number (e.g. freebsd12)"},{"commit":"6423c9efd69e938af38934a97ca6b65009e8f07e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":34,"deletions":5,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":39}]},"message":"integer and float updates"},{"commit":"58ab0d4ece7f006ce9431afb9e0fecbe60930be7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":12,"deletions":4,"files":["changelog.txt","jc/parsers/netstat.py","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":11},{"name":"tests/fixtures/osx-10.14.6/netstat-An.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat.json","lines_changed":2}]},"message":"strip whitespace from string fields"},{"commit":"83a738bf4d756036d6269b9153220d7f1018ac9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/netstat-Abn.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-An.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat.json","lines_changed":2}]},"message":"update fixtures for osx_flags and osx_inode name change to unix_flags and unix_inode"},{"commit":"3640671fc6a67c9628fd47e19e9fe0a0738439ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/{netstat_osx.py => netstat_freebsd_osx.py}"],"file_stats":[{"name":"jc/parsers/{netstat_osx.py => netstat_freebsd_osx.py}","lines_changed":10}]},"message":"rename module"},{"commit":"1da623b30ef6f9b12ac231518d2d4e7dadcf717b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":9}]},"message":"add items"},{"commit":"b10ca64646e93d9797182ea046f4956a17b37627","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":71,"deletions":71,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":142}]},"message":"change osx_inode and osx_flags to unix_inode and unix_flags. Also rename netstat_osx module to netstat_freebsd_osx"},{"commit":"2128763ee67a07da6ebf123abeec39794bc1f4e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":12,"files":["tests/test_netstat.py"],"file_stats":[{"name":"tests/test_netstat.py","lines_changed":24}]},"message":"fix osx version from 16.4 to 14.6"},{"commit":"a27e7ed39c63c04cfa78caceaada42f7a9496a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":12,"deletions":12,"files":["tests/fixtures/centos-7.7/netstat-r.json","tests/fixtures/centos-7.7/netstat-rne.json","tests/fixtures/centos-7.7/netstat-rnee.json","tests/fixtures/centos-7.7/route-vn.json","tests/fixtures/centos-7.7/route.json","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-rnl.json","tests/fixtures/ubuntu-18.04/netstat-r.json","tests/fixtures/ubuntu-18.04/netstat-rne.json","tests/fixtures/ubuntu-18.04/netstat-rnee.json","tests/fixtures/ubuntu-18.04/route-vn.json","tests/fixtures/ubuntu-18.04/route.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/netstat-r.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/netstat-rne.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/netstat-rnee.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/route-vn.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/route.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-r.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-rnl.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/netstat-r.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/netstat-rne.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/netstat-rnee.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/route-vn.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/route.json","lines_changed":2}]},"message":"test updates for added route_flags_pretty and flags_pretty fields"},{"commit":"f07b7eaa474eb87dbdbc7fbe41b9386feff7bee2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":38,"deletions":12,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":50}]},"message":"add flags_pretty"},{"commit":"6ce18de84ce16a926f9cd97c3210ef209c3352da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":130,"deletions":69,"files":["jc/parsers/netstat.py","jc/parsers/netstat_linux.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":139},{"name":"jc/parsers/netstat_linux.py","lines_changed":23},{"name":"jc/parsers/netstat_osx.py","lines_changed":37}]},"message":"add route_flags_pretty"},{"commit":"8631b756e7ab8cd71c2a3eb288e2d1823cec5782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":76,"deletions":0,"files":["tests/fixtures/freebsd12/netstat-Aa.out","tests/fixtures/freebsd12/netstat-an.out","tests/fixtures/freebsd12/netstat-i.out","tests/fixtures/freebsd12/netstat-r.out"],"file_stats":[{"name":"tests/fixtures/freebsd12/netstat-Aa.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-an.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-i.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/netstat-r.out","lines_changed":20}]},"message":"add freebsd test files"},{"commit":"7414d984125300164a5b6156d7a80128d4d6cb15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":18,"deletions":18,"files":["jc/parsers/df.py","jc/parsers/fstab.py","jc/parsers/mount.py","jc/parsers/ntpq.py","jc/parsers/stat.py","jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":6},{"name":"jc/parsers/fstab.py","lines_changed":6},{"name":"jc/parsers/mount.py","lines_changed":6},{"name":"jc/parsers/ntpq.py","lines_changed":6},{"name":"jc/parsers/stat.py","lines_changed":6},{"name":"jc/parsers/uname.py","lines_changed":6}]},"message":"add freebsd compatibility"},{"commit":"d7b19892e8fb11e17fcbadcdbb08d49897d7754f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":10,"deletions":7,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":13},{"name":"jc/parsers/netstat_osx.py","lines_changed":4}]},"message":"add freebsd support for netstat -i"},{"commit":"96df396eaf4e030113005a95e525d644c394dfe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"2f6f640317da5af894f34f187c4243ef0c599d07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"spelling"},{"commit":"c4a0a50f3a3ac5833ab5d2f8a0cb3f18da335812","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"add nix-env"},{"commit":"658f8a3842273cea049689b3aea15d89a7294b24","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":13}]},"message":"add zypper and ports info"},{"commit":"bfb876a1e394ff63c6773965ba0b65da4e109c1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"formatting"},{"commit":"90c34b1f4ee2d9ec8125346bb90b227f76ada2ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"fix dmidecode example"},{"commit":"3f9164ea77ec41e1b0671d0a642900d8e36faf9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"bold formatting"},{"commit":"7fd6fecbf5a08b1f13aa7e906e94be9bc126780a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"8029f72363a4d19938df07603f03a0147f6246a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":10,"deletions":7,"files":["changelog.txt","docs/parsers/stat.md","jc/cli.py","jc/parsers/stat.py","setup.py","tests/fixtures/osx-10.14.6/stat.json"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":6},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/stat.json","lines_changed":2}]},"message":"change osx_flags from integer to string"},{"commit":"c7fdce5d3b7566a7d290627767c47d9c196e02ad","merge":"f5627a4 84f48aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #62 from kellyjonbrazil/dev"},{"commit":"84f48aa369a458f534523ecc1e3aaaf403d06f1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"2e9a0a9c1221dd01bd683ecbc4871d03738da671","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]},"message":"add features"},{"commit":"c1f6f2b9508e558ab88b4a0a61e93a6cf5460bea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":116,"deletions":4,"files":["docs/parsers/stat.md","jc/parsers/stat.py","tests/fixtures/osx-10.14.6/stat.json","tests/fixtures/osx-10.14.6/stat.out","tests/test_stat.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":8},{"name":"jc/parsers/stat.py","lines_changed":5},{"name":"tests/fixtures/osx-10.14.6/stat.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/stat.out","lines_changed":94},{"name":"tests/test_stat.py","lines_changed":12}]},"message":"osx fixes and tests"},{"commit":"ede21bca13c4b46899721f01d979c8b063f861a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":110,"deletions":78,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":188}]},"message":"add OSX support for stat"},{"commit":"8dd9a9f9cbc70a19176f909f6ac76b2bcf670736","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":45,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-i.json","tests/fixtures/osx-10.14.6/netstat-i.json","tests/fixtures/ubuntu-18.04/netstat-i.json","tests/fixtures/ubuntu-18.04/netstat-i.out","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/netstat-i.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-i.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-i.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-i.out","lines_changed":4},{"name":"tests/test_netstat.py","lines_changed":38}]},"message":"add netstat -i tests"},{"commit":"04f92cd1330759e4bad1c0304b9e1c28e8d32d59","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":166,"deletions":4,"files":["README.md","docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_linux.py","tests/fixtures/centos-7.7/netstat-i.out"],"file_stats":[{"name":"README.md","lines_changed":32},{"name":"docs/parsers/netstat.md","lines_changed":50},{"name":"jc/parsers/netstat.py","lines_changed":44},{"name":"jc/parsers/netstat_linux.py","lines_changed":39},{"name":"tests/fixtures/centos-7.7/netstat-i.out","lines_changed":5}]},"message":"add linux support for netstat -i"},{"commit":"8be8d2393b276a9249e1c573ce19cf630f0942fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":99,"deletions":3,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-i.out"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":19},{"name":"jc/parsers/netstat_osx.py","lines_changed":40},{"name":"tests/fixtures/osx-10.14.6/netstat-i.out","lines_changed":43}]},"message":"add netstat -i support for OSX"},{"commit":"0a879681be68fe2e6e5c013ab0fe18de99b04f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":97,"deletions":282,"files":["README.md","docs/parsers/netstat.md","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":37},{"name":"docs/parsers/netstat.md","lines_changed":171},{"name":"jc/parsers/netstat.py","lines_changed":171}]},"message":"add netstat -r to docs"},{"commit":"2ca1587a49511899bf719e0b0c7de32158fc491d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":102,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-r.json","tests/fixtures/centos-7.7/netstat-rne.json","tests/fixtures/centos-7.7/netstat-rnee.json","tests/fixtures/ubuntu-18.04/netstat-r.json","tests/fixtures/ubuntu-18.04/netstat-r.out","tests/fixtures/ubuntu-18.04/netstat-rne.json","tests/fixtures/ubuntu-18.04/netstat-rne.out","tests/fixtures/ubuntu-18.04/netstat-rnee.json","tests/fixtures/ubuntu-18.04/netstat-rnee.out","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/netstat-r.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-rne.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-rnee.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-r.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-r.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/netstat-rne.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-rne.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/netstat-rnee.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-rnee.out","lines_changed":5},{"name":"tests/test_netstat.py","lines_changed":81}]},"message":"add linux netstat -r tests"},{"commit":"ec2cd2d708a57c0458657416bedcb4340cb40901","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":70,"deletions":11,"files":["docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_linux.py","jc/parsers/netstat_osx.py","tests/fixtures/centos-7.7/netstat-r.out","tests/fixtures/centos-7.7/netstat-rne.out","tests/fixtures/centos-7.7/netstat-rnee.out","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-rnl.json"],"file_stats":[{"name":"docs/parsers/netstat.md","lines_changed":11},{"name":"jc/parsers/netstat.py","lines_changed":13},{"name":"jc/parsers/netstat_linux.py","lines_changed":37},{"name":"jc/parsers/netstat_osx.py","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-r.out","lines_changed":5},{"name":"tests/fixtures/centos-7.7/netstat-rne.out","lines_changed":5},{"name":"tests/fixtures/centos-7.7/netstat-rnee.out","lines_changed":5},{"name":"tests/fixtures/osx-10.14.6/netstat-r.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-rnl.json","lines_changed":2}]},"message":"add netstat -r support for linux"},{"commit":"5d0dbece9317e84a47d9f4b2d18a9ffa33fbee6e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":288,"deletions":5,"files":["docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-r.out","tests/fixtures/osx-10.14.6/netstat-rnl.json","tests/fixtures/osx-10.14.6/netstat-rnl.out","tests/test_netstat.py"],"file_stats":[{"name":"docs/parsers/netstat.md","lines_changed":17},{"name":"jc/parsers/netstat.py","lines_changed":23},{"name":"jc/parsers/netstat_osx.py","lines_changed":37},{"name":"tests/fixtures/osx-10.14.6/netstat-r.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-r.out","lines_changed":93},{"name":"tests/fixtures/osx-10.14.6/netstat-rnl.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-rnl.out","lines_changed":96},{"name":"tests/test_netstat.py","lines_changed":25}]},"message":"add netstat -r functionality for OSX"},{"commit":"df1e4b414b2bda5be3153767cd854b2483ba600b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":[".gitignore"],"file_stats":[{"name":".gitignore","lines_changed":1}]},"message":"remove unused folder"},{"commit":"40760991e7dae43cd15134310f7bbb5ce0f58dae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["LICENSE.md"],"file_stats":[{"name":"LICENSE.md","lines_changed":2}]},"message":"update copyright date"},{"commit":"464f5f86cf2c8fe6a1a857b0ad4d221a3edf3d88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"update description"},{"commit":"7b09e9fccdd4f09218a500b54c898ada1b9843c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":8,"deletions":5,"files":["docs/parsers/dmidecode.md","jc/parsers/dmidecode.py","tests/fixtures/centos-7.7/dmidecode.json","tests/fixtures/fedora32/dmidecode.json","tests/fixtures/ubuntu-18.04/dmidecode.json"],"file_stats":[{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":5},{"name":"tests/fixtures/centos-7.7/dmidecode.json","lines_changed":2},{"name":"tests/fixtures/fedora32/dmidecode.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dmidecode.json","lines_changed":2}]},"message":"set empty values to Null and update fixtures"},{"commit":"6cba7d429898d331c674c778f8bd85ba75a8dca9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"remove linux from description"},{"commit":"9730f62e4970b5a4490f8dc24b6cfb9cacd0cbf2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":151,"deletions":133,"files":["jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json","tests/fixtures/osx-10.14.6/netstat.out"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":7},{"name":"tests/fixtures/osx-10.14.6/netstat-Abn.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-An.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat.out","lines_changed":271}]},"message":"fixup name field and update test fixtures"},{"commit":"e0c1c87f549eee000b93b5f5a3e8d0b052eb7d32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":8}]},"message":"formatting"},{"commit":"931b3d2b836b251590497f4cfa65f106762086c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"e5d561baeecf1fd83a884b3cd9d322762f750dfb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":1}]},"message":"add multipath condition for osx detection"},{"commit":"2867593e7aa12299686e2c6aa0f2a79a9b550b53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":6}]},"message":"changelog update"},{"commit":"dd52fee5635c977d5c77046ab9fe78d2ed10deef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":2141,"deletions":0,"files":["tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-Abn.out","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat-An.out","tests/fixtures/osx-10.14.6/netstat.json","tests/fixtures/osx-10.14.6/netstat.out","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/netstat-Abn.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-Abn.out","lines_changed":689},{"name":"tests/fixtures/osx-10.14.6/netstat-An.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-An.out","lines_changed":689},{"name":"tests/fixtures/osx-10.14.6/netstat.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat.out","lines_changed":724},{"name":"tests/test_netstat.py","lines_changed":36}]},"message":"osx netstat tests and fixtures"},{"commit":"8e1f8858273e671a882a07eae1c35b38f5298c94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":7}]},"message":"fix filtered netstat views"},{"commit":"2d39a58f902e6af77f8f96ffcd1d68b7cbadd56c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":81,"deletions":14,"files":["README.md","docs/parsers/dmidecode.md","docs/parsers/netstat.md","jc/parsers/dmidecode.py"],"file_stats":[{"name":"README.md","lines_changed":67},{"name":"docs/parsers/dmidecode.md","lines_changed":4},{"name":"docs/parsers/netstat.md","lines_changed":20},{"name":"jc/parsers/dmidecode.py","lines_changed":4}]},"message":"doc update"},{"commit":"9c4fa2ae2601ca4880c0b078fa917f01f1392e0e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":22,"deletions":2,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":21},{"name":"jc/parsers/netstat_osx.py","lines_changed":3}]},"message":"integer conversions and icmp fix"},{"commit":"de52d84e82df6d8c5e2416c6bc44e59c41c685da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":17}]},"message":"fix udp state and udp46 entries"},{"commit":"ce9b55059a28d363b8b0ae4f3ccbdbdc4bf4b58e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":185,"deletions":167,"files":["jc/parsers/netstat.py","jc/parsers/netstat_linux.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":171},{"name":"jc/parsers/netstat_linux.py","lines_changed":181}]},"message":"organize files"},{"commit":"bcd370a6a01a115d470776f5690f8571d68d3930","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":15,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":16},{"name":"jc/parsers/netstat_osx.py","lines_changed":4}]},"message":"code cleanup"},{"commit":"c8216850abd2d0b8cc6761453f853f296e8a28f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":55,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":74}]},"message":"code cleanup"},{"commit":"f5feedb90b39e5c3f4564615482d47ccd145844f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":10,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":11}]},"message":"fix comments"},{"commit":"a4371cd187fe5077018edbfeee77eb17c6a90ad3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":6}]},"message":"support netstat -A"},{"commit":"9d5ba4c83404e4fab5c0f40c30b4735685499a31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":2}]},"message":"formatting"},{"commit":"1639dee1bb93f6f89e8bb7b37134dc1f561c479c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":35,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":45}]},"message":"fix parse_post"},{"commit":"9363f430f20951e6fa739f06c85c5b6b3421b60d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":3}]},"message":"use list extend method to simplify code"},{"commit":"9192a0907364c772558380be1373b8dcea972a6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":124,"deletions":34,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":158}]},"message":"parse all sections"},{"commit":"b915eb97556ccc5fc60e8d23f7298ffec2d8e3b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":237,"deletions":55,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":118},{"name":"jc/parsers/netstat_osx.py","lines_changed":174}]},"message":"initial osx parser"},{"commit":"1cfcc2b592f682d2b50a0c4188fa3ae832a6c682","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":2}]},"message":"tighten up line test logic when counting tabs"},{"commit":"7138dd02b73073441a52c9b574bf0d6e02f0d7d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":11}]},"message":"cleanup variables after adding to item"},{"commit":"b4276643b70f7820f8f53df22b32fffb54e30ca2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":56,"deletions":0,"files":["tests/fixtures/centos-7.7/dmidecode.json","tests/fixtures/fedora32/dmidecode.json","tests/fixtures/ubuntu-18.04/dmidecode.json","tests/test_dmidecode.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/dmidecode.json","lines_changed":1},{"name":"tests/fixtures/fedora32/dmidecode.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dmidecode.json","lines_changed":1},{"name":"tests/test_dmidecode.py","lines_changed":53}]},"message":"add dmidecode tests and fixtures"},{"commit":"2ef00763bfe7c4348f30026759941efe39861a0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":4}]},"message":"fix first item"},{"commit":"54364928fc826ead7774a4cec1bcb73a5cb9ee0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":74,"deletions":81,"files":["docs/parsers/dmidecode.md","jc/parsers/dmidecode.py"],"file_stats":[{"name":"docs/parsers/dmidecode.md","lines_changed":37},{"name":"jc/parsers/dmidecode.py","lines_changed":118}]},"message":"fix oddities like hybrid single/multiline data and items containing multiple records"},{"commit":"09b3b4932b0fa4a2b18c88a8465c15a194b727e6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":35430,"deletions":0,"files":["tests/fixtures/centos-7.7/dmidecode.out","tests/fixtures/fedora32/dmidecode.out","tests/fixtures/ubuntu-18.04/dmidecode.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/dmidecode.out","lines_changed":11810},{"name":"tests/fixtures/fedora32/dmidecode.out","lines_changed":11810},{"name":"tests/fixtures/ubuntu-18.04/dmidecode.out","lines_changed":11810}]},"message":"add dmidecode output fixtures"},{"commit":"29d6670119d8fcd0344e90f01bfb6260aa936e50","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":10}]},"message":"convert integers"},{"commit":"2f654b5f1acda01192294f4c18a5a31363e7f387","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["docs/parsers/dmidecode.md"],"file_stats":[{"name":"docs/parsers/dmidecode.md","lines_changed":37}]},"message":"doc update"},{"commit":"e53b9f5992450b53efc886b4fa9ca16f3dd07530","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":37}]},"message":"add caveats to documentation"},{"commit":"addb234e6162c58750cb67947bc4776635bf54fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":153,"deletions":0,"files":["docs/parsers/dmidecode.md"],"file_stats":[{"name":"docs/parsers/dmidecode.md","lines_changed":153}]},"message":"add dmidecode doc"},{"commit":"76eca3b65911a0a340d3d94322a8145ee89c50da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":1}]},"message":"add dmidecode"},{"commit":"f90dec4c0ecf88623fb22273b7527ec8884826c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":94,"deletions":5,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":99}]},"message":"add examples to documentation"},{"commit":"8900a59d4cb424ff58d1eb27f8fda7ea0a668a5c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":19,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":20}]},"message":"simplify logic by removing redundant block"},{"commit":"6685138200d5955115707d04aad0293ea8af5b15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":2}]},"message":"fix for missing multi-line values that come immediately after a previous multi-line value"},{"commit":"4d3e65b980d50164b8220e59560822b9871580ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":5}]},"message":"fix missing values"},{"commit":"e9282bb546f560da6396f44e2ce9e04136348e2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":175,"deletions":0,"files":["jc/cli.py","jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/dmidecode.py","lines_changed":174}]},"message":"add dmidecode parser"},{"commit":"f5627a45947e5e76e5f3e64d9b30099fe0b962a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"81ffdb25105c681c8ed12336d220a102b7f4215e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"remove shebang for Fedora packaging"},{"commit":"4c00a99850cb6f69713be7c6ad9ffba11924d9b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"2bfcb45b28e2174a8bbc27237e619b5c232ccae8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":0}]},"message":"make cli.py executable"},{"commit":"ab0c10e791283affb227d0d5306701ba7fd29d13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["LICENSE.md","README.md"],"file_stats":[{"name":"LICENSE.md","lines_changed":0},{"name":"README.md","lines_changed":0}]},"message":"remove execute permissions"},{"commit":"2c1935115de03a28fe92674b04b2542b0eccb8fe","merge":"99070fa d98e43d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #61 from kellyjonbrazil/dev"},{"commit":"d98e43dc78205d3224bfc1e67de2da3c5fb7ea9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"add netstat item"},{"commit":"9348988d646d9b9c9970c19e84f311554ae38e7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":0,"files":["tests/test_netstat.py"],"file_stats":[{"name":"tests/test_netstat.py","lines_changed":12}]},"message":"add netstat test for Fedora32"},{"commit":"1285c664679c40b18327c89b85921a80b01f0191","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":140,"deletions":0,"files":["tests/fixtures/fedora32/netstat.json","tests/fixtures/fedora32/netstat.out"],"file_stats":[{"name":"tests/fixtures/fedora32/netstat.json","lines_changed":1},{"name":"tests/fixtures/fedora32/netstat.out","lines_changed":139}]},"message":"netstat with bluetooth section"},{"commit":"b7191bbc130e0f33d02c0a4819fa91ffff1599d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":15}]},"message":"handle bluetooth section (ignore for now)"},{"commit":"98b97509f7893cb95e9651ce9706db5c961aa997","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"2b2b570490f3834367a598579473001f45738e8a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":21,"deletions":0,"files":["tests/fixtures/fedora32/last.json","tests/fixtures/fedora32/last.out","tests/test_last.py"],"file_stats":[{"name":"tests/fixtures/fedora32/last.json","lines_changed":1},{"name":"tests/fixtures/fedora32/last.out","lines_changed":8},{"name":"tests/test_last.py","lines_changed":12}]},"message":"add tests for 'gone - no logout'"},{"commit":"cce2d1ff298f2284c43c4534144329f3533a81ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":6}]},"message":"add condition for 'gone - no logout'"},{"commit":"b79600c57249cbb65805caad2524cc2492342be6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"version bump"},{"commit":"140f1a85437745296b56976bef1b46514e323a4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":7,"deletions":7,"files":["tests/fixtures/centos-7.7/ls-R-newlines.json","tests/fixtures/centos-7.7/ls-R.json","tests/fixtures/centos-7.7/ls-glob.json","tests/fixtures/osx-10.14.6/ls-glob.json","tests/fixtures/ubuntu-18.04/ls-R-newlines.json","tests/fixtures/ubuntu-18.04/ls-R.json","tests/fixtures/ubuntu-18.04/ls-glob.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ls-R-newlines.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ls-R.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ls-glob.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-glob.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ls-R-newlines.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ls-R.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ls-glob.json","lines_changed":2}]},"message":"test fixes for issue #60"},{"commit":"e34657cfde6816ab7a7415d83580df0a1d98a5a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"fix issue #60 that was skipping the first file in some instances using -R without -l"},{"commit":"99070fa6073c4415a6faf8ca69dd6aa089af4062","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"2b46785b1f1281ee63df9159e36068f4607ad9b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":25,"deletions":3,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":28}]},"message":"add MIT license to vendorized IfconfigParser class"},{"commit":"c72562524b2b9aaca0be372bb24343158829ba5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"fully remove tests from packaging"},{"commit":"b7dd6441c7e3f54f8a260fceef49aae6816c7151","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":1,"files":["changelog.txt","jc/cli.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/cli.py","lines_changed":2}]},"message":"version bump"},{"commit":"31fcc2f755ad86622cf51a75879b14d44f246300","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["MANIFEST.in"],"file_stats":[{"name":"MANIFEST.in","lines_changed":1}]},"message":"remove manifest.in - no longer needed due to removing tests"},{"commit":"b391aa14bceffedb5a9c13f3f908923790edefc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["setup.cfg"],"file_stats":[{"name":"setup.cfg","lines_changed":2}]},"message":"add license_file to metadata"},{"commit":"d3c45debbb6690acd341fbcc9b99d1ae4cf0a43c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":5}]},"message":"remove tests and add license file"},{"commit":"5b08469b874553744bd5c5b1fa6581f4dcffacd0","merge":"8cf00a2 4a77ec6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #57 from kellyjonbrazil/dev"},{"commit":"4a77ec63a46554c84e646d31564230774ed87431","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["docs/parsers/ifconfig.md"],"file_stats":[{"name":"docs/parsers/ifconfig.md","lines_changed":11}]},"message":"add IfconfigParser class"},{"commit":"d13606b6dc2c207be6dea89a2c3e713c18a574b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":7,"deletions":6,"files":["changelog.txt","jc/cli.py","requirements.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"requirements.txt","lines_changed":3},{"name":"setup.py","lines_changed":5}]},"message":"modify dependencies for easier packaging into Fedora"},{"commit":"05291c93bba1aa364ba1ac7f2508e24bb362a814","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":198,"deletions":3,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":201}]},"message":"vendorize ifconfig-parser module for easier packaging in Fedora"},{"commit":"8cf00a208eb8493300331e7361b72e4f9e3f140e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"change text to strings"},{"commit":"06d73c88767a5b4d6003231c897c447ee5e1faa5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"649c646ea25ac7f89900cffa8919df01671bd32d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"add brew install option"},{"commit":"b7756d92501a7b8ba8e77d77d9d3718a58425beb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"1cd2cd954c21e5caec333507bd81819c82d45b49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":16,"files":["tests/fixtures/osx-10.11.6/du.json","tests/fixtures/osx-10.11.6/du.out","tests/fixtures/osx-10.14.6/du.json","tests/fixtures/osx-10.14.6/du.out"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/du.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/du.out","lines_changed":7},{"name":"tests/fixtures/osx-10.14.6/du.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/du.out","lines_changed":7}]},"message":"remove references to homebrew/shim to allow tests to pass in homebrew packaging ci/cd"},{"commit":"72020b8da999ddca6f9ba82da235c9f42e4f4273","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":22,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":24}]},"message":"move packages info to jc-packages github page"},{"commit":"cf9720b749e7fc8caed0d2f1f2b1727a22a156b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"update install info"},{"commit":"967b9db7f90a3c3a0352edde7f4455c5f5d45b18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":6}]},"message":"spelling"},{"commit":"bb3acb1182f4d509f9ddc7dfcffa4578e0a2bd5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"560c7f7e6d1f8a69ab026ddbff753d232ca1d00b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"79b28417644e00b933f531374d2f7fe8051e61be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":26}]},"message":"add new binary package install info"},{"commit":"a06a89cbd11026aa3910fadd1eff7fe388d02507","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"431bd969eb4809424fe99a02a7decb98bce9ea51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"use sys.exit(0) instead of exit()"},{"commit":"c87b722aec6e6964c516bbb8e80667ad7d9c6bc7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"spelling"},{"commit":"3688b8b014a1cf753b2207fbf3ebf0292c3fd672","merge":"99f7842 07b8d9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #56 from kellyjonbrazil/dev"},{"commit":"07b8d9e0c0d723d93e6c652f5b6156c467c451c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"7454b53e395e9122c00d4cf06b1c2af109913d7a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"formatting"},{"commit":"3d6a76024de0f9dcf91a4ab49cabe461074114fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":18}]},"message":"update with JC_COLORS info"},{"commit":"421b9809575a8de00229af4b851739889638ac74","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":37,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":55}]},"message":"JC_COLORS working"},{"commit":"4a22e27d6a80a988f4de17bce421110d6abb8867","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":64,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":64}]},"message":"add set_env_colors function"},{"commit":"99f7842dee0f79cf933fae185cf8b0ed7c8b210f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":11,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":8},{"name":"setup.py","lines_changed":2}]},"message":"fix brek on pipe error"},{"commit":"7f869b4b187d70752207a7e74c13b858446f898f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":11,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":15},{"name":"setup.py","lines_changed":2}]},"message":"change colors to ansi and match jello style"},{"commit":"9665f4ee84680f3a8154b8a43ea668af2907782c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add pypi badge"},{"commit":"606904d48b1c7e0c19a940b5be0b564d1b5be6c8","merge":"302f05c 3f5279b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #53 from kellyjonbrazil/dev"},{"commit":"3f5279b97c386c736e0e2faa5c39d68ef89c46aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to 1.10.1"},{"commit":"f5ec21e6ac612566af93158fc3968b901322d04a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_luf.py"],"file_stats":[{"name":"jc/parsers/systemctl_luf.py","lines_changed":4}]},"message":"use in instead of find()"},{"commit":"578a284465f014fe71ad6ac00bd41dc24ab2ced9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_ls.py"],"file_stats":[{"name":"jc/parsers/systemctl_ls.py","lines_changed":4}]},"message":"use in instead of find()"},{"commit":"422e392d9d98a7864312fc7fbd7f45537b71acbe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_lj.py"],"file_stats":[{"name":"jc/parsers/systemctl_lj.py","lines_changed":4}]},"message":"use in instead of find()"},{"commit":"54dfffd34a17d1194690142ac403391fc65bb85f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl.py"],"file_stats":[{"name":"jc/parsers/systemctl.py","lines_changed":4}]},"message":"use in instead of find()"},{"commit":"cffba64d2b9165b44a8856665807111a2ad3a190","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":14}]},"message":"use in and startswith() instead of find()"},{"commit":"56a0c12a59bb252d3b7d0929f9fb19b4d96a8437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/pip_list.py"],"file_stats":[{"name":"jc/parsers/pip_list.py","lines_changed":6}]},"message":"use in instead of find()"},{"commit":"c174d3de18923b2b03befb5a7dfcbd977a8e147e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":14}]},"message":"use in and startswith() instead of find()"},{"commit":"a9c59ef9fc1bb68c9d0d7beffbeb670baf5b1e3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/mount.py"],"file_stats":[{"name":"jc/parsers/mount.py","lines_changed":2}]},"message":"fix logic to not for ' type ' in cleandata[0]"},{"commit":"abdb9b26732a6a71f5938d665b2ca43a381e1b33","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/mount.py"],"file_stats":[{"name":"jc/parsers/mount.py","lines_changed":4}]},"message":"use in instead of find()"},{"commit":"548aaab6262878d21f8b9539950cfad48638e35c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":42,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":43}]},"message":"remove old commented code"},{"commit":"20571c87ae9e1ca8a1f3120511910751420a35ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":6}]},"message":"us in instead of find()"},{"commit":"19e49200de5c731f76b42e80388c5223e8097e39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":2}]},"message":"version bump"},{"commit":"d32f5c67a91ede572c88e431b2ad0ce4d6c87dec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":4}]},"message":"use startswith() instead of find()"},{"commit":"b83b626435c55d2aa63e56dd8f22603da59e7626","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":4}]},"message":"use startswith() instead of find()"},{"commit":"ab2c1b25ec5da5f2ba238868c4dfca95a44da30e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/hosts.py"],"file_stats":[{"name":"jc/parsers/hosts.py","lines_changed":6}]},"message":"use startswith() and in instead of find()"},{"commit":"f2d46313a4508f13656cdb360f83fdf4116cc7d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/fstab.py"],"file_stats":[{"name":"jc/parsers/fstab.py","lines_changed":4}]},"message":"use startswith() instead of find()"},{"commit":"87e4796a6c936793e2784346819c7033d59b91e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":4}]},"message":"use in instead of .find()"},{"commit":"0014a5c2f4c056c2683d6614a65d778b1f527932","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab_u.py"],"file_stats":[{"name":"jc/parsers/crontab_u.py","lines_changed":6}]},"message":"us startswith() and in instead of .find()"},{"commit":"7af56e0dadab7d8b9538f3b7a550ad6dd1ac217d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":6}]},"message":"use startswith() and in instead of find()"},{"commit":"a5ae6e3c017b041f9079ff12455b7551ad204cb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":6}]},"message":"use startswith() instead of find()"},{"commit":"fe1a0d1faf46f55ed2888ed0065f3f3144691ed8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":9,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":19}]},"message":"use in instead of .find()"},{"commit":"302f05cdda305e46e69b74d5b0096f64c17da637","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"prettify style block"},{"commit":"c0044be7b0b6dadcffb64cb88ad92bf653dd2b6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"rename color grey to gray"},{"commit":"01100788070b82b4b827ef356972fa9b8f737eeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update badge"},{"commit":"42eacb45f8fdf8085c6231bf5297629c2ec97c22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"rename to Tests"},{"commit":"a43e2e19916662d509883457c160d7f95f97ae12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add -m option info"},{"commit":"c8b721d4f6e46a2db77e1140b9caeb3b403fef72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":9,"deletions":3,"files":["changelog.txt","jc/cli.py","requirements.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/cli.py","lines_changed":2},{"name":"requirements.txt","lines_changed":1},{"name":"setup.py","lines_changed":5}]},"message":"version bump to 1.10.0"},{"commit":"d0bfddc3d9989444757d6668726c916e5363620b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":41,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":47}]},"message":"add color and -m monochrome option"},{"commit":"6b925a16c87cf75bb30edfda38511e8f84a4f6d6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add tests badge"},{"commit":"89ebd9fc2271d2c76353d5707bfd4afb7dedc278","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":0,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":10},{"name":"jc/parsers/dig.py","lines_changed":10}]},"message":"add axfr info to schema"},{"commit":"6b4ba662317629839aa62fbcfefb8ed3337c37ef","merge":"8ec8cd6 5b697dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #52 from kellyjonbrazil/dev"},{"commit":"5b697dc38141cdd47fcdd63bf295a80a7da86697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":72,"deletions":0,"files":["tests/test_dig.py"],"file_stats":[{"name":"tests/test_dig.py","lines_changed":72}]},"message":"add more dig tests"},{"commit":"9ba73c95d1a528a9a92be4068805bb5aa027901e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":215,"deletions":0,"files":["tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/centos-7.7/dig-axfr.out","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-axfr.out","tests/fixtures/ubuntu-18.04/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-axfr.out","tests/test_dig.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/dig-axfr.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/dig-axfr.out","lines_changed":60},{"name":"tests/fixtures/osx-10.14.6/dig-axfr.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig-axfr.out","lines_changed":59},{"name":"tests/fixtures/ubuntu-18.04/dig-axfr.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dig-axfr.out","lines_changed":57},{"name":"tests/test_dig.py","lines_changed":36}]},"message":"add tests"},{"commit":"93aa39044749c4c0ed749f62fb00fc1c76dc5af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to v1.9.3"},{"commit":"3cfb8945ddd83c00a720c44e2c1d97da0d8bad25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":18}]},"message":"use startswith() instead of find"},{"commit":"cd8d38f2a136c4f35efc020b3476d09e965b71f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":50,"deletions":1,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":51}]},"message":"add axfr support"},{"commit":"8ec8cd62944c59c462ab9f520c1dcfd14218b1ed","merge":"e5bea9a c028113","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #50 from kellyjonbrazil/dev"},{"commit":"c02811356153c2b4f8b2d7efb7f48bf8f7748068","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":5},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to v1.9.2"},{"commit":"5f22e1c8031b808ef02ffe078408bd58cc76e570","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":33,"deletions":0,"files":["tests/fixtures/osx-10.14.6/arp-a2.json","tests/fixtures/osx-10.14.6/arp-a2.out","tests/test_arp.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/arp-a2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/arp-a2.out","lines_changed":20},{"name":"tests/test_arp.py","lines_changed":12}]},"message":"fix and test for osx arp entries without ifscope"},{"commit":"d3351787e5cabd064c19e6617e9535e501686404","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":9,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":19}]},"message":"change osx detection"},{"commit":"e5bea9ae3b0a70b38f7da7dd9184343dbbd18887","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/file.py"],"file_stats":[{"name":"jc/parsers/file.py","lines_changed":2}]},"message":"version bump"},{"commit":"93c710abe9171568f61f65c4f84c040ffc24870c","merge":"400f5a4 c29e7cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #49 from kellyjonbrazil/dev"},{"commit":"c29e7cfe5cc4b2151912c6f618137d1b6c39c7be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":9,"deletions":6,"files":["README.md","changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to 1.9.1"},{"commit":"cb5c1ba00dc0e02bf6ad6c40096d99e319fa6171","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":101,"deletions":0,"files":["tests/fixtures/osx-10.14.6/file2.json","tests/fixtures/osx-10.14.6/file2.out","tests/test_file.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/file2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/file2.out","lines_changed":88},{"name":"tests/test_file.py","lines_changed":12}]},"message":"add tests for fix to make the file parser splitting more robust"},{"commit":"9a012b94e1942a14bc6dae3fb967ef618819c77b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/file.py"],"file_stats":[{"name":"jc/parsers/file.py","lines_changed":2}]},"message":"make splitting more robust"},{"commit":"400f5a44ece280cb0097d806b78a9490d2905600","merge":"c7cd2b6 a2ab5ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #48 from kellyjonbrazil/dev"},{"commit":"a2ab5bab91ea980399df1afb9d8071fa3282d04e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to v1.9.0"},{"commit":"fc8ab27361df3359b706125531b2643612d6996a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":93,"deletions":51,"files":["README.md","docs/parsers/ntpq.md","jc/parsers/ntpq.py","tests/fixtures/ubuntu-18.04/ntpq-p2.json","tests/fixtures/ubuntu-18.04/ntpq-p2.out","tests/test_ntpq.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"docs/parsers/ntpq.md","lines_changed":40},{"name":"jc/parsers/ntpq.py","lines_changed":59},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p2.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p2.out","lines_changed":24},{"name":"tests/test_ntpq.py","lines_changed":12}]},"message":"bugfix for misaligned columns and additional test for ntpq #31"},{"commit":"59f19d33a5c6677ea756a9424fdb032b430511a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":153,"deletions":0,"files":["tests/fixtures/centos-7.7/file.json","tests/fixtures/centos-7.7/file.out","tests/fixtures/osx-10.14.6/file.json","tests/fixtures/osx-10.14.6/file.out","tests/fixtures/ubuntu-18.04/file.json","tests/fixtures/ubuntu-18.04/file.out","tests/test_file.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/file.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/file.out","lines_changed":25},{"name":"tests/fixtures/osx-10.14.6/file.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/file.out","lines_changed":53},{"name":"tests/fixtures/ubuntu-18.04/file.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/file.out","lines_changed":20},{"name":"tests/test_file.py","lines_changed":52}]},"message":"add file command tests for #41"},{"commit":"dfc96181159748d019419a2cba7aa9cb3b7a2a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":260,"deletions":1,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/file.md","jc/cli.py","jc/parsers/file.py"],"file_stats":[{"name":"README.md","lines_changed":36},{"name":"changelog.txt","lines_changed":5},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/file.md","lines_changed":90},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/file.py","lines_changed":128}]},"message":"add file parser for issue #41"},{"commit":"8e02e5c75a11cf205299ee6f87b67f9b787cf55e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":5,"files":["jc/cli.py","tests/test_cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8},{"name":"tests/test_cli.py","lines_changed":3}]},"message":"fix issue with getting options with some commands #47"},{"commit":"970493ab9346a344b21be7614903ad81bc65a6e9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["jc/parsers/airport.py","jc/parsers/airport_s.py"],"file_stats":[{"name":"jc/parsers/airport.py","lines_changed":1},{"name":"jc/parsers/airport_s.py","lines_changed":1}]},"message":"add magic commands"},{"commit":"64d78956eb33ca0a2564fded3d12729ee036a915","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"update acknowledgment"},{"commit":"40c05346f4098f8eea14c42da07df3faa143587a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":25,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":37}]},"message":"re-adding optimizations from https://github.com/philippeitis"},{"commit":"e9b0bc1409a824a82dabd2479892b7d18bad8c3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/airport.py"],"file_stats":[{"name":"jc/parsers/airport.py","lines_changed":2}]},"message":"doc update"},{"commit":"798e6bb7d939176bb36771a6d41bd55403d583be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":29,"deletions":0,"files":["tests/fixtures/osx-10.14.6/airport-s.json","tests/test_airport_s.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/airport-s.json","lines_changed":1},{"name":"tests/test_airport_s.py","lines_changed":28}]},"message":"tests passing for airport -s. issue #46"},{"commit":"12a370deed03ba42d7b7ebb410195ce5f32bb9c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":372,"deletions":9,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/airport.md","docs/parsers/airport_s.md","jc/cli.py","jc/parsers/airport.py","jc/parsers/airport_s.py"],"file_stats":[{"name":"README.md","lines_changed":47},{"name":"changelog.txt","lines_changed":2},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/airport.md","lines_changed":4},{"name":"docs/parsers/airport_s.md","lines_changed":136},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/airport.py","lines_changed":5},{"name":"jc/parsers/airport_s.py","lines_changed":185}]},"message":"add airport -s parser for issue #46"},{"commit":"553bfbe1a0dd866851ba7eca66e9295c2097ad86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":40,"deletions":6,"files":["docs/parsers/airport.md","jc/parsers/airport.py","tests/test_airport.py"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":9},{"name":"jc/parsers/airport.py","lines_changed":9},{"name":"tests/test_airport.py","lines_changed":28}]},"message":"tests passing for airport -I. Issue #46"},{"commit":"52494321fcfe0dc7ee71d8d78210b3c10372a237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":120,"deletions":15,"files":["README.md","docs/parsers/airport.md","jc/parsers/airport.py","tests/fixtures/osx-10.14.6/airport-I.json","tests/fixtures/osx-10.14.6/airport-I.out"],"file_stats":[{"name":"README.md","lines_changed":22},{"name":"docs/parsers/airport.md","lines_changed":48},{"name":"jc/parsers/airport.py","lines_changed":62},{"name":"tests/fixtures/osx-10.14.6/airport-I.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/airport-I.out","lines_changed":2}]},"message":"fixes and docs for airport parser issue #46"},{"commit":"c6c9e06496683d2dd3586d17085801c7e698d960","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":196,"deletions":1,"files":["changelog.txt","docgen.sh","docs/parsers/airport.md","jc/cli.py","jc/parsers/airport.py","tests/fixtures/osx-10.14.6/airport-I.out","tests/fixtures/osx-10.14.6/airport-s.out"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/airport.md","lines_changed":64},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/airport.py","lines_changed":98},{"name":"tests/fixtures/osx-10.14.6/airport-I.out","lines_changed":15},{"name":"tests/fixtures/osx-10.14.6/airport-s.out","lines_changed":15}]},"message":"added airport command parser"},{"commit":"e3a6c05a58a2451e70975d8fabf644c56603c73d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":64,"deletions":17,"files":["docs/parsers/timedatectl.md","jc/parsers/timedatectl.py","tests/fixtures/centos-7.7/timedatectl.json","tests/fixtures/ubuntu-18.04/timedatectl.json","tests/test_timedatectl.py"],"file_stats":[{"name":"docs/parsers/timedatectl.md","lines_changed":18},{"name":"jc/parsers/timedatectl.py","lines_changed":21},{"name":"tests/fixtures/centos-7.7/timedatectl.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/timedatectl.json","lines_changed":1},{"name":"tests/test_timedatectl.py","lines_changed":40}]},"message":"timedatectl fixes, tests, and fixtures for issue #42"},{"commit":"391d06f68d1f45d33590d5407d3a5e4f723af717","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":35,"deletions":35,"files":["README.md","docs/parsers/ntpq.md","jc/parsers/ntpq.py","tests/fixtures/centos-7.7/ntpq-p.json","tests/fixtures/centos-7.7/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-p.json","tests/fixtures/ubuntu-18.04/ntpq-pn.json"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docs/parsers/ntpq.md","lines_changed":26},{"name":"jc/parsers/ntpq.py","lines_changed":32},{"name":"tests/fixtures/centos-7.7/ntpq-p.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ntpq-pn.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ntpq-pn.json","lines_changed":2}]},"message":"change selection_state to state"},{"commit":"99804ea06e0c70e3a82ddc7f9c7a42343374d700","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":222,"deletions":0,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/timedatectl.md","jc/cli.py","jc/parsers/timedatectl.py"],"file_stats":[{"name":"README.md","lines_changed":15},{"name":"changelog.txt","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/timedatectl.md","lines_changed":85},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/timedatectl.py","lines_changed":119}]},"message":"added timedatectl status parser"},{"commit":"51935deb2ad18e4ea3ca16954ce810354f6095a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":21,"deletions":0,"files":["tests/fixtures/centos-7.7/timedatectl.out","tests/fixtures/ubuntu-18.04/timedatectl.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/timedatectl.out","lines_changed":14},{"name":"tests/fixtures/ubuntu-18.04/timedatectl.out","lines_changed":7}]},"message":"timedatectl test fixtures"},{"commit":"b24d0c3a475b88d9ccf1a8fe29715ee60972fcad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":34,"deletions":2,"files":["README.md","jc/parsers/ntpq.py"],"file_stats":[{"name":"README.md","lines_changed":33},{"name":"jc/parsers/ntpq.py","lines_changed":3}]},"message":"ntpq docs"},{"commit":"762a886d6fdf5c2ad21d81868d138fb32621ed1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":133,"deletions":0,"files":["tests/fixtures/centos-7.7/ntpq-p.json","tests/fixtures/centos-7.7/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-p.json","tests/fixtures/ubuntu-18.04/ntpq-p.out","tests/fixtures/ubuntu-18.04/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-pn.out","tests/fixtures/ubuntu-18.04/ntqp-p.out","tests/test_ntpq.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ntpq-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ntpq-pn.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-18.04/ntpq-pn.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ntpq-pn.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-18.04/ntqp-p.out","lines_changed":21},{"name":"tests/test_ntpq.py","lines_changed":66}]},"message":"add ntpq tests"},{"commit":"2c3e9ddfe47f56cd7edc2fdf6317f7ecec0b7918","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":543,"deletions":0,"files":["changelog.txt","docgen.sh","docs/parsers/ntpq.md","jc/cli.py","jc/parsers/ntpq.py","tests/fixtures/centos-7.7/ntpq-p.out","tests/fixtures/centos-7.7/ntpq-pn.out"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ntpq.md","lines_changed":235},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/ntpq.py","lines_changed":291},{"name":"tests/fixtures/centos-7.7/ntpq-p.out","lines_changed":6},{"name":"tests/fixtures/centos-7.7/ntpq-pn.out","lines_changed":6}]},"message":"add ntpq parser for issue #31"},{"commit":"c7cd2b63c8f24e9d17c458880fe401d8032395ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":91,"files":["tests/fixtures/generic/oscar_age_male.csv"],"file_stats":[{"name":"tests/fixtures/generic/oscar_age_male.csv","lines_changed":91}]},"message":"delete unused test file"},{"commit":"f0528ea83112e71ff51c89be27fc9bbdfbbf1951","merge":"b5eaff2 5bc5596","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #45 from kellyjonbrazil/dev"},{"commit":"5bc5596f604fb87dffbfdf44ce2395b16bf01297","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":17,"deletions":4,"files":["changelog.txt","jc/cli.py","setup.py","tests/test_ls.py"],"file_stats":[{"name":"changelog.txt","lines_changed":5},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2},{"name":"tests/test_ls.py","lines_changed":12}]},"message":"version bump to 1.8.1"},{"commit":"2c27ac46be803b583caf82c1765bd0c35cee8bc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2454,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-lR-empty-folder.json","tests/fixtures/osx-10.14.6/ls-lR-empty-folder.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ls-lR-empty-folder.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-lR-empty-folder.out","lines_changed":2453}]},"message":"add ls test fixtures"},{"commit":"caad840153e40dc660a2d5e06a96f3451fef25f9","merge":"aff86ae 65bd7e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #44 from philippeitis/patch-5"},{"commit":"65bd7e2904016141c1ed53cdd437865c66d7628e","merge":"17b6efe c3d7d7d","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","message":"Merge pull request #1 from kellyjonbrazil/pr/44"},{"commit":"c3d7d7db12d4870fc4499e0e3445d85ae89f2aea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"removed whitespace"},{"commit":"56053103625af6fb7fa749fc5bc3dbdc62fc223c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":4,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":15}]},"message":"added tests, removed os import, changed to 'assertEqual'"},{"commit":"17b6efe82e6a558353b011c543489eaaf3a6d3ac","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":14,"deletions":0,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":14}]},"message":"Create basic tests for generate_magic_commands()"},{"commit":"a032ae56ae7d247e00415267b65b2a8b80a3302e","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"Pass args to generate_magic_command() to allow testing."},{"commit":"eab2f4b0566b4c76db661cbfa99a56a6bf8d6541","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":33,"deletions":19,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":52}]},"message":"Move core magic() logic into seperate function for testability, minor tweaks."},{"commit":"aff86ae6c71abfe1cbdba5c574a5f3707292ec19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":29,"deletions":39,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":68}]},"message":"reimpliment magic() based on the dictionary approach suggested by philippeitis"},{"commit":"7ece9ddc1a37551cdaaac50f37a48e6d98b18bf4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"version bump ls"},{"commit":"7cd048e839a7cc8404fd5abc153a3d315c207819","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update"},{"commit":"1e22f610a33903e8525d35a18b1dcf760a93791e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"fix for osx - doesn't print 'total xx' line if empty directory (issue #40)"},{"commit":"5249c972ae25e9b289a2667bf471aad5e58c70a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":4}]},"message":"add to changelog"},{"commit":"fd45f856a050f6c56a7a6b50b97b3d8c4de28af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":2}]},"message":"import jc.utils instead of jc"},{"commit":"c8ab40cd33b14a3a1937ecf64bb23e282f5bb921","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"],"file_stats":[{"name":".gitignore","lines_changed":1}]},"message":"ignore .github folder"},{"commit":"b2c872925b37254dac74578c1803b4127f8411c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":20,"insertions":208,"deletions":220,"files":["tests/test_ls.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_passwd.py","tests/test_pip_list.py","tests/test_ps.py","tests/test_route.py","tests/test_shadow.py","tests/test_ss.py","tests/test_systemctl_lj.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py","tests/test_who.py","tests/test_xml.py","tests/test_yaml.py"],"file_stats":[{"name":"tests/test_ls.py","lines_changed":132},{"name":"tests/test_lsmod.py","lines_changed":8},{"name":"tests/test_lsof.py","lines_changed":16},{"name":"tests/test_mount.py","lines_changed":16},{"name":"tests/test_netstat.py","lines_changed":40},{"name":"tests/test_passwd.py","lines_changed":12},{"name":"tests/test_pip_list.py","lines_changed":20},{"name":"tests/test_ps.py","lines_changed":32},{"name":"tests/test_route.py","lines_changed":16},{"name":"tests/test_shadow.py","lines_changed":8},{"name":"tests/test_ss.py","lines_changed":8},{"name":"tests/test_systemctl_lj.py","lines_changed":16},{"name":"tests/test_systemctl_ls.py","lines_changed":8},{"name":"tests/test_systemctl_luf.py","lines_changed":8},{"name":"tests/test_uname.py","lines_changed":16},{"name":"tests/test_uptime.py","lines_changed":16},{"name":"tests/test_w.py","lines_changed":16},{"name":"tests/test_who.py","lines_changed":24},{"name":"tests/test_xml.py","lines_changed":8},{"name":"tests/test_yaml.py","lines_changed":8}]},"message":"add utf-8 encoding for testing on Windows"},{"commit":"f48e229202f8ab1ebfa502ca57bb31cf673c7a62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":192,"deletions":192,"files":["tests/test_arp.py","tests/test_blkid.py","tests/test_crontab.py","tests/test_crontab_u.py","tests/test_csv.py","tests/test_df.py","tests/test_dig.py","tests/test_du.py","tests/test_env.py","tests/test_free.py","tests/test_fstab.py","tests/test_group.py","tests/test_gshadow.py","tests/test_history.py","tests/test_hosts.py","tests/test_id.py","tests/test_ifconfig.py","tests/test_ini.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_last.py"],"file_stats":[{"name":"tests/test_arp.py","lines_changed":32},{"name":"tests/test_blkid.py","lines_changed":40},{"name":"tests/test_crontab.py","lines_changed":4},{"name":"tests/test_crontab_u.py","lines_changed":8},{"name":"tests/test_csv.py","lines_changed":36},{"name":"tests/test_df.py","lines_changed":32},{"name":"tests/test_dig.py","lines_changed":24},{"name":"tests/test_du.py","lines_changed":16},{"name":"tests/test_env.py","lines_changed":8},{"name":"tests/test_free.py","lines_changed":16},{"name":"tests/test_fstab.py","lines_changed":8},{"name":"tests/test_group.py","lines_changed":12},{"name":"tests/test_gshadow.py","lines_changed":8},{"name":"tests/test_history.py","lines_changed":8},{"name":"tests/test_hosts.py","lines_changed":8},{"name":"tests/test_id.py","lines_changed":8},{"name":"tests/test_ifconfig.py","lines_changed":24},{"name":"tests/test_ini.py","lines_changed":8},{"name":"tests/test_iptables.py","lines_changed":48},{"name":"tests/test_jobs.py","lines_changed":8},{"name":"tests/test_last.py","lines_changed":28}]},"message":"utf-8 open for windows tests"},{"commit":"799fec92c39b1ff0696c6ebb182c4bef66b86e56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["tests/test_pip_show.py","tests/test_systemctl.py"],"file_stats":[{"name":"tests/test_pip_show.py","lines_changed":16},{"name":"tests/test_systemctl.py","lines_changed":8}]},"message":"utf-8 for windows support"},{"commit":"87a41c2fcaa395f108b5a5126ed77f7cc7fe5d6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["tests/test_lsblk.py","tests/test_stat.py"],"file_stats":[{"name":"tests/test_lsblk.py","lines_changed":16},{"name":"tests/test_stat.py","lines_changed":8}]},"message":"add utf-8 to open function"},{"commit":"7f85de0c46cda95d57b9677ba0ca3ea59690e502","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"add windows-latest"},{"commit":"13661b19934a74417713e98e3e1e4df6bb0f29ad","merge":"5f798d6 51d5c38","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #37 from philippeitis/continuous_integration"},{"commit":"51d5c3892d6ff1e2e6ac7c4f3e496e7d9ed4b6a7","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"Remove Windows tests, due to lack of support."},{"commit":"e4eab4641ac15220f2787c5d27b443ab8c718b86","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":3}]},"message":"Change line in blkid.py to trigger CI"},{"commit":"9b148e0ba37e18749d95608e1bac6c090ab83ee2","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["requirements.txt"],"file_stats":[{"name":"requirements.txt","lines_changed":3}]},"message":"Add requirements.txt"},{"commit":"de28932650d5027e2781011f1243b89f053b241d","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":7,"deletions":6,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":13}]},"message":"Consolidate dictionary into creation, trigger CI"},{"commit":"5f798d603e461d2de5adf74662ba4d4b121f28f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":3}]},"message":"version bump and ack to philippeitis"},{"commit":"a0757b2dd3fc0f3e26622941d93bd909dae0a1f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":5,"files":["jc/parsers/foo.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":6}]},"message":"optimize line parsing"},{"commit":"498d51b4e802cb40cac58aae1eff1f723bbbd896","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":31,"deletions":0,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":31}]},"message":"Enable Continuous Integration with GitHub Actions."},{"commit":"b06b6bae3f64f591c9075812dc1b632ef6d2da37","merge":"6aa2d5a 0652768","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #36 from philippeitis/patch-3"},{"commit":"b5eaff21372a58aefb66e5afc5e863db8355fee1","merge":"d75c406 c01bcd3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #35 from kellyjonbrazil/revert-34-patch-3"},{"commit":"c01bcd3734382a0c388d9f4041fc888171ca7675","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":25,"deletions":12,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":37}]},"message":"Revert \"Simplify process() in history.py, avoid list allocation in parse()\""},{"commit":"d75c4068caaf4adbe9a39fa452ae867421053673","merge":"d96b3a6 0652768","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #34 from philippeitis/patch-3"},{"commit":"6aa2d5a3d26f9f00c3334928f6f0e501860433da","merge":"69576f6 a63408c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #33 from philippeitis/patch-2"},{"commit":"065276805f0f2dd23a6382f0120ca07e9eae116f","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":12,"deletions":25,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":37}]},"message":"Simplify process() in history.py, avoid list allocation in parse()"},{"commit":"a63408c8cf3f99646be2b375f651d6cf417f7ae0","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"Handle case where only options are passed."},{"commit":"69576f6bfae073196627a0a39b5ececb8666d25c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6}]},"message":"minor sytax fixes"},{"commit":"19845624e2996da4653efc2f312aceb514feaf5c","merge":"d96b3a6 22ff296","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #32 from philippeitis/patch-1"},{"commit":"22ff2964e9889587711e779ac24f8f8034212f5e","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":62,"deletions":75,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":137}]},"message":"Simplify main(), magic() methods."},{"commit":"d96b3a65a98bc135d21d4feafc0a43317b5a11fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"4989445ef4bb8919d9b3b95e2fcee77ca7692aec","merge":"53ee2c3 6770892","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #30 from kellyjonbrazil/dev"},{"commit":"6770892acd49aced225dbccf39290f33522c9001","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add release notes link"},{"commit":"d4eba8740fc325756f3db96ab37a5383540cbeff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"release date 3/3"},{"commit":"9f607605605e47990f97ccfd48fde19a14e036e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["tests/test_group.py","tests/test_gshadow.py"],"file_stats":[{"name":"tests/test_group.py","lines_changed":52},{"name":"tests/test_gshadow.py","lines_changed":40}]},"message":"add group and gshadow tests"},{"commit":"0a8f8ac934f040141e6a4eec8cf7170e1ca73294","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"add group and gshadow parsers"},{"commit":"6ae24c82447bcff606e7027dd01b916293b49584","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":274,"deletions":0,"files":["tests/fixtures/centos-7.7/group.json","tests/fixtures/centos-7.7/group.out","tests/fixtures/centos-7.7/gshadow.json","tests/fixtures/centos-7.7/gshadow.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/group.json","tests/fixtures/osx-10.14.6/group.out","tests/fixtures/ubuntu-18.04/group.json","tests/fixtures/ubuntu-18.04/group.out","tests/fixtures/ubuntu-18.04/gshadow.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/group.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/group.out","lines_changed":39},{"name":"tests/fixtures/centos-7.7/gshadow.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/gshadow.out","lines_changed":39},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":3},{"name":"tests/fixtures/osx-10.14.6/group.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/group.out","lines_changed":135},{"name":"tests/fixtures/ubuntu-18.04/group.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/group.out","lines_changed":53},{"name":"tests/fixtures/ubuntu-18.04/gshadow.json","lines_changed":1}]},"message":"add group and gshadow test fixtures"},{"commit":"d3679082a8c5cff76eb7de67c33fe716a1402182","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":64,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":64}]},"message":"add group and gshadow parsers"},{"commit":"fb08b42dca135705a3759435335d95c898d47f60","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":21,"deletions":21,"files":["docs/parsers/group.md","jc/parsers/group.py"],"file_stats":[{"name":"docs/parsers/group.md","lines_changed":18},{"name":"jc/parsers/group.py","lines_changed":24}]},"message":"change 'group_list' to 'members'"},{"commit":"4aeaa9f42a88bf4e05c8780a35cc8c4d83c9b842","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":316,"deletions":0,"files":["docgen.sh","docs/parsers/gshadow.md","jc/cli.py","jc/parsers/gshadow.py","tests/fixtures/ubuntu-18.04/gshadow.out"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/gshadow.md","lines_changed":109},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/gshadow.py","lines_changed":152},{"name":"tests/fixtures/ubuntu-18.04/gshadow.out","lines_changed":53}]},"message":"add /etc/gshadow parser"},{"commit":"5f5693da048cb4739dc56500c672dc8fbccaaf32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["docs/parsers/csv.md"],"file_stats":[{"name":"docs/parsers/csv.md","lines_changed":3}]},"message":"spelling fix"},{"commit":"5eb0f61727f92a84fb3620e13db072167ef552ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":333,"deletions":0,"files":["docgen.sh","docs/parsers/group.md","jc/cli.py","jc/parsers/group.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/group.md","lines_changed":141},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/group.py","lines_changed":190}]},"message":"add /etc/group file parser"},{"commit":"958e998991b1cc61dc1dc341b90cd53f4691cd43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/csv.py"],"file_stats":[{"name":"jc/parsers/csv.py","lines_changed":4}]},"message":"formatting"},{"commit":"b78c1509f67fb76d17ac97193a2851d8d9e17f62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/csv.py"],"file_stats":[{"name":"jc/parsers/csv.py","lines_changed":10}]},"message":"try/except dialect detection"},{"commit":"ce184d4d57faa3f1bca5bcaa02da7a5a5d995eb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":20,"insertions":24054,"deletions":0,"files":["tests/fixtures/generic/csv-biostats.csv","tests/fixtures/generic/csv-biostats.json","tests/fixtures/generic/csv-cities.csv","tests/fixtures/generic/csv-cities.json","tests/fixtures/generic/csv-deniro.csv","tests/fixtures/generic/csv-deniro.json","tests/fixtures/generic/csv-example.csv","tests/fixtures/generic/csv-example.json","tests/fixtures/generic/csv-flyrna.json","tests/fixtures/generic/csv-flyrna.tsv","tests/fixtures/generic/csv-flyrna2.json","tests/fixtures/generic/csv-flyrna2.tsv","tests/fixtures/generic/csv-homes-pipe.csv","tests/fixtures/generic/csv-homes-pipe.json","tests/fixtures/generic/csv-homes.csv","tests/fixtures/generic/csv-homes.json","tests/fixtures/generic/csv-insurance.csv","tests/fixtures/generic/csv-insurance.json","tests/fixtures/generic/oscar_age_male.csv","tests/test_csv.py"],"file_stats":[{"name":"tests/fixtures/generic/csv-biostats.csv","lines_changed":20},{"name":"tests/fixtures/generic/csv-biostats.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-cities.csv","lines_changed":130},{"name":"tests/fixtures/generic/csv-cities.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-deniro.csv","lines_changed":89},{"name":"tests/fixtures/generic/csv-deniro.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-example.csv","lines_changed":2},{"name":"tests/fixtures/generic/csv-example.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna.tsv","lines_changed":11767},{"name":"tests/fixtures/generic/csv-flyrna2.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna2.tsv","lines_changed":11767},{"name":"tests/fixtures/generic/csv-homes-pipe.csv","lines_changed":3},{"name":"tests/fixtures/generic/csv-homes-pipe.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-homes.csv","lines_changed":51},{"name":"tests/fixtures/generic/csv-homes.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-insurance.csv","lines_changed":1},{"name":"tests/fixtures/generic/csv-insurance.json","lines_changed":1},{"name":"tests/fixtures/generic/oscar_age_male.csv","lines_changed":91},{"name":"tests/test_csv.py","lines_changed":124}]},"message":"add csv parser tests"},{"commit":"b4c3714ced9ee5cc6a7ef0c59a43cf85e1cb9824","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"removed [OPTIONS] PARSER syntax. still works but prefer the PARSER [OPTIONS] syntax for better performance"},{"commit":"5b7dfa043864f1a3f34aa4ef5c6554a2dfe185f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"formatting"},{"commit":"391a3884765780497dc34e0e9938ff5032c81291","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":49,"deletions":0,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":48},{"name":"changelog.txt","lines_changed":1}]},"message":"doc update"},{"commit":"d9c4e2ed4c0f908f4b63c2376b53ddfd32a0fae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":241,"deletions":0,"files":["docgen.sh","docs/parsers/csv.md","jc/cli.py","jc/parsers/csv.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/csv.md","lines_changed":104},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/csv.py","lines_changed":135}]},"message":"add csv file parser"},{"commit":"0c42db38b102987629e40cee2716b826161e6e94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/who.md","jc/parsers/who.py"],"file_stats":[{"name":"docs/parsers/who.md","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":2}]},"message":"doc update"},{"commit":"2f9be8bf33f8be5651d06da9d316f7894606df19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"simplify usage"},{"commit":"e8c00155e861b9eedfdf37a22912271bec581d62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"add -b to warning message"},{"commit":"cc88fdd9ee3951d7ef2aa881cc12f0b7f96aef86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"update example"},{"commit":"d9de11ef1d846a9625dad0adb962b864404c90c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":16}]},"message":"add another who example"},{"commit":"0ceda97d0968b67b70cdbb68f7a62657e79c9935","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":88,"deletions":0,"files":["tests/test_who.py"],"file_stats":[{"name":"tests/test_who.py","lines_changed":88}]},"message":"who parser tests"},{"commit":"d0dec92ba84640ddc40da7c6faa6568b76757e04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":36,"deletions":0,"files":["tests/fixtures/centos-7.7/who-a.json","tests/fixtures/centos-7.7/who-a.out","tests/fixtures/centos-7.7/who.json","tests/fixtures/centos-7.7/who.out","tests/fixtures/osx-10.14.6/who-a.json","tests/fixtures/osx-10.14.6/who-a.out","tests/fixtures/osx-10.14.6/who.json","tests/fixtures/osx-10.14.6/who.out","tests/fixtures/ubuntu-18.04/who-a.json","tests/fixtures/ubuntu-18.04/who-a.out","tests/fixtures/ubuntu-18.04/who.json","tests/fixtures/ubuntu-18.04/who.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/who-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/who-a.out","lines_changed":6},{"name":"tests/fixtures/centos-7.7/who.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/who.out","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/who-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/who-a.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/who.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/who.out","lines_changed":4},{"name":"tests/fixtures/ubuntu-18.04/who-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/who-a.out","lines_changed":6},{"name":"tests/fixtures/ubuntu-18.04/who.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/who.out","lines_changed":3}]},"message":"add who test fixtures"},{"commit":"d420c008d8aaa0879fa5a3f236d81acb506376c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/who.py","lines_changed":9}]},"message":"fix for pts lines with no user info"},{"commit":"f0b32db4333477e22cc40de62cf026a6a7aa2eb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","docs/parsers/who.md"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docs/parsers/who.md","lines_changed":8}]},"message":"who doc update"},{"commit":"bc838eda591473d32b11a885e60ef653925739d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/who.py","lines_changed":9}]},"message":"fix output for non-extended"},{"commit":"afe55b6af07b74816d33d9555ffaa1c1921dd27a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":46,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":46}]},"message":"add who parser"},{"commit":"dd3a3ac302d7b35beef1181e74aed0faf96fd3e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":255,"deletions":9,"files":["changelog.txt","docgen.sh","docs/parsers/who.md","jc/parsers/who.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/who.md","lines_changed":150},{"name":"jc/parsers/who.py","lines_changed":112}]},"message":"doc update and process pid integers"},{"commit":"f9982a79474c1838f37fc0ff88437980b228d7a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":2,"files":["jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/who.py","lines_changed":13}]},"message":"fixes for from and comment fields"},{"commit":"07c1be9e9ad9f62cf76c23788152de8f3530ee16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":170,"deletions":0,"files":["jc/cli.py","jc/parsers/who.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/who.py","lines_changed":169}]},"message":"add who command parser"},{"commit":"f832b88755bfbd3878ec402e603180e6825279be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["tests/test_passwd.py","tests/test_shadow.py"],"file_stats":[{"name":"tests/test_passwd.py","lines_changed":52},{"name":"tests/test_shadow.py","lines_changed":40}]},"message":"add passwd and shadow tests"},{"commit":"0fac757efca41db062b2f65acc727963c5fb353c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"add passwd and shadow parsers"},{"commit":"fc15742065531152f3d5895042eeb806e33a192a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":215,"deletions":0,"files":["tests/fixtures/centos-7.7/passwd.json","tests/fixtures/centos-7.7/passwd.out","tests/fixtures/centos-7.7/shadow.json","tests/fixtures/centos-7.7/shadow.out","tests/fixtures/osx-10.14.6/passwd.json","tests/fixtures/osx-10.14.6/passwd.out","tests/fixtures/ubuntu-18.04/passwd.json","tests/fixtures/ubuntu-18.04/passwd.out","tests/fixtures/ubuntu-18.04/shadow.json","tests/fixtures/ubuntu-18.04/shadow.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/passwd.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/passwd.out","lines_changed":21},{"name":"tests/fixtures/centos-7.7/shadow.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/shadow.out","lines_changed":21},{"name":"tests/fixtures/osx-10.14.6/passwd.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/passwd.out","lines_changed":108},{"name":"tests/fixtures/ubuntu-18.04/passwd.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/passwd.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/shadow.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/shadow.out","lines_changed":30}]},"message":"passwd and shadow test fixtures"},{"commit":"6f2466a1319eaa4256ae7a2a0f23b3ff37882d37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":73,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":73}]},"message":"update readme with /etc/passwd and /etc/shadow file parsers"},{"commit":"4b90e22f0a9c6790bca62c8314945a7ffc6e267b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":137,"deletions":9,"files":["docs/parsers/shadow.md","jc/parsers/shadow.py"],"file_stats":[{"name":"docs/parsers/shadow.md","lines_changed":72},{"name":"jc/parsers/shadow.py","lines_changed":74}]},"message":"doc update"},{"commit":"c4935687853fb3b079ae42614793cdafe68e124e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/passwd.md","jc/parsers/passwd.py"],"file_stats":[{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":2}]},"message":"doc fix"},{"commit":"1cdf004b7728901dc137e57b0c8994edfdd6d417","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":190,"deletions":0,"files":["docgen.sh","docs/parsers/shadow.md","jc/cli.py","jc/parsers/shadow.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/shadow.md","lines_changed":69},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/shadow.py","lines_changed":119}]},"message":"add /etc/shadow parser"},{"commit":"a4ea50426184d30cbe849a8f80bfd5c975075c9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":303,"deletions":0,"files":["docgen.sh","docs/parsers/passwd.md","jc/cli.py","jc/parsers/passwd.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/passwd.md","lines_changed":126},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/passwd.py","lines_changed":175}]},"message":"add /etc/passwd parser"},{"commit":"4c2c234c3bf68d1aac66bd4d1f22b9f97e99128d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":16,"insertions":673,"deletions":0,"files":["tests/fixtures/centos-7.7/last-w.json","tests/fixtures/centos-7.7/last-w.out","tests/fixtures/centos-7.7/last.json","tests/fixtures/centos-7.7/last.out","tests/fixtures/centos-7.7/lastb.json","tests/fixtures/centos-7.7/lastb.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/last.json","tests/fixtures/osx-10.14.6/last.out","tests/fixtures/ubuntu-18.04/last-w.json","tests/fixtures/ubuntu-18.04/last-w.out","tests/fixtures/ubuntu-18.04/last.json","tests/fixtures/ubuntu-18.04/last.out","tests/fixtures/ubuntu-18.04/lastb.json","tests/fixtures/ubuntu-18.04/lastb.out","tests/test_last.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/last-w.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/last-w.out","lines_changed":69},{"name":"tests/fixtures/centos-7.7/last.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/last.out","lines_changed":69},{"name":"tests/fixtures/centos-7.7/lastb.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lastb.out","lines_changed":6},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":4},{"name":"tests/fixtures/osx-10.14.6/last.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/last.out","lines_changed":383},{"name":"tests/fixtures/ubuntu-18.04/last-w.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/last-w.out","lines_changed":16},{"name":"tests/fixtures/ubuntu-18.04/last.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/last.out","lines_changed":16},{"name":"tests/fixtures/ubuntu-18.04/lastb.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lastb.out","lines_changed":3},{"name":"tests/test_last.py","lines_changed":100}]},"message":"add last and lastb tests"},{"commit":"3d4c0f3e89dab6496ff74df350e3238d6625933c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":22,"insertions":285,"deletions":0,"files":["tests/fixtures/centos-7.7/blkid-ip-multi.json","tests/fixtures/centos-7.7/blkid-ip-multi.out","tests/fixtures/centos-7.7/blkid-ip-udev-multi.json","tests/fixtures/centos-7.7/blkid-ip-udev-multi.out","tests/fixtures/centos-7.7/blkid-ip-udev.json","tests/fixtures/centos-7.7/blkid-ip-udev.out","tests/fixtures/centos-7.7/blkid-sda2.json","tests/fixtures/centos-7.7/blkid-sda2.out","tests/fixtures/centos-7.7/blkid.json","tests/fixtures/centos-7.7/blkid.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/blkid-ip-multi.json","tests/fixtures/ubuntu-18.04/blkid-ip-multi.out",".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.json",".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.out","tests/fixtures/ubuntu-18.04/blkid-ip-udev.json","tests/fixtures/ubuntu-18.04/blkid-ip-udev.out","tests/fixtures/ubuntu-18.04/blkid-sda2.json","tests/fixtures/ubuntu-18.04/blkid-sda2.out","tests/fixtures/ubuntu-18.04/blkid.json","tests/fixtures/ubuntu-18.04/blkid.out","tests/test_blkid.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/blkid-ip-multi.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid-ip-multi.out","lines_changed":29},{"name":"tests/fixtures/centos-7.7/blkid-ip-udev-multi.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid-ip-udev-multi.out","lines_changed":29},{"name":"tests/fixtures/centos-7.7/blkid-ip-udev.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid-ip-udev.out","lines_changed":14},{"name":"tests/fixtures/centos-7.7/blkid-sda2.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid-sda2.out","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid.out","lines_changed":4},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":6},{"name":"tests/fixtures/ubuntu-18.04/blkid-ip-multi.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid-ip-multi.out","lines_changed":2},{"name":".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.json","lines_changed":1},{"name":".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/blkid-ip-udev.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid-ip-udev.out","lines_changed":12},{"name":"tests/fixtures/ubuntu-18.04/blkid-sda2.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid-sda2.out","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid.out","lines_changed":15},{"name":"tests/test_blkid.py","lines_changed":136}]},"message":"add blkid tests"},{"commit":"52fad02903468c05d2422a340ad8dbcdf18ed475","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":12},{"name":"jc/parsers/ls.py","lines_changed":12}]},"message":"doc update"},{"commit":"9dcabc057c40e345971a08474b5b886e6b60a8de","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":10}]},"message":"support multi device udev output"},{"commit":"db8c1079ddc25922ab6a20d0f71fb19af38f8092","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":8}]},"message":"use maxsplit=1 in case there are multiple '=' delimiters"},{"commit":"8f954673abdbbd4d9b9da3eacc61b335b4909f89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":5}]},"message":"use shlex split for values within quotations that have spaces"},{"commit":"79522d1c7dd4dec15b75b06dda002752f7d97e36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"doc fixes"},{"commit":"a18bf030794efef125c70a32fe82855e47649b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/parsers/last.py","jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":12}]},"message":"use raw strings for regular expressions"},{"commit":"c02b6b5d827d26b43db0a3457124714aa2dbbc98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":81,"deletions":1,"files":["README.md","changelog.txt","setup.py"],"file_stats":[{"name":"README.md","lines_changed":79},{"name":"changelog.txt","lines_changed":1},{"name":"setup.py","lines_changed":2}]},"message":"doc updates"},{"commit":"f99b4232848b0d868804acc4125836bfcf475bba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":134,"deletions":29,"files":["docs/parsers/blkid.md","jc/parsers/blkid.py"],"file_stats":[{"name":"docs/parsers/blkid.md","lines_changed":115},{"name":"jc/parsers/blkid.py","lines_changed":48}]},"message":"doc update"},{"commit":"d7d9d45d4fba89e74f7490c463eb26bf20a5d127","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":2}]},"message":"add missing comma"},{"commit":"90065ec0cdc8c5abc13bc0027f63658dacf3cfb2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":31,"deletions":26,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":57}]},"message":"add more integers"},{"commit":"51157ebb867a48332c768bf3086614944aebdb62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":4}]},"message":"another devname fix"},{"commit":"96d95c79ca0938e326f55f858f8153df9cb49e44","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":6}]},"message":"devname fix"},{"commit":"e5da34c23306463e8707b15676db0ca53bf66757","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":3}]},"message":"check if devname key exists before renaming"},{"commit":"f09d657f7728242947db3dc63ff6779d08c37866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":5}]},"message":"rename devname to device"},{"commit":"0f4b0189f54dc0b3622cd407c5565e53ea111379","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":35,"deletions":3,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":38}]},"message":"process integer values"},{"commit":"4666042abb3142e2cfb518db9ffe22d9e608e090","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":216,"deletions":0,"files":["docgen.sh","docs/parsers/blkid.md","jc/cli.py","jc/parsers/blkid.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/blkid.md","lines_changed":83},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/blkid.py","lines_changed":131}]},"message":"add blkid parser"},{"commit":"027d544c2bb778adc0ee9463832f19b10e099a0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add last and lastb parser"},{"commit":"f1967d0138d27bde864c2400aa75baa8a39bbfde","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":3}]},"message":"system_boot fix"},{"commit":"c1d896027dd1ce021e048b3e77eab24ff59d08bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":3}]},"message":"fix system_boot tty"},{"commit":"5c2d2a66187d32d62b31b7c7f13e502fdb7f9635","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":190,"deletions":6,"files":["docgen.sh","docs/parsers/last.md","jc/parsers/last.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/last.md","lines_changed":118},{"name":"jc/parsers/last.py","lines_changed":77}]},"message":"process function and docs"},{"commit":"997b269b0b7e53a456e2a0bd997ead6c2ae843bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":3}]},"message":"btmp fix"},{"commit":"61257e7525c25827cb8057ed5c612e54ea9b9637","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":119,"deletions":1,"files":["jc/cli.py","jc/parsers/last.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/last.py","lines_changed":117}]},"message":"add last and lastb parser"},{"commit":"53ee2c36310cb84390ef96644aee6871769151c9","merge":"2ad3167 8bfa0bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #29 from kellyjonbrazil/dev"},{"commit":"8bfa0bddec9ff1c21972019467dcf5738ab3afd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to 1.7.5"},{"commit":"ad61e6bc81177a2add7d052bf1ddec5f1b3f2976","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":26,"insertions":598,"deletions":133,"files":["tests/fixtures/centos-7.7/ls-R-newlines.json","tests/fixtures/centos-7.7/ls-R-newlines.out","tests/fixtures/centos-7.7/ls-l-newlines.json","tests/fixtures/centos-7.7/ls-l-newlines.out","tests/fixtures/centos-7.7/ls-lR-newlines.json","tests/fixtures/centos-7.7/ls-lR-newlines.out","tests/fixtures/centos-7.7/ls-newlines.json","tests/fixtures/centos-7.7/ls-newlines.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/ls-R-newlines.json","tests/fixtures/osx-10.14.6/ls-R-newlines.out","tests/fixtures/osx-10.14.6/ls-l-newlines.json","tests/fixtures/osx-10.14.6/ls-l-newlines.out","tests/fixtures/osx-10.14.6/ls-lR-newlines.json","tests/fixtures/osx-10.14.6/ls-lR-newlines.out","tests/fixtures/osx-10.14.6/ls-newlines.json","tests/fixtures/osx-10.14.6/ls-newlines.out","tests/fixtures/ubuntu-18.04/ls-R-newlines.json","tests/fixtures/ubuntu-18.04/ls-R-newlines.out","tests/fixtures/ubuntu-18.04/ls-l-newlines.json","tests/fixtures/ubuntu-18.04/ls-l-newlines.out","tests/fixtures/ubuntu-18.04/ls-lR-newlines.json","tests/fixtures/ubuntu-18.04/ls-lR-newlines.out","tests/fixtures/ubuntu-18.04/ls-newlines.json","tests/fixtures/ubuntu-18.04/ls-newlines.out","tests/test_ls.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ls-R-newlines.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-R-newlines.out","lines_changed":43},{"name":"tests/fixtures/centos-7.7/ls-l-newlines.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-l-newlines.out","lines_changed":34},{"name":"tests/fixtures/centos-7.7/ls-lR-newlines.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-lR-newlines.out","lines_changed":45},{"name":"tests/fixtures/centos-7.7/ls-newlines.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-newlines.out","lines_changed":33},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":15},{"name":"tests/fixtures/osx-10.14.6/ls-R-newlines.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-R-newlines.out","lines_changed":36},{"name":"tests/fixtures/osx-10.14.6/ls-l-newlines.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-l-newlines.out","lines_changed":34},{"name":"tests/fixtures/osx-10.14.6/ls-lR-newlines.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-lR-newlines.out","lines_changed":38},{"name":"tests/fixtures/osx-10.14.6/ls-newlines.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-newlines.out","lines_changed":148},{"name":"tests/fixtures/ubuntu-18.04/ls-R-newlines.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-R-newlines.out","lines_changed":40},{"name":"tests/fixtures/ubuntu-18.04/ls-l-newlines.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-l-newlines.out","lines_changed":34},{"name":"tests/fixtures/ubuntu-18.04/ls-lR-newlines.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-lR-newlines.out","lines_changed":42},{"name":"tests/fixtures/ubuntu-18.04/ls-newlines.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-newlines.out","lines_changed":33},{"name":"tests/test_ls.py","lines_changed":144}]},"message":"add ls tests for filenames with newline characters"},{"commit":"873b5ba8acf599d083d6031b818d5fca83cbca9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":31,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":58}]},"message":"move examples to bottom"},{"commit":"6ae50054e2e8c7ca730013b43062eedc230c0ad4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"readme update"},{"commit":"22a35f41bf9c404d3532611f5929143d04b10010","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":10}]},"message":"move variables to top"},{"commit":"961696c963215a9dab56113ff89f21a6e9739df6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"add a warning if newlines are detected in naked ls"},{"commit":"c7b7f1a5dcf77a1f4c23ef6bbf5683fd1a055f72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"fix for files with newlines in naked ls"},{"commit":"b5a0d650b128d8af81bb14dd5d007349529cb66f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":151,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-newlines.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ls-newlines.out","lines_changed":151}]},"message":"ls output with newlines"},{"commit":"573b27946474276592ee7494689ce9a88f5a05f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":6}]},"message":"fixup for filenames that start with a newline character"},{"commit":"116e07f1614b4a45eb58ffcfe20b5efa71c473a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":7,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":13}]},"message":"fixes for multiple consecutive newlines and trailing newlines in filenames"},{"commit":"964868c8aff99edf37b0db41c7d16f8b84ac4704","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":21,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":20}]},"message":"add support for newlines in filenames (only with ls -l)"},{"commit":"c8dac32df8102c2b782e87d55bb95ca2d9490185","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"readme update"},{"commit":"72a0016bd833699c3819baa899f335f75b8c1943","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"use link to anchor for Parsers"},{"commit":"2ad316743460bb6620e7ede251e1dc2739b073fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update doc url"},{"commit":"ddabfaa05c63f886b17e5b4d37cd83fcfdb9b221","merge":"873771d f857523","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #25 from kellyjonbrazil/dev"},{"commit":"f857523ca756864211b6b18af5a8886e5db200bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"bump to version 1.7.4"},{"commit":"00d53858e820f00ba015bc25629100c8e5495221","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add note about aliases not being supported"},{"commit":"c008167e660929a91606bb96498cdc113e815f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":1},{"name":"jc/parsers/ls.py","lines_changed":1}]},"message":"add time-style=full-iso option to doc"},{"commit":"102344a041e9e0aff8b6d9db1873ba1064f7e895","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"formatting"},{"commit":"c865298ef3613fe6ce17f41c15209a69940af1ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":3}]},"message":"remove unnecessary enumerate in for loop"},{"commit":"6ac03faf939bcda8930a48a5e832b557813e2129","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"Revert \"add ubuntu and centos default ls aliases to magic_commands\""},{"commit":"49c2701743706b6cbf0e52b2c7f275e301315189","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"add ubuntu and centos default ls aliases to magic_commands"},{"commit":"d1a271b08e64b42be8cec11377b0e18435a0caec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":35333,"deletions":1374,"files":["tests/fixtures/centos-7.7/ls-R.json","tests/fixtures/centos-7.7/ls-R.out","tests/fixtures/centos-7.7/ls-alR.json","tests/fixtures/centos-7.7/ls-alR.out","tests/fixtures/centos-7.7/ls-glob.json","tests/fixtures/centos-7.7/ls-glob.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/ls-R.json","tests/fixtures/osx-10.14.6/ls-R.out","tests/fixtures/osx-10.14.6/ls-alR.json","tests/fixtures/osx-10.14.6/ls-alR.out","tests/fixtures/osx-10.14.6/ls-glob.json","tests/fixtures/osx-10.14.6/ls-glob.out","tests/fixtures/ubuntu-18.04/ls-R.json","tests/fixtures/ubuntu-18.04/ls-R.out","tests/fixtures/ubuntu-18.04/ls-alR.json","tests/fixtures/ubuntu-18.04/ls-alR.out","tests/fixtures/ubuntu-18.04/ls-glob.json","tests/fixtures/ubuntu-18.04/ls-glob.out","tests/fixtures/ubuntu-18.04/ls-lR.out","tests/test_ls.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ls-R.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-R.out","lines_changed":5089},{"name":"tests/fixtures/centos-7.7/ls-alR.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-alR.out","lines_changed":4997},{"name":"tests/fixtures/centos-7.7/ls-glob.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-glob.out","lines_changed":1919},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":5},{"name":"tests/fixtures/osx-10.14.6/ls-R.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-R.out","lines_changed":5018},{"name":"tests/fixtures/osx-10.14.6/ls-alR.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-alR.out","lines_changed":4997},{"name":"tests/fixtures/osx-10.14.6/ls-glob.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-glob.out","lines_changed":1831},{"name":"tests/fixtures/ubuntu-18.04/ls-R.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-R.out","lines_changed":5639},{"name":"tests/fixtures/ubuntu-18.04/ls-alR.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-alR.out","lines_changed":5026},{"name":"tests/fixtures/ubuntu-18.04/ls-glob.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-glob.out","lines_changed":1357},{"name":"tests/fixtures/ubuntu-18.04/ls-lR.out","lines_changed":712},{"name":"tests/test_ls.py","lines_changed":108}]},"message":"add new ls tests for recursive and multiple directories with glob"},{"commit":"7388ad19b9d252d3e66659e4bc37171cef2a9748","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":6,"deletions":4,"files":["docs/parsers/ls.md","jc/cli.py","jc/parsers/ls.py","setup.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"setup.py","lines_changed":2}]},"message":"bump to v1.8.0"},{"commit":"2e63cb5fadd032c7cb54a618e8b374ee853abcca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"version bump ls to 1.1"},{"commit":"e7f14d02b12c7dcba309f2d28a0f171769d1ba37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1438,"deletions":8,"files":["jc/parsers/ls.py","tests/fixtures/ubuntu-18.04/ls-R.out","tests/fixtures/ubuntu-18.04/ls-lR.out"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":48},{"name":"tests/fixtures/ubuntu-18.04/ls-R.out","lines_changed":686},{"name":"tests/fixtures/ubuntu-18.04/ls-lR.out","lines_changed":712}]},"message":"update ls to allow multi directory (glob and -R). Adds 'parent' key if found"},{"commit":"873771d05ab0b77163c95d2c37e11edf38451832","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"d7de122e36e0698e00f321fbac8dc0b543cf9e8a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"prettify link"},{"commit":"4ef0434f536c6658ddc2b48a3db113df2fd26000","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":6}]},"message":"formatting update"},{"commit":"1aa2c9925996f2358b6272547db755ec3098a8a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":2,"files":["README.md","jc/parsers/history.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":1}]},"message":"removed history from magic syntax"},{"commit":"c2450b27b079b02ed3f4ece9e36547f01cd4b139","merge":"028e136 14d6d8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #22 from kellyjonbrazil/dev"},{"commit":"14d6d8b84f0ddeff984aff486e2e697a91ac6fb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump to 1.7.3"},{"commit":"f0e3846c038ec5507cd4a19980d83ee0fb969ef5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":5}]},"message":"formatting"},{"commit":"6ba64f1128373843b068226424a3af545ac9d22c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"usage update"},{"commit":"13bcdbc6c9a81bc5d52fe7a84e6a0a34908db8bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"doc update"},{"commit":"cfba62db20674d788601354211a10e2b1675a0c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":19}]},"message":"correct parser search in magic()"},{"commit":"18fb69e36e303a3f9530dcb80354b25bfdbb931d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"docs/parsers link"},{"commit":"474eb0f3fdeaa612e189d745b12a5ed9c6e0a31b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"doc updates"},{"commit":"7f47b533701e60449351d5da03cd5960e0dec9ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":90,"deletions":68,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":158}]},"message":"add alternate magic syntax"},{"commit":"dc2907d3ce101043b30bcce71abb4bb02897f43a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["docs/parsers/crontab.md"],"file_stats":[{"name":"docs/parsers/crontab.md","lines_changed":6}]},"message":"doc update"},{"commit":"1af85811e06c489051c456918284a746ce12c692","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/fstab.py"],"file_stats":[{"name":"jc/parsers/fstab.py","lines_changed":3}]},"message":"remove magic_command info"},{"commit":"1c1b19a478fe5c356a93cd165518429e77fcbdf0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":6}]},"message":"doc update"},{"commit":"66942d64babf932faeb887eb4ec0cab32829321a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":4}]},"message":"changelog update"},{"commit":"2fb6ae08d76e7a5727b2fcdd5def3e3822e0cf72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"fix shlex usage"},{"commit":"bf8811e03e2a5b736f4c084f42400fcde400ff3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]},"message":"add comments"},{"commit":"c8b502c571d3081ca3086e349a426ca252a3bb84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6}]},"message":"remove unnecessary join and add comments"},{"commit":"81c11a975c6ee66a1f83350df8b065a6b07dcc9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"added docstrings"},{"commit":"0d370eb403ab4d9ed11e36776efc08bdd3505c1a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"doc update"},{"commit":"7492c3f1e312cdb0c58c2077db0d60d2cab1e58f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"changelog update"},{"commit":"515a8a84b79c9bf6f3001d3c52faa82a6709b8d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":33,"insertions":33,"deletions":33,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2}]},"message":"add \"command\" to description"},{"commit":"dd6680efb2b15bb8ed676016aae1c65193dfe147","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":29,"deletions":14,"files":["changelog.txt","jc/cli.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":40}]},"message":"allow condensed options (-prdq is equivalent to -p -r -d -q)"},{"commit":"a7158373cd225685f5c398fa36b8d5208e20521c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"comment update"},{"commit":"6d50ec71997cac9c898737de93b8a945f0351e53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":15}]},"message":"add try/except to fix bare jc command condition"},{"commit":"95dbf98e8e03486f74d986683f52699f4f9c9577","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":32}]},"message":"allow options in magic syntax"},{"commit":"d49323e4ebf2a8aebd1d8ea65ef0854ee8bcb29f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":33,"insertions":33,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":1},{"name":"jc/parsers/crontab.py","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":1},{"name":"jc/parsers/du.py","lines_changed":1},{"name":"jc/parsers/env.py","lines_changed":1},{"name":"jc/parsers/foo.py","lines_changed":1},{"name":"jc/parsers/free.py","lines_changed":1},{"name":"jc/parsers/fstab.py","lines_changed":1},{"name":"jc/parsers/history.py","lines_changed":1},{"name":"jc/parsers/id.py","lines_changed":1},{"name":"jc/parsers/ifconfig.py","lines_changed":1},{"name":"jc/parsers/iptables.py","lines_changed":1},{"name":"jc/parsers/jobs.py","lines_changed":1},{"name":"jc/parsers/ls.py","lines_changed":1},{"name":"jc/parsers/lsblk.py","lines_changed":1},{"name":"jc/parsers/lsmod.py","lines_changed":1},{"name":"jc/parsers/lsof.py","lines_changed":1},{"name":"jc/parsers/mount.py","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":1},{"name":"jc/parsers/pip_list.py","lines_changed":1},{"name":"jc/parsers/pip_show.py","lines_changed":1},{"name":"jc/parsers/ps.py","lines_changed":1},{"name":"jc/parsers/route.py","lines_changed":1},{"name":"jc/parsers/ss.py","lines_changed":1},{"name":"jc/parsers/stat.py","lines_changed":1},{"name":"jc/parsers/systemctl.py","lines_changed":1},{"name":"jc/parsers/systemctl_lj.py","lines_changed":1},{"name":"jc/parsers/systemctl_ls.py","lines_changed":1},{"name":"jc/parsers/systemctl_luf.py","lines_changed":1},{"name":"jc/parsers/uname.py","lines_changed":1},{"name":"jc/parsers/uptime.py","lines_changed":1},{"name":"jc/parsers/w.py","lines_changed":1}]},"message":"add magic_commands list to info"},{"commit":"08c1e2aec9d6bb68653dc12ba2272535fb7cef09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add magic syntax"},{"commit":"a2c137df2e6d3b133df5df0bb3f9b1ca69990557","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":66,"deletions":299,"files":["jc/cli.py","jc/cli.py.old"],"file_stats":[{"name":"jc/cli.py","lines_changed":135},{"name":"jc/cli.py.old","lines_changed":230}]},"message":"better magic command syntax logic using introspection information from parser modules"},{"commit":"fe27dcdb8f72b5a288f978b87be2eb930099543e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":319,"deletions":45,"files":["jc/cli.py","jc/cli.py.old"],"file_stats":[{"name":"jc/cli.py","lines_changed":134},{"name":"jc/cli.py.old","lines_changed":230}]},"message":"proof of concept for magic syntax (e.g. jc ls -al)"},{"commit":"028e136161ac15f588845f87907b4565a6ee7be2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":7,"deletions":2,"files":["MANIFEST.in","changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"MANIFEST.in","lines_changed":1},{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":3}]},"message":"bump to 1.7.2: add test fixtures to package"},{"commit":"9a85a0a4d504447b32fb622bb17cebc5e47f687f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/crontab_u.md","jc/parsers/crontab_u.py"],"file_stats":[{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2}]},"message":"fix doc"},{"commit":"3a1cbc4d5063344c3e3a4bf510d651a36beedfb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":14,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":28}]},"message":"move info class to top"},{"commit":"77d334f7f386f79ec0571325500054fdab207f31","merge":"4de8f42 53cdf86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #19 from kellyjonbrazil/dev-1.7.1"},{"commit":"53cdf863acc72dbdb671773e30277f42e9eadc0e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":4}]},"message":"changelog update"},{"commit":"7b7e7fe0fe92edef1e559bd7ae8272530d7ed5c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"changelog update"},{"commit":"0c03132847a3d2bcbdb0b743e1472865916cced4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"fix error codes using sys.exit()"},{"commit":"3b81f7e2a1381958b33962d4531f3fa223c6a83e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"exit code on ctrl-c exit"},{"commit":"3d76437b435660e92633c604c4ad32ee0500a28b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ini.md","docs/parsers/xml.md","jc/parsers/ini.py","jc/parsers/xml.py"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/xml.py","lines_changed":2}]},"message":"doc fix"},{"commit":"4bc54c78cea48682ed0432ea56460a26a0e52f83","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":7,"deletions":7,"files":["docs/parsers/du.md","docs/parsers/history.md","jc/parsers/du.py","jc/parsers/history.py"],"file_stats":[{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":6},{"name":"jc/parsers/history.py","lines_changed":4}]},"message":"fix compatibility list"},{"commit":"3d303a96b9f6d582b1e99a632da539c3bee4df7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":16,"deletions":2,"files":["tests/fixtures/centos-7.7/crontab-u.json","tests/fixtures/centos-7.7/{crontab2.out => crontab-u.out}","tests/fixtures/centos-7.7/crontab.json","tests/fixtures/ubuntu-18.04/crontab-u.json","tests/test_crontab_u.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/crontab-u.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/{crontab2.out => crontab-u.out}","lines_changed":1},{"name":"tests/fixtures/centos-7.7/crontab.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/crontab-u.json","lines_changed":2},{"name":"tests/test_crontab_u.py","lines_changed":12}]},"message":"crontab bug fix and tests"},{"commit":"33c99d031d18e52a8ca85dfc1a8cba0acebfc3bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":2}]},"message":"fix line clobbering bug"},{"commit":"caf7e9f69a22f3c9b3d4624fd2238d6e54d932ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/crontab_u.py"],"file_stats":[{"name":"jc/parsers/crontab_u.py","lines_changed":6}]},"message":"fix line clobbering bug and add user field to shortcuts"},{"commit":"9449f1f5d5e7bc075549549758af5cc3a6c4524f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":9,"deletions":3,"files":["changelog.txt","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/fixtures/centos-7.7/crontab2.out"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/crontab.py","lines_changed":4},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/crontab2.out","lines_changed":5}]},"message":"crontab bugfix: inserting header row was clobbering the first data row"},{"commit":"6bad164b5e2a5b7c7ce82c69b6c091fc079ab2fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":9,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":16}]},"message":"simplify by removing unnecessary getattr calls"},{"commit":"bb5ba7ddb146821db2efe095b6de5ae5b72bb335","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":7}]},"message":"add indent variable to helptext"},{"commit":"8b2e01d5404649e8f94c81ca3b5fa05fe8962220","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"doc update"},{"commit":"ff1159b1deb9b870382a6066166961902679b569","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"exit codes on error"},{"commit":"a2fd3202a0a3df336792f167c546ea3e53ea2332","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/pip_list.py","jc/parsers/pip_show.py"],"file_stats":[{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2}]},"message":"description formatting change"},{"commit":"7b53715b91787a8885d61ddc0079c7ee8f9348a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/crontab_u.py"],"file_stats":[{"name":"jc/parsers/crontab_u.py","lines_changed":2}]},"message":"change description"},{"commit":"e05fc0a5107b348af14ff4bea39d274939fab7dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":8,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":16}]},"message":"change padding of helptext"},{"commit":"43604c33f654b8c19e8cce387ebbf31bd598b73b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"doc update"},{"commit":"eb67c484ff2a9530b434cd6a90c160f6936e1de7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"add crontab-u to parsers list"},{"commit":"a7b7bdd46781d07e6e70d74a41a3944855fde5fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":94,"deletions":92,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":186}]},"message":"load parser modules 'just in time' so we don't need to load all modules at startup"},{"commit":"ab06989a18faf5378f1e73c7016ea02e1218ff9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":10}]},"message":"description updates"},{"commit":"657b722f947b6a0aa7e52a786e4c84f177e9a5c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":8,"deletions":8,"files":["README.md","changelog.txt","docs/parsers/ini.md","jc/parsers/ini.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"changelog.txt","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"jc/parsers/ini.py","lines_changed":6}]},"message":"ini to INI"},{"commit":"dd2aecad2787186b3962723086bb7e13eff4874f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"description update"},{"commit":"c82c5c5c648384eb5a54205ba8590624a3ab4375","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":6}]},"message":"changelog update"},{"commit":"a1761cd68f91e2668d8d7e2fa7774f6496408be6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":42,"deletions":0,"files":["tests/fixtures/centos-7.7/id.json","tests/fixtures/osx-10.14.6/id.json","tests/test_id.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/id.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/id.json","lines_changed":1},{"name":"tests/test_id.py","lines_changed":40}]},"message":"id tests"},{"commit":"d618a7f583629bb7a7fc0854e7349cab07e3e003","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":143,"deletions":9,"files":["README.md","docgen.sh","docs/parsers/id.md","jc/parsers/id.py"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/id.md","lines_changed":133},{"name":"jc/parsers/id.py","lines_changed":12}]},"message":"doc update"},{"commit":"831a42f66096f5efbbf0f6882970c328120f9c9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":48}]},"message":"id formatting"},{"commit":"3b36022e5a1056a28a83494b1ab8fab209399c2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":250,"deletions":1,"files":["README.md","jc/cli.py","jc/parsers/id.py","tests/fixtures/centos-7.7/id.out","tests/fixtures/osx-10.14.6/id.out"],"file_stats":[{"name":"README.md","lines_changed":33},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":214},{"name":"tests/fixtures/centos-7.7/id.out","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/id.out","lines_changed":1}]},"message":"add id parser"},{"commit":"d01dfa25f10f82cd201ae7b4c9cc18313773f8d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]},"message":"changelog updates"},{"commit":"395a99037b4816eb800b289f90372a9b8d7d36cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":89,"deletions":13,"files":["README.md","docs/parsers/history.md","jc/parsers/history.py"],"file_stats":[{"name":"README.md","lines_changed":84},{"name":"docs/parsers/history.md","lines_changed":10},{"name":"jc/parsers/history.py","lines_changed":8}]},"message":"crontab-u and history doc updates"},{"commit":"025986c51d2d4869b17de63a7dd96efa2988e3c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":13,"deletions":3,"files":["jc/parsers/history.py","tests/fixtures/centos-7.7/history.json","tests/fixtures/ubuntu-18.04/history.json"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":12},{"name":"tests/fixtures/centos-7.7/history.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/history.json","lines_changed":2}]},"message":"change history 'line' to integer"},{"commit":"c56b83093ff05f55ef4643c1731cff61d4b9e8ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":202,"deletions":2,"files":["docgen.sh","docs/parsers/crontab.md","docs/parsers/crontab_u.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"docs/parsers/crontab_u.md","lines_changed":199}]},"message":"doc update"},{"commit":"7c712a4133abd843d4da926e4c8d548abd1d6fa3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":52,"deletions":50,"files":["jc/parsers/crontab_u.py"],"file_stats":[{"name":"jc/parsers/crontab_u.py","lines_changed":102}]},"message":"doc update"},{"commit":"9a0cfe6dfa4888f435d35bd2d35126d031a556d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":4}]},"message":"minor formatting"},{"commit":"a116cdbcec1b27192dd0f9f4707629353edb3caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":29,"deletions":13,"files":["tests/fixtures/ubuntu-18.04/crontab-u.json",".../ubuntu-18.04/{crontab.out => crontab-u.out}","tests/fixtures/ubuntu-18.04/crontab.json","tests/test_crontab.py","tests/test_crontab_u.py"],"file_stats":[{"name":"tests/fixtures/ubuntu-18.04/crontab-u.json","lines_changed":1},{"name":".../ubuntu-18.04/{crontab.out => crontab-u.out}","lines_changed":0},{"name":"tests/fixtures/ubuntu-18.04/crontab.json","lines_changed":1},{"name":"tests/test_crontab.py","lines_changed":12},{"name":"tests/test_crontab_u.py","lines_changed":28}]},"message":"tests for crontab-u"},{"commit":"f2d616c98e049cdac5d667e63723f92110419a1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":272,"deletions":0,"files":["changelog.txt","jc/cli.py","jc/parsers/crontab_u.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":269}]},"message":"add crontab with user parser"},{"commit":"42cbd1777dbacc614d75f67f3f9156f72be46532","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":80,"deletions":0,"files":["tests/test_xml.py","tests/test_yaml.py"],"file_stats":[{"name":"tests/test_xml.py","lines_changed":40},{"name":"tests/test_yaml.py","lines_changed":40}]},"message":"add xml and yaml tests"},{"commit":"ebf375aac0473249cfd212068f6e6e33cc42449a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":40,"deletions":0,"files":["tests/test_ini.py"],"file_stats":[{"name":"tests/test_ini.py","lines_changed":40}]},"message":"add ini tests"},{"commit":"1f9050267eeb870c4c0f50000fc32985c4d8535b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":586,"deletions":0,"files":["tests/fixtures/generic/ini-iptelserver.ini","tests/fixtures/generic/ini-iptelserver.json","tests/fixtures/generic/ini-test.ini","tests/fixtures/generic/ini-test.json","tests/fixtures/generic/xml-cd_catalog.json","tests/fixtures/generic/xml-cd_catalog.xml","tests/fixtures/generic/xml-foodmenu.json","tests/fixtures/generic/xml-foodmenu.xml","tests/fixtures/generic/yaml-istio-sc.json","tests/fixtures/generic/yaml-istio-sc.yaml","tests/fixtures/generic/yaml-istio-sidecar.json","tests/fixtures/generic/yaml-istio-sidecar.yaml"],"file_stats":[{"name":"tests/fixtures/generic/ini-iptelserver.ini","lines_changed":133},{"name":"tests/fixtures/generic/ini-iptelserver.json","lines_changed":1},{"name":"tests/fixtures/generic/ini-test.ini","lines_changed":12},{"name":"tests/fixtures/generic/ini-test.json","lines_changed":1},{"name":"tests/fixtures/generic/xml-cd_catalog.json","lines_changed":1},{"name":"tests/fixtures/generic/xml-cd_catalog.xml","lines_changed":211},{"name":"tests/fixtures/generic/xml-foodmenu.json","lines_changed":1},{"name":"tests/fixtures/generic/xml-foodmenu.xml","lines_changed":33},{"name":"tests/fixtures/generic/yaml-istio-sc.json","lines_changed":1},{"name":"tests/fixtures/generic/yaml-istio-sc.yaml","lines_changed":17},{"name":"tests/fixtures/generic/yaml-istio-sidecar.json","lines_changed":1},{"name":"tests/fixtures/generic/yaml-istio-sidecar.yaml","lines_changed":174}]},"message":"add ini, xml, and yaml test files"},{"commit":"d7f9707a1521719ce051140b1a0b4ced7c5114c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/ini.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"minor formatting"},{"commit":"ab589ee3ed09b9d5e09d8c046f3a64cd2bd14c98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"add __version__ variable"},{"commit":"c84ec0361fc4c877c698378b28ff9e8b502793b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":105,"deletions":3,"files":["README.md","docgen.sh","docs/parsers/xml.md","jc/parsers/xml.py"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/xml.md","lines_changed":99},{"name":"jc/parsers/xml.py","lines_changed":5}]},"message":"xml example update"},{"commit":"47d2f8968a8a9b68fc9fff45985f5e69f1a5cc40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"changelog.txt","lines_changed":1}]},"message":"doc update"},{"commit":"019c480bcce7fe3821b75906fc673ce7bb1ffadc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"update acknowledgments"},{"commit":"547c6d3d5956984d3c4fb5c2a1b76a595752b467","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":172,"deletions":2,"files":["README.md","changelog.txt","jc/cli.py","jc/parsers/xml.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":46},{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/xml.py","lines_changed":119},{"name":"setup.py","lines_changed":3}]},"message":"add xml parser"},{"commit":"b5ebf8b76afcd0e0190994048fe1f5b53f654451","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add ruamel.yaml ack"},{"commit":"c690e328f23a69f592dfaaa949b74ba2190ad376","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":102,"deletions":14,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/yaml.md","lines_changed":58},{"name":"jc/parsers/yaml.py","lines_changed":58}]},"message":"add examples"},{"commit":"cbb92c1a9517234806f1c54398a69645b6f43669","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":94,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":94}]},"message":"add ini and yaml"},{"commit":"beb41997c9b3797e73a678ec1bcddcfb83b5ef0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":91,"deletions":2,"files":["docgen.sh","docs/parsers/ini.md","jc/parsers/ini.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ini.md","lines_changed":87},{"name":"jc/parsers/ini.py","lines_changed":5}]},"message":"doc update"},{"commit":"755a6faf1110f150fe2261b81439b7d17a9b424e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":8,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":12}]},"message":"clean up multi-document support"},{"commit":"021f8350a31a49ecc539f02576303600b222b49d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":4}]},"message":"update doc"},{"commit":"76583dcd2f5ef32e58ca87149154563b07e061cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":113,"deletions":0,"files":["jc/cli.py","jc/parsers/ini.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/ini.py","lines_changed":111}]},"message":"add ini file parser"},{"commit":"bf033239a706c42be3d7508c58a51c542f8a69b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":82,"deletions":7,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/yaml.md","lines_changed":69},{"name":"jc/parsers/yaml.py","lines_changed":20}]},"message":"doc update"},{"commit":"eb37fccd37fd625f701a14b6cfcf30e9f0bbff4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":11}]},"message":"doc update"},{"commit":"d04ad453319fe45e302da87f970d2ac0806fae1a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":2,"files":["changelog.txt","docgen.sh","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"setup.py","lines_changed":5}]},"message":"setup for 1.7.1"},{"commit":"db157b8ca7f7fa935676bafeaafdfd9818a89e6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":94,"deletions":2,"files":["jc/cli.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6},{"name":"jc/parsers/yaml.py","lines_changed":90}]},"message":"add yaml file parser"},{"commit":"68f277bb2081eb2cba14ffe7f0ee1ee0a982335b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":33,"insertions":99,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/crontab.py","lines_changed":3},{"name":"jc/parsers/df.py","lines_changed":3},{"name":"jc/parsers/dig.py","lines_changed":3},{"name":"jc/parsers/du.py","lines_changed":3},{"name":"jc/parsers/env.py","lines_changed":3},{"name":"jc/parsers/foo.py","lines_changed":3},{"name":"jc/parsers/free.py","lines_changed":3},{"name":"jc/parsers/fstab.py","lines_changed":3},{"name":"jc/parsers/history.py","lines_changed":3},{"name":"jc/parsers/hosts.py","lines_changed":3},{"name":"jc/parsers/ifconfig.py","lines_changed":3},{"name":"jc/parsers/iptables.py","lines_changed":3},{"name":"jc/parsers/jobs.py","lines_changed":3},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"jc/parsers/lsblk.py","lines_changed":3},{"name":"jc/parsers/lsmod.py","lines_changed":3},{"name":"jc/parsers/lsof.py","lines_changed":3},{"name":"jc/parsers/mount.py","lines_changed":3},{"name":"jc/parsers/netstat.py","lines_changed":3},{"name":"jc/parsers/pip_list.py","lines_changed":3},{"name":"jc/parsers/pip_show.py","lines_changed":3},{"name":"jc/parsers/ps.py","lines_changed":3},{"name":"jc/parsers/route.py","lines_changed":3},{"name":"jc/parsers/ss.py","lines_changed":3},{"name":"jc/parsers/stat.py","lines_changed":3},{"name":"jc/parsers/systemctl.py","lines_changed":3},{"name":"jc/parsers/systemctl_lj.py","lines_changed":3},{"name":"jc/parsers/systemctl_ls.py","lines_changed":3},{"name":"jc/parsers/systemctl_luf.py","lines_changed":3},{"name":"jc/parsers/uname.py","lines_changed":3},{"name":"jc/parsers/uptime.py","lines_changed":3},{"name":"jc/parsers/w.py","lines_changed":3}]},"message":"add __version__"},{"commit":"4de8f42664379570392552796e34324abb39fdc2","merge":"6633d92 4f11855","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #17 from kellyjonbrazil/dev"},{"commit":"4f118559356edc1da866e1bec80830e7a75a0b26","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]},"message":"update version info"},{"commit":"2b9a5fcc32f85295faa55410efcaf142c42bd167","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":4}]},"message":"update version"},{"commit":"224948d1f23e01b7cd968820529579792f862f0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":428,"deletions":0,"files":["tests/fixtures/centos-7.7/pip-list.json","tests/fixtures/centos-7.7/pip-list.out","tests/fixtures/centos-7.7/pip-show.json","tests/fixtures/centos-7.7/pip-show.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.11.6/pip-list.json","tests/fixtures/osx-10.11.6/pip-list.out","tests/fixtures/osx-10.11.6/pip-show.json","tests/fixtures/osx-10.11.6/pip-show.out","tests/fixtures/osx-10.14.6/pip-list.json","tests/fixtures/osx-10.14.6/pip-list.out","tests/fixtures/osx-10.14.6/pip-show.json","tests/fixtures/osx-10.14.6/pip-show.out","tests/fixtures/ubuntu-18.04/pip-list-legacy.json","tests/fixtures/ubuntu-18.04/pip-list-legacy.out","tests/fixtures/ubuntu-18.04/pip-list.json","tests/fixtures/ubuntu-18.04/pip-list.out","tests/fixtures/ubuntu-18.04/pip-show.json","tests/fixtures/ubuntu-18.04/pip-show.out","tests/test_pip_list.py","tests/test_pip_show.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/pip-list.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/pip-list.out","lines_changed":22},{"name":"tests/fixtures/centos-7.7/pip-show.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/pip-show.out","lines_changed":32},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/pip-list.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/pip-list.out","lines_changed":7},{"name":"tests/fixtures/osx-10.11.6/pip-show.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/pip-show.out","lines_changed":32},{"name":"tests/fixtures/osx-10.14.6/pip-list.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/pip-list.out","lines_changed":7},{"name":"tests/fixtures/osx-10.14.6/pip-show.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/pip-show.out","lines_changed":32},{"name":"tests/fixtures/ubuntu-18.04/pip-list-legacy.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/pip-list-legacy.out","lines_changed":57},{"name":"tests/fixtures/ubuntu-18.04/pip-list.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/pip-list.out","lines_changed":59},{"name":"tests/fixtures/ubuntu-18.04/pip-show.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/pip-show.out","lines_changed":29},{"name":"tests/test_pip_list.py","lines_changed":76},{"name":"tests/test_pip_show.py","lines_changed":64}]},"message":"pip list and pip show tests"},{"commit":"36f2812d5a7a94c412e098233c026d99d5205b60","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":15,"deletions":7,"files":["jc/parsers/pip_list.py"],"file_stats":[{"name":"jc/parsers/pip_list.py","lines_changed":22}]},"message":"add support for legacy output"},{"commit":"be06aa2b31c057c56229e75c7fa70052b83053ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":65,"insertions":70,"deletions":66,"files":["docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":3},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":3},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":3},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":3},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2}]},"message":"update parse() Return info"},{"commit":"41f8e3aba268ca0cd09931a04368615425c1aec8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":65,"insertions":67,"deletions":65,"files":["docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":3},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":3},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2}]},"message":"update Return info"},{"commit":"093c0df8978ace842af5258f9aff72c63c6f843d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"schema info"},{"commit":"37afc7dc8ae30342d01f3f72e73646fa60bb5294","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"updte todo and compatibility"},{"commit":"efbf3549606fc77f8c16587ff04a0c316dfe5c00","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":126,"deletions":12,"files":["README.md","docgen.sh","docs/parsers/pip_show.md","jc/parsers/pip_show.py"],"file_stats":[{"name":"README.md","lines_changed":31},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/pip_show.md","lines_changed":94},{"name":"jc/parsers/pip_show.py","lines_changed":12}]},"message":"doc update for pip show"},{"commit":"5e39fe0d8044787389d8f206f3c863d4bdf1e2ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":64,"deletions":5,"files":["jc/parsers/pip_show.py"],"file_stats":[{"name":"jc/parsers/pip_show.py","lines_changed":69}]},"message":"pip show parser working"},{"commit":"47328dc65969f149c8f027286774ff0847c18add","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add pip-show parser"},{"commit":"addeef50ba54f536855544937a6c98135ae5cd51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":84,"deletions":0,"files":["jc/parsers/pip_show.py"],"file_stats":[{"name":"jc/parsers/pip_show.py","lines_changed":84}]},"message":"initial pip show parser add"},{"commit":"ad338cc5b50a178091c47cbea9a1db135a7fb678","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":56,"deletions":42,"files":["docs/parsers/crontab.md","jc/parsers/crontab.py"],"file_stats":[{"name":"docs/parsers/crontab.md","lines_changed":49},{"name":"jc/parsers/crontab.py","lines_changed":49}]},"message":"schema doc update"},{"commit":"202bc8201e31fd453c682265347b4e2ac2d41718","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["README.md","docs/parsers/crontab.md","jc/parsers/crontab.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"jc/parsers/crontab.py","lines_changed":4}]},"message":"doc update"},{"commit":"5ff99de405fbd8f79f9c2e301ac27184e0aba6fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add argument to parser info"},{"commit":"86ebe2cf9c6b336eacf217393c3c3c324ee29ec0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":205,"deletions":1,"files":["README.md","docgen.sh","docs/parsers/crontab.md","docs/parsers/pip_list.md","jc/cli.py","jc/parsers/pip_list.py"],"file_stats":[{"name":"README.md","lines_changed":21},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":75},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":105}]},"message":"initial add of pip list parser"},{"commit":"facf0b399c608d33f6a454ee24fd49fc62471742","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":4}]},"message":"add osx to campatible"},{"commit":"33db7b0bcb0f24979cad6e173737d75c8ed301af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":57,"deletions":0,"files":["tests/fixtures/centos-7.7/crontab.json","tests/fixtures/ubuntu-18.04/crontab.json","tests/fixtures/ubuntu-18.04/crontab.out","tests/test_crontab.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/crontab.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/crontab.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/crontab.out","lines_changed":15},{"name":"tests/test_crontab.py","lines_changed":40}]},"message":"add crontab tests"},{"commit":"663d07bca1181024d9d08b940237c52197c91729","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":191,"deletions":0,"files":["docgen.sh","docs/parsers/crontab.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/crontab.md","lines_changed":190}]},"message":"add crontab"},{"commit":"ba04e4997fcb28adbee446f633c121f1585b9f2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":113,"deletions":4,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":117}]},"message":"update docs"},{"commit":"c4fee1b658c91afa2abdd746af6c1b4697c44b35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":72,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":73}]},"message":"add crontab parser"},{"commit":"99b92a15bbebc5568f4455f388f945613c4a2759","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":37,"deletions":14,"files":["jc/parsers/crontab.py","tests/fixtures/centos-7.7/crontab.out"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":40},{"name":"tests/fixtures/centos-7.7/crontab.out","lines_changed":11}]},"message":"support shortcut schedules"},{"commit":"b076ab5b57a6a59db096485e5ff4eb9f91bae8be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":177,"deletions":0,"files":["jc/cli.py","jc/parsers/crontab.py","tests/fixtures/centos-7.7/crontab.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":132},{"name":"tests/fixtures/centos-7.7/crontab.out","lines_changed":43}]},"message":"initial crontab parser"},{"commit":"687759f75d0e80e81746a84f051e55cfdc870447","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":31,"deletions":31,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":62}]},"message":"alphabetize du entry"},{"commit":"9eaac7f3af0e0851c2d091d94c9920faa8a0fdfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":32,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":32}]},"message":"add du"},{"commit":"4c24e00cfc0748d98e220d08820b88fc156148db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":21738,"deletions":9,"files":["tests/fixtures/osx-10.11.6/du.json","tests/fixtures/osx-10.11.6/du.out","tests/fixtures/ubuntu-18.04/du.json","tests/fixtures/ubuntu-18.04/du.out","tests/test_du.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/du.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/du.out","lines_changed":2471},{"name":"tests/fixtures/ubuntu-18.04/du.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/du.out","lines_changed":19244},{"name":"tests/test_du.py","lines_changed":30}]},"message":"add osx-11 and ubuntu tests"},{"commit":"beb17011b03e720078b0752e79a6a0f6123d1d3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":131,"deletions":2,"files":["changelog.txt","docgen.sh","docs/parsers/du.md","docs/parsers/uname.md","tests/fixtures/osx-10.14.6/du.json","tests/test_du.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/du.md","lines_changed":115},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/du.json","lines_changed":1},{"name":"tests/test_du.py","lines_changed":12}]},"message":"du tests and docs"},{"commit":"e882bf55bcd1d3526423ed1ccc61fb4819395cce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":8755,"deletions":0,"files":["changelog.txt","jc/cli.py","jc/parsers/du.py","tests/fixtures/centos-7.7/du.json","tests/fixtures/centos-7.7/du.out","tests/fixtures/osx-10.14.6/du.out","tests/test_du.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":148},{"name":"tests/fixtures/centos-7.7/du.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/du.out","lines_changed":5199},{"name":"tests/fixtures/osx-10.14.6/du.out","lines_changed":3364},{"name":"tests/test_du.py","lines_changed":40}]},"message":"initial add du parser"},{"commit":"3a3016adb6d5b9e35f8a39908bfcdc65997cc5c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add parser_count to about"},{"commit":"1e8b68153ade8a1e3d2b4db36e0c402bbc887079","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":27,"deletions":1,"files":["tests/fixtures/osx-10.11.6/uname-a.json","tests/fixtures/osx-10.14.6/uname-a.json","tests/fixtures/osx-10.14.6/uname-a.out","tests/test_uname.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/uname-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/uname-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/uname-a.out","lines_changed":2},{"name":"tests/test_uname.py","lines_changed":24}]},"message":"add osx uname tests"},{"commit":"9335cf65fbb87e3a0a7da0c4e9bcd251cb829de2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"add uname osx support"},{"commit":"83f35256aee71f2619ddf880e2b8f2d6c63280bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":30,"deletions":19,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":49}]},"message":"add OSX support"},{"commit":"428333394817e4461a4eb095f4d6d128305a5f98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":2}]},"message":"version bump"},{"commit":"b8f902796b7fb23a41355b23f7ce235bd18edc58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]},"message":"shorten changelog"},{"commit":"8f99ab295cd15718b98781707def97539ad41920","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"info update"},{"commit":"882310e268e2022f0cd6da75f80f5356529cd05c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add name to about parser info"},{"commit":"56bce9521409d1850f75a3ae2be1363e765dd9dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":10,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":16}]},"message":"about code cleanup"},{"commit":"c13ecbec2952c5d6765397f645e90653a4fd9d05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":28,"insertions":2,"deletions":28,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":1},{"name":"jc/parsers/env.py","lines_changed":1},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":1},{"name":"jc/parsers/fstab.py","lines_changed":1},{"name":"jc/parsers/history.py","lines_changed":1},{"name":"jc/parsers/hosts.py","lines_changed":1},{"name":"jc/parsers/iptables.py","lines_changed":1},{"name":"jc/parsers/jobs.py","lines_changed":1},{"name":"jc/parsers/ls.py","lines_changed":1},{"name":"jc/parsers/lsblk.py","lines_changed":1},{"name":"jc/parsers/lsmod.py","lines_changed":1},{"name":"jc/parsers/lsof.py","lines_changed":1},{"name":"jc/parsers/mount.py","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":1},{"name":"jc/parsers/ps.py","lines_changed":1},{"name":"jc/parsers/route.py","lines_changed":1},{"name":"jc/parsers/ss.py","lines_changed":1},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":1},{"name":"jc/parsers/systemctl_lj.py","lines_changed":1},{"name":"jc/parsers/systemctl_ls.py","lines_changed":1},{"name":"jc/parsers/systemctl_luf.py","lines_changed":1},{"name":"jc/parsers/uname.py","lines_changed":1},{"name":"jc/parsers/uptime.py","lines_changed":1},{"name":"jc/parsers/w.py","lines_changed":1}]},"message":"clean up parser info"},{"commit":"0ffaaa6e73649d1f657af569ac0b912f166e8493","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":9,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":16}]},"message":"clean up about code"},{"commit":"75eff3adea097157c005b2201e353a741241ce8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":8}]},"message":"remove whitespace"},{"commit":"bf5f80476cff642ae672187ea59d40bdb602101e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6}]},"message":"use real parser name in error message"},{"commit":"9aaf0fbb2f838c0af1e7f18fdb19104f9f5d3d39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":29,"insertions":146,"deletions":1,"files":["changelog.txt","docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"docs/parsers/arp.md","lines_changed":11},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5}]},"message":"doc updates"},{"commit":"8f01ef79532743573632d716ceea41d5ea752c88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add -a option info"},{"commit":"da1d087452da02631296b1b3dc9ee10d4b7f764b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add parser version info"},{"commit":"e16bc7e882a27a1d5a4bd7cf9972208e6997f96f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":29,"insertions":82,"deletions":17,"files":["jc/cli.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":71},{"name":"jc/parsers/arp.py","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":1},{"name":"jc/parsers/env.py","lines_changed":1},{"name":"jc/parsers/foo.py","lines_changed":1},{"name":"jc/parsers/free.py","lines_changed":1},{"name":"jc/parsers/fstab.py","lines_changed":1},{"name":"jc/parsers/history.py","lines_changed":1},{"name":"jc/parsers/hosts.py","lines_changed":1},{"name":"jc/parsers/iptables.py","lines_changed":1},{"name":"jc/parsers/jobs.py","lines_changed":1},{"name":"jc/parsers/ls.py","lines_changed":1},{"name":"jc/parsers/lsblk.py","lines_changed":1},{"name":"jc/parsers/lsmod.py","lines_changed":1},{"name":"jc/parsers/lsof.py","lines_changed":1},{"name":"jc/parsers/mount.py","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":1},{"name":"jc/parsers/ps.py","lines_changed":1},{"name":"jc/parsers/route.py","lines_changed":1},{"name":"jc/parsers/ss.py","lines_changed":1},{"name":"jc/parsers/stat.py","lines_changed":1},{"name":"jc/parsers/systemctl.py","lines_changed":1},{"name":"jc/parsers/systemctl_lj.py","lines_changed":1},{"name":"jc/parsers/systemctl_ls.py","lines_changed":1},{"name":"jc/parsers/systemctl_luf.py","lines_changed":1},{"name":"jc/parsers/uname.py","lines_changed":1},{"name":"jc/parsers/uptime.py","lines_changed":1},{"name":"jc/parsers/w.py","lines_changed":1}]},"message":"add about information to parsers"},{"commit":"fe9bdd4811216257c05b16d6d61897929669d434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":31,"insertions":384,"deletions":219,"files":["changelog.txt","jc/cli.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/cli.py","lines_changed":127},{"name":"jc/parsers/arp.py","lines_changed":25},{"name":"jc/parsers/df.py","lines_changed":15},{"name":"jc/parsers/dig.py","lines_changed":15},{"name":"jc/parsers/env.py","lines_changed":16},{"name":"jc/parsers/foo.py","lines_changed":16},{"name":"jc/parsers/free.py","lines_changed":16},{"name":"jc/parsers/fstab.py","lines_changed":16},{"name":"jc/parsers/history.py","lines_changed":16},{"name":"jc/parsers/hosts.py","lines_changed":16},{"name":"jc/parsers/ifconfig.py","lines_changed":17},{"name":"jc/parsers/iptables.py","lines_changed":16},{"name":"jc/parsers/jobs.py","lines_changed":16},{"name":"jc/parsers/ls.py","lines_changed":16},{"name":"jc/parsers/lsblk.py","lines_changed":17},{"name":"jc/parsers/lsmod.py","lines_changed":16},{"name":"jc/parsers/lsof.py","lines_changed":16},{"name":"jc/parsers/mount.py","lines_changed":16},{"name":"jc/parsers/netstat.py","lines_changed":16},{"name":"jc/parsers/ps.py","lines_changed":16},{"name":"jc/parsers/route.py","lines_changed":16},{"name":"jc/parsers/ss.py","lines_changed":16},{"name":"jc/parsers/stat.py","lines_changed":15},{"name":"jc/parsers/systemctl.py","lines_changed":16},{"name":"jc/parsers/systemctl_lj.py","lines_changed":16},{"name":"jc/parsers/systemctl_ls.py","lines_changed":16},{"name":"jc/parsers/systemctl_luf.py","lines_changed":16},{"name":"jc/parsers/uname.py","lines_changed":16},{"name":"jc/parsers/uptime.py","lines_changed":16},{"name":"jc/parsers/w.py","lines_changed":16}]},"message":"add info class"},{"commit":"17b6f3f6d6c398a52166849088a793d0e3b328b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":26,"deletions":0,"files":["tests/fixtures/osx-10.11.6/uptime.json","tests/fixtures/osx-10.14.6/uptime.json","tests/test_uptime.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/uptime.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/uptime.json","lines_changed":1},{"name":"tests/test_uptime.py","lines_changed":24}]},"message":"add osx tests"},{"commit":"90a6baf0ee3b8b27476badada4e590e22144f810","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":52,"deletions":0,"files":["tests/fixtures/osx-10.11.6/ps-axu.json","tests/fixtures/osx-10.11.6/ps-ef.json","tests/fixtures/osx-10.11.6/w.json","tests/fixtures/osx-10.14.6/w.json","tests/test_ps.py","tests/test_w.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/ps-axu.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ps-ef.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/w.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/w.json","lines_changed":1},{"name":"tests/test_ps.py","lines_changed":24},{"name":"tests/test_w.py","lines_changed":24}]},"message":"add osx tests"},{"commit":"f0e73d0e72d540292f41fff51652932c4e8b0315","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":444,"deletions":0,"files":["tests/fixtures/osx-10.11.6/ps-axu.out","tests/fixtures/osx-10.11.6/ps-ef.out","tests/fixtures/osx-10.11.6/uname-a.out","tests/fixtures/osx-10.11.6/uptime.out","tests/fixtures/osx-10.11.6/w.out","tests/fixtures/osx-10.14.6/uname-a.out","tests/fixtures/osx-10.14.6/uptime.out","tests/fixtures/osx-10.14.6/w.out"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/ps-axu.out","lines_changed":211},{"name":"tests/fixtures/osx-10.11.6/ps-ef.out","lines_changed":211},{"name":"tests/fixtures/osx-10.11.6/uname-a.out","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/uptime.out","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/w.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/uname-a.out","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/uptime.out","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/w.out","lines_changed":10}]},"message":"add osx tests"},{"commit":"a762882f1ccea6789ce7813b313f3242175b5bd6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":88,"files":["tests/fixtures/osx-10.14.6/ps-axu.json","tests/fixtures/osx-10.14.6/ps-axu.out","tests/fixtures/osx-10.14.6/ps-ef.json","tests/fixtures/osx-10.14.6/ps-ef.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ps-axu.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ps-axu.out","lines_changed":43},{"name":"tests/fixtures/osx-10.14.6/ps-ef.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ps-ef.out","lines_changed":43}]},"message":"fixture updates"},{"commit":"4c1bc5923658bf463805ea33ec8d170a817909ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":4,"deletions":3,"files":["docs/parsers/mount.md","docs/parsers/ps.md","docs/parsers/stat.md"],"file_stats":[{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":3},{"name":"docs/parsers/stat.md","lines_changed":2}]},"message":"doc updates"},{"commit":"f2962083f80503f82c3eddf470674c776e616b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":93,"deletions":17,"files":["changelog.txt","jc/parsers/mount.py","tests/fixtures/osx-10.14.6/mount.json","tests/fixtures/osx-10.14.6/mount.out","tests/fixtures/osx-10.14.6/mount2.json","tests/fixtures/osx-10.14.6/mount2.out","tests/test_mount.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/parsers/mount.py","lines_changed":68},{"name":"tests/fixtures/osx-10.14.6/mount.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/mount.out","lines_changed":6},{"name":"tests/fixtures/osx-10.14.6/mount2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/mount2.out","lines_changed":7},{"name":"tests/test_mount.py","lines_changed":24}]},"message":"add osx support for mount parser"},{"commit":"a0b22a5bcfa0777895243088b2c0f3bb5b758775","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"help text formatting"},{"commit":"dcf393354cd57683aaeecbed7b884d19b0fe94d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":2}]},"message":"doc fix"},{"commit":"5f771656e3fdd703d449b2817faa4faeff1cd879","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":10}]},"message":"use universal parser"},{"commit":"f376aab79328a211a127f4f818e7007232f1fae3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":3}]},"message":"doc update"},{"commit":"3c96464217a740571e16c74ad41c1d92f7585547","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":886,"deletions":13,"files":["jc/parsers/ps.py","tests/fixtures/osx-10.14.6/ps-axu.json","tests/fixtures/osx-10.14.6/ps-axu.out","tests/fixtures/osx-10.14.6/ps-ef.json","tests/fixtures/osx-10.14.6/ps-ef.out","tests/test_ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":31},{"name":"tests/fixtures/osx-10.14.6/ps-axu.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ps-axu.out","lines_changed":421},{"name":"tests/fixtures/osx-10.14.6/ps-ef.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ps-ef.out","lines_changed":421},{"name":"tests/test_ps.py","lines_changed":24}]},"message":"osx fixes and tests"},{"commit":"c9892833a16bb63f78537717be65670eb65a87b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/mount.py"],"file_stats":[{"name":"jc/parsers/mount.py","lines_changed":2}]},"message":"formatting change"},{"commit":"127c98affc7b122f0ced13852850214b9e07677e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update"},{"commit":"8687a772f53ecaf1a20464429060b94bbf660fe7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":8}]},"message":"use universal parser"},{"commit":"b1162b14d42643fd53dbbe3f89ba042f030d9254","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":6,"files":["jc/parsers/lsmod.py"],"file_stats":[{"name":"jc/parsers/lsmod.py","lines_changed":9}]},"message":"use universal parser"},{"commit":"8a8ee3570733c0c06b8cf53eb005e53ac2f9170f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":60,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":68}]},"message":"use universal parser"},{"commit":"5e109a3665cf0c286ac9dcbe2a452348a14b90ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/fixtures/create_fixtures.sh"],"file_stats":[{"name":"tests/fixtures/create_fixtures.sh","lines_changed":2}]},"message":"add du"},{"commit":"11db478430515ef3e1020482792f23d1c40ca32b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"update changelog"},{"commit":"a85377014d9f93fcb9840715129b0e09d48d8584","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":11,"files":["jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/free.py","lines_changed":16}]},"message":"use universal parser"},{"commit":"3aea86234d33160f5b3139cbfc2f4f032f655f3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":70,"deletions":61,"files":["tests/fixtures/osx-10.11.6/ls-al.json","tests/fixtures/osx-10.11.6/ls-al.out","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.11.6/ls-alh.out","tests/fixtures/osx-10.11.6/ls.json","tests/fixtures/osx-10.11.6/ls.out"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/ls-al.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ls-al.out","lines_changed":61},{"name":"tests/fixtures/osx-10.11.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ls-alh.out","lines_changed":61},{"name":"tests/fixtures/osx-10.11.6/ls.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ls.out","lines_changed":3}]},"message":"fix osx-10.11.6 tests"},{"commit":"916ec6ed6b858a8a496e4026b9bab5505abca2ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":193,"deletions":61,"files":["tests/fixtures/osx-10.11.6/ls-al.json","tests/fixtures/osx-10.11.6/ls-al.out","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.11.6/ls-alh.out","tests/fixtures/osx-10.11.6/ls.json","tests/fixtures/osx-10.11.6/ls.out","tests/fixtures/osx-10.14.6/ls-al.json","tests/fixtures/osx-10.14.6/ls-al.out","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.out","tests/fixtures/osx-10.14.6/ls.json","tests/fixtures/osx-10.14.6/ls.out","tests/test_ls.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/ls-al.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ls-al.out","lines_changed":29},{"name":"tests/fixtures/osx-10.11.6/ls-alh.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ls-alh.out","lines_changed":29},{"name":"tests/fixtures/osx-10.11.6/ls.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ls.out","lines_changed":18},{"name":"tests/fixtures/osx-10.14.6/ls-al.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-al.out","lines_changed":64},{"name":"tests/fixtures/osx-10.14.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-alh.out","lines_changed":64},{"name":"tests/fixtures/osx-10.14.6/ls.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls.out","lines_changed":5},{"name":"tests/test_ls.py","lines_changed":36}]},"message":"fix osx ls tests"},{"commit":"9dca6ba5393d8840ad7fc9509273715a71955bd1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":55,"insertions":120,"deletions":6,"files":["docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":8},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":3},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":3},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":8},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":3},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":3},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2}]},"message":"doc formatting change"},{"commit":"0ebb89f561e1ced2e7f61ae19290e176c8a98bf2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["docs/parsers/arp.md"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2}]},"message":"doc update"},{"commit":"e237867e242211ba37206911ebf1b35c97b417fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":2}]},"message":"doc formatting"},{"commit":"78fa44fd9ac9790313de6f461eb46d9b8d6159d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":24,"insertions":75,"deletions":3,"files":["docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/netstat.md","lines_changed":3},{"name":"docs/parsers/ps.md","lines_changed":3},{"name":"docs/parsers/route.md","lines_changed":3},{"name":"docs/parsers/ss.md","lines_changed":3},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":3},{"name":"docs/parsers/systemctl_lj.md","lines_changed":3},{"name":"docs/parsers/systemctl_ls.md","lines_changed":3},{"name":"docs/parsers/systemctl_luf.md","lines_changed":3},{"name":"docs/parsers/uname.md","lines_changed":3},{"name":"docs/parsers/uptime.md","lines_changed":3},{"name":"docs/parsers/w.md","lines_changed":3},{"name":"jc/parsers/netstat.py","lines_changed":3},{"name":"jc/parsers/ps.py","lines_changed":3},{"name":"jc/parsers/route.py","lines_changed":5},{"name":"jc/parsers/ss.py","lines_changed":3},{"name":"jc/parsers/stat.py","lines_changed":5},{"name":"jc/parsers/systemctl.py","lines_changed":3},{"name":"jc/parsers/systemctl_lj.py","lines_changed":3},{"name":"jc/parsers/systemctl_ls.py","lines_changed":3},{"name":"jc/parsers/systemctl_luf.py","lines_changed":3},{"name":"jc/parsers/uname.py","lines_changed":3},{"name":"jc/parsers/uptime.py","lines_changed":3},{"name":"jc/parsers/w.py","lines_changed":3}]},"message":"add compatibility to docs"},{"commit":"d615fa3b933ccd284bd8ee92baf5dfa6264507c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":30,"insertions":91,"deletions":1,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":3},{"name":"docs/parsers/df.md","lines_changed":3},{"name":"docs/parsers/dig.md","lines_changed":3},{"name":"docs/parsers/env.md","lines_changed":3},{"name":"docs/parsers/free.md","lines_changed":3},{"name":"docs/parsers/fstab.md","lines_changed":3},{"name":"docs/parsers/history.md","lines_changed":3},{"name":"docs/parsers/hosts.md","lines_changed":3},{"name":"docs/parsers/ifconfig.md","lines_changed":3},{"name":"docs/parsers/iptables.md","lines_changed":3},{"name":"docs/parsers/jobs.md","lines_changed":3},{"name":"docs/parsers/ls.md","lines_changed":3},{"name":"docs/parsers/lsblk.md","lines_changed":3},{"name":"docs/parsers/lsmod.md","lines_changed":3},{"name":"docs/parsers/lsof.md","lines_changed":3},{"name":"docs/parsers/mount.md","lines_changed":3},{"name":"jc/parsers/env.py","lines_changed":3},{"name":"jc/parsers/foo.py","lines_changed":3},{"name":"jc/parsers/free.py","lines_changed":3},{"name":"jc/parsers/fstab.py","lines_changed":3},{"name":"jc/parsers/history.py","lines_changed":3},{"name":"jc/parsers/hosts.py","lines_changed":3},{"name":"jc/parsers/ifconfig.py","lines_changed":3},{"name":"jc/parsers/iptables.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":3},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"jc/parsers/lsblk.py","lines_changed":3},{"name":"jc/parsers/lsmod.py","lines_changed":3},{"name":"jc/parsers/lsof.py","lines_changed":3},{"name":"jc/parsers/mount.py","lines_changed":3}]},"message":"add compatibility to docs"},{"commit":"ce134dc332dd9175e0d1823a4959bed427a3ddce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":115,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-al.json","tests/fixtures/osx-10.14.6/ls-al.out","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.out","tests/fixtures/osx-10.14.6/ls.json","tests/fixtures/osx-10.14.6/ls.out","tests/test_ls.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ls-al.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-al.out","lines_changed":29},{"name":"tests/fixtures/osx-10.14.6/ls-alh.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-alh.out","lines_changed":29},{"name":"tests/fixtures/osx-10.14.6/ls.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls.out","lines_changed":18},{"name":"tests/test_ls.py","lines_changed":36}]},"message":"Add OSX tests for ls"},{"commit":"a56e4dc752a01635fbd9fc31e21d390bbd629084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":28,"deletions":3,"files":["changelog.txt","jc/parsers/arp.py","jc/parsers/universal.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/arp.py","lines_changed":6},{"name":"jc/parsers/universal.py","lines_changed":24}]},"message":"use universal simple table parser"},{"commit":"d221b4aa29e80dda2b591059f4d64c416bff0a17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update"},{"commit":"d2cba6ad2f1f1cd35aa174239584a0291abb8e37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/df.py","lines_changed":3},{"name":"jc/parsers/dig.py","lines_changed":3}]},"message":"add compatibility info"},{"commit":"84b3c30b525ddf1f74eb7fd833050a0ec69621dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":254,"deletions":2,"files":["tests/fixtures/osx-10.11.6/df-h.json","tests/fixtures/osx-10.11.6/df-h.out","tests/fixtures/osx-10.11.6/df.json","tests/fixtures/osx-10.11.6/df.out","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-aaaa.out","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig-x.out","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.11.6/dig.out","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/osx-10.14.6/df-h.out","tests/fixtures/osx-10.14.6/df.json","tests/fixtures/osx-10.14.6/df.out","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-aaaa.out","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig-x.out","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/osx-10.14.6/dig.out","tests/test_df.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/df-h.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/df-h.out","lines_changed":7},{"name":"tests/fixtures/osx-10.11.6/df.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/df.out","lines_changed":7},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.out","lines_changed":20},{"name":"tests/fixtures/osx-10.11.6/dig-x.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/dig-x.out","lines_changed":20},{"name":"tests/fixtures/osx-10.11.6/dig.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/dig.out","lines_changed":41},{"name":"tests/fixtures/osx-10.14.6/df-h.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/df-h.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/df.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/df.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.out","lines_changed":20},{"name":"tests/fixtures/osx-10.14.6/dig-x.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig-x.out","lines_changed":20},{"name":"tests/fixtures/osx-10.14.6/dig.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig.out","lines_changed":41},{"name":"tests/test_df.py","lines_changed":52}]},"message":"add osx tests"},{"commit":"68eeec19a812b735627763bb7d7e2a58b72f7504","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":30,"deletions":25,"files":["README.md","docs/parsers/df.md","jc/parsers/df.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docs/parsers/df.md","lines_changed":31},{"name":"jc/parsers/df.py","lines_changed":20}]},"message":"doc update"},{"commit":"c6d1528a2ed302ea82828b733a98db415be83708","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":19,"deletions":8,"files":["jc/parsers/df.py","jc/parsers/universal.py","tests/fixtures/centos-7.7/df.json","tests/fixtures/ubuntu-18.04/df.json"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":21},{"name":"jc/parsers/universal.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/df.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/df.json","lines_changed":2}]},"message":"use _ instead of -"},{"commit":"50a6b256b8a0936299f562c208ede6187feeb9a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":83,"deletions":0,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":83}]},"message":"new universal parsers to limit code duplication"},{"commit":"bbba1fe477014d0b7f370ce46ed821121be81a8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":38,"deletions":19,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":57}]},"message":"update df to use universal sparse table parser for osx compatibility"},{"commit":"46b827da6b438be73fab168c3f05298483b141e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":75,"deletions":4,"files":["changelog.txt","jc/parsers/arp.py","tests/fixtures/osx-10.11.6/arp-a.json","tests/fixtures/osx-10.11.6/arp-a.out","tests/fixtures/osx-10.14.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a.out","tests/test_arp.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/arp.py","lines_changed":27},{"name":"tests/fixtures/osx-10.11.6/arp-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/arp-a.out","lines_changed":13},{"name":"tests/fixtures/osx-10.14.6/arp-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/arp-a.out","lines_changed":12},{"name":"tests/test_arp.py","lines_changed":24}]},"message":"add osx compatibility"},{"commit":"5e8c28a30a283b6ef525e9e78d3ef2a0e1526927","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2}]},"message":"comment fix"},{"commit":"e5d39031645ac897e0c0297f514ee62efe02f5f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":38,"deletions":17,"files":["docs/parsers/ifconfig.md"],"file_stats":[{"name":"docs/parsers/ifconfig.md","lines_changed":55}]},"message":"update ifconfig doc"},{"commit":"23975c9c9e1dd9d3e9fd7c05d231a86d646be048","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":132,"deletions":45,"files":["README.md","changelog.txt","jc/parsers/ifconfig.py","tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig2.json","tests/fixtures/osx-10.14.6/ifconfig.json","tests/fixtures/osx-10.14.6/ifconfig2.json","tests/fixtures/ubuntu-18.04/ifconfig.json","tests/test_ifconfig.py"],"file_stats":[{"name":"README.md","lines_changed":35},{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":80},{"name":"tests/fixtures/centos-7.7/ifconfig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ifconfig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ifconfig2.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ifconfig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ifconfig2.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ifconfig.json","lines_changed":2},{"name":"tests/test_ifconfig.py","lines_changed":48}]},"message":"fixup osx subnet mask and convert state to an array"},{"commit":"1e0dab8355e6fcb0ecde85270d4daac6ad93875b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":272,"deletions":2,"files":["tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.out","tests/fixtures/osx-10.11.6/ifconfig2.json","tests/fixtures/osx-10.11.6/ifconfig2.out","tests/fixtures/osx-10.14.6/ifconfig.json","tests/fixtures/osx-10.14.6/ifconfig.out","tests/fixtures/osx-10.14.6/ifconfig2.json","tests/fixtures/osx-10.14.6/ifconfig2.out","tests/fixtures/ubuntu-18.04/ifconfig.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ifconfig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ifconfig.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ifconfig.out","lines_changed":40},{"name":"tests/fixtures/osx-10.11.6/ifconfig2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ifconfig2.out","lines_changed":40},{"name":"tests/fixtures/osx-10.14.6/ifconfig.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ifconfig.out","lines_changed":91},{"name":"tests/fixtures/osx-10.14.6/ifconfig2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ifconfig2.out","lines_changed":95},{"name":"tests/fixtures/ubuntu-18.04/ifconfig.json","lines_changed":2}]},"message":"ifconfig fixture updates"},{"commit":"5f4c10ffd5a9cbe4e5e3d2b9adc34f36492eaf46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"changelog.txt","lines_changed":4}]},"message":"doc update"},{"commit":"6f3d2b4b566b963fbf38572c587e8bd4e18881dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"require ifconfig-parser v0.0.5 for mac and bytes support"},{"commit":"fea8ace8446b64abe9e61a028951bc4e6df9f9c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":6,"files":["README.md","jc/parsers/ifconfig.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":22}]},"message":"add OSX compatibility"},{"commit":"6633d9262c936217d8e90e64505c66b006cdab56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["_config.yml"],"file_stats":[{"name":"_config.yml","lines_changed":1}]},"message":"Set theme jekyll-theme-cayman"},{"commit":"7d54137140e6d0515bc23c131a097af5c70c3379","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"link update"},{"commit":"2fcda6f2480ae6bd5428a0147c19f9af527391b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add motivation to readme"},{"commit":"9c1b8bacf9a59a86feb2a91eb44919e800491d1e","merge":"d192745 4867655","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #16 from kellyjonbrazil/dev"},{"commit":"4867655eb297b1da7a55e0d3a24c7ed7c8af55c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":172,"deletions":0,"files":[".../centos-7.7/iptables-filter-line-numbers.json",".../centos-7.7/iptables-filter-line-numbers.out","tests/fixtures/create_fixtures.sh",".../ubuntu-18.04/iptables-filter-line-numbers.json",".../ubuntu-18.04/iptables-filter-line-numbers.out","tests/test_iptables.py"],"file_stats":[{"name":".../centos-7.7/iptables-filter-line-numbers.json","lines_changed":1},{"name":".../centos-7.7/iptables-filter-line-numbers.out","lines_changed":128},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":1},{"name":".../ubuntu-18.04/iptables-filter-line-numbers.json","lines_changed":1},{"name":".../ubuntu-18.04/iptables-filter-line-numbers.out","lines_changed":17},{"name":"tests/test_iptables.py","lines_changed":24}]},"message":"add line-numbers tests"},{"commit":"47410d1a95406b0960aac705e7cfe925fea3172c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"5fa49f5e672fc6f8dc18fb4b1761c98b81362649","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update"},{"commit":"36c53827fab6ac38c0010250ec387db40fdeecfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":19,"insertions":1316,"deletions":308,"files":["tests/fixtures/centos-7.7/systemctl-ls.json","tests/fixtures/centos-7.7/systemctl-ls.out","tests/fixtures/centos-7.7/systemctl-luf.json","tests/fixtures/centos-7.7/systemctl-luf.out","tests/fixtures/centos-7.7/systemctl.json","tests/fixtures/centos-7.7/systemctl.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/systemctl-lj.json","tests/fixtures/ubuntu-18.04/systemctl-lj.out","tests/fixtures/ubuntu-18.04/systemctl-ls.json","tests/fixtures/ubuntu-18.04/systemctl-ls.out","tests/fixtures/ubuntu-18.04/systemctl-luf.json","tests/fixtures/ubuntu-18.04/systemctl-luf.out","tests/fixtures/ubuntu-18.04/systemctl.json","tests/fixtures/ubuntu-18.04/systemctl.out","tests/test_systemctl.py","tests/test_systemctl_lj.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/systemctl-ls.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/systemctl-ls.out","lines_changed":17},{"name":"tests/fixtures/centos-7.7/systemctl-luf.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/systemctl-luf.out","lines_changed":247},{"name":"tests/fixtures/centos-7.7/systemctl.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/systemctl.out","lines_changed":334},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":8},{"name":"tests/fixtures/ubuntu-18.04/systemctl-lj.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/systemctl-lj.out","lines_changed":6},{"name":"tests/fixtures/ubuntu-18.04/systemctl-ls.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/systemctl-ls.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-18.04/systemctl-luf.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/systemctl-luf.out","lines_changed":324},{"name":"tests/fixtures/ubuntu-18.04/systemctl.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/systemctl.out","lines_changed":528},{"name":"tests/test_systemctl.py","lines_changed":4},{"name":"tests/test_systemctl_lj.py","lines_changed":40},{"name":"tests/test_systemctl_ls.py","lines_changed":40},{"name":"tests/test_systemctl_luf.py","lines_changed":40}]},"message":"add systemctl tests"},{"commit":"51631aef5b1b6fdeff4ab543510a9f9e15a0c2c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":358,"deletions":0,"files":["tests/fixtures/centos-7.7/systemctl.json","tests/fixtures/centos-7.7/systemctl.out","tests/fixtures/ubuntu-18.04/systemctl.json","tests/fixtures/ubuntu-18.04/systemctl.out","tests/test_systemctl.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/systemctl.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/systemctl.out","lines_changed":118},{"name":"tests/fixtures/ubuntu-18.04/systemctl.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/systemctl.out","lines_changed":198},{"name":"tests/test_systemctl.py","lines_changed":40}]},"message":"add systemctl tests"},{"commit":"a0298ac8a39093620b6859c909a78d11ab4a8e56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":55,"deletions":0,"files":["tests/fixtures/centos-7.7/fstab.json","tests/fixtures/centos-7.7/fstab.out","tests/fixtures/ubuntu-18.04/fstab.json","tests/fixtures/ubuntu-18.04/fstab.out","tests/test_fstab.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/fstab.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/fstab.out","lines_changed":11},{"name":"tests/fixtures/ubuntu-18.04/fstab.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/fstab.out","lines_changed":2},{"name":"tests/test_fstab.py","lines_changed":40}]},"message":"add fstab tests"},{"commit":"98c0188821ebaa71c5661f2e095cf464bec695f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/systemctl_ls.md","jc/parsers/systemctl_ls.py"],"file_stats":[{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2}]},"message":"formatting fix"},{"commit":"ab1dabe3e42997825707006b63cc0c03d28470d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py"],"file_stats":[{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2}]},"message":"doc update"},{"commit":"94bdb11fdf0e16d89769046d317643334ef1acdd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"remove systemctl from TODO"},{"commit":"b6727d68bab66164a3834b240ae868062aad9371","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":68,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":68}]},"message":"add systemctl parsers"},{"commit":"89bad7fc2b4023b10b6eeb7ff1f8f18b71731cb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":1,"deletions":191,"files":["changelog.txt","docgen.sh","docs/parsers/systemctl_lm.md","jc/cli.py","jc/parsers/systemctl_lm.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/systemctl_lm.md","lines_changed":76},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/systemctl_lm.py","lines_changed":110}]},"message":"remove systemctl list-machines parser"},{"commit":"c0b8b810a2616e77973c1223f9c39329112337ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":306,"deletions":0,"files":["docgen.sh","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_lm.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md"],"file_stats":[{"name":"docgen.sh","lines_changed":4},{"name":"docs/parsers/systemctl_lj.md","lines_changed":94},{"name":"docs/parsers/systemctl_lm.md","lines_changed":76},{"name":"docs/parsers/systemctl_ls.md","lines_changed":68},{"name":"docs/parsers/systemctl_luf.md","lines_changed":64}]},"message":"add systemctl list parsers"},{"commit":"31eb65acd18b6d9163de900dbe48807a41a23785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_lm.py"],"file_stats":[{"name":"jc/parsers/systemctl_lm.py","lines_changed":4}]},"message":"doc fix"},{"commit":"513bbeb4649c011476930e1d1bf739ff06c2d66f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/systemctl_lj.py"],"file_stats":[{"name":"jc/parsers/systemctl_lj.py","lines_changed":2}]},"message":"add break on footer condition"},{"commit":"3a52fb725a0e56b52a0ea430266400b268360737","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":55,"deletions":29,"files":["jc/cli.py","jc/parsers/systemctl_lj.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4},{"name":"jc/parsers/systemctl_lj.py","lines_changed":80}]},"message":"add systemctl list-jobs parser"},{"commit":"5affd444999de88b9bff7b49d790913540f97cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":342,"deletions":24,"files":["jc/cli.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_lm.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":11},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":110},{"name":"jc/parsers/systemctl_lm.py","lines_changed":110},{"name":"jc/parsers/systemctl_ls.py","lines_changed":101},{"name":"jc/parsers/systemctl_luf.py","lines_changed":32}]},"message":"add systemctl_lj, lm, ls, and luf"},{"commit":"5dbc6e806c5d05bfa1f7e2156ed2573341eb23c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":142,"deletions":29,"files":["jc/cli.py","jc/parsers/systemctl_luf.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":61},{"name":"jc/parsers/systemctl_luf.py","lines_changed":110}]},"message":"add systemctl_luf parser"},{"commit":"59ae31f3f342c9337037aac4630310c9b9eb8287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":219,"deletions":0,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/systemctl.md","jc/cli.py","jc/parsers/systemctl.py"],"file_stats":[{"name":"README.md","lines_changed":29},{"name":"changelog.txt","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/systemctl.md","lines_changed":76},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/systemctl.py","lines_changed":109}]},"message":"add systemctl parser"},{"commit":"230e921c2e8d931ea8a6abdf81215dbfc968b41c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"remove fstab from TODO"},{"commit":"a7c3d88b08ab90b719035cb15d78afe708235742","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":136,"deletions":0,"files":["docgen.sh","docs/parsers/fstab.md","jc/parsers/fstab.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/fstab.md","lines_changed":107},{"name":"jc/parsers/fstab.py","lines_changed":28}]},"message":"update example and docs"},{"commit":"9b453bcb84dd9f2f566955eda1ab35c863b3e8a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":13,"files":["jc/parsers/fstab.py"],"file_stats":[{"name":"jc/parsers/fstab.py","lines_changed":14}]},"message":"remove commented code block"},{"commit":"ce43c782f601fc12267fa22279e8e0142ecc3a7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"fstab update"},{"commit":"cb16faaf4d1700379d53053fe06824fd03404f87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"helptext update"},{"commit":"3f1d3ff6d85422536e0adfb6433fd3ec0399ebe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":73,"deletions":6,"files":["README.md","jc/parsers/fstab.py"],"file_stats":[{"name":"README.md","lines_changed":31},{"name":"jc/parsers/fstab.py","lines_changed":48}]},"message":"add examples"},{"commit":"6f67eecd5ed46f8a692ff5dd607a2395a5c838ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":108,"deletions":0,"files":["jc/cli.py","jc/parsers/fstab.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/fstab.py","lines_changed":105}]},"message":"add fstab parser"},{"commit":"e75c819190634f0a9048942b39eda691831829ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"changelog update"},{"commit":"601e68d104dd43940acadaa574dfd9b5117b0476","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/hosts.md","jc/parsers/hosts.py"],"file_stats":[{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2}]},"message":"doc update"},{"commit":"8285ecfd1e7810102cdbc399398a16f999c841ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["tests/fixtures/centos-7.7/hosts.out","tests/fixtures/ubuntu-18.04/hosts.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/hosts.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/hosts.out","lines_changed":3}]},"message":"enhance test file with comments"},{"commit":"8726de902e527b95a12afd79a53d533cc176703d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"add hosts parser"},{"commit":"4133585274b0e7faa0255a911468248eb390d673","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":53,"deletions":0,"files":["tests/fixtures/centos-7.7/hosts.json","tests/fixtures/centos-7.7/hosts.out","tests/fixtures/ubuntu-18.04/hosts.json","tests/fixtures/ubuntu-18.04/hosts.out","tests/test_hosts.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/hosts.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/hosts.out","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/hosts.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/hosts.out","lines_changed":9},{"name":"tests/test_hosts.py","lines_changed":40}]},"message":"add hosts tests"},{"commit":"ad913b141721655a72a7b2a6ad60037e5acd5f9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":148,"deletions":2,"files":["README.md","docgen.sh","docs/parsers/hosts.md","jc/parsers/hosts.py"],"file_stats":[{"name":"README.md","lines_changed":51},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/hosts.md","lines_changed":96},{"name":"jc/parsers/hosts.py","lines_changed":2}]},"message":"add hosts docs"},{"commit":"7113e5a844fc0304f62f4afe65b5cbc816f75372","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":0,"files":["jc/parsers/hosts.py"],"file_stats":[{"name":"jc/parsers/hosts.py","lines_changed":10}]},"message":"filter out comments at the end of the line"},{"commit":"a3a8369dc0e7227072f595cef1e57d471eff4d2f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":51,"deletions":9,"files":["jc/parsers/hosts.py"],"file_stats":[{"name":"jc/parsers/hosts.py","lines_changed":60}]},"message":"add docs"},{"commit":"64016b8ef049d5d4f02b4371f5cc9632c19bcaa2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["jc/cli.py","jc/parsers/hosts.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/hosts.py","lines_changed":89}]},"message":"add hosts parser"},{"commit":"1cb49d60c84054b0446f299f6b4bab7d102101c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"remove sar and sadf"},{"commit":"c858adfd12144569d0b990a217c5bcd75bd23828","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"remove stat from todo"},{"commit":"08d68327c777dd740d93a1b5fff8cf62f58904c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":8080,"deletions":0,"files":["tests/fixtures/centos-7.7/stat.json","tests/fixtures/centos-7.7/stat.out","tests/fixtures/ubuntu-18.04/stat.json","tests/fixtures/ubuntu-18.04/stat.out","tests/test_stat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/stat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/stat.out","lines_changed":6678},{"name":"tests/fixtures/ubuntu-18.04/stat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/stat.out","lines_changed":1360},{"name":"tests/test_stat.py","lines_changed":40}]},"message":"add stat tests"},{"commit":"0d7c6c5664911af7a41149d51dd6ae05b39d7648","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/parsers/stat.md","jc/parsers/stat.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":8}]},"message":"doc fix and add continue lines"},{"commit":"8bfa41dbf485cb06c928bc00a68727d2ceac21fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":22,"deletions":14,"files":["README.md","docs/parsers/stat.md","jc/parsers/stat.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docs/parsers/stat.md","lines_changed":12},{"name":"jc/parsers/stat.py","lines_changed":20}]},"message":"change values to null if -"},{"commit":"7e2fa48ed4f3fd452082ce06e7306efd38b2d508","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"update changelog"},{"commit":"340635cad5224f2c715bf961956f4b9b6119d80b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":408,"deletions":111,"files":["docgen.sh","docs/parsers/ss.md","docs/parsers/stat.md"],"file_stats":[{"name":"docgen.sh","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":363},{"name":"docs/parsers/stat.md","lines_changed":154}]},"message":"fix stats doc"},{"commit":"8f77d1de098f035767d73a6965a695b95b75e161","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":111,"deletions":253,"files":["docgen.sh","docs/parsers/ss.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ss.md","lines_changed":363}]},"message":"add stat docs"},{"commit":"7dcf1b25ffb801375f0bf4263f34713ded904de9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":0,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":13}]},"message":"add link_to field"},{"commit":"9b735381063a1167a6a74864a43b81aefd98009f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":2}]},"message":"set compatibility to linux only"},{"commit":"3bf8c8c6dbdf7e03e26b4581e35c3274084c07ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":27,"deletions":27,"files":["jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/mount.py","lines_changed":6},{"name":"jc/parsers/netstat.py","lines_changed":8},{"name":"jc/parsers/ps.py","lines_changed":8},{"name":"jc/parsers/route.py","lines_changed":8},{"name":"jc/parsers/uname.py","lines_changed":8},{"name":"jc/parsers/uptime.py","lines_changed":8},{"name":"jc/parsers/w.py","lines_changed":8}]},"message":"pep8 fixes"},{"commit":"04a1ff2ca7873d55cdbc831e521f3d4892074d98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":28,"deletions":28,"files":["jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":8},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":6},{"name":"jc/parsers/jobs.py","lines_changed":6},{"name":"jc/parsers/ls.py","lines_changed":8},{"name":"jc/parsers/lsblk.py","lines_changed":10},{"name":"jc/parsers/lsmod.py","lines_changed":8},{"name":"jc/parsers/lsof.py","lines_changed":8}]},"message":"pep8 fixes"},{"commit":"64647d230ac936cb43864481ae0f45d13707d7b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":21,"deletions":21,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":8},{"name":"jc/parsers/dig.py","lines_changed":8},{"name":"jc/parsers/env.py","lines_changed":8},{"name":"jc/parsers/foo.py","lines_changed":8},{"name":"jc/parsers/free.py","lines_changed":6}]},"message":"pep8 cleanup"},{"commit":"c2a67e1b70f33044aecabd8b46018117cb38cb9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":213,"deletions":16,"files":["README.md","jc/parsers/stat.py"],"file_stats":[{"name":"README.md","lines_changed":48},{"name":"jc/parsers/stat.py","lines_changed":181}]},"message":"add stat parser"},{"commit":"edb9a7c76e1fedaf37b6a226ad4e1cfc08a9a5ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":94,"deletions":0,"files":["jc/cli.py","jc/parsers/stat.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/stat.py","lines_changed":91}]},"message":"add stat parser"},{"commit":"a407f5b67833cc5f8dda9fe8265cd34e62f28d14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"minor update"},{"commit":"e5b4987acb70e854d9996350235c5535b4a46b69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"doc update"},{"commit":"ba8cc18eebe779742cff0ba4c8bebe376e787c8c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":405,"deletions":0,"files":["tests/fixtures/centos-7.7/ss-sudo-a.json","tests/fixtures/centos-7.7/ss-sudo-a.out","tests/fixtures/ubuntu-18.04/ss-sudo-a.json","tests/fixtures/ubuntu-18.04/ss-sudo-a.out","tests/test_ss.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ss-sudo-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ss-sudo-a.out","lines_changed":204},{"name":"tests/fixtures/ubuntu-18.04/ss-sudo-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ss-sudo-a.out","lines_changed":159},{"name":"tests/test_ss.py","lines_changed":40}]},"message":"add ss tests"},{"commit":"d2c7316e00b9aaf19231c05351821041458baf98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"update command options info"},{"commit":"609aa14d243206e81ed31f8438c3f42e8263e140","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/ss.md","jc/parsers/ss.py"],"file_stats":[{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2}]},"message":"spelling fix"},{"commit":"ef1ad4c700fcb740b5fbe1e12205b9a30ae427ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["docs/parsers/ss.md","jc/parsers/ss.py"],"file_stats":[{"name":"docs/parsers/ss.md","lines_changed":3},{"name":"jc/parsers/ss.py","lines_changed":3}]},"message":"doc update"},{"commit":"a0e2732152dc3005914b9a3e4f03e937a113c67f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":64,"deletions":12,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":76}]},"message":"add ss example"},{"commit":"9b5d3e3be1ac07813e716f8426fe89cced478221","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":135,"deletions":25,"files":["docs/parsers/ss.md"],"file_stats":[{"name":"docs/parsers/ss.md","lines_changed":160}]},"message":"update doc"},{"commit":"2663ef31fbc1b69b89b8032640a25065cc953866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":159,"deletions":30,"files":["jc/parsers/ss.py"],"file_stats":[{"name":"jc/parsers/ss.py","lines_changed":189}]},"message":"fix field names per ss documentation"},{"commit":"a4cdd3378e6a031f16dd371ed5cd60ff018feb32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":6}]},"message":"add compatibility info"},{"commit":"2f805da24d0e833e3d2a1f3a5ec34031fa911c05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":45,"insertions":51,"deletions":51,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/utils.md","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/utils.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":8},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":8}]},"message":"add colon to parameter in docs"},{"commit":"79152a946d93e4facf9711bfa0f421e1978e0f1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":3}]},"message":"initialize network_list and socket_list variables"},{"commit":"de37bb37d01b397df2b5992b4acd64817380401d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":187,"deletions":1,"files":["docgen.sh","docs/parsers/ss.md","jc/parsers/ss.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ss.md","lines_changed":184},{"name":"jc/parsers/ss.py","lines_changed":3}]},"message":"add ss docs"},{"commit":"f783e44e5c0cd05733da5d24573f06d05760f993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"changelog.txt","lines_changed":1}]},"message":"doc fix"},{"commit":"af82f2c991ac0668485e75ae78a26b9553ec8b13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update raw format note"},{"commit":"46774daf9d3e0612df8f79d4b6b724e612ceb725","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":194,"deletions":4,"files":["README.md","jc/parsers/ss.py"],"file_stats":[{"name":"README.md","lines_changed":68},{"name":"jc/parsers/ss.py","lines_changed":130}]},"message":"doc update"},{"commit":"648306b7856fe2e296ce463ff4c9c2a8632c92d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":44,"deletions":22,"files":["jc/parsers/ss.py"],"file_stats":[{"name":"jc/parsers/ss.py","lines_changed":66}]},"message":"process ss data"},{"commit":"b7a4f205b80c0a6a41aaabf59703525ac526c295","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":17,"deletions":14,"files":["jc/parsers/ss.py"],"file_stats":[{"name":"jc/parsers/ss.py","lines_changed":31}]},"message":"parser fixes"},{"commit":"fdb168b43a69358a97bf43b71a0adbc7b1ef56f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":120,"deletions":0,"files":["jc/cli.py","jc/parsers/ss.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/ss.py","lines_changed":117}]},"message":"add ss parser"},{"commit":"b6f65c93c462856f26201df0cbfe804b29a65169","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":43,"deletions":69,"files":["README.md","docs/parsers/ps.md","jc/parsers/ps.py"],"file_stats":[{"name":"README.md","lines_changed":26},{"name":"docs/parsers/ps.md","lines_changed":43},{"name":"jc/parsers/ps.py","lines_changed":43}]},"message":"ps doc update"},{"commit":"3f4838f17a81969718d9e5b6bafa21e0b92e1d95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":6,"files":["docgen.sh","docs/cli.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/cli.md","lines_changed":5}]},"message":"remove cli.md"},{"commit":"eef0dee2aa206716d9cf011bec58a06c46bbee15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":0,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":4},{"name":"jc/utils.py","lines_changed":4}]},"message":"doc update"},{"commit":"e17388d3b2d1521d963bf9dd9e7a4ba5ba9bb09d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":44,"deletions":4,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":22},{"name":"jc/utils.py","lines_changed":26}]},"message":"doc update"},{"commit":"7e6a1bc719b7160ba70cd326ff6aa182993a7380","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":41,"deletions":63,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":51},{"name":"jc/__init__.py","lines_changed":53}]},"message":"doc update"},{"commit":"37738a2ea2f15af847e4b8383aba911e2020a3e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update contributions"},{"commit":"c5834a57db8957723a1425b9db46c433e28a3af1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":14}]},"message":"add todo section"},{"commit":"91b9373f380e06f91888811edbfb21747ff08810","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":417,"deletions":673,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1090}]},"message":"new examples"},{"commit":"ce0bb5b816eed0c75542ead474c3dcb8401be2d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting fix"},{"commit":"f330ff0eff00586f46d18497f2441e94b6430e91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":12}]},"message":"wrap example text"},{"commit":"4b02700414660b90518311485761870402368625","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":20,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":29}]},"message":"update simple examples"},{"commit":"ee30180376b7acec46314bbc483866bff41c362a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"fix note"},{"commit":"338e0ff15c7fac84475c1ed107e6a23e7a009b1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add schema note"},{"commit":"3ac75305dfa33429646bb5d415567034cccfeee3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":39,"insertions":351,"deletions":39,"files":["docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/df.md","lines_changed":10},{"name":"docs/parsers/dig.md","lines_changed":10},{"name":"docs/parsers/env.md","lines_changed":10},{"name":"docs/parsers/free.md","lines_changed":10},{"name":"docs/parsers/history.md","lines_changed":10},{"name":"docs/parsers/ifconfig.md","lines_changed":10},{"name":"docs/parsers/iptables.md","lines_changed":10},{"name":"docs/parsers/jobs.md","lines_changed":10},{"name":"docs/parsers/ls.md","lines_changed":10},{"name":"docs/parsers/lsblk.md","lines_changed":10},{"name":"docs/parsers/lsmod.md","lines_changed":10},{"name":"docs/parsers/lsof.md","lines_changed":10},{"name":"docs/parsers/mount.md","lines_changed":10},{"name":"docs/parsers/netstat.md","lines_changed":10},{"name":"docs/parsers/ps.md","lines_changed":10},{"name":"docs/parsers/route.md","lines_changed":10},{"name":"docs/parsers/uname.md","lines_changed":10},{"name":"docs/parsers/uptime.md","lines_changed":10},{"name":"docs/parsers/w.md","lines_changed":10},{"name":"jc/parsers/df.py","lines_changed":10},{"name":"jc/parsers/dig.py","lines_changed":10},{"name":"jc/parsers/env.py","lines_changed":10},{"name":"jc/parsers/foo.py","lines_changed":10},{"name":"jc/parsers/free.py","lines_changed":10},{"name":"jc/parsers/history.py","lines_changed":10},{"name":"jc/parsers/ifconfig.py","lines_changed":10},{"name":"jc/parsers/iptables.py","lines_changed":10},{"name":"jc/parsers/jobs.py","lines_changed":10},{"name":"jc/parsers/ls.py","lines_changed":10},{"name":"jc/parsers/lsblk.py","lines_changed":10},{"name":"jc/parsers/lsmod.py","lines_changed":10},{"name":"jc/parsers/lsof.py","lines_changed":10},{"name":"jc/parsers/mount.py","lines_changed":10},{"name":"jc/parsers/netstat.py","lines_changed":10},{"name":"jc/parsers/ps.py","lines_changed":10},{"name":"jc/parsers/route.py","lines_changed":10},{"name":"jc/parsers/uname.py","lines_changed":10},{"name":"jc/parsers/uptime.py","lines_changed":10},{"name":"jc/parsers/w.py","lines_changed":10}]},"message":"update process() doc"},{"commit":"3bdcf44afb708cf6a716a0847b119f895602c23e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":18,"deletions":2,"files":["docs/parsers/arp.md","jc/parsers/arp.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":10},{"name":"jc/parsers/arp.py","lines_changed":10}]},"message":"doc update"},{"commit":"e3f4ffede56fe48c0a282a021ac5cdfd7a8abee9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":20,"insertions":172,"deletions":77,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":13},{"name":"docs/parsers/dig.md","lines_changed":13},{"name":"docs/parsers/env.md","lines_changed":13},{"name":"docs/parsers/free.md","lines_changed":13},{"name":"docs/parsers/history.md","lines_changed":13},{"name":"docs/parsers/ifconfig.md","lines_changed":13},{"name":"docs/parsers/iptables.md","lines_changed":13},{"name":"docs/parsers/jobs.md","lines_changed":13},{"name":"docs/parsers/ls.md","lines_changed":13},{"name":"docs/parsers/lsblk.md","lines_changed":13},{"name":"docs/parsers/lsmod.md","lines_changed":13},{"name":"docs/parsers/lsof.md","lines_changed":13},{"name":"docs/parsers/mount.md","lines_changed":13},{"name":"docs/parsers/netstat.md","lines_changed":13},{"name":"docs/parsers/ps.md","lines_changed":13},{"name":"docs/parsers/route.md","lines_changed":13},{"name":"docs/parsers/uname.md","lines_changed":13},{"name":"docs/parsers/uptime.md","lines_changed":13},{"name":"docs/parsers/w.md","lines_changed":13}]},"message":"doc update"},{"commit":"f0c8725d4355113f7690f20bb99078e488084ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":181,"deletions":81,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":13},{"name":"jc/parsers/dig.py","lines_changed":13},{"name":"jc/parsers/env.py","lines_changed":13},{"name":"jc/parsers/foo.py","lines_changed":13},{"name":"jc/parsers/free.py","lines_changed":13},{"name":"jc/parsers/history.py","lines_changed":13},{"name":"jc/parsers/ifconfig.py","lines_changed":13},{"name":"jc/parsers/iptables.py","lines_changed":13},{"name":"jc/parsers/jobs.py","lines_changed":13},{"name":"jc/parsers/ls.py","lines_changed":13},{"name":"jc/parsers/lsblk.py","lines_changed":13},{"name":"jc/parsers/lsmod.py","lines_changed":13},{"name":"jc/parsers/lsof.py","lines_changed":13},{"name":"jc/parsers/mount.py","lines_changed":13},{"name":"jc/parsers/netstat.py","lines_changed":13},{"name":"jc/parsers/ps.py","lines_changed":13},{"name":"jc/parsers/route.py","lines_changed":13},{"name":"jc/parsers/uname.py","lines_changed":13},{"name":"jc/parsers/uptime.py","lines_changed":13},{"name":"jc/parsers/w.py","lines_changed":13}]},"message":"doc update"},{"commit":"5473bc4eb697d00bd26a038287e1137e438cacb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":16,"deletions":6,"files":["docs/parsers/arp.md","jc/parsers/arp.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":11},{"name":"jc/parsers/arp.py","lines_changed":11}]},"message":"doc update"},{"commit":"b9bd9422bfa46144416fa65add2e041d4124357b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":380,"deletions":46,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":213},{"name":"jc/parsers/dig.py","lines_changed":213}]},"message":"doc update"},{"commit":"cb5729a070925a7fa29f762bd4b074532f5cba55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":62,"deletions":44,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":106}]},"message":"add options to docs"},{"commit":"f0b1ab42337746afd37365abdf44729d530d5410","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":1},{"name":"jc/utils.py","lines_changed":1}]},"message":"doc update"},{"commit":"b15386e849b9fea347e7b17307eedf779d8022fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":11,"deletions":5,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":7},{"name":"jc/utils.py","lines_changed":9}]},"message":"doc update"},{"commit":"d2a2c8da35ee44e9a7572885609548eb809bcdda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":5,"files":["docs/parsers/iptables.md","docs/parsers/mount.md","docs/parsers/uname.md"],"file_stats":[{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2}]},"message":"doc updates"},{"commit":"7251548cbb09beae6971385a56036e9649bd9b2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":5,"files":["jc/parsers/iptables.py","jc/parsers/mount.py","jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":3},{"name":"jc/parsers/uname.py","lines_changed":3}]},"message":"documentation updates"},{"commit":"146e29f7cbc0f396be67dbd7ae971a4ef4dafb7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":47,"insertions":5386,"deletions":2249,"files":["docgen.sh","docs/cli.md","docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/readme.md","docs/utils.md","jc/__init__.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/utils.py"],"file_stats":[{"name":"docgen.sh","lines_changed":27},{"name":"docs/cli.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":110},{"name":"docs/parsers/df.md","lines_changed":97},{"name":"docs/parsers/dig.md","lines_changed":212},{"name":"docs/parsers/env.md","lines_changed":72},{"name":"docs/parsers/free.md","lines_changed":77},{"name":"docs/parsers/history.md","lines_changed":64},{"name":"docs/parsers/ifconfig.md","lines_changed":170},{"name":"docs/parsers/iptables.md","lines_changed":168},{"name":"docs/parsers/jobs.md","lines_changed":98},{"name":"docs/parsers/ls.md","lines_changed":168},{"name":"docs/parsers/lsblk.md","lines_changed":273},{"name":"docs/parsers/lsmod.md","lines_changed":130},{"name":"docs/parsers/lsof.md","lines_changed":124},{"name":"docs/parsers/mount.md","lines_changed":82},{"name":"docs/parsers/netstat.md","lines_changed":352},{"name":"docs/parsers/ps.md","lines_changed":223},{"name":"docs/parsers/route.md","lines_changed":129},{"name":"docs/parsers/uname.md","lines_changed":55},{"name":"docs/parsers/uptime.md","lines_changed":56},{"name":"docs/parsers/w.md","lines_changed":108},{"name":"docs/readme.md","lines_changed":79},{"name":"docs/utils.md","lines_changed":22},{"name":"jc/__init__.py","lines_changed":135},{"name":"jc/parsers/arp.py","lines_changed":176},{"name":"jc/parsers/df.py","lines_changed":129},{"name":"jc/parsers/dig.py","lines_changed":362},{"name":"jc/parsers/env.py","lines_changed":101},{"name":"jc/parsers/foo.py","lines_changed":37},{"name":"jc/parsers/free.py","lines_changed":111},{"name":"jc/parsers/history.py","lines_changed":85},{"name":"jc/parsers/ifconfig.py","lines_changed":294},{"name":"jc/parsers/iptables.py","lines_changed":271},{"name":"jc/parsers/jobs.py","lines_changed":150},{"name":"jc/parsers/ls.py","lines_changed":280},{"name":"jc/parsers/lsblk.py","lines_changed":499},{"name":"jc/parsers/lsmod.py","lines_changed":211},{"name":"jc/parsers/lsof.py","lines_changed":205},{"name":"jc/parsers/mount.py","lines_changed":115},{"name":"jc/parsers/netstat.py","lines_changed":661},{"name":"jc/parsers/ps.py","lines_changed":389},{"name":"jc/parsers/route.py","lines_changed":213},{"name":"jc/parsers/uname.py","lines_changed":57},{"name":"jc/parsers/uptime.py","lines_changed":69},{"name":"jc/parsers/w.py","lines_changed":173},{"name":"jc/utils.py","lines_changed":11}]},"message":"update docs"},{"commit":"363fd3eab409351121dab8a11c6b565829ccd84a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"move parser_name to except block"},{"commit":"4083dd4260ff3a8bb6649e1661cf3e058fdbad59","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":24,"deletions":5,"files":["changelog.txt","jc/cli.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/cli.py","lines_changed":28}]},"message":"add -d option"},{"commit":"b2b74547baaf33058d74fc08cb665777b19bd05a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":317,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-sudo-aeep.json","tests/fixtures/centos-7.7/netstat-sudo-aeep.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.json","tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.out","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/netstat-sudo-aeep.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-sudo-aeep.out","lines_changed":164},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.out","lines_changed":126},{"name":"tests/test_netstat.py","lines_changed":24}]},"message":"add netstat-sudo-aeep tests"},{"commit":"dddb0baabf8a78261ac80380b97e7c92c7ce4d89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":8}]},"message":"use \\u2063 instead of \\u2026"},{"commit":"84b4f67ef9d4bb0db201a095d74400a56394589d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["tests/fixtures/centos-7.7/ps-axu.json","tests/fixtures/ubuntu-18.04/ps-axu.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ps-axu.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ps-axu.json","lines_changed":2}]},"message":"new json output"},{"commit":"3a089138b8c269ba3c5f7aec87ae3f8ec368c3ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":129,"deletions":9,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":138}]},"message":"add int and float changes"},{"commit":"3ff0305c8e62ce3b5a8f3f9174c5a9da3bc22766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":54,"deletions":2,"files":["tests/fixtures/centos-7.7/lsblk-allcols.json","tests/fixtures/centos-7.7/lsblk-allcols.out","tests/fixtures/centos-7.7/lsblk.json","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/lsblk-allcols.json","tests/fixtures/ubuntu-18.04/lsblk-allcols.out","tests/fixtures/ubuntu-18.04/lsblk.json","tests/test_lsblk.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/lsblk-allcols.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsblk-allcols.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/lsblk.json","lines_changed":2},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsblk-allcols.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsblk-allcols.out","lines_changed":18},{"name":"tests/fixtures/ubuntu-18.04/lsblk.json","lines_changed":2},{"name":"tests/test_lsblk.py","lines_changed":24}]},"message":"add lsblk tests"},{"commit":"761edc3c6cfc215fe45c65ee2bb5462cb460b6a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":6,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":7}]},"message":"remove unused parse_pairs function"},{"commit":"3351c81f647ac97a5038cc0c14adb31e55832a77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":200,"deletions":2,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":202}]},"message":"add documentation"},{"commit":"3dfc6f67d770c59804bdeb371d5c78e3f3668f9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":6}]},"message":"change empty values to Null"},{"commit":"1546ec3bd139ef687282f60786388b5207541c98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":17,"deletions":13,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":30}]},"message":"fixes for right justified columns"},{"commit":"2a953011f72e922c89b9af6dfebd1983da7c338d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":50,"deletions":155,"files":["changelog.txt","jc/parsers/lsblk.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":203}]},"message":"rewrite of lsblk parser to use a custom delimiter"},{"commit":"d2f755de9d2be7b0af5f010042e1f4ca589c5464","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":14,"insertions":250,"deletions":566,"files":["tests/test_ifconfig.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_ls.py","tests/test_lsblk.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_ps.py","tests/test_route.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py"],"file_stats":[{"name":"tests/test_ifconfig.py","lines_changed":59},{"name":"tests/test_iptables.py","lines_changed":249},{"name":"tests/test_jobs.py","lines_changed":19},{"name":"tests/test_ls.py","lines_changed":58},{"name":"tests/test_lsblk.py","lines_changed":25},{"name":"tests/test_lsmod.py","lines_changed":22},{"name":"tests/test_lsof.py","lines_changed":59},{"name":"tests/test_mount.py","lines_changed":30},{"name":"tests/test_netstat.py","lines_changed":110},{"name":"tests/test_ps.py","lines_changed":57},{"name":"tests/test_route.py","lines_changed":51},{"name":"tests/test_uname.py","lines_changed":27},{"name":"tests/test_uptime.py","lines_changed":23},{"name":"tests/test_w.py","lines_changed":27}]},"message":"updates tests"},{"commit":"f363334639c5fa3a43889794ea52409056a2d886","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":87,"deletions":219,"files":["tests/test_df.py","tests/test_dig.py","tests/test_env.py","tests/test_free.py","tests/test_history.py"],"file_stats":[{"name":"tests/test_df.py","lines_changed":43},{"name":"tests/test_dig.py","lines_changed":196},{"name":"tests/test_env.py","lines_changed":13},{"name":"tests/test_free.py","lines_changed":41},{"name":"tests/test_history.py","lines_changed":13}]},"message":"update tests"},{"commit":"750197e48596ad96804477053d3ff3c8063ea68a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":70,"files":["tests/test_arp.py"],"file_stats":[{"name":"tests/test_arp.py","lines_changed":97}]},"message":"new tests"},{"commit":"36b349e4ed39fe611c7d87a47c378cc4d4627ad2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":76,"insertions":76,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-a.json","tests/fixtures/centos-7.7/arp-v.json","tests/fixtures/centos-7.7/arp.json","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/df.json","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/centos-7.7/env.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/centos-7.7/free.json","tests/fixtures/centos-7.7/history.json","tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/centos-7.7/iptables-filter-nv.json","tests/fixtures/centos-7.7/iptables-filter.json","tests/fixtures/centos-7.7/iptables-mangle.json","tests/fixtures/centos-7.7/iptables-nat.json","tests/fixtures/centos-7.7/iptables-raw.json","tests/fixtures/centos-7.7/jobs.json","tests/fixtures/centos-7.7/ls-al.json","tests/fixtures/centos-7.7/ls-alh.json","tests/fixtures/centos-7.7/ls.json","tests/fixtures/centos-7.7/lsblk.json","tests/fixtures/centos-7.7/lsmod.json","tests/fixtures/centos-7.7/lsof-sudo.json","tests/fixtures/centos-7.7/lsof.json","tests/fixtures/centos-7.7/mount.json","tests/fixtures/centos-7.7/netstat-l.json","tests/fixtures/centos-7.7/netstat-p.json","tests/fixtures/centos-7.7/netstat-sudo-lnp.json","tests/fixtures/centos-7.7/netstat.json","tests/fixtures/centos-7.7/ps-axu.json","tests/fixtures/centos-7.7/ps-ef.json","tests/fixtures/centos-7.7/route-vn.json","tests/fixtures/centos-7.7/route.json","tests/fixtures/centos-7.7/uname-a.json","tests/fixtures/centos-7.7/uptime.json","tests/fixtures/centos-7.7/w.json","tests/fixtures/ubuntu-18.04/arp-a.json","tests/fixtures/ubuntu-18.04/arp-v.json","tests/fixtures/ubuntu-18.04/arp.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/df.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json","tests/fixtures/ubuntu-18.04/env.json","tests/fixtures/ubuntu-18.04/free-h.json","tests/fixtures/ubuntu-18.04/free.json","tests/fixtures/ubuntu-18.04/history.json","tests/fixtures/ubuntu-18.04/ifconfig.json","tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","tests/fixtures/ubuntu-18.04/iptables-filter.json","tests/fixtures/ubuntu-18.04/iptables-mangle.json","tests/fixtures/ubuntu-18.04/iptables-nat.json","tests/fixtures/ubuntu-18.04/iptables-raw.json","tests/fixtures/ubuntu-18.04/jobs.json","tests/fixtures/ubuntu-18.04/ls-al.json","tests/fixtures/ubuntu-18.04/ls-alh.json","tests/fixtures/ubuntu-18.04/ls.json","tests/fixtures/ubuntu-18.04/lsblk.json","tests/fixtures/ubuntu-18.04/lsmod.json","tests/fixtures/ubuntu-18.04/lsof-sudo.json","tests/fixtures/ubuntu-18.04/lsof.json","tests/fixtures/ubuntu-18.04/mount.json","tests/fixtures/ubuntu-18.04/netstat-l.json","tests/fixtures/ubuntu-18.04/netstat-p.json","tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.json","tests/fixtures/ubuntu-18.04/netstat.json","tests/fixtures/ubuntu-18.04/ps-axu.json","tests/fixtures/ubuntu-18.04/ps-ef.json","tests/fixtures/ubuntu-18.04/route-vn.json","tests/fixtures/ubuntu-18.04/route.json","tests/fixtures/ubuntu-18.04/uname-a.json","tests/fixtures/ubuntu-18.04/uptime.json","tests/fixtures/ubuntu-18.04/w.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/arp-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/arp-v.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/arp.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/df-h.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/df.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/dig-aaaa.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/dig-x.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/dig.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/env.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/free-h.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/free.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/history.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ifconfig.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-filter-nv.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-filter.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-mangle.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-nat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-raw.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/jobs.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-al.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-alh.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsblk.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsmod.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsof-sudo.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsof.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mount.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-l.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-sudo-lnp.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ps-axu.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ps-ef.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/route-vn.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/route.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/uname-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/uptime.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/w.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/arp-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/arp-v.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/arp.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/df-h.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/df.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dig-aaaa.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dig-x.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dig.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/env.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/free-h.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/free.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/history.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ifconfig.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-mangle.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-nat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-raw.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/jobs.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-al.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-alh.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsblk.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsmod.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsof-sudo.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsof.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/mount.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-l.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ps-axu.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ps-ef.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/route-vn.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/route.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/uname-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/uptime.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/w.json","lines_changed":1}]},"message":"json output files"},{"commit":"b5f1e94fe2859c4fbcf126f8f8fb20d71a9b6433","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":1}]},"message":"fix for space before '-' in program_name"},{"commit":"6a504fb0e10b1ef551ed9fe780926fe5ca02d267","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2}]},"message":"add exception type"},{"commit":"e02bad2240bacbc31097d931a902a34217d559db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":123,"deletions":175,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":298}]},"message":"update documentation"},{"commit":"1d4043a3b64c38a20a0db065c3bdc3c6a2d068bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":52,"deletions":0,"files":["jc/parsers/foo.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":52}]},"message":"add template parser"},{"commit":"039e034829789ca314a00abd4f1d9ad06f1a6eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":6,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":25}]},"message":"fix parsing issues in program_name when spaces are in the name"},{"commit":"d828de4f4f2f4c3d582fddee79830d12511c3299","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":53,"deletions":9,"files":["jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/w.py","lines_changed":62}]},"message":"update documentation"},{"commit":"098000bb10a3f5ed33d285c6ba4f0dfb9a013fdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":24,"deletions":9,"files":["changelog.txt","jc/parsers/w.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/w.py","lines_changed":32}]},"message":"fix blank 'from' column issue"},{"commit":"b41165eff5cd7371e852cd33e084a919524ead9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":31,"deletions":1,"files":["jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/w.py","lines_changed":32}]},"message":"process w data"},{"commit":"6ad7891b2b34fae1a366568e4eba86e886a6dd84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":59,"deletions":14,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":73}]},"message":"process uptime data"},{"commit":"72138315598cd405bc0508b554108bf3f730dcb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":31,"deletions":10,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":41}]},"message":"add process boilerplate"},{"commit":"10eedd82e4c4678fbf989fe599d7ca75deced5a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]},"message":"changelog update"},{"commit":"a55493da0f1457a46f29511e0835adfa9d748f7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":93,"deletions":6,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":99}]},"message":"process route data"},{"commit":"89973f4162317693b0d094a64115ee87d8479d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":45,"deletions":27,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":72}]},"message":"doc updates and tty fix"},{"commit":"4802222ad50d55372f2b883d83a61181086b0619","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":11}]},"message":"process ps data"},{"commit":"bcd28f06f87a4260d1787399d723817afd6aee90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":1,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":24}]},"message":"prep ps for process"},{"commit":"e17a47a7fa7f4c1bb4c4b55fb004963fc1b61434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":2}]},"message":"fix typo"},{"commit":"cad2e16c7aa54a70f476bf4268ff8e5985cff468","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":353,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":354}]},"message":"document examples"},{"commit":"5da5d278dac77bd4aa21819194e7f9e178bd1887","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":0,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":23}]},"message":"process netstat data"},{"commit":"81b6776e57c113cbfb8346d1cfd83532a440c257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":177,"files":["jc/parsers/netstat.py.old"],"file_stats":[{"name":"jc/parsers/netstat.py.old","lines_changed":177}]},"message":"remove old netstat parser"},{"commit":"5ecb6bd58b4ed91f63e4a0b5939378bd9925b7b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":3,"files":["changelog.txt","jc/parsers/netstat.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":3}]},"message":"doc updates"},{"commit":"21b56096c57cfcf5c55fdf5f9bab88b6d5c7dd73","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":37}]},"message":"finalize parse_post"},{"commit":"8c78f959731a25a05ee6361a14853c92f8fce69b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":8}]},"message":"clean up trailing spaces on entries"},{"commit":"94a88bb5669d9a9a5dff085a4c4111bdd39df8f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":35,"deletions":17,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":52}]},"message":"post_parse flags and program_name"},{"commit":"579124475b0b517b36ddbe5bdb13be14807dea1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"simplify parser_map code"},{"commit":"5da83e020015eb5559d216bc3f39b3854e76adf3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"fix found variable error"},{"commit":"a90a76d004b923edece07a52a3aa400a9ef4b005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":177,"deletions":140,"files":["jc/parsers/netstat.py.old","jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/netstat.py.old","lines_changed":177},{"name":"jc/parsers/netstat2.py","lines_changed":140}]},"message":"move out old netstat parser"},{"commit":"bdfa95912398b2630fcb13e866f4013747fd0975","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":20,"insertions":209,"deletions":212,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":10},{"name":"jc/parsers/env.py","lines_changed":10},{"name":"jc/parsers/free.py","lines_changed":10},{"name":"jc/parsers/history.py","lines_changed":8},{"name":"jc/parsers/ifconfig.py","lines_changed":10},{"name":"jc/parsers/iptables.py","lines_changed":10},{"name":"jc/parsers/jobs.py","lines_changed":10},{"name":"jc/parsers/ls.py","lines_changed":10},{"name":"jc/parsers/lsblk.py","lines_changed":10},{"name":"jc/parsers/lsmod.py","lines_changed":10},{"name":"jc/parsers/lsof.py","lines_changed":10},{"name":"jc/parsers/mount.py","lines_changed":10},{"name":"jc/parsers/netstat.py","lines_changed":245},{"name":"jc/parsers/ps.py","lines_changed":10},{"name":"jc/parsers/route.py","lines_changed":10},{"name":"jc/parsers/uname.py","lines_changed":10},{"name":"jc/parsers/uptime.py","lines_changed":10},{"name":"jc/parsers/w.py","lines_changed":10}]},"message":"fix compatibility code"},{"commit":"4380594275bc863e81839a6a7b032a6ff0cbb9b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":46,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":54}]},"message":"remove cli functions from utils"},{"commit":"88bf252c0df3c583640286880d7992e4399e23f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":139,"deletions":128,"files":["jc/cli.py","jc/jc.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":139},{"name":"jc/jc.py","lines_changed":128}]},"message":"rename jc.py to cli.py"},{"commit":"a5efd8adce77fca7e3343f8f518c7bad578fdb4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"rename jc.py to cli.py"},{"commit":"2ee392eefffde77ebdf83f5e4e0c43cf8c1a7d6e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/netstat2.py","lines_changed":10}]},"message":"add quiet mode"},{"commit":"9c1d893e16ea17b16bec5fd0ec8839c4fe6f0590","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":102,"deletions":90,"files":["jc/jc.py","jc/parsers/arp.py","jc/parsers/df.py","jc/utils.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":107},{"name":"jc/parsers/arp.py","lines_changed":10},{"name":"jc/parsers/df.py","lines_changed":10},{"name":"jc/utils.py","lines_changed":65}]},"message":"move utils to own module and add quiet mode"},{"commit":"88dcb90c83b757285661c72429c5b60bb1ead94a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":6}]},"message":"changelog update"},{"commit":"a3bcabc89c1f74d067da0046492dbc56e50b1005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":62,"files":["jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/netstat2.py","lines_changed":71}]},"message":"mvp of netstat raw_data parser"},{"commit":"dafbf9fdcf53a8abbd006baef0be6697f860d2a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":247,"deletions":53,"files":["jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/lsmod.py","lines_changed":85},{"name":"jc/parsers/lsof.py","lines_changed":106},{"name":"jc/parsers/mount.py","lines_changed":31},{"name":"jc/parsers/netstat2.py","lines_changed":78}]},"message":"process lsmod data"},{"commit":"680cb2b2caa82e1e2c3225b3c44cae2ba03ba02c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":76,"deletions":7,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":83}]},"message":"doc update"},{"commit":"54818a06e0e0b981810f6aec45c308da81a9e2ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":8}]},"message":"change bool variable names"},{"commit":"88f4c5b5a93da3938b84f97abfc54539ee19ac48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":10,"deletions":10,"files":["jc/parsers/dig.py","jc/parsers/free.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":8},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":4},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"remove TypeError from exception check"},{"commit":"2bb7409887e8b7659613189daf58d02cb26bd6ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":36,"deletions":11,"files":["jc/parsers/df.py","jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/lsblk.py","lines_changed":42}]},"message":"process lsblk data"},{"commit":"c780aac3aba02cc042c6a3c984af198069956370","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":22,"insertions":91,"deletions":5,"files":["jc/jc.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat2.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":8},{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/df.py","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":5},{"name":"jc/parsers/env.py","lines_changed":5},{"name":"jc/parsers/free.py","lines_changed":4},{"name":"jc/parsers/history.py","lines_changed":5},{"name":"jc/parsers/ifconfig.py","lines_changed":5},{"name":"jc/parsers/iptables.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"jc/parsers/lsblk.py","lines_changed":1},{"name":"jc/parsers/lsmod.py","lines_changed":4},{"name":"jc/parsers/lsof.py","lines_changed":5},{"name":"jc/parsers/mount.py","lines_changed":5},{"name":"jc/parsers/netstat.py","lines_changed":5},{"name":"jc/parsers/netstat2.py","lines_changed":5},{"name":"jc/parsers/ps.py","lines_changed":4},{"name":"jc/parsers/route.py","lines_changed":4},{"name":"jc/parsers/uname.py","lines_changed":5},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/w.py","lines_changed":4}]},"message":"add compatibility function"},{"commit":"5010aaec285e26ae9dbfdb3fcdc38a3bd36cd236","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":2}]},"message":"put exit() back"},{"commit":"066e93cb075021ac94a0e2e6a36a34bc173ee6c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":2}]},"message":"move exit() to errormessage()"},{"commit":"0bd2faa7f71a128babc68afea053159ccb91b702","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":3}]},"message":"beautify compatibility list"},{"commit":"e2f926453ba386736204e358f8306dfc731b5005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["install.sh"],"file_stats":[{"name":"install.sh","lines_changed":2}]},"message":"add install script"},{"commit":"b953b79f9c46d8c5398a6c1c2769167b5aed2805","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":11,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4}]},"message":"add compatibility"},{"commit":"7f9967780692bec2fcbe992eee0c392ab92efb7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":19,"deletions":1,"files":["jc/jc.py","jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":16},{"name":"jc/parsers/lsblk.py","lines_changed":4}]},"message":"compatibility function call"},{"commit":"721b54665924ad1657ee83cd5fca601e03700962","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":8}]},"message":"finish schema"},{"commit":"2de5e41269421c73e07d4abd6ca99b38be736261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":95,"deletions":12,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":107}]},"message":"fix for more columns and build schema"},{"commit":"dfe0f6e99b6174734661fc43d9ad4b1d0dfd96e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":75,"deletions":9,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":84}]},"message":"process ls data"},{"commit":"8873b1bc697c8f9409fa676c88b5ebe109dc8717","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":46,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":70}]},"message":"clean up process code"},{"commit":"9ff94707004fefed475603436fc0a7ffb19e6fee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":4,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":13}]},"message":"refactor helptext() function"},{"commit":"2c58fca53044892e15ceb5e8bcae1afb09fa3269","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":62,"deletions":4,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":66}]},"message":"process jobs data"},{"commit":"9e5cd90da7d92bbadbc0d25071d087a3dbd90a5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":131,"deletions":261,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":392}]},"message":"process iptables data"},{"commit":"7ee0d49424bba5274975d6c33e0721977660692f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":107,"deletions":28,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":135}]},"message":"process ifconfig data"},{"commit":"a9058ee21e87454aa423112239c4f4df7daca8c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":4,"deletions":1,"files":["jc/parsers/arp.py","jc/parsers/dig.py","jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/dig.py","lines_changed":1},{"name":"jc/parsers/free.py","lines_changed":1}]},"message":"doc formatting"},{"commit":"fcf0aac87dccac2ce28e6f55e66e2f0b8f6fbd36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":54,"deletions":10,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":64}]},"message":"add history processing"},{"commit":"daec5f068103aae547509ddacc2be56c84f39f17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":55,"deletions":6,"files":["jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/free.py","lines_changed":61}]},"message":"process free data"},{"commit":"5b2491d5ae72705758944e247fbca83367c0365f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":54,"deletions":5,"files":["jc/parsers/env.py"],"file_stats":[{"name":"jc/parsers/env.py","lines_changed":59}]},"message":"process env data"},{"commit":"d9b41ac73b234f5bf7ff3abfee198092424a1bbd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":4}]},"message":"doc formatting"},{"commit":"7168ffddf8a8dfcdd5bcabd8bf943d6417de407d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":87,"deletions":5,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":92}]},"message":"process dig output"},{"commit":"a855344bec9f60d852de326953436ec76f25cffb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":0,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":13}]},"message":"document schema"},{"commit":"d8b3b59fae924494fbcdfbdf6ad790f5234b0c69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":16}]},"message":"add schema and rename 'avail' to 'available'"},{"commit":"4b7d7840d37be47c1c98c38a6d712e7090e5b68c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"changelog.txt","lines_changed":2}]},"message":"add -r option"},{"commit":"58a094a9b4cab0fcb99581f37a21a450fc3a1aed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update"},{"commit":"65adbb4189ac66de3283adb2af93a1251103f057","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":29,"deletions":7,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":36}]},"message":"doc update"},{"commit":"f7350959c9706486a3aed19a999e5ee756a1240c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":47,"deletions":24,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":71}]},"message":"df fix for changing header names when -h used"},{"commit":"8934a7d832b8e1375f0bbdd71031f37ae42f3929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["jc/parsers/arp.py","jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":6}]},"message":"fix dictionary iteration"},{"commit":"669a424fd6508db91bf5cfa2607033fac85f442c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":4}]},"message":"fix process function"},{"commit":"591a65c2bda26efcdd570a5f147f98a5be0473d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":46,"deletions":2,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":48}]},"message":"process df data"},{"commit":"a78fb890782a64b20c0c1b60afbd915ebdd88535","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":5,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":26}]},"message":"add raw and processed output"},{"commit":"8979dab2a5371fce3a773004c2309e7483e4cd31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":25,"deletions":20,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":45}]},"message":"add raw mode"},{"commit":"0a891f0adda7f2f3233222a0cb5c1f737913ad6f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":1,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"setup.py","lines_changed":2}]},"message":"bump python required version"},{"commit":"c220e35b14237c2cfc38aa661413af83ea13e393","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":34,"deletions":33,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":67}]},"message":"cleanup helptext"},{"commit":"f26c5818bd958c18f4ecc22611b9c058f6213a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":36,"deletions":33,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":69}]},"message":"refactor helptext"},{"commit":"e712cd3fc4cec1b3137c73e199b2d89fd42fb3bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":138,"deletions":0,"files":["jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/netstat2.py","lines_changed":138}]},"message":"netstat2 skeleton"},{"commit":"0309c9ac67c5f65e0a584fd01e8104ef1990fa7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"setup cleanup"},{"commit":"9a9eb4120af7696cd3727ac0f0a014663e62b993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":3}]},"message":"setup updates"},{"commit":"d1927456b02e6c2a6e6395cd6ce873b6565ec37d","merge":"0691cfc a3d9213","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #6 from kellyjonbrazil/dev"},{"commit":"a3d9213a1e2fd52ba2cbc863d4d01d3ffeebe230","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add date"},{"commit":"3365c03a1e709835b4bd6bca023afbcb46912982","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":361,"deletions":0,"files":["tests/test_arp.py","tests/test_dig.py"],"file_stats":[{"name":"tests/test_arp.py","lines_changed":131},{"name":"tests/test_dig.py","lines_changed":230}]},"message":"add tests"},{"commit":"4f6c87389b313b368d9e833feef55fe6daf7aac9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":164,"deletions":1,"files":["tests/fixtures/centos-7.7/dig-aaaa.out","tests/fixtures/centos-7.7/dig-x.out","tests/fixtures/centos-7.7/dig.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/dig-aaaa.out","tests/fixtures/ubuntu-18.04/dig-x.out","tests/fixtures/ubuntu-18.04/dig.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/dig-aaaa.out","lines_changed":20},{"name":"tests/fixtures/centos-7.7/dig-x.out","lines_changed":20},{"name":"tests/fixtures/centos-7.7/dig.out","lines_changed":38},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":6},{"name":"tests/fixtures/ubuntu-18.04/dig-aaaa.out","lines_changed":20},{"name":"tests/fixtures/ubuntu-18.04/dig-x.out","lines_changed":20},{"name":"tests/fixtures/ubuntu-18.04/dig.out","lines_changed":41}]},"message":"add dig test files"},{"commit":"41a2a9adac7d3c29dfa11292f08b0877c69b1a5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":147,"deletions":3,"files":["README.md","jc/parsers/dig.py"],"file_stats":[{"name":"README.md","lines_changed":147},{"name":"jc/parsers/dig.py","lines_changed":3}]},"message":"remove unnecessary if statement"},{"commit":"74dae2905b2b0916f0be9fee2a4a343962760ff6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":143,"deletions":30,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":173}]},"message":"dig parser mvp"},{"commit":"d1f64214de00090c3faae0bf544c6c2602ab8c31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":3,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":22}]},"message":"add authority parsing"},{"commit":"d3e1aa20a815d1d1d6ae82776ae18e3416f0966f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":2}]},"message":"fix when line"},{"commit":"72cae9577756c4355211a19f4dd77aaeb6f8e905","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":47,"deletions":9,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":56}]},"message":"dig fixes"},{"commit":"219bc8130f55f23e3be3abbe56104aefc2f84e86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":155,"deletions":0,"files":["jc/jc.py","jc/parsers/dig.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":150}]},"message":"dig parser skeleton"},{"commit":"e8c1a554c040ad8f9c6b518db5fd58e8345d2181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-a.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/arp-a.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/arp-a.out","lines_changed":3},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/arp-a.out","lines_changed":3}]},"message":"testfile updates"},{"commit":"087a60bc2adf64bfcedc1f264fef328f993b530c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":87,"deletions":5,"files":["README.md","jc/parsers/arp.py"],"file_stats":[{"name":"README.md","lines_changed":33},{"name":"jc/parsers/arp.py","lines_changed":59}]},"message":"documentation updates"},{"commit":"9c9823c3b8737b5de08af6278ca74414138e9263","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":16,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-v.out","tests/fixtures/centos-7.7/arp.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/arp-v.out","tests/fixtures/ubuntu-18.04/arp.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/arp-v.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/arp.out","lines_changed":3},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/arp-v.out","lines_changed":4},{"name":"tests/fixtures/ubuntu-18.04/arp.out","lines_changed":3}]},"message":"add arp testfiles"},{"commit":"cf8d13030bf67261a986c0f80fa20ec0e37a743a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":21}]},"message":"add arp"},{"commit":"1eff69c187ca410ffaec7909bc2532553be1d80c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":17,"deletions":1,"files":["changelog.txt","jc/parsers/arp.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/arp.py","lines_changed":17}]},"message":"add documentation"},{"commit":"b10fb77d714b73a10a9bf28b45269b3530e01cee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":10}]},"message":"fixup arp parser"},{"commit":"87cee8b230a06fa270b2e36afb56f337da814c80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":28,"deletions":1,"files":["jc/jc.py","jc/parsers/arp.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":7},{"name":"jc/parsers/arp.py","lines_changed":22}]},"message":"add arp parser"},{"commit":"83ab10d6282e26391bbf6bae5d0d29e040b209f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":44,"deletions":34,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":78}]},"message":"documentation update"},{"commit":"d58a6e1d1dc93155255922b65b0af1325439b033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":15,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":28}]},"message":"readme update"},{"commit":"cb46ca5c2776a13c673a44d3e0fbd0661b32af9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"readme update"},{"commit":"5528d979f0b45787d68ab79b962371df9acc527b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":6},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"ee94a038a61d60db72046d5bcceec58009decb39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":131,"deletions":0,"files":["tests/test_uname.py","tests/test_uptime.py","tests/test_w.py"],"file_stats":[{"name":"tests/test_uname.py","lines_changed":45},{"name":"tests/test_uptime.py","lines_changed":41},{"name":"tests/test_w.py","lines_changed":45}]},"message":"add tests"},{"commit":"1d658f7a9fc50873f76985b2fb9de92ada9d5547","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":265,"deletions":0,"files":["tests/test_netstat.py","tests/test_ps.py","tests/test_route.py"],"file_stats":[{"name":"tests/test_netstat.py","lines_changed":105},{"name":"tests/test_ps.py","lines_changed":83},{"name":"tests/test_route.py","lines_changed":77}]},"message":"add tests"},{"commit":"392cb44f9b19829a5ceba055e24c7af4d8ac5b3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":80,"insertions":12667,"deletions":0,"files":["runtests.sh","tests/__init__.py","tests/fixtures/centos-7.7/df-h.out","tests/fixtures/centos-7.7/df.out","tests/fixtures/centos-7.7/env.out","tests/fixtures/centos-7.7/free-h.out","tests/fixtures/centos-7.7/free.out","tests/fixtures/centos-7.7/history.out","tests/fixtures/centos-7.7/ifconfig.out","tests/fixtures/centos-7.7/iptables-filter-nv.out","tests/fixtures/centos-7.7/iptables-filter.out","tests/fixtures/centos-7.7/iptables-mangle.out","tests/fixtures/centos-7.7/iptables-nat.out","tests/fixtures/centos-7.7/iptables-raw.out","tests/fixtures/centos-7.7/jobs.out","tests/fixtures/centos-7.7/ls-al.out","tests/fixtures/centos-7.7/ls-alh.out","tests/fixtures/centos-7.7/ls.out","tests/fixtures/centos-7.7/lsblk.out","tests/fixtures/centos-7.7/lsmod.out","tests/fixtures/centos-7.7/lsof-sudo.out","tests/fixtures/centos-7.7/lsof.out","tests/fixtures/centos-7.7/mount.out","tests/fixtures/centos-7.7/netstat-l.out","tests/fixtures/centos-7.7/netstat-p.out","tests/fixtures/centos-7.7/netstat-sudo-lnp.out","tests/fixtures/centos-7.7/netstat.out","tests/fixtures/centos-7.7/ps-axu.out","tests/fixtures/centos-7.7/ps-ef.out","tests/fixtures/centos-7.7/route-vn.out","tests/fixtures/centos-7.7/route.out","tests/fixtures/centos-7.7/uname-a.out","tests/fixtures/centos-7.7/uptime.out","tests/fixtures/centos-7.7/w.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/df-h.out","tests/fixtures/ubuntu-18.04/df.out","tests/fixtures/ubuntu-18.04/env.out","tests/fixtures/ubuntu-18.04/free-h.out","tests/fixtures/ubuntu-18.04/free.out","tests/fixtures/ubuntu-18.04/history.out","tests/fixtures/ubuntu-18.04/ifconfig.out","tests/fixtures/ubuntu-18.04/iptables-filter-nv.out","tests/fixtures/ubuntu-18.04/iptables-filter.out","tests/fixtures/ubuntu-18.04/iptables-mangle.out","tests/fixtures/ubuntu-18.04/iptables-nat.out","tests/fixtures/ubuntu-18.04/iptables-raw.out","tests/fixtures/ubuntu-18.04/jobs.out","tests/fixtures/ubuntu-18.04/ls-al.out","tests/fixtures/ubuntu-18.04/ls-alh.out","tests/fixtures/ubuntu-18.04/ls.out","tests/fixtures/ubuntu-18.04/lsblk.out","tests/fixtures/ubuntu-18.04/lsmod.out","tests/fixtures/ubuntu-18.04/lsof-sudo.out","tests/fixtures/ubuntu-18.04/lsof.out","tests/fixtures/ubuntu-18.04/mount.out","tests/fixtures/ubuntu-18.04/netstat-l.out","tests/fixtures/ubuntu-18.04/netstat-p.out","tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.out","tests/fixtures/ubuntu-18.04/netstat.out","tests/fixtures/ubuntu-18.04/ps-axu.out","tests/fixtures/ubuntu-18.04/ps-ef.out","tests/fixtures/ubuntu-18.04/route-vn.out","tests/fixtures/ubuntu-18.04/route.out","tests/fixtures/ubuntu-18.04/uname-a.out","tests/fixtures/ubuntu-18.04/uptime.out","tests/fixtures/ubuntu-18.04/w.out","tests/test_df.py","tests/test_env.py","tests/test_free.py","tests/test_history.py","tests/test_ifconfig.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_ls.py","tests/test_lsblk.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py"],"file_stats":[{"name":"runtests.sh","lines_changed":3},{"name":"tests/__init__.py","lines_changed":0},{"name":"tests/fixtures/centos-7.7/df-h.out","lines_changed":8},{"name":"tests/fixtures/centos-7.7/df.out","lines_changed":8},{"name":"tests/fixtures/centos-7.7/env.out","lines_changed":24},{"name":"tests/fixtures/centos-7.7/free-h.out","lines_changed":3},{"name":"tests/fixtures/centos-7.7/free.out","lines_changed":3},{"name":"tests/fixtures/centos-7.7/history.out","lines_changed":1000},{"name":"tests/fixtures/centos-7.7/ifconfig.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/iptables-filter-nv.out","lines_changed":134},{"name":"tests/fixtures/centos-7.7/iptables-filter.out","lines_changed":134},{"name":"tests/fixtures/centos-7.7/iptables-mangle.out","lines_changed":59},{"name":"tests/fixtures/centos-7.7/iptables-nat.out","lines_changed":80},{"name":"tests/fixtures/centos-7.7/iptables-raw.out","lines_changed":38},{"name":"tests/fixtures/centos-7.7/jobs.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/ls-al.out","lines_changed":22},{"name":"tests/fixtures/centos-7.7/ls-alh.out","lines_changed":22},{"name":"tests/fixtures/centos-7.7/ls.out","lines_changed":19},{"name":"tests/fixtures/centos-7.7/lsblk.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/lsmod.out","lines_changed":99},{"name":"tests/fixtures/centos-7.7/lsof-sudo.out","lines_changed":3390},{"name":"tests/fixtures/centos-7.7/lsof.out","lines_changed":639},{"name":"tests/fixtures/centos-7.7/mount.out","lines_changed":31},{"name":"tests/fixtures/centos-7.7/netstat-l.out","lines_changed":45},{"name":"tests/fixtures/centos-7.7/netstat-p.out","lines_changed":121},{"name":"tests/fixtures/centos-7.7/netstat-sudo-lnp.out","lines_changed":45},{"name":"tests/fixtures/centos-7.7/netstat.out","lines_changed":123},{"name":"tests/fixtures/centos-7.7/ps-axu.out","lines_changed":110},{"name":"tests/fixtures/centos-7.7/ps-ef.out","lines_changed":110},{"name":"tests/fixtures/centos-7.7/route-vn.out","lines_changed":5},{"name":"tests/fixtures/centos-7.7/route.out","lines_changed":5},{"name":"tests/fixtures/centos-7.7/uname-a.out","lines_changed":1},{"name":"tests/fixtures/centos-7.7/uptime.out","lines_changed":1},{"name":"tests/fixtures/centos-7.7/w.out","lines_changed":4},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":48},{"name":"tests/fixtures/ubuntu-18.04/df-h.out","lines_changed":19},{"name":"tests/fixtures/ubuntu-18.04/df.out","lines_changed":19},{"name":"tests/fixtures/ubuntu-18.04/env.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-18.04/free-h.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/free.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/history.out","lines_changed":453},{"name":"tests/fixtures/ubuntu-18.04/ifconfig.out","lines_changed":18},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter-nv.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/iptables-mangle.out","lines_changed":14},{"name":"tests/fixtures/ubuntu-18.04/iptables-nat.out","lines_changed":11},{"name":"tests/fixtures/ubuntu-18.04/iptables-raw.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/jobs.out","lines_changed":4},{"name":"tests/fixtures/ubuntu-18.04/ls-al.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/ls-alh.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/ls.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-18.04/lsblk.out","lines_changed":18},{"name":"tests/fixtures/ubuntu-18.04/lsmod.out","lines_changed":102},{"name":"tests/fixtures/ubuntu-18.04/lsof-sudo.out","lines_changed":2854},{"name":"tests/fixtures/ubuntu-18.04/lsof.out","lines_changed":976},{"name":"tests/fixtures/ubuntu-18.04/mount.out","lines_changed":43},{"name":"tests/fixtures/ubuntu-18.04/netstat-l.out","lines_changed":32},{"name":"tests/fixtures/ubuntu-18.04/netstat-p.out","lines_changed":97},{"name":"tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.out","lines_changed":32},{"name":"tests/fixtures/ubuntu-18.04/netstat.out","lines_changed":97},{"name":"tests/fixtures/ubuntu-18.04/ps-axu.out","lines_changed":173},{"name":"tests/fixtures/ubuntu-18.04/ps-ef.out","lines_changed":173},{"name":"tests/fixtures/ubuntu-18.04/route-vn.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/route.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/uname-a.out","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/uptime.out","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/w.out","lines_changed":4},{"name":"tests/test_df.py","lines_changed":69},{"name":"tests/test_env.py","lines_changed":31},{"name":"tests/test_free.py","lines_changed":67},{"name":"tests/test_history.py","lines_changed":31},{"name":"tests/test_ifconfig.py","lines_changed":77},{"name":"tests/test_iptables.py","lines_changed":299},{"name":"tests/test_jobs.py","lines_changed":37},{"name":"tests/test_ls.py","lines_changed":92},{"name":"tests/test_lsblk.py","lines_changed":43},{"name":"tests/test_lsmod.py","lines_changed":40},{"name":"tests/test_lsof.py","lines_changed":85},{"name":"tests/test_mount.py","lines_changed":48},{"name":"tests/test_netstat.py","lines_changed":47}]},"message":"initial add of tests and fixtures"},{"commit":"579bef079cdd7cfa298bc20e052b8eb75b586f5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":3}]},"message":"move global output variable inside function"},{"commit":"0691cfcab3f5f91908e06ec906d57e548d4e7a1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog fix"},{"commit":"db29c7c186601fd4596d3eb121b37100601af907","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":4}]},"message":"documentation fixes"},{"commit":"fb1e03637514b5ab02fd4c5df1db8b3cbacdd531","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":10,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":24}]},"message":"formatting"},{"commit":"c3eaf59836538f4ab4c745e87b70115b4a4c5421","merge":"ea0cf0a c9849ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #5 from kellyjonbrazil/dev"},{"commit":"c9849ce0db1f864d33739f8f6f942bf5672bc3b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"changelog update"},{"commit":"d3c89a3092973a7a8765463fff41c2469ed675cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":9,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":20}]},"message":"check for enough info to parse"},{"commit":"a3d43f27f7bb0835b3593b7c303fe0ee8d896a58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":10,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":22}]},"message":"fix odd uptime text parsing"},{"commit":"f4d9c1b699fa30bd297a40ccf3d5f6e7ba3d4253","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":4,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":12}]},"message":"fix uptime for minutes and hours long uptime"},{"commit":"de647bba4aff84f7b513cf7f6fec8d3933b0d9da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"documentation update"},{"commit":"d7913070315e5e0c89006942250aaf37e9e3e18e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"documentation update"},{"commit":"1a4fc204e21f1555ae67c3147322c8d73fab630b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":10,"deletions":1,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":10},{"name":"changelog.txt","lines_changed":1}]},"message":"Documentation update"},{"commit":"0328e14c7c65a330093faa52fe48dae6cb173e42","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":0,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":7}]},"message":"handle ctrl-c gracefully"},{"commit":"1acc4d6c29d136e286f82d607c4a3a59e2680b68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":4}]},"message":"fix uptime parsing for short uptimes"},{"commit":"27245590ce28be933f1a55db4ee6b24783f4b63d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":20,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":32}]},"message":"remove integers"},{"commit":"7ca2a4bdb939293e8d7364f8901ad1fd6d3ee808","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":182,"deletions":201,"files":["README.md","changelog.txt","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":199},{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":95},{"name":"jc/parsers/netstat.py","lines_changed":84}]},"message":"remove integer values"},{"commit":"5f1ec6734874651bee595961edf1fafaf5acf001","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":473,"deletions":456,"files":["README.md","jc/parsers/df.py","jc/parsers/history.py","jc/parsers/iptables.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/w.py"],"file_stats":[{"name":"README.md","lines_changed":453},{"name":"jc/parsers/df.py","lines_changed":52},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":73},{"name":"jc/parsers/lsmod.py","lines_changed":61},{"name":"jc/parsers/lsof.py","lines_changed":113},{"name":"jc/parsers/ps.py","lines_changed":81},{"name":"jc/parsers/route.py","lines_changed":60},{"name":"jc/parsers/w.py","lines_changed":32}]},"message":"lower() headers"},{"commit":"7e44c4278a75c7223d99200023160e8d77fde54d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":2}]},"message":"formatting"},{"commit":"eda726c4a3864008e2f700374b679ae68a965ef8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":80,"deletions":1,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":81}]},"message":"documentation update"},{"commit":"5f8e70d73054f1a106c0e75eee621bc0cefd1c6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":20,"deletions":22,"files":["changelog.txt","jc/parsers/df.py","jc/parsers/free.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/w.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":8},{"name":"jc/parsers/lsmod.py","lines_changed":9},{"name":"jc/parsers/lsof.py","lines_changed":8},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":6}]},"message":"convert headers to lowercase"},{"commit":"25b90546c652cafa9409f02bae1654cb523add88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":14,"deletions":9,"files":["README.md","changelog.txt","jc/parsers/df.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":13}]},"message":"change 'Use%' to 'Use_percent'"},{"commit":"75c084153845757e22c149ea4ae7909d42ec7118","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"changelog update"},{"commit":"5b532b9b71fdb9de575da0af9b7989ac537877c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":5}]},"message":"minor cleanup"},{"commit":"8c7b3193d131411f8766508fc27b2a6589bba1f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":2}]},"message":"documentation change"},{"commit":"0897c96ef3c180a1707e8f56c545f59b3a4e0672","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":2}]},"message":"formatting"},{"commit":"57d0ab2ed7f444862546da17cbbe8f8ce67bca8c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":9,"deletions":4,"files":["README.md","jc/parsers/w.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"jc/parsers/w.py","lines_changed":9}]},"message":"change LOGIN@ to LOGIN_AT"},{"commit":"a07d9a0e4bb76d369b4a9bf0d77c7590dc3c2861","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":22,"deletions":13,"files":["README.md","jc/parsers/lsof.py"],"file_stats":[{"name":"README.md","lines_changed":10},{"name":"jc/parsers/lsof.py","lines_changed":25}]},"message":"change SIZE/OFF key to SIZE_OFF"},{"commit":"b3996cb4dfed908d71b292dc0b0136c6675351e6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":10,"files":["README.md","jc/parsers/lsblk.py"],"file_stats":[{"name":"README.md","lines_changed":10},{"name":"jc/parsers/lsblk.py","lines_changed":14}]},"message":"change MAJ:MIN key to MAJ_MIN"},{"commit":"4fa88c1ba38b34f9750625458c465d66f6531bc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":3}]},"message":"clear out non-ascii chars from data"},{"commit":"c8c5564b29588094721949b96bff1e623437835d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":3,"files":["README.md","jc/parsers/free.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":7}]},"message":"change buff/cache key to buff_cache"},{"commit":"6d047486d9f577bc04d79af839f5eef9657a9d43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"doc fix"},{"commit":"42bdc058141c4a3ac6f2c8211f9c990590b1b5cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"changelog fix"},{"commit":"85bfb688862e78d5879df6973b88ba8023fa6086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":10,"files":["README.md","jc/parsers/history.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"jc/parsers/history.py","lines_changed":17}]},"message":"history parser fixes"},{"commit":"08ec21556b553cd7e64932d68e01ba8ff3b0f210","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/w.py","lines_changed":1}]},"message":"formatting"},{"commit":"320929bf2595026d32b80b80c3e4878db9cf083f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/env.py"],"file_stats":[{"name":"jc/parsers/env.py","lines_changed":2}]},"message":"documentation update"},{"commit":"41cd489c34502c42602bf64086670ba3b2b8e14b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":126,"deletions":0,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/history.py","jc/parsers/uptime.py"],"file_stats":[{"name":"README.md","lines_changed":46},{"name":"changelog.txt","lines_changed":3},{"name":"jc/jc.py","lines_changed":10},{"name":"jc/parsers/history.py","lines_changed":32},{"name":"jc/parsers/uptime.py","lines_changed":35}]},"message":"add history and uptime parsers"},{"commit":"f101d881a16e662e883818749d48e96858fba853","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":78,"deletions":3,"files":["README.md","jc/jc.py","jc/parsers/w.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":27},{"name":"jc/jc.py","lines_changed":9},{"name":"jc/parsers/w.py","lines_changed":43},{"name":"setup.py","lines_changed":2}]},"message":"add w parser"},{"commit":"fa7466022bb8947c1bbf9f7b01aa4d92300a8992","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":28,"deletions":56,"files":["README.md","changelog.txt","jc/parsers/env.py"],"file_stats":[{"name":"README.md","lines_changed":37},{"name":"changelog.txt","lines_changed":3},{"name":"jc/parsers/env.py","lines_changed":44}]},"message":"fix env parser"},{"commit":"ea0cf0acf22585fbf8828841cf50155636eae82f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":3}]},"message":"documentation update"},{"commit":"e7921b65f5a250c10b08f78939f74968047af430","merge":"393e8bc 2cc1b1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #4 from kellyjonbrazil/dev"},{"commit":"2cc1b1bd5451f31d71b0e2236bdee0ce2b25b5d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"version bump"},{"commit":"58ae976db0165730a75dd7450c698d2727a354ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":113,"deletions":4,"files":["README.md","jc/parsers/lsmod.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":55},{"name":"jc/parsers/lsmod.py","lines_changed":60},{"name":"setup.py","lines_changed":2}]},"message":"documentation update"},{"commit":"66772392ae78ef394e22070b127416b1d5b01332","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":32,"deletions":0,"files":["changelog.txt","jc/jc.py","jc/parsers/lsmod.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/lsmod.py","lines_changed":26}]},"message":"add lsmod parser"},{"commit":"29c47c03a64f9c6b0f44d34be5449396654849b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":134,"deletions":2,"files":["README.md","changelog.txt","jc/parsers/lsof.py"],"file_stats":[{"name":"README.md","lines_changed":68},{"name":"changelog.txt","lines_changed":3},{"name":"jc/parsers/lsof.py","lines_changed":65}]},"message":"documentation update"},{"commit":"91eb9a4d13e9254bd5bbde931196904c1947a28e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":4}]},"message":"use None instead of --"},{"commit":"a1a3de32ec14d6ef433e334b9694856698c26d41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":59,"deletions":0,"files":["jc/jc.py","jc/parsers/lsof.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/lsof.py","lines_changed":54}]},"message":"add lsof parser"},{"commit":"9c47fd05bf716c2e18ebf4da41b1a46b972b2518","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":2}]},"message":"doco fix"},{"commit":"649c0aa7c157f87691cc8eeac64c747e81f63594","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":76,"deletions":1,"files":["README.md","jc/parsers/jobs.py"],"file_stats":[{"name":"README.md","lines_changed":39},{"name":"jc/parsers/jobs.py","lines_changed":38}]},"message":"add documentation"},{"commit":"3db758764e50666e5ae40de8d89180de2ef5bc28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":83,"deletions":0,"files":["changelog.txt","jc/jc.py","jc/parsers/jobs.py"],"file_stats":[{"name":"changelog.txt","lines_changed":6},{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":72}]},"message":"add jobs parser"},{"commit":"802f1510eb6d621f9c760f28b83f16a4781b8d93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":2}]},"message":"tighten if statements"},{"commit":"56901788dee154890e70269ad48d4b22bb8c5437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":30,"deletions":19,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":49}]},"message":"stop blocking when no pipe and enhance help text"},{"commit":"679ae6d5dc7af26240dc00d8bc6499950f81d457","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"b15c8c352a87a9b3b1dece28af0287ef71ca02d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":16,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":30}]},"message":"simplify state variables"},{"commit":"393e8bc56041a4be01b6c0b2f98895aa330afd04","merge":"e3750b4 976fd7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #3 from kellyjonbrazil/dev"},{"commit":"976fd7d9bd49190a8b28ea5acf5af8979cdec537","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":28,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":55}]},"message":"readme update"},{"commit":"d8337870cad042cdcc6a4ff3c61f756c3430fa96","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":28,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":55}]},"message":"update documentation"},{"commit":"39a8aec77f5134b5b958e3f679910a1c3512e13a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/parsers/ls.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"v0.8.1 build"},{"commit":"306d539b6bbfb272c7b955e4847adc3a6b4afa5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"readme update"},{"commit":"f3087b8a8ede88834285bb5d0655fc96341c174c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":635,"deletions":1,"files":["README.md","changelog.txt","jc/parsers/iptables.py"],"file_stats":[{"name":"README.md","lines_changed":319},{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/iptables.py","lines_changed":316}]},"message":"update readme and formatting"},{"commit":"414c2ecef88af2d2c098e6acfb507a5fd7bb8eda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":10,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":16}]},"message":"fix iptables parser"},{"commit":"776ef2d1be81180b8b295fbc587446a326f2f7a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":61,"deletions":0,"files":["jc/jc.py","jc/parsers/iptables.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/iptables.py","lines_changed":56}]},"message":"add iptables parser"},{"commit":"9ac57469967443b195be09d580beaa76ce0e1095","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":64,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/uname.py"],"file_stats":[{"name":"README.md","lines_changed":15},{"name":"changelog.txt","lines_changed":1},{"name":"jc/jc.py","lines_changed":7},{"name":"jc/parsers/uname.py","lines_changed":42}]},"message":"add uname parser"},{"commit":"a3e55d97c0fd4397b42e9146afb0ba9558274fdb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":127,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/mount.py"],"file_stats":[{"name":"README.md","lines_changed":45},{"name":"changelog.txt","lines_changed":1},{"name":"jc/jc.py","lines_changed":7},{"name":"jc/parsers/mount.py","lines_changed":75}]},"message":"add mount parser"},{"commit":"b15227e7ba5377e5fb6799d1b9e4ed5a11c6d92f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":125,"deletions":0,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/lsblk.py"],"file_stats":[{"name":"README.md","lines_changed":49},{"name":"changelog.txt","lines_changed":1},{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/lsblk.py","lines_changed":70}]},"message":"add lsblk parser"},{"commit":"ec3d1f84ceccb492b4c968938714fafa2e6a6321","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":2,"files":["jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/free.py","lines_changed":26}]},"message":"fix free parser"},{"commit":"753d5fd9fe5a8e4b67b1a0ec018a9f811e27f8bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"readme update"},{"commit":"73a0d70c9294ad392792e690a7bfbcc4f51b0a5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"readme update"},{"commit":"c2c189f3e6e900e5f3d35df9a9b9d033448baff6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":5}]},"message":"readme update"},{"commit":"36bc55a3109278d663b675a09829200f5474c3d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"fix df"},{"commit":"a023001cd350e320ce30f47af214ed7a9bb43185","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":226,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/df.py","jc/parsers/env.py","jc/parsers/free.py"],"file_stats":[{"name":"README.md","lines_changed":73},{"name":"changelog.txt","lines_changed":5},{"name":"jc/jc.py","lines_changed":17},{"name":"jc/parsers/df.py","lines_changed":56},{"name":"jc/parsers/env.py","lines_changed":53},{"name":"jc/parsers/free.py","lines_changed":23}]},"message":"add df, env, and free parsers"},{"commit":"e3750b49628794fd4d563013b1f3a7471c27ce68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":83,"deletions":51,"files":["README.md","jc/__init__.py"],"file_stats":[{"name":"README.md","lines_changed":30},{"name":"jc/__init__.py","lines_changed":104}]},"message":"documentation enhancements"},{"commit":"b5ea08e55bfd22c9da5ba73c124791012df119a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":20,"deletions":20,"files":["README.md","changelog.txt","jc/parsers/netstat.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":16},{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":20},{"name":"setup.py","lines_changed":2}]},"message":"fix transport protocol"},{"commit":"8e71b8e3522b9b1af4d869a0854223eb5c300b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"fix jq example"},{"commit":"4c8610c54ff4b643237d8f0e4c5781c277fc39f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"setup.py","lines_changed":2}]},"message":"fixed build"},{"commit":"c8f886dc8fcdc58f8471d68c3d583200d0ea2f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":2}]},"message":"fix example"},{"commit":"4cfc2d22b3f9fd6f0cde8ad206edd7fe260b3071","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"update changelog"},{"commit":"59238c85408117748e78c5e87157381a828f3782","merge":"d54d906 30080c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #2 from kellyjonbrazil/dev"},{"commit":"30080c01659cf611666876b7b063b7b329822352","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":35,"deletions":35,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":70}]},"message":"reorder parsers"},{"commit":"fab80bb3b4a1897da29d818e98e9b80ce45443dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["README.md","setup.py"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"setup.py","lines_changed":2}]},"message":"readme update"},{"commit":"a9f2df805421754afb8e8adbcac7f2d3bd06c9ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":3}]},"message":"move parsed_line var lower"},{"commit":"1d110be6cb25d169ae0dde6532cbcdf05d93d42f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":13,"deletions":1,"files":["README.md","changelog.txt","setup.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"changelog.txt","lines_changed":4},{"name":"setup.py","lines_changed":2}]},"message":"update doco"},{"commit":"be81b5e1ed93eb65e5dbed4f52905439cde86f62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":112,"deletions":121,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":233}]},"message":"readme update"},{"commit":"5f88f7d8a071306be92cbfb65d6d62c5a68159f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":110,"deletions":137,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":247}]},"message":"netstat cleanup"},{"commit":"e57c7cc8ef3102cc41dee4ea5fd33d40ba666491","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":2}]},"message":"change output from dict to list"},{"commit":"b216627c1073ea645029e341b4d3376601e5468e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":116,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":135}]},"message":"flatten netstat output"},{"commit":"6e925eab131024b5746d870cbd47e2791acf18bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":18,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":45}]},"message":"clean up arg parsing"},{"commit":"d54d906c571b4683f01cab2eca63ae5f0725a87b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update readme"},{"commit":"0040febbf099ed8ab35f6ee343750fcf89f2e739","merge":"8073d15 e416c77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #1 from kellyjonbrazil/dev"},{"commit":"e416c77bed1267254da972b0f95b7ff1d43fccef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"version bump"},{"commit":"9181d242aaed5219bb35fde01d672be88949cceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"bump version"},{"commit":"d6f94c53a4df84fb75554605477e49536a809dc2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"fix blank output case in ls"},{"commit":"a9294f32a00709737d0b82ff434a311e75ad0bed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":39,"deletions":42,"files":["changelog.txt","jc/parsers/ls.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":7},{"name":"jc/parsers/ls.py","lines_changed":72},{"name":"setup.py","lines_changed":2}]},"message":"ls fixes"},{"commit":"4d93b38fe47329e3175025878e87f7c963061f98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":90,"deletions":1,"files":["README.md","jc/parsers/route.py"],"file_stats":[{"name":"README.md","lines_changed":47},{"name":"jc/parsers/route.py","lines_changed":44}]},"message":"add route documentation"},{"commit":"77b74c550795f96b808e48a9b0bfd1a8af9866f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"add route parser"},{"commit":"51a1d3e6f48cf7084267be4092f0dd3f778dcef3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"2eba30422b44f648c7356a44cbff7416c6648f19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":2}]},"message":"skip first line"},{"commit":"43ed09ce5ba53261dfd7ef50a2e187cb524c416c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":25,"deletions":1,"files":["jc/jc.py","jc/parsers/route.py","setup.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":3},{"name":"jc/parsers/route.py","lines_changed":21},{"name":"setup.py","lines_changed":2}]},"message":"add route parser"},{"commit":"367ab54f94bf7f456377ec9d20f8daf99dbdc1ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":99,"deletions":2,"files":["README.md","changelog.txt","jc/parsers/ps.py"],"file_stats":[{"name":"README.md","lines_changed":53},{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":46}]},"message":"formatting"},{"commit":"4f552e370e656cc1882a7dae231475a016f8aa14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":4}]},"message":"acknowledgment"},{"commit":"7571139f7980f6e74c29d46971881e82ab0f04bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"bump version"},{"commit":"8ec1bec31711d2ef487da3e4a29a842d98d77626","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":29,"deletions":7,"files":["changelog.txt","jc/__init__.py","jc/jc.py","jc/parsers/ps.py"],"file_stats":[{"name":"changelog.txt","lines_changed":10},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/jc.py","lines_changed":3},{"name":"jc/parsers/ps.py","lines_changed":21}]},"message":"add ps parser"},{"commit":"c04895407f203aa0a3a080d5242faf8f6889ae41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["changelog.txt","jc/parsers/netstat.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":9}]},"message":"ubuntu fixes"},{"commit":"cec73d61310591e4890605f61dc5c1bef5808ec4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":24,"deletions":16,"files":["jc/jc.py","jc/parsers/ifconfig.py","jc/parsers/ls.py","jc/parsers/netstat.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":7},{"name":"jc/parsers/ifconfig.py","lines_changed":7},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"jc/parsers/netstat.py","lines_changed":23}]},"message":"linting"},{"commit":"756c2bc9acd60111281b76085a40778e51ca06cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":23}]},"message":"add acknowledgments"},{"commit":"084048987c7afc6516f69e68d37d73b2402dc7f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"changelog update"},{"commit":"02d97394dd76a8782e6e7d3f8a85e1aed05e796b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update"},{"commit":"177f948f9740e3e33449b04b9136a346c9a2c265","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version update"},{"commit":"c2b013150ec1f1b1ab7d416f1aa8a62165a5bb95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":9}]},"message":"add changelog"},{"commit":"0bec67c29ce5d965271440da41a0c4b4c2a1f0fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":4}]},"message":"double quotes to single quotes"},{"commit":"8073d15fe11546a17cacd81409e255bb8aecd602","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":16}]},"message":"readme update"},{"commit":"3b74afc39e58f801e75b7105e521c1469d30f991","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["pypi-upload.sh"],"file_stats":[{"name":"pypi-upload.sh","lines_changed":2}]},"message":"upload script"},{"commit":"ed320cf0f4bb11cee1e69e9dc9176ba109df1b86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":22,"deletions":22,"files":["README.md","jc/parsers/netstat.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":20},{"name":"jc/parsers/netstat.py","lines_changed":22},{"name":"setup.py","lines_changed":2}]},"message":"change netstat pid field to integer"},{"commit":"021b6924e24e1cf0f971246244b174cd3181c0a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":254,"deletions":5,"files":["README.md","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":124},{"name":"jc/parsers/netstat.py","lines_changed":135}]},"message":"documentation updates"},{"commit":"5fb21b077662f1cb172741945ba5036e5a280638","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":8,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":8}]},"message":"remove debug print statements"},{"commit":"7b8540ae2a60f2400fe672a022ee00d1415a3500","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":7,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":26}]},"message":"netstat fixes"},{"commit":"a5e039d4c2e07d52a0797833685c562ab285b49b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":17,"deletions":7,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":24}]},"message":"netstat debugging"},{"commit":"7071f60a302b7aefb8fb312699b0abec25548986","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":66,"deletions":18,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":84}]},"message":"netstat mvp"},{"commit":"0de1dff0253eb46b7336103f62f888940406ccc0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":48}]},"message":"fix ands"},{"commit":"b3c52eb1ccf82e899dda62c332c0b217d80eb4c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":112,"deletions":40,"files":["jc/parsers/ifconfig.py","jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":150}]},"message":"add netstat parser"},{"commit":"366c5dbc010869bdb1d3b9d852e10510bd5c266f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":4}]},"message":"fix help message"},{"commit":"a3ee02514b5fbd43a38ddf515a4aad49bb4e161a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":12}]},"message":"fix imports and module names"},{"commit":"46ad1269cb58dc6f064d17eb0b04da62d8fd5fce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":3,"files":["jc/jc.py","setup.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":6},{"name":"setup.py","lines_changed":1}]},"message":"packaging fixes"},{"commit":"7234afe568818678585ac423649a0ccce0f45d68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"entrypoint fix"},{"commit":"caf480c63aacb518805d48fba0fd454959d11023","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"module fix"},{"commit":"62851b48d5e5cd673e630a28996e1c24cc45aa58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/jc.py","setup.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":12},{"name":"setup.py","lines_changed":2}]},"message":"fix modules"},{"commit":"46d6da92f0e196e150ab9dd44b1ba290c950905b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["jc/{jc => jc.py}","setup.py"],"file_stats":[{"name":"jc/{jc => jc.py}","lines_changed":0},{"name":"setup.py","lines_changed":2}]},"message":"fix entry_points"},{"commit":"e572b2edfa993c5049ef3caeda7a8e4797f0c751","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":37,"deletions":29,"files":["jc/jc","setup.py"],"file_stats":[{"name":"jc/jc","lines_changed":58},{"name":"setup.py","lines_changed":8}]},"message":"use entry_points instead of scripts"},{"commit":"72c69e7de59029d623c9819dda6aa8cae91bc419","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/jc"],"file_stats":[{"name":"jc/jc","lines_changed":12}]},"message":"fix package paths"},{"commit":"4d1565071e5cf7c38e026e08db8f4d2e79969691","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["jc/{jc.py => jc}","setup.py"],"file_stats":[{"name":"jc/{jc.py => jc}","lines_changed":0},{"name":"setup.py","lines_changed":2}]},"message":"rename jc.py to jc"},{"commit":"3652e51693d7ba829f4699fd80de20856941d82f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"fix requirements"},{"commit":"49ce9f13e817266659400a8c19f5b078a48589df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":17,"deletions":20,"files":["jc/jc.py","jc/parsers/__init__.py","setup.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/__init__.py","lines_changed":5},{"name":"setup.py","lines_changed":27}]},"message":"setup updates"},{"commit":"e83170b7ec7ed2123bfde69be263b6034c7afa53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"readme update"},{"commit":"ffb6eb754a87baad5fb0558e30a5bca1a9b9e0a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/parsers/__init__.py","setup.py"],"file_stats":[{"name":"jc/parsers/__init__.py","lines_changed":8},{"name":"setup.py","lines_changed":6}]},"message":"setup fixes"},{"commit":"2597a18d95d01109d2250487b7550a501edaf77b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":82,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":82}]},"message":"readme update"},{"commit":"3e576250b1bfe1c62c556f2fa0425103b0ede1f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":429,"deletions":0,"files":[".gitignore","LICENSE.md","README.md","build-package.sh","jc/__init__.py","jc/jc.py","jc/parsers/__init__.py","jc/parsers/ifconfig.py","jc/parsers/ls.py","jc/parsers/netstat.py","setup.py"],"file_stats":[{"name":".gitignore","lines_changed":6},{"name":"LICENSE.md","lines_changed":21},{"name":"README.md","lines_changed":53},{"name":"build-package.sh","lines_changed":5},{"name":"jc/__init__.py","lines_changed":61},{"name":"jc/jc.py","lines_changed":38},{"name":"jc/parsers/__init__.py","lines_changed":3},{"name":"jc/parsers/ifconfig.py","lines_changed":30},{"name":"jc/parsers/ls.py","lines_changed":130},{"name":"jc/parsers/netstat.py","lines_changed":55},{"name":"setup.py","lines_changed":27}]},"message":"First commit"}] diff --git a/tests/fixtures/generic/git-log-short-stat.json b/tests/fixtures/generic/git-log-short-stat.json index af7e3de9..44bdb298 100644 --- a/tests/fixtures/generic/git-log-short-stat.json +++ b/tests/fixtures/generic/git-log-short-stat.json @@ -1 +1 @@ -[{"commit":"096fffdb79807d34b99985b38df0a3df7f6a86c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":120,"deletions":36,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"]},"message":"use stat examples"},{"commit":"728d882ed007b3c8b785018874a0eb06e1143b66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":90,"deletions":12,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"]},"message":"add timestamp docs and examples"},{"commit":"b53e42aca623181aa9bc72194e6eeef1e9a3a237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":29,"deletions":6,"files":["docs/parsers/git_log.md","docs/utils.md","jc/parsers/git_log.py","jc/utils.py","man/jc.1"]},"message":"add calculated timestamp"},{"commit":"477329ce5b8f5c2a8e4384ba3f59289fc18c957d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add linefeed to version text"},{"commit":"283dc4efd55030188f17c7e1dfbc5315103494b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["CHANGELOG","jc/cli.py"]},"message":"add python interpreter version and path to -v and -a output"},{"commit":"d490bbcaa0291a691b95fa5b61807eebb0b088eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":26,"files":["CHANGELOG"]},"message":"normalize add/update"},{"commit":"f49ddf8e5c5009702155fc62d83c63e3c08c594d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"]},"message":"doc update"},{"commit":"e1e341652b51b823844e76ef7e68f9373a323435","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"doc update"},{"commit":"ecda667549137bed5622cca69f2022e7a75ea833","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":8,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"]},"message":"process integers"},{"commit":"a0d96a188a9f875b2d59625aa97d4f80bba290f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":1,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"]},"message":"doc update"},{"commit":"6c0f0cddfe4dd2d5169f7c55416c6725912557f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":1,"files":["jc/parsers/yaml.py","tests/test_yaml.py"]},"message":"fix for datetime objects in yaml files"},{"commit":"c7173ecd89742c8cf8a7bc4a8021baac5c3cd483","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":6,"files":["jc/parsers/git_log.py"]},"message":"fix mypy issues"},{"commit":"e98240c905394e3ebd6a45fa31b6d432c150afc4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/git_log.py"]},"message":"extend instead of append list"},{"commit":"6cb7e25974b11afe57d7d0e8550b3b1a56b14c67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":93,"deletions":1,"files":["README.md","docs/parsers/git_log.md","man/jc.1"]},"message":"add docs"},{"commit":"c37980c05c7fbd4f811ce5fcfcfddaf5f3ab5414","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":41,"deletions":7,"files":["jc/parsers/git_log.py"]},"message":"add stat support"},{"commit":"b5943bd39d776fc4c3b3dea03c0f3d4b6f4bb260","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":10,"files":["jc/parsers/git_log.py"]},"message":"initial docstring"},{"commit":"49a3a7db3b2b0b292489a41691c9dcbce816cfed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":175,"deletions":0,"files":["jc/lib.py","jc/parsers/git_log.py"]},"message":"initial git-log parser"},{"commit":"0c55240e9da30ac4293cc324f1094de2abd3da91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":0,"files":["CHANGELOG","tests/{ => templates}/_test_foo.py","tests/{ => templates}/_test_foo_s.py"]},"message":"move test templates to fix test failures on some systems"},{"commit":"f91988aed5499d25acf7a7e87b2b0d0cd37b62af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/lib.md"]},"message":"iterator -> iterable"},{"commit":"3c3ad9fc6adf865b3814a1f03814d0bc17d1c6bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"iterator -> iterable in doc"},{"commit":"291ab79e22a59cb31814e7a5af9dbc9f2ec863e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":24,"deletions":24,"files":["README.md","man/jc.1","templates/readme_template"]},"message":"fix arch linux command"},{"commit":"e6d5892c146762cd41a966adadb77db333d98ace","merge":"c0414e7 dcca7a5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #226 from kellyjonbrazil/master"},{"commit":"dcca7a57d558721a61fbba44f07b1d53116827e1","merge":"7138eef 4ee8a69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #225 from adrianteri/patch-1"},{"commit":"4ee8a69337b24e199983fe657643abcb0a56a8e6","author":"003","author_email":"adriateri@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"Update README"},{"commit":"c0414e7db7f5d785b72ad616517f2ec63af151a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["docgen.sh"]},"message":"clean up background tasks"},{"commit":"a419175fe6dffe9c5fd20cfbd82ee552bc82a993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":34,"deletions":17,"files":["docgen.sh","updatedocs.sh"]},"message":"enhance parallelization"},{"commit":"cd6dead034f3c72aebd22afeb2aea6591ae6d94d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"man page update"},{"commit":"45342ea9fea29947d8d90260c7665ffbca612cce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":16,"deletions":9,"files":["docgen.sh","updatedocs.sh"]},"message":"parallelize doc gneration"},{"commit":"585bf0e159c7839869cf3e458938dcc5fa2ceb81","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"xrandr update"},{"commit":"3a860b9babe93d455f68ef21436edf7470d375af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":5,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"add rotation field"},{"commit":"269180df77f9ff953b07222e8ae790c7e7a8298e","merge":"e85f11c a1afed8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #223 from anekos/fix/support-rotated-devices"},{"commit":"a1afed8d95e33fbbc618c7b5778a9faeea2f628f","author":"anekos","author_email":"anekos@snca.net","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["docs/parsers/xrandr.md"]},"message":"doc update"},{"commit":"e39f150a216e4e184444dfc88a63e0f303e51631","author":"anekos","author_email":"anekos@snca.net","stats":{"files_changed":3,"insertions":9,"deletions":4,"files":["jc/parsers/xrandr.py","tests/fixtures/generic/xrandr_simple.json","tests/test_xrandr.py"]},"message":"Support rotated devices"},{"commit":"e85f11c6fcad5461bae612dd5a945c20d300e59a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":12,"deletions":12,"files":["docs/parsers/ini.md","docs/parsers/kv.md","jc/parsers/ini.py","jc/parsers/kv.py"]},"message":"doc formatting"},{"commit":"49a9d7b07e89696f2e022655d7256b7d6ad4bf7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":12,"deletions":8,"files":["docs/parsers/ini.md","docs/parsers/kv.md","man/jc.1"]},"message":"doc update"},{"commit":"a2ef9c429e4bb9f70d033511dce77ccdb9013971","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":38,"deletions":8,"files":["jc/parsers/ini.py","jc/parsers/kv.py","tests/test_ini.py","tests/test_kv.py"]},"message":"allow duplicate keys"},{"commit":"d5e9074f1c8facb3f15b8c41a008917178626978","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/lib.py","setup.py"]},"message":"version bump"},{"commit":"774699f085d97f22ae2dab0cf64d72aa1e1709f7","merge":"789f073 7138eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #220 from kellyjonbrazil/master"},{"commit":"7138eef3d137bc64286d4af453d8d4e7b3f4408d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py"]},"message":"fix newline chars in doc"},{"commit":"fad5e544aa9e57d31473190e196f59c616901207","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"]},"message":"formatting"},{"commit":"64757e2cf55448bccfbbd60d31930ab3f59af21b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"]},"message":"doc formatting"},{"commit":"e05be3f08beae1b600fc55a3a7b4e28163e15bc0","merge":"ac61e9a 789f073","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #213 from kellyjonbrazil/dev"},{"commit":"789f0735dfd63e728b8716d97cf0c6045ede5011","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"doc update"},{"commit":"34bc7753174be28d6c1a00dadc662bc374e554c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"doc update"},{"commit":"38de059a1bc285c8681086d9fb43d0d23ac01d49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":3,"files":["docs/parsers/asciitable.md","docs/parsers/universal.md","man/jc.1"]},"message":"doc update"},{"commit":"304ae6268f4dff6e6f901628e7ff89db1d6e0767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/parsers/asciitable_m.py"]},"message":"minor optimization by changing the expression order"},{"commit":"978caf45221188a29c0e67147804f20f317c066d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["jc/parsers/asciitable.py"]},"message":"minor optimization by reordering expressions"},{"commit":"17df5bfcfc25f226a2976aa7ab8a80e4aaa915c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":2,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"cache _is_separator function"},{"commit":"5e6a5068cff71b3b30525d0a12868bdf6551456c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":2,"files":["jc/parsers/universal.py"]},"message":"allow iterables for simple table parser"},{"commit":"619de68a61be0117e635032347dde417d77c748c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":9,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"formatting"},{"commit":"6748c3cc91f90bddea3d07b8b30a049ee55eaf35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":65,"deletions":61,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"remove lines from corner detection and add rounded corners"},{"commit":"0a462978b731770d1290187a502706c2322f5f91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":101,"deletions":3,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py","tests/test_asciitable.py","tests/test_asciitable_m.py"]},"message":"fix for special characters in headers"},{"commit":"e66a82ff49b40a674f9ef373a12d59fc71bfa730","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":5,"files":["CHANGELOG","jc/parsers/asciitable_m.py","man/jc.1"]},"message":"doc update"},{"commit":"f3aa797d96c8e2cef2124dbb2f49d1fadaee3fa2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":69,"deletions":9,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"add more pretty table separators"},{"commit":"e5b478218c4ba3781afd085056dba888c3f6ae02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_xrandr.py"]},"message":"add quiet=True to parse tests"},{"commit":"35e0e9c32afbc5450c661bcb3a23904d135358ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable.py"]},"message":"remove print statement"},{"commit":"17c3c2f029a0a47eb02d681567619d471b99949c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":58,"deletions":2,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py","tests/test_asciitable.py","tests/test_asciitable_m.py"]},"message":"add bold bar seperator and ANSI code tests"},{"commit":"cf83e6398b3314b233581eb313510872177de20a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":0,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"add fancy separators"},{"commit":"94e061b881e2ed28d2b462ad038e5ba77182b6c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":275,"deletions":0,"files":["tests/test_asciitable.py"]},"message":"add asciitable parser tests"},{"commit":"720480e39ce3cc2079d7f4f5bcff2725081fec34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":10,"deletions":2,"files":["docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"doc update"},{"commit":"82a63fe15922456853aa4597aa10a5a02b20bdef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":8,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"]},"message":"doc update"},{"commit":"9c1ec9940e68ce9848da20e81b8c0b7e35a215df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":82,"deletions":14,"files":["docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"]},"message":"doc update"},{"commit":"f23f19da453a0f7bcf70e417a10f87e27571aa43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":122,"deletions":9,"files":["README.md","docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py","man/jc.1"]},"message":"doc update"},{"commit":"aea2e1b0a9c6bb2a02a6e73889bb04e8f4f22588","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["tests/test_asciitable_m.py"]},"message":"fix tests so blank strings are now None"},{"commit":"7d95d679bf4093ea77f30a1be55384b6dbf08341","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":212,"deletions":1,"files":["jc/lib.py","jc/parsers/asciitable.py"]},"message":"add asciitable parser"},{"commit":"b3b140066b74ee31dd1c460502caf2f26df321b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py"]},"message":"doc update"},{"commit":"b204c423c1b947c17cb251a5dd3c444cd71dd2c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":193,"deletions":15,"files":["README.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py","man/jc.1"]},"message":"doc update"},{"commit":"d451c309bb0d8889dc09a698212bf01c2154a582","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":8,"files":["jc/parsers/asciitable_m.py"]},"message":"change multiple or statements to any()"},{"commit":"01d53da68ed04b736934851137c59216ad02d8c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable_m.py"]},"message":"remove debug print"},{"commit":"53dd05e52c329a15c30a756a36a165ac59ef8a14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":29,"deletions":1,"files":["jc/parsers/asciitable_m.py","tests/test_asciitable_m.py"]},"message":"fix rstrip and add tests"},{"commit":"ab564f5be8282f1c7ee2d602bcef398fdfd4570f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":237,"deletions":1,"files":["jc/parsers/asciitable_m.py","tests/test_asciitable_m.py"]},"message":"add tests"},{"commit":"00c39450f9878527b60545ad61c04cfb98f418dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"]},"message":"enhance type annotation"},{"commit":"f611d08b50219f4e573c1d1f0beae27583e76432","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/asciitable_m.py"]},"message":"formatting"},{"commit":"90e79b7df3a4d5b37835fdf1c2debc1bad0a40b9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"]},"message":"formatting"},{"commit":"4eb2d725d5fe6f2cc7935c7dc891912cf7b8e940","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"]},"message":"formatting"},{"commit":"51ae5ebcac7263ef2571c11975b275eff352bbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":148,"deletions":175,"files":["jc/parsers/asciitable_m.py"]},"message":"new streamlined parser"},{"commit":"9ecbdb09162da4d563799aa93d422db85b2c324b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":35,"deletions":30,"files":["docs/parsers/mpstat_s.md","docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","docs/parsers/universal.md","jc/parsers/foo_s.py","jc/parsers/mpstat_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"]},"message":"use generator instead of iterable in function return annotation"},{"commit":"b3a2886fd0af0cd06890f37f1edfc6890bb83e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["docs/lib.md"]},"message":"formatting"},{"commit":"ceacec0f462bd7c2d9e92ddb9029ccd71aef481c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable_m.py"]},"message":"remove errant os sep import"},{"commit":"ff0f794b01395ed9b65fac75a6b07f0772d45a2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":32,"deletions":10,"files":["jc/parsers/asciitable_m.py"]},"message":"working"},{"commit":"70fafbf3f80f35c5db2c306978b2a488adad40bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"remove asciitable so tests pass for now"},{"commit":"5a248a8fc58952a5eab3d4aac025d7422ba82d08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":344,"deletions":0,"files":["jc/parsers/asciitable_m.py"]},"message":"add multiline asciitable parser"},{"commit":"4a3a4e10df8a552a4db3510640695f02b166dc40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":4,"files":["jc/lib.py"]},"message":"add asciitable and asciitable-m parsers"},{"commit":"c27bd5ff39f21c6377e661d4d7de1200d2fdd72f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":16,"files":["jc/parsers/universal.py"]},"message":"pad lines in sparse_table_parse and use str.isspace()"},{"commit":"f804c9627fb71341429ca80aec2887e23e0277db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/universal.py"]},"message":"copy input list so we don't mutate the caller's data"},{"commit":"3ab25d02f9dc248706aa1105e1766b2a84bc55a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"use _parser_is_streaming from lib"},{"commit":"9e80fd2b97b9bfe38fdaa6acdf2e8ed26d34b49d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":11,"files":["jc/cli.py","jc/lib.py"]},"message":"fallback if info and doc items don't exist"},{"commit":"ff9527a098a94c996641fb3fe2f905c8ae5e3063","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":13,"files":["jc/cli.py"]},"message":"import cleanup and use all_parser_info in parsers_text"},{"commit":"7dac2f8dc3baf619105e3c6ca4d3e45300b86287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":23,"deletions":9,"files":["docs/lib.md","docs/readme.md","man/jc.1"]},"message":"doc update"},{"commit":"32e4d55e86c3e7d94488ec69f13a4f6400c4cef3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"]},"message":"use parser_info for help_doc"},{"commit":"f9a9062147256d0949457cc7fde838f87202524d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":27,"deletions":10,"files":["CHANGELOG","jc/__init__.py","jc/lib.py"]},"message":"add documentation argument to parser_info and all_parser_info"},{"commit":"89e5919796f7da585285901dca461aae21336415","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/mpstat_s.md","jc/parsers/mpstat_s.py"]},"message":"add -A to second example"},{"commit":"e5f5b2591d8ac3abeb9571688c7fb8de34d647f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update"},{"commit":"77c667eec045daff5cbd062fe9d6e83f237727e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":67,"deletions":6,"files":["docs/parsers/mpstat.md","docs/parsers/mpstat_s.md","jc/parsers/mpstat.py","jc/parsers/mpstat_s.py","tests/fixtures/ubuntu-18.04/mpstat-A-streaming.json","tests/fixtures/ubuntu-18.04/mpstat-A.json","tests/fixtures/ubuntu-18.04/mpstat-A.out","tests/test_mpstat.py","tests/test_mpstat_s.py"]},"message":"ubuntu fixes"},{"commit":"b257ce8c2fe6825fe435b4d04b4184091030db10","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":65,"deletions":0,"files":[".../centos-7.7/mpstat-A-2-5-streaming.json","tests/fixtures/centos-7.7/mpstat-A-streaming.json","tests/fixtures/centos-7.7/mpstat-streaming.json","tests/test_mpstat_s.py"]},"message":"add mpstat_s tests"},{"commit":"c693c868cacbcd81f44fd383719723dd7a137c87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":352,"deletions":0,"files":["README.md","docs/parsers/mpstat.md","docs/parsers/mpstat_s.md","jc/lib.py","jc/parsers/mpstat.py","jc/parsers/mpstat_s.py","man/jc.1"]},"message":"add mpstat streaming parser"},{"commit":"6f98b27a05d6e1f7571a97316b193f096521b959","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":168,"deletions":0,"files":["tests/fixtures/centos-7.7/mpstat-A-2-5.json","tests/fixtures/centos-7.7/mpstat-A-2-5.out","tests/fixtures/centos-7.7/mpstat-A.json","tests/fixtures/centos-7.7/mpstat-A.out","tests/fixtures/centos-7.7/mpstat.json","tests/fixtures/centos-7.7/mpstat.out","tests/test_mpstat.py"]},"message":"add mpstat tests"},{"commit":"d7efd25d88a8f489564ce48223845a16e4ab1cc7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":207,"deletions":1,"files":["EXAMPLES.md","README.md","docs/parsers/mpstat.md","man/jc.1"]},"message":"add mpstat to docs"},{"commit":"2cddb1f0bb497be0be071cdcb56bf49d2dafc920","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":94,"deletions":15,"files":["jc/parsers/mpstat.py"]},"message":"working mpstat"},{"commit":"ae1c331595dd857d8ae7f8cf93daee1b26be2c3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":30,"deletions":5,"files":["jc/parsers/mpstat.py"]},"message":"initial working version"},{"commit":"bc97052ed4ee3bf3f25127968139f2e89a659fe3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":109,"deletions":0,"files":["CHANGELOG","jc/lib.py","jc/parsers/mpstat.py"]},"message":"initial add mpstat parser"},{"commit":"6c3e0e2aa0e8cc375d9f7473930b18957d33f1aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"formatting"},{"commit":"dd052e01469e9e3328f7326d3591365a8e7322eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":26,"deletions":24,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"add underscores to column examples"},{"commit":"54e8f58145f6c4332fbd375d112259ea7abb2d72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":28,"deletions":2,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"add table result examples"},{"commit":"def7aa5764e69cd0cf2c5b70aa62c62023f76c9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":16,"deletions":16,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"formatting"},{"commit":"6986c74f6dceca907ea2e469a332deeb093a122c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":169,"insertions":34,"deletions":837,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/pidstat.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/nmcli.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/pidstat.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/xrandr.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py"]},"message":"remove direct parser module example from doc"},{"commit":"b784db404d0569a4c630eb124b37b0b1d0846453","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":17,"insertions":87,"deletions":166,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/pidstat_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/pidstat_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"]},"message":"streaming doc formatting update"},{"commit":"8aee4517bb4c2eebdd9873f7eb0827cd33b85519","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":26,"files":["docs/parsers/pidstat_s.md","jc/parsers/pidstat_s.py"]},"message":"doc formatting"},{"commit":"a5fb8fbf94b3b80bef82f078ad6582260b13e374","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":17,"insertions":164,"deletions":148,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/pidstat_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/pidstat_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"]},"message":"streaming doc update"},{"commit":"b9365e2ac28c3eacf53bc101857f7f1d7286ec20","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":74,"deletions":0,"files":[".../centos-7.7/pidstat-hdlrsuw-2-5-streaming.json",".../centos-7.7/pidstat-hdlrsuw-streaming.json",".../fixtures/centos-7.7/pidstat-hl-streaming.json","tests/test_pidstat_s.py"]},"message":"add pidstat-s tests"},{"commit":"696338c1a3d462afbe677a6f2ebe08d06ef4046a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":38,"deletions":0,"files":["tests/_test_foo_s.py"]},"message":"add streaming test template"},{"commit":"4f0616190bb842411353d65650b78a65d8cbdc28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","man/jc.1"]},"message":"doc update"},{"commit":"3278cb0de301ee542b1fe8245a6c359193373b6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":10,"files":["docs/parsers/arp.md","jc/parsers/arp.py"]},"message":"add type hints"},{"commit":"4fc04256a567c502a88ac8a1bd189746387c93f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["jc/parsers/foo_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"]},"message":"rollback noReturn to tuple"},{"commit":"e4ae0fea63c0386c1b3239607fd6a58738d23633","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":8,"deletions":8,"files":["docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","jc/parsers/foo_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"]},"message":"fix type annotation"},{"commit":"d3727ea0906d6167aa48c340519242b010469d98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":99,"deletions":1,"files":["CHANGELOG","README.md","docs/parsers/pidstat_s.md","man/jc.1"]},"message":"doc update"},{"commit":"0d13909cf63d14008607c5640d074ab4073115e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":168,"deletions":0,"files":["jc/lib.py","jc/parsers/pidstat_s.py"]},"message":"add pidstat-s parser"},{"commit":"c52ca20e285895d2afb685a2a5ca275de7901033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/pidstat.py"]},"message":"fix comment"},{"commit":"21f27f26c81c75234221a5193c7d3903323e2032","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":72,"deletions":0,"files":["tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.json","tests/fixtures/centos-7.7/pidstat-hdlrsuw.json","tests/fixtures/centos-7.7/pidstat-hl.json","tests/test_pidstat.py"]},"message":"add pidstat tests"},{"commit":"5e7a87f39782d12070a895440ff541800df91b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":35,"deletions":0,"files":["tests/_test_foo.py"]},"message":"add test template"},{"commit":"845d763829acd03fff1d2fad6e9691f04bd1a2aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/pidstat.md","jc/parsers/pidstat.py"]},"message":"format docs to fit 80 columns"},{"commit":"f5c7d52ec72f5ff4b77d5ac4491f330575b9f10f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":10,"files":["man/jc.1","templates/manpage_template"]},"message":"formatting"},{"commit":"c3198a58744803f52113f80967c7259d781e2328","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":22,"deletions":12,"files":["man/jc.1","templates/manpage_template"]},"message":"formatting"},{"commit":"bbd4afa73542ba6596aed77426bb494fbcf23196","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["README.md","man/jc.1"]},"message":"add pidstat to docs"},{"commit":"ae754a84bf5fc35b248bbc5f7b0fa8e871765819","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":263,"deletions":33,"files":["docs/parsers/arp.md","docs/parsers/pidstat.md","jc/parsers/pidstat.py"]},"message":"doc update"},{"commit":"3389eb5debe0f0ba01ece01e20048608bf357e70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":219,"deletions":9,"files":["jc/parsers/pidstat.py","tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.out","tests/fixtures/centos-7.7/pidstat-hdlrsuw.out","tests/fixtures/centos-7.7/pidstat-hl.out"]},"message":"initial working parser"},{"commit":"01f2c1e71f87ab401d487be4d6d150cb67c91437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":162,"deletions":2,"files":["CHANGELOG","jc/lib.py","jc/parsers/pidstat.py","setup.py","tests/fixtures/centos-7.7/pidstat.out"]},"message":"add pidstat parser"},{"commit":"8bfbf8f1bcd233a8ecd34012e140eb29164ca5fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"simplify error message"},{"commit":"f4242669bac3af5eb196c46d4146823aacec40ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":10,"files":["jc/parsers/arp.py"]},"message":"minor cleanup"},{"commit":"bebd9331f1fb9b80f8cb4a5cfacd68461743004e","merge":"9861983 ac61e9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #211 from kellyjonbrazil/master"},{"commit":"ac61e9ad2c9c4e864db02db04cbf907fb0efd99b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add pypi link"},{"commit":"648ef4d8a9c33a36d4bb2c135fe59b031de8f24c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"update badge links"},{"commit":"727fc9a701e9aae75d3d2b708010da1d0dc8781a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/date.md","man/jc.1"]},"message":"doc update"},{"commit":"306512d6bb53af18516fc10b15c7ec79cb02cc98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":7,"deletions":4,"files":["CHANGELOG","jc/lib.py","jc/parsers/date.py","setup.py"]},"message":"force AM/PM to uppercase in date parser"},{"commit":"6afb1d389ca9dfd7880386d380fee032b7eb92e2","merge":"961968a 9861983","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #209 from kellyjonbrazil/dev"},{"commit":"98619834818c181cb50a9605fe166b6153c46095","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"doc update"},{"commit":"ca79053db08542849136ae13fdb4d1d90b79a7e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docgen.sh"]},"message":"document pydoc version"},{"commit":"29c263f87810f8566ebdad2358e99896391adfd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":93,"insertions":115,"deletions":115,"files":["docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/streaming.md","docs/utils.md"]},"message":"pydoc formatting fixes"},{"commit":"128c3c170abc6a702ae044b073fb9d992d4262b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"doc update"},{"commit":"a531ab8864fca27b55d83b55055eaef1c36128cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting"},{"commit":"0c1be7cc11ec75a5738483d68d053e702eb34fc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":18,"files":["README.md","templates/readme_template"]},"message":"reduce dig example size"},{"commit":"e4222b45f54e6179e22d7924c083e4642b9974ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/lib.py"]},"message":"fix names to mod names"},{"commit":"ac32c69c31e8eff22252d7aded08f6cb14622086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"formatting"},{"commit":"cb2dfeac8d44b733ad9d364e8c6d233a381bfae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":199,"insertions":334,"deletions":326,"files":["README.md","docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/streaming.md","docs/utils.md","jc/__init__.py","jc/cli.py","jc/exceptions.py","jc/lib.py","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat_freebsd_osx.py","jc/parsers/netstat_linux.py","jc/parsers/nmcli.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/xrandr.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py","jc/streaming.py","jc/utils.py","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"change name to JSON Convert"},{"commit":"9a3602e70b865a3015bd700b30d1076e17511a9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/lib.md","jc/lib.py"]},"message":"doc update"},{"commit":"a9f53ee258e18bc90934e263d8dc96feee84e939","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":4,"files":["jc/cli.py","jc/lib.py"]},"message":"optimize streaming parser detection in cli"},{"commit":"6be3d3d98222a262c5138bb09f2951ccfab96110","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":43,"deletions":1,"files":["CHANGELOG","docs/lib.md","docs/readme.md"]},"message":"doc update"},{"commit":"e49df7208377ab34a74240a06f35f17fee4b8203","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"use streaming parser list to find streaming parsers"},{"commit":"7ede7be7bf7b1a7d29d158b3b21c20fff4990e72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":42,"deletions":0,"files":["jc/__init__.py","jc/lib.py"]},"message":"add standard and streaming list functions"},{"commit":"4758e28a36e2a55497e4f722d386a6b5cc30dc4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":16,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting"},{"commit":"4a1ee151b3cb054d84cd964fd62f5855f765751d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":9,"deletions":11,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py"]},"message":"add dhcp6 options to docs"},{"commit":"8c8afc1a922e3c30fcf501d169b33a68b65cd3e0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":60,"deletions":24,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting"},{"commit":"ed205f7720d98c225c917c252ed7a6c9e6e8c2b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":9,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py","man/jc.1"]},"message":"doc update"},{"commit":"d65f7ae992abc33140c00714d442290103661757","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":41,"deletions":0,"files":["EXAMPLES.md"]},"message":"add nmcli"},{"commit":"e2ffef57b9a474048fe72cf42aebfa6bfaf2e42b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_nmcli.py"]},"message":"fix test"},{"commit":"002caa9fb3b65f1ae64df25cc39c3de130403e76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":252,"deletions":0,"files":[".../fedora32/nmcli-connection-show-ens33.json",".../fedora32/nmcli-connection-show-ens33.out",".../fixtures/fedora32/nmcli-device-show-ens33.json",".../fixtures/fedora32/nmcli-device-show-ens33.out","tests/fixtures/fedora32/nmcli-device-show.json","tests/fixtures/fedora32/nmcli-device-show.out","tests/test_nmcli.py"]},"message":"add fedora tests"},{"commit":"b7c6faf3daf8eb0c42a222778baa440c5a018c75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"enhance error message"},{"commit":"554ca61d1764b81dea06b6b013d0444072f0662a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":165,"deletions":0,"files":[".../fixtures/centos-7.7/nmcli-connection-all.json",".../centos-7.7/nmcli-connection-show-ens33.json","tests/fixtures/centos-7.7/nmcli-connection.json","tests/fixtures/centos-7.7/nmcli-device-all.json",".../centos-7.7/nmcli-device-show-ens33.json",".../fixtures/centos-7.7/nmcli-device-show-lo.json","tests/fixtures/centos-7.7/nmcli-device-show.json","tests/fixtures/centos-7.7/nmcli-device.json","tests/fixtures/centos-7.7/nmcli-general-all.json",".../centos-7.7/nmcli-general-permissions.json","tests/test_nmcli.py"]},"message":"add tests"},{"commit":"7b9722d255a16981099dc803beda7abe0d46106a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":26,"deletions":34,"files":["man/jc.1","templates/manpage_template"]},"message":"fix formatting"},{"commit":"5505bde8ef77db0885f08d8d04160cbc4418dd67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/zipinfo.md"]},"message":"doc update"},{"commit":"dbcd9a4060647be24bca2a8d577f11925a9ac210","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/zipinfo.py"]},"message":"bump version to 1.0"},{"commit":"4bdeb2b3aa063c2772f5c44e52acbe16e915cc3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/xrandr.py"]},"message":"simplify warning message"},{"commit":"6ae1d03187c6d4b669f6f74db1be7c9cf07adaed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py"]},"message":"doc fix"},{"commit":"f75b06abe4af152be094f8bc1ba5ce66b25e35e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":180,"deletions":3,"files":["README.md","docs/parsers/nmcli.md","jc/parsers/nmcli.py","man/jc.1"]},"message":"doc update"},{"commit":"1923925710dadc4116202855ae884ef18394d428","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["CHANGELOG"]},"message":"update changelog"},{"commit":"2c5c57ae04df3b7abfb1c3423c3350c7c2ab5dcd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/lib.py","setup.py"]},"message":"version bump"},{"commit":"f4d11d697e000135720a971edf84dcad31a1bec8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":155,"deletions":15,"files":["jc/parsers/nmcli.py"]},"message":"finish use cases and doc"},{"commit":"7f409b7082aa9525cc9280e3c5c92bc82089cf14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"enhance ParseError cli message"},{"commit":"937fa5aad2519f588c6d0feb8f08211f6b99872f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":0,"files":["jc/parsers/nmcli.py"]},"message":"split dhcp options"},{"commit":"19dcef513565c34a31f6d735577da5e25f9bd2cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":69,"deletions":2,"files":["jc/parsers/nmcli.py"]},"message":"firm up flow. add/remove text. parse routes"},{"commit":"3d01356461eb2790f859968da7f5cb4fd2ee9898","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":3,"files":["jc/parsers/nmcli.py"]},"message":"add text_kv function"},{"commit":"2d6f666fa4c791e7995f6b0c1490dac73ce224c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":61,"deletions":16,"files":["jc/parsers/nmcli.py"]},"message":"add dev show and conn show parsers"},{"commit":"4dda895f122ecc19b267ed1485cf656bae76ff07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":404,"deletions":0,"files":["jc/lib.py","jc/parsers/nmcli.py","tests/fixtures/centos-7.7/nmcli-connection-all.out",".../centos-7.7/nmcli-connection-show-ens33.out","tests/fixtures/centos-7.7/nmcli-connection.out","tests/fixtures/centos-7.7/nmcli-device-all.out",".../centos-7.7/nmcli-device-show-ens33.out","tests/fixtures/centos-7.7/nmcli-device-show-lo.out","tests/fixtures/centos-7.7/nmcli-device-show.out","tests/fixtures/centos-7.7/nmcli-device.out","tests/fixtures/centos-7.7/nmcli-general-all.out",".../centos-7.7/nmcli-general-permissions.out","tests/fixtures/centos-7.7/nmcli.out"]},"message":"initial nmcli parser"},{"commit":"52617b1722ba2f089716b069f78f70a865430d61","merge":"3afaa48 961968a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #208 from kellyjonbrazil/master"},{"commit":"961968a0fcaf37b64bc850c4945ba4b805a1fe54","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":26,"deletions":23,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"fix schema"},{"commit":"f026a788e5ca1231927e71fdbb1dadb2365a6518","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":62,"deletions":0,"files":["EXAMPLES.md"]},"message":"add xrandr example"},{"commit":"2f7c03eb35520be916c28a687031f8c6425839ba","merge":"681176e 3afaa48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #207 from kellyjonbrazil/dev"},{"commit":"3afaa48eee081e28262d1762c5ec23d318012822","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":15,"insertions":15,"deletions":15,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"]},"message":"doc update"},{"commit":"3201452564fb0fb44ef9cc32217339370bd2521e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"add -p to example"},{"commit":"7ee1e34fc71c0dbc08ba482b787d560fd5125f64","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":116,"deletions":4,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"doc update"},{"commit":"67dbf050161201f5016899591e81ab6253ac2322","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"add type annotations"},{"commit":"4ac9f2e3dad4e7bd270bf5a8e61b729838b2c89c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":10,"deletions":17,"files":["CHANGELOG","docs/parsers/rsync.md","docs/parsers/rsync_s.md","jc/parsers/rsync.py","jc/parsers/rsync_s.py"]},"message":"doc update"},{"commit":"3f5f6e39a777ef524cb3a06a01321bb8c31d930d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":100,"deletions":98,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"]},"message":"formatting"},{"commit":"4723db8e3cc4946b14c83b25d6e8c6d2309aa72e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":195,"deletions":77,"files":["README.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/xrandr.md","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/xrandr.py","man/jc.1"]},"message":"doc updates"},{"commit":"ca914ec77d1fc77e42860189e62ac2fb203d4931","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":2,"files":["tests/test_xrandr.py"]},"message":"add nodata test"},{"commit":"dcc7f3f357ef016b4583fc1320fd2394788f271f","merge":"184ef3a cbdc666","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #204 from lyterk/xrandr"},{"commit":"cbdc66623671da335eafe132b7af79f884856f1d","author":"Kevin Lyter","author_email":"lyterk@sent.com","stats":{"files_changed":3,"insertions":2,"deletions":30,"files":["jc/parsers/xrandr.py",".../{simple_xrandr.json => xrandr_simple.json}",".../{simple_xrandr.out => xrandr_simple.out}"]},"message":"Return empty object if no results and filenames"},{"commit":"184ef3a1faeb406ce62076cff637ee86d61541fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":11,"deletions":3,"files":["docs/parsers/rsync.md","docs/parsers/rsync_s.md","man/jc.1"]},"message":"doc update"},{"commit":"c732f759445e335fe36586859b6fde7e27bb8901","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":10,"deletions":2,"files":["jc/parsers/rsync.py","jc/parsers/rsync_s.py"]},"message":"doc update"},{"commit":"7a1ae4f5fc5328c32bf77235cfbd9f83ec995053","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":105,"deletions":0,"files":["tests/{test_lib.py => test_jc_lib.py}","tests/test_jc_streaming.py","tests/{test_utils.py => test_jc_utils.py}"]},"message":"add library tests"},{"commit":"d04bc3757c482ec9062b2da91ded76c5dd6d106b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add xrandr"},{"commit":"73e8391653145412cd852aca349466018c8b9084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":3,"files":["jc/utils.py"]},"message":"formatting"},{"commit":"f6c1463c1578db264ccb3d4c2677857ed906e965","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":44,"deletions":24,"files":["jc/cli.py"]},"message":"formatting"},{"commit":"d392c7f901a9d7c57617fbd03bd3f88ee0bf4132","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":20,"deletions":13,"files":["docs/parsers/date.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/ls.md","docs/parsers/rpm_qi.md","docs/parsers/stat.md","docs/parsers/systeminfo.md","docs/parsers/timedatectl.md","docs/parsers/upower.md","docs/parsers/vmstat.md","docs/parsers/who.md","docs/utils.md"]},"message":"doc update"},{"commit":"d0387f58205b2fd9b9860ce9656bb29ceec54340","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":16,"insertions":34,"deletions":29,"files":["jc/parsers/date.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/systeminfo.py","jc/parsers/timedatectl.py","jc/parsers/upower.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/who.py"]},"message":"add timestamp format hints for better performance"},{"commit":"76f92908a3ba9cbadcc8e972afa8b1c4a69509bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":44,"deletions":9,"files":["jc/utils.py"]},"message":"add format hints for performance optimization"},{"commit":"1a115da67bdce9acfefbfb71fbac37e234b1babd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"add lru_cache maxsize for python 3.7 support"},{"commit":"f0a37ccf301eee5133a83b5dd96986fef0c38e7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/utils.py"]},"message":"use lru_cache for significant performance boost to timestamp"},{"commit":"f331f53a531169520a4d8ea15d277560a49aedb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["CHANGELOG","jc/utils.py"]},"message":"use !r formatting instead of quotes"},{"commit":"8611aff06b18212b7292d564beb27a2062fc3f41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/parsers/rsync_s.md","jc/parsers/rsync_s.py"]},"message":"add examples"},{"commit":"2f3f78e8d35a0ccccde0f84417400acdfe7fe0aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":16,"insertions":194,"deletions":185,"files":["docgen.sh","docs/parsers/rsync_s.md","docs/readme.md","docs/streaming.md","docs/utils.md","jc/__init__.py","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/streaming.py","man/jc.1"]},"message":"refine streaming parsers"},{"commit":"d1e0ee6123dfecd48d074cb7a40e98a15b6adcb9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":8,"files":["jc/parsers/ping_s.py"]},"message":"use new streaming functions"},{"commit":"45314c98083067f1f6fae9c477c99fabec223f29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":112,"deletions":102,"files":["jc/streaming.py","jc/utils.py"]},"message":"move some functions to streaming"},{"commit":"df00945b46e27e10107f48d186eedf80b55bd40e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":59,"deletions":49,"files":["jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py"]},"message":"move try/except inside for loop"},{"commit":"fda0050d867bcbe4f1d7e024b08e9881d0f57735","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":191,"deletions":0,"files":[".../centos-7.7/rsync-i-logfile-streaming.json","tests/fixtures/centos-7.7/rsync-i-streaming.json",".../centos-7.7/rsync-i-v-logfile-streaming.json",".../centos-7.7/rsync-i-vv-logfile-streaming.json",".../rsync-i-vvv-logfile-nochange-streaming.json",".../centos-7.7/rsync-i-vvv-logfile-streaming.json",".../centos-7.7/rsync-ivvv-nochange-streaming.json",".../fixtures/centos-7.7/rsync-ivvv-streaming.json","tests/fixtures/generic/rsync-i-streaming.json",".../rsync-i-vvv-logfile-nochange-streaming.json",".../rsync-i-vvv-nochange-streaming.json",".../osx-10.14.6/rsync-i-vvv-streaming.json","tests/test_rsync_s.py"]},"message":"add rsync-s tests"},{"commit":"a76d46f9ecb1eff4d6cc7ad633c97cec0e99001a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":19,"insertions":110,"deletions":109,"files":["CHANGELOG","docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","docs/utils.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/utils.py","man/jc.1"]},"message":"refactor ignore_exceptions"},{"commit":"6b069a82d0fa19c8d83b19b934bace556cb758d7","author":"Kevin Lyter","author_email":"lyterk@sent.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/lib.py"]},"message":"Add xrandr to lib.py"},{"commit":"6b793d052147406f388c4d5dc04f506a3456f409","author":"Kevin Lyter","author_email":"lyterk@sent.com","stats":{"files_changed":1,"insertions":6,"deletions":11,"files":["jc/parsers/xrandr.py"]},"message":"Clean up types"},{"commit":"ce9103f7cc666895dc7840d32797d8c7274cf1b8","author":"Kevin Lyter","author_email":"lyterk@sent.com","stats":{"files_changed":2,"insertions":0,"deletions":287,"files":["templates/xrandr_sample.txt","templates/xrandr_sample_verbose.txt"]},"message":"Delete old files in template folder"},{"commit":"671d6dee36a37317257e09a080849205d301bceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":83,"deletions":15,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","docs/utils.md"]},"message":"doc update"},{"commit":"49929c714c2d71a310b1dd95138dbd02f8704138","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":139,"deletions":52,"files":["jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/utils.py"]},"message":"add add_jc_meta decorator"},{"commit":"2986771f07de87bfee44dd3bbb4f285e249aad76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"require python v3.7 and above since v3.6 is now deprecated"},{"commit":"520082d963b93d2bafeff921da3899686b22cadf","author":"Kevin Lyter","author_email":"lyterk@sent.com","stats":{"files_changed":9,"insertions":968,"deletions":0,"files":["jc/parsers/xrandr.py","templates/xrandr_sample.txt","templates/xrandr_sample_verbose.txt","tests/fixtures/generic/simple_xrandr.json","tests/fixtures/generic/simple_xrandr.out","tests/fixtures/generic/xrandr.out","tests/fixtures/generic/xrandr_2.out","tests/fixtures/generic/xrandr_device.out","tests/test_xrandr.py"]},"message":"New parser: xrandr"},{"commit":"021e296d457140c32b5256c2b0acf66efc458896","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":104,"deletions":100,"files":["jc/parsers/rsync_s.py"]},"message":"move variable inits and regexes up"},{"commit":"42e56fbcea6db64ea7f7045e7755af492c95aec2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":12,"files":["jc/parsers/rsync.py"]},"message":"move regex up"},{"commit":"a5b62a4055df37b84751a7cdc14eb6f1ed907cd9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":230,"deletions":18,"files":["docs/parsers/rsync_s.md","jc/parsers/rsync_s.py"]},"message":"add processing and docs"},{"commit":"be98c9b7f6c67e23ea101223934d67bba512e645","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/foo_s.py"]},"message":"simplify try/except by moving outside for loop"},{"commit":"aceeb8450796ae748a4d4abf75643f309d0a42e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":12,"deletions":1,"files":["CHANGELOG","README.md","man/jc.1"]},"message":"doc update"},{"commit":"13910632173e7c815ff1161cf52fd1d17153c4a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":367,"deletions":0,"files":["jc/lib.py","jc/parsers/rsync_s.py"]},"message":"first draft rsync streaming parser"},{"commit":"52157addd0d6dff3bdb34f179ec14b07c8c27ccc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/foo_s.py"]},"message":"fix compatible list"},{"commit":"ec0bc6615e22fdc536623e290d88b9725cb6a0ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/utils.md","jc/utils.py"]},"message":"formatting"},{"commit":"2f80800e38256b363a4122195ec4aaffebe67d87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"simplify all_parser_info comprehension"},{"commit":"3959d3347c8d3e838f8c3158c4db74e2fa2eb856","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["docs/lib.md"]},"message":"doc update"},{"commit":"b57d25c69a193d3866ea86a3a34edd67049b198d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/lib.py"]},"message":"clean up return type for parser_info"},{"commit":"63e43a7cabb51c624c962cdcc92a1199f18c77e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":188,"deletions":21,"files":["README.md","docs/lib.md","docs/parsers/rsync.md","docs/parsers/universal.md","docs/parsers/zipinfo.md","docs/utils.md","man/jc.1"]},"message":"doc updates"},{"commit":"21719f9a26c25d896b0a5d49c9d7814175835e16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":18,"deletions":20,"files":["jc/lib.py","jc/utils.py"]},"message":"type annotation updates"},{"commit":"96ec70de4f6178b0669fd9ab47cb303dc45e55c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["jc/parsers/universal.py","jc/utils.py"]},"message":"remove unneeded optional"},{"commit":"a15a1967dc06169ceeda0fd5b4857ce1a351f3d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"fix typo"},{"commit":"a10d7566294fe5246e68a16e355ce56dd3557ac5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/universal.py"]},"message":"fixy mypy issues"},{"commit":"0700dc7a64b121cf0243416e2cbb82fcef15f5a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/rsync.py"]},"message":"remove cygwin from compatible"},{"commit":"ca654b214057e19839b89e0d9a66f1110f679c1e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"fix parser order"},{"commit":"4ff3b87c1c96d720f4e7fd39e613944e322cb388","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/rsync.py"]},"message":"remove future field from docstring"},{"commit":"ea244fb7a91f1d1f8ffe0ea6dc10dfe5ab836878","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_rsync.py"]},"message":"formatting"},{"commit":"8061f30e6fa58d22ed1a52e02c4d9c7f0bf132cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":236,"deletions":6,"files":["tests/fixtures/centos-7.7/rsync-ivvv-nochange.json","tests/fixtures/centos-7.7/rsync-ivvv-nochange.out","tests/test_rsync.py"]},"message":"add centos -i nochange test"},{"commit":"8f3b12e81e1b4f0d4394c33db5b3a352f4cfb391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":299,"deletions":0,"files":["jc/parsers/rsync.py",".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.json",".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.out","tests/fixtures/osx-10.14.6/rsync-i-vvv.json","tests/fixtures/osx-10.14.6/rsync-i-vvv.out","tests/test_rsync.py"]},"message":"add fixes for mac -i output"},{"commit":"d0694ce0db5ea2d06b5787429adf23095c4c2df0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":245,"deletions":6,"files":[".../osx-10.14.6/rsync-i-vvv-logfile-nochange.json",".../osx-10.14.6/rsync-i-vvv-logfile-nochange.out","tests/test_rsync.py"]},"message":"add nochange log test for mac"},{"commit":"0cd4c4bc7f3ffe13cb2f1920187e25636b88af61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":658,"deletions":0,"files":[".../centos-7.7/rsync-i-vvv-logfile-nochange.json",".../centos-7.7/rsync-i-vvv-logfile-nochange.out"]},"message":"add nochange tests"},{"commit":"12f90c349c903634def4225ce87924b475be46d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":68,"deletions":20,"files":["jc/parsers/rsync.py","tests/test_rsync.py"]},"message":"update regexes for unchanged files"},{"commit":"26b8a1f167c4b1ec3f9fb4077254a27ed8548933","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"]},"message":"remove packages from binaries and packages header"},{"commit":"3abe382c064f605d915912f9b726d76784eba8a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":90,"deletions":3,"files":["EXAMPLES.md","jc/parsers/rsync.py"]},"message":"add examples"},{"commit":"1e2edc2c7b5dc104a9efe4da7df9be61b9e1be32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":53,"deletions":29,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-logfile.json","tests/fixtures/centos-7.7/rsync-i-v-logfile.json","tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json"]},"message":"add timestamp"},{"commit":"5fe032a6741b7b6586c60eb28be74bd0e56277a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/zipinfo.py"]},"message":"fix typo"},{"commit":"e825c02df1cdae67c7f335fe3c675685eb1a8d02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":605,"deletions":0,"files":["tests/fixtures/centos-7.7/rsync-i-logfile.json","tests/fixtures/centos-7.7/rsync-i-v-logfile.json","tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out","tests/fixtures/centos-7.7/rsync-i.json","tests/fixtures/centos-7.7/rsync-i.out","tests/fixtures/centos-7.7/rsync-ivvv.json","tests/fixtures/generic/rsync-i.json","tests/fixtures/generic/rsync-i.out","tests/test_rsync.py"]},"message":"add rsync tests"},{"commit":"a4a4d170b5ae8c189de982adea5bdc9bf1f26e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":5,"files":["jc/parsers/rsync.py"]},"message":"update docstring"},{"commit":"d0fcd523cb2cbb59d0f90369721749b54222961d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":17,"files":["jc/parsers/rsync.py"]},"message":"fix process conversions"},{"commit":"f72b7dc75dbd1c3f5daee3ecee28487258a04873","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":8,"files":["jc/parsers/rsync.py"]},"message":"change keyname to files and remove future key"},{"commit":"4101dc6bf7bab7d00899426e2f6271a7480d558f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":1008,"deletions":19,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-v-logfile.out","tests/fixtures/centos-7.7/rsync-i-vv-logfile.out","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out"]},"message":"add log-file support"},{"commit":"ea5011b616365b5c10c04416d43035d84e3dacba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":175,"deletions":41,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-logfile.out"]},"message":"updated schema. add log-file option support"},{"commit":"d6de81747fd92642dbd5cb1fb097e375aa38be35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":3,"files":["jc/parsers/rsync.py"]},"message":"add int/float conversions"},{"commit":"38f04b1c9699246d85332b20df5b6a91ae0c48d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":32,"deletions":7,"files":["jc/parsers/rsync.py"]},"message":"add summary"},{"commit":"84169e1a913d035744f71472be81fe3a7d774b97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":637,"deletions":2,"files":["jc/lib.py","jc/parsers/rsync.py","setup.py","tests/fixtures/centos-7.7/rsync-ivvv.out"]},"message":"add rsync parser"},{"commit":"1f96586a5e883709f436526de6dcb21ff44bf97b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/foo.py"]},"message":"reorder imports"},{"commit":"681176e4c958157ef1f2151b3e57963a6ba48e09","merge":"b389665 8bb2663","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #203 from kellyjonbrazil/dev"},{"commit":"8bb266352207f95040b72750e5b3ae3b8ceb2b98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"date update"},{"commit":"663abf313931b49fad64b425ece6a5a257dc7938","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":3,"deletions":4,"files":["MANIFEST.in","mangen.py","runtests.sh","updatedocs.sh"]},"message":"clean up scripts"},{"commit":"f7ac41db95c16fd21d83fbce678c5dec28ab40f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":13,"files":["README.md","man/jc.1"]},"message":"final doc update"},{"commit":"5502cda9e591b531d6b452b02d8ec322c3287800","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["tests/test_lib.py"]},"message":"add additional test for dict inside list for all_parser_info()"},{"commit":"a2b165565f54d91489bf38577a0785e78a4523d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["tests/test_lib.py"]},"message":"add lib tests for new functions"},{"commit":"b426369815984bd2aae8bcb14e306ba73b8cd4ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/cli.py"]},"message":"use all_parser_info() from lib in about function"},{"commit":"ac0840cc0afb4aeee2c99076710c987e09cfa5f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"fix typo"},{"commit":"ee98ab0a4a7671ae34ee79f7b0b97c061a8c2944","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/lib.md","docs/utils.md"]},"message":"doc update"},{"commit":"2adec2c0035b84ca0242f2494b6c2651b9898ca5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":21,"deletions":19,"files":["jc/lib.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/utils.py"]},"message":"update type hints with mypy help"},{"commit":"f19c9c71bf4f592f55a5176458acd478b462fdbe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":4,"files":["jc/parsers/foo.py","jc/parsers/foo_s.py"]},"message":"add type hints"},{"commit":"e93adf1884c0006a64123513070a5fd96a940da2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"fix doc"},{"commit":"254c4fc507842ca72064c0196418a7b939d54d06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":6,"files":["docs/readme.md","jc/__init__.py"]},"message":"add new functions"},{"commit":"74d5f60d14fc42cfd5768c7ffd6efc890a65d442","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"]},"message":"update console interview description"},{"commit":"db7dc0634bc17b4daadc8bc21bba5975c093efe5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/lib.md","jc/lib.py"]},"message":"make **kwargs optional"},{"commit":"e156b0db453e99fb0f74b618fd343218f978ff68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"add type hints"},{"commit":"50adc05fbd6a0dcd9e4fb38aa41917bb57332f36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/utils.md","jc/utils.py"]},"message":"formatting"},{"commit":"446cac7c217103eb66cfdee97e3a208b7144b644","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":11,"files":["docs/utils.md","jc/utils.py"]},"message":"doc update"},{"commit":"28ffe3076bb5f23aeaf2624344856dbd02b4c0e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":9,"files":["docs/lib.md","jc/lib.py"]},"message":"formatting"},{"commit":"d4d5e206cae14acd25445952f820810818b3fdce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":40,"deletions":28,"files":["docs/lib.md","docs/utils.md","jc/utils.py"]},"message":"type hints update"},{"commit":"42fbe40a4ae02b9d09acdbf9b22573844959d2ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/lib.py"]},"message":"simplify type hints"},{"commit":"27e4a120e21dcbb3eadc6c4cf224ddb33859328d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/lib.md","jc/lib.py"]},"message":"remove trailing comma"},{"commit":"b5d5b7c73a96d4335b178ccfac60af90913e6f0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":29,"deletions":148,"files":["docgen.sh","docs/parsers/ifconfig.md","docs/parsers/traceroute.md"]},"message":"remove private classes"},{"commit":"e7471556ba5fb0586ac5b0d7404cabd98a58db2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":5,"files":["docgen.sh"]},"message":"remove sed lines"},{"commit":"640a21341bb1c562cb2124155b511dfc74277fc0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":47,"deletions":42,"files":["docs/utils.md","jc/utils.py"]},"message":"fix indentation"},{"commit":"f5befad3e41ba2864abc795a2fdf63e0f1d37c21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":33,"deletions":25,"files":["docs/utils.md","jc/utils.py"]},"message":"move docstring under __init__"},{"commit":"f8223023c31093c1a34130b4e4cfc23b1d80a30c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":24,"deletions":10,"files":["docgen.sh","docs/parsers/ifconfig.md","docs/parsers/traceroute.md","docs/utils.md"]},"message":"change header depth"},{"commit":"7028e87f9b411c0cfb92eee7fc0667cdcb9a54ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":87,"insertions":22,"deletions":445,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md"]},"message":"remove TOC for parsers"},{"commit":"590728f9c1ccfdc078e600d1f35ad4ba51f70d36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":91,"insertions":506,"deletions":17,"files":["docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/utils.md","jc/lib.py"]},"message":"try new pydoc-markdown formatting options"},{"commit":"7cc147fe2d7b278bcab905bc4c3b70b5265e1510","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":44,"files":["docgen.sh","docgen.sh.old"]},"message":"increase heading size"},{"commit":"3cfb3965bb25024a7b03870b71f02194e278919b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":19,"deletions":19,"files":["docs/lib.md","docs/parsers/universal.md","docs/utils.md"]},"message":"formatting"},{"commit":"155d4213225fe4fcf4a059fb63c1ab9fc493177e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":86,"insertions":182,"deletions":181,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"]},"message":"formatting"},{"commit":"d3e10bb87bdb32396bce95f74e62a023f4efaf99","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":291,"deletions":0,"files":["docs/parsers/lsusb.md"]},"message":"add lsusb docs"},{"commit":"fd5433ee6220357e59633c78b689aa432d056b43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":293,"files":["docs/lib.md","docs/parsers/lsusb.md","jc/lib.py"]},"message":"parse docstring formatting"},{"commit":"4568f2d06e8fc1c465c86c318d925586481af062","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/lib.md","jc/lib.py"]},"message":"formatting for parse docstring"},{"commit":"c36e513d1bcc07cd8f01ff59199950e5396da51b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":86,"insertions":88,"deletions":91,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"]},"message":"formatting"},{"commit":"8e089baf3fe30fed80e1c5cdde7c3046bb70ca5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":86,"insertions":8,"deletions":855,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"]},"message":"remove info class from docs"},{"commit":"386f6c317e104e797c2b55e3d21c8b064a83ac78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":89,"insertions":9552,"deletions":9939,"files":["docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/utils.md"]},"message":"update markdown processor settings"},{"commit":"75cd84ce8a86b3357c6cf5fe4fbc62d0f298a29a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":94,"insertions":11423,"deletions":10081,"files":["README.md","docgen.sh","docgen.sh.old","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/utils.md","jc/cli.py","man/jc.1"]},"message":"try new markdown conversion"},{"commit":"6fad44e35df5d0e33e716d0fcb84ed309e6fd30b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"fix type hint"},{"commit":"1caac750daa25a5abeb1289964e918ec06289bfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/lib.py"]},"message":"Update type hints"},{"commit":"16370dcb3d5cf1304c2340ef2253ef2987a982b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"]},"message":"update type hints"},{"commit":"c1302f2573993a6908001d6df0697486f54a9e7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":8,"files":["jc/lib.py"]},"message":"add type-hints to public api"},{"commit":"6f0ffe0955e4d9d6cc82552cf4e4f419e3ff3756","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"docu update"},{"commit":"1f89745fe7cca3a0ac27445942098b717675a481","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump"},{"commit":"a46ac18ef775bb2c52675e61e11c5d92f33cbe81","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["CHANGELOG"]},"message":"doc update"},{"commit":"1a05f1c575b57456481e41baaf551cef30115966","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":64,"deletions":54,"files":["jc/__init__.py","jc/cli.py","jc/lib.py"]},"message":"add parser info functions. move _get_parser functionality from cli to lib"},{"commit":"08f818aa42ca68050a79ec387c42bff265257fd5","merge":"027c231 b389665","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #199 from kellyjonbrazil/master"},{"commit":"b3896650c230b4acc73704a50c93ee74e4034eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":62,"deletions":104,"files":["README.md","templates/readme_template"]},"message":"revert column formatting"},{"commit":"f285539526998a5097943c71dcecb2979036b2b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":104,"deletions":62,"files":["README.md","templates/readme_template"]},"message":"conform to 80 columns"},{"commit":"a896dcdf3b31b60582ebb1b3bca5d1103f998dd6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":338,"deletions":120,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"0a187d4ed08173ec360a006ae2367bb1f2f96c52","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"]},"message":"add console interview links"},{"commit":"2d65bc57d5a396e6683f970194de29494b5c1272","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/readme.md","jc/__init__.py"]},"message":"add quotes"},{"commit":"ab63809fde0cefe1f0401d957a3736fdb760f0cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"update description"},{"commit":"6f04707dc63936efd0e533ae36e1b39ead10c466","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add python package doc info to top of page"},{"commit":"d14a86a9b58bdc3cb0c8df1dfa495aefdaab8033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py"]},"message":"fix typo"},{"commit":"8e6a31d3da19926ac46744e02b27a899ca5fbd7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":14,"deletions":8,"files":["CHANGELOG","docs/readme.md","jc/__init__.py","jc/lib.py","man/jc.1","setup.py"]},"message":"minor fix for macOS binary"},{"commit":"6e7b6afe87355e96422bb2560ffcbd5e79d28f04","merge":"70cb445 027c231","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #198 from kellyjonbrazil/dev"},{"commit":"027c231097a002526350a93322407582a85db0cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"formatting"},{"commit":"f1cf7d1f953586dd44a4463d924f1a1f52717c37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":5,"files":["jc/parsers/foo.py","jc/parsers/foo_s.py"]},"message":"add helper function info"},{"commit":"df611cc263f50285e74ceb3381f55b43a74870a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting"},{"commit":"0f3143bbbb593340190e66729580146410012e14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting"},{"commit":"c280757b7624a46543e481ca47a6e084d2d6f519","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting"},{"commit":"d30b9d84ef5ec3a2a504f7ea251c932b8c9ea878","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting"},{"commit":"50ded1dbd97d26cf01d7e1a98b40e0f0f7d02202","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":4,"files":["docs/readme.md"]},"message":"doc update"},{"commit":"e319aea5a45c598a44f35b4e58131d977509e4f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":4,"files":["jc/__init__.py"]},"message":"add doc version info"},{"commit":"ba86509c1d8700a50fe14e9d931ee57261306c5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":9,"files":["jc/cli.py"]},"message":"simplify OSError exception handling"},{"commit":"0a9279ae6bfdd1aa59f5e9b31ce0af3bfec19f96","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["CHANGELOG","tests/test_lib.py"]},"message":"doc update"},{"commit":"a13dde12af01b4473aa9a34b8a0d7387fb48500a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":173,"insertions":173,"deletions":173,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py","man/jc.1"]},"message":"change raw output wording"},{"commit":"e2ed358de1abefd737c187a324cbe4734d6975e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["CHANGELOG"]},"message":"changelog update"},{"commit":"a2cd3666210be3727a00c3405972f32fbd421046","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["docs/_config.yml"]},"message":"Delete _config.yml"},{"commit":"15addd9bfc18a0e87beb97040b431c872b783662","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":8,"files":["docs/parsers/universal.md","jc/parsers/universal.py"]},"message":"doc fix"},{"commit":"a4e34b0053ec0c032f4783caaa3e07fc2c685a98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":63,"deletions":0,"files":["docgen.sh","docs/parsers/universal.md"]},"message":"add universal parser docs"},{"commit":"d09529ac302fbcc156d58cf836f8397c98121a76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update"},{"commit":"553097b5050dc02fbdaeec2e2e138e01bc6811d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/universal.py"]},"message":"docstring update"},{"commit":"49c556857708307f617b2b516f2d281398681b5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":35,"deletions":15,"files":["README.md","docs/lib.md","docs/readme.md","jc/__init__.py","jc/lib.py","man/jc.1","templates/readme_template"]},"message":"module doc update"},{"commit":"6962b9ee8a52c924dc2de6b79ddeea3636e80fe4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":6,"files":["docs/lib.md","jc/lib.py"]},"message":"formatting"},{"commit":"b4575a3f780f9aa2751c8b4789f67aaca32dd1cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":91,"deletions":1,"files":["docgen.sh","docs/lib.md","jc/lib.py"]},"message":"add lib docs"},{"commit":"35b54d235d73b2ce658223be3d6095906f142d89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add python package doc info"},{"commit":"583a5757e454a4e36b331057d1266279b55ee16a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":18,"insertions":34,"deletions":30,"files":["docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/file.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/traceroute.md","docs/parsers/ufw_appinfo.md","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/file.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/traceroute.py","jc/parsers/ufw_appinfo.py"]},"message":"formatting"},{"commit":"f355333eeed3c4afba844dc7bed5224356552adc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting"},{"commit":"4d7df109604e4f8367904968602acfc05217a7fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting"},{"commit":"66b2c28f4bc75fb76800f9fb7ea485eee194a9a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":24,"deletions":24,"files":["docs/readme.md","jc/__init__.py"]},"message":"formatting"},{"commit":"299a9c6d88fdf1fede447b4057d8f4263daef733","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":25,"deletions":57,"files":["docs/parsers/csv.md","docs/readme.md"]},"message":"formatting"},{"commit":"bd391d979ce98b126dab0f012a56b3fcb1f73439","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":55,"files":["jc/__init__.py"]},"message":"add lib function docs"},{"commit":"7309bd2282445f6daef0b1491ff60b8104500abb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":19,"deletions":10,"files":["jc/lib.py","jc/parsers/csv.py","jc/parsers/universal.py"]},"message":"add get_help"},{"commit":"ce84c09d3394b598f19a3e012ef27ce4154e3b3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/__init__.py"]},"message":"add get_help()"},{"commit":"b4fffbb6476daf78fbdf19dbf31bbeeab950d2dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":46,"insertions":501,"deletions":304,"files":["docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/history.md","docs/parsers/ini.md","docs/parsers/iostat_s.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsusb.md","docs/parsers/netstat.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/ps.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/upower.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/who.md"]},"message":"formatting"},{"commit":"3701b4198aad1826ad6da571fbcaa530b057cc48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":86,"insertions":710,"deletions":606,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"formatting"},{"commit":"d4c34098fa7ad2098076f0fa0564467e5d06f916","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/lib.py"]},"message":"formatting"},{"commit":"b3c531193b3fc53697e7d7823576f481f9462d53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":125,"deletions":71,"files":["CHANGELOG","docs/utils.md","jc/utils.py"]},"message":"formatting"},{"commit":"1d0e07c77bab5c48405323e52873c7952dd0a587","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":57,"deletions":55,"files":["docs/readme.md","jc/__init__.py","jc/lib.py"]},"message":"formatting"},{"commit":"06a322cf9c7468dc7e8ba05914e1d07bbc51f63a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":8,"files":["tests/test_lib.py"]},"message":"rename tests and add conversion function tests"},{"commit":"623d148712f93eacf9b7b5803140603f0af67acb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"doc update"},{"commit":"647e83d0439a0937db14a2cc97929e38a6b6a43b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["tests/test_lib.py"]},"message":"add test to ensure there are zero plugin parsers installed during tests"},{"commit":"91a554464444da0cc3ed3b4d212539232411f6cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/lib.py"]},"message":"doc update"},{"commit":"a1190998aef1bf403ee34c38c1a0fbd6291ac38b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":82,"deletions":0,"files":["tests/test_jc.py","tests/test_lib.py"]},"message":"add jc and jc.lib tests"},{"commit":"097d7a1850f6f6df73a5761c657b73ef9dbd3e29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/__init__.py"]},"message":"simplify __init__"},{"commit":"302bf72e720b3a67fbf1300eaff4f99fc343abeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":138,"insertions":718,"deletions":6,"files":["docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py"]},"message":"Update high-level API docs"},{"commit":"2c42baf3a4dd6733c078f31a1becd708a05f2c36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":34,"insertions":174,"deletions":0,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py"]},"message":"add new high-level api info"},{"commit":"03feb89c84096c0ea1d6ae3a0634ae7b8b507e8f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/readme.md","jc/__init__.py"]},"message":"add module list info"},{"commit":"9dd553192fbca3037b3afe5df6bae88f7a8a9365","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":29,"deletions":12,"files":["CHANGELOG","README.md","docs/readme.md","man/jc.1","templates/readme_template"]},"message":"doc update"},{"commit":"fa3f02e9d1ac7867e3465c2d214f4e4229ff4c66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump"},{"commit":"0a9dde58c5235f78c4c9ae9c013f7454482c6067","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":228,"deletions":134,"files":["jc/__init__.py","jc/cli.py","jc/lib.py"]},"message":"add jc.parse() high-level API"},{"commit":"70cb4453bebb235130e2c287633ecb1de6c2b0aa","merge":"e6900e2 830674c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #195 from kellyjonbrazil/dev"},{"commit":"830674cc6f19e107347a743baff7bbaab7f80b75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["CHANGELOG","jc/__init__.py","man/jc.1","setup.py"]},"message":"version bump"},{"commit":"fb406b58a12fdfe81bcff76671661af77e7f2fe5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["docs/parsers/stat_s.md","jc/parsers/stat_s.py","man/jc.1"]},"message":"formatting"},{"commit":"55b272e41259ddc835cf4eb513fb67e7b2cf1573","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat_s.py"]},"message":"tighten stat data detection"},{"commit":"94f62a9bf36242310790a0f37c66b2e6c6fdc078","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/stat_s.md","jc/parsers/stat_s.py"]},"message":"formatting"},{"commit":"8d19e4cb7b45e3b6cb8c404c959949b7593c9386","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":115,"deletions":1,"files":["CHANGELOG","README.md","docs/parsers/stat_s.md","man/jc.1"]},"message":"doc update"},{"commit":"7e510d48e0f8426a67cf8d70d06d0331c274d358","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":106,"deletions":2,"files":["jc/parsers/stat_s.py","tests/fixtures/centos-7.7/stat-streaming.json","tests/fixtures/freebsd12/stat-streaming.json",".../stat-filename-with-spaces-streaming.json","tests/fixtures/osx-10.14.6/stat-streaming.json","tests/fixtures/ubuntu-18.04/stat-streaming.json","tests/test_stat_s.py"]},"message":"simplify non-stat parse error logic"},{"commit":"7b20cffb143447f4497bc4e895eac2426e8a519f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/stat_s.py"]},"message":"simplify last item logic"},{"commit":"5c934c43c13b69183561da8a77280feb3363e950","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/stat_s.py"]},"message":"add continue to simplify logic"},{"commit":"8609298449e997ba4804d818f4fc23cb393ded7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/parsers/stat_s.py"]},"message":"update docstring"},{"commit":"72cb0dc10b2dac486d3e2a52cf44baf0d7496034","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":10,"files":["jc/parsers/stat_s.py"]},"message":"fixup for first and last items"},{"commit":"7b22fa81ded0f6f59e250ffea63c5d2a0f928b25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/parsers/stat_s.py"]},"message":"raise for non-stat data"},{"commit":"0b6a1307790e0793917bc2781e4873aa9dd67225","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/stat_s.py"]},"message":"ignore blank lines"},{"commit":"fdcf4338e0f099699f8d48df6382be1cc97dba84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["jc/parsers/stat_s.py"]},"message":"add examples to docstring"},{"commit":"ee43037f481286a34a766390568965fdd53af132","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/stat_s.py"]},"message":"remove unused continue lines"},{"commit":"26e365563c314e694915c7a3feae490ea99a112c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":50,"deletions":11,"files":["jc/parsers/stat_s.py"]},"message":"add schema and _process logic"},{"commit":"1b39586bb1b62aee8ae709512c2e3f79cefdb3d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":227,"deletions":0,"files":["jc/cli.py","jc/parsers/stat_s.py"]},"message":"add stat streaming parser"},{"commit":"8bb3a6bea34d60d49039f1ed72fd7e413edc05da","merge":"78672bd e6900e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #194 from kellyjonbrazil/master"},{"commit":"e6900e2000bf265dfcfc09ffbfda39e9238661af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["EXAMPLES.md"]},"message":"add jar-manifest"},{"commit":"0ee244756bf39123e4873eb231156edbe7f0e0ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/jar_manifest.md","jc/parsers/jar_manifest.py"]},"message":"spelling"},{"commit":"6d5ac9abe6712e01887ce0d96c278a568319f405","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["docs/parsers/csv.md","docs/parsers/csv_s.md","man/jc.1"]},"message":"update docs"},{"commit":"44f6d9e1321459be8196aeebf6db088cc5120e61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"changelog update"},{"commit":"360154559c5dee6affa55bbdd5d2f473248b9168","merge":"241d53a 78672bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #193 from kellyjonbrazil/dev"},{"commit":"78672bd7ad66c418e0ecf31add73f887b0946d29","merge":"bc7973a 65d96e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #190 from shaikustin/csv-doubleqouted"},{"commit":"65d96e26b59e231c77c1dbba1dc91708c33de30c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":13,"deletions":0,"files":["tests/fixtures/generic/csv-doubleqouted-streaming.json","tests/test_csv_s.py"]},"message":"add streaming tests"},{"commit":"241d53af9a5c9bba70e28835e22c52c0060269ba","merge":"f733100 bc7973a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #192 from kellyjonbrazil/dev"},{"commit":"5563829df2849a899df2e9211d6c92bddc695f9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/csv_s.py"]},"message":"make dialect sniff behavior match non-streaming parser"},{"commit":"3a4a27e1f94ee07352c7616c57ec655c1aea04f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/csv.py"]},"message":"version bump"},{"commit":"9c887a36a804d817c3f669a55b9b1566d09d645d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/csv_s.py"]},"message":"update csv_s parser with csv changes"},{"commit":"bc7973af36e13006230b5faa9e201e300d468912","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","jc/cli.py","man/jc.1"]},"message":"update copyright"},{"commit":"32972d8fdbdc71923978fd5c2a87fd6cfa4b7f8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":122,"deletions":9,"files":["CHANGELOG","README.md","docs/parsers/jar_manifest.md","jc/__init__.py","jc/parsers/jar_manifest.py","man/jc.1","setup.py"]},"message":"doc update"},{"commit":"b128d9109cbdb1176f2473d450023bb0be02531b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":46,"deletions":0,"files":["tests/test_jar_manifest.py"]},"message":"add MANIFEST.MF tests"},{"commit":"929d7273a422c2bd5b83e5e19d32630f1a027f75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/jar_manifest.py"]},"message":"doc updates"},{"commit":"2a40f842743a8745d651b4b6cae645045e6c6aab","author":"shaik","author_email":"shai.kustin@torq.io","stats":{"files_changed":4,"insertions":22,"deletions":1,"files":["jc/parsers/csv.py","tests/fixtures/generic/csv-doubleqouted.csv","tests/fixtures/generic/csv-doubleqouted.json","tests/test_csv.py"]},"message":"fix doubleqoute in csv"},{"commit":"9ff6fa818f0857321e4b3b089d288997f2ae27af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add jar-manifest"},{"commit":"dac73a4bfe24e36474fdf6ff60c23e784ca409bd","merge":"d789554 f733100","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #189 from kellyjonbrazil/master"},{"commit":"d7895547f74744e82317eabe4c870115701872be","merge":"f8e09ae b7d439c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #188 from listuser/new_branch"},{"commit":"b7d439cb870e443e4f4e4a2137ab170835e77eff","author":"listuser","author_email":null,"stats":{"files_changed":3,"insertions":2220,"deletions":9,"files":["jc/parsers/{jar-manifest.py => jar_manifest.py}","tests/fixtures/rhel-8/MANIFEST.MF.MULTI.json","tests/fixtures/rhel-8/MANIFEST.MF.MULTI.out"]},"message":"Renamed jar-manifest.py to jar_manifest.py, added multi manifest outputs to tests..."},{"commit":"7cc903a5f5ca368be97babadc72689375567a901","author":"listuser","author_email":null,"stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/jar-manifest.py"]},"message":"Removed inflating from examples in jar-manifest.py"},{"commit":"c495a8291bd3e1fd070ee2e018b9b550f9c86314","author":"listuser","author_email":null,"stats":{"files_changed":1,"insertions":1,"deletions":292,"files":["tests/fixtures/rhel-8/MANIFEST.MF.json"]},"message":"Updated test output in MANIFEST.MF.json"},{"commit":"5e1d7d777c627fb17feda6e51d9640bbd0f03302","author":"listuser","author_email":null,"stats":{"files_changed":8,"insertions":304,"deletions":2544,"files":["jc/parsers/{metamf.py => jar-manifest.py}","tests/fixtures/rhel-8/MANIFEST.MF.json",".../rhel-8/{MANIFEST.MF => MANIFEST.MF.out}",".../rhel-8/cmds_used_to_generate_test_data.txt",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out"]},"message":"Renamed metamf.py to jar-manifest.py, plus other changes"},{"commit":"7edad3f676fe5560017ca9cb05ede6f46787e78f","author":"listuser","author_email":null,"stats":{"files_changed":8,"insertions":3042,"deletions":0,"files":["jc/parsers/metamf.py","tests/fixtures/rhel-8/MANIFEST.MF","tests/fixtures/rhel-8/MANIFEST.MF.json",".../rhel-8/cmds_used_to_generate_test_data.txt",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out"]},"message":"Create key value pairs from a MANIFEST.MF file, to include key multiline value pairs."},{"commit":"f7331001d4ab976e311458a16b6e5337da2e3aab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"]},"message":"use github releases instead of packaging site"},{"commit":"f8e09ae2ffe185d21305d566fad20f510df9890f","merge":"2e4f5a5 433c7cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #187 from kellyjonbrazil/master"},{"commit":"433c7cc0f05e321ffe024845a908f3e856d4cd2b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/zipinfo.md","jc/parsers/zipinfo.py"]},"message":"formatting"},{"commit":"d753e71a7452310d45fa605a2e4c70320ed60dbb","merge":"3ac8d03 2e4f5a5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #186 from kellyjonbrazil/dev"},{"commit":"2e4f5a508b6c90f9e03dcbcf64efc0e2fc446666","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":6,"deletions":3,"files":["CHANGELOG","jc/__init__.py","man/jc.1","setup.py"]},"message":"version bump"},{"commit":"88b960eff6cb3739d0d243c8d8b3e8ad5b8eb97c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":144,"deletions":1,"files":["EXAMPLES.md","README.md","docs/parsers/zipinfo.md","man/jc.1"]},"message":"doc update"},{"commit":"88c77bd89e2c2a5f023e6638816c9153b6276d35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":47,"deletions":0,"files":["tests/fixtures/osx-10.14.6/zipinfo-multi.json","tests/test_zipinfo.py"]},"message":"add zipinfo tests"},{"commit":"51a7a4251fff518d8da78ffa41e7ba2e2cb47f12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":0,"files":["tests/fixtures/osx-10.14.6/zipinfo-multi.out"]},"message":"add multi-archive test output"},{"commit":"51d2f316f388d962c26aeb4f42affebec339e5a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":97,"deletions":72,"files":["jc/parsers/zipinfo.py"]},"message":"add multi-archive support"},{"commit":"ff78a46c4854339a097992701351ef471aff1671","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"add zipinfo parser"},{"commit":"ed4a9dc1d470f64bcc9de35b2d98568ffd50257d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":23,"files":["jc/parsers/zipinfo.py"]},"message":"formatting"},{"commit":"63182dba26040974cb8cada6f5910bb29b1fa3ed","merge":"b450697 9c1eaa9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #185 from listuser/new_branch"},{"commit":"9c1eaa938934269fe4179da798acf5f119cde0cf","author":"Matt J","author_email":"none","stats":{"files_changed":2,"insertions":68,"deletions":61,"files":["jc/parsers/zipinfo.py","tests/fixtures/rhel-8/zipinfo.json"]},"message":"revised zipinfo.py nested version"},{"commit":"bc520fcbcdfad6a53e51944391fd24512bed8128","author":"Matt J","author_email":"none","stats":{"files_changed":2,"insertions":63,"deletions":53,"files":["jc/parsers/zipinfo.py","tests/fixtures/rhel-8/zipinfo.json"]},"message":"added zipinfo.py nested version"},{"commit":"46faac1a12a5b39d6a25427f6e8fdcca1204dbcd","author":"Matt J","author_email":"none","stats":{"files_changed":2,"insertions":1222,"deletions":0,"files":["tests/fixtures/rhel-8/zipinfo.json","tests/fixtures/rhel-8/zipinfo.out"]},"message":"add test data zipinfo.json and zipinfo.out"},{"commit":"3c424c0cb3cff462a963183585b57bea004e974f","author":"Matt J","author_email":"none","stats":{"files_changed":1,"insertions":165,"deletions":0,"files":["jc/parsers/zipinfo.py"]},"message":"initial commit zipinfo.py to new_branch"},{"commit":"3ac8d0362b4fb9999fc55a60a9cb20ac80d114f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"use quotes around python versions"},{"commit":"d88b998e6c7826a9ecae18663328e2d2915030fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"]},"message":"formatting"},{"commit":"a9ed55c00652a563391a7930c7a4649967131ae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":11,"deletions":11,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]},"message":"fix spelling"},{"commit":"ea614341232e5272ee0c7fd46ba0f313033c761f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":16,"deletions":8,"files":["docs/parsers/crontab.md","docs/parsers/crontab_u.md","jc/parsers/crontab.py","jc/parsers/crontab_u.py"]},"message":"fix schema docs"},{"commit":"a73d0d26cbe2860b8374661068e09e0717a3bab2","merge":"a7de911 b450697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #184 from kellyjonbrazil/dev"},{"commit":"b4506976e3c865397bc657183d49c484d8bcfd7a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["man/jc.1","templates/manpage_template"]},"message":"formatting"},{"commit":"34cb75a09697a06c3878f2f9a84eb3bd2a90ae62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/__init__.py","setup.py"]},"message":"version bump"},{"commit":"34df643f60712ae25645cb7cddff80e43c12262b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":18,"deletions":0,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"add disable colors section"},{"commit":"ac7c13fcc013d386f34db51d634298fa3e97eccd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":11,"deletions":1,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"add -C option to docs"},{"commit":"4fdb34c7d5fcaa65e2ccab814c3acf2f0f70c442","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"add no-color.org"},{"commit":"7ac468e35aac1a63c4e22f33aead74a6e41a22a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update"},{"commit":"df190aa299f1669d1fe09380026ae086839abc02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":15,"deletions":7,"files":["jc/cli.py"]},"message":"add -C option to force color even with pipes"},{"commit":"9621475e86fe20fcdc2902b6ce7860a833ae2ca0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update"},{"commit":"82e0160de820ad2ed6143f58458711d600b929a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"refactor NO_COLOR test"},{"commit":"d03fb8b626a97e81006d0b108c8f400fe4e2ce3b","merge":"b300dfb 7933dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"b300dfb3d75fe76e2ddbb087ff742dd0b5e6155b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"Add support for NO_COLOR env variable"},{"commit":"a7de9111d97e687cafbc0709ec3ff7453d658a80","merge":"21e69a7 7933dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #183 from kellyjonbrazil/dev"},{"commit":"7933dfdbe7bf400833d6f6b771362dfc518b9a8d","merge":"f7cb5f7 21e69a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'master' into dev"},{"commit":"f7cb5f7d01ac01538bee4da816408072b585768e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"update date"},{"commit":"a26a298f1a3c141171e7d7ce459a27a297cec031","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":148,"deletions":1,"files":["README.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","man/jc.1"]},"message":"doc update"},{"commit":"dbd134d0dac2fc152183480958fd9e65919ac98d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/iostat_s.py"]},"message":"add examples to docs"},{"commit":"11aa01b0d9d6913059f98f9bd7591d7cad9037cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":15,"insertions":15,"deletions":1,"files":["jc/parsers/iostat_s.py","tests/fixtures/centos-7.7/iostat-1-streaming.json","tests/fixtures/centos-7.7/iostat-m-streaming.json","tests/fixtures/centos-7.7/iostat-mx-streaming.json","tests/fixtures/centos-7.7/iostat-streaming.json","tests/fixtures/centos-7.7/iostat-x-streaming.json","tests/fixtures/ubuntu-18.04/iostat-1-streaming.json","tests/fixtures/ubuntu-18.04/iostat-m-streaming.json","tests/fixtures/ubuntu-18.04/iostat-mx-streaming.json","tests/fixtures/ubuntu-18.04/iostat-streaming.json","tests/fixtures/ubuntu-18.04/iostat-x-streaming.json","tests/fixtures/ubuntu-20.10/iostat-m-streaming.json","tests/fixtures/ubuntu-20.10/iostat-mx-streaming.json","tests/fixtures/ubuntu-20.10/iostat-streaming.json","tests/fixtures/ubuntu-20.10/iostat-x-streaming.json"]},"message":"iostat-s tests"},{"commit":"6f18e5344356684e845ec63158c570d82156254f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":203,"deletions":0,"files":["tests/test_iostat_s.py"]},"message":"fix for null lines"},{"commit":"7b467c466568ad4e7986d4d7cf3ec606681b6d46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":137,"deletions":0,"files":["tests/fixtures/ubuntu-20.10/iostat-m.json","tests/fixtures/ubuntu-20.10/iostat-m.out","tests/fixtures/ubuntu-20.10/iostat-mx.json","tests/fixtures/ubuntu-20.10/iostat-mx.out","tests/fixtures/ubuntu-20.10/iostat-x.json","tests/fixtures/ubuntu-20.10/iostat-x.out","tests/fixtures/ubuntu-20.10/iostat.json","tests/fixtures/ubuntu-20.10/iostat.out","tests/test_iostat.py"]},"message":"add ubuntu 20.10 tests"},{"commit":"537b8f263087894c02b5b7c121765cf96182a370","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"]},"message":"add more int conversions"},{"commit":"4d823575e791999e200dedd491511c4fde64fc2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"]},"message":"add more float fields"},{"commit":"541aa1d09f20ff6979eabaa66790decb3895f18d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":68,"deletions":8,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"]},"message":"Add new field float conversions for iostat v11"},{"commit":"8f02021014b7b19acf1a8bbd777161aa82c65d66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/iostat_s.py"]},"message":"formatting"},{"commit":"158a15157c7e5dde95dc21766d0696bd82486688","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update"},{"commit":"2752e0d66a9ba0b57ac86913fd302ada23c280c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":166,"deletions":0,"files":["jc/cli.py","jc/parsers/iostat_s.py"]},"message":"add iostat streaming parser"},{"commit":"6c11e912afe3c4d16da9199b5c2fc10461928ac3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"update changelog"},{"commit":"43d34461e27e3e4ac5f985786831c170b348c7c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":83,"insertions":279,"deletions":81,"files":["README.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/utils.md","man/jc.1"]},"message":"update docs"},{"commit":"4dfdc9b0f65d8c950ed74545d0cc3f95c8abec6c","merge":"e2311cb 6665ffa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"e2311cbb03f407414df953c8d1c07d0cf1a549ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":400,"deletions":0,"files":["tests/fixtures/centos-7.7/iostat-1.json","tests/fixtures/centos-7.7/iostat-1.out","tests/fixtures/centos-7.7/iostat-m.json","tests/fixtures/centos-7.7/iostat-m.out","tests/fixtures/centos-7.7/iostat-mx.json","tests/fixtures/centos-7.7/iostat-mx.out","tests/fixtures/centos-7.7/iostat-x.json","tests/fixtures/centos-7.7/iostat-x.out","tests/fixtures/centos-7.7/iostat.json","tests/fixtures/centos-7.7/iostat.out","tests/fixtures/ubuntu-18.04/iostat-1.json","tests/fixtures/ubuntu-18.04/iostat-1.out","tests/fixtures/ubuntu-18.04/iostat-m.json","tests/fixtures/ubuntu-18.04/iostat-m.out","tests/fixtures/ubuntu-18.04/iostat-mx.json","tests/fixtures/ubuntu-18.04/iostat-mx.out","tests/fixtures/ubuntu-18.04/iostat-x.json","tests/fixtures/ubuntu-18.04/iostat-x.out","tests/fixtures/ubuntu-18.04/iostat.json","tests/fixtures/ubuntu-18.04/iostat.out","tests/test_iostat.py"]},"message":"add iostat tests"},{"commit":"bf15575e90985cfec5c57dd11dfa2b86d53a41be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":7,"files":["jc/parsers/iostat.py"]},"message":"fixes for ubunut"},{"commit":"406336c7185b539b5e00532b58146d5b1b73f259","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":44,"deletions":0,"files":["EXAMPLES.md"]},"message":"add iostat example"},{"commit":"6665ffaeb8107e9db3b917db0663beaf44024533","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"remove python 3.6 from tests"},{"commit":"dcf552ca0c69aa5f0309a83dc33dee7c5ed81292","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":138,"deletions":47,"files":["jc/parsers/iostat.py"]},"message":"add _process and cleanup"},{"commit":"7a6ebf3c9555dd82df7dc0b71981cdd32ce0061d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":171,"deletions":0,"files":["jc/cli.py","jc/parsers/iostat.py"]},"message":"add iostat parser"},{"commit":"d2dc4a983c86c538e13e568b908072de4ca0daaf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"]},"message":"changelog update"},{"commit":"1168259bc23862f671326d41f5282a3575205214","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"]},"message":"add doc strings"},{"commit":"e8e4b46021557fbf5776c32dff46de022817fb6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":14,"deletions":19,"files":["jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]},"message":"use jc.utils type checks"},{"commit":"12d2de22821fd8f57f4d412e62f53db3d89d5e30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":77,"insertions":181,"deletions":165,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/utils.py"]},"message":"use jc.utils.input_type_check() and simplify compatibility check"},{"commit":"0e2fe401e1c49a9f947d7d17b72cfc4e90787f47","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]},"message":"version bump"},{"commit":"14247adb0ae007924ca551a706eb0cfdbae97a41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["jc/parsers/csv_s.py","tests/test_csv_s.py"]},"message":"add input type checks"},{"commit":"3a9f0934c41c85ea7fa87165b9559f08814645cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":3,"files":["jc/parsers/ls_s.py","tests/test_ls_s.py"]},"message":"add input type checks"},{"commit":"caf0a5c8713bf0d72951a2c6fd5a2c62c9eb59d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":4,"files":["jc/parsers/vmstat_s.py","tests/test_vmstat_s.py"]},"message":"add input type checking"},{"commit":"cfb58b1cf3e3028f8e03fdd93f0165cf8d230e1e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/parsers/foo_s.py"]},"message":"add input type checks"},{"commit":"975cf195cc02774f50460ca479d9ebb7b73c7870","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping_s.py"]},"message":"formatting"},{"commit":"8a46a259a36efc55bb0b2141acb9dd5ae52b7725","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["jc/parsers/ping_s.py","tests/test_ping_s.py"]},"message":"add input type checks"},{"commit":"e395142e599aa78b4a7ec80dcc3f8ccf279f97b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"]},"message":"version bump"},{"commit":"caaeaf0d67cf44f8d2651cc53a7528d3ef0c74d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":76,"insertions":227,"deletions":227,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"add 'str' type check on input"},{"commit":"21e69a7cbf62240238f6fb78e874dda6ce2e922a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"]},"message":"ignore _config.yml"},{"commit":"603964935b58e02cf0614cf67ffacc6d94755e05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CHANGELOG"]},"message":"remove trailing whitespace"},{"commit":"47eb83ae55b9892716fff712bd2be21b6191b552","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"]},"message":"add .vscode"},{"commit":"fc0ce6c95923ab124961e695a26c0b68dd0f359f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"add streaming parser to custom parsers info"},{"commit":"077a29fb4eedcfccb026498c5c3a64b7b7601363","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":2,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"]},"message":"add _jc_meta field info"},{"commit":"8568d0d328706a7a5b1476452e078d8cbe7b7391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":3,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py","man/jc.1"]},"message":"fix csv_s documentation"},{"commit":"597d39c28ea0c0fe3b072413e9d91ab5e27b62bd","merge":"b59e38c eb888dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #180 from kellyjonbrazil/dev"},{"commit":"eb888dcbbcf83c9197bd59aab72f65ea6eb622ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["jc/__init__.py","man/jc.1","setup.py"]},"message":"version bump"},{"commit":"d1b9ac0841b15ee15690c4066453a322618320ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/df.md","docs/parsers/netstat.md","docs/parsers/ping.md","man/jc.1"]},"message":"doc update"},{"commit":"89a6d9c5c39b74f1b040f410659bfd7ae1a902d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/df.py"]},"message":"add key-check to restore previous behavior even with non-df data"},{"commit":"85d983761637129cb85abfb0bbdde7c507061cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add df info"},{"commit":"cd7731484d826d84d835ecd460d746e78cadc5fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":62,"deletions":2,"files":["jc/parsers/df.py","tests/fixtures/generic/df-long-filesystem.json","tests/fixtures/generic/df-long-filesystem.out","tests/test_df.py"]},"message":"fix for cases where the Filesystem data overflows the column length (happens on older versions of df)"},{"commit":"086da16b1743c16a5ccdd102f889fb31f99e3caa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"version bump"},{"commit":"20830528f04a5ecbe78420d8008249b089667767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":28,"deletions":0,"files":["CHANGELOG","tests/fixtures/generic/netstat-old.json","tests/fixtures/generic/netstat-old.out","tests/test_netstat.py"]},"message":"add test for older netstat version fix"},{"commit":"83371edd8fe3d23dfa92fc707604086522c85ab9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat_linux.py"]},"message":"add space before inode to compensate for removed dash"},{"commit":"364a81decc16742e3caa070d90b1d605d96fe2c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ping.py"]},"message":"version bump"},{"commit":"ef09592ad3e5c9a77c1bdebe8f876fc4dde54834","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["CHANGELOG"]},"message":"update for 1.17.2"},{"commit":"4a86e109ccb254d5195b782f84f3967c96ef726c","merge":"5ba22da 7fa5391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #179 from shaikustin/ping-alpine-linux"},{"commit":"7fa5391b6613e62689c624041e03f9750c9c7972","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_ping.py"]},"message":"change alpine ping6 to ping"},{"commit":"9b53ba5714819ff760f2d4546f5d2ee4d521c080","author":"shaik","author_email":"shai.kustin@torq.io","stats":{"files_changed":6,"insertions":45,"deletions":1,"files":["jc/parsers/ping.py",".../fixtures/alpine-linux-3.13/ping-hostname.json","tests/fixtures/alpine-linux-3.13/ping-hostname.out","tests/fixtures/alpine-linux-3.13/ping-ip.json","tests/fixtures/alpine-linux-3.13/ping-ip.out","tests/test_ping.py"]},"message":"support alpine linux ping"},{"commit":"b59e38cfd2c8a7f5868e05d5562557b1c27e5e56","merge":"30cff5f 5ba22da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #176 from kellyjonbrazil/dev"},{"commit":"5ba22dae597b9d154ca0a82f71cfbd8d8a6325db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"]},"message":"add JSON lines info"},{"commit":"4232e523acc523e510b4881d2a57a95b88ec8c8b","merge":"bee80b3 30cff5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'master' into dev"},{"commit":"bee80b35d2b8c15e6233f2798e9c02a11e9e1e9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["CHANGELOG","docs/parsers/csv_s.md","man/jc.1"]},"message":"update for version bump"},{"commit":"c32395f6950d6294770ee93e8bf4d79c7d275ac3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_utils.py"]},"message":"linting"},{"commit":"735c5e1078cc27b5cba03b8ebbae15aeca6b8fbd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["tests/test_csv_s.py"]},"message":"update comments for ParseError test: https://bugs.python.org/issue45617"},{"commit":"d09c94b292ca3beec92a00f8a51b7259dd30a1e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add python 3.10 testing info"},{"commit":"4d04866f48f72b9ea0d213dc1533729d3b68a503","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/csv_s.py"]},"message":"add python bug https://bugs.python.org/issue45617 info"},{"commit":"a2d90f4dfcdc2cb00c6c0fa957493c95a21e256b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_csv_s.py"]},"message":"force test"},{"commit":"93a5002c8b530bd6f5f81e5d8595cde1f836ae41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"fix 3.10.0 version number"},{"commit":"23bf5227a4c39ea017e55fc21150331e1af6fdb7","merge":"77c96fa 3f5a1f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"77c96fa2a96148221bde7d2274e0dfb5386a166f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["tests/test_csv_s.py"]},"message":"try tests on python 3.10"},{"commit":"3f5a1f015e9c0807e227b9f7300592e25502e014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"add python 3.10"},{"commit":"b280c4fc18e60a85ab212b09aa5bf3a05a0eceff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":11,"deletions":19,"files":[".../fixtures/generic/csv-insurance-streaming.json","tests/test_csv_s.py"]},"message":"add ParseError test to streaming csv parser"},{"commit":"3ab9b43a2eebf535be98c94810ac474bf32ec515","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/csv_s.py"]},"message":"raise ParseError on newline bug"},{"commit":"46f568414a5c8d2f135486e86d0ada48cfcefeb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":96,"deletions":89,"files":["tests/test_ls_s.py","tests/test_ping_s.py","tests/test_vmstat_s.py"]},"message":"change streaming parser test names"},{"commit":"cba2fd299fff09a551b780e064a6e22bdf7e539a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":75,"deletions":61,"files":[".../generic/csv-10k-sales-records-streaming.json","tests/fixtures/generic/csv-deniro-streaming.json","tests/fixtures/generic/csv-example-streaming.json","tests/fixtures/generic/csv-flyrna-streaming.json","tests/fixtures/generic/csv-flyrna2-streaming.json",".../fixtures/generic/csv-homes-pipe-streaming.json","tests/fixtures/generic/csv-homes-streaming.json",".../fixtures/generic/csv-insurance-streaming.json","tests/test_csv_s.py"]},"message":"add tests"},{"commit":"1e6e44f656f1bbb277eb38fb485f7b48e3b9e40b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/csv_s.py"]},"message":"fix for piping data with non-platform newlines (e.g. windows csv files on unix)"},{"commit":"acac0399946d9781193e9350dd7109f1dd3999fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":149,"deletions":0,"files":["tests/fixtures/generic/csv-biostats-streaming.json","tests/fixtures/generic/csv-cities-streaming.json","tests/test_csv_s.py"]},"message":"working tests"},{"commit":"50a3b340164b3139f04f67a2bee16e5343c8a2da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":8,"files":["jc/parsers/csv_s.py"]},"message":"optimizations and use iter() so we can exhaust data coming from list objects"},{"commit":"b45396070cf28fa36ecb44acd7be3e3bb81a712d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_vmstat_s.py"]},"message":"update comment"},{"commit":"218b9aec8ac397e26e6cd4ff407f3d10ef88ea9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":87,"deletions":48,"files":["README.md","docs/parsers/csv_s.md","jc/parsers/csv_s.py","man/jc.1"]},"message":"doc update for streaming CSV parser"},{"commit":"2b887debc647bd533040e392465967d12869cb02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":10172,"deletions":1,"files":["CHANGELOG","jc/cli.py","jc/parsers/csv_s.py","tests/fixtures/generic/csv-10k-sales-records.csv"]},"message":"add csv streaming parser"},{"commit":"0313e3f8ca0e22e1575192d765d5afedf48e94df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":6,"files":["jc/parsers/lsusb.py"]},"message":"linting"},{"commit":"1669e6e20c3af3d28968558b76d0901a56775ac0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":28,"files":["jc/parsers/lsusb.py"]},"message":"linting"},{"commit":"ef6de75dda90c7221d53e0e0a942f0cac2247354","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["tests/test_utils.py"]},"message":"add vmstat timestamp tests to utils"},{"commit":"a6bcec425a3f44ba3c7cd06b5ebaf522b66df109","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"]},"message":"comment update"},{"commit":"596ad9a64d002ced212b08512126e52707fe73d2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"]},"message":"update comment"},{"commit":"7a91c93319f75c37ba6bf268d8270947f0bf8b22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":122,"deletions":0,"files":["EXAMPLES.md"]},"message":"add lsusb"},{"commit":"b5f7b35f89197879a9f13bd8fa5d2a0c77cc059a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"]},"message":"comment update"},{"commit":"2f47fb7f14c4ff0e1c835897d94ee81d14590aba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["tests/test_uname.py"]},"message":"fix ParseError tests"},{"commit":"1b214c403657a50689f2a04892ce836dea669a1d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":30,"deletions":0,"files":["jc/parsers/lsusb.py","tests/fixtures/generic/lsusb-t.out","tests/test_lsusb.py"]},"message":"raise ParseError if -t option is detected. add test"},{"commit":"8f94f8acc6bb53bbb19ba150551c7df2183a8863","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":384,"deletions":3,"files":["README.md","docs/parsers/file.md","docs/parsers/lsusb.md","docs/parsers/uname.md","man/jc.1","tests/fixtures/centos-7.7/lsusb-v-single.json","tests/fixtures/centos-7.7/lsusb-v.json","tests/fixtures/centos-7.7/lsusb.json","tests/fixtures/generic/lsusb-test-attributes.json","tests/fixtures/generic/lsusb-test-attributes2.json","tests/test_lsusb.py"]},"message":"add tests and update docs"},{"commit":"3a2a69cfa55e2f40d7536d923170a5cfc986998e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/parsers/lsusb.py"]},"message":"formatting"},{"commit":"f599c659881248b79c6dbc86d85a61311c9d3434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":464,"deletions":0,"files":["tests/fixtures/generic/lsusb-test-attributes.out","tests/fixtures/generic/lsusb-test-attributes2.out"]},"message":"add stress test examples"},{"commit":"ad12849fd9fc2177afb30740acc63cf284dc394b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":138,"deletions":26,"files":["jc/parsers/lsusb.py"]},"message":"update docs example and"},{"commit":"f36b3789e8df6673207d6c2d3d0796acfdfe011d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsusb.py"]},"message":"formatting"},{"commit":"6d18c0ba61cd188dbff736f1be47b7362c841687","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":47,"deletions":47,"files":["jc/parsers/lsusb.py"]},"message":"change variable name last_attribute and last_attr to last_item"},{"commit":"17097abec9567a58b5a5f7bbed11ecfd69cbd28c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":6,"files":["jc/parsers/lsusb.py"]},"message":"formatting"},{"commit":"b7ddd3b285f205211394edc70b611171cf72a4c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":22,"deletions":22,"files":["jc/parsers/lsusb.py"]},"message":"change variable names"},{"commit":"75b23f62c9d7b33907af92964d1a6234332fbc78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":35,"deletions":7,"files":["jc/parsers/lsusb.py"]},"message":"working configuration_descriptor and device_descriptor attributes"},{"commit":"f88967b2a59d79e053554d1e141f71e9d2d87456","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":126,"deletions":21,"files":["jc/parsers/lsusb.py"]},"message":"add attribute lists up to interface_association"},{"commit":"ba2846664b35b2e94aa905431c55c029b24a64e3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":22,"deletions":2,"files":["jc/parsers/lsusb.py"]},"message":"edpoint_descriptors attributes working"},{"commit":"10dba37ca2624e05eff246ef49df8ebd3f275d86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":28,"deletions":1,"files":["jc/parsers/lsusb.py"]},"message":"hub_descriptor attributes working"},{"commit":"0e6f938514965503f1d86d56c047f9f8fc03ac65","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":36,"deletions":45,"files":["jc/parsers/lsusb.py"]},"message":"working hub_port_status section"},{"commit":"159d87c1126f4d79d5e34837bc2c353a5445803b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":18,"deletions":7,"files":["jc/parsers/uname.py","tests/fixtures/centos-7.7/uname.out","tests/test_uname.py"]},"message":"add length guard and test for uname with no -a on linux"},{"commit":"9e7b1621cf232e9859bdf018737e536820f380a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":18,"files":["jc/parsers/lsusb.py"]},"message":"device_status working"},{"commit":"2057817ef8fec85b2a978b682e7fe8bc16def828","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":89,"deletions":0,"files":["tests/fixtures/debian10/uname-a.json","tests/fixtures/debian10/uname-a.out","tests/fixtures/freebsd12/uname-a.json","tests/fixtures/freebsd12/uname-a.out","tests/fixtures/freebsd12/uname-a2.json","tests/fixtures/freebsd12/uname-a2.out","tests/fixtures/generic/uname-a-different-proc.json","tests/fixtures/generic/uname-a-different-proc.out","tests/fixtures/generic/uname-a.json","tests/fixtures/generic/uname-a.out","tests/test_uname.py"]},"message":"add uname tests"},{"commit":"a1eabad2d37bb0d0e9407edf7305e223eba67da2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/uname.py"]},"message":"add comments"},{"commit":"92bf2b1ca2a172d3977d6e3c36b5ca1a8c2bab63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":20,"files":["CHANGELOG","jc/parsers/uname.py"]},"message":"simplify fixup logic for uname"},{"commit":"2b2123a4ba9b77d2089d367fe85dcb5d2857a295","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","jc/parsers/uname.py"]},"message":"add FreeBSD support"},{"commit":"908b2f9200ddcce4beb531a3c90908786b6a5b02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"]},"message":"add items"},{"commit":"deff0c7bfdf942b8d7e7bd140219e08bf80a50cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":5,"files":["jc/parsers/uname.py"]},"message":"remove print debug"},{"commit":"7cd01efa64029775042a2c145997ce30ef6b4f6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":25,"deletions":1,"files":["jc/parsers/uname.py"]},"message":"fixup for cases where the 'process' and/or 'machine' fields are blank on linux"},{"commit":"2dbe56456bbea2bdfce7eacbf8b9f10a1b249f55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":49,"deletions":39,"files":["jc/parsers/lsusb.py"]},"message":"add nested_dict. start work on hub_port_status and device_status"},{"commit":"6078a411ef612be8bad012aa404f34ebd74a1fd7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":79,"deletions":4,"files":["jc/parsers/lsusb.py"]},"message":"add initial schema doc"},{"commit":"4a3656562f161a51f5cb6f0e9ccd271859b78d62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["jc/parsers/lsusb.py"]},"message":"del null keys"},{"commit":"ba75989a24839907723ed7c3d7a497473d489a34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/lsusb.py"]},"message":"update comments"},{"commit":"9e9e2c362894f0072ab839565829881d750c8912","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsusb.py"]},"message":"move state instantiation before has_data test"},{"commit":"9a2a8c6b61a46a9bfb5a4492b86774a4a78672ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":52,"files":["jc/parsers/lsusb.py"]},"message":"shorten set_sections"},{"commit":"dae42ef1619441637672d634f9e5d7ab26115f09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":1,"files":["jc/parsers/lsusb.py"]},"message":"add hub_port_status and device_status"},{"commit":"931f2cab78bda180443535c04b532d04c6e88dd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":11,"files":["jc/parsers/lsusb.py"]},"message":"add hub_descriptor"},{"commit":"72b061bed4453686d264ccf8977cba6c2a4794ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":32,"deletions":8,"files":["jc/parsers/lsusb.py"]},"message":"add endpoint_descriptors"},{"commit":"29a7c73990d9620b15a4010d17fc9a9a859f44b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/parsers/lsusb.py"]},"message":"add hid_device_descriptor and report_descriptors"},{"commit":"2d1d68e3007f76d4c34ac07ae822935ab6021e79","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":87,"deletions":88,"files":["jc/parsers/lsusb.py"]},"message":"simplify populate_lists. Add CDC lists"},{"commit":"c5c1e170d1f502de5c76e9e481a23b26ffcaf237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":111,"deletions":76,"files":["jc/parsers/lsusb.py"]},"message":"interface descriptors working"},{"commit":"9c1bb66452838e704ef2277f313bb51a42dc03b9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/lsusb.py"]},"message":"fix remove _state field during schema_populate"},{"commit":"a4f3306bae90fbc807fdd9ff2ce71e25d36a663f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":69,"deletions":28,"files":["jc/parsers/lsusb.py"]},"message":"initial schema build. need to figure out why deleting _state from output_line causes exceptions"},{"commit":"1bc638b6ee7a820406ba4b84d3408f7cd4fe779d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":36,"deletions":32,"files":["jc/parsers/lsusb.py"]},"message":"add bus_list and add all device_list data to the list"},{"commit":"9ad0cd9dae8822235c37159541ce72471eb4263e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":116,"deletions":211,"files":["jc/parsers/lsusb.py"]},"message":"now storing state within the objects to make building the schema (later) easier."},{"commit":"6d4a4691276d8659253b2ac8f8bdbd71a1fece7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":356,"deletions":333,"files":["jc/parsers/lsusb.py"]},"message":"use class for state"},{"commit":"ed6997e3ff2e575a6d4daa7d7a2cbe7dddacdd4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":170,"deletions":34,"files":["jc/parsers/lsusb.py","tests/fixtures/centos-7.7/lsusb-v-single.out"]},"message":"add interface_association section"},{"commit":"eb788fca6e25eea1fa8a43b22360c852ecf5af35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":919,"deletions":0,"files":["jc/cli.py","jc/parsers/lsusb.py","tests/fixtures/centos-7.7/lsusb-v.out","tests/fixtures/centos-7.7/lsusb.out"]},"message":"somewhat working lsusb parser. needs a lot more TLC"},{"commit":"9186f5f37739012b8c04c776310a20ef55b1469f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":99,"deletions":4,"files":["CHANGELOG","jc/__init__.py","jc/parsers/file.py","setup.py","tests/fixtures/osx-10.14.6/file3.json","tests/fixtures/osx-10.14.6/file3.out","tests/test_file.py"]},"message":"fix file parser for gzip cases (has ': ' in the description, which is the delimiter)"},{"commit":"30cff5f28140a5b20a617c8145c13e43b7b6685b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":17,"deletions":3,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","man/jc.1"]},"message":"add note that the streaming parser outputs JSON Lines"},{"commit":"b724e0969a0d6b22bed0c77eb8d629381179ea3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"]},"message":"-qq instead of -q"},{"commit":"a62c49e8715873b068a96da5021ea24a783acd6b","merge":"77dcbc5 9b160f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #172 from kellyjonbrazil/master"},{"commit":"9b160f6279bbbf0c15413c98922eef137ba2f3f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]},"message":"link update"},{"commit":"338a4e2612f70bb3e2af31f61a7db75f647293fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"]},"message":"formatting"},{"commit":"0140688750be61dd752059ee66734ab1c7a8f30e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":8,"deletions":4,"files":["README.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","templates/readme_template"]},"message":"link updates"},{"commit":"73e5ea98c1ca2b9299085e3832791162eca3b9ff","merge":"528aac7 77dcbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #170 from kellyjonbrazil/dev"},{"commit":"77dcbc544da271edab5de5ad209117e98c846f9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":2,"deletions":3,"files":["CHANGELOG","jc/__init__.py","man/jc.1"]},"message":"final doc update"},{"commit":"c7bcb0947ae32acc9cdba7a6975d2f2557f10a39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"]},"message":"indent subsequent error and warning lines"},{"commit":"5cd3f7f71d38b560a88dd6057e9c7a94991a3d71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/foo_s.py"]},"message":"Add example to raise ParseError if there is no output data to yield"},{"commit":"5044388ab2e8d7d8b427fd51b0ab875611bd127f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":3,"files":["jc/parsers/vmstat_s.py","tests/test_vmstat_s.py"]},"message":"raise if line data is unrecognized"},{"commit":"ee075db59819d80e4dcb60ddbd9cfe2fd529dfe9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":5,"deletions":7,"files":["jc/cli.py","jc/parsers/foo_s.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"]},"message":"linting"},{"commit":"9904e0be61e7c81b907bf3770f111346daeff481","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/utils.md","jc/utils.py"]},"message":"formatting"},{"commit":"31b69b3242eeca2c02f87c31d58193dd3f06fe49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/utils.md","jc/utils.py"]},"message":"formatting"},{"commit":"e6a80fea3228122dd84e17672c835c0460ad1342","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":7,"files":["docs/utils.md","jc/utils.py","man/jc.1"]},"message":"formatting"},{"commit":"d6aec00e038d1ecfe43c13a6909d50630455b372","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":27,"deletions":1,"files":["tests/fixtures/ubuntu-18.04/vmstat-1-long-streaming.json","tests/fixtures/ubuntu-18.04/vmstat-1-long.json","tests/test_vmstat.py","tests/test_vmstat_s.py"]},"message":"add vmstat-1-long tests"},{"commit":"4aa7d81e11ea7fcfbb5c9d74337cde617b1a0d5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":50,"deletions":2,"files":["jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","tests/fixtures/ubuntu-18.04/vmstat-1-long.out"]},"message":"ignore re-printed header rows in output"},{"commit":"48cdabc3b0862d6291e1ec59ab385e0e146c31eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":16,"deletions":0,"files":["docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"]},"message":"document timestamps"},{"commit":"a1791ef5479749692c79bbe98fc7687d70cd6cda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"]},"message":"linting"},{"commit":"7bc87f6c2d4cfcfa656a1c1b8973a4c0414c85d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":8,"deletions":8,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","man/jc.1"]},"message":"change _meta to _jc_meta"},{"commit":"bbed9e274b8252ba0518140fe7fc97029310771f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":154,"deletions":159,"files":["jc/parsers/ping_s.py"]},"message":"linting"},{"commit":"486282b9856f5e56cf43ee1399d8e7cb78353b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/vmstat_s.py"]},"message":"linting"},{"commit":"a4d45b653f794033978940da14910f5d607a8254","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["jc/parsers/foo_s.py","jc/parsers/vmstat.py"]},"message":"linting"},{"commit":"22e151b01c0f97c141d912c9646e46df0320d622","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":56,"deletions":60,"files":["jc/cli.py","jc/utils.py"]},"message":"linting"},{"commit":"7a4ebcd1ecdb4929aae70e44b4f9b6b5ab52b393","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CONTRIBUTING.md"]},"message":"language hints"},{"commit":"651cbfe02fbb354c4caf8e0d022655642e7caed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"add streaming foo parser"},{"commit":"8c3e764516e1c28961b09380b638a57ce98b1261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"add streaming parser to contrib guidelines"},{"commit":"b4e75da7e3f23502723ce8b2a7261b376f296864","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"37223f086cabc8db5962415bd161fed151dafb9d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"a404033735c2c8075a8e08194197eae59db70afd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add error and warning message wrap info"},{"commit":"b7433ed085c0ba22ea0d49330871a651a8d83fb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":80,"deletions":41,"files":["docs/utils.md","jc/cli.py","jc/parsers/file.py","jc/parsers/ls.py","jc/parsers/traceroute.py","jc/utils.py"]},"message":"auto wrap warning and error messages"},{"commit":"224d3d65ada4216e28e142d411b0c2c3358517b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"Add exception class name to error message"},{"commit":"a349fb0bdabaf74503831f22c4efbd02254f809d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":10,"deletions":8,"files":["README.md","docs/utils.md","man/jc.1"]},"message":"change _meta to _jc_meta"},{"commit":"e7ddcfb83fb295034db44ade407476ff3a962cd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":14,"deletions":12,"files":["jc/utils.py","templates/manpage_template","templates/readme_template",".../centos-7.7/ping-ip-O-streaming-ignore-exceptions.json","tests/test_ping_s.py"]},"message":"change _meta to _jc_meta"},{"commit":"abd20dfe3662f65373ac582c70aa740e53b52f68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"formatting"},{"commit":"dc1fd3ef1be41aee349b159059f1febff76f6caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":12,"deletions":12,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"fix -qq docs"},{"commit":"98a7686db46fbd3ed98382867976249f307d0015","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":18,"insertions":160,"deletions":152,"files":["README.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","docs/utils.md","jc/cli.py","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","jc/utils.py","man/jc.1","templates/manpage_template","templates/readme_template","... => ping-ip-O-streaming-ignore-exceptions.json}","tests/test_ls_s.py","tests/test_ping_s.py","tests/test_vmstat_s.py"]},"message":"use -qq to ignore streaming exceptions"},{"commit":"9c6c6c4330fc68115be012de254161f36e3a8328","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"add next() info"},{"commit":"f9be5651daa891e06ad0acd8980ffc0fe51fd29d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":6,"files":["README.md","templates/readme_template"]},"message":"add language hints"},{"commit":"df9835a3e62bb2b3b6ec8b55f06a25a00a799d92","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"92363be2dd633bdd3c2dd07c72ebd281d2cb4565","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"fix streaming python module example"},{"commit":"31b62030156f9c826fe5c7d127e9dd0ace582dd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"18805858d685d456f9a38540bbaedbaa1a411546","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["man/jc.1","templates/manpage_template"]},"message":"formatting"},{"commit":"e676f0e20fb6e96a536c4d182b0d287cdc1ad0f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":36,"deletions":6,"files":["README.md","templates/readme_template"]},"message":"add streaming parser info for python module use"},{"commit":"20652edefaa7705b8ba756bae3944ff362a295a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["CHANGELOG"]},"message":"update changelog"},{"commit":"98c29d07478093e78f53ec633f2dd08cafc3e3ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":120,"deletions":0,"files":["tests/fixtures/centos-7.7/vmstat-a.json","tests/fixtures/centos-7.7/vmstat-at-5-10.json","tests/fixtures/centos-7.7/vmstat-awt.json","tests/fixtures/centos-7.7/vmstat-d.json","tests/fixtures/centos-7.7/vmstat-dt.json","tests/fixtures/centos-7.7/vmstat-w.json","tests/fixtures/centos-7.7/vmstat.json","tests/test_vmstat.py"]},"message":"add vmstat tests"},{"commit":"41a6311f6b3ed2cc94919d042aed51c46cdf3e2f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":132,"deletions":1,"files":["tests/fixtures/centos-7.7/vmstat-a-streaming.json",".../centos-7.7/vmstat-at-5-10-streaming.json",".../fixtures/centos-7.7/vmstat-awt-streaming.json","tests/fixtures/centos-7.7/vmstat-d-streaming.json","tests/fixtures/centos-7.7/vmstat-dt-streaming.json","tests/fixtures/centos-7.7/vmstat-streaming.json","tests/fixtures/centos-7.7/vmstat-w-streaming.json","tests/test_ping_s.py","tests/test_vmstat_s.py"]},"message":"add streaming parser tests"},{"commit":"978760ec57e04e3ec347c8764bfad015b6dddbff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"add exception class name to error string"},{"commit":"d410425537817964ceb7b61e0fdff6c03fdf8766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":136,"deletions":136,"files":["docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"]},"message":"replace single quotes with double quotes in doc"},{"commit":"6b7430329cbe1bfb95b47bcfe031906641c127e1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":269,"deletions":1,"files":["README.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat_s.py","man/jc.1"]},"message":"doc update"},{"commit":"40fe0d4a6081a1233bf5c3eb51a01da1f12bc4dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":141,"deletions":22,"files":["jc/parsers/vmstat_s.py"]},"message":"working parser"},{"commit":"365c5354a0349e470558d15243217a064e73da38","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/vmstat.py"]},"message":"remove debug print statement"},{"commit":"b246a05cbb4c1c564f81b3e72cecb62edbe6ced6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"fix vmstat-s name"},{"commit":"9e5a7a4abb8668d043625951a05eb5733cbbd56f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":37,"deletions":0,"files":["tests/fixtures/centos-7.7/vmstat-a.out","tests/fixtures/centos-7.7/vmstat-at-5-10.out","tests/fixtures/centos-7.7/vmstat-awt.out","tests/fixtures/centos-7.7/vmstat-d.out","tests/fixtures/centos-7.7/vmstat-dt.out","tests/fixtures/centos-7.7/vmstat-w.out","tests/fixtures/centos-7.7/vmstat.out"]},"message":"add vmstat sample output"},{"commit":"f266acbccafc040c375723147b8e5d7fddb1e697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":106,"deletions":14,"files":["jc/parsers/vmstat.py"]},"message":"add processing logic"},{"commit":"4e3b471f1801f1b9006b18cae2a3d816f361262e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/utils.py"]},"message":"add format for vmstat"},{"commit":"5e28736c2e0c951e71e6531e03a9619279d95d3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"]},"message":"add vmstat and vmstat_s"},{"commit":"a91913a3b517ea0dbb25d6e4cc92850eb2fde5ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":106,"deletions":0,"files":["jc/parsers/vmstat_s.py"]},"message":"streaming parser template"},{"commit":"90c64f0ae0d97d025adee40970d89baca79ee4ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":182,"deletions":0,"files":["jc/parsers/vmstat.py"]},"message":"initial working parser"},{"commit":"7cc642ed1a476abda709ac9b79900a1de12e1ef7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/foo_s.py"]},"message":"formatting"},{"commit":"809f64d35a92bb3d7380fa9d78ac1421a10b81fc","merge":"ff0fda4 a6f859a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #169 from kellyjonbrazil/streaming"},{"commit":"a6f859a55edae50fcc185948736218404cfaa929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":18,"insertions":168,"deletions":153,"files":[".../osx-10.14.6/ping-hostname-p-streaming.json",".../osx-10.14.6/ping-hostname-s-streaming.json",".../osx-10.14.6/ping-hostname-streaming.json",".../osx-10.14.6/ping-ip-dup-streaming.json",".../fixtures/osx-10.14.6/ping-ip-p-streaming.json",".../fixtures/osx-10.14.6/ping-ip-s-streaming.json","tests/fixtures/osx-10.14.6/ping-ip-streaming.json",".../osx-10.14.6/ping-ip-unreachable-streaming.json",".../osx-10.14.6/ping6-hostname-p-streaming.json",".../osx-10.14.6/ping6-hostname-s-streaming.json",".../osx-10.14.6/ping6-hostname-streaming.json",".../osx-10.14.6/ping6-ip-dup-streaming.json",".../fixtures/osx-10.14.6/ping6-ip-p-streaming.json",".../fixtures/osx-10.14.6/ping6-ip-s-streaming.json","tests/fixtures/osx-10.14.6/ping6-ip-streaming.json","tests/fixtures/pi/ping-ip-O-D-streaming.json","tests/fixtures/pi/ping-ip-O-streaming.json","tests/test_ping_s.py"]},"message":"add final ping_s tests"},{"commit":"39ef88078f43708e470d3c1b2fd95e76b5cbeb08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/ping_s.py"]},"message":"add destination_ip to error lines"},{"commit":"aeea5e8d2eab2fef3e14637f512aed7b117c4a3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/test_ls_s.py"]},"message":"formatting"},{"commit":"1a0700bff4bdebbd9f1f92f2fc7a56c4d5ed6925","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":31,"insertions":240,"deletions":213,"files":[".../fedora32/ping-hostname-O-D-p-s-streaming.json",".../fedora32/ping-hostname-O-p-streaming.json",".../fedora32/ping-hostname-O-streaming.json","tests/fixtures/fedora32/ping-ip-O-D-streaming.json","tests/fixtures/fedora32/ping-ip-O-streaming.json",".../fedora32/ping6-hostname-O-D-p-s-streaming.json",".../fedora32/ping6-hostname-O-p-streaming.json",".../fedora32/ping6-ip-O-D-p-streaming.json",".../fixtures/fedora32/ping6-ip-O-p-streaming.json",".../freebsd12/ping-hostname-p-streaming.json",".../freebsd12/ping-hostname-s-streaming.json",".../freebsd12/ping-hostname-streaming.json","tests/fixtures/freebsd12/ping-ip-p-streaming.json","tests/fixtures/freebsd12/ping-ip-s-streaming.json","tests/fixtures/freebsd12/ping-ip-streaming.json",".../freebsd12/ping6-hostname-p-streaming.json",".../freebsd12/ping6-hostname-s-streaming.json",".../freebsd12/ping6-hostname-streaming.json","tests/fixtures/freebsd12/ping6-ip-p-streaming.json","tests/fixtures/freebsd12/ping6-ip-s-streaming.json","tests/fixtures/freebsd12/ping6-ip-streaming.json",".../ping-hostname-O-D-p-s-streaming.json",".../ubuntu-18.04/ping-hostname-O-p-streaming.json",".../ubuntu-18.04/ping-hostname-O-streaming.json",".../ubuntu-18.04/ping-ip-O-D-streaming.json",".../fixtures/ubuntu-18.04/ping-ip-O-streaming.json",".../ping6-hostname-O-D-p-s-streaming.json",".../ubuntu-18.04/ping6-hostname-O-p-streaming.json",".../ubuntu-18.04/ping6-ip-O-D-p-streaming.json",".../ubuntu-18.04/ping6-ip-O-p-streaming.json","tests/test_ping_s.py"]},"message":"add more ping-s tests"},{"commit":"b5fa6d068f240671eb948b055cd4f7bf127e0ec0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":25,"deletions":5,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"]},"message":"update docs"},{"commit":"1baec0b420feff068f2dc1e35499f78aa7d0a6e0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":815,"deletions":0,"files":[".../ping-hostname-O-D-p-s-streaming.json",".../centos-7.7/ping-hostname-O-p-streaming.json",".../centos-7.7/ping-hostname-O-streaming.json",".../fixtures/centos-7.7/ping-ip-O-D-streaming.json",".../centos-7.7/ping-ip-O-streaming-quiet.json","tests/fixtures/centos-7.7/ping-ip-O-streaming.json",".../fixtures/centos-7.7/ping-ip-dup-streaming.json",".../ping6-hostname-O-D-p-s-streaming.json",".../centos-7.7/ping6-hostname-O-p-streaming.json",".../centos-7.7/ping6-ip-O-D-p-streaming.json",".../centos-7.7/ping6-ip-O-p-streaming.json",".../centos-7.7/ping6-ip-dup-streaming.json","tests/test_ping_s.py"]},"message":"add some streaming tests"},{"commit":"4f2a4e1dee9d722d2aa5ddf2c082a358c88cf640","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/parsers/ping_s.py"]},"message":"skip blank lines and warning lines"},{"commit":"758d617668d1f9d0f27b52d46749e5b67a570cf1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":5,"deletions":5,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"]},"message":"doc update"},{"commit":"55322c37f57a9c8e28641a61928fad2329f5e50d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/foo_s.py"]},"message":"formatting"},{"commit":"d19ea5552bb3a379f7f92bcb58794c557ecc6647","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":193,"deletions":0,"files":["tests/fixtures/centos-7.7/ls-al-streaming.json","tests/fixtures/centos-7.7/ls-alR-streaming.json","tests/fixtures/centos-7.7/ls-alh-streaming.json","tests/fixtures/osx-10.14.6/ls-al-streaming.json","tests/fixtures/osx-10.14.6/ls-alR-streaming.json","tests/fixtures/osx-10.14.6/ls-alh-streaming.json",".../osx-10.14.6/ls-lR-empty-folder-streaming.json","tests/fixtures/ubuntu-18.04/ls-al-streaming.json","tests/fixtures/ubuntu-18.04/ls-alR-streaming.json","tests/fixtures/ubuntu-18.04/ls-alh-streaming.json",".../fixtures/ubuntu-18.04/ls-l-iso-streaming.json","tests/test_ls_s.py"]},"message":"add streaming ls parser tests"},{"commit":"130c3527c1083d399deef00ee8fcaa75f609b485","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":25,"deletions":25,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","man/jc.1"]},"message":"update docstrings"},{"commit":"3f221f471416766a860bd19850afda4899ee5eb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"]},"message":"doc update"},{"commit":"d64c4cb39056bb869fc117477612ae5ae2ef3d85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":141,"deletions":1,"files":["man/jc.1","templates/manpage_template"]},"message":"add streaming parsers section"},{"commit":"448c56aa46b72438e4a4c83b10a7eb889e3f50e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"9fbea15b6d031baa8c90f2602e39de7cf51408e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":8,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"]},"message":"rename state class to _state"},{"commit":"932060314b3c1ce518b9f57532e124285cb3ad0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":41,"deletions":11,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"]},"message":"doc update"},{"commit":"5e68ae50097cb339f3390449db7e3f189a716320","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/parsers/ping_s.py"]},"message":"import exception. tighten up os detection"},{"commit":"d03541beae44a4571a7d0481af01a5c19506207f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":5,"files":["jc/parsers/ping_s.py"]},"message":"add docstring examples. add exception raise when OS cannot be detected."},{"commit":"516fa571d90a0c93134c953c15ce84dd31b96b4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/ping_s.py"]},"message":"remove unused variable. use elif instead of if for linux vs. bsd detection"},{"commit":"a19c12096a8e8de02a6ff761cc9c13ec249d416e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":373,"deletions":143,"files":["jc/parsers/ping_s.py"]},"message":"initial working parser for both linux and bsd"},{"commit":"758f27945de4f0897405eba02c7908d815ce6e9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/ping_s.py"]},"message":"change data_bytes and bytes to sent_bytes and response_bytes"},{"commit":"8b1e8d58df22f8542ccaf7bf3e1eabe6132e7a42","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping_s.py"]},"message":"remove unneeded line"},{"commit":"b967489d085319facee077958deaa04956a98343","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":81,"deletions":40,"files":["jc/parsers/ping_s.py"]},"message":"complete linux coverage including summary"},{"commit":"870d0218be2641e3eddb114c23d54deb23155f25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"]},"message":"add unbuffer note"},{"commit":"84020bc2af294cb065105f1399453aefc98eb180","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":12,"deletions":6,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/utils.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","man/jc.1"]},"message":"change error_msg to error in -q result docs"},{"commit":"4efe5344e069ed921f208bcbbd097705be2d3b4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add links to HN and Reddit"},{"commit":"9182c545134b3d56d27d2c1d9bda678532bdc3fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":8,"files":["jc/utils.py"]},"message":"formatting"},{"commit":"28f0ab0b02d21fc060f1ac7181f85552798dc4bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/ls_s.py","jc/utils.py"]},"message":"update streaming error messages"},{"commit":"90d1a30696b2cbfbb06a55cc0cf920cf8ecd89aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"130b3738cc57fe261e8ef881a57b7836acd7e7e9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":21,"deletions":26,"files":["jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/utils.py"]},"message":"shorten successful yield to a single line"},{"commit":"92c7357615af7689db273aa78d666b35a2ec7a70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/foo_s.py"]},"message":"formatting"},{"commit":"c80f8633349c00ea461b8927f9949fe19b2f46ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/foo.py"]},"message":"simplify return condition formatting"},{"commit":"4642c20179d4643e0cf1970b264da7d9d91628de","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"5288eb22aadbbc1005b16428b94d2b07e9a75e3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"add info about streaming parser performance characteristics"},{"commit":"df8387a1a99df69eac5005662aaf56d506fa0efd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"streaming parsers cannot be used with the magic syntax"},{"commit":"cc38c27f44d3f088609b878304cab8eed75fc8f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"64f5357d69fe88b45d710d38948969699e1ca12f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":84,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add streaming parsers section"},{"commit":"51debb5649bef431e51e543f1c9270e2810aa58f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"]},"message":"add vmstat parser and change from linebuffer to unbuffer"},{"commit":"b48d05a4313b27cf5e69d3e4259542e0b131b60f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":15,"deletions":15,"files":["README.md","jc/cli.py","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"change from line buffer output to unbuffer output"},{"commit":"4e7f6b337db61b8a106cf958f6b874157909c87a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":17,"deletions":25,"files":["jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"]},"message":"simplify yield statements"},{"commit":"a509d99cafd80862721595ee59ccc4a471b5e5a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/utils.py"]},"message":"add stream_success dictionary"},{"commit":"481e45fb644ac88fa77ef35643b793f179fe6859","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"]},"message":"limit parse error msg lenght"},{"commit":"e9038e1720e1c0e520e2f29b718aa8505cbbb9a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":66,"deletions":0,"files":["docs/parsers/ping_s.md"]},"message":"initial streaming ping docs"},{"commit":"8fd9e582bf29275c4daaa3be88ea8d196411b34a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":15,"deletions":17,"files":["docs/parsers/ls_s.md"]},"message":"doc update"},{"commit":"c1fd6f48a5a3501499c9fca7239673b8555cc7c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["docs/utils.md"]},"message":"add stream_error docs"},{"commit":"af615c7f4b3f589ffc1b37cf9834062a04c013cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":26,"deletions":5,"files":["CHANGELOG","README.md","jc/cli.py","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"add line buffer output option"},{"commit":"bf0bc32d7ae6cabe07906207f4f08c2e81802c80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"flush streamed text for better piping experience"},{"commit":"2d6b53e012181a4c33bab441880c47c0fc0b0601","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":36,"deletions":42,"files":["jc/parsers/ping_s.py"]},"message":"add pattern support. move unparsable line detection to standard streaming parser style"},{"commit":"51271fea0fbd7bd63863ba05c399b4675dc5b4bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":139,"deletions":149,"files":["jc/parsers/ping_s.py"]},"message":"somewhat working parser"},{"commit":"2deb473e0bc96c0e39ec4074a6df4b941ba2172b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":262,"deletions":0,"files":["jc/parsers/ping_s.py"]},"message":"initial streaming ping parser"},{"commit":"23eeb33b3da43a679c3bf3f3643cfa552a1164e1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"modify stream_error message"},{"commit":"f50dfaef45632241f8f6972fa19bb17c54a457ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":13,"files":["jc/parsers/ls_s.py"]},"message":"use stream_error function for exceptions. raise on non -l ls output"},{"commit":"55bb71e9d466cc9ee5f7fd8eca1101c941cbcb35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"add streaming ping parser. update streaming exception message"},{"commit":"dab9357d286962b70224d6fafbf90a4c0cbc9980","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":12,"files":["jc/parsers/foo_s.py"]},"message":"use stream_error function for exceptions"},{"commit":"27eb427245b5126335cef0adb5e57522272474b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/utils.py"]},"message":"add stream_error function"},{"commit":"260f3685d944ded84396ae3395773d6898803fb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":112,"deletions":0,"files":["jc/parsers/foo_s.py"]},"message":"add streaming parser template"},{"commit":"76e78fc0c34b88a90fef876eebef92bd71cd772c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":11,"files":["jc/parsers/ls_s.py"]},"message":"doc updates"},{"commit":"1ac944fa028a400ae7b39b811fcf368c9bf5e259","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/ls_s.py"]},"message":"add -q option info to docstring"},{"commit":"986bc9b042a940f8dd34f0541bcb9b5840df579e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":43,"files":["jc/parsers/ls_s.py"]},"message":"cleanup unused code"},{"commit":"5a7942069b1f3ef3b45992b482bfb6bb973f7e8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":28,"deletions":28,"files":["jc/parsers/ls_s.py"]},"message":"add support for parent field"},{"commit":"f6c6fc13ac4c779667807df12444a41ef28a8011","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/cli.py"]},"message":"enhance error msg when streaming parser is used"},{"commit":"1d8cfae89f24192b6fab087f59c9b8988ef363dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/parsers/ls_s.py"]},"message":"only print _meta object if -q or quiet flag is used. Also, add message to the end of exceptions informing of the -q option to ignore errors"},{"commit":"787df51239ffa8260b48d6a3a58e6ff07d5e0f64","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"]},"message":"remove `\\n` from end of line in exception message"},{"commit":"5e7f302a9c45343c36e81944db38a435e6c8a20c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":10,"files":["jc/parsers/ls_s.py"]},"message":"Raise exceptions unless the -q or quiet flag are used"},{"commit":"3d10fd40b56264836874da19aa72351e6d5cfbf7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":13,"files":["jc/cli.py"]},"message":"remove print flush for better performance. Roll json.JSONDecodeError into the parse try/except block"},{"commit":"57e3bf239cc76d3b0ee0eddc618171eb90c28dec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"]},"message":"formatting for docs"},{"commit":"ccb09861e82044e17ec51277b3c8875e5ba9d87d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":20,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"]},"message":"formatting for docs"},{"commit":"94551d75dd926c7f558e5cab47ba9483a20c6b3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":116,"deletions":49,"files":["CHANGELOG","README.md","docs/parsers/ls_s.md","docs/readme.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz","mangen.py","setup.py"]},"message":"doc update"},{"commit":"6e21218425359210591827e936b8d48d9644df92","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":234,"deletions":3,"files":["jc/cli.py","jc/parsers/ls_s.py"]},"message":"working prototype of streaming ls parser"},{"commit":"ff0fda48fc48760a7293528155d222c6456f84c4","merge":"e08b61f 528aac7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #168 from kellyjonbrazil/master"},{"commit":"528aac7ad87feae2093aba563c83a29ebf75e5f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":38,"files":["README.md","templates/readme_template"]},"message":"use subprocess in python example"},{"commit":"ab482e521d4cecfffa5393805b1d7de4389db49a","merge":"9c1ad92 e08b61f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #163 from kellyjonbrazil/dev"},{"commit":"e08b61fa81b1bd2304d04db5cdc8b809fe9c6032","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]},"message":"add schema note to sfdisk"},{"commit":"ce61bd1d2b4323d9c2d0454c4f646521913ae20d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":73,"deletions":7,"files":["tests/fixtures/debian10/sfdisk-F2.json","tests/fixtures/debian10/sfdisk-F2.out","tests/fixtures/debian10/sfdisk-l2.json","tests/fixtures/debian10/sfdisk-l2.out","tests/fixtures/debian10/sfdisk-l3.json","tests/fixtures/debian10/sfdisk-l3.out","tests/test_sfdisk.py"]},"message":"add tests for -F fixes"},{"commit":"7b708f75182bf3ed33478a7de62e9c2496f0b994","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":11,"deletions":5,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-l.json","tests/fixtures/debian10/sfdisk-l.json"]},"message":"Don't convert 'size' to int, except for legacy -d support. Change partition table detection logic to fix -F output"},{"commit":"89ca50c7fc1bf64f34c915e65031d0bc520e6466","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"]},"message":"add -l to sfdisk raw example"},{"commit":"fb54899dcc2160450448e0d6111557cebdeb0d4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":38,"deletions":23,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]},"message":"doc update"},{"commit":"0a625ad7ddd9c804052d98930165cd22049546bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/sfdisk.py"]},"message":"remove unneeded lines"},{"commit":"d32e45efbe0d71a9a132abfb2855f1f4ccee9916","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":69,"deletions":1,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-F.json","tests/fixtures/centos-8/sfdisk-l.json","tests/fixtures/debian10/sfdisk-F.json","tests/fixtures/debian10/sfdisk-l.json","tests/test_sfdisk.py"]},"message":"add sfdisk tests"},{"commit":"c77696bc789cdfd286a7479c3d9f67d23149d0ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"]},"message":"version bump"},{"commit":"736fde9e784587cb2ef344bbf31d876eafea7741","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":147,"deletions":28,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-F.out","tests/fixtures/centos-8/sfdisk-l.out","tests/fixtures/debian10/sfdisk-F.out","tests/fixtures/debian10/sfdisk-l.out"]},"message":"add support for newer versions of sfdisk"},{"commit":"9c1ad92fed9a4b3a0da66d6b71deec8d608edfa9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["CONTRIBUTING.md"]},"message":"fix examples"},{"commit":"1a9fd2139d156a51bf2d25db951e47e96da77f7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"add \"For new parsers:\""},{"commit":"7661e7f27a4e5c379ea37c7f95496aca2c1e2910","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"formatting"},{"commit":"f857b7fbf7862ddd7eb5ab20470f5dbaacc62119","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"add custom parser folder info"},{"commit":"d94d12dbc5fb3e3712b2f1aea949013cb8213e28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["CONTRIBUTING.md"]},"message":"add foo parser template info"},{"commit":"700916276ae8b0a106410e3dd2ea3e00248ee37a","merge":"473f706 834e523","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #159 from kellyjonbrazil/master"},{"commit":"834e52369ceb479776ddc8fc2931790af53b9c18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":5,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]},"message":"update man page"},{"commit":"1ce53365de61421c8bd43e04590038083894153b","merge":"2689697 473f706","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #156 from kellyjonbrazil/dev"},{"commit":"473f70668f04a38765559c5dbf0468af24d625c9","merge":"0dbd270 2689697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'master' into dev"},{"commit":"0dbd2702f6ab2640b2ccdea92411ac0789673e66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/cli.py"]},"message":"reformat doc_text for nicer indentation"},{"commit":"01e3764a9b6ba902aea522bf6b7005fd37b3acbb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"fix join syntax"},{"commit":"ff9c81722ae7221364e9bcb83d98b16b4263334e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"]},"message":"try/except for shlex.join since only available in python 3.8"},{"commit":"166aef7a022ed29862ab2e0702d53c591bb5cc77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":4,"deletions":4,"files":["docs/parsers/stat.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz","setup.py"]},"message":"version bump"},{"commit":"78caf7646baf5d35602fd76771443cd64bd783af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add stat fix"},{"commit":"1f99d40cecc5d88a246f3558f71db376ebd885c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":17,"deletions":2,"files":["jc/parsers/stat.py","tests/fixtures/osx-10.14.6/stat-filename-with-spaces.json","tests/fixtures/osx-10.14.6/stat-filename-with-spaces.out","tests/test_stat.py"]},"message":"fix filename with spaces for osx/bsd"},{"commit":"4c2912d3d5ec1fd2d5d891f2b3c58a33dd8572be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"use shlex.join to quote run_command_str for better error messages"},{"commit":"45e6e06be581f787f707e3f5645129c713478d16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["CHANGELOG"]},"message":"add glob and process substitution fixes"},{"commit":"fdbe3e05f323c95687a1137983f9623911008ca2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["jc/cli.py"]},"message":"fix issue with globs not including filenames with spaces with magic syntax (introduced during switch to use subprocess to grab process exit code). No longer need to shlex quote arguments."},{"commit":"7cc168f6409af13fda815d0d2a6db25b7c9ba367","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"add comment"},{"commit":"ff2d609c9b5f5f57f3331e5593e8fe87c01654dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":1,"files":["jc/cli.py"]},"message":"add close_fds=False in subprocess.Popen() to allow process substitution in magic syntax. Also check for too many open files exception"},{"commit":"2689697b4c21758903e5f74ec069e89be585aba2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"f90a0ea8ab15629b7786e4431e9c968c3a896ee0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["templates/readme_template"]},"message":"formatting"},{"commit":"caabe60f849fb2422e47b8f10e0ff35beb706dcd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":3,"deletions":3,"files":["docs/parsers/kv.md","jc/man/jc.1.gz","jc/parsers/kv.py","man/jc.1","man/jc.1.gz"]},"message":"fix kv example"},{"commit":"2bef4ed6038201f54339e750a833260dc1998591","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","README.md"]},"message":"package updates"},{"commit":"ee57be533b12593a33a2abbb2892697f0bd40c65","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"]},"message":"fix sfdisk example"},{"commit":"c5b7aaca25d6b66d3e44256c2c6760a4cf2956ec","merge":"3b22ce4 7a1be90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #149 from kellyjonbrazil/dev"},{"commit":"7a1be905bb8654558afb5979b0bd78d4a8488874","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]},"message":"version bump"},{"commit":"5798495a11afa2f72ce6f79be785d46240fcbeb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["CHANGELOG"]},"message":"add 1.15.7 to 1.16.0 changes"},{"commit":"46171e220252ec92d18e744d2a57c1d6a6dc19f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":69,"deletions":0,"files":["EXAMPLES.md"]},"message":"add sfdisk example"},{"commit":"dd5c924ff505dcc2a9c851d2425677bdf16ea462","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add man page location change"},{"commit":"30c4ab297658228a07ef9b1585516719af3febb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":515,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"]},"message":"new man page location"},{"commit":"26ea4d47b33277efb0ddafe8f421791696277c07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":14,"deletions":3,"files":["CHANGELOG","MANIFEST.in","jc/__init__.py","mangen.py","setup.py"]},"message":"version bump and deprecate /man/jc.1.gz and /jc/man/jc.1.gz"},{"commit":"2732cd175c1e878210707162de3928f33fb2f201","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["CHANGELOG","MANIFEST.in"]},"message":"include CHANGELOG in source distribution"},{"commit":"3e54b597be88b0e342e4361b7f2c1af447f9482b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add timezone change for unit tests"},{"commit":"f10ebea20962084833e5c1ebd9bc90a251bf3ff4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":78,"deletions":0,"files":["tests/test_date.py","tests/test_dig.py","tests/test_dir.py","tests/test_last.py","tests/test_ls.py","tests/test_rpm_qai.py","tests/test_stat.py","tests/test_systeminfo.py","tests/test_upower.py","tests/test_utils.py","tests/test_who.py"]},"message":"update tests to set correct timezone on POSIX systems"},{"commit":"2c6f3993cb4c5e559dbac7a479ec889aa2cba752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/route.md","jc/man/jc.1.gz","jc/parsers/route.py","man/jc.1.gz"]},"message":"remove extra comma"},{"commit":"708a696920b52c2614edcdba264912527b2dfbef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":0,"deletions":2,"files":["docs/parsers/route.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"remove extra lines"},{"commit":"20bbb5d331575c8fc33ba63643882a62650c97b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/route.py"]},"message":"remove extra lines"},{"commit":"223e785b547d9376174efa15321d60a533847c57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/sfdisk.py"]},"message":"rename variable"},{"commit":"3d78692c59980e4d70361d3a9f74bacc3f21376e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":150,"deletions":1,"files":["tests/fixtures/centos-7.7/sfdisk-d-multi.json","tests/fixtures/centos-7.7/sfdisk-d-multi.out","tests/fixtures/centos-7.7/sfdisk-d.json","tests/fixtures/centos-7.7/sfdisk-d.out","tests/fixtures/centos-7.7/sfdisk-l-multi.json","tests/fixtures/centos-7.7/sfdisk-l-multi.out","tests/fixtures/centos-7.7/sfdisk-l.json","tests/fixtures/centos-7.7/sfdisk-luB.json","tests/fixtures/centos-7.7/sfdisk-luM.json","tests/fixtures/centos-7.7/sfdisk-luS.json","tests/test_sfdisk.py"]},"message":"add sfdisk tests"},{"commit":"5321a15dcf13cf14efe578d0f66b651078c3d8a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":8,"deletions":8,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"]},"message":"update examples"},{"commit":"a452f8252a593f7914ebece53af9d73f4fd11a19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"]},"message":"fix integer conversion"},{"commit":"49267f09ac01fead3b20b2d481bb5e0d07af1439","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/sfdisk.py"]},"message":"change to root prompt in examples"},{"commit":"db47f35783e46a8299533c22146d851509f6ceb2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":15,"insertions":610,"deletions":3,"files":["CHANGELOG","README.md","docs/parsers/sfdisk.md","jc/__init__.py","jc/cli.py","jc/man/jc.1.gz","jc/parsers/sfdisk.py","jc/utils.py","man/jc.1.gz","setup.py","tests/fixtures/centos-7.7/sfdisk-d.out","tests/fixtures/centos-7.7/sfdisk-l.out","tests/fixtures/centos-7.7/sfdisk-luB.out","tests/fixtures/centos-7.7/sfdisk-luM.out","tests/fixtures/centos-7.7/sfdisk-luS.out"]},"message":"add working sfdisk parser"},{"commit":"d48abf312c1f55ab31aa11da2b6cf6bc8166733b","merge":"ff7ab0a 3b22ce4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #147 from kellyjonbrazil/master"},{"commit":"3b22ce41105387e7f46a410460cf04759feef197","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":6,"deletions":3,"files":["CHANGELOG","jc/__init__.py","jc/cli.py","jc/man/jc.1.gz","man/jc.1.gz","setup.py"]},"message":"fix local plugin parser issue where parser has .py in the name but it is not at the end"},{"commit":"c521ca5bc9e2b035cfef6ff65f6b303b3ec44296","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"change possible to available"},{"commit":"3ddc1c665990e1e732314330db214a81ab810fe9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"add jello"},{"commit":"a8e19402b7d1f9f06bc40b81a15dec401154180c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["ADVANCED_USAGE.md"]},"message":"remove temporary fix"},{"commit":"0927902b30654274743ab9092e90e768709a9937","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["ADVANCED_USAGE.md"]},"message":"temp fix for wrong url"},{"commit":"572548b42fb6ed9d32a392503d44fac1a8f146d3","merge":"95aec9c ff7ab0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #141 from kellyjonbrazil/dev"},{"commit":"ff7ab0a1ed7f468d0e84eb3bf0636f53913c490d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":0,"deletions":1,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc updates for v1.15.5"},{"commit":"5db71b05cb28691bbbaa5d668bcd4a4ac7e68b85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":3,"deletions":3,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template","templates/readme_template"]},"message":"add en_US.UTF-8 to LANG info"},{"commit":"f9b952885aa7f2b450786a08c3879d9e358886da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add python 3.9.5 packaged info"},{"commit":"e7983bc0b29abaca2147038dfad018cba1e67cdf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xml.md","docs/parsers/yaml.md"]},"message":"version bump"},{"commit":"473a6431425fc24a4cc83939ff592e0d49535b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":10,"deletions":3,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"]},"message":"add windows msi info"},{"commit":"14f3d442cb86250b8f2cdfd7977938634b8abd6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"formatting"},{"commit":"d6f4ed9ab55fe9b7c2766fb437172af62a1d5c87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/test_utils.py"]},"message":"add long-form UTC test"},{"commit":"1b8d654444ff8c8b8171c7ac63e2736447a36c09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add error message info"},{"commit":"6002af0dca334c0affaff3e9acdca416238c7d82","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/cli.py"]},"message":"add more error message detail to the user for ParseError and LibraryNotFound exceptions"},{"commit":"0924d822a30c8806f65574c010561cd6f7c8e181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":1,"files":["templates/readme_template"]},"message":"add windows example"},{"commit":"72a37b928924c3edde3a4edb952f98c94aa05f0b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"]},"message":"version bump"},{"commit":"5eef7bd769f8ffb03ba396833d1b33484041a99f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":16,"deletions":16,"files":["jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"use LibraryNotInstalled exception instead of exiting via sys.exit"},{"commit":"c6893e1bd5283d982a7ecd6f84bdfdd0054ce7a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/exceptions.py"]},"message":"add LibraryNotInstalled exception"},{"commit":"039f6612e491c6f821c001252e122e9b0a781104","merge":"9c57c09 95aec9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #139 from kellyjonbrazil/master"},{"commit":"95aec9c6f9aa8fb4d0dae227410a1346d550f47f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["templates/manpage_template"]},"message":"add info about Magic syntax not supporting shell builtins"},{"commit":"4e9652a8ec2482a64dc029b0ce0e1047a3e49867","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"spelling"},{"commit":"773b7f4b1f23e04c90e602aab05bc1a7e5aae37b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add space before exit code table"},{"commit":"d17ffde9cdc35392ae25d8e9de5328e46067df2a","merge":"efb1d3e 9c57c09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #138 from kellyjonbrazil/dev"},{"commit":"9c57c09c00e64a9031391b9b70083ad6ecf0bc0b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc update for release"},{"commit":"4d730a9de5a0d7c064a9a59e3add86e58d9ec492","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add UTC fix"},{"commit":"fc57bcfce24af23f077d6a73f1db4591d8f99c13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"]},"message":"fix for when UTC is referenced as \"Coordinated Universal Time\""},{"commit":"fa5571486c3c19bb7e836f043545ea4f2509ed4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":10,"files":["jc/cli.py"]},"message":"simplify json_out function"},{"commit":"9996c4fe23564dfb52e3c7dbdbd8bd67edfb1e95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":10,"deletions":10,"files":["EXAMPLES.md","docs/parsers/history.md","docs/parsers/jobs.md","jc/man/jc.1.gz","jc/parsers/history.py","jc/parsers/jobs.py","man/jc.1.gz"]},"message":"update docs for shell builtins"},{"commit":"038d4290248e6bb94762bb51f69e9958f7c1fecb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":6,"files":["docs/parsers/dig.md","docs/parsers/dir.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc updates"},{"commit":"9bf6facb0d7d76583802309253e7d13ba5148997","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":6,"files":["jc/parsers/dir.py"]},"message":"remove magic command capability since dir is a shell builtin"},{"commit":"965717886e4ebaa6a4a494f189d9fdd01e33eb21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add exceptions module info"},{"commit":"e9bfc3dd29f914fd91e937f06d7f59c0f91b8449","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["CHANGELOG"]},"message":"add time format, dig compatibility, windows colors fix"},{"commit":"f46b33eacf070b4dc72c8d8a66aae49abd149e5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/utils.py","tests/test_utils.py"]},"message":"add windows time format"},{"commit":"f475fe44df2fb2661c5bce4d1e602a4bba7e87c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"]},"message":"add new time format for systeminfo"},{"commit":"5fdbe2962d84dad89de23f103d97b76b90450206","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dig.py"]},"message":"make dig compatible with all platforms"},{"commit":"ab291b9eef6ed5c8ab59b5652f676178941d5ce5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"only force enable colors when running on windows"},{"commit":"fd411fd77273cb7cf872c03ed6a258ccdee4d261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"]},"message":"attempt to get colors working on windows"},{"commit":"b1e95a60a2461dc401ffc299ef6338b65ef12691","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/cli.py"]},"message":"remove unnecessary comment"},{"commit":"bb1439f0d53e87f636fba05fbd30c3c79fb16002","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["jc/parsers/uname.py"]},"message":"use ParseError exception from jc.exceptions module"},{"commit":"ba963d98a0a2b3a0dfca6b211096d802253da5fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/exceptions.py"]},"message":"add exceptions module including ParseError"},{"commit":"83440ccb55d0db15b112b8b7d7352493ff516112","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"error message capitalization"},{"commit":"796f61bfa417afdc6ab48fddbb5502cd0659b840","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":3,"files":["jc/cli.py"]},"message":"handle case where the user pipes data and uses magic syntax simultaneously"},{"commit":"070cac4ae12282458a1e1fc8618ebc473d23cacf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/cli.py"]},"message":"remove commented line"},{"commit":"3ed84f9f42e4e883ddaac28ab49d675600b49424","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/cli.py"]},"message":"reorganize main function. remove pass condition."},{"commit":"a205afb6f355edbb4b98200a980b9601ed0f0658","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"set run_command_str if run_command is set"},{"commit":"a6d983dd8f3871cbc2391c313340167829a575d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"move run_command_str variable"},{"commit":"b6c8d6d01d740827273265dbb0cfbaf7875ac7f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":45,"deletions":17,"files":["jc/cli.py"]},"message":"add exception handling for filenotfound or other subprocess.popen and json.dumps exceptions"},{"commit":"b5a5d5b133f1c0df8023776e59697b7579f8c18a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"set parser_name for magic syntax use"},{"commit":"da528e7814b0cf25a359c3556d0e286e7bf004b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"]},"message":"move separators to a variable"},{"commit":"4acebf4f621ac564f82e3a97e6810fbb08a9dbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/cli.py"]},"message":"move variables"},{"commit":"4d40808d2b70b7543eadcfd2d35c16ebe91f2f9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/cli.py"]},"message":"update comments"},{"commit":"c543f00bd3c737f73144bb2980d12793042459b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["jc/cli.py"]},"message":"simplify piped_output function"},{"commit":"947cf41dfab5811c0e76e371231c59a2d6372752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add exit code info"},{"commit":"8d8c58742e5106c3387a627cd1b1323a76cc9623","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":21,"deletions":15,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template","templates/readme_template"]},"message":"formatting"},{"commit":"995ecc9bfb0425b0ee9e4250395b0200b46c1e89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":15,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template"]},"message":"add exit codes section"},{"commit":"21a15225ebff645439b12d6249dc3e28d7bc09ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":18,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add exit codes section"},{"commit":"48921d4584068fadb0f776ed7e81c21d89172e2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"]},"message":"ensure exit code never exceeds 255"},{"commit":"342db45edc94ab1c3b3ae70e7cf4ca4076e2c7eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":10,"files":["jc/cli.py"]},"message":"fix combined exit codes"},{"commit":"5f88ecf8443bc6e9a7cda5bc60858f37cc09f4f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/cli.py"]},"message":"add comments to magic_parser return"},{"commit":"a56aebfe7024914d2c602278964b99d1443de335","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/cli.py"]},"message":"remove side-effect comment since it is no longer relevant"},{"commit":"422bb744a82472546d62c72ba05eaa1d18d5068a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]},"message":"update man pages"},{"commit":"c3b814a15f571ac84a8ce0719d7fd88acf814caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":4,"files":["jc/cli.py"]},"message":"move imports to the top"},{"commit":"e4574047a0ef6fcd4a47142421a1d05795c7925a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":21,"files":["tests/test_cli.py"]},"message":"update tests for magic_parser function"},{"commit":"0d7d7951f82627d1fb1e20d1398bd7f88c5ce1be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/cli.py"]},"message":"don't reset sys.argv anymore. check for 'valid_command' instead"},{"commit":"da904e4770a20ae85fc67476ae4a529564d0a3ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"remove final \\n from stderr string when printing"},{"commit":"19b540041add64fe6650c3634ec869421ffbc769","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":82,"deletions":51,"files":["jc/cli.py"]},"message":"proof of concept for passing command exit codes when using magic syntax. Needs more testing"},{"commit":"f2ffb93eeaf4c8b5aa93f3e8808bdc044582e8a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":10,"files":["tests/test_ping.py"]},"message":"formatting"},{"commit":"c0c0e05642e0f473cde34178d815978fff8fe1ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add dig `+noall +answer` support"},{"commit":"966978f17e40a338f982628825f30a19d4b84e4c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":72,"deletions":0,"files":[".../centos-7.7/ping6-ip-O-p-unparsable.json",".../centos-7.7/ping6-ip-O-p-unparsable.out",".../fixtures/osx-10.14.6/ping6-ip-unparsable.json","tests/fixtures/osx-10.14.6/ping6-ip-unparsable.out","tests/test_ping.py"]},"message":"add more unparsable line ping tests"},{"commit":"8ab08a5231e082940a62fcde4be218b7ba94be31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"doc update"},{"commit":"48e534fa03b92b2583c5c6269c76651f3aa420cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":17,"deletions":2,"files":["tests/fixtures/osx-10.14.6/dig-noall-answer.json","tests/fixtures/osx-10.14.6/dig-noall-answer.out","tests/test_dig.py"]},"message":"add +noall +answer test"},{"commit":"61851c1bd02aa82d5d82e68595e45630ead13d34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":85,"deletions":3,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"add support for +noall +answer"},{"commit":"3c51b2d83d301b4072bbb12fdba4f60b900573da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":40,"deletions":0,"files":[".../centos-7.7/ping-ip-O-unparsedlines.json",".../centos-7.7/ping-ip-O-unparsedlines.out","tests/test_ping.py"]},"message":"add tests for unparsable lines on linux"},{"commit":"ee3a28528e152c61f05bdf71f264fe38274b4190","merge":"fe1f101 916bcda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"916bcdae3881fc9c9f9a91c8c901a714cff3e1da","merge":"fb14f54 efb1d3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #136 from kellyjonbrazil/master"},{"commit":"efb1d3e6b2db920423511a9dcf4c5e5fd9d6af43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"]},"message":"add blog title and minor formatting"},{"commit":"4e6ae66bacc014e49c4a9229d10dcc8e95de436c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"formatting"},{"commit":"5ee88e7b679bc163a1916d560be6ff29f51699e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["README.md"]},"message":"add use cases section"},{"commit":"c3b68903cbd898f80438af342195eec7575aafd3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["templates/readme_template"]},"message":"add use cases section"},{"commit":"fe1f1013a74bdf6b4284f11dd59db8ea17e5e5d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["templates/readme_template"]},"message":"add use cases section"},{"commit":"fb14f5439f00d5eaf08651c552189fd4be7358d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":52,"deletions":3,"files":["jc/parsers/ping.py",".../osx-10.14.6/ping-ip-unknown-errors.json",".../osx-10.14.6/ping-ip-unknown-errors.out","tests/test_ping.py"]},"message":"fix and tests for unknown or unparsable errors"},{"commit":"5ca0fc364eb22d583bee5633cdd7183c1d70bb6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/parsers/ping.md"]},"message":"add unparsed_line to docs"},{"commit":"a1fe7037e5267ec4aced719eff3715085eb35bca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["jc/parsers/ping.py"]},"message":"add unparsed_line field if line cannot be parsed"},{"commit":"c2af7d113ed8e8cf9af985c969cf29858a3c26a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["CHANGELOG","docs/parsers/ping.md"]},"message":"add ping updates"},{"commit":"ff034e401d5c33efbc3c4bc2f0e386d81eaae7fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":59,"deletions":43,"files":["jc/parsers/ping.py"]},"message":"use try/except to make parser more resilient against unknown error types"},{"commit":"5abe095beb4b668e5f55fe8c9588677547e4c2a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":3,"files":["docs/parsers/ping.md"]},"message":"update ping docs"},{"commit":"33de5f01e638953c83bb0960dc3550ca4547849b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["jc/__init__.py","setup.py"]},"message":"version bump"},{"commit":"8ce155d843806be4ad23491b4401e4eda02e2a1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":86,"deletions":23,"files":["CHANGELOG","jc/parsers/ping.py",".../fixtures/osx-10.14.6/ping-ip-unreachable.json","tests/fixtures/osx-10.14.6/ping-ip-unreachable.out","tests/test_ping.py"]},"message":"add support for error replies in v4 ping on osx and bsd"},{"commit":"b921d5ec9583c8f8e992613ae2eaf62165722054","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":105,"deletions":6,"files":["jc/parsers/ping.py"]},"message":"initial support for error replies in bsd/osx"},{"commit":"e21542aaa2aa5f2f287ddc227df41ae47d761332","merge":"d24f9a8 6150aae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #135 from kellyjonbrazil/dev"},{"commit":"6150aae0aeabafba26d9f119406b0660d9221cb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"clarify packaged binaries"},{"commit":"f27b35f37104ad2012c3bddde0bd94941af06894","merge":"bd428a9 d24f9a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #131 from kellyjonbrazil/master"},{"commit":"d24f9a885d3954035a98a488671486408f509dca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["CONTRIBUTING.md","README.md","templates/readme_template"]},"message":"fix contributing link"},{"commit":"48dd82c8d1b756c4e08d49b8234b8060080dc035","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"trigger page build on github pages"},{"commit":"e57167ad1f240de6ec5fc86c51cfb780535cd783","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"empty commit"},{"commit":"ada91376426ff359c495fb31081404a2cce72b5f","merge":"0c209db bd428a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #130 from kellyjonbrazil/dev"},{"commit":"bd428a9fd75327710dce96f3c95f74ab9d1beaad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"fix link"},{"commit":"934941332f91d9e2cc4e691b154bb5427166ed30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","templates/readme_template"]},"message":"minor link updates"},{"commit":"0c209dbd108638f89a43801126a332379be9ae8b","merge":"92e2252 56e041a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #129 from kellyjonbrazil/dev"},{"commit":"56e041aa260b2daf2f5662fae98645a93137adb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"]},"message":"add Practical JSON at the Command Line blog link"},{"commit":"cf9d48582e4e5df6c8498b916a2f9cf036869f3d","merge":"35464bb 92e2252","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #128 from kellyjonbrazil/master"},{"commit":"92e2252bee00482bb0eeae3074b107d4c8553e4c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"fix typo"},{"commit":"fd7861db11e5aaa17c4e7bbce942c0c096116e30","merge":"fcc7e52 35464bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #127 from kellyjonbrazil/dev"},{"commit":"35464bbbfb6b424ef3ee1c855557ada1bf3769fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"date update"},{"commit":"db8ddd7f0e0c2a8bd3e545619e81d3d3972a4d7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":11,"deletions":17,"files":["jc/man/jc.1.gz","jc/parsers/ufw.py","man/jc.1.gz","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json"]},"message":"fix for scenarios where the default port range didn't always display, or overrode existing port ranges."},{"commit":"72207c54ee5734e3d2d3d1a063c8daf1edaa8815","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":102,"deletions":94,"files":["docs/parsers/ufw_appinfo.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"update ufw app info docs to support multiple apps (ufw app info all)"},{"commit":"a683f68003ea64dd5e2c4f06b53a1561ad774f12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":285,"deletions":202,"files":["EXAMPLES.md","jc/parsers/ufw_appinfo.py","tests/fixtures/generic/ufw-appinfo-msn.json","tests/fixtures/generic/ufw-appinfo-test.json","tests/fixtures/generic/ufw-appinfo-test2.json","tests/fixtures/generic/ufw-appinfo-test3.json","tests/fixtures/ubuntu-18.04/ufw-appinfo-all.json","tests/fixtures/ubuntu-18.04/ufw-appinfo-all.out","tests/test_ufw_appinfo.py"]},"message":"change schema to a list of dictionaries to support `ufw app info all` use case"},{"commit":"8d2d3db3fa969456342181a226bf54a3f1613542","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":0,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"]},"message":"formatting"},{"commit":"eca785450d1c72687817d09259fa7cd33376fafc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":34,"deletions":13,"files":["CHANGELOG","README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"]},"message":"add caveats to readme and manpage"},{"commit":"5b40a97ce417687b4e37f320b8a3f07dd7fd169c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":13,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template"]},"message":"add caveats to man page"},{"commit":"66cb4e9bde81b9290c1addaf851de5d80a1b0702","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":216,"deletions":234,"files":["EXAMPLES.md","docs/parsers/ufw.md","jc/man/jc.1.gz","jc/parsers/ufw.py","man/jc.1.gz"]},"message":"update ufw parser docs"},{"commit":"d1f33645caccdb3a55576081c4d355f997ac033c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":26,"deletions":10,"files":["tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw-numbered2.json","tests/fixtures/generic/ufw.json","tests/fixtures/ubuntu-18.04/ufw-numbered.json","tests/fixtures/ubuntu-18.04/ufw-numbered.out","tests/fixtures/ubuntu-18.04/ufw-verbose.json","tests/fixtures/ubuntu-18.04/ufw-verbose.out"]},"message":"update ufw tests"},{"commit":"5eff65c326675a449afd05a2af0a6c9bcf7b5e23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":85,"deletions":268,"files":["jc/parsers/ufw.py"]},"message":"update schema to support port lists and port range lists. Also support other transports than tcp and udp"},{"commit":"929c38715d87bf9dd689507d319c22b90871ae1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"formatting"},{"commit":"8c91a7b7601a967cd9d8096433ffd4ad62b65ceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CONTRIBUTING.md"]},"message":"formatting"},{"commit":"14289ecd6c022ad204444dff5b5e48f6024a5d0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"more timezone info"},{"commit":"b833c44783eb32f2fad24ca205b5b7eab854750f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add ufw-appinfo parser"},{"commit":"e23aa818eaa6d1a389ddef7dd2ad8f62b9f6ff25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"add tests section and timezone info"},{"commit":"473d919c1350a8dc34d233033a5a7d12c928e42d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":32,"deletions":0,"files":["runtests.sh","tests/fixtures/generic/ufw-numbered2.json","tests/fixtures/generic/ufw-numbered2.out","tests/test_ufw.py"]},"message":"add another ufw test sample"},{"commit":"9f925d6ac989a4f21a8c00c84fcf97dfb141e8c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc update"},{"commit":"f6ca32b3a31f314fa0b31d9e8b5494491b928f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/ufw.md","jc/parsers/ufw.py"]},"message":"update ufw docs with a note on lists of ports"},{"commit":"4cbe84c3d6ac8a3b594feb525460f2a68f5d62b2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":110,"deletions":0,"files":["tests/fixtures/generic/ufw-appinfo-msn.json","tests/fixtures/generic/ufw-appinfo-msn.out","tests/fixtures/generic/ufw-appinfo-test.json","tests/fixtures/generic/ufw-appinfo-test.out","tests/fixtures/generic/ufw-appinfo-test2.json","tests/fixtures/generic/ufw-appinfo-test2.out","tests/fixtures/generic/ufw-appinfo-test3.json","tests/fixtures/generic/ufw-appinfo-test3.out","tests/test_ufw_appinfo.py"]},"message":"add ufw-appinfo tests"},{"commit":"ffac5bf9d381305daa86e546f8570be092e5ff34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":12,"deletions":12,"files":["docs/parsers/ufw.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc update"},{"commit":"9aa424f9f8c7e4e0dc29e2c58dac481098beba7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["EXAMPLES.md"]},"message":"fix ufw example"},{"commit":"0a8495c68e427e39bbda957dd933fa2a461092e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":15,"files":["jc/parsers/ufw.py"]},"message":"update docs"},{"commit":"6aea066cf024f92adf4b94eebc7d51430c22332c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/ufw_appinfo.py"]},"message":"make normalized list appear only when data exists. set magic commands"},{"commit":"ff3c2d809ec3ea6e556c302909a228ee670578c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":176,"deletions":25,"files":["EXAMPLES.md","README.md","docs/parsers/ufw_appinfo.md","jc/man/jc.1.gz","jc/parsers/ufw_appinfo.py","man/jc.1.gz"]},"message":"add ufw-appinfo to docs"},{"commit":"145059fc8946b7026184139baea143c2869bc4e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":8,"files":["jc/parsers/ufw_appinfo.py"]},"message":"clean up output if sections are blank"},{"commit":"20e5c19de448c1b979497817c887d8d2d6487839","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/ufw_appinfo.py"]},"message":"fix key error if tcp or udp don't exist"},{"commit":"4c98fd4b877c54e1cf7d285a29e178321be12f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":101,"deletions":1,"files":["docs/parsers/ufw_appinfo.md","jc/parsers/ufw_appinfo.py"]},"message":"doc update"},{"commit":"125e54213e8d4dcfe2e3271456af80b3f79c0544","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":105,"deletions":48,"files":["jc/parsers/ufw_appinfo.py"]},"message":"update schema and add normalized fields"},{"commit":"0152e0665f87833250561d743144af35416992f8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":215,"deletions":0,"files":["jc/cli.py","jc/parsers/ufw_appinfo.py"]},"message":"initial working ufw-appinfo parser"},{"commit":"0679bcbc560ea3575555d8546afdd4e2474d05d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":31,"deletions":5,"files":["tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json","tests/fixtures/ubuntu-18.04/ufw-numbered.json","tests/fixtures/ubuntu-18.04/ufw-verbose.json","tests/test_ufw.py"]},"message":"fix ufw tests"},{"commit":"5500648aa0886ea5089856e5b33d7c8ebd78d5b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":46,"deletions":46,"files":["EXAMPLES.md","docs/parsers/ufw.md","jc/parsers/ufw.py"]},"message":"fix ufw docs for int conversions and service behavior"},{"commit":"bb50caad4dfaefa309e747fd05b650186c5a80f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":31,"deletions":4,"files":["jc/parsers/ufw.py","tests/fixtures/ubuntu-18.04/ufw-numbered.out","tests/fixtures/ubuntu-18.04/ufw-verbose.out"]},"message":"fix prefix int conversions. don't reset _transport if service is really a list of ports"},{"commit":"7eef5d94d591a3f70f6638b1b30f952a3bf35f9d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":0,"files":["EXAMPLES.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"ufw doc update"},{"commit":"74f623f8d607c050db8f62ea4996c4e6aae43268","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":43,"deletions":11,"files":["docs/parsers/ufw.md","jc/parsers/ufw.py","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json","tests/fixtures/generic/ufw.out"]},"message":"add support for rule comments and LIMIT and REJECT actions"},{"commit":"f638aca092475bbae14fed765e90435c093fcb8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add deb package name fix"},{"commit":"da35eaf80ad4f11e7482fc4734db4b2265e50548","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["docs/parsers/ufw.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"formatting"},{"commit":"ade0e8e8fc18ff9a0dd406206a85238f1f5a739d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":107,"deletions":0,"files":["tests/fixtures/generic/ufw-inactive.json","tests/fixtures/generic/ufw-inactive.out","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw-numbered.out","tests/fixtures/generic/ufw.json","tests/fixtures/generic/ufw.out","tests/test_ufw.py"]},"message":"add ufw tests"},{"commit":"90076090f05a1f03e2fbff307418ee18d7d046ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":5,"files":["jc/parsers/ufw.py"]},"message":"fix int conversions if 'rules' key does not exist"},{"commit":"23635def8b654097178f73ed1b57fc50965142d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":306,"deletions":4,"files":["README.md","docs/parsers/ping.md","docs/parsers/ufw.md","docs/utils.md","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"add ufw to docs"},{"commit":"4eeec087bde98f90ab8425473d1fbeee6834852e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":115,"deletions":0,"files":["EXAMPLES.md"]},"message":"add ufw example"},{"commit":"733196103897a1d84d242324ddcf96e783320329","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/ufw.py"]},"message":"update docs with new examples that have `to_service` always existing."},{"commit":"e4acb3d5b70a7d75741ef3e35cd6750d1362a80f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/ufw.py"]},"message":"always make to/from_service None if ports are assigned"},{"commit":"c60549a9947d5684bbfa58223bfbcfc40a3ed479","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":29,"deletions":29,"files":["jc/parsers/ufw.py"]},"message":"change field name from to/from_subnet to to/from_ip_prefix"},{"commit":"d46fc8bbfa15a80a1af6c64f70230f858c215223","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/parsers/ufw.py"]},"message":"set to/from_transport to None if to/from_service is set"},{"commit":"b133d1f90d49362594508d8c475663754f0e7675","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/ufw.py"]},"message":"strip interface value"},{"commit":"5be615a97e7c145c8351764234ac591028560c34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":219,"deletions":9,"files":["jc/parsers/ufw.py"]},"message":"add examples for docs"},{"commit":"ea1d820f96321ddf4084b54ee2fdf397295beb21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/parsers/ufw.py"]},"message":"convert integer fields"},{"commit":"47e262cf7200b02ff0af97a70ffa6bec286c8f39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":59,"deletions":14,"files":["jc/parsers/ufw.py"]},"message":"clean up fields"},{"commit":"eec673be9092e382694aa02682564510ce4e7f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":88,"deletions":3,"files":["jc/parsers/ufw.py"]},"message":"working raw parser"},{"commit":"9a0fb2a7c87e6fde0cc0d84fa8a1f131e28ea732","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":157,"deletions":0,"files":["jc/parsers/ufw.py"]},"message":"parse major sections"},{"commit":"b5145d6c14d7a51e7cfdebe126c9689dc90f7b27","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":8,"deletions":4,"files":["CHANGELOG","jc/__init__.py","jc/cli.py","setup.py"]},"message":"version bump to v1.15.3"},{"commit":"9747ca414dfb8218389c7b2199a080edabc2a184","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/utils.py"]},"message":"minor optimization to convert_to_int(). No longer runs through convert_to_float(), but uses standard float() function."},{"commit":"312d465b61a15592cc70d3734ad747b9a2be10ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"]},"message":"update link"},{"commit":"7dcf87d24ad40eba6ba98de2b4b2bf177a76cd71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping.py"]},"message":"formatting"},{"commit":"cf3cfd16a9de05f30303b5952fbe609cde842d2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_utils.py"]},"message":"rename tests"},{"commit":"fcc7e5294973d1a18943fa2ce2e836b0fe757d95","merge":"6c83846 3ab9d48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #123 from kellyjonbrazil/dev"},{"commit":"3ab9d480149a692510ab9e0ac8e745b674683e3d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CHANGELOG"]},"message":"update changelog"},{"commit":"7eddf41c5f6310264359cd6d78bdfa4b65af7d06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":96,"deletions":9,"files":["jc/man/jc.1.gz","jc/utils.py","man/jc.1.gz","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/df.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/free-h.json","tests/test_utils.py"]},"message":"dont round up int conversions and fix tests"},{"commit":"27a196c93862bd737603cfe402b35529eb412954","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"doc update"},{"commit":"e4324f05fb6f89c34fa1567e70d8636457623edb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":14,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"fix indentation in doc"},{"commit":"d36b332bd78b5bf5979cdc59b31da08d8e4104d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":53,"insertions":196,"deletions":274,"files":["docs/parsers/systemctl_lj.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/wc.md","docs/parsers/who.md","docs/utils.md","jc/parsers/acpi.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/hash.py","jc/parsers/hciconfig.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl_lj.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/utils.py"]},"message":"use jc.utils for conversions"},{"commit":"1f034826f69c461495f7a302cc8fe35e3052e72f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":42,"insertions":94,"deletions":185,"files":["docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","tests/fixtures/centos-7.7/ls-alh.json","tests/fixtures/centos-7.7/lsof-sudo.json","tests/fixtures/centos-7.7/lsof.json","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/ubuntu-18.04/ls-alh.json","tests/fixtures/ubuntu-18.04/lsof-sudo.json","tests/fixtures/ubuntu-18.04/lsof.json"]},"message":"use jc.utils for conversions"},{"commit":"246c707c98d3128b4e38f5c4b23a1e0ceedc0b0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":46,"insertions":190,"deletions":196,"files":["CHANGELOG","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/df.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/hash.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/utils.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/hash.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/utils.py","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/osx-10.11.6/df-h.json","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/free-h.json"]},"message":"use jc.utils conversions"},{"commit":"b5d8968144e76090870f8563dc1bce910fba668c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":0,"files":["jc/utils.py"]},"message":"add convert_to_int function"},{"commit":"f7b9fbefdde6973077573fec02342eb9946789c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add query_size info for dig"},{"commit":"b1fc4533833ca25f59869bfec8ac114bf49c7847","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"]},"message":"fix _IfconfigParser name"},{"commit":"7581c8d0f4262fc6a05240bb21ffe533b153f6e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":45,"deletions":32,"files":["docs/parsers/dig.md","jc/parsers/dig.py","tests/fixtures/generic/dig-edns3.json"]},"message":"add query_size field. handle user-specified dig output better - especially when querying dnssec"},{"commit":"32bf8ad6f4fff83fdfd83d66c1ba8f1af5a65a90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":52,"deletions":24,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"update dig docs"},{"commit":"b083bcc10fa1105fc09ce8d2c3297aa5575c9d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]},"message":"update man page"},{"commit":"4f6fdd120d23468270c1d7111e4ef71b87759a1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":134,"deletions":100,"files":["docs/readme.md","jc/__init__.py"]},"message":"use dig as example"},{"commit":"eb0038be2490053d32803d30e1c3d4d34509d130","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":40,"deletions":19,"files":["EXAMPLES.md"]},"message":"update dig examples"},{"commit":"7ecdf819fa37c38ae6159ad8e7bc973ee4f34559","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":84,"files":["README.md","templates/readme_template"]},"message":"remove dig example from readme,"},{"commit":"c6aa4d083550d25bcb621cad524047cfd6a08217","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":252,"deletions":317,"files":["README.md","docs/parsers/dig.md","jc/man/jc.1.gz","jc/parsers/dig.py","man/jc.1.gz","templates/readme_template"]},"message":"update docs with new dig parser examples"},{"commit":"7c584b89a6e6b924d53d50103b97f0c2405c33b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":15,"insertions":352,"deletions":52,"files":["jc/parsers/dig.py","tests/fixtures/generic/dig-additional.json","tests/fixtures/generic/dig-additional.out","tests/fixtures/generic/dig-additional2.json","tests/fixtures/generic/dig-additional2.out","tests/fixtures/generic/dig-additional3.json","tests/fixtures/generic/dig-additional3.out","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/generic/dig-edns.json","tests/fixtures/generic/dig-edns.out","tests/fixtures/generic/dig-edns2.json","tests/fixtures/generic/dig-edns2.out","tests/fixtures/generic/dig-edns3.json","tests/fixtures/generic/dig-edns3.out","tests/test_dig.py"]},"message":"add additional section"},{"commit":"c166c0bfdafa922f57f021fa4d16e467fca02d58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":14,"insertions":55,"deletions":21,"files":["jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json"]},"message":"add opt_pseudosection section to output and fix existing tests"},{"commit":"a8dd3f7802bfe8fd3ffbedf89af45ddc580ee78d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":54,"deletions":281,"files":["CHANGELOG","jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-axfr.json"]},"message":"working dig axfr fixes"},{"commit":"3b0e2f03f3b11398ff57b1daed542faaf0b80a62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":24,"deletions":23,"files":["jc/cli.py","templates/manpage_template"]},"message":"clean up examples"},{"commit":"8390ae48c88ab1c7d5acbf40c0e60606953817bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":8,"deletions":8,"files":["jc/parsers/dig.py","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json"]},"message":"fix server entry when IPv6 address is in value (maxsplit on colons)"},{"commit":"2db82c0a7e19d596c876ede8a8ff106aaa733ee5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":66,"deletions":0,"files":["EXAMPLES.md"]},"message":"add systeminfo example"},{"commit":"61479540756704f10853233300ceae8f954a8a95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":0,"files":["tests/test_systeminfo.py","tests/test_utils.py"]},"message":"update tests"},{"commit":"691df271fcfe057ae4b75ad40869e23deb37b886","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":1,"files":["docs/parsers/systeminfo.md","jc/man/jc.1.gz","jc/parsers/systeminfo.py","man/jc.1.gz"]},"message":"add info docstring"},{"commit":"89f52b95f7055da9d7b5fa8dce0923d4c3435bd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":467,"deletions":821,"files":["README.md","docs/parsers/systeminfo.md","jc/man/jc.1.gz","jc/parsers/systeminfo.py","jc/utils.py","man/jc.1.gz",".../windows/windows-10/systeminfo-hyperv-utc.json",".../windows/windows-10/systeminfo-hyperv-utc.out",".../windows/windows-10/systeminfo-hyperv.json","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-10/systeminfo.out",".../windows/windows-2012r2/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"]},"message":"update systeminfo parser with updated timestamps, normalized blank fields, and new doc style"},{"commit":"146acc1bf69c402e38c2f1bc842b84e6cff7e2cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":29,"files":["jc/parsers/systeminfo.py"]},"message":"rename functions to make them private"},{"commit":"c4a345f59aa090336b4e80f181493cd5bc2c17c5","merge":"dfd2703 325fab2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #106 from jon-rd/j/systeminfo"},{"commit":"dfd2703f75b907ba865fff266d0742d8931bc2d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"]},"message":"bump dev to v1.15.2"},{"commit":"325fab2de7b8a4bfc452ab8d3cf333d47fdf4989","author":"Jon Smith","author_email":"jon@rebelliondefense.com","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/systeminfo.py"]},"message":"update documentation for parsed structures"},{"commit":"f3d00cf38ad15aeda7eaa5644ebc30ff33de6a29","author":"Jon Smith","author_email":"jon@rebelliondefense.com","stats":{"files_changed":5,"insertions":56,"deletions":48,"files":["jc/parsers/systeminfo.py",".../windows/windows-10/systeminfo-hyperv.json","tests/fixtures/windows/windows-10/systeminfo.json",".../windows/windows-2012r2/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"]},"message":"append mb to memory key names; adjust expected timestamps to utc tz"},{"commit":"14838f7f5d780896f1318cac2c3f34d249a158d4","author":"Jon Smith","author_email":"jon@rebelliondefense.com","stats":{"files_changed":9,"insertions":956,"deletions":116,"files":["jc/parsers/systeminfo.py","jc/utils.py",".../windows/windows-10/systeminfo-hyperv.json",".../windows/windows-10/systeminfo-hyperv.out","tests/fixtures/windows/windows-10/systeminfo.json",".../windows/windows-2012r2/systeminfo.json",".../fixtures/windows/windows-2012r2/systeminfo.out","tests/fixtures/windows/windows-7/systeminfo.json","tests/test_systeminfo.py"]},"message":"update schema with nic, hyperv, and process changes"},{"commit":"af74047b81776c2ea32d82f9145ab60c346c8203","author":"Jon Smith","author_email":"jon@rebelliondefense.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/systeminfo.py"]},"message":"update schema based on processor/hotfix changes"},{"commit":"660c59129cf4ba7889fb3c6fbafd9dd9b479ccd9","author":"Jon Smith","author_email":"jon@rebelliondefense.com","stats":{"files_changed":3,"insertions":41,"deletions":9,"files":["jc/parsers/systeminfo.py","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"]},"message":"Add parsing of processors/hotfixs"},{"commit":"89a88e186ed71d84ea802cf08ab756b49cee3225","author":"Jon Smith","author_email":"jon@rebelliondefense.com","stats":{"files_changed":1,"insertions":152,"deletions":0,"files":["docs/parsers/systeminfo.md"]},"message":"Add systeminfo.md file"},{"commit":"f861cf95b96a224a0a11f2cdc3261b94c02415ef","author":"Jon Smith","author_email":"jon@rebelliondefense.com","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["jc/cli.py","jc/parsers/systeminfo.py"]},"message":"Change to v0.5; add parser to cli.py; add to docgen"},{"commit":"ee8f06cbdb03f8254bb6a3c56fa5b8a64ff9ca77","author":"Jon Smith","author_email":"jon@rebelliondefense.com","stats":{"files_changed":6,"insertions":688,"deletions":0,"files":["jc/parsers/systeminfo.py","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-10/systeminfo.out","tests/fixtures/windows/windows-7/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.out","tests/test_systeminfo.py"]},"message":"Add windows systeminfo command parser"},{"commit":"a2e8b3c7b681605916b8950d035ee19889a125a5","merge":"e0681ee 6c83846","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #121 from kellyjonbrazil/master"},{"commit":"6c838460752c7131f75cdab2da07266fee492060","merge":"10292f7 e0681ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #120 from kellyjonbrazil/dev"},{"commit":"e0681eebb9881dc0ffddb478224455f434919104","merge":"e5732d1 10292f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'master' into dev"},{"commit":"e5732d1cea1c882f6486cf288e45edb993989ea0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"update changelog"},{"commit":"6e7ae3cd3f003fe9e1e587b7f8ebd16ba0895014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/timedatectl.md","jc/man/jc.1.gz","jc/parsers/timedatectl.py","man/jc.1.gz"]},"message":"formatting of timedatectl docs"},{"commit":"f95632d1aaee545ae0ce081ca0617be135c09220","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":83,"deletions":62,"files":["EXAMPLES.md","docs/parsers/rpm_qi.md","jc/man/jc.1.gz","jc/parsers/rpm_qi.py","man/jc.1.gz","tests/fixtures/centos-7.7/rpm-qai.json","tests/fixtures/centos-7.7/rpm-qi-package.json"]},"message":"add install_date calculated fields"},{"commit":"2f8b7b26e59bcd745fa1fcadb373455c7d404286","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":2,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"update docs for v1.15.1"},{"commit":"10292f7502e4cb1c53b53ed39fed9288044c2ef8","merge":"37a3565 aef5470","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #119 from kellyjonbrazil/dpkg_l-fix"},{"commit":"aef54705f5267c633e0778e8dce0065978083139","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["docs/parsers/dpkg_l.md"]},"message":"add _l to module name"},{"commit":"bba5980fa53767716bc35d8c904e7a2341346eeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"]},"message":"man page update"},{"commit":"977425abfb05a63ee372df36124ac6ba6a5a0aaa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"]},"message":"add _l to package name in docs"},{"commit":"37a3565a1bbd3d01663602673fed651509e69d8c","merge":"bdcdaee 13deb8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #118 from kellyjonbrazil/rpm-qi-doc-fix"},{"commit":"13deb8bfb6e77aaf86942f0be87b59d06ee2a97c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":194,"files":["docs/parsers/rpm_qai.md","docs/parsers/rpm_qi.md"]},"message":"fix rpm-qi docs"},{"commit":"a3ed9d075aff41599452c3094f7d057c25fc8f89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":191,"files":["docs/parsers/rpm_qai.md"]},"message":"remove old parser doc"},{"commit":"fb0ced549e021916dee7da39859e8f85c8216e16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":6,"deletions":6,"files":["docs/parsers/rpm_qi.md","jc/man/jc.1.gz","jc/parsers/rpm_qi.py","man/jc.1.gz"]},"message":"fix rpm-qi docs (used underscore instead of dash in name)"},{"commit":"7eb31bc7d290fcd09e53524ebbb11e59110df6a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":39,"deletions":48,"files":["docs/parsers/airport_s.md","jc/man/jc.1.gz","jc/parsers/airport_s.py","man/jc.1.gz"]},"message":"update airport_s docs"},{"commit":"6a06a3914273853742ac57433398968ccf7d9897","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["docgen.sh"]},"message":"use herestring instead of echo -e into jq"},{"commit":"bdcdaee6c5299ea0750512e0943c7f58f56f2e35","merge":"5d8f836 605353f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #117 from kellyjonbrazil/doc_update"},{"commit":"605353fdce3b8b5986d20a35d05f7210a6df0730","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":70,"insertions":1710,"deletions":2656,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md"]},"message":"add new docs"},{"commit":"490c9e17699e8e4f70dcc1612e1a808f86e24b0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["tests/test_cli.py"]},"message":"add more cli tests for magic command"},{"commit":"6ebebb659dc93daeaa869752ad135f6e1d2cb1ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"]},"message":"update changelog"},{"commit":"0e70c5ee12e96f04a89de05153a2da9cd39f98ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"update documentation link"},{"commit":"cd531acf6045660e022c932f62a01d4084433ad4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["docgen.sh"]},"message":"clean up comment"},{"commit":"908ac1f61c5cc011d05d550f933940dfed4431f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":143,"insertions":0,"deletions":690,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/man/jc.1.gz","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","man/jc.1.gz"]},"message":"update docs - remove compatibility section since it is now automatically generated from info()"},{"commit":"f5c7e7e4046bc57b4fcad99390e31b121a7106ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":70,"insertions":350,"deletions":0,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md"]},"message":"add updated docs with home link and parser info at the bottom"},{"commit":"001c700b5bd280cb1cb9e54169ae5f1b7918c257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":2,"deletions":1,"files":["docgen.sh","jc/man/jc.1.gz","man/jc.1.gz"]},"message":"add home link to the top of the md file"},{"commit":"9b41e9bef0ff099e70f37fddc8fe2c6bd8457b19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"]},"message":"Add parser information header"},{"commit":"34bd6e32dc0c0bf7dfeedaadbf04115f43e9d060","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":4,"files":["docgen.sh"]},"message":"pull each parser as a json object into a bash array and iterate on it to add supplementary information like version, author, and compatibility"},{"commit":"c5d058490beaa8f59875a8acfd7a400764768639","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":22,"deletions":13,"files":["jc/cli.py"]},"message":"move parser doc printing to its own function"},{"commit":"dd1ae6d9a7de5421830232deb42d933b9a652672","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":3,"deletions":1,"files":["MANIFEST.in","jc/man/jc.1.gz","man/jc.1.gz","mangen.py"]},"message":"add man page inside the pypi package for easier packaging in homebrew"},{"commit":"d8ea9bde823a7f5c146741150c3211737345c7dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":16,"deletions":16,"files":["docs/parsers/w.md","jc/parsers/w.py","man/jc.1.gz"]},"message":"doc update"},{"commit":"125edc9c906dc3650b6a683ed13830075acb7ab6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"bail out for -h, -a, and -v in magic()"},{"commit":"15ea43e394a9004f8ccec208b3a066c76e241866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["MANIFEST.in"]},"message":"add man file to package for easier packaging in homebrew"},{"commit":"b55b02687c00d1c50e30f30c9b9a7f36f783eb0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":19,"insertions":371,"deletions":441,"files":["CHANGELOG","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","man/jc.1.gz","setup.py"]},"message":"doc update"},{"commit":"da611f0ac6321f7f52fdbc419f8b155c74393c28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":63,"deletions":50,"files":["jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","man/jc.1.gz"]},"message":"update docs"},{"commit":"b8b8dfead4fdc4285585c44c2ebce3bdd42b2e7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":61,"insertions":1501,"deletions":1848,"files":["docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py"]},"message":"update docs"},{"commit":"4290a3cbd135cacbf63664dc30768017ebbed28d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":9,"files":["docs/parsers/ifconfig.md","jc/parsers/ifconfig.py"]},"message":"make IfconfigParser class private"},{"commit":"a5e2203cee6a7bc398cf280f57d37638eeb1d2d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":2,"deletions":1,"files":["docs/parsers/ifconfig.md","jc/parsers/ifconfig.py","man/jc.1.gz"]},"message":"update ifconfig doc"},{"commit":"e28c08b1361161cfd123b9ebc11fa1ffa87d658f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":46,"insertions":976,"deletions":1209,"files":["docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","man/jc.1.gz"]},"message":"update documentation"},{"commit":"a4b6846f63b43168085275d73940265940badf46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":467,"files":["man/jc.1","man/jc.1.gz"]},"message":"man update"},{"commit":"2bc830786114fd57619f34b936dcf6e0bed7a109","merge":"9b39917 5d8f836","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'master' into dev"},{"commit":"9b39917c798ed0310c9b82d87172cbf6d24ba111","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":17,"insertions":391,"deletions":453,"files":["README.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","jc/cli.py","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","man/jc.1","templates/manpage_template","templates/readme_template"]},"message":"update docstrings for new help functionality"},{"commit":"57c13cc0a38ad89fda8b0e362bd6487257d0a26a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":3,"files":["jc/cli.py"]},"message":"add support for parser help"},{"commit":"b7355fd30d992a1bcc90227f5a1b02be073829e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":37,"deletions":48,"files":["docs/parsers/arp.md","jc/parsers/arp.py"]},"message":"new docstring format for improved documentation"},{"commit":"93ae309e407b26820b9f05b5b331d05fc77df57f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/__init__.py","man/jc.1"]},"message":"bump version to 1.15.1"},{"commit":"5d8f8365e24a7c3a587d4e71ebba4876de08203b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":461,"files":["man/jc.1","man/jc.1.gz","mangen.py"]},"message":"gzip man page"},{"commit":"f26909eefb236e9ebf63be53cd86ae13cc3d9ea3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["docs/parsers/dir.md"]},"message":"formatting"},{"commit":"55bfbb2797ede3aefbb14ecab950b108b1895ccc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":6,"files":["EXAMPLES.md","jc/parsers/dir.py"]},"message":"formatting"},{"commit":"8970b8342a855203aef649b60dad3e49a1d7fd2a","merge":"a73fdb7 5285e69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #115 from kellyjonbrazil/master"},{"commit":"5285e699c30fdeaf56068f5a03ef1d1d33fa673c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","jc/cli.py","man/jc.1"]},"message":"fix rpm-qi parser name"},{"commit":"275f3860d5870303235b651d42650256e4db8ada","merge":"577811f a73fdb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #114 from kellyjonbrazil/dev"},{"commit":"a73fdb7478965f0f2c841ac01b2762db80ad0786","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["CHANGELOG","man/jc.1"]},"message":"update dates"},{"commit":"f2d746403a0ed764f931ae9e14d180bab107dcca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/rpm_qi.md","jc/parsers/rpm_qi.py"]},"message":"typo fix"},{"commit":"b7dbf2c49be4beb793495a0aaee7f05dbea5a3a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["jc/utils.py"]},"message":"doc formatting"},{"commit":"21f3c97788826e79b0c387f877c5adf269318e97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"]},"message":"rename rpm_qai to rpm_qi"},{"commit":"14b727cc717d04fefba1cc31b6f29b549ced986f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":73,"deletions":0,"files":["tests/fixtures/centos-7.7/rpm-qi-package.json","tests/fixtures/centos-7.7/rpm-qi-package.out","tests/test_rpm_qai.py"]},"message":"add rpm_qi tests"},{"commit":"abee226591ed4ae37351efc995017d28b27827d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":205,"deletions":14,"files":["README.md","docs/parsers/rpm_qi.md","jc/cli.py","jc/parsers/{rpm_qai.py => rpm_qi.py}","man/jc.1"]},"message":"rename rpm_qia to rpm_qi"},{"commit":"293ad39f4bcf326186dd917d8bc58d3964e5e4d6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"typo fix"},{"commit":"92443025811019f616f596abb60a2889f604c122","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":7,"deletions":6,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/rpm_qai.md","jc/parsers/rpm_qai.py"]},"message":"rpm parser doc update"},{"commit":"753cac25fb1e7e6cd2c742afa8d45ced068ea91d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":3,"files":["jc/parsers/rpm_qai.py"]},"message":"only add description if it exists"},{"commit":"0548263e898bf14f93d2fa423c0f0a9d9f2ff567","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":10468,"deletions":0,"files":["EXAMPLES.md","README.md","docs/parsers/rpm_qai.md","jc/cli.py","jc/parsers/rpm_qai.py","man/jc.1","tests/fixtures/centos-7.7/rpm-qai.json","tests/fixtures/centos-7.7/rpm-qai.out"]},"message":"add rpm -qai parser"},{"commit":"53776a9bf894988d6ef9221a62ab8b816c89560c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["man/jc.1","templates/manpage_template"]},"message":"note -a output is JSON"},{"commit":"cc7def9b76a7fa6de1e11b584676820f3acb0257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":18,"deletions":0,"files":["tests/fixtures/osx-10.14.6/finger.json","tests/fixtures/osx-10.14.6/finger.out","tests/test_finger.py"]},"message":"add OSX finger tests"},{"commit":"11a4422c25ed905f33475677bcc2f59f49c62a23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":51,"deletions":0,"files":["tests/fixtures/centos-7.7/finger.json","tests/fixtures/centos-7.7/finger.out","tests/test_finger.py"]},"message":"add centos 7.7 finger tests"},{"commit":"3a44785260514227b541530baf3e14b6c7ebe86a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/finger.py"]},"message":"del details key if details are blank"},{"commit":"e0d430c26c38db8de5a32741e05df412cffe45b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"update -r raw option info"},{"commit":"417b70020accfa4910016e9d3d12690a5488f6f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":129,"deletions":22,"files":["EXAMPLES.md","docs/parsers/finger.md","jc/parsers/finger.py","tests/fixtures/ubuntu-18.04/finger.json","tests/fixtures/ubuntu-18.04/finger.out"]},"message":"add idle time fields to finger parser"},{"commit":"7b29c464b72ef9a79bd872dab92cf65016490bcc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"date updated"},{"commit":"26d5529d86e4e459ad94226465c3697a050af0ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":7,"files":["docs/parsers/finger.md"]},"message":"remove aix support, add note for -s support. schema update"},{"commit":"852103c478321b84ffbbc0a876d5ece0c0881e1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":14,"files":["jc/parsers/finger.py"]},"message":"tweak regex to support arbitrary 'detail' data"},{"commit":"26a115421b0888e23f4348f1124e2ef7b39df4cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["CHANGELOG"]},"message":"add finger parser"},{"commit":"755b941a9aa602d95d9bc599f5c64e05f9e6216d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":35,"deletions":30,"files":["EXAMPLES.md","docs/parsers/finger.md","jc/parsers/finger.py"]},"message":"doc update"},{"commit":"fd1ca82d86649adeb84968142665e5e4fae3fa0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":263,"deletions":0,"files":["README.md","docs/parsers/finger.md","jc/cli.py","jc/parsers/finger.py","man/jc.1"]},"message":"add finger parser"},{"commit":"6fe175344fc61d4996a9ea20f6c5d429efb1fac7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"]},"message":"change examples link to github.io"},{"commit":"3590cda13a68616ee7eb8c85c5554ffb3fef036d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/last.md","jc/parsers/last.py"]},"message":"docs formatting"},{"commit":"2f1011dd85ec9b3550138ac4a4e1729fa5b4fe17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"readme update"},{"commit":"2b155261b3f6e4879b592f5bc052649ded5e3d69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"]},"message":"use new github.io links for documentation"},{"commit":"02f4d606d0a446c7cc74aedac6035ee79805950d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":69,"deletions":69,"files":["README.md","templates/readme_template"]},"message":"add documentation links to README.md"},{"commit":"577811f00b7fcd0396bb0e26a2985709bd2c65a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/_config.yml"]},"message":"Set theme jekyll-theme-cayman"},{"commit":"b4098d67a3a4a617d42c1389e0a88833c77b89b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"latest"},{"commit":"88bd7554aeb511c19e55dc3dde9c9376efb0485b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":3,"files":["docgen.sh","updatedocs.sh"]},"message":"add status messages"},{"commit":"b5ec16c5cafb78db093861cc30d9646207f2227a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":8,"files":["mangen.py","readmegen.py"]},"message":"formatting"},{"commit":"68fcb60a1460a35500180ec05a8cf5ba5706ff17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["updatedocs.sh"]},"message":"add updatedocs script"},{"commit":"e4781d60ce251f6d47f19bbe042e97f8aa9e2f18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":65,"insertions":188,"deletions":189,"files":["README.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","man/jc.1"]},"message":"update parser descriptions with backticks surrounding command names"},{"commit":"6201fb346a66ba762651624cdaf03f08e08579a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","jc/parsers/iw_scan.py"]},"message":"test backticks in description"},{"commit":"f88c8343f9dec5e0190df94a5109e6c749bda286","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","jc/parsers/iw_scan.py"]},"message":"update iw-scan description for documentation"},{"commit":"25410d33168ee7142bd8f8c739ef22a62a47eb6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":973,"deletions":70,"files":["README.md","mangen.py","readmegen.py","{man/template => templates}/manpage_template","templates/readme_template"]},"message":"create readmegen.py script. move jinja2 templates to templates folder"},{"commit":"4ff9952938d0654376efc94ca7d8a12f6df171af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["README.md"]},"message":"change OSX to macOS"},{"commit":"5e3f63a412c5b23e7515337521ebba6273b5c11f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["man/jc.1","man/template/manpage_template"]},"message":"add license and copyright info. use variables instead of hard-coded values"},{"commit":"e1f57be69efdfd7facd07df6ef0955a36c4fc18b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"]},"message":"add license info"},{"commit":"2c65d5eeccdc95d2de00ac6575a9e8d8458486bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":32,"deletions":8,"files":["man/jc.1","man/template/manpage_template"]},"message":"man page updates"},{"commit":"aa621f2f1ee043611c440683dfb63e6577d8fac4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":74,"deletions":9,"files":["CHANGELOG","man/jc.1","man/template/manpage_template"]},"message":"enhance man page"},{"commit":"ac932c6e59ad80115962d0ea91e6aaabc70c211e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/utils.md","jc/utils.py"]},"message":"update timestamp docs"},{"commit":"029f79da1647e53f97ca83ba92b1f36a131f3128","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"added info regarding updated dev scripts for automating doc generation"},{"commit":"153b2b4a7a216caae5b03f6d50d43980c13a705f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":68,"files":["docgen.sh"]},"message":"use jc to help automate the generation of its own docs"},{"commit":"709b2fe4eead06090f903718deeb06ec774fc26e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":16,"deletions":0,"files":["man/jc.1","man/template/manpage_template"]},"message":"add -h and -v options"},{"commit":"09c1fccc584e3d0582e19b520586419085ea8d04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":4,"deletions":6,"files":["man/jc.1","man/template/manpage_template","mangen.py"]},"message":"manpage updates"},{"commit":"fd254d99b782888fe7646e42a61f28aa99e7cba7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":193,"deletions":15,"files":["man/jc.1","man/template/manpage_template","mangen.py"]},"message":"add manpage generator"},{"commit":"88bd2c172217c498431e8904e74313bc27978785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"fix typo"},{"commit":"d03e2f0fc1d0310cd94702f4d3c959d71b0eb622","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":40,"deletions":0,"files":["CONTRIBUTING.md"]},"message":"add parser schema guidelines"},{"commit":"3f12a393bd37062cd1412128be495235b0c7351f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"formatting"},{"commit":"8c21284c5038bdc2e52ff4211fac747f33f52091","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["CONTRIBUTING.md"]},"message":"remove redundant license info"},{"commit":"e7d396c2157a77500017967dfc68ffaf32507c2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"]},"message":"update issues link"},{"commit":"f238fac0eb0c8e5133c6c9abf9ca709f5df7a925","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":49,"deletions":0,"files":["CHANGELOG","CONTRIBUTING.md","README.md"]},"message":"add contributing guidelines"},{"commit":"017228f80d9a65ad7715f31c539d9fca1615296f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add tested on Windows 10"},{"commit":"286c5fa9434e25434ee8f4825621f68464296469","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"]},"message":"add dir parser"},{"commit":"74cfc13abe4cd09ca5470714caeaedd24c099770","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":12,"deletions":21,"files":["tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-S.json","tests/fixtures/windows-10/dir-dirs.json","tests/fixtures/windows-10/dir-files.json","tests/fixtures/windows-10/dir-mix.json","tests/fixtures/windows-10/dir-raw.json","tests/fixtures/windows-10/dir.json","tests/test_dir.py"]},"message":"fixup dir parser tests"},{"commit":"0ee4a6c377321cf6ff67ced38e9a07a8f6313943","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":207,"deletions":460,"files":["docs/parsers/dir.md","jc/parsers/dir.py"]},"message":"update schema and add epoch naive timestamp"},{"commit":"283433578dfc3f132ef35727ce5bafb3e390896c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":46,"deletions":0,"files":["EXAMPLES.md","README.md"]},"message":"add dir parser"},{"commit":"9559c85057308e8815d4654bbe0062a5858c0b2b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":0,"files":["jc/utils.py","tests/test_utils.py"]},"message":"add windows dir format"},{"commit":"c5c020f5654038dacba542be3784a35d7333cbcc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/parsers/dir.md"]},"message":"add /S option"},{"commit":"95ec79bceb3d0c4245e36b7b16cfda6e16b01197","merge":"8f8be8a 5b60c74","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #107 from rasheed-rd/add-dir-parser"},{"commit":"8f8be8aa33f0b708ebd9a35c6b288572443d7181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"add -1 option info"},{"commit":"5b60c7445a3f8bd2ae1587aa0ffaeaf093966f9a","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","stats":{"files_changed":5,"insertions":469,"deletions":400,"files":["docs/parsers/dir.md","jc/parsers/dir.py","tests/fixtures/windows-10/dir-S.json","tests/fixtures/windows-10/dir-S.out","tests/test_dir.py"]},"message":"Add support for /S and update documentation"},{"commit":"d9dbcc8b526c8de9c6d12ac580880fd606dc68cf","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","stats":{"files_changed":15,"insertions":149,"deletions":73,"files":["docs/parsers/dir.md","jc/parsers/dir.py","tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-Q.json","tests/fixtures/windows-10/dir-Q.out","tests/fixtures/windows-10/dir-dirs.json","tests/fixtures/windows-10/dir-dirs.out","tests/fixtures/windows-10/dir-files.json","tests/fixtures/windows-10/dir-files.out","tests/fixtures/windows-10/dir-mix.json","tests/fixtures/windows-10/dir-mix.out","tests/fixtures/windows-10/dir-raw.json","tests/fixtures/windows-10/dir.json","tests/test_dir.py"]},"message":"Add parent dir to structure. Add test cases. Remove support for /Q"},{"commit":"79bc525970b38dea68b4859ac5dd32fc681e5994","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"]},"message":"add codes field to schema"},{"commit":"9dae1091ddc6141694ebfdc5ae649582cb879ccd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"]},"message":"typo fix"},{"commit":"74d3ac686a69518c1048260e37a0245ff254ff57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":61,"deletions":0,"files":["tests/fixtures/ubuntu-18.04/dpkg-l-codes.json","tests/fixtures/ubuntu-18.04/dpkg-l-columns500.json","tests/fixtures/ubuntu-18.04/dpkg-l.json","tests/test_dpkg_l.py"]},"message":"add dpkg-l tests"},{"commit":"cf3cc636badcf4ae6db1e5ee5e57ca0331ee5b0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add dpkg-l parser info"},{"commit":"a720441e1d34771c5a54876cb7dd63fb8c9f408e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":54,"deletions":0,"files":["EXAMPLES.md"]},"message":"add dpkg -l example"},{"commit":"0a7ed0959df07e2f36d9ec3ca8c294cfdaf10396","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"]},"message":"rename err to error"},{"commit":"eb83c9b86dc6d1ff15efed30993071834b65a7d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":21,"files":["docs/utils.md"]},"message":"replace parse_datetime_to_timestamp with timestamp class"},{"commit":"5c0142dd19eee14f4f1c287f0543e29824f9ae70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":1797,"deletions":2,"files":["CHANGELOG","docgen.sh","docs/parsers/dpkg_l.md","jc/cli.py","jc/parsers/dpkg_l.py","jc/parsers/universal.py","tests/fixtures/ubuntu-18.04/dpkg-l-codes.out","tests/fixtures/ubuntu-18.04/dpkg-l-columns500.out","tests/fixtures/ubuntu-18.04/dpkg-l.out"]},"message":"add dpkg-l parser"},{"commit":"c326c8dc8356b55bba13864156adf30607205ece","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":18,"insertions":194,"deletions":1,"files":["jc/parsers/time.py","tests/fixtures/osx-10.14.6/time-l.json","tests/fixtures/osx-10.14.6/time-l.out","tests/fixtures/osx-10.14.6/time-lp.json","tests/fixtures/osx-10.14.6/time-lp.out","tests/fixtures/osx-10.14.6/time-p.json","tests/fixtures/osx-10.14.6/time-p.out","tests/fixtures/osx-10.14.6/time.json","tests/fixtures/osx-10.14.6/time.out","tests/fixtures/ubuntu-18.04/time-p.json","tests/fixtures/ubuntu-18.04/time-p.out","tests/fixtures/ubuntu-18.04/time-verbose.json","tests/fixtures/ubuntu-18.04/time-verbose.out","tests/fixtures/ubuntu-18.04/time.json","tests/fixtures/ubuntu-18.04/time.out","tests/fixtures/ubuntu-18.04/time2.json","tests/fixtures/ubuntu-18.04/time2.out","tests/test_time.py"]},"message":"add TypeError to except block. add /usr/bin/time tests"},{"commit":"fc4082a03feb5645a1ad687908782a2584a58956","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":131,"files":["jc/utils.py"]},"message":"remove old parse_datetime_to_timestamp function"},{"commit":"c8655565ff8718f0f14d41696b81e6539529dde1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"]},"message":"use new timestamp class"},{"commit":"638f879f16c9e87edb60953f4fd0b1c7ad92f277","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/dig.py"]},"message":"use new timestamp class"},{"commit":"1d221bf7e6128d57bd769c0fe8f37f7a94da8cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/who.py"]},"message":"use new timestamp class"},{"commit":"60ea71f0ef931dccf09e6eb0cb737ddad0b47f0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/timedatectl.py"]},"message":"use new timestamp class"},{"commit":"d8bdd35a3f462efcdc871426309299e8aefb0a79","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/stat.py"]},"message":"use new timestamp class"},{"commit":"7463891c53f3670710dfa72ed1422431c274fe4a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/last.py"]},"message":"use new timestamp class"},{"commit":"7537aec76fa07384c4439f34c50d4e3f001c0dfa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":8,"files":["jc/parsers/date.py"]},"message":"use jc.utils.timestamp instead of jc.utils.parse_datetime_to_timestamp()"},{"commit":"62234e39a8533362a20f106c64326ed69f430006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":8,"files":["jc/parsers/upower.py"]},"message":"use jc.utils.timestamp instead of jc.utils.parse_datetime_to_timestamp()"},{"commit":"be004b7b3fe9217160c6418907e7d8aad10e5fae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":172,"deletions":15,"files":["jc/utils.py","tests/test_utils.py"]},"message":"make parse_datetime_to_timestamp function a class called timestamp for easier use"},{"commit":"82539444b24169b2eb762485ed032fc968a81f71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":23,"deletions":21,"files":["docs/parsers/time.md","jc/parsers/time.py"]},"message":"fix indentation for int and float conversions. add real_time field to schema"},{"commit":"a571d3cbafd5048d1d59070e1791398ae410197f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/time.md","jc/parsers/time.py"]},"message":"fix typo"},{"commit":"a038c14c23ea27264df61a38e0301de8d1fa1b9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":8,"deletions":8,"files":["EXAMPLES.md","docs/parsers/time.md","jc/parsers/time.py"]},"message":"change microseconds to centiseconds"},{"commit":"25a85d874cd2b57a7700b0c2dca61132127732b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iw_scan.py"]},"message":"update docs"},{"commit":"884c36ff42df4f580c8e2b4705def8e4c1182e39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":536,"deletions":1,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","docs/parsers/iw_scan.md","docs/parsers/time.md","jc/cli.py","jc/parsers/time.py"]},"message":"add /usr/bin/time parser"},{"commit":"b98e72b8b4eda0ab5ede7725226e61634af572eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add ls parser info"},{"commit":"05885c0096b5ee142ecff2d17e37c446518998a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":931,"deletions":18,"files":["docs/parsers/ls.md","jc/parsers/ls.py","tests/fixtures/ubuntu-18.04/ls-l-iso.json","tests/fixtures/ubuntu-18.04/ls-l-iso.out","tests/test_ls.py"]},"message":"add epoch and epoch_utc timestamps"},{"commit":"4c9761231af897658c3a2c0abcc476aa8b43d1b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":118,"deletions":81,"files":["CHANGELOG","EXAMPLES.md","README.md","docs/parsers/dig.md","jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json"]},"message":"add when_epoch and when_epoch_utc fields"},{"commit":"656eaa150861948091ef9d6323805c2698039bc6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"1560dcddcf82f55fffce22d1b46d372b25a9d0fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"]},"message":"add acpi, upower parsers and -v version option"},{"commit":"08d4cd4870c7acaf3a453d1400b64d77d462437b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":114,"deletions":43,"files":["EXAMPLES.md","docs/parsers/acpi.md","jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.json","tests/fixtures/generic/acpi-V2.json","tests/fixtures/generic/acpi-V3.json","tests/fixtures/generic/acpi-V4.json"]},"message":"add time calculations to acpi parser"},{"commit":"9767a50cededb140575e195abf79ce49c4f53789","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":48,"deletions":46,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/who.md","jc/parsers/who.py","jc/utils.py","tests/fixtures/centos-7.7/who-a.json","tests/fixtures/centos-7.7/who.json","tests/fixtures/osx-10.14.6/who-a.json","tests/fixtures/osx-10.14.6/who.json","tests/fixtures/ubuntu-18.04/who-a.json","tests/fixtures/ubuntu-18.04/who.json","tests/test_utils.py"]},"message":"update who parser to add epoch naive timestamp"},{"commit":"cd86890ed1493644e391e52e33561e9a77631a51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"]},"message":"add website to info and use variables for version info"},{"commit":"ba0dd3b9ca98a042c772898302fcfe5fdc84f79a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["tests/test_utils.py"]},"message":"add parse_timedate_to_timestamp test for format 7300"},{"commit":"8d7fa07ffd50f38336a448eb506a76d9d4849a6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":11,"files":["tests/fixtures/centos-7.7/timedatectl.json"]},"message":"unformat json"},{"commit":"cade1bfe6e56b5926898b7204e911885efebd5a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":2,"files":["tests/fixtures/centos-7.7/timedatectl.json","tests/fixtures/ubuntu-18.04/timedatectl.json"]},"message":"update timedatectl tests for new epoch_utc field"},{"commit":"daec4ab0a7f572e872b27b043d51f68e5e06300f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":20,"deletions":4,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/timedatectl.md","jc/parsers/timedatectl.py","jc/utils.py"]},"message":"add epoch_utc field to timedatectl parser"},{"commit":"3c96bc319615c824a06c388e9e3c1d68a9bf4084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"]},"message":"version bump"},{"commit":"7f7d8d4bd6f37015b11bac60a7bd99e8d3eca108","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":0,"files":["docs/parsers/stat.md","jc/parsers/stat.py"]},"message":"update stat docs"},{"commit":"47263661a41987f334fd484e866e0aa8859cde5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":2,"files":["EXAMPLES.md"]},"message":"update stat example"},{"commit":"4c42a086d206919dfe4f1c0801fe4fb1027cb1cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":6,"files":["jc/utils.py"]},"message":"clean up debug code"},{"commit":"5d2541a5c4bc93f3943a491c76df7f8d4e2cf44b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/utils.py"]},"message":"remove auto c locale and use a manual format rule for windows and linux compatibility"},{"commit":"d91d170b49bfc88c0b2fb54475705c038172f1c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/utils.py"]},"message":"try manual c locale format for windows"},{"commit":"6d1f4584a9ccd0f0f7ed4fdf408576a9e7f5046b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"]},"message":"try manually setting time format for windows compatibility"},{"commit":"1d76d96bcf4185cffb7066bec637913099399db5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/utils.py"]},"message":"debug windows issue"},{"commit":"e8847c998c91131acf5ee0f6485e9976c0fce3ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["tests/fixtures/centos-7.7/stat.json","tests/fixtures/freebsd12/stat.json","tests/fixtures/osx-10.14.6/stat.json","tests/fixtures/ubuntu-18.04/stat.json"]},"message":"update stat tests"},{"commit":"da88e49bae2f3fecff623f52c20bf994b653583e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":69,"deletions":29,"files":["docs/parsers/stat.md","jc/parsers/stat.py"]},"message":"add new examples"},{"commit":"65c3a12e5422782df40489c3c431677f5657dbf5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":35,"deletions":24,"files":["jc/parsers/stat.py","jc/utils.py"]},"message":"simplify None data scenario"},{"commit":"d8d600cc36bde4e6216b935f87a765599e896714","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"add reference to -h for help"},{"commit":"507999b117b024fed1ccf067bd5dc411dbeb268c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":34,"deletions":19,"files":["docs/utils.md","jc/utils.py","tests/test_utils.py"]},"message":"add stat command timestamp detection"},{"commit":"8ad164eb340e135eeeb10b721172916182f37e30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_cli.py"]},"message":"fix tests for compact output"},{"commit":"a507df140b245b83b1c46e8462b44e1145c42f2a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add compact json info"},{"commit":"8912a99986a977ee6ca7bbe2368f5033644577b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/cli.py"]},"message":"make default json output more compact"},{"commit":"1953f9882890cd0e8c515d43ce28c96f918b0ab4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"]},"message":"add version info. add json now supports unicode output"},{"commit":"7515218ddd2cdcfcebd67850140e842f2f121226","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":10,"deletions":14,"files":["jc/cli.py","jc/utils.py"]},"message":"use jc.utils for all warning and error messages. simply error and warning formatting."},{"commit":"36c11201366cefedee4244fb71a4a9cc6507e6ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"formatting"},{"commit":"8fa0fe64d8418093c7f28cdc70a7f409956aeb04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"]},"message":"add -v to helptext. minor formatting"},{"commit":"c1a8201b140c65579ff9f8427322b67653bf3006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["EXAMPLES.md"]},"message":"add copyright"},{"commit":"398bbac48c8a716b1872843d671aa6ceaeba6a78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"simplify return value for parse_datetime_to_timestamp()"},{"commit":"ea71a42bbdd9b09a457727cfe763054625f7901a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/cli.py"]},"message":"formatting"},{"commit":"1c16d25b17a7282a62a5ebd9755df5569c57435f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":30,"deletions":9,"files":["README.md","jc/cli.py"]},"message":"add version option (-v) and copyright information. add 'ensure_ascii=False' to json dumps to properly show UTF-8 copyright character"},{"commit":"9d12ded889f656656267cbf7a91d71267201f736","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"help description change"},{"commit":"5312701515ecb3a10598bb9dcf2f73b7eae71b93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add - make all external python requirements optional"},{"commit":"808c7bc0a94ecfd160ee2b257e5feec347829a5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/xml.py"]},"message":"make xmltodict library optional"},{"commit":"4d394015f458f284d052ce2c1a0c8492916c5b3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/yaml.py"]},"message":"make ruamel.yaml library optional"},{"commit":"3638298af8ebc01d54aa3ab5668d0adedca957e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":53,"deletions":44,"files":["jc/cli.py"]},"message":"make pygments library optional"},{"commit":"5f00973e400629bd68c0ab60ed9005410278f855","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/date.py"]},"message":"remove parenthesis to normalize text for naive timezone detection"},{"commit":"0f6e2c14fcb69f664c29083ec5207326f842dfdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/parsers/upower.py"]},"message":"simplify timestamp failure logic"},{"commit":"51813da61994226ba40478825d47f80c23413349","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":4,"files":["jc/parsers/date.py"]},"message":"add offset timezones. fix timestamp logic on conversion failure"},{"commit":"e7751322ea195cac7f1921ba8e0364c442065d20","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/iw_scan.py"]},"message":"formatting"},{"commit":"26ef29843784ade3d55410be13300dd6f4c06890","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":6,"files":["jc/utils.py"]},"message":"change return to always include the entire object but all keys may be None if conversion fails"},{"commit":"badaf8ce73d7deb0ec2be244e27b4bf8cddbea19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":14,"files":["jc/utils.py"]},"message":"comment formatting"},{"commit":"b123a622039f3cc32643a3bfc0766154d660f8bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/utils.py"]},"message":"move locale change formats to the end of the list"},{"commit":"cfd77e42522aa2ebeada9f45ac99bd1d3414f782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/utils.py"]},"message":"reset locale to None on exception"},{"commit":"38f814072eac5370059f1b4203316eee41cf535b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":8,"files":["jc/utils.py"]},"message":"better normalization of datetime string. better UTC detection. More formats supported with detected locale."},{"commit":"a0db7754e384a0c95f2099bf894f3a22bd33c002","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add nixos install info"},{"commit":"f07620afc7dc0d0d605eb483ef36c5979b33cdfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":18,"deletions":7,"files":["README.md","jc/__init__.py","jc/cli.py"]},"message":"move version to jc.__init__.py\nadd -h option for help instead of always showing on error\nuse jc.utils.error_message for the following errors: missing/incorrect arguments, parser not found, missing piped data"},{"commit":"c1b0d27752726989c6051f683a1194941bee598c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":10,"files":["runtests.sh"]},"message":"remove old commented commands"},{"commit":"430a5108aa265d4df0e4584eade54759da864c61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":19,"deletions":60,"files":["runtests.sh","tests/test_last.py","tests/test_last2.py"]},"message":"move all tests to github actions"},{"commit":"111ce92fc9c33b82c7d1a1664dda046ea5993f6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":0,"deletions":1,"files":["tests/{localtest_date.py => test_date.py}","tests/{localtest_last.py => test_last2.py}","tests/{localtest_upower.py => test_upower.py}","tests/test_utils.py"]},"message":"attempt all tests in github actions with timezone correction"},{"commit":"c851e8a58d98b2a4907cf1e7cf7c7d8d8dc04dc6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_utils.py"]},"message":"force github action"},{"commit":"39f4bcd9b41450068903ea2843508586eccdf709","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"Change Windows timezone"},{"commit":"4a610c4c81493788b8351e8c74aabe819c981c02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["tests/test_utils.py"]},"message":"force github action"},{"commit":"89ee11945d4e2db107a33ef0d61e0c6015ac8ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"Change timezone provider"},{"commit":"dadb09b74a69d1852f8433e0e32ccdd67bd91181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_utils.py"]},"message":"force github action"},{"commit":"1b1f638b97dc5e6f2767183eb363b79ae3c9b3c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":[".github/workflows/pythonapp.yml"]},"message":"Change timezone change provider"},{"commit":"794fc4ed44d1565514303090403d68ba5d639cb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":36,"deletions":8,"files":["jc/utils.py","tests/test_utils.py"]},"message":"add parse_datetime_to_timestamp() tests"},{"commit":"72f735bf9211d7beddcf58819fe465722f5d7c5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":[".github/workflows/pythonapp.yml"]},"message":"Set Timezone to America/Los_Angeles"},{"commit":"912877f25ad562ed4cafe7b2d7446bd48b477ea2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"additional timezone info"},{"commit":"2772c5ae436ea437d833003372d53a3d3f955ea0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"a7ad24d2cb61d84cf2846f8fa43af31f0597043e","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","stats":{"files_changed":13,"insertions":772,"deletions":0,"files":["docgen.sh","docs/parsers/dir.md","jc/cli.py","jc/parsers/dir.py","tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-C.out","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-ODTC.out","tests/fixtures/windows-10/dir-Q.json","tests/fixtures/windows-10/dir-Q.out","tests/fixtures/windows-10/dir.json","tests/fixtures/windows-10/dir.out","tests/test_dir.py"]},"message":"Add dir parser"},{"commit":"a364a6a9faeb6aa290b790f3dec74e92b8670534","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"]},"message":"add note regarding calculated timestamps"},{"commit":"7b2dc86a8d974e7984fe2540f56a66c2b9386acd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":19,"files":["EXAMPLES.md"]},"message":"update last example with new timestamp fields"},{"commit":"ad645636d07d0423253f19068a22b2a28251b05f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":86,"deletions":50,"files":["CHANGELOG","EXAMPLES.md","README.md","docs/parsers/uptime.md","jc/parsers/uptime.py"]},"message":"update uptime docs"},{"commit":"2f2f297b29fbe3172647a81db084b3564a441d40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["tests/fixtures/centos-7.7/uptime.json","tests/fixtures/osx-10.11.6/uptime.json","tests/fixtures/osx-10.14.6/uptime.json","tests/fixtures/ubuntu-18.04/uptime.json"]},"message":"update uptime fixtures with new fields"},{"commit":"099ae3fde03f8157298f6b412bdddb8bd56da09a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":22,"files":["jc/parsers/uptime.py"]},"message":"fix issue when there is no data"},{"commit":"e9febe98ac5ec0e03791c5b6794446a2c3312fb1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["runtests.sh"]},"message":"add localtest partition lines for readability"},{"commit":"5fbd07cccf9fb697b996dcc3949eef5b1c09e655","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":59,"deletions":26,"files":["jc/parsers/uptime.py"]},"message":"rewrite of uptime parser including new fields"},{"commit":"5fed4698c2c1f1b7e05c5b4c51639f818e049b53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":6,"files":["docs/parsers/last.md","jc/parsers/last.py"]},"message":"update docs and version number"},{"commit":"ed7eb0983a4dfcc1d66a2957be3e10b2203d909e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/last.py"]},"message":"use parse_datetime_to_timestamp function instead of custom format string"},{"commit":"90c7e18e5fc5ea9fcf6157cc2656f47193d78411","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":11,"files":["EXAMPLES.md"]},"message":"update date example"},{"commit":"953ab5c3bd0c8b6eef29b717edaf1aa2380c2b93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":0,"files":["runtests.sh","tests/{test_upower.py => localtest_upower.py}"]},"message":"make upower tests local only"},{"commit":"699c97d8a07f7575454746159ac4d19981cd1a5c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"add last parser info"},{"commit":"e4ca0de92a689ce93b91d86106a5da590226855a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":100,"deletions":0,"files":["tests/fixtures/generic/upower-i-c-locale.json","tests/fixtures/generic/upower-i-non-utc.json","tests/fixtures/generic/upower-i-utc.json",".../{upower-i-utc.out2 => upower-i-utc.out}","tests/fixtures/ubuntu-18.04/upower-d-clocale.json","tests/fixtures/ubuntu-18.04/upower-d.json","tests/fixtures/ubuntu-18.04/upower-i.json","tests/test_upower.py"]},"message":"add upower tests"},{"commit":"04745a36b84cc79e56bde2a0e92a4ee9ab4a1538","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":5,"files":["CHANGELOG","jc/utils.py"]},"message":"doc update"},{"commit":"5936940532b8b753e67c9f5cd9287f34cc84ae9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":136,"deletions":186,"files":["docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date-after-midnight.json","tests/fixtures/generic/date-before-midnight.json","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/fixtures/ubuntu-20.04/date2.json"]},"message":"rewrite of date parser using datetime library"},{"commit":"b3eb064b6753d6e894884e1c16054630c2396fe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"]},"message":"clarify format definition comments"},{"commit":"e4b41057e302074ac2a81ad8c36b6f95cd6b7db2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":24,"deletions":0,"files":[".../{upower-i.out => upower-i-c-locale.out}","tests/fixtures/generic/upower-i-non-utc.out",".../generic/{upower-i2.out => upower-i-utc.out2}"]},"message":"update upower fixture names"},{"commit":"1d41c46cc762ab0c78b819e56db7df39f1111d5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":34,"deletions":5,"files":["jc/utils.py"]},"message":"normalize datetime string to remove all timezones except UTC"},{"commit":"a5c444587b3f0874fcc2833dc4e759c2dc1c7834","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":28,"deletions":0,"files":["tests/fixtures/generic/date-after-midnight.json","tests/fixtures/generic/date-after-midnight.out","tests/fixtures/generic/date-before-midnight.json","tests/fixtures/generic/date-before-midnight.out","tests/localtest_date.py"]},"message":"add before and after midnight date tests"},{"commit":"a56f471be980be16e73d3a91e2b12aad26c6d38c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/fixtures/generic/upower-i2.out"]},"message":"update fixture to use UTC for better testing"},{"commit":"6a6b26ed8d97014c2a5c7d91a4cd9b23f49530fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/date.py"]},"message":"fix 12 to 24 hour conversion for midnight cases"},{"commit":"f62446c152d89f2d37b22ffe9d9de5b5c9fa7049","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":10,"files":["jc/utils.py"]},"message":"rename variables. add another european time format"},{"commit":"56011f1f172344cab2a8e869e7a6df6e45c45874","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":73,"deletions":6,"files":["EXAMPLES.md","docs/parsers/upower.md","jc/parsers/upower.py"]},"message":"updated upower examples"},{"commit":"6d44091c80318fde6c09cd850e6dc5afde7fe799","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":53,"files":["jc/utils.py"]},"message":"refactor parse_datetime_to_timestamp()"},{"commit":"440c458eb42925dffe2d7b026279468fa2fa1bb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"no need for ternary clause"},{"commit":"798250af6116441385339806c8f26bc9720ad302","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":18,"deletions":24,"files":["docs/parsers/upower.md","jc/parsers/upower.py"]},"message":"use jc.utils.parse_datetime_to_timestamp() function for timestamp creation"},{"commit":"c762de29c6491790908451aa20f6aa12fdfa9722","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":32,"deletions":2,"files":["docs/utils.md","jc/utils.py"]},"message":"doc updates"},{"commit":"0701e65e97165efd40ab2ae5087897de3588ea32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":106,"deletions":0,"files":["jc/utils.py"]},"message":"add parse_datetime_to_timestamp() function"},{"commit":"209d54e8b5be6476d896cee1a5274bd2b46219e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/parsers/date.md","jc/parsers/date.py"]},"message":"add hour_24 to schema docs"},{"commit":"2b38462de7d2fa61dd5d2a184e853279f1a9c84b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":33,"deletions":27,"files":["EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py"]},"message":"update examples"},{"commit":"1e8e5533162cb01053ee25e9dbc709a429e58070","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":31,"deletions":14,"files":["CHANGELOG","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/fixtures/ubuntu-20.04/date2.json","tests/localtest_date.py"]},"message":"add hour_24 field"},{"commit":"ab42e6bb15026d6c46e15197c62bc3e8ef95c80d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/date.md","jc/parsers/date.py"]},"message":"formatting"},{"commit":"680288454090f3c48c7f0580cdcb919c0b5a883e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["docs/parsers/date.md","jc/parsers/date.py"]},"message":"ensure period is always uppercase in dict value. update period documentation"},{"commit":"7cb8577b9655f258f2910e7e7bcf3266d4cbece0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":70,"deletions":48,"files":["docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/ubuntu-20.04/date2.out"]},"message":"correct epoch_utc calculation. Fix for 12 hour vs. 24 hour representation"},{"commit":"55810ccd1f17ef6a4b1cb72fc21f6cf990ef8bb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/upower.py"]},"message":"set epoch_dt conversion again if not C locale"},{"commit":"f9921720cd0b9b0d76d66e6eb5bfe43481f5f52b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":4,"deletions":94,"files":["runtests.sh","tests/test_date.py","tests/test_last2.py"]},"message":"revert to local testing for naive datetime objects"},{"commit":"cda1ebd271aa8fd1b716054a2149f876d8087230","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["tests/test_date.py","tests/test_last2.py"]},"message":"try tzset()"},{"commit":"6901e4a23aad0b58cbbfac86c61917115d115dfe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":89,"deletions":3,"files":["runtests.sh","tests/test_date.py","tests/test_last2.py"]},"message":"try setting timezone env variable before tests to ensure it is the same on all test systems"},{"commit":"6bc21d3c735edc7897e49afd2a5ea9e3aa56d7fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["runtests.sh","tests/{test_date.py => localtest_date.py}","tests/localtest_last.py"]},"message":"fix date parser tests - local tests only since timezones may not match on github actions VMs"},{"commit":"1ef231e26a2898d2a01f341fb92014df92703f72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"add date parser updates"},{"commit":"3cd43f0f985a3b8a4e74bf5632bd8dac92d751c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/upower.md","jc/parsers/upower.py"]},"message":"formatting"},{"commit":"156501996688e62dd61a8456206218582a6cbe1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":85,"deletions":63,"files":["EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json"]},"message":"fix weekday numbering to be ISO 8601 compliant. Add naive calculated epoch timestamp field"},{"commit":"0a4de2d3a1c235d1ac2d6e59346e77761fe51885","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":2,"files":["docs/parsers/last.md","docs/parsers/upower.md"]},"message":"add naive datetime calculation info to docs"},{"commit":"a058f6c174e31f5e6040883bb544b83abd88c749","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/last.py"]},"message":"added naive epoch calculation info to docs"},{"commit":"d8e5d03b01a87704424f5259cf6bd977274fd6ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":33,"files":["jc/parsers/upower.py"]},"message":"naive updated_epoch timestamp calculation added"},{"commit":"9dc62eff2eaaafec89c5b8797d8ca8e4c77a07d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":34,"deletions":21,"files":["jc/parsers/upower.py"]},"message":"remove epoch conversions"},{"commit":"d4fea17c57a97d6914624b06208b9439bf2eb05f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":13,"deletions":6,"files":["docgen.sh","docs/parsers/upower.md","jc/parsers/upower.py"]},"message":"use UTC when calculating epoch timestamp. reset time locale to default after changing"},{"commit":"3dd7a5b77ea708047bc12be9f2caddd9078723f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":230,"deletions":0,"files":["docgen.sh","docs/parsers/upower.md"]},"message":"add upower docs"},{"commit":"d77c90a3ba2036b216f4a612876ace988eafd217","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":114,"deletions":6,"files":["jc/parsers/upower.py"]},"message":"fix quoted values in detail level. Add examples"},{"commit":"01f0c20df09fd4aa12bd108928b97376b51ef31a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":0,"files":["tests/fixtures/ubuntu-18.04/upower-d-clocale.out"]},"message":"add sample using C locale timestamp"},{"commit":"aafbe576b3b754de91591d9ec2dae9e9f827dee4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":137,"deletions":36,"files":["jc/parsers/upower.py"]},"message":"working parser and processor"},{"commit":"bd68ad40345fb1f69be0e0f87dc67134f826cd06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/upower.py"]},"message":"don't modify detail_type value since it is no longer a key"},{"commit":"bfee017c138bb30ec6af836685013b7124028974","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":61,"deletions":20,"files":["jc/parsers/upower.py"]},"message":"made the schema more explicit by hardcoding more items. still working on the schema"},{"commit":"61f532cfd0b7fbf14a58a0fd638bcbfb03fbde72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["jc/parsers/upower.py"]},"message":"working history list"},{"commit":"58dbbb75b607d0b29be185c3b8c3f0d8af21ecad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":21,"files":["jc/parsers/upower.py"]},"message":"simplified logic"},{"commit":"8d88b91fcf5060d7d54f687efec3e3a606bab767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/upower.py"]},"message":"move if statements and generalize the history detail detection"},{"commit":"ad39fc60299089f56f37baac71820e50cbe87ed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":268,"deletions":0,"files":["jc/cli.py","jc/parsers/upower.py","tests/fixtures/generic/upower-i.out","tests/fixtures/generic/upower-i2.out","tests/fixtures/ubuntu-18.04/upower-d.out","tests/fixtures/ubuntu-18.04/upower-i.out"]},"message":"working upower parser. history lines are ignored"},{"commit":"89f1fd96e6b7aa0acf6272e4f3469005d4f7c6bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":87,"deletions":0,"files":["tests/fixtures/generic/acpi-V.json","tests/fixtures/generic/acpi-V2.json","tests/fixtures/generic/acpi-V3.json","tests/fixtures/generic/acpi-V4.json","tests/fixtures/ubuntu-18.04/acpi-V.json","tests/test_acpi.py"]},"message":"add acpi tests"},{"commit":"bd425f2493b68949c1fa02cd1d3289ec882d9b0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":321,"deletions":2,"files":["CHANGELOG","EXAMPLES.md","docgen.sh","docs/parsers/acpi.md","jc/cli.py","setup.py"]},"message":"version bump to v1.15.0. Add acpi docs"},{"commit":"46962ff02a0630766a927babc92e11ec91b1f789","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":11,"files":["jc/parsers/acpi.py"]},"message":"remove redundant lines"},{"commit":"e4cb88b05166815e8ad03b646bd3f2b1da7f0d4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/acpi.py"]},"message":"remove unneeded line-state assignment"},{"commit":"32840703dc1d88412712b08db1c9bdaebbc34450","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":39,"files":["jc/parsers/acpi.py"]},"message":"remove redundant code"},{"commit":"1f7aafd0415a79e0547cc6f1c008c1918f8fb460","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":19,"deletions":9,"files":["jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out","tests/fixtures/generic/acpi-V4.out"]},"message":"fix for full charge batter case. Clean up battery object logic"},{"commit":"7378d5dce43f75440cb57903e8ae0c1c615b0782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/acpi.py"]},"message":"remove comment"},{"commit":"84f76866cdf76f67b34de999fd987de8a02f0306","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":197,"deletions":3,"files":["jc/parsers/acpi.py"]},"message":"working process function"},{"commit":"322da9ea6a1ceea1152d720797adb8f3a7dc1199","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":59,"deletions":12,"files":["jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out"]},"message":"working parser"},{"commit":"58645301ec111bfeb2a618f5f169cc734042dc5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":236,"deletions":1,"files":["jc/cli.py","jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out","tests/fixtures/generic/acpi-V2.out","tests/fixtures/generic/acpi-V3.out","tests/fixtures/ubuntu-18.04/acpi-V.out"]},"message":"add acpi command parser"},{"commit":"1e18dd30a824b0463f0cad86e0da7094c47d34f9","merge":"20f9b7f cc6a19a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #102 from kellyjonbrazil/dev"},{"commit":"cc6a19adccea3e10243a166b87d852b6f95414b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/yaml.py"]},"message":"fix typo in comments"},{"commit":"2a5588b177a24d5b78a4b5a515aba515804b7baa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":13,"deletions":3,"files":["CHANGELOG","jc/cli.py","jc/parsers/yaml.py","setup.py"]},"message":"packaging fix for yaml parser and pyoxidizer"},{"commit":"20f9b7f88b97ed68aba46e102b8c7b72443b9c85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"fix typo"},{"commit":"d7e32313cd9776b4a6af38cc2819d6e4ef8c0d55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"fix typo"},{"commit":"fb5654d3c4549e84940e2518f2d214debdd42d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"258f1433b36a7ee117ac43953edb4fe964603e7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]},"message":"add locale info to readme"},{"commit":"fb723ae8bd7bb51f9a4bab380ec1bc54cda0445b","merge":"87b506d 283b89e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #101 from kellyjonbrazil/dev"},{"commit":"283b89e37c38a3082203e43e38569c8b0bb11e12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["CHANGELOG","jc/parsers/dig.py"]},"message":"simplify answer data logic"},{"commit":"f450f9eb8b7d382af316e88301e72af01a018be9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":74,"deletions":0,"files":["tests/fixtures/centos-7.7/hciconfig-a.json","tests/fixtures/centos-7.7/hciconfig.json","tests/fixtures/ubuntu-20.04/hciconfig-a.json","tests/fixtures/ubuntu-20.04/hciconfig.json","tests/test_hciconfig.py"]},"message":"add hciconfig tests"},{"commit":"b3f8cf99a4874335c6b43e105e0c1562c08256dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":15,"deletions":15,"files":["jc/parsers/hciconfig.py"]},"message":"work for both tabs and spaces"},{"commit":"4301ea8caea7c14f59bcddf09668d0198e1115a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/hciconfig.py"]},"message":"remove debug line"},{"commit":"c672d1c174a42ce44544dfaec0ebcf3c30fd7acf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":903,"deletions":22,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","docs/parsers/hciconfig.md","jc/parsers/hciconfig.py","man/jc.1"]},"message":"initial working hciconfig parser"},{"commit":"229e953a38471cdd41af0810577d324329840a4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":205,"deletions":2,"files":["jc/cli.py","jc/parsers/hciconfig.py","setup.py","tests/fixtures/centos-7.7/hciconfig-a.out","tests/fixtures/centos-7.7/hciconfig.out","tests/fixtures/ubuntu-20.04/hciconfig-a.out","tests/fixtures/ubuntu-20.04/hciconfig.out"]},"message":"initial add of hciconfig parser"},{"commit":"87b506dc9b4831d11b4fd04fd6849532db074f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":47,"deletions":4,"files":["CHANGELOG","jc/cli.py","jc/parsers/dig.py","setup.py","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/generic/dig-answer-spaces.out","tests/test_dig.py"]},"message":"fix for spaces in dig answer data"},{"commit":"15c9002d9eff0f52d873fb3ab35dfafd03a8e919","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"simplify logic by taking out 'not' in JC_COLORS parsing"},{"commit":"042aaa61b96fc8472a8a460c49bde4cbbc359094","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"minor updates"},{"commit":"ef856c6ba5774cd8ec23acd71496846e794e3872","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"clarify -q option"},{"commit":"9cf5be73e3f975132d1ffbef412638b941a5664f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]},"message":"typo fix"},{"commit":"63fc149e2a097cbde60c2ce1aeb102d9becabd9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]},"message":"typo fix"},{"commit":"3c25839350800c7e7d2c48fc032bb21efa0ac213","merge":"03c0295 58246e3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #98 from kellyjonbrazil/dev"},{"commit":"58246e33b71bae0ca4a42ad5bdf31134948b1014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","README.md"]},"message":"update compatibility info and changelog date"},{"commit":"8b1407c7068e2105a83992bbb026138ea67bc07c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":59,"deletions":10,"files":["runtests.sh","tests/localtest_last.py","tests/test_last.py"]},"message":"pull env-specific tests from CI/CD and run locally only"},{"commit":"2fde4a4e2299b98a9958e3a55849c6791e4b17dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["EXAMPLES.md","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]},"message":"doc updates"},{"commit":"60b9e9798286121399d0f8b75d63ab0f3312c9bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":80,"deletions":38,"files":["docs/parsers/last.md","jc/parsers/last.py","tests/fixtures/centos-7.7/last-crash.json","tests/fixtures/centos-7.7/last-w.json","tests/fixtures/centos-7.7/last-wF.json","tests/fixtures/centos-7.7/last-wF.out","tests/fixtures/centos-7.7/last.json","tests/fixtures/fedora32/last.json","tests/fixtures/osx-10.14.6/last.json","tests/fixtures/ubuntu-18.04/last-w.json","tests/fixtures/ubuntu-18.04/last.json","tests/fixtures/ubuntu-20.04/last-F.json"]},"message":"last parser enhancements: augment hostname with CONSOLE for GUI login, add convenience fields when -F is used: login_epoch, logout_epoch, duration_seconds, calculate duration to hours:minutes"},{"commit":"0adac79c0f2a22b31dfef1432a029af06132467b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"]},"message":"Add last parser enhancements"},{"commit":"9f485b5981a2ce49ac699b9dad39993c5605ae18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["jc/parsers/iw_scan.py","tests/fixtures/centos-7.7/iw-scan0.json","tests/fixtures/centos-7.7/iw-scan1.json"]},"message":"change mac_address fieldname to bssid. Add credit to Phillip"},{"commit":"db17d21b8f9b2f899760e648f1483d33d0bcf47a","merge":"5885b96 996d394","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #97 from pschmitt/iw_scan_fix_space_detection"},{"commit":"996d394e89c732f327323ca340fce405bd5fb2e4","author":"Philipp Schmitt","author_email":"philipp@schmitt.co","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/iw_scan.py"]},"message":"iw_scan: Improve detection of lines starting with spaces"},{"commit":"5885b960f9b33a95ecec9f4a33233c2f8682fbc4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":2,"files":["CHANGELOG","README.md","man/jc.1"]},"message":"doc updates"},{"commit":"79987b35f332e287567e103f25cf91cb50e040c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"]},"message":"formatting"},{"commit":"661b3ef311ad26678030c70c11f2f955667311a4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":94,"deletions":2,"files":["EXAMPLES.md","README.md","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]},"message":"doc updates"},{"commit":"fb422726a8366c7133f0712d3b05a26620eea785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["tests/fixtures/ubuntu-20.04/last-F.json","tests/fixtures/ubuntu-20.04/last-F.out"]},"message":"update test to add 'down' condition"},{"commit":"4fb6f3ea59c52515926a51a006e65a1c18e57720","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/last.py"]},"message":"add support for down in addition to crash"},{"commit":"f78fe771e1c2fb4691858fa7f27b1febe5f8c6c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":48,"deletions":0,"files":["tests/fixtures/centos-7.7/iw-scan0.json","tests/fixtures/centos-7.7/iw-scan1.json","tests/test_iw_scan.py"]},"message":"add iw-scan tests"},{"commit":"567b8872538ac9f6b384b98741acd9794229d513","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":252,"deletions":12,"files":["docgen.sh","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"]},"message":"doc updates"},{"commit":"e516e6b9466b29d40ec10070dd61551180eeef90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":29,"deletions":1,"files":["jc/parsers/iw_scan.py"]},"message":"fix country/environment fields and process int/float conversions"},{"commit":"62748676aae3d5955191ed267215df33a5bd3a4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":225,"deletions":0,"files":["jc/cli.py","jc/parsers/iw_scan.py"]},"message":"initial iw-scan parser"},{"commit":"7351c72e45242b9eb08c51dea7b6fccf12366dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":402,"deletions":1,"files":["jc/parsers/last.py","tests/fixtures/centos-7.7/last-crash.json","tests/fixtures/centos-7.7/last-crash.out","tests/fixtures/centos-7.7/last-wF.json","tests/fixtures/centos-7.7/last-wF.out","tests/test_last.py"]},"message":"add fixes and tests for entries that contain 'crash'"},{"commit":"2b7405c5e21db2488fc48b58f6c65cff947ca95d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":23,"deletions":16,"files":["CHANGELOG","README.md","docs/parsers/last.md","jc/parsers/last.py","man/jc.1"]},"message":"doc updates"},{"commit":"e2c77cb935a5bd95dbe930d424e5a02e88e1fa76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":15,"deletions":1,"files":["jc/parsers/last.py","tests/fixtures/ubuntu-20.04/last-F.json","tests/test_last.py"]},"message":"add test for last -F output"},{"commit":"7ac621e4c916373a03f379425033cb2d81a03578","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":36,"deletions":6,"files":["docs/parsers/last.md","jc/parsers/last.py","tests/fixtures/ubuntu-20.04/last-F.out"]},"message":"add -F support"},{"commit":"d8b5d6c66ced19dc16f2b4975d2293a903732ffe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/cli.py","setup.py"]},"message":"version bump to 1.14.1"},{"commit":"22b461eb4b1ca86ea9e8c1fde8a2c312d1526b5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":47,"deletions":12,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/test_date.py"]},"message":"Add period field for en_US.UTF-8 locale"},{"commit":"b37ee8555a2a108625a834a7990bc3320e79b08d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["CHANGELOG"]},"message":"changelog update"},{"commit":"1d0ad2f045733c5c690738d49951fdb9bcd3d66d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":123,"insertions":312,"deletions":312,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat_freebsd_osx.py","jc/parsers/netstat_linux.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"doc fixes"},{"commit":"ceccfb2c815f57f1b6fd81f891d8b495de23f9f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":2036,"deletions":0,"files":["tests/fixtures/centos-7.7/iw-scan0.out","tests/fixtures/centos-7.7/iw-scan1.out","tests/fixtures/ubuntu-20.04/date.out"]},"message":"add test output for iw-scan and date on ubuntu 20.04"},{"commit":"03c02953cd7e3327b391f799c37a2990eb2cb24c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":96,"deletions":0,"files":["docgen.sh","docs/parsers/wc.md"]},"message":"add wc doc"},{"commit":"f254a0eaa16fcda316f7a75424ee359058204b03","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump"},{"commit":"9e3b88727cd439e15f235dddb9dd5796e010797a","merge":"439871e b122174","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #91 from kellyjonbrazil/dev"},{"commit":"b12217466e906829d19be4cfd80dfe7cf4008e57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"spelling"},{"commit":"8b9c932f9b05295e63b3e7d0073f243458fd4dd9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"update date"},{"commit":"5986ce03db6fcd1aa0f7b064eaa96c2120c06d2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add printenv info"},{"commit":"a7b0e936e400d2f9e55629e2d722cc002e035e9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"]},"message":"add vdir and printenv info"},{"commit":"cb0221142455a6bcb904fbe9ade657be45815b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":61,"deletions":2,"files":["jc/parsers/wc.py","tests/fixtures/osx-10.14.6/wc-stdin.json","tests/fixtures/osx-10.14.6/wc-stdin.out","tests/test_wc.py"]},"message":"add wc tests"},{"commit":"bd443bf39227515ae5f8df65d07b30268dcc90a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/env.py"]},"message":"add printenv to env docs"},{"commit":"1f547edd361e66b19ccbcb59f6ba0ae78f6080ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/env.md"]},"message":"add printenv to env docs"},{"commit":"e4bac3a493705b09e301ddc90dd1b0cee7467c3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":378,"deletions":0,"files":["CHANGELOG","EXAMPLES.md","README.md","jc/cli.py","jc/parsers/wc.py","tests/fixtures/centos-7.7/wc.json","tests/fixtures/centos-7.7/wc.out","tests/fixtures/osx-10.14.6/wc.json","tests/fixtures/osx-10.14.6/wc.out"]},"message":"add wc parser"},{"commit":"5e6bfa681aff03fbd683f81a9f4daa56b49d1344","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["README.md","docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"add vdir info"},{"commit":"276160125e01553c75eaad68530177bcf4f9004d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"]},"message":"add new commands to README"},{"commit":"d4ae5543f2d5f28a0db5b8e2e19993c21c5d960c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":39,"deletions":0,"files":["tests/fixtures/centos-7.7/hash.json","tests/fixtures/centos-7.7/hash.out","tests/test_hash.py"]},"message":"add hash tests"},{"commit":"55f360e267fdfcfef0c124ed6b88535cc181a8b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":260,"deletions":0,"files":["CHANGELOG","EXAMPLES.md","docgen.sh","docs/parsers/hash.md","jc/cli.py","jc/parsers/hash.py"]},"message":"add hash command parser"},{"commit":"fdedab2a0cf5af15df5803d87302397dd6d71741","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/cksum.py","jc/parsers/hashsum.py"]},"message":"description updates"},{"commit":"a9be42e3031ab0d697cff67a9e384caa2265a3ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"specify parser warnings for quiet option"},{"commit":"6da9510e46e84ec1cb93384825184d2996cf0e08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":482,"deletions":0,"files":["tests/fixtures/centos-7.7/cksum.json","tests/fixtures/centos-7.7/cksum.out","tests/fixtures/centos-7.7/sum.json","tests/fixtures/centos-7.7/sum.out","tests/fixtures/osx-10.14.6/cksum.json","tests/fixtures/osx-10.14.6/cksum.out","tests/fixtures/osx-10.14.6/sum.json","tests/fixtures/osx-10.14.6/sum.out","tests/test_cksum.py"]},"message":"add cksum tests"},{"commit":"0431798178740b03cdefececc6df958e5adf62fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":229,"deletions":3,"files":["CHANGELOG","docgen.sh","docs/parsers/cksum.md","docs/parsers/hashsum.md","jc/cli.py","jc/parsers/cksum.py","jc/parsers/hashsum.py"]},"message":"add cksum parser"},{"commit":"62432f3c484e74acb2b2dfd15d448b3f1b5d53c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/hashsum.py"]},"message":"update hashsum description"},{"commit":"9fbbc30906b597e6afaf2030015a7a694d85f79e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":0,"files":["docs/parsers/hashsum.md","jc/parsers/hashsum.py"]},"message":"add supported commands to docs"},{"commit":"d1567d1f622902053f3df58645b4e39532e0c30a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":104,"deletions":0,"files":["CHANGELOG","docgen.sh","docs/parsers/hashsum.md"]},"message":"add hashsum documentation"},{"commit":"6ca1f5970b3a518615a54ee7fcbc1bddab2db331","merge":"1c880b9 3b7d54c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"1c880b9e24ca53cd592cec1dbc52301308290fb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_hashsum.py"]},"message":"force git tests"},{"commit":"3b7d54c720dfc93637328cf06eb10a85447c8793","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"add python 3.9"},{"commit":"44a740605705bd0ecfde2a6bcc7a826e1010dcf0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":87,"deletions":0,"files":["tests/fixtures/centos-7.7/md5sum.json","tests/fixtures/centos-7.7/sha256sum.json","tests/fixtures/centos-7.7/sha384sum.json","tests/fixtures/osx-10.14.6/md5.json","tests/fixtures/osx-10.14.6/shasum.json","tests/test_hashsum.py"]},"message":"add hashsum tests"},{"commit":"8157dcfdb1868548b7c8ca692e6be25f80bb2c2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":36,"deletions":11,"files":["jc/parsers/hashsum.py"]},"message":"fix for files with spaces in the name"},{"commit":"28762aea15cabc9cd8293d725e7f1f0550f8e15d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":524,"deletions":0,"files":["jc/cli.py","jc/parsers/hashsum.py","tests/fixtures/centos-7.7/md5sum.out","tests/fixtures/centos-7.7/sha256sum.out","tests/fixtures/centos-7.7/sha384sum.out","tests/fixtures/osx-10.14.6/md5.out","tests/fixtures/osx-10.14.6/shasum.out"]},"message":"add hashsum parser"},{"commit":"439871ea9f6b055a407e1faaf47e4f56d1829501","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add ubuntu"},{"commit":"c9180b005c0547c8cbfe4809e66894f1123b0809","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"b14e0725f86853f0113116b1c06f54aaa563f365","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add ansible plugin blog post link"},{"commit":"70fe3dcb4d5b97aba1d6c6dcd5088fecb27af181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"8c554604a42a3ea7ca9131b65c64fd3ceb95f906","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"formatting"},{"commit":"a0a35454bd2831c116cb598c686150b883412f94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add link to the web demo"},{"commit":"e8467e2af5b0c3f14832a9e6d4a96f219c27f3f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"remove extra space"},{"commit":"7515deb5669ef04623e9cbf58653b30c99a96430","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add ansible install command"},{"commit":"ed9e52af241b609ee7f5d1b835c9f6c5306cd3c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"spelling"},{"commit":"592a3804104628c790997747a778b3b39d076dfe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]},"message":"add Ansible note"},{"commit":"1a458d2d5b4c16c0ad90671727ae9b19939e7f23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py"]},"message":"update link"},{"commit":"0e4cf53b92ff951a6390a4dacf8833c272473583","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/readme.md","jc/__init__.py"]},"message":"add parser docs link"},{"commit":"e2f06ccb33177173d984bc0cdda1aae1a3f4c681","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"formatting"},{"commit":"8abff004cd8e09529e5d94be4883308152e11565","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/yaml.md"]},"message":"indentation fix"},{"commit":"c4a0e2e3feb2e51eaaaa202064f352229017bcc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/yaml.py"]},"message":"fix indentation"},{"commit":"4f10f79c73f8b3d6edc2c83e6a12d0ddc1a78555","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":8,"files":["docs/parsers/uname.md","jc/parsers/uname.py"]},"message":"standardize doc"},{"commit":"69e7a560fd82337570c4bb4aa4780f513c18bd94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":8,"deletions":0,"files":["docs/parsers/env.md","docs/parsers/history.md","jc/parsers/env.py","jc/parsers/history.py"]},"message":"add output info to docs"},{"commit":"59b105580805d78516abe1c1069d52a6f0a8131a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":97,"insertions":564,"deletions":269,"files":["docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"enhance docs"},{"commit":"6ed48c6289214fe5114971c80772efdf9ac1b8c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":16,"insertions":88,"deletions":37,"files":["jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py"]},"message":"enhance docs"},{"commit":"f2fb4d3f415fbc1c09eec6dedcf70fba78406b3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","jc/parsers/airport.py","jc/parsers/airport_s.py"]},"message":"improve docs"},{"commit":"6aeea59ea84e56434e87ddf89cd5d4435b99e140","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":8,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md"]},"message":"doc updates"},{"commit":"d016f3bbb307f85bd0f93a508323941a8bb9d872","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":8,"files":["jc/parsers/airport.py","jc/parsers/airport_s.py"]},"message":"improve documentation"},{"commit":"7131c297180bfa195d0209d46fc70ab8e67efe2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":114,"insertions":686,"deletions":116,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"]},"message":"add module usage info to docs"},{"commit":"7432442983841b42c8d3d2459b55596c05d1e100","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["docs/parsers/blkid.md"]},"message":"add usage"},{"commit":"5344883394a0662ee16bb5edd68df8e4410025f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"]},"message":"spelling/add ping parser update"},{"commit":"3fcd2f6c2e015b0e65e7261c8e591ccd8a7d0e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"f3d84bd5bf06349b681e9b72d904676e9f6bca19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":21,"deletions":3,"files":["CHANGELOG","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/fixtures/debian10/crontab-u.json","tests/fixtures/debian10/crontab-u.out","tests/test_crontab_u.py"]},"message":"tighten crontab and crontab-u parser variable detection"},{"commit":"549780c23220bca3bcab58d7329ba8d44d1be55d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"add debian/apt-get info"},{"commit":"2a6da69b82aa9ade6c01d490a32b57b415c62a9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ping.py"]},"message":"improve linux/bsd check"},{"commit":"5c538816cf76686bac1a86a7c06e24664d25a2dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":55,"deletions":4,"files":["CHANGELOG","jc/cli.py","jc/parsers/ping.py","setup.py","tests/fixtures/pi/ping-ip-O-D.json","tests/fixtures/pi/ping-ip-O-D.out","tests/fixtures/pi/ping-ip-O.json","tests/fixtures/pi/ping-ip-O.out","tests/test_ping.py"]},"message":"ping parser fix for raspberry pi"},{"commit":"7b8b378a7df397c488fc54fbd6e77f5f3f23c10c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"]},"message":"add pydoc-markdown version requirement"},{"commit":"e30a75e25c4b43969bf9f874f89e18512a5e3a34","merge":"dda517a 85ad5cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #76 from kellyjonbrazil/dev"},{"commit":"85ad5cfd0bfb903ce35e37b343244fed88dbd979","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"]},"message":"date change"},{"commit":"88b9d5068c5bac0691fedb543114300d6afc7131","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":74,"deletions":15,"files":["EXAMPLES.md","README.md","docs/parsers/date.md","tests/fixtures/generic/date.json","tests/fixtures/generic/date.out","tests/test_date.py"]},"message":"finish date parser"},{"commit":"f8c4948a090642db595eda2ba2ea0773e560ba67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/date.py"]},"message":"remove comment"},{"commit":"412322447f019aec0b64888631bc965e9f21186d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":48,"deletions":17,"files":["jc/parsers/date.py"]},"message":"add month_num and weekday_num fields"},{"commit":"d4f289e40fae621b87f0d49451fca4c3dde216b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/date.md","jc/parsers/date.py"]},"message":"documentation fixup"},{"commit":"e1f3feb8f529172ae26ce4c7a66a4a1c21b722ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":10,"files":["jc/parsers/date.py"]},"message":"cover empty data case in process"},{"commit":"37d3bc699c7be16955be06840d242980f05f1074","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":224,"deletions":1,"files":["CHANGELOG","docgen.sh","docs/parsers/date.md","jc/cli.py","jc/parsers/date.py","man/jc.1"]},"message":"add date parser"},{"commit":"672fd18016b8122510b6ab246b5675b7fd399b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"date bump"},{"commit":"bc2c23a2a09b96d34bb80f69fdc7751fb5ac3ed4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"version bump"},{"commit":"865f7e78124e382c6d315702fa6e48f2104cee46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["man/jc.1"]},"message":"add kv parser to man page"},{"commit":"720212b552e1bd2b9196dd5f06e4b3f85d463531","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":9,"files":["EXAMPLES.md"]},"message":"fixup traceroute example with new behavior"},{"commit":"d3be61f60837801d5a505dc2520cc80c874a6092","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]},"message":"version bump"},{"commit":"13418b16b8fd78fdd97ac045ec3fe9aa59d46080","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":2,"files":["docs/parsers/traceroute.md","jc/parsers/traceroute.py"]},"message":"doc update"},{"commit":"42d2017cd6f5ee1d1a92bd4958cd63366c1e715d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":18,"insertions":41,"deletions":24,"files":["CHANGELOG","jc/parsers/traceroute.py","tests/fixtures/centos-7.7/traceroute.json","tests/fixtures/freebsd12/traceroute.json","tests/fixtures/freebsd12/traceroute6.json","tests/fixtures/generic/traceroute1.json","tests/fixtures/generic/traceroute2.json","tests/fixtures/generic/traceroute3.json","tests/fixtures/generic/traceroute5.json","tests/fixtures/generic/traceroute6.json","tests/fixtures/generic/traceroute7.json","tests/fixtures/osx-10.14.6/traceroute-asn.json",".../fixtures/osx-10.14.6/traceroute-no-header.json","tests/fixtures/osx-10.14.6/traceroute-q.json","tests/fixtures/osx-10.14.6/traceroute.json",".../osx-10.14.6/traceroute6-mult-addresses.json","tests/fixtures/osx-10.14.6/traceroute6.json","tests/test_traceroute.py"]},"message":"traceroute updates: handle missing header row, add annotations, don't print timeouts as probes"},{"commit":"4345e76ead2a49ae0691077e9fbd2b6c5fdfd129","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"]},"message":"change to use --kv for key/value files"},{"commit":"741431322ba2677355c361fcd6095ed8cd0a4349","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":46,"deletions":24,"files":["tests/test_ini.py","tests/test_kv.py"]},"message":"update tests for kv parser"},{"commit":"980beaaf41a04891f7c2f5daeb1e3a23d3c7ec19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/ifconfig.py"]},"message":"fix docgen issue"},{"commit":"2205034e0906b333c259648f7a0e5392945f12ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":105,"deletions":31,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","jc/cli.py","jc/parsers/ini.py","jc/parsers/kv.py","setup.py"]},"message":"add kv parser"},{"commit":"82b9c87a66fce5d8626c56858a8c6f1f3326e7fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":58,"insertions":345,"deletions":62,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/readme.md","docs/utils.md"]},"message":"update docs"},{"commit":"dda517a937323b9888e081aea1032a9d63c4a6bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":163,"files":["README.md"]},"message":"shorten more examples"},{"commit":"4e6d283b9eddf7759b4dd37bd643394ff73febd4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":65,"files":["README.md"]},"message":"shorten netstat example"},{"commit":"55acab05aa740dfd7534304f2678b60942cad116","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["changelog.txt => CHANGELOG"]},"message":"change name to CHANGELOG"},{"commit":"ed38a18d236cdb991779f4f148e42359c139e61c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":86,"files":["README.md"]},"message":"remove more examples"},{"commit":"95b3c11203d3dd0627c5eeca39fe1d145bf2d733","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":124,"files":["README.md"]},"message":"remove more examples"},{"commit":"dce318f4fd44b9c4013211bf233020e84566ddb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1537,"files":["README.md"]},"message":"remove examples to reduce file size"},{"commit":"85127f0fb8096192b19fca1f4ffe38ee391351be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["jc/examples.md => EXAMPLES.md"]},"message":"move examples to root"},{"commit":"fb45058244ce879f12bbb5b7267b0fd63fef1d63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2640,"deletions":0,"files":["jc/examples.md"]},"message":"add examples file"},{"commit":"45bb5ae389a00ed6a132a65c69ce76c7e5976858","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"spelling"},{"commit":"339238ab364d8735892a11cb16a62a651edae169","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":79,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py","tests/fixtures/centos-7.7/route-6-n.json","tests/fixtures/centos-7.7/route-6-n.out","tests/fixtures/centos-7.7/route-6.json","tests/fixtures/centos-7.7/route-6.out","tests/test_route.py"]},"message":"version bump and add route -6 tests"},{"commit":"032cda8b3db096b690d2557e3b918c50c716c543","merge":"690ac52 6badd3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #74 from kellyjonbrazil/dev"},{"commit":"6badd3fb1e1cf6d1ee99614fadc20d54be8039aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["tests/test_cli.py"]},"message":"add parser count test"},{"commit":"724d825745b6f1692eb3b068c3fb59d14892e690","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["man/jc.1"]},"message":"add tracepath parser"},{"commit":"ff1e32ad2ee156f105f5069c6b14a65b22784dfa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump"},{"commit":"a5f97febd3066b9e95a18d6b73162a7d206c5845","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":132,"deletions":0,"files":["tests/fixtures/centos-7.7/tracepath.json","tests/fixtures/centos-7.7/tracepath6.json","tests/fixtures/freebsd12/traceroute.json","tests/fixtures/freebsd12/traceroute.out","tests/fixtures/freebsd12/traceroute6.json","tests/fixtures/freebsd12/traceroute6.out","tests/fixtures/osx-10.14.6/uname.out","tests/test_tracepath.py","tests/test_traceroute.py","tests/test_uname.py"]},"message":"update traceroute, tracepath, and uname tests"},{"commit":"5baa6cc865634142690e78596c640db35e110b29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]},"message":"add route parser update"},{"commit":"7a4f30b843d8f11711abbb8f9bb263f945ff87ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/route.py"]},"message":"fix for iface issue"},{"commit":"b2c385dc4f63e3e15f47e986deac0524967214a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"]},"message":"change 'if' to 'iface'"},{"commit":"5d5da8d33fa6ab77c745d338d1a2e2e8f2e4c697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/route.py"]},"message":"more fixes for ipv6 fix"},{"commit":"e60457157839daba385202906997dec48c9c4950","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"]},"message":"fix next_hop fix"},{"commit":"f9dacc3f95b32e1431914ae0b0dc5c8e8840d5a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/route.py"]},"message":"fixup for ipv6"},{"commit":"6086920332575cd7db1b38262a3b4ba8fbfae7ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]},"message":"update ParseError message"},{"commit":"f52f3163bcaf8d7e784f02505e81456e8240295b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":49,"deletions":0,"files":["README.md"]},"message":"add tracepath example"},{"commit":"d18ff73e880c7d34957f2713857cc83094f914cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/tracepath.py"]},"message":"update author info"},{"commit":"1e5d602caecd96c9056ad77f9fc50cf25bf6fdfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":288,"deletions":32,"files":["docs/parsers/tracepath.md","jc/parsers/tracepath.py"]},"message":"working tracepath parser"},{"commit":"12912521ecb376c36dfdd743b3c4195598fb9aac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":11,"files":["docs/parsers/traceroute.md","jc/parsers/traceroute.py"]},"message":"doc update"},{"commit":"842ea3a94bec3fcab76257fdde5514d1de3d57fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":153,"deletions":0,"files":["docs/parsers/tracepath.md","jc/parsers/tracepath.py"]},"message":"add tracepath parser skeleton"},{"commit":"a8560dbc1598fa97de87594228b4cc10282d4197","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add tracepath"},{"commit":"a65e27540a8c5c7123d2fdf79fcbefa1e2f8afdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":24,"files":["docgen.sh","docs/parsers/traceroute.md","jc/parsers/traceroute.py"]},"message":"update docs"},{"commit":"c3c5ed11e68938e35920144406d37ea3b21d63dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]},"message":"change name from tr to trparse"},{"commit":"ce24149335cd8ed1e8513a2cf040432fe42d86b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping.py"]},"message":"formatting"},{"commit":"0314ca8c4831d24c169a0e4948421ecd638fd699","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add trparse acknowledgement"},{"commit":"ebd8ee49a9f43063850e30c745c8cae46ee13de1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":1,"files":["README.md"]},"message":"add key/value info to ini example"},{"commit":"38d10c97814ec69586c3b447c182f339772d6e22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":130,"deletions":1,"files":["README.md"]},"message":"add ping and traceroute examples"},{"commit":"360106c24d24e6a9697c00a158a14aaa334a4b1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]},"message":"add tracepath"},{"commit":"ca470a5d02fd9fbaf05d8b3b3bb1ffe9f4cf5af3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":39,"deletions":0,"files":["tests/fixtures/centos-7.7/tracepath.out","tests/fixtures/centos-7.7/tracepath6.out"]},"message":"add tracepath fixtures"},{"commit":"57f66e6b1d554ff20b72959f5ebb9e7b2feffed2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":2,"files":["changelog.txt","jc/parsers/uname.py"]},"message":"add exception with hint to use \"uname -a\""},{"commit":"e774f67924c0e6195f79829b2ac75ce95f76fbaa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["jc/parsers/ini.py"]},"message":"turn off interpolation and coerce None to ''"},{"commit":"ac10e576c167d20de259e47a6aa5b23fc998b4c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/ini.md","jc/parsers/ini.py"]},"message":"spelling"},{"commit":"bcae0a99cd0ccce4ec8a67929f7c83a1095a5b88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"]},"message":"add key/value to ini description"},{"commit":"c73c2ff879b3ed7a3e6f04e53e0a729e4f00ed21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["changelog.txt"]},"message":"add ping, traceroute, and ini update"},{"commit":"c39b1a3356881a11a8f6fe9432897e6d67162f07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["README.md"]},"message":"add ping, traceroute and update ini description"},{"commit":"125dc2d9e051a82a4a438afe2e520212338353f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":3,"files":["docs/parsers/ini.md"]},"message":"add info about key/value files to doc"},{"commit":"b7d4ddc7ced2c3aabf3a857b53a0bf1b62eb6a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":50,"deletions":0,"files":["tests/fixtures/generic/keyvalue-ifcfg.json","tests/fixtures/generic/keyvalue-ifcfg.txt","tests/fixtures/generic/keyvalue.json","tests/fixtures/generic/keyvalue.txt","tests/test_ini.py"]},"message":"add tests for key/value files"},{"commit":"f5e546c6fa7cba166284a0976887d6b82451d3e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":33,"deletions":9,"files":["jc/parsers/ini.py"]},"message":"add support for simple key/value pairs"},{"commit":"928e39cd103b96b8c3ccc8d85c930ffb419296c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":104,"deletions":0,"files":["tests/fixtures/generic/traceroute1.json","tests/fixtures/generic/traceroute2.json","tests/fixtures/generic/traceroute3.json","tests/fixtures/generic/traceroute4.json","tests/fixtures/generic/traceroute5.json","tests/fixtures/generic/traceroute6.json","tests/fixtures/generic/traceroute7.json","tests/fixtures/generic/traceroute8.json","tests/test_traceroute.py"]},"message":"add generic traceroute tests"},{"commit":"d0b7ea68a005daff313e44808b256656313a78a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/traceroute.py"]},"message":"check for key in dictionary"},{"commit":"8444690133b6a7522822ab279e97ede6ded17ba9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["man/jc.1"]},"message":"add traceroute"},{"commit":"c03c42d76703ff8f423cf3c10ea6254a27a685cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":76,"deletions":9,"files":["tests/fixtures/centos-7.7/traceroute.json","tests/fixtures/osx-10.14.6/traceroute-asn.json",".../osx-10.14.6/traceroute-mult-addresses.json","tests/fixtures/osx-10.14.6/traceroute-q.json","tests/fixtures/osx-10.14.6/traceroute.json",".../osx-10.14.6/traceroute6-mult-addresses.json","...-address.out => traceroute6-mult-addresses.out}","tests/fixtures/osx-10.14.6/traceroute6.json","tests/test_traceroute.py"]},"message":"add traceroute tests"},{"commit":"ab67688a00ac335d2a5603e9cadef8b565957911","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":55,"deletions":0,"files":["tests/test_traceroute.py"]},"message":"add test skeleton"},{"commit":"5dcb7166daef3c53da65bba0d591672e64d3a90b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":169,"deletions":0,"files":["docgen.sh","docs/parsers/traceroute.md"]},"message":"add traceroute doc"},{"commit":"14697b86d7fc1cfebb41e0fd2d9a9b9b60071d3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":2,"files":["jc/parsers/traceroute.py"]},"message":"add MIT license"},{"commit":"4f4b6276d4bf798b17d996f39742bd0428fc2f19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":38,"deletions":33,"files":["jc/parsers/traceroute.py"]},"message":"update docstring"},{"commit":"7bc497e1291059ae7858c9d2bd2d9a1b4c030dd1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":117,"deletions":14,"files":["jc/parsers/traceroute.py"]},"message":"updated process() function to set integers and floats"},{"commit":"68a37a6a5a3f0ad0fa24c84d363050af9fa11f97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/parsers/traceroute.py"]},"message":"remove unused function load()"},{"commit":"6f5cd1d7c5f76d7d4da42171fdc30daf9fe3996e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]},"message":"change to use f-string"},{"commit":"126b1b121ca10183dc7e9dece83b42907becad39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":0,"files":["tests/fixtures/generic/traceroute8.out"]},"message":"add traceroute6 example"},{"commit":"2341e456a012564f86d533d2748a5887d79995e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"]},"message":"use ParseError instead of generic Exception"},{"commit":"72d80e95bb50ae2a7432082e65aba15235ba0955","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":115,"deletions":8,"files":["jc/parsers/traceroute.py","tests/fixtures/generic/traceroute1.out","tests/fixtures/generic/traceroute2.out","tests/fixtures/generic/traceroute3.out","tests/fixtures/generic/traceroute4.out","tests/fixtures/generic/traceroute5.out","tests/fixtures/generic/traceroute6.out","tests/fixtures/generic/traceroute7.out"]},"message":"remove unused regex patterns"},{"commit":"f5ec82440cd1c1b5ac9011d3517298d0cdcd8766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/traceroute.py"]},"message":"simplify regex patterns"},{"commit":"c8e526ead35b868733f57b4c114062a48b78a817","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":3,"files":["jc/parsers/traceroute.py","tests/fixtures/osx-10.14.6/traceroute-q.out"]},"message":"fixes for bsd-style ipv6 output"},{"commit":"066adfb76479df7042bfb12bbb83b5dbd8a6d54c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":83,"deletions":7,"files":["jc/parsers/traceroute.py","tests/fixtures/centos-7.7/traceroute.out","tests/fixtures/osx-10.14.6/traceroute-asn.out",".../osx-10.14.6/traceroute-mult-addresses.out",".../fixtures/osx-10.14.6/traceroute-no-header.out",".../osx-10.14.6/traceroute6-multi-address.out","tests/fixtures/osx-10.14.6/traceroute6.out"]},"message":"handle warning lines in the traceroute output"},{"commit":"5b444d4717b0b8528647e17e71d699907def3e18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":307,"deletions":0,"files":["jc/cli.py","jc/parsers/traceroute.py","tests/fixtures/osx-10.14.6/traceroute.out"]},"message":"add traceroute parser"},{"commit":"69c95adc8d59927c1c00b7e766ca5003b7b6454c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":81,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ping6-ip-dup.json","tests/fixtures/osx-10.14.6/ping6-ip-dup.out","tests/test_ping.py"]},"message":"add osx ipv6 ping dup test"},{"commit":"2b0e0d8f5c1a6a5450e362971f9ad5892093b2ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":27,"deletions":0,"files":["tests/fixtures/centos-7.7/ping6-ip-dup.json","tests/fixtures/centos-7.7/ping6-ip-dup.out","tests/test_ping.py"]},"message":"add ipv6 dup test"},{"commit":"778d1bacbf8df523d434b22f5e1517955e4c15ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":28,"deletions":12,"files":["docs/parsers/ping.md","jc/parsers/ping.py"]},"message":"update docs to add \"duplicates\" fields"},{"commit":"7e1b0410166c584775ebcd681a280ec7321560c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":0,"files":["tests/test_ping.py"]},"message":"add duplicate replies tests"},{"commit":"313b9b329ca6b674069718839f55a4bd7834db80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":55,"insertions":55,"deletions":53,"files":["tests/fixtures/centos-7.7/ping-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping-hostname-O-p.json","tests/fixtures/centos-7.7/ping-hostname-O.json","tests/fixtures/centos-7.7/ping-ip-O-D.json","tests/fixtures/centos-7.7/ping-ip-O.json","tests/fixtures/centos-7.7/ping-ip-dup.json","tests/fixtures/centos-7.7/ping6-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping6-hostname-O-p.json","tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","tests/fixtures/centos-7.7/ping6-ip-O-p.json","tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping-hostname-O-p.json","tests/fixtures/fedora32/ping-hostname-O.json","tests/fixtures/fedora32/ping-ip-O-D.json","tests/fixtures/fedora32/ping-ip-O.json","tests/fixtures/fedora32/ping6-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping6-hostname-O-D-p.json","tests/fixtures/fedora32/ping6-hostname-O-p.json","tests/fixtures/fedora32/ping6-ip-O-D-p.json","tests/fixtures/fedora32/ping6-ip-O-p.json","tests/fixtures/freebsd12/ping-hostname-p.json","tests/fixtures/freebsd12/ping-hostname-s.json","tests/fixtures/freebsd12/ping-hostname.json","tests/fixtures/freebsd12/ping-ip-p.json","tests/fixtures/freebsd12/ping-ip-s.json","tests/fixtures/freebsd12/ping-ip.json","tests/fixtures/freebsd12/ping6-hostname-p.json","tests/fixtures/freebsd12/ping6-hostname-s.json","tests/fixtures/freebsd12/ping6-hostname.json","tests/fixtures/freebsd12/ping6-ip-p.json","tests/fixtures/freebsd12/ping6-ip-s.json","tests/fixtures/freebsd12/ping6-ip.json","tests/fixtures/osx-10.14.6/ping-hostname-p.json","tests/fixtures/osx-10.14.6/ping-hostname-s.json","tests/fixtures/osx-10.14.6/ping-hostname.json","tests/fixtures/osx-10.14.6/ping-ip-dup.json","tests/fixtures/osx-10.14.6/ping-ip-p.json","tests/fixtures/osx-10.14.6/ping-ip-s.json","tests/fixtures/osx-10.14.6/ping-ip.json","tests/fixtures/osx-10.14.6/ping6-hostname-p.json","tests/fixtures/osx-10.14.6/ping6-hostname-s.json","tests/fixtures/osx-10.14.6/ping6-hostname.json","tests/fixtures/osx-10.14.6/ping6-ip-p.json","tests/fixtures/osx-10.14.6/ping6-ip-s.json","tests/fixtures/osx-10.14.6/ping6-ip.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping-hostname-O.json","tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","tests/fixtures/ubuntu-18.04/ping-ip-O.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json"]},"message":"update fixtures for added 'duplicate' fields"},{"commit":"6830062256fbc453f87224f7ab8c10e4494b5a83","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":112,"deletions":24,"files":["docs/parsers/ping.md","jc/parsers/ping.py","tests/fixtures/centos-7.7/ping-ip-dup.out","tests/fixtures/osx-10.14.6/ping-ip-dup.out"]},"message":"add support for duplicate replies"},{"commit":"323072c9827c41c5d74433504b5efceb846cfe09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/ping.md","jc/parsers/ping.py"]},"message":"add source_ip to schema doc"},{"commit":"8719d96bddec80187e7ba3286ba93bfec8465744","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"change description"},{"commit":"dd5d318ab5bbb1027dd600fd3b0b6ec9b8adfdc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["man/jc.1"]},"message":"version bump and add ping command"},{"commit":"d6dc7f5e65c097895c19000e59e8803a3b350fdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":135,"deletions":29,"files":["tests/fixtures/osx-10.14.6/ping-hostname-p.json","tests/fixtures/osx-10.14.6/ping-hostname-s.json","tests/fixtures/osx-10.14.6/ping-hostname.json","tests/fixtures/osx-10.14.6/ping-ip-p.json","tests/fixtures/osx-10.14.6/ping-ip-s.json","tests/fixtures/osx-10.14.6/ping-ip.json","tests/fixtures/osx-10.14.6/ping6-hostname-p.json","tests/fixtures/osx-10.14.6/ping6-hostname-s.json","tests/fixtures/osx-10.14.6/ping6-hostname.json","tests/fixtures/osx-10.14.6/ping6-ip-p.json","tests/fixtures/osx-10.14.6/ping6-ip-s.json","tests/fixtures/osx-10.14.6/ping6-ip.json","tests/test_ping.py"]},"message":"add osx ping tests"},{"commit":"c203664eb5aafa0afa3101b79e3fd13b3e009ec5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":171,"deletions":9,"files":["tests/fixtures/freebsd12/ping-hostname-p.json","tests/fixtures/freebsd12/ping-hostname-s.json","tests/fixtures/freebsd12/ping-hostname.json","tests/fixtures/freebsd12/ping-ip-p.json","tests/fixtures/freebsd12/ping-ip-s.json","tests/fixtures/freebsd12/ping-ip.json","tests/fixtures/freebsd12/ping6-hostname-p.json","tests/fixtures/freebsd12/ping6-hostname-s.json","tests/fixtures/freebsd12/ping6-hostname.json","tests/fixtures/freebsd12/ping6-ip-p.json","tests/fixtures/freebsd12/ping6-ip-s.json","tests/fixtures/freebsd12/ping6-ip.json","tests/test_ping.py"]},"message":"freebsd ping tests"},{"commit":"19ecf1fa19e9fa0873002baf07fa670b71ed7752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":118,"deletions":0,"files":["tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping-hostname-O-p.json","tests/fixtures/fedora32/ping-hostname-O.json","tests/fixtures/fedora32/ping-ip-O-D.json","tests/fixtures/fedora32/ping-ip-O.json",".../fixtures/fedora32/ping6-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping6-hostname-O-D-p.json","tests/fixtures/fedora32/ping6-hostname-O-p.json","tests/fixtures/fedora32/ping6-ip-O-D-p.json","tests/fixtures/fedora32/ping6-ip-O-p.json","tests/test_ping.py"]},"message":"add Fedora32 tests"},{"commit":"b8deb0426cc23333c0e0a9dc3776d9761d99abb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":119,"deletions":8,"files":[".../ubuntu-18.04/ping-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping-hostname-O.json","tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","tests/fixtures/ubuntu-18.04/ping-ip-O.json",".../ubuntu-18.04/ping6-hostname-O-D-p-s.json",".../ubuntu-18.04/ping6-hostname-O-D-p.json",".../fixtures/ubuntu-18.04/ping6-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json","tests/test_ping.py"]},"message":"add ubuntu ping tests"},{"commit":"3b8371f0208a097cb8a1c026348d3842e6702b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":202,"deletions":0,"files":[".../fixtures/centos-7.7/ping-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping-hostname-O-p.json","tests/fixtures/centos-7.7/ping-hostname-O.json","tests/fixtures/centos-7.7/ping-ip-O-D.json","tests/fixtures/centos-7.7/ping-ip-O.json",".../centos-7.7/ping6-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping6-hostname-O-p.json","tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","tests/fixtures/centos-7.7/ping6-ip-O-p.json","tests/test_ping.py"]},"message":"add centos ping tests"},{"commit":"20bb1cdf396abdb3707b34fa146cbe913f9bbd6f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/ping.py"]},"message":"add TypeError to except for None values"},{"commit":"301daa48d0bfc28f97c8e46f028f8c6b875bf34e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":114,"deletions":16,"files":["docs/parsers/ping.md","jc/parsers/ping.py"]},"message":"update documentation"},{"commit":"8421ec88033e02f472e4961d87551a0352663a16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ping.py"]},"message":"remove cygwin compatibility"},{"commit":"74211eb0129f6aa655a38ba4d4d8844d81441107","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":82,"deletions":5,"files":["jc/parsers/ping.py"]},"message":"add examples"},{"commit":"60bd42f298f309cbec6d24c9543ea3d51bd73b18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":59,"deletions":11,"files":["jc/parsers/ping.py"]},"message":"add process() logic"},{"commit":"14bdd74526e400997c5bc247ea35ed40799e83ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":100,"deletions":0,"files":["tests/fixtures/freebsd12/ping-hostname-p.out","tests/fixtures/freebsd12/ping-hostname-s.out","tests/fixtures/freebsd12/ping-hostname.out","tests/fixtures/freebsd12/ping-ip-p.out","tests/fixtures/freebsd12/ping-ip-s.out","tests/fixtures/freebsd12/ping-ip.out","tests/fixtures/freebsd12/ping6-hostname-p.out","tests/fixtures/freebsd12/ping6-hostname-s.out","tests/fixtures/freebsd12/ping6-hostname.out","tests/fixtures/freebsd12/ping6-ip-p.out","tests/fixtures/freebsd12/ping6-ip-s.out","tests/fixtures/freebsd12/ping6-ip.out"]},"message":"add ping test fixtures"},{"commit":"fb0f3eda04a4b1dbb81da7d5791cbfe746bfd617","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["tests/fixtures/create_fixtures.sh"]},"message":"add ping commands"},{"commit":"91ee6e6701307363336a39f9e16641465ddd05c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":100,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ping-hostname-p.out","tests/fixtures/osx-10.14.6/ping-hostname-s.out","tests/fixtures/osx-10.14.6/ping-hostname.out","tests/fixtures/osx-10.14.6/ping-ip-p.out","tests/fixtures/osx-10.14.6/ping-ip-s.out","tests/fixtures/osx-10.14.6/ping-ip.out","tests/fixtures/osx-10.14.6/ping6-hostname-p.out","tests/fixtures/osx-10.14.6/ping6-hostname-s.out","tests/fixtures/osx-10.14.6/ping6-hostname.out","tests/fixtures/osx-10.14.6/ping6-ip-p.out","tests/fixtures/osx-10.14.6/ping6-ip-s.out","tests/fixtures/osx-10.14.6/ping6-ip.out"]},"message":"add osx ping test fixtures"},{"commit":"51f4e6927c68a7e2a26954f564d10d316b98a984","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":3,"files":["jc/parsers/ping.py"]},"message":"add support for pattern in osx/bsd"},{"commit":"94988d86674293faddc6f7e7c82575738d2dc791","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":257,"deletions":0,"files":["tests/fixtures/fedora32/ping-hostname-O-D-p-s.out","tests/fixtures/fedora32/ping-hostname-O-p.out","tests/fixtures/fedora32/ping-hostname-O.out","tests/fixtures/fedora32/ping-ip-O-D.out","tests/fixtures/fedora32/ping-ip-O.out","tests/fixtures/fedora32/ping6-hostname-O-D-p-s.out","tests/fixtures/fedora32/ping6-hostname-O-D-p.out","tests/fixtures/fedora32/ping6-hostname-O-p.out","tests/fixtures/fedora32/ping6-ip-O-D-p.out","tests/fixtures/fedora32/ping6-ip-O-p.out"]},"message":"add fedora ping fixtures"},{"commit":"fe36f5a98cd3ee7753e250b6553e4453d971f929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":318,"deletions":0,"files":["tests/fixtures/centos-7.7/ping-ip-O-D.out","tests/fixtures/centos-7.7/ping-ip-O.out","tests/fixtures/create_fixtures.sh",".../ubuntu-18.04/ping-hostname-O-D-p-s.out","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.out","tests/fixtures/ubuntu-18.04/ping-hostname-O.out","tests/fixtures/ubuntu-18.04/ping-ip-O-D.out","tests/fixtures/ubuntu-18.04/ping-ip-O.out",".../ubuntu-18.04/ping6-hostname-O-D-p-s.out",".../fixtures/ubuntu-18.04/ping6-hostname-O-D-p.out","tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.out","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.out","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.out"]},"message":"add fixtures for ping"},{"commit":"f9eb18b9271b2428dd82f2dc26d3fa0435dad81d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/ping.py"]},"message":"change 'request_timeout' field to 'type', fix compatibility, other formatting fixes"},{"commit":"cc60f3674822c644933f286a0364b09d7e2a60b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":67,"deletions":1,"files":["docgen.sh","docs/parsers/ping.md","jc/cli.py"]},"message":"add ping parser"},{"commit":"604ade791f7bd33b37f64916befba27a2ea08b5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":506,"deletions":0,"files":["jc/parsers/ping.py",".../fixtures/centos-7.7/ping-hostname-O-D-p-s.out","tests/fixtures/centos-7.7/ping-hostname-O-p.out","tests/fixtures/centos-7.7/ping-hostname-O.out",".../fixtures/centos-7.7/ping6-hostname-O-D-p-s.out","tests/fixtures/centos-7.7/ping6-hostname-O-p.out","tests/fixtures/centos-7.7/ping6-ip-O-D-p.out","tests/fixtures/centos-7.7/ping6-ip-O-p.out"]},"message":"add ping parser"},{"commit":"690ac52a917200e46eac2feafc9f504f2734301c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":261,"deletions":0,"files":["man/jc.1"]},"message":"add man page"},{"commit":"34ed772775f1f02ed148f24a3bfff532bc811607","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"d5ab95571f64f55d8194e9e5592ac538bb535229","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":11,"files":["tests/test_cli.py"]},"message":"fix tests when using older versions of pygments"},{"commit":"ffb3a0ee5fb30a3f61d6cbedf877ab04acdbf624","merge":"fde0bc8 94b12b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #73 from kellyjonbrazil/dev"},{"commit":"94b12b57aaa56170d1f31f4910fd1239f88de137","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"spelling"},{"commit":"6d149e84571d5d6dd1d8a1f219ba299de5173779","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":1,"files":["changelog.txt","setup.py"]},"message":"version bump"},{"commit":"1ad89c90d890039b817f65b2635db1b5e849a9e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add pacman"},{"commit":"fb71c7b020bc1eda9484595f30b0200a4f59aa45","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_cli.py"]},"message":"function name spelling"},{"commit":"28ed17ad3bce866e5dc0179ef5de43380ac6ace1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_cli.py"]},"message":"add parser_count test to test_cli_about_jc"},{"commit":"0c2a4e2bf71dca50d4a9bb27ca99944909c022ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["tests/test_cli.py"]},"message":"add cli tests"},{"commit":"62bec30de2f1a303f2ec411d89f7f9f9c6d1abaf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":0,"files":["tests/test_cli.py"]},"message":"add json_out tests"},{"commit":"3fced77e4e258dbf7db94a313e599c830a597b49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":98,"deletions":1,"files":["tests/test_cli.py"]},"message":"add set_env_colors tests"},{"commit":"a09d1d8b7687912610598c88d172733d5e29b1ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":6,"files":["jc/cli.py"]},"message":"move environment variable assignment to main() to simplify tests"},{"commit":"8f4243fbd8d70ca9fd019e984c564e37c81e07db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"47aaf20549ea238443427e69d5841d6996b7afab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":17,"deletions":0,"files":["README.md"]},"message":"add sysctl command parser"},{"commit":"0c5289ea50e4d3d35e80147b4cad32434c19a2a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":72,"deletions":2,"files":["tests/fixtures/freebsd12/sysctl-a.json","tests/fixtures/osx-10.14.6/sysctl-a.json","tests/test_sysctl.py"]},"message":"add sysctl tests"},{"commit":"3e53323514906fb84abfaeed0c2ee1fd9090ad8d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/sysctl.py"]},"message":"don't filter out empty lines"},{"commit":"a5ee9861b9b9b479aee59ea5b1d75f20d7c3c8e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3785,"deletions":1,"files":["tests/fixtures/freebsd12/sysctl-a.json","tests/fixtures/freebsd12/sysctl-a.out","tests/fixtures/osx-10.14.6/sysctl-a.json"]},"message":"update fixtures"},{"commit":"feb8ca76545cba4fd0927273ddf90a77df994006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/sysctl.md"]},"message":"spelling"},{"commit":"a7abe4473b90c512466db9ae98cfac585689fe2a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/sysctl.py"]},"message":"spelling"},{"commit":"780b9b61dec3e142e46c9a82146d2af4e1144123","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/sysctl.py"]},"message":"specify IndexError exception in try/except block"},{"commit":"19ace36ffa659bedf0ba2e43572c9e253592b2e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2167,"deletions":0,"files":["tests/fixtures/osx-10.14.6/sysctl-a.json","tests/fixtures/osx-10.14.6/sysctl-a.out","tests/fixtures/ubuntu-18.04/sysctl-a.json","tests/fixtures/ubuntu-18.04/sysctl-a.out"]},"message":"add fixtures"},{"commit":"5fff8afc9f47f8cc6db8ed3613b90b5cdc683b43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":33,"deletions":11,"files":["jc/parsers/sysctl.py"]},"message":"add fixes for freebsd where values can be on separate lines under the key"},{"commit":"4ad230c9279c5eb6c8ed6baf7254b8e9328e5af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":929,"deletions":14,"files":["docs/parsers/sysctl.md","jc/parsers/sysctl.py","tests/fixtures/centos-7.7/sysctl-a.json","tests/fixtures/centos-7.7/sysctl-a.out"]},"message":"doc update and add test fixtures"},{"commit":"dd98eb1ec8f451eb87a5094e76a7f758dee3fc69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":7,"files":["jc/parsers/sysctl.py"]},"message":"append duplicate key values to original key instead of adding unique keys"},{"commit":"c6baf42e72b4f41ed511e7db943297d03a39c0d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":94,"deletions":7,"files":["docgen.sh","docs/parsers/sysctl.md","jc/parsers/sysctl.py"]},"message":"doc updates"},{"commit":"e2bac97d563e5ef771ccd8ed1e5c42cbf588b120","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["jc/parsers/sysctl.py"]},"message":"fix for multiple identical keys in sysctl output"},{"commit":"d112ee94d0ec534828c8508d0fb833b768975990","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":4,"files":["jc/parsers/sysctl.py"]},"message":"use try/except and add support for floats in process()"},{"commit":"27b21b2fafab912f21b88b66c7f817cbce155765","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":7,"files":["jc/cli.py"]},"message":"formatting and docstring updates"},{"commit":"8c96d5cd20448a4f7f9736c4d489d6ecc3068ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["requirements.txt"]},"message":"reduce pygments version requirement"},{"commit":"c29ed3fd695f725005333db5e6e2cd844bb4ca14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":13,"files":["jc/cli.py"]},"message":"formatting of quotation marks and docstrings"},{"commit":"cedf603f121636bdfa95432059c3c275c3ea3e9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/cli.py"]},"message":"minor formatting"},{"commit":"279161c36f288c27a9789054ae372fe8ceb58a94","merge":"bc7116c ce0b43d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #72 from duelafn/pygments-2.3"},{"commit":"ce0b43d919f07d96d1b94e9d14d03e935e80011d","author":"Dean Serenevy","author_email":"dean@serenevy.net","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"]},"message":"Remove dependency on 3rd party packaging library"},{"commit":"ddafa5bf06066bab8e9587be902d6752fcf51605","author":"Dean Serenevy","author_email":"dean@serenevy.net","stats":{"files_changed":2,"insertions":47,"deletions":7,"files":["jc/cli.py","setup.py"]},"message":"Support older pygments"},{"commit":"bc7116c31bacf3159aef775fd0e615187420b010","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":8,"files":["jc/cli.py"]},"message":"fix JC_COLORS env bug and simplify set_env_colors()"},{"commit":"53b709272115e769dac905296fa3b000c1cdd66a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":11,"files":["jc/cli.py"]},"message":"remove side-effects from functions and print in main()"},{"commit":"beb9174b1b35937ae1fb99778369ae643a8f1005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":123,"deletions":0,"files":["jc/parsers/sysctl.py"]},"message":"add sysctl parser"},{"commit":"aea41ed341c8d53cc07c35e8044e8f816ddd2fed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/cli.py"]},"message":"move verbose_debug enable earlier in code to catch more issues. add sysctl and version bump"},{"commit":"d789494cb1f691aa352419aaefc692f654477177","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/tracebackplus.py"]},"message":"change type check to use isinstance"},{"commit":"608e7b4cff081f92177e4151ffa1a91a4a6895ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":61,"deletions":0,"files":["jc/tracebackplus.py"]},"message":"add license info"},{"commit":"4ee199c02a78c2707c5d1427d7c8fae56df5671c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":189,"deletions":3,"files":["jc/cli.py","jc/tracebackplus.py"]},"message":"use tracebackplus instead of cgitb since cgitb is depricated"},{"commit":"fbf47d408501dadda4671fb530f5e11859e85d53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add arch linux"},{"commit":"5a238e4b4204f0552327534ef798c28d3ad4f578","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"remove updates-testing from fedora command"},{"commit":"f852b8246a8f9e5f7d9144fed3a0daa4eddfe035","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/utils.py"]},"message":"wrap warning message"},{"commit":"88140d929a500ee78f807862c4912c399df2a460","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"]},"message":"wrap error message in code"},{"commit":"45f726824027af49c437b6e81e4700f7098af320","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"add -dd to error message"},{"commit":"3a3c8e4d4a77135eaee5cb30c3107a4531c300ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/cli.py"]},"message":"move verbose_debug under debug check"},{"commit":"c1ac183a0472e93226c9ee1905f56c5183e3721f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":15,"deletions":22,"files":["jc/cli.py"]},"message":"simplify debug option"},{"commit":"18bb779ee5cd5821764b03173f16e922f753c64d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"formatting: double quotes to single quotes"},{"commit":"8b6612fe7911ab9e0bf8d29be60865d3b8aa3fd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/cli.py"]},"message":"move JC_COLORS parsing error message"},{"commit":"fde0bc853415418e01616861ace5048770bd97f8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":34,"files":["README.md"]},"message":"improve package install info"},{"commit":"e661a78939ff067b8a61f08301c178dd10a344ab","merge":"b969751 847e346","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #71 from wigust/guix"},{"commit":"847e346602789bf58e3515319e9d080dfb897fc9","author":"Oleg Pykhalov","author_email":"go.wigust@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]},"message":"add guix package info"},{"commit":"b9697516887c61f08d8d7b1dc9130350e5bdba9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]},"message":"add other references"},{"commit":"ad6f2ba03a293a7f55e456fa5f5b55ee3cbcd4ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"63c6a5edc0e9001b143595fd8b96f1b4a1377a3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"formatting"},{"commit":"9f4cf9dd5efe94adfff0961fdb73097ca27c5463","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":197,"deletions":67,"files":["README.md"]},"message":"formatting"},{"commit":"51331b6dc01eee00847fa4be549ffde365373a01","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["README.md"]},"message":"formatting"},{"commit":"efb6761033319644bf9cdae6288ff5609f6482ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"6a4f737a0f1c322bebccf69809d9816fc770c5ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":88,"deletions":115,"files":["README.md"]},"message":"update json syntax highlighting"},{"commit":"be6864b778ab721bcba5fc3221576153be7b2ed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":26,"files":["README.md"]},"message":"add syntax highlighting tags"},{"commit":"de3b91a36cfcaf565b26b1da42f1e87835da4dc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add -dd option"},{"commit":"ef5482c3b5afa0ee8e85851bebab1c104cb59936","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":15,"deletions":7,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"add verbose debug option"},{"commit":"d20b795137036f8b889eb231cb4f14b756ec6479","merge":"69018cd 8a13406","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #70 from kellyjonbrazil/dev"},{"commit":"8a134065dff429551449c1ea16a36d745fdab580","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":12,"deletions":12,"files":["tests/fixtures/centos-7.7/iptables-filter-line-numbers.json","tests/fixtures/centos-7.7/iptables-filter-nv.json","tests/fixtures/centos-7.7/iptables-filter.json","tests/fixtures/centos-7.7/iptables-mangle.json","tests/fixtures/centos-7.7/iptables-nat.json","tests/fixtures/centos-7.7/iptables-raw.json","tests/fixtures/ubuntu-18.04/iptables-filter-line-numbers.json","tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","tests/fixtures/ubuntu-18.04/iptables-filter.json","tests/fixtures/ubuntu-18.04/iptables-mangle.json","tests/fixtures/ubuntu-18.04/iptables-nat.json","tests/fixtures/ubuntu-18.04/iptables-raw.json"]},"message":"update fixtures for last chain fix"},{"commit":"22aee1bfa40ed1d3c4df28cd934ef0edfc5c458c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"b282820fd67dcc96c058198f97b066e7b402d1f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/iptables.py"]},"message":"fix to include the final chain in output"},{"commit":"3ee098306daf903687cb0febf92773a81e216111","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"]},"message":"version bump"},{"commit":"09e8f379a64b3b37bb99b4291c10aa4a5cdedea4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":11,"files":["jc/parsers/iptables.py"]},"message":"iptables code optimizations"},{"commit":"69018cdb3a77fcdcb5648e3b89933148c55a6412","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"fix date"},{"commit":"d0d7254c6acc7be4341618d231a5b166f640b287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":26,"deletions":0,"files":["docs/utils.md","jc/utils.py"]},"message":"add docstring"},{"commit":"cc0f0971d76b6f3dec8d989e83f5676db8f2c6d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":56,"insertions":476,"deletions":439,"files":["changelog.txt","jc/cli.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/utils.py","setup.py"]},"message":"Improve and standardize empty data check for all parsers"},{"commit":"2af61730f0f5b9bc6f1f4c5d9d808ff6ccb0faeb","merge":"07b179c 83f41b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #68 from kellyjonbrazil/dev"},{"commit":"83f41b83dc01c462c6a2295e9fc56ad42a3b62f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"1fb84fce88e0306c26a5771fa4c6dc14a21409a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":16,"insertions":137,"deletions":67,"files":["changelog.txt","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/xml.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py","tests/test_timedatectl.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py","tests/test_who.py","tests/test_xml.py","tests/test_yaml.py"]},"message":"fix for no data"},{"commit":"a8837e12447c52dbe438b19c07777b9b4a22081c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"remove --upgrade from pip install"},{"commit":"04d2eec5581998d1a80e762b670af76c92111065","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":56,"deletions":30,"files":["changelog.txt","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","tests/test_stat.py","tests/test_systemctl.py","tests/test_systemctl_lj.py"]},"message":"fix for no data"},{"commit":"1b57ec92f052ddc8959540511512190a539262b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":152,"deletions":68,"files":["changelog.txt","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/pip_list.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","tests/fixtures/centos-7.7/ss-sudo-a.json","tests/fixtures/ubuntu-18.04/ss-sudo-a.json","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_ntpq.py","tests/test_passwd.py","tests/test_pip_list.py","tests/test_pip_show.py","tests/test_ps.py","tests/test_route.py","tests/test_shadow.py","tests/test_ss.py"]},"message":"fix for no data"},{"commit":"4d8859540417e99e273fda2cea959240f3c37ea3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/df.py"]},"message":"enhance empty data check"},{"commit":"52b1272a3aab09b5a8c4a277fbf9975a1b8b6921","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/blkid.py"]},"message":"enhance empty data check"},{"commit":"d2ccad6a83138fbf6eb863634fd354dc6c3fa238","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":33,"deletions":15,"files":["jc/parsers/lsblk.py","jc/parsers/lsmod.py","tests/test_lsblk.py","tests/test_lsmod.py"]},"message":"fix for no data"},{"commit":"cad6dde4ac66cf970a7f52d8e7958ea35c083629","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":60,"deletions":0,"files":["tests/test_group.py","tests/test_gshadow.py","tests/test_history.py","tests/test_hosts.py","tests/test_id.py","tests/test_ifconfig.py","tests/test_ini.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_last.py"]},"message":"fix for no data"},{"commit":"06811c3539b0d871e13e9b8d3b51f731d06fd2ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_fstab.py"]},"message":"add test for no data"},{"commit":"0cb23c2b21f464082609409261de8e95eb1b0d55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":17,"deletions":7,"files":["changelog.txt","jc/parsers/free.py","tests/test_free.py"]},"message":"add fix for no data"},{"commit":"ac4688dca22334385ec2c87027f2f14f9ca93ce4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_file.py"]},"message":"add test for no data"},{"commit":"326c3b4670a0e47cbe2988b38fb1c1b26a4db890","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_env.py"]},"message":"add test for no data"},{"commit":"9b29d0c2688eda2e4707aeba693ed14fa433a706","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_du.py"]},"message":"add test for no data"},{"commit":"e0013c38710b4ecf3a588a16d1d908effc23b485","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["tests/test_dmidecode.py"]},"message":"add test for no data"},{"commit":"a75744075b0628bdb711d8a929a759b4b4067edb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_dig.py"]},"message":"add no data test"},{"commit":"525aec1a02380f17ab7827434616f981f7457bd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":16,"deletions":7,"files":["changelog.txt","jc/parsers/df.py","tests/test_df.py"]},"message":"fix for no data"},{"commit":"0bf9a7a072a80e10a29c6bb3943b107352dc1d45","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_csv.py"]},"message":"add test for no data"},{"commit":"d8f2f4c95bc699386b9fe93d10e13637875a1dcf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":96,"deletions":80,"files":["changelog.txt","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/test_crontab.py","tests/test_crontab_u.py"]},"message":"fix for no data"},{"commit":"35d733b44f3705bed3dd8ce340379470f199f772","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":70,"deletions":60,"files":["changelog.txt","jc/parsers/arp.py","jc/parsers/blkid.py","tests/test_arp.py","tests/test_blkid.py"]},"message":"fix for no data"},{"commit":"9179b4175c5063bed14ecb96ba24c517920c0d94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":16,"deletions":0,"files":["changelog.txt","tests/test_airport.py","tests/test_airport_s.py"]},"message":"add nodata tests"},{"commit":"bb07d78c78ff5c5b2ee4d2086ffc6dd5ebedf0fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":8,"files":["jc/parsers/airport_s.py"]},"message":"add nodata fix"},{"commit":"07b179cd7f8853ff6aca0b27a703e198c158ca72","merge":"12a80e7 054422d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #67 from kellyjonbrazil/Dev"},{"commit":"054422d8373e7b8def18ddabd447062cb9cc3137","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_ls.py"]},"message":"add test for empty directory"},{"commit":"3e052d18102e98a09cbba21866855691eaccc216","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"c8e72805cf9def478b56c925f4afcc0ece1daac0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":10,"files":["jc/parsers/ls.py"]},"message":"fix error on empty directory"},{"commit":"12a80e7db0f6c7d536674ad8d34e26bba9a1f1f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":2,"files":["README.md"]},"message":"add fedora package info"},{"commit":"ee7ff9a09d3373f60ae1645376ccc0057803147e","merge":"346a14c f6478fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #66 from kellyjonbrazil/dev"},{"commit":"f6478fb636ead8d1e53e4a88d59e55222df37a8f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"811a0b0495819925199d70db266066197cc6824e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add info regarding the local parser plugin files"},{"commit":"aeb48edf727f23cc4f8fd9b760cfb69f03098278","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"use $LOCALAPPDATA variable for windows"},{"commit":"b1e94f0df7041bcae97455508f423178aef9d61d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"heading formatting"},{"commit":"60050e3c0fe34980f7db5b8bd46430f953f0c3a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["README.md"]},"message":"fix linux/unix directory and add note about the XDG specification followed"},{"commit":"39ef09aa5b0d43b5128299511afe80336aa38203","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"]},"message":"add local parser plugin feature"},{"commit":"8377d4311611c242e16eaebe66dafac9529150d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"54e4c447ab34ae54c73c92df40f1b4ca6ffb2277","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"]},"message":"clean up formatting"},{"commit":"937a9fa9cf2ede8e686ba853989f33e4a483a0ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":613,"deletions":3,"files":["jc/appdirs.py","jc/cli.py","requirements.txt","setup.py"]},"message":"vendorize appdirs module"},{"commit":"808ff6cf0e784cf0c2d523ff2e01197cb6e88c82","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["README.md"]},"message":"more acknowledgments updates"},{"commit":"7f5c649a95a871c3cd8d48731a6d26dcba6f725b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update acknowledgments"},{"commit":"b72727dec995de1ca5f68ee17a710b086c87d612","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":2,"files":["README.md"]},"message":"update custom parsers info"},{"commit":"3fc88bfb334143b68a9cb78d4034f33e7c0bcf76","merge":"346a14c 9f2279d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #65 from duelafn/local-parsers"},{"commit":"9f2279d5867eb89d4b4b7b4ffca290166ec97c48","author":"Dean Serenevy","author_email":"dean@serenevy.net","stats":{"files_changed":4,"insertions":29,"deletions":2,"files":["README.md","jc/cli.py","requirements.txt","setup.py"]},"message":"Load custom parsers from /jc/jcparsers"},{"commit":"346a14cb9bb0d762fc3fa366ad97e5ff85f3992a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"change osx_device to unix_device"},{"commit":"dac00d17ff9f3d2bb959697b6e567015bfc2702b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":17,"deletions":0,"files":["tests/fixtures/nixos/route-ee.json","tests/fixtures/nixos/route-ee.out","tests/test_route.py"]},"message":"add nixos test"},{"commit":"9ca7cd40601b97829e8f88071fdfb928d939f7e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":17,"deletions":34,"files":["jc/parsers/route.py"]},"message":"update docs"},{"commit":"aa31628970b12295a41dff20e829fcce9f8a4d07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":70,"deletions":63,"files":["README.md","docs/parsers/netstat.md","docs/parsers/route.md","docs/parsers/stat.md","jc/parsers/netstat.py"]},"message":"update docs"},{"commit":"bed694fcf5c8c31bbd4f3e88759fe7ab82382d24","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump"},{"commit":"4b4af69fa184896ec15b5be7dc8416f36f921d5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"fix date"},{"commit":"9d96190a5b19e8d71c3ac66eb0303d269dd4ce5d","merge":"96df396 fa44d48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #64 from kellyjonbrazil/dev"},{"commit":"fa44d48c094a55e499c2c780d109bf277736b42e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":129,"deletions":7,"files":["changelog.txt","jc/parsers/stat.py","tests/fixtures/freebsd12/stat.json","tests/fixtures/freebsd12/stat.out","tests/fixtures/osx-10.14.6/stat.json","tests/test_stat.py"]},"message":"freebsd fixes, tests, and fixtures"},{"commit":"4ef961c2788c935b1fea1c9777b976e7b89e7367","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":20,"deletions":0,"files":["tests/fixtures/freebsd12/ntpq-p.json","tests/fixtures/freebsd12/ntpq-p.out","tests/test_ntpq.py"]},"message":"add freebsd test and fixtures"},{"commit":"292a837d5c47165ccb155f079b0a114b5c17a98e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":22,"deletions":0,"files":["tests/fixtures/freebsd12/last.json","tests/fixtures/freebsd12/last.out","tests/test_last.py"]},"message":"add tests and fixtures for freebsd12"},{"commit":"aa7b915d847dbd29d2c09b2cc40b847e37174ffb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/last.py"]},"message":"version bump"},{"commit":"c46fe73236b912d2ee89dfb36ff259fe95fd0479","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"add last fixes for freebsd"},{"commit":"039b2c129cbe79d2d23b1194b043d8b730609956","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":1,"files":["jc/parsers/last.py"]},"message":"freebsd fixes"},{"commit":"8f2e5e4808b30c658a4cb87125639e4d7d6c15d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"]},"message":"fix compatible logic"},{"commit":"c4da8e4f78e6b4aaa4aff76ae042be9aaec832a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":3,"files":["README.md"]},"message":"add nixos and freebsd to tested. update new arp fields"},{"commit":"bcab9078a4c2bfd6ae4dca9448b577d9ed0fc01c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"add w parser fix"},{"commit":"b3c6c1ea925bf7cd76368f5074fb8af52a844522","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":29,"deletions":5,"files":["jc/parsers/w.py","tests/fixtures/nixos/w.json","tests/fixtures/nixos/w.out","tests/test_w.py"]},"message":"strip whitespace in string fields and add tests"},{"commit":"a3af8662bd491e344c93d24afabd23e90efd8086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":205,"deletions":3,"files":["tests/fixtures/osx-10.11.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a2.json"]},"message":"add permanent field"},{"commit":"35940d0bc80bf61b11f40b1e1043835f26eb391c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":59,"deletions":4,"files":["changelog.txt","docs/parsers/arp.md","jc/parsers/arp.py","tests/fixtures/freebsd12/arp-a.json","tests/fixtures/freebsd12/arp-a.out","tests/test_arp.py"]},"message":"add freebsd permanent and expires fields"},{"commit":"26994cdcb7148d2c9d1701bca9541d247356260b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":115,"deletions":85,"files":["docs/parsers/df.md","docs/parsers/fstab.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/route.md","docs/parsers/stat.md","docs/parsers/uname.md"]},"message":"add freebsd compatibility info"},{"commit":"017159a829691cb6a7174f123d024eb252179b75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":15,"insertions":221,"deletions":0,"files":["tests/fixtures/freebsd12/netstat-Aa.json","tests/fixtures/freebsd12/netstat-AaT.json","tests/fixtures/freebsd12/netstat-AaT.out","tests/fixtures/freebsd12/netstat-AanP.json","tests/fixtures/freebsd12/netstat-AanP.out","tests/fixtures/freebsd12/netstat-Aax.json","tests/fixtures/freebsd12/netstat-Aax.out","tests/fixtures/freebsd12/netstat-aT.json","tests/fixtures/freebsd12/netstat-aT.out","tests/fixtures/freebsd12/netstat-an.json","tests/fixtures/freebsd12/netstat-i.json","tests/fixtures/freebsd12/netstat-ib.json","tests/fixtures/freebsd12/netstat-ib.out","tests/fixtures/freebsd12/netstat-r.json","tests/test_netstat.py"]},"message":"add freebsd nestat tests and fixtures"},{"commit":"b4e9c85e08d199dad67f03c7603194278a022696","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":0,"files":["jc/parsers/netstat_freebsd_osx.py"]},"message":"fixup -T freebsd output and add whitespace stripping to parse_post"},{"commit":"189146cd84cfad262f2b2601bb0cb4b9dde2587e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/netstat.py"]},"message":"add more ints. remove whitespace strip code and move to freebsd_osx module"},{"commit":"af34153ffab10ca1ad7f44736d379d91ae43c813","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["changelog.txt","jc/cli.py"]},"message":"version bump"},{"commit":"bf2ff3ffbb639446779b1f04f2997707d99c0a1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":1,"files":["jc/utils.py"]},"message":"fix compatibility search for platform names that append the version number (e.g. freebsd12)"},{"commit":"6423c9efd69e938af38934a97ca6b65009e8f07e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":34,"deletions":5,"files":["jc/parsers/netstat.py"]},"message":"integer and float updates"},{"commit":"58ab0d4ece7f006ce9431afb9e0fecbe60930be7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":12,"deletions":4,"files":["changelog.txt","jc/parsers/netstat.py","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json"]},"message":"strip whitespace from string fields"},{"commit":"83a738bf4d756036d6269b9153220d7f1018ac9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json"]},"message":"update fixtures for osx_flags and osx_inode name change to unix_flags and unix_inode"},{"commit":"3640671fc6a67c9628fd47e19e9fe0a0738439ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/{netstat_osx.py => netstat_freebsd_osx.py}"]},"message":"rename module"},{"commit":"1da623b30ef6f9b12ac231518d2d4e7dadcf717b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["changelog.txt"]},"message":"add items"},{"commit":"b10ca64646e93d9797182ea046f4956a17b37627","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":71,"deletions":71,"files":["jc/parsers/netstat.py"]},"message":"change osx_inode and osx_flags to unix_inode and unix_flags. Also rename netstat_osx module to netstat_freebsd_osx"},{"commit":"2128763ee67a07da6ebf123abeec39794bc1f4e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":12,"files":["tests/test_netstat.py"]},"message":"fix osx version from 16.4 to 14.6"},{"commit":"a27e7ed39c63c04cfa78caceaada42f7a9496a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":12,"deletions":12,"files":["tests/fixtures/centos-7.7/netstat-r.json","tests/fixtures/centos-7.7/netstat-rne.json","tests/fixtures/centos-7.7/netstat-rnee.json","tests/fixtures/centos-7.7/route-vn.json","tests/fixtures/centos-7.7/route.json","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-rnl.json","tests/fixtures/ubuntu-18.04/netstat-r.json","tests/fixtures/ubuntu-18.04/netstat-rne.json","tests/fixtures/ubuntu-18.04/netstat-rnee.json","tests/fixtures/ubuntu-18.04/route-vn.json","tests/fixtures/ubuntu-18.04/route.json"]},"message":"test updates for added route_flags_pretty and flags_pretty fields"},{"commit":"f07b7eaa474eb87dbdbc7fbe41b9386feff7bee2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":38,"deletions":12,"files":["jc/parsers/route.py"]},"message":"add flags_pretty"},{"commit":"6ce18de84ce16a926f9cd97c3210ef209c3352da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":130,"deletions":69,"files":["jc/parsers/netstat.py","jc/parsers/netstat_linux.py","jc/parsers/netstat_osx.py"]},"message":"add route_flags_pretty"},{"commit":"8631b756e7ab8cd71c2a3eb288e2d1823cec5782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":76,"deletions":0,"files":["tests/fixtures/freebsd12/netstat-Aa.out","tests/fixtures/freebsd12/netstat-an.out","tests/fixtures/freebsd12/netstat-i.out","tests/fixtures/freebsd12/netstat-r.out"]},"message":"add freebsd test files"},{"commit":"7414d984125300164a5b6156d7a80128d4d6cb15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":18,"deletions":18,"files":["jc/parsers/df.py","jc/parsers/fstab.py","jc/parsers/mount.py","jc/parsers/ntpq.py","jc/parsers/stat.py","jc/parsers/uname.py"]},"message":"add freebsd compatibility"},{"commit":"d7b19892e8fb11e17fcbadcdbb08d49897d7754f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":10,"deletions":7,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"]},"message":"add freebsd support for netstat -i"},{"commit":"96df396eaf4e030113005a95e525d644c394dfe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"2f6f640317da5af894f34f187c4243ef0c599d07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"spelling"},{"commit":"c4a0a50f3a3ac5833ab5d2f8a0cb3f18da335812","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]},"message":"add nix-env"},{"commit":"658f8a3842273cea049689b3aea15d89a7294b24","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":3,"files":["README.md"]},"message":"add zypper and ports info"},{"commit":"bfb876a1e394ff63c6773965ba0b65da4e109c1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"90c34b1f4ee2d9ec8125346bb90b227f76ada2ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"fix dmidecode example"},{"commit":"3f9164ea77ec41e1b0671d0a642900d8e36faf9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"bold formatting"},{"commit":"7fd6fecbf5a08b1f13aa7e906e94be9bc126780a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"8029f72363a4d19938df07603f03a0147f6246a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":10,"deletions":7,"files":["changelog.txt","docs/parsers/stat.md","jc/cli.py","jc/parsers/stat.py","setup.py","tests/fixtures/osx-10.14.6/stat.json"]},"message":"change osx_flags from integer to string"},{"commit":"c7fdce5d3b7566a7d290627767c47d9c196e02ad","merge":"f5627a4 84f48aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #62 from kellyjonbrazil/dev"},{"commit":"84f48aa369a458f534523ecc1e3aaaf403d06f1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"2e9a0a9c1221dd01bd683ecbc4871d03738da671","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["changelog.txt"]},"message":"add features"},{"commit":"c1f6f2b9508e558ab88b4a0a61e93a6cf5460bea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":116,"deletions":4,"files":["docs/parsers/stat.md","jc/parsers/stat.py","tests/fixtures/osx-10.14.6/stat.json","tests/fixtures/osx-10.14.6/stat.out","tests/test_stat.py"]},"message":"osx fixes and tests"},{"commit":"ede21bca13c4b46899721f01d979c8b063f861a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":110,"deletions":78,"files":["jc/parsers/stat.py"]},"message":"add OSX support for stat"},{"commit":"8dd9a9f9cbc70a19176f909f6ac76b2bcf670736","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":45,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-i.json","tests/fixtures/osx-10.14.6/netstat-i.json","tests/fixtures/ubuntu-18.04/netstat-i.json","tests/fixtures/ubuntu-18.04/netstat-i.out","tests/test_netstat.py"]},"message":"add netstat -i tests"},{"commit":"04f92cd1330759e4bad1c0304b9e1c28e8d32d59","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":166,"deletions":4,"files":["README.md","docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_linux.py","tests/fixtures/centos-7.7/netstat-i.out"]},"message":"add linux support for netstat -i"},{"commit":"8be8d2393b276a9249e1c573ce19cf630f0942fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":99,"deletions":3,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-i.out"]},"message":"add netstat -i support for OSX"},{"commit":"0a879681be68fe2e6e5c013ab0fe18de99b04f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":97,"deletions":282,"files":["README.md","docs/parsers/netstat.md","jc/parsers/netstat.py"]},"message":"add netstat -r to docs"},{"commit":"2ca1587a49511899bf719e0b0c7de32158fc491d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":102,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-r.json","tests/fixtures/centos-7.7/netstat-rne.json","tests/fixtures/centos-7.7/netstat-rnee.json","tests/fixtures/ubuntu-18.04/netstat-r.json","tests/fixtures/ubuntu-18.04/netstat-r.out","tests/fixtures/ubuntu-18.04/netstat-rne.json","tests/fixtures/ubuntu-18.04/netstat-rne.out","tests/fixtures/ubuntu-18.04/netstat-rnee.json","tests/fixtures/ubuntu-18.04/netstat-rnee.out","tests/test_netstat.py"]},"message":"add linux netstat -r tests"},{"commit":"ec2cd2d708a57c0458657416bedcb4340cb40901","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":70,"deletions":11,"files":["docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_linux.py","jc/parsers/netstat_osx.py","tests/fixtures/centos-7.7/netstat-r.out","tests/fixtures/centos-7.7/netstat-rne.out","tests/fixtures/centos-7.7/netstat-rnee.out","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-rnl.json"]},"message":"add netstat -r support for linux"},{"commit":"5d0dbece9317e84a47d9f4b2d18a9ffa33fbee6e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":288,"deletions":5,"files":["docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-r.out","tests/fixtures/osx-10.14.6/netstat-rnl.json","tests/fixtures/osx-10.14.6/netstat-rnl.out","tests/test_netstat.py"]},"message":"add netstat -r functionality for OSX"},{"commit":"df1e4b414b2bda5be3153767cd854b2483ba600b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":[".gitignore"]},"message":"remove unused folder"},{"commit":"40760991e7dae43cd15134310f7bbb5ce0f58dae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["LICENSE.md"]},"message":"update copyright date"},{"commit":"464f5f86cf2c8fe6a1a857b0ad4d221a3edf3d88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"update description"},{"commit":"7b09e9fccdd4f09218a500b54c898ada1b9843c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":8,"deletions":5,"files":["docs/parsers/dmidecode.md","jc/parsers/dmidecode.py","tests/fixtures/centos-7.7/dmidecode.json","tests/fixtures/fedora32/dmidecode.json","tests/fixtures/ubuntu-18.04/dmidecode.json"]},"message":"set empty values to Null and update fixtures"},{"commit":"6cba7d429898d331c674c778f8bd85ba75a8dca9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"remove linux from description"},{"commit":"9730f62e4970b5a4490f8dc24b6cfb9cacd0cbf2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":151,"deletions":133,"files":["jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json","tests/fixtures/osx-10.14.6/netstat.out"]},"message":"fixup name field and update test fixtures"},{"commit":"e0c1c87f549eee000b93b5f5a3e8d0b052eb7d32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["README.md"]},"message":"formatting"},{"commit":"931b3d2b836b251590497f4cfa65f106762086c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"e5d561baeecf1fd83a884b3cd9d322762f750dfb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/netstat.py"]},"message":"add multipath condition for osx detection"},{"commit":"2867593e7aa12299686e2c6aa0f2a79a9b550b53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"dd52fee5635c977d5c77046ab9fe78d2ed10deef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":2141,"deletions":0,"files":["tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-Abn.out","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat-An.out","tests/fixtures/osx-10.14.6/netstat.json","tests/fixtures/osx-10.14.6/netstat.out","tests/test_netstat.py"]},"message":"osx netstat tests and fixtures"},{"commit":"8e1f8858273e671a882a07eae1c35b38f5298c94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"fix filtered netstat views"},{"commit":"2d39a58f902e6af77f8f96ffcd1d68b7cbadd56c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":81,"deletions":14,"files":["README.md","docs/parsers/dmidecode.md","docs/parsers/netstat.md","jc/parsers/dmidecode.py"]},"message":"doc update"},{"commit":"9c4fa2ae2601ca4880c0b078fa917f01f1392e0e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":22,"deletions":2,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"]},"message":"integer conversions and icmp fix"},{"commit":"de52d84e82df6d8c5e2416c6bc44e59c41c685da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/netstat_osx.py"]},"message":"fix udp state and udp46 entries"},{"commit":"ce9b55059a28d363b8b0ae4f3ccbdbdc4bf4b58e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":185,"deletions":167,"files":["jc/parsers/netstat.py","jc/parsers/netstat_linux.py"]},"message":"organize files"},{"commit":"bcd370a6a01a115d470776f5690f8571d68d3930","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":15,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"]},"message":"code cleanup"},{"commit":"c8216850abd2d0b8cc6761453f853f296e8a28f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":55,"files":["jc/parsers/netstat_osx.py"]},"message":"code cleanup"},{"commit":"f5feedb90b39e5c3f4564615482d47ccd145844f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":10,"files":["jc/parsers/netstat_osx.py"]},"message":"fix comments"},{"commit":"a4371cd187fe5077018edbfeee77eb17c6a90ad3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/netstat_osx.py"]},"message":"support netstat -A"},{"commit":"9d5ba4c83404e4fab5c0f40c30b4735685499a31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/netstat_osx.py"]},"message":"formatting"},{"commit":"1639dee1bb93f6f89e8bb7b37134dc1f561c479c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":35,"files":["jc/parsers/netstat_osx.py"]},"message":"fix parse_post"},{"commit":"9363f430f20951e6fa739f06c85c5b6b3421b60d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/netstat.py"]},"message":"use list extend method to simplify code"},{"commit":"9192a0907364c772558380be1373b8dcea972a6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":124,"deletions":34,"files":["jc/parsers/netstat_osx.py"]},"message":"parse all sections"},{"commit":"b915eb97556ccc5fc60e8d23f7298ffec2d8e3b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":237,"deletions":55,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"]},"message":"initial osx parser"},{"commit":"1cfcc2b592f682d2b50a0c4188fa3ae832a6c682","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/dmidecode.py"]},"message":"tighten up line test logic when counting tabs"},{"commit":"7138dd02b73073441a52c9b574bf0d6e02f0d7d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/parsers/dmidecode.py"]},"message":"cleanup variables after adding to item"},{"commit":"b4276643b70f7820f8f53df22b32fffb54e30ca2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":56,"deletions":0,"files":["tests/fixtures/centos-7.7/dmidecode.json","tests/fixtures/fedora32/dmidecode.json","tests/fixtures/ubuntu-18.04/dmidecode.json","tests/test_dmidecode.py"]},"message":"add dmidecode tests and fixtures"},{"commit":"2ef00763bfe7c4348f30026759941efe39861a0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/dmidecode.py"]},"message":"fix first item"},{"commit":"54364928fc826ead7774a4cec1bcb73a5cb9ee0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":74,"deletions":81,"files":["docs/parsers/dmidecode.md","jc/parsers/dmidecode.py"]},"message":"fix oddities like hybrid single/multiline data and items containing multiple records"},{"commit":"09b3b4932b0fa4a2b18c88a8465c15a194b727e6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":35430,"deletions":0,"files":["tests/fixtures/centos-7.7/dmidecode.out","tests/fixtures/fedora32/dmidecode.out","tests/fixtures/ubuntu-18.04/dmidecode.out"]},"message":"add dmidecode output fixtures"},{"commit":"29d6670119d8fcd0344e90f01bfb6260aa936e50","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/dmidecode.py"]},"message":"convert integers"},{"commit":"2f654b5f1acda01192294f4c18a5a31363e7f387","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["docs/parsers/dmidecode.md"]},"message":"doc update"},{"commit":"e53b9f5992450b53efc886b4fa9ca16f3dd07530","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["jc/parsers/dmidecode.py"]},"message":"add caveats to documentation"},{"commit":"addb234e6162c58750cb67947bc4776635bf54fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":153,"deletions":0,"files":["docs/parsers/dmidecode.md"]},"message":"add dmidecode doc"},{"commit":"76eca3b65911a0a340d3d94322a8145ee89c50da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"]},"message":"add dmidecode"},{"commit":"f90dec4c0ecf88623fb22273b7527ec8884826c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":94,"deletions":5,"files":["jc/parsers/dmidecode.py"]},"message":"add examples to documentation"},{"commit":"8900a59d4cb424ff58d1eb27f8fda7ea0a668a5c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":19,"files":["jc/parsers/dmidecode.py"]},"message":"simplify logic by removing redundant block"},{"commit":"6685138200d5955115707d04aad0293ea8af5b15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dmidecode.py"]},"message":"fix for missing multi-line values that come immediately after a previous multi-line value"},{"commit":"4d3e65b980d50164b8220e59560822b9871580ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/parsers/dmidecode.py"]},"message":"fix missing values"},{"commit":"e9282bb546f560da6396f44e2ce9e04136348e2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":175,"deletions":0,"files":["jc/cli.py","jc/parsers/dmidecode.py"]},"message":"add dmidecode parser"},{"commit":"f5627a45947e5e76e5f3e64d9b30099fe0b962a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"81ffdb25105c681c8ed12336d220a102b7f4215e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/cli.py"]},"message":"remove shebang for Fedora packaging"},{"commit":"4c00a99850cb6f69713be7c6ad9ffba11924d9b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"2bfcb45b28e2174a8bbc27237e619b5c232ccae8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["jc/cli.py"]},"message":"make cli.py executable"},{"commit":"ab0c10e791283affb227d0d5306701ba7fd29d13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["LICENSE.md","README.md"]},"message":"remove execute permissions"},{"commit":"2c1935115de03a28fe92674b04b2542b0eccb8fe","merge":"99070fa d98e43d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #61 from kellyjonbrazil/dev"},{"commit":"d98e43dc78205d3224bfc1e67de2da3c5fb7ea9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"add netstat item"},{"commit":"9348988d646d9b9c9970c19e84f311554ae38e7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":0,"files":["tests/test_netstat.py"]},"message":"add netstat test for Fedora32"},{"commit":"1285c664679c40b18327c89b85921a80b01f0191","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":140,"deletions":0,"files":["tests/fixtures/fedora32/netstat.json","tests/fixtures/fedora32/netstat.out"]},"message":"netstat with bluetooth section"},{"commit":"b7191bbc130e0f33d02c0a4819fa91ffff1599d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"handle bluetooth section (ignore for now)"},{"commit":"98b97509f7893cb95e9651ce9706db5c961aa997","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"2b2b570490f3834367a598579473001f45738e8a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":21,"deletions":0,"files":["tests/fixtures/fedora32/last.json","tests/fixtures/fedora32/last.out","tests/test_last.py"]},"message":"add tests for 'gone - no logout'"},{"commit":"cce2d1ff298f2284c43c4534144329f3533a81ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/last.py"]},"message":"add condition for 'gone - no logout'"},{"commit":"b79600c57249cbb65805caad2524cc2492342be6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"version bump"},{"commit":"140f1a85437745296b56976bef1b46514e323a4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":7,"deletions":7,"files":["tests/fixtures/centos-7.7/ls-R-newlines.json","tests/fixtures/centos-7.7/ls-R.json","tests/fixtures/centos-7.7/ls-glob.json","tests/fixtures/osx-10.14.6/ls-glob.json","tests/fixtures/ubuntu-18.04/ls-R-newlines.json","tests/fixtures/ubuntu-18.04/ls-R.json","tests/fixtures/ubuntu-18.04/ls-glob.json"]},"message":"test fixes for issue #60"},{"commit":"e34657cfde6816ab7a7415d83580df0a1d98a5a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"]},"message":"fix issue #60 that was skipping the first file in some instances using -R without -l"},{"commit":"99070fa6073c4415a6faf8ca69dd6aa089af4062","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"2b46785b1f1281ee63df9159e36068f4607ad9b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":25,"deletions":3,"files":["jc/parsers/ifconfig.py"]},"message":"add MIT license to vendorized IfconfigParser class"},{"commit":"c72562524b2b9aaca0be372bb24343158829ba5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"fully remove tests from packaging"},{"commit":"b7dd6441c7e3f54f8a260fceef49aae6816c7151","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":1,"files":["changelog.txt","jc/cli.py"]},"message":"version bump"},{"commit":"31fcc2f755ad86622cf51a75879b14d44f246300","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["MANIFEST.in"]},"message":"remove manifest.in - no longer needed due to removing tests"},{"commit":"b391aa14bceffedb5a9c13f3f908923790edefc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["setup.cfg"]},"message":"add license_file to metadata"},{"commit":"d3c45debbb6690acd341fbcc9b99d1ae4cf0a43c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["setup.py"]},"message":"remove tests and add license file"},{"commit":"5b08469b874553744bd5c5b1fa6581f4dcffacd0","merge":"8cf00a2 4a77ec6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #57 from kellyjonbrazil/dev"},{"commit":"4a77ec63a46554c84e646d31564230774ed87431","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["docs/parsers/ifconfig.md"]},"message":"add IfconfigParser class"},{"commit":"d13606b6dc2c207be6dea89a2c3e713c18a574b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":7,"deletions":6,"files":["changelog.txt","jc/cli.py","requirements.txt","setup.py"]},"message":"modify dependencies for easier packaging into Fedora"},{"commit":"05291c93bba1aa364ba1ac7f2508e24bb362a814","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":198,"deletions":3,"files":["jc/parsers/ifconfig.py"]},"message":"vendorize ifconfig-parser module for easier packaging in Fedora"},{"commit":"8cf00a208eb8493300331e7361b72e4f9e3f140e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"change text to strings"},{"commit":"06d73c88767a5b4d6003231c897c447ee5e1faa5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"649c646ea25ac7f89900cffa8919df01671bd32d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]},"message":"add brew install option"},{"commit":"b7756d92501a7b8ba8e77d77d9d3718a58425beb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"1cd2cd954c21e5caec333507bd81819c82d45b49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":16,"files":["tests/fixtures/osx-10.11.6/du.json","tests/fixtures/osx-10.11.6/du.out","tests/fixtures/osx-10.14.6/du.json","tests/fixtures/osx-10.14.6/du.out"]},"message":"remove references to homebrew/shim to allow tests to pass in homebrew packaging ci/cd"},{"commit":"72020b8da999ddca6f9ba82da235c9f42e4f4273","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":22,"files":["README.md"]},"message":"move packages info to jc-packages github page"},{"commit":"cf9720b749e7fc8caed0d2f1f2b1727a22a156b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"update install info"},{"commit":"967b9db7f90a3c3a0352edde7f4455c5f5d45b18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["README.md"]},"message":"spelling"},{"commit":"bb3acb1182f4d509f9ddc7dfcffa4578e0a2bd5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"560c7f7e6d1f8a69ab026ddbff753d232ca1d00b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"79b28417644e00b933f531374d2f7fe8051e61be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":0,"files":["README.md"]},"message":"add new binary package install info"},{"commit":"a06a89cbd11026aa3910fadd1eff7fe388d02507","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"431bd969eb4809424fe99a02a7decb98bce9ea51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"use sys.exit(0) instead of exit()"},{"commit":"c87b722aec6e6964c516bbb8e80667ad7d9c6bc7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"spelling"},{"commit":"3688b8b014a1cf753b2207fbf3ebf0292c3fd672","merge":"99f7842 07b8d9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #56 from kellyjonbrazil/dev"},{"commit":"07b8d9e0c0d723d93e6c652f5b6156c467c451c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump"},{"commit":"7454b53e395e9122c00d4cf06b1c2af109913d7a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["README.md"]},"message":"formatting"},{"commit":"3d6a76024de0f9dcf91a4ab49cabe461074114fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":0,"files":["README.md"]},"message":"update with JC_COLORS info"},{"commit":"421b9809575a8de00229af4b851739889638ac74","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":37,"files":["jc/cli.py"]},"message":"JC_COLORS working"},{"commit":"4a22e27d6a80a988f4de17bce421110d6abb8867","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":64,"deletions":0,"files":["jc/cli.py"]},"message":"add set_env_colors function"},{"commit":"99f7842dee0f79cf933fae185cf8b0ed7c8b210f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":11,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"fix brek on pipe error"},{"commit":"7f869b4b187d70752207a7e74c13b858446f898f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":11,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"change colors to ansi and match jello style"},{"commit":"9665f4ee84680f3a8154b8a43ea668af2907782c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add pypi badge"},{"commit":"606904d48b1c7e0c19a940b5be0b564d1b5be6c8","merge":"302f05c 3f5279b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #53 from kellyjonbrazil/dev"},{"commit":"3f5279b97c386c736e0e2faa5c39d68ef89c46aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to 1.10.1"},{"commit":"f5ec21e6ac612566af93158fc3968b901322d04a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_luf.py"]},"message":"use in instead of find()"},{"commit":"578a284465f014fe71ad6ac00bd41dc24ab2ced9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_ls.py"]},"message":"use in instead of find()"},{"commit":"422e392d9d98a7864312fc7fbd7f45537b71acbe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_lj.py"]},"message":"use in instead of find()"},{"commit":"54dfffd34a17d1194690142ac403391fc65bb85f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl.py"]},"message":"use in instead of find()"},{"commit":"cffba64d2b9165b44a8856665807111a2ad3a190","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/stat.py"]},"message":"use in and startswith() instead of find()"},{"commit":"56a0c12a59bb252d3b7d0929f9fb19b4d96a8437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/pip_list.py"]},"message":"use in instead of find()"},{"commit":"c174d3de18923b2b03befb5a7dfcbd977a8e147e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/netstat.py"]},"message":"use in and startswith() instead of find()"},{"commit":"a9c59ef9fc1bb68c9d0d7beffbeb670baf5b1e3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/mount.py"]},"message":"fix logic to not for ' type ' in cleandata[0]"},{"commit":"abdb9b26732a6a71f5938d665b2ca43a381e1b33","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/mount.py"]},"message":"use in instead of find()"},{"commit":"548aaab6262878d21f8b9539950cfad48638e35c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":42,"files":["jc/parsers/lsof.py"]},"message":"remove old commented code"},{"commit":"20571c87ae9e1ca8a1f3120511910751420a35ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/jobs.py"]},"message":"us in instead of find()"},{"commit":"19e49200de5c731f76b42e80388c5223e8097e39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"]},"message":"version bump"},{"commit":"d32f5c67a91ede572c88e431b2ad0ce4d6c87dec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/iptables.py"]},"message":"use startswith() instead of find()"},{"commit":"b83b626435c55d2aa63e56dd8f22603da59e7626","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ifconfig.py"]},"message":"use startswith() instead of find()"},{"commit":"ab2c1b25ec5da5f2ba238868c4dfca95a44da30e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/hosts.py"]},"message":"use startswith() and in instead of find()"},{"commit":"f2d46313a4508f13656cdb360f83fdf4116cc7d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/fstab.py"]},"message":"use startswith() instead of find()"},{"commit":"87e4796a6c936793e2784346819c7033d59b91e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/df.py"]},"message":"use in instead of .find()"},{"commit":"0014a5c2f4c056c2683d6614a65d778b1f527932","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab_u.py"]},"message":"us startswith() and in instead of .find()"},{"commit":"7af56e0dadab7d8b9538f3b7a550ad6dd1ac217d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab.py"]},"message":"use startswith() and in instead of find()"},{"commit":"a5ae6e3c017b041f9079ff12455b7551ad204cb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/arp.py"]},"message":"use startswith() instead of find()"},{"commit":"fe1a0d1faf46f55ed2888ed0065f3f3144691ed8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":9,"files":["jc/parsers/dig.py"]},"message":"use in instead of .find()"},{"commit":"302f05cdda305e46e69b74d5b0096f64c17da637","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"prettify style block"},{"commit":"c0044be7b0b6dadcffb64cb88ad92bf653dd2b6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"rename color grey to gray"},{"commit":"01100788070b82b4b827ef356972fa9b8f737eeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update badge"},{"commit":"42eacb45f8fdf8085c6231bf5297629c2ec97c22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"rename to Tests"},{"commit":"a43e2e19916662d509883457c160d7f95f97ae12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add -m option info"},{"commit":"c8b721d4f6e46a2db77e1140b9caeb3b403fef72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":9,"deletions":3,"files":["changelog.txt","jc/cli.py","requirements.txt","setup.py"]},"message":"version bump to 1.10.0"},{"commit":"d0bfddc3d9989444757d6668726c916e5363620b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":41,"deletions":6,"files":["jc/cli.py"]},"message":"add color and -m monochrome option"},{"commit":"6b925a16c87cf75bb30edfda38511e8f84a4f6d6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]},"message":"add tests badge"},{"commit":"89ebd9fc2271d2c76353d5707bfd4afb7dedc278","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":0,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"add axfr info to schema"},{"commit":"6b4ba662317629839aa62fbcfefb8ed3337c37ef","merge":"8ec8cd6 5b697dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #52 from kellyjonbrazil/dev"},{"commit":"5b697dc38141cdd47fcdd63bf295a80a7da86697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":72,"deletions":0,"files":["tests/test_dig.py"]},"message":"add more dig tests"},{"commit":"9ba73c95d1a528a9a92be4068805bb5aa027901e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":215,"deletions":0,"files":["tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/centos-7.7/dig-axfr.out","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-axfr.out","tests/fixtures/ubuntu-18.04/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-axfr.out","tests/test_dig.py"]},"message":"add tests"},{"commit":"93aa39044749c4c0ed749f62fb00fc1c76dc5af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to v1.9.3"},{"commit":"3cfb8945ddd83c00a720c44e2c1d97da0d8bad25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/dig.py"]},"message":"use startswith() instead of find"},{"commit":"cd8d38f2a136c4f35efc020b3476d09e965b71f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":50,"deletions":1,"files":["jc/parsers/dig.py"]},"message":"add axfr support"},{"commit":"8ec8cd62944c59c462ab9f520c1dcfd14218b1ed","merge":"e5bea9a c028113","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #50 from kellyjonbrazil/dev"},{"commit":"c02811356153c2b4f8b2d7efb7f48bf8f7748068","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to v1.9.2"},{"commit":"5f22e1c8031b808ef02ffe078408bd58cc76e570","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":33,"deletions":0,"files":["tests/fixtures/osx-10.14.6/arp-a2.json","tests/fixtures/osx-10.14.6/arp-a2.out","tests/test_arp.py"]},"message":"fix and test for osx arp entries without ifscope"},{"commit":"d3351787e5cabd064c19e6617e9535e501686404","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":9,"files":["jc/parsers/arp.py"]},"message":"change osx detection"},{"commit":"e5bea9ae3b0a70b38f7da7dd9184343dbbd18887","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/file.py"]},"message":"version bump"},{"commit":"93c710abe9171568f61f65c4f84c040ffc24870c","merge":"400f5a4 c29e7cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #49 from kellyjonbrazil/dev"},{"commit":"c29e7cfe5cc4b2151912c6f618137d1b6c39c7be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":9,"deletions":6,"files":["README.md","changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to 1.9.1"},{"commit":"cb5c1ba00dc0e02bf6ad6c40096d99e319fa6171","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":101,"deletions":0,"files":["tests/fixtures/osx-10.14.6/file2.json","tests/fixtures/osx-10.14.6/file2.out","tests/test_file.py"]},"message":"add tests for fix to make the file parser splitting more robust"},{"commit":"9a012b94e1942a14bc6dae3fb967ef618819c77b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/file.py"]},"message":"make splitting more robust"},{"commit":"400f5a44ece280cb0097d806b78a9490d2905600","merge":"c7cd2b6 a2ab5ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #48 from kellyjonbrazil/dev"},{"commit":"a2ab5bab91ea980399df1afb9d8071fa3282d04e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to v1.9.0"},{"commit":"fc8ab27361df3359b706125531b2643612d6996a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":93,"deletions":51,"files":["README.md","docs/parsers/ntpq.md","jc/parsers/ntpq.py","tests/fixtures/ubuntu-18.04/ntpq-p2.json","tests/fixtures/ubuntu-18.04/ntpq-p2.out","tests/test_ntpq.py"]},"message":"bugfix for misaligned columns and additional test for ntpq #31"},{"commit":"59f19d33a5c6677ea756a9424fdb032b430511a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":153,"deletions":0,"files":["tests/fixtures/centos-7.7/file.json","tests/fixtures/centos-7.7/file.out","tests/fixtures/osx-10.14.6/file.json","tests/fixtures/osx-10.14.6/file.out","tests/fixtures/ubuntu-18.04/file.json","tests/fixtures/ubuntu-18.04/file.out","tests/test_file.py"]},"message":"add file command tests for #41"},{"commit":"dfc96181159748d019419a2cba7aa9cb3b7a2a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":260,"deletions":1,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/file.md","jc/cli.py","jc/parsers/file.py"]},"message":"add file parser for issue #41"},{"commit":"8e02e5c75a11cf205299ee6f87b67f9b787cf55e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":5,"files":["jc/cli.py","tests/test_cli.py"]},"message":"fix issue with getting options with some commands #47"},{"commit":"970493ab9346a344b21be7614903ad81bc65a6e9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["jc/parsers/airport.py","jc/parsers/airport_s.py"]},"message":"add magic commands"},{"commit":"64d78956eb33ca0a2564fded3d12729ee036a915","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"update acknowledgment"},{"commit":"40c05346f4098f8eea14c42da07df3faa143587a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":25,"files":["jc/parsers/history.py"]},"message":"re-adding optimizations from https://github.com/philippeitis"},{"commit":"e9b0bc1409a824a82dabd2479892b7d18bad8c3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/airport.py"]},"message":"doc update"},{"commit":"798e6bb7d939176bb36771a6d41bd55403d583be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":29,"deletions":0,"files":["tests/fixtures/osx-10.14.6/airport-s.json","tests/test_airport_s.py"]},"message":"tests passing for airport -s. issue #46"},{"commit":"12a370deed03ba42d7b7ebb410195ce5f32bb9c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":372,"deletions":9,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/airport.md","docs/parsers/airport_s.md","jc/cli.py","jc/parsers/airport.py","jc/parsers/airport_s.py"]},"message":"add airport -s parser for issue #46"},{"commit":"553bfbe1a0dd866851ba7eca66e9295c2097ad86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":40,"deletions":6,"files":["docs/parsers/airport.md","jc/parsers/airport.py","tests/test_airport.py"]},"message":"tests passing for airport -I. Issue #46"},{"commit":"52494321fcfe0dc7ee71d8d78210b3c10372a237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":120,"deletions":15,"files":["README.md","docs/parsers/airport.md","jc/parsers/airport.py","tests/fixtures/osx-10.14.6/airport-I.json","tests/fixtures/osx-10.14.6/airport-I.out"]},"message":"fixes and docs for airport parser issue #46"},{"commit":"c6c9e06496683d2dd3586d17085801c7e698d960","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":196,"deletions":1,"files":["changelog.txt","docgen.sh","docs/parsers/airport.md","jc/cli.py","jc/parsers/airport.py","tests/fixtures/osx-10.14.6/airport-I.out","tests/fixtures/osx-10.14.6/airport-s.out"]},"message":"added airport command parser"},{"commit":"e3a6c05a58a2451e70975d8fabf644c56603c73d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":64,"deletions":17,"files":["docs/parsers/timedatectl.md","jc/parsers/timedatectl.py","tests/fixtures/centos-7.7/timedatectl.json","tests/fixtures/ubuntu-18.04/timedatectl.json","tests/test_timedatectl.py"]},"message":"timedatectl fixes, tests, and fixtures for issue #42"},{"commit":"391d06f68d1f45d33590d5407d3a5e4f723af717","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":35,"deletions":35,"files":["README.md","docs/parsers/ntpq.md","jc/parsers/ntpq.py","tests/fixtures/centos-7.7/ntpq-p.json","tests/fixtures/centos-7.7/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-p.json","tests/fixtures/ubuntu-18.04/ntpq-pn.json"]},"message":"change selection_state to state"},{"commit":"99804ea06e0c70e3a82ddc7f9c7a42343374d700","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":222,"deletions":0,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/timedatectl.md","jc/cli.py","jc/parsers/timedatectl.py"]},"message":"added timedatectl status parser"},{"commit":"51935deb2ad18e4ea3ca16954ce810354f6095a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":21,"deletions":0,"files":["tests/fixtures/centos-7.7/timedatectl.out","tests/fixtures/ubuntu-18.04/timedatectl.out"]},"message":"timedatectl test fixtures"},{"commit":"b24d0c3a475b88d9ccf1a8fe29715ee60972fcad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":34,"deletions":2,"files":["README.md","jc/parsers/ntpq.py"]},"message":"ntpq docs"},{"commit":"762a886d6fdf5c2ad21d81868d138fb32621ed1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":133,"deletions":0,"files":["tests/fixtures/centos-7.7/ntpq-p.json","tests/fixtures/centos-7.7/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-p.json","tests/fixtures/ubuntu-18.04/ntpq-p.out","tests/fixtures/ubuntu-18.04/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-pn.out","tests/fixtures/ubuntu-18.04/ntqp-p.out","tests/test_ntpq.py"]},"message":"add ntpq tests"},{"commit":"2c3e9ddfe47f56cd7edc2fdf6317f7ecec0b7918","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":543,"deletions":0,"files":["changelog.txt","docgen.sh","docs/parsers/ntpq.md","jc/cli.py","jc/parsers/ntpq.py","tests/fixtures/centos-7.7/ntpq-p.out","tests/fixtures/centos-7.7/ntpq-pn.out"]},"message":"add ntpq parser for issue #31"},{"commit":"c7cd2b63c8f24e9d17c458880fe401d8032395ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":91,"files":["tests/fixtures/generic/oscar_age_male.csv"]},"message":"delete unused test file"},{"commit":"f0528ea83112e71ff51c89be27fc9bbdfbbf1951","merge":"b5eaff2 5bc5596","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #45 from kellyjonbrazil/dev"},{"commit":"5bc5596f604fb87dffbfdf44ce2395b16bf01297","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":17,"deletions":4,"files":["changelog.txt","jc/cli.py","setup.py","tests/test_ls.py"]},"message":"version bump to 1.8.1"},{"commit":"2c27ac46be803b583caf82c1765bd0c35cee8bc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2454,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-lR-empty-folder.json","tests/fixtures/osx-10.14.6/ls-lR-empty-folder.out"]},"message":"add ls test fixtures"},{"commit":"caad840153e40dc660a2d5e06a96f3451fef25f9","merge":"aff86ae 65bd7e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #44 from philippeitis/patch-5"},{"commit":"65bd7e2904016141c1ed53cdd437865c66d7628e","merge":"17b6efe c3d7d7d","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","message":"Merge pull request #1 from kellyjonbrazil/pr/44"},{"commit":"c3d7d7db12d4870fc4499e0e3445d85ae89f2aea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"removed whitespace"},{"commit":"56053103625af6fb7fa749fc5bc3dbdc62fc223c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":4,"files":["tests/test_cli.py"]},"message":"added tests, removed os import, changed to 'assertEqual'"},{"commit":"17b6efe82e6a558353b011c543489eaaf3a6d3ac","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":14,"deletions":0,"files":["tests/test_cli.py"]},"message":"Create basic tests for generate_magic_commands()"},{"commit":"a032ae56ae7d247e00415267b65b2a8b80a3302e","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"Pass args to generate_magic_command() to allow testing."},{"commit":"eab2f4b0566b4c76db661cbfa99a56a6bf8d6541","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":33,"deletions":19,"files":["jc/cli.py"]},"message":"Move core magic() logic into seperate function for testability, minor tweaks."},{"commit":"aff86ae6c71abfe1cbdba5c574a5f3707292ec19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":29,"deletions":39,"files":["jc/cli.py"]},"message":"reimpliment magic() based on the dictionary approach suggested by philippeitis"},{"commit":"7ece9ddc1a37551cdaaac50f37a48e6d98b18bf4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"version bump ls"},{"commit":"7cd048e839a7cc8404fd5abc153a3d315c207819","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"1e22f610a33903e8525d35a18b1dcf760a93791e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/ls.py"]},"message":"fix for osx - doesn't print 'total xx' line if empty directory (issue #40)"},{"commit":"5249c972ae25e9b289a2667bf471aad5e58c70a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["changelog.txt"]},"message":"add to changelog"},{"commit":"fd45f856a050f6c56a7a6b50b97b3d8c4de28af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/history.py"]},"message":"import jc.utils instead of jc"},{"commit":"c8ab40cd33b14a3a1937ecf64bb23e282f5bb921","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"]},"message":"ignore .github folder"},{"commit":"b2c872925b37254dac74578c1803b4127f8411c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":20,"insertions":208,"deletions":220,"files":["tests/test_ls.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_passwd.py","tests/test_pip_list.py","tests/test_ps.py","tests/test_route.py","tests/test_shadow.py","tests/test_ss.py","tests/test_systemctl_lj.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py","tests/test_who.py","tests/test_xml.py","tests/test_yaml.py"]},"message":"add utf-8 encoding for testing on Windows"},{"commit":"f48e229202f8ab1ebfa502ca57bb31cf673c7a62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":192,"deletions":192,"files":["tests/test_arp.py","tests/test_blkid.py","tests/test_crontab.py","tests/test_crontab_u.py","tests/test_csv.py","tests/test_df.py","tests/test_dig.py","tests/test_du.py","tests/test_env.py","tests/test_free.py","tests/test_fstab.py","tests/test_group.py","tests/test_gshadow.py","tests/test_history.py","tests/test_hosts.py","tests/test_id.py","tests/test_ifconfig.py","tests/test_ini.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_last.py"]},"message":"utf-8 open for windows tests"},{"commit":"799fec92c39b1ff0696c6ebb182c4bef66b86e56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["tests/test_pip_show.py","tests/test_systemctl.py"]},"message":"utf-8 for windows support"},{"commit":"87a41c2fcaa395f108b5a5126ed77f7cc7fe5d6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["tests/test_lsblk.py","tests/test_stat.py"]},"message":"add utf-8 to open function"},{"commit":"7f85de0c46cda95d57b9677ba0ca3ea59690e502","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"add windows-latest"},{"commit":"13661b19934a74417713e98e3e1e4df6bb0f29ad","merge":"5f798d6 51d5c38","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #37 from philippeitis/continuous_integration"},{"commit":"51d5c3892d6ff1e2e6ac7c4f3e496e7d9ed4b6a7","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"]},"message":"Remove Windows tests, due to lack of support."},{"commit":"e4eab4641ac15220f2787c5d27b443ab8c718b86","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/blkid.py"]},"message":"Change line in blkid.py to trigger CI"},{"commit":"9b148e0ba37e18749d95608e1bac6c090ab83ee2","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["requirements.txt"]},"message":"Add requirements.txt"},{"commit":"de28932650d5027e2781011f1243b89f053b241d","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":7,"deletions":6,"files":["jc/parsers/arp.py"]},"message":"Consolidate dictionary into creation, trigger CI"},{"commit":"5f798d603e461d2de5adf74662ba4d4b121f28f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/history.py"]},"message":"version bump and ack to philippeitis"},{"commit":"a0757b2dd3fc0f3e26622941d93bd909dae0a1f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":5,"files":["jc/parsers/foo.py"]},"message":"optimize line parsing"},{"commit":"498d51b4e802cb40cac58aae1eff1f723bbbd896","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":31,"deletions":0,"files":[".github/workflows/pythonapp.yml"]},"message":"Enable Continuous Integration with GitHub Actions."},{"commit":"b06b6bae3f64f591c9075812dc1b632ef6d2da37","merge":"6aa2d5a 0652768","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #36 from philippeitis/patch-3"},{"commit":"b5eaff21372a58aefb66e5afc5e863db8355fee1","merge":"d75c406 c01bcd3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #35 from kellyjonbrazil/revert-34-patch-3"},{"commit":"c01bcd3734382a0c388d9f4041fc888171ca7675","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":25,"deletions":12,"files":["jc/parsers/history.py"]},"message":"Revert \"Simplify process() in history.py, avoid list allocation in parse()\""},{"commit":"d75c4068caaf4adbe9a39fa452ae867421053673","merge":"d96b3a6 0652768","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #34 from philippeitis/patch-3"},{"commit":"6aa2d5a3d26f9f00c3334928f6f0e501860433da","merge":"69576f6 a63408c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #33 from philippeitis/patch-2"},{"commit":"065276805f0f2dd23a6382f0120ca07e9eae116f","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":12,"deletions":25,"files":["jc/parsers/history.py"]},"message":"Simplify process() in history.py, avoid list allocation in parse()"},{"commit":"a63408c8cf3f99646be2b375f651d6cf417f7ae0","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/cli.py"]},"message":"Handle case where only options are passed."},{"commit":"69576f6bfae073196627a0a39b5ececb8666d25c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/cli.py"]},"message":"minor sytax fixes"},{"commit":"19845624e2996da4653efc2f312aceb514feaf5c","merge":"d96b3a6 22ff296","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #32 from philippeitis/patch-1"},{"commit":"22ff2964e9889587711e779ac24f8f8034212f5e","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":62,"deletions":75,"files":["jc/cli.py"]},"message":"Simplify main(), magic() methods."},{"commit":"d96b3a65a98bc135d21d4feafc0a43317b5a11fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"4989445ef4bb8919d9b3b95e2fcee77ca7692aec","merge":"53ee2c3 6770892","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #30 from kellyjonbrazil/dev"},{"commit":"6770892acd49aced225dbccf39290f33522c9001","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]},"message":"add release notes link"},{"commit":"d4eba8740fc325756f3db96ab37a5383540cbeff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"release date 3/3"},{"commit":"9f607605605e47990f97ccfd48fde19a14e036e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["tests/test_group.py","tests/test_gshadow.py"]},"message":"add group and gshadow tests"},{"commit":"0a8f8ac934f040141e6a4eec8cf7170e1ca73294","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"add group and gshadow parsers"},{"commit":"6ae24c82447bcff606e7027dd01b916293b49584","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":274,"deletions":0,"files":["tests/fixtures/centos-7.7/group.json","tests/fixtures/centos-7.7/group.out","tests/fixtures/centos-7.7/gshadow.json","tests/fixtures/centos-7.7/gshadow.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/group.json","tests/fixtures/osx-10.14.6/group.out","tests/fixtures/ubuntu-18.04/group.json","tests/fixtures/ubuntu-18.04/group.out","tests/fixtures/ubuntu-18.04/gshadow.json"]},"message":"add group and gshadow test fixtures"},{"commit":"d3679082a8c5cff76eb7de67c33fe716a1402182","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":64,"deletions":0,"files":["README.md"]},"message":"add group and gshadow parsers"},{"commit":"fb08b42dca135705a3759435335d95c898d47f60","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":21,"deletions":21,"files":["docs/parsers/group.md","jc/parsers/group.py"]},"message":"change 'group_list' to 'members'"},{"commit":"4aeaa9f42a88bf4e05c8780a35cc8c4d83c9b842","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":316,"deletions":0,"files":["docgen.sh","docs/parsers/gshadow.md","jc/cli.py","jc/parsers/gshadow.py","tests/fixtures/ubuntu-18.04/gshadow.out"]},"message":"add /etc/gshadow parser"},{"commit":"5f5693da048cb4739dc56500c672dc8fbccaaf32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["docs/parsers/csv.md"]},"message":"spelling fix"},{"commit":"5eb0f61727f92a84fb3620e13db072167ef552ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":333,"deletions":0,"files":["docgen.sh","docs/parsers/group.md","jc/cli.py","jc/parsers/group.py"]},"message":"add /etc/group file parser"},{"commit":"958e998991b1cc61dc1dc341b90cd53f4691cd43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/csv.py"]},"message":"formatting"},{"commit":"b78c1509f67fb76d17ac97193a2851d8d9e17f62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/csv.py"]},"message":"try/except dialect detection"},{"commit":"ce184d4d57faa3f1bca5bcaa02da7a5a5d995eb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":20,"insertions":24054,"deletions":0,"files":["tests/fixtures/generic/csv-biostats.csv","tests/fixtures/generic/csv-biostats.json","tests/fixtures/generic/csv-cities.csv","tests/fixtures/generic/csv-cities.json","tests/fixtures/generic/csv-deniro.csv","tests/fixtures/generic/csv-deniro.json","tests/fixtures/generic/csv-example.csv","tests/fixtures/generic/csv-example.json","tests/fixtures/generic/csv-flyrna.json","tests/fixtures/generic/csv-flyrna.tsv","tests/fixtures/generic/csv-flyrna2.json","tests/fixtures/generic/csv-flyrna2.tsv","tests/fixtures/generic/csv-homes-pipe.csv","tests/fixtures/generic/csv-homes-pipe.json","tests/fixtures/generic/csv-homes.csv","tests/fixtures/generic/csv-homes.json","tests/fixtures/generic/csv-insurance.csv","tests/fixtures/generic/csv-insurance.json","tests/fixtures/generic/oscar_age_male.csv","tests/test_csv.py"]},"message":"add csv parser tests"},{"commit":"b4c3714ced9ee5cc6a7ef0c59a43cf85e1cb9824","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["README.md"]},"message":"removed [OPTIONS] PARSER syntax. still works but prefer the PARSER [OPTIONS] syntax for better performance"},{"commit":"5b7dfa043864f1a3f34aa4ef5c6554a2dfe185f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"formatting"},{"commit":"391a3884765780497dc34e0e9938ff5032c81291","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":49,"deletions":0,"files":["README.md","changelog.txt"]},"message":"doc update"},{"commit":"d9c4e2ed4c0f908f4b63c2376b53ddfd32a0fae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":241,"deletions":0,"files":["docgen.sh","docs/parsers/csv.md","jc/cli.py","jc/parsers/csv.py"]},"message":"add csv file parser"},{"commit":"0c42db38b102987629e40cee2716b826161e6e94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/who.md","jc/parsers/who.py"]},"message":"doc update"},{"commit":"2f9be8bf33f8be5651d06da9d316f7894606df19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/cli.py"]},"message":"simplify usage"},{"commit":"e8c00155e861b9eedfdf37a22912271bec581d62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"add -b to warning message"},{"commit":"cc88fdd9ee3951d7ef2aa881cc12f0b7f96aef86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"update example"},{"commit":"d9de11ef1d846a9625dad0adb962b864404c90c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["README.md"]},"message":"add another who example"},{"commit":"0ceda97d0968b67b70cdbb68f7a62657e79c9935","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":88,"deletions":0,"files":["tests/test_who.py"]},"message":"who parser tests"},{"commit":"d0dec92ba84640ddc40da7c6faa6568b76757e04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":36,"deletions":0,"files":["tests/fixtures/centos-7.7/who-a.json","tests/fixtures/centos-7.7/who-a.out","tests/fixtures/centos-7.7/who.json","tests/fixtures/centos-7.7/who.out","tests/fixtures/osx-10.14.6/who-a.json","tests/fixtures/osx-10.14.6/who-a.out","tests/fixtures/osx-10.14.6/who.json","tests/fixtures/osx-10.14.6/who.out","tests/fixtures/ubuntu-18.04/who-a.json","tests/fixtures/ubuntu-18.04/who-a.out","tests/fixtures/ubuntu-18.04/who.json","tests/fixtures/ubuntu-18.04/who.out"]},"message":"add who test fixtures"},{"commit":"d420c008d8aaa0879fa5a3f236d81acb506376c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["jc/parsers/who.py"]},"message":"fix for pts lines with no user info"},{"commit":"f0b32db4333477e22cc40de62cf026a6a7aa2eb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","docs/parsers/who.md"]},"message":"who doc update"},{"commit":"bc838eda591473d32b11a885e60ef653925739d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/parsers/who.py"]},"message":"fix output for non-extended"},{"commit":"afe55b6af07b74816d33d9555ffaa1c1921dd27a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":46,"deletions":0,"files":["README.md"]},"message":"add who parser"},{"commit":"dd3a3ac302d7b35beef1181e74aed0faf96fd3e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":255,"deletions":9,"files":["changelog.txt","docgen.sh","docs/parsers/who.md","jc/parsers/who.py"]},"message":"doc update and process pid integers"},{"commit":"f9982a79474c1838f37fc0ff88437980b228d7a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":2,"files":["jc/parsers/who.py"]},"message":"fixes for from and comment fields"},{"commit":"07c1be9e9ad9f62cf76c23788152de8f3530ee16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":170,"deletions":0,"files":["jc/cli.py","jc/parsers/who.py"]},"message":"add who command parser"},{"commit":"f832b88755bfbd3878ec402e603180e6825279be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["tests/test_passwd.py","tests/test_shadow.py"]},"message":"add passwd and shadow tests"},{"commit":"0fac757efca41db062b2f65acc727963c5fb353c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"add passwd and shadow parsers"},{"commit":"fc15742065531152f3d5895042eeb806e33a192a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":215,"deletions":0,"files":["tests/fixtures/centos-7.7/passwd.json","tests/fixtures/centos-7.7/passwd.out","tests/fixtures/centos-7.7/shadow.json","tests/fixtures/centos-7.7/shadow.out","tests/fixtures/osx-10.14.6/passwd.json","tests/fixtures/osx-10.14.6/passwd.out","tests/fixtures/ubuntu-18.04/passwd.json","tests/fixtures/ubuntu-18.04/passwd.out","tests/fixtures/ubuntu-18.04/shadow.json","tests/fixtures/ubuntu-18.04/shadow.out"]},"message":"passwd and shadow test fixtures"},{"commit":"6f2466a1319eaa4256ae7a2a0f23b3ff37882d37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":73,"deletions":0,"files":["README.md"]},"message":"update readme with /etc/passwd and /etc/shadow file parsers"},{"commit":"4b90e22f0a9c6790bca62c8314945a7ffc6e267b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":137,"deletions":9,"files":["docs/parsers/shadow.md","jc/parsers/shadow.py"]},"message":"doc update"},{"commit":"c4935687853fb3b079ae42614793cdafe68e124e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/passwd.md","jc/parsers/passwd.py"]},"message":"doc fix"},{"commit":"1cdf004b7728901dc137e57b0c8994edfdd6d417","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":190,"deletions":0,"files":["docgen.sh","docs/parsers/shadow.md","jc/cli.py","jc/parsers/shadow.py"]},"message":"add /etc/shadow parser"},{"commit":"a4ea50426184d30cbe849a8f80bfd5c975075c9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":303,"deletions":0,"files":["docgen.sh","docs/parsers/passwd.md","jc/cli.py","jc/parsers/passwd.py"]},"message":"add /etc/passwd parser"},{"commit":"4c2c234c3bf68d1aac66bd4d1f22b9f97e99128d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":16,"insertions":673,"deletions":0,"files":["tests/fixtures/centos-7.7/last-w.json","tests/fixtures/centos-7.7/last-w.out","tests/fixtures/centos-7.7/last.json","tests/fixtures/centos-7.7/last.out","tests/fixtures/centos-7.7/lastb.json","tests/fixtures/centos-7.7/lastb.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/last.json","tests/fixtures/osx-10.14.6/last.out","tests/fixtures/ubuntu-18.04/last-w.json","tests/fixtures/ubuntu-18.04/last-w.out","tests/fixtures/ubuntu-18.04/last.json","tests/fixtures/ubuntu-18.04/last.out","tests/fixtures/ubuntu-18.04/lastb.json","tests/fixtures/ubuntu-18.04/lastb.out","tests/test_last.py"]},"message":"add last and lastb tests"},{"commit":"3d4c0f3e89dab6496ff74df350e3238d6625933c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":22,"insertions":285,"deletions":0,"files":["tests/fixtures/centos-7.7/blkid-ip-multi.json","tests/fixtures/centos-7.7/blkid-ip-multi.out","tests/fixtures/centos-7.7/blkid-ip-udev-multi.json","tests/fixtures/centos-7.7/blkid-ip-udev-multi.out","tests/fixtures/centos-7.7/blkid-ip-udev.json","tests/fixtures/centos-7.7/blkid-ip-udev.out","tests/fixtures/centos-7.7/blkid-sda2.json","tests/fixtures/centos-7.7/blkid-sda2.out","tests/fixtures/centos-7.7/blkid.json","tests/fixtures/centos-7.7/blkid.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/blkid-ip-multi.json","tests/fixtures/ubuntu-18.04/blkid-ip-multi.out",".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.json",".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.out","tests/fixtures/ubuntu-18.04/blkid-ip-udev.json","tests/fixtures/ubuntu-18.04/blkid-ip-udev.out","tests/fixtures/ubuntu-18.04/blkid-sda2.json","tests/fixtures/ubuntu-18.04/blkid-sda2.out","tests/fixtures/ubuntu-18.04/blkid.json","tests/fixtures/ubuntu-18.04/blkid.out","tests/test_blkid.py"]},"message":"add blkid tests"},{"commit":"52fad02903468c05d2422a340ad8dbcdf18ed475","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"doc update"},{"commit":"9dcabc057c40e345971a08474b5b886e6b60a8de","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/blkid.py"]},"message":"support multi device udev output"},{"commit":"db8c1079ddc25922ab6a20d0f71fb19af38f8092","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/blkid.py"]},"message":"use maxsplit=1 in case there are multiple '=' delimiters"},{"commit":"8f954673abdbbd4d9b9da3eacc61b335b4909f89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/blkid.py"]},"message":"use shlex split for values within quotations that have spaces"},{"commit":"79522d1c7dd4dec15b75b06dda002752f7d97e36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"doc fixes"},{"commit":"a18bf030794efef125c70a32fe82855e47649b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/parsers/last.py","jc/parsers/ls.py"]},"message":"use raw strings for regular expressions"},{"commit":"c02b6b5d827d26b43db0a3457124714aa2dbbc98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":81,"deletions":1,"files":["README.md","changelog.txt","setup.py"]},"message":"doc updates"},{"commit":"f99b4232848b0d868804acc4125836bfcf475bba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":134,"deletions":29,"files":["docs/parsers/blkid.md","jc/parsers/blkid.py"]},"message":"doc update"},{"commit":"d7d9d45d4fba89e74f7490c463eb26bf20a5d127","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/blkid.py"]},"message":"add missing comma"},{"commit":"90065ec0cdc8c5abc13bc0027f63658dacf3cfb2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":31,"deletions":26,"files":["jc/parsers/blkid.py"]},"message":"add more integers"},{"commit":"51157ebb867a48332c768bf3086614944aebdb62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/blkid.py"]},"message":"another devname fix"},{"commit":"96d95c79ca0938e326f55f858f8153df9cb49e44","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/blkid.py"]},"message":"devname fix"},{"commit":"e5da34c23306463e8707b15676db0ca53bf66757","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/blkid.py"]},"message":"check if devname key exists before renaming"},{"commit":"f09d657f7728242947db3dc63ff6779d08c37866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/blkid.py"]},"message":"rename devname to device"},{"commit":"0f4b0189f54dc0b3622cd407c5565e53ea111379","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":35,"deletions":3,"files":["jc/parsers/blkid.py"]},"message":"process integer values"},{"commit":"4666042abb3142e2cfb518db9ffe22d9e608e090","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":216,"deletions":0,"files":["docgen.sh","docs/parsers/blkid.md","jc/cli.py","jc/parsers/blkid.py"]},"message":"add blkid parser"},{"commit":"027d544c2bb778adc0ee9463832f19b10e099a0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"]},"message":"add last and lastb parser"},{"commit":"f1967d0138d27bde864c2400aa75baa8a39bbfde","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/last.py"]},"message":"system_boot fix"},{"commit":"c1d896027dd1ce021e048b3e77eab24ff59d08bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/last.py"]},"message":"fix system_boot tty"},{"commit":"5c2d2a66187d32d62b31b7c7f13e502fdb7f9635","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":190,"deletions":6,"files":["docgen.sh","docs/parsers/last.md","jc/parsers/last.py"]},"message":"process function and docs"},{"commit":"997b269b0b7e53a456e2a0bd997ead6c2ae843bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/last.py"]},"message":"btmp fix"},{"commit":"61257e7525c25827cb8057ed5c612e54ea9b9637","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":119,"deletions":1,"files":["jc/cli.py","jc/parsers/last.py"]},"message":"add last and lastb parser"},{"commit":"53ee2c36310cb84390ef96644aee6871769151c9","merge":"2ad3167 8bfa0bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #29 from kellyjonbrazil/dev"},{"commit":"8bfa0bddec9ff1c21972019467dcf5738ab3afd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"version bump to 1.7.5"},{"commit":"ad61e6bc81177a2add7d052bf1ddec5f1b3f2976","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":26,"insertions":598,"deletions":133,"files":["tests/fixtures/centos-7.7/ls-R-newlines.json","tests/fixtures/centos-7.7/ls-R-newlines.out","tests/fixtures/centos-7.7/ls-l-newlines.json","tests/fixtures/centos-7.7/ls-l-newlines.out","tests/fixtures/centos-7.7/ls-lR-newlines.json","tests/fixtures/centos-7.7/ls-lR-newlines.out","tests/fixtures/centos-7.7/ls-newlines.json","tests/fixtures/centos-7.7/ls-newlines.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/ls-R-newlines.json","tests/fixtures/osx-10.14.6/ls-R-newlines.out","tests/fixtures/osx-10.14.6/ls-l-newlines.json","tests/fixtures/osx-10.14.6/ls-l-newlines.out","tests/fixtures/osx-10.14.6/ls-lR-newlines.json","tests/fixtures/osx-10.14.6/ls-lR-newlines.out","tests/fixtures/osx-10.14.6/ls-newlines.json","tests/fixtures/osx-10.14.6/ls-newlines.out","tests/fixtures/ubuntu-18.04/ls-R-newlines.json","tests/fixtures/ubuntu-18.04/ls-R-newlines.out","tests/fixtures/ubuntu-18.04/ls-l-newlines.json","tests/fixtures/ubuntu-18.04/ls-l-newlines.out","tests/fixtures/ubuntu-18.04/ls-lR-newlines.json","tests/fixtures/ubuntu-18.04/ls-lR-newlines.out","tests/fixtures/ubuntu-18.04/ls-newlines.json","tests/fixtures/ubuntu-18.04/ls-newlines.out","tests/test_ls.py"]},"message":"add ls tests for filenames with newline characters"},{"commit":"873b5ba8acf599d083d6031b818d5fca83cbca9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":31,"files":["README.md"]},"message":"move examples to bottom"},{"commit":"6ae50054e2e8c7ca730013b43062eedc230c0ad4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"readme update"},{"commit":"22a35f41bf9c404d3532611f5929143d04b10010","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/ls.py"]},"message":"move variables to top"},{"commit":"961696c963215a9dab56113ff89f21a6e9739df6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/ls.py"]},"message":"add a warning if newlines are detected in naked ls"},{"commit":"c7b7f1a5dcf77a1f4c23ef6bbf5683fd1a055f72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"fix for files with newlines in naked ls"},{"commit":"b5a0d650b128d8af81bb14dd5d007349529cb66f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":151,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-newlines.out"]},"message":"ls output with newlines"},{"commit":"573b27946474276592ee7494689ce9a88f5a05f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"fixup for filenames that start with a newline character"},{"commit":"116e07f1614b4a45eb58ffcfe20b5efa71c473a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":7,"files":["jc/parsers/ls.py"]},"message":"fixes for multiple consecutive newlines and trailing newlines in filenames"},{"commit":"964868c8aff99edf37b0db41c7d16f8b84ac4704","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":21,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"add support for newlines in filenames (only with ls -l)"},{"commit":"c8dac32df8102c2b782e87d55bb95ca2d9490185","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"readme update"},{"commit":"72a0016bd833699c3819baa899f335f75b8c1943","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"use link to anchor for Parsers"},{"commit":"2ad316743460bb6620e7ede251e1dc2739b073fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update doc url"},{"commit":"ddabfaa05c63f886b17e5b4d37cd83fcfdb9b221","merge":"873771d f857523","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #25 from kellyjonbrazil/dev"},{"commit":"f857523ca756864211b6b18af5a8886e5db200bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"]},"message":"bump to version 1.7.4"},{"commit":"00d53858e820f00ba015bc25629100c8e5495221","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"add note about aliases not being supported"},{"commit":"c008167e660929a91606bb96498cdc113e815f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/ls.md","jc/parsers/ls.py"]},"message":"add time-style=full-iso option to doc"},{"commit":"102344a041e9e0aff8b6d9db1873ba1064f7e895","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/ls.py"]},"message":"formatting"},{"commit":"c865298ef3613fe6ce17f41c15209a69940af1ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"remove unnecessary enumerate in for loop"},{"commit":"6ac03faf939bcda8930a48a5e832b557813e2129","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"Revert \"add ubuntu and centos default ls aliases to magic_commands\""},{"commit":"49c2701743706b6cbf0e52b2c7f275e301315189","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"add ubuntu and centos default ls aliases to magic_commands"},{"commit":"d1a271b08e64b42be8cec11377b0e18435a0caec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":35333,"deletions":1374,"files":["tests/fixtures/centos-7.7/ls-R.json","tests/fixtures/centos-7.7/ls-R.out","tests/fixtures/centos-7.7/ls-alR.json","tests/fixtures/centos-7.7/ls-alR.out","tests/fixtures/centos-7.7/ls-glob.json","tests/fixtures/centos-7.7/ls-glob.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/ls-R.json","tests/fixtures/osx-10.14.6/ls-R.out","tests/fixtures/osx-10.14.6/ls-alR.json","tests/fixtures/osx-10.14.6/ls-alR.out","tests/fixtures/osx-10.14.6/ls-glob.json","tests/fixtures/osx-10.14.6/ls-glob.out","tests/fixtures/ubuntu-18.04/ls-R.json","tests/fixtures/ubuntu-18.04/ls-R.out","tests/fixtures/ubuntu-18.04/ls-alR.json","tests/fixtures/ubuntu-18.04/ls-alR.out","tests/fixtures/ubuntu-18.04/ls-glob.json","tests/fixtures/ubuntu-18.04/ls-glob.out","tests/fixtures/ubuntu-18.04/ls-lR.out","tests/test_ls.py"]},"message":"add new ls tests for recursive and multiple directories with glob"},{"commit":"7388ad19b9d252d3e66659e4bc37171cef2a9748","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":6,"deletions":4,"files":["docs/parsers/ls.md","jc/cli.py","jc/parsers/ls.py","setup.py"]},"message":"bump to v1.8.0"},{"commit":"2e63cb5fadd032c7cb54a618e8b374ee853abcca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"]},"message":"version bump ls to 1.1"},{"commit":"e7f14d02b12c7dcba309f2d28a0f171769d1ba37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1438,"deletions":8,"files":["jc/parsers/ls.py","tests/fixtures/ubuntu-18.04/ls-R.out","tests/fixtures/ubuntu-18.04/ls-lR.out"]},"message":"update ls to allow multi directory (glob and -R). Adds 'parent' key if found"},{"commit":"873771d05ab0b77163c95d2c37e11edf38451832","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting"},{"commit":"d7de122e36e0698e00f321fbac8dc0b543cf9e8a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"prettify link"},{"commit":"4ef0434f536c6658ddc2b48a3db113df2fd26000","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["README.md"]},"message":"formatting update"},{"commit":"1aa2c9925996f2358b6272547db755ec3098a8a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":2,"files":["README.md","jc/parsers/history.py"]},"message":"removed history from magic syntax"},{"commit":"c2450b27b079b02ed3f4ece9e36547f01cd4b139","merge":"028e136 14d6d8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #22 from kellyjonbrazil/dev"},{"commit":"14d6d8b84f0ddeff984aff486e2e697a91ac6fb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump to 1.7.3"},{"commit":"f0e3846c038ec5507cd4a19980d83ee0fb969ef5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["README.md"]},"message":"formatting"},{"commit":"6ba64f1128373843b068226424a3af545ac9d22c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":2,"files":["README.md"]},"message":"usage update"},{"commit":"13bcdbc6c9a81bc5d52fe7a84e6a0a34908db8bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"doc update"},{"commit":"cfba62db20674d788601354211a10e2b1675a0c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":6,"files":["jc/cli.py"]},"message":"correct parser search in magic()"},{"commit":"18fb69e36e303a3f9530dcb80354b25bfdbb931d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"docs/parsers link"},{"commit":"474eb0f3fdeaa612e189d745b12a5ed9c6e0a31b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"doc updates"},{"commit":"7f47b533701e60449351d5da03cd5960e0dec9ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":90,"deletions":68,"files":["README.md"]},"message":"add alternate magic syntax"},{"commit":"dc2907d3ce101043b30bcce71abb4bb02897f43a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["docs/parsers/crontab.md"]},"message":"doc update"},{"commit":"1af85811e06c489051c456918284a746ce12c692","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/fstab.py"]},"message":"remove magic_command info"},{"commit":"1c1b19a478fe5c356a93cd165518429e77fcbdf0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab.py"]},"message":"doc update"},{"commit":"66942d64babf932faeb887eb4ec0cab32829321a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"2fb6ae08d76e7a5727b2fcdd5def3e3822e0cf72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"]},"message":"fix shlex usage"},{"commit":"bf8811e03e2a5b736f4c084f42400fcde400ff3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":3,"files":["jc/cli.py"]},"message":"add comments"},{"commit":"c8b502c571d3081ca3086e349a426ca252a3bb84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/cli.py"]},"message":"remove unnecessary join and add comments"},{"commit":"81c11a975c6ee66a1f83350df8b065a6b07dcc9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/cli.py"]},"message":"added docstrings"},{"commit":"0d370eb403ab4d9ed11e36776efc08bdd3505c1a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"doc update"},{"commit":"7492c3f1e312cdb0c58c2077db0d60d2cab1e58f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"515a8a84b79c9bf6f3001d3c52faa82a6709b8d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":33,"insertions":33,"deletions":33,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add \"command\" to description"},{"commit":"dd6680efb2b15bb8ed676016aae1c65193dfe147","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":29,"deletions":14,"files":["changelog.txt","jc/cli.py"]},"message":"allow condensed options (-prdq is equivalent to -p -r -d -q)"},{"commit":"a7158373cd225685f5c398fa36b8d5208e20521c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"comment update"},{"commit":"6d50ec71997cac9c898737de93b8a945f0351e53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":6,"files":["jc/cli.py"]},"message":"add try/except to fix bare jc command condition"},{"commit":"95dbf98e8e03486f74d986683f52699f4f9c9577","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":6,"files":["jc/cli.py"]},"message":"allow options in magic syntax"},{"commit":"d49323e4ebf2a8aebd1d8ea65ef0854ee8bcb29f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":33,"insertions":33,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add magic_commands list to info"},{"commit":"08c1e2aec9d6bb68653dc12ba2272535fb7cef09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"]},"message":"add magic syntax"},{"commit":"a2c137df2e6d3b133df5df0bb3f9b1ca69990557","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":66,"deletions":299,"files":["jc/cli.py","jc/cli.py.old"]},"message":"better magic command syntax logic using introspection information from parser modules"},{"commit":"fe27dcdb8f72b5a288f978b87be2eb930099543e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":319,"deletions":45,"files":["jc/cli.py","jc/cli.py.old"]},"message":"proof of concept for magic syntax (e.g. jc ls -al)"},{"commit":"028e136161ac15f588845f87907b4565a6ee7be2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":7,"deletions":2,"files":["MANIFEST.in","changelog.txt","jc/cli.py","setup.py"]},"message":"bump to 1.7.2: add test fixtures to package"},{"commit":"9a85a0a4d504447b32fb622bb17cebc5e47f687f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/crontab_u.md","jc/parsers/crontab_u.py"]},"message":"fix doc"},{"commit":"3a1cbc4d5063344c3e3a4bf510d651a36beedfb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":14,"files":["jc/cli.py"]},"message":"move info class to top"},{"commit":"77d334f7f386f79ec0571325500054fdab207f31","merge":"4de8f42 53cdf86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #19 from kellyjonbrazil/dev-1.7.1"},{"commit":"53cdf863acc72dbdb671773e30277f42e9eadc0e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"7b7e7fe0fe92edef1e559bd7ae8272530d7ed5c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"0c03132847a3d2bcbdb0b743e1472865916cced4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"fix error codes using sys.exit()"},{"commit":"3b81f7e2a1381958b33962d4531f3fa223c6a83e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"exit code on ctrl-c exit"},{"commit":"3d76437b435660e92633c604c4ad32ee0500a28b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ini.md","docs/parsers/xml.md","jc/parsers/ini.py","jc/parsers/xml.py"]},"message":"doc fix"},{"commit":"4bc54c78cea48682ed0432ea56460a26a0e52f83","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":7,"deletions":7,"files":["docs/parsers/du.md","docs/parsers/history.md","jc/parsers/du.py","jc/parsers/history.py"]},"message":"fix compatibility list"},{"commit":"3d303a96b9f6d582b1e99a632da539c3bee4df7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":16,"deletions":2,"files":["tests/fixtures/centos-7.7/crontab-u.json","tests/fixtures/centos-7.7/{crontab2.out => crontab-u.out}","tests/fixtures/centos-7.7/crontab.json","tests/fixtures/ubuntu-18.04/crontab-u.json","tests/test_crontab_u.py"]},"message":"crontab bug fix and tests"},{"commit":"33c99d031d18e52a8ca85dfc1a8cba0acebfc3bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/crontab.py"]},"message":"fix line clobbering bug"},{"commit":"caf7e9f69a22f3c9b3d4624fd2238d6e54d932ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/crontab_u.py"]},"message":"fix line clobbering bug and add user field to shortcuts"},{"commit":"9449f1f5d5e7bc075549549758af5cc3a6c4524f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":9,"deletions":3,"files":["changelog.txt","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/fixtures/centos-7.7/crontab2.out"]},"message":"crontab bugfix: inserting header row was clobbering the first data row"},{"commit":"6bad164b5e2a5b7c7ce82c69b6c091fc079ab2fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":9,"files":["jc/cli.py"]},"message":"simplify by removing unnecessary getattr calls"},{"commit":"bb5ba7ddb146821db2efe095b6de5ae5b72bb335","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/cli.py"]},"message":"add indent variable to helptext"},{"commit":"8b2e01d5404649e8f94c81ca3b5fa05fe8962220","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"doc update"},{"commit":"ff1159b1deb9b870382a6066166961902679b569","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"exit codes on error"},{"commit":"a2fd3202a0a3df336792f167c546ea3e53ea2332","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/pip_list.py","jc/parsers/pip_show.py"]},"message":"description formatting change"},{"commit":"7b53715b91787a8885d61ddc0079c7ee8f9348a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/crontab_u.py"]},"message":"change description"},{"commit":"e05fc0a5107b348af14ff4bea39d274939fab7dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":8,"files":["jc/cli.py"]},"message":"change padding of helptext"},{"commit":"43604c33f654b8c19e8cce387ebbf31bd598b73b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]},"message":"doc update"},{"commit":"eb67c484ff2a9530b434cd6a90c160f6936e1de7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"add crontab-u to parsers list"},{"commit":"a7b7bdd46781d07e6e70d74a41a3944855fde5fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":94,"deletions":92,"files":["jc/cli.py"]},"message":"load parser modules 'just in time' so we don't need to load all modules at startup"},{"commit":"ab06989a18faf5378f1e73c7016ea02e1218ff9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["README.md"]},"message":"description updates"},{"commit":"657b722f947b6a0aa7e52a786e4c84f177e9a5c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":8,"deletions":8,"files":["README.md","changelog.txt","docs/parsers/ini.md","jc/parsers/ini.py"]},"message":"ini to INI"},{"commit":"dd2aecad2787186b3962723086bb7e13eff4874f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"description update"},{"commit":"c82c5c5c648384eb5a54205ba8590624a3ab4375","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"a1761cd68f91e2668d8d7e2fa7774f6496408be6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":42,"deletions":0,"files":["tests/fixtures/centos-7.7/id.json","tests/fixtures/osx-10.14.6/id.json","tests/test_id.py"]},"message":"id tests"},{"commit":"d618a7f583629bb7a7fc0854e7349cab07e3e003","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":143,"deletions":9,"files":["README.md","docgen.sh","docs/parsers/id.md","jc/parsers/id.py"]},"message":"doc update"},{"commit":"831a42f66096f5efbbf0f6882970c328120f9c9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["README.md"]},"message":"id formatting"},{"commit":"3b36022e5a1056a28a83494b1ab8fab209399c2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":250,"deletions":1,"files":["README.md","jc/cli.py","jc/parsers/id.py","tests/fixtures/centos-7.7/id.out","tests/fixtures/osx-10.14.6/id.out"]},"message":"add id parser"},{"commit":"d01dfa25f10f82cd201ae7b4c9cc18313773f8d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["changelog.txt"]},"message":"changelog updates"},{"commit":"395a99037b4816eb800b289f90372a9b8d7d36cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":89,"deletions":13,"files":["README.md","docs/parsers/history.md","jc/parsers/history.py"]},"message":"crontab-u and history doc updates"},{"commit":"025986c51d2d4869b17de63a7dd96efa2988e3c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":13,"deletions":3,"files":["jc/parsers/history.py","tests/fixtures/centos-7.7/history.json","tests/fixtures/ubuntu-18.04/history.json"]},"message":"change history 'line' to integer"},{"commit":"c56b83093ff05f55ef4643c1731cff61d4b9e8ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":202,"deletions":2,"files":["docgen.sh","docs/parsers/crontab.md","docs/parsers/crontab_u.md"]},"message":"doc update"},{"commit":"7c712a4133abd843d4da926e4c8d548abd1d6fa3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":52,"deletions":50,"files":["jc/parsers/crontab_u.py"]},"message":"doc update"},{"commit":"9a0cfe6dfa4888f435d35bd2d35126d031a556d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/crontab.py"]},"message":"minor formatting"},{"commit":"a116cdbcec1b27192dd0f9f4707629353edb3caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":29,"deletions":13,"files":["tests/fixtures/ubuntu-18.04/crontab-u.json",".../ubuntu-18.04/{crontab.out => crontab-u.out}","tests/fixtures/ubuntu-18.04/crontab.json","tests/test_crontab.py","tests/test_crontab_u.py"]},"message":"tests for crontab-u"},{"commit":"f2d616c98e049cdac5d667e63723f92110419a1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":272,"deletions":0,"files":["changelog.txt","jc/cli.py","jc/parsers/crontab_u.py"]},"message":"add crontab with user parser"},{"commit":"42cbd1777dbacc614d75f67f3f9156f72be46532","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":80,"deletions":0,"files":["tests/test_xml.py","tests/test_yaml.py"]},"message":"add xml and yaml tests"},{"commit":"ebf375aac0473249cfd212068f6e6e33cc42449a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":40,"deletions":0,"files":["tests/test_ini.py"]},"message":"add ini tests"},{"commit":"1f9050267eeb870c4c0f50000fc32985c4d8535b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":586,"deletions":0,"files":["tests/fixtures/generic/ini-iptelserver.ini","tests/fixtures/generic/ini-iptelserver.json","tests/fixtures/generic/ini-test.ini","tests/fixtures/generic/ini-test.json","tests/fixtures/generic/xml-cd_catalog.json","tests/fixtures/generic/xml-cd_catalog.xml","tests/fixtures/generic/xml-foodmenu.json","tests/fixtures/generic/xml-foodmenu.xml","tests/fixtures/generic/yaml-istio-sc.json","tests/fixtures/generic/yaml-istio-sc.yaml","tests/fixtures/generic/yaml-istio-sidecar.json","tests/fixtures/generic/yaml-istio-sidecar.yaml"]},"message":"add ini, xml, and yaml test files"},{"commit":"d7f9707a1521719ce051140b1a0b4ced7c5114c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/ini.py","jc/parsers/yaml.py"]},"message":"minor formatting"},{"commit":"ab589ee3ed09b9d5e09d8c046f3a64cd2bd14c98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/cli.py"]},"message":"add __version__ variable"},{"commit":"c84ec0361fc4c877c698378b28ff9e8b502793b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":105,"deletions":3,"files":["README.md","docgen.sh","docs/parsers/xml.md","jc/parsers/xml.py"]},"message":"xml example update"},{"commit":"47d2f8968a8a9b68fc9fff45985f5e69f1a5cc40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","changelog.txt"]},"message":"doc update"},{"commit":"019c480bcce7fe3821b75906fc673ce7bb1ffadc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"update acknowledgments"},{"commit":"547c6d3d5956984d3c4fb5c2a1b76a595752b467","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":172,"deletions":2,"files":["README.md","changelog.txt","jc/cli.py","jc/parsers/xml.py","setup.py"]},"message":"add xml parser"},{"commit":"b5ebf8b76afcd0e0190994048fe1f5b53f654451","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add ruamel.yaml ack"},{"commit":"c690e328f23a69f592dfaaa949b74ba2190ad376","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":102,"deletions":14,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"]},"message":"add examples"},{"commit":"cbb92c1a9517234806f1c54398a69645b6f43669","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":94,"deletions":0,"files":["README.md"]},"message":"add ini and yaml"},{"commit":"beb41997c9b3797e73a678ec1bcddcfb83b5ef0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":91,"deletions":2,"files":["docgen.sh","docs/parsers/ini.md","jc/parsers/ini.py"]},"message":"doc update"},{"commit":"755a6faf1110f150fe2261b81439b7d17a9b424e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":8,"files":["jc/parsers/yaml.py"]},"message":"clean up multi-document support"},{"commit":"021f8350a31a49ecc539f02576303600b222b49d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["changelog.txt"]},"message":"update doc"},{"commit":"76583dcd2f5ef32e58ca87149154563b07e061cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":113,"deletions":0,"files":["jc/cli.py","jc/parsers/ini.py"]},"message":"add ini file parser"},{"commit":"bf033239a706c42be3d7508c58a51c542f8a69b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":82,"deletions":7,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"]},"message":"doc update"},{"commit":"eb37fccd37fd625f701a14b6cfcf30e9f0bbff4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/yaml.py"]},"message":"doc update"},{"commit":"d04ad453319fe45e302da87f970d2ac0806fae1a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":2,"files":["changelog.txt","docgen.sh","setup.py"]},"message":"setup for 1.7.1"},{"commit":"db157b8ca7f7fa935676bafeaafdfd9818a89e6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":94,"deletions":2,"files":["jc/cli.py","jc/parsers/yaml.py"]},"message":"add yaml file parser"},{"commit":"68f277bb2081eb2cba14ffe7f0ee1ee0a982335b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":33,"insertions":99,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add __version__"},{"commit":"4de8f42664379570392552796e34324abb39fdc2","merge":"6633d92 4f11855","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #17 from kellyjonbrazil/dev"},{"commit":"4f118559356edc1da866e1bec80830e7a75a0b26","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["changelog.txt"]},"message":"update version info"},{"commit":"2b9a5fcc32f85295faa55410efcaf142c42bd167","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["setup.py"]},"message":"update version"},{"commit":"224948d1f23e01b7cd968820529579792f862f0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":428,"deletions":0,"files":["tests/fixtures/centos-7.7/pip-list.json","tests/fixtures/centos-7.7/pip-list.out","tests/fixtures/centos-7.7/pip-show.json","tests/fixtures/centos-7.7/pip-show.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.11.6/pip-list.json","tests/fixtures/osx-10.11.6/pip-list.out","tests/fixtures/osx-10.11.6/pip-show.json","tests/fixtures/osx-10.11.6/pip-show.out","tests/fixtures/osx-10.14.6/pip-list.json","tests/fixtures/osx-10.14.6/pip-list.out","tests/fixtures/osx-10.14.6/pip-show.json","tests/fixtures/osx-10.14.6/pip-show.out","tests/fixtures/ubuntu-18.04/pip-list-legacy.json","tests/fixtures/ubuntu-18.04/pip-list-legacy.out","tests/fixtures/ubuntu-18.04/pip-list.json","tests/fixtures/ubuntu-18.04/pip-list.out","tests/fixtures/ubuntu-18.04/pip-show.json","tests/fixtures/ubuntu-18.04/pip-show.out","tests/test_pip_list.py","tests/test_pip_show.py"]},"message":"pip list and pip show tests"},{"commit":"36f2812d5a7a94c412e098233c026d99d5205b60","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":15,"deletions":7,"files":["jc/parsers/pip_list.py"]},"message":"add support for legacy output"},{"commit":"be06aa2b31c057c56229e75c7fa70052b83053ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":65,"insertions":70,"deletions":66,"files":["docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"update parse() Return info"},{"commit":"41f8e3aba268ca0cd09931a04368615425c1aec8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":65,"insertions":67,"deletions":65,"files":["docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"update Return info"},{"commit":"093c0df8978ace842af5258f9aff72c63c6f843d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["README.md"]},"message":"schema info"},{"commit":"37afc7dc8ae30342d01f3f72e73646fa60bb5294","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["README.md"]},"message":"updte todo and compatibility"},{"commit":"efbf3549606fc77f8c16587ff04a0c316dfe5c00","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":126,"deletions":12,"files":["README.md","docgen.sh","docs/parsers/pip_show.md","jc/parsers/pip_show.py"]},"message":"doc update for pip show"},{"commit":"5e39fe0d8044787389d8f206f3c863d4bdf1e2ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":64,"deletions":5,"files":["jc/parsers/pip_show.py"]},"message":"pip show parser working"},{"commit":"47328dc65969f149c8f027286774ff0847c18add","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"]},"message":"add pip-show parser"},{"commit":"addeef50ba54f536855544937a6c98135ae5cd51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":84,"deletions":0,"files":["jc/parsers/pip_show.py"]},"message":"initial pip show parser add"},{"commit":"ad338cc5b50a178091c47cbea9a1db135a7fb678","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":56,"deletions":42,"files":["docs/parsers/crontab.md","jc/parsers/crontab.py"]},"message":"schema doc update"},{"commit":"202bc8201e31fd453c682265347b4e2ac2d41718","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["README.md","docs/parsers/crontab.md","jc/parsers/crontab.py"]},"message":"doc update"},{"commit":"5ff99de405fbd8f79f9c2e301ac27184e0aba6fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add argument to parser info"},{"commit":"86ebe2cf9c6b336eacf217393c3c3c324ee29ec0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":205,"deletions":1,"files":["README.md","docgen.sh","docs/parsers/crontab.md","docs/parsers/pip_list.md","jc/cli.py","jc/parsers/pip_list.py"]},"message":"initial add of pip list parser"},{"commit":"facf0b399c608d33f6a454ee24fd49fc62471742","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/crontab.py"]},"message":"add osx to campatible"},{"commit":"33db7b0bcb0f24979cad6e173737d75c8ed301af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":57,"deletions":0,"files":["tests/fixtures/centos-7.7/crontab.json","tests/fixtures/ubuntu-18.04/crontab.json","tests/fixtures/ubuntu-18.04/crontab.out","tests/test_crontab.py"]},"message":"add crontab tests"},{"commit":"663d07bca1181024d9d08b940237c52197c91729","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":191,"deletions":0,"files":["docgen.sh","docs/parsers/crontab.md"]},"message":"add crontab"},{"commit":"ba04e4997fcb28adbee446f633c121f1585b9f2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":113,"deletions":4,"files":["jc/parsers/crontab.py"]},"message":"update docs"},{"commit":"c4fee1b658c91afa2abdd746af6c1b4697c44b35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":72,"deletions":1,"files":["README.md"]},"message":"add crontab parser"},{"commit":"99b92a15bbebc5568f4455f388f945613c4a2759","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":37,"deletions":14,"files":["jc/parsers/crontab.py","tests/fixtures/centos-7.7/crontab.out"]},"message":"support shortcut schedules"},{"commit":"b076ab5b57a6a59db096485e5ff4eb9f91bae8be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":177,"deletions":0,"files":["jc/cli.py","jc/parsers/crontab.py","tests/fixtures/centos-7.7/crontab.out"]},"message":"initial crontab parser"},{"commit":"687759f75d0e80e81746a84f051e55cfdc870447","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":31,"deletions":31,"files":["README.md"]},"message":"alphabetize du entry"},{"commit":"9eaac7f3af0e0851c2d091d94c9920faa8a0fdfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":32,"deletions":0,"files":["README.md"]},"message":"add du"},{"commit":"4c24e00cfc0748d98e220d08820b88fc156148db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":21738,"deletions":9,"files":["tests/fixtures/osx-10.11.6/du.json","tests/fixtures/osx-10.11.6/du.out","tests/fixtures/ubuntu-18.04/du.json","tests/fixtures/ubuntu-18.04/du.out","tests/test_du.py"]},"message":"add osx-11 and ubuntu tests"},{"commit":"beb17011b03e720078b0752e79a6a0f6123d1d3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":131,"deletions":2,"files":["changelog.txt","docgen.sh","docs/parsers/du.md","docs/parsers/uname.md","tests/fixtures/osx-10.14.6/du.json","tests/test_du.py"]},"message":"du tests and docs"},{"commit":"e882bf55bcd1d3526423ed1ccc61fb4819395cce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":8755,"deletions":0,"files":["changelog.txt","jc/cli.py","jc/parsers/du.py","tests/fixtures/centos-7.7/du.json","tests/fixtures/centos-7.7/du.out","tests/fixtures/osx-10.14.6/du.out","tests/test_du.py"]},"message":"initial add du parser"},{"commit":"3a3016adb6d5b9e35f8a39908bfcdc65997cc5c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add parser_count to about"},{"commit":"1e8b68153ade8a1e3d2b4db36e0c402bbc887079","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":27,"deletions":1,"files":["tests/fixtures/osx-10.11.6/uname-a.json","tests/fixtures/osx-10.14.6/uname-a.json","tests/fixtures/osx-10.14.6/uname-a.out","tests/test_uname.py"]},"message":"add osx uname tests"},{"commit":"9335cf65fbb87e3a0a7da0c4e9bcd251cb829de2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"add uname osx support"},{"commit":"83f35256aee71f2619ddf880e2b8f2d6c63280bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":30,"deletions":19,"files":["jc/parsers/uname.py"]},"message":"add OSX support"},{"commit":"428333394817e4461a4eb095f4d6d128305a5f98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"version bump"},{"commit":"b8f902796b7fb23a41355b23f7ce235bd18edc58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["changelog.txt"]},"message":"shorten changelog"},{"commit":"8f99ab295cd15718b98781707def97539ad41920","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"]},"message":"info update"},{"commit":"882310e268e2022f0cd6da75f80f5356529cd05c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add name to about parser info"},{"commit":"56bce9521409d1850f75a3ae2be1363e765dd9dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":10,"files":["jc/cli.py"]},"message":"about code cleanup"},{"commit":"c13ecbec2952c5d6765397f645e90653a4fd9d05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":28,"insertions":2,"deletions":28,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"clean up parser info"},{"commit":"0ffaaa6e73649d1f657af569ac0b912f166e8493","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":9,"files":["jc/cli.py"]},"message":"clean up about code"},{"commit":"75eff3adea097157c005b2201e353a741241ce8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/utils.py"]},"message":"remove whitespace"},{"commit":"bf5f80476cff642ae672187ea59d40bdb602101e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["jc/cli.py"]},"message":"use real parser name in error message"},{"commit":"9aaf0fbb2f838c0af1e7f18fdb19104f9f5d3d39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":29,"insertions":146,"deletions":1,"files":["changelog.txt","docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md"]},"message":"doc updates"},{"commit":"8f01ef79532743573632d716ceea41d5ea752c88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add -a option info"},{"commit":"da1d087452da02631296b1b3dc9ee10d4b7f764b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"]},"message":"add parser version info"},{"commit":"e16bc7e882a27a1d5a4bd7cf9972208e6997f96f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":29,"insertions":82,"deletions":17,"files":["jc/cli.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add about information to parsers"},{"commit":"fe9bdd4811216257c05b16d6d61897929669d434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":31,"insertions":384,"deletions":219,"files":["changelog.txt","jc/cli.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add info class"},{"commit":"17b6f3f6d6c398a52166849088a793d0e3b328b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":26,"deletions":0,"files":["tests/fixtures/osx-10.11.6/uptime.json","tests/fixtures/osx-10.14.6/uptime.json","tests/test_uptime.py"]},"message":"add osx tests"},{"commit":"90a6baf0ee3b8b27476badada4e590e22144f810","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":52,"deletions":0,"files":["tests/fixtures/osx-10.11.6/ps-axu.json","tests/fixtures/osx-10.11.6/ps-ef.json","tests/fixtures/osx-10.11.6/w.json","tests/fixtures/osx-10.14.6/w.json","tests/test_ps.py","tests/test_w.py"]},"message":"add osx tests"},{"commit":"f0e73d0e72d540292f41fff51652932c4e8b0315","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":444,"deletions":0,"files":["tests/fixtures/osx-10.11.6/ps-axu.out","tests/fixtures/osx-10.11.6/ps-ef.out","tests/fixtures/osx-10.11.6/uname-a.out","tests/fixtures/osx-10.11.6/uptime.out","tests/fixtures/osx-10.11.6/w.out","tests/fixtures/osx-10.14.6/uname-a.out","tests/fixtures/osx-10.14.6/uptime.out","tests/fixtures/osx-10.14.6/w.out"]},"message":"add osx tests"},{"commit":"a762882f1ccea6789ce7813b313f3242175b5bd6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":88,"files":["tests/fixtures/osx-10.14.6/ps-axu.json","tests/fixtures/osx-10.14.6/ps-axu.out","tests/fixtures/osx-10.14.6/ps-ef.json","tests/fixtures/osx-10.14.6/ps-ef.out"]},"message":"fixture updates"},{"commit":"4c1bc5923658bf463805ea33ec8d170a817909ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":4,"deletions":3,"files":["docs/parsers/mount.md","docs/parsers/ps.md","docs/parsers/stat.md"]},"message":"doc updates"},{"commit":"f2962083f80503f82c3eddf470674c776e616b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":93,"deletions":17,"files":["changelog.txt","jc/parsers/mount.py","tests/fixtures/osx-10.14.6/mount.json","tests/fixtures/osx-10.14.6/mount.out","tests/fixtures/osx-10.14.6/mount2.json","tests/fixtures/osx-10.14.6/mount2.out","tests/test_mount.py"]},"message":"add osx support for mount parser"},{"commit":"a0b22a5bcfa0777895243088b2c0f3bb5b758775","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"]},"message":"help text formatting"},{"commit":"dcf393354cd57683aaeecbed7b884d19b0fe94d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"]},"message":"doc fix"},{"commit":"5f771656e3fdd703d449b2817faa4faeff1cd879","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/route.py"]},"message":"use universal parser"},{"commit":"f376aab79328a211a127f4f818e7007232f1fae3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/universal.py"]},"message":"doc update"},{"commit":"3c96464217a740571e16c74ad41c1d92f7585547","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":886,"deletions":13,"files":["jc/parsers/ps.py","tests/fixtures/osx-10.14.6/ps-axu.json","tests/fixtures/osx-10.14.6/ps-axu.out","tests/fixtures/osx-10.14.6/ps-ef.json","tests/fixtures/osx-10.14.6/ps-ef.out","tests/test_ps.py"]},"message":"osx fixes and tests"},{"commit":"c9892833a16bb63f78537717be65670eb65a87b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/mount.py"]},"message":"formatting change"},{"commit":"127c98affc7b122f0ced13852850214b9e07677e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"8687a772f53ecaf1a20464429060b94bbf660fe7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["jc/parsers/lsof.py"]},"message":"use universal parser"},{"commit":"b1162b14d42643fd53dbbe3f89ba042f030d9254","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":6,"files":["jc/parsers/lsmod.py"]},"message":"use universal parser"},{"commit":"8a8ee3570733c0c06b8cf53eb005e53ac2f9170f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":60,"files":["jc/parsers/lsblk.py"]},"message":"use universal parser"},{"commit":"5e109a3665cf0c286ac9dcbe2a452348a14b90ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/fixtures/create_fixtures.sh"]},"message":"add du"},{"commit":"11db478430515ef3e1020482792f23d1c40ca32b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"update changelog"},{"commit":"a85377014d9f93fcb9840715129b0e09d48d8584","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":11,"files":["jc/parsers/free.py"]},"message":"use universal parser"},{"commit":"3aea86234d33160f5b3139cbfc2f4f032f655f3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":70,"deletions":61,"files":["tests/fixtures/osx-10.11.6/ls-al.json","tests/fixtures/osx-10.11.6/ls-al.out","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.11.6/ls-alh.out","tests/fixtures/osx-10.11.6/ls.json","tests/fixtures/osx-10.11.6/ls.out"]},"message":"fix osx-10.11.6 tests"},{"commit":"916ec6ed6b858a8a496e4026b9bab5505abca2ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":193,"deletions":61,"files":["tests/fixtures/osx-10.11.6/ls-al.json","tests/fixtures/osx-10.11.6/ls-al.out","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.11.6/ls-alh.out","tests/fixtures/osx-10.11.6/ls.json","tests/fixtures/osx-10.11.6/ls.out","tests/fixtures/osx-10.14.6/ls-al.json","tests/fixtures/osx-10.14.6/ls-al.out","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.out","tests/fixtures/osx-10.14.6/ls.json","tests/fixtures/osx-10.14.6/ls.out","tests/test_ls.py"]},"message":"fix osx ls tests"},{"commit":"9dca6ba5393d8840ad7fc9509273715a71955bd1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":55,"insertions":120,"deletions":6,"files":["docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"doc formatting change"},{"commit":"0ebb89f561e1ced2e7f61ae19290e176c8a98bf2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["docs/parsers/arp.md"]},"message":"doc update"},{"commit":"e237867e242211ba37206911ebf1b35c97b417fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/arp.py"]},"message":"doc formatting"},{"commit":"78fa44fd9ac9790313de6f461eb46d9b8d6159d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":24,"insertions":75,"deletions":3,"files":["docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add compatibility to docs"},{"commit":"d615fa3b933ccd284bd8ee92baf5dfa6264507c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":30,"insertions":91,"deletions":1,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py"]},"message":"add compatibility to docs"},{"commit":"ce134dc332dd9175e0d1823a4959bed427a3ddce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":115,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-al.json","tests/fixtures/osx-10.14.6/ls-al.out","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.out","tests/fixtures/osx-10.14.6/ls.json","tests/fixtures/osx-10.14.6/ls.out","tests/test_ls.py"]},"message":"Add OSX tests for ls"},{"commit":"a56e4dc752a01635fbd9fc31e21d390bbd629084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":28,"deletions":3,"files":["changelog.txt","jc/parsers/arp.py","jc/parsers/universal.py"]},"message":"use universal simple table parser"},{"commit":"d221b4aa29e80dda2b591059f4d64c416bff0a17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"d2cba6ad2f1f1cd35aa174239584a0291abb8e37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py"]},"message":"add compatibility info"},{"commit":"84b3c30b525ddf1f74eb7fd833050a0ec69621dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":254,"deletions":2,"files":["tests/fixtures/osx-10.11.6/df-h.json","tests/fixtures/osx-10.11.6/df-h.out","tests/fixtures/osx-10.11.6/df.json","tests/fixtures/osx-10.11.6/df.out","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-aaaa.out","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig-x.out","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.11.6/dig.out","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/osx-10.14.6/df-h.out","tests/fixtures/osx-10.14.6/df.json","tests/fixtures/osx-10.14.6/df.out","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-aaaa.out","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig-x.out","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/osx-10.14.6/dig.out","tests/test_df.py"]},"message":"add osx tests"},{"commit":"68eeec19a812b735627763bb7d7e2a58b72f7504","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":30,"deletions":25,"files":["README.md","docs/parsers/df.md","jc/parsers/df.py"]},"message":"doc update"},{"commit":"c6d1528a2ed302ea82828b733a98db415be83708","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":19,"deletions":8,"files":["jc/parsers/df.py","jc/parsers/universal.py","tests/fixtures/centos-7.7/df.json","tests/fixtures/ubuntu-18.04/df.json"]},"message":"use _ instead of -"},{"commit":"50a6b256b8a0936299f562c208ede6187feeb9a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":83,"deletions":0,"files":["jc/parsers/universal.py"]},"message":"new universal parsers to limit code duplication"},{"commit":"bbba1fe477014d0b7f370ce46ed821121be81a8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":38,"deletions":19,"files":["jc/parsers/df.py"]},"message":"update df to use universal sparse table parser for osx compatibility"},{"commit":"46b827da6b438be73fab168c3f05298483b141e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":75,"deletions":4,"files":["changelog.txt","jc/parsers/arp.py","tests/fixtures/osx-10.11.6/arp-a.json","tests/fixtures/osx-10.11.6/arp-a.out","tests/fixtures/osx-10.14.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a.out","tests/test_arp.py"]},"message":"add osx compatibility"},{"commit":"5e8c28a30a283b6ef525e9e78d3ef2a0e1526927","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"]},"message":"comment fix"},{"commit":"e5d39031645ac897e0c0297f514ee62efe02f5f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":38,"deletions":17,"files":["docs/parsers/ifconfig.md"]},"message":"update ifconfig doc"},{"commit":"23975c9c9e1dd9d3e9fd7c05d231a86d646be048","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":132,"deletions":45,"files":["README.md","changelog.txt","jc/parsers/ifconfig.py","tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig2.json","tests/fixtures/osx-10.14.6/ifconfig.json","tests/fixtures/osx-10.14.6/ifconfig2.json","tests/fixtures/ubuntu-18.04/ifconfig.json","tests/test_ifconfig.py"]},"message":"fixup osx subnet mask and convert state to an array"},{"commit":"1e0dab8355e6fcb0ecde85270d4daac6ad93875b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":272,"deletions":2,"files":["tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.out","tests/fixtures/osx-10.11.6/ifconfig2.json","tests/fixtures/osx-10.11.6/ifconfig2.out","tests/fixtures/osx-10.14.6/ifconfig.json","tests/fixtures/osx-10.14.6/ifconfig.out","tests/fixtures/osx-10.14.6/ifconfig2.json","tests/fixtures/osx-10.14.6/ifconfig2.out","tests/fixtures/ubuntu-18.04/ifconfig.json"]},"message":"ifconfig fixture updates"},{"commit":"5f4c10ffd5a9cbe4e5e3d2b9adc34f36492eaf46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["README.md","changelog.txt"]},"message":"doc update"},{"commit":"6f3d2b4b566b963fbf38572c587e8bd4e18881dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"require ifconfig-parser v0.0.5 for mac and bytes support"},{"commit":"fea8ace8446b64abe9e61a028951bc4e6df9f9c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":6,"files":["README.md","jc/parsers/ifconfig.py"]},"message":"add OSX compatibility"},{"commit":"6633d9262c936217d8e90e64505c66b006cdab56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["_config.yml"]},"message":"Set theme jekyll-theme-cayman"},{"commit":"7d54137140e6d0515bc23c131a097af5c70c3379","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"link update"},{"commit":"2fcda6f2480ae6bd5428a0147c19f9af527391b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"add motivation to readme"},{"commit":"9c1b8bacf9a59a86feb2a91eb44919e800491d1e","merge":"d192745 4867655","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #16 from kellyjonbrazil/dev"},{"commit":"4867655eb297b1da7a55e0d3a24c7ed7c8af55c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":172,"deletions":0,"files":[".../centos-7.7/iptables-filter-line-numbers.json",".../centos-7.7/iptables-filter-line-numbers.out","tests/fixtures/create_fixtures.sh",".../ubuntu-18.04/iptables-filter-line-numbers.json",".../ubuntu-18.04/iptables-filter-line-numbers.out","tests/test_iptables.py"]},"message":"add line-numbers tests"},{"commit":"47410d1a95406b0960aac705e7cfe925fea3172c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["changelog.txt","setup.py"]},"message":"version bump"},{"commit":"5fa49f5e672fc6f8dc18fb4b1761c98b81362649","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"36c53827fab6ac38c0010250ec387db40fdeecfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":19,"insertions":1316,"deletions":308,"files":["tests/fixtures/centos-7.7/systemctl-ls.json","tests/fixtures/centos-7.7/systemctl-ls.out","tests/fixtures/centos-7.7/systemctl-luf.json","tests/fixtures/centos-7.7/systemctl-luf.out","tests/fixtures/centos-7.7/systemctl.json","tests/fixtures/centos-7.7/systemctl.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/systemctl-lj.json","tests/fixtures/ubuntu-18.04/systemctl-lj.out","tests/fixtures/ubuntu-18.04/systemctl-ls.json","tests/fixtures/ubuntu-18.04/systemctl-ls.out","tests/fixtures/ubuntu-18.04/systemctl-luf.json","tests/fixtures/ubuntu-18.04/systemctl-luf.out","tests/fixtures/ubuntu-18.04/systemctl.json","tests/fixtures/ubuntu-18.04/systemctl.out","tests/test_systemctl.py","tests/test_systemctl_lj.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py"]},"message":"add systemctl tests"},{"commit":"51631aef5b1b6fdeff4ab543510a9f9e15a0c2c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":358,"deletions":0,"files":["tests/fixtures/centos-7.7/systemctl.json","tests/fixtures/centos-7.7/systemctl.out","tests/fixtures/ubuntu-18.04/systemctl.json","tests/fixtures/ubuntu-18.04/systemctl.out","tests/test_systemctl.py"]},"message":"add systemctl tests"},{"commit":"a0298ac8a39093620b6859c909a78d11ab4a8e56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":55,"deletions":0,"files":["tests/fixtures/centos-7.7/fstab.json","tests/fixtures/centos-7.7/fstab.out","tests/fixtures/ubuntu-18.04/fstab.json","tests/fixtures/ubuntu-18.04/fstab.out","tests/test_fstab.py"]},"message":"add fstab tests"},{"commit":"98c0188821ebaa71c5661f2e095cf464bec695f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/systemctl_ls.md","jc/parsers/systemctl_ls.py"]},"message":"formatting fix"},{"commit":"ab1dabe3e42997825707006b63cc0c03d28470d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py"]},"message":"doc update"},{"commit":"94bdb11fdf0e16d89769046d317643334ef1acdd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"]},"message":"remove systemctl from TODO"},{"commit":"b6727d68bab66164a3834b240ae868062aad9371","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":68,"deletions":0,"files":["README.md"]},"message":"add systemctl parsers"},{"commit":"89bad7fc2b4023b10b6eeb7ff1f8f18b71731cb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":1,"deletions":191,"files":["changelog.txt","docgen.sh","docs/parsers/systemctl_lm.md","jc/cli.py","jc/parsers/systemctl_lm.py"]},"message":"remove systemctl list-machines parser"},{"commit":"c0b8b810a2616e77973c1223f9c39329112337ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":306,"deletions":0,"files":["docgen.sh","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_lm.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md"]},"message":"add systemctl list parsers"},{"commit":"31eb65acd18b6d9163de900dbe48807a41a23785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_lm.py"]},"message":"doc fix"},{"commit":"513bbeb4649c011476930e1d1bf739ff06c2d66f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/systemctl_lj.py"]},"message":"add break on footer condition"},{"commit":"3a52fb725a0e56b52a0ea430266400b268360737","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":55,"deletions":29,"files":["jc/cli.py","jc/parsers/systemctl_lj.py"]},"message":"add systemctl list-jobs parser"},{"commit":"5affd444999de88b9bff7b49d790913540f97cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":342,"deletions":24,"files":["jc/cli.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_lm.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py"]},"message":"add systemctl_lj, lm, ls, and luf"},{"commit":"5dbc6e806c5d05bfa1f7e2156ed2573341eb23c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":142,"deletions":29,"files":["jc/cli.py","jc/parsers/systemctl_luf.py"]},"message":"add systemctl_luf parser"},{"commit":"59ae31f3f342c9337037aac4630310c9b9eb8287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":219,"deletions":0,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/systemctl.md","jc/cli.py","jc/parsers/systemctl.py"]},"message":"add systemctl parser"},{"commit":"230e921c2e8d931ea8a6abdf81215dbfc968b41c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"]},"message":"remove fstab from TODO"},{"commit":"a7c3d88b08ab90b719035cb15d78afe708235742","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":136,"deletions":0,"files":["docgen.sh","docs/parsers/fstab.md","jc/parsers/fstab.py"]},"message":"update example and docs"},{"commit":"9b453bcb84dd9f2f566955eda1ab35c863b3e8a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":13,"files":["jc/parsers/fstab.py"]},"message":"remove commented code block"},{"commit":"ce43c782f601fc12267fa22279e8e0142ecc3a7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"fstab update"},{"commit":"cb16faaf4d1700379d53053fe06824fd03404f87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"helptext update"},{"commit":"3f1d3ff6d85422536e0adfb6433fd3ec0399ebe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":73,"deletions":6,"files":["README.md","jc/parsers/fstab.py"]},"message":"add examples"},{"commit":"6f67eecd5ed46f8a692ff5dd607a2395a5c838ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":108,"deletions":0,"files":["jc/cli.py","jc/parsers/fstab.py"]},"message":"add fstab parser"},{"commit":"e75c819190634f0a9048942b39eda691831829ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"601e68d104dd43940acadaa574dfd9b5117b0476","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/hosts.md","jc/parsers/hosts.py"]},"message":"doc update"},{"commit":"8285ecfd1e7810102cdbc399398a16f999c841ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["tests/fixtures/centos-7.7/hosts.out","tests/fixtures/ubuntu-18.04/hosts.out"]},"message":"enhance test file with comments"},{"commit":"8726de902e527b95a12afd79a53d533cc176703d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"add hosts parser"},{"commit":"4133585274b0e7faa0255a911468248eb390d673","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":53,"deletions":0,"files":["tests/fixtures/centos-7.7/hosts.json","tests/fixtures/centos-7.7/hosts.out","tests/fixtures/ubuntu-18.04/hosts.json","tests/fixtures/ubuntu-18.04/hosts.out","tests/test_hosts.py"]},"message":"add hosts tests"},{"commit":"ad913b141721655a72a7b2a6ad60037e5acd5f9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":148,"deletions":2,"files":["README.md","docgen.sh","docs/parsers/hosts.md","jc/parsers/hosts.py"]},"message":"add hosts docs"},{"commit":"7113e5a844fc0304f62f4afe65b5cbc816f75372","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":0,"files":["jc/parsers/hosts.py"]},"message":"filter out comments at the end of the line"},{"commit":"a3a8369dc0e7227072f595cef1e57d471eff4d2f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":51,"deletions":9,"files":["jc/parsers/hosts.py"]},"message":"add docs"},{"commit":"64016b8ef049d5d4f02b4371f5cc9632c19bcaa2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["jc/cli.py","jc/parsers/hosts.py"]},"message":"add hosts parser"},{"commit":"1cb49d60c84054b0446f299f6b4bab7d102101c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["README.md"]},"message":"remove sar and sadf"},{"commit":"c858adfd12144569d0b990a217c5bcd75bd23828","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"]},"message":"remove stat from todo"},{"commit":"08d68327c777dd740d93a1b5fff8cf62f58904c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":8080,"deletions":0,"files":["tests/fixtures/centos-7.7/stat.json","tests/fixtures/centos-7.7/stat.out","tests/fixtures/ubuntu-18.04/stat.json","tests/fixtures/ubuntu-18.04/stat.out","tests/test_stat.py"]},"message":"add stat tests"},{"commit":"0d7c6c5664911af7a41149d51dd6ae05b39d7648","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/parsers/stat.md","jc/parsers/stat.py"]},"message":"doc fix and add continue lines"},{"commit":"8bfa41dbf485cb06c928bc00a68727d2ceac21fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":22,"deletions":14,"files":["README.md","docs/parsers/stat.md","jc/parsers/stat.py"]},"message":"change values to null if -"},{"commit":"7e2fa48ed4f3fd452082ce06e7306efd38b2d508","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"update changelog"},{"commit":"340635cad5224f2c715bf961956f4b9b6119d80b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":408,"deletions":111,"files":["docgen.sh","docs/parsers/ss.md","docs/parsers/stat.md"]},"message":"fix stats doc"},{"commit":"8f77d1de098f035767d73a6965a695b95b75e161","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":111,"deletions":253,"files":["docgen.sh","docs/parsers/ss.md"]},"message":"add stat docs"},{"commit":"7dcf1b25ffb801375f0bf4263f34713ded904de9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":0,"files":["jc/parsers/stat.py"]},"message":"add link_to field"},{"commit":"9b735381063a1167a6a74864a43b81aefd98009f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"]},"message":"set compatibility to linux only"},{"commit":"3bf8c8c6dbdf7e03e26b4581e35c3274084c07ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":27,"deletions":27,"files":["jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"pep8 fixes"},{"commit":"04a1ff2ca7873d55cdbc831e521f3d4892074d98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":28,"deletions":28,"files":["jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py"]},"message":"pep8 fixes"},{"commit":"64647d230ac936cb43864481ae0f45d13707d7b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":21,"deletions":21,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py"]},"message":"pep8 cleanup"},{"commit":"c2a67e1b70f33044aecabd8b46018117cb38cb9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":213,"deletions":16,"files":["README.md","jc/parsers/stat.py"]},"message":"add stat parser"},{"commit":"edb9a7c76e1fedaf37b6a226ad4e1cfc08a9a5ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":94,"deletions":0,"files":["jc/cli.py","jc/parsers/stat.py"]},"message":"add stat parser"},{"commit":"a407f5b67833cc5f8dda9fe8265cd34e62f28d14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"minor update"},{"commit":"e5b4987acb70e854d9996350235c5535b4a46b69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"doc update"},{"commit":"ba8cc18eebe779742cff0ba4c8bebe376e787c8c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":405,"deletions":0,"files":["tests/fixtures/centos-7.7/ss-sudo-a.json","tests/fixtures/centos-7.7/ss-sudo-a.out","tests/fixtures/ubuntu-18.04/ss-sudo-a.json","tests/fixtures/ubuntu-18.04/ss-sudo-a.out","tests/test_ss.py"]},"message":"add ss tests"},{"commit":"d2c7316e00b9aaf19231c05351821041458baf98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"update command options info"},{"commit":"609aa14d243206e81ed31f8438c3f42e8263e140","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/ss.md","jc/parsers/ss.py"]},"message":"spelling fix"},{"commit":"ef1ad4c700fcb740b5fbe1e12205b9a30ae427ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["docs/parsers/ss.md","jc/parsers/ss.py"]},"message":"doc update"},{"commit":"a0e2732152dc3005914b9a3e4f03e937a113c67f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":64,"deletions":12,"files":["README.md"]},"message":"add ss example"},{"commit":"9b5d3e3be1ac07813e716f8426fe89cced478221","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":135,"deletions":25,"files":["docs/parsers/ss.md"]},"message":"update doc"},{"commit":"2663ef31fbc1b69b89b8032640a25065cc953866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":159,"deletions":30,"files":["jc/parsers/ss.py"]},"message":"fix field names per ss documentation"},{"commit":"a4cdd3378e6a031f16dd371ed5cd60ff018feb32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["README.md"]},"message":"add compatibility info"},{"commit":"2f805da24d0e833e3d2a1f3a5ec34031fa911c05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":45,"insertions":51,"deletions":51,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/utils.md","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/utils.py"]},"message":"add colon to parameter in docs"},{"commit":"79152a946d93e4facf9711bfa0f421e1978e0f1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"initialize network_list and socket_list variables"},{"commit":"de37bb37d01b397df2b5992b4acd64817380401d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":187,"deletions":1,"files":["docgen.sh","docs/parsers/ss.md","jc/parsers/ss.py"]},"message":"add ss docs"},{"commit":"f783e44e5c0cd05733da5d24573f06d05760f993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["README.md","changelog.txt"]},"message":"doc fix"},{"commit":"af82f2c991ac0668485e75ae78a26b9553ec8b13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update raw format note"},{"commit":"46774daf9d3e0612df8f79d4b6b724e612ceb725","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":194,"deletions":4,"files":["README.md","jc/parsers/ss.py"]},"message":"doc update"},{"commit":"648306b7856fe2e296ce463ff4c9c2a8632c92d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":44,"deletions":22,"files":["jc/parsers/ss.py"]},"message":"process ss data"},{"commit":"b7a4f205b80c0a6a41aaabf59703525ac526c295","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":17,"deletions":14,"files":["jc/parsers/ss.py"]},"message":"parser fixes"},{"commit":"fdb168b43a69358a97bf43b71a0adbc7b1ef56f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":120,"deletions":0,"files":["jc/cli.py","jc/parsers/ss.py"]},"message":"add ss parser"},{"commit":"b6f65c93c462856f26201df0cbfe804b29a65169","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":43,"deletions":69,"files":["README.md","docs/parsers/ps.md","jc/parsers/ps.py"]},"message":"ps doc update"},{"commit":"3f4838f17a81969718d9e5b6bafa21e0b92e1d95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":6,"files":["docgen.sh","docs/cli.md"]},"message":"remove cli.md"},{"commit":"eef0dee2aa206716d9cf011bec58a06c46bbee15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":0,"files":["docs/utils.md","jc/utils.py"]},"message":"doc update"},{"commit":"e17388d3b2d1521d963bf9dd9e7a4ba5ba9bb09d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":44,"deletions":4,"files":["docs/utils.md","jc/utils.py"]},"message":"doc update"},{"commit":"7e6a1bc719b7160ba70cd326ff6aa182993a7380","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":41,"deletions":63,"files":["docs/readme.md","jc/__init__.py"]},"message":"doc update"},{"commit":"37738a2ea2f15af847e4b8383aba911e2020a3e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update contributions"},{"commit":"c5834a57db8957723a1425b9db46c433e28a3af1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":0,"files":["README.md"]},"message":"add todo section"},{"commit":"91b9373f380e06f91888811edbfb21747ff08810","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":417,"deletions":673,"files":["README.md"]},"message":"new examples"},{"commit":"ce0bb5b816eed0c75542ead474c3dcb8401be2d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"formatting fix"},{"commit":"f330ff0eff00586f46d18497f2441e94b6430e91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["README.md"]},"message":"wrap example text"},{"commit":"4b02700414660b90518311485761870402368625","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":20,"files":["README.md"]},"message":"update simple examples"},{"commit":"ee30180376b7acec46314bbc483866bff41c362a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"fix note"},{"commit":"338e0ff15c7fac84475c1ed107e6a23e7a009b1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"]},"message":"add schema note"},{"commit":"3ac75305dfa33429646bb5d415567034cccfeee3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":39,"insertions":351,"deletions":39,"files":["docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"update process() doc"},{"commit":"3bdcf44afb708cf6a716a0847b119f895602c23e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":18,"deletions":2,"files":["docs/parsers/arp.md","jc/parsers/arp.py"]},"message":"doc update"},{"commit":"e3f4ffede56fe48c0a282a021ac5cdfd7a8abee9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":20,"insertions":172,"deletions":77,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md"]},"message":"doc update"},{"commit":"f0c8725d4355113f7690f20bb99078e488084ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":181,"deletions":81,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"doc update"},{"commit":"5473bc4eb697d00bd26a038287e1137e438cacb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":16,"deletions":6,"files":["docs/parsers/arp.md","jc/parsers/arp.py"]},"message":"doc update"},{"commit":"b9bd9422bfa46144416fa65add2e041d4124357b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":380,"deletions":46,"files":["docs/parsers/dig.md","jc/parsers/dig.py"]},"message":"doc update"},{"commit":"cb5729a070925a7fa29f762bd4b074532f5cba55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":62,"deletions":44,"files":["README.md"]},"message":"add options to docs"},{"commit":"f0b1ab42337746afd37365abdf44729d530d5410","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/utils.md","jc/utils.py"]},"message":"doc update"},{"commit":"b15386e849b9fea347e7b17307eedf779d8022fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":11,"deletions":5,"files":["docs/utils.md","jc/utils.py"]},"message":"doc update"},{"commit":"d2a2c8da35ee44e9a7572885609548eb809bcdda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":5,"files":["docs/parsers/iptables.md","docs/parsers/mount.md","docs/parsers/uname.md"]},"message":"doc updates"},{"commit":"7251548cbb09beae6971385a56036e9649bd9b2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":5,"files":["jc/parsers/iptables.py","jc/parsers/mount.py","jc/parsers/uname.py"]},"message":"documentation updates"},{"commit":"146e29f7cbc0f396be67dbd7ae971a4ef4dafb7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":47,"insertions":5386,"deletions":2249,"files":["docgen.sh","docs/cli.md","docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/readme.md","docs/utils.md","jc/__init__.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/utils.py"]},"message":"update docs"},{"commit":"363fd3eab409351121dab8a11c6b565829ccd84a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"move parser_name to except block"},{"commit":"4083dd4260ff3a8bb6649e1661cf3e058fdbad59","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":24,"deletions":5,"files":["changelog.txt","jc/cli.py"]},"message":"add -d option"},{"commit":"b2b74547baaf33058d74fc08cb665777b19bd05a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":317,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-sudo-aeep.json","tests/fixtures/centos-7.7/netstat-sudo-aeep.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.json","tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.out","tests/test_netstat.py"]},"message":"add netstat-sudo-aeep tests"},{"commit":"dddb0baabf8a78261ac80380b97e7c92c7ce4d89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/netstat.py"]},"message":"use \\u2063 instead of \\u2026"},{"commit":"84b4f67ef9d4bb0db201a095d74400a56394589d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["tests/fixtures/centos-7.7/ps-axu.json","tests/fixtures/ubuntu-18.04/ps-axu.json"]},"message":"new json output"},{"commit":"3a089138b8c269ba3c5f7aec87ae3f8ec368c3ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":129,"deletions":9,"files":["jc/parsers/ps.py"]},"message":"add int and float changes"},{"commit":"3ff0305c8e62ce3b5a8f3f9174c5a9da3bc22766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":54,"deletions":2,"files":["tests/fixtures/centos-7.7/lsblk-allcols.json","tests/fixtures/centos-7.7/lsblk-allcols.out","tests/fixtures/centos-7.7/lsblk.json","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/lsblk-allcols.json","tests/fixtures/ubuntu-18.04/lsblk-allcols.out","tests/fixtures/ubuntu-18.04/lsblk.json","tests/test_lsblk.py"]},"message":"add lsblk tests"},{"commit":"761edc3c6cfc215fe45c65ee2bb5462cb460b6a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":6,"files":["jc/parsers/lsblk.py"]},"message":"remove unused parse_pairs function"},{"commit":"3351c81f647ac97a5038cc0c14adb31e55832a77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":200,"deletions":2,"files":["jc/parsers/lsblk.py"]},"message":"add documentation"},{"commit":"3dfc6f67d770c59804bdeb371d5c78e3f3668f9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/lsblk.py"]},"message":"change empty values to Null"},{"commit":"1546ec3bd139ef687282f60786388b5207541c98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":17,"deletions":13,"files":["jc/parsers/lsblk.py"]},"message":"fixes for right justified columns"},{"commit":"2a953011f72e922c89b9af6dfebd1983da7c338d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":50,"deletions":155,"files":["changelog.txt","jc/parsers/lsblk.py"]},"message":"rewrite of lsblk parser to use a custom delimiter"},{"commit":"d2f755de9d2be7b0af5f010042e1f4ca589c5464","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":14,"insertions":250,"deletions":566,"files":["tests/test_ifconfig.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_ls.py","tests/test_lsblk.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_ps.py","tests/test_route.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py"]},"message":"updates tests"},{"commit":"f363334639c5fa3a43889794ea52409056a2d886","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":87,"deletions":219,"files":["tests/test_df.py","tests/test_dig.py","tests/test_env.py","tests/test_free.py","tests/test_history.py"]},"message":"update tests"},{"commit":"750197e48596ad96804477053d3ff3c8063ea68a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":70,"files":["tests/test_arp.py"]},"message":"new tests"},{"commit":"36b349e4ed39fe611c7d87a47c378cc4d4627ad2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":76,"insertions":76,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-a.json","tests/fixtures/centos-7.7/arp-v.json","tests/fixtures/centos-7.7/arp.json","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/df.json","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/centos-7.7/env.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/centos-7.7/free.json","tests/fixtures/centos-7.7/history.json","tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/centos-7.7/iptables-filter-nv.json","tests/fixtures/centos-7.7/iptables-filter.json","tests/fixtures/centos-7.7/iptables-mangle.json","tests/fixtures/centos-7.7/iptables-nat.json","tests/fixtures/centos-7.7/iptables-raw.json","tests/fixtures/centos-7.7/jobs.json","tests/fixtures/centos-7.7/ls-al.json","tests/fixtures/centos-7.7/ls-alh.json","tests/fixtures/centos-7.7/ls.json","tests/fixtures/centos-7.7/lsblk.json","tests/fixtures/centos-7.7/lsmod.json","tests/fixtures/centos-7.7/lsof-sudo.json","tests/fixtures/centos-7.7/lsof.json","tests/fixtures/centos-7.7/mount.json","tests/fixtures/centos-7.7/netstat-l.json","tests/fixtures/centos-7.7/netstat-p.json","tests/fixtures/centos-7.7/netstat-sudo-lnp.json","tests/fixtures/centos-7.7/netstat.json","tests/fixtures/centos-7.7/ps-axu.json","tests/fixtures/centos-7.7/ps-ef.json","tests/fixtures/centos-7.7/route-vn.json","tests/fixtures/centos-7.7/route.json","tests/fixtures/centos-7.7/uname-a.json","tests/fixtures/centos-7.7/uptime.json","tests/fixtures/centos-7.7/w.json","tests/fixtures/ubuntu-18.04/arp-a.json","tests/fixtures/ubuntu-18.04/arp-v.json","tests/fixtures/ubuntu-18.04/arp.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/df.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json","tests/fixtures/ubuntu-18.04/env.json","tests/fixtures/ubuntu-18.04/free-h.json","tests/fixtures/ubuntu-18.04/free.json","tests/fixtures/ubuntu-18.04/history.json","tests/fixtures/ubuntu-18.04/ifconfig.json","tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","tests/fixtures/ubuntu-18.04/iptables-filter.json","tests/fixtures/ubuntu-18.04/iptables-mangle.json","tests/fixtures/ubuntu-18.04/iptables-nat.json","tests/fixtures/ubuntu-18.04/iptables-raw.json","tests/fixtures/ubuntu-18.04/jobs.json","tests/fixtures/ubuntu-18.04/ls-al.json","tests/fixtures/ubuntu-18.04/ls-alh.json","tests/fixtures/ubuntu-18.04/ls.json","tests/fixtures/ubuntu-18.04/lsblk.json","tests/fixtures/ubuntu-18.04/lsmod.json","tests/fixtures/ubuntu-18.04/lsof-sudo.json","tests/fixtures/ubuntu-18.04/lsof.json","tests/fixtures/ubuntu-18.04/mount.json","tests/fixtures/ubuntu-18.04/netstat-l.json","tests/fixtures/ubuntu-18.04/netstat-p.json","tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.json","tests/fixtures/ubuntu-18.04/netstat.json","tests/fixtures/ubuntu-18.04/ps-axu.json","tests/fixtures/ubuntu-18.04/ps-ef.json","tests/fixtures/ubuntu-18.04/route-vn.json","tests/fixtures/ubuntu-18.04/route.json","tests/fixtures/ubuntu-18.04/uname-a.json","tests/fixtures/ubuntu-18.04/uptime.json","tests/fixtures/ubuntu-18.04/w.json"]},"message":"json output files"},{"commit":"b5f1e94fe2859c4fbcf126f8f8fb20d71a9b6433","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/netstat.py"]},"message":"fix for space before '-' in program_name"},{"commit":"6a504fb0e10b1ef551ed9fe780926fe5ca02d267","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"]},"message":"add exception type"},{"commit":"e02bad2240bacbc31097d931a902a34217d559db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":123,"deletions":175,"files":["jc/parsers/netstat.py"]},"message":"update documentation"},{"commit":"1d4043a3b64c38a20a0db065c3bdc3c6a2d068bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":52,"deletions":0,"files":["jc/parsers/foo.py"]},"message":"add template parser"},{"commit":"039e034829789ca314a00abd4f1d9ad06f1a6eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":6,"files":["jc/parsers/netstat.py"]},"message":"fix parsing issues in program_name when spaces are in the name"},{"commit":"d828de4f4f2f4c3d582fddee79830d12511c3299","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":53,"deletions":9,"files":["jc/parsers/w.py"]},"message":"update documentation"},{"commit":"098000bb10a3f5ed33d285c6ba4f0dfb9a013fdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":24,"deletions":9,"files":["changelog.txt","jc/parsers/w.py"]},"message":"fix blank 'from' column issue"},{"commit":"b41165eff5cd7371e852cd33e084a919524ead9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":31,"deletions":1,"files":["jc/parsers/w.py"]},"message":"process w data"},{"commit":"6ad7891b2b34fae1a366568e4eba86e886a6dd84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":59,"deletions":14,"files":["jc/parsers/uptime.py"]},"message":"process uptime data"},{"commit":"72138315598cd405bc0508b554108bf3f730dcb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":31,"deletions":10,"files":["jc/parsers/uname.py"]},"message":"add process boilerplate"},{"commit":"10eedd82e4c4678fbf989fe599d7ca75deced5a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"a55493da0f1457a46f29511e0835adfa9d748f7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":93,"deletions":6,"files":["jc/parsers/route.py"]},"message":"process route data"},{"commit":"89973f4162317693b0d094a64115ee87d8479d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":45,"deletions":27,"files":["jc/parsers/ps.py"]},"message":"doc updates and tty fix"},{"commit":"4802222ad50d55372f2b883d83a61181086b0619","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/parsers/ps.py"]},"message":"process ps data"},{"commit":"bcd28f06f87a4260d1787399d723817afd6aee90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":1,"files":["jc/parsers/ps.py"]},"message":"prep ps for process"},{"commit":"e17a47a7fa7f4c1bb4c4b55fb004963fc1b61434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"fix typo"},{"commit":"cad2e16c7aa54a70f476bf4268ff8e5985cff468","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":353,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"document examples"},{"commit":"5da5d278dac77bd4aa21819194e7f9e178bd1887","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":0,"files":["jc/parsers/netstat.py"]},"message":"process netstat data"},{"commit":"81b6776e57c113cbfb8346d1cfd83532a440c257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":177,"files":["jc/parsers/netstat.py.old"]},"message":"remove old netstat parser"},{"commit":"5ecb6bd58b4ed91f63e4a0b5939378bd9925b7b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":3,"files":["changelog.txt","jc/parsers/netstat.py"]},"message":"doc updates"},{"commit":"21b56096c57cfcf5c55fdf5f9bab88b6d5c7dd73","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["jc/parsers/netstat.py"]},"message":"finalize parse_post"},{"commit":"8c78f959731a25a05ee6361a14853c92f8fce69b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"clean up trailing spaces on entries"},{"commit":"94a88bb5669d9a9a5dff085a4c4111bdd39df8f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":35,"deletions":17,"files":["jc/parsers/netstat.py"]},"message":"post_parse flags and program_name"},{"commit":"579124475b0b517b36ddbe5bdb13be14807dea1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"]},"message":"simplify parser_map code"},{"commit":"5da83e020015eb5559d216bc3f39b3854e76adf3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"]},"message":"fix found variable error"},{"commit":"a90a76d004b923edece07a52a3aa400a9ef4b005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":177,"deletions":140,"files":["jc/parsers/netstat.py.old","jc/parsers/netstat2.py"]},"message":"move out old netstat parser"},{"commit":"bdfa95912398b2630fcb13e866f4013747fd0975","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":20,"insertions":209,"deletions":212,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"fix compatibility code"},{"commit":"4380594275bc863e81839a6a7b032a6ff0cbb9b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":46,"files":["jc/utils.py"]},"message":"remove cli functions from utils"},{"commit":"88bf252c0df3c583640286880d7992e4399e23f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":139,"deletions":128,"files":["jc/cli.py","jc/jc.py"]},"message":"rename jc.py to cli.py"},{"commit":"a5efd8adce77fca7e3343f8f518c7bad578fdb4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"rename jc.py to cli.py"},{"commit":"2ee392eefffde77ebdf83f5e4e0c43cf8c1a7d6e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/netstat2.py"]},"message":"add quiet mode"},{"commit":"9c1d893e16ea17b16bec5fd0ec8839c4fe6f0590","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":102,"deletions":90,"files":["jc/jc.py","jc/parsers/arp.py","jc/parsers/df.py","jc/utils.py"]},"message":"move utils to own module and add quiet mode"},{"commit":"88dcb90c83b757285661c72429c5b60bb1ead94a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"a3bcabc89c1f74d067da0046492dbc56e50b1005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":62,"files":["jc/parsers/netstat2.py"]},"message":"mvp of netstat raw_data parser"},{"commit":"dafbf9fdcf53a8abbd006baef0be6697f860d2a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":247,"deletions":53,"files":["jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat2.py"]},"message":"process lsmod data"},{"commit":"680cb2b2caa82e1e2c3225b3c44cae2ba03ba02c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":76,"deletions":7,"files":["jc/parsers/lsblk.py"]},"message":"doc update"},{"commit":"54818a06e0e0b981810f6aec45c308da81a9e2ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/lsblk.py"]},"message":"change bool variable names"},{"commit":"88f4c5b5a93da3938b84f97abfc54539ee19ac48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":10,"deletions":10,"files":["jc/parsers/dig.py","jc/parsers/free.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py"]},"message":"remove TypeError from exception check"},{"commit":"2bb7409887e8b7659613189daf58d02cb26bd6ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":36,"deletions":11,"files":["jc/parsers/df.py","jc/parsers/lsblk.py"]},"message":"process lsblk data"},{"commit":"c780aac3aba02cc042c6a3c984af198069956370","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":22,"insertions":91,"deletions":5,"files":["jc/jc.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat2.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"]},"message":"add compatibility function"},{"commit":"5010aaec285e26ae9dbfdb3fcdc38a3bd36cd236","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"]},"message":"put exit() back"},{"commit":"066e93cb075021ac94a0e2e6a36a34bc173ee6c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"]},"message":"move exit() to errormessage()"},{"commit":"0bd2faa7f71a128babc68afea053159ccb91b702","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/jc.py"]},"message":"beautify compatibility list"},{"commit":"e2f926453ba386736204e358f8306dfc731b5005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["install.sh"]},"message":"add install script"},{"commit":"b953b79f9c46d8c5398a6c1c2769167b5aed2805","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":11,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/ls.py"]},"message":"add compatibility"},{"commit":"7f9967780692bec2fcbe992eee0c392ab92efb7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":19,"deletions":1,"files":["jc/jc.py","jc/parsers/lsblk.py"]},"message":"compatibility function call"},{"commit":"721b54665924ad1657ee83cd5fca601e03700962","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/lsblk.py"]},"message":"finish schema"},{"commit":"2de5e41269421c73e07d4abd6ca99b38be736261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":95,"deletions":12,"files":["jc/parsers/lsblk.py"]},"message":"fix for more columns and build schema"},{"commit":"dfe0f6e99b6174734661fc43d9ad4b1d0dfd96e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":75,"deletions":9,"files":["jc/parsers/ls.py"]},"message":"process ls data"},{"commit":"8873b1bc697c8f9409fa676c88b5ebe109dc8717","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":46,"files":["jc/parsers/df.py"]},"message":"clean up process code"},{"commit":"9ff94707004fefed475603436fc0a7ffb19e6fee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":4,"files":["jc/jc.py"]},"message":"refactor helptext() function"},{"commit":"2c58fca53044892e15ceb5e8bcae1afb09fa3269","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":62,"deletions":4,"files":["jc/parsers/jobs.py"]},"message":"process jobs data"},{"commit":"9e5cd90da7d92bbadbc0d25071d087a3dbd90a5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":131,"deletions":261,"files":["jc/parsers/iptables.py"]},"message":"process iptables data"},{"commit":"7ee0d49424bba5274975d6c33e0721977660692f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":107,"deletions":28,"files":["jc/parsers/ifconfig.py"]},"message":"process ifconfig data"},{"commit":"a9058ee21e87454aa423112239c4f4df7daca8c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":4,"deletions":1,"files":["jc/parsers/arp.py","jc/parsers/dig.py","jc/parsers/free.py"]},"message":"doc formatting"},{"commit":"fcf0aac87dccac2ce28e6f55e66e2f0b8f6fbd36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":54,"deletions":10,"files":["jc/parsers/history.py"]},"message":"add history processing"},{"commit":"daec5f068103aae547509ddacc2be56c84f39f17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":55,"deletions":6,"files":["jc/parsers/free.py"]},"message":"process free data"},{"commit":"5b2491d5ae72705758944e247fbca83367c0365f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":54,"deletions":5,"files":["jc/parsers/env.py"]},"message":"process env data"},{"commit":"d9b41ac73b234f5bf7ff3abfee198092424a1bbd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/dig.py"]},"message":"doc formatting"},{"commit":"7168ffddf8a8dfcdd5bcabd8bf943d6417de407d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":87,"deletions":5,"files":["jc/parsers/dig.py"]},"message":"process dig output"},{"commit":"a855344bec9f60d852de326953436ec76f25cffb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":0,"files":["jc/parsers/arp.py"]},"message":"document schema"},{"commit":"d8b3b59fae924494fbcdfbdf6ad790f5234b0c69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/parsers/df.py"]},"message":"add schema and rename 'avail' to 'available'"},{"commit":"4b7d7840d37be47c1c98c38a6d712e7090e5b68c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","changelog.txt"]},"message":"add -r option"},{"commit":"58a094a9b4cab0fcb99581f37a21a450fc3a1aed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"65adbb4189ac66de3283adb2af93a1251103f057","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":29,"deletions":7,"files":["jc/parsers/arp.py"]},"message":"doc update"},{"commit":"f7350959c9706486a3aed19a999e5ee756a1240c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":47,"deletions":24,"files":["jc/parsers/df.py"]},"message":"df fix for changing header names when -h used"},{"commit":"8934a7d832b8e1375f0bbdd71031f37ae42f3929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["jc/parsers/arp.py","jc/parsers/df.py"]},"message":"fix dictionary iteration"},{"commit":"669a424fd6508db91bf5cfa2607033fac85f442c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/df.py"]},"message":"fix process function"},{"commit":"591a65c2bda26efcdd570a5f147f98a5be0473d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":46,"deletions":2,"files":["jc/parsers/df.py"]},"message":"process df data"},{"commit":"a78fb890782a64b20c0c1b60afbd915ebdd88535","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":5,"files":["jc/parsers/arp.py"]},"message":"add raw and processed output"},{"commit":"8979dab2a5371fce3a773004c2309e7483e4cd31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":25,"deletions":20,"files":["jc/jc.py"]},"message":"add raw mode"},{"commit":"0a891f0adda7f2f3233222a0cb5c1f737913ad6f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":1,"files":["changelog.txt","setup.py"]},"message":"bump python required version"},{"commit":"c220e35b14237c2cfc38aa661413af83ea13e393","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":34,"deletions":33,"files":["jc/jc.py"]},"message":"cleanup helptext"},{"commit":"f26c5818bd958c18f4ecc22611b9c058f6213a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":36,"deletions":33,"files":["jc/jc.py"]},"message":"refactor helptext"},{"commit":"e712cd3fc4cec1b3137c73e199b2d89fd42fb3bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":138,"deletions":0,"files":["jc/parsers/netstat2.py"]},"message":"netstat2 skeleton"},{"commit":"0309c9ac67c5f65e0a584fd01e8104ef1990fa7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"setup cleanup"},{"commit":"9a9eb4120af7696cd3727ac0f0a014663e62b993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["setup.py"]},"message":"setup updates"},{"commit":"d1927456b02e6c2a6e6395cd6ce873b6565ec37d","merge":"0691cfc a3d9213","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #6 from kellyjonbrazil/dev"},{"commit":"a3d9213a1e2fd52ba2cbc863d4d01d3ffeebe230","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["changelog.txt"]},"message":"add date"},{"commit":"3365c03a1e709835b4bd6bca023afbcb46912982","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":361,"deletions":0,"files":["tests/test_arp.py","tests/test_dig.py"]},"message":"add tests"},{"commit":"4f6c87389b313b368d9e833feef55fe6daf7aac9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":164,"deletions":1,"files":["tests/fixtures/centos-7.7/dig-aaaa.out","tests/fixtures/centos-7.7/dig-x.out","tests/fixtures/centos-7.7/dig.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/dig-aaaa.out","tests/fixtures/ubuntu-18.04/dig-x.out","tests/fixtures/ubuntu-18.04/dig.out"]},"message":"add dig test files"},{"commit":"41a2a9adac7d3c29dfa11292f08b0877c69b1a5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":147,"deletions":3,"files":["README.md","jc/parsers/dig.py"]},"message":"remove unnecessary if statement"},{"commit":"74dae2905b2b0916f0be9fee2a4a343962760ff6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":143,"deletions":30,"files":["jc/parsers/dig.py"]},"message":"dig parser mvp"},{"commit":"d1f64214de00090c3faae0bf544c6c2602ab8c31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":3,"files":["jc/parsers/dig.py"]},"message":"add authority parsing"},{"commit":"d3e1aa20a815d1d1d6ae82776ae18e3416f0966f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dig.py"]},"message":"fix when line"},{"commit":"72cae9577756c4355211a19f4dd77aaeb6f8e905","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":47,"deletions":9,"files":["jc/parsers/dig.py"]},"message":"dig fixes"},{"commit":"219bc8130f55f23e3be3abbe56104aefc2f84e86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":155,"deletions":0,"files":["jc/jc.py","jc/parsers/dig.py"]},"message":"dig parser skeleton"},{"commit":"e8c1a554c040ad8f9c6b518db5fd58e8345d2181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-a.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/arp-a.out"]},"message":"testfile updates"},{"commit":"087a60bc2adf64bfcedc1f264fef328f993b530c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":87,"deletions":5,"files":["README.md","jc/parsers/arp.py"]},"message":"documentation updates"},{"commit":"9c9823c3b8737b5de08af6278ca74414138e9263","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":16,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-v.out","tests/fixtures/centos-7.7/arp.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/arp-v.out","tests/fixtures/ubuntu-18.04/arp.out"]},"message":"add arp testfiles"},{"commit":"cf8d13030bf67261a986c0f80fa20ec0e37a743a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["README.md"]},"message":"add arp"},{"commit":"1eff69c187ca410ffaec7909bc2532553be1d80c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":17,"deletions":1,"files":["changelog.txt","jc/parsers/arp.py"]},"message":"add documentation"},{"commit":"b10fb77d714b73a10a9bf28b45269b3530e01cee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/arp.py"]},"message":"fixup arp parser"},{"commit":"87cee8b230a06fa270b2e36afb56f337da814c80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":28,"deletions":1,"files":["jc/jc.py","jc/parsers/arp.py"]},"message":"add arp parser"},{"commit":"83ab10d6282e26391bbf6bae5d0d29e040b209f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":44,"deletions":34,"files":["jc/__init__.py"]},"message":"documentation update"},{"commit":"d58a6e1d1dc93155255922b65b0af1325439b033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":15,"files":["README.md"]},"message":"readme update"},{"commit":"cb46ca5c2776a13c673a44d3e0fbd0661b32af9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"]},"message":"readme update"},{"commit":"5528d979f0b45787d68ab79b962371df9acc527b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["changelog.txt","setup.py"]},"message":"version bump"},{"commit":"ee94a038a61d60db72046d5bcceec58009decb39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":131,"deletions":0,"files":["tests/test_uname.py","tests/test_uptime.py","tests/test_w.py"]},"message":"add tests"},{"commit":"1d658f7a9fc50873f76985b2fb9de92ada9d5547","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":265,"deletions":0,"files":["tests/test_netstat.py","tests/test_ps.py","tests/test_route.py"]},"message":"add tests"},{"commit":"392cb44f9b19829a5ceba055e24c7af4d8ac5b3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":80,"insertions":12667,"deletions":0,"files":["runtests.sh","tests/__init__.py","tests/fixtures/centos-7.7/df-h.out","tests/fixtures/centos-7.7/df.out","tests/fixtures/centos-7.7/env.out","tests/fixtures/centos-7.7/free-h.out","tests/fixtures/centos-7.7/free.out","tests/fixtures/centos-7.7/history.out","tests/fixtures/centos-7.7/ifconfig.out","tests/fixtures/centos-7.7/iptables-filter-nv.out","tests/fixtures/centos-7.7/iptables-filter.out","tests/fixtures/centos-7.7/iptables-mangle.out","tests/fixtures/centos-7.7/iptables-nat.out","tests/fixtures/centos-7.7/iptables-raw.out","tests/fixtures/centos-7.7/jobs.out","tests/fixtures/centos-7.7/ls-al.out","tests/fixtures/centos-7.7/ls-alh.out","tests/fixtures/centos-7.7/ls.out","tests/fixtures/centos-7.7/lsblk.out","tests/fixtures/centos-7.7/lsmod.out","tests/fixtures/centos-7.7/lsof-sudo.out","tests/fixtures/centos-7.7/lsof.out","tests/fixtures/centos-7.7/mount.out","tests/fixtures/centos-7.7/netstat-l.out","tests/fixtures/centos-7.7/netstat-p.out","tests/fixtures/centos-7.7/netstat-sudo-lnp.out","tests/fixtures/centos-7.7/netstat.out","tests/fixtures/centos-7.7/ps-axu.out","tests/fixtures/centos-7.7/ps-ef.out","tests/fixtures/centos-7.7/route-vn.out","tests/fixtures/centos-7.7/route.out","tests/fixtures/centos-7.7/uname-a.out","tests/fixtures/centos-7.7/uptime.out","tests/fixtures/centos-7.7/w.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/df-h.out","tests/fixtures/ubuntu-18.04/df.out","tests/fixtures/ubuntu-18.04/env.out","tests/fixtures/ubuntu-18.04/free-h.out","tests/fixtures/ubuntu-18.04/free.out","tests/fixtures/ubuntu-18.04/history.out","tests/fixtures/ubuntu-18.04/ifconfig.out","tests/fixtures/ubuntu-18.04/iptables-filter-nv.out","tests/fixtures/ubuntu-18.04/iptables-filter.out","tests/fixtures/ubuntu-18.04/iptables-mangle.out","tests/fixtures/ubuntu-18.04/iptables-nat.out","tests/fixtures/ubuntu-18.04/iptables-raw.out","tests/fixtures/ubuntu-18.04/jobs.out","tests/fixtures/ubuntu-18.04/ls-al.out","tests/fixtures/ubuntu-18.04/ls-alh.out","tests/fixtures/ubuntu-18.04/ls.out","tests/fixtures/ubuntu-18.04/lsblk.out","tests/fixtures/ubuntu-18.04/lsmod.out","tests/fixtures/ubuntu-18.04/lsof-sudo.out","tests/fixtures/ubuntu-18.04/lsof.out","tests/fixtures/ubuntu-18.04/mount.out","tests/fixtures/ubuntu-18.04/netstat-l.out","tests/fixtures/ubuntu-18.04/netstat-p.out","tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.out","tests/fixtures/ubuntu-18.04/netstat.out","tests/fixtures/ubuntu-18.04/ps-axu.out","tests/fixtures/ubuntu-18.04/ps-ef.out","tests/fixtures/ubuntu-18.04/route-vn.out","tests/fixtures/ubuntu-18.04/route.out","tests/fixtures/ubuntu-18.04/uname-a.out","tests/fixtures/ubuntu-18.04/uptime.out","tests/fixtures/ubuntu-18.04/w.out","tests/test_df.py","tests/test_env.py","tests/test_free.py","tests/test_history.py","tests/test_ifconfig.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_ls.py","tests/test_lsblk.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py"]},"message":"initial add of tests and fixtures"},{"commit":"579bef079cdd7cfa298bc20e052b8eb75b586f5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/netstat.py"]},"message":"move global output variable inside function"},{"commit":"0691cfcab3f5f91908e06ec906d57e548d4e7a1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["changelog.txt"]},"message":"changelog fix"},{"commit":"db29c7c186601fd4596d3eb121b37100601af907","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","jc/parsers/netstat.py"]},"message":"documentation fixes"},{"commit":"fb1e03637514b5ab02fd4c5df1db8b3cbacdd531","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":10,"files":["README.md"]},"message":"formatting"},{"commit":"c3eaf59836538f4ab4c745e87b70115b4a4c5421","merge":"ea0cf0a c9849ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #5 from kellyjonbrazil/dev"},{"commit":"c9849ce0db1f864d33739f8f6f942bf5672bc3b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"d3c89a3092973a7a8765463fff41c2469ed675cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":9,"files":["jc/parsers/uname.py"]},"message":"check for enough info to parse"},{"commit":"a3d43f27f7bb0835b3593b7c303fe0ee8d896a58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":10,"files":["jc/parsers/uptime.py"]},"message":"fix odd uptime text parsing"},{"commit":"f4d9c1b699fa30bd297a40ccf3d5f6e7ba3d4253","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":4,"files":["jc/parsers/uptime.py"]},"message":"fix uptime for minutes and hours long uptime"},{"commit":"de647bba4aff84f7b513cf7f6fec8d3933b0d9da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"documentation update"},{"commit":"d7913070315e5e0c89006942250aaf37e9e3e18e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"]},"message":"documentation update"},{"commit":"1a4fc204e21f1555ae67c3147322c8d73fab630b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":10,"deletions":1,"files":["README.md","changelog.txt"]},"message":"Documentation update"},{"commit":"0328e14c7c65a330093faa52fe48dae6cb173e42","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":0,"files":["jc/jc.py"]},"message":"handle ctrl-c gracefully"},{"commit":"1acc4d6c29d136e286f82d607c4a3a59e2680b68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/uptime.py"]},"message":"fix uptime parsing for short uptimes"},{"commit":"27245590ce28be933f1a55db4ee6b24783f4b63d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":20,"files":["jc/parsers/jobs.py"]},"message":"remove integers"},{"commit":"7ca2a4bdb939293e8d7364f8901ad1fd6d3ee808","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":182,"deletions":201,"files":["README.md","changelog.txt","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/netstat.py"]},"message":"remove integer values"},{"commit":"5f1ec6734874651bee595961edf1fafaf5acf001","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":473,"deletions":456,"files":["README.md","jc/parsers/df.py","jc/parsers/history.py","jc/parsers/iptables.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/w.py"]},"message":"lower() headers"},{"commit":"7e44c4278a75c7223d99200023160e8d77fde54d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/jobs.py"]},"message":"formatting"},{"commit":"eda726c4a3864008e2f700374b679ae68a965ef8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":80,"deletions":1,"files":["jc/parsers/ifconfig.py"]},"message":"documentation update"},{"commit":"5f8e70d73054f1a106c0e75eee621bc0cefd1c6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":20,"deletions":22,"files":["changelog.txt","jc/parsers/df.py","jc/parsers/free.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/w.py"]},"message":"convert headers to lowercase"},{"commit":"25b90546c652cafa9409f02bae1654cb523add88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":14,"deletions":9,"files":["README.md","changelog.txt","jc/parsers/df.py"]},"message":"change 'Use%' to 'Use_percent'"},{"commit":"75c084153845757e22c149ea4ae7909d42ec7118","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"5b532b9b71fdb9de575da0af9b7989ac537877c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/parsers/lsof.py"]},"message":"minor cleanup"},{"commit":"8c7b3193d131411f8766508fc27b2a6589bba1f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/history.py"]},"message":"documentation change"},{"commit":"0897c96ef3c180a1707e8f56c545f59b3a4e0672","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/lsof.py"]},"message":"formatting"},{"commit":"57d0ab2ed7f444862546da17cbbe8f8ce67bca8c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":9,"deletions":4,"files":["README.md","jc/parsers/w.py"]},"message":"change LOGIN@ to LOGIN_AT"},{"commit":"a07d9a0e4bb76d369b4a9bf0d77c7590dc3c2861","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":22,"deletions":13,"files":["README.md","jc/parsers/lsof.py"]},"message":"change SIZE/OFF key to SIZE_OFF"},{"commit":"b3996cb4dfed908d71b292dc0b0136c6675351e6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":10,"files":["README.md","jc/parsers/lsblk.py"]},"message":"change MAJ:MIN key to MAJ_MIN"},{"commit":"4fa88c1ba38b34f9750625458c465d66f6531bc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/history.py"]},"message":"clear out non-ascii chars from data"},{"commit":"c8c5564b29588094721949b96bff1e623437835d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":3,"files":["README.md","jc/parsers/free.py"]},"message":"change buff/cache key to buff_cache"},{"commit":"6d047486d9f577bc04d79af839f5eef9657a9d43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"doc fix"},{"commit":"42bdc058141c4a3ac6f2c8211f9c990590b1b5cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"changelog fix"},{"commit":"85bfb688862e78d5879df6973b88ba8023fa6086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":10,"files":["README.md","jc/parsers/history.py"]},"message":"history parser fixes"},{"commit":"08ec21556b553cd7e64932d68e01ba8ff3b0f210","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/w.py"]},"message":"formatting"},{"commit":"320929bf2595026d32b80b80c3e4878db9cf083f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/env.py"]},"message":"documentation update"},{"commit":"41cd489c34502c42602bf64086670ba3b2b8e14b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":126,"deletions":0,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/history.py","jc/parsers/uptime.py"]},"message":"add history and uptime parsers"},{"commit":"f101d881a16e662e883818749d48e96858fba853","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":78,"deletions":3,"files":["README.md","jc/jc.py","jc/parsers/w.py","setup.py"]},"message":"add w parser"},{"commit":"fa7466022bb8947c1bbf9f7b01aa4d92300a8992","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":28,"deletions":56,"files":["README.md","changelog.txt","jc/parsers/env.py"]},"message":"fix env parser"},{"commit":"ea0cf0acf22585fbf8828841cf50155636eae82f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/lsof.py"]},"message":"documentation update"},{"commit":"e7921b65f5a250c10b08f78939f74968047af430","merge":"393e8bc 2cc1b1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #4 from kellyjonbrazil/dev"},{"commit":"2cc1b1bd5451f31d71b0e2236bdee0ce2b25b5d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"version bump"},{"commit":"58ae976db0165730a75dd7450c698d2727a354ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":113,"deletions":4,"files":["README.md","jc/parsers/lsmod.py","setup.py"]},"message":"documentation update"},{"commit":"66772392ae78ef394e22070b127416b1d5b01332","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":32,"deletions":0,"files":["changelog.txt","jc/jc.py","jc/parsers/lsmod.py"]},"message":"add lsmod parser"},{"commit":"29c47c03a64f9c6b0f44d34be5449396654849b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":134,"deletions":2,"files":["README.md","changelog.txt","jc/parsers/lsof.py"]},"message":"documentation update"},{"commit":"91eb9a4d13e9254bd5bbde931196904c1947a28e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsof.py"]},"message":"use None instead of --"},{"commit":"a1a3de32ec14d6ef433e334b9694856698c26d41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":59,"deletions":0,"files":["jc/jc.py","jc/parsers/lsof.py"]},"message":"add lsof parser"},{"commit":"9c47fd05bf716c2e18ebf4da41b1a46b972b2518","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/jobs.py"]},"message":"doco fix"},{"commit":"649c0aa7c157f87691cc8eeac64c747e81f63594","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":76,"deletions":1,"files":["README.md","jc/parsers/jobs.py"]},"message":"add documentation"},{"commit":"3db758764e50666e5ae40de8d89180de2ef5bc28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":83,"deletions":0,"files":["changelog.txt","jc/jc.py","jc/parsers/jobs.py"]},"message":"add jobs parser"},{"commit":"802f1510eb6d621f9c760f28b83f16a4781b8d93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"]},"message":"tighten if statements"},{"commit":"56901788dee154890e70269ad48d4b22bb8c5437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":30,"deletions":19,"files":["jc/jc.py"]},"message":"stop blocking when no pipe and enhance help text"},{"commit":"679ae6d5dc7af26240dc00d8bc6499950f81d457","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump"},{"commit":"b15c8c352a87a9b3b1dece28af0287ef71ca02d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":16,"files":["jc/parsers/iptables.py"]},"message":"simplify state variables"},{"commit":"393e8bc56041a4be01b6c0b2f98895aa330afd04","merge":"e3750b4 976fd7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #3 from kellyjonbrazil/dev"},{"commit":"976fd7d9bd49190a8b28ea5acf5af8979cdec537","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":28,"files":["README.md"]},"message":"readme update"},{"commit":"d8337870cad042cdcc6a4ff3c61f756c3430fa96","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":28,"files":["jc/parsers/df.py"]},"message":"update documentation"},{"commit":"39a8aec77f5134b5b958e3f679910a1c3512e13a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/parsers/ls.py","setup.py"]},"message":"v0.8.1 build"},{"commit":"306d539b6bbfb272c7b955e4847adc3a6b4afa5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"]},"message":"readme update"},{"commit":"f3087b8a8ede88834285bb5d0655fc96341c174c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":635,"deletions":1,"files":["README.md","changelog.txt","jc/parsers/iptables.py"]},"message":"update readme and formatting"},{"commit":"414c2ecef88af2d2c098e6acfb507a5fd7bb8eda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":10,"files":["jc/parsers/iptables.py"]},"message":"fix iptables parser"},{"commit":"776ef2d1be81180b8b295fbc587446a326f2f7a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":61,"deletions":0,"files":["jc/jc.py","jc/parsers/iptables.py"]},"message":"add iptables parser"},{"commit":"9ac57469967443b195be09d580beaa76ce0e1095","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":64,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/uname.py"]},"message":"add uname parser"},{"commit":"a3e55d97c0fd4397b42e9146afb0ba9558274fdb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":127,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/mount.py"]},"message":"add mount parser"},{"commit":"b15227e7ba5377e5fb6799d1b9e4ed5a11c6d92f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":125,"deletions":0,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/lsblk.py"]},"message":"add lsblk parser"},{"commit":"ec3d1f84ceccb492b4c968938714fafa2e6a6321","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":2,"files":["jc/parsers/free.py"]},"message":"fix free parser"},{"commit":"753d5fd9fe5a8e4b67b1a0ec018a9f811e27f8bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"readme update"},{"commit":"73a0d70c9294ad392792e690a7bfbcc4f51b0a5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"]},"message":"readme update"},{"commit":"c2c189f3e6e900e5f3d35df9a9b9d033448baff6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["README.md"]},"message":"readme update"},{"commit":"36bc55a3109278d663b675a09829200f5474c3d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["README.md"]},"message":"fix df"},{"commit":"a023001cd350e320ce30f47af214ed7a9bb43185","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":226,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/df.py","jc/parsers/env.py","jc/parsers/free.py"]},"message":"add df, env, and free parsers"},{"commit":"e3750b49628794fd4d563013b1f3a7471c27ce68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":83,"deletions":51,"files":["README.md","jc/__init__.py"]},"message":"documentation enhancements"},{"commit":"b5ea08e55bfd22c9da5ba73c124791012df119a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":20,"deletions":20,"files":["README.md","changelog.txt","jc/parsers/netstat.py","setup.py"]},"message":"fix transport protocol"},{"commit":"8e71b8e3522b9b1af4d869a0854223eb5c300b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"fix jq example"},{"commit":"4c8610c54ff4b643237d8f0e4c5781c277fc39f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["changelog.txt","setup.py"]},"message":"fixed build"},{"commit":"c8f886dc8fcdc58f8471d68c3d583200d0ea2f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"]},"message":"fix example"},{"commit":"4cfc2d22b3f9fd6f0cde8ad206edd7fe260b3071","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"update changelog"},{"commit":"59238c85408117748e78c5e87157381a828f3782","merge":"d54d906 30080c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #2 from kellyjonbrazil/dev"},{"commit":"30080c01659cf611666876b7b063b7b329822352","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":35,"deletions":35,"files":["README.md"]},"message":"reorder parsers"},{"commit":"fab80bb3b4a1897da29d818e98e9b80ce45443dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["README.md","setup.py"]},"message":"readme update"},{"commit":"a9f2df805421754afb8e8adbcac7f2d3bd06c9ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"move parsed_line var lower"},{"commit":"1d110be6cb25d169ae0dde6532cbcdf05d93d42f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":13,"deletions":1,"files":["README.md","changelog.txt","setup.py"]},"message":"update doco"},{"commit":"be81b5e1ed93eb65e5dbed4f52905439cde86f62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":112,"deletions":121,"files":["README.md"]},"message":"readme update"},{"commit":"5f88f7d8a071306be92cbfb65d6d62c5a68159f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":110,"deletions":137,"files":["jc/parsers/netstat.py"]},"message":"netstat cleanup"},{"commit":"e57c7cc8ef3102cc41dee4ea5fd33d40ba666491","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"]},"message":"change output from dict to list"},{"commit":"b216627c1073ea645029e341b4d3376601e5468e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":116,"files":["jc/parsers/netstat.py"]},"message":"flatten netstat output"},{"commit":"6e925eab131024b5746d870cbd47e2791acf18bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":18,"files":["jc/jc.py"]},"message":"clean up arg parsing"},{"commit":"d54d906c571b4683f01cab2eca63ae5f0725a87b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"]},"message":"update readme"},{"commit":"0040febbf099ed8ab35f6ee343750fcf89f2e739","merge":"8073d15 e416c77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #1 from kellyjonbrazil/dev"},{"commit":"e416c77bed1267254da972b0f95b7ff1d43fccef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"version bump"},{"commit":"9181d242aaed5219bb35fde01d672be88949cceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"bump version"},{"commit":"d6f94c53a4df84fb75554605477e49536a809dc2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"]},"message":"fix blank output case in ls"},{"commit":"a9294f32a00709737d0b82ff434a311e75ad0bed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":39,"deletions":42,"files":["changelog.txt","jc/parsers/ls.py","setup.py"]},"message":"ls fixes"},{"commit":"4d93b38fe47329e3175025878e87f7c963061f98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":90,"deletions":1,"files":["README.md","jc/parsers/route.py"]},"message":"add route documentation"},{"commit":"77b74c550795f96b808e48a9b0bfd1a8af9866f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"]},"message":"add route parser"},{"commit":"51a1d3e6f48cf7084267be4092f0dd3f778dcef3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version bump"},{"commit":"2eba30422b44f648c7356a44cbff7416c6648f19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"]},"message":"skip first line"},{"commit":"43ed09ce5ba53261dfd7ef50a2e187cb524c416c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":25,"deletions":1,"files":["jc/jc.py","jc/parsers/route.py","setup.py"]},"message":"add route parser"},{"commit":"367ab54f94bf7f456377ec9d20f8daf99dbdc1ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":99,"deletions":2,"files":["README.md","changelog.txt","jc/parsers/ps.py"]},"message":"formatting"},{"commit":"4f552e370e656cc1882a7dae231475a016f8aa14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/ps.py"]},"message":"acknowledgment"},{"commit":"7571139f7980f6e74c29d46971881e82ab0f04bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"bump version"},{"commit":"8ec1bec31711d2ef487da3e4a29a842d98d77626","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":29,"deletions":7,"files":["changelog.txt","jc/__init__.py","jc/jc.py","jc/parsers/ps.py"]},"message":"add ps parser"},{"commit":"c04895407f203aa0a3a080d5242faf8f6889ae41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["changelog.txt","jc/parsers/netstat.py"]},"message":"ubuntu fixes"},{"commit":"cec73d61310591e4890605f61dc5c1bef5808ec4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":24,"deletions":16,"files":["jc/jc.py","jc/parsers/ifconfig.py","jc/parsers/ls.py","jc/parsers/netstat.py"]},"message":"linting"},{"commit":"756c2bc9acd60111281b76085a40778e51ca06cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":3,"files":["README.md"]},"message":"add acknowledgments"},{"commit":"084048987c7afc6516f69e68d37d73b2402dc7f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"02d97394dd76a8782e6e7d3f8a85e1aed05e796b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"]},"message":"changelog update"},{"commit":"177f948f9740e3e33449b04b9136a346c9a2c265","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"version update"},{"commit":"c2b013150ec1f1b1ab7d416f1aa8a62165a5bb95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["changelog.txt"]},"message":"add changelog"},{"commit":"0bec67c29ce5d965271440da41a0c4b4c2a1f0fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/netstat.py"]},"message":"double quotes to single quotes"},{"commit":"8073d15fe11546a17cacd81409e255bb8aecd602","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":4,"files":["README.md"]},"message":"readme update"},{"commit":"3b74afc39e58f801e75b7105e521c1469d30f991","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["pypi-upload.sh"]},"message":"upload script"},{"commit":"ed320cf0f4bb11cee1e69e9dc9176ba109df1b86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":22,"deletions":22,"files":["README.md","jc/parsers/netstat.py","setup.py"]},"message":"change netstat pid field to integer"},{"commit":"021b6924e24e1cf0f971246244b174cd3181c0a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":254,"deletions":5,"files":["README.md","jc/parsers/netstat.py"]},"message":"documentation updates"},{"commit":"5fb21b077662f1cb172741945ba5036e5a280638","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":8,"files":["jc/parsers/netstat.py"]},"message":"remove debug print statements"},{"commit":"7b8540ae2a60f2400fe672a022ee00d1415a3500","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":7,"files":["jc/parsers/netstat.py"]},"message":"netstat fixes"},{"commit":"a5e039d4c2e07d52a0797833685c562ab285b49b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":17,"deletions":7,"files":["jc/parsers/netstat.py"]},"message":"netstat debugging"},{"commit":"7071f60a302b7aefb8fb312699b0abec25548986","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":66,"deletions":18,"files":["jc/parsers/netstat.py"]},"message":"netstat mvp"},{"commit":"0de1dff0253eb46b7336103f62f888940406ccc0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["jc/parsers/netstat.py"]},"message":"fix ands"},{"commit":"b3c52eb1ccf82e899dda62c332c0b217d80eb4c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":112,"deletions":40,"files":["jc/parsers/ifconfig.py","jc/parsers/netstat.py"]},"message":"add netstat parser"},{"commit":"366c5dbc010869bdb1d3b9d852e10510bd5c266f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/jc.py"]},"message":"fix help message"},{"commit":"a3ee02514b5fbd43a38ddf515a4aad49bb4e161a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/jc.py"]},"message":"fix imports and module names"},{"commit":"46ad1269cb58dc6f064d17eb0b04da62d8fd5fce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":3,"files":["jc/jc.py","setup.py"]},"message":"packaging fixes"},{"commit":"7234afe568818678585ac423649a0ccce0f45d68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"entrypoint fix"},{"commit":"caf480c63aacb518805d48fba0fd454959d11023","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"module fix"},{"commit":"62851b48d5e5cd673e630a28996e1c24cc45aa58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/jc.py","setup.py"]},"message":"fix modules"},{"commit":"46d6da92f0e196e150ab9dd44b1ba290c950905b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["jc/{jc => jc.py}","setup.py"]},"message":"fix entry_points"},{"commit":"e572b2edfa993c5049ef3caeda7a8e4797f0c751","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":37,"deletions":29,"files":["jc/jc","setup.py"]},"message":"use entry_points instead of scripts"},{"commit":"72c69e7de59029d623c9819dda6aa8cae91bc419","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/jc"]},"message":"fix package paths"},{"commit":"4d1565071e5cf7c38e026e08db8f4d2e79969691","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["jc/{jc.py => jc}","setup.py"]},"message":"rename jc.py to jc"},{"commit":"3652e51693d7ba829f4699fd80de20856941d82f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"]},"message":"fix requirements"},{"commit":"49ce9f13e817266659400a8c19f5b078a48589df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":17,"deletions":20,"files":["jc/jc.py","jc/parsers/__init__.py","setup.py"]},"message":"setup updates"},{"commit":"e83170b7ec7ed2123bfde69be263b6034c7afa53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["README.md"]},"message":"readme update"},{"commit":"ffb6eb754a87baad5fb0558e30a5bca1a9b9e0a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/parsers/__init__.py","setup.py"]},"message":"setup fixes"},{"commit":"2597a18d95d01109d2250487b7550a501edaf77b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":82,"deletions":0,"files":["README.md"]},"message":"readme update"},{"commit":"3e576250b1bfe1c62c556f2fa0425103b0ede1f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":429,"deletions":0,"files":[".gitignore","LICENSE.md","README.md","build-package.sh","jc/__init__.py","jc/jc.py","jc/parsers/__init__.py","jc/parsers/ifconfig.py","jc/parsers/ls.py","jc/parsers/netstat.py","setup.py"]},"message":"First commit"}] +[{"commit":"096fffdb79807d34b99985b38df0a3df7f6a86c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":120,"deletions":36,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":78},{"name":"jc/parsers/git_log.py","lines_changed":78}]},"message":"use stat examples"},{"commit":"728d882ed007b3c8b785018874a0eb06e1143b66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":90,"deletions":12,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":51},{"name":"jc/parsers/git_log.py","lines_changed":51}]},"message":"add timestamp docs and examples"},{"commit":"b53e42aca623181aa9bc72194e6eeef1e9a3a237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":29,"deletions":6,"files":["docs/parsers/git_log.md","docs/utils.md","jc/parsers/git_log.py","jc/utils.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":8},{"name":"docs/utils.md","lines_changed":4},{"name":"jc/parsers/git_log.py","lines_changed":14},{"name":"jc/utils.py","lines_changed":7},{"name":"man/jc.1","lines_changed":2}]},"message":"add calculated timestamp"},{"commit":"477329ce5b8f5c2a8e4384ba3f59289fc18c957d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add linefeed to version text"},{"commit":"283dc4efd55030188f17c7e1dfbc5315103494b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["CHANGELOG","jc/cli.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/cli.py","lines_changed":7}]},"message":"add python interpreter version and path to -v and -a output"},{"commit":"d490bbcaa0291a691b95fa5b61807eebb0b088eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":26,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":52}]},"message":"normalize add/update"},{"commit":"f49ddf8e5c5009702155fc62d83c63e3c08c594d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":4},{"name":"jc/parsers/git_log.py","lines_changed":4}]},"message":"doc update"},{"commit":"e1e341652b51b823844e76ef7e68f9373a323435","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"doc update"},{"commit":"ecda667549137bed5622cca69f2022e7a75ea833","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":8,"files":["docs/parsers/git_log.md","jc/parsers/git_log.py"],"file_stats":[{"name":"docs/parsers/git_log.md","lines_changed":2},{"name":"jc/parsers/git_log.py","lines_changed":18}]},"message":"process integers"},{"commit":"a0d96a188a9f875b2d59625aa97d4f80bba290f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":1,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"doc update"},{"commit":"6c0f0cddfe4dd2d5169f7c55416c6725912557f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":1,"files":["jc/parsers/yaml.py","tests/test_yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":7},{"name":"tests/test_yaml.py","lines_changed":8}]},"message":"fix for datetime objects in yaml files"},{"commit":"c7173ecd89742c8cf8a7bc4a8021baac5c3cd483","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":6,"files":["jc/parsers/git_log.py"],"file_stats":[{"name":"jc/parsers/git_log.py","lines_changed":14}]},"message":"fix mypy issues"},{"commit":"e98240c905394e3ebd6a45fa31b6d432c150afc4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/git_log.py"],"file_stats":[{"name":"jc/parsers/git_log.py","lines_changed":8}]},"message":"extend instead of append list"},{"commit":"6cb7e25974b11afe57d7d0e8550b3b1a56b14c67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":93,"deletions":1,"files":["README.md","docs/parsers/git_log.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/git_log.md","lines_changed":86},{"name":"man/jc.1","lines_changed":7}]},"message":"add docs"},{"commit":"c37980c05c7fbd4f811ce5fcfcfddaf5f3ab5414","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":41,"deletions":7,"files":["jc/parsers/git_log.py"],"file_stats":[{"name":"jc/parsers/git_log.py","lines_changed":48}]},"message":"add stat support"},{"commit":"b5943bd39d776fc4c3b3dea03c0f3d4b6f4bb260","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":10,"files":["jc/parsers/git_log.py"],"file_stats":[{"name":"jc/parsers/git_log.py","lines_changed":33}]},"message":"initial docstring"},{"commit":"49a3a7db3b2b0b292489a41691c9dcbce816cfed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":175,"deletions":0,"files":["jc/lib.py","jc/parsers/git_log.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/git_log.py","lines_changed":174}]},"message":"initial git-log parser"},{"commit":"0c55240e9da30ac4293cc324f1094de2abd3da91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":0,"files":["CHANGELOG","tests/{ => templates}/_test_foo.py","tests/{ => templates}/_test_foo_s.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"tests/{ => templates}/_test_foo.py","lines_changed":0},{"name":"tests/{ => templates}/_test_foo_s.py","lines_changed":0}]},"message":"move test templates to fix test failures on some systems"},{"commit":"f91988aed5499d25acf7a7e87b2b0d0cd37b62af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/lib.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":2}]},"message":"iterator -> iterable"},{"commit":"3c3ad9fc6adf865b3814a1f03814d0bc17d1c6bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"iterator -> iterable in doc"},{"commit":"291ab79e22a59cb31814e7a5af9dbc9f2ec863e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":24,"deletions":24,"files":["README.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":24},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":22}]},"message":"fix arch linux command"},{"commit":"e6d5892c146762cd41a966adadb77db333d98ace","merge":"c0414e7 dcca7a5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #226 from kellyjonbrazil/master"},{"commit":"dcca7a57d558721a61fbba44f07b1d53116827e1","merge":"7138eef 4ee8a69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #225 from adrianteri/patch-1"},{"commit":"4ee8a69337b24e199983fe657643abcb0a56a8e6","author":"003","author_email":"adriateri@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"Update README"},{"commit":"c0414e7db7f5d785b72ad616517f2ec63af151a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":8}]},"message":"clean up background tasks"},{"commit":"a419175fe6dffe9c5fd20cfbd82ee552bc82a993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":34,"deletions":17,"files":["docgen.sh","updatedocs.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":30},{"name":"updatedocs.sh","lines_changed":21}]},"message":"enhance parallelization"},{"commit":"cd6dead034f3c72aebd22afeb2aea6591ae6d94d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"man page update"},{"commit":"45342ea9fea29947d8d90260c7665ffbca612cce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":16,"deletions":9,"files":["docgen.sh","updatedocs.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":16},{"name":"updatedocs.sh","lines_changed":9}]},"message":"parallelize doc gneration"},{"commit":"585bf0e159c7839869cf3e458938dcc5fa2ceb81","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"xrandr update"},{"commit":"3a860b9babe93d455f68ef21436edf7470d375af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":5,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":4},{"name":"jc/parsers/xrandr.py","lines_changed":8}]},"message":"add rotation field"},{"commit":"269180df77f9ff953b07222e8ae790c7e7a8298e","merge":"e85f11c a1afed8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #223 from anekos/fix/support-rotated-devices"},{"commit":"a1afed8d95e33fbbc618c7b5778a9faeea2f628f","author":"anekos","author_email":"anekos@snca.net","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["docs/parsers/xrandr.md"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":4}]},"message":"doc update"},{"commit":"e39f150a216e4e184444dfc88a63e0f303e51631","author":"anekos","author_email":"anekos@snca.net","stats":{"files_changed":3,"insertions":9,"deletions":4,"files":["jc/parsers/xrandr.py","tests/fixtures/generic/xrandr_simple.json","tests/test_xrandr.py"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":4},{"name":"tests/fixtures/generic/xrandr_simple.json","lines_changed":1},{"name":"tests/test_xrandr.py","lines_changed":8}]},"message":"Support rotated devices"},{"commit":"e85f11c6fcad5461bae612dd5a945c20d300e59a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":12,"deletions":12,"files":["docs/parsers/ini.md","docs/parsers/kv.md","jc/parsers/ini.py","jc/parsers/kv.py"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":6},{"name":"docs/parsers/kv.md","lines_changed":6},{"name":"jc/parsers/ini.py","lines_changed":6},{"name":"jc/parsers/kv.py","lines_changed":6}]},"message":"doc formatting"},{"commit":"49a9d7b07e89696f2e022655d7256b7d6ad4bf7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":12,"deletions":8,"files":["docs/parsers/ini.md","docs/parsers/kv.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":8},{"name":"docs/parsers/kv.md","lines_changed":10},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"a2ef9c429e4bb9f70d033511dce77ccdb9013971","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":38,"deletions":8,"files":["jc/parsers/ini.py","jc/parsers/kv.py","tests/test_ini.py","tests/test_kv.py"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":12},{"name":"jc/parsers/kv.py","lines_changed":10},{"name":"tests/test_ini.py","lines_changed":12},{"name":"tests/test_kv.py","lines_changed":12}]},"message":"allow duplicate keys"},{"commit":"d5e9074f1c8facb3f15b8c41a008917178626978","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/lib.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/lib.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"774699f085d97f22ae2dab0cf64d72aa1e1709f7","merge":"789f073 7138eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #220 from kellyjonbrazil/master"},{"commit":"7138eef3d137bc64286d4af453d8d4e7b3f4408d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"docs/parsers/asciitable_m.md","lines_changed":6},{"name":"jc/parsers/asciitable_m.py","lines_changed":6}]},"message":"fix newline chars in doc"},{"commit":"fad5e544aa9e57d31473190e196f59c616901207","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":2},{"name":"jc/parsers/asciitable.py","lines_changed":2}]},"message":"formatting"},{"commit":"64757e2cf55448bccfbbd60d31930ab3f59af21b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":12},{"name":"jc/parsers/asciitable.py","lines_changed":12}]},"message":"doc formatting"},{"commit":"e05be3f08beae1b600fc55a3a7b4e28163e15bc0","merge":"ac61e9a 789f073","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #213 from kellyjonbrazil/dev"},{"commit":"789f0735dfd63e728b8716d97cf0c6045ede5011","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"doc update"},{"commit":"34bc7753174be28d6c1a00dadc662bc374e554c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"38de059a1bc285c8681086d9fb43d0d23ac01d49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":3,"files":["docs/parsers/asciitable.md","docs/parsers/universal.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":6},{"name":"docs/parsers/universal.md","lines_changed":4},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"304ae6268f4dff6e6f901628e7ff89db1d6e0767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":12}]},"message":"minor optimization by changing the expression order"},{"commit":"978caf45221188a29c0e67147804f20f317c066d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["jc/parsers/asciitable.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":26}]},"message":"minor optimization by reordering expressions"},{"commit":"17df5bfcfc25f226a2976aa7ab8a80e4aaa915c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":2,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":10},{"name":"jc/parsers/asciitable_m.py","lines_changed":4}]},"message":"cache _is_separator function"},{"commit":"5e6a5068cff71b3b30525d0a12868bdf6551456c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":2,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":8}]},"message":"allow iterables for simple table parser"},{"commit":"619de68a61be0117e635032347dde417d77c748c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":9,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":7},{"name":"jc/parsers/asciitable_m.py","lines_changed":10}]},"message":"formatting"},{"commit":"6748c3cc91f90bddea3d07b8b30a049ee55eaf35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":65,"deletions":61,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":52},{"name":"jc/parsers/asciitable_m.py","lines_changed":74}]},"message":"remove lines from corner detection and add rounded corners"},{"commit":"0a462978b731770d1290187a502706c2322f5f91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":101,"deletions":3,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py","tests/test_asciitable.py","tests/test_asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":25},{"name":"jc/parsers/asciitable_m.py","lines_changed":8},{"name":"tests/test_asciitable.py","lines_changed":43},{"name":"tests/test_asciitable_m.py","lines_changed":28}]},"message":"fix for special characters in headers"},{"commit":"e66a82ff49b40a674f9ef373a12d59fc71bfa730","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":5,"files":["CHANGELOG","jc/parsers/asciitable_m.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":5},{"name":"jc/parsers/asciitable_m.py","lines_changed":4},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"f3aa797d96c8e2cef2124dbb2f49d1fadaee3fa2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":69,"deletions":9,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":43},{"name":"jc/parsers/asciitable_m.py","lines_changed":35}]},"message":"add more pretty table separators"},{"commit":"e5b478218c4ba3781afd085056dba888c3f6ae02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_xrandr.py"],"file_stats":[{"name":"tests/test_xrandr.py","lines_changed":6}]},"message":"add quiet=True to parse tests"},{"commit":"35e0e9c32afbc5450c661bcb3a23904d135358ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":1}]},"message":"remove print statement"},{"commit":"17c3c2f029a0a47eb02d681567619d471b99949c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":58,"deletions":2,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py","tests/test_asciitable.py","tests/test_asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":3},{"name":"jc/parsers/asciitable_m.py","lines_changed":2},{"name":"tests/test_asciitable.py","lines_changed":31},{"name":"tests/test_asciitable_m.py","lines_changed":24}]},"message":"add bold bar seperator and ANSI code tests"},{"commit":"cf83e6398b3314b233581eb313510872177de20a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":0,"files":["jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable.py","lines_changed":4},{"name":"jc/parsers/asciitable_m.py","lines_changed":3}]},"message":"add fancy separators"},{"commit":"94e061b881e2ed28d2b462ad038e5ba77182b6c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":275,"deletions":0,"files":["tests/test_asciitable.py"],"file_stats":[{"name":"tests/test_asciitable.py","lines_changed":275}]},"message":"add asciitable parser tests"},{"commit":"720480e39ce3cc2079d7f4f5bcff2725081fec34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":10,"deletions":2,"files":["docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":3},{"name":"docs/parsers/asciitable_m.md","lines_changed":3},{"name":"jc/parsers/asciitable.py","lines_changed":3},{"name":"jc/parsers/asciitable_m.py","lines_changed":3}]},"message":"doc update"},{"commit":"82a63fe15922456853aa4597aa10a5a02b20bdef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":8,"files":["docs/parsers/asciitable.md","jc/parsers/asciitable.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":7},{"name":"jc/parsers/asciitable.py","lines_changed":7}]},"message":"doc update"},{"commit":"9c1ec9940e68ce9848da20e81b8c0b7e35a215df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":82,"deletions":14,"files":["docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable.py","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"docs/parsers/asciitable.md","lines_changed":44},{"name":"docs/parsers/asciitable_m.md","lines_changed":4},{"name":"jc/parsers/asciitable.py","lines_changed":44},{"name":"jc/parsers/asciitable_m.py","lines_changed":4}]},"message":"doc update"},{"commit":"f23f19da453a0f7bcf70e417a10f87e27571aa43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":122,"deletions":9,"files":["README.md","docs/parsers/asciitable.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/asciitable.md","lines_changed":97},{"name":"docs/parsers/asciitable_m.md","lines_changed":4},{"name":"jc/parsers/asciitable_m.py","lines_changed":24},{"name":"man/jc.1","lines_changed":5}]},"message":"doc update"},{"commit":"aea2e1b0a9c6bb2a02a6e73889bb04e8f4f22588","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["tests/test_asciitable_m.py"],"file_stats":[{"name":"tests/test_asciitable_m.py","lines_changed":48}]},"message":"fix tests so blank strings are now None"},{"commit":"7d95d679bf4093ea77f30a1be55384b6dbf08341","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":212,"deletions":1,"files":["jc/lib.py","jc/parsers/asciitable.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2},{"name":"jc/parsers/asciitable.py","lines_changed":211}]},"message":"add asciitable parser"},{"commit":"b3b140066b74ee31dd1c460502caf2f26df321b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py"],"file_stats":[{"name":"docs/parsers/asciitable_m.md","lines_changed":4},{"name":"jc/parsers/asciitable_m.py","lines_changed":4}]},"message":"doc update"},{"commit":"b204c423c1b947c17cb251a5dd3c444cd71dd2c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":193,"deletions":15,"files":["README.md","docs/parsers/asciitable_m.md","jc/parsers/asciitable_m.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/asciitable_m.md","lines_changed":122},{"name":"jc/parsers/asciitable_m.py","lines_changed":78},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update"},{"commit":"d451c309bb0d8889dc09a698212bf01c2154a582","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":8,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":19}]},"message":"change multiple or statements to any()"},{"commit":"01d53da68ed04b736934851137c59216ad02d8c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":1}]},"message":"remove debug print"},{"commit":"53dd05e52c329a15c30a756a36a165ac59ef8a14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":29,"deletions":1,"files":["jc/parsers/asciitable_m.py","tests/test_asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":3},{"name":"tests/test_asciitable_m.py","lines_changed":27}]},"message":"fix rstrip and add tests"},{"commit":"ab564f5be8282f1c7ee2d602bcef398fdfd4570f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":237,"deletions":1,"files":["jc/parsers/asciitable_m.py","tests/test_asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":16},{"name":"tests/test_asciitable_m.py","lines_changed":222}]},"message":"add tests"},{"commit":"00c39450f9878527b60545ad61c04cfb98f418dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":2}]},"message":"enhance type annotation"},{"commit":"f611d08b50219f4e573c1d1f0beae27583e76432","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":5}]},"message":"formatting"},{"commit":"90e79b7df3a4d5b37835fdf1c2debc1bad0a40b9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":2}]},"message":"formatting"},{"commit":"4eb2d725d5fe6f2cc7935c7dc891912cf7b8e940","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":2}]},"message":"formatting"},{"commit":"51ae5ebcac7263ef2571c11975b275eff352bbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":148,"deletions":175,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":323}]},"message":"new streamlined parser"},{"commit":"9ecbdb09162da4d563799aa93d422db85b2c324b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":35,"deletions":30,"files":["docs/parsers/mpstat_s.md","docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","docs/parsers/universal.md","jc/parsers/foo_s.py","jc/parsers/mpstat_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"docs/parsers/mpstat_s.md","lines_changed":10},{"name":"docs/parsers/pidstat_s.md","lines_changed":10},{"name":"docs/parsers/rsync_s.md","lines_changed":10},{"name":"docs/parsers/universal.md","lines_changed":19},{"name":"jc/parsers/foo_s.py","lines_changed":4},{"name":"jc/parsers/mpstat_s.py","lines_changed":4},{"name":"jc/parsers/pidstat_s.py","lines_changed":4},{"name":"jc/parsers/rsync_s.py","lines_changed":4}]},"message":"use generator instead of iterable in function return annotation"},{"commit":"b3a2886fd0af0cd06890f37f1edfc6890bb83e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["docs/lib.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":3}]},"message":"formatting"},{"commit":"ceacec0f462bd7c2d9e92ddb9029ccd71aef481c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":1}]},"message":"remove errant os sep import"},{"commit":"ff0f794b01395ed9b65fac75a6b07f0772d45a2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":32,"deletions":10,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":42}]},"message":"working"},{"commit":"70fafbf3f80f35c5db2c306978b2a488adad40bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"remove asciitable so tests pass for now"},{"commit":"5a248a8fc58952a5eab3d4aac025d7422ba82d08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":344,"deletions":0,"files":["jc/parsers/asciitable_m.py"],"file_stats":[{"name":"jc/parsers/asciitable_m.py","lines_changed":344}]},"message":"add multiline asciitable parser"},{"commit":"4a3a4e10df8a552a4db3510640695f02b166dc40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":4,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":7}]},"message":"add asciitable and asciitable-m parsers"},{"commit":"c27bd5ff39f21c6377e661d4d7de1200d2fdd72f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":16,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":39}]},"message":"pad lines in sparse_table_parse and use str.isspace()"},{"commit":"f804c9627fb71341429ca80aec2887e23e0277db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":1}]},"message":"copy input list so we don't mutate the caller's data"},{"commit":"3ab25d02f9dc248706aa1105e1766b2a84bc55a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"use _parser_is_streaming from lib"},{"commit":"9e80fd2b97b9bfe38fdaa6acdf2e8ed26d34b49d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":11,"files":["jc/cli.py","jc/lib.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":21},{"name":"jc/lib.py","lines_changed":5}]},"message":"fallback if info and doc items don't exist"},{"commit":"ff9527a098a94c996641fb3fe2f905c8ae5e3063","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":13,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":22}]},"message":"import cleanup and use all_parser_info in parsers_text"},{"commit":"7dac2f8dc3baf619105e3c6ca4d3e45300b86287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":23,"deletions":9,"files":["docs/lib.md","docs/readme.md","man/jc.1"],"file_stats":[{"name":"docs/lib.md","lines_changed":23},{"name":"docs/readme.md","lines_changed":7},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"32e4d55e86c3e7d94488ec69f13a4f6400c4cef3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":10}]},"message":"use parser_info for help_doc"},{"commit":"f9a9062147256d0949457cc7fde838f87202524d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":27,"deletions":10,"files":["CHANGELOG","jc/__init__.py","jc/lib.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/__init__.py","lines_changed":7},{"name":"jc/lib.py","lines_changed":29}]},"message":"add documentation argument to parser_info and all_parser_info"},{"commit":"89e5919796f7da585285901dca461aae21336415","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/mpstat_s.md","jc/parsers/mpstat_s.py"],"file_stats":[{"name":"docs/parsers/mpstat_s.md","lines_changed":2},{"name":"jc/parsers/mpstat_s.py","lines_changed":2}]},"message":"add -A to second example"},{"commit":"e5f5b2591d8ac3abeb9571688c7fb8de34d647f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"changelog update"},{"commit":"77c667eec045daff5cbd062fe9d6e83f237727e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":67,"deletions":6,"files":["docs/parsers/mpstat.md","docs/parsers/mpstat_s.md","jc/parsers/mpstat.py","jc/parsers/mpstat_s.py","tests/fixtures/ubuntu-18.04/mpstat-A-streaming.json","tests/fixtures/ubuntu-18.04/mpstat-A.json","tests/fixtures/ubuntu-18.04/mpstat-A.out","tests/test_mpstat.py","tests/test_mpstat_s.py"],"file_stats":[{"name":"docs/parsers/mpstat.md","lines_changed":2},{"name":"docs/parsers/mpstat_s.md","lines_changed":2},{"name":"jc/parsers/mpstat.py","lines_changed":12},{"name":"jc/parsers/mpstat_s.py","lines_changed":12},{"name":"tests/fixtures/ubuntu-18.04/mpstat-A-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/mpstat-A.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/mpstat-A.out","lines_changed":19},{"name":"tests/test_mpstat.py","lines_changed":12},{"name":"tests/test_mpstat_s.py","lines_changed":12}]},"message":"ubuntu fixes"},{"commit":"b257ce8c2fe6825fe435b4d04b4184091030db10","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":65,"deletions":0,"files":[".../centos-7.7/mpstat-A-2-5-streaming.json","tests/fixtures/centos-7.7/mpstat-A-streaming.json","tests/fixtures/centos-7.7/mpstat-streaming.json","tests/test_mpstat_s.py"],"file_stats":[{"name":".../centos-7.7/mpstat-A-2-5-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat-A-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat-streaming.json","lines_changed":1},{"name":"tests/test_mpstat_s.py","lines_changed":62}]},"message":"add mpstat_s tests"},{"commit":"c693c868cacbcd81f44fd383719723dd7a137c87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":352,"deletions":0,"files":["README.md","docs/parsers/mpstat.md","docs/parsers/mpstat_s.md","jc/lib.py","jc/parsers/mpstat.py","jc/parsers/mpstat_s.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/mpstat.md","lines_changed":2},{"name":"docs/parsers/mpstat_s.md","lines_changed":130},{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/mpstat.py","lines_changed":2},{"name":"jc/parsers/mpstat_s.py","lines_changed":211},{"name":"man/jc.1","lines_changed":5}]},"message":"add mpstat streaming parser"},{"commit":"6f98b27a05d6e1f7571a97316b193f096521b959","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":168,"deletions":0,"files":["tests/fixtures/centos-7.7/mpstat-A-2-5.json","tests/fixtures/centos-7.7/mpstat-A-2-5.out","tests/fixtures/centos-7.7/mpstat-A.json","tests/fixtures/centos-7.7/mpstat-A.out","tests/fixtures/centos-7.7/mpstat.json","tests/fixtures/centos-7.7/mpstat.out","tests/test_mpstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/mpstat-A-2-5.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat-A-2-5.out","lines_changed":86},{"name":"tests/fixtures/centos-7.7/mpstat-A.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat-A.out","lines_changed":15},{"name":"tests/fixtures/centos-7.7/mpstat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mpstat.out","lines_changed":5},{"name":"tests/test_mpstat.py","lines_changed":59}]},"message":"add mpstat tests"},{"commit":"d7efd25d88a8f489564ce48223845a16e4ab1cc7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":207,"deletions":1,"files":["EXAMPLES.md","README.md","docs/parsers/mpstat.md","man/jc.1"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":64},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/mpstat.md","lines_changed":136},{"name":"man/jc.1","lines_changed":7}]},"message":"add mpstat to docs"},{"commit":"2cddb1f0bb497be0be071cdcb56bf49d2dafc920","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":94,"deletions":15,"files":["jc/parsers/mpstat.py"],"file_stats":[{"name":"jc/parsers/mpstat.py","lines_changed":109}]},"message":"working mpstat"},{"commit":"ae1c331595dd857d8ae7f8cf93daee1b26be2c3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":30,"deletions":5,"files":["jc/parsers/mpstat.py"],"file_stats":[{"name":"jc/parsers/mpstat.py","lines_changed":35}]},"message":"initial working version"},{"commit":"bc97052ed4ee3bf3f25127968139f2e89a659fe3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":109,"deletions":0,"files":["CHANGELOG","jc/lib.py","jc/parsers/mpstat.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/mpstat.py","lines_changed":107}]},"message":"initial add mpstat parser"},{"commit":"6c3e0e2aa0e8cc375d9f7473930b18957d33f1aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"formatting"},{"commit":"dd052e01469e9e3328f7326d3591365a8e7322eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":26,"deletions":24,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":25},{"name":"jc/parsers/universal.py","lines_changed":25}]},"message":"add underscores to column examples"},{"commit":"54e8f58145f6c4332fbd375d112259ea7abb2d72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":28,"deletions":2,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":15},{"name":"jc/parsers/universal.py","lines_changed":15}]},"message":"add table result examples"},{"commit":"def7aa5764e69cd0cf2c5b70aa62c62023f76c9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":16,"deletions":16,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":16},{"name":"jc/parsers/universal.py","lines_changed":16}]},"message":"formatting"},{"commit":"6986c74f6dceca907ea2e469a332deeb093a122c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":169,"insertions":34,"deletions":837,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/pidstat.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/nmcli.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/pidstat.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/xrandr.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":5},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iostat.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jar_manifest.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/nmcli.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/pidstat.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/rsync.md","lines_changed":5},{"name":"docs/parsers/sfdisk.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/systeminfo.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"docs/parsers/ufw.md","lines_changed":5},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/universal.md","lines_changed":18},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/vmstat.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/xrandr.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5},{"name":"docs/parsers/zipinfo.md","lines_changed":5},{"name":"jc/parsers/acpi.py","lines_changed":5},{"name":"jc/parsers/airport.py","lines_changed":5},{"name":"jc/parsers/airport_s.py","lines_changed":5},{"name":"jc/parsers/arp.py","lines_changed":5},{"name":"jc/parsers/blkid.py","lines_changed":5},{"name":"jc/parsers/cksum.py","lines_changed":5},{"name":"jc/parsers/crontab.py","lines_changed":5},{"name":"jc/parsers/crontab_u.py","lines_changed":5},{"name":"jc/parsers/csv.py","lines_changed":5},{"name":"jc/parsers/date.py","lines_changed":5},{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":5},{"name":"jc/parsers/dir.py","lines_changed":5},{"name":"jc/parsers/dmidecode.py","lines_changed":5},{"name":"jc/parsers/dpkg_l.py","lines_changed":5},{"name":"jc/parsers/du.py","lines_changed":5},{"name":"jc/parsers/env.py","lines_changed":5},{"name":"jc/parsers/file.py","lines_changed":5},{"name":"jc/parsers/finger.py","lines_changed":5},{"name":"jc/parsers/foo.py","lines_changed":5},{"name":"jc/parsers/free.py","lines_changed":5},{"name":"jc/parsers/fstab.py","lines_changed":5},{"name":"jc/parsers/group.py","lines_changed":5},{"name":"jc/parsers/gshadow.py","lines_changed":5},{"name":"jc/parsers/hash.py","lines_changed":5},{"name":"jc/parsers/hashsum.py","lines_changed":5},{"name":"jc/parsers/hciconfig.py","lines_changed":5},{"name":"jc/parsers/history.py","lines_changed":5},{"name":"jc/parsers/hosts.py","lines_changed":5},{"name":"jc/parsers/id.py","lines_changed":5},{"name":"jc/parsers/ifconfig.py","lines_changed":5},{"name":"jc/parsers/ini.py","lines_changed":5},{"name":"jc/parsers/iostat.py","lines_changed":5},{"name":"jc/parsers/iptables.py","lines_changed":5},{"name":"jc/parsers/iw_scan.py","lines_changed":5},{"name":"jc/parsers/jar_manifest.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":5},{"name":"jc/parsers/kv.py","lines_changed":5},{"name":"jc/parsers/last.py","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":5},{"name":"jc/parsers/lsblk.py","lines_changed":5},{"name":"jc/parsers/lsmod.py","lines_changed":5},{"name":"jc/parsers/lsof.py","lines_changed":5},{"name":"jc/parsers/lsusb.py","lines_changed":5},{"name":"jc/parsers/mount.py","lines_changed":5},{"name":"jc/parsers/netstat.py","lines_changed":5},{"name":"jc/parsers/nmcli.py","lines_changed":5},{"name":"jc/parsers/ntpq.py","lines_changed":5},{"name":"jc/parsers/passwd.py","lines_changed":5},{"name":"jc/parsers/pidstat.py","lines_changed":5},{"name":"jc/parsers/ping.py","lines_changed":5},{"name":"jc/parsers/pip_list.py","lines_changed":5},{"name":"jc/parsers/pip_show.py","lines_changed":5},{"name":"jc/parsers/ps.py","lines_changed":5},{"name":"jc/parsers/route.py","lines_changed":5},{"name":"jc/parsers/rpm_qi.py","lines_changed":5},{"name":"jc/parsers/rsync.py","lines_changed":5},{"name":"jc/parsers/sfdisk.py","lines_changed":5},{"name":"jc/parsers/shadow.py","lines_changed":5},{"name":"jc/parsers/ss.py","lines_changed":5},{"name":"jc/parsers/stat.py","lines_changed":5},{"name":"jc/parsers/sysctl.py","lines_changed":5},{"name":"jc/parsers/systemctl.py","lines_changed":5},{"name":"jc/parsers/systemctl_lj.py","lines_changed":5},{"name":"jc/parsers/systemctl_ls.py","lines_changed":5},{"name":"jc/parsers/systemctl_luf.py","lines_changed":5},{"name":"jc/parsers/systeminfo.py","lines_changed":5},{"name":"jc/parsers/time.py","lines_changed":5},{"name":"jc/parsers/timedatectl.py","lines_changed":5},{"name":"jc/parsers/tracepath.py","lines_changed":5},{"name":"jc/parsers/traceroute.py","lines_changed":5},{"name":"jc/parsers/ufw.py","lines_changed":5},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":5},{"name":"jc/parsers/uname.py","lines_changed":5},{"name":"jc/parsers/universal.py","lines_changed":18},{"name":"jc/parsers/upower.py","lines_changed":5},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/vmstat.py","lines_changed":5},{"name":"jc/parsers/w.py","lines_changed":5},{"name":"jc/parsers/wc.py","lines_changed":5},{"name":"jc/parsers/who.py","lines_changed":5},{"name":"jc/parsers/xml.py","lines_changed":5},{"name":"jc/parsers/xrandr.py","lines_changed":5},{"name":"jc/parsers/yaml.py","lines_changed":5},{"name":"jc/parsers/zipinfo.py","lines_changed":5}]},"message":"remove direct parser module example from doc"},{"commit":"b784db404d0569a4c630eb124b37b0b1d0846453","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":17,"insertions":87,"deletions":166,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/pidstat_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/pidstat_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":13},{"name":"docs/parsers/iostat_s.md","lines_changed":20},{"name":"docs/parsers/ls_s.md","lines_changed":16},{"name":"docs/parsers/pidstat_s.md","lines_changed":9},{"name":"docs/parsers/ping_s.md","lines_changed":13},{"name":"docs/parsers/rsync_s.md","lines_changed":13},{"name":"docs/parsers/stat_s.md","lines_changed":13},{"name":"docs/parsers/vmstat_s.md","lines_changed":23},{"name":"jc/parsers/csv_s.py","lines_changed":13},{"name":"jc/parsers/foo_s.py","lines_changed":13},{"name":"jc/parsers/iostat_s.py","lines_changed":20},{"name":"jc/parsers/ls_s.py","lines_changed":16},{"name":"jc/parsers/pidstat_s.py","lines_changed":9},{"name":"jc/parsers/ping_s.py","lines_changed":13},{"name":"jc/parsers/rsync_s.py","lines_changed":13},{"name":"jc/parsers/stat_s.py","lines_changed":13},{"name":"jc/parsers/vmstat_s.py","lines_changed":23}]},"message":"streaming doc formatting update"},{"commit":"8aee4517bb4c2eebdd9873f7eb0827cd33b85519","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":26,"files":["docs/parsers/pidstat_s.md","jc/parsers/pidstat_s.py"],"file_stats":[{"name":"docs/parsers/pidstat_s.md","lines_changed":19},{"name":"jc/parsers/pidstat_s.py","lines_changed":19}]},"message":"doc formatting"},{"commit":"a5fb8fbf94b3b80bef82f078ad6582260b13e374","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":17,"insertions":164,"deletions":148,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/pidstat_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/pidstat_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":12},{"name":"docs/parsers/iostat_s.md","lines_changed":14},{"name":"docs/parsers/ls_s.md","lines_changed":14},{"name":"docs/parsers/pidstat_s.md","lines_changed":53},{"name":"docs/parsers/ping_s.md","lines_changed":14},{"name":"docs/parsers/rsync_s.md","lines_changed":14},{"name":"docs/parsers/stat_s.md","lines_changed":14},{"name":"docs/parsers/vmstat_s.md","lines_changed":14},{"name":"jc/parsers/csv_s.py","lines_changed":12},{"name":"jc/parsers/foo_s.py","lines_changed":14},{"name":"jc/parsers/iostat_s.py","lines_changed":14},{"name":"jc/parsers/ls_s.py","lines_changed":14},{"name":"jc/parsers/pidstat_s.py","lines_changed":53},{"name":"jc/parsers/ping_s.py","lines_changed":14},{"name":"jc/parsers/rsync_s.py","lines_changed":14},{"name":"jc/parsers/stat_s.py","lines_changed":14},{"name":"jc/parsers/vmstat_s.py","lines_changed":14}]},"message":"streaming doc update"},{"commit":"b9365e2ac28c3eacf53bc101857f7f1d7286ec20","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":74,"deletions":0,"files":[".../centos-7.7/pidstat-hdlrsuw-2-5-streaming.json",".../centos-7.7/pidstat-hdlrsuw-streaming.json",".../fixtures/centos-7.7/pidstat-hl-streaming.json","tests/test_pidstat_s.py"],"file_stats":[{"name":".../centos-7.7/pidstat-hdlrsuw-2-5-streaming.json","lines_changed":1},{"name":".../centos-7.7/pidstat-hdlrsuw-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/pidstat-hl-streaming.json","lines_changed":1},{"name":"tests/test_pidstat_s.py","lines_changed":71}]},"message":"add pidstat-s tests"},{"commit":"696338c1a3d462afbe677a6f2ebe08d06ef4046a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":38,"deletions":0,"files":["tests/_test_foo_s.py"],"file_stats":[{"name":"tests/_test_foo_s.py","lines_changed":38}]},"message":"add streaming test template"},{"commit":"4f0616190bb842411353d65650b78a65d8cbdc28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/pidstat_s.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"3278cb0de301ee542b1fe8245a6c359193373b6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":10,"files":["docs/parsers/arp.md","jc/parsers/arp.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":23}]},"message":"add type hints"},{"commit":"4fc04256a567c502a88ac8a1bd189746387c93f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["jc/parsers/foo_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":4},{"name":"jc/parsers/pidstat_s.py","lines_changed":4},{"name":"jc/parsers/rsync_s.py","lines_changed":4}]},"message":"rollback noReturn to tuple"},{"commit":"e4ae0fea63c0386c1b3239607fd6a58738d23633","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":8,"deletions":8,"files":["docs/parsers/pidstat_s.md","docs/parsers/rsync_s.md","jc/parsers/foo_s.py","jc/parsers/pidstat_s.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"docs/parsers/pidstat_s.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":4},{"name":"jc/parsers/pidstat_s.py","lines_changed":4},{"name":"jc/parsers/rsync_s.py","lines_changed":4}]},"message":"fix type annotation"},{"commit":"d3727ea0906d6167aa48c340519242b010469d98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":99,"deletions":1,"files":["CHANGELOG","README.md","docs/parsers/pidstat_s.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/pidstat_s.md","lines_changed":91},{"name":"man/jc.1","lines_changed":5}]},"message":"doc update"},{"commit":"0d13909cf63d14008607c5640d074ab4073115e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":168,"deletions":0,"files":["jc/lib.py","jc/parsers/pidstat_s.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/pidstat_s.py","lines_changed":167}]},"message":"add pidstat-s parser"},{"commit":"c52ca20e285895d2afb685a2a5ca275de7901033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/pidstat.py"],"file_stats":[{"name":"jc/parsers/pidstat.py","lines_changed":2}]},"message":"fix comment"},{"commit":"21f27f26c81c75234221a5193c7d3903323e2032","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":72,"deletions":0,"files":["tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.json","tests/fixtures/centos-7.7/pidstat-hdlrsuw.json","tests/fixtures/centos-7.7/pidstat-hl.json","tests/test_pidstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/pidstat-hdlrsuw.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/pidstat-hl.json","lines_changed":1},{"name":"tests/test_pidstat.py","lines_changed":69}]},"message":"add pidstat tests"},{"commit":"5e7a87f39782d12070a895440ff541800df91b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":35,"deletions":0,"files":["tests/_test_foo.py"],"file_stats":[{"name":"tests/_test_foo.py","lines_changed":35}]},"message":"add test template"},{"commit":"845d763829acd03fff1d2fad6e9691f04bd1a2aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/pidstat.md","jc/parsers/pidstat.py"],"file_stats":[{"name":"docs/parsers/pidstat.md","lines_changed":4},{"name":"jc/parsers/pidstat.py","lines_changed":4}]},"message":"format docs to fit 80 columns"},{"commit":"f5c7d52ec72f5ff4b77d5ac4491f330575b9f10f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":10,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":6},{"name":"templates/manpage_template","lines_changed":6}]},"message":"formatting"},{"commit":"c3198a58744803f52113f80967c7259d781e2328","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":22,"deletions":12,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":17},{"name":"templates/manpage_template","lines_changed":17}]},"message":"formatting"},{"commit":"bbd4afa73542ba6596aed77426bb494fbcf23196","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["README.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"man/jc.1","lines_changed":7}]},"message":"add pidstat to docs"},{"commit":"ae754a84bf5fc35b248bbc5f7b0fa8e871765819","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":263,"deletions":33,"files":["docs/parsers/arp.md","docs/parsers/pidstat.md","jc/parsers/pidstat.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/pidstat.md","lines_changed":156},{"name":"jc/parsers/pidstat.py","lines_changed":138}]},"message":"doc update"},{"commit":"3389eb5debe0f0ba01ece01e20048608bf357e70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":219,"deletions":9,"files":["jc/parsers/pidstat.py","tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.out","tests/fixtures/centos-7.7/pidstat-hdlrsuw.out","tests/fixtures/centos-7.7/pidstat-hl.out"],"file_stats":[{"name":"jc/parsers/pidstat.py","lines_changed":52},{"name":"tests/fixtures/centos-7.7/pidstat-hdlrsuw-2-5.out","lines_changed":47},{"name":"tests/fixtures/centos-7.7/pidstat-hdlrsuw.out","lines_changed":83},{"name":"tests/fixtures/centos-7.7/pidstat-hl.out","lines_changed":46}]},"message":"initial working parser"},{"commit":"01f2c1e71f87ab401d487be4d6d150cb67c91437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":162,"deletions":2,"files":["CHANGELOG","jc/lib.py","jc/parsers/pidstat.py","setup.py","tests/fixtures/centos-7.7/pidstat.out"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/lib.py","lines_changed":3},{"name":"jc/parsers/pidstat.py","lines_changed":112},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/pidstat.out","lines_changed":44}]},"message":"add pidstat parser"},{"commit":"8bfbf8f1bcd233a8ecd34012e140eb29164ca5fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"simplify error message"},{"commit":"f4242669bac3af5eb196c46d4146823aacec40ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":10,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":12}]},"message":"minor cleanup"},{"commit":"bebd9331f1fb9b80f8cb4a5cfacd68461743004e","merge":"9861983 ac61e9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #211 from kellyjonbrazil/master"},{"commit":"ac61e9ad2c9c4e864db02db04cbf907fb0efd99b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"templates/readme_template","lines_changed":1}]},"message":"add pypi link"},{"commit":"648ef4d8a9c33a36d4bb2c135fe59b031de8f24c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"templates/readme_template","lines_changed":4}]},"message":"update badge links"},{"commit":"727fc9a701e9aae75d3d2b708010da1d0dc8781a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/date.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"306512d6bb53af18516fc10b15c7ec79cb02cc98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":7,"deletions":4,"files":["CHANGELOG","jc/lib.py","jc/parsers/date.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/lib.py","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":4},{"name":"setup.py","lines_changed":2}]},"message":"force AM/PM to uppercase in date parser"},{"commit":"6afb1d389ca9dfd7880386d380fee032b7eb92e2","merge":"961968a 9861983","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #209 from kellyjonbrazil/dev"},{"commit":"98619834818c181cb50a9605fe166b6153c46095","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"ca79053db08542849136ae13fdb4d1d90b79a7e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":2}]},"message":"document pydoc version"},{"commit":"29c263f87810f8566ebdad2358e99896391adfd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":93,"insertions":115,"deletions":115,"files":["docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/streaming.md","docs/utils.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":16},{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/dpkg_l.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/finger.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/gshadow.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iostat.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/jar_manifest.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/kv.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/nmcli.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/rsync.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/stat_s.md","lines_changed":2},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/universal.md","lines_changed":4},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/xrandr.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"docs/parsers/zipinfo.md","lines_changed":2},{"name":"docs/streaming.md","lines_changed":12},{"name":"docs/utils.md","lines_changed":20}]},"message":"pydoc formatting fixes"},{"commit":"128c3c170abc6a702ae044b073fb9d992d4262b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"doc update"},{"commit":"a531ab8864fca27b55d83b55055eaef1c36128cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"formatting"},{"commit":"0c1be7cc11ec75a5738483d68d053e702eb34fc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":18,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":11},{"name":"templates/readme_template","lines_changed":11}]},"message":"reduce dig example size"},{"commit":"e4222b45f54e6179e22d7924c083e4642b9974ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":4}]},"message":"fix names to mod names"},{"commit":"ac32c69c31e8eff22252d7aded08f6cb14622086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":2},{"name":"jc/parsers/universal.py","lines_changed":2}]},"message":"formatting"},{"commit":"cb2dfeac8d44b733ad9d364e8c6d233a381bfae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":199,"insertions":334,"deletions":326,"files":["README.md","docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/nmcli.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/xrandr.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/streaming.md","docs/utils.md","jc/__init__.py","jc/cli.py","jc/exceptions.py","jc/lib.py","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat_freebsd_osx.py","jc/parsers/netstat_linux.py","jc/parsers/nmcli.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/xrandr.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py","jc/streaming.py","jc/utils.py","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docgen.sh","lines_changed":6},{"name":"docs/lib.md","lines_changed":25},{"name":"docs/parsers/acpi.md","lines_changed":4},{"name":"docs/parsers/airport.md","lines_changed":4},{"name":"docs/parsers/airport_s.md","lines_changed":4},{"name":"docs/parsers/arp.md","lines_changed":4},{"name":"docs/parsers/blkid.md","lines_changed":4},{"name":"docs/parsers/cksum.md","lines_changed":4},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"docs/parsers/crontab_u.md","lines_changed":4},{"name":"docs/parsers/csv.md","lines_changed":4},{"name":"docs/parsers/csv_s.md","lines_changed":4},{"name":"docs/parsers/date.md","lines_changed":4},{"name":"docs/parsers/df.md","lines_changed":4},{"name":"docs/parsers/dig.md","lines_changed":4},{"name":"docs/parsers/dir.md","lines_changed":4},{"name":"docs/parsers/dmidecode.md","lines_changed":4},{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"docs/parsers/du.md","lines_changed":4},{"name":"docs/parsers/env.md","lines_changed":4},{"name":"docs/parsers/file.md","lines_changed":4},{"name":"docs/parsers/finger.md","lines_changed":4},{"name":"docs/parsers/free.md","lines_changed":4},{"name":"docs/parsers/fstab.md","lines_changed":4},{"name":"docs/parsers/group.md","lines_changed":4},{"name":"docs/parsers/gshadow.md","lines_changed":4},{"name":"docs/parsers/hash.md","lines_changed":4},{"name":"docs/parsers/hashsum.md","lines_changed":4},{"name":"docs/parsers/hciconfig.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":4},{"name":"docs/parsers/hosts.md","lines_changed":4},{"name":"docs/parsers/id.md","lines_changed":4},{"name":"docs/parsers/ifconfig.md","lines_changed":4},{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"docs/parsers/iostat.md","lines_changed":4},{"name":"docs/parsers/iostat_s.md","lines_changed":4},{"name":"docs/parsers/iptables.md","lines_changed":4},{"name":"docs/parsers/iw_scan.md","lines_changed":4},{"name":"docs/parsers/jar_manifest.md","lines_changed":4},{"name":"docs/parsers/jobs.md","lines_changed":4},{"name":"docs/parsers/kv.md","lines_changed":4},{"name":"docs/parsers/last.md","lines_changed":4},{"name":"docs/parsers/ls.md","lines_changed":4},{"name":"docs/parsers/ls_s.md","lines_changed":4},{"name":"docs/parsers/lsblk.md","lines_changed":4},{"name":"docs/parsers/lsmod.md","lines_changed":4},{"name":"docs/parsers/lsof.md","lines_changed":4},{"name":"docs/parsers/lsusb.md","lines_changed":4},{"name":"docs/parsers/mount.md","lines_changed":4},{"name":"docs/parsers/netstat.md","lines_changed":4},{"name":"docs/parsers/nmcli.md","lines_changed":4},{"name":"docs/parsers/ntpq.md","lines_changed":4},{"name":"docs/parsers/passwd.md","lines_changed":4},{"name":"docs/parsers/ping.md","lines_changed":4},{"name":"docs/parsers/ping_s.md","lines_changed":4},{"name":"docs/parsers/pip_list.md","lines_changed":4},{"name":"docs/parsers/pip_show.md","lines_changed":4},{"name":"docs/parsers/ps.md","lines_changed":4},{"name":"docs/parsers/route.md","lines_changed":4},{"name":"docs/parsers/rpm_qi.md","lines_changed":4},{"name":"docs/parsers/rsync.md","lines_changed":4},{"name":"docs/parsers/rsync_s.md","lines_changed":9},{"name":"docs/parsers/sfdisk.md","lines_changed":4},{"name":"docs/parsers/shadow.md","lines_changed":4},{"name":"docs/parsers/ss.md","lines_changed":4},{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"docs/parsers/stat_s.md","lines_changed":4},{"name":"docs/parsers/sysctl.md","lines_changed":4},{"name":"docs/parsers/systemctl.md","lines_changed":4},{"name":"docs/parsers/systemctl_lj.md","lines_changed":4},{"name":"docs/parsers/systemctl_ls.md","lines_changed":4},{"name":"docs/parsers/systemctl_luf.md","lines_changed":4},{"name":"docs/parsers/systeminfo.md","lines_changed":4},{"name":"docs/parsers/time.md","lines_changed":4},{"name":"docs/parsers/timedatectl.md","lines_changed":4},{"name":"docs/parsers/tracepath.md","lines_changed":4},{"name":"docs/parsers/traceroute.md","lines_changed":4},{"name":"docs/parsers/ufw.md","lines_changed":4},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":4},{"name":"docs/parsers/uname.md","lines_changed":4},{"name":"docs/parsers/universal.md","lines_changed":6},{"name":"docs/parsers/upower.md","lines_changed":4},{"name":"docs/parsers/uptime.md","lines_changed":4},{"name":"docs/parsers/vmstat.md","lines_changed":4},{"name":"docs/parsers/vmstat_s.md","lines_changed":4},{"name":"docs/parsers/w.md","lines_changed":4},{"name":"docs/parsers/wc.md","lines_changed":4},{"name":"docs/parsers/who.md","lines_changed":4},{"name":"docs/parsers/xml.md","lines_changed":4},{"name":"docs/parsers/xrandr.md","lines_changed":4},{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"docs/parsers/zipinfo.md","lines_changed":4},{"name":"docs/readme.md","lines_changed":2},{"name":"docs/streaming.md","lines_changed":17},{"name":"docs/utils.md","lines_changed":29},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/cli.py","lines_changed":4},{"name":"jc/exceptions.py","lines_changed":2},{"name":"jc/lib.py","lines_changed":2},{"name":"jc/parsers/acpi.py","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/blkid.py","lines_changed":2},{"name":"jc/parsers/cksum.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"jc/parsers/csv.py","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/dir.py","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":2},{"name":"jc/parsers/dpkg_l.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/finger.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/group.py","lines_changed":2},{"name":"jc/parsers/gshadow.py","lines_changed":2},{"name":"jc/parsers/hash.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":2},{"name":"jc/parsers/hciconfig.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/iostat.py","lines_changed":2},{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2},{"name":"jc/parsers/jar_manifest.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/kv.py","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/lsusb.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/netstat_freebsd_osx.py","lines_changed":2},{"name":"jc/parsers/netstat_linux.py","lines_changed":2},{"name":"jc/parsers/nmcli.py","lines_changed":2},{"name":"jc/parsers/ntpq.py","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":2},{"name":"jc/parsers/ping.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/rpm_qi.py","lines_changed":2},{"name":"jc/parsers/rsync.py","lines_changed":2},{"name":"jc/parsers/rsync_s.py","lines_changed":2},{"name":"jc/parsers/sfdisk.py","lines_changed":2},{"name":"jc/parsers/shadow.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/stat_s.py","lines_changed":2},{"name":"jc/parsers/sysctl.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/systeminfo.py","lines_changed":2},{"name":"jc/parsers/time.py","lines_changed":2},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/ufw.py","lines_changed":2},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/universal.py","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/parsers/wc.py","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":2},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/xrandr.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2},{"name":"jc/parsers/zipinfo.py","lines_changed":2},{"name":"jc/streaming.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"templates/manpage_template","lines_changed":2},{"name":"templates/readme_template","lines_changed":4}]},"message":"change name to JSON Convert"},{"commit":"9a3602e70b865a3015bd700b30d1076e17511a9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":4},{"name":"jc/lib.py","lines_changed":4}]},"message":"doc update"},{"commit":"a9f53ee258e18bc90934e263d8dc96feee84e939","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":4,"files":["jc/cli.py","jc/lib.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4},{"name":"jc/lib.py","lines_changed":15}]},"message":"optimize streaming parser detection in cli"},{"commit":"6be3d3d98222a262c5138bb09f2951ccfab96110","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":43,"deletions":1,"files":["CHANGELOG","docs/lib.md","docs/readme.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docs/lib.md","lines_changed":25},{"name":"docs/readme.md","lines_changed":16}]},"message":"doc update"},{"commit":"e49df7208377ab34a74240a06f35f17fee4b8203","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"use streaming parser list to find streaming parsers"},{"commit":"7ede7be7bf7b1a7d29d158b3b21c20fff4990e72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":42,"deletions":0,"files":["jc/__init__.py","jc/lib.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":17},{"name":"jc/lib.py","lines_changed":25}]},"message":"add standard and streaming list functions"},{"commit":"4758e28a36e2a55497e4f722d386a6b5cc30dc4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":16,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":18},{"name":"jc/__init__.py","lines_changed":18}]},"message":"formatting"},{"commit":"4a1ee151b3cb054d84cd964fd62f5855f765751d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":9,"deletions":11,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py"],"file_stats":[{"name":"docs/parsers/nmcli.md","lines_changed":4},{"name":"jc/parsers/nmcli.py","lines_changed":16}]},"message":"add dhcp6 options to docs"},{"commit":"8c8afc1a922e3c30fcf501d169b33a68b65cd3e0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":60,"deletions":24,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":42},{"name":"jc/__init__.py","lines_changed":42}]},"message":"formatting"},{"commit":"ed205f7720d98c225c917c252ed7a6c9e6e8c2b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":9,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/nmcli.md","lines_changed":8},{"name":"jc/parsers/nmcli.py","lines_changed":8},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"d65f7ae992abc33140c00714d442290103661757","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":41,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":41}]},"message":"add nmcli"},{"commit":"e2ffef57b9a474048fe72cf42aebfa6bfaf2e42b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_nmcli.py"],"file_stats":[{"name":"tests/test_nmcli.py","lines_changed":2}]},"message":"fix test"},{"commit":"002caa9fb3b65f1ae64df25cc39c3de130403e76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":252,"deletions":0,"files":[".../fedora32/nmcli-connection-show-ens33.json",".../fedora32/nmcli-connection-show-ens33.out",".../fixtures/fedora32/nmcli-device-show-ens33.json",".../fixtures/fedora32/nmcli-device-show-ens33.out","tests/fixtures/fedora32/nmcli-device-show.json","tests/fixtures/fedora32/nmcli-device-show.out","tests/test_nmcli.py"],"file_stats":[{"name":".../fedora32/nmcli-connection-show-ens33.json","lines_changed":1},{"name":".../fedora32/nmcli-connection-show-ens33.out","lines_changed":148},{"name":".../fixtures/fedora32/nmcli-device-show-ens33.json","lines_changed":1},{"name":".../fixtures/fedora32/nmcli-device-show-ens33.out","lines_changed":26},{"name":"tests/fixtures/fedora32/nmcli-device-show.json","lines_changed":1},{"name":"tests/fixtures/fedora32/nmcli-device-show.out","lines_changed":39},{"name":"tests/test_nmcli.py","lines_changed":36}]},"message":"add fedora tests"},{"commit":"b7c6faf3daf8eb0c42a222778baa440c5a018c75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"enhance error message"},{"commit":"554ca61d1764b81dea06b6b013d0444072f0662a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":165,"deletions":0,"files":[".../fixtures/centos-7.7/nmcli-connection-all.json",".../centos-7.7/nmcli-connection-show-ens33.json","tests/fixtures/centos-7.7/nmcli-connection.json","tests/fixtures/centos-7.7/nmcli-device-all.json",".../centos-7.7/nmcli-device-show-ens33.json",".../fixtures/centos-7.7/nmcli-device-show-lo.json","tests/fixtures/centos-7.7/nmcli-device-show.json","tests/fixtures/centos-7.7/nmcli-device.json","tests/fixtures/centos-7.7/nmcli-general-all.json",".../centos-7.7/nmcli-general-permissions.json","tests/test_nmcli.py"],"file_stats":[{"name":".../fixtures/centos-7.7/nmcli-connection-all.json","lines_changed":1},{"name":".../centos-7.7/nmcli-connection-show-ens33.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-connection.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-device-all.json","lines_changed":1},{"name":".../centos-7.7/nmcli-device-show-ens33.json","lines_changed":1},{"name":".../fixtures/centos-7.7/nmcli-device-show-lo.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-device-show.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-device.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/nmcli-general-all.json","lines_changed":1},{"name":".../centos-7.7/nmcli-general-permissions.json","lines_changed":1},{"name":"tests/test_nmcli.py","lines_changed":155}]},"message":"add tests"},{"commit":"7b9722d255a16981099dc803beda7abe0d46106a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":26,"deletions":34,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":30},{"name":"templates/manpage_template","lines_changed":30}]},"message":"fix formatting"},{"commit":"5505bde8ef77db0885f08d8d04160cbc4418dd67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/zipinfo.md"],"file_stats":[{"name":"docs/parsers/zipinfo.md","lines_changed":2}]},"message":"doc update"},{"commit":"dbcd9a4060647be24bca2a8d577f11925a9ac210","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":2}]},"message":"bump version to 1.0"},{"commit":"4bdeb2b3aa063c2772f5c44e52acbe16e915cc3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/xrandr.py"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":2}]},"message":"simplify warning message"},{"commit":"6ae1d03187c6d4b669f6f74db1be7c9cf07adaed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/nmcli.md","jc/parsers/nmcli.py"],"file_stats":[{"name":"docs/parsers/nmcli.md","lines_changed":2},{"name":"jc/parsers/nmcli.py","lines_changed":2}]},"message":"doc fix"},{"commit":"f75b06abe4af152be094f8bc1ba5ce66b25e35e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":180,"deletions":3,"files":["README.md","docs/parsers/nmcli.md","jc/parsers/nmcli.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/nmcli.md","lines_changed":172},{"name":"jc/parsers/nmcli.py","lines_changed":3},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update"},{"commit":"1923925710dadc4116202855ae884ef18394d428","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"update changelog"},{"commit":"2c5c57ae04df3b7abfb1c3423c3350c7c2ab5dcd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/lib.py","setup.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"f4d11d697e000135720a971edf84dcad31a1bec8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":155,"deletions":15,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":170}]},"message":"finish use cases and doc"},{"commit":"7f409b7082aa9525cc9280e3c5c92bc82089cf14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"enhance ParseError cli message"},{"commit":"937fa5aad2519f588c6d0feb8f08211f6b99872f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":0,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":20}]},"message":"split dhcp options"},{"commit":"19dcef513565c34a31f6d735577da5e25f9bd2cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":69,"deletions":2,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":71}]},"message":"firm up flow. add/remove text. parse routes"},{"commit":"3d01356461eb2790f859968da7f5cb4fd2ee9898","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":3,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":30}]},"message":"add text_kv function"},{"commit":"2d6f666fa4c791e7995f6b0c1490dac73ce224c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":61,"deletions":16,"files":["jc/parsers/nmcli.py"],"file_stats":[{"name":"jc/parsers/nmcli.py","lines_changed":77}]},"message":"add dev show and conn show parsers"},{"commit":"4dda895f122ecc19b267ed1485cf656bae76ff07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":404,"deletions":0,"files":["jc/lib.py","jc/parsers/nmcli.py","tests/fixtures/centos-7.7/nmcli-connection-all.out",".../centos-7.7/nmcli-connection-show-ens33.out","tests/fixtures/centos-7.7/nmcli-connection.out","tests/fixtures/centos-7.7/nmcli-device-all.out",".../centos-7.7/nmcli-device-show-ens33.out","tests/fixtures/centos-7.7/nmcli-device-show-lo.out","tests/fixtures/centos-7.7/nmcli-device-show.out","tests/fixtures/centos-7.7/nmcli-device.out","tests/fixtures/centos-7.7/nmcli-general-all.out",".../centos-7.7/nmcli-general-permissions.out","tests/fixtures/centos-7.7/nmcli.out"],"file_stats":[{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/nmcli.py","lines_changed":130},{"name":"tests/fixtures/centos-7.7/nmcli-connection-all.out","lines_changed":3},{"name":".../centos-7.7/nmcli-connection-show-ens33.out","lines_changed":136},{"name":"tests/fixtures/centos-7.7/nmcli-connection.out","lines_changed":3},{"name":"tests/fixtures/centos-7.7/nmcli-device-all.out","lines_changed":5},{"name":".../centos-7.7/nmcli-device-show-ens33.out","lines_changed":18},{"name":"tests/fixtures/centos-7.7/nmcli-device-show-lo.out","lines_changed":12},{"name":"tests/fixtures/centos-7.7/nmcli-device-show.out","lines_changed":42},{"name":"tests/fixtures/centos-7.7/nmcli-device.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/nmcli-general-all.out","lines_changed":3},{"name":".../centos-7.7/nmcli-general-permissions.out","lines_changed":18},{"name":"tests/fixtures/centos-7.7/nmcli.out","lines_changed":29}]},"message":"initial nmcli parser"},{"commit":"52617b1722ba2f089716b069f78f70a865430d61","merge":"3afaa48 961968a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #208 from kellyjonbrazil/master"},{"commit":"961968a0fcaf37b64bc850c4945ba4b805a1fe54","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":26,"deletions":23,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":24},{"name":"jc/parsers/xrandr.py","lines_changed":25}]},"message":"fix schema"},{"commit":"f026a788e5ca1231927e71fdbb1dadb2365a6518","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":62,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":62}]},"message":"add xrandr example"},{"commit":"2f7c03eb35520be916c28a687031f8c6425839ba","merge":"681176e 3afaa48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #207 from kellyjonbrazil/dev"},{"commit":"3afaa48eee081e28262d1762c5ec23d318012822","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":15,"insertions":15,"deletions":15,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"docs/parsers/stat_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/rsync_s.py","lines_changed":2},{"name":"jc/parsers/stat_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]},"message":"doc update"},{"commit":"3201452564fb0fb44ef9cc32217339370bd2521e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":2},{"name":"jc/parsers/xrandr.py","lines_changed":2}]},"message":"add -p to example"},{"commit":"7ee1e34fc71c0dbc08ba482b787d560fd5125f64","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":116,"deletions":4,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":60},{"name":"jc/parsers/xrandr.py","lines_changed":60}]},"message":"doc update"},{"commit":"67dbf050161201f5016899591e81ab6253ac2322","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":2},{"name":"jc/parsers/xrandr.py","lines_changed":2}]},"message":"add type annotations"},{"commit":"4ac9f2e3dad4e7bd270bf5a8e61b729838b2c89c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":10,"deletions":17,"files":["CHANGELOG","docs/parsers/rsync.md","docs/parsers/rsync_s.md","jc/parsers/rsync.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docs/parsers/rsync.md","lines_changed":6},{"name":"docs/parsers/rsync_s.md","lines_changed":6},{"name":"jc/parsers/rsync.py","lines_changed":6},{"name":"jc/parsers/rsync_s.py","lines_changed":6}]},"message":"doc update"},{"commit":"3f5f6e39a777ef524cb3a06a01321bb8c31d930d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":100,"deletions":98,"files":["docs/parsers/xrandr.md","jc/parsers/xrandr.py"],"file_stats":[{"name":"docs/parsers/xrandr.md","lines_changed":99},{"name":"jc/parsers/xrandr.py","lines_changed":99}]},"message":"formatting"},{"commit":"4723db8e3cc4946b14c83b25d6e8c6d2309aa72e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":195,"deletions":77,"files":["README.md","docs/parsers/rsync.md","docs/parsers/rsync_s.md","docs/parsers/xrandr.md","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/xrandr.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/rsync.md","lines_changed":2},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"docs/parsers/xrandr.md","lines_changed":109},{"name":"jc/parsers/rsync.py","lines_changed":2},{"name":"jc/parsers/rsync_s.py","lines_changed":2},{"name":"jc/parsers/xrandr.py","lines_changed":147},{"name":"man/jc.1","lines_changed":7}]},"message":"doc updates"},{"commit":"ca914ec77d1fc77e42860189e62ac2fb203d4931","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":2,"files":["tests/test_xrandr.py"],"file_stats":[{"name":"tests/test_xrandr.py","lines_changed":13}]},"message":"add nodata test"},{"commit":"dcc7f3f357ef016b4583fc1320fd2394788f271f","merge":"184ef3a cbdc666","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #204 from lyterk/xrandr"},{"commit":"cbdc66623671da335eafe132b7af79f884856f1d","author":"Kevin Lyter","author_email":"lyterk@sent.com","stats":{"files_changed":3,"insertions":2,"deletions":30,"files":["jc/parsers/xrandr.py",".../{simple_xrandr.json => xrandr_simple.json}",".../{simple_xrandr.out => xrandr_simple.out}"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":32},{"name":".../{simple_xrandr.json => xrandr_simple.json}","lines_changed":0},{"name":".../{simple_xrandr.out => xrandr_simple.out}","lines_changed":0}]},"message":"Return empty object if no results and filenames"},{"commit":"184ef3a1faeb406ce62076cff637ee86d61541fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":11,"deletions":3,"files":["docs/parsers/rsync.md","docs/parsers/rsync_s.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/rsync.md","lines_changed":6},{"name":"docs/parsers/rsync_s.md","lines_changed":6},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"c732f759445e335fe36586859b6fde7e27bb8901","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":10,"deletions":2,"files":["jc/parsers/rsync.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":6},{"name":"jc/parsers/rsync_s.py","lines_changed":6}]},"message":"doc update"},{"commit":"7a1ae4f5fc5328c32bf77235cfbd9f83ec995053","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":105,"deletions":0,"files":["tests/{test_lib.py => test_jc_lib.py}","tests/test_jc_streaming.py","tests/{test_utils.py => test_jc_utils.py}"],"file_stats":[{"name":"tests/{test_lib.py => test_jc_lib.py}","lines_changed":0},{"name":"tests/test_jc_streaming.py","lines_changed":61},{"name":"tests/{test_utils.py => test_jc_utils.py}","lines_changed":44}]},"message":"add library tests"},{"commit":"d04bc3757c482ec9062b2da91ded76c5dd6d106b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add xrandr"},{"commit":"73e8391653145412cd852aca349466018c8b9084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":3,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":11}]},"message":"formatting"},{"commit":"f6c1463c1578db264ccb3d4c2677857ed906e965","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":44,"deletions":24,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":68}]},"message":"formatting"},{"commit":"d392c7f901a9d7c57617fbd03bd3f88ee0bf4132","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":20,"deletions":13,"files":["docs/parsers/date.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/ls.md","docs/parsers/rpm_qi.md","docs/parsers/stat.md","docs/parsers/systeminfo.md","docs/parsers/timedatectl.md","docs/parsers/upower.md","docs/parsers/vmstat.md","docs/parsers/who.md","docs/utils.md"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":11}]},"message":"doc update"},{"commit":"d0387f58205b2fd9b9860ce9656bb29ceec54340","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":16,"insertions":34,"deletions":29,"files":["jc/parsers/date.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/rpm_qi.py","jc/parsers/rsync.py","jc/parsers/rsync_s.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/systeminfo.py","jc/parsers/timedatectl.py","jc/parsers/upower.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":4},{"name":"jc/parsers/dir.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/rpm_qi.py","lines_changed":6},{"name":"jc/parsers/rsync.py","lines_changed":2},{"name":"jc/parsers/rsync_s.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"jc/parsers/stat_s.py","lines_changed":2},{"name":"jc/parsers/systeminfo.py","lines_changed":8},{"name":"jc/parsers/timedatectl.py","lines_changed":4},{"name":"jc/parsers/upower.py","lines_changed":5},{"name":"jc/parsers/vmstat.py","lines_changed":5},{"name":"jc/parsers/vmstat_s.py","lines_changed":3},{"name":"jc/parsers/who.py","lines_changed":4}]},"message":"add timestamp format hints for better performance"},{"commit":"76f92908a3ba9cbadcc8e972afa8b1c4a69509bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":44,"deletions":9,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":53}]},"message":"add format hints for performance optimization"},{"commit":"1a115da67bdce9acfefbfb71fbac37e234b1babd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"add lru_cache maxsize for python 3.7 support"},{"commit":"f0a37ccf301eee5133a83b5dd96986fef0c38e7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":11}]},"message":"use lru_cache for significant performance boost to timestamp"},{"commit":"f331f53a531169520a4d8ea15d277560a49aedb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["CHANGELOG","jc/utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/utils.py","lines_changed":2}]},"message":"use !r formatting instead of quotes"},{"commit":"8611aff06b18212b7292d564beb27a2062fc3f41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/parsers/rsync_s.md","jc/parsers/rsync_s.py"],"file_stats":[{"name":"docs/parsers/rsync_s.md","lines_changed":8},{"name":"jc/parsers/rsync_s.py","lines_changed":8}]},"message":"add examples"},{"commit":"2f3f78e8d35a0ccccde0f84417400acdfe7fe0aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":16,"insertions":194,"deletions":185,"files":["docgen.sh","docs/parsers/rsync_s.md","docs/readme.md","docs/streaming.md","docs/utils.md","jc/__init__.py","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/streaming.py","man/jc.1"],"file_stats":[{"name":"docgen.sh","lines_changed":3},{"name":"docs/parsers/rsync_s.md","lines_changed":2},{"name":"docs/readme.md","lines_changed":2},{"name":"docs/streaming.md","lines_changed":114},{"name":"docs/utils.md","lines_changed":93},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":10},{"name":"jc/parsers/foo_s.py","lines_changed":14},{"name":"jc/parsers/iostat_s.py","lines_changed":15},{"name":"jc/parsers/ls_s.py","lines_changed":14},{"name":"jc/parsers/ping_s.py","lines_changed":4},{"name":"jc/parsers/rsync_s.py","lines_changed":25},{"name":"jc/parsers/stat_s.py","lines_changed":22},{"name":"jc/parsers/vmstat_s.py","lines_changed":16},{"name":"jc/streaming.py","lines_changed":41},{"name":"man/jc.1","lines_changed":2}]},"message":"refine streaming parsers"},{"commit":"d1e0ee6123dfecd48d074cb7a40e98a15b6adcb9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":8,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":14}]},"message":"use new streaming functions"},{"commit":"45314c98083067f1f6fae9c477c99fabec223f29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":112,"deletions":102,"files":["jc/streaming.py","jc/utils.py"],"file_stats":[{"name":"jc/streaming.py","lines_changed":111},{"name":"jc/utils.py","lines_changed":103}]},"message":"move some functions to streaming"},{"commit":"df00945b46e27e10107f48d186eedf80b55bd40e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":59,"deletions":49,"files":["jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":15},{"name":"jc/parsers/iostat_s.py","lines_changed":15},{"name":"jc/parsers/ls_s.py","lines_changed":17},{"name":"jc/parsers/ping_s.py","lines_changed":19},{"name":"jc/parsers/rsync_s.py","lines_changed":21},{"name":"jc/parsers/stat_s.py","lines_changed":21}]},"message":"move try/except inside for loop"},{"commit":"fda0050d867bcbe4f1d7e024b08e9881d0f57735","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":191,"deletions":0,"files":[".../centos-7.7/rsync-i-logfile-streaming.json","tests/fixtures/centos-7.7/rsync-i-streaming.json",".../centos-7.7/rsync-i-v-logfile-streaming.json",".../centos-7.7/rsync-i-vv-logfile-streaming.json",".../rsync-i-vvv-logfile-nochange-streaming.json",".../centos-7.7/rsync-i-vvv-logfile-streaming.json",".../centos-7.7/rsync-ivvv-nochange-streaming.json",".../fixtures/centos-7.7/rsync-ivvv-streaming.json","tests/fixtures/generic/rsync-i-streaming.json",".../rsync-i-vvv-logfile-nochange-streaming.json",".../rsync-i-vvv-nochange-streaming.json",".../osx-10.14.6/rsync-i-vvv-streaming.json","tests/test_rsync_s.py"],"file_stats":[{"name":".../centos-7.7/rsync-i-logfile-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-streaming.json","lines_changed":1},{"name":".../centos-7.7/rsync-i-v-logfile-streaming.json","lines_changed":1},{"name":".../centos-7.7/rsync-i-vv-logfile-streaming.json","lines_changed":1},{"name":".../rsync-i-vvv-logfile-nochange-streaming.json","lines_changed":1},{"name":".../centos-7.7/rsync-i-vvv-logfile-streaming.json","lines_changed":1},{"name":".../centos-7.7/rsync-ivvv-nochange-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/rsync-ivvv-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/rsync-i-streaming.json","lines_changed":1},{"name":".../rsync-i-vvv-logfile-nochange-streaming.json","lines_changed":1},{"name":".../rsync-i-vvv-nochange-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/rsync-i-vvv-streaming.json","lines_changed":1},{"name":"tests/test_rsync_s.py","lines_changed":179}]},"message":"add rsync-s tests"},{"commit":"a76d46f9ecb1eff4d6cc7ad633c97cec0e99001a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":19,"insertions":110,"deletions":109,"files":["CHANGELOG","docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","docs/utils.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/utils.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":5},{"name":"docs/parsers/iostat_s.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":5},{"name":"docs/parsers/ping_s.md","lines_changed":5},{"name":"docs/parsers/rsync_s.md","lines_changed":5},{"name":"docs/parsers/stat_s.md","lines_changed":5},{"name":"docs/parsers/vmstat_s.md","lines_changed":5},{"name":"docs/utils.md","lines_changed":15},{"name":"jc/parsers/csv_s.py","lines_changed":13},{"name":"jc/parsers/foo_s.py","lines_changed":11},{"name":"jc/parsers/iostat_s.py","lines_changed":23},{"name":"jc/parsers/ls_s.py","lines_changed":20},{"name":"jc/parsers/ping_s.py","lines_changed":22},{"name":"jc/parsers/rsync_s.py","lines_changed":11},{"name":"jc/parsers/stat_s.py","lines_changed":30},{"name":"jc/parsers/vmstat_s.py","lines_changed":11},{"name":"jc/utils.py","lines_changed":24},{"name":"man/jc.1","lines_changed":2}]},"message":"refactor ignore_exceptions"},{"commit":"6b069a82d0fa19c8d83b19b934bace556cb758d7","author":"Kevin Lyter","author_email":"lyterk@sent.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":1}]},"message":"Add xrandr to lib.py"},{"commit":"6b793d052147406f388c4d5dc04f506a3456f409","author":"Kevin Lyter","author_email":"lyterk@sent.com","stats":{"files_changed":1,"insertions":6,"deletions":11,"files":["jc/parsers/xrandr.py"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":17}]},"message":"Clean up types"},{"commit":"ce9103f7cc666895dc7840d32797d8c7274cf1b8","author":"Kevin Lyter","author_email":"lyterk@sent.com","stats":{"files_changed":2,"insertions":0,"deletions":287,"files":["templates/xrandr_sample.txt","templates/xrandr_sample_verbose.txt"],"file_stats":[{"name":"templates/xrandr_sample.txt","lines_changed":38},{"name":"templates/xrandr_sample_verbose.txt","lines_changed":249}]},"message":"Delete old files in template folder"},{"commit":"671d6dee36a37317257e09a080849205d301bceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":83,"deletions":15,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/rsync_s.md","docs/parsers/stat_s.md","docs/parsers/vmstat_s.md","docs/utils.md"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":8},{"name":"docs/parsers/iostat_s.md","lines_changed":8},{"name":"docs/parsers/ls_s.md","lines_changed":8},{"name":"docs/parsers/ping_s.md","lines_changed":8},{"name":"docs/parsers/rsync_s.md","lines_changed":10},{"name":"docs/parsers/stat_s.md","lines_changed":8},{"name":"docs/parsers/vmstat_s.md","lines_changed":8},{"name":"docs/utils.md","lines_changed":40}]},"message":"doc update"},{"commit":"49929c714c2d71a310b1dd95138dbd02f8704138","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":139,"deletions":52,"files":["jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/rsync_s.py","jc/parsers/stat_s.py","jc/parsers/vmstat_s.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":14},{"name":"jc/parsers/foo_s.py","lines_changed":16},{"name":"jc/parsers/iostat_s.py","lines_changed":15},{"name":"jc/parsers/ls_s.py","lines_changed":14},{"name":"jc/parsers/ping_s.py","lines_changed":14},{"name":"jc/parsers/rsync_s.py","lines_changed":30},{"name":"jc/parsers/stat_s.py","lines_changed":21},{"name":"jc/parsers/vmstat_s.py","lines_changed":14},{"name":"jc/utils.py","lines_changed":53}]},"message":"add add_jc_meta decorator"},{"commit":"2986771f07de87bfee44dd3bbb4f285e249aad76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"require python v3.7 and above since v3.6 is now deprecated"},{"commit":"520082d963b93d2bafeff921da3899686b22cadf","author":"Kevin Lyter","author_email":"lyterk@sent.com","stats":{"files_changed":9,"insertions":968,"deletions":0,"files":["jc/parsers/xrandr.py","templates/xrandr_sample.txt","templates/xrandr_sample_verbose.txt","tests/fixtures/generic/simple_xrandr.json","tests/fixtures/generic/simple_xrandr.out","tests/fixtures/generic/xrandr.out","tests/fixtures/generic/xrandr_2.out","tests/fixtures/generic/xrandr_device.out","tests/test_xrandr.py"],"file_stats":[{"name":"jc/parsers/xrandr.py","lines_changed":353},{"name":"templates/xrandr_sample.txt","lines_changed":38},{"name":"templates/xrandr_sample_verbose.txt","lines_changed":249},{"name":"tests/fixtures/generic/simple_xrandr.json","lines_changed":56},{"name":"tests/fixtures/generic/simple_xrandr.out","lines_changed":4},{"name":"tests/fixtures/generic/xrandr.out","lines_changed":38},{"name":"tests/fixtures/generic/xrandr_2.out","lines_changed":43},{"name":"tests/fixtures/generic/xrandr_device.out","lines_changed":15},{"name":"tests/test_xrandr.py","lines_changed":172}]},"message":"New parser: xrandr"},{"commit":"021e296d457140c32b5256c2b0acf66efc458896","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":104,"deletions":100,"files":["jc/parsers/rsync_s.py"],"file_stats":[{"name":"jc/parsers/rsync_s.py","lines_changed":204}]},"message":"move variable inits and regexes up"},{"commit":"42e56fbcea6db64ea7f7045e7755af492c95aec2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":12,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":23}]},"message":"move regex up"},{"commit":"a5b62a4055df37b84751a7cdc14eb6f1ed907cd9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":230,"deletions":18,"files":["docs/parsers/rsync_s.md","jc/parsers/rsync_s.py"],"file_stats":[{"name":"docs/parsers/rsync_s.md","lines_changed":124},{"name":"jc/parsers/rsync_s.py","lines_changed":124}]},"message":"add processing and docs"},{"commit":"be98c9b7f6c67e23ea101223934d67bba512e645","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":11}]},"message":"simplify try/except by moving outside for loop"},{"commit":"aceeb8450796ae748a4d4abf75643f309d0a42e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":12,"deletions":1,"files":["CHANGELOG","README.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":5},{"name":"README.md","lines_changed":1},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update"},{"commit":"13910632173e7c815ff1161cf52fd1d17153c4a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":367,"deletions":0,"files":["jc/lib.py","jc/parsers/rsync_s.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":1},{"name":"jc/parsers/rsync_s.py","lines_changed":366}]},"message":"first draft rsync streaming parser"},{"commit":"52157addd0d6dff3bdb34f179ec14b07c8c27ccc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":2}]},"message":"fix compatible list"},{"commit":"ec0bc6615e22fdc536623e290d88b9725cb6a0ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":2},{"name":"jc/utils.py","lines_changed":2}]},"message":"formatting"},{"commit":"2f80800e38256b363a4122195ec4aaffebe67d87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"simplify all_parser_info comprehension"},{"commit":"3959d3347c8d3e838f8c3158c4db74e2fa2eb856","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["docs/lib.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":4}]},"message":"doc update"},{"commit":"b57d25c69a193d3866ea86a3a34edd67049b198d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":12}]},"message":"clean up return type for parser_info"},{"commit":"63e43a7cabb51c624c962cdcc92a1199f18c77e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":188,"deletions":21,"files":["README.md","docs/lib.md","docs/parsers/rsync.md","docs/parsers/universal.md","docs/parsers/zipinfo.md","docs/utils.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"docs/lib.md","lines_changed":4},{"name":"docs/parsers/rsync.md","lines_changed":163},{"name":"docs/parsers/universal.md","lines_changed":2},{"name":"docs/parsers/zipinfo.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":28},{"name":"man/jc.1","lines_changed":7}]},"message":"doc updates"},{"commit":"21719f9a26c25d896b0a5d49c9d7814175835e16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":18,"deletions":20,"files":["jc/lib.py","jc/utils.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":36}]},"message":"type annotation updates"},{"commit":"96ec70de4f6178b0669fd9ab47cb303dc45e55c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["jc/parsers/universal.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":6},{"name":"jc/utils.py","lines_changed":4}]},"message":"remove unneeded optional"},{"commit":"a15a1967dc06169ceeda0fd5b4857ce1a351f3d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"fix typo"},{"commit":"a10d7566294fe5246e68a16e355ce56dd3557ac5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":8}]},"message":"fixy mypy issues"},{"commit":"0700dc7a64b121cf0243416e2cbb82fcef15f5a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":2}]},"message":"remove cygwin from compatible"},{"commit":"ca654b214057e19839b89e0d9a66f1110f679c1e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"fix parser order"},{"commit":"4ff3b87c1c96d720f4e7fd39e613944e322cb388","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":1}]},"message":"remove future field from docstring"},{"commit":"ea244fb7a91f1d1f8ffe0ea6dc10dfe5ab836878","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_rsync.py"],"file_stats":[{"name":"tests/test_rsync.py","lines_changed":2}]},"message":"formatting"},{"commit":"8061f30e6fa58d22ed1a52e02c4d9c7f0bf132cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":236,"deletions":6,"files":["tests/fixtures/centos-7.7/rsync-ivvv-nochange.json","tests/fixtures/centos-7.7/rsync-ivvv-nochange.out","tests/test_rsync.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/rsync-ivvv-nochange.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-ivvv-nochange.out","lines_changed":224},{"name":"tests/test_rsync.py","lines_changed":17}]},"message":"add centos -i nochange test"},{"commit":"8f3b12e81e1b4f0d4394c33db5b3a352f4cfb391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":299,"deletions":0,"files":["jc/parsers/rsync.py",".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.json",".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.out","tests/fixtures/osx-10.14.6/rsync-i-vvv.json","tests/fixtures/osx-10.14.6/rsync-i-vvv.out","tests/test_rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":22},{"name":".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/rsync-i-vvv-nochange.out","lines_changed":88},{"name":"tests/fixtures/osx-10.14.6/rsync-i-vvv.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/rsync-i-vvv.out","lines_changed":156},{"name":"tests/test_rsync.py","lines_changed":31}]},"message":"add fixes for mac -i output"},{"commit":"d0694ce0db5ea2d06b5787429adf23095c4c2df0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":245,"deletions":6,"files":[".../osx-10.14.6/rsync-i-vvv-logfile-nochange.json",".../osx-10.14.6/rsync-i-vvv-logfile-nochange.out","tests/test_rsync.py"],"file_stats":[{"name":".../osx-10.14.6/rsync-i-vvv-logfile-nochange.json","lines_changed":1},{"name":".../osx-10.14.6/rsync-i-vvv-logfile-nochange.out","lines_changed":233},{"name":"tests/test_rsync.py","lines_changed":17}]},"message":"add nochange log test for mac"},{"commit":"0cd4c4bc7f3ffe13cb2f1920187e25636b88af61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":658,"deletions":0,"files":[".../centos-7.7/rsync-i-vvv-logfile-nochange.json",".../centos-7.7/rsync-i-vvv-logfile-nochange.out"],"file_stats":[{"name":".../centos-7.7/rsync-i-vvv-logfile-nochange.json","lines_changed":1},{"name":".../centos-7.7/rsync-i-vvv-logfile-nochange.out","lines_changed":657}]},"message":"add nochange tests"},{"commit":"12f90c349c903634def4225ce87924b475be46d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":68,"deletions":20,"files":["jc/parsers/rsync.py","tests/test_rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":68},{"name":"tests/test_rsync.py","lines_changed":20}]},"message":"update regexes for unchanged files"},{"commit":"26b8a1f167c4b1ec3f9fb4077254a27ed8548933","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":2}]},"message":"remove packages from binaries and packages header"},{"commit":"3abe382c064f605d915912f9b726d76784eba8a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":90,"deletions":3,"files":["EXAMPLES.md","jc/parsers/rsync.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":33},{"name":"jc/parsers/rsync.py","lines_changed":60}]},"message":"add examples"},{"commit":"1e2edc2c7b5dc104a9efe4da7df9be61b9e1be32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":53,"deletions":29,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-logfile.json","tests/fixtures/centos-7.7/rsync-i-v-logfile.json","tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":74},{"name":"tests/fixtures/centos-7.7/rsync-i-logfile.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rsync-i-v-logfile.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json","lines_changed":2}]},"message":"add timestamp"},{"commit":"5fe032a6741b7b6586c60eb28be74bd0e56277a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":2}]},"message":"fix typo"},{"commit":"e825c02df1cdae67c7f335fe3c675685eb1a8d02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":605,"deletions":0,"files":["tests/fixtures/centos-7.7/rsync-i-logfile.json","tests/fixtures/centos-7.7/rsync-i-v-logfile.json","tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out","tests/fixtures/centos-7.7/rsync-i.json","tests/fixtures/centos-7.7/rsync-i.out","tests/fixtures/centos-7.7/rsync-ivvv.json","tests/fixtures/generic/rsync-i.json","tests/fixtures/generic/rsync-i.out","tests/test_rsync.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/rsync-i-logfile.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-v-logfile.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-vv-logfile.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-vvv-logfile.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out","lines_changed":434},{"name":"tests/fixtures/centos-7.7/rsync-i.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rsync-i.out","lines_changed":28},{"name":"tests/fixtures/centos-7.7/rsync-ivvv.json","lines_changed":1},{"name":"tests/fixtures/generic/rsync-i.json","lines_changed":1},{"name":"tests/fixtures/generic/rsync-i.out","lines_changed":11},{"name":"tests/test_rsync.py","lines_changed":125}]},"message":"add rsync tests"},{"commit":"a4a4d170b5ae8c189de982adea5bdc9bf1f26e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":5,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":15}]},"message":"update docstring"},{"commit":"d0fcd523cb2cbb59d0f90369721749b54222961d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":17,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":36}]},"message":"fix process conversions"},{"commit":"f72b7dc75dbd1c3f5daee3ecee28487258a04873","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":8,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":12}]},"message":"change keyname to files and remove future key"},{"commit":"4101dc6bf7bab7d00899426e2f6271a7480d558f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":1008,"deletions":19,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-v-logfile.out","tests/fixtures/centos-7.7/rsync-i-vv-logfile.out","tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":60},{"name":"tests/fixtures/centos-7.7/rsync-i-v-logfile.out","lines_changed":61},{"name":"tests/fixtures/centos-7.7/rsync-i-vv-logfile.out","lines_changed":65},{"name":"tests/fixtures/centos-7.7/rsync-i-vvv-logfile.out","lines_changed":841}]},"message":"add log-file support"},{"commit":"ea5011b616365b5c10c04416d43035d84e3dacba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":175,"deletions":41,"files":["jc/parsers/rsync.py","tests/fixtures/centos-7.7/rsync-i-logfile.out"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":157},{"name":"tests/fixtures/centos-7.7/rsync-i-logfile.out","lines_changed":59}]},"message":"updated schema. add log-file option support"},{"commit":"d6de81747fd92642dbd5cb1fb097e375aa38be35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":3,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":14}]},"message":"add int/float conversions"},{"commit":"38f04b1c9699246d85332b20df5b6a91ae0c48d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":32,"deletions":7,"files":["jc/parsers/rsync.py"],"file_stats":[{"name":"jc/parsers/rsync.py","lines_changed":39}]},"message":"add summary"},{"commit":"84169e1a913d035744f71472be81fe3a7d774b97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":637,"deletions":2,"files":["jc/lib.py","jc/parsers/rsync.py","setup.py","tests/fixtures/centos-7.7/rsync-ivvv.out"],"file_stats":[{"name":"jc/lib.py","lines_changed":3},{"name":"jc/parsers/rsync.py","lines_changed":212},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rsync-ivvv.out","lines_changed":422}]},"message":"add rsync parser"},{"commit":"1f96586a5e883709f436526de6dcb21ff44bf97b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/foo.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":2}]},"message":"reorder imports"},{"commit":"681176e4c958157ef1f2151b3e57963a6ba48e09","merge":"b389665 8bb2663","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #203 from kellyjonbrazil/dev"},{"commit":"8bb266352207f95040b72750e5b3ae3b8ceb2b98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"date update"},{"commit":"663abf313931b49fad64b425ece6a5a257dc7938","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":3,"deletions":4,"files":["MANIFEST.in","mangen.py","runtests.sh","updatedocs.sh"],"file_stats":[{"name":"MANIFEST.in","lines_changed":1},{"name":"mangen.py","lines_changed":3},{"name":"runtests.sh","lines_changed":1},{"name":"updatedocs.sh","lines_changed":2}]},"message":"clean up scripts"},{"commit":"f7ac41db95c16fd21d83fbce678c5dec28ab40f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":13,"files":["README.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"man/jc.1","lines_changed":12}]},"message":"final doc update"},{"commit":"5502cda9e591b531d6b452b02d8ec322c3287800","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["tests/test_lib.py"],"file_stats":[{"name":"tests/test_lib.py","lines_changed":3}]},"message":"add additional test for dict inside list for all_parser_info()"},{"commit":"a2b165565f54d91489bf38577a0785e78a4523d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["tests/test_lib.py"],"file_stats":[{"name":"tests/test_lib.py","lines_changed":21}]},"message":"add lib tests for new functions"},{"commit":"b426369815984bd2aae8bcb14e306ba73b8cd4ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":12}]},"message":"use all_parser_info() from lib in about function"},{"commit":"ac0840cc0afb4aeee2c99076710c987e09cfa5f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"fix typo"},{"commit":"ee98ab0a4a7671ae34ee79f7b0b97c061a8c2944","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/lib.md","docs/utils.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":6},{"name":"docs/utils.md","lines_changed":4}]},"message":"doc update"},{"commit":"2adec2c0035b84ca0242f2494b6c2651b9898ca5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":21,"deletions":19,"files":["jc/lib.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/utils.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":18},{"name":"jc/parsers/foo.py","lines_changed":8},{"name":"jc/parsers/foo_s.py","lines_changed":10},{"name":"jc/utils.py","lines_changed":4}]},"message":"update type hints with mypy help"},{"commit":"f19c9c71bf4f592f55a5176458acd478b462fdbe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":4,"files":["jc/parsers/foo.py","jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":9},{"name":"jc/parsers/foo_s.py","lines_changed":10}]},"message":"add type hints"},{"commit":"e93adf1884c0006a64123513070a5fd96a940da2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":5},{"name":"jc/__init__.py","lines_changed":5}]},"message":"fix doc"},{"commit":"254c4fc507842ca72064c0196418a7b939d54d06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":6,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":13},{"name":"jc/__init__.py","lines_changed":13}]},"message":"add new functions"},{"commit":"74d5f60d14fc42cfd5768c7ffd6efc890a65d442","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"update console interview description"},{"commit":"db7dc0634bc17b4daadc8bc21bba5975c093efe5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":2},{"name":"jc/lib.py","lines_changed":2}]},"message":"make **kwargs optional"},{"commit":"e156b0db453e99fb0f74b618fd343218f978ff68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":4},{"name":"jc/parsers/universal.py","lines_changed":5}]},"message":"add type hints"},{"commit":"50adc05fbd6a0dcd9e4fb38aa41917bb57332f36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":6},{"name":"jc/utils.py","lines_changed":6}]},"message":"formatting"},{"commit":"446cac7c217103eb66cfdee97e3a208b7144b644","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":11,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":11},{"name":"jc/utils.py","lines_changed":15}]},"message":"doc update"},{"commit":"28ffe3076bb5f23aeaf2624344856dbd02b4c0e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":9,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":8},{"name":"jc/lib.py","lines_changed":9}]},"message":"formatting"},{"commit":"d4d5e206cae14acd25445952f820810818b3fdce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":40,"deletions":28,"files":["docs/lib.md","docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":15},{"name":"docs/utils.md","lines_changed":26},{"name":"jc/utils.py","lines_changed":27}]},"message":"type hints update"},{"commit":"42fbe40a4ae02b9d09acdbf9b22573844959d2ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":11}]},"message":"simplify type hints"},{"commit":"27e4a120e21dcbb3eadc6c4cf224ddb33859328d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":2},{"name":"jc/lib.py","lines_changed":2}]},"message":"remove trailing comma"},{"commit":"b5d5b7c73a96d4335b178ccfac60af90913e6f0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":29,"deletions":148,"files":["docgen.sh","docs/parsers/ifconfig.md","docs/parsers/traceroute.md"],"file_stats":[{"name":"docgen.sh","lines_changed":35},{"name":"docs/parsers/ifconfig.md","lines_changed":94},{"name":"docs/parsers/traceroute.md","lines_changed":48}]},"message":"remove private classes"},{"commit":"e7471556ba5fb0586ac5b0d7404cabd98a58db2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":5,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":5}]},"message":"remove sed lines"},{"commit":"640a21341bb1c562cb2124155b511dfc74277fc0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":47,"deletions":42,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":20},{"name":"jc/utils.py","lines_changed":69}]},"message":"fix indentation"},{"commit":"f5befad3e41ba2864abc795a2fdf63e0f1d37c21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":33,"deletions":25,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":21},{"name":"jc/utils.py","lines_changed":37}]},"message":"move docstring under __init__"},{"commit":"f8223023c31093c1a34130b4e4cfc23b1d80a30c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":24,"deletions":10,"files":["docgen.sh","docs/parsers/ifconfig.md","docs/parsers/traceroute.md","docs/utils.md"],"file_stats":[{"name":"docgen.sh","lines_changed":28},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":2}]},"message":"change header depth"},{"commit":"7028e87f9b411c0cfb92eee7fc0667cdcb9a54ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":87,"insertions":22,"deletions":445,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md"],"file_stats":[{"name":"docgen.sh","lines_changed":26},{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/csv_s.md","lines_changed":5},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":14},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iostat.md","lines_changed":5},{"name":"docs/parsers/iostat_s.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jar_manifest.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/ping_s.md","lines_changed":5},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/sfdisk.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/stat_s.md","lines_changed":5},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/systeminfo.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":8},{"name":"docs/parsers/ufw.md","lines_changed":5},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/vmstat.md","lines_changed":5},{"name":"docs/parsers/vmstat_s.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5},{"name":"docs/parsers/zipinfo.md","lines_changed":5},{"name":"docs/readme.md","lines_changed":4}]},"message":"remove TOC for parsers"},{"commit":"590728f9c1ccfdc078e600d1f35ad4ba51f70d36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":91,"insertions":506,"deletions":17,"files":["docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/utils.md","jc/lib.py"],"file_stats":[{"name":"docgen.sh","lines_changed":28},{"name":"docs/lib.md","lines_changed":13},{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/csv_s.md","lines_changed":5},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":14},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iostat.md","lines_changed":5},{"name":"docs/parsers/iostat_s.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jar_manifest.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/ping_s.md","lines_changed":5},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/sfdisk.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/stat_s.md","lines_changed":5},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/systeminfo.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":8},{"name":"docs/parsers/ufw.md","lines_changed":5},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/universal.md","lines_changed":6},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/vmstat.md","lines_changed":5},{"name":"docs/parsers/vmstat_s.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5},{"name":"docs/parsers/zipinfo.md","lines_changed":5},{"name":"docs/readme.md","lines_changed":4},{"name":"docs/utils.md","lines_changed":17},{"name":"jc/lib.py","lines_changed":18}]},"message":"try new pydoc-markdown formatting options"},{"commit":"7cc147fe2d7b278bcab905bc4c3b70b5265e1510","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":44,"files":["docgen.sh","docgen.sh.old"],"file_stats":[{"name":"docgen.sh","lines_changed":4},{"name":"docgen.sh.old","lines_changed":44}]},"message":"increase heading size"},{"commit":"3cfb3965bb25024a7b03870b71f02194e278919b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":19,"deletions":19,"files":["docs/lib.md","docs/parsers/universal.md","docs/utils.md"],"file_stats":[{"name":"docs/lib.md","lines_changed":10},{"name":"docs/parsers/universal.md","lines_changed":4},{"name":"docs/utils.md","lines_changed":24}]},"message":"formatting"},{"commit":"155d4213225fe4fcf4a059fb63c1ab9fc493177e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":86,"insertions":182,"deletions":181,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"],"file_stats":[{"name":"docgen.sh","lines_changed":3},{"name":"docs/parsers/acpi.md","lines_changed":4},{"name":"docs/parsers/airport.md","lines_changed":4},{"name":"docs/parsers/airport_s.md","lines_changed":4},{"name":"docs/parsers/arp.md","lines_changed":4},{"name":"docs/parsers/blkid.md","lines_changed":4},{"name":"docs/parsers/cksum.md","lines_changed":4},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"docs/parsers/crontab_u.md","lines_changed":4},{"name":"docs/parsers/csv.md","lines_changed":4},{"name":"docs/parsers/csv_s.md","lines_changed":4},{"name":"docs/parsers/date.md","lines_changed":4},{"name":"docs/parsers/df.md","lines_changed":4},{"name":"docs/parsers/dig.md","lines_changed":4},{"name":"docs/parsers/dir.md","lines_changed":4},{"name":"docs/parsers/dmidecode.md","lines_changed":4},{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"docs/parsers/du.md","lines_changed":4},{"name":"docs/parsers/env.md","lines_changed":4},{"name":"docs/parsers/file.md","lines_changed":4},{"name":"docs/parsers/finger.md","lines_changed":4},{"name":"docs/parsers/free.md","lines_changed":4},{"name":"docs/parsers/fstab.md","lines_changed":4},{"name":"docs/parsers/group.md","lines_changed":4},{"name":"docs/parsers/gshadow.md","lines_changed":4},{"name":"docs/parsers/hash.md","lines_changed":4},{"name":"docs/parsers/hashsum.md","lines_changed":4},{"name":"docs/parsers/hciconfig.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":4},{"name":"docs/parsers/hosts.md","lines_changed":4},{"name":"docs/parsers/id.md","lines_changed":4},{"name":"docs/parsers/ifconfig.md","lines_changed":20},{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"docs/parsers/iostat.md","lines_changed":4},{"name":"docs/parsers/iostat_s.md","lines_changed":4},{"name":"docs/parsers/iptables.md","lines_changed":4},{"name":"docs/parsers/iw_scan.md","lines_changed":4},{"name":"docs/parsers/jar_manifest.md","lines_changed":4},{"name":"docs/parsers/jobs.md","lines_changed":4},{"name":"docs/parsers/kv.md","lines_changed":4},{"name":"docs/parsers/last.md","lines_changed":4},{"name":"docs/parsers/ls.md","lines_changed":4},{"name":"docs/parsers/ls_s.md","lines_changed":4},{"name":"docs/parsers/lsblk.md","lines_changed":4},{"name":"docs/parsers/lsmod.md","lines_changed":4},{"name":"docs/parsers/lsof.md","lines_changed":4},{"name":"docs/parsers/lsusb.md","lines_changed":4},{"name":"docs/parsers/mount.md","lines_changed":4},{"name":"docs/parsers/netstat.md","lines_changed":4},{"name":"docs/parsers/ntpq.md","lines_changed":4},{"name":"docs/parsers/passwd.md","lines_changed":4},{"name":"docs/parsers/ping.md","lines_changed":4},{"name":"docs/parsers/ping_s.md","lines_changed":4},{"name":"docs/parsers/pip_list.md","lines_changed":4},{"name":"docs/parsers/pip_show.md","lines_changed":4},{"name":"docs/parsers/ps.md","lines_changed":4},{"name":"docs/parsers/route.md","lines_changed":4},{"name":"docs/parsers/rpm_qi.md","lines_changed":4},{"name":"docs/parsers/sfdisk.md","lines_changed":4},{"name":"docs/parsers/shadow.md","lines_changed":4},{"name":"docs/parsers/ss.md","lines_changed":4},{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"docs/parsers/stat_s.md","lines_changed":4},{"name":"docs/parsers/sysctl.md","lines_changed":4},{"name":"docs/parsers/systemctl.md","lines_changed":4},{"name":"docs/parsers/systemctl_lj.md","lines_changed":4},{"name":"docs/parsers/systemctl_ls.md","lines_changed":4},{"name":"docs/parsers/systemctl_luf.md","lines_changed":4},{"name":"docs/parsers/systeminfo.md","lines_changed":4},{"name":"docs/parsers/time.md","lines_changed":4},{"name":"docs/parsers/timedatectl.md","lines_changed":4},{"name":"docs/parsers/tracepath.md","lines_changed":4},{"name":"docs/parsers/traceroute.md","lines_changed":8},{"name":"docs/parsers/ufw.md","lines_changed":4},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":4},{"name":"docs/parsers/uname.md","lines_changed":4},{"name":"docs/parsers/upower.md","lines_changed":4},{"name":"docs/parsers/uptime.md","lines_changed":4},{"name":"docs/parsers/vmstat.md","lines_changed":4},{"name":"docs/parsers/vmstat_s.md","lines_changed":4},{"name":"docs/parsers/w.md","lines_changed":4},{"name":"docs/parsers/wc.md","lines_changed":4},{"name":"docs/parsers/who.md","lines_changed":4},{"name":"docs/parsers/xml.md","lines_changed":4},{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"docs/parsers/zipinfo.md","lines_changed":4}]},"message":"formatting"},{"commit":"d3e10bb87bdb32396bce95f74e62a023f4efaf99","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":291,"deletions":0,"files":["docs/parsers/lsusb.md"],"file_stats":[{"name":"docs/parsers/lsusb.md","lines_changed":291}]},"message":"add lsusb docs"},{"commit":"fd5433ee6220357e59633c78b689aa432d056b43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":293,"files":["docs/lib.md","docs/parsers/lsusb.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":4},{"name":"docs/parsers/lsusb.md","lines_changed":291},{"name":"jc/lib.py","lines_changed":4}]},"message":"parse docstring formatting"},{"commit":"4568f2d06e8fc1c465c86c318d925586481af062","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":4},{"name":"jc/lib.py","lines_changed":4}]},"message":"formatting for parse docstring"},{"commit":"c36e513d1bcc07cd8f01ff59199950e5396da51b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":86,"insertions":88,"deletions":91,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"],"file_stats":[{"name":"docgen.sh","lines_changed":9},{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/dpkg_l.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/finger.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/gshadow.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iostat.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/jar_manifest.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/kv.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/stat_s.md","lines_changed":2},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"docs/parsers/zipinfo.md","lines_changed":2}]},"message":"formatting"},{"commit":"8e089baf3fe30fed80e1c5cdde7c3046bb70ca5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":86,"insertions":8,"deletions":855,"files":["docgen.sh","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md"],"file_stats":[{"name":"docgen.sh","lines_changed":13},{"name":"docs/parsers/acpi.md","lines_changed":10},{"name":"docs/parsers/airport.md","lines_changed":10},{"name":"docs/parsers/airport_s.md","lines_changed":10},{"name":"docs/parsers/arp.md","lines_changed":10},{"name":"docs/parsers/blkid.md","lines_changed":10},{"name":"docs/parsers/cksum.md","lines_changed":10},{"name":"docs/parsers/crontab.md","lines_changed":10},{"name":"docs/parsers/crontab_u.md","lines_changed":10},{"name":"docs/parsers/csv.md","lines_changed":10},{"name":"docs/parsers/csv_s.md","lines_changed":10},{"name":"docs/parsers/date.md","lines_changed":10},{"name":"docs/parsers/df.md","lines_changed":10},{"name":"docs/parsers/dig.md","lines_changed":10},{"name":"docs/parsers/dir.md","lines_changed":10},{"name":"docs/parsers/dmidecode.md","lines_changed":10},{"name":"docs/parsers/dpkg_l.md","lines_changed":10},{"name":"docs/parsers/du.md","lines_changed":10},{"name":"docs/parsers/env.md","lines_changed":10},{"name":"docs/parsers/file.md","lines_changed":10},{"name":"docs/parsers/finger.md","lines_changed":10},{"name":"docs/parsers/free.md","lines_changed":10},{"name":"docs/parsers/fstab.md","lines_changed":10},{"name":"docs/parsers/group.md","lines_changed":10},{"name":"docs/parsers/gshadow.md","lines_changed":10},{"name":"docs/parsers/hash.md","lines_changed":10},{"name":"docs/parsers/hashsum.md","lines_changed":10},{"name":"docs/parsers/hciconfig.md","lines_changed":10},{"name":"docs/parsers/history.md","lines_changed":10},{"name":"docs/parsers/hosts.md","lines_changed":10},{"name":"docs/parsers/id.md","lines_changed":10},{"name":"docs/parsers/ifconfig.md","lines_changed":10},{"name":"docs/parsers/ini.md","lines_changed":10},{"name":"docs/parsers/iostat.md","lines_changed":10},{"name":"docs/parsers/iostat_s.md","lines_changed":10},{"name":"docs/parsers/iptables.md","lines_changed":10},{"name":"docs/parsers/iw_scan.md","lines_changed":10},{"name":"docs/parsers/jar_manifest.md","lines_changed":10},{"name":"docs/parsers/jobs.md","lines_changed":10},{"name":"docs/parsers/kv.md","lines_changed":10},{"name":"docs/parsers/last.md","lines_changed":10},{"name":"docs/parsers/ls.md","lines_changed":10},{"name":"docs/parsers/ls_s.md","lines_changed":10},{"name":"docs/parsers/lsblk.md","lines_changed":10},{"name":"docs/parsers/lsmod.md","lines_changed":10},{"name":"docs/parsers/lsof.md","lines_changed":10},{"name":"docs/parsers/lsusb.md","lines_changed":10},{"name":"docs/parsers/mount.md","lines_changed":10},{"name":"docs/parsers/netstat.md","lines_changed":10},{"name":"docs/parsers/ntpq.md","lines_changed":10},{"name":"docs/parsers/passwd.md","lines_changed":10},{"name":"docs/parsers/ping.md","lines_changed":10},{"name":"docs/parsers/ping_s.md","lines_changed":10},{"name":"docs/parsers/pip_list.md","lines_changed":10},{"name":"docs/parsers/pip_show.md","lines_changed":10},{"name":"docs/parsers/ps.md","lines_changed":10},{"name":"docs/parsers/route.md","lines_changed":10},{"name":"docs/parsers/rpm_qi.md","lines_changed":10},{"name":"docs/parsers/sfdisk.md","lines_changed":10},{"name":"docs/parsers/shadow.md","lines_changed":10},{"name":"docs/parsers/ss.md","lines_changed":10},{"name":"docs/parsers/stat.md","lines_changed":10},{"name":"docs/parsers/stat_s.md","lines_changed":10},{"name":"docs/parsers/sysctl.md","lines_changed":10},{"name":"docs/parsers/systemctl.md","lines_changed":10},{"name":"docs/parsers/systemctl_lj.md","lines_changed":10},{"name":"docs/parsers/systemctl_ls.md","lines_changed":10},{"name":"docs/parsers/systemctl_luf.md","lines_changed":10},{"name":"docs/parsers/systeminfo.md","lines_changed":10},{"name":"docs/parsers/time.md","lines_changed":10},{"name":"docs/parsers/timedatectl.md","lines_changed":10},{"name":"docs/parsers/tracepath.md","lines_changed":10},{"name":"docs/parsers/traceroute.md","lines_changed":10},{"name":"docs/parsers/ufw.md","lines_changed":10},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":10},{"name":"docs/parsers/uname.md","lines_changed":10},{"name":"docs/parsers/upower.md","lines_changed":10},{"name":"docs/parsers/uptime.md","lines_changed":10},{"name":"docs/parsers/vmstat.md","lines_changed":10},{"name":"docs/parsers/vmstat_s.md","lines_changed":10},{"name":"docs/parsers/w.md","lines_changed":10},{"name":"docs/parsers/wc.md","lines_changed":10},{"name":"docs/parsers/who.md","lines_changed":10},{"name":"docs/parsers/xml.md","lines_changed":10},{"name":"docs/parsers/yaml.md","lines_changed":10},{"name":"docs/parsers/zipinfo.md","lines_changed":10}]},"message":"remove info class from docs"},{"commit":"386f6c317e104e797c2b55e3d21c8b064a83ac78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":89,"insertions":9552,"deletions":9939,"files":["docgen.sh","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/utils.md"],"file_stats":[{"name":"docgen.sh","lines_changed":10},{"name":"docs/lib.md","lines_changed":105},{"name":"docs/parsers/acpi.md","lines_changed":440},{"name":"docs/parsers/airport.md","lines_changed":146},{"name":"docs/parsers/airport_s.md","lines_changed":202},{"name":"docs/parsers/arp.md","lines_changed":220},{"name":"docs/parsers/blkid.md","lines_changed":230},{"name":"docs/parsers/cksum.md","lines_changed":90},{"name":"docs/parsers/crontab.md","lines_changed":330},{"name":"docs/parsers/crontab_u.md","lines_changed":326},{"name":"docs/parsers/csv.md","lines_changed":140},{"name":"docs/parsers/csv_s.md","lines_changed":114},{"name":"docs/parsers/date.md","lines_changed":132},{"name":"docs/parsers/df.md","lines_changed":184},{"name":"docs/parsers/dig.md","lines_changed":614},{"name":"docs/parsers/dir.md","lines_changed":210},{"name":"docs/parsers/dmidecode.md","lines_changed":240},{"name":"docs/parsers/dpkg_l.md","lines_changed":244},{"name":"docs/parsers/du.md","lines_changed":164},{"name":"docs/parsers/env.md","lines_changed":126},{"name":"docs/parsers/file.md","lines_changed":114},{"name":"docs/parsers/finger.md","lines_changed":166},{"name":"docs/parsers/free.md","lines_changed":134},{"name":"docs/parsers/fstab.md","lines_changed":164},{"name":"docs/parsers/group.md","lines_changed":212},{"name":"docs/parsers/gshadow.md","lines_changed":148},{"name":"docs/parsers/hash.md","lines_changed":68},{"name":"docs/parsers/hashsum.md","lines_changed":106},{"name":"docs/parsers/hciconfig.md","lines_changed":620},{"name":"docs/parsers/history.md","lines_changed":106},{"name":"docs/parsers/hosts.md","lines_changed":142},{"name":"docs/parsers/id.md","lines_changed":200},{"name":"docs/parsers/ifconfig.md","lines_changed":388},{"name":"docs/parsers/ini.md","lines_changed":110},{"name":"docs/parsers/iostat.md","lines_changed":304},{"name":"docs/parsers/iostat_s.md","lines_changed":198},{"name":"docs/parsers/iptables.md","lines_changed":312},{"name":"docs/parsers/iw_scan.md","lines_changed":226},{"name":"docs/parsers/jar_manifest.md","lines_changed":148},{"name":"docs/parsers/jobs.md","lines_changed":170},{"name":"docs/parsers/kv.md","lines_changed":86},{"name":"docs/parsers/last.md","lines_changed":186},{"name":"docs/parsers/ls.md","lines_changed":190},{"name":"docs/parsers/ls_s.md","lines_changed":130},{"name":"docs/parsers/lsblk.md","lines_changed":534},{"name":"docs/parsers/lsmod.md","lines_changed":240},{"name":"docs/parsers/lsof.md","lines_changed":228},{"name":"docs/parsers/lsusb.md","lines_changed":502},{"name":"docs/parsers/mount.md","lines_changed":140},{"name":"docs/parsers/netstat.md","lines_changed":688},{"name":"docs/parsers/ntpq.md","lines_changed":402},{"name":"docs/parsers/passwd.md","lines_changed":182},{"name":"docs/parsers/ping.md","lines_changed":308},{"name":"docs/parsers/ping_s.md","lines_changed":160},{"name":"docs/parsers/pip_list.md","lines_changed":84},{"name":"docs/parsers/pip_show.md","lines_changed":120},{"name":"docs/parsers/ps.md","lines_changed":394},{"name":"docs/parsers/route.md","lines_changed":206},{"name":"docs/parsers/rpm_qi.md","lines_changed":296},{"name":"docs/parsers/sfdisk.md","lines_changed":376},{"name":"docs/parsers/shadow.md","lines_changed":196},{"name":"docs/parsers/ss.md","lines_changed":538},{"name":"docs/parsers/stat.md","lines_changed":318},{"name":"docs/parsers/stat_s.md","lines_changed":152},{"name":"docs/parsers/sysctl.md","lines_changed":100},{"name":"docs/parsers/systemctl.md","lines_changed":106},{"name":"docs/parsers/systemctl_lj.md","lines_changed":140},{"name":"docs/parsers/systemctl_ls.md","lines_changed":90},{"name":"docs/parsers/systemctl_luf.md","lines_changed":82},{"name":"docs/parsers/systeminfo.md","lines_changed":396},{"name":"docs/parsers/time.md","lines_changed":242},{"name":"docs/parsers/timedatectl.md","lines_changed":112},{"name":"docs/parsers/tracepath.md","lines_changed":248},{"name":"docs/parsers/traceroute.md","lines_changed":220},{"name":"docs/parsers/ufw.md","lines_changed":390},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":250},{"name":"docs/parsers/uname.md","lines_changed":80},{"name":"docs/parsers/universal.md","lines_changed":72},{"name":"docs/parsers/upower.md","lines_changed":374},{"name":"docs/parsers/uptime.md","lines_changed":120},{"name":"docs/parsers/vmstat.md","lines_changed":226},{"name":"docs/parsers/vmstat_s.md","lines_changed":172},{"name":"docs/parsers/w.md","lines_changed":196},{"name":"docs/parsers/wc.md","lines_changed":98},{"name":"docs/parsers/who.md","lines_changed":250},{"name":"docs/parsers/xml.md","lines_changed":134},{"name":"docs/parsers/yaml.md","lines_changed":162},{"name":"docs/parsers/zipinfo.md","lines_changed":138},{"name":"docs/utils.md","lines_changed":134}]},"message":"update markdown processor settings"},{"commit":"75cd84ce8a86b3357c6cf5fe4fbc62d0f298a29a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":94,"insertions":11423,"deletions":10081,"files":["README.md","docgen.sh","docgen.sh.old","docs/lib.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/universal.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","docs/readme.md","docs/utils.md","jc/cli.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docgen.sh","lines_changed":12},{"name":"docgen.sh.old","lines_changed":44},{"name":"docs/lib.md","lines_changed":151},{"name":"docs/parsers/acpi.md","lines_changed":454},{"name":"docs/parsers/airport.md","lines_changed":166},{"name":"docs/parsers/airport_s.md","lines_changed":224},{"name":"docs/parsers/arp.md","lines_changed":240},{"name":"docs/parsers/blkid.md","lines_changed":250},{"name":"docs/parsers/cksum.md","lines_changed":110},{"name":"docs/parsers/crontab.md","lines_changed":350},{"name":"docs/parsers/crontab_u.md","lines_changed":348},{"name":"docs/parsers/csv.md","lines_changed":160},{"name":"docs/parsers/csv_s.md","lines_changed":120},{"name":"docs/parsers/date.md","lines_changed":152},{"name":"docs/parsers/df.md","lines_changed":204},{"name":"docs/parsers/dig.md","lines_changed":634},{"name":"docs/parsers/dir.md","lines_changed":230},{"name":"docs/parsers/dmidecode.md","lines_changed":260},{"name":"docs/parsers/dpkg_l.md","lines_changed":266},{"name":"docs/parsers/du.md","lines_changed":184},{"name":"docs/parsers/env.md","lines_changed":146},{"name":"docs/parsers/file.md","lines_changed":134},{"name":"docs/parsers/finger.md","lines_changed":186},{"name":"docs/parsers/free.md","lines_changed":154},{"name":"docs/parsers/fstab.md","lines_changed":184},{"name":"docs/parsers/group.md","lines_changed":232},{"name":"docs/parsers/gshadow.md","lines_changed":168},{"name":"docs/parsers/hash.md","lines_changed":88},{"name":"docs/parsers/hashsum.md","lines_changed":126},{"name":"docs/parsers/hciconfig.md","lines_changed":634},{"name":"docs/parsers/history.md","lines_changed":126},{"name":"docs/parsers/hosts.md","lines_changed":162},{"name":"docs/parsers/id.md","lines_changed":220},{"name":"docs/parsers/ifconfig.md","lines_changed":472},{"name":"docs/parsers/ini.md","lines_changed":130},{"name":"docs/parsers/iostat.md","lines_changed":324},{"name":"docs/parsers/iostat_s.md","lines_changed":220},{"name":"docs/parsers/iptables.md","lines_changed":332},{"name":"docs/parsers/iw_scan.md","lines_changed":248},{"name":"docs/parsers/jar_manifest.md","lines_changed":170},{"name":"docs/parsers/jobs.md","lines_changed":190},{"name":"docs/parsers/kv.md","lines_changed":106},{"name":"docs/parsers/last.md","lines_changed":207},{"name":"docs/parsers/ls.md","lines_changed":210},{"name":"docs/parsers/ls_s.md","lines_changed":152},{"name":"docs/parsers/lsblk.md","lines_changed":548},{"name":"docs/parsers/lsmod.md","lines_changed":260},{"name":"docs/parsers/lsof.md","lines_changed":248},{"name":"docs/parsers/lsusb.md","lines_changed":518},{"name":"docs/parsers/mount.md","lines_changed":160},{"name":"docs/parsers/netstat.md","lines_changed":702},{"name":"docs/parsers/ntpq.md","lines_changed":422},{"name":"docs/parsers/passwd.md","lines_changed":202},{"name":"docs/parsers/ping.md","lines_changed":328},{"name":"docs/parsers/ping_s.md","lines_changed":182},{"name":"docs/parsers/pip_list.md","lines_changed":106},{"name":"docs/parsers/pip_show.md","lines_changed":142},{"name":"docs/parsers/ps.md","lines_changed":414},{"name":"docs/parsers/route.md","lines_changed":226},{"name":"docs/parsers/rpm_qi.md","lines_changed":318},{"name":"docs/parsers/sfdisk.md","lines_changed":396},{"name":"docs/parsers/shadow.md","lines_changed":216},{"name":"docs/parsers/ss.md","lines_changed":552},{"name":"docs/parsers/stat.md","lines_changed":338},{"name":"docs/parsers/stat_s.md","lines_changed":174},{"name":"docs/parsers/sysctl.md","lines_changed":120},{"name":"docs/parsers/systemctl.md","lines_changed":126},{"name":"docs/parsers/systemctl_lj.md","lines_changed":162},{"name":"docs/parsers/systemctl_ls.md","lines_changed":112},{"name":"docs/parsers/systemctl_luf.md","lines_changed":104},{"name":"docs/parsers/systeminfo.md","lines_changed":416},{"name":"docs/parsers/time.md","lines_changed":262},{"name":"docs/parsers/timedatectl.md","lines_changed":132},{"name":"docs/parsers/tracepath.md","lines_changed":268},{"name":"docs/parsers/traceroute.md","lines_changed":288},{"name":"docs/parsers/ufw.md","lines_changed":410},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":272},{"name":"docs/parsers/uname.md","lines_changed":100},{"name":"docs/parsers/universal.md","lines_changed":85},{"name":"docs/parsers/upower.md","lines_changed":394},{"name":"docs/parsers/uptime.md","lines_changed":140},{"name":"docs/parsers/vmstat.md","lines_changed":246},{"name":"docs/parsers/vmstat_s.md","lines_changed":194},{"name":"docs/parsers/w.md","lines_changed":216},{"name":"docs/parsers/wc.md","lines_changed":118},{"name":"docs/parsers/who.md","lines_changed":270},{"name":"docs/parsers/xml.md","lines_changed":154},{"name":"docs/parsers/yaml.md","lines_changed":182},{"name":"docs/parsers/zipinfo.md","lines_changed":158},{"name":"docs/readme.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":223},{"name":"jc/cli.py","lines_changed":4},{"name":"man/jc.1","lines_changed":12}]},"message":"try new markdown conversion"},{"commit":"6fad44e35df5d0e33e716d0fcb84ed309e6fd30b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"fix type hint"},{"commit":"1caac750daa25a5abeb1289964e918ec06289bfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":4}]},"message":"Update type hints"},{"commit":"16370dcb3d5cf1304c2340ef2253ef2987a982b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":2}]},"message":"update type hints"},{"commit":"c1302f2573993a6908001d6df0697486f54a9e7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":8,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":27}]},"message":"add type-hints to public api"},{"commit":"6f0ffe0955e4d9d6cc82552cf4e4f419e3ff3756","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"docu update"},{"commit":"1f89745fe7cca3a0ac27445942098b717675a481","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"a46ac18ef775bb2c52675e61e11c5d92f33cbe81","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"doc update"},{"commit":"1a05f1c575b57456481e41baaf551cef30115966","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":64,"deletions":54,"files":["jc/__init__.py","jc/cli.py","jc/lib.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":4},{"name":"jc/cli.py","lines_changed":48},{"name":"jc/lib.py","lines_changed":66}]},"message":"add parser info functions. move _get_parser functionality from cli to lib"},{"commit":"08f818aa42ca68050a79ec387c42bff265257fd5","merge":"027c231 b389665","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #199 from kellyjonbrazil/master"},{"commit":"b3896650c230b4acc73704a50c93ee74e4034eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":62,"deletions":104,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":83},{"name":"templates/readme_template","lines_changed":83}]},"message":"revert column formatting"},{"commit":"f285539526998a5097943c71dcecb2979036b2b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":104,"deletions":62,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":83},{"name":"templates/readme_template","lines_changed":83}]},"message":"conform to 80 columns"},{"commit":"a896dcdf3b31b60582ebb1b3bca5d1103f998dd6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":338,"deletions":120,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":229},{"name":"templates/readme_template","lines_changed":229}]},"message":"formatting"},{"commit":"0a187d4ed08173ec360a006ae2367bb1f2f96c52","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":4}]},"message":"add console interview links"},{"commit":"2d65bc57d5a396e6683f970194de29494b5c1272","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":6},{"name":"jc/__init__.py","lines_changed":6}]},"message":"add quotes"},{"commit":"ab63809fde0cefe1f0401d957a3736fdb760f0cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"update description"},{"commit":"6f04707dc63936efd0e533ae36e1b39ead10c466","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add python package doc info to top of page"},{"commit":"d14a86a9b58bdc3cb0c8df1dfa495aefdaab8033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2}]},"message":"fix typo"},{"commit":"8e6a31d3da19926ac46744e02b27a899ca5fbd7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":14,"deletions":8,"files":["CHANGELOG","docs/readme.md","jc/__init__.py","jc/lib.py","man/jc.1","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4},{"name":"jc/lib.py","lines_changed":7},{"name":"man/jc.1","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"minor fix for macOS binary"},{"commit":"6e7b6afe87355e96422bb2560ffcbd5e79d28f04","merge":"70cb445 027c231","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #198 from kellyjonbrazil/dev"},{"commit":"027c231097a002526350a93322407582a85db0cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"formatting"},{"commit":"f1cf7d1f953586dd44a4463d924f1a1f52717c37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":5,"files":["jc/parsers/foo.py","jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":6},{"name":"jc/parsers/foo_s.py","lines_changed":6}]},"message":"add helper function info"},{"commit":"df611cc263f50285e74ceb3381f55b43a74870a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":6},{"name":"jc/__init__.py","lines_changed":6}]},"message":"formatting"},{"commit":"0f3143bbbb593340190e66729580146410012e14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":6},{"name":"jc/__init__.py","lines_changed":6}]},"message":"formatting"},{"commit":"c280757b7624a46543e481ca47a6e084d2d6f519","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"formatting"},{"commit":"d30b9d84ef5ec3a2a504f7ea251c932b8c9ea878","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"formatting"},{"commit":"50ded1dbd97d26cf01d7e1a98b40e0f0f7d02202","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":4,"files":["docs/readme.md"],"file_stats":[{"name":"docs/readme.md","lines_changed":14}]},"message":"doc update"},{"commit":"e319aea5a45c598a44f35b4e58131d977509e4f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":4,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":14}]},"message":"add doc version info"},{"commit":"ba86509c1d8700a50fe14e9d931ee57261306c5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":9,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":12}]},"message":"simplify OSError exception handling"},{"commit":"0a9279ae6bfdd1aa59f5e9b31ce0af3bfec19f96","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["CHANGELOG","tests/test_lib.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":5},{"name":"tests/test_lib.py","lines_changed":1}]},"message":"doc update"},{"commit":"a13dde12af01b4473aa9a34b8a0d7387fb48500a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":173,"insertions":173,"deletions":173,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/dpkg_l.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/finger.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/gshadow.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iostat.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/jar_manifest.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/kv.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/stat_s.md","lines_changed":2},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"docs/parsers/zipinfo.md","lines_changed":2},{"name":"jc/parsers/acpi.py","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/blkid.py","lines_changed":2},{"name":"jc/parsers/cksum.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"jc/parsers/csv.py","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/dir.py","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":2},{"name":"jc/parsers/dpkg_l.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/finger.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/group.py","lines_changed":2},{"name":"jc/parsers/gshadow.py","lines_changed":2},{"name":"jc/parsers/hash.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":2},{"name":"jc/parsers/hciconfig.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/iostat.py","lines_changed":2},{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2},{"name":"jc/parsers/jar_manifest.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/kv.py","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/lsusb.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/ntpq.py","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":2},{"name":"jc/parsers/ping.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/rpm_qi.py","lines_changed":2},{"name":"jc/parsers/sfdisk.py","lines_changed":2},{"name":"jc/parsers/shadow.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/stat_s.py","lines_changed":2},{"name":"jc/parsers/sysctl.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/systeminfo.py","lines_changed":2},{"name":"jc/parsers/time.py","lines_changed":2},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/ufw.py","lines_changed":2},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/parsers/wc.py","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":2},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2},{"name":"jc/parsers/zipinfo.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"change raw output wording"},{"commit":"e2ed358de1abefd737c187a324cbe4734d6975e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"changelog update"},{"commit":"a2cd3666210be3727a00c3405972f32fbd421046","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["docs/_config.yml"],"file_stats":[{"name":"docs/_config.yml","lines_changed":1}]},"message":"Delete _config.yml"},{"commit":"15addd9bfc18a0e87beb97040b431c872b783662","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":8,"files":["docs/parsers/universal.md","jc/parsers/universal.py"],"file_stats":[{"name":"docs/parsers/universal.md","lines_changed":5},{"name":"jc/parsers/universal.py","lines_changed":7}]},"message":"doc fix"},{"commit":"a4e34b0053ec0c032f4783caaa3e07fc2c685a98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":63,"deletions":0,"files":["docgen.sh","docs/parsers/universal.md"],"file_stats":[{"name":"docgen.sh","lines_changed":3},{"name":"docs/parsers/universal.md","lines_changed":60}]},"message":"add universal parser docs"},{"commit":"d09529ac302fbcc156d58cf836f8397c98121a76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"changelog update"},{"commit":"553097b5050dc02fbdaeec2e2e138e01bc6811d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":2}]},"message":"docstring update"},{"commit":"49c556857708307f617b2b516f2d281398681b5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":35,"deletions":15,"files":["README.md","docs/lib.md","docs/readme.md","jc/__init__.py","jc/lib.py","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/lib.md","lines_changed":9},{"name":"docs/readme.md","lines_changed":13},{"name":"jc/__init__.py","lines_changed":13},{"name":"jc/lib.py","lines_changed":9},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"module doc update"},{"commit":"6962b9ee8a52c924dc2de6b79ddeea3636e80fe4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":6,"files":["docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docs/lib.md","lines_changed":7},{"name":"jc/lib.py","lines_changed":7}]},"message":"formatting"},{"commit":"b4575a3f780f9aa2751c8b4789f67aaca32dd1cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":91,"deletions":1,"files":["docgen.sh","docs/lib.md","jc/lib.py"],"file_stats":[{"name":"docgen.sh","lines_changed":4},{"name":"docs/lib.md","lines_changed":86},{"name":"jc/lib.py","lines_changed":2}]},"message":"add lib docs"},{"commit":"35b54d235d73b2ce658223be3d6095906f142d89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"templates/readme_template","lines_changed":3}]},"message":"add python package doc info"},{"commit":"583a5757e454a4e36b331057d1266279b55ee16a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":18,"insertions":34,"deletions":30,"files":["docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/file.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/traceroute.md","docs/parsers/ufw_appinfo.md","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/file.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/traceroute.py","jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":6},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":9},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":6},{"name":"jc/parsers/ls.py","lines_changed":5},{"name":"jc/parsers/ls_s.py","lines_changed":9},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":2}]},"message":"formatting"},{"commit":"f355333eeed3c4afba844dc7bed5224356552adc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":8},{"name":"jc/__init__.py","lines_changed":8}]},"message":"formatting"},{"commit":"4d7df109604e4f8367904968602acfc05217a7fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":6,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":4},{"name":"jc/__init__.py","lines_changed":4}]},"message":"formatting"},{"commit":"66b2c28f4bc75fb76800f9fb7ea485eee194a9a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":24,"deletions":24,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":24},{"name":"jc/__init__.py","lines_changed":24}]},"message":"formatting"},{"commit":"299a9c6d88fdf1fede447b4057d8f4263daef733","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":25,"deletions":57,"files":["docs/parsers/csv.md","docs/readme.md"],"file_stats":[{"name":"docs/parsers/csv.md","lines_changed":4},{"name":"docs/readme.md","lines_changed":78}]},"message":"formatting"},{"commit":"bd391d979ce98b126dab0f012a56b3fcb1f73439","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":55,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":78}]},"message":"add lib function docs"},{"commit":"7309bd2282445f6daef0b1491ff60b8104500abb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":19,"deletions":10,"files":["jc/lib.py","jc/parsers/csv.py","jc/parsers/universal.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":15},{"name":"jc/parsers/csv.py","lines_changed":4},{"name":"jc/parsers/universal.py","lines_changed":10}]},"message":"add get_help"},{"commit":"ce84c09d3394b598f19a3e012ef27ce4154e3b3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":3}]},"message":"add get_help()"},{"commit":"b4fffbb6476daf78fbdf19dbf31bbeeab950d2dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":46,"insertions":501,"deletions":304,"files":["docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/history.md","docs/parsers/ini.md","docs/parsers/iostat_s.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsusb.md","docs/parsers/netstat.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/ps.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/upower.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/who.md"],"file_stats":[{"name":"docs/parsers/crontab.md","lines_changed":3},{"name":"docs/parsers/crontab_u.md","lines_changed":22},{"name":"docs/parsers/csv.md","lines_changed":9},{"name":"docs/parsers/csv_s.md","lines_changed":35},{"name":"docs/parsers/date.md","lines_changed":18},{"name":"docs/parsers/dig.md","lines_changed":16},{"name":"docs/parsers/dir.md","lines_changed":6},{"name":"docs/parsers/dpkg_l.md","lines_changed":7},{"name":"docs/parsers/du.md","lines_changed":20},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":8},{"name":"docs/parsers/ini.md","lines_changed":15},{"name":"docs/parsers/iostat_s.md","lines_changed":25},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jar_manifest.md","lines_changed":25},{"name":"docs/parsers/jobs.md","lines_changed":3},{"name":"docs/parsers/kv.md","lines_changed":11},{"name":"docs/parsers/last.md","lines_changed":10},{"name":"docs/parsers/ls.md","lines_changed":19},{"name":"docs/parsers/ls_s.md","lines_changed":51},{"name":"docs/parsers/lsblk.md","lines_changed":10},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":3},{"name":"docs/parsers/ping.md","lines_changed":32},{"name":"docs/parsers/ping_s.md","lines_changed":85},{"name":"docs/parsers/ps.md","lines_changed":8},{"name":"docs/parsers/rpm_qi.md","lines_changed":37},{"name":"docs/parsers/sfdisk.md","lines_changed":8},{"name":"docs/parsers/ss.md","lines_changed":6},{"name":"docs/parsers/stat.md","lines_changed":6},{"name":"docs/parsers/stat_s.md","lines_changed":27},{"name":"docs/parsers/sysctl.md","lines_changed":7},{"name":"docs/parsers/systemctl.md","lines_changed":4},{"name":"docs/parsers/systemctl_ls.md","lines_changed":3},{"name":"docs/parsers/systemctl_luf.md","lines_changed":3},{"name":"docs/parsers/systeminfo.md","lines_changed":19},{"name":"docs/parsers/time.md","lines_changed":33},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"docs/parsers/ufw.md","lines_changed":7},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":28},{"name":"docs/parsers/upower.md","lines_changed":16},{"name":"docs/parsers/vmstat.md","lines_changed":13},{"name":"docs/parsers/vmstat_s.md","lines_changed":111},{"name":"docs/parsers/who.md","lines_changed":7}]},"message":"formatting"},{"commit":"3701b4198aad1826ad6da571fbcaa530b057cc48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":86,"insertions":710,"deletions":606,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/universal.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":5},{"name":"jc/parsers/airport.py","lines_changed":7},{"name":"jc/parsers/airport_s.py","lines_changed":3},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/blkid.py","lines_changed":10},{"name":"jc/parsers/cksum.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":6},{"name":"jc/parsers/crontab_u.py","lines_changed":25},{"name":"jc/parsers/csv.py","lines_changed":14},{"name":"jc/parsers/csv_s.py","lines_changed":38},{"name":"jc/parsers/date.py","lines_changed":69},{"name":"jc/parsers/df.py","lines_changed":13},{"name":"jc/parsers/dig.py","lines_changed":28},{"name":"jc/parsers/dir.py","lines_changed":8},{"name":"jc/parsers/dmidecode.py","lines_changed":3},{"name":"jc/parsers/dpkg_l.py","lines_changed":10},{"name":"jc/parsers/du.py","lines_changed":23},{"name":"jc/parsers/env.py","lines_changed":7},{"name":"jc/parsers/file.py","lines_changed":6},{"name":"jc/parsers/finger.py","lines_changed":14},{"name":"jc/parsers/foo.py","lines_changed":3},{"name":"jc/parsers/foo_s.py","lines_changed":23},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/group.py","lines_changed":3},{"name":"jc/parsers/gshadow.py","lines_changed":3},{"name":"jc/parsers/hash.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":5},{"name":"jc/parsers/hciconfig.py","lines_changed":13},{"name":"jc/parsers/history.py","lines_changed":10},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":3},{"name":"jc/parsers/ifconfig.py","lines_changed":20},{"name":"jc/parsers/ini.py","lines_changed":23},{"name":"jc/parsers/iostat_s.py","lines_changed":25},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":11},{"name":"jc/parsers/jar_manifest.py","lines_changed":25},{"name":"jc/parsers/jobs.py","lines_changed":5},{"name":"jc/parsers/kv.py","lines_changed":13},{"name":"jc/parsers/last.py","lines_changed":17},{"name":"jc/parsers/ls.py","lines_changed":21},{"name":"jc/parsers/ls_s.py","lines_changed":53},{"name":"jc/parsers/lsblk.py","lines_changed":15},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/lsusb.py","lines_changed":5},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":20},{"name":"jc/parsers/ntpq.py","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":3},{"name":"jc/parsers/ping.py","lines_changed":46},{"name":"jc/parsers/ping_s.py","lines_changed":99},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":10},{"name":"jc/parsers/route.py","lines_changed":6},{"name":"jc/parsers/rpm_qi.py","lines_changed":40},{"name":"jc/parsers/sfdisk.py","lines_changed":16},{"name":"jc/parsers/shadow.py","lines_changed":3},{"name":"jc/parsers/ss.py","lines_changed":8},{"name":"jc/parsers/stat.py","lines_changed":12},{"name":"jc/parsers/stat_s.py","lines_changed":31},{"name":"jc/parsers/sysctl.py","lines_changed":10},{"name":"jc/parsers/systemctl.py","lines_changed":6},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":5},{"name":"jc/parsers/systemctl_luf.py","lines_changed":5},{"name":"jc/parsers/systeminfo.py","lines_changed":31},{"name":"jc/parsers/time.py","lines_changed":51},{"name":"jc/parsers/timedatectl.py","lines_changed":8},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":7},{"name":"jc/parsers/ufw.py","lines_changed":7},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":28},{"name":"jc/parsers/uname.py","lines_changed":4},{"name":"jc/parsers/universal.py","lines_changed":40},{"name":"jc/parsers/upower.py","lines_changed":32},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":28},{"name":"jc/parsers/vmstat_s.py","lines_changed":125},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/parsers/wc.py","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":10},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"formatting"},{"commit":"d4c34098fa7ad2098076f0fa0564467e5d06f916","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":5}]},"message":"formatting"},{"commit":"b3c531193b3fc53697e7d7823576f481f9462d53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":125,"deletions":71,"files":["CHANGELOG","docs/utils.md","jc/utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docs/utils.md","lines_changed":79},{"name":"jc/utils.py","lines_changed":114}]},"message":"formatting"},{"commit":"1d0e07c77bab5c48405323e52873c7952dd0a587","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":57,"deletions":55,"files":["docs/readme.md","jc/__init__.py","jc/lib.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":33},{"name":"jc/__init__.py","lines_changed":33},{"name":"jc/lib.py","lines_changed":46}]},"message":"formatting"},{"commit":"06a322cf9c7468dc7e8ba05914e1d07bbc51f63a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":8,"files":["tests/test_lib.py"],"file_stats":[{"name":"tests/test_lib.py","lines_changed":22}]},"message":"rename tests and add conversion function tests"},{"commit":"623d148712f93eacf9b7b5803140603f0af67acb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"647e83d0439a0937db14a2cc97929e38a6b6a43b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["tests/test_lib.py"],"file_stats":[{"name":"tests/test_lib.py","lines_changed":3}]},"message":"add test to ensure there are zero plugin parsers installed during tests"},{"commit":"91a554464444da0cc3ed3b4d212539232411f6cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/lib.py"],"file_stats":[{"name":"jc/lib.py","lines_changed":5}]},"message":"doc update"},{"commit":"a1190998aef1bf403ee34c38c1a0fbd6291ac38b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":82,"deletions":0,"files":["tests/test_jc.py","tests/test_lib.py"],"file_stats":[{"name":"tests/test_jc.py","lines_changed":41},{"name":"tests/test_lib.py","lines_changed":41}]},"message":"add jc and jc.lib tests"},{"commit":"097d7a1850f6f6df73a5761c657b73ef9dbd3e29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":4}]},"message":"simplify __init__"},{"commit":"302bf72e720b3a67fbf1300eaff4f99fc343abeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":138,"insertions":718,"deletions":6,"files":["docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jar_manifest.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/stat_s.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/parsers/zipinfo.md","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/foo_s.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iostat.py","jc/parsers/iostat_s.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jar_manifest.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/ls_s.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ping_s.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/stat_s.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/parsers/zipinfo.py"],"file_stats":[{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":5},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iostat.md","lines_changed":5},{"name":"docs/parsers/iostat_s.md","lines_changed":7},{"name":"docs/parsers/iptables.md","lines_changed":7},{"name":"docs/parsers/iw_scan.md","lines_changed":9},{"name":"docs/parsers/jar_manifest.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/ls_s.md","lines_changed":7},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/lsusb.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/ping_s.md","lines_changed":7},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/sfdisk.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/stat_s.md","lines_changed":7},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/systeminfo.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"docs/parsers/ufw.md","lines_changed":5},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/vmstat.md","lines_changed":5},{"name":"docs/parsers/vmstat_s.md","lines_changed":7},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5},{"name":"docs/parsers/zipinfo.md","lines_changed":5},{"name":"jc/parsers/env.py","lines_changed":5},{"name":"jc/parsers/file.py","lines_changed":5},{"name":"jc/parsers/finger.py","lines_changed":5},{"name":"jc/parsers/foo.py","lines_changed":5},{"name":"jc/parsers/foo_s.py","lines_changed":7},{"name":"jc/parsers/free.py","lines_changed":5},{"name":"jc/parsers/fstab.py","lines_changed":5},{"name":"jc/parsers/group.py","lines_changed":5},{"name":"jc/parsers/gshadow.py","lines_changed":5},{"name":"jc/parsers/hash.py","lines_changed":5},{"name":"jc/parsers/hashsum.py","lines_changed":5},{"name":"jc/parsers/hciconfig.py","lines_changed":5},{"name":"jc/parsers/history.py","lines_changed":5},{"name":"jc/parsers/hosts.py","lines_changed":5},{"name":"jc/parsers/id.py","lines_changed":5},{"name":"jc/parsers/ifconfig.py","lines_changed":5},{"name":"jc/parsers/ini.py","lines_changed":5},{"name":"jc/parsers/iostat.py","lines_changed":5},{"name":"jc/parsers/iostat_s.py","lines_changed":7},{"name":"jc/parsers/iptables.py","lines_changed":7},{"name":"jc/parsers/iw_scan.py","lines_changed":9},{"name":"jc/parsers/jar_manifest.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":5},{"name":"jc/parsers/kv.py","lines_changed":5},{"name":"jc/parsers/last.py","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":5},{"name":"jc/parsers/ls_s.py","lines_changed":7},{"name":"jc/parsers/lsblk.py","lines_changed":5},{"name":"jc/parsers/lsmod.py","lines_changed":5},{"name":"jc/parsers/lsof.py","lines_changed":5},{"name":"jc/parsers/lsusb.py","lines_changed":5},{"name":"jc/parsers/mount.py","lines_changed":5},{"name":"jc/parsers/netstat.py","lines_changed":5},{"name":"jc/parsers/ntpq.py","lines_changed":5},{"name":"jc/parsers/passwd.py","lines_changed":5},{"name":"jc/parsers/ping.py","lines_changed":5},{"name":"jc/parsers/ping_s.py","lines_changed":7},{"name":"jc/parsers/pip_list.py","lines_changed":5},{"name":"jc/parsers/pip_show.py","lines_changed":5},{"name":"jc/parsers/ps.py","lines_changed":5},{"name":"jc/parsers/route.py","lines_changed":5},{"name":"jc/parsers/rpm_qi.py","lines_changed":5},{"name":"jc/parsers/sfdisk.py","lines_changed":5},{"name":"jc/parsers/shadow.py","lines_changed":5},{"name":"jc/parsers/ss.py","lines_changed":5},{"name":"jc/parsers/stat.py","lines_changed":5},{"name":"jc/parsers/stat_s.py","lines_changed":7},{"name":"jc/parsers/sysctl.py","lines_changed":5},{"name":"jc/parsers/systemctl.py","lines_changed":5},{"name":"jc/parsers/systemctl_lj.py","lines_changed":5},{"name":"jc/parsers/systemctl_ls.py","lines_changed":5},{"name":"jc/parsers/systemctl_luf.py","lines_changed":5},{"name":"jc/parsers/systeminfo.py","lines_changed":5},{"name":"jc/parsers/time.py","lines_changed":5},{"name":"jc/parsers/timedatectl.py","lines_changed":5},{"name":"jc/parsers/tracepath.py","lines_changed":5},{"name":"jc/parsers/traceroute.py","lines_changed":5},{"name":"jc/parsers/ufw.py","lines_changed":5},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":5},{"name":"jc/parsers/uname.py","lines_changed":5},{"name":"jc/parsers/upower.py","lines_changed":5},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/vmstat.py","lines_changed":5},{"name":"jc/parsers/vmstat_s.py","lines_changed":7},{"name":"jc/parsers/w.py","lines_changed":5},{"name":"jc/parsers/wc.py","lines_changed":5},{"name":"jc/parsers/who.py","lines_changed":5},{"name":"jc/parsers/xml.py","lines_changed":5},{"name":"jc/parsers/yaml.py","lines_changed":5},{"name":"jc/parsers/zipinfo.py","lines_changed":5}]},"message":"Update high-level API docs"},{"commit":"2c42baf3a4dd6733c078f31a1becd708a05f2c36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":34,"insertions":174,"deletions":0,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/csv_s.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/csv_s.md","lines_changed":7},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"jc/parsers/acpi.py","lines_changed":5},{"name":"jc/parsers/airport.py","lines_changed":5},{"name":"jc/parsers/airport_s.py","lines_changed":5},{"name":"jc/parsers/arp.py","lines_changed":5},{"name":"jc/parsers/blkid.py","lines_changed":5},{"name":"jc/parsers/cksum.py","lines_changed":5},{"name":"jc/parsers/crontab.py","lines_changed":5},{"name":"jc/parsers/crontab_u.py","lines_changed":5},{"name":"jc/parsers/csv.py","lines_changed":5},{"name":"jc/parsers/csv_s.py","lines_changed":7},{"name":"jc/parsers/date.py","lines_changed":5},{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":5},{"name":"jc/parsers/dir.py","lines_changed":5},{"name":"jc/parsers/dmidecode.py","lines_changed":5},{"name":"jc/parsers/dpkg_l.py","lines_changed":5},{"name":"jc/parsers/du.py","lines_changed":5}]},"message":"add new high-level api info"},{"commit":"03feb89c84096c0ea1d6ae3a0634ae7b8b507e8f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2}]},"message":"add module list info"},{"commit":"9dd553192fbca3037b3afe5df6bae88f7a8a9365","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":29,"deletions":12,"files":["CHANGELOG","README.md","docs/readme.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":10},{"name":"docs/readme.md","lines_changed":16},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":10}]},"message":"doc update"},{"commit":"fa3f02e9d1ac7867e3465c2d214f4e4229ff4c66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"0a9dde58c5235f78c4c9ae9c013f7454482c6067","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":228,"deletions":134,"files":["jc/__init__.py","jc/cli.py","jc/lib.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":22},{"name":"jc/cli.py","lines_changed":154},{"name":"jc/lib.py","lines_changed":186}]},"message":"add jc.parse() high-level API"},{"commit":"70cb4453bebb235130e2c287633ecb1de6c2b0aa","merge":"e6900e2 830674c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #195 from kellyjonbrazil/dev"},{"commit":"830674cc6f19e107347a743baff7bbaab7f80b75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["CHANGELOG","jc/__init__.py","man/jc.1","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"fb406b58a12fdfe81bcff76671661af77e7f2fe5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["docs/parsers/stat_s.md","jc/parsers/stat_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/stat_s.md","lines_changed":4},{"name":"jc/parsers/stat_s.py","lines_changed":4},{"name":"man/jc.1","lines_changed":2}]},"message":"formatting"},{"commit":"55b272e41259ddc835cf4eb513fb67e7b2cf1573","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":2}]},"message":"tighten stat data detection"},{"commit":"94f62a9bf36242310790a0f37c66b2e6c6fdc078","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/stat_s.md","jc/parsers/stat_s.py"],"file_stats":[{"name":"docs/parsers/stat_s.md","lines_changed":6},{"name":"jc/parsers/stat_s.py","lines_changed":6}]},"message":"formatting"},{"commit":"8d19e4cb7b45e3b6cb8c404c959949b7593c9386","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":115,"deletions":1,"files":["CHANGELOG","README.md","docs/parsers/stat_s.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/stat_s.md","lines_changed":105},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update"},{"commit":"7e510d48e0f8426a67cf8d70d06d0331c274d358","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":106,"deletions":2,"files":["jc/parsers/stat_s.py","tests/fixtures/centos-7.7/stat-streaming.json","tests/fixtures/freebsd12/stat-streaming.json",".../stat-filename-with-spaces-streaming.json","tests/fixtures/osx-10.14.6/stat-streaming.json","tests/fixtures/ubuntu-18.04/stat-streaming.json","tests/test_stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":3},{"name":"tests/fixtures/centos-7.7/stat-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/stat-streaming.json","lines_changed":1},{"name":".../stat-filename-with-spaces-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/stat-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/stat-streaming.json","lines_changed":1},{"name":"tests/test_stat_s.py","lines_changed":100}]},"message":"simplify non-stat parse error logic"},{"commit":"7b20cffb143447f4497bc4e895eac2426e8a519f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":8}]},"message":"simplify last item logic"},{"commit":"5c934c43c13b69183561da8a77280feb3363e950","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":2}]},"message":"add continue to simplify logic"},{"commit":"8609298449e997ba4804d818f4fc23cb393ded7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":8}]},"message":"update docstring"},{"commit":"72cb0dc10b2dac486d3e2a52cf44baf0d7496034","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":10,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":24}]},"message":"fixup for first and last items"},{"commit":"7b22fa81ded0f6f59e250ffea63c5d2a0f928b25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":8}]},"message":"raise for non-stat data"},{"commit":"0b6a1307790e0793917bc2781e4873aa9dd67225","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":4}]},"message":"ignore blank lines"},{"commit":"fdcf4338e0f099699f8d48df6382be1cc97dba84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":6}]},"message":"add examples to docstring"},{"commit":"ee43037f481286a34a766390568965fdd53af132","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":2}]},"message":"remove unused continue lines"},{"commit":"26e365563c314e694915c7a3feae490ea99a112c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":50,"deletions":11,"files":["jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/parsers/stat_s.py","lines_changed":61}]},"message":"add schema and _process logic"},{"commit":"1b39586bb1b62aee8ae709512c2e3f79cefdb3d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":227,"deletions":0,"files":["jc/cli.py","jc/parsers/stat_s.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/stat_s.py","lines_changed":226}]},"message":"add stat streaming parser"},{"commit":"8bb3a6bea34d60d49039f1ed72fd7e413edc05da","merge":"78672bd e6900e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #194 from kellyjonbrazil/master"},{"commit":"e6900e2000bf265dfcfc09ffbfda39e9238661af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":21}]},"message":"add jar-manifest"},{"commit":"0ee244756bf39123e4873eb231156edbe7f0e0ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/jar_manifest.md","jc/parsers/jar_manifest.py"],"file_stats":[{"name":"docs/parsers/jar_manifest.md","lines_changed":2},{"name":"jc/parsers/jar_manifest.py","lines_changed":2}]},"message":"spelling"},{"commit":"6d5ac9abe6712e01887ce0d96c278a568319f405","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["docs/parsers/csv.md","docs/parsers/csv_s.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"update docs"},{"commit":"44f6d9e1321459be8196aeebf6db088cc5120e61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"changelog update"},{"commit":"360154559c5dee6affa55bbdd5d2f473248b9168","merge":"241d53a 78672bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #193 from kellyjonbrazil/dev"},{"commit":"78672bd7ad66c418e0ecf31add73f887b0946d29","merge":"bc7973a 65d96e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #190 from shaikustin/csv-doubleqouted"},{"commit":"65d96e26b59e231c77c1dbba1dc91708c33de30c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":13,"deletions":0,"files":["tests/fixtures/generic/csv-doubleqouted-streaming.json","tests/test_csv_s.py"],"file_stats":[{"name":"tests/fixtures/generic/csv-doubleqouted-streaming.json","lines_changed":1},{"name":"tests/test_csv_s.py","lines_changed":12}]},"message":"add streaming tests"},{"commit":"241d53af9a5c9bba70e28835e22c52c0060269ba","merge":"f733100 bc7973a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #192 from kellyjonbrazil/dev"},{"commit":"5563829df2849a899df2e9211d6c92bddc695f9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":8}]},"message":"make dialect sniff behavior match non-streaming parser"},{"commit":"3a4a27e1f94ee07352c7616c57ec655c1aea04f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/csv.py"],"file_stats":[{"name":"jc/parsers/csv.py","lines_changed":4}]},"message":"version bump"},{"commit":"9c887a36a804d817c3f669a55b9b1566d09d645d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":6}]},"message":"update csv_s parser with csv changes"},{"commit":"bc7973af36e13006230b5faa9e201e300d468912","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","jc/cli.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"update copyright"},{"commit":"32972d8fdbdc71923978fd5c2a87fd6cfa4b7f8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":122,"deletions":9,"files":["CHANGELOG","README.md","docs/parsers/jar_manifest.md","jc/__init__.py","jc/parsers/jar_manifest.py","man/jc.1","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/jar_manifest.md","lines_changed":104},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/parsers/jar_manifest.py","lines_changed":12},{"name":"man/jc.1","lines_changed":7},{"name":"setup.py","lines_changed":2}]},"message":"doc update"},{"commit":"b128d9109cbdb1176f2473d450023bb0be02531b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":46,"deletions":0,"files":["tests/test_jar_manifest.py"],"file_stats":[{"name":"tests/test_jar_manifest.py","lines_changed":46}]},"message":"add MANIFEST.MF tests"},{"commit":"929d7273a422c2bd5b83e5e19d32630f1a027f75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/jar_manifest.py"],"file_stats":[{"name":"jc/parsers/jar_manifest.py","lines_changed":8}]},"message":"doc updates"},{"commit":"2a40f842743a8745d651b4b6cae645045e6c6aab","author":"shaik","author_email":"shai.kustin@torq.io","stats":{"files_changed":4,"insertions":22,"deletions":1,"files":["jc/parsers/csv.py","tests/fixtures/generic/csv-doubleqouted.csv","tests/fixtures/generic/csv-doubleqouted.json","tests/test_csv.py"],"file_stats":[{"name":"jc/parsers/csv.py","lines_changed":4},{"name":"tests/fixtures/generic/csv-doubleqouted.csv","lines_changed":3},{"name":"tests/fixtures/generic/csv-doubleqouted.json","lines_changed":4},{"name":"tests/test_csv.py","lines_changed":12}]},"message":"fix doubleqoute in csv"},{"commit":"9ff6fa818f0857321e4b3b089d288997f2ae27af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add jar-manifest"},{"commit":"dac73a4bfe24e36474fdf6ff60c23e784ca409bd","merge":"d789554 f733100","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #189 from kellyjonbrazil/master"},{"commit":"d7895547f74744e82317eabe4c870115701872be","merge":"f8e09ae b7d439c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #188 from listuser/new_branch"},{"commit":"b7d439cb870e443e4f4e4a2137ab170835e77eff","author":"listuser","author_email":null,"stats":{"files_changed":3,"insertions":2220,"deletions":9,"files":["jc/parsers/{jar-manifest.py => jar_manifest.py}","tests/fixtures/rhel-8/MANIFEST.MF.MULTI.json","tests/fixtures/rhel-8/MANIFEST.MF.MULTI.out"],"file_stats":[{"name":"jc/parsers/{jar-manifest.py => jar_manifest.py}","lines_changed":18},{"name":"tests/fixtures/rhel-8/MANIFEST.MF.MULTI.json","lines_changed":1},{"name":"tests/fixtures/rhel-8/MANIFEST.MF.MULTI.out","lines_changed":2210}]},"message":"Renamed jar-manifest.py to jar_manifest.py, added multi manifest outputs to tests..."},{"commit":"7cc903a5f5ca368be97babadc72689375567a901","author":"listuser","author_email":null,"stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/jar-manifest.py"],"file_stats":[{"name":"jc/parsers/jar-manifest.py","lines_changed":3}]},"message":"Removed inflating from examples in jar-manifest.py"},{"commit":"c495a8291bd3e1fd070ee2e018b9b550f9c86314","author":"listuser","author_email":null,"stats":{"files_changed":1,"insertions":1,"deletions":292,"files":["tests/fixtures/rhel-8/MANIFEST.MF.json"],"file_stats":[{"name":"tests/fixtures/rhel-8/MANIFEST.MF.json","lines_changed":293}]},"message":"Updated test output in MANIFEST.MF.json"},{"commit":"5e1d7d777c627fb17feda6e51d9640bbd0f03302","author":"listuser","author_email":null,"stats":{"files_changed":8,"insertions":304,"deletions":2544,"files":["jc/parsers/{metamf.py => jar-manifest.py}","tests/fixtures/rhel-8/MANIFEST.MF.json",".../rhel-8/{MANIFEST.MF => MANIFEST.MF.out}",".../rhel-8/cmds_used_to_generate_test_data.txt",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out"],"file_stats":[{"name":"jc/parsers/{metamf.py => jar-manifest.py}","lines_changed":34},{"name":"tests/fixtures/rhel-8/MANIFEST.MF.json","lines_changed":293},{"name":".../rhel-8/{MANIFEST.MF => MANIFEST.MF.out}","lines_changed":0},{"name":".../rhel-8/cmds_used_to_generate_test_data.txt","lines_changed":14},{"name":".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json","lines_changed":1},{"name":".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out","lines_changed":2210},{"name":".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json","lines_changed":1},{"name":".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out","lines_changed":295}]},"message":"Renamed metamf.py to jar-manifest.py, plus other changes"},{"commit":"7edad3f676fe5560017ca9cb05ede6f46787e78f","author":"listuser","author_email":null,"stats":{"files_changed":8,"insertions":3042,"deletions":0,"files":["jc/parsers/metamf.py","tests/fixtures/rhel-8/MANIFEST.MF","tests/fixtures/rhel-8/MANIFEST.MF.json",".../rhel-8/cmds_used_to_generate_test_data.txt",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json",".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out"],"file_stats":[{"name":"jc/parsers/metamf.py","lines_changed":228},{"name":"tests/fixtures/rhel-8/MANIFEST.MF","lines_changed":292},{"name":"tests/fixtures/rhel-8/MANIFEST.MF.json","lines_changed":1},{"name":".../rhel-8/cmds_used_to_generate_test_data.txt","lines_changed":14},{"name":".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.json","lines_changed":1},{"name":".../rhel-8/unzip_c_MANIFEST.MF.multi_jar.out","lines_changed":2210},{"name":".../rhel-8/unzip_c_MANIFEST.MF.single_jar.json","lines_changed":1},{"name":".../rhel-8/unzip_c_MANIFEST.MF.single_jar.out","lines_changed":295}]},"message":"Create key value pairs from a MANIFEST.MF file, to include key multiline value pairs."},{"commit":"f7331001d4ab976e311458a16b6e5337da2e3aab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":3,"files":["README.md","man/jc.1","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":5},{"name":"man/jc.1","lines_changed":2},{"name":"templates/readme_template","lines_changed":5}]},"message":"use github releases instead of packaging site"},{"commit":"f8e09ae2ffe185d21305d566fad20f510df9890f","merge":"2e4f5a5 433c7cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #187 from kellyjonbrazil/master"},{"commit":"433c7cc0f05e321ffe024845a908f3e856d4cd2b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/zipinfo.md","jc/parsers/zipinfo.py"],"file_stats":[{"name":"docs/parsers/zipinfo.md","lines_changed":1},{"name":"jc/parsers/zipinfo.py","lines_changed":1}]},"message":"formatting"},{"commit":"d753e71a7452310d45fa605a2e4c70320ed60dbb","merge":"3ac8d03 2e4f5a5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #186 from kellyjonbrazil/dev"},{"commit":"2e4f5a508b6c90f9e03dcbcf64efc0e2fc446666","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":6,"deletions":3,"files":["CHANGELOG","jc/__init__.py","man/jc.1","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"88b960eff6cb3739d0d243c8d8b3e8ad5b8eb97c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":144,"deletions":1,"files":["EXAMPLES.md","README.md","docs/parsers/zipinfo.md","man/jc.1"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":31},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/zipinfo.md","lines_changed":106},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update"},{"commit":"88c77bd89e2c2a5f023e6638816c9153b6276d35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":47,"deletions":0,"files":["tests/fixtures/osx-10.14.6/zipinfo-multi.json","tests/test_zipinfo.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/zipinfo-multi.json","lines_changed":1},{"name":"tests/test_zipinfo.py","lines_changed":46}]},"message":"add zipinfo tests"},{"commit":"51a7a4251fff518d8da78ffa41e7ba2e2cb47f12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":0,"files":["tests/fixtures/osx-10.14.6/zipinfo-multi.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/zipinfo-multi.out","lines_changed":24}]},"message":"add multi-archive test output"},{"commit":"51d2f316f388d962c26aeb4f42affebec339e5a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":97,"deletions":72,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":169}]},"message":"add multi-archive support"},{"commit":"ff78a46c4854339a097992701351ef471aff1671","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"add zipinfo parser"},{"commit":"ed4a9dc1d470f64bcc9de35b2d98568ffd50257d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":23,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":44}]},"message":"formatting"},{"commit":"63182dba26040974cb8cada6f5910bb29b1fa3ed","merge":"b450697 9c1eaa9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #185 from listuser/new_branch"},{"commit":"9c1eaa938934269fe4179da798acf5f119cde0cf","author":"Matt J","author_email":"none","stats":{"files_changed":2,"insertions":68,"deletions":61,"files":["jc/parsers/zipinfo.py","tests/fixtures/rhel-8/zipinfo.json"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":127},{"name":"tests/fixtures/rhel-8/zipinfo.json","lines_changed":2}]},"message":"revised zipinfo.py nested version"},{"commit":"bc520fcbcdfad6a53e51944391fd24512bed8128","author":"Matt J","author_email":"none","stats":{"files_changed":2,"insertions":63,"deletions":53,"files":["jc/parsers/zipinfo.py","tests/fixtures/rhel-8/zipinfo.json"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":114},{"name":"tests/fixtures/rhel-8/zipinfo.json","lines_changed":2}]},"message":"added zipinfo.py nested version"},{"commit":"46faac1a12a5b39d6a25427f6e8fdcca1204dbcd","author":"Matt J","author_email":"none","stats":{"files_changed":2,"insertions":1222,"deletions":0,"files":["tests/fixtures/rhel-8/zipinfo.json","tests/fixtures/rhel-8/zipinfo.out"],"file_stats":[{"name":"tests/fixtures/rhel-8/zipinfo.json","lines_changed":1},{"name":"tests/fixtures/rhel-8/zipinfo.out","lines_changed":1221}]},"message":"add test data zipinfo.json and zipinfo.out"},{"commit":"3c424c0cb3cff462a963183585b57bea004e974f","author":"Matt J","author_email":"none","stats":{"files_changed":1,"insertions":165,"deletions":0,"files":["jc/parsers/zipinfo.py"],"file_stats":[{"name":"jc/parsers/zipinfo.py","lines_changed":165}]},"message":"initial commit zipinfo.py to new_branch"},{"commit":"3ac8d0362b4fb9999fc55a60a9cb20ac80d114f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"use quotes around python versions"},{"commit":"d88b998e6c7826a9ecae18663328e2d2915030fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":8,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":8},{"name":"jc/parsers/csv_s.py","lines_changed":8}]},"message":"formatting"},{"commit":"a9ed55c00652a563391a7930c7a4649967131ae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":11,"deletions":11,"files":["docs/parsers/csv_s.md","docs/parsers/iostat_s.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/iostat_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/iostat_s.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]},"message":"fix spelling"},{"commit":"ea614341232e5272ee0c7fd46ba0f313033c761f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":16,"deletions":8,"files":["docs/parsers/crontab.md","docs/parsers/crontab_u.md","jc/parsers/crontab.py","jc/parsers/crontab_u.py"],"file_stats":[{"name":"docs/parsers/crontab.md","lines_changed":6},{"name":"docs/parsers/crontab_u.md","lines_changed":6},{"name":"jc/parsers/crontab.py","lines_changed":6},{"name":"jc/parsers/crontab_u.py","lines_changed":6}]},"message":"fix schema docs"},{"commit":"a73d0d26cbe2860b8374661068e09e0717a3bab2","merge":"a7de911 b450697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #184 from kellyjonbrazil/dev"},{"commit":"b4506976e3c865397bc657183d49c484d8bcfd7a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":8},{"name":"templates/manpage_template","lines_changed":6}]},"message":"formatting"},{"commit":"34cb75a09697a06c3878f2f9a84eb3bd2a90ae62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/__init__.py","setup.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"34df643f60712ae25645cb7cddff80e43c12262b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":18,"deletions":0,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"man/jc.1","lines_changed":6},{"name":"templates/manpage_template","lines_changed":6},{"name":"templates/readme_template","lines_changed":3}]},"message":"add disable colors section"},{"commit":"ac7c13fcc013d386f34db51d634298fa3e97eccd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":11,"deletions":1,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"man/jc.1","lines_changed":6},{"name":"templates/manpage_template","lines_changed":4},{"name":"templates/readme_template","lines_changed":1}]},"message":"add -C option to docs"},{"commit":"4fdb34c7d5fcaa65e2ccab814c3acf2f0f70c442","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"add no-color.org"},{"commit":"7ac468e35aac1a63c4e22f33aead74a6e41a22a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"changelog update"},{"commit":"df190aa299f1669d1fe09380026ae086839abc02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":15,"deletions":7,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":22}]},"message":"add -C option to force color even with pipes"},{"commit":"9621475e86fe20fcdc2902b6ce7860a833ae2ca0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"changelog update"},{"commit":"82e0160de820ad2ed6143f58458711d600b929a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"refactor NO_COLOR test"},{"commit":"d03fb8b626a97e81006d0b108c8f400fe4e2ce3b","merge":"b300dfb 7933dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"b300dfb3d75fe76e2ddbb087ff742dd0b5e6155b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"Add support for NO_COLOR env variable"},{"commit":"a7de9111d97e687cafbc0709ec3ff7453d658a80","merge":"21e69a7 7933dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #183 from kellyjonbrazil/dev"},{"commit":"7933dfdbe7bf400833d6f6b771362dfc518b9a8d","merge":"f7cb5f7 21e69a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'master' into dev"},{"commit":"f7cb5f7d01ac01538bee4da816408072b585768e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"update date"},{"commit":"a26a298f1a3c141171e7d7ce459a27a297cec031","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":148,"deletions":1,"files":["README.md","docs/parsers/iostat.md","docs/parsers/iostat_s.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/iostat.md","lines_changed":15},{"name":"docs/parsers/iostat_s.md","lines_changed":126},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update"},{"commit":"dbd134d0dac2fc152183480958fd9e65919ac98d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat_s.py","lines_changed":6}]},"message":"add examples to docs"},{"commit":"11aa01b0d9d6913059f98f9bd7591d7cad9037cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":15,"insertions":15,"deletions":1,"files":["jc/parsers/iostat_s.py","tests/fixtures/centos-7.7/iostat-1-streaming.json","tests/fixtures/centos-7.7/iostat-m-streaming.json","tests/fixtures/centos-7.7/iostat-mx-streaming.json","tests/fixtures/centos-7.7/iostat-streaming.json","tests/fixtures/centos-7.7/iostat-x-streaming.json","tests/fixtures/ubuntu-18.04/iostat-1-streaming.json","tests/fixtures/ubuntu-18.04/iostat-m-streaming.json","tests/fixtures/ubuntu-18.04/iostat-mx-streaming.json","tests/fixtures/ubuntu-18.04/iostat-streaming.json","tests/fixtures/ubuntu-18.04/iostat-x-streaming.json","tests/fixtures/ubuntu-20.10/iostat-m-streaming.json","tests/fixtures/ubuntu-20.10/iostat-mx-streaming.json","tests/fixtures/ubuntu-20.10/iostat-streaming.json","tests/fixtures/ubuntu-20.10/iostat-x-streaming.json"],"file_stats":[{"name":"jc/parsers/iostat_s.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iostat-1-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-m-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-mx-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-x-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-1-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-m-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-mx-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-x-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-m-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-mx-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-x-streaming.json","lines_changed":1}]},"message":"iostat-s tests"},{"commit":"6f18e5344356684e845ec63158c570d82156254f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":203,"deletions":0,"files":["tests/test_iostat_s.py"],"file_stats":[{"name":"tests/test_iostat_s.py","lines_changed":203}]},"message":"fix for null lines"},{"commit":"7b467c466568ad4e7986d4d7cf3ec606681b6d46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":137,"deletions":0,"files":["tests/fixtures/ubuntu-20.10/iostat-m.json","tests/fixtures/ubuntu-20.10/iostat-m.out","tests/fixtures/ubuntu-20.10/iostat-mx.json","tests/fixtures/ubuntu-20.10/iostat-mx.out","tests/fixtures/ubuntu-20.10/iostat-x.json","tests/fixtures/ubuntu-20.10/iostat-x.out","tests/fixtures/ubuntu-20.10/iostat.json","tests/fixtures/ubuntu-20.10/iostat.out","tests/test_iostat.py"],"file_stats":[{"name":"tests/fixtures/ubuntu-20.10/iostat-m.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-m.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-20.10/iostat-mx.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-mx.out","lines_changed":22},{"name":"tests/fixtures/ubuntu-20.10/iostat-x.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat-x.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-20.10/iostat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.10/iostat.out","lines_changed":22},{"name":"tests/test_iostat.py","lines_changed":47}]},"message":"add ubuntu 20.10 tests"},{"commit":"537b8f263087894c02b5b7c121765cf96182a370","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":4},{"name":"jc/parsers/iostat_s.py","lines_changed":4}]},"message":"add more int conversions"},{"commit":"4d823575e791999e200dedd491511c4fde64fc2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":4},{"name":"jc/parsers/iostat_s.py","lines_changed":4}]},"message":"add more float fields"},{"commit":"541aa1d09f20ff6979eabaa66790decb3895f18d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":68,"deletions":8,"files":["jc/parsers/iostat.py","jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":15},{"name":"jc/parsers/iostat_s.py","lines_changed":61}]},"message":"Add new field float conversions for iostat v11"},{"commit":"8f02021014b7b19acf1a8bbd777161aa82c65d66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/parsers/iostat_s.py","lines_changed":1}]},"message":"formatting"},{"commit":"158a15157c7e5dde95dc21766d0696bd82486688","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"changelog update"},{"commit":"2752e0d66a9ba0b57ac86913fd302ada23c280c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":166,"deletions":0,"files":["jc/cli.py","jc/parsers/iostat_s.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/iostat_s.py","lines_changed":165}]},"message":"add iostat streaming parser"},{"commit":"6c11e912afe3c4d16da9199b5c2fc10461928ac3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"update changelog"},{"commit":"43d34461e27e3e4ac5f985786831c170b348c7c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":83,"insertions":279,"deletions":81,"files":["README.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/csv_s.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iostat.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/ls_s.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/lsusb.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ping_s.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/sfdisk.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/systeminfo.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/ufw.md","docs/parsers/ufw_appinfo.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/utils.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/dpkg_l.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/finger.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/gshadow.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iostat.md","lines_changed":172},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":22},{"name":"man/jc.1","lines_changed":7}]},"message":"update docs"},{"commit":"4dfdc9b0f65d8c950ed74545d0cc3f95c8abec6c","merge":"e2311cb 6665ffa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"e2311cbb03f407414df953c8d1c07d0cf1a549ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":400,"deletions":0,"files":["tests/fixtures/centos-7.7/iostat-1.json","tests/fixtures/centos-7.7/iostat-1.out","tests/fixtures/centos-7.7/iostat-m.json","tests/fixtures/centos-7.7/iostat-m.out","tests/fixtures/centos-7.7/iostat-mx.json","tests/fixtures/centos-7.7/iostat-mx.out","tests/fixtures/centos-7.7/iostat-x.json","tests/fixtures/centos-7.7/iostat-x.out","tests/fixtures/centos-7.7/iostat.json","tests/fixtures/centos-7.7/iostat.out","tests/fixtures/ubuntu-18.04/iostat-1.json","tests/fixtures/ubuntu-18.04/iostat-1.out","tests/fixtures/ubuntu-18.04/iostat-m.json","tests/fixtures/ubuntu-18.04/iostat-m.out","tests/fixtures/ubuntu-18.04/iostat-mx.json","tests/fixtures/ubuntu-18.04/iostat-mx.out","tests/fixtures/ubuntu-18.04/iostat-x.json","tests/fixtures/ubuntu-18.04/iostat-x.out","tests/fixtures/ubuntu-18.04/iostat.json","tests/fixtures/ubuntu-18.04/iostat.out","tests/test_iostat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/iostat-1.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-1.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/iostat-m.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-m.out","lines_changed":10},{"name":"tests/fixtures/centos-7.7/iostat-mx.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-mx.out","lines_changed":9},{"name":"tests/fixtures/centos-7.7/iostat-x.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat-x.out","lines_changed":10},{"name":"tests/fixtures/centos-7.7/iostat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iostat.out","lines_changed":9},{"name":"tests/fixtures/ubuntu-18.04/iostat-1.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-1.out","lines_changed":77},{"name":"tests/fixtures/ubuntu-18.04/iostat-m.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-m.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-18.04/iostat-mx.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-mx.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/iostat-x.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat-x.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/iostat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iostat.out","lines_changed":27},{"name":"tests/test_iostat.py","lines_changed":143}]},"message":"add iostat tests"},{"commit":"bf15575e90985cfec5c57dd11dfa2b86d53a41be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":7,"files":["jc/parsers/iostat.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":21}]},"message":"fixes for ubunut"},{"commit":"406336c7185b539b5e00532b58146d5b1b73f259","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":44,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":44}]},"message":"add iostat example"},{"commit":"6665ffaeb8107e9db3b917db0663beaf44024533","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"remove python 3.6 from tests"},{"commit":"dcf552ca0c69aa5f0309a83dc33dee7c5ed81292","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":138,"deletions":47,"files":["jc/parsers/iostat.py"],"file_stats":[{"name":"jc/parsers/iostat.py","lines_changed":185}]},"message":"add _process and cleanup"},{"commit":"7a6ebf3c9555dd82df7dc0b71981cdd32ce0061d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":171,"deletions":0,"files":["jc/cli.py","jc/parsers/iostat.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/iostat.py","lines_changed":170}]},"message":"add iostat parser"},{"commit":"d2dc4a983c86c538e13e568b908072de4ca0daaf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"changelog update"},{"commit":"1168259bc23862f671326d41f5282a3575205214","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":3}]},"message":"add doc strings"},{"commit":"e8e4b46021557fbf5776c32dff46de022817fb6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":14,"deletions":19,"files":["jc/parsers/csv_s.py","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":5},{"name":"jc/parsers/foo_s.py","lines_changed":7},{"name":"jc/parsers/ls_s.py","lines_changed":7},{"name":"jc/parsers/ping_s.py","lines_changed":7},{"name":"jc/parsers/vmstat_s.py","lines_changed":7}]},"message":"use jc.utils type checks"},{"commit":"12d2de22821fd8f57f4d412e62f53db3d89d5e30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":77,"insertions":181,"deletions":165,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":4},{"name":"jc/parsers/airport.py","lines_changed":4},{"name":"jc/parsers/airport_s.py","lines_changed":4},{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/blkid.py","lines_changed":4},{"name":"jc/parsers/cksum.py","lines_changed":4},{"name":"jc/parsers/crontab.py","lines_changed":4},{"name":"jc/parsers/crontab_u.py","lines_changed":4},{"name":"jc/parsers/csv.py","lines_changed":4},{"name":"jc/parsers/date.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":5},{"name":"jc/parsers/dir.py","lines_changed":4},{"name":"jc/parsers/dmidecode.py","lines_changed":4},{"name":"jc/parsers/dpkg_l.py","lines_changed":4},{"name":"jc/parsers/du.py","lines_changed":4},{"name":"jc/parsers/env.py","lines_changed":4},{"name":"jc/parsers/file.py","lines_changed":4},{"name":"jc/parsers/finger.py","lines_changed":4},{"name":"jc/parsers/foo.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":4},{"name":"jc/parsers/fstab.py","lines_changed":4},{"name":"jc/parsers/group.py","lines_changed":4},{"name":"jc/parsers/gshadow.py","lines_changed":4},{"name":"jc/parsers/hash.py","lines_changed":4},{"name":"jc/parsers/hashsum.py","lines_changed":4},{"name":"jc/parsers/hciconfig.py","lines_changed":4},{"name":"jc/parsers/history.py","lines_changed":4},{"name":"jc/parsers/hosts.py","lines_changed":4},{"name":"jc/parsers/id.py","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":4},{"name":"jc/parsers/ini.py","lines_changed":4},{"name":"jc/parsers/iptables.py","lines_changed":4},{"name":"jc/parsers/iw_scan.py","lines_changed":4},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/last.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4},{"name":"jc/parsers/lsblk.py","lines_changed":4},{"name":"jc/parsers/lsmod.py","lines_changed":4},{"name":"jc/parsers/lsof.py","lines_changed":4},{"name":"jc/parsers/lsusb.py","lines_changed":4},{"name":"jc/parsers/mount.py","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":4},{"name":"jc/parsers/ntpq.py","lines_changed":4},{"name":"jc/parsers/passwd.py","lines_changed":4},{"name":"jc/parsers/ping.py","lines_changed":4},{"name":"jc/parsers/pip_list.py","lines_changed":4},{"name":"jc/parsers/pip_show.py","lines_changed":4},{"name":"jc/parsers/ps.py","lines_changed":4},{"name":"jc/parsers/route.py","lines_changed":4},{"name":"jc/parsers/rpm_qi.py","lines_changed":4},{"name":"jc/parsers/sfdisk.py","lines_changed":4},{"name":"jc/parsers/shadow.py","lines_changed":4},{"name":"jc/parsers/ss.py","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"jc/parsers/sysctl.py","lines_changed":4},{"name":"jc/parsers/systemctl.py","lines_changed":4},{"name":"jc/parsers/systemctl_lj.py","lines_changed":4},{"name":"jc/parsers/systemctl_ls.py","lines_changed":4},{"name":"jc/parsers/systemctl_luf.py","lines_changed":4},{"name":"jc/parsers/systeminfo.py","lines_changed":4},{"name":"jc/parsers/time.py","lines_changed":4},{"name":"jc/parsers/timedatectl.py","lines_changed":4},{"name":"jc/parsers/tracepath.py","lines_changed":4},{"name":"jc/parsers/traceroute.py","lines_changed":4},{"name":"jc/parsers/ufw.py","lines_changed":4},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":4},{"name":"jc/parsers/uname.py","lines_changed":4},{"name":"jc/parsers/upower.py","lines_changed":4},{"name":"jc/parsers/uptime.py","lines_changed":4},{"name":"jc/parsers/vmstat.py","lines_changed":4},{"name":"jc/parsers/w.py","lines_changed":4},{"name":"jc/parsers/wc.py","lines_changed":4},{"name":"jc/parsers/who.py","lines_changed":4},{"name":"jc/parsers/xml.py","lines_changed":4},{"name":"jc/parsers/yaml.py","lines_changed":4},{"name":"jc/utils.py","lines_changed":40}]},"message":"use jc.utils.input_type_check() and simplify compatibility check"},{"commit":"0e2fe401e1c49a9f947d7d17b72cfc4e90787f47","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]},"message":"version bump"},{"commit":"14247adb0ae007924ca551a706eb0cfdbae97a41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["jc/parsers/csv_s.py","tests/test_csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":7},{"name":"tests/test_csv_s.py","lines_changed":2}]},"message":"add input type checks"},{"commit":"3a9f0934c41c85ea7fa87165b9559f08814645cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":3,"files":["jc/parsers/ls_s.py","tests/test_ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":6},{"name":"tests/test_ls_s.py","lines_changed":2}]},"message":"add input type checks"},{"commit":"caf0a5c8713bf0d72951a2c6fd5a2c62c9eb59d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":4,"files":["jc/parsers/vmstat_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":9},{"name":"tests/test_vmstat_s.py","lines_changed":2}]},"message":"add input type checking"},{"commit":"cfb58b1cf3e3028f8e03fdd93f0165cf8d230e1e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":8}]},"message":"add input type checks"},{"commit":"975cf195cc02774f50460ca479d9ebb7b73c7870","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":1}]},"message":"formatting"},{"commit":"8a46a259a36efc55bb0b2141acb9dd5ae52b7725","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["jc/parsers/ping_s.py","tests/test_ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":8},{"name":"tests/test_ping_s.py","lines_changed":2}]},"message":"add input type checks"},{"commit":"e395142e599aa78b4a7ec80dcc3f8ccf279f97b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"caaeaf0d67cf44f8d2651cc53a7528d3ef0c74d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":76,"insertions":227,"deletions":227,"files":["jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/lsusb.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/sfdisk.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/ufw.py","jc/parsers/ufw_appinfo.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/vmstat.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":6},{"name":"jc/parsers/airport.py","lines_changed":6},{"name":"jc/parsers/airport_s.py","lines_changed":6},{"name":"jc/parsers/arp.py","lines_changed":6},{"name":"jc/parsers/blkid.py","lines_changed":6},{"name":"jc/parsers/cksum.py","lines_changed":6},{"name":"jc/parsers/crontab.py","lines_changed":6},{"name":"jc/parsers/crontab_u.py","lines_changed":6},{"name":"jc/parsers/csv.py","lines_changed":6},{"name":"jc/parsers/date.py","lines_changed":6},{"name":"jc/parsers/df.py","lines_changed":6},{"name":"jc/parsers/dig.py","lines_changed":6},{"name":"jc/parsers/dir.py","lines_changed":6},{"name":"jc/parsers/dmidecode.py","lines_changed":6},{"name":"jc/parsers/dpkg_l.py","lines_changed":6},{"name":"jc/parsers/du.py","lines_changed":6},{"name":"jc/parsers/env.py","lines_changed":6},{"name":"jc/parsers/file.py","lines_changed":6},{"name":"jc/parsers/finger.py","lines_changed":6},{"name":"jc/parsers/foo.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":6},{"name":"jc/parsers/fstab.py","lines_changed":6},{"name":"jc/parsers/group.py","lines_changed":6},{"name":"jc/parsers/gshadow.py","lines_changed":6},{"name":"jc/parsers/hash.py","lines_changed":6},{"name":"jc/parsers/hashsum.py","lines_changed":6},{"name":"jc/parsers/hciconfig.py","lines_changed":6},{"name":"jc/parsers/history.py","lines_changed":6},{"name":"jc/parsers/hosts.py","lines_changed":6},{"name":"jc/parsers/id.py","lines_changed":6},{"name":"jc/parsers/ifconfig.py","lines_changed":6},{"name":"jc/parsers/ini.py","lines_changed":6},{"name":"jc/parsers/iptables.py","lines_changed":6},{"name":"jc/parsers/iw_scan.py","lines_changed":6},{"name":"jc/parsers/jobs.py","lines_changed":6},{"name":"jc/parsers/last.py","lines_changed":6},{"name":"jc/parsers/ls.py","lines_changed":6},{"name":"jc/parsers/lsblk.py","lines_changed":6},{"name":"jc/parsers/lsmod.py","lines_changed":6},{"name":"jc/parsers/lsof.py","lines_changed":6},{"name":"jc/parsers/lsusb.py","lines_changed":6},{"name":"jc/parsers/mount.py","lines_changed":6},{"name":"jc/parsers/netstat.py","lines_changed":6},{"name":"jc/parsers/ntpq.py","lines_changed":6},{"name":"jc/parsers/passwd.py","lines_changed":6},{"name":"jc/parsers/ping.py","lines_changed":6},{"name":"jc/parsers/pip_list.py","lines_changed":6},{"name":"jc/parsers/pip_show.py","lines_changed":6},{"name":"jc/parsers/ps.py","lines_changed":6},{"name":"jc/parsers/route.py","lines_changed":6},{"name":"jc/parsers/rpm_qi.py","lines_changed":6},{"name":"jc/parsers/sfdisk.py","lines_changed":6},{"name":"jc/parsers/shadow.py","lines_changed":6},{"name":"jc/parsers/ss.py","lines_changed":6},{"name":"jc/parsers/stat.py","lines_changed":6},{"name":"jc/parsers/sysctl.py","lines_changed":6},{"name":"jc/parsers/systemctl.py","lines_changed":6},{"name":"jc/parsers/systemctl_lj.py","lines_changed":6},{"name":"jc/parsers/systemctl_ls.py","lines_changed":6},{"name":"jc/parsers/systemctl_luf.py","lines_changed":6},{"name":"jc/parsers/systeminfo.py","lines_changed":6},{"name":"jc/parsers/time.py","lines_changed":6},{"name":"jc/parsers/timedatectl.py","lines_changed":6},{"name":"jc/parsers/tracepath.py","lines_changed":6},{"name":"jc/parsers/traceroute.py","lines_changed":6},{"name":"jc/parsers/ufw.py","lines_changed":6},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":6},{"name":"jc/parsers/uname.py","lines_changed":6},{"name":"jc/parsers/upower.py","lines_changed":6},{"name":"jc/parsers/uptime.py","lines_changed":6},{"name":"jc/parsers/vmstat.py","lines_changed":6},{"name":"jc/parsers/w.py","lines_changed":6},{"name":"jc/parsers/wc.py","lines_changed":6},{"name":"jc/parsers/who.py","lines_changed":6},{"name":"jc/parsers/xml.py","lines_changed":6},{"name":"jc/parsers/yaml.py","lines_changed":6}]},"message":"add 'str' type check on input"},{"commit":"21e69a7cbf62240238f6fb78e874dda6ce2e922a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"],"file_stats":[{"name":".gitignore","lines_changed":1}]},"message":"ignore _config.yml"},{"commit":"603964935b58e02cf0614cf67ffacc6d94755e05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"remove trailing whitespace"},{"commit":"47eb83ae55b9892716fff712bd2be21b6191b552","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"],"file_stats":[{"name":".gitignore","lines_changed":1}]},"message":"add .vscode"},{"commit":"fc0ce6c95923ab124961e695a26c0b68dd0f359f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add streaming parser to custom parsers info"},{"commit":"077a29fb4eedcfccb026498c5c3a64b7b7601363","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":2,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":8},{"name":"jc/parsers/csv_s.py","lines_changed":8}]},"message":"add _jc_meta field info"},{"commit":"8568d0d328706a7a5b1476452e078d8cbe7b7391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":3,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":4},{"name":"jc/parsers/csv_s.py","lines_changed":4},{"name":"man/jc.1","lines_changed":2}]},"message":"fix csv_s documentation"},{"commit":"597d39c28ea0c0fe3b072413e9d91ab5e27b62bd","merge":"b59e38c eb888dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #180 from kellyjonbrazil/dev"},{"commit":"eb888dcbbcf83c9197bd59aab72f65ea6eb622ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["jc/__init__.py","man/jc.1","setup.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"d1b9ac0841b15ee15690c4066453a322618320ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/df.md","docs/parsers/netstat.md","docs/parsers/ping.md","man/jc.1"],"file_stats":[{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"doc update"},{"commit":"89a6d9c5c39b74f1b040f410659bfd7ae1a902d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":5}]},"message":"add key-check to restore previous behavior even with non-df data"},{"commit":"85d983761637129cb85abfb0bbdde7c507061cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add df info"},{"commit":"cd7731484d826d84d835ecd460d746e78cadc5fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":62,"deletions":2,"files":["jc/parsers/df.py","tests/fixtures/generic/df-long-filesystem.json","tests/fixtures/generic/df-long-filesystem.out","tests/test_df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":47},{"name":"tests/fixtures/generic/df-long-filesystem.json","lines_changed":1},{"name":"tests/fixtures/generic/df-long-filesystem.out","lines_changed":4},{"name":"tests/test_df.py","lines_changed":12}]},"message":"fix for cases where the Filesystem data overflows the column length (happens on older versions of df)"},{"commit":"086da16b1743c16a5ccdd102f889fb31f99e3caa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":2}]},"message":"version bump"},{"commit":"20830528f04a5ecbe78420d8008249b089667767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":28,"deletions":0,"files":["CHANGELOG","tests/fixtures/generic/netstat-old.json","tests/fixtures/generic/netstat-old.out","tests/test_netstat.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"tests/fixtures/generic/netstat-old.json","lines_changed":1},{"name":"tests/fixtures/generic/netstat-old.out","lines_changed":14},{"name":"tests/test_netstat.py","lines_changed":12}]},"message":"add test for older netstat version fix"},{"commit":"83371edd8fe3d23dfa92fc707604086522c85ab9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat_linux.py"],"file_stats":[{"name":"jc/parsers/netstat_linux.py","lines_changed":2}]},"message":"add space before inode to compensate for removed dash"},{"commit":"364a81decc16742e3caa070d90b1d605d96fe2c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":2}]},"message":"version bump"},{"commit":"ef09592ad3e5c9a77c1bdebe8f876fc4dde54834","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"update for 1.17.2"},{"commit":"4a86e109ccb254d5195b782f84f3967c96ef726c","merge":"5ba22da 7fa5391","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #179 from shaikustin/ping-alpine-linux"},{"commit":"7fa5391b6613e62689c624041e03f9750c9c7972","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_ping.py"],"file_stats":[{"name":"tests/test_ping.py","lines_changed":2}]},"message":"change alpine ping6 to ping"},{"commit":"9b53ba5714819ff760f2d4546f5d2ee4d521c080","author":"shaik","author_email":"shai.kustin@torq.io","stats":{"files_changed":6,"insertions":45,"deletions":1,"files":["jc/parsers/ping.py",".../fixtures/alpine-linux-3.13/ping-hostname.json","tests/fixtures/alpine-linux-3.13/ping-hostname.out","tests/fixtures/alpine-linux-3.13/ping-ip.json","tests/fixtures/alpine-linux-3.13/ping-ip.out","tests/test_ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":2},{"name":".../fixtures/alpine-linux-3.13/ping-hostname.json","lines_changed":1},{"name":"tests/fixtures/alpine-linux-3.13/ping-hostname.out","lines_changed":9},{"name":"tests/fixtures/alpine-linux-3.13/ping-ip.json","lines_changed":1},{"name":"tests/fixtures/alpine-linux-3.13/ping-ip.out","lines_changed":6},{"name":"tests/test_ping.py","lines_changed":27}]},"message":"support alpine linux ping"},{"commit":"b59e38cfd2c8a7f5868e05d5562557b1c27e5e56","merge":"30cff5f 5ba22da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #176 from kellyjonbrazil/dev"},{"commit":"5ba22dae597b9d154ca0a82f71cfbd8d8a6325db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/csv_s.md","jc/parsers/csv_s.py"],"file_stats":[{"name":"docs/parsers/csv_s.md","lines_changed":2},{"name":"jc/parsers/csv_s.py","lines_changed":2}]},"message":"add JSON lines info"},{"commit":"4232e523acc523e510b4881d2a57a95b88ec8c8b","merge":"bee80b3 30cff5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'master' into dev"},{"commit":"bee80b35d2b8c15e6233f2798e9c02a11e9e1e9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["CHANGELOG","docs/parsers/csv_s.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"docs/parsers/csv_s.md","lines_changed":8},{"name":"man/jc.1","lines_changed":2}]},"message":"update for version bump"},{"commit":"c32395f6950d6294770ee93e8bf4d79c7d275ac3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":2}]},"message":"linting"},{"commit":"735c5e1078cc27b5cba03b8ebbae15aeca6b8fbd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["tests/test_csv_s.py"],"file_stats":[{"name":"tests/test_csv_s.py","lines_changed":5}]},"message":"update comments for ParseError test: https://bugs.python.org/issue45617"},{"commit":"d09c94b292ca3beec92a00f8a51b7259dd30a1e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add python 3.10 testing info"},{"commit":"4d04866f48f72b9ea0d213dc1533729d3b68a503","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":1}]},"message":"add python bug https://bugs.python.org/issue45617 info"},{"commit":"a2d90f4dfcdc2cb00c6c0fa957493c95a21e256b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_csv_s.py"],"file_stats":[{"name":"tests/test_csv_s.py","lines_changed":2}]},"message":"force test"},{"commit":"93a5002c8b530bd6f5f81e5d8595cde1f836ae41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"fix 3.10.0 version number"},{"commit":"23bf5227a4c39ea017e55fc21150331e1af6fdb7","merge":"77c96fa 3f5a1f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"77c96fa2a96148221bde7d2274e0dfb5386a166f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["tests/test_csv_s.py"],"file_stats":[{"name":"tests/test_csv_s.py","lines_changed":3}]},"message":"try tests on python 3.10"},{"commit":"3f5a1f015e9c0807e227b9f7300592e25502e014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"add python 3.10"},{"commit":"b280c4fc18e60a85ab212b09aa5bf3a05a0eceff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":11,"deletions":19,"files":[".../fixtures/generic/csv-insurance-streaming.json","tests/test_csv_s.py"],"file_stats":[{"name":".../fixtures/generic/csv-insurance-streaming.json","lines_changed":1},{"name":"tests/test_csv_s.py","lines_changed":29}]},"message":"add ParseError test to streaming csv parser"},{"commit":"3ab9b43a2eebf535be98c94810ac474bf32ec515","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":14}]},"message":"raise ParseError on newline bug"},{"commit":"46f568414a5c8d2f135486e86d0ada48cfcefeb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":96,"deletions":89,"files":["tests/test_ls_s.py","tests/test_ping_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"tests/test_ls_s.py","lines_changed":26},{"name":"tests/test_ping_s.py","lines_changed":138},{"name":"tests/test_vmstat_s.py","lines_changed":21}]},"message":"change streaming parser test names"},{"commit":"cba2fd299fff09a551b780e064a6e22bdf7e539a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":75,"deletions":61,"files":[".../generic/csv-10k-sales-records-streaming.json","tests/fixtures/generic/csv-deniro-streaming.json","tests/fixtures/generic/csv-example-streaming.json","tests/fixtures/generic/csv-flyrna-streaming.json","tests/fixtures/generic/csv-flyrna2-streaming.json",".../fixtures/generic/csv-homes-pipe-streaming.json","tests/fixtures/generic/csv-homes-streaming.json",".../fixtures/generic/csv-insurance-streaming.json","tests/test_csv_s.py"],"file_stats":[{"name":".../generic/csv-10k-sales-records-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-deniro-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-example-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna2-streaming.json","lines_changed":1},{"name":".../fixtures/generic/csv-homes-pipe-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-homes-streaming.json","lines_changed":1},{"name":".../fixtures/generic/csv-insurance-streaming.json","lines_changed":1},{"name":"tests/test_csv_s.py","lines_changed":128}]},"message":"add tests"},{"commit":"1e6e44f656f1bbb277eb38fb485f7b48e3b9e40b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":5}]},"message":"fix for piping data with non-platform newlines (e.g. windows csv files on unix)"},{"commit":"acac0399946d9781193e9350dd7109f1dd3999fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":149,"deletions":0,"files":["tests/fixtures/generic/csv-biostats-streaming.json","tests/fixtures/generic/csv-cities-streaming.json","tests/test_csv_s.py"],"file_stats":[{"name":"tests/fixtures/generic/csv-biostats-streaming.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-cities-streaming.json","lines_changed":1},{"name":"tests/test_csv_s.py","lines_changed":147}]},"message":"working tests"},{"commit":"50a3b340164b3139f04f67a2bee16e5343c8a2da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":8,"files":["jc/parsers/csv_s.py"],"file_stats":[{"name":"jc/parsers/csv_s.py","lines_changed":13}]},"message":"optimizations and use iter() so we can exhaust data coming from list objects"},{"commit":"b45396070cf28fa36ecb44acd7be3e3bb81a712d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_vmstat_s.py"],"file_stats":[{"name":"tests/test_vmstat_s.py","lines_changed":2}]},"message":"update comment"},{"commit":"218b9aec8ac397e26e6cd4ff407f3d10ef88ea9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":87,"deletions":48,"files":["README.md","docs/parsers/csv_s.md","jc/parsers/csv_s.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/csv_s.md","lines_changed":75},{"name":"jc/parsers/csv_s.py","lines_changed":52},{"name":"man/jc.1","lines_changed":7}]},"message":"doc update for streaming CSV parser"},{"commit":"2b887debc647bd533040e392465967d12869cb02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":10172,"deletions":1,"files":["CHANGELOG","jc/cli.py","jc/parsers/csv_s.py","tests/fixtures/generic/csv-10k-sales-records.csv"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/csv_s.py","lines_changed":168},{"name":"tests/fixtures/generic/csv-10k-sales-records.csv","lines_changed":10001}]},"message":"add csv streaming parser"},{"commit":"0313e3f8ca0e22e1575192d765d5afedf48e94df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":6,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":15}]},"message":"linting"},{"commit":"1669e6e20c3af3d28968558b76d0901a56775ac0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":28,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":51}]},"message":"linting"},{"commit":"ef6de75dda90c7221d53e0e0a942f0cac2247354","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":4}]},"message":"add vmstat timestamp tests to utils"},{"commit":"a6bcec425a3f44ba3c7cd06b5ebaf522b66df109","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":2}]},"message":"comment update"},{"commit":"596ad9a64d002ced212b08512126e52707fe73d2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":2}]},"message":"update comment"},{"commit":"7a91c93319f75c37ba6bf268d8270947f0bf8b22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":122,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":122}]},"message":"add lsusb"},{"commit":"b5f7b35f89197879a9f13bd8fa5d2a0c77cc059a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":2}]},"message":"comment update"},{"commit":"2f47fb7f14c4ff0e1c835897d94ee81d14590aba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["tests/test_uname.py"],"file_stats":[{"name":"tests/test_uname.py","lines_changed":5}]},"message":"fix ParseError tests"},{"commit":"1b214c403657a50689f2a04892ce836dea669a1d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":30,"deletions":0,"files":["jc/parsers/lsusb.py","tests/fixtures/generic/lsusb-t.out","tests/test_lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":5},{"name":"tests/fixtures/generic/lsusb-t.out","lines_changed":15},{"name":"tests/test_lsusb.py","lines_changed":10}]},"message":"raise ParseError if -t option is detected. add test"},{"commit":"8f94f8acc6bb53bbb19ba150551c7df2183a8863","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":384,"deletions":3,"files":["README.md","docs/parsers/file.md","docs/parsers/lsusb.md","docs/parsers/uname.md","man/jc.1","tests/fixtures/centos-7.7/lsusb-v-single.json","tests/fixtures/centos-7.7/lsusb-v.json","tests/fixtures/centos-7.7/lsusb.json","tests/fixtures/generic/lsusb-test-attributes.json","tests/fixtures/generic/lsusb-test-attributes2.json","tests/test_lsusb.py"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/file.md","lines_changed":2},{"name":"docs/parsers/lsusb.md","lines_changed":288},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"man/jc.1","lines_changed":7},{"name":"tests/fixtures/centos-7.7/lsusb-v-single.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsusb-v.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsusb.json","lines_changed":1},{"name":"tests/fixtures/generic/lsusb-test-attributes.json","lines_changed":1},{"name":"tests/fixtures/generic/lsusb-test-attributes2.json","lines_changed":1},{"name":"tests/test_lsusb.py","lines_changed":82}]},"message":"add tests and update docs"},{"commit":"3a2a69cfa55e2f40d7536d923170a5cfc986998e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":4}]},"message":"formatting"},{"commit":"f599c659881248b79c6dbc86d85a61311c9d3434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":464,"deletions":0,"files":["tests/fixtures/generic/lsusb-test-attributes.out","tests/fixtures/generic/lsusb-test-attributes2.out"],"file_stats":[{"name":"tests/fixtures/generic/lsusb-test-attributes.out","lines_changed":116},{"name":"tests/fixtures/generic/lsusb-test-attributes2.out","lines_changed":348}]},"message":"add stress test examples"},{"commit":"ad12849fd9fc2177afb30740acc63cf284dc394b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":138,"deletions":26,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":164}]},"message":"update docs example and"},{"commit":"f36b3789e8df6673207d6c2d3d0796acfdfe011d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":4}]},"message":"formatting"},{"commit":"6d18c0ba61cd188dbff736f1be47b7362c841687","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":47,"deletions":47,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":94}]},"message":"change variable name last_attribute and last_attr to last_item"},{"commit":"17097abec9567a58b5a5f7bbed11ecfd69cbd28c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":6,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":8}]},"message":"formatting"},{"commit":"b7ddd3b285f205211394edc70b611171cf72a4c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":22,"deletions":22,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":44}]},"message":"change variable names"},{"commit":"75b23f62c9d7b33907af92964d1a6234332fbc78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":35,"deletions":7,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":42}]},"message":"working configuration_descriptor and device_descriptor attributes"},{"commit":"f88967b2a59d79e053554d1e141f71e9d2d87456","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":126,"deletions":21,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":147}]},"message":"add attribute lists up to interface_association"},{"commit":"ba2846664b35b2e94aa905431c55c029b24a64e3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":22,"deletions":2,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":24}]},"message":"edpoint_descriptors attributes working"},{"commit":"10dba37ca2624e05eff246ef49df8ebd3f275d86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":28,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":29}]},"message":"hub_descriptor attributes working"},{"commit":"0e6f938514965503f1d86d56c047f9f8fc03ac65","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":36,"deletions":45,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":81}]},"message":"working hub_port_status section"},{"commit":"159d87c1126f4d79d5e34837bc2c353a5445803b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":18,"deletions":7,"files":["jc/parsers/uname.py","tests/fixtures/centos-7.7/uname.out","tests/test_uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":11},{"name":"tests/fixtures/centos-7.7/uname.out","lines_changed":1},{"name":"tests/test_uname.py","lines_changed":13}]},"message":"add length guard and test for uname with no -a on linux"},{"commit":"9e7b1621cf232e9859bdf018737e536820f380a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":18,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":36}]},"message":"device_status working"},{"commit":"2057817ef8fec85b2a978b682e7fe8bc16def828","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":89,"deletions":0,"files":["tests/fixtures/debian10/uname-a.json","tests/fixtures/debian10/uname-a.out","tests/fixtures/freebsd12/uname-a.json","tests/fixtures/freebsd12/uname-a.out","tests/fixtures/freebsd12/uname-a2.json","tests/fixtures/freebsd12/uname-a2.out","tests/fixtures/generic/uname-a-different-proc.json","tests/fixtures/generic/uname-a-different-proc.out","tests/fixtures/generic/uname-a.json","tests/fixtures/generic/uname-a.out","tests/test_uname.py"],"file_stats":[{"name":"tests/fixtures/debian10/uname-a.json","lines_changed":10},{"name":"tests/fixtures/debian10/uname-a.out","lines_changed":2},{"name":"tests/fixtures/freebsd12/uname-a.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/uname-a.out","lines_changed":2},{"name":"tests/fixtures/freebsd12/uname-a2.json","lines_changed":7},{"name":"tests/fixtures/freebsd12/uname-a2.out","lines_changed":2},{"name":"tests/fixtures/generic/uname-a-different-proc.json","lines_changed":1},{"name":"tests/fixtures/generic/uname-a-different-proc.out","lines_changed":1},{"name":"tests/fixtures/generic/uname-a.json","lines_changed":1},{"name":"tests/fixtures/generic/uname-a.out","lines_changed":2},{"name":"tests/test_uname.py","lines_changed":60}]},"message":"add uname tests"},{"commit":"a1eabad2d37bb0d0e9407edf7305e223eba67da2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":6}]},"message":"add comments"},{"commit":"92bf2b1ca2a172d3977d6e3c36b5ca1a8c2bab63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":20,"files":["CHANGELOG","jc/parsers/uname.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":26}]},"message":"simplify fixup logic for uname"},{"commit":"2b2123a4ba9b77d2089d367fe85dcb5d2857a295","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","jc/parsers/uname.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/parsers/uname.py","lines_changed":4}]},"message":"add FreeBSD support"},{"commit":"908b2f9200ddcce4beb531a3c90908786b6a5b02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"add items"},{"commit":"deff0c7bfdf942b8d7e7bd140219e08bf80a50cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":5,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":6}]},"message":"remove print debug"},{"commit":"7cd01efa64029775042a2c145997ce30ef6b4f6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":25,"deletions":1,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":26}]},"message":"fixup for cases where the 'process' and/or 'machine' fields are blank on linux"},{"commit":"2dbe56456bbea2bdfce7eacbf8b9f10a1b249f55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":49,"deletions":39,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":88}]},"message":"add nested_dict. start work on hub_port_status and device_status"},{"commit":"6078a411ef612be8bad012aa404f34ebd74a1fd7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":79,"deletions":4,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":83}]},"message":"add initial schema doc"},{"commit":"4a3656562f161a51f5cb6f0e9ccd271859b78d62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":6}]},"message":"del null keys"},{"commit":"ba75989a24839907723ed7c3d7a497473d489a34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":10}]},"message":"update comments"},{"commit":"9e9e2c362894f0072ab839565829881d750c8912","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":4}]},"message":"move state instantiation before has_data test"},{"commit":"9a2a8c6b61a46a9bfb5a4492b86774a4a78672ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":52,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":72}]},"message":"shorten set_sections"},{"commit":"dae42ef1619441637672d634f9e5d7ab26115f09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":1,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":19}]},"message":"add hub_port_status and device_status"},{"commit":"931f2cab78bda180443535c04b532d04c6e88dd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":11,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":25}]},"message":"add hub_descriptor"},{"commit":"72b061bed4453686d264ccf8977cba6c2a4794ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":32,"deletions":8,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":40}]},"message":"add endpoint_descriptors"},{"commit":"29a7c73990d9620b15a4010d17fc9a9a859f44b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":16}]},"message":"add hid_device_descriptor and report_descriptors"},{"commit":"2d1d68e3007f76d4c34ac07ae822935ab6021e79","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":87,"deletions":88,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":175}]},"message":"simplify populate_lists. Add CDC lists"},{"commit":"c5c1e170d1f502de5c76e9e481a23b26ffcaf237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":111,"deletions":76,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":187}]},"message":"interface descriptors working"},{"commit":"9c1bb66452838e704ef2277f313bb51a42dc03b9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":18}]},"message":"fix remove _state field during schema_populate"},{"commit":"a4f3306bae90fbc807fdd9ff2ce71e25d36a663f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":69,"deletions":28,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":97}]},"message":"initial schema build. need to figure out why deleting _state from output_line causes exceptions"},{"commit":"1bc638b6ee7a820406ba4b84d3408f7cd4fe779d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":36,"deletions":32,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":68}]},"message":"add bus_list and add all device_list data to the list"},{"commit":"9ad0cd9dae8822235c37159541ce72471eb4263e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":116,"deletions":211,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":327}]},"message":"now storing state within the objects to make building the schema (later) easier."},{"commit":"6d4a4691276d8659253b2ac8f8bdbd71a1fece7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":356,"deletions":333,"files":["jc/parsers/lsusb.py"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":689}]},"message":"use class for state"},{"commit":"ed6997e3ff2e575a6d4daa7d7a2cbe7dddacdd4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":170,"deletions":34,"files":["jc/parsers/lsusb.py","tests/fixtures/centos-7.7/lsusb-v-single.out"],"file_stats":[{"name":"jc/parsers/lsusb.py","lines_changed":104},{"name":"tests/fixtures/centos-7.7/lsusb-v-single.out","lines_changed":100}]},"message":"add interface_association section"},{"commit":"eb788fca6e25eea1fa8a43b22360c852ecf5af35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":919,"deletions":0,"files":["jc/cli.py","jc/parsers/lsusb.py","tests/fixtures/centos-7.7/lsusb-v.out","tests/fixtures/centos-7.7/lsusb.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/lsusb.py","lines_changed":404},{"name":"tests/fixtures/centos-7.7/lsusb-v.out","lines_changed":509},{"name":"tests/fixtures/centos-7.7/lsusb.out","lines_changed":5}]},"message":"somewhat working lsusb parser. needs a lot more TLC"},{"commit":"9186f5f37739012b8c04c776310a20ef55b1469f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":99,"deletions":4,"files":["CHANGELOG","jc/__init__.py","jc/parsers/file.py","setup.py","tests/fixtures/osx-10.14.6/file3.json","tests/fixtures/osx-10.14.6/file3.out","tests/test_file.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":11},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/file3.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/file3.out","lines_changed":72},{"name":"tests/test_file.py","lines_changed":12}]},"message":"fix file parser for gzip cases (has ': ' in the description, which is the delimiter)"},{"commit":"30cff5f28140a5b20a617c8145c13e43b7b6685b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":17,"deletions":3,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":4},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":4},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"add note that the streaming parser outputs JSON Lines"},{"commit":"b724e0969a0d6b22bed0c77eb8d629381179ea3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2}]},"message":"-qq instead of -q"},{"commit":"a62c49e8715873b068a96da5021ea24a783acd6b","merge":"77dcbc5 9b160f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #172 from kellyjonbrazil/master"},{"commit":"9b160f6279bbbf0c15413c98922eef137ba2f3f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]},"message":"link update"},{"commit":"338a4e2612f70bb3e2af31f61a7db75f647293fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2}]},"message":"formatting"},{"commit":"0140688750be61dd752059ee66734ab1c7a8f30e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":8,"deletions":4,"files":["README.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"link updates"},{"commit":"73e5ea98c1ca2b9299085e3832791162eca3b9ff","merge":"528aac7 77dcbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #170 from kellyjonbrazil/dev"},{"commit":"77dcbc544da271edab5de5ad209117e98c846f9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":2,"deletions":3,"files":["CHANGELOG","jc/__init__.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"final doc update"},{"commit":"c7bcb0947ae32acc9cdba7a6975d2f2557f10a39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":4}]},"message":"indent subsequent error and warning lines"},{"commit":"5cd3f7f71d38b560a88dd6057e9c7a94991a3d71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":6}]},"message":"Add example to raise ParseError if there is no output data to yield"},{"commit":"5044388ab2e8d7d8b427fd51b0ab875611bd127f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":3,"files":["jc/parsers/vmstat_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":6},{"name":"tests/test_vmstat_s.py","lines_changed":3}]},"message":"raise if line data is unrecognized"},{"commit":"ee075db59819d80e4dcb60ddbd9cfe2fd529dfe9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":5,"deletions":7,"files":["jc/cli.py","jc/parsers/foo_s.py","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":5},{"name":"jc/parsers/vmstat_s.py","lines_changed":3}]},"message":"linting"},{"commit":"9904e0be61e7c81b907bf3770f111346daeff481","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":2},{"name":"jc/utils.py","lines_changed":2}]},"message":"formatting"},{"commit":"31b69b3242eeca2c02f87c31d58193dd3f06fe49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":6},{"name":"jc/utils.py","lines_changed":6}]},"message":"formatting"},{"commit":"e6a80fea3228122dd84e17672c835c0460ad1342","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":7,"files":["docs/utils.md","jc/utils.py","man/jc.1"],"file_stats":[{"name":"docs/utils.md","lines_changed":6},{"name":"jc/utils.py","lines_changed":6},{"name":"man/jc.1","lines_changed":2}]},"message":"formatting"},{"commit":"d6aec00e038d1ecfe43c13a6909d50630455b372","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":27,"deletions":1,"files":["tests/fixtures/ubuntu-18.04/vmstat-1-long-streaming.json","tests/fixtures/ubuntu-18.04/vmstat-1-long.json","tests/test_vmstat.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"tests/fixtures/ubuntu-18.04/vmstat-1-long-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/vmstat-1-long.json","lines_changed":1},{"name":"tests/test_vmstat.py","lines_changed":12},{"name":"tests/test_vmstat_s.py","lines_changed":14}]},"message":"add vmstat-1-long tests"},{"commit":"4aa7d81e11ea7fcfbb5c9d74337cde617b1a0d5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":50,"deletions":2,"files":["jc/parsers/vmstat.py","jc/parsers/vmstat_s.py","tests/fixtures/ubuntu-18.04/vmstat-1-long.out"],"file_stats":[{"name":"jc/parsers/vmstat.py","lines_changed":3},{"name":"jc/parsers/vmstat_s.py","lines_changed":7},{"name":"tests/fixtures/ubuntu-18.04/vmstat-1-long.out","lines_changed":42}]},"message":"ignore re-printed header rows in output"},{"commit":"48cdabc3b0862d6291e1ec59ab385e0e146c31eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":16,"deletions":0,"files":["docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/vmstat.md","lines_changed":4},{"name":"docs/parsers/vmstat_s.md","lines_changed":4},{"name":"jc/parsers/vmstat.py","lines_changed":4},{"name":"jc/parsers/vmstat_s.py","lines_changed":4}]},"message":"document timestamps"},{"commit":"a1791ef5479749692c79bbe98fc7687d70cd6cda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2}]},"message":"linting"},{"commit":"7bc87f6c2d4cfcfa656a1c1b8973a4c0414c85d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":8,"deletions":8,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/parsers/vmstat_s.md","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"jc/parsers/vmstat_s.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"change _meta to _jc_meta"},{"commit":"bbed9e274b8252ba0518140fe7fc97029310771f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":154,"deletions":159,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":313}]},"message":"linting"},{"commit":"486282b9856f5e56cf43ee1399d8e7cb78353b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":10}]},"message":"linting"},{"commit":"a4d45b653f794033978940da14910f5d607a8254","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["jc/parsers/foo_s.py","jc/parsers/vmstat.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/vmstat.py","lines_changed":8}]},"message":"linting"},{"commit":"22e151b01c0f97c141d912c9646e46df0320d622","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":56,"deletions":60,"files":["jc/cli.py","jc/utils.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":88},{"name":"jc/utils.py","lines_changed":28}]},"message":"linting"},{"commit":"7a4ebcd1ecdb4929aae70e44b4f9b6b5ab52b393","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":4}]},"message":"language hints"},{"commit":"651cbfe02fbb354c4caf8e0d022655642e7caed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"add streaming foo parser"},{"commit":"8c3e764516e1c28961b09380b638a57ce98b1261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add streaming parser to contrib guidelines"},{"commit":"b4e75da7e3f23502723ce8b2a7261b376f296864","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"templates/readme_template","lines_changed":4}]},"message":"formatting"},{"commit":"37223f086cabc8db5962415bd161fed151dafb9d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":5},{"name":"templates/readme_template","lines_changed":5}]},"message":"formatting"},{"commit":"a404033735c2c8075a8e08194197eae59db70afd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add error and warning message wrap info"},{"commit":"b7433ed085c0ba22ea0d49330871a651a8d83fb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":80,"deletions":41,"files":["docs/utils.md","jc/cli.py","jc/parsers/file.py","jc/parsers/ls.py","jc/parsers/traceroute.py","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":16},{"name":"jc/cli.py","lines_changed":39},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":60}]},"message":"auto wrap warning and error messages"},{"commit":"224d3d65ada4216e28e142d411b0c2c3358517b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"Add exception class name to error message"},{"commit":"a349fb0bdabaf74503831f22c4efbd02254f809d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":10,"deletions":8,"files":["README.md","docs/utils.md","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"docs/utils.md","lines_changed":6},{"name":"man/jc.1","lines_changed":6}]},"message":"change _meta to _jc_meta"},{"commit":"e7ddcfb83fb295034db44ade407476ff3a962cd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":14,"deletions":12,"files":["jc/utils.py","templates/manpage_template","templates/readme_template",".../centos-7.7/ping-ip-O-streaming-ignore-exceptions.json","tests/test_ping_s.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":10},{"name":"templates/manpage_template","lines_changed":6},{"name":"templates/readme_template","lines_changed":6},{"name":".../centos-7.7/ping-ip-O-streaming-ignore-exceptions.json","lines_changed":2},{"name":"tests/test_ping_s.py","lines_changed":2}]},"message":"change _meta to _jc_meta"},{"commit":"abd20dfe3662f65373ac582c70aa740e53b52f68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"templates/manpage_template","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting"},{"commit":"dc1fd3ef1be41aee349b159059f1febff76f6caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":12,"deletions":12,"files":["README.md","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"man/jc.1","lines_changed":6},{"name":"templates/manpage_template","lines_changed":6},{"name":"templates/readme_template","lines_changed":6}]},"message":"fix -qq docs"},{"commit":"98a7686db46fbd3ed98382867976249f307d0015","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":18,"insertions":160,"deletions":152,"files":["README.md","docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/parsers/vmstat_s.md","docs/utils.md","jc/cli.py","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/parsers/vmstat_s.py","jc/utils.py","man/jc.1","templates/manpage_template","templates/readme_template","... => ping-ip-O-streaming-ignore-exceptions.json}","tests/test_ls_s.py","tests/test_ping_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/ls_s.md","lines_changed":9},{"name":"docs/parsers/ping_s.md","lines_changed":9},{"name":"docs/parsers/vmstat_s.md","lines_changed":9},{"name":"docs/utils.md","lines_changed":6},{"name":"jc/cli.py","lines_changed":23},{"name":"jc/parsers/foo_s.py","lines_changed":13},{"name":"jc/parsers/ls_s.py","lines_changed":13},{"name":"jc/parsers/ping_s.py","lines_changed":13},{"name":"jc/parsers/vmstat_s.py","lines_changed":13},{"name":"jc/utils.py","lines_changed":12},{"name":"man/jc.1","lines_changed":4},{"name":"templates/manpage_template","lines_changed":4},{"name":"templates/readme_template","lines_changed":2},{"name":"... => ping-ip-O-streaming-ignore-exceptions.json}","lines_changed":0},{"name":"tests/test_ls_s.py","lines_changed":24},{"name":"tests/test_ping_s.py","lines_changed":140},{"name":"tests/test_vmstat_s.py","lines_changed":16}]},"message":"use -qq to ignore streaming exceptions"},{"commit":"9c6c6c4330fc68115be012de254161f36e3a8328","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add next() info"},{"commit":"f9be5651daa891e06ad0acd8980ffc0fe51fd29d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":6,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":5},{"name":"templates/readme_template","lines_changed":5}]},"message":"add language hints"},{"commit":"df9835a3e62bb2b3b6ec8b55f06a25a00a799d92","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting"},{"commit":"92363be2dd633bdd3c2dd07c72ebd281d2cb4565","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"templates/readme_template","lines_changed":3}]},"message":"fix streaming python module example"},{"commit":"31b62030156f9c826fe5c7d127e9dd0ace582dd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"templates/readme_template","lines_changed":6}]},"message":"formatting"},{"commit":"18805858d685d456f9a38540bbaedbaa1a411546","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":4},{"name":"templates/manpage_template","lines_changed":2}]},"message":"formatting"},{"commit":"e676f0e20fb6e96a536c4d182b0d287cdc1ad0f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":36,"deletions":6,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":21},{"name":"templates/readme_template","lines_changed":21}]},"message":"add streaming parser info for python module use"},{"commit":"20652edefaa7705b8ba756bae3944ff362a295a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":7}]},"message":"update changelog"},{"commit":"98c29d07478093e78f53ec633f2dd08cafc3e3ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":120,"deletions":0,"files":["tests/fixtures/centos-7.7/vmstat-a.json","tests/fixtures/centos-7.7/vmstat-at-5-10.json","tests/fixtures/centos-7.7/vmstat-awt.json","tests/fixtures/centos-7.7/vmstat-d.json","tests/fixtures/centos-7.7/vmstat-dt.json","tests/fixtures/centos-7.7/vmstat-w.json","tests/fixtures/centos-7.7/vmstat.json","tests/test_vmstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/vmstat-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-at-5-10.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-awt.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-d.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-dt.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-w.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat.json","lines_changed":1},{"name":"tests/test_vmstat.py","lines_changed":113}]},"message":"add vmstat tests"},{"commit":"41a6311f6b3ed2cc94919d042aed51c46cdf3e2f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":132,"deletions":1,"files":["tests/fixtures/centos-7.7/vmstat-a-streaming.json",".../centos-7.7/vmstat-at-5-10-streaming.json",".../fixtures/centos-7.7/vmstat-awt-streaming.json","tests/fixtures/centos-7.7/vmstat-d-streaming.json","tests/fixtures/centos-7.7/vmstat-dt-streaming.json","tests/fixtures/centos-7.7/vmstat-streaming.json","tests/fixtures/centos-7.7/vmstat-w-streaming.json","tests/test_ping_s.py","tests/test_vmstat_s.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/vmstat-a-streaming.json","lines_changed":1},{"name":".../centos-7.7/vmstat-at-5-10-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/vmstat-awt-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-d-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-dt-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/vmstat-w-streaming.json","lines_changed":1},{"name":"tests/test_ping_s.py","lines_changed":2},{"name":"tests/test_vmstat_s.py","lines_changed":124}]},"message":"add streaming parser tests"},{"commit":"978760ec57e04e3ec347c8764bfad015b6dddbff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"add exception class name to error string"},{"commit":"d410425537817964ceb7b61e0fdff6c03fdf8766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":136,"deletions":136,"files":["docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat.py","jc/parsers/vmstat_s.py"],"file_stats":[{"name":"docs/parsers/vmstat.md","lines_changed":68},{"name":"docs/parsers/vmstat_s.md","lines_changed":68},{"name":"jc/parsers/vmstat.py","lines_changed":68},{"name":"jc/parsers/vmstat_s.py","lines_changed":68}]},"message":"replace single quotes with double quotes in doc"},{"commit":"6b7430329cbe1bfb95b47bcfe031906641c127e1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":269,"deletions":1,"files":["README.md","docs/parsers/vmstat.md","docs/parsers/vmstat_s.md","jc/parsers/vmstat_s.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/vmstat.md","lines_changed":145},{"name":"docs/parsers/vmstat_s.md","lines_changed":105},{"name":"jc/parsers/vmstat_s.py","lines_changed":6},{"name":"man/jc.1","lines_changed":12}]},"message":"doc update"},{"commit":"40fe0d4a6081a1233bf5c3eb51a01da1f12bc4dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":141,"deletions":22,"files":["jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":163}]},"message":"working parser"},{"commit":"365c5354a0349e470558d15243217a064e73da38","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/vmstat.py"],"file_stats":[{"name":"jc/parsers/vmstat.py","lines_changed":1}]},"message":"remove debug print statement"},{"commit":"b246a05cbb4c1c564f81b3e72cecb62edbe6ced6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"fix vmstat-s name"},{"commit":"9e5a7a4abb8668d043625951a05eb5733cbbd56f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":37,"deletions":0,"files":["tests/fixtures/centos-7.7/vmstat-a.out","tests/fixtures/centos-7.7/vmstat-at-5-10.out","tests/fixtures/centos-7.7/vmstat-awt.out","tests/fixtures/centos-7.7/vmstat-d.out","tests/fixtures/centos-7.7/vmstat-dt.out","tests/fixtures/centos-7.7/vmstat-w.out","tests/fixtures/centos-7.7/vmstat.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/vmstat-a.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/vmstat-at-5-10.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/vmstat-awt.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/vmstat-d.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/vmstat-dt.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/vmstat-w.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/vmstat.out","lines_changed":4}]},"message":"add vmstat sample output"},{"commit":"f266acbccafc040c375723147b8e5d7fddb1e697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":106,"deletions":14,"files":["jc/parsers/vmstat.py"],"file_stats":[{"name":"jc/parsers/vmstat.py","lines_changed":120}]},"message":"add processing logic"},{"commit":"4e3b471f1801f1b9006b18cae2a3d816f361262e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"add format for vmstat"},{"commit":"5e28736c2e0c951e71e6531e03a9619279d95d3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add vmstat and vmstat_s"},{"commit":"a91913a3b517ea0dbb25d6e4cc92850eb2fde5ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":106,"deletions":0,"files":["jc/parsers/vmstat_s.py"],"file_stats":[{"name":"jc/parsers/vmstat_s.py","lines_changed":106}]},"message":"streaming parser template"},{"commit":"90c64f0ae0d97d025adee40970d89baca79ee4ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":182,"deletions":0,"files":["jc/parsers/vmstat.py"],"file_stats":[{"name":"jc/parsers/vmstat.py","lines_changed":182}]},"message":"initial working parser"},{"commit":"7cc642ed1a476abda709ac9b79900a1de12e1ef7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":4}]},"message":"formatting"},{"commit":"809f64d35a92bb3d7380fa9d78ac1421a10b81fc","merge":"ff0fda4 a6f859a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #169 from kellyjonbrazil/streaming"},{"commit":"a6f859a55edae50fcc185948736218404cfaa929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":18,"insertions":168,"deletions":153,"files":[".../osx-10.14.6/ping-hostname-p-streaming.json",".../osx-10.14.6/ping-hostname-s-streaming.json",".../osx-10.14.6/ping-hostname-streaming.json",".../osx-10.14.6/ping-ip-dup-streaming.json",".../fixtures/osx-10.14.6/ping-ip-p-streaming.json",".../fixtures/osx-10.14.6/ping-ip-s-streaming.json","tests/fixtures/osx-10.14.6/ping-ip-streaming.json",".../osx-10.14.6/ping-ip-unreachable-streaming.json",".../osx-10.14.6/ping6-hostname-p-streaming.json",".../osx-10.14.6/ping6-hostname-s-streaming.json",".../osx-10.14.6/ping6-hostname-streaming.json",".../osx-10.14.6/ping6-ip-dup-streaming.json",".../fixtures/osx-10.14.6/ping6-ip-p-streaming.json",".../fixtures/osx-10.14.6/ping6-ip-s-streaming.json","tests/fixtures/osx-10.14.6/ping6-ip-streaming.json","tests/fixtures/pi/ping-ip-O-D-streaming.json","tests/fixtures/pi/ping-ip-O-streaming.json","tests/test_ping_s.py"],"file_stats":[{"name":".../osx-10.14.6/ping-hostname-p-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping-hostname-s-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping-hostname-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping-ip-dup-streaming.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/ping-ip-p-streaming.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/ping-ip-s-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping-ip-unreachable-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping6-hostname-p-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping6-hostname-s-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping6-hostname-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ping6-ip-dup-streaming.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/ping6-ip-p-streaming.json","lines_changed":1},{"name":".../fixtures/osx-10.14.6/ping6-ip-s-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-streaming.json","lines_changed":1},{"name":"tests/fixtures/pi/ping-ip-O-D-streaming.json","lines_changed":1},{"name":"tests/fixtures/pi/ping-ip-O-streaming.json","lines_changed":1},{"name":"tests/test_ping_s.py","lines_changed":304}]},"message":"add final ping_s tests"},{"commit":"39ef88078f43708e470d3c1b2fd95e76b5cbeb08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":1}]},"message":"add destination_ip to error lines"},{"commit":"aeea5e8d2eab2fef3e14637f512aed7b117c4a3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/test_ls_s.py"],"file_stats":[{"name":"tests/test_ls_s.py","lines_changed":2}]},"message":"formatting"},{"commit":"1a0700bff4bdebbd9f1f92f2fc7a56c4d5ed6925","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":31,"insertions":240,"deletions":213,"files":[".../fedora32/ping-hostname-O-D-p-s-streaming.json",".../fedora32/ping-hostname-O-p-streaming.json",".../fedora32/ping-hostname-O-streaming.json","tests/fixtures/fedora32/ping-ip-O-D-streaming.json","tests/fixtures/fedora32/ping-ip-O-streaming.json",".../fedora32/ping6-hostname-O-D-p-s-streaming.json",".../fedora32/ping6-hostname-O-p-streaming.json",".../fedora32/ping6-ip-O-D-p-streaming.json",".../fixtures/fedora32/ping6-ip-O-p-streaming.json",".../freebsd12/ping-hostname-p-streaming.json",".../freebsd12/ping-hostname-s-streaming.json",".../freebsd12/ping-hostname-streaming.json","tests/fixtures/freebsd12/ping-ip-p-streaming.json","tests/fixtures/freebsd12/ping-ip-s-streaming.json","tests/fixtures/freebsd12/ping-ip-streaming.json",".../freebsd12/ping6-hostname-p-streaming.json",".../freebsd12/ping6-hostname-s-streaming.json",".../freebsd12/ping6-hostname-streaming.json","tests/fixtures/freebsd12/ping6-ip-p-streaming.json","tests/fixtures/freebsd12/ping6-ip-s-streaming.json","tests/fixtures/freebsd12/ping6-ip-streaming.json",".../ping-hostname-O-D-p-s-streaming.json",".../ubuntu-18.04/ping-hostname-O-p-streaming.json",".../ubuntu-18.04/ping-hostname-O-streaming.json",".../ubuntu-18.04/ping-ip-O-D-streaming.json",".../fixtures/ubuntu-18.04/ping-ip-O-streaming.json",".../ping6-hostname-O-D-p-s-streaming.json",".../ubuntu-18.04/ping6-hostname-O-p-streaming.json",".../ubuntu-18.04/ping6-ip-O-D-p-streaming.json",".../ubuntu-18.04/ping6-ip-O-p-streaming.json","tests/test_ping_s.py"],"file_stats":[{"name":".../fedora32/ping-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../fedora32/ping-hostname-O-p-streaming.json","lines_changed":1},{"name":".../fedora32/ping-hostname-O-streaming.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-ip-O-D-streaming.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-ip-O-streaming.json","lines_changed":1},{"name":".../fedora32/ping6-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../fedora32/ping6-hostname-O-p-streaming.json","lines_changed":1},{"name":".../fedora32/ping6-ip-O-D-p-streaming.json","lines_changed":1},{"name":".../fixtures/fedora32/ping6-ip-O-p-streaming.json","lines_changed":1},{"name":".../freebsd12/ping-hostname-p-streaming.json","lines_changed":1},{"name":".../freebsd12/ping-hostname-s-streaming.json","lines_changed":1},{"name":".../freebsd12/ping-hostname-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-p-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-s-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-streaming.json","lines_changed":1},{"name":".../freebsd12/ping6-hostname-p-streaming.json","lines_changed":1},{"name":".../freebsd12/ping6-hostname-s-streaming.json","lines_changed":1},{"name":".../freebsd12/ping6-hostname-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-p-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-s-streaming.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-streaming.json","lines_changed":1},{"name":".../ping-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping-hostname-O-p-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping-hostname-O-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping-ip-O-D-streaming.json","lines_changed":1},{"name":".../fixtures/ubuntu-18.04/ping-ip-O-streaming.json","lines_changed":1},{"name":".../ping6-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-hostname-O-p-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-ip-O-D-p-streaming.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-ip-O-p-streaming.json","lines_changed":1},{"name":"tests/test_ping_s.py","lines_changed":423}]},"message":"add more ping-s tests"},{"commit":"b5fa6d068f240671eb948b055cd4f7bf127e0ec0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":25,"deletions":5,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":6},{"name":"docs/parsers/ping_s.md","lines_changed":6},{"name":"jc/parsers/foo_s.py","lines_changed":6},{"name":"jc/parsers/ls_s.py","lines_changed":6},{"name":"jc/parsers/ping_s.py","lines_changed":6}]},"message":"update docs"},{"commit":"1baec0b420feff068f2dc1e35499f78aa7d0a6e0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":815,"deletions":0,"files":[".../ping-hostname-O-D-p-s-streaming.json",".../centos-7.7/ping-hostname-O-p-streaming.json",".../centos-7.7/ping-hostname-O-streaming.json",".../fixtures/centos-7.7/ping-ip-O-D-streaming.json",".../centos-7.7/ping-ip-O-streaming-quiet.json","tests/fixtures/centos-7.7/ping-ip-O-streaming.json",".../fixtures/centos-7.7/ping-ip-dup-streaming.json",".../ping6-hostname-O-D-p-s-streaming.json",".../centos-7.7/ping6-hostname-O-p-streaming.json",".../centos-7.7/ping6-ip-O-D-p-streaming.json",".../centos-7.7/ping6-ip-O-p-streaming.json",".../centos-7.7/ping6-ip-dup-streaming.json","tests/test_ping_s.py"],"file_stats":[{"name":".../ping-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping-hostname-O-p-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping-hostname-O-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/ping-ip-O-D-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping-ip-O-streaming-quiet.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-ip-O-streaming.json","lines_changed":1},{"name":".../fixtures/centos-7.7/ping-ip-dup-streaming.json","lines_changed":1},{"name":".../ping6-hostname-O-D-p-s-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping6-hostname-O-p-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping6-ip-O-D-p-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping6-ip-O-p-streaming.json","lines_changed":1},{"name":".../centos-7.7/ping6-ip-dup-streaming.json","lines_changed":1},{"name":"tests/test_ping_s.py","lines_changed":803}]},"message":"add some streaming tests"},{"commit":"4f2a4e1dee9d722d2aa5ddf2c082a358c88cf640","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":8}]},"message":"skip blank lines and warning lines"},{"commit":"758d617668d1f9d0f27b52d46749e5b67a570cf1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":5,"deletions":5,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2}]},"message":"doc update"},{"commit":"55322c37f57a9c8e28641a61928fad2329f5e50d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":4}]},"message":"formatting"},{"commit":"d19ea5552bb3a379f7f92bcb58794c557ecc6647","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":193,"deletions":0,"files":["tests/fixtures/centos-7.7/ls-al-streaming.json","tests/fixtures/centos-7.7/ls-alR-streaming.json","tests/fixtures/centos-7.7/ls-alh-streaming.json","tests/fixtures/osx-10.14.6/ls-al-streaming.json","tests/fixtures/osx-10.14.6/ls-alR-streaming.json","tests/fixtures/osx-10.14.6/ls-alh-streaming.json",".../osx-10.14.6/ls-lR-empty-folder-streaming.json","tests/fixtures/ubuntu-18.04/ls-al-streaming.json","tests/fixtures/ubuntu-18.04/ls-alR-streaming.json","tests/fixtures/ubuntu-18.04/ls-alh-streaming.json",".../fixtures/ubuntu-18.04/ls-l-iso-streaming.json","tests/test_ls_s.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ls-al-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-alR-streaming.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-alh-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-al-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-alR-streaming.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-alh-streaming.json","lines_changed":1},{"name":".../osx-10.14.6/ls-lR-empty-folder-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-al-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-alR-streaming.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-alh-streaming.json","lines_changed":1},{"name":".../fixtures/ubuntu-18.04/ls-l-iso-streaming.json","lines_changed":1},{"name":"tests/test_ls_s.py","lines_changed":182}]},"message":"add streaming ls parser tests"},{"commit":"130c3527c1083d399deef00ee8fcaa75f609b485","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":25,"deletions":25,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":8},{"name":"docs/parsers/ping_s.md","lines_changed":12},{"name":"jc/parsers/foo_s.py","lines_changed":6},{"name":"jc/parsers/ls_s.py","lines_changed":10},{"name":"jc/parsers/ping_s.py","lines_changed":12},{"name":"man/jc.1","lines_changed":2}]},"message":"update docstrings"},{"commit":"3f221f471416766a860bd19850afda4899ee5eb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":6},{"name":"jc/parsers/ping_s.py","lines_changed":6}]},"message":"doc update"},{"commit":"d64c4cb39056bb869fc117477612ae5ae2ef3d85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":141,"deletions":1,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":72},{"name":"templates/manpage_template","lines_changed":70}]},"message":"add streaming parsers section"},{"commit":"448c56aa46b72438e4a4c83b10a7eb889e3f50e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting"},{"commit":"9fbea15b6d031baa8c90f2602e39de7cf51408e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":8,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":6},{"name":"jc/parsers/ping_s.py","lines_changed":4}]},"message":"rename state class to _state"},{"commit":"932060314b3c1ce518b9f57532e124285cb3ad0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":41,"deletions":11,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":50},{"name":"jc/parsers/ping_s.py","lines_changed":2}]},"message":"doc update"},{"commit":"5e68ae50097cb339f3390449db7e3f189a716320","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":7}]},"message":"import exception. tighten up os detection"},{"commit":"d03541beae44a4571a7d0481af01a5c19506207f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":5,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":17}]},"message":"add docstring examples. add exception raise when OS cannot be detected."},{"commit":"516fa571d90a0c93134c953c15ce84dd31b96b4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":3}]},"message":"remove unused variable. use elif instead of if for linux vs. bsd detection"},{"commit":"a19c12096a8e8de02a6ff761cc9c13ec249d416e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":373,"deletions":143,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":516}]},"message":"initial working parser for both linux and bsd"},{"commit":"758f27945de4f0897405eba02c7908d815ce6e9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":18}]},"message":"change data_bytes and bytes to sent_bytes and response_bytes"},{"commit":"8b1e8d58df22f8542ccaf7bf3e1eabe6132e7a42","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":1}]},"message":"remove unneeded line"},{"commit":"b967489d085319facee077958deaa04956a98343","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":81,"deletions":40,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":121}]},"message":"complete linux coverage including summary"},{"commit":"870d0218be2641e3eddb114c23d54deb23155f25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/ping_s.md","jc/parsers/ping_s.py"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2}]},"message":"add unbuffer note"},{"commit":"84020bc2af294cb065105f1399453aefc98eb180","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":12,"deletions":6,"files":["docs/parsers/ls_s.md","docs/parsers/ping_s.md","docs/utils.md","jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","man/jc.1"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":2},{"name":"docs/parsers/ping_s.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":6},{"name":"jc/parsers/foo_s.py","lines_changed":2},{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/parsers/ping_s.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"change error_msg to error in -q result docs"},{"commit":"4efe5344e069ed921f208bcbbd097705be2d3b4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add links to HN and Reddit"},{"commit":"9182c545134b3d56d27d2c1d9bda678532bdc3fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":8,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":11}]},"message":"formatting"},{"commit":"28f0ab0b02d21fc060f1ac7181f85552798dc4bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/ls_s.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":2}]},"message":"update streaming error messages"},{"commit":"90d1a30696b2cbfbb06a55cc0cf920cf8ecd89aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting"},{"commit":"130b3738cc57fe261e8ef881a57b7836acd7e7e9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":21,"deletions":26,"files":["jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":8},{"name":"jc/parsers/ls_s.py","lines_changed":8},{"name":"jc/parsers/ping_s.py","lines_changed":14},{"name":"jc/utils.py","lines_changed":17}]},"message":"shorten successful yield to a single line"},{"commit":"92c7357615af7689db273aa78d666b35a2ec7a70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":2}]},"message":"formatting"},{"commit":"c80f8633349c00ea461b8927f9949fe19b2f46ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/foo.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":10}]},"message":"simplify return condition formatting"},{"commit":"4642c20179d4643e0cf1970b264da7d9d91628de","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"templates/readme_template","lines_changed":4}]},"message":"formatting"},{"commit":"5288eb22aadbbc1005b16428b94d2b07e9a75e3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add info about streaming parser performance characteristics"},{"commit":"df8387a1a99df69eac5005662aaf56d506fa0efd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"streaming parsers cannot be used with the magic syntax"},{"commit":"cc38c27f44d3f088609b878304cab8eed75fc8f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"templates/readme_template","lines_changed":3}]},"message":"formatting"},{"commit":"64f5357d69fe88b45d710d38948969699e1ca12f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":84,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":42},{"name":"templates/readme_template","lines_changed":42}]},"message":"add streaming parsers section"},{"commit":"51debb5649bef431e51e543f1c9270e2810aa58f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"add vmstat parser and change from linebuffer to unbuffer"},{"commit":"b48d05a4313b27cf5e69d3e4259542e0b131b60f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":15,"deletions":15,"files":["README.md","jc/cli.py","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":8},{"name":"man/jc.1","lines_changed":10},{"name":"templates/manpage_template","lines_changed":8},{"name":"templates/readme_template","lines_changed":2}]},"message":"change from line buffer output to unbuffer output"},{"commit":"4e7f6b337db61b8a106cf958f6b874157909c87a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":17,"deletions":25,"files":["jc/parsers/foo_s.py","jc/parsers/ls_s.py","jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":15},{"name":"jc/parsers/ls_s.py","lines_changed":9},{"name":"jc/parsers/ping_s.py","lines_changed":18}]},"message":"simplify yield statements"},{"commit":"a509d99cafd80862721595ee59ccc4a471b5e5a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":8}]},"message":"add stream_success dictionary"},{"commit":"481e45fb644ac88fa77ef35643b793f179fe6859","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2}]},"message":"limit parse error msg lenght"},{"commit":"e9038e1720e1c0e520e2f29b718aa8505cbbb9a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":66,"deletions":0,"files":["docs/parsers/ping_s.md"],"file_stats":[{"name":"docs/parsers/ping_s.md","lines_changed":66}]},"message":"initial streaming ping docs"},{"commit":"8fd9e582bf29275c4daaa3be88ea8d196411b34a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":15,"deletions":17,"files":["docs/parsers/ls_s.md"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":32}]},"message":"doc update"},{"commit":"c1fd6f48a5a3501499c9fca7239673b8555cc7c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["docs/utils.md"],"file_stats":[{"name":"docs/utils.md","lines_changed":6}]},"message":"add stream_error docs"},{"commit":"af615c7f4b3f589ffc1b37cf9834062a04c013cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":26,"deletions":5,"files":["CHANGELOG","README.md","jc/cli.py","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"README.md","lines_changed":4},{"name":"jc/cli.py","lines_changed":7},{"name":"man/jc.1","lines_changed":11},{"name":"templates/manpage_template","lines_changed":4},{"name":"templates/readme_template","lines_changed":3}]},"message":"add line buffer output option"},{"commit":"bf0bc32d7ae6cabe07906207f4f08c2e81802c80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"flush streamed text for better piping experience"},{"commit":"2d6b53e012181a4c33bab441880c47c0fc0b0601","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":36,"deletions":42,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":78}]},"message":"add pattern support. move unparsable line detection to standard streaming parser style"},{"commit":"51271fea0fbd7bd63863ba05c399b4675dc5b4bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":139,"deletions":149,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":288}]},"message":"somewhat working parser"},{"commit":"2deb473e0bc96c0e39ec4074a6df4b941ba2172b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":262,"deletions":0,"files":["jc/parsers/ping_s.py"],"file_stats":[{"name":"jc/parsers/ping_s.py","lines_changed":262}]},"message":"initial streaming ping parser"},{"commit":"23eeb33b3da43a679c3bf3f3643cfa552a1164e1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"modify stream_error message"},{"commit":"f50dfaef45632241f8f6972fa19bb17c54a457ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":13,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":19}]},"message":"use stream_error function for exceptions. raise on non -l ls output"},{"commit":"55bb71e9d466cc9ee5f7fd8eca1101c941cbcb35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"add streaming ping parser. update streaming exception message"},{"commit":"dab9357d286962b70224d6fafbf90a4c0cbc9980","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":12,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":13}]},"message":"use stream_error function for exceptions"},{"commit":"27eb427245b5126335cef0adb5e57522272474b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":16}]},"message":"add stream_error function"},{"commit":"260f3685d944ded84396ae3395773d6898803fb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":112,"deletions":0,"files":["jc/parsers/foo_s.py"],"file_stats":[{"name":"jc/parsers/foo_s.py","lines_changed":112}]},"message":"add streaming parser template"},{"commit":"76e78fc0c34b88a90fef876eebef92bd71cd772c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":11,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":20}]},"message":"doc updates"},{"commit":"1ac944fa028a400ae7b39b811fcf368c9bf5e259","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2}]},"message":"add -q option info to docstring"},{"commit":"986bc9b042a940f8dd34f0541bcb9b5840df579e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":43,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":52}]},"message":"cleanup unused code"},{"commit":"5a7942069b1f3ef3b45992b482bfb6bb973f7e8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":28,"deletions":28,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":56}]},"message":"add support for parent field"},{"commit":"f6c6fc13ac4c779667807df12444a41ef28a8011","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"enhance error msg when streaming parser is used"},{"commit":"1d8cfae89f24192b6fab087f59c9b8988ef363dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":11}]},"message":"only print _meta object if -q or quiet flag is used. Also, add message to the end of exceptions informing of the -q option to ignore errors"},{"commit":"787df51239ffa8260b48d6a3a58e6ff07d5e0f64","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":2}]},"message":"remove `\\n` from end of line in exception message"},{"commit":"5e7f302a9c45343c36e81944db38a435e6c8a20c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":10,"files":["jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/parsers/ls_s.py","lines_changed":22}]},"message":"Raise exceptions unless the -q or quiet flag are used"},{"commit":"3d10fd40b56264836874da19aa72351e6d5cfbf7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":13,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":27}]},"message":"remove print flush for better performance. Roll json.JSONDecodeError into the parse try/except block"},{"commit":"57e3bf239cc76d3b0ee0eddc618171eb90c28dec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":6},{"name":"jc/parsers/ls_s.py","lines_changed":6}]},"message":"formatting for docs"},{"commit":"ccb09861e82044e17ec51277b3c8875e5ba9d87d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":20,"files":["docs/parsers/ls_s.md","jc/parsers/ls_s.py"],"file_stats":[{"name":"docs/parsers/ls_s.md","lines_changed":20},{"name":"jc/parsers/ls_s.py","lines_changed":20}]},"message":"formatting for docs"},{"commit":"94551d75dd926c7f558e5cab47ba9483a20c6b3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":116,"deletions":49,"files":["CHANGELOG","README.md","docs/parsers/ls_s.md","docs/readme.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz","mangen.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":6},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/ls_s.md","lines_changed":89},{"name":"docs/readme.md","lines_changed":25},{"name":"jc/__init__.py","lines_changed":27},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":7},{"name":"man/jc.1.gz","lines_changed":null},{"name":"mangen.py","lines_changed":8},{"name":"setup.py","lines_changed":2}]},"message":"doc update"},{"commit":"6e21218425359210591827e936b8d48d9644df92","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":234,"deletions":3,"files":["jc/cli.py","jc/parsers/ls_s.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":23},{"name":"jc/parsers/ls_s.py","lines_changed":214}]},"message":"working prototype of streaming ls parser"},{"commit":"ff0fda48fc48760a7293528155d222c6456f84c4","merge":"e08b61f 528aac7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #168 from kellyjonbrazil/master"},{"commit":"528aac7ad87feae2093aba563c83a29ebf75e5f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":38,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":23},{"name":"templates/readme_template","lines_changed":23}]},"message":"use subprocess in python example"},{"commit":"ab482e521d4cecfffa5393805b1d7de4389db49a","merge":"9c1ad92 e08b61f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #163 from kellyjonbrazil/dev"},{"commit":"e08b61fa81b1bd2304d04db5cdc8b809fe9c6032","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add schema note to sfdisk"},{"commit":"ce61bd1d2b4323d9c2d0454c4f646521913ae20d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":73,"deletions":7,"files":["tests/fixtures/debian10/sfdisk-F2.json","tests/fixtures/debian10/sfdisk-F2.out","tests/fixtures/debian10/sfdisk-l2.json","tests/fixtures/debian10/sfdisk-l2.out","tests/fixtures/debian10/sfdisk-l3.json","tests/fixtures/debian10/sfdisk-l3.out","tests/test_sfdisk.py"],"file_stats":[{"name":"tests/fixtures/debian10/sfdisk-F2.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-F2.out","lines_changed":6},{"name":"tests/fixtures/debian10/sfdisk-l2.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-l2.out","lines_changed":15},{"name":"tests/fixtures/debian10/sfdisk-l3.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-l3.out","lines_changed":13},{"name":"tests/test_sfdisk.py","lines_changed":43}]},"message":"add tests for -F fixes"},{"commit":"7b708f75182bf3ed33478a7de62e9c2496f0b994","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":11,"deletions":5,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-l.json","tests/fixtures/debian10/sfdisk-l.json"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":12},{"name":"tests/fixtures/centos-8/sfdisk-l.json","lines_changed":2},{"name":"tests/fixtures/debian10/sfdisk-l.json","lines_changed":2}]},"message":"Don't convert 'size' to int, except for legacy -d support. Change partition table detection logic to fix -F output"},{"commit":"89ca50c7fc1bf64f34c915e65031d0bc520e6466","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/sfdisk.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add -l to sfdisk raw example"},{"commit":"fb54899dcc2160450448e0d6111557cebdeb0d4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":38,"deletions":23,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":59},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update"},{"commit":"0a625ad7ddd9c804052d98930165cd22049546bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/sfdisk.py"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":2}]},"message":"remove unneeded lines"},{"commit":"d32e45efbe0d71a9a132abfb2855f1f4ccee9916","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":69,"deletions":1,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-F.json","tests/fixtures/centos-8/sfdisk-l.json","tests/fixtures/debian10/sfdisk-F.json","tests/fixtures/debian10/sfdisk-l.json","tests/test_sfdisk.py"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":9},{"name":"tests/fixtures/centos-8/sfdisk-F.json","lines_changed":1},{"name":"tests/fixtures/centos-8/sfdisk-l.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-F.json","lines_changed":1},{"name":"tests/fixtures/debian10/sfdisk-l.json","lines_changed":1},{"name":"tests/test_sfdisk.py","lines_changed":57}]},"message":"add sfdisk tests"},{"commit":"c77696bc789cdfd286a7479c3d9f67d23149d0ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":4},{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"736fde9e784587cb2ef344bbf31d876eafea7741","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":147,"deletions":28,"files":["jc/parsers/sfdisk.py","tests/fixtures/centos-8/sfdisk-F.out","tests/fixtures/centos-8/sfdisk-l.out","tests/fixtures/debian10/sfdisk-F.out","tests/fixtures/debian10/sfdisk-l.out"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":127},{"name":"tests/fixtures/centos-8/sfdisk-F.out","lines_changed":9},{"name":"tests/fixtures/centos-8/sfdisk-l.out","lines_changed":24},{"name":"tests/fixtures/debian10/sfdisk-F.out","lines_changed":3},{"name":"tests/fixtures/debian10/sfdisk-l.out","lines_changed":12}]},"message":"add support for newer versions of sfdisk"},{"commit":"9c1ad92fed9a4b3a0da66d6b71deec8d608edfa9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":12}]},"message":"fix examples"},{"commit":"1a9fd2139d156a51bf2d25db951e47e96da77f7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"add \"For new parsers:\""},{"commit":"7661e7f27a4e5c379ea37c7f95496aca2c1e2910","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"formatting"},{"commit":"f857b7fbf7862ddd7eb5ab20470f5dbaacc62119","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"add custom parser folder info"},{"commit":"d94d12dbc5fb3e3712b2f1aea949013cb8213e28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":11}]},"message":"add foo parser template info"},{"commit":"700916276ae8b0a106410e3dd2ea3e00248ee37a","merge":"473f706 834e523","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #159 from kellyjonbrazil/master"},{"commit":"834e52369ceb479776ddc8fc2931790af53b9c18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":5,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":6},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update man page"},{"commit":"1ce53365de61421c8bd43e04590038083894153b","merge":"2689697 473f706","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #156 from kellyjonbrazil/dev"},{"commit":"473f70668f04a38765559c5dbf0468af24d625c9","merge":"0dbd270 2689697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'master' into dev"},{"commit":"0dbd2702f6ab2640b2ccdea92411ac0789673e66","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]},"message":"reformat doc_text for nicer indentation"},{"commit":"01e3764a9b6ba902aea522bf6b7005fd37b3acbb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"fix join syntax"},{"commit":"ff9c81722ae7221364e9bcb83d98b16b4263334e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"try/except for shlex.join since only available in python 3.8"},{"commit":"166aef7a022ed29862ab2e0702d53c591bb5cc77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":4,"deletions":4,"files":["docs/parsers/stat.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1","man/jc.1.gz","setup.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"78caf7646baf5d35602fd76771443cd64bd783af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add stat fix"},{"commit":"1f99d40cecc5d88a246f3558f71db376ebd885c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":17,"deletions":2,"files":["jc/parsers/stat.py","tests/fixtures/osx-10.14.6/stat-filename-with-spaces.json","tests/fixtures/osx-10.14.6/stat-filename-with-spaces.out","tests/test_stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"tests/fixtures/osx-10.14.6/stat-filename-with-spaces.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/stat-filename-with-spaces.out","lines_changed":2},{"name":"tests/test_stat.py","lines_changed":12}]},"message":"fix filename with spaces for osx/bsd"},{"commit":"4c2912d3d5ec1fd2d5d891f2b3c58a33dd8572be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"use shlex.join to quote run_command_str for better error messages"},{"commit":"45e6e06be581f787f707e3f5645129c713478d16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"add glob and process substitution fixes"},{"commit":"fdbe3e05f323c95687a1137983f9623911008ca2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"fix issue with globs not including filenames with spaces with magic syntax (introduced during switch to use subprocess to grab process exit code). No longer need to shlex quote arguments."},{"commit":"7cc168f6409af13fda815d0d2a6db25b7c9ba367","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add comment"},{"commit":"ff2d609c9b5f5f57f3331e5593e8fe87c01654dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":13}]},"message":"add close_fds=False in subprocess.Popen() to allow process substitution in magic syntax. Also check for too many open files exception"},{"commit":"2689697b4c21758903e5f74ec069e89be585aba2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting"},{"commit":"f90a0ea8ab15629b7786e4431e9c968c3a896ee0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":4}]},"message":"formatting"},{"commit":"caabe60f849fb2422e47b8f10e0ff35beb706dcd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":3,"deletions":3,"files":["docs/parsers/kv.md","jc/man/jc.1.gz","jc/parsers/kv.py","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/kv.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/kv.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"fix kv example"},{"commit":"2bef4ed6038201f54339e750a833260dc1998591","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","README.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"README.md","lines_changed":4}]},"message":"package updates"},{"commit":"ee57be533b12593a33a2abbb2892697f0bd40c65","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2}]},"message":"fix sfdisk example"},{"commit":"c5b7aaca25d6b66d3e44256c2c6760a4cf2956ec","merge":"3b22ce4 7a1be90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #149 from kellyjonbrazil/dev"},{"commit":"7a1be905bb8654558afb5979b0bd78d4a8488874","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"version bump"},{"commit":"5798495a11afa2f72ce6f79be785d46240fcbeb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":6}]},"message":"add 1.15.7 to 1.16.0 changes"},{"commit":"46171e220252ec92d18e744d2a57c1d6a6dc19f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":69,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":69}]},"message":"add sfdisk example"},{"commit":"dd5c924ff505dcc2a9c851d2425677bdf16ea462","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add man page location change"},{"commit":"30c4ab297658228a07ef9b1585516719af3febb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":515,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1","lines_changed":515},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"new man page location"},{"commit":"26ea4d47b33277efb0ddafe8f421791696277c07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":14,"deletions":3,"files":["CHANGELOG","MANIFEST.in","jc/__init__.py","mangen.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":10},{"name":"MANIFEST.in","lines_changed":1},{"name":"jc/__init__.py","lines_changed":2},{"name":"mangen.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump and deprecate /man/jc.1.gz and /jc/man/jc.1.gz"},{"commit":"2732cd175c1e878210707162de3928f33fb2f201","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["CHANGELOG","MANIFEST.in"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"MANIFEST.in","lines_changed":1}]},"message":"include CHANGELOG in source distribution"},{"commit":"3e54b597be88b0e342e4361b7f2c1af447f9482b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add timezone change for unit tests"},{"commit":"f10ebea20962084833e5c1ebd9bc90a251bf3ff4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":78,"deletions":0,"files":["tests/test_date.py","tests/test_dig.py","tests/test_dir.py","tests/test_last.py","tests/test_ls.py","tests/test_rpm_qai.py","tests/test_stat.py","tests/test_systeminfo.py","tests/test_upower.py","tests/test_utils.py","tests/test_who.py"],"file_stats":[{"name":"tests/test_date.py","lines_changed":7},{"name":"tests/test_dig.py","lines_changed":7},{"name":"tests/test_dir.py","lines_changed":7},{"name":"tests/test_last.py","lines_changed":7},{"name":"tests/test_ls.py","lines_changed":7},{"name":"tests/test_rpm_qai.py","lines_changed":7},{"name":"tests/test_stat.py","lines_changed":7},{"name":"tests/test_systeminfo.py","lines_changed":7},{"name":"tests/test_upower.py","lines_changed":7},{"name":"tests/test_utils.py","lines_changed":8},{"name":"tests/test_who.py","lines_changed":7}]},"message":"update tests to set correct timezone on POSIX systems"},{"commit":"2c6f3993cb4c5e559dbac7a479ec889aa2cba752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/route.md","jc/man/jc.1.gz","jc/parsers/route.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/route.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"remove extra comma"},{"commit":"708a696920b52c2614edcdba264912527b2dfbef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":0,"deletions":2,"files":["docs/parsers/route.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/route.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"remove extra lines"},{"commit":"20bbb5d331575c8fc33ba63643882a62650c97b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":2}]},"message":"remove extra lines"},{"commit":"223e785b547d9376174efa15321d60a533847c57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/sfdisk.py"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":8}]},"message":"rename variable"},{"commit":"3d78692c59980e4d70361d3a9f74bacc3f21376e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":150,"deletions":1,"files":["tests/fixtures/centos-7.7/sfdisk-d-multi.json","tests/fixtures/centos-7.7/sfdisk-d-multi.out","tests/fixtures/centos-7.7/sfdisk-d.json","tests/fixtures/centos-7.7/sfdisk-d.out","tests/fixtures/centos-7.7/sfdisk-l-multi.json","tests/fixtures/centos-7.7/sfdisk-l-multi.out","tests/fixtures/centos-7.7/sfdisk-l.json","tests/fixtures/centos-7.7/sfdisk-luB.json","tests/fixtures/centos-7.7/sfdisk-luM.json","tests/fixtures/centos-7.7/sfdisk-luS.json","tests/test_sfdisk.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/sfdisk-d-multi.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-d-multi.out","lines_changed":16},{"name":"tests/fixtures/centos-7.7/sfdisk-d.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-d.out","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-l-multi.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-l-multi.out","lines_changed":21},{"name":"tests/fixtures/centos-7.7/sfdisk-l.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-luB.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-luM.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sfdisk-luS.json","lines_changed":1},{"name":"tests/test_sfdisk.py","lines_changed":106}]},"message":"add sfdisk tests"},{"commit":"5321a15dcf13cf14efe578d0f66b651078c3d8a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":8,"deletions":8,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":8},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/sfdisk.py","lines_changed":8},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update examples"},{"commit":"a452f8252a593f7914ebece53af9d73f4fd11a19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/sfdisk.md","jc/man/jc.1.gz","jc/parsers/sfdisk.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/sfdisk.md","lines_changed":4},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/sfdisk.py","lines_changed":4},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"fix integer conversion"},{"commit":"49267f09ac01fead3b20b2d481bb5e0d07af1439","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/sfdisk.py"],"file_stats":[{"name":"jc/parsers/sfdisk.py","lines_changed":4}]},"message":"change to root prompt in examples"},{"commit":"db47f35783e46a8299533c22146d851509f6ceb2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":15,"insertions":610,"deletions":3,"files":["CHANGELOG","README.md","docs/parsers/sfdisk.md","jc/__init__.py","jc/cli.py","jc/man/jc.1.gz","jc/parsers/sfdisk.py","jc/utils.py","man/jc.1.gz","setup.py","tests/fixtures/centos-7.7/sfdisk-d.out","tests/fixtures/centos-7.7/sfdisk-l.out","tests/fixtures/centos-7.7/sfdisk-luB.out","tests/fixtures/centos-7.7/sfdisk-luM.out","tests/fixtures/centos-7.7/sfdisk-luS.out"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/sfdisk.md","lines_changed":213},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/sfdisk.py","lines_changed":325},{"name":"jc/utils.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/sfdisk-d.out","lines_changed":8},{"name":"tests/fixtures/centos-7.7/sfdisk-l.out","lines_changed":14},{"name":"tests/fixtures/centos-7.7/sfdisk-luB.out","lines_changed":14},{"name":"tests/fixtures/centos-7.7/sfdisk-luM.out","lines_changed":14},{"name":"tests/fixtures/centos-7.7/sfdisk-luS.out","lines_changed":14}]},"message":"add working sfdisk parser"},{"commit":"d48abf312c1f55ab31aa11da2b6cf6bc8166733b","merge":"ff7ab0a 3b22ce4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #147 from kellyjonbrazil/master"},{"commit":"3b22ce41105387e7f46a410460cf04759feef197","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":6,"deletions":3,"files":["CHANGELOG","jc/__init__.py","jc/cli.py","jc/man/jc.1.gz","man/jc.1.gz","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"setup.py","lines_changed":2}]},"message":"fix local plugin parser issue where parser has .py in the name but it is not at the end"},{"commit":"c521ca5bc9e2b035cfef6ff65f6b303b3ec44296","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"change possible to available"},{"commit":"3ddc1c665990e1e732314330db214a81ab810fe9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add jello"},{"commit":"a8e19402b7d1f9f06bc40b81a15dec401154180c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["ADVANCED_USAGE.md"],"file_stats":[{"name":"ADVANCED_USAGE.md","lines_changed":4}]},"message":"remove temporary fix"},{"commit":"0927902b30654274743ab9092e90e768709a9937","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["ADVANCED_USAGE.md"],"file_stats":[{"name":"ADVANCED_USAGE.md","lines_changed":4}]},"message":"temp fix for wrong url"},{"commit":"572548b42fb6ed9d32a392503d44fac1a8f146d3","merge":"95aec9c ff7ab0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #141 from kellyjonbrazil/dev"},{"commit":"ff7ab0a1ed7f468d0e84eb3bf0636f53913c490d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":0,"deletions":1,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc updates for v1.15.5"},{"commit":"5db71b05cb28691bbbaa5d668bcd4a4ac7e68b85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":3,"deletions":3,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/manpage_template","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add en_US.UTF-8 to LANG info"},{"commit":"f9b952885aa7f2b450786a08c3879d9e358886da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add python 3.9.5 packaged info"},{"commit":"e7983bc0b29abaca2147038dfad018cba1e67cdf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/xml.md","docs/parsers/yaml.md"],"file_stats":[{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2}]},"message":"version bump"},{"commit":"473a6431425fc24a4cc83939ff592e0d49535b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":10,"deletions":3,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":11},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/readme_template","lines_changed":2}]},"message":"add windows msi info"},{"commit":"14f3d442cb86250b8f2cdfd7977938634b8abd6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"formatting"},{"commit":"d6f4ed9ab55fe9b7c2766fb437172af62a1d5c87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":2}]},"message":"add long-form UTC test"},{"commit":"1b8d654444ff8c8b8171c7ac63e2736447a36c09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add error message info"},{"commit":"6002af0dca334c0affaff3e9acdca416238c7d82","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":11}]},"message":"add more error message detail to the user for ParseError and LibraryNotFound exceptions"},{"commit":"0924d822a30c8806f65574c010561cd6f7c8e181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":1,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":9}]},"message":"add windows example"},{"commit":"72a37b928924c3edde3a4edb952f98c94aa05f0b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"5eef7bd769f8ffb03ba396833d1b33484041a99f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":16,"deletions":16,"files":["jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/xml.py","lines_changed":16},{"name":"jc/parsers/yaml.py","lines_changed":16}]},"message":"use LibraryNotInstalled exception instead of exiting via sys.exit"},{"commit":"c6893e1bd5283d982a7ecd6f84bdfdd0054ce7a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/exceptions.py"],"file_stats":[{"name":"jc/exceptions.py","lines_changed":4}]},"message":"add LibraryNotInstalled exception"},{"commit":"039f6612e491c6f821c001252e122e9b0a781104","merge":"9c57c09 95aec9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #139 from kellyjonbrazil/master"},{"commit":"95aec9c6f9aa8fb4d0dae227410a1346d550f47f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["templates/manpage_template"],"file_stats":[{"name":"templates/manpage_template","lines_changed":6}]},"message":"add info about Magic syntax not supporting shell builtins"},{"commit":"4e9652a8ec2482a64dc029b0ce0e1047a3e49867","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"spelling"},{"commit":"773b7f4b1f23e04c90e602aab05bc1a7e5aae37b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"templates/readme_template","lines_changed":1}]},"message":"add space before exit code table"},{"commit":"d17ffde9cdc35392ae25d8e9de5328e46067df2a","merge":"efb1d3e 9c57c09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #138 from kellyjonbrazil/dev"},{"commit":"9c57c09c00e64a9031391b9b70083ad6ecf0bc0b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update for release"},{"commit":"4d730a9de5a0d7c064a9a59e3add86e58d9ec492","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add UTC fix"},{"commit":"fc57bcfce24af23f077d6a73f1db4591d8f99c13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":3}]},"message":"fix for when UTC is referenced as \"Coordinated Universal Time\""},{"commit":"fa5571486c3c19bb7e836f043545ea4f2509ed4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":10,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":20}]},"message":"simplify json_out function"},{"commit":"9996c4fe23564dfb52e3c7dbdbd8bd67edfb1e95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":10,"deletions":10,"files":["EXAMPLES.md","docs/parsers/history.md","docs/parsers/jobs.md","jc/man/jc.1.gz","jc/parsers/history.py","jc/parsers/jobs.py","man/jc.1.gz"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":6},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":6},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update docs for shell builtins"},{"commit":"038d4290248e6bb94762bb51f69e9958f7c1fecb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":6,"files":["docs/parsers/dig.md","docs/parsers/dir.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":8},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc updates"},{"commit":"9bf6facb0d7d76583802309253e7d13ba5148997","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":6,"files":["jc/parsers/dir.py"],"file_stats":[{"name":"jc/parsers/dir.py","lines_changed":9}]},"message":"remove magic command capability since dir is a shell builtin"},{"commit":"965717886e4ebaa6a4a494f189d9fdd01e33eb21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add exceptions module info"},{"commit":"e9bfc3dd29f914fd91e937f06d7f59c0f91b8449","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"add time format, dig compatibility, windows colors fix"},{"commit":"f46b33eacf070b4dc72c8d8a66aae49abd149e5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2},{"name":"tests/test_utils.py","lines_changed":2}]},"message":"add windows time format"},{"commit":"f475fe44df2fb2661c5bce4d1e602a4bba7e87c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":3}]},"message":"add new time format for systeminfo"},{"commit":"5fdbe2962d84dad89de23f103d97b76b90450206","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":2}]},"message":"make dig compatible with all platforms"},{"commit":"ab291b9eef6ed5c8ab59b5652f676178941d5ce5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"only force enable colors when running on windows"},{"commit":"fd411fd77273cb7cf872c03ed6a258ccdee4d261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"attempt to get colors working on windows"},{"commit":"b1e95a60a2461dc401ffc299ef6338b65ef12691","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"remove unnecessary comment"},{"commit":"bb1439f0d53e87f636fba05fbd30c3c79fb16002","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":5}]},"message":"use ParseError exception from jc.exceptions module"},{"commit":"ba963d98a0a2b3a0dfca6b211096d802253da5fe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/exceptions.py"],"file_stats":[{"name":"jc/exceptions.py","lines_changed":5}]},"message":"add exceptions module including ParseError"},{"commit":"83440ccb55d0db15b112b8b7d7352493ff516112","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"error message capitalization"},{"commit":"796f61bfa417afdc6ab48fddbb5502cd0659b840","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":13}]},"message":"handle case where the user pipes data and uses magic syntax simultaneously"},{"commit":"070cac4ae12282458a1e1fc8618ebc473d23cacf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"remove commented line"},{"commit":"3ed84f9f42e4e883ddaac28ab49d675600b49424","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":18}]},"message":"reorganize main function. remove pass condition."},{"commit":"a205afb6f355edbb4b98200a980b9601ed0f0658","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"set run_command_str if run_command is set"},{"commit":"a6d983dd8f3871cbc2391c313340167829a575d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"move run_command_str variable"},{"commit":"b6c8d6d01d740827273265dbb0cfbaf7875ac7f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":45,"deletions":17,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":62}]},"message":"add exception handling for filenotfound or other subprocess.popen and json.dumps exceptions"},{"commit":"b5a5d5b133f1c0df8023776e59697b7579f8c18a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"set parser_name for magic syntax use"},{"commit":"da528e7814b0cf25a359c3556d0e286e7bf004b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"move separators to a variable"},{"commit":"4acebf4f621ac564f82e3a97e6810fbb08a9dbc5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"move variables"},{"commit":"4d40808d2b70b7543eadcfd2d35c16ebe91f2f9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":7}]},"message":"update comments"},{"commit":"c543f00bd3c737f73144bb2980d12793042459b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"simplify piped_output function"},{"commit":"947cf41dfab5811c0e76e371231c59a2d6372752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add exit code info"},{"commit":"8d8c58742e5106c3387a627cd1b1323a76cc9623","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":21,"deletions":15,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":13},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/manpage_template","lines_changed":10},{"name":"templates/readme_template","lines_changed":13}]},"message":"formatting"},{"commit":"995ecc9bfb0425b0ee9e4250395b0200b46c1e89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":15,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/manpage_template","lines_changed":15}]},"message":"add exit codes section"},{"commit":"21a15225ebff645439b12d6249dc3e28d7bc09ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":18,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":9},{"name":"templates/readme_template","lines_changed":9}]},"message":"add exit codes section"},{"commit":"48921d4584068fadb0f776ed7e81c21d89172e2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"ensure exit code never exceeds 255"},{"commit":"342db45edc94ab1c3b3ae70e7cf4ca4076e2c7eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":10,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":28}]},"message":"fix combined exit codes"},{"commit":"5f88ecf8443bc6e9a7cda5bc60858f37cc09f4f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]},"message":"add comments to magic_parser return"},{"commit":"a56aebfe7024914d2c602278964b99d1443de335","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"remove side-effect comment since it is no longer relevant"},{"commit":"422bb744a82472546d62c72ba05eaa1d18d5068a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update man pages"},{"commit":"c3b814a15f571ac84a8ce0719d7fd88acf814caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":7}]},"message":"move imports to the top"},{"commit":"e4574047a0ef6fcd4a47142421a1d05795c7925a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":21,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":42}]},"message":"update tests for magic_parser function"},{"commit":"0d7d7951f82627d1fb1e20d1398bd7f88c5ce1be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":7,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":12}]},"message":"don't reset sys.argv anymore. check for 'valid_command' instead"},{"commit":"da904e4770a20ae85fc67476ae4a529564d0a3ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"remove final \\n from stderr string when printing"},{"commit":"19b540041add64fe6650c3634ec869421ffbc769","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":82,"deletions":51,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":133}]},"message":"proof of concept for passing command exit codes when using magic syntax. Needs more testing"},{"commit":"f2ffb93eeaf4c8b5aa93f3e8808bdc044582e8a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":10,"files":["tests/test_ping.py"],"file_stats":[{"name":"tests/test_ping.py","lines_changed":10}]},"message":"formatting"},{"commit":"c0c0e05642e0f473cde34178d815978fff8fe1ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add dig `+noall +answer` support"},{"commit":"966978f17e40a338f982628825f30a19d4b84e4c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":72,"deletions":0,"files":[".../centos-7.7/ping6-ip-O-p-unparsable.json",".../centos-7.7/ping6-ip-O-p-unparsable.out",".../fixtures/osx-10.14.6/ping6-ip-unparsable.json","tests/fixtures/osx-10.14.6/ping6-ip-unparsable.out","tests/test_ping.py"],"file_stats":[{"name":".../centos-7.7/ping6-ip-O-p-unparsable.json","lines_changed":1},{"name":".../centos-7.7/ping6-ip-O-p-unparsable.out","lines_changed":27},{"name":".../fixtures/osx-10.14.6/ping6-ip-unparsable.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-unparsable.out","lines_changed":9},{"name":"tests/test_ping.py","lines_changed":34}]},"message":"add more unparsable line ping tests"},{"commit":"8ab08a5231e082940a62fcde4be218b7ba94be31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":2,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":4}]},"message":"doc update"},{"commit":"48e534fa03b92b2583c5c6269c76651f3aa420cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":17,"deletions":2,"files":["tests/fixtures/osx-10.14.6/dig-noall-answer.json","tests/fixtures/osx-10.14.6/dig-noall-answer.out","tests/test_dig.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/dig-noall-answer.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig-noall-answer.out","lines_changed":4},{"name":"tests/test_dig.py","lines_changed":14}]},"message":"add +noall +answer test"},{"commit":"61851c1bd02aa82d5d82e68595e45630ead13d34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":85,"deletions":3,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":40},{"name":"jc/parsers/dig.py","lines_changed":48}]},"message":"add support for +noall +answer"},{"commit":"3c51b2d83d301b4072bbb12fdba4f60b900573da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":40,"deletions":0,"files":[".../centos-7.7/ping-ip-O-unparsedlines.json",".../centos-7.7/ping-ip-O-unparsedlines.out","tests/test_ping.py"],"file_stats":[{"name":".../centos-7.7/ping-ip-O-unparsedlines.json","lines_changed":1},{"name":".../centos-7.7/ping-ip-O-unparsedlines.out","lines_changed":27},{"name":"tests/test_ping.py","lines_changed":12}]},"message":"add tests for unparsable lines on linux"},{"commit":"ee3a28528e152c61f05bdf71f264fe38274b4190","merge":"fe1f101 916bcda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"916bcdae3881fc9c9f9a91c8c901a714cff3e1da","merge":"fb14f54 efb1d3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #136 from kellyjonbrazil/master"},{"commit":"efb1d3e6b2db920423511a9dcf4c5e5fd9d6af43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"templates/readme_template","lines_changed":4}]},"message":"add blog title and minor formatting"},{"commit":"4e6ae66bacc014e49c4a9229d10dcc8e95de436c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting"},{"commit":"5ee88e7b679bc163a1916d560be6ff29f51699e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":10}]},"message":"add use cases section"},{"commit":"c3b68903cbd898f80438af342195eec7575aafd3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":10}]},"message":"add use cases section"},{"commit":"fe1f1013a74bdf6b4284f11dd59db8ea17e5e5d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":10}]},"message":"add use cases section"},{"commit":"fb14f5439f00d5eaf08651c552189fd4be7358d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":52,"deletions":3,"files":["jc/parsers/ping.py",".../osx-10.14.6/ping-ip-unknown-errors.json",".../osx-10.14.6/ping-ip-unknown-errors.out","tests/test_ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":7},{"name":".../osx-10.14.6/ping-ip-unknown-errors.json","lines_changed":1},{"name":".../osx-10.14.6/ping-ip-unknown-errors.out","lines_changed":35},{"name":"tests/test_ping.py","lines_changed":12}]},"message":"fix and tests for unknown or unparsable errors"},{"commit":"5ca0fc364eb22d583bee5633cdd7183c1d70bb6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/parsers/ping.md"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":1}]},"message":"add unparsed_line to docs"},{"commit":"a1fe7037e5267ec4aced719eff3715085eb35bca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":10}]},"message":"add unparsed_line field if line cannot be parsed"},{"commit":"c2af7d113ed8e8cf9af985c969cf29858a3c26a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["CHANGELOG","docs/parsers/ping.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"docs/parsers/ping.md","lines_changed":2}]},"message":"add ping updates"},{"commit":"ff034e401d5c33efbc3c4bc2f0e386d81eaae7fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":59,"deletions":43,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":102}]},"message":"use try/except to make parser more resilient against unknown error types"},{"commit":"5abe095beb4b668e5f55fe8c9588677547e4c2a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":3,"files":["docs/parsers/ping.md"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":17}]},"message":"update ping docs"},{"commit":"33de5f01e638953c83bb0960dc3550ca4547849b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["jc/__init__.py","setup.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":4},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"8ce155d843806be4ad23491b4401e4eda02e2a1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":86,"deletions":23,"files":["CHANGELOG","jc/parsers/ping.py",".../fixtures/osx-10.14.6/ping-ip-unreachable.json","tests/fixtures/osx-10.14.6/ping-ip-unreachable.out","tests/test_ping.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/ping.py","lines_changed":56},{"name":".../fixtures/osx-10.14.6/ping-ip-unreachable.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-unreachable.out","lines_changed":35},{"name":"tests/test_ping.py","lines_changed":14}]},"message":"add support for error replies in v4 ping on osx and bsd"},{"commit":"b921d5ec9583c8f8e992613ae2eaf62165722054","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":105,"deletions":6,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":111}]},"message":"initial support for error replies in bsd/osx"},{"commit":"e21542aaa2aa5f2f287ddc227df41ae47d761332","merge":"d24f9a8 6150aae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #135 from kellyjonbrazil/dev"},{"commit":"6150aae0aeabafba26d9f119406b0660d9221cb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"clarify packaged binaries"},{"commit":"f27b35f37104ad2012c3bddde0bd94941af06894","merge":"bd428a9 d24f9a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #131 from kellyjonbrazil/master"},{"commit":"d24f9a885d3954035a98a488671486408f509dca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["CONTRIBUTING.md","README.md","templates/readme_template"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2},{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"fix contributing link"},{"commit":"48dd82c8d1b756c4e08d49b8234b8060080dc035","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"trigger page build on github pages"},{"commit":"e57167ad1f240de6ec5fc86c51cfb780535cd783","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"empty commit"},{"commit":"ada91376426ff359c495fb31081404a2cce72b5f","merge":"0c209db bd428a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #130 from kellyjonbrazil/dev"},{"commit":"bd428a9fd75327710dce96f3c95f74ab9d1beaad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"fix link"},{"commit":"934941332f91d9e2cc4e691b154bb5427166ed30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"templates/readme_template","lines_changed":6}]},"message":"minor link updates"},{"commit":"0c209dbd108638f89a43801126a332379be9ae8b","merge":"92e2252 56e041a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #129 from kellyjonbrazil/dev"},{"commit":"56e041aa260b2daf2f5662fae98645a93137adb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"add Practical JSON at the Command Line blog link"},{"commit":"cf9d48582e4e5df6c8498b916a2f9cf036869f3d","merge":"35464bb 92e2252","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #128 from kellyjonbrazil/master"},{"commit":"92e2252bee00482bb0eeae3074b107d4c8553e4c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"fix typo"},{"commit":"fd7861db11e5aaa17c4e7bbce942c0c096116e30","merge":"fcc7e52 35464bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #127 from kellyjonbrazil/dev"},{"commit":"35464bbbfb6b424ef3ee1c855557ada1bf3769fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"date update"},{"commit":"db8ddd7f0e0c2a8bd3e545619e81d3d3972a4d7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":11,"deletions":17,"files":["jc/man/jc.1.gz","jc/parsers/ufw.py","man/jc.1.gz","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/ufw.py","lines_changed":24},{"name":"man/jc.1.gz","lines_changed":null},{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.json","lines_changed":2}]},"message":"fix for scenarios where the default port range didn't always display, or overrode existing port ranges."},{"commit":"72207c54ee5734e3d2d3d1a063c8daf1edaa8815","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":102,"deletions":94,"files":["docs/parsers/ufw_appinfo.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/ufw_appinfo.md","lines_changed":196},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update ufw app info docs to support multiple apps (ufw app info all)"},{"commit":"a683f68003ea64dd5e2c4f06b53a1561ad774f12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":285,"deletions":202,"files":["EXAMPLES.md","jc/parsers/ufw_appinfo.py","tests/fixtures/generic/ufw-appinfo-msn.json","tests/fixtures/generic/ufw-appinfo-test.json","tests/fixtures/generic/ufw-appinfo-test2.json","tests/fixtures/generic/ufw-appinfo-test3.json","tests/fixtures/ubuntu-18.04/ufw-appinfo-all.json","tests/fixtures/ubuntu-18.04/ufw-appinfo-all.out","tests/test_ufw_appinfo.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":68},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":345},{"name":"tests/fixtures/generic/ufw-appinfo-msn.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw-appinfo-test.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw-appinfo-test2.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw-appinfo-test3.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-appinfo-all.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ufw-appinfo-all.out","lines_changed":51},{"name":"tests/test_ufw_appinfo.py","lines_changed":14}]},"message":"change schema to a list of dictionaries to support `ufw app info all` use case"},{"commit":"8d2d3db3fa969456342181a226bf54a3f1613542","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":0,"files":["README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/readme_template","lines_changed":2}]},"message":"formatting"},{"commit":"eca785450d1c72687817d09259fa7cd33376fafc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":34,"deletions":13,"files":["CHANGELOG","README.md","jc/man/jc.1.gz","man/jc.1.gz","templates/readme_template"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":22},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/readme_template","lines_changed":22}]},"message":"add caveats to readme and manpage"},{"commit":"5b40a97ce417687b4e37f320b8a3f07dd7fd169c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":13,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz","templates/manpage_template"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/manpage_template","lines_changed":13}]},"message":"add caveats to man page"},{"commit":"66cb4e9bde81b9290c1addaf851de5d80a1b0702","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":216,"deletions":234,"files":["EXAMPLES.md","docs/parsers/ufw.md","jc/man/jc.1.gz","jc/parsers/ufw.py","man/jc.1.gz"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":96},{"name":"docs/parsers/ufw.md","lines_changed":226},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/ufw.py","lines_changed":128},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update ufw parser docs"},{"commit":"d1f33645caccdb3a55576081c4d355f997ac033c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":26,"deletions":10,"files":["tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw-numbered2.json","tests/fixtures/generic/ufw.json","tests/fixtures/ubuntu-18.04/ufw-numbered.json","tests/fixtures/ubuntu-18.04/ufw-numbered.out","tests/fixtures/ubuntu-18.04/ufw-verbose.json","tests/fixtures/ubuntu-18.04/ufw-verbose.out"],"file_stats":[{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw-numbered2.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-numbered.out","lines_changed":16},{"name":"tests/fixtures/ubuntu-18.04/ufw-verbose.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-verbose.out","lines_changed":10}]},"message":"update ufw tests"},{"commit":"5eff65c326675a449afd05a2af0a6c9bcf7b5e23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":85,"deletions":268,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":353}]},"message":"update schema to support port lists and port range lists. Also support other transports than tcp and udp"},{"commit":"929c38715d87bf9dd689507d319c22b90871ae1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"formatting"},{"commit":"8c91a7b7601a967cd9d8096433ffd4ad62b65ceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":4}]},"message":"formatting"},{"commit":"14289ecd6c022ad204444dff5b5e48f6024a5d0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":4}]},"message":"more timezone info"},{"commit":"b833c44783eb32f2fad24ca205b5b7eab854750f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add ufw-appinfo parser"},{"commit":"e23aa818eaa6d1a389ddef7dd2ad8f62b9f6ff25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":5}]},"message":"add tests section and timezone info"},{"commit":"473d919c1350a8dc34d233033a5a7d12c928e42d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":32,"deletions":0,"files":["runtests.sh","tests/fixtures/generic/ufw-numbered2.json","tests/fixtures/generic/ufw-numbered2.out","tests/test_ufw.py"],"file_stats":[{"name":"runtests.sh","lines_changed":1},{"name":"tests/fixtures/generic/ufw-numbered2.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-numbered2.out","lines_changed":18},{"name":"tests/test_ufw.py","lines_changed":12}]},"message":"add another ufw test sample"},{"commit":"9f925d6ac989a4f21a8c00c84fcf97dfb141e8c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update"},{"commit":"f6ca32b3a31f314fa0b31d9e8b5494491b928f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/ufw.md","jc/parsers/ufw.py"],"file_stats":[{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"jc/parsers/ufw.py","lines_changed":2}]},"message":"update ufw docs with a note on lists of ports"},{"commit":"4cbe84c3d6ac8a3b594feb525460f2a68f5d62b2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":110,"deletions":0,"files":["tests/fixtures/generic/ufw-appinfo-msn.json","tests/fixtures/generic/ufw-appinfo-msn.out","tests/fixtures/generic/ufw-appinfo-test.json","tests/fixtures/generic/ufw-appinfo-test.out","tests/fixtures/generic/ufw-appinfo-test2.json","tests/fixtures/generic/ufw-appinfo-test2.out","tests/fixtures/generic/ufw-appinfo-test3.json","tests/fixtures/generic/ufw-appinfo-test3.out","tests/test_ufw_appinfo.py"],"file_stats":[{"name":"tests/fixtures/generic/ufw-appinfo-msn.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-appinfo-msn.out","lines_changed":9},{"name":"tests/fixtures/generic/ufw-appinfo-test.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-appinfo-test.out","lines_changed":9},{"name":"tests/fixtures/generic/ufw-appinfo-test2.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-appinfo-test2.out","lines_changed":9},{"name":"tests/fixtures/generic/ufw-appinfo-test3.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-appinfo-test3.out","lines_changed":9},{"name":"tests/test_ufw_appinfo.py","lines_changed":70}]},"message":"add ufw-appinfo tests"},{"commit":"ffac5bf9d381305daa86e546f8570be092e5ff34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":12,"deletions":12,"files":["docs/parsers/ufw.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/ufw.md","lines_changed":24},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update"},{"commit":"9aa424f9f8c7e4e0dc29e2c58dac481098beba7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":12}]},"message":"fix ufw example"},{"commit":"0a8495c68e427e39bbda957dd933fa2a461092e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":15,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":27}]},"message":"update docs"},{"commit":"6aea066cf024f92adf4b94eebc7d51430c22332c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/parsers/ufw_appinfo.py","lines_changed":6}]},"message":"make normalized list appear only when data exists. set magic commands"},{"commit":"ff3c2d809ec3ea6e556c302909a228ee670578c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":176,"deletions":25,"files":["EXAMPLES.md","README.md","docs/parsers/ufw_appinfo.md","jc/man/jc.1.gz","jc/parsers/ufw_appinfo.py","man/jc.1.gz"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":39},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/ufw_appinfo.md","lines_changed":58},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":103},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add ufw-appinfo to docs"},{"commit":"145059fc8946b7026184139baea143c2869bc4e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":8,"files":["jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/parsers/ufw_appinfo.py","lines_changed":28}]},"message":"clean up output if sections are blank"},{"commit":"20e5c19de448c1b979497817c887d8d2d6487839","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/parsers/ufw_appinfo.py","lines_changed":3}]},"message":"fix key error if tcp or udp don't exist"},{"commit":"4c98fd4b877c54e1cf7d285a29e178321be12f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":101,"deletions":1,"files":["docs/parsers/ufw_appinfo.md","jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"docs/parsers/ufw_appinfo.md","lines_changed":100},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":2}]},"message":"doc update"},{"commit":"125e54213e8d4dcfe2e3271456af80b3f79c0544","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":105,"deletions":48,"files":["jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/parsers/ufw_appinfo.py","lines_changed":153}]},"message":"update schema and add normalized fields"},{"commit":"0152e0665f87833250561d743144af35416992f8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":215,"deletions":0,"files":["jc/cli.py","jc/parsers/ufw_appinfo.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/ufw_appinfo.py","lines_changed":214}]},"message":"initial working ufw-appinfo parser"},{"commit":"0679bcbc560ea3575555d8546afdd4e2474d05d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":31,"deletions":5,"files":["tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json","tests/fixtures/ubuntu-18.04/ufw-numbered.json","tests/fixtures/ubuntu-18.04/ufw-verbose.json","tests/test_ufw.py"],"file_stats":[{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ufw-numbered.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ufw-verbose.json","lines_changed":1},{"name":"tests/test_ufw.py","lines_changed":30}]},"message":"fix ufw tests"},{"commit":"5500648aa0886ea5089856e5b33d7c8ebd78d5b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":46,"deletions":46,"files":["EXAMPLES.md","docs/parsers/ufw.md","jc/parsers/ufw.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":20},{"name":"docs/parsers/ufw.md","lines_changed":36},{"name":"jc/parsers/ufw.py","lines_changed":36}]},"message":"fix ufw docs for int conversions and service behavior"},{"commit":"bb50caad4dfaefa309e747fd05b650186c5a80f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":31,"deletions":4,"files":["jc/parsers/ufw.py","tests/fixtures/ubuntu-18.04/ufw-numbered.out","tests/fixtures/ubuntu-18.04/ufw-verbose.out"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":10},{"name":"tests/fixtures/ubuntu-18.04/ufw-numbered.out","lines_changed":11},{"name":"tests/fixtures/ubuntu-18.04/ufw-verbose.out","lines_changed":14}]},"message":"fix prefix int conversions. don't reset _transport if service is really a list of ports"},{"commit":"7eef5d94d591a3f70f6638b1b30f952a3bf35f9d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":0,"files":["EXAMPLES.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":5},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"ufw doc update"},{"commit":"74f623f8d607c050db8f62ea4996c4e6aae43268","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":43,"deletions":11,"files":["docs/parsers/ufw.md","jc/parsers/ufw.py","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw.json","tests/fixtures/generic/ufw.out"],"file_stats":[{"name":"docs/parsers/ufw.md","lines_changed":13},{"name":"jc/parsers/ufw.py","lines_changed":25},{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.json","lines_changed":2},{"name":"tests/fixtures/generic/ufw.out","lines_changed":12}]},"message":"add support for rule comments and LIMIT and REJECT actions"},{"commit":"f638aca092475bbae14fed765e90435c093fcb8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add deb package name fix"},{"commit":"da35eaf80ad4f11e7482fc4734db4b2265e50548","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["docs/parsers/ufw.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/ufw.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"formatting"},{"commit":"ade0e8e8fc18ff9a0dd406206a85238f1f5a739d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":107,"deletions":0,"files":["tests/fixtures/generic/ufw-inactive.json","tests/fixtures/generic/ufw-inactive.out","tests/fixtures/generic/ufw-numbered.json","tests/fixtures/generic/ufw-numbered.out","tests/fixtures/generic/ufw.json","tests/fixtures/generic/ufw.out","tests/test_ufw.py"],"file_stats":[{"name":"tests/fixtures/generic/ufw-inactive.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-inactive.out","lines_changed":1},{"name":"tests/fixtures/generic/ufw-numbered.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw-numbered.out","lines_changed":23},{"name":"tests/fixtures/generic/ufw.json","lines_changed":1},{"name":"tests/fixtures/generic/ufw.out","lines_changed":22},{"name":"tests/test_ufw.py","lines_changed":58}]},"message":"add ufw tests"},{"commit":"90076090f05a1f03e2fbff307418ee18d7d046ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":5,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":12}]},"message":"fix int conversions if 'rules' key does not exist"},{"commit":"23635def8b654097178f73ed1b57fc50965142d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":306,"deletions":4,"files":["README.md","docs/parsers/ping.md","docs/parsers/ufw.md","docs/utils.md","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"docs/parsers/ping.md","lines_changed":1},{"name":"docs/parsers/ufw.md","lines_changed":302},{"name":"docs/utils.md","lines_changed":4},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add ufw to docs"},{"commit":"4eeec087bde98f90ab8425473d1fbeee6834852e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":115,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":115}]},"message":"add ufw example"},{"commit":"733196103897a1d84d242324ddcf96e783320329","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":4}]},"message":"update docs with new examples that have `to_service` always existing."},{"commit":"e4acb3d5b70a7d75741ef3e35cd6750d1362a80f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":4}]},"message":"always make to/from_service None if ports are assigned"},{"commit":"c60549a9947d5684bbfa58223bfbcfc40a3ed479","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":29,"deletions":29,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":58}]},"message":"change field name from to/from_subnet to to/from_ip_prefix"},{"commit":"d46fc8bbfa15a80a1af6c64f70230f858c215223","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":9}]},"message":"set to/from_transport to None if to/from_service is set"},{"commit":"b133d1f90d49362594508d8c475663754f0e7675","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":6}]},"message":"strip interface value"},{"commit":"5be615a97e7c145c8351764234ac591028560c34","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":219,"deletions":9,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":228}]},"message":"add examples for docs"},{"commit":"ea1d820f96321ddf4084b54ee2fdf397295beb21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":4,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":11}]},"message":"convert integer fields"},{"commit":"47e262cf7200b02ff0af97a70ffa6bec286c8f39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":59,"deletions":14,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":73}]},"message":"clean up fields"},{"commit":"eec673be9092e382694aa02682564510ce4e7f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":88,"deletions":3,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":91}]},"message":"working raw parser"},{"commit":"9a0fb2a7c87e6fde0cc0d84fa8a1f131e28ea732","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":157,"deletions":0,"files":["jc/parsers/ufw.py"],"file_stats":[{"name":"jc/parsers/ufw.py","lines_changed":157}]},"message":"parse major sections"},{"commit":"b5145d6c14d7a51e7cfdebe126c9689dc90f7b27","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":8,"deletions":4,"files":["CHANGELOG","jc/__init__.py","jc/cli.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":6},{"name":"jc/cli.py","lines_changed":1},{"name":"setup.py","lines_changed":2}]},"message":"version bump to v1.15.3"},{"commit":"9747ca414dfb8218389c7b2199a080edabc2a184","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":11}]},"message":"minor optimization to convert_to_int(). No longer runs through convert_to_float(), but uses standard float() function."},{"commit":"312d465b61a15592cc70d3734ad747b9a2be10ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":2}]},"message":"update link"},{"commit":"7dcf87d24ad40eba6ba98de2b4b2bf177a76cd71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":1}]},"message":"formatting"},{"commit":"cf3cfd16a9de05f30303b5952fbe609cde842d2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":6}]},"message":"rename tests"},{"commit":"fcc7e5294973d1a18943fa2ce2e836b0fe757d95","merge":"6c83846 3ab9d48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #123 from kellyjonbrazil/dev"},{"commit":"3ab9d480149a692510ab9e0ac8e745b674683e3d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"update changelog"},{"commit":"7eddf41c5f6310264359cd6d78bdfa4b65af7d06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":96,"deletions":9,"files":["jc/man/jc.1.gz","jc/utils.py","man/jc.1.gz","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/df.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/free-h.json","tests/test_utils.py"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/utils.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null},{"name":"tests/fixtures/centos-7.7/df-h.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/df.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/free-h.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/df-h.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/df-h.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/free-h.json","lines_changed":2},{"name":"tests/test_utils.py","lines_changed":89}]},"message":"dont round up int conversions and fix tests"},{"commit":"27a196c93862bd737603cfe402b35529eb412954","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update"},{"commit":"e4324f05fb6f89c34fa1567e70d8636457623edb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":14,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":14},{"name":"jc/parsers/dig.py","lines_changed":14}]},"message":"fix indentation in doc"},{"commit":"d36b332bd78b5bf5979cdc59b31da08d8e4104d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":53,"insertions":196,"deletions":274,"files":["docs/parsers/systemctl_lj.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/wc.md","docs/parsers/who.md","docs/utils.md","jc/parsers/acpi.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/hash.py","jc/parsers/hciconfig.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl_lj.py","jc/parsers/systeminfo.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/utils.py"],"file_stats":[{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":2},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/wc.md","lines_changed":2},{"name":"docs/parsers/who.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":2},{"name":"jc/parsers/acpi.py","lines_changed":21},{"name":"jc/parsers/airport_s.py","lines_changed":9},{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/blkid.py","lines_changed":4},{"name":"jc/parsers/cksum.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":4},{"name":"jc/parsers/dir.py","lines_changed":4},{"name":"jc/parsers/dmidecode.py","lines_changed":4},{"name":"jc/parsers/du.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":4},{"name":"jc/parsers/fstab.py","lines_changed":4},{"name":"jc/parsers/group.py","lines_changed":4},{"name":"jc/parsers/hash.py","lines_changed":4},{"name":"jc/parsers/hciconfig.py","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":4},{"name":"jc/parsers/iptables.py","lines_changed":4},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4},{"name":"jc/parsers/lsblk.py","lines_changed":13},{"name":"jc/parsers/lsmod.py","lines_changed":4},{"name":"jc/parsers/lsof.py","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":16},{"name":"jc/parsers/ntpq.py","lines_changed":10},{"name":"jc/parsers/passwd.py","lines_changed":4},{"name":"jc/parsers/ps.py","lines_changed":13},{"name":"jc/parsers/route.py","lines_changed":4},{"name":"jc/parsers/rpm_qi.py","lines_changed":4},{"name":"jc/parsers/shadow.py","lines_changed":4},{"name":"jc/parsers/ss.py","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"jc/parsers/systemctl_lj.py","lines_changed":13},{"name":"jc/parsers/systeminfo.py","lines_changed":6},{"name":"jc/parsers/time.py","lines_changed":32},{"name":"jc/parsers/timedatectl.py","lines_changed":8},{"name":"jc/parsers/tracepath.py","lines_changed":42},{"name":"jc/parsers/traceroute.py","lines_changed":40},{"name":"jc/parsers/upower.py","lines_changed":24},{"name":"jc/parsers/uptime.py","lines_changed":39},{"name":"jc/parsers/w.py","lines_changed":4},{"name":"jc/parsers/wc.py","lines_changed":12},{"name":"jc/parsers/who.py","lines_changed":12},{"name":"jc/utils.py","lines_changed":36}]},"message":"use jc.utils for conversions"},{"commit":"1f034826f69c461495f7a302cc8fe35e3052e72f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":42,"insertions":94,"deletions":185,"files":["docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","tests/fixtures/centos-7.7/ls-alh.json","tests/fixtures/centos-7.7/lsof-sudo.json","tests/fixtures/centos-7.7/lsof.json","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/ubuntu-18.04/ls-alh.json","tests/fixtures/ubuntu-18.04/lsof-sudo.json","tests/fixtures/ubuntu-18.04/lsof.json"],"file_stats":[{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":3},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"docs/parsers/shadow.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":10},{"name":"jc/parsers/jobs.py","lines_changed":8},{"name":"jc/parsers/last.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":9},{"name":"jc/parsers/lsblk.py","lines_changed":14},{"name":"jc/parsers/lsmod.py","lines_changed":9},{"name":"jc/parsers/lsof.py","lines_changed":10},{"name":"jc/parsers/netstat.py","lines_changed":37},{"name":"jc/parsers/ntpq.py","lines_changed":12},{"name":"jc/parsers/passwd.py","lines_changed":8},{"name":"jc/parsers/ping.py","lines_changed":34},{"name":"jc/parsers/ps.py","lines_changed":15},{"name":"jc/parsers/route.py","lines_changed":8},{"name":"jc/parsers/rpm_qi.py","lines_changed":9},{"name":"jc/parsers/shadow.py","lines_changed":8},{"name":"jc/parsers/ss.py","lines_changed":22},{"name":"jc/parsers/stat.py","lines_changed":11},{"name":"tests/fixtures/centos-7.7/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/lsof-sudo.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/lsof.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/lsof-sudo.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/lsof.json","lines_changed":2}]},"message":"use jc.utils for conversions"},{"commit":"246c707c98d3128b4e38f5c4b23a1e0ceedc0b0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":46,"insertions":190,"deletions":196,"files":["CHANGELOG","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/df.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/hash.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/utils.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/hash.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/utils.py","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/osx-10.11.6/df-h.json","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/free-h.json"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"docs/parsers/acpi.md","lines_changed":2},{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/blkid.md","lines_changed":2},{"name":"docs/parsers/cksum.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dir.md","lines_changed":2},{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/group.md","lines_changed":2},{"name":"docs/parsers/hash.md","lines_changed":2},{"name":"docs/parsers/hciconfig.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/id.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":48},{"name":"jc/parsers/acpi.py","lines_changed":22},{"name":"jc/parsers/airport.py","lines_changed":7},{"name":"jc/parsers/airport_s.py","lines_changed":12},{"name":"jc/parsers/arp.py","lines_changed":5},{"name":"jc/parsers/blkid.py","lines_changed":7},{"name":"jc/parsers/cksum.py","lines_changed":8},{"name":"jc/parsers/df.py","lines_changed":14},{"name":"jc/parsers/dig.py","lines_changed":50},{"name":"jc/parsers/dir.py","lines_changed":11},{"name":"jc/parsers/dmidecode.py","lines_changed":8},{"name":"jc/parsers/du.py","lines_changed":8},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":8},{"name":"jc/parsers/fstab.py","lines_changed":8},{"name":"jc/parsers/group.py","lines_changed":8},{"name":"jc/parsers/hash.py","lines_changed":9},{"name":"jc/parsers/hciconfig.py","lines_changed":8},{"name":"jc/parsers/history.py","lines_changed":6},{"name":"jc/parsers/id.py","lines_changed":17},{"name":"jc/parsers/ifconfig.py","lines_changed":11},{"name":"jc/utils.py","lines_changed":62},{"name":"tests/fixtures/centos-7.7/df-h.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/free-h.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/df-h.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/df-h.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/df-h.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/free-h.json","lines_changed":2}]},"message":"use jc.utils conversions"},{"commit":"b5d8968144e76090870f8563dc1bce910fba668c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":19}]},"message":"add convert_to_int function"},{"commit":"f7b9fbefdde6973077573fec02342eb9946789c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add query_size info for dig"},{"commit":"b1fc4533833ca25f59869bfec8ac114bf49c7847","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2}]},"message":"fix _IfconfigParser name"},{"commit":"7581c8d0f4262fc6a05240bb21ffe533b153f6e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":45,"deletions":32,"files":["docs/parsers/dig.md","jc/parsers/dig.py","tests/fixtures/generic/dig-edns3.json"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":74},{"name":"tests/fixtures/generic/dig-edns3.json","lines_changed":2}]},"message":"add query_size field. handle user-specified dig output better - especially when querying dnssec"},{"commit":"32bf8ad6f4fff83fdfd83d66c1ba8f1af5a65a90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":52,"deletions":24,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"EXAMPLES.md","lines_changed":10},{"name":"docs/parsers/dig.md","lines_changed":32},{"name":"jc/parsers/dig.py","lines_changed":32}]},"message":"update dig docs"},{"commit":"b083bcc10fa1105fc09ce8d2c3297aa5575c9d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update man page"},{"commit":"4f6fdd120d23468270c1d7111e4ef71b87759a1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":134,"deletions":100,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":117},{"name":"jc/__init__.py","lines_changed":117}]},"message":"use dig as example"},{"commit":"eb0038be2490053d32803d30e1c3d4d34509d130","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":40,"deletions":19,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":59}]},"message":"update dig examples"},{"commit":"7ecdf819fa37c38ae6159ad8e7bc973ee4f34559","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":84,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":42},{"name":"templates/readme_template","lines_changed":42}]},"message":"remove dig example from readme,"},{"commit":"c6aa4d083550d25bcb621cad524047cfd6a08217","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":252,"deletions":317,"files":["README.md","docs/parsers/dig.md","jc/man/jc.1.gz","jc/parsers/dig.py","man/jc.1.gz","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":84},{"name":"docs/parsers/dig.md","lines_changed":313},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/dig.py","lines_changed":88},{"name":"man/jc.1.gz","lines_changed":null},{"name":"templates/readme_template","lines_changed":84}]},"message":"update docs with new dig parser examples"},{"commit":"7c584b89a6e6b924d53d50103b97f0c2405c33b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":15,"insertions":352,"deletions":52,"files":["jc/parsers/dig.py","tests/fixtures/generic/dig-additional.json","tests/fixtures/generic/dig-additional.out","tests/fixtures/generic/dig-additional2.json","tests/fixtures/generic/dig-additional2.out","tests/fixtures/generic/dig-additional3.json","tests/fixtures/generic/dig-additional3.out","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/generic/dig-edns.json","tests/fixtures/generic/dig-edns.out","tests/fixtures/generic/dig-edns2.json","tests/fixtures/generic/dig-edns2.out","tests/fixtures/generic/dig-edns3.json","tests/fixtures/generic/dig-edns3.out","tests/test_dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":123},{"name":"tests/fixtures/generic/dig-additional.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-additional.out","lines_changed":32},{"name":"tests/fixtures/generic/dig-additional2.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-additional2.out","lines_changed":34},{"name":"tests/fixtures/generic/dig-additional3.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-additional3.out","lines_changed":41},{"name":"tests/fixtures/generic/dig-answer-spaces.json","lines_changed":2},{"name":"tests/fixtures/generic/dig-edns.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-edns.out","lines_changed":20},{"name":"tests/fixtures/generic/dig-edns2.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-edns2.out","lines_changed":38},{"name":"tests/fixtures/generic/dig-edns3.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-edns3.out","lines_changed":34},{"name":"tests/test_dig.py","lines_changed":74}]},"message":"add additional section"},{"commit":"c166c0bfdafa922f57f021fa4d16e467fca02d58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":14,"insertions":55,"deletions":21,"files":["jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":50},{"name":"tests/fixtures/centos-7.7/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig-x.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig.json","lines_changed":2},{"name":"tests/fixtures/generic/dig-answer-spaces.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-x.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig.json","lines_changed":2}]},"message":"add opt_pseudosection section to output and fix existing tests"},{"commit":"a8dd3f7802bfe8fd3ffbedf89af45ddc580ee78d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":54,"deletions":281,"files":["CHANGELOG","jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-axfr.json"],"file_stats":[{"name":"CHANGELOG","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":325},{"name":"tests/fixtures/centos-7.7/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-axfr.json","lines_changed":2}]},"message":"working dig axfr fixes"},{"commit":"3b0e2f03f3b11398ff57b1daed542faaf0b80a62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":24,"deletions":23,"files":["jc/cli.py","templates/manpage_template"],"file_stats":[{"name":"jc/cli.py","lines_changed":21},{"name":"templates/manpage_template","lines_changed":26}]},"message":"clean up examples"},{"commit":"8390ae48c88ab1c7d5acbf40c0e60606953817bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":8,"deletions":8,"files":["jc/parsers/dig.py","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":4},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig.json","lines_changed":2}]},"message":"fix server entry when IPv6 address is in value (maxsplit on colons)"},{"commit":"2db82c0a7e19d596c876ede8a8ff106aaa733ee5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":66,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":66}]},"message":"add systeminfo example"},{"commit":"61479540756704f10853233300ceae8f954a8a95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":0,"files":["tests/test_systeminfo.py","tests/test_utils.py"],"file_stats":[{"name":"tests/test_systeminfo.py","lines_changed":1},{"name":"tests/test_utils.py","lines_changed":4}]},"message":"update tests"},{"commit":"691df271fcfe057ae4b75ad40869e23deb37b886","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":1,"files":["docs/parsers/systeminfo.md","jc/man/jc.1.gz","jc/parsers/systeminfo.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/systeminfo.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/systeminfo.py","lines_changed":1},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add info docstring"},{"commit":"89f52b95f7055da9d7b5fa8dce0923d4c3435bd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":467,"deletions":821,"files":["README.md","docs/parsers/systeminfo.md","jc/man/jc.1.gz","jc/parsers/systeminfo.py","jc/utils.py","man/jc.1.gz",".../windows/windows-10/systeminfo-hyperv-utc.json",".../windows/windows-10/systeminfo-hyperv-utc.out",".../windows/windows-10/systeminfo-hyperv.json","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-10/systeminfo.out",".../windows/windows-2012r2/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/systeminfo.md","lines_changed":290},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/systeminfo.py","lines_changed":361},{"name":"jc/utils.py","lines_changed":5},{"name":"man/jc.1.gz","lines_changed":null},{"name":".../windows/windows-10/systeminfo-hyperv-utc.json","lines_changed":1},{"name":".../windows/windows-10/systeminfo-hyperv-utc.out","lines_changed":79},{"name":".../windows/windows-10/systeminfo-hyperv.json","lines_changed":112},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":57},{"name":"tests/fixtures/windows/windows-10/systeminfo.out","lines_changed":1},{"name":".../windows/windows-2012r2/systeminfo.json","lines_changed":55},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":326}]},"message":"update systeminfo parser with updated timestamps, normalized blank fields, and new doc style"},{"commit":"146acc1bf69c402e38c2f1bc842b84e6cff7e2cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":29,"files":["jc/parsers/systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":52}]},"message":"rename functions to make them private"},{"commit":"c4a345f59aa090336b4e80f181493cd5bc2c17c5","merge":"dfd2703 325fab2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #106 from jon-rd/j/systeminfo"},{"commit":"dfd2703f75b907ba865fff266d0742d8931bc2d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["CHANGELOG","jc/__init__.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/__init__.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"bump dev to v1.15.2"},{"commit":"325fab2de7b8a4bfc452ab8d3cf333d47fdf4989","author":"Jon Smith","author_email":"jon@rebelliondefense.com","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":10}]},"message":"update documentation for parsed structures"},{"commit":"f3d00cf38ad15aeda7eaa5644ebc30ff33de6a29","author":"Jon Smith","author_email":"jon@rebelliondefense.com","stats":{"files_changed":5,"insertions":56,"deletions":48,"files":["jc/parsers/systeminfo.py",".../windows/windows-10/systeminfo-hyperv.json","tests/fixtures/windows/windows-10/systeminfo.json",".../windows/windows-2012r2/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":48},{"name":".../windows/windows-10/systeminfo-hyperv.json","lines_changed":14},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":14},{"name":".../windows/windows-2012r2/systeminfo.json","lines_changed":14},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":14}]},"message":"append mb to memory key names; adjust expected timestamps to utc tz"},{"commit":"14838f7f5d780896f1318cac2c3f34d249a158d4","author":"Jon Smith","author_email":"jon@rebelliondefense.com","stats":{"files_changed":9,"insertions":956,"deletions":116,"files":["jc/parsers/systeminfo.py","jc/utils.py",".../windows/windows-10/systeminfo-hyperv.json",".../windows/windows-10/systeminfo-hyperv.out","tests/fixtures/windows/windows-10/systeminfo.json",".../windows/windows-2012r2/systeminfo.json",".../fixtures/windows/windows-2012r2/systeminfo.out","tests/fixtures/windows/windows-7/systeminfo.json","tests/test_systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":357},{"name":"jc/utils.py","lines_changed":1},{"name":".../windows/windows-10/systeminfo-hyperv.json","lines_changed":111},{"name":".../windows/windows-10/systeminfo-hyperv.out","lines_changed":79},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":43},{"name":".../windows/windows-2012r2/systeminfo.json","lines_changed":54},{"name":".../fixtures/windows/windows-2012r2/systeminfo.out","lines_changed":45},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":311},{"name":"tests/test_systeminfo.py","lines_changed":71}]},"message":"update schema with nic, hyperv, and process changes"},{"commit":"af74047b81776c2ea32d82f9145ab60c346c8203","author":"Jon Smith","author_email":"jon@rebelliondefense.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":8}]},"message":"update schema based on processor/hotfix changes"},{"commit":"660c59129cf4ba7889fb3c6fbafd9dd9b479ccd9","author":"Jon Smith","author_email":"jon@rebelliondefense.com","stats":{"files_changed":3,"insertions":41,"deletions":9,"files":["jc/parsers/systeminfo.py","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.json"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":42},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":4},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":4}]},"message":"Add parsing of processors/hotfixs"},{"commit":"89a88e186ed71d84ea802cf08ab756b49cee3225","author":"Jon Smith","author_email":"jon@rebelliondefense.com","stats":{"files_changed":1,"insertions":152,"deletions":0,"files":["docs/parsers/systeminfo.md"],"file_stats":[{"name":"docs/parsers/systeminfo.md","lines_changed":152}]},"message":"Add systeminfo.md file"},{"commit":"f861cf95b96a224a0a11f2cdc3261b94c02415ef","author":"Jon Smith","author_email":"jon@rebelliondefense.com","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["jc/cli.py","jc/parsers/systeminfo.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/systeminfo.py","lines_changed":2}]},"message":"Change to v0.5; add parser to cli.py; add to docgen"},{"commit":"ee8f06cbdb03f8254bb6a3c56fa5b8a64ff9ca77","author":"Jon Smith","author_email":"jon@rebelliondefense.com","stats":{"files_changed":6,"insertions":688,"deletions":0,"files":["jc/parsers/systeminfo.py","tests/fixtures/windows/windows-10/systeminfo.json","tests/fixtures/windows/windows-10/systeminfo.out","tests/fixtures/windows/windows-7/systeminfo.json","tests/fixtures/windows/windows-7/systeminfo.out","tests/test_systeminfo.py"],"file_stats":[{"name":"jc/parsers/systeminfo.py","lines_changed":209},{"name":"tests/fixtures/windows/windows-10/systeminfo.json","lines_changed":35},{"name":"tests/fixtures/windows/windows-10/systeminfo.out","lines_changed":47},{"name":"tests/fixtures/windows/windows-7/systeminfo.json","lines_changed":34},{"name":"tests/fixtures/windows/windows-7/systeminfo.out","lines_changed":298},{"name":"tests/test_systeminfo.py","lines_changed":65}]},"message":"Add windows systeminfo command parser"},{"commit":"a2e8b3c7b681605916b8950d035ee19889a125a5","merge":"e0681ee 6c83846","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #121 from kellyjonbrazil/master"},{"commit":"6c838460752c7131f75cdab2da07266fee492060","merge":"10292f7 e0681ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #120 from kellyjonbrazil/dev"},{"commit":"e0681eebb9881dc0ffddb478224455f434919104","merge":"e5732d1 10292f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'master' into dev"},{"commit":"e5732d1cea1c882f6486cf288e45edb993989ea0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"update changelog"},{"commit":"6e7ae3cd3f003fe9e1e587b7f8ebd16ba0895014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/parsers/timedatectl.md","jc/man/jc.1.gz","jc/parsers/timedatectl.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"formatting of timedatectl docs"},{"commit":"f95632d1aaee545ae0ce081ca0617be135c09220","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":83,"deletions":62,"files":["EXAMPLES.md","docs/parsers/rpm_qi.md","jc/man/jc.1.gz","jc/parsers/rpm_qi.py","man/jc.1.gz","tests/fixtures/centos-7.7/rpm-qai.json","tests/fixtures/centos-7.7/rpm-qi-package.json"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":12},{"name":"docs/parsers/rpm_qi.md","lines_changed":62},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/rpm_qi.py","lines_changed":67},{"name":"man/jc.1.gz","lines_changed":null},{"name":"tests/fixtures/centos-7.7/rpm-qai.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/rpm-qi-package.json","lines_changed":2}]},"message":"add install_date calculated fields"},{"commit":"2f8b7b26e59bcd745fa1fcadb373455c7d404286","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":2,"files":["CHANGELOG","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update docs for v1.15.1"},{"commit":"10292f7502e4cb1c53b53ed39fed9288044c2ef8","merge":"37a3565 aef5470","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #119 from kellyjonbrazil/dpkg_l-fix"},{"commit":"aef54705f5267c633e0778e8dce0065978083139","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["docs/parsers/dpkg_l.md"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":4}]},"message":"add _l to module name"},{"commit":"bba5980fa53767716bc35d8c904e7a2341346eeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"man page update"},{"commit":"977425abfb05a63ee372df36124ac6ba6a5a0aaa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"jc/parsers/dpkg_l.py","lines_changed":4}]},"message":"add _l to package name in docs"},{"commit":"37a3565a1bbd3d01663602673fed651509e69d8c","merge":"bdcdaee 13deb8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #118 from kellyjonbrazil/rpm-qi-doc-fix"},{"commit":"13deb8bfb6e77aaf86942f0be87b59d06ee2a97c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":194,"files":["docs/parsers/rpm_qai.md","docs/parsers/rpm_qi.md"],"file_stats":[{"name":"docs/parsers/rpm_qai.md","lines_changed":191},{"name":"docs/parsers/rpm_qi.md","lines_changed":6}]},"message":"fix rpm-qi docs"},{"commit":"a3ed9d075aff41599452c3094f7d057c25fc8f89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":191,"files":["docs/parsers/rpm_qai.md"],"file_stats":[{"name":"docs/parsers/rpm_qai.md","lines_changed":191}]},"message":"remove old parser doc"},{"commit":"fb0ced549e021916dee7da39859e8f85c8216e16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":6,"deletions":6,"files":["docs/parsers/rpm_qi.md","jc/man/jc.1.gz","jc/parsers/rpm_qi.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/rpm_qi.md","lines_changed":6},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/rpm_qi.py","lines_changed":6},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"fix rpm-qi docs (used underscore instead of dash in name)"},{"commit":"7eb31bc7d290fcd09e53524ebbb11e59110df6a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":39,"deletions":48,"files":["docs/parsers/airport_s.md","jc/man/jc.1.gz","jc/parsers/airport_s.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/airport_s.md","lines_changed":49},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/airport_s.py","lines_changed":38},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update airport_s docs"},{"commit":"6a06a3914273853742ac57433398968ccf7d9897","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":12}]},"message":"use herestring instead of echo -e into jq"},{"commit":"bdcdaee6c5299ea0750512e0943c7f58f56f2e35","merge":"5d8f836 605353f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #117 from kellyjonbrazil/doc_update"},{"commit":"605353fdce3b8b5986d20a35d05f7210a6df0730","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":70,"insertions":1710,"deletions":2656,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":99},{"name":"docs/parsers/airport.md","lines_changed":61},{"name":"docs/parsers/airport_s.md","lines_changed":9},{"name":"docs/parsers/arp.md","lines_changed":51},{"name":"docs/parsers/blkid.md","lines_changed":93},{"name":"docs/parsers/cksum.md","lines_changed":41},{"name":"docs/parsers/crontab.md","lines_changed":84},{"name":"docs/parsers/crontab_u.md","lines_changed":88},{"name":"docs/parsers/csv.md","lines_changed":41},{"name":"docs/parsers/date.md","lines_changed":68},{"name":"docs/parsers/df.md","lines_changed":59},{"name":"docs/parsers/dig.md","lines_changed":133},{"name":"docs/parsers/dir.md","lines_changed":49},{"name":"docs/parsers/dmidecode.md","lines_changed":55},{"name":"docs/parsers/dpkg_l.md","lines_changed":51},{"name":"docs/parsers/du.md","lines_changed":39},{"name":"docs/parsers/env.md","lines_changed":39},{"name":"docs/parsers/file.md","lines_changed":39},{"name":"docs/parsers/finger.md","lines_changed":57},{"name":"docs/parsers/free.md","lines_changed":49},{"name":"docs/parsers/fstab.md","lines_changed":47},{"name":"docs/parsers/group.md","lines_changed":47},{"name":"docs/parsers/gshadow.md","lines_changed":51},{"name":"docs/parsers/hash.md","lines_changed":39},{"name":"docs/parsers/hashsum.md","lines_changed":39},{"name":"docs/parsers/hciconfig.md","lines_changed":123},{"name":"docs/parsers/history.md","lines_changed":39},{"name":"docs/parsers/hosts.md","lines_changed":43},{"name":"docs/parsers/id.md","lines_changed":79},{"name":"docs/parsers/ifconfig.md","lines_changed":97},{"name":"docs/parsers/ini.md","lines_changed":44},{"name":"docs/parsers/iptables.md","lines_changed":67},{"name":"docs/parsers/iw_scan.md","lines_changed":40},{"name":"docs/parsers/jobs.md","lines_changed":45},{"name":"docs/parsers/kv.md","lines_changed":17},{"name":"docs/parsers/last.md","lines_changed":53},{"name":"docs/parsers/ls.md","lines_changed":118},{"name":"docs/parsers/lsblk.md","lines_changed":115},{"name":"docs/parsers/lsmod.md","lines_changed":47},{"name":"docs/parsers/lsof.md","lines_changed":55},{"name":"docs/parsers/mount.md","lines_changed":47},{"name":"docs/parsers/netstat.md","lines_changed":223},{"name":"docs/parsers/ntpq.md","lines_changed":58},{"name":"docs/parsers/passwd.md","lines_changed":49},{"name":"docs/parsers/ping.md","lines_changed":81},{"name":"docs/parsers/pip_list.md","lines_changed":41},{"name":"docs/parsers/pip_show.md","lines_changed":56},{"name":"docs/parsers/ps.md","lines_changed":69},{"name":"docs/parsers/route.md","lines_changed":63},{"name":"docs/parsers/rpm_qi.md","lines_changed":77},{"name":"docs/parsers/shadow.md","lines_changed":51},{"name":"docs/parsers/ss.md","lines_changed":73},{"name":"docs/parsers/stat.md","lines_changed":97},{"name":"docs/parsers/sysctl.md","lines_changed":37},{"name":"docs/parsers/systemctl.md","lines_changed":45},{"name":"docs/parsers/systemctl_lj.md","lines_changed":44},{"name":"docs/parsers/systemctl_ls.md","lines_changed":41},{"name":"docs/parsers/systemctl_luf.md","lines_changed":39},{"name":"docs/parsers/time.md","lines_changed":105},{"name":"docs/parsers/timedatectl.md","lines_changed":53},{"name":"docs/parsers/tracepath.md","lines_changed":60},{"name":"docs/parsers/traceroute.md","lines_changed":69},{"name":"docs/parsers/uname.md","lines_changed":47},{"name":"docs/parsers/upower.md","lines_changed":145},{"name":"docs/parsers/uptime.md","lines_changed":57},{"name":"docs/parsers/w.md","lines_changed":51},{"name":"docs/parsers/wc.md","lines_changed":43},{"name":"docs/parsers/who.md","lines_changed":55},{"name":"docs/parsers/xml.md","lines_changed":38},{"name":"docs/parsers/yaml.md","lines_changed":42}]},"message":"add new docs"},{"commit":"490c9e17699e8e4f70dcc1612e1a808f86e24b0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":8}]},"message":"add more cli tests for magic command"},{"commit":"6ebebb659dc93daeaa869752ad135f6e1d2cb1ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"update changelog"},{"commit":"0e70c5ee12e96f04a89de05153a2da9cd39f98ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update documentation link"},{"commit":"cd531acf6045660e022c932f62a01d4084433ad4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":1}]},"message":"clean up comment"},{"commit":"908ac1f61c5cc011d05d550f933940dfed4431f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":143,"insertions":0,"deletions":690,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/man/jc.1.gz","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":4},{"name":"docs/parsers/airport.md","lines_changed":4},{"name":"docs/parsers/airport_s.md","lines_changed":4},{"name":"docs/parsers/arp.md","lines_changed":4},{"name":"docs/parsers/blkid.md","lines_changed":4},{"name":"docs/parsers/cksum.md","lines_changed":4},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"docs/parsers/crontab_u.md","lines_changed":4},{"name":"docs/parsers/csv.md","lines_changed":4},{"name":"docs/parsers/date.md","lines_changed":4},{"name":"docs/parsers/df.md","lines_changed":4},{"name":"docs/parsers/dig.md","lines_changed":4},{"name":"docs/parsers/dir.md","lines_changed":4},{"name":"docs/parsers/dmidecode.md","lines_changed":4},{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"docs/parsers/du.md","lines_changed":4},{"name":"docs/parsers/env.md","lines_changed":4},{"name":"docs/parsers/file.md","lines_changed":4},{"name":"docs/parsers/finger.md","lines_changed":4},{"name":"docs/parsers/free.md","lines_changed":4},{"name":"docs/parsers/fstab.md","lines_changed":4},{"name":"docs/parsers/group.md","lines_changed":4},{"name":"docs/parsers/gshadow.md","lines_changed":4},{"name":"docs/parsers/hash.md","lines_changed":4},{"name":"docs/parsers/hashsum.md","lines_changed":4},{"name":"docs/parsers/hciconfig.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":4},{"name":"docs/parsers/hosts.md","lines_changed":4},{"name":"docs/parsers/id.md","lines_changed":4},{"name":"docs/parsers/ifconfig.md","lines_changed":4},{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"docs/parsers/iptables.md","lines_changed":4},{"name":"docs/parsers/iw_scan.md","lines_changed":4},{"name":"docs/parsers/jobs.md","lines_changed":4},{"name":"docs/parsers/kv.md","lines_changed":4},{"name":"docs/parsers/last.md","lines_changed":4},{"name":"docs/parsers/ls.md","lines_changed":67},{"name":"docs/parsers/lsblk.md","lines_changed":4},{"name":"docs/parsers/lsmod.md","lines_changed":4},{"name":"docs/parsers/lsof.md","lines_changed":4},{"name":"docs/parsers/mount.md","lines_changed":4},{"name":"docs/parsers/netstat.md","lines_changed":4},{"name":"docs/parsers/ntpq.md","lines_changed":4},{"name":"docs/parsers/passwd.md","lines_changed":4},{"name":"docs/parsers/ping.md","lines_changed":4},{"name":"docs/parsers/pip_list.md","lines_changed":4},{"name":"docs/parsers/pip_show.md","lines_changed":4},{"name":"docs/parsers/ps.md","lines_changed":4},{"name":"docs/parsers/route.md","lines_changed":4},{"name":"docs/parsers/rpm_qi.md","lines_changed":4},{"name":"docs/parsers/shadow.md","lines_changed":4},{"name":"docs/parsers/ss.md","lines_changed":4},{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"docs/parsers/sysctl.md","lines_changed":4},{"name":"docs/parsers/systemctl.md","lines_changed":4},{"name":"docs/parsers/systemctl_lj.md","lines_changed":4},{"name":"docs/parsers/systemctl_ls.md","lines_changed":4},{"name":"docs/parsers/systemctl_luf.md","lines_changed":4},{"name":"docs/parsers/time.md","lines_changed":4},{"name":"docs/parsers/timedatectl.md","lines_changed":4},{"name":"docs/parsers/tracepath.md","lines_changed":4},{"name":"docs/parsers/traceroute.md","lines_changed":4},{"name":"docs/parsers/uname.md","lines_changed":4},{"name":"docs/parsers/upower.md","lines_changed":4},{"name":"docs/parsers/uptime.md","lines_changed":4},{"name":"docs/parsers/w.md","lines_changed":4},{"name":"docs/parsers/wc.md","lines_changed":4},{"name":"docs/parsers/who.md","lines_changed":4},{"name":"docs/parsers/xml.md","lines_changed":4},{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"jc/parsers/acpi.py","lines_changed":4},{"name":"jc/parsers/airport.py","lines_changed":4},{"name":"jc/parsers/airport_s.py","lines_changed":4},{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/blkid.py","lines_changed":4},{"name":"jc/parsers/cksum.py","lines_changed":4},{"name":"jc/parsers/crontab.py","lines_changed":4},{"name":"jc/parsers/crontab_u.py","lines_changed":4},{"name":"jc/parsers/csv.py","lines_changed":4},{"name":"jc/parsers/date.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":4},{"name":"jc/parsers/dir.py","lines_changed":4},{"name":"jc/parsers/dmidecode.py","lines_changed":4},{"name":"jc/parsers/dpkg_l.py","lines_changed":4},{"name":"jc/parsers/du.py","lines_changed":4},{"name":"jc/parsers/env.py","lines_changed":4},{"name":"jc/parsers/file.py","lines_changed":4},{"name":"jc/parsers/finger.py","lines_changed":4},{"name":"jc/parsers/foo.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":4},{"name":"jc/parsers/fstab.py","lines_changed":4},{"name":"jc/parsers/group.py","lines_changed":4},{"name":"jc/parsers/gshadow.py","lines_changed":4},{"name":"jc/parsers/hash.py","lines_changed":4},{"name":"jc/parsers/hashsum.py","lines_changed":4},{"name":"jc/parsers/hciconfig.py","lines_changed":4},{"name":"jc/parsers/history.py","lines_changed":4},{"name":"jc/parsers/hosts.py","lines_changed":4},{"name":"jc/parsers/id.py","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":4},{"name":"jc/parsers/ini.py","lines_changed":4},{"name":"jc/parsers/iptables.py","lines_changed":4},{"name":"jc/parsers/iw_scan.py","lines_changed":4},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/kv.py","lines_changed":4},{"name":"jc/parsers/last.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":67},{"name":"jc/parsers/lsblk.py","lines_changed":4},{"name":"jc/parsers/lsmod.py","lines_changed":4},{"name":"jc/parsers/lsof.py","lines_changed":4},{"name":"jc/parsers/mount.py","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":4},{"name":"jc/parsers/ntpq.py","lines_changed":4},{"name":"jc/parsers/passwd.py","lines_changed":4},{"name":"jc/parsers/ping.py","lines_changed":4},{"name":"jc/parsers/pip_list.py","lines_changed":4},{"name":"jc/parsers/pip_show.py","lines_changed":4},{"name":"jc/parsers/ps.py","lines_changed":4},{"name":"jc/parsers/route.py","lines_changed":4},{"name":"jc/parsers/rpm_qi.py","lines_changed":4},{"name":"jc/parsers/shadow.py","lines_changed":4},{"name":"jc/parsers/ss.py","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":4},{"name":"jc/parsers/sysctl.py","lines_changed":4},{"name":"jc/parsers/systemctl.py","lines_changed":4},{"name":"jc/parsers/systemctl_lj.py","lines_changed":4},{"name":"jc/parsers/systemctl_ls.py","lines_changed":4},{"name":"jc/parsers/systemctl_luf.py","lines_changed":4},{"name":"jc/parsers/time.py","lines_changed":4},{"name":"jc/parsers/timedatectl.py","lines_changed":4},{"name":"jc/parsers/tracepath.py","lines_changed":4},{"name":"jc/parsers/traceroute.py","lines_changed":4},{"name":"jc/parsers/uname.py","lines_changed":4},{"name":"jc/parsers/upower.py","lines_changed":4},{"name":"jc/parsers/uptime.py","lines_changed":4},{"name":"jc/parsers/w.py","lines_changed":4},{"name":"jc/parsers/wc.py","lines_changed":4},{"name":"jc/parsers/who.py","lines_changed":4},{"name":"jc/parsers/xml.py","lines_changed":4},{"name":"jc/parsers/yaml.py","lines_changed":4},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update docs - remove compatibility section since it is now automatically generated from info()"},{"commit":"f5c7e7e4046bc57b4fcad99390e31b121a7106ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":70,"insertions":350,"deletions":0,"files":["docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md"],"file_stats":[{"name":"docs/parsers/acpi.md","lines_changed":5},{"name":"docs/parsers/airport.md","lines_changed":5},{"name":"docs/parsers/airport_s.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":5},{"name":"docs/parsers/blkid.md","lines_changed":5},{"name":"docs/parsers/cksum.md","lines_changed":5},{"name":"docs/parsers/crontab.md","lines_changed":5},{"name":"docs/parsers/crontab_u.md","lines_changed":5},{"name":"docs/parsers/csv.md","lines_changed":5},{"name":"docs/parsers/date.md","lines_changed":5},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/dir.md","lines_changed":5},{"name":"docs/parsers/dmidecode.md","lines_changed":5},{"name":"docs/parsers/dpkg_l.md","lines_changed":5},{"name":"docs/parsers/du.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/file.md","lines_changed":5},{"name":"docs/parsers/finger.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/group.md","lines_changed":5},{"name":"docs/parsers/gshadow.md","lines_changed":5},{"name":"docs/parsers/hash.md","lines_changed":5},{"name":"docs/parsers/hashsum.md","lines_changed":5},{"name":"docs/parsers/hciconfig.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/id.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":5},{"name":"docs/parsers/ini.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/iw_scan.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/kv.md","lines_changed":5},{"name":"docs/parsers/last.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ntpq.md","lines_changed":5},{"name":"docs/parsers/passwd.md","lines_changed":5},{"name":"docs/parsers/ping.md","lines_changed":5},{"name":"docs/parsers/pip_list.md","lines_changed":5},{"name":"docs/parsers/pip_show.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/rpm_qi.md","lines_changed":5},{"name":"docs/parsers/shadow.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/sysctl.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/time.md","lines_changed":5},{"name":"docs/parsers/timedatectl.md","lines_changed":5},{"name":"docs/parsers/tracepath.md","lines_changed":5},{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/upower.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5},{"name":"docs/parsers/wc.md","lines_changed":5},{"name":"docs/parsers/who.md","lines_changed":5},{"name":"docs/parsers/xml.md","lines_changed":5},{"name":"docs/parsers/yaml.md","lines_changed":5}]},"message":"add updated docs with home link and parser info at the bottom"},{"commit":"001c700b5bd280cb1cb9e54169ae5f1b7918c257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":2,"deletions":1,"files":["docgen.sh","jc/man/jc.1.gz","man/jc.1.gz"],"file_stats":[{"name":"docgen.sh","lines_changed":3},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"add home link to the top of the md file"},{"commit":"9b41e9bef0ff099e70f37fddc8fe2c6bd8457b19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":1}]},"message":"Add parser information header"},{"commit":"34bd6e32dc0c0bf7dfeedaadbf04115f43e9d060","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":4,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":24}]},"message":"pull each parser as a json object into a bash array and iterate on it to add supplementary information like version, author, and compatibility"},{"commit":"c5d058490beaa8f59875a8acfd7a400764768639","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":22,"deletions":13,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":35}]},"message":"move parser doc printing to its own function"},{"commit":"dd1ae6d9a7de5421830232deb42d933b9a652672","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":3,"deletions":1,"files":["MANIFEST.in","jc/man/jc.1.gz","man/jc.1.gz","mangen.py"],"file_stats":[{"name":"MANIFEST.in","lines_changed":2},{"name":"jc/man/jc.1.gz","lines_changed":null},{"name":"man/jc.1.gz","lines_changed":null},{"name":"mangen.py","lines_changed":2}]},"message":"add man page inside the pypi package for easier packaging in homebrew"},{"commit":"d8ea9bde823a7f5c146741150c3211737345c7dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":16,"deletions":16,"files":["docs/parsers/w.md","jc/parsers/w.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/w.md","lines_changed":16},{"name":"jc/parsers/w.py","lines_changed":16},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"doc update"},{"commit":"125edc9c906dc3650b6a683ed13830075acb7ab6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"bail out for -h, -a, and -v in magic()"},{"commit":"15ea43e394a9004f8ccec208b3a066c76e241866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["MANIFEST.in"],"file_stats":[{"name":"MANIFEST.in","lines_changed":1}]},"message":"add man file to package for easier packaging in homebrew"},{"commit":"b55b02687c00d1c50e30f30c9b9a7f36f783eb0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":19,"insertions":371,"deletions":441,"files":["CHANGELOG","docs/parsers/uname.md","docs/parsers/upower.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","man/jc.1.gz","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":6},{"name":"docs/parsers/uname.md","lines_changed":42},{"name":"docs/parsers/upower.md","lines_changed":140},{"name":"docs/parsers/uptime.md","lines_changed":52},{"name":"docs/parsers/w.md","lines_changed":46},{"name":"docs/parsers/wc.md","lines_changed":38},{"name":"docs/parsers/who.md","lines_changed":50},{"name":"docs/parsers/xml.md","lines_changed":33},{"name":"docs/parsers/yaml.md","lines_changed":37},{"name":"jc/parsers/uname.py","lines_changed":33},{"name":"jc/parsers/upower.py","lines_changed":131},{"name":"jc/parsers/uptime.py","lines_changed":43},{"name":"jc/parsers/w.py","lines_changed":37},{"name":"jc/parsers/wc.py","lines_changed":29},{"name":"jc/parsers/who.py","lines_changed":41},{"name":"jc/parsers/xml.py","lines_changed":24},{"name":"jc/parsers/yaml.py","lines_changed":28},{"name":"man/jc.1.gz","lines_changed":null},{"name":"setup.py","lines_changed":2}]},"message":"doc update"},{"commit":"da611f0ac6321f7f52fdbc419f8b155c74393c28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":63,"deletions":50,"files":["jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/iw_scan.py","man/jc.1.gz"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":30},{"name":"jc/parsers/iptables.py","lines_changed":53},{"name":"jc/parsers/iw_scan.py","lines_changed":30},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update docs"},{"commit":"b8b8dfead4fdc4285585c44c2ebce3bdd42b2e7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":61,"insertions":1501,"deletions":1848,"files":["docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/iw_scan.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/rpm_qi.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/time.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/rpm_qi.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":39},{"name":"docs/parsers/iptables.md","lines_changed":62},{"name":"docs/parsers/iw_scan.md","lines_changed":35},{"name":"docs/parsers/jobs.md","lines_changed":40},{"name":"docs/parsers/kv.md","lines_changed":12},{"name":"docs/parsers/last.md","lines_changed":48},{"name":"docs/parsers/ls.md","lines_changed":50},{"name":"docs/parsers/lsblk.md","lines_changed":110},{"name":"docs/parsers/lsmod.md","lines_changed":42},{"name":"docs/parsers/lsof.md","lines_changed":50},{"name":"docs/parsers/mount.md","lines_changed":42},{"name":"docs/parsers/netstat.md","lines_changed":218},{"name":"docs/parsers/ntpq.md","lines_changed":53},{"name":"docs/parsers/passwd.md","lines_changed":44},{"name":"docs/parsers/ping.md","lines_changed":76},{"name":"docs/parsers/pip_list.md","lines_changed":36},{"name":"docs/parsers/pip_show.md","lines_changed":51},{"name":"docs/parsers/ps.md","lines_changed":64},{"name":"docs/parsers/route.md","lines_changed":58},{"name":"docs/parsers/rpm_qi.md","lines_changed":72},{"name":"docs/parsers/shadow.md","lines_changed":46},{"name":"docs/parsers/ss.md","lines_changed":66},{"name":"docs/parsers/stat.md","lines_changed":92},{"name":"docs/parsers/sysctl.md","lines_changed":32},{"name":"docs/parsers/systemctl.md","lines_changed":40},{"name":"docs/parsers/systemctl_lj.md","lines_changed":39},{"name":"docs/parsers/systemctl_ls.md","lines_changed":36},{"name":"docs/parsers/systemctl_luf.md","lines_changed":34},{"name":"docs/parsers/time.md","lines_changed":100},{"name":"docs/parsers/timedatectl.md","lines_changed":48},{"name":"docs/parsers/tracepath.md","lines_changed":55},{"name":"docs/parsers/traceroute.md","lines_changed":64},{"name":"jc/parsers/jobs.py","lines_changed":31},{"name":"jc/parsers/kv.py","lines_changed":13},{"name":"jc/parsers/last.py","lines_changed":39},{"name":"jc/parsers/ls.py","lines_changed":41},{"name":"jc/parsers/lsblk.py","lines_changed":101},{"name":"jc/parsers/lsmod.py","lines_changed":33},{"name":"jc/parsers/lsof.py","lines_changed":41},{"name":"jc/parsers/mount.py","lines_changed":41},{"name":"jc/parsers/netstat.py","lines_changed":209},{"name":"jc/parsers/ntpq.py","lines_changed":44},{"name":"jc/parsers/passwd.py","lines_changed":35},{"name":"jc/parsers/ping.py","lines_changed":75},{"name":"jc/parsers/pip_list.py","lines_changed":27},{"name":"jc/parsers/pip_show.py","lines_changed":42},{"name":"jc/parsers/ps.py","lines_changed":55},{"name":"jc/parsers/route.py","lines_changed":49},{"name":"jc/parsers/rpm_qi.py","lines_changed":63},{"name":"jc/parsers/shadow.py","lines_changed":37},{"name":"jc/parsers/ss.py","lines_changed":59},{"name":"jc/parsers/stat.py","lines_changed":83},{"name":"jc/parsers/sysctl.py","lines_changed":23},{"name":"jc/parsers/systemctl.py","lines_changed":31},{"name":"jc/parsers/systemctl_lj.py","lines_changed":30},{"name":"jc/parsers/systemctl_ls.py","lines_changed":27},{"name":"jc/parsers/systemctl_luf.py","lines_changed":25},{"name":"jc/parsers/time.py","lines_changed":91},{"name":"jc/parsers/timedatectl.py","lines_changed":39},{"name":"jc/parsers/tracepath.py","lines_changed":46},{"name":"jc/parsers/traceroute.py","lines_changed":65}]},"message":"update docs"},{"commit":"4290a3cbd135cacbf63664dc30768017ebbed28d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":9,"files":["docs/parsers/ifconfig.md","jc/parsers/ifconfig.py"],"file_stats":[{"name":"docs/parsers/ifconfig.md","lines_changed":6},{"name":"jc/parsers/ifconfig.py","lines_changed":6}]},"message":"make IfconfigParser class private"},{"commit":"a5e2203cee6a7bc398cf280f57d37638eeb1d2d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":2,"deletions":1,"files":["docs/parsers/ifconfig.md","jc/parsers/ifconfig.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":1},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update ifconfig doc"},{"commit":"e28c08b1361161cfd123b9ebc11fa1ffa87d658f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":46,"insertions":976,"deletions":1209,"files":["docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dir.md","docs/parsers/dmidecode.md","docs/parsers/dpkg_l.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/finger.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/hciconfig.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/finger.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","man/jc.1.gz"],"file_stats":[{"name":"docs/parsers/csv.md","lines_changed":36},{"name":"docs/parsers/date.md","lines_changed":63},{"name":"docs/parsers/df.md","lines_changed":54},{"name":"docs/parsers/dig.md","lines_changed":128},{"name":"docs/parsers/dir.md","lines_changed":44},{"name":"docs/parsers/dmidecode.md","lines_changed":50},{"name":"docs/parsers/dpkg_l.md","lines_changed":46},{"name":"docs/parsers/du.md","lines_changed":34},{"name":"docs/parsers/env.md","lines_changed":34},{"name":"docs/parsers/file.md","lines_changed":34},{"name":"docs/parsers/finger.md","lines_changed":52},{"name":"docs/parsers/free.md","lines_changed":44},{"name":"docs/parsers/fstab.md","lines_changed":42},{"name":"docs/parsers/group.md","lines_changed":42},{"name":"docs/parsers/gshadow.md","lines_changed":46},{"name":"docs/parsers/hash.md","lines_changed":34},{"name":"docs/parsers/hashsum.md","lines_changed":34},{"name":"docs/parsers/hciconfig.md","lines_changed":118},{"name":"docs/parsers/history.md","lines_changed":34},{"name":"docs/parsers/hosts.md","lines_changed":38},{"name":"docs/parsers/id.md","lines_changed":74},{"name":"docs/parsers/ifconfig.md","lines_changed":86},{"name":"jc/parsers/csv.py","lines_changed":27},{"name":"jc/parsers/date.py","lines_changed":54},{"name":"jc/parsers/df.py","lines_changed":45},{"name":"jc/parsers/dig.py","lines_changed":143},{"name":"jc/parsers/dir.py","lines_changed":35},{"name":"jc/parsers/dmidecode.py","lines_changed":41},{"name":"jc/parsers/dpkg_l.py","lines_changed":37},{"name":"jc/parsers/du.py","lines_changed":25},{"name":"jc/parsers/env.py","lines_changed":25},{"name":"jc/parsers/file.py","lines_changed":25},{"name":"jc/parsers/finger.py","lines_changed":43},{"name":"jc/parsers/foo.py","lines_changed":25},{"name":"jc/parsers/free.py","lines_changed":35},{"name":"jc/parsers/fstab.py","lines_changed":33},{"name":"jc/parsers/group.py","lines_changed":33},{"name":"jc/parsers/gshadow.py","lines_changed":37},{"name":"jc/parsers/hash.py","lines_changed":25},{"name":"jc/parsers/hashsum.py","lines_changed":25},{"name":"jc/parsers/hciconfig.py","lines_changed":109},{"name":"jc/parsers/history.py","lines_changed":25},{"name":"jc/parsers/hosts.py","lines_changed":29},{"name":"jc/parsers/id.py","lines_changed":65},{"name":"jc/parsers/ifconfig.py","lines_changed":77},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"update documentation"},{"commit":"a4b6846f63b43168085275d73940265940badf46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":467,"files":["man/jc.1","man/jc.1.gz"],"file_stats":[{"name":"man/jc.1","lines_changed":467},{"name":"man/jc.1.gz","lines_changed":null}]},"message":"man update"},{"commit":"2bc830786114fd57619f34b936dcf6e0bed7a109","merge":"9b39917 5d8f836","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'master' into dev"},{"commit":"9b39917c798ed0310c9b82d87172cbf6d24ba111","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":17,"insertions":391,"deletions":453,"files":["README.md","docs/parsers/acpi.md","docs/parsers/airport.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","jc/cli.py","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","man/jc.1","templates/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/acpi.md","lines_changed":94},{"name":"docs/parsers/airport.md","lines_changed":56},{"name":"docs/parsers/blkid.md","lines_changed":88},{"name":"docs/parsers/cksum.md","lines_changed":36},{"name":"docs/parsers/crontab.md","lines_changed":79},{"name":"docs/parsers/crontab_u.md","lines_changed":83},{"name":"jc/cli.py","lines_changed":6},{"name":"jc/parsers/acpi.py","lines_changed":85},{"name":"jc/parsers/airport.py","lines_changed":47},{"name":"jc/parsers/blkid.py","lines_changed":79},{"name":"jc/parsers/cksum.py","lines_changed":27},{"name":"jc/parsers/crontab.py","lines_changed":70},{"name":"jc/parsers/crontab_u.py","lines_changed":74},{"name":"man/jc.1","lines_changed":8},{"name":"templates/manpage_template","lines_changed":8},{"name":"templates/readme_template","lines_changed":2}]},"message":"update docstrings for new help functionality"},{"commit":"57c13cc0a38ad89fda8b0e362bd6487257d0a26a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":26}]},"message":"add support for parser help"},{"commit":"b7355fd30d992a1bcc90227f5a1b02be073829e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":37,"deletions":48,"files":["docs/parsers/arp.md","jc/parsers/arp.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":46},{"name":"jc/parsers/arp.py","lines_changed":39}]},"message":"new docstring format for improved documentation"},{"commit":"93ae309e407b26820b9f05b5b331d05fc77df57f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/__init__.py","man/jc.1"],"file_stats":[{"name":"jc/__init__.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"bump version to 1.15.1"},{"commit":"5d8f8365e24a7c3a587d4e71ebba4876de08203b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":461,"files":["man/jc.1","man/jc.1.gz","mangen.py"],"file_stats":[{"name":"man/jc.1","lines_changed":461},{"name":"man/jc.1.gz","lines_changed":null},{"name":"mangen.py","lines_changed":9}]},"message":"gzip man page"},{"commit":"f26909eefb236e9ebf63be53cd86ae13cc3d9ea3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["docs/parsers/dir.md"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":8}]},"message":"formatting"},{"commit":"55bfbb2797ede3aefbb14ecab950b108b1895ccc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":6,"files":["EXAMPLES.md","jc/parsers/dir.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":3},{"name":"jc/parsers/dir.py","lines_changed":8}]},"message":"formatting"},{"commit":"8970b8342a855203aef649b60dad3e49a1d7fd2a","merge":"a73fdb7 5285e69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #115 from kellyjonbrazil/master"},{"commit":"5285e699c30fdeaf56068f5a03ef1d1d33fa673c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["README.md","jc/cli.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"fix rpm-qi parser name"},{"commit":"275f3860d5870303235b651d42650256e4db8ada","merge":"577811f a73fdb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #114 from kellyjonbrazil/dev"},{"commit":"a73fdb7478965f0f2c841ac01b2762db80ad0786","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["CHANGELOG","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"man/jc.1","lines_changed":2}]},"message":"update dates"},{"commit":"f2d746403a0ed764f931ae9e14d180bab107dcca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/rpm_qi.md","jc/parsers/rpm_qi.py"],"file_stats":[{"name":"docs/parsers/rpm_qi.md","lines_changed":2},{"name":"jc/parsers/rpm_qi.py","lines_changed":2}]},"message":"typo fix"},{"commit":"b7dbf2c49be4beb793495a0aaee7f05dbea5a3a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":26}]},"message":"doc formatting"},{"commit":"21f3c97788826e79b0c387f877c5adf269318e97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2}]},"message":"rename rpm_qai to rpm_qi"},{"commit":"14b727cc717d04fefba1cc31b6f29b549ced986f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":73,"deletions":0,"files":["tests/fixtures/centos-7.7/rpm-qi-package.json","tests/fixtures/centos-7.7/rpm-qi-package.out","tests/test_rpm_qai.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/rpm-qi-package.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rpm-qi-package.out","lines_changed":26},{"name":"tests/test_rpm_qai.py","lines_changed":46}]},"message":"add rpm_qi tests"},{"commit":"abee226591ed4ae37351efc995017d28b27827d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":205,"deletions":14,"files":["README.md","docs/parsers/rpm_qi.md","jc/cli.py","jc/parsers/{rpm_qai.py => rpm_qi.py}","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/rpm_qi.md","lines_changed":191},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/{rpm_qai.py => rpm_qi.py}","lines_changed":20},{"name":"man/jc.1","lines_changed":4}]},"message":"rename rpm_qia to rpm_qi"},{"commit":"293ad39f4bcf326186dd917d8bc58d3964e5e4d6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"typo fix"},{"commit":"92443025811019f616f596abb60a2889f604c122","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":7,"deletions":6,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/rpm_qai.md","jc/parsers/rpm_qai.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":4},{"name":"docs/parsers/rpm_qai.md","lines_changed":4},{"name":"jc/parsers/rpm_qai.py","lines_changed":4}]},"message":"rpm parser doc update"},{"commit":"753cac25fb1e7e6cd2c742afa8d45ced068ea91d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":3,"files":["jc/parsers/rpm_qai.py"],"file_stats":[{"name":"jc/parsers/rpm_qai.py","lines_changed":9}]},"message":"only add description if it exists"},{"commit":"0548263e898bf14f93d2fa423c0f0a9d9f2ff567","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":10468,"deletions":0,"files":["EXAMPLES.md","README.md","docs/parsers/rpm_qai.md","jc/cli.py","jc/parsers/rpm_qai.py","man/jc.1","tests/fixtures/centos-7.7/rpm-qai.json","tests/fixtures/centos-7.7/rpm-qai.out"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":53},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/rpm_qai.md","lines_changed":191},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/rpm_qai.py","lines_changed":255},{"name":"man/jc.1","lines_changed":5},{"name":"tests/fixtures/centos-7.7/rpm-qai.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/rpm-qai.out","lines_changed":9961}]},"message":"add rpm -qai parser"},{"commit":"53776a9bf894988d6ef9221a62ab8b816c89560c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["man/jc.1","templates/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":2},{"name":"templates/manpage_template","lines_changed":2}]},"message":"note -a output is JSON"},{"commit":"cc7def9b76a7fa6de1e11b584676820f3acb0257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":18,"deletions":0,"files":["tests/fixtures/osx-10.14.6/finger.json","tests/fixtures/osx-10.14.6/finger.out","tests/test_finger.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/finger.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/finger.out","lines_changed":5},{"name":"tests/test_finger.py","lines_changed":12}]},"message":"add OSX finger tests"},{"commit":"11a4422c25ed905f33475677bcc2f59f49c62a23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":51,"deletions":0,"files":["tests/fixtures/centos-7.7/finger.json","tests/fixtures/centos-7.7/finger.out","tests/test_finger.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/finger.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/finger.out","lines_changed":3},{"name":"tests/test_finger.py","lines_changed":47}]},"message":"add centos 7.7 finger tests"},{"commit":"3a44785260514227b541530baf3e14b6c7ebe86a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/finger.py"],"file_stats":[{"name":"jc/parsers/finger.py","lines_changed":4}]},"message":"del details key if details are blank"},{"commit":"e0d430c26c38db8de5a32741e05df412cffe45b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"update -r raw option info"},{"commit":"417b70020accfa4910016e9d3d12690a5488f6f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":129,"deletions":22,"files":["EXAMPLES.md","docs/parsers/finger.md","jc/parsers/finger.py","tests/fixtures/ubuntu-18.04/finger.json","tests/fixtures/ubuntu-18.04/finger.out"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":18},{"name":"docs/parsers/finger.md","lines_changed":53},{"name":"jc/parsers/finger.py","lines_changed":71},{"name":"tests/fixtures/ubuntu-18.04/finger.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/finger.out","lines_changed":8}]},"message":"add idle time fields to finger parser"},{"commit":"7b29c464b72ef9a79bd872dab92cf65016490bcc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"date updated"},{"commit":"26d5529d86e4e459ad94226465c3697a050af0ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":7,"files":["docs/parsers/finger.md"],"file_stats":[{"name":"docs/parsers/finger.md","lines_changed":17}]},"message":"remove aix support, add note for -s support. schema update"},{"commit":"852103c478321b84ffbbc0a876d5ece0c0881e1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":14,"files":["jc/parsers/finger.py"],"file_stats":[{"name":"jc/parsers/finger.py","lines_changed":41}]},"message":"tweak regex to support arbitrary 'detail' data"},{"commit":"26a115421b0888e23f4348f1124e2ef7b39df4cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":11}]},"message":"add finger parser"},{"commit":"755b941a9aa602d95d9bc599f5c64e05f9e6216d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":35,"deletions":30,"files":["EXAMPLES.md","docs/parsers/finger.md","jc/parsers/finger.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":23},{"name":"docs/parsers/finger.md","lines_changed":21},{"name":"jc/parsers/finger.py","lines_changed":21}]},"message":"doc update"},{"commit":"fd1ca82d86649adeb84968142665e5e4fae3fa0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":263,"deletions":0,"files":["README.md","docs/parsers/finger.md","jc/cli.py","jc/parsers/finger.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"docs/parsers/finger.md","lines_changed":102},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/finger.py","lines_changed":154},{"name":"man/jc.1","lines_changed":5}]},"message":"add finger parser"},{"commit":"6fe175344fc61d4996a9ea20f6c5d429efb1fac7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"templates/readme_template","lines_changed":2}]},"message":"change examples link to github.io"},{"commit":"3590cda13a68616ee7eb8c85c5554ffb3fef036d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/last.md","jc/parsers/last.py"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":2}]},"message":"docs formatting"},{"commit":"2f1011dd85ec9b3550138ac4a4e1729fa5b4fe17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"readme update"},{"commit":"2b155261b3f6e4879b592f5bc052649ded5e3d69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["templates/readme_template"],"file_stats":[{"name":"templates/readme_template","lines_changed":2}]},"message":"use new github.io links for documentation"},{"commit":"02f4d606d0a446c7cc74aedac6035ee79805950d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":69,"deletions":69,"files":["README.md","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":136},{"name":"templates/readme_template","lines_changed":2}]},"message":"add documentation links to README.md"},{"commit":"577811f00b7fcd0396bb0e26a2985709bd2c65a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/_config.yml"],"file_stats":[{"name":"docs/_config.yml","lines_changed":1}]},"message":"Set theme jekyll-theme-cayman"},{"commit":"b4098d67a3a4a617d42c1389e0a88833c77b89b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"latest"},{"commit":"88bd7554aeb511c19e55dc3dde9c9376efb0485b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":3,"files":["docgen.sh","updatedocs.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":2},{"name":"updatedocs.sh","lines_changed":9}]},"message":"add status messages"},{"commit":"b5ec16c5cafb78db093861cc30d9646207f2227a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":8,"files":["mangen.py","readmegen.py"],"file_stats":[{"name":"mangen.py","lines_changed":4},{"name":"readmegen.py","lines_changed":4}]},"message":"formatting"},{"commit":"68fcb60a1460a35500180ec05a8cf5ba5706ff17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["updatedocs.sh"],"file_stats":[{"name":"updatedocs.sh","lines_changed":6}]},"message":"add updatedocs script"},{"commit":"e4781d60ce251f6d47f19bbe042e97f8aa9e2f18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":65,"insertions":188,"deletions":189,"files":["README.md","jc/parsers/acpi.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dir.py","jc/parsers/dmidecode.py","jc/parsers/dpkg_l.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/hciconfig.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/time.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/upower.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","man/jc.1"],"file_stats":[{"name":"README.md","lines_changed":124},{"name":"jc/parsers/acpi.py","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/blkid.py","lines_changed":2},{"name":"jc/parsers/cksum.py","lines_changed":3},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/dir.py","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":2},{"name":"jc/parsers/dpkg_l.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/file.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/group.py","lines_changed":2},{"name":"jc/parsers/gshadow.py","lines_changed":2},{"name":"jc/parsers/hash.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":2},{"name":"jc/parsers/hciconfig.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/last.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/ntpq.py","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":2},{"name":"jc/parsers/ping.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/shadow.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/sysctl.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/time.py","lines_changed":2},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/parsers/wc.py","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":2},{"name":"man/jc.1","lines_changed":126}]},"message":"update parser descriptions with backticks surrounding command names"},{"commit":"6201fb346a66ba762651624cdaf03f08e08579a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"test backticks in description"},{"commit":"f88c8343f9dec5e0190df94a5109e6c749bda286","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["README.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"update iw-scan description for documentation"},{"commit":"25410d33168ee7142bd8f8c739ef22a62a47eb6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":973,"deletions":70,"files":["README.md","mangen.py","readmegen.py","{man/template => templates}/manpage_template","templates/readme_template"],"file_stats":[{"name":"README.md","lines_changed":139},{"name":"mangen.py","lines_changed":2},{"name":"readmegen.py","lines_changed":16},{"name":"{man/template => templates}/manpage_template","lines_changed":0},{"name":"templates/readme_template","lines_changed":886}]},"message":"create readmegen.py script. move jinja2 templates to templates folder"},{"commit":"4ff9952938d0654376efc94ca7d8a12f6df171af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":10}]},"message":"change OSX to macOS"},{"commit":"5e3f63a412c5b23e7515337521ebba6273b5c11f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["man/jc.1","man/template/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":4},{"name":"man/template/manpage_template","lines_changed":8}]},"message":"add license and copyright info. use variables instead of hard-coded values"},{"commit":"e1f57be69efdfd7facd07df6ef0955a36c4fc18b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add license info"},{"commit":"2c65d5eeccdc95d2de00ac6575a9e8d8458486bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":32,"deletions":8,"files":["man/jc.1","man/template/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":20},{"name":"man/template/manpage_template","lines_changed":20}]},"message":"man page updates"},{"commit":"aa621f2f1ee043611c440683dfb63e6577d8fac4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":74,"deletions":9,"files":["CHANGELOG","man/jc.1","man/template/manpage_template"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"man/jc.1","lines_changed":42},{"name":"man/template/manpage_template","lines_changed":40}]},"message":"enhance man page"},{"commit":"ac932c6e59ad80115962d0ea91e6aaabc70c211e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":2},{"name":"jc/utils.py","lines_changed":2}]},"message":"update timestamp docs"},{"commit":"029f79da1647e53f97ca83ba92b1f36a131f3128","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"added info regarding updated dev scripts for automating doc generation"},{"commit":"153b2b4a7a216caae5b03f6d50d43980c13a705f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":68,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":79}]},"message":"use jc to help automate the generation of its own docs"},{"commit":"709b2fe4eead06090f903718deeb06ec774fc26e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":16,"deletions":0,"files":["man/jc.1","man/template/manpage_template"],"file_stats":[{"name":"man/jc.1","lines_changed":8},{"name":"man/template/manpage_template","lines_changed":8}]},"message":"add -h and -v options"},{"commit":"09c1fccc584e3d0582e19b520586419085ea8d04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":4,"deletions":6,"files":["man/jc.1","man/template/manpage_template","mangen.py"],"file_stats":[{"name":"man/jc.1","lines_changed":2},{"name":"man/template/manpage_template","lines_changed":2},{"name":"mangen.py","lines_changed":6}]},"message":"manpage updates"},{"commit":"fd254d99b782888fe7646e42a61f28aa99e7cba7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":193,"deletions":15,"files":["man/jc.1","man/template/manpage_template","mangen.py"],"file_stats":[{"name":"man/jc.1","lines_changed":124},{"name":"man/template/manpage_template","lines_changed":64},{"name":"mangen.py","lines_changed":20}]},"message":"add manpage generator"},{"commit":"88bd2c172217c498431e8904e74313bc27978785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"fix typo"},{"commit":"d03e2f0fc1d0310cd94702f4d3c959d71b0eb622","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":40,"deletions":0,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":40}]},"message":"add parser schema guidelines"},{"commit":"3f12a393bd37062cd1412128be495235b0c7351f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"formatting"},{"commit":"8c21284c5038bdc2e52ff4211fac747f33f52091","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":3}]},"message":"remove redundant license info"},{"commit":"e7d396c2157a77500017967dfc68ffaf32507c2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CONTRIBUTING.md"],"file_stats":[{"name":"CONTRIBUTING.md","lines_changed":2}]},"message":"update issues link"},{"commit":"f238fac0eb0c8e5133c6c9abf9ca709f5df7a925","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":49,"deletions":0,"files":["CHANGELOG","CONTRIBUTING.md","README.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"CONTRIBUTING.md","lines_changed":46},{"name":"README.md","lines_changed":2}]},"message":"add contributing guidelines"},{"commit":"017228f80d9a65ad7715f31c539d9fca1615296f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add tested on Windows 10"},{"commit":"286c5fa9434e25434ee8f4825621f68464296469","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":3}]},"message":"add dir parser"},{"commit":"74cfc13abe4cd09ca5470714caeaedd24c099770","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":12,"deletions":21,"files":["tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-S.json","tests/fixtures/windows-10/dir-dirs.json","tests/fixtures/windows-10/dir-files.json","tests/fixtures/windows-10/dir-mix.json","tests/fixtures/windows-10/dir-raw.json","tests/fixtures/windows-10/dir.json","tests/test_dir.py"],"file_stats":[{"name":"tests/fixtures/windows-10/dir-C.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-ODTC.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-S.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-dirs.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-files.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-mix.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-raw.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir.json","lines_changed":2},{"name":"tests/test_dir.py","lines_changed":18}]},"message":"fixup dir parser tests"},{"commit":"0ee4a6c377321cf6ff67ced38e9a07a8f6313943","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":207,"deletions":460,"files":["docs/parsers/dir.md","jc/parsers/dir.py"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":316},{"name":"jc/parsers/dir.py","lines_changed":351}]},"message":"update schema and add epoch naive timestamp"},{"commit":"283433578dfc3f132ef35727ce5bafb3e390896c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":46,"deletions":0,"files":["EXAMPLES.md","README.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":45},{"name":"README.md","lines_changed":1}]},"message":"add dir parser"},{"commit":"9559c85057308e8815d4654bbe0062a5858c0b2b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":0,"files":["jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":1},{"name":"tests/test_utils.py","lines_changed":2}]},"message":"add windows dir format"},{"commit":"c5c020f5654038dacba542be3784a35d7333cbcc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docs/parsers/dir.md"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":1}]},"message":"add /S option"},{"commit":"95ec79bceb3d0c4245e36b7b16cfda6e16b01197","merge":"8f8be8a 5b60c74","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #107 from rasheed-rd/add-dir-parser"},{"commit":"8f8be8aa33f0b708ebd9a35c6b288572443d7181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4}]},"message":"add -1 option info"},{"commit":"5b60c7445a3f8bd2ae1587aa0ffaeaf093966f9a","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","stats":{"files_changed":5,"insertions":469,"deletions":400,"files":["docs/parsers/dir.md","jc/parsers/dir.py","tests/fixtures/windows-10/dir-S.json","tests/fixtures/windows-10/dir-S.out","tests/test_dir.py"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":404},{"name":"jc/parsers/dir.py","lines_changed":405},{"name":"tests/fixtures/windows-10/dir-S.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-S.out","lines_changed":47},{"name":"tests/test_dir.py","lines_changed":12}]},"message":"Add support for /S and update documentation"},{"commit":"d9dbcc8b526c8de9c6d12ac580880fd606dc68cf","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","stats":{"files_changed":15,"insertions":149,"deletions":73,"files":["docs/parsers/dir.md","jc/parsers/dir.py","tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-Q.json","tests/fixtures/windows-10/dir-Q.out","tests/fixtures/windows-10/dir-dirs.json","tests/fixtures/windows-10/dir-dirs.out","tests/fixtures/windows-10/dir-files.json","tests/fixtures/windows-10/dir-files.out","tests/fixtures/windows-10/dir-mix.json","tests/fixtures/windows-10/dir-mix.out","tests/fixtures/windows-10/dir-raw.json","tests/fixtures/windows-10/dir.json","tests/test_dir.py"],"file_stats":[{"name":"docs/parsers/dir.md","lines_changed":24},{"name":"jc/parsers/dir.py","lines_changed":59},{"name":"tests/fixtures/windows-10/dir-C.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-ODTC.json","lines_changed":2},{"name":"tests/fixtures/windows-10/dir-Q.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-Q.out","lines_changed":21},{"name":"tests/fixtures/windows-10/dir-dirs.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-dirs.out","lines_changed":19},{"name":"tests/fixtures/windows-10/dir-files.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-files.out","lines_changed":16},{"name":"tests/fixtures/windows-10/dir-mix.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-mix.out","lines_changed":22},{"name":"tests/fixtures/windows-10/dir-raw.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir.json","lines_changed":2},{"name":"tests/test_dir.py","lines_changed":50}]},"message":"Add parent dir to structure. Add test cases. Remove support for /Q"},{"commit":"79bc525970b38dea68b4859ac5dd32fc681e5994","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":1},{"name":"jc/parsers/dpkg_l.py","lines_changed":1}]},"message":"add codes field to schema"},{"commit":"9dae1091ddc6141694ebfdc5ae649582cb879ccd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":6},{"name":"jc/parsers/dpkg_l.py","lines_changed":4}]},"message":"typo fix"},{"commit":"74d3ac686a69518c1048260e37a0245ff254ff57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":61,"deletions":0,"files":["tests/fixtures/ubuntu-18.04/dpkg-l-codes.json","tests/fixtures/ubuntu-18.04/dpkg-l-columns500.json","tests/fixtures/ubuntu-18.04/dpkg-l.json","tests/test_dpkg_l.py"],"file_stats":[{"name":"tests/fixtures/ubuntu-18.04/dpkg-l-codes.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l-columns500.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l.json","lines_changed":1},{"name":"tests/test_dpkg_l.py","lines_changed":58}]},"message":"add dpkg-l tests"},{"commit":"cf3cc636badcf4ae6db1e5ee5e57ca0331ee5b0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add dpkg-l parser info"},{"commit":"a720441e1d34771c5a54876cb7dd63fb8c9f408e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":54,"deletions":0,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":54}]},"message":"add dpkg -l example"},{"commit":"0a7ed0959df07e2f36d9ec3ca8c294cfdaf10396","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":5,"files":["docs/parsers/dpkg_l.md","jc/parsers/dpkg_l.py"],"file_stats":[{"name":"docs/parsers/dpkg_l.md","lines_changed":4},{"name":"jc/parsers/dpkg_l.py","lines_changed":6}]},"message":"rename err to error"},{"commit":"eb83c9b86dc6d1ff15efed30993071834b65a7d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":21,"files":["docs/utils.md"],"file_stats":[{"name":"docs/utils.md","lines_changed":29}]},"message":"replace parse_datetime_to_timestamp with timestamp class"},{"commit":"5c0142dd19eee14f4f1c287f0543e29824f9ae70","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":1797,"deletions":2,"files":["CHANGELOG","docgen.sh","docs/parsers/dpkg_l.md","jc/cli.py","jc/parsers/dpkg_l.py","jc/parsers/universal.py","tests/fixtures/ubuntu-18.04/dpkg-l-codes.out","tests/fixtures/ubuntu-18.04/dpkg-l-columns500.out","tests/fixtures/ubuntu-18.04/dpkg-l.out"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/dpkg_l.md","lines_changed":170},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/dpkg_l.py","lines_changed":247},{"name":"jc/parsers/universal.py","lines_changed":4},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l-codes.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l-columns500.out","lines_changed":677},{"name":"tests/fixtures/ubuntu-18.04/dpkg-l.out","lines_changed":677}]},"message":"add dpkg-l parser"},{"commit":"c326c8dc8356b55bba13864156adf30607205ece","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":18,"insertions":194,"deletions":1,"files":["jc/parsers/time.py","tests/fixtures/osx-10.14.6/time-l.json","tests/fixtures/osx-10.14.6/time-l.out","tests/fixtures/osx-10.14.6/time-lp.json","tests/fixtures/osx-10.14.6/time-lp.out","tests/fixtures/osx-10.14.6/time-p.json","tests/fixtures/osx-10.14.6/time-p.out","tests/fixtures/osx-10.14.6/time.json","tests/fixtures/osx-10.14.6/time.out","tests/fixtures/ubuntu-18.04/time-p.json","tests/fixtures/ubuntu-18.04/time-p.out","tests/fixtures/ubuntu-18.04/time-verbose.json","tests/fixtures/ubuntu-18.04/time-verbose.out","tests/fixtures/ubuntu-18.04/time.json","tests/fixtures/ubuntu-18.04/time.out","tests/fixtures/ubuntu-18.04/time2.json","tests/fixtures/ubuntu-18.04/time2.out","tests/test_time.py"],"file_stats":[{"name":"jc/parsers/time.py","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/time-l.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/time-l.out","lines_changed":15},{"name":"tests/fixtures/osx-10.14.6/time-lp.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/time-lp.out","lines_changed":17},{"name":"tests/fixtures/osx-10.14.6/time-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/time-p.out","lines_changed":3},{"name":"tests/fixtures/osx-10.14.6/time.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/time.out","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time-p.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/time-verbose.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time-verbose.out","lines_changed":23},{"name":"tests/fixtures/ubuntu-18.04/time.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/time2.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/time2.out","lines_changed":2},{"name":"tests/test_time.py","lines_changed":118}]},"message":"add TypeError to except block. add /usr/bin/time tests"},{"commit":"fc4082a03feb5645a1ad687908782a2584a58956","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":131,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":131}]},"message":"remove old parse_datetime_to_timestamp function"},{"commit":"c8655565ff8718f0f14d41696b81e6539529dde1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"use new timestamp class"},{"commit":"638f879f16c9e87edb60953f4fd0b1c7ad92f277","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":5}]},"message":"use new timestamp class"},{"commit":"1d221bf7e6128d57bd769c0fe8f37f7a94da8cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/who.py","lines_changed":3}]},"message":"use new timestamp class"},{"commit":"60ea71f0ef931dccf09e6eb0cb737ddad0b47f0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/timedatectl.py"],"file_stats":[{"name":"jc/parsers/timedatectl.py","lines_changed":3}]},"message":"use new timestamp class"},{"commit":"d8bdd35a3f462efcdc871426309299e8aefb0a79","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":5}]},"message":"use new timestamp class"},{"commit":"7463891c53f3670710dfa72ed1422431c274fe4a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":6}]},"message":"use new timestamp class"},{"commit":"7537aec76fa07384c4439f34c50d4e3f001c0dfa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":8,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":16}]},"message":"use jc.utils.timestamp instead of jc.utils.parse_datetime_to_timestamp()"},{"commit":"62234e39a8533362a20f106c64326ed69f430006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":8,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":13}]},"message":"use jc.utils.timestamp instead of jc.utils.parse_datetime_to_timestamp()"},{"commit":"be004b7b3fe9217160c6418907e7d8aad10e5fae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":172,"deletions":15,"files":["jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":155},{"name":"tests/test_utils.py","lines_changed":32}]},"message":"make parse_datetime_to_timestamp function a class called timestamp for easier use"},{"commit":"82539444b24169b2eb762485ed032fc968a81f71","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":23,"deletions":21,"files":["docs/parsers/time.md","jc/parsers/time.py"],"file_stats":[{"name":"docs/parsers/time.md","lines_changed":1},{"name":"jc/parsers/time.py","lines_changed":43}]},"message":"fix indentation for int and float conversions. add real_time field to schema"},{"commit":"a571d3cbafd5048d1d59070e1791398ae410197f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/time.md","jc/parsers/time.py"],"file_stats":[{"name":"docs/parsers/time.md","lines_changed":2},{"name":"jc/parsers/time.py","lines_changed":2}]},"message":"fix typo"},{"commit":"a038c14c23ea27264df61a38e0301de8d1fa1b9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":8,"deletions":8,"files":["EXAMPLES.md","docs/parsers/time.md","jc/parsers/time.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":4},{"name":"jc/parsers/time.py","lines_changed":10}]},"message":"change microseconds to centiseconds"},{"commit":"25a85d874cd2b57a7700b0c2dca61132127732b1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"update docs"},{"commit":"884c36ff42df4f580c8e2b4705def8e4c1182e39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":536,"deletions":1,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","docs/parsers/iw_scan.md","docs/parsers/time.md","jc/cli.py","jc/parsers/time.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":36},{"name":"README.md","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"docs/parsers/time.md","lines_changed":163},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/time.py","lines_changed":332}]},"message":"add /usr/bin/time parser"},{"commit":"b98e72b8b4eda0ab5ede7725226e61634af572eb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add ls parser info"},{"commit":"05885c0096b5ee142ecff2d17e37c446518998a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":931,"deletions":18,"files":["docs/parsers/ls.md","jc/parsers/ls.py","tests/fixtures/ubuntu-18.04/ls-l-iso.json","tests/fixtures/ubuntu-18.04/ls-l-iso.out","tests/test_ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":22},{"name":"jc/parsers/ls.py","lines_changed":31},{"name":"tests/fixtures/ubuntu-18.04/ls-l-iso.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-l-iso.out","lines_changed":883},{"name":"tests/test_ls.py","lines_changed":12}]},"message":"add epoch and epoch_utc timestamps"},{"commit":"4c9761231af897658c3a2c0abcc476aa8b43d1b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":118,"deletions":81,"files":["CHANGELOG","EXAMPLES.md","README.md","docs/parsers/dig.md","jc/parsers/dig.py","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":46},{"name":"README.md","lines_changed":14},{"name":"docs/parsers/dig.md","lines_changed":50},{"name":"jc/parsers/dig.py","lines_changed":56},{"name":"tests/fixtures/centos-7.7/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig-x.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/dig.json","lines_changed":2},{"name":"tests/fixtures/generic/dig-answer-spaces.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/dig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig-x.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/dig.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-aaaa.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-axfr.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig-x.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dig.json","lines_changed":2}]},"message":"add when_epoch and when_epoch_utc fields"},{"commit":"656eaa150861948091ef9d6323805c2698039bc6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"1560dcddcf82f55fffce22d1b46d372b25a9d0fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"add acpi, upower parsers and -v version option"},{"commit":"08d4cd4870c7acaf3a453d1400b64d77d462437b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":114,"deletions":43,"files":["EXAMPLES.md","docs/parsers/acpi.md","jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.json","tests/fixtures/generic/acpi-V2.json","tests/fixtures/generic/acpi-V3.json","tests/fixtures/generic/acpi-V4.json"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":34},{"name":"docs/parsers/acpi.md","lines_changed":50},{"name":"jc/parsers/acpi.py","lines_changed":65},{"name":"tests/fixtures/generic/acpi-V.json","lines_changed":2},{"name":"tests/fixtures/generic/acpi-V2.json","lines_changed":2},{"name":"tests/fixtures/generic/acpi-V3.json","lines_changed":2},{"name":"tests/fixtures/generic/acpi-V4.json","lines_changed":2}]},"message":"add time calculations to acpi parser"},{"commit":"9767a50cededb140575e195abf79ce49c4f53789","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":48,"deletions":46,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/who.md","jc/parsers/who.py","jc/utils.py","tests/fixtures/centos-7.7/who-a.json","tests/fixtures/centos-7.7/who.json","tests/fixtures/osx-10.14.6/who-a.json","tests/fixtures/osx-10.14.6/who.json","tests/fixtures/ubuntu-18.04/who-a.json","tests/fixtures/ubuntu-18.04/who.json","tests/test_utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":37},{"name":"docs/parsers/who.md","lines_changed":18},{"name":"jc/parsers/who.py","lines_changed":23},{"name":"jc/utils.py","lines_changed":1},{"name":"tests/fixtures/centos-7.7/who-a.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/who.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/who-a.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/who.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/who-a.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/who.json","lines_changed":2},{"name":"tests/test_utils.py","lines_changed":2}]},"message":"update who parser to add epoch naive timestamp"},{"commit":"cd86890ed1493644e391e52e33561e9a77631a51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"add website to info and use variables for version info"},{"commit":"ba0dd3b9ca98a042c772898302fcfe5fdc84f79a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":4}]},"message":"add parse_timedate_to_timestamp test for format 7300"},{"commit":"8d7fa07ffd50f38336a448eb506a76d9d4849a6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":11,"files":["tests/fixtures/centos-7.7/timedatectl.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/timedatectl.json","lines_changed":12}]},"message":"unformat json"},{"commit":"cade1bfe6e56b5926898b7204e911885efebd5a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":2,"files":["tests/fixtures/centos-7.7/timedatectl.json","tests/fixtures/ubuntu-18.04/timedatectl.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/timedatectl.json","lines_changed":12},{"name":"tests/fixtures/ubuntu-18.04/timedatectl.json","lines_changed":2}]},"message":"update timedatectl tests for new epoch_utc field"},{"commit":"daec4ab0a7f572e872b27b043d51f68e5e06300f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":20,"deletions":4,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/timedatectl.md","jc/parsers/timedatectl.py","jc/utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"EXAMPLES.md","lines_changed":3},{"name":"docs/parsers/timedatectl.md","lines_changed":6},{"name":"jc/parsers/timedatectl.py","lines_changed":11},{"name":"jc/utils.py","lines_changed":1}]},"message":"add epoch_utc field to timedatectl parser"},{"commit":"3c96bc319615c824a06c388e9e3c1d68a9bf4084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":2}]},"message":"version bump"},{"commit":"7f7d8d4bd6f37015b11bac60a7bd99e8d3eca108","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":0,"files":["docs/parsers/stat.md","jc/parsers/stat.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":4}]},"message":"update stat docs"},{"commit":"47263661a41987f334fd484e866e0aa8859cde5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":2,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":20}]},"message":"update stat example"},{"commit":"4c42a086d206919dfe4f1c0801fe4fb1027cb1cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":6,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":7}]},"message":"clean up debug code"},{"commit":"5d2541a5c4bc93f3943a491c76df7f8d4e2cf44b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":5}]},"message":"remove auto c locale and use a manual format rule for windows and linux compatibility"},{"commit":"d91d170b49bfc88c0b2fb54475705c038172f1c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"try manual c locale format for windows"},{"commit":"6d1f4584a9ccd0f0f7ed4fdf408576a9e7f5046b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":4}]},"message":"try manually setting time format for windows compatibility"},{"commit":"1d76d96bcf4185cffb7066bec637913099399db5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":4}]},"message":"debug windows issue"},{"commit":"e8847c998c91131acf5ee0f6485e9976c0fce3ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["tests/fixtures/centos-7.7/stat.json","tests/fixtures/freebsd12/stat.json","tests/fixtures/osx-10.14.6/stat.json","tests/fixtures/ubuntu-18.04/stat.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/stat.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/stat.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/stat.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/stat.json","lines_changed":2}]},"message":"update stat tests"},{"commit":"da88e49bae2f3fecff623f52c20bf994b653583e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":69,"deletions":29,"files":["docs/parsers/stat.md","jc/parsers/stat.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":76},{"name":"jc/parsers/stat.py","lines_changed":22}]},"message":"add new examples"},{"commit":"65c3a12e5422782df40489c3c431677f5657dbf5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":35,"deletions":24,"files":["jc/parsers/stat.py","jc/utils.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":58},{"name":"jc/utils.py","lines_changed":1}]},"message":"simplify None data scenario"},{"commit":"d8d600cc36bde4e6216b935f87a765599e896714","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add reference to -h for help"},{"commit":"507999b117b024fed1ccf067bd5dc411dbeb268c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":34,"deletions":19,"files":["docs/utils.md","jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":32},{"name":"jc/utils.py","lines_changed":13},{"name":"tests/test_utils.py","lines_changed":8}]},"message":"add stat command timestamp detection"},{"commit":"8ad164eb340e135eeeb10b721172916182f37e30","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":6}]},"message":"fix tests for compact output"},{"commit":"a507df140b245b83b1c46e8462b44e1145c42f2a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add compact json info"},{"commit":"8912a99986a977ee6ca7bbe2368f5033644577b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"make default json output more compact"},{"commit":"1953f9882890cd0e8c515d43ce28c96f918b0ab4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":4}]},"message":"add version info. add json now supports unicode output"},{"commit":"7515218ddd2cdcfcebd67850140e842f2f121226","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":10,"deletions":14,"files":["jc/cli.py","jc/utils.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8},{"name":"jc/utils.py","lines_changed":16}]},"message":"use jc.utils for all warning and error messages. simply error and warning formatting."},{"commit":"36c11201366cefedee4244fb71a4a9cc6507e6ae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"formatting"},{"commit":"8fa0fe64d8418093c7f28cdc70a7f409956aeb04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":10}]},"message":"add -v to helptext. minor formatting"},{"commit":"c1a8201b140c65579ff9f8427322b67653bf3006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":4}]},"message":"add copyright"},{"commit":"398bbac48c8a716b1872843d671aa6ceaeba6a78","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"simplify return value for parse_datetime_to_timestamp()"},{"commit":"ea71a42bbdd9b09a457727cfe763054625f7901a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"formatting"},{"commit":"1c16d25b17a7282a62a5ebd9755df5569c57435f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":30,"deletions":9,"files":["README.md","jc/cli.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"jc/cli.py","lines_changed":35}]},"message":"add version option (-v) and copyright information. add 'ensure_ascii=False' to json dumps to properly show UTF-8 copyright character"},{"commit":"9d12ded889f656656267cbf7a91d71267201f736","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"help description change"},{"commit":"5312701515ecb3a10598bb9dcf2f73b7eae71b93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add - make all external python requirements optional"},{"commit":"808c7bc0a94ecfd160ee2b257e5feec347829a5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/xml.py"],"file_stats":[{"name":"jc/parsers/xml.py","lines_changed":10}]},"message":"make xmltodict library optional"},{"commit":"4d394015f458f284d052ce2c1a0c8492916c5b3e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":10}]},"message":"make ruamel.yaml library optional"},{"commit":"3638298af8ebc01d54aa3ab5668d0adedca957e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":53,"deletions":44,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":97}]},"message":"make pygments library optional"},{"commit":"5f00973e400629bd68c0ab60ed9005410278f855","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":2}]},"message":"remove parenthesis to normalize text for naive timezone detection"},{"commit":"0f6e2c14fcb69f664c29083ec5207326f842dfdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":5,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":9}]},"message":"simplify timestamp failure logic"},{"commit":"51813da61994226ba40478825d47f80c23413349","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":4,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":13}]},"message":"add offset timezones. fix timestamp logic on conversion failure"},{"commit":"e7751322ea195cac7f1921ba8e0364c442065d20","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":10}]},"message":"formatting"},{"commit":"26ef29843784ade3d55410be13300dd6f4c06890","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":6,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":16}]},"message":"change return to always include the entire object but all keys may be None if conversion fails"},{"commit":"badaf8ce73d7deb0ec2be244e27b4bf8cddbea19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":14,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":28}]},"message":"comment formatting"},{"commit":"b123a622039f3cc32643a3bfc0766154d660f8bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":9}]},"message":"move locale change formats to the end of the list"},{"commit":"cfd77e42522aa2ebeada9f45ac99bd1d3414f782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":1}]},"message":"reset locale to None on exception"},{"commit":"38f814072eac5370059f1b4203316eee41cf535b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":8,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":34}]},"message":"better normalization of datetime string. better UTC detection. More formats supported with detected locale."},{"commit":"a0db7754e384a0c95f2099bf894f3a22bd33c002","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add nixos install info"},{"commit":"f07620afc7dc0d0d605eb483ef36c5979b33cdfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":18,"deletions":7,"files":["README.md","jc/__init__.py","jc/cli.py"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"jc/__init__.py","lines_changed":3},{"name":"jc/cli.py","lines_changed":21}]},"message":"move version to jc.__init__.py\nadd -h option for help instead of always showing on error\nuse jc.utils.error_message for the following errors: missing/incorrect arguments, parser not found, missing piped data"},{"commit":"c1b0d27752726989c6051f683a1194941bee598c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":10,"files":["runtests.sh"],"file_stats":[{"name":"runtests.sh","lines_changed":10}]},"message":"remove old commented commands"},{"commit":"430a5108aa265d4df0e4584eade54759da864c61","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":19,"deletions":60,"files":["runtests.sh","tests/test_last.py","tests/test_last2.py"],"file_stats":[{"name":"runtests.sh","lines_changed":16},{"name":"tests/test_last.py","lines_changed":23},{"name":"tests/test_last2.py","lines_changed":40}]},"message":"move all tests to github actions"},{"commit":"111ce92fc9c33b82c7d1a1664dda046ea5993f6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":0,"deletions":1,"files":["tests/{localtest_date.py => test_date.py}","tests/{localtest_last.py => test_last2.py}","tests/{localtest_upower.py => test_upower.py}","tests/test_utils.py"],"file_stats":[{"name":"tests/{localtest_date.py => test_date.py}","lines_changed":0},{"name":"tests/{localtest_last.py => test_last2.py}","lines_changed":0},{"name":"tests/{localtest_upower.py => test_upower.py}","lines_changed":0},{"name":"tests/test_utils.py","lines_changed":1}]},"message":"attempt all tests in github actions with timezone correction"},{"commit":"c851e8a58d98b2a4907cf1e7cf7c7d8d8dc04dc6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":1}]},"message":"force github action"},{"commit":"39f4bcd9b41450068903ea2843508586eccdf709","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"Change Windows timezone"},{"commit":"4a610c4c81493788b8351e8c74aabe819c981c02","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":1}]},"message":"force github action"},{"commit":"89ee11945d4e2db107a33ef0d61e0c6015ac8ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"Change timezone provider"},{"commit":"dadb09b74a69d1852f8433e0e32ccdd67bd91181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_utils.py"],"file_stats":[{"name":"tests/test_utils.py","lines_changed":1}]},"message":"force github action"},{"commit":"1b1f638b97dc5e6f2767183eb363b79ae3c9b3c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":3,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":8}]},"message":"Change timezone change provider"},{"commit":"794fc4ed44d1565514303090403d68ba5d639cb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":36,"deletions":8,"files":["jc/utils.py","tests/test_utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":16},{"name":"tests/test_utils.py","lines_changed":28}]},"message":"add parse_datetime_to_timestamp() tests"},{"commit":"72f735bf9211d7beddcf58819fe465722f5d7c5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":4}]},"message":"Set Timezone to America/Los_Angeles"},{"commit":"912877f25ad562ed4cafe7b2d7446bd48b477ea2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"additional timezone info"},{"commit":"2772c5ae436ea437d833003372d53a3d3f955ea0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"formatting"},{"commit":"a7ad24d2cb61d84cf2846f8fa43af31f0597043e","author":"Rasheed Elsaleh","author_email":"rasheed@rebelliondefense.com","stats":{"files_changed":13,"insertions":772,"deletions":0,"files":["docgen.sh","docs/parsers/dir.md","jc/cli.py","jc/parsers/dir.py","tests/fixtures/windows-10/dir-C.json","tests/fixtures/windows-10/dir-C.out","tests/fixtures/windows-10/dir-ODTC.json","tests/fixtures/windows-10/dir-ODTC.out","tests/fixtures/windows-10/dir-Q.json","tests/fixtures/windows-10/dir-Q.out","tests/fixtures/windows-10/dir.json","tests/fixtures/windows-10/dir.out","tests/test_dir.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/dir.md","lines_changed":286},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/dir.py","lines_changed":332},{"name":"tests/fixtures/windows-10/dir-C.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-C.out","lines_changed":21},{"name":"tests/fixtures/windows-10/dir-ODTC.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-ODTC.out","lines_changed":21},{"name":"tests/fixtures/windows-10/dir-Q.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir-Q.out","lines_changed":21},{"name":"tests/fixtures/windows-10/dir.json","lines_changed":1},{"name":"tests/fixtures/windows-10/dir.out","lines_changed":21},{"name":"tests/test_dir.py","lines_changed":64}]},"message":"Add dir parser"},{"commit":"a364a6a9faeb6aa290b790f3dec74e92b8670534","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"add note regarding calculated timestamps"},{"commit":"7b2dc86a8d974e7984fe2540f56a66c2b9386acd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":19,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":42}]},"message":"update last example with new timestamp fields"},{"commit":"ad645636d07d0423253f19068a22b2a28251b05f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":86,"deletions":50,"files":["CHANGELOG","EXAMPLES.md","README.md","docs/parsers/uptime.md","jc/parsers/uptime.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":9},{"name":"EXAMPLES.md","lines_changed":19},{"name":"README.md","lines_changed":19},{"name":"docs/parsers/uptime.md","lines_changed":50},{"name":"jc/parsers/uptime.py","lines_changed":39}]},"message":"update uptime docs"},{"commit":"2f2f297b29fbe3172647a81db084b3564a441d40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["tests/fixtures/centos-7.7/uptime.json","tests/fixtures/osx-10.11.6/uptime.json","tests/fixtures/osx-10.14.6/uptime.json","tests/fixtures/ubuntu-18.04/uptime.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/uptime.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/uptime.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/uptime.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/uptime.json","lines_changed":2}]},"message":"update uptime fixtures with new fields"},{"commit":"099ae3fde03f8157298f6b412bdddb8bd56da09a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":22,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":48}]},"message":"fix issue when there is no data"},{"commit":"e9febe98ac5ec0e03791c5b6794446a2c3312fb1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["runtests.sh"],"file_stats":[{"name":"runtests.sh","lines_changed":2}]},"message":"add localtest partition lines for readability"},{"commit":"5fbd07cccf9fb697b996dcc3949eef5b1c09e655","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":59,"deletions":26,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":85}]},"message":"rewrite of uptime parser including new fields"},{"commit":"5fed4698c2c1f1b7e05c5b4c51639f818e049b53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":6,"files":["docs/parsers/last.md","jc/parsers/last.py"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":4},{"name":"jc/parsers/last.py","lines_changed":7}]},"message":"update docs and version number"},{"commit":"ed7eb0983a4dfcc1d66a2957be3e10b2203d909e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":8}]},"message":"use parse_datetime_to_timestamp function instead of custom format string"},{"commit":"90c7e18e5fc5ea9fcf6157cc2656f47193d78411","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":11,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":27}]},"message":"update date example"},{"commit":"953ab5c3bd0c8b6eef29b717edaf1aa2380c2b93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":0,"files":["runtests.sh","tests/{test_upower.py => localtest_upower.py}"],"file_stats":[{"name":"runtests.sh","lines_changed":1},{"name":"tests/{test_upower.py => localtest_upower.py}","lines_changed":0}]},"message":"make upower tests local only"},{"commit":"699c97d8a07f7575454746159ac4d19981cd1a5c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"add last parser info"},{"commit":"e4ca0de92a689ce93b91d86106a5da590226855a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":100,"deletions":0,"files":["tests/fixtures/generic/upower-i-c-locale.json","tests/fixtures/generic/upower-i-non-utc.json","tests/fixtures/generic/upower-i-utc.json",".../{upower-i-utc.out2 => upower-i-utc.out}","tests/fixtures/ubuntu-18.04/upower-d-clocale.json","tests/fixtures/ubuntu-18.04/upower-d.json","tests/fixtures/ubuntu-18.04/upower-i.json","tests/test_upower.py"],"file_stats":[{"name":"tests/fixtures/generic/upower-i-c-locale.json","lines_changed":1},{"name":"tests/fixtures/generic/upower-i-non-utc.json","lines_changed":1},{"name":"tests/fixtures/generic/upower-i-utc.json","lines_changed":1},{"name":".../{upower-i-utc.out2 => upower-i-utc.out}","lines_changed":0},{"name":"tests/fixtures/ubuntu-18.04/upower-d-clocale.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/upower-d.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/upower-i.json","lines_changed":1},{"name":"tests/test_upower.py","lines_changed":94}]},"message":"add upower tests"},{"commit":"04745a36b84cc79e56bde2a0e92a4ee9ab4a1538","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":5,"files":["CHANGELOG","jc/utils.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":12},{"name":"jc/utils.py","lines_changed":1}]},"message":"doc update"},{"commit":"5936940532b8b753e67c9f5cd9287f34cc84ae9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":136,"deletions":186,"files":["docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date-after-midnight.json","tests/fixtures/generic/date-before-midnight.json","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/fixtures/ubuntu-20.04/date2.json"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":74},{"name":"jc/parsers/date.py","lines_changed":238},{"name":"tests/fixtures/generic/date-after-midnight.json","lines_changed":2},{"name":"tests/fixtures/generic/date-before-midnight.json","lines_changed":2},{"name":"tests/fixtures/generic/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date2.json","lines_changed":2}]},"message":"rewrite of date parser using datetime library"},{"commit":"b3eb064b6753d6e894884e1c16054630c2396fe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":4}]},"message":"clarify format definition comments"},{"commit":"e4b41057e302074ac2a81ad8c36b6f95cd6b7db2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":24,"deletions":0,"files":[".../{upower-i.out => upower-i-c-locale.out}","tests/fixtures/generic/upower-i-non-utc.out",".../generic/{upower-i2.out => upower-i-utc.out2}"],"file_stats":[{"name":".../{upower-i.out => upower-i-c-locale.out}","lines_changed":0},{"name":"tests/fixtures/generic/upower-i-non-utc.out","lines_changed":24},{"name":".../generic/{upower-i2.out => upower-i-utc.out2}","lines_changed":0}]},"message":"update upower fixture names"},{"commit":"1d41c46cc762ab0c78b819e56db7df39f1111d5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":34,"deletions":5,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":39}]},"message":"normalize datetime string to remove all timezones except UTC"},{"commit":"a5c444587b3f0874fcc2833dc4e759c2dc1c7834","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":28,"deletions":0,"files":["tests/fixtures/generic/date-after-midnight.json","tests/fixtures/generic/date-after-midnight.out","tests/fixtures/generic/date-before-midnight.json","tests/fixtures/generic/date-before-midnight.out","tests/localtest_date.py"],"file_stats":[{"name":"tests/fixtures/generic/date-after-midnight.json","lines_changed":1},{"name":"tests/fixtures/generic/date-after-midnight.out","lines_changed":1},{"name":"tests/fixtures/generic/date-before-midnight.json","lines_changed":1},{"name":"tests/fixtures/generic/date-before-midnight.out","lines_changed":1},{"name":"tests/localtest_date.py","lines_changed":24}]},"message":"add before and after midnight date tests"},{"commit":"a56f471be980be16e73d3a91e2b12aad26c6d38c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/fixtures/generic/upower-i2.out"],"file_stats":[{"name":"tests/fixtures/generic/upower-i2.out","lines_changed":2}]},"message":"update fixture to use UTC for better testing"},{"commit":"6a6b26ed8d97014c2a5c7d91a4cd9b23f49530fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":5}]},"message":"fix 12 to 24 hour conversion for midnight cases"},{"commit":"f62446c152d89f2d37b22ffe9d9de5b5c9fa7049","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":10,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":21}]},"message":"rename variables. add another european time format"},{"commit":"56011f1f172344cab2a8e869e7a6df6e45c45874","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":73,"deletions":6,"files":["EXAMPLES.md","docs/parsers/upower.md","jc/parsers/upower.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":63},{"name":"docs/parsers/upower.md","lines_changed":8},{"name":"jc/parsers/upower.py","lines_changed":8}]},"message":"updated upower examples"},{"commit":"6d44091c80318fde6c09cd850e6dc5afde7fe799","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":53,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":66}]},"message":"refactor parse_datetime_to_timestamp()"},{"commit":"440c458eb42925dffe2d7b026279468fa2fa1bb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"no need for ternary clause"},{"commit":"798250af6116441385339806c8f26bc9720ad302","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":18,"deletions":24,"files":["docs/parsers/upower.md","jc/parsers/upower.py"],"file_stats":[{"name":"docs/parsers/upower.md","lines_changed":7},{"name":"jc/parsers/upower.py","lines_changed":35}]},"message":"use jc.utils.parse_datetime_to_timestamp() function for timestamp creation"},{"commit":"c762de29c6491790908451aa20f6aa12fdfa9722","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":32,"deletions":2,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":30},{"name":"jc/utils.py","lines_changed":4}]},"message":"doc updates"},{"commit":"0701e65e97165efd40ab2ae5087897de3588ea32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":106,"deletions":0,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":106}]},"message":"add parse_datetime_to_timestamp() function"},{"commit":"209d54e8b5be6476d896cee1a5274bd2b46219e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":5},{"name":"jc/parsers/date.py","lines_changed":5}]},"message":"add hour_24 to schema docs"},{"commit":"2b38462de7d2fa61dd5d2a184e853279f1a9c84b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":33,"deletions":27,"files":["EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":20},{"name":"docs/parsers/date.md","lines_changed":20},{"name":"jc/parsers/date.py","lines_changed":20}]},"message":"update examples"},{"commit":"1e8e5533162cb01053ee25e9dbc709a429e58070","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":31,"deletions":14,"files":["CHANGELOG","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/fixtures/ubuntu-20.04/date2.json","tests/localtest_date.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/date.py","lines_changed":21},{"name":"tests/fixtures/generic/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date2.json","lines_changed":1},{"name":"tests/localtest_date.py","lines_changed":16}]},"message":"add hour_24 field"},{"commit":"ab42e6bb15026d6c46e15197c62bc3e8ef95c80d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":1},{"name":"jc/parsers/date.py","lines_changed":1}]},"message":"formatting"},{"commit":"680288454090f3c48c7f0580cdcb919c0b5a883e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":3,"files":["docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":4}]},"message":"ensure period is always uppercase in dict value. update period documentation"},{"commit":"7cb8577b9655f258f2910e7e7bcf3266d4cbece0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":70,"deletions":48,"files":["docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/ubuntu-20.04/date2.out"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":36},{"name":"jc/parsers/date.py","lines_changed":81},{"name":"tests/fixtures/ubuntu-20.04/date2.out","lines_changed":1}]},"message":"correct epoch_utc calculation. Fix for 12 hour vs. 24 hour representation"},{"commit":"55810ccd1f17ef6a4b1cb72fc21f6cf990ef8bb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":1}]},"message":"set epoch_dt conversion again if not C locale"},{"commit":"f9921720cd0b9b0d76d66e6eb5bfe43481f5f52b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":4,"deletions":94,"files":["runtests.sh","tests/test_date.py","tests/test_last2.py"],"file_stats":[{"name":"runtests.sh","lines_changed":8},{"name":"tests/test_date.py","lines_changed":48},{"name":"tests/test_last2.py","lines_changed":42}]},"message":"revert to local testing for naive datetime objects"},{"commit":"cda1ebd271aa8fd1b716054a2149f876d8087230","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["tests/test_date.py","tests/test_last2.py"],"file_stats":[{"name":"tests/test_date.py","lines_changed":2},{"name":"tests/test_last2.py","lines_changed":2}]},"message":"try tzset()"},{"commit":"6901e4a23aad0b58cbbfac86c61917115d115dfe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":89,"deletions":3,"files":["runtests.sh","tests/test_date.py","tests/test_last2.py"],"file_stats":[{"name":"runtests.sh","lines_changed":6},{"name":"tests/test_date.py","lines_changed":46},{"name":"tests/test_last2.py","lines_changed":40}]},"message":"try setting timezone env variable before tests to ensure it is the same on all test systems"},{"commit":"6bc21d3c735edc7897e49afd2a5ea9e3aa56d7fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":1,"files":["runtests.sh","tests/{test_date.py => localtest_date.py}","tests/localtest_last.py"],"file_stats":[{"name":"runtests.sh","lines_changed":1},{"name":"tests/{test_date.py => localtest_date.py}","lines_changed":0},{"name":"tests/localtest_last.py","lines_changed":1}]},"message":"fix date parser tests - local tests only since timezones may not match on github actions VMs"},{"commit":"1ef231e26a2898d2a01f341fb92014df92703f72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"add date parser updates"},{"commit":"3cd43f0f985a3b8a4e74bf5632bd8dac92d751c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/upower.md","jc/parsers/upower.py"],"file_stats":[{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":2}]},"message":"formatting"},{"commit":"156501996688e62dd61a8456206218582a6cbe1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":85,"deletions":63,"files":["EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":21},{"name":"docs/parsers/date.md","lines_changed":41},{"name":"jc/parsers/date.py","lines_changed":82},{"name":"tests/fixtures/generic/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date.json","lines_changed":2}]},"message":"fix weekday numbering to be ISO 8601 compliant. Add naive calculated epoch timestamp field"},{"commit":"0a4de2d3a1c235d1ac2d6e59346e77761fe51885","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":2,"files":["docs/parsers/last.md","docs/parsers/upower.md"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":5}]},"message":"add naive datetime calculation info to docs"},{"commit":"a058f6c174e31f5e6040883bb544b83abd88c749","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":2}]},"message":"added naive epoch calculation info to docs"},{"commit":"d8e5d03b01a87704424f5259cf6bd977274fd6ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":33,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":53}]},"message":"naive updated_epoch timestamp calculation added"},{"commit":"9dc62eff2eaaafec89c5b8797d8ca8e4c77a07d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":34,"deletions":21,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":55}]},"message":"remove epoch conversions"},{"commit":"d4fea17c57a97d6914624b06208b9439bf2eb05f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":13,"deletions":6,"files":["docgen.sh","docs/parsers/upower.md","jc/parsers/upower.py"],"file_stats":[{"name":"docgen.sh","lines_changed":2},{"name":"docs/parsers/upower.md","lines_changed":2},{"name":"jc/parsers/upower.py","lines_changed":15}]},"message":"use UTC when calculating epoch timestamp. reset time locale to default after changing"},{"commit":"3dd7a5b77ea708047bc12be9f2caddd9078723f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":230,"deletions":0,"files":["docgen.sh","docs/parsers/upower.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/upower.md","lines_changed":229}]},"message":"add upower docs"},{"commit":"d77c90a3ba2036b216f4a612876ace988eafd217","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":114,"deletions":6,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":120}]},"message":"fix quoted values in detail level. Add examples"},{"commit":"01f0c20df09fd4aa12bd108928b97376b51ef31a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":0,"files":["tests/fixtures/ubuntu-18.04/upower-d-clocale.out"],"file_stats":[{"name":"tests/fixtures/ubuntu-18.04/upower-d-clocale.out","lines_changed":27}]},"message":"add sample using C locale timestamp"},{"commit":"aafbe576b3b754de91591d9ec2dae9e9f827dee4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":137,"deletions":36,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":173}]},"message":"working parser and processor"},{"commit":"bd68ad40345fb1f69be0e0f87dc67134f826cd06","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":4}]},"message":"don't modify detail_type value since it is no longer a key"},{"commit":"bfee017c138bb30ec6af836685013b7124028974","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":61,"deletions":20,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":81}]},"message":"made the schema more explicit by hardcoding more items. still working on the schema"},{"commit":"61f532cfd0b7fbf14a58a0fd638bcbfb03fbde72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":12}]},"message":"working history list"},{"commit":"58dbbb75b607d0b29be185c3b8c3f0d8af21ecad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":21,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":30}]},"message":"simplified logic"},{"commit":"8d88b91fcf5060d7d54f687efec3e3a606bab767","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/upower.py"],"file_stats":[{"name":"jc/parsers/upower.py","lines_changed":17}]},"message":"move if statements and generalize the history detail detection"},{"commit":"ad39fc60299089f56f37baac71820e50cbe87ed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":268,"deletions":0,"files":["jc/cli.py","jc/parsers/upower.py","tests/fixtures/generic/upower-i.out","tests/fixtures/generic/upower-i2.out","tests/fixtures/ubuntu-18.04/upower-d.out","tests/fixtures/ubuntu-18.04/upower-i.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/upower.py","lines_changed":173},{"name":"tests/fixtures/generic/upower-i.out","lines_changed":32},{"name":"tests/fixtures/generic/upower-i2.out","lines_changed":24},{"name":"tests/fixtures/ubuntu-18.04/upower-d.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-18.04/upower-i.out","lines_changed":11}]},"message":"working upower parser. history lines are ignored"},{"commit":"89f1fd96e6b7aa0acf6272e4f3469005d4f7c6bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":87,"deletions":0,"files":["tests/fixtures/generic/acpi-V.json","tests/fixtures/generic/acpi-V2.json","tests/fixtures/generic/acpi-V3.json","tests/fixtures/generic/acpi-V4.json","tests/fixtures/ubuntu-18.04/acpi-V.json","tests/test_acpi.py"],"file_stats":[{"name":"tests/fixtures/generic/acpi-V.json","lines_changed":1},{"name":"tests/fixtures/generic/acpi-V2.json","lines_changed":1},{"name":"tests/fixtures/generic/acpi-V3.json","lines_changed":1},{"name":"tests/fixtures/generic/acpi-V4.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/acpi-V.json","lines_changed":1},{"name":"tests/test_acpi.py","lines_changed":82}]},"message":"add acpi tests"},{"commit":"bd425f2493b68949c1fa02cd1d3289ec882d9b0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":321,"deletions":2,"files":["CHANGELOG","EXAMPLES.md","docgen.sh","docs/parsers/acpi.md","jc/cli.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":4},{"name":"EXAMPLES.md","lines_changed":58},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/acpi.md","lines_changed":256},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to v1.15.0. Add acpi docs"},{"commit":"46962ff02a0630766a927babc92e11ec91b1f789","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":11,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":12}]},"message":"remove redundant lines"},{"commit":"e4cb88b05166815e8ad03b646bd3f2b1da7f0d4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":1}]},"message":"remove unneeded line-state assignment"},{"commit":"32840703dc1d88412712b08db1c9bdaebbc34450","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":39,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":47}]},"message":"remove redundant code"},{"commit":"1f7aafd0415a79e0547cc6f1c008c1918f8fb460","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":19,"deletions":9,"files":["jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out","tests/fixtures/generic/acpi-V4.out"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":15},{"name":"tests/fixtures/generic/acpi-V.out","lines_changed":1},{"name":"tests/fixtures/generic/acpi-V4.out","lines_changed":12}]},"message":"fix for full charge batter case. Clean up battery object logic"},{"commit":"7378d5dce43f75440cb57903e8ae0c1c615b0782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":1}]},"message":"remove comment"},{"commit":"84f76866cdf76f67b34de999fd987de8a02f0306","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":197,"deletions":3,"files":["jc/parsers/acpi.py"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":200}]},"message":"working process function"},{"commit":"322da9ea6a1ceea1152d720797adb8f3a7dc1199","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":59,"deletions":12,"files":["jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out"],"file_stats":[{"name":"jc/parsers/acpi.py","lines_changed":67},{"name":"tests/fixtures/generic/acpi-V.out","lines_changed":4}]},"message":"working parser"},{"commit":"58645301ec111bfeb2a618f5f169cc734042dc5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":236,"deletions":1,"files":["jc/cli.py","jc/parsers/acpi.py","tests/fixtures/generic/acpi-V.out","tests/fixtures/generic/acpi-V2.out","tests/fixtures/generic/acpi-V3.out","tests/fixtures/ubuntu-18.04/acpi-V.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/acpi.py","lines_changed":191},{"name":"tests/fixtures/generic/acpi-V.out","lines_changed":16},{"name":"tests/fixtures/generic/acpi-V2.out","lines_changed":12},{"name":"tests/fixtures/generic/acpi-V3.out","lines_changed":13},{"name":"tests/fixtures/ubuntu-18.04/acpi-V.out","lines_changed":2}]},"message":"add acpi command parser"},{"commit":"1e18dd30a824b0463f0cad86e0da7094c47d34f9","merge":"20f9b7f cc6a19a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #102 from kellyjonbrazil/dev"},{"commit":"cc6a19adccea3e10243a166b87d852b6f95414b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"fix typo in comments"},{"commit":"2a5588b177a24d5b78a4b5a515aba515804b7baa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":13,"deletions":3,"files":["CHANGELOG","jc/cli.py","jc/parsers/yaml.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":5},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":7},{"name":"setup.py","lines_changed":2}]},"message":"packaging fix for yaml parser and pyoxidizer"},{"commit":"20f9b7f88b97ed68aba46e102b8c7b72443b9c85","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"fix typo"},{"commit":"d7e32313cd9776b4a6af38cc2819d6e4ef8c0d55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"fix typo"},{"commit":"fb5654d3c4549e84940e2518f2d214debdd42d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"258f1433b36a7ee117ac43953edb4fe964603e7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add locale info to readme"},{"commit":"fb723ae8bd7bb51f9a4bab380ec1bc54cda0445b","merge":"87b506d 283b89e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #101 from kellyjonbrazil/dev"},{"commit":"283b89e37c38a3082203e43e38569c8b0bb11e12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":4,"files":["CHANGELOG","jc/parsers/dig.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/dig.py","lines_changed":6}]},"message":"simplify answer data logic"},{"commit":"f450f9eb8b7d382af316e88301e72af01a018be9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":74,"deletions":0,"files":["tests/fixtures/centos-7.7/hciconfig-a.json","tests/fixtures/centos-7.7/hciconfig.json","tests/fixtures/ubuntu-20.04/hciconfig-a.json","tests/fixtures/ubuntu-20.04/hciconfig.json","tests/test_hciconfig.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/hciconfig-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/hciconfig.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.04/hciconfig-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-20.04/hciconfig.json","lines_changed":1},{"name":"tests/test_hciconfig.py","lines_changed":70}]},"message":"add hciconfig tests"},{"commit":"b3f8cf99a4874335c6b43e105e0c1562c08256dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":15,"deletions":15,"files":["jc/parsers/hciconfig.py"],"file_stats":[{"name":"jc/parsers/hciconfig.py","lines_changed":30}]},"message":"work for both tabs and spaces"},{"commit":"4301ea8caea7c14f59bcddf09668d0198e1115a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/hciconfig.py"],"file_stats":[{"name":"jc/parsers/hciconfig.py","lines_changed":1}]},"message":"remove debug line"},{"commit":"c672d1c174a42ce44544dfaec0ebcf3c30fd7acf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":903,"deletions":22,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","docs/parsers/hciconfig.md","jc/parsers/hciconfig.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"EXAMPLES.md","lines_changed":126},{"name":"README.md","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/hciconfig.md","lines_changed":358},{"name":"jc/parsers/hciconfig.py","lines_changed":414},{"name":"man/jc.1","lines_changed":22}]},"message":"initial working hciconfig parser"},{"commit":"229e953a38471cdd41af0810577d324329840a4b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":205,"deletions":2,"files":["jc/cli.py","jc/parsers/hciconfig.py","setup.py","tests/fixtures/centos-7.7/hciconfig-a.out","tests/fixtures/centos-7.7/hciconfig.out","tests/fixtures/ubuntu-20.04/hciconfig-a.out","tests/fixtures/ubuntu-20.04/hciconfig.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/hciconfig.py","lines_changed":142},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/hciconfig-a.out","lines_changed":10},{"name":"tests/fixtures/centos-7.7/hciconfig.out","lines_changed":6},{"name":"tests/fixtures/ubuntu-20.04/hciconfig-a.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-20.04/hciconfig.out","lines_changed":17}]},"message":"initial add of hciconfig parser"},{"commit":"87b506dc9b4831d11b4fd04fd6849532db074f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":47,"deletions":4,"files":["CHANGELOG","jc/cli.py","jc/parsers/dig.py","setup.py","tests/fixtures/generic/dig-answer-spaces.json","tests/fixtures/generic/dig-answer-spaces.out","tests/test_dig.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":8},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/generic/dig-answer-spaces.json","lines_changed":1},{"name":"tests/fixtures/generic/dig-answer-spaces.out","lines_changed":23},{"name":"tests/test_dig.py","lines_changed":12}]},"message":"fix for spaces in dig answer data"},{"commit":"15c9002d9eff0f52d873fb3ab35dfafd03a8e919","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"simplify logic by taking out 'not' in JC_COLORS parsing"},{"commit":"042aaa61b96fc8472a8a460c49bde4cbbc359094","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"minor updates"},{"commit":"ef856c6ba5774cd8ec23acd71496846e794e3872","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"clarify -q option"},{"commit":"9cf5be73e3f975132d1ffbef412638b941a5664f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"typo fix"},{"commit":"63fc149e2a097cbde60c2ce1aeb102d9becabd9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"typo fix"},{"commit":"3c25839350800c7e7d2c48fc032bb21efa0ac213","merge":"03c0295 58246e3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #98 from kellyjonbrazil/dev"},{"commit":"58246e33b71bae0ca4a42ad5bdf31134948b1014","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["CHANGELOG","README.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":2},{"name":"README.md","lines_changed":3}]},"message":"update compatibility info and changelog date"},{"commit":"8b1407c7068e2105a83992bbb026138ea67bc07c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":59,"deletions":10,"files":["runtests.sh","tests/localtest_last.py","tests/test_last.py"],"file_stats":[{"name":"runtests.sh","lines_changed":6},{"name":"tests/localtest_last.py","lines_changed":41},{"name":"tests/test_last.py","lines_changed":22}]},"message":"pull env-specific tests from CI/CD and run locally only"},{"commit":"2fde4a4e2299b98a9958e3a55849c6791e4b17dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["EXAMPLES.md","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"doc updates"},{"commit":"60b9e9798286121399d0f8b75d63ab0f3312c9bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":80,"deletions":38,"files":["docs/parsers/last.md","jc/parsers/last.py","tests/fixtures/centos-7.7/last-crash.json","tests/fixtures/centos-7.7/last-w.json","tests/fixtures/centos-7.7/last-wF.json","tests/fixtures/centos-7.7/last-wF.out","tests/fixtures/centos-7.7/last.json","tests/fixtures/fedora32/last.json","tests/fixtures/osx-10.14.6/last.json","tests/fixtures/ubuntu-18.04/last-w.json","tests/fixtures/ubuntu-18.04/last.json","tests/fixtures/ubuntu-20.04/last-F.json"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":37},{"name":"jc/parsers/last.py","lines_changed":57},{"name":"tests/fixtures/centos-7.7/last-crash.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/last-w.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/last-wF.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/last-wF.out","lines_changed":6},{"name":"tests/fixtures/centos-7.7/last.json","lines_changed":2},{"name":"tests/fixtures/fedora32/last.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/last.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/last-w.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/last.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/last-F.json","lines_changed":2}]},"message":"last parser enhancements: augment hostname with CONSOLE for GUI login, add convenience fields when -F is used: login_epoch, logout_epoch, duration_seconds, calculate duration to hours:minutes"},{"commit":"0adac79c0f2a22b31dfef1432a029af06132467b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":1}]},"message":"Add last parser enhancements"},{"commit":"9f485b5981a2ce49ac699b9dad39993c5605ae18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["jc/parsers/iw_scan.py","tests/fixtures/centos-7.7/iw-scan0.json","tests/fixtures/centos-7.7/iw-scan1.json"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":6},{"name":"tests/fixtures/centos-7.7/iw-scan0.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iw-scan1.json","lines_changed":2}]},"message":"change mac_address fieldname to bssid. Add credit to Phillip"},{"commit":"db17d21b8f9b2f899760e648f1483d33d0bcf47a","merge":"5885b96 996d394","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #97 from pschmitt/iw_scan_fix_space_detection"},{"commit":"996d394e89c732f327323ca340fce405bd5fb2e4","author":"Philipp Schmitt","author_email":"philipp@schmitt.co","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":3}]},"message":"iw_scan: Improve detection of lines starting with spaces"},{"commit":"5885b960f9b33a95ecec9f4a33233c2f8682fbc4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":2,"files":["CHANGELOG","README.md","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":2},{"name":"man/jc.1","lines_changed":4}]},"message":"doc updates"},{"commit":"79987b35f332e287567e103f25cf91cb50e040c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2}]},"message":"formatting"},{"commit":"661b3ef311ad26678030c70c11f2f955667311a4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":94,"deletions":2,"files":["EXAMPLES.md","README.md","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":91},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/iw_scan.md","lines_changed":2},{"name":"jc/parsers/iw_scan.py","lines_changed":2}]},"message":"doc updates"},{"commit":"fb422726a8366c7133f0712d3b05a26620eea785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["tests/fixtures/ubuntu-20.04/last-F.json","tests/fixtures/ubuntu-20.04/last-F.out"],"file_stats":[{"name":"tests/fixtures/ubuntu-20.04/last-F.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/last-F.out","lines_changed":1}]},"message":"update test to add 'down' condition"},{"commit":"4fb6f3ea59c52515926a51a006e65a1c18e57720","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":4}]},"message":"add support for down in addition to crash"},{"commit":"f78fe771e1c2fb4691858fa7f27b1febe5f8c6c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":48,"deletions":0,"files":["tests/fixtures/centos-7.7/iw-scan0.json","tests/fixtures/centos-7.7/iw-scan1.json","tests/test_iw_scan.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/iw-scan0.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iw-scan1.json","lines_changed":1},{"name":"tests/test_iw_scan.py","lines_changed":46}]},"message":"add iw-scan tests"},{"commit":"567b8872538ac9f6b384b98741acd9794229d513","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":252,"deletions":12,"files":["docgen.sh","docs/parsers/iw_scan.md","jc/parsers/iw_scan.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/iw_scan.md","lines_changed":160},{"name":"jc/parsers/iw_scan.py","lines_changed":103}]},"message":"doc updates"},{"commit":"e516e6b9466b29d40ec10070dd61551180eeef90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":29,"deletions":1,"files":["jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/parsers/iw_scan.py","lines_changed":30}]},"message":"fix country/environment fields and process int/float conversions"},{"commit":"62748676aae3d5955191ed267215df33a5bd3a4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":225,"deletions":0,"files":["jc/cli.py","jc/parsers/iw_scan.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/iw_scan.py","lines_changed":224}]},"message":"initial iw-scan parser"},{"commit":"7351c72e45242b9eb08c51dea7b6fccf12366dfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":402,"deletions":1,"files":["jc/parsers/last.py","tests/fixtures/centos-7.7/last-crash.json","tests/fixtures/centos-7.7/last-crash.out","tests/fixtures/centos-7.7/last-wF.json","tests/fixtures/centos-7.7/last-wF.out","tests/test_last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":10},{"name":"tests/fixtures/centos-7.7/last-crash.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/last-crash.out","lines_changed":184},{"name":"tests/fixtures/centos-7.7/last-wF.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/last-wF.out","lines_changed":184},{"name":"tests/test_last.py","lines_changed":23}]},"message":"add fixes and tests for entries that contain 'crash'"},{"commit":"2b7405c5e21db2488fc48b58f6c65cff947ca95d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":23,"deletions":16,"files":["CHANGELOG","README.md","docs/parsers/last.md","jc/parsers/last.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"README.md","lines_changed":2},{"name":"docs/parsers/last.md","lines_changed":6},{"name":"jc/parsers/last.py","lines_changed":6},{"name":"man/jc.1","lines_changed":22}]},"message":"doc updates"},{"commit":"e2c77cb935a5bd95dbe930d424e5a02e88e1fa76","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":15,"deletions":1,"files":["jc/parsers/last.py","tests/fixtures/ubuntu-20.04/last-F.json","tests/test_last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":3},{"name":"tests/fixtures/ubuntu-20.04/last-F.json","lines_changed":1},{"name":"tests/test_last.py","lines_changed":12}]},"message":"add test for last -F output"},{"commit":"7ac621e4c916373a03f379425033cb2d81a03578","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":36,"deletions":6,"files":["docs/parsers/last.md","jc/parsers/last.py","tests/fixtures/ubuntu-20.04/last-F.out"],"file_stats":[{"name":"docs/parsers/last.md","lines_changed":6},{"name":"jc/parsers/last.py","lines_changed":30},{"name":"tests/fixtures/ubuntu-20.04/last-F.out","lines_changed":6}]},"message":"add -F support"},{"commit":"d8b5d6c66ced19dc16f2b4975d2293a903732ffe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/cli.py","setup.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to 1.14.1"},{"commit":"22b461eb4b1ca86ea9e8c1fde8a2c312d1526b5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":47,"deletions":12,"files":["CHANGELOG","EXAMPLES.md","docs/parsers/date.md","jc/parsers/date.py","tests/fixtures/generic/date.json","tests/fixtures/ubuntu-20.04/date.json","tests/test_date.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":1},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"jc/parsers/date.py","lines_changed":40},{"name":"tests/fixtures/generic/date.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-20.04/date.json","lines_changed":1},{"name":"tests/test_date.py","lines_changed":12}]},"message":"Add period field for en_US.UTF-8 locale"},{"commit":"b37ee8555a2a108625a834a7990bc3320e79b08d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":6}]},"message":"changelog update"},{"commit":"1d0ad2f045733c5c690738d49951fdb9bcd3d66d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":123,"insertions":312,"deletions":312,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/cksum.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/hash.md","docs/parsers/hashsum.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/wc.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/cksum.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/hash.py","jc/parsers/hashsum.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat_freebsd_osx.py","jc/parsers/netstat_linux.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/wc.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":6},{"name":"docs/parsers/arp.md","lines_changed":6},{"name":"docs/parsers/blkid.md","lines_changed":6},{"name":"docs/parsers/cksum.md","lines_changed":6},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"docs/parsers/csv.md","lines_changed":6},{"name":"docs/parsers/date.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":6},{"name":"docs/parsers/dig.md","lines_changed":6},{"name":"docs/parsers/dmidecode.md","lines_changed":6},{"name":"docs/parsers/du.md","lines_changed":6},{"name":"docs/parsers/env.md","lines_changed":6},{"name":"docs/parsers/file.md","lines_changed":6},{"name":"docs/parsers/free.md","lines_changed":6},{"name":"docs/parsers/fstab.md","lines_changed":6},{"name":"docs/parsers/group.md","lines_changed":6},{"name":"docs/parsers/gshadow.md","lines_changed":6},{"name":"docs/parsers/hash.md","lines_changed":6},{"name":"docs/parsers/hashsum.md","lines_changed":6},{"name":"docs/parsers/history.md","lines_changed":6},{"name":"docs/parsers/hosts.md","lines_changed":6},{"name":"docs/parsers/id.md","lines_changed":4},{"name":"docs/parsers/ifconfig.md","lines_changed":6},{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":6},{"name":"docs/parsers/jobs.md","lines_changed":6},{"name":"docs/parsers/last.md","lines_changed":6},{"name":"docs/parsers/ls.md","lines_changed":6},{"name":"docs/parsers/lsblk.md","lines_changed":6},{"name":"docs/parsers/lsmod.md","lines_changed":6},{"name":"docs/parsers/lsof.md","lines_changed":6},{"name":"docs/parsers/mount.md","lines_changed":6},{"name":"docs/parsers/netstat.md","lines_changed":6},{"name":"docs/parsers/ntpq.md","lines_changed":6},{"name":"docs/parsers/passwd.md","lines_changed":6},{"name":"docs/parsers/ping.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":6},{"name":"docs/parsers/pip_show.md","lines_changed":6},{"name":"docs/parsers/ps.md","lines_changed":6},{"name":"docs/parsers/route.md","lines_changed":6},{"name":"docs/parsers/shadow.md","lines_changed":6},{"name":"docs/parsers/ss.md","lines_changed":6},{"name":"docs/parsers/stat.md","lines_changed":6},{"name":"docs/parsers/sysctl.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":6},{"name":"docs/parsers/systemctl_lj.md","lines_changed":6},{"name":"docs/parsers/systemctl_ls.md","lines_changed":6},{"name":"docs/parsers/systemctl_luf.md","lines_changed":6},{"name":"docs/parsers/timedatectl.md","lines_changed":2},{"name":"docs/parsers/tracepath.md","lines_changed":2},{"name":"docs/parsers/traceroute.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":6},{"name":"docs/parsers/wc.md","lines_changed":6},{"name":"docs/parsers/who.md","lines_changed":6},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":6},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":6},{"name":"jc/parsers/arp.py","lines_changed":6},{"name":"jc/parsers/blkid.py","lines_changed":6},{"name":"jc/parsers/cksum.py","lines_changed":6},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"jc/parsers/csv.py","lines_changed":6},{"name":"jc/parsers/date.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":6},{"name":"jc/parsers/dig.py","lines_changed":6},{"name":"jc/parsers/dmidecode.py","lines_changed":6},{"name":"jc/parsers/du.py","lines_changed":6},{"name":"jc/parsers/env.py","lines_changed":6},{"name":"jc/parsers/file.py","lines_changed":6},{"name":"jc/parsers/foo.py","lines_changed":6},{"name":"jc/parsers/free.py","lines_changed":6},{"name":"jc/parsers/fstab.py","lines_changed":6},{"name":"jc/parsers/group.py","lines_changed":6},{"name":"jc/parsers/gshadow.py","lines_changed":6},{"name":"jc/parsers/hash.py","lines_changed":6},{"name":"jc/parsers/hashsum.py","lines_changed":6},{"name":"jc/parsers/history.py","lines_changed":6},{"name":"jc/parsers/hosts.py","lines_changed":6},{"name":"jc/parsers/id.py","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":6},{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":6},{"name":"jc/parsers/jobs.py","lines_changed":6},{"name":"jc/parsers/last.py","lines_changed":6},{"name":"jc/parsers/ls.py","lines_changed":6},{"name":"jc/parsers/lsblk.py","lines_changed":6},{"name":"jc/parsers/lsmod.py","lines_changed":6},{"name":"jc/parsers/lsof.py","lines_changed":6},{"name":"jc/parsers/mount.py","lines_changed":6},{"name":"jc/parsers/netstat.py","lines_changed":6},{"name":"jc/parsers/netstat_freebsd_osx.py","lines_changed":2},{"name":"jc/parsers/netstat_linux.py","lines_changed":2},{"name":"jc/parsers/ntpq.py","lines_changed":6},{"name":"jc/parsers/passwd.py","lines_changed":6},{"name":"jc/parsers/ping.py","lines_changed":4},{"name":"jc/parsers/pip_list.py","lines_changed":6},{"name":"jc/parsers/pip_show.py","lines_changed":6},{"name":"jc/parsers/ps.py","lines_changed":6},{"name":"jc/parsers/route.py","lines_changed":6},{"name":"jc/parsers/shadow.py","lines_changed":6},{"name":"jc/parsers/ss.py","lines_changed":6},{"name":"jc/parsers/stat.py","lines_changed":6},{"name":"jc/parsers/sysctl.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":6},{"name":"jc/parsers/systemctl_lj.py","lines_changed":6},{"name":"jc/parsers/systemctl_ls.py","lines_changed":6},{"name":"jc/parsers/systemctl_luf.py","lines_changed":6},{"name":"jc/parsers/timedatectl.py","lines_changed":2},{"name":"jc/parsers/tracepath.py","lines_changed":2},{"name":"jc/parsers/traceroute.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":6},{"name":"jc/parsers/wc.py","lines_changed":6},{"name":"jc/parsers/who.py","lines_changed":6},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":6}]},"message":"doc fixes"},{"commit":"ceccfb2c815f57f1b6fd81f891d8b495de23f9f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":2036,"deletions":0,"files":["tests/fixtures/centos-7.7/iw-scan0.out","tests/fixtures/centos-7.7/iw-scan1.out","tests/fixtures/ubuntu-20.04/date.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/iw-scan0.out","lines_changed":36},{"name":"tests/fixtures/centos-7.7/iw-scan1.out","lines_changed":1999},{"name":"tests/fixtures/ubuntu-20.04/date.out","lines_changed":1}]},"message":"add test output for iw-scan and date on ubuntu 20.04"},{"commit":"03c02953cd7e3327b391f799c37a2990eb2cb24c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":96,"deletions":0,"files":["docgen.sh","docs/parsers/wc.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/wc.md","lines_changed":95}]},"message":"add wc doc"},{"commit":"f254a0eaa16fcda316f7a75424ee359058204b03","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"9e3b88727cd439e15f235dddb9dd5796e010797a","merge":"439871e b122174","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #91 from kellyjonbrazil/dev"},{"commit":"b12217466e906829d19be4cfd80dfe7cf4008e57","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"spelling"},{"commit":"8b9c932f9b05295e63b3e7d0073f243458fd4dd9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"update date"},{"commit":"5986ce03db6fcd1aa0f7b064eaa96c2120c06d2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add printenv info"},{"commit":"a7b0e936e400d2f9e55629e2d722cc002e035e9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"add vdir and printenv info"},{"commit":"cb0221142455a6bcb904fbe9ade657be45815b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":61,"deletions":2,"files":["jc/parsers/wc.py","tests/fixtures/osx-10.14.6/wc-stdin.json","tests/fixtures/osx-10.14.6/wc-stdin.out","tests/test_wc.py"],"file_stats":[{"name":"jc/parsers/wc.py","lines_changed":3},{"name":"tests/fixtures/osx-10.14.6/wc-stdin.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/wc-stdin.out","lines_changed":1},{"name":"tests/test_wc.py","lines_changed":58}]},"message":"add wc tests"},{"commit":"bd443bf39227515ae5f8df65d07b30268dcc90a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/env.py"],"file_stats":[{"name":"jc/parsers/env.py","lines_changed":4}]},"message":"add printenv to env docs"},{"commit":"1f547edd361e66b19ccbcb59f6ba0ae78f6080ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/env.md"],"file_stats":[{"name":"docs/parsers/env.md","lines_changed":2}]},"message":"add printenv to env docs"},{"commit":"e4bac3a493705b09e301ddc90dd1b0cee7467c3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":378,"deletions":0,"files":["CHANGELOG","EXAMPLES.md","README.md","jc/cli.py","jc/parsers/wc.py","tests/fixtures/centos-7.7/wc.json","tests/fixtures/centos-7.7/wc.out","tests/fixtures/osx-10.14.6/wc.json","tests/fixtures/osx-10.14.6/wc.out"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":26},{"name":"README.md","lines_changed":1},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/wc.py","lines_changed":130},{"name":"tests/fixtures/centos-7.7/wc.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/wc.out","lines_changed":67},{"name":"tests/fixtures/osx-10.14.6/wc.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/wc.out","lines_changed":150}]},"message":"add wc parser"},{"commit":"5e6bfa681aff03fbd683f81a9f4daa56b49d1344","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":6,"files":["README.md","docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":6}]},"message":"add vdir info"},{"commit":"276160125e01553c75eaad68530177bcf4f9004d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"add new commands to README"},{"commit":"d4ae5543f2d5f28a0db5b8e2e19993c21c5d960c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":39,"deletions":0,"files":["tests/fixtures/centos-7.7/hash.json","tests/fixtures/centos-7.7/hash.out","tests/test_hash.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/hash.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/hash.out","lines_changed":4},{"name":"tests/test_hash.py","lines_changed":34}]},"message":"add hash tests"},{"commit":"55f360e267fdfcfef0c124ed6b88535cc181a8b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":260,"deletions":0,"files":["CHANGELOG","EXAMPLES.md","docgen.sh","docs/parsers/hash.md","jc/cli.py","jc/parsers/hash.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"EXAMPLES.md","lines_changed":71},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/hash.md","lines_changed":78},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/hash.py","lines_changed":108}]},"message":"add hash command parser"},{"commit":"fdedab2a0cf5af15df5803d87302397dd6d71741","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/cksum.py","jc/parsers/hashsum.py"],"file_stats":[{"name":"jc/parsers/cksum.py","lines_changed":2},{"name":"jc/parsers/hashsum.py","lines_changed":2}]},"message":"description updates"},{"commit":"a9be42e3031ab0d697cff67a9e384caa2265a3ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"specify parser warnings for quiet option"},{"commit":"6da9510e46e84ec1cb93384825184d2996cf0e08","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":482,"deletions":0,"files":["tests/fixtures/centos-7.7/cksum.json","tests/fixtures/centos-7.7/cksum.out","tests/fixtures/centos-7.7/sum.json","tests/fixtures/centos-7.7/sum.out","tests/fixtures/osx-10.14.6/cksum.json","tests/fixtures/osx-10.14.6/cksum.out","tests/fixtures/osx-10.14.6/sum.json","tests/fixtures/osx-10.14.6/sum.out","tests/test_cksum.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/cksum.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/cksum.out","lines_changed":59},{"name":"tests/fixtures/centos-7.7/sum.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sum.out","lines_changed":58},{"name":"tests/fixtures/osx-10.14.6/cksum.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/cksum.out","lines_changed":145},{"name":"tests/fixtures/osx-10.14.6/sum.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/sum.out","lines_changed":146},{"name":"tests/test_cksum.py","lines_changed":70}]},"message":"add cksum tests"},{"commit":"0431798178740b03cdefececc6df958e5adf62fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":229,"deletions":3,"files":["CHANGELOG","docgen.sh","docs/parsers/cksum.md","docs/parsers/hashsum.md","jc/cli.py","jc/parsers/cksum.py","jc/parsers/hashsum.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/cksum.md","lines_changed":95},{"name":"docs/parsers/hashsum.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/cksum.py","lines_changed":128},{"name":"jc/parsers/hashsum.py","lines_changed":2}]},"message":"add cksum parser"},{"commit":"62432f3c484e74acb2b2dfd15d448b3f1b5d53c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/hashsum.py"],"file_stats":[{"name":"jc/parsers/hashsum.py","lines_changed":2}]},"message":"update hashsum description"},{"commit":"9fbbc30906b597e6afaf2030015a7a694d85f79e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":0,"files":["docs/parsers/hashsum.md","jc/parsers/hashsum.py"],"file_stats":[{"name":"docs/parsers/hashsum.md","lines_changed":10},{"name":"jc/parsers/hashsum.py","lines_changed":10}]},"message":"add supported commands to docs"},{"commit":"d1567d1f622902053f3df58645b4e39532e0c30a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":104,"deletions":0,"files":["CHANGELOG","docgen.sh","docs/parsers/hashsum.md"],"file_stats":[{"name":"CHANGELOG","lines_changed":4},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/hashsum.md","lines_changed":99}]},"message":"add hashsum documentation"},{"commit":"6ca1f5970b3a518615a54ee7fcbc1bddab2db331","merge":"1c880b9 3b7d54c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge branch 'dev' of https://github.com/kellyjonbrazil/jc into dev"},{"commit":"1c880b9e24ca53cd592cec1dbc52301308290fb4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_hashsum.py"],"file_stats":[{"name":"tests/test_hashsum.py","lines_changed":2}]},"message":"force git tests"},{"commit":"3b7d54c720dfc93637328cf06eb10a85447c8793","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"add python 3.9"},{"commit":"44a740605705bd0ecfde2a6bcc7a826e1010dcf0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":87,"deletions":0,"files":["tests/fixtures/centos-7.7/md5sum.json","tests/fixtures/centos-7.7/sha256sum.json","tests/fixtures/centos-7.7/sha384sum.json","tests/fixtures/osx-10.14.6/md5.json","tests/fixtures/osx-10.14.6/shasum.json","tests/test_hashsum.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/md5sum.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sha256sum.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sha384sum.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/md5.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/shasum.json","lines_changed":1},{"name":"tests/test_hashsum.py","lines_changed":82}]},"message":"add hashsum tests"},{"commit":"8157dcfdb1868548b7c8ca692e6be25f80bb2c2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":36,"deletions":11,"files":["jc/parsers/hashsum.py"],"file_stats":[{"name":"jc/parsers/hashsum.py","lines_changed":47}]},"message":"fix for files with spaces in the name"},{"commit":"28762aea15cabc9cd8293d725e7f1f0550f8e15d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":524,"deletions":0,"files":["jc/cli.py","jc/parsers/hashsum.py","tests/fixtures/centos-7.7/md5sum.out","tests/fixtures/centos-7.7/sha256sum.out","tests/fixtures/centos-7.7/sha384sum.out","tests/fixtures/osx-10.14.6/md5.out","tests/fixtures/osx-10.14.6/shasum.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/hashsum.py","lines_changed":110},{"name":"tests/fixtures/centos-7.7/md5sum.out","lines_changed":56},{"name":"tests/fixtures/centos-7.7/sha256sum.out","lines_changed":55},{"name":"tests/fixtures/centos-7.7/sha384sum.out","lines_changed":56},{"name":"tests/fixtures/osx-10.14.6/md5.out","lines_changed":104},{"name":"tests/fixtures/osx-10.14.6/shasum.out","lines_changed":142}]},"message":"add hashsum parser"},{"commit":"439871ea9f6b055a407e1faaf47e4f56d1829501","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add ubuntu"},{"commit":"c9180b005c0547c8cbfe4809e66894f1123b0809","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"b14e0725f86853f0113116b1c06f54aaa563f365","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add ansible plugin blog post link"},{"commit":"70fe3dcb4d5b97aba1d6c6dcd5088fecb27af181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"8c554604a42a3ea7ca9131b65c64fd3ceb95f906","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"formatting"},{"commit":"a0a35454bd2831c116cb598c686150b883412f94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add link to the web demo"},{"commit":"e8467e2af5b0c3f14832a9e6d4a96f219c27f3f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"remove extra space"},{"commit":"7515deb5669ef04623e9cbf58653b30c99a96430","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add ansible install command"},{"commit":"ed9e52af241b609ee7f5d1b835c9f6c5306cd3c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"spelling"},{"commit":"592a3804104628c790997747a778b3b39d076dfe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add Ansible note"},{"commit":"1a458d2d5b4c16c0ad90671727ae9b19939e7f23","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2}]},"message":"update link"},{"commit":"0e4cf53b92ff951a6390a4dacf8833c272473583","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":2},{"name":"jc/__init__.py","lines_changed":2}]},"message":"add parser docs link"},{"commit":"e2f06ccb33177173d984bc0cdda1aae1a3f4c681","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"docs/parsers/yaml.md","lines_changed":2},{"name":"jc/parsers/xml.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"formatting"},{"commit":"8abff004cd8e09529e5d94be4883308152e11565","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/yaml.md"],"file_stats":[{"name":"docs/parsers/yaml.md","lines_changed":2}]},"message":"indentation fix"},{"commit":"c4a0e2e3feb2e51eaaaa202064f352229017bcc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"fix indentation"},{"commit":"4f10f79c73f8b3d6edc2c83e6a12d0ddc1a78555","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":8,"files":["docs/parsers/uname.md","jc/parsers/uname.py"],"file_stats":[{"name":"docs/parsers/uname.md","lines_changed":6},{"name":"jc/parsers/uname.py","lines_changed":6}]},"message":"standardize doc"},{"commit":"69e7a560fd82337570c4bb4aa4780f513c18bd94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":8,"deletions":0,"files":["docs/parsers/env.md","docs/parsers/history.md","jc/parsers/env.py","jc/parsers/history.py"],"file_stats":[{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2}]},"message":"add output info to docs"},{"commit":"59b105580805d78516abe1c1069d52a6f0a8131a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":97,"insertions":564,"deletions":269,"files":["docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":12},{"name":"docs/parsers/blkid.md","lines_changed":8},{"name":"docs/parsers/crontab.md","lines_changed":10},{"name":"docs/parsers/crontab_u.md","lines_changed":6},{"name":"docs/parsers/csv.md","lines_changed":9},{"name":"docs/parsers/date.md","lines_changed":8},{"name":"docs/parsers/df.md","lines_changed":8},{"name":"docs/parsers/dig.md","lines_changed":8},{"name":"docs/parsers/dmidecode.md","lines_changed":8},{"name":"docs/parsers/du.md","lines_changed":8},{"name":"docs/parsers/env.md","lines_changed":8},{"name":"docs/parsers/file.md","lines_changed":8},{"name":"docs/parsers/free.md","lines_changed":8},{"name":"docs/parsers/fstab.md","lines_changed":4},{"name":"docs/parsers/group.md","lines_changed":4},{"name":"docs/parsers/gshadow.md","lines_changed":4},{"name":"docs/parsers/history.md","lines_changed":4},{"name":"docs/parsers/hosts.md","lines_changed":4},{"name":"docs/parsers/id.md","lines_changed":8},{"name":"docs/parsers/ifconfig.md","lines_changed":10},{"name":"docs/parsers/ini.md","lines_changed":10},{"name":"docs/parsers/iptables.md","lines_changed":10},{"name":"docs/parsers/jobs.md","lines_changed":10},{"name":"docs/parsers/kv.md","lines_changed":11},{"name":"docs/parsers/last.md","lines_changed":8},{"name":"docs/parsers/ls.md","lines_changed":21},{"name":"docs/parsers/lsblk.md","lines_changed":8},{"name":"docs/parsers/lsmod.md","lines_changed":8},{"name":"docs/parsers/lsof.md","lines_changed":8},{"name":"docs/parsers/mount.md","lines_changed":8},{"name":"docs/parsers/netstat.md","lines_changed":17},{"name":"docs/parsers/ntpq.md","lines_changed":8},{"name":"docs/parsers/passwd.md","lines_changed":4},{"name":"docs/parsers/ping.md","lines_changed":12},{"name":"docs/parsers/pip_list.md","lines_changed":8},{"name":"docs/parsers/pip_show.md","lines_changed":8},{"name":"docs/parsers/ps.md","lines_changed":14},{"name":"docs/parsers/route.md","lines_changed":8},{"name":"docs/parsers/shadow.md","lines_changed":4},{"name":"docs/parsers/ss.md","lines_changed":8},{"name":"docs/parsers/stat.md","lines_changed":8},{"name":"docs/parsers/sysctl.md","lines_changed":16},{"name":"docs/parsers/systemctl.md","lines_changed":8},{"name":"docs/parsers/systemctl_lj.md","lines_changed":8},{"name":"docs/parsers/systemctl_ls.md","lines_changed":8},{"name":"docs/parsers/systemctl_luf.md","lines_changed":8},{"name":"docs/parsers/timedatectl.md","lines_changed":8},{"name":"docs/parsers/tracepath.md","lines_changed":10},{"name":"docs/parsers/traceroute.md","lines_changed":16},{"name":"docs/parsers/uname.md","lines_changed":8},{"name":"docs/parsers/uptime.md","lines_changed":8},{"name":"docs/parsers/w.md","lines_changed":8},{"name":"docs/parsers/who.md","lines_changed":10},{"name":"docs/parsers/xml.md","lines_changed":4},{"name":"docs/parsers/yaml.md","lines_changed":4},{"name":"jc/parsers/group.py","lines_changed":4},{"name":"jc/parsers/gshadow.py","lines_changed":4},{"name":"jc/parsers/history.py","lines_changed":4},{"name":"jc/parsers/hosts.py","lines_changed":4},{"name":"jc/parsers/id.py","lines_changed":8},{"name":"jc/parsers/ifconfig.py","lines_changed":10},{"name":"jc/parsers/ini.py","lines_changed":10},{"name":"jc/parsers/iptables.py","lines_changed":10},{"name":"jc/parsers/jobs.py","lines_changed":10},{"name":"jc/parsers/kv.py","lines_changed":11},{"name":"jc/parsers/last.py","lines_changed":8},{"name":"jc/parsers/ls.py","lines_changed":21},{"name":"jc/parsers/lsblk.py","lines_changed":8},{"name":"jc/parsers/lsmod.py","lines_changed":8},{"name":"jc/parsers/lsof.py","lines_changed":8},{"name":"jc/parsers/mount.py","lines_changed":8},{"name":"jc/parsers/netstat.py","lines_changed":17},{"name":"jc/parsers/ntpq.py","lines_changed":8},{"name":"jc/parsers/passwd.py","lines_changed":4},{"name":"jc/parsers/ping.py","lines_changed":12},{"name":"jc/parsers/pip_list.py","lines_changed":8},{"name":"jc/parsers/pip_show.py","lines_changed":8},{"name":"jc/parsers/ps.py","lines_changed":14},{"name":"jc/parsers/route.py","lines_changed":8},{"name":"jc/parsers/shadow.py","lines_changed":4},{"name":"jc/parsers/ss.py","lines_changed":8},{"name":"jc/parsers/stat.py","lines_changed":8},{"name":"jc/parsers/sysctl.py","lines_changed":16},{"name":"jc/parsers/systemctl.py","lines_changed":8},{"name":"jc/parsers/systemctl_lj.py","lines_changed":8},{"name":"jc/parsers/systemctl_ls.py","lines_changed":8},{"name":"jc/parsers/systemctl_luf.py","lines_changed":8},{"name":"jc/parsers/timedatectl.py","lines_changed":8},{"name":"jc/parsers/tracepath.py","lines_changed":10},{"name":"jc/parsers/traceroute.py","lines_changed":16},{"name":"jc/parsers/uname.py","lines_changed":8},{"name":"jc/parsers/uptime.py","lines_changed":8},{"name":"jc/parsers/w.py","lines_changed":8},{"name":"jc/parsers/who.py","lines_changed":10},{"name":"jc/parsers/xml.py","lines_changed":4},{"name":"jc/parsers/yaml.py","lines_changed":4}]},"message":"enhance docs"},{"commit":"6ed48c6289214fe5114971c80772efdf9ac1b8c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":16,"insertions":88,"deletions":37,"files":["jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py"],"file_stats":[{"name":"jc/parsers/airport_s.py","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":12},{"name":"jc/parsers/blkid.py","lines_changed":8},{"name":"jc/parsers/crontab.py","lines_changed":10},{"name":"jc/parsers/crontab_u.py","lines_changed":6},{"name":"jc/parsers/csv.py","lines_changed":9},{"name":"jc/parsers/date.py","lines_changed":8},{"name":"jc/parsers/df.py","lines_changed":8},{"name":"jc/parsers/dig.py","lines_changed":8},{"name":"jc/parsers/dmidecode.py","lines_changed":8},{"name":"jc/parsers/du.py","lines_changed":8},{"name":"jc/parsers/env.py","lines_changed":8},{"name":"jc/parsers/file.py","lines_changed":8},{"name":"jc/parsers/foo.py","lines_changed":10},{"name":"jc/parsers/free.py","lines_changed":8},{"name":"jc/parsers/fstab.py","lines_changed":4}]},"message":"enhance docs"},{"commit":"f2fb4d3f415fbc1c09eec6dedcf70fba78406b3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","jc/parsers/airport.py","jc/parsers/airport_s.py"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":2},{"name":"docs/parsers/airport_s.md","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":2},{"name":"jc/parsers/airport_s.py","lines_changed":2}]},"message":"improve docs"},{"commit":"6aeea59ea84e56434e87ddf89cd5d4435b99e140","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":8,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":11},{"name":"docs/parsers/airport_s.md","lines_changed":11}]},"message":"doc updates"},{"commit":"d016f3bbb307f85bd0f93a508323941a8bb9d872","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":8,"files":["jc/parsers/airport.py","jc/parsers/airport_s.py"],"file_stats":[{"name":"jc/parsers/airport.py","lines_changed":11},{"name":"jc/parsers/airport_s.py","lines_changed":11}]},"message":"improve documentation"},{"commit":"7131c297180bfa195d0209d46fc70ab8e67efe2e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":114,"insertions":686,"deletions":116,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/date.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/date.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/kv.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/ping.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/sysctl.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/tracepath.py","jc/parsers/traceroute.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":7},{"name":"docs/parsers/airport_s.md","lines_changed":7},{"name":"docs/parsers/arp.md","lines_changed":7},{"name":"docs/parsers/crontab.md","lines_changed":7},{"name":"docs/parsers/crontab_u.md","lines_changed":7},{"name":"docs/parsers/csv.md","lines_changed":7},{"name":"docs/parsers/date.md","lines_changed":7},{"name":"docs/parsers/df.md","lines_changed":7},{"name":"docs/parsers/dig.md","lines_changed":7},{"name":"docs/parsers/dmidecode.md","lines_changed":7},{"name":"docs/parsers/du.md","lines_changed":7},{"name":"docs/parsers/env.md","lines_changed":7},{"name":"docs/parsers/file.md","lines_changed":7},{"name":"docs/parsers/free.md","lines_changed":7},{"name":"docs/parsers/fstab.md","lines_changed":7},{"name":"docs/parsers/group.md","lines_changed":7},{"name":"docs/parsers/gshadow.md","lines_changed":7},{"name":"docs/parsers/history.md","lines_changed":7},{"name":"docs/parsers/hosts.md","lines_changed":7},{"name":"docs/parsers/id.md","lines_changed":7},{"name":"docs/parsers/ifconfig.md","lines_changed":7},{"name":"docs/parsers/ini.md","lines_changed":7},{"name":"docs/parsers/iptables.md","lines_changed":7},{"name":"docs/parsers/jobs.md","lines_changed":7},{"name":"docs/parsers/kv.md","lines_changed":7},{"name":"docs/parsers/last.md","lines_changed":7},{"name":"docs/parsers/ls.md","lines_changed":7},{"name":"docs/parsers/lsblk.md","lines_changed":7},{"name":"docs/parsers/lsmod.md","lines_changed":7},{"name":"docs/parsers/lsof.md","lines_changed":7},{"name":"docs/parsers/mount.md","lines_changed":7},{"name":"docs/parsers/netstat.md","lines_changed":7},{"name":"docs/parsers/ntpq.md","lines_changed":7},{"name":"docs/parsers/passwd.md","lines_changed":7},{"name":"docs/parsers/ping.md","lines_changed":7},{"name":"docs/parsers/pip_list.md","lines_changed":7},{"name":"docs/parsers/pip_show.md","lines_changed":7},{"name":"docs/parsers/ps.md","lines_changed":7},{"name":"docs/parsers/route.md","lines_changed":7},{"name":"docs/parsers/shadow.md","lines_changed":7},{"name":"docs/parsers/ss.md","lines_changed":7},{"name":"docs/parsers/stat.md","lines_changed":7},{"name":"docs/parsers/sysctl.md","lines_changed":7},{"name":"docs/parsers/systemctl.md","lines_changed":7},{"name":"docs/parsers/systemctl_lj.md","lines_changed":7},{"name":"docs/parsers/systemctl_ls.md","lines_changed":7},{"name":"docs/parsers/systemctl_luf.md","lines_changed":7},{"name":"docs/parsers/timedatectl.md","lines_changed":7},{"name":"docs/parsers/tracepath.md","lines_changed":7},{"name":"docs/parsers/traceroute.md","lines_changed":7},{"name":"docs/parsers/uname.md","lines_changed":9},{"name":"docs/parsers/uptime.md","lines_changed":7},{"name":"docs/parsers/w.md","lines_changed":7},{"name":"docs/parsers/who.md","lines_changed":7},{"name":"docs/parsers/xml.md","lines_changed":7},{"name":"docs/parsers/yaml.md","lines_changed":7},{"name":"jc/parsers/airport.py","lines_changed":7},{"name":"jc/parsers/airport_s.py","lines_changed":7},{"name":"jc/parsers/arp.py","lines_changed":7},{"name":"jc/parsers/blkid.py","lines_changed":7},{"name":"jc/parsers/crontab.py","lines_changed":7},{"name":"jc/parsers/crontab_u.py","lines_changed":7},{"name":"jc/parsers/csv.py","lines_changed":7},{"name":"jc/parsers/date.py","lines_changed":7},{"name":"jc/parsers/df.py","lines_changed":7},{"name":"jc/parsers/dig.py","lines_changed":7},{"name":"jc/parsers/dmidecode.py","lines_changed":7},{"name":"jc/parsers/du.py","lines_changed":7},{"name":"jc/parsers/env.py","lines_changed":7},{"name":"jc/parsers/file.py","lines_changed":7},{"name":"jc/parsers/foo.py","lines_changed":7},{"name":"jc/parsers/free.py","lines_changed":7},{"name":"jc/parsers/fstab.py","lines_changed":7},{"name":"jc/parsers/group.py","lines_changed":7},{"name":"jc/parsers/gshadow.py","lines_changed":7},{"name":"jc/parsers/history.py","lines_changed":7},{"name":"jc/parsers/hosts.py","lines_changed":7},{"name":"jc/parsers/id.py","lines_changed":7},{"name":"jc/parsers/ifconfig.py","lines_changed":7},{"name":"jc/parsers/ini.py","lines_changed":7},{"name":"jc/parsers/iptables.py","lines_changed":7},{"name":"jc/parsers/jobs.py","lines_changed":7},{"name":"jc/parsers/kv.py","lines_changed":7},{"name":"jc/parsers/last.py","lines_changed":7},{"name":"jc/parsers/ls.py","lines_changed":7},{"name":"jc/parsers/lsblk.py","lines_changed":7},{"name":"jc/parsers/lsmod.py","lines_changed":7},{"name":"jc/parsers/lsof.py","lines_changed":7},{"name":"jc/parsers/mount.py","lines_changed":7},{"name":"jc/parsers/netstat.py","lines_changed":7},{"name":"jc/parsers/ntpq.py","lines_changed":7},{"name":"jc/parsers/passwd.py","lines_changed":7},{"name":"jc/parsers/ping.py","lines_changed":7},{"name":"jc/parsers/pip_list.py","lines_changed":7},{"name":"jc/parsers/pip_show.py","lines_changed":7},{"name":"jc/parsers/ps.py","lines_changed":7},{"name":"jc/parsers/route.py","lines_changed":7},{"name":"jc/parsers/shadow.py","lines_changed":7},{"name":"jc/parsers/ss.py","lines_changed":7},{"name":"jc/parsers/stat.py","lines_changed":7},{"name":"jc/parsers/sysctl.py","lines_changed":7},{"name":"jc/parsers/systemctl.py","lines_changed":7},{"name":"jc/parsers/systemctl_lj.py","lines_changed":7},{"name":"jc/parsers/systemctl_ls.py","lines_changed":7},{"name":"jc/parsers/systemctl_luf.py","lines_changed":7},{"name":"jc/parsers/timedatectl.py","lines_changed":7},{"name":"jc/parsers/tracepath.py","lines_changed":7},{"name":"jc/parsers/traceroute.py","lines_changed":7},{"name":"jc/parsers/uname.py","lines_changed":9},{"name":"jc/parsers/uptime.py","lines_changed":7},{"name":"jc/parsers/w.py","lines_changed":7},{"name":"jc/parsers/who.py","lines_changed":7},{"name":"jc/parsers/xml.py","lines_changed":7},{"name":"jc/parsers/yaml.py","lines_changed":7}]},"message":"add module usage info to docs"},{"commit":"7432442983841b42c8d3d2459b55596c05d1e100","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["docs/parsers/blkid.md"],"file_stats":[{"name":"docs/parsers/blkid.md","lines_changed":7}]},"message":"add usage"},{"commit":"5344883394a0662ee16bb5edd68df8e4410025f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":5}]},"message":"spelling/add ping parser update"},{"commit":"3fcd2f6c2e015b0e65e7261c8e591ccd8a7d0e6c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/cli.py","setup.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"f3d84bd5bf06349b681e9b72d904676e9f6bca19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":21,"deletions":3,"files":["CHANGELOG","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/fixtures/debian10/crontab-u.json","tests/fixtures/debian10/crontab-u.out","tests/test_crontab_u.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":4},{"name":"tests/fixtures/debian10/crontab-u.json","lines_changed":1},{"name":"tests/fixtures/debian10/crontab-u.out","lines_changed":2},{"name":"tests/test_crontab_u.py","lines_changed":12}]},"message":"tighten crontab and crontab-u parser variable detection"},{"commit":"549780c23220bca3bcab58d7329ba8d44d1be55d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"add debian/apt-get info"},{"commit":"2a6da69b82aa9ade6c01d490a32b57b415c62a9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":4}]},"message":"improve linux/bsd check"},{"commit":"5c538816cf76686bac1a86a7c06e24664d25a2dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":55,"deletions":4,"files":["CHANGELOG","jc/cli.py","jc/parsers/ping.py","setup.py","tests/fixtures/pi/ping-ip-O-D.json","tests/fixtures/pi/ping-ip-O-D.out","tests/fixtures/pi/ping-ip-O.json","tests/fixtures/pi/ping-ip-O.out","tests/test_ping.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/ping.py","lines_changed":4},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/pi/ping-ip-O-D.json","lines_changed":1},{"name":"tests/fixtures/pi/ping-ip-O-D.out","lines_changed":10},{"name":"tests/fixtures/pi/ping-ip-O.json","lines_changed":1},{"name":"tests/fixtures/pi/ping-ip-O.out","lines_changed":10},{"name":"tests/test_ping.py","lines_changed":26}]},"message":"ping parser fix for raspberry pi"},{"commit":"7b8b378a7df397c488fc54fbd6e77f5f3f23c10c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":1}]},"message":"add pydoc-markdown version requirement"},{"commit":"e30a75e25c4b43969bf9f874f89e18512a5e3a34","merge":"dda517a 85ad5cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #76 from kellyjonbrazil/dev"},{"commit":"85ad5cfd0bfb903ce35e37b343244fed88dbd979","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["CHANGELOG"],"file_stats":[{"name":"CHANGELOG","lines_changed":2}]},"message":"date change"},{"commit":"88b9d5068c5bac0691fedb543114300d6afc7131","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":74,"deletions":15,"files":["EXAMPLES.md","README.md","docs/parsers/date.md","tests/fixtures/generic/date.json","tests/fixtures/generic/date.out","tests/test_date.py"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":18},{"name":"README.md","lines_changed":1},{"name":"docs/parsers/date.md","lines_changed":34},{"name":"tests/fixtures/generic/date.json","lines_changed":1},{"name":"tests/fixtures/generic/date.out","lines_changed":1},{"name":"tests/test_date.py","lines_changed":34}]},"message":"finish date parser"},{"commit":"f8c4948a090642db595eda2ba2ea0773e560ba67","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":1}]},"message":"remove comment"},{"commit":"412322447f019aec0b64888631bc965e9f21186d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":48,"deletions":17,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":65}]},"message":"add month_num and weekday_num fields"},{"commit":"d4f289e40fae621b87f0d49451fca4c3dde216b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/date.md","jc/parsers/date.py"],"file_stats":[{"name":"docs/parsers/date.md","lines_changed":4},{"name":"jc/parsers/date.py","lines_changed":4}]},"message":"documentation fixup"},{"commit":"e1f3feb8f529172ae26ce4c7a66a4a1c21b722ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":10,"files":["jc/parsers/date.py"],"file_stats":[{"name":"jc/parsers/date.py","lines_changed":23}]},"message":"cover empty data case in process"},{"commit":"37d3bc699c7be16955be06840d242980f05f1074","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":224,"deletions":1,"files":["CHANGELOG","docgen.sh","docs/parsers/date.md","jc/cli.py","jc/parsers/date.py","man/jc.1"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/date.md","lines_changed":89},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/date.py","lines_changed":127},{"name":"man/jc.1","lines_changed":4}]},"message":"add date parser"},{"commit":"672fd18016b8122510b6ab246b5675b7fd399b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"date bump"},{"commit":"bc2c23a2a09b96d34bb80f69fdc7751fb5ac3ed4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"version bump"},{"commit":"865f7e78124e382c6d315702fa6e48f2104cee46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":6}]},"message":"add kv parser to man page"},{"commit":"720212b552e1bd2b9196dd5f06e4b3f85d463531","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":9,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":10}]},"message":"fixup traceroute example with new behavior"},{"commit":"d3be61f60837801d5a505dc2520cc80c874a6092","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]},"message":"version bump"},{"commit":"13418b16b8fd78fdd97ac045ec3fe9aa59d46080","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":2,"files":["docs/parsers/traceroute.md","jc/parsers/traceroute.py"],"file_stats":[{"name":"docs/parsers/traceroute.md","lines_changed":5},{"name":"jc/parsers/traceroute.py","lines_changed":5}]},"message":"doc update"},{"commit":"42d2017cd6f5ee1d1a92bd4958cd63366c1e715d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":18,"insertions":41,"deletions":24,"files":["CHANGELOG","jc/parsers/traceroute.py","tests/fixtures/centos-7.7/traceroute.json","tests/fixtures/freebsd12/traceroute.json","tests/fixtures/freebsd12/traceroute6.json","tests/fixtures/generic/traceroute1.json","tests/fixtures/generic/traceroute2.json","tests/fixtures/generic/traceroute3.json","tests/fixtures/generic/traceroute5.json","tests/fixtures/generic/traceroute6.json","tests/fixtures/generic/traceroute7.json","tests/fixtures/osx-10.14.6/traceroute-asn.json",".../fixtures/osx-10.14.6/traceroute-no-header.json","tests/fixtures/osx-10.14.6/traceroute-q.json","tests/fixtures/osx-10.14.6/traceroute.json",".../osx-10.14.6/traceroute6-mult-addresses.json","tests/fixtures/osx-10.14.6/traceroute6.json","tests/test_traceroute.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"jc/parsers/traceroute.py","lines_changed":26},{"name":"tests/fixtures/centos-7.7/traceroute.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/traceroute.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/traceroute6.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute1.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute2.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute3.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute5.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute6.json","lines_changed":2},{"name":"tests/fixtures/generic/traceroute7.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/traceroute-asn.json","lines_changed":2},{"name":".../fixtures/osx-10.14.6/traceroute-no-header.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/traceroute-q.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/traceroute.json","lines_changed":2},{"name":".../osx-10.14.6/traceroute6-mult-addresses.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/traceroute6.json","lines_changed":2},{"name":"tests/test_traceroute.py","lines_changed":7}]},"message":"traceroute updates: handle missing header row, add annotations, don't print timeouts as probes"},{"commit":"4345e76ead2a49ae0691077e9fbd2b6c5fdfd129","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["EXAMPLES.md"],"file_stats":[{"name":"EXAMPLES.md","lines_changed":2}]},"message":"change to use --kv for key/value files"},{"commit":"741431322ba2677355c361fcd6095ed8cd0a4349","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":46,"deletions":24,"files":["tests/test_ini.py","tests/test_kv.py"],"file_stats":[{"name":"tests/test_ini.py","lines_changed":24},{"name":"tests/test_kv.py","lines_changed":46}]},"message":"update tests for kv parser"},{"commit":"980beaaf41a04891f7c2f5daeb1e3a23d3c7ec19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2}]},"message":"fix docgen issue"},{"commit":"2205034e0906b333c259648f7a0e5392945f12ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":105,"deletions":31,"files":["CHANGELOG","EXAMPLES.md","README.md","docgen.sh","jc/cli.py","jc/parsers/ini.py","jc/parsers/kv.py","setup.py"],"file_stats":[{"name":"CHANGELOG","lines_changed":3},{"name":"EXAMPLES.md","lines_changed":53},{"name":"README.md","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/ini.py","lines_changed":4},{"name":"jc/parsers/kv.py","lines_changed":67},{"name":"setup.py","lines_changed":2}]},"message":"add kv parser"},{"commit":"82b9c87a66fce5d8626c56858a8c6f1f3326e7fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":58,"insertions":345,"deletions":62,"files":["docs/parsers/airport.md","docs/parsers/airport_s.md","docs/parsers/arp.md","docs/parsers/blkid.md","docs/parsers/crontab.md","docs/parsers/crontab_u.md","docs/parsers/csv.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/dmidecode.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/file.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/group.md","docs/parsers/gshadow.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/id.md","docs/parsers/ifconfig.md","docs/parsers/ini.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/kv.md","docs/parsers/last.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/passwd.md","docs/parsers/ping.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/shadow.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/sysctl.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/timedatectl.md","docs/parsers/tracepath.md","docs/parsers/traceroute.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/parsers/who.md","docs/parsers/xml.md","docs/parsers/yaml.md","docs/readme.md","docs/utils.md"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":6},{"name":"docs/parsers/airport_s.md","lines_changed":6},{"name":"docs/parsers/arp.md","lines_changed":6},{"name":"docs/parsers/blkid.md","lines_changed":6},{"name":"docs/parsers/crontab.md","lines_changed":6},{"name":"docs/parsers/crontab_u.md","lines_changed":6},{"name":"docs/parsers/csv.md","lines_changed":6},{"name":"docs/parsers/df.md","lines_changed":6},{"name":"docs/parsers/dig.md","lines_changed":6},{"name":"docs/parsers/dmidecode.md","lines_changed":6},{"name":"docs/parsers/du.md","lines_changed":6},{"name":"docs/parsers/env.md","lines_changed":6},{"name":"docs/parsers/file.md","lines_changed":6},{"name":"docs/parsers/free.md","lines_changed":6},{"name":"docs/parsers/fstab.md","lines_changed":6},{"name":"docs/parsers/group.md","lines_changed":6},{"name":"docs/parsers/gshadow.md","lines_changed":6},{"name":"docs/parsers/history.md","lines_changed":6},{"name":"docs/parsers/hosts.md","lines_changed":6},{"name":"docs/parsers/id.md","lines_changed":6},{"name":"docs/parsers/ifconfig.md","lines_changed":13},{"name":"docs/parsers/ini.md","lines_changed":6},{"name":"docs/parsers/iptables.md","lines_changed":6},{"name":"docs/parsers/jobs.md","lines_changed":6},{"name":"docs/parsers/kv.md","lines_changed":61},{"name":"docs/parsers/last.md","lines_changed":6},{"name":"docs/parsers/ls.md","lines_changed":6},{"name":"docs/parsers/lsblk.md","lines_changed":6},{"name":"docs/parsers/lsmod.md","lines_changed":6},{"name":"docs/parsers/lsof.md","lines_changed":6},{"name":"docs/parsers/mount.md","lines_changed":6},{"name":"docs/parsers/netstat.md","lines_changed":6},{"name":"docs/parsers/ntpq.md","lines_changed":6},{"name":"docs/parsers/passwd.md","lines_changed":6},{"name":"docs/parsers/ping.md","lines_changed":6},{"name":"docs/parsers/pip_list.md","lines_changed":6},{"name":"docs/parsers/pip_show.md","lines_changed":6},{"name":"docs/parsers/ps.md","lines_changed":6},{"name":"docs/parsers/route.md","lines_changed":6},{"name":"docs/parsers/shadow.md","lines_changed":6},{"name":"docs/parsers/ss.md","lines_changed":6},{"name":"docs/parsers/stat.md","lines_changed":6},{"name":"docs/parsers/sysctl.md","lines_changed":6},{"name":"docs/parsers/systemctl.md","lines_changed":6},{"name":"docs/parsers/systemctl_lj.md","lines_changed":6},{"name":"docs/parsers/systemctl_ls.md","lines_changed":6},{"name":"docs/parsers/systemctl_luf.md","lines_changed":6},{"name":"docs/parsers/timedatectl.md","lines_changed":6},{"name":"docs/parsers/tracepath.md","lines_changed":6},{"name":"docs/parsers/traceroute.md","lines_changed":9},{"name":"docs/parsers/uname.md","lines_changed":6},{"name":"docs/parsers/uptime.md","lines_changed":6},{"name":"docs/parsers/w.md","lines_changed":6},{"name":"docs/parsers/who.md","lines_changed":6},{"name":"docs/parsers/xml.md","lines_changed":6},{"name":"docs/parsers/yaml.md","lines_changed":6},{"name":"docs/readme.md","lines_changed":1},{"name":"docs/utils.md","lines_changed":5}]},"message":"update docs"},{"commit":"dda517a937323b9888e081aea1032a9d63c4a6bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":163,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":166}]},"message":"shorten more examples"},{"commit":"4e6d283b9eddf7759b4dd37bd643394ff73febd4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":65,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":65}]},"message":"shorten netstat example"},{"commit":"55acab05aa740dfd7534304f2678b60942cad116","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["changelog.txt => CHANGELOG"],"file_stats":[{"name":"changelog.txt => CHANGELOG","lines_changed":0}]},"message":"change name to CHANGELOG"},{"commit":"ed38a18d236cdb991779f4f148e42359c139e61c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":86,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":87}]},"message":"remove more examples"},{"commit":"95b3c11203d3dd0627c5eeca39fe1d145bf2d733","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":124,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":124}]},"message":"remove more examples"},{"commit":"dce318f4fd44b9c4013211bf233020e84566ddb7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1537,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1540}]},"message":"remove examples to reduce file size"},{"commit":"85127f0fb8096192b19fca1f4ffe38ee391351be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["jc/examples.md => EXAMPLES.md"],"file_stats":[{"name":"jc/examples.md => EXAMPLES.md","lines_changed":0}]},"message":"move examples to root"},{"commit":"fb45058244ce879f12bbb5b7267b0fd63fef1d63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2640,"deletions":0,"files":["jc/examples.md"],"file_stats":[{"name":"jc/examples.md","lines_changed":2640}]},"message":"add examples file"},{"commit":"45bb5ae389a00ed6a132a65c69ce76c7e5976858","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"spelling"},{"commit":"339238ab364d8735892a11cb16a62a651edae169","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":79,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py","tests/fixtures/centos-7.7/route-6-n.json","tests/fixtures/centos-7.7/route-6-n.out","tests/fixtures/centos-7.7/route-6.json","tests/fixtures/centos-7.7/route-6.out","tests/test_route.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/route-6-n.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/route-6-n.out","lines_changed":24},{"name":"tests/fixtures/centos-7.7/route-6.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/route-6.out","lines_changed":24},{"name":"tests/test_route.py","lines_changed":24}]},"message":"version bump and add route -6 tests"},{"commit":"032cda8b3db096b690d2557e3b918c50c716c543","merge":"690ac52 6badd3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #74 from kellyjonbrazil/dev"},{"commit":"6badd3fb1e1cf6d1ee99614fadc20d54be8039aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":3}]},"message":"add parser count test"},{"commit":"724d825745b6f1692eb3b068c3fb59d14892e690","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":4}]},"message":"add tracepath parser"},{"commit":"ff1e32ad2ee156f105f5069c6b14a65b22784dfa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"a5f97febd3066b9e95a18d6b73162a7d206c5845","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":132,"deletions":0,"files":["tests/fixtures/centos-7.7/tracepath.json","tests/fixtures/centos-7.7/tracepath6.json","tests/fixtures/freebsd12/traceroute.json","tests/fixtures/freebsd12/traceroute.out","tests/fixtures/freebsd12/traceroute6.json","tests/fixtures/freebsd12/traceroute6.out","tests/fixtures/osx-10.14.6/uname.out","tests/test_tracepath.py","tests/test_traceroute.py","tests/test_uname.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/tracepath.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/tracepath6.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/traceroute.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/traceroute.out","lines_changed":14},{"name":"tests/fixtures/freebsd12/traceroute6.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/traceroute6.out","lines_changed":34},{"name":"tests/fixtures/osx-10.14.6/uname.out","lines_changed":1},{"name":"tests/test_tracepath.py","lines_changed":46},{"name":"tests/test_traceroute.py","lines_changed":24},{"name":"tests/test_uname.py","lines_changed":9}]},"message":"update traceroute, tracepath, and uname tests"},{"commit":"5baa6cc865634142690e78596c640db35e110b29","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add route parser update"},{"commit":"7a4f30b843d8f11711abbb8f9bb263f945ff87ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":6}]},"message":"fix for iface issue"},{"commit":"b2c385dc4f63e3e15f47e986deac0524967214a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":2}]},"message":"change 'if' to 'iface'"},{"commit":"5d5da8d33fa6ab77c745d338d1a2e2e8f2e4c697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":6}]},"message":"more fixes for ipv6 fix"},{"commit":"e60457157839daba385202906997dec48c9c4950","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":2}]},"message":"fix next_hop fix"},{"commit":"f9dacc3f95b32e1431914ae0b0dc5c8e8840d5a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":4}]},"message":"fixup for ipv6"},{"commit":"6086920332575cd7db1b38262a3b4ba8fbfae7ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]},"message":"update ParseError message"},{"commit":"f52f3163bcaf8d7e784f02505e81456e8240295b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":49,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":49}]},"message":"add tracepath example"},{"commit":"d18ff73e880c7d34957f2713857cc83094f914cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/tracepath.py"],"file_stats":[{"name":"jc/parsers/tracepath.py","lines_changed":4}]},"message":"update author info"},{"commit":"1e5d602caecd96c9056ad77f9fc50cf25bf6fdfd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":288,"deletions":32,"files":["docs/parsers/tracepath.md","jc/parsers/tracepath.py"],"file_stats":[{"name":"docs/parsers/tracepath.md","lines_changed":122},{"name":"jc/parsers/tracepath.py","lines_changed":198}]},"message":"working tracepath parser"},{"commit":"12912521ecb376c36dfdd743b3c4195598fb9aac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":11,"files":["docs/parsers/traceroute.md","jc/parsers/traceroute.py"],"file_stats":[{"name":"docs/parsers/traceroute.md","lines_changed":7},{"name":"jc/parsers/traceroute.py","lines_changed":4}]},"message":"doc update"},{"commit":"842ea3a94bec3fcab76257fdde5514d1de3d57fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":153,"deletions":0,"files":["docs/parsers/tracepath.md","jc/parsers/tracepath.py"],"file_stats":[{"name":"docs/parsers/tracepath.md","lines_changed":64},{"name":"jc/parsers/tracepath.py","lines_changed":89}]},"message":"add tracepath parser skeleton"},{"commit":"a8560dbc1598fa97de87594228b4cc10282d4197","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add tracepath"},{"commit":"a65e27540a8c5c7123d2fdf79fcbefa1e2f8afdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":24,"files":["docgen.sh","docs/parsers/traceroute.md","jc/parsers/traceroute.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/traceroute.md","lines_changed":14},{"name":"jc/parsers/traceroute.py","lines_changed":10}]},"message":"update docs"},{"commit":"c3c5ed11e68938e35920144406d37ea3b21d63dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]},"message":"change name from tr to trparse"},{"commit":"ce24149335cd8ed1e8513a2cf040432fe42d86b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":1}]},"message":"formatting"},{"commit":"0314ca8c4831d24c169a0e4948421ecd638fd699","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add trparse acknowledgement"},{"commit":"ebd8ee49a9f43063850e30c745c8cae46ee13de1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":27}]},"message":"add key/value info to ini example"},{"commit":"38d10c97814ec69586c3b447c182f339772d6e22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":130,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":131}]},"message":"add ping and traceroute examples"},{"commit":"360106c24d24e6a9697c00a158a14aaa334a4b1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add tracepath"},{"commit":"ca470a5d02fd9fbaf05d8b3b3bb1ffe9f4cf5af3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":39,"deletions":0,"files":["tests/fixtures/centos-7.7/tracepath.out","tests/fixtures/centos-7.7/tracepath6.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/tracepath.out","lines_changed":34},{"name":"tests/fixtures/centos-7.7/tracepath6.out","lines_changed":5}]},"message":"add tracepath fixtures"},{"commit":"57f66e6b1d554ff20b72959f5ebb9e7b2feffed2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":2,"files":["changelog.txt","jc/parsers/uname.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":14}]},"message":"add exception with hint to use \"uname -a\""},{"commit":"e774f67924c0e6195f79829b2ac75ce95f76fbaa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":3,"files":["jc/parsers/ini.py"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":10}]},"message":"turn off interpolation and coerce None to ''"},{"commit":"ac10e576c167d20de259e47a6aa5b23fc998b4c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["docs/parsers/ini.md","jc/parsers/ini.py"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"jc/parsers/ini.py","lines_changed":4}]},"message":"spelling"},{"commit":"bcae0a99cd0ccce4ec8a67929f7c83a1095a5b88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":2}]},"message":"add key/value to ini description"},{"commit":"c73c2ff879b3ed7a3e6f04e53e0a729e4f00ed21","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":8}]},"message":"add ping, traceroute, and ini update"},{"commit":"c39b1a3356881a11a8f6fe9432897e6d67162f07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"add ping, traceroute and update ini description"},{"commit":"125dc2d9e051a82a4a438afe2e520212338353f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":3,"files":["docs/parsers/ini.md"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":11}]},"message":"add info about key/value files to doc"},{"commit":"b7d4ddc7ced2c3aabf3a857b53a0bf1b62eb6a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":50,"deletions":0,"files":["tests/fixtures/generic/keyvalue-ifcfg.json","tests/fixtures/generic/keyvalue-ifcfg.txt","tests/fixtures/generic/keyvalue.json","tests/fixtures/generic/keyvalue.txt","tests/test_ini.py"],"file_stats":[{"name":"tests/fixtures/generic/keyvalue-ifcfg.json","lines_changed":1},{"name":"tests/fixtures/generic/keyvalue-ifcfg.txt","lines_changed":19},{"name":"tests/fixtures/generic/keyvalue.json","lines_changed":1},{"name":"tests/fixtures/generic/keyvalue.txt","lines_changed":5},{"name":"tests/test_ini.py","lines_changed":24}]},"message":"add tests for key/value files"},{"commit":"f5e546c6fa7cba166284a0976887d6b82451d3e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":33,"deletions":9,"files":["jc/parsers/ini.py"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":42}]},"message":"add support for simple key/value pairs"},{"commit":"928e39cd103b96b8c3ccc8d85c930ffb419296c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":104,"deletions":0,"files":["tests/fixtures/generic/traceroute1.json","tests/fixtures/generic/traceroute2.json","tests/fixtures/generic/traceroute3.json","tests/fixtures/generic/traceroute4.json","tests/fixtures/generic/traceroute5.json","tests/fixtures/generic/traceroute6.json","tests/fixtures/generic/traceroute7.json","tests/fixtures/generic/traceroute8.json","tests/test_traceroute.py"],"file_stats":[{"name":"tests/fixtures/generic/traceroute1.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute2.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute3.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute4.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute5.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute6.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute7.json","lines_changed":1},{"name":"tests/fixtures/generic/traceroute8.json","lines_changed":1},{"name":"tests/test_traceroute.py","lines_changed":96}]},"message":"add generic traceroute tests"},{"commit":"d0b7ea68a005daff313e44808b256656313a78a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":4}]},"message":"check for key in dictionary"},{"commit":"8444690133b6a7522822ab279e97ede6ded17ba9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":4}]},"message":"add traceroute"},{"commit":"c03c42d76703ff8f423cf3c10ea6254a27a685cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":76,"deletions":9,"files":["tests/fixtures/centos-7.7/traceroute.json","tests/fixtures/osx-10.14.6/traceroute-asn.json",".../osx-10.14.6/traceroute-mult-addresses.json","tests/fixtures/osx-10.14.6/traceroute-q.json","tests/fixtures/osx-10.14.6/traceroute.json",".../osx-10.14.6/traceroute6-mult-addresses.json","...-address.out => traceroute6-mult-addresses.out}","tests/fixtures/osx-10.14.6/traceroute6.json","tests/test_traceroute.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/traceroute.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/traceroute-asn.json","lines_changed":1},{"name":".../osx-10.14.6/traceroute-mult-addresses.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/traceroute-q.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/traceroute.json","lines_changed":1},{"name":".../osx-10.14.6/traceroute6-mult-addresses.json","lines_changed":1},{"name":"...-address.out => traceroute6-mult-addresses.out}","lines_changed":0},{"name":"tests/fixtures/osx-10.14.6/traceroute6.json","lines_changed":1},{"name":"tests/test_traceroute.py","lines_changed":78}]},"message":"add traceroute tests"},{"commit":"ab67688a00ac335d2a5603e9cadef8b565957911","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":55,"deletions":0,"files":["tests/test_traceroute.py"],"file_stats":[{"name":"tests/test_traceroute.py","lines_changed":55}]},"message":"add test skeleton"},{"commit":"5dcb7166daef3c53da65bba0d591672e64d3a90b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":169,"deletions":0,"files":["docgen.sh","docs/parsers/traceroute.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/traceroute.md","lines_changed":168}]},"message":"add traceroute doc"},{"commit":"14697b86d7fc1cfebb41e0fd2d9a9b9b60071d3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":2,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":26}]},"message":"add MIT license"},{"commit":"4f4b6276d4bf798b17d996f39742bd0428fc2f19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":38,"deletions":33,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":71}]},"message":"update docstring"},{"commit":"7bc497e1291059ae7858c9d2bd2d9a1b4c030dd1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":117,"deletions":14,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":131}]},"message":"updated process() function to set integers and floats"},{"commit":"68a37a6a5a3f0ad0fa24c84d363050af9fa11f97","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":4}]},"message":"remove unused function load()"},{"commit":"6f5cd1d7c5f76d7d4da42171fdc30daf9fe3996e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]},"message":"change to use f-string"},{"commit":"126b1b121ca10183dc7e9dece83b42907becad39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":0,"files":["tests/fixtures/generic/traceroute8.out"],"file_stats":[{"name":"tests/fixtures/generic/traceroute8.out","lines_changed":10}]},"message":"add traceroute6 example"},{"commit":"2341e456a012564f86d533d2748a5887d79995e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":2}]},"message":"use ParseError instead of generic Exception"},{"commit":"72d80e95bb50ae2a7432082e65aba15235ba0955","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":115,"deletions":8,"files":["jc/parsers/traceroute.py","tests/fixtures/generic/traceroute1.out","tests/fixtures/generic/traceroute2.out","tests/fixtures/generic/traceroute3.out","tests/fixtures/generic/traceroute4.out","tests/fixtures/generic/traceroute5.out","tests/fixtures/generic/traceroute6.out","tests/fixtures/generic/traceroute7.out"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":9},{"name":"tests/fixtures/generic/traceroute1.out","lines_changed":16},{"name":"tests/fixtures/generic/traceroute2.out","lines_changed":13},{"name":"tests/fixtures/generic/traceroute3.out","lines_changed":20},{"name":"tests/fixtures/generic/traceroute4.out","lines_changed":7},{"name":"tests/fixtures/generic/traceroute5.out","lines_changed":10},{"name":"tests/fixtures/generic/traceroute6.out","lines_changed":31},{"name":"tests/fixtures/generic/traceroute7.out","lines_changed":17}]},"message":"remove unused regex patterns"},{"commit":"f5ec82440cd1c1b5ac9011d3517298d0cdcd8766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/traceroute.py"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":11}]},"message":"simplify regex patterns"},{"commit":"c8e526ead35b868733f57b4c114062a48b78a817","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":3,"files":["jc/parsers/traceroute.py","tests/fixtures/osx-10.14.6/traceroute-q.out"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":11},{"name":"tests/fixtures/osx-10.14.6/traceroute-q.out","lines_changed":4}]},"message":"fixes for bsd-style ipv6 output"},{"commit":"066adfb76479df7042bfb12bbb83b5dbd8a6d54c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":83,"deletions":7,"files":["jc/parsers/traceroute.py","tests/fixtures/centos-7.7/traceroute.out","tests/fixtures/osx-10.14.6/traceroute-asn.out",".../osx-10.14.6/traceroute-mult-addresses.out",".../fixtures/osx-10.14.6/traceroute-no-header.out",".../osx-10.14.6/traceroute6-multi-address.out","tests/fixtures/osx-10.14.6/traceroute6.out"],"file_stats":[{"name":"jc/parsers/traceroute.py","lines_changed":30},{"name":"tests/fixtures/centos-7.7/traceroute.out","lines_changed":32},{"name":"tests/fixtures/osx-10.14.6/traceroute-asn.out","lines_changed":5},{"name":".../osx-10.14.6/traceroute-mult-addresses.out","lines_changed":5},{"name":".../fixtures/osx-10.14.6/traceroute-no-header.out","lines_changed":3},{"name":".../osx-10.14.6/traceroute6-multi-address.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/traceroute6.out","lines_changed":7}]},"message":"handle warning lines in the traceroute output"},{"commit":"5b444d4717b0b8528647e17e71d699907def3e18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":307,"deletions":0,"files":["jc/cli.py","jc/parsers/traceroute.py","tests/fixtures/osx-10.14.6/traceroute.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/traceroute.py","lines_changed":295},{"name":"tests/fixtures/osx-10.14.6/traceroute.out","lines_changed":11}]},"message":"add traceroute parser"},{"commit":"69c95adc8d59927c1c00b7e766ca5003b7b6454c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":81,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ping6-ip-dup.json","tests/fixtures/osx-10.14.6/ping6-ip-dup.out","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ping6-ip-dup.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-dup.out","lines_changed":68},{"name":"tests/test_ping.py","lines_changed":12}]},"message":"add osx ipv6 ping dup test"},{"commit":"2b0e0d8f5c1a6a5450e362971f9ad5892093b2ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":27,"deletions":0,"files":["tests/fixtures/centos-7.7/ping6-ip-dup.json","tests/fixtures/centos-7.7/ping6-ip-dup.out","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ping6-ip-dup.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-ip-dup.out","lines_changed":14},{"name":"tests/test_ping.py","lines_changed":12}]},"message":"add ipv6 dup test"},{"commit":"778d1bacbf8df523d434b22f5e1517955e4c15ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":28,"deletions":12,"files":["docs/parsers/ping.md","jc/parsers/ping.py"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":20},{"name":"jc/parsers/ping.py","lines_changed":20}]},"message":"update docs to add \"duplicates\" fields"},{"commit":"7e1b0410166c584775ebcd681a280ec7321560c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":0,"files":["tests/test_ping.py"],"file_stats":[{"name":"tests/test_ping.py","lines_changed":24}]},"message":"add duplicate replies tests"},{"commit":"313b9b329ca6b674069718839f55a4bd7834db80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":55,"insertions":55,"deletions":53,"files":["tests/fixtures/centos-7.7/ping-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping-hostname-O-p.json","tests/fixtures/centos-7.7/ping-hostname-O.json","tests/fixtures/centos-7.7/ping-ip-O-D.json","tests/fixtures/centos-7.7/ping-ip-O.json","tests/fixtures/centos-7.7/ping-ip-dup.json","tests/fixtures/centos-7.7/ping6-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping6-hostname-O-p.json","tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","tests/fixtures/centos-7.7/ping6-ip-O-p.json","tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping-hostname-O-p.json","tests/fixtures/fedora32/ping-hostname-O.json","tests/fixtures/fedora32/ping-ip-O-D.json","tests/fixtures/fedora32/ping-ip-O.json","tests/fixtures/fedora32/ping6-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping6-hostname-O-D-p.json","tests/fixtures/fedora32/ping6-hostname-O-p.json","tests/fixtures/fedora32/ping6-ip-O-D-p.json","tests/fixtures/fedora32/ping6-ip-O-p.json","tests/fixtures/freebsd12/ping-hostname-p.json","tests/fixtures/freebsd12/ping-hostname-s.json","tests/fixtures/freebsd12/ping-hostname.json","tests/fixtures/freebsd12/ping-ip-p.json","tests/fixtures/freebsd12/ping-ip-s.json","tests/fixtures/freebsd12/ping-ip.json","tests/fixtures/freebsd12/ping6-hostname-p.json","tests/fixtures/freebsd12/ping6-hostname-s.json","tests/fixtures/freebsd12/ping6-hostname.json","tests/fixtures/freebsd12/ping6-ip-p.json","tests/fixtures/freebsd12/ping6-ip-s.json","tests/fixtures/freebsd12/ping6-ip.json","tests/fixtures/osx-10.14.6/ping-hostname-p.json","tests/fixtures/osx-10.14.6/ping-hostname-s.json","tests/fixtures/osx-10.14.6/ping-hostname.json","tests/fixtures/osx-10.14.6/ping-ip-dup.json","tests/fixtures/osx-10.14.6/ping-ip-p.json","tests/fixtures/osx-10.14.6/ping-ip-s.json","tests/fixtures/osx-10.14.6/ping-ip.json","tests/fixtures/osx-10.14.6/ping6-hostname-p.json","tests/fixtures/osx-10.14.6/ping6-hostname-s.json","tests/fixtures/osx-10.14.6/ping6-hostname.json","tests/fixtures/osx-10.14.6/ping6-ip-p.json","tests/fixtures/osx-10.14.6/ping6-ip-s.json","tests/fixtures/osx-10.14.6/ping6-ip.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping-hostname-O.json","tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","tests/fixtures/ubuntu-18.04/ping-ip-O.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ping-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-hostname-O.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-ip-O-D.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-ip-O.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping-ip-dup.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping6-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-hostname-O.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-ip-O-D.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping-ip-O.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-ip-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/fedora32/ping6-ip-O-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-hostname-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-hostname-s.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-hostname.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-ip-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-ip-s.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping-ip.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-hostname-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-hostname-s.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-hostname.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-ip-p.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-ip-s.json","lines_changed":2},{"name":"tests/fixtures/freebsd12/ping6-ip.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-hostname-p.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-hostname-s.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-hostname.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-ip-dup.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-p.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-ip-s.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping-ip.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-p.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-s.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-p.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-s.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ping6-ip.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p-s.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-hostname-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json","lines_changed":2}]},"message":"update fixtures for added 'duplicate' fields"},{"commit":"6830062256fbc453f87224f7ab8c10e4494b5a83","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":112,"deletions":24,"files":["docs/parsers/ping.md","jc/parsers/ping.py","tests/fixtures/centos-7.7/ping-ip-dup.out","tests/fixtures/osx-10.14.6/ping-ip-dup.out"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":6},{"name":"jc/parsers/ping.py","lines_changed":83},{"name":"tests/fixtures/centos-7.7/ping-ip-dup.out","lines_changed":27},{"name":"tests/fixtures/osx-10.14.6/ping-ip-dup.out","lines_changed":20}]},"message":"add support for duplicate replies"},{"commit":"323072c9827c41c5d74433504b5efceb846cfe09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/ping.md","jc/parsers/ping.py"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":1},{"name":"jc/parsers/ping.py","lines_changed":1}]},"message":"add source_ip to schema doc"},{"commit":"8719d96bddec80187e7ba3286ba93bfec8465744","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"change description"},{"commit":"dd5d318ab5bbb1027dd600fd3b0b6ec9b8adfdc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":6}]},"message":"version bump and add ping command"},{"commit":"d6dc7f5e65c097895c19000e59e8803a3b350fdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":135,"deletions":29,"files":["tests/fixtures/osx-10.14.6/ping-hostname-p.json","tests/fixtures/osx-10.14.6/ping-hostname-s.json","tests/fixtures/osx-10.14.6/ping-hostname.json","tests/fixtures/osx-10.14.6/ping-ip-p.json","tests/fixtures/osx-10.14.6/ping-ip-s.json","tests/fixtures/osx-10.14.6/ping-ip.json","tests/fixtures/osx-10.14.6/ping6-hostname-p.json","tests/fixtures/osx-10.14.6/ping6-hostname-s.json","tests/fixtures/osx-10.14.6/ping6-hostname.json","tests/fixtures/osx-10.14.6/ping6-ip-p.json","tests/fixtures/osx-10.14.6/ping6-ip-s.json","tests/fixtures/osx-10.14.6/ping6-ip.json","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ping-hostname-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-hostname-s.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-hostname.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip-s.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping-ip.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-s.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-p.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-s.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ping6-ip.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":152}]},"message":"add osx ping tests"},{"commit":"c203664eb5aafa0afa3101b79e3fd13b3e009ec5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":171,"deletions":9,"files":["tests/fixtures/freebsd12/ping-hostname-p.json","tests/fixtures/freebsd12/ping-hostname-s.json","tests/fixtures/freebsd12/ping-hostname.json","tests/fixtures/freebsd12/ping-ip-p.json","tests/fixtures/freebsd12/ping-ip-s.json","tests/fixtures/freebsd12/ping-ip.json","tests/fixtures/freebsd12/ping6-hostname-p.json","tests/fixtures/freebsd12/ping6-hostname-s.json","tests/fixtures/freebsd12/ping6-hostname.json","tests/fixtures/freebsd12/ping6-ip-p.json","tests/fixtures/freebsd12/ping6-ip-s.json","tests/fixtures/freebsd12/ping6-ip.json","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/ping-hostname-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-hostname-s.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-hostname.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip-s.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping-ip.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-hostname-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-hostname-s.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-hostname.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip-s.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ping6-ip.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":168}]},"message":"freebsd ping tests"},{"commit":"19ecf1fa19e9fa0873002baf07fa670b71ed7752","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":118,"deletions":0,"files":["tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping-hostname-O-p.json","tests/fixtures/fedora32/ping-hostname-O.json","tests/fixtures/fedora32/ping-ip-O-D.json","tests/fixtures/fedora32/ping-ip-O.json",".../fixtures/fedora32/ping6-hostname-O-D-p-s.json","tests/fixtures/fedora32/ping6-hostname-O-D-p.json","tests/fixtures/fedora32/ping6-hostname-O-p.json","tests/fixtures/fedora32/ping6-ip-O-D-p.json","tests/fixtures/fedora32/ping6-ip-O-p.json","tests/test_ping.py"],"file_stats":[{"name":"tests/fixtures/fedora32/ping-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-hostname-O.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-ip-O-D.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping-ip-O.json","lines_changed":1},{"name":".../fixtures/fedora32/ping6-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping6-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping6-ip-O-D-p.json","lines_changed":1},{"name":"tests/fixtures/fedora32/ping6-ip-O-p.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":108}]},"message":"add Fedora32 tests"},{"commit":"b8deb0426cc23333c0e0a9dc3776d9761d99abb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":119,"deletions":8,"files":[".../ubuntu-18.04/ping-hostname-O-D-p-s.json","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping-hostname-O.json","tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","tests/fixtures/ubuntu-18.04/ping-ip-O.json",".../ubuntu-18.04/ping6-hostname-O-D-p-s.json",".../ubuntu-18.04/ping6-hostname-O-D-p.json",".../fixtures/ubuntu-18.04/ping6-hostname-O-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json","tests/test_ping.py"],"file_stats":[{"name":".../ubuntu-18.04/ping-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O-D.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-hostname-O-D-p-s.json","lines_changed":1},{"name":".../ubuntu-18.04/ping6-hostname-O-D-p.json","lines_changed":1},{"name":".../fixtures/ubuntu-18.04/ping6-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-p.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":117}]},"message":"add ubuntu ping tests"},{"commit":"3b8371f0208a097cb8a1c026348d3842e6702b9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":202,"deletions":0,"files":[".../fixtures/centos-7.7/ping-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping-hostname-O-p.json","tests/fixtures/centos-7.7/ping-hostname-O.json","tests/fixtures/centos-7.7/ping-ip-O-D.json","tests/fixtures/centos-7.7/ping-ip-O.json",".../centos-7.7/ping6-hostname-O-D-p-s.json","tests/fixtures/centos-7.7/ping6-hostname-O-p.json","tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","tests/fixtures/centos-7.7/ping6-ip-O-p.json","tests/test_ping.py"],"file_stats":[{"name":".../fixtures/centos-7.7/ping-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-hostname-O.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-ip-O-D.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping-ip-O.json","lines_changed":1},{"name":".../centos-7.7/ping6-hostname-O-D-p-s.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-hostname-O-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-D-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-p.json","lines_changed":1},{"name":"tests/test_ping.py","lines_changed":193}]},"message":"add centos ping tests"},{"commit":"20bb1cdf396abdb3707b34fa146cbe913f9bbd6f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":8}]},"message":"add TypeError to except for None values"},{"commit":"301daa48d0bfc28f97c8e46f028f8c6b875bf34e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":114,"deletions":16,"files":["docs/parsers/ping.md","jc/parsers/ping.py"],"file_stats":[{"name":"docs/parsers/ping.md","lines_changed":128},{"name":"jc/parsers/ping.py","lines_changed":2}]},"message":"update documentation"},{"commit":"8421ec88033e02f472e4961d87551a0352663a16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":4}]},"message":"remove cygwin compatibility"},{"commit":"74211eb0129f6aa655a38ba4d4d8844d81441107","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":82,"deletions":5,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":87}]},"message":"add examples"},{"commit":"60bd42f298f309cbec6d24c9543ea3d51bd73b18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":59,"deletions":11,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":70}]},"message":"add process() logic"},{"commit":"14bdd74526e400997c5bc247ea35ed40799e83ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":100,"deletions":0,"files":["tests/fixtures/freebsd12/ping-hostname-p.out","tests/fixtures/freebsd12/ping-hostname-s.out","tests/fixtures/freebsd12/ping-hostname.out","tests/fixtures/freebsd12/ping-ip-p.out","tests/fixtures/freebsd12/ping-ip-s.out","tests/fixtures/freebsd12/ping-ip.out","tests/fixtures/freebsd12/ping6-hostname-p.out","tests/fixtures/freebsd12/ping6-hostname-s.out","tests/fixtures/freebsd12/ping6-hostname.out","tests/fixtures/freebsd12/ping6-ip-p.out","tests/fixtures/freebsd12/ping6-ip-s.out","tests/fixtures/freebsd12/ping6-ip.out"],"file_stats":[{"name":"tests/fixtures/freebsd12/ping-hostname-p.out","lines_changed":9},{"name":"tests/fixtures/freebsd12/ping-hostname-s.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping-hostname.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping-ip-p.out","lines_changed":9},{"name":"tests/fixtures/freebsd12/ping-ip-s.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping-ip.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping6-hostname-p.out","lines_changed":9},{"name":"tests/fixtures/freebsd12/ping6-hostname-s.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping6-hostname.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping6-ip-p.out","lines_changed":9},{"name":"tests/fixtures/freebsd12/ping6-ip-s.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/ping6-ip.out","lines_changed":8}]},"message":"add ping test fixtures"},{"commit":"fb0f3eda04a4b1dbb81da7d5791cbfe746bfd617","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["tests/fixtures/create_fixtures.sh"],"file_stats":[{"name":"tests/fixtures/create_fixtures.sh","lines_changed":16}]},"message":"add ping commands"},{"commit":"91ee6e6701307363336a39f9e16641465ddd05c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":100,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ping-hostname-p.out","tests/fixtures/osx-10.14.6/ping-hostname-s.out","tests/fixtures/osx-10.14.6/ping-hostname.out","tests/fixtures/osx-10.14.6/ping-ip-p.out","tests/fixtures/osx-10.14.6/ping-ip-s.out","tests/fixtures/osx-10.14.6/ping-ip.out","tests/fixtures/osx-10.14.6/ping6-hostname-p.out","tests/fixtures/osx-10.14.6/ping6-hostname-s.out","tests/fixtures/osx-10.14.6/ping6-hostname.out","tests/fixtures/osx-10.14.6/ping6-ip-p.out","tests/fixtures/osx-10.14.6/ping6-ip-s.out","tests/fixtures/osx-10.14.6/ping6-ip.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ping-hostname-p.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/ping-hostname-s.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping-hostname.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping-ip-p.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/ping-ip-s.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping-ip.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-p.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname-s.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping6-hostname.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-p.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/ping6-ip-s.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/ping6-ip.out","lines_changed":8}]},"message":"add osx ping test fixtures"},{"commit":"51f4e6927c68a7e2a26954f564d10d316b98a984","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":3,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":15}]},"message":"add support for pattern in osx/bsd"},{"commit":"94988d86674293faddc6f7e7c82575738d2dc791","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":257,"deletions":0,"files":["tests/fixtures/fedora32/ping-hostname-O-D-p-s.out","tests/fixtures/fedora32/ping-hostname-O-p.out","tests/fixtures/fedora32/ping-hostname-O.out","tests/fixtures/fedora32/ping-ip-O-D.out","tests/fixtures/fedora32/ping-ip-O.out","tests/fixtures/fedora32/ping6-hostname-O-D-p-s.out","tests/fixtures/fedora32/ping6-hostname-O-D-p.out","tests/fixtures/fedora32/ping6-hostname-O-p.out","tests/fixtures/fedora32/ping6-ip-O-D-p.out","tests/fixtures/fedora32/ping6-ip-O-p.out"],"file_stats":[{"name":"tests/fixtures/fedora32/ping-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping-hostname-O.out","lines_changed":25},{"name":"tests/fixtures/fedora32/ping-ip-O-D.out","lines_changed":25},{"name":"tests/fixtures/fedora32/ping-ip-O.out","lines_changed":25},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping6-hostname-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping6-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping6-ip-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/fedora32/ping6-ip-O-p.out","lines_changed":26}]},"message":"add fedora ping fixtures"},{"commit":"fe36f5a98cd3ee7753e250b6553e4453d971f929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":318,"deletions":0,"files":["tests/fixtures/centos-7.7/ping-ip-O-D.out","tests/fixtures/centos-7.7/ping-ip-O.out","tests/fixtures/create_fixtures.sh",".../ubuntu-18.04/ping-hostname-O-D-p-s.out","tests/fixtures/ubuntu-18.04/ping-hostname-O-p.out","tests/fixtures/ubuntu-18.04/ping-hostname-O.out","tests/fixtures/ubuntu-18.04/ping-ip-O-D.out","tests/fixtures/ubuntu-18.04/ping-ip-O.out",".../ubuntu-18.04/ping6-hostname-O-D-p-s.out",".../fixtures/ubuntu-18.04/ping6-hostname-O-D-p.out","tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.out","tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.out","tests/fixtures/ubuntu-18.04/ping6-ip-O-p.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ping-ip-O-D.out","lines_changed":25},{"name":"tests/fixtures/centos-7.7/ping-ip-O.out","lines_changed":25},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":12},{"name":".../ubuntu-18.04/ping-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping-hostname-O.out","lines_changed":25},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O-D.out","lines_changed":25},{"name":"tests/fixtures/ubuntu-18.04/ping-ip-O.out","lines_changed":25},{"name":".../ubuntu-18.04/ping6-hostname-O-D-p-s.out","lines_changed":26},{"name":".../fixtures/ubuntu-18.04/ping6-hostname-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping6-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/ping6-ip-O-p.out","lines_changed":25}]},"message":"add fixtures for ping"},{"commit":"f9eb18b9271b2428dd82f2dc26d3fa0435dad81d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/ping.py"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":17}]},"message":"change 'request_timeout' field to 'type', fix compatibility, other formatting fixes"},{"commit":"cc60f3674822c644933f286a0364b09d7e2a60b3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":67,"deletions":1,"files":["docgen.sh","docs/parsers/ping.md","jc/cli.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ping.md","lines_changed":64},{"name":"jc/cli.py","lines_changed":3}]},"message":"add ping parser"},{"commit":"604ade791f7bd33b37f64916befba27a2ea08b5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":506,"deletions":0,"files":["jc/parsers/ping.py",".../fixtures/centos-7.7/ping-hostname-O-D-p-s.out","tests/fixtures/centos-7.7/ping-hostname-O-p.out","tests/fixtures/centos-7.7/ping-hostname-O.out",".../fixtures/centos-7.7/ping6-hostname-O-D-p-s.out","tests/fixtures/centos-7.7/ping6-hostname-O-p.out","tests/fixtures/centos-7.7/ping6-ip-O-D-p.out","tests/fixtures/centos-7.7/ping6-ip-O-p.out"],"file_stats":[{"name":"jc/parsers/ping.py","lines_changed":325},{"name":".../fixtures/centos-7.7/ping-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping-hostname-O.out","lines_changed":25},{"name":".../fixtures/centos-7.7/ping6-hostname-O-D-p-s.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping6-hostname-O-p.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-D-p.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/ping6-ip-O-p.out","lines_changed":26}]},"message":"add ping parser"},{"commit":"690ac52a917200e46eac2feafc9f504f2734301c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":261,"deletions":0,"files":["man/jc.1"],"file_stats":[{"name":"man/jc.1","lines_changed":261}]},"message":"add man page"},{"commit":"34ed772775f1f02ed148f24a3bfff532bc811607","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"d5ab95571f64f55d8194e9e5592ac538bb535229","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":11,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":37}]},"message":"fix tests when using older versions of pygments"},{"commit":"ffb3a0ee5fb30a3f61d6cbedf877ab04acdbf624","merge":"fde0bc8 94b12b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #73 from kellyjonbrazil/dev"},{"commit":"94b12b57aaa56170d1f31f4910fd1239f88de137","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"spelling"},{"commit":"6d149e84571d5d6dd1d8a1f219ba299de5173779","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":1,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":7},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"1ad89c90d890039b817f65b2635db1b5e849a9e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add pacman"},{"commit":"fb71c7b020bc1eda9484595f30b0200a4f59aa45","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":2}]},"message":"function name spelling"},{"commit":"28ed17ad3bce866e5dc0179ef5de43380ac6ace1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":1}]},"message":"add parser_count test to test_cli_about_jc"},{"commit":"0c2a4e2bf71dca50d4a9bb27ca99944909c022ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":37}]},"message":"add cli tests"},{"commit":"62bec30de2f1a303f2ec411d89f7f9f9c6d1abaf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":0,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":20}]},"message":"add json_out tests"},{"commit":"3fced77e4e258dbf7db94a313e599c830a597b49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":98,"deletions":1,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":99}]},"message":"add set_env_colors tests"},{"commit":"a09d1d8b7687912610598c88d172733d5e29b1ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":13}]},"message":"move environment variable assignment to main() to simplify tests"},{"commit":"8f4243fbd8d70ca9fd019e984c564e37c81e07db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"formatting"},{"commit":"47aaf20549ea238443427e69d5841d6996b7afab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":17,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":17}]},"message":"add sysctl command parser"},{"commit":"0c5289ea50e4d3d35e80147b4cad32434c19a2a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":72,"deletions":2,"files":["tests/fixtures/freebsd12/sysctl-a.json","tests/fixtures/osx-10.14.6/sysctl-a.json","tests/test_sysctl.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/sysctl-a.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/sysctl-a.json","lines_changed":2},{"name":"tests/test_sysctl.py","lines_changed":70}]},"message":"add sysctl tests"},{"commit":"3e53323514906fb84abfaeed0c2ee1fd9090ad8d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":2}]},"message":"don't filter out empty lines"},{"commit":"a5ee9861b9b9b479aee59ea5b1d75f20d7c3c8e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3785,"deletions":1,"files":["tests/fixtures/freebsd12/sysctl-a.json","tests/fixtures/freebsd12/sysctl-a.out","tests/fixtures/osx-10.14.6/sysctl-a.json"],"file_stats":[{"name":"tests/fixtures/freebsd12/sysctl-a.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/sysctl-a.out","lines_changed":3783},{"name":"tests/fixtures/osx-10.14.6/sysctl-a.json","lines_changed":2}]},"message":"update fixtures"},{"commit":"feb8ca76545cba4fd0927273ddf90a77df994006","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["docs/parsers/sysctl.md"],"file_stats":[{"name":"docs/parsers/sysctl.md","lines_changed":2}]},"message":"spelling"},{"commit":"a7abe4473b90c512466db9ae98cfac585689fe2a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":2}]},"message":"spelling"},{"commit":"780b9b61dec3e142e46c9a82146d2af4e1144123","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":6}]},"message":"specify IndexError exception in try/except block"},{"commit":"19ace36ffa659bedf0ba2e43572c9e253592b2e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2167,"deletions":0,"files":["tests/fixtures/osx-10.14.6/sysctl-a.json","tests/fixtures/osx-10.14.6/sysctl-a.out","tests/fixtures/ubuntu-18.04/sysctl-a.json","tests/fixtures/ubuntu-18.04/sysctl-a.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/sysctl-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/sysctl-a.out","lines_changed":1287},{"name":"tests/fixtures/ubuntu-18.04/sysctl-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/sysctl-a.out","lines_changed":878}]},"message":"add fixtures"},{"commit":"5fff8afc9f47f8cc6db8ed3613b90b5cdc683b43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":33,"deletions":11,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":44}]},"message":"add fixes for freebsd where values can be on separate lines under the key"},{"commit":"4ad230c9279c5eb6c8ed6baf7254b8e9328e5af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":929,"deletions":14,"files":["docs/parsers/sysctl.md","jc/parsers/sysctl.py","tests/fixtures/centos-7.7/sysctl-a.json","tests/fixtures/centos-7.7/sysctl-a.out"],"file_stats":[{"name":"docs/parsers/sysctl.md","lines_changed":12},{"name":"jc/parsers/sysctl.py","lines_changed":12},{"name":"tests/fixtures/centos-7.7/sysctl-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/sysctl-a.out","lines_changed":918}]},"message":"doc update and add test fixtures"},{"commit":"dd98eb1ec8f451eb87a5094e76a7f758dee3fc69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":7,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":11}]},"message":"append duplicate key values to original key instead of adding unique keys"},{"commit":"c6baf42e72b4f41ed511e7db943297d03a39c0d5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":94,"deletions":7,"files":["docgen.sh","docs/parsers/sysctl.md","jc/parsers/sysctl.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/sysctl.md","lines_changed":86},{"name":"jc/parsers/sysctl.py","lines_changed":14}]},"message":"doc updates"},{"commit":"e2bac97d563e5ef771ccd8ed1e5c42cbf588b120","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":12}]},"message":"fix for multiple identical keys in sysctl output"},{"commit":"d112ee94d0ec534828c8508d0fb833b768975990","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":4,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":12}]},"message":"use try/except and add support for floats in process()"},{"commit":"27b21b2fafab912f21b88b66c7f817cbce155765","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":7,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":15}]},"message":"formatting and docstring updates"},{"commit":"8c96d5cd20448a4f7f9736c4d489d6ecc3068ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["requirements.txt"],"file_stats":[{"name":"requirements.txt","lines_changed":2}]},"message":"reduce pygments version requirement"},{"commit":"c29ed3fd695f725005333db5e6e2cd844bb4ca14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":13,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":27}]},"message":"formatting of quotation marks and docstrings"},{"commit":"cedf603f121636bdfa95432059c3c275c3ea3e9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]},"message":"minor formatting"},{"commit":"279161c36f288c27a9789054ae372fe8ceb58a94","merge":"bc7116c ce0b43d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #72 from duelafn/pygments-2.3"},{"commit":"ce0b43d919f07d96d1b94e9d14d03e935e80011d","author":"Dean Serenevy","author_email":"dean@serenevy.net","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"Remove dependency on 3rd party packaging library"},{"commit":"ddafa5bf06066bab8e9587be902d6752fcf51605","author":"Dean Serenevy","author_email":"dean@serenevy.net","stats":{"files_changed":2,"insertions":47,"deletions":7,"files":["jc/cli.py","setup.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":52},{"name":"setup.py","lines_changed":2}]},"message":"Support older pygments"},{"commit":"bc7116c31bacf3159aef775fd0e615187420b010","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":8,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":15}]},"message":"fix JC_COLORS env bug and simplify set_env_colors()"},{"commit":"53b709272115e769dac905296fa3b000c1cdd66a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":11,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":22}]},"message":"remove side-effects from functions and print in main()"},{"commit":"beb9174b1b35937ae1fb99778369ae643a8f1005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":123,"deletions":0,"files":["jc/parsers/sysctl.py"],"file_stats":[{"name":"jc/parsers/sysctl.py","lines_changed":123}]},"message":"add sysctl parser"},{"commit":"aea41ed341c8d53cc07c35e8044e8f816ddd2fed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":11}]},"message":"move verbose_debug enable earlier in code to catch more issues. add sysctl and version bump"},{"commit":"d789494cb1f691aa352419aaefc692f654477177","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/tracebackplus.py"],"file_stats":[{"name":"jc/tracebackplus.py","lines_changed":2}]},"message":"change type check to use isinstance"},{"commit":"608e7b4cff081f92177e4151ffa1a91a4a6895ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":61,"deletions":0,"files":["jc/tracebackplus.py"],"file_stats":[{"name":"jc/tracebackplus.py","lines_changed":61}]},"message":"add license info"},{"commit":"4ee199c02a78c2707c5d1427d7c8fae56df5671c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":189,"deletions":3,"files":["jc/cli.py","jc/tracebackplus.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6},{"name":"jc/tracebackplus.py","lines_changed":186}]},"message":"use tracebackplus instead of cgitb since cgitb is depricated"},{"commit":"fbf47d408501dadda4671fb530f5e11859e85d53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add arch linux"},{"commit":"5a238e4b4204f0552327534ef798c28d3ad4f578","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"remove updates-testing from fedora command"},{"commit":"f852b8246a8f9e5f7d9144fed3a0daa4eddfe035","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":3}]},"message":"wrap warning message"},{"commit":"88140d929a500ee78f807862c4912c399df2a460","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"wrap error message in code"},{"commit":"45f726824027af49c437b6e81e4700f7098af320","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add -dd to error message"},{"commit":"3a3c8e4d4a77135eaee5cb30c3107a4531c300ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]},"message":"move verbose_debug under debug check"},{"commit":"c1ac183a0472e93226c9ee1905f56c5183e3721f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":15,"deletions":22,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":37}]},"message":"simplify debug option"},{"commit":"18bb779ee5cd5821764b03173f16e922f753c64d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"formatting: double quotes to single quotes"},{"commit":"8b6612fe7911ab9e0bf8d29be60865d3b8aa3fd8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"move JC_COLORS parsing error message"},{"commit":"fde0bc853415418e01616861ace5048770bd97f8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":34,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":43}]},"message":"improve package install info"},{"commit":"e661a78939ff067b8a61f08301c178dd10a344ab","merge":"b969751 847e346","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #71 from wigust/guix"},{"commit":"847e346602789bf58e3515319e9d080dfb897fc9","author":"Oleg Pykhalov","author_email":"go.wigust@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"add guix package info"},{"commit":"b9697516887c61f08d8d7b1dc9130350e5bdba9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"add other references"},{"commit":"ad6f2ba03a293a7f55e456fa5f5b55ee3cbcd4ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"63c6a5edc0e9001b143595fd8b96f1b4a1377a3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"formatting"},{"commit":"9f4cf9dd5efe94adfff0961fdb73097ca27c5463","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":197,"deletions":67,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":264}]},"message":"formatting"},{"commit":"51331b6dc01eee00847fa4be549ffde365373a01","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":5}]},"message":"formatting"},{"commit":"efb6761033319644bf9cdae6288ff5609f6482ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"6a4f737a0f1c322bebccf69809d9816fc770c5ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":88,"deletions":115,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":203}]},"message":"update json syntax highlighting"},{"commit":"be6864b778ab721bcba5fc3221576153be7b2ed3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":26,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":52}]},"message":"add syntax highlighting tags"},{"commit":"de3b91a36cfcaf565b26b1da42f1e87835da4dc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add -dd option"},{"commit":"ef5482c3b5afa0ee8e85851bebab1c104cb59936","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":15,"deletions":7,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":17},{"name":"setup.py","lines_changed":2}]},"message":"add verbose debug option"},{"commit":"d20b795137036f8b889eb231cb4f14b756ec6479","merge":"69018cd 8a13406","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #70 from kellyjonbrazil/dev"},{"commit":"8a134065dff429551449c1ea16a36d745fdab580","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":12,"deletions":12,"files":["tests/fixtures/centos-7.7/iptables-filter-line-numbers.json","tests/fixtures/centos-7.7/iptables-filter-nv.json","tests/fixtures/centos-7.7/iptables-filter.json","tests/fixtures/centos-7.7/iptables-mangle.json","tests/fixtures/centos-7.7/iptables-nat.json","tests/fixtures/centos-7.7/iptables-raw.json","tests/fixtures/ubuntu-18.04/iptables-filter-line-numbers.json","tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","tests/fixtures/ubuntu-18.04/iptables-filter.json","tests/fixtures/ubuntu-18.04/iptables-mangle.json","tests/fixtures/ubuntu-18.04/iptables-nat.json","tests/fixtures/ubuntu-18.04/iptables-raw.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/iptables-filter-line-numbers.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-filter-nv.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-filter.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-mangle.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-nat.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/iptables-raw.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter-line-numbers.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-mangle.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-nat.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/iptables-raw.json","lines_changed":2}]},"message":"update fixtures for last chain fix"},{"commit":"22aee1bfa40ed1d3c4df28cd934ef0edfc5c458c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"b282820fd67dcc96c058198f97b066e7b402d1f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":3}]},"message":"fix to include the final chain in output"},{"commit":"3ee098306daf903687cb0febf92773a81e216111","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":2}]},"message":"version bump"},{"commit":"09e8f379a64b3b37bb99b4291c10aa4a5cdedea4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":11,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":20}]},"message":"iptables code optimizations"},{"commit":"69018cdb3a77fcdcb5648e3b89933148c55a6412","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"fix date"},{"commit":"d0d7254c6acc7be4341618d231a5b166f640b287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":26,"deletions":0,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":15},{"name":"jc/utils.py","lines_changed":11}]},"message":"add docstring"},{"commit":"cc0f0971d76b6f3dec8d989e83f5676db8f2c6d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":56,"insertions":476,"deletions":439,"files":["changelog.txt","jc/cli.py","jc/parsers/airport.py","jc/parsers/airport_s.py","jc/parsers/arp.py","jc/parsers/blkid.py","jc/parsers/crontab.py","jc/parsers/crontab_u.py","jc/parsers/csv.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/dmidecode.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/file.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/group.py","jc/parsers/gshadow.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/ini.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/last.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/passwd.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/shadow.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/timedatectl.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/who.py","jc/parsers/xml.py","jc/parsers/yaml.py","jc/utils.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/airport.py","lines_changed":10},{"name":"jc/parsers/airport_s.py","lines_changed":4},{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/blkid.py","lines_changed":5},{"name":"jc/parsers/crontab.py","lines_changed":5},{"name":"jc/parsers/crontab_u.py","lines_changed":5},{"name":"jc/parsers/csv.py","lines_changed":5},{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":193},{"name":"jc/parsers/dmidecode.py","lines_changed":264},{"name":"jc/parsers/du.py","lines_changed":8},{"name":"jc/parsers/env.py","lines_changed":8},{"name":"jc/parsers/file.py","lines_changed":39},{"name":"jc/parsers/foo.py","lines_changed":8},{"name":"jc/parsers/free.py","lines_changed":5},{"name":"jc/parsers/fstab.py","lines_changed":5},{"name":"jc/parsers/group.py","lines_changed":5},{"name":"jc/parsers/gshadow.py","lines_changed":5},{"name":"jc/parsers/history.py","lines_changed":26},{"name":"jc/parsers/hosts.py","lines_changed":8},{"name":"jc/parsers/id.py","lines_changed":8},{"name":"jc/parsers/ifconfig.py","lines_changed":18},{"name":"jc/parsers/ini.py","lines_changed":5},{"name":"jc/parsers/iptables.py","lines_changed":44},{"name":"jc/parsers/jobs.py","lines_changed":8},{"name":"jc/parsers/last.py","lines_changed":8},{"name":"jc/parsers/ls.py","lines_changed":5},{"name":"jc/parsers/lsblk.py","lines_changed":8},{"name":"jc/parsers/lsmod.py","lines_changed":5},{"name":"jc/parsers/lsof.py","lines_changed":9},{"name":"jc/parsers/mount.py","lines_changed":9},{"name":"jc/parsers/netstat.py","lines_changed":8},{"name":"jc/parsers/ntpq.py","lines_changed":5},{"name":"jc/parsers/passwd.py","lines_changed":8},{"name":"jc/parsers/pip_list.py","lines_changed":9},{"name":"jc/parsers/pip_show.py","lines_changed":9},{"name":"jc/parsers/ps.py","lines_changed":6},{"name":"jc/parsers/route.py","lines_changed":6},{"name":"jc/parsers/shadow.py","lines_changed":8},{"name":"jc/parsers/ss.py","lines_changed":8},{"name":"jc/parsers/stat.py","lines_changed":7},{"name":"jc/parsers/systemctl.py","lines_changed":8},{"name":"jc/parsers/systemctl_lj.py","lines_changed":8},{"name":"jc/parsers/systemctl_ls.py","lines_changed":8},{"name":"jc/parsers/systemctl_luf.py","lines_changed":8},{"name":"jc/parsers/timedatectl.py","lines_changed":14},{"name":"jc/parsers/uname.py","lines_changed":6},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/w.py","lines_changed":5},{"name":"jc/parsers/who.py","lines_changed":8},{"name":"jc/parsers/xml.py","lines_changed":5},{"name":"jc/parsers/yaml.py","lines_changed":11},{"name":"jc/utils.py","lines_changed":4},{"name":"setup.py","lines_changed":2}]},"message":"Improve and standardize empty data check for all parsers"},{"commit":"2af61730f0f5b9bc6f1f4c5d9d808ff6ccb0faeb","merge":"07b179c 83f41b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #68 from kellyjonbrazil/dev"},{"commit":"83f41b83dc01c462c6a2295e9fc56ad42a3b62f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"1fb84fce88e0306c26a5771fa4c6dc14a21409a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":16,"insertions":137,"deletions":67,"files":["changelog.txt","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/parsers/xml.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py","tests/test_timedatectl.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py","tests/test_who.py","tests/test_xml.py","tests/test_yaml.py"],"file_stats":[{"name":"changelog.txt","lines_changed":5},{"name":"jc/parsers/systemctl_lj.py","lines_changed":3},{"name":"jc/parsers/systemctl_ls.py","lines_changed":33},{"name":"jc/parsers/systemctl_luf.py","lines_changed":35},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/w.py","lines_changed":63},{"name":"jc/parsers/xml.py","lines_changed":6},{"name":"tests/test_systemctl_ls.py","lines_changed":6},{"name":"tests/test_systemctl_luf.py","lines_changed":6},{"name":"tests/test_timedatectl.py","lines_changed":6},{"name":"tests/test_uname.py","lines_changed":6},{"name":"tests/test_uptime.py","lines_changed":6},{"name":"tests/test_w.py","lines_changed":6},{"name":"tests/test_who.py","lines_changed":6},{"name":"tests/test_xml.py","lines_changed":6},{"name":"tests/test_yaml.py","lines_changed":6}]},"message":"fix for no data"},{"commit":"a8837e12447c52dbe438b19c07777b9b4a22081c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"remove --upgrade from pip install"},{"commit":"04d2eec5581998d1a80e762b670af76c92111065","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":56,"deletions":30,"files":["changelog.txt","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","tests/test_stat.py","tests/test_systemctl.py","tests/test_systemctl_lj.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":33},{"name":"jc/parsers/systemctl_lj.py","lines_changed":33},{"name":"tests/test_stat.py","lines_changed":6},{"name":"tests/test_systemctl.py","lines_changed":6},{"name":"tests/test_systemctl_lj.py","lines_changed":6}]},"message":"fix for no data"},{"commit":"1b57ec92f052ddc8959540511512190a539262b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":152,"deletions":68,"files":["changelog.txt","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ntpq.py","jc/parsers/pip_list.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","tests/fixtures/centos-7.7/ss-sudo-a.json","tests/fixtures/ubuntu-18.04/ss-sudo-a.json","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_ntpq.py","tests/test_passwd.py","tests/test_pip_list.py","tests/test_pip_show.py","tests/test_ps.py","tests/test_route.py","tests/test_shadow.py","tests/test_ss.py"],"file_stats":[{"name":"changelog.txt","lines_changed":8},{"name":"jc/parsers/mount.py","lines_changed":3},{"name":"jc/parsers/netstat.py","lines_changed":41},{"name":"jc/parsers/ntpq.py","lines_changed":35},{"name":"jc/parsers/pip_list.py","lines_changed":31},{"name":"jc/parsers/ps.py","lines_changed":9},{"name":"jc/parsers/route.py","lines_changed":9},{"name":"jc/parsers/ss.py","lines_changed":14},{"name":"tests/fixtures/centos-7.7/ss-sudo-a.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ss-sudo-a.json","lines_changed":2},{"name":"tests/test_lsof.py","lines_changed":6},{"name":"tests/test_mount.py","lines_changed":6},{"name":"tests/test_netstat.py","lines_changed":6},{"name":"tests/test_ntpq.py","lines_changed":6},{"name":"tests/test_passwd.py","lines_changed":6},{"name":"tests/test_pip_list.py","lines_changed":6},{"name":"tests/test_pip_show.py","lines_changed":6},{"name":"tests/test_ps.py","lines_changed":6},{"name":"tests/test_route.py","lines_changed":6},{"name":"tests/test_shadow.py","lines_changed":6},{"name":"tests/test_ss.py","lines_changed":6}]},"message":"fix for no data"},{"commit":"4d8859540417e99e273fda2cea959240f3c37ea3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":2}]},"message":"enhance empty data check"},{"commit":"52b1272a3aab09b5a8c4a277fbf9975a1b8b6921","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":2}]},"message":"enhance empty data check"},{"commit":"d2ccad6a83138fbf6eb863634fd354dc6c3fa238","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":33,"deletions":15,"files":["jc/parsers/lsblk.py","jc/parsers/lsmod.py","tests/test_lsblk.py","tests/test_lsmod.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":21},{"name":"jc/parsers/lsmod.py","lines_changed":15},{"name":"tests/test_lsblk.py","lines_changed":6},{"name":"tests/test_lsmod.py","lines_changed":6}]},"message":"fix for no data"},{"commit":"cad6dde4ac66cf970a7f52d8e7958ea35c083629","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":60,"deletions":0,"files":["tests/test_group.py","tests/test_gshadow.py","tests/test_history.py","tests/test_hosts.py","tests/test_id.py","tests/test_ifconfig.py","tests/test_ini.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_last.py"],"file_stats":[{"name":"tests/test_group.py","lines_changed":6},{"name":"tests/test_gshadow.py","lines_changed":6},{"name":"tests/test_history.py","lines_changed":6},{"name":"tests/test_hosts.py","lines_changed":6},{"name":"tests/test_id.py","lines_changed":6},{"name":"tests/test_ifconfig.py","lines_changed":6},{"name":"tests/test_ini.py","lines_changed":6},{"name":"tests/test_iptables.py","lines_changed":6},{"name":"tests/test_jobs.py","lines_changed":6},{"name":"tests/test_last.py","lines_changed":6}]},"message":"fix for no data"},{"commit":"06811c3539b0d871e13e9b8d3b51f731d06fd2ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_fstab.py"],"file_stats":[{"name":"tests/test_fstab.py","lines_changed":6}]},"message":"add test for no data"},{"commit":"0cb23c2b21f464082609409261de8e95eb1b0d55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":17,"deletions":7,"files":["changelog.txt","jc/parsers/free.py","tests/test_free.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/free.py","lines_changed":17},{"name":"tests/test_free.py","lines_changed":6}]},"message":"add fix for no data"},{"commit":"ac4688dca22334385ec2c87027f2f14f9ca93ce4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_file.py"],"file_stats":[{"name":"tests/test_file.py","lines_changed":6}]},"message":"add test for no data"},{"commit":"326c3b4670a0e47cbe2988b38fb1c1b26a4db890","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_env.py"],"file_stats":[{"name":"tests/test_env.py","lines_changed":6}]},"message":"add test for no data"},{"commit":"9b29d0c2688eda2e4707aeba693ed14fa433a706","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_du.py"],"file_stats":[{"name":"tests/test_du.py","lines_changed":6}]},"message":"add test for no data"},{"commit":"e0013c38710b4ecf3a588a16d1d908effc23b485","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["tests/test_dmidecode.py"],"file_stats":[{"name":"tests/test_dmidecode.py","lines_changed":5}]},"message":"add test for no data"},{"commit":"a75744075b0628bdb711d8a929a759b4b4067edb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_dig.py"],"file_stats":[{"name":"tests/test_dig.py","lines_changed":6}]},"message":"add no data test"},{"commit":"525aec1a02380f17ab7827434616f981f7457bd0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":16,"deletions":7,"files":["changelog.txt","jc/parsers/df.py","tests/test_df.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":16},{"name":"tests/test_df.py","lines_changed":6}]},"message":"fix for no data"},{"commit":"0bf9a7a072a80e10a29c6bb3943b107352dc1d45","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_csv.py"],"file_stats":[{"name":"tests/test_csv.py","lines_changed":6}]},"message":"add test for no data"},{"commit":"d8f2f4c95bc699386b9fe93d10e13637875a1dcf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":96,"deletions":80,"files":["changelog.txt","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/test_crontab.py","tests/test_crontab_u.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":79},{"name":"jc/parsers/crontab_u.py","lines_changed":83},{"name":"tests/test_crontab.py","lines_changed":6},{"name":"tests/test_crontab_u.py","lines_changed":6}]},"message":"fix for no data"},{"commit":"35d733b44f3705bed3dd8ce340379470f199f772","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":70,"deletions":60,"files":["changelog.txt","jc/parsers/arp.py","jc/parsers/blkid.py","tests/test_arp.py","tests/test_blkid.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":112},{"name":"jc/parsers/blkid.py","lines_changed":4},{"name":"tests/test_arp.py","lines_changed":6},{"name":"tests/test_blkid.py","lines_changed":6}]},"message":"fix for no data"},{"commit":"9179b4175c5063bed14ecb96ba24c517920c0d94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":16,"deletions":0,"files":["changelog.txt","tests/test_airport.py","tests/test_airport_s.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"tests/test_airport.py","lines_changed":6},{"name":"tests/test_airport_s.py","lines_changed":6}]},"message":"add nodata tests"},{"commit":"bb07d78c78ff5c5b2ee4d2086ffc6dd5ebedf0fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":8,"files":["jc/parsers/airport_s.py"],"file_stats":[{"name":"jc/parsers/airport_s.py","lines_changed":18}]},"message":"add nodata fix"},{"commit":"07b179cd7f8853ff6aca0b27a703e198c158ca72","merge":"12a80e7 054422d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #67 from kellyjonbrazil/Dev"},{"commit":"054422d8373e7b8def18ddabd447062cb9cc3137","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["tests/test_ls.py"],"file_stats":[{"name":"tests/test_ls.py","lines_changed":6}]},"message":"add test for empty directory"},{"commit":"3e052d18102e98a09cbba21866855691eaccc216","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"c8e72805cf9def478b56c925f4afcc0ece1daac0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":10,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":19}]},"message":"fix error on empty directory"},{"commit":"12a80e7db0f6c7d536674ad8d34e26bba9a1f1f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":12}]},"message":"add fedora package info"},{"commit":"ee7ff9a09d3373f60ae1645376ccc0057803147e","merge":"346a14c f6478fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #66 from kellyjonbrazil/dev"},{"commit":"f6478fb636ead8d1e53e4a88d59e55222df37a8f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"811a0b0495819925199d70db266066197cc6824e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add info regarding the local parser plugin files"},{"commit":"aeb48edf727f23cc4f8fd9b760cfb69f03098278","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"use $LOCALAPPDATA variable for windows"},{"commit":"b1e94f0df7041bcae97455508f423178aef9d61d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"heading formatting"},{"commit":"60050e3c0fe34980f7db5b8bd46430f953f0c3a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":13,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":26}]},"message":"fix linux/unix directory and add note about the XDG specification followed"},{"commit":"39ef09aa5b0d43b5128299511afe80336aa38203","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add local parser plugin feature"},{"commit":"8377d4311611c242e16eaebe66dafac9529150d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"54e4c447ab34ae54c73c92df40f1b4ca6ffb2277","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":10}]},"message":"clean up formatting"},{"commit":"937a9fa9cf2ede8e686ba853989f33e4a483a0ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":613,"deletions":3,"files":["jc/appdirs.py","jc/cli.py","requirements.txt","setup.py"],"file_stats":[{"name":"jc/appdirs.py","lines_changed":611},{"name":"jc/cli.py","lines_changed":3},{"name":"requirements.txt","lines_changed":1},{"name":"setup.py","lines_changed":1}]},"message":"vendorize appdirs module"},{"commit":"808ff6cf0e784cf0c2d523ff2e01197cb6e88c82","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":12}]},"message":"more acknowledgments updates"},{"commit":"7f5c649a95a871c3cd8d48731a6d26dcba6f725b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update acknowledgments"},{"commit":"b72727dec995de1ca5f68ee17a710b086c87d612","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":11}]},"message":"update custom parsers info"},{"commit":"3fc88bfb334143b68a9cb78d4034f33e7c0bcf76","merge":"346a14c 9f2279d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #65 from duelafn/local-parsers"},{"commit":"9f2279d5867eb89d4b4b7b4ffca290166ec97c48","author":"Dean Serenevy","author_email":"dean@serenevy.net","stats":{"files_changed":4,"insertions":29,"deletions":2,"files":["README.md","jc/cli.py","requirements.txt","setup.py"],"file_stats":[{"name":"README.md","lines_changed":7},{"name":"jc/cli.py","lines_changed":22},{"name":"requirements.txt","lines_changed":1},{"name":"setup.py","lines_changed":1}]},"message":"Load custom parsers from /jc/jcparsers"},{"commit":"346a14cb9bb0d762fc3fa366ad97e5ff85f3992a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"change osx_device to unix_device"},{"commit":"dac00d17ff9f3d2bb959697b6e567015bfc2702b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":17,"deletions":0,"files":["tests/fixtures/nixos/route-ee.json","tests/fixtures/nixos/route-ee.out","tests/test_route.py"],"file_stats":[{"name":"tests/fixtures/nixos/route-ee.json","lines_changed":1},{"name":"tests/fixtures/nixos/route-ee.out","lines_changed":4},{"name":"tests/test_route.py","lines_changed":12}]},"message":"add nixos test"},{"commit":"9ca7cd40601b97829e8f88071fdfb928d939f7e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":17,"deletions":34,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":51}]},"message":"update docs"},{"commit":"aa31628970b12295a41dff20e829fcce9f8a4d07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":70,"deletions":63,"files":["README.md","docs/parsers/netstat.md","docs/parsers/route.md","docs/parsers/stat.md","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":46},{"name":"docs/parsers/netstat.md","lines_changed":16},{"name":"docs/parsers/route.md","lines_changed":51},{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":16}]},"message":"update docs"},{"commit":"bed694fcf5c8c31bbd4f3e88759fe7ab82382d24","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"4b4af69fa184896ec15b5be7dc8416f36f921d5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"fix date"},{"commit":"9d96190a5b19e8d71c3ac66eb0303d269dd4ce5d","merge":"96df396 fa44d48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #64 from kellyjonbrazil/dev"},{"commit":"fa44d48c094a55e499c2c780d109bf277736b42e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":129,"deletions":7,"files":["changelog.txt","jc/parsers/stat.py","tests/fixtures/freebsd12/stat.json","tests/fixtures/freebsd12/stat.out","tests/fixtures/osx-10.14.6/stat.json","tests/test_stat.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":12},{"name":"tests/fixtures/freebsd12/stat.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/stat.out","lines_changed":107},{"name":"tests/fixtures/osx-10.14.6/stat.json","lines_changed":2},{"name":"tests/test_stat.py","lines_changed":12}]},"message":"freebsd fixes, tests, and fixtures"},{"commit":"4ef961c2788c935b1fea1c9777b976e7b89e7367","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":20,"deletions":0,"files":["tests/fixtures/freebsd12/ntpq-p.json","tests/fixtures/freebsd12/ntpq-p.out","tests/test_ntpq.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/ntpq-p.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/ntpq-p.out","lines_changed":7},{"name":"tests/test_ntpq.py","lines_changed":12}]},"message":"add freebsd test and fixtures"},{"commit":"292a837d5c47165ccb155f079b0a114b5c17a98e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":22,"deletions":0,"files":["tests/fixtures/freebsd12/last.json","tests/fixtures/freebsd12/last.out","tests/test_last.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/last.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/last.out","lines_changed":9},{"name":"tests/test_last.py","lines_changed":12}]},"message":"add tests and fixtures for freebsd12"},{"commit":"aa7b915d847dbd29d2c09b2cc40b847e37174ffb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":2}]},"message":"version bump"},{"commit":"c46fe73236b912d2ee89dfb36ff259fe95fd0479","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"add last fixes for freebsd"},{"commit":"039b2c129cbe79d2d23b1194b043d8b730609956","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":1,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":11}]},"message":"freebsd fixes"},{"commit":"8f2e5e4808b30c658a4cb87125639e4d7d6c15d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":2}]},"message":"fix compatible logic"},{"commit":"c4da8e4f78e6b4aaa4aff76ae042be9aaec832a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":12}]},"message":"add nixos and freebsd to tested. update new arp fields"},{"commit":"bcab9078a4c2bfd6ae4dca9448b577d9ed0fc01c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"add w parser fix"},{"commit":"b3c6c1ea925bf7cd76368f5074fb8af52a844522","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":29,"deletions":5,"files":["jc/parsers/w.py","tests/fixtures/nixos/w.json","tests/fixtures/nixos/w.out","tests/test_w.py"],"file_stats":[{"name":"jc/parsers/w.py","lines_changed":8},{"name":"tests/fixtures/nixos/w.json","lines_changed":1},{"name":"tests/fixtures/nixos/w.out","lines_changed":5},{"name":"tests/test_w.py","lines_changed":20}]},"message":"strip whitespace in string fields and add tests"},{"commit":"a3af8662bd491e344c93d24afabd23e90efd8086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":205,"deletions":3,"files":["tests/fixtures/osx-10.11.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a2.json"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/arp-a.json","lines_changed":107},{"name":"tests/fixtures/osx-10.14.6/arp-a.json","lines_changed":99},{"name":"tests/fixtures/osx-10.14.6/arp-a2.json","lines_changed":2}]},"message":"add permanent field"},{"commit":"35940d0bc80bf61b11f40b1e1043835f26eb391c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":59,"deletions":4,"files":["changelog.txt","docs/parsers/arp.md","jc/parsers/arp.py","tests/fixtures/freebsd12/arp-a.json","tests/fixtures/freebsd12/arp-a.out","tests/test_arp.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"docs/parsers/arp.md","lines_changed":12},{"name":"jc/parsers/arp.py","lines_changed":33},{"name":"tests/fixtures/freebsd12/arp-a.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/arp-a.out","lines_changed":3},{"name":"tests/test_arp.py","lines_changed":12}]},"message":"add freebsd permanent and expires fields"},{"commit":"26994cdcb7148d2c9d1701bca9541d247356260b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":115,"deletions":85,"files":["docs/parsers/df.md","docs/parsers/fstab.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ntpq.md","docs/parsers/route.md","docs/parsers/stat.md","docs/parsers/uname.md"],"file_stats":[{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":163},{"name":"docs/parsers/ntpq.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":25},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2}]},"message":"add freebsd compatibility info"},{"commit":"017159a829691cb6a7174f123d024eb252179b75","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":15,"insertions":221,"deletions":0,"files":["tests/fixtures/freebsd12/netstat-Aa.json","tests/fixtures/freebsd12/netstat-AaT.json","tests/fixtures/freebsd12/netstat-AaT.out","tests/fixtures/freebsd12/netstat-AanP.json","tests/fixtures/freebsd12/netstat-AanP.out","tests/fixtures/freebsd12/netstat-Aax.json","tests/fixtures/freebsd12/netstat-Aax.out","tests/fixtures/freebsd12/netstat-aT.json","tests/fixtures/freebsd12/netstat-aT.out","tests/fixtures/freebsd12/netstat-an.json","tests/fixtures/freebsd12/netstat-i.json","tests/fixtures/freebsd12/netstat-ib.json","tests/fixtures/freebsd12/netstat-ib.out","tests/fixtures/freebsd12/netstat-r.json","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/freebsd12/netstat-Aa.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-AaT.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-AaT.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-AanP.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-AanP.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-Aax.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-Aax.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-aT.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-aT.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-an.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-i.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-ib.json","lines_changed":1},{"name":"tests/fixtures/freebsd12/netstat-ib.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/netstat-r.json","lines_changed":1},{"name":"tests/test_netstat.py","lines_changed":108}]},"message":"add freebsd nestat tests and fixtures"},{"commit":"b4e9c85e08d199dad67f03c7603194278a022696","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":0,"files":["jc/parsers/netstat_freebsd_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_freebsd_osx.py","lines_changed":12}]},"message":"fixup -T freebsd output and add whitespace stripping to parse_post"},{"commit":"189146cd84cfad262f2b2601bb0cb4b9dde2587e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":10}]},"message":"add more ints. remove whitespace strip code and move to freebsd_osx module"},{"commit":"af34153ffab10ca1ad7f44736d379d91ae43c813","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["changelog.txt","jc/cli.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2}]},"message":"version bump"},{"commit":"bf2ff3ffbb639446779b1f04f2997707d99c0a1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":1,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":9}]},"message":"fix compatibility search for platform names that append the version number (e.g. freebsd12)"},{"commit":"6423c9efd69e938af38934a97ca6b65009e8f07e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":34,"deletions":5,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":39}]},"message":"integer and float updates"},{"commit":"58ab0d4ece7f006ce9431afb9e0fecbe60930be7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":12,"deletions":4,"files":["changelog.txt","jc/parsers/netstat.py","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":11},{"name":"tests/fixtures/osx-10.14.6/netstat-An.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat.json","lines_changed":2}]},"message":"strip whitespace from string fields"},{"commit":"83a738bf4d756036d6269b9153220d7f1018ac9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/netstat-Abn.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-An.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat.json","lines_changed":2}]},"message":"update fixtures for osx_flags and osx_inode name change to unix_flags and unix_inode"},{"commit":"3640671fc6a67c9628fd47e19e9fe0a0738439ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["jc/parsers/{netstat_osx.py => netstat_freebsd_osx.py}"],"file_stats":[{"name":"jc/parsers/{netstat_osx.py => netstat_freebsd_osx.py}","lines_changed":10}]},"message":"rename module"},{"commit":"1da623b30ef6f9b12ac231518d2d4e7dadcf717b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":9}]},"message":"add items"},{"commit":"b10ca64646e93d9797182ea046f4956a17b37627","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":71,"deletions":71,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":142}]},"message":"change osx_inode and osx_flags to unix_inode and unix_flags. Also rename netstat_osx module to netstat_freebsd_osx"},{"commit":"2128763ee67a07da6ebf123abeec39794bc1f4e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":12,"files":["tests/test_netstat.py"],"file_stats":[{"name":"tests/test_netstat.py","lines_changed":24}]},"message":"fix osx version from 16.4 to 14.6"},{"commit":"a27e7ed39c63c04cfa78caceaada42f7a9496a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":12,"deletions":12,"files":["tests/fixtures/centos-7.7/netstat-r.json","tests/fixtures/centos-7.7/netstat-rne.json","tests/fixtures/centos-7.7/netstat-rnee.json","tests/fixtures/centos-7.7/route-vn.json","tests/fixtures/centos-7.7/route.json","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-rnl.json","tests/fixtures/ubuntu-18.04/netstat-r.json","tests/fixtures/ubuntu-18.04/netstat-rne.json","tests/fixtures/ubuntu-18.04/netstat-rnee.json","tests/fixtures/ubuntu-18.04/route-vn.json","tests/fixtures/ubuntu-18.04/route.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/netstat-r.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/netstat-rne.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/netstat-rnee.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/route-vn.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/route.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-r.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-rnl.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/netstat-r.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/netstat-rne.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/netstat-rnee.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/route-vn.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/route.json","lines_changed":2}]},"message":"test updates for added route_flags_pretty and flags_pretty fields"},{"commit":"f07b7eaa474eb87dbdbc7fbe41b9386feff7bee2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":38,"deletions":12,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":50}]},"message":"add flags_pretty"},{"commit":"6ce18de84ce16a926f9cd97c3210ef209c3352da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":130,"deletions":69,"files":["jc/parsers/netstat.py","jc/parsers/netstat_linux.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":139},{"name":"jc/parsers/netstat_linux.py","lines_changed":23},{"name":"jc/parsers/netstat_osx.py","lines_changed":37}]},"message":"add route_flags_pretty"},{"commit":"8631b756e7ab8cd71c2a3eb288e2d1823cec5782","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":76,"deletions":0,"files":["tests/fixtures/freebsd12/netstat-Aa.out","tests/fixtures/freebsd12/netstat-an.out","tests/fixtures/freebsd12/netstat-i.out","tests/fixtures/freebsd12/netstat-r.out"],"file_stats":[{"name":"tests/fixtures/freebsd12/netstat-Aa.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-an.out","lines_changed":24},{"name":"tests/fixtures/freebsd12/netstat-i.out","lines_changed":8},{"name":"tests/fixtures/freebsd12/netstat-r.out","lines_changed":20}]},"message":"add freebsd test files"},{"commit":"7414d984125300164a5b6156d7a80128d4d6cb15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":18,"deletions":18,"files":["jc/parsers/df.py","jc/parsers/fstab.py","jc/parsers/mount.py","jc/parsers/ntpq.py","jc/parsers/stat.py","jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":6},{"name":"jc/parsers/fstab.py","lines_changed":6},{"name":"jc/parsers/mount.py","lines_changed":6},{"name":"jc/parsers/ntpq.py","lines_changed":6},{"name":"jc/parsers/stat.py","lines_changed":6},{"name":"jc/parsers/uname.py","lines_changed":6}]},"message":"add freebsd compatibility"},{"commit":"d7b19892e8fb11e17fcbadcdbb08d49897d7754f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":10,"deletions":7,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":13},{"name":"jc/parsers/netstat_osx.py","lines_changed":4}]},"message":"add freebsd support for netstat -i"},{"commit":"96df396eaf4e030113005a95e525d644c394dfe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"2f6f640317da5af894f34f187c4243ef0c599d07","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"spelling"},{"commit":"c4a0a50f3a3ac5833ab5d2f8a0cb3f18da335812","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"add nix-env"},{"commit":"658f8a3842273cea049689b3aea15d89a7294b24","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":13}]},"message":"add zypper and ports info"},{"commit":"bfb876a1e394ff63c6773965ba0b65da4e109c1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"formatting"},{"commit":"90c34b1f4ee2d9ec8125346bb90b227f76ada2ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"fix dmidecode example"},{"commit":"3f9164ea77ec41e1b0671d0a642900d8e36faf9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"bold formatting"},{"commit":"7fd6fecbf5a08b1f13aa7e906e94be9bc126780a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"8029f72363a4d19938df07603f03a0147f6246a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":10,"deletions":7,"files":["changelog.txt","docs/parsers/stat.md","jc/cli.py","jc/parsers/stat.py","setup.py","tests/fixtures/osx-10.14.6/stat.json"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":6},{"name":"setup.py","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/stat.json","lines_changed":2}]},"message":"change osx_flags from integer to string"},{"commit":"c7fdce5d3b7566a7d290627767c47d9c196e02ad","merge":"f5627a4 84f48aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #62 from kellyjonbrazil/dev"},{"commit":"84f48aa369a458f534523ecc1e3aaaf403d06f1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"2e9a0a9c1221dd01bd683ecbc4871d03738da671","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]},"message":"add features"},{"commit":"c1f6f2b9508e558ab88b4a0a61e93a6cf5460bea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":116,"deletions":4,"files":["docs/parsers/stat.md","jc/parsers/stat.py","tests/fixtures/osx-10.14.6/stat.json","tests/fixtures/osx-10.14.6/stat.out","tests/test_stat.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":8},{"name":"jc/parsers/stat.py","lines_changed":5},{"name":"tests/fixtures/osx-10.14.6/stat.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/stat.out","lines_changed":94},{"name":"tests/test_stat.py","lines_changed":12}]},"message":"osx fixes and tests"},{"commit":"ede21bca13c4b46899721f01d979c8b063f861a3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":110,"deletions":78,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":188}]},"message":"add OSX support for stat"},{"commit":"8dd9a9f9cbc70a19176f909f6ac76b2bcf670736","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":45,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-i.json","tests/fixtures/osx-10.14.6/netstat-i.json","tests/fixtures/ubuntu-18.04/netstat-i.json","tests/fixtures/ubuntu-18.04/netstat-i.out","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/netstat-i.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-i.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-i.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-i.out","lines_changed":4},{"name":"tests/test_netstat.py","lines_changed":38}]},"message":"add netstat -i tests"},{"commit":"04f92cd1330759e4bad1c0304b9e1c28e8d32d59","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":166,"deletions":4,"files":["README.md","docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_linux.py","tests/fixtures/centos-7.7/netstat-i.out"],"file_stats":[{"name":"README.md","lines_changed":32},{"name":"docs/parsers/netstat.md","lines_changed":50},{"name":"jc/parsers/netstat.py","lines_changed":44},{"name":"jc/parsers/netstat_linux.py","lines_changed":39},{"name":"tests/fixtures/centos-7.7/netstat-i.out","lines_changed":5}]},"message":"add linux support for netstat -i"},{"commit":"8be8d2393b276a9249e1c573ce19cf630f0942fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":99,"deletions":3,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-i.out"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":19},{"name":"jc/parsers/netstat_osx.py","lines_changed":40},{"name":"tests/fixtures/osx-10.14.6/netstat-i.out","lines_changed":43}]},"message":"add netstat -i support for OSX"},{"commit":"0a879681be68fe2e6e5c013ab0fe18de99b04f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":97,"deletions":282,"files":["README.md","docs/parsers/netstat.md","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":37},{"name":"docs/parsers/netstat.md","lines_changed":171},{"name":"jc/parsers/netstat.py","lines_changed":171}]},"message":"add netstat -r to docs"},{"commit":"2ca1587a49511899bf719e0b0c7de32158fc491d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":102,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-r.json","tests/fixtures/centos-7.7/netstat-rne.json","tests/fixtures/centos-7.7/netstat-rnee.json","tests/fixtures/ubuntu-18.04/netstat-r.json","tests/fixtures/ubuntu-18.04/netstat-r.out","tests/fixtures/ubuntu-18.04/netstat-rne.json","tests/fixtures/ubuntu-18.04/netstat-rne.out","tests/fixtures/ubuntu-18.04/netstat-rnee.json","tests/fixtures/ubuntu-18.04/netstat-rnee.out","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/netstat-r.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-rne.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-rnee.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-r.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-r.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/netstat-rne.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-rne.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/netstat-rnee.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-rnee.out","lines_changed":5},{"name":"tests/test_netstat.py","lines_changed":81}]},"message":"add linux netstat -r tests"},{"commit":"ec2cd2d708a57c0458657416bedcb4340cb40901","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":70,"deletions":11,"files":["docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_linux.py","jc/parsers/netstat_osx.py","tests/fixtures/centos-7.7/netstat-r.out","tests/fixtures/centos-7.7/netstat-rne.out","tests/fixtures/centos-7.7/netstat-rnee.out","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-rnl.json"],"file_stats":[{"name":"docs/parsers/netstat.md","lines_changed":11},{"name":"jc/parsers/netstat.py","lines_changed":13},{"name":"jc/parsers/netstat_linux.py","lines_changed":37},{"name":"jc/parsers/netstat_osx.py","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-r.out","lines_changed":5},{"name":"tests/fixtures/centos-7.7/netstat-rne.out","lines_changed":5},{"name":"tests/fixtures/centos-7.7/netstat-rnee.out","lines_changed":5},{"name":"tests/fixtures/osx-10.14.6/netstat-r.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-rnl.json","lines_changed":2}]},"message":"add netstat -r support for linux"},{"commit":"5d0dbece9317e84a47d9f4b2d18a9ffa33fbee6e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":288,"deletions":5,"files":["docs/parsers/netstat.md","jc/parsers/netstat.py","jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-r.json","tests/fixtures/osx-10.14.6/netstat-r.out","tests/fixtures/osx-10.14.6/netstat-rnl.json","tests/fixtures/osx-10.14.6/netstat-rnl.out","tests/test_netstat.py"],"file_stats":[{"name":"docs/parsers/netstat.md","lines_changed":17},{"name":"jc/parsers/netstat.py","lines_changed":23},{"name":"jc/parsers/netstat_osx.py","lines_changed":37},{"name":"tests/fixtures/osx-10.14.6/netstat-r.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-r.out","lines_changed":93},{"name":"tests/fixtures/osx-10.14.6/netstat-rnl.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-rnl.out","lines_changed":96},{"name":"tests/test_netstat.py","lines_changed":25}]},"message":"add netstat -r functionality for OSX"},{"commit":"df1e4b414b2bda5be3153767cd854b2483ba600b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":[".gitignore"],"file_stats":[{"name":".gitignore","lines_changed":1}]},"message":"remove unused folder"},{"commit":"40760991e7dae43cd15134310f7bbb5ce0f58dae","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["LICENSE.md"],"file_stats":[{"name":"LICENSE.md","lines_changed":2}]},"message":"update copyright date"},{"commit":"464f5f86cf2c8fe6a1a857b0ad4d221a3edf3d88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"update description"},{"commit":"7b09e9fccdd4f09218a500b54c898ada1b9843c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":8,"deletions":5,"files":["docs/parsers/dmidecode.md","jc/parsers/dmidecode.py","tests/fixtures/centos-7.7/dmidecode.json","tests/fixtures/fedora32/dmidecode.json","tests/fixtures/ubuntu-18.04/dmidecode.json"],"file_stats":[{"name":"docs/parsers/dmidecode.md","lines_changed":2},{"name":"jc/parsers/dmidecode.py","lines_changed":5},{"name":"tests/fixtures/centos-7.7/dmidecode.json","lines_changed":2},{"name":"tests/fixtures/fedora32/dmidecode.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/dmidecode.json","lines_changed":2}]},"message":"set empty values to Null and update fixtures"},{"commit":"6cba7d429898d331c674c778f8bd85ba75a8dca9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"remove linux from description"},{"commit":"9730f62e4970b5a4490f8dc24b6cfb9cacd0cbf2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":151,"deletions":133,"files":["jc/parsers/netstat_osx.py","tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat.json","tests/fixtures/osx-10.14.6/netstat.out"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":7},{"name":"tests/fixtures/osx-10.14.6/netstat-Abn.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat-An.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/netstat.out","lines_changed":271}]},"message":"fixup name field and update test fixtures"},{"commit":"e0c1c87f549eee000b93b5f5a3e8d0b052eb7d32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":8}]},"message":"formatting"},{"commit":"931b3d2b836b251590497f4cfa65f106762086c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"e5d561baeecf1fd83a884b3cd9d322762f750dfb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":1}]},"message":"add multipath condition for osx detection"},{"commit":"2867593e7aa12299686e2c6aa0f2a79a9b550b53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":6}]},"message":"changelog update"},{"commit":"dd52fee5635c977d5c77046ab9fe78d2ed10deef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":2141,"deletions":0,"files":["tests/fixtures/osx-10.14.6/netstat-Abn.json","tests/fixtures/osx-10.14.6/netstat-Abn.out","tests/fixtures/osx-10.14.6/netstat-An.json","tests/fixtures/osx-10.14.6/netstat-An.out","tests/fixtures/osx-10.14.6/netstat.json","tests/fixtures/osx-10.14.6/netstat.out","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/netstat-Abn.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-Abn.out","lines_changed":689},{"name":"tests/fixtures/osx-10.14.6/netstat-An.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat-An.out","lines_changed":689},{"name":"tests/fixtures/osx-10.14.6/netstat.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/netstat.out","lines_changed":724},{"name":"tests/test_netstat.py","lines_changed":36}]},"message":"osx netstat tests and fixtures"},{"commit":"8e1f8858273e671a882a07eae1c35b38f5298c94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":7}]},"message":"fix filtered netstat views"},{"commit":"2d39a58f902e6af77f8f96ffcd1d68b7cbadd56c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":81,"deletions":14,"files":["README.md","docs/parsers/dmidecode.md","docs/parsers/netstat.md","jc/parsers/dmidecode.py"],"file_stats":[{"name":"README.md","lines_changed":67},{"name":"docs/parsers/dmidecode.md","lines_changed":4},{"name":"docs/parsers/netstat.md","lines_changed":20},{"name":"jc/parsers/dmidecode.py","lines_changed":4}]},"message":"doc update"},{"commit":"9c4fa2ae2601ca4880c0b078fa917f01f1392e0e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":22,"deletions":2,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":21},{"name":"jc/parsers/netstat_osx.py","lines_changed":3}]},"message":"integer conversions and icmp fix"},{"commit":"de52d84e82df6d8c5e2416c6bc44e59c41c685da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":9,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":17}]},"message":"fix udp state and udp46 entries"},{"commit":"ce9b55059a28d363b8b0ae4f3ccbdbdc4bf4b58e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":185,"deletions":167,"files":["jc/parsers/netstat.py","jc/parsers/netstat_linux.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":171},{"name":"jc/parsers/netstat_linux.py","lines_changed":181}]},"message":"organize files"},{"commit":"bcd370a6a01a115d470776f5690f8571d68d3930","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":15,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":16},{"name":"jc/parsers/netstat_osx.py","lines_changed":4}]},"message":"code cleanup"},{"commit":"c8216850abd2d0b8cc6761453f853f296e8a28f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":55,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":74}]},"message":"code cleanup"},{"commit":"f5feedb90b39e5c3f4564615482d47ccd145844f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":10,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":11}]},"message":"fix comments"},{"commit":"a4371cd187fe5077018edbfeee77eb17c6a90ad3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":6}]},"message":"support netstat -A"},{"commit":"9d5ba4c83404e4fab5c0f40c30b4735685499a31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":2}]},"message":"formatting"},{"commit":"1639dee1bb93f6f89e8bb7b37134dc1f561c479c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":35,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":45}]},"message":"fix parse_post"},{"commit":"9363f430f20951e6fa739f06c85c5b6b3421b60d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":3}]},"message":"use list extend method to simplify code"},{"commit":"9192a0907364c772558380be1373b8dcea972a6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":124,"deletions":34,"files":["jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat_osx.py","lines_changed":158}]},"message":"parse all sections"},{"commit":"b915eb97556ccc5fc60e8d23f7298ffec2d8e3b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":237,"deletions":55,"files":["jc/parsers/netstat.py","jc/parsers/netstat_osx.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":118},{"name":"jc/parsers/netstat_osx.py","lines_changed":174}]},"message":"initial osx parser"},{"commit":"1cfcc2b592f682d2b50a0c4188fa3ae832a6c682","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":2}]},"message":"tighten up line test logic when counting tabs"},{"commit":"7138dd02b73073441a52c9b574bf0d6e02f0d7d9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":11}]},"message":"cleanup variables after adding to item"},{"commit":"b4276643b70f7820f8f53df22b32fffb54e30ca2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":56,"deletions":0,"files":["tests/fixtures/centos-7.7/dmidecode.json","tests/fixtures/fedora32/dmidecode.json","tests/fixtures/ubuntu-18.04/dmidecode.json","tests/test_dmidecode.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/dmidecode.json","lines_changed":1},{"name":"tests/fixtures/fedora32/dmidecode.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dmidecode.json","lines_changed":1},{"name":"tests/test_dmidecode.py","lines_changed":53}]},"message":"add dmidecode tests and fixtures"},{"commit":"2ef00763bfe7c4348f30026759941efe39861a0c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":4}]},"message":"fix first item"},{"commit":"54364928fc826ead7774a4cec1bcb73a5cb9ee0f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":74,"deletions":81,"files":["docs/parsers/dmidecode.md","jc/parsers/dmidecode.py"],"file_stats":[{"name":"docs/parsers/dmidecode.md","lines_changed":37},{"name":"jc/parsers/dmidecode.py","lines_changed":118}]},"message":"fix oddities like hybrid single/multiline data and items containing multiple records"},{"commit":"09b3b4932b0fa4a2b18c88a8465c15a194b727e6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":35430,"deletions":0,"files":["tests/fixtures/centos-7.7/dmidecode.out","tests/fixtures/fedora32/dmidecode.out","tests/fixtures/ubuntu-18.04/dmidecode.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/dmidecode.out","lines_changed":11810},{"name":"tests/fixtures/fedora32/dmidecode.out","lines_changed":11810},{"name":"tests/fixtures/ubuntu-18.04/dmidecode.out","lines_changed":11810}]},"message":"add dmidecode output fixtures"},{"commit":"29d6670119d8fcd0344e90f01bfb6260aa936e50","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":10}]},"message":"convert integers"},{"commit":"2f654b5f1acda01192294f4c18a5a31363e7f387","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["docs/parsers/dmidecode.md"],"file_stats":[{"name":"docs/parsers/dmidecode.md","lines_changed":37}]},"message":"doc update"},{"commit":"e53b9f5992450b53efc886b4fa9ca16f3dd07530","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":37}]},"message":"add caveats to documentation"},{"commit":"addb234e6162c58750cb67947bc4776635bf54fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":153,"deletions":0,"files":["docs/parsers/dmidecode.md"],"file_stats":[{"name":"docs/parsers/dmidecode.md","lines_changed":153}]},"message":"add dmidecode doc"},{"commit":"76eca3b65911a0a340d3d94322a8145ee89c50da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["docgen.sh"],"file_stats":[{"name":"docgen.sh","lines_changed":1}]},"message":"add dmidecode"},{"commit":"f90dec4c0ecf88623fb22273b7527ec8884826c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":94,"deletions":5,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":99}]},"message":"add examples to documentation"},{"commit":"8900a59d4cb424ff58d1eb27f8fda7ea0a668a5c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":19,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":20}]},"message":"simplify logic by removing redundant block"},{"commit":"6685138200d5955115707d04aad0293ea8af5b15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":2}]},"message":"fix for missing multi-line values that come immediately after a previous multi-line value"},{"commit":"4d3e65b980d50164b8220e59560822b9871580ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/parsers/dmidecode.py","lines_changed":5}]},"message":"fix missing values"},{"commit":"e9282bb546f560da6396f44e2ce9e04136348e2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":175,"deletions":0,"files":["jc/cli.py","jc/parsers/dmidecode.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/dmidecode.py","lines_changed":174}]},"message":"add dmidecode parser"},{"commit":"f5627a45947e5e76e5f3e64d9b30099fe0b962a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"81ffdb25105c681c8ed12336d220a102b7f4215e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"remove shebang for Fedora packaging"},{"commit":"4c00a99850cb6f69713be7c6ad9ffba11924d9b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"2bfcb45b28e2174a8bbc27237e619b5c232ccae8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":0}]},"message":"make cli.py executable"},{"commit":"ab0c10e791283affb227d0d5306701ba7fd29d13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":0,"files":["LICENSE.md","README.md"],"file_stats":[{"name":"LICENSE.md","lines_changed":0},{"name":"README.md","lines_changed":0}]},"message":"remove execute permissions"},{"commit":"2c1935115de03a28fe92674b04b2542b0eccb8fe","merge":"99070fa d98e43d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #61 from kellyjonbrazil/dev"},{"commit":"d98e43dc78205d3224bfc1e67de2da3c5fb7ea9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"add netstat item"},{"commit":"9348988d646d9b9c9970c19e84f311554ae38e7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":0,"files":["tests/test_netstat.py"],"file_stats":[{"name":"tests/test_netstat.py","lines_changed":12}]},"message":"add netstat test for Fedora32"},{"commit":"1285c664679c40b18327c89b85921a80b01f0191","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":140,"deletions":0,"files":["tests/fixtures/fedora32/netstat.json","tests/fixtures/fedora32/netstat.out"],"file_stats":[{"name":"tests/fixtures/fedora32/netstat.json","lines_changed":1},{"name":"tests/fixtures/fedora32/netstat.out","lines_changed":139}]},"message":"netstat with bluetooth section"},{"commit":"b7191bbc130e0f33d02c0a4819fa91ffff1599d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":15}]},"message":"handle bluetooth section (ignore for now)"},{"commit":"98b97509f7893cb95e9651ce9706db5c961aa997","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"2b2b570490f3834367a598579473001f45738e8a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":21,"deletions":0,"files":["tests/fixtures/fedora32/last.json","tests/fixtures/fedora32/last.out","tests/test_last.py"],"file_stats":[{"name":"tests/fixtures/fedora32/last.json","lines_changed":1},{"name":"tests/fixtures/fedora32/last.out","lines_changed":8},{"name":"tests/test_last.py","lines_changed":12}]},"message":"add tests for 'gone - no logout'"},{"commit":"cce2d1ff298f2284c43c4534144329f3533a81ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":6}]},"message":"add condition for 'gone - no logout'"},{"commit":"b79600c57249cbb65805caad2524cc2492342be6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"version bump"},{"commit":"140f1a85437745296b56976bef1b46514e323a4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":7,"deletions":7,"files":["tests/fixtures/centos-7.7/ls-R-newlines.json","tests/fixtures/centos-7.7/ls-R.json","tests/fixtures/centos-7.7/ls-glob.json","tests/fixtures/osx-10.14.6/ls-glob.json","tests/fixtures/ubuntu-18.04/ls-R-newlines.json","tests/fixtures/ubuntu-18.04/ls-R.json","tests/fixtures/ubuntu-18.04/ls-glob.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ls-R-newlines.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ls-R.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ls-glob.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-glob.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ls-R-newlines.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ls-R.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ls-glob.json","lines_changed":2}]},"message":"test fixes for issue #60"},{"commit":"e34657cfde6816ab7a7415d83580df0a1d98a5a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"fix issue #60 that was skipping the first file in some instances using -R without -l"},{"commit":"99070fa6073c4415a6faf8ca69dd6aa089af4062","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"2b46785b1f1281ee63df9159e36068f4607ad9b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":25,"deletions":3,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":28}]},"message":"add MIT license to vendorized IfconfigParser class"},{"commit":"c72562524b2b9aaca0be372bb24343158829ba5a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"fully remove tests from packaging"},{"commit":"b7dd6441c7e3f54f8a260fceef49aae6816c7151","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":5,"deletions":1,"files":["changelog.txt","jc/cli.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/cli.py","lines_changed":2}]},"message":"version bump"},{"commit":"31fcc2f755ad86622cf51a75879b14d44f246300","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["MANIFEST.in"],"file_stats":[{"name":"MANIFEST.in","lines_changed":1}]},"message":"remove manifest.in - no longer needed due to removing tests"},{"commit":"b391aa14bceffedb5a9c13f3f908923790edefc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["setup.cfg"],"file_stats":[{"name":"setup.cfg","lines_changed":2}]},"message":"add license_file to metadata"},{"commit":"d3c45debbb6690acd341fbcc9b99d1ae4cf0a43c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":5}]},"message":"remove tests and add license file"},{"commit":"5b08469b874553744bd5c5b1fa6581f4dcffacd0","merge":"8cf00a2 4a77ec6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #57 from kellyjonbrazil/dev"},{"commit":"4a77ec63a46554c84e646d31564230774ed87431","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["docs/parsers/ifconfig.md"],"file_stats":[{"name":"docs/parsers/ifconfig.md","lines_changed":11}]},"message":"add IfconfigParser class"},{"commit":"d13606b6dc2c207be6dea89a2c3e713c18a574b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":7,"deletions":6,"files":["changelog.txt","jc/cli.py","requirements.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"requirements.txt","lines_changed":3},{"name":"setup.py","lines_changed":5}]},"message":"modify dependencies for easier packaging into Fedora"},{"commit":"05291c93bba1aa364ba1ac7f2508e24bb362a814","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":198,"deletions":3,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":201}]},"message":"vendorize ifconfig-parser module for easier packaging in Fedora"},{"commit":"8cf00a208eb8493300331e7361b72e4f9e3f140e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"change text to strings"},{"commit":"06d73c88767a5b4d6003231c897c447ee5e1faa5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"649c646ea25ac7f89900cffa8919df01671bd32d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"add brew install option"},{"commit":"b7756d92501a7b8ba8e77d77d9d3718a58425beb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"1cd2cd954c21e5caec333507bd81819c82d45b49","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":16,"files":["tests/fixtures/osx-10.11.6/du.json","tests/fixtures/osx-10.11.6/du.out","tests/fixtures/osx-10.14.6/du.json","tests/fixtures/osx-10.14.6/du.out"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/du.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/du.out","lines_changed":7},{"name":"tests/fixtures/osx-10.14.6/du.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/du.out","lines_changed":7}]},"message":"remove references to homebrew/shim to allow tests to pass in homebrew packaging ci/cd"},{"commit":"72020b8da999ddca6f9ba82da235c9f42e4f4273","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":22,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":24}]},"message":"move packages info to jc-packages github page"},{"commit":"cf9720b749e7fc8caed0d2f1f2b1727a22a156b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"update install info"},{"commit":"967b9db7f90a3c3a0352edde7f4455c5f5d45b18","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":6}]},"message":"spelling"},{"commit":"bb3acb1182f4d509f9ddc7dfcffa4578e0a2bd5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"560c7f7e6d1f8a69ab026ddbff753d232ca1d00b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"79b28417644e00b933f531374d2f7fe8051e61be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":26}]},"message":"add new binary package install info"},{"commit":"a06a89cbd11026aa3910fadd1eff7fe388d02507","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"431bd969eb4809424fe99a02a7decb98bce9ea51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"use sys.exit(0) instead of exit()"},{"commit":"c87b722aec6e6964c516bbb8e80667ad7d9c6bc7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"spelling"},{"commit":"3688b8b014a1cf753b2207fbf3ebf0292c3fd672","merge":"99f7842 07b8d9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #56 from kellyjonbrazil/dev"},{"commit":"07b8d9e0c0d723d93e6c652f5b6156c467c451c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"7454b53e395e9122c00d4cf06b1c2af109913d7a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"formatting"},{"commit":"3d6a76024de0f9dcf91a4ab49cabe461074114fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":18}]},"message":"update with JC_COLORS info"},{"commit":"421b9809575a8de00229af4b851739889638ac74","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":18,"deletions":37,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":55}]},"message":"JC_COLORS working"},{"commit":"4a22e27d6a80a988f4de17bce421110d6abb8867","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":64,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":64}]},"message":"add set_env_colors function"},{"commit":"99f7842dee0f79cf933fae185cf8b0ed7c8b210f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":11,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":8},{"name":"setup.py","lines_changed":2}]},"message":"fix brek on pipe error"},{"commit":"7f869b4b187d70752207a7e74c13b858446f898f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":11,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":15},{"name":"setup.py","lines_changed":2}]},"message":"change colors to ansi and match jello style"},{"commit":"9665f4ee84680f3a8154b8a43ea668af2907782c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add pypi badge"},{"commit":"606904d48b1c7e0c19a940b5be0b564d1b5be6c8","merge":"302f05c 3f5279b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #53 from kellyjonbrazil/dev"},{"commit":"3f5279b97c386c736e0e2faa5c39d68ef89c46aa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to 1.10.1"},{"commit":"f5ec21e6ac612566af93158fc3968b901322d04a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_luf.py"],"file_stats":[{"name":"jc/parsers/systemctl_luf.py","lines_changed":4}]},"message":"use in instead of find()"},{"commit":"578a284465f014fe71ad6ac00bd41dc24ab2ced9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_ls.py"],"file_stats":[{"name":"jc/parsers/systemctl_ls.py","lines_changed":4}]},"message":"use in instead of find()"},{"commit":"422e392d9d98a7864312fc7fbd7f45537b71acbe","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_lj.py"],"file_stats":[{"name":"jc/parsers/systemctl_lj.py","lines_changed":4}]},"message":"use in instead of find()"},{"commit":"54dfffd34a17d1194690142ac403391fc65bb85f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl.py"],"file_stats":[{"name":"jc/parsers/systemctl.py","lines_changed":4}]},"message":"use in instead of find()"},{"commit":"cffba64d2b9165b44a8856665807111a2ad3a190","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":14}]},"message":"use in and startswith() instead of find()"},{"commit":"56a0c12a59bb252d3b7d0929f9fb19b4d96a8437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/pip_list.py"],"file_stats":[{"name":"jc/parsers/pip_list.py","lines_changed":6}]},"message":"use in instead of find()"},{"commit":"c174d3de18923b2b03befb5a7dfcbd977a8e147e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":7,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":14}]},"message":"use in and startswith() instead of find()"},{"commit":"a9c59ef9fc1bb68c9d0d7beffbeb670baf5b1e3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/mount.py"],"file_stats":[{"name":"jc/parsers/mount.py","lines_changed":2}]},"message":"fix logic to not for ' type ' in cleandata[0]"},{"commit":"abdb9b26732a6a71f5938d665b2ca43a381e1b33","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/mount.py"],"file_stats":[{"name":"jc/parsers/mount.py","lines_changed":4}]},"message":"use in instead of find()"},{"commit":"548aaab6262878d21f8b9539950cfad48638e35c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":42,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":43}]},"message":"remove old commented code"},{"commit":"20571c87ae9e1ca8a1f3120511910751420a35ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":6}]},"message":"us in instead of find()"},{"commit":"19e49200de5c731f76b42e80388c5223e8097e39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":2}]},"message":"version bump"},{"commit":"d32f5c67a91ede572c88e431b2ad0ce4d6c87dec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":4}]},"message":"use startswith() instead of find()"},{"commit":"b83b626435c55d2aa63e56dd8f22603da59e7626","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":4}]},"message":"use startswith() instead of find()"},{"commit":"ab2c1b25ec5da5f2ba238868c4dfca95a44da30e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/hosts.py"],"file_stats":[{"name":"jc/parsers/hosts.py","lines_changed":6}]},"message":"use startswith() and in instead of find()"},{"commit":"f2d46313a4508f13656cdb360f83fdf4116cc7d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/fstab.py"],"file_stats":[{"name":"jc/parsers/fstab.py","lines_changed":4}]},"message":"use startswith() instead of find()"},{"commit":"87e4796a6c936793e2784346819c7033d59b91e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":4}]},"message":"use in instead of .find()"},{"commit":"0014a5c2f4c056c2683d6614a65d778b1f527932","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab_u.py"],"file_stats":[{"name":"jc/parsers/crontab_u.py","lines_changed":6}]},"message":"us startswith() and in instead of .find()"},{"commit":"7af56e0dadab7d8b9538f3b7a550ad6dd1ac217d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":6}]},"message":"use startswith() and in instead of find()"},{"commit":"a5ae6e3c017b041f9079ff12455b7551ad204cb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":6}]},"message":"use startswith() instead of find()"},{"commit":"fe1a0d1faf46f55ed2888ed0065f3f3144691ed8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":9,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":19}]},"message":"use in instead of .find()"},{"commit":"302f05cdda305e46e69b74d5b0096f64c17da637","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"prettify style block"},{"commit":"c0044be7b0b6dadcffb64cb88ad92bf653dd2b6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"rename color grey to gray"},{"commit":"01100788070b82b4b827ef356972fa9b8f737eeb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update badge"},{"commit":"42eacb45f8fdf8085c6231bf5297629c2ec97c22","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"rename to Tests"},{"commit":"a43e2e19916662d509883457c160d7f95f97ae12","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add -m option info"},{"commit":"c8b721d4f6e46a2db77e1140b9caeb3b403fef72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":9,"deletions":3,"files":["changelog.txt","jc/cli.py","requirements.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/cli.py","lines_changed":2},{"name":"requirements.txt","lines_changed":1},{"name":"setup.py","lines_changed":5}]},"message":"version bump to 1.10.0"},{"commit":"d0bfddc3d9989444757d6668726c916e5363620b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":41,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":47}]},"message":"add color and -m monochrome option"},{"commit":"6b925a16c87cf75bb30edfda38511e8f84a4f6d6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add tests badge"},{"commit":"89ebd9fc2271d2c76353d5707bfd4afb7dedc278","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":0,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":10},{"name":"jc/parsers/dig.py","lines_changed":10}]},"message":"add axfr info to schema"},{"commit":"6b4ba662317629839aa62fbcfefb8ed3337c37ef","merge":"8ec8cd6 5b697dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #52 from kellyjonbrazil/dev"},{"commit":"5b697dc38141cdd47fcdd63bf295a80a7da86697","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":72,"deletions":0,"files":["tests/test_dig.py"],"file_stats":[{"name":"tests/test_dig.py","lines_changed":72}]},"message":"add more dig tests"},{"commit":"9ba73c95d1a528a9a92be4068805bb5aa027901e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":215,"deletions":0,"files":["tests/fixtures/centos-7.7/dig-axfr.json","tests/fixtures/centos-7.7/dig-axfr.out","tests/fixtures/osx-10.14.6/dig-axfr.json","tests/fixtures/osx-10.14.6/dig-axfr.out","tests/fixtures/ubuntu-18.04/dig-axfr.json","tests/fixtures/ubuntu-18.04/dig-axfr.out","tests/test_dig.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/dig-axfr.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/dig-axfr.out","lines_changed":60},{"name":"tests/fixtures/osx-10.14.6/dig-axfr.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig-axfr.out","lines_changed":59},{"name":"tests/fixtures/ubuntu-18.04/dig-axfr.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dig-axfr.out","lines_changed":57},{"name":"tests/test_dig.py","lines_changed":36}]},"message":"add tests"},{"commit":"93aa39044749c4c0ed749f62fb00fc1c76dc5af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to v1.9.3"},{"commit":"3cfb8945ddd83c00a720c44e2c1d97da0d8bad25","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":9,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":18}]},"message":"use startswith() instead of find"},{"commit":"cd8d38f2a136c4f35efc020b3476d09e965b71f1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":50,"deletions":1,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":51}]},"message":"add axfr support"},{"commit":"8ec8cd62944c59c462ab9f520c1dcfd14218b1ed","merge":"e5bea9a c028113","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #50 from kellyjonbrazil/dev"},{"commit":"c02811356153c2b4f8b2d7efb7f48bf8f7748068","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":6,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":5},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to v1.9.2"},{"commit":"5f22e1c8031b808ef02ffe078408bd58cc76e570","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":33,"deletions":0,"files":["tests/fixtures/osx-10.14.6/arp-a2.json","tests/fixtures/osx-10.14.6/arp-a2.out","tests/test_arp.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/arp-a2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/arp-a2.out","lines_changed":20},{"name":"tests/test_arp.py","lines_changed":12}]},"message":"fix and test for osx arp entries without ifscope"},{"commit":"d3351787e5cabd064c19e6617e9535e501686404","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":9,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":19}]},"message":"change osx detection"},{"commit":"e5bea9ae3b0a70b38f7da7dd9184343dbbd18887","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/file.py"],"file_stats":[{"name":"jc/parsers/file.py","lines_changed":2}]},"message":"version bump"},{"commit":"93c710abe9171568f61f65c4f84c040ffc24870c","merge":"400f5a4 c29e7cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #49 from kellyjonbrazil/dev"},{"commit":"c29e7cfe5cc4b2151912c6f618137d1b6c39c7be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":9,"deletions":6,"files":["README.md","changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to 1.9.1"},{"commit":"cb5c1ba00dc0e02bf6ad6c40096d99e319fa6171","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":101,"deletions":0,"files":["tests/fixtures/osx-10.14.6/file2.json","tests/fixtures/osx-10.14.6/file2.out","tests/test_file.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/file2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/file2.out","lines_changed":88},{"name":"tests/test_file.py","lines_changed":12}]},"message":"add tests for fix to make the file parser splitting more robust"},{"commit":"9a012b94e1942a14bc6dae3fb967ef618819c77b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/file.py"],"file_stats":[{"name":"jc/parsers/file.py","lines_changed":2}]},"message":"make splitting more robust"},{"commit":"400f5a44ece280cb0097d806b78a9490d2905600","merge":"c7cd2b6 a2ab5ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #48 from kellyjonbrazil/dev"},{"commit":"a2ab5bab91ea980399df1afb9d8071fa3282d04e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to v1.9.0"},{"commit":"fc8ab27361df3359b706125531b2643612d6996a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":93,"deletions":51,"files":["README.md","docs/parsers/ntpq.md","jc/parsers/ntpq.py","tests/fixtures/ubuntu-18.04/ntpq-p2.json","tests/fixtures/ubuntu-18.04/ntpq-p2.out","tests/test_ntpq.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"docs/parsers/ntpq.md","lines_changed":40},{"name":"jc/parsers/ntpq.py","lines_changed":59},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p2.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p2.out","lines_changed":24},{"name":"tests/test_ntpq.py","lines_changed":12}]},"message":"bugfix for misaligned columns and additional test for ntpq #31"},{"commit":"59f19d33a5c6677ea756a9424fdb032b430511a2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":153,"deletions":0,"files":["tests/fixtures/centos-7.7/file.json","tests/fixtures/centos-7.7/file.out","tests/fixtures/osx-10.14.6/file.json","tests/fixtures/osx-10.14.6/file.out","tests/fixtures/ubuntu-18.04/file.json","tests/fixtures/ubuntu-18.04/file.out","tests/test_file.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/file.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/file.out","lines_changed":25},{"name":"tests/fixtures/osx-10.14.6/file.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/file.out","lines_changed":53},{"name":"tests/fixtures/ubuntu-18.04/file.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/file.out","lines_changed":20},{"name":"tests/test_file.py","lines_changed":52}]},"message":"add file command tests for #41"},{"commit":"dfc96181159748d019419a2cba7aa9cb3b7a2a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":260,"deletions":1,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/file.md","jc/cli.py","jc/parsers/file.py"],"file_stats":[{"name":"README.md","lines_changed":36},{"name":"changelog.txt","lines_changed":5},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/file.md","lines_changed":90},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/file.py","lines_changed":128}]},"message":"add file parser for issue #41"},{"commit":"8e02e5c75a11cf205299ee6f87b67f9b787cf55e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":5,"files":["jc/cli.py","tests/test_cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8},{"name":"tests/test_cli.py","lines_changed":3}]},"message":"fix issue with getting options with some commands #47"},{"commit":"970493ab9346a344b21be7614903ad81bc65a6e9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["jc/parsers/airport.py","jc/parsers/airport_s.py"],"file_stats":[{"name":"jc/parsers/airport.py","lines_changed":1},{"name":"jc/parsers/airport_s.py","lines_changed":1}]},"message":"add magic commands"},{"commit":"64d78956eb33ca0a2564fded3d12729ee036a915","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"update acknowledgment"},{"commit":"40c05346f4098f8eea14c42da07df3faa143587a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":25,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":37}]},"message":"re-adding optimizations from https://github.com/philippeitis"},{"commit":"e9b0bc1409a824a82dabd2479892b7d18bad8c3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/airport.py"],"file_stats":[{"name":"jc/parsers/airport.py","lines_changed":2}]},"message":"doc update"},{"commit":"798e6bb7d939176bb36771a6d41bd55403d583be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":29,"deletions":0,"files":["tests/fixtures/osx-10.14.6/airport-s.json","tests/test_airport_s.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/airport-s.json","lines_changed":1},{"name":"tests/test_airport_s.py","lines_changed":28}]},"message":"tests passing for airport -s. issue #46"},{"commit":"12a370deed03ba42d7b7ebb410195ce5f32bb9c2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":372,"deletions":9,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/airport.md","docs/parsers/airport_s.md","jc/cli.py","jc/parsers/airport.py","jc/parsers/airport_s.py"],"file_stats":[{"name":"README.md","lines_changed":47},{"name":"changelog.txt","lines_changed":2},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/airport.md","lines_changed":4},{"name":"docs/parsers/airport_s.md","lines_changed":136},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/airport.py","lines_changed":5},{"name":"jc/parsers/airport_s.py","lines_changed":185}]},"message":"add airport -s parser for issue #46"},{"commit":"553bfbe1a0dd866851ba7eca66e9295c2097ad86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":40,"deletions":6,"files":["docs/parsers/airport.md","jc/parsers/airport.py","tests/test_airport.py"],"file_stats":[{"name":"docs/parsers/airport.md","lines_changed":9},{"name":"jc/parsers/airport.py","lines_changed":9},{"name":"tests/test_airport.py","lines_changed":28}]},"message":"tests passing for airport -I. Issue #46"},{"commit":"52494321fcfe0dc7ee71d8d78210b3c10372a237","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":120,"deletions":15,"files":["README.md","docs/parsers/airport.md","jc/parsers/airport.py","tests/fixtures/osx-10.14.6/airport-I.json","tests/fixtures/osx-10.14.6/airport-I.out"],"file_stats":[{"name":"README.md","lines_changed":22},{"name":"docs/parsers/airport.md","lines_changed":48},{"name":"jc/parsers/airport.py","lines_changed":62},{"name":"tests/fixtures/osx-10.14.6/airport-I.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/airport-I.out","lines_changed":2}]},"message":"fixes and docs for airport parser issue #46"},{"commit":"c6c9e06496683d2dd3586d17085801c7e698d960","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":196,"deletions":1,"files":["changelog.txt","docgen.sh","docs/parsers/airport.md","jc/cli.py","jc/parsers/airport.py","tests/fixtures/osx-10.14.6/airport-I.out","tests/fixtures/osx-10.14.6/airport-s.out"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/airport.md","lines_changed":64},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/airport.py","lines_changed":98},{"name":"tests/fixtures/osx-10.14.6/airport-I.out","lines_changed":15},{"name":"tests/fixtures/osx-10.14.6/airport-s.out","lines_changed":15}]},"message":"added airport command parser"},{"commit":"e3a6c05a58a2451e70975d8fabf644c56603c73d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":64,"deletions":17,"files":["docs/parsers/timedatectl.md","jc/parsers/timedatectl.py","tests/fixtures/centos-7.7/timedatectl.json","tests/fixtures/ubuntu-18.04/timedatectl.json","tests/test_timedatectl.py"],"file_stats":[{"name":"docs/parsers/timedatectl.md","lines_changed":18},{"name":"jc/parsers/timedatectl.py","lines_changed":21},{"name":"tests/fixtures/centos-7.7/timedatectl.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/timedatectl.json","lines_changed":1},{"name":"tests/test_timedatectl.py","lines_changed":40}]},"message":"timedatectl fixes, tests, and fixtures for issue #42"},{"commit":"391d06f68d1f45d33590d5407d3a5e4f723af717","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":35,"deletions":35,"files":["README.md","docs/parsers/ntpq.md","jc/parsers/ntpq.py","tests/fixtures/centos-7.7/ntpq-p.json","tests/fixtures/centos-7.7/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-p.json","tests/fixtures/ubuntu-18.04/ntpq-pn.json"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docs/parsers/ntpq.md","lines_changed":26},{"name":"jc/parsers/ntpq.py","lines_changed":32},{"name":"tests/fixtures/centos-7.7/ntpq-p.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/ntpq-pn.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ntpq-pn.json","lines_changed":2}]},"message":"change selection_state to state"},{"commit":"99804ea06e0c70e3a82ddc7f9c7a42343374d700","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":222,"deletions":0,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/timedatectl.md","jc/cli.py","jc/parsers/timedatectl.py"],"file_stats":[{"name":"README.md","lines_changed":15},{"name":"changelog.txt","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/timedatectl.md","lines_changed":85},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/timedatectl.py","lines_changed":119}]},"message":"added timedatectl status parser"},{"commit":"51935deb2ad18e4ea3ca16954ce810354f6095a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":21,"deletions":0,"files":["tests/fixtures/centos-7.7/timedatectl.out","tests/fixtures/ubuntu-18.04/timedatectl.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/timedatectl.out","lines_changed":14},{"name":"tests/fixtures/ubuntu-18.04/timedatectl.out","lines_changed":7}]},"message":"timedatectl test fixtures"},{"commit":"b24d0c3a475b88d9ccf1a8fe29715ee60972fcad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":34,"deletions":2,"files":["README.md","jc/parsers/ntpq.py"],"file_stats":[{"name":"README.md","lines_changed":33},{"name":"jc/parsers/ntpq.py","lines_changed":3}]},"message":"ntpq docs"},{"commit":"762a886d6fdf5c2ad21d81868d138fb32621ed1c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":133,"deletions":0,"files":["tests/fixtures/centos-7.7/ntpq-p.json","tests/fixtures/centos-7.7/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-p.json","tests/fixtures/ubuntu-18.04/ntpq-p.out","tests/fixtures/ubuntu-18.04/ntpq-pn.json","tests/fixtures/ubuntu-18.04/ntpq-pn.out","tests/fixtures/ubuntu-18.04/ntqp-p.out","tests/test_ntpq.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ntpq-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ntpq-pn.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ntpq-p.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-18.04/ntpq-pn.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ntpq-pn.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-18.04/ntqp-p.out","lines_changed":21},{"name":"tests/test_ntpq.py","lines_changed":66}]},"message":"add ntpq tests"},{"commit":"2c3e9ddfe47f56cd7edc2fdf6317f7ecec0b7918","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":543,"deletions":0,"files":["changelog.txt","docgen.sh","docs/parsers/ntpq.md","jc/cli.py","jc/parsers/ntpq.py","tests/fixtures/centos-7.7/ntpq-p.out","tests/fixtures/centos-7.7/ntpq-pn.out"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ntpq.md","lines_changed":235},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/ntpq.py","lines_changed":291},{"name":"tests/fixtures/centos-7.7/ntpq-p.out","lines_changed":6},{"name":"tests/fixtures/centos-7.7/ntpq-pn.out","lines_changed":6}]},"message":"add ntpq parser for issue #31"},{"commit":"c7cd2b63c8f24e9d17c458880fe401d8032395ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":91,"files":["tests/fixtures/generic/oscar_age_male.csv"],"file_stats":[{"name":"tests/fixtures/generic/oscar_age_male.csv","lines_changed":91}]},"message":"delete unused test file"},{"commit":"f0528ea83112e71ff51c89be27fc9bbdfbbf1951","merge":"b5eaff2 5bc5596","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #45 from kellyjonbrazil/dev"},{"commit":"5bc5596f604fb87dffbfdf44ce2395b16bf01297","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":17,"deletions":4,"files":["changelog.txt","jc/cli.py","setup.py","tests/test_ls.py"],"file_stats":[{"name":"changelog.txt","lines_changed":5},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2},{"name":"tests/test_ls.py","lines_changed":12}]},"message":"version bump to 1.8.1"},{"commit":"2c27ac46be803b583caf82c1765bd0c35cee8bc1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2454,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-lR-empty-folder.json","tests/fixtures/osx-10.14.6/ls-lR-empty-folder.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ls-lR-empty-folder.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-lR-empty-folder.out","lines_changed":2453}]},"message":"add ls test fixtures"},{"commit":"caad840153e40dc660a2d5e06a96f3451fef25f9","merge":"aff86ae 65bd7e2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #44 from philippeitis/patch-5"},{"commit":"65bd7e2904016141c1ed53cdd437865c66d7628e","merge":"17b6efe c3d7d7d","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","message":"Merge pull request #1 from kellyjonbrazil/pr/44"},{"commit":"c3d7d7db12d4870fc4499e0e3445d85ae89f2aea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"removed whitespace"},{"commit":"56053103625af6fb7fa749fc5bc3dbdc62fc223c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":4,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":15}]},"message":"added tests, removed os import, changed to 'assertEqual'"},{"commit":"17b6efe82e6a558353b011c543489eaaf3a6d3ac","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":14,"deletions":0,"files":["tests/test_cli.py"],"file_stats":[{"name":"tests/test_cli.py","lines_changed":14}]},"message":"Create basic tests for generate_magic_commands()"},{"commit":"a032ae56ae7d247e00415267b65b2a8b80a3302e","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"Pass args to generate_magic_command() to allow testing."},{"commit":"eab2f4b0566b4c76db661cbfa99a56a6bf8d6541","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":33,"deletions":19,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":52}]},"message":"Move core magic() logic into seperate function for testability, minor tweaks."},{"commit":"aff86ae6c71abfe1cbdba5c574a5f3707292ec19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":29,"deletions":39,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":68}]},"message":"reimpliment magic() based on the dictionary approach suggested by philippeitis"},{"commit":"7ece9ddc1a37551cdaaac50f37a48e6d98b18bf4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"version bump ls"},{"commit":"7cd048e839a7cc8404fd5abc153a3d315c207819","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update"},{"commit":"1e22f610a33903e8525d35a18b1dcf760a93791e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"fix for osx - doesn't print 'total xx' line if empty directory (issue #40)"},{"commit":"5249c972ae25e9b289a2667bf471aad5e58c70a9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":4}]},"message":"add to changelog"},{"commit":"fd45f856a050f6c56a7a6b50b97b3d8c4de28af0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":2}]},"message":"import jc.utils instead of jc"},{"commit":"c8ab40cd33b14a3a1937ecf64bb23e282f5bb921","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":[".gitignore"],"file_stats":[{"name":".gitignore","lines_changed":1}]},"message":"ignore .github folder"},{"commit":"b2c872925b37254dac74578c1803b4127f8411c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":20,"insertions":208,"deletions":220,"files":["tests/test_ls.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_passwd.py","tests/test_pip_list.py","tests/test_ps.py","tests/test_route.py","tests/test_shadow.py","tests/test_ss.py","tests/test_systemctl_lj.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py","tests/test_who.py","tests/test_xml.py","tests/test_yaml.py"],"file_stats":[{"name":"tests/test_ls.py","lines_changed":132},{"name":"tests/test_lsmod.py","lines_changed":8},{"name":"tests/test_lsof.py","lines_changed":16},{"name":"tests/test_mount.py","lines_changed":16},{"name":"tests/test_netstat.py","lines_changed":40},{"name":"tests/test_passwd.py","lines_changed":12},{"name":"tests/test_pip_list.py","lines_changed":20},{"name":"tests/test_ps.py","lines_changed":32},{"name":"tests/test_route.py","lines_changed":16},{"name":"tests/test_shadow.py","lines_changed":8},{"name":"tests/test_ss.py","lines_changed":8},{"name":"tests/test_systemctl_lj.py","lines_changed":16},{"name":"tests/test_systemctl_ls.py","lines_changed":8},{"name":"tests/test_systemctl_luf.py","lines_changed":8},{"name":"tests/test_uname.py","lines_changed":16},{"name":"tests/test_uptime.py","lines_changed":16},{"name":"tests/test_w.py","lines_changed":16},{"name":"tests/test_who.py","lines_changed":24},{"name":"tests/test_xml.py","lines_changed":8},{"name":"tests/test_yaml.py","lines_changed":8}]},"message":"add utf-8 encoding for testing on Windows"},{"commit":"f48e229202f8ab1ebfa502ca57bb31cf673c7a62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":192,"deletions":192,"files":["tests/test_arp.py","tests/test_blkid.py","tests/test_crontab.py","tests/test_crontab_u.py","tests/test_csv.py","tests/test_df.py","tests/test_dig.py","tests/test_du.py","tests/test_env.py","tests/test_free.py","tests/test_fstab.py","tests/test_group.py","tests/test_gshadow.py","tests/test_history.py","tests/test_hosts.py","tests/test_id.py","tests/test_ifconfig.py","tests/test_ini.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_last.py"],"file_stats":[{"name":"tests/test_arp.py","lines_changed":32},{"name":"tests/test_blkid.py","lines_changed":40},{"name":"tests/test_crontab.py","lines_changed":4},{"name":"tests/test_crontab_u.py","lines_changed":8},{"name":"tests/test_csv.py","lines_changed":36},{"name":"tests/test_df.py","lines_changed":32},{"name":"tests/test_dig.py","lines_changed":24},{"name":"tests/test_du.py","lines_changed":16},{"name":"tests/test_env.py","lines_changed":8},{"name":"tests/test_free.py","lines_changed":16},{"name":"tests/test_fstab.py","lines_changed":8},{"name":"tests/test_group.py","lines_changed":12},{"name":"tests/test_gshadow.py","lines_changed":8},{"name":"tests/test_history.py","lines_changed":8},{"name":"tests/test_hosts.py","lines_changed":8},{"name":"tests/test_id.py","lines_changed":8},{"name":"tests/test_ifconfig.py","lines_changed":24},{"name":"tests/test_ini.py","lines_changed":8},{"name":"tests/test_iptables.py","lines_changed":48},{"name":"tests/test_jobs.py","lines_changed":8},{"name":"tests/test_last.py","lines_changed":28}]},"message":"utf-8 open for windows tests"},{"commit":"799fec92c39b1ff0696c6ebb182c4bef66b86e56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["tests/test_pip_show.py","tests/test_systemctl.py"],"file_stats":[{"name":"tests/test_pip_show.py","lines_changed":16},{"name":"tests/test_systemctl.py","lines_changed":8}]},"message":"utf-8 for windows support"},{"commit":"87a41c2fcaa395f108b5a5126ed77f7cc7fe5d6d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["tests/test_lsblk.py","tests/test_stat.py"],"file_stats":[{"name":"tests/test_lsblk.py","lines_changed":16},{"name":"tests/test_stat.py","lines_changed":8}]},"message":"add utf-8 to open function"},{"commit":"7f85de0c46cda95d57b9677ba0ca3ea59690e502","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"add windows-latest"},{"commit":"13661b19934a74417713e98e3e1e4df6bb0f29ad","merge":"5f798d6 51d5c38","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #37 from philippeitis/continuous_integration"},{"commit":"51d5c3892d6ff1e2e6ac7c4f3e496e7d9ed4b6a7","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":2}]},"message":"Remove Windows tests, due to lack of support."},{"commit":"e4eab4641ac15220f2787c5d27b443ab8c718b86","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":3}]},"message":"Change line in blkid.py to trigger CI"},{"commit":"9b148e0ba37e18749d95608e1bac6c090ab83ee2","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["requirements.txt"],"file_stats":[{"name":"requirements.txt","lines_changed":3}]},"message":"Add requirements.txt"},{"commit":"de28932650d5027e2781011f1243b89f053b241d","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":7,"deletions":6,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":13}]},"message":"Consolidate dictionary into creation, trigger CI"},{"commit":"5f798d603e461d2de5adf74662ba4d4b121f28f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":3}]},"message":"version bump and ack to philippeitis"},{"commit":"a0757b2dd3fc0f3e26622941d93bd909dae0a1f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":5,"files":["jc/parsers/foo.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":6}]},"message":"optimize line parsing"},{"commit":"498d51b4e802cb40cac58aae1eff1f723bbbd896","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":31,"deletions":0,"files":[".github/workflows/pythonapp.yml"],"file_stats":[{"name":".github/workflows/pythonapp.yml","lines_changed":31}]},"message":"Enable Continuous Integration with GitHub Actions."},{"commit":"b06b6bae3f64f591c9075812dc1b632ef6d2da37","merge":"6aa2d5a 0652768","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #36 from philippeitis/patch-3"},{"commit":"b5eaff21372a58aefb66e5afc5e863db8355fee1","merge":"d75c406 c01bcd3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #35 from kellyjonbrazil/revert-34-patch-3"},{"commit":"c01bcd3734382a0c388d9f4041fc888171ca7675","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":25,"deletions":12,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":37}]},"message":"Revert \"Simplify process() in history.py, avoid list allocation in parse()\""},{"commit":"d75c4068caaf4adbe9a39fa452ae867421053673","merge":"d96b3a6 0652768","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #34 from philippeitis/patch-3"},{"commit":"6aa2d5a3d26f9f00c3334928f6f0e501860433da","merge":"69576f6 a63408c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #33 from philippeitis/patch-2"},{"commit":"065276805f0f2dd23a6382f0120ca07e9eae116f","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":12,"deletions":25,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":37}]},"message":"Simplify process() in history.py, avoid list allocation in parse()"},{"commit":"a63408c8cf3f99646be2b375f651d6cf417f7ae0","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"Handle case where only options are passed."},{"commit":"69576f6bfae073196627a0a39b5ececb8666d25c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6}]},"message":"minor sytax fixes"},{"commit":"19845624e2996da4653efc2f312aceb514feaf5c","merge":"d96b3a6 22ff296","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #32 from philippeitis/patch-1"},{"commit":"22ff2964e9889587711e779ac24f8f8034212f5e","author":"philippeitis","author_email":"33013301+philippeitis@users.noreply.github.com","stats":{"files_changed":1,"insertions":62,"deletions":75,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":137}]},"message":"Simplify main(), magic() methods."},{"commit":"d96b3a65a98bc135d21d4feafc0a43317b5a11fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"4989445ef4bb8919d9b3b95e2fcee77ca7692aec","merge":"53ee2c3 6770892","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #30 from kellyjonbrazil/dev"},{"commit":"6770892acd49aced225dbccf39290f33522c9001","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add release notes link"},{"commit":"d4eba8740fc325756f3db96ab37a5383540cbeff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"release date 3/3"},{"commit":"9f607605605e47990f97ccfd48fde19a14e036e7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["tests/test_group.py","tests/test_gshadow.py"],"file_stats":[{"name":"tests/test_group.py","lines_changed":52},{"name":"tests/test_gshadow.py","lines_changed":40}]},"message":"add group and gshadow tests"},{"commit":"0a8f8ac934f040141e6a4eec8cf7170e1ca73294","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"add group and gshadow parsers"},{"commit":"6ae24c82447bcff606e7027dd01b916293b49584","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":274,"deletions":0,"files":["tests/fixtures/centos-7.7/group.json","tests/fixtures/centos-7.7/group.out","tests/fixtures/centos-7.7/gshadow.json","tests/fixtures/centos-7.7/gshadow.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/group.json","tests/fixtures/osx-10.14.6/group.out","tests/fixtures/ubuntu-18.04/group.json","tests/fixtures/ubuntu-18.04/group.out","tests/fixtures/ubuntu-18.04/gshadow.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/group.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/group.out","lines_changed":39},{"name":"tests/fixtures/centos-7.7/gshadow.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/gshadow.out","lines_changed":39},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":3},{"name":"tests/fixtures/osx-10.14.6/group.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/group.out","lines_changed":135},{"name":"tests/fixtures/ubuntu-18.04/group.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/group.out","lines_changed":53},{"name":"tests/fixtures/ubuntu-18.04/gshadow.json","lines_changed":1}]},"message":"add group and gshadow test fixtures"},{"commit":"d3679082a8c5cff76eb7de67c33fe716a1402182","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":64,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":64}]},"message":"add group and gshadow parsers"},{"commit":"fb08b42dca135705a3759435335d95c898d47f60","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":21,"deletions":21,"files":["docs/parsers/group.md","jc/parsers/group.py"],"file_stats":[{"name":"docs/parsers/group.md","lines_changed":18},{"name":"jc/parsers/group.py","lines_changed":24}]},"message":"change 'group_list' to 'members'"},{"commit":"4aeaa9f42a88bf4e05c8780a35cc8c4d83c9b842","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":316,"deletions":0,"files":["docgen.sh","docs/parsers/gshadow.md","jc/cli.py","jc/parsers/gshadow.py","tests/fixtures/ubuntu-18.04/gshadow.out"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/gshadow.md","lines_changed":109},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/gshadow.py","lines_changed":152},{"name":"tests/fixtures/ubuntu-18.04/gshadow.out","lines_changed":53}]},"message":"add /etc/gshadow parser"},{"commit":"5f5693da048cb4739dc56500c672dc8fbccaaf32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["docs/parsers/csv.md"],"file_stats":[{"name":"docs/parsers/csv.md","lines_changed":3}]},"message":"spelling fix"},{"commit":"5eb0f61727f92a84fb3620e13db072167ef552ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":333,"deletions":0,"files":["docgen.sh","docs/parsers/group.md","jc/cli.py","jc/parsers/group.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/group.md","lines_changed":141},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/group.py","lines_changed":190}]},"message":"add /etc/group file parser"},{"commit":"958e998991b1cc61dc1dc341b90cd53f4691cd43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/csv.py"],"file_stats":[{"name":"jc/parsers/csv.py","lines_changed":4}]},"message":"formatting"},{"commit":"b78c1509f67fb76d17ac97193a2851d8d9e17f62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":2,"files":["jc/parsers/csv.py"],"file_stats":[{"name":"jc/parsers/csv.py","lines_changed":10}]},"message":"try/except dialect detection"},{"commit":"ce184d4d57faa3f1bca5bcaa02da7a5a5d995eb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":20,"insertions":24054,"deletions":0,"files":["tests/fixtures/generic/csv-biostats.csv","tests/fixtures/generic/csv-biostats.json","tests/fixtures/generic/csv-cities.csv","tests/fixtures/generic/csv-cities.json","tests/fixtures/generic/csv-deniro.csv","tests/fixtures/generic/csv-deniro.json","tests/fixtures/generic/csv-example.csv","tests/fixtures/generic/csv-example.json","tests/fixtures/generic/csv-flyrna.json","tests/fixtures/generic/csv-flyrna.tsv","tests/fixtures/generic/csv-flyrna2.json","tests/fixtures/generic/csv-flyrna2.tsv","tests/fixtures/generic/csv-homes-pipe.csv","tests/fixtures/generic/csv-homes-pipe.json","tests/fixtures/generic/csv-homes.csv","tests/fixtures/generic/csv-homes.json","tests/fixtures/generic/csv-insurance.csv","tests/fixtures/generic/csv-insurance.json","tests/fixtures/generic/oscar_age_male.csv","tests/test_csv.py"],"file_stats":[{"name":"tests/fixtures/generic/csv-biostats.csv","lines_changed":20},{"name":"tests/fixtures/generic/csv-biostats.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-cities.csv","lines_changed":130},{"name":"tests/fixtures/generic/csv-cities.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-deniro.csv","lines_changed":89},{"name":"tests/fixtures/generic/csv-deniro.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-example.csv","lines_changed":2},{"name":"tests/fixtures/generic/csv-example.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna.tsv","lines_changed":11767},{"name":"tests/fixtures/generic/csv-flyrna2.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-flyrna2.tsv","lines_changed":11767},{"name":"tests/fixtures/generic/csv-homes-pipe.csv","lines_changed":3},{"name":"tests/fixtures/generic/csv-homes-pipe.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-homes.csv","lines_changed":51},{"name":"tests/fixtures/generic/csv-homes.json","lines_changed":1},{"name":"tests/fixtures/generic/csv-insurance.csv","lines_changed":1},{"name":"tests/fixtures/generic/csv-insurance.json","lines_changed":1},{"name":"tests/fixtures/generic/oscar_age_male.csv","lines_changed":91},{"name":"tests/test_csv.py","lines_changed":124}]},"message":"add csv parser tests"},{"commit":"b4c3714ced9ee5cc6a7ef0c59a43cf85e1cb9824","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"removed [OPTIONS] PARSER syntax. still works but prefer the PARSER [OPTIONS] syntax for better performance"},{"commit":"5b7dfa043864f1a3f34aa4ef5c6554a2dfe185f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"formatting"},{"commit":"391a3884765780497dc34e0e9938ff5032c81291","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":49,"deletions":0,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":48},{"name":"changelog.txt","lines_changed":1}]},"message":"doc update"},{"commit":"d9c4e2ed4c0f908f4b63c2376b53ddfd32a0fae1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":241,"deletions":0,"files":["docgen.sh","docs/parsers/csv.md","jc/cli.py","jc/parsers/csv.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/csv.md","lines_changed":104},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/csv.py","lines_changed":135}]},"message":"add csv file parser"},{"commit":"0c42db38b102987629e40cee2716b826161e6e94","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":0,"files":["docs/parsers/who.md","jc/parsers/who.py"],"file_stats":[{"name":"docs/parsers/who.md","lines_changed":2},{"name":"jc/parsers/who.py","lines_changed":2}]},"message":"doc update"},{"commit":"2f9be8bf33f8be5651d06da9d316f7894606df19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"simplify usage"},{"commit":"e8c00155e861b9eedfdf37a22912271bec581d62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"add -b to warning message"},{"commit":"cc88fdd9ee3951d7ef2aa881cc12f0b7f96aef86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"update example"},{"commit":"d9de11ef1d846a9625dad0adb962b864404c90c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":16}]},"message":"add another who example"},{"commit":"0ceda97d0968b67b70cdbb68f7a62657e79c9935","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":88,"deletions":0,"files":["tests/test_who.py"],"file_stats":[{"name":"tests/test_who.py","lines_changed":88}]},"message":"who parser tests"},{"commit":"d0dec92ba84640ddc40da7c6faa6568b76757e04","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":36,"deletions":0,"files":["tests/fixtures/centos-7.7/who-a.json","tests/fixtures/centos-7.7/who-a.out","tests/fixtures/centos-7.7/who.json","tests/fixtures/centos-7.7/who.out","tests/fixtures/osx-10.14.6/who-a.json","tests/fixtures/osx-10.14.6/who-a.out","tests/fixtures/osx-10.14.6/who.json","tests/fixtures/osx-10.14.6/who.out","tests/fixtures/ubuntu-18.04/who-a.json","tests/fixtures/ubuntu-18.04/who-a.out","tests/fixtures/ubuntu-18.04/who.json","tests/fixtures/ubuntu-18.04/who.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/who-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/who-a.out","lines_changed":6},{"name":"tests/fixtures/centos-7.7/who.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/who.out","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/who-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/who-a.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/who.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/who.out","lines_changed":4},{"name":"tests/fixtures/ubuntu-18.04/who-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/who-a.out","lines_changed":6},{"name":"tests/fixtures/ubuntu-18.04/who.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/who.out","lines_changed":3}]},"message":"add who test fixtures"},{"commit":"d420c008d8aaa0879fa5a3f236d81acb506376c3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/who.py","lines_changed":9}]},"message":"fix for pts lines with no user info"},{"commit":"f0b32db4333477e22cc40de62cf026a6a7aa2eb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":6,"files":["README.md","docs/parsers/who.md"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docs/parsers/who.md","lines_changed":8}]},"message":"who doc update"},{"commit":"bc838eda591473d32b11a885e60ef653925739d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":4,"files":["jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/who.py","lines_changed":9}]},"message":"fix output for non-extended"},{"commit":"afe55b6af07b74816d33d9555ffaa1c1921dd27a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":46,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":46}]},"message":"add who parser"},{"commit":"dd3a3ac302d7b35beef1181e74aed0faf96fd3e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":255,"deletions":9,"files":["changelog.txt","docgen.sh","docs/parsers/who.md","jc/parsers/who.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/who.md","lines_changed":150},{"name":"jc/parsers/who.py","lines_changed":112}]},"message":"doc update and process pid integers"},{"commit":"f9982a79474c1838f37fc0ff88437980b228d7a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":2,"files":["jc/parsers/who.py"],"file_stats":[{"name":"jc/parsers/who.py","lines_changed":13}]},"message":"fixes for from and comment fields"},{"commit":"07c1be9e9ad9f62cf76c23788152de8f3530ee16","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":170,"deletions":0,"files":["jc/cli.py","jc/parsers/who.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/who.py","lines_changed":169}]},"message":"add who command parser"},{"commit":"f832b88755bfbd3878ec402e603180e6825279be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["tests/test_passwd.py","tests/test_shadow.py"],"file_stats":[{"name":"tests/test_passwd.py","lines_changed":52},{"name":"tests/test_shadow.py","lines_changed":40}]},"message":"add passwd and shadow tests"},{"commit":"0fac757efca41db062b2f65acc727963c5fb353c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"add passwd and shadow parsers"},{"commit":"fc15742065531152f3d5895042eeb806e33a192a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":215,"deletions":0,"files":["tests/fixtures/centos-7.7/passwd.json","tests/fixtures/centos-7.7/passwd.out","tests/fixtures/centos-7.7/shadow.json","tests/fixtures/centos-7.7/shadow.out","tests/fixtures/osx-10.14.6/passwd.json","tests/fixtures/osx-10.14.6/passwd.out","tests/fixtures/ubuntu-18.04/passwd.json","tests/fixtures/ubuntu-18.04/passwd.out","tests/fixtures/ubuntu-18.04/shadow.json","tests/fixtures/ubuntu-18.04/shadow.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/passwd.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/passwd.out","lines_changed":21},{"name":"tests/fixtures/centos-7.7/shadow.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/shadow.out","lines_changed":21},{"name":"tests/fixtures/osx-10.14.6/passwd.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/passwd.out","lines_changed":108},{"name":"tests/fixtures/ubuntu-18.04/passwd.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/passwd.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/shadow.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/shadow.out","lines_changed":30}]},"message":"passwd and shadow test fixtures"},{"commit":"6f2466a1319eaa4256ae7a2a0f23b3ff37882d37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":73,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":73}]},"message":"update readme with /etc/passwd and /etc/shadow file parsers"},{"commit":"4b90e22f0a9c6790bca62c8314945a7ffc6e267b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":137,"deletions":9,"files":["docs/parsers/shadow.md","jc/parsers/shadow.py"],"file_stats":[{"name":"docs/parsers/shadow.md","lines_changed":72},{"name":"jc/parsers/shadow.py","lines_changed":74}]},"message":"doc update"},{"commit":"c4935687853fb3b079ae42614793cdafe68e124e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/passwd.md","jc/parsers/passwd.py"],"file_stats":[{"name":"docs/parsers/passwd.md","lines_changed":2},{"name":"jc/parsers/passwd.py","lines_changed":2}]},"message":"doc fix"},{"commit":"1cdf004b7728901dc137e57b0c8994edfdd6d417","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":190,"deletions":0,"files":["docgen.sh","docs/parsers/shadow.md","jc/cli.py","jc/parsers/shadow.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/shadow.md","lines_changed":69},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/shadow.py","lines_changed":119}]},"message":"add /etc/shadow parser"},{"commit":"a4ea50426184d30cbe849a8f80bfd5c975075c9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":303,"deletions":0,"files":["docgen.sh","docs/parsers/passwd.md","jc/cli.py","jc/parsers/passwd.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/passwd.md","lines_changed":126},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/passwd.py","lines_changed":175}]},"message":"add /etc/passwd parser"},{"commit":"4c2c234c3bf68d1aac66bd4d1f22b9f97e99128d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":16,"insertions":673,"deletions":0,"files":["tests/fixtures/centos-7.7/last-w.json","tests/fixtures/centos-7.7/last-w.out","tests/fixtures/centos-7.7/last.json","tests/fixtures/centos-7.7/last.out","tests/fixtures/centos-7.7/lastb.json","tests/fixtures/centos-7.7/lastb.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/last.json","tests/fixtures/osx-10.14.6/last.out","tests/fixtures/ubuntu-18.04/last-w.json","tests/fixtures/ubuntu-18.04/last-w.out","tests/fixtures/ubuntu-18.04/last.json","tests/fixtures/ubuntu-18.04/last.out","tests/fixtures/ubuntu-18.04/lastb.json","tests/fixtures/ubuntu-18.04/lastb.out","tests/test_last.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/last-w.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/last-w.out","lines_changed":69},{"name":"tests/fixtures/centos-7.7/last.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/last.out","lines_changed":69},{"name":"tests/fixtures/centos-7.7/lastb.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lastb.out","lines_changed":6},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":4},{"name":"tests/fixtures/osx-10.14.6/last.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/last.out","lines_changed":383},{"name":"tests/fixtures/ubuntu-18.04/last-w.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/last-w.out","lines_changed":16},{"name":"tests/fixtures/ubuntu-18.04/last.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/last.out","lines_changed":16},{"name":"tests/fixtures/ubuntu-18.04/lastb.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lastb.out","lines_changed":3},{"name":"tests/test_last.py","lines_changed":100}]},"message":"add last and lastb tests"},{"commit":"3d4c0f3e89dab6496ff74df350e3238d6625933c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":22,"insertions":285,"deletions":0,"files":["tests/fixtures/centos-7.7/blkid-ip-multi.json","tests/fixtures/centos-7.7/blkid-ip-multi.out","tests/fixtures/centos-7.7/blkid-ip-udev-multi.json","tests/fixtures/centos-7.7/blkid-ip-udev-multi.out","tests/fixtures/centos-7.7/blkid-ip-udev.json","tests/fixtures/centos-7.7/blkid-ip-udev.out","tests/fixtures/centos-7.7/blkid-sda2.json","tests/fixtures/centos-7.7/blkid-sda2.out","tests/fixtures/centos-7.7/blkid.json","tests/fixtures/centos-7.7/blkid.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/blkid-ip-multi.json","tests/fixtures/ubuntu-18.04/blkid-ip-multi.out",".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.json",".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.out","tests/fixtures/ubuntu-18.04/blkid-ip-udev.json","tests/fixtures/ubuntu-18.04/blkid-ip-udev.out","tests/fixtures/ubuntu-18.04/blkid-sda2.json","tests/fixtures/ubuntu-18.04/blkid-sda2.out","tests/fixtures/ubuntu-18.04/blkid.json","tests/fixtures/ubuntu-18.04/blkid.out","tests/test_blkid.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/blkid-ip-multi.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid-ip-multi.out","lines_changed":29},{"name":"tests/fixtures/centos-7.7/blkid-ip-udev-multi.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid-ip-udev-multi.out","lines_changed":29},{"name":"tests/fixtures/centos-7.7/blkid-ip-udev.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid-ip-udev.out","lines_changed":14},{"name":"tests/fixtures/centos-7.7/blkid-sda2.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid-sda2.out","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/blkid.out","lines_changed":4},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":6},{"name":"tests/fixtures/ubuntu-18.04/blkid-ip-multi.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid-ip-multi.out","lines_changed":2},{"name":".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.json","lines_changed":1},{"name":".../fixtures/ubuntu-18.04/blkid-ip-udev-multi.out","lines_changed":26},{"name":"tests/fixtures/ubuntu-18.04/blkid-ip-udev.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid-ip-udev.out","lines_changed":12},{"name":"tests/fixtures/ubuntu-18.04/blkid-sda2.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid-sda2.out","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/blkid.out","lines_changed":15},{"name":"tests/test_blkid.py","lines_changed":136}]},"message":"add blkid tests"},{"commit":"52fad02903468c05d2422a340ad8dbcdf18ed475","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":12,"deletions":12,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":12},{"name":"jc/parsers/ls.py","lines_changed":12}]},"message":"doc update"},{"commit":"9dcabc057c40e345971a08474b5b886e6b60a8de","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":10}]},"message":"support multi device udev output"},{"commit":"db8c1079ddc25922ab6a20d0f71fb19af38f8092","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":8}]},"message":"use maxsplit=1 in case there are multiple '=' delimiters"},{"commit":"8f954673abdbbd4d9b9da3eacc61b335b4909f89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":5}]},"message":"use shlex split for values within quotations that have spaces"},{"commit":"79522d1c7dd4dec15b75b06dda002752f7d97e36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"doc fixes"},{"commit":"a18bf030794efef125c70a32fe82855e47649b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/parsers/last.py","jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":12}]},"message":"use raw strings for regular expressions"},{"commit":"c02b6b5d827d26b43db0a3457124714aa2dbbc98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":81,"deletions":1,"files":["README.md","changelog.txt","setup.py"],"file_stats":[{"name":"README.md","lines_changed":79},{"name":"changelog.txt","lines_changed":1},{"name":"setup.py","lines_changed":2}]},"message":"doc updates"},{"commit":"f99b4232848b0d868804acc4125836bfcf475bba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":134,"deletions":29,"files":["docs/parsers/blkid.md","jc/parsers/blkid.py"],"file_stats":[{"name":"docs/parsers/blkid.md","lines_changed":115},{"name":"jc/parsers/blkid.py","lines_changed":48}]},"message":"doc update"},{"commit":"d7d9d45d4fba89e74f7490c463eb26bf20a5d127","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":2}]},"message":"add missing comma"},{"commit":"90065ec0cdc8c5abc13bc0027f63658dacf3cfb2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":31,"deletions":26,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":57}]},"message":"add more integers"},{"commit":"51157ebb867a48332c768bf3086614944aebdb62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":4}]},"message":"another devname fix"},{"commit":"96d95c79ca0938e326f55f858f8153df9cb49e44","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":6}]},"message":"devname fix"},{"commit":"e5da34c23306463e8707b15676db0ca53bf66757","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":3}]},"message":"check if devname key exists before renaming"},{"commit":"f09d657f7728242947db3dc63ff6779d08c37866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":5}]},"message":"rename devname to device"},{"commit":"0f4b0189f54dc0b3622cd407c5565e53ea111379","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":35,"deletions":3,"files":["jc/parsers/blkid.py"],"file_stats":[{"name":"jc/parsers/blkid.py","lines_changed":38}]},"message":"process integer values"},{"commit":"4666042abb3142e2cfb518db9ffe22d9e608e090","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":216,"deletions":0,"files":["docgen.sh","docs/parsers/blkid.md","jc/cli.py","jc/parsers/blkid.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/blkid.md","lines_changed":83},{"name":"jc/cli.py","lines_changed":1},{"name":"jc/parsers/blkid.py","lines_changed":131}]},"message":"add blkid parser"},{"commit":"027d544c2bb778adc0ee9463832f19b10e099a0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add last and lastb parser"},{"commit":"f1967d0138d27bde864c2400aa75baa8a39bbfde","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":3}]},"message":"system_boot fix"},{"commit":"c1d896027dd1ce021e048b3e77eab24ff59d08bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":3}]},"message":"fix system_boot tty"},{"commit":"5c2d2a66187d32d62b31b7c7f13e502fdb7f9635","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":190,"deletions":6,"files":["docgen.sh","docs/parsers/last.md","jc/parsers/last.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/last.md","lines_changed":118},{"name":"jc/parsers/last.py","lines_changed":77}]},"message":"process function and docs"},{"commit":"997b269b0b7e53a456e2a0bd997ead6c2ae843bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/last.py"],"file_stats":[{"name":"jc/parsers/last.py","lines_changed":3}]},"message":"btmp fix"},{"commit":"61257e7525c25827cb8057ed5c612e54ea9b9637","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":119,"deletions":1,"files":["jc/cli.py","jc/parsers/last.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/last.py","lines_changed":117}]},"message":"add last and lastb parser"},{"commit":"53ee2c36310cb84390ef96644aee6871769151c9","merge":"2ad3167 8bfa0bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #29 from kellyjonbrazil/dev"},{"commit":"8bfa0bddec9ff1c21972019467dcf5738ab3afd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump to 1.7.5"},{"commit":"ad61e6bc81177a2add7d052bf1ddec5f1b3f2976","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":26,"insertions":598,"deletions":133,"files":["tests/fixtures/centos-7.7/ls-R-newlines.json","tests/fixtures/centos-7.7/ls-R-newlines.out","tests/fixtures/centos-7.7/ls-l-newlines.json","tests/fixtures/centos-7.7/ls-l-newlines.out","tests/fixtures/centos-7.7/ls-lR-newlines.json","tests/fixtures/centos-7.7/ls-lR-newlines.out","tests/fixtures/centos-7.7/ls-newlines.json","tests/fixtures/centos-7.7/ls-newlines.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/ls-R-newlines.json","tests/fixtures/osx-10.14.6/ls-R-newlines.out","tests/fixtures/osx-10.14.6/ls-l-newlines.json","tests/fixtures/osx-10.14.6/ls-l-newlines.out","tests/fixtures/osx-10.14.6/ls-lR-newlines.json","tests/fixtures/osx-10.14.6/ls-lR-newlines.out","tests/fixtures/osx-10.14.6/ls-newlines.json","tests/fixtures/osx-10.14.6/ls-newlines.out","tests/fixtures/ubuntu-18.04/ls-R-newlines.json","tests/fixtures/ubuntu-18.04/ls-R-newlines.out","tests/fixtures/ubuntu-18.04/ls-l-newlines.json","tests/fixtures/ubuntu-18.04/ls-l-newlines.out","tests/fixtures/ubuntu-18.04/ls-lR-newlines.json","tests/fixtures/ubuntu-18.04/ls-lR-newlines.out","tests/fixtures/ubuntu-18.04/ls-newlines.json","tests/fixtures/ubuntu-18.04/ls-newlines.out","tests/test_ls.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ls-R-newlines.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-R-newlines.out","lines_changed":43},{"name":"tests/fixtures/centos-7.7/ls-l-newlines.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-l-newlines.out","lines_changed":34},{"name":"tests/fixtures/centos-7.7/ls-lR-newlines.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-lR-newlines.out","lines_changed":45},{"name":"tests/fixtures/centos-7.7/ls-newlines.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-newlines.out","lines_changed":33},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":15},{"name":"tests/fixtures/osx-10.14.6/ls-R-newlines.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-R-newlines.out","lines_changed":36},{"name":"tests/fixtures/osx-10.14.6/ls-l-newlines.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-l-newlines.out","lines_changed":34},{"name":"tests/fixtures/osx-10.14.6/ls-lR-newlines.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-lR-newlines.out","lines_changed":38},{"name":"tests/fixtures/osx-10.14.6/ls-newlines.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-newlines.out","lines_changed":148},{"name":"tests/fixtures/ubuntu-18.04/ls-R-newlines.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-R-newlines.out","lines_changed":40},{"name":"tests/fixtures/ubuntu-18.04/ls-l-newlines.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-l-newlines.out","lines_changed":34},{"name":"tests/fixtures/ubuntu-18.04/ls-lR-newlines.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-lR-newlines.out","lines_changed":42},{"name":"tests/fixtures/ubuntu-18.04/ls-newlines.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-newlines.out","lines_changed":33},{"name":"tests/test_ls.py","lines_changed":144}]},"message":"add ls tests for filenames with newline characters"},{"commit":"873b5ba8acf599d083d6031b818d5fca83cbca9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":31,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":58}]},"message":"move examples to bottom"},{"commit":"6ae50054e2e8c7ca730013b43062eedc230c0ad4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"readme update"},{"commit":"22a35f41bf9c404d3532611f5929143d04b10010","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":10}]},"message":"move variables to top"},{"commit":"961696c963215a9dab56113ff89f21a6e9739df6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":0,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"add a warning if newlines are detected in naked ls"},{"commit":"c7b7f1a5dcf77a1f4c23ef6bbf5683fd1a055f72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"fix for files with newlines in naked ls"},{"commit":"b5a0d650b128d8af81bb14dd5d007349529cb66f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":151,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-newlines.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ls-newlines.out","lines_changed":151}]},"message":"ls output with newlines"},{"commit":"573b27946474276592ee7494689ce9a88f5a05f7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":6}]},"message":"fixup for filenames that start with a newline character"},{"commit":"116e07f1614b4a45eb58ffcfe20b5efa71c473a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":7,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":13}]},"message":"fixes for multiple consecutive newlines and trailing newlines in filenames"},{"commit":"964868c8aff99edf37b0db41c7d16f8b84ac4704","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":21,"deletions":4,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":20}]},"message":"add support for newlines in filenames (only with ls -l)"},{"commit":"c8dac32df8102c2b782e87d55bb95ca2d9490185","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"readme update"},{"commit":"72a0016bd833699c3819baa899f335f75b8c1943","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"use link to anchor for Parsers"},{"commit":"2ad316743460bb6620e7ede251e1dc2739b073fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update doc url"},{"commit":"ddabfaa05c63f886b17e5b4d37cd83fcfdb9b221","merge":"873771d f857523","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #25 from kellyjonbrazil/dev"},{"commit":"f857523ca756864211b6b18af5a8886e5db200bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":2,"files":["changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"bump to version 1.7.4"},{"commit":"00d53858e820f00ba015bc25629100c8e5495221","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add note about aliases not being supported"},{"commit":"c008167e660929a91606bb96498cdc113e815f7e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/parsers/ls.md","jc/parsers/ls.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":1},{"name":"jc/parsers/ls.py","lines_changed":1}]},"message":"add time-style=full-iso option to doc"},{"commit":"102344a041e9e0aff8b6d9db1873ba1064f7e895","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"formatting"},{"commit":"c865298ef3613fe6ce17f41c15209a69940af1ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":3}]},"message":"remove unnecessary enumerate in for loop"},{"commit":"6ac03faf939bcda8930a48a5e832b557813e2129","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"Revert \"add ubuntu and centos default ls aliases to magic_commands\""},{"commit":"49c2701743706b6cbf0e52b2c7f275e301315189","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"add ubuntu and centos default ls aliases to magic_commands"},{"commit":"d1a271b08e64b42be8cec11377b0e18435a0caec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":35333,"deletions":1374,"files":["tests/fixtures/centos-7.7/ls-R.json","tests/fixtures/centos-7.7/ls-R.out","tests/fixtures/centos-7.7/ls-alR.json","tests/fixtures/centos-7.7/ls-alR.out","tests/fixtures/centos-7.7/ls-glob.json","tests/fixtures/centos-7.7/ls-glob.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.14.6/ls-R.json","tests/fixtures/osx-10.14.6/ls-R.out","tests/fixtures/osx-10.14.6/ls-alR.json","tests/fixtures/osx-10.14.6/ls-alR.out","tests/fixtures/osx-10.14.6/ls-glob.json","tests/fixtures/osx-10.14.6/ls-glob.out","tests/fixtures/ubuntu-18.04/ls-R.json","tests/fixtures/ubuntu-18.04/ls-R.out","tests/fixtures/ubuntu-18.04/ls-alR.json","tests/fixtures/ubuntu-18.04/ls-alR.out","tests/fixtures/ubuntu-18.04/ls-glob.json","tests/fixtures/ubuntu-18.04/ls-glob.out","tests/fixtures/ubuntu-18.04/ls-lR.out","tests/test_ls.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ls-R.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-R.out","lines_changed":5089},{"name":"tests/fixtures/centos-7.7/ls-alR.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-alR.out","lines_changed":4997},{"name":"tests/fixtures/centos-7.7/ls-glob.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-glob.out","lines_changed":1919},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":5},{"name":"tests/fixtures/osx-10.14.6/ls-R.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-R.out","lines_changed":5018},{"name":"tests/fixtures/osx-10.14.6/ls-alR.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-alR.out","lines_changed":4997},{"name":"tests/fixtures/osx-10.14.6/ls-glob.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-glob.out","lines_changed":1831},{"name":"tests/fixtures/ubuntu-18.04/ls-R.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-R.out","lines_changed":5639},{"name":"tests/fixtures/ubuntu-18.04/ls-alR.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-alR.out","lines_changed":5026},{"name":"tests/fixtures/ubuntu-18.04/ls-glob.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-glob.out","lines_changed":1357},{"name":"tests/fixtures/ubuntu-18.04/ls-lR.out","lines_changed":712},{"name":"tests/test_ls.py","lines_changed":108}]},"message":"add new ls tests for recursive and multiple directories with glob"},{"commit":"7388ad19b9d252d3e66659e4bc37171cef2a9748","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":6,"deletions":4,"files":["docs/parsers/ls.md","jc/cli.py","jc/parsers/ls.py","setup.py"],"file_stats":[{"name":"docs/parsers/ls.md","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"setup.py","lines_changed":2}]},"message":"bump to v1.8.0"},{"commit":"2e63cb5fadd032c7cb54a618e8b374ee853abcca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"version bump ls to 1.1"},{"commit":"e7f14d02b12c7dcba309f2d28a0f171769d1ba37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1438,"deletions":8,"files":["jc/parsers/ls.py","tests/fixtures/ubuntu-18.04/ls-R.out","tests/fixtures/ubuntu-18.04/ls-lR.out"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":48},{"name":"tests/fixtures/ubuntu-18.04/ls-R.out","lines_changed":686},{"name":"tests/fixtures/ubuntu-18.04/ls-lR.out","lines_changed":712}]},"message":"update ls to allow multi directory (glob and -R). Adds 'parent' key if found"},{"commit":"873771d05ab0b77163c95d2c37e11edf38451832","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting"},{"commit":"d7de122e36e0698e00f321fbac8dc0b543cf9e8a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"prettify link"},{"commit":"4ef0434f536c6658ddc2b48a3db113df2fd26000","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":6}]},"message":"formatting update"},{"commit":"1aa2c9925996f2358b6272547db755ec3098a8a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":2,"files":["README.md","jc/parsers/history.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":1}]},"message":"removed history from magic syntax"},{"commit":"c2450b27b079b02ed3f4ece9e36547f01cd4b139","merge":"028e136 14d6d8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #22 from kellyjonbrazil/dev"},{"commit":"14d6d8b84f0ddeff984aff486e2e697a91ac6fb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump to 1.7.3"},{"commit":"f0e3846c038ec5507cd4a19980d83ee0fb969ef5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":5}]},"message":"formatting"},{"commit":"6ba64f1128373843b068226424a3af545ac9d22c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"usage update"},{"commit":"13bcdbc6c9a81bc5d52fe7a84e6a0a34908db8bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"doc update"},{"commit":"cfba62db20674d788601354211a10e2b1675a0c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":19}]},"message":"correct parser search in magic()"},{"commit":"18fb69e36e303a3f9530dcb80354b25bfdbb931d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"docs/parsers link"},{"commit":"474eb0f3fdeaa612e189d745b12a5ed9c6e0a31b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"doc updates"},{"commit":"7f47b533701e60449351d5da03cd5960e0dec9ad","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":90,"deletions":68,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":158}]},"message":"add alternate magic syntax"},{"commit":"dc2907d3ce101043b30bcce71abb4bb02897f43a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["docs/parsers/crontab.md"],"file_stats":[{"name":"docs/parsers/crontab.md","lines_changed":6}]},"message":"doc update"},{"commit":"1af85811e06c489051c456918284a746ce12c692","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/fstab.py"],"file_stats":[{"name":"jc/parsers/fstab.py","lines_changed":3}]},"message":"remove magic_command info"},{"commit":"1c1b19a478fe5c356a93cd165518429e77fcbdf0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":3,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":6}]},"message":"doc update"},{"commit":"66942d64babf932faeb887eb4ec0cab32829321a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":4}]},"message":"changelog update"},{"commit":"2fb6ae08d76e7a5727b2fcdd5def3e3822e0cf72","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":5}]},"message":"fix shlex usage"},{"commit":"bf8811e03e2a5b736f4c084f42400fcde400ff3f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":9}]},"message":"add comments"},{"commit":"c8b502c571d3081ca3086e349a426ca252a3bb84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6}]},"message":"remove unnecessary join and add comments"},{"commit":"81c11a975c6ee66a1f83350df8b065a6b07dcc9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"added docstrings"},{"commit":"0d370eb403ab4d9ed11e36776efc08bdd3505c1a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"doc update"},{"commit":"7492c3f1e312cdb0c58c2077db0d60d2cab1e58f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"changelog update"},{"commit":"515a8a84b79c9bf6f3001d3c52faa82a6709b8d1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":33,"insertions":33,"deletions":33,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2}]},"message":"add \"command\" to description"},{"commit":"dd6680efb2b15bb8ed676016aae1c65193dfe147","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":29,"deletions":14,"files":["changelog.txt","jc/cli.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":40}]},"message":"allow condensed options (-prdq is equivalent to -p -r -d -q)"},{"commit":"a7158373cd225685f5c398fa36b8d5208e20521c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"comment update"},{"commit":"6d50ec71997cac9c898737de93b8a945f0351e53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":15}]},"message":"add try/except to fix bare jc command condition"},{"commit":"95dbf98e8e03486f74d986683f52699f4f9c9577","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":26,"deletions":6,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":32}]},"message":"allow options in magic syntax"},{"commit":"d49323e4ebf2a8aebd1d8ea65ef0854ee8bcb29f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":33,"insertions":33,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/id.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":1},{"name":"jc/parsers/crontab.py","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":1},{"name":"jc/parsers/du.py","lines_changed":1},{"name":"jc/parsers/env.py","lines_changed":1},{"name":"jc/parsers/foo.py","lines_changed":1},{"name":"jc/parsers/free.py","lines_changed":1},{"name":"jc/parsers/fstab.py","lines_changed":1},{"name":"jc/parsers/history.py","lines_changed":1},{"name":"jc/parsers/id.py","lines_changed":1},{"name":"jc/parsers/ifconfig.py","lines_changed":1},{"name":"jc/parsers/iptables.py","lines_changed":1},{"name":"jc/parsers/jobs.py","lines_changed":1},{"name":"jc/parsers/ls.py","lines_changed":1},{"name":"jc/parsers/lsblk.py","lines_changed":1},{"name":"jc/parsers/lsmod.py","lines_changed":1},{"name":"jc/parsers/lsof.py","lines_changed":1},{"name":"jc/parsers/mount.py","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":1},{"name":"jc/parsers/pip_list.py","lines_changed":1},{"name":"jc/parsers/pip_show.py","lines_changed":1},{"name":"jc/parsers/ps.py","lines_changed":1},{"name":"jc/parsers/route.py","lines_changed":1},{"name":"jc/parsers/ss.py","lines_changed":1},{"name":"jc/parsers/stat.py","lines_changed":1},{"name":"jc/parsers/systemctl.py","lines_changed":1},{"name":"jc/parsers/systemctl_lj.py","lines_changed":1},{"name":"jc/parsers/systemctl_ls.py","lines_changed":1},{"name":"jc/parsers/systemctl_luf.py","lines_changed":1},{"name":"jc/parsers/uname.py","lines_changed":1},{"name":"jc/parsers/uptime.py","lines_changed":1},{"name":"jc/parsers/w.py","lines_changed":1}]},"message":"add magic_commands list to info"},{"commit":"08c1e2aec9d6bb68653dc12ba2272535fb7cef09","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add magic syntax"},{"commit":"a2c137df2e6d3b133df5df0bb3f9b1ca69990557","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":66,"deletions":299,"files":["jc/cli.py","jc/cli.py.old"],"file_stats":[{"name":"jc/cli.py","lines_changed":135},{"name":"jc/cli.py.old","lines_changed":230}]},"message":"better magic command syntax logic using introspection information from parser modules"},{"commit":"fe27dcdb8f72b5a288f978b87be2eb930099543e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":319,"deletions":45,"files":["jc/cli.py","jc/cli.py.old"],"file_stats":[{"name":"jc/cli.py","lines_changed":134},{"name":"jc/cli.py.old","lines_changed":230}]},"message":"proof of concept for magic syntax (e.g. jc ls -al)"},{"commit":"028e136161ac15f588845f87907b4565a6ee7be2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":7,"deletions":2,"files":["MANIFEST.in","changelog.txt","jc/cli.py","setup.py"],"file_stats":[{"name":"MANIFEST.in","lines_changed":1},{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":2},{"name":"setup.py","lines_changed":3}]},"message":"bump to 1.7.2: add test fixtures to package"},{"commit":"9a85a0a4d504447b32fb622bb17cebc5e47f687f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/crontab_u.md","jc/parsers/crontab_u.py"],"file_stats":[{"name":"docs/parsers/crontab_u.md","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":2}]},"message":"fix doc"},{"commit":"3a1cbc4d5063344c3e3a4bf510d651a36beedfb3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":14,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":28}]},"message":"move info class to top"},{"commit":"77d334f7f386f79ec0571325500054fdab207f31","merge":"4de8f42 53cdf86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #19 from kellyjonbrazil/dev-1.7.1"},{"commit":"53cdf863acc72dbdb671773e30277f42e9eadc0e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":4}]},"message":"changelog update"},{"commit":"7b7e7fe0fe92edef1e559bd7ae8272530d7ed5c8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"changelog update"},{"commit":"0c03132847a3d2bcbdb0b743e1472865916cced4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"fix error codes using sys.exit()"},{"commit":"3b81f7e2a1381958b33962d4531f3fa223c6a83e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"exit code on ctrl-c exit"},{"commit":"3d76437b435660e92633c604c4ad32ee0500a28b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/ini.md","docs/parsers/xml.md","jc/parsers/ini.py","jc/parsers/xml.py"],"file_stats":[{"name":"docs/parsers/ini.md","lines_changed":2},{"name":"docs/parsers/xml.md","lines_changed":2},{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/xml.py","lines_changed":2}]},"message":"doc fix"},{"commit":"4bc54c78cea48682ed0432ea56460a26a0e52f83","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":7,"deletions":7,"files":["docs/parsers/du.md","docs/parsers/history.md","jc/parsers/du.py","jc/parsers/history.py"],"file_stats":[{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":6},{"name":"jc/parsers/history.py","lines_changed":4}]},"message":"fix compatibility list"},{"commit":"3d303a96b9f6d582b1e99a632da539c3bee4df7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":16,"deletions":2,"files":["tests/fixtures/centos-7.7/crontab-u.json","tests/fixtures/centos-7.7/{crontab2.out => crontab-u.out}","tests/fixtures/centos-7.7/crontab.json","tests/fixtures/ubuntu-18.04/crontab-u.json","tests/test_crontab_u.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/crontab-u.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/{crontab2.out => crontab-u.out}","lines_changed":1},{"name":"tests/fixtures/centos-7.7/crontab.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/crontab-u.json","lines_changed":2},{"name":"tests/test_crontab_u.py","lines_changed":12}]},"message":"crontab bug fix and tests"},{"commit":"33c99d031d18e52a8ca85dfc1a8cba0acebfc3bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":2}]},"message":"fix line clobbering bug"},{"commit":"caf7e9f69a22f3c9b3d4624fd2238d6e54d932ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":2,"files":["jc/parsers/crontab_u.py"],"file_stats":[{"name":"jc/parsers/crontab_u.py","lines_changed":6}]},"message":"fix line clobbering bug and add user field to shortcuts"},{"commit":"9449f1f5d5e7bc075549549758af5cc3a6c4524f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":9,"deletions":3,"files":["changelog.txt","jc/parsers/crontab.py","jc/parsers/crontab_u.py","tests/fixtures/centos-7.7/crontab2.out"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/crontab.py","lines_changed":4},{"name":"jc/parsers/crontab_u.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/crontab2.out","lines_changed":5}]},"message":"crontab bugfix: inserting header row was clobbering the first data row"},{"commit":"6bad164b5e2a5b7c7ce82c69b6c091fc079ab2fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":9,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":16}]},"message":"simplify by removing unnecessary getattr calls"},{"commit":"bb5ba7ddb146821db2efe095b6de5ae5b72bb335","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":7}]},"message":"add indent variable to helptext"},{"commit":"8b2e01d5404649e8f94c81ca3b5fa05fe8962220","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"doc update"},{"commit":"ff1159b1deb9b870382a6066166961902679b569","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"exit codes on error"},{"commit":"a2fd3202a0a3df336792f167c546ea3e53ea2332","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/pip_list.py","jc/parsers/pip_show.py"],"file_stats":[{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2}]},"message":"description formatting change"},{"commit":"7b53715b91787a8885d61ddc0079c7ee8f9348a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/crontab_u.py"],"file_stats":[{"name":"jc/parsers/crontab_u.py","lines_changed":2}]},"message":"change description"},{"commit":"e05fc0a5107b348af14ff4bea39d274939fab7dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":8,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":16}]},"message":"change padding of helptext"},{"commit":"43604c33f654b8c19e8cce387ebbf31bd598b73b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"doc update"},{"commit":"eb67c484ff2a9530b434cd6a90c160f6936e1de7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"add crontab-u to parsers list"},{"commit":"a7b7bdd46781d07e6e70d74a41a3944855fde5fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":94,"deletions":92,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":186}]},"message":"load parser modules 'just in time' so we don't need to load all modules at startup"},{"commit":"ab06989a18faf5378f1e73c7016ea02e1218ff9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":5,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":10}]},"message":"description updates"},{"commit":"657b722f947b6a0aa7e52a786e4c84f177e9a5c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":8,"deletions":8,"files":["README.md","changelog.txt","docs/parsers/ini.md","jc/parsers/ini.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"changelog.txt","lines_changed":2},{"name":"docs/parsers/ini.md","lines_changed":4},{"name":"jc/parsers/ini.py","lines_changed":6}]},"message":"ini to INI"},{"commit":"dd2aecad2787186b3962723086bb7e13eff4874f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"description update"},{"commit":"c82c5c5c648384eb5a54205ba8590624a3ab4375","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":6}]},"message":"changelog update"},{"commit":"a1761cd68f91e2668d8d7e2fa7774f6496408be6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":42,"deletions":0,"files":["tests/fixtures/centos-7.7/id.json","tests/fixtures/osx-10.14.6/id.json","tests/test_id.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/id.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/id.json","lines_changed":1},{"name":"tests/test_id.py","lines_changed":40}]},"message":"id tests"},{"commit":"d618a7f583629bb7a7fc0854e7349cab07e3e003","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":143,"deletions":9,"files":["README.md","docgen.sh","docs/parsers/id.md","jc/parsers/id.py"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/id.md","lines_changed":133},{"name":"jc/parsers/id.py","lines_changed":12}]},"message":"doc update"},{"commit":"831a42f66096f5efbbf0f6882970c328120f9c9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":48}]},"message":"id formatting"},{"commit":"3b36022e5a1056a28a83494b1ab8fab209399c2d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":250,"deletions":1,"files":["README.md","jc/cli.py","jc/parsers/id.py","tests/fixtures/centos-7.7/id.out","tests/fixtures/osx-10.14.6/id.out"],"file_stats":[{"name":"README.md","lines_changed":33},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/id.py","lines_changed":214},{"name":"tests/fixtures/centos-7.7/id.out","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/id.out","lines_changed":1}]},"message":"add id parser"},{"commit":"d01dfa25f10f82cd201ae7b4c9cc18313773f8d3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]},"message":"changelog updates"},{"commit":"395a99037b4816eb800b289f90372a9b8d7d36cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":89,"deletions":13,"files":["README.md","docs/parsers/history.md","jc/parsers/history.py"],"file_stats":[{"name":"README.md","lines_changed":84},{"name":"docs/parsers/history.md","lines_changed":10},{"name":"jc/parsers/history.py","lines_changed":8}]},"message":"crontab-u and history doc updates"},{"commit":"025986c51d2d4869b17de63a7dd96efa2988e3c5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":13,"deletions":3,"files":["jc/parsers/history.py","tests/fixtures/centos-7.7/history.json","tests/fixtures/ubuntu-18.04/history.json"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":12},{"name":"tests/fixtures/centos-7.7/history.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/history.json","lines_changed":2}]},"message":"change history 'line' to integer"},{"commit":"c56b83093ff05f55ef4643c1731cff61d4b9e8ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":202,"deletions":2,"files":["docgen.sh","docs/parsers/crontab.md","docs/parsers/crontab_u.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"docs/parsers/crontab_u.md","lines_changed":199}]},"message":"doc update"},{"commit":"7c712a4133abd843d4da926e4c8d548abd1d6fa3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":52,"deletions":50,"files":["jc/parsers/crontab_u.py"],"file_stats":[{"name":"jc/parsers/crontab_u.py","lines_changed":102}]},"message":"doc update"},{"commit":"9a0cfe6dfa4888f435d35bd2d35126d031a556d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":4}]},"message":"minor formatting"},{"commit":"a116cdbcec1b27192dd0f9f4707629353edb3caf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":29,"deletions":13,"files":["tests/fixtures/ubuntu-18.04/crontab-u.json",".../ubuntu-18.04/{crontab.out => crontab-u.out}","tests/fixtures/ubuntu-18.04/crontab.json","tests/test_crontab.py","tests/test_crontab_u.py"],"file_stats":[{"name":"tests/fixtures/ubuntu-18.04/crontab-u.json","lines_changed":1},{"name":".../ubuntu-18.04/{crontab.out => crontab-u.out}","lines_changed":0},{"name":"tests/fixtures/ubuntu-18.04/crontab.json","lines_changed":1},{"name":"tests/test_crontab.py","lines_changed":12},{"name":"tests/test_crontab_u.py","lines_changed":28}]},"message":"tests for crontab-u"},{"commit":"f2d616c98e049cdac5d667e63723f92110419a1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":272,"deletions":0,"files":["changelog.txt","jc/cli.py","jc/parsers/crontab_u.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/crontab_u.py","lines_changed":269}]},"message":"add crontab with user parser"},{"commit":"42cbd1777dbacc614d75f67f3f9156f72be46532","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":80,"deletions":0,"files":["tests/test_xml.py","tests/test_yaml.py"],"file_stats":[{"name":"tests/test_xml.py","lines_changed":40},{"name":"tests/test_yaml.py","lines_changed":40}]},"message":"add xml and yaml tests"},{"commit":"ebf375aac0473249cfd212068f6e6e33cc42449a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":40,"deletions":0,"files":["tests/test_ini.py"],"file_stats":[{"name":"tests/test_ini.py","lines_changed":40}]},"message":"add ini tests"},{"commit":"1f9050267eeb870c4c0f50000fc32985c4d8535b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":12,"insertions":586,"deletions":0,"files":["tests/fixtures/generic/ini-iptelserver.ini","tests/fixtures/generic/ini-iptelserver.json","tests/fixtures/generic/ini-test.ini","tests/fixtures/generic/ini-test.json","tests/fixtures/generic/xml-cd_catalog.json","tests/fixtures/generic/xml-cd_catalog.xml","tests/fixtures/generic/xml-foodmenu.json","tests/fixtures/generic/xml-foodmenu.xml","tests/fixtures/generic/yaml-istio-sc.json","tests/fixtures/generic/yaml-istio-sc.yaml","tests/fixtures/generic/yaml-istio-sidecar.json","tests/fixtures/generic/yaml-istio-sidecar.yaml"],"file_stats":[{"name":"tests/fixtures/generic/ini-iptelserver.ini","lines_changed":133},{"name":"tests/fixtures/generic/ini-iptelserver.json","lines_changed":1},{"name":"tests/fixtures/generic/ini-test.ini","lines_changed":12},{"name":"tests/fixtures/generic/ini-test.json","lines_changed":1},{"name":"tests/fixtures/generic/xml-cd_catalog.json","lines_changed":1},{"name":"tests/fixtures/generic/xml-cd_catalog.xml","lines_changed":211},{"name":"tests/fixtures/generic/xml-foodmenu.json","lines_changed":1},{"name":"tests/fixtures/generic/xml-foodmenu.xml","lines_changed":33},{"name":"tests/fixtures/generic/yaml-istio-sc.json","lines_changed":1},{"name":"tests/fixtures/generic/yaml-istio-sc.yaml","lines_changed":17},{"name":"tests/fixtures/generic/yaml-istio-sidecar.json","lines_changed":1},{"name":"tests/fixtures/generic/yaml-istio-sidecar.yaml","lines_changed":174}]},"message":"add ini, xml, and yaml test files"},{"commit":"d7f9707a1521719ce051140b1a0b4ced7c5114c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["jc/parsers/ini.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/ini.py","lines_changed":2},{"name":"jc/parsers/yaml.py","lines_changed":2}]},"message":"minor formatting"},{"commit":"ab589ee3ed09b9d5e09d8c046f3a64cd2bd14c98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3}]},"message":"add __version__ variable"},{"commit":"c84ec0361fc4c877c698378b28ff9e8b502793b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":105,"deletions":3,"files":["README.md","docgen.sh","docs/parsers/xml.md","jc/parsers/xml.py"],"file_stats":[{"name":"README.md","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/xml.md","lines_changed":99},{"name":"jc/parsers/xml.py","lines_changed":5}]},"message":"xml example update"},{"commit":"47d2f8968a8a9b68fc9fff45985f5e69f1a5cc40","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"changelog.txt","lines_changed":1}]},"message":"doc update"},{"commit":"019c480bcce7fe3821b75906fc673ce7bb1ffadc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"update acknowledgments"},{"commit":"547c6d3d5956984d3c4fb5c2a1b76a595752b467","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":172,"deletions":2,"files":["README.md","changelog.txt","jc/cli.py","jc/parsers/xml.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":46},{"name":"changelog.txt","lines_changed":3},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/xml.py","lines_changed":119},{"name":"setup.py","lines_changed":3}]},"message":"add xml parser"},{"commit":"b5ebf8b76afcd0e0190994048fe1f5b53f654451","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add ruamel.yaml ack"},{"commit":"c690e328f23a69f592dfaaa949b74ba2190ad376","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":102,"deletions":14,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/yaml.md","lines_changed":58},{"name":"jc/parsers/yaml.py","lines_changed":58}]},"message":"add examples"},{"commit":"cbb92c1a9517234806f1c54398a69645b6f43669","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":94,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":94}]},"message":"add ini and yaml"},{"commit":"beb41997c9b3797e73a678ec1bcddcfb83b5ef0d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":91,"deletions":2,"files":["docgen.sh","docs/parsers/ini.md","jc/parsers/ini.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ini.md","lines_changed":87},{"name":"jc/parsers/ini.py","lines_changed":5}]},"message":"doc update"},{"commit":"755a6faf1110f150fe2261b81439b7d17a9b424e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":8,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":12}]},"message":"clean up multi-document support"},{"commit":"021f8350a31a49ecc539f02576303600b222b49d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":4}]},"message":"update doc"},{"commit":"76583dcd2f5ef32e58ca87149154563b07e061cb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":113,"deletions":0,"files":["jc/cli.py","jc/parsers/ini.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/ini.py","lines_changed":111}]},"message":"add ini file parser"},{"commit":"bf033239a706c42be3d7508c58a51c542f8a69b0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":82,"deletions":7,"files":["docs/parsers/yaml.md","jc/parsers/yaml.py"],"file_stats":[{"name":"docs/parsers/yaml.md","lines_changed":69},{"name":"jc/parsers/yaml.py","lines_changed":20}]},"message":"doc update"},{"commit":"eb37fccd37fd625f701a14b6cfcf30e9f0bbff4d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":5,"files":["jc/parsers/yaml.py"],"file_stats":[{"name":"jc/parsers/yaml.py","lines_changed":11}]},"message":"doc update"},{"commit":"d04ad453319fe45e302da87f970d2ac0806fae1a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":2,"files":["changelog.txt","docgen.sh","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"docgen.sh","lines_changed":1},{"name":"setup.py","lines_changed":5}]},"message":"setup for 1.7.1"},{"commit":"db157b8ca7f7fa935676bafeaafdfd9818a89e6a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":94,"deletions":2,"files":["jc/cli.py","jc/parsers/yaml.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6},{"name":"jc/parsers/yaml.py","lines_changed":90}]},"message":"add yaml file parser"},{"commit":"68f277bb2081eb2cba14ffe7f0ee1ee0a982335b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":33,"insertions":99,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/crontab.py","lines_changed":3},{"name":"jc/parsers/df.py","lines_changed":3},{"name":"jc/parsers/dig.py","lines_changed":3},{"name":"jc/parsers/du.py","lines_changed":3},{"name":"jc/parsers/env.py","lines_changed":3},{"name":"jc/parsers/foo.py","lines_changed":3},{"name":"jc/parsers/free.py","lines_changed":3},{"name":"jc/parsers/fstab.py","lines_changed":3},{"name":"jc/parsers/history.py","lines_changed":3},{"name":"jc/parsers/hosts.py","lines_changed":3},{"name":"jc/parsers/ifconfig.py","lines_changed":3},{"name":"jc/parsers/iptables.py","lines_changed":3},{"name":"jc/parsers/jobs.py","lines_changed":3},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"jc/parsers/lsblk.py","lines_changed":3},{"name":"jc/parsers/lsmod.py","lines_changed":3},{"name":"jc/parsers/lsof.py","lines_changed":3},{"name":"jc/parsers/mount.py","lines_changed":3},{"name":"jc/parsers/netstat.py","lines_changed":3},{"name":"jc/parsers/pip_list.py","lines_changed":3},{"name":"jc/parsers/pip_show.py","lines_changed":3},{"name":"jc/parsers/ps.py","lines_changed":3},{"name":"jc/parsers/route.py","lines_changed":3},{"name":"jc/parsers/ss.py","lines_changed":3},{"name":"jc/parsers/stat.py","lines_changed":3},{"name":"jc/parsers/systemctl.py","lines_changed":3},{"name":"jc/parsers/systemctl_lj.py","lines_changed":3},{"name":"jc/parsers/systemctl_ls.py","lines_changed":3},{"name":"jc/parsers/systemctl_luf.py","lines_changed":3},{"name":"jc/parsers/uname.py","lines_changed":3},{"name":"jc/parsers/uptime.py","lines_changed":3},{"name":"jc/parsers/w.py","lines_changed":3}]},"message":"add __version__"},{"commit":"4de8f42664379570392552796e34324abb39fdc2","merge":"6633d92 4f11855","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #17 from kellyjonbrazil/dev"},{"commit":"4f118559356edc1da866e1bec80830e7a75a0b26","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]},"message":"update version info"},{"commit":"2b9a5fcc32f85295faa55410efcaf142c42bd167","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":4}]},"message":"update version"},{"commit":"224948d1f23e01b7cd968820529579792f862f0a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":428,"deletions":0,"files":["tests/fixtures/centos-7.7/pip-list.json","tests/fixtures/centos-7.7/pip-list.out","tests/fixtures/centos-7.7/pip-show.json","tests/fixtures/centos-7.7/pip-show.out","tests/fixtures/create_fixtures.sh","tests/fixtures/osx-10.11.6/pip-list.json","tests/fixtures/osx-10.11.6/pip-list.out","tests/fixtures/osx-10.11.6/pip-show.json","tests/fixtures/osx-10.11.6/pip-show.out","tests/fixtures/osx-10.14.6/pip-list.json","tests/fixtures/osx-10.14.6/pip-list.out","tests/fixtures/osx-10.14.6/pip-show.json","tests/fixtures/osx-10.14.6/pip-show.out","tests/fixtures/ubuntu-18.04/pip-list-legacy.json","tests/fixtures/ubuntu-18.04/pip-list-legacy.out","tests/fixtures/ubuntu-18.04/pip-list.json","tests/fixtures/ubuntu-18.04/pip-list.out","tests/fixtures/ubuntu-18.04/pip-show.json","tests/fixtures/ubuntu-18.04/pip-show.out","tests/test_pip_list.py","tests/test_pip_show.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/pip-list.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/pip-list.out","lines_changed":22},{"name":"tests/fixtures/centos-7.7/pip-show.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/pip-show.out","lines_changed":32},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/pip-list.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/pip-list.out","lines_changed":7},{"name":"tests/fixtures/osx-10.11.6/pip-show.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/pip-show.out","lines_changed":32},{"name":"tests/fixtures/osx-10.14.6/pip-list.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/pip-list.out","lines_changed":7},{"name":"tests/fixtures/osx-10.14.6/pip-show.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/pip-show.out","lines_changed":32},{"name":"tests/fixtures/ubuntu-18.04/pip-list-legacy.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/pip-list-legacy.out","lines_changed":57},{"name":"tests/fixtures/ubuntu-18.04/pip-list.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/pip-list.out","lines_changed":59},{"name":"tests/fixtures/ubuntu-18.04/pip-show.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/pip-show.out","lines_changed":29},{"name":"tests/test_pip_list.py","lines_changed":76},{"name":"tests/test_pip_show.py","lines_changed":64}]},"message":"pip list and pip show tests"},{"commit":"36f2812d5a7a94c412e098233c026d99d5205b60","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":15,"deletions":7,"files":["jc/parsers/pip_list.py"],"file_stats":[{"name":"jc/parsers/pip_list.py","lines_changed":22}]},"message":"add support for legacy output"},{"commit":"be06aa2b31c057c56229e75c7fa70052b83053ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":65,"insertions":70,"deletions":66,"files":["docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":3},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":3},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":3},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":3},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2}]},"message":"update parse() Return info"},{"commit":"41f8e3aba268ca0cd09931a04368615425c1aec8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":65,"insertions":67,"deletions":65,"files":["docs/parsers/arp.md","docs/parsers/crontab.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/du.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/pip_list.md","docs/parsers/pip_show.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/arp.py","jc/parsers/crontab.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/du.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/pip_list.py","jc/parsers/pip_show.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/du.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":3},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":2},{"name":"docs/parsers/pip_show.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":3},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":2},{"name":"jc/parsers/pip_show.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2}]},"message":"update Return info"},{"commit":"093c0df8978ace842af5258f9aff72c63c6f843d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"schema info"},{"commit":"37afc7dc8ae30342d01f3f72e73646fa60bb5294","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"updte todo and compatibility"},{"commit":"efbf3549606fc77f8c16587ff04a0c316dfe5c00","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":126,"deletions":12,"files":["README.md","docgen.sh","docs/parsers/pip_show.md","jc/parsers/pip_show.py"],"file_stats":[{"name":"README.md","lines_changed":31},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/pip_show.md","lines_changed":94},{"name":"jc/parsers/pip_show.py","lines_changed":12}]},"message":"doc update for pip show"},{"commit":"5e39fe0d8044787389d8f206f3c863d4bdf1e2ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":64,"deletions":5,"files":["jc/parsers/pip_show.py"],"file_stats":[{"name":"jc/parsers/pip_show.py","lines_changed":69}]},"message":"pip show parser working"},{"commit":"47328dc65969f149c8f027286774ff0847c18add","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"add pip-show parser"},{"commit":"addeef50ba54f536855544937a6c98135ae5cd51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":84,"deletions":0,"files":["jc/parsers/pip_show.py"],"file_stats":[{"name":"jc/parsers/pip_show.py","lines_changed":84}]},"message":"initial pip show parser add"},{"commit":"ad338cc5b50a178091c47cbea9a1db135a7fb678","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":56,"deletions":42,"files":["docs/parsers/crontab.md","jc/parsers/crontab.py"],"file_stats":[{"name":"docs/parsers/crontab.md","lines_changed":49},{"name":"jc/parsers/crontab.py","lines_changed":49}]},"message":"schema doc update"},{"commit":"202bc8201e31fd453c682265347b4e2ac2d41718","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":5,"deletions":5,"files":["README.md","docs/parsers/crontab.md","jc/parsers/crontab.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"docs/parsers/crontab.md","lines_changed":4},{"name":"jc/parsers/crontab.py","lines_changed":4}]},"message":"doc update"},{"commit":"5ff99de405fbd8f79f9c2e301ac27184e0aba6fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add argument to parser info"},{"commit":"86ebe2cf9c6b336eacf217393c3c3c324ee29ec0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":205,"deletions":1,"files":["README.md","docgen.sh","docs/parsers/crontab.md","docs/parsers/pip_list.md","jc/cli.py","jc/parsers/pip_list.py"],"file_stats":[{"name":"README.md","lines_changed":21},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/crontab.md","lines_changed":2},{"name":"docs/parsers/pip_list.md","lines_changed":75},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/pip_list.py","lines_changed":105}]},"message":"initial add of pip list parser"},{"commit":"facf0b399c608d33f6a454ee24fd49fc62471742","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":4}]},"message":"add osx to campatible"},{"commit":"33db7b0bcb0f24979cad6e173737d75c8ed301af","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":57,"deletions":0,"files":["tests/fixtures/centos-7.7/crontab.json","tests/fixtures/ubuntu-18.04/crontab.json","tests/fixtures/ubuntu-18.04/crontab.out","tests/test_crontab.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/crontab.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/crontab.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/crontab.out","lines_changed":15},{"name":"tests/test_crontab.py","lines_changed":40}]},"message":"add crontab tests"},{"commit":"663d07bca1181024d9d08b940237c52197c91729","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":191,"deletions":0,"files":["docgen.sh","docs/parsers/crontab.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/crontab.md","lines_changed":190}]},"message":"add crontab"},{"commit":"ba04e4997fcb28adbee446f633c121f1585b9f2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":113,"deletions":4,"files":["jc/parsers/crontab.py"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":117}]},"message":"update docs"},{"commit":"c4fee1b658c91afa2abdd746af6c1b4697c44b35","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":72,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":73}]},"message":"add crontab parser"},{"commit":"99b92a15bbebc5568f4455f388f945613c4a2759","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":37,"deletions":14,"files":["jc/parsers/crontab.py","tests/fixtures/centos-7.7/crontab.out"],"file_stats":[{"name":"jc/parsers/crontab.py","lines_changed":40},{"name":"tests/fixtures/centos-7.7/crontab.out","lines_changed":11}]},"message":"support shortcut schedules"},{"commit":"b076ab5b57a6a59db096485e5ff4eb9f91bae8be","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":177,"deletions":0,"files":["jc/cli.py","jc/parsers/crontab.py","tests/fixtures/centos-7.7/crontab.out"],"file_stats":[{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/crontab.py","lines_changed":132},{"name":"tests/fixtures/centos-7.7/crontab.out","lines_changed":43}]},"message":"initial crontab parser"},{"commit":"687759f75d0e80e81746a84f051e55cfdc870447","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":31,"deletions":31,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":62}]},"message":"alphabetize du entry"},{"commit":"9eaac7f3af0e0851c2d091d94c9920faa8a0fdfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":32,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":32}]},"message":"add du"},{"commit":"4c24e00cfc0748d98e220d08820b88fc156148db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":21738,"deletions":9,"files":["tests/fixtures/osx-10.11.6/du.json","tests/fixtures/osx-10.11.6/du.out","tests/fixtures/ubuntu-18.04/du.json","tests/fixtures/ubuntu-18.04/du.out","tests/test_du.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/du.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/du.out","lines_changed":2471},{"name":"tests/fixtures/ubuntu-18.04/du.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/du.out","lines_changed":19244},{"name":"tests/test_du.py","lines_changed":30}]},"message":"add osx-11 and ubuntu tests"},{"commit":"beb17011b03e720078b0752e79a6a0f6123d1d3c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":131,"deletions":2,"files":["changelog.txt","docgen.sh","docs/parsers/du.md","docs/parsers/uname.md","tests/fixtures/osx-10.14.6/du.json","tests/test_du.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/du.md","lines_changed":115},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/du.json","lines_changed":1},{"name":"tests/test_du.py","lines_changed":12}]},"message":"du tests and docs"},{"commit":"e882bf55bcd1d3526423ed1ccc61fb4819395cce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":8755,"deletions":0,"files":["changelog.txt","jc/cli.py","jc/parsers/du.py","tests/fixtures/centos-7.7/du.json","tests/fixtures/centos-7.7/du.out","tests/fixtures/osx-10.14.6/du.out","tests/test_du.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/cli.py","lines_changed":2},{"name":"jc/parsers/du.py","lines_changed":148},{"name":"tests/fixtures/centos-7.7/du.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/du.out","lines_changed":5199},{"name":"tests/fixtures/osx-10.14.6/du.out","lines_changed":3364},{"name":"tests/test_du.py","lines_changed":40}]},"message":"initial add du parser"},{"commit":"3a3016adb6d5b9e35f8a39908bfcdc65997cc5c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add parser_count to about"},{"commit":"1e8b68153ade8a1e3d2b4db36e0c402bbc887079","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":27,"deletions":1,"files":["tests/fixtures/osx-10.11.6/uname-a.json","tests/fixtures/osx-10.14.6/uname-a.json","tests/fixtures/osx-10.14.6/uname-a.out","tests/test_uname.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/uname-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/uname-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/uname-a.out","lines_changed":2},{"name":"tests/test_uname.py","lines_changed":24}]},"message":"add osx uname tests"},{"commit":"9335cf65fbb87e3a0a7da0c4e9bcd251cb829de2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"add uname osx support"},{"commit":"83f35256aee71f2619ddf880e2b8f2d6c63280bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":30,"deletions":19,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":49}]},"message":"add OSX support"},{"commit":"428333394817e4461a4eb095f4d6d128305a5f98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":2}]},"message":"version bump"},{"commit":"b8f902796b7fb23a41355b23f7ce235bd18edc58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":4,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]},"message":"shorten changelog"},{"commit":"8f99ab295cd15718b98781707def97539ad41920","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4}]},"message":"info update"},{"commit":"882310e268e2022f0cd6da75f80f5356529cd05c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add name to about parser info"},{"commit":"56bce9521409d1850f75a3ae2be1363e765dd9dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":10,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":16}]},"message":"about code cleanup"},{"commit":"c13ecbec2952c5d6765397f645e90653a4fd9d05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":28,"insertions":2,"deletions":28,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":1},{"name":"jc/parsers/env.py","lines_changed":1},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":1},{"name":"jc/parsers/fstab.py","lines_changed":1},{"name":"jc/parsers/history.py","lines_changed":1},{"name":"jc/parsers/hosts.py","lines_changed":1},{"name":"jc/parsers/iptables.py","lines_changed":1},{"name":"jc/parsers/jobs.py","lines_changed":1},{"name":"jc/parsers/ls.py","lines_changed":1},{"name":"jc/parsers/lsblk.py","lines_changed":1},{"name":"jc/parsers/lsmod.py","lines_changed":1},{"name":"jc/parsers/lsof.py","lines_changed":1},{"name":"jc/parsers/mount.py","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":1},{"name":"jc/parsers/ps.py","lines_changed":1},{"name":"jc/parsers/route.py","lines_changed":1},{"name":"jc/parsers/ss.py","lines_changed":1},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":1},{"name":"jc/parsers/systemctl_lj.py","lines_changed":1},{"name":"jc/parsers/systemctl_ls.py","lines_changed":1},{"name":"jc/parsers/systemctl_luf.py","lines_changed":1},{"name":"jc/parsers/uname.py","lines_changed":1},{"name":"jc/parsers/uptime.py","lines_changed":1},{"name":"jc/parsers/w.py","lines_changed":1}]},"message":"clean up parser info"},{"commit":"0ffaaa6e73649d1f657af569ac0b912f166e8493","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":9,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":16}]},"message":"clean up about code"},{"commit":"75eff3adea097157c005b2201e353a741241ce8b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":8}]},"message":"remove whitespace"},{"commit":"bf5f80476cff642ae672187ea59d40bdb602101e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":6}]},"message":"use real parser name in error message"},{"commit":"9aaf0fbb2f838c0af1e7f18fdb19104f9f5d3d39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":29,"insertions":146,"deletions":1,"files":["changelog.txt","docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"docs/parsers/arp.md","lines_changed":11},{"name":"docs/parsers/df.md","lines_changed":5},{"name":"docs/parsers/dig.md","lines_changed":5},{"name":"docs/parsers/env.md","lines_changed":5},{"name":"docs/parsers/free.md","lines_changed":5},{"name":"docs/parsers/fstab.md","lines_changed":5},{"name":"docs/parsers/history.md","lines_changed":5},{"name":"docs/parsers/hosts.md","lines_changed":5},{"name":"docs/parsers/ifconfig.md","lines_changed":5},{"name":"docs/parsers/iptables.md","lines_changed":5},{"name":"docs/parsers/jobs.md","lines_changed":5},{"name":"docs/parsers/ls.md","lines_changed":5},{"name":"docs/parsers/lsblk.md","lines_changed":5},{"name":"docs/parsers/lsmod.md","lines_changed":5},{"name":"docs/parsers/lsof.md","lines_changed":5},{"name":"docs/parsers/mount.md","lines_changed":5},{"name":"docs/parsers/netstat.md","lines_changed":5},{"name":"docs/parsers/ps.md","lines_changed":5},{"name":"docs/parsers/route.md","lines_changed":5},{"name":"docs/parsers/ss.md","lines_changed":5},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":5},{"name":"docs/parsers/systemctl_lj.md","lines_changed":5},{"name":"docs/parsers/systemctl_ls.md","lines_changed":5},{"name":"docs/parsers/systemctl_luf.md","lines_changed":5},{"name":"docs/parsers/uname.md","lines_changed":5},{"name":"docs/parsers/uptime.md","lines_changed":5},{"name":"docs/parsers/w.md","lines_changed":5}]},"message":"doc updates"},{"commit":"8f01ef79532743573632d716ceea41d5ea752c88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add -a option info"},{"commit":"da1d087452da02631296b1b3dc9ee10d4b7f764b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":1}]},"message":"add parser version info"},{"commit":"e16bc7e882a27a1d5a4bd7cf9972208e6997f96f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":29,"insertions":82,"deletions":17,"files":["jc/cli.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":71},{"name":"jc/parsers/arp.py","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":1},{"name":"jc/parsers/env.py","lines_changed":1},{"name":"jc/parsers/foo.py","lines_changed":1},{"name":"jc/parsers/free.py","lines_changed":1},{"name":"jc/parsers/fstab.py","lines_changed":1},{"name":"jc/parsers/history.py","lines_changed":1},{"name":"jc/parsers/hosts.py","lines_changed":1},{"name":"jc/parsers/iptables.py","lines_changed":1},{"name":"jc/parsers/jobs.py","lines_changed":1},{"name":"jc/parsers/ls.py","lines_changed":1},{"name":"jc/parsers/lsblk.py","lines_changed":1},{"name":"jc/parsers/lsmod.py","lines_changed":1},{"name":"jc/parsers/lsof.py","lines_changed":1},{"name":"jc/parsers/mount.py","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":1},{"name":"jc/parsers/ps.py","lines_changed":1},{"name":"jc/parsers/route.py","lines_changed":1},{"name":"jc/parsers/ss.py","lines_changed":1},{"name":"jc/parsers/stat.py","lines_changed":1},{"name":"jc/parsers/systemctl.py","lines_changed":1},{"name":"jc/parsers/systemctl_lj.py","lines_changed":1},{"name":"jc/parsers/systemctl_ls.py","lines_changed":1},{"name":"jc/parsers/systemctl_luf.py","lines_changed":1},{"name":"jc/parsers/uname.py","lines_changed":1},{"name":"jc/parsers/uptime.py","lines_changed":1},{"name":"jc/parsers/w.py","lines_changed":1}]},"message":"add about information to parsers"},{"commit":"fe9bdd4811216257c05b16d6d61897929669d434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":31,"insertions":384,"deletions":219,"files":["changelog.txt","jc/cli.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/cli.py","lines_changed":127},{"name":"jc/parsers/arp.py","lines_changed":25},{"name":"jc/parsers/df.py","lines_changed":15},{"name":"jc/parsers/dig.py","lines_changed":15},{"name":"jc/parsers/env.py","lines_changed":16},{"name":"jc/parsers/foo.py","lines_changed":16},{"name":"jc/parsers/free.py","lines_changed":16},{"name":"jc/parsers/fstab.py","lines_changed":16},{"name":"jc/parsers/history.py","lines_changed":16},{"name":"jc/parsers/hosts.py","lines_changed":16},{"name":"jc/parsers/ifconfig.py","lines_changed":17},{"name":"jc/parsers/iptables.py","lines_changed":16},{"name":"jc/parsers/jobs.py","lines_changed":16},{"name":"jc/parsers/ls.py","lines_changed":16},{"name":"jc/parsers/lsblk.py","lines_changed":17},{"name":"jc/parsers/lsmod.py","lines_changed":16},{"name":"jc/parsers/lsof.py","lines_changed":16},{"name":"jc/parsers/mount.py","lines_changed":16},{"name":"jc/parsers/netstat.py","lines_changed":16},{"name":"jc/parsers/ps.py","lines_changed":16},{"name":"jc/parsers/route.py","lines_changed":16},{"name":"jc/parsers/ss.py","lines_changed":16},{"name":"jc/parsers/stat.py","lines_changed":15},{"name":"jc/parsers/systemctl.py","lines_changed":16},{"name":"jc/parsers/systemctl_lj.py","lines_changed":16},{"name":"jc/parsers/systemctl_ls.py","lines_changed":16},{"name":"jc/parsers/systemctl_luf.py","lines_changed":16},{"name":"jc/parsers/uname.py","lines_changed":16},{"name":"jc/parsers/uptime.py","lines_changed":16},{"name":"jc/parsers/w.py","lines_changed":16}]},"message":"add info class"},{"commit":"17b6f3f6d6c398a52166849088a793d0e3b328b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":26,"deletions":0,"files":["tests/fixtures/osx-10.11.6/uptime.json","tests/fixtures/osx-10.14.6/uptime.json","tests/test_uptime.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/uptime.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/uptime.json","lines_changed":1},{"name":"tests/test_uptime.py","lines_changed":24}]},"message":"add osx tests"},{"commit":"90a6baf0ee3b8b27476badada4e590e22144f810","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":52,"deletions":0,"files":["tests/fixtures/osx-10.11.6/ps-axu.json","tests/fixtures/osx-10.11.6/ps-ef.json","tests/fixtures/osx-10.11.6/w.json","tests/fixtures/osx-10.14.6/w.json","tests/test_ps.py","tests/test_w.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/ps-axu.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ps-ef.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/w.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/w.json","lines_changed":1},{"name":"tests/test_ps.py","lines_changed":24},{"name":"tests/test_w.py","lines_changed":24}]},"message":"add osx tests"},{"commit":"f0e73d0e72d540292f41fff51652932c4e8b0315","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":444,"deletions":0,"files":["tests/fixtures/osx-10.11.6/ps-axu.out","tests/fixtures/osx-10.11.6/ps-ef.out","tests/fixtures/osx-10.11.6/uname-a.out","tests/fixtures/osx-10.11.6/uptime.out","tests/fixtures/osx-10.11.6/w.out","tests/fixtures/osx-10.14.6/uname-a.out","tests/fixtures/osx-10.14.6/uptime.out","tests/fixtures/osx-10.14.6/w.out"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/ps-axu.out","lines_changed":211},{"name":"tests/fixtures/osx-10.11.6/ps-ef.out","lines_changed":211},{"name":"tests/fixtures/osx-10.11.6/uname-a.out","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/uptime.out","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/w.out","lines_changed":8},{"name":"tests/fixtures/osx-10.14.6/uname-a.out","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/uptime.out","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/w.out","lines_changed":10}]},"message":"add osx tests"},{"commit":"a762882f1ccea6789ce7813b313f3242175b5bd6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":2,"deletions":88,"files":["tests/fixtures/osx-10.14.6/ps-axu.json","tests/fixtures/osx-10.14.6/ps-axu.out","tests/fixtures/osx-10.14.6/ps-ef.json","tests/fixtures/osx-10.14.6/ps-ef.out"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ps-axu.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ps-axu.out","lines_changed":43},{"name":"tests/fixtures/osx-10.14.6/ps-ef.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ps-ef.out","lines_changed":43}]},"message":"fixture updates"},{"commit":"4c1bc5923658bf463805ea33ec8d170a817909ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":4,"deletions":3,"files":["docs/parsers/mount.md","docs/parsers/ps.md","docs/parsers/stat.md"],"file_stats":[{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":3},{"name":"docs/parsers/stat.md","lines_changed":2}]},"message":"doc updates"},{"commit":"f2962083f80503f82c3eddf470674c776e616b32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":93,"deletions":17,"files":["changelog.txt","jc/parsers/mount.py","tests/fixtures/osx-10.14.6/mount.json","tests/fixtures/osx-10.14.6/mount.out","tests/fixtures/osx-10.14.6/mount2.json","tests/fixtures/osx-10.14.6/mount2.out","tests/test_mount.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"jc/parsers/mount.py","lines_changed":68},{"name":"tests/fixtures/osx-10.14.6/mount.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/mount.out","lines_changed":6},{"name":"tests/fixtures/osx-10.14.6/mount2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/mount2.out","lines_changed":7},{"name":"tests/test_mount.py","lines_changed":24}]},"message":"add osx support for mount parser"},{"commit":"a0b22a5bcfa0777895243088b2c0f3bb5b758775","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":8}]},"message":"help text formatting"},{"commit":"dcf393354cd57683aaeecbed7b884d19b0fe94d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":2}]},"message":"doc fix"},{"commit":"5f771656e3fdd703d449b2817faa4faeff1cd879","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":6,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":10}]},"message":"use universal parser"},{"commit":"f376aab79328a211a127f4f818e7007232f1fae3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":0,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":3}]},"message":"doc update"},{"commit":"3c96464217a740571e16c74ad41c1d92f7585547","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":886,"deletions":13,"files":["jc/parsers/ps.py","tests/fixtures/osx-10.14.6/ps-axu.json","tests/fixtures/osx-10.14.6/ps-axu.out","tests/fixtures/osx-10.14.6/ps-ef.json","tests/fixtures/osx-10.14.6/ps-ef.out","tests/test_ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":31},{"name":"tests/fixtures/osx-10.14.6/ps-axu.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ps-axu.out","lines_changed":421},{"name":"tests/fixtures/osx-10.14.6/ps-ef.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ps-ef.out","lines_changed":421},{"name":"tests/test_ps.py","lines_changed":24}]},"message":"osx fixes and tests"},{"commit":"c9892833a16bb63f78537717be65670eb65a87b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/mount.py"],"file_stats":[{"name":"jc/parsers/mount.py","lines_changed":2}]},"message":"formatting change"},{"commit":"127c98affc7b122f0ced13852850214b9e07677e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update"},{"commit":"8687a772f53ecaf1a20464429060b94bbf660fe7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":8}]},"message":"use universal parser"},{"commit":"b1162b14d42643fd53dbbe3f89ba042f030d9254","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":6,"files":["jc/parsers/lsmod.py"],"file_stats":[{"name":"jc/parsers/lsmod.py","lines_changed":9}]},"message":"use universal parser"},{"commit":"8a8ee3570733c0c06b8cf53eb005e53ac2f9170f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":60,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":68}]},"message":"use universal parser"},{"commit":"5e109a3665cf0c286ac9dcbe2a452348a14b90ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["tests/fixtures/create_fixtures.sh"],"file_stats":[{"name":"tests/fixtures/create_fixtures.sh","lines_changed":2}]},"message":"add du"},{"commit":"11db478430515ef3e1020482792f23d1c40ca32b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"update changelog"},{"commit":"a85377014d9f93fcb9840715129b0e09d48d8584","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":11,"files":["jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/free.py","lines_changed":16}]},"message":"use universal parser"},{"commit":"3aea86234d33160f5b3139cbfc2f4f032f655f3a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":70,"deletions":61,"files":["tests/fixtures/osx-10.11.6/ls-al.json","tests/fixtures/osx-10.11.6/ls-al.out","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.11.6/ls-alh.out","tests/fixtures/osx-10.11.6/ls.json","tests/fixtures/osx-10.11.6/ls.out"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/ls-al.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ls-al.out","lines_changed":61},{"name":"tests/fixtures/osx-10.11.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ls-alh.out","lines_changed":61},{"name":"tests/fixtures/osx-10.11.6/ls.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ls.out","lines_changed":3}]},"message":"fix osx-10.11.6 tests"},{"commit":"916ec6ed6b858a8a496e4026b9bab5505abca2ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":13,"insertions":193,"deletions":61,"files":["tests/fixtures/osx-10.11.6/ls-al.json","tests/fixtures/osx-10.11.6/ls-al.out","tests/fixtures/osx-10.11.6/ls-alh.json","tests/fixtures/osx-10.11.6/ls-alh.out","tests/fixtures/osx-10.11.6/ls.json","tests/fixtures/osx-10.11.6/ls.out","tests/fixtures/osx-10.14.6/ls-al.json","tests/fixtures/osx-10.14.6/ls-al.out","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.out","tests/fixtures/osx-10.14.6/ls.json","tests/fixtures/osx-10.14.6/ls.out","tests/test_ls.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/ls-al.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ls-al.out","lines_changed":29},{"name":"tests/fixtures/osx-10.11.6/ls-alh.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ls-alh.out","lines_changed":29},{"name":"tests/fixtures/osx-10.11.6/ls.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ls.out","lines_changed":18},{"name":"tests/fixtures/osx-10.14.6/ls-al.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-al.out","lines_changed":64},{"name":"tests/fixtures/osx-10.14.6/ls-alh.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls-alh.out","lines_changed":64},{"name":"tests/fixtures/osx-10.14.6/ls.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ls.out","lines_changed":5},{"name":"tests/test_ls.py","lines_changed":36}]},"message":"fix osx ls tests"},{"commit":"9dca6ba5393d8840ad7fc9509273715a71955bd1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":55,"insertions":120,"deletions":6,"files":["docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/fstab.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":8},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":3},{"name":"docs/parsers/stat.md","lines_changed":2},{"name":"docs/parsers/systemctl.md","lines_changed":2},{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"docs/parsers/systemctl_luf.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":3},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/fstab.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":8},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":3},{"name":"jc/parsers/stat.py","lines_changed":2},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2},{"name":"jc/parsers/systemctl_luf.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":3},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2}]},"message":"doc formatting change"},{"commit":"0ebb89f561e1ced2e7f61ae19290e176c8a98bf2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["docs/parsers/arp.md"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2}]},"message":"doc update"},{"commit":"e237867e242211ba37206911ebf1b35c97b417fd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":2}]},"message":"doc formatting"},{"commit":"78fa44fd9ac9790313de6f461eb46d9b8d6159d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":24,"insertions":75,"deletions":3,"files":["docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/stat.md","docs/parsers/systemctl.md","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/stat.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/netstat.md","lines_changed":3},{"name":"docs/parsers/ps.md","lines_changed":3},{"name":"docs/parsers/route.md","lines_changed":3},{"name":"docs/parsers/ss.md","lines_changed":3},{"name":"docs/parsers/stat.md","lines_changed":5},{"name":"docs/parsers/systemctl.md","lines_changed":3},{"name":"docs/parsers/systemctl_lj.md","lines_changed":3},{"name":"docs/parsers/systemctl_ls.md","lines_changed":3},{"name":"docs/parsers/systemctl_luf.md","lines_changed":3},{"name":"docs/parsers/uname.md","lines_changed":3},{"name":"docs/parsers/uptime.md","lines_changed":3},{"name":"docs/parsers/w.md","lines_changed":3},{"name":"jc/parsers/netstat.py","lines_changed":3},{"name":"jc/parsers/ps.py","lines_changed":3},{"name":"jc/parsers/route.py","lines_changed":5},{"name":"jc/parsers/ss.py","lines_changed":3},{"name":"jc/parsers/stat.py","lines_changed":5},{"name":"jc/parsers/systemctl.py","lines_changed":3},{"name":"jc/parsers/systemctl_lj.py","lines_changed":3},{"name":"jc/parsers/systemctl_ls.py","lines_changed":3},{"name":"jc/parsers/systemctl_luf.py","lines_changed":3},{"name":"jc/parsers/uname.py","lines_changed":3},{"name":"jc/parsers/uptime.py","lines_changed":3},{"name":"jc/parsers/w.py","lines_changed":3}]},"message":"add compatibility to docs"},{"commit":"d615fa3b933ccd284bd8ee92baf5dfa6264507c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":30,"insertions":91,"deletions":1,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/fstab.md","docs/parsers/history.md","docs/parsers/hosts.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/fstab.py","jc/parsers/history.py","jc/parsers/hosts.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":3},{"name":"docs/parsers/df.md","lines_changed":3},{"name":"docs/parsers/dig.md","lines_changed":3},{"name":"docs/parsers/env.md","lines_changed":3},{"name":"docs/parsers/free.md","lines_changed":3},{"name":"docs/parsers/fstab.md","lines_changed":3},{"name":"docs/parsers/history.md","lines_changed":3},{"name":"docs/parsers/hosts.md","lines_changed":3},{"name":"docs/parsers/ifconfig.md","lines_changed":3},{"name":"docs/parsers/iptables.md","lines_changed":3},{"name":"docs/parsers/jobs.md","lines_changed":3},{"name":"docs/parsers/ls.md","lines_changed":3},{"name":"docs/parsers/lsblk.md","lines_changed":3},{"name":"docs/parsers/lsmod.md","lines_changed":3},{"name":"docs/parsers/lsof.md","lines_changed":3},{"name":"docs/parsers/mount.md","lines_changed":3},{"name":"jc/parsers/env.py","lines_changed":3},{"name":"jc/parsers/foo.py","lines_changed":3},{"name":"jc/parsers/free.py","lines_changed":3},{"name":"jc/parsers/fstab.py","lines_changed":3},{"name":"jc/parsers/history.py","lines_changed":3},{"name":"jc/parsers/hosts.py","lines_changed":3},{"name":"jc/parsers/ifconfig.py","lines_changed":3},{"name":"jc/parsers/iptables.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":3},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"jc/parsers/lsblk.py","lines_changed":3},{"name":"jc/parsers/lsmod.py","lines_changed":3},{"name":"jc/parsers/lsof.py","lines_changed":3},{"name":"jc/parsers/mount.py","lines_changed":3}]},"message":"add compatibility to docs"},{"commit":"ce134dc332dd9175e0d1823a4959bed427a3ddce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":115,"deletions":0,"files":["tests/fixtures/osx-10.14.6/ls-al.json","tests/fixtures/osx-10.14.6/ls-al.out","tests/fixtures/osx-10.14.6/ls-alh.json","tests/fixtures/osx-10.14.6/ls-alh.out","tests/fixtures/osx-10.14.6/ls.json","tests/fixtures/osx-10.14.6/ls.out","tests/test_ls.py"],"file_stats":[{"name":"tests/fixtures/osx-10.14.6/ls-al.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-al.out","lines_changed":29},{"name":"tests/fixtures/osx-10.14.6/ls-alh.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls-alh.out","lines_changed":29},{"name":"tests/fixtures/osx-10.14.6/ls.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ls.out","lines_changed":18},{"name":"tests/test_ls.py","lines_changed":36}]},"message":"Add OSX tests for ls"},{"commit":"a56e4dc752a01635fbd9fc31e21d390bbd629084","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":28,"deletions":3,"files":["changelog.txt","jc/parsers/arp.py","jc/parsers/universal.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/arp.py","lines_changed":6},{"name":"jc/parsers/universal.py","lines_changed":24}]},"message":"use universal simple table parser"},{"commit":"d221b4aa29e80dda2b591059f4d64c416bff0a17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update"},{"commit":"d2cba6ad2f1f1cd35aa174239584a0291abb8e37","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":9,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/df.py","lines_changed":3},{"name":"jc/parsers/dig.py","lines_changed":3}]},"message":"add compatibility info"},{"commit":"84b3c30b525ddf1f74eb7fd833050a0ec69621dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":254,"deletions":2,"files":["tests/fixtures/osx-10.11.6/df-h.json","tests/fixtures/osx-10.11.6/df-h.out","tests/fixtures/osx-10.11.6/df.json","tests/fixtures/osx-10.11.6/df.out","tests/fixtures/osx-10.11.6/dig-aaaa.json","tests/fixtures/osx-10.11.6/dig-aaaa.out","tests/fixtures/osx-10.11.6/dig-x.json","tests/fixtures/osx-10.11.6/dig-x.out","tests/fixtures/osx-10.11.6/dig.json","tests/fixtures/osx-10.11.6/dig.out","tests/fixtures/osx-10.14.6/df-h.json","tests/fixtures/osx-10.14.6/df-h.out","tests/fixtures/osx-10.14.6/df.json","tests/fixtures/osx-10.14.6/df.out","tests/fixtures/osx-10.14.6/dig-aaaa.json","tests/fixtures/osx-10.14.6/dig-aaaa.out","tests/fixtures/osx-10.14.6/dig-x.json","tests/fixtures/osx-10.14.6/dig-x.out","tests/fixtures/osx-10.14.6/dig.json","tests/fixtures/osx-10.14.6/dig.out","tests/test_df.py"],"file_stats":[{"name":"tests/fixtures/osx-10.11.6/df-h.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/df-h.out","lines_changed":7},{"name":"tests/fixtures/osx-10.11.6/df.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/df.out","lines_changed":7},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/dig-aaaa.out","lines_changed":20},{"name":"tests/fixtures/osx-10.11.6/dig-x.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/dig-x.out","lines_changed":20},{"name":"tests/fixtures/osx-10.11.6/dig.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/dig.out","lines_changed":41},{"name":"tests/fixtures/osx-10.14.6/df-h.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/df-h.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/df.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/df.out","lines_changed":9},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig-aaaa.out","lines_changed":20},{"name":"tests/fixtures/osx-10.14.6/dig-x.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig-x.out","lines_changed":20},{"name":"tests/fixtures/osx-10.14.6/dig.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/dig.out","lines_changed":41},{"name":"tests/test_df.py","lines_changed":52}]},"message":"add osx tests"},{"commit":"68eeec19a812b735627763bb7d7e2a58b72f7504","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":30,"deletions":25,"files":["README.md","docs/parsers/df.md","jc/parsers/df.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docs/parsers/df.md","lines_changed":31},{"name":"jc/parsers/df.py","lines_changed":20}]},"message":"doc update"},{"commit":"c6d1528a2ed302ea82828b733a98db415be83708","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":19,"deletions":8,"files":["jc/parsers/df.py","jc/parsers/universal.py","tests/fixtures/centos-7.7/df.json","tests/fixtures/ubuntu-18.04/df.json"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":21},{"name":"jc/parsers/universal.py","lines_changed":2},{"name":"tests/fixtures/centos-7.7/df.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/df.json","lines_changed":2}]},"message":"use _ instead of -"},{"commit":"50a6b256b8a0936299f562c208ede6187feeb9a7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":83,"deletions":0,"files":["jc/parsers/universal.py"],"file_stats":[{"name":"jc/parsers/universal.py","lines_changed":83}]},"message":"new universal parsers to limit code duplication"},{"commit":"bbba1fe477014d0b7f370ce46ed821121be81a8e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":38,"deletions":19,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":57}]},"message":"update df to use universal sparse table parser for osx compatibility"},{"commit":"46b827da6b438be73fab168c3f05298483b141e4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":75,"deletions":4,"files":["changelog.txt","jc/parsers/arp.py","tests/fixtures/osx-10.11.6/arp-a.json","tests/fixtures/osx-10.11.6/arp-a.out","tests/fixtures/osx-10.14.6/arp-a.json","tests/fixtures/osx-10.14.6/arp-a.out","tests/test_arp.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/arp.py","lines_changed":27},{"name":"tests/fixtures/osx-10.11.6/arp-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/arp-a.out","lines_changed":13},{"name":"tests/fixtures/osx-10.14.6/arp-a.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/arp-a.out","lines_changed":12},{"name":"tests/test_arp.py","lines_changed":24}]},"message":"add osx compatibility"},{"commit":"5e8c28a30a283b6ef525e9e78d3ef2a0e1526927","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2}]},"message":"comment fix"},{"commit":"e5d39031645ac897e0c0297f514ee62efe02f5f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":38,"deletions":17,"files":["docs/parsers/ifconfig.md"],"file_stats":[{"name":"docs/parsers/ifconfig.md","lines_changed":55}]},"message":"update ifconfig doc"},{"commit":"23975c9c9e1dd9d3e9fd7c05d231a86d646be048","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":132,"deletions":45,"files":["README.md","changelog.txt","jc/parsers/ifconfig.py","tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig2.json","tests/fixtures/osx-10.14.6/ifconfig.json","tests/fixtures/osx-10.14.6/ifconfig2.json","tests/fixtures/ubuntu-18.04/ifconfig.json","tests/test_ifconfig.py"],"file_stats":[{"name":"README.md","lines_changed":35},{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":80},{"name":"tests/fixtures/centos-7.7/ifconfig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ifconfig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ifconfig2.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ifconfig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.14.6/ifconfig2.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ifconfig.json","lines_changed":2},{"name":"tests/test_ifconfig.py","lines_changed":48}]},"message":"fixup osx subnet mask and convert state to an array"},{"commit":"1e0dab8355e6fcb0ecde85270d4daac6ad93875b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":272,"deletions":2,"files":["tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.json","tests/fixtures/osx-10.11.6/ifconfig.out","tests/fixtures/osx-10.11.6/ifconfig2.json","tests/fixtures/osx-10.11.6/ifconfig2.out","tests/fixtures/osx-10.14.6/ifconfig.json","tests/fixtures/osx-10.14.6/ifconfig.out","tests/fixtures/osx-10.14.6/ifconfig2.json","tests/fixtures/osx-10.14.6/ifconfig2.out","tests/fixtures/ubuntu-18.04/ifconfig.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ifconfig.json","lines_changed":2},{"name":"tests/fixtures/osx-10.11.6/ifconfig.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ifconfig.out","lines_changed":40},{"name":"tests/fixtures/osx-10.11.6/ifconfig2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.11.6/ifconfig2.out","lines_changed":40},{"name":"tests/fixtures/osx-10.14.6/ifconfig.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ifconfig.out","lines_changed":91},{"name":"tests/fixtures/osx-10.14.6/ifconfig2.json","lines_changed":1},{"name":"tests/fixtures/osx-10.14.6/ifconfig2.out","lines_changed":95},{"name":"tests/fixtures/ubuntu-18.04/ifconfig.json","lines_changed":2}]},"message":"ifconfig fixture updates"},{"commit":"5f4c10ffd5a9cbe4e5e3d2b9adc34f36492eaf46","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"changelog.txt","lines_changed":4}]},"message":"doc update"},{"commit":"6f3d2b4b566b963fbf38572c587e8bd4e18881dc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"require ifconfig-parser v0.0.5 for mac and bytes support"},{"commit":"fea8ace8446b64abe9e61a028951bc4e6df9f9c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":20,"deletions":6,"files":["README.md","jc/parsers/ifconfig.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"jc/parsers/ifconfig.py","lines_changed":22}]},"message":"add OSX compatibility"},{"commit":"6633d9262c936217d8e90e64505c66b006cdab56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["_config.yml"],"file_stats":[{"name":"_config.yml","lines_changed":1}]},"message":"Set theme jekyll-theme-cayman"},{"commit":"7d54137140e6d0515bc23c131a097af5c70c3379","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"link update"},{"commit":"2fcda6f2480ae6bd5428a0147c19f9af527391b8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"add motivation to readme"},{"commit":"9c1b8bacf9a59a86feb2a91eb44919e800491d1e","merge":"d192745 4867655","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #16 from kellyjonbrazil/dev"},{"commit":"4867655eb297b1da7a55e0d3a24c7ed7c8af55c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":172,"deletions":0,"files":[".../centos-7.7/iptables-filter-line-numbers.json",".../centos-7.7/iptables-filter-line-numbers.out","tests/fixtures/create_fixtures.sh",".../ubuntu-18.04/iptables-filter-line-numbers.json",".../ubuntu-18.04/iptables-filter-line-numbers.out","tests/test_iptables.py"],"file_stats":[{"name":".../centos-7.7/iptables-filter-line-numbers.json","lines_changed":1},{"name":".../centos-7.7/iptables-filter-line-numbers.out","lines_changed":128},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":1},{"name":".../ubuntu-18.04/iptables-filter-line-numbers.json","lines_changed":1},{"name":".../ubuntu-18.04/iptables-filter-line-numbers.out","lines_changed":17},{"name":"tests/test_iptables.py","lines_changed":24}]},"message":"add line-numbers tests"},{"commit":"47410d1a95406b0960aac705e7cfe925fea3172c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"5fa49f5e672fc6f8dc18fb4b1761c98b81362649","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update"},{"commit":"36c53827fab6ac38c0010250ec387db40fdeecfc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":19,"insertions":1316,"deletions":308,"files":["tests/fixtures/centos-7.7/systemctl-ls.json","tests/fixtures/centos-7.7/systemctl-ls.out","tests/fixtures/centos-7.7/systemctl-luf.json","tests/fixtures/centos-7.7/systemctl-luf.out","tests/fixtures/centos-7.7/systemctl.json","tests/fixtures/centos-7.7/systemctl.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/systemctl-lj.json","tests/fixtures/ubuntu-18.04/systemctl-lj.out","tests/fixtures/ubuntu-18.04/systemctl-ls.json","tests/fixtures/ubuntu-18.04/systemctl-ls.out","tests/fixtures/ubuntu-18.04/systemctl-luf.json","tests/fixtures/ubuntu-18.04/systemctl-luf.out","tests/fixtures/ubuntu-18.04/systemctl.json","tests/fixtures/ubuntu-18.04/systemctl.out","tests/test_systemctl.py","tests/test_systemctl_lj.py","tests/test_systemctl_ls.py","tests/test_systemctl_luf.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/systemctl-ls.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/systemctl-ls.out","lines_changed":17},{"name":"tests/fixtures/centos-7.7/systemctl-luf.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/systemctl-luf.out","lines_changed":247},{"name":"tests/fixtures/centos-7.7/systemctl.json","lines_changed":2},{"name":"tests/fixtures/centos-7.7/systemctl.out","lines_changed":334},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":8},{"name":"tests/fixtures/ubuntu-18.04/systemctl-lj.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/systemctl-lj.out","lines_changed":6},{"name":"tests/fixtures/ubuntu-18.04/systemctl-ls.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/systemctl-ls.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-18.04/systemctl-luf.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/systemctl-luf.out","lines_changed":324},{"name":"tests/fixtures/ubuntu-18.04/systemctl.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/systemctl.out","lines_changed":528},{"name":"tests/test_systemctl.py","lines_changed":4},{"name":"tests/test_systemctl_lj.py","lines_changed":40},{"name":"tests/test_systemctl_ls.py","lines_changed":40},{"name":"tests/test_systemctl_luf.py","lines_changed":40}]},"message":"add systemctl tests"},{"commit":"51631aef5b1b6fdeff4ab543510a9f9e15a0c2c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":358,"deletions":0,"files":["tests/fixtures/centos-7.7/systemctl.json","tests/fixtures/centos-7.7/systemctl.out","tests/fixtures/ubuntu-18.04/systemctl.json","tests/fixtures/ubuntu-18.04/systemctl.out","tests/test_systemctl.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/systemctl.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/systemctl.out","lines_changed":118},{"name":"tests/fixtures/ubuntu-18.04/systemctl.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/systemctl.out","lines_changed":198},{"name":"tests/test_systemctl.py","lines_changed":40}]},"message":"add systemctl tests"},{"commit":"a0298ac8a39093620b6859c909a78d11ab4a8e56","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":55,"deletions":0,"files":["tests/fixtures/centos-7.7/fstab.json","tests/fixtures/centos-7.7/fstab.out","tests/fixtures/ubuntu-18.04/fstab.json","tests/fixtures/ubuntu-18.04/fstab.out","tests/test_fstab.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/fstab.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/fstab.out","lines_changed":11},{"name":"tests/fixtures/ubuntu-18.04/fstab.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/fstab.out","lines_changed":2},{"name":"tests/test_fstab.py","lines_changed":40}]},"message":"add fstab tests"},{"commit":"98c0188821ebaa71c5661f2e095cf464bec695f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/systemctl_ls.md","jc/parsers/systemctl_ls.py"],"file_stats":[{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2}]},"message":"formatting fix"},{"commit":"ab1dabe3e42997825707006b63cc0c03d28470d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":4,"deletions":4,"files":["docs/parsers/systemctl_lj.md","docs/parsers/systemctl_ls.md","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_ls.py"],"file_stats":[{"name":"docs/parsers/systemctl_lj.md","lines_changed":2},{"name":"docs/parsers/systemctl_ls.md","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":2},{"name":"jc/parsers/systemctl_ls.py","lines_changed":2}]},"message":"doc update"},{"commit":"94bdb11fdf0e16d89769046d317643334ef1acdd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"remove systemctl from TODO"},{"commit":"b6727d68bab66164a3834b240ae868062aad9371","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":68,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":68}]},"message":"add systemctl parsers"},{"commit":"89bad7fc2b4023b10b6eeb7ff1f8f18b71731cb6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":1,"deletions":191,"files":["changelog.txt","docgen.sh","docs/parsers/systemctl_lm.md","jc/cli.py","jc/parsers/systemctl_lm.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/systemctl_lm.md","lines_changed":76},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/systemctl_lm.py","lines_changed":110}]},"message":"remove systemctl list-machines parser"},{"commit":"c0b8b810a2616e77973c1223f9c39329112337ac","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":306,"deletions":0,"files":["docgen.sh","docs/parsers/systemctl_lj.md","docs/parsers/systemctl_lm.md","docs/parsers/systemctl_ls.md","docs/parsers/systemctl_luf.md"],"file_stats":[{"name":"docgen.sh","lines_changed":4},{"name":"docs/parsers/systemctl_lj.md","lines_changed":94},{"name":"docs/parsers/systemctl_lm.md","lines_changed":76},{"name":"docs/parsers/systemctl_ls.md","lines_changed":68},{"name":"docs/parsers/systemctl_luf.md","lines_changed":64}]},"message":"add systemctl list parsers"},{"commit":"31eb65acd18b6d9163de900dbe48807a41a23785","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/systemctl_lm.py"],"file_stats":[{"name":"jc/parsers/systemctl_lm.py","lines_changed":4}]},"message":"doc fix"},{"commit":"513bbeb4649c011476930e1d1bf739ff06c2d66f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/systemctl_lj.py"],"file_stats":[{"name":"jc/parsers/systemctl_lj.py","lines_changed":2}]},"message":"add break on footer condition"},{"commit":"3a52fb725a0e56b52a0ea430266400b268360737","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":55,"deletions":29,"files":["jc/cli.py","jc/parsers/systemctl_lj.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":4},{"name":"jc/parsers/systemctl_lj.py","lines_changed":80}]},"message":"add systemctl list-jobs parser"},{"commit":"5affd444999de88b9bff7b49d790913540f97cd2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":342,"deletions":24,"files":["jc/cli.py","jc/parsers/systemctl.py","jc/parsers/systemctl_lj.py","jc/parsers/systemctl_lm.py","jc/parsers/systemctl_ls.py","jc/parsers/systemctl_luf.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":11},{"name":"jc/parsers/systemctl.py","lines_changed":2},{"name":"jc/parsers/systemctl_lj.py","lines_changed":110},{"name":"jc/parsers/systemctl_lm.py","lines_changed":110},{"name":"jc/parsers/systemctl_ls.py","lines_changed":101},{"name":"jc/parsers/systemctl_luf.py","lines_changed":32}]},"message":"add systemctl_lj, lm, ls, and luf"},{"commit":"5dbc6e806c5d05bfa1f7e2156ed2573341eb23c9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":142,"deletions":29,"files":["jc/cli.py","jc/parsers/systemctl_luf.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":61},{"name":"jc/parsers/systemctl_luf.py","lines_changed":110}]},"message":"add systemctl_luf parser"},{"commit":"59ae31f3f342c9337037aac4630310c9b9eb8287","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":219,"deletions":0,"files":["README.md","changelog.txt","docgen.sh","docs/parsers/systemctl.md","jc/cli.py","jc/parsers/systemctl.py"],"file_stats":[{"name":"README.md","lines_changed":29},{"name":"changelog.txt","lines_changed":1},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/systemctl.md","lines_changed":76},{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/systemctl.py","lines_changed":109}]},"message":"add systemctl parser"},{"commit":"230e921c2e8d931ea8a6abdf81215dbfc968b41c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"remove fstab from TODO"},{"commit":"a7c3d88b08ab90b719035cb15d78afe708235742","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":136,"deletions":0,"files":["docgen.sh","docs/parsers/fstab.md","jc/parsers/fstab.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/fstab.md","lines_changed":107},{"name":"jc/parsers/fstab.py","lines_changed":28}]},"message":"update example and docs"},{"commit":"9b453bcb84dd9f2f566955eda1ab35c863b3e8a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":13,"files":["jc/parsers/fstab.py"],"file_stats":[{"name":"jc/parsers/fstab.py","lines_changed":14}]},"message":"remove commented code block"},{"commit":"ce43c782f601fc12267fa22279e8e0142ecc3a7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"fstab update"},{"commit":"cb16faaf4d1700379d53053fe06824fd03404f87","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"helptext update"},{"commit":"3f1d3ff6d85422536e0adfb6433fd3ec0399ebe1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":73,"deletions":6,"files":["README.md","jc/parsers/fstab.py"],"file_stats":[{"name":"README.md","lines_changed":31},{"name":"jc/parsers/fstab.py","lines_changed":48}]},"message":"add examples"},{"commit":"6f67eecd5ed46f8a692ff5dd607a2395a5c838ff","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":108,"deletions":0,"files":["jc/cli.py","jc/parsers/fstab.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/fstab.py","lines_changed":105}]},"message":"add fstab parser"},{"commit":"e75c819190634f0a9048942b39eda691831829ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"changelog update"},{"commit":"601e68d104dd43940acadaa574dfd9b5117b0476","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/hosts.md","jc/parsers/hosts.py"],"file_stats":[{"name":"docs/parsers/hosts.md","lines_changed":2},{"name":"jc/parsers/hosts.py","lines_changed":2}]},"message":"doc update"},{"commit":"8285ecfd1e7810102cdbc399398a16f999c841ee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":2,"files":["tests/fixtures/centos-7.7/hosts.out","tests/fixtures/ubuntu-18.04/hosts.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/hosts.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/hosts.out","lines_changed":3}]},"message":"enhance test file with comments"},{"commit":"8726de902e527b95a12afd79a53d533cc176703d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"add hosts parser"},{"commit":"4133585274b0e7faa0255a911468248eb390d673","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":53,"deletions":0,"files":["tests/fixtures/centos-7.7/hosts.json","tests/fixtures/centos-7.7/hosts.out","tests/fixtures/ubuntu-18.04/hosts.json","tests/fixtures/ubuntu-18.04/hosts.out","tests/test_hosts.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/hosts.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/hosts.out","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/hosts.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/hosts.out","lines_changed":9},{"name":"tests/test_hosts.py","lines_changed":40}]},"message":"add hosts tests"},{"commit":"ad913b141721655a72a7b2a6ad60037e5acd5f9a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":148,"deletions":2,"files":["README.md","docgen.sh","docs/parsers/hosts.md","jc/parsers/hosts.py"],"file_stats":[{"name":"README.md","lines_changed":51},{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/hosts.md","lines_changed":96},{"name":"jc/parsers/hosts.py","lines_changed":2}]},"message":"add hosts docs"},{"commit":"7113e5a844fc0304f62f4afe65b5cbc816f75372","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":10,"deletions":0,"files":["jc/parsers/hosts.py"],"file_stats":[{"name":"jc/parsers/hosts.py","lines_changed":10}]},"message":"filter out comments at the end of the line"},{"commit":"a3a8369dc0e7227072f595cef1e57d471eff4d2f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":51,"deletions":9,"files":["jc/parsers/hosts.py"],"file_stats":[{"name":"jc/parsers/hosts.py","lines_changed":60}]},"message":"add docs"},{"commit":"64016b8ef049d5d4f02b4371f5cc9632c19bcaa2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":92,"deletions":0,"files":["jc/cli.py","jc/parsers/hosts.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/hosts.py","lines_changed":89}]},"message":"add hosts parser"},{"commit":"1cb49d60c84054b0446f299f6b4bab7d102101c1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"remove sar and sadf"},{"commit":"c858adfd12144569d0b990a217c5bcd75bd23828","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"remove stat from todo"},{"commit":"08d68327c777dd740d93a1b5fff8cf62f58904c6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":8080,"deletions":0,"files":["tests/fixtures/centos-7.7/stat.json","tests/fixtures/centos-7.7/stat.out","tests/fixtures/ubuntu-18.04/stat.json","tests/fixtures/ubuntu-18.04/stat.out","tests/test_stat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/stat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/stat.out","lines_changed":6678},{"name":"tests/fixtures/ubuntu-18.04/stat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/stat.out","lines_changed":1360},{"name":"tests/test_stat.py","lines_changed":40}]},"message":"add stat tests"},{"commit":"0d7c6c5664911af7a41149d51dd6ae05b39d7648","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":4,"files":["docs/parsers/stat.md","jc/parsers/stat.py"],"file_stats":[{"name":"docs/parsers/stat.md","lines_changed":4},{"name":"jc/parsers/stat.py","lines_changed":8}]},"message":"doc fix and add continue lines"},{"commit":"8bfa41dbf485cb06c928bc00a68727d2ceac21fa","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":22,"deletions":14,"files":["README.md","docs/parsers/stat.md","jc/parsers/stat.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"docs/parsers/stat.md","lines_changed":12},{"name":"jc/parsers/stat.py","lines_changed":20}]},"message":"change values to null if -"},{"commit":"7e2fa48ed4f3fd452082ce06e7306efd38b2d508","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"update changelog"},{"commit":"340635cad5224f2c715bf961956f4b9b6119d80b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":408,"deletions":111,"files":["docgen.sh","docs/parsers/ss.md","docs/parsers/stat.md"],"file_stats":[{"name":"docgen.sh","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":363},{"name":"docs/parsers/stat.md","lines_changed":154}]},"message":"fix stats doc"},{"commit":"8f77d1de098f035767d73a6965a695b95b75e161","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":111,"deletions":253,"files":["docgen.sh","docs/parsers/ss.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ss.md","lines_changed":363}]},"message":"add stat docs"},{"commit":"7dcf1b25ffb801375f0bf4263f34713ded904de9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":0,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":13}]},"message":"add link_to field"},{"commit":"9b735381063a1167a6a74864a43b81aefd98009f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/stat.py"],"file_stats":[{"name":"jc/parsers/stat.py","lines_changed":2}]},"message":"set compatibility to linux only"},{"commit":"3bf8c8c6dbdf7e03e26b4581e35c3274084c07ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":27,"deletions":27,"files":["jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/mount.py","lines_changed":6},{"name":"jc/parsers/netstat.py","lines_changed":8},{"name":"jc/parsers/ps.py","lines_changed":8},{"name":"jc/parsers/route.py","lines_changed":8},{"name":"jc/parsers/uname.py","lines_changed":8},{"name":"jc/parsers/uptime.py","lines_changed":8},{"name":"jc/parsers/w.py","lines_changed":8}]},"message":"pep8 fixes"},{"commit":"04a1ff2ca7873d55cdbc831e521f3d4892074d98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":28,"deletions":28,"files":["jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":8},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":6},{"name":"jc/parsers/jobs.py","lines_changed":6},{"name":"jc/parsers/ls.py","lines_changed":8},{"name":"jc/parsers/lsblk.py","lines_changed":10},{"name":"jc/parsers/lsmod.py","lines_changed":8},{"name":"jc/parsers/lsof.py","lines_changed":8}]},"message":"pep8 fixes"},{"commit":"64647d230ac936cb43864481ae0f45d13707d7b4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":21,"deletions":21,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":8},{"name":"jc/parsers/dig.py","lines_changed":8},{"name":"jc/parsers/env.py","lines_changed":8},{"name":"jc/parsers/foo.py","lines_changed":8},{"name":"jc/parsers/free.py","lines_changed":6}]},"message":"pep8 cleanup"},{"commit":"c2a67e1b70f33044aecabd8b46018117cb38cb9c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":213,"deletions":16,"files":["README.md","jc/parsers/stat.py"],"file_stats":[{"name":"README.md","lines_changed":48},{"name":"jc/parsers/stat.py","lines_changed":181}]},"message":"add stat parser"},{"commit":"edb9a7c76e1fedaf37b6a226ad4e1cfc08a9a5ec","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":94,"deletions":0,"files":["jc/cli.py","jc/parsers/stat.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/stat.py","lines_changed":91}]},"message":"add stat parser"},{"commit":"a407f5b67833cc5f8dda9fe8265cd34e62f28d14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"minor update"},{"commit":"e5b4987acb70e854d9996350235c5535b4a46b69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"doc update"},{"commit":"ba8cc18eebe779742cff0ba4c8bebe376e787c8c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":405,"deletions":0,"files":["tests/fixtures/centos-7.7/ss-sudo-a.json","tests/fixtures/centos-7.7/ss-sudo-a.out","tests/fixtures/ubuntu-18.04/ss-sudo-a.json","tests/fixtures/ubuntu-18.04/ss-sudo-a.out","tests/test_ss.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ss-sudo-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ss-sudo-a.out","lines_changed":204},{"name":"tests/fixtures/ubuntu-18.04/ss-sudo-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ss-sudo-a.out","lines_changed":159},{"name":"tests/test_ss.py","lines_changed":40}]},"message":"add ss tests"},{"commit":"d2c7316e00b9aaf19231c05351821041458baf98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"update command options info"},{"commit":"609aa14d243206e81ed31f8438c3f42e8263e140","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["docs/parsers/ss.md","jc/parsers/ss.py"],"file_stats":[{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2}]},"message":"spelling fix"},{"commit":"ef1ad4c700fcb740b5fbe1e12205b9a30ae427ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":0,"files":["docs/parsers/ss.md","jc/parsers/ss.py"],"file_stats":[{"name":"docs/parsers/ss.md","lines_changed":3},{"name":"jc/parsers/ss.py","lines_changed":3}]},"message":"doc update"},{"commit":"a0e2732152dc3005914b9a3e4f03e937a113c67f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":64,"deletions":12,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":76}]},"message":"add ss example"},{"commit":"9b5d3e3be1ac07813e716f8426fe89cced478221","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":135,"deletions":25,"files":["docs/parsers/ss.md"],"file_stats":[{"name":"docs/parsers/ss.md","lines_changed":160}]},"message":"update doc"},{"commit":"2663ef31fbc1b69b89b8032640a25065cc953866","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":159,"deletions":30,"files":["jc/parsers/ss.py"],"file_stats":[{"name":"jc/parsers/ss.py","lines_changed":189}]},"message":"fix field names per ss documentation"},{"commit":"a4cdd3378e6a031f16dd371ed5cd60ff018feb32","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":6}]},"message":"add compatibility info"},{"commit":"2f805da24d0e833e3d2a1f3a5ec34031fa911c05","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":45,"insertions":51,"deletions":51,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/ss.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/utils.md","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/ss.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/utils.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":2},{"name":"docs/parsers/dig.md","lines_changed":2},{"name":"docs/parsers/env.md","lines_changed":2},{"name":"docs/parsers/free.md","lines_changed":2},{"name":"docs/parsers/history.md","lines_changed":2},{"name":"docs/parsers/ifconfig.md","lines_changed":2},{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/jobs.md","lines_changed":2},{"name":"docs/parsers/ls.md","lines_changed":2},{"name":"docs/parsers/lsblk.md","lines_changed":2},{"name":"docs/parsers/lsmod.md","lines_changed":2},{"name":"docs/parsers/lsof.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/netstat.md","lines_changed":2},{"name":"docs/parsers/ps.md","lines_changed":2},{"name":"docs/parsers/route.md","lines_changed":2},{"name":"docs/parsers/ss.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2},{"name":"docs/parsers/uptime.md","lines_changed":2},{"name":"docs/parsers/w.md","lines_changed":2},{"name":"docs/utils.md","lines_changed":8},{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":2},{"name":"jc/parsers/dig.py","lines_changed":2},{"name":"jc/parsers/env.py","lines_changed":2},{"name":"jc/parsers/foo.py","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":2},{"name":"jc/parsers/lsmod.py","lines_changed":2},{"name":"jc/parsers/lsof.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/ss.py","lines_changed":2},{"name":"jc/parsers/uname.py","lines_changed":2},{"name":"jc/parsers/uptime.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":2},{"name":"jc/utils.py","lines_changed":8}]},"message":"add colon to parameter in docs"},{"commit":"79152a946d93e4facf9711bfa0f421e1978e0f1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":3}]},"message":"initialize network_list and socket_list variables"},{"commit":"de37bb37d01b397df2b5992b4acd64817380401d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":187,"deletions":1,"files":["docgen.sh","docs/parsers/ss.md","jc/parsers/ss.py"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/parsers/ss.md","lines_changed":184},{"name":"jc/parsers/ss.py","lines_changed":3}]},"message":"add ss docs"},{"commit":"f783e44e5c0cd05733da5d24573f06d05760f993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"changelog.txt","lines_changed":1}]},"message":"doc fix"},{"commit":"af82f2c991ac0668485e75ae78a26b9553ec8b13","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update raw format note"},{"commit":"46774daf9d3e0612df8f79d4b6b724e612ceb725","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":194,"deletions":4,"files":["README.md","jc/parsers/ss.py"],"file_stats":[{"name":"README.md","lines_changed":68},{"name":"jc/parsers/ss.py","lines_changed":130}]},"message":"doc update"},{"commit":"648306b7856fe2e296ce463ff4c9c2a8632c92d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":44,"deletions":22,"files":["jc/parsers/ss.py"],"file_stats":[{"name":"jc/parsers/ss.py","lines_changed":66}]},"message":"process ss data"},{"commit":"b7a4f205b80c0a6a41aaabf59703525ac526c295","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":17,"deletions":14,"files":["jc/parsers/ss.py"],"file_stats":[{"name":"jc/parsers/ss.py","lines_changed":31}]},"message":"parser fixes"},{"commit":"fdb168b43a69358a97bf43b71a0adbc7b1ef56f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":120,"deletions":0,"files":["jc/cli.py","jc/parsers/ss.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":3},{"name":"jc/parsers/ss.py","lines_changed":117}]},"message":"add ss parser"},{"commit":"b6f65c93c462856f26201df0cbfe804b29a65169","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":43,"deletions":69,"files":["README.md","docs/parsers/ps.md","jc/parsers/ps.py"],"file_stats":[{"name":"README.md","lines_changed":26},{"name":"docs/parsers/ps.md","lines_changed":43},{"name":"jc/parsers/ps.py","lines_changed":43}]},"message":"ps doc update"},{"commit":"3f4838f17a81969718d9e5b6bafa21e0b92e1d95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":0,"deletions":6,"files":["docgen.sh","docs/cli.md"],"file_stats":[{"name":"docgen.sh","lines_changed":1},{"name":"docs/cli.md","lines_changed":5}]},"message":"remove cli.md"},{"commit":"eef0dee2aa206716d9cf011bec58a06c46bbee15","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":8,"deletions":0,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":4},{"name":"jc/utils.py","lines_changed":4}]},"message":"doc update"},{"commit":"e17388d3b2d1521d963bf9dd9e7a4ba5ba9bb09d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":44,"deletions":4,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":22},{"name":"jc/utils.py","lines_changed":26}]},"message":"doc update"},{"commit":"7e6a1bc719b7160ba70cd326ff6aa182993a7380","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":41,"deletions":63,"files":["docs/readme.md","jc/__init__.py"],"file_stats":[{"name":"docs/readme.md","lines_changed":51},{"name":"jc/__init__.py","lines_changed":53}]},"message":"doc update"},{"commit":"37738a2ea2f15af847e4b8383aba911e2020a3e8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update contributions"},{"commit":"c5834a57db8957723a1425b9db46c433e28a3af1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":14}]},"message":"add todo section"},{"commit":"91b9373f380e06f91888811edbfb21747ff08810","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":417,"deletions":673,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1090}]},"message":"new examples"},{"commit":"ce0bb5b816eed0c75542ead474c3dcb8401be2d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"formatting fix"},{"commit":"f330ff0eff00586f46d18497f2441e94b6430e91","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":12}]},"message":"wrap example text"},{"commit":"4b02700414660b90518311485761870402368625","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":20,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":29}]},"message":"update simple examples"},{"commit":"ee30180376b7acec46314bbc483866bff41c362a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"fix note"},{"commit":"338e0ff15c7fac84475c1ed107e6a23e7a009b1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"add schema note"},{"commit":"3ac75305dfa33429646bb5d415567034cccfeee3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":39,"insertions":351,"deletions":39,"files":["docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"docs/parsers/df.md","lines_changed":10},{"name":"docs/parsers/dig.md","lines_changed":10},{"name":"docs/parsers/env.md","lines_changed":10},{"name":"docs/parsers/free.md","lines_changed":10},{"name":"docs/parsers/history.md","lines_changed":10},{"name":"docs/parsers/ifconfig.md","lines_changed":10},{"name":"docs/parsers/iptables.md","lines_changed":10},{"name":"docs/parsers/jobs.md","lines_changed":10},{"name":"docs/parsers/ls.md","lines_changed":10},{"name":"docs/parsers/lsblk.md","lines_changed":10},{"name":"docs/parsers/lsmod.md","lines_changed":10},{"name":"docs/parsers/lsof.md","lines_changed":10},{"name":"docs/parsers/mount.md","lines_changed":10},{"name":"docs/parsers/netstat.md","lines_changed":10},{"name":"docs/parsers/ps.md","lines_changed":10},{"name":"docs/parsers/route.md","lines_changed":10},{"name":"docs/parsers/uname.md","lines_changed":10},{"name":"docs/parsers/uptime.md","lines_changed":10},{"name":"docs/parsers/w.md","lines_changed":10},{"name":"jc/parsers/df.py","lines_changed":10},{"name":"jc/parsers/dig.py","lines_changed":10},{"name":"jc/parsers/env.py","lines_changed":10},{"name":"jc/parsers/foo.py","lines_changed":10},{"name":"jc/parsers/free.py","lines_changed":10},{"name":"jc/parsers/history.py","lines_changed":10},{"name":"jc/parsers/ifconfig.py","lines_changed":10},{"name":"jc/parsers/iptables.py","lines_changed":10},{"name":"jc/parsers/jobs.py","lines_changed":10},{"name":"jc/parsers/ls.py","lines_changed":10},{"name":"jc/parsers/lsblk.py","lines_changed":10},{"name":"jc/parsers/lsmod.py","lines_changed":10},{"name":"jc/parsers/lsof.py","lines_changed":10},{"name":"jc/parsers/mount.py","lines_changed":10},{"name":"jc/parsers/netstat.py","lines_changed":10},{"name":"jc/parsers/ps.py","lines_changed":10},{"name":"jc/parsers/route.py","lines_changed":10},{"name":"jc/parsers/uname.py","lines_changed":10},{"name":"jc/parsers/uptime.py","lines_changed":10},{"name":"jc/parsers/w.py","lines_changed":10}]},"message":"update process() doc"},{"commit":"3bdcf44afb708cf6a716a0847b119f895602c23e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":18,"deletions":2,"files":["docs/parsers/arp.md","jc/parsers/arp.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":10},{"name":"jc/parsers/arp.py","lines_changed":10}]},"message":"doc update"},{"commit":"e3f4ffede56fe48c0a282a021ac5cdfd7a8abee9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":20,"insertions":172,"deletions":77,"files":["docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":2},{"name":"docs/parsers/df.md","lines_changed":13},{"name":"docs/parsers/dig.md","lines_changed":13},{"name":"docs/parsers/env.md","lines_changed":13},{"name":"docs/parsers/free.md","lines_changed":13},{"name":"docs/parsers/history.md","lines_changed":13},{"name":"docs/parsers/ifconfig.md","lines_changed":13},{"name":"docs/parsers/iptables.md","lines_changed":13},{"name":"docs/parsers/jobs.md","lines_changed":13},{"name":"docs/parsers/ls.md","lines_changed":13},{"name":"docs/parsers/lsblk.md","lines_changed":13},{"name":"docs/parsers/lsmod.md","lines_changed":13},{"name":"docs/parsers/lsof.md","lines_changed":13},{"name":"docs/parsers/mount.md","lines_changed":13},{"name":"docs/parsers/netstat.md","lines_changed":13},{"name":"docs/parsers/ps.md","lines_changed":13},{"name":"docs/parsers/route.md","lines_changed":13},{"name":"docs/parsers/uname.md","lines_changed":13},{"name":"docs/parsers/uptime.md","lines_changed":13},{"name":"docs/parsers/w.md","lines_changed":13}]},"message":"doc update"},{"commit":"f0c8725d4355113f7690f20bb99078e488084ad7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":21,"insertions":181,"deletions":81,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":13},{"name":"jc/parsers/dig.py","lines_changed":13},{"name":"jc/parsers/env.py","lines_changed":13},{"name":"jc/parsers/foo.py","lines_changed":13},{"name":"jc/parsers/free.py","lines_changed":13},{"name":"jc/parsers/history.py","lines_changed":13},{"name":"jc/parsers/ifconfig.py","lines_changed":13},{"name":"jc/parsers/iptables.py","lines_changed":13},{"name":"jc/parsers/jobs.py","lines_changed":13},{"name":"jc/parsers/ls.py","lines_changed":13},{"name":"jc/parsers/lsblk.py","lines_changed":13},{"name":"jc/parsers/lsmod.py","lines_changed":13},{"name":"jc/parsers/lsof.py","lines_changed":13},{"name":"jc/parsers/mount.py","lines_changed":13},{"name":"jc/parsers/netstat.py","lines_changed":13},{"name":"jc/parsers/ps.py","lines_changed":13},{"name":"jc/parsers/route.py","lines_changed":13},{"name":"jc/parsers/uname.py","lines_changed":13},{"name":"jc/parsers/uptime.py","lines_changed":13},{"name":"jc/parsers/w.py","lines_changed":13}]},"message":"doc update"},{"commit":"5473bc4eb697d00bd26a038287e1137e438cacb5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":16,"deletions":6,"files":["docs/parsers/arp.md","jc/parsers/arp.py"],"file_stats":[{"name":"docs/parsers/arp.md","lines_changed":11},{"name":"jc/parsers/arp.py","lines_changed":11}]},"message":"doc update"},{"commit":"b9bd9422bfa46144416fa65add2e041d4124357b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":380,"deletions":46,"files":["docs/parsers/dig.md","jc/parsers/dig.py"],"file_stats":[{"name":"docs/parsers/dig.md","lines_changed":213},{"name":"jc/parsers/dig.py","lines_changed":213}]},"message":"doc update"},{"commit":"cb5729a070925a7fa29f762bd4b074532f5cba55","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":62,"deletions":44,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":106}]},"message":"add options to docs"},{"commit":"f0b1ab42337746afd37365abdf44729d530d5410","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":0,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":1},{"name":"jc/utils.py","lines_changed":1}]},"message":"doc update"},{"commit":"b15386e849b9fea347e7b17307eedf779d8022fc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":11,"deletions":5,"files":["docs/utils.md","jc/utils.py"],"file_stats":[{"name":"docs/utils.md","lines_changed":7},{"name":"jc/utils.py","lines_changed":9}]},"message":"doc update"},{"commit":"d2a2c8da35ee44e9a7572885609548eb809bcdda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":1,"deletions":5,"files":["docs/parsers/iptables.md","docs/parsers/mount.md","docs/parsers/uname.md"],"file_stats":[{"name":"docs/parsers/iptables.md","lines_changed":2},{"name":"docs/parsers/mount.md","lines_changed":2},{"name":"docs/parsers/uname.md","lines_changed":2}]},"message":"doc updates"},{"commit":"7251548cbb09beae6971385a56036e9649bd9b2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":5,"files":["jc/parsers/iptables.py","jc/parsers/mount.py","jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/mount.py","lines_changed":3},{"name":"jc/parsers/uname.py","lines_changed":3}]},"message":"documentation updates"},{"commit":"146e29f7cbc0f396be67dbd7ae971a4ef4dafb7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":47,"insertions":5386,"deletions":2249,"files":["docgen.sh","docs/cli.md","docs/parsers/arp.md","docs/parsers/df.md","docs/parsers/dig.md","docs/parsers/env.md","docs/parsers/free.md","docs/parsers/history.md","docs/parsers/ifconfig.md","docs/parsers/iptables.md","docs/parsers/jobs.md","docs/parsers/ls.md","docs/parsers/lsblk.md","docs/parsers/lsmod.md","docs/parsers/lsof.md","docs/parsers/mount.md","docs/parsers/netstat.md","docs/parsers/ps.md","docs/parsers/route.md","docs/parsers/uname.md","docs/parsers/uptime.md","docs/parsers/w.md","docs/readme.md","docs/utils.md","jc/__init__.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/foo.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py","jc/utils.py"],"file_stats":[{"name":"docgen.sh","lines_changed":27},{"name":"docs/cli.md","lines_changed":5},{"name":"docs/parsers/arp.md","lines_changed":110},{"name":"docs/parsers/df.md","lines_changed":97},{"name":"docs/parsers/dig.md","lines_changed":212},{"name":"docs/parsers/env.md","lines_changed":72},{"name":"docs/parsers/free.md","lines_changed":77},{"name":"docs/parsers/history.md","lines_changed":64},{"name":"docs/parsers/ifconfig.md","lines_changed":170},{"name":"docs/parsers/iptables.md","lines_changed":168},{"name":"docs/parsers/jobs.md","lines_changed":98},{"name":"docs/parsers/ls.md","lines_changed":168},{"name":"docs/parsers/lsblk.md","lines_changed":273},{"name":"docs/parsers/lsmod.md","lines_changed":130},{"name":"docs/parsers/lsof.md","lines_changed":124},{"name":"docs/parsers/mount.md","lines_changed":82},{"name":"docs/parsers/netstat.md","lines_changed":352},{"name":"docs/parsers/ps.md","lines_changed":223},{"name":"docs/parsers/route.md","lines_changed":129},{"name":"docs/parsers/uname.md","lines_changed":55},{"name":"docs/parsers/uptime.md","lines_changed":56},{"name":"docs/parsers/w.md","lines_changed":108},{"name":"docs/readme.md","lines_changed":79},{"name":"docs/utils.md","lines_changed":22},{"name":"jc/__init__.py","lines_changed":135},{"name":"jc/parsers/arp.py","lines_changed":176},{"name":"jc/parsers/df.py","lines_changed":129},{"name":"jc/parsers/dig.py","lines_changed":362},{"name":"jc/parsers/env.py","lines_changed":101},{"name":"jc/parsers/foo.py","lines_changed":37},{"name":"jc/parsers/free.py","lines_changed":111},{"name":"jc/parsers/history.py","lines_changed":85},{"name":"jc/parsers/ifconfig.py","lines_changed":294},{"name":"jc/parsers/iptables.py","lines_changed":271},{"name":"jc/parsers/jobs.py","lines_changed":150},{"name":"jc/parsers/ls.py","lines_changed":280},{"name":"jc/parsers/lsblk.py","lines_changed":499},{"name":"jc/parsers/lsmod.py","lines_changed":211},{"name":"jc/parsers/lsof.py","lines_changed":205},{"name":"jc/parsers/mount.py","lines_changed":115},{"name":"jc/parsers/netstat.py","lines_changed":661},{"name":"jc/parsers/ps.py","lines_changed":389},{"name":"jc/parsers/route.py","lines_changed":213},{"name":"jc/parsers/uname.py","lines_changed":57},{"name":"jc/parsers/uptime.py","lines_changed":69},{"name":"jc/parsers/w.py","lines_changed":173},{"name":"jc/utils.py","lines_changed":11}]},"message":"update docs"},{"commit":"363fd3eab409351121dab8a11c6b565829ccd84a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"move parser_name to except block"},{"commit":"4083dd4260ff3a8bb6649e1661cf3e058fdbad59","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":24,"deletions":5,"files":["changelog.txt","jc/cli.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/cli.py","lines_changed":28}]},"message":"add -d option"},{"commit":"b2b74547baaf33058d74fc08cb665777b19bd05a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":317,"deletions":0,"files":["tests/fixtures/centos-7.7/netstat-sudo-aeep.json","tests/fixtures/centos-7.7/netstat-sudo-aeep.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.json","tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.out","tests/test_netstat.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/netstat-sudo-aeep.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-sudo-aeep.out","lines_changed":164},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-sudo-aeep.out","lines_changed":126},{"name":"tests/test_netstat.py","lines_changed":24}]},"message":"add netstat-sudo-aeep tests"},{"commit":"dddb0baabf8a78261ac80380b97e7c92c7ce4d89","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":8}]},"message":"use \\u2063 instead of \\u2026"},{"commit":"84b4f67ef9d4bb0db201a095d74400a56394589d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":2,"files":["tests/fixtures/centos-7.7/ps-axu.json","tests/fixtures/ubuntu-18.04/ps-axu.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/ps-axu.json","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/ps-axu.json","lines_changed":2}]},"message":"new json output"},{"commit":"3a089138b8c269ba3c5f7aec87ae3f8ec368c3ab","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":129,"deletions":9,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":138}]},"message":"add int and float changes"},{"commit":"3ff0305c8e62ce3b5a8f3f9174c5a9da3bc22766","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":8,"insertions":54,"deletions":2,"files":["tests/fixtures/centos-7.7/lsblk-allcols.json","tests/fixtures/centos-7.7/lsblk-allcols.out","tests/fixtures/centos-7.7/lsblk.json","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/lsblk-allcols.json","tests/fixtures/ubuntu-18.04/lsblk-allcols.out","tests/fixtures/ubuntu-18.04/lsblk.json","tests/test_lsblk.py"],"file_stats":[{"name":"tests/fixtures/centos-7.7/lsblk-allcols.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsblk-allcols.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/lsblk.json","lines_changed":2},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsblk-allcols.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsblk-allcols.out","lines_changed":18},{"name":"tests/fixtures/ubuntu-18.04/lsblk.json","lines_changed":2},{"name":"tests/test_lsblk.py","lines_changed":24}]},"message":"add lsblk tests"},{"commit":"761edc3c6cfc215fe45c65ee2bb5462cb460b6a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":6,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":7}]},"message":"remove unused parse_pairs function"},{"commit":"3351c81f647ac97a5038cc0c14adb31e55832a77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":200,"deletions":2,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":202}]},"message":"add documentation"},{"commit":"3dfc6f67d770c59804bdeb371d5c78e3f3668f9e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":6}]},"message":"change empty values to Null"},{"commit":"1546ec3bd139ef687282f60786388b5207541c98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":17,"deletions":13,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":30}]},"message":"fixes for right justified columns"},{"commit":"2a953011f72e922c89b9af6dfebd1983da7c338d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":50,"deletions":155,"files":["changelog.txt","jc/parsers/lsblk.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":203}]},"message":"rewrite of lsblk parser to use a custom delimiter"},{"commit":"d2f755de9d2be7b0af5f010042e1f4ca589c5464","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":14,"insertions":250,"deletions":566,"files":["tests/test_ifconfig.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_ls.py","tests/test_lsblk.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py","tests/test_ps.py","tests/test_route.py","tests/test_uname.py","tests/test_uptime.py","tests/test_w.py"],"file_stats":[{"name":"tests/test_ifconfig.py","lines_changed":59},{"name":"tests/test_iptables.py","lines_changed":249},{"name":"tests/test_jobs.py","lines_changed":19},{"name":"tests/test_ls.py","lines_changed":58},{"name":"tests/test_lsblk.py","lines_changed":25},{"name":"tests/test_lsmod.py","lines_changed":22},{"name":"tests/test_lsof.py","lines_changed":59},{"name":"tests/test_mount.py","lines_changed":30},{"name":"tests/test_netstat.py","lines_changed":110},{"name":"tests/test_ps.py","lines_changed":57},{"name":"tests/test_route.py","lines_changed":51},{"name":"tests/test_uname.py","lines_changed":27},{"name":"tests/test_uptime.py","lines_changed":23},{"name":"tests/test_w.py","lines_changed":27}]},"message":"updates tests"},{"commit":"f363334639c5fa3a43889794ea52409056a2d886","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":87,"deletions":219,"files":["tests/test_df.py","tests/test_dig.py","tests/test_env.py","tests/test_free.py","tests/test_history.py"],"file_stats":[{"name":"tests/test_df.py","lines_changed":43},{"name":"tests/test_dig.py","lines_changed":196},{"name":"tests/test_env.py","lines_changed":13},{"name":"tests/test_free.py","lines_changed":41},{"name":"tests/test_history.py","lines_changed":13}]},"message":"update tests"},{"commit":"750197e48596ad96804477053d3ff3c8063ea68a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":70,"files":["tests/test_arp.py"],"file_stats":[{"name":"tests/test_arp.py","lines_changed":97}]},"message":"new tests"},{"commit":"36b349e4ed39fe611c7d87a47c378cc4d4627ad2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":76,"insertions":76,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-a.json","tests/fixtures/centos-7.7/arp-v.json","tests/fixtures/centos-7.7/arp.json","tests/fixtures/centos-7.7/df-h.json","tests/fixtures/centos-7.7/df.json","tests/fixtures/centos-7.7/dig-aaaa.json","tests/fixtures/centos-7.7/dig-x.json","tests/fixtures/centos-7.7/dig.json","tests/fixtures/centos-7.7/env.json","tests/fixtures/centos-7.7/free-h.json","tests/fixtures/centos-7.7/free.json","tests/fixtures/centos-7.7/history.json","tests/fixtures/centos-7.7/ifconfig.json","tests/fixtures/centos-7.7/iptables-filter-nv.json","tests/fixtures/centos-7.7/iptables-filter.json","tests/fixtures/centos-7.7/iptables-mangle.json","tests/fixtures/centos-7.7/iptables-nat.json","tests/fixtures/centos-7.7/iptables-raw.json","tests/fixtures/centos-7.7/jobs.json","tests/fixtures/centos-7.7/ls-al.json","tests/fixtures/centos-7.7/ls-alh.json","tests/fixtures/centos-7.7/ls.json","tests/fixtures/centos-7.7/lsblk.json","tests/fixtures/centos-7.7/lsmod.json","tests/fixtures/centos-7.7/lsof-sudo.json","tests/fixtures/centos-7.7/lsof.json","tests/fixtures/centos-7.7/mount.json","tests/fixtures/centos-7.7/netstat-l.json","tests/fixtures/centos-7.7/netstat-p.json","tests/fixtures/centos-7.7/netstat-sudo-lnp.json","tests/fixtures/centos-7.7/netstat.json","tests/fixtures/centos-7.7/ps-axu.json","tests/fixtures/centos-7.7/ps-ef.json","tests/fixtures/centos-7.7/route-vn.json","tests/fixtures/centos-7.7/route.json","tests/fixtures/centos-7.7/uname-a.json","tests/fixtures/centos-7.7/uptime.json","tests/fixtures/centos-7.7/w.json","tests/fixtures/ubuntu-18.04/arp-a.json","tests/fixtures/ubuntu-18.04/arp-v.json","tests/fixtures/ubuntu-18.04/arp.json","tests/fixtures/ubuntu-18.04/df-h.json","tests/fixtures/ubuntu-18.04/df.json","tests/fixtures/ubuntu-18.04/dig-aaaa.json","tests/fixtures/ubuntu-18.04/dig-x.json","tests/fixtures/ubuntu-18.04/dig.json","tests/fixtures/ubuntu-18.04/env.json","tests/fixtures/ubuntu-18.04/free-h.json","tests/fixtures/ubuntu-18.04/free.json","tests/fixtures/ubuntu-18.04/history.json","tests/fixtures/ubuntu-18.04/ifconfig.json","tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","tests/fixtures/ubuntu-18.04/iptables-filter.json","tests/fixtures/ubuntu-18.04/iptables-mangle.json","tests/fixtures/ubuntu-18.04/iptables-nat.json","tests/fixtures/ubuntu-18.04/iptables-raw.json","tests/fixtures/ubuntu-18.04/jobs.json","tests/fixtures/ubuntu-18.04/ls-al.json","tests/fixtures/ubuntu-18.04/ls-alh.json","tests/fixtures/ubuntu-18.04/ls.json","tests/fixtures/ubuntu-18.04/lsblk.json","tests/fixtures/ubuntu-18.04/lsmod.json","tests/fixtures/ubuntu-18.04/lsof-sudo.json","tests/fixtures/ubuntu-18.04/lsof.json","tests/fixtures/ubuntu-18.04/mount.json","tests/fixtures/ubuntu-18.04/netstat-l.json","tests/fixtures/ubuntu-18.04/netstat-p.json","tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.json","tests/fixtures/ubuntu-18.04/netstat.json","tests/fixtures/ubuntu-18.04/ps-axu.json","tests/fixtures/ubuntu-18.04/ps-ef.json","tests/fixtures/ubuntu-18.04/route-vn.json","tests/fixtures/ubuntu-18.04/route.json","tests/fixtures/ubuntu-18.04/uname-a.json","tests/fixtures/ubuntu-18.04/uptime.json","tests/fixtures/ubuntu-18.04/w.json"],"file_stats":[{"name":"tests/fixtures/centos-7.7/arp-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/arp-v.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/arp.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/df-h.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/df.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/dig-aaaa.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/dig-x.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/dig.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/env.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/free-h.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/free.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/history.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ifconfig.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-filter-nv.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-filter.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-mangle.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-nat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/iptables-raw.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/jobs.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-al.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls-alh.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ls.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsblk.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsmod.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsof-sudo.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/lsof.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/mount.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-l.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-p.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat-sudo-lnp.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/netstat.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ps-axu.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/ps-ef.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/route-vn.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/route.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/uname-a.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/uptime.json","lines_changed":1},{"name":"tests/fixtures/centos-7.7/w.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/arp-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/arp-v.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/arp.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/df-h.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/df.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dig-aaaa.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dig-x.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/dig.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/env.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/free-h.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/free.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/history.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ifconfig.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter-nv.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-mangle.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-nat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/iptables-raw.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/jobs.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-al.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls-alh.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ls.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsblk.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsmod.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsof-sudo.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/lsof.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/mount.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-l.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-p.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/netstat.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ps-axu.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/ps-ef.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/route-vn.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/route.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/uname-a.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/uptime.json","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/w.json","lines_changed":1}]},"message":"json output files"},{"commit":"b5f1e94fe2859c4fbcf126f8f8fb20d71a9b6433","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":1}]},"message":"fix for space before '-' in program_name"},{"commit":"6a504fb0e10b1ef551ed9fe780926fe5ca02d267","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2}]},"message":"add exception type"},{"commit":"e02bad2240bacbc31097d931a902a34217d559db","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":123,"deletions":175,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":298}]},"message":"update documentation"},{"commit":"1d4043a3b64c38a20a0db065c3bdc3c6a2d068bd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":52,"deletions":0,"files":["jc/parsers/foo.py"],"file_stats":[{"name":"jc/parsers/foo.py","lines_changed":52}]},"message":"add template parser"},{"commit":"039e034829789ca314a00abd4f1d9ad06f1a6eef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":6,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":25}]},"message":"fix parsing issues in program_name when spaces are in the name"},{"commit":"d828de4f4f2f4c3d582fddee79830d12511c3299","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":53,"deletions":9,"files":["jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/w.py","lines_changed":62}]},"message":"update documentation"},{"commit":"098000bb10a3f5ed33d285c6ba4f0dfb9a013fdc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":24,"deletions":9,"files":["changelog.txt","jc/parsers/w.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/w.py","lines_changed":32}]},"message":"fix blank 'from' column issue"},{"commit":"b41165eff5cd7371e852cd33e084a919524ead9b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":31,"deletions":1,"files":["jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/w.py","lines_changed":32}]},"message":"process w data"},{"commit":"6ad7891b2b34fae1a366568e4eba86e886a6dd84","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":59,"deletions":14,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":73}]},"message":"process uptime data"},{"commit":"72138315598cd405bc0508b554108bf3f730dcb0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":31,"deletions":10,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":41}]},"message":"add process boilerplate"},{"commit":"10eedd82e4c4678fbf989fe599d7ca75deced5a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":5}]},"message":"changelog update"},{"commit":"a55493da0f1457a46f29511e0835adfa9d748f7b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":93,"deletions":6,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":99}]},"message":"process route data"},{"commit":"89973f4162317693b0d094a64115ee87d8479d51","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":45,"deletions":27,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":72}]},"message":"doc updates and tty fix"},{"commit":"4802222ad50d55372f2b883d83a61181086b0619","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":0,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":11}]},"message":"process ps data"},{"commit":"bcd28f06f87a4260d1787399d723817afd6aee90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":1,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":24}]},"message":"prep ps for process"},{"commit":"e17a47a7fa7f4c1bb4c4b55fb004963fc1b61434","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":2}]},"message":"fix typo"},{"commit":"cad2e16c7aa54a70f476bf4268ff8e5985cff468","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":353,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":354}]},"message":"document examples"},{"commit":"5da5d278dac77bd4aa21819194e7f9e178bd1887","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":23,"deletions":0,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":23}]},"message":"process netstat data"},{"commit":"81b6776e57c113cbfb8346d1cfd83532a440c257","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":177,"files":["jc/parsers/netstat.py.old"],"file_stats":[{"name":"jc/parsers/netstat.py.old","lines_changed":177}]},"message":"remove old netstat parser"},{"commit":"5ecb6bd58b4ed91f63e4a0b5939378bd9925b7b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":3,"files":["changelog.txt","jc/parsers/netstat.py"],"file_stats":[{"name":"changelog.txt","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":3}]},"message":"doc updates"},{"commit":"21b56096c57cfcf5c55fdf5f9bab88b6d5c7dd73","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":37,"deletions":0,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":37}]},"message":"finalize parse_post"},{"commit":"8c78f959731a25a05ee6361a14853c92f8fce69b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":8}]},"message":"clean up trailing spaces on entries"},{"commit":"94a88bb5669d9a9a5dff085a4c4111bdd39df8f6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":35,"deletions":17,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":52}]},"message":"post_parse flags and program_name"},{"commit":"579124475b0b517b36ddbe5bdb13be14807dea1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"simplify parser_map code"},{"commit":"5da83e020015eb5559d216bc3f39b3854e76adf3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/cli.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":2}]},"message":"fix found variable error"},{"commit":"a90a76d004b923edece07a52a3aa400a9ef4b005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":177,"deletions":140,"files":["jc/parsers/netstat.py.old","jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/netstat.py.old","lines_changed":177},{"name":"jc/parsers/netstat2.py","lines_changed":140}]},"message":"move out old netstat parser"},{"commit":"bdfa95912398b2630fcb13e866f4013747fd0975","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":20,"insertions":209,"deletions":212,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":4},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/dig.py","lines_changed":10},{"name":"jc/parsers/env.py","lines_changed":10},{"name":"jc/parsers/free.py","lines_changed":10},{"name":"jc/parsers/history.py","lines_changed":8},{"name":"jc/parsers/ifconfig.py","lines_changed":10},{"name":"jc/parsers/iptables.py","lines_changed":10},{"name":"jc/parsers/jobs.py","lines_changed":10},{"name":"jc/parsers/ls.py","lines_changed":10},{"name":"jc/parsers/lsblk.py","lines_changed":10},{"name":"jc/parsers/lsmod.py","lines_changed":10},{"name":"jc/parsers/lsof.py","lines_changed":10},{"name":"jc/parsers/mount.py","lines_changed":10},{"name":"jc/parsers/netstat.py","lines_changed":245},{"name":"jc/parsers/ps.py","lines_changed":10},{"name":"jc/parsers/route.py","lines_changed":10},{"name":"jc/parsers/uname.py","lines_changed":10},{"name":"jc/parsers/uptime.py","lines_changed":10},{"name":"jc/parsers/w.py","lines_changed":10}]},"message":"fix compatibility code"},{"commit":"4380594275bc863e81839a6a7b032a6ff0cbb9b6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":46,"files":["jc/utils.py"],"file_stats":[{"name":"jc/utils.py","lines_changed":54}]},"message":"remove cli functions from utils"},{"commit":"88bf252c0df3c583640286880d7992e4399e23f4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":139,"deletions":128,"files":["jc/cli.py","jc/jc.py"],"file_stats":[{"name":"jc/cli.py","lines_changed":139},{"name":"jc/jc.py","lines_changed":128}]},"message":"rename jc.py to cli.py"},{"commit":"a5efd8adce77fca7e3343f8f518c7bad578fdb4f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"rename jc.py to cli.py"},{"commit":"2ee392eefffde77ebdf83f5e4e0c43cf8c1a7d6e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":4,"files":["jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/netstat2.py","lines_changed":10}]},"message":"add quiet mode"},{"commit":"9c1d893e16ea17b16bec5fd0ec8839c4fe6f0590","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":102,"deletions":90,"files":["jc/jc.py","jc/parsers/arp.py","jc/parsers/df.py","jc/utils.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":107},{"name":"jc/parsers/arp.py","lines_changed":10},{"name":"jc/parsers/df.py","lines_changed":10},{"name":"jc/utils.py","lines_changed":65}]},"message":"move utils to own module and add quiet mode"},{"commit":"88dcb90c83b757285661c72429c5b60bb1ead94a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":5,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":6}]},"message":"changelog update"},{"commit":"a3bcabc89c1f74d067da0046492dbc56e50b1005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":62,"files":["jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/netstat2.py","lines_changed":71}]},"message":"mvp of netstat raw_data parser"},{"commit":"dafbf9fdcf53a8abbd006baef0be6697f860d2a1","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":247,"deletions":53,"files":["jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/lsmod.py","lines_changed":85},{"name":"jc/parsers/lsof.py","lines_changed":106},{"name":"jc/parsers/mount.py","lines_changed":31},{"name":"jc/parsers/netstat2.py","lines_changed":78}]},"message":"process lsmod data"},{"commit":"680cb2b2caa82e1e2c3225b3c44cae2ba03ba02c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":76,"deletions":7,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":83}]},"message":"doc update"},{"commit":"54818a06e0e0b981810f6aec45c308da81a9e2ea","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":8}]},"message":"change bool variable names"},{"commit":"88f4c5b5a93da3938b84f97abfc54539ee19ac48","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":10,"deletions":10,"files":["jc/parsers/dig.py","jc/parsers/free.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":8},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":4},{"name":"jc/parsers/jobs.py","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2}]},"message":"remove TypeError from exception check"},{"commit":"2bb7409887e8b7659613189daf58d02cb26bd6ba","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":36,"deletions":11,"files":["jc/parsers/df.py","jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":5},{"name":"jc/parsers/lsblk.py","lines_changed":42}]},"message":"process lsblk data"},{"commit":"c780aac3aba02cc042c6a3c984af198069956370","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":22,"insertions":91,"deletions":5,"files":["jc/jc.py","jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/dig.py","jc/parsers/env.py","jc/parsers/free.py","jc/parsers/history.py","jc/parsers/ifconfig.py","jc/parsers/iptables.py","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/mount.py","jc/parsers/netstat.py","jc/parsers/netstat2.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/uname.py","jc/parsers/uptime.py","jc/parsers/w.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":8},{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/df.py","lines_changed":1},{"name":"jc/parsers/dig.py","lines_changed":5},{"name":"jc/parsers/env.py","lines_changed":5},{"name":"jc/parsers/free.py","lines_changed":4},{"name":"jc/parsers/history.py","lines_changed":5},{"name":"jc/parsers/ifconfig.py","lines_changed":5},{"name":"jc/parsers/iptables.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":5},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"jc/parsers/lsblk.py","lines_changed":1},{"name":"jc/parsers/lsmod.py","lines_changed":4},{"name":"jc/parsers/lsof.py","lines_changed":5},{"name":"jc/parsers/mount.py","lines_changed":5},{"name":"jc/parsers/netstat.py","lines_changed":5},{"name":"jc/parsers/netstat2.py","lines_changed":5},{"name":"jc/parsers/ps.py","lines_changed":4},{"name":"jc/parsers/route.py","lines_changed":4},{"name":"jc/parsers/uname.py","lines_changed":5},{"name":"jc/parsers/uptime.py","lines_changed":5},{"name":"jc/parsers/w.py","lines_changed":4}]},"message":"add compatibility function"},{"commit":"5010aaec285e26ae9dbfdb3fcdc38a3bd36cd236","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":2}]},"message":"put exit() back"},{"commit":"066e93cb075021ac94a0e2e6a36a34bc173ee6c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":2}]},"message":"move exit() to errormessage()"},{"commit":"0bd2faa7f71a128babc68afea053159ccb91b702","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":3}]},"message":"beautify compatibility list"},{"commit":"e2f926453ba386736204e358f8306dfc731b5005","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["install.sh"],"file_stats":[{"name":"install.sh","lines_changed":2}]},"message":"add install script"},{"commit":"b953b79f9c46d8c5398a6c1c2769167b5aed2805","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":11,"deletions":0,"files":["jc/parsers/arp.py","jc/parsers/df.py","jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":4}]},"message":"add compatibility"},{"commit":"7f9967780692bec2fcbe992eee0c392ab92efb7f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":19,"deletions":1,"files":["jc/jc.py","jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":16},{"name":"jc/parsers/lsblk.py","lines_changed":4}]},"message":"compatibility function call"},{"commit":"721b54665924ad1657ee83cd5fca601e03700962","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":4,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":8}]},"message":"finish schema"},{"commit":"2de5e41269421c73e07d4abd6ca99b38be736261","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":95,"deletions":12,"files":["jc/parsers/lsblk.py"],"file_stats":[{"name":"jc/parsers/lsblk.py","lines_changed":107}]},"message":"fix for more columns and build schema"},{"commit":"dfe0f6e99b6174734661fc43d9ad4b1d0dfd96e5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":75,"deletions":9,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":84}]},"message":"process ls data"},{"commit":"8873b1bc697c8f9409fa676c88b5ebe109dc8717","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":46,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":70}]},"message":"clean up process code"},{"commit":"9ff94707004fefed475603436fc0a7ffb19e6fee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":4,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":13}]},"message":"refactor helptext() function"},{"commit":"2c58fca53044892e15ceb5e8bcae1afb09fa3269","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":62,"deletions":4,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":66}]},"message":"process jobs data"},{"commit":"9e5cd90da7d92bbadbc0d25071d087a3dbd90a5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":131,"deletions":261,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":392}]},"message":"process iptables data"},{"commit":"7ee0d49424bba5274975d6c33e0721977660692f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":107,"deletions":28,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":135}]},"message":"process ifconfig data"},{"commit":"a9058ee21e87454aa423112239c4f4df7daca8c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":4,"deletions":1,"files":["jc/parsers/arp.py","jc/parsers/dig.py","jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":3},{"name":"jc/parsers/dig.py","lines_changed":1},{"name":"jc/parsers/free.py","lines_changed":1}]},"message":"doc formatting"},{"commit":"fcf0aac87dccac2ce28e6f55e66e2f0b8f6fbd36","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":54,"deletions":10,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":64}]},"message":"add history processing"},{"commit":"daec5f068103aae547509ddacc2be56c84f39f17","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":55,"deletions":6,"files":["jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/free.py","lines_changed":61}]},"message":"process free data"},{"commit":"5b2491d5ae72705758944e247fbca83367c0365f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":54,"deletions":5,"files":["jc/parsers/env.py"],"file_stats":[{"name":"jc/parsers/env.py","lines_changed":59}]},"message":"process env data"},{"commit":"d9b41ac73b234f5bf7ff3abfee198092424a1bbd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":4}]},"message":"doc formatting"},{"commit":"7168ffddf8a8dfcdd5bcabd8bf943d6417de407d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":87,"deletions":5,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":92}]},"message":"process dig output"},{"commit":"a855344bec9f60d852de326953436ec76f25cffb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":0,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":13}]},"message":"document schema"},{"commit":"d8b3b59fae924494fbcdfbdf6ad790f5234b0c69","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":16,"deletions":0,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":16}]},"message":"add schema and rename 'avail' to 'available'"},{"commit":"4b7d7840d37be47c1c98c38a6d712e7090e5b68c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":6},{"name":"changelog.txt","lines_changed":2}]},"message":"add -r option"},{"commit":"58a094a9b4cab0fcb99581f37a21a450fc3a1aed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update"},{"commit":"65adbb4189ac66de3283adb2af93a1251103f057","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":29,"deletions":7,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":36}]},"message":"doc update"},{"commit":"f7350959c9706486a3aed19a999e5ee756a1240c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":47,"deletions":24,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":71}]},"message":"df fix for changing header names when -h used"},{"commit":"8934a7d832b8e1375f0bbdd71031f37ae42f3929","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["jc/parsers/arp.py","jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":6}]},"message":"fix dictionary iteration"},{"commit":"669a424fd6508db91bf5cfa2607033fac85f442c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":4}]},"message":"fix process function"},{"commit":"591a65c2bda26efcdd570a5f147f98a5be0473d4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":46,"deletions":2,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":48}]},"message":"process df data"},{"commit":"a78fb890782a64b20c0c1b60afbd915ebdd88535","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":5,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":26}]},"message":"add raw and processed output"},{"commit":"8979dab2a5371fce3a773004c2309e7483e4cd31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":25,"deletions":20,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":45}]},"message":"add raw mode"},{"commit":"0a891f0adda7f2f3233222a0cb5c1f737913ad6f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":1,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"setup.py","lines_changed":2}]},"message":"bump python required version"},{"commit":"c220e35b14237c2cfc38aa661413af83ea13e393","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":34,"deletions":33,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":67}]},"message":"cleanup helptext"},{"commit":"f26c5818bd958c18f4ecc22611b9c058f6213a2c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":36,"deletions":33,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":69}]},"message":"refactor helptext"},{"commit":"e712cd3fc4cec1b3137c73e199b2d89fd42fb3bb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":138,"deletions":0,"files":["jc/parsers/netstat2.py"],"file_stats":[{"name":"jc/parsers/netstat2.py","lines_changed":138}]},"message":"netstat2 skeleton"},{"commit":"0309c9ac67c5f65e0a584fd01e8104ef1990fa7c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"setup cleanup"},{"commit":"9a9eb4120af7696cd3727ac0f0a014663e62b993","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":3}]},"message":"setup updates"},{"commit":"d1927456b02e6c2a6e6395cd6ce873b6565ec37d","merge":"0691cfc a3d9213","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #6 from kellyjonbrazil/dev"},{"commit":"a3d9213a1e2fd52ba2cbc863d4d01d3ffeebe230","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"add date"},{"commit":"3365c03a1e709835b4bd6bca023afbcb46912982","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":361,"deletions":0,"files":["tests/test_arp.py","tests/test_dig.py"],"file_stats":[{"name":"tests/test_arp.py","lines_changed":131},{"name":"tests/test_dig.py","lines_changed":230}]},"message":"add tests"},{"commit":"4f6c87389b313b368d9e833feef55fe6daf7aac9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":7,"insertions":164,"deletions":1,"files":["tests/fixtures/centos-7.7/dig-aaaa.out","tests/fixtures/centos-7.7/dig-x.out","tests/fixtures/centos-7.7/dig.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/dig-aaaa.out","tests/fixtures/ubuntu-18.04/dig-x.out","tests/fixtures/ubuntu-18.04/dig.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/dig-aaaa.out","lines_changed":20},{"name":"tests/fixtures/centos-7.7/dig-x.out","lines_changed":20},{"name":"tests/fixtures/centos-7.7/dig.out","lines_changed":38},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":6},{"name":"tests/fixtures/ubuntu-18.04/dig-aaaa.out","lines_changed":20},{"name":"tests/fixtures/ubuntu-18.04/dig-x.out","lines_changed":20},{"name":"tests/fixtures/ubuntu-18.04/dig.out","lines_changed":41}]},"message":"add dig test files"},{"commit":"41a2a9adac7d3c29dfa11292f08b0877c69b1a5d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":147,"deletions":3,"files":["README.md","jc/parsers/dig.py"],"file_stats":[{"name":"README.md","lines_changed":147},{"name":"jc/parsers/dig.py","lines_changed":3}]},"message":"remove unnecessary if statement"},{"commit":"74dae2905b2b0916f0be9fee2a4a343962760ff6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":143,"deletions":30,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":173}]},"message":"dig parser mvp"},{"commit":"d1f64214de00090c3faae0bf544c6c2602ab8c31","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":3,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":22}]},"message":"add authority parsing"},{"commit":"d3e1aa20a815d1d1d6ae82776ae18e3416f0966f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":2}]},"message":"fix when line"},{"commit":"72cae9577756c4355211a19f4dd77aaeb6f8e905","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":47,"deletions":9,"files":["jc/parsers/dig.py"],"file_stats":[{"name":"jc/parsers/dig.py","lines_changed":56}]},"message":"dig fixes"},{"commit":"219bc8130f55f23e3be3abbe56104aefc2f84e86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":155,"deletions":0,"files":["jc/jc.py","jc/parsers/dig.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/dig.py","lines_changed":150}]},"message":"dig parser skeleton"},{"commit":"e8c1a554c040ad8f9c6b518db5fd58e8345d2181","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":7,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-a.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/arp-a.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/arp-a.out","lines_changed":3},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/arp-a.out","lines_changed":3}]},"message":"testfile updates"},{"commit":"087a60bc2adf64bfcedc1f264fef328f993b530c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":87,"deletions":5,"files":["README.md","jc/parsers/arp.py"],"file_stats":[{"name":"README.md","lines_changed":33},{"name":"jc/parsers/arp.py","lines_changed":59}]},"message":"documentation updates"},{"commit":"9c9823c3b8737b5de08af6278ca74414138e9263","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":16,"deletions":0,"files":["tests/fixtures/centos-7.7/arp-v.out","tests/fixtures/centos-7.7/arp.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/arp-v.out","tests/fixtures/ubuntu-18.04/arp.out"],"file_stats":[{"name":"tests/fixtures/centos-7.7/arp-v.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/arp.out","lines_changed":3},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":2},{"name":"tests/fixtures/ubuntu-18.04/arp-v.out","lines_changed":4},{"name":"tests/fixtures/ubuntu-18.04/arp.out","lines_changed":3}]},"message":"add arp testfiles"},{"commit":"cf8d13030bf67261a986c0f80fa20ec0e37a743a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":21,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":21}]},"message":"add arp"},{"commit":"1eff69c187ca410ffaec7909bc2532553be1d80c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":17,"deletions":1,"files":["changelog.txt","jc/parsers/arp.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/arp.py","lines_changed":17}]},"message":"add documentation"},{"commit":"b10fb77d714b73a10a9bf28b45269b3530e01cee","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":1,"files":["jc/parsers/arp.py"],"file_stats":[{"name":"jc/parsers/arp.py","lines_changed":10}]},"message":"fixup arp parser"},{"commit":"87cee8b230a06fa270b2e36afb56f337da814c80","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":28,"deletions":1,"files":["jc/jc.py","jc/parsers/arp.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":7},{"name":"jc/parsers/arp.py","lines_changed":22}]},"message":"add arp parser"},{"commit":"83ab10d6282e26391bbf6bae5d0d29e040b209f0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":44,"deletions":34,"files":["jc/__init__.py"],"file_stats":[{"name":"jc/__init__.py","lines_changed":78}]},"message":"documentation update"},{"commit":"d58a6e1d1dc93155255922b65b0af1325439b033","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":13,"deletions":15,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":28}]},"message":"readme update"},{"commit":"cb46ca5c2776a13c673a44d3e0fbd0661b32af9f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":7}]},"message":"readme update"},{"commit":"5528d979f0b45787d68ab79b962371df9acc527b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":1,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":6},{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"ee94a038a61d60db72046d5bcceec58009decb39","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":131,"deletions":0,"files":["tests/test_uname.py","tests/test_uptime.py","tests/test_w.py"],"file_stats":[{"name":"tests/test_uname.py","lines_changed":45},{"name":"tests/test_uptime.py","lines_changed":41},{"name":"tests/test_w.py","lines_changed":45}]},"message":"add tests"},{"commit":"1d658f7a9fc50873f76985b2fb9de92ada9d5547","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":265,"deletions":0,"files":["tests/test_netstat.py","tests/test_ps.py","tests/test_route.py"],"file_stats":[{"name":"tests/test_netstat.py","lines_changed":105},{"name":"tests/test_ps.py","lines_changed":83},{"name":"tests/test_route.py","lines_changed":77}]},"message":"add tests"},{"commit":"392cb44f9b19829a5ceba055e24c7af4d8ac5b3b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":80,"insertions":12667,"deletions":0,"files":["runtests.sh","tests/__init__.py","tests/fixtures/centos-7.7/df-h.out","tests/fixtures/centos-7.7/df.out","tests/fixtures/centos-7.7/env.out","tests/fixtures/centos-7.7/free-h.out","tests/fixtures/centos-7.7/free.out","tests/fixtures/centos-7.7/history.out","tests/fixtures/centos-7.7/ifconfig.out","tests/fixtures/centos-7.7/iptables-filter-nv.out","tests/fixtures/centos-7.7/iptables-filter.out","tests/fixtures/centos-7.7/iptables-mangle.out","tests/fixtures/centos-7.7/iptables-nat.out","tests/fixtures/centos-7.7/iptables-raw.out","tests/fixtures/centos-7.7/jobs.out","tests/fixtures/centos-7.7/ls-al.out","tests/fixtures/centos-7.7/ls-alh.out","tests/fixtures/centos-7.7/ls.out","tests/fixtures/centos-7.7/lsblk.out","tests/fixtures/centos-7.7/lsmod.out","tests/fixtures/centos-7.7/lsof-sudo.out","tests/fixtures/centos-7.7/lsof.out","tests/fixtures/centos-7.7/mount.out","tests/fixtures/centos-7.7/netstat-l.out","tests/fixtures/centos-7.7/netstat-p.out","tests/fixtures/centos-7.7/netstat-sudo-lnp.out","tests/fixtures/centos-7.7/netstat.out","tests/fixtures/centos-7.7/ps-axu.out","tests/fixtures/centos-7.7/ps-ef.out","tests/fixtures/centos-7.7/route-vn.out","tests/fixtures/centos-7.7/route.out","tests/fixtures/centos-7.7/uname-a.out","tests/fixtures/centos-7.7/uptime.out","tests/fixtures/centos-7.7/w.out","tests/fixtures/create_fixtures.sh","tests/fixtures/ubuntu-18.04/df-h.out","tests/fixtures/ubuntu-18.04/df.out","tests/fixtures/ubuntu-18.04/env.out","tests/fixtures/ubuntu-18.04/free-h.out","tests/fixtures/ubuntu-18.04/free.out","tests/fixtures/ubuntu-18.04/history.out","tests/fixtures/ubuntu-18.04/ifconfig.out","tests/fixtures/ubuntu-18.04/iptables-filter-nv.out","tests/fixtures/ubuntu-18.04/iptables-filter.out","tests/fixtures/ubuntu-18.04/iptables-mangle.out","tests/fixtures/ubuntu-18.04/iptables-nat.out","tests/fixtures/ubuntu-18.04/iptables-raw.out","tests/fixtures/ubuntu-18.04/jobs.out","tests/fixtures/ubuntu-18.04/ls-al.out","tests/fixtures/ubuntu-18.04/ls-alh.out","tests/fixtures/ubuntu-18.04/ls.out","tests/fixtures/ubuntu-18.04/lsblk.out","tests/fixtures/ubuntu-18.04/lsmod.out","tests/fixtures/ubuntu-18.04/lsof-sudo.out","tests/fixtures/ubuntu-18.04/lsof.out","tests/fixtures/ubuntu-18.04/mount.out","tests/fixtures/ubuntu-18.04/netstat-l.out","tests/fixtures/ubuntu-18.04/netstat-p.out","tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.out","tests/fixtures/ubuntu-18.04/netstat.out","tests/fixtures/ubuntu-18.04/ps-axu.out","tests/fixtures/ubuntu-18.04/ps-ef.out","tests/fixtures/ubuntu-18.04/route-vn.out","tests/fixtures/ubuntu-18.04/route.out","tests/fixtures/ubuntu-18.04/uname-a.out","tests/fixtures/ubuntu-18.04/uptime.out","tests/fixtures/ubuntu-18.04/w.out","tests/test_df.py","tests/test_env.py","tests/test_free.py","tests/test_history.py","tests/test_ifconfig.py","tests/test_iptables.py","tests/test_jobs.py","tests/test_ls.py","tests/test_lsblk.py","tests/test_lsmod.py","tests/test_lsof.py","tests/test_mount.py","tests/test_netstat.py"],"file_stats":[{"name":"runtests.sh","lines_changed":3},{"name":"tests/__init__.py","lines_changed":0},{"name":"tests/fixtures/centos-7.7/df-h.out","lines_changed":8},{"name":"tests/fixtures/centos-7.7/df.out","lines_changed":8},{"name":"tests/fixtures/centos-7.7/env.out","lines_changed":24},{"name":"tests/fixtures/centos-7.7/free-h.out","lines_changed":3},{"name":"tests/fixtures/centos-7.7/free.out","lines_changed":3},{"name":"tests/fixtures/centos-7.7/history.out","lines_changed":1000},{"name":"tests/fixtures/centos-7.7/ifconfig.out","lines_changed":26},{"name":"tests/fixtures/centos-7.7/iptables-filter-nv.out","lines_changed":134},{"name":"tests/fixtures/centos-7.7/iptables-filter.out","lines_changed":134},{"name":"tests/fixtures/centos-7.7/iptables-mangle.out","lines_changed":59},{"name":"tests/fixtures/centos-7.7/iptables-nat.out","lines_changed":80},{"name":"tests/fixtures/centos-7.7/iptables-raw.out","lines_changed":38},{"name":"tests/fixtures/centos-7.7/jobs.out","lines_changed":4},{"name":"tests/fixtures/centos-7.7/ls-al.out","lines_changed":22},{"name":"tests/fixtures/centos-7.7/ls-alh.out","lines_changed":22},{"name":"tests/fixtures/centos-7.7/ls.out","lines_changed":19},{"name":"tests/fixtures/centos-7.7/lsblk.out","lines_changed":7},{"name":"tests/fixtures/centos-7.7/lsmod.out","lines_changed":99},{"name":"tests/fixtures/centos-7.7/lsof-sudo.out","lines_changed":3390},{"name":"tests/fixtures/centos-7.7/lsof.out","lines_changed":639},{"name":"tests/fixtures/centos-7.7/mount.out","lines_changed":31},{"name":"tests/fixtures/centos-7.7/netstat-l.out","lines_changed":45},{"name":"tests/fixtures/centos-7.7/netstat-p.out","lines_changed":121},{"name":"tests/fixtures/centos-7.7/netstat-sudo-lnp.out","lines_changed":45},{"name":"tests/fixtures/centos-7.7/netstat.out","lines_changed":123},{"name":"tests/fixtures/centos-7.7/ps-axu.out","lines_changed":110},{"name":"tests/fixtures/centos-7.7/ps-ef.out","lines_changed":110},{"name":"tests/fixtures/centos-7.7/route-vn.out","lines_changed":5},{"name":"tests/fixtures/centos-7.7/route.out","lines_changed":5},{"name":"tests/fixtures/centos-7.7/uname-a.out","lines_changed":1},{"name":"tests/fixtures/centos-7.7/uptime.out","lines_changed":1},{"name":"tests/fixtures/centos-7.7/w.out","lines_changed":4},{"name":"tests/fixtures/create_fixtures.sh","lines_changed":48},{"name":"tests/fixtures/ubuntu-18.04/df-h.out","lines_changed":19},{"name":"tests/fixtures/ubuntu-18.04/df.out","lines_changed":19},{"name":"tests/fixtures/ubuntu-18.04/env.out","lines_changed":21},{"name":"tests/fixtures/ubuntu-18.04/free-h.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/free.out","lines_changed":3},{"name":"tests/fixtures/ubuntu-18.04/history.out","lines_changed":453},{"name":"tests/fixtures/ubuntu-18.04/ifconfig.out","lines_changed":18},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter-nv.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/iptables-filter.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/iptables-mangle.out","lines_changed":14},{"name":"tests/fixtures/ubuntu-18.04/iptables-nat.out","lines_changed":11},{"name":"tests/fixtures/ubuntu-18.04/iptables-raw.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/jobs.out","lines_changed":4},{"name":"tests/fixtures/ubuntu-18.04/ls-al.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/ls-alh.out","lines_changed":30},{"name":"tests/fixtures/ubuntu-18.04/ls.out","lines_changed":27},{"name":"tests/fixtures/ubuntu-18.04/lsblk.out","lines_changed":18},{"name":"tests/fixtures/ubuntu-18.04/lsmod.out","lines_changed":102},{"name":"tests/fixtures/ubuntu-18.04/lsof-sudo.out","lines_changed":2854},{"name":"tests/fixtures/ubuntu-18.04/lsof.out","lines_changed":976},{"name":"tests/fixtures/ubuntu-18.04/mount.out","lines_changed":43},{"name":"tests/fixtures/ubuntu-18.04/netstat-l.out","lines_changed":32},{"name":"tests/fixtures/ubuntu-18.04/netstat-p.out","lines_changed":97},{"name":"tests/fixtures/ubuntu-18.04/netstat-sudo-lnp.out","lines_changed":32},{"name":"tests/fixtures/ubuntu-18.04/netstat.out","lines_changed":97},{"name":"tests/fixtures/ubuntu-18.04/ps-axu.out","lines_changed":173},{"name":"tests/fixtures/ubuntu-18.04/ps-ef.out","lines_changed":173},{"name":"tests/fixtures/ubuntu-18.04/route-vn.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/route.out","lines_changed":5},{"name":"tests/fixtures/ubuntu-18.04/uname-a.out","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/uptime.out","lines_changed":1},{"name":"tests/fixtures/ubuntu-18.04/w.out","lines_changed":4},{"name":"tests/test_df.py","lines_changed":69},{"name":"tests/test_env.py","lines_changed":31},{"name":"tests/test_free.py","lines_changed":67},{"name":"tests/test_history.py","lines_changed":31},{"name":"tests/test_ifconfig.py","lines_changed":77},{"name":"tests/test_iptables.py","lines_changed":299},{"name":"tests/test_jobs.py","lines_changed":37},{"name":"tests/test_ls.py","lines_changed":92},{"name":"tests/test_lsblk.py","lines_changed":43},{"name":"tests/test_lsmod.py","lines_changed":40},{"name":"tests/test_lsof.py","lines_changed":85},{"name":"tests/test_mount.py","lines_changed":48},{"name":"tests/test_netstat.py","lines_changed":47}]},"message":"initial add of tests and fixtures"},{"commit":"579bef079cdd7cfa298bc20e052b8eb75b586f5e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":3}]},"message":"move global output variable inside function"},{"commit":"0691cfcab3f5f91908e06ec906d57e548d4e7a1f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog fix"},{"commit":"db29c7c186601fd4596d3eb121b37100601af907","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":4,"files":["README.md","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"jc/parsers/netstat.py","lines_changed":4}]},"message":"documentation fixes"},{"commit":"fb1e03637514b5ab02fd4c5df1db8b3cbacdd531","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":10,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":24}]},"message":"formatting"},{"commit":"c3eaf59836538f4ab4c745e87b70115b4a4c5421","merge":"ea0cf0a c9849ce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #5 from kellyjonbrazil/dev"},{"commit":"c9849ce0db1f864d33739f8f6f942bf5672bc3b7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"changelog update"},{"commit":"d3c89a3092973a7a8765463fff41c2469ed675cd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":11,"deletions":9,"files":["jc/parsers/uname.py"],"file_stats":[{"name":"jc/parsers/uname.py","lines_changed":20}]},"message":"check for enough info to parse"},{"commit":"a3d43f27f7bb0835b3593b7c303fe0ee8d896a58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":10,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":22}]},"message":"fix odd uptime text parsing"},{"commit":"f4d9c1b699fa30bd297a40ccf3d5f6e7ba3d4253","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":8,"deletions":4,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":12}]},"message":"fix uptime for minutes and hours long uptime"},{"commit":"de647bba4aff84f7b513cf7f6fec8d3933b0d9da","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"documentation update"},{"commit":"d7913070315e5e0c89006942250aaf37e9e3e18e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"documentation update"},{"commit":"1a4fc204e21f1555ae67c3147322c8d73fab630b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":10,"deletions":1,"files":["README.md","changelog.txt"],"file_stats":[{"name":"README.md","lines_changed":10},{"name":"changelog.txt","lines_changed":1}]},"message":"Documentation update"},{"commit":"0328e14c7c65a330093faa52fe48dae6cb173e42","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":7,"deletions":0,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":7}]},"message":"handle ctrl-c gracefully"},{"commit":"1acc4d6c29d136e286f82d607c4a3a59e2680b68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":0,"files":["jc/parsers/uptime.py"],"file_stats":[{"name":"jc/parsers/uptime.py","lines_changed":4}]},"message":"fix uptime parsing for short uptimes"},{"commit":"27245590ce28be933f1a55db4ee6b24783f4b63d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":20,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":32}]},"message":"remove integers"},{"commit":"7ca2a4bdb939293e8d7364f8901ad1fd6d3ee808","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":182,"deletions":201,"files":["README.md","changelog.txt","jc/parsers/jobs.py","jc/parsers/ls.py","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":199},{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/jobs.py","lines_changed":4},{"name":"jc/parsers/ls.py","lines_changed":95},{"name":"jc/parsers/netstat.py","lines_changed":84}]},"message":"remove integer values"},{"commit":"5f1ec6734874651bee595961edf1fafaf5acf001","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":10,"insertions":473,"deletions":456,"files":["README.md","jc/parsers/df.py","jc/parsers/history.py","jc/parsers/iptables.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/w.py"],"file_stats":[{"name":"README.md","lines_changed":453},{"name":"jc/parsers/df.py","lines_changed":52},{"name":"jc/parsers/history.py","lines_changed":2},{"name":"jc/parsers/iptables.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":73},{"name":"jc/parsers/lsmod.py","lines_changed":61},{"name":"jc/parsers/lsof.py","lines_changed":113},{"name":"jc/parsers/ps.py","lines_changed":81},{"name":"jc/parsers/route.py","lines_changed":60},{"name":"jc/parsers/w.py","lines_changed":32}]},"message":"lower() headers"},{"commit":"7e44c4278a75c7223d99200023160e8d77fde54d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":2}]},"message":"formatting"},{"commit":"eda726c4a3864008e2f700374b679ae68a965ef8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":80,"deletions":1,"files":["jc/parsers/ifconfig.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":81}]},"message":"documentation update"},{"commit":"5f8e70d73054f1a106c0e75eee621bc0cefd1c6b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":9,"insertions":20,"deletions":22,"files":["changelog.txt","jc/parsers/df.py","jc/parsers/free.py","jc/parsers/lsblk.py","jc/parsers/lsmod.py","jc/parsers/lsof.py","jc/parsers/ps.py","jc/parsers/route.py","jc/parsers/w.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/df.py","lines_changed":4},{"name":"jc/parsers/free.py","lines_changed":2},{"name":"jc/parsers/lsblk.py","lines_changed":8},{"name":"jc/parsers/lsmod.py","lines_changed":9},{"name":"jc/parsers/lsof.py","lines_changed":8},{"name":"jc/parsers/ps.py","lines_changed":2},{"name":"jc/parsers/route.py","lines_changed":2},{"name":"jc/parsers/w.py","lines_changed":6}]},"message":"convert headers to lowercase"},{"commit":"25b90546c652cafa9409f02bae1654cb523add88","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":14,"deletions":9,"files":["README.md","changelog.txt","jc/parsers/df.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/df.py","lines_changed":13}]},"message":"change 'Use%' to 'Use_percent'"},{"commit":"75c084153845757e22c149ea4ae7909d42ec7118","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":3}]},"message":"changelog update"},{"commit":"5b532b9b71fdb9de575da0af9b7989ac537877c4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":3,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":5}]},"message":"minor cleanup"},{"commit":"8c7b3193d131411f8766508fc27b2a6589bba1f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":2}]},"message":"documentation change"},{"commit":"0897c96ef3c180a1707e8f56c545f59b3a4e0672","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":2}]},"message":"formatting"},{"commit":"57d0ab2ed7f444862546da17cbbe8f8ce67bca8c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":9,"deletions":4,"files":["README.md","jc/parsers/w.py"],"file_stats":[{"name":"README.md","lines_changed":4},{"name":"jc/parsers/w.py","lines_changed":9}]},"message":"change LOGIN@ to LOGIN_AT"},{"commit":"a07d9a0e4bb76d369b4a9bf0d77c7590dc3c2861","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":22,"deletions":13,"files":["README.md","jc/parsers/lsof.py"],"file_stats":[{"name":"README.md","lines_changed":10},{"name":"jc/parsers/lsof.py","lines_changed":25}]},"message":"change SIZE/OFF key to SIZE_OFF"},{"commit":"b3996cb4dfed908d71b292dc0b0136c6675351e6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":14,"deletions":10,"files":["README.md","jc/parsers/lsblk.py"],"file_stats":[{"name":"README.md","lines_changed":10},{"name":"jc/parsers/lsblk.py","lines_changed":14}]},"message":"change MAJ:MIN key to MAJ_MIN"},{"commit":"4fa88c1ba38b34f9750625458c465d66f6531bc3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/history.py"],"file_stats":[{"name":"jc/parsers/history.py","lines_changed":3}]},"message":"clear out non-ascii chars from data"},{"commit":"c8c5564b29588094721949b96bff1e623437835d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":3,"files":["README.md","jc/parsers/free.py"],"file_stats":[{"name":"README.md","lines_changed":2},{"name":"jc/parsers/free.py","lines_changed":7}]},"message":"change buff/cache key to buff_cache"},{"commit":"6d047486d9f577bc04d79af839f5eef9657a9d43","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"doc fix"},{"commit":"42bdc058141c4a3ac6f2c8211f9c990590b1b5cf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"changelog fix"},{"commit":"85bfb688862e78d5879df6973b88ba8023fa6086","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":15,"deletions":10,"files":["README.md","jc/parsers/history.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"jc/parsers/history.py","lines_changed":17}]},"message":"history parser fixes"},{"commit":"08ec21556b553cd7e64932d68e01ba8ff3b0f210","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":1,"files":["jc/parsers/w.py"],"file_stats":[{"name":"jc/parsers/w.py","lines_changed":1}]},"message":"formatting"},{"commit":"320929bf2595026d32b80b80c3e4878db9cf083f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/env.py"],"file_stats":[{"name":"jc/parsers/env.py","lines_changed":2}]},"message":"documentation update"},{"commit":"41cd489c34502c42602bf64086670ba3b2b8e14b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":5,"insertions":126,"deletions":0,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/history.py","jc/parsers/uptime.py"],"file_stats":[{"name":"README.md","lines_changed":46},{"name":"changelog.txt","lines_changed":3},{"name":"jc/jc.py","lines_changed":10},{"name":"jc/parsers/history.py","lines_changed":32},{"name":"jc/parsers/uptime.py","lines_changed":35}]},"message":"add history and uptime parsers"},{"commit":"f101d881a16e662e883818749d48e96858fba853","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":78,"deletions":3,"files":["README.md","jc/jc.py","jc/parsers/w.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":27},{"name":"jc/jc.py","lines_changed":9},{"name":"jc/parsers/w.py","lines_changed":43},{"name":"setup.py","lines_changed":2}]},"message":"add w parser"},{"commit":"fa7466022bb8947c1bbf9f7b01aa4d92300a8992","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":28,"deletions":56,"files":["README.md","changelog.txt","jc/parsers/env.py"],"file_stats":[{"name":"README.md","lines_changed":37},{"name":"changelog.txt","lines_changed":3},{"name":"jc/parsers/env.py","lines_changed":44}]},"message":"fix env parser"},{"commit":"ea0cf0acf22585fbf8828841cf50155636eae82f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":3}]},"message":"documentation update"},{"commit":"e7921b65f5a250c10b08f78939f74968047af430","merge":"393e8bc 2cc1b1b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #4 from kellyjonbrazil/dev"},{"commit":"2cc1b1bd5451f31d71b0e2236bdee0ce2b25b5d7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"version bump"},{"commit":"58ae976db0165730a75dd7450c698d2727a354ca","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":113,"deletions":4,"files":["README.md","jc/parsers/lsmod.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":55},{"name":"jc/parsers/lsmod.py","lines_changed":60},{"name":"setup.py","lines_changed":2}]},"message":"documentation update"},{"commit":"66772392ae78ef394e22070b127416b1d5b01332","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":32,"deletions":0,"files":["changelog.txt","jc/jc.py","jc/parsers/lsmod.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/lsmod.py","lines_changed":26}]},"message":"add lsmod parser"},{"commit":"29c47c03a64f9c6b0f44d34be5449396654849b5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":134,"deletions":2,"files":["README.md","changelog.txt","jc/parsers/lsof.py"],"file_stats":[{"name":"README.md","lines_changed":68},{"name":"changelog.txt","lines_changed":3},{"name":"jc/parsers/lsof.py","lines_changed":65}]},"message":"documentation update"},{"commit":"91eb9a4d13e9254bd5bbde931196904c1947a28e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/lsof.py"],"file_stats":[{"name":"jc/parsers/lsof.py","lines_changed":4}]},"message":"use None instead of --"},{"commit":"a1a3de32ec14d6ef433e334b9694856698c26d41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":59,"deletions":0,"files":["jc/jc.py","jc/parsers/lsof.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/lsof.py","lines_changed":54}]},"message":"add lsof parser"},{"commit":"9c47fd05bf716c2e18ebf4da41b1a46b972b2518","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/jobs.py"],"file_stats":[{"name":"jc/parsers/jobs.py","lines_changed":2}]},"message":"doco fix"},{"commit":"649c0aa7c157f87691cc8eeac64c747e81f63594","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":76,"deletions":1,"files":["README.md","jc/parsers/jobs.py"],"file_stats":[{"name":"README.md","lines_changed":39},{"name":"jc/parsers/jobs.py","lines_changed":38}]},"message":"add documentation"},{"commit":"3db758764e50666e5ae40de8d89180de2ef5bc28","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":83,"deletions":0,"files":["changelog.txt","jc/jc.py","jc/parsers/jobs.py"],"file_stats":[{"name":"changelog.txt","lines_changed":6},{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/jobs.py","lines_changed":72}]},"message":"add jobs parser"},{"commit":"802f1510eb6d621f9c760f28b83f16a4781b8d93","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":2}]},"message":"tighten if statements"},{"commit":"56901788dee154890e70269ad48d4b22bb8c5437","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":30,"deletions":19,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":49}]},"message":"stop blocking when no pipe and enhance help text"},{"commit":"679ae6d5dc7af26240dc00d8bc6499950f81d457","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"b15c8c352a87a9b3b1dece28af0287ef71ca02d0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":14,"deletions":16,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":30}]},"message":"simplify state variables"},{"commit":"393e8bc56041a4be01b6c0b2f98895aa330afd04","merge":"e3750b4 976fd7d","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #3 from kellyjonbrazil/dev"},{"commit":"976fd7d9bd49190a8b28ea5acf5af8979cdec537","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":28,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":55}]},"message":"readme update"},{"commit":"d8337870cad042cdcc6a4ff3c61f756c3430fa96","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":28,"files":["jc/parsers/df.py"],"file_stats":[{"name":"jc/parsers/df.py","lines_changed":55}]},"message":"update documentation"},{"commit":"39a8aec77f5134b5b958e3f679910a1c3512e13a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":3,"deletions":3,"files":["changelog.txt","jc/parsers/ls.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/ls.py","lines_changed":2},{"name":"setup.py","lines_changed":2}]},"message":"v0.8.1 build"},{"commit":"306d539b6bbfb272c7b955e4847adc3a6b4afa5f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":1}]},"message":"readme update"},{"commit":"f3087b8a8ede88834285bb5d0655fc96341c174c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":635,"deletions":1,"files":["README.md","changelog.txt","jc/parsers/iptables.py"],"file_stats":[{"name":"README.md","lines_changed":319},{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/iptables.py","lines_changed":316}]},"message":"update readme and formatting"},{"commit":"414c2ecef88af2d2c098e6acfb507a5fd7bb8eda","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":10,"files":["jc/parsers/iptables.py"],"file_stats":[{"name":"jc/parsers/iptables.py","lines_changed":16}]},"message":"fix iptables parser"},{"commit":"776ef2d1be81180b8b295fbc587446a326f2f7a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":61,"deletions":0,"files":["jc/jc.py","jc/parsers/iptables.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/iptables.py","lines_changed":56}]},"message":"add iptables parser"},{"commit":"9ac57469967443b195be09d580beaa76ce0e1095","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":64,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/uname.py"],"file_stats":[{"name":"README.md","lines_changed":15},{"name":"changelog.txt","lines_changed":1},{"name":"jc/jc.py","lines_changed":7},{"name":"jc/parsers/uname.py","lines_changed":42}]},"message":"add uname parser"},{"commit":"a3e55d97c0fd4397b42e9146afb0ba9558274fdb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":127,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/mount.py"],"file_stats":[{"name":"README.md","lines_changed":45},{"name":"changelog.txt","lines_changed":1},{"name":"jc/jc.py","lines_changed":7},{"name":"jc/parsers/mount.py","lines_changed":75}]},"message":"add mount parser"},{"commit":"b15227e7ba5377e5fb6799d1b9e4ed5a11c6d92f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":125,"deletions":0,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/lsblk.py"],"file_stats":[{"name":"README.md","lines_changed":49},{"name":"changelog.txt","lines_changed":1},{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/lsblk.py","lines_changed":70}]},"message":"add lsblk parser"},{"commit":"ec3d1f84ceccb492b4c968938714fafa2e6a6321","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":2,"files":["jc/parsers/free.py"],"file_stats":[{"name":"jc/parsers/free.py","lines_changed":26}]},"message":"fix free parser"},{"commit":"753d5fd9fe5a8e4b67b1a0ec018a9f811e27f8bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"readme update"},{"commit":"73a0d70c9294ad392792e690a7bfbcc4f51b0a5b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":4}]},"message":"readme update"},{"commit":"c2c189f3e6e900e5f3d35df9a9b9d033448baff6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":4,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":5}]},"message":"readme update"},{"commit":"36bc55a3109278d663b675a09829200f5474c3d8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"fix df"},{"commit":"a023001cd350e320ce30f47af214ed7a9bb43185","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":6,"insertions":226,"deletions":1,"files":["README.md","changelog.txt","jc/jc.py","jc/parsers/df.py","jc/parsers/env.py","jc/parsers/free.py"],"file_stats":[{"name":"README.md","lines_changed":73},{"name":"changelog.txt","lines_changed":5},{"name":"jc/jc.py","lines_changed":17},{"name":"jc/parsers/df.py","lines_changed":56},{"name":"jc/parsers/env.py","lines_changed":53},{"name":"jc/parsers/free.py","lines_changed":23}]},"message":"add df, env, and free parsers"},{"commit":"e3750b49628794fd4d563013b1f3a7471c27ce68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":83,"deletions":51,"files":["README.md","jc/__init__.py"],"file_stats":[{"name":"README.md","lines_changed":30},{"name":"jc/__init__.py","lines_changed":104}]},"message":"documentation enhancements"},{"commit":"b5ea08e55bfd22c9da5ba73c124791012df119a0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":20,"deletions":20,"files":["README.md","changelog.txt","jc/parsers/netstat.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":16},{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":20},{"name":"setup.py","lines_changed":2}]},"message":"fix transport protocol"},{"commit":"8e71b8e3522b9b1af4d869a0854223eb5c300b63","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"fix jq example"},{"commit":"4c8610c54ff4b643237d8f0e4c5781c277fc39f5","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":3,"deletions":2,"files":["changelog.txt","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":3},{"name":"setup.py","lines_changed":2}]},"message":"fixed build"},{"commit":"c8f886dc8fcdc58f8471d68c3d583200d0ea2f90","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":2}]},"message":"fix example"},{"commit":"4cfc2d22b3f9fd6f0cde8ad206edd7fe260b3071","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"update changelog"},{"commit":"59238c85408117748e78c5e87157381a828f3782","merge":"d54d906 30080c0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #2 from kellyjonbrazil/dev"},{"commit":"30080c01659cf611666876b7b063b7b329822352","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":35,"deletions":35,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":70}]},"message":"reorder parsers"},{"commit":"fab80bb3b4a1897da29d818e98e9b80ce45443dd","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":2,"deletions":1,"files":["README.md","setup.py"],"file_stats":[{"name":"README.md","lines_changed":1},{"name":"setup.py","lines_changed":2}]},"message":"readme update"},{"commit":"a9f2df805421754afb8e8adbcac7f2d3bd06c9ef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":3}]},"message":"move parsed_line var lower"},{"commit":"1d110be6cb25d169ae0dde6532cbcdf05d93d42f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":13,"deletions":1,"files":["README.md","changelog.txt","setup.py"],"file_stats":[{"name":"README.md","lines_changed":8},{"name":"changelog.txt","lines_changed":4},{"name":"setup.py","lines_changed":2}]},"message":"update doco"},{"commit":"be81b5e1ed93eb65e5dbed4f52905439cde86f62","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":112,"deletions":121,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":233}]},"message":"readme update"},{"commit":"5f88f7d8a071306be92cbfb65d6d62c5a68159f3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":110,"deletions":137,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":247}]},"message":"netstat cleanup"},{"commit":"e57c7cc8ef3102cc41dee4ea5fd33d40ba666491","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":2}]},"message":"change output from dict to list"},{"commit":"b216627c1073ea645029e341b4d3376601e5468e","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":116,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":135}]},"message":"flatten netstat output"},{"commit":"6e925eab131024b5746d870cbd47e2791acf18bf","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":27,"deletions":18,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":45}]},"message":"clean up arg parsing"},{"commit":"d54d906c571b4683f01cab2eca63ae5f0725a87b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":2}]},"message":"update readme"},{"commit":"0040febbf099ed8ab35f6ee343750fcf89f2e739","merge":"8073d15 e416c77","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","message":"Merge pull request #1 from kellyjonbrazil/dev"},{"commit":"e416c77bed1267254da972b0f95b7ff1d43fccef","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"version bump"},{"commit":"9181d242aaed5219bb35fde01d672be88949cceb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"bump version"},{"commit":"d6f94c53a4df84fb75554605477e49536a809dc2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":2,"files":["jc/parsers/ls.py"],"file_stats":[{"name":"jc/parsers/ls.py","lines_changed":5}]},"message":"fix blank output case in ls"},{"commit":"a9294f32a00709737d0b82ff434a311e75ad0bed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":39,"deletions":42,"files":["changelog.txt","jc/parsers/ls.py","setup.py"],"file_stats":[{"name":"changelog.txt","lines_changed":7},{"name":"jc/parsers/ls.py","lines_changed":72},{"name":"setup.py","lines_changed":2}]},"message":"ls fixes"},{"commit":"4d93b38fe47329e3175025878e87f7c963061f98","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":90,"deletions":1,"files":["README.md","jc/parsers/route.py"],"file_stats":[{"name":"README.md","lines_changed":47},{"name":"jc/parsers/route.py","lines_changed":44}]},"message":"add route documentation"},{"commit":"77b74c550795f96b808e48a9b0bfd1a8af9866f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"add route parser"},{"commit":"51a1d3e6f48cf7084267be4092f0dd3f778dcef3","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version bump"},{"commit":"2eba30422b44f648c7356a44cbff7416c6648f19","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["jc/parsers/route.py"],"file_stats":[{"name":"jc/parsers/route.py","lines_changed":2}]},"message":"skip first line"},{"commit":"43ed09ce5ba53261dfd7ef50a2e187cb524c416c","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":25,"deletions":1,"files":["jc/jc.py","jc/parsers/route.py","setup.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":3},{"name":"jc/parsers/route.py","lines_changed":21},{"name":"setup.py","lines_changed":2}]},"message":"add route parser"},{"commit":"367ab54f94bf7f456377ec9d20f8daf99dbdc1ed","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":99,"deletions":2,"files":["README.md","changelog.txt","jc/parsers/ps.py"],"file_stats":[{"name":"README.md","lines_changed":53},{"name":"changelog.txt","lines_changed":2},{"name":"jc/parsers/ps.py","lines_changed":46}]},"message":"formatting"},{"commit":"4f552e370e656cc1882a7dae231475a016f8aa14","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":3,"deletions":1,"files":["jc/parsers/ps.py"],"file_stats":[{"name":"jc/parsers/ps.py","lines_changed":4}]},"message":"acknowledgment"},{"commit":"7571139f7980f6e74c29d46971881e82ab0f04bc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"bump version"},{"commit":"8ec1bec31711d2ef487da3e4a29a842d98d77626","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":29,"deletions":7,"files":["changelog.txt","jc/__init__.py","jc/jc.py","jc/parsers/ps.py"],"file_stats":[{"name":"changelog.txt","lines_changed":10},{"name":"jc/__init__.py","lines_changed":2},{"name":"jc/jc.py","lines_changed":3},{"name":"jc/parsers/ps.py","lines_changed":21}]},"message":"add ps parser"},{"commit":"c04895407f203aa0a3a080d5242faf8f6889ae41","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":6,"deletions":4,"files":["changelog.txt","jc/parsers/netstat.py"],"file_stats":[{"name":"changelog.txt","lines_changed":1},{"name":"jc/parsers/netstat.py","lines_changed":9}]},"message":"ubuntu fixes"},{"commit":"cec73d61310591e4890605f61dc5c1bef5808ec4","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":4,"insertions":24,"deletions":16,"files":["jc/jc.py","jc/parsers/ifconfig.py","jc/parsers/ls.py","jc/parsers/netstat.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":7},{"name":"jc/parsers/ifconfig.py","lines_changed":7},{"name":"jc/parsers/ls.py","lines_changed":3},{"name":"jc/parsers/netstat.py","lines_changed":23}]},"message":"linting"},{"commit":"756c2bc9acd60111281b76085a40778e51ca06cc","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":20,"deletions":3,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":23}]},"message":"add acknowledgments"},{"commit":"084048987c7afc6516f69e68d37d73b2402dc7f2","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":2}]},"message":"changelog update"},{"commit":"02d97394dd76a8782e6e7d3f8a85e1aed05e796b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":1}]},"message":"changelog update"},{"commit":"177f948f9740e3e33449b04b9136a346c9a2c265","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"version update"},{"commit":"c2b013150ec1f1b1ab7d416f1aa8a62165a5bb95","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":9,"deletions":0,"files":["changelog.txt"],"file_stats":[{"name":"changelog.txt","lines_changed":9}]},"message":"add changelog"},{"commit":"0bec67c29ce5d965271440da41a0c4b4c2a1f0fb","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":4}]},"message":"double quotes to single quotes"},{"commit":"8073d15fe11546a17cacd81409e255bb8aecd602","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":12,"deletions":4,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":16}]},"message":"readme update"},{"commit":"3b74afc39e58f801e75b7105e521c1469d30f991","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":0,"files":["pypi-upload.sh"],"file_stats":[{"name":"pypi-upload.sh","lines_changed":2}]},"message":"upload script"},{"commit":"ed320cf0f4bb11cee1e69e9dc9176ba109df1b86","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":22,"deletions":22,"files":["README.md","jc/parsers/netstat.py","setup.py"],"file_stats":[{"name":"README.md","lines_changed":20},{"name":"jc/parsers/netstat.py","lines_changed":22},{"name":"setup.py","lines_changed":2}]},"message":"change netstat pid field to integer"},{"commit":"021b6924e24e1cf0f971246244b174cd3181c0a6","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":254,"deletions":5,"files":["README.md","jc/parsers/netstat.py"],"file_stats":[{"name":"README.md","lines_changed":124},{"name":"jc/parsers/netstat.py","lines_changed":135}]},"message":"documentation updates"},{"commit":"5fb21b077662f1cb172741945ba5036e5a280638","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":0,"deletions":8,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":8}]},"message":"remove debug print statements"},{"commit":"7b8540ae2a60f2400fe672a022ee00d1415a3500","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":19,"deletions":7,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":26}]},"message":"netstat fixes"},{"commit":"a5e039d4c2e07d52a0797833685c562ab285b49b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":17,"deletions":7,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":24}]},"message":"netstat debugging"},{"commit":"7071f60a302b7aefb8fb312699b0abec25548986","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":66,"deletions":18,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":84}]},"message":"netstat mvp"},{"commit":"0de1dff0253eb46b7336103f62f888940406ccc0","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":24,"deletions":24,"files":["jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/netstat.py","lines_changed":48}]},"message":"fix ands"},{"commit":"b3c52eb1ccf82e899dda62c332c0b217d80eb4c7","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":112,"deletions":40,"files":["jc/parsers/ifconfig.py","jc/parsers/netstat.py"],"file_stats":[{"name":"jc/parsers/ifconfig.py","lines_changed":2},{"name":"jc/parsers/netstat.py","lines_changed":150}]},"message":"add netstat parser"},{"commit":"366c5dbc010869bdb1d3b9d852e10510bd5c266f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":2,"deletions":2,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":4}]},"message":"fix help message"},{"commit":"a3ee02514b5fbd43a38ddf515a4aad49bb4e161a","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/jc.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":12}]},"message":"fix imports and module names"},{"commit":"46ad1269cb58dc6f064d17eb0b04da62d8fd5fce","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":4,"deletions":3,"files":["jc/jc.py","setup.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":6},{"name":"setup.py","lines_changed":1}]},"message":"packaging fixes"},{"commit":"7234afe568818678585ac423649a0ccce0f45d68","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"entrypoint fix"},{"commit":"caf480c63aacb518805d48fba0fd454959d11023","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"module fix"},{"commit":"62851b48d5e5cd673e630a28996e1c24cc45aa58","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/jc.py","setup.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":12},{"name":"setup.py","lines_changed":2}]},"message":"fix modules"},{"commit":"46d6da92f0e196e150ab9dd44b1ba290c950905b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["jc/{jc => jc.py}","setup.py"],"file_stats":[{"name":"jc/{jc => jc.py}","lines_changed":0},{"name":"setup.py","lines_changed":2}]},"message":"fix entry_points"},{"commit":"e572b2edfa993c5049ef3caeda7a8e4797f0c751","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":37,"deletions":29,"files":["jc/jc","setup.py"],"file_stats":[{"name":"jc/jc","lines_changed":58},{"name":"setup.py","lines_changed":8}]},"message":"use entry_points instead of scripts"},{"commit":"72c69e7de59029d623c9819dda6aa8cae91bc419","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":6,"deletions":6,"files":["jc/jc"],"file_stats":[{"name":"jc/jc","lines_changed":12}]},"message":"fix package paths"},{"commit":"4d1565071e5cf7c38e026e08db8f4d2e79969691","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":1,"deletions":1,"files":["jc/{jc.py => jc}","setup.py"],"file_stats":[{"name":"jc/{jc.py => jc}","lines_changed":0},{"name":"setup.py","lines_changed":2}]},"message":"rename jc.py to jc"},{"commit":"3652e51693d7ba829f4699fd80de20856941d82f","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":1,"files":["setup.py"],"file_stats":[{"name":"setup.py","lines_changed":2}]},"message":"fix requirements"},{"commit":"49ce9f13e817266659400a8c19f5b078a48589df","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":3,"insertions":17,"deletions":20,"files":["jc/jc.py","jc/parsers/__init__.py","setup.py"],"file_stats":[{"name":"jc/jc.py","lines_changed":5},{"name":"jc/parsers/__init__.py","lines_changed":5},{"name":"setup.py","lines_changed":27}]},"message":"setup updates"},{"commit":"e83170b7ec7ed2123bfde69be263b6034c7afa53","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":1,"deletions":2,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":3}]},"message":"readme update"},{"commit":"ffb6eb754a87baad5fb0558e30a5bca1a9b9e0a8","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":2,"insertions":7,"deletions":7,"files":["jc/parsers/__init__.py","setup.py"],"file_stats":[{"name":"jc/parsers/__init__.py","lines_changed":8},{"name":"setup.py","lines_changed":6}]},"message":"setup fixes"},{"commit":"2597a18d95d01109d2250487b7550a501edaf77b","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":1,"insertions":82,"deletions":0,"files":["README.md"],"file_stats":[{"name":"README.md","lines_changed":82}]},"message":"readme update"},{"commit":"3e576250b1bfe1c62c556f2fa0425103b0ede1f9","author":"Kelly Brazil","author_email":"kellyjonbrazil@gmail.com","stats":{"files_changed":11,"insertions":429,"deletions":0,"files":[".gitignore","LICENSE.md","README.md","build-package.sh","jc/__init__.py","jc/jc.py","jc/parsers/__init__.py","jc/parsers/ifconfig.py","jc/parsers/ls.py","jc/parsers/netstat.py","setup.py"],"file_stats":[{"name":".gitignore","lines_changed":6},{"name":"LICENSE.md","lines_changed":21},{"name":"README.md","lines_changed":53},{"name":"build-package.sh","lines_changed":5},{"name":"jc/__init__.py","lines_changed":61},{"name":"jc/jc.py","lines_changed":38},{"name":"jc/parsers/__init__.py","lines_changed":3},{"name":"jc/parsers/ifconfig.py","lines_changed":30},{"name":"jc/parsers/ls.py","lines_changed":130},{"name":"jc/parsers/netstat.py","lines_changed":55},{"name":"setup.py","lines_changed":27}]},"message":"First commit"}] diff --git a/tests/test_git_log_s.py b/tests/test_git_log_s.py index 0f6de581..3ea956f5 100644 --- a/tests/test_git_log_s.py +++ b/tests/test_git_log_s.py @@ -7,7 +7,7 @@ from jc.exceptions import ParseError THIS_DIR = os.path.dirname(os.path.abspath(__file__)) # To create streaming output use: -# $ cat git-log.out | jc --git-log-s | jello -c > git-log-streaming.json +# $ cat git-log.out | jc --git-log-s | jello -c > git-log-streaming.json # or jq -sc class MyTests(unittest.TestCase):